@dso-toolkit/core 47.0.1 → 48.0.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 (215) hide show
  1. package/dist/cjs/dso-accordion-section.cjs.entry.js +1447 -58
  2. package/dist/cjs/dso-autosuggest.cjs.entry.js +57 -47
  3. package/dist/cjs/dso-date-picker.cjs.entry.js +3 -2
  4. package/dist/cjs/dso-dropdown-menu.cjs.entry.js +2 -2
  5. package/dist/cjs/dso-helpcenter-panel.cjs.entry.js +1 -1
  6. package/dist/cjs/dso-image-overlay.cjs.entry.js +1 -1
  7. package/dist/cjs/dso-info_2.cjs.entry.js +2 -2
  8. package/dist/cjs/dso-label.cjs.entry.js +2 -2
  9. package/dist/cjs/dso-modal.cjs.entry.js +4 -7
  10. package/dist/cjs/dso-ozon-content.cjs.entry.js +3 -3
  11. package/dist/cjs/dso-table.cjs.entry.js +3 -5
  12. package/dist/cjs/dso-toggletip.cjs.entry.js +1 -1
  13. package/dist/cjs/dso-toolkit.cjs.js +2 -2
  14. package/dist/cjs/dso-tooltip.cjs.entry.js +13 -21
  15. package/dist/cjs/dso-viewer-grid.cjs.entry.js +8 -3
  16. package/dist/cjs/{focus-trap.esm-d83fd673.js → focus-trap.esm-c501d382.js} +82 -155
  17. package/dist/cjs/loader.cjs.js +2 -2
  18. package/dist/collection/collection-manifest.json +8 -8
  19. package/dist/collection/components/accordion/components/accordion-section.css +27 -4
  20. package/dist/collection/components/accordion/components/accordion-section.interfaces.js +6 -0
  21. package/dist/collection/components/accordion/components/accordion-section.js +91 -59
  22. package/dist/collection/components/accordion/components/handles/element.handle.js +7 -0
  23. package/dist/collection/components/accordion/components/handles/heading.handle.js +14 -0
  24. package/dist/collection/components/accordion/components/handles/icon.handle.js +13 -0
  25. package/dist/collection/components/accordion/components/handles/index.js +4 -0
  26. package/dist/collection/components/accordion/components/handles/state-icon.handle.js +15 -0
  27. package/dist/collection/components/autosuggest/autosuggest.interfaces.js +1 -0
  28. package/dist/collection/components/autosuggest/autosuggest.js +61 -49
  29. package/dist/collection/components/banner/banner.js +1 -1
  30. package/dist/collection/components/card-container/card-container.js +1 -1
  31. package/dist/collection/components/date-picker/date-picker.interfaces.js +1 -0
  32. package/dist/collection/components/date-picker/date-picker.js +19 -11
  33. package/dist/collection/components/dropdown-menu/dropdown-menu.js +2 -2
  34. package/dist/collection/components/header/header.js +2 -6
  35. package/dist/collection/components/info-button/info-button.interfaces.js +1 -0
  36. package/dist/collection/components/info-button/info-button.js +2 -1
  37. package/dist/collection/components/label/label.js +2 -2
  38. package/dist/collection/components/modal/modal.css +103 -75
  39. package/dist/collection/components/modal/modal.interfaces.js +1 -0
  40. package/dist/collection/components/modal/modal.js +5 -7
  41. package/dist/collection/components/ozon-content/nodes/noot.node.js +1 -1
  42. package/dist/collection/components/ozon-content/nodes/table.node/table.node.js +1 -1
  43. package/dist/collection/components/progress-indicator/progress-indicator.js +1 -1
  44. package/dist/collection/components/selectable/selectable.css +18 -1
  45. package/dist/collection/components/selectable/selectable.interfaces.js +1 -0
  46. package/dist/collection/components/selectable/selectable.js +3 -2
  47. package/dist/collection/components/table/table.css +49 -16
  48. package/dist/collection/components/table/table.js +2 -4
  49. package/dist/collection/components/toggletip/toggletip.js +1 -1
  50. package/dist/collection/components/tooltip/tooltip.js +13 -42
  51. package/dist/collection/components/tree-view/tree-view.js +8 -2
  52. package/dist/collection/components/viewer-grid/viewer-grid.interfaces.js +1 -0
  53. package/dist/collection/components/viewer-grid/viewer-grid.js +19 -11
  54. package/dist/collection/index.js +13 -0
  55. package/dist/components/clsx.m.js +3 -0
  56. package/dist/components/create-identifier.js +15 -0
  57. package/dist/components/dropdown-menu.js +151 -0
  58. package/dist/components/dso-accordion-section.d.ts +11 -0
  59. package/dist/components/dso-accordion-section.js +1535 -0
  60. package/dist/components/dso-accordion.d.ts +11 -0
  61. package/dist/components/dso-accordion.js +316 -0
  62. package/dist/components/dso-alert.d.ts +11 -0
  63. package/dist/components/dso-alert.js +55 -0
  64. package/dist/components/dso-attachments-counter.d.ts +11 -0
  65. package/dist/components/dso-attachments-counter.js +42 -0
  66. package/dist/components/dso-autosuggest.d.ts +11 -0
  67. package/dist/components/dso-autosuggest.js +309 -0
  68. package/dist/components/dso-badge.d.ts +11 -0
  69. package/dist/components/dso-badge.js +37 -0
  70. package/dist/components/dso-banner.d.ts +11 -0
  71. package/dist/components/dso-banner.js +37 -0
  72. package/dist/components/dso-card-container.d.ts +11 -0
  73. package/dist/components/dso-card-container.js +36 -0
  74. package/dist/components/dso-card.d.ts +11 -0
  75. package/dist/components/dso-card.js +66 -0
  76. package/dist/components/dso-date-picker.d.ts +11 -0
  77. package/dist/components/dso-date-picker.js +682 -0
  78. package/dist/components/dso-dropdown-menu.d.ts +11 -0
  79. package/dist/components/dso-dropdown-menu.js +6 -0
  80. package/dist/components/dso-header.d.ts +11 -0
  81. package/dist/components/dso-header.js +159 -0
  82. package/dist/components/dso-helpcenter-panel.d.ts +11 -0
  83. package/dist/components/dso-helpcenter-panel.js +127 -0
  84. package/dist/components/dso-highlight-box.d.ts +11 -0
  85. package/dist/components/dso-highlight-box.js +55 -0
  86. package/dist/components/dso-icon.d.ts +11 -0
  87. package/dist/components/dso-icon.js +6 -0
  88. package/dist/components/dso-image-overlay.d.ts +11 -0
  89. package/dist/components/dso-image-overlay.js +129 -0
  90. package/dist/components/dso-info-button.d.ts +11 -0
  91. package/dist/components/dso-info-button.js +6 -0
  92. package/dist/components/dso-info.d.ts +11 -0
  93. package/dist/components/dso-info.js +6 -0
  94. package/dist/components/dso-label.d.ts +11 -0
  95. package/dist/components/dso-label.js +156 -0
  96. package/dist/components/dso-map-base-layers.d.ts +11 -0
  97. package/dist/components/dso-map-base-layers.js +80 -0
  98. package/dist/components/dso-map-controls.d.ts +11 -0
  99. package/dist/components/dso-map-controls.js +86 -0
  100. package/dist/components/dso-map-overlays.d.ts +11 -0
  101. package/dist/components/dso-map-overlays.js +81 -0
  102. package/dist/components/dso-modal.d.ts +11 -0
  103. package/dist/components/dso-modal.js +85 -0
  104. package/dist/components/dso-ozon-content.d.ts +11 -0
  105. package/dist/components/dso-ozon-content.js +507 -0
  106. package/dist/components/dso-pagination.d.ts +11 -0
  107. package/dist/components/dso-pagination.js +159 -0
  108. package/dist/components/dso-progress-bar.d.ts +11 -0
  109. package/dist/components/dso-progress-bar.js +42 -0
  110. package/dist/components/dso-progress-indicator.d.ts +11 -0
  111. package/dist/components/dso-progress-indicator.js +6 -0
  112. package/dist/components/dso-responsive-element.d.ts +11 -0
  113. package/dist/components/dso-responsive-element.js +6 -0
  114. package/dist/components/dso-selectable.d.ts +11 -0
  115. package/dist/components/dso-selectable.js +6 -0
  116. package/dist/components/dso-table.d.ts +11 -0
  117. package/dist/components/dso-table.js +111 -0
  118. package/dist/components/dso-toggletip.d.ts +11 -0
  119. package/dist/components/dso-toggletip.js +90 -0
  120. package/dist/components/dso-tooltip.d.ts +11 -0
  121. package/dist/components/dso-tooltip.js +6 -0
  122. package/dist/components/dso-tree-view.d.ts +11 -0
  123. package/dist/components/dso-tree-view.js +227 -0
  124. package/dist/components/dso-viewer-grid.d.ts +11 -0
  125. package/dist/components/dso-viewer-grid.js +171 -0
  126. package/dist/components/focus-trap.esm.js +688 -0
  127. package/dist/components/icon.js +663 -0
  128. package/dist/components/index.d.ts +55 -0
  129. package/dist/components/index.esm.js +458 -0
  130. package/dist/components/index.js +35 -0
  131. package/dist/components/index2.js +70 -0
  132. package/dist/components/info-button.js +56 -0
  133. package/dist/components/info.js +42 -0
  134. package/dist/components/is-modified-event.js +4 -0
  135. package/dist/components/progress-indicator.js +44 -0
  136. package/dist/components/responsive-element.js +67 -0
  137. package/dist/components/selectable.js +108 -0
  138. package/dist/components/tooltip.js +2047 -0
  139. package/dist/components/v4.js +66 -0
  140. package/dist/dso-toolkit/dso-toolkit.esm.js +1 -1
  141. package/dist/dso-toolkit/p-04ffcc93.entry.js +1 -0
  142. package/dist/dso-toolkit/{p-e0a37d82.entry.js → p-06b4f78d.entry.js} +1 -1
  143. package/dist/dso-toolkit/{p-2b83a825.entry.js → p-35687d62.entry.js} +1 -1
  144. package/dist/dso-toolkit/p-52bc72d0.entry.js +1 -0
  145. package/dist/dso-toolkit/p-57ceabab.js +5 -0
  146. package/dist/dso-toolkit/p-655eff47.entry.js +1 -0
  147. package/dist/dso-toolkit/p-672c8323.entry.js +1 -0
  148. package/dist/dso-toolkit/p-7f8be9bc.entry.js +1 -0
  149. package/dist/dso-toolkit/p-80575700.entry.js +1 -0
  150. package/dist/dso-toolkit/p-8e9f6355.entry.js +1 -0
  151. package/dist/dso-toolkit/p-a8cb2eae.entry.js +1 -0
  152. package/dist/dso-toolkit/p-d31805a9.entry.js +1 -0
  153. package/dist/dso-toolkit/{p-dcc74039.entry.js → p-d7b2adc3.entry.js} +1 -1
  154. package/dist/dso-toolkit/{p-800e1267.entry.js → p-daee3252.entry.js} +1 -1
  155. package/dist/dso-toolkit/p-ec5412aa.entry.js +1 -0
  156. package/dist/esm/dso-accordion-section.entry.js +1448 -59
  157. package/dist/esm/dso-autosuggest.entry.js +57 -47
  158. package/dist/esm/dso-date-picker.entry.js +3 -2
  159. package/dist/esm/dso-dropdown-menu.entry.js +2 -2
  160. package/dist/esm/dso-helpcenter-panel.entry.js +1 -1
  161. package/dist/esm/dso-image-overlay.entry.js +1 -1
  162. package/dist/esm/dso-info_2.entry.js +2 -2
  163. package/dist/esm/dso-label.entry.js +2 -2
  164. package/dist/esm/dso-modal.entry.js +5 -8
  165. package/dist/esm/dso-ozon-content.entry.js +3 -3
  166. package/dist/esm/dso-table.entry.js +3 -5
  167. package/dist/esm/dso-toggletip.entry.js +1 -1
  168. package/dist/esm/dso-toolkit.js +2 -2
  169. package/dist/esm/dso-tooltip.entry.js +13 -21
  170. package/dist/esm/dso-viewer-grid.entry.js +8 -3
  171. package/dist/esm/{focus-trap.esm-33203b60.js → focus-trap.esm-94794d92.js} +82 -155
  172. package/dist/esm/loader.js +2 -2
  173. package/dist/types/components/accordion/accordion.interfaces.d.ts +0 -2
  174. package/dist/types/components/accordion/components/accordion-section.d.ts +10 -1
  175. package/dist/types/components/accordion/components/accordion-section.interfaces.d.ts +3 -0
  176. package/dist/types/components/accordion/components/handles/element.handle.d.ts +6 -0
  177. package/dist/types/components/accordion/components/handles/heading.handle.d.ts +5 -0
  178. package/dist/types/components/accordion/components/handles/icon.handle.d.ts +7 -0
  179. package/dist/types/components/accordion/components/handles/index.d.ts +4 -0
  180. package/dist/types/components/accordion/components/handles/state-icon.handle.d.ts +5 -0
  181. package/dist/types/components/autosuggest/autosuggest.d.ts +2 -15
  182. package/dist/types/components/autosuggest/autosuggest.interfaces.d.ts +14 -0
  183. package/dist/types/components/date-picker/date-picker.d.ts +2 -15
  184. package/dist/types/components/date-picker/date-picker.interfaces.d.ts +14 -0
  185. package/dist/types/components/dropdown-menu/dropdown-menu.d.ts +1 -1
  186. package/dist/types/components/header/header.d.ts +2 -2
  187. package/dist/types/components/header/header.interfaces.d.ts +1 -0
  188. package/dist/types/components/info-button/info-button.d.ts +1 -4
  189. package/dist/types/components/info-button/info-button.interfaces.d.ts +4 -0
  190. package/dist/types/components/map-overlays/map-overlays.d.ts +1 -1
  191. package/dist/types/components/modal/modal.d.ts +2 -4
  192. package/dist/types/components/modal/modal.interfaces.d.ts +3 -0
  193. package/dist/types/components/selectable/selectable.d.ts +1 -2
  194. package/dist/types/components/selectable/selectable.interfaces.d.ts +2 -0
  195. package/dist/types/components/table/table.d.ts +1 -1
  196. package/dist/types/components/tooltip/tooltip.d.ts +0 -8
  197. package/dist/types/components/tree-view/tree-view.d.ts +2 -2
  198. package/dist/types/components/viewer-grid/viewer-grid.d.ts +5 -16
  199. package/dist/types/components/viewer-grid/viewer-grid.interfaces.d.ts +15 -0
  200. package/dist/types/components.d.ts +20 -26
  201. package/dist/types/index.d.ts +13 -0
  202. package/package.json +8 -8
  203. package/dist/custom-elements/index.d.ts +0 -243
  204. package/dist/custom-elements/index.js +0 -7555
  205. package/dist/dso-toolkit/p-0917f18a.entry.js +0 -1
  206. package/dist/dso-toolkit/p-0c8cd0d8.entry.js +0 -1
  207. package/dist/dso-toolkit/p-203fc66c.entry.js +0 -1
  208. package/dist/dso-toolkit/p-3ab4441a.entry.js +0 -1
  209. package/dist/dso-toolkit/p-44c0bb3e.entry.js +0 -1
  210. package/dist/dso-toolkit/p-89d262b7.js +0 -5
  211. package/dist/dso-toolkit/p-9aa3fa9d.entry.js +0 -1
  212. package/dist/dso-toolkit/p-ba253bcd.entry.js +0 -1
  213. package/dist/dso-toolkit/p-e43e39cf.entry.js +0 -1
  214. package/dist/dso-toolkit/p-e8b22546.entry.js +0 -1
  215. package/dist/dso-toolkit/p-f93b7c7a.entry.js +0 -1
