@dso-toolkit/core 33.3.0 → 34.2.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.
- package/dist/cjs/dso-alert.cjs.entry.js +1 -1
- package/dist/cjs/dso-attachments-counter.cjs.entry.js +2 -2
- package/dist/cjs/dso-autosuggest.cjs.entry.js +1 -1
- package/dist/cjs/dso-badge.cjs.entry.js +1 -1
- package/dist/cjs/dso-banner.cjs.entry.js +1 -1
- package/dist/cjs/dso-date-picker.cjs.entry.js +48 -26
- package/dist/cjs/dso-dropdown-menu.cjs.entry.js +4 -228
- package/dist/cjs/dso-header.cjs.entry.js +2 -2
- package/dist/cjs/dso-helpcenter-panel.cjs.entry.js +1 -1
- package/dist/cjs/dso-highlight-box.cjs.entry.js +1 -1
- package/dist/cjs/dso-icon.cjs.entry.js +1 -1
- package/dist/cjs/dso-info-button.cjs.entry.js +1 -1
- package/dist/cjs/dso-info_2.cjs.entry.js +5 -2
- package/dist/cjs/dso-label.cjs.entry.js +1 -1
- package/dist/cjs/dso-map-base-layers.cjs.entry.js +18 -3
- package/dist/cjs/dso-map-controls.cjs.entry.js +2 -2
- package/dist/cjs/dso-map-overlays.cjs.entry.js +18 -3
- package/dist/cjs/dso-ozon-content.cjs.entry.js +1 -1
- package/dist/cjs/dso-progress-bar.cjs.entry.js +1 -1
- package/dist/cjs/dso-progress-indicator.cjs.entry.js +1 -1
- package/dist/cjs/dso-toggletip.cjs.entry.js +1 -1
- package/dist/cjs/dso-toolkit.cjs.js +2 -2
- package/dist/cjs/dso-tooltip.cjs.entry.js +1 -1
- package/dist/cjs/dso-tree-view.cjs.entry.js +2 -2
- package/dist/cjs/dso-viewer-grid.cjs.entry.js +815 -0
- package/dist/cjs/{index-fcdfdd38.js → index-5ea63531.js} +26 -2
- package/dist/cjs/index.esm-2ac7081c.js +267 -0
- package/dist/cjs/loader.cjs.js +2 -2
- package/dist/collection/collection-manifest.json +1 -0
- package/dist/collection/components/alert/alert.css +0 -3
- package/dist/collection/components/anchor/anchor.template.js +17 -0
- package/dist/collection/components/attachments-counter/attachments-counter.css +0 -4
- package/dist/collection/components/autosuggest/autosuggest.css +0 -3
- package/dist/collection/components/badge/badge.css +0 -3
- package/dist/collection/components/banner/banner.css +0 -3
- package/dist/collection/components/button/button.template.js +48 -0
- package/dist/collection/components/context/context.template.js +42 -0
- package/dist/collection/components/date-picker/date-picker.css +3 -5
- package/dist/collection/components/date-picker/date-picker.js +47 -25
- package/dist/collection/components/date-picker/date-picker.template.js +2 -1
- package/dist/collection/components/definition-list/definition-list.template.js +36 -0
- package/dist/collection/components/dropdown-menu/dropdown-menu.css +0 -3
- package/dist/collection/components/header/header.css +21 -19
- package/dist/collection/components/helpcenter-panel/helpcenter-panel.css +0 -3
- package/dist/collection/components/highlight-box/highlight-box.css +0 -3
- package/dist/collection/components/icon/icon.css +0 -4
- package/dist/collection/components/info/info.css +21 -4
- package/dist/collection/components/info-button/info-button.css +0 -3
- package/dist/collection/components/label/label.css +0 -3
- package/dist/collection/components/label-group/label-group.template.js +7 -0
- package/dist/collection/components/list/list.template.js +37 -0
- package/dist/collection/components/map-base-layers/map-base-layers.css +4 -3
- package/dist/collection/components/map-base-layers/map-base-layers.js +20 -1
- package/dist/collection/components/map-controls/map-controls.css +12 -3
- package/dist/collection/components/map-controls/map-controls.template.js +11 -16
- package/dist/collection/components/map-overlays/map-overlays.css +4 -3
- package/dist/collection/components/map-overlays/map-overlays.js +20 -1
- package/dist/collection/components/ozon-content/ozon-content.css +0 -3
- package/dist/collection/components/progress-bar/progress-bar.css +0 -3
- package/dist/collection/components/progress-indicator/progress-indicator.css +0 -3
- package/dist/collection/components/selectable/selectable.css +0 -3
- package/dist/collection/components/selectable/selectable.js +25 -1
- package/dist/collection/components/toggletip/toggletip.css +0 -3
- package/dist/collection/components/tooltip/tooltip.css +0 -3
- package/dist/collection/components/tree-view/tree-view.css +3 -3
- package/dist/collection/components/viewer-grid/viewer-grid-document-header.template.js +39 -0
- package/dist/collection/components/viewer-grid/viewer-grid-document-list-item.template.js +19 -0
- package/dist/collection/components/viewer-grid/viewer-grid-filterblok.template.js +28 -0
- package/dist/collection/components/viewer-grid/viewer-grid-filterpanel-buttons.js +7 -0
- package/dist/collection/components/viewer-grid/viewer-grid.css +706 -0
- package/dist/collection/components/viewer-grid/viewer-grid.js +218 -0
- package/dist/collection/components/viewer-grid/viewer-grid.template.js +27 -0
- package/dist/custom-elements/index.d.ts +6 -0
- package/dist/custom-elements/index.js +938 -36
- package/dist/dso-toolkit/dso-toolkit.css +1 -1
- package/dist/dso-toolkit/dso-toolkit.esm.js +1 -1
- package/dist/dso-toolkit/{p-75233655.entry.js → p-1fefbf8c.entry.js} +1 -1
- package/dist/dso-toolkit/{p-a52d3623.entry.js → p-20856f91.entry.js} +1 -1
- package/dist/dso-toolkit/{p-262858dd.entry.js → p-2b6a3dfa.entry.js} +1 -1
- package/dist/dso-toolkit/{p-be5682cc.entry.js → p-348414bf.entry.js} +1 -1
- package/dist/dso-toolkit/{p-984551a8.entry.js → p-3b493a2c.entry.js} +1 -1
- package/dist/dso-toolkit/p-3c4dbd89.entry.js +1 -0
- package/dist/dso-toolkit/{p-0a08ac9f.entry.js → p-4e573fc5.entry.js} +1 -1
- package/dist/dso-toolkit/{p-c9c1bc8f.entry.js → p-5037944e.entry.js} +1 -1
- package/dist/dso-toolkit/p-50b63cf4.entry.js +1 -0
- package/dist/dso-toolkit/{p-ff767c21.entry.js → p-88bc5873.entry.js} +1 -1
- package/dist/dso-toolkit/p-8b6e3abc.entry.js +1 -0
- package/dist/dso-toolkit/p-8bf3a60e.js +5 -0
- package/dist/dso-toolkit/p-94b79e43.entry.js +1 -0
- package/dist/dso-toolkit/{p-83f166b3.entry.js → p-94dffa65.entry.js} +1 -1
- package/dist/dso-toolkit/{p-b07991b9.entry.js → p-951f5872.entry.js} +1 -1
- package/dist/dso-toolkit/{p-da3be034.entry.js → p-a7306b7b.entry.js} +1 -1
- package/dist/dso-toolkit/p-ad2210ad.entry.js +1 -0
- package/dist/dso-toolkit/p-ad540748.entry.js +1 -0
- package/dist/dso-toolkit/{p-b5b946de.entry.js → p-bc14cafd.entry.js} +1 -1
- package/dist/dso-toolkit/{p-4a78a31b.entry.js → p-c54ecae1.entry.js} +1 -1
- package/dist/dso-toolkit/{p-72e4484a.entry.js → p-c95108fe.entry.js} +1 -1
- package/dist/dso-toolkit/{p-e814d644.entry.js → p-daa1e29d.entry.js} +1 -1
- package/dist/dso-toolkit/p-dad72605.js +1 -0
- package/dist/dso-toolkit/{p-2e7d535c.entry.js → p-dc86d830.entry.js} +1 -1
- package/dist/dso-toolkit/p-de3ab027.entry.js +5 -0
- package/dist/dso-toolkit/{p-19de4cc7.entry.js → p-f0b67246.entry.js} +1 -1
- package/dist/esm/dso-alert.entry.js +1 -1
- package/dist/esm/dso-attachments-counter.entry.js +2 -2
- package/dist/esm/dso-autosuggest.entry.js +1 -1
- package/dist/esm/dso-badge.entry.js +1 -1
- package/dist/esm/dso-banner.entry.js +1 -1
- package/dist/esm/dso-date-picker.entry.js +48 -26
- package/dist/esm/dso-dropdown-menu.entry.js +2 -226
- package/dist/esm/dso-header.entry.js +2 -2
- package/dist/esm/dso-helpcenter-panel.entry.js +1 -1
- package/dist/esm/dso-highlight-box.entry.js +1 -1
- package/dist/esm/dso-icon.entry.js +1 -1
- package/dist/esm/dso-info-button.entry.js +1 -1
- package/dist/esm/dso-info_2.entry.js +5 -2
- package/dist/esm/dso-label.entry.js +1 -1
- package/dist/esm/dso-map-base-layers.entry.js +18 -3
- package/dist/esm/dso-map-controls.entry.js +2 -2
- package/dist/esm/dso-map-overlays.entry.js +18 -3
- package/dist/esm/dso-ozon-content.entry.js +1 -1
- package/dist/esm/dso-progress-bar.entry.js +1 -1
- package/dist/esm/dso-progress-indicator.entry.js +1 -1
- package/dist/esm/dso-toggletip.entry.js +1 -1
- package/dist/esm/dso-toolkit.js +2 -2
- package/dist/esm/dso-tooltip.entry.js +1 -1
- package/dist/esm/dso-tree-view.entry.js +2 -2
- package/dist/esm/dso-viewer-grid.entry.js +811 -0
- package/dist/esm/{index-61410be2.js → index-d54cae76.js} +26 -2
- package/dist/esm/index.esm-a1362957.js +262 -0
- package/dist/esm/loader.js +2 -2
- package/dist/types/components/anchor/anchor.template.d.ts +2 -0
- package/dist/types/components/button/button.template.d.ts +2 -0
- package/dist/types/components/context/context.template.d.ts +3 -0
- package/dist/types/components/date-picker/date-picker.d.ts +3 -1
- package/dist/types/components/date-picker/date-picker.template.d.ts +1 -1
- package/dist/types/components/definition-list/definition-list.template.d.ts +3 -0
- package/dist/types/components/label-group/label-group.template.d.ts +2 -0
- package/dist/types/components/list/list.template.d.ts +3 -0
- package/dist/types/components/map-base-layers/map-base-layers.d.ts +7 -2
- package/dist/types/components/map-base-layers/map-base-layers.interfaces.d.ts +1 -0
- package/dist/types/components/map-overlays/map-overlays.d.ts +7 -2
- package/dist/types/components/map-overlays/map-overlays.interfaces.d.ts +1 -0
- package/dist/types/components/selectable/selectable.d.ts +1 -0
- package/dist/types/components/viewer-grid/viewer-grid-document-header.template.d.ts +3 -0
- package/dist/types/components/viewer-grid/viewer-grid-document-list-item.template.d.ts +3 -0
- package/dist/types/components/viewer-grid/viewer-grid-filterblok.template.d.ts +3 -0
- package/dist/types/components/viewer-grid/viewer-grid-filterpanel-buttons.d.ts +6 -0
- package/dist/types/components/viewer-grid/viewer-grid.d.ts +33 -0
- package/dist/types/components/viewer-grid/viewer-grid.template.d.ts +3 -0
- package/dist/types/components.d.ts +22 -0
- package/package.json +2 -1
- package/dist/dso-toolkit/p-22bc904d.entry.js +0 -1
- package/dist/dso-toolkit/p-7a043467.entry.js +0 -1
- package/dist/dso-toolkit/p-99b93d2e.entry.js +0 -5
- package/dist/dso-toolkit/p-a40eeb32.js +0 -1
- package/dist/dso-toolkit/p-affe82e6.entry.js +0 -1
- package/dist/dso-toolkit/p-b3e6d377.entry.js +0 -1
- package/dist/dso-toolkit/p-ec8b74f7.entry.js +0 -1
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import { html } from 'lit-html';
|
|
2
|
+
import { ifDefined } from 'lit-html/directives/if-defined';
|
|
3
|
+
import { unsafeHTML } from 'lit-html/directives/unsafe-html';
|
|
4
|
+
import { listTemplate } from '../list/list.template';
|
|
5
|
+
function definitionTemplate({ term, descriptions }, useSrOnlyColon) {
|
|
6
|
+
return html `
|
|
7
|
+
<dt>
|
|
8
|
+
${term}${useSrOnlyColon
|
|
9
|
+
? html `<span class="sr-only">:</span>`
|
|
10
|
+
: ':'}
|
|
11
|
+
</dt>
|
|
12
|
+
${descriptions.map(description => html `
|
|
13
|
+
<dd>${definitionContentTemplate(description)}</dd>
|
|
14
|
+
`)}
|
|
15
|
+
`;
|
|
16
|
+
}
|
|
17
|
+
function definitionContentTemplate(description) {
|
|
18
|
+
if ('content' in description) {
|
|
19
|
+
if (typeof description.content === 'string') {
|
|
20
|
+
return unsafeHTML(description.content);
|
|
21
|
+
}
|
|
22
|
+
return description.content;
|
|
23
|
+
}
|
|
24
|
+
return listTemplate(description.list);
|
|
25
|
+
}
|
|
26
|
+
export function definitionListTemplate({ modifier, definitions, useSrOnlyColon }) {
|
|
27
|
+
return html `
|
|
28
|
+
<dl class=${ifDefined(modifier)}>
|
|
29
|
+
${definitions.map(definition => (modifier === null || modifier === void 0 ? void 0 : modifier.split(' ').includes('dso-columns'))
|
|
30
|
+
? html `
|
|
31
|
+
<div>${definitionTemplate(definition, useSrOnlyColon)}</div>
|
|
32
|
+
`
|
|
33
|
+
: definitionTemplate(definition, useSrOnlyColon))}
|
|
34
|
+
</dl>
|
|
35
|
+
`;
|
|
36
|
+
}
|
|
@@ -1,7 +1,3 @@
|
|
|
1
|
-
/* stylelint-disable value-keyword-case */
|
|
2
|
-
/* stylelint-disable string-no-newline */
|
|
3
|
-
/* stylelint-enable */
|
|
4
|
-
/* stylelint-disable-next-line no-invalid-position-at-import-rule */
|
|
5
1
|
:host {
|
|
6
2
|
--di-chevron-down-bosgroen: url("data:image/svg+xml,%3csvg id='chevron-down' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' style='color: %23275937%3b'%3e %3cpath fill='currentColor' d='M12%2c16%2c5.29%2c9.63a.93.93%2c0%2c0%2c1%2c0-1.35%2c1%2c1%2c0%2c0%2c1%2c1.42%2c0l5.29%2c5%2c5.29-5a1%2c1%2c0%2c0%2c1%2c1.42%2c0%2c.91.91%2c0%2c0%2c1%2c0%2c1.34Z'/%3e %3c/svg%3e");
|
|
7
3
|
--di-chevron-up-bosgroen: url("data:image/svg+xml,%3csvg id='chevron-up' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' style='color: %23275937%3b'%3e %3cpath fill='currentColor' d='M18%2c16a1%2c1%2c0%2c0%2c1-.71-.28l-5.29-5-5.29%2c5a1%2c1%2c0%2c0%2c1-1.42%2c0%2c.93.93%2c0%2c0%2c1%2c0-1.35L12%2c8l6.71%2c6.38a.91.91%2c0%2c0%2c1%2c0%2c1.34A1%2c1%2c0%2c0%2c1%2c18%2c16Z'/%3e %3c/svg%3e");
|
|
@@ -12,6 +8,8 @@
|
|
|
12
8
|
border-bottom: 1px solid #ccc;
|
|
13
9
|
display: flex;
|
|
14
10
|
flex-wrap: wrap;
|
|
11
|
+
padding: 0 16px;
|
|
12
|
+
position: relative;
|
|
15
13
|
}
|
|
16
14
|
@media screen and (min-width: 768px) {
|
|
17
15
|
.dso-header {
|
|
@@ -30,6 +28,14 @@
|
|
|
30
28
|
padding-bottom: 16px;
|
|
31
29
|
padding-top: 16px;
|
|
32
30
|
}
|
|
31
|
+
@media screen and (max-width: 767px) {
|
|
32
|
+
.logo-container {
|
|
33
|
+
max-width: 200px;
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
.logo-container + .dropdown dso-dropdown-menu {
|
|
37
|
+
position: static;
|
|
38
|
+
}
|
|
33
39
|
|
|
34
40
|
@media screen and (min-width: 768px) {
|
|
35
41
|
.sub-logo {
|
|
@@ -178,7 +184,6 @@ dso-dropdown-menu .dso-dropdown-options li button {
|
|
|
178
184
|
padding: 3px 20px;
|
|
179
185
|
text-decoration: none;
|
|
180
186
|
white-space: nowrap;
|
|
181
|
-
/* stylelint-disable-line declaration-property-value-disallowed-list */
|
|
182
187
|
}
|
|
183
188
|
dso-dropdown-menu .dso-dropdown-options li a:hover, dso-dropdown-menu .dso-dropdown-options li a:focus, dso-dropdown-menu .dso-dropdown-options li a:active,
|
|
184
189
|
dso-dropdown-menu .dso-dropdown-options li button:hover,
|
|
@@ -282,11 +287,6 @@ dso-dropdown-menu button::after {
|
|
|
282
287
|
top: 50%;
|
|
283
288
|
transform: translateY(-50%);
|
|
284
289
|
}
|
|
285
|
-
@media screen and (max-width: 991px) {
|
|
286
|
-
dso-dropdown-menu[dropdown-align=right] .dso-dropdown-options {
|
|
287
|
-
right: -16px;
|
|
288
|
-
}
|
|
289
|
-
}
|
|
290
290
|
@media screen and (max-width: 767px) {
|
|
291
291
|
dso-dropdown-menu {
|
|
292
292
|
top: 12px;
|
|
@@ -301,7 +301,7 @@ dso-dropdown-menu .dso-dropdown-options dso-dropdown-options ul {
|
|
|
301
301
|
}
|
|
302
302
|
@media screen and (max-width: 991px) {
|
|
303
303
|
dso-dropdown-menu .dso-dropdown-options dso-dropdown-options ul {
|
|
304
|
-
width:
|
|
304
|
+
width: 100%;
|
|
305
305
|
}
|
|
306
306
|
}
|
|
307
307
|
dso-dropdown-menu .dso-dropdown-options dso-dropdown-options li a {
|
|
@@ -309,6 +309,11 @@ dso-dropdown-menu .dso-dropdown-options dso-dropdown-options li a {
|
|
|
309
309
|
font-size: 1.25rem;
|
|
310
310
|
padding: 16px;
|
|
311
311
|
}
|
|
312
|
+
dso-dropdown-menu .dso-dropdown-options dso-dropdown-options li a:hover {
|
|
313
|
+
background-color: #fff;
|
|
314
|
+
color: #275937;
|
|
315
|
+
text-decoration: underline;
|
|
316
|
+
}
|
|
312
317
|
dso-dropdown-menu .dso-dropdown-options dso-dropdown-options li.dso-active a {
|
|
313
318
|
font-weight: 600;
|
|
314
319
|
}
|
|
@@ -321,16 +326,13 @@ dso-dropdown-menu .dso-dropdown-options dso-dropdown-options li + li {
|
|
|
321
326
|
}
|
|
322
327
|
@media screen and (max-width: 767px) {
|
|
323
328
|
.dropdown dso-dropdown-menu {
|
|
324
|
-
top: 28px;
|
|
329
|
+
margin-top: 28px;
|
|
325
330
|
}
|
|
326
331
|
}
|
|
327
332
|
.dropdown dso-dropdown-menu .dso-dropdown-options {
|
|
328
|
-
|
|
329
|
-
|
|
330
|
-
|
|
331
|
-
.dropdown dso-dropdown-menu .dso-dropdown-options {
|
|
332
|
-
top: 72px;
|
|
333
|
-
}
|
|
333
|
+
left: 0;
|
|
334
|
+
right: 0;
|
|
335
|
+
top: 100%;
|
|
334
336
|
}
|
|
335
337
|
.dropdown dso-dropdown-menu[open] button::after {
|
|
336
338
|
background: var(--dso-icon, var(--di-chevron-up)) no-repeat;
|
|
@@ -344,6 +346,7 @@ dso-dropdown-menu .dso-dropdown-options dso-dropdown-options li + li {
|
|
|
344
346
|
color: #39870c;
|
|
345
347
|
font-size: 16px;
|
|
346
348
|
font-weight: 600;
|
|
349
|
+
position: relative;
|
|
347
350
|
}
|
|
348
351
|
.dropdown dso-dropdown-menu button:hover, .dropdown dso-dropdown-menu button:active {
|
|
349
352
|
cursor: pointer;
|
|
@@ -389,7 +392,6 @@ dso-dropdown-menu .dso-dropdown-options dso-dropdown-options li + li {
|
|
|
389
392
|
line-height: 1;
|
|
390
393
|
margin-top: 8px;
|
|
391
394
|
padding: 16px 0;
|
|
392
|
-
/* stylelint-disable-next-line declaration-property-value-disallowed-list */
|
|
393
395
|
white-space: nowrap;
|
|
394
396
|
}
|
|
395
397
|
.dso-nav.dso-nav-main > li > a:hover, .dso-nav.dso-nav-main > li > a:focus, .dso-nav.dso-nav-main > li > a:active {
|
|
@@ -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
|
--di-times: url("data:image/svg+xml,%3csvg id='times' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' style='color: %2339870c%3b'%3e %3cpath fill='currentColor' d='M13.36%2c12l3.3-3.3A1%2c1%2c0%2c1%2c0%2c15.3%2c7.34L12%2c10.64%2c8.7%2c7.34A1%2c1%2c0%2c1%2c0%2c7.34%2c8.7l3.3%2c3.3-3.3%2c3.3A1%2c1%2c0%2c1%2c0%2c8.7%2c16.66l3.3-3.3%2c3.3%2c3.3a1%2c1%2c0%2c1%2c0%2c1.36-1.36Z'/%3e %3c/svg%3e");
|
|
@@ -1,6 +1,3 @@
|
|
|
1
|
-
/* stylelint-disable value-keyword-case */
|
|
2
|
-
/* stylelint-disable string-no-newline */
|
|
3
|
-
/* stylelint-enable */
|
|
4
1
|
:host {
|
|
5
2
|
--di-external-link-grijs90: url("data:image/svg+xml,%3csvg id='external-link' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' style='color: %23191919%3b'%3e %3cpath fill='currentColor' d='M19%2c6V9.69c0%2c.33-.2.41-.43.17L17.06%2c8.35l-3.35%2c3.36a1%2c1%2c0%2c0%2c1-1.42%2c0%2c1%2c1%2c0%2c0%2c1%2c0-1.42l3.36-3.35L14.14%2c5.43C13.9%2c5.19%2c14%2c5%2c14.31%2c5H19V6ZM18%2c17V13a1%2c1%2c0%2c0%2c0-2%2c0v4a1%2c1%2c0%2c0%2c1-1%2c1H7a1%2c1%2c0%2c0%2c1-1-1V9A1%2c1%2c0%2c0%2c1%2c7%2c8h4a1%2c1%2c0%2c0%2c0%2c0-2H7A3%2c3%2c0%2c0%2c0%2c4%2c9v8a3%2c3%2c0%2c0%2c0%2c3%2c3h8A3%2c3%2c0%2c0%2c0%2c18%2c17Z'/%3e %3c/svg%3e");
|
|
6
3
|
--di-download-grijs90: url("data:image/svg+xml,%3csvg id='download' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' style='color: %23191919%3b'%3e %3cpath fill='currentColor' d='M18.72%2c10.44%2c12%2c17l-6.7-6.52C4.8%2c10%2c5%2c9.63%2c5.63%2c9.63H8.5V1.82A.8.8%2c0%2c0%2c1%2c9.28%2c1h5.44a.8.8%2c0%2c0%2c1%2c.78.82V9.61h2.87C19%2c9.6%2c19.2%2c10%2c18.72%2c10.44ZM1%2c17v6H23V17Zm16%2c3a2%2c2%2c0%2c1%2c1-2-2A2%2c2%2c0%2c0%2c1%2c17%2c20Zm5%2c0a2%2c2%2c0%2c1%2c1-2-2A2%2c2%2c0%2c0%2c1%2c22%2c20Z'/%3e %3c/svg%3e");
|
|
@@ -1,8 +1,25 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
1
|
+
button {
|
|
2
|
+
-webkit-appearance: button;
|
|
3
|
+
color: inherit;
|
|
4
|
+
cursor: pointer;
|
|
5
|
+
font: inherit;
|
|
6
|
+
font-family: inherit;
|
|
7
|
+
font-size: inherit;
|
|
8
|
+
line-height: inherit;
|
|
9
|
+
margin: 0;
|
|
10
|
+
overflow: visible;
|
|
11
|
+
text-transform: none;
|
|
12
|
+
}
|
|
13
|
+
button[disabled] {
|
|
14
|
+
cursor: default;
|
|
15
|
+
}
|
|
16
|
+
button::-moz-focus-inner {
|
|
17
|
+
border: 0;
|
|
18
|
+
padding: 0;
|
|
19
|
+
}
|
|
20
|
+
|
|
4
21
|
:host {
|
|
5
|
-
--di-times-
|
|
22
|
+
--di-times-grijs90: url("data:image/svg+xml,%3csvg id='times' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' style='color: %23191919%3b'%3e %3cpath fill='currentColor' d='M13.36%2c12l3.3-3.3A1%2c1%2c0%2c1%2c0%2c15.3%2c7.34L12%2c10.64%2c8.7%2c7.34A1%2c1%2c0%2c1%2c0%2c7.34%2c8.7l3.3%2c3.3-3.3%2c3.3A1%2c1%2c0%2c1%2c0%2c8.7%2c16.66l3.3-3.3%2c3.3%2c3.3a1%2c1%2c0%2c1%2c0%2c1.36-1.36Z'/%3e %3c/svg%3e");
|
|
6
23
|
display: block;
|
|
7
24
|
background-color: #f2f2f2;
|
|
8
25
|
padding: 16px 32px 16px 16px;
|
|
@@ -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: inline-block;
|
|
6
3
|
--di-info: url("data:image/svg+xml,%3csvg id='info' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' style='color: %2339870c%3b'%3e %3cpath fill='currentColor' d='M12%2c3a9%2c9%2c0%2c1%2c1-9%2c9%2c9%2c9%2c0%2c0%2c1%2c9-9m0-2A11%2c11%2c0%2c1%2c0%2c23%2c12%2c11%2c11%2c0%2c0%2c0%2c12%2c1Zm0%2c8a1%2c1%2c0%2c1%2c0-1-1A1%2c1%2c0%2c0%2c0%2c12%2c9Zm1%2c7.79V11.21A1.12%2c1.12%2c0%2c0%2c0%2c12%2c10a1.12%2c1.12%2c0%2c0%2c0-1%2c1.21v5.58A1.12%2c1.12%2c0%2c0%2c0%2c12%2c18%2c1.12%2c1.12%2c0%2c0%2c0%2c13%2c16.79Z'/%3e %3c/svg%3e");
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
// Keep in sync with packages\css\src\components\list\list.template.ts (https://github.com/dso-toolkit/dso-toolkit/issues/1438)
|
|
2
|
+
import { Type } from '@dso-toolkit/sources';
|
|
3
|
+
import { html } from 'lit-html';
|
|
4
|
+
import { classMap } from 'lit-html/directives/class-map';
|
|
5
|
+
function ul(children, modifier) {
|
|
6
|
+
return html `
|
|
7
|
+
<ul class="${classMap({
|
|
8
|
+
'list-group': modifier === 'group',
|
|
9
|
+
'dso-columns-list': modifier === 'columns'
|
|
10
|
+
})}">
|
|
11
|
+
${children}
|
|
12
|
+
</ul>
|
|
13
|
+
`;
|
|
14
|
+
}
|
|
15
|
+
function ol(children, modifier) {
|
|
16
|
+
return html `
|
|
17
|
+
<ol class="${classMap({
|
|
18
|
+
'list-group': modifier === 'group',
|
|
19
|
+
'dso-columns-list': modifier === 'columns'
|
|
20
|
+
})}">
|
|
21
|
+
${children}
|
|
22
|
+
</ol>
|
|
23
|
+
`;
|
|
24
|
+
}
|
|
25
|
+
export function listTemplate({ type, items, modifier }) {
|
|
26
|
+
const children = html `
|
|
27
|
+
${items.map(item => html `
|
|
28
|
+
<li class="${classMap({ 'list-group-item': modifier === 'group' })}">
|
|
29
|
+
${item}
|
|
30
|
+
</li>
|
|
31
|
+
`)}
|
|
32
|
+
`;
|
|
33
|
+
if (type === Type.Ol) {
|
|
34
|
+
return ol(children, modifier);
|
|
35
|
+
}
|
|
36
|
+
return ul(children, modifier);
|
|
37
|
+
}
|
|
@@ -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,14 +1,33 @@
|
|
|
1
1
|
import { Component, h, Prop, Event } from '@stencil/core';
|
|
2
2
|
export class MapBaseLayers {
|
|
3
|
+
constructor() {
|
|
4
|
+
this.selectableRefs = {};
|
|
5
|
+
}
|
|
3
6
|
baseLayerChangeHandler(baseLayer) {
|
|
4
7
|
this.baseLayerChange.emit({ activeBaseLayer: baseLayer });
|
|
5
8
|
}
|
|
9
|
+
componentDidRender() {
|
|
10
|
+
this.baseLayers
|
|
11
|
+
.filter(l => { var _a, _b; return !l.disabled && ((_b = (_a = this.previousBaselayers) === null || _a === void 0 ? void 0 : _a.find(p => p.id === l.id)) === null || _b === void 0 ? void 0 : _b.disabled) === true; })
|
|
12
|
+
.forEach(o => {
|
|
13
|
+
var _a;
|
|
14
|
+
(_a = this.selectableRefs[o.id]) === null || _a === void 0 ? void 0 : _a.toggleInfo(false);
|
|
15
|
+
});
|
|
16
|
+
this.previousBaselayers = this.baseLayers;
|
|
17
|
+
}
|
|
6
18
|
render() {
|
|
19
|
+
for (const ref in this.selectableRefs) {
|
|
20
|
+
delete this.selectableRefs[ref];
|
|
21
|
+
}
|
|
7
22
|
return (h("fieldset", { class: "form-group dso-radios" },
|
|
8
23
|
h("legend", { class: "sr-only" }, "Achtergrond"),
|
|
9
24
|
h("div", { class: "dso-label-container" },
|
|
10
25
|
h("span", { class: "control-label", "aria-hidden": "true" }, "Achtergrond")),
|
|
11
|
-
h("div", { class: "dso-field-container" }, this.baseLayers.map(baseLayer => (h("dso-selectable", { key: baseLayer.id, type: "radio", value: baseLayer.name, checked: baseLayer.checked, onDsoChange: () => this.baseLayerChangeHandler(baseLayer) },
|
|
26
|
+
h("div", { class: "dso-field-container" }, this.baseLayers.map(baseLayer => (h("dso-selectable", { key: baseLayer.id, type: "radio", value: baseLayer.name, checked: baseLayer.checked, disabled: baseLayer.disabled, ref: ref => this.selectableRefs[baseLayer.id] = ref, onDsoChange: () => this.baseLayerChangeHandler(baseLayer) },
|
|
27
|
+
baseLayer.name,
|
|
28
|
+
baseLayer.info
|
|
29
|
+
? h("p", { slot: "info" }, baseLayer.info)
|
|
30
|
+
: null))))));
|
|
12
31
|
}
|
|
13
32
|
static get is() { return "dso-map-base-layers"; }
|
|
14
33
|
static get encapsulation() { return "shadow"; }
|
|
@@ -1,6 +1,3 @@
|
|
|
1
|
-
/* stylelint-disable value-keyword-case */
|
|
2
|
-
/* stylelint-disable string-no-newline */
|
|
3
|
-
/* stylelint-enable */
|
|
4
1
|
button {
|
|
5
2
|
-webkit-appearance: button;
|
|
6
3
|
color: inherit;
|
|
@@ -378,6 +375,12 @@ button::-moz-focus-inner {
|
|
|
378
375
|
border: 0;
|
|
379
376
|
}
|
|
380
377
|
|
|
378
|
+
section {
|
|
379
|
+
display: flex;
|
|
380
|
+
flex-direction: column;
|
|
381
|
+
height: 100%;
|
|
382
|
+
}
|
|
383
|
+
|
|
381
384
|
header,
|
|
382
385
|
.content {
|
|
383
386
|
padding: 16px;
|
|
@@ -385,6 +388,7 @@ header,
|
|
|
385
388
|
|
|
386
389
|
header {
|
|
387
390
|
border-bottom: 1px solid #ccc;
|
|
391
|
+
flex-grow: 0;
|
|
388
392
|
position: relative;
|
|
389
393
|
}
|
|
390
394
|
header h2 {
|
|
@@ -392,4 +396,9 @@ header h2 {
|
|
|
392
396
|
font-family: "Asap", sans-serif;
|
|
393
397
|
line-height: 1;
|
|
394
398
|
margin: 0;
|
|
399
|
+
}
|
|
400
|
+
|
|
401
|
+
.content {
|
|
402
|
+
flex-grow: 1;
|
|
403
|
+
overflow-y: auto;
|
|
395
404
|
}
|
|
@@ -7,22 +7,17 @@ export function mapControlsTemplate({ zoomIn, zoomOut, open, baseLayers, baseLay
|
|
|
7
7
|
.disableZoom=${disableZoom}
|
|
8
8
|
?open=${open}
|
|
9
9
|
>
|
|
10
|
-
<
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
></dso-map-overlays>
|
|
22
|
-
<div class="dso-rich-content">
|
|
23
|
-
<p>Ook nog meer inhoud</p>
|
|
24
|
-
</div>
|
|
25
|
-
</form>
|
|
10
|
+
<dso-map-base-layers
|
|
11
|
+
.baseLayers=${baseLayers}
|
|
12
|
+
@baseLayerChange=${(e) => baseLayerChange(e)}
|
|
13
|
+
></dso-map-base-layers>
|
|
14
|
+
<dso-map-overlays
|
|
15
|
+
.overlays=${overlays}
|
|
16
|
+
@toggleOverlay=${(e) => toggleOverlay(e)}
|
|
17
|
+
></dso-map-overlays>
|
|
18
|
+
<div class="dso-rich-content">
|
|
19
|
+
<p>Dit is een Web Component wat aangesloten kan worden op Leaflet.js of OpenLayers.</p>
|
|
20
|
+
</div>
|
|
26
21
|
</dso-map-controls>
|
|
27
22
|
`;
|
|
28
23
|
}
|
|
@@ -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,15 +1,34 @@
|
|
|
1
1
|
import { Component, Event, Prop, h } from '@stencil/core';
|
|
2
2
|
export class MapOverlays {
|
|
3
|
+
constructor() {
|
|
4
|
+
this.selectableRefs = {};
|
|
5
|
+
}
|
|
3
6
|
overlayChangeHandler(overlay, e) {
|
|
4
7
|
const checked = e.detail.target instanceof HTMLInputElement ? !!e.detail.target.checked : false;
|
|
5
8
|
this.toggleOverlay.emit({ overlay, checked });
|
|
6
9
|
}
|
|
10
|
+
componentDidRender() {
|
|
11
|
+
this.overlays
|
|
12
|
+
.filter(o => { var _a, _b; return !o.disabled && ((_b = (_a = this.previousOverlays) === null || _a === void 0 ? void 0 : _a.find(p => p.id === o.id)) === null || _b === void 0 ? void 0 : _b.disabled) === true; })
|
|
13
|
+
.forEach(o => {
|
|
14
|
+
var _a;
|
|
15
|
+
(_a = this.selectableRefs[o.id]) === null || _a === void 0 ? void 0 : _a.toggleInfo(false);
|
|
16
|
+
});
|
|
17
|
+
this.previousOverlays = this.overlays;
|
|
18
|
+
}
|
|
7
19
|
render() {
|
|
20
|
+
for (const ref in this.selectableRefs) {
|
|
21
|
+
delete this.selectableRefs[ref];
|
|
22
|
+
}
|
|
8
23
|
return (h("fieldset", { class: "form-group dso-checkboxes" },
|
|
9
24
|
h("legend", { class: "sr-only" }, "Kaartlagen"),
|
|
10
25
|
h("div", { class: "dso-label-container" },
|
|
11
26
|
h("span", { class: "control-label", "aria-hidden": "true" }, "Kaartlagen")),
|
|
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) },
|
|
27
|
+
h("div", { class: "dso-field-container" }, this.overlays.map(overlay => (h("dso-selectable", { key: overlay.id, type: "checkbox", value: overlay.name, checked: overlay.checked, disabled: overlay.disabled, ref: ref => this.selectableRefs[overlay.id] = ref, onDsoChange: e => this.overlayChangeHandler(overlay, e) },
|
|
28
|
+
overlay.name,
|
|
29
|
+
overlay.info
|
|
30
|
+
? h("p", { slot: "info" }, overlay.info)
|
|
31
|
+
: null))))));
|
|
13
32
|
}
|
|
14
33
|
static get is() { return "dso-map-overlays"; }
|
|
15
34
|
static get encapsulation() { return "shadow"; }
|
|
@@ -1,10 +1,13 @@
|
|
|
1
|
-
import { h, Component, Prop, Event, Fragment, Element, State, forceUpdate, Watch } from '@stencil/core';
|
|
1
|
+
import { h, Component, Prop, Event, Fragment, Element, State, forceUpdate, Watch, Method } from '@stencil/core';
|
|
2
2
|
import { createIdentifier } from '../../utils/create-identifier';
|
|
3
3
|
export class Selectable {
|
|
4
4
|
constructor() {
|
|
5
5
|
this.infoActive = false;
|
|
6
6
|
this.fallbackIdentifier = createIdentifier('DsoSelectable');
|
|
7
7
|
}
|
|
8
|
+
async toggleInfo(active) {
|
|
9
|
+
this.infoActive = active !== null && active !== void 0 ? active : !this.infoActive;
|
|
10
|
+
}
|
|
8
11
|
componentDidLoad() {
|
|
9
12
|
var _a;
|
|
10
13
|
(_a = this.mutationObserver) === null || _a === void 0 ? void 0 : _a.disconnect();
|
|
@@ -260,6 +263,27 @@ export class Selectable {
|
|
|
260
263
|
}
|
|
261
264
|
}
|
|
262
265
|
}]; }
|
|
266
|
+
static get methods() { return {
|
|
267
|
+
"toggleInfo": {
|
|
268
|
+
"complexType": {
|
|
269
|
+
"signature": "(active?: boolean | undefined) => Promise<void>",
|
|
270
|
+
"parameters": [{
|
|
271
|
+
"tags": [],
|
|
272
|
+
"text": ""
|
|
273
|
+
}],
|
|
274
|
+
"references": {
|
|
275
|
+
"Promise": {
|
|
276
|
+
"location": "global"
|
|
277
|
+
}
|
|
278
|
+
},
|
|
279
|
+
"return": "Promise<void>"
|
|
280
|
+
},
|
|
281
|
+
"docs": {
|
|
282
|
+
"text": "",
|
|
283
|
+
"tags": []
|
|
284
|
+
}
|
|
285
|
+
}
|
|
286
|
+
}; }
|
|
263
287
|
static get elementRef() { return "host"; }
|
|
264
288
|
static get watchers() { return [{
|
|
265
289
|
"propName": "indeterminate",
|
|
@@ -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
|
+
}
|