Skip to content

Commit 20efdff

Browse files
committed
Deploying to master from @ openscd/open-scd@0c1074b 🚀
1 parent 9bae2e2 commit 20efdff

File tree

1,521 files changed

+55141
-3618
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

1,521 files changed

+55141
-3618
lines changed
Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,42 @@
1+
function getChildElementsByTagName(element, tag) {
2+
return Array.from(element.children).filter((element) => element.tagName === tag);
3+
}
4+
/** maximum value for `lnInst` attribute */
5+
const maxLnInst = 99;
6+
const lnInstRange = Array(maxLnInst)
7+
.fill(1)
8+
.map((_, i) => `${i + 1}`);
9+
/**
10+
* Generator function returning unique `inst` or `lnInst` attribute for element
11+
* [[`tagName`]] within [[`parent`]].
12+
* ```md
13+
* Valid range for both `inst` and `lnInst` is between 1 and 99
14+
* ```
15+
* @param parent - The parent element to be scanned for `inst` or `lnInst`
16+
* values already in use. Be sure to create a new generator every time the
17+
* children of this element change in SCL.
18+
* @param tagName - Tag name of the child elements containing the
19+
* `lnInst` or `inst` attribute
20+
* @returns a function generating increasing unused `inst` or `lnInst` values
21+
* element with [[`tagName`]] within [[`parent`]] on subsequent invocations
22+
*/
23+
function lnInstGenerator(parent, tagName) {
24+
const generators = new Map();
25+
const generatedAttribute = tagName === "LN" ? "inst" : "lnInst";
26+
return (lnClass) => {
27+
if (!generators.has(lnClass)) {
28+
const lnInstOrInst = new Set(getChildElementsByTagName(parent, tagName)
29+
.filter((element) => element.getAttribute("lnClass") === lnClass)
30+
.map((element) => element.getAttribute(generatedAttribute)));
31+
generators.set(lnClass, () => {
32+
const uniqueLnInstOrInst = lnInstRange.find((lnInst) => !lnInstOrInst.has(lnInst));
33+
if (uniqueLnInstOrInst)
34+
lnInstOrInst.add(uniqueLnInstOrInst);
35+
return uniqueLnInstOrInst;
36+
});
37+
}
38+
return generators.get(lnClass)();
39+
};
40+
}
41+
42+
export { lnInstGenerator };

_snowpack/pkg/import-map.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,7 @@
2828
"@material/mwc-textarea": "./@material/mwc-textarea.js",
2929
"@material/mwc-textfield": "./@material/mwc-textfield.js",
3030
"@material/mwc-top-app-bar-fixed": "./@material/mwc-top-app-bar-fixed.js",
31+
"@openenergytools/scl-lib/dist/generator/lnInstGenerator.js": "./@openenergytools/scl-lib/dist/generator/lnInstGenerator.js",
3132
"@openenergytools/scl-lib/dist/tDataTypeTemplates/insertSelectedLNodeType.js": "./@openenergytools/scl-lib/dist/tDataTypeTemplates/insertSelectedLNodeType.js",
3233
"ace-custom-element": "./ace-custom-element.js",
3334
"lit-element": "./lit-element.js",

core-doc/classes/OscdApi.html

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ <h4>Hierarchy</h4>
2020
<ul class="tsd-hierarchy">
2121
<li><span class="target">OscdApi</span></li></ul></section><aside class="tsd-sources">
2222
<ul>
23-
<li>Defined in <a href="https://github.com/openscd/open-scd/blob/003161f/packages/core/api/api.ts#L3">api/api.ts:3</a></li></ul></aside>
23+
<li>Defined in <a href="https://github.com/openscd/open-scd/blob/0c1074b/packages/core/api/api.ts#L3">api/api.ts:3</a></li></ul></aside>
2424
<section class="tsd-panel-group tsd-index-group">
2525
<section class="tsd-panel tsd-index-panel">
2626
<details class="tsd-index-content tsd-index-accordion" open><summary class="tsd-accordion-summary tsd-index-summary">
@@ -48,14 +48,14 @@ <h4 class="tsd-parameters-title">Parameters</h4>
4848
<h5>pluginTag: <span class="tsd-signature-type">string</span></h5></li></ul></div>
4949
<h4 class="tsd-returns-title">Returns <a href="OscdApi.html" class="tsd-signature-type" data-tsd-kind="Class">OscdApi</a></h4><aside class="tsd-sources">
5050
<ul>
51-
<li>Defined in <a href="https://github.com/openscd/open-scd/blob/003161f/packages/core/api/api.ts#L6">api/api.ts:6</a></li></ul></aside></li></ul></section></section>
51+
<li>Defined in <a href="https://github.com/openscd/open-scd/blob/0c1074b/packages/core/api/api.ts#L6">api/api.ts:6</a></li></ul></aside></li></ul></section></section>
5252
<section class="tsd-panel-group tsd-member-group">
5353
<h2>Properties</h2>
5454
<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class"><a id="pluginState" class="tsd-anchor"></a>
5555
<h3 class="tsd-anchor-link"><span>plugin<wbr/>State</span><a href="#pluginState" aria-label="Permalink" class="tsd-anchor-icon"><svg class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><use href="#icon-anchor-a"></use><use href="#icon-anchor-b"></use><use href="#icon-anchor-c"></use></svg></a></h3>
5656
<div class="tsd-signature">plugin<wbr/>State<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">PluginStateApi</span></div><aside class="tsd-sources">
5757
<ul>
58-
<li>Defined in <a href="https://github.com/openscd/open-scd/blob/003161f/packages/core/api/api.ts#L4">api/api.ts:4</a></li></ul></aside></section></section></div>
58+
<li>Defined in <a href="https://github.com/openscd/open-scd/blob/0c1074b/packages/core/api/api.ts#L4">api/api.ts:4</a></li></ul></aside></section></section></div>
5959
<div class="col-4 col-menu menu-sticky-wrap menu-highlight">
6060
<div class="tsd-navigation settings">
6161
<details class="tsd-index-accordion"><summary class="tsd-accordion-summary">

