@dso-toolkit/core 51.2.1 → 51.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.
Files changed (211) hide show
  1. package/dist/cjs/annotation.service-e980f478.js +21 -0
  2. package/dist/cjs/dso-accordion-section.cjs.entry.js +1 -1
  3. package/dist/cjs/dso-accordion.cjs.entry.js +2 -192
  4. package/dist/cjs/dso-alert.cjs.entry.js +1 -1
  5. package/dist/cjs/dso-annotation-button.cjs.entry.js +25 -0
  6. package/dist/cjs/dso-annotation-output.cjs.entry.js +35 -0
  7. package/dist/cjs/dso-badge.cjs.entry.js +1 -1
  8. package/dist/cjs/dso-card.cjs.entry.js +5 -3
  9. package/dist/cjs/dso-dropdown-menu.cjs.entry.js +45 -1
  10. package/dist/cjs/dso-expandable-heading.cjs.entry.js +47 -0
  11. package/dist/cjs/dso-expandable.cjs.entry.js +20 -0
  12. package/dist/cjs/dso-header.cjs.entry.js +1 -1
  13. package/dist/cjs/dso-highlight-box.cjs.entry.js +1 -1
  14. package/dist/cjs/dso-image-overlay.cjs.entry.js +1 -2
  15. package/dist/cjs/dso-info_2.cjs.entry.js +4 -3
  16. package/dist/cjs/dso-label.cjs.entry.js +2 -2
  17. package/dist/cjs/dso-map-controls.cjs.entry.js +12 -4
  18. package/dist/cjs/dso-toolkit.cjs.js +1 -1
  19. package/dist/cjs/dso-tooltip.cjs.entry.js +4 -1801
  20. package/dist/cjs/index-71b733b1.js +196 -0
  21. package/dist/cjs/index.cjs.js +7 -0
  22. package/dist/cjs/loader.cjs.js +1 -1
  23. package/dist/cjs/map-controls.interfaces-5ceec716.js +5 -0
  24. package/dist/cjs/popper-6adb1c1a.js +1803 -0
  25. package/dist/collection/collection-manifest.json +4 -0
  26. package/dist/collection/components/accordion/components/accordion-section.css +6 -11
  27. package/dist/collection/components/alert/alert.css +4 -4
  28. package/dist/collection/components/annotation-button/annotation-button.css +3 -0
  29. package/dist/collection/components/annotation-button/annotation-button.js +45 -0
  30. package/dist/collection/components/annotation-output/annotation-output.css +82 -0
  31. package/dist/collection/components/annotation-output/annotation-output.interfaces.js +1 -0
  32. package/dist/collection/components/annotation-output/annotation-output.js +126 -0
  33. package/dist/collection/components/badge/badge.css +7 -2
  34. package/dist/collection/components/badge/badge.js +2 -2
  35. package/dist/collection/components/card/card.css +0 -1
  36. package/dist/collection/components/card/card.js +22 -2
  37. package/dist/collection/components/dropdown-menu/dropdown-menu.css +0 -1
  38. package/dist/collection/components/dropdown-menu/dropdown-menu.js +64 -0
  39. package/dist/collection/components/expandable/expandable.css +24 -0
  40. package/dist/collection/components/expandable/expandable.js +42 -0
  41. package/dist/collection/components/expandable-heading/expandable-heading.css +145 -0
  42. package/dist/collection/components/expandable-heading/expandable-heading.interfaces.js +1 -0
  43. package/dist/collection/components/expandable-heading/expandable-heading.js +117 -0
  44. package/dist/collection/components/expandable-heading/heading.js +16 -0
  45. package/dist/collection/components/header/header.css +2 -2
  46. package/dist/collection/components/highlight-box/highlight-box.css +1 -0
  47. package/dist/collection/components/image-overlay/image-overlay.js +1 -3
  48. package/dist/collection/components/info/info.css +1 -0
  49. package/dist/collection/components/label/label.css +11 -10
  50. package/dist/collection/components/label/label.js +3 -3
  51. package/dist/collection/components/map-controls/map-controls.interfaces.js +1 -0
  52. package/dist/collection/components/map-controls/map-controls.js +58 -2
  53. package/dist/collection/components/selectable/selectable.css +1 -0
  54. package/dist/collection/components/selectable/selectable.js +19 -1
  55. package/dist/collection/index.js +3 -0
  56. package/dist/collection/services/annotation.service.js +16 -0
  57. package/dist/components/annotation.service.js +19 -0
  58. package/dist/components/dropdown-menu.js +47 -2
  59. package/dist/components/dso-accordion-section.js +2 -2
  60. package/dist/components/dso-accordion.js +2 -192
  61. package/dist/components/dso-alert.js +1 -1
  62. package/dist/components/dso-annotation-button.d.ts +11 -0
  63. package/dist/components/dso-annotation-button.js +45 -0
  64. package/dist/components/dso-annotation-output.d.ts +11 -0
  65. package/dist/components/dso-annotation-output.js +69 -0
  66. package/dist/components/dso-autosuggest.js +1 -1
  67. package/dist/components/dso-badge.js +1 -1
  68. package/dist/components/dso-card.js +7 -4
  69. package/dist/components/dso-expandable-heading.d.ts +11 -0
  70. package/dist/components/dso-expandable-heading.js +77 -0
  71. package/dist/components/dso-expandable.d.ts +11 -0
  72. package/dist/components/dso-expandable.js +6 -0
  73. package/dist/components/dso-header.js +2 -2
  74. package/dist/components/dso-highlight-box.js +1 -1
  75. package/dist/components/dso-image-overlay.js +2 -4
  76. package/dist/components/dso-label.js +2 -2
  77. package/dist/components/dso-map-controls.js +14 -4
  78. package/dist/components/dso-table.js +1 -1
  79. package/dist/components/expandable.js +33 -0
  80. package/dist/components/index.d.ts +4 -0
  81. package/dist/components/index.js +5 -1
  82. package/dist/components/index2.js +185 -61
  83. package/dist/components/index3.js +70 -0
  84. package/dist/components/info.js +1 -1
  85. package/dist/components/popper.js +1799 -0
  86. package/dist/components/selectable.js +4 -2
  87. package/dist/components/tooltip.js +4 -1801
  88. package/dist/dso-toolkit/dso-toolkit.esm.js +1 -1
  89. package/dist/dso-toolkit/index.esm.js +1 -0
  90. package/dist/dso-toolkit/p-07952ece.entry.js +1 -0
  91. package/dist/dso-toolkit/p-09424a1d.entry.js +1 -0
  92. package/dist/dso-toolkit/{p-a9baa631.entry.js → p-0af9bfb1.entry.js} +1 -1
  93. package/dist/dso-toolkit/{p-746dc38a.entry.js → p-0fce0861.entry.js} +1 -1
  94. package/dist/dso-toolkit/{p-abbcbe6a.entry.js → p-147ec7bd.entry.js} +1 -1
  95. package/dist/dso-toolkit/{p-a8cb2eae.entry.js → p-1aef13ee.entry.js} +1 -1
  96. package/dist/dso-toolkit/{p-19323600.entry.js → p-1cb94d7d.entry.js} +1 -1
  97. package/dist/dso-toolkit/p-1cea3b99.js +1 -0
  98. package/dist/dso-toolkit/{p-c846d208.entry.js → p-22f9240a.entry.js} +1 -1
  99. package/dist/dso-toolkit/p-30df5586.entry.js +1 -0
  100. package/dist/dso-toolkit/{p-427f6d90.entry.js → p-3914ad70.entry.js} +1 -1
  101. package/dist/dso-toolkit/{p-67c4987c.entry.js → p-43f3d736.entry.js} +1 -1
  102. package/dist/dso-toolkit/p-452c7fbb.entry.js +1 -0
  103. package/dist/dso-toolkit/{p-3b8cbd05.entry.js → p-494fe8e5.entry.js} +1 -1
  104. package/dist/dso-toolkit/p-4b18389c.entry.js +1 -0
  105. package/dist/dso-toolkit/p-4b8535b7.js +1 -0
  106. package/dist/dso-toolkit/p-4c8426b7.entry.js +1 -0
  107. package/dist/dso-toolkit/{p-8aa39e7f.entry.js → p-5082d823.entry.js} +1 -1
  108. package/dist/dso-toolkit/{p-ff72ee4c.entry.js → p-588bc4d7.entry.js} +1 -1
  109. package/dist/dso-toolkit/p-67df25a7.entry.js +1 -0
  110. package/dist/dso-toolkit/p-6cdc1acd.entry.js +1 -0
  111. package/dist/dso-toolkit/{p-11176cb8.entry.js → p-82465cdc.entry.js} +1 -1
  112. package/dist/dso-toolkit/p-85b18dbd.js +1 -0
  113. package/dist/dso-toolkit/p-89b97fce.js +1 -0
  114. package/dist/dso-toolkit/{p-8e9f6355.entry.js → p-96efc763.entry.js} +1 -1
  115. package/dist/dso-toolkit/{p-8f35c8f8.js → p-98fd1658.js} +1 -1
  116. package/dist/dso-toolkit/p-9b07b034.entry.js +1 -0
  117. package/dist/dso-toolkit/p-ad0b38cf.entry.js +1 -0
  118. package/dist/dso-toolkit/{p-6080bb9e.entry.js → p-ba0da696.entry.js} +1 -1
  119. package/dist/dso-toolkit/p-c1226b66.entry.js +1 -0
  120. package/dist/dso-toolkit/{p-520a2cdd.entry.js → p-c16ce11e.entry.js} +1 -1
  121. package/dist/dso-toolkit/p-c2a4f4ea.entry.js +1 -0
  122. package/dist/dso-toolkit/{p-655eff47.entry.js → p-c54ad578.entry.js} +1 -1
  123. package/dist/dso-toolkit/{p-35687d62.entry.js → p-d4772fb0.entry.js} +1 -1
  124. package/dist/dso-toolkit/{p-2fa96ac0.entry.js → p-d6ea8670.entry.js} +1 -1
  125. package/dist/dso-toolkit/{p-ec25868b.entry.js → p-d987ef37.entry.js} +1 -1
  126. package/dist/dso-toolkit/{p-92ad1cdb.entry.js → p-e00a3019.entry.js} +1 -1
  127. package/dist/dso-toolkit/p-e3c9c7d0.entry.js +1 -0
  128. package/dist/dso-toolkit/{p-ec4501bb.entry.js → p-e4f667b3.entry.js} +1 -1
  129. package/dist/dso-toolkit/p-ee1acb32.entry.js +1 -0
  130. package/dist/dso-toolkit/{p-55142124.entry.js → p-efdf5c91.entry.js} +1 -1
  131. package/dist/dso-toolkit/p-f3f0d6c9.entry.js +1 -0
  132. package/dist/dso-toolkit/p-f53860da.entry.js +1 -0
  133. package/dist/dso-toolkit/{p-76a1428a.entry.js → p-f8a08ba1.entry.js} +1 -1
  134. package/dist/esm/annotation.service-d0add3fc.js +19 -0
  135. package/dist/esm/dso-accordion-section.entry.js +2 -2
  136. package/dist/esm/dso-accordion.entry.js +2 -192
  137. package/dist/esm/dso-alert.entry.js +2 -2
  138. package/dist/esm/dso-annotation-button.entry.js +21 -0
  139. package/dist/esm/dso-annotation-output.entry.js +31 -0
  140. package/dist/esm/dso-attachments-counter.entry.js +1 -1
  141. package/dist/esm/dso-autosuggest.entry.js +1 -1
  142. package/dist/esm/dso-badge.entry.js +2 -2
  143. package/dist/esm/dso-banner.entry.js +1 -1
  144. package/dist/esm/dso-card-container.entry.js +1 -1
  145. package/dist/esm/dso-card.entry.js +6 -4
  146. package/dist/esm/dso-date-picker.entry.js +1 -1
  147. package/dist/esm/dso-dropdown-menu.entry.js +46 -2
  148. package/dist/esm/dso-expandable-heading.entry.js +43 -0
  149. package/dist/esm/dso-expandable.entry.js +16 -0
  150. package/dist/esm/dso-header.entry.js +2 -2
  151. package/dist/esm/dso-helpcenter-panel.entry.js +1 -1
  152. package/dist/esm/dso-highlight-box.entry.js +2 -2
  153. package/dist/esm/dso-icon.entry.js +1 -1
  154. package/dist/esm/dso-image-overlay.entry.js +2 -3
  155. package/dist/esm/dso-info-button.entry.js +1 -1
  156. package/dist/esm/dso-info_2.entry.js +5 -4
  157. package/dist/esm/dso-label.entry.js +3 -3
  158. package/dist/esm/dso-list-button.entry.js +1 -1
  159. package/dist/esm/dso-map-base-layers.entry.js +1 -1
  160. package/dist/esm/dso-map-controls.entry.js +11 -3
  161. package/dist/esm/dso-map-overlays.entry.js +1 -1
  162. package/dist/esm/dso-modal.entry.js +1 -1
  163. package/dist/esm/dso-ozon-content.entry.js +1 -1
  164. package/dist/esm/dso-pagination.entry.js +1 -1
  165. package/dist/esm/dso-progress-bar.entry.js +1 -1
  166. package/dist/esm/dso-progress-indicator.entry.js +1 -1
  167. package/dist/esm/dso-responsive-element.entry.js +1 -1
  168. package/dist/esm/dso-slide-toggle.entry.js +1 -1
  169. package/dist/esm/dso-table.entry.js +1 -1
  170. package/dist/esm/dso-toggletip.entry.js +1 -1
  171. package/dist/esm/dso-toolkit.js +2 -2
  172. package/dist/esm/dso-tooltip.entry.js +2 -1799
  173. package/dist/esm/dso-tree-view.entry.js +1 -1
  174. package/dist/esm/dso-viewer-grid.entry.js +1 -1
  175. package/dist/esm/{index-1a4dda48.js → index-ac5a22a3.js} +1 -1
  176. package/dist/esm/index-d6ffb688.js +194 -0
  177. package/dist/esm/index.js +1 -1
  178. package/dist/esm/loader.js +2 -2
  179. package/dist/esm/map-controls.interfaces-2323e8ac.js +3 -0
  180. package/dist/esm/popper-467f7841.js +1799 -0
  181. package/dist/types/components/annotation-button/annotation-button.d.ts +7 -0
  182. package/dist/types/components/annotation-output/annotation-output.d.ts +12 -0
  183. package/dist/types/components/annotation-output/annotation-output.interfaces.d.ts +4 -0
  184. package/dist/types/components/badge/badge.d.ts +1 -1
  185. package/dist/types/components/card/card.d.ts +1 -0
  186. package/dist/types/components/dropdown-menu/dropdown-menu.d.ts +5 -0
  187. package/dist/types/components/expandable/expandable.d.ts +4 -0
  188. package/dist/types/components/expandable-heading/expandable-heading.d.ts +11 -0
  189. package/dist/types/components/expandable-heading/expandable-heading.interfaces.d.ts +5 -0
  190. package/dist/types/components/expandable-heading/heading.d.ts +9 -0
  191. package/dist/types/components/image-overlay/image-overlay.d.ts +0 -1
  192. package/dist/types/components/label/label.d.ts +1 -1
  193. package/dist/types/components/map-controls/map-controls.d.ts +9 -0
  194. package/dist/types/components/map-controls/map-controls.interfaces.d.ts +5 -0
  195. package/dist/types/components/selectable/selectable.d.ts +1 -0
  196. package/dist/types/components.d.ts +113 -4
  197. package/dist/types/index.d.ts +3 -0
  198. package/dist/types/services/annotation.service.d.ts +10 -0
  199. package/package.json +2 -2
  200. package/dist/dso-toolkit/p-04ffcc93.entry.js +0 -1
  201. package/dist/dso-toolkit/p-06b4f78d.entry.js +0 -1
  202. package/dist/dso-toolkit/p-0e5315a3.entry.js +0 -1
  203. package/dist/dso-toolkit/p-36cd87c4.entry.js +0 -1
  204. package/dist/dso-toolkit/p-46acc09f.entry.js +0 -1
  205. package/dist/dso-toolkit/p-6bd8515a.entry.js +0 -1
  206. package/dist/dso-toolkit/p-78ee23c5.entry.js +0 -1
  207. package/dist/dso-toolkit/p-9287b2f2.entry.js +0 -1
  208. package/dist/dso-toolkit/p-c2157b55.entry.js +0 -1
  209. package/dist/dso-toolkit/p-c7ec6e6e.entry.js +0 -1
  210. package/dist/dso-toolkit/p-ce475f06.entry.js +0 -1
  211. package/dist/dso-toolkit/p-d7b2adc3.entry.js +0 -1
