@dso-toolkit/core 33.1.0 → 34.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 (173) hide show
  1. package/dist/cjs/dso-alert.cjs.entry.js +1 -1
  2. package/dist/cjs/dso-attachments-counter.cjs.entry.js +2 -2
  3. package/dist/cjs/dso-autosuggest.cjs.entry.js +8 -72
  4. package/dist/cjs/dso-badge.cjs.entry.js +1 -1
  5. package/dist/cjs/dso-banner.cjs.entry.js +1 -1
  6. package/dist/cjs/dso-date-picker.cjs.entry.js +11 -11
  7. package/dist/cjs/dso-dropdown-menu.cjs.entry.js +19 -232
  8. package/dist/cjs/dso-header.cjs.entry.js +101 -0
  9. package/dist/cjs/dso-helpcenter-panel.cjs.entry.js +1 -1
  10. package/dist/cjs/dso-highlight-box.cjs.entry.js +1 -1
  11. package/dist/cjs/dso-icon.cjs.entry.js +1 -1
  12. package/dist/cjs/dso-info-button.cjs.entry.js +2 -2
  13. package/dist/cjs/dso-info_2.cjs.entry.js +2 -2
  14. package/dist/cjs/dso-label.cjs.entry.js +2 -2
  15. package/dist/cjs/dso-map-base-layers.cjs.entry.js +7 -6
  16. package/dist/cjs/dso-map-controls.cjs.entry.js +3 -3
  17. package/dist/cjs/dso-map-overlays.cjs.entry.js +9 -10
  18. package/dist/cjs/dso-ozon-content.cjs.entry.js +1 -1
  19. package/dist/cjs/dso-progress-bar.cjs.entry.js +1 -1
  20. package/dist/cjs/dso-progress-indicator.cjs.entry.js +1 -1
  21. package/dist/cjs/dso-toggletip.cjs.entry.js +1 -1
  22. package/dist/cjs/dso-toolkit.cjs.js +2 -2
  23. package/dist/cjs/dso-tooltip.cjs.entry.js +169 -76
  24. package/dist/cjs/dso-tree-view.cjs.entry.js +2 -2
  25. package/dist/cjs/dso-viewer-grid.cjs.entry.js +778 -0
  26. package/dist/cjs/{index-fcdfdd38.js → index-5ea63531.js} +26 -2
  27. package/dist/cjs/index-794ad37a.js +72 -0
  28. package/dist/cjs/index.esm-2ac7081c.js +267 -0
  29. package/dist/cjs/loader.cjs.js +2 -2
  30. package/dist/collection/collection-manifest.json +3 -1
  31. package/dist/collection/components/alert/alert.css +0 -3
  32. package/dist/collection/components/anchor/anchor.template.js +17 -0
  33. package/dist/collection/components/attachments-counter/attachments-counter.css +0 -4
  34. package/dist/collection/components/autosuggest/autosuggest.css +0 -3
  35. package/dist/collection/components/autosuggest/autosuggest.js +19 -1
  36. package/dist/collection/components/autosuggest/autosuggest.template.js +2 -1
  37. package/dist/collection/components/badge/badge.css +0 -3
  38. package/dist/collection/components/banner/banner.css +0 -3
  39. package/dist/collection/components/button/button.template.js +48 -0
  40. package/dist/collection/components/context/context.template.js +42 -0
  41. package/dist/collection/components/date-picker/date-picker.css +0 -3
  42. package/dist/collection/components/date-picker/date-picker.js +10 -10
  43. package/dist/collection/components/definition-list/definition-list.template.js +36 -0
  44. package/dist/collection/components/dropdown-menu/dropdown-menu.css +0 -3
  45. package/dist/collection/components/dropdown-menu/dropdown-menu.js +15 -4
  46. package/dist/collection/components/header/header.css +433 -0
  47. package/dist/collection/components/header/header.js +294 -0
  48. package/dist/collection/components/header/header.template.js +32 -0
  49. package/dist/collection/components/helpcenter-panel/helpcenter-panel.css +0 -3
  50. package/dist/collection/components/highlight-box/highlight-box.css +0 -3
  51. package/dist/collection/components/icon/icon.css +0 -4
  52. package/dist/collection/components/info/info.css +1 -4
  53. package/dist/collection/components/info-button/info-button.css +1 -3
  54. package/dist/collection/components/label/label.css +0 -3
  55. package/dist/collection/components/label/label.js +2 -1
  56. package/dist/collection/components/label-group/label-group.template.js +7 -0
  57. package/dist/collection/components/list/list.template.js +37 -0
  58. package/dist/collection/components/map-base-layers/map-base-layers.css +4 -3
  59. package/dist/collection/components/map-base-layers/map-base-layers.js +10 -27
  60. package/dist/collection/components/map-controls/map-controls.css +18 -11
  61. package/dist/collection/components/map-controls/map-controls.js +10 -11
  62. package/dist/collection/components/map-controls/map-controls.template.js +12 -20
  63. package/dist/collection/components/map-overlays/map-overlays.css +4 -3
  64. package/dist/collection/components/map-overlays/map-overlays.js +13 -35
  65. package/dist/collection/components/ozon-content/ozon-content.css +0 -3
  66. package/dist/collection/components/progress-bar/progress-bar.css +0 -3
  67. package/dist/collection/components/progress-indicator/progress-indicator.css +0 -3
  68. package/dist/collection/components/selectable/selectable.css +0 -3
  69. package/dist/collection/components/toggletip/toggletip.css +0 -3
  70. package/dist/collection/components/tooltip/tooltip.css +34 -15
  71. package/dist/collection/components/tooltip/tooltip.js +19 -4
  72. package/dist/collection/components/tooltip/tooltip.template.js +3 -5
  73. package/dist/collection/components/tree-view/tree-view.css +3 -3
  74. package/dist/collection/components/viewer-grid/viewer-grid-document-header.template.js +39 -0
  75. package/dist/collection/components/viewer-grid/viewer-grid-document-list-item.template.js +19 -0
  76. package/dist/collection/components/viewer-grid/viewer-grid-filterblok.template.js +28 -0
  77. package/dist/collection/components/viewer-grid/viewer-grid.css +251 -0
  78. package/dist/collection/components/viewer-grid/viewer-grid.js +127 -0
  79. package/dist/collection/components/viewer-grid/viewer-grid.template.js +23 -0
  80. package/dist/custom-elements/index.d.ts +12 -0
  81. package/dist/custom-elements/index.js +1130 -117
  82. package/dist/dso-toolkit/dso-toolkit.css +1 -1
  83. package/dist/dso-toolkit/dso-toolkit.esm.js +1 -1
  84. package/dist/dso-toolkit/p-06de0fa1.entry.js +1 -0
  85. package/dist/dso-toolkit/p-10aa1fba.entry.js +1 -0
  86. package/dist/dso-toolkit/p-17f073d1.entry.js +1 -0
  87. package/dist/dso-toolkit/p-1805f5b0.js +1 -0
  88. package/dist/dso-toolkit/{p-75233655.entry.js → p-1fefbf8c.entry.js} +1 -1
  89. package/dist/dso-toolkit/{p-a52d3623.entry.js → p-20856f91.entry.js} +1 -1
  90. package/dist/dso-toolkit/{p-262858dd.entry.js → p-2b6a3dfa.entry.js} +1 -1
  91. package/dist/dso-toolkit/{p-be5682cc.entry.js → p-348414bf.entry.js} +1 -1
  92. package/dist/dso-toolkit/{p-984551a8.entry.js → p-3b493a2c.entry.js} +1 -1
  93. package/dist/dso-toolkit/p-4e573fc5.entry.js +1 -0
  94. package/dist/dso-toolkit/{p-c9c1bc8f.entry.js → p-5037944e.entry.js} +1 -1
  95. package/dist/dso-toolkit/p-7b006b11.entry.js +1 -0
  96. package/dist/dso-toolkit/p-8bf3a60e.js +5 -0
  97. package/dist/dso-toolkit/p-8f21d07d.entry.js +5 -0
  98. package/dist/dso-toolkit/{p-83f166b3.entry.js → p-94dffa65.entry.js} +1 -1
  99. package/dist/dso-toolkit/{p-b07991b9.entry.js → p-951f5872.entry.js} +1 -1
  100. package/dist/dso-toolkit/p-a6c9e063.entry.js +1 -0
  101. package/dist/dso-toolkit/p-a7306b7b.entry.js +1 -0
  102. package/dist/dso-toolkit/p-aadc4f8e.entry.js +1 -0
  103. package/dist/dso-toolkit/p-ad2210ad.entry.js +1 -0
  104. package/dist/dso-toolkit/{p-b5b946de.entry.js → p-bc14cafd.entry.js} +1 -1
  105. package/dist/dso-toolkit/{p-5665f1ee.entry.js → p-c54ecae1.entry.js} +1 -1
  106. package/dist/dso-toolkit/p-c95108fe.entry.js +1 -0
  107. package/dist/dso-toolkit/{p-e814d644.entry.js → p-daa1e29d.entry.js} +1 -1
  108. package/dist/dso-toolkit/p-dad72605.js +1 -0
  109. package/dist/dso-toolkit/{p-2e7d535c.entry.js → p-dc86d830.entry.js} +1 -1
  110. package/dist/dso-toolkit/{p-19de4cc7.entry.js → p-f0b67246.entry.js} +1 -1
  111. package/dist/esm/dso-alert.entry.js +1 -1
  112. package/dist/esm/dso-attachments-counter.entry.js +2 -2
  113. package/dist/esm/dso-autosuggest.entry.js +7 -71
  114. package/dist/esm/dso-badge.entry.js +1 -1
  115. package/dist/esm/dso-banner.entry.js +1 -1
  116. package/dist/esm/dso-date-picker.entry.js +11 -11
  117. package/dist/esm/dso-dropdown-menu.entry.js +17 -230
  118. package/dist/esm/dso-header.entry.js +97 -0
  119. package/dist/esm/dso-helpcenter-panel.entry.js +1 -1
  120. package/dist/esm/dso-highlight-box.entry.js +1 -1
  121. package/dist/esm/dso-icon.entry.js +1 -1
  122. package/dist/esm/dso-info-button.entry.js +2 -2
  123. package/dist/esm/dso-info_2.entry.js +2 -2
  124. package/dist/esm/dso-label.entry.js +2 -2
  125. package/dist/esm/dso-map-base-layers.entry.js +7 -6
  126. package/dist/esm/dso-map-controls.entry.js +3 -3
  127. package/dist/esm/dso-map-overlays.entry.js +9 -10
  128. package/dist/esm/dso-ozon-content.entry.js +1 -1
  129. package/dist/esm/dso-progress-bar.entry.js +1 -1
  130. package/dist/esm/dso-progress-indicator.entry.js +1 -1
  131. package/dist/esm/dso-toggletip.entry.js +1 -1
  132. package/dist/esm/dso-toolkit.js +2 -2
  133. package/dist/esm/dso-tooltip.entry.js +169 -76
  134. package/dist/esm/dso-tree-view.entry.js +2 -2
  135. package/dist/esm/dso-viewer-grid.entry.js +774 -0
  136. package/dist/esm/{index-61410be2.js → index-d54cae76.js} +26 -2
  137. package/dist/esm/index-f2bf58ce.js +70 -0
  138. package/dist/esm/index.esm-a1362957.js +262 -0
  139. package/dist/esm/loader.js +2 -2
  140. package/dist/types/components/anchor/anchor.template.d.ts +2 -0
  141. package/dist/types/components/autosuggest/autosuggest.d.ts +5 -0
  142. package/dist/types/components/autosuggest/autosuggest.template.d.ts +1 -1
  143. package/dist/types/components/button/button.template.d.ts +2 -0
  144. package/dist/types/components/context/context.template.d.ts +3 -0
  145. package/dist/types/components/definition-list/definition-list.template.d.ts +3 -0
  146. package/dist/types/components/dropdown-menu/dropdown-menu.d.ts +1 -1
  147. package/dist/types/components/header/header.d.ts +36 -0
  148. package/dist/types/components/header/header.template.d.ts +2 -0
  149. package/dist/types/components/label-group/label-group.template.d.ts +2 -0
  150. package/dist/types/components/list/list.template.d.ts +3 -0
  151. package/dist/types/components/map-base-layers/map-base-layers.d.ts +3 -4
  152. package/dist/types/components/map-base-layers/map-base-layers.interfaces.d.ts +6 -1
  153. package/dist/types/components/map-controls/map-controls.template.d.ts +1 -1
  154. package/dist/types/components/map-overlays/map-overlays.d.ts +4 -4
  155. package/dist/types/components/map-overlays/map-overlays.interfaces.d.ts +7 -1
  156. package/dist/types/components/tooltip/tooltip.d.ts +1 -0
  157. package/dist/types/components/viewer-grid/viewer-grid-document-header.template.d.ts +3 -0
  158. package/dist/types/components/viewer-grid/viewer-grid-document-list-item.template.d.ts +3 -0
  159. package/dist/types/components/viewer-grid/viewer-grid-filterblok.template.d.ts +3 -0
  160. package/dist/types/components/viewer-grid/viewer-grid.d.ts +22 -0
  161. package/dist/types/components/viewer-grid/viewer-grid.template.d.ts +3 -0
  162. package/dist/types/components.d.ts +54 -8
  163. package/package.json +4 -2
  164. package/dist/dso-toolkit/p-08427682.entry.js +0 -1
  165. package/dist/dso-toolkit/p-39dae284.entry.js +0 -1
  166. package/dist/dso-toolkit/p-741e96de.entry.js +0 -5
  167. package/dist/dso-toolkit/p-759920d0.entry.js +0 -1
  168. package/dist/dso-toolkit/p-9e9f8bcf.entry.js +0 -1
  169. package/dist/dso-toolkit/p-a40eeb32.js +0 -1
  170. package/dist/dso-toolkit/p-affe82e6.entry.js +0 -1
  171. package/dist/dso-toolkit/p-e03d7741.entry.js +0 -1
  172. package/dist/dso-toolkit/p-e4269e02.entry.js +0 -1
  173. package/dist/dso-toolkit/p-e7700d9e.entry.js +0 -1
