@small-ltsc/sdk 0.2.4 → 0.2.11

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.
@@ -4,12 +4,12 @@
4
4
  * Pre-built dictionaries for common domains that can be used
5
5
  * to improve compression of domain-specific content.
6
6
  */
7
- // Import dictionaries directly
8
- import pythonDict from './python.json';
9
- import typescriptDict from './typescript.json';
10
- import markdownDict from './markdown.json';
11
- import jsonDict from './json.json';
12
- import sqlDict from './sql.json';
7
+ // Import dictionaries directly (with import attributes for Node.js 22+ compatibility)
8
+ import pythonDict from './python.json' with { type: 'json' };
9
+ import typescriptDict from './typescript.json' with { type: 'json' };
10
+ import markdownDict from './markdown.json' with { type: 'json' };
11
+ import jsonDict from './json.json' with { type: 'json' };
12
+ import sqlDict from './sql.json' with { type: 'json' };
13
13
  /**
14
14
  * Available built-in static dictionaries.
15
15
  */
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/dictionaries/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAqCH,+BAA+B;AAC/B,OAAO,UAAU,MAAM,eAAe,CAAC;AACvC,OAAO,cAAc,MAAM,mBAAmB,CAAC;AAC/C,OAAO,YAAY,MAAM,iBAAiB,CAAC;AAC3C,OAAO,QAAQ,MAAM,aAAa,CAAC;AACnC,OAAO,OAAO,MAAM,YAAY,CAAC;AAEjC;;GAEG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG;IACjC,WAAW,EAAE,UAAU;IACvB,eAAe,EAAE,cAAc;IAC/B,aAAa,EAAE,YAAY;IAC3B,SAAS,EAAE,QAAQ;IACnB,QAAQ,EAAE,OAAO;CACT,CAAC;AAkBX;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,CAAC,KAAK,UAAU,oBAAoB,CACxC,EAAsB;IAEtB,MAAM,IAAI,GAAG,mBAAmB,CAAC,EAAE,CAAC,CAAC;IACrC,IAAI,CAAC,IAAI,EAAE,CAAC;QACV,MAAM,IAAI,KAAK,CAAC,8BAA8B,EAAE,EAAE,CAAC,CAAC;IACtD,CAAC;IAED,OAAO,mBAAmB,CAAC,IAAsB,CAAC,CAAC;AACrD,CAAC;AAED;;GAEG;AACH,SAAS,mBAAmB,CAAC,IAAoB;IAC/C,MAAM,OAAO,GAAG,IAAI,GAAG,EAA6B,CAAC;IACrD,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAkB,CAAC;IAE3C,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;QACjC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,SAAS,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;QAC5C,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;IAC/D,CAAC;IAED,OAAO;QACL,EAAE,EAAE,IAAI,CAAC,EAAE;QACX,OAAO,EAAE,IAAI,CAAC,OAAO;QACrB,IAAI,EAAE,IAAI,CAAC,IAAI;QACf,WAAW,EAAE,IAAI,CAAC,WAAW;QAC7B,OAAO;QACP,QAAQ;KACT,CAAC;AACJ,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,sBAAsB,CACpC,EAAU,EACV,QAAoB,EACpB,cAAc,GAAG,UAAU;IAE3B,MAAM,OAAO,GAAG,IAAI,GAAG,EAA6B,CAAC;IACrD,MAAM,UAAU,GAAG,IAAI,GAAG,EAAkB,CAAC;IAE7C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACzC,MAAM,OAAO,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;QAC5B,MAAM,SAAS,GAAG,cAAc,GAAG,CAAC,CAAC;QACrC,OAAO,CAAC,GAAG,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;QAChC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,SAAS,CAAC,CAAC;IACrD,CAAC;IAED,OAAO;QACL,EAAE;QACF,OAAO,EAAE,OAAO;QAChB,IAAI,EAAE,EAAE;QACR,WAAW,EAAE,sBAAsB,EAAE,EAAE;QACvC,OAAO;QACP,QAAQ,EAAE,UAAU;KACrB,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,sBAAsB;IACpC,OAAO,MAAM,CAAC,IAAI,CAAC,mBAAmB,CAAyB,CAAC;AAClE,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,mBAAmB,CAAC,EAAU;IAC5C,OAAO,EAAE,IAAI,mBAAmB,CAAC;AACnC,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/dictionaries/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAqCH,sFAAsF;AACtF,OAAO,UAAU,MAAM,eAAe,CAAC,OAAO,IAAI,EAAE,MAAM,EAAE,CAAC;AAC7D,OAAO,cAAc,MAAM,mBAAmB,CAAC,OAAO,IAAI,EAAE,MAAM,EAAE,CAAC;AACrE,OAAO,YAAY,MAAM,iBAAiB,CAAC,OAAO,IAAI,EAAE,MAAM,EAAE,CAAC;AACjE,OAAO,QAAQ,MAAM,aAAa,CAAC,OAAO,IAAI,EAAE,MAAM,EAAE,CAAC;AACzD,OAAO,OAAO,MAAM,YAAY,CAAC,OAAO,IAAI,EAAE,MAAM,EAAE,CAAC;AAEvD;;GAEG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG;IACjC,WAAW,EAAE,UAAU;IACvB,eAAe,EAAE,cAAc;IAC/B,aAAa,EAAE,YAAY;IAC3B,SAAS,EAAE,QAAQ;IACnB,QAAQ,EAAE,OAAO;CACT,CAAC;AAkBX;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,CAAC,KAAK,UAAU,oBAAoB,CACxC,EAAsB;IAEtB,MAAM,IAAI,GAAG,mBAAmB,CAAC,EAAE,CAAC,CAAC;IACrC,IAAI,CAAC,IAAI,EAAE,CAAC;QACV,MAAM,IAAI,KAAK,CAAC,8BAA8B,EAAE,EAAE,CAAC,CAAC;IACtD,CAAC;IAED,OAAO,mBAAmB,CAAC,IAAsB,CAAC,CAAC;AACrD,CAAC;AAED;;GAEG;AACH,SAAS,mBAAmB,CAAC,IAAoB;IAC/C,MAAM,OAAO,GAAG,IAAI,GAAG,EAA6B,CAAC;IACrD,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAkB,CAAC;IAE3C,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;QACjC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,SAAS,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;QAC5C,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;IAC/D,CAAC;IAED,OAAO;QACL,EAAE,EAAE,IAAI,CAAC,EAAE;QACX,OAAO,EAAE,IAAI,CAAC,OAAO;QACrB,IAAI,EAAE,IAAI,CAAC,IAAI;QACf,WAAW,EAAE,IAAI,CAAC,WAAW;QAC7B,OAAO;QACP,QAAQ;KACT,CAAC;AACJ,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,sBAAsB,CACpC,EAAU,EACV,QAAoB,EACpB,cAAc,GAAG,UAAU;IAE3B,MAAM,OAAO,GAAG,IAAI,GAAG,EAA6B,CAAC;IACrD,MAAM,UAAU,GAAG,IAAI,GAAG,EAAkB,CAAC;IAE7C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACzC,MAAM,OAAO,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;QAC5B,MAAM,SAAS,GAAG,cAAc,GAAG,CAAC,CAAC;QACrC,OAAO,CAAC,GAAG,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;QAChC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,SAAS,CAAC,CAAC;IACrD,CAAC;IAED,OAAO;QACL,EAAE;QACF,OAAO,EAAE,OAAO;QAChB,IAAI,EAAE,EAAE;QACR,WAAW,EAAE,sBAAsB,EAAE,EAAE;QACvC,OAAO;QACP,QAAQ,EAAE,UAAU;KACrB,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,sBAAsB;IACpC,OAAO,MAAM,CAAC,IAAI,CAAC,mBAAmB,CAAyB,CAAC;AAClE,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,mBAAmB,CAAC,EAAU;IAC5C,OAAO,EAAE,IAAI,mBAAmB,CAAC;AACnC,CAAC"}
@@ -1,28 +1,28 @@
1
1
  {
2
- "id": "json-v1",
3
- "version": "1.0.0",
4
- "name": "JSON/API Dictionary",
5
- "description": "Pre-built patterns for JSON and API schema compression",
6
- "entries": [
7
- { "metaToken": 4294934528, "pattern": [788, 25] },
8
- { "metaToken": 4294934529, "pattern": [330, 25] },
9
- { "metaToken": 4294934530, "pattern": [837, 220] },
10
- { "metaToken": 4294934531, "pattern": [1025, 220] },
11
- { "metaToken": 4294934532, "pattern": [498, 220] },
12
- { "metaToken": 4294934533, "pattern": [1115, 220] },
13
- { "metaToken": 4294934534, "pattern": [14196, 220] },
14
- { "metaToken": 4294934535, "pattern": [27, 198] },
15
- { "metaToken": 4294934536, "pattern": [220, 220] },
16
- { "metaToken": 4294934537, "pattern": [220, 220, 220, 220] },
17
- { "metaToken": 4294934538, "pattern": [6660, 788] },
18
- { "metaToken": 4294934539, "pattern": [828, 330] },
19
- { "metaToken": 4294934540, "pattern": [1, 330] },
20
- { "metaToken": 4294934541, "pattern": [330, 1374] },
21
- { "metaToken": 4294934542, "pattern": [14196, 2970] },
22
- { "metaToken": 4294934543, "pattern": [198, 198] },
23
- { "metaToken": 4294934544, "pattern": [220, 498] },
24
- { "metaToken": 4294934545, "pattern": [330, 788] },
25
- { "metaToken": 4294934546, "pattern": [788, 1374] },
26
- { "metaToken": 4294934547, "pattern": [330, 837] }
27
- ]
2
+ "id": "json-v1",
3
+ "version": "1.0.0",
4
+ "name": "JSON/API Dictionary",
5
+ "description": "Pre-built patterns for JSON and API schema compression",
6
+ "entries": [
7
+ {"metaToken": 4294934528, "pattern": [788, 25]},
8
+ {"metaToken": 4294934529, "pattern": [330, 25]},
9
+ {"metaToken": 4294934530, "pattern": [837, 220]},
10
+ {"metaToken": 4294934531, "pattern": [1025, 220]},
11
+ {"metaToken": 4294934532, "pattern": [498, 220]},
12
+ {"metaToken": 4294934533, "pattern": [1115, 220]},
13
+ {"metaToken": 4294934534, "pattern": [14196, 220]},
14
+ {"metaToken": 4294934535, "pattern": [27, 198]},
15
+ {"metaToken": 4294934536, "pattern": [220, 220]},
16
+ {"metaToken": 4294934537, "pattern": [220, 220, 220, 220]},
17
+ {"metaToken": 4294934538, "pattern": [6660, 788]},
18
+ {"metaToken": 4294934539, "pattern": [828, 330]},
19
+ {"metaToken": 4294934540, "pattern": [1, 330]},
20
+ {"metaToken": 4294934541, "pattern": [330, 1374]},
21
+ {"metaToken": 4294934542, "pattern": [14196, 2970]},
22
+ {"metaToken": 4294934543, "pattern": [198, 198]},
23
+ {"metaToken": 4294934544, "pattern": [220, 498]},
24
+ {"metaToken": 4294934545, "pattern": [330, 788]},
25
+ {"metaToken": 4294934546, "pattern": [788, 1374]},
26
+ {"metaToken": 4294934547, "pattern": [330, 837]}
27
+ ]
28
28
  }
