@lbaz/tetr 0.0.26 → 0.0.27

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 (73) hide show
  1. package/dist/cdk/transpiler/block-data-processor.d.ts +6 -0
  2. package/dist/cdk/transpiler/block-data-processor.js +7 -0
  3. package/dist/cdk/transpiler/block-data-processor.js.map +1 -0
  4. package/dist/cdk/transpiler/chunks-processor.d.ts +17 -0
  5. package/dist/cdk/transpiler/chunks-processor.js +44 -0
  6. package/dist/cdk/transpiler/chunks-processor.js.map +1 -0
  7. package/dist/cdk/transpiler/common-editable-style-processor.d.ts +6 -0
  8. package/dist/cdk/transpiler/common-editable-style-processor.js +10 -0
  9. package/dist/cdk/transpiler/common-editable-style-processor.js.map +1 -0
  10. package/dist/cdk/transpiler/expression-processor.d.ts +8 -0
  11. package/dist/cdk/transpiler/expression-processor.js +27 -0
  12. package/dist/cdk/transpiler/expression-processor.js.map +1 -0
  13. package/dist/cdk/transpiler/index.d.ts +6 -0
  14. package/dist/cdk/transpiler/index.js +7 -0
  15. package/dist/cdk/transpiler/index.js.map +1 -0
  16. package/dist/cdk/transpiler/template-replacer.d.ts +7 -0
  17. package/dist/cdk/transpiler/template-replacer.js +27 -0
  18. package/dist/cdk/transpiler/template-replacer.js.map +1 -0
  19. package/dist/cdk/transpiler/types.d.ts +7 -0
  20. package/dist/cdk/transpiler/types.js +2 -0
  21. package/dist/cdk/transpiler/types.js.map +1 -0
  22. package/dist/constants/index.d.ts +31 -0
  23. package/dist/constants/index.js +32 -0
  24. package/dist/constants/index.js.map +1 -0
  25. package/dist/core/common-wrap-styles-extractor.d.ts +25 -0
  26. package/dist/core/common-wrap-styles-extractor.js +56 -0
  27. package/dist/core/common-wrap-styles-extractor.js.map +1 -0
  28. package/dist/core/index.d.ts +3 -0
  29. package/dist/core/index.js +4 -0
  30. package/dist/core/index.js.map +1 -0
  31. package/dist/core/object-seeder.d.ts +10 -0
  32. package/dist/core/object-seeder.js +41 -0
  33. package/dist/core/object-seeder.js.map +1 -0
  34. package/dist/core/transpiler.d.ts +32 -0
  35. package/dist/core/transpiler.js +109 -0
  36. package/dist/core/transpiler.js.map +1 -0
  37. package/dist/index.d.ts +3 -0
  38. package/dist/index.js +4 -0
  39. package/dist/index.js.map +1 -0
  40. package/dist/tests/common-wrap-styles-extractor-mock/index.d.ts +6 -0
  41. package/dist/tests/common-wrap-styles-extractor-mock/index.js +46 -0
  42. package/dist/tests/common-wrap-styles-extractor-mock/index.js.map +1 -0
  43. package/dist/tests/common-wrap-styles-extractor.test.d.ts +1 -0
  44. package/dist/tests/common-wrap-styles-extractor.test.js +33 -0
  45. package/dist/tests/common-wrap-styles-extractor.test.js.map +1 -0
  46. package/dist/tests/object-seeder.test.d.ts +1 -0
  47. package/dist/tests/object-seeder.test.js +60 -0
  48. package/dist/tests/object-seeder.test.js.map +1 -0
  49. package/dist/tests/template-compiler.test.d.ts +1 -0
  50. package/dist/tests/template-compiler.test.js +143 -0
  51. package/dist/tests/template-compiler.test.js.map +1 -0
  52. package/dist/tests/templates-compiler-mocks/index.d.ts +36 -0
  53. package/dist/tests/templates-compiler-mocks/index.js +365 -0
  54. package/dist/tests/templates-compiler-mocks/index.js.map +1 -0
  55. package/dist/tests/tt-factory.test.d.ts +1 -0
  56. package/dist/tests/tt-factory.test.js +64 -0
  57. package/dist/tests/tt-factory.test.js.map +1 -0
  58. package/dist/types/block.d.ts +27 -0
  59. package/dist/types/block.js +2 -0
  60. package/dist/types/block.js.map +1 -0
  61. package/dist/types/chunk.d.ts +12 -0
  62. package/dist/types/chunk.js +2 -0
  63. package/dist/types/chunk.js.map +1 -0
  64. package/dist/types/data.d.ts +86 -0
  65. package/dist/types/data.js +3 -0
  66. package/dist/types/data.js.map +1 -0
  67. package/dist/types/index.d.ts +4 -0
  68. package/dist/types/index.js +5 -0
  69. package/dist/types/index.js.map +1 -0
  70. package/dist/types/template.d.ts +3 -0
  71. package/dist/types/template.js +2 -0
  72. package/dist/types/template.js.map +1 -0
  73. package/package.json +1 -1
