jtlt 0.12.0 → 0.13.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/CHANGES.md +5 -0
- package/README.md +9 -5
- package/demo/calltemplate-params-demo.js +19 -15
- package/demo/codemirror.esm.js +140 -70
- package/demo/codemirror.js +9 -5
- package/demo/index.js +2 -1
- package/demo/vendor/fontoxpath/dist/fontoxpath.esm.js +508 -499
- package/demo/vendor/jamilih/dist/jml.mjs +516 -225
- package/demo/vendor/jsonpath-plus/dist/index-browser-esm.js +11 -5
- package/dist/AbstractJoiningTransformer.d.ts +12 -20
- package/dist/AbstractJoiningTransformer.d.ts.map +1 -1
- package/dist/DOMJoiningTransformer.d.ts +502 -19
- package/dist/DOMJoiningTransformer.d.ts.map +1 -1
- package/dist/JSONJoiningTransformer.d.ts +41 -25
- package/dist/JSONJoiningTransformer.d.ts.map +1 -1
- package/dist/JSONPathTransformer.d.ts +20 -20
- package/dist/JSONPathTransformer.d.ts.map +1 -1
- package/dist/JSONPathTransformerContext.d.ts +103 -80
- package/dist/JSONPathTransformerContext.d.ts.map +1 -1
- package/dist/StringJoiningTransformer.d.ts +42 -28
- package/dist/StringJoiningTransformer.d.ts.map +1 -1
- package/dist/XPathTransformer.d.ts +11 -11
- package/dist/XPathTransformer.d.ts.map +1 -1
- package/dist/XPathTransformerContext.d.ts +47 -45
- package/dist/XPathTransformerContext.d.ts.map +1 -1
- package/dist/XSLTStyleJSONPathResolver.d.ts +1 -1
- package/dist/XSLTStyleJSONPathResolver.d.ts.map +1 -1
- package/dist/index-browser.d.ts +2 -2
- package/dist/index-browser.d.ts.map +1 -1
- package/dist/index-node.d.ts +2 -2
- package/dist/index-node.d.ts.map +1 -1
- package/dist/index.d.ts +126 -167
- package/dist/index.d.ts.map +1 -1
- package/docs/API.expanded.md +6 -4
- package/docs/API.md +1 -1
- package/docs/TO-DO.md +4 -2
- package/eslint.config.js +17 -1
- package/package.json +23 -22
- package/pnpm-workspace.yaml +32 -4
- package/rollup.config.js +42 -0
- package/src/AbstractJoiningTransformer.js +8 -1
- package/src/DOMJoiningTransformer.js +56 -27
- package/src/JSONJoiningTransformer.js +64 -44
- package/src/JSONPathTransformer.js +86 -85
- package/src/JSONPathTransformerContext.js +95 -48
- package/src/StringJoiningTransformer.js +48 -23
- package/src/XPathTransformer.js +18 -14
- package/src/XPathTransformerContext.js +173 -123
- package/src/index-browser.js +1 -0
- package/src/index-node.js +2 -0
- package/src/index.js +125 -68
- package/test.html +17 -0
- package/test.js +45 -0
- package/tsconfig-prod.json +1 -0
- package/tsconfig.json +3 -2
- package/dist/types.d.ts +0 -204
- package/dist/types.d.ts.map +0 -1
|
@@ -1203,9 +1203,10 @@ const plugin = {
|
|
|
1203
1203
|
// register plugins
|
|
1204
1204
|
jsep.plugins.register(index, plugin);
|
|
1205
1205
|
jsep.addUnaryOp('typeof');
|
|
1206
|
+
jsep.addUnaryOp('void');
|
|
1206
1207
|
jsep.addLiteral('null', null);
|
|
1207
1208
|
jsep.addLiteral('undefined', undefined);
|
|
1208
|
-
const BLOCKED_PROTO_PROPERTIES = new Set(['constructor', '__proto__', '__defineGetter__', '__defineSetter__']);
|
|
1209
|
+
const BLOCKED_PROTO_PROPERTIES = new Set(['constructor', '__proto__', '__defineGetter__', '__defineSetter__', '__lookupGetter__', '__lookupSetter__']);
|
|
1209
1210
|
const SafeEval = {
|
|
1210
1211
|
/**
|
|
1211
1212
|
* @param {jsep.Expression} ast
|
|
@@ -1324,7 +1325,9 @@ const SafeEval = {
|
|
|
1324
1325
|
'~': a => ~SafeEval.evalAst(a, subs),
|
|
1325
1326
|
// eslint-disable-next-line no-implicit-coercion -- API
|
|
1326
1327
|
'+': a => +SafeEval.evalAst(a, subs),
|
|
1327
|
-
typeof: a => typeof SafeEval.evalAst(a, subs)
|
|
1328
|
+
typeof: a => typeof SafeEval.evalAst(a, subs),
|
|
1329
|
+
// eslint-disable-next-line no-void, sonarjs/void-use -- feature
|
|
1330
|
+
void: a => void SafeEval.evalAst(a, subs)
|
|
1328
1331
|
}[ast.operator](ast.argument);
|
|
1329
1332
|
return result;
|
|
1330
1333
|
},
|
|
@@ -1334,9 +1337,12 @@ const SafeEval = {
|
|
|
1334
1337
|
evalCallExpression(ast, subs) {
|
|
1335
1338
|
const args = ast.arguments.map(arg => SafeEval.evalAst(arg, subs));
|
|
1336
1339
|
const func = SafeEval.evalAst(ast.callee, subs);
|
|
1337
|
-
|
|
1338
|
-
|
|
1339
|
-
|
|
1340
|
+
/* c8 ignore start */
|
|
1341
|
+
if (func === Function) {
|
|
1342
|
+
// unreachable since BLOCKED_PROTO_PROPERTIES includes 'constructor'
|
|
1343
|
+
throw new Error('Function constructor is disabled');
|
|
1344
|
+
}
|
|
1345
|
+
/* c8 ignore end */
|
|
1340
1346
|
return func(...args);
|
|
1341
1347
|
},
|
|
1342
1348
|
evalAssignmentExpression(ast, subs) {
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
export default AbstractJoiningTransformer;
|
|
2
1
|
export type OutputCharacters = {
|
|
3
2
|
character: string;
|
|
4
3
|
string: string;
|
|
@@ -8,28 +7,20 @@ export type BaseTransformerConfig = {
|
|
|
8
7
|
JHTMLForJSON?: boolean;
|
|
9
8
|
mode?: "JSON" | "JavaScript";
|
|
10
9
|
};
|
|
11
|
-
/**
|
|
12
|
-
* When exposeDocuments is true, get() returns an array of XMLDocument
|
|
13
|
-
* objects (one per root element) instead of a DocumentFragment.
|
|
14
|
-
*/
|
|
15
10
|
export type DOMJoiningTransformerConfig = BaseTransformerConfig & {
|
|
16
11
|
document: Document;
|
|
17
12
|
exposeDocuments?: boolean;
|
|
18
13
|
};
|
|
19
14
|
export type JSONJoiningTransformerConfig = {
|
|
20
|
-
requireSameChildren?: boolean
|
|
21
|
-
unwrapSingleResult?: boolean
|
|
15
|
+
requireSameChildren?: boolean;
|
|
16
|
+
unwrapSingleResult?: boolean;
|
|
22
17
|
/**
|
|
23
18
|
* - When true, get() returns an array
|
|
24
19
|
* of document wrapper objects (one per root element) instead of the raw array.
|
|
25
20
|
*/
|
|
26
|
-
exposeDocuments?: boolean
|
|
27
|
-
mode?: "JSON" | "JavaScript"
|
|
21
|
+
exposeDocuments?: boolean;
|
|
22
|
+
mode?: "JSON" | "JavaScript";
|
|
28
23
|
};
|
|
29
|
-
/**
|
|
30
|
-
* When exposeDocuments is true, get() returns an array of document
|
|
31
|
-
* strings (one per root element) instead of a single concatenated string.
|
|
32
|
-
*/
|
|
33
24
|
export type StringJoiningTransformerConfig = BaseTransformerConfig & {
|
|
34
25
|
xmlElements?: boolean;
|
|
35
26
|
preEscapedAttributes?: boolean;
|
|
@@ -95,10 +86,6 @@ export type JoiningTransformerConfig<T> = T extends "string" ? StringJoiningTran
|
|
|
95
86
|
* @template T
|
|
96
87
|
*/
|
|
97
88
|
declare class AbstractJoiningTransformer<T> {
|
|
98
|
-
/**
|
|
99
|
-
* @param {JoiningTransformerConfig<T>} [cfg] - Configuration object
|
|
100
|
-
*/
|
|
101
|
-
constructor(cfg?: JoiningTransformerConfig<T>);
|
|
102
89
|
_cfg: JoiningTransformerConfig<T>;
|
|
103
90
|
/** @type {Record<string, OutputCharacters>} */
|
|
104
91
|
_characterMap: Record<string, OutputCharacters>;
|
|
@@ -167,6 +154,12 @@ declare class AbstractJoiningTransformer<T> {
|
|
|
167
154
|
sequence?: string;
|
|
168
155
|
returnType?: string;
|
|
169
156
|
}>;
|
|
157
|
+
_outputConfig: import("./StringJoiningTransformer.js").OutputConfig | undefined;
|
|
158
|
+
mediaType: string | undefined;
|
|
159
|
+
/**
|
|
160
|
+
* @param {JoiningTransformerConfig<T>} [cfg] - Configuration object
|
|
161
|
+
*/
|
|
162
|
+
constructor(cfg?: JoiningTransformerConfig<T>);
|
|
170
163
|
/**
|
|
171
164
|
* @param {JoiningTransformerConfig<T>} cfg - Configuration object
|
|
172
165
|
* @returns {void}
|
|
@@ -176,9 +169,7 @@ declare class AbstractJoiningTransformer<T> {
|
|
|
176
169
|
* @param {import('./StringJoiningTransformer.js').OutputConfig} cfg
|
|
177
170
|
* @returns {this}
|
|
178
171
|
*/
|
|
179
|
-
output(cfg: import(
|
|
180
|
-
_outputConfig: import("./StringJoiningTransformer.js").OutputConfig | undefined;
|
|
181
|
-
mediaType: string | undefined;
|
|
172
|
+
output(cfg: import('./StringJoiningTransformer.js').OutputConfig): this;
|
|
182
173
|
/**
|
|
183
174
|
* Configure mode behavior (similar to xsl:mode).
|
|
184
175
|
* @param {{
|
|
@@ -313,4 +304,5 @@ declare class AbstractJoiningTransformer<T> {
|
|
|
313
304
|
*/
|
|
314
305
|
config(prop: string, val: any, cb?: (this: AbstractJoiningTransformer<T>) => void): void;
|
|
315
306
|
}
|
|
307
|
+
export default AbstractJoiningTransformer;
|
|
316
308
|
//# sourceMappingURL=AbstractJoiningTransformer.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AbstractJoiningTransformer.d.ts","sourceRoot":"","sources":["../src/AbstractJoiningTransformer.js"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"AbstractJoiningTransformer.d.ts","sourceRoot":"","sources":["../src/AbstractJoiningTransformer.js"],"names":[],"mappings":"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"}
|