@@ -1,6 +1,3 @@
1
- /* stylelint-disable value-keyword-case */
2
- /* stylelint-disable string-no-newline */
3
- /* stylelint-enable */
4
1
  :host {
5
2
  display: block;
6
3
  }
@@ -34,4 +31,8 @@ fieldset .control-label {
34
31
  margin-bottom: 8px;
35
32
  max-width: 100%;
36
33
  text-align: left;
34
+ }
35
+
36
+ p[slot=info] {
37
+ margin: 0;
37
38
  }
@@ -1,20 +1,19 @@
1
1
  import { Component, Event, Prop, h } from '@stencil/core';
2
2
  export class MapOverlays {
3
- constructor() {
4
- this.checkedOverlays = [];
5
- }
6
- toggleOverlay(overlay, checked) {
7
- this.checkedOverlays = checked
8
- ? [...this.checkedOverlays, overlay]
9
- : this.checkedOverlays.filter(o => o !== overlay);
10
- this.checkedOverlaysChange.emit(this.checkedOverlays);
3
+ overlayChangeHandler(overlay, e) {
4
+ const checked = e.detail.target instanceof HTMLInputElement ? !!e.detail.target.checked : false;
5
+ this.toggleOverlay.emit({ overlay, checked });
11
6
  }
12
7
  render() {
13
8
  return (h("fieldset", { class: "form-group dso-checkboxes" },
14
9
  h("legend", { class: "sr-only" }, "Kaartlagen"),
15
10
  h("div", { class: "dso-label-container" },
16
11
  h("span", { class: "control-label", "aria-hidden": "true" }, "Kaartlagen")),
17
- h("div", { class: "dso-field-container" }, this.overlays.map(overlay => (h("dso-selectable", { type: "checkbox", value: overlay.name, checked: this.checkedOverlays.includes(overlay), onDsoChange: () => this.toggleOverlay(overlay, !this.checkedOverlays.includes(overlay)) }, overlay.name))))));
12
+ h("div", { class: "dso-field-container" }, this.overlays.map(overlay => (h("dso-selectable", { type: "checkbox", value: overlay.name, checked: overlay.checked, disabled: overlay.disabled, onDsoChange: e => this.overlayChangeHandler(overlay, e) },
13
+ overlay.name,
14
+ overlay.info
15
+ ? h("p", { slot: "info" }, overlay.info)
16
+ : null))))));
18
17
  }
