@dso-toolkit/core 62.5.0 → 62.7.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.
Files changed (156) hide show
  1. package/dist/cjs/dso-accordion-section.cjs.entry.js +1 -1
  2. package/dist/cjs/dso-accordion-section.cjs.entry.js.map +1 -1
  3. package/dist/cjs/dso-action-list-item.cjs.entry.js +1 -1
  4. package/dist/cjs/dso-action-list-item.cjs.entry.js.map +1 -1
  5. package/dist/cjs/dso-action-list.cjs.entry.js +1 -1
  6. package/dist/cjs/dso-action-list.cjs.entry.js.map +1 -1
  7. package/dist/cjs/dso-alert_7.cjs.entry.js +2 -1
  8. package/dist/cjs/dso-alert_7.cjs.entry.js.map +1 -1
  9. package/dist/cjs/dso-annotation-output_3.cjs.entry.js +21 -2
  10. package/dist/cjs/dso-annotation-output_3.cjs.entry.js.map +1 -1
  11. package/dist/cjs/dso-card.cjs.entry.js +27 -10
  12. package/dist/cjs/dso-card.cjs.entry.js.map +1 -1
  13. package/dist/cjs/dso-header.cjs.entry.js +1 -1
  14. package/dist/cjs/dso-info_2.cjs.entry.js +6 -0
  15. package/dist/cjs/dso-info_2.cjs.entry.js.map +1 -1
  16. package/dist/cjs/dso-mark-bar.cjs.entry.js +17 -2
  17. package/dist/cjs/dso-mark-bar.cjs.entry.js.map +1 -1
  18. package/dist/cjs/dso-pagination.cjs.entry.js +1 -1
  19. package/dist/cjs/dso-toolkit.cjs.js +1 -1
  20. package/dist/cjs/dso-viewer-grid.cjs.entry.js +1 -1
  21. package/dist/cjs/dso-viewer-grid.cjs.entry.js.map +1 -1
  22. package/dist/cjs/dsot-document-component-demo.cjs.entry.js +72 -25
  23. package/dist/cjs/dsot-document-component-demo.cjs.entry.js.map +1 -1
  24. package/dist/cjs/is-modified-event-97f83d0f.js +14 -0
  25. package/dist/cjs/is-modified-event-97f83d0f.js.map +1 -0
  26. package/dist/cjs/loader.cjs.js +1 -1
  27. package/dist/collection/components/accordion/components/accordion-section.css +6 -1
  28. package/dist/collection/components/action-list/action-list.css +12 -3
  29. package/dist/collection/components/action-list/components/action-list-item.css +14 -7
  30. package/dist/collection/components/card/card.css +73 -0
  31. package/dist/collection/components/card/card.js +49 -48
  32. package/dist/collection/components/card/card.js.map +1 -1
  33. package/dist/collection/components/document-component/document-component.css +12 -17
  34. package/dist/collection/components/document-component/document-component.js +71 -3
  35. package/dist/collection/components/document-component/document-component.js.map +1 -1
  36. package/dist/collection/components/document-component/document-component.models.js.map +1 -1
  37. package/dist/collection/components/document-component-demo/document-component.demo.js +74 -26
  38. package/dist/collection/components/document-component-demo/document-component.demo.js.map +1 -1
  39. package/dist/collection/components/mark-bar/mark-bar.css +50 -694
  40. package/dist/collection/components/mark-bar/mark-bar.interfaces.js.map +1 -1
  41. package/dist/collection/components/mark-bar/mark-bar.js +45 -1
  42. package/dist/collection/components/mark-bar/mark-bar.js.map +1 -1
  43. package/dist/collection/components/ozon-content/nodes/ext-ref.node.js +1 -1
  44. package/dist/collection/components/ozon-content/nodes/ext-ref.node.js.map +1 -1
  45. package/dist/collection/components/selectable/selectable.js +7 -1
  46. package/dist/collection/components/selectable/selectable.js.map +1 -1
  47. package/dist/collection/components/viewer-grid/viewer-grid.css +4 -0
  48. package/dist/collection/utils/is-modified-event.js +8 -2
  49. package/dist/collection/utils/is-modified-event.js.map +1 -1
  50. package/dist/components/document-component.js +24 -4
  51. package/dist/components/document-component.js.map +1 -1
  52. package/dist/components/dso-accordion-section.js +1 -1
  53. package/dist/components/dso-accordion-section.js.map +1 -1
  54. package/dist/components/dso-action-list-item.js +1 -1
  55. package/dist/components/dso-action-list-item.js.map +1 -1
  56. package/dist/components/dso-action-list.js +1 -1
  57. package/dist/components/dso-action-list.js.map +1 -1
  58. package/dist/components/dso-card.js +37 -15
  59. package/dist/components/dso-card.js.map +1 -1
  60. package/dist/components/dso-mark-bar.js +19 -3
  61. package/dist/components/dso-mark-bar.js.map +1 -1
  62. package/dist/components/dso-viewer-grid.js +1 -1
  63. package/dist/components/dso-viewer-grid.js.map +1 -1
  64. package/dist/components/dsot-document-component-demo.js +74 -26
  65. package/dist/components/dsot-document-component-demo.js.map +1 -1
  66. package/dist/components/is-modified-event.js +8 -2
  67. package/dist/components/is-modified-event.js.map +1 -1
  68. package/dist/components/ozon-content.js +2 -1
  69. package/dist/components/ozon-content.js.map +1 -1
  70. package/dist/components/selectable.js +7 -1
  71. package/dist/components/selectable.js.map +1 -1
  72. package/dist/dso-toolkit/dso-toolkit.esm.js +1 -1
  73. package/dist/dso-toolkit/dso-toolkit.esm.js.map +1 -1
  74. package/dist/dso-toolkit/p-159c0a88.entry.js +2 -0
  75. package/dist/dso-toolkit/p-159c0a88.entry.js.map +1 -0
  76. package/dist/dso-toolkit/p-17e4b846.js +2 -0
  77. package/dist/dso-toolkit/p-17e4b846.js.map +1 -0
  78. package/dist/dso-toolkit/{p-54444f78.entry.js → p-193b7e46.entry.js} +2 -2
  79. package/dist/dso-toolkit/p-33416b1d.entry.js +2 -0
  80. package/dist/dso-toolkit/p-33416b1d.entry.js.map +1 -0
  81. package/dist/dso-toolkit/{p-7371aee1.entry.js → p-336aefb5.entry.js} +2 -2
  82. package/dist/dso-toolkit/p-336aefb5.entry.js.map +1 -0
  83. package/dist/dso-toolkit/p-35dae23f.entry.js +2 -0
  84. package/dist/dso-toolkit/p-35dae23f.entry.js.map +1 -0
  85. package/dist/dso-toolkit/p-39962ce8.entry.js +2 -0
  86. package/dist/dso-toolkit/p-39962ce8.entry.js.map +1 -0
  87. package/dist/dso-toolkit/{p-d165ad74.entry.js → p-6d602847.entry.js} +2 -2
  88. package/dist/dso-toolkit/p-977dde7f.entry.js +2 -0
  89. package/dist/dso-toolkit/p-977dde7f.entry.js.map +1 -0
  90. package/dist/dso-toolkit/p-9c34ee39.entry.js +2 -0
  91. package/dist/dso-toolkit/p-9c34ee39.entry.js.map +1 -0
  92. package/dist/dso-toolkit/{p-b8ff5318.entry.js → p-a3f28ef2.entry.js} +2 -2
  93. package/dist/dso-toolkit/{p-b8ff5318.entry.js.map → p-a3f28ef2.entry.js.map} +1 -1
  94. package/dist/dso-toolkit/{p-f3bd801e.entry.js → p-bf04808f.entry.js} +2 -2
  95. package/dist/dso-toolkit/{p-f3bd801e.entry.js.map → p-bf04808f.entry.js.map} +1 -1
  96. package/dist/dso-toolkit/p-d24073fe.entry.js +2 -0
  97. package/dist/dso-toolkit/p-d24073fe.entry.js.map +1 -0
  98. package/dist/esm/dso-accordion-section.entry.js +1 -1
  99. package/dist/esm/dso-accordion-section.entry.js.map +1 -1
  100. package/dist/esm/dso-action-list-item.entry.js +1 -1
  101. package/dist/esm/dso-action-list-item.entry.js.map +1 -1
  102. package/dist/esm/dso-action-list.entry.js +1 -1
  103. package/dist/esm/dso-action-list.entry.js.map +1 -1
  104. package/dist/esm/dso-alert_7.entry.js +2 -1
  105. package/dist/esm/dso-alert_7.entry.js.map +1 -1
  106. package/dist/esm/dso-annotation-output_3.entry.js +22 -3
  107. package/dist/esm/dso-annotation-output_3.entry.js.map +1 -1
  108. package/dist/esm/dso-card.entry.js +28 -11
  109. package/dist/esm/dso-card.entry.js.map +1 -1
  110. package/dist/esm/dso-header.entry.js +1 -1
  111. package/dist/esm/dso-info_2.entry.js +6 -0
  112. package/dist/esm/dso-info_2.entry.js.map +1 -1
  113. package/dist/esm/dso-mark-bar.entry.js +17 -2
  114. package/dist/esm/dso-mark-bar.entry.js.map +1 -1
  115. package/dist/esm/dso-pagination.entry.js +1 -1
  116. package/dist/esm/dso-toolkit.js +1 -1
  117. package/dist/esm/dso-viewer-grid.entry.js +1 -1
  118. package/dist/esm/dso-viewer-grid.entry.js.map +1 -1
  119. package/dist/esm/dsot-document-component-demo.entry.js +73 -26
  120. package/dist/esm/dsot-document-component-demo.entry.js.map +1 -1
  121. package/dist/esm/is-modified-event-4fc531e3.js +12 -0
  122. package/dist/esm/is-modified-event-4fc531e3.js.map +1 -0
  123. package/dist/esm/loader.js +1 -1
  124. package/dist/types/components/card/card.d.ts +14 -10
  125. package/dist/types/components/document-component/document-component.d.ts +17 -2
  126. package/dist/types/components/document-component/document-component.models.d.ts +6 -0
  127. package/dist/types/components/document-component-demo/document-component.demo.d.ts +13 -6
  128. package/dist/types/components/mark-bar/mark-bar.d.ts +7 -1
  129. package/dist/types/components/mark-bar/mark-bar.interfaces.d.ts +10 -1
  130. package/dist/types/components/selectable/selectable.d.ts +3 -2
  131. package/dist/types/components.d.ts +31 -20
  132. package/dist/types/utils/is-modified-event.d.ts +6 -2
  133. package/package.json +2 -2
  134. package/dist/cjs/is-modified-event-ccd748ea.js +0 -8
  135. package/dist/cjs/is-modified-event-ccd748ea.js.map +0 -1
  136. package/dist/dso-toolkit/p-02c35f4e.entry.js +0 -2
  137. package/dist/dso-toolkit/p-02c35f4e.entry.js.map +0 -1
  138. package/dist/dso-toolkit/p-0afd6a86.entry.js +0 -2
  139. package/dist/dso-toolkit/p-0afd6a86.entry.js.map +0 -1
  140. package/dist/dso-toolkit/p-2cd3e805.entry.js +0 -2
  141. package/dist/dso-toolkit/p-2cd3e805.entry.js.map +0 -1
  142. package/dist/dso-toolkit/p-4f601b8c.entry.js +0 -2
  143. package/dist/dso-toolkit/p-4f601b8c.entry.js.map +0 -1
  144. package/dist/dso-toolkit/p-5eb2019a.entry.js +0 -2
  145. package/dist/dso-toolkit/p-5eb2019a.entry.js.map +0 -1
  146. package/dist/dso-toolkit/p-7371aee1.entry.js.map +0 -1
  147. package/dist/dso-toolkit/p-9747c291.js +0 -2
  148. package/dist/dso-toolkit/p-9747c291.js.map +0 -1
  149. package/dist/dso-toolkit/p-b9059ec2.entry.js +0 -2
  150. package/dist/dso-toolkit/p-b9059ec2.entry.js.map +0 -1
  151. package/dist/dso-toolkit/p-f493248a.entry.js +0 -2
  152. package/dist/dso-toolkit/p-f493248a.entry.js.map +0 -1
  153. package/dist/esm/is-modified-event-587a0b0a.js +0 -6
  154. package/dist/esm/is-modified-event-587a0b0a.js.map +0 -1
  155. /package/dist/dso-toolkit/{p-54444f78.entry.js.map → p-193b7e46.entry.js.map} +0 -0
  156. /package/dist/dso-toolkit/{p-d165ad74.entry.js.map → p-6d602847.entry.js.map} +0 -0