core-doc/functions/crossProduct.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ <h4 class="tsd-parameters-title">Parameters</h4>
3434
<h5><code class="tsd-tag ts-flagRest">Rest</code> <span class="tsd-signature-symbol">...</span>arrays: <span class="tsd-signature-type" data-tsd-kind="Type parameter">T</span><span class="tsd-signature-symbol">[]</span><span class="tsd-signature-symbol">[]</span></h5></li></ul></div>
3535
<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type" data-tsd-kind="Type parameter">T</span><span class="tsd-signature-symbol">[]</span><span class="tsd-signature-symbol">[]</span></h4><aside class="tsd-sources">
3636
<ul>
37-
<li>Defined in <a href="https://github.com/openscd/open-scd/blob/003161f/packages/core/foundation.ts#L63">foundation.ts:63</a></li></ul></aside></li></ul></section></div>
37+
<li>Defined in <a href="https://github.com/openscd/open-scd/blob/0c1074b/packages/core/foundation.ts#L63">foundation.ts:63</a></li></ul></aside></li></ul></section></div>
3838
<div class="col-4 col-menu menu-sticky-wrap menu-highlight">
3939
<div class="tsd-navigation settings">
4040
<details class="tsd-index-accordion"><summary class="tsd-accordion-summary">

core-doc/functions/cyrb64.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@ <h4 class="tsd-parameters-title">Parameters</h4>
3131
<h5>str: <span class="tsd-signature-type">string</span></h5></li></ul></div>
3232
<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">string</span></h4><aside class="tsd-sources">
3333
<ul>
34-
<li>Defined in <a href="https://github.com/openscd/open-scd/blob/003161f/packages/core/foundation/cyrb64.ts#L6">foundation/cyrb64.ts:6</a></li></ul></aside></li></ul></section></div>
34+
<li>Defined in <a href="https://github.com/openscd/open-scd/blob/0c1074b/packages/core/foundation/cyrb64.ts#L6">foundation/cyrb64.ts:6</a></li></ul></aside></li></ul></section></div>
3535
<div class="col-4 col-menu menu-sticky-wrap menu-highlight">
3636
<div class="tsd-navigation settings">
3737
<details class="tsd-index-accordion"><summary class="tsd-accordion-summary">

core-doc/functions/handleEditV2.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ <h4 class="tsd-parameters-title">Parameters</h4>
2828
<h5>edit: <a href="../types/EditV2.html" class="tsd-signature-type" data-tsd-kind="Type alias">EditV2</a></h5></li></ul></div>
2929
<h4 class="tsd-returns-title">Returns <a href="../types/EditV2.html" class="tsd-signature-type" data-tsd-kind="Type alias">EditV2</a></h4><aside class="tsd-sources">
3030
<ul>
31-
<li>Defined in <a href="https://github.com/openscd/open-scd/blob/003161f/packages/core/foundation/handle-edit.ts#L181">foundation/handle-edit.ts:181</a></li></ul></aside></li></ul></section></div>
31+
<li>Defined in <a href="https://github.com/openscd/open-scd/blob/0c1074b/packages/core/foundation/handle-edit.ts#L181">foundation/handle-edit.ts:181</a></li></ul></aside></li></ul></section></div>
3232
<div class="col-4 col-menu menu-sticky-wrap menu-highlight">
3333
<div class="tsd-navigation settings">
3434
<details class="tsd-index-accordion"><summary class="tsd-accordion-summary">

