@dso-toolkit/core 39.0.0 → 40.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 (47) hide show
  1. package/dist/cjs/dso-header.cjs.entry.js +3 -2
  2. package/dist/cjs/dso-info_2.cjs.entry.js +2 -2
  3. package/dist/cjs/dso-map-base-layers.cjs.entry.js +3 -1
  4. package/dist/cjs/dso-map-overlays.cjs.entry.js +3 -1
  5. package/dist/cjs/dso-responsive-element.cjs.entry.js +44 -0
  6. package/dist/cjs/dso-toolkit.cjs.js +1 -1
  7. package/dist/cjs/loader.cjs.js +1 -1
  8. package/dist/collection/collection-manifest.json +1 -0
  9. package/dist/collection/components/header/header.js +21 -2
  10. package/dist/collection/components/map-base-layers/map-base-layers.js +21 -1
  11. package/dist/collection/components/map-overlays/map-overlays.js +21 -1
  12. package/dist/collection/components/responsive-element/responsive-element.css +3 -0
  13. package/dist/collection/components/responsive-element/responsive-element.js +46 -0
  14. package/dist/collection/components/responsive-element/responsive-element.template.js +8 -0
  15. package/dist/collection/components/selectable/selectable.js +5 -4
  16. package/dist/collection/components/viewer-grid/example-pages/viewer-grid-document-header.example-template.js +15 -164
  17. package/dist/collection/components/viewer-grid/example-pages/viewer-grid-document-list.example-template.js +12 -0
  18. package/dist/custom-elements/index.d.ts +6 -0
  19. package/dist/custom-elements/index.js +54 -11
  20. package/dist/dso-toolkit/dso-toolkit.css +1 -1
  21. package/dist/dso-toolkit/dso-toolkit.esm.js +1 -1
  22. package/dist/dso-toolkit/p-02272301.entry.js +1 -0
  23. package/dist/dso-toolkit/p-09b53589.entry.js +1 -0
  24. package/dist/dso-toolkit/p-202bd676.entry.js +1 -0
  25. package/dist/dso-toolkit/p-336bf5b9.entry.js +1 -0
  26. package/dist/dso-toolkit/p-3ad06d9d.entry.js +1 -0
  27. package/dist/esm/dso-header.entry.js +3 -2
  28. package/dist/esm/dso-info_2.entry.js +2 -2
  29. package/dist/esm/dso-map-base-layers.entry.js +3 -1
  30. package/dist/esm/dso-map-overlays.entry.js +3 -1
  31. package/dist/esm/dso-responsive-element.entry.js +40 -0
  32. package/dist/esm/dso-toolkit.js +1 -1
  33. package/dist/esm/loader.js +1 -1
  34. package/dist/types/components/header/header.d.ts +7 -0
  35. package/dist/types/components/map-base-layers/map-base-layers.d.ts +1 -0
  36. package/dist/types/components/map-overlays/map-overlays.d.ts +1 -0
  37. package/dist/types/components/responsive-element/responsive-element.d.ts +10 -0
  38. package/dist/types/components/responsive-element/responsive-element.template.d.ts +3 -0
  39. package/dist/types/components/viewer-grid/example-pages/viewer-grid-document-list.example-template.d.ts +2 -0
  40. package/dist/types/components.d.ts +22 -1
  41. package/package.json +1 -1
  42. package/dist/collection/components/viewer-grid/example-pages/viewer-grid-document-item.example-template.js +0 -56
  43. package/dist/dso-toolkit/p-746d70f9.entry.js +0 -1
  44. package/dist/dso-toolkit/p-8bb8148f.entry.js +0 -1
  45. package/dist/dso-toolkit/p-c32860a3.entry.js +0 -1
  46. package/dist/dso-toolkit/p-d76c1151.entry.js +0 -1
  47. package/dist/types/components/viewer-grid/example-pages/viewer-grid-document-item.example-template.d.ts +0 -1
