@skeptools/skep-organization-project 0.0.17 → 0.0.19

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.
Files changed (61) hide show
  1. package/.jsii +22 -2139
  2. package/API.md +533 -418
  3. package/lib/skep-organization-project.js +36 -5
  4. package/node_modules/liquidjs/README.md +110 -67
  5. package/node_modules/liquidjs/dist/build/base64-impl-browser.d.ts +2 -0
  6. package/node_modules/liquidjs/dist/build/base64-impl-browser.spec.d.ts +1 -0
  7. package/node_modules/liquidjs/dist/build/crypto-impl-browser.d.ts +2 -0
  8. package/node_modules/liquidjs/dist/build/crypto-impl-browser.spec.d.ts +1 -0
  9. package/node_modules/liquidjs/dist/context/context.d.ts +10 -4
  10. package/node_modules/liquidjs/dist/context/scope.d.ts +2 -2
  11. package/node_modules/liquidjs/dist/drop/blank-drop.d.ts +1 -1
  12. package/node_modules/liquidjs/dist/drop/block-drop.d.ts +3 -2
  13. package/node_modules/liquidjs/dist/drop/comparable.d.ts +11 -5
  14. package/node_modules/liquidjs/dist/drop/drop.d.ts +3 -1
  15. package/node_modules/liquidjs/dist/drop/empty-drop.d.ts +1 -1
  16. package/node_modules/liquidjs/dist/drop/null-drop.d.ts +1 -1
  17. package/node_modules/liquidjs/dist/filters/array.d.ts +9 -3
  18. package/node_modules/liquidjs/dist/filters/base64-impl.d.ts +2 -0
  19. package/node_modules/liquidjs/dist/filters/base64.d.ts +9 -0
  20. package/node_modules/liquidjs/dist/filters/crypto-impl.d.ts +2 -0
  21. package/node_modules/liquidjs/dist/filters/crypto.d.ts +8 -0
  22. package/node_modules/liquidjs/dist/filters/math.d.ts +1 -1
  23. package/node_modules/liquidjs/dist/filters/misc.d.ts +2 -2
  24. package/node_modules/liquidjs/dist/filters/string.d.ts +2 -1
  25. package/node_modules/liquidjs/dist/fs/fs-impl.d.ts +2 -1
  26. package/node_modules/liquidjs/dist/fs/fs.d.ts +4 -2
  27. package/node_modules/liquidjs/dist/fs/loader.d.ts +2 -1
  28. package/node_modules/liquidjs/dist/index.d.ts +8 -3
  29. package/node_modules/liquidjs/dist/liquid-options.d.ts +8 -2
  30. package/node_modules/liquidjs/dist/liquid.browser.min.js +1 -1
  31. package/node_modules/liquidjs/dist/liquid.browser.min.js.map +1 -1
  32. package/node_modules/liquidjs/dist/liquid.browser.mjs +836 -406
  33. package/node_modules/liquidjs/dist/liquid.browser.umd.js +1683 -788
  34. package/node_modules/liquidjs/dist/liquid.browser.umd.js.map +1 -1
  35. package/node_modules/liquidjs/dist/liquid.d.ts +1 -0
  36. package/node_modules/liquidjs/dist/liquid.node.js +848 -426
  37. package/node_modules/liquidjs/dist/liquid.node.mjs +849 -422
  38. package/node_modules/liquidjs/dist/parser/parser.d.ts +1 -0
  39. package/node_modules/liquidjs/dist/parser/token-kind.d.ts +1 -0
  40. package/node_modules/liquidjs/dist/parser/tokenizer.d.ts +4 -3
  41. package/node_modules/liquidjs/dist/render/expression.d.ts +11 -1
  42. package/node_modules/liquidjs/dist/render/operator.d.ts +11 -4
  43. package/node_modules/liquidjs/dist/tags/case.d.ts +2 -2
  44. package/node_modules/liquidjs/dist/tags/for.d.ts +2 -2
  45. package/node_modules/liquidjs/dist/tags/include.d.ts +2 -0
  46. package/node_modules/liquidjs/dist/tags/layout.d.ts +1 -0
  47. package/node_modules/liquidjs/dist/tags/render.d.ts +2 -0
  48. package/node_modules/liquidjs/dist/tags/tablerow.d.ts +2 -2
  49. package/node_modules/liquidjs/dist/tokens/literal-token.d.ts +2 -2
  50. package/node_modules/liquidjs/dist/tokens/operator-token.d.ts +3 -2
  51. package/node_modules/liquidjs/dist/tokens/property-access-token.d.ts +3 -2
  52. package/node_modules/liquidjs/dist/tokens/tag-token.d.ts +1 -1
  53. package/node_modules/liquidjs/dist/tokens/value-token.d.ts +2 -1
  54. package/node_modules/liquidjs/dist/util/async.d.ts +2 -0
  55. package/node_modules/liquidjs/dist/util/liquid-date.d.ts +7 -0
  56. package/node_modules/liquidjs/dist/util/operator-trie.d.ts +4 -8
  57. package/node_modules/liquidjs/dist/util/strftime.d.ts +2 -1
  58. package/node_modules/liquidjs/dist/util/type-guards.d.ts +2 -1
  59. package/node_modules/liquidjs/dist/util/underscore.d.ts +5 -1
  60. package/node_modules/liquidjs/package.json +20 -14
  61. package/package.json +47 -41