@@ -4,6 +4,8 @@
4
4
  "./components/accordion/accordion.js",
5
5
  "./components/accordion/components/accordion-section.js",
6
6
  "./components/alert/alert.js",
7
+ "./components/annotation-button/annotation-button.js",
8
+ "./components/annotation-output/annotation-output.js",
7
9
  "./components/attachments-counter/attachments-counter.js",
8
10
  "./components/autosuggest/autosuggest.js",
9
11
  "./components/badge/badge.js",
@@ -12,6 +14,8 @@
12
14
  "./components/card-container/card-container.js",
13
15
  "./components/date-picker/date-picker.js",
14
16
  "./components/dropdown-menu/dropdown-menu.js",
17
+ "./components/expandable/expandable.js",
18
+ "./components/expandable-heading/expandable-heading.js",
15
19
  "./components/header/header.js",
16
20
  "./components/helpcenter-panel/helpcenter-panel.js",
17
21
  "./components/highlight-box/highlight-box.js",
@@ -222,14 +222,18 @@
222
222
  }
223
223
  :host(.dso-accordion-conclusion) .dso-section-handle a,
224
224
  :host(.dso-accordion-conclusion) .dso-section-handle button {
225
- color: #191919;
225
+ color: #000;
226
226
  }
227
227
  :host(.dso-accordion-conclusion) .dso-section-handle a:hover, :host(.dso-accordion-conclusion) .dso-section-handle a:active, :host(.dso-accordion-conclusion) .dso-section-handle a.active,
