@public-ui/components 1.5.3 → 1.6.0-rc.1
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/cheat-sheet.html +33 -24
- package/custom-elements.json +81 -3
- package/dist/cjs/{app-globals-deb2d36b.js → app-globals-a70c12d0.js} +1 -1
- package/dist/cjs/{app-globals-deb2d36b.js.map → app-globals-a70c12d0.js.map} +1 -1
- package/dist/cjs/{controller-361ba1ef.js → controller-42d1f729.js} +1 -1
- package/dist/cjs/controller-42d1f729.js.map +1 -0
- package/dist/cjs/{controller-c828f7c8.js → controller-86b1d5ea.js} +1 -1
- package/dist/cjs/controller-86b1d5ea.js.map +1 -0
- package/dist/cjs/controller-a4d41073.js +4 -0
- package/dist/cjs/controller-a4d41073.js.map +1 -0
- package/dist/cjs/{controller-dc5aca49.js → controller-efc49b38.js} +1 -1
- package/dist/cjs/controller-efc49b38.js.map +1 -0
- package/dist/cjs/{controller-icon-6ed19132.js → controller-icon-84ab02f7.js} +1 -1
- package/dist/cjs/{controller-icon-6ed19132.js.map → controller-icon-84ab02f7.js.map} +1 -1
- package/dist/cjs/dev.utils-d69c0a9f.js.map +1 -1
- package/dist/cjs/floating-ui.dom.esm-03ac0b3f.js +4 -0
- package/dist/cjs/floating-ui.dom.esm-03ac0b3f.js.map +1 -0
- package/dist/cjs/index-94bf4fa8.js +5 -0
- package/dist/cjs/index-94bf4fa8.js.map +1 -0
- 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-alert-wc_2.cjs.entry.js +1 -1
- package/dist/cjs/kol-alert-wc_2.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-alert.cjs.entry.js +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-button-group-wc.cjs.entry.js +1 -1
- package/dist/cjs/kol-button-group.cjs.entry.js +1 -1
- package/dist/cjs/kol-button-link.cjs.entry.js +1 -1
- package/dist/cjs/kol-button-wc_3.cjs.entry.js +1 -1
- package/dist/cjs/kol-button.cjs.entry.js +1 -1
- package/dist/cjs/kol-card.cjs.entry.js +1 -1
- package/dist/cjs/kol-details.cjs.entry.js +1 -1
- package/dist/cjs/kol-form.cjs.entry.js +1 -1
- package/dist/cjs/kol-heading.cjs.entry.js +1 -1
- package/dist/cjs/kol-icon-font-awesome.cjs.entry.js +1 -1
- package/dist/cjs/kol-icon-icofont.cjs.entry.js +1 -1
- package/dist/cjs/kol-icon.cjs.entry.js +1 -1
- package/dist/cjs/kol-image.cjs.entry.js +1 -1
- package/dist/cjs/kol-indented-text.cjs.entry.js +1 -1
- package/dist/cjs/kol-input-adapter-leanup.cjs.entry.js +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-kolibri.cjs.entry.js +1 -1
- package/dist/cjs/kol-link-button.cjs.entry.js +1 -1
- package/dist/cjs/kol-link-group.cjs.entry.js +1 -1
- package/dist/cjs/kol-link-wc.cjs.entry.js +1 -1
- package/dist/cjs/kol-link.cjs.entry.js +1 -1
- package/dist/cjs/kol-logo.cjs.entry.js +1 -1
- package/dist/cjs/kol-modal.cjs.entry.js +1 -1
- package/dist/cjs/kol-nav.cjs.entry.js +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.cjs.entry.js +1 -1
- package/dist/cjs/kol-progress.cjs.entry.js +1 -1
- package/dist/cjs/kol-quote.cjs.entry.js +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-span.cjs.entry.js +1 -1
- package/dist/cjs/kol-spin.cjs.entry.js +1 -1
- package/dist/cjs/kol-split-button.cjs.entry.js +1 -1
- package/dist/cjs/kol-symbol.cjs.entry.js +1 -1
- package/dist/cjs/kol-table.cjs.entry.js +1 -1
- package/dist/cjs/kol-tabs.cjs.entry.js +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.cjs.entry.js +1 -1
- package/dist/cjs/kol-tooltip.cjs.entry.js +1 -1
- package/dist/cjs/kol-version.cjs.entry.js +1 -1
- package/dist/cjs/kolibri.cjs.js +1 -1
- package/dist/cjs/kolibri.cjs.js.map +1 -1
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/cjs/loader.cjs.js.map +1 -1
- package/dist/cjs/prop.validators-0e600d26.js.map +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/component7.js +1 -1
- package/dist/components/component7.js.map +1 -1
- package/dist/components/controller-icon.js +1 -1
- package/dist/components/controller-icon.js.map +1 -1
- package/dist/components/controller.js +1 -1
- package/dist/components/controller.js.map +1 -1
- package/dist/components/controller2.js.map +1 -1
- package/dist/components/controller3.js.map +1 -1
- package/dist/components/controller4.js +1 -1
- package/dist/components/controller4.js.map +1 -1
- package/dist/components/floating-ui.dom.esm.js +1 -1
- package/dist/components/floating-ui.dom.esm.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-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-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-textarea.js +1 -1
- package/dist/components/kol-textarea.js.map +1 -1
- package/dist/components/prop.validators.js.map +1 -1
- package/dist/esm/{app-globals-1e2df332.js → app-globals-037e6656.js} +1 -1
- package/dist/esm/{app-globals-1e2df332.js.map → app-globals-037e6656.js.map} +1 -1
- package/dist/esm/{controller-3ae042db.js → controller-3f613951.js} +1 -1
- package/dist/esm/controller-3f613951.js.map +1 -0
- package/dist/esm/{controller-6f59f733.js → controller-4b599938.js} +1 -1
- package/dist/esm/controller-4b599938.js.map +1 -0
- package/dist/esm/{controller-9b769c83.js → controller-bd4d58e4.js} +1 -1
- package/dist/esm/controller-bd4d58e4.js.map +1 -0
- package/dist/esm/controller-e02d4577.js +4 -0
- package/dist/esm/controller-e02d4577.js.map +1 -0
- package/dist/esm/{controller-icon-8d8c747a.js → controller-icon-1255b762.js} +1 -1
- package/dist/esm/{controller-icon-8d8c747a.js.map → controller-icon-1255b762.js.map} +1 -1
- package/dist/esm/dev.utils-157f0499.js.map +1 -1
- package/dist/esm/floating-ui.dom.esm-74010e65.js +4 -0
- package/dist/esm/floating-ui.dom.esm-74010e65.js.map +1 -0
- package/dist/esm/index-34c3d6f8.js +5 -0
- package/dist/esm/index-34c3d6f8.js.map +1 -0
- 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-alert-wc_2.entry.js +1 -1
- package/dist/esm/kol-alert-wc_2.entry.js.map +1 -1
- package/dist/esm/kol-alert.entry.js +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-button-group-wc.entry.js +1 -1
- package/dist/esm/kol-button-group.entry.js +1 -1
- package/dist/esm/kol-button-link.entry.js +1 -1
- package/dist/esm/kol-button-wc_3.entry.js +1 -1
- package/dist/esm/kol-button.entry.js +1 -1
- package/dist/esm/kol-card.entry.js +1 -1
- package/dist/esm/kol-details.entry.js +1 -1
- package/dist/esm/kol-form.entry.js +1 -1
- package/dist/esm/kol-heading.entry.js +1 -1
- package/dist/esm/kol-icon-font-awesome.entry.js +1 -1
- package/dist/esm/kol-icon-icofont.entry.js +1 -1
- package/dist/esm/kol-icon.entry.js +1 -1
- package/dist/esm/kol-image.entry.js +1 -1
- package/dist/esm/kol-indented-text.entry.js +1 -1
- package/dist/esm/kol-input-adapter-leanup.entry.js +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-kolibri.entry.js +1 -1
- package/dist/esm/kol-link-button.entry.js +1 -1
- package/dist/esm/kol-link-group.entry.js +1 -1
- package/dist/esm/kol-link-wc.entry.js +1 -1
- package/dist/esm/kol-link.entry.js +1 -1
- package/dist/esm/kol-logo.entry.js +1 -1
- package/dist/esm/kol-modal.entry.js +1 -1
- package/dist/esm/kol-nav.entry.js +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.entry.js +1 -1
- package/dist/esm/kol-progress.entry.js +1 -1
- package/dist/esm/kol-quote.entry.js +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-span.entry.js +1 -1
- package/dist/esm/kol-spin.entry.js +1 -1
- package/dist/esm/kol-split-button.entry.js +1 -1
- package/dist/esm/kol-symbol.entry.js +1 -1
- package/dist/esm/kol-table.entry.js +1 -1
- package/dist/esm/kol-tabs.entry.js +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.entry.js +1 -1
- package/dist/esm/kol-tooltip.entry.js +1 -1
- package/dist/esm/kol-version.entry.js +1 -1
- package/dist/esm/kolibri.js +1 -1
- package/dist/esm/kolibri.js.map +1 -1
- package/dist/esm/loader.js +1 -1
- package/dist/esm/loader.js.map +1 -1
- package/dist/esm/prop.validators-2c20cdf8.js.map +1 -1
- package/dist/kolibri/app-globals-037e6656.js +4 -0
- package/dist/kolibri/{controller-3ae042db.js → controller-3f613951.js} +1 -1
- package/dist/kolibri/controller-3f613951.js.map +1 -0
- package/dist/kolibri/controller-4b599938.js +4 -0
- package/dist/kolibri/controller-4b599938.js.map +1 -0
- package/dist/kolibri/{controller-9b769c83.js → controller-bd4d58e4.js} +1 -1
- package/dist/kolibri/controller-bd4d58e4.js.map +1 -0
- package/dist/kolibri/controller-e02d4577.js +4 -0
- package/dist/kolibri/controller-e02d4577.js.map +1 -0
- package/dist/kolibri/controller-icon-1255b762.js +4 -0
- package/dist/kolibri/{controller-icon-8d8c747a.js.map → controller-icon-1255b762.js.map} +1 -1
- package/dist/kolibri/dev.utils-157f0499.js.map +1 -1
- package/dist/kolibri/floating-ui.dom.esm-74010e65.js +4 -0
- package/dist/kolibri/floating-ui.dom.esm-74010e65.js.map +1 -0
- package/dist/kolibri/index-34c3d6f8.js +5 -0
- package/dist/kolibri/index-34c3d6f8.js.map +1 -0
- 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-alert-wc_2.entry.js +1 -1
- package/dist/kolibri/kol-alert-wc_2.entry.js.map +1 -1
- package/dist/kolibri/kol-alert.entry.js +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-button-group-wc.entry.js +1 -1
- package/dist/kolibri/kol-button-group.entry.js +1 -1
- package/dist/kolibri/kol-button-link.entry.js +1 -1
- package/dist/kolibri/kol-button-wc_3.entry.js +1 -1
- package/dist/kolibri/kol-button.entry.js +1 -1
- package/dist/kolibri/kol-card.entry.js +1 -1
- package/dist/kolibri/kol-details.entry.js +1 -1
- package/dist/kolibri/kol-form.entry.js +1 -1
- package/dist/kolibri/kol-heading.entry.js +1 -1
- package/dist/kolibri/kol-icon-font-awesome.entry.js +1 -1
- package/dist/kolibri/kol-icon-icofont.entry.js +1 -1
- package/dist/kolibri/kol-icon.entry.js +1 -1
- package/dist/kolibri/kol-image.entry.js +1 -1
- package/dist/kolibri/kol-indented-text.entry.js +1 -1
- package/dist/kolibri/kol-input-adapter-leanup.entry.js +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-kolibri.entry.js +1 -1
- package/dist/kolibri/kol-link-button.entry.js +1 -1
- package/dist/kolibri/kol-link-group.entry.js +1 -1
- package/dist/kolibri/kol-link-wc.entry.js +1 -1
- package/dist/kolibri/kol-link.entry.js +1 -1
- package/dist/kolibri/kol-logo.entry.js +1 -1
- package/dist/kolibri/kol-modal.entry.js +1 -1
- package/dist/kolibri/kol-nav.entry.js +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.entry.js +1 -1
- package/dist/kolibri/kol-progress.entry.js +1 -1
- package/dist/kolibri/kol-quote.entry.js +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-span.entry.js +1 -1
- package/dist/kolibri/kol-spin.entry.js +1 -1
- package/dist/kolibri/kol-split-button.entry.js +1 -1
- package/dist/kolibri/kol-symbol.entry.js +1 -1
- package/dist/kolibri/kol-table.entry.js +1 -1
- package/dist/kolibri/kol-tabs.entry.js +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.entry.js +1 -1
- package/dist/kolibri/kol-tooltip.entry.js +1 -1
- package/dist/kolibri/kol-version.entry.js +1 -1
- package/dist/kolibri/kolibri.esm.js +1 -1
- package/dist/kolibri/kolibri.esm.js.map +1 -1
- package/dist/kolibri/prop.validators-2c20cdf8.js.map +1 -1
- package/dist/loader/index.d.ts +1 -1
- package/dist/types/components/@deprecated/input/controller.d.ts +1 -0
- package/dist/types/components/@deprecated/input/types-icon.d.ts +2 -1
- package/dist/types/components/@deprecated/input/types.d.ts +2 -1
- package/dist/types/components/badge/component.d.ts +1 -0
- package/dist/types/components/input/types.d.ts +3 -2
- package/dist/types/components/input-checkbox/component.d.ts +2 -0
- package/dist/types/components/input-checkbox/types.d.ts +3 -3
- package/dist/types/components/input-color/component.d.ts +2 -0
- package/dist/types/components/input-color/types.d.ts +3 -2
- package/dist/types/components/input-date/component.d.ts +3 -1
- package/dist/types/components/input-date/types.d.ts +3 -2
- package/dist/types/components/input-email/component.d.ts +3 -1
- package/dist/types/components/input-email/types.d.ts +3 -3
- package/dist/types/components/input-file/component.d.ts +3 -1
- package/dist/types/components/input-file/types.d.ts +3 -2
- package/dist/types/components/input-number/component.d.ts +3 -1
- package/dist/types/components/input-number/types.d.ts +3 -2
- package/dist/types/components/input-password/component.d.ts +2 -0
- package/dist/types/components/input-password/types.d.ts +3 -2
- package/dist/types/components/input-radio/component.d.ts +2 -0
- package/dist/types/components/input-radio/controller.d.ts +2 -1
- package/dist/types/components/input-radio/types.d.ts +3 -2
- package/dist/types/components/input-radio-group/component.d.ts +1 -0
- package/dist/types/components/input-range/component.d.ts +3 -1
- package/dist/types/components/input-range/types.d.ts +3 -2
- package/dist/types/components/input-text/component.d.ts +2 -0
- package/dist/types/components/input-text/controller.d.ts +3 -2
- package/dist/types/components/input-text/types.d.ts +3 -2
- package/dist/types/components/select/component.d.ts +3 -1
- package/dist/types/components/select/types.d.ts +3 -2
- package/dist/types/components/textarea/component.d.ts +3 -1
- package/dist/types/components/textarea/types.d.ts +3 -3
- package/dist/types/components.d.ts +104 -0
- package/dist/types/stencil-public-runtime.d.ts +1 -0
- package/doc/icon-font-awesome.md +1 -1
- package/doc/icon-icofont.md +1 -1
- package/doc/input-checkbox.md +21 -20
- package/doc/input-color.md +19 -18
- package/doc/input-date.md +25 -24
- package/doc/input-email.md +26 -25
- package/doc/input-file.md +20 -19
- package/doc/input-number.md +26 -25
- package/doc/input-password.md +24 -23
- package/doc/input-radio-group.md +18 -17
- package/doc/input-radio.md +18 -17
- package/doc/input-range.md +21 -20
- package/doc/input-text.md +26 -25
- package/doc/select.md +21 -20
- package/doc/textarea.md +23 -22
- package/jest-test-results.json +1 -1
- package/package.json +1 -1
- package/vscode-custom-data.json +88 -36
- package/dist/cjs/controller-361ba1ef.js.map +0 -1
- package/dist/cjs/controller-3bf4af0a.js +0 -4
- package/dist/cjs/controller-3bf4af0a.js.map +0 -1
- package/dist/cjs/controller-c828f7c8.js.map +0 -1
- package/dist/cjs/controller-dc5aca49.js.map +0 -1
- package/dist/cjs/floating-ui.dom.esm-3d05ccb5.js +0 -4
- package/dist/cjs/floating-ui.dom.esm-3d05ccb5.js.map +0 -1
- package/dist/cjs/index-29c5d3c6.js +0 -5
- package/dist/cjs/index-29c5d3c6.js.map +0 -1
- package/dist/esm/controller-3ae042db.js.map +0 -1
- package/dist/esm/controller-6f59f733.js.map +0 -1
- package/dist/esm/controller-9b769c83.js.map +0 -1
- package/dist/esm/controller-ca91917c.js +0 -4
- package/dist/esm/controller-ca91917c.js.map +0 -1
- package/dist/esm/floating-ui.dom.esm-706cb72a.js +0 -4
- package/dist/esm/floating-ui.dom.esm-706cb72a.js.map +0 -1
- package/dist/esm/index-50adf9a0.js +0 -5
- package/dist/esm/index-50adf9a0.js.map +0 -1
- package/dist/kolibri/app-globals-1e2df332.js +0 -4
- package/dist/kolibri/controller-3ae042db.js.map +0 -1
- package/dist/kolibri/controller-6f59f733.js +0 -4
- package/dist/kolibri/controller-6f59f733.js.map +0 -1
- package/dist/kolibri/controller-9b769c83.js.map +0 -1
- package/dist/kolibri/controller-ca91917c.js +0 -4
- package/dist/kolibri/controller-ca91917c.js.map +0 -1
- package/dist/kolibri/controller-icon-8d8c747a.js +0 -4
- package/dist/kolibri/floating-ui.dom.esm-706cb72a.js +0 -4
- package/dist/kolibri/floating-ui.dom.esm-706cb72a.js.map +0 -1
- package/dist/kolibri/index-50adf9a0.js +0 -5
- package/dist/kolibri/index-50adf9a0.js.map +0 -1
- /package/dist/kolibri/{app-globals-1e2df332.js.map → app-globals-037e6656.js.map} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"file":"prop.validators-2c20cdf8.js","mappings":"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","names":["rgba","hex","score"],"sources":["./node_modules/query-selector-all-shadow-root/esm/index.js","./node_modules/query-selector-shadow-root/esm/index.js","./node_modules/rgba-convert/index.js","./node_modules/wcag-contrast/dist/index.m.js","./src/utils/prop.validators.ts"],"sourcesContent":["const pushNodes = (set, domNodes) => {\n domNodes.forEach((domNode) => {\n if (set.has(domNode) === false) {\n set.add(domNode);\n }\n });\n};\nexport const querySelectorAll = (selector, node = document) => {\n if (node instanceof Document ||\n node instanceof HTMLElement ||\n node instanceof ShadowRoot) {\n const domNodes = new Set();\n pushNodes(domNodes, node.querySelectorAll(selector));\n const nodeList = node.querySelectorAll('[class*=\"hydrated\"]');\n for (let i = 0; i < nodeList.length; i++) {\n const shadowRoot = nodeList[i].shadowRoot;\n if (typeof shadowRoot === \"object\" && shadowRoot !== null) {\n pushNodes(domNodes, querySelectorAll(selector, shadowRoot));\n }\n else {\n pushNodes(domNodes, querySelectorAll(selector, nodeList[i]));\n }\n }\n return Array.from(domNodes);\n }\n else {\n throw new Error(`The parameter document for the method querySelectorAll is not type of Document, HTMLElement or ShadowRoot.`);\n }\n};\n//# sourceMappingURL=index.js.map","export const querySelector = (selector, node = document) => {\n if (node instanceof Document ||\n node instanceof HTMLElement ||\n node instanceof ShadowRoot) {\n let domNode = node.querySelector(selector);\n if (domNode === null) {\n const nodeList = node.querySelectorAll('[class*=\"hydrated\"]');\n for (let i = 0; i < nodeList.length; i++) {\n const shadowRoot = nodeList[i].shadowRoot;\n if (typeof shadowRoot === \"object\" && shadowRoot !== null) {\n domNode = querySelector(selector, shadowRoot);\n }\n else {\n domNode = querySelector(selector, nodeList[i]);\n }\n if (domNode !== null) {\n break;\n }\n }\n }\n return domNode;\n }\n else {\n throw new Error(`The parameter document for the method querySelector is not type of Document, HTMLElement or ShadowRoot.`);\n }\n};\n//# sourceMappingURL=index.js.map","\nmodule.exports = arr\nmodule.exports.arr = arr\nmodule.exports.obj = obj\nmodule.exports.css = css\nmodule.exports.hex = hex\nmodule.exports.num = num\n\nfunction arr(data) {\n var a = parse(data)\n if (a.length == 3) {\n return a.concat(255)\n } else {\n a[3] = Math.round(a[3])\n return a\n }\n}\n\nfunction obj(data) {\n var a = parse(data)\n return {\n r: a[0],\n g: a[1],\n b: a[2],\n a: a.length == 3\n ? 255\n : Math.round(a[3])\n }\n}\n\nfunction css(data) {\n var a = parse(data)\n if (a.length == 3) a.push(255)\n\n return a[3] == 255\n ? 'rgb(' + a[0] + ', ' + a[1] + ', ' + a[2] + ')'\n : a[3] == 0\n ? 'rgba(' + a[0] + ', ' + a[1] + ', ' + a[2] + ', 0)'\n : 'rgba(' + a[0] + ', ' + a[1] + ', ' + a[2] + ', ' + String(a[3] / 255).substr(1) + ')'\n}\n\nfunction hex(data) {\n var a = parse(data)\n if (a.length == 3) a.push(255)\n var opaque = a[3] == 255\n var r = num2hex(a[0])\n var g = num2hex(a[1])\n var b = num2hex(a[2])\n var a = num2hex(Math.round(a[3]))\n var is = isshort(r, g, b, a)\n if (opaque) {\n return is\n ? '#' + r.charAt(0) + g.charAt(0) + b.charAt(0)\n : '#' + r + g + b\n }\n return is\n ? '#' + r.charAt(0) + g.charAt(0) + b.charAt(0) + a.charAt(0)\n : '#' + r + g + b + a\n}\n\nfunction num(data) {\n var a = parse(data)\n if (a.length == 3) a.push(255)\n else a[3] = Math.round(a[3])\n return ((a[3] << 24) >>> 0 | a[0] << 16 | a[1] << 8 | a[2]) >>> 0\n}\n\nfunction parse(data) {\n if (typeof data == 'string') {\n data = data.toLowerCase()\n return name(data)\n || hex3(data)\n || hex6(data)\n || rgb(data)\n || rgba(data)\n || [0, 0, 0, 255]\n }\n return object(data)\n || array(data)\n || number(data)\n || [0, 0, 0, 255]\n}\n\nfunction num2hex(num) {\n var s = num.toString(16)\n return s.length == 1\n ? '0' + s\n : s\n}\n\nfunction isshort(r, g, b, a) {\n var h = ['ff', '00', '11', '22', '33', '44', '55', '66',\n '77', '88', '99', 'aa', 'bb', 'cc', 'dd', 'ee']\n return h.indexOf(r) != -1\n && h.indexOf(g) != -1\n && h.indexOf(b) != -1\n && h.indexOf(a) != -1\n}\n\nfunction name(str) {\n if (str == 'red') return [255, 0, 0]\n if (str == 'green') return [0, 255, 0]\n if (str == 'blue') return [0, 0, 255]\n if (str == 'black') return [0, 0, 0]\n if (str == 'white') return [255, 255, 255]\n if (str == 'cyan') return [0, 255, 255]\n if (str == 'gray') return [128, 128, 128]\n if (str == 'grey') return [128, 128, 128]\n if (str == 'magenta') return [255, 0, 255]\n // ok, not the real css `pink` but my personal `magenta` alias\n // `pink` is simpler than `fuchsia`, whatever...\n if (str == 'pink') return [255, 0, 255]\n if (str == 'yellow') return [255, 255, 0]\n}\n\nfunction hex2num(str) {\n return str.length == 1\n ? parseInt(str + str, 16)\n : parseInt(str, 16)\n}\n\nfunction hex3(str) {\n var s = str.replace(/^#/,'')\n var l = s.length\n if (l == 3 || l == 4) {\n var r = hex2num(s[0])\n var g = hex2num(s[1])\n var b = hex2num(s[2])\n var a = l == 3\n ? 255\n : hex2num(s[3])\n\n if (isNaN(r) || isNaN(g) || isNaN(b) || isNaN(a)) return\n\n return [r, g, b, a]\n }\n}\n\nfunction hex6(str) {\n var s = str.replace(/^#/,'')\n var l = s.length\n if (l == 6 || l == 8) {\n var r = hex2num(s.slice(0, 2))\n var g = hex2num(s.slice(2, 4))\n var b = hex2num(s.slice(4, 6))\n var a = l == 6\n ? 255\n : hex2num(s.slice(6, 8))\n\n if (isNaN(r) || isNaN(g) || isNaN(b) || isNaN(a)) return\n\n return [r, g, b, a]\n }\n}\n\nfunction getnum(val, integer) {\n if (typeof val != 'number') return -1\n if (integer === true && Math.floor(val) !== val) return -1\n return val >= 0 && val <= 255\n ? val\n : -1\n}\n\nfunction object(obj) {\n if (Object.prototype.toString.call(obj) === '[object Object]'\n && Object.getPrototypeOf(obj) === Object.getPrototypeOf({})) {\n var r = getnum(obj.r != undefined ? obj.r : obj.red != undefined ? obj.red : 0, true)\n var g = getnum(obj.g != undefined ? obj.g : obj.green != undefined ? obj.green : 0, true)\n var b = getnum(obj.b != undefined ? obj.b : obj.blue != undefined ? obj.blue : 0, true)\n var a = getnum(obj.a != undefined ? obj.a : obj.alpha != undefined ? obj.alpha : 255, true)\n if (r != -1 && g != -1 && b != -1 && a != -1) {\n return [r, g, b, a]\n }\n }\n}\n\nfunction array(arr) {\n if (Array.isArray(arr) && (arr.length == 3 || arr.length == 4)) {\n var r = getnum(arr[0], true)\n var g = getnum(arr[1], true)\n var b = getnum(arr[2], true)\n var a = getnum(arr[3] != undefined ? arr[3] : 255, true)\n if (r != -1 && g != -1 && b != -1 && a != -1) {\n return [r, g, b, a]\n }\n }\n}\n\nfunction number(num) {\n if (typeof num == 'number' && Math.floor(num) == num && num <= 4294967295 && num >= 0) {\n var a = num >> 24 & 255\n var r = num >> 16 & 255\n var g = num >> 8 & 255\n var b = num & 255\n return [r, g, b, a]\n }\n}\n\nfunction rgb(str) {\n if (str.substr(0, 4) == 'rgb(') {\n str = str.match(/^rgb\\(([^)]+)\\)/)[1]\n var t = str.split(/ *, */).map(Number)\n var r = getnum(t[0], true)\n var g = getnum(t[1], true)\n var b = getnum(t[2], true)\n if (r != -1 && g != -1 && b != -1) {\n return [r, g, b, 255]\n }\n }\n}\n\nfunction rgba(str) {\n if (str.substr(0, 5) == 'rgba(') {\n str = str.match(/^rgba\\(([^)]+)\\)/)[1]\n var t = str.split(/ *, */).map(Number)\n var r = getnum(t[0], true)\n var g = getnum(t[1], true)\n var b = getnum(t[2], true)\n var a = getnum(t[3] * 255)\n if (r != -1 && g != -1 && b != -1 && a != -1) {\n return [r, g, b, a]\n }\n }\n}\n","var n=.2126,r=.7152,t=.0722,e=1/12.92;function u(n){return Math.pow((n+.055)/1.055,2.4)}function a(a){var i=a[0]/255,c=a[1]/255,o=a[2]/255,s=i<=.03928?i*e:u(i),f=c<=.03928?c*e:u(c),l=o<=.03928?o*e:u(o);return s*n+f*r+l*t}function i(n){var r=255;8===(n=n.replace(/^#/,\"\")).length&&(r=parseInt(n.slice(6,8),16),n=n.substring(0,6)),4===n.length&&(r=parseInt(n.slice(3,4).repeat(2),16),n=n.substring(0,3)),3===n.length&&(n=n[0]+n[0]+n[1]+n[1]+n[2]+n[2]);var t=parseInt(n,16);return[t>>16,t>>8&255,255&t,r]}function c(n,r){return(Math.max(n,r)+.05)/(Math.min(n,r)+.05)}function o(n,r){return c(a(n),a(r))}function s(n,r){return o(i(n),i(r))}function f(n){return n>=7?\"AAA\":n>=4.5?\"AA\":n>=3?\"AA Large\":\"Fail\"}export{c as luminance,o as rgb,s as hex,f as score};\n//# sourceMappingURL=index.m.js.map\n","import { patchTheme, patchThemeTag } from '@a11y-ui/core';\nimport { querySelectorAll } from 'query-selector-all-shadow-root';\nimport { querySelector } from 'query-selector-shadow-root';\nimport rgba from 'rgba-convert';\nimport { hex, score } from 'wcag-contrast';\nimport { Generic } from '@a11y-ui/core';\n\nimport { devHint } from './a11y.tipps';\nimport { getDocument, getExperimalMode, getWindow, Log } from './dev.utils';\nimport { Stringified } from '../types/common';\n\n// https://regex101.com/r/lSYLO9/1\n/**\n * Bei Stencil kann es vorkommen, dass bei der Übergabe eines komplexer Objekte\n * der String \"[object Object]\" an die Web Component übergeben wird. Um den Neben-\n * effekt abzufangen, wird dieser Fall abgefangen und nicht ausgeführt.\n */\nconst OBJECT_OBJECT = /\\[object Object\\]/;\nexport const objectObjectHandler = (value: unknown, cb: () => void): void => {\n\tif (typeof value === 'string' && OBJECT_OBJECT.test(value)) {\n\t\treturn;\n\t}\n\tcb();\n};\n\n/**\n * Bei Stencil kann es vorkommen, dass bei der Übergabe eines leeren Array's\n * ein leerer String an die Web Component übergeben wird. Um den Nebeneffekt\n * abzufangen, wird dieser Fall abgefangen und nicht ausgeführt.\n */\nexport const emptyStringByArrayHandler = (value: unknown, cb: () => void): void => {\n\tif (typeof value === 'string' && value === '') {\n\t\treturn;\n\t}\n\tcb();\n};\n\n/**\n * Bei interaktiven HTML-Elementen kommt es vor, dass der Event an einem nicht\n * interaktiven HTML-Element \"lostriggert\" und dann den DOM-Baum hoch propagiert.\n * Zu unterschiedlichen Zeitpunkten sind an dem einen Event somit immer unterschiedliche\n * HTML-Elemente.\n * Damit wir das \"richtige\" interaktive HTML-Element an das Event binden, setzen\n * wir das Target explizit und stoppen die Propagation.\n */\nexport const setEventTarget = (event: Event, target?: HTMLElement): void => {\n\tif (getExperimalMode()) {\n\t\tLog.debug([event, target]);\n\t\tLog.debug(`↑ We propagate the (submit) event to this target.`);\n\t}\n\tObject.defineProperty(event, 'target', {\n\t\tvalue: target,\n\t\twritable: false,\n\t});\n};\n\nconst patchState = (component: Generic.Element.Component): void => {\n\tcomponent.nextHooks?.forEach((hooks, key) => {\n\t\tconst beforePatch = hooks.get('beforePatch') as Generic.Element.NextStateHooksCallback;\n\t\tif (typeof beforePatch === 'function') {\n\t\t\tbeforePatch(component.nextState?.get(key), component.nextState as Map<string, unknown>, component, key);\n\t\t}\n\t});\n\t/**\n\t * Wenn in beforePatch Methoden die Änderung verworfen wird,\n\t * muss auch nicht der State aktualisiert und neu gerendert\n\t * werden.\n\t */\n\tif ((component.nextState as Map<string, unknown>)?.size > 0) {\n\t\tcomponent.state = {\n\t\t\t...component.state,\n\t\t\t...Object.fromEntries(component.nextState as Map<string, unknown>),\n\t\t};\n\t\tdelete component.nextState;\n\n\t\tcomponent.nextHooks?.forEach((hooks, key) => {\n\t\t\tconst afterPatch = hooks.get('afterPatch') as Generic.Element.StateHooksCallback;\n\t\t\tif (typeof afterPatch === 'function') {\n\t\t\t\tafterPatch(component.state[key], component.state, component, key);\n\t\t\t}\n\t\t});\n\t}\n\tdelete component.nextHooks;\n};\n\ntype SetStateHooks = {\n\tafterPatch?: Generic.Element.StateHooksCallback;\n\tbeforePatch?: Generic.Element.NextStateHooksCallback;\n};\n\nexport const setState = <T>(component: Generic.Element.Component, propName: string, value?: T | null | undefined, hooks: SetStateHooks = {}): void => {\n\tif (component.nextHooks === undefined) {\n\t\tcomponent.nextHooks = new Map();\n\t}\n\tif (component.nextState === undefined) {\n\t\tcomponent.nextState = new Map();\n\t}\n\tif (component.nextState.get(propName) !== value) {\n\t\tconst nextHooks = component.nextHooks.get(propName);\n\t\tif (nextHooks instanceof Map === false) {\n\t\t\tcomponent.nextHooks.set(propName, new Map());\n\t\t}\n\t\tif (typeof hooks.afterPatch === 'function') {\n\t\t\tcomponent.nextHooks.get(propName)?.set('afterPatch', hooks.afterPatch);\n\t\t}\n\t\tif (typeof hooks.beforePatch === 'function') {\n\t\t\tcomponent.nextHooks.get(propName)?.set('beforePatch', hooks.beforePatch);\n\t\t}\n\t\tcomponent.nextState.set(propName, value);\n\t\t/**\n\t\t * Muss erstmal in sync bleiben, da sonst der\n\t\t * Tooltip nicht korrekt ausgerichtet wird.\n\t\t */\n\t\t// if (component.hydrated === true || processEnv !== 'test') {\n\t\t// clearTimeout(component.timeout as NodeJS.Timeout);\n\t\t// component.timeout = setTimeout(() => {\n\t\t// \tclearTimeout(component.timeout as NodeJS.Timeout);\n\t\t// \tpatchState(component);\n\t\t// }, 50);\n\t\t// } else {\n\t\tpatchState(component);\n\t\t// }\n\t}\n};\n\nconst logWarn = (component: Generic.Element.Component, propName: string, value: unknown, requiredGeneric: Set<string | null | undefined>): void => {\n\tdevHint(\n\t\t`[${component.constructor.name}] Der Property-Wert (${value as string}) für '${propName}' ist nicht valide. Folgende Werte sind erlaubt: ${Array.from(\n\t\t\trequiredGeneric\n\t\t).join(', ')}`\n\t);\n};\n\nexport type WatchOptions = {\n\tdefaultValue?: unknown;\n\thooks?: SetStateHooks;\n\trequired?: boolean;\n};\n\nexport type WatchBooleanOptions = WatchOptions & {\n\tdefaultValue?: boolean | null;\n};\n\nexport type WatchStringOptions = WatchOptions & {\n\tdefaultValue?: string | null;\n\tmaxLength?: number;\n\tminLength?: number;\n};\n\nexport type WatchNumberOptions = WatchOptions & {\n\tdefaultValue?: number | null;\n\tmin?: number;\n\tmax?: number;\n};\n\nexport function watchValidator<T>(\n\tcomponent: Generic.Element.Component,\n\tpropName: string,\n\tvalidationFunction: (value?: T) => boolean,\n\trequiredGeneric: Set<string | null | undefined>,\n\tvalue?: T,\n\toptions: WatchOptions = {}\n): void {\n\tif (validationFunction(value)) {\n\t\t/**\n\t\t * Triff zu, wenn der Wert VALIDE ist.\n\t\t */\n\t\tsetState(component, propName, value, options.hooks);\n\t} else if ((value === undefined || value === null) && !options.required) {\n\t\t/**\n\t\t * Triff zu, wenn der Wert entweder ...\n\t\t * - UNDEFINED oder NULL\n\t\t * - und NICHT REQUIRED\n\t\t * ... ist.\n\t\t */\n\t\tsetState(component, propName, options.defaultValue, options.hooks);\n\t} else {\n\t\t/**\n\t\t * Triff zu, wenn der Wert NICHT valide ist.\n\t\t */\n\t\tif (!options.required) {\n\t\t\trequiredGeneric.add(null);\n\t\t}\n\t\tlogWarn(component, propName, value, requiredGeneric);\n\t}\n}\n\nexport const watchBoolean = (component: Generic.Element.Component, propName: string, value?: boolean, options?: WatchBooleanOptions): void => {\n\twatchValidator(component, propName, (value): boolean => typeof value === 'boolean', new Set(['Boolean {true, false}']), value, options);\n};\n\nexport const watchString = (component: Generic.Element.Component, propName: string, value?: string, options: WatchStringOptions = {}): void => {\n\tconst minLength = typeof options.minLength === 'number' ? options?.minLength : 0;\n\twatchValidator(\n\t\tcomponent,\n\t\tpropName,\n\t\t(value): boolean =>\n\t\t\ttypeof value === 'string' && value.length >= minLength && (typeof options?.maxLength === 'undefined' || value.length <= options.maxLength),\n\t\tnew Set([`String`]),\n\t\tvalue,\n\t\toptions\n\t);\n};\n\nexport const watchNumber = (component: Generic.Element.Component, propName: string, value?: number, options?: WatchNumberOptions): void => {\n\twatchValidator(\n\t\tcomponent,\n\t\tpropName,\n\t\t(value): boolean =>\n\t\t\ttypeof value === 'number' &&\n\t\t\t(typeof options?.min === 'undefined' || (typeof options?.min === 'number' && value >= options.min)) &&\n\t\t\t(typeof options?.max === 'undefined' || (typeof options?.max === 'number' && value <= options.max)),\n\t\tnew Set(['Number']),\n\t\tvalue,\n\t\toptions\n\t);\n};\n\nexport const watchJsonArrayString = <T>(\n\tcomponent: Generic.Element.Component,\n\tpropName: string,\n\titemValidation: (item: T) => boolean,\n\tvalue?: Stringified<T[]>,\n\tarrayValidation: (items: T[]) => boolean = (items: T[]) => items === items, // nochmal hirnen\n\toptions: WatchOptions = {}\n): void => {\n\temptyStringByArrayHandler(value, () => {\n\t\tobjectObjectHandler(value, () => {\n\t\t\tif (typeof value === 'undefined') {\n\t\t\t\tvalue = [];\n\t\t\t}\n\t\t\ttry {\n\t\t\t\ttry {\n\t\t\t\t\tvalue = parseJson<T[]>(value);\n\t\t\t\t\t// eslint-disable-next-line no-empty\n\t\t\t\t} catch (e) {\n\t\t\t\t\t// value behält den ursprünglichen Wert\n\t\t\t\t}\n\t\t\t\tif (Array.isArray(value)) {\n\t\t\t\t\tconst invalid = value.find((item: T) => !itemValidation(item));\n\t\t\t\t\tif (invalid === undefined && arrayValidation(value)) {\n\t\t\t\t\t\tsetState(component, propName, value, options.hooks);\n\t\t\t\t\t} else {\n\t\t\t\t\t\tobjectObjectHandler(invalid, () => {\n\t\t\t\t\t\t\tLog.debug(invalid);\n\t\t\t\t\t\t\tthrow new Error(`↑ Das Schema für das Property (_options) ist nicht valide. Der Wert wird nicht geändert.`);\n\t\t\t\t\t\t});\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\tobjectObjectHandler(value, () => {\n\t\t\t\t\t\tLog.debug(value);\n\t\t\t\t\t\tthrow new Error(`↑ Das Schema für das Property (_options) ist nicht valide. Der Wert wird nicht geändert.`);\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t} catch (error) {\n\t\t\t\t/**\n\t\t\t\t * TODO: Wir haben einen Known-Bug beim Propergieren von Zeichenkettenliste (string[]).\n\t\t\t\t */\n\t\t\t\tLog.debug(error);\n\t\t\t\t// devHint(`Known bug: Zeichenkettenliste (string[])`);\n\t\t\t}\n\t\t});\n\t});\n};\n\nconst BOOLEAN = /^(true|false)$/;\nconst INTEGER = /^-?(0|[1-9]\\d*)$/;\nconst FLOAT = /^-?(0.|[1-9]\\d*.)\\d*[1-9]$/;\nexport const mapString2Unknown = (value: unknown) => {\n\tconst typeStr = typeof value;\n\tconst oldValue = `${value as string}`;\n\tif (typeof value === 'string') {\n\t\tif (BOOLEAN.test(value)) {\n\t\t\tvalue = value === 'true';\n\t\t} else if (INTEGER.test(value)) {\n\t\t\tvalue = parseInt(value);\n\t\t} else if (FLOAT.test(value)) {\n\t\t\tvalue = parseFloat(value);\n\t\t} else if (JSON_CHARS.test(value)) {\n\t\t\ttry {\n\t\t\t\tvalue = parseJson<unknown>(value);\n\t\t\t\t// eslint-disable-next-line no-empty\n\t\t\t} catch (e) {\n\t\t\t\t// value behält den ursprünglichen Wert\n\t\t\t}\n\t\t}\n\t}\n\tif (typeStr !== typeof value) {\n\t\tdevHint(`You have used a stringified property value (${oldValue} to ${JSON.stringify(value)}) which type switched from ${typeStr} to ${typeof value}!`);\n\t}\n\treturn value;\n};\n\nexport const stringifyJson = (value: unknown): string => {\n\ttry {\n\t\treturn JSON.stringify(value).replace(/\"/g, \"'\");\n\t} catch (error) {\n\t\tLog.warn(['stringifyJson', value]);\n\t\tLog.error(`↑ Das JSON konnte nicht in einen String umgewandelt werden. Es wird ein stringifizierbares JSON erwartet.`);\n\t\tthrow new Error();\n\t}\n};\n\nconst JSON_CHARS = /^[{[]/; // string starts with { or [\nexport const parseJson = <T>(value: unknown): T => {\n\tif (typeof value === 'string') {\n\t\ttry {\n\t\t\t// \"null\", \"true\", \"false\", \"0\" works too\n\t\t\treturn JSON.parse(value);\n\t\t} catch (error) {\n\t\t\tif (JSON_CHARS.test(value)) {\n\t\t\t\ttry {\n\t\t\t\t\treturn JSON.parse(value.replace(/'/g, '\"'));\n\t\t\t\t} catch (error) {\n\t\t\t\t\tLog.warn(['parseJson', value]);\n\t\t\t\t\tLog.error(`↑ Der JSON-String konnte nicht geparsed werden. Achten Sie darauf, dass einfache Anführungszeichen im Text maskiert werden (‘).`);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\tthrow new Error();\n};\n\nexport const mapBoolean2String = (value?: boolean): string | undefined => {\n\treturn typeof value === 'boolean' ? (value === true ? 'true' : 'false') : undefined;\n};\n\nexport const mapStringOrBoolean2String = (value?: string | boolean): string | undefined => {\n\treturn typeof value === 'string' ? value : mapBoolean2String(value);\n};\n\nexport const koliBriQuerySelector = <T extends Element>(selector: string, node?: Document | HTMLElement | ShadowRoot): T | null =>\n\tquerySelector<T>(selector, node || getDocument());\n\nexport const koliBriQuerySelectorAll = <T extends Element>(selector: string, node?: Document | HTMLElement | ShadowRoot): T[] =>\n\tquerySelectorAll<T>(selector, node || getDocument());\n\ninterface A11yColorContrast {\n\tbackgroundColor: string;\n\tcolor: string;\n\tdomNode: HTMLElement | HTMLSlotElement;\n\tlevel: string;\n\tscore: number;\n}\n\nlet DEFAULT_COLOR_CONTRAST: A11yColorContrast | null = null;\nconst getDefaultColorContrast = (): A11yColorContrast => {\n\tDEFAULT_COLOR_CONTRAST = DEFAULT_COLOR_CONTRAST || {\n\t\tbackgroundColor: '#00000000',\n\t\tcolor: '#00000000',\n\t\tdomNode: getDocument().body,\n\t\tlevel: 'Fail',\n\t\tscore: 1,\n\t};\n\treturn DEFAULT_COLOR_CONTRAST;\n};\n\nconst TRANSPARENT_REGEXP = /(\\d+, ){3}0\\)/;\nexport const koliBriA11yColorContrast = (domNode: HTMLElement, a11yColorContrast: A11yColorContrast = getDefaultColorContrast()): A11yColorContrast => {\n\tconst computedStyle = getComputedStyle(domNode);\n\tconst hexBG: string = TRANSPARENT_REGEXP.test(computedStyle.backgroundColor) ? a11yColorContrast.backgroundColor : rgba.hex(computedStyle.backgroundColor);\n\tconst hexC: string = TRANSPARENT_REGEXP.test(computedStyle.color) ? a11yColorContrast.color : rgba.hex(computedStyle.color);\n\tconst diff = hex(hexBG, hexC);\n\tconst contrast = {\n\t\tbackgroundColor: hexBG,\n\t\tcolor: hexC,\n\t\tdomNode: domNode,\n\t\tlevel: score(diff),\n\t\tscore: diff,\n\t};\n\tif (diff < 4.5) {\n\t\tLog.error([\n\t\t\t'Color-Contrast-Error',\n\t\t\t{\n\t\t\t\tbackgroundColor: contrast.backgroundColor,\n\t\t\t\tcolor: contrast.color,\n\t\t\t\tlevel: contrast.level,\n\t\t\t\tscore: contrast.score,\n\t\t\t},\n\t\t\tcontrast.domNode,\n\t\t]);\n\t}\n\treturn contrast;\n};\n\nexport const koliBriQuerySelectorColors = (selector: string, a11yColorContrast: A11yColorContrast = getDefaultColorContrast()): A11yColorContrast => {\n\tif (a11yColorContrast.domNode instanceof HTMLElement) {\n\t\ta11yColorContrast = koliBriA11yColorContrast(a11yColorContrast.domNode, a11yColorContrast);\n\t}\n\tconst selectedNode: HTMLElement | null = a11yColorContrast.domNode.querySelector<HTMLElement>(selector);\n\tif (selectedNode === null) {\n\t\tconst nodeList: NodeListOf<HTMLElement> = a11yColorContrast.domNode.querySelectorAll<HTMLElement>('[class=\"hydrated\"]');\n\t\tfor (let i = 0; i < nodeList.length; i++) {\n\t\t\t// const shadowRoot: ShadowRoot = nodeList[i].shadowRoot as ShadowRoot;\n\t\t\t// if (typeof shadowRoot === 'object' && shadowRoot !== null) {\n\t\t\t// a11yColorContrast.domNode = shadowRoot;\n\t\t\t// a11yColorContrast = koliBriQuerySelectorColors(selector, a11yColorContrast);\n\t\t\t// } else {\n\t\t\ta11yColorContrast.domNode = nodeList[i];\n\t\t\ta11yColorContrast = koliBriQuerySelectorColors(selector, a11yColorContrast);\n\t\t\t// }\n\t\t\tif (a11yColorContrast.domNode !== null) {\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t\treturn a11yColorContrast;\n\t} else {\n\t\treturn koliBriA11yColorContrast(selectedNode, a11yColorContrast);\n\t}\n};\n\nconst scrollByHTMLElement = (element: HTMLElement, parentElement: Window | HTMLElement = window): void => {\n\tif (element instanceof HTMLElement) {\n\t\tparentElement.scrollTo({\n\t\t\tbehavior: 'smooth',\n\t\t\ttop: element.getBoundingClientRect().top + getWindow().pageYOffset - 50,\n\t\t});\n\t\telement.focus();\n\t} else {\n\t\tdevHint(`Das HTMLElement ist nicht valide, zu dem gescrollt werden soll.`);\n\t}\n};\nexport const scrollBySelector = (selector: string, document?: Document | HTMLElement | ShadowRoot): void => {\n\tif (\n\t\t((selector as unknown) instanceof Document || (selector as unknown) instanceof HTMLElement || (selector as unknown) instanceof ShadowRoot) &&\n\t\ttypeof document === 'string'\n\t) {\n\t\tdevHint(\n\t\t\t`Bei der Methode querySelectorAll wurden die Parameter document, selector in selector, document getauscht, da der Parameter selector nicht, allerdings der Parameter document optional sein kann.`\n\t\t);\n\t\tconst temp = `${document as unknown as string}`;\n\t\tdocument = selector as unknown as Document;\n\t\tselector = temp;\n\t}\n\tif (typeof selector === 'string') {\n\t\tconst element: HTMLElement | null = koliBriQuerySelector<HTMLElement>(selector, document);\n\t\tif (element instanceof HTMLElement) {\n\t\t\tscrollByHTMLElement(element);\n\t\t} else {\n\t\t\tdevHint(`Es konnte kein HTMLElement mit dem Selector (${selector}) gefunden werden, zu dem gescrollt werden soll.`);\n\t\t}\n\t} else {\n\t\tdevHint(`Der Selector ist nicht valide, zu dem gescrollt werden soll.`);\n\t}\n};\n\nexport class KoliBriUtils {\n\tprivate static executionLock = false;\n\tprivate static cache = new Map<Element, A11yColorContrast>();\n\tpublic static queryHtmlElementColors(targetNode: HTMLElement, a11yColorContrast: A11yColorContrast, recursion = false, log = true): A11yColorContrast | null {\n\t\tlet returnValue = null;\n\t\tif (recursion === true || KoliBriUtils.executionLock === false) {\n\t\t\tif (recursion === false) {\n\t\t\t\tKoliBriUtils.cache.clear();\n\t\t\t\tKoliBriUtils.cache.set(a11yColorContrast.domNode, a11yColorContrast);\n\t\t\t\tKoliBriUtils.executionLock = true;\n\t\t\t\tif (log === true) {\n\t\t\t\t\tLog.debug(`[KoliBriUtils] Color contrast analysis started...`);\n\t\t\t\t}\n\t\t\t}\n\t\t\t// Log.debug(a11yColorContrast.domNode);\n\t\t\tif (targetNode === a11yColorContrast.domNode) {\n\t\t\t\treturnValue = a11yColorContrast;\n\t\t\t} else {\n\t\t\t\tconst children: Set<Element> = new Set<Element>();\n\t\t\t\tif (a11yColorContrast.domNode.shadowRoot) {\n\t\t\t\t\tconst shadowChildren = a11yColorContrast.domNode.shadowRoot.children;\n\t\t\t\t\tfor (let i = 0; i < shadowChildren.length; i++) {\n\t\t\t\t\t\tchildren.add(shadowChildren[i]);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tconst slotElement: HTMLSlotElement = a11yColorContrast.domNode as HTMLSlotElement;\n\t\t\t\tif (typeof slotElement.assignedNodes === 'function') {\n\t\t\t\t\tconst slotChildren = slotElement.assignedNodes();\n\t\t\t\t\tfor (let i = 0; i < slotChildren.length; i++) {\n\t\t\t\t\t\tif (slotChildren[i] instanceof HTMLElement) {\n\t\t\t\t\t\t\tchildren.add(slotChildren[i] as HTMLElement);\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tconst domChildren = a11yColorContrast.domNode.children;\n\t\t\t\tfor (let i = 0; i < domChildren.length; i++) {\n\t\t\t\t\tchildren.add(domChildren[i]);\n\t\t\t\t}\n\t\t\t\tconst arrayChildren = Array.from(children);\n\t\t\t\tfor (let i = 0; i < arrayChildren.length; i++) {\n\t\t\t\t\tlet colorContrast: A11yColorContrast | undefined = KoliBriUtils.cache.get(arrayChildren[i]);\n\t\t\t\t\tif (colorContrast === undefined) {\n\t\t\t\t\t\tcolorContrast = koliBriA11yColorContrast(arrayChildren[i] as HTMLElement, a11yColorContrast);\n\t\t\t\t\t}\n\t\t\t\t\tKoliBriUtils.cache.set(arrayChildren[i], colorContrast);\n\t\t\t\t\tconst colors: A11yColorContrast | null = KoliBriUtils.queryHtmlElementColors(targetNode, colorContrast, true, false);\n\t\t\t\t\tif (colors !== null) {\n\t\t\t\t\t\treturnValue = colors;\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t} else {\n\t\t\tLog.debug(`[KoliBriUtils] Call aborted because a color contrast analysis is currently being executed.`);\n\t\t}\n\t\tif (recursion === false) {\n\t\t\tif (log === true) {\n\t\t\t\tLog.debug(`[KoliBriUtils] Color contrast analysis finished (${KoliBriUtils.cache.size} DOM elements are analysed).`);\n\t\t\t}\n\t\t\tKoliBriUtils.executionLock = false;\n\t\t\tKoliBriUtils.cache.clear();\n\t\t}\n\t\treturn returnValue;\n\t}\n}\n\nexport class KoliBriDevHelper {\n\tpublic static readonly patchTheme = patchTheme;\n\tpublic static readonly patchThemeTag = patchThemeTag;\n\tpublic static readonly querySelector = koliBriQuerySelector;\n\tpublic static readonly querySelectorAll = koliBriQuerySelectorAll;\n\tpublic static readonly scrollByHTMLElement = scrollByHTMLElement;\n\tpublic static readonly scrollBySelector = scrollBySelector;\n\tpublic static readonly stringifyJson = stringifyJson;\n}\n"],"version":3}
|
|
1
|
+
{"file":"prop.validators-2c20cdf8.js","mappings":"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","names":["rgba","hex","score"],"sources":["./node_modules/query-selector-all-shadow-root/esm/index.js","./node_modules/query-selector-shadow-root/esm/index.js","./node_modules/rgba-convert/index.js","./node_modules/wcag-contrast/dist/index.m.js","./src/utils/prop.validators.ts"],"sourcesContent":["const pushNodes = (set, domNodes) => {\n domNodes.forEach((domNode) => {\n if (set.has(domNode) === false) {\n set.add(domNode);\n }\n });\n};\nexport const querySelectorAll = (selector, node = document) => {\n if (node instanceof Document ||\n node instanceof HTMLElement ||\n node instanceof ShadowRoot) {\n const domNodes = new Set();\n pushNodes(domNodes, node.querySelectorAll(selector));\n const nodeList = node.querySelectorAll('[class*=\"hydrated\"]');\n for (let i = 0; i < nodeList.length; i++) {\n const shadowRoot = nodeList[i].shadowRoot;\n if (typeof shadowRoot === \"object\" && shadowRoot !== null) {\n pushNodes(domNodes, querySelectorAll(selector, shadowRoot));\n }\n else {\n pushNodes(domNodes, querySelectorAll(selector, nodeList[i]));\n }\n }\n return Array.from(domNodes);\n }\n else {\n throw new Error(`The parameter document for the method querySelectorAll is not type of Document, HTMLElement or ShadowRoot.`);\n }\n};\n//# sourceMappingURL=index.js.map","export const querySelector = (selector, node = document) => {\n if (node instanceof Document ||\n node instanceof HTMLElement ||\n node instanceof ShadowRoot) {\n let domNode = node.querySelector(selector);\n if (domNode === null) {\n const nodeList = node.querySelectorAll('[class*=\"hydrated\"]');\n for (let i = 0; i < nodeList.length; i++) {\n const shadowRoot = nodeList[i].shadowRoot;\n if (typeof shadowRoot === \"object\" && shadowRoot !== null) {\n domNode = querySelector(selector, shadowRoot);\n }\n else {\n domNode = querySelector(selector, nodeList[i]);\n }\n if (domNode !== null) {\n break;\n }\n }\n }\n return domNode;\n }\n else {\n throw new Error(`The parameter document for the method querySelector is not type of Document, HTMLElement or ShadowRoot.`);\n }\n};\n//# sourceMappingURL=index.js.map","\nmodule.exports = arr\nmodule.exports.arr = arr\nmodule.exports.obj = obj\nmodule.exports.css = css\nmodule.exports.hex = hex\nmodule.exports.num = num\n\nfunction arr(data) {\n var a = parse(data)\n if (a.length == 3) {\n return a.concat(255)\n } else {\n a[3] = Math.round(a[3])\n return a\n }\n}\n\nfunction obj(data) {\n var a = parse(data)\n return {\n r: a[0],\n g: a[1],\n b: a[2],\n a: a.length == 3\n ? 255\n : Math.round(a[3])\n }\n}\n\nfunction css(data) {\n var a = parse(data)\n if (a.length == 3) a.push(255)\n\n return a[3] == 255\n ? 'rgb(' + a[0] + ', ' + a[1] + ', ' + a[2] + ')'\n : a[3] == 0\n ? 'rgba(' + a[0] + ', ' + a[1] + ', ' + a[2] + ', 0)'\n : 'rgba(' + a[0] + ', ' + a[1] + ', ' + a[2] + ', ' + String(a[3] / 255).substr(1) + ')'\n}\n\nfunction hex(data) {\n var a = parse(data)\n if (a.length == 3) a.push(255)\n var opaque = a[3] == 255\n var r = num2hex(a[0])\n var g = num2hex(a[1])\n var b = num2hex(a[2])\n var a = num2hex(Math.round(a[3]))\n var is = isshort(r, g, b, a)\n if (opaque) {\n return is\n ? '#' + r.charAt(0) + g.charAt(0) + b.charAt(0)\n : '#' + r + g + b\n }\n return is\n ? '#' + r.charAt(0) + g.charAt(0) + b.charAt(0) + a.charAt(0)\n : '#' + r + g + b + a\n}\n\nfunction num(data) {\n var a = parse(data)\n if (a.length == 3) a.push(255)\n else a[3] = Math.round(a[3])\n return ((a[3] << 24) >>> 0 | a[0] << 16 | a[1] << 8 | a[2]) >>> 0\n}\n\nfunction parse(data) {\n if (typeof data == 'string') {\n data = data.toLowerCase()\n return name(data)\n || hex3(data)\n || hex6(data)\n || rgb(data)\n || rgba(data)\n || [0, 0, 0, 255]\n }\n return object(data)\n || array(data)\n || number(data)\n || [0, 0, 0, 255]\n}\n\nfunction num2hex(num) {\n var s = num.toString(16)\n return s.length == 1\n ? '0' + s\n : s\n}\n\nfunction isshort(r, g, b, a) {\n var h = ['ff', '00', '11', '22', '33', '44', '55', '66',\n '77', '88', '99', 'aa', 'bb', 'cc', 'dd', 'ee']\n return h.indexOf(r) != -1\n && h.indexOf(g) != -1\n && h.indexOf(b) != -1\n && h.indexOf(a) != -1\n}\n\nfunction name(str) {\n if (str == 'red') return [255, 0, 0]\n if (str == 'green') return [0, 255, 0]\n if (str == 'blue') return [0, 0, 255]\n if (str == 'black') return [0, 0, 0]\n if (str == 'white') return [255, 255, 255]\n if (str == 'cyan') return [0, 255, 255]\n if (str == 'gray') return [128, 128, 128]\n if (str == 'grey') return [128, 128, 128]\n if (str == 'magenta') return [255, 0, 255]\n // ok, not the real css `pink` but my personal `magenta` alias\n // `pink` is simpler than `fuchsia`, whatever...\n if (str == 'pink') return [255, 0, 255]\n if (str == 'yellow') return [255, 255, 0]\n}\n\nfunction hex2num(str) {\n return str.length == 1\n ? parseInt(str + str, 16)\n : parseInt(str, 16)\n}\n\nfunction hex3(str) {\n var s = str.replace(/^#/,'')\n var l = s.length\n if (l == 3 || l == 4) {\n var r = hex2num(s[0])\n var g = hex2num(s[1])\n var b = hex2num(s[2])\n var a = l == 3\n ? 255\n : hex2num(s[3])\n\n if (isNaN(r) || isNaN(g) || isNaN(b) || isNaN(a)) return\n\n return [r, g, b, a]\n }\n}\n\nfunction hex6(str) {\n var s = str.replace(/^#/,'')\n var l = s.length\n if (l == 6 || l == 8) {\n var r = hex2num(s.slice(0, 2))\n var g = hex2num(s.slice(2, 4))\n var b = hex2num(s.slice(4, 6))\n var a = l == 6\n ? 255\n : hex2num(s.slice(6, 8))\n\n if (isNaN(r) || isNaN(g) || isNaN(b) || isNaN(a)) return\n\n return [r, g, b, a]\n }\n}\n\nfunction getnum(val, integer) {\n if (typeof val != 'number') return -1\n if (integer === true && Math.floor(val) !== val) return -1\n return val >= 0 && val <= 255\n ? val\n : -1\n}\n\nfunction object(obj) {\n if (Object.prototype.toString.call(obj) === '[object Object]'\n && Object.getPrototypeOf(obj) === Object.getPrototypeOf({})) {\n var r = getnum(obj.r != undefined ? obj.r : obj.red != undefined ? obj.red : 0, true)\n var g = getnum(obj.g != undefined ? obj.g : obj.green != undefined ? obj.green : 0, true)\n var b = getnum(obj.b != undefined ? obj.b : obj.blue != undefined ? obj.blue : 0, true)\n var a = getnum(obj.a != undefined ? obj.a : obj.alpha != undefined ? obj.alpha : 255, true)\n if (r != -1 && g != -1 && b != -1 && a != -1) {\n return [r, g, b, a]\n }\n }\n}\n\nfunction array(arr) {\n if (Array.isArray(arr) && (arr.length == 3 || arr.length == 4)) {\n var r = getnum(arr[0], true)\n var g = getnum(arr[1], true)\n var b = getnum(arr[2], true)\n var a = getnum(arr[3] != undefined ? arr[3] : 255, true)\n if (r != -1 && g != -1 && b != -1 && a != -1) {\n return [r, g, b, a]\n }\n }\n}\n\nfunction number(num) {\n if (typeof num == 'number' && Math.floor(num) == num && num <= 4294967295 && num >= 0) {\n var a = num >> 24 & 255\n var r = num >> 16 & 255\n var g = num >> 8 & 255\n var b = num & 255\n return [r, g, b, a]\n }\n}\n\nfunction rgb(str) {\n if (str.substr(0, 4) == 'rgb(') {\n str = str.match(/^rgb\\(([^)]+)\\)/)[1]\n var t = str.split(/ *, */).map(Number)\n var r = getnum(t[0], true)\n var g = getnum(t[1], true)\n var b = getnum(t[2], true)\n if (r != -1 && g != -1 && b != -1) {\n return [r, g, b, 255]\n }\n }\n}\n\nfunction rgba(str) {\n if (str.substr(0, 5) == 'rgba(') {\n str = str.match(/^rgba\\(([^)]+)\\)/)[1]\n var t = str.split(/ *, */).map(Number)\n var r = getnum(t[0], true)\n var g = getnum(t[1], true)\n var b = getnum(t[2], true)\n var a = getnum(t[3] * 255)\n if (r != -1 && g != -1 && b != -1 && a != -1) {\n return [r, g, b, a]\n }\n }\n}\n","var n=.2126,r=.7152,t=.0722,e=1/12.92;function u(n){return Math.pow((n+.055)/1.055,2.4)}function a(a){var i=a[0]/255,c=a[1]/255,o=a[2]/255,s=i<=.03928?i*e:u(i),f=c<=.03928?c*e:u(c),l=o<=.03928?o*e:u(o);return s*n+f*r+l*t}function i(n){var r=255;8===(n=n.replace(/^#/,\"\")).length&&(r=parseInt(n.slice(6,8),16),n=n.substring(0,6)),4===n.length&&(r=parseInt(n.slice(3,4).repeat(2),16),n=n.substring(0,3)),3===n.length&&(n=n[0]+n[0]+n[1]+n[1]+n[2]+n[2]);var t=parseInt(n,16);return[t>>16,t>>8&255,255&t,r]}function c(n,r){return(Math.max(n,r)+.05)/(Math.min(n,r)+.05)}function o(n,r){return c(a(n),a(r))}function s(n,r){return o(i(n),i(r))}function f(n){return n>=7?\"AAA\":n>=4.5?\"AA\":n>=3?\"AA Large\":\"Fail\"}export{c as luminance,o as rgb,s as hex,f as score};\n//# sourceMappingURL=index.m.js.map\n","import { patchTheme, patchThemeTag } from '@a11y-ui/core';\nimport { querySelectorAll } from 'query-selector-all-shadow-root';\nimport { querySelector } from 'query-selector-shadow-root';\nimport rgba from 'rgba-convert';\nimport { hex, score } from 'wcag-contrast';\nimport { Generic } from '@a11y-ui/core';\n\nimport { devHint } from './a11y.tipps';\nimport { getDocument, getExperimalMode, getWindow, Log } from './dev.utils';\nimport { Stringified } from '../types/common';\n\n// https://regex101.com/r/lSYLO9/1\n/**\n * Bei Stencil kann es vorkommen, dass bei der Übergabe eines komplexer Objekte\n * der String \"[object Object]\" an die Web Component übergeben wird. Um den Neben-\n * effekt abzufangen, wird dieser Fall abgefangen und nicht ausgeführt.\n */\nconst OBJECT_OBJECT = /\\[object Object\\]/;\nexport const objectObjectHandler = (value: unknown, cb: () => void): void => {\n\tif (typeof value === 'string' && OBJECT_OBJECT.test(value)) {\n\t\treturn;\n\t}\n\tcb();\n};\n\n/**\n * Bei Stencil kann es vorkommen, dass bei der Übergabe eines leeren Array's\n * ein leerer String an die Web Component übergeben wird. Um den Nebeneffekt\n * abzufangen, wird dieser Fall abgefangen und nicht ausgeführt.\n */\nexport const emptyStringByArrayHandler = (value: unknown, cb: () => void): void => {\n\tif (typeof value === 'string' && value === '') {\n\t\treturn;\n\t}\n\tcb();\n};\n\n/**\n * Bei interaktiven HTML-Elementen kommt es vor, dass der Event an einem nicht\n * interaktiven HTML-Element \"lostriggert\" und dann den DOM-Baum hoch propagiert.\n * Zu unterschiedlichen Zeitpunkten sind an dem einen Event somit immer unterschiedliche\n * HTML-Elemente.\n * Damit wir das \"richtige\" interaktive HTML-Element an das Event binden, setzen\n * wir das Target explizit und stoppen die Propagation.\n */\nexport const setEventTarget = (event: Event, target?: HTMLElement): void => {\n\tif (getExperimalMode()) {\n\t\tLog.debug([event, target]);\n\t\tLog.debug(`↑ We propagate the (submit) event to this target.`);\n\t}\n\tObject.defineProperty(event, 'target', {\n\t\tvalue: target,\n\t\twritable: false,\n\t});\n};\n\nconst patchState = (component: Generic.Element.Component): void => {\n\tcomponent.nextHooks?.forEach((hooks, key) => {\n\t\tconst beforePatch = hooks.get('beforePatch') as Generic.Element.NextStateHooksCallback;\n\t\tif (typeof beforePatch === 'function') {\n\t\t\tbeforePatch(component.nextState?.get(key), component.nextState as Map<string, unknown>, component, key);\n\t\t}\n\t});\n\t/**\n\t * Wenn in beforePatch Methoden die Änderung verworfen wird,\n\t * muss auch nicht der State aktualisiert und neu gerendert\n\t * werden.\n\t */\n\tif ((component.nextState as Map<string, unknown>)?.size > 0) {\n\t\tcomponent.state = {\n\t\t\t...component.state,\n\t\t\t...Object.fromEntries(component.nextState as Map<string, unknown>),\n\t\t};\n\t\tdelete component.nextState;\n\n\t\tcomponent.nextHooks?.forEach((hooks, key) => {\n\t\t\tconst afterPatch = hooks.get('afterPatch') as Generic.Element.StateHooksCallback;\n\t\t\tif (typeof afterPatch === 'function') {\n\t\t\t\tafterPatch(component.state[key], component.state, component, key);\n\t\t\t}\n\t\t});\n\t}\n\tdelete component.nextHooks;\n};\n\ntype SetStateHooks = {\n\tafterPatch?: Generic.Element.StateHooksCallback;\n\tbeforePatch?: Generic.Element.NextStateHooksCallback;\n};\n\nexport const setState = <T>(component: Generic.Element.Component, propName: string, value?: T | null | undefined, hooks: SetStateHooks = {}): void => {\n\tif (component.nextHooks === undefined) {\n\t\tcomponent.nextHooks = new Map();\n\t}\n\tif (component.nextState === undefined) {\n\t\tcomponent.nextState = new Map();\n\t}\n\tif (component.nextState.get(propName) !== value) {\n\t\tconst nextHooks = component.nextHooks.get(propName);\n\t\tif (nextHooks instanceof Map === false) {\n\t\t\tcomponent.nextHooks.set(propName, new Map());\n\t\t}\n\t\tif (typeof hooks.afterPatch === 'function') {\n\t\t\tcomponent.nextHooks.get(propName)?.set('afterPatch', hooks.afterPatch);\n\t\t}\n\t\tif (typeof hooks.beforePatch === 'function') {\n\t\t\tcomponent.nextHooks.get(propName)?.set('beforePatch', hooks.beforePatch);\n\t\t}\n\t\tcomponent.nextState.set(propName, value);\n\t\t/**\n\t\t * Muss erstmal in sync bleiben, da sonst der\n\t\t * Tooltip nicht korrekt ausgerichtet wird.\n\t\t */\n\t\t// if (component.hydrated === true || processEnv !== 'test') {\n\t\t// clearTimeout(component.timeout as NodeJS.Timeout);\n\t\t// component.timeout = setTimeout(() => {\n\t\t// \tclearTimeout(component.timeout as NodeJS.Timeout);\n\t\t// \tpatchState(component);\n\t\t// }, 50);\n\t\t// } else {\n\t\tpatchState(component);\n\t\t// }\n\t}\n};\n\nconst logWarn = (component: Generic.Element.Component, propName: string, value: unknown, requiredGeneric: Set<string | null | undefined>): void => {\n\tdevHint(\n\t\t`[${component.constructor.name}] Der Property-Wert (${value as string}) für '${propName}' ist nicht valide. Folgende Werte sind erlaubt: ${Array.from(\n\t\t\trequiredGeneric\n\t\t).join(', ')}`\n\t);\n};\n\nexport type WatchOptions = {\n\tdefaultValue?: unknown;\n\thooks?: SetStateHooks;\n\trequired?: boolean;\n};\n\nexport type WatchBooleanOptions = WatchOptions & {\n\tdefaultValue?: boolean | null;\n};\n\nexport type WatchStringOptions = WatchOptions & {\n\tdefaultValue?: string | null;\n\tmaxLength?: number;\n\tminLength?: number;\n};\n\nexport type WatchNumberOptions = WatchOptions & {\n\tdefaultValue?: number | null;\n\tmin?: number;\n\tmax?: number;\n};\n\nexport function watchValidator<T>(\n\tcomponent: Generic.Element.Component,\n\tpropName: string,\n\tvalidationFunction: (value?: T) => boolean,\n\trequiredGeneric: Set<string | null | undefined>,\n\tvalue?: T,\n\toptions: WatchOptions = {}\n): void {\n\tif (validationFunction(value)) {\n\t\t/**\n\t\t * Triff zu, wenn der Wert VALIDE ist.\n\t\t */\n\t\tsetState(component, propName, value, options.hooks);\n\t} else if ((value === undefined || value === null) && !options.required) {\n\t\t/**\n\t\t * Triff zu, wenn der Wert entweder ...\n\t\t * - UNDEFINED oder NULL\n\t\t * - und NICHT REQUIRED\n\t\t * ... ist.\n\t\t */\n\t\tsetState(component, propName, options.defaultValue, options.hooks);\n\t} else {\n\t\t/**\n\t\t * Triff zu, wenn der Wert NICHT valide ist.\n\t\t */\n\t\tif (!options.required) {\n\t\t\trequiredGeneric.add(null);\n\t\t}\n\t\tlogWarn(component, propName, value, requiredGeneric);\n\t}\n}\n\nexport const watchBoolean = (component: Generic.Element.Component, propName: string, value?: boolean, options?: WatchBooleanOptions): void => {\n\twatchValidator(component, propName, (value): boolean => typeof value === 'boolean', new Set(['Boolean {true, false}']), value, options);\n};\n\nexport const watchString = (component: Generic.Element.Component, propName: string, value?: string, options: WatchStringOptions = {}): void => {\n\tconst minLength = typeof options.minLength === 'number' ? options?.minLength : 0;\n\twatchValidator(\n\t\tcomponent,\n\t\tpropName,\n\t\t(value): boolean =>\n\t\t\ttypeof value === 'string' && value.length >= minLength && (typeof options?.maxLength === 'undefined' || value.length <= options.maxLength),\n\t\tnew Set([`String`]),\n\t\tvalue,\n\t\toptions\n\t);\n};\n\nexport const watchNumber = (component: Generic.Element.Component, propName: string, value?: number, options?: WatchNumberOptions): void => {\n\twatchValidator(\n\t\tcomponent,\n\t\tpropName,\n\t\t(value): boolean =>\n\t\t\ttypeof value === 'number' &&\n\t\t\t(typeof options?.min === 'undefined' || (typeof options?.min === 'number' && value >= options.min)) &&\n\t\t\t(typeof options?.max === 'undefined' || (typeof options?.max === 'number' && value <= options.max)),\n\t\tnew Set(['Number']),\n\t\tvalue,\n\t\toptions\n\t);\n};\n\nexport const watchJsonArrayString = <T>(\n\tcomponent: Generic.Element.Component,\n\tpropName: string,\n\titemValidation: (item: T) => boolean,\n\tvalue?: Stringified<T[]>,\n\tarrayValidation: (items: T[]) => boolean = (items: T[]) => items === items, // nochmal hirnen\n\toptions: WatchOptions = {}\n): void => {\n\temptyStringByArrayHandler(value, () => {\n\t\tobjectObjectHandler(value, () => {\n\t\t\tif (typeof value === 'undefined') {\n\t\t\t\tvalue = [];\n\t\t\t}\n\t\t\ttry {\n\t\t\t\ttry {\n\t\t\t\t\tvalue = parseJson<T[]>(value);\n\t\t\t\t\t// eslint-disable-next-line no-empty\n\t\t\t\t} catch (e) {\n\t\t\t\t\t// value behält den ursprünglichen Wert\n\t\t\t\t}\n\t\t\t\tif (Array.isArray(value)) {\n\t\t\t\t\tconst invalid = value.find((item: T) => !itemValidation(item));\n\t\t\t\t\tif (invalid === undefined && arrayValidation(value)) {\n\t\t\t\t\t\tsetState(component, propName, value, options.hooks);\n\t\t\t\t\t} else {\n\t\t\t\t\t\tobjectObjectHandler(invalid, () => {\n\t\t\t\t\t\t\tLog.debug(invalid);\n\t\t\t\t\t\t\tthrow new Error(`↑ Das Schema für das Property (_options) ist nicht valide. Der Wert wird nicht geändert.`);\n\t\t\t\t\t\t});\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\tobjectObjectHandler(value, () => {\n\t\t\t\t\t\tLog.debug(value);\n\t\t\t\t\t\tthrow new Error(`↑ Das Schema für das Property (_options) ist nicht valide. Der Wert wird nicht geändert.`);\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t} catch (error) {\n\t\t\t\t/**\n\t\t\t\t * TODO: Wir haben einen Known-Bug beim Propergieren von Zeichenkettenliste (string[]).\n\t\t\t\t */\n\t\t\t\tLog.debug(error);\n\t\t\t\t// devHint(`Known bug: Zeichenkettenliste (string[])`);\n\t\t\t}\n\t\t});\n\t});\n};\n\nconst BOOLEAN = /^(true|false)$/;\nconst INTEGER = /^-?(0|[1-9]\\d*)$/;\nconst FLOAT = /^-?(0.|[1-9]\\d*.)\\d*[1-9]$/;\nexport const mapString2Unknown = (value: unknown) => {\n\tconst typeStr = typeof value;\n\tconst oldValue = `${value as string}`;\n\tif (typeof value === 'string') {\n\t\tif (BOOLEAN.test(value)) {\n\t\t\tvalue = value === 'true';\n\t\t} else if (INTEGER.test(value)) {\n\t\t\tvalue = parseInt(value);\n\t\t} else if (FLOAT.test(value)) {\n\t\t\tvalue = parseFloat(value);\n\t\t} else if (JSON_CHARS.test(value)) {\n\t\t\ttry {\n\t\t\t\tvalue = parseJson<unknown>(value);\n\t\t\t\t// eslint-disable-next-line no-empty\n\t\t\t} catch (e) {\n\t\t\t\t// value behält den ursprünglichen Wert\n\t\t\t}\n\t\t}\n\t}\n\tif (typeStr !== typeof value) {\n\t\tdevHint(`You have used a stringified property value (${oldValue} to ${JSON.stringify(value)}) which type switched from ${typeStr} to ${typeof value}!`);\n\t}\n\treturn value;\n};\n\nexport const stringifyJson = (value: unknown): string => {\n\ttry {\n\t\treturn JSON.stringify(value).replace(/\"/g, \"'\");\n\t} catch (error) {\n\t\tLog.warn(['stringifyJson', value]);\n\t\tLog.error(`↑ Das JSON konnte nicht in einen String umgewandelt werden. Es wird ein stringifizierbares JSON erwartet.`);\n\t\tthrow new Error();\n\t}\n};\n\nconst JSON_CHARS = /^[{[]/; // string starts with { or [\nexport const parseJson = <T>(value: unknown): T => {\n\tif (typeof value === 'string') {\n\t\ttry {\n\t\t\t// \"null\", \"true\", \"false\", \"0\" works too\n\t\t\treturn JSON.parse(value);\n\t\t} catch (error) {\n\t\t\tif (JSON_CHARS.test(value)) {\n\t\t\t\ttry {\n\t\t\t\t\treturn JSON.parse(value.replace(/'/g, '\"'));\n\t\t\t\t} catch (error) {\n\t\t\t\t\tLog.warn(['parseJson', value]);\n\t\t\t\t\tLog.error(`↑ Der JSON-String konnte nicht geparsed werden. Achten Sie darauf, dass einfache Anführungszeichen im Text maskiert werden (‘).`);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\tthrow new Error();\n};\n\nexport const mapBoolean2String = (value?: boolean): string | undefined => {\n\treturn typeof value === 'boolean' ? (value === true ? 'true' : 'false') : undefined;\n};\n\nexport const mapStringOrBoolean2String = (value?: string | boolean): string | undefined => {\n\treturn typeof value === 'string' ? value : mapBoolean2String(value);\n};\n\nexport const koliBriQuerySelector = <T extends Element>(selector: string, node?: Document | HTMLElement | ShadowRoot): T | null =>\n\tquerySelector<T>(selector, node || getDocument());\n\nexport const koliBriQuerySelectorAll = <T extends Element>(selector: string, node?: Document | HTMLElement | ShadowRoot): T[] =>\n\tquerySelectorAll<T>(selector, node || getDocument());\n\ninterface A11yColorContrast {\n\tbackgroundColor: string;\n\tcolor: string;\n\tdomNode: HTMLElement | HTMLSlotElement;\n\tlevel: string;\n\tscore: number;\n}\n\nlet DEFAULT_COLOR_CONTRAST: A11yColorContrast | null = null;\nconst getDefaultColorContrast = (): A11yColorContrast => {\n\tDEFAULT_COLOR_CONTRAST = DEFAULT_COLOR_CONTRAST || {\n\t\tbackgroundColor: '#00000000',\n\t\tcolor: '#00000000',\n\t\tdomNode: getDocument().body,\n\t\tlevel: 'Fail',\n\t\tscore: 1,\n\t};\n\treturn DEFAULT_COLOR_CONTRAST;\n};\n\nconst TRANSPARENT_REGEXP = /(\\d+, ){3}0\\)/;\nexport const koliBriA11yColorContrast = (domNode: HTMLElement, a11yColorContrast: A11yColorContrast = getDefaultColorContrast()): A11yColorContrast => {\n\tconst computedStyle = getComputedStyle(domNode);\n\tconst hexBG: string = TRANSPARENT_REGEXP.test(computedStyle.backgroundColor) ? a11yColorContrast.backgroundColor : rgba.hex(computedStyle.backgroundColor);\n\tconst hexC: string = TRANSPARENT_REGEXP.test(computedStyle.color) ? a11yColorContrast.color : rgba.hex(computedStyle.color);\n\tconst diff = hex(hexBG, hexC);\n\tconst contrast = {\n\t\tbackgroundColor: hexBG,\n\t\tcolor: hexC,\n\t\tdomNode: domNode,\n\t\tlevel: score(diff),\n\t\tscore: diff,\n\t};\n\tif (diff < 4.5) {\n\t\tLog.error([\n\t\t\t'Color-Contrast-Error',\n\t\t\t{\n\t\t\t\tbackgroundColor: contrast.backgroundColor,\n\t\t\t\tcolor: contrast.color,\n\t\t\t\tlevel: contrast.level,\n\t\t\t\tscore: contrast.score,\n\t\t\t},\n\t\t\tcontrast.domNode,\n\t\t]);\n\t}\n\treturn contrast;\n};\n\nexport const koliBriQuerySelectorColors = (selector: string, a11yColorContrast: A11yColorContrast = getDefaultColorContrast()): A11yColorContrast => {\n\tif (a11yColorContrast.domNode instanceof HTMLElement) {\n\t\ta11yColorContrast = koliBriA11yColorContrast(a11yColorContrast.domNode, a11yColorContrast);\n\t}\n\tconst selectedNode: HTMLElement | null = a11yColorContrast.domNode.querySelector<HTMLElement>(selector);\n\tif (selectedNode === null) {\n\t\tconst nodeList: NodeListOf<HTMLElement> = a11yColorContrast.domNode.querySelectorAll<HTMLElement>('[class=\"hydrated\"]');\n\t\tfor (let i = 0; i < nodeList.length; i++) {\n\t\t\t// const shadowRoot: ShadowRoot = nodeList[i].shadowRoot as ShadowRoot;\n\t\t\t// if (typeof shadowRoot === 'object' && shadowRoot !== null) {\n\t\t\t// a11yColorContrast.domNode = shadowRoot;\n\t\t\t// a11yColorContrast = koliBriQuerySelectorColors(selector, a11yColorContrast);\n\t\t\t// } else {\n\t\t\ta11yColorContrast.domNode = nodeList[i];\n\t\t\ta11yColorContrast = koliBriQuerySelectorColors(selector, a11yColorContrast);\n\t\t\t// }\n\t\t\tif (a11yColorContrast.domNode !== null) {\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t\treturn a11yColorContrast;\n\t} else {\n\t\treturn koliBriA11yColorContrast(selectedNode, a11yColorContrast);\n\t}\n};\n\nconst scrollByHTMLElement = (element: HTMLElement, parentElement: Window | HTMLElement = window): void => {\n\tif (element instanceof HTMLElement) {\n\t\tparentElement.scrollTo({\n\t\t\tbehavior: 'smooth',\n\t\t\ttop: element.getBoundingClientRect().top + getWindow().pageYOffset - 50,\n\t\t});\n\t\telement.focus();\n\t} else {\n\t\tdevHint(`Das HTMLElement ist nicht valide, zu dem gescrollt werden soll.`);\n\t}\n};\nexport const scrollBySelector = (selector: string, document?: Document | HTMLElement | ShadowRoot): void => {\n\tif (\n\t\t((selector as unknown) instanceof Document || (selector as unknown) instanceof HTMLElement || (selector as unknown) instanceof ShadowRoot) &&\n\t\ttypeof document === 'string'\n\t) {\n\t\tdevHint(\n\t\t\t`Bei der Methode querySelectorAll wurden die Parameter document, selector in selector, document getauscht, da der Parameter selector nicht, allerdings der Parameter document optional sein kann.`\n\t\t);\n\t\tconst temp = `${document as unknown as string}`;\n\t\tdocument = selector as unknown as Document;\n\t\tselector = temp;\n\t}\n\tif (typeof selector === 'string') {\n\t\tconst element: HTMLElement | null = koliBriQuerySelector<HTMLElement>(selector, document);\n\t\tif (element instanceof HTMLElement) {\n\t\t\tscrollByHTMLElement(element);\n\t\t} else {\n\t\t\tdevHint(`Es konnte kein HTMLElement mit dem Selector (${selector}) gefunden werden, zu dem gescrollt werden soll.`);\n\t\t}\n\t} else {\n\t\tdevHint(`Der Selector ist nicht valide, zu dem gescrollt werden soll.`);\n\t}\n};\n\nexport class KoliBriUtils {\n\tprivate static executionLock = false;\n\tprivate static cache = new Map<Element, A11yColorContrast>();\n\tpublic static queryHtmlElementColors(targetNode: HTMLElement, a11yColorContrast: A11yColorContrast, recursion = false, log = true): A11yColorContrast | null {\n\t\tlet returnValue = null;\n\t\tif (recursion === true || KoliBriUtils.executionLock === false) {\n\t\t\tif (recursion === false) {\n\t\t\t\tKoliBriUtils.cache.clear();\n\t\t\t\tKoliBriUtils.cache.set(a11yColorContrast.domNode, a11yColorContrast);\n\t\t\t\tKoliBriUtils.executionLock = true;\n\t\t\t\tif (log === true) {\n\t\t\t\t\tLog.debug(`[KoliBriUtils] Color contrast analysis started...`);\n\t\t\t\t}\n\t\t\t}\n\t\t\t// Log.debug(a11yColorContrast.domNode);\n\t\t\tif (targetNode === a11yColorContrast.domNode) {\n\t\t\t\treturnValue = a11yColorContrast;\n\t\t\t} else {\n\t\t\t\tconst children: Set<Element> = new Set<Element>();\n\t\t\t\tif (a11yColorContrast.domNode.shadowRoot) {\n\t\t\t\t\tconst shadowChildren = a11yColorContrast.domNode.shadowRoot.children;\n\t\t\t\t\tfor (let i = 0; i < shadowChildren.length; i++) {\n\t\t\t\t\t\tchildren.add(shadowChildren[i]);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tconst slotElement: HTMLSlotElement = a11yColorContrast.domNode as HTMLSlotElement;\n\t\t\t\tif (typeof slotElement.assignedNodes === 'function') {\n\t\t\t\t\tconst slotChildren = slotElement.assignedNodes();\n\t\t\t\t\tfor (let i = 0; i < slotChildren.length; i++) {\n\t\t\t\t\t\tif (slotChildren[i] instanceof HTMLElement) {\n\t\t\t\t\t\t\tchildren.add(slotChildren[i] as HTMLElement);\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tconst domChildren = a11yColorContrast.domNode.children;\n\t\t\t\tfor (let i = 0; i < domChildren.length; i++) {\n\t\t\t\t\tchildren.add(domChildren[i]);\n\t\t\t\t}\n\t\t\t\tconst arrayChildren = Array.from(children);\n\t\t\t\tfor (let i = 0; i < arrayChildren.length; i++) {\n\t\t\t\t\tlet colorContrast: A11yColorContrast | undefined = KoliBriUtils.cache.get(arrayChildren[i]);\n\t\t\t\t\tif (colorContrast === undefined) {\n\t\t\t\t\t\tcolorContrast = koliBriA11yColorContrast(arrayChildren[i] as HTMLElement, a11yColorContrast);\n\t\t\t\t\t}\n\t\t\t\t\tKoliBriUtils.cache.set(arrayChildren[i], colorContrast);\n\t\t\t\t\tconst colors: A11yColorContrast | null = KoliBriUtils.queryHtmlElementColors(targetNode, colorContrast, true, false);\n\t\t\t\t\tif (colors !== null) {\n\t\t\t\t\t\treturnValue = colors;\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t} else {\n\t\t\tLog.debug(`[KoliBriUtils] Call aborted because a color contrast analysis is currently being executed.`);\n\t\t}\n\t\tif (recursion === false) {\n\t\t\tif (log === true) {\n\t\t\t\tLog.debug(`[KoliBriUtils] Color contrast analysis finished (${KoliBriUtils.cache.size} DOM elements are analysed).`);\n\t\t\t}\n\t\t\tKoliBriUtils.executionLock = false;\n\t\t\tKoliBriUtils.cache.clear();\n\t\t}\n\t\treturn returnValue;\n\t}\n}\n\nexport class KoliBriDevHelper {\n\tpublic static readonly patchTheme = patchTheme;\n\tpublic static readonly patchThemeTag = patchThemeTag;\n\tpublic static readonly querySelector = koliBriQuerySelector;\n\tpublic static readonly querySelectorAll = koliBriQuerySelectorAll;\n\tpublic static readonly scrollByHTMLElement = scrollByHTMLElement;\n\tpublic static readonly scrollBySelector = scrollBySelector;\n\tpublic static readonly stringifyJson = stringifyJson;\n}\n"],"version":3}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
/*!
|
|
2
|
+
* KoliBri - The accessible HTML-Standard
|
|
3
|
+
*/
|
|
4
|
+
import{a as o}from"./index-34c3d6f8.js";import{r as t}from"./index-0962b5a1.js";import{L as s}from"./dev.utils-157f0499.js";import{s as f,g as a}from"./index-f4596895.js";const i=async()=>{o((o=>(o.shadowRoot instanceof ShadowRoot&&f(o,a(o)),"default"))),await t([],[]),import("./devtools-fc4614e6.js").then((o=>{"object"==typeof o&&null!==o&&"function"==typeof o.initialize&&o.initialize()})).catch((o=>{s.error(o)}))},e=i;export{e as g};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* KoliBri - The accessible HTML-Standard
|
|
3
3
|
*/
|
|
4
|
-
import{a as t,d as s}from"./prop.validators-2c20cdf8.js";import{I as e}from"./controller-
|
|
4
|
+
import{a as t,d as s}from"./prop.validators-2c20cdf8.js";import{I as e}from"./controller-4b599938.js";class r extends e{constructor(t,s,e){super(t,s,e),this.component=t}validateList(t){s(this.component,"_list",(t=>"string"==typeof t),t)}componentWillLoad(){super.componentWillLoad(),this.validateList(this.component._list)}}class i extends r{constructor(t,s,e){super(t,s,e),this.hasError=!1,this.hasList=!1,this.component=t}validateType(s){t(this.component,"_type",(t=>"string"==typeof t&&("text"===t||"search"===t||"url"===t||"tel"===t)),new Set(["String {text, search, url, tel}"]),s)}componentWillLoad(){super.componentWillLoad(),this.validateType(this.component._type)}}export{r as I,i as a};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["InputTextEmailController","InputPasswordController","constructor","component","name","host","super","this","validateList","value","watchJsonArrayString","item","componentWillLoad","_list","InputTextController","hasError","hasList","validateType","watchValidator","Set","_type"],"sources":["./src/components/input-text/controller.ts"],"sourcesContent":["import { watchJsonArrayString, watchValidator } from '../../utils/prop.validators';\nimport { InputPasswordController } from '../input-password/controller';\nimport { Props as InputTextProps, Watches as InputTextWatches } from './types';\n\nimport { Generic } from '@a11y-ui/core';\nimport { Stringified } from '../../types/common';\nimport { InputTextType } from '../../types/input/control/text';\nimport { PropLabel } from '../../types/props';\n\ntype RequiredProps = PropLabel;\ntype OptionalProps = {\n\tid: string;\n\tlist: Stringified<string[]>;\n};\ntype InputTextEmailProps = Generic.Element.Members<RequiredProps, OptionalProps>;\ntype InputTextEmailWatches = Generic.Element.Watchers<RequiredProps, OptionalProps>;\n\nexport class InputTextEmailController extends InputPasswordController implements InputTextEmailWatches {\n\tprotected readonly component: Generic.Element.Component & InputTextEmailProps;\n\n\tpublic constructor(component: Generic.Element.Component & InputTextEmailProps, name: string, host?: HTMLElement) {\n\t\tsuper(component, name, host);\n\t\tthis.component = component;\n\t}\n\n\tpublic validateList(value?: Stringified<string[]>): void {\n\t\twatchJsonArrayString(this.component, '_list', (item: string) => typeof item === 'string', value);\n\t}\n\n\tpublic componentWillLoad(): void {\n\t\tsuper.componentWillLoad();\n\t\tthis.validateList(this.component._list);\n\t}\n}\n\nexport class InputTextController extends InputTextEmailController implements InputTextWatches {\n\tprotected readonly component: Generic.Element.Component & InputTextProps;\n\n\tpublic hasError = false;\n\tpublic hasList = false;\n\n\tpublic constructor(component: Generic.Element.Component & InputTextProps, name: string, host?: HTMLElement) {\n\t\tsuper(component, name, host);\n\t\tthis.component = component;\n\t}\n\n\tpublic validateType(value?: InputTextType): void {\n\t\twatchValidator(\n\t\t\tthis.component,\n\t\t\t'_type',\n\t\t\t(value): boolean => typeof value === 'string' && (value === 'text' || value === 'search' || value === 'url' || value === 'tel'),\n\t\t\tnew Set(['String {text, search, url, tel}']),\n\t\t\tvalue\n\t\t);\n\t}\n\n\tpublic componentWillLoad(): void {\n\t\tsuper.componentWillLoad();\n\t\tthis.validateType(this.component._type);\n\t}\n}\n"],"mappings":";;;4GAiBaA,UAAiCC,EAG7CC,YAAmBC,EAA4DC,EAAcC,GAC5FC,MAAMH,EAAWC,EAAMC,GACvBE,KAAKJ,UAAYA,C,CAGXK,aAAaC,GACnBC,EAAqBH,KAAKJ,UAAW,SAAUQ,UAAwBA,IAAS,UAAUF,E,CAGpFG,oBACNN,MAAMM,oBACNL,KAAKC,aAAaD,KAAKJ,UAAUU,M,QAItBC,UAA4Bd,EAMxCE,YAAmBC,EAAuDC,EAAcC,GACvFC,MAAMH,EAAWC,EAAMC,GAJjBE,KAAAQ,SAAW,MACXR,KAAAS,QAAU,MAIhBT,KAAKJ,UAAYA,C,CAGXc,aAAaR,GACnBS,EACCX,KAAKJ,UACL,SACCM,UAA0BA,IAAU,WAAaA,IAAU,QAAUA,IAAU,UAAYA,IAAU,OAASA,IAAU,QACzH,IAAIU,IAAI,CAAC,oCACTV,E,CAIKG,oBACNN,MAAMM,oBACNL,KAAKU,aAAaV,KAAKJ,UAAUiB,M"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
/*!
|
|
2
|
+
* KoliBri - The accessible HTML-Standard
|
|
3
|
+
*/
|
|
4
|
+
import{d as t}from"./a11y.tipps-2e27f8e6.js";import{a as e,b as i,e as s,w as h}from"./prop.validators-2c20cdf8.js";import{I as a}from"./controller-icon-1255b762.js";class r extends a{constructor(e,a,o){super(e,a,o),this.handleHiddenLabelAndRequired=()=>{!0===this.component.state._hideLabel&&!0===this.component.state._required?(t("[KolInput*] Wenn man das Label ausblendet, dann kann der sehende Nutzer:in nicht mehr erkennen, ob die Eingabe erforderlich ist."),this.hideLabel=!1):this.hideLabel=!0===this.component.state._hideLabel},this.component=e}validateAutoComplete(t){e(this.component,"_autoComplete",(e=>"string"==typeof e&&("on"===e||"off"===e)),new Set(["on | off"]),t)}validateHideLabel(e){i(this.component,"_hideLabel",e,{hooks:{afterPatch:this.handleHiddenLabelAndRequired}})}validateMaxLength(e){s(this.component,"_maxLength",e,{min:0})}validatePattern(e){h(this.component,"_pattern",e)}validatePlaceholder(e){h(this.component,"_placeholder",e)}validateReadOnly(e){i(this.component,"_readOnly",e)}validateRequired(e){i(this.component,"_required",e,{hooks:{afterPatch:this.handleHiddenLabelAndRequired}})}validateSize(e){s(this.component,"_size",e,{min:1})}validateValue(e){h(this.component,"_value",e),this.setFormAssociatedValue(this.component.state._value)}componentWillLoad(){super.componentWillLoad(),this.validateAutoComplete(this.component._autoComplete),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(e){this.component.state=Object.assign(Object.assign({},this.component.state),{_placeholder:this.placeholderCache}),this.placeholderCache=void 0,super.onBlur(e)}onFocus(e){this.placeholderCache=this.component.state._placeholder,this.component.state=Object.assign(Object.assign({},this.component.state),{_placeholder:void 0}),super.onFocus(e)}}export{r as I};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["InputPasswordController","InputIconController","constructor","component","name","host","super","this","handleHiddenLabelAndRequired","state","_hideLabel","_required","devHint","hideLabel","validateAutoComplete","value","watchValidator","Set","validateHideLabel","watchBoolean","hooks","afterPatch","validateMaxLength","watchNumber","min","validatePattern","watchString","validatePlaceholder","validateReadOnly","validateRequired","validateSize","validateValue","setFormAssociatedValue","_value","componentWillLoad","_autoComplete","_maxLength","_pattern","_placeholder","_readOnly","_size","onBlur","event","Object","assign","placeholderCache","undefined","onFocus"],"sources":["./src/components/input-password/controller.ts"],"sourcesContent":["import { Generic } from '@a11y-ui/core';\nimport { InputTypeOnOff } from '../../types/input/types';\nimport { devHint } from '../../utils/a11y.tipps';\nimport { watchBoolean, watchNumber, watchString, watchValidator } from '../../utils/prop.validators';\nimport { InputIconController } from '../@deprecated/input/controller-icon';\nimport { Props, Watches } from './types';\n\nexport class InputPasswordController extends InputIconController implements Watches {\n\tprotected readonly component: Generic.Element.Component & Props;\n\tprivate placeholderCache?: string;\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\tprivate handleHiddenLabelAndRequired = (): void => {\n\t\tif (this.component.state._hideLabel === true && this.component.state._required === true) {\n\t\t\tdevHint(`[KolInput*] Wenn man das Label ausblendet, dann kann der sehende Nutzer:in nicht mehr erkennen, ob die Eingabe erforderlich ist.`);\n\t\t\tthis.hideLabel = false;\n\t\t} else {\n\t\t\tthis.hideLabel = this.component.state._hideLabel === true;\n\t\t}\n\t};\n\n\tpublic validateAutoComplete(value?: InputTypeOnOff): void {\n\t\twatchValidator(\n\t\t\tthis.component,\n\t\t\t'_autoComplete',\n\t\t\t(value): boolean => typeof value === 'string' && (value === 'on' || value === 'off'),\n\t\t\tnew Set(['on | off']),\n\t\t\tvalue\n\t\t);\n\t}\n\n\tpublic validateHideLabel(value?: boolean): void {\n\t\twatchBoolean(this.component, '_hideLabel', value, {\n\t\t\thooks: {\n\t\t\t\tafterPatch: this.handleHiddenLabelAndRequired,\n\t\t\t},\n\t\t});\n\t}\n\n\tpublic validateMaxLength(value?: number): void {\n\t\twatchNumber(this.component, '_maxLength', value, {\n\t\t\tmin: 0,\n\t\t});\n\t}\n\n\tpublic validatePattern(value?: string): void {\n\t\twatchString(this.component, '_pattern', value);\n\t}\n\n\tpublic validatePlaceholder(value?: string): void {\n\t\twatchString(this.component, '_placeholder', value);\n\t}\n\n\tpublic validateReadOnly(value?: boolean): void {\n\t\twatchBoolean(this.component, '_readOnly', value);\n\t}\n\n\tpublic validateRequired(value?: boolean): void {\n\t\twatchBoolean(this.component, '_required', value, {\n\t\t\thooks: {\n\t\t\t\tafterPatch: this.handleHiddenLabelAndRequired,\n\t\t\t},\n\t\t});\n\t}\n\n\tpublic validateSize(value?: number): void {\n\t\twatchNumber(this.component, '_size', value, {\n\t\t\tmin: 1,\n\t\t});\n\t}\n\n\tpublic validateValue(value?: string): void {\n\t\twatchString(this.component, '_value', value);\n\t\tthis.setFormAssociatedValue(this.component.state._value as string);\n\t}\n\n\tpublic componentWillLoad(): void {\n\t\tsuper.componentWillLoad();\n\t\tthis.validateAutoComplete(this.component._autoComplete);\n\t\tthis.validateMaxLength(this.component._maxLength);\n\t\tthis.validatePattern(this.component._pattern);\n\t\tthis.validatePlaceholder(this.component._placeholder);\n\t\tthis.validateReadOnly(this.component._readOnly);\n\t\tthis.validateRequired(this.component._required);\n\t\tthis.validateSize(this.component._size);\n\t\tthis.validateValue(this.component._value);\n\t}\n\n\tprotected onBlur(event: Event): void {\n\t\t/**\n\t\t * Beim Screenreader NVDA wird der Placeholder mit\n\t\t * vorgelesen. Somit kann es vorkommen, dass das\n\t\t * Label und der Placeholder vorgelesen werden.\n\t\t *\n\t\t * Aufgrund dessen, dass das Label immer vorgelesen\n\t\t * werden muss, kann das zusätzliche Vorlesen des\n\t\t * Placeholders störend sein.\n\t\t *\n\t\t * Damit beim Fokussieren das \"doppelte\" vorlesen\n\t\t * vermieden werden kann, wird der Placeholder für\n\t\t * den fokussierten Feldstatus entfernt.\n\t\t *\n\t\t * Hinweis: Für alle Nutzenden müssen die all dar-\n\t\t * gestellten Inhalte, also auch der Place-\n\t\t * holder, gleichermaßen zugänglich sein.\n\t\t * Das oben beschriebene Handling erfüllt\n\t\t * diese Anforderung nicht.\n\t\t */\n\t\tthis.component.state = {\n\t\t\t...this.component.state,\n\t\t\t_placeholder: this.placeholderCache,\n\t\t};\n\t\tthis.placeholderCache = undefined;\n\t\tsuper.onBlur(event);\n\t}\n\n\tprotected onFocus(event: Event): void {\n\t\tthis.placeholderCache = this.component.state._placeholder as string;\n\t\tthis.component.state = {\n\t\t\t...this.component.state,\n\t\t\t_placeholder: undefined,\n\t\t};\n\t\tsuper.onFocus(event);\n\t}\n}\n"],"mappings":";;;4KAOaA,UAAgCC,EAI5CC,YAAmBC,EAA8CC,EAAcC,GAC9EC,MAAMH,EAAWC,EAAMC,GAIhBE,KAAAC,6BAA+B,KACtC,GAAID,KAAKJ,UAAUM,MAAMC,aAAe,MAAQH,KAAKJ,UAAUM,MAAME,YAAc,KAAM,CACxFC,EAAQ,oIACRL,KAAKM,UAAY,K,KACX,CACNN,KAAKM,UAAYN,KAAKJ,UAAUM,MAAMC,aAAe,I,GARtDH,KAAKJ,UAAYA,C,CAYXW,qBAAqBC,GAC3BC,EACCT,KAAKJ,UACL,iBACCY,UAA0BA,IAAU,WAAaA,IAAU,MAAQA,IAAU,QAC9E,IAAIE,IAAI,CAAC,aACTF,E,CAIKG,kBAAkBH,GACxBI,EAAaZ,KAAKJ,UAAW,aAAcY,EAAO,CACjDK,MAAO,CACNC,WAAYd,KAAKC,+B,CAKbc,kBAAkBP,GACxBQ,EAAYhB,KAAKJ,UAAW,aAAcY,EAAO,CAChDS,IAAK,G,CAIAC,gBAAgBV,GACtBW,EAAYnB,KAAKJ,UAAW,WAAYY,E,CAGlCY,oBAAoBZ,GAC1BW,EAAYnB,KAAKJ,UAAW,eAAgBY,E,CAGtCa,iBAAiBb,GACvBI,EAAaZ,KAAKJ,UAAW,YAAaY,E,CAGpCc,iBAAiBd,GACvBI,EAAaZ,KAAKJ,UAAW,YAAaY,EAAO,CAChDK,MAAO,CACNC,WAAYd,KAAKC,+B,CAKbsB,aAAaf,GACnBQ,EAAYhB,KAAKJ,UAAW,QAASY,EAAO,CAC3CS,IAAK,G,CAIAO,cAAchB,GACpBW,EAAYnB,KAAKJ,UAAW,SAAUY,GACtCR,KAAKyB,uBAAuBzB,KAAKJ,UAAUM,MAAMwB,O,CAG3CC,oBACN5B,MAAM4B,oBACN3B,KAAKO,qBAAqBP,KAAKJ,UAAUgC,eACzC5B,KAAKe,kBAAkBf,KAAKJ,UAAUiC,YACtC7B,KAAKkB,gBAAgBlB,KAAKJ,UAAUkC,UACpC9B,KAAKoB,oBAAoBpB,KAAKJ,UAAUmC,cACxC/B,KAAKqB,iBAAiBrB,KAAKJ,UAAUoC,WACrChC,KAAKsB,iBAAiBtB,KAAKJ,UAAUQ,WACrCJ,KAAKuB,aAAavB,KAAKJ,UAAUqC,OACjCjC,KAAKwB,cAAcxB,KAAKJ,UAAU8B,O,CAGzBQ,OAAOC,GAoBhBnC,KAAKJ,UAAUM,MAAKkC,OAAAC,OAAAD,OAAAC,OAAA,GAChBrC,KAAKJ,UAAUM,OAAK,CACvB6B,aAAc/B,KAAKsC,mBAEpBtC,KAAKsC,iBAAmBC,UACxBxC,MAAMmC,OAAOC,E,CAGJK,QAAQL,GACjBnC,KAAKsC,iBAAmBtC,KAAKJ,UAAUM,MAAM6B,aAC7C/B,KAAKJ,UAAUM,MAAKkC,OAAAC,OAAAD,OAAAC,OAAA,GAChBrC,KAAKJ,UAAUM,OAAK,CACvB6B,aAAcQ,YAEfxC,MAAMyC,QAAQL,E"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* KoliBri - The accessible HTML-Standard
|
|
3
3
|
*/
|
|
4
|
-
import{a as t,d as s,m as i,s as e,b as a}from"./prop.validators-2c20cdf8.js";import{S as o}from"./reuse-3a02afb9.js";import{I as r}from"./controller-
|
|
4
|
+
import{a as t,d as s,m as i,s as e,b as a}from"./prop.validators-2c20cdf8.js";import{S as o}from"./reuse-3a02afb9.js";import{I as r}from"./controller-e02d4577.js";const h=(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)?h(t,e.options,a):t.set(a,e))}))};class l extends r{constructor(t,e,o){super(t,e,o),this.component=t}validateRequired(t){a(this.component,"_required",t)}componentWillLoad(){super.componentWillLoad(),this.validateRequired(this.component._required)}}class n extends l{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.beforePatchListValue=(t,e)=>{const o=e.has("_list")?e.get("_list"):this.component.state._list;if(Array.isArray(o)&&o.length>0){this.keyOptionMap.clear(),h(this.keyOptionMap,o);const t=e.has("_value")?e.get("_value"):this.component.state._value;if(!1===this.isValueInOptions(t,o)){const t=o[0].value;e.set("_value",t),this.onStateChange()}}},this.component=t}validateOrientation(e){t(this.component,"_orientation",(t=>"horizontal"===t||"vertical"===t),new Set(["Orientation {horizontal, vertical}"]),e,{defaultValue:"vertical"})}validateList(t){s(this.component,"_list",(t=>"object"==typeof t&&null!==t&&"string"==typeof t.label&&t.label.length>0),t,void 0,{hooks:{beforePatch:this.beforePatchListValue}})}validateValue(t){t=i(t),t=Array.isArray(t)?t[0]:t,e(this.component,"_value",t,{beforePatch:this.beforePatchListValue}),this.setFormAssociatedValue(this.component._value)}componentWillLoad(t){super.componentWillLoad(),this.onStateChange=()=>{if("function"==typeof t){const e=setTimeout((()=>{clearTimeout(e),t(o)}))}},this.validateOrientation(this.component._orientation),this.validateList(this.component._list),this.validateValue(this.component._value)}}export{l as I,n as a,h as f};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["fillKeyOptionMap","keyOptionMap","options","preKey","forEach","option","index","key","label","length","Array","isArray","set","InputCheckboxRadioController","InputController","constructor","component","name","host","super","this","validateRequired","value","watchBoolean","componentWillLoad","_required","InputRadioController","Map","getOptionByKey","get","isValueInOptions","find","undefined","beforePatchListValue","_value","nextState","list","has","state","_list","clear","newValue","onStateChange","validateOrientation","watchValidator","Set","defaultValue","validateList","watchJsonArrayString","item","hooks","beforePatch","validateValue","mapString2Unknown","setState","setFormAssociatedValue","onChange","timeout","setTimeout","clearTimeout","STATE_CHANGE_EVENT","_orientation"],"sources":["./src/components/input-radio/controller.ts"],"sourcesContent":["import { Generic } from '@a11y-ui/core';\nimport { Stringified } from '../../types/common';\nimport { Optgroup, Option, SelectOption } from '../../types/input/types';\nimport { Orientation } from '../../types/orientation';\nimport { PropLabel } from '../../types/props';\nimport { W3CInputValue } from '../../types/w3c';\nimport { mapString2Unknown, setState, watchBoolean, watchJsonArrayString, 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 = PropLabel;\ntype OptionalProps = {\n\trequired: boolean;\n};\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\twatchBoolean(this.component, '_required', 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 beforePatchListValue = (_value: unknown, nextState: Map<string, unknown>): void => {\n\t\tconst list = nextState.has('_list') ? nextState.get('_list') : this.component.state._list;\n\t\tif (Array.isArray(list) && list.length > 0) {\n\t\t\tthis.keyOptionMap.clear();\n\t\t\tfillKeyOptionMap(this.keyOptionMap, list 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, list as Option<W3CInputValue>[]) === false) {\n\t\t\t\tconst newValue = (\n\t\t\t\t\tlist[0] as {\n\t\t\t\t\t\tvalue: string;\n\t\t\t\t\t}\n\t\t\t\t).value;\n\t\t\t\tnextState.set('_value', newValue);\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 validateList(value?: Stringified<Option<W3CInputValue>[]>): void {\n\t\twatchJsonArrayString(\n\t\t\tthis.component,\n\t\t\t'_list',\n\t\t\t(item: Option<W3CInputValue>) => typeof item === 'object' && item !== null && typeof item.label === 'string' && item.label.length > 0,\n\t\t\tvalue,\n\t\t\tundefined,\n\t\t\t{\n\t\t\t\thooks: {\n\t\t\t\t\tbeforePatch: this.beforePatchListValue,\n\t\t\t\t},\n\t\t\t}\n\t\t);\n\t}\n\n\tpublic validateValue(value?: Stringified<unknown>): void {\n\t\tvalue = mapString2Unknown(value);\n\t\tvalue = Array.isArray(value) ? value[0] : value;\n\t\tsetState(this.component, '_value', value, {\n\t\t\tbeforePatch: this.beforePatchListValue,\n\t\t});\n\t\tthis.setFormAssociatedValue(this.component._value as string);\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.validateList(this.component._list);\n\t\tthis.validateValue(this.component._value);\n\t}\n}\n"],"mappings":";;;yKAWaA,EAAmB,CAAIC,EAAsCC,EAA4BC,EAAS,MAC9GD,EAAQE,SAAQ,CAACC,EAAQC,KACxB,MAAMC,EAAM,GAAGJ,KAAUG,IACzB,UAAWD,IAAW,UAAYA,IAAW,aAAeA,EAAOG,QAAU,UAAYH,EAAOG,MAAMC,OAAS,EAAG,CACjH,GAAIC,MAAMC,QAASN,EAAuBH,SAAU,CACnDF,EAAiBC,EAAeI,EAAuBH,QAASK,E,KAC1D,CACNN,EAAaW,IAAIL,EAAKF,E,KAGvB,E,MAUUQ,UAAqCC,EAGjDC,YAAmBC,EAAgEC,EAAcC,GAChGC,MAAMH,EAAWC,EAAMC,GACvBE,KAAKJ,UAAYA,C,CAGXK,iBAAiBC,GACvBC,EAAaH,KAAKJ,UAAW,YAAaM,E,CAGpCE,oBACNL,MAAMK,oBACNJ,KAAKC,iBAAiBD,KAAKJ,UAAUS,U,QAI1BC,UAA6Bb,EAKzCE,YAAmBC,EAA8CC,EAAcC,GAC9EC,MAAMH,EAAWC,EAAMC,GAHPE,KAAAnB,aAAe,IAAI0B,IAOpBP,KAAAQ,eAAkBrB,GAAmDa,KAAKnB,aAAa4B,IAAItB,GAE1Fa,KAAAU,iBAAmB,CAACR,EAAgBpB,IAC7CA,EAAQ6B,MAAM1B,GAAWA,EAAOiB,QAAUA,MAAWU,UAG1CZ,KAAAa,qBAAuB,CAACC,EAAiBC,KAC3D,MAAMC,EAAOD,EAAUE,IAAI,SAAWF,EAAUN,IAAI,SAAWT,KAAKJ,UAAUsB,MAAMC,MACpF,GAAI7B,MAAMC,QAAQyB,IAASA,EAAK3B,OAAS,EAAG,CAC3CW,KAAKnB,aAAauC,QAClBxC,EAAiBoB,KAAKnB,aAAcmC,GACpC,MAAMd,EAAQa,EAAUE,IAAI,UAAYF,EAAUN,IAAI,UAAYT,KAAKJ,UAAUsB,MAAMJ,OACvF,GAAId,KAAKU,iBAAiBR,EAAOc,KAAqC,MAAO,CAC5E,MAAMK,EACLL,EAAK,GAGJd,MACFa,EAAUvB,IAAI,SAAU6B,GACxBrB,KAAKsB,e,IAtBPtB,KAAKJ,UAAYA,C,CA2BX2B,oBAAoBrB,GAC1BsB,EACCxB,KAAKJ,UACL,gBACCM,GAAmBA,IAAU,cAAgBA,IAAU,YACxD,IAAIuB,IAAI,CAAC,uCACTvB,EACA,CACCwB,aAAc,Y,CAKVC,aAAazB,GACnB0B,EACC5B,KAAKJ,UACL,SACCiC,UAAuCA,IAAS,UAAYA,IAAS,aAAeA,EAAKzC,QAAU,UAAYyC,EAAKzC,MAAMC,OAAS,GACpIa,EACAU,UACA,CACCkB,MAAO,CACNC,YAAa/B,KAAKa,uB,CAMfmB,cAAc9B,GACpBA,EAAQ+B,EAAkB/B,GAC1BA,EAAQZ,MAAMC,QAAQW,GAASA,EAAM,GAAKA,EAC1CgC,EAASlC,KAAKJ,UAAW,SAAUM,EAAO,CACzC6B,YAAa/B,KAAKa,uBAEnBb,KAAKmC,uBAAuBnC,KAAKJ,UAAUkB,O,CAGrCV,kBAAkBgC,GACxBrC,MAAMK,oBAENJ,KAAKsB,cAAgB,KACpB,UAAWc,IAAa,WAAY,CACnC,MAAMC,EAAUC,YAAW,KAC1BC,aAAaF,GACbD,EAASI,EAAmB,G,GAK/BxC,KAAKuB,oBAAoBvB,KAAKJ,UAAU6C,cACxCzC,KAAK2B,aAAa3B,KAAKJ,UAAUuB,OACjCnB,KAAKgC,cAAchC,KAAKJ,UAAUkB,O"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
/*!
|
|
2
|
+
* KoliBri - The accessible HTML-Standard
|
|
3
|
+
*/
|
|
4
|
+
import{g as i,d as t}from"./a11y.tipps-2e27f8e6.js";import{b as s,w as e,s as h,o as n,p as o}from"./prop.validators-2c20cdf8.js";import{v as a}from"./tab-index-2de507bb.js";import{b as d}from"./dev.utils-157f0499.js";import{v as r}from"./label-58f2333f.js";const l=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}},f=d();function u(t,e,o){f&&("boolean"==typeof o||"number"==typeof o||"string"==typeof o?null==e||e.setAttribute(t,`${o}`):null==e||e.removeAttribute(t))}class v{constructor(t,e,o){var n,i,s,a,h;if(this.syncFormAssociatedName=()=>{u("id",this.formAssociated,this.component.state._id),u("name",this.formAssociated,this.component.state._name),u("value",this.formAssociated,this.component.state._value)},this.setFormAssociatedValue=(t=null)=>{u("value",this.formAssociated,t)},this.component=t,this.name=e,this.host=o,f){this.formAssociated=document.createElement("input"),this.formAssociated.setAttribute("type","hidden");const t=(null===(n=this.host)||void 0===n?void 0:n.children)||[];for(let e=0;e<t.length;e++)"INPUT"===(null===(i=this.host)||void 0===i?void 0:i.children[e].tagName)&&(null===(s=this.host)||void 0===s||s.removeChild(null===(a=this.host)||void 0===a?void 0:a.children[e]));null===(h=this.host)||void 0===h||h.appendChild(this.formAssociated)}}validateAlert(t){s(this.component,"_alert",t)}validateTouched(t){s(this.component,"_touched",t)}componentWillLoad(){this.validateAlert(this.component._alert),this.validateTouched(this.component._touched)}}class c extends v{constructor(t,e,o){super(t,e,o),this.hideLabel=!1,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){e(this.component,"_accessKey",t)}validateAdjustHeight(t){s(this.component,"_adjustHeight",t)}validateDisabled(t){s(this.component,"_disabled",t),!0===t&&i()}validateError(t){e(this.component,"_error",t)}validateHideLabel(t){s(this.component,"_hideLabel",t)}validateHint(t){e(this.component,"_hint",t)}validateId(o){e(this.component,"_id",o,{hooks:{afterPatch:this.syncFormAssociatedName},minLength:1}),""!==o&&void 0!==o||t("Eine eindeutige ID an den Eingabefeldern ist nicht zwingend erforderlich, könnte aber für die E2E-Tests relevant sein.")}validateLabel(t){r(this.component,t)}validateName(o){e(this.component,"_name",o,{hooks:{afterPatch:this.syncFormAssociatedName}}),void 0===o&&t("Ein Name an den Eingabefeldern ist nicht zwingend erforderlich, kann aber für die Autocomplete-Funktion und für das statische Versenden des Eingabefeldes relevant sein.")}validateOn(t){"object"==typeof t&&h(this.component,"_on",t)}validateSmartButton(t){n(t,(()=>{try{t=o(t)}catch(t){}h(this.component,"_smartButton",t)}))}validateTabIndex(t){a(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.validateHideLabel(this.component._hideLabel),this.validateHint(this.component._hint),this.validateId(this.component._id),this.validateLabel(this.component._label),this.validateName(this.component._name),this.validateSmartButton(this.component._smartButton),this.validateOn(this.component._on),this.validateTabIndex(this.component._tabIndex),this.syncFormAssociatedName()}onBlur(t){var e;this.component._alert=!0,this.component._touched=!0,"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;this.setFormAssociatedValue(o),this.valueChangeListeners.forEach((t=>t(o))),"function"==typeof(null===(e=this.component._on)||void 0===e?void 0:e.onChange)&&this.component._on.onChange(t,o)}onClick(t){var e;"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,"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{c as I,l as g};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["getRenderStates","state","hasError","_error","length","_touched","hasHint","_hint","ariaDescribedBy","push","_id","EXPERIMENTAL_MODE","getExperimalMode","syncElementAttribute","qualifiedName","element","value","setAttribute","removeAttribute","ControlledInputController","constructor","component","name","host","this","syncFormAssociatedName","formAssociated","_name","_value","setFormAssociatedValue","document","createElement","children","_a","i","_b","tagName","_c","removeChild","_d","_e","appendChild","validateAlert","watchBoolean","validateTouched","componentWillLoad","_alert","InputController","super","hideLabel","valueChangeListeners","onFacade","onBlur","bind","onChange","onClick","onFocus","validateAccessKey","watchString","validateAdjustHeight","validateDisabled","a11yHintDisabled","validateError","validateHideLabel","validateHint","validateId","hooks","afterPatch","minLength","devHint","validateLabel","validateName","validateOn","setState","validateSmartButton","objectObjectHandler","parseJson","e","validateTabIndex","_accessKey","_adjustHeight","_disabled","_hideLabel","_label","_smartButton","_on","_tabIndex","event","target","forEach","listener","setValue","addValueChangeListener"],"sources":["./src/components/input/controller.ts","./src/components/input-adapter-leanup/controller.ts","./src/components/@deprecated/input/controller.ts"],"sourcesContent":["/**\n * Berechnet in Abhängigkeit des Component-State, wie die\n * aria-describedby-Attributs gesetzt werden sollen.\n *\n * @param state State der Component\n * @returns Render-States\n */\nexport const getRenderStates = (state: {\n\t_error?: string;\n\t_hint?: string;\n\t_id: string;\n\t_touched?: boolean;\n}): {\n\thasError: boolean;\n\thasHint: boolean;\n\tariaDescribedBy: string[];\n} => {\n\tconst hasError = typeof state._error === 'string' && state._error.length > 0 && state._touched === true;\n\tconst hasHint = typeof state._hint === 'string' && state._hint.length > 0;\n\n\tconst ariaDescribedBy: string[] = [];\n\tif (hasError === true) {\n\t\tariaDescribedBy.push(`${state._id}-error`);\n\t}\n\tif (hasHint === true) {\n\t\tariaDescribedBy.push(`${state._id}-hint`);\n\t}\n\treturn { hasError, hasHint, ariaDescribedBy };\n};\n","import { Generic } from '@a11y-ui/core';\nimport { getExperimalMode } from '../../utils/dev.utils';\nimport { watchBoolean } from '../../utils/prop.validators';\nimport { Props, Watches } from './types';\n\nconst EXPERIMENTAL_MODE = getExperimalMode();\n\nfunction syncElementAttribute(qualifiedName: string, element?: HTMLElement, value?: string | number | boolean) {\n\tif (EXPERIMENTAL_MODE) {\n\t\tif (typeof value === 'boolean' || typeof value === 'number' || typeof value === 'string') {\n\t\t\telement?.setAttribute(qualifiedName, `${value as string}`);\n\t\t} else {\n\t\t\telement?.removeAttribute(qualifiedName);\n\t\t}\n\t}\n}\n\nexport class ControlledInputController implements Watches {\n\tprotected readonly component: Generic.Element.Component & Props;\n\tprotected readonly name: string;\n\tprotected readonly host?: HTMLElement;\n\n\tpublic readonly formAssociated?: HTMLInputElement;\n\n\tpublic constructor(component: Generic.Element.Component & Props, name: string, host?: HTMLElement) {\n\t\tthis.component = component;\n\t\tthis.name = name;\n\t\tthis.host = host;\n\t\tif (EXPERIMENTAL_MODE) {\n\t\t\tthis.formAssociated = document.createElement('input');\n\t\t\tthis.formAssociated.setAttribute('type', 'hidden');\n\t\t\tconst children = this.host?.children || [];\n\t\t\tfor (let i = 0; i < children.length; i++) {\n\t\t\t\tif (this.host?.children[i].tagName === 'INPUT') {\n\t\t\t\t\tthis.host?.removeChild(this.host?.children[i]);\n\t\t\t\t}\n\t\t\t}\n\t\t\tthis.host?.appendChild(this.formAssociated);\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\tprotected readonly syncFormAssociatedName = () => {\n\t\tsyncElementAttribute('id', this.formAssociated, this.component.state._id as string);\n\t\tsyncElementAttribute('name', this.formAssociated, this.component.state._name as string);\n\t\tsyncElementAttribute('value', this.formAssociated, this.component.state._value as string);\n\t};\n\n\tpublic readonly setFormAssociatedValue = (value: string | null = null) => {\n\t\tsyncElementAttribute('value', this.formAssociated, value as string);\n\t};\n\n\tpublic validateAlert(value?: boolean): void {\n\t\twatchBoolean(this.component, '_alert', value);\n\t}\n\n\tpublic validateTouched(value?: boolean): void {\n\t\twatchBoolean(this.component, '_touched', value);\n\t}\n\n\tpublic componentWillLoad(): void {\n\t\tthis.validateAlert(this.component._alert);\n\t\tthis.validateTouched(this.component._touched);\n\t}\n}\n","import { Generic } from '@a11y-ui/core';\nimport { ButtonProps } from '../../../types/button-link';\nimport { InputTypeOnDefault } from '../../../types/input/types';\nimport { a11yHintDisabled, devHint } from '../../../utils/a11y.tipps';\nimport { objectObjectHandler, parseJson, setState, watchBoolean, watchString } from '../../../utils/prop.validators';\nimport { validateTabIndex } from '../../../utils/validators/tab-index';\nimport { ControlledInputController } from '../../input-adapter-leanup/controller';\nimport { Props as AdapterProps } from '../../input-adapter-leanup/types';\nimport { Props, Watches } from './types';\nimport { validateLabel } from '../../../types/props';\n\ntype ValueChangeListener = (value: string) => void;\n\nexport class InputController extends ControlledInputController implements Watches {\n\tprotected readonly component: Generic.Element.Component & Props & AdapterProps;\n\n\tpublic hideLabel = false;\n\n\tprivate readonly valueChangeListeners: ValueChangeListener[] = [];\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 validateAccessKey(value?: string): void {\n\t\twatchString(this.component, '_accessKey', value);\n\t}\n\n\tpublic validateAdjustHeight(value?: boolean): void {\n\t\twatchBoolean(this.component, '_adjustHeight', value);\n\t}\n\n\tpublic validateDisabled(value?: boolean): void {\n\t\twatchBoolean(this.component, '_disabled', value);\n\t\tif (value === true) {\n\t\t\ta11yHintDisabled();\n\t\t}\n\t}\n\n\tpublic validateError(value?: string): void {\n\t\twatchString(this.component, '_error', value);\n\t}\n\n\tpublic validateHideLabel(value?: boolean): void {\n\t\twatchBoolean(this.component, '_hideLabel', value);\n\t}\n\n\tpublic validateHint(value?: string): void {\n\t\twatchString(this.component, '_hint', value);\n\t}\n\n\tpublic validateId(value?: string): void {\n\t\twatchString(this.component, '_id', value, {\n\t\t\thooks: {\n\t\t\t\tafterPatch: this.syncFormAssociatedName,\n\t\t\t},\n\t\t\tminLength: 1,\n\t\t});\n\t\tif (value === '' || typeof value === 'undefined') {\n\t\t\tdevHint(`Eine eindeutige ID an den Eingabefeldern ist nicht zwingend erforderlich, könnte aber für die E2E-Tests relevant sein.`);\n\t\t}\n\t}\n\n\tpublic validateLabel(value?: string): void {\n\t\tvalidateLabel(this.component, value);\n\t}\n\n\tpublic validateName(value?: string): void {\n\t\twatchString(this.component, '_name', value, {\n\t\t\thooks: {\n\t\t\t\tafterPatch: this.syncFormAssociatedName,\n\t\t\t},\n\t\t});\n\t\tif (typeof value === 'undefined') {\n\t\t\tdevHint(\n\t\t\t\t`Ein Name an den Eingabefeldern 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 validateOn(value?: InputTypeOnDefault): void {\n\t\tif (typeof value === 'object') {\n\t\t\tsetState(this.component, '_on', value);\n\t\t}\n\t}\n\n\tpublic validateSmartButton(value?: ButtonProps | string): void {\n\t\tobjectObjectHandler(value, () => {\n\t\t\ttry {\n\t\t\t\tvalue = parseJson<ButtonProps>(value as string);\n\t\t\t\t// eslint-disable-next-line no-empty\n\t\t\t} catch (e) {\n\t\t\t\t// value behält den ursprünglichen Wert\n\t\t\t}\n\t\t\tsetState(this.component, '_smartButton', value);\n\t\t});\n\t}\n\n\tpublic validateTabIndex(value?: number): void {\n\t\tvalidateTabIndex(this.component, value);\n\t}\n\n\tpublic componentWillLoad(): void {\n\t\tsuper.componentWillLoad();\n\t\tthis.validateAccessKey(this.component._accessKey);\n\t\tthis.validateAdjustHeight(this.component._adjustHeight);\n\t\tthis.validateError(this.component._error);\n\t\tthis.validateDisabled(this.component._disabled);\n\t\tthis.validateHideLabel(this.component._hideLabel);\n\t\tthis.validateHint(this.component._hint);\n\t\tthis.validateId(this.component._id);\n\t\tthis.validateLabel(this.component._label);\n\t\tthis.validateName(this.component._name);\n\t\tthis.validateSmartButton(this.component._smartButton);\n\t\tthis.validateOn(this.component._on);\n\t\tthis.validateTabIndex(this.component._tabIndex);\n\t\tthis.syncFormAssociatedName();\n\t}\n\n\tprotected onBlur(event: Event): void {\n\t\tthis.component._alert = true;\n\t\tthis.component._touched = true;\n\t\tif (typeof this.component._on?.onBlur === 'function') {\n\t\t\tthis.component._on.onBlur(event);\n\t\t}\n\t}\n\n\tprotected onChange(event: Event): void {\n\t\tconst value = (event.target as HTMLInputElement).value;\n\t\tthis.setFormAssociatedValue(value);\n\t\tthis.valueChangeListeners.forEach((listener) => listener(value));\n\t\tif (typeof this.component._on?.onChange === 'function') {\n\t\t\t/**\n\t\t\t * TODO\n\t\t\t * Value-Handling muss für InputDate und InputNumber optimiert werden\n\t\t\t * - value\n\t\t\t * - valueAsNumber\n\t\t\t * - valueAsDate\n\t\t\t */\n\t\t\tthis.component._on.onChange(event, value);\n\t\t}\n\t}\n\n\tprotected onClick(event: Event): void {\n\t\tif (typeof this.component._on?.onClick === 'function') {\n\t\t\tthis.component._on.onClick(event);\n\t\t}\n\t}\n\n\tprotected onFocus(event: Event): void {\n\t\tthis.component._alert = true;\n\t\tif (typeof this.component._on?.onFocus === 'function') {\n\t\t\tthis.component._on.onFocus(event);\n\t\t}\n\t}\n\n\tpublic setValue(event: Event, value: string | number | boolean): void {\n\t\tthis.setFormAssociatedValue(value as string);\n\t\tif (typeof this.component._on?.onChange === 'function') {\n\t\t\tthis.component._on.onChange(event, value);\n\t\t}\n\t}\n\n\tpublic addValueChangeListener(listener: ValueChangeListener) {\n\t\tthis.valueChangeListeners.push(listener);\n\t}\n\n\t/**\n\t * Hinweis: In der Subklasse 'InputPasswordController'\n\t * werden die Methoden onBlur und onFocus\n\t * überschrieben.\n\t * Es werden somit zunächst die Methoden der\n\t * Subklasse ausgeführt und danach die der\n\t * Oberklassen.\n\t */\n\tpublic readonly onFacade = {\n\t\tonBlur: this.onBlur.bind(this),\n\t\tonChange: this.onChange.bind(this),\n\t\tonClick: this.onClick.bind(this),\n\t\tonFocus: this.onFocus.bind(this),\n\t};\n}\n"],"mappings":"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"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
/*!
|
|
2
|
+
* KoliBri - The accessible HTML-Standard
|
|
3
|
+
*/
|
|
4
|
+
import{i as o}from"./icon-52e86ff8.js";import{o as t,p as s,a as r}from"./prop.validators-2c20cdf8.js";import{b as i}from"./reuse-3a02afb9.js";import{I as e}from"./controller-e02d4577.js";const c=(o,t)=>{const e=o;"object"==typeof e&&null!==e&&(i(e.right,1)&&(e.right={icon:e.right}),i(e.left,1)&&(e.left={icon:e.left}),t.set("_icon",e))};class a extends e{constructor(o,t,e){super(o,t,e),this.component=o}validateIcon(e){t(e,(()=>{try{e=s(e)}catch(o){}r(this.component,"_icon",(t=>"object"==typeof t&&null!==t&&(i(t.left,1)||o(t.left)||i(t.right,1)||o(t.right))),new Set(["KoliBriHorizontalIcon"]),e,{hooks:{beforePatch:c},required:!0})}))}componentWillLoad(){super.componentWillLoad(),this.validateIcon(this.component._icon)}}export{a as I};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["beforePatchIcon","value","nextState","icon","isString","right","left","set","InputIconController","InputController","constructor","component","name","host","super","this","validateIcon","objectObjectHandler","parseJson","e","watchValidator","isIcon","Set","hooks","beforePatch","required","componentWillLoad","_icon"],"sources":["./src/components/@deprecated/input/controller-icon.ts"],"sourcesContent":["import { Generic } from '@a11y-ui/core';\nimport { Stringified } from '../../../types/common';\nimport { KoliBriHorizontalIcon } from '../../../types/icon';\nimport {
|
|
1
|
+
{"version":3,"names":["beforePatchIcon","value","nextState","icon","isString","right","left","set","InputIconController","InputController","constructor","component","name","host","super","this","validateIcon","objectObjectHandler","parseJson","e","watchValidator","isIcon","Set","hooks","beforePatch","required","componentWillLoad","_icon"],"sources":["./src/components/@deprecated/input/controller-icon.ts"],"sourcesContent":["import { Generic } from '@a11y-ui/core';\nimport { Stringified } from '../../../types/common';\nimport { KoliBriHorizontalIcon } from '../../../types/icon';\nimport { isIcon } from '../../../types/props/icon';\nimport { objectObjectHandler, parseJson, watchValidator } from '../../../utils/prop.validators';\nimport { isString } from '../../../utils/validator';\nimport { InputController } from './controller';\nimport { Props, Watches } from './types-icon';\n\nconst beforePatchIcon = (value: unknown, nextState: Map<string, unknown>): void => {\n\tconst icon = value as KoliBriHorizontalIcon;\n\tif (typeof icon === 'object' && icon !== null) {\n\t\tif (isString(icon.right, 1)) {\n\t\t\ticon.right = { icon: icon.right as string };\n\t\t}\n\t\tif (isString(icon.left, 1)) {\n\t\t\ticon.left = { icon: icon.left as string };\n\t\t}\n\t\tnextState.set('_icon', icon);\n\t}\n};\n\nexport class InputIconController extends InputController implements Watches {\n\tprotected readonly component: Generic.Element.Component & Props;\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 validateIcon(value?: Stringified<KoliBriHorizontalIcon>): void {\n\t\tobjectObjectHandler(value, () => {\n\t\t\ttry {\n\t\t\t\tvalue = parseJson<KoliBriHorizontalIcon>(value as string);\n\t\t\t\t// eslint-disable-next-line no-empty\n\t\t\t} catch (e) {\n\t\t\t\t// value behält den ursprünglichen Wert\n\t\t\t}\n\t\t\twatchValidator(\n\t\t\t\tthis.component,\n\t\t\t\t'_icon',\n\t\t\t\t(value): boolean => {\n\t\t\t\t\treturn (\n\t\t\t\t\t\ttypeof value === 'object' && value !== null && (isString(value.left, 1) || isIcon(value.left) || isString(value.right, 1) || isIcon(value.right))\n\t\t\t\t\t);\n\t\t\t\t},\n\t\t\t\tnew Set(['KoliBriHorizontalIcon']),\n\t\t\t\tvalue,\n\t\t\t\t{\n\t\t\t\t\thooks: {\n\t\t\t\t\t\tbeforePatch: beforePatchIcon,\n\t\t\t\t\t},\n\t\t\t\t\trequired: true,\n\t\t\t\t}\n\t\t\t);\n\t\t});\n\t}\n\n\tpublic componentWillLoad(): void {\n\t\tsuper.componentWillLoad();\n\t\tthis.validateIcon(this.component._icon);\n\t}\n}\n"],"mappings":";;;4LASA,MAAMA,EAAkB,CAACC,EAAgBC,KACxC,MAAMC,EAAOF,EACb,UAAWE,IAAS,UAAYA,IAAS,KAAM,CAC9C,GAAIC,EAASD,EAAKE,MAAO,GAAI,CAC5BF,EAAKE,MAAQ,CAAEF,KAAMA,EAAKE,M,CAE3B,GAAID,EAASD,EAAKG,KAAM,GAAI,CAC3BH,EAAKG,KAAO,CAAEH,KAAMA,EAAKG,K,CAE1BJ,EAAUK,IAAI,QAASJ,E,SAIZK,UAA4BC,EAGxCC,YAAmBC,EAA8CC,EAAcC,GAC9EC,MAAMH,EAAWC,EAAMC,GACvBE,KAAKJ,UAAYA,C,CAGXK,aAAaf,GACnBgB,EAAoBhB,GAAO,KAC1B,IACCA,EAAQiB,EAAiCjB,E,CAExC,MAAOkB,G,CAGTC,EACCL,KAAKJ,UACL,SACCV,UAEQA,IAAU,UAAYA,IAAU,OAASG,EAASH,EAAMK,KAAM,IAAMe,EAAOpB,EAAMK,OAASF,EAASH,EAAMI,MAAO,IAAMgB,EAAOpB,EAAMI,SAG5I,IAAIiB,IAAI,CAAC,0BACTrB,EACA,CACCsB,MAAO,CACNC,YAAaxB,GAEdyB,SAAU,MAEX,G,CAIIC,oBACNZ,MAAMY,oBACNX,KAAKC,aAAaD,KAAKJ,UAAUgB,M"}
|
|
@@ -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","ToasterService","document","queue","Set","isOpen","toastElement","createElement","_on","onClose","next","values","showToast","insertBefore","firstChild","enqueue","data","add","heading","type","innerText","description","WINDOW","DOCUMENT","configKoliBri","window","Window","Document","console","getWindow","META_CONFIG","DEV_MODE","EXPERIMENTAL_MODE","COLOR_CONTRAST_ANALYSIS","getDevMode","getExperimalMode","getColorContrastAnalysis","static","msg","isArray","classifier","shield","label","options","handleClassifier","overwriteStyle","forceLog","debug","getShield","mapToArray","info","trace","error","Error","initMeta","meta","querySelector","hasAttribute","includes","KoliBri","getKoliBri","initKoliBri","Modal","Toaster","Object","defineProperty","renderDevAdvice","adviceShown","nonce","Math","floor","random","toString","processEnv"],"sources":["./src/components/modal/service.ts","./src/components/toast/toaster.tsx","./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 { AlertType } from '../alert/types';\n\ntype Toast = {\n\theading: string;\n\tdescription: string;\n\ttype: AlertType;\n};\n\nexport class ToasterService {\n\tprivate readonly toastElement: HTMLKolToastElement;\n\n\tprivate readonly queue: Set<Toast> = new Set();\n\n\tprivate isOpen = false;\n\n\tconstructor(private readonly document: Document) {\n\t\tthis.toastElement = this.document.createElement('kol-toast');\n\t\tthis.toastElement.setAttribute('_level', '3');\n\t\tthis.toastElement.setAttribute('_show', 'false');\n\t\tthis.toastElement.setAttribute('_show-duration', '-1');\n\t\tthis.toastElement.setAttribute('_has-closer', 'true');\n\t\tthis.toastElement._on = {\n\t\t\tonClose: () => {\n\t\t\t\tconst next = this.queue.values().next();\n\t\t\t\tif (next.value) {\n\t\t\t\t\tthis.queue.delete(next.value as Toast);\n\t\t\t\t\tsetTimeout(() => {\n\t\t\t\t\t\tthis.showToast(next.value as Toast);\n\t\t\t\t\t}, 200);\n\t\t\t\t} else {\n\t\t\t\t\tthis.isOpen = false;\n\t\t\t\t}\n\t\t\t},\n\t\t};\n\t\tthis.document.body.insertBefore(this.toastElement, this.document.body.firstChild);\n\t}\n\n\t/**\n\t * Reiht einen neuen Toast in die Warteschlange ein, um ihn anzuzeigen.\n\t */\n\tpublic enqueue(data: Toast): void {\n\t\tif (this.isOpen) {\n\t\t\tthis.queue.add(data);\n\t\t} else {\n\t\t\tthis.showToast(data);\n\t\t}\n\t}\n\n\tprivate showToast(data: Toast): void {\n\t\tthis.toastElement.setAttribute('_heading', data.heading);\n\t\tthis.toastElement.setAttribute('_show', 'true');\n\t\tthis.toastElement.setAttribute('_type', data.type);\n\t\tthis.toastElement.innerText = data.description;\n\t\tthis.isOpen = true;\n\t}\n}\n","import { ModalService } from '../components/modal/service';\nimport { ToasterService } from '../components/toast/toaster';\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 getExperimalMode = (): 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\nlet KoliBri: Record<string, unknown> | null = null;\nexport const getKoliBri = (): Record<string, unknown> => KoliBri || {};\nexport const initKoliBri = (): void => {\n\tif (KoliBri === null) {\n\t\tKoliBri = getWindow().KoliBri || {};\n\t\tconst Modal = new ModalService();\n\t\tconst Toaster = new ToasterService(getDocument());\n\t\tObject.defineProperty(KoliBri, 'Modal', {\n\t\t\tget: function (): ModalService {\n\t\t\t\treturn Modal;\n\t\t\t},\n\t\t});\n\t\tObject.defineProperty(KoliBri, 'Toaster', {\n\t\t\tget: function (): ToasterService {\n\t\t\t\treturn Toaster;\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\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 { KoliBri };\n\nexport const renderDevAdvice = (): void => {\n\tif (getWindow().KoliBri === undefined) {\n\t\tObject.defineProperty(window, 'KoliBri', {\n\t\t\tget: function () {\n\t\t\t\treturn KoliBri;\n\t\t\t},\n\t\t});\n\t}\n\tif (getKoliBri().adviceShown !== true) {\n\t\tObject.defineProperty(KoliBri, '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","ToasterService","document","queue","Set","isOpen","toastElement","createElement","_on","onClose","next","values","showToast","insertBefore","firstChild","enqueue","data","add","heading","type","innerText","description","WINDOW","DOCUMENT","configKoliBri","window","Window","Document","console","getWindow","META_CONFIG","DEV_MODE","EXPERIMENTAL_MODE","COLOR_CONTRAST_ANALYSIS","getDevMode","getExperimalMode","getColorContrastAnalysis","static","msg","isArray","classifier","shield","label","options","handleClassifier","overwriteStyle","forceLog","debug","getShield","mapToArray","info","trace","error","Error","initMeta","meta","querySelector","hasAttribute","includes","KoliBri","getKoliBri","initKoliBri","Modal","Toaster","Object","defineProperty","renderDevAdvice","adviceShown","nonce","Math","floor","random","toString","processEnv"],"sources":["./src/components/modal/service.ts","./src/components/toast/toaster.tsx","./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 { AlertType } from '../alert/types';\n\ntype Toast = {\n\theading: string;\n\tdescription: string;\n\ttype: AlertType;\n};\n\nexport class ToasterService {\n\tprivate readonly toastElement: HTMLKolToastElement;\n\n\tprivate readonly queue: Set<Toast> = new Set();\n\n\tprivate isOpen = false;\n\n\tconstructor(private readonly document: Document) {\n\t\tthis.toastElement = this.document.createElement('kol-toast');\n\t\tthis.toastElement.setAttribute('_level', '3');\n\t\tthis.toastElement.setAttribute('_show', 'false');\n\t\tthis.toastElement.setAttribute('_show-duration', '-1');\n\t\tthis.toastElement.setAttribute('_has-closer', 'true');\n\t\tthis.toastElement._on = {\n\t\t\tonClose: () => {\n\t\t\t\tconst next = this.queue.values().next();\n\t\t\t\tif (next.value) {\n\t\t\t\t\tthis.queue.delete(next.value as Toast);\n\t\t\t\t\tsetTimeout(() => {\n\t\t\t\t\t\tthis.showToast(next.value as Toast);\n\t\t\t\t\t}, 200);\n\t\t\t\t} else {\n\t\t\t\t\tthis.isOpen = false;\n\t\t\t\t}\n\t\t\t},\n\t\t};\n\t\tthis.document.body.insertBefore(this.toastElement, this.document.body.firstChild);\n\t}\n\n\t/**\n\t * Reiht einen neuen Toast in die Warteschlange ein, um ihn anzuzeigen.\n\t */\n\tpublic enqueue(data: Toast): void {\n\t\tif (this.isOpen) {\n\t\t\tthis.queue.add(data);\n\t\t} else {\n\t\t\tthis.showToast(data);\n\t\t}\n\t}\n\n\tprivate showToast(data: Toast): void {\n\t\tthis.toastElement.setAttribute('_heading', data.heading);\n\t\tthis.toastElement.setAttribute('_show', 'true');\n\t\tthis.toastElement.setAttribute('_type', data.type);\n\t\tthis.toastElement.innerText = data.description;\n\t\tthis.isOpen = true;\n\t}\n}\n","import { ModalService } from '../components/modal/service';\nimport { ToasterService } from '../components/toast/toaster';\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 getExperimalMode = (): 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\nlet KoliBri: Record<string, unknown> | null = null;\nexport const getKoliBri = (): Record<string, unknown> => KoliBri || {};\nexport const initKoliBri = (): void => {\n\tif (KoliBri === null) {\n\t\tKoliBri = getWindow().KoliBri || {};\n\t\tconst Modal = new ModalService();\n\t\tconst Toaster = new ToasterService(getDocument());\n\t\tObject.defineProperty(KoliBri, 'Modal', {\n\t\t\tget: function (): ModalService {\n\t\t\t\treturn Modal;\n\t\t\t},\n\t\t});\n\t\tObject.defineProperty(KoliBri, 'Toaster', {\n\t\t\tget: function (): ToasterService {\n\t\t\t\treturn Toaster;\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\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 { KoliBri };\n\nexport const renderDevAdvice = (): void => {\n\tif (getWindow().KoliBri === undefined) {\n\t\tObject.defineProperty(window, 'KoliBri', {\n\t\t\tget: function () {\n\t\t\t\treturn KoliBri;\n\t\t\t},\n\t\t});\n\t}\n\tif (getKoliBri().adviceShown !== true) {\n\t\tObject.defineProperty(KoliBri, '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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"}
|