@@ -10,6 +10,7 @@ export declare class Parser {
10
10
  private cache?;
11
11
  private loader;
12
12
  private parseLimit;
13
+ private readFile;
13
14
  constructor(liquid: Liquid);
14
15
  parse(html: string, filepath?: string): Template[];
15
16
  parseTokens(tokens: TopLevelToken[]): Template[];
@@ -12,5 +12,6 @@ export declare enum TokenKind {
12
12
  Quoted = 1024,
13
13
  Operator = 2048,
14
14
  FilteredValue = 4096,
15
+ GroupedExpression = 8192,
15
16
  Delimited = 12
16
17
  }
@@ -8,10 +8,11 @@ export declare class Tokenizer {
8
8
  file?: string | undefined;
9
9
  p: number;
10
10
  N: number;
11
+ groupedExpressions: boolean;
11
12
  private rawBeginAt;
12
13
  private opTrie;
13
14
  private literalTrie;
14
- constructor(input: string, operators?: Operators, file?: string | undefined, range?: [number, number]);
15
+ constructor(input: string, operators?: Operators, file?: string | undefined, range?: [number, number], groupedExpressions?: boolean);
15
16
  readExpression(): Expression;
16
17
  readExpressionTokens(): IterableIterator<Token>;
17
18
  readOperator(): OperatorToken | undefined;
@@ -46,12 +47,12 @@ export declare class Tokenizer {
46
47
  end(): boolean;
47
48
  read(): string;
48
49
  readTo(end: string): number;
49
- readValue(): ValueToken | undefined;
50
+ readValue(): ValueToken | FilteredValueToken | undefined;
50
51
  readScopeValue(): ValueToken | undefined;
51
52
  private readProperties;
52
53
  readNumber(): NumberToken | undefined;
53
54
  readLiteral(): LiteralToken | undefined;
54
- readRange(): RangeToken | undefined;
55
+ readGroupOrRange(): FilteredValueToken | RangeToken | undefined;
55
56
  readValueOrThrow(): ValueToken;
56
57
  readQuoted(): QuotedToken | undefined;
57
58
  readFileNameTemplate(options: NormalizedFullOptions): IterableIterator<TopLevelToken>;
@@ -2,9 +2,19 @@ import { QuotedToken, Token } from '../tokens';
2
2
  import type { Context } from '../context';
3
3
  export declare class Expression {
4
4
  readonly postfix: Token[];
5
- constructor(tokens: IterableIterator<Token>);
5
+ constructor(tokens: Iterable<Token>);
6
6
  evaluate(ctx: Context, lenient?: boolean): Generator<unknown, unknown, unknown>;
7
7
  valid(): boolean;
8
8
  }
9
+ /**
10
+ * Evaluate `token`, preserving Drops.
11
+ * Operators use this so `Comparable` drops (`empty`, `nil`, `blank`) and custom drops
12
+ * are compared as drops rather than as their `valueOf()` result.
13
+ */
9
14
  export declare function evalToken(token: Token | undefined, ctx: Context, lenient?: boolean): IterableIterator<unknown>;
15
+ /**
16
+ * Evaluate `token` to the value filters and tags consume.
17
+ * Awaits a promise returned by `Drop.valueOf()`.
18
+ */
19
+ export declare function evalTokenValue(token: Token | undefined, ctx: Context, lenient?: boolean): IterableIterator<unknown>;
10
20
  export declare function evalQuotedToken(token: QuotedToken): string;
@@ -1,8 +1,15 @@
1
1
  import { Context } from '../context';
2
- export type UnaryOperatorHandler = (operand: any, ctx: Context) => boolean;
3
- export type BinaryOperatorHandler = (lhs: any, rhs: any, ctx: Context) => boolean;
2
+ /**
3
+ * A handler may return a `boolean` (legacy interface), a `Promise`, or a generator
4
+ * that `yield`s to await async values. The render driver resolves all three, so
5
+ * operators written against the legacy `=> boolean` signature keep working.
6
+ */
7
+ export type OperatorGenerator = Generator<unknown, boolean, any>;
8
+ export type OperatorResult = boolean | Promise<boolean> | OperatorGenerator;
9
+ export type UnaryOperatorHandler = (operand: any, ctx: Context) => OperatorResult;
10
+ export type BinaryOperatorHandler = (lhs: any, rhs: any, ctx: Context) => OperatorResult;
4
11
  export type OperatorHandler = UnaryOperatorHandler | BinaryOperatorHandler;
5
12
  export type Operators = Record<string, OperatorHandler>;
6
13
  export declare const defaultOperators: Operators;
7
- export declare function equals(lhs: any, rhs: any): boolean;
8
- export declare function arrayIncludes(arr: any[], item: any): boolean;
14
+ export declare function equals(lhs: any, rhs: any): Generator<unknown, boolean, any>;
15
+ export declare function arrayIncludes(arr: any[], item: any): Generator<unknown, boolean, any>;
@@ -1,10 +1,10 @@
1
- import { ValueToken, Liquid, Value, Emitter, TagToken, TopLevelToken, Context, Template, Tag } from '..';
1
+ import { ValueToken, Liquid, Value, Emitter, TagToken, TopLevelToken, Context, Template, Tag, FilteredValueToken } from '..';
2
2
  import { Parser } from '../parser';
3
3
  import { Arguments } from '../template';
4
4
  export default class extends Tag {
5
5
  value: Value;
6
6
  branches: {
7
- values: ValueToken[];
7
+ values: (ValueToken | FilteredValueToken)[];
8
8
  templates: Template[];
9
9
  }[];
10
10
  elseTemplates: Template[];
@@ -1,9 +1,9 @@
1
- import { Hash, ValueToken, Liquid, Tag, Emitter, TagToken, TopLevelToken, Context, Template } from '..';
1
+ import { Hash, ValueToken, Liquid, Tag, Emitter, TagToken, TopLevelToken, Context, Template, FilteredValueToken } from '..';
2
2
  import { Parser } from '../parser';
3
3
  import { Arguments } from '../template';
4
4
  export default class extends Tag {
5
5
  variable: string;
6
- collection: ValueToken;
6
+ collection: ValueToken | FilteredValueToken;
7
7
  hash: Hash;
8
8
  templates: Template[];
9
9
  elseTemplates: Template[];
@@ -2,6 +2,8 @@ import { Template, TopLevelToken, Liquid, Tag, Emitter, TagToken, Context } from
2
2
  import { Parser } from '../parser';
3
3
  import { Arguments, PartialScope } from '../template';
4
4
  export default class extends Tag {
5
+ private file;
6
+ private currentFile?;
5
7
  private withVar?;
6
8
  private hash;
7
9
  constructor(token: TagToken, remainTokens: TopLevelToken[], liquid: Liquid, parser: Parser);
@@ -6,6 +6,7 @@ export default class extends Tag {
6
6
  args: Hash;
7
7
  templates: Template[];
8
8
  file?: ParsedFileName;
9
+ private currentFile?;
9
10
  constructor(token: TagToken, remainTokens: TopLevelToken[], liquid: Liquid, parser: Parser);
10
11
  render(ctx: Context, emitter: Emitter): Generator<unknown, unknown, unknown>;
11
12
  children(partials: boolean): Generator<unknown, Template[]>;
@@ -6,6 +6,8 @@ export default class extends Tag {
6
6
  private file;
7
7
  private currentFile?;
8
8
  private hash;
9
+ private with?;
10
+ private forBinding?;
9
11
  constructor(token: TagToken, remainTokens: TopLevelToken[], liquid: Liquid, parser: Parser);
10
12
  render(ctx: Context, emitter: Emitter): Generator<unknown, void, unknown>;
11
13
  children(partials: boolean, sync: boolean): Generator<unknown, Template[]>;
@@ -1,11 +1,11 @@
1
- import { ValueToken, Liquid, Tag, Emitter, Hash, TagToken, TopLevelToken, Context, Template } from '..';
1
+ import { ValueToken, Liquid, Tag, Emitter, Hash, TagToken, TopLevelToken, Context, Template, FilteredValueToken } from '..';
2
2
  import { Parser } from '../parser';
3
3
  import { Arguments } from '../template';
4
4
  export default class extends Tag {
5
5
  variable: string;
6
6
  args: Hash;
7
7
  templates: Template[];
8
- collection: ValueToken;
8
+ collection: ValueToken | FilteredValueToken;
9
9
  constructor(tagToken: TagToken, remainTokens: TopLevelToken[], liquid: Liquid, parser: Parser);
10
10
  render(ctx: Context, emitter: Emitter): Generator<unknown, void, unknown>;
11
11
  children(): Generator<unknown, Template[]>;
@@ -1,11 +1,11 @@
1
1
  import { Token } from './token';
2
- import { LiteralValue } from '../util';
2
+ import { LiteralValue, LiteralKey } from '../util';
3
3
  export declare class LiteralToken extends Token {
4
4
  input: string;
5
5
  begin: number;
6
6
  end: number;
7
7
  file?: string | undefined;
8
8
  content: LiteralValue;
9
- literal: string;
9
+ literal: LiteralKey;
10
10
  constructor(input: string, begin: number, end: number, file?: string | undefined);
11
11
  }
@@ -27,12 +27,13 @@ export declare const operatorTypes: {
27
27
  and: OperatorType;
28
28
  or: OperatorType;
29
29
  };
30
+ export type OperatorKey = keyof typeof operatorPrecedences;
30
31
  export declare class OperatorToken extends Token {
31
32
  input: string;
32
33
  begin: number;
33
34
  end: number;
34
35
  file?: string | undefined;
35
- operator: string;
36
+ operator: OperatorKey;
36
37
  constructor(input: string, begin: number, end: number, file?: string | undefined);
37
- getPrecedence(): any;
38
+ getPrecedence(): number;
38
39
  }
@@ -5,8 +5,9 @@ import { IdentifierToken } from './identifier-token';
5
5
  import { NumberToken } from './number-token';
6
6
  import { RangeToken } from './range-token';
7
7
  import { QuotedToken } from './quoted-token';
8
+ import { FilteredValueToken } from './filtered-value-token';
8
9
  export declare class PropertyAccessToken extends Token {
9
- variable: QuotedToken | RangeToken | LiteralToken | NumberToken | undefined;
10
+ variable: QuotedToken | RangeToken | LiteralToken | NumberToken | FilteredValueToken | undefined;
10
11
  props: (ValueToken | IdentifierToken)[];
11
- constructor(variable: QuotedToken | RangeToken | LiteralToken | NumberToken | undefined, props: (ValueToken | IdentifierToken)[], input: string, begin: number, end: number, file?: string);
12
+ constructor(variable: QuotedToken | RangeToken | LiteralToken | NumberToken | FilteredValueToken | undefined, props: (ValueToken | IdentifierToken)[], input: string, begin: number, end: number, file?: string);
12
13
  }
@@ -4,6 +4,6 @@ import type { NormalizedFullOptions } from '../liquid-options';
4
4
  export declare class TagToken extends DelimitedToken {
5
5
  name: string;
6
6
  tokenizer: Tokenizer;
7
+ readonly args: string;
7
8
  constructor(input: string, begin: number, end: number, options: NormalizedFullOptions, file?: string);
8
- get args(): string;
9
9
  }
@@ -3,4 +3,5 @@ import { LiteralToken } from './literal-token';
3
3
  import { NumberToken } from './number-token';
4
4
  import { QuotedToken } from './quoted-token';
5
5
  import { PropertyAccessToken } from './property-access-token';
6
- export type ValueToken = RangeToken | LiteralToken | QuotedToken | PropertyAccessToken | NumberToken;
6
+ import { FilteredValueToken } from './filtered-value-token';
7
+ export type ValueToken = RangeToken | LiteralToken | QuotedToken | PropertyAccessToken | NumberToken | FilteredValueToken;
@@ -1,2 +1,4 @@
1
+ export type LiquidAsync<F extends (...args: any[]) => any> = (sync: boolean, ...args: Parameters<F>) => ReturnType<F> | Promise<ReturnType<F>>;
2
+ export declare function toLiquidAsync<F extends (...args: any[]) => any>(asyncFn: (...args: Parameters<F>) => Promise<ReturnType<F>>, syncFn?: F): LiquidAsync<F>;
1
3
  export declare function toPromise<T>(val: Generator<unknown, T, unknown> | Promise<T> | T): Promise<T>;
2
4
  export declare function toValueSync<T>(val: Generator<unknown, T, unknown> | T): T;
@@ -15,6 +15,13 @@ export declare class LiquidDate {
15
15
  timezoneFixed: boolean;
16
16
  constructor(init: string | number | Date, locale: string, timezone?: number | string);
17
17
  getTime(): number;
18
+ /**
19
+ * The underlying UTC timestamp in milliseconds, unaffected by the display
20
+ * timezone. Use this (not `getTime()`) for timezone-invariant values like
21
+ * `%s`: `getTime()` reads `displayDate`, which is deliberately shifted by
22
+ * the display timezone offset so wall-clock getters can delegate to Date.
23
+ */
24
+ dateValue(): number;
18
25
  getMilliseconds(): number;
19
26
  getSeconds(): number;
20
27
  getMinutes(): number;
@@ -1,14 +1,10 @@
1
1
  interface TrieInput<T> {
2
2
  [key: string]: T;
3
3
  }
4
- interface TrieLeafNode<T> {
5
- data: T;
6
- end: true;
4
+ export type Trie<T> = {
5
+ data?: T;
6
+ end?: true;
7
7
  needBoundary?: true;
8
- }
9
- export interface Trie<T> {
10
- [key: string]: Trie<T> | TrieLeafNode<T>;
11
- }
12
- export type TrieNode<T> = Trie<T> | TrieLeafNode<T>;
8
+ } & Record<string, any>;
13
9
  export declare function createTrie<T = any>(input: TrieInput<T>): Trie<T>;
14
10
  export {};
@@ -1,2 +1,3 @@
1
1
  import { LiquidDate } from './liquid-date';
2
- export declare function strftime(d: LiquidDate, formatStr: string): string;
2
+ import type { Limiter } from './limiter';
3
+ export declare function strftime(d: LiquidDate, formatStr: string, memoryLimit?: Pick<Limiter, 'use'>): string;
@@ -1,4 +1,4 @@
1
- import { RangeToken, NumberToken, QuotedToken, LiteralToken, PropertyAccessToken, OutputToken, HTMLToken, TagToken, IdentifierToken, DelimitedToken, OperatorToken, ValueToken } from '../tokens';
1
+ import { RangeToken, NumberToken, QuotedToken, LiteralToken, PropertyAccessToken, OutputToken, HTMLToken, TagToken, IdentifierToken, DelimitedToken, OperatorToken, ValueToken, FilteredValueToken } 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,4 +10,5 @@ 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 isFilteredValueToken(val: any): val is FilteredValueToken;
13
14
  export declare function isValueToken(val: any): val is ValueToken;
@@ -4,10 +4,12 @@ export declare function isString(value: any): value is string;
4
4
  export declare function isFunction(value: any): value is Function;
5
5
  export declare function isPromise<T>(val: any): val is Promise<T>;
6
6
  export declare function isIterator(val: any): val is IterableIterator<any>;
7
- export declare function escapeRegex(str: string): string;
8
7
  export declare function promisify<T1, T2>(fn: (arg1: T1, cb: (err: Error | null, result: T2) => void) => void): (arg1: T1) => Promise<T2>;
9
8
  export declare function promisify<T1, T2, T3>(fn: (arg1: T1, arg2: T2, cb: (err: Error | null, result: T3) => void) => void): (arg1: T1, arg2: T2) => Promise<T3>;
10
9
  export declare function stringify(value: any): string;
10
+ export declare function advanceCodePoints(str: string, from: number, count: number): number;
11
+ export declare function codePointLength(str: string): number;
12
+ export declare function readArrayElement(arr: any[], index: number, ownPropertyOnly: boolean): any;
11
13
  export declare function toEnumerable<T = unknown>(val: any): T[];
12
14
  export declare function toArray(val: any): any[];
13
15
  export declare function toValue(value: any): any;
@@ -32,8 +34,10 @@ export declare function pad(str: any, length: number, ch: string, add: (str: str
32
34
  export declare function identify<T>(val: T): T;
33
35
  export declare function changeCase(str: string): string;
34
36
  export declare function ellipsis(str: string, N: number): string;
37
+ export declare function orderedCompare(a: any, b: any): 0 | 1 | -1;
35
38
  export declare function caseInsensitiveCompare(a: any, b: any): 0 | 1 | -1;
36
39
  export declare function argumentsToValue<F extends (...args: any) => any, T>(fn: F): (this: T, ...args: Parameters<F>) => any;
40
+ export declare function argumentsToNumber<F extends (...args: any) => any, T>(fn: F): (this: T, ...args: Parameters<F>) => any;
37
41
  export declare function escapeRegExp(text: string): string;
38
42
  /** Return an array containing unique elements from _array_. Works with nested arrays and objects. */
39
43
  export declare function strictUniq<T>(array: Array<T>): Generator<T>;
@@ -1,8 +1,8 @@
1
1
  {
2
2
  "name": "liquidjs",
3
- "version": "10.20.1",
3
+ "version": "10.30.1",
4
4
  "sideEffects": false,
5
- "description": "A simple, expressive and safe Shopify / Github Pages compatible template engine in pure JavaScript.",
5
+ "description": "A simple, expressive, extensible Liquid template engine for JavaScript — Shopify, Jekyll and GitHub Pages compatible, for Node.js, browsers, and the CLI, with TypeScript support.",
6
6
  "main": "dist/liquid.node.js",
7
7
  "module": "dist/liquid.node.mjs",
8
8
  "es2015": "dist/liquid.browser.mjs",
@@ -12,7 +12,7 @@
12
12
  },
13
13
  "types": "dist/index.d.ts",
14
14
  "engines": {
15
- "node": ">=14"
15
+ "node": ">=16"
16
16
  },
17
17
  "scripts": {
18
18
  "lint": "eslint \"**/*.mjs\" \"**/*.ts\" .",
@@ -21,7 +21,7 @@
21
21
  "test:coverage": "jest --coverage src test/integration",
22
22
  "test:e2e": "jest test/e2e",
23
23
  "test:demo": "./test/demo/test.sh",
24
- "perf:diff": "bin/perf-diff.sh",
24
+ "perf:diff": "node bin/perf-diff.js",
25
25
  "perf:engines": "cd benchmark && npm run engines",
26
26
  "version": "npm run build && npm test",
27
27
  "build": "rollup -c rollup.config.mjs",
@@ -29,7 +29,15 @@
29
29
  "build:min": "BUNDLES=min rollup -c rollup.config.mjs",
30
30
  "build:umd": "BUNDLES=umd rollup -c rollup.config.mjs",
31
31
  "build:charmap": "./bin/character-gen.js > src/util/character.ts",
32
- "build:docs": "bin/build-docs.sh"
32
+ "prepare:docs": "run-s build:docs-liquid build:contributors build:apidoc build:changelog",
33
+ "build:docs": "run-s prepare:docs build:docs-hexo",
34
+ "build:docs-liquid": "cross-env BUNDLES=min rollup -c rollup.config.mjs && shx cp dist/liquid.browser.min.js docs/themes/navy/source/js/",
35
+ "build:contributors": "node bin/build-contributors.js",
36
+ "build:apidoc": "shx rm -rf docs/source/api && typedoc --plugin typedoc-plugin-missing-exports ./src --gitRevision master --out docs/source/api",
37
+ "build:changelog": "node bin/build-changelog.js",
38
+ "build:docs-hexo": "cd docs && npm ci && npm run build && shx cp CNAME .nojekyll public/",
39
+ "serve:docs": "cd docs && npm run start",
40
+ "dev:docs": "run-s prepare:docs serve:docs"
33
41
  },
34
42
  "bin": {
35
43
  "liquidjs": "./bin/liquid.js",
@@ -68,7 +76,7 @@
68
76
  "@semantic-release/changelog": "^6.0.2",
69
77
  "@semantic-release/commit-analyzer": "^9.0.2",
70
78
  "@semantic-release/git": "^10.0.1",
71
- "@semantic-release/npm": "^9.0.2",
79
+ "@semantic-release/npm": "^13.1.5",
72
80
  "@semantic-release/release-notes-generator": "^10.0.3",
73
81
  "@types/benchmark": "^1.0.31",
74
82
  "@types/express": "^4.17.2",
@@ -92,15 +100,16 @@
92
100
  "eslint-plugin-promise": "^4.0.1",
93
101
  "eslint-plugin-standard": "^4.0.0",
94
102
  "express": "^4.16.4",
95
- "husky": "^4.2.5",
96
103
  "jest": "^29.5.0",
97
104
  "jsdom": "^16.5.0",
105
+ "npm-run-all2": "^8.0.4",
98
106
  "rollup": "^1.26.3",
99
107
  "rollup-plugin-replace": "^2.1.0",
100
108
  "rollup-plugin-typescript2": "^0.31.1",
101
109
  "rollup-plugin-uglify": "^6.0.4",
102
110
  "rollup-plugin-version-injector": "^1.3.3",
103
- "semantic-release": "^19.0.3",
111
+ "semantic-release": "^25.0.3",
112
+ "shx": "^0.4.0",
104
113
  "sinon": "^15.0.2",
105
114
  "supertest": "^3.4.2",
106
115
  "ts-jest": "^29.0.5",
@@ -151,15 +160,12 @@
151
160
  ]
152
161
  ]
153
162
  },
163
+ "publishConfig": {
164
+ "provenance": true
165
+ },
154
166
  "nyc": {
155
167
  "extension": [
156
168
  ".ts"
157
169
  ]
158
- },
159
- "husky": {
160
- "hooks": {
161
- "pre-commit": "npm run check",
162
- "commit-msg": "commitlint -E HUSKY_GIT_PARAMS"
163
- }
164
170
  }
165
171
  }
package/package.json CHANGED
@@ -5,29 +5,30 @@
5
5
  "url": "git@github.com:skeptools/skep-organization-project.git"
6
6
  },
7
7
  "scripts": {
8
- "build": "npx projen build",
9
- "bump": "npx projen bump",
10
- "clobber": "npx projen clobber",
11
- "compat": "npx projen compat",
12
- "compile": "npx projen compile",
13
- "default": "npx projen default",
14
- "docgen": "npx projen docgen",
15
- "eject": "npx projen eject",
16
- "eslint": "npx projen eslint",
17
- "package": "npx projen package",
18
- "package-all": "npx projen package-all",
19
- "package:js": "npx projen package:js",
20
- "post-compile": "npx projen post-compile",
21
- "post-upgrade": "npx projen post-upgrade",
22
- "pre-compile": "npx projen pre-compile",
23
- "release": "npx projen release",
24
- "release:dev": "npx projen release:dev",
25
- "test": "npx projen test",
26
- "test:watch": "npx projen test:watch",
27
- "unbump": "npx projen unbump",
28
- "upgrade": "npx projen upgrade",
29
- "watch": "npx projen watch",
30
- "projen": "npx projen"
8
+ "build": "projen build",
9
+ "bump": "projen bump",
10
+ "bump:releasable-commits": "projen bump:releasable-commits",
11
+ "clobber": "projen clobber",
12
+ "compat": "projen compat",
13
+ "compile": "projen compile",
14
+ "default": "projen default",
15
+ "docgen": "projen docgen",
16
+ "eject": "projen eject",
17
+ "eslint": "projen eslint",
18
+ "package": "projen package",
19
+ "package-all": "projen package-all",
20
+ "package:js": "projen package:js",
21
+ "post-compile": "projen post-compile",
22
+ "post-upgrade": "projen post-upgrade",
23
+ "pre-compile": "projen pre-compile",
24
+ "release": "projen release",
25
+ "release:dev": "projen release:dev",
26
+ "test": "projen test",
27
+ "test:watch": "projen test:watch",
28
+ "unbump": "projen unbump",
29
+ "upgrade": "projen upgrade",
30
+ "watch": "projen watch",
31
+ "projen": "projen"
31
32
  },
32
33
  "author": {
33
34
  "name": "Ryan Martin",
@@ -37,33 +38,33 @@
37
38
  "devDependencies": {
38
39
  "@stylistic/eslint-plugin": "^2",
39
40
  "@types/jest": "29",
40
- "@types/node": "^20",
41
+ "@types/node": "^24",
41
42
  "@typescript-eslint/eslint-plugin": "^8",
42
43
  "@typescript-eslint/parser": "^8",
43
- "commit-and-tag-version": "^12",
44
+ "commit-and-tag-version": "^13",
44
45
  "constructs": "^10.0.0",
45
46
  "eslint": "^9",
46
- "eslint-import-resolver-typescript": "^3.6.3",
47
- "eslint-plugin-import": "^2.29.1",
47
+ "eslint-import-resolver-typescript": "^3.10.1",
48
+ "eslint-plugin-import": "^2.32.0",
48
49
  "jest": "29",
49
- "jest-junit": "^16",
50
+ "jest-junit": "^17",
50
51
  "jsii": "~5",
51
- "jsii-diff": "^1.103.1",
52
+ "jsii-diff": "^1.126.0",
52
53
  "jsii-docgen": "^10.5.0",
53
- "jsii-pacmak": "^1.103.1",
54
+ "jsii-pacmak": "^1.126.0",
54
55
  "jsii-rosetta": "~5",
55
56
  "projen": "0.0.0",
56
57
  "ts-jest": "29",
57
58
  "ts-node": "^10.9.2",
58
- "typescript": "^4.9.5"
59
+ "typescript": "~5.9"
59
60
  },
60
61
  "peerDependencies": {
61
- "@rlmartin-projen/cdktf-project": "~4",
62
+ "@rlmartin-projen/cdktf-project": "~8",
62
63
  "@rlmartin-projen/projen-project": "~0",
63
64
  "projen": "~0"
64
65
  },
65
66
  "dependencies": {
66
- "@rlmartin-projen/cdktf-project": "~4",
67
+ "@rlmartin-projen/cdktf-project": "~8",
67
68
  "@rlmartin-projen/projen-project": "~0",
68
69
  "liquidjs": "~10",
69
70
  "projen": "~0"
@@ -72,14 +73,22 @@
72
73
  "liquidjs"
73
74
  ],
74
75
  "engines": {
75
- "node": ">= 20.0.0"
76
+ "node": ">= 24.0.0"
77
+ },
78
+ "devEngines": {
79
+ "packageManager": {
80
+ "name": "yarn",
81
+ "version": "1.22.22",
82
+ "onFail": "ignore"
83
+ }
76
84
  },
77
85
  "main": "lib/index.js",
78
86
  "license": "Apache-2.0",
87
+ "stability": "stable",
79
88
  "publishConfig": {
80
89
  "access": "public"
81
90
  },
82
- "version": "0.0.17",
91
+ "version": "0.0.19",
83
92
  "jest": {
84
93
  "coverageProvider": "v8",
85
94
  "testMatch": [
@@ -120,20 +129,17 @@
120
129
  "^.+\\.[t]sx?$": [
121
130
  "ts-jest",
122
131
  {
123
- "tsconfig": "tsconfig.dev.json"
132
+ "tsconfig": "test/tsconfig.json"
124
133
  }
125
134
  ]
126
135
  }
127
136
  },
128
137
  "types": "lib/index.d.ts",
129
- "stability": "stable",
130
138
  "jsii": {
131
139
  "outdir": "dist",
132
140
  "targets": {},
133
- "tsc": {
134
- "outDir": "lib",
135
- "rootDir": "src"
136
- }
141
+ "tsconfig": "tsconfig.json",
142
+ "validateTsconfig": "strict"
137
143
  },
138
144
  "//": "~~ Generated by projen. To modify, edit .projenrc.ts and run \"npx projen\"."
139
145
  }