@public-ui/components 2.0.0-rc.0 → 2.0.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/custom-elements.json +34 -27
- package/dist/cjs/{a11y.tipps-417b66df.js → a11y.tipps-286e2184.js} +1 -1
- package/dist/cjs/{a11y.tipps-417b66df.js.map → a11y.tipps-286e2184.js.map} +1 -1
- package/dist/cjs/{align-c8de133d.js → align-38fe7d4a.js} +1 -1
- package/dist/cjs/{align-c8de133d.js.map → align-38fe7d4a.js.map} +1 -1
- package/dist/cjs/{alignment-932ba637.js → alignment-05ab4f60.js} +1 -1
- package/dist/cjs/{alignment-932ba637.js.map → alignment-05ab4f60.js.map} +1 -1
- package/dist/cjs/alternative-button-link-role-e29e79ed.js +4 -0
- package/dist/cjs/{alternative-button-link-role-76fc0537.js.map → alternative-button-link-role-e29e79ed.js.map} +1 -1
- package/dist/cjs/{app-globals-d1b411c4.js → app-globals-70ba97cd.js} +1 -1
- package/dist/cjs/{app-globals-d1b411c4.js.map → app-globals-70ba97cd.js.map} +1 -1
- package/dist/cjs/{associated.controller-0729954e.js → associated.controller-1273e17d.js} +1 -1
- package/dist/cjs/{associated.controller-0729954e.js.map → associated.controller-1273e17d.js.map} +1 -1
- package/dist/cjs/{color-71d1c910.js → color-885864c9.js} +1 -1
- package/dist/cjs/{color-71d1c910.js.map → color-885864c9.js.map} +1 -1
- package/dist/cjs/{controller-93e44df5.js → controller-6607a35d.js} +1 -1
- package/dist/cjs/{controller-93e44df5.js.map → controller-6607a35d.js.map} +1 -1
- package/dist/cjs/{controller-f4272866.js → controller-7156433c.js} +1 -1
- package/dist/cjs/{controller-f4272866.js.map → controller-7156433c.js.map} +1 -1
- package/dist/cjs/{controller-2fb82656.js → controller-95e49b07.js} +1 -1
- package/dist/cjs/{controller-2fb82656.js.map → controller-95e49b07.js.map} +1 -1
- package/dist/cjs/{controller-da2eaa2f.js → controller-f472b120.js} +1 -1
- package/dist/cjs/{controller-da2eaa2f.js.map → controller-f472b120.js.map} +1 -1
- package/dist/cjs/{controller-f05f47fe.js → controller-ff3d2189.js} +1 -1
- package/dist/cjs/{controller-f05f47fe.js.map → controller-ff3d2189.js.map} +1 -1
- package/dist/cjs/{controller-icon-3ace6f32.js → controller-icon-1add536b.js} +1 -1
- package/dist/cjs/{controller-icon-3ace6f32.js.map → controller-icon-1add536b.js.map} +1 -1
- package/dist/cjs/{custom-class-8ad48dce.js → custom-class-d0dc1465.js} +1 -1
- package/dist/cjs/{custom-class-8ad48dce.js.map → custom-class-d0dc1465.js.map} +1 -1
- package/dist/cjs/{dev.utils-1fb4135a.js → dev.utils-6caf7368.js} +1 -1
- package/dist/cjs/{dev.utils-1fb4135a.js.map → dev.utils-6caf7368.js.map} +1 -1
- package/dist/cjs/{devtools-8a3aba37.js → devtools-dd717900.js} +1 -1
- package/dist/cjs/{devtools-8a3aba37.js.map → devtools-dd717900.js.map} +1 -1
- package/dist/cjs/has-closer-309ad54b.js +4 -0
- package/dist/cjs/{has-closer-3f258cb1.js.map → has-closer-309ad54b.js.map} +1 -1
- package/dist/cjs/hide-label-37731a74.js +4 -0
- package/dist/cjs/{hide-label-a1359f24.js.map → hide-label-37731a74.js.map} +1 -1
- package/dist/cjs/i18n-d033fd25.js +4 -0
- package/dist/cjs/i18n-d033fd25.js.map +1 -0
- package/dist/cjs/{icons-ef0868ed.js → icons-8afa4b8a.js} +1 -1
- package/dist/cjs/{icons-ef0868ed.js.map → icons-8afa4b8a.js.map} +1 -1
- package/dist/cjs/image-source-299d8eab.js +4 -0
- package/dist/cjs/{image-source-30ac0359.js.map → image-source-299d8eab.js.map} +1 -1
- package/dist/cjs/index-8f2f5b90.js +4 -0
- package/dist/cjs/index-8f2f5b90.js.map +1 -0
- package/dist/cjs/index-e9e81c6a.js +5 -0
- package/dist/cjs/index-e9e81c6a.js.map +1 -0
- package/dist/cjs/index.cjs.js +1 -1
- package/dist/cjs/kol-abbr.cjs.entry.js +1 -1
- package/dist/cjs/kol-accordion.cjs.entry.js +1 -1
- package/dist/cjs/kol-alert-wc_3.cjs.entry.js +1 -1
- package/dist/cjs/kol-alert.cjs.entry.js +1 -1
- package/dist/cjs/kol-avatar-wc.cjs.entry.js +1 -1
- package/dist/cjs/kol-avatar.cjs.entry.js +1 -1
- package/dist/cjs/kol-badge.cjs.entry.js +1 -1
- package/dist/cjs/kol-breadcrumb.cjs.entry.js +1 -1
- package/dist/cjs/kol-button-group-wc.cjs.entry.js +1 -1
- package/dist/cjs/kol-button-group.cjs.entry.js +1 -1
- package/dist/cjs/kol-button-link-text-switch.cjs.entry.js +1 -1
- package/dist/cjs/kol-button-link-text-switch.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-button-link.cjs.entry.js +1 -1
- package/dist/cjs/kol-button.cjs.entry.js +1 -1
- package/dist/cjs/kol-card.cjs.entry.js +1 -1
- package/dist/cjs/kol-details.cjs.entry.js +1 -1
- package/dist/cjs/kol-details.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-form.cjs.entry.js +1 -1
- package/dist/cjs/kol-heading.cjs.entry.js +1 -1
- package/dist/cjs/kol-icon.cjs.entry.js +1 -1
- package/dist/cjs/kol-image.cjs.entry.js +1 -1
- package/dist/cjs/kol-indented-text.cjs.entry.js +1 -1
- package/dist/cjs/kol-input-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.cjs.entry.js +1 -1
- package/dist/cjs/kol-input-radio.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-input-range.cjs.entry.js +1 -1
- package/dist/cjs/kol-input-range.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-input-text.cjs.entry.js +1 -1
- package/dist/cjs/kol-input-text.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-input.cjs.entry.js +1 -1
- package/dist/cjs/kol-kolibri.cjs.entry.js +1 -1
- package/dist/cjs/kol-link-button.cjs.entry.js +1 -1
- package/dist/cjs/kol-link-group.cjs.entry.js +1 -1
- package/dist/cjs/kol-link-wc.cjs.entry.js +1 -1
- package/dist/cjs/kol-link-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-modal.cjs.entry.js +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-popover.cjs.entry.js +1 -1
- package/dist/cjs/kol-progress.cjs.entry.js +1 -1
- package/dist/cjs/kol-quote.cjs.entry.js +1 -1
- package/dist/cjs/kol-select.cjs.entry.js +1 -1
- package/dist/cjs/kol-select.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-skip-nav.cjs.entry.js +1 -1
- package/dist/cjs/kol-span-wc_2.cjs.entry.js +1 -1
- package/dist/cjs/kol-span.cjs.entry.js +1 -1
- package/dist/cjs/kol-spin.cjs.entry.js +1 -1
- package/dist/cjs/kol-split-button.cjs.entry.js +1 -1
- package/dist/cjs/kol-symbol.cjs.entry.js +1 -1
- package/dist/cjs/kol-table.cjs.entry.js +1 -1
- package/dist/cjs/kol-tabs.cjs.entry.js +1 -1
- package/dist/cjs/kol-textarea.cjs.entry.js +1 -1
- package/dist/cjs/kol-textarea.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-toast-container.cjs.entry.js +1 -1
- package/dist/cjs/kol-toast.cjs.entry.js +1 -1
- package/dist/cjs/kol-version.cjs.entry.js +1 -1
- package/dist/cjs/kolibri.cjs.js +1 -1
- package/dist/cjs/kolibri.cjs.js.map +1 -1
- package/dist/cjs/{label-f59591d3.js → label-6a66b6c1.js} +1 -1
- package/dist/cjs/{label-f59591d3.js.map → label-6a66b6c1.js.map} +1 -1
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/cjs/open-c63a5e3f.js +4 -0
- package/dist/cjs/{open-1c4dcfb7.js.map → open-c63a5e3f.js.map} +1 -1
- package/dist/cjs/{prop.validators-40b03d45.js → prop.validators-074b54c5.js} +1 -1
- package/dist/cjs/{prop.validators-40b03d45.js.map → prop.validators-074b54c5.js.map} +1 -1
- package/dist/cjs/rows-1e373b35.js +4 -0
- package/dist/cjs/{rows-49957d39.js.map → rows-1e373b35.js.map} +1 -1
- package/dist/cjs/show-98976820.js +4 -0
- package/dist/cjs/{show-2a7af4da.js.map → show-98976820.js.map} +1 -1
- package/dist/cjs/{suggestions-ac1779ec.js → suggestions-6959d65d.js} +1 -1
- package/dist/cjs/{suggestions-ac1779ec.js.map → suggestions-6959d65d.js.map} +1 -1
- package/dist/cjs/{tab-index-62a72b67.js → tab-index-ad2bed16.js} +1 -1
- package/dist/cjs/{tab-index-62a72b67.js.map → tab-index-ad2bed16.js.map} +1 -1
- package/dist/cjs/{tooltip-align-f7332f5b.js → tooltip-align-4f53863a.js} +1 -1
- package/dist/cjs/{tooltip-align-f7332f5b.js.map → tooltip-align-4f53863a.js.map} +1 -1
- package/dist/cjs/{validation-c48f88d5.js → validation-90762185.js} +1 -1
- package/dist/cjs/{validation-c48f88d5.js.map → validation-90762185.js.map} +1 -1
- package/dist/cjs/{validation-d8756daa.js → validation-bd015251.js} +1 -1
- package/dist/cjs/{validation-d8756daa.js.map → validation-bd015251.js.map} +1 -1
- package/dist/components/color.js +1 -1
- package/dist/components/component11.js +1 -1
- package/dist/components/component11.js.map +1 -1
- package/dist/components/component15.js.map +1 -1
- package/dist/components/component2.js +1 -1
- package/dist/components/component9.js.map +1 -1
- package/dist/components/i18n.js +1 -1
- package/dist/components/i18n.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-input-checkbox.js.map +1 -1
- package/dist/components/kol-input-color.js.map +1 -1
- package/dist/components/kol-input-date.js.map +1 -1
- package/dist/components/kol-input-email.js.map +1 -1
- package/dist/components/kol-input-file.js.map +1 -1
- package/dist/components/kol-input-number.js.map +1 -1
- package/dist/components/kol-input-password.js.map +1 -1
- package/dist/components/kol-input-radio.js.map +1 -1
- package/dist/components/kol-input-range.js.map +1 -1
- package/dist/components/kol-input-text.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-textarea.js.map +1 -1
- package/dist/components/prop.validators.js +1 -1
- package/dist/components/prop.validators.js.map +1 -1
- package/dist/components/shadow2.js.map +1 -1
- package/dist/esm/{a11y.tipps-7143f6fd.js → a11y.tipps-348ca42a.js} +1 -1
- package/dist/esm/{a11y.tipps-7143f6fd.js.map → a11y.tipps-348ca42a.js.map} +1 -1
- package/dist/esm/{align-be0d4128.js → align-11b69892.js} +1 -1
- package/dist/esm/{align-be0d4128.js.map → align-11b69892.js.map} +1 -1
- package/dist/esm/{alignment-480cdfba.js → alignment-1bffdb6e.js} +1 -1
- package/dist/esm/{alignment-480cdfba.js.map → alignment-1bffdb6e.js.map} +1 -1
- package/dist/esm/alternative-button-link-role-1ace1f6f.js +4 -0
- package/dist/esm/{alternative-button-link-role-5e1ea5eb.js.map → alternative-button-link-role-1ace1f6f.js.map} +1 -1
- package/dist/esm/{app-globals-7a11b8ee.js → app-globals-d408fcae.js} +1 -1
- package/dist/esm/{app-globals-7a11b8ee.js.map → app-globals-d408fcae.js.map} +1 -1
- package/dist/esm/{associated.controller-d70c8be1.js → associated.controller-a395cef5.js} +1 -1
- package/dist/esm/{associated.controller-d70c8be1.js.map → associated.controller-a395cef5.js.map} +1 -1
- package/dist/esm/{color-048551d8.js → color-a3271610.js} +1 -1
- package/dist/esm/{color-048551d8.js.map → color-a3271610.js.map} +1 -1
- package/dist/esm/{controller-757cd887.js → controller-2743a0d8.js} +1 -1
- package/dist/esm/{controller-757cd887.js.map → controller-2743a0d8.js.map} +1 -1
- package/dist/esm/{controller-8bf7eac9.js → controller-417ec2ab.js} +1 -1
- package/dist/esm/{controller-8bf7eac9.js.map → controller-417ec2ab.js.map} +1 -1
- package/dist/esm/{controller-313148a2.js → controller-46e6bd0b.js} +1 -1
- package/dist/esm/{controller-313148a2.js.map → controller-46e6bd0b.js.map} +1 -1
- package/dist/esm/{controller-f1d4f4d4.js → controller-64f30149.js} +1 -1
- package/dist/esm/{controller-f1d4f4d4.js.map → controller-64f30149.js.map} +1 -1
- package/dist/esm/{controller-d5d0c61a.js → controller-a1e48719.js} +1 -1
- package/dist/esm/{controller-d5d0c61a.js.map → controller-a1e48719.js.map} +1 -1
- package/dist/esm/{controller-icon-d4a91832.js → controller-icon-c621ff81.js} +1 -1
- package/dist/esm/{controller-icon-d4a91832.js.map → controller-icon-c621ff81.js.map} +1 -1
- package/dist/esm/{custom-class-6b0cb37f.js → custom-class-87071d99.js} +1 -1
- package/dist/esm/{custom-class-6b0cb37f.js.map → custom-class-87071d99.js.map} +1 -1
- package/dist/esm/{dev.utils-b5b1c70d.js → dev.utils-9b878520.js} +1 -1
- package/dist/esm/{dev.utils-b5b1c70d.js.map → dev.utils-9b878520.js.map} +1 -1
- package/dist/esm/{devtools-188764ec.js → devtools-fa2d0662.js} +1 -1
- package/dist/esm/{devtools-188764ec.js.map → devtools-fa2d0662.js.map} +1 -1
- package/dist/esm/{has-closer-20ad2566.js → has-closer-f3547f42.js} +1 -1
- package/dist/esm/{has-closer-20ad2566.js.map → has-closer-f3547f42.js.map} +1 -1
- package/dist/esm/{hide-label-27292184.js → hide-label-ff12ad0b.js} +1 -1
- package/dist/esm/{hide-label-27292184.js.map → hide-label-ff12ad0b.js.map} +1 -1
- package/dist/esm/i18n-9c7e636f.js +4 -0
- package/dist/esm/i18n-9c7e636f.js.map +1 -0
- package/dist/esm/{icons-b6a6d907.js → icons-da3b61ae.js} +1 -1
- package/dist/esm/{icons-b6a6d907.js.map → icons-da3b61ae.js.map} +1 -1
- package/dist/esm/{image-source-fa985240.js → image-source-5494399d.js} +1 -1
- package/dist/esm/{image-source-fa985240.js.map → image-source-5494399d.js.map} +1 -1
- package/dist/{cjs/index-55ab202d.js → esm/index-5d267931.js} +1 -1
- package/dist/esm/index-5d267931.js.map +1 -0
- package/dist/esm/index-d0c806ea.js +5 -0
- package/dist/esm/index-d0c806ea.js.map +1 -0
- package/dist/esm/index.js +1 -1
- package/dist/esm/kol-abbr.entry.js +1 -1
- package/dist/esm/kol-accordion.entry.js +1 -1
- package/dist/esm/kol-alert-wc_3.entry.js +1 -1
- package/dist/esm/kol-alert.entry.js +1 -1
- package/dist/esm/kol-avatar-wc.entry.js +1 -1
- package/dist/esm/kol-avatar.entry.js +1 -1
- package/dist/esm/kol-badge.entry.js +1 -1
- package/dist/esm/kol-breadcrumb.entry.js +1 -1
- package/dist/esm/kol-button-group-wc.entry.js +1 -1
- package/dist/esm/kol-button-group.entry.js +1 -1
- package/dist/esm/kol-button-link-text-switch.entry.js +1 -1
- package/dist/esm/kol-button-link-text-switch.entry.js.map +1 -1
- package/dist/esm/kol-button-link.entry.js +1 -1
- package/dist/esm/kol-button.entry.js +1 -1
- package/dist/esm/kol-card.entry.js +1 -1
- package/dist/esm/kol-details.entry.js +1 -1
- package/dist/esm/kol-details.entry.js.map +1 -1
- package/dist/esm/kol-form.entry.js +1 -1
- package/dist/esm/kol-heading.entry.js +1 -1
- package/dist/esm/kol-icon.entry.js +1 -1
- package/dist/esm/kol-image.entry.js +1 -1
- package/dist/esm/kol-indented-text.entry.js +1 -1
- package/dist/esm/kol-input-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.entry.js +1 -1
- package/dist/esm/kol-input-radio.entry.js.map +1 -1
- package/dist/esm/kol-input-range.entry.js +1 -1
- package/dist/esm/kol-input-range.entry.js.map +1 -1
- package/dist/esm/kol-input-text.entry.js +1 -1
- package/dist/esm/kol-input-text.entry.js.map +1 -1
- package/dist/esm/kol-input.entry.js +1 -1
- package/dist/esm/kol-kolibri.entry.js +1 -1
- package/dist/esm/kol-link-button.entry.js +1 -1
- package/dist/esm/kol-link-group.entry.js +1 -1
- package/dist/esm/kol-link-wc.entry.js +1 -1
- package/dist/esm/kol-link-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-modal.entry.js +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-popover.entry.js +1 -1
- package/dist/esm/kol-progress.entry.js +1 -1
- package/dist/esm/kol-quote.entry.js +1 -1
- package/dist/esm/kol-select.entry.js +1 -1
- package/dist/esm/kol-select.entry.js.map +1 -1
- package/dist/esm/kol-skip-nav.entry.js +1 -1
- package/dist/esm/kol-span-wc_2.entry.js +1 -1
- package/dist/esm/kol-span.entry.js +1 -1
- package/dist/esm/kol-spin.entry.js +1 -1
- package/dist/esm/kol-split-button.entry.js +1 -1
- package/dist/esm/kol-symbol.entry.js +1 -1
- package/dist/esm/kol-table.entry.js +1 -1
- package/dist/esm/kol-tabs.entry.js +1 -1
- package/dist/esm/kol-textarea.entry.js +1 -1
- package/dist/esm/kol-textarea.entry.js.map +1 -1
- package/dist/esm/kol-toast-container.entry.js +1 -1
- package/dist/esm/kol-toast.entry.js +1 -1
- package/dist/esm/kol-version.entry.js +1 -1
- package/dist/esm/kolibri.js +1 -1
- package/dist/esm/kolibri.js.map +1 -1
- package/dist/esm/{label-84d4c0b2.js → label-c130b72e.js} +1 -1
- package/dist/esm/{label-84d4c0b2.js.map → label-c130b72e.js.map} +1 -1
- package/dist/esm/loader.js +1 -1
- package/dist/esm/{open-978d23f7.js → open-fac63e17.js} +1 -1
- package/dist/esm/{open-978d23f7.js.map → open-fac63e17.js.map} +1 -1
- package/dist/esm/{prop.validators-fa5eb5c5.js → prop.validators-e40c3380.js} +1 -1
- package/dist/esm/{prop.validators-fa5eb5c5.js.map → prop.validators-e40c3380.js.map} +1 -1
- package/dist/esm/{rows-9e354f5e.js → rows-f8671a72.js} +1 -1
- package/dist/esm/{rows-9e354f5e.js.map → rows-f8671a72.js.map} +1 -1
- package/dist/esm/{show-eeff7c91.js → show-40a56e1f.js} +1 -1
- package/dist/esm/{show-eeff7c91.js.map → show-40a56e1f.js.map} +1 -1
- package/dist/esm/{suggestions-7c5183fe.js → suggestions-871adfaf.js} +1 -1
- package/dist/esm/{suggestions-7c5183fe.js.map → suggestions-871adfaf.js.map} +1 -1
- package/dist/esm/{tab-index-3ce2c695.js → tab-index-9c6b6a46.js} +1 -1
- package/dist/esm/{tab-index-3ce2c695.js.map → tab-index-9c6b6a46.js.map} +1 -1
- package/dist/esm/{tooltip-align-0d2f0b3d.js → tooltip-align-88b82267.js} +1 -1
- package/dist/esm/{tooltip-align-0d2f0b3d.js.map → tooltip-align-88b82267.js.map} +1 -1
- package/dist/esm/{validation-a54b3e91.js → validation-36d55135.js} +1 -1
- package/dist/esm/{validation-a54b3e91.js.map → validation-36d55135.js.map} +1 -1
- package/dist/esm/validation-3a52d0f0.js +4 -0
- package/dist/esm/{validation-97376ad0.js.map → validation-3a52d0f0.js.map} +1 -1
- package/dist/kolibri/{a11y.tipps-7143f6fd.js → a11y.tipps-348ca42a.js} +1 -1
- package/dist/kolibri/align-11b69892.js +4 -0
- package/dist/kolibri/alignment-1bffdb6e.js +4 -0
- package/dist/kolibri/alternative-button-link-role-1ace1f6f.js +4 -0
- package/dist/kolibri/app-globals-d408fcae.js +4 -0
- package/dist/kolibri/{associated.controller-d70c8be1.js → associated.controller-a395cef5.js} +1 -1
- package/dist/kolibri/{color-048551d8.js → color-a3271610.js} +1 -1
- package/dist/kolibri/{controller-757cd887.js → controller-2743a0d8.js} +1 -1
- package/dist/kolibri/{controller-8bf7eac9.js → controller-417ec2ab.js} +1 -1
- package/dist/kolibri/{controller-313148a2.js → controller-46e6bd0b.js} +1 -1
- package/dist/kolibri/{controller-f1d4f4d4.js → controller-64f30149.js} +1 -1
- package/dist/kolibri/{controller-d5d0c61a.js → controller-a1e48719.js} +1 -1
- package/dist/kolibri/controller-icon-c621ff81.js +4 -0
- package/dist/kolibri/{custom-class-6b0cb37f.js → custom-class-87071d99.js} +1 -1
- package/dist/kolibri/{dev.utils-b5b1c70d.js → dev.utils-9b878520.js} +1 -1
- package/dist/kolibri/{dev.utils-b5b1c70d.js.map → dev.utils-9b878520.js.map} +1 -1
- package/dist/kolibri/{devtools-188764ec.js → devtools-fa2d0662.js} +1 -1
- package/dist/kolibri/has-closer-f3547f42.js +4 -0
- package/dist/kolibri/{has-closer-20ad2566.js.map → has-closer-f3547f42.js.map} +1 -1
- package/dist/kolibri/hide-label-ff12ad0b.js +4 -0
- package/dist/kolibri/i18n-9c7e636f.js +4 -0
- package/dist/kolibri/i18n-9c7e636f.js.map +1 -0
- package/dist/kolibri/{icons-b6a6d907.js → icons-da3b61ae.js} +1 -1
- package/dist/kolibri/image-source-5494399d.js +4 -0
- package/dist/kolibri/index-5d267931.js +4 -0
- package/dist/kolibri/index-5d267931.js.map +1 -0
- package/dist/kolibri/index-d0c806ea.js +5 -0
- package/dist/kolibri/index-d0c806ea.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-alert-wc_3.entry.js +1 -1
- package/dist/kolibri/kol-alert.entry.js +1 -1
- package/dist/kolibri/kol-avatar-wc.entry.js +1 -1
- package/dist/kolibri/kol-avatar.entry.js +1 -1
- package/dist/kolibri/kol-badge.entry.js +1 -1
- package/dist/kolibri/kol-breadcrumb.entry.js +1 -1
- package/dist/kolibri/kol-button-group-wc.entry.js +1 -1
- package/dist/kolibri/kol-button-group.entry.js +1 -1
- package/dist/kolibri/kol-button-link-text-switch.entry.js +1 -1
- package/dist/kolibri/kol-button-link-text-switch.entry.js.map +1 -1
- package/dist/kolibri/kol-button-link.entry.js +1 -1
- package/dist/kolibri/kol-button.entry.js +1 -1
- package/dist/kolibri/kol-card.entry.js +1 -1
- package/dist/kolibri/kol-details.entry.js +1 -1
- package/dist/kolibri/kol-details.entry.js.map +1 -1
- package/dist/kolibri/kol-form.entry.js +1 -1
- package/dist/kolibri/kol-heading.entry.js +1 -1
- package/dist/kolibri/kol-icon.entry.js +1 -1
- package/dist/kolibri/kol-image.entry.js +1 -1
- package/dist/kolibri/kol-indented-text.entry.js +1 -1
- package/dist/kolibri/kol-input-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.entry.js +1 -1
- package/dist/kolibri/kol-input-radio.entry.js.map +1 -1
- package/dist/kolibri/kol-input-range.entry.js +1 -1
- package/dist/kolibri/kol-input-range.entry.js.map +1 -1
- package/dist/kolibri/kol-input-text.entry.js +1 -1
- package/dist/kolibri/kol-input-text.entry.js.map +1 -1
- package/dist/kolibri/kol-input.entry.js +1 -1
- package/dist/kolibri/kol-kolibri.entry.js +1 -1
- package/dist/kolibri/kol-link-button.entry.js +1 -1
- package/dist/kolibri/kol-link-group.entry.js +1 -1
- package/dist/kolibri/kol-link-wc.entry.js +1 -1
- package/dist/kolibri/kol-link-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-modal.entry.js +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-popover.entry.js +1 -1
- package/dist/kolibri/kol-progress.entry.js +1 -1
- package/dist/kolibri/kol-quote.entry.js +1 -1
- package/dist/kolibri/kol-select.entry.js +1 -1
- package/dist/kolibri/kol-select.entry.js.map +1 -1
- package/dist/kolibri/kol-skip-nav.entry.js +1 -1
- package/dist/kolibri/kol-span-wc_2.entry.js +1 -1
- package/dist/kolibri/kol-span.entry.js +1 -1
- package/dist/kolibri/kol-spin.entry.js +1 -1
- package/dist/kolibri/kol-split-button.entry.js +1 -1
- package/dist/kolibri/kol-symbol.entry.js +1 -1
- package/dist/kolibri/kol-table.entry.js +1 -1
- package/dist/kolibri/kol-tabs.entry.js +1 -1
- package/dist/kolibri/kol-textarea.entry.js +1 -1
- package/dist/kolibri/kol-textarea.entry.js.map +1 -1
- package/dist/kolibri/kol-toast-container.entry.js +1 -1
- package/dist/kolibri/kol-toast.entry.js +1 -1
- package/dist/kolibri/kol-version.entry.js +1 -1
- package/dist/kolibri/kolibri.esm.js +1 -1
- package/dist/kolibri/kolibri.esm.js.map +1 -1
- package/dist/kolibri/{label-84d4c0b2.js → label-c130b72e.js} +1 -1
- package/dist/kolibri/open-fac63e17.js +4 -0
- package/dist/kolibri/{prop.validators-fa5eb5c5.js → prop.validators-e40c3380.js} +1 -1
- package/dist/kolibri/rows-f8671a72.js +4 -0
- package/dist/kolibri/show-40a56e1f.js +4 -0
- package/dist/kolibri/{suggestions-7c5183fe.js → suggestions-871adfaf.js} +1 -1
- package/dist/kolibri/tab-index-9c6b6a46.js +4 -0
- package/dist/kolibri/{tab-index-3ce2c695.js.map → tab-index-9c6b6a46.js.map} +1 -1
- package/dist/kolibri/tooltip-align-88b82267.js +4 -0
- package/dist/kolibri/validation-36d55135.js +4 -0
- package/dist/kolibri/validation-3a52d0f0.js +4 -0
- package/dist/types/components/input-checkbox/component.d.ts +1 -1
- package/dist/types/components/input-color/component.d.ts +1 -1
- package/dist/types/components/input-date/component.d.ts +1 -1
- package/dist/types/components/input-email/component.d.ts +1 -1
- package/dist/types/components/input-file/component.d.ts +1 -1
- package/dist/types/components/input-number/component.d.ts +1 -1
- package/dist/types/components/input-password/component.d.ts +1 -1
- package/dist/types/components/input-radio/component.d.ts +1 -1
- package/dist/types/components/input-range/component.d.ts +1 -1
- package/dist/types/components/input-text/component.d.ts +1 -1
- package/dist/types/components/link/component.d.ts +1 -1
- package/dist/types/components/link/shadow.d.ts +1 -1
- package/dist/types/components/link/types.d.ts +2 -2
- package/dist/types/components/nav/component.d.ts +2 -0
- package/dist/types/components/nav/types.d.ts +3 -2
- package/dist/types/components/select/component.d.ts +1 -1
- package/dist/types/components/textarea/component.d.ts +1 -1
- package/dist/types/components.d.ts +36 -28
- package/dist/types/i18n.d.ts +1 -1
- package/dist/types/locales/de.d.ts +2 -0
- package/dist/types/locales/en.d.ts +2 -0
- package/dist/types/stencil-public-runtime.d.ts +19 -0
- package/dist/types/types/props/has-compact-button.d.ts +7 -0
- package/doc/button.md +2 -0
- package/doc/input-checkbox.md +22 -22
- package/doc/input-color.md +21 -21
- package/doc/input-date.md +27 -27
- package/doc/input-email.md +29 -29
- package/doc/input-file.md +22 -22
- package/doc/input-number.md +27 -27
- package/doc/input-password.md +26 -26
- package/doc/input-radio.md +20 -20
- package/doc/input-range.md +23 -23
- package/doc/input-text.md +28 -28
- package/doc/link.md +14 -14
- package/doc/nav.md +4 -0
- package/doc/select.md +22 -22
- package/doc/textarea.md +25 -25
- package/package.json +1 -1
- package/vscode-custom-data.json +4 -0
- package/dist/cjs/alternative-button-link-role-76fc0537.js +0 -4
- package/dist/cjs/has-closer-3f258cb1.js +0 -4
- package/dist/cjs/hide-label-a1359f24.js +0 -4
- package/dist/cjs/i18n-8316536d.js +0 -4
- package/dist/cjs/i18n-8316536d.js.map +0 -1
- package/dist/cjs/image-source-30ac0359.js +0 -4
- package/dist/cjs/index-2feae351.js +0 -5
- package/dist/cjs/index-2feae351.js.map +0 -1
- package/dist/cjs/index-55ab202d.js.map +0 -1
- package/dist/cjs/open-1c4dcfb7.js +0 -4
- package/dist/cjs/rows-49957d39.js +0 -4
- package/dist/cjs/show-2a7af4da.js +0 -4
- package/dist/esm/alternative-button-link-role-5e1ea5eb.js +0 -4
- package/dist/esm/i18n-94ea09e2.js +0 -4
- package/dist/esm/i18n-94ea09e2.js.map +0 -1
- package/dist/esm/index-536799d5.js +0 -5
- package/dist/esm/index-536799d5.js.map +0 -1
- package/dist/esm/index-93da6c3d.js +0 -4
- package/dist/esm/index-93da6c3d.js.map +0 -1
- package/dist/esm/validation-97376ad0.js +0 -4
- package/dist/kolibri/align-be0d4128.js +0 -4
- package/dist/kolibri/alignment-480cdfba.js +0 -4
- package/dist/kolibri/alternative-button-link-role-5e1ea5eb.js +0 -4
- package/dist/kolibri/app-globals-7a11b8ee.js +0 -4
- package/dist/kolibri/controller-icon-d4a91832.js +0 -4
- package/dist/kolibri/has-closer-20ad2566.js +0 -4
- package/dist/kolibri/hide-label-27292184.js +0 -4
- package/dist/kolibri/i18n-94ea09e2.js +0 -4
- package/dist/kolibri/i18n-94ea09e2.js.map +0 -1
- package/dist/kolibri/image-source-fa985240.js +0 -4
- package/dist/kolibri/index-536799d5.js +0 -5
- package/dist/kolibri/index-536799d5.js.map +0 -1
- package/dist/kolibri/index-93da6c3d.js +0 -4
- package/dist/kolibri/index-93da6c3d.js.map +0 -1
- package/dist/kolibri/open-978d23f7.js +0 -4
- package/dist/kolibri/rows-9e354f5e.js +0 -4
- package/dist/kolibri/show-eeff7c91.js +0 -4
- package/dist/kolibri/tab-index-3ce2c695.js +0 -4
- package/dist/kolibri/tooltip-align-0d2f0b3d.js +0 -4
- package/dist/kolibri/validation-97376ad0.js +0 -4
- package/dist/kolibri/validation-a54b3e91.js +0 -4
- /package/dist/kolibri/{a11y.tipps-7143f6fd.js.map → a11y.tipps-348ca42a.js.map} +0 -0
- /package/dist/kolibri/{align-be0d4128.js.map → align-11b69892.js.map} +0 -0
- /package/dist/kolibri/{alignment-480cdfba.js.map → alignment-1bffdb6e.js.map} +0 -0
- /package/dist/kolibri/{alternative-button-link-role-5e1ea5eb.js.map → alternative-button-link-role-1ace1f6f.js.map} +0 -0
- /package/dist/kolibri/{app-globals-7a11b8ee.js.map → app-globals-d408fcae.js.map} +0 -0
- /package/dist/kolibri/{associated.controller-d70c8be1.js.map → associated.controller-a395cef5.js.map} +0 -0
- /package/dist/kolibri/{color-048551d8.js.map → color-a3271610.js.map} +0 -0
- /package/dist/kolibri/{controller-757cd887.js.map → controller-2743a0d8.js.map} +0 -0
- /package/dist/kolibri/{controller-8bf7eac9.js.map → controller-417ec2ab.js.map} +0 -0
- /package/dist/kolibri/{controller-313148a2.js.map → controller-46e6bd0b.js.map} +0 -0
- /package/dist/kolibri/{controller-f1d4f4d4.js.map → controller-64f30149.js.map} +0 -0
- /package/dist/kolibri/{controller-d5d0c61a.js.map → controller-a1e48719.js.map} +0 -0
- /package/dist/kolibri/{controller-icon-d4a91832.js.map → controller-icon-c621ff81.js.map} +0 -0
- /package/dist/kolibri/{custom-class-6b0cb37f.js.map → custom-class-87071d99.js.map} +0 -0
- /package/dist/kolibri/{devtools-188764ec.js.map → devtools-fa2d0662.js.map} +0 -0
- /package/dist/kolibri/{hide-label-27292184.js.map → hide-label-ff12ad0b.js.map} +0 -0
- /package/dist/kolibri/{icons-b6a6d907.js.map → icons-da3b61ae.js.map} +0 -0
- /package/dist/kolibri/{image-source-fa985240.js.map → image-source-5494399d.js.map} +0 -0
- /package/dist/kolibri/{label-84d4c0b2.js.map → label-c130b72e.js.map} +0 -0
- /package/dist/kolibri/{open-978d23f7.js.map → open-fac63e17.js.map} +0 -0
- /package/dist/kolibri/{prop.validators-fa5eb5c5.js.map → prop.validators-e40c3380.js.map} +0 -0
- /package/dist/kolibri/{rows-9e354f5e.js.map → rows-f8671a72.js.map} +0 -0
- /package/dist/kolibri/{show-eeff7c91.js.map → show-40a56e1f.js.map} +0 -0
- /package/dist/kolibri/{suggestions-7c5183fe.js.map → suggestions-871adfaf.js.map} +0 -0
- /package/dist/kolibri/{tooltip-align-0d2f0b3d.js.map → tooltip-align-88b82267.js.map} +0 -0
- /package/dist/kolibri/{validation-a54b3e91.js.map → validation-36d55135.js.map} +0 -0
- /package/dist/kolibri/{validation-97376ad0.js.map → validation-3a52d0f0.js.map} +0 -0
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* KoliBri - The accessible HTML-Standard
|
|
3
3
|
*/
|
|
4
|
-
import{d as devHint}from"./a11y.tipps-7143f6fd.js";import{p as patchTheme,L as Log,a as getDocument,b as getExperimentalMode}from"./dev.utils-b5b1c70d.js";const pushNodes=(e,t)=>{t.forEach((t=>{!1===e.has(t)&&e.add(t)}))},querySelectorAll=(e,t=document)=>{if(t instanceof Document||t instanceof HTMLElement||t instanceof ShadowRoot){const r=new Set;pushNodes(r,t.querySelectorAll(e));const o=t.querySelectorAll('[class*="hydrated"]');for(let t=0;t<o.length;t++){const n=o[t].shadowRoot;pushNodes(r,querySelectorAll(e,"object"==typeof n&&null!==n?n:o[t]))}return Array.from(r)}throw new Error("The parameter document for the method querySelectorAll is not type of Document, HTMLElement or ShadowRoot.")},querySelector=(e,t=document)=>{if(t instanceof Document||t instanceof HTMLElement||t instanceof ShadowRoot){let r=t.querySelector(e);if(null===r){const o=t.querySelectorAll('[class*="hydrated"]');for(let t=0;t<o.length;t++){const n=o[t].shadowRoot;if(r=querySelector(e,"object"==typeof n&&null!==n?n:o[t]),null!==r)break}}return r}throw new Error("The parameter document for the method querySelector is not type of Document, HTMLElement or ShadowRoot.")};var rgbaConvert=arr,arr_1=arr,obj_1=obj,css_1=css,hex_1=hex,num_1=num;function arr(e){var t=parse(e);return 3==t.length?t.concat(255):(t[3]=Math.round(t[3]),t)}function obj(e){var t=parse(e);return{r:t[0],g:t[1],b:t[2],a:3==t.length?255:Math.round(t[3])}}function css(e){var t=parse(e);return 3==t.length&&t.push(255),255==t[3]?"rgb("+t[0]+", "+t[1]+", "+t[2]+")":0==t[3]?"rgba("+t[0]+", "+t[1]+", "+t[2]+", 0)":"rgba("+t[0]+", "+t[1]+", "+t[2]+", "+String(t[3]/255).substr(1)+")"}function hex(e){3==(t=parse(e)).length&&t.push(255);var t,r=255==t[3],o=num2hex(t[0]),n=num2hex(t[1]),i=num2hex(t[2]),s=isshort(o,n,i,t=num2hex(Math.round(t[3])));return r?s?"#"+o.charAt(0)+n.charAt(0)+i.charAt(0):"#"+o+n+i:s?"#"+o.charAt(0)+n.charAt(0)+i.charAt(0)+t.charAt(0):"#"+o+n+i+t}function num(e){var t=parse(e);return 3==t.length?t.push(255):t[3]=Math.round(t[3]),(t[3]<<24>>>0|t[0]<<16|t[1]<<8|t[2])>>>0}function parse(e){return"string"==typeof e?name(e=e.toLowerCase())||hex3(e)||hex6(e)||rgb(e)||rgba(e)||[0,0,0,255]:object(e)||array(e)||number(e)||[0,0,0,255]}function num2hex(e){var t=e.toString(16);return 1==t.length?"0"+t:t}function isshort(e,t,r,o){var n=["ff","00","11","22","33","44","55","66","77","88","99","aa","bb","cc","dd","ee"];return-1!=n.indexOf(e)&&-1!=n.indexOf(t)&&-1!=n.indexOf(r)&&-1!=n.indexOf(o)}function name(e){return"red"==e?[255,0,0]:"green"==e?[0,255,0]:"blue"==e?[0,0,255]:"black"==e?[0,0,0]:"white"==e?[255,255,255]:"cyan"==e?[0,255,255]:"gray"==e||"grey"==e?[128,128,128]:"magenta"==e||"pink"==e?[255,0,255]:"yellow"==e?[255,255,0]:void 0}function hex2num(e){return 1==e.length?parseInt(e+e,16):parseInt(e,16)}function hex3(e){var t=e.replace(/^#/,""),r=t.length;if(3==r||4==r){var o=hex2num(t[0]),n=hex2num(t[1]),i=hex2num(t[2]),s=3==r?255:hex2num(t[3]);if(isNaN(o)||isNaN(n)||isNaN(i)||isNaN(s))return;return[o,n,i,s]}}function hex6(e){var t=e.replace(/^#/,""),r=t.length;if(6==r||8==r){var o=hex2num(t.slice(0,2)),n=hex2num(t.slice(2,4)),i=hex2num(t.slice(4,6)),s=6==r?255:hex2num(t.slice(6,8));if(isNaN(o)||isNaN(n)||isNaN(i)||isNaN(s))return;return[o,n,i,s]}}function getnum(e,t){return"number"!=typeof e||!0===t&&Math.floor(e)!==e?-1:e>=0&&e<=255?e:-1}function object(e){if("[object Object]"===Object.prototype.toString.call(e)&&Object.getPrototypeOf(e)===Object.getPrototypeOf({})){var t=getnum(null!=e.r?e.r:null!=e.red?e.red:0,!0),r=getnum(null!=e.g?e.g:null!=e.green?e.green:0,!0),o=getnum(null!=e.b?e.b:null!=e.blue?e.blue:0,!0),n=getnum(null!=e.a?e.a:null!=e.alpha?e.alpha:255,!0);if(-1!=t&&-1!=r&&-1!=o&&-1!=n)return[t,r,o,n]}}function array(e){if(Array.isArray(e)&&(3==e.length||4==e.length)){var t=getnum(e[0],!0),r=getnum(e[1],!0),o=getnum(e[2],!0),n=getnum(null!=e[3]?e[3]:255,!0);if(-1!=t&&-1!=r&&-1!=o&&-1!=n)return[t,r,o,n]}}function number(e){if("number"==typeof e&&Math.floor(e)==e&&e<=4294967295&&e>=0)return[e>>16&255,e>>8&255,255&e,e>>24&255]}function rgb(e){if("rgb("==e.substr(0,4)){var t=(e=e.match(/^rgb\(([^)]+)\)/)[1]).split(/ *, */).map(Number),r=getnum(t[0],!0),o=getnum(t[1],!0),n=getnum(t[2],!0);if(-1!=r&&-1!=o&&-1!=n)return[r,o,n,255]}}function rgba(e){if("rgba("==e.substr(0,5)){var t=(e=e.match(/^rgba\(([^)]+)\)/)[1]).split(/ *, */).map(Number),r=getnum(t[0],!0),o=getnum(t[1],!0),n=getnum(t[2],!0),i=getnum(255*t[3]);if(-1!=r&&-1!=o&&-1!=n&&-1!=i)return[r,o,n,i]}}function isFunction(e){return"function"==typeof e}function createErrorClass(e){const t=e((e=>{Error.call(e),e.stack=(new Error).stack}));return t.prototype=Object.create(Error.prototype),t.prototype.constructor=t,t}rgbaConvert.arr=arr_1,rgbaConvert.obj=obj_1,rgbaConvert.css=css_1,rgbaConvert.hex=hex_1,rgbaConvert.num=num_1;const UnsubscriptionError=createErrorClass((e=>function(t){e(this),this.message=t?`${t.length} errors occurred during unsubscription:\n${t.map(((e,t)=>`${t+1}) ${e.toString()}`)).join("\n ")}`:"",this.name="UnsubscriptionError",this.errors=t}));function arrRemove(e,t){if(e){const r=e.indexOf(t);0<=r&&e.splice(r,1)}}class Subscription{constructor(e){this.initialTeardown=e,this.closed=!1,this._parentage=null,this._finalizers=null}unsubscribe(){let e;if(!this.closed){this.closed=!0;const{_parentage:t}=this;if(t)if(this._parentage=null,Array.isArray(t))for(const e of t)e.remove(this);else t.remove(this);const{initialTeardown:r}=this;if(isFunction(r))try{r()}catch(t){e=t instanceof UnsubscriptionError?t.errors:[t]}const{_finalizers:o}=this;if(o){this._finalizers=null;for(const t of o)try{execFinalizer(t)}catch(t){e=null!=e?e:[],t instanceof UnsubscriptionError?e=[...e,...t.errors]:e.push(t)}}if(e)throw new UnsubscriptionError(e)}}add(e){var t;if(e&&e!==this)if(this.closed)execFinalizer(e);else{if(e instanceof Subscription){if(e.closed||e._hasParent(this))return;e._addParent(this)}(this._finalizers=null!==(t=this._finalizers)&&void 0!==t?t:[]).push(e)}}_hasParent(e){const{_parentage:t}=this;return t===e||Array.isArray(t)&&t.includes(e)}_addParent(e){const{_parentage:t}=this;this._parentage=Array.isArray(t)?(t.push(e),t):t?[t,e]:e}_removeParent(e){const{_parentage:t}=this;t===e?this._parentage=null:Array.isArray(t)&&arrRemove(t,e)}remove(e){const{_finalizers:t}=this;t&&arrRemove(t,e),e instanceof Subscription&&e._removeParent(this)}}Subscription.EMPTY=(()=>{const e=new Subscription;return e.closed=!0,e})();const EMPTY_SUBSCRIPTION=Subscription.EMPTY;function isSubscription(e){return e instanceof Subscription||e&&"closed"in e&&isFunction(e.remove)&&isFunction(e.add)&&isFunction(e.unsubscribe)}function execFinalizer(e){isFunction(e)?e():e.unsubscribe()}const config={onUnhandledError:null,onStoppedNotification:null,Promise:void 0,useDeprecatedSynchronousErrorHandling:!1,useDeprecatedNextContext:!1},timeoutProvider={setTimeout(e,t,...r){const{delegate:o}=timeoutProvider;return(null==o?void 0:o.setTimeout)?o.setTimeout(e,t,...r):setTimeout(e,t,...r)},clearTimeout(e){const{delegate:t}=timeoutProvider;return((null==t?void 0:t.clearTimeout)||clearTimeout)(e)},delegate:void 0};function reportUnhandledError(e){timeoutProvider.setTimeout((()=>{const{onUnhandledError:t}=config;if(!t)throw e;t(e)}))}function noop(){}const COMPLETE_NOTIFICATION=createNotification("C",void 0,void 0);function errorNotification(e){return createNotification("E",void 0,e)}function nextNotification(e){return createNotification("N",e,void 0)}function createNotification(e,t,r){return{kind:e,value:t,error:r}}function errorContext(e){e()}class Subscriber extends Subscription{constructor(e){super(),this.isStopped=!1,e?(this.destination=e,isSubscription(e)&&e.add(this)):this.destination=EMPTY_OBSERVER}static create(e,t,r){return new SafeSubscriber(e,t,r)}next(e){this.isStopped?handleStoppedNotification(nextNotification(e),this):this._next(e)}error(e){this.isStopped?handleStoppedNotification(errorNotification(e),this):(this.isStopped=!0,this._error(e))}complete(){this.isStopped?handleStoppedNotification(COMPLETE_NOTIFICATION,this):(this.isStopped=!0,this._complete())}unsubscribe(){this.closed||(this.isStopped=!0,super.unsubscribe(),this.destination=null)}_next(e){this.destination.next(e)}_error(e){try{this.destination.error(e)}finally{this.unsubscribe()}}_complete(){try{this.destination.complete()}finally{this.unsubscribe()}}}const _bind=Function.prototype.bind;function bind(e,t){return _bind.call(e,t)}class ConsumerObserver{constructor(e){this.partialObserver=e}next(e){const{partialObserver:t}=this;if(t.next)try{t.next(e)}catch(e){handleUnhandledError(e)}}error(e){const{partialObserver:t}=this;if(t.error)try{t.error(e)}catch(e){handleUnhandledError(e)}else handleUnhandledError(e)}complete(){const{partialObserver:e}=this;if(e.complete)try{e.complete()}catch(e){handleUnhandledError(e)}}}class SafeSubscriber extends Subscriber{constructor(e,t,r){let o;if(super(),isFunction(e)||!e)o={next:null!=e?e:void 0,error:null!=t?t:void 0,complete:null!=r?r:void 0};else{let t;this&&config.useDeprecatedNextContext?(t=Object.create(e),t.unsubscribe=()=>this.unsubscribe(),o={next:e.next&&bind(e.next,t),error:e.error&&bind(e.error,t),complete:e.complete&&bind(e.complete,t)}):o=e}this.destination=new ConsumerObserver(o)}}function handleUnhandledError(e){reportUnhandledError(e)}function defaultErrorHandler(e){throw e}function handleStoppedNotification(e,t){const{onStoppedNotification:r}=config;r&&timeoutProvider.setTimeout((()=>r(e,t)))}const EMPTY_OBSERVER={closed:!0,next:noop,error:defaultErrorHandler,complete:noop},observable="function"==typeof Symbol&&Symbol.observable||"@@observable";function identity(e){return e}function pipeFromArray(e){return 0===e.length?identity:1===e.length?e[0]:function(t){return e.reduce(((e,t)=>t(e)),t)}}class Observable{constructor(e){e&&(this._subscribe=e)}lift(e){const t=new Observable;return t.source=this,t.operator=e,t}subscribe(e,t,r){const o=isSubscriber(e)?e:new SafeSubscriber(e,t,r);return errorContext((()=>{const{operator:e,source:t}=this;o.add(e?e.call(o,t):t?this._subscribe(o):this._trySubscribe(o))})),o}_trySubscribe(e){try{return this._subscribe(e)}catch(t){e.error(t)}}forEach(e,t){return new(t=getPromiseCtor(t))(((t,r)=>{const o=new SafeSubscriber({next:t=>{try{e(t)}catch(e){r(e),o.unsubscribe()}},error:r,complete:t});this.subscribe(o)}))}_subscribe(e){var t;return null===(t=this.source)||void 0===t?void 0:t.subscribe(e)}[observable](){return this}pipe(...e){return pipeFromArray(e)(this)}toPromise(e){return new(e=getPromiseCtor(e))(((e,t)=>{let r;this.subscribe((e=>r=e),(e=>t(e)),(()=>e(r)))}))}}function getPromiseCtor(e){var t;return null!==(t=null!=e?e:config.Promise)&&void 0!==t?t:Promise}function isObserver(e){return e&&isFunction(e.next)&&isFunction(e.error)&&isFunction(e.complete)}function isSubscriber(e){return e&&e instanceof Subscriber||isObserver(e)&&isSubscription(e)}Observable.create=e=>new Observable(e);const ObjectUnsubscribedError=createErrorClass((e=>function(){e(this),this.name="ObjectUnsubscribedError",this.message="object unsubscribed"}));class Subject extends Observable{constructor(){super(),this.closed=!1,this.currentObservers=null,this.observers=[],this.isStopped=!1,this.hasError=!1,this.thrownError=null}lift(e){const t=new AnonymousSubject(this,this);return t.operator=e,t}_throwIfClosed(){if(this.closed)throw new ObjectUnsubscribedError}next(e){errorContext((()=>{if(this._throwIfClosed(),!this.isStopped){this.currentObservers||(this.currentObservers=Array.from(this.observers));for(const t of this.currentObservers)t.next(e)}}))}error(e){errorContext((()=>{if(this._throwIfClosed(),!this.isStopped){this.hasError=this.isStopped=!0,this.thrownError=e;const{observers:t}=this;for(;t.length;)t.shift().error(e)}}))}complete(){errorContext((()=>{if(this._throwIfClosed(),!this.isStopped){this.isStopped=!0;const{observers:e}=this;for(;e.length;)e.shift().complete()}}))}unsubscribe(){this.isStopped=this.closed=!0,this.observers=this.currentObservers=null}get observed(){var e;return(null===(e=this.observers)||void 0===e?void 0:e.length)>0}_trySubscribe(e){return this._throwIfClosed(),super._trySubscribe(e)}_subscribe(e){return this._throwIfClosed(),this._checkFinalizedStatuses(e),this._innerSubscribe(e)}_innerSubscribe(e){const{hasError:t,isStopped:r,observers:o}=this;return t||r?EMPTY_SUBSCRIPTION:(this.currentObservers=null,o.push(e),new Subscription((()=>{this.currentObservers=null,arrRemove(o,e)})))}_checkFinalizedStatuses(e){const{hasError:t,thrownError:r,isStopped:o}=this;t?e.error(r):o&&e.complete()}asObservable(){const e=new Observable;return e.source=this,e}}Subject.create=(e,t)=>new AnonymousSubject(e,t);class AnonymousSubject extends Subject{constructor(e,t){super(),this.destination=e,this.source=t}next(e){var t,r;null===(r=null===(t=this.destination)||void 0===t?void 0:t.next)||void 0===r||r.call(t,e)}error(e){var t,r;null===(r=null===(t=this.destination)||void 0===t?void 0:t.error)||void 0===r||r.call(t,e)}complete(){var e,t;null===(t=null===(e=this.destination)||void 0===e?void 0:e.complete)||void 0===t||t.call(e)}_subscribe(e){var t,r;return null!==(r=null===(t=this.source)||void 0===t?void 0:t.subscribe(e))&&void 0!==r?r:EMPTY_SUBSCRIPTION}}var n=.2126,r=.7152,t=.0722,e=1/12.92;function u(e){return Math.pow((e+.055)/1.055,2.4)}function a(o){var i=o[0]/255,s=o[1]/255,a=o[2]/255,c=i<=.03928?i*e:u(i),l=s<=.03928?s*e:u(s),h=a<=.03928?a*e:u(a);return c*n+l*r+h*t}function i(e){var t=255;8===(e=e.replace(/^#/,"")).length&&(t=parseInt(e.slice(6,8),16),e=e.substring(0,6)),4===e.length&&(t=parseInt(e.slice(3,4).repeat(2),16),e=e.substring(0,3)),3===e.length&&(e=e[0]+e[0]+e[1]+e[1]+e[2]+e[2]);var r=parseInt(e,16);return[r>>16,r>>8&255,255&r,t]}function c(e,t){return(Math.max(e,t)+.05)/(Math.min(e,t)+.05)}function o(e,t){return c(a(e),a(t))}function s(e,t){return o(i(e),i(t))}function f(e){return e>=7?"AAA":e>=4.5?"AA":e>=3?"AA Large":"Fail"}const OBJECT_OBJECT=/\[object Object\]/,objectObjectHandler=(e,t)=>{"string"==typeof e&&OBJECT_OBJECT.test(e)||t()},emptyStringByArrayHandler=(e,t)=>{"string"==typeof e&&""===e||t()},setEventTarget=(e,t)=>{getExperimentalMode()&&(Log.debug([e,t]),Log.debug("↑ We propagate the (submit) event to this target.")),Object.defineProperty(e,"target",{value:t,writable:!1})},patchState=e=>{var t,r,o;null===(t=e.nextHooks)||void 0===t||t.forEach(((t,r)=>{var o;const n=t.get("beforePatch");"function"==typeof n&&n(null===(o=e.nextState)||void 0===o?void 0:o.get(r),e.nextState,e,r)})),(null===(r=e.nextState)||void 0===r?void 0:r.size)>0&&(e.state=Object.assign(Object.assign({},e.state),Object.fromEntries(e.nextState)),delete e.nextState,null===(o=e.nextHooks)||void 0===o||o.forEach(((t,r)=>{const o=t.get("afterPatch");"function"==typeof o&&o(e.state[r],e.state,e,r)}))),delete e.nextHooks},setState=(e,t,r,o={})=>{var n,i;if(void 0===e.nextHooks&&(e.nextHooks=new Map),void 0===e.nextState&&(e.nextState=new Map),e.nextState.get(t)!==r){e.nextHooks.get(t)instanceof Map==!1&&e.nextHooks.set(t,new Map),"function"==typeof o.afterPatch&&(null===(n=e.nextHooks.get(t))||void 0===n||n.set("afterPatch",o.afterPatch)),"function"==typeof o.beforePatch&&(null===(i=e.nextHooks.get(t))||void 0===i||i.set("beforePatch",o.beforePatch)),e.nextState.set(t,r),patchState(e)}},logWarn=(e,t,r,o)=>{devHint(`[${e.constructor.name}] Der Property-Wert (${r}) für '${t}' ist nicht valide. Folgende Werte sind erlaubt: ${Array.from(o).join(", ")}`)};function watchValidator(e,t,r,o,n,i={}){r(n)?setState(e,t,n,i.hooks):null!=n||i.required?(i.required||o.add(null),logWarn(e,t,n,o)):setState(e,t,i.defaultValue,i.hooks)}const watchBoolean=(e,t,r,o)=>{watchValidator(e,t,(e=>"boolean"==typeof e),new Set(["Boolean {true, false}"]),r,o)},watchString=(e,t,r,o={})=>{const n="number"==typeof o.minLength?null==o?void 0:o.minLength:0;watchValidator(e,t,(e=>"string"==typeof e&&e.length>=n&&(void 0===(null==o?void 0:o.maxLength)||e.length<=o.maxLength)),new Set(["String"]),r,o)},watchNumber=(e,t,r,o)=>{watchValidator(e,t,(e=>"number"==typeof e&&(void 0===(null==o?void 0:o.min)||"number"==typeof(null==o?void 0:o.min)&&e>=o.min)&&(void 0===(null==o?void 0:o.max)||"number"==typeof(null==o?void 0:o.max)&&e<=o.max)),new Set(["Number"]),r,o)},watchJsonArrayString=(e,t,r,o,n=(e=>e==e),i={})=>{emptyStringByArrayHandler(o,(()=>{objectObjectHandler(o,(()=>{void 0===o&&(o=[]);try{try{o=parseJson(o)}catch(e){}if(Array.isArray(o)){const s=o.find((e=>!r(e)));void 0===s&&n(o)?setState(e,t,o,i.hooks):objectObjectHandler(s,(()=>{throw Log.debug(s),new Error("↑ Das Schema für das Property (_options) ist nicht valide. Der Wert wird nicht geändert.")}))}else objectObjectHandler(o,(()=>{throw Log.debug(o),new Error("↑ Das Schema für das Property (_options) ist nicht valide. Der Wert wird nicht geändert.")}))}catch(e){Log.debug(e)}}))}))},BOOLEAN=/^(true|false)$/,INTEGER=/^-?(0|[1-9]\d*)$/,FLOAT=/^-?(0.|[1-9]\d*.)\d*[1-9]$/,mapString2Unknown=e=>{const t=typeof e,r=`${e}`;if("string"==typeof e)if(BOOLEAN.test(e))e="true"===e;else if(INTEGER.test(e))e=parseInt(e);else if(FLOAT.test(e))e=parseFloat(e);else if(JSON_CHARS.test(e))try{e=parseJson(e)}catch(e){}return t!==typeof e&&devHint(`You have used a stringified property value (${r} to ${JSON.stringify(e)}) which type switched from ${t} to ${typeof e}!`),e},stringifyJson=e=>{try{return JSON.stringify(e).replace(/"/g,"'")}catch(t){throw Log.warn(["stringifyJson",e]),Log.error("↑ Das JSON konnte nicht in einen String umgewandelt werden. Es wird ein stringifizierbares JSON erwartet."),new Error}},JSON_CHARS=/^[{[]/,parseJson=e=>{if("string"==typeof e)try{return JSON.parse(e)}catch(t){if(JSON_CHARS.test(e))try{return JSON.parse(e.replace(/'/g,'"'))}catch(t){Log.warn(["parseJson",e]),Log.error("↑ Der JSON-String konnte nicht geparsed werden. Achten Sie darauf, dass einfache Anführungszeichen im Text maskiert werden (‘).")}}throw new Error},mapBoolean2String=e=>"boolean"==typeof e?!0===e?"true":"false":void 0,mapStringOrBoolean2String=e=>"string"==typeof e?e:mapBoolean2String(e),koliBriQuerySelector=(e,t)=>querySelector(e,t||getDocument()),koliBriQuerySelectorAll=(e,t)=>querySelectorAll(e,t||getDocument());let DEFAULT_COLOR_CONTRAST=null;const getDefaultColorContrast=()=>(DEFAULT_COLOR_CONTRAST=DEFAULT_COLOR_CONTRAST||{backgroundColor:"#00000000",color:"#00000000",domNode:getDocument().body,level:"Fail",score:1},DEFAULT_COLOR_CONTRAST),TRANSPARENT_REGEXP=/(\d+, ){3}0\)/,koliBriA11yColorContrast=(e,t=getDefaultColorContrast())=>{const r=getComputedStyle(e),o=TRANSPARENT_REGEXP.test(r.backgroundColor)?t.backgroundColor:rgbaConvert.hex(r.backgroundColor),n=TRANSPARENT_REGEXP.test(r.color)?t.color:rgbaConvert.hex(r.color),i=s(o,n),a={backgroundColor:o,color:n,domNode:e,level:f(i),score:i};return i<4.5&&Log.error(["Color-Contrast-Error",{backgroundColor:a.backgroundColor,color:a.color,level:a.level,score:a.score},a.domNode]),a},koliBriQuerySelectorColors=(e,t=getDefaultColorContrast())=>{t.domNode instanceof HTMLElement&&(t=koliBriA11yColorContrast(t.domNode,t));const r=t.domNode.querySelector(e);if(null===r){const r=t.domNode.querySelectorAll('[class="hydrated"]');for(let o=0;o<r.length&&(t.domNode=r[o],null===(t=koliBriQuerySelectorColors(e,t)).domNode);o++);return t}return koliBriA11yColorContrast(r,t)};class KoliBriUtils{static queryHtmlElementColors(e,t,r=!1,o=!0){let n=null;if(!0===r||!1===KoliBriUtils.executionLock)if(!1===r&&(KoliBriUtils.cache.clear(),KoliBriUtils.cache.set(t.domNode,t),KoliBriUtils.executionLock=!0,!0===o&&Log.debug("[KoliBriUtils] Color contrast analysis started...")),e===t.domNode)n=t;else{const r=new Set;if(t.domNode.shadowRoot){const e=t.domNode.shadowRoot.children;for(let t=0;t<e.length;t++)r.add(e[t])}const o=t.domNode;if("function"==typeof o.assignedNodes){const e=o.assignedNodes();for(let t=0;t<e.length;t++)e[t]instanceof HTMLElement&&r.add(e[t])}const i=t.domNode.children;for(let e=0;e<i.length;e++)r.add(i[e]);const s=Array.from(r);for(let r=0;r<s.length;r++){let o=KoliBriUtils.cache.get(s[r]);void 0===o&&(o=koliBriA11yColorContrast(s[r],t)),KoliBriUtils.cache.set(s[r],o);const i=KoliBriUtils.queryHtmlElementColors(e,o,!0,!1);if(null!==i){n=i;break}}}else Log.debug("[KoliBriUtils] Call aborted because a color contrast analysis is currently being executed.");return!1===r&&(!0===o&&Log.debug(`[KoliBriUtils] Color contrast analysis finished (${KoliBriUtils.cache.size} DOM elements are analysed).`),KoliBriUtils.executionLock=!1,KoliBriUtils.cache.clear()),n}}KoliBriUtils.executionLock=!1,KoliBriUtils.cache=new Map;const ariaCurrentSubject=new Subject;class KoliBriDevHelper{}KoliBriDevHelper.patchTheme=patchTheme,KoliBriDevHelper.querySelector=koliBriQuerySelector,KoliBriDevHelper.querySelectorAll=koliBriQuerySelectorAll,KoliBriDevHelper.stringifyJson=stringifyJson;export{KoliBriDevHelper as K,watchBoolean as a,s as b,watchJsonArrayString as c,watchString as d,watchNumber as e,setEventTarget as f,emptyStringByArrayHandler as g,ariaCurrentSubject as h,mapBoolean2String as i,mapStringOrBoolean2String as j,koliBriQuerySelector as k,KoliBriUtils as l,mapString2Unknown as m,koliBriA11yColorContrast as n,objectObjectHandler as o,parseJson as p,koliBriQuerySelectorAll as q,rgbaConvert as r,setState as s,koliBriQuerySelectorColors as t,stringifyJson as u,watchValidator as w};
|
|
4
|
+
import{d as devHint}from"./a11y.tipps-348ca42a.js";import{p as patchTheme,L as Log,a as getDocument,b as getExperimentalMode}from"./dev.utils-9b878520.js";const pushNodes=(e,t)=>{t.forEach((t=>{!1===e.has(t)&&e.add(t)}))},querySelectorAll=(e,t=document)=>{if(t instanceof Document||t instanceof HTMLElement||t instanceof ShadowRoot){const r=new Set;pushNodes(r,t.querySelectorAll(e));const o=t.querySelectorAll('[class*="hydrated"]');for(let t=0;t<o.length;t++){const n=o[t].shadowRoot;pushNodes(r,querySelectorAll(e,"object"==typeof n&&null!==n?n:o[t]))}return Array.from(r)}throw new Error("The parameter document for the method querySelectorAll is not type of Document, HTMLElement or ShadowRoot.")},querySelector=(e,t=document)=>{if(t instanceof Document||t instanceof HTMLElement||t instanceof ShadowRoot){let r=t.querySelector(e);if(null===r){const o=t.querySelectorAll('[class*="hydrated"]');for(let t=0;t<o.length;t++){const n=o[t].shadowRoot;if(r=querySelector(e,"object"==typeof n&&null!==n?n:o[t]),null!==r)break}}return r}throw new Error("The parameter document for the method querySelector is not type of Document, HTMLElement or ShadowRoot.")};var rgbaConvert=arr,arr_1=arr,obj_1=obj,css_1=css,hex_1=hex,num_1=num;function arr(e){var t=parse(e);return 3==t.length?t.concat(255):(t[3]=Math.round(t[3]),t)}function obj(e){var t=parse(e);return{r:t[0],g:t[1],b:t[2],a:3==t.length?255:Math.round(t[3])}}function css(e){var t=parse(e);return 3==t.length&&t.push(255),255==t[3]?"rgb("+t[0]+", "+t[1]+", "+t[2]+")":0==t[3]?"rgba("+t[0]+", "+t[1]+", "+t[2]+", 0)":"rgba("+t[0]+", "+t[1]+", "+t[2]+", "+String(t[3]/255).substr(1)+")"}function hex(e){3==(t=parse(e)).length&&t.push(255);var t,r=255==t[3],o=num2hex(t[0]),n=num2hex(t[1]),i=num2hex(t[2]),s=isshort(o,n,i,t=num2hex(Math.round(t[3])));return r?s?"#"+o.charAt(0)+n.charAt(0)+i.charAt(0):"#"+o+n+i:s?"#"+o.charAt(0)+n.charAt(0)+i.charAt(0)+t.charAt(0):"#"+o+n+i+t}function num(e){var t=parse(e);return 3==t.length?t.push(255):t[3]=Math.round(t[3]),(t[3]<<24>>>0|t[0]<<16|t[1]<<8|t[2])>>>0}function parse(e){return"string"==typeof e?name(e=e.toLowerCase())||hex3(e)||hex6(e)||rgb(e)||rgba(e)||[0,0,0,255]:object(e)||array(e)||number(e)||[0,0,0,255]}function num2hex(e){var t=e.toString(16);return 1==t.length?"0"+t:t}function isshort(e,t,r,o){var n=["ff","00","11","22","33","44","55","66","77","88","99","aa","bb","cc","dd","ee"];return-1!=n.indexOf(e)&&-1!=n.indexOf(t)&&-1!=n.indexOf(r)&&-1!=n.indexOf(o)}function name(e){return"red"==e?[255,0,0]:"green"==e?[0,255,0]:"blue"==e?[0,0,255]:"black"==e?[0,0,0]:"white"==e?[255,255,255]:"cyan"==e?[0,255,255]:"gray"==e||"grey"==e?[128,128,128]:"magenta"==e||"pink"==e?[255,0,255]:"yellow"==e?[255,255,0]:void 0}function hex2num(e){return 1==e.length?parseInt(e+e,16):parseInt(e,16)}function hex3(e){var t=e.replace(/^#/,""),r=t.length;if(3==r||4==r){var o=hex2num(t[0]),n=hex2num(t[1]),i=hex2num(t[2]),s=3==r?255:hex2num(t[3]);if(isNaN(o)||isNaN(n)||isNaN(i)||isNaN(s))return;return[o,n,i,s]}}function hex6(e){var t=e.replace(/^#/,""),r=t.length;if(6==r||8==r){var o=hex2num(t.slice(0,2)),n=hex2num(t.slice(2,4)),i=hex2num(t.slice(4,6)),s=6==r?255:hex2num(t.slice(6,8));if(isNaN(o)||isNaN(n)||isNaN(i)||isNaN(s))return;return[o,n,i,s]}}function getnum(e,t){return"number"!=typeof e||!0===t&&Math.floor(e)!==e?-1:e>=0&&e<=255?e:-1}function object(e){if("[object Object]"===Object.prototype.toString.call(e)&&Object.getPrototypeOf(e)===Object.getPrototypeOf({})){var t=getnum(null!=e.r?e.r:null!=e.red?e.red:0,!0),r=getnum(null!=e.g?e.g:null!=e.green?e.green:0,!0),o=getnum(null!=e.b?e.b:null!=e.blue?e.blue:0,!0),n=getnum(null!=e.a?e.a:null!=e.alpha?e.alpha:255,!0);if(-1!=t&&-1!=r&&-1!=o&&-1!=n)return[t,r,o,n]}}function array(e){if(Array.isArray(e)&&(3==e.length||4==e.length)){var t=getnum(e[0],!0),r=getnum(e[1],!0),o=getnum(e[2],!0),n=getnum(null!=e[3]?e[3]:255,!0);if(-1!=t&&-1!=r&&-1!=o&&-1!=n)return[t,r,o,n]}}function number(e){if("number"==typeof e&&Math.floor(e)==e&&e<=4294967295&&e>=0)return[e>>16&255,e>>8&255,255&e,e>>24&255]}function rgb(e){if("rgb("==e.substr(0,4)){var t=(e=e.match(/^rgb\(([^)]+)\)/)[1]).split(/ *, */).map(Number),r=getnum(t[0],!0),o=getnum(t[1],!0),n=getnum(t[2],!0);if(-1!=r&&-1!=o&&-1!=n)return[r,o,n,255]}}function rgba(e){if("rgba("==e.substr(0,5)){var t=(e=e.match(/^rgba\(([^)]+)\)/)[1]).split(/ *, */).map(Number),r=getnum(t[0],!0),o=getnum(t[1],!0),n=getnum(t[2],!0),i=getnum(255*t[3]);if(-1!=r&&-1!=o&&-1!=n&&-1!=i)return[r,o,n,i]}}function isFunction(e){return"function"==typeof e}function createErrorClass(e){const t=e((e=>{Error.call(e),e.stack=(new Error).stack}));return t.prototype=Object.create(Error.prototype),t.prototype.constructor=t,t}rgbaConvert.arr=arr_1,rgbaConvert.obj=obj_1,rgbaConvert.css=css_1,rgbaConvert.hex=hex_1,rgbaConvert.num=num_1;const UnsubscriptionError=createErrorClass((e=>function(t){e(this),this.message=t?`${t.length} errors occurred during unsubscription:\n${t.map(((e,t)=>`${t+1}) ${e.toString()}`)).join("\n ")}`:"",this.name="UnsubscriptionError",this.errors=t}));function arrRemove(e,t){if(e){const r=e.indexOf(t);0<=r&&e.splice(r,1)}}class Subscription{constructor(e){this.initialTeardown=e,this.closed=!1,this._parentage=null,this._finalizers=null}unsubscribe(){let e;if(!this.closed){this.closed=!0;const{_parentage:t}=this;if(t)if(this._parentage=null,Array.isArray(t))for(const e of t)e.remove(this);else t.remove(this);const{initialTeardown:r}=this;if(isFunction(r))try{r()}catch(t){e=t instanceof UnsubscriptionError?t.errors:[t]}const{_finalizers:o}=this;if(o){this._finalizers=null;for(const t of o)try{execFinalizer(t)}catch(t){e=null!=e?e:[],t instanceof UnsubscriptionError?e=[...e,...t.errors]:e.push(t)}}if(e)throw new UnsubscriptionError(e)}}add(e){var t;if(e&&e!==this)if(this.closed)execFinalizer(e);else{if(e instanceof Subscription){if(e.closed||e._hasParent(this))return;e._addParent(this)}(this._finalizers=null!==(t=this._finalizers)&&void 0!==t?t:[]).push(e)}}_hasParent(e){const{_parentage:t}=this;return t===e||Array.isArray(t)&&t.includes(e)}_addParent(e){const{_parentage:t}=this;this._parentage=Array.isArray(t)?(t.push(e),t):t?[t,e]:e}_removeParent(e){const{_parentage:t}=this;t===e?this._parentage=null:Array.isArray(t)&&arrRemove(t,e)}remove(e){const{_finalizers:t}=this;t&&arrRemove(t,e),e instanceof Subscription&&e._removeParent(this)}}Subscription.EMPTY=(()=>{const e=new Subscription;return e.closed=!0,e})();const EMPTY_SUBSCRIPTION=Subscription.EMPTY;function isSubscription(e){return e instanceof Subscription||e&&"closed"in e&&isFunction(e.remove)&&isFunction(e.add)&&isFunction(e.unsubscribe)}function execFinalizer(e){isFunction(e)?e():e.unsubscribe()}const config={onUnhandledError:null,onStoppedNotification:null,Promise:void 0,useDeprecatedSynchronousErrorHandling:!1,useDeprecatedNextContext:!1},timeoutProvider={setTimeout(e,t,...r){const{delegate:o}=timeoutProvider;return(null==o?void 0:o.setTimeout)?o.setTimeout(e,t,...r):setTimeout(e,t,...r)},clearTimeout(e){const{delegate:t}=timeoutProvider;return((null==t?void 0:t.clearTimeout)||clearTimeout)(e)},delegate:void 0};function reportUnhandledError(e){timeoutProvider.setTimeout((()=>{const{onUnhandledError:t}=config;if(!t)throw e;t(e)}))}function noop(){}const COMPLETE_NOTIFICATION=createNotification("C",void 0,void 0);function errorNotification(e){return createNotification("E",void 0,e)}function nextNotification(e){return createNotification("N",e,void 0)}function createNotification(e,t,r){return{kind:e,value:t,error:r}}function errorContext(e){e()}class Subscriber extends Subscription{constructor(e){super(),this.isStopped=!1,e?(this.destination=e,isSubscription(e)&&e.add(this)):this.destination=EMPTY_OBSERVER}static create(e,t,r){return new SafeSubscriber(e,t,r)}next(e){this.isStopped?handleStoppedNotification(nextNotification(e),this):this._next(e)}error(e){this.isStopped?handleStoppedNotification(errorNotification(e),this):(this.isStopped=!0,this._error(e))}complete(){this.isStopped?handleStoppedNotification(COMPLETE_NOTIFICATION,this):(this.isStopped=!0,this._complete())}unsubscribe(){this.closed||(this.isStopped=!0,super.unsubscribe(),this.destination=null)}_next(e){this.destination.next(e)}_error(e){try{this.destination.error(e)}finally{this.unsubscribe()}}_complete(){try{this.destination.complete()}finally{this.unsubscribe()}}}const _bind=Function.prototype.bind;function bind(e,t){return _bind.call(e,t)}class ConsumerObserver{constructor(e){this.partialObserver=e}next(e){const{partialObserver:t}=this;if(t.next)try{t.next(e)}catch(e){handleUnhandledError(e)}}error(e){const{partialObserver:t}=this;if(t.error)try{t.error(e)}catch(e){handleUnhandledError(e)}else handleUnhandledError(e)}complete(){const{partialObserver:e}=this;if(e.complete)try{e.complete()}catch(e){handleUnhandledError(e)}}}class SafeSubscriber extends Subscriber{constructor(e,t,r){let o;if(super(),isFunction(e)||!e)o={next:null!=e?e:void 0,error:null!=t?t:void 0,complete:null!=r?r:void 0};else{let t;this&&config.useDeprecatedNextContext?(t=Object.create(e),t.unsubscribe=()=>this.unsubscribe(),o={next:e.next&&bind(e.next,t),error:e.error&&bind(e.error,t),complete:e.complete&&bind(e.complete,t)}):o=e}this.destination=new ConsumerObserver(o)}}function handleUnhandledError(e){reportUnhandledError(e)}function defaultErrorHandler(e){throw e}function handleStoppedNotification(e,t){const{onStoppedNotification:r}=config;r&&timeoutProvider.setTimeout((()=>r(e,t)))}const EMPTY_OBSERVER={closed:!0,next:noop,error:defaultErrorHandler,complete:noop},observable="function"==typeof Symbol&&Symbol.observable||"@@observable";function identity(e){return e}function pipeFromArray(e){return 0===e.length?identity:1===e.length?e[0]:function(t){return e.reduce(((e,t)=>t(e)),t)}}class Observable{constructor(e){e&&(this._subscribe=e)}lift(e){const t=new Observable;return t.source=this,t.operator=e,t}subscribe(e,t,r){const o=isSubscriber(e)?e:new SafeSubscriber(e,t,r);return errorContext((()=>{const{operator:e,source:t}=this;o.add(e?e.call(o,t):t?this._subscribe(o):this._trySubscribe(o))})),o}_trySubscribe(e){try{return this._subscribe(e)}catch(t){e.error(t)}}forEach(e,t){return new(t=getPromiseCtor(t))(((t,r)=>{const o=new SafeSubscriber({next:t=>{try{e(t)}catch(e){r(e),o.unsubscribe()}},error:r,complete:t});this.subscribe(o)}))}_subscribe(e){var t;return null===(t=this.source)||void 0===t?void 0:t.subscribe(e)}[observable](){return this}pipe(...e){return pipeFromArray(e)(this)}toPromise(e){return new(e=getPromiseCtor(e))(((e,t)=>{let r;this.subscribe((e=>r=e),(e=>t(e)),(()=>e(r)))}))}}function getPromiseCtor(e){var t;return null!==(t=null!=e?e:config.Promise)&&void 0!==t?t:Promise}function isObserver(e){return e&&isFunction(e.next)&&isFunction(e.error)&&isFunction(e.complete)}function isSubscriber(e){return e&&e instanceof Subscriber||isObserver(e)&&isSubscription(e)}Observable.create=e=>new Observable(e);const ObjectUnsubscribedError=createErrorClass((e=>function(){e(this),this.name="ObjectUnsubscribedError",this.message="object unsubscribed"}));class Subject extends Observable{constructor(){super(),this.closed=!1,this.currentObservers=null,this.observers=[],this.isStopped=!1,this.hasError=!1,this.thrownError=null}lift(e){const t=new AnonymousSubject(this,this);return t.operator=e,t}_throwIfClosed(){if(this.closed)throw new ObjectUnsubscribedError}next(e){errorContext((()=>{if(this._throwIfClosed(),!this.isStopped){this.currentObservers||(this.currentObservers=Array.from(this.observers));for(const t of this.currentObservers)t.next(e)}}))}error(e){errorContext((()=>{if(this._throwIfClosed(),!this.isStopped){this.hasError=this.isStopped=!0,this.thrownError=e;const{observers:t}=this;for(;t.length;)t.shift().error(e)}}))}complete(){errorContext((()=>{if(this._throwIfClosed(),!this.isStopped){this.isStopped=!0;const{observers:e}=this;for(;e.length;)e.shift().complete()}}))}unsubscribe(){this.isStopped=this.closed=!0,this.observers=this.currentObservers=null}get observed(){var e;return(null===(e=this.observers)||void 0===e?void 0:e.length)>0}_trySubscribe(e){return this._throwIfClosed(),super._trySubscribe(e)}_subscribe(e){return this._throwIfClosed(),this._checkFinalizedStatuses(e),this._innerSubscribe(e)}_innerSubscribe(e){const{hasError:t,isStopped:r,observers:o}=this;return t||r?EMPTY_SUBSCRIPTION:(this.currentObservers=null,o.push(e),new Subscription((()=>{this.currentObservers=null,arrRemove(o,e)})))}_checkFinalizedStatuses(e){const{hasError:t,thrownError:r,isStopped:o}=this;t?e.error(r):o&&e.complete()}asObservable(){const e=new Observable;return e.source=this,e}}Subject.create=(e,t)=>new AnonymousSubject(e,t);class AnonymousSubject extends Subject{constructor(e,t){super(),this.destination=e,this.source=t}next(e){var t,r;null===(r=null===(t=this.destination)||void 0===t?void 0:t.next)||void 0===r||r.call(t,e)}error(e){var t,r;null===(r=null===(t=this.destination)||void 0===t?void 0:t.error)||void 0===r||r.call(t,e)}complete(){var e,t;null===(t=null===(e=this.destination)||void 0===e?void 0:e.complete)||void 0===t||t.call(e)}_subscribe(e){var t,r;return null!==(r=null===(t=this.source)||void 0===t?void 0:t.subscribe(e))&&void 0!==r?r:EMPTY_SUBSCRIPTION}}var n=.2126,r=.7152,t=.0722,e=1/12.92;function u(e){return Math.pow((e+.055)/1.055,2.4)}function a(o){var i=o[0]/255,s=o[1]/255,a=o[2]/255,c=i<=.03928?i*e:u(i),l=s<=.03928?s*e:u(s),h=a<=.03928?a*e:u(a);return c*n+l*r+h*t}function i(e){var t=255;8===(e=e.replace(/^#/,"")).length&&(t=parseInt(e.slice(6,8),16),e=e.substring(0,6)),4===e.length&&(t=parseInt(e.slice(3,4).repeat(2),16),e=e.substring(0,3)),3===e.length&&(e=e[0]+e[0]+e[1]+e[1]+e[2]+e[2]);var r=parseInt(e,16);return[r>>16,r>>8&255,255&r,t]}function c(e,t){return(Math.max(e,t)+.05)/(Math.min(e,t)+.05)}function o(e,t){return c(a(e),a(t))}function s(e,t){return o(i(e),i(t))}function f(e){return e>=7?"AAA":e>=4.5?"AA":e>=3?"AA Large":"Fail"}const OBJECT_OBJECT=/\[object Object\]/,objectObjectHandler=(e,t)=>{"string"==typeof e&&OBJECT_OBJECT.test(e)||t()},emptyStringByArrayHandler=(e,t)=>{"string"==typeof e&&""===e||t()},setEventTarget=(e,t)=>{getExperimentalMode()&&(Log.debug([e,t]),Log.debug("↑ We propagate the (submit) event to this target.")),Object.defineProperty(e,"target",{value:t,writable:!1})},patchState=e=>{var t,r,o;null===(t=e.nextHooks)||void 0===t||t.forEach(((t,r)=>{var o;const n=t.get("beforePatch");"function"==typeof n&&n(null===(o=e.nextState)||void 0===o?void 0:o.get(r),e.nextState,e,r)})),(null===(r=e.nextState)||void 0===r?void 0:r.size)>0&&(e.state=Object.assign(Object.assign({},e.state),Object.fromEntries(e.nextState)),delete e.nextState,null===(o=e.nextHooks)||void 0===o||o.forEach(((t,r)=>{const o=t.get("afterPatch");"function"==typeof o&&o(e.state[r],e.state,e,r)}))),delete e.nextHooks},setState=(e,t,r,o={})=>{var n,i;if(void 0===e.nextHooks&&(e.nextHooks=new Map),void 0===e.nextState&&(e.nextState=new Map),e.nextState.get(t)!==r){e.nextHooks.get(t)instanceof Map==!1&&e.nextHooks.set(t,new Map),"function"==typeof o.afterPatch&&(null===(n=e.nextHooks.get(t))||void 0===n||n.set("afterPatch",o.afterPatch)),"function"==typeof o.beforePatch&&(null===(i=e.nextHooks.get(t))||void 0===i||i.set("beforePatch",o.beforePatch)),e.nextState.set(t,r),patchState(e)}},logWarn=(e,t,r,o)=>{devHint(`[${e.constructor.name}] Der Property-Wert (${r}) für '${t}' ist nicht valide. Folgende Werte sind erlaubt: ${Array.from(o).join(", ")}`)};function watchValidator(e,t,r,o,n,i={}){r(n)?setState(e,t,n,i.hooks):null!=n||i.required?(i.required||o.add(null),logWarn(e,t,n,o)):setState(e,t,i.defaultValue,i.hooks)}const watchBoolean=(e,t,r,o)=>{watchValidator(e,t,(e=>"boolean"==typeof e),new Set(["Boolean {true, false}"]),r,o)},watchString=(e,t,r,o={})=>{const n="number"==typeof o.minLength?null==o?void 0:o.minLength:0;watchValidator(e,t,(e=>"string"==typeof e&&e.length>=n&&(void 0===(null==o?void 0:o.maxLength)||e.length<=o.maxLength)),new Set(["String"]),r,o)},watchNumber=(e,t,r,o)=>{watchValidator(e,t,(e=>"number"==typeof e&&(void 0===(null==o?void 0:o.min)||"number"==typeof(null==o?void 0:o.min)&&e>=o.min)&&(void 0===(null==o?void 0:o.max)||"number"==typeof(null==o?void 0:o.max)&&e<=o.max)),new Set(["Number"]),r,o)},watchJsonArrayString=(e,t,r,o,n=(e=>e==e),i={})=>{emptyStringByArrayHandler(o,(()=>{objectObjectHandler(o,(()=>{void 0===o&&(o=[]);try{try{o=parseJson(o)}catch(e){}if(Array.isArray(o)){const s=o.find((e=>!r(e)));void 0===s&&n(o)?setState(e,t,o,i.hooks):objectObjectHandler(s,(()=>{throw Log.debug(s),new Error("↑ Das Schema für das Property (_options) ist nicht valide. Der Wert wird nicht geändert.")}))}else objectObjectHandler(o,(()=>{throw Log.debug(o),new Error("↑ Das Schema für das Property (_options) ist nicht valide. Der Wert wird nicht geändert.")}))}catch(e){Log.debug(e)}}))}))},BOOLEAN=/^(true|false)$/,INTEGER=/^-?(0|[1-9]\d*)$/,FLOAT=/^-?(0.|[1-9]\d*.)\d*[1-9]$/,mapString2Unknown=e=>{const t=typeof e,r=`${e}`;if("string"==typeof e)if(BOOLEAN.test(e))e="true"===e;else if(INTEGER.test(e))e=parseInt(e);else if(FLOAT.test(e))e=parseFloat(e);else if(JSON_CHARS.test(e))try{e=parseJson(e)}catch(e){}return t!==typeof e&&devHint(`You have used a stringified property value (${r} to ${JSON.stringify(e)}) which type switched from ${t} to ${typeof e}!`),e},stringifyJson=e=>{try{return JSON.stringify(e).replace(/"/g,"'")}catch(t){throw Log.warn(["stringifyJson",e]),Log.error("↑ Das JSON konnte nicht in einen String umgewandelt werden. Es wird ein stringifizierbares JSON erwartet."),new Error}},JSON_CHARS=/^[{[]/,parseJson=e=>{if("string"==typeof e)try{return JSON.parse(e)}catch(t){if(JSON_CHARS.test(e))try{return JSON.parse(e.replace(/'/g,'"'))}catch(t){Log.warn(["parseJson",e]),Log.error("↑ Der JSON-String konnte nicht geparsed werden. Achten Sie darauf, dass einfache Anführungszeichen im Text maskiert werden (‘).")}}throw new Error},mapBoolean2String=e=>"boolean"==typeof e?!0===e?"true":"false":void 0,mapStringOrBoolean2String=e=>"string"==typeof e?e:mapBoolean2String(e),koliBriQuerySelector=(e,t)=>querySelector(e,t||getDocument()),koliBriQuerySelectorAll=(e,t)=>querySelectorAll(e,t||getDocument());let DEFAULT_COLOR_CONTRAST=null;const getDefaultColorContrast=()=>(DEFAULT_COLOR_CONTRAST=DEFAULT_COLOR_CONTRAST||{backgroundColor:"#00000000",color:"#00000000",domNode:getDocument().body,level:"Fail",score:1},DEFAULT_COLOR_CONTRAST),TRANSPARENT_REGEXP=/(\d+, ){3}0\)/,koliBriA11yColorContrast=(e,t=getDefaultColorContrast())=>{const r=getComputedStyle(e),o=TRANSPARENT_REGEXP.test(r.backgroundColor)?t.backgroundColor:rgbaConvert.hex(r.backgroundColor),n=TRANSPARENT_REGEXP.test(r.color)?t.color:rgbaConvert.hex(r.color),i=s(o,n),a={backgroundColor:o,color:n,domNode:e,level:f(i),score:i};return i<4.5&&Log.error(["Color-Contrast-Error",{backgroundColor:a.backgroundColor,color:a.color,level:a.level,score:a.score},a.domNode]),a},koliBriQuerySelectorColors=(e,t=getDefaultColorContrast())=>{t.domNode instanceof HTMLElement&&(t=koliBriA11yColorContrast(t.domNode,t));const r=t.domNode.querySelector(e);if(null===r){const r=t.domNode.querySelectorAll('[class="hydrated"]');for(let o=0;o<r.length&&(t.domNode=r[o],null===(t=koliBriQuerySelectorColors(e,t)).domNode);o++);return t}return koliBriA11yColorContrast(r,t)};class KoliBriUtils{static queryHtmlElementColors(e,t,r=!1,o=!0){let n=null;if(!0===r||!1===KoliBriUtils.executionLock)if(!1===r&&(KoliBriUtils.cache.clear(),KoliBriUtils.cache.set(t.domNode,t),KoliBriUtils.executionLock=!0,!0===o&&Log.debug("[KoliBriUtils] Color contrast analysis started...")),e===t.domNode)n=t;else{const r=new Set;if(t.domNode.shadowRoot){const e=t.domNode.shadowRoot.children;for(let t=0;t<e.length;t++)r.add(e[t])}const o=t.domNode;if("function"==typeof o.assignedNodes){const e=o.assignedNodes();for(let t=0;t<e.length;t++)e[t]instanceof HTMLElement&&r.add(e[t])}const i=t.domNode.children;for(let e=0;e<i.length;e++)r.add(i[e]);const s=Array.from(r);for(let r=0;r<s.length;r++){let o=KoliBriUtils.cache.get(s[r]);void 0===o&&(o=koliBriA11yColorContrast(s[r],t)),KoliBriUtils.cache.set(s[r],o);const i=KoliBriUtils.queryHtmlElementColors(e,o,!0,!1);if(null!==i){n=i;break}}}else Log.debug("[KoliBriUtils] Call aborted because a color contrast analysis is currently being executed.");return!1===r&&(!0===o&&Log.debug(`[KoliBriUtils] Color contrast analysis finished (${KoliBriUtils.cache.size} DOM elements are analysed).`),KoliBriUtils.executionLock=!1,KoliBriUtils.cache.clear()),n}}KoliBriUtils.executionLock=!1,KoliBriUtils.cache=new Map;const ariaCurrentSubject=new Subject;class KoliBriDevHelper{}KoliBriDevHelper.patchTheme=patchTheme,KoliBriDevHelper.querySelector=koliBriQuerySelector,KoliBriDevHelper.querySelectorAll=koliBriQuerySelectorAll,KoliBriDevHelper.stringifyJson=stringifyJson;export{KoliBriDevHelper as K,watchBoolean as a,s as b,watchJsonArrayString as c,watchString as d,watchNumber as e,setEventTarget as f,emptyStringByArrayHandler as g,ariaCurrentSubject as h,mapBoolean2String as i,mapStringOrBoolean2String as j,koliBriQuerySelector as k,KoliBriUtils as l,mapString2Unknown as m,koliBriA11yColorContrast as n,objectObjectHandler as o,parseJson as p,koliBriQuerySelectorAll as q,rgbaConvert as r,setState as s,koliBriQuerySelectorColors as t,stringifyJson as u,watchValidator as w};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"file":"prop.validators-fa5eb5c5.js","mappings":"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","names":["Symbol_observable","rgba","hex","score"],"sources":["../../node_modules/.pnpm/query-selector-all-shadow-root@0.0.3/node_modules/query-selector-all-shadow-root/esm/index.js","../../node_modules/.pnpm/query-selector-shadow-root@0.0.3/node_modules/query-selector-shadow-root/esm/index.js","../../node_modules/.pnpm/rgba-convert@0.3.0/node_modules/rgba-convert/index.js","../../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/esm/internal/util/isFunction.js","../../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/esm/internal/util/createErrorClass.js","../../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/esm/internal/util/UnsubscriptionError.js","../../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/esm/internal/util/arrRemove.js","../../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/esm/internal/Subscription.js","../../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/esm/internal/config.js","../../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/esm/internal/scheduler/timeoutProvider.js","../../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/esm/internal/util/reportUnhandledError.js","../../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/esm/internal/util/noop.js","../../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/esm/internal/NotificationFactories.js","../../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/esm/internal/util/errorContext.js","../../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/esm/internal/Subscriber.js","../../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/esm/internal/symbol/observable.js","../../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/esm/internal/util/identity.js","../../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/esm/internal/util/pipe.js","../../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/esm/internal/Observable.js","../../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/esm/internal/util/ObjectUnsubscribedError.js","../../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/esm/internal/Subject.js","../../node_modules/.pnpm/wcag-contrast@3.0.0/node_modules/wcag-contrast/dist/index.m.js","src/utils/prop.validators.ts"],"sourcesContent":["const pushNodes = (set, domNodes) => {\n domNodes.forEach((domNode) => {\n if (set.has(domNode) === false) {\n set.add(domNode);\n }\n });\n};\nexport const querySelectorAll = (selector, node = document) => {\n if (node instanceof Document ||\n node instanceof HTMLElement ||\n node instanceof ShadowRoot) {\n const domNodes = new Set();\n pushNodes(domNodes, node.querySelectorAll(selector));\n const nodeList = node.querySelectorAll('[class*=\"hydrated\"]');\n for (let i = 0; i < nodeList.length; i++) {\n const shadowRoot = nodeList[i].shadowRoot;\n if (typeof shadowRoot === \"object\" && shadowRoot !== null) {\n pushNodes(domNodes, querySelectorAll(selector, shadowRoot));\n }\n else {\n pushNodes(domNodes, querySelectorAll(selector, nodeList[i]));\n }\n }\n return Array.from(domNodes);\n }\n else {\n throw new Error(`The parameter document for the method querySelectorAll is not type of Document, HTMLElement or ShadowRoot.`);\n }\n};\n//# sourceMappingURL=index.js.map","export const querySelector = (selector, node = document) => {\n if (node instanceof Document ||\n node instanceof HTMLElement ||\n node instanceof ShadowRoot) {\n let domNode = node.querySelector(selector);\n if (domNode === null) {\n const nodeList = node.querySelectorAll('[class*=\"hydrated\"]');\n for (let i = 0; i < nodeList.length; i++) {\n const shadowRoot = nodeList[i].shadowRoot;\n if (typeof shadowRoot === \"object\" && shadowRoot !== null) {\n domNode = querySelector(selector, shadowRoot);\n }\n else {\n domNode = querySelector(selector, nodeList[i]);\n }\n if (domNode !== null) {\n break;\n }\n }\n }\n return domNode;\n }\n else {\n throw new Error(`The parameter document for the method querySelector is not type of Document, HTMLElement or ShadowRoot.`);\n }\n};\n//# sourceMappingURL=index.js.map","\nmodule.exports = arr\nmodule.exports.arr = arr\nmodule.exports.obj = obj\nmodule.exports.css = css\nmodule.exports.hex = hex\nmodule.exports.num = num\n\nfunction arr(data) {\n var a = parse(data)\n if (a.length == 3) {\n return a.concat(255)\n } else {\n a[3] = Math.round(a[3])\n return a\n }\n}\n\nfunction obj(data) {\n var a = parse(data)\n return {\n r: a[0],\n g: a[1],\n b: a[2],\n a: a.length == 3\n ? 255\n : Math.round(a[3])\n }\n}\n\nfunction css(data) {\n var a = parse(data)\n if (a.length == 3) a.push(255)\n\n return a[3] == 255\n ? 'rgb(' + a[0] + ', ' + a[1] + ', ' + a[2] + ')'\n : a[3] == 0\n ? 'rgba(' + a[0] + ', ' + a[1] + ', ' + a[2] + ', 0)'\n : 'rgba(' + a[0] + ', ' + a[1] + ', ' + a[2] + ', ' + String(a[3] / 255).substr(1) + ')'\n}\n\nfunction hex(data) {\n var a = parse(data)\n if (a.length == 3) a.push(255)\n var opaque = a[3] == 255\n var r = num2hex(a[0])\n var g = num2hex(a[1])\n var b = num2hex(a[2])\n var a = num2hex(Math.round(a[3]))\n var is = isshort(r, g, b, a)\n if (opaque) {\n return is\n ? '#' + r.charAt(0) + g.charAt(0) + b.charAt(0)\n : '#' + r + g + b\n }\n return is\n ? '#' + r.charAt(0) + g.charAt(0) + b.charAt(0) + a.charAt(0)\n : '#' + r + g + b + a\n}\n\nfunction num(data) {\n var a = parse(data)\n if (a.length == 3) a.push(255)\n else a[3] = Math.round(a[3])\n return ((a[3] << 24) >>> 0 | a[0] << 16 | a[1] << 8 | a[2]) >>> 0\n}\n\nfunction parse(data) {\n if (typeof data == 'string') {\n data = data.toLowerCase()\n return name(data)\n || hex3(data)\n || hex6(data)\n || rgb(data)\n || rgba(data)\n || [0, 0, 0, 255]\n }\n return object(data)\n || array(data)\n || number(data)\n || [0, 0, 0, 255]\n}\n\nfunction num2hex(num) {\n var s = num.toString(16)\n return s.length == 1\n ? '0' + s\n : s\n}\n\nfunction isshort(r, g, b, a) {\n var h = ['ff', '00', '11', '22', '33', '44', '55', '66',\n '77', '88', '99', 'aa', 'bb', 'cc', 'dd', 'ee']\n return h.indexOf(r) != -1\n && h.indexOf(g) != -1\n && h.indexOf(b) != -1\n && h.indexOf(a) != -1\n}\n\nfunction name(str) {\n if (str == 'red') return [255, 0, 0]\n if (str == 'green') return [0, 255, 0]\n if (str == 'blue') return [0, 0, 255]\n if (str == 'black') return [0, 0, 0]\n if (str == 'white') return [255, 255, 255]\n if (str == 'cyan') return [0, 255, 255]\n if (str == 'gray') return [128, 128, 128]\n if (str == 'grey') return [128, 128, 128]\n if (str == 'magenta') return [255, 0, 255]\n // ok, not the real css `pink` but my personal `magenta` alias\n // `pink` is simpler than `fuchsia`, whatever...\n if (str == 'pink') return [255, 0, 255]\n if (str == 'yellow') return [255, 255, 0]\n}\n\nfunction hex2num(str) {\n return str.length == 1\n ? parseInt(str + str, 16)\n : parseInt(str, 16)\n}\n\nfunction hex3(str) {\n var s = str.replace(/^#/,'')\n var l = s.length\n if (l == 3 || l == 4) {\n var r = hex2num(s[0])\n var g = hex2num(s[1])\n var b = hex2num(s[2])\n var a = l == 3\n ? 255\n : hex2num(s[3])\n\n if (isNaN(r) || isNaN(g) || isNaN(b) || isNaN(a)) return\n\n return [r, g, b, a]\n }\n}\n\nfunction hex6(str) {\n var s = str.replace(/^#/,'')\n var l = s.length\n if (l == 6 || l == 8) {\n var r = hex2num(s.slice(0, 2))\n var g = hex2num(s.slice(2, 4))\n var b = hex2num(s.slice(4, 6))\n var a = l == 6\n ? 255\n : hex2num(s.slice(6, 8))\n\n if (isNaN(r) || isNaN(g) || isNaN(b) || isNaN(a)) return\n\n return [r, g, b, a]\n }\n}\n\nfunction getnum(val, integer) {\n if (typeof val != 'number') return -1\n if (integer === true && Math.floor(val) !== val) return -1\n return val >= 0 && val <= 255\n ? val\n : -1\n}\n\nfunction object(obj) {\n if (Object.prototype.toString.call(obj) === '[object Object]'\n && Object.getPrototypeOf(obj) === Object.getPrototypeOf({})) {\n var r = getnum(obj.r != undefined ? obj.r : obj.red != undefined ? obj.red : 0, true)\n var g = getnum(obj.g != undefined ? obj.g : obj.green != undefined ? obj.green : 0, true)\n var b = getnum(obj.b != undefined ? obj.b : obj.blue != undefined ? obj.blue : 0, true)\n var a = getnum(obj.a != undefined ? obj.a : obj.alpha != undefined ? obj.alpha : 255, true)\n if (r != -1 && g != -1 && b != -1 && a != -1) {\n return [r, g, b, a]\n }\n }\n}\n\nfunction array(arr) {\n if (Array.isArray(arr) && (arr.length == 3 || arr.length == 4)) {\n var r = getnum(arr[0], true)\n var g = getnum(arr[1], true)\n var b = getnum(arr[2], true)\n var a = getnum(arr[3] != undefined ? arr[3] : 255, true)\n if (r != -1 && g != -1 && b != -1 && a != -1) {\n return [r, g, b, a]\n }\n }\n}\n\nfunction number(num) {\n if (typeof num == 'number' && Math.floor(num) == num && num <= 4294967295 && num >= 0) {\n var a = num >> 24 & 255\n var r = num >> 16 & 255\n var g = num >> 8 & 255\n var b = num & 255\n return [r, g, b, a]\n }\n}\n\nfunction rgb(str) {\n if (str.substr(0, 4) == 'rgb(') {\n str = str.match(/^rgb\\(([^)]+)\\)/)[1]\n var t = str.split(/ *, */).map(Number)\n var r = getnum(t[0], true)\n var g = getnum(t[1], true)\n var b = getnum(t[2], true)\n if (r != -1 && g != -1 && b != -1) {\n return [r, g, b, 255]\n }\n }\n}\n\nfunction rgba(str) {\n if (str.substr(0, 5) == 'rgba(') {\n str = str.match(/^rgba\\(([^)]+)\\)/)[1]\n var t = str.split(/ *, */).map(Number)\n var r = getnum(t[0], true)\n var g = getnum(t[1], true)\n var b = getnum(t[2], true)\n var a = getnum(t[3] * 255)\n if (r != -1 && g != -1 && b != -1 && a != -1) {\n return [r, g, b, a]\n }\n }\n}\n","export function isFunction(value) {\n return typeof value === 'function';\n}\n//# sourceMappingURL=isFunction.js.map","export function createErrorClass(createImpl) {\n const _super = (instance) => {\n Error.call(instance);\n instance.stack = new Error().stack;\n };\n const ctorFunc = createImpl(_super);\n ctorFunc.prototype = Object.create(Error.prototype);\n ctorFunc.prototype.constructor = ctorFunc;\n return ctorFunc;\n}\n//# sourceMappingURL=createErrorClass.js.map","import { createErrorClass } from './createErrorClass';\nexport const UnsubscriptionError = createErrorClass((_super) => function UnsubscriptionErrorImpl(errors) {\n _super(this);\n this.message = errors\n ? `${errors.length} errors occurred during unsubscription:\n${errors.map((err, i) => `${i + 1}) ${err.toString()}`).join('\\n ')}`\n : '';\n this.name = 'UnsubscriptionError';\n this.errors = errors;\n});\n//# sourceMappingURL=UnsubscriptionError.js.map","export function arrRemove(arr, item) {\n if (arr) {\n const index = arr.indexOf(item);\n 0 <= index && arr.splice(index, 1);\n }\n}\n//# sourceMappingURL=arrRemove.js.map","import { isFunction } from './util/isFunction';\nimport { UnsubscriptionError } from './util/UnsubscriptionError';\nimport { arrRemove } from './util/arrRemove';\nexport class Subscription {\n constructor(initialTeardown) {\n this.initialTeardown = initialTeardown;\n this.closed = false;\n this._parentage = null;\n this._finalizers = null;\n }\n unsubscribe() {\n let errors;\n if (!this.closed) {\n this.closed = true;\n const { _parentage } = this;\n if (_parentage) {\n this._parentage = null;\n if (Array.isArray(_parentage)) {\n for (const parent of _parentage) {\n parent.remove(this);\n }\n }\n else {\n _parentage.remove(this);\n }\n }\n const { initialTeardown: initialFinalizer } = this;\n if (isFunction(initialFinalizer)) {\n try {\n initialFinalizer();\n }\n catch (e) {\n errors = e instanceof UnsubscriptionError ? e.errors : [e];\n }\n }\n const { _finalizers } = this;\n if (_finalizers) {\n this._finalizers = null;\n for (const finalizer of _finalizers) {\n try {\n execFinalizer(finalizer);\n }\n catch (err) {\n errors = errors !== null && errors !== void 0 ? errors : [];\n if (err instanceof UnsubscriptionError) {\n errors = [...errors, ...err.errors];\n }\n else {\n errors.push(err);\n }\n }\n }\n }\n if (errors) {\n throw new UnsubscriptionError(errors);\n }\n }\n }\n add(teardown) {\n var _a;\n if (teardown && teardown !== this) {\n if (this.closed) {\n execFinalizer(teardown);\n }\n else {\n if (teardown instanceof Subscription) {\n if (teardown.closed || teardown._hasParent(this)) {\n return;\n }\n teardown._addParent(this);\n }\n (this._finalizers = (_a = this._finalizers) !== null && _a !== void 0 ? _a : []).push(teardown);\n }\n }\n }\n _hasParent(parent) {\n const { _parentage } = this;\n return _parentage === parent || (Array.isArray(_parentage) && _parentage.includes(parent));\n }\n _addParent(parent) {\n const { _parentage } = this;\n this._parentage = Array.isArray(_parentage) ? (_parentage.push(parent), _parentage) : _parentage ? [_parentage, parent] : parent;\n }\n _removeParent(parent) {\n const { _parentage } = this;\n if (_parentage === parent) {\n this._parentage = null;\n }\n else if (Array.isArray(_parentage)) {\n arrRemove(_parentage, parent);\n }\n }\n remove(teardown) {\n const { _finalizers } = this;\n _finalizers && arrRemove(_finalizers, teardown);\n if (teardown instanceof Subscription) {\n teardown._removeParent(this);\n }\n }\n}\nSubscription.EMPTY = (() => {\n const empty = new Subscription();\n empty.closed = true;\n return empty;\n})();\nexport const EMPTY_SUBSCRIPTION = Subscription.EMPTY;\nexport function isSubscription(value) {\n return (value instanceof Subscription ||\n (value && 'closed' in value && isFunction(value.remove) && isFunction(value.add) && isFunction(value.unsubscribe)));\n}\nfunction execFinalizer(finalizer) {\n if (isFunction(finalizer)) {\n finalizer();\n }\n else {\n finalizer.unsubscribe();\n }\n}\n//# sourceMappingURL=Subscription.js.map","export const config = {\n onUnhandledError: null,\n onStoppedNotification: null,\n Promise: undefined,\n useDeprecatedSynchronousErrorHandling: false,\n useDeprecatedNextContext: false,\n};\n//# sourceMappingURL=config.js.map","export const timeoutProvider = {\n setTimeout(handler, timeout, ...args) {\n const { delegate } = timeoutProvider;\n if (delegate === null || delegate === void 0 ? void 0 : delegate.setTimeout) {\n return delegate.setTimeout(handler, timeout, ...args);\n }\n return setTimeout(handler, timeout, ...args);\n },\n clearTimeout(handle) {\n const { delegate } = timeoutProvider;\n return ((delegate === null || delegate === void 0 ? void 0 : delegate.clearTimeout) || clearTimeout)(handle);\n },\n delegate: undefined,\n};\n//# sourceMappingURL=timeoutProvider.js.map","import { config } from '../config';\nimport { timeoutProvider } from '../scheduler/timeoutProvider';\nexport function reportUnhandledError(err) {\n timeoutProvider.setTimeout(() => {\n const { onUnhandledError } = config;\n if (onUnhandledError) {\n onUnhandledError(err);\n }\n else {\n throw err;\n }\n });\n}\n//# sourceMappingURL=reportUnhandledError.js.map","export function noop() { }\n//# sourceMappingURL=noop.js.map","export const COMPLETE_NOTIFICATION = (() => createNotification('C', undefined, undefined))();\nexport function errorNotification(error) {\n return createNotification('E', undefined, error);\n}\nexport function nextNotification(value) {\n return createNotification('N', value, undefined);\n}\nexport function createNotification(kind, value, error) {\n return {\n kind,\n value,\n error,\n };\n}\n//# sourceMappingURL=NotificationFactories.js.map","import { config } from '../config';\nlet context = null;\nexport function errorContext(cb) {\n if (config.useDeprecatedSynchronousErrorHandling) {\n const isRoot = !context;\n if (isRoot) {\n context = { errorThrown: false, error: null };\n }\n cb();\n if (isRoot) {\n const { errorThrown, error } = context;\n context = null;\n if (errorThrown) {\n throw error;\n }\n }\n }\n else {\n cb();\n }\n}\nexport function captureError(err) {\n if (config.useDeprecatedSynchronousErrorHandling && context) {\n context.errorThrown = true;\n context.error = err;\n }\n}\n//# sourceMappingURL=errorContext.js.map","import { isFunction } from './util/isFunction';\nimport { isSubscription, Subscription } from './Subscription';\nimport { config } from './config';\nimport { reportUnhandledError } from './util/reportUnhandledError';\nimport { noop } from './util/noop';\nimport { nextNotification, errorNotification, COMPLETE_NOTIFICATION } from './NotificationFactories';\nimport { timeoutProvider } from './scheduler/timeoutProvider';\nimport { captureError } from './util/errorContext';\nexport class Subscriber extends Subscription {\n constructor(destination) {\n super();\n this.isStopped = false;\n if (destination) {\n this.destination = destination;\n if (isSubscription(destination)) {\n destination.add(this);\n }\n }\n else {\n this.destination = EMPTY_OBSERVER;\n }\n }\n static create(next, error, complete) {\n return new SafeSubscriber(next, error, complete);\n }\n next(value) {\n if (this.isStopped) {\n handleStoppedNotification(nextNotification(value), this);\n }\n else {\n this._next(value);\n }\n }\n error(err) {\n if (this.isStopped) {\n handleStoppedNotification(errorNotification(err), this);\n }\n else {\n this.isStopped = true;\n this._error(err);\n }\n }\n complete() {\n if (this.isStopped) {\n handleStoppedNotification(COMPLETE_NOTIFICATION, this);\n }\n else {\n this.isStopped = true;\n this._complete();\n }\n }\n unsubscribe() {\n if (!this.closed) {\n this.isStopped = true;\n super.unsubscribe();\n this.destination = null;\n }\n }\n _next(value) {\n this.destination.next(value);\n }\n _error(err) {\n try {\n this.destination.error(err);\n }\n finally {\n this.unsubscribe();\n }\n }\n _complete() {\n try {\n this.destination.complete();\n }\n finally {\n this.unsubscribe();\n }\n }\n}\nconst _bind = Function.prototype.bind;\nfunction bind(fn, thisArg) {\n return _bind.call(fn, thisArg);\n}\nclass ConsumerObserver {\n constructor(partialObserver) {\n this.partialObserver = partialObserver;\n }\n next(value) {\n const { partialObserver } = this;\n if (partialObserver.next) {\n try {\n partialObserver.next(value);\n }\n catch (error) {\n handleUnhandledError(error);\n }\n }\n }\n error(err) {\n const { partialObserver } = this;\n if (partialObserver.error) {\n try {\n partialObserver.error(err);\n }\n catch (error) {\n handleUnhandledError(error);\n }\n }\n else {\n handleUnhandledError(err);\n }\n }\n complete() {\n const { partialObserver } = this;\n if (partialObserver.complete) {\n try {\n partialObserver.complete();\n }\n catch (error) {\n handleUnhandledError(error);\n }\n }\n }\n}\nexport class SafeSubscriber extends Subscriber {\n constructor(observerOrNext, error, complete) {\n super();\n let partialObserver;\n if (isFunction(observerOrNext) || !observerOrNext) {\n partialObserver = {\n next: (observerOrNext !== null && observerOrNext !== void 0 ? observerOrNext : undefined),\n error: error !== null && error !== void 0 ? error : undefined,\n complete: complete !== null && complete !== void 0 ? complete : undefined,\n };\n }\n else {\n let context;\n if (this && config.useDeprecatedNextContext) {\n context = Object.create(observerOrNext);\n context.unsubscribe = () => this.unsubscribe();\n partialObserver = {\n next: observerOrNext.next && bind(observerOrNext.next, context),\n error: observerOrNext.error && bind(observerOrNext.error, context),\n complete: observerOrNext.complete && bind(observerOrNext.complete, context),\n };\n }\n else {\n partialObserver = observerOrNext;\n }\n }\n this.destination = new ConsumerObserver(partialObserver);\n }\n}\nfunction handleUnhandledError(error) {\n if (config.useDeprecatedSynchronousErrorHandling) {\n captureError(error);\n }\n else {\n reportUnhandledError(error);\n }\n}\nfunction defaultErrorHandler(err) {\n throw err;\n}\nfunction handleStoppedNotification(notification, subscriber) {\n const { onStoppedNotification } = config;\n onStoppedNotification && timeoutProvider.setTimeout(() => onStoppedNotification(notification, subscriber));\n}\nexport const EMPTY_OBSERVER = {\n closed: true,\n next: noop,\n error: defaultErrorHandler,\n complete: noop,\n};\n//# sourceMappingURL=Subscriber.js.map","export const observable = (() => (typeof Symbol === 'function' && Symbol.observable) || '@@observable')();\n//# sourceMappingURL=observable.js.map","export function identity(x) {\n return x;\n}\n//# sourceMappingURL=identity.js.map","import { identity } from './identity';\nexport function pipe(...fns) {\n return pipeFromArray(fns);\n}\nexport function pipeFromArray(fns) {\n if (fns.length === 0) {\n return identity;\n }\n if (fns.length === 1) {\n return fns[0];\n }\n return function piped(input) {\n return fns.reduce((prev, fn) => fn(prev), input);\n };\n}\n//# sourceMappingURL=pipe.js.map","import { SafeSubscriber, Subscriber } from './Subscriber';\nimport { isSubscription } from './Subscription';\nimport { observable as Symbol_observable } from './symbol/observable';\nimport { pipeFromArray } from './util/pipe';\nimport { config } from './config';\nimport { isFunction } from './util/isFunction';\nimport { errorContext } from './util/errorContext';\nexport class Observable {\n constructor(subscribe) {\n if (subscribe) {\n this._subscribe = subscribe;\n }\n }\n lift(operator) {\n const observable = new Observable();\n observable.source = this;\n observable.operator = operator;\n return observable;\n }\n subscribe(observerOrNext, error, complete) {\n const subscriber = isSubscriber(observerOrNext) ? observerOrNext : new SafeSubscriber(observerOrNext, error, complete);\n errorContext(() => {\n const { operator, source } = this;\n subscriber.add(operator\n ?\n operator.call(subscriber, source)\n : source\n ?\n this._subscribe(subscriber)\n :\n this._trySubscribe(subscriber));\n });\n return subscriber;\n }\n _trySubscribe(sink) {\n try {\n return this._subscribe(sink);\n }\n catch (err) {\n sink.error(err);\n }\n }\n forEach(next, promiseCtor) {\n promiseCtor = getPromiseCtor(promiseCtor);\n return new promiseCtor((resolve, reject) => {\n const subscriber = new SafeSubscriber({\n next: (value) => {\n try {\n next(value);\n }\n catch (err) {\n reject(err);\n subscriber.unsubscribe();\n }\n },\n error: reject,\n complete: resolve,\n });\n this.subscribe(subscriber);\n });\n }\n _subscribe(subscriber) {\n var _a;\n return (_a = this.source) === null || _a === void 0 ? void 0 : _a.subscribe(subscriber);\n }\n [Symbol_observable]() {\n return this;\n }\n pipe(...operations) {\n return pipeFromArray(operations)(this);\n }\n toPromise(promiseCtor) {\n promiseCtor = getPromiseCtor(promiseCtor);\n return new promiseCtor((resolve, reject) => {\n let value;\n this.subscribe((x) => (value = x), (err) => reject(err), () => resolve(value));\n });\n }\n}\nObservable.create = (subscribe) => {\n return new Observable(subscribe);\n};\nfunction getPromiseCtor(promiseCtor) {\n var _a;\n return (_a = promiseCtor !== null && promiseCtor !== void 0 ? promiseCtor : config.Promise) !== null && _a !== void 0 ? _a : Promise;\n}\nfunction isObserver(value) {\n return value && isFunction(value.next) && isFunction(value.error) && isFunction(value.complete);\n}\nfunction isSubscriber(value) {\n return (value && value instanceof Subscriber) || (isObserver(value) && isSubscription(value));\n}\n//# sourceMappingURL=Observable.js.map","import { createErrorClass } from './createErrorClass';\nexport const ObjectUnsubscribedError = createErrorClass((_super) => function ObjectUnsubscribedErrorImpl() {\n _super(this);\n this.name = 'ObjectUnsubscribedError';\n this.message = 'object unsubscribed';\n});\n//# sourceMappingURL=ObjectUnsubscribedError.js.map","import { Observable } from './Observable';\nimport { Subscription, EMPTY_SUBSCRIPTION } from './Subscription';\nimport { ObjectUnsubscribedError } from './util/ObjectUnsubscribedError';\nimport { arrRemove } from './util/arrRemove';\nimport { errorContext } from './util/errorContext';\nexport class Subject extends Observable {\n constructor() {\n super();\n this.closed = false;\n this.currentObservers = null;\n this.observers = [];\n this.isStopped = false;\n this.hasError = false;\n this.thrownError = null;\n }\n lift(operator) {\n const subject = new AnonymousSubject(this, this);\n subject.operator = operator;\n return subject;\n }\n _throwIfClosed() {\n if (this.closed) {\n throw new ObjectUnsubscribedError();\n }\n }\n next(value) {\n errorContext(() => {\n this._throwIfClosed();\n if (!this.isStopped) {\n if (!this.currentObservers) {\n this.currentObservers = Array.from(this.observers);\n }\n for (const observer of this.currentObservers) {\n observer.next(value);\n }\n }\n });\n }\n error(err) {\n errorContext(() => {\n this._throwIfClosed();\n if (!this.isStopped) {\n this.hasError = this.isStopped = true;\n this.thrownError = err;\n const { observers } = this;\n while (observers.length) {\n observers.shift().error(err);\n }\n }\n });\n }\n complete() {\n errorContext(() => {\n this._throwIfClosed();\n if (!this.isStopped) {\n this.isStopped = true;\n const { observers } = this;\n while (observers.length) {\n observers.shift().complete();\n }\n }\n });\n }\n unsubscribe() {\n this.isStopped = this.closed = true;\n this.observers = this.currentObservers = null;\n }\n get observed() {\n var _a;\n return ((_a = this.observers) === null || _a === void 0 ? void 0 : _a.length) > 0;\n }\n _trySubscribe(subscriber) {\n this._throwIfClosed();\n return super._trySubscribe(subscriber);\n }\n _subscribe(subscriber) {\n this._throwIfClosed();\n this._checkFinalizedStatuses(subscriber);\n return this._innerSubscribe(subscriber);\n }\n _innerSubscribe(subscriber) {\n const { hasError, isStopped, observers } = this;\n if (hasError || isStopped) {\n return EMPTY_SUBSCRIPTION;\n }\n this.currentObservers = null;\n observers.push(subscriber);\n return new Subscription(() => {\n this.currentObservers = null;\n arrRemove(observers, subscriber);\n });\n }\n _checkFinalizedStatuses(subscriber) {\n const { hasError, thrownError, isStopped } = this;\n if (hasError) {\n subscriber.error(thrownError);\n }\n else if (isStopped) {\n subscriber.complete();\n }\n }\n asObservable() {\n const observable = new Observable();\n observable.source = this;\n return observable;\n }\n}\nSubject.create = (destination, source) => {\n return new AnonymousSubject(destination, source);\n};\nexport class AnonymousSubject extends Subject {\n constructor(destination, source) {\n super();\n this.destination = destination;\n this.source = source;\n }\n next(value) {\n var _a, _b;\n (_b = (_a = this.destination) === null || _a === void 0 ? void 0 : _a.next) === null || _b === void 0 ? void 0 : _b.call(_a, value);\n }\n error(err) {\n var _a, _b;\n (_b = (_a = this.destination) === null || _a === void 0 ? void 0 : _a.error) === null || _b === void 0 ? void 0 : _b.call(_a, err);\n }\n complete() {\n var _a, _b;\n (_b = (_a = this.destination) === null || _a === void 0 ? void 0 : _a.complete) === null || _b === void 0 ? void 0 : _b.call(_a);\n }\n _subscribe(subscriber) {\n var _a, _b;\n return (_b = (_a = this.source) === null || _a === void 0 ? void 0 : _a.subscribe(subscriber)) !== null && _b !== void 0 ? _b : EMPTY_SUBSCRIPTION;\n }\n}\n//# sourceMappingURL=Subject.js.map","var n=.2126,r=.7152,t=.0722,e=1/12.92;function u(n){return Math.pow((n+.055)/1.055,2.4)}function a(a){var i=a[0]/255,c=a[1]/255,o=a[2]/255,s=i<=.03928?i*e:u(i),f=c<=.03928?c*e:u(c),l=o<=.03928?o*e:u(o);return s*n+f*r+l*t}function i(n){var r=255;8===(n=n.replace(/^#/,\"\")).length&&(r=parseInt(n.slice(6,8),16),n=n.substring(0,6)),4===n.length&&(r=parseInt(n.slice(3,4).repeat(2),16),n=n.substring(0,3)),3===n.length&&(n=n[0]+n[0]+n[1]+n[1]+n[2]+n[2]);var t=parseInt(n,16);return[t>>16,t>>8&255,255&t,r]}function c(n,r){return(Math.max(n,r)+.05)/(Math.min(n,r)+.05)}function o(n,r){return c(a(n),a(r))}function s(n,r){return o(i(n),i(r))}function f(n){return n>=7?\"AAA\":n>=4.5?\"AA\":n>=3?\"AA Large\":\"Fail\"}export{c as luminance,o as rgb,s as hex,f as score};\n//# sourceMappingURL=index.m.js.map\n","import { querySelectorAll } from 'query-selector-all-shadow-root';\nimport { querySelector } from 'query-selector-shadow-root';\nimport rgba from 'rgba-convert';\nimport { Subject } from 'rxjs';\nimport { hex, score } from 'wcag-contrast';\n\nimport { Generic, patchTheme } from '@a11y-ui/core';\n\nimport { Stringified } from '../types/common';\nimport { AriaCurrentPropType } from '../types/props/aria-current';\nimport { PropHref } from '../types/props/href';\nimport { StencilUnknown } from '../types/unknown';\nimport { devHint } from './a11y.tipps';\nimport { getDocument, getExperimentalMode, Log } from './dev.utils';\n\n// https://regex101.com/r/lSYLO9/1\n/**\n * Bei Stencil kann es vorkommen, dass bei der Übergabe eines komplexer Objekte\n * der String \"[object Object]\" an die Web Component übergeben wird. Um den Neben-\n * effekt abzufangen, wird dieser Fall abgefangen und nicht ausgeführt.\n */\nconst OBJECT_OBJECT = /\\[object Object\\]/;\nexport const objectObjectHandler = (value: unknown, cb: () => void): void => {\n\tif (typeof value === 'string' && OBJECT_OBJECT.test(value)) {\n\t\treturn;\n\t}\n\tcb();\n};\n\n/**\n * Bei Stencil kann es vorkommen, dass bei der Übergabe eines leeren Array's\n * ein leerer String an die Web Component übergeben wird. Um den Nebeneffekt\n * abzufangen, wird dieser Fall abgefangen und nicht ausgeführt.\n */\nexport const emptyStringByArrayHandler = (value: unknown, cb: () => void): void => {\n\tif (typeof value === 'string' && value === '') {\n\t\treturn;\n\t}\n\tcb();\n};\n\n/**\n * Bei interaktiven HTML-Elementen kommt es vor, dass der Event an einem nicht\n * interaktiven HTML-Element \"lostriggert\" und dann den DOM-Baum hoch propagiert.\n * Zu unterschiedlichen Zeitpunkten sind an dem einen Event somit immer unterschiedliche\n * HTML-Elemente.\n * Damit wir das \"richtige\" interaktive HTML-Element an das Event binden, setzen\n * wir das Target explizit und stoppen die Propagation.\n */\nexport const setEventTarget = (event: Event, target?: HTMLElement): void => {\n\tif (getExperimentalMode()) {\n\t\tLog.debug([event, target]);\n\t\tLog.debug(`↑ We propagate the (submit) event to this target.`);\n\t}\n\tObject.defineProperty(event, 'target', {\n\t\tvalue: target,\n\t\twritable: false,\n\t});\n};\n\nconst patchState = (component: Generic.Element.Component): void => {\n\tcomponent.nextHooks?.forEach((hooks, key) => {\n\t\tconst beforePatch = hooks.get('beforePatch') as Generic.Element.NextStateHooksCallback;\n\t\tif (typeof beforePatch === 'function') {\n\t\t\tbeforePatch(component.nextState?.get(key), component.nextState as Map<string, unknown>, component, key);\n\t\t}\n\t});\n\t/**\n\t * Wenn in beforePatch Methoden die Änderung verworfen wird,\n\t * muss auch nicht der State aktualisiert und neu gerendert\n\t * werden.\n\t */\n\tif ((component.nextState as Map<string, unknown>)?.size > 0) {\n\t\tcomponent.state = {\n\t\t\t...component.state,\n\t\t\t...Object.fromEntries(component.nextState as Map<string, unknown>),\n\t\t};\n\t\tdelete component.nextState;\n\n\t\tcomponent.nextHooks?.forEach((hooks, key) => {\n\t\t\tconst afterPatch = hooks.get('afterPatch') as Generic.Element.StateHooksCallback;\n\t\t\tif (typeof afterPatch === 'function') {\n\t\t\t\tafterPatch(component.state[key], component.state, component, key);\n\t\t\t}\n\t\t});\n\t}\n\tdelete component.nextHooks;\n};\n\ntype SetStateHooks = {\n\tafterPatch?: Generic.Element.StateHooksCallback;\n\tbeforePatch?: Generic.Element.NextStateHooksCallback;\n};\n\nexport const setState = <T>(component: Generic.Element.Component, propName: string, value?: T | null | undefined, hooks: SetStateHooks = {}): void => {\n\tif (component.nextHooks === undefined) {\n\t\tcomponent.nextHooks = new Map();\n\t}\n\tif (component.nextState === undefined) {\n\t\tcomponent.nextState = new Map();\n\t}\n\tif (component.nextState.get(propName) !== value) {\n\t\tconst nextHooks = component.nextHooks.get(propName);\n\t\tif (nextHooks instanceof Map === false) {\n\t\t\tcomponent.nextHooks.set(propName, new Map());\n\t\t}\n\t\tif (typeof hooks.afterPatch === 'function') {\n\t\t\tcomponent.nextHooks.get(propName)?.set('afterPatch', hooks.afterPatch);\n\t\t}\n\t\tif (typeof hooks.beforePatch === 'function') {\n\t\t\tcomponent.nextHooks.get(propName)?.set('beforePatch', hooks.beforePatch);\n\t\t}\n\t\tcomponent.nextState.set(propName, value);\n\t\t/**\n\t\t * Muss erstmal in sync bleiben, da sonst der\n\t\t * Tooltip nicht korrekt ausgerichtet wird.\n\t\t */\n\t\t// if (component.hydrated === true || processEnv !== 'test') {\n\t\t// clearTimeout(component.timeout as NodeJS.Timeout);\n\t\t// component.timeout = setTimeout(() => {\n\t\t// \tclearTimeout(component.timeout as NodeJS.Timeout);\n\t\t// \tpatchState(component);\n\t\t// }, 50);\n\t\t// } else {\n\t\tpatchState(component);\n\t\t// }\n\t}\n};\n\nconst logWarn = (component: Generic.Element.Component, propName: string, value: unknown, requiredGeneric: Set<string | null | undefined>): void => {\n\tdevHint(\n\t\t`[${component.constructor.name}] Der Property-Wert (${value as string}) für '${propName}' ist nicht valide. Folgende Werte sind erlaubt: ${Array.from(\n\t\t\trequiredGeneric\n\t\t).join(', ')}`\n\t);\n};\n\nexport type WatchOptions = {\n\tdefaultValue?: unknown;\n\thooks?: SetStateHooks;\n\trequired?: boolean;\n};\n\nexport type WatchBooleanOptions = WatchOptions & {\n\tdefaultValue?: boolean | null;\n};\n\nexport type WatchStringOptions = WatchOptions & {\n\tdefaultValue?: string | null;\n\tmaxLength?: number;\n\tminLength?: number;\n};\n\nexport type WatchNumberOptions = WatchOptions & {\n\tdefaultValue?: number | null;\n\tmin?: number;\n\tmax?: number;\n};\n\nexport function watchValidator<T>(\n\tcomponent: Generic.Element.Component,\n\tpropName: string,\n\tvalidationFunction: (value?: T) => boolean,\n\trequiredGeneric: Set<string | null | undefined>,\n\tvalue?: T,\n\toptions: WatchOptions = {}\n): void {\n\tif (validationFunction(value)) {\n\t\t/**\n\t\t * Triff zu, wenn der Wert VALIDE ist.\n\t\t */\n\t\tsetState(component, propName, value, options.hooks);\n\t} else if ((value === undefined || value === null) && !options.required) {\n\t\t/**\n\t\t * Triff zu, wenn der Wert entweder ...\n\t\t * - UNDEFINED oder NULL\n\t\t * - und NICHT REQUIRED\n\t\t * ... ist.\n\t\t */\n\t\tsetState(component, propName, options.defaultValue, options.hooks);\n\t} else {\n\t\t/**\n\t\t * Triff zu, wenn der Wert NICHT valide ist.\n\t\t */\n\t\tif (!options.required) {\n\t\t\trequiredGeneric.add(null);\n\t\t}\n\t\tlogWarn(component, propName, value, requiredGeneric);\n\t}\n}\n\nexport const watchBoolean = (component: Generic.Element.Component, propName: string, value?: boolean, options?: WatchBooleanOptions): void => {\n\twatchValidator(component, propName, (value): boolean => typeof value === 'boolean', new Set(['Boolean {true, false}']), value, options);\n};\n\nexport const watchString = (component: Generic.Element.Component, propName: string, value?: string, options: WatchStringOptions = {}): void => {\n\tconst minLength = typeof options.minLength === 'number' ? options?.minLength : 0;\n\twatchValidator(\n\t\tcomponent,\n\t\tpropName,\n\t\t(value): boolean =>\n\t\t\ttypeof value === 'string' && value.length >= minLength && (typeof options?.maxLength === 'undefined' || value.length <= options.maxLength),\n\t\tnew Set([`String`]),\n\t\tvalue,\n\t\toptions\n\t);\n};\n\nexport const watchNumber = (component: Generic.Element.Component, propName: string, value?: number, options?: WatchNumberOptions): void => {\n\twatchValidator(\n\t\tcomponent,\n\t\tpropName,\n\t\t(value): boolean =>\n\t\t\ttypeof value === 'number' &&\n\t\t\t(typeof options?.min === 'undefined' || (typeof options?.min === 'number' && value >= options.min)) &&\n\t\t\t(typeof options?.max === 'undefined' || (typeof options?.max === 'number' && value <= options.max)),\n\t\tnew Set(['Number']),\n\t\tvalue,\n\t\toptions\n\t);\n};\n\nexport const watchJsonArrayString = <T>(\n\tcomponent: Generic.Element.Component,\n\tpropName: string,\n\titemValidation: (item: T) => boolean,\n\tvalue?: Stringified<T[]>,\n\tarrayValidation: (items: T[]) => boolean = (items: T[]) => items === items, // nochmal hirnen\n\toptions: WatchOptions = {}\n): void => {\n\temptyStringByArrayHandler(value, () => {\n\t\tobjectObjectHandler(value, () => {\n\t\t\tif (typeof value === 'undefined') {\n\t\t\t\tvalue = [];\n\t\t\t}\n\t\t\ttry {\n\t\t\t\ttry {\n\t\t\t\t\tvalue = parseJson<T[]>(value);\n\t\t\t\t\t// eslint-disable-next-line no-empty\n\t\t\t\t} catch (e) {\n\t\t\t\t\t// value behält den ursprünglichen Wert\n\t\t\t\t}\n\t\t\t\tif (Array.isArray(value)) {\n\t\t\t\t\tconst invalid = value.find((item: T) => !itemValidation(item));\n\t\t\t\t\tif (invalid === undefined && arrayValidation(value)) {\n\t\t\t\t\t\tsetState(component, propName, value, options.hooks);\n\t\t\t\t\t} else {\n\t\t\t\t\t\tobjectObjectHandler(invalid, () => {\n\t\t\t\t\t\t\tLog.debug(invalid);\n\t\t\t\t\t\t\tthrow new Error(`↑ Das Schema für das Property (_options) ist nicht valide. Der Wert wird nicht geändert.`);\n\t\t\t\t\t\t});\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\tobjectObjectHandler(value, () => {\n\t\t\t\t\t\tLog.debug(value);\n\t\t\t\t\t\tthrow new Error(`↑ Das Schema für das Property (_options) ist nicht valide. Der Wert wird nicht geändert.`);\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t} catch (error) {\n\t\t\t\t/**\n\t\t\t\t * TODO: Wir haben einen Known-Bug beim Propergieren von Zeichenkettenliste (string[]).\n\t\t\t\t */\n\t\t\t\tLog.debug(error);\n\t\t\t\t// devHint(`Known bug: Zeichenkettenliste (string[])`);\n\t\t\t}\n\t\t});\n\t});\n};\n\nconst BOOLEAN = /^(true|false)$/;\nconst INTEGER = /^-?(0|[1-9]\\d*)$/;\nconst FLOAT = /^-?(0.|[1-9]\\d*.)\\d*[1-9]$/;\nexport const mapString2Unknown = (value: StencilUnknown) => {\n\tconst typeStr = typeof value;\n\tconst oldValue = `${value as string}`;\n\tif (typeof value === 'string') {\n\t\tif (BOOLEAN.test(value)) {\n\t\t\tvalue = value === 'true';\n\t\t} else if (INTEGER.test(value)) {\n\t\t\tvalue = parseInt(value);\n\t\t} else if (FLOAT.test(value)) {\n\t\t\tvalue = parseFloat(value);\n\t\t} else if (JSON_CHARS.test(value)) {\n\t\t\ttry {\n\t\t\t\tvalue = parseJson<StencilUnknown>(value);\n\t\t\t\t// eslint-disable-next-line no-empty\n\t\t\t} catch (e) {\n\t\t\t\t// value behält den ursprünglichen Wert\n\t\t\t}\n\t\t}\n\t}\n\tif (typeStr !== typeof value) {\n\t\tdevHint(`You have used a stringified property value (${oldValue} to ${JSON.stringify(value)}) which type switched from ${typeStr} to ${typeof value}!`);\n\t}\n\treturn value;\n};\n\nexport const stringifyJson = (value: unknown): string => {\n\ttry {\n\t\treturn JSON.stringify(value).replace(/\"/g, \"'\");\n\t} catch (error) {\n\t\tLog.warn(['stringifyJson', value]);\n\t\tLog.error(`↑ Das JSON konnte nicht in einen String umgewandelt werden. Es wird ein stringifizierbares JSON erwartet.`);\n\t\tthrow new Error();\n\t}\n};\n\nconst JSON_CHARS = /^[{[]/; // string starts with { or [\nexport const parseJson = <T>(value: unknown): T => {\n\tif (typeof value === 'string') {\n\t\ttry {\n\t\t\t// \"null\", \"true\", \"false\", \"0\" works too\n\t\t\treturn JSON.parse(value);\n\t\t} catch (error) {\n\t\t\tif (JSON_CHARS.test(value)) {\n\t\t\t\ttry {\n\t\t\t\t\treturn JSON.parse(value.replace(/'/g, '\"'));\n\t\t\t\t} catch (error) {\n\t\t\t\t\tLog.warn(['parseJson', value]);\n\t\t\t\t\tLog.error(`↑ Der JSON-String konnte nicht geparsed werden. Achten Sie darauf, dass einfache Anführungszeichen im Text maskiert werden (‘).`);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\tthrow new Error();\n};\n\nexport const mapBoolean2String = (value?: boolean): string | undefined => {\n\treturn typeof value === 'boolean' ? (value === true ? 'true' : 'false') : undefined;\n};\n\nexport const mapStringOrBoolean2String = (value?: string | boolean): string | undefined => {\n\treturn typeof value === 'string' ? value : mapBoolean2String(value);\n};\n\nexport const koliBriQuerySelector = <T extends Element>(selector: string, node?: Document | HTMLElement | ShadowRoot): T | null =>\n\tquerySelector<T>(selector, node || getDocument());\n\nexport const koliBriQuerySelectorAll = <T extends Element>(selector: string, node?: Document | HTMLElement | ShadowRoot): T[] =>\n\tquerySelectorAll<T>(selector, node || getDocument());\n\ninterface A11yColorContrast {\n\tbackgroundColor: string;\n\tcolor: string;\n\tdomNode: HTMLElement | HTMLSlotElement;\n\tlevel: string;\n\tscore: number;\n}\n\nlet DEFAULT_COLOR_CONTRAST: A11yColorContrast | null = null;\nconst getDefaultColorContrast = (): A11yColorContrast => {\n\tDEFAULT_COLOR_CONTRAST = DEFAULT_COLOR_CONTRAST || {\n\t\tbackgroundColor: '#00000000',\n\t\tcolor: '#00000000',\n\t\tdomNode: getDocument().body,\n\t\tlevel: 'Fail',\n\t\tscore: 1,\n\t};\n\treturn DEFAULT_COLOR_CONTRAST;\n};\n\nconst TRANSPARENT_REGEXP = /(\\d+, ){3}0\\)/;\nexport const koliBriA11yColorContrast = (domNode: HTMLElement, a11yColorContrast: A11yColorContrast = getDefaultColorContrast()): A11yColorContrast => {\n\tconst computedStyle = getComputedStyle(domNode);\n\tconst hexBG: string = TRANSPARENT_REGEXP.test(computedStyle.backgroundColor) ? a11yColorContrast.backgroundColor : rgba.hex(computedStyle.backgroundColor);\n\tconst hexC: string = TRANSPARENT_REGEXP.test(computedStyle.color) ? a11yColorContrast.color : rgba.hex(computedStyle.color);\n\tconst diff = hex(hexBG, hexC);\n\tconst contrast = {\n\t\tbackgroundColor: hexBG,\n\t\tcolor: hexC,\n\t\tdomNode: domNode,\n\t\tlevel: score(diff),\n\t\tscore: diff,\n\t};\n\tif (diff < 4.5) {\n\t\tLog.error([\n\t\t\t'Color-Contrast-Error',\n\t\t\t{\n\t\t\t\tbackgroundColor: contrast.backgroundColor,\n\t\t\t\tcolor: contrast.color,\n\t\t\t\tlevel: contrast.level,\n\t\t\t\tscore: contrast.score,\n\t\t\t},\n\t\t\tcontrast.domNode,\n\t\t]);\n\t}\n\treturn contrast;\n};\n\nexport const koliBriQuerySelectorColors = (selector: string, a11yColorContrast: A11yColorContrast = getDefaultColorContrast()): A11yColorContrast => {\n\tif (a11yColorContrast.domNode instanceof HTMLElement) {\n\t\ta11yColorContrast = koliBriA11yColorContrast(a11yColorContrast.domNode, a11yColorContrast);\n\t}\n\tconst selectedNode: HTMLElement | null = a11yColorContrast.domNode.querySelector<HTMLElement>(selector);\n\tif (selectedNode === null) {\n\t\tconst nodeList: NodeListOf<HTMLElement> = a11yColorContrast.domNode.querySelectorAll<HTMLElement>('[class=\"hydrated\"]');\n\t\tfor (let i = 0; i < nodeList.length; i++) {\n\t\t\t// const shadowRoot: ShadowRoot = nodeList[i].shadowRoot as ShadowRoot;\n\t\t\t// if (typeof shadowRoot === 'object' && shadowRoot !== null) {\n\t\t\t// a11yColorContrast.domNode = shadowRoot;\n\t\t\t// a11yColorContrast = koliBriQuerySelectorColors(selector, a11yColorContrast);\n\t\t\t// } else {\n\t\t\ta11yColorContrast.domNode = nodeList[i];\n\t\t\ta11yColorContrast = koliBriQuerySelectorColors(selector, a11yColorContrast);\n\t\t\t// }\n\t\t\tif (a11yColorContrast.domNode !== null) {\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t\treturn a11yColorContrast;\n\t} else {\n\t\treturn koliBriA11yColorContrast(selectedNode, a11yColorContrast);\n\t}\n};\n\nexport class KoliBriUtils {\n\tprivate static executionLock = false;\n\tprivate static cache = new Map<Element, A11yColorContrast>();\n\tpublic static queryHtmlElementColors(targetNode: HTMLElement, a11yColorContrast: A11yColorContrast, recursion = false, log = true): A11yColorContrast | null {\n\t\tlet returnValue = null;\n\t\tif (recursion === true || KoliBriUtils.executionLock === false) {\n\t\t\tif (recursion === false) {\n\t\t\t\tKoliBriUtils.cache.clear();\n\t\t\t\tKoliBriUtils.cache.set(a11yColorContrast.domNode, a11yColorContrast);\n\t\t\t\tKoliBriUtils.executionLock = true;\n\t\t\t\tif (log === true) {\n\t\t\t\t\tLog.debug(`[KoliBriUtils] Color contrast analysis started...`);\n\t\t\t\t}\n\t\t\t}\n\t\t\t// Log.debug(a11yColorContrast.domNode);\n\t\t\tif (targetNode === a11yColorContrast.domNode) {\n\t\t\t\treturnValue = a11yColorContrast;\n\t\t\t} else {\n\t\t\t\tconst children: Set<Element> = new Set<Element>();\n\t\t\t\tif (a11yColorContrast.domNode.shadowRoot) {\n\t\t\t\t\tconst shadowChildren = a11yColorContrast.domNode.shadowRoot.children;\n\t\t\t\t\tfor (let i = 0; i < shadowChildren.length; i++) {\n\t\t\t\t\t\tchildren.add(shadowChildren[i]);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tconst slotElement: HTMLSlotElement = a11yColorContrast.domNode as HTMLSlotElement;\n\t\t\t\tif (typeof slotElement.assignedNodes === 'function') {\n\t\t\t\t\tconst slotChildren = slotElement.assignedNodes();\n\t\t\t\t\tfor (let i = 0; i < slotChildren.length; i++) {\n\t\t\t\t\t\tif (slotChildren[i] instanceof HTMLElement) {\n\t\t\t\t\t\t\tchildren.add(slotChildren[i] as HTMLElement);\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tconst domChildren = a11yColorContrast.domNode.children;\n\t\t\t\tfor (let i = 0; i < domChildren.length; i++) {\n\t\t\t\t\tchildren.add(domChildren[i]);\n\t\t\t\t}\n\t\t\t\tconst arrayChildren = Array.from(children);\n\t\t\t\tfor (let i = 0; i < arrayChildren.length; i++) {\n\t\t\t\t\tlet colorContrast: A11yColorContrast | undefined = KoliBriUtils.cache.get(arrayChildren[i]);\n\t\t\t\t\tif (colorContrast === undefined) {\n\t\t\t\t\t\tcolorContrast = koliBriA11yColorContrast(arrayChildren[i] as HTMLElement, a11yColorContrast);\n\t\t\t\t\t}\n\t\t\t\t\tKoliBriUtils.cache.set(arrayChildren[i], colorContrast);\n\t\t\t\t\tconst colors: A11yColorContrast | null = KoliBriUtils.queryHtmlElementColors(targetNode, colorContrast, true, false);\n\t\t\t\t\tif (colors !== null) {\n\t\t\t\t\t\treturnValue = colors;\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t} else {\n\t\t\tLog.debug(`[KoliBriUtils] Call aborted because a color contrast analysis is currently being executed.`);\n\t\t}\n\t\tif (recursion === false) {\n\t\t\tif (log === true) {\n\t\t\t\tLog.debug(`[KoliBriUtils] Color contrast analysis finished (${KoliBriUtils.cache.size} DOM elements are analysed).`);\n\t\t\t}\n\t\t\tKoliBriUtils.executionLock = false;\n\t\t\tKoliBriUtils.cache.clear();\n\t\t}\n\t\treturn returnValue;\n\t}\n}\n\ntype AriaCurrentEventType = {\n\tariaCurrent: AriaCurrentPropType;\n} & PropHref;\nexport const ariaCurrentSubject = new Subject<AriaCurrentEventType>();\n\nexport class KoliBriDevHelper {\n\tpublic static readonly patchTheme = patchTheme;\n\tpublic static readonly querySelector = koliBriQuerySelector;\n\tpublic static readonly querySelectorAll = koliBriQuerySelectorAll;\n\tpublic static readonly stringifyJson = stringifyJson;\n}\n"],"version":3}
|
|
1
|
+
{"file":"prop.validators-e40c3380.js","mappings":"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","names":["Symbol_observable","rgba","hex","score"],"sources":["../../node_modules/.pnpm/query-selector-all-shadow-root@0.0.3/node_modules/query-selector-all-shadow-root/esm/index.js","../../node_modules/.pnpm/query-selector-shadow-root@0.0.3/node_modules/query-selector-shadow-root/esm/index.js","../../node_modules/.pnpm/rgba-convert@0.3.0/node_modules/rgba-convert/index.js","../../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/esm/internal/util/isFunction.js","../../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/esm/internal/util/createErrorClass.js","../../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/esm/internal/util/UnsubscriptionError.js","../../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/esm/internal/util/arrRemove.js","../../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/esm/internal/Subscription.js","../../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/esm/internal/config.js","../../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/esm/internal/scheduler/timeoutProvider.js","../../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/esm/internal/util/reportUnhandledError.js","../../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/esm/internal/util/noop.js","../../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/esm/internal/NotificationFactories.js","../../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/esm/internal/util/errorContext.js","../../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/esm/internal/Subscriber.js","../../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/esm/internal/symbol/observable.js","../../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/esm/internal/util/identity.js","../../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/esm/internal/util/pipe.js","../../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/esm/internal/Observable.js","../../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/esm/internal/util/ObjectUnsubscribedError.js","../../node_modules/.pnpm/rxjs@7.8.1/node_modules/rxjs/dist/esm/internal/Subject.js","../../node_modules/.pnpm/wcag-contrast@3.0.0/node_modules/wcag-contrast/dist/index.m.js","src/utils/prop.validators.ts"],"sourcesContent":["const pushNodes = (set, domNodes) => {\n domNodes.forEach((domNode) => {\n if (set.has(domNode) === false) {\n set.add(domNode);\n }\n });\n};\nexport const querySelectorAll = (selector, node = document) => {\n if (node instanceof Document ||\n node instanceof HTMLElement ||\n node instanceof ShadowRoot) {\n const domNodes = new Set();\n pushNodes(domNodes, node.querySelectorAll(selector));\n const nodeList = node.querySelectorAll('[class*=\"hydrated\"]');\n for (let i = 0; i < nodeList.length; i++) {\n const shadowRoot = nodeList[i].shadowRoot;\n if (typeof shadowRoot === \"object\" && shadowRoot !== null) {\n pushNodes(domNodes, querySelectorAll(selector, shadowRoot));\n }\n else {\n pushNodes(domNodes, querySelectorAll(selector, nodeList[i]));\n }\n }\n return Array.from(domNodes);\n }\n else {\n throw new Error(`The parameter document for the method querySelectorAll is not type of Document, HTMLElement or ShadowRoot.`);\n }\n};\n//# sourceMappingURL=index.js.map","export const querySelector = (selector, node = document) => {\n if (node instanceof Document ||\n node instanceof HTMLElement ||\n node instanceof ShadowRoot) {\n let domNode = node.querySelector(selector);\n if (domNode === null) {\n const nodeList = node.querySelectorAll('[class*=\"hydrated\"]');\n for (let i = 0; i < nodeList.length; i++) {\n const shadowRoot = nodeList[i].shadowRoot;\n if (typeof shadowRoot === \"object\" && shadowRoot !== null) {\n domNode = querySelector(selector, shadowRoot);\n }\n else {\n domNode = querySelector(selector, nodeList[i]);\n }\n if (domNode !== null) {\n break;\n }\n }\n }\n return domNode;\n }\n else {\n throw new Error(`The parameter document for the method querySelector is not type of Document, HTMLElement or ShadowRoot.`);\n }\n};\n//# sourceMappingURL=index.js.map","\nmodule.exports = arr\nmodule.exports.arr = arr\nmodule.exports.obj = obj\nmodule.exports.css = css\nmodule.exports.hex = hex\nmodule.exports.num = num\n\nfunction arr(data) {\n var a = parse(data)\n if (a.length == 3) {\n return a.concat(255)\n } else {\n a[3] = Math.round(a[3])\n return a\n }\n}\n\nfunction obj(data) {\n var a = parse(data)\n return {\n r: a[0],\n g: a[1],\n b: a[2],\n a: a.length == 3\n ? 255\n : Math.round(a[3])\n }\n}\n\nfunction css(data) {\n var a = parse(data)\n if (a.length == 3) a.push(255)\n\n return a[3] == 255\n ? 'rgb(' + a[0] + ', ' + a[1] + ', ' + a[2] + ')'\n : a[3] == 0\n ? 'rgba(' + a[0] + ', ' + a[1] + ', ' + a[2] + ', 0)'\n : 'rgba(' + a[0] + ', ' + a[1] + ', ' + a[2] + ', ' + String(a[3] / 255).substr(1) + ')'\n}\n\nfunction hex(data) {\n var a = parse(data)\n if (a.length == 3) a.push(255)\n var opaque = a[3] == 255\n var r = num2hex(a[0])\n var g = num2hex(a[1])\n var b = num2hex(a[2])\n var a = num2hex(Math.round(a[3]))\n var is = isshort(r, g, b, a)\n if (opaque) {\n return is\n ? '#' + r.charAt(0) + g.charAt(0) + b.charAt(0)\n : '#' + r + g + b\n }\n return is\n ? '#' + r.charAt(0) + g.charAt(0) + b.charAt(0) + a.charAt(0)\n : '#' + r + g + b + a\n}\n\nfunction num(data) {\n var a = parse(data)\n if (a.length == 3) a.push(255)\n else a[3] = Math.round(a[3])\n return ((a[3] << 24) >>> 0 | a[0] << 16 | a[1] << 8 | a[2]) >>> 0\n}\n\nfunction parse(data) {\n if (typeof data == 'string') {\n data = data.toLowerCase()\n return name(data)\n || hex3(data)\n || hex6(data)\n || rgb(data)\n || rgba(data)\n || [0, 0, 0, 255]\n }\n return object(data)\n || array(data)\n || number(data)\n || [0, 0, 0, 255]\n}\n\nfunction num2hex(num) {\n var s = num.toString(16)\n return s.length == 1\n ? '0' + s\n : s\n}\n\nfunction isshort(r, g, b, a) {\n var h = ['ff', '00', '11', '22', '33', '44', '55', '66',\n '77', '88', '99', 'aa', 'bb', 'cc', 'dd', 'ee']\n return h.indexOf(r) != -1\n && h.indexOf(g) != -1\n && h.indexOf(b) != -1\n && h.indexOf(a) != -1\n}\n\nfunction name(str) {\n if (str == 'red') return [255, 0, 0]\n if (str == 'green') return [0, 255, 0]\n if (str == 'blue') return [0, 0, 255]\n if (str == 'black') return [0, 0, 0]\n if (str == 'white') return [255, 255, 255]\n if (str == 'cyan') return [0, 255, 255]\n if (str == 'gray') return [128, 128, 128]\n if (str == 'grey') return [128, 128, 128]\n if (str == 'magenta') return [255, 0, 255]\n // ok, not the real css `pink` but my personal `magenta` alias\n // `pink` is simpler than `fuchsia`, whatever...\n if (str == 'pink') return [255, 0, 255]\n if (str == 'yellow') return [255, 255, 0]\n}\n\nfunction hex2num(str) {\n return str.length == 1\n ? parseInt(str + str, 16)\n : parseInt(str, 16)\n}\n\nfunction hex3(str) {\n var s = str.replace(/^#/,'')\n var l = s.length\n if (l == 3 || l == 4) {\n var r = hex2num(s[0])\n var g = hex2num(s[1])\n var b = hex2num(s[2])\n var a = l == 3\n ? 255\n : hex2num(s[3])\n\n if (isNaN(r) || isNaN(g) || isNaN(b) || isNaN(a)) return\n\n return [r, g, b, a]\n }\n}\n\nfunction hex6(str) {\n var s = str.replace(/^#/,'')\n var l = s.length\n if (l == 6 || l == 8) {\n var r = hex2num(s.slice(0, 2))\n var g = hex2num(s.slice(2, 4))\n var b = hex2num(s.slice(4, 6))\n var a = l == 6\n ? 255\n : hex2num(s.slice(6, 8))\n\n if (isNaN(r) || isNaN(g) || isNaN(b) || isNaN(a)) return\n\n return [r, g, b, a]\n }\n}\n\nfunction getnum(val, integer) {\n if (typeof val != 'number') return -1\n if (integer === true && Math.floor(val) !== val) return -1\n return val >= 0 && val <= 255\n ? val\n : -1\n}\n\nfunction object(obj) {\n if (Object.prototype.toString.call(obj) === '[object Object]'\n && Object.getPrototypeOf(obj) === Object.getPrototypeOf({})) {\n var r = getnum(obj.r != undefined ? obj.r : obj.red != undefined ? obj.red : 0, true)\n var g = getnum(obj.g != undefined ? obj.g : obj.green != undefined ? obj.green : 0, true)\n var b = getnum(obj.b != undefined ? obj.b : obj.blue != undefined ? obj.blue : 0, true)\n var a = getnum(obj.a != undefined ? obj.a : obj.alpha != undefined ? obj.alpha : 255, true)\n if (r != -1 && g != -1 && b != -1 && a != -1) {\n return [r, g, b, a]\n }\n }\n}\n\nfunction array(arr) {\n if (Array.isArray(arr) && (arr.length == 3 || arr.length == 4)) {\n var r = getnum(arr[0], true)\n var g = getnum(arr[1], true)\n var b = getnum(arr[2], true)\n var a = getnum(arr[3] != undefined ? arr[3] : 255, true)\n if (r != -1 && g != -1 && b != -1 && a != -1) {\n return [r, g, b, a]\n }\n }\n}\n\nfunction number(num) {\n if (typeof num == 'number' && Math.floor(num) == num && num <= 4294967295 && num >= 0) {\n var a = num >> 24 & 255\n var r = num >> 16 & 255\n var g = num >> 8 & 255\n var b = num & 255\n return [r, g, b, a]\n }\n}\n\nfunction rgb(str) {\n if (str.substr(0, 4) == 'rgb(') {\n str = str.match(/^rgb\\(([^)]+)\\)/)[1]\n var t = str.split(/ *, */).map(Number)\n var r = getnum(t[0], true)\n var g = getnum(t[1], true)\n var b = getnum(t[2], true)\n if (r != -1 && g != -1 && b != -1) {\n return [r, g, b, 255]\n }\n }\n}\n\nfunction rgba(str) {\n if (str.substr(0, 5) == 'rgba(') {\n str = str.match(/^rgba\\(([^)]+)\\)/)[1]\n var t = str.split(/ *, */).map(Number)\n var r = getnum(t[0], true)\n var g = getnum(t[1], true)\n var b = getnum(t[2], true)\n var a = getnum(t[3] * 255)\n if (r != -1 && g != -1 && b != -1 && a != -1) {\n return [r, g, b, a]\n }\n }\n}\n","export function isFunction(value) {\n return typeof value === 'function';\n}\n//# sourceMappingURL=isFunction.js.map","export function createErrorClass(createImpl) {\n const _super = (instance) => {\n Error.call(instance);\n instance.stack = new Error().stack;\n };\n const ctorFunc = createImpl(_super);\n ctorFunc.prototype = Object.create(Error.prototype);\n ctorFunc.prototype.constructor = ctorFunc;\n return ctorFunc;\n}\n//# sourceMappingURL=createErrorClass.js.map","import { createErrorClass } from './createErrorClass';\nexport const UnsubscriptionError = createErrorClass((_super) => function UnsubscriptionErrorImpl(errors) {\n _super(this);\n this.message = errors\n ? `${errors.length} errors occurred during unsubscription:\n${errors.map((err, i) => `${i + 1}) ${err.toString()}`).join('\\n ')}`\n : '';\n this.name = 'UnsubscriptionError';\n this.errors = errors;\n});\n//# sourceMappingURL=UnsubscriptionError.js.map","export function arrRemove(arr, item) {\n if (arr) {\n const index = arr.indexOf(item);\n 0 <= index && arr.splice(index, 1);\n }\n}\n//# sourceMappingURL=arrRemove.js.map","import { isFunction } from './util/isFunction';\nimport { UnsubscriptionError } from './util/UnsubscriptionError';\nimport { arrRemove } from './util/arrRemove';\nexport class Subscription {\n constructor(initialTeardown) {\n this.initialTeardown = initialTeardown;\n this.closed = false;\n this._parentage = null;\n this._finalizers = null;\n }\n unsubscribe() {\n let errors;\n if (!this.closed) {\n this.closed = true;\n const { _parentage } = this;\n if (_parentage) {\n this._parentage = null;\n if (Array.isArray(_parentage)) {\n for (const parent of _parentage) {\n parent.remove(this);\n }\n }\n else {\n _parentage.remove(this);\n }\n }\n const { initialTeardown: initialFinalizer } = this;\n if (isFunction(initialFinalizer)) {\n try {\n initialFinalizer();\n }\n catch (e) {\n errors = e instanceof UnsubscriptionError ? e.errors : [e];\n }\n }\n const { _finalizers } = this;\n if (_finalizers) {\n this._finalizers = null;\n for (const finalizer of _finalizers) {\n try {\n execFinalizer(finalizer);\n }\n catch (err) {\n errors = errors !== null && errors !== void 0 ? errors : [];\n if (err instanceof UnsubscriptionError) {\n errors = [...errors, ...err.errors];\n }\n else {\n errors.push(err);\n }\n }\n }\n }\n if (errors) {\n throw new UnsubscriptionError(errors);\n }\n }\n }\n add(teardown) {\n var _a;\n if (teardown && teardown !== this) {\n if (this.closed) {\n execFinalizer(teardown);\n }\n else {\n if (teardown instanceof Subscription) {\n if (teardown.closed || teardown._hasParent(this)) {\n return;\n }\n teardown._addParent(this);\n }\n (this._finalizers = (_a = this._finalizers) !== null && _a !== void 0 ? _a : []).push(teardown);\n }\n }\n }\n _hasParent(parent) {\n const { _parentage } = this;\n return _parentage === parent || (Array.isArray(_parentage) && _parentage.includes(parent));\n }\n _addParent(parent) {\n const { _parentage } = this;\n this._parentage = Array.isArray(_parentage) ? (_parentage.push(parent), _parentage) : _parentage ? [_parentage, parent] : parent;\n }\n _removeParent(parent) {\n const { _parentage } = this;\n if (_parentage === parent) {\n this._parentage = null;\n }\n else if (Array.isArray(_parentage)) {\n arrRemove(_parentage, parent);\n }\n }\n remove(teardown) {\n const { _finalizers } = this;\n _finalizers && arrRemove(_finalizers, teardown);\n if (teardown instanceof Subscription) {\n teardown._removeParent(this);\n }\n }\n}\nSubscription.EMPTY = (() => {\n const empty = new Subscription();\n empty.closed = true;\n return empty;\n})();\nexport const EMPTY_SUBSCRIPTION = Subscription.EMPTY;\nexport function isSubscription(value) {\n return (value instanceof Subscription ||\n (value && 'closed' in value && isFunction(value.remove) && isFunction(value.add) && isFunction(value.unsubscribe)));\n}\nfunction execFinalizer(finalizer) {\n if (isFunction(finalizer)) {\n finalizer();\n }\n else {\n finalizer.unsubscribe();\n }\n}\n//# sourceMappingURL=Subscription.js.map","export const config = {\n onUnhandledError: null,\n onStoppedNotification: null,\n Promise: undefined,\n useDeprecatedSynchronousErrorHandling: false,\n useDeprecatedNextContext: false,\n};\n//# sourceMappingURL=config.js.map","export const timeoutProvider = {\n setTimeout(handler, timeout, ...args) {\n const { delegate } = timeoutProvider;\n if (delegate === null || delegate === void 0 ? void 0 : delegate.setTimeout) {\n return delegate.setTimeout(handler, timeout, ...args);\n }\n return setTimeout(handler, timeout, ...args);\n },\n clearTimeout(handle) {\n const { delegate } = timeoutProvider;\n return ((delegate === null || delegate === void 0 ? void 0 : delegate.clearTimeout) || clearTimeout)(handle);\n },\n delegate: undefined,\n};\n//# sourceMappingURL=timeoutProvider.js.map","import { config } from '../config';\nimport { timeoutProvider } from '../scheduler/timeoutProvider';\nexport function reportUnhandledError(err) {\n timeoutProvider.setTimeout(() => {\n const { onUnhandledError } = config;\n if (onUnhandledError) {\n onUnhandledError(err);\n }\n else {\n throw err;\n }\n });\n}\n//# sourceMappingURL=reportUnhandledError.js.map","export function noop() { }\n//# sourceMappingURL=noop.js.map","export const COMPLETE_NOTIFICATION = (() => createNotification('C', undefined, undefined))();\nexport function errorNotification(error) {\n return createNotification('E', undefined, error);\n}\nexport function nextNotification(value) {\n return createNotification('N', value, undefined);\n}\nexport function createNotification(kind, value, error) {\n return {\n kind,\n value,\n error,\n };\n}\n//# sourceMappingURL=NotificationFactories.js.map","import { config } from '../config';\nlet context = null;\nexport function errorContext(cb) {\n if (config.useDeprecatedSynchronousErrorHandling) {\n const isRoot = !context;\n if (isRoot) {\n context = { errorThrown: false, error: null };\n }\n cb();\n if (isRoot) {\n const { errorThrown, error } = context;\n context = null;\n if (errorThrown) {\n throw error;\n }\n }\n }\n else {\n cb();\n }\n}\nexport function captureError(err) {\n if (config.useDeprecatedSynchronousErrorHandling && context) {\n context.errorThrown = true;\n context.error = err;\n }\n}\n//# sourceMappingURL=errorContext.js.map","import { isFunction } from './util/isFunction';\nimport { isSubscription, Subscription } from './Subscription';\nimport { config } from './config';\nimport { reportUnhandledError } from './util/reportUnhandledError';\nimport { noop } from './util/noop';\nimport { nextNotification, errorNotification, COMPLETE_NOTIFICATION } from './NotificationFactories';\nimport { timeoutProvider } from './scheduler/timeoutProvider';\nimport { captureError } from './util/errorContext';\nexport class Subscriber extends Subscription {\n constructor(destination) {\n super();\n this.isStopped = false;\n if (destination) {\n this.destination = destination;\n if (isSubscription(destination)) {\n destination.add(this);\n }\n }\n else {\n this.destination = EMPTY_OBSERVER;\n }\n }\n static create(next, error, complete) {\n return new SafeSubscriber(next, error, complete);\n }\n next(value) {\n if (this.isStopped) {\n handleStoppedNotification(nextNotification(value), this);\n }\n else {\n this._next(value);\n }\n }\n error(err) {\n if (this.isStopped) {\n handleStoppedNotification(errorNotification(err), this);\n }\n else {\n this.isStopped = true;\n this._error(err);\n }\n }\n complete() {\n if (this.isStopped) {\n handleStoppedNotification(COMPLETE_NOTIFICATION, this);\n }\n else {\n this.isStopped = true;\n this._complete();\n }\n }\n unsubscribe() {\n if (!this.closed) {\n this.isStopped = true;\n super.unsubscribe();\n this.destination = null;\n }\n }\n _next(value) {\n this.destination.next(value);\n }\n _error(err) {\n try {\n this.destination.error(err);\n }\n finally {\n this.unsubscribe();\n }\n }\n _complete() {\n try {\n this.destination.complete();\n }\n finally {\n this.unsubscribe();\n }\n }\n}\nconst _bind = Function.prototype.bind;\nfunction bind(fn, thisArg) {\n return _bind.call(fn, thisArg);\n}\nclass ConsumerObserver {\n constructor(partialObserver) {\n this.partialObserver = partialObserver;\n }\n next(value) {\n const { partialObserver } = this;\n if (partialObserver.next) {\n try {\n partialObserver.next(value);\n }\n catch (error) {\n handleUnhandledError(error);\n }\n }\n }\n error(err) {\n const { partialObserver } = this;\n if (partialObserver.error) {\n try {\n partialObserver.error(err);\n }\n catch (error) {\n handleUnhandledError(error);\n }\n }\n else {\n handleUnhandledError(err);\n }\n }\n complete() {\n const { partialObserver } = this;\n if (partialObserver.complete) {\n try {\n partialObserver.complete();\n }\n catch (error) {\n handleUnhandledError(error);\n }\n }\n }\n}\nexport class SafeSubscriber extends Subscriber {\n constructor(observerOrNext, error, complete) {\n super();\n let partialObserver;\n if (isFunction(observerOrNext) || !observerOrNext) {\n partialObserver = {\n next: (observerOrNext !== null && observerOrNext !== void 0 ? observerOrNext : undefined),\n error: error !== null && error !== void 0 ? error : undefined,\n complete: complete !== null && complete !== void 0 ? complete : undefined,\n };\n }\n else {\n let context;\n if (this && config.useDeprecatedNextContext) {\n context = Object.create(observerOrNext);\n context.unsubscribe = () => this.unsubscribe();\n partialObserver = {\n next: observerOrNext.next && bind(observerOrNext.next, context),\n error: observerOrNext.error && bind(observerOrNext.error, context),\n complete: observerOrNext.complete && bind(observerOrNext.complete, context),\n };\n }\n else {\n partialObserver = observerOrNext;\n }\n }\n this.destination = new ConsumerObserver(partialObserver);\n }\n}\nfunction handleUnhandledError(error) {\n if (config.useDeprecatedSynchronousErrorHandling) {\n captureError(error);\n }\n else {\n reportUnhandledError(error);\n }\n}\nfunction defaultErrorHandler(err) {\n throw err;\n}\nfunction handleStoppedNotification(notification, subscriber) {\n const { onStoppedNotification } = config;\n onStoppedNotification && timeoutProvider.setTimeout(() => onStoppedNotification(notification, subscriber));\n}\nexport const EMPTY_OBSERVER = {\n closed: true,\n next: noop,\n error: defaultErrorHandler,\n complete: noop,\n};\n//# sourceMappingURL=Subscriber.js.map","export const observable = (() => (typeof Symbol === 'function' && Symbol.observable) || '@@observable')();\n//# sourceMappingURL=observable.js.map","export function identity(x) {\n return x;\n}\n//# sourceMappingURL=identity.js.map","import { identity } from './identity';\nexport function pipe(...fns) {\n return pipeFromArray(fns);\n}\nexport function pipeFromArray(fns) {\n if (fns.length === 0) {\n return identity;\n }\n if (fns.length === 1) {\n return fns[0];\n }\n return function piped(input) {\n return fns.reduce((prev, fn) => fn(prev), input);\n };\n}\n//# sourceMappingURL=pipe.js.map","import { SafeSubscriber, Subscriber } from './Subscriber';\nimport { isSubscription } from './Subscription';\nimport { observable as Symbol_observable } from './symbol/observable';\nimport { pipeFromArray } from './util/pipe';\nimport { config } from './config';\nimport { isFunction } from './util/isFunction';\nimport { errorContext } from './util/errorContext';\nexport class Observable {\n constructor(subscribe) {\n if (subscribe) {\n this._subscribe = subscribe;\n }\n }\n lift(operator) {\n const observable = new Observable();\n observable.source = this;\n observable.operator = operator;\n return observable;\n }\n subscribe(observerOrNext, error, complete) {\n const subscriber = isSubscriber(observerOrNext) ? observerOrNext : new SafeSubscriber(observerOrNext, error, complete);\n errorContext(() => {\n const { operator, source } = this;\n subscriber.add(operator\n ?\n operator.call(subscriber, source)\n : source\n ?\n this._subscribe(subscriber)\n :\n this._trySubscribe(subscriber));\n });\n return subscriber;\n }\n _trySubscribe(sink) {\n try {\n return this._subscribe(sink);\n }\n catch (err) {\n sink.error(err);\n }\n }\n forEach(next, promiseCtor) {\n promiseCtor = getPromiseCtor(promiseCtor);\n return new promiseCtor((resolve, reject) => {\n const subscriber = new SafeSubscriber({\n next: (value) => {\n try {\n next(value);\n }\n catch (err) {\n reject(err);\n subscriber.unsubscribe();\n }\n },\n error: reject,\n complete: resolve,\n });\n this.subscribe(subscriber);\n });\n }\n _subscribe(subscriber) {\n var _a;\n return (_a = this.source) === null || _a === void 0 ? void 0 : _a.subscribe(subscriber);\n }\n [Symbol_observable]() {\n return this;\n }\n pipe(...operations) {\n return pipeFromArray(operations)(this);\n }\n toPromise(promiseCtor) {\n promiseCtor = getPromiseCtor(promiseCtor);\n return new promiseCtor((resolve, reject) => {\n let value;\n this.subscribe((x) => (value = x), (err) => reject(err), () => resolve(value));\n });\n }\n}\nObservable.create = (subscribe) => {\n return new Observable(subscribe);\n};\nfunction getPromiseCtor(promiseCtor) {\n var _a;\n return (_a = promiseCtor !== null && promiseCtor !== void 0 ? promiseCtor : config.Promise) !== null && _a !== void 0 ? _a : Promise;\n}\nfunction isObserver(value) {\n return value && isFunction(value.next) && isFunction(value.error) && isFunction(value.complete);\n}\nfunction isSubscriber(value) {\n return (value && value instanceof Subscriber) || (isObserver(value) && isSubscription(value));\n}\n//# sourceMappingURL=Observable.js.map","import { createErrorClass } from './createErrorClass';\nexport const ObjectUnsubscribedError = createErrorClass((_super) => function ObjectUnsubscribedErrorImpl() {\n _super(this);\n this.name = 'ObjectUnsubscribedError';\n this.message = 'object unsubscribed';\n});\n//# sourceMappingURL=ObjectUnsubscribedError.js.map","import { Observable } from './Observable';\nimport { Subscription, EMPTY_SUBSCRIPTION } from './Subscription';\nimport { ObjectUnsubscribedError } from './util/ObjectUnsubscribedError';\nimport { arrRemove } from './util/arrRemove';\nimport { errorContext } from './util/errorContext';\nexport class Subject extends Observable {\n constructor() {\n super();\n this.closed = false;\n this.currentObservers = null;\n this.observers = [];\n this.isStopped = false;\n this.hasError = false;\n this.thrownError = null;\n }\n lift(operator) {\n const subject = new AnonymousSubject(this, this);\n subject.operator = operator;\n return subject;\n }\n _throwIfClosed() {\n if (this.closed) {\n throw new ObjectUnsubscribedError();\n }\n }\n next(value) {\n errorContext(() => {\n this._throwIfClosed();\n if (!this.isStopped) {\n if (!this.currentObservers) {\n this.currentObservers = Array.from(this.observers);\n }\n for (const observer of this.currentObservers) {\n observer.next(value);\n }\n }\n });\n }\n error(err) {\n errorContext(() => {\n this._throwIfClosed();\n if (!this.isStopped) {\n this.hasError = this.isStopped = true;\n this.thrownError = err;\n const { observers } = this;\n while (observers.length) {\n observers.shift().error(err);\n }\n }\n });\n }\n complete() {\n errorContext(() => {\n this._throwIfClosed();\n if (!this.isStopped) {\n this.isStopped = true;\n const { observers } = this;\n while (observers.length) {\n observers.shift().complete();\n }\n }\n });\n }\n unsubscribe() {\n this.isStopped = this.closed = true;\n this.observers = this.currentObservers = null;\n }\n get observed() {\n var _a;\n return ((_a = this.observers) === null || _a === void 0 ? void 0 : _a.length) > 0;\n }\n _trySubscribe(subscriber) {\n this._throwIfClosed();\n return super._trySubscribe(subscriber);\n }\n _subscribe(subscriber) {\n this._throwIfClosed();\n this._checkFinalizedStatuses(subscriber);\n return this._innerSubscribe(subscriber);\n }\n _innerSubscribe(subscriber) {\n const { hasError, isStopped, observers } = this;\n if (hasError || isStopped) {\n return EMPTY_SUBSCRIPTION;\n }\n this.currentObservers = null;\n observers.push(subscriber);\n return new Subscription(() => {\n this.currentObservers = null;\n arrRemove(observers, subscriber);\n });\n }\n _checkFinalizedStatuses(subscriber) {\n const { hasError, thrownError, isStopped } = this;\n if (hasError) {\n subscriber.error(thrownError);\n }\n else if (isStopped) {\n subscriber.complete();\n }\n }\n asObservable() {\n const observable = new Observable();\n observable.source = this;\n return observable;\n }\n}\nSubject.create = (destination, source) => {\n return new AnonymousSubject(destination, source);\n};\nexport class AnonymousSubject extends Subject {\n constructor(destination, source) {\n super();\n this.destination = destination;\n this.source = source;\n }\n next(value) {\n var _a, _b;\n (_b = (_a = this.destination) === null || _a === void 0 ? void 0 : _a.next) === null || _b === void 0 ? void 0 : _b.call(_a, value);\n }\n error(err) {\n var _a, _b;\n (_b = (_a = this.destination) === null || _a === void 0 ? void 0 : _a.error) === null || _b === void 0 ? void 0 : _b.call(_a, err);\n }\n complete() {\n var _a, _b;\n (_b = (_a = this.destination) === null || _a === void 0 ? void 0 : _a.complete) === null || _b === void 0 ? void 0 : _b.call(_a);\n }\n _subscribe(subscriber) {\n var _a, _b;\n return (_b = (_a = this.source) === null || _a === void 0 ? void 0 : _a.subscribe(subscriber)) !== null && _b !== void 0 ? _b : EMPTY_SUBSCRIPTION;\n }\n}\n//# sourceMappingURL=Subject.js.map","var n=.2126,r=.7152,t=.0722,e=1/12.92;function u(n){return Math.pow((n+.055)/1.055,2.4)}function a(a){var i=a[0]/255,c=a[1]/255,o=a[2]/255,s=i<=.03928?i*e:u(i),f=c<=.03928?c*e:u(c),l=o<=.03928?o*e:u(o);return s*n+f*r+l*t}function i(n){var r=255;8===(n=n.replace(/^#/,\"\")).length&&(r=parseInt(n.slice(6,8),16),n=n.substring(0,6)),4===n.length&&(r=parseInt(n.slice(3,4).repeat(2),16),n=n.substring(0,3)),3===n.length&&(n=n[0]+n[0]+n[1]+n[1]+n[2]+n[2]);var t=parseInt(n,16);return[t>>16,t>>8&255,255&t,r]}function c(n,r){return(Math.max(n,r)+.05)/(Math.min(n,r)+.05)}function o(n,r){return c(a(n),a(r))}function s(n,r){return o(i(n),i(r))}function f(n){return n>=7?\"AAA\":n>=4.5?\"AA\":n>=3?\"AA Large\":\"Fail\"}export{c as luminance,o as rgb,s as hex,f as score};\n//# sourceMappingURL=index.m.js.map\n","import { querySelectorAll } from 'query-selector-all-shadow-root';\nimport { querySelector } from 'query-selector-shadow-root';\nimport rgba from 'rgba-convert';\nimport { Subject } from 'rxjs';\nimport { hex, score } from 'wcag-contrast';\n\nimport { Generic, patchTheme } from '@a11y-ui/core';\n\nimport { Stringified } from '../types/common';\nimport { AriaCurrentPropType } from '../types/props/aria-current';\nimport { PropHref } from '../types/props/href';\nimport { StencilUnknown } from '../types/unknown';\nimport { devHint } from './a11y.tipps';\nimport { getDocument, getExperimentalMode, Log } from './dev.utils';\n\n// https://regex101.com/r/lSYLO9/1\n/**\n * Bei Stencil kann es vorkommen, dass bei der Übergabe eines komplexer Objekte\n * der String \"[object Object]\" an die Web Component übergeben wird. Um den Neben-\n * effekt abzufangen, wird dieser Fall abgefangen und nicht ausgeführt.\n */\nconst OBJECT_OBJECT = /\\[object Object\\]/;\nexport const objectObjectHandler = (value: unknown, cb: () => void): void => {\n\tif (typeof value === 'string' && OBJECT_OBJECT.test(value)) {\n\t\treturn;\n\t}\n\tcb();\n};\n\n/**\n * Bei Stencil kann es vorkommen, dass bei der Übergabe eines leeren Array's\n * ein leerer String an die Web Component übergeben wird. Um den Nebeneffekt\n * abzufangen, wird dieser Fall abgefangen und nicht ausgeführt.\n */\nexport const emptyStringByArrayHandler = (value: unknown, cb: () => void): void => {\n\tif (typeof value === 'string' && value === '') {\n\t\treturn;\n\t}\n\tcb();\n};\n\n/**\n * Bei interaktiven HTML-Elementen kommt es vor, dass der Event an einem nicht\n * interaktiven HTML-Element \"lostriggert\" und dann den DOM-Baum hoch propagiert.\n * Zu unterschiedlichen Zeitpunkten sind an dem einen Event somit immer unterschiedliche\n * HTML-Elemente.\n * Damit wir das \"richtige\" interaktive HTML-Element an das Event binden, setzen\n * wir das Target explizit und stoppen die Propagation.\n */\nexport const setEventTarget = (event: Event, target?: HTMLElement): void => {\n\tif (getExperimentalMode()) {\n\t\tLog.debug([event, target]);\n\t\tLog.debug(`↑ We propagate the (submit) event to this target.`);\n\t}\n\tObject.defineProperty(event, 'target', {\n\t\tvalue: target,\n\t\twritable: false,\n\t});\n};\n\nconst patchState = (component: Generic.Element.Component): void => {\n\tcomponent.nextHooks?.forEach((hooks, key) => {\n\t\tconst beforePatch = hooks.get('beforePatch') as Generic.Element.NextStateHooksCallback;\n\t\tif (typeof beforePatch === 'function') {\n\t\t\tbeforePatch(component.nextState?.get(key), component.nextState as Map<string, unknown>, component, key);\n\t\t}\n\t});\n\t/**\n\t * Wenn in beforePatch Methoden die Änderung verworfen wird,\n\t * muss auch nicht der State aktualisiert und neu gerendert\n\t * werden.\n\t */\n\tif ((component.nextState as Map<string, unknown>)?.size > 0) {\n\t\tcomponent.state = {\n\t\t\t...component.state,\n\t\t\t...Object.fromEntries(component.nextState as Map<string, unknown>),\n\t\t};\n\t\tdelete component.nextState;\n\n\t\tcomponent.nextHooks?.forEach((hooks, key) => {\n\t\t\tconst afterPatch = hooks.get('afterPatch') as Generic.Element.StateHooksCallback;\n\t\t\tif (typeof afterPatch === 'function') {\n\t\t\t\tafterPatch(component.state[key], component.state, component, key);\n\t\t\t}\n\t\t});\n\t}\n\tdelete component.nextHooks;\n};\n\ntype SetStateHooks = {\n\tafterPatch?: Generic.Element.StateHooksCallback;\n\tbeforePatch?: Generic.Element.NextStateHooksCallback;\n};\n\nexport const setState = <T>(component: Generic.Element.Component, propName: string, value?: T | null | undefined, hooks: SetStateHooks = {}): void => {\n\tif (component.nextHooks === undefined) {\n\t\tcomponent.nextHooks = new Map();\n\t}\n\tif (component.nextState === undefined) {\n\t\tcomponent.nextState = new Map();\n\t}\n\tif (component.nextState.get(propName) !== value) {\n\t\tconst nextHooks = component.nextHooks.get(propName);\n\t\tif (nextHooks instanceof Map === false) {\n\t\t\tcomponent.nextHooks.set(propName, new Map());\n\t\t}\n\t\tif (typeof hooks.afterPatch === 'function') {\n\t\t\tcomponent.nextHooks.get(propName)?.set('afterPatch', hooks.afterPatch);\n\t\t}\n\t\tif (typeof hooks.beforePatch === 'function') {\n\t\t\tcomponent.nextHooks.get(propName)?.set('beforePatch', hooks.beforePatch);\n\t\t}\n\t\tcomponent.nextState.set(propName, value);\n\t\t/**\n\t\t * Muss erstmal in sync bleiben, da sonst der\n\t\t * Tooltip nicht korrekt ausgerichtet wird.\n\t\t */\n\t\t// if (component.hydrated === true || processEnv !== 'test') {\n\t\t// clearTimeout(component.timeout as NodeJS.Timeout);\n\t\t// component.timeout = setTimeout(() => {\n\t\t// \tclearTimeout(component.timeout as NodeJS.Timeout);\n\t\t// \tpatchState(component);\n\t\t// }, 50);\n\t\t// } else {\n\t\tpatchState(component);\n\t\t// }\n\t}\n};\n\nconst logWarn = (component: Generic.Element.Component, propName: string, value: unknown, requiredGeneric: Set<string | null | undefined>): void => {\n\tdevHint(\n\t\t`[${component.constructor.name}] Der Property-Wert (${value as string}) für '${propName}' ist nicht valide. Folgende Werte sind erlaubt: ${Array.from(\n\t\t\trequiredGeneric\n\t\t).join(', ')}`\n\t);\n};\n\nexport type WatchOptions = {\n\tdefaultValue?: unknown;\n\thooks?: SetStateHooks;\n\trequired?: boolean;\n};\n\nexport type WatchBooleanOptions = WatchOptions & {\n\tdefaultValue?: boolean | null;\n};\n\nexport type WatchStringOptions = WatchOptions & {\n\tdefaultValue?: string | null;\n\tmaxLength?: number;\n\tminLength?: number;\n};\n\nexport type WatchNumberOptions = WatchOptions & {\n\tdefaultValue?: number | null;\n\tmin?: number;\n\tmax?: number;\n};\n\nexport function watchValidator<T>(\n\tcomponent: Generic.Element.Component,\n\tpropName: string,\n\tvalidationFunction: (value?: T) => boolean,\n\trequiredGeneric: Set<string | null | undefined>,\n\tvalue?: T,\n\toptions: WatchOptions = {}\n): void {\n\tif (validationFunction(value)) {\n\t\t/**\n\t\t * Triff zu, wenn der Wert VALIDE ist.\n\t\t */\n\t\tsetState(component, propName, value, options.hooks);\n\t} else if ((value === undefined || value === null) && !options.required) {\n\t\t/**\n\t\t * Triff zu, wenn der Wert entweder ...\n\t\t * - UNDEFINED oder NULL\n\t\t * - und NICHT REQUIRED\n\t\t * ... ist.\n\t\t */\n\t\tsetState(component, propName, options.defaultValue, options.hooks);\n\t} else {\n\t\t/**\n\t\t * Triff zu, wenn der Wert NICHT valide ist.\n\t\t */\n\t\tif (!options.required) {\n\t\t\trequiredGeneric.add(null);\n\t\t}\n\t\tlogWarn(component, propName, value, requiredGeneric);\n\t}\n}\n\nexport const watchBoolean = (component: Generic.Element.Component, propName: string, value?: boolean, options?: WatchBooleanOptions): void => {\n\twatchValidator(component, propName, (value): boolean => typeof value === 'boolean', new Set(['Boolean {true, false}']), value, options);\n};\n\nexport const watchString = (component: Generic.Element.Component, propName: string, value?: string, options: WatchStringOptions = {}): void => {\n\tconst minLength = typeof options.minLength === 'number' ? options?.minLength : 0;\n\twatchValidator(\n\t\tcomponent,\n\t\tpropName,\n\t\t(value): boolean =>\n\t\t\ttypeof value === 'string' && value.length >= minLength && (typeof options?.maxLength === 'undefined' || value.length <= options.maxLength),\n\t\tnew Set([`String`]),\n\t\tvalue,\n\t\toptions\n\t);\n};\n\nexport const watchNumber = (component: Generic.Element.Component, propName: string, value?: number, options?: WatchNumberOptions): void => {\n\twatchValidator(\n\t\tcomponent,\n\t\tpropName,\n\t\t(value): boolean =>\n\t\t\ttypeof value === 'number' &&\n\t\t\t(typeof options?.min === 'undefined' || (typeof options?.min === 'number' && value >= options.min)) &&\n\t\t\t(typeof options?.max === 'undefined' || (typeof options?.max === 'number' && value <= options.max)),\n\t\tnew Set(['Number']),\n\t\tvalue,\n\t\toptions\n\t);\n};\n\nexport const watchJsonArrayString = <T>(\n\tcomponent: Generic.Element.Component,\n\tpropName: string,\n\titemValidation: (item: T) => boolean,\n\tvalue?: Stringified<T[]>,\n\tarrayValidation: (items: T[]) => boolean = (items: T[]) => items === items, // nochmal hirnen\n\toptions: WatchOptions = {}\n): void => {\n\temptyStringByArrayHandler(value, () => {\n\t\tobjectObjectHandler(value, () => {\n\t\t\tif (typeof value === 'undefined') {\n\t\t\t\tvalue = [];\n\t\t\t}\n\t\t\ttry {\n\t\t\t\ttry {\n\t\t\t\t\tvalue = parseJson<T[]>(value);\n\t\t\t\t\t// eslint-disable-next-line no-empty\n\t\t\t\t} catch (e) {\n\t\t\t\t\t// value behält den ursprünglichen Wert\n\t\t\t\t}\n\t\t\t\tif (Array.isArray(value)) {\n\t\t\t\t\tconst invalid = value.find((item: T) => !itemValidation(item));\n\t\t\t\t\tif (invalid === undefined && arrayValidation(value)) {\n\t\t\t\t\t\tsetState(component, propName, value, options.hooks);\n\t\t\t\t\t} else {\n\t\t\t\t\t\tobjectObjectHandler(invalid, () => {\n\t\t\t\t\t\t\tLog.debug(invalid);\n\t\t\t\t\t\t\tthrow new Error(`↑ Das Schema für das Property (_options) ist nicht valide. Der Wert wird nicht geändert.`);\n\t\t\t\t\t\t});\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\tobjectObjectHandler(value, () => {\n\t\t\t\t\t\tLog.debug(value);\n\t\t\t\t\t\tthrow new Error(`↑ Das Schema für das Property (_options) ist nicht valide. Der Wert wird nicht geändert.`);\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t} catch (error) {\n\t\t\t\t/**\n\t\t\t\t * TODO: Wir haben einen Known-Bug beim Propergieren von Zeichenkettenliste (string[]).\n\t\t\t\t */\n\t\t\t\tLog.debug(error);\n\t\t\t\t// devHint(`Known bug: Zeichenkettenliste (string[])`);\n\t\t\t}\n\t\t});\n\t});\n};\n\nconst BOOLEAN = /^(true|false)$/;\nconst INTEGER = /^-?(0|[1-9]\\d*)$/;\nconst FLOAT = /^-?(0.|[1-9]\\d*.)\\d*[1-9]$/;\nexport const mapString2Unknown = (value: StencilUnknown) => {\n\tconst typeStr = typeof value;\n\tconst oldValue = `${value as string}`;\n\tif (typeof value === 'string') {\n\t\tif (BOOLEAN.test(value)) {\n\t\t\tvalue = value === 'true';\n\t\t} else if (INTEGER.test(value)) {\n\t\t\tvalue = parseInt(value);\n\t\t} else if (FLOAT.test(value)) {\n\t\t\tvalue = parseFloat(value);\n\t\t} else if (JSON_CHARS.test(value)) {\n\t\t\ttry {\n\t\t\t\tvalue = parseJson<StencilUnknown>(value);\n\t\t\t\t// eslint-disable-next-line no-empty\n\t\t\t} catch (e) {\n\t\t\t\t// value behält den ursprünglichen Wert\n\t\t\t}\n\t\t}\n\t}\n\tif (typeStr !== typeof value) {\n\t\tdevHint(`You have used a stringified property value (${oldValue} to ${JSON.stringify(value)}) which type switched from ${typeStr} to ${typeof value}!`);\n\t}\n\treturn value;\n};\n\nexport const stringifyJson = (value: unknown): string => {\n\ttry {\n\t\treturn JSON.stringify(value).replace(/\"/g, \"'\");\n\t} catch (error) {\n\t\tLog.warn(['stringifyJson', value]);\n\t\tLog.error(`↑ Das JSON konnte nicht in einen String umgewandelt werden. Es wird ein stringifizierbares JSON erwartet.`);\n\t\tthrow new Error();\n\t}\n};\n\nconst JSON_CHARS = /^[{[]/; // string starts with { or [\nexport const parseJson = <T>(value: unknown): T => {\n\tif (typeof value === 'string') {\n\t\ttry {\n\t\t\t// \"null\", \"true\", \"false\", \"0\" works too\n\t\t\treturn JSON.parse(value);\n\t\t} catch (error) {\n\t\t\tif (JSON_CHARS.test(value)) {\n\t\t\t\ttry {\n\t\t\t\t\treturn JSON.parse(value.replace(/'/g, '\"'));\n\t\t\t\t} catch (error) {\n\t\t\t\t\tLog.warn(['parseJson', value]);\n\t\t\t\t\tLog.error(`↑ Der JSON-String konnte nicht geparsed werden. Achten Sie darauf, dass einfache Anführungszeichen im Text maskiert werden (‘).`);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\tthrow new Error();\n};\n\nexport const mapBoolean2String = (value?: boolean): string | undefined => {\n\treturn typeof value === 'boolean' ? (value === true ? 'true' : 'false') : undefined;\n};\n\nexport const mapStringOrBoolean2String = (value?: string | boolean): string | undefined => {\n\treturn typeof value === 'string' ? value : mapBoolean2String(value);\n};\n\nexport const koliBriQuerySelector = <T extends Element>(selector: string, node?: Document | HTMLElement | ShadowRoot): T | null =>\n\tquerySelector<T>(selector, node || getDocument());\n\nexport const koliBriQuerySelectorAll = <T extends Element>(selector: string, node?: Document | HTMLElement | ShadowRoot): T[] =>\n\tquerySelectorAll<T>(selector, node || getDocument());\n\ninterface A11yColorContrast {\n\tbackgroundColor: string;\n\tcolor: string;\n\tdomNode: HTMLElement | HTMLSlotElement;\n\tlevel: string;\n\tscore: number;\n}\n\nlet DEFAULT_COLOR_CONTRAST: A11yColorContrast | null = null;\nconst getDefaultColorContrast = (): A11yColorContrast => {\n\tDEFAULT_COLOR_CONTRAST = DEFAULT_COLOR_CONTRAST || {\n\t\tbackgroundColor: '#00000000',\n\t\tcolor: '#00000000',\n\t\tdomNode: getDocument().body,\n\t\tlevel: 'Fail',\n\t\tscore: 1,\n\t};\n\treturn DEFAULT_COLOR_CONTRAST;\n};\n\nconst TRANSPARENT_REGEXP = /(\\d+, ){3}0\\)/;\nexport const koliBriA11yColorContrast = (domNode: HTMLElement, a11yColorContrast: A11yColorContrast = getDefaultColorContrast()): A11yColorContrast => {\n\tconst computedStyle = getComputedStyle(domNode);\n\tconst hexBG: string = TRANSPARENT_REGEXP.test(computedStyle.backgroundColor) ? a11yColorContrast.backgroundColor : rgba.hex(computedStyle.backgroundColor);\n\tconst hexC: string = TRANSPARENT_REGEXP.test(computedStyle.color) ? a11yColorContrast.color : rgba.hex(computedStyle.color);\n\tconst diff = hex(hexBG, hexC);\n\tconst contrast = {\n\t\tbackgroundColor: hexBG,\n\t\tcolor: hexC,\n\t\tdomNode: domNode,\n\t\tlevel: score(diff),\n\t\tscore: diff,\n\t};\n\tif (diff < 4.5) {\n\t\tLog.error([\n\t\t\t'Color-Contrast-Error',\n\t\t\t{\n\t\t\t\tbackgroundColor: contrast.backgroundColor,\n\t\t\t\tcolor: contrast.color,\n\t\t\t\tlevel: contrast.level,\n\t\t\t\tscore: contrast.score,\n\t\t\t},\n\t\t\tcontrast.domNode,\n\t\t]);\n\t}\n\treturn contrast;\n};\n\nexport const koliBriQuerySelectorColors = (selector: string, a11yColorContrast: A11yColorContrast = getDefaultColorContrast()): A11yColorContrast => {\n\tif (a11yColorContrast.domNode instanceof HTMLElement) {\n\t\ta11yColorContrast = koliBriA11yColorContrast(a11yColorContrast.domNode, a11yColorContrast);\n\t}\n\tconst selectedNode: HTMLElement | null = a11yColorContrast.domNode.querySelector<HTMLElement>(selector);\n\tif (selectedNode === null) {\n\t\tconst nodeList: NodeListOf<HTMLElement> = a11yColorContrast.domNode.querySelectorAll<HTMLElement>('[class=\"hydrated\"]');\n\t\tfor (let i = 0; i < nodeList.length; i++) {\n\t\t\t// const shadowRoot: ShadowRoot = nodeList[i].shadowRoot as ShadowRoot;\n\t\t\t// if (typeof shadowRoot === 'object' && shadowRoot !== null) {\n\t\t\t// a11yColorContrast.domNode = shadowRoot;\n\t\t\t// a11yColorContrast = koliBriQuerySelectorColors(selector, a11yColorContrast);\n\t\t\t// } else {\n\t\t\ta11yColorContrast.domNode = nodeList[i];\n\t\t\ta11yColorContrast = koliBriQuerySelectorColors(selector, a11yColorContrast);\n\t\t\t// }\n\t\t\tif (a11yColorContrast.domNode !== null) {\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t\treturn a11yColorContrast;\n\t} else {\n\t\treturn koliBriA11yColorContrast(selectedNode, a11yColorContrast);\n\t}\n};\n\nexport class KoliBriUtils {\n\tprivate static executionLock = false;\n\tprivate static cache = new Map<Element, A11yColorContrast>();\n\tpublic static queryHtmlElementColors(targetNode: HTMLElement, a11yColorContrast: A11yColorContrast, recursion = false, log = true): A11yColorContrast | null {\n\t\tlet returnValue = null;\n\t\tif (recursion === true || KoliBriUtils.executionLock === false) {\n\t\t\tif (recursion === false) {\n\t\t\t\tKoliBriUtils.cache.clear();\n\t\t\t\tKoliBriUtils.cache.set(a11yColorContrast.domNode, a11yColorContrast);\n\t\t\t\tKoliBriUtils.executionLock = true;\n\t\t\t\tif (log === true) {\n\t\t\t\t\tLog.debug(`[KoliBriUtils] Color contrast analysis started...`);\n\t\t\t\t}\n\t\t\t}\n\t\t\t// Log.debug(a11yColorContrast.domNode);\n\t\t\tif (targetNode === a11yColorContrast.domNode) {\n\t\t\t\treturnValue = a11yColorContrast;\n\t\t\t} else {\n\t\t\t\tconst children: Set<Element> = new Set<Element>();\n\t\t\t\tif (a11yColorContrast.domNode.shadowRoot) {\n\t\t\t\t\tconst shadowChildren = a11yColorContrast.domNode.shadowRoot.children;\n\t\t\t\t\tfor (let i = 0; i < shadowChildren.length; i++) {\n\t\t\t\t\t\tchildren.add(shadowChildren[i]);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tconst slotElement: HTMLSlotElement = a11yColorContrast.domNode as HTMLSlotElement;\n\t\t\t\tif (typeof slotElement.assignedNodes === 'function') {\n\t\t\t\t\tconst slotChildren = slotElement.assignedNodes();\n\t\t\t\t\tfor (let i = 0; i < slotChildren.length; i++) {\n\t\t\t\t\t\tif (slotChildren[i] instanceof HTMLElement) {\n\t\t\t\t\t\t\tchildren.add(slotChildren[i] as HTMLElement);\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tconst domChildren = a11yColorContrast.domNode.children;\n\t\t\t\tfor (let i = 0; i < domChildren.length; i++) {\n\t\t\t\t\tchildren.add(domChildren[i]);\n\t\t\t\t}\n\t\t\t\tconst arrayChildren = Array.from(children);\n\t\t\t\tfor (let i = 0; i < arrayChildren.length; i++) {\n\t\t\t\t\tlet colorContrast: A11yColorContrast | undefined = KoliBriUtils.cache.get(arrayChildren[i]);\n\t\t\t\t\tif (colorContrast === undefined) {\n\t\t\t\t\t\tcolorContrast = koliBriA11yColorContrast(arrayChildren[i] as HTMLElement, a11yColorContrast);\n\t\t\t\t\t}\n\t\t\t\t\tKoliBriUtils.cache.set(arrayChildren[i], colorContrast);\n\t\t\t\t\tconst colors: A11yColorContrast | null = KoliBriUtils.queryHtmlElementColors(targetNode, colorContrast, true, false);\n\t\t\t\t\tif (colors !== null) {\n\t\t\t\t\t\treturnValue = colors;\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t} else {\n\t\t\tLog.debug(`[KoliBriUtils] Call aborted because a color contrast analysis is currently being executed.`);\n\t\t}\n\t\tif (recursion === false) {\n\t\t\tif (log === true) {\n\t\t\t\tLog.debug(`[KoliBriUtils] Color contrast analysis finished (${KoliBriUtils.cache.size} DOM elements are analysed).`);\n\t\t\t}\n\t\t\tKoliBriUtils.executionLock = false;\n\t\t\tKoliBriUtils.cache.clear();\n\t\t}\n\t\treturn returnValue;\n\t}\n}\n\ntype AriaCurrentEventType = {\n\tariaCurrent: AriaCurrentPropType;\n} & PropHref;\nexport const ariaCurrentSubject = new Subject<AriaCurrentEventType>();\n\nexport class KoliBriDevHelper {\n\tpublic static readonly patchTheme = patchTheme;\n\tpublic static readonly querySelector = koliBriQuerySelector;\n\tpublic static readonly querySelectorAll = koliBriQuerySelectorAll;\n\tpublic static readonly stringifyJson = stringifyJson;\n}\n"],"version":3}
|