@@ -1,28 +1,28 @@
1
1
  {
2
- "id": "markdown-v1",
3
- "version": "1.0.0",
4
- "name": "Markdown Documentation Dictionary",
5
- "description": "Pre-built patterns for Markdown documentation compression",
6
- "entries": [
7
- { "metaToken": 4294934528, "pattern": [198, 198] },
8
- { "metaToken": 4294934529, "pattern": [14196, 198] },
9
- { "metaToken": 4294934530, "pattern": [532, 279] },
10
- { "metaToken": 4294934531, "pattern": [6102, 220] },
11
- { "metaToken": 4294934532, "pattern": [279, 279] },
12
- { "metaToken": 4294934533, "pattern": [61, 220] },
13
- { "metaToken": 4294934534, "pattern": [2, 4211] },
14
- { "metaToken": 4294934535, "pattern": [7191, 74694] },
15
- { "metaToken": 4294934536, "pattern": [27, 198] },
16
- { "metaToken": 4294934537, "pattern": [532, 3384] },
17
- { "metaToken": 4294934538, "pattern": [2, 198] },
18
- { "metaToken": 4294934539, "pattern": [7, 2] },
19
- { "metaToken": 4294934540, "pattern": [8, 610] },
20
- { "metaToken": 4294934541, "pattern": [220, 220] },
21
- { "metaToken": 4294934542, "pattern": [14, 532] },
22
- { "metaToken": 4294934543, "pattern": [5765, 5765, 5765] },
23
- { "metaToken": 4294934544, "pattern": [2, 1374] },
24
- { "metaToken": 4294934545, "pattern": [220, 220, 220, 220] },
25
- { "metaToken": 4294934546, "pattern": [1374, 659] },
26
- { "metaToken": 4294934547, "pattern": [198, 14196] }
27
- ]
2
+ "id": "markdown-v1",
3
+ "version": "1.0.0",
4
+ "name": "Markdown Documentation Dictionary",
5
+ "description": "Pre-built patterns for Markdown documentation compression",
6
+ "entries": [
7
+ {"metaToken": 4294934528, "pattern": [198, 198]},
8
+ {"metaToken": 4294934529, "pattern": [14196, 198]},
9
+ {"metaToken": 4294934530, "pattern": [532, 279]},
10
+ {"metaToken": 4294934531, "pattern": [6102, 220]},
11
+ {"metaToken": 4294934532, "pattern": [279, 279]},
12
+ {"metaToken": 4294934533, "pattern": [61, 220]},
13
+ {"metaToken": 4294934534, "pattern": [2, 4211]},
14
+ {"metaToken": 4294934535, "pattern": [7191, 74694]},
15
+ {"metaToken": 4294934536, "pattern": [27, 198]},
16
+ {"metaToken": 4294934537, "pattern": [532, 3384]},
17
+ {"metaToken": 4294934538, "pattern": [2, 198]},
18
+ {"metaToken": 4294934539, "pattern": [7, 2]},
19
+ {"metaToken": 4294934540, "pattern": [8, 610]},
20
+ {"metaToken": 4294934541, "pattern": [220, 220]},
21
+ {"metaToken": 4294934542, "pattern": [14, 532]},
22
+ {"metaToken": 4294934543, "pattern": [5765, 5765, 5765]},
23
+ {"metaToken": 4294934544, "pattern": [2, 1374]},
24
+ {"metaToken": 4294934545, "pattern": [220, 220, 220, 220]},
25
+ {"metaToken": 4294934546, "pattern": [1374, 659]},
26
+ {"metaToken": 4294934547, "pattern": [198, 14196]}
27
+ ]
28
28
  }
