Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More โ†’
Socket
Sign inDemoInstall
Socket

liquidjs

Package Overview
Dependencies
Maintainers
1
Versions
208
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

liquidjs - npm Package Compare versions

Comparing version 10.8.4 to 10.9.0

dist/src/render/string.d.ts

1

dist/src/parser/index.d.ts
export * from './tokenizer';
export * from './parser';
export * from './parse-stream';
export * from './parse-string-literal';
export * from './token-kind';

@@ -1,3 +0,3 @@

import { FilteredValueToken, TagToken, HTMLToken, HashToken, QuotedToken, LiquidTagToken, OutputToken, ValueToken, Token, RangeToken, FilterToken, TopLevelToken, OperatorToken, IdentifierToken } from '../tokens';
import { TokenizationError } from '../util';
import { FilteredValueToken, TagToken, HTMLToken, HashToken, QuotedToken, LiquidTagToken, OutputToken, ValueToken, Token, RangeToken, FilterToken, TopLevelToken, OperatorToken, LiteralToken, IdentifierToken, NumberToken } from '../tokens';
import { Trie, TokenizationError } from '../util';
import { Operators, Expression } from '../render';

@@ -14,2 +14,3 @@ import { NormalizedFullOptions } from '../liquid-options';

private opTrie;
private literalTrie;
constructor(input: string, operators?: Operators, file?: string | undefined, range?: [number, number] | undefined);

@@ -19,2 +20,3 @@ readExpression(): Expression;

readOperator(): OperatorToken | undefined;
matchTrie<T>(trie: Trie<T>): number;
readFilteredValue(): FilteredValueToken;

@@ -45,6 +47,8 @@ readFilters(): FilterToken[];

remaining(): string;
advance(i?: number): void;
advance(step?: number): void;
end(): boolean;
readTo(end: string): number;
readValue(): ValueToken | undefined;
readNumber(): NumberToken | undefined;
readLiteral(): LiteralToken | undefined;
readRange(): RangeToken | undefined;

@@ -51,0 +55,0 @@ readValueOrThrow(): ValueToken;

@@ -1,2 +0,2 @@

import { Token, QuotedToken } from '../tokens';
import { QuotedToken, Token } from '../tokens';
import type { Context } from '../context';

@@ -3,0 +3,0 @@ export declare class Expression {

import { Token } from './token';
import { LiteralValue } from '../util';
export declare class LiteralToken extends Token {

@@ -7,4 +8,5 @@ input: string;

file?: string | undefined;
content: LiteralValue;
literal: string;
constructor(input: string, begin: number, end: number, file?: string | undefined);
}
import { Token } from './token';
import { IdentifierToken } from './identifier-token';
export declare class NumberToken extends Token {
whole: IdentifierToken;
decimal?: IdentifierToken | undefined;
constructor(whole: IdentifierToken, decimal?: IdentifierToken | undefined);
input: string;
begin: number;
end: number;
file?: string | undefined;
content: number;
constructor(input: string, begin: number, end: number, file?: string | undefined);
}
import { Token } from './token';
import { LiteralToken } from './literal-token';
import { ValueToken } from './value-token';
import { IdentifierToken } from './identifier-token';
import { NumberToken } from './number-token';
import { RangeToken } from './range-token';
import { QuotedToken } from './quoted-token';
export declare class PropertyAccessToken extends Token {
variable: IdentifierToken | QuotedToken;
props: (IdentifierToken | QuotedToken | PropertyAccessToken)[];
propertyName: string;
constructor(variable: IdentifierToken | QuotedToken, props: (IdentifierToken | QuotedToken | PropertyAccessToken)[], end: number);
variable: QuotedToken | RangeToken | LiteralToken | NumberToken | undefined;
props: (ValueToken | IdentifierToken)[];
constructor(variable: QuotedToken | RangeToken | LiteralToken | NumberToken | undefined, props: (ValueToken | IdentifierToken)[], input: string, begin: number, end: number, file?: string);
}

@@ -7,3 +7,4 @@ import { Token } from './token';

file?: string | undefined;
readonly content: string;
constructor(input: string, begin: number, end: number, file?: string | undefined);
}
import { RangeToken } from './range-token';
import { LiteralToken } from './literal-token';
import { NumberToken } from './number-token';
import { QuotedToken } from './quoted-token';
import { PropertyAccessToken } from './property-access-token';
export type ValueToken = RangeToken | LiteralToken | QuotedToken | PropertyAccessToken;
export type ValueToken = RangeToken | LiteralToken | QuotedToken | PropertyAccessToken | NumberToken;