@@ -1,4 +1,4 @@
1
- import { proxyCustomElement, HTMLElement, createEvent, h } from '@stencil/core/internal/client';
1
+ import { proxyCustomElement, HTMLElement, createEvent, h, Fragment } from '@stencil/core/internal/client';
2
2
  import { c as commonjsGlobal, d as defineCustomElement$6 } from './ozon-content.js';
3
3
  import { d as defineCustomElement$f } from './alert.js';
4
4
  import { d as defineCustomElement$e } from './annotation-button.js';
@@ -1639,17 +1639,35 @@ const DocumentComponentDemo = /*@__PURE__*/ proxyCustomElement(class DocumentCom
1639
1639
  super();
1640
1640
  this.__registerHost();
1641
1641
  this.dsotOzonContentAnchorClick = createEvent(this, "dsotOzonContentAnchorClick", 7);
1642
+ this.handleRecursiveToggle = (documentComponent, detail) => {
1643
+ const embeddedDocuments = this.getEmbeddedDocumentComponents(documentComponent);
1644
+ if (!embeddedDocuments) {
1645
+ return;
1646
+ }
1647
+ for (const d of embeddedDocuments.documentComponents) {
1648
+ this.handleOpenToggle(d, detail.next);
1649
+ }
1650
+ };
1642
1651
  this.DocumentComponent = ({ path }) => {
1643
- var _a;
1644
1652
  const documentComponent = path.at(-1);
1653
+ if (!documentComponent) {
1654
+ return h(Fragment, null);
1655
+ }
1645
1656
  const { DocumentComponent } = this;
1646
- return (h("ul", null, documentComponent &&
1647
- ((_a = this.getEmbeddedDocumentComponents(documentComponent)) === null || _a === void 0 ? void 0 : _a.map((d, i) => (h("li", { key: d.documentTechnischId }, h("dso-document-component", { annotated: i % 3 === 2, bevatOntwerpInformatie: !!d.bevatOntwerpInformatie, filtered: this.isOpen(d) ? this.isFiltered(d) : this.hasFilteredChildren(d), genesteOntwerpInformatie: this.hasNestedDraft(d), gereserveerd: d.gereserveerd, heading: "h2", inhoud: d.inhoud, label: d.labelXml, openAnnotation: this.isOpenedAnnotation(d), notApplicable: this.isNotApplicable(d) || path.some((p) => this.isNotApplicable(p)), nummer: d.nummerXml, onDsoAnnotationToggle: () => this.handleAnnotationToggle(d), onDsoOpenToggle: (e) => this.handleOpenToggle(e, d), onDsoOzonContentAnchorClick: (e) => this.handleOzonContentAnchorClick(e), open: this.isOpen(d), opschrift: d.opschrift, type: d.type, vervallen: d.vervallen, wijzigactie: d.wijzigactie }, this.isOpenedAnnotation(d) && (h("dso-annotation-output", { slot: "annotation", open: true, identifier: "test", onDsoClose: () => this.handleAnnotationToggle(d) }, h("span", { slot: "title" }, "Annotaties"), h("dso-slide-toggle", { checked: this.isCheckedSlideToggle(d), onDsoActiveChange: () => this.handleSelectableChange(d) }, "Delfzijl"))), this.showContent(d) && h(DocumentComponent, { path: [...path, d] }))))))));
1657
+ const embeddedDocuments = this.getEmbeddedDocumentComponents(documentComponent);
1658
+ return (h("dso-document-component", { annotated: documentComponent.volgordeNummer % 4 === 2, bevatOntwerpInformatie: !!documentComponent.bevatOntwerpInformatie, filtered: this.isOpen(documentComponent)
1659
+ ? this.isFiltered(documentComponent)
1660
+ : this.hasFilteredChildren(documentComponent), genesteOntwerpInformatie: this.hasNestedDraft(documentComponent), gereserveerd: documentComponent.gereserveerd, heading: "h2", inhoud: documentComponent.inhoud, label: documentComponent.labelXml, openAnnotation: this.isOpenedAnnotation(documentComponent), notApplicable: this.isNotApplicable(documentComponent) || path.some((p) => this.isNotApplicable(p)), nummer: documentComponent.nummerXml, onDsoAnnotationToggle: () => this.handleAnnotationToggle(documentComponent), onDsoOpenToggle: () => this.handleOpenToggle(documentComponent), onDsoOzonContentAnchorClick: (e) => this.handleOzonContentAnchorClick(e), open: this.isOpen(documentComponent), opschrift: documentComponent.opschrift, type: documentComponent.type, vervallen: documentComponent.vervallen, wijzigactie: documentComponent.wijzigactie, recursiveToggle: this.recursiveToggleState(documentComponent), onDsoRecursiveToggle: (e) => this.handleRecursiveToggle(documentComponent, e.detail) }, this.isOpenedAnnotation(documentComponent) && (h("dso-annotation-output", { slot: "annotation", open: true, identifier: "test", onDsoClose: () => this.handleAnnotationToggle(documentComponent) }, h("span", { slot: "title" }, "Annotaties"), h("dso-slide-toggle", { checked: this.isCheckedSlideToggle(documentComponent), onDsoActiveChange: () => this.handleSelectableChange(documentComponent) }, "Delfzijl"))), this.showContent(documentComponent) && (embeddedDocuments === null || embeddedDocuments === void 0 ? void 0 : embeddedDocuments.documentComponents.length) && (h("ul", null, embeddedDocuments.documentComponents.map((d) => (h("li", { key: d.documentTechnischId }, h(DocumentComponent, { path: [...path, d] }))))))));
1661
+ };
1662
+ this.MenuButton = ({ documentComponent }) => {
1663
+ const { labelXml, nummerXml, type } = documentComponent;
1664
+ return (h("button", { type: "button", onClick: () => (this.document = documentComponent) }, !labelXml && !nummerXml ? (h("span", null, h("i", null, type))) : (h(Fragment, null, labelXml && (h(Fragment, null, h("dso-ozon-content", { content: labelXml, inline: true }))), nummerXml && (h(Fragment, null, " ", h("dso-ozon-content", { content: nummerXml, inline: true })))))));
1648
1665
  };
1649
1666
  this.showCanvas = false;
1650
1667
  this.jsonFile = undefined;
1651
1668
  this.openDefault = false;
1652
1669
  this.response = undefined;
1670
+ this.document = undefined;
1653
1671
  this.openOrClosed = [];
1654
1672
  this.openedAnnotation = [];
1655
1673
  this.filtered = [];
@@ -1667,13 +1685,25 @@ const DocumentComponentDemo = /*@__PURE__*/ proxyCustomElement(class DocumentCom
1667
1685
  async componentDidLoad() {
1668
1686
  await this.loadData();
1669
1687
  }
1670
- getEmbeddedDocumentComponents(documentComponent) {
1671
- var _a, _b, _c;
1672
- return ((_b = (_a = documentComponent === null || documentComponent === void 0 ? void 0 : documentComponent._embedded) === null || _a === void 0 ? void 0 : _a.ontwerpTekststructuurDocumentComponenten) !== null && _b !== void 0 ? _b : (_c = documentComponent === null || documentComponent === void 0 ? void 0 : documentComponent._embedded) === null || _c === void 0 ? void 0 : _c.tekststructuurDocumentComponenten);
1688
+ getEmbeddedDocumentComponents(documentEmbedded) {
1689
+ var _a, _b;
1690
+ if ((_a = documentEmbedded === null || documentEmbedded === void 0 ? void 0 : documentEmbedded._embedded) === null || _a === void 0 ? void 0 : _a.ontwerpTekststructuurDocumentComponenten) {
1691
+ return {
1692
+ documentComponents: documentEmbedded._embedded.ontwerpTekststructuurDocumentComponenten,
1693
+ ontwerp: true,
1694
+ };
1695
+ }
1696
+ if ((_b = documentEmbedded === null || documentEmbedded === void 0 ? void 0 : documentEmbedded._embedded) === null || _b === void 0 ? void 0 : _b.tekststructuurDocumentComponenten) {
1697
+ return {
1698
+ documentComponents: documentEmbedded._embedded.tekststructuurDocumentComponenten,
1699
+ ontwerp: false,
1700
+ };
1701
+ }
1702
+ return undefined;
1673
1703
  }
1674
1704
  concatEmbeddedDocumentComponents(documentComponent) {
1675
- var _a;
1676
- const embeddedDocuments = [...((_a = this.getEmbeddedDocumentComponents(documentComponent)) !== null && _a !== void 0 ? _a : [])];
1705
+ var _a, _b;
1706
+ const embeddedDocuments = [...((_b = (_a = this.getEmbeddedDocumentComponents(documentComponent)) === null || _a === void 0 ? void 0 : _a.documentComponents) !== null && _b !== void 0 ? _b : [])];
1677
1707
  for (const d of embeddedDocuments) {
1678
1708
  embeddedDocuments.push(...this.concatEmbeddedDocumentComponents(d));
1679
1709
  }
@@ -1685,24 +1715,31 @@ const DocumentComponentDemo = /*@__PURE__*/ proxyCustomElement(class DocumentCom
1685
1715
  return lodash_samplesize(documentComponents, size);
1686
1716
  }
1687
1717
  async loadData() {
1688
- var _a;
1718
+ var _a, _b;
1689
1719
  if (!this.jsonFile) {
1690
1720
  this.response = undefined;
1721
+ this.document = undefined;
1691
1722
  return;
1692
1723
  }
1693
- const data = await fetch(this.jsonFile).then((r) => r.json());
1694
- const lichaam = (_a = this.getEmbeddedDocumentComponents(data)) === null || _a === void 0 ? void 0 : _a.find((documentComponent) => documentComponent.type === "LICHAAM");
1695
- if (lichaam) {
1696
- this.response = lichaam;
1697
- this.notApplicable = this.selectRandomDocumentComponents(lichaam);
1698
- this.filtered = this.selectRandomDocumentComponents(lichaam, this.notApplicable);
1724
+ this.response = await fetch(this.jsonFile).then((r) => r.json());
1725
+ this.document = (_a = this.getEmbeddedDocumentComponents(this.response)) === null || _a === void 0 ? void 0 : _a.documentComponents[0];
1726
+ if (((_b = this.document) === null || _b === void 0 ? void 0 : _b.type) === "LICHAAM") {
1727
+ this.notApplicable = this.selectRandomDocumentComponents(this.document);
1728
+ this.filtered = this.selectRandomDocumentComponents(this.document, this.notApplicable);
1729
+ }
1730
+ else {
1731
+ this.notApplicable = [];
1732
+ this.filtered = [];
1699
1733
  }
1700
1734
  }
1701
- handleOpenToggle(_e, documentComponent) {
1702
- const isOpenOrClosed = this.openOrClosed.includes(documentComponent);
1703
- this.openOrClosed = !isOpenOrClosed
1704
- ? [...this.openOrClosed, documentComponent]
1705
- : this.openOrClosed.filter((d) => d !== documentComponent);
1735
+ handleOpenToggle(documentComponent, force) {
1736
+ const isOpenOrClosed = typeof force === "boolean" ? force : this.openOrClosed.includes(documentComponent);
1737
+ if (isOpenOrClosed && this.openOrClosed.includes(documentComponent)) {
1738
+ this.openOrClosed = this.openOrClosed.filter((d) => d !== documentComponent);
1739
+ }
1740
+ else if (!isOpenOrClosed && !this.openOrClosed.includes(documentComponent)) {
1741
+ this.openOrClosed = [...this.openOrClosed, documentComponent];
1742
+ }
1706
1743
  }
1707
1744
  handleAnnotationToggle(documentComponent) {
1708
1745
  this.openedAnnotation = this.isOpenedAnnotation(documentComponent)
@@ -1726,7 +1763,7 @@ const DocumentComponentDemo = /*@__PURE__*/ proxyCustomElement(class DocumentCom
1726
1763
  hasFilteredChildren(documentComponent) {
1727
1764
  var _a, _b;
1728
1765
  return (this.filtered.includes(documentComponent) ||
1729
- ((_b = (_a = this.getEmbeddedDocumentComponents(documentComponent)) === null || _a === void 0 ? void 0 : _a.some((d) => this.hasFilteredChildren(d))) !== null && _b !== void 0 ? _b : false));
1766
+ ((_b = (_a = this.getEmbeddedDocumentComponents(documentComponent)) === null || _a === void 0 ? void 0 : _a.documentComponents.some((d) => this.hasFilteredChildren(d))) !== null && _b !== void 0 ? _b : false));
1730
1767
  }
1731
1768
  isOpen(documentComponent) {
1732
1769
  return documentComponent.type === "LID" || this.openDefault
@@ -1744,16 +1781,26 @@ const DocumentComponentDemo = /*@__PURE__*/ proxyCustomElement(class DocumentCom
1744
1781
  }
1745
1782
  hasNestedDraft(documentComponent) {
1746
1783
  var _a, _b;
1747
- return ((_b = (_a = this.getEmbeddedDocumentComponents(documentComponent)) === null || _a === void 0 ? void 0 : _a.some((d) => !!d.bevatOntwerpInformatie || this.hasNestedDraft(d))) !== null && _b !== void 0 ? _b : false);
1784
+ return ((_b = (_a = this.getEmbeddedDocumentComponents(documentComponent)) === null || _a === void 0 ? void 0 : _a.documentComponents.some((d) => !!d.bevatOntwerpInformatie || this.hasNestedDraft(d))) !== null && _b !== void 0 ? _b : false);
1748
1785
  }
1749
1786
  showContent(documentComponent) {
1750
1787
  var _a;
1751
1788
  return (this.isOpen(documentComponent) &&
1752
- !!(((_a = this.getEmbeddedDocumentComponents(documentComponent)) === null || _a === void 0 ? void 0 : _a.length) || documentComponent.inhoud));
1789
+ !!(((_a = this.getEmbeddedDocumentComponents(documentComponent)) === null || _a === void 0 ? void 0 : _a.documentComponents.length) || documentComponent.inhoud));
1790
+ }
1791
+ recursiveToggleState(documentComponent) {
1792
+ const embeddedDocuments = this.getEmbeddedDocumentComponents(documentComponent);
1793
+ if (!embeddedDocuments ||
1794
+ embeddedDocuments.documentComponents.length <= 1 ||
1795
+ !embeddedDocuments.documentComponents.some((d) => d.type === "ARTIKEL")) {
1796
+ return undefined;
1797
+ }
1798
+ return embeddedDocuments.documentComponents.every((d) => this.isOpen(d));
1753
1799
  }
1754
1800
  render() {
1755
- const { DocumentComponent } = this;
1756
- return (h("dso-responsive-element", { class: "dso-document-components" }, this.response && h(DocumentComponent, { path: [this.response] })));
1801
+ var _a, _b;
1802
+ const { DocumentComponent, MenuButton } = this;
1803
+ return (h("dso-responsive-element", { class: "dso-document-components" }, h("div", { class: "dso-navbar" }, h("ul", { class: "dso-nav dso-nav-sub" }, (_b = (_a = this.getEmbeddedDocumentComponents(this.response)) === null || _a === void 0 ? void 0 : _a.documentComponents) === null || _b === void 0 ? void 0 : _b.map((d) => (h("li", { class: this.document === d ? "dso-active" : undefined }, h(MenuButton, { documentComponent: d })))))), this.document && h(DocumentComponent, { path: [this.document] })));
1757
1804
  }
1758
1805
  static get watchers() { return {
1759
1806
  "jsonFile": ["jsonFileWatcher"],
@@ -1765,6 +1812,7 @@ const DocumentComponentDemo = /*@__PURE__*/ proxyCustomElement(class DocumentCom
1765
1812
  "jsonFile": [1, "json-file"],
1766
1813
  "openDefault": [4, "open-default"],
1767
1814
  "response": [32],
1815
+ "document": [32],
1768
1816
  "openOrClosed": [32],
1769
1817
  "openedAnnotation": [32],
1770
1818
  "filtered": [32],