@@ -1,28 +1,28 @@
1
1
  {
2
- "id": "python-v1",
3
- "version": "1.0.0",
4
- "name": "Python Code Dictionary",
5
- "description": "Pre-built patterns for Python source code compression",
6
- "entries": [
7
- { "metaToken": 4294934528, "pattern": [29499, 25] },
8
- { "metaToken": 4294934529, "pattern": [1312, 512] },
9
- { "metaToken": 4294934530, "pattern": [3846, 512] },
10
- { "metaToken": 4294934531, "pattern": [565, 512] },
11
- { "metaToken": 4294934532, "pattern": [471, 6927] },
12
- { "metaToken": 4294934533, "pattern": [220, 220, 220, 220] },
13
- { "metaToken": 4294934534, "pattern": [220, 220, 220, 220, 220, 220, 220, 220] },
14
- { "metaToken": 4294934535, "pattern": [55609, 512] },
15
- { "metaToken": 4294934536, "pattern": [3784, 512] },
16
- { "metaToken": 4294934537, "pattern": [961, 512] },
17
- { "metaToken": 4294934538, "pattern": [422, 659] },
18
- { "metaToken": 4294934539, "pattern": [512, 11, 659] },
19
- { "metaToken": 4294934540, "pattern": [512, 8, 610] },
20
- { "metaToken": 4294934541, "pattern": [4288, 568, 512] },
21
- { "metaToken": 4294934542, "pattern": [1374, 659] },
22
- { "metaToken": 4294934543, "pattern": [4288, 2073, 610] },
23
- { "metaToken": 4294934544, "pattern": [368, 659] },
24
- { "metaToken": 4294934545, "pattern": [610, 25] },
25
- { "metaToken": 4294934546, "pattern": [512, 304] },
26
- { "metaToken": 4294934547, "pattern": [198, 198] }
27
- ]
2
+ "id": "python-v1",
3
+ "version": "1.0.0",
4
+ "name": "Python Code Dictionary",
5
+ "description": "Pre-built patterns for Python source code compression",
6
+ "entries": [
7
+ {"metaToken": 4294934528, "pattern": [29499, 25]},
8
+ {"metaToken": 4294934529, "pattern": [1312, 512]},
9
+ {"metaToken": 4294934530, "pattern": [3846, 512]},
10
+ {"metaToken": 4294934531, "pattern": [565, 512]},
11
+ {"metaToken": 4294934532, "pattern": [471, 6927]},
12
+ {"metaToken": 4294934533, "pattern": [220, 220, 220, 220]},
13
+ {"metaToken": 4294934534, "pattern": [220, 220, 220, 220, 220, 220, 220, 220]},
14
+ {"metaToken": 4294934535, "pattern": [55609, 512]},
15
+ {"metaToken": 4294934536, "pattern": [3784, 512]},
16
+ {"metaToken": 4294934537, "pattern": [961, 512]},
17
+ {"metaToken": 4294934538, "pattern": [422, 659]},
18
+ {"metaToken": 4294934539, "pattern": [512, 11, 659]},
19
+ {"metaToken": 4294934540, "pattern": [512, 8, 610]},
20
+ {"metaToken": 4294934541, "pattern": [4288, 568, 512]},
21
+ {"metaToken": 4294934542, "pattern": [1374, 659]},
22
+ {"metaToken": 4294934543, "pattern": [4288, 2073, 610]},
23
+ {"metaToken": 4294934544, "pattern": [368, 659]},
24
+ {"metaToken": 4294934545, "pattern": [610, 25]},
25
+ {"metaToken": 4294934546, "pattern": [512, 304]},
26
+ {"metaToken": 4294934547, "pattern": [198, 198]}
27
+ ]
28
28
  }