228
228
  :host(.dso-accordion-conclusion) .dso-section-handle button:hover,
229
229
  :host(.dso-accordion-conclusion) .dso-section-handle button:active,
230
230
  :host(.dso-accordion-conclusion) .dso-section-handle button.active {
231
231
  background-color: #e5e5e5;
232
- color: #191919;
232
+ }
233
+ :host(.dso-accordion-conclusion) .dso-section-handle a dso-attachments-counter,
234
+ :host(.dso-accordion-conclusion) .dso-section-handle button dso-attachments-counter {
235
+ --dso-attachments-counter-color: #000;
236
+ --dso-icon: var(--di-paperclip-zwart);
233
237
  }
234
238
  :host(.dso-accordion-conclusion) .dso-section-body {
235
239
  border: 2px solid #f2f2f2;
@@ -238,15 +242,6 @@
238
242
  :host(.dso-accordion-conclusion[open]:not(.dso-nested-accordion)) > .dso-section-handle {
239
243
  background-color: #f2f2f2;
240
244
  }
241
- :host(.dso-accordion-conclusion[open]:not(.dso-nested-accordion)) > .dso-section-handle a,
242
- :host(.dso-accordion-conclusion[open]:not(.dso-nested-accordion)) > .dso-section-handle button {
243
- color: #191919;
244
- }
245
- :host(.dso-accordion-conclusion[open]:not(.dso-nested-accordion)) > .dso-section-handle a dso-attachments-counter,
246
- :host(.dso-accordion-conclusion[open]:not(.dso-nested-accordion)) > .dso-section-handle button dso-attachments-counter {
247
- --dso-attachments-counter-color: #666;
248
- --dso-icon: var(--di-paperclip-grijs);
249
- }
250
245
 
251
246
  :host(.dso-accordion-conclusion.dso-nested-accordion[open]) {
252
247
  background-color: #fff;
@@ -44,22 +44,22 @@
44
44
  margin-top: 24px;
45
45
  }
46
46
  .alert.alert-success {
47
- color: #191919;
47
+ color: #000;
48
48
  background-color: #e4f1d4;
49
49
  border-color: #e4f1d4;
50
50
  }
51
51
  .alert.alert-error {
52
- color: #191919;
52
+ color: #000;
53
53
  background-color: #f5d8dc;
54
54
  border-color: #f5d8dc;
55
55
  }
56
56
  .alert.alert-warning {
57
- color: #191919;
57
+ color: #000;
58
58
  background-color: #f8f6cc;
59
59
  border-color: #f8f6cc;
60
60
  }
61
61
  .alert.alert-info {
62
- color: #191919;
62
+ color: #000;
63
63
  background-color: #e1ecf7;
64
64
  border-color: #e1ecf7;
65
65
  }
@@ -0,0 +1,3 @@
1
+ dso-annotation-button {
2
+ display: block;
3
+ }
@@ -0,0 +1,45 @@
1
+ import { h } from "@stencil/core";
2
+ import { AnnotationService } from "../../services/annotation.service";
3
+ export class AnnotationButton {
4
+ constructor() {
5
+ this.identifier = undefined;
6
+ }
7
+ componentDidLoad() {
8
+ this.annotationOutput = document.querySelector(`dso-annotation-output[identifier='${this.identifier}']`);
9
+ }
10
+ render() {
11
+ return (h("button", { type: "button", class: "dso-tertiary", "aria-controls": this.identifier, "aria-expanded": AnnotationService.state[this.identifier] ? "true" : "false", onClick: (e) => { var _a; return (_a = this.annotationOutput) === null || _a === void 0 ? void 0 : _a.toggleAnnotation(e, this.identifier); } }, h("dso-icon", { icon: "label" }), h("span", { class: "sr-only" }, "Toelichting bekijken")));
12
+ }
13
+ static get is() { return "dso-annotation-button"; }
14
+ static get originalStyleUrls() {
15
+ return {
16
+ "$": ["annotation-button.scss"]
17
+ };
18
+ }
19
+ static get styleUrls() {
20
+ return {
21
+ "$": ["annotation-button.css"]
22
+ };
23
+ }
24
+ static get properties() {
25
+ return {
26
+ "identifier": {
27
+ "type": "string",
28
+ "mutable": false,
29
+ "complexType": {
30
+ "original": "string",
31
+ "resolved": "string",
32
+ "references": {}
33
+ },
34
+ "required": true,
35
+ "optional": false,
36
+ "docs": {
37
+ "tags": [],
38
+ "text": ""
39
+ },
40
+ "attribute": "identifier",
41
+ "reflect": false
42
+ }
43
+ };
44
+ }
45
+ }
@@ -0,0 +1,82 @@
1
+ *,
2
+ *::after,
3
+ *::before {
4
+ box-sizing: border-box;
5
+ }
6
+
7
+ dso-annotation-output {
8
+ display: block;
9
+ }
10
+
11
+ .sr-only {
12
+ position: absolute;
13
+ width: 1px;
14
+ height: 1px;
15
+ padding: 0;
16
+ margin: -1px;
17
+ overflow: hidden;
18
+ clip: rect(0, 0, 0, 0);
19
+ border: 0;
20
+ }
21
+
22
+ .dso-annotation-header {
23
+ align-items: center;
24
+ background-color: #f2f2f2;
25
+ clear: both;
26
+ display: flex;
27
+ margin-bottom: 2px;
28
+ margin-top: 8px;
29
+ padding-left: 16px;
30
+ padding-right: 8px;
31
+ padding-top: 8px;
32
+ padding-bottom: 8px;
33
+ }
34
+ .dso-annotation-header > *[slot=title] {
35
+ color: #000;
36
+ font-size: 1.25rem;
37
+ margin-bottom: 0;
38
+ margin-top: 0;
39
+ }
40
+ .dso-annotation-header > *:nth-child(2) {
41
+ margin-left: auto;
42
+ }
43
+
44
+ dso-responsive-element[small] .dso-annotation-header,
45
+ dso-responsive-element[medium] .dso-annotation-header {
46
+ display: grid;
47
+ row-gap: 8px;
48
+ }
49
+ dso-responsive-element[small] .dso-annotation-header *[slot=title],
50
+ dso-responsive-element[medium] .dso-annotation-header *[slot=title] {
51
+ grid-row: 1;
52
+ grid-column: 1;
53
+ }
54
+ dso-responsive-element[small] .dso-annotation-header *[slot=addons],
55
+ dso-responsive-element[medium] .dso-annotation-header *[slot=addons] {
56
+ grid-row: 2;
57
+ grid-column: 1;
58
+ margin-left: initial;
59
+ }
60
+ dso-responsive-element[small] .dso-annotation-header .dso-annotation-close-button,
61
+ dso-responsive-element[medium] .dso-annotation-header .dso-annotation-close-button {
62
+ grid-row: 1;
63
+ grid-column: 2;
64
+ margin-left: 8px;
65
+ text-align: end;
66
+ }
67
+
68
+ .dso-annotation-content {
69
+ background-color: #f2f2f2;
70
+ padding-left: 16px;
71
+ padding-right: 8px;
72
+ padding-top: 8px;
73
+ padding-bottom: 8px;
74
+ }
75
+
76
+ .dso-annotation-close-button {
77
+ margin-left: 32px;
78
+ }
79
+
80
+ .dso-annotation-prefix {
81
+ font-style: italic;
82
+ }
@@ -0,0 +1,126 @@
1
+ import { h } from "@stencil/core";
2
+ import { AnnotationService } from "../../services/annotation.service";
3
+ export class AnnotationOutput {
4
+ constructor() {
5
+ this.identifier = undefined;
6
+ this.annotationPrefix = undefined;
7
+ }
8
+ async toggleAnnotation(e, identifier) {
9
+ AnnotationService.toggle(identifier);
10
+ this.dsoToggle.emit({
11
+ originalEvent: e,
12
+ open: AnnotationService.state[this.identifier],
13
+ });
14
+ }
15
+ toggleHandler(e) {
16
+ this.toggleAnnotation(e, this.identifier);
17
+ }
18
+ render() {
19
+ const expandableProperties = AnnotationService.state[this.identifier] ? { open: true } : {};
20
+ return (h("dso-responsive-element", null, h("dso-expandable", Object.assign({ id: this.identifier }, expandableProperties), this.annotationPrefix && h("span", { class: "dso-annotation-prefix" }, this.annotationPrefix), h("div", { class: "dso-annotation-header" }, h("slot", { name: "title" }), h("slot", { name: "addons" }), h("button", { type: "button", class: "dso-tertiary dso-annotation-close-button", onClick: (e) => this.toggleHandler(e) }, h("dso-icon", { icon: "times" }), h("span", { class: "sr-only" }, "Toelichting sluiten"))), h("div", { class: "dso-annotation-content" }, h("slot", null)))));
21
+ }
22
+ static get is() { return "dso-annotation-output"; }
23
+ static get originalStyleUrls() {
24
+ return {
25
+ "$": ["annotation-output.scss"]
26
+ };
27
+ }
28
+ static get styleUrls() {
29
+ return {
30
+ "$": ["annotation-output.css"]
31
+ };
32
+ }
33
+ static get properties() {
34
+ return {
35
+ "identifier": {
36
+ "type": "string",
37
+ "mutable": false,
38
+ "complexType": {
39
+ "original": "string",
40
+ "resolved": "string",
41
+ "references": {}
42
+ },
43
+ "required": true,
44
+ "optional": false,
45
+ "docs": {
46
+ "tags": [],
47
+ "text": "The annotation-button that toggles this component should have the same identifier."
48
+ },
49
+ "attribute": "identifier",
50
+ "reflect": false
51
+ },
52
+ "annotationPrefix": {
53
+ "type": "string",
54
+ "mutable": false,
55
+ "complexType": {
56
+ "original": "string",
57
+ "resolved": "string | undefined",
58
+ "references": {}
59
+ },
60
+ "required": false,
61
+ "optional": true,
62
+ "docs": {
63
+ "tags": [],
64
+ "text": "This text will be displayed above the annotation-output when opened"
65
+ },
66
+ "attribute": "annotation-prefix",
67
+ "reflect": false
68
+ }
69
+ };
70
+ }
71
+ static get events() {
72
+ return [{
73
+ "method": "dsoToggle",
74
+ "name": "dsoToggle",
75
+ "bubbles": true,
76
+ "cancelable": true,
77
+ "composed": true,
78
+ "docs": {
79
+ "tags": [],
80
+ "text": ""
81
+ },
82
+ "complexType": {
83
+ "original": "AnnotationToggleEvent",
84
+ "resolved": "AnnotationToggleEvent",
85
+ "references": {
86
+ "AnnotationToggleEvent": {
87
+ "location": "import",
88
+ "path": "./annotation-output.interfaces"
89
+ }
90
+ }
91
+ }
92
+ }];
93
+ }
94
+ static get methods() {
95
+ return {
96
+ "toggleAnnotation": {
97
+ "complexType": {
98
+ "signature": "(e: MouseEvent | KeyboardEvent, identifier: string) => Promise<void>",
99
+ "parameters": [{
100
+ "tags": [],
101
+ "text": ""
102
+ }, {
103
+ "tags": [],
104
+ "text": ""
105
+ }],
106
+ "references": {
107
+ "Promise": {
108
+ "location": "global"
109
+ },
110
+ "MouseEvent": {
111
+ "location": "global"
112
+ },
113
+ "KeyboardEvent": {
114
+ "location": "global"
115
+ }
116
+ },
117
+ "return": "Promise<void>"
118
+ },
119
+ "docs": {
120
+ "text": "",
121
+ "tags": []
122
+ }
123
+ }
124
+ };
125
+ }
126
+ }
@@ -34,7 +34,7 @@
34
34
  .dso-badge.badge-info {
35
35
  background-color: #6ca4d9;
36
36
  border-color: #6ca4d9;
37
- color: #191919;
37
+ color: #000;
38
38
  }
39
39
  .dso-badge.badge-primary {
40
40
  background-color: #275937;
@@ -49,7 +49,7 @@
49
49
  .dso-badge.badge-warning {
50
50
  background-color: #dcd400;
51
51
  border-color: #dcd400;
52
- color: #191919;
52
+ color: #000;
53
53
  }
54
54
  .dso-badge.badge-danger {
55
55
  background-color: #ce3f51;
@@ -65,4 +65,9 @@
65
65
  background-color: #fff;
66
66
  border-color: #191919;
67
67
  color: #191919;
68
+ }
69
+ .dso-badge.badge-attention {
70
+ background-color: #8b4a6a;
71
+ border-color: #8b4a6a;
72
+ color: #fff;
68
73
  }
@@ -25,8 +25,8 @@ export class Badge {
25
25
  "type": "string",
26
26
  "mutable": false,
27
27
  "complexType": {
28
- "original": "\"primary\" | \"success\" | \"info\" | \"warning\" | \"danger\" | \"error\" | \"outline\"",
29
- "resolved": "\"danger\" | \"error\" | \"info\" | \"outline\" | \"primary\" | \"success\" | \"warning\" | undefined",
28
+ "original": "\"primary\" | \"success\" | \"info\" | \"warning\" | \"danger\" | \"error\" | \"outline\" | \"attention\"",
29
+ "resolved": "\"attention\" | \"danger\" | \"error\" | \"info\" | \"outline\" | \"primary\" | \"success\" | \"warning\" | undefined",
30
30
  "references": {}
31
31
  },
32
32
  "required": false,
@@ -14,7 +14,6 @@
14
14
  :host .dso-card-heading {
15
15
  align-items: center;
16
16
  display: flex;
17
- justify-content: space-between;
18
17
  margin-bottom: 8px;
19
18
  }
20
19
  @media screen and (max-width: 480px) {
@@ -1,13 +1,15 @@
1
1
  import { h, Host } from "@stencil/core";
2
+ import clsx from "clsx";
2
3
  import { isInteractiveElement } from "../../utils/is-interactive-element";
3
4
  import { isModifiedEvent } from "../../utils/is-modified-event";
4
5
  export class Card {
5
6
  constructor() {
6
7
  this.isSelectable = false;
7
8
  this.hasImage = false;
9
+ this.clickable = true;
8
10
  }
9
11
  clickEventHandler(e) {
10
- if (!(e.target instanceof HTMLElement)) {
12
+ if (!(e.target instanceof HTMLElement) || !this.clickable) {
11
13
  return;
12
14
  }
13
15
  let element = e.target;
@@ -29,7 +31,7 @@ export class Card {
29
31
  this.hasImage = this.host.querySelector("*[slot = 'image']") !== null;
30
32
  }
31
33
  render() {
32
- return (h(Host, { onClick: (e) => this.clickEventHandler(e) }, h("div", { class: "dso-card-selectable", hidden: !this.isSelectable }, h("slot", { name: "selectable" })), h("div", { class: "dso-card-image", hidden: !this.hasImage }, h("slot", { name: "image" })), h("div", { class: "dso-card-heading" }, h("slot", { name: "heading" }), h("slot", { name: "interactions" })), h("div", { class: "dso-card-content" }, h("slot", { name: "content" }))));
34
+ return (h(Host, { class: clsx({ "dso-not-clickable": !this.clickable }), onClick: (e) => this.clickEventHandler(e) }, h("div", { class: "dso-card-selectable", hidden: !this.isSelectable }, h("slot", { name: "selectable" })), h("div", { class: "dso-card-image", hidden: !this.hasImage }, h("slot", { name: "image" })), h("div", { class: "dso-card-heading" }, h("slot", { name: "heading" }), h("slot", { name: "interactions" })), h("div", { class: "dso-card-content" }, h("slot", { name: "content" }))));
33
35
  }
34
36
  static get is() { return "dso-card"; }
35
37
  static get encapsulation() { return "shadow"; }
@@ -80,6 +82,24 @@ export class Card {
80
82
  "attribute": "has-image",
81
83
  "reflect": true,
82
84
  "defaultValue": "false"
85
+ },
86
+ "clickable": {
87
+ "type": "boolean",
88
+ "mutable": false,
89
+ "complexType": {
90
+ "original": "boolean",
91
+ "resolved": "boolean",
92
+ "references": {}
93
+ },
94
+ "required": false,
95
+ "optional": false,
96
+ "docs": {
97
+ "tags": [],
98
+ "text": ""
99
+ },
100
+ "attribute": "clickable",
101
+ "reflect": false,
102
+ "defaultValue": "true"
83
103
  }
84
104
  };
85
105
  }
@@ -4,5 +4,4 @@
4
4
 
5
5
  :host {
6
6
  display: inline-block;
7
- position: relative;
8
7
  }
@@ -1,3 +1,4 @@
1
+ import { createPopper } from "@popperjs/core";
1
2
  import { h, Host } from "@stencil/core";
2
3
  import { tabbable } from "tabbable";
3
4
  import { v4 as uuidv4 } from "uuid";
@@ -39,6 +40,15 @@ export class DropdownMenu {
39
40
  this.open = false;
40
41
  this.dropdownAlign = "left";
41
42
  this.checkable = false;
43
+ this.boundary = undefined;
44
+ }
45
+ watchPosition() {
46
+ if (!this.popper) {
47
+ return;
48
+ }
49
+ this.popper.setOptions({
50
+ placement: this.dropdownAlign === "right" ? "bottom-end" : "bottom-start",
51
+ });
42
52
  }
43
53
  get button() {
44
54
  const button = this.host.querySelector('button[slot="toggle"]');
@@ -71,8 +81,35 @@ export class DropdownMenu {
71
81
  li.setAttribute("role", "none");
72
82
  }
73
83
  }
84
+ if (this.popper) {
85
+ return;
86
+ }
87
+ const dropdownOptions = this.host.querySelector(".dso-dropdown-options");
88
+ if (!(dropdownOptions instanceof HTMLElement)) {
89
+ throw new Error("dropdown options element is not instanceof HTMLElement");
90
+ }
91
+ this.popper = createPopper(this.button, dropdownOptions, {
92
+ placement: this.dropdownAlign === "right" ? "bottom-end" : "bottom-start",
93
+ modifiers: [
94
+ {
95
+ name: "offset",
96
+ options: {
97
+ offset: [0, 2], // 2px margin between button and options
98
+ },
99
+ },
100
+ {
101
+ name: "preventOverflow",
102
+ options: {
103
+ boundary: this.boundary ? document.querySelector(this.boundary) : null,
104
+ },
105
+ enabled: this.boundary !== undefined,
106
+ },
107
+ ],
108
+ });
74
109
  }
75
110
  componentDidRender() {
111
+ var _a;
112
+ (_a = this.popper) === null || _a === void 0 ? void 0 : _a.update();
76
113
  for (const li of Array.from(this.host.getElementsByTagName("li"))) {
77
114
  for (const tab of tabbable(li)) {
78
115
  tab.setAttribute("role", this.checkable ? "menuitemradio" : "menuitem");
@@ -93,6 +130,10 @@ export class DropdownMenu {
93
130
  }
94
131
  });
95
132
  }
133
+ disconnectedCallback() {
134
+ var _a;
135
+ (_a = this.popper) === null || _a === void 0 ? void 0 : _a.destroy();
136
+ }
96
137
  getActiveElement(root = document) {
97
138
  const activeEl = root.activeElement;
98
139
  if (!activeEl) {
@@ -185,8 +226,31 @@ export class DropdownMenu {
185
226
  "attribute": "checkable",
186
227
  "reflect": false,
187
228
  "defaultValue": "false"
229
+ },
230
+ "boundary": {
231
+ "type": "string",
232
+ "mutable": false,
233
+ "complexType": {
234
+ "original": "string",
235
+ "resolved": "string | undefined",
236
+ "references": {}
237
+ },
238
+ "required": false,
239
+ "optional": true,
240
+ "docs": {
241
+ "tags": [],
242
+ "text": "Selector for the element the dropdown options should not be overflowing."
243
+ },
244
+ "attribute": "boundary",
245
+ "reflect": false
188
246
  }
189
247
  };
190
248
  }
191
249
  static get elementRef() { return "host"; }
250
+ static get watchers() {
251
+ return [{
252
+ "propName": "dropdownAlign",
253
+ "methodName": "watchPosition"
254
+ }];
255
+ }
192
256
  }
@@ -0,0 +1,24 @@
1
+ :host {
2
+ display: none;
3
+ }
4
+
5
+ :host([open]) {
6
+ display: block;
7
+ }
8
+
9
+ *,
10
+ *::after,
11
+ *::before {
12
+ box-sizing: border-box;
13
+ }
14
+
15
+ .sr-only {
16
+ position: absolute;
17
+ width: 1px;
18
+ height: 1px;
19
+ padding: 0;
20
+ margin: -1px;
21
+ overflow: hidden;
22
+ clip: rect(0, 0, 0, 0);
23
+ border: 0;
24
+ }
@@ -0,0 +1,42 @@
1
+ import { h, Host } from "@stencil/core";
2
+ export class Expandable {
3
+ constructor() {
4
+ this.open = undefined;
5
+ }
6
+ render() {
7
+ return (h(Host, { "aria-hidden": this.open ? "false" : "true" }, h("slot", null)));
8
+ }
9
+ static get is() { return "dso-expandable"; }
10
+ static get encapsulation() { return "shadow"; }
11
+ static get originalStyleUrls() {
12
+ return {
13
+ "$": ["expandable.scss"]
14
+ };
15
+ }
16
+ static get styleUrls() {
17
+ return {
18
+ "$": ["expandable.css"]
19
+ };
20
+ }
21
+ static get properties() {
22
+ return {
23
+ "open": {
24
+ "type": "boolean",
25
+ "mutable": false,
26
+ "complexType": {
27
+ "original": "boolean",
28
+ "resolved": "boolean | undefined",
29
+ "references": {}
30
+ },
31
+ "required": false,
32
+ "optional": true,
33
+ "docs": {
34
+ "tags": [],
35
+ "text": ""
36
+ },
37
+ "attribute": "open",
38
+ "reflect": true
39
+ }
40
+ };
41
+ }
42
+ }