@accordproject/template-engine 5.0.0 → 5.2.0
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/README.md +39 -0
- package/lib/JavaScriptEvaluator.js +18 -17
- package/lib/JavaScriptEvaluator.js.map +1 -1
- package/lib/TemplateArchiveProcessor.d.ts +26 -1
- package/lib/TemplateArchiveProcessor.js +72 -8
- package/lib/TemplateArchiveProcessor.js.map +1 -1
- package/lib/TemplateMarkInterpreter.d.ts +12 -1
- package/lib/TemplateMarkInterpreter.js +133 -29
- package/lib/TemplateMarkInterpreter.js.map +1 -1
- package/lib/TemplateMarkToJavaScriptCompiler.d.ts +32 -1
- package/lib/TemplateMarkToJavaScriptCompiler.js +54 -6
- package/lib/TemplateMarkToJavaScriptCompiler.js.map +1 -1
- package/lib/TypeScriptCompilationContext.d.ts +2 -1
- package/lib/TypeScriptCompilationContext.js +12 -1
- package/lib/TypeScriptCompilationContext.js.map +1 -1
- package/lib/TypeScriptToJavaScriptCompiler.d.ts +7 -2
- package/lib/TypeScriptToJavaScriptCompiler.js +99 -35
- package/lib/TypeScriptToJavaScriptCompiler.js.map +1 -1
- package/lib/UserLogic.d.ts +59 -0
- package/lib/UserLogic.js +129 -0
- package/lib/UserLogic.js.map +1 -0
- package/lib/drafting/Double/format.js +5 -1
- package/lib/drafting/Double/format.js.map +1 -1
- package/lib/drafting/Integer/format.js +5 -1
- package/lib/drafting/Integer/format.js.map +1 -1
- package/lib/index.d.ts +2 -0
- package/lib/index.js +3 -1
- package/lib/index.js.map +1 -1
- package/lib/llm/LLMConfig.d.ts +50 -0
- package/lib/llm/LLMConfig.js +68 -1
- package/lib/llm/LLMConfig.js.map +1 -1
- package/lib/llm/LLMExecutor.d.ts +3 -1
- package/lib/llm/LLMExecutor.js +3 -2
- package/lib/llm/LLMExecutor.js.map +1 -1
- package/lib/llm/Reasoners.d.ts +83 -10
- package/lib/llm/Reasoners.js +127 -73
- package/lib/llm/Reasoners.js.map +1 -1
- package/lib/llm/index.d.ts +15 -0
- package/lib/llm/index.js +50 -0
- package/lib/llm/index.js.map +1 -0
- package/lib/runtime/typescriptLibs.d.ts +2 -0
- package/lib/runtime/typescriptLibs.js +21 -0
- package/lib/runtime/typescriptLibs.js.map +1 -0
- package/lib/utils.d.ts +29 -1
- package/lib/utils.js +62 -2
- package/lib/utils.js.map +1 -1
- package/package.json +29 -3
- package/umd/template-engine.js +5 -5
- package/umd/template-engine.js.LICENSE.txt +1 -1
package/README.md
CHANGED
|
@@ -221,6 +221,45 @@ Notes on browser limitations:
|
|
|
221
221
|
The browser bundle is exercised by the Playwright tests in the `e2e/` workspace, which load
|
|
222
222
|
`umd/template-engine.js` into a headless Chromium and run a real `generate()`.
|
|
223
223
|
|
|
224
|
+
## LLM providers
|
|
225
|
+
|
|
226
|
+
The optional [LLM executor](docs/llm-executor.md) talks to providers through their official
|
|
227
|
+
SDKs. These are **optional peer dependencies** — they are not installed with the template
|
|
228
|
+
engine, so install the SDK for each provider you use:
|
|
229
|
+
|
|
230
|
+
| Provider | Package |
|
|
231
|
+
| --- | --- |
|
|
232
|
+
| `anthropic` | `@anthropic-ai/sdk` |
|
|
233
|
+
| `openai`, `ollama`, `openai-compatible` | `openai` |
|
|
234
|
+
| `groq` | `groq-sdk` |
|
|
235
|
+
| `google` | `@google/genai` |
|
|
236
|
+
| `mistral` | `@mistralai/mistralai` |
|
|
237
|
+
| `openrouter` | `@openrouter/sdk` |
|
|
238
|
+
|
|
239
|
+
```
|
|
240
|
+
npm install @anthropic-ai/sdk
|
|
241
|
+
```
|
|
242
|
+
|
|
243
|
+
In Node.js the SDK is loaded by package name on first use. Bundlers (Vite, webpack, ...) cannot
|
|
244
|
+
resolve that runtime lookup, so browser apps should pass `sdkLoaders` — one literal `import()`
|
|
245
|
+
per provider they support — so their bundler includes the SDK:
|
|
246
|
+
|
|
247
|
+
```ts
|
|
248
|
+
const processor = new TemplateArchiveProcessor(template, llmConfig, {
|
|
249
|
+
anthropic: () => import('@anthropic-ai/sdk'),
|
|
250
|
+
openai: () => import('openai'), // also used by `ollama` and `openai-compatible`
|
|
251
|
+
});
|
|
252
|
+
```
|
|
253
|
+
|
|
254
|
+
The same loaders are accepted by `new LLMExecutor(template, config, sdkLoaders)` and
|
|
255
|
+
`createReasoner(providerConfig, sdkLoaders)`.
|
|
256
|
+
|
|
257
|
+
The `openai` SDK (also used by `ollama` and `openai-compatible`) and the `@anthropic-ai/sdk` SDK
|
|
258
|
+
refuse to run in a browser unless the provider config opts in with
|
|
259
|
+
`clientOptions: { dangerouslyAllowBrowser: true }`. Only do this if you accept that the API key
|
|
260
|
+
is visible to anyone using the page, for example when users supply their own key; otherwise call
|
|
261
|
+
the provider from a server.
|
|
262
|
+
|
|
224
263
|
## License <a name="license"></a>
|
|
225
264
|
Accord Project source code files are made available under the Apache License, Version 2.0 (Apache-2.0), located in the LICENSE file. Accord Project documentation files are made available under the Creative Commons Attribution 4.0 International License (CC-BY-4.0), available at http://creativecommons.org/licenses/by/4.0/.
|
|
226
265
|
|
|
@@ -73,8 +73,8 @@ class JavaScriptEvaluator {
|
|
|
73
73
|
}
|
|
74
74
|
else {
|
|
75
75
|
// this is a template logic esm module, so we need to dynamic import it
|
|
76
|
-
const dataUri = 'data:text/javascript;
|
|
77
|
-
+
|
|
76
|
+
const dataUri = 'data:text/javascript;charset=utf-8,'
|
|
77
|
+
+ encodeURIComponent(request.code);
|
|
78
78
|
(0, exports.dynamicImport)(dataUri)
|
|
79
79
|
.then(templateLogicConstructor => {
|
|
80
80
|
const instance = new templateLogicConstructor();
|
|
@@ -217,21 +217,22 @@ class JavaScriptEvaluator {
|
|
|
217
217
|
result = msg;
|
|
218
218
|
resultReceived = true;
|
|
219
219
|
});
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
220
|
+
// settle on 'close' rather than 'exit': 'exit' can fire before the
|
|
221
|
+
// worker's final IPC message is delivered, whereas 'close' waits for
|
|
222
|
+
// the IPC channel to close, so any result has been received by then.
|
|
223
|
+
worker.on('close', (code) => {
|
|
224
|
+
this.workers = this.workers.filter((w) => w.pid !== worker.pid);
|
|
225
|
+
const end = new Date().getTime();
|
|
226
|
+
if (code === null) {
|
|
227
|
+
reject({ timeout: true, elapsed: end - start });
|
|
228
|
+
}
|
|
229
|
+
else if (code === 0 && resultReceived) {
|
|
230
|
+
resolve({ ...result, elapsed: end - start });
|
|
231
|
+
}
|
|
232
|
+
else {
|
|
233
|
+
// result is absent when user code exits the process before replying.
|
|
234
|
+
reject({ code, result, elapsed: end - start });
|
|
235
|
+
}
|
|
235
236
|
});
|
|
236
237
|
// send the request to the child process
|
|
237
238
|
worker.send(work.request);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"JavaScriptEvaluator.js","sourceRoot":"","sources":["../src/JavaScriptEvaluator.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;GAYG;;;;;;AAEH,uDAAuD;AAEvD,kEAA0C;AAC1C,wDAA0B;AAC1B,kDAA0B;AAE1B,gDAAwB;AA4CxB,KAAK,UAAU,KAAK,CAAC,IAAY;IAC7B,OAAO,IAAI,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC;AAC7D,CAAC;AAED,4FAA4F;AAC5F,8DAA8D;AAC9D,MAAM,OAAO,GAAG,KAAK,EAAE,IAAY,EAAE,EAAE,CAAC,IAAI,QAAQ,CAAC,WAAW,EAAE,0BAA0B,CAAC,CAAC,IAAI,CAAC,CAAC;AAEpG,sGAAsG;AACtG,0EAA0E;AACnE,MAAM,aAAa,GAAG,KAAK,EAAK,IAAY,EAAE,MAAe,EAAE,EAAE;IACpE,MAAM,GAAG,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAChC,OAAO,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,OAAY,CAAC;AAClD,CAAC,CAAA;AAHY,QAAA,aAAa,iBAGzB;AAID;;;;;;;;;GASG;AACH,MAAa,mBAAmB;IAK5B,YAAY,UAAsC,EAAC,YAAY,EAAE,EAAE,EAAE,UAAU,EAAE,CAAC,EAAE,aAAa,EAAE,IAAI,EAAC;QACpG,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,OAAO,GAAG,EAAE,CAAC;QAClB,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC;IACpB,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,eAAe,CAAC,OAAoB;QACtC,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACnC,IAAI,CAAC;gBACD,IAAG,OAAO,CAAC,OAAO,EAAE,CAAC;oBACjB,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;gBAC9B,CAAC;gBACD,MAAM,KAAK,GAAG,IAAI,IAAI,EAAE,CAAC,OAAO,EAAE,CAAC;gBACnC,IAAI,MAAM,GAAG,IAAI,CAAC;gBAClB,gCAAgC;gBAChC,IAAG,CAAC,OAAO,CAAC,aAAa,EAAE,CAAC;oBACxB,MAAM,GAAG,GAAG,IAAI,QAAQ,CAAC,GAAG,CAAC,OAAO,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC,aAAa,CAAC,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;oBACrF,MAAM,GAAG,GAAG,CAAC,GAAG,CAAC,eAAK,EAAE,kBAAE,EAAE,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC;oBACnD,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC,OAAO,EAAE,CAAC;oBACjC,OAAO,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,GAAG,KAAK,EAAE,CAAC,CAAC;gBAC9C,CAAC;qBACI,CAAC;oBACF,uEAAuE;oBACvE,MAAM,OAAO,GAAG,
|
|
1
|
+
{"version":3,"file":"JavaScriptEvaluator.js","sourceRoot":"","sources":["../src/JavaScriptEvaluator.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { Template } from '@accordproject/cicero-core';
|
|
2
2
|
import { TwoSlashReturn } from '@typescript/twoslash';
|
|
3
3
|
import { LLMExecutorConfig } from './llm/LLMConfig';
|
|
4
|
+
import { SdkLoaders } from './llm/Reasoners';
|
|
4
5
|
/** The contract state. */
|
|
5
6
|
export type State = object;
|
|
6
7
|
/** A response/result returned by the contract logic. */
|
|
@@ -17,6 +18,17 @@ export type TriggerResponse = {
|
|
|
17
18
|
export type InitResponse = {
|
|
18
19
|
state: State;
|
|
19
20
|
};
|
|
21
|
+
/**
|
|
22
|
+
* Resolves the template logic entry point from the identifiers of the template's
|
|
23
|
+
* TypeScript scripts. Candidates are `.ts` files directly inside `logic/` (so
|
|
24
|
+
* generated code under `logic/generated/` and non-TypeScript files such as
|
|
25
|
+
* `logic/README.md` are ignored). `logic/logic.ts` is preferred when present;
|
|
26
|
+
* otherwise there must be exactly one candidate.
|
|
27
|
+
* @param {string[]} identifiers - the script identifiers, e.g. `logic/logic.ts`
|
|
28
|
+
* @returns {string} the identifier of the logic entry point
|
|
29
|
+
* @throws {Error} if there is no candidate, or several candidates and no `logic/logic.ts`
|
|
30
|
+
*/
|
|
31
|
+
export declare function resolveLogicEntryPoint(identifiers: string[]): string;
|
|
20
32
|
/**
|
|
21
33
|
* A template archive processor: can draft content using the
|
|
22
34
|
* templatemark for the archive and trigger the logic of the archive
|
|
@@ -28,14 +40,17 @@ export declare class TemplateArchiveProcessor {
|
|
|
28
40
|
private compiledLogicCache?;
|
|
29
41
|
/** Optional LLM fallback configuration. */
|
|
30
42
|
llmConfig?: LLMExecutorConfig;
|
|
43
|
+
/** Optional LLM SDK loaders, for bundled environments. */
|
|
44
|
+
private sdkLoaders?;
|
|
31
45
|
/** Lazily-created LLM executor reused across debug/init/trigger calls. */
|
|
32
46
|
private llmExecutor?;
|
|
33
47
|
/**
|
|
34
48
|
* Creates a template archive processor
|
|
35
49
|
* @param {Template} template - the template to be used by the processor
|
|
36
50
|
* @param {LLMExecutorConfig} [llmConfig] - optional LLM fallback configuration
|
|
51
|
+
* @param {SdkLoaders} [sdkLoaders] - optional LLM SDK loaders, for bundled environments
|
|
37
52
|
*/
|
|
38
|
-
constructor(template: Template, llmConfig?: LLMExecutorConfig);
|
|
53
|
+
constructor(template: Template, llmConfig?: LLMExecutorConfig, sdkLoaders?: SdkLoaders);
|
|
39
54
|
/**
|
|
40
55
|
* Drafts a template by merging it with data
|
|
41
56
|
* @param {any} data the data to merge with the template
|
|
@@ -45,6 +60,16 @@ export declare class TemplateArchiveProcessor {
|
|
|
45
60
|
* @returns {Promise} the drafted content
|
|
46
61
|
*/
|
|
47
62
|
draft(data: any, format: string, options: any, currentTime?: string): Promise<any>;
|
|
63
|
+
/**
|
|
64
|
+
* Compiles the template's `logic/logic.ts` so that its top-level helpers can be
|
|
65
|
+
* used by inline formulas when drafting. Unlike {@link compileLogic} this never
|
|
66
|
+
* throws for templates without logic: drafting does not require it, so this
|
|
67
|
+
* returns `undefined` when the template has no TypeScript logic or does not ship
|
|
68
|
+
* a `logic/logic.ts` file (other scripts, such as generated model files, are
|
|
69
|
+
* never used in its place). Reuses the compiled logic cache when it is populated.
|
|
70
|
+
* @returns {Promise<CompiledUserLogic | undefined>} the compiled user logic, if any
|
|
71
|
+
*/
|
|
72
|
+
private compileUserLogicForDraft;
|
|
48
73
|
/**
|
|
49
74
|
* Compile the logic of a template
|
|
50
75
|
* @param {boolean} [enableCompiledLogicCache] - whether to cache the compiled logic for future use
|
|
@@ -47,14 +47,43 @@ var __importStar = (this && this.__importStar) || (function () {
|
|
|
47
47
|
})();
|
|
48
48
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
49
49
|
exports.TemplateArchiveProcessor = void 0;
|
|
50
|
+
exports.resolveLogicEntryPoint = resolveLogicEntryPoint;
|
|
50
51
|
const concerto_core_1 = require("@accordproject/concerto-core");
|
|
51
52
|
const TemplateMarkInterpreter_1 = require("./TemplateMarkInterpreter");
|
|
52
53
|
const markdown_template_1 = require("@accordproject/markdown-template");
|
|
53
54
|
const markdown_transform_1 = require("@accordproject/markdown-transform");
|
|
54
55
|
const TypeScriptToJavaScriptCompiler_1 = require("./TypeScriptToJavaScriptCompiler");
|
|
55
56
|
const JavaScriptEvaluator_1 = require("./JavaScriptEvaluator");
|
|
57
|
+
const UserLogic_1 = require("./UserLogic");
|
|
58
|
+
const TemplateMarkToJavaScriptCompiler_1 = require("./TemplateMarkToJavaScriptCompiler");
|
|
56
59
|
const LLMExecutor_1 = require("./llm/LLMExecutor");
|
|
57
60
|
const utils_1 = require("./utils");
|
|
61
|
+
/** The conventional template logic entry point. */
|
|
62
|
+
const DEFAULT_LOGIC_ENTRY_POINT = 'logic/logic.ts';
|
|
63
|
+
/**
|
|
64
|
+
* Resolves the template logic entry point from the identifiers of the template's
|
|
65
|
+
* TypeScript scripts. Candidates are `.ts` files directly inside `logic/` (so
|
|
66
|
+
* generated code under `logic/generated/` and non-TypeScript files such as
|
|
67
|
+
* `logic/README.md` are ignored). `logic/logic.ts` is preferred when present;
|
|
68
|
+
* otherwise there must be exactly one candidate.
|
|
69
|
+
* @param {string[]} identifiers - the script identifiers, e.g. `logic/logic.ts`
|
|
70
|
+
* @returns {string} the identifier of the logic entry point
|
|
71
|
+
* @throws {Error} if there is no candidate, or several candidates and no `logic/logic.ts`
|
|
72
|
+
*/
|
|
73
|
+
function resolveLogicEntryPoint(identifiers) {
|
|
74
|
+
const candidates = identifiers.filter(id => /^logic\/[^/]+\.ts$/.test(id));
|
|
75
|
+
if (candidates.includes(DEFAULT_LOGIC_ENTRY_POINT)) {
|
|
76
|
+
return DEFAULT_LOGIC_ENTRY_POINT;
|
|
77
|
+
}
|
|
78
|
+
if (candidates.length === 1) {
|
|
79
|
+
return candidates[0];
|
|
80
|
+
}
|
|
81
|
+
if (candidates.length === 0) {
|
|
82
|
+
throw new Error('Template logic requires a TypeScript entry point in the logic/ folder (e.g. logic/logic.ts).');
|
|
83
|
+
}
|
|
84
|
+
throw new Error(`Template logic has multiple candidate entry points (${candidates.join(', ')}). ` +
|
|
85
|
+
`Name the entry point ${DEFAULT_LOGIC_ENTRY_POINT}, or keep a single .ts file directly in logic/.`);
|
|
86
|
+
}
|
|
58
87
|
/**
|
|
59
88
|
* A template archive processor: can draft content using the
|
|
60
89
|
* templatemark for the archive and trigger the logic of the archive
|
|
@@ -64,10 +93,12 @@ class TemplateArchiveProcessor {
|
|
|
64
93
|
* Creates a template archive processor
|
|
65
94
|
* @param {Template} template - the template to be used by the processor
|
|
66
95
|
* @param {LLMExecutorConfig} [llmConfig] - optional LLM fallback configuration
|
|
96
|
+
* @param {SdkLoaders} [sdkLoaders] - optional LLM SDK loaders, for bundled environments
|
|
67
97
|
*/
|
|
68
|
-
constructor(template, llmConfig) {
|
|
98
|
+
constructor(template, llmConfig, sdkLoaders) {
|
|
69
99
|
this.template = template;
|
|
70
100
|
this.llmConfig = llmConfig;
|
|
101
|
+
this.sdkLoaders = sdkLoaders;
|
|
71
102
|
}
|
|
72
103
|
/**
|
|
73
104
|
* Drafts a template by merging it with data
|
|
@@ -83,14 +114,46 @@ class TemplateArchiveProcessor {
|
|
|
83
114
|
const templateKind = metadata.getTemplateType() !== 0 ? 'clause' : 'contract';
|
|
84
115
|
// Get the data
|
|
85
116
|
const modelManager = this.template.getModelManager();
|
|
86
|
-
const engine = new TemplateMarkInterpreter_1.TemplateMarkInterpreter(modelManager, {});
|
|
87
117
|
const templateMarkTransformer = new markdown_template_1.TemplateMarkTransformer();
|
|
88
118
|
const templateMarkDom = templateMarkTransformer.fromMarkdownTemplate({ content: this.template.getTemplate() }, modelManager, templateKind);
|
|
119
|
+
// Compile the template's logic/logic.ts (when present) so that inline
|
|
120
|
+
// formulas {{% expr %}} can call helpers declared in user code (issue #147).
|
|
121
|
+
// Skipped when the template has no formulas or conditions to evaluate.
|
|
122
|
+
const userLogic = (0, TemplateMarkToJavaScriptCompiler_1.hasUserCode)(templateMarkDom) ? await this.compileUserLogicForDraft() : undefined;
|
|
123
|
+
const engine = new TemplateMarkInterpreter_1.TemplateMarkInterpreter(modelManager, {}, undefined, userLogic);
|
|
89
124
|
const now = currentTime ? currentTime : new Date().toISOString();
|
|
90
125
|
const ciceroMark = await engine.generate(templateMarkDom, data, { now });
|
|
91
126
|
const result = (0, markdown_transform_1.transform)(ciceroMark.toJSON(), 'ciceromark', ['ciceromark_unquoted', format], null, options);
|
|
92
127
|
return result;
|
|
93
128
|
}
|
|
129
|
+
/**
|
|
130
|
+
* Compiles the template's `logic/logic.ts` so that its top-level helpers can be
|
|
131
|
+
* used by inline formulas when drafting. Unlike {@link compileLogic} this never
|
|
132
|
+
* throws for templates without logic: drafting does not require it, so this
|
|
133
|
+
* returns `undefined` when the template has no TypeScript logic or does not ship
|
|
134
|
+
* a `logic/logic.ts` file (other scripts, such as generated model files, are
|
|
135
|
+
* never used in its place). Reuses the compiled logic cache when it is populated.
|
|
136
|
+
* @returns {Promise<CompiledUserLogic | undefined>} the compiled user logic, if any
|
|
137
|
+
*/
|
|
138
|
+
async compileUserLogicForDraft() {
|
|
139
|
+
if (!this.template.hasLogic()) {
|
|
140
|
+
return undefined;
|
|
141
|
+
}
|
|
142
|
+
const logicManager = this.template.getLogicManager();
|
|
143
|
+
if (logicManager.getLanguage() !== 'typescript') {
|
|
144
|
+
return undefined;
|
|
145
|
+
}
|
|
146
|
+
const tsFiles = logicManager.getScriptManager().getScriptsForTarget('typescript');
|
|
147
|
+
const logicScript = tsFiles.find((tsFile) => tsFile.getIdentifier() === 'logic/logic.ts');
|
|
148
|
+
if (!logicScript) {
|
|
149
|
+
return undefined;
|
|
150
|
+
}
|
|
151
|
+
const cached = this.compiledLogicCache?.['logic/logic.ts'];
|
|
152
|
+
if (cached) {
|
|
153
|
+
return (0, UserLogic_1.toCompiledUserLogic)(logicScript.getContents(), cached.code);
|
|
154
|
+
}
|
|
155
|
+
return (0, UserLogic_1.compileUserLogic)(this.template.getModelManager(), this.template.getTemplateModel().getFullyQualifiedName(), logicScript.getContents());
|
|
156
|
+
}
|
|
94
157
|
/**
|
|
95
158
|
* Compile the logic of a template
|
|
96
159
|
* @param {boolean} [enableCompiledLogicCache] - whether to cache the compiled logic for future use
|
|
@@ -104,7 +167,8 @@ class TemplateArchiveProcessor {
|
|
|
104
167
|
if (logicManager.getLanguage() === 'typescript') {
|
|
105
168
|
const compiledCode = {};
|
|
106
169
|
const tsFiles = logicManager.getScriptManager().getScriptsForTarget('typescript');
|
|
107
|
-
const
|
|
170
|
+
const entryPoint = resolveLogicEntryPoint(tsFiles.map((tsFile) => tsFile.getIdentifier()));
|
|
171
|
+
const logicScript = tsFiles.find((tsFile) => tsFile.getIdentifier() === entryPoint);
|
|
108
172
|
await this.assertTemplateLogicSubclass(logicScript);
|
|
109
173
|
for (let n = 0; n < tsFiles.length; n++) {
|
|
110
174
|
const tsFile = tsFiles[n];
|
|
@@ -124,7 +188,7 @@ class TemplateArchiveProcessor {
|
|
|
124
188
|
// (assertRuntimeHierarchy). Scoped to the logic entry point and to TS2344 so
|
|
125
189
|
// that unrelated diagnostics (and non-logic scripts such as README.md) do
|
|
126
190
|
// not turn into hard failures.
|
|
127
|
-
const isLogicEntry = tsFile.getIdentifier()
|
|
191
|
+
const isLogicEntry = tsFile.getIdentifier() === entryPoint;
|
|
128
192
|
if (isLogicEntry) {
|
|
129
193
|
const hierarchyErrors = (result.errors || [])
|
|
130
194
|
.filter(e => e.category === 1 && e.code === 2344);
|
|
@@ -256,7 +320,7 @@ class TemplateArchiveProcessor {
|
|
|
256
320
|
throw new Error('LLM fallback requested but llmConfig is missing');
|
|
257
321
|
}
|
|
258
322
|
if (!this.llmExecutor) {
|
|
259
|
-
this.llmExecutor = new LLMExecutor_1.LLMExecutor(this.template, this.llmConfig);
|
|
323
|
+
this.llmExecutor = new LLMExecutor_1.LLMExecutor(this.template, this.llmConfig, this.sdkLoaders);
|
|
260
324
|
}
|
|
261
325
|
return this.llmExecutor;
|
|
262
326
|
}
|
|
@@ -279,7 +343,7 @@ class TemplateArchiveProcessor {
|
|
|
279
343
|
templateLogic: true,
|
|
280
344
|
verbose: false,
|
|
281
345
|
functionName: 'trigger',
|
|
282
|
-
code: compiledCode[
|
|
346
|
+
code: compiledCode[resolveLogicEntryPoint(Object.keys(compiledCode))].code,
|
|
283
347
|
argumentNames: ['data', 'request', 'state'],
|
|
284
348
|
arguments: [data, request, priorState, resolvedTime, resolvedOffset]
|
|
285
349
|
});
|
|
@@ -300,7 +364,7 @@ class TemplateArchiveProcessor {
|
|
|
300
364
|
*/
|
|
301
365
|
async executeTypeScriptInit(data, currentTime, utcOffset) {
|
|
302
366
|
const compiledCode = await this.compileLogic();
|
|
303
|
-
const logicCode = compiledCode[
|
|
367
|
+
const logicCode = compiledCode[resolveLogicEntryPoint(Object.keys(compiledCode))].code;
|
|
304
368
|
// Check if the compiled code even contains an `init` method before calling it
|
|
305
369
|
if (!logicCode || (!logicCode.includes('init(') && !logicCode.includes('init ('))) {
|
|
306
370
|
// Stateless template — no init method defined, return empty state
|
|
@@ -313,7 +377,7 @@ class TemplateArchiveProcessor {
|
|
|
313
377
|
templateLogic: true,
|
|
314
378
|
verbose: false,
|
|
315
379
|
functionName: 'init',
|
|
316
|
-
code: logicCode,
|
|
380
|
+
code: logicCode,
|
|
317
381
|
argumentNames: ['data'],
|
|
318
382
|
arguments: [data, resolvedTime, resolvedOffset]
|
|
319
383
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TemplateArchiveProcessor.js","sourceRoot":"","sources":["../src/TemplateArchiveProcessor.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;GAYG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAKH,gEAAmE;AACnE,uEAAoE;AACpE,wEAA2E;AAC3E,0EAA8D;AAC9D,qFAAkF;AAIlF,+DAA4D;AAC5D,mDAAgD;AAEhD,mCAQiB;AAqBjB;;;GAGG;AACH,MAAa,wBAAwB;IAajC;;;;OAIG;IACH,YAAY,QAAkB,EAAE,SAA6B;QACzD,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;IAC/B,CAAC;IAED;;;;;;;OAOG;IACH,KAAK,CAAC,KAAK,CAAC,IAAS,EAAE,MAAc,EAAE,OAAY,EAAE,WAAoB;QACrE,QAAQ;QACR,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC;QAC7C,MAAM,YAAY,GAAG,QAAQ,CAAC,eAAe,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC;QAE9E,eAAe;QACf,MAAM,YAAY,GAAG,IAAI,CAAC,QAAQ,CAAC,eAAe,EAAE,CAAC;QACrD,MAAM,MAAM,GAAG,IAAI,iDAAuB,CAAC,YAAY,EAAE,EAAE,CAAC,CAAC;QAC7D,MAAM,uBAAuB,GAAG,IAAI,2CAAuB,EAAE,CAAC;QAC9D,MAAM,eAAe,GAAG,uBAAuB,CAAC,oBAAoB,CAChE,EAAE,OAAO,EAAE,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,EAAE,EAAE,YAAY,EAAE,YAAY,CAAC,CAAC;QAC1E,MAAM,GAAG,GAAG,WAAW,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;QACjE,MAAM,UAAU,GAAG,MAAM,MAAM,CAAC,QAAQ,CAAC,eAAe,EAAE,IAAI,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC;QACzE,MAAM,MAAM,GAAG,IAAA,8BAAS,EAAC,UAAU,CAAC,MAAM,EAAE,EAAE,YAAY,EAAE,CAAC,qBAAqB,EAAE,MAAM,CAAC,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;QAC5G,OAAO,MAAM,CAAC;IAClB,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,YAAY,CAAC,2BAAoC,KAAK;QACxD,IAAI,wBAAwB,IAAI,IAAI,CAAC,kBAAkB,EAAE,CAAC;YACtD,OAAO,IAAI,CAAC,kBAAkB,CAAC;QACnC,CAAC;QAED,MAAM,YAAY,GAAG,IAAI,CAAC,QAAQ,CAAC,eAAe,EAAE,CAAC;QACrD,IAAI,YAAY,CAAC,WAAW,EAAE,KAAK,YAAY,EAAE,CAAC;YAC9C,MAAM,YAAY,GAAmC,EAAE,CAAC;YACxD,MAAM,OAAO,GAAkB,YAAY,CAAC,gBAAgB,EAAE,CAAC,mBAAmB,CAAC,YAAY,CAAC,CAAC;YACjG,MAAM,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,aAAa,EAAE,KAAK,gBAAgB,CAAC,CAAC;YAC1F,MAAM,IAAI,CAAC,2BAA2B,CAAC,WAAW,CAAC,CAAC;YACpD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;gBACtC,MAAM,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;gBAE1B,MAAM,QAAQ,GAAG,IAAI,+DAA8B,CAAC,IAAI,CAAC,QAAQ,CAAC,eAAe,EAAE,EAC/E,IAAI,CAAC,QAAQ,CAAC,gBAAgB,EAAE,CAAC,qBAAqB,EAAE,CAAC,CAAC;gBAE9D,MAAM,QAAQ,CAAC,UAAU,EAAE,CAAC;gBAE5B,oEAAoE;gBACpE,6EAA6E;gBAC7E,uEAAuE;gBACvE,sCAAsC;gBACtC,MAAM,MAAM,GAAG,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC,CAAC;gBAEtD,wEAAwE;gBACxE,6EAA6E;gBAC7E,0EAA0E;gBAC1E,2EAA2E;gBAC3E,uEAAuE;gBACvE,4DAA4D;gBAC5D,6EAA6E;gBAC7E,0EAA0E;gBAC1E,+BAA+B;gBAC/B,MAAM,YAAY,GAAG,MAAM,CAAC,aAAa,EAAE,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;gBACjE,IAAI,YAAY,EAAE,CAAC;oBACf,MAAM,eAAe,GAAG,CAAC,MAAM,CAAC,MAAM,IAAI,EAAE,CAAC;yBACxC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC;oBACtD,IAAI,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;wBAC7B,MAAM,OAAO,GAAG,eAAe,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;wBACvE,MAAM,IAAI,KAAK,CACX,yEAAyE;4BACzE,qEAAqE;4BACrE,wDAAwD,OAAO,EAAE,CAAC,CAAC;oBAC3E,CAAC;gBACL,CAAC;gBAED,YAAY,CAAC,MAAM,CAAC,aAAa,EAAE,CAAC,GAAG,MAAM,CAAC;YAClD,CAAC;YACD,IAAI,wBAAwB,EAAE,CAAC;gBAC3B,IAAI,CAAC,kBAAkB,GAAG,YAAY,CAAC;YAC3C,CAAC;YACD,OAAO,YAAY,CAAC;QACxB,CAAC;aAAM,CAAC;YACJ,MAAM,IAAI,KAAK,CAAC,2CAA2C,CAAC,CAAC;QACjE,CAAC;IACL,CAAC;IAED;;;;;;;;;;;OAWG;IACK,sBAAsB,CAAC,OAAY,EAAE,OAAe,EAAE,IAAY;QACtE,IAAI,CAAC,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;YAC9B,OAAO;QACX,CAAC;QACD,IAAI,CAAC,IAAA,sBAAc,EAAC,IAAI,CAAC,QAAQ,CAAC,eAAe,EAAE,EAAE,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC;YAC5E,MAAM,IAAI,KAAK,CACX,WAAW,IAAI,MAAM,OAAO,CAAC,MAAM,oCAAoC;gBACvE,GAAG,IAAI,UAAU,OAAO,IAAI,CAAC,CAAC;QACtC,CAAC;IACL,CAAC;IAED;;;;;;;;;;;;;;;;;OAiBG;IACK,gCAAgC,CAAC,MAAe,EAAE,IAAS;QAC/D,MAAM,YAAY,GAAG,IAAI,CAAC,QAAQ,CAAC,eAAe,EAAE,CAAC;QACrD,MAAM,CAAC,OAAO,CAAC,CAAC,KAAU,EAAE,EAAE;YAC1B,IAAI,CAAC,KAAK,IAAI,CAAC,KAAK,CAAC,MAAM,IAAI,KAAK,CAAC,QAAQ,EAAE,CAAC;gBAC5C,OAAO;YACX,CAAC;YACD,IAAI,CAAC,IAAA,sBAAc,EAAC,YAAY,EAAE,KAAK,CAAC,MAAM,EAAE,8BAAsB,CAAC,EAAE,CAAC;gBACtE,OAAO;YACX,CAAC;YACD,IAAI,IAAI,IAAI,IAAI,CAAC,MAAM,IAAI,IAAA,sBAAc,EAAC,YAAY,EAAE,IAAI,CAAC,MAAM,EAAE,4BAAoB,CAAC,EAAE,CAAC;gBACzF,iFAAiF;gBACjF,kFAAkF;gBAClF,iFAAiF;gBACjF,oFAAoF;gBACpF,oFAAoF;gBACpF,MAAM,SAAS,GAAG,YAAY,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;gBACpD,MAAM,OAAO,GAAG,SAAS,CAAC,sBAAsB,EAAE,CAAC;gBACnD,MAAM,OAAO,GAAG,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;gBACpD,IAAI,CAAC,OAAO,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;oBACpC,MAAM,IAAI,KAAK,CACX,oEAAoE,KAAK,CAAC,MAAM,KAAK;wBACrF,mBAAmB,IAAI,CAAC,MAAM,mDAAmD,OAAO,IAAI,CAC/F,CAAC;gBACN,CAAC;gBACD,KAAK,CAAC,QAAQ,GAAG,GAAG,OAAO,EAAE,CAAC;gBAC9B,OAAO;YACX,CAAC;YACD,MAAM,IAAI,KAAK,CACX,oEAAoE,KAAK,CAAC,MAAM,KAAK;gBACrF,cAAc,8BAAsB,mCAAmC;gBACvE,KAAK,IAAI,EAAE,MAAM,IAAI,WAAW,sBAAsB,4BAAoB,WAAW;gBACrF,+EAA+E;gBAC/E,yDAAyD,CAC5D,CAAC;QACN,CAAC,CAAC,CAAC;IACP,CAAC;IAEO,KAAK,CAAC,2BAA2B,CAAC,MAAe;QACrD,IAAI,CAAC,MAAM,EAAE,CAAC;YACV,MAAM,IAAI,KAAK,CAAC,4DAA4D,CAAC,CAAC;QAClF,CAAC;QAED,MAAM,QAAQ,GAAG,wDAAa,YAAY,GAAC,CAAC;QAC5C,MAAM,QAAQ,GAAG,CAAC,SAAS,IAAI,QAAQ,IAAI,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;QAE3F,MAAM,UAAU,GAAG,QAAQ,CAAC,gBAAgB,CACxC,MAAM,CAAC,aAAa,EAAE,EACtB,MAAM,CAAC,WAAW,EAAE,EACpB,QAAQ,CAAC,YAAY,CAAC,MAAM,EAC5B,IAAI,EACJ,QAAQ,CAAC,UAAU,CAAC,EAAE,CACzB,CAAC;QAEF,MAAM,wBAAwB,GAAG,UAAU,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE;YACtE,IAAI,CAAC,QAAQ,CAAC,kBAAkB,CAAC,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,eAAe,EAAE,CAAC;gBACxE,OAAO,KAAK,CAAC;YACjB,CAAC;YAED,OAAO,SAAS,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAC7C,MAAM,CAAC,KAAK,KAAK,QAAQ,CAAC,UAAU,CAAC,cAAc;gBACnD,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,YAAY,EAAE,EAAE;oBAC/B,MAAM,UAAU,GAAG,YAAY,CAAC,UAAU,CAAC;oBAC3C,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAC,UAAU,CAAC,IAAI,UAAU,CAAC,IAAI,KAAK,eAAe,CAAC;wBAC7E,CAAC,QAAQ,CAAC,0BAA0B,CAAC,UAAU,CAAC,IAAI,UAAU,CAAC,IAAI,CAAC,IAAI,KAAK,eAAe,CAAC,CAAC;gBACtG,CAAC,CAAC,CACL,CAAC;QACN,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,wBAAwB,EAAE,CAAC;YAC5B,MAAM,IAAI,KAAK,CAAC,uCAAuC,MAAM,CAAC,aAAa,EAAE,6CAA6C,CAAC,CAAC;QAChI,CAAC;IACL,CAAC;IAED;;;OAGG;IACK,YAAY;QAChB,OAAO,CAAC,CAAC,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,SAAS,CAAC,IAAI,KAAK,UAAU,CAAC;IAClE,CAAC;IAED;;;;OAIG;IACK,eAAe;QACnB,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;YAClB,MAAM,IAAI,KAAK,CAAC,iDAAiD,CAAC,CAAC;QACvE,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;YACpB,IAAI,CAAC,WAAW,GAAG,IAAI,yBAAW,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;QACtE,CAAC;QACD,OAAO,IAAI,CAAC,WAAW,CAAC;IAC5B,CAAC;IAED;;;;;;;;;OASG;IACK,KAAK,CAAC,wBAAwB,CAAC,IAAS,EAAE,OAAY,EAAE,UAAgB,EAAE,WAAoB,EAAE,SAAkB;QACtH,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,YAAY,EAAE,CAAC;QAC/C,MAAM,YAAY,GAAG,WAAW,IAAI,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;QAC7D,MAAM,cAAc,GAAG,SAAS,IAAI,CAAC,CAAC;QACtC,MAAM,SAAS,GAAG,IAAI,yCAAmB,EAAE,CAAC;QAC5C,MAAM,YAAY,GAAG,MAAM,SAAS,CAAC,eAAe,CAAC;YACjD,aAAa,EAAE,IAAI;YACnB,OAAO,EAAE,KAAK;YACd,YAAY,EAAE,SAAS;YACvB,IAAI,EAAE,YAAY,CAAC,gBAAgB,CAAC,CAAC,IAAI,EAAE,0CAA0C;YACrF,aAAa,EAAE,CAAC,MAAM,EAAE,SAAS,EAAE,OAAO,CAAC;YAC3C,SAAS,EAAE,CAAC,IAAI,EAAE,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,cAAc,CAAC;SACvE,CAAC,CAAC;QACH,IAAI,YAAY,CAAC,MAAM,EAAE,CAAC;YACtB,OAAO,YAAY,CAAC,MAAyB,CAAC;QAClD,CAAC;aAAM,CAAC;YACJ,MAAM,IAAI,KAAK,CAAC,+BAA+B,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC;QAC5E,CAAC;IACL,CAAC;IAED;;;;;;;OAOG;IACK,KAAK,CAAC,qBAAqB,CAAC,IAAS,EAAE,WAAoB,EAAE,SAAkB;QACnF,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,YAAY,EAAE,CAAC;QAC/C,MAAM,SAAS,GAAG,YAAY,CAAC,gBAAgB,CAAC,EAAE,IAAI,CAAC;QAEvD,8EAA8E;QAC9E,IAAI,CAAC,SAAS,IAAI,CAAC,CAAC,SAAS,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC;YAChF,kEAAkE;YAClE,OAAO,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC;QACzB,CAAC;QAED,MAAM,YAAY,GAAG,WAAW,IAAI,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;QAC7D,MAAM,cAAc,GAAG,SAAS,IAAI,CAAC,CAAC;QACtC,MAAM,SAAS,GAAG,IAAI,yCAAmB,EAAE,CAAC;QAC5C,MAAM,YAAY,GAAG,MAAM,SAAS,CAAC,eAAe,CAAC;YACjD,aAAa,EAAE,IAAI;YACnB,OAAO,EAAE,KAAK;YACd,YAAY,EAAE,MAAM;YACpB,IAAI,EAAE,SAAS,EAAE,0CAA0C;YAC3D,aAAa,EAAE,CAAC,MAAM,CAAC;YACvB,SAAS,EAAE,CAAC,IAAI,EAAE,YAAY,EAAE,cAAc,CAAC;SAClD,CAAC,CAAC;QACH,IAAI,YAAY,CAAC,MAAM,EAAE,CAAC;YACtB,OAAO,YAAY,CAAC,MAAsB,CAAC;QAC/C,CAAC;aAAM,CAAC;YACJ,MAAM,IAAI,KAAK,CAAC,4BAA4B,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC;QACzE,CAAC;IACL,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;OAsBG;IACH,KAAK,CAAC,OAAO,CAAC,IAAS,EAAE,OAAY,EAAE,UAAgB,EAAE,WAAoB,EAAE,SAAkB,EAAE,wBAAkC;QACjI,MAAM,OAAO,GAAG,IAAI,uBAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,eAAe,EAAE,CAAC,CAAC;QAC7D,MAAM,UAAU,GAAG,IAAI,0BAAU,CAAC,OAAO,EAAE,IAAI,CAAC,QAAQ,CAAC,eAAe,EAAE,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAC,CAAC,CAAC;QAE/F,4EAA4E;QAC5E,4EAA4E;QAC5E,4EAA4E;QAC5E,4DAA4D;QAC5D,IAAI,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC,UAAU,IAAI,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC,EAAE,CAAC;YACtF,MAAM,IAAI,KAAK,CACX,wEAAwE;gBACxE,+EAA+E,CAClF,CAAC;QACN,CAAC;QAED,iFAAiF;QACjF,kFAAkF;QAClF,0EAA0E;QAC1E,IAAI,IAAI;YAAE,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QACpC,IAAI,OAAO;YAAE,UAAU,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAC1C,IAAI,UAAU,IAAI,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,MAAM,GAAG,CAAC;YAAE,UAAU,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;QAEtF,oDAAoD;QACpD,IAAI,CAAC,sBAAsB,CAAC,OAAO,EAAE,2BAAmB,EAAE,SAAS,CAAC,CAAC;QACrE,IAAI,CAAC,sBAAsB,CAAC,UAAU,EAAE,yBAAiB,EAAE,OAAO,CAAC,CAAC;QAEpE,IAAI,eAAgC,CAAC;QACrC,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,EAAE,IAAI,KAAK,OAAO,CAAC;QAElD,6EAA6E;QAC7E,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,EAAE,CAAC;YACxC,IAAI,wBAAwB,EAAE,CAAC;gBAC3B,MAAM,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;YAClC,CAAC;YACD,eAAe,GAAG,MAAM,IAAI,CAAC,wBAAwB,CAAC,IAAI,EAAE,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,SAAS,CAAC,CAAC;QAC7G,CAAC;aAAM,IAAI,QAAQ,IAAI,IAAI,CAAC,YAAY,EAAE,EAAE,CAAC;YACzC,iCAAiC;YACjC,eAAe,GAAG,MAAM,IAAI,CAAC,eAAe,EAAE,CAAC,OAAO,CAAC,IAAI,EAAE,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,SAAS,CAAC,CAAC;QAC9G,CAAC;aAAM,CAAC;YACJ,MAAM,IAAI,KAAK,CAAC,wDAAwD,CAAC,CAAC;QAC9E,CAAC;QAED,8EAA8E;QAC9E,IAAI,eAAe,CAAC,KAAK,IAAI,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC,MAAM,GAAG,CAAC;YAAE,UAAU,CAAC,QAAQ,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC;QACvH,IAAI,eAAe,CAAC,MAAM;YAAE,UAAU,CAAC,QAAQ,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC;QACxE,IAAI,eAAe,CAAC,MAAM,IAAI,KAAK,CAAC,OAAO,CAAC,eAAe,CAAC,MAAM,CAAC,EAAE,CAAC;YAClE,IAAI,CAAC,gCAAgC,CAAC,eAAe,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;YACpE,eAAe,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;QAChE,CAAC;QAED,qDAAqD;QACrD,IAAI,CAAC,sBAAsB,CAAC,eAAe,CAAC,KAAK,EAAE,yBAAiB,EAAE,OAAO,CAAC,CAAC;QAC/E,IAAI,CAAC,sBAAsB,CAAC,eAAe,CAAC,MAAM,EAAE,4BAAoB,EAAE,UAAU,CAAC,CAAC;QACtF,IAAI,eAAe,CAAC,MAAM,IAAI,KAAK,CAAC,OAAO,CAAC,eAAe,CAAC,MAAM,CAAC,EAAE,CAAC;YAClE,eAAe,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC,EAAE,sBAAc,EAAE,OAAO,CAAC,CAAC,CAAC;QACjG,CAAC;QAED,OAAO,eAAe,CAAC;IAC3B,CAAC;IAED;;;;;;;OAOG;IACH,KAAK,CAAC,IAAI,CAAC,IAAS,EAAE,WAAoB,EAAE,SAAkB,EAAE,wBAAkC;QAC9F,MAAM,OAAO,GAAG,IAAI,uBAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,eAAe,EAAE,CAAC,CAAC;QAC7D,MAAM,UAAU,GAAG,IAAI,0BAAU,CAAC,OAAO,EAAE,IAAI,CAAC,QAAQ,CAAC,eAAe,EAAE,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAC,CAAC,CAAC;QAE/F,mCAAmC;QACnC,IAAI,IAAI;YAAE,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QAEpC,IAAI,YAA0B,CAAC;QAC/B,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,EAAE,IAAI,KAAK,OAAO,CAAC;QAElD,6EAA6E;QAC7E,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,EAAE,CAAC;YACxC,IAAI,wBAAwB,EAAE,CAAC;gBAC3B,MAAM,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;YAClC,CAAC;YACD,YAAY,GAAG,MAAM,IAAI,CAAC,qBAAqB,CAAC,IAAI,EAAE,WAAW,EAAE,SAAS,CAAC,CAAC;QAClF,CAAC;aAAM,IAAI,QAAQ,IAAI,IAAI,CAAC,YAAY,EAAE,EAAE,CAAC;YACzC,iCAAiC;YACjC,YAAY,GAAG,MAAM,IAAI,CAAC,eAAe,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,WAAW,EAAE,SAAS,CAAC,CAAC;QACnF,CAAC;aAAM,CAAC;YACJ,MAAM,IAAI,KAAK,CAAC,wDAAwD,CAAC,CAAC;QAC9E,CAAC;QAED,0EAA0E;QAC1E,kFAAkF;QAClF,IAAI,YAAY,CAAC,KAAK,IAAI,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,MAAM,GAAG,CAAC;YAAE,UAAU,CAAC,QAAQ,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;QAE9G,iFAAiF;QACjF,sDAAsD;QACtD,IAAI,CAAC,sBAAsB,CAAC,YAAY,CAAC,KAAK,EAAE,yBAAiB,EAAE,OAAO,CAAC,CAAC;QAE5E,OAAO,YAAY,CAAC;IACxB,CAAC;CACJ;AAtbD,4DAsbC"}
|
|
1
|
+
{"version":3,"file":"TemplateArchiveProcessor.js","sourceRoot":"","sources":["../src/TemplateArchiveProcessor.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
import { ClassDeclaration, ModelManager } from '@accordproject/concerto-core';
|
|
2
2
|
import { TemplateData } from './TemplateMarkNodes';
|
|
3
|
+
import { TemplateMarkToJavaScriptCompiler } from './TemplateMarkToJavaScriptCompiler';
|
|
3
4
|
import { GenerationOptions } from './TypeScriptRuntime';
|
|
5
|
+
import { CompiledUserLogic } from './UserLogic';
|
|
4
6
|
/**
|
|
5
7
|
* A template engine: merges the markup and logic of a template with
|
|
6
8
|
* JSON data to produce JSON data.
|
|
@@ -9,7 +11,9 @@ export declare class TemplateMarkInterpreter {
|
|
|
9
11
|
modelManager: ModelManager;
|
|
10
12
|
templateClass: ClassDeclaration;
|
|
11
13
|
clauseLibrary: object;
|
|
12
|
-
|
|
14
|
+
userLogic?: CompiledUserLogic;
|
|
15
|
+
compilers: Map<string, Promise<TemplateMarkToJavaScriptCompiler>>;
|
|
16
|
+
constructor(modelManager: ModelManager, clauseLibrary: object, templateConceptFqn?: string, userLogic?: CompiledUserLogic);
|
|
13
17
|
/**
|
|
14
18
|
* Checks that a TemplateMark JSON document is valid with respect to the
|
|
15
19
|
* TemplateMark model, as well as the template model.
|
|
@@ -29,6 +33,13 @@ export declare class TemplateMarkInterpreter {
|
|
|
29
33
|
* @throws {Error} if the templateMark document is invalid
|
|
30
34
|
*/
|
|
31
35
|
compileTypeScriptToJavaScript(templateMark: object): Promise<object>;
|
|
36
|
+
/**
|
|
37
|
+
* Returns an initialized compiler for a template concept, creating it
|
|
38
|
+
* on first use and reusing it for later calls.
|
|
39
|
+
* @param {string} templateConcept the fully qualified name of the template concept
|
|
40
|
+
* @returns {Promise<TemplateMarkToJavaScriptCompiler>} the compiler
|
|
41
|
+
*/
|
|
42
|
+
getCompiler(templateConcept: string): Promise<TemplateMarkToJavaScriptCompiler>;
|
|
32
43
|
validateCiceroMark(ciceroMark: object): object;
|
|
33
44
|
generate(templateMark: object, data: TemplateData, options?: GenerationOptions): Promise<any>;
|
|
34
45
|
}
|