@@ -1,28 +1,28 @@
1
1
  {
2
- "id": "sql-v1",
3
- "version": "1.0.0",
4
- "name": "SQL Dictionary",
5
- "description": "Pre-built patterns for SQL query compression",
6
- "entries": [
7
- { "metaToken": 4294934528, "pattern": [4963, 198] },
8
- { "metaToken": 4294934529, "pattern": [3963, 198] },
9
- { "metaToken": 4294934530, "pattern": [33067, 198] },
10
- { "metaToken": 4294934531, "pattern": [11075, 198] },
11
- { "metaToken": 4294934532, "pattern": [12038, 198] },
12
- { "metaToken": 4294934533, "pattern": [40462, 198] },
13
- { "metaToken": 4294934534, "pattern": [4276, 198] },
14
- { "metaToken": 4294934535, "pattern": [40114, 198] },
15
- { "metaToken": 4294934536, "pattern": [5765, 220] },
16
- { "metaToken": 4294934537, "pattern": [37094, 198] },
17
- { "metaToken": 4294934538, "pattern": [3740, 198] },
18
- { "metaToken": 4294934539, "pattern": [9149, 198] },
19
- { "metaToken": 4294934540, "pattern": [220, 220, 220, 220] },
20
- { "metaToken": 4294934541, "pattern": [3740, 11075] },
21
- { "metaToken": 4294934542, "pattern": [198, 198] },
22
- { "metaToken": 4294934543, "pattern": [9829, 11] },
23
- { "metaToken": 4294934544, "pattern": [29766, 11] },
24
- { "metaToken": 4294934545, "pattern": [26717, 11] },
25
- { "metaToken": 4294934546, "pattern": [6657, 11] },
26
- { "metaToken": 4294934547, "pattern": [3740, 4963] }
27
- ]
2
+ "id": "sql-v1",
3
+ "version": "1.0.0",
4
+ "name": "SQL Dictionary",
5
+ "description": "Pre-built patterns for SQL query compression",
6
+ "entries": [
7
+ {"metaToken": 4294934528, "pattern": [4963, 198]},
8
+ {"metaToken": 4294934529, "pattern": [3963, 198]},
9
+ {"metaToken": 4294934530, "pattern": [33067, 198]},
10
+ {"metaToken": 4294934531, "pattern": [11075, 198]},
11
+ {"metaToken": 4294934532, "pattern": [12038, 198]},
12
+ {"metaToken": 4294934533, "pattern": [40462, 198]},
13
+ {"metaToken": 4294934534, "pattern": [4276, 198]},
14
+ {"metaToken": 4294934535, "pattern": [40114, 198]},
15
+ {"metaToken": 4294934536, "pattern": [5765, 220]},
16
+ {"metaToken": 4294934537, "pattern": [37094, 198]},
17
+ {"metaToken": 4294934538, "pattern": [3740, 198]},
18
+ {"metaToken": 4294934539, "pattern": [9149, 198]},
19
+ {"metaToken": 4294934540, "pattern": [220, 220, 220, 220]},
20
+ {"metaToken": 4294934541, "pattern": [3740, 11075]},
21
+ {"metaToken": 4294934542, "pattern": [198, 198]},
22
+ {"metaToken": 4294934543, "pattern": [9829, 11]},
23
+ {"metaToken": 4294934544, "pattern": [29766, 11]},
24
+ {"metaToken": 4294934545, "pattern": [26717, 11]},
25
+ {"metaToken": 4294934546, "pattern": [6657, 11]},
26
+ {"metaToken": 4294934547, "pattern": [3740, 4963]}
27
+ ]
28
28
  }
@@ -1,28 +1,28 @@
1
1
  {
2
- "id": "typescript-v1",
3
- "version": "1.0.0",
4
- "name": "TypeScript Code Dictionary",
5
- "description": "Pre-built patterns for TypeScript source code compression",
6
- "entries": [
7
- { "metaToken": 4294934528, "pattern": [736, 512] },
8
- { "metaToken": 4294934529, "pattern": [1034, 512] },
9
- { "metaToken": 4294934530, "pattern": [738, 512] },
10
- { "metaToken": 4294934531, "pattern": [471, 6927] },
11
- { "metaToken": 4294934532, "pattern": [220, 220] },
12
- { "metaToken": 4294934533, "pattern": [220, 220, 220, 220] },
13
- { "metaToken": 4294934534, "pattern": [198, 198] },
14
- { "metaToken": 4294934535, "pattern": [512, 25] },
15
- { "metaToken": 4294934536, "pattern": [512, 11, 659] },
16
- { "metaToken": 4294934537, "pattern": [368, 659] },
17
- { "metaToken": 4294934538, "pattern": [4288, 568, 512] },
18
- { "metaToken": 4294934539, "pattern": [512, 304] },
19
- { "metaToken": 4294934540, "pattern": [610, 25] },
20
- { "metaToken": 4294934541, "pattern": [422, 659] },
21
- { "metaToken": 4294934542, "pattern": [61, 2511, 25] },
22
- { "metaToken": 4294934543, "pattern": [61, 1808, 25] },
23
- { "metaToken": 4294934544, "pattern": [6706, 25] },
24
- { "metaToken": 4294934545, "pattern": [961, 512] },
25
- { "metaToken": 4294934546, "pattern": [1374, 659] },
26
- { "metaToken": 4294934547, "pattern": [4288, 2073, 610] }
27
- ]
2
+ "id": "typescript-v1",
3
+ "version": "1.0.0",
4
+ "name": "TypeScript Code Dictionary",
5
+ "description": "Pre-built patterns for TypeScript source code compression",
6
+ "entries": [
7
+ {"metaToken": 4294934528, "pattern": [736, 512]},
8
+ {"metaToken": 4294934529, "pattern": [1034, 512]},
9
+ {"metaToken": 4294934530, "pattern": [738, 512]},
10
+ {"metaToken": 4294934531, "pattern": [471, 6927]},
11
+ {"metaToken": 4294934532, "pattern": [220, 220]},
12
+ {"metaToken": 4294934533, "pattern": [220, 220, 220, 220]},
13
+ {"metaToken": 4294934534, "pattern": [198, 198]},
14
+ {"metaToken": 4294934535, "pattern": [512, 25]},
15
+ {"metaToken": 4294934536, "pattern": [512, 11, 659]},
16
+ {"metaToken": 4294934537, "pattern": [368, 659]},
17
+ {"metaToken": 4294934538, "pattern": [4288, 568, 512]},
18
+ {"metaToken": 4294934539, "pattern": [512, 304]},
19
+ {"metaToken": 4294934540, "pattern": [610, 25]},
20
+ {"metaToken": 4294934541, "pattern": [422, 659]},
21
+ {"metaToken": 4294934542, "pattern": [61, 2511, 25]},
22
+ {"metaToken": 4294934543, "pattern": [61, 1808, 25]},
23
+ {"metaToken": 4294934544, "pattern": [6706, 25]},
24
+ {"metaToken": 4294934545, "pattern": [961, 512]},
25
+ {"metaToken": 4294934546, "pattern": [1374, 659]},
26
+ {"metaToken": 4294934547, "pattern": [4288, 2073, 610]}
27
+ ]
28
28
  }
