@dialecte/scl 0.3.15 → 0.3.16
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/{hooks-CLIa7kxj.js → hooks-BBGXNK0x.js} +1916 -1292
- package/dist/v2019C1/config/dialecte.config.d.ts +2 -2
- package/dist/v2019C1/config/dialecte.config.d.ts.map +1 -1
- package/dist/v2019C1/constants/topology-tags.d.ts +7 -0
- package/dist/v2019C1/constants/topology-tags.d.ts.map +1 -1
- package/dist/v2019C1/extensions/clean-up/transaction/orphan-lnode-bindings.d.ts +7 -2
- package/dist/v2019C1/extensions/clean-up/transaction/orphan-lnode-bindings.d.ts.map +1 -1
- package/dist/v2019C1/extensions/identity/index.d.ts +2 -0
- package/dist/v2019C1/extensions/identity/index.d.ts.map +1 -1
- package/dist/v2019C1/extensions/identity/query/index.d.ts +3 -0
- package/dist/v2019C1/extensions/identity/query/index.d.ts.map +1 -0
- package/dist/v2019C1/extensions/identity/query/resolve-identity.d.ts +18 -0
- package/dist/v2019C1/extensions/identity/query/resolve-identity.d.ts.map +1 -0
- package/dist/v2019C1/extensions/identity/query/resolve-identity.types.d.ts +19 -0
- package/dist/v2019C1/extensions/identity/query/resolve-identity.types.d.ts.map +1 -0
- package/dist/v2019C1/extensions/identity/transaction/write-identity.d.ts +3 -0
- package/dist/v2019C1/extensions/identity/transaction/write-identity.d.ts.map +1 -1
- package/dist/v2019C1/extensions/identity/transaction/write-identity.types.d.ts +1 -1
- package/dist/v2019C1/extensions/identity/transaction/write-identity.types.d.ts.map +1 -1
- package/dist/v2019C1/extensions/index.d.ts +1 -0
- package/dist/v2019C1/extensions/index.d.ts.map +1 -1
- package/dist/v2019C1/extensions/lifecycle/apply/apply.d.ts +2 -2
- package/dist/v2019C1/extensions/lifecycle/apply/apply.d.ts.map +1 -1
- package/dist/v2019C1/extensions/lifecycle/apply/apply.types.d.ts +4 -0
- package/dist/v2019C1/extensions/lifecycle/apply/apply.types.d.ts.map +1 -1
- package/dist/v2019C1/extensions/lifecycle/contract.types.d.ts +20 -1
- package/dist/v2019C1/extensions/lifecycle/contract.types.d.ts.map +1 -1
- package/dist/v2019C1/extensions/lifecycle/cross-cutting/finalize-cloned-identity.d.ts +24 -0
- package/dist/v2019C1/extensions/lifecycle/cross-cutting/finalize-cloned-identity.d.ts.map +1 -0
- package/dist/v2019C1/extensions/lifecycle/cross-cutting/index.d.ts +1 -0
- package/dist/v2019C1/extensions/lifecycle/cross-cutting/index.d.ts.map +1 -1
- package/dist/v2019C1/extensions/lifecycle/engine/correlate.d.ts +30 -0
- package/dist/v2019C1/extensions/lifecycle/engine/correlate.d.ts.map +1 -0
- package/dist/v2019C1/extensions/lifecycle/engine/decide.d.ts +9 -2
- package/dist/v2019C1/extensions/lifecycle/engine/decide.d.ts.map +1 -1
- package/dist/v2019C1/extensions/lifecycle/engine/diff.d.ts +7 -1
- package/dist/v2019C1/extensions/lifecycle/engine/diff.d.ts.map +1 -1
- package/dist/v2019C1/extensions/lifecycle/engine/diff.types.d.ts +9 -1
- package/dist/v2019C1/extensions/lifecycle/engine/diff.types.d.ts.map +1 -1
- package/dist/v2019C1/extensions/lifecycle/engine/group.d.ts +1 -1
- package/dist/v2019C1/extensions/lifecycle/engine/match-child.d.ts +31 -0
- package/dist/v2019C1/extensions/lifecycle/engine/match-child.d.ts.map +1 -0
- package/dist/v2019C1/extensions/lifecycle/engine/match-key.d.ts +26 -0
- package/dist/v2019C1/extensions/lifecycle/engine/match-key.d.ts.map +1 -0
- package/dist/v2019C1/extensions/lifecycle/engine/reconcile.d.ts +8 -2
- package/dist/v2019C1/extensions/lifecycle/engine/reconcile.d.ts.map +1 -1
- package/dist/v2019C1/extensions/lifecycle/engine/reference-match.d.ts +25 -0
- package/dist/v2019C1/extensions/lifecycle/engine/reference-match.d.ts.map +1 -0
- package/dist/v2019C1/extensions/lifecycle/extract/transaction/post-extraction-cleanup.d.ts +3 -3
- package/dist/v2019C1/extensions/lifecycle/extract/transaction/ssd.d.ts +6 -4
- package/dist/v2019C1/extensions/lifecycle/extract/transaction/ssd.d.ts.map +1 -1
- package/dist/v2019C1/extensions/lifecycle/index.d.ts +1 -1
- package/dist/v2019C1/extensions/lifecycle/instance/find-instance.d.ts +30 -9
- package/dist/v2019C1/extensions/lifecycle/instance/find-instance.d.ts.map +1 -1
- package/dist/v2019C1/extensions/lifecycle/instance/index.d.ts +1 -1
- package/dist/v2019C1/extensions/lifecycle/instance/index.d.ts.map +1 -1
- package/dist/v2019C1/extensions/lifecycle/instantiate/transaction/asd.d.ts.map +1 -1
- package/dist/v2019C1/extensions/lifecycle/instantiate/transaction/asd.types.d.ts +6 -0
- package/dist/v2019C1/extensions/lifecycle/instantiate/transaction/asd.types.d.ts.map +1 -1
- package/dist/v2019C1/extensions/lifecycle/instantiate/transaction/fsd.d.ts.map +1 -1
- package/dist/v2019C1/extensions/lifecycle/instantiate/transaction/fsd.types.d.ts +6 -0
- package/dist/v2019C1/extensions/lifecycle/instantiate/transaction/fsd.types.d.ts.map +1 -1
- package/dist/v2019C1/extensions/lifecycle/instantiate/transaction/index.d.ts +2 -0
- package/dist/v2019C1/extensions/lifecycle/instantiate/transaction/index.d.ts.map +1 -1
- package/dist/v2019C1/extensions/lifecycle/instantiate/transaction/ssd.d.ts +19 -0
- package/dist/v2019C1/extensions/lifecycle/instantiate/transaction/ssd.d.ts.map +1 -0
- package/dist/v2019C1/extensions/lifecycle/instantiate/transaction/ssd.types.d.ts +25 -0
- package/dist/v2019C1/extensions/lifecycle/instantiate/transaction/ssd.types.d.ts.map +1 -0
- package/dist/v2019C1/extensions/lifecycle/layers/topology/clone-topology-content.d.ts +15 -12
- package/dist/v2019C1/extensions/lifecycle/layers/topology/clone-topology-content.d.ts.map +1 -1
- package/dist/v2019C1/extensions/lifecycle/layers/topology/clone-topology-content.types.d.ts +14 -0
- package/dist/v2019C1/extensions/lifecycle/layers/topology/clone-topology-content.types.d.ts.map +1 -0
- package/dist/v2019C1/extensions/lifecycle/layers/topology/ensure-topology-frame.d.ts +25 -0
- package/dist/v2019C1/extensions/lifecycle/layers/topology/ensure-topology-frame.d.ts.map +1 -0
- package/dist/v2019C1/extensions/lifecycle/layers/topology/ensure-topology-frame.types.d.ts +22 -0
- package/dist/v2019C1/extensions/lifecycle/layers/topology/ensure-topology-frame.types.d.ts.map +1 -0
- package/dist/v2019C1/extensions/lifecycle/layers/topology/index.d.ts +5 -0
- package/dist/v2019C1/extensions/lifecycle/layers/topology/index.d.ts.map +1 -1
- package/dist/v2019C1/extensions/lifecycle/layers/topology/reconcile-topology-frame.d.ts +29 -0
- package/dist/v2019C1/extensions/lifecycle/layers/topology/reconcile-topology-frame.d.ts.map +1 -0
- package/dist/v2019C1/extensions/lifecycle/layers/topology/scope-content.d.ts +15 -0
- package/dist/v2019C1/extensions/lifecycle/layers/topology/scope-content.d.ts.map +1 -0
- package/dist/v2019C1/extensions/lifecycle/layers/topology/scope-content.types.d.ts +8 -0
- package/dist/v2019C1/extensions/lifecycle/layers/topology/scope-content.types.d.ts.map +1 -0
- package/dist/v2019C1/extensions/lifecycle/report/presentation-scope.d.ts.map +1 -1
- package/dist/v2019C1/extensions/lifecycle/report/query/index.d.ts +1 -0
- package/dist/v2019C1/extensions/lifecycle/report/query/index.d.ts.map +1 -1
- package/dist/v2019C1/extensions/lifecycle/report/query/report-asd.d.ts +1 -0
- package/dist/v2019C1/extensions/lifecycle/report/query/report-asd.d.ts.map +1 -1
- package/dist/v2019C1/extensions/lifecycle/report/query/report-fsd.d.ts +2 -1
- package/dist/v2019C1/extensions/lifecycle/report/query/report-fsd.d.ts.map +1 -1
- package/dist/v2019C1/extensions/lifecycle/report/query/report-function-satellites.d.ts +1 -1
- package/dist/v2019C1/extensions/lifecycle/report/query/report-function.d.ts +1 -1
- package/dist/v2019C1/extensions/lifecycle/report/query/report-ssd.d.ts +22 -0
- package/dist/v2019C1/extensions/lifecycle/report/query/report-ssd.d.ts.map +1 -0
- package/dist/v2019C1/extensions/lifecycle/report/query/report-topology-frame.d.ts +23 -0
- package/dist/v2019C1/extensions/lifecycle/report/query/report-topology-frame.d.ts.map +1 -0
- package/dist/v2019C1/extensions/lifecycle/report/query/satellite-companions.d.ts +1 -1
- package/dist/v2019C1/extensions/lifecycle/report/query/satellite-companions.d.ts.map +1 -1
- package/dist/v2019C1/extensions/lifecycle/report/report.d.ts +1 -1
- package/dist/v2019C1/extensions/lifecycle/report/report.d.ts.map +1 -1
- package/dist/v2019C1/extensions/lifecycle/scenario.d.ts +1 -2
- package/dist/v2019C1/extensions/lifecycle/scenario.d.ts.map +1 -1
- package/dist/v2019C1/extensions/lifecycle/transplant/transaction/primitives/merge-children-into.d.ts +5 -0
- package/dist/v2019C1/extensions/lifecycle/transplant/transaction/primitives/merge-children-into.d.ts.map +1 -1
- package/dist/v2019C1/extensions/lifecycle/update/transaction/asd.d.ts +3 -1
- package/dist/v2019C1/extensions/lifecycle/update/transaction/asd.d.ts.map +1 -1
- package/dist/v2019C1/extensions/lifecycle/update/transaction/cross-cutting-satellites.d.ts +4 -3
- package/dist/v2019C1/extensions/lifecycle/update/transaction/cross-cutting-satellites.d.ts.map +1 -1
- package/dist/v2019C1/extensions/lifecycle/update/transaction/fsd.d.ts +3 -2
- package/dist/v2019C1/extensions/lifecycle/update/transaction/fsd.d.ts.map +1 -1
- package/dist/v2019C1/extensions/lifecycle/update/transaction/function-satellites.d.ts +2 -2
- package/dist/v2019C1/extensions/lifecycle/update/transaction/function-satellites.d.ts.map +1 -1
- package/dist/v2019C1/extensions/lifecycle/update/transaction/index.d.ts +1 -0
- package/dist/v2019C1/extensions/lifecycle/update/transaction/index.d.ts.map +1 -1
- package/dist/v2019C1/extensions/lifecycle/update/transaction/satellite-reconcile.d.ts +2 -1
- package/dist/v2019C1/extensions/lifecycle/update/transaction/satellite-reconcile.d.ts.map +1 -1
- package/dist/v2019C1/extensions/lifecycle/update/transaction/ssd.d.ts +36 -0
- package/dist/v2019C1/extensions/lifecycle/update/transaction/ssd.d.ts.map +1 -0
- package/dist/v2019C1/hooks/after-standardized-record/uuid-attribute.d.ts.map +1 -1
- package/dist/v2019C1/hooks/io/io-hooks.d.ts +2 -2
- package/dist/v2019C1/index.js +10 -10
- package/dist/v2019C1/test/assert-valid-scl-xml.d.ts +18 -0
- package/dist/v2019C1/test/assert-valid-scl-xml.d.ts.map +1 -0
- package/dist/v2019C1/test/hydrated-test.d.ts +9 -1
- package/dist/v2019C1/test/hydrated-test.d.ts.map +1 -1
- package/dist/v2019C1/test.js +62 -18
- package/package.json +4 -2
package/dist/v2019C1/test.js
CHANGED
|
@@ -1,26 +1,70 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { CUSTOM_RECORD_ID_ATTRIBUTE as
|
|
3
|
-
import { XMLNS_DEV_NAMESPACE as
|
|
1
|
+
import { F as e, M as t, n, r, t as i } from "../hooks-BBGXNK0x.js";
|
|
2
|
+
import { CUSTOM_RECORD_ID_ATTRIBUTE as a, CUSTOM_RECORD_ID_ATTRIBUTE_NAME as o, XMLNS_XSI_NAMESPACE as s } from "@dialecte/core/helpers";
|
|
3
|
+
import { XMLNS_DEV_NAMESPACE as c, createTestProject as l, createTestRecordFactory as u, createTestRunner as d, createXmlAssertions as f } from "@dialecte/core/test";
|
|
4
|
+
//#region src/v2019C1/test/assert-valid-scl-xml.ts
|
|
5
|
+
var p = e;
|
|
6
|
+
function m(e, t) {
|
|
7
|
+
return ((e ? p[e]?.children?.details?.[t]?.namespace : void 0) ?? p[t]?.namespace)?.uri;
|
|
8
|
+
}
|
|
9
|
+
function h(e, t) {
|
|
10
|
+
let n = e.children;
|
|
11
|
+
return n ? n.any === !0 || n.sequence?.includes(t) ? !0 : n.details ? t in n.details : !1 : !1;
|
|
12
|
+
}
|
|
13
|
+
function g(e) {
|
|
14
|
+
return new Set([...e.attributes?.sequence ?? [], ...Object.keys(e.attributes?.details ?? {})]);
|
|
15
|
+
}
|
|
16
|
+
function _(e, t = "test XML", n = {}) {
|
|
17
|
+
let r = n.requireComplete ?? !0, i = new DOMParser().parseFromString(e, "application/xml"), a = i.querySelector("parsererror");
|
|
18
|
+
if (a) throw Error(`${t}: malformed XML — ${a.textContent?.trim()}`);
|
|
19
|
+
let o = [], s = (e, t) => {
|
|
20
|
+
let n = e.localName, i = p[n], a = m(t, n);
|
|
21
|
+
if (a !== void 0 && e.namespaceURI !== a) {
|
|
22
|
+
let n = t ? ` under <${t}>` : "";
|
|
23
|
+
o.push(`[namespace] <${e.tagName}>${n}: is in ${e.namespaceURI ?? "(no namespace)"}, schema declares ${a}`);
|
|
24
|
+
}
|
|
25
|
+
let c = t ? p[t] : void 0;
|
|
26
|
+
if (c && !h(c, n) && o.push(`[containment] <${n}> is not a valid child of <${t}>`), i?.attributes) {
|
|
27
|
+
let t = g(i);
|
|
28
|
+
for (let r of Array.from(e.attributes)) r.namespaceURI === null && (t.has(r.localName) || o.push(`[attribute] <${n}> has unknown attribute '${r.localName}'`));
|
|
29
|
+
if (r) for (let [t, r] of Object.entries(i.attributes.details ?? {})) r?.required && !e.hasAttribute(t) && o.push(`[required] <${n}> is missing required attribute '${t}'`);
|
|
30
|
+
}
|
|
31
|
+
for (let t of Array.from(e.children)) s(t, n);
|
|
32
|
+
};
|
|
33
|
+
if (i.documentElement && s(i.documentElement, void 0), o.length > 0) throw Error(`${t}: not valid SCL:\n ${o.join("\n ")}`);
|
|
34
|
+
}
|
|
35
|
+
//#endregion
|
|
4
36
|
//#region src/v2019C1/test/hydrated-test.ts
|
|
5
|
-
var
|
|
6
|
-
...
|
|
7
|
-
...
|
|
8
|
-
},
|
|
9
|
-
dialecteConfig:
|
|
10
|
-
extensions:
|
|
11
|
-
hooks:
|
|
37
|
+
var v = {
|
|
38
|
+
...n(),
|
|
39
|
+
...i
|
|
40
|
+
}, y = `xmlns="${t.namespaces.default.uri}"`, b = `xmlns:${t.namespaces.v2019C1.prefix}="${t.namespaces.v2019C1.uri}"`, x = `${y} ${b} ${c} ${s}`, S = { base: r }, C = d({
|
|
41
|
+
dialecteConfig: t,
|
|
42
|
+
extensions: S,
|
|
43
|
+
hooks: v
|
|
12
44
|
});
|
|
13
|
-
|
|
14
|
-
let { sourceXml:
|
|
15
|
-
|
|
45
|
+
function w(e) {
|
|
46
|
+
for (let [t, n] of Object.entries(e)) _(n.sourceXml, `${t} › sourceXml`, { requireComplete: !1 }), n.targetXml && _(n.targetXml, `${t} › targetXml`, { requireComplete: !1 });
|
|
47
|
+
}
|
|
48
|
+
var T = {
|
|
49
|
+
...C,
|
|
50
|
+
withExport(e) {
|
|
51
|
+
w(e.testCases), C.withExport(e);
|
|
52
|
+
},
|
|
53
|
+
withoutExport(e) {
|
|
54
|
+
w(e.testCases), C.withoutExport(e);
|
|
55
|
+
}
|
|
56
|
+
};
|
|
57
|
+
async function E(e) {
|
|
58
|
+
let { sourceXml: n, targetXml: r, dev: i } = e;
|
|
59
|
+
return _(n, "sourceXml", { requireComplete: !1 }), r && _(r, "targetXml", { requireComplete: !1 }), l({
|
|
16
60
|
sourceXml: n,
|
|
17
61
|
targetXml: r,
|
|
18
|
-
dialecteConfig:
|
|
19
|
-
extensions:
|
|
20
|
-
hooks:
|
|
62
|
+
dialecteConfig: t,
|
|
63
|
+
extensions: S,
|
|
64
|
+
hooks: v,
|
|
21
65
|
dev: i
|
|
22
66
|
});
|
|
23
67
|
}
|
|
24
|
-
var
|
|
68
|
+
var D = u(t), { assertExpectedElementQueries: O, assertUnexpectedElementQueries: k } = f({ namespaces: t.namespaces });
|
|
25
69
|
//#endregion
|
|
26
|
-
export {
|
|
70
|
+
export { x as ALL_XMLNS_NAMESPACES, a as CUSTOM_RECORD_ID_ATTRIBUTE, o as CUSTOM_RECORD_ID_ATTRIBUTE_NAME, b as XMLNS_SCL_6_100_NAMESPACE, y as XMLNS_SCL_NAMESPACE, O as assertExpectedElementQueries, k as assertUnexpectedElementQueries, _ as assertValidSclXml, E as createSclTestProject, D as createSclTestRecord, T as runSclTestCases };
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@dialecte/scl",
|
|
3
|
-
"version": "0.3.
|
|
3
|
+
"version": "0.3.16",
|
|
4
4
|
"description": "Dialecte - SCL (Substation Configuration Language) sdk",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"repository": {
|
|
@@ -44,6 +44,8 @@
|
|
|
44
44
|
"lint:fix": "oxlint . --fix -D correctness --ignore-path .gitignore",
|
|
45
45
|
"format:check": "oxfmt --check",
|
|
46
46
|
"format:fix": "oxfmt",
|
|
47
|
+
"format:xml": "dialecte-xmlfmt 'src/**/*.test.ts'",
|
|
48
|
+
"format:xml:check": "dialecte-xmlfmt --check 'src/**/*.test.ts'",
|
|
47
49
|
"//====== TYPE PERF ======//": "",
|
|
48
50
|
"coverage:gen": "dialecte coverage",
|
|
49
51
|
"type-bench": "npm run coverage:gen && dialecte bench",
|
|
@@ -54,7 +56,7 @@
|
|
|
54
56
|
"prepare": "husky"
|
|
55
57
|
},
|
|
56
58
|
"dependencies": {
|
|
57
|
-
"@dialecte/core": "0.4.
|
|
59
|
+
"@dialecte/core": "0.4.16"
|
|
58
60
|
},
|
|
59
61
|
"devDependencies": {
|
|
60
62
|
"@dialecte/cli": "0.0.2",
|