core-doc/functions/isComplex.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ <h4 class="tsd-parameters-title">Parameters</h4>
2929
<h5>edit: <a href="../types/Edit.html" class="tsd-signature-type" data-tsd-kind="Type alias">Edit</a></h5></li></ul></div>
3030
<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">edit</span><span class="tsd-signature-symbol"> is </span><a href="../types/Edit.html" class="tsd-signature-type" data-tsd-kind="Type alias">Edit</a><span class="tsd-signature-symbol">[]</span></h4><aside class="tsd-sources">
3131
<ul>
32-
<li>Defined in <a href="https://github.com/openscd/open-scd/blob/003161f/packages/core/foundation/deprecated/edit-event.ts#L49">foundation/deprecated/edit-event.ts:49</a></li></ul></aside></li></ul></section></div>
32+
<li>Defined in <a href="https://github.com/openscd/open-scd/blob/0c1074b/packages/core/foundation/deprecated/edit-event.ts#L49">foundation/deprecated/edit-event.ts:49</a></li></ul></aside></li></ul></section></div>
3333
<div class="col-4 col-menu menu-sticky-wrap menu-highlight">
3434
<div class="tsd-navigation settings">
3535
<details class="tsd-index-accordion"><summary class="tsd-accordion-summary">

core-doc/functions/isComplexV2.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ <h4 class="tsd-parameters-title">Parameters</h4>
2626
<h5>edit: <a href="../types/EditV2.html" class="tsd-signature-type" data-tsd-kind="Type alias">EditV2</a></h5></li></ul></div>
2727
<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">edit</span><span class="tsd-signature-symbol"> is </span><a href="../types/EditV2.html" class="tsd-signature-type" data-tsd-kind="Type alias">EditV2</a><span class="tsd-signature-symbol">[]</span></h4><aside class="tsd-sources">
2828
<ul>
29-
<li>Defined in <a href="https://github.com/openscd/open-scd/blob/003161f/packages/core/foundation/edit.ts#L34">foundation/edit.ts:34</a></li></ul></aside></li></ul></section></div>
29+
<li>Defined in <a href="https://github.com/openscd/open-scd/blob/0c1074b/packages/core/foundation/edit.ts#L34">foundation/edit.ts:34</a></li></ul></aside></li></ul></section></div>
3030
<div class="col-4 col-menu menu-sticky-wrap menu-highlight">
3131
<div class="tsd-navigation settings">
3232
<details class="tsd-index-accordion"><summary class="tsd-accordion-summary">

core-doc/functions/isEditV2.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ <h4 class="tsd-parameters-title">Parameters</h4>
2626
<h5>edit: <span class="tsd-signature-type">any</span></h5></li></ul></div>
2727
<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">edit</span><span class="tsd-signature-symbol"> is </span><a href="../types/EditV2.html" class="tsd-signature-type" data-tsd-kind="Type alias">EditV2</a></h4><aside class="tsd-sources">
2828
<ul>
29-
<li>Defined in <a href="https://github.com/openscd/open-scd/blob/003161f/packages/core/foundation/edit.ts#L68">foundation/edit.ts:68</a></li></ul></aside></li></ul></section></div>
29+
<li>Defined in <a href="https://github.com/openscd/open-scd/blob/0c1074b/packages/core/foundation/edit.ts#L68">foundation/edit.ts:68</a></li></ul></aside></li></ul></section></div>
3030
<div class="col-4 col-menu menu-sticky-wrap menu-highlight">
3131
<div class="tsd-navigation settings">
3232
<details class="tsd-index-accordion"><summary class="tsd-accordion-summary">

core-doc/functions/isInsert.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ <h4 class="tsd-parameters-title">Parameters</h4>
2929
<h5>edit: <a href="../types/Edit.html" class="tsd-signature-type" data-tsd-kind="Type alias">Edit</a></h5></li></ul></div>
3030
<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">edit</span><span class="tsd-signature-symbol"> is </span><a href="../types/Insert.html" class="tsd-signature-type" data-tsd-kind="Type alias">Insert</a></h4><aside class="tsd-sources">
3131
<ul>
32-
<li>Defined in <a href="https://github.com/openscd/open-scd/blob/003161f/packages/core/foundation/deprecated/edit-event.ts#L56">foundation/deprecated/edit-event.ts:56</a></li></ul></aside></li></ul></section></div>
32+
<li>Defined in <a href="https://github.com/openscd/open-scd/blob/0c1074b/packages/core/foundation/deprecated/edit-event.ts#L56">foundation/deprecated/edit-event.ts:56</a></li></ul></aside></li></ul></section></div>
3333
<div class="col-4 col-menu menu-sticky-wrap menu-highlight">
3434
<div class="tsd-navigation settings">
3535
<details class="tsd-index-accordion"><summary class="tsd-accordion-summary">

0 commit comments

Comments
 (0)