@public-ui/components 1.7.11 → 1.7.13
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/custom-elements.json +1 -1
- package/dist/cjs/{a11y.tipps-bdf67538.js → a11y.tipps-080b0008.js} +1 -1
- package/dist/cjs/{a11y.tipps-bdf67538.js.map → a11y.tipps-080b0008.js.map} +1 -1
- package/dist/cjs/{align-03606e34.js → align-d634a2f8.js} +1 -1
- package/dist/cjs/{align-03606e34.js.map → align-d634a2f8.js.map} +1 -1
- package/dist/cjs/{alignment-3bda30d0.js → alignment-ba7565c2.js} +1 -1
- package/dist/cjs/{alignment-3bda30d0.js.map → alignment-ba7565c2.js.map} +1 -1
- package/dist/cjs/{app-globals-51c0995c.js → app-globals-ea12e422.js} +1 -1
- package/dist/cjs/{app-globals-51c0995c.js.map → app-globals-ea12e422.js.map} +1 -1
- package/dist/cjs/{aria-current-20486eec.js → aria-current-2951f7e3.js} +1 -1
- package/dist/cjs/{aria-current-20486eec.js.map → aria-current-2951f7e3.js.map} +1 -1
- package/dist/cjs/associated.controller-5072ecdd.js +4 -0
- package/dist/cjs/associated.controller-5072ecdd.js.map +1 -0
- package/dist/cjs/{color-324d7376.js → color-c665b5bc.js} +1 -1
- package/dist/cjs/{color-324d7376.js.map → color-c665b5bc.js.map} +1 -1
- package/dist/cjs/controller-045420ff.js +4 -0
- package/dist/cjs/controller-045420ff.js.map +1 -0
- package/dist/cjs/{controller-e3ea9e28.js → controller-6b1236a9.js} +1 -1
- package/dist/cjs/{controller-e3ea9e28.js.map → controller-6b1236a9.js.map} +1 -1
- package/dist/cjs/{controller-6c8f5b84.js → controller-9da03fe0.js} +1 -1
- package/dist/cjs/{controller-6c8f5b84.js.map → controller-9da03fe0.js.map} +1 -1
- package/dist/cjs/{controller-b0fc3b7c.js → controller-e2618b86.js} +1 -1
- package/dist/cjs/{controller-b0fc3b7c.js.map → controller-e2618b86.js.map} +1 -1
- package/dist/cjs/{controller-a4327ecf.js → controller-fd4b877c.js} +1 -1
- package/dist/cjs/controller-fd4b877c.js.map +1 -0
- package/dist/cjs/{controller-icon-abec5bf1.js → controller-icon-5492dac9.js} +1 -1
- package/dist/cjs/{controller-icon-abec5bf1.js.map → controller-icon-5492dac9.js.map} +1 -1
- package/dist/cjs/{custom-class-230b71ad.js → custom-class-5533491e.js} +1 -1
- package/dist/cjs/{custom-class-230b71ad.js.map → custom-class-5533491e.js.map} +1 -1
- package/dist/cjs/{dev.utils-44125020.js → dev.utils-8798d31e.js} +1 -1
- package/dist/cjs/dev.utils-8798d31e.js.map +1 -0
- package/dist/cjs/{devtools-d1d5b564.js → devtools-b44e1c3c.js} +1 -1
- package/dist/cjs/{devtools-d1d5b564.js.map → devtools-b44e1c3c.js.map} +1 -1
- package/dist/cjs/form-field-msg-25d29d80.js +4 -0
- package/dist/cjs/form-field-msg-25d29d80.js.map +1 -0
- package/dist/cjs/has-closer-5248a94d.js +4 -0
- package/dist/cjs/{has-closer-4075bcde.js.map → has-closer-5248a94d.js.map} +1 -1
- package/dist/cjs/hide-label-534fe441.js +4 -0
- package/dist/cjs/{hide-label-92395355.js.map → hide-label-534fe441.js.map} +1 -1
- package/dist/cjs/{i18n-365eedcb.js → i18n-b955386c.js} +1 -1
- package/dist/cjs/{i18n-365eedcb.js.map → i18n-b955386c.js.map} +1 -1
- package/dist/cjs/{icons-947f8e26.js → icons-0a9fdc0f.js} +1 -1
- package/dist/cjs/{icons-947f8e26.js.map → icons-0a9fdc0f.js.map} +1 -1
- package/dist/cjs/image-source-ef8ba1ba.js +4 -0
- package/dist/cjs/{image-source-f555dbf3.js.map → image-source-ef8ba1ba.js.map} +1 -1
- package/dist/cjs/index-4ab6021a.js +4 -0
- package/dist/cjs/index-4ab6021a.js.map +1 -0
- package/dist/cjs/index-99589a91.js +4 -0
- package/dist/cjs/index-99589a91.js.map +1 -0
- package/dist/cjs/index.cjs.js +1 -1
- package/dist/cjs/kol-abbr.cjs.entry.js +1 -1
- package/dist/cjs/kol-abbr.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-accordion.cjs.entry.js +1 -1
- package/dist/cjs/kol-accordion.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-alert-wc_3.cjs.entry.js +1 -1
- package/dist/cjs/kol-alert-wc_3.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-alert.cjs.entry.js +1 -1
- package/dist/cjs/kol-alert.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-avatar-wc.cjs.entry.js +1 -1
- package/dist/cjs/kol-avatar-wc.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-avatar.cjs.entry.js +1 -1
- package/dist/cjs/kol-avatar.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-badge.cjs.entry.js +1 -1
- package/dist/cjs/kol-badge.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-breadcrumb.cjs.entry.js +1 -1
- package/dist/cjs/kol-breadcrumb.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-button-group-wc.cjs.entry.js +1 -1
- package/dist/cjs/kol-button-group-wc.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-button-group.cjs.entry.js +1 -1
- package/dist/cjs/kol-button-group.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-button-link-text-switch.cjs.entry.js +1 -1
- package/dist/cjs/kol-button-link-text-switch.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-button-link.cjs.entry.js +1 -1
- package/dist/cjs/kol-button-link.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-button.cjs.entry.js +1 -1
- package/dist/cjs/kol-button.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-card.cjs.entry.js +1 -1
- package/dist/cjs/kol-card.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-details.cjs.entry.js +1 -1
- package/dist/cjs/kol-details.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-form.cjs.entry.js +1 -1
- package/dist/cjs/kol-form.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-heading.cjs.entry.js +1 -1
- package/dist/cjs/kol-heading.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-icon-font-awesome.cjs.entry.js +1 -1
- package/dist/cjs/kol-icon-font-awesome.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-icon-icofont.cjs.entry.js +1 -1
- package/dist/cjs/kol-icon-icofont.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-icon.cjs.entry.js +1 -1
- package/dist/cjs/kol-icon.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-image.cjs.entry.js +1 -1
- package/dist/cjs/kol-image.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-indented-text.cjs.entry.js +1 -1
- package/dist/cjs/kol-indented-text.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-input-adapter-leanup.cjs.entry.js +1 -1
- package/dist/cjs/kol-input-adapter-leanup.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-input-checkbox.cjs.entry.js +1 -1
- package/dist/cjs/kol-input-checkbox.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-input-color.cjs.entry.js +1 -1
- package/dist/cjs/kol-input-color.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-input-date.cjs.entry.js +1 -1
- package/dist/cjs/kol-input-date.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-input-email.cjs.entry.js +1 -1
- package/dist/cjs/kol-input-email.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-input-file.cjs.entry.js +1 -1
- package/dist/cjs/kol-input-file.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-input-number.cjs.entry.js +1 -1
- package/dist/cjs/kol-input-number.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-input-password.cjs.entry.js +1 -1
- package/dist/cjs/kol-input-password.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-input-radio-group.cjs.entry.js +1 -1
- package/dist/cjs/kol-input-radio-group.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-input-radio.cjs.entry.js +1 -1
- package/dist/cjs/kol-input-radio.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-input-range.cjs.entry.js +1 -1
- package/dist/cjs/kol-input-range.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-input-text.cjs.entry.js +1 -1
- package/dist/cjs/kol-input-text.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-input.cjs.entry.js +1 -1
- package/dist/cjs/kol-input.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-kolibri.cjs.entry.js +1 -1
- package/dist/cjs/kol-kolibri.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-link-button.cjs.entry.js +1 -1
- package/dist/cjs/kol-link-button.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-link-group.cjs.entry.js +1 -1
- package/dist/cjs/kol-link-group.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-link-wc.cjs.entry.js +1 -1
- package/dist/cjs/kol-link-wc.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-link.cjs.entry.js +1 -1
- package/dist/cjs/kol-link.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-logo.cjs.entry.js +1 -1
- package/dist/cjs/kol-logo.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-modal.cjs.entry.js +1 -1
- package/dist/cjs/kol-modal.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-nav.cjs.entry.js +1 -1
- package/dist/cjs/kol-nav.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-pagination.cjs.entry.js +1 -1
- package/dist/cjs/kol-pagination.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-popover-wc.cjs.entry.js +1 -1
- package/dist/cjs/kol-popover-wc.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-progress.cjs.entry.js +1 -1
- package/dist/cjs/kol-progress.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-quote.cjs.entry.js +1 -1
- package/dist/cjs/kol-quote.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-select.cjs.entry.js +1 -1
- package/dist/cjs/kol-select.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-skip-nav.cjs.entry.js +1 -1
- package/dist/cjs/kol-skip-nav.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-span-wc_2.cjs.entry.js +1 -1
- package/dist/cjs/kol-span-wc_2.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-span.cjs.entry.js +1 -1
- package/dist/cjs/kol-span.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-spin.cjs.entry.js +1 -1
- package/dist/cjs/kol-spin.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-split-button.cjs.entry.js +1 -1
- package/dist/cjs/kol-split-button.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-symbol.cjs.entry.js +1 -1
- package/dist/cjs/kol-symbol.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-table.cjs.entry.js +1 -1
- package/dist/cjs/kol-table.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-tabs.cjs.entry.js +1 -1
- package/dist/cjs/kol-tabs.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-textarea.cjs.entry.js +1 -1
- package/dist/cjs/kol-textarea.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-toast-container.cjs.entry.js +1 -1
- package/dist/cjs/kol-toast-container.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-toast.cjs.entry.js +1 -1
- package/dist/cjs/kol-toast.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-version.cjs.entry.js +1 -1
- package/dist/cjs/kol-version.cjs.entry.js.map +1 -1
- package/dist/cjs/kolibri.cjs.js +1 -1
- package/dist/cjs/kolibri.cjs.js.map +1 -1
- package/dist/cjs/{label-c6dce025.js → label-202d094e.js} +1 -1
- package/dist/cjs/{label-c6dce025.js.map → label-202d094e.js.map} +1 -1
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/cjs/loader.cjs.js.map +1 -1
- package/dist/cjs/open-ca70f48a.js +4 -0
- package/dist/cjs/{open-d3d157ce.js.map → open-ca70f48a.js.map} +1 -1
- package/dist/cjs/{prop.validators-9cb46e7c.js → prop.validators-1bf26766.js} +1 -1
- package/dist/cjs/{prop.validators-9cb46e7c.js.map → prop.validators-1bf26766.js.map} +1 -1
- package/dist/cjs/rows-4a01c521.js +4 -0
- package/dist/cjs/{rows-852b9174.js.map → rows-4a01c521.js.map} +1 -1
- package/dist/cjs/show-5fe2dc57.js +4 -0
- package/dist/cjs/{show-5c75df45.js.map → show-5fe2dc57.js.map} +1 -1
- package/dist/cjs/{suggestions-da772f6b.js → suggestions-81af4ff7.js} +1 -1
- package/dist/cjs/{suggestions-da772f6b.js.map → suggestions-81af4ff7.js.map} +1 -1
- package/dist/cjs/{tab-index-30def616.js → tab-index-c88fabeb.js} +1 -1
- package/dist/cjs/{tab-index-30def616.js.map → tab-index-c88fabeb.js.map} +1 -1
- package/dist/cjs/{tooltip-align-18038058.js → tooltip-align-69271e5f.js} +1 -1
- package/dist/cjs/{tooltip-align-18038058.js.map → tooltip-align-69271e5f.js.map} +1 -1
- package/dist/cjs/{validation-5c985b0b.js → validation-1438e7f7.js} +1 -1
- package/dist/cjs/{validation-5c985b0b.js.map → validation-1438e7f7.js.map} +1 -1
- package/dist/cjs/{validation-1a9f106c.js → validation-7b397fa5.js} +1 -1
- package/dist/cjs/{validation-1a9f106c.js.map → validation-7b397fa5.js.map} +1 -1
- package/dist/components/component.js +1 -1
- package/dist/components/component.js.map +1 -1
- package/dist/components/component10.js +1 -1
- package/dist/components/component10.js.map +1 -1
- package/dist/components/component11.js +1 -1
- package/dist/components/component11.js.map +1 -1
- package/dist/components/component12.js +1 -1
- package/dist/components/component12.js.map +1 -1
- package/dist/components/component13.js +1 -1
- package/dist/components/component13.js.map +1 -1
- package/dist/components/component14.js +1 -1
- package/dist/components/component14.js.map +1 -1
- package/dist/components/component15.js +1 -1
- package/dist/components/component15.js.map +1 -1
- package/dist/components/component16.js +1 -1
- package/dist/components/component16.js.map +1 -1
- package/dist/components/component2.js +1 -1
- package/dist/components/component2.js.map +1 -1
- package/dist/components/component3.js +1 -1
- package/dist/components/component3.js.map +1 -1
- package/dist/components/component4.js +1 -1
- package/dist/components/component4.js.map +1 -1
- package/dist/components/component5.js +1 -1
- package/dist/components/component5.js.map +1 -1
- package/dist/components/component6.js +1 -1
- package/dist/components/component6.js.map +1 -1
- package/dist/components/component7.js +1 -1
- package/dist/components/component7.js.map +1 -1
- package/dist/components/component8.js +1 -1
- package/dist/components/component8.js.map +1 -1
- package/dist/components/component9.js +1 -1
- package/dist/components/component9.js.map +1 -1
- package/dist/components/controller2.js +1 -1
- package/dist/components/controller2.js.map +1 -1
- package/dist/components/i18n.js +1 -1
- package/dist/components/i18n.js.map +1 -1
- package/dist/components/kol-abbr.js +1 -1
- package/dist/components/kol-abbr.js.map +1 -1
- package/dist/components/kol-accordion.js +1 -1
- package/dist/components/kol-accordion.js.map +1 -1
- package/dist/components/kol-avatar.js +1 -1
- package/dist/components/kol-avatar.js.map +1 -1
- package/dist/components/kol-breadcrumb.js +1 -1
- package/dist/components/kol-breadcrumb.js.map +1 -1
- package/dist/components/kol-button-group.js +1 -1
- package/dist/components/kol-button-group.js.map +1 -1
- package/dist/components/kol-button-link.js +1 -1
- package/dist/components/kol-button-link.js.map +1 -1
- package/dist/components/kol-card.js +1 -1
- package/dist/components/kol-card.js.map +1 -1
- package/dist/components/kol-details.js +1 -1
- package/dist/components/kol-details.js.map +1 -1
- package/dist/components/kol-form.js +1 -1
- package/dist/components/kol-form.js.map +1 -1
- package/dist/components/kol-heading.js +1 -1
- package/dist/components/kol-heading.js.map +1 -1
- package/dist/components/kol-icon-font-awesome.js +1 -1
- package/dist/components/kol-icon-font-awesome.js.map +1 -1
- package/dist/components/kol-icon-icofont.js +1 -1
- package/dist/components/kol-icon-icofont.js.map +1 -1
- package/dist/components/kol-image.js +1 -1
- package/dist/components/kol-image.js.map +1 -1
- package/dist/components/kol-input-adapter-leanup.js +1 -1
- package/dist/components/kol-input-adapter-leanup.js.map +1 -1
- package/dist/components/kol-input-checkbox.js +1 -1
- package/dist/components/kol-input-checkbox.js.map +1 -1
- package/dist/components/kol-input-color.js +1 -1
- package/dist/components/kol-input-color.js.map +1 -1
- package/dist/components/kol-input-date.js +1 -1
- package/dist/components/kol-input-date.js.map +1 -1
- package/dist/components/kol-input-email.js +1 -1
- package/dist/components/kol-input-email.js.map +1 -1
- package/dist/components/kol-input-file.js +1 -1
- package/dist/components/kol-input-file.js.map +1 -1
- package/dist/components/kol-input-number.js +1 -1
- package/dist/components/kol-input-number.js.map +1 -1
- package/dist/components/kol-input-password.js +1 -1
- package/dist/components/kol-input-password.js.map +1 -1
- package/dist/components/kol-input-radio-group.js +1 -1
- package/dist/components/kol-input-radio-group.js.map +1 -1
- package/dist/components/kol-input-range.js +1 -1
- package/dist/components/kol-input-range.js.map +1 -1
- package/dist/components/kol-input-text.js +1 -1
- package/dist/components/kol-input-text.js.map +1 -1
- package/dist/components/kol-kolibri.js +1 -1
- package/dist/components/kol-kolibri.js.map +1 -1
- package/dist/components/kol-link-button.js +1 -1
- package/dist/components/kol-link-button.js.map +1 -1
- package/dist/components/kol-link-group.js +1 -1
- package/dist/components/kol-link-group.js.map +1 -1
- package/dist/components/kol-logo.js +1 -1
- package/dist/components/kol-logo.js.map +1 -1
- package/dist/components/kol-modal.js +1 -1
- package/dist/components/kol-modal.js.map +1 -1
- package/dist/components/kol-nav.js +1 -1
- package/dist/components/kol-nav.js.map +1 -1
- package/dist/components/kol-popover-wc.js +1 -1
- package/dist/components/kol-popover-wc.js.map +1 -1
- package/dist/components/kol-progress.js +1 -1
- package/dist/components/kol-progress.js.map +1 -1
- package/dist/components/kol-quote.js +1 -1
- package/dist/components/kol-quote.js.map +1 -1
- package/dist/components/kol-skip-nav.js +1 -1
- package/dist/components/kol-skip-nav.js.map +1 -1
- package/dist/components/kol-span.js +1 -1
- package/dist/components/kol-span.js.map +1 -1
- package/dist/components/kol-spin.js +1 -1
- package/dist/components/kol-spin.js.map +1 -1
- package/dist/components/kol-split-button.js +1 -1
- package/dist/components/kol-split-button.js.map +1 -1
- package/dist/components/kol-symbol.js +1 -1
- package/dist/components/kol-symbol.js.map +1 -1
- package/dist/components/kol-table.js +1 -1
- package/dist/components/kol-table.js.map +1 -1
- package/dist/components/kol-tabs.js +1 -1
- package/dist/components/kol-tabs.js.map +1 -1
- package/dist/components/kol-textarea.js +1 -1
- package/dist/components/kol-textarea.js.map +1 -1
- package/dist/components/kol-toast-container.js +1 -1
- package/dist/components/kol-toast-container.js.map +1 -1
- package/dist/components/kol-toast.js +1 -1
- package/dist/components/kol-toast.js.map +1 -1
- package/dist/components/kol-version.js +1 -1
- package/dist/components/kol-version.js.map +1 -1
- package/dist/components/prop.validators.js +1 -1
- package/dist/components/prop.validators.js.map +1 -1
- package/dist/components/shadow.js +1 -1
- package/dist/components/shadow.js.map +1 -1
- package/dist/components/shadow2.js +1 -1
- package/dist/components/shadow2.js.map +1 -1
- package/dist/components/shadow3.js +1 -1
- package/dist/components/shadow3.js.map +1 -1
- package/dist/esm/{a11y.tipps-f7f7cb4b.js → a11y.tipps-90beea3f.js} +1 -1
- package/dist/esm/{a11y.tipps-f7f7cb4b.js.map → a11y.tipps-90beea3f.js.map} +1 -1
- package/dist/esm/{align-e436d1e2.js → align-6a271473.js} +1 -1
- package/dist/esm/{align-e436d1e2.js.map → align-6a271473.js.map} +1 -1
- package/dist/esm/{alignment-e13116c6.js → alignment-b1fc396e.js} +1 -1
- package/dist/esm/{alignment-e13116c6.js.map → alignment-b1fc396e.js.map} +1 -1
- package/dist/esm/app-globals-049318f3.js +4 -0
- package/dist/esm/{app-globals-7519e708.js.map → app-globals-049318f3.js.map} +1 -1
- package/dist/esm/{aria-current-f3326e61.js → aria-current-de3f0ad3.js} +1 -1
- package/dist/esm/{aria-current-f3326e61.js.map → aria-current-de3f0ad3.js.map} +1 -1
- package/dist/esm/associated.controller-54459452.js +4 -0
- package/dist/esm/associated.controller-54459452.js.map +1 -0
- package/dist/esm/{color-d3534e8f.js → color-2b8dc09e.js} +1 -1
- package/dist/esm/{color-d3534e8f.js.map → color-2b8dc09e.js.map} +1 -1
- package/dist/esm/{controller-2ad6050d.js → controller-1a4ae847.js} +1 -1
- package/dist/esm/{controller-2ad6050d.js.map → controller-1a4ae847.js.map} +1 -1
- package/dist/esm/{controller-499f700d.js → controller-5a13b9c6.js} +1 -1
- package/dist/esm/{controller-499f700d.js.map → controller-5a13b9c6.js.map} +1 -1
- package/dist/esm/{controller-9a71a38b.js → controller-9b6b7e31.js} +1 -1
- package/dist/esm/controller-9b6b7e31.js.map +1 -0
- package/dist/esm/controller-afb334ed.js +4 -0
- package/dist/esm/controller-afb334ed.js.map +1 -0
- package/dist/esm/{controller-1e428fb8.js → controller-b90cfb96.js} +1 -1
- package/dist/esm/{controller-1e428fb8.js.map → controller-b90cfb96.js.map} +1 -1
- package/dist/esm/{controller-icon-d56caaee.js → controller-icon-bc9b326c.js} +1 -1
- package/dist/esm/{controller-icon-d56caaee.js.map → controller-icon-bc9b326c.js.map} +1 -1
- package/dist/esm/{custom-class-4ff3aabb.js → custom-class-fb7c6947.js} +1 -1
- package/dist/esm/{custom-class-4ff3aabb.js.map → custom-class-fb7c6947.js.map} +1 -1
- package/dist/esm/{dev.utils-c9e7cb5f.js → dev.utils-3d1ba6ea.js} +1 -1
- package/dist/esm/dev.utils-3d1ba6ea.js.map +1 -0
- package/dist/esm/{devtools-1f25d9bc.js → devtools-a5fabd63.js} +1 -1
- package/dist/esm/{devtools-1f25d9bc.js.map → devtools-a5fabd63.js.map} +1 -1
- package/dist/esm/form-field-msg-4920e946.js +4 -0
- package/dist/esm/form-field-msg-4920e946.js.map +1 -0
- package/dist/esm/{has-closer-f65d23a4.js → has-closer-ecd5110c.js} +1 -1
- package/dist/esm/{has-closer-f65d23a4.js.map → has-closer-ecd5110c.js.map} +1 -1
- package/dist/esm/{hide-label-1ba311ef.js → hide-label-4df0e368.js} +1 -1
- package/dist/esm/{hide-label-1ba311ef.js.map → hide-label-4df0e368.js.map} +1 -1
- package/dist/esm/{i18n-3c3ea069.js → i18n-3701fda5.js} +1 -1
- package/dist/esm/{i18n-3c3ea069.js.map → i18n-3701fda5.js.map} +1 -1
- package/dist/esm/{icons-40165657.js → icons-56f61dc0.js} +1 -1
- package/dist/esm/{icons-40165657.js.map → icons-56f61dc0.js.map} +1 -1
- package/dist/esm/{image-source-c4a24baa.js → image-source-6a9717f3.js} +1 -1
- package/dist/esm/{image-source-c4a24baa.js.map → image-source-6a9717f3.js.map} +1 -1
- package/dist/esm/index-cf7b0813.js +4 -0
- package/dist/esm/index-cf7b0813.js.map +1 -0
- package/dist/esm/index-cfc376ee.js +4 -0
- package/dist/esm/index-cfc376ee.js.map +1 -0
- package/dist/esm/index.js +1 -1
- package/dist/esm/kol-abbr.entry.js +1 -1
- package/dist/esm/kol-abbr.entry.js.map +1 -1
- package/dist/esm/kol-accordion.entry.js +1 -1
- package/dist/esm/kol-accordion.entry.js.map +1 -1
- package/dist/esm/kol-alert-wc_3.entry.js +1 -1
- package/dist/esm/kol-alert-wc_3.entry.js.map +1 -1
- package/dist/esm/kol-alert.entry.js +1 -1
- package/dist/esm/kol-alert.entry.js.map +1 -1
- package/dist/esm/kol-avatar-wc.entry.js +1 -1
- package/dist/esm/kol-avatar-wc.entry.js.map +1 -1
- package/dist/esm/kol-avatar.entry.js +1 -1
- package/dist/esm/kol-avatar.entry.js.map +1 -1
- package/dist/esm/kol-badge.entry.js +1 -1
- package/dist/esm/kol-badge.entry.js.map +1 -1
- package/dist/esm/kol-breadcrumb.entry.js +1 -1
- package/dist/esm/kol-breadcrumb.entry.js.map +1 -1
- package/dist/esm/kol-button-group-wc.entry.js +1 -1
- package/dist/esm/kol-button-group-wc.entry.js.map +1 -1
- package/dist/esm/kol-button-group.entry.js +1 -1
- package/dist/esm/kol-button-group.entry.js.map +1 -1
- package/dist/esm/kol-button-link-text-switch.entry.js +1 -1
- package/dist/esm/kol-button-link-text-switch.entry.js.map +1 -1
- package/dist/esm/kol-button-link.entry.js +1 -1
- package/dist/esm/kol-button-link.entry.js.map +1 -1
- package/dist/esm/kol-button.entry.js +1 -1
- package/dist/esm/kol-button.entry.js.map +1 -1
- package/dist/esm/kol-card.entry.js +1 -1
- package/dist/esm/kol-card.entry.js.map +1 -1
- package/dist/esm/kol-details.entry.js +1 -1
- package/dist/esm/kol-details.entry.js.map +1 -1
- package/dist/esm/kol-form.entry.js +1 -1
- package/dist/esm/kol-form.entry.js.map +1 -1
- package/dist/esm/kol-heading.entry.js +1 -1
- package/dist/esm/kol-heading.entry.js.map +1 -1
- package/dist/esm/kol-icon-font-awesome.entry.js +1 -1
- package/dist/esm/kol-icon-font-awesome.entry.js.map +1 -1
- package/dist/esm/kol-icon-icofont.entry.js +1 -1
- package/dist/esm/kol-icon-icofont.entry.js.map +1 -1
- package/dist/esm/kol-icon.entry.js +1 -1
- package/dist/esm/kol-icon.entry.js.map +1 -1
- package/dist/esm/kol-image.entry.js +1 -1
- package/dist/esm/kol-image.entry.js.map +1 -1
- package/dist/esm/kol-indented-text.entry.js +1 -1
- package/dist/esm/kol-indented-text.entry.js.map +1 -1
- package/dist/esm/kol-input-adapter-leanup.entry.js +1 -1
- package/dist/esm/kol-input-adapter-leanup.entry.js.map +1 -1
- package/dist/esm/kol-input-checkbox.entry.js +1 -1
- package/dist/esm/kol-input-checkbox.entry.js.map +1 -1
- package/dist/esm/kol-input-color.entry.js +1 -1
- package/dist/esm/kol-input-color.entry.js.map +1 -1
- package/dist/esm/kol-input-date.entry.js +1 -1
- package/dist/esm/kol-input-date.entry.js.map +1 -1
- package/dist/esm/kol-input-email.entry.js +1 -1
- package/dist/esm/kol-input-email.entry.js.map +1 -1
- package/dist/esm/kol-input-file.entry.js +1 -1
- package/dist/esm/kol-input-file.entry.js.map +1 -1
- package/dist/esm/kol-input-number.entry.js +1 -1
- package/dist/esm/kol-input-number.entry.js.map +1 -1
- package/dist/esm/kol-input-password.entry.js +1 -1
- package/dist/esm/kol-input-password.entry.js.map +1 -1
- package/dist/esm/kol-input-radio-group.entry.js +1 -1
- package/dist/esm/kol-input-radio-group.entry.js.map +1 -1
- package/dist/esm/kol-input-radio.entry.js +1 -1
- package/dist/esm/kol-input-radio.entry.js.map +1 -1
- package/dist/esm/kol-input-range.entry.js +1 -1
- package/dist/esm/kol-input-range.entry.js.map +1 -1
- package/dist/esm/kol-input-text.entry.js +1 -1
- package/dist/esm/kol-input-text.entry.js.map +1 -1
- package/dist/esm/kol-input.entry.js +1 -1
- package/dist/esm/kol-input.entry.js.map +1 -1
- package/dist/esm/kol-kolibri.entry.js +1 -1
- package/dist/esm/kol-kolibri.entry.js.map +1 -1
- package/dist/esm/kol-link-button.entry.js +1 -1
- package/dist/esm/kol-link-button.entry.js.map +1 -1
- package/dist/esm/kol-link-group.entry.js +1 -1
- package/dist/esm/kol-link-group.entry.js.map +1 -1
- package/dist/esm/kol-link-wc.entry.js +1 -1
- package/dist/esm/kol-link-wc.entry.js.map +1 -1
- package/dist/esm/kol-link.entry.js +1 -1
- package/dist/esm/kol-link.entry.js.map +1 -1
- package/dist/esm/kol-logo.entry.js +1 -1
- package/dist/esm/kol-logo.entry.js.map +1 -1
- package/dist/esm/kol-modal.entry.js +1 -1
- package/dist/esm/kol-modal.entry.js.map +1 -1
- package/dist/esm/kol-nav.entry.js +1 -1
- package/dist/esm/kol-nav.entry.js.map +1 -1
- package/dist/esm/kol-pagination.entry.js +1 -1
- package/dist/esm/kol-pagination.entry.js.map +1 -1
- package/dist/esm/kol-popover-wc.entry.js +1 -1
- package/dist/esm/kol-popover-wc.entry.js.map +1 -1
- package/dist/esm/kol-progress.entry.js +1 -1
- package/dist/esm/kol-progress.entry.js.map +1 -1
- package/dist/esm/kol-quote.entry.js +1 -1
- package/dist/esm/kol-quote.entry.js.map +1 -1
- package/dist/esm/kol-select.entry.js +1 -1
- package/dist/esm/kol-select.entry.js.map +1 -1
- package/dist/esm/kol-skip-nav.entry.js +1 -1
- package/dist/esm/kol-skip-nav.entry.js.map +1 -1
- package/dist/esm/kol-span-wc_2.entry.js +1 -1
- package/dist/esm/kol-span-wc_2.entry.js.map +1 -1
- package/dist/esm/kol-span.entry.js +1 -1
- package/dist/esm/kol-span.entry.js.map +1 -1
- package/dist/esm/kol-spin.entry.js +1 -1
- package/dist/esm/kol-spin.entry.js.map +1 -1
- package/dist/esm/kol-split-button.entry.js +1 -1
- package/dist/esm/kol-split-button.entry.js.map +1 -1
- package/dist/esm/kol-symbol.entry.js +1 -1
- package/dist/esm/kol-symbol.entry.js.map +1 -1
- package/dist/esm/kol-table.entry.js +1 -1
- package/dist/esm/kol-table.entry.js.map +1 -1
- package/dist/esm/kol-tabs.entry.js +1 -1
- package/dist/esm/kol-tabs.entry.js.map +1 -1
- package/dist/esm/kol-textarea.entry.js +1 -1
- package/dist/esm/kol-textarea.entry.js.map +1 -1
- package/dist/esm/kol-toast-container.entry.js +1 -1
- package/dist/esm/kol-toast-container.entry.js.map +1 -1
- package/dist/esm/kol-toast.entry.js +1 -1
- package/dist/esm/kol-toast.entry.js.map +1 -1
- package/dist/esm/kol-version.entry.js +1 -1
- package/dist/esm/kol-version.entry.js.map +1 -1
- package/dist/esm/kolibri.js +1 -1
- package/dist/esm/kolibri.js.map +1 -1
- package/dist/esm/{label-f44203be.js → label-efb10d30.js} +1 -1
- package/dist/esm/{label-f44203be.js.map → label-efb10d30.js.map} +1 -1
- package/dist/esm/loader.js +1 -1
- package/dist/esm/loader.js.map +1 -1
- package/dist/esm/{open-1698f8a8.js → open-efffe1d7.js} +1 -1
- package/dist/esm/{open-1698f8a8.js.map → open-efffe1d7.js.map} +1 -1
- package/dist/esm/{prop.validators-8b68b7ca.js → prop.validators-c2b3a276.js} +1 -1
- package/dist/esm/{prop.validators-8b68b7ca.js.map → prop.validators-c2b3a276.js.map} +1 -1
- package/dist/esm/{rows-02006071.js → rows-4a3d4e60.js} +1 -1
- package/dist/esm/{rows-02006071.js.map → rows-4a3d4e60.js.map} +1 -1
- package/dist/esm/{show-7433e50e.js → show-c018058d.js} +1 -1
- package/dist/esm/{show-7433e50e.js.map → show-c018058d.js.map} +1 -1
- package/dist/esm/{suggestions-4d994e8e.js → suggestions-9569bba8.js} +1 -1
- package/dist/esm/{suggestions-4d994e8e.js.map → suggestions-9569bba8.js.map} +1 -1
- package/dist/esm/{tab-index-468d318a.js → tab-index-a9976462.js} +1 -1
- package/dist/esm/{tab-index-468d318a.js.map → tab-index-a9976462.js.map} +1 -1
- package/dist/esm/{tooltip-align-8aa08dcc.js → tooltip-align-b692f99f.js} +1 -1
- package/dist/esm/{tooltip-align-8aa08dcc.js.map → tooltip-align-b692f99f.js.map} +1 -1
- package/dist/esm/{validation-ce725c92.js → validation-6b3fb356.js} +1 -1
- package/dist/esm/{validation-ce725c92.js.map → validation-6b3fb356.js.map} +1 -1
- package/dist/esm/validation-c2c4360a.js +4 -0
- package/dist/esm/{validation-3165bf25.js.map → validation-c2c4360a.js.map} +1 -1
- package/dist/kolibri/{a11y.tipps-f7f7cb4b.js → a11y.tipps-90beea3f.js} +1 -1
- package/dist/kolibri/align-6a271473.js +4 -0
- package/dist/kolibri/{alignment-e13116c6.js → alignment-b1fc396e.js} +1 -1
- package/dist/kolibri/app-globals-049318f3.js +4 -0
- package/dist/kolibri/{aria-current-f3326e61.js → aria-current-de3f0ad3.js} +1 -1
- package/dist/kolibri/associated.controller-54459452.js +4 -0
- package/dist/kolibri/associated.controller-54459452.js.map +1 -0
- package/dist/kolibri/{color-d3534e8f.js → color-2b8dc09e.js} +1 -1
- package/dist/kolibri/{controller-2ad6050d.js → controller-1a4ae847.js} +1 -1
- package/dist/kolibri/{controller-499f700d.js → controller-5a13b9c6.js} +1 -1
- package/dist/kolibri/{controller-9a71a38b.js → controller-9b6b7e31.js} +1 -1
- package/dist/kolibri/controller-9b6b7e31.js.map +1 -0
- package/dist/kolibri/controller-afb334ed.js +4 -0
- package/dist/kolibri/controller-afb334ed.js.map +1 -0
- package/dist/kolibri/{controller-1e428fb8.js → controller-b90cfb96.js} +1 -1
- package/dist/kolibri/controller-icon-bc9b326c.js +4 -0
- package/dist/kolibri/{custom-class-4ff3aabb.js → custom-class-fb7c6947.js} +1 -1
- package/dist/kolibri/{dev.utils-c9e7cb5f.js → dev.utils-3d1ba6ea.js} +1 -1
- package/dist/kolibri/{dev.utils-c9e7cb5f.js.map → dev.utils-3d1ba6ea.js.map} +1 -1
- package/dist/kolibri/{devtools-1f25d9bc.js → devtools-a5fabd63.js} +1 -1
- package/dist/kolibri/form-field-msg-4920e946.js +4 -0
- package/dist/kolibri/form-field-msg-4920e946.js.map +1 -0
- package/dist/kolibri/has-closer-ecd5110c.js +4 -0
- package/dist/kolibri/hide-label-4df0e368.js +4 -0
- package/dist/kolibri/{i18n-3c3ea069.js → i18n-3701fda5.js} +1 -1
- package/dist/kolibri/{icons-40165657.js → icons-56f61dc0.js} +1 -1
- package/dist/kolibri/image-source-6a9717f3.js +4 -0
- package/dist/kolibri/index-cf7b0813.js +5 -0
- package/dist/kolibri/index-cf7b0813.js.map +1 -0
- package/dist/kolibri/index-cfc376ee.js +4 -0
- package/dist/kolibri/index-cfc376ee.js.map +1 -0
- package/dist/kolibri/index.esm.js +1 -1
- package/dist/kolibri/kol-abbr.entry.js +1 -1
- package/dist/kolibri/kol-abbr.entry.js.map +1 -1
- package/dist/kolibri/kol-accordion.entry.js +1 -1
- package/dist/kolibri/kol-accordion.entry.js.map +1 -1
- package/dist/kolibri/kol-alert-wc_3.entry.js +1 -1
- package/dist/kolibri/kol-alert-wc_3.entry.js.map +1 -1
- package/dist/kolibri/kol-alert.entry.js +1 -1
- package/dist/kolibri/kol-alert.entry.js.map +1 -1
- package/dist/kolibri/kol-avatar-wc.entry.js +1 -1
- package/dist/kolibri/kol-avatar-wc.entry.js.map +1 -1
- package/dist/kolibri/kol-avatar.entry.js +1 -1
- package/dist/kolibri/kol-avatar.entry.js.map +1 -1
- package/dist/kolibri/kol-badge.entry.js +1 -1
- package/dist/kolibri/kol-badge.entry.js.map +1 -1
- package/dist/kolibri/kol-breadcrumb.entry.js +1 -1
- package/dist/kolibri/kol-breadcrumb.entry.js.map +1 -1
- package/dist/kolibri/kol-button-group-wc.entry.js +1 -1
- package/dist/kolibri/kol-button-group-wc.entry.js.map +1 -1
- package/dist/kolibri/kol-button-group.entry.js +1 -1
- package/dist/kolibri/kol-button-group.entry.js.map +1 -1
- package/dist/kolibri/kol-button-link-text-switch.entry.js +1 -1
- package/dist/kolibri/kol-button-link-text-switch.entry.js.map +1 -1
- package/dist/kolibri/kol-button-link.entry.js +1 -1
- package/dist/kolibri/kol-button-link.entry.js.map +1 -1
- package/dist/kolibri/kol-button.entry.js +1 -1
- package/dist/kolibri/kol-button.entry.js.map +1 -1
- package/dist/kolibri/kol-card.entry.js +1 -1
- package/dist/kolibri/kol-card.entry.js.map +1 -1
- package/dist/kolibri/kol-details.entry.js +1 -1
- package/dist/kolibri/kol-details.entry.js.map +1 -1
- package/dist/kolibri/kol-form.entry.js +1 -1
- package/dist/kolibri/kol-form.entry.js.map +1 -1
- package/dist/kolibri/kol-heading.entry.js +1 -1
- package/dist/kolibri/kol-heading.entry.js.map +1 -1
- package/dist/kolibri/kol-icon-font-awesome.entry.js +1 -1
- package/dist/kolibri/kol-icon-font-awesome.entry.js.map +1 -1
- package/dist/kolibri/kol-icon-icofont.entry.js +1 -1
- package/dist/kolibri/kol-icon-icofont.entry.js.map +1 -1
- package/dist/kolibri/kol-icon.entry.js +1 -1
- package/dist/kolibri/kol-icon.entry.js.map +1 -1
- package/dist/kolibri/kol-image.entry.js +1 -1
- package/dist/kolibri/kol-image.entry.js.map +1 -1
- package/dist/kolibri/kol-indented-text.entry.js +1 -1
- package/dist/kolibri/kol-indented-text.entry.js.map +1 -1
- package/dist/kolibri/kol-input-adapter-leanup.entry.js +1 -1
- package/dist/kolibri/kol-input-adapter-leanup.entry.js.map +1 -1
- package/dist/kolibri/kol-input-checkbox.entry.js +1 -1
- package/dist/kolibri/kol-input-checkbox.entry.js.map +1 -1
- package/dist/kolibri/kol-input-color.entry.js +1 -1
- package/dist/kolibri/kol-input-color.entry.js.map +1 -1
- package/dist/kolibri/kol-input-date.entry.js +1 -1
- package/dist/kolibri/kol-input-date.entry.js.map +1 -1
- package/dist/kolibri/kol-input-email.entry.js +1 -1
- package/dist/kolibri/kol-input-email.entry.js.map +1 -1
- package/dist/kolibri/kol-input-file.entry.js +1 -1
- package/dist/kolibri/kol-input-file.entry.js.map +1 -1
- package/dist/kolibri/kol-input-number.entry.js +1 -1
- package/dist/kolibri/kol-input-number.entry.js.map +1 -1
- package/dist/kolibri/kol-input-password.entry.js +1 -1
- package/dist/kolibri/kol-input-password.entry.js.map +1 -1
- package/dist/kolibri/kol-input-radio-group.entry.js +1 -1
- package/dist/kolibri/kol-input-radio-group.entry.js.map +1 -1
- package/dist/kolibri/kol-input-radio.entry.js +1 -1
- package/dist/kolibri/kol-input-radio.entry.js.map +1 -1
- package/dist/kolibri/kol-input-range.entry.js +1 -1
- package/dist/kolibri/kol-input-range.entry.js.map +1 -1
- package/dist/kolibri/kol-input-text.entry.js +1 -1
- package/dist/kolibri/kol-input-text.entry.js.map +1 -1
- package/dist/kolibri/kol-input.entry.js +1 -1
- package/dist/kolibri/kol-input.entry.js.map +1 -1
- package/dist/kolibri/kol-kolibri.entry.js +1 -1
- package/dist/kolibri/kol-kolibri.entry.js.map +1 -1
- package/dist/kolibri/kol-link-button.entry.js +1 -1
- package/dist/kolibri/kol-link-button.entry.js.map +1 -1
- package/dist/kolibri/kol-link-group.entry.js +1 -1
- package/dist/kolibri/kol-link-group.entry.js.map +1 -1
- package/dist/kolibri/kol-link-wc.entry.js +1 -1
- package/dist/kolibri/kol-link-wc.entry.js.map +1 -1
- package/dist/kolibri/kol-link.entry.js +1 -1
- package/dist/kolibri/kol-link.entry.js.map +1 -1
- package/dist/kolibri/kol-logo.entry.js +1 -1
- package/dist/kolibri/kol-logo.entry.js.map +1 -1
- package/dist/kolibri/kol-modal.entry.js +1 -1
- package/dist/kolibri/kol-modal.entry.js.map +1 -1
- package/dist/kolibri/kol-nav.entry.js +1 -1
- package/dist/kolibri/kol-nav.entry.js.map +1 -1
- package/dist/kolibri/kol-pagination.entry.js +1 -1
- package/dist/kolibri/kol-pagination.entry.js.map +1 -1
- package/dist/kolibri/kol-popover-wc.entry.js +1 -1
- package/dist/kolibri/kol-popover-wc.entry.js.map +1 -1
- package/dist/kolibri/kol-progress.entry.js +1 -1
- package/dist/kolibri/kol-progress.entry.js.map +1 -1
- package/dist/kolibri/kol-quote.entry.js +1 -1
- package/dist/kolibri/kol-quote.entry.js.map +1 -1
- package/dist/kolibri/kol-select.entry.js +1 -1
- package/dist/kolibri/kol-select.entry.js.map +1 -1
- package/dist/kolibri/kol-skip-nav.entry.js +1 -1
- package/dist/kolibri/kol-skip-nav.entry.js.map +1 -1
- package/dist/kolibri/kol-span-wc_2.entry.js +1 -1
- package/dist/kolibri/kol-span-wc_2.entry.js.map +1 -1
- package/dist/kolibri/kol-span.entry.js +1 -1
- package/dist/kolibri/kol-span.entry.js.map +1 -1
- package/dist/kolibri/kol-spin.entry.js +1 -1
- package/dist/kolibri/kol-spin.entry.js.map +1 -1
- package/dist/kolibri/kol-split-button.entry.js +1 -1
- package/dist/kolibri/kol-split-button.entry.js.map +1 -1
- package/dist/kolibri/kol-symbol.entry.js +1 -1
- package/dist/kolibri/kol-symbol.entry.js.map +1 -1
- package/dist/kolibri/kol-table.entry.js +1 -1
- package/dist/kolibri/kol-table.entry.js.map +1 -1
- package/dist/kolibri/kol-tabs.entry.js +1 -1
- package/dist/kolibri/kol-tabs.entry.js.map +1 -1
- package/dist/kolibri/kol-textarea.entry.js +1 -1
- package/dist/kolibri/kol-textarea.entry.js.map +1 -1
- package/dist/kolibri/kol-toast-container.entry.js +1 -1
- package/dist/kolibri/kol-toast-container.entry.js.map +1 -1
- package/dist/kolibri/kol-toast.entry.js +1 -1
- package/dist/kolibri/kol-toast.entry.js.map +1 -1
- package/dist/kolibri/kol-version.entry.js +1 -1
- package/dist/kolibri/kol-version.entry.js.map +1 -1
- package/dist/kolibri/kolibri.esm.js +1 -1
- package/dist/kolibri/kolibri.esm.js.map +1 -1
- package/dist/kolibri/label-efb10d30.js +4 -0
- package/dist/kolibri/open-efffe1d7.js +4 -0
- package/dist/kolibri/{prop.validators-8b68b7ca.js → prop.validators-c2b3a276.js} +1 -1
- package/dist/kolibri/rows-4a3d4e60.js +4 -0
- package/dist/kolibri/show-c018058d.js +4 -0
- package/dist/kolibri/suggestions-9569bba8.js +4 -0
- package/dist/kolibri/tab-index-a9976462.js +4 -0
- package/dist/kolibri/{tab-index-468d318a.js.map → tab-index-a9976462.js.map} +1 -1
- package/dist/kolibri/tooltip-align-b692f99f.js +4 -0
- package/dist/kolibri/{validation-ce725c92.js → validation-6b3fb356.js} +1 -1
- package/dist/kolibri/validation-c2c4360a.js +4 -0
- package/dist/types/components/@shared/form-field-msg.d.ts +12 -0
- package/dist/types/components/form/component.d.ts +2 -0
- package/dist/types/components/input-adapter-leanup/associated.controller.d.ts +2 -2
- package/dist/types/components/input-radio/controller.d.ts +1 -0
- package/dist/types/components/select/controller.d.ts +1 -0
- package/package.json +1 -1
- package/dist/cjs/associated.controller-db818ffb.js +0 -4
- package/dist/cjs/associated.controller-db818ffb.js.map +0 -1
- package/dist/cjs/controller-8524aad3.js +0 -4
- package/dist/cjs/controller-8524aad3.js.map +0 -1
- package/dist/cjs/controller-a4327ecf.js.map +0 -1
- package/dist/cjs/dev.utils-44125020.js.map +0 -1
- package/dist/cjs/has-closer-4075bcde.js +0 -4
- package/dist/cjs/hide-label-92395355.js +0 -4
- package/dist/cjs/image-source-f555dbf3.js +0 -4
- package/dist/cjs/index-26a16cf8.js +0 -5
- package/dist/cjs/index-26a16cf8.js.map +0 -1
- package/dist/cjs/index-b51836ab.js +0 -4
- package/dist/cjs/index-b51836ab.js.map +0 -1
- package/dist/cjs/open-d3d157ce.js +0 -4
- package/dist/cjs/rows-852b9174.js +0 -4
- package/dist/cjs/show-5c75df45.js +0 -4
- package/dist/esm/app-globals-7519e708.js +0 -4
- package/dist/esm/associated.controller-c7add452.js +0 -4
- package/dist/esm/associated.controller-c7add452.js.map +0 -1
- package/dist/esm/controller-4cb839cd.js +0 -4
- package/dist/esm/controller-4cb839cd.js.map +0 -1
- package/dist/esm/controller-9a71a38b.js.map +0 -1
- package/dist/esm/dev.utils-c9e7cb5f.js.map +0 -1
- package/dist/esm/index-0b7aa54b.js +0 -5
- package/dist/esm/index-0b7aa54b.js.map +0 -1
- package/dist/esm/index-d354dce9.js +0 -4
- package/dist/esm/index-d354dce9.js.map +0 -1
- package/dist/esm/validation-3165bf25.js +0 -4
- package/dist/kolibri/align-e436d1e2.js +0 -4
- package/dist/kolibri/app-globals-7519e708.js +0 -4
- package/dist/kolibri/associated.controller-c7add452.js +0 -4
- package/dist/kolibri/associated.controller-c7add452.js.map +0 -1
- package/dist/kolibri/controller-4cb839cd.js +0 -4
- package/dist/kolibri/controller-4cb839cd.js.map +0 -1
- package/dist/kolibri/controller-9a71a38b.js.map +0 -1
- package/dist/kolibri/controller-icon-d56caaee.js +0 -4
- package/dist/kolibri/has-closer-f65d23a4.js +0 -4
- package/dist/kolibri/hide-label-1ba311ef.js +0 -4
- package/dist/kolibri/image-source-c4a24baa.js +0 -4
- package/dist/kolibri/index-0b7aa54b.js +0 -5
- package/dist/kolibri/index-0b7aa54b.js.map +0 -1
- package/dist/kolibri/index-d354dce9.js +0 -4
- package/dist/kolibri/index-d354dce9.js.map +0 -1
- package/dist/kolibri/label-f44203be.js +0 -4
- package/dist/kolibri/open-1698f8a8.js +0 -4
- package/dist/kolibri/rows-02006071.js +0 -4
- package/dist/kolibri/show-7433e50e.js +0 -4
- package/dist/kolibri/suggestions-4d994e8e.js +0 -4
- package/dist/kolibri/tab-index-468d318a.js +0 -4
- package/dist/kolibri/tooltip-align-8aa08dcc.js +0 -4
- package/dist/kolibri/validation-3165bf25.js +0 -4
- /package/dist/kolibri/{a11y.tipps-f7f7cb4b.js.map → a11y.tipps-90beea3f.js.map} +0 -0
- /package/dist/kolibri/{align-e436d1e2.js.map → align-6a271473.js.map} +0 -0
- /package/dist/kolibri/{alignment-e13116c6.js.map → alignment-b1fc396e.js.map} +0 -0
- /package/dist/kolibri/{app-globals-7519e708.js.map → app-globals-049318f3.js.map} +0 -0
- /package/dist/kolibri/{aria-current-f3326e61.js.map → aria-current-de3f0ad3.js.map} +0 -0
- /package/dist/kolibri/{color-d3534e8f.js.map → color-2b8dc09e.js.map} +0 -0
- /package/dist/kolibri/{controller-2ad6050d.js.map → controller-1a4ae847.js.map} +0 -0
- /package/dist/kolibri/{controller-499f700d.js.map → controller-5a13b9c6.js.map} +0 -0
- /package/dist/kolibri/{controller-1e428fb8.js.map → controller-b90cfb96.js.map} +0 -0
- /package/dist/kolibri/{controller-icon-d56caaee.js.map → controller-icon-bc9b326c.js.map} +0 -0
- /package/dist/kolibri/{custom-class-4ff3aabb.js.map → custom-class-fb7c6947.js.map} +0 -0
- /package/dist/kolibri/{devtools-1f25d9bc.js.map → devtools-a5fabd63.js.map} +0 -0
- /package/dist/kolibri/{has-closer-f65d23a4.js.map → has-closer-ecd5110c.js.map} +0 -0
- /package/dist/kolibri/{hide-label-1ba311ef.js.map → hide-label-4df0e368.js.map} +0 -0
- /package/dist/kolibri/{i18n-3c3ea069.js.map → i18n-3701fda5.js.map} +0 -0
- /package/dist/kolibri/{icons-40165657.js.map → icons-56f61dc0.js.map} +0 -0
- /package/dist/kolibri/{image-source-c4a24baa.js.map → image-source-6a9717f3.js.map} +0 -0
- /package/dist/kolibri/{label-f44203be.js.map → label-efb10d30.js.map} +0 -0
- /package/dist/kolibri/{open-1698f8a8.js.map → open-efffe1d7.js.map} +0 -0
- /package/dist/kolibri/{prop.validators-8b68b7ca.js.map → prop.validators-c2b3a276.js.map} +0 -0
- /package/dist/kolibri/{rows-02006071.js.map → rows-4a3d4e60.js.map} +0 -0
- /package/dist/kolibri/{show-7433e50e.js.map → show-c018058d.js.map} +0 -0
- /package/dist/kolibri/{suggestions-4d994e8e.js.map → suggestions-9569bba8.js.map} +0 -0
- /package/dist/kolibri/{tooltip-align-8aa08dcc.js.map → tooltip-align-b692f99f.js.map} +0 -0
- /package/dist/kolibri/{validation-ce725c92.js.map → validation-6b3fb356.js.map} +0 -0
- /package/dist/kolibri/{validation-3165bf25.js.map → validation-c2c4360a.js.map} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"file":"validation-
|
|
1
|
+
{"file":"validation-6b3fb356.js","mappings":";;;;;MAIa,iBAAiB,GAAG,CAAC,SAAoC,EAAE,KAAc;IACrF,cAAc,CACb,SAAS,EACT,QAAQ,EACR,CAAC,KAAK;QACL,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,IAAI,KAAK,IAAI,KAAK,IAAI,CAAC,CAAC;KAC7D,EACD,IAAI,GAAG,CAAC,CAAC,8BAA8B,CAAC,CAAC,EACzC,KAAK,EACL;QAEC,YAAY,EAAE,CAAC;QACf,QAAQ,EAAE,IAAI;KACd,CACD,CAAC;AACH;;;;","names":[],"sources":["src/components/heading/validation.ts"],"sourcesContent":["import type { Generic } from 'adopted-style-sheets';\n\nimport { watchValidator } from '../../utils/prop.validators';\n\nexport const watchHeadingLevel = (component: Generic.Element.Component, value?: number): void => {\n\twatchValidator(\n\t\tcomponent,\n\t\t'_level',\n\t\t(value): boolean => {\n\t\t\treturn typeof value === 'number' && 0 <= value && value <= 6;\n\t\t},\n\t\tnew Set(['Number {0, 1, 2, 3, 4, 5, 6}']),\n\t\tvalue,\n\t\t{\n\t\t\t// TODO: options not in the validator\n\t\t\tdefaultValue: 1,\n\t\t\trequired: true,\n\t\t}\n\t);\n};\n"],"version":3}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
/*!
|
|
2
|
+
* KoliBri - The accessible HTML-Standard
|
|
3
|
+
*/
|
|
4
|
+
import{c as uiUxHintMillerscheZahl}from"./a11y.tipps-90beea3f.js";import{c as watchJsonArrayString}from"./prop.validators-c2b3a276.js";const watchNavLinks=(t,a,s)=>{watchJsonArrayString(a,"_links",(t=>"object"==typeof t&&("string"==typeof t._href||"string"==typeof t._label)),s),uiUxHintMillerscheZahl(t,a.state._links.length)};export{watchNavLinks as w};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"file":"validation-
|
|
1
|
+
{"file":"validation-c2c4360a.js","mappings":";;;;;;MAUa,aAAa,GAAG,CAC5B,SAAiB,EACjB,SAIC,EACD,KAAsC;IAEtC,oBAAoB,CACnB,SAAS,EACT,QAAQ,EACR,CAAC,IAAI,KAAK,OAAO,IAAI,KAAK,QAAQ,KAAK,OAAQ,IAAiB,CAAC,KAAK,KAAK,QAAQ,IAAI,OAAQ,IAAkB,CAAC,MAAM,KAAK,QAAQ,CAAC,EACtI,KAAK,CACL,CAAC;IACF,sBAAsB,CAAC,SAAS,EAAE,SAAS,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;AAClE;;;;","names":[],"sources":["src/components/nav/validation.ts"],"sourcesContent":["import type { Generic } from 'adopted-style-sheets';\n\nimport { Stringified } from '../../types/common';\nimport { HrefProp } from '../../types/props/href';\nimport { LabelProp } from '../../types/props/label';\nimport { uiUxHintMillerscheZahl } from '../../utils/a11y.tipps';\nimport { watchJsonArrayString } from '../../utils/prop.validators';\n\ntype HrefOrLabelProp = HrefProp | LabelProp;\n\nexport const watchNavLinks = (\n\tclassName: string,\n\tcomponent: Generic.Element.Component & {\n\t\tstate: {\n\t\t\t_links: HrefOrLabelProp[];\n\t\t};\n\t},\n\tvalue?: Stringified<HrefOrLabelProp[]>\n): void => {\n\twatchJsonArrayString(\n\t\tcomponent,\n\t\t'_links',\n\t\t(link) => typeof link === 'object' && (typeof (link as HrefProp)._href === 'string' || typeof (link as LabelProp)._label === 'string'),\n\t\tvalue\n\t);\n\tuiUxHintMillerscheZahl(className, component.state._links.length);\n};\n"],"version":3}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* KoliBri - The accessible HTML-Standard
|
|
3
3
|
*/
|
|
4
|
-
import{L as e}from"./dev.utils-
|
|
4
|
+
import{L as e}from"./dev.utils-3d1ba6ea.js";const i=new Set,n=(n,r)=>{(!1===i.has(n)||(null==r?void 0:r.force))&&(i.add(n),e.debug([n].concat((null==r?void 0:r.details)||[]),{classifier:"✋ a11y",overwriteStyle:"; background-color: #09f"}))},o=new Set,r=(n,i)=>{(!1===o.has(n)||(null==i?void 0:i.force))&&(o.add(n),e.warn([n].concat((null==i?void 0:i.details)||[]),{classifier:"🔥 deprecated",overwriteStyle:"; background-color: #f00"}))},t=new Set,s=(n,i)=>{(!1===t.has(n)||(null==i?void 0:i.force))&&(t.add(n),e.debug([n].concat((null==i?void 0:i.details)||[]),{classifier:"💻 dev",overwriteStyle:"; background-color: #f09"}))},l=(n,i)=>{(!1===t.has(n)||(null==i?void 0:i.force))&&(t.add(n),e.warn([n].concat((null==i?void 0:i.details)||[]),{classifier:"💻 dev",overwriteStyle:"; background-color: #f09"}))},a=new Set,d=(n,i=!1,r)=>{(!1===a.has(n)||(null==r?void 0:r.force))&&(a.add(n),n+=!0===i?" ✅":"",e.debug([n].concat((null==r?void 0:r.details)||[]),{classifier:"🌟 feature",overwriteStyle:"; background-color: #309"}))};s("Wir freuen uns über jedes Feedback, Kommentare, Screenshots oder Demo-Links von einer auf KoliBri-basierenden Anwendung (kolibri@itzbund.de). Vielen Dank!");const c=new Set,u=(n,i)=>{(!1===c.has(n)||(null==i?void 0:i.force))&&(c.add(n),e.debug([n].concat((null==i?void 0:i.details)||[]),{classifier:"📑 ui/ux",overwriteStyle:"; background-color: #060;"}))},v=()=>{n('"Disabled" schränkt die Zugänglichkeit und Sichtbarkeit ein. Wir empfehlen aus Sicht der Barrierefreiheit readonly- statt disabled-Attribut zu verwenden.\n- https://uxdesign.cc/is-it-ok-to-grey-out-disabled-buttons-8afa74a0fae')},f=e=>{"string"==typeof e&&""!==e||n("Manche Strukturelemente, wie bspw. der nav-Tag, können mehrfach in einer Webseite verwendet werden. Damit die gleichnamigen Strukturelemente voneinander unterschieden werden können, ist es erforderlich ein Aria-Label zu setzen.\n- https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Roles/Navigation_Role#accessibility_concerns")},b=(e,n=8)=>{n>7&&u(`[${e}] Innerhalb von Navigationsstrukturen wird empfohlen nicht mehr als 7 Menüpunkte zu verwenden.\n\nLinks:\n- https://de.ryte.com/wiki/Millersche_Zahl\n- https://de.wikipedia.org/wiki/Millersche_Zahl`)};export{n as a,f as b,b as c,s as d,r as e,d as f,v as g,l as h,u};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* KoliBri - The accessible HTML-Standard
|
|
3
3
|
*/
|
|
4
|
-
import{w as t}from"./prop.validators-
|
|
4
|
+
import{w as t}from"./prop.validators-c2b3a276.js";const o=new Set(['"left", "right"']),e=new Set(['"bottom", "top"']),s=new Set([...o,...e]),a=(o,e,a)=>{t(o,e,(t=>"bottom"===t||"left"===t||"right"===t||"top"===t),s,a,{defaultValue:"top"})};export{a as v};
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
/*!
|
|
2
|
+
* KoliBri - The accessible HTML-Standard
|
|
3
|
+
*/
|
|
4
|
+
import{e as o,S as e}from"./index-c88c7ecf.js";import{a as t}from"./index-cf7b0813.js";import{r as s}from"./index-cfc376ee.js";import{L as a}from"./dev.utils-3d1ba6ea.js";import{p as i}from"./reuse-d79ab469.js";const f=async()=>{t((t=>(t.shadowRoot instanceof ShadowRoot&&o(t,e(t)),"default"))),await s([],[]),import("./devtools-a5fabd63.js").then((o=>{"object"==typeof o&&null!==o&&"function"==typeof o.initialize&&o.initialize()})).catch((o=>{a.error(o)})),i&&import("./index-0e51998c.js")},r=f;export{r as g};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* KoliBri - The accessible HTML-Standard
|
|
3
3
|
*/
|
|
4
|
-
import{d as a,w as t}from"./prop.validators-
|
|
4
|
+
import{d as a,w as t}from"./prop.validators-c2b3a276.js";const o=(t,e)=>{a(t,"_role",e)},s=(t,e)=>{a(t,"_ariaControls",e)},e=(a,e,o)=>{t(a,e,(a=>"date"===a||"location"===a||"page"===a||"step"===a||"time"===a||!0===a||!1===a),new Set(["String {data, location, page, step, time}","boolean"]),o)},r=(a,t)=>{e(a,"_ariaCurrent",t)},n=(a,t)=>{e(a,"_listenAriaCurrent",t)};export{r as a,n as b,o as c,s as v};
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
/*!
|
|
2
|
+
* KoliBri - The accessible HTML-Standard
|
|
3
|
+
*/
|
|
4
|
+
import{d as t}from"./prop.validators-c2b3a276.js";import{d as e,h as i}from"./a11y.tipps-90beea3f.js";import{d as s}from"./dev.utils-3d1ba6ea.js";const a=(e,s,i)=>{t(e,"_name",s,i)},o=t=>"KOL-BUTTON"===t||"KOL-INPUT"===t||"KOL-SELECT"===t||"KOL-TEXTAREA"===t;class n{constructor(t,i,a){var r,n,l;if(this.setFormAssociatedValue=t=>{var s;const i=null===(s=this.formAssociated)||void 0===s?void 0:s.getAttribute("name");null!==i&&""!==i||e(` The form field (${this.type}) must have a name attribute to be form-associated. Please define the _name attribute.`);const o=this.tryToStringifyValue(t);this.syncValue(t,o,this.formAssociated),this.syncValue(t,o,this.syncToOwnInput)},this.component=t,this.host=this.findHostWithShadowRoot(a),this.type=i,s()&&o(null===(r=this.host)||void 0===r?void 0:r.tagName)){switch(null===(n=this.host)||void 0===n||n.querySelectorAll("input,select,textarea").forEach((t=>{var e;null===(e=this.host)||void 0===e||e.removeChild(t)})),this.type){case"button":case"checkbox":case"color":case"date":case"email":case"file":case"number":case"password":case"radio":case"range":case"text":this.formAssociated=document.createElement("input"),this.formAssociated.setAttribute("type",this.type);break;case"select":this.formAssociated=document.createElement("select"),this.formAssociated.setAttribute("multiple","");break;case"textarea":this.formAssociated=document.createElement("textarea");break;default:this.formAssociated=document.createElement("input"),this.formAssociated.setAttribute("type","hidden")}this.formAssociated.setAttribute("aria-hidden","true"),this.formAssociated.setAttribute("data-form-associated",""),this.formAssociated.setAttribute("hidden",""),null===(l=this.host)||void 0===l||l.appendChild(this.formAssociated)}}findHostWithShadowRoot(t){for(;null===(null==t?void 0:t.shadowRoot)&&t!==document.body;)(t=null==t?void 0:t.parentNode).host&&(t=t.host);return t}setAttribute(t,e,i){if(s())try{if("boolean"!=typeof(i="object"==typeof i&&null!==i?JSON.stringify(i):i)&&"number"!=typeof i&&"string"!=typeof i)throw new Error("Invalid value type: "+typeof i);null==e||e.setAttribute(t,`${i}`)}catch(i){null==e||e.removeAttribute(t)}}tryToStringifyValue(t){try{return"object"==typeof t&&null!==t?JSON.stringify(t).toString():null==t?null:t.toString()}catch(t){return i(`The form field raw value is not able to stringify! ${t}`),""}}syncValue(t,e,s){if(s)if("select"===this.type)s.querySelectorAll("option").forEach((t=>{s.removeChild(t)})),Array.isArray(t)&&t.forEach((t=>{const e=this.tryToStringifyValue(t);if("string"==typeof e){const t=document.createElement("option");t.setAttribute("value",e),t.setAttribute("selected",""),s.appendChild(t)}}));else"string"==typeof e?(s.setAttribute("value",e),s.value=e):(s.removeAttribute("value"),s.value="")}validateName(t){a(this.component,t,{hooks:{afterPatch:()=>{this.setAttribute("name",this.formAssociated,this.component.state._name)}}}),void 0===t&&e("Ein Name am Eingabefeldern oder Schalter ist nicht zwingend erforderlich, kann aber für die Autocomplete-Funktion und für das statische Versenden des Eingabefeldes relevant sein.")}validateSyncValueBySelector(t){if(s()&&"string"==typeof t){const e=document.querySelector(t);e&&(this.syncToOwnInput=e)}}componentWillLoad(){this.validateName(this.component._name),this.validateSyncValueBySelector(this.component._syncValueBySelector)}}export{n as A};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["validateName","component","value","options","watchString","isAssociatedTagName","name","AssociatedInputController","constructor","type","host","this","setFormAssociatedValue","rawValue","_a","formAssociated","getAttribute","devHint","strValue","tryToStringifyValue","syncValue","syncToOwnInput","findHostWithShadowRoot","getExperimentalMode","tagName","_b","querySelectorAll","forEach","el","removeChild","document","createElement","setAttribute","_c","appendChild","shadowRoot","body","parentNode","qualifiedName","element","JSON","stringify","Error","e","removeAttribute","toString","undefined","devWarning","associatedElement","Array","isArray","rawValueItem","strValueItem","option","hooks","afterPatch","state","_name","validateSyncValueBySelector","input","querySelector","componentWillLoad","_syncValueBySelector"],"sources":["src/types/props/name.ts","src/components/input-adapter-leanup/associated.controller.ts"],"sourcesContent":["import type { Generic } from 'adopted-style-sheets';\n\nimport { watchString, WatchStringOptions } from '../../utils/prop.validators';\n\n/* types */\nexport type NamePropType = string;\n\n/**\n * Defines the technical name of an input field.\n */\nexport type PropName = {\n\tname: NamePropType;\n};\n\n/* validator */\nexport const validateName = (component: Generic.Element.Component, value?: NamePropType, options?: WatchStringOptions): void => {\n\twatchString(component, '_name', value, options);\n};\n","import type { Generic } from 'adopted-style-sheets';\n\nimport { NamePropType, validateName } from '../../types/props/name';\nimport { PropSyncValueBySelector, SyncValueBySelectorPropType } from '../../types/props/sync-value-by-selector';\nimport { StencilUnknown } from '../../types/unknown';\nimport { devHint, devWarning } from '../../utils/a11y.tipps';\nimport { getExperimentalMode } from '../../utils/dev.utils';\n\ntype RequiredProps = NonNullable<unknown>;\ntype OptionalProps = {\n\tname: string;\n} & PropSyncValueBySelector;\ntype Props = Generic.Element.Members<RequiredProps, OptionalProps>;\ntype Watches = Generic.Element.Watchers<RequiredProps, OptionalProps>;\n\nconst isAssociatedTagName = (name?: string): boolean => name === 'KOL-BUTTON' || name === 'KOL-INPUT' || name === 'KOL-SELECT' || name === 'KOL-TEXTAREA';\n\nexport class AssociatedInputController implements Watches {\n\tprotected readonly component: Generic.Element.Component & Props;\n\tprotected readonly type: string;\n\tprotected readonly host?: HTMLElement;\n\n\tpublic readonly formAssociated?: HTMLButtonElement | HTMLInputElement | HTMLSelectElement | HTMLTextAreaElement;\n\tpublic syncToOwnInput?: HTMLButtonElement | HTMLInputElement | HTMLSelectElement | HTMLTextAreaElement;\n\n\tpublic constructor(component: Generic.Element.Component & Props, type: string, host?: HTMLElement) {\n\t\tthis.component = component;\n\t\tthis.host = this.findHostWithShadowRoot(host);\n\t\tthis.type = type;\n\n\t\tif (getExperimentalMode() && isAssociatedTagName(this.host?.tagName)) {\n\t\t\tthis.host?.querySelectorAll('input,select,textarea').forEach((el) => {\n\t\t\t\tthis.host?.removeChild(el);\n\t\t\t});\n\t\t\tswitch (this.type) {\n\t\t\t\tcase 'button':\n\t\t\t\tcase 'checkbox':\n\t\t\t\tcase 'color':\n\t\t\t\tcase 'date':\n\t\t\t\tcase 'email':\n\t\t\t\tcase 'file':\n\t\t\t\tcase 'number':\n\t\t\t\tcase 'password':\n\t\t\t\tcase 'radio':\n\t\t\t\tcase 'range':\n\t\t\t\tcase 'text':\n\t\t\t\t\tthis.formAssociated = document.createElement('input');\n\t\t\t\t\tthis.formAssociated.setAttribute('type', this.type);\n\t\t\t\t\tbreak;\n\t\t\t\tcase 'select':\n\t\t\t\t\tthis.formAssociated = document.createElement('select');\n\t\t\t\t\tthis.formAssociated.setAttribute('multiple', '');\n\t\t\t\t\tbreak;\n\t\t\t\tcase 'textarea':\n\t\t\t\t\tthis.formAssociated = document.createElement('textarea');\n\t\t\t\t\tbreak;\n\t\t\t\tdefault:\n\t\t\t\t\tthis.formAssociated = document.createElement('input');\n\t\t\t\t\tthis.formAssociated.setAttribute('type', 'hidden');\n\t\t\t}\n\t\t\tthis.formAssociated.setAttribute('aria-hidden', 'true');\n\t\t\tthis.formAssociated.setAttribute('data-form-associated', '');\n\t\t\tthis.formAssociated.setAttribute('hidden', '');\n\t\t\tthis.host?.appendChild(this.formAssociated);\n\t\t}\n\t}\n\n\t/**\n\t * The associated elements must not reside within the ShadowRoot and must\n\t * reside as children in the host to be recognized by native forms.\n\t */\n\tprivate findHostWithShadowRoot(host?: HTMLElement): HTMLElement | undefined {\n\t\twhile (host?.shadowRoot === null && host !== document.body) {\n\t\t\thost = host?.parentNode as HTMLElement;\n\t\t\tif ((host as unknown as ShadowRoot).host) {\n\t\t\t\thost = (host as unknown as ShadowRoot).host as HTMLElement;\n\t\t\t}\n\t\t}\n\t\treturn host;\n\t}\n\n\tprotected setAttribute(qualifiedName: string, element?: HTMLElement, value?: string | number | boolean) {\n\t\tif (getExperimentalMode()) {\n\t\t\ttry {\n\t\t\t\tvalue = typeof value === 'object' && value !== null ? JSON.stringify(value) : value;\n\t\t\t\tif (typeof value === 'boolean' || typeof value === 'number' || typeof value === 'string') {\n\t\t\t\t\telement?.setAttribute(qualifiedName, `${value as string}`);\n\t\t\t\t} else {\n\t\t\t\t\tthrow new Error(`Invalid value type: ${typeof value}`);\n\t\t\t\t}\n\t\t\t} catch (e) {\n\t\t\t\telement?.removeAttribute(qualifiedName);\n\t\t\t}\n\t\t}\n\t}\n\n\t/**\n\t * We need to stringify the value, for the setAttribute method.\n\t * @see https://developer.mozilla.org/en-US/docs/Web/API/Element/setAttribute\n\t * @see https://developer.mozilla.org/en-US/docs/Web/API/Element/attributes\n\t * @see https://developer.mozilla.org/en-US/docs/Web/API/Element/attributes#value\n\t *\n\t * TODO: It is possible that the value are a cyclic object value. So we need a custom\n\t * JSON.stringify method from outside to convert it to string.\n\t */\n\tprivate tryToStringifyValue(value: StencilUnknown): string | null {\n\t\ttry {\n\t\t\treturn typeof value === 'object' && value !== null ? JSON.stringify(value).toString() : value === null || value === undefined ? null : value.toString();\n\t\t} catch (e) {\n\t\t\tdevWarning(`The form field raw value is not able to stringify! ${e as string}`);\n\t\t\treturn '';\n\t\t}\n\t}\n\n\t/**\n\t * We try to support native form-associated custom elements.\n\t *\n\t * @see https://github.com/public-ui/kolibri/discussions/2821\n\t */\n\tpublic readonly setFormAssociatedValue = (rawValue: StencilUnknown) => {\n\t\tconst name = this.formAssociated?.getAttribute('name');\n\t\tif (name === null || name === '') {\n\t\t\tdevHint(` The form field (${this.type}) must have a name attribute to be form-associated. Please define the _name attribute.`);\n\t\t}\n\t\tconst strValue = this.tryToStringifyValue(rawValue);\n\t\tthis.syncValue(rawValue, strValue, this.formAssociated);\n\t\tthis.syncValue(rawValue, strValue, this.syncToOwnInput);\n\t};\n\n\tprivate syncValue(\n\t\trawValue: StencilUnknown,\n\t\tstrValue: string | null,\n\t\tassociatedElement?: HTMLButtonElement | HTMLInputElement | HTMLSelectElement | HTMLTextAreaElement\n\t) {\n\t\tif (associatedElement) {\n\t\t\tswitch (this.type) {\n\t\t\t\tcase 'select':\n\t\t\t\t\t(associatedElement as HTMLSelectElement).querySelectorAll('option').forEach((el) => {\n\t\t\t\t\t\t(associatedElement as HTMLSelectElement).removeChild(el);\n\t\t\t\t\t});\n\t\t\t\t\tif (Array.isArray(rawValue)) {\n\t\t\t\t\t\trawValue.forEach((rawValueItem) => {\n\t\t\t\t\t\t\tconst strValueItem = this.tryToStringifyValue(rawValueItem as string);\n\t\t\t\t\t\t\tif (typeof strValueItem === 'string') {\n\t\t\t\t\t\t\t\tconst option = document.createElement('option');\n\t\t\t\t\t\t\t\toption.setAttribute('value', strValueItem);\n\t\t\t\t\t\t\t\toption.setAttribute('selected', '');\n\t\t\t\t\t\t\t\t(associatedElement as HTMLSelectElement).appendChild(option);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t});\n\t\t\t\t\t}\n\t\t\t\t\tbreak;\n\t\t\t\tdefault:\n\t\t\t\t\tif (typeof strValue === 'string') {\n\t\t\t\t\t\tassociatedElement.setAttribute('value', strValue);\n\t\t\t\t\t\tassociatedElement.value = strValue;\n\t\t\t\t\t} else {\n\t\t\t\t\t\tassociatedElement.removeAttribute('value');\n\t\t\t\t\t\tassociatedElement.value = '';\n\t\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\tpublic validateName(value?: NamePropType): void {\n\t\tvalidateName(this.component, value, {\n\t\t\thooks: {\n\t\t\t\tafterPatch: () => {\n\t\t\t\t\tthis.setAttribute('name', this.formAssociated, this.component.state._name as string);\n\t\t\t\t},\n\t\t\t},\n\t\t});\n\t\tif (typeof value === 'undefined') {\n\t\t\tdevHint(\n\t\t\t\t`Ein Name am Eingabefeldern oder Schalter ist nicht zwingend erforderlich, kann aber für die Autocomplete-Funktion und für das statische Versenden des Eingabefeldes relevant sein.`\n\t\t\t);\n\t\t}\n\t}\n\n\tpublic validateSyncValueBySelector(value?: SyncValueBySelectorPropType): void {\n\t\tif (getExperimentalMode() && typeof value === 'string') {\n\t\t\tconst input = document.querySelector(value) as HTMLInputElement | HTMLSelectElement | HTMLTextAreaElement;\n\t\t\tif (input /* SSR instanceof HTMLInputElement */) {\n\t\t\t\tthis.syncToOwnInput = input;\n\t\t\t}\n\t\t}\n\t}\n\n\tpublic componentWillLoad(): void {\n\t\tthis.validateName(this.component._name);\n\t\tthis.validateSyncValueBySelector(this.component._syncValueBySelector);\n\t}\n}\n"],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* KoliBri - The accessible HTML-Standard
|
|
3
3
|
*/
|
|
4
|
-
import{r as e,b as r,w as a}from"./prop.validators-
|
|
4
|
+
import{r as e,b as r,w as a}from"./prop.validators-c2b3a276.js";import{a as t}from"./a11y.tipps-90beea3f.js";var n={aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,134,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategray:[47,79,79],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,250,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],grey:[128,128,128],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,221],powderblue:[176,224,230],purple:[128,0,128],rebeccapurple:[102,51,153],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[112,128,144],slategrey:[112,128,144],snow:[255,250,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,50]},l=n,o=s,i={red:0,orange:60,yellow:120,green:180,blue:240,purple:300};function s(e){var r,a,o=[],t=1;if("string"==typeof e)if(e=e.toLowerCase(),l[e])o=l[e].slice(),a="rgb";else if("transparent"===e)t=0,a="rgb",o=[0,0,0];else if(/^#[A-Fa-f0-9]+$/.test(e)){var n=e.slice(1);t=1,(g=n.length)<=4?(o=[parseInt(n[0]+n[0],16),parseInt(n[1]+n[1],16),parseInt(n[2]+n[2],16)],4===g&&(t=parseInt(n[3]+n[3],16)/255)):(o=[parseInt(n[0]+n[1],16),parseInt(n[2]+n[3],16),parseInt(n[4]+n[5],16)],8===g&&(t=parseInt(n[6]+n[7],16)/255)),o[0]||(o[0]=0),o[1]||(o[1]=0),o[2]||(o[2]=0),a="rgb"}else if(r=/^((?:rgb|hs[lvb]|hwb|cmyk?|xy[zy]|gray|lab|lchu?v?|[ly]uv|lms)a?)\s*\(([^\)]*)\)/.exec(e)){var s=r[1],u="rgb"===s;a=n=s.replace(/a$/,"");var g="cmyk"===n?4:"gray"===n?1:3;o=r[2].trim().split(/\s*[,\/]\s*|\s+/).map((function(e,r){if(/%$/.test(e))return r===g?parseFloat(e)/100:"rgb"===n?255*parseFloat(e)/100:parseFloat(e);if("h"===n[r]){if(/deg$/.test(e))return parseFloat(e);if(void 0!==i[e])return i[e]}return parseFloat(e)})),s===n&&o.push(1),t=u||void 0===o[g]?1:o[g],o=o.slice(0,g)}else e.length>10&&/[0-9](?:\s|\/)/.test(e)&&(o=e.match(/([0-9]+)/g).map((function(e){return parseFloat(e)})),a=e.match(/([a-z])/gi).join("").toLowerCase());else isNaN(e)?Array.isArray(e)||e.length?(o=[e[0],e[1],e[2]],a="rgb",t=4===e.length?e[3]:1):e instanceof Object&&(null!=e.r||null!=e.red||null!=e.R?(a="rgb",o=[e.r||e.red||e.R||0,e.g||e.green||e.G||0,e.b||e.blue||e.B||0]):(a="hsl",o=[e.h||e.hue||e.H||0,e.s||e.saturation||e.S||0,e.l||e.lightness||e.L||e.b||e.brightness]),t=e.a||e.alpha||e.opacity||1,null!=e.opacity&&(t/=100)):(a="rgb",o=[e>>>16,(65280&e)>>>8,255&e]);return{space:a,values:o,alpha:t}}var u=o,g=function(e){var r;Array.isArray(e)&&e.raw&&(e=String.raw.apply(null,arguments));var a=u(e);if(!a.space)return[];var o=[0,0,0],t="h"===a.space[0]?[360,100,100]:[255,255,255];return(r=Array(3))[0]=Math.min(Math.max(a.values[0],o[0]),t[0]),r[1]=Math.min(Math.max(a.values[1],o[1]),t[1]),r[2]=Math.min(Math.max(a.values[2],o[2]),t[2]),"h"===a.space[0]&&(r=f(r)),r.push(Math.min(Math.max(a.alpha,0),1)),r};function f(e){var r,a,o,t,n,l=e[0]/360,i=e[1]/100,s=e[2]/100,u=0;if(0===i)return[n=255*s,n,n];for(r=2*s-(a=s<.5?s*(1+i):s+i-s*i),t=[0,0,0];u<3;)(o=l+1/3*-(u-1))<0?o++:o>1&&o--,n=6*o<1?r+6*(a-r)*o:2*o<1?a:3*o<2?r+(a-r)*(2/3-o)*6:r,t[u++]=255*n;return t}const c=g,d=(e,r,a)=>(299*e+587*r+114*a)/1e3>=128?-1:1,p=(a,o,t,n=1)=>{const l=[Math.max(Math.min(Math.round(o[0]+n*Math.max(1,o[0]/100)),255),0),Math.max(Math.min(Math.round(o[1]+n*Math.max(1,o[1]/100)),255),0),Math.max(Math.min(Math.round(o[2]+n*Math.max(1,o[2]/100)),255),0)],i=r(e.hex(`rgba(${a.join(",")},1)`),e.hex(`rgba(${l.join(",")},1)`)),s=l[0]+l[1]+l[2];return 0===s||765===s||i>t?{background:a,foreground:l,contrast:i}:p(a,l,t,n)},h=new Map,y=(e,r,a,o=1)=>{if(h.has(e))return h.get(e);const t=p(e,r,a,o);return h.set(e,t),t},b=(r,a=7)=>{let o=[0,0,0,1],t=[255,255,255,1];"string"==typeof r?(o=c(r),t=o):"object"==typeof r&&null!==r&&"string"==typeof r.background&&"string"==typeof r.foreground&&(o=c(r.background),t="string"==typeof r.foreground?c(r.foreground):o);const n=d(o[0],o[1],o[2]),l=y([o[0],o[1],o[2]],[t[0],t[1],t[2]],a,n);return t=[...l.foreground,1],{background:e.hex(`rgba(${o.join(",")})`),foreground:e.hex(`rgba(${t.join(",")})`),contrast:l.contrast}},v=/^#((\d|[a-f]){8}|(\d|[a-f]){6}|(\d|[a-f]){3,4})$/i;function m(e){return v.test(e)}function k(e){if(e.startsWith("{"))try{const r=JSON.parse(e);if(M(r))return{type:"ColorPair",value:r};if($(r))return{type:"DeprecatedColorPair",value:r}}catch(e){return{type:null,value:null}}return{type:null,value:null}}function w(e){if(e)if("string"==typeof e){if(m(e))return{type:"string",valid:!0,value:e};{const r=k(e);if(r.value)return{type:r.type,valid:!0,value:r.value}}}else{const r=e;if(M(r))return{type:"ColorPair",valid:!0,value:r};const a=e;if($(a))return{type:"DeprecatedColorPair",valid:!0,value:a}}return{type:null,valid:!1,value:""}}function M(e){return!("object"!=typeof e||!e||"string"!=typeof e.backgroundColor||!("string"==typeof e.foregroundColor||e.foregroundColor&&"string"==typeof e.foregroundColor.primary&&"string"==typeof e.foregroundColor.secondary&&"string"==typeof e.foregroundColor.neutral))}function $(e){return"object"==typeof e&&e&&"string"==typeof e.backgroundColor&&"string"==typeof e.color}function C(e){const r=w(e);switch(r.type){case null:return!1;case"string":case"ColorPair":case"DeprecatedColorPair":return r.valid}}const q=(e,r,o)=>{a(e,"_color",C,new Set(["rgb in hex","ColorPair"]),r,o)},P=e=>{var r;let a;const o=w(e);switch(o.type){case"string":a=b(o.value);break;case"ColorPair":case"DeprecatedColorPair":{const e=o.value,t=o.value;let n="";t.color?n=t.color:"string"==typeof e.foregroundColor?n=e.foregroundColor:(null===(r=e.foregroundColor)||void 0===r?void 0:r.primary)&&(n=e.foregroundColor.primary),n&&"string"==typeof n||(n="#fff"),a=b({background:e.backgroundColor,foreground:n});break}case null:console.warn(`_color was empty or invalid (${JSON.stringify(e)})`),a=b({background:"#000",foreground:"#000"})}return a.contrast<7&&t(`[KolBadge] The contrast of ${a.contrast} (≥7, AAA) is to low, between the color pair ${a.background} and ${a.foreground}.`),{backgroundColor:a.background,foregroundColor:a.foreground}};export{c,P as h,q as v};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* KoliBri - The accessible HTML-Standard
|
|
3
3
|
*/
|
|
4
|
-
import{a as t,w as s,e as i,d as e}from"./prop.validators-
|
|
4
|
+
import{a as t,w as s,e as i,d as e}from"./prop.validators-c2b3a276.js";import{I as a}from"./controller-icon-bc9b326c.js";const h=(e,o)=>{t(e,"_hasCounter",o)};class o extends a{constructor(t,e,o){super(t,e,o),this.component=t}validateAutoComplete(t){s(this.component,"_autoComplete",(t=>"string"==typeof t&&("on"===t||"off"===t)),new Set(["on | off"]),t)}validateHasCounter(t){h(this.component,t)}validateMaxLength(t){i(this.component,"_maxLength",t,{min:0})}validatePattern(t){e(this.component,"_pattern",t)}validatePlaceholder(t){e(this.component,"_placeholder",t)}validateReadOnly(e){t(this.component,"_readOnly",e)}validateRequired(e){t(this.component,"_required",e)}validateSize(t){i(this.component,"_size",t,{min:1})}validateValue(t){e(this.component,"_value",t),this.setFormAssociatedValue(this.component.state._value)}componentWillLoad(){super.componentWillLoad(),this.validateAutoComplete(this.component._autoComplete),this.validateHasCounter(this.component._hasCounter),this.validateMaxLength(this.component._maxLength),this.validatePattern(this.component._pattern),this.validatePlaceholder(this.component._placeholder),this.validateReadOnly(this.component._readOnly),this.validateRequired(this.component._required),this.validateSize(this.component._size),this.validateValue(this.component._value)}onBlur(t){this.component.state=Object.assign(Object.assign({},this.component.state),{_placeholder:this.placeholderCache}),this.placeholderCache=void 0,super.onBlur(t)}onFocus(t){this.placeholderCache=this.component.state._placeholder,this.component.state=Object.assign(Object.assign({},this.component.state),{_placeholder:void 0}),super.onFocus(t)}}export{o as I,h as v};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* KoliBri - The accessible HTML-Standard
|
|
3
3
|
*/
|
|
4
|
-
import{v as s,I as t}from"./controller-
|
|
4
|
+
import{v as s,I as t}from"./controller-1a4ae847.js";import{v as e}from"./suggestions-9569bba8.js";import{w as a}from"./prop.validators-c2b3a276.js";class i extends t{constructor(t,s,o){super(t,s,o),this.component=t}validateList(){}validateSuggestions(t){e(this.component,t)}componentWillLoad(){super.componentWillLoad(),this.validateSuggestions(this.component._suggestions||this.component._list)}}class r extends i{constructor(t,s,o){super(t,s,o),this.hasError=!1,this.component=t}validateType(t){a(this.component,"_type",(t=>"string"==typeof t&&("text"===t||"search"===t||"url"===t||"tel"===t)),new Set(["String {text, search, url, tel}"]),t)}validateHasCounter(t){s(this.component,t)}componentWillLoad(){super.componentWillLoad(),this.validateType(this.component._type),this.validateHasCounter(this.component._hasCounter)}}export{i as I,r as a};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* KoliBri - The accessible HTML-Standard
|
|
3
3
|
*/
|
|
4
|
-
import{d as e}from"./a11y.tipps-
|
|
4
|
+
import{d as e}from"./a11y.tipps-90beea3f.js";import{d as o}from"./dev.utils-3d1ba6ea.js";import{f as t,K as n}from"./prop.validators-c2b3a276.js";const i=t=>{for(o()&&(e("↓ Search form element start."),console.log(t));t instanceof HTMLElement&&"FORM"!==t.tagName&&"KOL-FORM"!==t.tagName;)t=t.parentElement instanceof HTMLElement?t.parentElement:t.parentNode instanceof ShadowRoot?t.parentNode.host:null,o()&&console.log(t);return o()&&e("↑ Search form element finished."),t},s=(e={})=>{var o,a;const s=i(e.form);if(s instanceof HTMLElement){const e=new Event("reset",{bubbles:!0,cancelable:!0});if("FORM"===s.tagName)t(e,s),s.dispatchEvent(e);else if("KOL-FORM"===s.tagName){t(e,n.querySelector("form",s));const i=s;"function"==typeof(null===(o=i._on)||void 0===o?void 0:o.onReset)&&(null===(a=i._on)||void 0===a||a.onReset(e))}}},f=(e={})=>{var o,a;const s=i(e.form);if(s instanceof HTMLElement){const e=new SubmitEvent("submit",{bubbles:!0,cancelable:!0,submitter:s});if("FORM"===s.tagName)t(e,s),s.dispatchEvent(e),s.submit();else if("KOL-FORM"===s.tagName){t(e,n.querySelector("form",s));const i=s;"function"==typeof(null===(o=i._on)||void 0===o?void 0:o.onSubmit)&&(null===(a=i._on)||void 0===a||a.onSubmit(e))}}};export{s as a,f as p};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["searchFormElement","el","getExperimentalMode","devHint","console","log","HTMLElement","tagName","parentElement","parentNode","ShadowRoot","host","propagateResetEventToForm","options","form","event","Event","bubbles","cancelable","setEventTarget","dispatchEvent","KoliBriDevHelper","querySelector","kolForm","_a","_on","onReset","_b","propagateSubmitEventToForm","SubmitEvent","submitter","submit","onSubmit"],"sources":["src/components/form/controller.ts"],"sourcesContent":["import { devHint } from '../../utils/a11y.tipps';\nimport { getExperimentalMode } from '../../utils/dev.utils';\nimport { KoliBriDevHelper, setEventTarget } from '../../utils/prop.validators';\nimport { Props } from './types';\n\nconst searchFormElement = (el?: HTMLElement | ParentNode | null): HTMLElement | ParentNode | null | undefined => {\n\tif (getExperimentalMode()) {\n\t\tdevHint(`↓ Search form element start.`);\n\t\tconsole.log(el);\n\t}\n\twhile (el instanceof HTMLElement && el.tagName !== 'FORM' && el.tagName !== 'KOL-FORM') {\n\t\tif (el.parentElement instanceof HTMLElement) {\n\t\t\tel = el.parentElement;\n\t\t} else if (el.parentNode instanceof ShadowRoot) {\n\t\t\tel = el.parentNode.host;\n\t\t} else {\n\t\t\tel = null;\n\t\t}\n\t\tif (getExperimentalMode()) {\n\t\t\tconsole.log(el);\n\t\t}\n\t}\n\tif (getExperimentalMode()) {\n\t\tdevHint(`↑ Search form element finished.`);\n\t}\n\treturn el;\n};\n\nexport const propagateResetEventToForm = (\n\toptions: {\n\t\tform?: HTMLElement | ParentNode | null;\n\t\tref?: HTMLElement;\n\t} = {}\n): void => {\n\tconst form = searchFormElement(options.form);\n\tif (form instanceof HTMLElement) {\n\t\tconst event = new Event('reset', {\n\t\t\tbubbles: true,\n\t\t\tcancelable: true,\n\t\t});\n\t\tif (form.tagName === 'FORM') {\n\t\t\tsetEventTarget(event, form);\n\t\t\tform.dispatchEvent(event);\n\t\t} else if (form.tagName === 'KOL-FORM') {\n\t\t\tsetEventTarget(event, KoliBriDevHelper.querySelector('form', form) as HTMLFormElement);\n\t\t\tconst kolForm = form as Props;\n\t\t\tif (typeof kolForm._on?.onReset === 'function') {\n\t\t\t\ttypeof kolForm._on?.onReset(event);\n\t\t\t}\n\t\t}\n\t}\n};\n\nexport const propagateSubmitEventToForm = (\n\toptions: {\n\t\tform?: HTMLElement | ParentNode | null;\n\t\tref?: HTMLElement;\n\t} = {}\n): void => {\n\tconst form = searchFormElement(options.form);\n\tif (form instanceof HTMLElement) {\n\t\tconst event = new SubmitEvent('submit', {\n\t\t\tbubbles: true,\n\t\t\tcancelable: true,\n\t\t\tsubmitter: form,\n\t\t});\n\t\t/**\n\t\t * TODO: Wenn Formular-Action (nicht Ajax oder JS) verwendet wird,\n\t\t * dann müssen wir das Event an das HTMLFormElement innerhalb\n\t\t * der HTMLKolFormElements propagieren, wenn kein onSubmit\n\t\t * gesetzt wurde.\n\t\t *\n\t\t * TODO: Form-associated custom elements:\n\t\t * - https://web.dev/more-capable-form-controls/\n\t\t * - https://github.com/public-ui/kolibri/issues/946\n\t\t */\n\t\tif (form.tagName === 'FORM') {\n\t\t\tsetEventTarget(event, form);\n\t\t\tform.dispatchEvent(event);\n\t\t\t(form as HTMLFormElement).submit();\n\t\t} else if (form.tagName === 'KOL-FORM') {\n\t\t\tsetEventTarget(event, KoliBriDevHelper.querySelector('form', form) as HTMLFormElement);\n\t\t\tconst kolForm = form as Props;\n\t\t\tif (typeof kolForm._on?.onSubmit === 'function') {\n\t\t\t\tkolForm._on?.onSubmit(event);\n\t\t\t}\n\t\t}\n\t}\n};\n"],"mappings":";;;kJAKA,MAAMA,EAAqBC,IAC1B,GAAIC,IAAuB,CAC1BC,EAAQ,gCACRC,QAAQC,IAAIJ,E,CAEb,MAAOA,aAAcK,aAAeL,EAAGM,UAAY,QAAUN,EAAGM,UAAY,WAAY,CACvF,GAAIN,EAAGO,yBAAyBF,YAAa,CAC5CL,EAAKA,EAAGO,a,MACF,GAAIP,EAAGQ,sBAAsBC,WAAY,CAC/CT,EAAKA,EAAGQ,WAAWE,I,KACb,CACNV,EAAK,I,CAEN,GAAIC,IAAuB,CAC1BE,QAAQC,IAAIJ,E,EAGd,GAAIC,IAAuB,CAC1BC,EAAQ,kC,CAET,OAAOF,CAAE,E,MAGGW,EAA4B,CACxCC,EAGI,M,QAEJ,MAAMC,EAAOd,EAAkBa,EAAQC,MACvC,GAAIA,aAAgBR,YAAa,CAChC,MAAMS,EAAQ,IAAIC,MAAM,QAAS,CAChCC,QAAS,KACTC,WAAY,OAEb,GAAIJ,EAAKP,UAAY,OAAQ,CAC5BY,EAAeJ,EAAOD,GACtBA,EAAKM,cAAcL,E,MACb,GAAID,EAAKP,UAAY,WAAY,CACvCY,EAAeJ,EAAOM,EAAiBC,cAAc,OAAQR,IAC7D,MAAMS,EAAUT,EAChB,WAAWU,EAAAD,EAAQE,OAAG,MAAAD,SAAA,SAAAA,EAAEE,WAAY,WAAY,SACxCC,EAAAJ,EAAQE,OAAG,MAAAE,SAAA,SAAAA,EAAED,QAAQX,G,WAMnBa,EAA6B,CACzCf,EAGI,M,QAEJ,MAAMC,EAAOd,EAAkBa,EAAQC,MACvC,GAAIA,aAAgBR,YAAa,CAChC,MAAMS,EAAQ,IAAIc,YAAY,SAAU,CACvCZ,QAAS,KACTC,WAAY,KACZY,UAAWhB,IAYZ,GAAIA,EAAKP,UAAY,OAAQ,CAC5BY,EAAeJ,EAAOD,GACtBA,EAAKM,cAAcL,GAClBD,EAAyBiB,Q,MACpB,GAAIjB,EAAKP,UAAY,WAAY,CACvCY,EAAeJ,EAAOM,EAAiBC,cAAc,OAAQR,IAC7D,MAAMS,EAAUT,EAChB,WAAWU,EAAAD,EAAQE,OAAG,MAAAD,SAAA,SAAAA,EAAEQ,YAAa,WAAY,EAChDL,EAAAJ,EAAQE,OAAG,MAAAE,SAAA,SAAAA,EAAEK,SAASjB,E"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
/*!
|
|
2
|
+
* KoliBri - The accessible HTML-Standard
|
|
3
|
+
*/
|
|
4
|
+
import{c as t,a as e,w as s,m as i,s as a}from"./prop.validators-c2b3a276.js";import{h as r,c as o}from"./label-efb10d30.js";import{a as n}from"./a11y.tipps-90beea3f.js";import{S as l}from"./reuse-d79ab469.js";import{I as h}from"./controller-b90cfb96.js";const f=t=>{if("object"==typeof t&&null!==t){if("string"==typeof t.label&&t.label.length>0)return t.disabled=!0===t.disabled,t.label=`${t.label}`.trim(),!1===r(t.label,3)&&!1===o(t.label)&&n(`Ein abweichendes Aria-Label (${t.label}) ist nicht barrierefrei. Ein abweichendes Aria-Label sollte aus mindestens drei lesbaren Zeichen bestehen.`),!Array.isArray(t.options)||void 0===t.options.find((t=>!1===f(t)));if("number"==typeof t.label)return!0}return!1},c=(e,o,i={})=>{t(e,"_options",(t=>"object"==typeof t&&null!==t&&"string"==typeof t.label&&t.label.length>0),o,void 0,i)},u=(e,o,i={})=>{t(e,"_options",f,o,void 0,i)},p=(t,o)=>{e(t,"_required",o)},d=(t,e,o="")=>{e.forEach(((e,i)=>{const a=`${o}-${i}`;"object"==typeof e&&null!==e&&"string"==typeof e.label&&e.label.length>0&&(Array.isArray(e.options)?d(t,e.options,a):t.set(a,e))}))};class b extends h{constructor(t,e,o){super(t,e,o),this.component=t}validateRequired(t){p(this.component,t)}componentWillLoad(){super.componentWillLoad(),this.validateRequired(this.component._required)}}class m extends b{constructor(t,e,o){super(t,e,o),this.keyOptionMap=new Map,this.getOptionByKey=t=>this.keyOptionMap.get(t),this.isValueInOptions=(t,e)=>void 0!==e.find((e=>e.value===t)),this.afterPatchOptions=(t,e,o,i)=>{"_value"===i&&this.setFormAssociatedValue(t)},this.beforePatchOptions=(t,e)=>{const o=e.has("_options")?e.get("_options"):this.component.state._options;if(Array.isArray(o)&&o.length>0){this.keyOptionMap.clear(),d(this.keyOptionMap,o);const t=e.has("_value")?e.get("_value"):this.component.state._value;!1===this.isValueInOptions(t,o)&&(e.set("_value",o[0].value),this.onStateChange())}},this.component=t}validateOrientation(t){s(this.component,"_orientation",(t=>"horizontal"===t||"vertical"===t),new Set(["Orientation {horizontal, vertical}"]),t,{defaultValue:"vertical"})}validateOptions(t){c(this.component,t,{hooks:{afterPatch:this.afterPatchOptions,beforePatch:this.beforePatchOptions}})}validateValue(t){t=i(t),t=Array.isArray(t)?t[0]:t,a(this.component,"_value",t,{afterPatch:this.afterPatchOptions,beforePatch:this.beforePatchOptions})}componentWillLoad(t){super.componentWillLoad(),this.onStateChange=()=>{if("function"==typeof t){const e=setTimeout((()=>{clearTimeout(e),t(l)}))}},this.validateOrientation(this.component._orientation),this.validateOptions(this.component._options||this.component._list),this.validateValue(this.component._value)}}export{b as I,m as a,d as f,u as v};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["validateInputSelectOptions","option","label","length","disabled","trim","hasEnoughReadableChars","containsOnlyNumbers","a11yHint","Array","isArray","options","find","item","undefined","validateOptions","component","value","watchJsonArrayString","validateOptionsWithOptgroup","validateRequired","watchBoolean","fillKeyOptionMap","keyOptionMap","preKey","forEach","index","key","set","InputCheckboxRadioController","InputController","constructor","name","host","super","this","componentWillLoad","_required","InputRadioController","Map","getOptionByKey","get","isValueInOptions","afterPatchOptions","_state","_component","setFormAssociatedValue","beforePatchOptions","_value","nextState","has","state","_options","clear","onStateChange","validateOrientation","watchValidator","Set","defaultValue","hooks","afterPatch","beforePatch","validateValue","mapString2Unknown","setState","onChange","timeout","setTimeout","clearTimeout","STATE_CHANGE_EVENT","_orientation","_list"],"sources":["src/utils/validators/options.ts","src/types/props/options.ts","src/types/props/required.ts","src/components/input-radio/controller.ts"],"sourcesContent":["import { Optgroup, SelectOption } from '../../types/input/types';\nimport { containsOnlyNumbers, hasEnoughReadableChars } from '../../types/props/label';\nimport { a11yHint } from '../a11y.tipps';\n\nexport const validateInputSelectOptions = <T>(option: SelectOption<T>): boolean => {\n\tif (typeof option === 'object' && option !== null) {\n\t\tif (typeof option.label === 'string' && option.label.length > 0) {\n\t\t\toption.disabled = option.disabled === true;\n\t\t\toption.label = `${option.label}`.trim();\n\t\t\tif (hasEnoughReadableChars(option.label, 3) === false && containsOnlyNumbers(option.label) === false) {\n\t\t\t\ta11yHint(\n\t\t\t\t\t`Ein abweichendes Aria-Label (${option.label}) ist nicht barrierefrei. Ein abweichendes Aria-Label sollte aus mindestens drei lesbaren Zeichen bestehen.`\n\t\t\t\t);\n\t\t\t}\n\t\t\tif (Array.isArray((option as Optgroup<T>).options)) {\n\t\t\t\treturn (\n\t\t\t\t\t(option as Optgroup<T>).options.find((item) => {\n\t\t\t\t\t\treturn validateInputSelectOptions(item) === false;\n\t\t\t\t\t}) === undefined\n\t\t\t\t);\n\t\t\t}\n\t\t\treturn true;\n\t\t} else if (typeof option.label === 'number') {\n\t\t\treturn true;\n\t\t}\n\t}\n\treturn false;\n};\n","import type { Generic } from 'adopted-style-sheets';\n\nimport { watchJsonArrayString, WatchOptions } from '../../utils/prop.validators';\nimport { validateInputSelectOptions } from '../../utils/validators/options';\nimport { Stringified } from '../common';\nimport { Optgroup, Option } from '../input/types';\nimport { W3CInputValue } from '../w3c';\n\n/* types */\n\nexport type OptionsPropType = Stringified<Option<W3CInputValue>[]>;\nexport type OptionsWithOptgroupPropType = Stringified<(Option<W3CInputValue> | Optgroup<W3CInputValue>)[]>;\n\n/**\n * Options the user can choose from.\n */\nexport type PropOptions = {\n\toptions: OptionsPropType;\n};\n\n/**\n * Options the user can choose from, also supporting Optgroup.\n */\nexport type PropOptionsWithOptgroup = {\n\toptions: OptionsWithOptgroupPropType;\n};\n\n/* validators */\n\nexport const validateOptions = (component: Generic.Element.Component, value: OptionsPropType | undefined, options: WatchOptions = {}): void => {\n\twatchJsonArrayString(\n\t\tcomponent,\n\t\t'_options',\n\t\t(item: Option<W3CInputValue>) => typeof item === 'object' && item !== null && typeof item.label === 'string' && item.label.length > 0,\n\t\tvalue,\n\t\tundefined,\n\t\toptions\n\t);\n};\n\nexport const validateOptionsWithOptgroup = (\n\tcomponent: Generic.Element.Component,\n\tvalue: OptionsWithOptgroupPropType | undefined,\n\toptions: WatchOptions = {}\n) => {\n\twatchJsonArrayString(component, '_options', validateInputSelectOptions, value, undefined, options);\n};\n","import type { Generic } from 'adopted-style-sheets';\n\nimport { watchBoolean } from '../../utils/prop.validators';\n\n/* types */\ntype RequiredPropType = boolean;\n\n/**\n * Makes the input element required.\n */\nexport type PropRequired = {\n\trequired: RequiredPropType;\n};\n\n/* validator */\nexport const validateRequired = (component: Generic.Element.Component, value?: RequiredPropType): void => {\n\twatchBoolean(component, '_required', value);\n};\n","import type { Generic } from 'adopted-style-sheets';\n\nimport { Stringified } from '../../types/common';\nimport { Optgroup, Option, SelectOption } from '../../types/input/types';\nimport { Orientation } from '../../types/orientation';\nimport { PropLabelWithExpertSlot } from '../../types/props/label';\nimport { OptionsPropType, validateOptions } from '../../types/props/options';\nimport { validateRequired } from '../../types/props/required';\nimport { StencilUnknown } from '../../types/unknown';\nimport { W3CInputValue } from '../../types/w3c';\nimport { mapString2Unknown, setState, watchValidator } from '../../utils/prop.validators';\nimport { STATE_CHANGE_EVENT } from '../../utils/validator';\nimport { InputController } from '../@deprecated/input/controller';\nimport { Props, Watches } from './types';\n\nexport const fillKeyOptionMap = <T>(keyOptionMap: Map<string, Option<T>>, options: SelectOption<T>[], preKey = ''): void => {\n\toptions.forEach((option, index) => {\n\t\tconst key = `${preKey}-${index}`;\n\t\tif (typeof option === 'object' && option !== null && typeof option.label === 'string' && option.label.length > 0) {\n\t\t\tif (Array.isArray((option as Optgroup<T>).options)) {\n\t\t\t\tfillKeyOptionMap(keyOptionMap, (option as Optgroup<T>).options, key);\n\t\t\t} else {\n\t\t\t\tkeyOptionMap.set(key, option as Option<T>);\n\t\t\t}\n\t\t}\n\t});\n};\n\ntype RequiredProps = NonNullable<unknown>;\ntype OptionalProps = {\n\trequired: boolean;\n} & PropLabelWithExpertSlot;\ntype InputCheckboxRadioProps = Generic.Element.Members<RequiredProps, OptionalProps>;\ntype InputCheckboxRadioWatches = Generic.Element.Watchers<RequiredProps, OptionalProps>;\n\nexport class InputCheckboxRadioController extends InputController implements InputCheckboxRadioWatches {\n\tprotected readonly component: Generic.Element.Component & InputCheckboxRadioProps;\n\n\tpublic constructor(component: Generic.Element.Component & InputCheckboxRadioProps, name: string, host?: HTMLElement) {\n\t\tsuper(component, name, host);\n\t\tthis.component = component;\n\t}\n\n\tpublic validateRequired(value?: boolean): void {\n\t\tvalidateRequired(this.component, value);\n\t}\n\n\tpublic componentWillLoad(): void {\n\t\tsuper.componentWillLoad();\n\t\tthis.validateRequired(this.component._required);\n\t}\n}\n\nexport class InputRadioController extends InputCheckboxRadioController implements Watches {\n\tprotected readonly component: Generic.Element.Component & Props;\n\tprivate onStateChange!: () => void;\n\tprivate readonly keyOptionMap = new Map<string, Option<W3CInputValue>>();\n\n\tpublic constructor(component: Generic.Element.Component & Props, name: string, host?: HTMLElement) {\n\t\tsuper(component, name, host);\n\t\tthis.component = component;\n\t}\n\n\tpublic readonly getOptionByKey = (key: string): Option<W3CInputValue> | undefined => this.keyOptionMap.get(key);\n\n\tprivate readonly isValueInOptions = (value: unknown, options: Option<W3CInputValue>[]): boolean => {\n\t\treturn options.find((option) => option.value === value) !== undefined;\n\t};\n\n\tprotected readonly afterPatchOptions = (value: unknown, _state: Record<string, unknown>, _component: Generic.Element.Component, key: string): void => {\n\t\tif (key === '_value') {\n\t\t\tthis.setFormAssociatedValue(value as string);\n\t\t}\n\t};\n\n\tprotected readonly beforePatchOptions = (_value: unknown, nextState: Map<string, unknown>): void => {\n\t\tconst options = nextState.has('_options') ? nextState.get('_options') : this.component.state._options;\n\t\tif (Array.isArray(options) && options.length > 0) {\n\t\t\tthis.keyOptionMap.clear();\n\t\t\tfillKeyOptionMap(this.keyOptionMap, options as SelectOption<W3CInputValue>[]);\n\t\t\tconst value = nextState.has('_value') ? nextState.get('_value') : this.component.state._value;\n\t\t\tif (this.isValueInOptions(value, options as Option<W3CInputValue>[]) === false) {\n\t\t\t\tnextState.set(\n\t\t\t\t\t'_value',\n\t\t\t\t\t(\n\t\t\t\t\t\toptions[0] as {\n\t\t\t\t\t\t\tvalue: string;\n\t\t\t\t\t\t}\n\t\t\t\t\t).value\n\t\t\t\t);\n\t\t\t\tthis.onStateChange();\n\t\t\t}\n\t\t}\n\t};\n\n\tpublic validateOrientation(value?: Orientation): void {\n\t\twatchValidator(\n\t\t\tthis.component,\n\t\t\t'_orientation',\n\t\t\t(value): boolean => value === 'horizontal' || value === 'vertical',\n\t\t\tnew Set(['Orientation {horizontal, vertical}']),\n\t\t\tvalue,\n\t\t\t{\n\t\t\t\tdefaultValue: 'vertical',\n\t\t\t}\n\t\t);\n\t}\n\n\tpublic validateOptions(value?: OptionsPropType): void {\n\t\tvalidateOptions(this.component, value, {\n\t\t\thooks: {\n\t\t\t\tafterPatch: this.afterPatchOptions,\n\t\t\t\tbeforePatch: this.beforePatchOptions,\n\t\t\t},\n\t\t});\n\t}\n\n\tpublic validateValue(value?: Stringified<StencilUnknown>): void {\n\t\tvalue = mapString2Unknown(value);\n\t\tvalue = Array.isArray(value) ? (value[0] as StencilUnknown) : value;\n\t\tsetState(this.component, '_value', value, {\n\t\t\tafterPatch: this.afterPatchOptions,\n\t\t\tbeforePatch: this.beforePatchOptions,\n\t\t});\n\t}\n\n\tpublic componentWillLoad(onChange?: (event: Event) => void): void {\n\t\tsuper.componentWillLoad();\n\n\t\tthis.onStateChange = () => {\n\t\t\tif (typeof onChange === 'function') {\n\t\t\t\tconst timeout = setTimeout(() => {\n\t\t\t\t\tclearTimeout(timeout);\n\t\t\t\t\tonChange(STATE_CHANGE_EVENT);\n\t\t\t\t});\n\t\t\t}\n\t\t};\n\n\t\tthis.validateOrientation(this.component._orientation);\n\t\tthis.validateOptions(this.component._options || this.component._list);\n\t\tthis.validateValue(this.component._value);\n\t}\n}\n"],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* KoliBri - The accessible HTML-Standard
|
|
3
3
|
*/
|
|
4
|
-
import{a as t,d as i,s,o as e,p as h}from"./prop.validators-
|
|
4
|
+
import{a as t,d as i,s,o as e,p as h}from"./prop.validators-c2b3a276.js";import{v as a}from"./hide-label-4df0e368.js";import{a as o}from"./label-efb10d30.js";import{g as r,a as n,d}from"./a11y.tipps-90beea3f.js";import{s as l,t as c}from"./events-fa760b68.js";import{v as f}from"./tab-index-a9976462.js";import{A as u}from"./associated.controller-54459452.js";const p=t=>{const e="string"==typeof t._error&&t._error.length>0&&!0===t._touched,o="string"==typeof t._hint&&t._hint.length>0,n=[];return!0===e&&n.push(`${t._id}-error`),!0===o&&n.push(`${t._id}-hint`),{hasError:e,hasHint:o,ariaDescribedBy:n}},v=(e,o)=>{t(e,"_adjustHeight",o)},m=(e,o,n)=>{t(e,"_hideError",o,n)},b=(e,o)=>{t(e,"_touched",o)};class y extends u{constructor(t,e,o){super(t,e,o),this.component=t}validateAlert(e){t(this.component,"_alert",e)}validateTouched(t){b(this.component,t)}componentWillLoad(){super.componentWillLoad(),this.validateAlert(this.component._alert),this.validateTouched(this.component._touched)}}class g extends y{constructor(t,e,o){super(t,e,o),this.valueChangeListeners=[],this.onFacade={onBlur:this.onBlur.bind(this),onChange:this.onChange.bind(this),onClick:this.onClick.bind(this),onFocus:this.onFocus.bind(this)},this.component=t}validateAccessKey(t){i(this.component,"_accessKey",t)}validateAdjustHeight(t){v(this.component,t)}validateDisabled(e){t(this.component,"_disabled",e),!0===e&&r()}validateError(t){i(this.component,"_error",t)}validateHideError(t){m(this.component,t,{hooks:{afterPatch:()=>{this.component.state._hideError&&n("Property hide-error for inputs: Only use when the error message is shown outside of the input component.")}}})}validateHideLabel(t){a(this.component,t,{hooks:{afterPatch:()=>{this.component.state._hideLabel&&n("Property hide-label for inputs: Only use for exceptions like search inputs that are clearly identifiable by their context.")}}})}validateHint(t){i(this.component,"_hint",t)}validateId(t){i(this.component,"_id",t,{hooks:{afterPatch:()=>{this.setAttribute("id",this.formAssociated,this.component.state._id)}},minLength:1}),""!==t&&void 0!==t||d("Eine eindeutige ID an den Eingabefeldern ist nicht zwingend erforderlich, könnte aber für die E2E-Tests relevant sein.")}validateLabel(t){o(this.component,t,{required:!0})}validateOn(t){"object"==typeof t&&s(this.component,"_on",t)}validateSmartButton(t){e(t,(()=>{try{t=h(t)}catch(t){}s(this.component,"_smartButton",t)}))}validateTabIndex(t){f(this.component,t)}componentWillLoad(){super.componentWillLoad(),this.validateAccessKey(this.component._accessKey),this.validateAdjustHeight(this.component._adjustHeight),this.validateError(this.component._error),this.validateDisabled(this.component._disabled),this.validateHideError(this.component._hideError),this.validateHideLabel(this.component._hideLabel),this.validateHint(this.component._hint),this.validateId(this.component._id),this.validateLabel(this.component._label),this.validateSmartButton(this.component._smartButton),this.validateOn(this.component._on),this.validateTabIndex(this.component._tabIndex)}onBlur(t){var e;this.component._alert=!0,this.component._touched=!0,l(t),c("blur",this.host),"function"==typeof(null===(e=this.component._on)||void 0===e?void 0:e.onBlur)&&this.component._on.onBlur(t)}onChange(t){var e;const o=t.target.value;c("change",this.host,o),this.setFormAssociatedValue(o),"function"==typeof(null===(e=this.component._on)||void 0===e?void 0:e.onChange)&&this.component._on.onChange(t,o),this.valueChangeListeners.forEach((t=>t(o)))}onClick(t){var e;l(t),c("click",this.host),"function"==typeof(null===(e=this.component._on)||void 0===e?void 0:e.onClick)&&this.component._on.onClick(t)}onFocus(t){var e;this.component._alert=!0,l(t),c("focus",this.host),"function"==typeof(null===(e=this.component._on)||void 0===e?void 0:e.onFocus)&&this.component._on.onFocus(t)}setValue(t,e){var o;this.setFormAssociatedValue(e),"function"==typeof(null===(o=this.component._on)||void 0===o?void 0:o.onChange)&&this.component._on.onChange(t,e)}addValueChangeListener(t){this.valueChangeListeners.push(t)}}export{g as I,p as g};
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
/*!
|
|
2
|
+
* KoliBri - The accessible HTML-Standard
|
|
3
|
+
*/
|
|
4
|
+
import{i as o}from"./icons-56f61dc0.js";import{o as s,p as t,w as i}from"./prop.validators-c2b3a276.js";import{i as r}from"./reuse-d79ab469.js";import{I as c}from"./controller-b90cfb96.js";const e=(o,t)=>{const s=o;"object"==typeof s&&null!==s&&(r(s.right,1)&&(s.right={icon:s.right}),r(s.left,1)&&(s.left={icon:s.left}),t.set("_icons",s))};class a extends c{constructor(o,t,s){super(o,t,s),this.component=o}validateIcon(o){this.validateIcons(o)}validateIcons(c){s(c,(()=>{try{c=t(c)}catch(o){}i(this.component,"_icons",(t=>"object"==typeof t&&null!==t&&(r(t.left,1)||o(t.left)||r(t.right,1)||o(t.right))),new Set(["KoliBriHorizontalIcon"]),c,{hooks:{beforePatch:e},required:!0})}))}componentWillLoad(){super.componentWillLoad(),this.validateIcons(this.component._icons||this.component._icon)}}export{a as I};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* KoliBri - The accessible HTML-Standard
|
|
3
3
|
*/
|
|
4
|
-
import{w as a,d as o}from"./prop.validators-
|
|
4
|
+
import{w as a,d as o}from"./prop.validators-c2b3a276.js";const r=(o,r)=>{a(o,"_variant",(a=>"primary"===a||"secondary"===a||"normal"===a||"danger"===a||"ghost"===a||"custom"===a),new Set(["KoliBriButtonVariant {primary, secondary, normal, danger, ghost, custom}"]),r,{defaultValue:"normal"})},s=(a,r)=>{o(a,"_customClass",r,{defaultValue:void 0})};export{r as a,s as v};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* KoliBri - The accessible HTML-Standard
|
|
3
3
|
*/
|
|
4
|
-
import{p as e}from"./reuse-d79ab469.js";class t{constructor(){this.lockedElements=new Map,this.modalStack=new Map}lockElement(e){const t=e.getAttribute("tabindex");(e instanceof HTMLAnchorElement||e instanceof HTMLButtonElement||e instanceof HTMLInputElement||e instanceof HTMLSelectElement||e instanceof HTMLTextAreaElement||"string"==typeof t||void 0!==e.dataset.kolModal)&&("string"==typeof t?this.lockedElements.set(e,{tabIndex:t}):this.lockedElements.set(e,{}),e.setAttribute("tabindex","-1"),e.setAttribute("aria-hidden","true"),e.style.userSelect="none")}unlockElement(e,t){"string"==typeof e.tabIndex?t.setAttribute("tabindex",e.tabIndex):t.removeAttribute("tabindex"),t.removeAttribute("aria-hidden"),t.style.userSelect="unset",this.lockedElements.delete(t)}unlockLockedElements(e){e.forEach(this.unlockElement.bind(this))}lockFocus(e,t){if(e!==t&&(e instanceof HTMLElement||e instanceof ShadowRoot)){e instanceof HTMLElement&&(this.lockElement(e),this.lockFocus(e.shadowRoot,t));for(let o=0;o<e.children.length;o++)this.lockFocus(e.children[o],t)}}renderModalIfExists(e){if(e instanceof HTMLElement){this.lockedElements.has(e)&&this.unlockElement(this.lockedElements.get(e),e);const t=setTimeout((()=>{clearTimeout(t),e.focus()}),500)}if(this.unlockLockedElements(this.lockedElements),this.modalStack.size>0){const e=Array.from(this.modalStack.keys()),t=e[e.length-1];this.modalStack.forEach(((e,o)=>{o.style.display=t===o?"inline":"none"})),l().body.style.maxHeight="100vh",l().body.style.overflow="hidden",this.lockFocus(l().body,t)}else l().body.style.maxHeight="unset",l().body.style.overflow="unset"}openModal(e,t){e instanceof HTMLElement==!1?m.warn("[KolModalService] Die DOM-Referenz des Modals ist nicht valide."):(this.modalStack.set(e,{activeElement:t}),this.renderModalIfExists())}closeModal(e){var t;if(e instanceof HTMLElement==!1)m.warn("[KolModalService] Die DOM-Referenz des Modals ist nicht valide.");else{const o=null===(t=this.modalStack.get(e))||void 0===t?void 0:t.activeElement;this.modalStack.delete(e),this.renderModalIfExists(o)}}}let n=null,i=null;const o=e=>{e instanceof Window?(n=e,n.document instanceof Document?i=e.document:console.warn("The given Window has no valid Document.")):console.warn("The given Window is not valid.")},s=()=>n||"undefined"==typeof window?null:window,l=()=>i||void 0===s().document?null:s().document;let a=null,r=null,c=null,d=null;const u=()=>!0===r,f=()=>!0===c,h=()=>!0===d;class m{static mapToArray(e){return Array.isArray(e)?e:[e]}static handleClassifier(e){return"string"==typeof e&&e.length>0?`${m.shield.label} | ${e}`:m.shield.label}static getShield(e){return[m.handleClassifier(null==e?void 0:e.classifier),`${m.shield.style};${(null==e?void 0:e.overwriteStyle)||""}`]}static debug(e,t){(r||!0===(null==t?void 0:t.forceLog))&&console.debug(...m.getShield(t),...m.mapToArray(e))}static info(e,t){(r||!0===(null==t?void 0:t.forceLog))&&console.info(...m.getShield(t),...m.mapToArray(e))}static trace(e,t){(r||!0===(null==t?void 0:t.forceLog))&&console.trace(...m.getShield(t),...m.mapToArray(e))}static warn(e,t){(r||!0===(null==t?void 0:t.forceLog))&&console.warn(...m.getShield(t),...m.mapToArray(e))}static error(e,t){(r||!0===(null==t?void 0:t.forceLog))&&console.error(...m.getShield(t),...m.mapToArray(e))}static throw(e,t){if(r||!0===(null==t?void 0:t.forceLog))throw new Error(...m.getShield(t),...m.mapToArray(e))}}m.shield={label:"%cKoliBri",style:"color: white; background: #666; font-weight: bold; padding: .25em .5em; border-radius: 3px; border: 1px solid #000"};const v=()=>{if(null===r&&null===c&&null===d){const e=l().querySelector('meta[name="kolibri"]');e&&e.hasAttribute("content")&&(a=e.getAttribute("content"),"string"==typeof a&&(r=a.includes("dev-mode=true"),c=a.includes("experimental-mode=true"),d=a.includes("color-contrast-analysis=true")))}else console.warn("You can only initialize DEV_MODE and COLOR_CONTRAST_ANALYSIS once.")},p=()=>{let e=s().KoliBri;return void 0===e&&(e={},Object.defineProperty(s(),"KoliBri",{value:e,writable:!1})),e},b=()=>{if(void 0===p().Modal){const e=new t;Object.defineProperty(p(),"Modal",{get:function(){return e}})
|
|
4
|
+
import{p as e}from"./reuse-d79ab469.js";class t{constructor(){this.lockedElements=new Map,this.modalStack=new Map}lockElement(e){const t=e.getAttribute("tabindex");(e instanceof HTMLAnchorElement||e instanceof HTMLButtonElement||e instanceof HTMLInputElement||e instanceof HTMLSelectElement||e instanceof HTMLTextAreaElement||"string"==typeof t||void 0!==e.dataset.kolModal)&&("string"==typeof t?this.lockedElements.set(e,{tabIndex:t}):this.lockedElements.set(e,{}),e.setAttribute("tabindex","-1"),e.setAttribute("aria-hidden","true"),e.style.userSelect="none")}unlockElement(e,t){"string"==typeof e.tabIndex?t.setAttribute("tabindex",e.tabIndex):t.removeAttribute("tabindex"),t.removeAttribute("aria-hidden"),t.style.userSelect="unset",this.lockedElements.delete(t)}unlockLockedElements(e){e.forEach(this.unlockElement.bind(this))}lockFocus(e,t){if(e!==t&&(e instanceof HTMLElement||e instanceof ShadowRoot)){e instanceof HTMLElement&&(this.lockElement(e),this.lockFocus(e.shadowRoot,t));for(let o=0;o<e.children.length;o++)this.lockFocus(e.children[o],t)}}renderModalIfExists(e){if(e instanceof HTMLElement){this.lockedElements.has(e)&&this.unlockElement(this.lockedElements.get(e),e);const t=setTimeout((()=>{clearTimeout(t),e.focus()}),500)}if(this.unlockLockedElements(this.lockedElements),this.modalStack.size>0){const e=Array.from(this.modalStack.keys()),t=e[e.length-1];this.modalStack.forEach(((e,o)=>{o.style.display=t===o?"inline":"none"})),l().body.style.maxHeight="100vh",l().body.style.overflow="hidden",this.lockFocus(l().body,t)}else l().body.style.maxHeight="unset",l().body.style.overflow="unset"}openModal(e,t){e instanceof HTMLElement==!1?m.warn("[KolModalService] Die DOM-Referenz des Modals ist nicht valide."):(this.modalStack.set(e,{activeElement:t}),this.renderModalIfExists())}closeModal(e){var t;if(e instanceof HTMLElement==!1)m.warn("[KolModalService] Die DOM-Referenz des Modals ist nicht valide.");else{const o=null===(t=this.modalStack.get(e))||void 0===t?void 0:t.activeElement;this.modalStack.delete(e),this.renderModalIfExists(o)}}}let n=null,i=null;const o=e=>{e instanceof Window?(n=e,n.document instanceof Document?i=e.document:console.warn("The given Window has no valid Document.")):console.warn("The given Window is not valid.")},s=()=>n||"undefined"==typeof window?null:window,l=()=>i||void 0===s().document?null:s().document;let a=null,r=null,c=null,d=null;const u=()=>!0===r,f=()=>!0===c,h=()=>!0===d;class m{static mapToArray(e){return Array.isArray(e)?e:[e]}static handleClassifier(e){return"string"==typeof e&&e.length>0?`${m.shield.label} | ${e}`:m.shield.label}static getShield(e){return[m.handleClassifier(null==e?void 0:e.classifier),`${m.shield.style};${(null==e?void 0:e.overwriteStyle)||""}`]}static debug(e,t){(r||!0===(null==t?void 0:t.forceLog))&&console.debug(...m.getShield(t),...m.mapToArray(e))}static info(e,t){(r||!0===(null==t?void 0:t.forceLog))&&console.info(...m.getShield(t),...m.mapToArray(e))}static trace(e,t){(r||!0===(null==t?void 0:t.forceLog))&&console.trace(...m.getShield(t),...m.mapToArray(e))}static warn(e,t){(r||!0===(null==t?void 0:t.forceLog))&&console.warn(...m.getShield(t),...m.mapToArray(e))}static error(e,t){(r||!0===(null==t?void 0:t.forceLog))&&console.error(...m.getShield(t),...m.mapToArray(e))}static throw(e,t){if(r||!0===(null==t?void 0:t.forceLog))throw new Error(...m.getShield(t),...m.mapToArray(e))}}m.shield={label:"%cKoliBri",style:"color: white; background: #666; font-weight: bold; padding: .25em .5em; border-radius: 3px; border: 1px solid #000"};const v=()=>{if(null===r&&null===c&&null===d){const e=l().querySelector('meta[name="kolibri"]');e&&e.hasAttribute("content")&&(a=e.getAttribute("content"),"string"==typeof a&&(r=a.includes("dev-mode=true"),c=a.includes("experimental-mode=true"),d=a.includes("color-contrast-analysis=true")))}else console.warn("You can only initialize DEV_MODE and COLOR_CONTRAST_ANALYSIS once.")},p=()=>{let e=s().KoliBri;return void 0===e&&(e={},Object.defineProperty(s(),"KoliBri",{value:e,writable:!1})),e},b=()=>{if(v(),void 0===p()){if(void 0===p().Modal){const e=new t;Object.defineProperty(p(),"Modal",{get:function(){return e}})}m.debug("\n\t,--. ,--. ,--. ,--. ,-----. ,--.\n\t| .' / ,---. | | `--' | |) /_ ,--.--. `--'\n\t| . ' | .-. | | | ,--. | .-. \\ | .--' ,--.\n\t| |\\ \\ | '-' | | | | | | '--' / | | | |\n\t`--' `--´ `---´ `--' `--' `------´ `--' `--'\n\t🚹 The accessible HTML-Standard | 👉 https://public-ui.github.io | 1.7.13\n\t\t",{forceLog:!0})}else console.warn("You can only initialize KoliBri once.")},M=()=>{!0!==p().adviceShown&&(Object.defineProperty(p(),"adviceShown",{get:function(){return!0}}),m.debug("\nYou are using the KoliBri component library. If you have any suggestions for improvement or find a problem, please contact us:\n\nTicket: https://github.com/public-ui/kolibri/issues/new/choose (for privacy reasons, please use email)\nEmail: kolibri@itzbund.de\n"))};let g=()=>Math.floor(16777215*Math.random()).toString(16);"test"===e&&(g=()=>"nonce");export{m as L,l as a,s as b,o as c,f as d,u as e,h as f,p as g,b as i,g as n,M as r};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["ModalService","constructor","this","lockedElements","Map","modalStack","lockElement","htmlElement","tabIndex","getAttribute","HTMLAnchorElement","HTMLButtonElement","HTMLInputElement","HTMLSelectElement","HTMLTextAreaElement","dataset","kolModal","undefined","set","setAttribute","style","userSelect","unlockElement","value","removeAttribute","delete","unlockLockedElements","forEach","bind","lockFocus","hostElement","excludeElement","HTMLElement","ShadowRoot","shadowRoot","i","children","length","renderModalIfExists","activeElement","has","get","timeout","setTimeout","clearTimeout","focus","size","modalKeys","Array","from","keys","modalRef","_value","display","getDocument","body","maxHeight","overflow","openModal","Log","warn","closeModal","_a","WINDOW","DOCUMENT","configKoliBri","window","Window","document","Document","console","getWindow","META_CONFIG","DEV_MODE","EXPERIMENTAL_MODE","COLOR_CONTRAST_ANALYSIS","getDevMode","getExperimentalMode","getColorContrastAnalysis","mapToArray","msg","isArray","handleClassifier","classifier","shield","label","getShield","options","overwriteStyle","debug","forceLog","info","trace","error","Error","initMeta","meta","querySelector","hasAttribute","includes","getKoliBri","kolibri","KoliBri","Object","defineProperty","writable","initKoliBri","Modal","renderDevAdvice","adviceShown","nonce","Math","floor","random","toString","processEnv"],"sources":["src/components/modal/service.ts","src/utils/dev.utils.ts"],"sourcesContent":["import { getDocument, Log } from '../../utils/dev.utils';\n\ntype ModalContext = {\n\tactiveElement?: HTMLElement;\n};\n\ntype LockedElementContext = {\n\ttabIndex?: string;\n};\n\n/**\n * The modal service is only working client-side!\n */\nexport class ModalService {\n\tprivate lockedElements: Map<HTMLElement, LockedElementContext> = new Map();\n\tprivate modalStack: Map<HTMLElement, ModalContext> = new Map();\n\n\tprivate lockElement(htmlElement: HTMLElement) {\n\t\tconst tabIndex: string | null = htmlElement.getAttribute('tabindex');\n\t\tif (\n\t\t\thtmlElement instanceof HTMLAnchorElement ||\n\t\t\thtmlElement instanceof HTMLButtonElement ||\n\t\t\thtmlElement instanceof HTMLInputElement ||\n\t\t\thtmlElement instanceof HTMLSelectElement ||\n\t\t\thtmlElement instanceof HTMLTextAreaElement ||\n\t\t\ttypeof tabIndex === 'string' ||\n\t\t\thtmlElement.dataset.kolModal !== undefined\n\t\t) {\n\t\t\tif (typeof tabIndex === 'string') {\n\t\t\t\tthis.lockedElements.set(htmlElement, {\n\t\t\t\t\ttabIndex,\n\t\t\t\t});\n\t\t\t} else {\n\t\t\t\tthis.lockedElements.set(htmlElement, {});\n\t\t\t}\n\t\t\thtmlElement.setAttribute('tabindex', '-1');\n\t\t\thtmlElement.setAttribute('aria-hidden', 'true');\n\t\t\thtmlElement.style.userSelect = 'none';\n\t\t}\n\t}\n\n\tprivate unlockElement(value: LockedElementContext, htmlElement: HTMLElement) {\n\t\tif (typeof value.tabIndex === 'string') {\n\t\t\thtmlElement.setAttribute('tabindex', value.tabIndex);\n\t\t} else {\n\t\t\thtmlElement.removeAttribute('tabindex');\n\t\t}\n\t\thtmlElement.removeAttribute('aria-hidden');\n\t\thtmlElement.style.userSelect = 'unset';\n\t\tthis.lockedElements.delete(htmlElement);\n\t}\n\n\tprivate unlockLockedElements(lockedElements: Map<HTMLElement, LockedElementContext>) {\n\t\tlockedElements.forEach(this.unlockElement.bind(this));\n\t}\n\n\tprivate lockFocus(hostElement: HTMLElement | ShadowRoot | null, excludeElement?: HTMLElement) {\n\t\tif (hostElement !== excludeElement && (hostElement instanceof HTMLElement || hostElement instanceof ShadowRoot)) {\n\t\t\tif (hostElement instanceof HTMLElement) {\n\t\t\t\tthis.lockElement(hostElement);\n\t\t\t\tthis.lockFocus(hostElement.shadowRoot, excludeElement);\n\t\t\t}\n\t\t\tfor (let i = 0; i < hostElement.children.length; i++) {\n\t\t\t\tthis.lockFocus(hostElement.children[i] as HTMLElement, excludeElement);\n\t\t\t}\n\t\t}\n\t}\n\n\tprivate renderModalIfExists(activeElement?: HTMLElement) {\n\t\tif (activeElement instanceof HTMLElement) {\n\t\t\tif (this.lockedElements.has(activeElement)) {\n\t\t\t\tthis.unlockElement(this.lockedElements.get(activeElement) as LockedElementContext, activeElement);\n\t\t\t}\n\t\t\tconst timeout = setTimeout(() => {\n\t\t\t\tclearTimeout(timeout);\n\t\t\t\tactiveElement.focus();\n\t\t\t}, 500);\n\t\t}\n\t\tthis.unlockLockedElements(this.lockedElements);\n\t\tif (this.modalStack.size > 0) {\n\t\t\tconst modalKeys = Array.from(this.modalStack.keys());\n\t\t\tconst modalRef = modalKeys[modalKeys.length - 1] as HTMLElement & {\n\t\t\t\t_activeElement: HTMLElement | null; // typo sugger\n\t\t\t};\n\t\t\tthis.modalStack.forEach((_value: ModalContext, htmlElement: HTMLElement) => {\n\t\t\t\tif (modalRef === htmlElement) {\n\t\t\t\t\thtmlElement.style.display = 'inline';\n\t\t\t\t} else {\n\t\t\t\t\thtmlElement.style.display = `none`;\n\t\t\t\t}\n\t\t\t});\n\t\t\tgetDocument().body.style.maxHeight = '100vh';\n\t\t\tgetDocument().body.style.overflow = 'hidden';\n\t\t\tthis.lockFocus(getDocument().body, modalRef);\n\t\t} else {\n\t\t\tgetDocument().body.style.maxHeight = 'unset';\n\t\t\tgetDocument().body.style.overflow = 'unset';\n\t\t}\n\t}\n\n\tpublic openModal(modalRef: HTMLElement, activeElement?: HTMLElement): void {\n\t\tif (modalRef instanceof HTMLElement === false) {\n\t\t\tLog.warn(`[KolModalService] Die DOM-Referenz des Modals ist nicht valide.`);\n\t\t} else {\n\t\t\tthis.modalStack.set(modalRef, {\n\t\t\t\tactiveElement,\n\t\t\t});\n\t\t\tthis.renderModalIfExists();\n\t\t}\n\t}\n\n\tpublic closeModal(modalRef: HTMLElement): void {\n\t\tif (modalRef instanceof HTMLElement === false) {\n\t\t\tLog.warn(`[KolModalService] Die DOM-Referenz des Modals ist nicht valide.`);\n\t\t} else {\n\t\t\tconst activeElement = this.modalStack.get(modalRef)?.activeElement;\n\t\t\tthis.modalStack.delete(modalRef);\n\t\t\tthis.renderModalIfExists(activeElement);\n\t\t}\n\t}\n}\n","import { ModalService } from '../components/modal/service';\nimport { processEnv } from './reuse';\n\nlet WINDOW: Window | null = null;\nlet DOCUMENT: Document | null = null;\n\nexport const configKoliBri = (window: Window): void => {\n\tif (window instanceof Window) {\n\t\tWINDOW = window;\n\t\tif (WINDOW.document instanceof Document) {\n\t\t\tDOCUMENT = window.document;\n\t\t} else {\n\t\t\tconsole.warn(`The given Window has no valid Document.`);\n\t\t}\n\t} else {\n\t\tconsole.warn(`The given Window is not valid.`);\n\t}\n};\n\nexport const getWindow = (): Window => (WINDOW || typeof window === 'undefined' ? (null as unknown as Window) : window);\nexport const getDocument = (): Document => (DOCUMENT || typeof getWindow().document === 'undefined' ? (null as unknown as Document) : getWindow().document);\n\nlet META_CONFIG: string | null = null;\nlet DEV_MODE: boolean | null = null;\nlet EXPERIMENTAL_MODE: boolean | null = null;\nlet COLOR_CONTRAST_ANALYSIS: boolean | null = null;\n\nexport const getDevMode = (): boolean => DEV_MODE === true;\nexport const getExperimentalMode = (): boolean => EXPERIMENTAL_MODE === true;\nexport const getColorContrastAnalysis = (): boolean => COLOR_CONTRAST_ANALYSIS === true;\n\ntype LogShield = {\n\tlabel: string;\n\tstyle: string;\n};\n\ntype LogShieldOptions = {\n\tclassifier?: string;\n\tforceLog?: boolean;\n\toverwriteStyle?: string;\n};\n\nexport class Log {\n\tprivate static shield: LogShield = {\n\t\tlabel: '%cKoliBri',\n\t\tstyle: 'color: white; background: #666; font-weight: bold; padding: .25em .5em; border-radius: 3px; border: 1px solid #000',\n\t};\n\n\tprivate static mapToArray(msg: unknown | unknown[]): unknown[] {\n\t\treturn Array.isArray(msg) ? msg : [msg];\n\t}\n\n\tprivate static handleClassifier(classifier?: string): string {\n\t\tif (typeof classifier === 'string' && classifier.length > 0) {\n\t\t\treturn `${Log.shield.label} | ${classifier}`;\n\t\t} else {\n\t\t\treturn Log.shield.label;\n\t\t}\n\t}\n\n\tprivate static getShield(options?: LogShieldOptions): string[] {\n\t\treturn [Log.handleClassifier(options?.classifier), `${Log.shield.style};${options?.overwriteStyle || ''}`];\n\t}\n\n\tpublic static debug(msg: unknown | unknown[], options?: LogShieldOptions): void {\n\t\tif (DEV_MODE || options?.forceLog === true) {\n\t\t\tconsole.debug(...Log.getShield(options), ...Log.mapToArray(msg));\n\t\t}\n\t}\n\n\tpublic static info(msg: unknown | unknown[], options?: LogShieldOptions): void {\n\t\tif (DEV_MODE || options?.forceLog === true) {\n\t\t\tconsole.info(...Log.getShield(options), ...Log.mapToArray(msg));\n\t\t}\n\t}\n\n\tpublic static trace(msg: unknown | unknown[], options?: LogShieldOptions): void {\n\t\tif (DEV_MODE || options?.forceLog === true) {\n\t\t\tconsole.trace(...Log.getShield(options), ...Log.mapToArray(msg));\n\t\t}\n\t}\n\n\tpublic static warn(msg: unknown | unknown[], options?: LogShieldOptions): void {\n\t\tif (DEV_MODE || options?.forceLog === true) {\n\t\t\tconsole.warn(...Log.getShield(options), ...Log.mapToArray(msg));\n\t\t}\n\t}\n\n\tpublic static error(msg: unknown | unknown[], options?: LogShieldOptions): void {\n\t\tif (DEV_MODE || options?.forceLog === true) {\n\t\t\tconsole.error(...Log.getShield(options), ...Log.mapToArray(msg));\n\t\t}\n\t}\n\n\tpublic static throw(msg: unknown | unknown[], options?: LogShieldOptions): void {\n\t\tif (DEV_MODE || options?.forceLog === true) {\n\t\t\tthrow new Error(...Log.getShield(options), ...Log.mapToArray(msg));\n\t\t}\n\t}\n}\n\nconst initMeta = (): void => {\n\tif (DEV_MODE === null && EXPERIMENTAL_MODE === null && COLOR_CONTRAST_ANALYSIS === null) {\n\t\tconst meta = getDocument().querySelector('meta[name=\"kolibri\"]');\n\t\tif (meta && meta.hasAttribute('content')) {\n\t\t\tMETA_CONFIG = meta.getAttribute('content');\n\t\t\tif (typeof META_CONFIG === 'string') {\n\t\t\t\tDEV_MODE = META_CONFIG.includes('dev-mode=true');\n\t\t\t\tEXPERIMENTAL_MODE = META_CONFIG.includes('experimental-mode=true');\n\t\t\t\tCOLOR_CONTRAST_ANALYSIS = META_CONFIG.includes('color-contrast-analysis=true');\n\t\t\t}\n\t\t}\n\t} else {\n\t\tconsole.warn(`You can only initialize DEV_MODE and COLOR_CONTRAST_ANALYSIS once.`);\n\t}\n};\n\nconst getKoliBri = (): Record<string, unknown> => {\n\tlet kolibri = getWindow().KoliBri;\n\tif (kolibri === undefined) {\n\t\tkolibri = {};\n\t\tObject.defineProperty(getWindow(), 'KoliBri', {\n\t\t\tvalue: kolibri,\n\t\t\twritable: false,\n\t\t});\n\t}\n\treturn kolibri;\n};\n\nexport const initKoliBri = (): void => {\n\tif (getKoliBri().Modal === undefined) {\n\t\tconst Modal = new ModalService();\n\t\tObject.defineProperty(getKoliBri(), 'Modal', {\n\t\t\tget: function (): ModalService {\n\t\t\t\treturn Modal;\n\t\t\t},\n\t\t});\n\t\tinitMeta();\n\t\tLog.debug(\n\t\t\t`\n\t,--. ,--. ,--. ,--. ,-----. ,--.\n\t| .' / ,---. | | \\`--' | |) /_ ,--.--. \\`--'\n\t| . ' | .-. | | | ,--. | .-. \\\\ | .--' ,--.\n\t| |\\\\ \\\\ | '-' | | | | | | '--' / | | | |\n\t\\`--' \\`--´ \\`---´ \\`--' \\`--' \\`------´ \\`--' \\`--'\n\t🚹 The accessible HTML-Standard | 👉 https://public-ui.github.io | 1.7.11\n\t\t`,\n\t\t\t{\n\t\t\t\tforceLog: true,\n\t\t\t}\n\t\t);\n\t} else {\n\t\tconsole.warn(`You can only initialize KoliBri once.`);\n\t}\n};\nexport { getKoliBri };\n\nexport const renderDevAdvice = (): void => {\n\tif (getKoliBri().adviceShown !== true) {\n\t\tObject.defineProperty(getKoliBri(), 'adviceShown', {\n\t\t\tget: function () {\n\t\t\t\treturn true;\n\t\t\t},\n\t\t});\n\t\tLog.debug(\n\t\t\t`\nYou are using the KoliBri component library. If you have any suggestions for improvement or find a problem, please contact us:\n\nTicket: https://github.com/public-ui/kolibri/issues/new/choose (for privacy reasons, please use email)\nEmail: kolibri@itzbund.de\n`\n\t\t);\n\t}\n};\n\nlet nonce = (): string => Math.floor(Math.random() * 16777215).toString(16);\n\nif (processEnv === 'test') {\n\tnonce = (): string => 'nonce';\n}\n\nexport { nonce };\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["ModalService","constructor","this","lockedElements","Map","modalStack","lockElement","htmlElement","tabIndex","getAttribute","HTMLAnchorElement","HTMLButtonElement","HTMLInputElement","HTMLSelectElement","HTMLTextAreaElement","dataset","kolModal","undefined","set","setAttribute","style","userSelect","unlockElement","value","removeAttribute","delete","unlockLockedElements","forEach","bind","lockFocus","hostElement","excludeElement","HTMLElement","ShadowRoot","shadowRoot","i","children","length","renderModalIfExists","activeElement","has","get","timeout","setTimeout","clearTimeout","focus","size","modalKeys","Array","from","keys","modalRef","_value","display","getDocument","body","maxHeight","overflow","openModal","Log","warn","closeModal","_a","WINDOW","DOCUMENT","configKoliBri","window","Window","document","Document","console","getWindow","META_CONFIG","DEV_MODE","EXPERIMENTAL_MODE","COLOR_CONTRAST_ANALYSIS","getDevMode","getExperimentalMode","getColorContrastAnalysis","mapToArray","msg","isArray","handleClassifier","classifier","shield","label","getShield","options","overwriteStyle","debug","forceLog","info","trace","error","Error","initMeta","meta","querySelector","hasAttribute","includes","getKoliBri","kolibri","KoliBri","Object","defineProperty","writable","initKoliBri","Modal","renderDevAdvice","adviceShown","nonce","Math","floor","random","toString","processEnv"],"sources":["src/components/modal/service.ts","src/utils/dev.utils.ts"],"sourcesContent":["import { getDocument, Log } from '../../utils/dev.utils';\n\ntype ModalContext = {\n\tactiveElement?: HTMLElement;\n};\n\ntype LockedElementContext = {\n\ttabIndex?: string;\n};\n\n/**\n * The modal service is only working client-side!\n */\nexport class ModalService {\n\tprivate lockedElements: Map<HTMLElement, LockedElementContext> = new Map();\n\tprivate modalStack: Map<HTMLElement, ModalContext> = new Map();\n\n\tprivate lockElement(htmlElement: HTMLElement) {\n\t\tconst tabIndex: string | null = htmlElement.getAttribute('tabindex');\n\t\tif (\n\t\t\thtmlElement instanceof HTMLAnchorElement ||\n\t\t\thtmlElement instanceof HTMLButtonElement ||\n\t\t\thtmlElement instanceof HTMLInputElement ||\n\t\t\thtmlElement instanceof HTMLSelectElement ||\n\t\t\thtmlElement instanceof HTMLTextAreaElement ||\n\t\t\ttypeof tabIndex === 'string' ||\n\t\t\thtmlElement.dataset.kolModal !== undefined\n\t\t) {\n\t\t\tif (typeof tabIndex === 'string') {\n\t\t\t\tthis.lockedElements.set(htmlElement, {\n\t\t\t\t\ttabIndex,\n\t\t\t\t});\n\t\t\t} else {\n\t\t\t\tthis.lockedElements.set(htmlElement, {});\n\t\t\t}\n\t\t\thtmlElement.setAttribute('tabindex', '-1');\n\t\t\thtmlElement.setAttribute('aria-hidden', 'true');\n\t\t\thtmlElement.style.userSelect = 'none';\n\t\t}\n\t}\n\n\tprivate unlockElement(value: LockedElementContext, htmlElement: HTMLElement) {\n\t\tif (typeof value.tabIndex === 'string') {\n\t\t\thtmlElement.setAttribute('tabindex', value.tabIndex);\n\t\t} else {\n\t\t\thtmlElement.removeAttribute('tabindex');\n\t\t}\n\t\thtmlElement.removeAttribute('aria-hidden');\n\t\thtmlElement.style.userSelect = 'unset';\n\t\tthis.lockedElements.delete(htmlElement);\n\t}\n\n\tprivate unlockLockedElements(lockedElements: Map<HTMLElement, LockedElementContext>) {\n\t\tlockedElements.forEach(this.unlockElement.bind(this));\n\t}\n\n\tprivate lockFocus(hostElement: HTMLElement | ShadowRoot | null, excludeElement?: HTMLElement) {\n\t\tif (hostElement !== excludeElement && (hostElement instanceof HTMLElement || hostElement instanceof ShadowRoot)) {\n\t\t\tif (hostElement instanceof HTMLElement) {\n\t\t\t\tthis.lockElement(hostElement);\n\t\t\t\tthis.lockFocus(hostElement.shadowRoot, excludeElement);\n\t\t\t}\n\t\t\tfor (let i = 0; i < hostElement.children.length; i++) {\n\t\t\t\tthis.lockFocus(hostElement.children[i] as HTMLElement, excludeElement);\n\t\t\t}\n\t\t}\n\t}\n\n\tprivate renderModalIfExists(activeElement?: HTMLElement) {\n\t\tif (activeElement instanceof HTMLElement) {\n\t\t\tif (this.lockedElements.has(activeElement)) {\n\t\t\t\tthis.unlockElement(this.lockedElements.get(activeElement) as LockedElementContext, activeElement);\n\t\t\t}\n\t\t\tconst timeout = setTimeout(() => {\n\t\t\t\tclearTimeout(timeout);\n\t\t\t\tactiveElement.focus();\n\t\t\t}, 500);\n\t\t}\n\t\tthis.unlockLockedElements(this.lockedElements);\n\t\tif (this.modalStack.size > 0) {\n\t\t\tconst modalKeys = Array.from(this.modalStack.keys());\n\t\t\tconst modalRef = modalKeys[modalKeys.length - 1] as HTMLElement & {\n\t\t\t\t_activeElement: HTMLElement | null; // typo sugger\n\t\t\t};\n\t\t\tthis.modalStack.forEach((_value: ModalContext, htmlElement: HTMLElement) => {\n\t\t\t\tif (modalRef === htmlElement) {\n\t\t\t\t\thtmlElement.style.display = 'inline';\n\t\t\t\t} else {\n\t\t\t\t\thtmlElement.style.display = `none`;\n\t\t\t\t}\n\t\t\t});\n\t\t\tgetDocument().body.style.maxHeight = '100vh';\n\t\t\tgetDocument().body.style.overflow = 'hidden';\n\t\t\tthis.lockFocus(getDocument().body, modalRef);\n\t\t} else {\n\t\t\tgetDocument().body.style.maxHeight = 'unset';\n\t\t\tgetDocument().body.style.overflow = 'unset';\n\t\t}\n\t}\n\n\tpublic openModal(modalRef: HTMLElement, activeElement?: HTMLElement): void {\n\t\tif (modalRef instanceof HTMLElement === false) {\n\t\t\tLog.warn(`[KolModalService] Die DOM-Referenz des Modals ist nicht valide.`);\n\t\t} else {\n\t\t\tthis.modalStack.set(modalRef, {\n\t\t\t\tactiveElement,\n\t\t\t});\n\t\t\tthis.renderModalIfExists();\n\t\t}\n\t}\n\n\tpublic closeModal(modalRef: HTMLElement): void {\n\t\tif (modalRef instanceof HTMLElement === false) {\n\t\t\tLog.warn(`[KolModalService] Die DOM-Referenz des Modals ist nicht valide.`);\n\t\t} else {\n\t\t\tconst activeElement = this.modalStack.get(modalRef)?.activeElement;\n\t\t\tthis.modalStack.delete(modalRef);\n\t\t\tthis.renderModalIfExists(activeElement);\n\t\t}\n\t}\n}\n","import { ModalService } from '../components/modal/service';\nimport { processEnv } from './reuse';\n\nlet WINDOW: Window | null = null;\nlet DOCUMENT: Document | null = null;\n\nexport const configKoliBri = (window: Window): void => {\n\tif (window instanceof Window) {\n\t\tWINDOW = window;\n\t\tif (WINDOW.document instanceof Document) {\n\t\t\tDOCUMENT = window.document;\n\t\t} else {\n\t\t\tconsole.warn(`The given Window has no valid Document.`);\n\t\t}\n\t} else {\n\t\tconsole.warn(`The given Window is not valid.`);\n\t}\n};\n\nexport const getWindow = (): Window => (WINDOW || typeof window === 'undefined' ? (null as unknown as Window) : window);\nexport const getDocument = (): Document => (DOCUMENT || typeof getWindow().document === 'undefined' ? (null as unknown as Document) : getWindow().document);\n\nlet META_CONFIG: string | null = null;\nlet DEV_MODE: boolean | null = null;\nlet EXPERIMENTAL_MODE: boolean | null = null;\nlet COLOR_CONTRAST_ANALYSIS: boolean | null = null;\n\nexport const getDevMode = (): boolean => DEV_MODE === true;\nexport const getExperimentalMode = (): boolean => EXPERIMENTAL_MODE === true;\nexport const getColorContrastAnalysis = (): boolean => COLOR_CONTRAST_ANALYSIS === true;\n\ntype LogShield = {\n\tlabel: string;\n\tstyle: string;\n};\n\ntype LogShieldOptions = {\n\tclassifier?: string;\n\tforceLog?: boolean;\n\toverwriteStyle?: string;\n};\n\nexport class Log {\n\tprivate static shield: LogShield = {\n\t\tlabel: '%cKoliBri',\n\t\tstyle: 'color: white; background: #666; font-weight: bold; padding: .25em .5em; border-radius: 3px; border: 1px solid #000',\n\t};\n\n\tprivate static mapToArray(msg: unknown | unknown[]): unknown[] {\n\t\treturn Array.isArray(msg) ? msg : [msg];\n\t}\n\n\tprivate static handleClassifier(classifier?: string): string {\n\t\tif (typeof classifier === 'string' && classifier.length > 0) {\n\t\t\treturn `${Log.shield.label} | ${classifier}`;\n\t\t} else {\n\t\t\treturn Log.shield.label;\n\t\t}\n\t}\n\n\tprivate static getShield(options?: LogShieldOptions): string[] {\n\t\treturn [Log.handleClassifier(options?.classifier), `${Log.shield.style};${options?.overwriteStyle || ''}`];\n\t}\n\n\tpublic static debug(msg: unknown | unknown[], options?: LogShieldOptions): void {\n\t\tif (DEV_MODE || options?.forceLog === true) {\n\t\t\tconsole.debug(...Log.getShield(options), ...Log.mapToArray(msg));\n\t\t}\n\t}\n\n\tpublic static info(msg: unknown | unknown[], options?: LogShieldOptions): void {\n\t\tif (DEV_MODE || options?.forceLog === true) {\n\t\t\tconsole.info(...Log.getShield(options), ...Log.mapToArray(msg));\n\t\t}\n\t}\n\n\tpublic static trace(msg: unknown | unknown[], options?: LogShieldOptions): void {\n\t\tif (DEV_MODE || options?.forceLog === true) {\n\t\t\tconsole.trace(...Log.getShield(options), ...Log.mapToArray(msg));\n\t\t}\n\t}\n\n\tpublic static warn(msg: unknown | unknown[], options?: LogShieldOptions): void {\n\t\tif (DEV_MODE || options?.forceLog === true) {\n\t\t\tconsole.warn(...Log.getShield(options), ...Log.mapToArray(msg));\n\t\t}\n\t}\n\n\tpublic static error(msg: unknown | unknown[], options?: LogShieldOptions): void {\n\t\tif (DEV_MODE || options?.forceLog === true) {\n\t\t\tconsole.error(...Log.getShield(options), ...Log.mapToArray(msg));\n\t\t}\n\t}\n\n\tpublic static throw(msg: unknown | unknown[], options?: LogShieldOptions): void {\n\t\tif (DEV_MODE || options?.forceLog === true) {\n\t\t\tthrow new Error(...Log.getShield(options), ...Log.mapToArray(msg));\n\t\t}\n\t}\n}\n\nconst initMeta = (): void => {\n\tif (DEV_MODE === null && EXPERIMENTAL_MODE === null && COLOR_CONTRAST_ANALYSIS === null) {\n\t\tconst meta = getDocument().querySelector('meta[name=\"kolibri\"]');\n\t\tif (meta && meta.hasAttribute('content')) {\n\t\t\tMETA_CONFIG = meta.getAttribute('content');\n\t\t\tif (typeof META_CONFIG === 'string') {\n\t\t\t\tDEV_MODE = META_CONFIG.includes('dev-mode=true');\n\t\t\t\tEXPERIMENTAL_MODE = META_CONFIG.includes('experimental-mode=true');\n\t\t\t\tCOLOR_CONTRAST_ANALYSIS = META_CONFIG.includes('color-contrast-analysis=true');\n\t\t\t}\n\t\t}\n\t} else {\n\t\tconsole.warn(`You can only initialize DEV_MODE and COLOR_CONTRAST_ANALYSIS once.`);\n\t}\n};\n\nconst getKoliBri = (): Record<string, unknown> => {\n\tlet kolibri = getWindow().KoliBri;\n\tif (kolibri === undefined) {\n\t\tkolibri = {};\n\t\tObject.defineProperty(getWindow(), 'KoliBri', {\n\t\t\tvalue: kolibri,\n\t\t\twritable: false,\n\t\t});\n\t}\n\treturn kolibri;\n};\n\nexport const initKoliBri = (): void => {\n\tinitMeta();\n\tif (getKoliBri() === undefined) {\n\t\tif (getKoliBri().Modal === undefined) {\n\t\t\tconst Modal = new ModalService();\n\t\t\tObject.defineProperty(getKoliBri(), 'Modal', {\n\t\t\t\tget: function (): ModalService {\n\t\t\t\t\treturn Modal;\n\t\t\t\t},\n\t\t\t});\n\t\t}\n\t\tLog.debug(\n\t\t\t`\n\t,--. ,--. ,--. ,--. ,-----. ,--.\n\t| .' / ,---. | | \\`--' | |) /_ ,--.--. \\`--'\n\t| . ' | .-. | | | ,--. | .-. \\\\ | .--' ,--.\n\t| |\\\\ \\\\ | '-' | | | | | | '--' / | | | |\n\t\\`--' \\`--´ \\`---´ \\`--' \\`--' \\`------´ \\`--' \\`--'\n\t🚹 The accessible HTML-Standard | 👉 https://public-ui.github.io | 1.7.13\n\t\t`,\n\t\t\t{\n\t\t\t\tforceLog: true,\n\t\t\t}\n\t\t);\n\t} else {\n\t\tconsole.warn(`You can only initialize KoliBri once.`);\n\t}\n};\nexport { getKoliBri };\n\nexport const renderDevAdvice = (): void => {\n\tif (getKoliBri().adviceShown !== true) {\n\t\tObject.defineProperty(getKoliBri(), 'adviceShown', {\n\t\t\tget: function () {\n\t\t\t\treturn true;\n\t\t\t},\n\t\t});\n\t\tLog.debug(\n\t\t\t`\nYou are using the KoliBri component library. If you have any suggestions for improvement or find a problem, please contact us:\n\nTicket: https://github.com/public-ui/kolibri/issues/new/choose (for privacy reasons, please use email)\nEmail: kolibri@itzbund.de\n`\n\t\t);\n\t}\n};\n\nlet nonce = (): string => Math.floor(Math.random() * 16777215).toString(16);\n\nif (processEnv === 'test') {\n\tnonce = (): string => 'nonce';\n}\n\nexport { nonce };\n"],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* KoliBri - The accessible HTML-Standard
|
|
3
3
|
*/
|
|
4
|
-
import{i as t,e as o,r as s,a as e,L as a,d as r,f as i,g as l}from"./dev.utils-
|
|
4
|
+
import{i as t,e as o,r as s,a as e,L as a,d as r,f as i,g as l}from"./dev.utils-3d1ba6ea.js";import{n,q as p,k as c,t as f,u as d,p as L,v as m}from"./prop.validators-c2b3a276.js";import"./reuse-d79ab469.js";import"./index-c88c7ecf.js";import"./a11y.tipps-90beea3f.js";function u(t,e){try{Object.defineProperty(l(),t,{get:function(){return e}})}catch(e){a.debug(`KoliBri property ${t} is already bind.`)}}const v=(t,e)=>a.debug(`${t} ${e?"":"not "}activated`),h=()=>{if(t(),o()){s(),u("a11yColorContrast",p),u("querySelector",c),u("querySelectorAll",f),u("querySelectorColors",d),u("utils",(function(){return n})),u("parseJson",L),u("stringifyJson",m);const t=e().body,a=e().createElement("svg");if(a.setAttribute("aria-label","KoliBri-DevTools"),a.setAttribute("xmlns","http://www.w3.org/2000/svg"),a.setAttribute("role","toolbar"),a.setAttribute("style","position: fixed;color: black;font-size: 200%;bottom: 0.25rem;right: 0.25rem;"),a.innerHTML='<svg\n xmlns="http://www.w3.org/2000/svg"\n width="50"\n height="50"\n viewBox="0 0 600 600"\n>\n <path d="M353 322L213 304V434L353 322Z" fill="#047" />\n <path d="M209 564V304L149 434L209 564Z" fill="#047" />\n <path d="M357 316L417 250L361 210L275 244L357 316Z" fill="#047" />\n <path d="M353 318L35 36L213 300L353 318Z" fill="#047" />\n <path d="M329 218L237 92L250 222L272 241L329 218Z" fill="#047" />\n <path d="M391 286L565 272L421 252L391 286Z" fill="#047" />\n</svg>',e().body.appendChild(a),v("Development mode",o()),v("Experimental mode",r()),v("Color contrast analysis",i()),i()){const o=setTimeout((()=>{clearTimeout(o),setInterval((()=>{n.queryHtmlElementColors(e().createElement("div"),p(t),!1,!1)}),1e4)}),2500)}}};export{h as initialize};
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
/*!
|
|
2
|
+
* KoliBri - The accessible HTML-Standard
|
|
3
|
+
*/
|
|
4
|
+
import{h as r}from"./index-cf7b0813.js";const e=({_alert:e,_error:o,_hideError:a,_id:i})=>r("kol-alert",{"aria-hidden":"true",id:`${i}-error`,_alert:e,_type:"error",class:{error:!0,"visually-hidden":!0===a}},o);export{e as F};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["FormFieldMsg","_alert","_error","_hideError","_id","h","id","_type","class","error"],"sources":["src/components/@shared/form-field-msg.tsx"],"sourcesContent":["import type { FunctionalComponent } from '@stencil/core';\nimport { h } from '@stencil/core';\nimport type { IdPropType } from '../../components';\nimport type { AlertPropType } from '../../types/props/alert';\nimport type { HideErrorPropType } from '../../types/props/hide-error';\n\ntype FormFieldMsgProps = {\n\t_alert?: AlertPropType;\n\t_error?: string;\n\t_hideError?: HideErrorPropType;\n\t_id: IdPropType;\n};\n\nexport const FormFieldMsg: FunctionalComponent<FormFieldMsgProps> = ({ _alert, _error, _hideError, _id }) => (\n\t<kol-alert\n\t\t/**\n\t\t * This message is read out by screen readers if the input field\n\t\t * refers to the message using the <code>aria-describedby</code>\n\t\t * attribute. It also does this if <code>aria-hidden=true</code>\n\t\t * is set.\n\t\t */\n\t\taria-hidden=\"true\"\n\t\tid={`${_id}-error`}\n\t\t_alert={_alert}\n\t\t_type=\"error\"\n\t\tclass={{\n\t\t\terror: true,\n\t\t\t'visually-hidden': _hideError === true,\n\t\t}}\n\t>\n\t\t{_error}\n\t</kol-alert>\n);\n"],"mappings":";;;8CAaaA,EAAuD,EAAGC,SAAQC,SAAQC,aAAYC,SAClGC,EAAA,2BAOa,OACZC,GAAI,GAAGF,UACPH,OAAQA,EACRM,MAAM,QACNC,MAAO,CACNC,MAAO,KACP,kBAAmBN,IAAe,OAGlCD,U"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* KoliBri - The accessible HTML-Standard
|
|
3
3
|
*/
|
|
4
|
-
import{g as e}from"./index-
|
|
4
|
+
import{g as e}from"./index-cfc376ee.js";import{d as i}from"./a11y.tipps-90beea3f.js";const n={error:"Fehler",warning:"Warnung",info:"Hinweis",success:"Erfolg",message:"Nachricht",close:"Schließen","form-description":"Formular-Felder, die mit einem Sternchen (*) gekennzeichnet sind, sind Pflichtangaben.",of:"von",characters:"Zeichen",new:"Neu","no-entries":"Es sind keine Einträge vorhanden.","change-order":"Sortierung von {{colLabel}} ändern","action-running":"Aktion wird ausgeführt...","action-done":"Aktion abgeschlossen",pagination:"Paginierung","page-first":"Direkt zur ersten Seite","page-back":"Eine Seite zurück","page-next":"Eine Seite weiter","page-last":"Direkt zur letzten Seite","entries-per-site":"Einträge pro Seite",page:"Seite","page-current":"Seite {{page}}","page-selected":"Seite {{page}} ist ausgewählt","page-per-site":"{{entries}} Einträge pro Seite","nav-maximize":"Navigation maximieren","nav-minimize":"Navigation minimieren","logo-description":"Logo {{orgShort}}. Bundesadler mit Flaggenstab und Schriftzug {{orgLong}}","open-link-in-tab":"Öffnet in neuem Tab.","kolibri-logo":"Logo von KoliBri","table-pagination-label":"Paginierung für die Tabelle {{label}}","avatar-alt":"Avatar von {{name}}","toast-close-all":"Alle schließen",version:"Versionsnummer","error-list":"Fehlerliste","error-list-message":"Bitte korrigieren Sie folgende Fehler:"},a={error:"Error",warning:"Warning",info:"Note",success:"Success",message:"Message",close:"Close","form-description":"Form fields marked with an asterisk (*) are mandatory.",of:"of",characters:"characters",new:"New","no-entries":"No entries available.","change-order":"Change order of {{colLabel}}","action-running":"Action is running...","action-done":"Action done",pagination:"Pagination","page-first":"Directly to the first page","page-back":"One page back","page-next":"One page further","page-last":"Directly to the last page","entries-per-site":"Entries per page",page:"Page","page-current":"Page {{page}}","page-selected":"Page {{page}} is selected","page-per-site":"{{entries}} entries per page","nav-maximize":"Maximize","nav-minimize":"Minimize","logo-description":"Logo {{orgShort}}. Federal eagle with flag staff and lettering {{orgLong}}","open-link-in-tab":"Opens in new tab.","kolibri-logo":"KoliBri logo","table-pagination-label":"Pagination for table {{label}}","avatar-alt":"Avatar of {{name}}","toast-close-all":"Close all",version:"Version number","error-list":"Error list","error-list-message":"Please correct the following errors"},r=e=>Object.keys(e).reduce(((i,a)=>(i[`kol-${a}`]=e[a],i)),{}),t=new Set([e=>e("en",r(a)),e=>e("de",r(n))]),o=(a,n)=>{const r=e();if(void 0===r)return i("[I18n] I18nService not available! Please call the global register function."),a;let o=r.translate(a,n);return o===a&&(i("[I18n] Locales not initialized! Initialize default locales automatically."),t.forEach((e=>e(((e,i)=>(r.addResourceBundle(e,i),e))))),o=r.translate(a,n)),o};export{o as a,t};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* KoliBri - The accessible HTML-Standard
|
|
3
3
|
*/
|
|
4
|
-
import{o,p as t,w as i}from"./prop.validators-
|
|
4
|
+
import{o,p as t,w as i}from"./prop.validators-c2b3a276.js";import{i as e,b as n,c as l}from"./reuse-d79ab469.js";const c=(t,o,i)=>{l(i)?t[o]=i:e(i,1)&&(t[o]={icon:i})},s=t=>{let o={};return e(t,1)?o={left:{icon:t}}:"object"==typeof t&&null!==t&&(c(o,"top",t.top),c(o,"right",t.right),c(o,"bottom",t.bottom),c(o,"left",t.left)),o},a=t=>{var o,e,i;if(null===(o=t.nextState)||void 0===o?void 0:o.has("_icons")){const o=null===(e=t.nextState)||void 0===e?void 0:e.get("_icons");null===(i=t.nextState)||void 0===i||i.set("_icons",s(o))}},f=t=>"object"==typeof t&&null!==t&&(void 0===t.style||n(t.style))&&e(t.icon,1),r=(l,n,s={})=>{o(n,(()=>{var o;try{n=t(n)}catch(o){}i(l,"_icons",(t=>null===t||e(t,1)||"object"==typeof t&&null!==t&&(e(t.left,1)||f(t.left)||e(t.right,1)||f(t.right)||e(t.top,1)||f(t.top)||e(t.bottom,1)||f(t.bottom))),new Set(["KoliBriIcon"]),n,Object.assign(Object.assign({},s),{defaultValue:{},hooks:{afterPatch:null===(o=s.hooks)||void 0===o?void 0:o.afterPatch,beforePatch:(t,o,e,i)=>{var l,n;"function"==typeof(null===(l=s.hooks)||void 0===l?void 0:l.beforePatch)&&(null===(n=s.hooks)||void 0===n||n.beforePatch(t,o,e,i)),a(e)}}}))}))},d=(t,o)=>{i(t,"_iconAlign",(t=>"left"===t||"right"===t),new Set(["Alignment {left, right, top, bottom}"]),o,{hooks:{beforePatch:()=>{a(t)}}})};export{f as i,r as v,d as w};
|