@@ -6,21 +6,73 @@
6
6
  opacity: 1;
7
7
  }
8
8
  }
9
- :host .dso-dialog {
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
+ }
25
+
26
+ button {
27
+ -webkit-appearance: button;
28
+ color: inherit;
29
+ cursor: pointer;
30
+ font: inherit;
31
+ font-family: inherit;
32
+ font-size: inherit;
33
+ line-height: inherit;
34
+ margin: 0;
35
+ overflow: visible;
36
+ text-transform: none;
37
+ }
38
+ button[disabled] {
39
+ cursor: default;
40
+ }
41
+ button::-moz-focus-inner {
42
+ border: 0;
43
+ padding: 0;
44
+ }
45
+
46
+ .dso-modal {
47
+ bottom: 0;
48
+ height: 100%;
49
+ left: 0;
50
+ position: fixed;
51
+ right: 0;
52
+ top: 0;
53
+ z-index: 530;
54
+ }
55
+ .dso-modal .dso-dialog {
56
+ animation: 1s ease-out 0s 1 slideInFromTop;
57
+ margin-top: 15vh;
58
+ margin-left: auto;
59
+ margin-right: auto;
60
+ max-width: 640px;
61
+ opacity: 1;
10
62
  background-color: #fff;
11
63
  box-shadow: 0 8px 24px 0 rgba(25, 25, 25, 0.4);
12
64
  }