@@ -13,6 +13,7 @@ let Header = class {
13
13
  constructor(hostRef) {
14
14
  index.registerInstance(this, hostRef);
15
15
  this.menuItemClick = index.createEvent(this, "menuItemClick", 7);
16
+ this.logoutClick = index.createEvent(this, "logoutClick", 7);
16
17
  this.mainMenu = [];
17
18
  this.useDropDownMenu = "auto";
18
19
  this.showDropDown = false;
@@ -90,9 +91,9 @@ let Header = class {
90
91
  ["has-sub-logo"]: this.hasSubLogo,
91
92
  }), ref: (element) => (this.wrapper = element) }, index.h("div", { class: "logo-container" }, index.h("div", { class: "logo" }, index.h("slot", { name: "logo" })), index.h("div", { class: "sub-logo" }, index.h("slot", { name: "sub-logo" }))), this.showDropDown && this.mainMenu.length > 0 && (index.h("div", { class: "dropdown" }, index.h("dso-dropdown-menu", { "dropdown-align": "right" }, index.h("button", { type: "button", class: "tertiary", slot: "toggle" }, index.h("span", null, "Menu")), index.h("div", { class: "dso-dropdown-options" }, index.h("dso-dropdown-options", null, index.h("ul", null, this.mainMenu.map(this.MenuItem), this.userHomeUrl && (index.h("li", null, index.h("a", { href: this.userHomeUrl }, "Mijn Omgevingsloket"))), this.loginUrl && !this.isLoggedIn && (index.h("li", null, index.h("a", { href: this.loginUrl }, "Inloggen"))), this.userProfileUrl &&
92
93
  this.userProfileName &&
93
- this.isLoggedIn && (index.h("li", null, index.h("a", { href: this.userProfileUrl }, this.userProfileName, index.h("span", { class: "profile-label" }, "- Mijn profiel")))), this.logoutUrl && this.isLoggedIn && (index.h("li", null, index.h("a", { href: this.logoutUrl }, "Uitloggen"))))))))), !this.showDropDown && this.mainMenu.length > 0 && (index.h(index.Fragment, null, index.h("div", { class: "dso-header-session" }, this.userProfileUrl &&
94
+ this.isLoggedIn && (index.h("li", null, index.h("a", { href: this.userProfileUrl }, this.userProfileName, index.h("span", { class: "profile-label" }, "- Mijn profiel")))), this.logoutUrl && this.isLoggedIn && (index.h("li", null, index.h("a", { href: this.logoutUrl, onClick: e => this.logoutClick.emit({ originalEvent: e }) }, "Uitloggen"))))))))), !this.showDropDown && this.mainMenu.length > 0 && (index.h(index.Fragment, null, index.h("div", { class: "dso-header-session" }, this.userProfileUrl &&
94
95
  this.userProfileName &&
95
- this.isLoggedIn && (index.h("div", { class: "profile" }, index.h("span", { class: "profile-label" }, "Welkom:"), index.h("a", { href: this.userProfileUrl }, this.userProfileName))), this.loginUrl && !this.isLoggedIn && (index.h("div", { class: "login" }, index.h("a", { href: this.loginUrl }, "Inloggen"))), this.logoutUrl && this.isLoggedIn && (index.h("div", { class: "logout" }, index.h("a", { href: this.logoutUrl }, "Uitloggen")))), index.h("nav", { class: "dso-navbar" }, index.h("ul", { class: "dso-nav dso-nav-main", ref: (element) => (this.nav = element) }, this.mainMenu
96
+ this.isLoggedIn && (index.h("div", { class: "profile" }, index.h("span", { class: "profile-label" }, "Welkom:"), index.h("a", { href: this.userProfileUrl }, this.userProfileName))), this.loginUrl && !this.isLoggedIn && (index.h("div", { class: "login" }, index.h("a", { href: this.loginUrl }, "Inloggen"))), this.logoutUrl && this.isLoggedIn && (index.h("div", { class: "logout" }, index.h("a", { href: this.logoutUrl, onClick: e => this.logoutClick.emit({ originalEvent: e }) }, "Uitloggen")))), index.h("nav", { class: "dso-navbar" }, index.h("ul", { class: "dso-nav dso-nav-main", ref: (element) => (this.nav = element) }, this.mainMenu
96
97
  .filter((_, index) => index < this.mainMenu.length - this.overflowMenuItems)
97
98
  .map(this.MenuItem), this.overflowMenuItems > 0 && (index.h("li", null, index.h("dso-dropdown-menu", { "dropdown-align": "left" }, index.h("button", { type: "button", class: "tertiary", slot: "toggle" }, index.h("span", null, "Meer")), index.h("div", { class: "dso-dropdown-options" }, index.h("dso-dropdown-options", null, index.h("ul", null, this.mainMenu
98
99
  .filter((_, index) => index >=
@@ -18,7 +18,7 @@ let Info = class {
18
18
  };
19
19
  Info.style = infoCss;
20
20
 
21
- const selectableCss = ":host{display:block;padding:0 0 0 32px;position:relative}:host .dso-selectable-options{list-style:none;margin-top:8px;padding-left:0}:host .dso-selectable-options li+li{margin-top:8px}:host label{font-weight:400;line-height:24px;margin:0}:host input[type=checkbox][disabled]+label::before,:host input[type=checkbox][disabled]:active+label::before,:host input[type=checkbox][disabled]:focus+label::before,:host input[type=radio][disabled]+label::before,:host input[type=radio][disabled]:active+label::before,:host input[type=radio][disabled]:focus+label::before{background-color:#fff;box-shadow:0 0 0 2px #e5e5e5}:host input[type=checkbox],:host input[type=radio]{height:24px;left:0;margin:0;opacity:0;position:absolute;top:0;width:24px;z-index:100;zoom:1}@media (prefers-contrast: more){:host input[type=checkbox],:host input[type=radio]{opacity:1}}:host input[type=checkbox]:not([disabled]),:host input[type=radio]:not([disabled]){cursor:pointer}:host input[type=checkbox]+label,:host input[type=radio]+label{display:inline;font-style:normal;padding-left:0}:host input[type=checkbox]+label::before,:host input[type=radio]+label::before{background:#fff;border:0;box-shadow:0 0 0 2px var(--dso-selectable-color, #275937);content:\"\";height:20px;left:2px;position:absolute;top:2px;width:20px}:host input[type=checkbox]:focus,:host input[type=radio]:focus{outline:0}:host input[type=checkbox]:focus+label::before,:host input[type=radio]:focus+label::before{box-shadow:0 0 0 3px var(--dso-selectable-color, #275937);height:18px;left:3px;top:3px;width:18px}:host input[type=checkbox]:active+label::before,:host input[type=checkbox].active+label::before,:host input[type=radio]:active+label::before,:host input[type=radio].active+label::before{background-color:#ebf3e6;box-shadow:0 0 0 1px #275937;height:22px;left:1px;top:1px;width:22px}:host input[type=checkbox]+label::before{border-radius:4px}:host input[type=checkbox]+label::after{background:transparent;content:\"\";left:6px;opacity:0;position:absolute;top:6px;zoom:1}:host input[type=checkbox]:checked+label::after,:host input[type=checkbox]:indeterminate+label::after{opacity:1}:host input[type=checkbox]:checked+label::after{border:solid;border-color:var(--dso-selectable-color, #39870c);border-top-color:transparent;border-width:0 0 3px 3px;height:8px;transform:rotate(-45deg);width:13px}:host input[type=checkbox]:indeterminate+label::after{background-color:var(--dso-selectable-color, #39870c);height:12px;width:12px}:host input[type=radio]+label::before{border-radius:50%}:host input[type=radio]+label::after{background-color:transparent;border-radius:50%;content:\"\";height:12px;left:6px;opacity:0;position:absolute;top:6px;width:12px;zoom:1}:host input[type=radio]:checked+label::after{background-color:var(--dso-selectable-color, #39870c);opacity:1}:host>dso-info{float:none;margin:8px 16px 0 -32px;width:calc(100% + 32px)}:host(:not(:last-child)){margin-bottom:8px}*,*::after,*::before{box-sizing:border-box}";
21
+ const selectableCss = ".sc-dso-selectable-h{display:block;padding:0 0 0 32px;position:relative}.sc-dso-selectable-h .dso-selectable-options.sc-dso-selectable{list-style:none;margin-top:8px;padding-left:0}.sc-dso-selectable-h .dso-selectable-options.sc-dso-selectable li.sc-dso-selectable+li.sc-dso-selectable{margin-top:8px}.sc-dso-selectable-h label.sc-dso-selectable{font-weight:400;line-height:24px;margin:0}.sc-dso-selectable-h input[type=checkbox][disabled].sc-dso-selectable+label.sc-dso-selectable::before,.sc-dso-selectable-h input[type=checkbox][disabled].sc-dso-selectable:active+label.sc-dso-selectable::before,.sc-dso-selectable-h input[type=checkbox][disabled].sc-dso-selectable:focus+label.sc-dso-selectable::before,.sc-dso-selectable-h input[type=radio][disabled].sc-dso-selectable+label.sc-dso-selectable::before,.sc-dso-selectable-h input[type=radio][disabled].sc-dso-selectable:active+label.sc-dso-selectable::before,.sc-dso-selectable-h input[type=radio][disabled].sc-dso-selectable:focus+label.sc-dso-selectable::before{background-color:#fff;box-shadow:0 0 0 2px #e5e5e5}.sc-dso-selectable-h input[type=checkbox].sc-dso-selectable,.sc-dso-selectable-h input[type=radio].sc-dso-selectable{height:24px;left:0;margin:0;opacity:0;position:absolute;top:0;width:24px;z-index:100;zoom:1}@media (prefers-contrast: more){.sc-dso-selectable-h input[type=checkbox].sc-dso-selectable,.sc-dso-selectable-h input[type=radio].sc-dso-selectable{opacity:1}}.sc-dso-selectable-h input[type=checkbox].sc-dso-selectable:not([disabled]),.sc-dso-selectable-h input[type=radio].sc-dso-selectable:not([disabled]){cursor:pointer}.sc-dso-selectable-h input[type=checkbox].sc-dso-selectable+label.sc-dso-selectable,.sc-dso-selectable-h input[type=radio].sc-dso-selectable+label.sc-dso-selectable{display:inline;font-style:normal;padding-left:0}.sc-dso-selectable-h input[type=checkbox].sc-dso-selectable+label.sc-dso-selectable::before,.sc-dso-selectable-h input[type=radio].sc-dso-selectable+label.sc-dso-selectable::before{background:#fff;border:0;box-shadow:0 0 0 2px var(--dso-selectable-color, #275937);content:\"\";height:20px;left:2px;position:absolute;top:2px;width:20px}.sc-dso-selectable-h input[type=checkbox].sc-dso-selectable:focus,.sc-dso-selectable-h input[type=radio].sc-dso-selectable:focus{outline:0}.sc-dso-selectable-h input[type=checkbox].sc-dso-selectable:focus+label.sc-dso-selectable::before,.sc-dso-selectable-h input[type=radio].sc-dso-selectable:focus+label.sc-dso-selectable::before{box-shadow:0 0 0 3px var(--dso-selectable-color, #275937);height:18px;left:3px;top:3px;width:18px}.sc-dso-selectable-h input[type=checkbox].sc-dso-selectable:active+label.sc-dso-selectable::before,.sc-dso-selectable-h input[type=checkbox].active.sc-dso-selectable+label.sc-dso-selectable::before,.sc-dso-selectable-h input[type=radio].sc-dso-selectable:active+label.sc-dso-selectable::before,.sc-dso-selectable-h input[type=radio].active.sc-dso-selectable+label.sc-dso-selectable::before{background-color:#ebf3e6;box-shadow:0 0 0 1px #275937;height:22px;left:1px;top:1px;width:22px}.sc-dso-selectable-h input[type=checkbox].sc-dso-selectable+label.sc-dso-selectable::before{border-radius:4px}.sc-dso-selectable-h input[type=checkbox].sc-dso-selectable+label.sc-dso-selectable::after{background:transparent;content:\"\";left:6px;opacity:0;position:absolute;top:6px;zoom:1}.sc-dso-selectable-h input[type=checkbox].sc-dso-selectable:checked+label.sc-dso-selectable::after,.sc-dso-selectable-h input[type=checkbox].sc-dso-selectable:indeterminate+label.sc-dso-selectable::after{opacity:1}.sc-dso-selectable-h input[type=checkbox].sc-dso-selectable:checked+label.sc-dso-selectable::after{border:solid;border-color:var(--dso-selectable-color, #39870c);border-top-color:transparent;border-width:0 0 3px 3px;height:8px;transform:rotate(-45deg);width:13px}.sc-dso-selectable-h input[type=checkbox].sc-dso-selectable:indeterminate+label.sc-dso-selectable::after{background-color:var(--dso-selectable-color, #39870c);height:12px;width:12px}.sc-dso-selectable-h input[type=radio].sc-dso-selectable+label.sc-dso-selectable::before{border-radius:50%}.sc-dso-selectable-h input[type=radio].sc-dso-selectable+label.sc-dso-selectable::after{background-color:transparent;border-radius:50%;content:\"\";height:12px;left:6px;opacity:0;position:absolute;top:6px;width:12px;zoom:1}.sc-dso-selectable-h input[type=radio].sc-dso-selectable:checked+label.sc-dso-selectable::after{background-color:var(--dso-selectable-color, #39870c);opacity:1}.sc-dso-selectable-h>dso-info.sc-dso-selectable{float:none;margin:8px 16px 0 -32px;width:calc(100% + 32px)}.sc-dso-selectable-h:not(:last-child){margin-bottom:8px}*.sc-dso-selectable,*.sc-dso-selectable::after,*.sc-dso-selectable::before{box-sizing:border-box}";
22
22
 
23
23
  let Selectable = class {
24
24
  constructor(hostRef) {
@@ -52,7 +52,7 @@ let Selectable = class {
52
52
  render() {
53
53
  var _a;
54
54
  const hasInfo = !!this.host.querySelector('[slot="info"]');
55
- return (index.h(index.Fragment, null, index.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": this.describedById, disabled: this.disabled, required: this.required, checked: this.checked, onChange: e => this.change.emit(e), ref: (el) => this.input = el }), index.h("label", { htmlFor: this.getIdentifier() }, index.h("slot", null)), hasInfo && (index.h(index.Fragment, null, !this.infoFixed && (index.h("dso-info-button", { active: this.infoActive, onToggle: e => this.infoActive = e.detail.active })), index.h("dso-info", { fixed: this.infoFixed, active: this.infoActive, onClose: () => this.infoActive = false }, index.h("slot", { name: "info" }))))));
55
+ return (index.h(index.Fragment, null, index.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.change.emit(e), ref: (el) => this.input = el }), index.h("label", { htmlFor: this.getIdentifier() }, index.h("slot", null)), hasInfo && (index.h(index.Fragment, null, !this.infoFixed && (index.h("dso-info-button", { active: this.infoActive, onToggle: e => this.infoActive = e.detail.active })), index.h("dso-info", { id: (hasInfo && this.infoFixed) ? this.describedById : undefined, fixed: this.infoFixed, active: this.infoActive, onClose: () => this.infoActive = false }, index.h("div", null, index.h("slot", { name: "info" })))))));
56
56
  }
57
57
  getIdentifier() {
58
58
  var _a;
@@ -3,6 +3,7 @@
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  const index = require('./index-0a7c679a.js');
6
+ const v4 = require('./v4-8e8d6fbc.js');
6
7
 
7
8
  const mapBaseLayersCss = ":host{display:block}*,*::after,*::before{box-sizing:border-box}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);border:0}fieldset{border:0;margin:0;min-width:0;padding:0}fieldset .control-label{display:inline-block;font-weight:bold;margin-bottom:8px;max-width:100%;text-align:left}p[slot=info]{margin:0}";
8
9
 
@@ -11,6 +12,7 @@ let MapBaseLayers = class {
11
12
  index.registerInstance(this, hostRef);
12
13
  this.baseLayerChange = index.createEvent(this, "baseLayerChange", 7);
13
14
  this.selectableRefs = {};
15
+ this.group = v4.v4();
14
16
  }
15
17
  baseLayerChangeHandler(baseLayer) {
16
18
  this.baseLayerChange.emit({ activeBaseLayer: baseLayer });
@@ -28,7 +30,7 @@ let MapBaseLayers = class {
28
30
  for (const ref in this.selectableRefs) {
29
31
  delete this.selectableRefs[ref];
30
32
  }
31
- return (index.h("fieldset", { class: "form-group dso-radios" }, index.h("legend", { class: "sr-only" }, "Achtergrond"), index.h("div", { class: "dso-label-container" }, index.h("span", { class: "control-label", "aria-hidden": "true" }, "Achtergrond")), index.h("div", { class: "dso-field-container" }, this.baseLayers.map(baseLayer => (index.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) }, baseLayer.name, baseLayer.info
33
+ return (index.h("fieldset", { class: "form-group dso-radios" }, index.h("legend", { class: "sr-only" }, "Achtergrond"), index.h("div", { class: "dso-label-container" }, index.h("span", { class: "control-label", "aria-hidden": "true" }, "Achtergrond")), index.h("div", { class: "dso-field-container" }, this.baseLayers.map(baseLayer => (index.h("dso-selectable", { key: baseLayer.id, type: "radio", value: baseLayer.name, checked: baseLayer.checked, disabled: baseLayer.disabled, name: this.group, ref: ref => this.selectableRefs[baseLayer.id] = ref, onDsoChange: () => this.baseLayerChangeHandler(baseLayer) }, baseLayer.name, baseLayer.info
32
34
  ? index.h("p", { slot: "info" }, baseLayer.info)
33
35
  : null))))));
34
36
  }
@@ -3,6 +3,7 @@
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  const index = require('./index-0a7c679a.js');
6
+ const v4 = require('./v4-8e8d6fbc.js');
6
7
 
7
8
  const mapOverlaysCss = ":host{display:block}*,*::after,*::before{box-sizing:border-box}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);border:0}fieldset{border:0;margin:0;min-width:0;padding:0}fieldset .control-label{display:inline-block;font-weight:bold;margin-bottom:8px;max-width:100%;text-align:left}p[slot=info]{margin:0}";
8
9
 
@@ -11,6 +12,7 @@ let MapOverlays = class {
11
12
  index.registerInstance(this, hostRef);
12
13
  this.toggleOverlay = index.createEvent(this, "toggleOverlay", 7);
13
14
  this.selectableRefs = {};
15
+ this.group = v4.v4();
14
16
  }
15
17
  overlayChangeHandler(overlay, e) {
16
18
  const checked = e.detail.target instanceof HTMLInputElement ? !!e.detail.target.checked : false;
@@ -29,7 +31,7 @@ let MapOverlays = class {
29
31
  for (const ref in this.selectableRefs) {
30
32
  delete this.selectableRefs[ref];
31
33
  }
32
- return (index.h("fieldset", { class: "form-group dso-checkboxes" }, index.h("legend", { class: "sr-only" }, "Kaartlagen"), index.h("div", { class: "dso-label-container" }, index.h("span", { class: "control-label", "aria-hidden": "true" }, "Kaartlagen")), index.h("div", { class: "dso-field-container" }, this.overlays.map(overlay => (index.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) }, overlay.name, overlay.info
34
+ return (index.h("fieldset", { class: "form-group dso-checkboxes" }, index.h("legend", { class: "sr-only" }, "Kaartlagen"), index.h("div", { class: "dso-label-container" }, index.h("span", { class: "control-label", "aria-hidden": "true" }, "Kaartlagen")), index.h("div", { class: "dso-field-container" }, this.overlays.map(overlay => (index.h("dso-selectable", { key: overlay.id, type: "checkbox", value: overlay.name, checked: overlay.checked, disabled: overlay.disabled, name: this.group, ref: ref => this.selectableRefs[overlay.id] = ref, onDsoChange: e => this.overlayChangeHandler(overlay, e) }, overlay.name, overlay.info
33
35
  ? index.h("p", { slot: "info" }, overlay.info)
34
36
  : null))))));
35
37
  }
@@ -0,0 +1,44 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ const index = require('./index-0a7c679a.js');
6
+
7
+ const responsiveElementCss = ":host{display:block}";
8
+
9
+ const elementSizes = [
10
+ {
11
+ width: 624, alias: 'large'
12
+ },
13
+ {
14
+ width: 375, alias: 'medium'
15
+ },
16
+ {
17
+ width: 0, alias: 'small'
18
+ }
19
+ ];
20
+ let ResponsiveElement = class {
21
+ constructor(hostRef) {
22
+ index.registerInstance(this, hostRef);
23
+ this.sizeAlias = elementSizes[0].alias;
24
+ this.sizeWidth = 0;
25
+ this.observer = new ResizeObserver(([entry]) => {
26
+ var _a, _b;
27
+ const size = (_b = (_a = elementSizes.find(s => entry.contentRect.width >= s.width)) === null || _a === void 0 ? void 0 : _a.alias) !== null && _b !== void 0 ? _b : elementSizes[0].alias;
28
+ this.sizeAlias = size;
29
+ });
30
+ }
31
+ componentWillLoad() {
32
+ this.observer.observe(this.host);
33
+ }
34
+ disconnectedCallback() {
35
+ this.observer.unobserve(this.host);
36
+ }
37
+ render() {
38
+ return (index.h(index.Host, { small: this.sizeAlias === 'small', medium: this.sizeAlias === 'medium', large: this.sizeAlias === 'large' }, index.h("slot", null)));
39
+ }
40
+ get host() { return index.getElement(this); }
41
+ };
42
+ ResponsiveElement.style = responsiveElementCss;
43
+
44
+ exports.dso_responsive_element = ResponsiveElement;
@@ -15,5 +15,5 @@ const patchBrowser = () => {
15
15
  };
16
16
 
17
17
  patchBrowser().then(options => {
18
- return index.bootstrapLazy([["dso-map-base-layers.cjs",[[1,"dso-map-base-layers",{"baseLayers":[16]}]]],["dso-map-overlays.cjs",[[1,"dso-map-overlays",{"overlays":[16]}]]],["dso-header.cjs",[[1,"dso-header",{"loginUrl":[1,"login-url"],"logoutUrl":[1,"logout-url"],"mainMenu":[16],"useDropDownMenu":[1,"use-drop-down-menu"],"isLoggedIn":[4,"is-logged-in"],"userProfileName":[1,"user-profile-name"],"userProfileUrl":[1,"user-profile-url"],"userHomeUrl":[1,"user-home-url"],"showDropDown":[32],"hasSubLogo":[32],"overflowMenuItems":[32]}]]],["dso-toggletip.cjs",[[1,"dso-toggletip",{"label":[1],"position":[1],"small":[4],"secondary":[4],"active":[32]}]]],["dso-tree-view.cjs",[[1,"dso-tree-view",{"collection":[16]}]]],["dso-autosuggest.cjs",[[6,"dso-autosuggest",{"suggestions":[16],"loading":[4],"loadingLabel":[1,"loading-label"],"suggestOnFocus":[4,"suggest-on-focus"],"showSuggestions":[32],"selectedSuggestion":[32]},[[4,"click","onDocumentClick"]]]]],["dso-date-picker.cjs",[[2,"dso-date-picker",{"name":[1],"identifier":[1],"disabled":[516],"role":[1],"direction":[1],"required":[4],"dsoAutofocus":[4,"dso-autofocus"],"value":[1537],"min":[1],"max":[1],"activeFocus":[32],"focusedDay":[32],"open":[32],"visible":[32],"setFocus":[64],"show":[64],"hide":[64]},[[6,"click","handleDocumentClick"]]]]],["dso-helpcenter-panel.cjs",[[1,"dso-helpcenter-panel",{"label":[1],"url":[1],"visibility":[32],"isOpen":[32],"slideState":[32],"loadIframe":[32]}]]],["dso-image-overlay.cjs",[[1,"dso-image-overlay",{"active":[32],"focused":[32]}]]],["dso-label.cjs",[[1,"dso-label",{"compact":[4],"removable":[4],"status":[1],"hover":[32]}]]],["dso-map-controls.cjs",[[1,"dso-map-controls",{"open":[1540],"disableZoom":[1,"disable-zoom"],"hideContent":[32]}]]],["dso-viewer-grid.cjs",[[1,"dso-viewer-grid",{"filterpanelOpen":[516,"filterpanel-open"],"overlayOpen":[516,"overlay-open"],"initialMainSize":[1,"initial-main-size"],"mainSize":[32]}]]],["dso-alert.cjs",[[1,"dso-alert",{"status":[1],"roleAlert":[4,"role-alert"]}]]],["dso-attachments-counter.cjs",[[1,"dso-attachments-counter",{"count":[2]}]]],["dso-badge.cjs",[[1,"dso-badge",{"status":[1]}]]],["dso-banner.cjs",[[1,"dso-banner",{"status":[1]}]]],["dso-highlight-box.cjs",[[1,"dso-highlight-box",{"yellow":[4],"border":[4],"white":[4],"dropShadow":[4,"drop-shadow"],"step":[2]}]]],["dso-ozon-content.cjs",[[2,"dso-ozon-content",{"content":[1],"inline":[516],"deleted":[516],"interactive":[516],"state":[32]}]]],["dso-progress-bar.cjs",[[1,"dso-progress-bar",{"progress":[2],"min":[2],"max":[2]}]]],["dso-dropdown-menu.cjs",[[1,"dso-dropdown-menu",{"open":[1540],"dropdownAlign":[1,"dropdown-align"],"checkable":[4]}]]],["dso-tooltip.cjs",[[1,"dso-tooltip",{"descriptive":[516],"position":[1],"for":[1],"noArrow":[4,"no-arrow"],"stateless":[4],"small":[4],"active":[1540],"hidden":[32],"activate":[64],"deactivate":[64]},[[0,"click","listenClick"]]]]],["dso-progress-indicator.cjs",[[1,"dso-progress-indicator",{"label":[1],"size":[1],"block":[4]}]]],["dso-info-button.cjs",[[1,"dso-info-button",{"active":[1540],"secondary":[4],"label":[1]}]]],["dso-info_2.cjs",[[1,"dso-selectable",{"type":[1],"identifier":[1],"name":[1],"value":[1],"invalid":[4],"describedById":[1,"described-by-id"],"disabled":[4],"required":[4],"checked":[4],"indeterminate":[4],"infoFixed":[4,"info-fixed"],"infoActive":[32],"toggleInfo":[64]}],[1,"dso-info",{"fixed":[516],"active":[516]}]]],["dso-icon.cjs",[[1,"dso-icon",{"icon":[1]}]]]], options);
18
+ return index.bootstrapLazy([["dso-map-base-layers.cjs",[[1,"dso-map-base-layers",{"group":[1],"baseLayers":[16]}]]],["dso-map-overlays.cjs",[[1,"dso-map-overlays",{"group":[1],"overlays":[16]}]]],["dso-header.cjs",[[1,"dso-header",{"loginUrl":[1,"login-url"],"logoutUrl":[1,"logout-url"],"mainMenu":[16],"useDropDownMenu":[1,"use-drop-down-menu"],"isLoggedIn":[4,"is-logged-in"],"userProfileName":[1,"user-profile-name"],"userProfileUrl":[1,"user-profile-url"],"userHomeUrl":[1,"user-home-url"],"showDropDown":[32],"hasSubLogo":[32],"overflowMenuItems":[32]}]]],["dso-toggletip.cjs",[[1,"dso-toggletip",{"label":[1],"position":[1],"small":[4],"secondary":[4],"active":[32]}]]],["dso-tree-view.cjs",[[1,"dso-tree-view",{"collection":[16]}]]],["dso-autosuggest.cjs",[[6,"dso-autosuggest",{"suggestions":[16],"loading":[4],"loadingLabel":[1,"loading-label"],"suggestOnFocus":[4,"suggest-on-focus"],"showSuggestions":[32],"selectedSuggestion":[32]},[[4,"click","onDocumentClick"]]]]],["dso-date-picker.cjs",[[2,"dso-date-picker",{"name":[1],"identifier":[1],"disabled":[516],"role":[1],"direction":[1],"required":[4],"dsoAutofocus":[4,"dso-autofocus"],"value":[1537],"min":[1],"max":[1],"activeFocus":[32],"focusedDay":[32],"open":[32],"visible":[32],"setFocus":[64],"show":[64],"hide":[64]},[[6,"click","handleDocumentClick"]]]]],["dso-helpcenter-panel.cjs",[[1,"dso-helpcenter-panel",{"label":[1],"url":[1],"visibility":[32],"isOpen":[32],"slideState":[32],"loadIframe":[32]}]]],["dso-image-overlay.cjs",[[1,"dso-image-overlay",{"active":[32],"focused":[32]}]]],["dso-label.cjs",[[1,"dso-label",{"compact":[4],"removable":[4],"status":[1],"hover":[32]}]]],["dso-map-controls.cjs",[[1,"dso-map-controls",{"open":[1540],"disableZoom":[1,"disable-zoom"],"hideContent":[32]}]]],["dso-viewer-grid.cjs",[[1,"dso-viewer-grid",{"filterpanelOpen":[516,"filterpanel-open"],"overlayOpen":[516,"overlay-open"],"initialMainSize":[1,"initial-main-size"],"mainSize":[32]}]]],["dso-alert.cjs",[[1,"dso-alert",{"status":[1],"roleAlert":[4,"role-alert"]}]]],["dso-attachments-counter.cjs",[[1,"dso-attachments-counter",{"count":[2]}]]],["dso-badge.cjs",[[1,"dso-badge",{"status":[1]}]]],["dso-banner.cjs",[[1,"dso-banner",{"status":[1]}]]],["dso-highlight-box.cjs",[[1,"dso-highlight-box",{"yellow":[4],"border":[4],"white":[4],"dropShadow":[4,"drop-shadow"],"step":[2]}]]],["dso-ozon-content.cjs",[[2,"dso-ozon-content",{"content":[1],"inline":[516],"deleted":[516],"interactive":[516],"state":[32]}]]],["dso-progress-bar.cjs",[[1,"dso-progress-bar",{"progress":[2],"min":[2],"max":[2]}]]],["dso-responsive-element.cjs",[[1,"dso-responsive-element",{"sizeAlias":[32],"sizeWidth":[32]}]]],["dso-dropdown-menu.cjs",[[1,"dso-dropdown-menu",{"open":[1540],"dropdownAlign":[1,"dropdown-align"],"checkable":[4]}]]],["dso-tooltip.cjs",[[1,"dso-tooltip",{"descriptive":[516],"position":[1],"for":[1],"noArrow":[4,"no-arrow"],"stateless":[4],"small":[4],"active":[1540],"hidden":[32],"activate":[64],"deactivate":[64]},[[0,"click","listenClick"]]]]],["dso-progress-indicator.cjs",[[1,"dso-progress-indicator",{"label":[1],"size":[1],"block":[4]}]]],["dso-info-button.cjs",[[1,"dso-info-button",{"active":[1540],"secondary":[4],"label":[1]}]]],["dso-info_2.cjs",[[6,"dso-selectable",{"type":[1],"identifier":[1],"name":[1],"value":[1],"invalid":[4],"describedById":[1,"described-by-id"],"disabled":[4],"required":[4],"checked":[4],"indeterminate":[4],"infoFixed":[4,"info-fixed"],"infoActive":[32],"toggleInfo":[64]}],[1,"dso-info",{"fixed":[516],"active":[516]}]]],["dso-icon.cjs",[[1,"dso-icon",{"icon":[1]}]]]], options);
19
19
  });
@@ -14,7 +14,7 @@ const patchEsm = () => {
14
14
  const defineCustomElements = (win, options) => {
15
15
  if (typeof window === 'undefined') return Promise.resolve();
16
16
  return patchEsm().then(() => {
17
- return index.bootstrapLazy([["dso-map-base-layers.cjs",[[1,"dso-map-base-layers",{"baseLayers":[16]}]]],["dso-map-overlays.cjs",[[1,"dso-map-overlays",{"overlays":[16]}]]],["dso-header.cjs",[[1,"dso-header",{"loginUrl":[1,"login-url"],"logoutUrl":[1,"logout-url"],"mainMenu":[16],"useDropDownMenu":[1,"use-drop-down-menu"],"isLoggedIn":[4,"is-logged-in"],"userProfileName":[1,"user-profile-name"],"userProfileUrl":[1,"user-profile-url"],"userHomeUrl":[1,"user-home-url"],"showDropDown":[32],"hasSubLogo":[32],"overflowMenuItems":[32]}]]],["dso-toggletip.cjs",[[1,"dso-toggletip",{"label":[1],"position":[1],"small":[4],"secondary":[4],"active":[32]}]]],["dso-tree-view.cjs",[[1,"dso-tree-view",{"collection":[16]}]]],["dso-autosuggest.cjs",[[6,"dso-autosuggest",{"suggestions":[16],"loading":[4],"loadingLabel":[1,"loading-label"],"suggestOnFocus":[4,"suggest-on-focus"],"showSuggestions":[32],"selectedSuggestion":[32]},[[4,"click","onDocumentClick"]]]]],["dso-date-picker.cjs",[[2,"dso-date-picker",{"name":[1],"identifier":[1],"disabled":[516],"role":[1],"direction":[1],"required":[4],"dsoAutofocus":[4,"dso-autofocus"],"value":[1537],"min":[1],"max":[1],"activeFocus":[32],"focusedDay":[32],"open":[32],"visible":[32],"setFocus":[64],"show":[64],"hide":[64]},[[6,"click","handleDocumentClick"]]]]],["dso-helpcenter-panel.cjs",[[1,"dso-helpcenter-panel",{"label":[1],"url":[1],"visibility":[32],"isOpen":[32],"slideState":[32],"loadIframe":[32]}]]],["dso-image-overlay.cjs",[[1,"dso-image-overlay",{"active":[32],"focused":[32]}]]],["dso-label.cjs",[[1,"dso-label",{"compact":[4],"removable":[4],"status":[1],"hover":[32]}]]],["dso-map-controls.cjs",[[1,"dso-map-controls",{"open":[1540],"disableZoom":[1,"disable-zoom"],"hideContent":[32]}]]],["dso-viewer-grid.cjs",[[1,"dso-viewer-grid",{"filterpanelOpen":[516,"filterpanel-open"],"overlayOpen":[516,"overlay-open"],"initialMainSize":[1,"initial-main-size"],"mainSize":[32]}]]],["dso-alert.cjs",[[1,"dso-alert",{"status":[1],"roleAlert":[4,"role-alert"]}]]],["dso-attachments-counter.cjs",[[1,"dso-attachments-counter",{"count":[2]}]]],["dso-badge.cjs",[[1,"dso-badge",{"status":[1]}]]],["dso-banner.cjs",[[1,"dso-banner",{"status":[1]}]]],["dso-highlight-box.cjs",[[1,"dso-highlight-box",{"yellow":[4],"border":[4],"white":[4],"dropShadow":[4,"drop-shadow"],"step":[2]}]]],["dso-ozon-content.cjs",[[2,"dso-ozon-content",{"content":[1],"inline":[516],"deleted":[516],"interactive":[516],"state":[32]}]]],["dso-progress-bar.cjs",[[1,"dso-progress-bar",{"progress":[2],"min":[2],"max":[2]}]]],["dso-dropdown-menu.cjs",[[1,"dso-dropdown-menu",{"open":[1540],"dropdownAlign":[1,"dropdown-align"],"checkable":[4]}]]],["dso-tooltip.cjs",[[1,"dso-tooltip",{"descriptive":[516],"position":[1],"for":[1],"noArrow":[4,"no-arrow"],"stateless":[4],"small":[4],"active":[1540],"hidden":[32],"activate":[64],"deactivate":[64]},[[0,"click","listenClick"]]]]],["dso-progress-indicator.cjs",[[1,"dso-progress-indicator",{"label":[1],"size":[1],"block":[4]}]]],["dso-info-button.cjs",[[1,"dso-info-button",{"active":[1540],"secondary":[4],"label":[1]}]]],["dso-info_2.cjs",[[1,"dso-selectable",{"type":[1],"identifier":[1],"name":[1],"value":[1],"invalid":[4],"describedById":[1,"described-by-id"],"disabled":[4],"required":[4],"checked":[4],"indeterminate":[4],"infoFixed":[4,"info-fixed"],"infoActive":[32],"toggleInfo":[64]}],[1,"dso-info",{"fixed":[516],"active":[516]}]]],["dso-icon.cjs",[[1,"dso-icon",{"icon":[1]}]]]], options);
17
+ return index.bootstrapLazy([["dso-map-base-layers.cjs",[[1,"dso-map-base-layers",{"group":[1],"baseLayers":[16]}]]],["dso-map-overlays.cjs",[[1,"dso-map-overlays",{"group":[1],"overlays":[16]}]]],["dso-header.cjs",[[1,"dso-header",{"loginUrl":[1,"login-url"],"logoutUrl":[1,"logout-url"],"mainMenu":[16],"useDropDownMenu":[1,"use-drop-down-menu"],"isLoggedIn":[4,"is-logged-in"],"userProfileName":[1,"user-profile-name"],"userProfileUrl":[1,"user-profile-url"],"userHomeUrl":[1,"user-home-url"],"showDropDown":[32],"hasSubLogo":[32],"overflowMenuItems":[32]}]]],["dso-toggletip.cjs",[[1,"dso-toggletip",{"label":[1],"position":[1],"small":[4],"secondary":[4],"active":[32]}]]],["dso-tree-view.cjs",[[1,"dso-tree-view",{"collection":[16]}]]],["dso-autosuggest.cjs",[[6,"dso-autosuggest",{"suggestions":[16],"loading":[4],"loadingLabel":[1,"loading-label"],"suggestOnFocus":[4,"suggest-on-focus"],"showSuggestions":[32],"selectedSuggestion":[32]},[[4,"click","onDocumentClick"]]]]],["dso-date-picker.cjs",[[2,"dso-date-picker",{"name":[1],"identifier":[1],"disabled":[516],"role":[1],"direction":[1],"required":[4],"dsoAutofocus":[4,"dso-autofocus"],"value":[1537],"min":[1],"max":[1],"activeFocus":[32],"focusedDay":[32],"open":[32],"visible":[32],"setFocus":[64],"show":[64],"hide":[64]},[[6,"click","handleDocumentClick"]]]]],["dso-helpcenter-panel.cjs",[[1,"dso-helpcenter-panel",{"label":[1],"url":[1],"visibility":[32],"isOpen":[32],"slideState":[32],"loadIframe":[32]}]]],["dso-image-overlay.cjs",[[1,"dso-image-overlay",{"active":[32],"focused":[32]}]]],["dso-label.cjs",[[1,"dso-label",{"compact":[4],"removable":[4],"status":[1],"hover":[32]}]]],["dso-map-controls.cjs",[[1,"dso-map-controls",{"open":[1540],"disableZoom":[1,"disable-zoom"],"hideContent":[32]}]]],["dso-viewer-grid.cjs",[[1,"dso-viewer-grid",{"filterpanelOpen":[516,"filterpanel-open"],"overlayOpen":[516,"overlay-open"],"initialMainSize":[1,"initial-main-size"],"mainSize":[32]}]]],["dso-alert.cjs",[[1,"dso-alert",{"status":[1],"roleAlert":[4,"role-alert"]}]]],["dso-attachments-counter.cjs",[[1,"dso-attachments-counter",{"count":[2]}]]],["dso-badge.cjs",[[1,"dso-badge",{"status":[1]}]]],["dso-banner.cjs",[[1,"dso-banner",{"status":[1]}]]],["dso-highlight-box.cjs",[[1,"dso-highlight-box",{"yellow":[4],"border":[4],"white":[4],"dropShadow":[4,"drop-shadow"],"step":[2]}]]],["dso-ozon-content.cjs",[[2,"dso-ozon-content",{"content":[1],"inline":[516],"deleted":[516],"interactive":[516],"state":[32]}]]],["dso-progress-bar.cjs",[[1,"dso-progress-bar",{"progress":[2],"min":[2],"max":[2]}]]],["dso-responsive-element.cjs",[[1,"dso-responsive-element",{"sizeAlias":[32],"sizeWidth":[32]}]]],["dso-dropdown-menu.cjs",[[1,"dso-dropdown-menu",{"open":[1540],"dropdownAlign":[1,"dropdown-align"],"checkable":[4]}]]],["dso-tooltip.cjs",[[1,"dso-tooltip",{"descriptive":[516],"position":[1],"for":[1],"noArrow":[4,"no-arrow"],"stateless":[4],"small":[4],"active":[1540],"hidden":[32],"activate":[64],"deactivate":[64]},[[0,"click","listenClick"]]]]],["dso-progress-indicator.cjs",[[1,"dso-progress-indicator",{"label":[1],"size":[1],"block":[4]}]]],["dso-info-button.cjs",[[1,"dso-info-button",{"active":[1540],"secondary":[4],"label":[1]}]]],["dso-info_2.cjs",[[6,"dso-selectable",{"type":[1],"identifier":[1],"name":[1],"value":[1],"invalid":[4],"describedById":[1,"described-by-id"],"disabled":[4],"required":[4],"checked":[4],"indeterminate":[4],"infoFixed":[4,"info-fixed"],"infoActive":[32],"toggleInfo":[64]}],[1,"dso-info",{"fixed":[516],"active":[516]}]]],["dso-icon.cjs",[[1,"dso-icon",{"icon":[1]}]]]], options);
18
18
  });
19
19
  };
20
20
 
@@ -23,6 +23,7 @@
23
23
  "./components/ozon-content/ozon-content.js",
24
24
  "./components/progress-bar/progress-bar.js",
25
25
  "./components/progress-indicator/progress-indicator.js",
26
+ "./components/responsive-element/responsive-element.js",
26
27
  "./components/toggletip/toggletip.js",
27
28
  "./components/tooltip/tooltip.js",
28
29
  "./components/tree-view/tree-view.js"
@@ -106,7 +106,7 @@ export class Header {
106
106
  this.userProfileName,
107
107
  h("span", { class: "profile-label" }, "- Mijn profiel")))),
108
108
  this.logoutUrl && this.isLoggedIn && (h("li", null,
109
- h("a", { href: this.logoutUrl }, "Uitloggen"))))))))),
109
+ h("a", { href: this.logoutUrl, onClick: e => this.logoutClick.emit({ originalEvent: e }) }, "Uitloggen"))))))))),
110
110
  !this.showDropDown && this.mainMenu.length > 0 && (h(Fragment, null,
111
111
  h("div", { class: "dso-header-session" },
112
112
  this.userProfileUrl &&
@@ -117,7 +117,7 @@ export class Header {
117
117
  this.loginUrl && !this.isLoggedIn && (h("div", { class: "login" },
118
118
  h("a", { href: this.loginUrl }, "Inloggen"))),
119
119
  this.logoutUrl && this.isLoggedIn && (h("div", { class: "logout" },
120
- h("a", { href: this.logoutUrl }, "Uitloggen")))),
120
+ h("a", { href: this.logoutUrl, onClick: e => this.logoutClick.emit({ originalEvent: e }) }, "Uitloggen")))),
121
121
  h("nav", { class: "dso-navbar" },
122
122
  h("ul", { class: "dso-nav dso-nav-main", ref: (element) => (this.nav = element) },
123
123
  this.mainMenu
@@ -314,6 +314,25 @@ export class Header {
314
314
  }
315
315
  }
316
316
  }
317
+ }, {
318
+ "method": "logoutClick",
319
+ "name": "logoutClick",
320
+ "bubbles": true,
321
+ "cancelable": true,
322
+ "composed": true,
323
+ "docs": {
324
+ "tags": [],
325
+ "text": "Only available when `logout-url` is set"
326
+ },
327
+ "complexType": {
328
+ "original": "HeaderMenuLogoutClick",
329
+ "resolved": "HeaderMenuLogoutClick",
330
+ "references": {
331
+ "HeaderMenuLogoutClick": {
332
+ "location": "local"
333
+ }
334
+ }
335
+ }
317
336
  }]; }
318
337
  static get elementRef() { return "host"; }
319
338
  static get watchers() { return [{
@@ -1,7 +1,9 @@
1
1
  import { Component, h, Prop, Event } from '@stencil/core';
2
+ import { v4 as uuidv4 } from 'uuid';
2
3
  export class MapBaseLayers {
3
4
  constructor() {
4
5
  this.selectableRefs = {};
6
+ this.group = uuidv4();
5
7
  }
6
8
  baseLayerChangeHandler(baseLayer) {
7
9
  this.baseLayerChange.emit({ activeBaseLayer: baseLayer });
@@ -23,7 +25,7 @@ export class MapBaseLayers {
23
25
  h("legend", { class: "sr-only" }, "Achtergrond"),
24
26
  h("div", { class: "dso-label-container" },
25
27
  h("span", { class: "control-label", "aria-hidden": "true" }, "Achtergrond")),
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) },
28
+ 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, name: this.group, ref: ref => this.selectableRefs[baseLayer.id] = ref, onDsoChange: () => this.baseLayerChangeHandler(baseLayer) },
27
29
  baseLayer.name,
28
30
  baseLayer.info
29
31
  ? h("p", { slot: "info" }, baseLayer.info)
@@ -38,6 +40,24 @@ export class MapBaseLayers {
38
40
  "$": ["map-base-layers.css"]
39
41
  }; }
40
42
  static get properties() { return {
43
+ "group": {
44
+ "type": "string",
45
+ "mutable": false,
46
+ "complexType": {
47
+ "original": "string",
48
+ "resolved": "string",
49
+ "references": {}
50
+ },
51
+ "required": false,
52
+ "optional": false,
53
+ "docs": {
54
+ "tags": [],
55
+ "text": ""
56
+ },
57
+ "attribute": "group",
58
+ "reflect": false,
59
+ "defaultValue": "uuidv4()"
60
+ },
41
61
  "baseLayers": {
42
62
  "type": "unknown",
43
63
  "mutable": false,
@@ -1,7 +1,9 @@
1
1
  import { Component, Event, Prop, h } from '@stencil/core';
2
+ import { v4 as uuidv4 } from 'uuid';
2
3
  export class MapOverlays {
3
4
  constructor() {
4
5
  this.selectableRefs = {};
6
+ this.group = uuidv4();
5
7
  }
6
8
  overlayChangeHandler(overlay, e) {
7
9
  const checked = e.detail.target instanceof HTMLInputElement ? !!e.detail.target.checked : false;
@@ -24,7 +26,7 @@ export class MapOverlays {
24
26
  h("legend", { class: "sr-only" }, "Kaartlagen"),
25
27
  h("div", { class: "dso-label-container" },
26
28
  h("span", { class: "control-label", "aria-hidden": "true" }, "Kaartlagen")),
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) },
29
+ 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, name: this.group, ref: ref => this.selectableRefs[overlay.id] = ref, onDsoChange: e => this.overlayChangeHandler(overlay, e) },
28
30
  overlay.name,
29
31
  overlay.info
30
32
  ? h("p", { slot: "info" }, overlay.info)
@@ -39,6 +41,24 @@ export class MapOverlays {
39
41
  "$": ["map-overlays.css"]
40
42
  }; }
41
43
  static get properties() { return {
44
+ "group": {
45
+ "type": "string",
46
+ "mutable": false,
47
+ "complexType": {
48
+ "original": "string",
49
+ "resolved": "string",
50
+ "references": {}
51
+ },
52
+ "required": false,
53
+ "optional": false,
54
+ "docs": {
55
+ "tags": [],
56
+ "text": ""
57
+ },
58
+ "attribute": "group",
59
+ "reflect": false,
60
+ "defaultValue": "uuidv4()"
61
+ },
42
62
  "overlays": {
43
63
  "type": "unknown",
44
64
  "mutable": false,
@@ -0,0 +1,3 @@
1
+ :host {
2
+ display: block;
3
+ }
@@ -0,0 +1,46 @@
1
+ import { Component, Element, Host, State, h } from '@stencil/core';
2
+ const elementSizes = [
3
+ {
4
+ width: 624, alias: 'large'
5
+ },
6
+ {
7
+ width: 375, alias: 'medium'
8
+ },
9
+ {
10
+ width: 0, alias: 'small'
11
+ }
12
+ ];
13
+ export class ResponsiveElement {
14
+ constructor() {
15
+ this.sizeAlias = elementSizes[0].alias;
16
+ this.sizeWidth = 0;
17
+ this.observer = new ResizeObserver(([entry]) => {
18
+ var _a, _b;
19
+ const size = (_b = (_a = elementSizes.find(s => entry.contentRect.width >= s.width)) === null || _a === void 0 ? void 0 : _a.alias) !== null && _b !== void 0 ? _b : elementSizes[0].alias;
20
+ this.sizeAlias = size;
21
+ });
22
+ }
23
+ componentWillLoad() {
24
+ this.observer.observe(this.host);
25
+ }
26
+ disconnectedCallback() {
27
+ this.observer.unobserve(this.host);
28
+ }
29
+ render() {
30
+ return (h(Host, { small: this.sizeAlias === 'small', medium: this.sizeAlias === 'medium', large: this.sizeAlias === 'large' },
31
+ h("slot", null)));
32
+ }
33
+ static get is() { return "dso-responsive-element"; }
34
+ static get encapsulation() { return "shadow"; }
35
+ static get originalStyleUrls() { return {
36
+ "$": ["./responsive-element.scss"]
37
+ }; }
38
+ static get styleUrls() { return {
39
+ "$": ["responsive-element.css"]
40
+ }; }
41
+ static get states() { return {
42
+ "sizeAlias": {},
43
+ "sizeWidth": {}
44
+ }; }
45
+ static get elementRef() { return "host"; }
46
+ }
@@ -0,0 +1,8 @@
1
+ import { html } from 'lit-html';
2
+ export function responsiveElementTemplate({ children }) {
3
+ return html `
4
+ <dso-responsive-element>
5
+ ${children}
6
+ </dso-responsive-element>
7
+ `;
8
+ }
@@ -31,20 +31,21 @@ export class Selectable {
31
31
  var _a;
32
32
  const hasInfo = !!this.host.querySelector('[slot="info"]');
33
33
  return (h(Fragment, null,
34
- 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": this.describedById, disabled: this.disabled, required: this.required, checked: this.checked, onChange: e => this.change.emit(e), ref: (el) => this.input = el }),
34
+ 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.change.emit(e), ref: (el) => this.input = el }),
35
35
  h("label", { htmlFor: this.getIdentifier() },
36
36
  h("slot", null)),
37
37
  hasInfo && (h(Fragment, null,
38
38
  !this.infoFixed && (h("dso-info-button", { active: this.infoActive, onToggle: e => this.infoActive = e.detail.active })),
39
- h("dso-info", { fixed: this.infoFixed, active: this.infoActive, onClose: () => this.infoActive = false },
40
- h("slot", { name: "info" }))))));
39
+ h("dso-info", { id: (hasInfo && this.infoFixed) ? this.describedById : undefined, fixed: this.infoFixed, active: this.infoActive, onClose: () => this.infoActive = false },
40
+ h("div", null,
41
+ h("slot", { name: "info" })))))));
41
42
  }
42
43
  getIdentifier() {
43
44
  var _a;
44
45
  return (_a = this.identifier) !== null && _a !== void 0 ? _a : this.fallbackIdentifier;
45
46
  }
46
47
  static get is() { return "dso-selectable"; }
47
- static get encapsulation() { return "shadow"; }
48
+ static get encapsulation() { return "scoped"; }
48
49
  static get originalStyleUrls() { return {
49
50
  "$": ["selectable.scss"]
50
51
  }; }