@@ -0,0 +1,6 @@
1
+ import { TemplateReplacer } from "./template-replacer";
2
+ import { TemplateProcessor } from "./types";
3
+ import { PageBody } from "../../types";
4
+ export declare class BlockDataProcessor extends TemplateReplacer implements TemplateProcessor {
5
+ execute(template: string, data: PageBody): string;
6
+ }
@@ -0,0 +1,7 @@
1
+ import { TemplateReplacer } from "./template-replacer";
2
+ export class BlockDataProcessor extends TemplateReplacer {
3
+ execute(template, data) {
4
+ return this.replace(template, data?.data || {}, ['{{', '}}']);
5
+ }
6
+ }
7
+ //# sourceMappingURL=block-data-processor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"block-data-processor.js","sourceRoot":"","sources":["../../../src/cdk/transpiler/block-data-processor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,gBAAgB,EAAC,MAAM,qBAAqB,CAAC;AAIrD,MAAM,OAAO,kBAAoB,SAAQ,gBAAgB;IACvD,OAAO,CAAC,QAAgB,EAAE,IAAc;QACtC,OAAO,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,IAAI,EAAE,IAAI,IAAI,EAAE,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC;IAChE,CAAC;CACF"}
@@ -0,0 +1,17 @@
1
+ import { TemplateReplacer } from "./template-replacer";
2
+ import { BlockExisting, TemplateProcessor } from "./types";
3
+ import { Block, Chunk, Data, PageBody } from "../../types";
4
+ export declare class ChunkProcessor extends TemplateReplacer implements TemplateProcessor, BlockExisting {
5
+ readonly block: Block;
6
+ constructor(block: Block);
7
+ createChunkMarkup(template: string, data: Data): string;
8
+ generateChunkData(chunks: {
9
+ [key: string]: Chunk;
10
+ } | undefined | null, model: PageBody): {
11
+ chunks: Array<{
12
+ name: string;
13
+ markup: string;
14
+ }>;
15
+ };
16
+ execute(template: string, data: PageBody): string;
17
+ }
@@ -0,0 +1,44 @@
1
+ import { TemplateReplacer } from "./template-replacer";
2
+ import { DATA_TYPES } from "../../constants";
3
+ export class ChunkProcessor extends TemplateReplacer {
4
+ block;
5
+ constructor(block) {
6
+ super();
7
+ this.block = block;
8
+ }
9
+ createChunkMarkup(template, data) {
10
+ //@ts-ignore
11
+ return Array.isArray(data)
12
+ ? data.map((item) => {
13
+ return this.replace(template, item, ['{{', '}}']);
14
+ }).join('')
15
+ : this.replace(template, data);
16
+ }
17
+ generateChunkData(chunks, model) {
18
+ if (!chunks) {
19
+ return { chunks: [] };
20
+ }
21
+ //@ts-ignore
22
+ const chunksMap = Object.entries(chunks);
23
+ return chunksMap.reduce((acc, [chunkName, payload]) => {
24
+ const dataType = payload?.data?.type;
25
+ const emptyData = dataType === DATA_TYPES.DICT ? {} : [];
26
+ const modelChunkData = model?.chunks?.[chunkName]?.data ?? emptyData;
27
+ const template = payload?.template?.markup || '';
28
+ const markup = this.createChunkMarkup(template, modelChunkData);
29
+ acc['chunks'].push({ name: chunkName, markup: markup });
30
+ return acc;
31
+ }, { chunks: [] });
32
+ }
33
+ execute(template, data) {
34
+ /// processing
35
+ const _chunks = this.generateChunkData(this.block?.chunks, data);
36
+ //@ts-ignore
37
+ const _processingChunks = _chunks.chunks.reduce((acc, { name, markup }) => {
38
+ acc[name] = markup;
39
+ return acc;
40
+ }, {});
41
+ return this.replace(template, _processingChunks, ['[[', ']]']);
42
+ }
43
+ }
44
+ //# sourceMappingURL=chunks-processor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"chunks-processor.js","sourceRoot":"","sources":["../../../src/cdk/transpiler/chunks-processor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,gBAAgB,EAAC,MAAM,qBAAqB,CAAC;AAGrD,OAAO,EAAC,UAAU,EAAC,MAAM,iBAAiB,CAAC;AAE3C,MAAM,OAAO,cAAe,SAAQ,gBAAgB;IAC7B;IAArB,YAAqB,KAAY;QAC/B,KAAK,EAAE,CAAC;QADW,UAAK,GAAL,KAAK,CAAO;IAEjC,CAAC;IACD,iBAAiB,CAAC,QAAgB,EAAE,IAAU;QAC5C,YAAY;QACZ,OAAO,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC;YACxB,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;gBAClB,OAAO,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC;YACpD,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC;YACX,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;IACnC,CAAC;IACD,iBAAiB,CAAC,MAAiD,EAAE,KAAe;QAElF,IAAG,CAAC,MAAM,EAAE,CAAC;YACX,OAAO,EAAC,MAAM,EAAE,EAAE,EAAC,CAAC;QACtB,CAAC;QACD,YAAY;QACZ,MAAM,SAAS,GAAG,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QACzC,OAAO,SAAS,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC,SAAS,EAAE,OAAO,CAAC,EAAE,EAAE;YACpD,MAAM,QAAQ,GAAG,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC;YACrC,MAAM,SAAS,GAAG,QAAQ,KAAK,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACzD,MAAM,cAAc,GAAG,KAAK,EAAE,MAAM,EAAE,CAAC,SAAS,CAAC,EAAE,IAAI,IAAI,SAAS,CAAC;YACrE,MAAM,QAAQ,GAAG,OAAO,EAAE,QAAQ,EAAE,MAAM,IAAI,EAAE,CAAC;YACjD,MAAM,MAAM,GAAG,IAAI,CAAC,iBAAiB,CAAC,QAAQ,EAAE,cAAc,CAAC,CAAC;YAChE,GAAG,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,EAAC,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,EAAC,CAAC,CAAC;YACtD,OAAO,GAAG,CAAC;QACb,CAAC,EAAE,EAAC,MAAM,EAAE,EAA2C,EAAC,CAAC,CAAC;IAC5D,CAAC;IACD,OAAO,CAAC,QAAgB,EAAE,IAAc;QACtC,cAAc;QACd,MAAM,OAAO,GAAG,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;QACjE,YAAY;QACZ,MAAM,iBAAiB,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAC,IAAI,EAAE,MAAM,EAAC,EAAE,EAAE;YACtE,GAAG,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC;YACnB,OAAO,GAAG,CAAC;QACb,CAAC,EAAE,EAAU,CAAC,CAAC;QACf,OAAO,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,iBAAiB,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC;IACjE,CAAC;CACF"}
@@ -0,0 +1,6 @@
1
+ import { TemplateReplacer } from "./template-replacer";
2
+ import { TemplateProcessor } from "./types";
3
+ import { PageBody } from "../../types";
4
+ export declare class CommonEditableStyleProcessor extends TemplateReplacer implements TemplateProcessor {
5
+ execute(template: string, data: PageBody): string;
6
+ }
@@ -0,0 +1,10 @@
1
+ import { TemplateReplacer } from "./template-replacer";
2
+ import { CommonWrapStylesExtractor } from "../../core";
3
+ import { commonStylesTemplateAlias } from "../../constants";
4
+ export class CommonEditableStyleProcessor extends TemplateReplacer {
5
+ execute(template, data) {
6
+ const _commonStyles = new CommonWrapStylesExtractor(data?.commonEditableBlockWrapStyles).extract();
7
+ return this.replace(template, { [commonStylesTemplateAlias]: _commonStyles || '' }, ['[{', '}]']);
8
+ }
9
+ }
10
+ //# sourceMappingURL=common-editable-style-processor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"common-editable-style-processor.js","sourceRoot":"","sources":["../../../src/cdk/transpiler/common-editable-style-processor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,gBAAgB,EAAC,MAAM,qBAAqB,CAAC;AAGrD,OAAO,EAAC,yBAAyB,EAAC,MAAM,YAAY,CAAC;AACrD,OAAO,EAAC,yBAAyB,EAAC,MAAM,iBAAiB,CAAC;AAE1D,MAAM,OAAO,4BAA6B,SAAQ,gBAAgB;IAChE,OAAO,CAAC,QAAgB,EAAE,IAAc;QACtC,MAAM,aAAa,GAAG,IAAI,yBAAyB,CAAC,IAAI,EAAE,6BAA6B,CAAC,CAAC,OAAO,EAAE,CAAC;QACnG,OAAO,IAAI,CAAC,OAAO,CACjB,QAAQ,EACR,EAAC,CAAC,yBAAyB,CAAC,EAAE,aAAa,IAAI,EAAE,EAAC,EAClD,CAAC,IAAI,EAAE,IAAI,CAAC,CACb,CAAC;IACJ,CAAC;CACF"}
@@ -0,0 +1,8 @@
1
+ import { TemplateReplacer } from "./template-replacer";
2
+ import { TemplateProcessor } from "./types";
3
+ import { Data, PageBody } from "../../types";
4
+ export declare class ExpressionsProcessor extends TemplateReplacer implements TemplateProcessor {
5
+ expressionProcessing(expression: string, data: Data): string;
6
+ replace(template: string, data: Data, delimiters: Array<string>): string;
7
+ execute(template: string, data: PageBody): string;
8
+ }
@@ -0,0 +1,27 @@
1
+ import { TemplateReplacer } from "./template-replacer";
2
+ export class ExpressionsProcessor extends TemplateReplacer {
3
+ expressionProcessing(expression = '', data) {
4
+ const [prop, value, result, bypass] = expression.split(':');
5
+ return (data[prop] === value)
6
+ ? result
7
+ : (bypass === 'EMPTY' ? '' : bypass);
8
+ }
9
+ replace(template, data, delimiters) {
10
+ //@ts-ignore
11
+ const reg = this.getRegExp(delimiters);
12
+ //@ts-ignore
13
+ return template?.replace(reg, (m) => {
14
+ //@ts-ignore
15
+ const expression = this.removeDelimiters(m);
16
+ if (!expression) {
17
+ return '';
18
+ }
19
+ //@ts-ignore
20
+ return this.expressionProcessing(expression, data || {});
21
+ });
22
+ }
23
+ execute(template, data) {
24
+ return this.replace(template, data?.data || {}, ['[(', ')]']);
25
+ }
26
+ }
27
+ //# sourceMappingURL=expression-processor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"expression-processor.js","sourceRoot":"","sources":["../../../src/cdk/transpiler/expression-processor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,gBAAgB,EAAC,MAAM,qBAAqB,CAAC;AAIrD,MAAM,OAAO,oBAAqB,SAAQ,gBAAgB;IAExD,oBAAoB,CAAC,aAAqB,EAAE,EAAE,IAAU;QACtD,MAAM,CAAC,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,GAAG,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAC5D,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,KAAK,CAAC;YAC3B,CAAC,CAAC,MAAM;YACR,CAAC,CAAC,CAAC,MAAM,KAAK,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;IACzC,CAAC;IACD,OAAO,CAAC,QAAgB,EAAE,IAAU,EAAG,UAAyB;QAC9D,YAAY;QACZ,MAAM,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;QACvC,YAAY;QACZ,OAAO,QAAQ,EAAE,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,EAAE;YAClC,YAAY;YACZ,MAAM,UAAU,GAAG,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC;YAE5C,IAAG,CAAC,UAAU,EAAE,CAAC;gBACf,OAAO,EAAE,CAAC;YACZ,CAAC;YACD,YAAY;YACZ,OAAO,IAAI,CAAC,oBAAoB,CAAC,UAAU,EAAE,IAAI,IAAI,EAAE,CAAC,CAAC;QAC3D,CAAC,CAAC,CAAA;IACJ,CAAC;IAED,OAAO,CAAC,QAAgB,EAAE,IAAc;QACtC,OAAO,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,IAAI,EAAE,IAAI,IAAI,EAAE,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC;IAChE,CAAC;CACF"}
@@ -0,0 +1,6 @@
1
+ export * from './block-data-processor';
2
+ export * from './chunks-processor';
3
+ export * from './expression-processor';
4
+ export * from './template-replacer';
5
+ export * from './common-editable-style-processor';
6
+ export * from './types';
@@ -0,0 +1,7 @@
1
+ export * from './block-data-processor';
2
+ export * from './chunks-processor';
3
+ export * from './expression-processor';
4
+ export * from './template-replacer';
5
+ export * from './common-editable-style-processor';
6
+ export * from './types';
7
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/cdk/transpiler/index.ts"],"names":[],"mappings":"AAAA,cAAc,wBAAwB,CAAC;AACvC,cAAc,oBAAoB,CAAC;AACnC,cAAc,wBAAwB,CAAC;AACvC,cAAc,qBAAqB,CAAC;AACpC,cAAc,mCAAmC,CAAC;AAClD,cAAc,SAAS,CAAC"}
@@ -0,0 +1,7 @@
1
+ import { Data } from "../../types";
2
+ export declare class TemplateReplacer {
3
+ escapeDelimiters(delimiters: Array<string>): string[];
4
+ getRegExp(delimiters?: string[]): RegExp;
5
+ removeDelimiters(value: string): string;
6
+ replace(template: string | null | undefined, data: Data, delimiters?: string[]): string;
7
+ }
@@ -0,0 +1,27 @@
1
+ export class TemplateReplacer {
2
+ escapeDelimiters(delimiters) {
3
+ return delimiters.map(x => {
4
+ return x.split('').map(y => `\\${y}`).join('');
5
+ });
6
+ }
7
+ getRegExp(delimiters = ['{{', '}}']) {
8
+ const _delimiters = this.escapeDelimiters(delimiters);
9
+ //@ts-ignore
10
+ return new RegExp(`${_delimiters[0]}[\\s]*.*?[\\s]*${_delimiters[1]}`, 'gi');
11
+ }
12
+ removeDelimiters(value) {
13
+ return (value || '').trim().slice(2, -2);
14
+ }
15
+ replace(template, data, delimiters = ['{{', '}}']) {
16
+ //@ts-ignore
17
+ const reg = this.getRegExp(delimiters);
18
+ //@ts-ignore
19
+ return template?.replace(reg, (m) => {
20
+ //@ts-ignore
21
+ const key = this.removeDelimiters(m);
22
+ //@ts-ignore
23
+ return data[key] || "";
24
+ });
25
+ }
26
+ }
27
+ //# sourceMappingURL=template-replacer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"template-replacer.js","sourceRoot":"","sources":["../../../src/cdk/transpiler/template-replacer.ts"],"names":[],"mappings":"AAEA,MAAM,OAAO,gBAAgB;IAC3B,gBAAgB,CAAC,UAAyB;QACxC,OAAO,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE;YACxB,OAAO,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;QAChD,CAAC,CAAC,CAAC;IACL,CAAC;IACD,SAAS,CAAC,UAAU,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC;QACjC,MAAM,WAAW,GAAG,IAAI,CAAC,gBAAgB,CAAC,UAAU,CAAC,CAAC;QACtD,YAAY;QACZ,OAAO,IAAI,MAAM,CAAC,GAAG,WAAW,CAAC,CAAC,CAAC,kBAAkB,WAAW,CAAC,CAAC,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;IAC/E,CAAC;IACD,gBAAgB,CAAC,KAAa;QAC5B,OAAO,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IAC3C,CAAC;IAED,OAAO,CACL,QAAmC,EACnC,IAAU,EACV,UAAU,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC;QAEzB,YAAY;QACZ,MAAM,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;QACvC,YAAY;QACZ,OAAO,QAAQ,EAAE,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,EAAE;YAClC,YAAY;YACZ,MAAM,GAAG,GAAG,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC;YACrC,YAAY;YACZ,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC;QACzB,CAAC,CAAC,CAAA;IACJ,CAAC;CACF"}
@@ -0,0 +1,7 @@
1
+ import { Block, PageBody } from "../../types";
2
+ export interface TemplateProcessor {
3
+ execute(template: string, data: PageBody): string;
4
+ }
5
+ export interface BlockExisting {
6
+ block: Block | null;
7
+ }
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/cdk/transpiler/types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,31 @@
1
+ export declare const DEFINITION_TYPES: {
2
+ readonly String: "String";
3
+ readonly Color: "Color";
4
+ readonly Size: "Size";
5
+ readonly Email: "Email";
6
+ readonly Select: "Select";
7
+ readonly NavigationLink: "NavigationLink";
8
+ readonly ContentSrc: "ContentSrc";
9
+ readonly RedirectLink: "RedirectLink";
10
+ };
11
+ export declare const DATA_TYPES: {
12
+ DICT: string;
13
+ LIST: string;
14
+ };
15
+ export declare const FIELDS: {
16
+ readonly descriptionValue: "descriptionValue";
17
+ readonly imageAlt: "imageAlt";
18
+ readonly imageUrl: "imageUrl";
19
+ readonly imageWidth: "imageWidth";
20
+ readonly imageHeight: "imageHeight";
21
+ readonly nameValue: "nameValue";
22
+ readonly contentValue: "contentValue";
23
+ readonly navigationLink: "navigationLink";
24
+ readonly linkHref: "linkHref";
25
+ readonly linkTarget: "linkTarget";
26
+ readonly tagValue: "tagValue";
27
+ readonly backgroundUrl: "backgroundUrl";
28
+ readonly backgroundSize: "backgroundSize";
29
+ readonly backgroundColor: "backgroundColor";
30
+ };
31
+ export declare const commonStylesTemplateAlias = "c_s_t_a";
@@ -0,0 +1,32 @@
1
+ export const DEFINITION_TYPES = {
2
+ 'String': 'String',
3
+ "Color": "Color",
4
+ "Size": "Size",
5
+ "Email": "Email",
6
+ "Select": "Select",
7
+ "NavigationLink": "NavigationLink",
8
+ "ContentSrc": "ContentSrc",
9
+ "RedirectLink": "RedirectLink"
10
+ };
11
+ export const DATA_TYPES = {
12
+ DICT: "DICT",
13
+ LIST: "LIST"
14
+ };
15
+ export const FIELDS = {
16
+ 'descriptionValue': 'descriptionValue',
17
+ 'imageAlt': "imageAlt",
18
+ 'imageUrl': "imageUrl",
19
+ 'imageWidth': "imageWidth",
20
+ 'imageHeight': "imageHeight",
21
+ 'nameValue': "nameValue",
22
+ 'contentValue': "contentValue",
23
+ 'navigationLink': "navigationLink",
24
+ 'linkHref': 'linkHref',
25
+ 'linkTarget': "linkTarget",
26
+ 'tagValue': "tagValue",
27
+ 'backgroundUrl': "backgroundUrl",
28
+ 'backgroundSize': "backgroundSize",
29
+ 'backgroundColor': "backgroundColor"
30
+ };
31
+ export const commonStylesTemplateAlias = 'c_s_t_a';
32
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/constants/index.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,gBAAgB,GAAG;IAC9B,QAAQ,EAAE,QAAQ;IAClB,OAAO,EAAE,OAAO;IAChB,MAAM,EAAE,MAAM;IACd,OAAO,EAAE,OAAO;IAChB,QAAQ,EAAE,QAAQ;IAClB,gBAAgB,EAAE,gBAAgB;IAClC,YAAY,EAAE,YAAY;IAC1B,cAAc,EAAE,cAAc;CACtB,CAAC;AAEX,MAAM,CAAC,MAAM,UAAU,GAAG;IACxB,IAAI,EAAE,MAAM;IACZ,IAAI,EAAE,MAAM;CACb,CAAC;AAEF,MAAM,CAAC,MAAM,MAAM,GAAG;IACpB,kBAAkB,EAAE,kBAAkB;IACtC,UAAU,EAAE,UAAU;IACtB,UAAU,EAAE,UAAU;IACtB,YAAY,EAAE,YAAY;IAC1B,aAAa,EAAE,aAAa;IAC5B,WAAW,EAAE,WAAW;IAExB,cAAc,EAAE,cAAc;IAC9B,gBAAgB,EAAE,gBAAgB;IAClC,UAAU,EAAE,UAAU;IACtB,YAAY,EAAE,YAAY;IAE1B,UAAU,EAAE,UAAU;IAEtB,eAAe,EAAE,eAAe;IAChC,gBAAgB,EAAE,gBAAgB;IAClC,iBAAiB,EAAE,iBAAiB;CAC5B,CAAC;AAEX,MAAM,CAAC,MAAM,yBAAyB,GAAG,SAAS,CAAC"}
@@ -0,0 +1,25 @@
1
+ import { CommonEditableBlockWrapStyles } from "../types";
2
+ export declare class CommonWrapStylesExtractor {
3
+ private readonly styles;
4
+ constructor(styles: CommonEditableBlockWrapStyles | null | undefined);
5
+ extract(): string;
6
+ transformFromCamelToKebab(value?: string): string;
7
+ transformValueRelativeProperty(key: string, value: string): string;
8
+ extractBackgroundImageStyles(): {
9
+ backgroundImage: string;
10
+ backgroundSize: string;
11
+ backgroundPosition: string;
12
+ backgroundRepeat: string;
13
+ backgroundAttachment: string;
14
+ };
15
+ extractBackgroundColorStyles(): {
16
+ backgroundColor: string;
17
+ } | {
18
+ backgroundColor?: undefined;
19
+ };
20
+ extractAlwaysUsedStyles(): {
21
+ textAlign: string;
22
+ } | {
23
+ textAlign?: undefined;
24
+ };
25
+ }
@@ -0,0 +1,56 @@
1
+ export class CommonWrapStylesExtractor {
2
+ styles;
3
+ constructor(styles) {
4
+ this.styles = styles;
5
+ }
6
+ extract() {
7
+ if (!this.styles) {
8
+ return null;
9
+ }
10
+ const { backgroundImage, backgroundColor } = this.styles;
11
+ const outputBackground = backgroundImage
12
+ ? this.extractBackgroundImageStyles()
13
+ : backgroundColor
14
+ ? this.extractBackgroundColorStyles()
15
+ : {};
16
+ const entries = Object.entries({ ...outputBackground, ...this.extractAlwaysUsedStyles() });
17
+ const tk = entries.map(([key, value]) => {
18
+ return [this.transformFromCamelToKebab(key), this.transformValueRelativeProperty(key, value)];
19
+ });
20
+ return tk.length
21
+ ? tk.filter(([_, v]) => !!v)
22
+ .map(([k, v]) => `${k}:${v};`)
23
+ .join('')
24
+ : null;
25
+ }
26
+ transformFromCamelToKebab(value = '') {
27
+ return value
28
+ .split('')
29
+ .reduce((a, l) => a += (l.toUpperCase() === l) ? `-${l.toLowerCase()}` : l, '');
30
+ }
31
+ transformValueRelativeProperty(key, value) {
32
+ if (key === 'backgroundImage') {
33
+ return `url(${value})`;
34
+ }
35
+ return value;
36
+ }
37
+ extractBackgroundImageStyles() {
38
+ const { backgroundImage, backgroundSize, backgroundPosition, backgroundRepeat, backgroundAttachment } = this.styles;
39
+ return {
40
+ backgroundImage,
41
+ backgroundSize,
42
+ backgroundPosition,
43
+ backgroundRepeat,
44
+ backgroundAttachment
45
+ };
46
+ }
47
+ extractBackgroundColorStyles() {
48
+ const { backgroundColor } = this.styles;
49
+ return backgroundColor ? { backgroundColor } : {};
50
+ }
51
+ extractAlwaysUsedStyles() {
52
+ const { textAlign } = this.styles;
53
+ return textAlign ? { textAlign } : {};
54
+ }
55
+ }
56
+ //# sourceMappingURL=common-wrap-styles-extractor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"common-wrap-styles-extractor.js","sourceRoot":"","sources":["../../src/core/common-wrap-styles-extractor.ts"],"names":[],"mappings":"AAEA,MAAM,OAAO,yBAAyB;IAEP;IAA7B,YAA6B,MAAwD;QAAxD,WAAM,GAAN,MAAM,CAAkD;IAAG,CAAC;IAEzF,OAAO;QACL,IAAG,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;YAChB,OAAO,IAAI,CAAA;QACb,CAAC;QACD,MAAM,EAAC,eAAe,EAAE,eAAe,EAAC,GAAG,IAAI,CAAC,MAAM,CAAC;QACvD,MAAM,gBAAgB,GACpB,eAAe;YACb,CAAC,CAAC,IAAI,CAAC,4BAA4B,EAAE;YACrC,CAAC,CAAC,eAAe;gBACf,CAAC,CAAC,IAAI,CAAC,4BAA4B,EAAE;gBACrC,CAAC,CAAC,EAAE,CAAA;QACV,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,EAAC,GAAG,gBAAgB,EAAE,GAAG,IAAI,CAAC,uBAAuB,EAAE,EAAC,CAAC,CAAC;QACzF,MAAM,EAAE,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE;YACtC,OAAO,CAAC,IAAI,CAAC,yBAAyB,CAAC,GAAG,CAAC,EAAG,IAAI,CAAC,8BAA8B,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC,CAAA;QAChG,CAAC,CAAC,CAAC;QACH,OAAO,EAAE,CAAC,MAAM;YACd,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;iBACzB,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC;iBAC7B,IAAI,CAAC,EAAE,CAAC;YACX,CAAC,CAAC,IAAI,CAAC;IACX,CAAC;IAED,yBAAyB,CAAC,QAAgB,EAAE;QAC1C,OAAO,KAAK;aACT,KAAK,CAAC,EAAE,CAAC;aACT,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IACpF,CAAC;IAED,8BAA8B,CAAC,GAAW,EAAE,KAAa;QACvD,IAAG,GAAG,KAAK,iBAAiB,EAAE,CAAC;YAC7B,OAAO,OAAO,KAAK,GAAG,CAAA;QACxB,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAED,4BAA4B;QAC1B,MAAM,EACJ,eAAe,EACf,cAAc,EACd,kBAAkB,EAClB,gBAAgB,EAChB,oBAAoB,EACrB,GAAG,IAAI,CAAC,MAAM,CAAC;QAChB,OAAO;YACL,eAAe;YACf,cAAc;YACd,kBAAkB;YAClB,gBAAgB;YAChB,oBAAoB;SACrB,CAAA;IACH,CAAC;IAED,4BAA4B;QAC1B,MAAM,EAAC,eAAe,EAAC,GAAG,IAAI,CAAC,MAAM,CAAC;QACtC,OAAO,eAAe,CAAC,CAAC,CAAC,EAAC,eAAe,EAAC,CAAC,CAAC,CAAC,EAAE,CAAA;IACjD,CAAC;IAED,uBAAuB;QACrB,MAAM,EAAC,SAAS,EAAC,GAAG,IAAI,CAAC,MAAM,CAAC;QAChC,OAAO,SAAS,CAAC,CAAC,CAAC,EAAC,SAAS,EAAC,CAAC,CAAC,CAAC,EAAE,CAAA;IACrC,CAAC;CACF"}
@@ -0,0 +1,3 @@
1
+ export * from './transpiler';
2
+ export * from './object-seeder';
3
+ export * from './common-wrap-styles-extractor';
@@ -0,0 +1,4 @@
1
+ export * from './transpiler';
2
+ export * from './object-seeder';
3
+ export * from './common-wrap-styles-extractor';
4
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/core/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC;AAC7B,cAAc,iBAAiB,CAAC;AAChC,cAAc,gCAAgC,CAAC"}
@@ -0,0 +1,10 @@
1
+ export declare class ObjectSeeder<T> {
2
+ private readonly target;
3
+ private readonly tree;
4
+ constructor(target: any, tree: {
5
+ leafs: Array<string>;
6
+ value: unknown;
7
+ });
8
+ copy(): any;
9
+ seed(): any;
10
+ }
@@ -0,0 +1,41 @@
1
+ export class ObjectSeeder {
2
+ target;
3
+ tree;
4
+ constructor(target, tree) {
5
+ this.target = target;
6
+ this.tree = tree;
7
+ }
8
+ copy() {
9
+ const s = JSON.stringify(this.target);
10
+ return JSON.parse(s);
11
+ }
12
+ seed() {
13
+ const copy = this.copy();
14
+ let parent = copy;
15
+ const { leafs, value } = this.tree;
16
+ const leafsLen = leafs.length;
17
+ leafs.forEach((leaf, i) => {
18
+ const isLast = leafsLen - 1 === i;
19
+ const link = typeof parent[leaf] === 'object';
20
+ if (!link) {
21
+ if (isLast) {
22
+ parent[leaf] = value;
23
+ }
24
+ else {
25
+ parent[leaf] = {};
26
+ parent = parent[leaf];
27
+ }
28
+ }
29
+ else {
30
+ if (isLast) {
31
+ parent[leaf] = value;
32
+ }
33
+ else {
34
+ parent = parent[leaf];
35
+ }
36
+ }
37
+ });
38
+ return copy;
39
+ }
40
+ }
41
+ //# sourceMappingURL=object-seeder.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"object-seeder.js","sourceRoot":"","sources":["../../src/core/object-seeder.ts"],"names":[],"mappings":"AAAA,MAAM,OAAO,YAAY;IAEJ;IACA;IAFnB,YACmB,MAAW,EACX,IAA4C;QAD5C,WAAM,GAAN,MAAM,CAAK;QACX,SAAI,GAAJ,IAAI,CAAwC;IAE/D,CAAC;IAED,IAAI;QACF,MAAM,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACtC,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IACvB,CAAC;IAED,IAAI;QACF,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;QACzB,IAAI,MAAM,GAAG,IAAI,CAAC;QAClB,MAAM,EAAC,KAAK,EAAE,KAAK,EAAC,GAAG,IAAI,CAAC,IAAI,CAAC;QACjC,MAAM,QAAQ,GAAG,KAAK,CAAC,MAAM,CAAC;QAC9B,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE;YACxB,MAAM,MAAM,GAAG,QAAQ,GAAG,CAAC,KAAK,CAAC,CAAC;YAClC,MAAM,IAAI,GAAG,OAAO,MAAM,CAAC,IAAI,CAAC,KAAK,QAAQ,CAAC;YAC9C,IAAI,CAAC,IAAI,EAAE,CAAC;gBACV,IAAI,MAAM,EAAE,CAAC;oBACX,MAAM,CAAC,IAAI,CAAC,GAAG,KAAK,CAAA;gBACtB,CAAC;qBAAM,CAAC;oBACN,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC;oBAClB,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,CAAA;gBACvB,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,IAAI,MAAM,EAAE,CAAC;oBACX,MAAM,CAAC,IAAI,CAAC,GAAG,KAAK,CAAA;gBACtB,CAAC;qBAAK,CAAC;oBACL,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,CAAA;gBACvB,CAAC;YACH,CAAC;QACH,CAAC,CAAC,CAAC;QACH,OAAO,IAAI,CAAC;IACd,CAAC;CACF"}
@@ -0,0 +1,32 @@
1
+ import { Block, PossibleDataPayload, CreateBlockOutput, Data, BaseChunk, PageBody } from "../types";
2
+ import { Chunk } from "../types";
3
+ import { TemplateProcessor } from "../cdk/transpiler";
4
+ export declare class TT {
5
+ private readonly chain;
6
+ constructor(chain: Array<TemplateProcessor>);
7
+ execute(template: string, data: PageBody): string;
8
+ }
9
+ export declare class TTFactory {
10
+ private readonly block;
11
+ private readonly model;
12
+ constructor(block: Block, model: PageBody);
13
+ execute(): string | null;
14
+ }
15
+ export declare class TemplateTranspiler {
16
+ generate(block: Block | null, model: PageBody): CreateBlockOutput | null;
17
+ generateChunkData(chunks: {
18
+ [key: string]: Chunk;
19
+ } | undefined | null, model: PageBody): {
20
+ chunks: Array<{
21
+ name: string;
22
+ markup: string;
23
+ }>;
24
+ styles: string;
25
+ };
26
+ extractStyles(chunk: BaseChunk | undefined | null): string;
27
+ replaceData(template: string, data: Data, delimiters?: string[]): string;
28
+ replaceTemplateData(template: string, data: Data): string;
29
+ replaceChunksData(template: string, data: Data): string;
30
+ replaceCommonEditableBlockWrapStyles(template: string, data: Data): string;
31
+ createChunkMarkup(template: string, data: PossibleDataPayload): string;
32
+ }
@@ -0,0 +1,109 @@
1
+ import { commonStylesTemplateAlias, DATA_TYPES } from "../constants";
2
+ import { CommonWrapStylesExtractor } from "./common-wrap-styles-extractor";
3
+ import { BlockDataProcessor, ChunkProcessor, CommonEditableStyleProcessor, ExpressionsProcessor } from "../cdk/transpiler";
4
+ export class TT {
5
+ chain;
6
+ constructor(chain) {
7
+ this.chain = chain;
8
+ }
9
+ execute(template, data) {
10
+ return this.chain.reduce((_template, processor) => {
11
+ return processor.execute(_template, data);
12
+ }, template);
13
+ }
14
+ }
15
+ export class TTFactory {
16
+ block;
17
+ model;
18
+ constructor(block, model) {
19
+ this.block = block;
20
+ this.model = model;
21
+ }
22
+ execute() {
23
+ if (!this.block || !this.block?.template?.markup) {
24
+ console.error(`Block template ${this.block?.id} not found`);
25
+ return null;
26
+ }
27
+ return new TT([
28
+ new ExpressionsProcessor(),
29
+ new BlockDataProcessor(),
30
+ new ChunkProcessor(this.block),
31
+ new CommonEditableStyleProcessor()
32
+ ]).execute(this.block?.template?.markup || '', this.model);
33
+ }
34
+ }
35
+ export class TemplateTranspiler {
36
+ generate(block, model) {
37
+ if (!block || !block?.template?.markup) {
38
+ console.error(`Block template ${block?.id} not found`);
39
+ return null;
40
+ }
41
+ let styles = (block.styles || '');
42
+ const blockMarkup = (block.template?.markup || '');
43
+ const _commonStyles = new CommonWrapStylesExtractor(model?.commonEditableBlockWrapStyles).extract();
44
+ const afterCommonStylesSeed = this.replaceCommonEditableBlockWrapStyles(blockMarkup, { [commonStylesTemplateAlias]: _commonStyles || '' });
45
+ const _block = this.replaceTemplateData(afterCommonStylesSeed, model?.data || {});
46
+ const _chunks = this.generateChunkData(block?.chunks, model);
47
+ //@ts-ignore
48
+ const _processingChunks = _chunks.chunks.reduce((acc, { name, markup }) => {
49
+ acc[name] = markup;
50
+ return acc;
51
+ }, {});
52
+ //@ts-ignore
53
+ const _styles = `${styles} ${_chunks.styles}`.trim();
54
+ return {
55
+ markup: this.replaceChunksData(_block, _processingChunks),
56
+ styles: _styles
57
+ };
58
+ }
59
+ generateChunkData(chunks, model) {
60
+ if (!chunks) {
61
+ return { chunks: [], styles: '' };
62
+ }
63
+ //@ts-ignore
64
+ const chunksMap = Object.entries(chunks);
65
+ return chunksMap.reduce((acc, [chunkName, payload]) => {
66
+ const dataType = payload?.data?.type;
67
+ const emptyData = dataType === DATA_TYPES.DICT ? {} : [];
68
+ const modelChunkData = model?.chunks?.[chunkName]?.data ?? emptyData;
69
+ const template = payload?.template?.markup || '';
70
+ const styles = payload?.styles || '';
71
+ const markup = this.createChunkMarkup(template, modelChunkData);
72
+ const modelStyles = this.extractStyles(model?.chunks?.[chunkName]);
73
+ acc['styles'] += (styles + modelStyles);
74
+ acc['chunks'].push({ name: chunkName, markup: markup });
75
+ return acc;
76
+ }, { chunks: [], styles: '' });
77
+ }
78
+ extractStyles(chunk) {
79
+ return chunk?.styles || '';
80
+ }
81
+ replaceData(template, data, delimiters = ['{{', '}}']) {
82
+ //@ts-ignore
83
+ const reg = new RegExp(`${delimiters[0]}[\\s]*\\w+[\\s]*${delimiters[1]}`, 'gi');
84
+ //@ts-ignore
85
+ return template.replace(reg, (m) => {
86
+ //@ts-ignore
87
+ const key = (m || '').trim().slice(2, -2);
88
+ return data[key] || "";
89
+ });
90
+ }
91
+ replaceTemplateData(template, data) {
92
+ return this.replaceData(template, data);
93
+ }
94
+ replaceChunksData(template, data) {
95
+ return this.replaceData(template, data, ['[[', ']]']);
96
+ }
97
+ replaceCommonEditableBlockWrapStyles(template, data) {
98
+ return this.replaceData(template, data, ['[{', '}]']);
99
+ }
100
+ createChunkMarkup(template, data) {
101
+ //@ts-ignore
102
+ return Array.isArray(data)
103
+ ? data.map((item) => {
104
+ return this.replaceTemplateData(template, item);
105
+ }).join('')
106
+ : this.replaceTemplateData(template, data);
107
+ }
108
+ }
109
+ //# sourceMappingURL=transpiler.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"transpiler.js","sourceRoot":"","sources":["../../src/core/transpiler.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ export * from './core';
2
+ export * from './types';
3
+ export * from './constants';
package/dist/index.js ADDED
@@ -0,0 +1,4 @@
1
+ export * from './core';
2
+ export * from './types';
3
+ export * from './constants';
4
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,QAAQ,CAAC;AACvB,cAAc,SAAS,CAAC;AACxB,cAAc,aAAa,CAAC"}