13
- :host .dso-header {
65
+ .dso-modal .dso-header {
14
66
  border-bottom: 1px solid #ccc;
15
67
  padding: 16px;
16
68
  position: relative;
17
69
  }
18
- :host .dso-header h2 {
70
+ .dso-modal .dso-header h2 {
19
71
  color: #275937;
20
72
  margin: 0;
21
73
  max-width: calc(100% - 24px);
22
74
  }
23
- :host .dso-header .dso-close {
75
+ .dso-modal .dso-header .dso-close {
24
76
  background-color: transparent;
25
77
  border: 0;
26
78
  height: 32px;
@@ -31,123 +83,99 @@
31
83
  top: 16px;
32
84
  width: 32px;
33
85
  }
34
- :host .dso-body {
86
+ .dso-modal .dso-body {
35
87
  height: calc(100% - 96px - 1.5rem);
36
88
  max-height: calc(70vh - 144px - 1.5em);
37
89
  min-height: 1.5rem;
38
90
  overflow-x: auto;
39
91
  padding: 32px;
40
92
  }
41
- :host .dso-body p {
93
+ .dso-modal .dso-body p {
42
94
  margin: 0 0 16px;
43
95
  }
44
- :host .dso-body ul,
45
- :host .dso-body ol {
96
+ .dso-modal .dso-body ul,
97
+ .dso-modal .dso-body ol {
46
98
  margin-bottom: 16px;
47
99
  }
48
- :host .dso-body ul:not(.list-group):not(.dso-link-list):not(.dso-columns-list),
49
- :host .dso-body ol:not(.list-group):not(.dso-link-list):not(.dso-columns-list) {
100
+ .dso-modal .dso-body ul:not(.list-group):not(.dso-link-list):not(.dso-columns-list),
101
+ .dso-modal .dso-body ol:not(.list-group):not(.dso-link-list):not(.dso-columns-list) {
50
102
  padding-inline-start: 24px;
51
103
  }
52
- :host .dso-body pre {
104
+ .dso-modal .dso-body pre {
53
105
  margin: 0 0 16px;
54
106
  }
55
- :host .dso-body blockquote {
107
+ .dso-modal .dso-body blockquote {
56
108
  padding: 16px 24px;
57
109
  }
58
- :host .dso-body dso-highlight-box,
59
- :host .dso-body .dso-highlight-box {
110
+ .dso-modal .dso-body dso-highlight-box,
111
+ .dso-modal .dso-body .dso-highlight-box {
60
112
  margin-bottom: 24px;
61
113
  }
62
- :host .dso-body img {
114
+ .dso-modal .dso-body img {
63
115
  height: auto;
64
116
  max-width: 100%;
65
117
  }
66
- :host .dso-footer {
118
+ .dso-modal .dso-footer {
67
119
  min-height: 80px;
68
120
  padding: 0 32px 32px;
69
121
  text-align: right;
70
122
  }
71
- @media screen and (min-width: 768px) {
72
- :host {
73
- bottom: 0;
74
- height: 100%;
75
- left: 0;
76
- position: fixed;
77
- right: 0;
78
- top: 0;
79
- z-index: 530;
123
+ @media screen and (max-width: 767px) {
124
+ .dso-modal .dso-footer .btn + .btn, .dso-modal .dso-footer .btn + .dso-primary, .dso-modal .dso-footer .btn + .dso-secondary, .dso-modal .dso-footer .btn + .dso-tertiary, .dso-modal .dso-footer .dso-primary + .btn, .dso-modal .dso-footer .dso-primary + .dso-primary, .dso-modal .dso-footer .dso-primary + .dso-secondary, .dso-modal .dso-footer .dso-primary + .dso-tertiary, .dso-modal .dso-footer .dso-secondary + .btn, .dso-modal .dso-footer .dso-secondary + .dso-primary, .dso-modal .dso-footer .dso-secondary + .dso-secondary, .dso-modal .dso-footer .dso-secondary + .dso-tertiary, .dso-modal .dso-footer .dso-tertiary + .btn, .dso-modal .dso-footer .dso-tertiary + .dso-primary, .dso-modal .dso-footer .dso-tertiary + .dso-secondary, .dso-modal .dso-footer .dso-tertiary + .dso-tertiary {
125
+ margin-left: 0;
80
126
  }
81
- :host .dso-dialog {
82
- animation: 1s ease-out 0s 1 slideInFromTop;
83
- margin: auto;
84
- margin-top: 15vh;
85
- max-width: 640px;
86
- opacity: 1;
127
+ .dso-modal .dso-footer button {
128
+ text-align: center;
129
+ width: 100%;
130
+ }
131
+ .dso-modal .dso-footer button + button {
132
+ margin-top: 8px;
87
133
  }
88
- :host .dso-footer .btn + .dso-secondary, :host .dso-footer .btn + .btn-default, :host .dso-footer .dso-primary + .dso-secondary, :host .dso-footer .dso-primary + .btn-default, :host .dso-footer .dso-secondary + .dso-secondary, :host .dso-footer .dso-secondary + .btn-default, :host .dso-footer .dso-tertiary + .dso-secondary, :host .dso-footer .dso-tertiary + .btn-default {
134
+ .dso-modal .dso-footer button.dso-tertiary,
135
+ .dso-modal .dso-footer button.dso-tertiary span, .dso-modal .dso-footer button.btn-link,
136
+ .dso-modal .dso-footer button.btn-link span {
137
+ float: none;
138
+ }
139
+ }
140
+ @media screen and (min-width: 768px) {
141
+ .dso-modal .dso-footer .btn + .dso-secondary, .dso-modal .dso-footer .btn + .btn-default, .dso-modal .dso-footer .dso-primary + .dso-secondary, .dso-modal .dso-footer .dso-primary + .btn-default, .dso-modal .dso-footer .dso-secondary + .dso-secondary, .dso-modal .dso-footer .dso-secondary + .btn-default, .dso-modal .dso-footer .dso-tertiary + .dso-secondary, .dso-modal .dso-footer .dso-tertiary + .btn-default {
89
142
  margin-left: 16px;
90
143
  }
91
- :host .dso-footer .btn + .dso-tertiary, :host .dso-footer .btn + .btn-link, :host .dso-footer .dso-primary + .dso-tertiary, :host .dso-footer .dso-primary + .btn-link, :host .dso-footer .dso-secondary + .dso-tertiary, :host .dso-footer .dso-secondary + .btn-link, :host .dso-footer .dso-tertiary + .dso-tertiary, :host .dso-footer .dso-tertiary + .btn-link {
144
+ .dso-modal .dso-footer .btn + .dso-tertiary, .dso-modal .dso-footer .btn + .btn-link, .dso-modal .dso-footer .dso-primary + .dso-tertiary, .dso-modal .dso-footer .dso-primary + .btn-link, .dso-modal .dso-footer .dso-secondary + .dso-tertiary, .dso-modal .dso-footer .dso-secondary + .btn-link, .dso-modal .dso-footer .dso-tertiary + .dso-tertiary, .dso-modal .dso-footer .dso-tertiary + .btn-link {
92
145
  margin-left: 0;
93
146
  }
94
147
  }
95
148
  @media screen and (max-width: 767px) {
96
- :host {
149
+ .dso-modal .dso-dialog {
97
150
  max-width: 100%;
151
+ margin-top: 0;
98
152
  }
99
- :host .dso-footer .btn + .btn, :host .dso-footer .btn + .dso-primary, :host .dso-footer .btn + .dso-secondary, :host .dso-footer .btn + .dso-tertiary, :host .dso-footer .dso-primary + .btn, :host .dso-footer .dso-primary + .dso-primary, :host .dso-footer .dso-primary + .dso-secondary, :host .dso-footer .dso-primary + .dso-tertiary, :host .dso-footer .dso-secondary + .btn, :host .dso-footer .dso-secondary + .dso-primary, :host .dso-footer .dso-secondary + .dso-secondary, :host .dso-footer .dso-secondary + .dso-tertiary, :host .dso-footer .dso-tertiary + .btn, :host .dso-footer .dso-tertiary + .dso-primary, :host .dso-footer .dso-tertiary + .dso-secondary, :host .dso-footer .dso-tertiary + .dso-tertiary {
153
+ .dso-modal .dso-footer .btn + .btn, .dso-modal .dso-footer .btn + .dso-primary, .dso-modal .dso-footer .btn + .dso-secondary, .dso-modal .dso-footer .btn + .dso-tertiary, .dso-modal .dso-footer .dso-primary + .btn, .dso-modal .dso-footer .dso-primary + .dso-primary, .dso-modal .dso-footer .dso-primary + .dso-secondary, .dso-modal .dso-footer .dso-primary + .dso-tertiary, .dso-modal .dso-footer .dso-secondary + .btn, .dso-modal .dso-footer .dso-secondary + .dso-primary, .dso-modal .dso-footer .dso-secondary + .dso-secondary, .dso-modal .dso-footer .dso-secondary + .dso-tertiary, .dso-modal .dso-footer .dso-tertiary + .btn, .dso-modal .dso-footer .dso-tertiary + .dso-primary, .dso-modal .dso-footer .dso-tertiary + .dso-secondary, .dso-modal .dso-footer .dso-tertiary + .dso-tertiary {
100
154
  margin-left: 0;
101
155
  }
102
- :host .dso-footer button {
156
+ .dso-modal .dso-footer button {
103
157
  text-align: center;
104
158
  width: 100%;
105
159
  }
106
- :host .dso-footer button + button {
160
+ .dso-modal .dso-footer button + button {
107
161
  margin-top: 8px;
108
162
  }
109
- :host .dso-footer button.dso-tertiary,
110
- :host .dso-footer button.dso-tertiary span, :host .dso-footer button.btn-link,
111
- :host .dso-footer button.btn-link span {
163
+ .dso-modal .dso-footer button.dso-tertiary,
164
+ .dso-modal .dso-footer button.dso-tertiary span, .dso-modal .dso-footer button.btn-link,
165
+ .dso-modal .dso-footer button.btn-link span {
112
166
  float: none;
113
167
  }
114
168
  }
115
169
 
116
- *,
117
- *::after,
118
- *::before {
119
- box-sizing: border-box;
120
- }
121
-
122
- .sr-only {
123
- position: absolute;
124
- width: 1px;
125
- height: 1px;
126
- padding: 0;
127
- margin: -1px;
128
- overflow: hidden;
129
- clip: rect(0, 0, 0, 0);
130
- border: 0;
131
- }
132
-
133
- button {
134
- -webkit-appearance: button;
135
- color: inherit;
136
- cursor: pointer;
137
- font: inherit;
138
- font-family: inherit;
139
- font-size: inherit;
140
- line-height: inherit;
141
- margin: 0;
142
- overflow: visible;
143
- text-transform: none;
144
- }
145
- button[disabled] {
146
- cursor: default;
147
- }
148
- button::-moz-focus-inner {
149
- border: 0;
150
- padding: 0;
170
+ .dso-modal-overlay {
171
+ background-color: rgba(255, 255, 255, 0.8);
172
+ bottom: 0;
173
+ display: block;
174
+ left: 0;
175
+ position: fixed;
176
+ right: 0;
177
+ top: 0;
178
+ z-index: 529;
151
179
  }
152
180
 
153
181
  .dso-close dso-icon {
@@ -1,4 +1,4 @@
1
- import { h, Host } from "@stencil/core";
1
+ import { h, Fragment } from "@stencil/core";
2
2
  import { createFocusTrap } from "focus-trap";
3
3
  import { v4 } from "uuid";
4
4
  export class Modal {
@@ -13,16 +13,14 @@ export class Modal {
13
13
  this.hasFooter = this.host.querySelector("*[slot = 'footer']") !== null;
14
14
  }
15
15
  componentDidLoad() {
16
- document.body.classList.add(Modal.modalOpenClass);
17
16
  this.setFocusTrap();
18
17
  }
19
18
  disconnectedCallback() {
20
19
  var _a;
21
- document.body.classList.remove(Modal.modalOpenClass);
22
20
  (_a = this.trap) === null || _a === void 0 ? void 0 : _a.deactivate();
23
21
  }
24
22
  render() {
25
- return (h(Host, { class: "dso-modal", role: this.role, "aria-modal": "true", "aria-labelledby": this.ariaId }, h("div", { class: "dso-dialog", role: "document", ref: (element) => (this.dialogElement = element) }, this.modalTitle ? (h("div", { class: "dso-header" }, h("h2", { id: this.ariaId }, this.modalTitle), this.showCloseButton && (h("button", { type: "button", class: "dso-close", onClick: (e) => this.dsoClose.emit({ originalEvent: e }) }, h("dso-icon", { icon: "times" }), h("span", { class: "sr-only" }, "Sluiten"))))) : (h("span", { class: "sr-only", id: this.ariaId }, "Dialoog")), h("div", { class: "dso-body" }, h("slot", { name: "body" })), this.hasFooter && (h("div", { class: "dso-footer" }, h("slot", { name: "footer" }))))));
23
+ return (h(Fragment, null, h("div", { class: "dso-modal-overlay" }), h("div", { class: "dso-modal", role: this.role, "aria-modal": "true", "aria-labelledby": this.ariaId, ref: (element) => (this.modalElement = element) }, h("div", { class: "dso-dialog", role: "document", ref: (element) => (this.dialogElement = element) }, this.modalTitle ? (h("div", { class: "dso-header" }, h("h2", { id: this.ariaId }, this.modalTitle), this.showCloseButton && (h("button", { type: "button", class: "dso-close", onClick: (e) => this.dsoClose.emit({ originalEvent: e }) }, h("dso-icon", { icon: "times" }), h("span", { class: "sr-only" }, "Sluiten"))))) : (h("span", { class: "sr-only", id: this.ariaId }, "Dialoog")), h("div", { class: "dso-body" }, h("slot", { name: "body" })), this.hasFooter && (h("div", { class: "dso-footer" }, h("slot", { name: "footer" })))))));
26
24
  }
27
25
  setFocusTrap() {
28
26
  if (this.dialogElement && !this.trap) {
@@ -33,7 +31,7 @@ export class Modal {
33
31
  getShadowRoot: true,
34
32
  },
35
33
  clickOutsideDeactivates: (e) => {
36
- if (e instanceof MouseEvent && e.composedPath()[0] === this.host) {
34
+ if (e instanceof MouseEvent && e.composedPath()[0] === this.modalElement) {
37
35
  return true;
38
36
  }
39
37
  return false;
@@ -140,7 +138,8 @@ export class Modal {
140
138
  "resolved": "DsoModalCloseEvent",
141
139
  "references": {
142
140
  "DsoModalCloseEvent": {
143
- "location": "local"
141
+ "location": "import",
142
+ "path": "./modal.interfaces"
144
143
  }
145
144
  }
146
145
  }
@@ -148,4 +147,3 @@ export class Modal {
148
147
  }
149
148
  static get elementRef() { return "host"; }
150
149
  }
151
- Modal.modalOpenClass = "dso-modal-open";
@@ -18,6 +18,6 @@ export class OzonContentNootNode {
18
18
  const noteControlsId = `dso-ozon-note-${noteId}`;
19
19
  const childNodes = Array.from(node.childNodes);
20
20
  const nootNummer = (_b = (_a = childNodes.find((n) => getNodeName(n) === "NootNummer")) === null || _a === void 0 ? void 0 : _a.textContent) !== null && _b !== void 0 ? _b : noteId;
21
- return (h(Fragment, null, h("sup", null, h("button", { type: "button", class: "toggle-note", id: noteControlsId, onClick: () => setState === null || setState === void 0 ? void 0 : setState(openNoteId === noteId ? undefined : noteId), onBlur: () => setState === null || setState === void 0 ? void 0 : setState(undefined), "aria-expanded": openNoteId === noteId ? "true" : "false" }, nootNummer)), h("dso-tooltip", { active: openNoteId === noteId, for: noteControlsId, stateless: true, descriptive: true }, h("span", { role: "section" }, mapNodeToJsx(Array.from(node.querySelectorAll(":scope > Al")))))));
21
+ return (h(Fragment, null, h("sup", null, h("button", { type: "button", class: "toggle-note", "aria-describedby": noteControlsId, onClick: () => setState === null || setState === void 0 ? void 0 : setState(openNoteId === noteId ? undefined : noteId), onBlur: () => setState === null || setState === void 0 ? void 0 : setState(undefined), "aria-expanded": openNoteId === noteId ? "true" : "false" }, nootNummer)), h("dso-tooltip", { active: openNoteId === noteId, id: noteControlsId, stateless: true, descriptive: true }, h("span", { role: "section" }, mapNodeToJsx(Array.from(node.querySelectorAll(":scope > Al")))))));
22
22
  }
23
23
  }
@@ -21,6 +21,6 @@ export class OzonContentTableNode {
21
21
  }
22
22
  render(node, context) {
23
23
  const { caption, colspecs, headRows, bodyRows } = mapData(node);
24
- return (h("dso-table", null, h("table", { class: "table" }, caption && h("caption", null, caption), colspecs && h(Colgroup, { colspecs: colspecs }), headRows.length > 0 && (h("thead", null, h(Rows, { rows: headRows, colspecs: colspecs, context: context }))), bodyRows.length > 0 && (h("tbody", null, h(Rows, { rows: bodyRows, colspecs: colspecs, context: context }))))));
24
+ return (h("dso-table", null, h("table", { class: "table dso-table-vertical-lines" }, caption && h("caption", null, caption), colspecs && h(Colgroup, { colspecs: colspecs }), headRows.length > 0 && (h("thead", null, h(Rows, { rows: headRows, colspecs: colspecs, context: context }))), bodyRows.length > 0 && (h("tbody", null, h(Rows, { rows: bodyRows, colspecs: colspecs, context: context }))))));
25
25
  }
26
26
  }
@@ -61,7 +61,7 @@ export class Progressindicator {
61
61
  "text": ""
62
62
  },
63
63
  "attribute": "size",
64
- "reflect": false
64
+ "reflect": true
65
65
  },
66
66
  "block": {
67
67
  "type": "boolean",
@@ -1,6 +1,5 @@
1
1
  :host {
2
2
  display: block;
3
- padding: 0 0 0 32px;
4
3
  position: relative;
5
4
  }
6
5
  :host .dso-selectable-options {
@@ -147,4 +146,22 @@
147
146
  *::after,
148
147
  *::before {
149
148
  box-sizing: border-box;
149
+ }
150
+
151
+ .dso-selectable-input-wrapper {
152
+ display: inline-block;
153
+ padding-left: 32px;
154
+ }
155
+ .dso-selectable-input-wrapper:focus-within {
156
+ border-radius: 2px;
157
+ outline-offset: 3px;
158
+ outline: 3px solid #008ccc;
159
+ }
160
+ .dso-selectable-input-wrapper input[type=radio]:focus + label::before,
161
+ .dso-selectable-input-wrapper input[type=checkbox]:focus + label::before {
162
+ box-shadow: 0 0 0 2px var(--dso-selectable-color, #275937);
163
+ height: 20px;
164
+ left: 2px;
165
+ top: 2px;
166
+ width: 20px;
150
167
  }
@@ -41,7 +41,7 @@ export class Selectable {
41
41
  render() {
42
42
  var _a;
43
43
  const hasInfo = !!this.host.querySelector('[slot="info"]');
44
- return (h(Fragment, null, h("input", { type: this.type, id: this.getIdentifier(), value: this.value, name: this.name, "aria-invalid": (_a = this.invalid) === null || _a === void 0 ? void 0 : _a.toString(), "aria-describedby": hasInfo && this.infoFixed ? this.describedById : undefined, disabled: this.disabled, required: this.required, checked: this.checked, onChange: (e) => this.dsoChange.emit(e), ref: (el) => (this.input = el) }), h("label", { htmlFor: this.getIdentifier() }, h("slot", null)), hasInfo && (h(Fragment, null, !this.infoFixed && (h("dso-info-button", { active: this.infoActive, onDsoToggle: (e) => (this.infoActive = e.detail.active) })), h("dso-info", { id: hasInfo && this.infoFixed ? this.describedById : undefined, fixed: this.infoFixed, active: this.infoActive, onDsoClose: () => (this.infoActive = false) }, h("div", null, h("slot", { name: "info" })))))));
44
+ return (h(Fragment, null, h("div", { class: "dso-selectable-input-wrapper" }, h("input", { type: this.type, id: this.getIdentifier(), value: this.value, name: this.name, "aria-invalid": (_a = this.invalid) === null || _a === void 0 ? void 0 : _a.toString(), "aria-describedby": hasInfo && this.infoFixed ? this.describedById : undefined, disabled: this.disabled, required: this.required, checked: this.checked, onChange: (e) => this.dsoChange.emit(e), ref: (el) => (this.input = el) }), h("label", { htmlFor: this.getIdentifier() }, h("slot", null))), hasInfo && (h(Fragment, null, !this.infoFixed && (h("dso-info-button", { active: this.infoActive, onDsoToggle: (e) => (this.infoActive = e.detail.active) })), h("dso-info", { id: hasInfo && this.infoFixed ? this.describedById : undefined, fixed: this.infoFixed, active: this.infoActive, onDsoClose: () => (this.infoActive = false) }, h("div", null, h("slot", { name: "info" })))))));
45
45
  }
46
46
  getIdentifier() {
47
47
  var _a;
@@ -271,7 +271,8 @@ export class Selectable {
271
271
  "resolved": "SelectableChangeEvent",
272
272
  "references": {
273
273
  "SelectableChangeEvent": {
274
- "location": "local"
274
+ "location": "import",
275
+ "path": "./selectable.interfaces"
275
276
  }
276
277
  }
277
278
  }
@@ -11,6 +11,9 @@
11
11
  margin-bottom: 24px;
12
12
  }
13
13
 
14
+ .dso-header {
15
+ min-height: 32px;
16
+ }
14
17
  .dso-header h2 {
15
18
  color: #275937;
16
19
  font-size: 1.5rem;
@@ -21,12 +24,25 @@
21
24
  }
22
25
 
23
26
  :host .dso-modal {
27
+ bottom: 0;
28
+ height: 100%;
29
+ left: 0;
30
+ position: fixed;
31
+ right: 0;
32
+ top: 0;
33
+ z-index: 530;
24
34
  inset: 0px;
25
35
  height: 100%;
26
36
  position: fixed;
27
37
  z-index: 530;
28
38
  }
29
39
  :host .dso-modal .dso-dialog {
40
+ animation: 1s ease-out 0s 1 slideInFromTop;
41
+ margin-top: 15vh;
42
+ margin-left: auto;
43
+ margin-right: auto;
44
+ max-width: 640px;
45
+ opacity: 1;
30
46
  background-color: #fff;
31
47
  box-shadow: 0 8px 24px 0 rgba(25, 25, 25, 0.4);
32
48
  }
@@ -88,23 +104,24 @@
88
104
  padding: 0 32px 32px;
89
105
  text-align: right;
90
106
  }
91
- @media screen and (min-width: 768px) {
92
- :host .dso-modal {
93
- bottom: 0;
94
- height: 100%;
95
- left: 0;
96
- position: fixed;
97
- right: 0;
98
- top: 0;
99
- z-index: 530;
107
+ @media screen and (max-width: 767px) {
108
+ :host .dso-modal .dso-footer .btn + .btn, :host .dso-modal .dso-footer .btn + .dso-primary, :host .dso-modal .dso-footer .btn + .dso-secondary, :host .dso-modal .dso-footer .btn + .dso-tertiary, :host .dso-modal .dso-footer .dso-primary + .btn, :host .dso-modal .dso-footer .dso-primary + .dso-primary, :host .dso-modal .dso-footer .dso-primary + .dso-secondary, :host .dso-modal .dso-footer .dso-primary + .dso-tertiary, :host .dso-modal .dso-footer .dso-secondary + .btn, :host .dso-modal .dso-footer .dso-secondary + .dso-primary, :host .dso-modal .dso-footer .dso-secondary + .dso-secondary, :host .dso-modal .dso-footer .dso-secondary + .dso-tertiary, :host .dso-modal .dso-footer .dso-tertiary + .btn, :host .dso-modal .dso-footer .dso-tertiary + .dso-primary, :host .dso-modal .dso-footer .dso-tertiary + .dso-secondary, :host .dso-modal .dso-footer .dso-tertiary + .dso-tertiary {
109
+ margin-left: 0;
100
110
  }
101
- :host .dso-modal .dso-dialog {
102
- animation: 1s ease-out 0s 1 slideInFromTop;
103
- margin: auto;
104
- margin-top: 15vh;
105
- max-width: 640px;
106
- opacity: 1;
111
+ :host .dso-modal .dso-footer button {
112
+ text-align: center;
113
+ width: 100%;
114
+ }
115
+ :host .dso-modal .dso-footer button + button {
116
+ margin-top: 8px;
117
+ }
118
+ :host .dso-modal .dso-footer button.dso-tertiary,
119
+ :host .dso-modal .dso-footer button.dso-tertiary span, :host .dso-modal .dso-footer button.btn-link,
120
+ :host .dso-modal .dso-footer button.btn-link span {
121
+ float: none;
107
122
  }
123
+ }
124
+ @media screen and (min-width: 768px) {
108
125
  :host .dso-modal .dso-footer .btn + .dso-secondary, :host .dso-modal .dso-footer .btn + .btn-default, :host .dso-modal .dso-footer .dso-primary + .dso-secondary, :host .dso-modal .dso-footer .dso-primary + .btn-default, :host .dso-modal .dso-footer .dso-secondary + .dso-secondary, :host .dso-modal .dso-footer .dso-secondary + .btn-default, :host .dso-modal .dso-footer .dso-tertiary + .dso-secondary, :host .dso-modal .dso-footer .dso-tertiary + .btn-default {
109
126
  margin-left: 16px;
110
127
  }
@@ -113,8 +130,9 @@
113
130
  }
114
131
  }
115
132
  @media screen and (max-width: 767px) {
116
- :host .dso-modal {
133
+ :host .dso-modal .dso-dialog {
117
134
  max-width: 100%;
135
+ margin-top: 0;
118
136
  }
119
137
  :host .dso-modal .dso-footer .btn + .btn, :host .dso-modal .dso-footer .btn + .dso-primary, :host .dso-modal .dso-footer .btn + .dso-secondary, :host .dso-modal .dso-footer .btn + .dso-tertiary, :host .dso-modal .dso-footer .dso-primary + .btn, :host .dso-modal .dso-footer .dso-primary + .dso-primary, :host .dso-modal .dso-footer .dso-primary + .dso-secondary, :host .dso-modal .dso-footer .dso-primary + .dso-tertiary, :host .dso-modal .dso-footer .dso-secondary + .btn, :host .dso-modal .dso-footer .dso-secondary + .dso-primary, :host .dso-modal .dso-footer .dso-secondary + .dso-secondary, :host .dso-modal .dso-footer .dso-secondary + .dso-tertiary, :host .dso-modal .dso-footer .dso-tertiary + .btn, :host .dso-modal .dso-footer .dso-tertiary + .dso-primary, :host .dso-modal .dso-footer .dso-tertiary + .dso-secondary, :host .dso-modal .dso-footer .dso-tertiary + .dso-tertiary {
120
138
  margin-left: 0;
@@ -134,8 +152,12 @@
134
152
  }
135
153
 
136
154
  .dso-modal .dso-dialog.dso-table-dialog {
155
+ margin-top: 1rem;
137
156
  max-width: calc(100% - 2rem);
138
157
  }
158
+ .dso-modal .dso-dialog.dso-table-dialog .dso-body {
159
+ max-height: calc(100vh - 112px - 1.5em - 2rem);
160
+ }
139
161
  @media screen and (max-width: 767px) {
140
162
  .dso-modal .dso-dialog.dso-table-dialog {
141
163
  max-width: 100%;
@@ -276,6 +298,17 @@
276
298
  border: 0;
277
299
  }
278
300
 
301
+ .dso-modal-overlay {
302
+ background-color: rgba(255, 255, 255, 0.8);
303
+ bottom: 0;
304
+ display: block;
305
+ left: 0;
306
+ position: fixed;
307
+ right: 0;
308
+ top: 0;
309
+ z-index: 529;
310
+ }
311
+
279
312
  .dso-table-placeholder {
280
313
  box-shadow: inset 0 0 0 1px #ccc;
281
314
  display: grid;
@@ -30,16 +30,14 @@ export class Table {
30
30
  render() {
31
31
  var _a, _b;
32
32
  const caption = (_b = (_a = this.host.querySelector(":scope > table > caption")) === null || _a === void 0 ? void 0 : _a.textContent) === null || _b === void 0 ? void 0 : _b.trim();
33
- return (h(Host, null, this.modalActive && this.placeholderHeight && (h("div", { class: "dso-table-placeholder", style: { height: `${this.placeholderHeight}px` } })), h("div", { class: { "dso-modal": this.modalActive } }, h("div", Object.assign({ class: { "dso-dialog": this.modalActive, "dso-table-dialog": true }, ref: (element) => (this.focusTrapElement = element) }, (this.modalActive ? { ["aria-labelledby"]: this.labelledbyId, role: "dialog" } : {})), (this.isResponsive || !this.noModal) && (h("div", { class: "dso-table-utilities", style: this.modalActive ? { display: "none" } : undefined }, this.isResponsive && (h("div", { class: "dso-responsive-message" }, h("span", null, "beweeg de tabel van links naar rechts"))), !this.noModal && (h("button", { type: "button", class: "dso-tertiary open-modal-button", ref: (element) => (this.buttonElement = element), onClick: () => this.openModal() }, h("span", { class: "sr-only" }, "tabel ", caption !== null && caption !== void 0 ? caption : "", " "), h("span", null, "vergroten"), h("dso-icon", { icon: "external-link" }))))), this.modalActive && (h("div", { class: "dso-header" }, h("h2", { id: this.labelledbyId, class: { "sr-only": !caption } }, caption || "Uitvergrote tabel dialoog"), h("button", { type: "button", class: "dso-close", onClick: () => this.closeModal() }, h("dso-icon", { icon: "times" }), h("span", { class: "sr-only" }, "Sluiten")))), h("div", { class: { "dso-body": this.modalActive, "dso-table-body": true } }, h("slot", null))))));
33
+ return (h(Host, null, this.modalActive && this.placeholderHeight && (h("div", { class: "dso-table-placeholder", style: { height: `${this.placeholderHeight}px` } })), this.modalActive && h("div", { class: "dso-modal-overlay" }), h("div", { class: { "dso-modal": this.modalActive } }, h("div", Object.assign({ class: { "dso-dialog": this.modalActive, "dso-table-dialog": true }, ref: (element) => (this.focusTrapElement = element) }, (this.modalActive ? { ["aria-labelledby"]: this.labelledbyId, role: "dialog" } : {})), (this.isResponsive || !this.noModal) && (h("div", { class: "dso-table-utilities", style: this.modalActive ? { display: "none" } : undefined }, this.isResponsive && (h("div", { class: "dso-responsive-message" }, h("span", null, "beweeg de tabel van links naar rechts"))), !this.noModal && (h("button", { type: "button", class: "dso-tertiary open-modal-button", ref: (element) => (this.buttonElement = element), onClick: () => this.openModal() }, h("span", { class: "sr-only" }, "tabel ", caption !== null && caption !== void 0 ? caption : "", " "), h("span", null, "vergroten"), h("dso-icon", { icon: "external-link" }))))), this.modalActive && (h("div", { class: "dso-header" }, h("h2", { id: this.labelledbyId, class: { "sr-only": !caption } }, caption || "Uitvergrote tabel dialoog"), h("button", { type: "button", class: "dso-close", onClick: () => this.closeModal() }, h("dso-icon", { icon: "times" }), h("span", { class: "sr-only" }, "Sluiten")))), h("div", { class: { "dso-body": this.modalActive, "dso-table-body": true } }, h("slot", null))))));
34
34
  }
35
35
  openModal() {
36
36
  this.placeholderHeight = this.host.clientHeight;
37
- document.body.classList.add("dso-modal-open");
38
37
  this.modalActive = true;
39
38
  }
40
39
  closeModal() {
41
40
  this.placeholderHeight = undefined;
42
- document.body.classList.remove("dso-modal-open", "dso-modal-open");
43
41
  this.modalActive = false;
44
42
  }
45
43
  setFocusTrap() {
@@ -99,7 +97,7 @@ export class Table {
99
97
  "optional": false,
100
98
  "docs": {
101
99
  "tags": [],
102
- "text": "Prevents the table being opened in a modal."
100
+ "text": "Prevents the table being opened in a modal."
103
101
  },
104
102
  "attribute": "no-modal",
105
103
  "reflect": true,
@@ -35,7 +35,7 @@ export class Toggletip {
35
35
  this.secondary = undefined;
36
36
  }
37
37
  render() {
38
- return (h(Fragment, null, h("dso-info-button", { id: "toggle", onClick: this.click, label: this.label, active: this.active, secondary: this.secondary, ref: (element) => (this.infoButton = element) }), h("dso-tooltip", { stateless: true, descriptive: true, for: "toggle", active: this.active, position: this.position, small: this.small }, h("slot", null))));
38
+ return (h(Fragment, null, h("dso-info-button", { "aria-describedby": "toggle", onClick: this.click, label: this.label, active: this.active, secondary: this.secondary, ref: (element) => (this.infoButton = element) }), h("dso-tooltip", { stateless: true, descriptive: true, id: "toggle", active: this.active, position: this.position, small: this.small }, h("slot", null))));
39
39
  }
40
40
  static get is() { return "dso-toggletip"; }
41
41
  static get encapsulation() { return "shadow"; }
@@ -34,7 +34,6 @@ export class Tooltip {
34
34
  this.descriptive = false;
35
35
  this.position = "top";
36
36
  this.strategy = "auto";
37
- this.for = undefined;
38
37
  this.noArrow = false;
39
38
  this.stateless = undefined;
40
39
  this.small = undefined;
@@ -124,7 +123,10 @@ export class Tooltip {
124
123
  if (!(tooltip instanceof HTMLElement)) {
125
124
  throw new Error("tooltip element is not instanceof HTMLElement");
126
125
  }
127
- this.target = this.getTarget();
126
+ if (!this.element.id) {
127
+ throw new Error("Unable to find reference tooltip has no [id] attribute.");
128
+ }
129
+ this.target = this.getTarget(this.element.id);
128
130
  this.popper = createPopper(this.target, tooltip, {
129
131
  placement: this.position,
130
132
  modifiers: [maxSize, this.applyMaxSize],
@@ -160,28 +162,18 @@ export class Tooltip {
160
162
  }
161
163
  }
162
164
  render() {
163
- return (h(Host, { class: { hidden: this.hidden } }, h("div", { class: clsx("tooltip", { in: this.active }) }, !this.noArrow && h("div", { "data-popper-arrow": true, class: "tooltip-arrow" }), h("div", { "aria-hidden": !this.descriptive || undefined, class: clsx("tooltip-inner", { "dso-small": this.small }) }, h("slot", null)))));
165
+ return (h(Host, { class: { hidden: this.hidden }, role: "tooltip" }, h("div", { class: clsx("tooltip", { in: this.active }) }, !this.noArrow && h("div", { "data-popper-arrow": true, class: "tooltip-arrow" }), h("div", { "aria-hidden": !this.descriptive || undefined, class: clsx("tooltip-inner", { "dso-small": this.small }) }, h("slot", null)))));
164
166
  }
165
- getTarget() {
166
- if (this.for instanceof HTMLElement) {
167
- return this.for;
167
+ getTarget(id) {
168
+ const rootNode = this.element.getRootNode();
169
+ if (!(rootNode instanceof Document || rootNode instanceof ShadowRoot)) {
170
+ throw new Error(`rootNode is not instance of Document or ShadowRoot`);
168
171
  }
169
- if (typeof this.for === "string") {
170
- const rootNode = this.element.getRootNode();
171
- if (!(rootNode instanceof Document || rootNode instanceof ShadowRoot)) {
172
- throw new Error(`rootNode is not instance of Document or ShadowRoot`);
173
- }
174
- const reference = rootNode.getElementById(this.for);
175
- if (!reference) {
176
- throw new Error(`Unable to find reference with id ${this.for}`);
177
- }
178
- return reference;
172
+ const reference = rootNode.querySelector(`[aria-describedBy="${id}`);
173
+ if (!reference) {
174
+ throw new Error(`Unable to find reference with aria-describedby ${id}`);
179
175
  }
180
- const { parentElement } = this.element;
181
- if (!parentElement) {
182
- throw new Error("No reference given with [for] attribute but no parent found either");
183
- }
184
- return parentElement;
176
+ return reference;
185
177
  }
186
178
  static get is() { return "dso-tooltip"; }
187
179
  static get encapsulation() { return "shadow"; }
@@ -251,27 +243,6 @@ export class Tooltip {
251
243
  "reflect": false,
252
244
  "defaultValue": "\"auto\""
253
245
  },
254
- "for": {
255
- "type": "string",
256
- "mutable": false,
257
- "complexType": {
258
- "original": "string | HTMLElement",
259
- "resolved": "HTMLElement | string | undefined",
260
- "references": {
261
- "HTMLElement": {
262
- "location": "global"
263
- }
264
- }
265
- },
266
- "required": false,
267
- "optional": true,
268
- "docs": {
269
- "tags": [],
270
- "text": "Specify target element that the tooltip will describe and listens to for events.\r\n* `undefined`: The direct parent is used.\r\n* `string`: The element is located using `document.getElementById()`\r\n* `HTMLElement`: Pass the target element directly\r\nIf the element is not found an Error is thrown."
271
- },
272
- "attribute": "for",
273
- "reflect": false
274
- },
275
246
  "noArrow": {
276
247
  "type": "boolean",
277
248
  "mutable": false,