jtlt 0.2.0 → 0.4.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 +27 -0
- package/README.md +61 -164
- package/demo/calltemplate-params-demo.js +138 -0
- package/demo/codemirror.esm.js +28242 -0
- package/demo/codemirror.js +94 -0
- package/demo/index.css +7 -0
- package/demo/index.html +28 -0
- package/demo/index.js +210 -0
- package/demo/vendor/jamilih/dist/jml.mjs +2341 -0
- package/demo/vendor/jhtml/src/SAJJ/SAJJ.ObjectArrayDelegator.js +356 -0
- package/demo/vendor/jhtml/src/SAJJ/SAJJ.Stringifier.js +186 -0
- package/demo/vendor/jhtml/src/SAJJ/SAJJ.js +746 -0
- package/demo/vendor/jhtml/src/SAJJ/testing/SAJJ.html +33 -0
- package/demo/vendor/jhtml/src/SAJJ/testing/SAJJ.testing.js +25 -0
- package/demo/vendor/jhtml/src/jhtml-browser.js +5 -0
- package/demo/vendor/jhtml/src/jhtml-node.cts +3 -0
- package/demo/vendor/jhtml/src/jhtml-node.js +8 -0
- package/demo/vendor/jhtml/src/jhtml-node.mts +1 -0
- package/demo/vendor/jhtml/src/jhtml.cts +3 -0
- package/demo/vendor/jhtml/src/jhtml.js +602 -0
- package/demo/vendor/jhtml/src/jhtml.mts +1 -0
- package/demo/vendor/jsonpath-plus/dist/index-browser-esm.js +2158 -0
- package/demo/vendor/simple-get-json/dist/index-es.js +151 -0
- package/demo/xpath2-placeholder.js +1 -0
- package/dist/AbstractJoiningTransformer.d.ts +83 -9
- package/dist/AbstractJoiningTransformer.d.ts.map +1 -1
- package/dist/DOMJoiningTransformer.d.ts +85 -25
- package/dist/DOMJoiningTransformer.d.ts.map +1 -1
- package/dist/JSONJoiningTransformer.d.ts +159 -51
- package/dist/JSONJoiningTransformer.d.ts.map +1 -1
- package/dist/JSONPathTransformer.d.ts +37 -38
- package/dist/JSONPathTransformer.d.ts.map +1 -1
- package/dist/JSONPathTransformerContext.d.ts +334 -124
- package/dist/JSONPathTransformerContext.d.ts.map +1 -1
- package/dist/StringJoiningTransformer.d.ts +132 -41
- package/dist/StringJoiningTransformer.d.ts.map +1 -1
- package/dist/XPathTransformer.d.ts +35 -20
- package/dist/XPathTransformer.d.ts.map +1 -1
- package/dist/XPathTransformerContext.d.ts +281 -105
- package/dist/XPathTransformerContext.d.ts.map +1 -1
- package/dist/index-browser.d.ts +4 -0
- package/dist/index-browser.d.ts.map +1 -0
- package/dist/index-node.d.ts +4 -0
- package/dist/index-node.d.ts.map +1 -0
- package/dist/index.d.ts +330 -57
- package/dist/index.d.ts.map +1 -1
- package/dist/types.d.ts +204 -0
- package/dist/types.d.ts.map +1 -0
- package/docs/API.expanded.md +172 -5
- package/docs/API.md +92 -2
- package/docs/TO-DO.md +168 -0
- package/docs/calltemplate-params.md +251 -0
- package/eslint.config.js +11 -5
- package/package.json +35 -9
- package/pnpm-workspace.yaml +1 -0
- package/rollup.config.js +13 -0
- package/src/AbstractJoiningTransformer.js +54 -15
- package/src/DOMJoiningTransformer.js +275 -28
- package/src/JSONJoiningTransformer.js +351 -70
- package/src/JSONPathTransformer.js +48 -30
- package/src/JSONPathTransformerContext.js +729 -107
- package/src/StringJoiningTransformer.js +311 -57
- package/src/XPathTransformer.js +27 -12
- package/src/XPathTransformerContext.js +928 -99
- package/src/index-browser.js +5 -0
- package/src/index-node.js +7 -0
- package/src/index.js +502 -98
- package/tsconfig.json +5 -2
- package/typings/xpath2-js.d.ts +40 -1
- package/src/types/xpath2-js.d.ts +0 -2
|
@@ -0,0 +1,151 @@
|
|
|
1
|
+
function _arrayLikeToArray(r, a) {
|
|
2
|
+
(null == a || a > r.length) && (a = r.length);
|
|
3
|
+
for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e];
|
|
4
|
+
return n;
|
|
5
|
+
}
|
|
6
|
+
function _arrayWithoutHoles(r) {
|
|
7
|
+
if (Array.isArray(r)) return _arrayLikeToArray(r);
|
|
8
|
+
}
|
|
9
|
+
function _iterableToArray(r) {
|
|
10
|
+
if ("undefined" != typeof Symbol && null != r[Symbol.iterator] || null != r["@@iterator"]) return Array.from(r);
|
|
11
|
+
}
|
|
12
|
+
function _nonIterableSpread() {
|
|
13
|
+
throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
|
|
14
|
+
}
|
|
15
|
+
function _toConsumableArray(r) {
|
|
16
|
+
return _arrayWithoutHoles(r) || _iterableToArray(r) || _unsupportedIterableToArray(r) || _nonIterableSpread();
|
|
17
|
+
}
|
|
18
|
+
function _unsupportedIterableToArray(r, a) {
|
|
19
|
+
if (r) {
|
|
20
|
+
if ("string" == typeof r) return _arrayLikeToArray(r, a);
|
|
21
|
+
var t = {}.toString.call(r).slice(8, -1);
|
|
22
|
+
return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0;
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
/**
|
|
27
|
+
* @typedef {JSONValue[]} JSONArray
|
|
28
|
+
*/
|
|
29
|
+
/**
|
|
30
|
+
* @typedef {null|boolean|number|string|JSONArray|{[key: string]: JSONValue}} JSONValue
|
|
31
|
+
*/
|
|
32
|
+
|
|
33
|
+
/**
|
|
34
|
+
* @callback SimpleJSONCallback
|
|
35
|
+
* @param {...JSONValue} json
|
|
36
|
+
* @returns {void}
|
|
37
|
+
*/
|
|
38
|
+
|
|
39
|
+
/**
|
|
40
|
+
* @callback SimpleJSONErrback
|
|
41
|
+
* @param {Error} err
|
|
42
|
+
* @param {string|string[]} jsonURL
|
|
43
|
+
* @returns {JSONValue}
|
|
44
|
+
*/
|
|
45
|
+
|
|
46
|
+
/**
|
|
47
|
+
* @typedef {((
|
|
48
|
+
* jsonURL: string|string[],
|
|
49
|
+
* cb?: SimpleJSONCallback,
|
|
50
|
+
* errBack?: SimpleJSONErrback
|
|
51
|
+
* ) => Promise<JSONValue>) & {
|
|
52
|
+
* _fetch?: import('./index-polyglot.js').SimpleFetch,
|
|
53
|
+
* hasURLBasePath?: boolean,
|
|
54
|
+
* basePath?: string|false
|
|
55
|
+
* }} getJSONCallback
|
|
56
|
+
*/
|
|
57
|
+
|
|
58
|
+
/**
|
|
59
|
+
* @param {object} [cfg]
|
|
60
|
+
* @param {import('./index-polyglot.js').SimpleFetch} [cfg.fetch]
|
|
61
|
+
* @returns {getJSONCallback}
|
|
62
|
+
*/
|
|
63
|
+
|
|
64
|
+
function _await(value, then, direct) {
|
|
65
|
+
if (!value || !value.then) {
|
|
66
|
+
value = Promise.resolve(value);
|
|
67
|
+
}
|
|
68
|
+
return then ? value.then(then) : value;
|
|
69
|
+
}
|
|
70
|
+
function _invoke(body, then) {
|
|
71
|
+
var result = body();
|
|
72
|
+
if (result && result.then) {
|
|
73
|
+
return result.then(then);
|
|
74
|
+
}
|
|
75
|
+
return then(result);
|
|
76
|
+
}
|
|
77
|
+
function _catch(body, recover) {
|
|
78
|
+
try {
|
|
79
|
+
var result = body();
|
|
80
|
+
} catch (e) {
|
|
81
|
+
return recover(e);
|
|
82
|
+
}
|
|
83
|
+
if (result && result.then) {
|
|
84
|
+
return result.then(void 0, recover);
|
|
85
|
+
}
|
|
86
|
+
return result;
|
|
87
|
+
}
|
|
88
|
+
function buildGetJSONWithFetch() {
|
|
89
|
+
var _ref = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},
|
|
90
|
+
_ref$fetch = _ref.fetch,
|
|
91
|
+
fetch = _ref$fetch === void 0 ? typeof window !== 'undefined' ? window.fetch : self.fetch : _ref$fetch;
|
|
92
|
+
/**
|
|
93
|
+
* @type {getJSONCallback}
|
|
94
|
+
*/
|
|
95
|
+
return function getJSON(jsonURL, cb, errBack) {
|
|
96
|
+
try {
|
|
97
|
+
var _exit = false;
|
|
98
|
+
return _await(_catch(function () {
|
|
99
|
+
return _invoke(function () {
|
|
100
|
+
if (Array.isArray(jsonURL)) {
|
|
101
|
+
return _await(Promise.all(jsonURL.map(function (url) {
|
|
102
|
+
return /** @type {getJSONCallback} */getJSON(url);
|
|
103
|
+
})), function (arrResult) {
|
|
104
|
+
if (cb) {
|
|
105
|
+
// eslint-disable-next-line promise/prefer-await-to-callbacks -- Old-style API
|
|
106
|
+
cb.apply(void 0, _toConsumableArray(arrResult));
|
|
107
|
+
}
|
|
108
|
+
_exit = true;
|
|
109
|
+
return arrResult;
|
|
110
|
+
});
|
|
111
|
+
}
|
|
112
|
+
}, function (_result) {
|
|
113
|
+
return _exit ? _result : _await(fetch(jsonURL), function (resp) {
|
|
114
|
+
return _await(resp.json(), function (result) {
|
|
115
|
+
return typeof cb === 'function'
|
|
116
|
+
// eslint-disable-next-line promise/prefer-await-to-callbacks -- Old-style API
|
|
117
|
+
? cb(result) : result;
|
|
118
|
+
// https://github.com/bcoe/c8/issues/135
|
|
119
|
+
/* c8 ignore next */
|
|
120
|
+
});
|
|
121
|
+
});
|
|
122
|
+
});
|
|
123
|
+
}, function (err) {
|
|
124
|
+
var e = /** @type {Error} */err;
|
|
125
|
+
e.message += " (File: ".concat(jsonURL, ")");
|
|
126
|
+
if (errBack) {
|
|
127
|
+
return errBack(e, jsonURL);
|
|
128
|
+
}
|
|
129
|
+
throw e;
|
|
130
|
+
// https://github.com/bcoe/c8/issues/135
|
|
131
|
+
/* c8 ignore next */
|
|
132
|
+
}));
|
|
133
|
+
/* c8 ignore next */
|
|
134
|
+
} catch (e) {
|
|
135
|
+
return Promise.reject(e);
|
|
136
|
+
}
|
|
137
|
+
};
|
|
138
|
+
}
|
|
139
|
+
|
|
140
|
+
var getJSON = buildGetJSONWithFetch();
|
|
141
|
+
|
|
142
|
+
/**
|
|
143
|
+
* For polymorphism with Node.
|
|
144
|
+
* @returns {getJSON}
|
|
145
|
+
*/
|
|
146
|
+
var buildGetJSON = function buildGetJSON() {
|
|
147
|
+
return getJSON;
|
|
148
|
+
};
|
|
149
|
+
|
|
150
|
+
export { buildGetJSON, getJSON };
|
|
151
|
+
//# sourceMappingURL=index-es.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export default {};
|
|
@@ -1,4 +1,76 @@
|
|
|
1
1
|
export default AbstractJoiningTransformer;
|
|
2
|
+
export type BaseTransformerConfig = {
|
|
3
|
+
requireSameChildren?: boolean;
|
|
4
|
+
JHTMLForJSON?: boolean;
|
|
5
|
+
mode?: "JSON" | "JavaScript";
|
|
6
|
+
};
|
|
7
|
+
/**
|
|
8
|
+
* When exposeDocuments is true, get() returns an array of XMLDocument
|
|
9
|
+
* objects (one per root element) instead of a DocumentFragment.
|
|
10
|
+
*/
|
|
11
|
+
export type DOMJoiningTransformerConfig = BaseTransformerConfig & {
|
|
12
|
+
document: Document;
|
|
13
|
+
exposeDocuments?: boolean;
|
|
14
|
+
};
|
|
15
|
+
export type JSONJoiningTransformerConfig = {
|
|
16
|
+
requireSameChildren?: boolean | undefined;
|
|
17
|
+
unwrapSingleResult?: boolean | undefined;
|
|
18
|
+
/**
|
|
19
|
+
* - When true, get() returns an array
|
|
20
|
+
* of document wrapper objects (one per root element) instead of the raw array.
|
|
21
|
+
*/
|
|
22
|
+
exposeDocuments?: boolean | undefined;
|
|
23
|
+
mode?: "JSON" | "JavaScript" | undefined;
|
|
24
|
+
};
|
|
25
|
+
/**
|
|
26
|
+
* When exposeDocuments is true, get() returns an array of document
|
|
27
|
+
* strings (one per root element) instead of a single concatenated string.
|
|
28
|
+
*/
|
|
29
|
+
export type StringJoiningTransformerConfig = BaseTransformerConfig & {
|
|
30
|
+
xmlElements?: boolean;
|
|
31
|
+
preEscapedAttributes?: boolean;
|
|
32
|
+
exposeDocuments?: boolean;
|
|
33
|
+
};
|
|
34
|
+
export type JoiningTransformerConfig<T> = T extends "string" ? StringJoiningTransformerConfig : T extends "dom" ? DOMJoiningTransformerConfig : T extends "json" ? JSONJoiningTransformerConfig : never;
|
|
35
|
+
/**
|
|
36
|
+
* @typedef {{
|
|
37
|
+
* requireSameChildren?: boolean,
|
|
38
|
+
* JHTMLForJSON?: boolean,
|
|
39
|
+
* mode?: "JSON"|"JavaScript"
|
|
40
|
+
* }} BaseTransformerConfig
|
|
41
|
+
*/
|
|
42
|
+
/**
|
|
43
|
+
* @typedef {BaseTransformerConfig & {
|
|
44
|
+
* document: Document,
|
|
45
|
+
* exposeDocuments?: boolean
|
|
46
|
+
* }} DOMJoiningTransformerConfig
|
|
47
|
+
* When exposeDocuments is true, get() returns an array of XMLDocument
|
|
48
|
+
* objects (one per root element) instead of a DocumentFragment.
|
|
49
|
+
*/
|
|
50
|
+
/**
|
|
51
|
+
* @typedef {object} JSONJoiningTransformerConfig
|
|
52
|
+
* @property {boolean} [requireSameChildren]
|
|
53
|
+
* @property {boolean} [unwrapSingleResult]
|
|
54
|
+
* @property {boolean} [exposeDocuments] - When true, get() returns an array
|
|
55
|
+
* of document wrapper objects (one per root element) instead of the raw array.
|
|
56
|
+
* @property {"JSON"|"JavaScript"} [mode]
|
|
57
|
+
*/
|
|
58
|
+
/**
|
|
59
|
+
* @typedef {BaseTransformerConfig & {
|
|
60
|
+
* xmlElements?: boolean,
|
|
61
|
+
* preEscapedAttributes?: boolean,
|
|
62
|
+
* exposeDocuments?: boolean
|
|
63
|
+
* }} StringJoiningTransformerConfig
|
|
64
|
+
* When exposeDocuments is true, get() returns an array of document
|
|
65
|
+
* strings (one per root element) instead of a single concatenated string.
|
|
66
|
+
*/
|
|
67
|
+
/**
|
|
68
|
+
* @template T
|
|
69
|
+
* @typedef {T extends "string" ? StringJoiningTransformerConfig :
|
|
70
|
+
* T extends "dom" ? DOMJoiningTransformerConfig :
|
|
71
|
+
* T extends "json" ? JSONJoiningTransformerConfig : never
|
|
72
|
+
* } JoiningTransformerConfig
|
|
73
|
+
*/
|
|
2
74
|
/**
|
|
3
75
|
* Base class for joining transformers.
|
|
4
76
|
*
|
|
@@ -13,18 +85,19 @@ export default AbstractJoiningTransformer;
|
|
|
13
85
|
* based on the current state.
|
|
14
86
|
* - get(): returns the accumulated result.
|
|
15
87
|
* - config(): temporarily tweak a config flag for the duration of a callback.
|
|
88
|
+
* @template T
|
|
16
89
|
*/
|
|
17
|
-
declare class AbstractJoiningTransformer {
|
|
90
|
+
declare class AbstractJoiningTransformer<T> {
|
|
18
91
|
/**
|
|
19
|
-
* @param {
|
|
92
|
+
* @param {JoiningTransformerConfig<T>} [cfg] - Configuration object
|
|
20
93
|
*/
|
|
21
|
-
constructor(cfg?:
|
|
94
|
+
constructor(cfg?: JoiningTransformerConfig<T>);
|
|
95
|
+
_cfg: JoiningTransformerConfig<T>;
|
|
22
96
|
/**
|
|
23
|
-
* @param {
|
|
97
|
+
* @param {JoiningTransformerConfig<T>} cfg - Configuration object
|
|
24
98
|
* @returns {void}
|
|
25
99
|
*/
|
|
26
|
-
setConfig(cfg
|
|
27
|
-
_cfg: any;
|
|
100
|
+
setConfig(cfg: JoiningTransformerConfig<T>): void;
|
|
28
101
|
/**
|
|
29
102
|
* @param {string} type - Type name
|
|
30
103
|
* @param {string} embedType - Embed type name
|
|
@@ -33,10 +106,11 @@ declare class AbstractJoiningTransformer {
|
|
|
33
106
|
_requireSameChildren(type: string, embedType: string): void;
|
|
34
107
|
/**
|
|
35
108
|
* @param {string} prop - Configuration property name
|
|
36
|
-
* @param {
|
|
37
|
-
* @param {
|
|
109
|
+
* @param {any} val - Configuration property value
|
|
110
|
+
* @param {(this: AbstractJoiningTransformer<T>) => void} [cb]
|
|
111
|
+
* Optional callback invoked with this instance
|
|
38
112
|
* @returns {void}
|
|
39
113
|
*/
|
|
40
|
-
config(prop: string, val: any, cb?:
|
|
114
|
+
config(prop: string, val: any, cb?: (this: AbstractJoiningTransformer<T>) => void): void;
|
|
41
115
|
}
|
|
42
116
|
//# 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":";oCAKa;IACR,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,IAAI,CAAC,EAAE,MAAM,GAAC,YAAY,CAAA;CAC3B;;;;;0CAIS,qBAAqB,GAAG;IAChC,QAAQ,EAAE,QAAQ,CAAC;IACnB,eAAe,CAAC,EAAE,OAAO,CAAA;CAC1B;;;;;;;;;;;;;;;6CAaS,qBAAqB,GAAG;IAChC,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,eAAe,CAAC,EAAE,OAAO,CAAA;CAC1B;qCAKS,CAAC,IACD,CAAC,SAAS,QAAQ,GAAG,8BAA8B,GAC3D,CAAC,SAAS,KAAK,GAAG,2BAA2B,GAC7C,CAAC,SAAS,MAAM,GAAG,4BAA4B,GAAG,KAAK;AArC5D;;;;;;GAMG;AAEH;;;;;;;GAOG;AACH;;;;;;;GAOG;AACH;;;;;;;;GAQG;AACH;;;;;;GAMG;AAEH;;;;;;;;;;;;;;;GAeG;AACH,yCAFa,CAAC;IAGZ;;OAEG;IACH,kBAFW,wBAAwB,CAAC,CAAC,CAAC,EAKrC;IADC,kCAAkE;IAGpE;;;OAGG;IACH,eAHW,wBAAwB,CAAC,CAAC,CAAC,GACzB,IAAI,CAIhB;IAED;;;;OAIG;IACH,2BAJW,MAAM,aACN,MAAM,GACJ,IAAI,CAUhB;IAED;;;;;;OAMG;IACH,aANW,MAAM,OACN,GAAG,OACH,CAAC,IAAI,EAAE,0BAA0B,CAAC,CAAC,CAAC,KAAK,IAAI,GAE3C,IAAI,CAUhB;CACF"}
|
|
@@ -1,4 +1,10 @@
|
|
|
1
1
|
export default DOMJoiningTransformer;
|
|
2
|
+
export type SimpleCallback = (this: DOMJoiningTransformer) => void;
|
|
3
|
+
/**
|
|
4
|
+
* @callback SimpleCallback
|
|
5
|
+
* @this {DOMJoiningTransformer}
|
|
6
|
+
* @returns {void}
|
|
7
|
+
*/
|
|
2
8
|
/**
|
|
3
9
|
* Joining transformer that accumulates into a DOM tree.
|
|
4
10
|
*
|
|
@@ -6,17 +12,24 @@ export default DOMJoiningTransformer;
|
|
|
6
12
|
* It expects templates to build DOM nodes explicitly (e.g., via element(),
|
|
7
13
|
* attribute(), and text()), though string/number/boolean will append text
|
|
8
14
|
* nodes for convenience.
|
|
15
|
+
* @extends {AbstractJoiningTransformer<"dom">}
|
|
9
16
|
*/
|
|
10
|
-
declare class DOMJoiningTransformer extends AbstractJoiningTransformer {
|
|
17
|
+
declare class DOMJoiningTransformer extends AbstractJoiningTransformer<"dom"> {
|
|
11
18
|
/**
|
|
12
19
|
* @param {DocumentFragment|Element} o - Initial DOM node
|
|
13
|
-
* @param {
|
|
14
|
-
*
|
|
15
|
-
*/
|
|
16
|
-
constructor(o: DocumentFragment | Element, cfg:
|
|
17
|
-
|
|
18
|
-
}
|
|
19
|
-
|
|
20
|
+
* @param {import('./AbstractJoiningTransformer.js').
|
|
21
|
+
* DOMJoiningTransformerConfig} cfg - Configuration object
|
|
22
|
+
*/
|
|
23
|
+
constructor(o: DocumentFragment | Element, cfg: import("./AbstractJoiningTransformer.js").DOMJoiningTransformerConfig);
|
|
24
|
+
_dom: Element | DocumentFragment;
|
|
25
|
+
/** @type {XMLDocument[]} */
|
|
26
|
+
_docs: XMLDocument[];
|
|
27
|
+
/** @type {Array<{href: string, document: XMLDocument, format?: string}>} */
|
|
28
|
+
_resultDocuments: Array<{
|
|
29
|
+
href: string;
|
|
30
|
+
document: XMLDocument;
|
|
31
|
+
format?: string;
|
|
32
|
+
}>;
|
|
20
33
|
/**
|
|
21
34
|
* @param {Node} item
|
|
22
35
|
* @returns {void}
|
|
@@ -28,35 +41,36 @@ declare class DOMJoiningTransformer extends AbstractJoiningTransformer {
|
|
|
28
41
|
*/
|
|
29
42
|
append(item: string | Node): void;
|
|
30
43
|
/**
|
|
31
|
-
* @returns {DocumentFragment|Element}
|
|
44
|
+
* @returns {DocumentFragment|Element|XMLDocument[]}
|
|
32
45
|
*/
|
|
33
|
-
get(): DocumentFragment | Element;
|
|
46
|
+
get(): DocumentFragment | Element | XMLDocument[];
|
|
34
47
|
/**
|
|
35
48
|
* @param {string} prop - Property name
|
|
36
|
-
* @param {
|
|
49
|
+
* @param {any} val - Property value
|
|
37
50
|
* @returns {void}
|
|
38
51
|
*/
|
|
39
52
|
propValue(prop: string, val: any): void;
|
|
40
53
|
/**
|
|
41
|
-
* @param {
|
|
42
|
-
* @param {
|
|
54
|
+
* @param {Record<string, unknown>} obj - Object to serialize
|
|
55
|
+
* @param {(this: DOMJoiningTransformer) => void} [cb] - Callback function.
|
|
43
56
|
* @param {any[]} [usePropertySets] - Property sets to use
|
|
44
|
-
* @param {
|
|
57
|
+
* @param {Record<string, unknown>} [propSets] - Additional property sets
|
|
45
58
|
* @returns {DOMJoiningTransformer}
|
|
46
59
|
*/
|
|
47
|
-
object(obj:
|
|
60
|
+
object(obj: Record<string, unknown>, cb?: (this: DOMJoiningTransformer) => void, usePropertySets?: any[], propSets?: Record<string, unknown>): DOMJoiningTransformer;
|
|
48
61
|
/**
|
|
49
62
|
* @param {any[]|Element} arr
|
|
50
|
-
* @param {
|
|
63
|
+
* @param {(this: DOMJoiningTransformer) => void} [cb] - Callback function
|
|
51
64
|
* @returns {DOMJoiningTransformer}
|
|
52
65
|
*/
|
|
53
|
-
array(arr: any[] | Element, cb?:
|
|
66
|
+
array(arr: any[] | Element, cb?: (this: DOMJoiningTransformer) => void): DOMJoiningTransformer;
|
|
54
67
|
/**
|
|
55
68
|
* @param {string} str - String value
|
|
56
|
-
* @param {
|
|
69
|
+
* @param {(this: DOMJoiningTransformer) => void} [cb] - Callback
|
|
70
|
+
* function (unused)
|
|
57
71
|
* @returns {DOMJoiningTransformer}
|
|
58
72
|
*/
|
|
59
|
-
string(str: string, cb:
|
|
73
|
+
string(str: string, cb?: (this: DOMJoiningTransformer) => void): DOMJoiningTransformer;
|
|
60
74
|
/**
|
|
61
75
|
* @param {number} num - Number value
|
|
62
76
|
* @returns {DOMJoiningTransformer}
|
|
@@ -81,17 +95,25 @@ declare class DOMJoiningTransformer extends AbstractJoiningTransformer {
|
|
|
81
95
|
*/
|
|
82
96
|
nonfiniteNumber(num: number): DOMJoiningTransformer;
|
|
83
97
|
/**
|
|
84
|
-
* @param {
|
|
98
|
+
* @param {(...args: any[]) => any} func - Function to stringify
|
|
99
|
+
* @returns {DOMJoiningTransformer}
|
|
100
|
+
*/
|
|
101
|
+
function(func: (...args: any[]) => any): DOMJoiningTransformer;
|
|
102
|
+
/**
|
|
103
|
+
* @param {import('./StringJoiningTransformer.js').OutputConfig} cfg
|
|
85
104
|
* @returns {DOMJoiningTransformer}
|
|
86
105
|
*/
|
|
87
|
-
|
|
106
|
+
output(cfg: import("./StringJoiningTransformer.js").OutputConfig): DOMJoiningTransformer;
|
|
107
|
+
_outputConfig: any;
|
|
108
|
+
mediaType: string | undefined;
|
|
88
109
|
/**
|
|
89
|
-
* @param {string} elName - Element name
|
|
90
|
-
* @param {
|
|
91
|
-
* @param {
|
|
110
|
+
* @param {Element|string} elName - Element name
|
|
111
|
+
* @param {Record<string, string>} [atts] - Attributes object
|
|
112
|
+
* @param {(this: DOMJoiningTransformer) => void} [cb] - Callback function
|
|
92
113
|
* @returns {DOMJoiningTransformer}
|
|
93
114
|
*/
|
|
94
|
-
element(elName: string, atts?:
|
|
115
|
+
element(elName: Element | string, atts?: Record<string, string>, cb?: (this: DOMJoiningTransformer) => void): DOMJoiningTransformer;
|
|
116
|
+
root: any;
|
|
95
117
|
/**
|
|
96
118
|
* @param {string} name
|
|
97
119
|
* @param {string} val
|
|
@@ -103,11 +125,49 @@ declare class DOMJoiningTransformer extends AbstractJoiningTransformer {
|
|
|
103
125
|
* @returns {DOMJoiningTransformer}
|
|
104
126
|
*/
|
|
105
127
|
text(txt: string): DOMJoiningTransformer;
|
|
128
|
+
/**
|
|
129
|
+
* @param {string} text
|
|
130
|
+
* @returns {DOMJoiningTransformer}}
|
|
131
|
+
*/
|
|
132
|
+
comment(text: string): DOMJoiningTransformer;
|
|
133
|
+
/**
|
|
134
|
+
* @param {string} target
|
|
135
|
+
* @param {string} data
|
|
136
|
+
* @returns {DOMJoiningTransformer}}
|
|
137
|
+
*/
|
|
138
|
+
processingInstruction(target: string, data: string): DOMJoiningTransformer;
|
|
106
139
|
/**
|
|
107
140
|
* @param {string} str
|
|
108
141
|
* @returns {DOMJoiningTransformer}
|
|
109
142
|
*/
|
|
110
143
|
plainText(str: string): DOMJoiningTransformer;
|
|
144
|
+
/**
|
|
145
|
+
* Creates a new XML document and executes a callback in its context.
|
|
146
|
+
* Similar to XSLT's xsl:document, this allows templates to generate
|
|
147
|
+
* multiple output documents. The created document is pushed to this._docs
|
|
148
|
+
* and will be included in the result when exposeDocuments is true.
|
|
149
|
+
*
|
|
150
|
+
* @param {(this: DOMJoiningTransformer) => void} cb
|
|
151
|
+
* Callback that builds the document content
|
|
152
|
+
* @param {import('./StringJoiningTransformer.js').OutputConfig} [cfg]
|
|
153
|
+
* Output configuration for the document (encoding, doctype, etc.)
|
|
154
|
+
* @returns {DOMJoiningTransformer}
|
|
155
|
+
*/
|
|
156
|
+
document(cb: (this: DOMJoiningTransformer) => void, cfg?: import("./StringJoiningTransformer.js").OutputConfig): DOMJoiningTransformer;
|
|
157
|
+
/**
|
|
158
|
+
* Creates a new result document with metadata (href, format).
|
|
159
|
+
* Similar to XSLT's xsl:result-document, this allows templates to generate
|
|
160
|
+
* multiple output documents with associated metadata like URIs. The created
|
|
161
|
+
* document is stored in this._resultDocuments with the provided href.
|
|
162
|
+
*
|
|
163
|
+
* @param {string} href - URI/path for the result document
|
|
164
|
+
* @param {(this: DOMJoiningTransformer) => void} cb
|
|
165
|
+
* Callback that builds the document content
|
|
166
|
+
* @param {import('./StringJoiningTransformer.js').OutputConfig} [cfg]
|
|
167
|
+
* Output configuration for the document (encoding, doctype, format, etc.)
|
|
168
|
+
* @returns {DOMJoiningTransformer}
|
|
169
|
+
*/
|
|
170
|
+
resultDocument(href: string, cb: (this: DOMJoiningTransformer) => void, cfg?: import("./StringJoiningTransformer.js").OutputConfig): DOMJoiningTransformer;
|
|
111
171
|
}
|
|
112
172
|
import AbstractJoiningTransformer from './AbstractJoiningTransformer.js';
|
|
113
173
|
//# sourceMappingURL=DOMJoiningTransformer.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DOMJoiningTransformer.d.ts","sourceRoot":"","sources":["../src/DOMJoiningTransformer.js"],"names":[],"mappings":";
|
|
1
|
+
{"version":3,"file":"DOMJoiningTransformer.d.ts","sourceRoot":"","sources":["../src/DOMJoiningTransformer.js"],"names":[],"mappings":";8DAMa,IAAI;AAHjB;;;;GAIG;AAEH;;;;;;;;GAQG;AACH;IACE;;;;OAIG;IACH,eAJW,gBAAgB,GAAC,OAAO,OACxB,OAAO,iCAAiC,EAC9C,2BAA2B,EAS/B;IALC,iCAAsD;IACtD,4BAA4B;IAC5B,OADW,WAAW,EAAE,CACT;IACf,4EAA4E;IAC5E,kBADW,KAAK,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,WAAW,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAA;KAAC,CAAC,CAC9C;IAG5B;;;OAGG;IACH,gBAHW,IAAI,GACF,IAAI,CAIhB;IAED;;;OAGG;IACH,aAHW,MAAM,GAAC,IAAI,GACT,IAAI,CAIhB;IAED;;OAEG;IACH,OAFa,gBAAgB,GAAC,OAAO,GAAC,WAAW,EAAE,CAOlD;IAED;;;;OAIG;IACH,gBAJW,MAAM,OACN,GAAG,GACD,IAAI,CAKhB;IAED;;;;;;OAMG;IACH,YANW,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,OACvB,CAAC,IAAI,EAAE,qBAAqB,KAAK,IAAI,oBACrC,GAAG,EAAE,aACL,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GACrB,qBAAqB,CAYjC;IAED;;;;OAIG;IACH,WAJW,GAAG,EAAE,GAAC,OAAO,OACb,CAAC,IAAI,EAAE,qBAAqB,KAAK,IAAI,GACnC,qBAAqB,CAWjC;IAED;;;;;OAKG;IACH,YALW,MAAM,OACN,CAAC,IAAI,EAAE,qBAAqB,KAAK,IAAI,GAEnC,qBAAqB,CAMjC;IAED;;;OAGG;IACH,YAHW,MAAM,GACJ,qBAAqB,CAKjC;IAED;;;OAGG;IACH,cAHW,OAAO,GACL,qBAAqB,CAKjC;IAED;;OAEG;IACH,QAFa,qBAAqB,CAKjC;IAED;;OAEG;IACH,aAFa,qBAAqB,CAUjC;IAED;;;OAGG;IACH,qBAHW,MAAM,GACJ,qBAAqB,CAUjC;IAED;;;OAGG;IACH,eAHW,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,GACrB,qBAAqB,CAUjC;IAED;;;OAGG;IACH,YAHW,OAAO,+BAA+B,EAAE,YAAY,GAClD,qBAAqB,CAUjC;IALC,mBAAwB;IAGxB,8BAA8B;IAIhC;;;;;OAKG;IACH,gBALW,OAAO,GAAC,MAAM,SACd,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,OACtB,CAAC,IAAI,EAAE,qBAAqB,KAAK,IAAI,GACnC,qBAAqB,CAqHjC;IA3GG,UAAkB;IA6GtB;;;;OAIG;IACH,gBAJW,MAAM,OACN,MAAM,GACJ,qBAAqB,CASjC;IAED;;;OAGG;IACH,UAHW,MAAM,GACJ,qBAAqB,CAKjC;IAED;;;OAGG;IACH,cAHW,MAAM,GACJ,qBAAqB,CAWjC;IAED;;;;OAIG;IACH,8BAJW,MAAM,QACN,MAAM,GACJ,qBAAqB,CAcjC;IAED;;;OAGG;IACH,eAHW,MAAM,GACJ,qBAAqB,CAKjC;IAED;;;;;;;;;;;OAWG;IACH,aANW,CAAC,IAAI,EAAE,qBAAqB,KAAK,IAAI,QAErC,OAAO,+BAA+B,EAAE,YAAY,GAElD,qBAAqB,CA4BjC;IAED;;;;;;;;;;;;OAYG;IACH,qBAPW,MAAM,MACN,CAAC,IAAI,EAAE,qBAAqB,KAAK,IAAI,QAErC,OAAO,+BAA+B,EAAE,YAAY,GAElD,qBAAqB,CA2CjC;CACF;uCAhesC,iCAAiC"}
|