@@ -0,0 +1,12 @@
1
+ /**
2
+ * Helper to dynamically import the wasm-pack generated module.
3
+ * Uses eval to completely bypass TypeScript module resolution.
4
+ */
5
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
6
+ export async function importWasmModule() {
7
+ // Using eval to bypass TypeScript's static module resolution
8
+ // The actual module is generated by wasm-pack at build time
9
+ // eslint-disable-next-line no-eval
10
+ return eval('import("./pkg/small_ltsc_core.js")');
11
+ }
12
+ //# sourceMappingURL=import-helper.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"import-helper.js","sourceRoot":"","sources":["../../../src/wasm/import-helper.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,8DAA8D;AAC9D,MAAM,CAAC,KAAK,UAAU,gBAAgB;IACpC,6DAA6D;IAC7D,4DAA4D;IAC5D,mCAAmC;IACnC,OAAO,IAAI,CAAC,oCAAoC,CAAC,CAAC;AACpD,CAAC"}
@@ -1,84 +1,23 @@
1
1
  /**
2
- * WASM module loader with cross-platform support.
2
+ * WASM module loader - wraps wasm-pack generated web target output.
3
3
  *
4
- * Handles loading the WebAssembly module in browser, Node.js, and Deno environments.
4
+ * This loader uses the wasm-bindgen generated init() function which properly
5
+ * handles WASM loading across browser and Node.js environments.
5
6
  */
6
- // Global state
7
- let wasmModule = null;
8
- let wasmInstance = null;
7
+ // Track initialization state
8
+ let initialized = false;
9
9
  let initPromise = null;
10
+ let wasmExports = null;
10
11
  /**
11
12
  * Detect the current runtime environment.
12
13
  */
13
14
  function detectEnvironment() {
14
- if (typeof Deno !== 'undefined') {
15
- return 'deno';
16
- }
17
- if (typeof window !== 'undefined' && typeof window.document !== 'undefined') {
18
- return 'browser';
19
- }
20
15
  if (typeof process !== 'undefined' &&
21
16
  process.versions &&
22
17
  process.versions.node) {
23
18
  return 'node';
24
19
  }
25
- return 'browser'; // Default fallback
26
- }
27
- /**
28
- * Load WASM bytes based on environment.
29
- */
30
- async function loadWasmBytes() {
31
- const env = detectEnvironment();
32
- // Get the path to the WASM file
33
- // This will be populated during the build process
34
- const wasmPath = new URL('./small_ltsc_core_bg.wasm', import.meta.url);
35
- switch (env) {
36
- case 'browser': {
37
- const response = await fetch(wasmPath);
38
- if (!response.ok) {
39
- throw new Error(`Failed to fetch WASM: ${response.statusText}`);
40
- }
41
- return response.arrayBuffer();
42
- }
43
- case 'node': {
44
- // Dynamic import for Node.js fs module
45
- const { readFile } = await import('node:fs/promises');
46
- const { fileURLToPath } = await import('node:url');
47
- const path = fileURLToPath(wasmPath);
48
- const buffer = await readFile(path);
49
- return buffer.buffer.slice(buffer.byteOffset, buffer.byteOffset + buffer.byteLength);
50
- }
51
- case 'deno': {
52
- // Deno can use fetch for local files
53
- const response = await fetch(wasmPath);
54
- if (!response.ok) {
55
- throw new Error(`Failed to fetch WASM: ${response.statusText}`);
56
- }
57
- return response.arrayBuffer();
58
- }
59
- default:
60
- throw new Error(`Unsupported environment: ${env}`);
61
- }
62
- }
63
- /**
64
- * Create import object for WASM instantiation.
65
- */
66
- function createImports() {
67
- return {
68
- env: {
69
- // Logging functions for debugging
70
- console_log: (ptr, len) => {
71
- // In production, this would decode the string from memory
72
- console.log('[WASM]', ptr, len);
73
- },
74
- },
75
- wbg: {
76
- // wasm-bindgen imports will be added here during build
77
- __wbindgen_throw: (ptr, len) => {
78
- throw new Error(`WASM error at ${ptr} len ${len}`);
79
- },
80
- },
81
- };
20
+ return 'browser';
82
21
  }
83
22
  /**
84
23
  * Initialize the WASM module.
@@ -89,42 +28,69 @@ function createImports() {
89
28
  * @throws Error if WASM loading fails
90
29
  */
