@skeptools/skep-organization-project 0.0.16 → 0.0.17
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.jsii +28 -3
- package/API.md +63 -1
- package/lib/skep-organization-project.js +1 -1
- package/node_modules/liquidjs/README.md +15 -10
- package/node_modules/liquidjs/dist/context/context.d.ts +6 -3
- package/node_modules/liquidjs/dist/drop/blank-drop.d.ts +1 -0
- package/node_modules/liquidjs/dist/drop/empty-drop.d.ts +1 -0
- package/node_modules/liquidjs/dist/index.d.ts +2 -2
- package/node_modules/liquidjs/dist/liquid-options.d.ts +2 -0
- package/node_modules/liquidjs/dist/liquid.browser.min.js +1 -1
- package/node_modules/liquidjs/dist/liquid.browser.min.js.map +1 -1
- package/node_modules/liquidjs/dist/liquid.browser.mjs +712 -45
- package/node_modules/liquidjs/dist/liquid.browser.umd.js +1573 -215
- package/node_modules/liquidjs/dist/liquid.browser.umd.js.map +1 -1
- package/node_modules/liquidjs/dist/liquid.d.ts +29 -1
- package/node_modules/liquidjs/dist/liquid.node.js +699 -45
- package/node_modules/liquidjs/dist/liquid.node.mjs +712 -45
- package/node_modules/liquidjs/dist/render/expression.d.ts +1 -1
- package/node_modules/liquidjs/dist/render/operator.d.ts +1 -0
- package/node_modules/liquidjs/dist/tags/assign.d.ts +5 -0
- package/node_modules/liquidjs/dist/tags/block.d.ts +2 -0
- package/node_modules/liquidjs/dist/tags/break.d.ts +1 -1
- package/node_modules/liquidjs/dist/tags/capture.d.ts +5 -1
- package/node_modules/liquidjs/dist/tags/case.d.ts +3 -0
- package/node_modules/liquidjs/dist/tags/continue.d.ts +1 -1
- package/node_modules/liquidjs/dist/tags/cycle.d.ts +2 -0
- package/node_modules/liquidjs/dist/tags/decrement.d.ts +3 -0
- package/node_modules/liquidjs/dist/tags/echo.d.ts +2 -0
- package/node_modules/liquidjs/dist/tags/for.d.ts +4 -0
- package/node_modules/liquidjs/dist/tags/if.d.ts +3 -0
- package/node_modules/liquidjs/dist/tags/include.d.ts +5 -1
- package/node_modules/liquidjs/dist/tags/increment.d.ts +3 -0
- package/node_modules/liquidjs/dist/tags/layout.d.ts +4 -0
- package/node_modules/liquidjs/dist/tags/liquid.d.ts +1 -0
- package/node_modules/liquidjs/dist/tags/render.d.ts +4 -0
- package/node_modules/liquidjs/dist/tags/tablerow.d.ts +4 -0
- package/node_modules/liquidjs/dist/tags/unless.d.ts +3 -0
- package/node_modules/liquidjs/dist/template/analysis.d.ts +85 -0
- package/node_modules/liquidjs/dist/template/analysis.spec.d.ts +1 -0
- package/node_modules/liquidjs/dist/template/hash.d.ts +2 -1
- package/node_modules/liquidjs/dist/template/index.d.ts +1 -0
- package/node_modules/liquidjs/dist/template/output.d.ts +2 -1
- package/node_modules/liquidjs/dist/template/template.d.ts +29 -0
- package/node_modules/liquidjs/dist/tokens/liquid-tag-token.d.ts +1 -1
- package/node_modules/liquidjs/dist/util/type-guards.d.ts +2 -1
- package/node_modules/liquidjs/dist/util/underscore.d.ts +3 -0
- package/node_modules/liquidjs/package.json +2 -1
- package/package.json +2 -2
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { QuotedToken, Token } from '../tokens';
|
|
2
2
|
import type { Context } from '../context';
|
|
3
3
|
export declare class Expression {
|
|
4
|
-
|
|
4
|
+
readonly postfix: Token[];
|
|
5
5
|
constructor(tokens: IterableIterator<Token>);
|
|
6
6
|
evaluate(ctx: Context, lenient?: boolean): Generator<unknown, unknown, unknown>;
|
|
7
7
|
valid(): boolean;
|
|
@@ -5,3 +5,4 @@ export type OperatorHandler = UnaryOperatorHandler | BinaryOperatorHandler;
|
|
|
5
5
|
export type Operators = Record<string, OperatorHandler>;
|
|
6
6
|
export declare const defaultOperators: Operators;
|
|
7
7
|
export declare function equals(lhs: any, rhs: any): boolean;
|
|
8
|
+
export declare function arrayIncludes(arr: any[], item: any): boolean;
|
|
@@ -1,7 +1,12 @@
|
|
|
1
1
|
import { Liquid, TopLevelToken, TagToken, Context, Tag } from '..';
|
|
2
|
+
import { Arguments } from '../template';
|
|
3
|
+
import { IdentifierToken } from '../tokens';
|
|
2
4
|
export default class extends Tag {
|
|
3
5
|
private key;
|
|
4
6
|
private value;
|
|
7
|
+
private identifier;
|
|
5
8
|
constructor(token: TagToken, remainTokens: TopLevelToken[], liquid: Liquid);
|
|
6
9
|
render(ctx: Context): Generator<unknown, void, unknown>;
|
|
10
|
+
arguments(): Arguments;
|
|
11
|
+
localScope(): Iterable<IdentifierToken>;
|
|
7
12
|
}
|
|
@@ -6,4 +6,6 @@ export default class extends Tag {
|
|
|
6
6
|
constructor(token: TagToken, remainTokens: TopLevelToken[], liquid: Liquid, parser: Parser);
|
|
7
7
|
render(ctx: Context, emitter: Emitter): Generator<any, void, unknown>;
|
|
8
8
|
private getBlockRender;
|
|
9
|
+
children(): Generator<unknown, Template[]>;
|
|
10
|
+
blockScope(): Iterable<string>;
|
|
9
11
|
}
|
|
@@ -1,9 +1,13 @@
|
|
|
1
1
|
import { Liquid, Tag, Template, Context, TagToken, TopLevelToken } from '..';
|
|
2
2
|
import { Parser } from '../parser';
|
|
3
|
+
import { IdentifierToken, QuotedToken } from '../tokens';
|
|
3
4
|
export default class extends Tag {
|
|
5
|
+
identifier: IdentifierToken | QuotedToken;
|
|
4
6
|
variable: string;
|
|
5
7
|
templates: Template[];
|
|
6
8
|
constructor(tagToken: TagToken, remainTokens: TopLevelToken[], liquid: Liquid, parser: Parser);
|
|
9
|
+
private readVariable;
|
|
7
10
|
render(ctx: Context): Generator<unknown, void, string>;
|
|
8
|
-
|
|
11
|
+
children(): Generator<unknown, Template[]>;
|
|
12
|
+
localScope(): Iterable<string | IdentifierToken | QuotedToken>;
|
|
9
13
|
}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { ValueToken, Liquid, Value, Emitter, TagToken, TopLevelToken, Context, Template, Tag } from '..';
|
|
2
2
|
import { Parser } from '../parser';
|
|
3
|
+
import { Arguments } from '../template';
|
|
3
4
|
export default class extends Tag {
|
|
4
5
|
value: Value;
|
|
5
6
|
branches: {
|
|
@@ -9,4 +10,6 @@ export default class extends Tag {
|
|
|
9
10
|
elseTemplates: Template[];
|
|
10
11
|
constructor(tagToken: TagToken, remainTokens: TopLevelToken[], liquid: Liquid, parser: Parser);
|
|
11
12
|
render(ctx: Context, emitter: Emitter): Generator<unknown, void, unknown>;
|
|
13
|
+
arguments(): Arguments;
|
|
14
|
+
children(): Generator<unknown, Template[]>;
|
|
12
15
|
}
|
|
@@ -1,7 +1,9 @@
|
|
|
1
1
|
import { TopLevelToken, Liquid, Emitter, TagToken, Context, Tag } from '..';
|
|
2
|
+
import { Arguments } from '../template';
|
|
2
3
|
export default class extends Tag {
|
|
3
4
|
private candidates;
|
|
4
5
|
private group?;
|
|
5
6
|
constructor(token: TagToken, remainTokens: TopLevelToken[], liquid: Liquid);
|
|
6
7
|
render(ctx: Context, emitter: Emitter): Generator<unknown, unknown, unknown>;
|
|
8
|
+
arguments(): Arguments;
|
|
7
9
|
}
|
|
@@ -1,6 +1,9 @@
|
|
|
1
1
|
import { Tag, Liquid, TopLevelToken, Emitter, TagToken, Context } from '..';
|
|
2
|
+
import { IdentifierToken } from '../tokens';
|
|
2
3
|
export default class extends Tag {
|
|
4
|
+
private identifier;
|
|
3
5
|
private variable;
|
|
4
6
|
constructor(token: TagToken, remainTokens: TopLevelToken[], liquid: Liquid);
|
|
5
7
|
render(context: Context, emitter: Emitter): void;
|
|
8
|
+
localScope(): Iterable<string | IdentifierToken>;
|
|
6
9
|
}
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
import { Liquid, TopLevelToken, Emitter, TagToken, Context, Tag } from '..';
|
|
2
|
+
import { Arguments } from '../template';
|
|
2
3
|
export default class extends Tag {
|
|
3
4
|
private value?;
|
|
4
5
|
constructor(token: TagToken, remainTokens: TopLevelToken[], liquid: Liquid);
|
|
5
6
|
render(ctx: Context, emitter: Emitter): Generator<unknown, void, unknown>;
|
|
7
|
+
arguments(): Arguments;
|
|
6
8
|
}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { Hash, ValueToken, Liquid, Tag, Emitter, TagToken, TopLevelToken, Context, Template } from '..';
|
|
2
2
|
import { Parser } from '../parser';
|
|
3
|
+
import { Arguments } from '../template';
|
|
3
4
|
export default class extends Tag {
|
|
4
5
|
variable: string;
|
|
5
6
|
collection: ValueToken;
|
|
@@ -8,4 +9,7 @@ export default class extends Tag {
|
|
|
8
9
|
elseTemplates: Template[];
|
|
9
10
|
constructor(token: TagToken, remainTokens: TopLevelToken[], liquid: Liquid, parser: Parser);
|
|
10
11
|
render(ctx: Context, emitter: Emitter): Generator<unknown, void | string, Template[]>;
|
|
12
|
+
children(): Generator<unknown, Template[]>;
|
|
13
|
+
arguments(): Arguments;
|
|
14
|
+
blockScope(): Iterable<string>;
|
|
11
15
|
}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { Liquid, Tag, Value, Emitter, TagToken, TopLevelToken, Context, Template } from '..';
|
|
2
2
|
import { Parser } from '../parser';
|
|
3
|
+
import { Arguments } from '../template';
|
|
3
4
|
export default class extends Tag {
|
|
4
5
|
branches: {
|
|
5
6
|
value: Value;
|
|
@@ -8,4 +9,6 @@ export default class extends Tag {
|
|
|
8
9
|
elseTemplates: Template[] | undefined;
|
|
9
10
|
constructor(tagToken: TagToken, remainTokens: TopLevelToken[], liquid: Liquid, parser: Parser);
|
|
10
11
|
render(ctx: Context, emitter: Emitter): Generator<unknown, void, string>;
|
|
12
|
+
children(): Generator<unknown, Template[]>;
|
|
13
|
+
arguments(): Arguments;
|
|
11
14
|
}
|
|
@@ -1,8 +1,12 @@
|
|
|
1
|
-
import { TopLevelToken, Liquid, Tag, Emitter, TagToken, Context } from '..';
|
|
1
|
+
import { Template, TopLevelToken, Liquid, Tag, Emitter, TagToken, Context } from '..';
|
|
2
2
|
import { Parser } from '../parser';
|
|
3
|
+
import { Arguments, PartialScope } from '../template';
|
|
3
4
|
export default class extends Tag {
|
|
4
5
|
private withVar?;
|
|
5
6
|
private hash;
|
|
6
7
|
constructor(token: TagToken, remainTokens: TopLevelToken[], liquid: Liquid, parser: Parser);
|
|
7
8
|
render(ctx: Context, emitter: Emitter): Generator<unknown, void, unknown>;
|
|
9
|
+
children(partials: boolean, sync: boolean): Generator<unknown, Template[]>;
|
|
10
|
+
partialScope(): PartialScope | undefined;
|
|
11
|
+
arguments(): Arguments;
|
|
8
12
|
}
|
|
@@ -1,6 +1,9 @@
|
|
|
1
1
|
import { Tag, Liquid, TopLevelToken, Emitter, TagToken, Context } from '..';
|
|
2
|
+
import { IdentifierToken } from '../tokens';
|
|
2
3
|
export default class extends Tag {
|
|
4
|
+
private identifier;
|
|
3
5
|
private variable;
|
|
4
6
|
constructor(token: TagToken, remainTokens: TopLevelToken[], liquid: Liquid);
|
|
5
7
|
render(context: Context, emitter: Emitter): void;
|
|
8
|
+
localScope(): Iterable<string | IdentifierToken>;
|
|
6
9
|
}
|
|
@@ -1,10 +1,14 @@
|
|
|
1
1
|
import { Template, Liquid, Tag, Emitter, Hash, TagToken, TopLevelToken, Context } from '..';
|
|
2
2
|
import { ParsedFileName } from './render';
|
|
3
3
|
import { Parser } from '../parser';
|
|
4
|
+
import { Arguments, PartialScope } from '../template';
|
|
4
5
|
export default class extends Tag {
|
|
5
6
|
args: Hash;
|
|
6
7
|
templates: Template[];
|
|
7
8
|
file?: ParsedFileName;
|
|
8
9
|
constructor(token: TagToken, remainTokens: TopLevelToken[], liquid: Liquid, parser: Parser);
|
|
9
10
|
render(ctx: Context, emitter: Emitter): Generator<unknown, unknown, unknown>;
|
|
11
|
+
children(partials: boolean): Generator<unknown, Template[]>;
|
|
12
|
+
arguments(): Arguments;
|
|
13
|
+
partialScope(): PartialScope | undefined;
|
|
10
14
|
}
|
|
@@ -4,4 +4,5 @@ export default class extends Tag {
|
|
|
4
4
|
templates: Template[];
|
|
5
5
|
constructor(token: TagToken, remainTokens: TopLevelToken[], liquid: Liquid, parser: Parser);
|
|
6
6
|
render(ctx: Context, emitter: Emitter): Generator<unknown, void, unknown>;
|
|
7
|
+
children(): Generator<unknown, Template[]>;
|
|
7
8
|
}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { TopLevelToken, Liquid, Token, Template, Tokenizer, Emitter, TagToken, Context, Tag } from '..';
|
|
2
2
|
import { Parser } from '../parser';
|
|
3
|
+
import { Arguments, PartialScope } from '../template';
|
|
3
4
|
export type ParsedFileName = Template[] | Token | string | undefined;
|
|
4
5
|
export default class extends Tag {
|
|
5
6
|
private file;
|
|
@@ -7,6 +8,9 @@ export default class extends Tag {
|
|
|
7
8
|
private hash;
|
|
8
9
|
constructor(token: TagToken, remainTokens: TopLevelToken[], liquid: Liquid, parser: Parser);
|
|
9
10
|
render(ctx: Context, emitter: Emitter): Generator<unknown, void, unknown>;
|
|
11
|
+
children(partials: boolean, sync: boolean): Generator<unknown, Template[]>;
|
|
12
|
+
partialScope(): PartialScope | undefined;
|
|
13
|
+
arguments(): Arguments;
|
|
10
14
|
}
|
|
11
15
|
/**
|
|
12
16
|
* @return null for "none",
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { ValueToken, Liquid, Tag, Emitter, Hash, TagToken, TopLevelToken, Context, Template } from '..';
|
|
2
2
|
import { Parser } from '../parser';
|
|
3
|
+
import { Arguments } from '../template';
|
|
3
4
|
export default class extends Tag {
|
|
4
5
|
variable: string;
|
|
5
6
|
args: Hash;
|
|
@@ -7,4 +8,7 @@ export default class extends Tag {
|
|
|
7
8
|
collection: ValueToken;
|
|
8
9
|
constructor(tagToken: TagToken, remainTokens: TopLevelToken[], liquid: Liquid, parser: Parser);
|
|
9
10
|
render(ctx: Context, emitter: Emitter): Generator<unknown, void, unknown>;
|
|
11
|
+
children(): Generator<unknown, Template[]>;
|
|
12
|
+
arguments(): Arguments;
|
|
13
|
+
blockScope(): string[];
|
|
10
14
|
}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { Liquid, Tag, Value, TopLevelToken, Template, Emitter, Context, TagToken } from '..';
|
|
2
2
|
import { Parser } from '../parser';
|
|
3
|
+
import { Arguments } from '../template';
|
|
3
4
|
export default class extends Tag {
|
|
4
5
|
branches: {
|
|
5
6
|
value: Value;
|
|
@@ -9,4 +10,6 @@ export default class extends Tag {
|
|
|
9
10
|
elseTemplates: Template[];
|
|
10
11
|
constructor(tagToken: TagToken, remainTokens: TopLevelToken[], liquid: Liquid, parser: Parser);
|
|
11
12
|
render(ctx: Context, emitter: Emitter): Generator<unknown, unknown, unknown>;
|
|
13
|
+
children(): Generator<unknown, Template[]>;
|
|
14
|
+
arguments(): Arguments;
|
|
12
15
|
}
|
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
import { Template } from '.';
|
|
2
|
+
/**
|
|
3
|
+
* Row, column and file name where a variable was found.
|
|
4
|
+
*/
|
|
5
|
+
export interface VariableLocation {
|
|
6
|
+
row: number;
|
|
7
|
+
col: number;
|
|
8
|
+
file?: string;
|
|
9
|
+
}
|
|
10
|
+
/**
|
|
11
|
+
* A variable's segments as an array, possibly with nested arrays of segments.
|
|
12
|
+
*/
|
|
13
|
+
export type SegmentArray = Array<string | number | SegmentArray>;
|
|
14
|
+
/**
|
|
15
|
+
* A variable's segments and location, which can be coerced to a string.
|
|
16
|
+
*/
|
|
17
|
+
export declare class Variable {
|
|
18
|
+
readonly segments: Array<string | number | Variable>;
|
|
19
|
+
readonly location: VariableLocation;
|
|
20
|
+
constructor(segments: Array<string | number | Variable>, location: VariableLocation);
|
|
21
|
+
toString(): string;
|
|
22
|
+
/** Return this variable's segments as an array, possibly with nested arrays for nested paths. */
|
|
23
|
+
toArray(): SegmentArray;
|
|
24
|
+
}
|
|
25
|
+
/**
|
|
26
|
+
* Property names and array indexes that make up a path to a variable.
|
|
27
|
+
*/
|
|
28
|
+
export type VariableSegments = Array<string | number | Variable>;
|
|
29
|
+
/**
|
|
30
|
+
* A mapping of variable names to an array of locations at which the variable was found.
|
|
31
|
+
*/
|
|
32
|
+
export type Variables = {
|
|
33
|
+
[key: string]: Variable[];
|
|
34
|
+
};
|
|
35
|
+
/**
|
|
36
|
+
* Group variables by the string representation of their root segment.
|
|
37
|
+
*/
|
|
38
|
+
export declare class VariableMap {
|
|
39
|
+
private map;
|
|
40
|
+
constructor();
|
|
41
|
+
get(key: Variable): Variable[];
|
|
42
|
+
has(key: Variable): boolean;
|
|
43
|
+
push(variable: Variable): void;
|
|
44
|
+
asObject(): Variables;
|
|
45
|
+
}
|
|
46
|
+
/**
|
|
47
|
+
* The result of calling `analyze()` or `analyzeSync()`.
|
|
48
|
+
*/
|
|
49
|
+
export interface StaticAnalysis {
|
|
50
|
+
/**
|
|
51
|
+
* All variables, whether they are in scope or not. Including references to names
|
|
52
|
+
* such as `forloop` from the `for` tag.
|
|
53
|
+
*/
|
|
54
|
+
variables: Variables;
|
|
55
|
+
/**
|
|
56
|
+
* Variables that are not in scope. These could be a "global" variables that are
|
|
57
|
+
* expected to be provided by the application developer, or possible mistakes
|
|
58
|
+
* from the template author.
|
|
59
|
+
*
|
|
60
|
+
* If a variable is referenced before and after assignment, you should expect
|
|
61
|
+
* that variable to be included in `globals`, `variables` and `locals`, each with
|
|
62
|
+
* a different location.
|
|
63
|
+
*/
|
|
64
|
+
globals: Variables;
|
|
65
|
+
/**
|
|
66
|
+
* Template variables that are added to the template local scope using tags like
|
|
67
|
+
* `assign`, `capture` or `increment`.
|
|
68
|
+
*/
|
|
69
|
+
locals: Variables;
|
|
70
|
+
}
|
|
71
|
+
export interface StaticAnalysisOptions {
|
|
72
|
+
/**
|
|
73
|
+
* When `true` (the default), try to load partial templates and analyze them too.
|
|
74
|
+
*/
|
|
75
|
+
partials?: boolean;
|
|
76
|
+
}
|
|
77
|
+
export declare const defaultStaticAnalysisOptions: StaticAnalysisOptions;
|
|
78
|
+
/**
|
|
79
|
+
* Statically analyze a template and report variable usage.
|
|
80
|
+
*/
|
|
81
|
+
export declare function analyze(template: Template[], options?: StaticAnalysisOptions): Promise<StaticAnalysis>;
|
|
82
|
+
/**
|
|
83
|
+
* Statically analyze a template and report variable usage.
|
|
84
|
+
*/
|
|
85
|
+
export declare function analyzeSync(template: Template[], options?: StaticAnalysisOptions): StaticAnalysis;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { Context } from '../context/context';
|
|
2
|
+
import { Tokenizer } from '../parser/tokenizer';
|
|
2
3
|
import { Token } from '../tokens/token';
|
|
3
4
|
type HashValueTokens = Record<string, Token | undefined>;
|
|
4
5
|
/**
|
|
@@ -11,7 +12,7 @@ type HashValueTokens = Record<string, Token | undefined>;
|
|
|
11
12
|
*/
|
|
12
13
|
export declare class Hash {
|
|
13
14
|
hash: HashValueTokens;
|
|
14
|
-
constructor(
|
|
15
|
+
constructor(input: string | Tokenizer, jekyllStyle?: boolean | string);
|
|
15
16
|
render(ctx: Context): Generator<unknown, Record<string, any>, unknown>;
|
|
16
17
|
}
|
|
17
18
|
export {};
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { Value } from './value';
|
|
2
|
-
import { Template, TemplateImpl } from '../template';
|
|
2
|
+
import { Arguments, Template, TemplateImpl } from '../template';
|
|
3
3
|
import { Context } from '../context/context';
|
|
4
4
|
import { Emitter } from '../emitters/emitter';
|
|
5
5
|
import { OutputToken } from '../tokens/output-token';
|
|
@@ -8,4 +8,5 @@ export declare class Output extends TemplateImpl<OutputToken> implements Templat
|
|
|
8
8
|
value: Value;
|
|
9
9
|
constructor(token: OutputToken, liquid: Liquid);
|
|
10
10
|
render(ctx: Context, emitter: Emitter): IterableIterator<unknown>;
|
|
11
|
+
arguments(): Arguments;
|
|
11
12
|
}
|
|
@@ -1,7 +1,36 @@
|
|
|
1
1
|
import { Context } from '../context/context';
|
|
2
2
|
import { Token } from '../tokens/token';
|
|
3
3
|
import { Emitter } from '../emitters/emitter';
|
|
4
|
+
import { IdentifierToken, QuotedToken, ValueToken } from '../tokens';
|
|
5
|
+
import { Value } from './value';
|
|
6
|
+
export type Argument = Value | ValueToken;
|
|
7
|
+
export type Arguments = Iterable<Argument>;
|
|
8
|
+
/** Scope information used when analyzing partial templates. */
|
|
9
|
+
export interface PartialScope {
|
|
10
|
+
/**
|
|
11
|
+
* The name of the partial template. We need this to make sure we only analyze
|
|
12
|
+
* each template once.
|
|
13
|
+
* */
|
|
14
|
+
name: string;
|
|
15
|
+
/**
|
|
16
|
+
* If `true`, names in `scope` will be added to a new, isolated scope before
|
|
17
|
+
* analyzing any child templates, without access to the parent template's scope.
|
|
18
|
+
*/
|
|
19
|
+
isolated: boolean;
|
|
20
|
+
/**
|
|
21
|
+
* A list of names that will be in scope for the child template.
|
|
22
|
+
*
|
|
23
|
+
* If an item is a [string, Argument] tuple, the string is considered an alias
|
|
24
|
+
* for the argument.
|
|
25
|
+
*/
|
|
26
|
+
scope: Iterable<string | [string, Argument]>;
|
|
27
|
+
}
|
|
4
28
|
export interface Template {
|
|
5
29
|
token: Token;
|
|
6
30
|
render(ctx: Context, emitter: Emitter): any;
|
|
31
|
+
children?(partials: boolean, sync: boolean): Generator<unknown, Template[]>;
|
|
32
|
+
arguments?(): Arguments;
|
|
33
|
+
blockScope?(): Iterable<string>;
|
|
34
|
+
localScope?(): Iterable<IdentifierToken | QuotedToken>;
|
|
35
|
+
partialScope?(): PartialScope | undefined;
|
|
7
36
|
}
|
|
@@ -6,7 +6,7 @@ import { Tokenizer } from '../parser';
|
|
|
6
6
|
*/
|
|
7
7
|
export declare class LiquidTagToken extends DelimitedToken {
|
|
8
8
|
name: string;
|
|
9
|
-
args: string;
|
|
10
9
|
tokenizer: Tokenizer;
|
|
11
10
|
constructor(input: string, begin: number, end: number, options: NormalizedFullOptions, file?: string);
|
|
11
|
+
get args(): string;
|
|
12
12
|
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { RangeToken, NumberToken, QuotedToken, LiteralToken, PropertyAccessToken, OutputToken, HTMLToken, TagToken, IdentifierToken, DelimitedToken, OperatorToken } from '../tokens';
|
|
1
|
+
import { RangeToken, NumberToken, QuotedToken, LiteralToken, PropertyAccessToken, OutputToken, HTMLToken, TagToken, IdentifierToken, DelimitedToken, OperatorToken, ValueToken } from '../tokens';
|
|
2
2
|
export declare function isDelimitedToken(val: any): val is DelimitedToken;
|
|
3
3
|
export declare function isOperatorToken(val: any): val is OperatorToken;
|
|
4
4
|
export declare function isHTMLToken(val: any): val is HTMLToken;
|
|
@@ -10,3 +10,4 @@ export declare function isNumberToken(val: any): val is NumberToken;
|
|
|
10
10
|
export declare function isPropertyAccessToken(val: any): val is PropertyAccessToken;
|
|
11
11
|
export declare function isWordToken(val: any): val is IdentifierToken;
|
|
12
12
|
export declare function isRangeToken(val: any): val is RangeToken;
|
|
13
|
+
export declare function isValueToken(val: any): val is ValueToken;
|
|
@@ -17,6 +17,7 @@ export declare function toLiquid(value: any): any;
|
|
|
17
17
|
export declare function isNil(value: any): boolean;
|
|
18
18
|
export declare function isUndefined(value: any): boolean;
|
|
19
19
|
export declare function isArray(value: any): value is any[];
|
|
20
|
+
export declare function isArrayLike(value: any): value is any[];
|
|
20
21
|
export declare function isIterable(value: any): value is Iterable<any>;
|
|
21
22
|
export declare function forOwn<T>(obj: Record<string, T> | undefined, iteratee: ((val: T, key: string, obj: {
|
|
22
23
|
[key: string]: T;
|
|
@@ -34,3 +35,5 @@ export declare function ellipsis(str: string, N: number): string;
|
|
|
34
35
|
export declare function caseInsensitiveCompare(a: any, b: any): 0 | 1 | -1;
|
|
35
36
|
export declare function argumentsToValue<F extends (...args: any) => any, T>(fn: F): (this: T, ...args: Parameters<F>) => any;
|
|
36
37
|
export declare function escapeRegExp(text: string): string;
|
|
38
|
+
/** Return an array containing unique elements from _array_. Works with nested arrays and objects. */
|
|
39
|
+
export declare function strictUniq<T>(array: Array<T>): Generator<T>;
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "liquidjs",
|
|
3
|
-
"version": "10.
|
|
3
|
+
"version": "10.20.1",
|
|
4
|
+
"sideEffects": false,
|
|
4
5
|
"description": "A simple, expressive and safe Shopify / Github Pages compatible template engine in pure JavaScript.",
|
|
5
6
|
"main": "dist/liquid.node.js",
|
|
6
7
|
"module": "dist/liquid.node.mjs",
|
package/package.json
CHANGED
|
@@ -46,7 +46,7 @@
|
|
|
46
46
|
"eslint-import-resolver-typescript": "^3.6.3",
|
|
47
47
|
"eslint-plugin-import": "^2.29.1",
|
|
48
48
|
"jest": "29",
|
|
49
|
-
"jest-junit": "^
|
|
49
|
+
"jest-junit": "^16",
|
|
50
50
|
"jsii": "~5",
|
|
51
51
|
"jsii-diff": "^1.103.1",
|
|
52
52
|
"jsii-docgen": "^10.5.0",
|
|
@@ -79,7 +79,7 @@
|
|
|
79
79
|
"publishConfig": {
|
|
80
80
|
"access": "public"
|
|
81
81
|
},
|
|
82
|
-
"version": "0.0.
|
|
82
|
+
"version": "0.0.17",
|
|
83
83
|
"jest": {
|
|
84
84
|
"coverageProvider": "v8",
|
|
85
85
|
"testMatch": [
|