@@ -9,2 +9,3 @@ import { Token } from '../tokens/token';

protected update(): void;
static is(obj: unknown): obj is LiquidError;
}

@@ -11,0 +12,0 @@ export declare class TokenizationError extends LiquidError {

@@ -10,1 +10,3 @@ import { BlankDrop, EmptyDrop, NullDrop } from '../drop';

};
export type LiteralKey = keyof typeof literalValues;
export type LiteralValue = typeof literalValues[LiteralKey];

@@ -1,12 +0,14 @@

import { Operators, OperatorHandler } from '../render/operator';
interface TrieLeafNode {
handler: OperatorHandler;
interface TrieInput<T> {
[key: string]: T;
}
interface TrieLeafNode<T> {
data: T;
end: true;
needBoundary?: true;
}
export interface Trie {
[key: string]: Trie | TrieLeafNode;
export interface Trie<T> {
[key: string]: Trie<T> | TrieLeafNode<T>;
}
export type TrieNode = Trie | TrieLeafNode;
export declare function createTrie(operators: Operators): Trie;
export type TrieNode<T> = Trie<T> | TrieLeafNode<T>;
export declare function createTrie<T = any>(input: TrieInput<T>): Trie<T>;
export {};

@@ -15,2 +15,3 @@ export declare const toString: () => string;

export declare function isNil(value: any): boolean;
export declare function isUndefined(value: any): boolean;
export declare function isArray(value: any): value is any[];

@@ -17,0 +18,0 @@ export declare function isIterable(value: any): value is Iterable<any>;

{
"name": "liquidjs",
"version": "10.8.4",
"version": "10.9.0",
"description": "A simple, expressive and safe Shopify / Github Pages compatible template engine in pure JavaScript.",

@@ -5,0 +5,0 @@ "main": "dist/liquid.node.cjs.js",

@@ -14,3 +14,3 @@ # liquidjs

* Please star [LiquidJS on GitHub][github]!
* Support [LiquidJS on Open Collective][oc] or [Patreon][patreon]
* Financial support via [LiquidJS on Open Collective][oc], or [Github Sponsors](https://github.com/sponsors/harttle)

@@ -54,15 +54,23 @@ <p align="center"><a href="https://liquidjs.com"><img height="155px" width="155px" src="https://liquidjs.com/icon/mstile-310x310.png" alt="logo"></a></p>

## Related Projects
## Who's Using LiquidJS?
* [@11ty/eleventy](https://www.npmjs.com/package/@11ty/eleventy): A simpler static site generator. An alternative to Jekyll. Written in JavaScript. Transforms a directory of templates (of varying types) into HTML.
* [gulp-liquidjs](https://www.npmjs.com/package/@tuanpham-dev/gulp-liquidjs): A shopify compatible Liquid template engine for Gulp using liquidjs.
* [grunt-liquify](https://www.npmjs.com/package/grunt-liquify): A Grunt task to process Liquid using liquidjs. Use it to add Liquid magic to your scripts and css assets.
* [react-liquid](https://github.com/aquibm/react-liquid#readme): Liquid templating language component for React
- [Eleventy](https://www.11ty.dev/): Eleventy, a simpler static site generator.
- [Opensense](https://www.opensense.com/): The smarter way to send email.
- [Directus](https://docs.directus.io/): an instant REST+GraphQL API and intuitive no-code data collaboration app for any SQL database.
- [Semgrep](https://github.com/returntocorp/semgrep): Lightweight static analysis for many languages.
- [Rock](https://www.rockrms.com/): An open source CMS, Relationship Management System (RMS) and Church Management System (ChMS) all rolled into one.
- [Mitosis](https://github.com/BuilderIO/mitosis): Write components once, run everywhere. Compiles to React, Vue, Qwik, Solid, Angular, Svelte, and more.
- [Pattern Lab](https://patternlab.io/): a frontend workshop environment that helps you build, view, test, and showcase your design system's UI components.
- [Builder.io](https://www.builder.io/m/developers): the first and only headless CMS with a visual editor that lets you drag and drop with your components, directly within your current site or app. Completely API-driven, for cleaner code and simpler workflows.
- [Microsoft Power Pages](https://learn.microsoft.com/en-us/power-pages/introduction): a secure, enterprise-grade, low-code software as a service (SaaS) platform for creating, hosting, and administering modern external-facing business websites.
- [Azure API Management developer portal](https://learn.microsoft.com/en-us/azure/api-management/api-management-howto-developer-portal): an automatically generated, fully customizable website with the documentation of your APIs.
Feel free to create a PR or contact me to add your use case into this list!
## Financial Support
If you love LiquidJS or your company is using LiquidJS? Please consider [support us on Open Collective or Patreon][financial-support].
If you love LiquidJS or your company is using LiquidJS, please consider [financial support][financial-support].
### Backers
If you personally like LiquidJS and find it useful to you, you can buy me a coffee!
If you personally like LiquidJS and find it useful to you, buy me a coffee!๐Ÿ’–

@@ -166,2 +174,10 @@ <img src="https://opencollective.com/liquidjs/backers.svg?avatarHeight=72">

</tr>
<tr>
<td align="center" valign="top" width="14.28%"><a href="https://www.checkoutblocks.com/"><img src="https://avatars.githubusercontent.com/u/114603307?v=4?s=100" width="100px;" alt="Checkout Blocks"/><br /><sub><b>Checkout Blocks</b></sub></a><br /><a href="#financial-Checkout-Blocks" title="Financial">๐Ÿ’ต</a></td>
<td align="center" valign="top" width="14.28%"><a href="https://www.dropkiq.com/"><img src="https://avatars.githubusercontent.com/u/69064?v=4?s=100" width="100px;" alt="Adam Darrah"/><br /><sub><b>Adam Darrah</b></sub></a><br /><a href="#financial-akdarrah" title="Financial">๐Ÿ’ต</a></td>
<td align="center" valign="top" width="14.28%"><a href="https://www.11ty.dev/"><img src="https://avatars.githubusercontent.com/u/35147177?v=4?s=100" width="100px;" alt="Eleventy"/><br /><sub><b>Eleventy</b></sub></a><br /><a href="#financial-11ty" title="Financial">๐Ÿ’ต</a></td>
<td align="center" valign="top" width="14.28%"><a href="http://nickreilingh.com/"><img src="https://avatars.githubusercontent.com/u/2458645?v=4?s=100" width="100px;" alt="Nick Reilingh"/><br /><sub><b>Nick Reilingh</b></sub></a><br /><a href="https://github.com/harttle/liquidjs/commits?author=NReilingh" title="Documentation">๐Ÿ“–</a></td>
<td align="center" valign="top" width="14.28%"><a href="http://ebobby.org"><img src="https://avatars.githubusercontent.com/u/170356?v=4?s=100" width="100px;" alt="Francisco Soto"/><br /><sub><b>Francisco Soto</b></sub></a><br /><a href="https://github.com/harttle/liquidjs/commits?author=ebobby" title="Code">๐Ÿ’ป</a></td>
<td align="center" valign="top" width="14.28%"><a href="https://www.davidlj95.com"><img src="https://avatars.githubusercontent.com/u/8050648?v=4?s=100" width="100px;" alt="David LJ"/><br /><sub><b>David LJ</b></sub></a><br /><a href="https://github.com/harttle/liquidjs/commits?author=davidlj95" title="Documentation">๐Ÿ“–</a></td>
</tr>
</tbody>

@@ -180,5 +196,4 @@ </table>

[github]: https://github.com/harttle/liquidjs
[patreon]: https://www.patreon.com/harttle
[oc]: https://opencollective.com/liquidjs/
[contribution]: https://liquidjs.com/tutorials/contribution-guidelines.html
[financial-support]: https://liquidjs.com/tutorials/contribution-guidelines.html#Financial-Support

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with โšก๏ธ by Socket Inc