19
18
  static get is() { return "dso-map-overlays"; }
20
19
  static get encapsulation() { return "shadow"; }
@@ -44,32 +43,11 @@ export class MapOverlays {
44
43
  "tags": [],
45
44
  "text": ""
46
45
  }
47
- },
48
- "checkedOverlays": {
49
- "type": "unknown",
50
- "mutable": true,
51
- "complexType": {
52
- "original": "Overlay[]",
53
- "resolved": "Overlay[]",
54
- "references": {
55
- "Overlay": {
56
- "location": "import",
57
- "path": "./map-overlays.interfaces"
58
- }
59
- }
60
- },
61
- "required": false,
62
- "optional": false,
63
- "docs": {
64
- "tags": [],
65
- "text": ""
66
- },
67
- "defaultValue": "[]"
68
46
  }
69
47
  }; }
70
48
  static get events() { return [{
71
- "method": "checkedOverlaysChange",
72
- "name": "checkedOverlaysChange",
49
+ "method": "toggleOverlay",
50
+ "name": "toggleOverlay",
73
51
  "bubbles": true,
74
52
  "cancelable": true,
75
53
  "composed": true,
@@ -78,10 +56,10 @@ export class MapOverlays {
78
56
  "text": ""
79
57
  },
80
58
  "complexType": {
81
- "original": "Overlay[]",
82
- "resolved": "Overlay[]",
59
+ "original": "OverlayChangeEvent",
60
+ "resolved": "OverlayChangeEvent",
83
61
  "references": {
84
- "Overlay": {
62
+ "OverlayChangeEvent": {
85
63
  "location": "import",
86
64
  "path": "./map-overlays.interfaces"
87
65
  }
@@ -1,6 +1,3 @@
1
- /* stylelint-disable value-keyword-case */
2
- /* stylelint-disable string-no-newline */
3
- /* stylelint-enable */
4
1
  dso-ozon-content {
5
2
  display: block;
6
3
  }
@@ -1,6 +1,3 @@
1
- /* stylelint-disable value-keyword-case */
2
- /* stylelint-disable string-no-newline */
3
- /* stylelint-enable */
4
1
  :host {
5
2
  display: block;
6
3
  }
@@ -1,6 +1,3 @@
1
- /* stylelint-disable value-keyword-case */
2
- /* stylelint-disable string-no-newline */
3
- /* stylelint-enable */
4
1
  *,
5
2
  *::after,
6
3
  *::before {
@@ -1,6 +1,3 @@
1
- /* stylelint-disable value-keyword-case */
2
- /* stylelint-disable string-no-newline */
3
- /* stylelint-enable */
4
1
  :host {
5
2
  display: block;
6
3
  padding: 0 0 0 32px;
@@ -1,6 +1,3 @@
1
- /* stylelint-disable value-keyword-case */
2
- /* stylelint-disable string-no-newline */
3
- /* stylelint-enable */
4
1
  *,
5
2
  *::after,
6
3
  *::before {
@@ -1,8 +1,24 @@
1
- /* stylelint-disable value-keyword-case */
2
- /* stylelint-disable string-no-newline */
3
- /* stylelint-enable */
4
- :host(:not([hidden])) {
5
- display: inline-block;
1
+ :host(.hidden) {
2
+ visibility: hidden;
3
+ }
4
+
5
+ :host-context(dso-toggletip) {
6
+ color: red !important;
7
+ }
8
+ :host-context(dso-toggletip) *[data-popper-placement=top] .tooltip-arrow {
9
+ margin-left: 3px;
10
+ }
11
+ :host-context(dso-toggletip) *[data-popper-placement=right] .tooltip-arrow {
12
+ margin-top: 0;
13
+ }
14
+ :host-context(dso-toggletip) *[data-popper-placement=bottom] .tooltip-arrow {
15
+ margin-left: 3px;
16
+ }
17
+ :host-context(dso-toggletip) *[data-popper-placement=left] {
18
+ margin-right: -8px !important;
19
+ }
20
+ :host-context(dso-toggletip) *[data-popper-placement=left] .tooltip-arrow {
21
+ margin-top: 0;
6
22
  }
7
23
 
8
24
  *,
@@ -36,7 +52,7 @@
36
52
  z-index: 1070;
37
53
  }
38
54
  .tooltip.in {
39
- opacity: 0.9;
55
+ opacity: 1;
40
56
  }
41
57
  .tooltip .tooltip-inner {
42
58
  background-color: #fff;
@@ -55,7 +71,6 @@
55
71
  border-color: transparent;
56
72
  border-style: solid;
57
73
  height: 0;
58
- position: absolute;
59
74
  width: 0;
60
75
  }
61
76
  .tooltip[data-popper-placement=top] {
@@ -66,8 +81,9 @@
66
81
  border-top-color: #fff;
67
82
  border-width: 6px 6px 0;
68
83
  bottom: 0;
69
- left: 50%;
70
- margin-left: -6px;
84
+ }
85
+ .tooltip[data-popper-placement=top] .tooltip-arrow {
86
+ margin-left: -3px;
71
87
  }
72
88
  .tooltip[data-popper-placement=right] {
73
89
  margin-left: 3px;
@@ -77,8 +93,9 @@
77
93
  border-right-color: #fff;
78
94
  border-width: 6px 6px 6px 0;
79
95
  left: 0;
80
- margin-top: -6px;
81
- top: 50%;
96
+ }
97
+ .tooltip[data-popper-placement=right] .tooltip-arrow {
98
+ margin-top: -3px;
82
99
  }
83
100
  .tooltip[data-popper-placement=bottom] {
84
101
  margin-top: 3px;
@@ -87,10 +104,11 @@
87
104
  .tooltip[data-popper-placement=bottom] .tooltip-arrow {
88
105
  border-bottom-color: #fff;
89
106
  border-width: 0 6px 6px;
90
- left: 50%;
91
- margin-left: -6px;
92
107
  top: 0;
93
108
  }
109
+ .tooltip[data-popper-placement=bottom] .tooltip-arrow {
110
+ margin-left: -3px;
111
+ }
94
112
  .tooltip[data-popper-placement=left] {
95
113
  margin-left: -3px;
96
114
  padding: 0 6px;
@@ -98,7 +116,8 @@
98
116
  .tooltip[data-popper-placement=left] .tooltip-arrow {
99
117
  border-left-color: #fff;
100
118
  border-width: 6px 0 6px 6px;
101
- margin-top: -6px;
102
119
  right: 0;
103
- top: 50%;
120
+ }
121
+ .tooltip[data-popper-placement=left] .tooltip-arrow {
122
+ margin-top: -3px;
104
123
  }
@@ -1,4 +1,5 @@
1
- import { createPopper } from '@popperjs/core';
1
+ import { beforeWrite, createPopper } from '@popperjs/core';
2
+ import maxSize from 'popper-max-size-modifier';
2
3
  import { h, Component, Element, Host, Listen, Method, Prop, State, Watch } from '@stencil/core';
3
4
  import clsx from 'clsx';
4
5
  // Keep const in sync with $tooltip-transition-duration in @dso-toolkit/sources/tooltip.scss tooltip_root() mixin
@@ -18,6 +19,19 @@ export class Tooltip {
18
19
  */
19
20
  this.active = false;
20
21
  this.hidden = true;
22
+ this.applyMaxSize = {
23
+ name: 'applyMaxSize',
24
+ enabled: true,
25
+ phase: beforeWrite,
26
+ requires: ['maxSize'],
27
+ fn({ state }) {
28
+ let { width } = state.modifiersData.maxSize;
29
+ if (width < 160) {
30
+ width = 160;
31
+ }
32
+ state.styles.popper = Object.assign(Object.assign({}, state.styles.popper), { maxWidth: `${width}px` });
33
+ },
34
+ };
21
35
  }
22
36
  /**
23
37
  * Activate the tooltip (Sets the `active` attribute)
@@ -75,7 +89,8 @@ export class Tooltip {
75
89
  }
76
90
  this.target = this.getTarget();
77
91
  this.popper = createPopper(this.target, tooltip, {
78
- placement: this.position
92
+ placement: this.position,
93
+ modifiers: [maxSize, this.applyMaxSize],
79
94
  });
80
95
  this.callbacks = {
81
96
  activate: () => (this.active = true),
@@ -107,9 +122,9 @@ export class Tooltip {
107
122
  }
108
123
  }
109
124
  render() {
110
- return (h(Host, { hidden: this.hidden },
125
+ return (h(Host, { class: { 'hidden': this.hidden } },
111
126
  h("div", { class: clsx('tooltip', { in: this.active }), role: "tooltip" },
112
- !this.noArrow && h("div", { class: "tooltip-arrow" }),
127
+ !this.noArrow && h("div", { "data-popper-arrow": true, class: "tooltip-arrow" }),
113
128
  h("div", { class: clsx('tooltip-inner', { 'dso-small': this.small }) },
114
129
  h("slot", null)))));
115
130
  }
@@ -1,9 +1,7 @@
1
1
  import { html } from 'lit-html';
2
2
  import { ifDefined } from 'lit-html/directives/if-defined';
3
3
  export function tooltipTemplate({ active, position, label, id }) {
4
- return html `
5
- <dso-tooltip position=${position} for=${ifDefined(id)} ?active=${active}>
6
- ${label}
7
- </dso-tooltip>
8
- `;
4
+ return html `<dso-tooltip position=${position} for=${ifDefined(id)} ?active=${active}>
5
+ ${label}
6
+ </dso-tooltip>`;
9
7
  }
@@ -1,6 +1,3 @@
1
- /* stylelint-disable value-keyword-case */
2
- /* stylelint-disable string-no-newline */
3
- /* stylelint-enable */
4
1
  :host ul {
5
2
  list-style-type: none;
6
3
  }
@@ -13,11 +10,14 @@
13
10
  :host .tree-branch-control {
14
11
  cursor: pointer;
15
12
  display: inline-block;
13
+ margin: 8px 0;
14
+ vertical-align: top;
16
15
  }
17
16
  :host .tree-content {
18
17
  cursor: pointer;
19
18
  display: inline-block;
20
19
  margin: 8px 0;
20
+ width: calc(100% - 24px);
21
21
  }
22
22
  :host .tree-content.active {
23
23
  font-weight: 700;
@@ -0,0 +1,39 @@
1
+ import { html, nothing } from "lit-html";
2
+ import { buttonTemplate } from "../button/button.template";
3
+ import { definitionListTemplate } from "../definition-list/definition-list.template";
4
+ export function viewerGridDocumentHeaderTemplate({ title, type, features, featuresAction, mapAction, featuresOpen, owner, status, }) {
5
+ return html `
6
+ <div class="dso-document-header">
7
+ ${title}
8
+
9
+ <div class="dso-document-header-container">
10
+ <p class="dso-document-header-type">${type}</p>
11
+ <p class="dso-document-header-owner">${owner}</p>
12
+ <p class="dso-document-header-status">${status}</p>
13
+
14
+ ${buttonTemplate({
15
+ onClick: mapAction,
16
+ label: "Actie",
17
+ variant: null,
18
+ modifier: "dso-document-header-map-action",
19
+ icon: {
20
+ icon: "map-location",
21
+ },
22
+ iconMode: "only",
23
+ })}
24
+ ${buttonTemplate({
25
+ ariaExpanded: featuresOpen,
26
+ onClick: featuresAction,
27
+ label: featuresOpen ? "Minder kenmerken" : "Meer kenmerken",
28
+ variant: null,
29
+ modifier: "dso-document-header-toggle-features",
30
+ icon: {
31
+ icon: featuresOpen ? "angle-up" : "angle-down",
32
+ },
33
+ iconMode: "after",
34
+ })}
35
+ </div>
36
+ ${featuresOpen ? definitionListTemplate(features) : nothing}
37
+ </div>
38
+ `;
39
+ }
@@ -0,0 +1,19 @@
1
+ import { html } from "lit-html";
2
+ import { anchorTemplate } from "../anchor/anchor.template";
3
+ export function viewerGridDocumentListItem({ title, type, owner, status, }) {
4
+ return html `
5
+ <div class="dso-document-list-item">
6
+ ${title}
7
+ <div class="dso-document-list-item-container">
8
+ <p class="dso-document-list-item-type">${type}</p>
9
+ <p class="dso-document-list-item-owner">${owner}</p>
10
+ <p class="dso-document-list-item-status">${status}</p>
11
+ ${anchorTemplate({
12
+ url: "#",
13
+ label: "Hele document bekijken",
14
+ modifier: "dso-document-list-item-open-document",
15
+ })}
16
+ </div>
17
+ </div>
18
+ `;
19
+ }
@@ -0,0 +1,28 @@
1
+ import { html } from "lit-html";
2
+ import { buttonTemplate } from "../button/button.template";
3
+ import { contextTemplate } from "../context/context.template";
4
+ import { labelGroupTemplate } from "../label-group/label-group.template";
5
+ export function viewerGridFilterblok({ title, address, activeFilters, onAllOptions, }) {
6
+ return html `
7
+ <section class="dso-filterblok">
8
+ <div class="dso-highlight-box">
9
+ ${contextTemplate({
10
+ type: "label",
11
+ label: title,
12
+ content: buttonTemplate({
13
+ onClick: onAllOptions,
14
+ variant: "tertiary",
15
+ label: "Alle opties",
16
+ icon: {
17
+ icon: "pencil",
18
+ },
19
+ }),
20
+ children: html `
21
+ <p class="dso-filterblok-address">${address}</p>
22
+ ${labelGroupTemplate({ labels: activeFilters })}
23
+ `,
24
+ })}
25
+ </div>
26
+ </section>
27
+ `;
28
+ }
@@ -0,0 +1,251 @@
1
+ *,
2
+ *::after,
3
+ *::before {
4
+ box-sizing: border-box;
5
+ }
6
+
7
+ :host {
8
+ display: flex;
9
+ height: 100vh;
10
+ overflow: hidden;
11
+ position: relative;
12
+ }
13
+
14
+ :host([small]) .main {
15
+ flex-basis: 375px;
16
+ }
17
+ @media screen and (max-width: 375px) {
18
+ :host([small]) .main {
19
+ transition: none;
20
+ flex-basis: 100vw;
21
+ }
22
+ }
23
+
24
+ :host([medium]) .main {
25
+ flex-basis: 624px;
26
+ }
27
+ @media screen and (max-width: 624px) {
28
+ :host([medium]) .main {
29
+ transition: none;
30
+ flex-basis: 100vw;
31
+ }
32
+ }
33
+
34
+ :host([large]) .main {
35
+ flex-basis: 60%;
36
+ min-width: 768px;
37
+ max-width: 1024px;
38
+ }
39
+ @media screen and (max-width: 768px) {
40
+ :host([large]) .main {
41
+ transition: none;
42
+ flex-basis: 100vw;
43
+ min-width: auto;
44
+ max-width: auto;
45
+ }
46
+ }
47
+
48
+ .shrink,
49
+ .expand,
50
+ .overlay-close-button {
51
+ display: inline-block;
52
+ font-size: 1em;
53
+ font-weight: 500;
54
+ margin-bottom: 0;
55
+ text-decoration: none;
56
+ touch-action: manipulation;
57
+ text-align: left;
58
+ user-select: none;
59
+ vertical-align: middle;
60
+ border: 0;
61
+ color: #39870c;
62
+ line-height: 1;
63
+ padding: 0;
64
+ background-color: transparent;
65
+ }
66
+ .shrink:focus, .shrink:focus-visible,
67
+ .expand:focus,
68
+ .expand:focus-visible,
69
+ .overlay-close-button:focus,
70
+ .overlay-close-button:focus-visible {
71
+ outline-offset: 2px;
72
+ }
73
+ .shrink:active,
74
+ .expand:active,
75
+ .overlay-close-button:active {
76
+ outline: 0;
77
+ }
78
+ .shrink.extern::after, .shrink.download::after,
79
+ .expand.extern::after,
80
+ .expand.download::after,
81
+ .overlay-close-button.extern::after,
82
+ .overlay-close-button.download::after {
83
+ content: "";
84
+ display: inline-block;
85
+ height: 1.5em;
86
+ margin-left: 8px;
87
+ vertical-align: top;
88
+ width: 1.5em;
89
+ }
90
+ .shrink[disabled],
91
+ .expand[disabled],
92
+ .overlay-close-button[disabled] {
93
+ color: #afcf9d;
94
+ }
95
+ .shrink:not([disabled]):hover,
96
+ .expand:not([disabled]):hover,
97
+ .overlay-close-button:not([disabled]):hover {
98
+ color: #676cb0;
99
+ text-decoration: underline;
100
+ }
101
+ .shrink:not([disabled]):active,
102
+ .expand:not([disabled]):active,
103
+ .overlay-close-button:not([disabled]):active {
104
+ color: #676cb0;
105
+ }
106
+ .shrink.btn-align,
107
+ .expand.btn-align,
108
+ .overlay-close-button.btn-align {
109
+ line-height: calc(1.5em - 1px);
110
+ padding: 11px 0;
111
+ position: relative;
112
+ }
113
+ .shrink.extern::after, .shrink.download::after,
114
+ .expand.extern::after,
115
+ .expand.download::after,
116
+ .overlay-close-button.extern::after,
117
+ .overlay-close-button.download::after {
118
+ position: relative;
119
+ top: -2px;
120
+ }
121
+ .shrink.download::after,
122
+ .expand.download::after,
123
+ .overlay-close-button.download::after {
124
+ background: var(--dso-icon, var(--di-download)) no-repeat;
125
+ background-position: center;
126
+ background-size: cover;
127
+ height: 1.5em;
128
+ vertical-align: top;
129
+ width: 1.5em;
130
+ }
131
+ .shrink.download[disabled]::after,
132
+ .expand.download[disabled]::after,
133
+ .overlay-close-button.download[disabled]::after {
134
+ --dso-icon: var(--di-download-grasgroen-40);
135
+ }
136
+ .shrink.download:not([disabled]):hover::after, .shrink.download:not([disabled]):active::after,
137
+ .expand.download:not([disabled]):hover::after,
138
+ .expand.download:not([disabled]):active::after,
139
+ .overlay-close-button.download:not([disabled]):hover::after,
140
+ .overlay-close-button.download:not([disabled]):active::after {
141
+ --dso-icon: var(--di-download-scampi);
142
+ }
143
+ .shrink.extern::after,
144
+ .expand.extern::after,
145
+ .overlay-close-button.extern::after {
146
+ background: var(--dso-icon, var(--di-external-link)) no-repeat;
147
+ background-position: center;
148
+ background-size: cover;
149
+ height: 1.5em;
150
+ vertical-align: top;
151
+ width: 1.5em;
152
+ }
153
+ .shrink.extern[disabled]::after,
154
+ .expand.extern[disabled]::after,
155
+ .overlay-close-button.extern[disabled]::after {
156
+ --dso-icon: var(--di-external-link-grasgroen-40);
157
+ }
158
+ .shrink.extern:not([disabled]):hover::after, .shrink.extern:not([disabled]):active::after,
159
+ .expand.extern:not([disabled]):hover::after,
160
+ .expand.extern:not([disabled]):active::after,
161
+ .overlay-close-button.extern:not([disabled]):hover::after,
162
+ .overlay-close-button.extern:not([disabled]):active::after {
163
+ --dso-icon: var(--di-external-link-scampi);
164
+ }
165
+ .shrink dso-icon + span:not(.sr-only),
166
+ .shrink svg.di + span:not(.sr-only),
167
+ .shrink span:not(.sr-only) + dso-icon,
168
+ .shrink span:not(.sr-only) + svg.di,
169
+ .expand dso-icon + span:not(.sr-only),
170
+ .expand svg.di + span:not(.sr-only),
171
+ .expand span:not(.sr-only) + dso-icon,
172
+ .expand span:not(.sr-only) + svg.di,
173
+ .overlay-close-button dso-icon + span:not(.sr-only),
174
+ .overlay-close-button svg.di + span:not(.sr-only),
175
+ .overlay-close-button span:not(.sr-only) + dso-icon,
176
+ .overlay-close-button span:not(.sr-only) + svg.di {
177
+ margin-left: 8px;
178
+ }
179
+ .shrink dso-icon,
180
+ .shrink svg.di,
181
+ .shrink span,
182
+ .expand dso-icon,
183
+ .expand svg.di,
184
+ .expand span,
185
+ .overlay-close-button dso-icon,
186
+ .overlay-close-button svg.di,
187
+ .overlay-close-button span {
188
+ vertical-align: middle;
189
+ }
190
+ .shrink:hover,
191
+ .expand:hover,
192
+ .overlay-close-button:hover {
193
+ cursor: pointer;
194
+ }
195
+ .shrink[disabled],
196
+ .expand[disabled],
197
+ .overlay-close-button[disabled] {
198
+ display: none;
199
+ }
200
+
201
+ .overlay-close-button {
202
+ position: absolute;
203
+ top: 8px;
204
+ right: 16px;
205
+ }
206
+ .overlay-close-button .sr-only {
207
+ position: absolute;
208
+ width: 1px;
209
+ height: 1px;
210
+ padding: 0;
211
+ margin: -1px;
212
+ overflow: hidden;
213
+ clip: rect(0, 0, 0, 0);
214
+ border: 0;
215
+ }
216
+
217
+ .sizing-buttons {
218
+ display: flex;
219
+ justify-content: flex-end;
220
+ margin-bottom: 8px;
221
+ }
222
+
223
+ .main {
224
+ background-color: #fff;
225
+ box-shadow: 2px 0 5px #666;
226
+ flex-shrink: 0;
227
+ flex-grow: 0;
228
+ height: 100%;
229
+ transition: flex-basis 0.2s ease-in, max-width 0.2s ease-in, min-width 0.2s ease-in;
230
+ padding: 8px 16px;
231
+ overflow-y: auto;
232
+ z-index: 1;
233
+ }
234
+
235
+ .map {
236
+ height: 100%;
237
+ width: 100%;
238
+ overflow: hidden;
239
+ }
240
+
241
+ .overlay {
242
+ background-color: #fff;
243
+ box-shadow: -2px 0 5px #666;
244
+ height: 100%;
245
+ overflow-y: auto;
246
+ padding: 40px 16px 8px;
247
+ position: absolute;
248
+ right: 0;
249
+ width: 624px;
250
+ z-index: 2;
251
+ }