91
30
  export async function initWasm() {
92
- if (wasmInstance) {
93
- return; // Already initialized
31
+ if (initialized) {
32
+ return;
94
33
  }
95
34
  if (initPromise) {
96
- return initPromise; // Initialization in progress
35
+ return initPromise;
97
36
  }
98
37
  initPromise = (async () => {
99
38
  try {
100
- const wasmBytes = await loadWasmBytes();
101
- wasmModule = await WebAssembly.compile(wasmBytes);
102
- const imports = createImports();
103
- const instance = await WebAssembly.instantiate(wasmModule, imports);
104
- wasmInstance = instance.exports;
39
+ const env = detectEnvironment();
40
+ // Dynamically import the wasm-pack generated module
41
+ const { importWasmModule } = await import('./import-helper.js');
42
+ const wasmModule = await importWasmModule();
43
+ if (env === 'node') {
44
+ // In Node.js, we need to provide the WASM file path/bytes
45
+ const { readFile } = await import('node:fs/promises');
46
+ const { fileURLToPath } = await import('node:url');
47
+ const wasmPath = new URL('./pkg/small_ltsc_core_bg.wasm', import.meta.url);
48
+ const path = fileURLToPath(wasmPath);
49
+ const buffer = await readFile(path);
50
+ await wasmModule.default(buffer);
51
+ }
52
+ else {
53
+ // In browser, wasm-pack's init() handles loading via import.meta.url
54
+ await wasmModule.default();
55
+ }
56
+ // Store exports for getWasm()
57
+ wasmExports = {
58
+ compress: wasmModule.compress,
59
+ decompress: wasmModule.decompress,
60
+ discover_patterns: wasmModule.discover_patterns,
61
+ version: wasmModule.version,
62
+ StreamingCompressor: wasmModule.StreamingCompressor,
63
+ };
64
+ initialized = true;
105
65
  }
106
66
  catch (error) {
107
- initPromise = null; // Allow retry on failure
67
+ initPromise = null;
108
68
  throw error;
109
69
  }
110
70
  })();
111
71
  return initPromise;
112
72
  }
113
73
  /**
114
- * Initialize from pre-compiled WASM module.
115
- *
116
- * Useful for environments where the WASM is bundled differently.
74
+ * Initialize from pre-compiled WASM module or Response.
117
75
  *
118
- * @param module - Pre-compiled WebAssembly.Module
76
+ * @param module - Pre-compiled WebAssembly.Module, Response, or bytes
119
77
  */
120
78
  export async function initWasmFromModule(module) {
121
- if (wasmInstance) {
79
+ if (initialized) {
122
80
  return;
123
81
  }
124
- wasmModule = module;
125
- const imports = createImports();
126
- const instance = await WebAssembly.instantiate(module, imports);
127
- wasmInstance = instance.exports;
82
+ // Dynamically import the wasm-pack generated module
83
+ const { importWasmModule } = await import('./import-helper.js');
84
+ const wasmModule = await importWasmModule();
85
+ await wasmModule.default(module);
86
+ wasmExports = {
87
+ compress: wasmModule.compress,
88
+ decompress: wasmModule.decompress,
89
+ discover_patterns: wasmModule.discover_patterns,
90
+ version: wasmModule.version,
91
+ StreamingCompressor: wasmModule.StreamingCompressor,
92
+ };
93
+ initialized = true;
128
94
  }
129
95
  /**
130
96
  * Initialize from WASM bytes.
@@ -132,16 +98,7 @@ export async function initWasmFromModule(module) {
132
98
  * @param bytes - WASM binary as ArrayBuffer or Uint8Array
133
99
  */
134
100
  export async function initWasmFromBytes(bytes) {
135
- if (wasmInstance) {
136
- return;
137
- }
138
- const buffer = bytes instanceof Uint8Array
139
- ? new Uint8Array(bytes).buffer
140
- : bytes;
141
- wasmModule = await WebAssembly.compile(buffer);
142
- const imports = createImports();
143
- const instance = await WebAssembly.instantiate(wasmModule, imports);
144
- wasmInstance = instance.exports;
101
+ return initWasmFromModule(bytes);
145
102
  }
146
103
  /**
147
104
  * Get the initialized WASM exports.
@@ -149,24 +106,24 @@ export async function initWasmFromBytes(bytes) {
149
106
  * @throws Error if WASM is not initialized
150
107
  */
151
108
  export function getWasm() {
152
- if (!wasmInstance) {
109
+ if (!initialized || !wasmExports) {
153
110
  throw new Error('WASM not initialized. Call initWasm() first and await its completion.');
154
111
  }
155
- return wasmInstance;
112
+ return wasmExports;
156
113
  }
157
114
  /**
158
115
  * Check if WASM is initialized.
159
116
  */
160
117
  export function isWasmInitialized() {
161
- return wasmInstance !== null;
118
+ return initialized;
162
119
  }
163
120
  /**
164
121
  * Reset the WASM instance (mainly for testing).
165
122
  */
166
123
  export function resetWasm() {
167
- wasmInstance = null;
168
- wasmModule = null;
124
+ initialized = false;
169
125
  initPromise = null;
126
+ wasmExports = null;
170
127
  }
171
128
  /**
172
129
  * Get WASM module version.
@@ -175,5 +132,4 @@ export function getWasmVersion() {
175
132
  const wasm = getWasm();
176
133
  return wasm.version();
177
134
  }
178
- // Types are already exported at their interface declarations above
179
135
  //# sourceMappingURL=loader.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"loader.js","sourceRoot":"","sources":["../../../src/wasm/loader.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAqCH,eAAe;AACf,IAAI,UAAU,GAA8B,IAAI,CAAC;AACjD,IAAI,YAAY,GAAuB,IAAI,CAAC;AAC5C,IAAI,WAAW,GAAyB,IAAI,CAAC;AAE7C;;GAEG;AACH,SAAS,iBAAiB;IACxB,IAAI,OAAO,IAAI,KAAK,WAAW,EAAE,CAAC;QAChC,OAAO,MAAM,CAAC;IAChB,CAAC;IACD,IAAI,OAAO,MAAM,KAAK,WAAW,IAAI,OAAO,MAAM,CAAC,QAAQ,KAAK,WAAW,EAAE,CAAC;QAC5E,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,IACE,OAAO,OAAO,KAAK,WAAW;QAC9B,OAAO,CAAC,QAAQ;QAChB,OAAO,CAAC,QAAQ,CAAC,IAAI,EACrB,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IACD,OAAO,SAAS,CAAC,CAAC,mBAAmB;AACvC,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,aAAa;IAC1B,MAAM,GAAG,GAAG,iBAAiB,EAAE,CAAC;IAEhC,gCAAgC;IAChC,kDAAkD;IAClD,MAAM,QAAQ,GAAG,IAAI,GAAG,CAAC,2BAA2B,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAEvE,QAAQ,GAAG,EAAE,CAAC;QACZ,KAAK,SAAS,CAAC,CAAC,CAAC;YACf,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,QAAQ,CAAC,CAAC;YACvC,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;gBACjB,MAAM,IAAI,KAAK,CAAC,yBAAyB,QAAQ,CAAC,UAAU,EAAE,CAAC,CAAC;YAClE,CAAC;YACD,OAAO,QAAQ,CAAC,WAAW,EAAE,CAAC;QAChC,CAAC;QAED,KAAK,MAAM,CAAC,CAAC,CAAC;YACZ,uCAAuC;YACvC,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,MAAM,CAAC,kBAAkB,CAAC,CAAC;YACtD,MAAM,EAAE,aAAa,EAAE,GAAG,MAAM,MAAM,CAAC,UAAU,CAAC,CAAC;YACnD,MAAM,IAAI,GAAG,aAAa,CAAC,QAAQ,CAAC,CAAC;YACrC,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,IAAI,CAAC,CAAC;YACpC,OAAO,MAAM,CAAC,MAAM,CAAC,KAAK,CACxB,MAAM,CAAC,UAAU,EACjB,MAAM,CAAC,UAAU,GAAG,MAAM,CAAC,UAAU,CACtC,CAAC;QACJ,CAAC;QAED,KAAK,MAAM,CAAC,CAAC,CAAC;YACZ,qCAAqC;YACrC,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,QAAQ,CAAC,CAAC;YACvC,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;gBACjB,MAAM,IAAI,KAAK,CAAC,yBAAyB,QAAQ,CAAC,UAAU,EAAE,CAAC,CAAC;YAClE,CAAC;YACD,OAAO,QAAQ,CAAC,WAAW,EAAE,CAAC;QAChC,CAAC;QAED;YACE,MAAM,IAAI,KAAK,CAAC,4BAA4B,GAAG,EAAE,CAAC,CAAC;IACvD,CAAC;AACH,CAAC;AAED;;GAEG;AACH,SAAS,aAAa;IACpB,OAAO;QACL,GAAG,EAAE;YACH,kCAAkC;YAClC,WAAW,EAAE,CAAC,GAAW,EAAE,GAAW,EAAE,EAAE;gBACxC,0DAA0D;gBAC1D,OAAO,CAAC,GAAG,CAAC,QAAQ,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;YAClC,CAAC;SACF;QACD,GAAG,EAAE;YACH,uDAAuD;YACvD,gBAAgB,EAAE,CAAC,GAAW,EAAE,GAAW,EAAE,EAAE;gBAC7C,MAAM,IAAI,KAAK,CAAC,iBAAiB,GAAG,QAAQ,GAAG,EAAE,CAAC,CAAC;YACrD,CAAC;SACF;KACF,CAAC;AACJ,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,CAAC,KAAK,UAAU,QAAQ;IAC5B,IAAI,YAAY,EAAE,CAAC;QACjB,OAAO,CAAC,sBAAsB;IAChC,CAAC;IAED,IAAI,WAAW,EAAE,CAAC;QAChB,OAAO,WAAW,CAAC,CAAC,6BAA6B;IACnD,CAAC;IAED,WAAW,GAAG,CAAC,KAAK,IAAI,EAAE;QACxB,IAAI,CAAC;YACH,MAAM,SAAS,GAAG,MAAM,aAAa,EAAE,CAAC;YACxC,UAAU,GAAG,MAAM,WAAW,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;YAClD,MAAM,OAAO,GAAG,aAAa,EAAE,CAAC;YAChC,MAAM,QAAQ,GAAG,MAAM,WAAW,CAAC,WAAW,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;YACpE,YAAY,GAAG,QAAQ,CAAC,OAAiC,CAAC;QAC5D,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,WAAW,GAAG,IAAI,CAAC,CAAC,yBAAyB;YAC7C,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC,CAAC,EAAE,CAAC;IAEL,OAAO,WAAW,CAAC;AACrB,CAAC;AAED;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACtC,MAA0B;IAE1B,IAAI,YAAY,EAAE,CAAC;QACjB,OAAO;IACT,CAAC;IAED,UAAU,GAAG,MAAM,CAAC;IACpB,MAAM,OAAO,GAAG,aAAa,EAAE,CAAC;IAChC,MAAM,QAAQ,GAAG,MAAM,WAAW,CAAC,WAAW,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAChE,YAAY,GAAG,QAAQ,CAAC,OAAiC,CAAC;AAC5D,CAAC;AAED;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,KAA+B;IAE/B,IAAI,YAAY,EAAE,CAAC;QACjB,OAAO;IACT,CAAC;IAED,MAAM,MAAM,GAAG,KAAK,YAAY,UAAU;QACxC,CAAC,CAAC,IAAI,UAAU,CAAC,KAAK,CAAC,CAAC,MAAM;QAC9B,CAAC,CAAC,KAAK,CAAC;IACV,UAAU,GAAG,MAAM,WAAW,CAAC,OAAO,CAAC,MAAqB,CAAC,CAAC;IAC9D,MAAM,OAAO,GAAG,aAAa,EAAE,CAAC;IAChC,MAAM,QAAQ,GAAG,MAAM,WAAW,CAAC,WAAW,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;IACpE,YAAY,GAAG,QAAQ,CAAC,OAAiC,CAAC;AAC5D,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,OAAO;IACrB,IAAI,CAAC,YAAY,EAAE,CAAC;QAClB,MAAM,IAAI,KAAK,CACb,uEAAuE,CACxE,CAAC;IACJ,CAAC;IACD,OAAO,YAAY,CAAC;AACtB,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,iBAAiB;IAC/B,OAAO,YAAY,KAAK,IAAI,CAAC;AAC/B,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,SAAS;IACvB,YAAY,GAAG,IAAI,CAAC;IACpB,UAAU,GAAG,IAAI,CAAC;IAClB,WAAW,GAAG,IAAI,CAAC;AACrB,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,cAAc;IAC5B,MAAM,IAAI,GAAG,OAAO,EAAE,CAAC;IACvB,OAAO,IAAI,CAAC,OAAO,EAAE,CAAC;AACxB,CAAC;AAED,mEAAmE"}
1
+ {"version":3,"file":"loader.js","sourceRoot":"","sources":["../../../src/wasm/loader.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAoCH,6BAA6B;AAC7B,IAAI,WAAW,GAAG,KAAK,CAAC;AACxB,IAAI,WAAW,GAAyB,IAAI,CAAC;AAC7C,IAAI,WAAW,GAAuB,IAAI,CAAC;AAE3C;;GAEG;AACH,SAAS,iBAAiB;IACxB,IACE,OAAO,OAAO,KAAK,WAAW;QAC9B,OAAO,CAAC,QAAQ;QAChB,OAAO,CAAC,QAAQ,CAAC,IAAI,EACrB,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,CAAC,KAAK,UAAU,QAAQ;IAC5B,IAAI,WAAW,EAAE,CAAC;QAChB,OAAO;IACT,CAAC;IAED,IAAI,WAAW,EAAE,CAAC;QAChB,OAAO,WAAW,CAAC;IACrB,CAAC;IAED,WAAW,GAAG,CAAC,KAAK,IAAI,EAAE;QACxB,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,iBAAiB,EAAE,CAAC;YAEhC,oDAAoD;YACpD,MAAM,EAAE,gBAAgB,EAAE,GAAG,MAAM,MAAM,CAAC,oBAAoB,CAAC,CAAC;YAChE,MAAM,UAAU,GAAG,MAAM,gBAAgB,EAAE,CAAC;YAE5C,IAAI,GAAG,KAAK,MAAM,EAAE,CAAC;gBACnB,0DAA0D;gBAC1D,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,MAAM,CAAC,kBAAkB,CAAC,CAAC;gBACtD,MAAM,EAAE,aAAa,EAAE,GAAG,MAAM,MAAM,CAAC,UAAU,CAAC,CAAC;gBACnD,MAAM,QAAQ,GAAG,IAAI,GAAG,CAAC,+BAA+B,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;gBAC3E,MAAM,IAAI,GAAG,aAAa,CAAC,QAAQ,CAAC,CAAC;gBACrC,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,IAAI,CAAC,CAAC;gBACpC,MAAM,UAAU,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;YACnC,CAAC;iBAAM,CAAC;gBACN,qEAAqE;gBACrE,MAAM,UAAU,CAAC,OAAO,EAAE,CAAC;YAC7B,CAAC;YAED,8BAA8B;YAC9B,WAAW,GAAG;gBACZ,QAAQ,EAAE,UAAU,CAAC,QAAQ;gBAC7B,UAAU,EAAE,UAAU,CAAC,UAAU;gBACjC,iBAAiB,EAAE,UAAU,CAAC,iBAAiB;gBAC/C,OAAO,EAAE,UAAU,CAAC,OAAO;gBAC3B,mBAAmB,EAAE,UAAU,CAAC,mBAAmB;aACpD,CAAC;YAEF,WAAW,GAAG,IAAI,CAAC;QACrB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,WAAW,GAAG,IAAI,CAAC;YACnB,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC,CAAC,EAAE,CAAC;IAEL,OAAO,WAAW,CAAC;AACrB,CAAC;AAED;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACtC,MAAwE;IAExE,IAAI,WAAW,EAAE,CAAC;QAChB,OAAO;IACT,CAAC;IAED,oDAAoD;IACpD,MAAM,EAAE,gBAAgB,EAAE,GAAG,MAAM,MAAM,CAAC,oBAAoB,CAAC,CAAC;IAChE,MAAM,UAAU,GAAG,MAAM,gBAAgB,EAAE,CAAC;IAC5C,MAAM,UAAU,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IAEjC,WAAW,GAAG;QACZ,QAAQ,EAAE,UAAU,CAAC,QAAQ;QAC7B,UAAU,EAAE,UAAU,CAAC,UAAU;QACjC,iBAAiB,EAAE,UAAU,CAAC,iBAAiB;QAC/C,OAAO,EAAE,UAAU,CAAC,OAAO;QAC3B,mBAAmB,EAAE,UAAU,CAAC,mBAAmB;KACpD,CAAC;IAEF,WAAW,GAAG,IAAI,CAAC;AACrB,CAAC;AAED;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,KAA+B;IAE/B,OAAO,kBAAkB,CAAC,KAAK,CAAC,CAAC;AACnC,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,OAAO;IACrB,IAAI,CAAC,WAAW,IAAI,CAAC,WAAW,EAAE,CAAC;QACjC,MAAM,IAAI,KAAK,CACb,uEAAuE,CACxE,CAAC;IACJ,CAAC;IACD,OAAO,WAAW,CAAC;AACrB,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,iBAAiB;IAC/B,OAAO,WAAW,CAAC;AACrB,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,SAAS;IACvB,WAAW,GAAG,KAAK,CAAC;IACpB,WAAW,GAAG,IAAI,CAAC;IACnB,WAAW,GAAG,IAAI,CAAC;AACrB,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,cAAc;IAC5B,MAAM,IAAI,GAAG,OAAO,EAAE,CAAC;IACvB,OAAO,IAAI,CAAC,OAAO,EAAE,CAAC;AACxB,CAAC"}