@public-ui/components 1.4.0-rc.0 → 1.4.0-rc.2
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 +27 -14
- package/custom-elements.json +2285 -107
- package/dist/cjs/a11y.tipps-bd1e1e68.js +4 -0
- package/dist/cjs/a11y.tipps-bd1e1e68.js.map +1 -0
- package/dist/cjs/app-globals-ead7cf69.js +4 -0
- package/dist/cjs/app-globals-ead7cf69.js.map +1 -0
- package/dist/cjs/button-link-8476ef97.js +4 -0
- package/dist/cjs/{button-link-a6efe03a.js.map → button-link-8476ef97.js.map} +1 -1
- package/dist/cjs/controller-0b45980a.js +4 -0
- package/dist/cjs/{controller-7d31a408.js.map → controller-0b45980a.js.map} +1 -1
- package/dist/cjs/{controller-2a86ec5b.js → controller-169c2e5c.js} +1 -1
- package/dist/cjs/{controller-2a86ec5b.js.map → controller-169c2e5c.js.map} +1 -1
- package/dist/cjs/{controller-ec5e2d7d.js → controller-323daab1.js} +1 -1
- package/dist/cjs/{controller-ec5e2d7d.js.map → controller-323daab1.js.map} +1 -1
- package/dist/cjs/{controller-29f3c454.js → controller-3b1b8088.js} +1 -1
- package/dist/cjs/{controller-29f3c454.js.map → controller-3b1b8088.js.map} +1 -1
- package/dist/cjs/{controller-ddebcf52.js → controller-891952ee.js} +1 -1
- package/dist/cjs/{controller-ddebcf52.js.map → controller-891952ee.js.map} +1 -1
- package/dist/cjs/{controller-1584664d.js → controller-e6f251c2.js} +1 -1
- package/dist/cjs/{controller-1584664d.js.map → controller-e6f251c2.js.map} +1 -1
- package/dist/cjs/controller-icon-a996cb01.js +4 -0
- package/dist/cjs/controller-icon-a996cb01.js.map +1 -0
- package/dist/cjs/dev.utils-b6dd5206.js +4 -0
- package/dist/cjs/dev.utils-b6dd5206.js.map +1 -0
- package/dist/cjs/devtools-8d17bfd4.js +4 -0
- package/dist/cjs/{devtools-3cff8604.js.map → devtools-8d17bfd4.js.map} +1 -1
- package/dist/cjs/{i18n-d2bd0802.js → i18n-2f63f0ca.js} +1 -1
- package/dist/cjs/{i18n-d2bd0802.js.map → i18n-2f63f0ca.js.map} +1 -1
- package/dist/cjs/icon-4f733b4e.js +4 -0
- package/dist/cjs/icon-4f733b4e.js.map +1 -0
- package/dist/cjs/{index-c4f8dd50.js → index-1266b30d.js} +1 -1
- package/dist/cjs/index-1266b30d.js.map +1 -0
- package/dist/cjs/index-66aa0f41.js +4 -0
- package/dist/cjs/index-66aa0f41.js.map +1 -0
- package/dist/cjs/index-d637d600.js +4 -0
- package/dist/cjs/{index-35d18542.js.map → index-d637d600.js.map} +1 -1
- package/dist/cjs/index.cjs.js +1 -1
- package/dist/cjs/kol-abbr.cjs.entry.js +1 -1
- package/dist/cjs/kol-abbr.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-accordion.cjs.entry.js +1 -1
- package/dist/cjs/kol-accordion.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-alert.cjs.entry.js +1 -1
- package/dist/cjs/kol-alert.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-badge.cjs.entry.js +1 -1
- package/dist/cjs/kol-badge.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-breadcrumb.cjs.entry.js +1 -1
- package/dist/cjs/kol-breadcrumb.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-button-group-wc.cjs.entry.js +1 -1
- package/dist/cjs/kol-button-group-wc.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-button-group.cjs.entry.js +1 -1
- package/dist/cjs/kol-button-group.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-button-link.cjs.entry.js +1 -1
- package/dist/cjs/kol-button-link.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-button-wc_2.cjs.entry.js +1 -1
- package/dist/cjs/kol-button-wc_2.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-button.cjs.entry.js +1 -1
- package/dist/cjs/kol-button.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-card.cjs.entry.js +1 -1
- package/dist/cjs/kol-card.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-details.cjs.entry.js +1 -1
- package/dist/cjs/kol-details.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-form.cjs.entry.js +1 -1
- package/dist/cjs/kol-heading-wc_2.cjs.entry.js +1 -1
- package/dist/cjs/kol-heading-wc_2.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-heading.cjs.entry.js +1 -1
- package/dist/cjs/kol-heading.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-icon-font-awesome.cjs.entry.js +1 -1
- package/dist/cjs/kol-icon-font-awesome.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-icon-icofont.cjs.entry.js +1 -1
- package/dist/cjs/kol-icon-icofont.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-icon.cjs.entry.js +1 -1
- package/dist/cjs/kol-icon.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-indented-text.cjs.entry.js +1 -1
- package/dist/cjs/kol-indented-text.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-input-adapter-leanup.cjs.entry.js +1 -1
- package/dist/cjs/kol-input-adapter-leanup.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-input-checkbox.cjs.entry.js +1 -1
- package/dist/cjs/kol-input-checkbox.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-input-color.cjs.entry.js +1 -1
- package/dist/cjs/kol-input-color.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-input-date.cjs.entry.js +1 -1
- package/dist/cjs/kol-input-date.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-input-email.cjs.entry.js +1 -1
- package/dist/cjs/kol-input-email.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-input-file.cjs.entry.js +1 -1
- package/dist/cjs/kol-input-file.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-input-number.cjs.entry.js +1 -1
- package/dist/cjs/kol-input-number.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-input-password.cjs.entry.js +1 -1
- package/dist/cjs/kol-input-password.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-input-radio-group.cjs.entry.js +1 -1
- package/dist/cjs/kol-input-radio-group.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-input-radio.cjs.entry.js +1 -1
- package/dist/cjs/kol-input-radio.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-input-range.cjs.entry.js +1 -1
- package/dist/cjs/kol-input-range.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-input-text.cjs.entry.js +1 -1
- package/dist/cjs/kol-input-text.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-kolibri.cjs.entry.js +1 -1
- package/dist/cjs/kol-kolibri.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-link-button.cjs.entry.js +1 -1
- package/dist/cjs/kol-link-button.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-link-group.cjs.entry.js +1 -1
- package/dist/cjs/kol-link-group.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-link-wc.cjs.entry.js +1 -1
- package/dist/cjs/kol-link-wc.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-link.cjs.entry.js +1 -1
- package/dist/cjs/kol-link.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-logo.cjs.entry.js +1 -1
- package/dist/cjs/kol-logo.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-modal.cjs.entry.js +1 -1
- package/dist/cjs/kol-modal.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-nav.cjs.entry.js +1 -1
- package/dist/cjs/kol-nav.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-pagination.cjs.entry.js +1 -1
- package/dist/cjs/kol-pagination.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-progress.cjs.entry.js +1 -1
- package/dist/cjs/kol-progress.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-select.cjs.entry.js +1 -1
- package/dist/cjs/kol-select.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-skip-nav.cjs.entry.js +1 -1
- package/dist/cjs/kol-skip-nav.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-span.cjs.entry.js +1 -1
- package/dist/cjs/kol-span.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-spin.cjs.entry.js +1 -1
- package/dist/cjs/kol-spin.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-symbol.cjs.entry.js +1 -1
- package/dist/cjs/kol-table.cjs.entry.js +1 -1
- package/dist/cjs/kol-table.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-tabs.cjs.entry.js +1 -1
- package/dist/cjs/kol-tabs.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-textarea.cjs.entry.js +1 -1
- package/dist/cjs/kol-textarea.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-toast.cjs.entry.js +1 -1
- package/dist/cjs/kol-toast.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-tooltip.cjs.entry.js +1 -1
- package/dist/cjs/kol-tooltip.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-version.cjs.entry.js +1 -1
- package/dist/cjs/kol-version.cjs.entry.js.map +1 -1
- package/dist/cjs/kolibri.cjs.js +1 -1
- package/dist/cjs/kolibri.cjs.js.map +1 -1
- package/dist/cjs/label-b9c8787b.js +4 -0
- package/dist/cjs/{label-92997e6d.js.map → label-b9c8787b.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-125ca9b8.js +4 -0
- package/dist/cjs/prop.validators-125ca9b8.js.map +1 -0
- package/dist/cjs/reuse-b43997f3.js +4 -0
- package/dist/cjs/reuse-b43997f3.js.map +1 -0
- package/dist/cjs/{tab-index-7d4e8d14.js → tab-index-7d5103dc.js} +1 -1
- package/dist/cjs/{tab-index-7d4e8d14.js.map → tab-index-7d5103dc.js.map} +1 -1
- package/dist/cjs/{validation-9cdc8b6c.js → validation-314516d8.js} +1 -1
- package/dist/cjs/{validation-9cdc8b6c.js.map → validation-314516d8.js.map} +1 -1
- package/dist/cjs/{validation-b1132e50.js → validation-c071c3ac.js} +1 -1
- package/dist/cjs/{validation-b1132e50.js.map → validation-c071c3ac.js.map} +1 -1
- package/dist/components/component.js +1 -1
- package/dist/components/component.js.map +1 -1
- package/dist/components/component10.js +1 -1
- package/dist/components/component10.js.map +1 -1
- package/dist/components/component11.js +1 -1
- package/dist/components/component11.js.map +1 -1
- package/dist/components/component12.js +1 -1
- package/dist/components/component12.js.map +1 -1
- package/dist/components/component13.js +1 -1
- package/dist/components/component13.js.map +1 -1
- package/dist/components/component2.js +1 -1
- package/dist/components/component2.js.map +1 -1
- package/dist/components/component3.js +1 -1
- package/dist/components/component3.js.map +1 -1
- package/dist/components/component4.js +1 -1
- package/dist/components/component4.js.map +1 -1
- package/dist/components/component5.js +1 -1
- package/dist/components/component5.js.map +1 -1
- package/dist/components/component6.js +1 -1
- package/dist/components/component7.js +1 -1
- package/dist/components/component7.js.map +1 -1
- package/dist/components/component8.js +1 -1
- package/dist/components/component8.js.map +1 -1
- package/dist/components/controller-icon.js +1 -1
- package/dist/components/controller.js +1 -1
- package/dist/components/controller2.js +1 -1
- package/dist/components/controller2.js.map +1 -1
- package/dist/components/controller3.js +1 -1
- package/dist/components/controller4.js +1 -1
- package/dist/components/devtools.js +1 -1
- package/dist/components/i18n.js +1 -1
- package/dist/components/index.js +1 -1
- package/dist/components/index.js.map +1 -1
- package/dist/components/index2.js +1 -1
- package/dist/components/index2.js.map +1 -1
- package/dist/components/kol-abbr.js +1 -1
- package/dist/components/kol-abbr.js.map +1 -1
- package/dist/components/kol-accordion.js +1 -1
- package/dist/components/kol-accordion.js.map +1 -1
- package/dist/components/kol-breadcrumb.js +1 -1
- package/dist/components/kol-breadcrumb.js.map +1 -1
- package/dist/components/kol-button-group.js +1 -1
- package/dist/components/kol-button-group.js.map +1 -1
- package/dist/components/kol-button-link.js +1 -1
- package/dist/components/kol-button-link.js.map +1 -1
- package/dist/components/kol-card.js +1 -1
- package/dist/components/kol-card.js.map +1 -1
- package/dist/components/kol-details.js +1 -1
- package/dist/components/kol-details.js.map +1 -1
- package/dist/components/kol-form.js +1 -1
- package/dist/components/kol-heading.js +1 -1
- package/dist/components/kol-heading.js.map +1 -1
- package/dist/components/kol-icon-font-awesome.js +1 -1
- package/dist/components/kol-icon-font-awesome.js.map +1 -1
- package/dist/components/kol-icon-icofont.js +1 -1
- package/dist/components/kol-icon-icofont.js.map +1 -1
- package/dist/components/kol-input-adapter-leanup.js +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-range.js +1 -1
- package/dist/components/kol-input-range.js.map +1 -1
- package/dist/components/kol-input-text.js +1 -1
- package/dist/components/kol-input-text.js.map +1 -1
- package/dist/components/kol-kolibri.js +1 -1
- package/dist/components/kol-kolibri.js.map +1 -1
- package/dist/components/kol-link-button.js +1 -1
- package/dist/components/kol-link-button.js.map +1 -1
- package/dist/components/kol-link-group.js +1 -1
- package/dist/components/kol-link-group.js.map +1 -1
- package/dist/components/kol-logo.js +1 -1
- package/dist/components/kol-logo.js.map +1 -1
- package/dist/components/kol-modal.js +1 -1
- package/dist/components/kol-modal.js.map +1 -1
- package/dist/components/kol-nav.js +1 -1
- package/dist/components/kol-nav.js.map +1 -1
- package/dist/components/kol-progress.js +1 -1
- package/dist/components/kol-progress.js.map +1 -1
- package/dist/components/kol-skip-nav.js +1 -1
- package/dist/components/kol-skip-nav.js.map +1 -1
- package/dist/components/kol-span.js +1 -1
- package/dist/components/kol-span.js.map +1 -1
- package/dist/components/kol-spin.js +1 -1
- package/dist/components/kol-spin.js.map +1 -1
- package/dist/components/kol-table.js +1 -1
- package/dist/components/kol-table.js.map +1 -1
- package/dist/components/kol-tabs.js +1 -1
- package/dist/components/kol-tabs.js.map +1 -1
- package/dist/components/kol-textarea.js +1 -1
- package/dist/components/kol-textarea.js.map +1 -1
- package/dist/components/kol-toast.js +1 -1
- package/dist/components/kol-toast.js.map +1 -1
- package/dist/components/kol-tooltip.js +1 -1
- package/dist/components/kol-version.js +1 -1
- package/dist/components/kol-version.js.map +1 -1
- package/dist/components/prop.validators.js +1 -1
- package/dist/components/prop.validators.js.map +1 -1
- package/dist/components/shadow.js +1 -1
- package/dist/components/shadow.js.map +1 -1
- package/dist/components/shadow2.js +1 -1
- package/dist/components/shadow2.js.map +1 -1
- package/dist/components/validation.js +1 -1
- package/dist/esm/a11y.tipps-353a7f35.js +4 -0
- package/dist/esm/a11y.tipps-353a7f35.js.map +1 -0
- package/dist/esm/app-globals-4be5aa27.js +4 -0
- package/dist/esm/app-globals-4be5aa27.js.map +1 -0
- package/dist/esm/{button-link-d9d215b8.js → button-link-5bb8204c.js} +1 -1
- package/dist/esm/{button-link-d9d215b8.js.map → button-link-5bb8204c.js.map} +1 -1
- package/dist/esm/{controller-58b484bb.js → controller-059a3921.js} +1 -1
- package/dist/esm/{controller-58b484bb.js.map → controller-059a3921.js.map} +1 -1
- package/dist/esm/{controller-401e5985.js → controller-15111cee.js} +1 -1
- package/dist/esm/{controller-401e5985.js.map → controller-15111cee.js.map} +1 -1
- package/dist/esm/{controller-3cfe91c9.js → controller-766d4423.js} +1 -1
- package/dist/esm/{controller-3cfe91c9.js.map → controller-766d4423.js.map} +1 -1
- package/dist/esm/{controller-7adb5f0e.js → controller-9f66274a.js} +1 -1
- package/dist/esm/{controller-7adb5f0e.js.map → controller-9f66274a.js.map} +1 -1
- package/dist/esm/{controller-eecee40f.js → controller-b8a587ec.js} +1 -1
- package/dist/esm/{controller-eecee40f.js.map → controller-b8a587ec.js.map} +1 -1
- package/dist/esm/controller-ee46a348.js +4 -0
- package/dist/esm/{controller-4c6206b0.js.map → controller-ee46a348.js.map} +1 -1
- package/dist/esm/controller-icon-dbd368be.js +4 -0
- package/dist/esm/{controller-icon-c113ba17.js.map → controller-icon-dbd368be.js.map} +1 -1
- package/dist/esm/dev.utils-3ec9f837.js +4 -0
- package/dist/esm/dev.utils-3ec9f837.js.map +1 -0
- package/dist/esm/devtools-65ea920c.js +4 -0
- package/dist/esm/{devtools-d2ea86e5.js.map → devtools-65ea920c.js.map} +1 -1
- package/dist/esm/{i18n-b31d8a52.js → i18n-f2ab4562.js} +1 -1
- package/dist/esm/{i18n-b31d8a52.js.map → i18n-f2ab4562.js.map} +1 -1
- package/dist/esm/icon-4f6266ca.js +4 -0
- package/dist/esm/{icon-22dfdb71.js.map → icon-4f6266ca.js.map} +1 -1
- package/dist/esm/index-2a11dd6d.js +4 -0
- package/dist/esm/index-2a11dd6d.js.map +1 -0
- package/dist/esm/index-781a1af1.js +4 -0
- package/dist/esm/{index-5cef3ddc.js.map → index-781a1af1.js.map} +1 -1
- package/dist/{components/index3.js → esm/index-d14da386.js} +1 -1
- package/dist/esm/index-d14da386.js.map +1 -0
- package/dist/esm/index.js +1 -1
- package/dist/esm/kol-abbr.entry.js +1 -1
- package/dist/esm/kol-abbr.entry.js.map +1 -1
- package/dist/esm/kol-accordion.entry.js +1 -1
- package/dist/esm/kol-accordion.entry.js.map +1 -1
- package/dist/esm/kol-alert.entry.js +1 -1
- package/dist/esm/kol-alert.entry.js.map +1 -1
- package/dist/esm/kol-badge.entry.js +1 -1
- package/dist/esm/kol-badge.entry.js.map +1 -1
- package/dist/esm/kol-breadcrumb.entry.js +1 -1
- package/dist/esm/kol-breadcrumb.entry.js.map +1 -1
- package/dist/esm/kol-button-group-wc.entry.js +1 -1
- package/dist/esm/kol-button-group-wc.entry.js.map +1 -1
- package/dist/esm/kol-button-group.entry.js +1 -1
- package/dist/esm/kol-button-group.entry.js.map +1 -1
- package/dist/esm/kol-button-link.entry.js +1 -1
- package/dist/esm/kol-button-link.entry.js.map +1 -1
- package/dist/esm/kol-button-wc_2.entry.js +1 -1
- package/dist/esm/kol-button-wc_2.entry.js.map +1 -1
- package/dist/esm/kol-button.entry.js +1 -1
- package/dist/esm/kol-button.entry.js.map +1 -1
- package/dist/esm/kol-card.entry.js +1 -1
- package/dist/esm/kol-card.entry.js.map +1 -1
- package/dist/esm/kol-details.entry.js +1 -1
- package/dist/esm/kol-details.entry.js.map +1 -1
- package/dist/esm/kol-form.entry.js +1 -1
- package/dist/esm/kol-heading-wc_2.entry.js +1 -1
- package/dist/esm/kol-heading-wc_2.entry.js.map +1 -1
- package/dist/esm/kol-heading.entry.js +1 -1
- package/dist/esm/kol-heading.entry.js.map +1 -1
- package/dist/esm/kol-icon-font-awesome.entry.js +1 -1
- package/dist/esm/kol-icon-font-awesome.entry.js.map +1 -1
- package/dist/esm/kol-icon-icofont.entry.js +1 -1
- package/dist/esm/kol-icon-icofont.entry.js.map +1 -1
- package/dist/esm/kol-icon.entry.js +1 -1
- package/dist/esm/kol-icon.entry.js.map +1 -1
- package/dist/esm/kol-indented-text.entry.js +1 -1
- package/dist/esm/kol-indented-text.entry.js.map +1 -1
- package/dist/esm/kol-input-adapter-leanup.entry.js +1 -1
- package/dist/esm/kol-input-adapter-leanup.entry.js.map +1 -1
- package/dist/esm/kol-input-checkbox.entry.js +1 -1
- package/dist/esm/kol-input-checkbox.entry.js.map +1 -1
- package/dist/esm/kol-input-color.entry.js +1 -1
- package/dist/esm/kol-input-color.entry.js.map +1 -1
- package/dist/esm/kol-input-date.entry.js +1 -1
- package/dist/esm/kol-input-date.entry.js.map +1 -1
- package/dist/esm/kol-input-email.entry.js +1 -1
- package/dist/esm/kol-input-email.entry.js.map +1 -1
- package/dist/esm/kol-input-file.entry.js +1 -1
- package/dist/esm/kol-input-file.entry.js.map +1 -1
- package/dist/esm/kol-input-number.entry.js +1 -1
- package/dist/esm/kol-input-number.entry.js.map +1 -1
- package/dist/esm/kol-input-password.entry.js +1 -1
- package/dist/esm/kol-input-password.entry.js.map +1 -1
- package/dist/esm/kol-input-radio-group.entry.js +1 -1
- package/dist/esm/kol-input-radio-group.entry.js.map +1 -1
- package/dist/esm/kol-input-radio.entry.js +1 -1
- package/dist/esm/kol-input-radio.entry.js.map +1 -1
- package/dist/esm/kol-input-range.entry.js +1 -1
- package/dist/esm/kol-input-range.entry.js.map +1 -1
- package/dist/esm/kol-input-text.entry.js +1 -1
- package/dist/esm/kol-input-text.entry.js.map +1 -1
- package/dist/esm/kol-kolibri.entry.js +1 -1
- package/dist/esm/kol-kolibri.entry.js.map +1 -1
- package/dist/esm/kol-link-button.entry.js +1 -1
- package/dist/esm/kol-link-button.entry.js.map +1 -1
- package/dist/esm/kol-link-group.entry.js +1 -1
- package/dist/esm/kol-link-group.entry.js.map +1 -1
- package/dist/esm/kol-link-wc.entry.js +1 -1
- package/dist/esm/kol-link-wc.entry.js.map +1 -1
- package/dist/esm/kol-link.entry.js +1 -1
- package/dist/esm/kol-link.entry.js.map +1 -1
- package/dist/esm/kol-logo.entry.js +1 -1
- package/dist/esm/kol-logo.entry.js.map +1 -1
- package/dist/esm/kol-modal.entry.js +1 -1
- package/dist/esm/kol-modal.entry.js.map +1 -1
- package/dist/esm/kol-nav.entry.js +1 -1
- package/dist/esm/kol-nav.entry.js.map +1 -1
- package/dist/esm/kol-pagination.entry.js +1 -1
- package/dist/esm/kol-pagination.entry.js.map +1 -1
- package/dist/esm/kol-progress.entry.js +1 -1
- package/dist/esm/kol-progress.entry.js.map +1 -1
- package/dist/esm/kol-select.entry.js +1 -1
- package/dist/esm/kol-select.entry.js.map +1 -1
- package/dist/esm/kol-skip-nav.entry.js +1 -1
- package/dist/esm/kol-skip-nav.entry.js.map +1 -1
- package/dist/esm/kol-span.entry.js +1 -1
- package/dist/esm/kol-span.entry.js.map +1 -1
- package/dist/esm/kol-spin.entry.js +1 -1
- package/dist/esm/kol-spin.entry.js.map +1 -1
- package/dist/esm/kol-symbol.entry.js +1 -1
- package/dist/esm/kol-table.entry.js +1 -1
- package/dist/esm/kol-table.entry.js.map +1 -1
- package/dist/esm/kol-tabs.entry.js +1 -1
- package/dist/esm/kol-tabs.entry.js.map +1 -1
- package/dist/esm/kol-textarea.entry.js +1 -1
- package/dist/esm/kol-textarea.entry.js.map +1 -1
- package/dist/esm/kol-toast.entry.js +1 -1
- package/dist/esm/kol-toast.entry.js.map +1 -1
- package/dist/esm/kol-tooltip.entry.js +1 -1
- package/dist/esm/kol-tooltip.entry.js.map +1 -1
- package/dist/esm/kol-version.entry.js +1 -1
- package/dist/esm/kol-version.entry.js.map +1 -1
- package/dist/esm/kolibri.js +1 -1
- package/dist/esm/kolibri.js.map +1 -1
- package/dist/esm/label-eaabc3d3.js +4 -0
- package/dist/esm/{label-3f6eb03e.js.map → label-eaabc3d3.js.map} +1 -1
- package/dist/esm/loader.js +1 -1
- package/dist/esm/loader.js.map +1 -1
- package/dist/esm/polyfills/core-js.js +1 -1
- package/dist/esm/prop.validators-c2234525.js +4 -0
- package/dist/esm/prop.validators-c2234525.js.map +1 -0
- package/dist/esm/reuse-2b3b6999.js +4 -0
- package/dist/esm/reuse-2b3b6999.js.map +1 -0
- package/dist/esm/{tab-index-e15e7adc.js → tab-index-1bc7d9c1.js} +1 -1
- package/dist/esm/{tab-index-e15e7adc.js.map → tab-index-1bc7d9c1.js.map} +1 -1
- package/dist/esm/validation-52548dee.js +4 -0
- package/dist/esm/{validation-cac8ee73.js.map → validation-52548dee.js.map} +1 -1
- package/dist/esm/{validation-470a9e9e.js → validation-d17349fa.js} +1 -1
- package/dist/esm/{validation-470a9e9e.js.map → validation-d17349fa.js.map} +1 -1
- package/dist/kolibri/a11y.tipps-353a7f35.js +4 -0
- package/dist/kolibri/a11y.tipps-353a7f35.js.map +1 -0
- package/dist/kolibri/app-globals-4be5aa27.js +4 -0
- package/dist/kolibri/app-globals-4be5aa27.js.map +1 -0
- package/dist/kolibri/assets/style.css +49 -77
- package/dist/kolibri/{button-link-d9d215b8.js → button-link-5bb8204c.js} +1 -1
- package/dist/kolibri/{button-link-d9d215b8.js.map → button-link-5bb8204c.js.map} +0 -0
- package/dist/kolibri/{controller-58b484bb.js → controller-059a3921.js} +1 -1
- package/dist/kolibri/{controller-58b484bb.js.map → controller-059a3921.js.map} +0 -0
- package/dist/kolibri/{controller-401e5985.js → controller-15111cee.js} +1 -1
- package/dist/kolibri/{controller-401e5985.js.map → controller-15111cee.js.map} +0 -0
- package/dist/kolibri/{controller-3cfe91c9.js → controller-766d4423.js} +1 -1
- package/dist/kolibri/{controller-3cfe91c9.js.map → controller-766d4423.js.map} +0 -0
- package/dist/kolibri/{controller-7adb5f0e.js → controller-9f66274a.js} +1 -1
- package/dist/kolibri/{controller-7adb5f0e.js.map → controller-9f66274a.js.map} +0 -0
- package/dist/kolibri/{controller-eecee40f.js → controller-b8a587ec.js} +1 -1
- package/dist/kolibri/{controller-eecee40f.js.map → controller-b8a587ec.js.map} +0 -0
- package/dist/kolibri/controller-ee46a348.js +4 -0
- package/dist/kolibri/{controller-4c6206b0.js.map → controller-ee46a348.js.map} +1 -1
- package/dist/kolibri/controller-icon-dbd368be.js +4 -0
- package/dist/kolibri/{controller-icon-c113ba17.js.map → controller-icon-dbd368be.js.map} +1 -1
- package/dist/kolibri/dev.utils-3ec9f837.js +4 -0
- package/dist/kolibri/dev.utils-3ec9f837.js.map +1 -0
- package/dist/kolibri/devtools-65ea920c.js +4 -0
- package/dist/kolibri/{devtools-d2ea86e5.js.map → devtools-65ea920c.js.map} +1 -1
- package/dist/kolibri/{i18n-b31d8a52.js → i18n-f2ab4562.js} +1 -1
- package/dist/kolibri/{i18n-b31d8a52.js.map → i18n-f2ab4562.js.map} +0 -0
- package/dist/kolibri/icon-4f6266ca.js +4 -0
- package/dist/kolibri/{icon-22dfdb71.js.map → icon-4f6266ca.js.map} +1 -1
- package/dist/kolibri/index-2a11dd6d.js +4 -0
- package/dist/kolibri/index-2a11dd6d.js.map +1 -0
- package/dist/kolibri/index-781a1af1.js +4 -0
- package/dist/kolibri/{index-5cef3ddc.js.map → index-781a1af1.js.map} +0 -0
- package/dist/kolibri/{index-1b8b837d.js → index-d14da386.js} +1 -1
- package/dist/kolibri/index-d14da386.js.map +1 -0
- package/dist/kolibri/index.esm.js +1 -1
- package/dist/kolibri/kol-abbr.entry.js +1 -1
- package/dist/kolibri/kol-abbr.entry.js.map +1 -1
- package/dist/kolibri/kol-accordion.entry.js +1 -1
- package/dist/kolibri/kol-accordion.entry.js.map +1 -1
- package/dist/kolibri/kol-alert.entry.js +1 -1
- package/dist/kolibri/kol-alert.entry.js.map +1 -1
- package/dist/kolibri/kol-badge.entry.js +1 -1
- package/dist/kolibri/kol-badge.entry.js.map +1 -1
- package/dist/kolibri/kol-breadcrumb.entry.js +1 -1
- package/dist/kolibri/kol-breadcrumb.entry.js.map +1 -1
- package/dist/kolibri/kol-button-group-wc.entry.js +1 -1
- package/dist/kolibri/kol-button-group-wc.entry.js.map +1 -1
- package/dist/kolibri/kol-button-group.entry.js +1 -1
- package/dist/kolibri/kol-button-group.entry.js.map +1 -1
- package/dist/kolibri/kol-button-link.entry.js +1 -1
- package/dist/kolibri/kol-button-link.entry.js.map +1 -1
- package/dist/kolibri/kol-button-wc_2.entry.js +1 -1
- package/dist/kolibri/kol-button-wc_2.entry.js.map +1 -1
- package/dist/kolibri/kol-button.entry.js +1 -1
- package/dist/kolibri/kol-button.entry.js.map +1 -1
- package/dist/kolibri/kol-card.entry.js +1 -1
- package/dist/kolibri/kol-card.entry.js.map +1 -1
- package/dist/kolibri/kol-details.entry.js +1 -1
- package/dist/kolibri/kol-details.entry.js.map +1 -1
- package/dist/kolibri/kol-form.entry.js +1 -1
- package/dist/kolibri/kol-form.entry.js.map +1 -1
- package/dist/kolibri/kol-heading-wc_2.entry.js +1 -1
- package/dist/kolibri/kol-heading-wc_2.entry.js.map +1 -1
- package/dist/kolibri/kol-heading.entry.js +1 -1
- package/dist/kolibri/kol-heading.entry.js.map +1 -1
- package/dist/kolibri/kol-icon-font-awesome.entry.js +1 -1
- package/dist/kolibri/kol-icon-font-awesome.entry.js.map +1 -1
- package/dist/kolibri/kol-icon-icofont.entry.js +1 -1
- package/dist/kolibri/kol-icon-icofont.entry.js.map +1 -1
- package/dist/kolibri/kol-icon.entry.js +1 -1
- package/dist/kolibri/kol-icon.entry.js.map +1 -1
- package/dist/kolibri/kol-indented-text.entry.js +1 -1
- package/dist/kolibri/kol-indented-text.entry.js.map +1 -1
- package/dist/kolibri/kol-input-adapter-leanup.entry.js +1 -1
- package/dist/kolibri/kol-input-adapter-leanup.entry.js.map +1 -1
- package/dist/kolibri/kol-input-checkbox.entry.js +1 -1
- package/dist/kolibri/kol-input-checkbox.entry.js.map +1 -1
- package/dist/kolibri/kol-input-color.entry.js +1 -1
- package/dist/kolibri/kol-input-color.entry.js.map +1 -1
- package/dist/kolibri/kol-input-date.entry.js +1 -1
- package/dist/kolibri/kol-input-date.entry.js.map +1 -1
- package/dist/kolibri/kol-input-email.entry.js +1 -1
- package/dist/kolibri/kol-input-email.entry.js.map +1 -1
- package/dist/kolibri/kol-input-file.entry.js +1 -1
- package/dist/kolibri/kol-input-file.entry.js.map +1 -1
- package/dist/kolibri/kol-input-number.entry.js +1 -1
- package/dist/kolibri/kol-input-number.entry.js.map +1 -1
- package/dist/kolibri/kol-input-password.entry.js +1 -1
- package/dist/kolibri/kol-input-password.entry.js.map +1 -1
- package/dist/kolibri/kol-input-radio-group.entry.js +1 -1
- package/dist/kolibri/kol-input-radio-group.entry.js.map +1 -1
- package/dist/kolibri/kol-input-radio.entry.js +1 -1
- package/dist/kolibri/kol-input-radio.entry.js.map +1 -1
- package/dist/kolibri/kol-input-range.entry.js +1 -1
- package/dist/kolibri/kol-input-range.entry.js.map +1 -1
- package/dist/kolibri/kol-input-text.entry.js +1 -1
- package/dist/kolibri/kol-input-text.entry.js.map +1 -1
- package/dist/kolibri/kol-kolibri.entry.js +1 -1
- package/dist/kolibri/kol-kolibri.entry.js.map +1 -1
- package/dist/kolibri/kol-link-button.entry.js +1 -1
- package/dist/kolibri/kol-link-button.entry.js.map +1 -1
- package/dist/kolibri/kol-link-group.entry.js +1 -1
- package/dist/kolibri/kol-link-group.entry.js.map +1 -1
- package/dist/kolibri/kol-link-wc.entry.js +1 -1
- package/dist/kolibri/kol-link-wc.entry.js.map +1 -1
- package/dist/kolibri/kol-link.entry.js +1 -1
- package/dist/kolibri/kol-link.entry.js.map +1 -1
- package/dist/kolibri/kol-logo.entry.js +1 -1
- package/dist/kolibri/kol-logo.entry.js.map +1 -1
- package/dist/kolibri/kol-modal.entry.js +1 -1
- package/dist/kolibri/kol-modal.entry.js.map +1 -1
- package/dist/kolibri/kol-nav.entry.js +1 -1
- package/dist/kolibri/kol-nav.entry.js.map +1 -1
- package/dist/kolibri/kol-pagination.entry.js +1 -1
- package/dist/kolibri/kol-pagination.entry.js.map +1 -1
- package/dist/kolibri/kol-progress.entry.js +1 -1
- package/dist/kolibri/kol-progress.entry.js.map +1 -1
- package/dist/kolibri/kol-select.entry.js +1 -1
- package/dist/kolibri/kol-select.entry.js.map +1 -1
- package/dist/kolibri/kol-skip-nav.entry.js +1 -1
- package/dist/kolibri/kol-skip-nav.entry.js.map +1 -1
- package/dist/kolibri/kol-span.entry.js +1 -1
- package/dist/kolibri/kol-span.entry.js.map +1 -1
- package/dist/kolibri/kol-spin.entry.js +1 -1
- package/dist/kolibri/kol-spin.entry.js.map +1 -1
- package/dist/kolibri/kol-symbol.entry.js +1 -1
- package/dist/kolibri/kol-symbol.entry.js.map +1 -1
- package/dist/kolibri/kol-table.entry.js +1 -1
- package/dist/kolibri/kol-table.entry.js.map +1 -1
- package/dist/kolibri/kol-tabs.entry.js +1 -1
- package/dist/kolibri/kol-tabs.entry.js.map +1 -1
- package/dist/kolibri/kol-textarea.entry.js +1 -1
- package/dist/kolibri/kol-textarea.entry.js.map +1 -1
- package/dist/kolibri/kol-toast.entry.js +1 -1
- package/dist/kolibri/kol-toast.entry.js.map +1 -1
- package/dist/kolibri/kol-tooltip.entry.js +1 -1
- package/dist/kolibri/kol-tooltip.entry.js.map +1 -1
- package/dist/kolibri/kol-version.entry.js +1 -1
- package/dist/kolibri/kol-version.entry.js.map +1 -1
- package/dist/kolibri/kolibri.esm.js +1 -1
- package/dist/kolibri/kolibri.esm.js.map +1 -1
- package/dist/kolibri/label-eaabc3d3.js +4 -0
- package/dist/kolibri/{label-3f6eb03e.js.map → label-eaabc3d3.js.map} +1 -1
- package/dist/kolibri/prop.validators-c2234525.js +4 -0
- package/dist/kolibri/prop.validators-c2234525.js.map +1 -0
- package/dist/kolibri/reuse-2b3b6999.js +4 -0
- package/dist/kolibri/reuse-2b3b6999.js.map +1 -0
- package/dist/kolibri/{tab-index-e15e7adc.js → tab-index-1bc7d9c1.js} +1 -1
- package/dist/kolibri/{tab-index-e15e7adc.js.map → tab-index-1bc7d9c1.js.map} +0 -0
- package/dist/kolibri/validation-52548dee.js +4 -0
- package/dist/kolibri/{validation-cac8ee73.js.map → validation-52548dee.js.map} +0 -0
- package/dist/kolibri/{validation-470a9e9e.js → validation-d17349fa.js} +1 -1
- package/dist/kolibri/{validation-470a9e9e.js.map → validation-d17349fa.js.map} +0 -0
- package/dist/types/components/badge/contrast.d.ts +10 -6
- package/dist/types/components/heading/component.d.ts +9 -1
- package/dist/types/components/heading/shadow.d.ts +2 -0
- package/dist/types/components/heading/test/html.mock.d.ts +1 -1
- package/dist/types/components.d.ts +36 -30
- package/dist/types/enums/color.d.ts +0 -5
- package/dist/types/types/heading-level.d.ts +1 -1
- package/dist/types/utils/reuse.d.ts +3 -0
- package/doc/abbr.md +21 -4
- package/doc/accordion.md +21 -2
- package/doc/alert.md +22 -5
- package/doc/badge.md +28 -9
- package/doc/breadcrumb.md +23 -18
- package/doc/button-group.md +1 -1
- package/doc/button-link.md +20 -1
- package/doc/button.md +26 -7
- package/doc/card.md +29 -10
- package/doc/details.md +21 -4
- package/doc/heading.md +6 -4
- package/doc/icon-icofont.md +1 -1
- package/doc/icon.md +24 -10
- package/doc/indented-text.md +20 -1
- package/doc/input-checkbox.md +19 -0
- package/doc/input-color.md +21 -4
- package/doc/input-date.md +21 -4
- package/doc/input-email.md +21 -4
- package/doc/input-file.md +21 -4
- package/doc/input-number.md +21 -4
- package/doc/input-password.md +21 -4
- package/doc/input-radio.md +22 -16
- package/doc/input-range.md +21 -4
- package/doc/input-text.md +21 -4
- package/doc/kolibri.md +20 -1
- package/doc/link-button.md +21 -2
- package/doc/link-group.md +23 -8
- package/doc/link.md +21 -4
- package/doc/logo.md +20 -1
- package/doc/modal.md +20 -1
- package/doc/nav.md +25 -19
- package/doc/pagination.md +20 -1
- package/doc/progress.md +20 -1
- package/doc/select.md +34 -52
- package/doc/skip-nav.md +22 -12
- package/doc/span.md +19 -0
- package/doc/spin.md +20 -1
- package/doc/table.md +19 -0
- package/doc/tabs.md +22 -16
- package/doc/textarea.md +20 -1
- package/doc/toast.md +22 -5
- package/doc/tooltip.md +19 -0
- package/doc/version.md +20 -1
- package/jest-test-results.json +1 -1
- package/package.json +1 -1
- package/vscode-custom-data.json +22 -22
- package/dist/cjs/a11y.tipps-e1770acf.js +0 -4
- package/dist/cjs/a11y.tipps-e1770acf.js.map +0 -1
- package/dist/cjs/app-globals-d2684355.js +0 -4
- package/dist/cjs/app-globals-d2684355.js.map +0 -1
- package/dist/cjs/button-link-a6efe03a.js +0 -4
- package/dist/cjs/color-54989457.js +0 -4
- package/dist/cjs/color-54989457.js.map +0 -1
- package/dist/cjs/controller-7d31a408.js +0 -4
- package/dist/cjs/controller-icon-222f331c.js +0 -4
- package/dist/cjs/controller-icon-222f331c.js.map +0 -1
- package/dist/cjs/dev.utils-2353100d.js +0 -4
- package/dist/cjs/dev.utils-2353100d.js.map +0 -1
- package/dist/cjs/devtools-3cff8604.js +0 -4
- package/dist/cjs/icon-4ba7c898.js +0 -4
- package/dist/cjs/icon-4ba7c898.js.map +0 -1
- package/dist/cjs/index-35d18542.js +0 -4
- package/dist/cjs/index-95d4d068.js +0 -4
- package/dist/cjs/index-95d4d068.js.map +0 -1
- package/dist/cjs/index-9ee2c3ec.js +0 -4
- package/dist/cjs/index-9ee2c3ec.js.map +0 -1
- package/dist/cjs/index-c4f8dd50.js.map +0 -1
- package/dist/cjs/index.m-21aa1255.js +0 -4
- package/dist/cjs/index.m-21aa1255.js.map +0 -1
- package/dist/cjs/kol-color.cjs.entry.js +0 -4
- package/dist/cjs/kol-color.cjs.entry.js.map +0 -1
- package/dist/cjs/kol-counter.cjs.entry.js +0 -4
- package/dist/cjs/kol-counter.cjs.entry.js.map +0 -1
- package/dist/cjs/label-92997e6d.js +0 -4
- package/dist/cjs/prop.validators-e366929d.js +0 -4
- package/dist/cjs/prop.validators-e366929d.js.map +0 -1
- package/dist/cjs/reuse-28825ead.js +0 -4
- package/dist/cjs/reuse-28825ead.js.map +0 -1
- package/dist/cjs/validator-953ea58f.js +0 -4
- package/dist/cjs/validator-953ea58f.js.map +0 -1
- package/dist/components/color.js +0 -4
- package/dist/components/color.js.map +0 -1
- package/dist/components/index.m.js +0 -4
- package/dist/components/index.m.js.map +0 -1
- package/dist/components/index3.js.map +0 -1
- package/dist/components/kol-color.d.ts +0 -11
- package/dist/components/kol-color.js +0 -4
- package/dist/components/kol-color.js.map +0 -1
- package/dist/components/kol-counter.d.ts +0 -11
- package/dist/components/kol-counter.js +0 -4
- package/dist/components/kol-counter.js.map +0 -1
- package/dist/esm/a11y.tipps-ff5a1a99.js +0 -4
- package/dist/esm/a11y.tipps-ff5a1a99.js.map +0 -1
- package/dist/esm/app-globals-42336357.js +0 -4
- package/dist/esm/app-globals-42336357.js.map +0 -1
- package/dist/esm/color-d69786a5.js +0 -4
- package/dist/esm/color-d69786a5.js.map +0 -1
- package/dist/esm/controller-4c6206b0.js +0 -4
- package/dist/esm/controller-icon-c113ba17.js +0 -4
- package/dist/esm/dev.utils-daaf2f39.js +0 -4
- package/dist/esm/dev.utils-daaf2f39.js.map +0 -1
- package/dist/esm/devtools-d2ea86e5.js +0 -4
- package/dist/esm/icon-22dfdb71.js +0 -4
- package/dist/esm/index-1b8b837d.js +0 -4
- package/dist/esm/index-1b8b837d.js.map +0 -1
- package/dist/esm/index-2eac13ad.js +0 -4
- package/dist/esm/index-2eac13ad.js.map +0 -1
- package/dist/esm/index-5cef3ddc.js +0 -4
- package/dist/esm/index-e722bdb7.js +0 -4
- package/dist/esm/index-e722bdb7.js.map +0 -1
- package/dist/esm/index.m-86dc8c44.js +0 -4
- package/dist/esm/index.m-86dc8c44.js.map +0 -1
- package/dist/esm/kol-color.entry.js +0 -4
- package/dist/esm/kol-color.entry.js.map +0 -1
- package/dist/esm/kol-counter.entry.js +0 -4
- package/dist/esm/kol-counter.entry.js.map +0 -1
- package/dist/esm/label-3f6eb03e.js +0 -4
- package/dist/esm/prop.validators-0ce5851c.js +0 -4
- package/dist/esm/prop.validators-0ce5851c.js.map +0 -1
- package/dist/esm/reuse-2f7da8fc.js +0 -4
- package/dist/esm/reuse-2f7da8fc.js.map +0 -1
- package/dist/esm/validation-cac8ee73.js +0 -4
- package/dist/esm/validator-2e4f8df6.js +0 -4
- package/dist/esm/validator-2e4f8df6.js.map +0 -1
- package/dist/kolibri/a11y.tipps-ff5a1a99.js +0 -4
- package/dist/kolibri/a11y.tipps-ff5a1a99.js.map +0 -1
- package/dist/kolibri/app-globals-42336357.js +0 -4
- package/dist/kolibri/app-globals-42336357.js.map +0 -1
- package/dist/kolibri/color-d69786a5.js +0 -4
- package/dist/kolibri/color-d69786a5.js.map +0 -1
- package/dist/kolibri/controller-4c6206b0.js +0 -4
- package/dist/kolibri/controller-icon-c113ba17.js +0 -4
- package/dist/kolibri/dev.utils-daaf2f39.js +0 -4
- package/dist/kolibri/dev.utils-daaf2f39.js.map +0 -1
- package/dist/kolibri/devtools-d2ea86e5.js +0 -4
- package/dist/kolibri/icon-22dfdb71.js +0 -4
- package/dist/kolibri/index-1b8b837d.js.map +0 -1
- package/dist/kolibri/index-2eac13ad.js +0 -4
- package/dist/kolibri/index-2eac13ad.js.map +0 -1
- package/dist/kolibri/index-5cef3ddc.js +0 -4
- package/dist/kolibri/index-e722bdb7.js +0 -4
- package/dist/kolibri/index-e722bdb7.js.map +0 -1
- package/dist/kolibri/index.m-86dc8c44.js +0 -4
- package/dist/kolibri/index.m-86dc8c44.js.map +0 -1
- package/dist/kolibri/kol-color.entry.js +0 -4
- package/dist/kolibri/kol-color.entry.js.map +0 -1
- package/dist/kolibri/kol-counter.entry.js +0 -4
- package/dist/kolibri/kol-counter.entry.js.map +0 -1
- package/dist/kolibri/label-3f6eb03e.js +0 -4
- package/dist/kolibri/prop.validators-0ce5851c.js +0 -4
- package/dist/kolibri/prop.validators-0ce5851c.js.map +0 -1
- package/dist/kolibri/reuse-2f7da8fc.js +0 -4
- package/dist/kolibri/reuse-2f7da8fc.js.map +0 -1
- package/dist/kolibri/validation-cac8ee73.js +0 -4
- package/dist/kolibri/validator-2e4f8df6.js +0 -4
- package/dist/kolibri/validator-2e4f8df6.js.map +0 -1
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* KoliBri - The accessible HTML-Standard
|
|
3
3
|
*/
|
|
4
|
-
import{
|
|
4
|
+
import{e as i,d as t}from"./a11y.tipps-353a7f35.js";import{b as s,w as e,s as h,o,p as n}from"./prop.validators-c2234525.js";import{v as a}from"./tab-index-1bc7d9c1.js";import{b as d}from"./dev.utils-3ec9f837.js";const r=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,ariaDiscribedBy:n}},l=d();class v{constructor(t,e,o){var n,i,s,a,h;if(this.syncFormAssociatedName=()=>{var t;l&&(null===(t=this.formAssociated)||void 0===t||t.setAttribute("name",this.component.state._name||this.component.state._id))},this.setFormAssociatedValue=(t=null)=>{var e;l&&(null===(e=this.formAssociated)||void 0===e||e.setAttribute("value",t))},this.component=t,this.name=e,this.host=o,l){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 u extends v{constructor(t,e,o){super(t,e,o),this.hideLabel=!1,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}}),void 0===o&&t("Eine eindeutige ID an den Eingabefeldern ist nicht zwingend erforderlich, könnte aber für die E2E-Tests relevant sein.")}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 des Eingabefeldes relevant sein.")}validateOn(t){"object"==typeof t&&h(this.component,"_on",t)}validateSmartButton(t){o(t,(()=>{try{t=n(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.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;this.setFormAssociatedValue(t.target.value),"function"==typeof(null===(e=this.component._on)||void 0===e?void 0:e.onChange)&&this.component._on.onChange(t,t.target.value)}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)}}export{u as I,r as g};
|
|
File without changes
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* KoliBri - The accessible HTML-Standard
|
|
3
3
|
*/
|
|
4
|
-
import{d as e}from"./a11y.tipps-
|
|
4
|
+
import{d as e}from"./a11y.tipps-353a7f35.js";import{b as t}from"./dev.utils-3ec9f837.js";import{f as o,K as n}from"./prop.validators-c2234525.js";const s=o=>{for(t()&&(e("↓ Search form element start."),console.log(o));o instanceof HTMLElement&&"FORM"!==o.tagName&&"KOL-FORM"!==o.tagName;)o=o.parentElement instanceof HTMLElement?o.parentElement:o.parentNode instanceof ShadowRoot?o.parentNode.host:null,t()&&console.log(o);return t()&&e("↑ Search form element finished."),o},f=(e={})=>{const t=s(e.form);if(t instanceof HTMLElement){const e=new Event("reset",{bubbles:!0,cancelable:!0});if("FORM"===t.tagName)o(e,t),t.dispatchEvent(e);else if("KOL-FORM"===t.tagName){o(e,n.querySelector("form",t));const s=t;"object"==typeof s._on&&null!==typeof s._on&&"function"==typeof s._on.onReset&&s._on.onReset(e)}}},i=(e={})=>{const t=s(e.form);if(t instanceof HTMLElement){const e=new SubmitEvent("submit",{bubbles:!0,cancelable:!0,submitter:t});if("FORM"===t.tagName)o(e,t),t.dispatchEvent(e);else if("KOL-FORM"===t.tagName){o(e,n.querySelector("form",t));const s=t;"object"==typeof s._on&&null!==typeof s._on&&"function"==typeof s._on.onSubmit&&s._on.onSubmit(e)}}};export{f as a,i as p};
|
|
File without changes
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
/*!
|
|
2
|
+
* KoliBri - The accessible HTML-Standard
|
|
3
|
+
*/
|
|
4
|
+
import{a as t,d as s,m as i,s as e,b as a}from"./prop.validators-c2234525.js";import{S as o}from"./reuse-2b3b6999.js";import{I as r}from"./controller-9f66274a.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};
|
|
@@ -1 +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 { 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\n/**\n * API\n */\ntype RequiredProps = unknown;\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\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\tpublic validateRequired(value?: boolean): void {\n\t\twatchBoolean(this.component, '_required', value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (componentWillLoad)\n\t */\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\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\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\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\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\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\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\t/**\n\t * @see: components/abbr/component.tsx (componentWillLoad)\n\t */\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":";;;
|
|
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 { 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\n/**\n * API\n */\ntype RequiredProps = unknown;\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\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\tpublic validateRequired(value?: boolean): void {\n\t\twatchBoolean(this.component, '_required', value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (componentWillLoad)\n\t */\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\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\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\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\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\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\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\t/**\n\t * @see: components/abbr/component.tsx (componentWillLoad)\n\t */\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":";;;yKAUaA,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,MAaUQ,UAAqCC,EAGjDC,YAAmBC,EAAgEC,EAAcC,GAChGC,MAAMH,EAAWC,EAAMC,GACvBE,KAAKJ,UAAYA,C,CAMXK,iBAAiBC,GACvBC,EAAaH,KAAKJ,UAAW,YAAaM,E,CAMpCE,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,CA8BX2B,oBAAoBrB,GAC1BsB,EACCxB,KAAKJ,UACL,gBACCM,GAAmBA,IAAU,cAAgBA,IAAU,YACxD,IAAIuB,IAAI,CAAC,uCACTvB,EACA,CACCwB,aAAc,Y,CAQVC,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,CASfmB,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,CAMrCV,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{o,p as t,a as s}from"./prop.validators-c2234525.js";import{i}from"./reuse-2b3b6999.js";import{i as r}from"./icon-4f6266ca.js";import{I as c}from"./controller-9f66274a.js";const e=(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 c{constructor(o,t,i){super(o,t,i),this.component=o}validateIcon(c){o(c,(()=>{try{c=t(c)}catch(o){}s(this.component,"_icon",(o=>"object"==typeof o&&null!==o&&(i(o.left,1)||r(o.left)||i(o.right,1)||r(o.right))),new Set(["KoliBriHorizontalIcon"]),c,{hooks:{beforePatch:e},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 { objectObjectHandler, parseJson, watchValidator } from '../../../utils/prop.validators';\nimport { isString } from '../../../utils/validator';\nimport { isIcon } from '../../../utils/validators/icon';\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\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\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' &&\n\t\t\t\t\t\tvalue !== null &&\n\t\t\t\t\t\t(isString((value as KoliBriHorizontalIcon).left, 1) ||\n\t\t\t\t\t\t\tisIcon((value as KoliBriHorizontalIcon).left) ||\n\t\t\t\t\t\t\tisString((value as KoliBriHorizontalIcon).right, 1) ||\n\t\t\t\t\t\t\tisIcon((value as KoliBriHorizontalIcon).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\t/**\n\t * @see: components/abbr/component.tsx (componentWillLoad)\n\t */\n\tpublic componentWillLoad(): void {\n\t\tsuper.componentWillLoad();\n\t\tthis.validateIcon(this.component._icon);\n\t}\n}\n"],"mappings":";;;
|
|
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 { objectObjectHandler, parseJson, watchValidator } from '../../../utils/prop.validators';\nimport { isString } from '../../../utils/validator';\nimport { isIcon } from '../../../utils/validators/icon';\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\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\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' &&\n\t\t\t\t\t\tvalue !== null &&\n\t\t\t\t\t\t(isString((value as KoliBriHorizontalIcon).left, 1) ||\n\t\t\t\t\t\t\tisIcon((value as KoliBriHorizontalIcon).left) ||\n\t\t\t\t\t\t\tisString((value as KoliBriHorizontalIcon).right, 1) ||\n\t\t\t\t\t\t\tisIcon((value as KoliBriHorizontalIcon).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\t/**\n\t * @see: components/abbr/component.tsx (componentWillLoad)\n\t */\n\tpublic componentWillLoad(): void {\n\t\tsuper.componentWillLoad();\n\t\tthis.validateIcon(this.component._icon);\n\t}\n}\n"],"mappings":";;;kLASA,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,CAMXK,aAAaf,GACnBgB,EAAoBhB,GAAO,KAC1B,IACCA,EAAQiB,EAAiCjB,E,CAExC,MAAOkB,G,CAGTC,EACCL,KAAKJ,UACL,SACCV,UAEQA,IAAU,UACjBA,IAAU,OACTG,EAAUH,EAAgCK,KAAM,IAChDe,EAAQpB,EAAgCK,OACxCF,EAAUH,EAAgCI,MAAO,IACjDgB,EAAQpB,EAAgCI,SAG3C,IAAIiB,IAAI,CAAC,0BACTrB,EACA,CACCsB,MAAO,CACNC,YAAaxB,GAEdyB,SAAU,MAEX,G,CAOIC,oBACNZ,MAAMY,oBACNX,KAAKC,aAAaD,KAAKJ,UAAUgB,M"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
/*!
|
|
2
|
+
* KoliBri - The accessible HTML-Standard
|
|
3
|
+
*/
|
|
4
|
+
import{p as e}from"./reuse-2b3b6999.js";class t{constructor(){this.lockedElements=new Map,this.modalStack=new Map}lockElement(e){const t=e.getAttribute("tabindex");(e instanceof HTMLAnchorElement||e instanceof HTMLButtonElement||e instanceof HTMLInputElement||e instanceof HTMLSelectElement||e instanceof HTMLTextAreaElement||"string"==typeof t||void 0!==e.dataset.kolModal)&&("string"==typeof t?this.lockedElements.set(e,{tabIndex:t}):this.lockedElements.set(e,{}),e.setAttribute("tabindex","-1"),e.setAttribute("aria-hidden","true"),e.style.userSelect="none")}unlockElement(e,t){"string"==typeof e.tabIndex?t.setAttribute("tabindex",e.tabIndex):t.removeAttribute("tabindex"),t.removeAttribute("aria-hidden"),t.style.userSelect="unset",this.lockedElements.delete(t)}unlockLockedElements(e){e.forEach(this.unlockElement.bind(this))}lockFocus(e,t){if(e!==t&&(e instanceof HTMLElement||e instanceof ShadowRoot)){e instanceof HTMLElement&&(this.lockElement(e),this.lockFocus(e.shadowRoot,t));for(let n=0;n<e.children.length;n++)this.lockFocus(e.children[n],t)}}renderModalIfExists(e){if(e instanceof HTMLElement){this.lockedElements.has(e)&&this.unlockElement(this.lockedElements.get(e),e);const t=setTimeout((()=>{clearTimeout(t),e.focus()}),500)}if(this.unlockLockedElements(this.lockedElements),this.modalStack.size>0){const e=Array.from(this.modalStack.keys()),t=e[e.length-1];this.modalStack.forEach(((e,n)=>{n.style.display=t===n?"inline":"none"})),a().body.style.maxHeight="100vh",a().body.style.overflow="hidden",this.lockFocus(a().body,t)}else a().body.style.maxHeight="unset",a().body.style.overflow="unset"}openModal(e,t){e instanceof HTMLElement==!1?v.warn("[KolModalService] Die DOM-Referenz des Modals ist nicht valide."):(this.modalStack.set(e,{activeElement:t}),this.renderModalIfExists())}closeModal(e){var t;if(e instanceof HTMLElement==!1)v.warn("[KolModalService] Die DOM-Referenz des Modals ist nicht valide.");else{const n=null===(t=this.modalStack.get(e))||void 0===t?void 0:t.activeElement;this.modalStack.delete(e),this.renderModalIfExists(n)}}}class n{constructor(e){this.document=e,this.queue=new Set,this.isOpen=!1,this.toastElement=this.document.createElement("kol-toast"),this.toastElement.setAttribute("_level","3"),this.toastElement.setAttribute("_show","false"),this.toastElement.setAttribute("_show-duration","-1"),this.toastElement.setAttribute("_has-closer","true"),this.toastElement._on={onClose:()=>{const e=this.queue.values().next();e.value?(this.queue.delete(e.value),setTimeout((()=>{this.showToast(e.value)}),200)):this.isOpen=!1}},this.document.body.insertBefore(this.toastElement,this.document.body.firstChild)}enqueue(e){this.isOpen?this.queue.add(e):this.showToast(e)}showToast(e){this.toastElement.setAttribute("_heading",e.heading),this.toastElement.setAttribute("_show","true"),this.toastElement.setAttribute("_type",e.type),this.toastElement.innerText=e.description,this.isOpen=!0}}let i=null,s=null;const o=e=>{e instanceof Window?(i=e,i.document instanceof Document?s=e.document:console.warn("The given Window has no valid Document.")):console.warn("The given Window is not valid.")},l=()=>i||"undefined"==typeof window?null:window,a=()=>s||void 0===l().document?null:l().document;let r=null,c=null,d=null,u=null;const h=()=>!0===c,f=()=>!0===d,w=()=>!0===u;class v{static mapToArray(e){return Array.isArray(e)?e:[e]}static handleClassifier(e){return"string"==typeof e&&e.length>0?`${v.shield.label} | ${e}`:v.shield.label}static getShield(e){return[v.handleClassifier(null==e?void 0:e.classifier),`${v.shield.style};${(null==e?void 0:e.overwriteStyle)||""}`]}static debug(e,t){(c||!0===(null==t?void 0:t.forceLog))&&console.log(...v.getShield(t),...v.mapToArray(e))}static info(e,t){(c||!0===(null==t?void 0:t.forceLog))&&console.info(...v.getShield(t),...v.mapToArray(e))}static trace(e,t){(c||!0===(null==t?void 0:t.forceLog))&&console.trace(...v.getShield(t),...v.mapToArray(e))}static warn(e,t){(c||!0===(null==t?void 0:t.forceLog))&&console.warn(...v.getShield(t),...v.mapToArray(e))}static error(e,t){(c||!0===(null==t?void 0:t.forceLog))&&console.error(...v.getShield(t),...v.mapToArray(e))}static throw(e,t){if(c||!0===(null==t?void 0:t.forceLog))throw new Error(...v.getShield(t),...v.mapToArray(e))}}v.shield={label:"%cKoliBri",style:"color: white; background: #666; font-weight: bold; padding: .25em .5em; border-radius: 3px; border: 1px solid #000"};const b=()=>{if(null===c&&null===d&&null===u){const e=a().querySelector('meta[name="kolibri"]');e&&e.hasAttribute("content")&&(r=e.getAttribute("content"),"string"==typeof r&&(c=r.includes("dev-mode=true"),d=r.includes("experimental-mode=true"),u=r.includes("color-contrast-analysis=true")))}else console.warn("You can only initialize DEV_MODE and COLOR_CONTRAST_ANALYSIS once.")};let m=null;const p=()=>m||{},T=()=>{if(null===m){m=l().KoliBri||{};const e=new t,o=new n(a());Object.defineProperty(m,"Modal",{get:function(){return e}}),Object.defineProperty(m,"Toaster",{get:function(){return o}}),b()}else console.warn("You can only initialize KoliBri once.")},g=()=>{void 0===l().KoliBri&&Object.defineProperty(window,"KoliBri",{get:function(){return m}}),!0!==p().adviceShown&&(Object.defineProperty(m,"adviceShown",{get:function(){return!0}}),v.debug("\n\nSie verwenden die KoliBri-Komponenten-Bibliothek. Sollten Sie Verbesserungsvorschläge haben oder ein Problem feststellen, dann wenden Sie sich gerne an kolibri@itzbund.de.\n\nHinweise:\n- WAI Web Accessibility Tutorials (https://www.w3.org/WAI/tutorials/)\n- The first rule of ARIA is “Don't use ARIA” (https://cccaccessibility.org/web-1/web-developer-tutorials/how-not-to-use-aria)\n- BIK BITV-Test (https://www.bitvtest.de/bitv_test.html)\n- A11y-Checkliste (https://www.a11yproject.com/checklist/)\n- BSI CON.10: Entwicklung von Webanwendungen (Edition 2021)\n\n"))};let M=()=>Math.floor(16777215*Math.random()).toString(16);"test"===e&&(M=()=>"nonce");export{m as K,v as L,n as T,l as a,f as b,o as c,p as d,h as e,w as f,a as g,T as i,M as n,g as r};
|
|
@@ -0,0 +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","log","getShield","mapToArray","info","trace","error","Error","initMeta","meta","querySelector","hasAttribute","includes","KoliBri","getKoliBri","initKoliBri","Modal","Toaster","Object","defineProperty","renderDevAdvice","adviceShown","debug","nonce","Math","floor","random","toString","processEnv"],"sources":["./src/components/modal/service.ts","./src/components/toast/toaster.tsx","./src/utils/dev.utils.ts"],"sourcesContent":["import { Log, getDocument } 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 '../../types/alert';\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.log(...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} 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`\n\nSie verwenden die KoliBri-Komponenten-Bibliothek. Sollten Sie Verbesserungsvorschläge haben oder ein Problem feststellen, dann wenden Sie sich gerne an kolibri@itzbund.de.\n\nHinweise:\n- WAI Web Accessibility Tutorials (https://www.w3.org/WAI/tutorials/)\n- The first rule of ARIA is “Don't use ARIA” (https://cccaccessibility.org/web-1/web-developer-tutorials/how-not-to-use-aria)\n- BIK BITV-Test (https://www.bitvtest.de/bitv_test.html)\n- A11y-Checkliste (https://www.a11yproject.com/checklist/)\n- BSI CON.10: Entwicklung von Webanwendungen (Edition 2021)\n\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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"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
/*!
|
|
2
|
+
* KoliBri - The accessible HTML-Standard
|
|
3
|
+
*/
|
|
4
|
+
import{i as t,e as o,r as s,g as e,L as a,b as r,f as i,K as l}from"./dev.utils-3ec9f837.js";import{l as n,n as p,k as c,q as f,t as d,p as L,u as m}from"./prop.validators-c2234525.js";import"./reuse-2b3b6999.js";import"./index-2a11dd6d.js";import"./a11y.tipps-353a7f35.js";function u(t,e){try{Object.defineProperty(l,t,{get:function(){return e}})}catch(e){a.debug(`KoliBri property ${t} is already bind.`)}}const h=(t,e)=>a.debug(`${t} ${e?"":"not "}activated`),v=()=>{if(t(),o()){s(),u("a11yColorContrast",p),u("querySelector",c),u("querySelectorAll",f),u("querySelectorColors",d),u("utils",(function(){return n})),u("parseJson",L),u("stringifyJson",m);const t=e().body,a=e().createElement("svg");if(a.setAttribute("aria-label","KoliBri-DevTools"),a.setAttribute("xmlns","http://www.w3.org/2000/svg"),a.setAttribute("role","toolbar"),a.setAttribute("style","position: fixed;color: black;font-size: 200%;bottom: 0.25rem;right: 0.25rem;"),a.innerHTML='<svg\n xmlns="http://www.w3.org/2000/svg"\n width="50"\n height="50"\n viewBox="0 0 600 600"\n>\n <path d="M353 322L213 304V434L353 322Z" fill="#047" />\n <path d="M209 564V304L149 434L209 564Z" fill="#047" />\n <path d="M357 316L417 250L361 210L275 244L357 316Z" fill="#047" />\n <path d="M353 318L35 36L213 300L353 318Z" fill="#047" />\n <path d="M329 218L237 92L250 222L272 241L329 218Z" fill="#047" />\n <path d="M391 286L565 272L421 252L391 286Z" fill="#047" />\n</svg>',e().body.appendChild(a),h("Development mode",o()),h("Experimental mode",r()),h("Color contrast analysis",i()),i()){const o=setTimeout((()=>{clearTimeout(o),setInterval((()=>{n.queryHtmlElementColors(e().createElement("div"),p(t),!1,!1)}),1e4)}),2500)}}};export{v as initialize};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["prototypeKoliBri","name","cb","Object","defineProperty","KoliBri","get","e","Log","debug","metaModeLog","active","initialize","initKoliBri","getDevMode","renderDevAdvice","koliBriA11yColorContrast","koliBriQuerySelector","koliBriQuerySelectorAll","koliBriQuerySelectorColors","KoliBriUtils","parseJson","stringifyJson","body","getDocument","div","createElement","setAttribute","innerHTML","appendChild","getExperimalMode","getColorContrastAnalysis","timeout","setTimeout","clearTimeout","setInterval","queryHtmlElementColors"],"sources":["./src/global/devtools.ts"],"sourcesContent":["import { getColorContrastAnalysis, getDevMode, getDocument, getExperimalMode, initKoliBri, KoliBri, Log, renderDevAdvice } from '../utils/dev.utils';\nimport {\n\tkoliBriA11yColorContrast,\n\tkoliBriQuerySelector,\n\tkoliBriQuerySelectorAll,\n\tkoliBriQuerySelectorColors,\n\tKoliBriUtils,\n\tparseJson,\n\tstringifyJson,\n} from '../utils/prop.validators';\n\nfunction prototypeKoliBri<T>(name: string, cb: T) {\n\ttry {\n\t\tObject.defineProperty(KoliBri, name, {\n\t\t\tget: function () {\n\t\t\t\treturn cb;\n\t\t\t},\n\t\t});\n\t} catch (e) {\n\t\tLog.debug(`KoliBri property ${name} is already bind.`);\n\t}\n}\n\nconst metaModeLog = (name: string, active: boolean) => Log.debug(`${name} ${active ? '' : 'not '}activated`);\n\nexport const initialize = (): void => {\n\tinitKoliBri();\n\tif (getDevMode()) {\n\t\trenderDevAdvice();\n\n\t\tprototypeKoliBri('a11yColorContrast', koliBriA11yColorContrast);\n\t\tprototypeKoliBri('querySelector', koliBriQuerySelector);\n\t\tprototypeKoliBri('querySelectorAll', koliBriQuerySelectorAll);\n\t\tprototypeKoliBri('querySelectorColors', koliBriQuerySelectorColors);\n\t\tprototypeKoliBri('utils', function () {\n\t\t\treturn KoliBriUtils;\n\t\t});\n\t\tprototypeKoliBri('parseJson', parseJson);\n\t\tprototypeKoliBri('stringifyJson', stringifyJson);\n\n\t\tconst body = getDocument().body;\n\n\t\tconst div = getDocument().createElement('svg');\n\t\tdiv.setAttribute('aria-label', 'KoliBri-DevTools');\n\t\tdiv.setAttribute('xmlns', 'http://www.w3.org/2000/svg');\n\t\tdiv.setAttribute('role', 'toolbar');\n\t\tdiv.setAttribute('style', 'position: fixed;color: black;font-size: 200%;bottom: 0.25rem;right: 0.25rem;');\n\t\tdiv.innerHTML = `<svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"50\"\n height=\"50\"\n viewBox=\"0 0 600 600\"\n>\n <path d=\"M353 322L213 304V434L353 322Z\" fill=\"#047\" />\n <path d=\"M209 564V304L149 434L209 564Z\" fill=\"#047\" />\n <path d=\"M357 316L417 250L361 210L275 244L357 316Z\" fill=\"#047\" />\n <path d=\"M353 318L35 36L213 300L353 318Z\" fill=\"#047\" />\n <path d=\"M329 218L237 92L250 222L272 241L329 218Z\" fill=\"#047\" />\n <path d=\"M391 286L565 272L421 252L391 286Z\" fill=\"#047\" />\n</svg>`;\n\n\t\tgetDocument().body.appendChild(div);\n\n\t\tmetaModeLog('Development mode', getDevMode());\n\t\tmetaModeLog('Experimental mode', getExperimalMode());\n\t\tmetaModeLog('Color contrast analysis', getColorContrastAnalysis());\n\n\t\tif (getColorContrastAnalysis()) {\n\t\t\tconst timeout = setTimeout(() => {\n\t\t\t\tclearTimeout(timeout);\n\t\t\t\tsetInterval(() => {\n\t\t\t\t\tKoliBriUtils.queryHtmlElementColors(getDocument().createElement('div'), koliBriA11yColorContrast(body), false, false);\n\t\t\t\t}, 10000);\n\t\t\t}, 2500);\n\t\t}\n\n\t\t// setTimeout(() => {\n\t\t// const kolButton = koliBriQuerySelector<HTMLButtonElement>(document, '[_label=\"Aktion ausführen\"]');\n\t\t// if (kolButton) {\n\t\t// const button = koliBriQuerySelector<HTMLButtonElement>(kolButton?.shadowRoot as ShadowRoot, 'button');\n\t\t// if (button) {\n\t\t// kolButton.style.backgroundColor = '#988';\n\t\t// button.style.backgroundColor = 'inherit';\n\t\t// button.style.color = '#988';\n\t\t// const kolButtonColors = koliBriQuerySelectorColors('[_label=\"Aktion ausführen\"]');\n\t\t// console.log(\n\t\t// koliBriQuerySelectorColors('button', {\n\t\t// ...kolButtonColors,\n\t\t// })\n\t\t// );\n\t\t// }\n\t\t// }\n\t\t// }, 2500);\n\t}\n};\n"],"mappings":";;;
|
|
1
|
+
{"version":3,"names":["prototypeKoliBri","name","cb","Object","defineProperty","KoliBri","get","e","Log","debug","metaModeLog","active","initialize","initKoliBri","getDevMode","renderDevAdvice","koliBriA11yColorContrast","koliBriQuerySelector","koliBriQuerySelectorAll","koliBriQuerySelectorColors","KoliBriUtils","parseJson","stringifyJson","body","getDocument","div","createElement","setAttribute","innerHTML","appendChild","getExperimalMode","getColorContrastAnalysis","timeout","setTimeout","clearTimeout","setInterval","queryHtmlElementColors"],"sources":["./src/global/devtools.ts"],"sourcesContent":["import { getColorContrastAnalysis, getDevMode, getDocument, getExperimalMode, initKoliBri, KoliBri, Log, renderDevAdvice } from '../utils/dev.utils';\nimport {\n\tkoliBriA11yColorContrast,\n\tkoliBriQuerySelector,\n\tkoliBriQuerySelectorAll,\n\tkoliBriQuerySelectorColors,\n\tKoliBriUtils,\n\tparseJson,\n\tstringifyJson,\n} from '../utils/prop.validators';\n\nfunction prototypeKoliBri<T>(name: string, cb: T) {\n\ttry {\n\t\tObject.defineProperty(KoliBri, name, {\n\t\t\tget: function () {\n\t\t\t\treturn cb;\n\t\t\t},\n\t\t});\n\t} catch (e) {\n\t\tLog.debug(`KoliBri property ${name} is already bind.`);\n\t}\n}\n\nconst metaModeLog = (name: string, active: boolean) => Log.debug(`${name} ${active ? '' : 'not '}activated`);\n\nexport const initialize = (): void => {\n\tinitKoliBri();\n\tif (getDevMode()) {\n\t\trenderDevAdvice();\n\n\t\tprototypeKoliBri('a11yColorContrast', koliBriA11yColorContrast);\n\t\tprototypeKoliBri('querySelector', koliBriQuerySelector);\n\t\tprototypeKoliBri('querySelectorAll', koliBriQuerySelectorAll);\n\t\tprototypeKoliBri('querySelectorColors', koliBriQuerySelectorColors);\n\t\tprototypeKoliBri('utils', function () {\n\t\t\treturn KoliBriUtils;\n\t\t});\n\t\tprototypeKoliBri('parseJson', parseJson);\n\t\tprototypeKoliBri('stringifyJson', stringifyJson);\n\n\t\tconst body = getDocument().body;\n\n\t\tconst div = getDocument().createElement('svg');\n\t\tdiv.setAttribute('aria-label', 'KoliBri-DevTools');\n\t\tdiv.setAttribute('xmlns', 'http://www.w3.org/2000/svg');\n\t\tdiv.setAttribute('role', 'toolbar');\n\t\tdiv.setAttribute('style', 'position: fixed;color: black;font-size: 200%;bottom: 0.25rem;right: 0.25rem;');\n\t\tdiv.innerHTML = `<svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"50\"\n height=\"50\"\n viewBox=\"0 0 600 600\"\n>\n <path d=\"M353 322L213 304V434L353 322Z\" fill=\"#047\" />\n <path d=\"M209 564V304L149 434L209 564Z\" fill=\"#047\" />\n <path d=\"M357 316L417 250L361 210L275 244L357 316Z\" fill=\"#047\" />\n <path d=\"M353 318L35 36L213 300L353 318Z\" fill=\"#047\" />\n <path d=\"M329 218L237 92L250 222L272 241L329 218Z\" fill=\"#047\" />\n <path d=\"M391 286L565 272L421 252L391 286Z\" fill=\"#047\" />\n</svg>`;\n\n\t\tgetDocument().body.appendChild(div);\n\n\t\tmetaModeLog('Development mode', getDevMode());\n\t\tmetaModeLog('Experimental mode', getExperimalMode());\n\t\tmetaModeLog('Color contrast analysis', getColorContrastAnalysis());\n\n\t\tif (getColorContrastAnalysis()) {\n\t\t\tconst timeout = setTimeout(() => {\n\t\t\t\tclearTimeout(timeout);\n\t\t\t\tsetInterval(() => {\n\t\t\t\t\tKoliBriUtils.queryHtmlElementColors(getDocument().createElement('div'), koliBriA11yColorContrast(body), false, false);\n\t\t\t\t}, 10000);\n\t\t\t}, 2500);\n\t\t}\n\n\t\t// setTimeout(() => {\n\t\t// const kolButton = koliBriQuerySelector<HTMLButtonElement>(document, '[_label=\"Aktion ausführen\"]');\n\t\t// if (kolButton) {\n\t\t// const button = koliBriQuerySelector<HTMLButtonElement>(kolButton?.shadowRoot as ShadowRoot, 'button');\n\t\t// if (button) {\n\t\t// kolButton.style.backgroundColor = '#988';\n\t\t// button.style.backgroundColor = 'inherit';\n\t\t// button.style.color = '#988';\n\t\t// const kolButtonColors = koliBriQuerySelectorColors('[_label=\"Aktion ausführen\"]');\n\t\t// console.log(\n\t\t// koliBriQuerySelectorColors('button', {\n\t\t// ...kolButtonColors,\n\t\t// })\n\t\t// );\n\t\t// }\n\t\t// }\n\t\t// }, 2500);\n\t}\n};\n"],"mappings":";;;kRAWA,SAASA,EAAoBC,EAAcC,GAC1C,IACCC,OAAOC,eAAeC,EAASJ,EAAM,CACpCK,IAAK,WACJ,OAAOJ,C,IAGR,MAAOK,GACRC,EAAIC,MAAM,oBAAoBR,qB,CAEhC,CAEA,MAAMS,EAAc,CAACT,EAAcU,IAAoBH,EAAIC,MAAM,GAAGR,KAAQU,EAAS,GAAK,mB,MAE7EC,EAAa,KACzBC,IACA,GAAIC,IAAc,CACjBC,IAEAf,EAAiB,oBAAqBgB,GACtChB,EAAiB,gBAAiBiB,GAClCjB,EAAiB,mBAAoBkB,GACrClB,EAAiB,sBAAuBmB,GACxCnB,EAAiB,SAAS,WACzB,OAAOoB,C,IAERpB,EAAiB,YAAaqB,GAC9BrB,EAAiB,gBAAiBsB,GAElC,MAAMC,EAAOC,IAAcD,KAE3B,MAAME,EAAMD,IAAcE,cAAc,OACxCD,EAAIE,aAAa,aAAc,oBAC/BF,EAAIE,aAAa,QAAS,8BAC1BF,EAAIE,aAAa,OAAQ,WACzBF,EAAIE,aAAa,QAAS,gFAC1BF,EAAIG,UAAY,ueAchBJ,IAAcD,KAAKM,YAAYJ,GAE/Bf,EAAY,mBAAoBI,KAChCJ,EAAY,oBAAqBoB,KACjCpB,EAAY,0BAA2BqB,KAEvC,GAAIA,IAA4B,CAC/B,MAAMC,EAAUC,YAAW,KAC1BC,aAAaF,GACbG,aAAY,KACXf,EAAagB,uBAAuBZ,IAAcE,cAAc,OAAQV,EAAyBO,GAAO,MAAO,MAAM,GACnH,IAAM,GACP,K"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* KoliBri - The accessible HTML-Standard
|
|
3
3
|
*/
|
|
4
|
-
import{g as e}from"./index-
|
|
4
|
+
import{g as e}from"./index-781a1af1.js";import{d as n}from"./a11y.tipps-353a7f35.js";const i="Fehler",t="Warnung",r="Hinweis",o="Erfolg",a="Nachricht",s="Schließen",c="von",g="Zeichen",l={error:i,warning:t,info:r,success:o,message:a,close:s,"form-description":"Formular-Felder, die mit einem Sternchen (*) gekennzeichnet sind, sind Pflichtangaben.",of:c,characters:g,new:"Neu","no-entries":"Es sind keine Einträge vorhanden.","change-order":"Sortierung von {{colLabel}} ändern","action-running":"Aktion wird ausgeführt...","action-done":"Aktion abgeschlossen","page-first":"Direkt zur ersten Seite","page-back":"Eine Seite zurück","page-next":"Eine Seite weiter","page-last":"Direkt zur letzten Seite","entries-per-site":"Einträge pro Seite","page-current":"Seite {{page}}","page-selected":"Seite {{page}} ist ausgewählt","page-per-site":"{{entries}} Einträge pro Seite","nav-maximize":"Navigation maximieren","nav-minimize":"Navigation minimieren","logo-description":"Logo {{orgShort}}. Bundesadler mit Flaggenstab und Schriftzug {{orgLong}}","open-link-in-tab":"Der Link wird in einem neuen Tab geöffnet.","kolibri-logo":"Logo von KoliBri"},p="Error",d="Warning",f="Note",m="Success",u="Message",h="Close",k="of",b="characters",S={error:p,warning:d,info:f,success:m,message:u,close:h,"form-description":"Form fields marked with an asterisk (*) are mandatory.",of:k,characters:b,new:"New","no-entries":"No entries available.","change-order":"Change order of {{colLabel}}","action-running":"Action is running...","action-done":"Action done","page-first":"Directly to the first page","page-back":"One page back","page-next":"One page further","page-last":"Directly to the last page","entries-per-site":"Entries per page","page-current":"Page {{page}}","page-selected":"Page {{page}} is selected","page-per-site":"{{entries}} entries per page","nav-maximize":"Maximize","nav-minimize":"Minimize","logo-description":"Logo {{orgShort}}. Federal eagle with flag staff and lettering {{orgLong}}","open-link-in-tab":"The link will open in a new tab.","kolibri-logo":"KoliBri logo"},w=e=>Object.keys(e).reduce(((i,n)=>(i[`kol-${n}`]=e[n],i)),{}),z=new Set([e=>e("en",w(S)),e=>e("de",w(l))]),v=(i,a)=>{const r=e();if(void 0===r)return n("[I18n] I18nService not available! Please call the global register function."),i;let t=r.translate(i,a);return t===i&&(n("[I18n] Locales not initialized! Initialize default locales automatically."),z.forEach((e=>e(((e,i)=>(r.addResourceBundle(e,i),e))))),t=r.translate(i,a)),t};export{v as a,z as t};
|
|
File without changes
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
/*!
|
|
2
|
+
* KoliBri - The accessible HTML-Standard
|
|
3
|
+
*/
|
|
4
|
+
import{c as o}from"./a11y.tipps-353a7f35.js";import{o as i,p as t,a as n}from"./prop.validators-c2234525.js";import{i as e,b as l,c}from"./reuse-2b3b6999.js";const s=(t,o,i)=>{c(i)?t[o]=i:e(i,1)&&(t[o]={icon:i})},r=(t,o)=>{let i={};if(e(t,1))if("right"===o)i={right:{icon:t}};else i={left:{icon:t}};else"object"==typeof t&&null!==t&&(s(i,"top",t.top),s(i,"right",t.right),s(i,"bottom",t.bottom),s(i,"left",t.left));return i},a=t=>{var o,e,i,n,l,s,a;if(null===(o=t.nextState)||void 0===o?void 0:o.has("_icon")){const o=null===(e=t.nextState)||void 0===e?void 0:e.get("_icon"),l=(null===(i=t.nextState)||void 0===i?void 0:i.get("_iconAlign"))||t.state._iconAlign;null===(n=t.nextState)||void 0===n||n.set("_icon",r(o,l))}else if(null===(l=t.nextState)||void 0===l?void 0:l.has("_iconAlign")){const o=t.state._iconAlign;null===(s=t.nextState)||void 0===s||s.set("_icon",{[o]:void 0,[null===(a=t.nextState)||void 0===a?void 0:a.get("_iconAlign")]:t.state._icon[o]})}},d=t=>"object"==typeof t&&null!==t&&(void 0===t.style||l(t.style))&&e(t.icon,1),u=(o,l)=>{i(l,(()=>{try{l=t(l)}catch(t){}n(o,"_icon",(t=>null===t||e(t,1)||"object"==typeof t&&null!==t&&(e(t.left,1)||d(t.left)||e(t.right,1)||d(t.right)||e(t.top,1)||d(t.top)||e(t.bottom,1)||d(t.bottom))),new Set(["KoliBriIcon"]),l,{hooks:{beforePatch:(t,e)=>{null===t&&e.set("_icon",{}),a(o)}},required:!0})}))},f=(t,e)=>{o("Das Property _icon-align bzw. _iconAlign ist veraltet. Die Ausrichtung der Icon's kann jetzt direkt über das _icon-Property vorgenommen werden. (v1.1.10: https://public-ui.github.io/?path=/story/backlog-und-changelog--page)"),n(t,"_iconAlign",(t=>"left"===t||"right"===t),new Set(["Alignment {left, right, top, bottom}"]),e,{hooks:{beforePatch:()=>{a(t)}}})};export{d as i,u as v,f as w};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["mapCustomIcon","state","alignment","icon","isObject","isString","mapIconProp2State","iconAlign","right","left","top","bottom","beforePatchIcon","component","_a","nextState","has","_b","get","_c","_iconAlign","_d","set","_e","lastIconAlign","_f","undefined","_g","_icon","isIcon","value","style","isStyle","validateIcon","objectObjectHandler","parseJson","e","watchValidator","Set","hooks","beforePatch","nextValue","required","watchIconAlign","deprecatedHint"],"sources":["./src/utils/validators/icon.ts"],"sourcesContent":["import { Generic } from '@a11y-ui/core';\nimport { ButtonStates } from '../../types/button-link';\nimport { AnyIconFontClass, KoliBriAllIcon, KoliBriCustomIcon, KoliBriIconProp, KoliBriIconState } from '../../types/icon';\nimport { Alignment } from '../../types/props/alignment';\nimport { deprecatedHint } from '../a11y.tipps';\nimport { objectObjectHandler, parseJson, watchValidator } from '../prop.validators';\nimport { isObject, isString, isStyle } from '../validator';\n\nconst mapCustomIcon = (state: KoliBriIconState, alignment: Alignment | 'top' | 'bottom', icon?: AnyIconFontClass | KoliBriCustomIcon) => {\n\tif (isObject(icon)) {\n\t\tstate[alignment] = icon as KoliBriCustomIcon;\n\t} else if (isString(icon, 1)) {\n\t\tstate[alignment] = {\n\t\t\ticon: icon as AnyIconFontClass,\n\t\t};\n\t}\n};\n\nexport const mapIconProp2State = (icon: KoliBriIconProp, iconAlign?: Alignment): KoliBriIconState => {\n\tlet state: KoliBriIconState = {};\n\tif (isString(icon, 1)) {\n\t\tswitch (iconAlign) {\n\t\t\tcase 'right':\n\t\t\t\tstate = {\n\t\t\t\t\tright: {\n\t\t\t\t\t\ticon: icon as AnyIconFontClass,\n\t\t\t\t\t},\n\t\t\t\t};\n\t\t\t\tbreak;\n\t\t\tdefault:\n\t\t\t\tstate = {\n\t\t\t\t\tleft: {\n\t\t\t\t\t\ticon: icon as AnyIconFontClass,\n\t\t\t\t\t},\n\t\t\t\t};\n\t\t}\n\t} else if (typeof icon === 'object' && icon !== null) {\n\t\tmapCustomIcon(state, 'top', icon.top);\n\t\tmapCustomIcon(state, 'right', icon.right);\n\t\tmapCustomIcon(state, 'bottom', icon.bottom);\n\t\tmapCustomIcon(state, 'left', icon.left);\n\t}\n\treturn state;\n};\n\nconst beforePatchIcon = (component: Generic.Element.Component): void => {\n\tif (component.nextState?.has('_icon')) {\n\t\tconst icon = component.nextState?.get('_icon') as KoliBriIconProp;\n\t\tconst iconAlign = (component.nextState?.get('_iconAlign') as Alignment) || (component.state as ButtonStates)._iconAlign;\n\t\tcomponent.nextState?.set('_icon', mapIconProp2State(icon, iconAlign));\n\t} else if (component.nextState?.has('_iconAlign')) {\n\t\tconst lastIconAlign = (component.state as ButtonStates)._iconAlign;\n\t\tcomponent.nextState?.set('_icon', {\n\t\t\t[lastIconAlign]: undefined,\n\t\t\t[component.nextState?.get('_iconAlign') as Alignment]: (component.state as ButtonStates)._icon[lastIconAlign],\n\t\t});\n\t}\n};\n\nexport const isIcon = (value?: unknown): boolean =>\n\ttypeof value === 'object' &&\n\tvalue !== null &&\n\t(typeof (value as KoliBriCustomIcon).style === 'undefined' || isStyle((value as KoliBriCustomIcon).style)) &&\n\tisString((value as KoliBriCustomIcon).icon, 1);\n\nexport const validateIcon = (component: Generic.Element.Component, value?: KoliBriIconProp): void => {\n\tobjectObjectHandler(value, () => {\n\t\ttry {\n\t\t\tvalue = parseJson<KoliBriIconProp>(value as string);\n\t\t} catch (e) {\n\t\t\t// value behält den ursprünglichen Wert\n\t\t}\n\t\twatchValidator(\n\t\t\tcomponent,\n\t\t\t'_icon',\n\t\t\t(value): boolean => {\n\t\t\t\treturn (\n\t\t\t\t\tvalue === null ||\n\t\t\t\t\tisString(value, 1) ||\n\t\t\t\t\t(typeof value === 'object' &&\n\t\t\t\t\t\tvalue !== null &&\n\t\t\t\t\t\t(isString((value as KoliBriAllIcon).left, 1) ||\n\t\t\t\t\t\t\tisIcon((value as KoliBriAllIcon).left) ||\n\t\t\t\t\t\t\tisString((value as KoliBriAllIcon).right, 1) ||\n\t\t\t\t\t\t\tisIcon((value as KoliBriAllIcon).right) ||\n\t\t\t\t\t\t\tisString((value as KoliBriAllIcon).top, 1) ||\n\t\t\t\t\t\t\tisIcon((value as KoliBriAllIcon).top) ||\n\t\t\t\t\t\t\tisString((value as KoliBriAllIcon).bottom, 1) ||\n\t\t\t\t\t\t\tisIcon((value as KoliBriAllIcon).bottom)))\n\t\t\t\t);\n\t\t\t},\n\t\t\tnew Set(['KoliBriIcon']),\n\t\t\tvalue,\n\t\t\t{\n\t\t\t\thooks: {\n\t\t\t\t\tbeforePatch: (nextValue: unknown, nextState: Map<string, unknown>) => {\n\t\t\t\t\t\tif (nextValue === null) {\n\t\t\t\t\t\t\tnextState.set('_icon', {});\n\t\t\t\t\t\t}\n\t\t\t\t\t\tbeforePatchIcon(component);\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\trequired: true,\n\t\t\t}\n\t\t);\n\t});\n};\n\nexport const watchIconAlign = (component: Generic.Element.Component, value?: Alignment): void => {\n\tdeprecatedHint(\n\t\t`Das Property _icon-align bzw. _iconAlign ist veraltet. Die Ausrichtung der Icon's kann jetzt direkt über das _icon-Property vorgenommen werden. (v1.1.10: https://public-ui.github.io/?path=/story/backlog-und-changelog--page)`\n\t);\n\twatchValidator(component, '_iconAlign', (value) => value === 'left' || value === 'right', new Set(['Alignment {left, right, top, bottom}']), value, {\n\t\thooks: {\n\t\t\tbeforePatch: () => {\n\t\t\t\tbeforePatchIcon(component);\n\t\t\t},\n\t\t},\n\t});\n};\n"],"mappings":";;;
|
|
1
|
+
{"version":3,"names":["mapCustomIcon","state","alignment","icon","isObject","isString","mapIconProp2State","iconAlign","right","left","top","bottom","beforePatchIcon","component","_a","nextState","has","_b","get","_c","_iconAlign","_d","set","_e","lastIconAlign","_f","undefined","_g","_icon","isIcon","value","style","isStyle","validateIcon","objectObjectHandler","parseJson","e","watchValidator","Set","hooks","beforePatch","nextValue","required","watchIconAlign","deprecatedHint"],"sources":["./src/utils/validators/icon.ts"],"sourcesContent":["import { Generic } from '@a11y-ui/core';\nimport { ButtonStates } from '../../types/button-link';\nimport { AnyIconFontClass, KoliBriAllIcon, KoliBriCustomIcon, KoliBriIconProp, KoliBriIconState } from '../../types/icon';\nimport { Alignment } from '../../types/props/alignment';\nimport { deprecatedHint } from '../a11y.tipps';\nimport { objectObjectHandler, parseJson, watchValidator } from '../prop.validators';\nimport { isObject, isString, isStyle } from '../validator';\n\nconst mapCustomIcon = (state: KoliBriIconState, alignment: Alignment | 'top' | 'bottom', icon?: AnyIconFontClass | KoliBriCustomIcon) => {\n\tif (isObject(icon)) {\n\t\tstate[alignment] = icon as KoliBriCustomIcon;\n\t} else if (isString(icon, 1)) {\n\t\tstate[alignment] = {\n\t\t\ticon: icon as AnyIconFontClass,\n\t\t};\n\t}\n};\n\nexport const mapIconProp2State = (icon: KoliBriIconProp, iconAlign?: Alignment): KoliBriIconState => {\n\tlet state: KoliBriIconState = {};\n\tif (isString(icon, 1)) {\n\t\tswitch (iconAlign) {\n\t\t\tcase 'right':\n\t\t\t\tstate = {\n\t\t\t\t\tright: {\n\t\t\t\t\t\ticon: icon as AnyIconFontClass,\n\t\t\t\t\t},\n\t\t\t\t};\n\t\t\t\tbreak;\n\t\t\tdefault:\n\t\t\t\tstate = {\n\t\t\t\t\tleft: {\n\t\t\t\t\t\ticon: icon as AnyIconFontClass,\n\t\t\t\t\t},\n\t\t\t\t};\n\t\t}\n\t} else if (typeof icon === 'object' && icon !== null) {\n\t\tmapCustomIcon(state, 'top', icon.top);\n\t\tmapCustomIcon(state, 'right', icon.right);\n\t\tmapCustomIcon(state, 'bottom', icon.bottom);\n\t\tmapCustomIcon(state, 'left', icon.left);\n\t}\n\treturn state;\n};\n\nconst beforePatchIcon = (component: Generic.Element.Component): void => {\n\tif (component.nextState?.has('_icon')) {\n\t\tconst icon = component.nextState?.get('_icon') as KoliBriIconProp;\n\t\tconst iconAlign = (component.nextState?.get('_iconAlign') as Alignment) || (component.state as ButtonStates)._iconAlign;\n\t\tcomponent.nextState?.set('_icon', mapIconProp2State(icon, iconAlign));\n\t} else if (component.nextState?.has('_iconAlign')) {\n\t\tconst lastIconAlign = (component.state as ButtonStates)._iconAlign;\n\t\tcomponent.nextState?.set('_icon', {\n\t\t\t[lastIconAlign]: undefined,\n\t\t\t[component.nextState?.get('_iconAlign') as Alignment]: (component.state as ButtonStates)._icon[lastIconAlign],\n\t\t});\n\t}\n};\n\nexport const isIcon = (value?: unknown): boolean =>\n\ttypeof value === 'object' &&\n\tvalue !== null &&\n\t(typeof (value as KoliBriCustomIcon).style === 'undefined' || isStyle((value as KoliBriCustomIcon).style)) &&\n\tisString((value as KoliBriCustomIcon).icon, 1);\n\nexport const validateIcon = (component: Generic.Element.Component, value?: KoliBriIconProp): void => {\n\tobjectObjectHandler(value, () => {\n\t\ttry {\n\t\t\tvalue = parseJson<KoliBriIconProp>(value as string);\n\t\t} catch (e) {\n\t\t\t// value behält den ursprünglichen Wert\n\t\t}\n\t\twatchValidator(\n\t\t\tcomponent,\n\t\t\t'_icon',\n\t\t\t(value): boolean => {\n\t\t\t\treturn (\n\t\t\t\t\tvalue === null ||\n\t\t\t\t\tisString(value, 1) ||\n\t\t\t\t\t(typeof value === 'object' &&\n\t\t\t\t\t\tvalue !== null &&\n\t\t\t\t\t\t(isString((value as KoliBriAllIcon).left, 1) ||\n\t\t\t\t\t\t\tisIcon((value as KoliBriAllIcon).left) ||\n\t\t\t\t\t\t\tisString((value as KoliBriAllIcon).right, 1) ||\n\t\t\t\t\t\t\tisIcon((value as KoliBriAllIcon).right) ||\n\t\t\t\t\t\t\tisString((value as KoliBriAllIcon).top, 1) ||\n\t\t\t\t\t\t\tisIcon((value as KoliBriAllIcon).top) ||\n\t\t\t\t\t\t\tisString((value as KoliBriAllIcon).bottom, 1) ||\n\t\t\t\t\t\t\tisIcon((value as KoliBriAllIcon).bottom)))\n\t\t\t\t);\n\t\t\t},\n\t\t\tnew Set(['KoliBriIcon']),\n\t\t\tvalue,\n\t\t\t{\n\t\t\t\thooks: {\n\t\t\t\t\tbeforePatch: (nextValue: unknown, nextState: Map<string, unknown>) => {\n\t\t\t\t\t\tif (nextValue === null) {\n\t\t\t\t\t\t\tnextState.set('_icon', {});\n\t\t\t\t\t\t}\n\t\t\t\t\t\tbeforePatchIcon(component);\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\trequired: true,\n\t\t\t}\n\t\t);\n\t});\n};\n\nexport const watchIconAlign = (component: Generic.Element.Component, value?: Alignment): void => {\n\tdeprecatedHint(\n\t\t`Das Property _icon-align bzw. _iconAlign ist veraltet. Die Ausrichtung der Icon's kann jetzt direkt über das _icon-Property vorgenommen werden. (v1.1.10: https://public-ui.github.io/?path=/story/backlog-und-changelog--page)`\n\t);\n\twatchValidator(component, '_iconAlign', (value) => value === 'left' || value === 'right', new Set(['Alignment {left, right, top, bottom}']), value, {\n\t\thooks: {\n\t\t\tbeforePatch: () => {\n\t\t\t\tbeforePatchIcon(component);\n\t\t\t},\n\t\t},\n\t});\n};\n"],"mappings":";;;8JAQA,MAAMA,EAAgB,CAACC,EAAyBC,EAAyCC,KACxF,GAAIC,EAASD,GAAO,CACnBF,EAAMC,GAAaC,C,MACb,GAAIE,EAASF,EAAM,GAAI,CAC7BF,EAAMC,GAAa,CAClBC,KAAMA,E,GAKF,MAAMG,EAAoB,CAACH,EAAuBI,KACxD,IAAIN,EAA0B,GAC9B,GAAII,EAASF,EAAM,GAAI,CACtB,OAAQI,GACP,IAAK,QACJN,EAAQ,CACPO,MAAO,CACNL,KAAMA,IAGR,MACD,QACCF,EAAQ,CACPQ,KAAM,CACLN,KAAMA,I,MAIJ,UAAWA,IAAS,UAAYA,IAAS,KAAM,CACrDH,EAAcC,EAAO,MAAOE,EAAKO,KACjCV,EAAcC,EAAO,QAASE,EAAKK,OACnCR,EAAcC,EAAO,SAAUE,EAAKQ,QACpCX,EAAcC,EAAO,OAAQE,EAAKM,K,CAEnC,OAAOR,CAAK,EAGb,MAAMW,EAAmBC,I,kBACxB,IAAIC,EAAAD,EAAUE,aAAS,MAAAD,SAAA,SAAAA,EAAEE,IAAI,SAAU,CACtC,MAAMb,GAAOc,EAAAJ,EAAUE,aAAS,MAAAE,SAAA,SAAAA,EAAEC,IAAI,SACtC,MAAMX,IAAaY,EAAAN,EAAUE,aAAS,MAAAI,SAAA,SAAAA,EAAED,IAAI,gBAAgCL,EAAUZ,MAAuBmB,YAC7GC,EAAAR,EAAUE,aAAS,MAAAM,SAAA,SAAAA,EAAEC,IAAI,QAAShB,EAAkBH,EAAMI,G,MACpD,IAAIgB,EAAAV,EAAUE,aAAS,MAAAQ,SAAA,SAAAA,EAAEP,IAAI,cAAe,CAClD,MAAMQ,EAAiBX,EAAUZ,MAAuBmB,YACxDK,EAAAZ,EAAUE,aAAS,MAAAU,SAAA,SAAAA,EAAEH,IAAI,QAAS,CACjCE,CAACA,GAAgBE,UACjB,EAACC,EAAAd,EAAUE,aAAS,MAAAY,SAAA,SAAAA,EAAET,IAAI,eAA8BL,EAAUZ,MAAuB2B,MAAMJ,I,SAKrFK,EAAUC,UACfA,IAAU,UACjBA,IAAU,cACDA,EAA4BC,QAAU,aAAeC,EAASF,EAA4BC,SACnG1B,EAAUyB,EAA4B3B,KAAM,G,MAEhC8B,EAAe,CAACpB,EAAsCiB,KAClEI,EAAoBJ,GAAO,KAC1B,IACCA,EAAQK,EAA2BL,E,CAClC,MAAOM,G,CAGTC,EACCxB,EACA,SACCiB,GAECA,IAAU,MACVzB,EAASyB,EAAO,WACRA,IAAU,UACjBA,IAAU,OACTzB,EAAUyB,EAAyBrB,KAAM,IACzCoB,EAAQC,EAAyBrB,OACjCJ,EAAUyB,EAAyBtB,MAAO,IAC1CqB,EAAQC,EAAyBtB,QACjCH,EAAUyB,EAAyBpB,IAAK,IACxCmB,EAAQC,EAAyBpB,MACjCL,EAAUyB,EAAyBnB,OAAQ,IAC3CkB,EAAQC,EAAyBnB,UAGrC,IAAI2B,IAAI,CAAC,gBACTR,EACA,CACCS,MAAO,CACNC,YAAa,CAACC,EAAoB1B,KACjC,GAAI0B,IAAc,KAAM,CACvB1B,EAAUO,IAAI,QAAS,G,CAExBV,EAAgBC,EAAU,GAG5B6B,SAAU,MAEX,GACA,E,MAGUC,EAAiB,CAAC9B,EAAsCiB,KACpEc,EACC,mOAEDP,EAAexB,EAAW,cAAeiB,GAAUA,IAAU,QAAUA,IAAU,SAAS,IAAIQ,IAAI,CAAC,yCAA0CR,EAAO,CACnJS,MAAO,CACNC,YAAa,KACZ5B,EAAgBC,EAAU,IAG3B,S"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
/*!
|
|
2
|
+
* KoliBri - The accessible HTML-Standard
|
|
3
|
+
*/
|
|
4
|
+
var e="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{};function t(e,t,o){return e(o={path:t,exports:{},require:function(e,t){return n()}},o.exports),o.exports}function n(){throw new Error("Dynamic requires are not currently supported by @rollup/plugin-commonjs")}var o=t((function(t){!function(e,o){t.exports?t.exports=o():e.log=o()}(e,(function(){var e=function(){},t="undefined",o=typeof window!==t&&typeof window.navigator!==t&&/Trident\/|MSIE /.test(window.navigator.userAgent),n=["trace","debug","info","warn","error"];function l(e,t){var o=e[t];if("function"==typeof o.bind)return o.bind(e);try{return Function.prototype.bind.call(o,e)}catch(t){return function(){return Function.prototype.apply.apply(o,[e,arguments])}}}function s(){console.log&&(console.log.apply?console.log.apply(console,arguments):Function.prototype.apply.apply(console.log,[console,arguments])),console.trace&&console.trace()}function r(n){return"debug"===n&&(n="log"),typeof console!==t&&("trace"===n&&o?s:void 0!==console[n]?l(console,n):void 0!==console.log?l(console,"log"):e)}function i(t,o){for(var l=0;l<n.length;l++){var s=n[l];this[s]=l<t?e:this.methodFactory(s,t,o)}this.log=this.debug}function a(e,o,n){return function(){typeof console!==t&&(i.call(this,o,n),this[e].apply(this,arguments))}}function c(e,t,o){return r(e)||a.apply(this,arguments)}function f(e,o,l){var s,r=this;o=null==o?"WARN":o;var a="loglevel";function f(e){var o=(n[e]||"silent").toUpperCase();if(typeof window!==t&&a){try{return void(window.localStorage[a]=o)}catch(e){}try{window.document.cookie=encodeURIComponent(a)+"="+o+";"}catch(e){}}}function y(){var e;if(typeof window!==t&&a){try{e=window.localStorage[a]}catch(e){}if(typeof e===t)try{var o=window.document.cookie,n=o.indexOf(encodeURIComponent(a)+"=");-1!==n&&(e=/^([^;]+)/.exec(o.slice(n))[1])}catch(e){}return void 0===r.levels[e]&&(e=void 0),e}}"string"==typeof e?a+=":"+e:"symbol"==typeof e&&(a=void 0),r.name=e,r.levels={TRACE:0,DEBUG:1,INFO:2,WARN:3,ERROR:4,SILENT:5},r.methodFactory=l||c,r.getLevel=function(){return s},r.setLevel=function(o,n){if("string"==typeof o&&void 0!==r.levels[o.toUpperCase()]&&(o=r.levels[o.toUpperCase()]),!("number"==typeof o&&o>=0&&o<=r.levels.SILENT))throw"log.setLevel() called with invalid level: "+o;if(s=o,!1!==n&&f(o),i.call(r,o,e),typeof console===t&&o<r.levels.SILENT)return"No console available for logging"},r.setDefaultLevel=function(e){o=e,y()||r.setLevel(e,!1)},r.resetLevel=function(){r.setLevel(o,!1),function(){if(typeof window!==t&&a){try{return void window.localStorage.removeItem(a)}catch(e){}try{window.document.cookie=encodeURIComponent(a)+"=; expires=Thu, 01 Jan 1970 00:00:00 UTC"}catch(e){}}}()},r.enableAll=function(e){r.setLevel(r.levels.TRACE,e)},r.disableAll=function(e){r.setLevel(r.levels.SILENT,e)};var h=y();null==h&&(h=o),r.setLevel(h,!1)}var y=new f,h={};y.getLogger=function(e){if("symbol"!=typeof e&&"string"!=typeof e||""===e)throw new TypeError("You must supply a name when creating a logger.");var t=h[e];return t||(t=h[e]=new f(e,y.getLevel(),y.methodFactory)),t};var u=typeof window!==t?window.log:void 0;return y.noConflict=function(){return typeof window!==t&&window.log===y&&(window.log=u),y},y.getLoggers=function(){return h},y.default=y,y}))}));const f="object"==typeof window?window:"object"==typeof global?global:"object"==typeof self?self:{};let i=!0,s=!1;const l=/^[a-z][a-z0-9]{1,}(-[a-z0-9]+)?$/,r=e=>"string"==typeof e&&l.test(e),c=e=>{if(!1===r(e))throw new Error(`[Theming] The theme identifier "${"string"==typeof e?e:""}" (Type: ${typeof e}) is not valid. Please use only follow this pattern: /^[a-z][a-z0-9]{1,}(-[a-z0-9]+)?$/`)},u=(e,t,n)=>{c(e),!0===i&&!1===s&&(s=!0,o.warn(`[Theming] The theme process is locked. This means that the theme "${e}" should not be patched.\n\nimport { register } from '@a11y-ui/core';\nimport { defineCustomElements } from '...';\nimport { THEME } from '...';\n\nregister(THEME, defineCustomElements)\n\t.then(() => {\n\t\tconst htmlDivElement: HTMLElement | null = document.querySelector<HTMLElement>('#my-app');\n if (htmlDivElement instanceof HTMLElement) {\n const root = createRoot(htmlDivElement);\n root.render(<App />);\n }\n })\n .catch(console.warn);`)),"object"==typeof f.A11yUi&&null!==f.A11yUi||(f.A11yUi={}),"object"!=typeof f.A11yUi||null===f.A11yUi||"object"==typeof f.A11yUi.Themes&&null!==f.A11yUi.Themes||(f.A11yUi.Themes={}),"object"!=typeof f.A11yUi||null===f.A11yUi||"object"!=typeof f.A11yUi.Themes||null===f.A11yUi.Themes||"object"==typeof f.A11yUi.Themes[e]&&null!==f.A11yUi.Themes[e]||(f.A11yUi.Themes[e]={}),"object"==typeof f.A11yUi&&null!==f.A11yUi&&"object"==typeof f.A11yUi.Themes&&null!==f.A11yUi.Themes&&"object"==typeof f.A11yUi.Themes[e]&&null!==f.A11yUi.Themes[e]&&(f.A11yUi.Themes[e][t]=n)},a=(e,t)=>{if(c(e),"object"==typeof t&&null!==t){Object.getOwnPropertyNames(t).forEach((o=>{const n=t[o];"string"==typeof n&&n.length>0&&u(e,o,n)}))}return e},y=e=>{if(e instanceof HTMLElement){if("string"==typeof e.dataset.theme)return e;{let t=e.parentNode;for(;t instanceof ShadowRoot;)t=t.host;return y(t)}}return null},p=(e={})=>"false"!==e.themeEncroachCss&&"true"!==e.themeReset&&{mode:"after"===e.themeEncroachCssMode||"before"===e.themeEncroachCssMode?e.themeEncroachCssMode:"before"},d=()=>"object"==typeof f.A11yUi&&null!==f.A11yUi&&"object"==typeof f.A11yUi.Theme&&null!==f.A11yUi.Theme&&"boolean"==typeof f.A11yUi.Theme.cache&&"object"==typeof f.A11yUi.Theme.encroachCss&&null!==typeof f.A11yUi.Theme.encroachCss&&"string"==typeof f.A11yUi.Theme.encroachCss.mode&&"string"==typeof f.A11yUi.Theme.name,h=()=>"object"==typeof f.A11yUi&&null!==f.A11yUi&&"object"==typeof f.A11yUi.Theme&&null!==f.A11yUi.Theme&&"default"!==f.A11yUi.Theme.name,w=e=>{if(d())return f.A11yUi.Theme;{const t={cache:!0,encroachCss:p(),loglevel:"silent",name:null},o=y(e);return o instanceof HTMLElement&&(t.cache="false"!==o.dataset.themeCache,t.encroachCss=p(o.dataset),t.loglevel="debug"===o.dataset.themeLoglevel?o.dataset.themeLoglevel:"silent",t.name=o.dataset.theme||null),t}},m=(e,t)=>({cache:!1!==t.cache,detect:"auto"===t.detect?"auto":"fixed",encroachCss:!1!==t.encroachCss&&("object"!=typeof t.encroachCss||null==t.encroachCss||"after"!==t.encroachCss.mode&&"before"!==t.encroachCss.mode?{mode:"before"}:t.encroachCss),loglevel:"debug"===t.loglevel?t.loglevel:"silent",name:"string"==typeof t.name?t.name:e}),b=(e,t)=>{!1===d()&&"default"!==e&&"object"==typeof f.A11yUi&&null!==f.A11yUi&&"object"==typeof f.A11yUi.Theme&&null!==f.A11yUi.Theme&&"default"!==f.A11yUi.Theme.name&&"object"==typeof t&&null!==t&&("fixed"===(t=m(e,t)).detect?(null===t.name&&"string"==typeof e&&(t.name=e),e===t.name&&("object"==typeof f.A11yUi&&null!==f.A11yUi||(f.A11yUi={}),f.A11yUi.Theme=t,o.info(`[Theming] Theme "${e}" was set as default theme.`))):o.warn("[Theming] The presetting of theme options is only relevant by using 'fixed' detection mode."))};let g=!1;const T=(e,t,n={})=>{!1===g&&(g=!0,i=!1),"function"==typeof e?e=new Set([e]):Array.isArray(e)&&(e=new Set(e)),e instanceof Set&&e.forEach((e=>{"function"==typeof e&&1===e.length?b(e(a),{cache:n.theme?.cache,detect:n.theme?.detect,encroachCss:n.theme?.encroachCss,name:n.theme?.name}):o.error("[Theming] Es wurde versucht eine nicht kompatibles Theme zu laden.")})),i=!0,"function"==typeof t?t=new Set([t]):Array.isArray(t)&&(t=new Set(t));const l=[];return t.forEach((e=>l.push(e()))),Promise.all(l)},v=new Map,E=[],j=new Set,S=new Map,A=/--[^;]+/g,L=/:/;"object"==typeof f.A11yUi&&null!==f.A11yUi||(f.A11yUi={CSS_STYLE_CACHE:S,HYDRATED_HISTORY:E,STYLING_TASK_QUEUE:v});const R=(e,t)=>{let o=t.match(A);if(Array.isArray(o)){o=o.filter((e=>L.test(e)));const t=document.createElement("style");t.innerHTML=`.${e} {${o.join(";")}}`,document.querySelector("head")?.appendChild(t)}j.add(e)},C=(e,t)=>"object"==typeof f.A11yUi&&null!==f.A11yUi&&"object"==typeof f.A11yUi.Themes&&null!==f.A11yUi.Themes&&"object"==typeof f.A11yUi.Themes[e]&&null!==f.A11yUi.Themes[e]&&"string"==typeof f.A11yUi.Themes[e][t]?f.A11yUi.Themes[e][t].replace(/\r?\n/g,""):"",D=e=>{for(const t of Array.from(e.childNodes)){if(!(t instanceof HTMLStyleElement&&"STYLE"===t.tagName))break;e.removeChild(t)}},M=(e,t)=>{try{const o=[];t.forEach((e=>{const t=new CSSStyleSheet;t.replaceSync(e),o.push(t)})),e.adoptedStyleSheets=o}catch(o){t.reverse().forEach((t=>{const o=document.createElement("style");o.innerHTML=t,e.insertBefore(o,e.firstChild)}))}},H=(e,t,o)=>{const n=t.cache,l=t.encroachCss,s=t.name||"default",r=e.shadowRoot;let i;if(S.get(s)?.has(e.tagName))i=S.get(s)?.get(e.tagName),I(e,r,i,o);else{const a=C(s,"PROPERTIES"),c=C(s,"GLOBAL"),f=C(s,e.tagName);if(!1===j.has(s)&&R(s,c),i=[a,c,f],!1!==l){const e=[...Array.from(r.childNodes).filter((e=>e instanceof HTMLStyleElement&&"STYLE"===e.tagName))],t=[...Array.from(r.adoptedStyleSheets)];"before"===l?.mode?(e.reverse().forEach((e=>i.unshift(e.innerHTML))),t.reverse().forEach((e=>i.unshift(Array.from(e.cssRules).map((e=>e.cssText)).join(""))))):"after"===l?.mode&&(e.forEach((e=>i.push(e.innerHTML))),t.forEach((e=>i.push(Array.from(e.cssRules).map((e=>e.cssText)).join("")))))}"debug"===t.loglevel&&console.log(e.tagName,i),!0===n&&(!1===S.has(s)&&S.set(s,new Map),S.get(s)?.set(e.tagName,i)),I(e,r,i,o)}},I=(e,t,o,n)=>{D(t),M(t,o),e.style.display=n},$=e=>{"debug"===e.loglevel&&E.push({timestamp:Date.now(),numberOfTasks:v.size})},O=(e,t)=>{v.set(e,{styleDisplay:`${e.style.display}`,themeDetails:t})},z=(e,t)=>{O(e,t),$(t)},U=e=>{v.delete(e)},Y=(e,t)=>{U(e),$(t)},x=e=>{const t=setTimeout((()=>{if(clearTimeout(t),v.has(e)&&e.classList.contains("hydrated")){const{styleDisplay:t,themeDetails:o}=v.get(e);H(e,o,t),Y(e,o)}else x(e)}),25)},N=e=>{for(const t of e)if(v.has(t.target)&&t.target.classList.contains("hydrated")){const{styleDisplay:e,themeDetails:o}=v.get(t.target);H(t.target,o,e),Y(t.target,o)}},F={attributes:!0,attributeFilter:["class"],childList:!1,subtree:!1};let _;try{new MutationObserver(N)}catch(e){_=null}const k=(e,t)=>{z(e,t),_?_.observe(e,F):x(e),e.style.display="none"};export{f as S,u as a,w as g,a as p,T as r,k as s};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["root","definition","module","exports","log","this","noop","undefinedType","isIE","window","navigator","test","userAgent","logMethods","bindMethod","obj","methodName","method","bind","Function","prototype","call","e","apply","arguments","traceForIE","console","trace","realMethod","undefined","replaceLoggingMethods","level","loggerName","i","length","methodFactory","debug","enableLoggingWhenConsoleArrives","defaultMethodFactory","Logger","name","defaultLevel","factory","self","currentLevel","storageKey","persistLevelIfPossible","levelNum","levelName","toUpperCase","localStorage","ignore","document","cookie","encodeURIComponent","getPersistedLevel","storedLevel","location","indexOf","exec","slice","levels","clearPersistedLevel","removeItem","TRACE","DEBUG","INFO","WARN","ERROR","SILENT","getLevel","setLevel","persist","setDefaultLevel","resetLevel","enableAll","disableAll","initialLevel","defaultLogger","_loggersByName","getLogger","TypeError","logger","_log","noConflict","getLoggers","STORE","global","lockThemePatching","warrentyWarning","THEME_NAME_PATTERN","isThemeNameValid","validateThemeName","Error","patchThemeTag","themeName","tagName","css","warn","A11yUi","Themes","patchTheme","map","tagNames","Object","getOwnPropertyNames","forEach","cssStyle","getThemeNode","element","HTMLElement","dataset","theme","parentNode","ShadowRoot","host","getEncroachCss","themeEncroachCss","themeReset","mode","themeEncroachCssMode","isTheCurrentThemeConfigValid","Theme","cache","encroachCss","isTheCurrentThemeNotDefault","getThemeDetails","details","loglevel","themeNode","themeCache","themeLoglevel","getThemeOptionDefaults","options","detect","setConfigureTheme","info","registered","register","themes","loaders","Set","Array","isArray","error","promises","loader","push","Promise","all","STYLING_TASK_QUEUE","Map","HYDRATED_HISTORY","CSS_PROPERTIES_REGISTERED","CSS_STYLE_CACHE","REGEX_CSS_PROPERTIES","REGEX_SPLIT_CSS_PROPERTY","extractProperties","properties","match","filter","property","style","createElement","innerHTML","join","querySelector","appendChild","add","getCssStyle","replace","removeStyle","shadow","childNode","from","childNodes","HTMLStyleElement","removeChild","patchStyle","styles","styleSheets","styleSheet","CSSStyleSheet","replaceSync","adoptedStyleSheets","reverse","styleElement","insertBefore","firstChild","setThemeStyleAfterHydrated","elm","themeDetails","styleDisplay","shadowRoot","STYLES","get","has","switchStyle","PROPERTY_STYLE","GLOBAL_STYLE","TAG_STYLE","defaultStyleNodes","node","defaultStyleSheets","unshift","cssRules","rule","cssText","set","display","logHydratedHistory","timestamp","Date","now","numberOfTasks","size","pushToDoTask","loggedPushToDoTask","deleteDoneTask","delete","loggedDeleteDoneTask","waitForHydrated","T","setTimeout","clearTimeout","classList","contains","observerCallback","mutationsList","mutation","target","observerOptions","attributes","attributeFilter","childList","subtree","observer","MutationObserver","setThemeStyle","observe"],"sources":["./node_modules/loglevel/lib/loglevel.js","./node_modules/@a11y-ui/core/dist/index.mjs"],"sourcesContent":["/*\n* loglevel - https://github.com/pimterry/loglevel\n*\n* Copyright (c) 2013 Tim Perry\n* Licensed under the MIT license.\n*/\n(function (root, definition) {\n \"use strict\";\n if (typeof define === 'function' && define.amd) {\n define(definition);\n } else if (typeof module === 'object' && module.exports) {\n module.exports = definition();\n } else {\n root.log = definition();\n }\n}(this, function () {\n \"use strict\";\n\n // Slightly dubious tricks to cut down minimized file size\n var noop = function() {};\n var undefinedType = \"undefined\";\n var isIE = (typeof window !== undefinedType) && (typeof window.navigator !== undefinedType) && (\n /Trident\\/|MSIE /.test(window.navigator.userAgent)\n );\n\n var logMethods = [\n \"trace\",\n \"debug\",\n \"info\",\n \"warn\",\n \"error\"\n ];\n\n // Cross-browser bind equivalent that works at least back to IE6\n function bindMethod(obj, methodName) {\n var method = obj[methodName];\n if (typeof method.bind === 'function') {\n return method.bind(obj);\n } else {\n try {\n return Function.prototype.bind.call(method, obj);\n } catch (e) {\n // Missing bind shim or IE8 + Modernizr, fallback to wrapping\n return function() {\n return Function.prototype.apply.apply(method, [obj, arguments]);\n };\n }\n }\n }\n\n // Trace() doesn't print the message in IE, so for that case we need to wrap it\n function traceForIE() {\n if (console.log) {\n if (console.log.apply) {\n console.log.apply(console, arguments);\n } else {\n // In old IE, native console methods themselves don't have apply().\n Function.prototype.apply.apply(console.log, [console, arguments]);\n }\n }\n if (console.trace) console.trace();\n }\n\n // Build the best logging method possible for this env\n // Wherever possible we want to bind, not wrap, to preserve stack traces\n function realMethod(methodName) {\n if (methodName === 'debug') {\n methodName = 'log';\n }\n\n if (typeof console === undefinedType) {\n return false; // No method possible, for now - fixed later by enableLoggingWhenConsoleArrives\n } else if (methodName === 'trace' && isIE) {\n return traceForIE;\n } else if (console[methodName] !== undefined) {\n return bindMethod(console, methodName);\n } else if (console.log !== undefined) {\n return bindMethod(console, 'log');\n } else {\n return noop;\n }\n }\n\n // These private functions always need `this` to be set properly\n\n function replaceLoggingMethods(level, loggerName) {\n /*jshint validthis:true */\n for (var i = 0; i < logMethods.length; i++) {\n var methodName = logMethods[i];\n this[methodName] = (i < level) ?\n noop :\n this.methodFactory(methodName, level, loggerName);\n }\n\n // Define log.log as an alias for log.debug\n this.log = this.debug;\n }\n\n // In old IE versions, the console isn't present until you first open it.\n // We build realMethod() replacements here that regenerate logging methods\n function enableLoggingWhenConsoleArrives(methodName, level, loggerName) {\n return function () {\n if (typeof console !== undefinedType) {\n replaceLoggingMethods.call(this, level, loggerName);\n this[methodName].apply(this, arguments);\n }\n };\n }\n\n // By default, we use closely bound real methods wherever possible, and\n // otherwise we wait for a console to appear, and then try again.\n function defaultMethodFactory(methodName, level, loggerName) {\n /*jshint validthis:true */\n return realMethod(methodName) ||\n enableLoggingWhenConsoleArrives.apply(this, arguments);\n }\n\n function Logger(name, defaultLevel, factory) {\n var self = this;\n var currentLevel;\n defaultLevel = defaultLevel == null ? \"WARN\" : defaultLevel;\n\n var storageKey = \"loglevel\";\n if (typeof name === \"string\") {\n storageKey += \":\" + name;\n } else if (typeof name === \"symbol\") {\n storageKey = undefined;\n }\n\n function persistLevelIfPossible(levelNum) {\n var levelName = (logMethods[levelNum] || 'silent').toUpperCase();\n\n if (typeof window === undefinedType || !storageKey) return;\n\n // Use localStorage if available\n try {\n window.localStorage[storageKey] = levelName;\n return;\n } catch (ignore) {}\n\n // Use session cookie as fallback\n try {\n window.document.cookie =\n encodeURIComponent(storageKey) + \"=\" + levelName + \";\";\n } catch (ignore) {}\n }\n\n function getPersistedLevel() {\n var storedLevel;\n\n if (typeof window === undefinedType || !storageKey) return;\n\n try {\n storedLevel = window.localStorage[storageKey];\n } catch (ignore) {}\n\n // Fallback to cookies if local storage gives us nothing\n if (typeof storedLevel === undefinedType) {\n try {\n var cookie = window.document.cookie;\n var location = cookie.indexOf(\n encodeURIComponent(storageKey) + \"=\");\n if (location !== -1) {\n storedLevel = /^([^;]+)/.exec(cookie.slice(location))[1];\n }\n } catch (ignore) {}\n }\n\n // If the stored level is not valid, treat it as if nothing was stored.\n if (self.levels[storedLevel] === undefined) {\n storedLevel = undefined;\n }\n\n return storedLevel;\n }\n\n function clearPersistedLevel() {\n if (typeof window === undefinedType || !storageKey) return;\n\n // Use localStorage if available\n try {\n window.localStorage.removeItem(storageKey);\n return;\n } catch (ignore) {}\n\n // Use session cookie as fallback\n try {\n window.document.cookie =\n encodeURIComponent(storageKey) + \"=; expires=Thu, 01 Jan 1970 00:00:00 UTC\";\n } catch (ignore) {}\n }\n\n /*\n *\n * Public logger API - see https://github.com/pimterry/loglevel for details\n *\n */\n\n self.name = name;\n\n self.levels = { \"TRACE\": 0, \"DEBUG\": 1, \"INFO\": 2, \"WARN\": 3,\n \"ERROR\": 4, \"SILENT\": 5};\n\n self.methodFactory = factory || defaultMethodFactory;\n\n self.getLevel = function () {\n return currentLevel;\n };\n\n self.setLevel = function (level, persist) {\n if (typeof level === \"string\" && self.levels[level.toUpperCase()] !== undefined) {\n level = self.levels[level.toUpperCase()];\n }\n if (typeof level === \"number\" && level >= 0 && level <= self.levels.SILENT) {\n currentLevel = level;\n if (persist !== false) { // defaults to true\n persistLevelIfPossible(level);\n }\n replaceLoggingMethods.call(self, level, name);\n if (typeof console === undefinedType && level < self.levels.SILENT) {\n return \"No console available for logging\";\n }\n } else {\n throw \"log.setLevel() called with invalid level: \" + level;\n }\n };\n\n self.setDefaultLevel = function (level) {\n defaultLevel = level;\n if (!getPersistedLevel()) {\n self.setLevel(level, false);\n }\n };\n\n self.resetLevel = function () {\n self.setLevel(defaultLevel, false);\n clearPersistedLevel();\n };\n\n self.enableAll = function(persist) {\n self.setLevel(self.levels.TRACE, persist);\n };\n\n self.disableAll = function(persist) {\n self.setLevel(self.levels.SILENT, persist);\n };\n\n // Initialize with the right level\n var initialLevel = getPersistedLevel();\n if (initialLevel == null) {\n initialLevel = defaultLevel;\n }\n self.setLevel(initialLevel, false);\n }\n\n /*\n *\n * Top-level API\n *\n */\n\n var defaultLogger = new Logger();\n\n var _loggersByName = {};\n defaultLogger.getLogger = function getLogger(name) {\n if ((typeof name !== \"symbol\" && typeof name !== \"string\") || name === \"\") {\n throw new TypeError(\"You must supply a name when creating a logger.\");\n }\n\n var logger = _loggersByName[name];\n if (!logger) {\n logger = _loggersByName[name] = new Logger(\n name, defaultLogger.getLevel(), defaultLogger.methodFactory);\n }\n return logger;\n };\n\n // Grab the current global log variable in case of overwrite\n var _log = (typeof window !== undefinedType) ? window.log : undefined;\n defaultLogger.noConflict = function() {\n if (typeof window !== undefinedType &&\n window.log === defaultLogger) {\n window.log = _log;\n }\n\n return defaultLogger;\n };\n\n defaultLogger.getLoggers = function getLoggers() {\n return _loggersByName;\n };\n\n // ES6 default export, for compatibility\n defaultLogger['default'] = defaultLogger;\n\n return defaultLogger;\n}));\n","import log from 'loglevel';\n\nconst createTranslation = (name, map) => {\n return (patch) => patch(name, map);\n};\n\nconst createTheme = (name, map) => {\n return (patch) => patch(name, map);\n};\n\nconst STORE = typeof window === \"object\" ? window : typeof global === \"object\" ? global : typeof self === \"object\" ? self : {};\n\nlet lockThemePatching = true;\nlet warrentyWarning = false;\nconst THEME_NAME_PATTERN = /^[a-z][a-z0-9]{1,}(-[a-z0-9]+)?$/;\nconst isThemeNameValid = (name) => {\n return typeof name === \"string\" && THEME_NAME_PATTERN.test(name);\n};\nconst validateThemeName = (name) => {\n if (isThemeNameValid(name) === false) {\n throw new Error(\n `[Theming] The theme identifier \"${typeof name === \"string\" ? name : \"\"}\" (Type: ${typeof name}) is not valid. Please use only follow this pattern: /^[a-z][a-z0-9]{1,}(-[a-z0-9]+)?$/`\n );\n }\n};\nconst patchThemeTag = (themeName, tagName, css) => {\n validateThemeName(themeName);\n if (lockThemePatching === true && warrentyWarning === false) {\n warrentyWarning = true;\n log.warn(\n `[Theming] The theme process is locked. This means that the theme \"${themeName}\" should not be patched.\n\nimport { register } from '@a11y-ui/core';\nimport { defineCustomElements } from '...';\nimport { THEME } from '...';\n\nregister(THEME, defineCustomElements)\n\t.then(() => {\n\t\tconst htmlDivElement: HTMLElement | null = document.querySelector<HTMLElement>('#my-app');\n if (htmlDivElement instanceof HTMLElement) {\n const root = createRoot(htmlDivElement);\n root.render(<App />);\n }\n })\n .catch(console.warn);`\n );\n }\n if (typeof STORE.A11yUi !== \"object\" || STORE.A11yUi === null) {\n STORE.A11yUi = {};\n }\n if (typeof STORE.A11yUi === \"object\" && STORE.A11yUi !== null && (typeof STORE.A11yUi.Themes !== \"object\" || STORE.A11yUi.Themes === null)) {\n STORE.A11yUi.Themes = {};\n }\n if (typeof STORE.A11yUi === \"object\" && STORE.A11yUi !== null && typeof STORE.A11yUi.Themes === \"object\" && STORE.A11yUi.Themes !== null && (typeof STORE.A11yUi.Themes[themeName] !== \"object\" || STORE.A11yUi.Themes[themeName] === null)) {\n STORE.A11yUi.Themes[themeName] = {};\n }\n if (typeof STORE.A11yUi === \"object\" && STORE.A11yUi !== null && typeof STORE.A11yUi.Themes === \"object\" && STORE.A11yUi.Themes !== null && typeof STORE.A11yUi.Themes[themeName] === \"object\" && STORE.A11yUi.Themes[themeName] !== null) {\n STORE.A11yUi.Themes[themeName][tagName] = css;\n }\n};\nconst patchTheme = (name, map) => {\n validateThemeName(name);\n if (typeof map === \"object\" && map !== null) {\n const tagNames = Object.getOwnPropertyNames(map);\n tagNames.forEach((tagName) => {\n const cssStyle = map[tagName];\n if (typeof cssStyle === \"string\" && cssStyle.length > 0) {\n patchThemeTag(name, tagName, cssStyle);\n }\n });\n }\n return name;\n};\nconst getThemeNode = (element) => {\n if (element instanceof HTMLElement) {\n if (typeof element.dataset.theme === \"string\") {\n return element;\n } else {\n let parentNode = element.parentNode;\n while (parentNode instanceof ShadowRoot) {\n parentNode = parentNode.host;\n }\n return getThemeNode(parentNode);\n }\n } else {\n return null;\n }\n};\nconst getEncroachCss = (dataset = {}) => {\n if (dataset.themeEncroachCss === \"false\" || dataset.themeReset === \"true\") {\n return false;\n } else {\n return {\n mode: dataset.themeEncroachCssMode === \"after\" || dataset.themeEncroachCssMode === \"before\" ? dataset.themeEncroachCssMode : \"before\"\n };\n }\n};\nconst isTheCurrentThemeConfigValid = () => typeof STORE.A11yUi === \"object\" && STORE.A11yUi !== null && typeof STORE.A11yUi.Theme === \"object\" && STORE.A11yUi.Theme !== null && typeof STORE.A11yUi.Theme.cache === \"boolean\" && typeof STORE.A11yUi.Theme.encroachCss === \"object\" && typeof STORE.A11yUi.Theme.encroachCss !== null && typeof STORE.A11yUi.Theme.encroachCss.mode === \"string\" && typeof STORE.A11yUi.Theme.name === \"string\";\nconst isTheCurrentThemeNotDefault = () => typeof STORE.A11yUi === \"object\" && STORE.A11yUi !== null && typeof STORE.A11yUi.Theme === \"object\" && STORE.A11yUi.Theme !== null && STORE.A11yUi.Theme.name !== \"default\";\nconst getThemeDetails = (element) => {\n if (isTheCurrentThemeConfigValid()) {\n return STORE.A11yUi.Theme;\n } else {\n const details = {\n cache: true,\n encroachCss: getEncroachCss(),\n loglevel: \"silent\",\n name: null\n };\n const themeNode = getThemeNode(element);\n if (themeNode instanceof HTMLElement) {\n details.cache = themeNode.dataset.themeCache !== \"false\";\n details.encroachCss = getEncroachCss(themeNode.dataset);\n details.loglevel = themeNode.dataset.themeLoglevel === \"debug\" ? themeNode.dataset.themeLoglevel : \"silent\";\n details.name = themeNode.dataset.theme || null;\n }\n return details;\n }\n};\nconst getTheme = (element) => {\n return getThemeDetails(element).name;\n};\nconst getThemeOptionDefaults = (themeName, options) => {\n return {\n cache: options.cache !== false,\n // default: true\n detect: options.detect === \"auto\" ? \"auto\" : \"fixed\",\n // default: 'fixed'\n encroachCss: options.encroachCss === false ? false : typeof options.encroachCss === \"object\" && options.encroachCss != null && (options.encroachCss.mode === \"after\" || options.encroachCss.mode === \"before\") ? options.encroachCss : {\n mode: \"before\"\n // default: 'before'\n },\n loglevel: options.loglevel === \"debug\" ? options.loglevel : \"silent\",\n // default: 'silent'\n name: typeof options.name === \"string\" ? options.name : themeName\n // default: themeName\n };\n};\nconst setConfigureTheme = (themeName, options) => {\n if (isTheCurrentThemeConfigValid() === false && themeName !== \"default\" && isTheCurrentThemeNotDefault()) {\n if (\n // Die Options müssen ein Objekt sein.\n typeof options === \"object\" && options !== null\n ) {\n options = getThemeOptionDefaults(themeName, options);\n if (\n /**\n * The presetting of theme options is only relevant by using 'fixed'\n * detection mode.\n */\n options.detect === \"fixed\"\n ) {\n if (options.name === null && typeof themeName === \"string\") {\n options.name = themeName;\n }\n if (\n /**\n * Wenn mehrere Themes geladen werden, dann wird nur der Theme-Name gesetzt,\n * der mit dem Name eines Themes übereinstimmt.\n */\n themeName === options.name\n ) {\n if (typeof STORE.A11yUi !== \"object\" || STORE.A11yUi === null) {\n STORE.A11yUi = {};\n }\n STORE.A11yUi.Theme = options;\n log.info(`[Theming] Theme \"${themeName}\" was set as default theme.`);\n }\n } else {\n log.warn(`[Theming] The presetting of theme options is only relevant by using 'fixed' detection mode.`);\n }\n }\n }\n};\nlet registered = false;\nconst register = (themes, loaders, options = {}) => {\n if (registered === false) {\n registered = true;\n lockThemePatching = false;\n }\n if (typeof themes === \"function\") {\n themes = /* @__PURE__ */ new Set([themes]);\n } else if (Array.isArray(themes)) {\n themes = new Set(themes);\n }\n if (themes instanceof Set) {\n themes.forEach((theme) => {\n if (typeof theme === \"function\" && theme.length === 1) {\n setConfigureTheme(theme(patchTheme), {\n cache: options.theme?.cache,\n detect: options.theme?.detect,\n encroachCss: options.theme?.encroachCss,\n name: options.theme?.name\n });\n } else {\n log.error(`[Theming] Es wurde versucht eine nicht kompatibles Theme zu laden.`);\n }\n });\n }\n lockThemePatching = true;\n if (typeof loaders === \"function\") {\n loaders = /* @__PURE__ */ new Set([loaders]);\n } else if (Array.isArray(loaders)) {\n loaders = new Set(loaders);\n }\n const promises = [];\n loaders.forEach((loader) => promises.push(loader()));\n return Promise.all(promises);\n};\n\nconst _RobustStore = class {\n constructor(object, identifier) {\n this.store = this.createStore(object, identifier);\n }\n static getInstance(identifier, object) {\n let instance = _RobustStore.instances.get(identifier);\n if (instance === void 0) {\n instance = new _RobustStore(object, identifier);\n _RobustStore.instances.set(identifier, instance);\n }\n return instance;\n }\n createStore(object, identifier) {\n Object.defineProperty(object, identifier, {\n enumerable: false,\n value: {},\n writable: false\n });\n return object[identifier];\n }\n recursiveSetItem(store, key, value, options = _RobustStore.options) {\n let storeValue = typeof value === \"object\" && value !== null ? {} : value;\n Object.defineProperty(store, key, {\n enumerable: options.enumerable === true,\n get: () => storeValue,\n /**\n * Die set Methode muss eigentlich ein this.recursiveSetItem aufrufen.\n */\n set: options.immutable === true ? void 0 : (value2) => storeValue = value2\n });\n if (typeof value === \"object\" && value !== null) {\n for (const [k, v] of Object.entries(value)) {\n this.recursiveSetItem(store[key], k, v, options);\n }\n }\n }\n setItem(key, value, options = _RobustStore.options) {\n this.recursiveSetItem(this.store, key, value, options);\n return this;\n }\n getItem(key) {\n if (Array.isArray(key)) {\n return key.map((k) => this.getItem(k));\n }\n return this.store[key];\n }\n};\nlet RobustStore = _RobustStore;\nRobustStore.options = {\n enumerable: false,\n immutable: false\n};\nRobustStore.instances = /* @__PURE__ */ new Map();\n\nconst STYLING_TASK_QUEUE = /* @__PURE__ */ new Map();\nconst HYDRATED_HISTORY = [];\nconst CSS_PROPERTIES_REGISTERED = /* @__PURE__ */ new Set();\nconst CSS_STYLE_CACHE = /* @__PURE__ */ new Map();\nconst REGEX_CSS_PROPERTIES = /--[^;]+/g;\nconst REGEX_SPLIT_CSS_PROPERTY = /:/;\nif (typeof STORE.A11yUi !== \"object\" || STORE.A11yUi === null) {\n STORE.A11yUi = {\n CSS_STYLE_CACHE,\n HYDRATED_HISTORY,\n STYLING_TASK_QUEUE\n };\n}\nconst extractProperties = (themeName, css) => {\n let properties = css.match(REGEX_CSS_PROPERTIES);\n if (Array.isArray(properties)) {\n properties = properties.filter((property) => REGEX_SPLIT_CSS_PROPERTY.test(property));\n const style = document.createElement(\"style\");\n style.innerHTML = `.${themeName} {${properties.join(\";\")}}`;\n document.querySelector(\"head\")?.appendChild(style);\n }\n CSS_PROPERTIES_REGISTERED.add(themeName);\n};\nconst getCssStyle = (themeName, tagName) => {\n if (\n /**\n * Search custom StyleSheet in Config\n * TODO: Performance???\n */\n typeof STORE.A11yUi === \"object\" && STORE.A11yUi !== null && typeof STORE.A11yUi.Themes === \"object\" && STORE.A11yUi.Themes !== null && typeof STORE.A11yUi.Themes[themeName] === \"object\" && STORE.A11yUi.Themes[themeName] !== null && typeof STORE.A11yUi.Themes[themeName][tagName] === \"string\"\n ) {\n return STORE.A11yUi.Themes[themeName][tagName].replace(\n /\\r?\\n/g,\n \"\"\n );\n } else {\n return \"\";\n }\n};\nconst removeStyle = (shadow) => {\n for (const childNode of Array.from(shadow.childNodes)) {\n if (childNode instanceof HTMLStyleElement && childNode.tagName === \"STYLE\") {\n shadow.removeChild(childNode);\n } else {\n break;\n }\n }\n};\nconst patchStyle = (shadow, styles) => {\n try {\n const styleSheets = [];\n styles.forEach((style) => {\n const styleSheet = new CSSStyleSheet();\n styleSheet.replaceSync(style);\n styleSheets.push(styleSheet);\n });\n shadow.adoptedStyleSheets = styleSheets;\n } catch (e) {\n styles.reverse().forEach((style) => {\n const styleElement = document.createElement(\"style\");\n styleElement.innerHTML = style;\n shadow.insertBefore(styleElement, shadow.firstChild);\n });\n }\n};\nconst setThemeStyleAfterHydrated = (elm, themeDetails, styleDisplay) => {\n const themeCache = themeDetails.cache;\n const themeEncroachCss = themeDetails.encroachCss;\n const themeName = themeDetails.name || \"default\";\n const shadow = elm.shadowRoot;\n let STYLES;\n if (CSS_STYLE_CACHE.get(themeName)?.has(elm.tagName)) {\n STYLES = CSS_STYLE_CACHE.get(themeName)?.get(elm.tagName);\n switchStyle(elm, shadow, STYLES, styleDisplay);\n } else {\n const PROPERTY_STYLE = getCssStyle(themeName, \"PROPERTIES\");\n const GLOBAL_STYLE = getCssStyle(themeName, \"GLOBAL\");\n const TAG_STYLE = getCssStyle(themeName, elm.tagName);\n if (CSS_PROPERTIES_REGISTERED.has(themeName) === false) {\n extractProperties(themeName, GLOBAL_STYLE);\n }\n STYLES = [PROPERTY_STYLE, GLOBAL_STYLE, TAG_STYLE];\n if (themeEncroachCss !== false) {\n const defaultStyleNodes = [\n ...Array.from(shadow.childNodes).filter((node) => node instanceof HTMLStyleElement && node.tagName === \"STYLE\")\n ];\n const defaultStyleSheets = [...Array.from(shadow.adoptedStyleSheets)];\n if (themeEncroachCss?.mode === \"before\") {\n defaultStyleNodes.reverse().forEach((style) => STYLES.unshift(style.innerHTML));\n defaultStyleSheets.reverse().forEach(\n (style) => STYLES.unshift(\n Array.from(style.cssRules).map((rule) => rule.cssText).join(\"\")\n )\n );\n } else if (themeEncroachCss?.mode === \"after\") {\n defaultStyleNodes.forEach((style) => STYLES.push(style.innerHTML));\n defaultStyleSheets.forEach(\n (style) => STYLES.push(\n Array.from(style.cssRules).map((rule) => rule.cssText).join(\"\")\n )\n );\n }\n }\n if (themeDetails.loglevel === \"debug\") {\n console.log(elm.tagName, STYLES);\n }\n if (themeCache === true) {\n if (CSS_STYLE_CACHE.has(themeName) === false) {\n CSS_STYLE_CACHE.set(themeName, /* @__PURE__ */ new Map());\n }\n CSS_STYLE_CACHE.get(themeName)?.set(elm.tagName, STYLES);\n }\n switchStyle(elm, shadow, STYLES, styleDisplay);\n }\n};\nconst switchStyle = (elm, shadow, styles, styleDisplay) => {\n removeStyle(shadow);\n patchStyle(shadow, styles);\n elm.style.display = styleDisplay;\n};\nconst logHydratedHistory = (themeDetails) => {\n if (themeDetails.loglevel === \"debug\") {\n HYDRATED_HISTORY.push({\n timestamp: Date.now(),\n numberOfTasks: STYLING_TASK_QUEUE.size\n });\n }\n};\nconst pushToDoTask = (elm, themeDetails) => {\n STYLING_TASK_QUEUE.set(elm, {\n /**\n * Das Element soll solange nicht sichtbar bleiben\n * bis der Style im DOM gesetzt ist.\n */\n styleDisplay: `${elm.style.display}`,\n themeDetails\n });\n};\nconst loggedPushToDoTask = (elm, themeDetails) => {\n pushToDoTask(elm, themeDetails);\n logHydratedHistory(themeDetails);\n};\nconst deleteDoneTask = (elm) => {\n STYLING_TASK_QUEUE.delete(elm);\n};\nconst loggedDeleteDoneTask = (elm, themeDetails) => {\n deleteDoneTask(elm);\n logHydratedHistory(themeDetails);\n};\nconst waitForHydrated = (elm) => {\n const T = setTimeout(() => {\n clearTimeout(T);\n if (STYLING_TASK_QUEUE.has(elm) && elm.classList.contains(\"hydrated\")) {\n const { styleDisplay, themeDetails } = STYLING_TASK_QUEUE.get(elm);\n setThemeStyleAfterHydrated(elm, themeDetails, styleDisplay);\n loggedDeleteDoneTask(elm, themeDetails);\n } else {\n waitForHydrated(elm);\n }\n }, 25);\n};\nconst observerCallback = (mutationsList) => {\n for (const mutation of mutationsList) {\n if (\n /**\n * Save by observer config\n */\n // mutation.type === 'attributes' &&\n // mutation.attributeName === 'class' &&\n /**\n * Implizit check for HTMLElement\n */\n // mutation.target &&\n STYLING_TASK_QUEUE.has(mutation.target) && mutation.target.classList.contains(\"hydrated\")\n ) {\n const { styleDisplay, themeDetails } = STYLING_TASK_QUEUE.get(mutation.target);\n setThemeStyleAfterHydrated(mutation.target, themeDetails, styleDisplay);\n loggedDeleteDoneTask(mutation.target, themeDetails);\n }\n }\n};\nconst observerOptions = {\n attributes: true,\n attributeFilter: [\"class\"],\n childList: false,\n subtree: false\n};\nlet observer;\ntry {\n new MutationObserver(observerCallback);\n} catch (e) {\n observer = null;\n}\nconst setThemeStyle = (elm, themeDetails) => {\n loggedPushToDoTask(elm, themeDetails);\n if (observer) {\n observer.observe(elm, observerOptions);\n } else {\n waitForHydrated(elm);\n }\n elm.style.display = \"none\";\n};\n\nclass Theme {\n constructor(prefix, keyEnum, tagEnum) {\n this.createTheme = (name, map) => createTheme(name, map);\n this.createTranslation = (name, map) => createTranslation(name, map);\n this.Prefix = prefix;\n this.Key = Object.getOwnPropertyNames(keyEnum);\n this.Tag = Object.getOwnPropertyNames(tagEnum);\n }\n}\n\nexport { RobustStore, STORE, Theme, getTheme, getThemeDetails, patchTheme, patchThemeTag, register, setThemeStyle };\n"],"mappings":"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"}
|