@baseplate-dev/core-generators 0.2.1 → 0.2.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/generators/docker/docker-compose/docker-compose.generator.d.ts +1 -0
- package/dist/generators/docker/docker-compose/docker-compose.generator.d.ts.map +1 -1
- package/dist/generators/docker/docker-compose/docker-compose.generator.js +31 -1
- package/dist/generators/docker/docker-compose/docker-compose.generator.js.map +1 -1
- package/dist/generators/docker/docker-compose/postgres.d.ts +2 -0
- package/dist/generators/docker/docker-compose/postgres.d.ts.map +1 -1
- package/dist/generators/docker/docker-compose/postgres.js +17 -4
- package/dist/generators/docker/docker-compose/postgres.js.map +1 -1
- package/dist/generators/docker/docker-compose/redis.d.ts +3 -2
- package/dist/generators/docker/docker-compose/redis.d.ts.map +1 -1
- package/dist/generators/docker/docker-compose/redis.js +15 -4
- package/dist/generators/docker/docker-compose/redis.js.map +1 -1
- package/dist/generators/docker/docker-compose/types.d.ts +1 -0
- package/dist/generators/docker/docker-compose/types.d.ts.map +1 -1
- package/dist/generators/node/eslint/generated/index.d.ts +9 -0
- package/dist/generators/node/eslint/generated/index.d.ts.map +1 -1
- package/dist/generators/node/eslint/generated/index.js +2 -0
- package/dist/generators/node/eslint/generated/index.js.map +1 -1
- package/dist/generators/node/eslint/generated/template-renderers.d.ts +18 -0
- package/dist/generators/node/eslint/generated/template-renderers.d.ts.map +1 -0
- package/dist/generators/node/eslint/generated/template-renderers.js +32 -0
- package/dist/generators/node/eslint/generated/template-renderers.js.map +1 -0
- package/dist/generators/node/eslint/react-rules.d.ts.map +1 -1
- package/dist/generators/node/eslint/react-rules.js +8 -2
- package/dist/generators/node/eslint/react-rules.js.map +1 -1
- package/dist/generators/node/ts-utils/generated/index.d.ts +9 -0
- package/dist/generators/node/ts-utils/generated/index.d.ts.map +1 -1
- package/dist/generators/node/ts-utils/generated/index.js +2 -0
- package/dist/generators/node/ts-utils/generated/index.js.map +1 -1
- package/dist/generators/node/ts-utils/generated/template-renderers.d.ts +27 -0
- package/dist/generators/node/ts-utils/generated/template-renderers.d.ts.map +1 -0
- package/dist/generators/node/ts-utils/generated/template-renderers.js +53 -0
- package/dist/generators/node/ts-utils/generated/template-renderers.js.map +1 -0
- package/dist/generators/node/vitest/generated/index.d.ts +9 -0
- package/dist/generators/node/vitest/generated/index.d.ts.map +1 -1
- package/dist/generators/node/vitest/generated/index.js +2 -0
- package/dist/generators/node/vitest/generated/index.js.map +1 -1
- package/dist/generators/node/vitest/generated/template-renderers.d.ts +21 -0
- package/dist/generators/node/vitest/generated/template-renderers.d.ts.map +1 -0
- package/dist/generators/node/vitest/generated/template-renderers.js +39 -0
- package/dist/generators/node/vitest/generated/template-renderers.js.map +1 -0
- package/dist/renderers/extractor/plugins/index.d.ts +1 -0
- package/dist/renderers/extractor/plugins/index.d.ts.map +1 -1
- package/dist/renderers/extractor/plugins/index.js +1 -0
- package/dist/renderers/extractor/plugins/index.js.map +1 -1
- package/dist/renderers/extractor/plugins/template-paths/paths-file.d.ts.map +1 -1
- package/dist/renderers/extractor/plugins/template-paths/paths-file.js +3 -4
- package/dist/renderers/extractor/plugins/template-paths/paths-file.js.map +1 -1
- package/dist/renderers/extractor/plugins/template-paths/template-paths.plugin.d.ts.map +1 -1
- package/dist/renderers/extractor/plugins/template-paths/template-paths.plugin.js +6 -1
- package/dist/renderers/extractor/plugins/template-paths/template-paths.plugin.js.map +1 -1
- package/dist/renderers/extractor/plugins/template-renderers/index.d.ts +3 -0
- package/dist/renderers/extractor/plugins/template-renderers/index.d.ts.map +1 -0
- package/dist/renderers/extractor/plugins/template-renderers/index.js +3 -0
- package/dist/renderers/extractor/plugins/template-renderers/index.js.map +1 -0
- package/dist/renderers/extractor/plugins/template-renderers/renderers-file.d.ts +7 -0
- package/dist/renderers/extractor/plugins/template-renderers/renderers-file.d.ts.map +1 -0
- package/dist/renderers/extractor/plugins/template-renderers/renderers-file.js +124 -0
- package/dist/renderers/extractor/plugins/template-renderers/renderers-file.js.map +1 -0
- package/dist/renderers/extractor/plugins/template-renderers/template-renderers.plugin.d.ts +12 -0
- package/dist/renderers/extractor/plugins/template-renderers/template-renderers.plugin.d.ts.map +1 -0
- package/dist/renderers/extractor/plugins/template-renderers/template-renderers.plugin.js +47 -0
- package/dist/renderers/extractor/plugins/template-renderers/template-renderers.plugin.js.map +1 -0
- package/dist/renderers/extractor/plugins/template-renderers/types.d.ts +45 -0
- package/dist/renderers/extractor/plugins/template-renderers/types.d.ts.map +1 -0
- package/dist/renderers/extractor/plugins/template-renderers/types.js +2 -0
- package/dist/renderers/extractor/plugins/template-renderers/types.js.map +1 -0
- package/dist/renderers/extractor/plugins/typed-templates-file.d.ts +2 -0
- package/dist/renderers/extractor/plugins/typed-templates-file.d.ts.map +1 -1
- package/dist/renderers/extractor/plugins/typed-templates-file.js +8 -5
- package/dist/renderers/extractor/plugins/typed-templates-file.js.map +1 -1
- package/dist/renderers/extractor/utils/deduplicate-templates.d.ts.map +1 -1
- package/dist/renderers/extractor/utils/deduplicate-templates.js +5 -4
- package/dist/renderers/extractor/utils/deduplicate-templates.js.map +1 -1
- package/dist/renderers/raw/index.d.ts +1 -0
- package/dist/renderers/raw/index.d.ts.map +1 -1
- package/dist/renderers/raw/index.js +1 -0
- package/dist/renderers/raw/index.js.map +1 -1
- package/dist/renderers/raw/raw-template-file-extractor.d.ts +10 -57
- package/dist/renderers/raw/raw-template-file-extractor.d.ts.map +1 -1
- package/dist/renderers/raw/raw-template-file-extractor.js +34 -18
- package/dist/renderers/raw/raw-template-file-extractor.js.map +1 -1
- package/dist/renderers/raw/render-raw-template-action.d.ts +2 -2
- package/dist/renderers/raw/render-raw-template-action.d.ts.map +1 -1
- package/dist/renderers/raw/render-raw-template-action.js +5 -10
- package/dist/renderers/raw/render-raw-template-action.js.map +1 -1
- package/dist/renderers/raw/render-raw-template-renderers.d.ts +10 -0
- package/dist/renderers/raw/render-raw-template-renderers.d.ts.map +1 -0
- package/dist/renderers/raw/render-raw-template-renderers.js +51 -0
- package/dist/renderers/raw/render-raw-template-renderers.js.map +1 -0
- package/dist/renderers/raw/types.d.ts +5 -67
- package/dist/renderers/raw/types.d.ts.map +1 -1
- package/dist/renderers/raw/types.js +2 -12
- package/dist/renderers/raw/types.js.map +1 -1
- package/dist/renderers/text/index.d.ts +1 -0
- package/dist/renderers/text/index.d.ts.map +1 -1
- package/dist/renderers/text/index.js +1 -0
- package/dist/renderers/text/index.js.map +1 -1
- package/dist/renderers/text/render-text-template-file-action.d.ts +1 -1
- package/dist/renderers/text/render-text-template-file-action.d.ts.map +1 -1
- package/dist/renderers/text/render-text-template-file-action.js +10 -19
- package/dist/renderers/text/render-text-template-file-action.js.map +1 -1
- package/dist/renderers/text/render-text-template-group-action.d.ts +1 -1
- package/dist/renderers/text/render-text-template-group-action.d.ts.map +1 -1
- package/dist/renderers/text/render-text-template-renderers.d.ts +10 -0
- package/dist/renderers/text/render-text-template-renderers.d.ts.map +1 -0
- package/dist/renderers/text/render-text-template-renderers.js +79 -0
- package/dist/renderers/text/render-text-template-renderers.js.map +1 -0
- package/dist/renderers/text/render-text-typed-templates.js +6 -6
- package/dist/renderers/text/render-text-typed-templates.js.map +1 -1
- package/dist/renderers/text/text-template-file-extractor.d.ts +14 -82
- package/dist/renderers/text/text-template-file-extractor.d.ts.map +1 -1
- package/dist/renderers/text/text-template-file-extractor.js +37 -22
- package/dist/renderers/text/text-template-file-extractor.js.map +1 -1
- package/dist/renderers/text/types.d.ts +12 -97
- package/dist/renderers/text/types.d.ts.map +1 -1
- package/dist/renderers/text/types.js +4 -21
- package/dist/renderers/text/types.js.map +1 -1
- package/dist/renderers/text/utils.d.ts +1 -2
- package/dist/renderers/text/utils.d.ts.map +1 -1
- package/dist/renderers/text/utils.js +2 -7
- package/dist/renderers/text/utils.js.map +1 -1
- package/dist/renderers/typescript/actions/render-ts-template-file-action.d.ts.map +1 -1
- package/dist/renderers/typescript/actions/render-ts-template-file-action.js +9 -13
- package/dist/renderers/typescript/actions/render-ts-template-file-action.js.map +1 -1
- package/dist/renderers/typescript/extractor/build-ts-project-export-map.d.ts +3 -1
- package/dist/renderers/typescript/extractor/build-ts-project-export-map.d.ts.map +1 -1
- package/dist/renderers/typescript/extractor/build-ts-project-export-map.js +14 -6
- package/dist/renderers/typescript/extractor/build-ts-project-export-map.js.map +1 -1
- package/dist/renderers/typescript/extractor/organize-ts-template-imports.js +1 -1
- package/dist/renderers/typescript/extractor/organize-ts-template-imports.js.map +1 -1
- package/dist/renderers/typescript/extractor/render-ts-import-providers.d.ts +2 -2
- package/dist/renderers/typescript/extractor/render-ts-import-providers.d.ts.map +1 -1
- package/dist/renderers/typescript/extractor/render-ts-import-providers.js +1 -1
- package/dist/renderers/typescript/extractor/render-ts-import-providers.js.map +1 -1
- package/dist/renderers/typescript/extractor/render-ts-template-renderers.d.ts +10 -0
- package/dist/renderers/typescript/extractor/render-ts-template-renderers.d.ts.map +1 -0
- package/dist/renderers/typescript/extractor/render-ts-template-renderers.js +107 -0
- package/dist/renderers/typescript/extractor/render-ts-template-renderers.js.map +1 -0
- package/dist/renderers/typescript/extractor/render-ts-typed-templates.d.ts +2 -2
- package/dist/renderers/typescript/extractor/render-ts-typed-templates.d.ts.map +1 -1
- package/dist/renderers/typescript/extractor/render-ts-typed-templates.js +12 -8
- package/dist/renderers/typescript/extractor/render-ts-typed-templates.js.map +1 -1
- package/dist/renderers/typescript/extractor/ts-template-file-extractor.d.ts +83 -153
- package/dist/renderers/typescript/extractor/ts-template-file-extractor.d.ts.map +1 -1
- package/dist/renderers/typescript/extractor/ts-template-file-extractor.js +58 -18
- package/dist/renderers/typescript/extractor/ts-template-file-extractor.js.map +1 -1
- package/dist/renderers/typescript/templates/types.d.ts +9 -104
- package/dist/renderers/typescript/templates/types.d.ts.map +1 -1
- package/dist/renderers/typescript/templates/types.js +1 -24
- package/dist/renderers/typescript/templates/types.js.map +1 -1
- package/package.json +4 -4
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import { createGeneratorTask, createProviderType } from '@baseplate-dev/sync';
|
|
2
|
+
import { typescriptFileProvider } from '#src/generators/node/typescript/typescript.generator.js';
|
|
3
|
+
import { NODE_VITEST_PATHS } from './template-paths.js';
|
|
4
|
+
import { NODE_VITEST_TEMPLATES } from './typed-templates.js';
|
|
5
|
+
const nodeVitestRenderers = createProviderType('node-vitest-renderers');
|
|
6
|
+
const nodeVitestRenderersTask = createGeneratorTask({
|
|
7
|
+
dependencies: {
|
|
8
|
+
paths: NODE_VITEST_PATHS.provider,
|
|
9
|
+
typescriptFile: typescriptFileProvider,
|
|
10
|
+
},
|
|
11
|
+
exports: { nodeVitestRenderers: nodeVitestRenderers.export() },
|
|
12
|
+
run({ paths, typescriptFile }) {
|
|
13
|
+
return {
|
|
14
|
+
providers: {
|
|
15
|
+
nodeVitestRenderers: {
|
|
16
|
+
globalSetup: {
|
|
17
|
+
render: (options) => typescriptFile.renderTemplateFile({
|
|
18
|
+
template: NODE_VITEST_TEMPLATES.globalSetup,
|
|
19
|
+
destination: paths.globalSetup,
|
|
20
|
+
...options,
|
|
21
|
+
}),
|
|
22
|
+
},
|
|
23
|
+
vitestConfig: {
|
|
24
|
+
render: (options) => typescriptFile.renderTemplateFile({
|
|
25
|
+
template: NODE_VITEST_TEMPLATES.vitestConfig,
|
|
26
|
+
destination: paths.vitestConfig,
|
|
27
|
+
...options,
|
|
28
|
+
}),
|
|
29
|
+
},
|
|
30
|
+
},
|
|
31
|
+
},
|
|
32
|
+
};
|
|
33
|
+
},
|
|
34
|
+
});
|
|
35
|
+
export const NODE_VITEST_RENDERERS = {
|
|
36
|
+
provider: nodeVitestRenderers,
|
|
37
|
+
task: nodeVitestRenderersTask,
|
|
38
|
+
};
|
|
39
|
+
//# sourceMappingURL=template-renderers.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"template-renderers.js","sourceRoot":"","sources":["../../../../../src/generators/node/vitest/generated/template-renderers.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAI9E,OAAO,EAAE,sBAAsB,EAAE,MAAM,yDAAyD,CAAC;AAEjG,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAyB7D,MAAM,mBAAmB,GAAG,kBAAkB,CAC5C,uBAAuB,CACxB,CAAC;AAEF,MAAM,uBAAuB,GAAG,mBAAmB,CAAC;IAClD,YAAY,EAAE;QACZ,KAAK,EAAE,iBAAiB,CAAC,QAAQ;QACjC,cAAc,EAAE,sBAAsB;KACvC;IACD,OAAO,EAAE,EAAE,mBAAmB,EAAE,mBAAmB,CAAC,MAAM,EAAE,EAAE;IAC9D,GAAG,CAAC,EAAE,KAAK,EAAE,cAAc,EAAE;QAC3B,OAAO;YACL,SAAS,EAAE;gBACT,mBAAmB,EAAE;oBACnB,WAAW,EAAE;wBACX,MAAM,EAAE,CAAC,OAAO,EAAE,EAAE,CAClB,cAAc,CAAC,kBAAkB,CAAC;4BAChC,QAAQ,EAAE,qBAAqB,CAAC,WAAW;4BAC3C,WAAW,EAAE,KAAK,CAAC,WAAW;4BAC9B,GAAG,OAAO;yBACX,CAAC;qBACL;oBACD,YAAY,EAAE;wBACZ,MAAM,EAAE,CAAC,OAAO,EAAE,EAAE,CAClB,cAAc,CAAC,kBAAkB,CAAC;4BAChC,QAAQ,EAAE,qBAAqB,CAAC,YAAY;4BAC5C,WAAW,EAAE,KAAK,CAAC,YAAY;4BAC/B,GAAG,OAAO;yBACX,CAAC;qBACL;iBACF;aACF;SACF,CAAC;IACJ,CAAC;CACF,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,qBAAqB,GAAG;IACnC,QAAQ,EAAE,mBAAmB;IAC7B,IAAI,EAAE,uBAAuB;CAC9B,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/renderers/extractor/plugins/index.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAC;AACnC,OAAO,EACL,4BAA4B,EAC5B,mBAAmB,GACpB,MAAM,2BAA2B,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/renderers/extractor/plugins/index.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAC;AACnC,OAAO,EACL,4BAA4B,EAC5B,mBAAmB,GACpB,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,uBAAuB,EAAE,MAAM,+BAA+B,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/renderers/extractor/plugins/index.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAC;AACnC,OAAO,EACL,4BAA4B,EAC5B,mBAAmB,GACpB,MAAM,2BAA2B,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/renderers/extractor/plugins/index.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAC;AACnC,OAAO,EACL,4BAA4B,EAC5B,mBAAmB,GACpB,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,uBAAuB,EAAE,MAAM,+BAA+B,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"paths-file.d.ts","sourceRoot":"","sources":["../../../../../src/renderers/extractor/plugins/template-paths/paths-file.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,qBAAqB,CAAC;AAwBpE,eAAO,MAAM,yBAAyB,sBAAsB,CAAC;AA6C7D,UAAU,oBAAoB;IAC5B,aAAa,EAAE,MAAM,CAAC;IACtB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,QAAQ,EAAE,MAAM,CAAC;IACjB,cAAc,EAAE,MAAM,CAAC;CACxB;AAED,wBAAgB,uBAAuB,CACrC,aAAa,EAAE,MAAM,GACpB,oBAAoB,CAOtB;
|
|
1
|
+
{"version":3,"file":"paths-file.d.ts","sourceRoot":"","sources":["../../../../../src/renderers/extractor/plugins/template-paths/paths-file.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,qBAAqB,CAAC;AAwBpE,eAAO,MAAM,yBAAyB,sBAAsB,CAAC;AA6C7D,UAAU,oBAAoB;IAC5B,aAAa,EAAE,MAAM,CAAC;IACtB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,QAAQ,EAAE,MAAM,CAAC;IACjB,cAAc,EAAE,MAAM,CAAC;CACxB;AAED,wBAAgB,uBAAuB,CACrC,aAAa,EAAE,MAAM,GACpB,oBAAoB,CAOtB;AA2HD,wBAAsB,gBAAgB,CACpC,aAAa,EAAE,MAAM,EACrB,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,EAC5B,OAAO,EAAE,wBAAwB,EACjC,OAAO,GAAE;IAAE,kBAAkB,CAAC,EAAE,OAAO,CAAA;CAAO,GAC7C,OAAO,CAAC;IAAE,UAAU,EAAE,MAAM,CAAA;CAAE,CAAC,CAiDjC"}
|
|
@@ -75,7 +75,8 @@ function createPathsTask(generatorName, pathMap, context, { providerExportName }
|
|
|
75
75
|
variableName: camelCase(root.name),
|
|
76
76
|
methodName: root.method,
|
|
77
77
|
})),
|
|
78
|
-
}))
|
|
78
|
+
}))
|
|
79
|
+
.toSorted((a, b) => a.providerName.localeCompare(b.providerName));
|
|
79
80
|
const dependencies = TsCodeUtils.mergeFragmentsAsObject(Object.fromEntries(pathProviders.map((p) => [
|
|
80
81
|
p.providerVariableName,
|
|
81
82
|
TsCodeUtils.importFragment(p.providerName, resolvePackagePathSpecifier(p.providerPathSpecifier, extractorConfig.packageName)),
|
|
@@ -129,9 +130,7 @@ export async function writePathMapFile(generatorName, pathMap, context, options
|
|
|
129
130
|
templateContents: GENERATED_PATHS_TEMPLATE,
|
|
130
131
|
variables: {
|
|
131
132
|
TPL_PATHS_TYPE_NAME: interfaceName,
|
|
132
|
-
TPL_PATHS_CONTENTS: [...pathMap]
|
|
133
|
-
.map(([templateName]) => `'${templateName}': string`)
|
|
134
|
-
.join(',\n'),
|
|
133
|
+
TPL_PATHS_CONTENTS: TsCodeUtils.mergeFragmentsAsInterfaceContent(new Map([...pathMap].map(([templateName]) => [templateName, 'string']))),
|
|
135
134
|
TPL_PATHS_PROVIDER_EXPORT: providerExportName,
|
|
136
135
|
TPL_PATHS_PROVIDER_NAME: getGeneratedTemplateProviderName(generatorName, 'paths'),
|
|
137
136
|
TPL_PATHS_TASK_DECLARATION: taskFragment
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"paths-file.js","sourceRoot":"","sources":["../../../../../src/renderers/extractor/plugins/template-paths/paths-file.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,sCAAsC,EAAE,MAAM,qBAAqB,CAAC;AAC7E,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AACtD,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,OAAO,EACL,gCAAgC,EAChC,8BAA8B,EAC9B,iCAAiC,EACjC,gCAAgC,EAChC,2BAA2B,GAC5B,MAAM,yCAAyC,CAAC;AACjD,OAAO,EAAE,eAAe,EAAE,MAAM,4CAA4C,CAAC;AAC7E,OAAO,EAAE,wBAAwB,EAAE,MAAM,8CAA8C,CAAC;AACxF,OAAO,EACL,WAAW,EACX,UAAU,GACX,MAAM,0CAA0C,CAAC;AAElD,MAAM,CAAC,MAAM,yBAAyB,GAAG,mBAAmB,CAAC;AAE7D,MAAM,yBAAyB,GAAG,SAAS,CACzC,sCAAsC,EACtC,yBAAyB,CAC1B,CAAC;AAEF,MAAM,wBAAwB,GAAG;;;;;;;;;;;;;;;CAehC,CAAC;AAEF,MAAM,eAAe,GAAG,YAAY,CAAC;AAErC,MAAM,wBAAwB,GAAG,CAAC,CAAC,MAAM,CAAC;IACxC,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC;IACvB;;OAEG;IACH,SAAS,EAAE,CAAC,CAAC,KAAK,CAChB,CAAC,CAAC,MAAM,CAAC;QACP;;WAEG;QACH,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;QACvB;;WAEG;QACH,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;KAC1B,CAAC,CACH;CACF,CAAC,CAAC;AASH,MAAM,UAAU,uBAAuB,CACrC,aAAqB;IAErB,OAAO;QACL,aAAa,EAAE,iCAAiC,CAAC,aAAa,EAAE,OAAO,CAAC;QACxE,kBAAkB,EAAE,8BAA8B,CAAC,aAAa,EAAE,OAAO,CAAC;QAC1E,QAAQ,EAAE,8BAA8B,CAAC,aAAa,EAAE,YAAY,CAAC;QACrE,cAAc,EAAE,gCAAgC,CAAC,aAAa,EAAE,OAAO,CAAC;KACzE,CAAC;AACJ,CAAC;AAED,SAAS,eAAe,CACtB,aAAqB,EACrB,OAA4B,EAC5B,OAAiC,EACjC,EAAE,kBAAkB,EAAwB;IAE5C,MAAM,eAAe,GACnB,OAAO,CAAC,YAAY,CAAC,yBAAyB,CAAC,aAAa,CAAC,CAAC;IAChE,MAAM,gBAAgB,GAAG,OAAO,CAAC,YAAY,CAAC,wBAAwB,CACpE,MAAM,EACN,wBAAwB,CACzB,CAAC;IAEF,MAAM,aAAa,GAAG,IAAI,GAAG,EAAU,CAAC;IAExC,KAAK,MAAM,CAAC,EAAE,oBAAoB,CAAC,IAAI,OAAO,EAAE,CAAC;QAC/C,mEAAmE;QACnE,MAAM,eAAe,GAAG,eAAe,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;QACnE,IAAI,CAAC,eAAe,EAAE,CAAC;YACrB,MAAM,IAAI,KAAK,CACb,2BAA2B,oBAAoB,+BAA+B,CAC/E,CAAC;QACJ,CAAC;QACD,aAAa,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,CAAC;IACxC,CAAC;IAED,MAAM,aAAa,GAAG,gBAAgB;SACnC,MAAM,CAAC,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,CACrB,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CACxD;SACA,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QACX,YAAY,EAAE,CAAC,CAAC,YAAY;QAC5B,oBAAoB,EAAE,SAAS,CAAC,CAAC,CAAC,YAAY,CAAC,OAAO,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;QACxE,qBAAqB,EAAE,CAAC,CAAC,oBAAoB;QAC7C,SAAS,EAAE,CAAC,CAAC,MAAM,CAAC,SAAS;aAC1B,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;aAC9C,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;YACd,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,YAAY,EAAE,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC;YAClC,UAAU,EAAE,IAAI,CAAC,MAAM;SACxB,CAAC,CAAC;KACN,CAAC,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"paths-file.js","sourceRoot":"","sources":["../../../../../src/renderers/extractor/plugins/template-paths/paths-file.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"template-paths.plugin.d.ts","sourceRoot":"","sources":["../../../../../src/renderers/extractor/plugins/template-paths/template-paths.plugin.ts"],"names":[],"mappings":"AAaA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,iDAAiD,CAAC;AAW3F,MAAM,WAAW,gBAAgB;IAC/B,aAAa,EAAE,MAAM,CAAC;IACtB,YAAY,EAAE,MAAM,CAAC;CACtB;AAQD,iBAAS,sBAAsB,CAAC,aAAa,EAAE,MAAM,GAAG,MAAM,CAG7D;AAED,eAAO,MAAM,4BAA4B,yBAAyB,CAAC;AASnE;;;;;;GAMG;AACH,eAAO,MAAM,mBAAmB;4CA8BmB,MAAM,KAAG,MAAM;;+CAhB7C,MAAM,gBACP,MAAM,wBACE,MAAM,KAC3B,IAAI;
|
|
1
|
+
{"version":3,"file":"template-paths.plugin.d.ts","sourceRoot":"","sources":["../../../../../src/renderers/extractor/plugins/template-paths/template-paths.plugin.ts"],"names":[],"mappings":"AAaA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,iDAAiD,CAAC;AAW3F,MAAM,WAAW,gBAAgB;IAC/B,aAAa,EAAE,MAAM,CAAC;IACtB,YAAY,EAAE,MAAM,CAAC;CACtB;AAQD,iBAAS,sBAAsB,CAAC,aAAa,EAAE,MAAM,GAAG,MAAM,CAG7D;AAED,eAAO,MAAM,4BAA4B,yBAAyB,CAAC;AASnE;;;;;;GAMG;AACH,eAAO,MAAM,mBAAmB;4CA8BmB,MAAM,KAAG,MAAM;;+CAhB7C,MAAM,gBACP,MAAM,wBACE,MAAM,KAC3B,IAAI;wCAuCQ,mBAAmB,gBAClB,MAAM,gBACN,MAAM,iBACL,MAAM,KACpB;QACD,oBAAoB,EAAE,MAAM,GAAG,SAAS,CAAC;QACzC,qBAAqB,EAAE,MAAM,CAAC;KAC/B;;;;;SAmDH,CAAC;AAEH;;;;;GAKG;AACH,iBAAS,uCAAuC,CAC9C,oBAAoB,EAAE,MAAM,GAC3B,MAAM,CAIR"}
|
|
@@ -34,7 +34,9 @@ export const templatePathsPlugin = createTemplateExtractorPlugin({
|
|
|
34
34
|
pluginDependencies: [templateExtractorBarrelExportPlugin],
|
|
35
35
|
getInstance: async ({ context, api }) => {
|
|
36
36
|
const barrelExportPlugin = context.getPlugin(templateExtractorBarrelExportPlugin.name);
|
|
37
|
-
const templatePathRoots =
|
|
37
|
+
const templatePathRoots = context.outputDirectory
|
|
38
|
+
? await discoverTemplatePathRoots(context.outputDirectory)
|
|
39
|
+
: undefined;
|
|
38
40
|
// Key: Generator name, Value: Map of template name to path root relative path
|
|
39
41
|
const pathMapByGenerator = new Map();
|
|
40
42
|
function registerTemplatePathEntry(generatorName, templateName, pathRootRelativePath) {
|
|
@@ -49,6 +51,9 @@ export const templatePathsPlugin = createTemplateExtractorPlugin({
|
|
|
49
51
|
* @returns The relative path of the template file to the closest file path root.
|
|
50
52
|
*/
|
|
51
53
|
function getPathRootRelativePath(absolutePath) {
|
|
54
|
+
if (!context.outputDirectory || !templatePathRoots) {
|
|
55
|
+
throw new Error('Template paths are not supported when running with metadata-only extraction');
|
|
56
|
+
}
|
|
52
57
|
const outputRelativePath = path.relative(context.outputDirectory, absolutePath);
|
|
53
58
|
return getTemplatePathFromRelativePath(outputRelativePath, templatePathRoots);
|
|
54
59
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"template-paths.plugin.js","sourceRoot":"","sources":["../../../../../src/renderers/extractor/plugins/template-paths/template-paths.plugin.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,6BAA6B,EAC7B,eAAe,GAChB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACL,uBAAuB,EACvB,SAAS,EACT,kBAAkB,GACnB,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,OAAO,EAAE,uBAAuB,EAAE,MAAM,wBAAwB,CAAC;AAEjE,OAAO,EAAE,mCAAmC,EAAE,MAAM,qBAAqB,CAAC;AAC1E,OAAO,EACL,yBAAyB,EACzB,uBAAuB,EACvB,gBAAgB,GACjB,MAAM,iBAAiB,CAAC;AAOzB,4DAA4D;AAC5D,MAAM,sBAAsB,GAAG,CAAC,CAAC,MAAM,CAAC;IACtC,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE;IACzB,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE;CACzB,CAAC,CAAC;AAEH,SAAS,sBAAsB,CAAC,aAAqB;IACnD,MAAM,eAAe,GAAG,uBAAuB,CAAC,aAAa,CAAC,CAAC;IAC/D,OAAO,eAAe,CAAC,cAAc,CAAC;AACxC,CAAC;AAED,MAAM,CAAC,MAAM,4BAA4B,GAAG,sBAAsB,CAAC;AAEnE,MAAM,+BAA+B,GAAG,CAAC,CAAC,MAAM,CAAC;IAC/C;;OAEG;IACH,kBAAkB,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC;CAC/C,CAAC,CAAC;AAEH;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG,6BAA6B,CAAC;IAC/D,IAAI,EAAE,gBAAgB;IACtB,kBAAkB,EAAE,CAAC,mCAAmC,CAAC;IACzD,WAAW,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,GAAG,EAAE,EAAE,EAAE;QACtC,MAAM,kBAAkB,GAAG,OAAO,CAAC,SAAS,CAC1C,mCAAmC,CAAC,IAAI,CACzC,CAAC;QACF,MAAM,iBAAiB,GAAG,MAAM,yBAAyB,
|
|
1
|
+
{"version":3,"file":"template-paths.plugin.js","sourceRoot":"","sources":["../../../../../src/renderers/extractor/plugins/template-paths/template-paths.plugin.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/renderers/extractor/plugins/template-renderers/index.ts"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAC;AACpC,cAAc,gCAAgC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/renderers/extractor/plugins/template-renderers/index.ts"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAC;AACpC,cAAc,gCAAgC,CAAC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { TemplateExtractorContext } from '@baseplate-dev/sync';
|
|
2
|
+
import type { TemplateRendererEntry } from './types.js';
|
|
3
|
+
export declare const GENERATED_RENDERERS_FILE_NAME = "template-renderers.ts";
|
|
4
|
+
export declare function writeRenderersFile(generatorName: string, renderers: TemplateRendererEntry[], context: TemplateExtractorContext): Promise<{
|
|
5
|
+
exportName: string;
|
|
6
|
+
}>;
|
|
7
|
+
//# sourceMappingURL=renderers-file.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"renderers-file.d.ts","sourceRoot":"","sources":["../../../../../src/renderers/extractor/plugins/template-renderers/renderers-file.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,qBAAqB,CAAC;AAsBpE,OAAO,KAAK,EACV,qBAAqB,EAEtB,MAAM,YAAY,CAAC;AAEpB,eAAO,MAAM,6BAA6B,0BAA0B,CAAC;AA2IrE,wBAAsB,kBAAkB,CACtC,aAAa,EAAE,MAAM,EACrB,SAAS,EAAE,qBAAqB,EAAE,EAClC,OAAO,EAAE,wBAAwB,GAChC,OAAO,CAAC;IAAE,UAAU,EAAE,MAAM,CAAA;CAAE,CAAC,CAsDjC"}
|
|
@@ -0,0 +1,124 @@
|
|
|
1
|
+
import { TEMPLATE_EXTRACTOR_GENERATED_DIRECTORY } from '@baseplate-dev/sync';
|
|
2
|
+
import { posixJoin } from '@baseplate-dev/utils/node';
|
|
3
|
+
import { isEqual } from 'es-toolkit';
|
|
4
|
+
import { getGeneratedTemplateConstantName, getGeneratedTemplateExportName, getGeneratedTemplateInterfaceName, getGeneratedTemplateProviderName, } from '#src/renderers/extractor/utils/index.js';
|
|
5
|
+
import { tsImportBuilder } from '#src/renderers/typescript/imports/index.js';
|
|
6
|
+
import { tsCodeFragment } from '#src/renderers/typescript/index.js';
|
|
7
|
+
import { renderTsCodeFileTemplate } from '#src/renderers/typescript/renderers/index.js';
|
|
8
|
+
import { TsCodeUtils, tsTemplate, } from '#src/renderers/typescript/utils/index.js';
|
|
9
|
+
export const GENERATED_RENDERERS_FILE_NAME = 'template-renderers.ts';
|
|
10
|
+
const GENERATED_RENDERERS_FILE_PATH = posixJoin(TEMPLATE_EXTRACTOR_GENERATED_DIRECTORY, GENERATED_RENDERERS_FILE_NAME);
|
|
11
|
+
const GENERATED_RENDERERS_TEMPLATE = `
|
|
12
|
+
import { createProviderType } from '@baseplate-dev/sync';
|
|
13
|
+
|
|
14
|
+
export interface TPL_PROVIDER_TYPE_NAME {
|
|
15
|
+
TPL_PROVIDER_TYPE_CONTENTS;
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
const TPL_PROVIDER_EXPORT_NAME = createProviderType<TPL_PROVIDER_TYPE_NAME>('TPL_PROVIDER_NAME');
|
|
19
|
+
|
|
20
|
+
const TPL_TASK_EXPORT_NAME = TPL_TASK_DECLARATION;
|
|
21
|
+
|
|
22
|
+
export const TPL_EXPORT_NAME = {
|
|
23
|
+
provider: TPL_PROVIDER_EXPORT_NAME,
|
|
24
|
+
task: TPL_TASK_EXPORT_NAME,
|
|
25
|
+
};
|
|
26
|
+
`;
|
|
27
|
+
function getRenderersFileExportNames(generatorName) {
|
|
28
|
+
return {
|
|
29
|
+
interfaceName: getGeneratedTemplateInterfaceName(generatorName, 'renderers'),
|
|
30
|
+
providerExportName: getGeneratedTemplateExportName(generatorName, 'renderers'),
|
|
31
|
+
taskExportName: getGeneratedTemplateExportName(generatorName, 'renderers-task'),
|
|
32
|
+
rootExportName: getGeneratedTemplateConstantName(generatorName, 'renderers'),
|
|
33
|
+
};
|
|
34
|
+
}
|
|
35
|
+
function createRenderersTask(generatorName, renderers, context, { providerExportName }) {
|
|
36
|
+
// Collect all unique task dependencies from renderer definitions
|
|
37
|
+
const allDependencies = new Map();
|
|
38
|
+
for (const renderer of renderers) {
|
|
39
|
+
for (const dep of renderer.taskDependencies) {
|
|
40
|
+
// Check if the dependency already exists
|
|
41
|
+
const existingDep = allDependencies.get(dep.name);
|
|
42
|
+
if (existingDep) {
|
|
43
|
+
if (!isEqual(existingDep, dep)) {
|
|
44
|
+
throw new Error(`Duplicate dependency name ${dep.name} with different providers: ` +
|
|
45
|
+
`${existingDep.providerExpression ?? existingDep.providerImportName} (${existingDep.providerImportSpecifier}) ` +
|
|
46
|
+
`and ${dep.providerExpression ?? dep.providerImportName} (${dep.providerImportSpecifier})`);
|
|
47
|
+
}
|
|
48
|
+
continue;
|
|
49
|
+
}
|
|
50
|
+
// Add the dependency
|
|
51
|
+
allDependencies.set(dep.name, dep);
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
// Create dependencies object from collected dependencies
|
|
55
|
+
const dependencies = TsCodeUtils.mergeFragmentsAsObject({
|
|
56
|
+
...Object.fromEntries([...allDependencies].map(([name, dep]) => [
|
|
57
|
+
name,
|
|
58
|
+
tsCodeFragment(dep.providerExpression ?? dep.providerImportName, [
|
|
59
|
+
tsImportBuilder([dep.providerImportName]).from(dep.providerImportSpecifier),
|
|
60
|
+
]),
|
|
61
|
+
])),
|
|
62
|
+
});
|
|
63
|
+
const taskExportKey = providerExportName.replace(/Provider$/, '');
|
|
64
|
+
// Create exports object
|
|
65
|
+
const exports = TsCodeUtils.mergeFragmentsAsObject({
|
|
66
|
+
[taskExportKey]: `${providerExportName}.export()`,
|
|
67
|
+
});
|
|
68
|
+
// Create renderer functions from definitions
|
|
69
|
+
const rendererFunctions = TsCodeUtils.mergeFragmentsAsObject(Object.fromEntries(renderers.map((renderer) => [
|
|
70
|
+
renderer.name,
|
|
71
|
+
tsTemplate `{ render: ${renderer.renderFunction} }`,
|
|
72
|
+
])));
|
|
73
|
+
// Generate run function with dynamic dependency names
|
|
74
|
+
const dependencyNames = [...allDependencies.keys()].sort();
|
|
75
|
+
const run = tsTemplate `
|
|
76
|
+
function run({ ${dependencyNames.join(', ')} }) {
|
|
77
|
+
return {
|
|
78
|
+
providers: {
|
|
79
|
+
${providerExportName}: ${rendererFunctions}
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
`;
|
|
84
|
+
const taskOptions = TsCodeUtils.mergeFragmentsAsObject({
|
|
85
|
+
dependencies,
|
|
86
|
+
exports,
|
|
87
|
+
run,
|
|
88
|
+
});
|
|
89
|
+
return TsCodeUtils.templateWithImports([
|
|
90
|
+
tsImportBuilder(['createGeneratorTask']).from('@baseplate-dev/sync'),
|
|
91
|
+
]) `createGeneratorTask(${taskOptions});`;
|
|
92
|
+
}
|
|
93
|
+
export async function writeRenderersFile(generatorName, renderers, context) {
|
|
94
|
+
const extractorConfig = context.configLookup.getExtractorConfigOrThrow(generatorName);
|
|
95
|
+
const renderersFilePath = posixJoin(extractorConfig.generatorDirectory, GENERATED_RENDERERS_FILE_PATH);
|
|
96
|
+
const fileExportNames = getRenderersFileExportNames(generatorName);
|
|
97
|
+
const { interfaceName, providerExportName, taskExportName } = fileExportNames;
|
|
98
|
+
const taskFragment = createRenderersTask(generatorName, renderers, context, fileExportNames);
|
|
99
|
+
const renderersFileContents = renderTsCodeFileTemplate({
|
|
100
|
+
templateContents: GENERATED_RENDERERS_TEMPLATE,
|
|
101
|
+
variables: {
|
|
102
|
+
TPL_PROVIDER_TYPE_NAME: interfaceName,
|
|
103
|
+
TPL_PROVIDER_TYPE_CONTENTS: TsCodeUtils.mergeFragmentsAsInterfaceContent(new Map(renderers.map((renderer) => [
|
|
104
|
+
renderer.name,
|
|
105
|
+
tsTemplate `{ render: ${renderer.renderType} }`,
|
|
106
|
+
]))),
|
|
107
|
+
TPL_PROVIDER_EXPORT_NAME: providerExportName,
|
|
108
|
+
TPL_PROVIDER_NAME: getGeneratedTemplateProviderName(generatorName, 'renderers'),
|
|
109
|
+
TPL_TASK_DECLARATION: taskFragment,
|
|
110
|
+
TPL_TASK_EXPORT_NAME: taskExportName,
|
|
111
|
+
TPL_EXPORT_NAME: fileExportNames.rootExportName,
|
|
112
|
+
},
|
|
113
|
+
options: {
|
|
114
|
+
importSortOptions: {
|
|
115
|
+
internalPatterns: [/^#src/],
|
|
116
|
+
},
|
|
117
|
+
},
|
|
118
|
+
});
|
|
119
|
+
await context.fileContainer.writeFile(renderersFilePath, renderersFileContents);
|
|
120
|
+
return {
|
|
121
|
+
exportName: fileExportNames.rootExportName,
|
|
122
|
+
};
|
|
123
|
+
}
|
|
124
|
+
//# sourceMappingURL=renderers-file.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"renderers-file.js","sourceRoot":"","sources":["../../../../../src/renderers/extractor/plugins/template-renderers/renderers-file.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import type { TemplateRendererEntry } from './types.js';
|
|
2
|
+
/**
|
|
3
|
+
* The template renderers plugin is used to generate a file that exports
|
|
4
|
+
* pre-configured template renderers with automatic path and import map provider resolution.
|
|
5
|
+
*/
|
|
6
|
+
export declare const templateRenderersPlugin: import("@baseplate-dev/sync").TemplateExtractorPlugin<"template-renderers", {
|
|
7
|
+
addTemplateRenderer: (generatorName: string, rendererEntry: TemplateRendererEntry) => void;
|
|
8
|
+
}, import("@baseplate-dev/sync").TemplateExtractorPlugin<"barrel-export", {
|
|
9
|
+
addBarrelExport: (generatorName: string, barrelExport: import("../barrel-export.js").TemplateExtractorBarrelExport) => void;
|
|
10
|
+
addGeneratedBarrelExport: (generatorName: string, generatedBarrelExport: import("../barrel-export.js").TemplateExtractorGeneratedBarrelExport) => void;
|
|
11
|
+
}, []>[]>;
|
|
12
|
+
//# sourceMappingURL=template-renderers.plugin.d.ts.map
|
package/dist/renderers/extractor/plugins/template-renderers/template-renderers.plugin.d.ts.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"template-renderers.plugin.d.ts","sourceRoot":"","sources":["../../../../../src/renderers/extractor/plugins/template-renderers/template-renderers.plugin.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAC;AAexD;;;GAGG;AACH,eAAO,MAAM,uBAAuB;yCAYf,MAAM,iBACN,qBAAqB,KACnC,IAAI;;;;SAoCT,CAAC"}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import { createTemplateExtractorPlugin } from '@baseplate-dev/sync';
|
|
2
|
+
import { z } from 'zod';
|
|
3
|
+
import { normalizeTsPathToJsPath } from '#src/utils/ts-paths.js';
|
|
4
|
+
import { templateExtractorBarrelExportPlugin } from '../barrel-export.js';
|
|
5
|
+
import { GENERATED_RENDERERS_FILE_NAME, writeRenderersFile, } from './renderers-file.js';
|
|
6
|
+
const templateRenderersPluginConfigSchema = z.object({
|
|
7
|
+
/**
|
|
8
|
+
* Whether to skip generating the renderers file.
|
|
9
|
+
*/
|
|
10
|
+
skip: z.boolean().default(false),
|
|
11
|
+
});
|
|
12
|
+
/**
|
|
13
|
+
* The template renderers plugin is used to generate a file that exports
|
|
14
|
+
* pre-configured template renderers with automatic path and import map provider resolution.
|
|
15
|
+
*/
|
|
16
|
+
export const templateRenderersPlugin = createTemplateExtractorPlugin({
|
|
17
|
+
name: 'template-renderers',
|
|
18
|
+
pluginDependencies: [templateExtractorBarrelExportPlugin],
|
|
19
|
+
getInstance: ({ context, api }) => {
|
|
20
|
+
const barrelExportPlugin = context.getPlugin(templateExtractorBarrelExportPlugin.name);
|
|
21
|
+
// Key: Generator name, Value: Array of template renderer entries
|
|
22
|
+
const renderersByGenerator = new Map();
|
|
23
|
+
function addTemplateRenderer(generatorName, rendererEntry) {
|
|
24
|
+
const renderers = renderersByGenerator.get(generatorName) ?? [];
|
|
25
|
+
renderers.push(rendererEntry);
|
|
26
|
+
renderersByGenerator.set(generatorName, renderers);
|
|
27
|
+
}
|
|
28
|
+
api.registerHook('afterWrite', async () => {
|
|
29
|
+
for (const [generatorName, renderers] of renderersByGenerator) {
|
|
30
|
+
const config = context.configLookup.getPluginConfigForGenerator(generatorName, templateRenderersPlugin.name, templateRenderersPluginConfigSchema);
|
|
31
|
+
if (config?.skip) {
|
|
32
|
+
continue;
|
|
33
|
+
}
|
|
34
|
+
const { exportName } = await writeRenderersFile(generatorName, renderers, context);
|
|
35
|
+
barrelExportPlugin.addGeneratedBarrelExport(generatorName, {
|
|
36
|
+
moduleSpecifier: `./${normalizeTsPathToJsPath(GENERATED_RENDERERS_FILE_NAME)}`,
|
|
37
|
+
namedExport: exportName,
|
|
38
|
+
name: 'renderers',
|
|
39
|
+
});
|
|
40
|
+
}
|
|
41
|
+
});
|
|
42
|
+
return {
|
|
43
|
+
addTemplateRenderer,
|
|
44
|
+
};
|
|
45
|
+
},
|
|
46
|
+
});
|
|
47
|
+
//# sourceMappingURL=template-renderers.plugin.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"template-renderers.plugin.js","sourceRoot":"","sources":["../../../../../src/renderers/extractor/plugins/template-renderers/template-renderers.plugin.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,6BAA6B,EAAE,MAAM,qBAAqB,CAAC;AACpE,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,uBAAuB,EAAE,MAAM,wBAAwB,CAAC;AAIjE,OAAO,EAAE,mCAAmC,EAAE,MAAM,qBAAqB,CAAC;AAC1E,OAAO,EACL,6BAA6B,EAC7B,kBAAkB,GACnB,MAAM,qBAAqB,CAAC;AAE7B,MAAM,mCAAmC,GAAG,CAAC,CAAC,MAAM,CAAC;IACnD;;OAEG;IACH,IAAI,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC;CACjC,CAAC,CAAC;AAEH;;;GAGG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAG,6BAA6B,CAAC;IACnE,IAAI,EAAE,oBAAoB;IAC1B,kBAAkB,EAAE,CAAC,mCAAmC,CAAC;IACzD,WAAW,EAAE,CAAC,EAAE,OAAO,EAAE,GAAG,EAAE,EAAE,EAAE;QAChC,MAAM,kBAAkB,GAAG,OAAO,CAAC,SAAS,CAC1C,mCAAmC,CAAC,IAAI,CACzC,CAAC;QAEF,iEAAiE;QACjE,MAAM,oBAAoB,GAAG,IAAI,GAAG,EAAmC,CAAC;QAExE,SAAS,mBAAmB,CAC1B,aAAqB,EACrB,aAAoC;YAEpC,MAAM,SAAS,GAAG,oBAAoB,CAAC,GAAG,CAAC,aAAa,CAAC,IAAI,EAAE,CAAC;YAChE,SAAS,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;YAC9B,oBAAoB,CAAC,GAAG,CAAC,aAAa,EAAE,SAAS,CAAC,CAAC;QACrD,CAAC;QAED,GAAG,CAAC,YAAY,CAAC,YAAY,EAAE,KAAK,IAAI,EAAE;YACxC,KAAK,MAAM,CAAC,aAAa,EAAE,SAAS,CAAC,IAAI,oBAAoB,EAAE,CAAC;gBAC9D,MAAM,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC,2BAA2B,CAC7D,aAAa,EACb,uBAAuB,CAAC,IAAI,EAC5B,mCAAmC,CACpC,CAAC;gBAEF,IAAI,MAAM,EAAE,IAAI,EAAE,CAAC;oBACjB,SAAS;gBACX,CAAC;gBAED,MAAM,EAAE,UAAU,EAAE,GAAG,MAAM,kBAAkB,CAC7C,aAAa,EACb,SAAS,EACT,OAAO,CACR,CAAC;gBAEF,kBAAkB,CAAC,wBAAwB,CAAC,aAAa,EAAE;oBACzD,eAAe,EAAE,KAAK,uBAAuB,CAAC,6BAA6B,CAAC,EAAE;oBAC9E,WAAW,EAAE,UAAU;oBACvB,IAAI,EAAE,WAAW;iBAClB,CAAC,CAAC;YACL,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,OAAO;YACL,mBAAmB;SACpB,CAAC;IACJ,CAAC;CACF,CAAC,CAAC"}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import type { TsCodeFragment } from '#src/renderers/typescript/index.js';
|
|
2
|
+
/**
|
|
3
|
+
* A task dependency such as import providers or paths used in the render function.
|
|
4
|
+
*/
|
|
5
|
+
export interface TemplateRendererTaskDependency {
|
|
6
|
+
/**
|
|
7
|
+
* The name of the dependency task (will be de-duplicated)..
|
|
8
|
+
*/
|
|
9
|
+
name: string;
|
|
10
|
+
/**
|
|
11
|
+
* The expression to use to access the provider. (defaults to the name of the import)
|
|
12
|
+
*/
|
|
13
|
+
providerExpression?: string;
|
|
14
|
+
/**
|
|
15
|
+
* The name of the value to import.
|
|
16
|
+
*/
|
|
17
|
+
providerImportName: string;
|
|
18
|
+
/**
|
|
19
|
+
* The import specifier of the value.
|
|
20
|
+
*/
|
|
21
|
+
providerImportSpecifier: string;
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* A template renderer entry is a collection of information that describes
|
|
25
|
+
* how to render a template or template group.
|
|
26
|
+
*/
|
|
27
|
+
export interface TemplateRendererEntry {
|
|
28
|
+
/**
|
|
29
|
+
* The name of the template or template group to render. (camelCased)
|
|
30
|
+
*/
|
|
31
|
+
name: string;
|
|
32
|
+
/**
|
|
33
|
+
* The type of the render function used in the provider.
|
|
34
|
+
*/
|
|
35
|
+
renderType: TsCodeFragment;
|
|
36
|
+
/**
|
|
37
|
+
* The task dependencies required for the render function.
|
|
38
|
+
*/
|
|
39
|
+
taskDependencies: TemplateRendererTaskDependency[];
|
|
40
|
+
/**
|
|
41
|
+
* The function that renders the template.
|
|
42
|
+
*/
|
|
43
|
+
renderFunction: TsCodeFragment;
|
|
44
|
+
}
|
|
45
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../src/renderers/extractor/plugins/template-renderers/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oCAAoC,CAAC;AAEzE;;GAEG;AACH,MAAM,WAAW,8BAA8B;IAC7C;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IACb;;OAEG;IACH,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B;;OAEG;IACH,kBAAkB,EAAE,MAAM,CAAC;IAC3B;;OAEG;IACH,uBAAuB,EAAE,MAAM,CAAC;CACjC;AAED;;;GAGG;AACH,MAAM,WAAW,qBAAqB;IACpC;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IACb;;OAEG;IACH,UAAU,EAAE,cAAc,CAAC;IAC3B;;OAEG;IACH,gBAAgB,EAAE,8BAA8B,EAAE,CAAC;IACnD;;OAEG;IACH,cAAc,EAAE,cAAc,CAAC;CAChC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../../src/renderers/extractor/plugins/template-renderers/types.ts"],"names":[],"mappings":""}
|
|
@@ -1,8 +1,10 @@
|
|
|
1
1
|
import type { TsCodeFragment } from '../../typescript/fragments/index.js';
|
|
2
|
+
export declare const GENERATED_TYPED_TEMPLATES_FILE_NAME = "typed-templates.ts";
|
|
2
3
|
export interface TemplateExtractorTypedTemplate {
|
|
3
4
|
fragment: TsCodeFragment;
|
|
4
5
|
exportName: string;
|
|
5
6
|
}
|
|
7
|
+
export declare function getTypedTemplatesFileExportName(generatorName: string): string;
|
|
6
8
|
/**
|
|
7
9
|
* The typed templates file plugin is used to generate a file that exports
|
|
8
10
|
* the templates as a typed object.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"typed-templates-file.d.ts","sourceRoot":"","sources":["../../../../src/renderers/extractor/plugins/typed-templates-file.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qCAAqC,CAAC;
|
|
1
|
+
{"version":3,"file":"typed-templates-file.d.ts","sourceRoot":"","sources":["../../../../src/renderers/extractor/plugins/typed-templates-file.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qCAAqC,CAAC;AAQ1E,eAAO,MAAM,mCAAmC,uBAAuB,CAAC;AAOxE,MAAM,WAAW,8BAA8B;IAC7C,QAAQ,EAAE,cAAc,CAAC;IACzB,UAAU,EAAE,MAAM,CAAC;CACpB;AAQD,wBAAgB,+BAA+B,CAAC,aAAa,EAAE,MAAM,GAAG,MAAM,CAE7E;AAED;;;GAGG;AACH,eAAO,MAAM,wBAAwB;iCAgBhB,MAAM,YACX,8BAA8B,KACvC,IAAI;;;;;;;;;;;;;;;;aAoDT,CAAC"}
|
|
@@ -6,13 +6,16 @@ import { TsCodeUtils } from '../../typescript/utils/index.js';
|
|
|
6
6
|
import { getGeneratedTemplateConstantName } from '../utils/index.js';
|
|
7
7
|
import { templateExtractorBarrelExportPlugin } from './barrel-export.js';
|
|
8
8
|
import { templatePathsPlugin } from './template-paths/template-paths.plugin.js';
|
|
9
|
-
const
|
|
10
|
-
const TYPED_TEMPLATES_FILE_PATH = posixJoin(TEMPLATE_EXTRACTOR_GENERATED_DIRECTORY,
|
|
9
|
+
export const GENERATED_TYPED_TEMPLATES_FILE_NAME = 'typed-templates.ts';
|
|
10
|
+
const TYPED_TEMPLATES_FILE_PATH = posixJoin(TEMPLATE_EXTRACTOR_GENERATED_DIRECTORY, GENERATED_TYPED_TEMPLATES_FILE_NAME);
|
|
11
11
|
const TS_TEMPLATE = `
|
|
12
12
|
TPL_TEMPLATE_FRAGMENTS;
|
|
13
13
|
|
|
14
14
|
export const TPL_EXPORT_NAME = TPL_TEMPLATE_EXPORTS;
|
|
15
15
|
`;
|
|
16
|
+
export function getTypedTemplatesFileExportName(generatorName) {
|
|
17
|
+
return getGeneratedTemplateConstantName(generatorName, 'TEMPLATES');
|
|
18
|
+
}
|
|
16
19
|
/**
|
|
17
20
|
* The typed templates file plugin is used to generate a file that exports
|
|
18
21
|
* the templates as a typed object.
|
|
@@ -35,12 +38,12 @@ export const typedTemplatesFilePlugin = createTemplateExtractorPlugin({
|
|
|
35
38
|
for (const [generatorName, templates] of generatorTemplates) {
|
|
36
39
|
const templateExports = templates.map((t) => t.exportName);
|
|
37
40
|
const templatesFragment = TsCodeUtils.mergeFragments(new Map(templates.map((t) => [t.exportName, t.fragment])), '\n\n');
|
|
38
|
-
const exportName =
|
|
41
|
+
const exportName = getTypedTemplatesFileExportName(generatorName);
|
|
39
42
|
const templateFileContents = renderTsCodeFileTemplate({
|
|
40
43
|
templateContents: TS_TEMPLATE,
|
|
41
44
|
variables: {
|
|
42
45
|
TPL_TEMPLATE_FRAGMENTS: templatesFragment,
|
|
43
|
-
TPL_TEMPLATE_EXPORTS: `{ ${templateExports.join(', ')} }`,
|
|
46
|
+
TPL_TEMPLATE_EXPORTS: `{ ${templateExports.toSorted((a, b) => a.localeCompare(b)).join(', ')} }`,
|
|
44
47
|
TPL_EXPORT_NAME: exportName,
|
|
45
48
|
},
|
|
46
49
|
options: {
|
|
@@ -53,7 +56,7 @@ export const typedTemplatesFilePlugin = createTemplateExtractorPlugin({
|
|
|
53
56
|
const typedTemplatesPath = posixJoin(generatorPath, TYPED_TEMPLATES_FILE_PATH);
|
|
54
57
|
await context.fileContainer.writeFile(typedTemplatesPath, templateFileContents);
|
|
55
58
|
barrelExportPlugin.addGeneratedBarrelExport(generatorName, {
|
|
56
|
-
moduleSpecifier: `./${normalizeTsPathToJsPath(
|
|
59
|
+
moduleSpecifier: `./${normalizeTsPathToJsPath(GENERATED_TYPED_TEMPLATES_FILE_NAME)}`,
|
|
57
60
|
namedExport: exportName,
|
|
58
61
|
name: 'templates',
|
|
59
62
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"typed-templates-file.js","sourceRoot":"","sources":["../../../../src/renderers/extractor/plugins/typed-templates-file.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,6BAA6B,EAC7B,sCAAsC,GACvC,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AAEtD,OAAO,EAAE,uBAAuB,EAAE,MAAM,wBAAwB,CAAC;AAIjE,OAAO,EAAE,wBAAwB,EAAE,MAAM,oCAAoC,CAAC;AAC9E,OAAO,EAAE,WAAW,EAAE,MAAM,iCAAiC,CAAC;AAC9D,OAAO,EAAE,gCAAgC,EAAE,MAAM,mBAAmB,CAAC;AACrE,OAAO,EAAE,mCAAmC,EAAE,MAAM,oBAAoB,CAAC;AACzE,OAAO,EAAE,mBAAmB,EAAE,MAAM,2CAA2C,CAAC;AAEhF,MAAM,
|
|
1
|
+
{"version":3,"file":"typed-templates-file.js","sourceRoot":"","sources":["../../../../src/renderers/extractor/plugins/typed-templates-file.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"deduplicate-templates.d.ts","sourceRoot":"","sources":["../../../../src/renderers/extractor/utils/deduplicate-templates.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,+BAA+B,EAAE,MAAM,qBAAqB,CAAC;AAI3E;;;;;GAKG;AACH,wBAAgB,2CAA2C,CACzD,CAAC,SAAS,+BAA+B,EACzC,KAAK,EAAE,CAAC,EAAE,GAAG,CAAC,EAAE,
|
|
1
|
+
{"version":3,"file":"deduplicate-templates.d.ts","sourceRoot":"","sources":["../../../../src/renderers/extractor/utils/deduplicate-templates.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,+BAA+B,EAAE,MAAM,qBAAqB,CAAC;AAI3E;;;;;GAKG;AACH,wBAAgB,2CAA2C,CACzD,CAAC,SAAS,+BAA+B,EACzC,KAAK,EAAE,CAAC,EAAE,GAAG,CAAC,EAAE,CA0BjB"}
|
|
@@ -8,11 +8,12 @@ export function deduplicateTemplateFileExtractorSourceFiles(files) {
|
|
|
8
8
|
const addedTemplates = new Set();
|
|
9
9
|
const deduplicatedList = [];
|
|
10
10
|
// Sort by modified time to ensure the latest version is used
|
|
11
|
-
for (const file of files.toSorted((a, b) =>
|
|
12
|
-
const fileKey = `${file.
|
|
11
|
+
for (const file of files.toSorted((a, b) => b.modifiedTime.getTime() - a.modifiedTime.getTime())) {
|
|
12
|
+
const fileKey = `${file.generatorName}__${file.templateName}`;
|
|
13
13
|
if (addedTemplates.has(fileKey)) {
|
|
14
|
-
if ('fileOptions' in file.
|
|
15
|
-
file.
|
|
14
|
+
if ('fileOptions' in file.existingMetadata &&
|
|
15
|
+
file.existingMetadata.fileOptions.kind ===
|
|
16
|
+
'singleton') {
|
|
16
17
|
throw new Error(`Duplicate singleton template found: ${fileKey}`);
|
|
17
18
|
}
|
|
18
19
|
else {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"deduplicate-templates.js","sourceRoot":"","sources":["../../../../src/renderers/extractor/utils/deduplicate-templates.ts"],"names":[],"mappings":"AAIA;;;;;GAKG;AACH,MAAM,UAAU,2CAA2C,CAEzD,KAAU;IACV,MAAM,cAAc,GAAG,IAAI,GAAG,EAAE,CAAC;IACjC,MAAM,gBAAgB,GAAQ,EAAE,CAAC;IAEjC,6DAA6D;IAC7D,KAAK,MAAM,IAAI,IAAI,KAAK,CAAC,QAAQ,CAC/B,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,YAAY,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,YAAY,CAAC,OAAO,EAAE,CAC9D,EAAE,CAAC;QACF,MAAM,OAAO,GAAG,GAAG,IAAI,CAAC,
|
|
1
|
+
{"version":3,"file":"deduplicate-templates.js","sourceRoot":"","sources":["../../../../src/renderers/extractor/utils/deduplicate-templates.ts"],"names":[],"mappings":"AAIA;;;;;GAKG;AACH,MAAM,UAAU,2CAA2C,CAEzD,KAAU;IACV,MAAM,cAAc,GAAG,IAAI,GAAG,EAAE,CAAC;IACjC,MAAM,gBAAgB,GAAQ,EAAE,CAAC;IAEjC,6DAA6D;IAC7D,KAAK,MAAM,IAAI,IAAI,KAAK,CAAC,QAAQ,CAC/B,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,YAAY,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,YAAY,CAAC,OAAO,EAAE,CAC9D,EAAE,CAAC;QACF,MAAM,OAAO,GAAG,GAAG,IAAI,CAAC,aAAa,KAAK,IAAI,CAAC,YAAY,EAAE,CAAC;QAC9D,IAAI,cAAc,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC;YAChC,IACE,aAAa,IAAI,IAAI,CAAC,gBAAgB;gBACrC,IAAI,CAAC,gBAAgB,CAAC,WAAmC,CAAC,IAAI;oBAC7D,WAAW,EACb,CAAC;gBACD,MAAM,IAAI,KAAK,CAAC,uCAAuC,OAAO,EAAE,CAAC,CAAC;YACpE,CAAC;iBAAM,CAAC;gBACN,kDAAkD;gBAClD,SAAS;YACX,CAAC;QACH,CAAC;QACD,cAAc,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAC5B,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC9B,CAAC;IAED,OAAO,gBAAgB,CAAC;AAC1B,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/renderers/raw/index.ts"],"names":[],"mappings":"AAAA,cAAc,iCAAiC,CAAC;AAChD,cAAc,YAAY,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/renderers/raw/index.ts"],"names":[],"mappings":"AAAA,cAAc,iCAAiC,CAAC;AAChD,cAAc,oCAAoC,CAAC;AACnD,cAAc,YAAY,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/renderers/raw/index.ts"],"names":[],"mappings":"AAAA,cAAc,iCAAiC,CAAC;AAChD,cAAc,YAAY,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/renderers/raw/index.ts"],"names":[],"mappings":"AAAA,cAAc,iCAAiC,CAAC;AAChD,cAAc,oCAAoC,CAAC;AACnD,cAAc,YAAY,CAAC"}
|