@public-ui/components 1.6.0-rc.4 → 1.6.0-rc.5
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 +6 -6
- package/dist/cjs/button-link-153007e8.js.map +1 -1
- package/dist/cjs/{controller-1b763c05.js → controller-0ad98a73.js} +1 -1
- package/dist/cjs/{controller-1b763c05.js.map → controller-0ad98a73.js.map} +1 -1
- package/dist/cjs/{controller-93165ab9.js → controller-1d3b3fd5.js} +1 -1
- package/dist/cjs/{controller-93165ab9.js.map → controller-1d3b3fd5.js.map} +1 -1
- package/dist/cjs/controller-30129612.js +4 -0
- package/dist/cjs/controller-30129612.js.map +1 -0
- package/dist/cjs/{controller-abf026e3.js → controller-bd648cb7.js} +1 -1
- package/dist/cjs/{controller-abf026e3.js.map → controller-bd648cb7.js.map} +1 -1
- package/dist/cjs/controller-d95ae8a8.js +4 -0
- package/dist/cjs/controller-d95ae8a8.js.map +1 -0
- package/dist/cjs/{controller-icon-d3ae7955.js → controller-icon-5f64efaa.js} +1 -1
- package/dist/cjs/{controller-icon-d3ae7955.js.map → controller-icon-5f64efaa.js.map} +1 -1
- package/dist/cjs/floating-ui.dom.esm-f01eaf3d.js.map +1 -1
- package/dist/cjs/kol-alert-wc_2.cjs.entry.js +1 -1
- package/dist/cjs/kol-alert-wc_2.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-badge.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-breadcrumb.cjs.entry.js +1 -1
- package/dist/cjs/kol-breadcrumb.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-button-wc_2.cjs.entry.js +1 -1
- package/dist/cjs/kol-button-wc_2.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-card.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-details.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-form.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-heading.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-icon.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-input-checkbox.cjs.entry.js +1 -1
- package/dist/cjs/kol-input-checkbox.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-input-color.cjs.entry.js +1 -1
- package/dist/cjs/kol-input-color.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-input-date.cjs.entry.js +1 -1
- package/dist/cjs/kol-input-date.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-input-email.cjs.entry.js +1 -1
- package/dist/cjs/kol-input-email.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-input-file.cjs.entry.js +1 -1
- package/dist/cjs/kol-input-file.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-input-number.cjs.entry.js +1 -1
- package/dist/cjs/kol-input-number.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-input-password.cjs.entry.js +1 -1
- package/dist/cjs/kol-input-password.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-input-radio.cjs.entry.js +1 -1
- package/dist/cjs/kol-input-radio.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-input-range.cjs.entry.js +1 -1
- package/dist/cjs/kol-input-range.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-input-text.cjs.entry.js +1 -1
- package/dist/cjs/kol-input-text.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-kolibri.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-link-group.cjs.entry.js +1 -1
- package/dist/cjs/kol-link-group.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-link-wc.cjs.entry.js +1 -1
- package/dist/cjs/kol-link-wc.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-logo.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-modal.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-nav.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-pagination.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-popover.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-progress.cjs.entry.js +1 -1
- package/dist/cjs/kol-progress.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-quote.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-select.cjs.entry.js +1 -1
- package/dist/cjs/kol-select.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-skip-nav.cjs.entry.js +1 -1
- package/dist/cjs/kol-skip-nav.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-span-wc.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-span.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-spin.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-split-button.cjs.entry.js +1 -1
- package/dist/cjs/kol-split-button.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-symbol.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-table.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-tabs.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-textarea.cjs.entry.js +1 -1
- package/dist/cjs/kol-textarea.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-toast.cjs.entry.js +1 -1
- package/dist/cjs/kol-toast.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-tooltip.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-version.cjs.entry.js.map +1 -1
- package/dist/cjs/kolibri.cjs.js +1 -1
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/components/aria-selected.js +1 -1
- package/dist/components/color.js +1 -1
- package/dist/components/component.js.map +1 -1
- package/dist/components/component12.js +1 -1
- package/dist/components/component12.js.map +1 -1
- package/dist/components/component13.js +1 -1
- package/dist/components/component13.js.map +1 -1
- package/dist/components/component14.js.map +1 -1
- package/dist/components/component15.js +1 -1
- package/dist/components/component15.js.map +1 -1
- package/dist/components/component2.js.map +1 -1
- package/dist/components/component3.js +1 -1
- package/dist/components/component3.js.map +1 -1
- package/dist/components/component4.js.map +1 -1
- package/dist/components/component5.js +1 -1
- package/dist/components/component5.js.map +1 -1
- package/dist/components/component6.js +1 -1
- package/dist/components/component7.js +1 -1
- package/dist/components/component7.js.map +1 -1
- package/dist/components/component8.js +1 -1
- package/dist/components/component8.js.map +1 -1
- package/dist/components/controller.js +1 -1
- package/dist/components/controller.js.map +1 -1
- package/dist/components/controller2.js +1 -1
- package/dist/components/controller4.js +1 -1
- package/dist/components/floating-ui.dom.esm.js.map +1 -1
- package/dist/components/kol-accordion.js +1 -1
- package/dist/components/kol-breadcrumb.js.map +1 -1
- package/dist/components/kol-card.js +1 -1
- package/dist/components/kol-card.js.map +1 -1
- package/dist/components/kol-details.js +1 -1
- package/dist/components/kol-details.js.map +1 -1
- package/dist/components/kol-form.js +1 -1
- package/dist/components/kol-form.js.map +1 -1
- package/dist/components/kol-heading.js.map +1 -1
- package/dist/components/kol-input-checkbox.js +1 -1
- package/dist/components/kol-input-checkbox.js.map +1 -1
- package/dist/components/kol-input-color.js +1 -1
- package/dist/components/kol-input-color.js.map +1 -1
- package/dist/components/kol-input-date.js +1 -1
- package/dist/components/kol-input-date.js.map +1 -1
- package/dist/components/kol-input-email.js +1 -1
- package/dist/components/kol-input-email.js.map +1 -1
- package/dist/components/kol-input-file.js +1 -1
- package/dist/components/kol-input-file.js.map +1 -1
- package/dist/components/kol-input-number.js +1 -1
- package/dist/components/kol-input-number.js.map +1 -1
- package/dist/components/kol-input-password.js +1 -1
- package/dist/components/kol-input-password.js.map +1 -1
- package/dist/components/kol-input-range.js +1 -1
- package/dist/components/kol-input-range.js.map +1 -1
- package/dist/components/kol-input-text.js +1 -1
- package/dist/components/kol-input-text.js.map +1 -1
- package/dist/components/kol-kolibri.js +1 -1
- package/dist/components/kol-kolibri.js.map +1 -1
- package/dist/components/kol-link-group.js +1 -1
- package/dist/components/kol-link-group.js.map +1 -1
- package/dist/components/kol-logo.js.map +1 -1
- package/dist/components/kol-modal.js.map +1 -1
- package/dist/components/kol-nav.js +1 -1
- package/dist/components/kol-nav.js.map +1 -1
- package/dist/components/kol-popover.js.map +1 -1
- package/dist/components/kol-progress.js +1 -1
- package/dist/components/kol-progress.js.map +1 -1
- package/dist/components/kol-quote.js.map +1 -1
- package/dist/components/kol-skip-nav.js +1 -1
- package/dist/components/kol-skip-nav.js.map +1 -1
- package/dist/components/kol-span.js.map +1 -1
- package/dist/components/kol-spin.js +1 -1
- package/dist/components/kol-spin.js.map +1 -1
- package/dist/components/kol-split-button.js +1 -1
- package/dist/components/kol-split-button.js.map +1 -1
- package/dist/components/kol-symbol.js.map +1 -1
- package/dist/components/kol-table.js.map +1 -1
- package/dist/components/kol-tabs.js.map +1 -1
- package/dist/components/kol-textarea.js +1 -1
- package/dist/components/kol-textarea.js.map +1 -1
- package/dist/components/kol-toast.js +1 -1
- package/dist/components/kol-toast.js.map +1 -1
- package/dist/components/kol-version.js.map +1 -1
- package/dist/components/prop.validators.js +1 -1
- package/dist/components/show.js +1 -1
- package/dist/components/tab-index.js +1 -1
- package/dist/esm/button-link-283b2d32.js.map +1 -1
- package/dist/esm/controller-4ec2558c.js +4 -0
- package/dist/esm/controller-4ec2558c.js.map +1 -0
- package/dist/esm/{controller-5a459788.js → controller-60d1d5f4.js} +1 -1
- package/dist/esm/{controller-5a459788.js.map → controller-60d1d5f4.js.map} +1 -1
- package/dist/esm/controller-8fc78dec.js +4 -0
- package/dist/esm/controller-8fc78dec.js.map +1 -0
- package/dist/esm/{controller-cb6b97eb.js → controller-ad7fb632.js} +1 -1
- package/dist/esm/{controller-cb6b97eb.js.map → controller-ad7fb632.js.map} +1 -1
- package/dist/esm/{controller-2847846e.js → controller-e0b5fdbd.js} +1 -1
- package/dist/esm/{controller-2847846e.js.map → controller-e0b5fdbd.js.map} +1 -1
- package/dist/esm/{controller-icon-65f3377a.js → controller-icon-7e3b404f.js} +1 -1
- package/dist/esm/{controller-icon-65f3377a.js.map → controller-icon-7e3b404f.js.map} +1 -1
- package/dist/esm/floating-ui.dom.esm-2bceafa3.js.map +1 -1
- package/dist/esm/kol-alert-wc_2.entry.js +1 -1
- package/dist/esm/kol-alert-wc_2.entry.js.map +1 -1
- package/dist/esm/kol-badge.entry.js.map +1 -1
- package/dist/esm/kol-breadcrumb.entry.js +1 -1
- package/dist/esm/kol-breadcrumb.entry.js.map +1 -1
- package/dist/esm/kol-button-wc_2.entry.js +1 -1
- package/dist/esm/kol-button-wc_2.entry.js.map +1 -1
- package/dist/esm/kol-card.entry.js.map +1 -1
- package/dist/esm/kol-details.entry.js.map +1 -1
- package/dist/esm/kol-form.entry.js.map +1 -1
- package/dist/esm/kol-heading.entry.js.map +1 -1
- package/dist/esm/kol-icon.entry.js.map +1 -1
- package/dist/esm/kol-input-checkbox.entry.js +1 -1
- package/dist/esm/kol-input-checkbox.entry.js.map +1 -1
- package/dist/esm/kol-input-color.entry.js +1 -1
- package/dist/esm/kol-input-color.entry.js.map +1 -1
- package/dist/esm/kol-input-date.entry.js +1 -1
- package/dist/esm/kol-input-date.entry.js.map +1 -1
- package/dist/esm/kol-input-email.entry.js +1 -1
- package/dist/esm/kol-input-email.entry.js.map +1 -1
- package/dist/esm/kol-input-file.entry.js +1 -1
- package/dist/esm/kol-input-file.entry.js.map +1 -1
- package/dist/esm/kol-input-number.entry.js +1 -1
- package/dist/esm/kol-input-number.entry.js.map +1 -1
- package/dist/esm/kol-input-password.entry.js +1 -1
- package/dist/esm/kol-input-password.entry.js.map +1 -1
- package/dist/esm/kol-input-radio.entry.js +1 -1
- package/dist/esm/kol-input-radio.entry.js.map +1 -1
- package/dist/esm/kol-input-range.entry.js +1 -1
- package/dist/esm/kol-input-range.entry.js.map +1 -1
- package/dist/esm/kol-input-text.entry.js +1 -1
- package/dist/esm/kol-input-text.entry.js.map +1 -1
- package/dist/esm/kol-kolibri.entry.js.map +1 -1
- package/dist/esm/kol-link-group.entry.js +1 -1
- package/dist/esm/kol-link-group.entry.js.map +1 -1
- package/dist/esm/kol-link-wc.entry.js +1 -1
- package/dist/esm/kol-link-wc.entry.js.map +1 -1
- package/dist/esm/kol-logo.entry.js.map +1 -1
- package/dist/esm/kol-modal.entry.js.map +1 -1
- package/dist/esm/kol-nav.entry.js.map +1 -1
- package/dist/esm/kol-pagination.entry.js.map +1 -1
- package/dist/esm/kol-popover.entry.js.map +1 -1
- package/dist/esm/kol-progress.entry.js +1 -1
- package/dist/esm/kol-progress.entry.js.map +1 -1
- package/dist/esm/kol-quote.entry.js.map +1 -1
- package/dist/esm/kol-select.entry.js +1 -1
- package/dist/esm/kol-select.entry.js.map +1 -1
- package/dist/esm/kol-skip-nav.entry.js +1 -1
- package/dist/esm/kol-skip-nav.entry.js.map +1 -1
- package/dist/esm/kol-span-wc.entry.js.map +1 -1
- package/dist/esm/kol-span.entry.js.map +1 -1
- package/dist/esm/kol-spin.entry.js.map +1 -1
- package/dist/esm/kol-split-button.entry.js +1 -1
- package/dist/esm/kol-split-button.entry.js.map +1 -1
- package/dist/esm/kol-symbol.entry.js.map +1 -1
- package/dist/esm/kol-table.entry.js.map +1 -1
- package/dist/esm/kol-tabs.entry.js.map +1 -1
- package/dist/esm/kol-textarea.entry.js +1 -1
- package/dist/esm/kol-textarea.entry.js.map +1 -1
- package/dist/esm/kol-toast.entry.js +1 -1
- package/dist/esm/kol-toast.entry.js.map +1 -1
- package/dist/esm/kol-tooltip.entry.js.map +1 -1
- package/dist/esm/kol-version.entry.js.map +1 -1
- package/dist/esm/kolibri.js +1 -1
- package/dist/esm/loader.js +1 -1
- package/dist/kolibri/button-link-283b2d32.js.map +1 -1
- package/dist/kolibri/controller-4ec2558c.js +4 -0
- package/dist/kolibri/controller-4ec2558c.js.map +1 -0
- package/dist/kolibri/{controller-5a459788.js → controller-60d1d5f4.js} +1 -1
- package/dist/kolibri/controller-8fc78dec.js +4 -0
- package/dist/kolibri/controller-8fc78dec.js.map +1 -0
- package/dist/kolibri/{controller-cb6b97eb.js → controller-ad7fb632.js} +1 -1
- package/dist/kolibri/controller-e0b5fdbd.js +4 -0
- package/dist/kolibri/controller-icon-7e3b404f.js +4 -0
- package/dist/kolibri/floating-ui.dom.esm-2bceafa3.js.map +1 -1
- package/dist/kolibri/kol-alert-wc_2.entry.js +1 -1
- package/dist/kolibri/kol-alert-wc_2.entry.js.map +1 -1
- package/dist/kolibri/kol-badge.entry.js.map +1 -1
- package/dist/kolibri/kol-breadcrumb.entry.js +1 -1
- package/dist/kolibri/kol-breadcrumb.entry.js.map +1 -1
- package/dist/kolibri/kol-button-wc_2.entry.js +1 -1
- package/dist/kolibri/kol-button-wc_2.entry.js.map +1 -1
- package/dist/kolibri/kol-card.entry.js.map +1 -1
- package/dist/kolibri/kol-details.entry.js.map +1 -1
- package/dist/kolibri/kol-form.entry.js.map +1 -1
- package/dist/kolibri/kol-heading.entry.js.map +1 -1
- package/dist/kolibri/kol-icon.entry.js.map +1 -1
- package/dist/kolibri/kol-input-checkbox.entry.js +1 -1
- package/dist/kolibri/kol-input-checkbox.entry.js.map +1 -1
- package/dist/kolibri/kol-input-color.entry.js +1 -1
- package/dist/kolibri/kol-input-color.entry.js.map +1 -1
- package/dist/kolibri/kol-input-date.entry.js +1 -1
- package/dist/kolibri/kol-input-date.entry.js.map +1 -1
- package/dist/kolibri/kol-input-email.entry.js +1 -1
- package/dist/kolibri/kol-input-email.entry.js.map +1 -1
- package/dist/kolibri/kol-input-file.entry.js +1 -1
- package/dist/kolibri/kol-input-file.entry.js.map +1 -1
- package/dist/kolibri/kol-input-number.entry.js +1 -1
- package/dist/kolibri/kol-input-number.entry.js.map +1 -1
- package/dist/kolibri/kol-input-password.entry.js +1 -1
- package/dist/kolibri/kol-input-password.entry.js.map +1 -1
- package/dist/kolibri/kol-input-radio.entry.js +1 -1
- package/dist/kolibri/kol-input-radio.entry.js.map +1 -1
- package/dist/kolibri/kol-input-range.entry.js +1 -1
- package/dist/kolibri/kol-input-range.entry.js.map +1 -1
- package/dist/kolibri/kol-input-text.entry.js +1 -1
- package/dist/kolibri/kol-input-text.entry.js.map +1 -1
- package/dist/kolibri/kol-kolibri.entry.js.map +1 -1
- package/dist/kolibri/kol-link-group.entry.js +1 -1
- package/dist/kolibri/kol-link-group.entry.js.map +1 -1
- package/dist/kolibri/kol-link-wc.entry.js +1 -1
- package/dist/kolibri/kol-link-wc.entry.js.map +1 -1
- package/dist/kolibri/kol-logo.entry.js.map +1 -1
- package/dist/kolibri/kol-modal.entry.js.map +1 -1
- package/dist/kolibri/kol-nav.entry.js.map +1 -1
- package/dist/kolibri/kol-pagination.entry.js.map +1 -1
- package/dist/kolibri/kol-popover.entry.js.map +1 -1
- package/dist/kolibri/kol-progress.entry.js +1 -1
- package/dist/kolibri/kol-progress.entry.js.map +1 -1
- package/dist/kolibri/kol-quote.entry.js.map +1 -1
- package/dist/kolibri/kol-select.entry.js +1 -1
- package/dist/kolibri/kol-select.entry.js.map +1 -1
- package/dist/kolibri/kol-skip-nav.entry.js +1 -1
- package/dist/kolibri/kol-skip-nav.entry.js.map +1 -1
- package/dist/kolibri/kol-span-wc.entry.js.map +1 -1
- package/dist/kolibri/kol-span.entry.js.map +1 -1
- package/dist/kolibri/kol-spin.entry.js.map +1 -1
- package/dist/kolibri/kol-split-button.entry.js +1 -1
- package/dist/kolibri/kol-split-button.entry.js.map +1 -1
- package/dist/kolibri/kol-symbol.entry.js.map +1 -1
- package/dist/kolibri/kol-table.entry.js.map +1 -1
- package/dist/kolibri/kol-tabs.entry.js.map +1 -1
- package/dist/kolibri/kol-textarea.entry.js +1 -1
- package/dist/kolibri/kol-textarea.entry.js.map +1 -1
- package/dist/kolibri/kol-toast.entry.js +1 -1
- package/dist/kolibri/kol-toast.entry.js.map +1 -1
- package/dist/kolibri/kol-tooltip.entry.js.map +1 -1
- package/dist/kolibri/kol-version.entry.js.map +1 -1
- package/dist/kolibri/kolibri.esm.js +1 -1
- package/dist/kolibri/kolibri.esm.js.map +1 -1
- package/dist/types/components/@deprecated/input/types.d.ts +1 -0
- package/dist/types/components/badge/component.d.ts +4 -24
- package/dist/types/components/badge/test/html.mock.d.ts +2 -2
- package/dist/types/components/badge/types.d.ts +23 -0
- package/dist/types/components/breadcrumb/component.d.ts +3 -16
- package/dist/types/components/breadcrumb/test/html.mock.d.ts +2 -2
- package/dist/types/components/breadcrumb/types.d.ts +16 -0
- package/dist/types/components/card/component.d.ts +3 -16
- package/dist/types/components/card/test/html.mock.d.ts +2 -2
- package/dist/types/components/card/types.d.ts +16 -0
- package/dist/types/components/details/component.d.ts +3 -14
- package/dist/types/components/details/test/html.mock.d.ts +2 -2
- package/dist/types/components/details/types.d.ts +13 -0
- package/dist/types/components/form/component.d.ts +3 -19
- package/dist/types/components/form/test/html.mock.d.ts +2 -2
- package/dist/types/components/form/types.d.ts +18 -0
- package/dist/types/components/heading/component.d.ts +3 -20
- package/dist/types/components/heading/shadow.d.ts +2 -2
- package/dist/types/components/heading/test/html.mock.d.ts +3 -3
- package/dist/types/components/heading/types.d.ts +20 -0
- package/dist/types/components/icon/component.d.ts +3 -15
- package/dist/types/components/icon/test/html.mock.d.ts +2 -2
- package/dist/types/components/icon/types.d.ts +14 -0
- package/dist/types/components/input/component.d.ts +1 -0
- package/dist/types/components/input/types.d.ts +2 -0
- package/dist/types/components/input-adapter-leanup/controller.d.ts +2 -0
- package/dist/types/components/input-adapter-leanup/types.d.ts +1 -0
- package/dist/types/components/input-checkbox/component.d.ts +2 -0
- package/dist/types/components/input-checkbox/types.d.ts +1 -0
- package/dist/types/components/input-color/component.d.ts +2 -0
- package/dist/types/components/input-color/types.d.ts +1 -0
- package/dist/types/components/input-date/component.d.ts +2 -0
- package/dist/types/components/input-date/types.d.ts +1 -0
- package/dist/types/components/input-email/component.d.ts +2 -0
- package/dist/types/components/input-email/types.d.ts +1 -0
- package/dist/types/components/input-file/component.d.ts +2 -0
- package/dist/types/components/input-file/types.d.ts +1 -0
- package/dist/types/components/input-number/component.d.ts +2 -0
- package/dist/types/components/input-number/types.d.ts +1 -0
- package/dist/types/components/input-password/component.d.ts +2 -0
- package/dist/types/components/input-password/types.d.ts +1 -0
- package/dist/types/components/input-radio/component.d.ts +2 -0
- package/dist/types/components/input-radio/types.d.ts +1 -0
- package/dist/types/components/input-range/component.d.ts +2 -0
- package/dist/types/components/input-range/types.d.ts +1 -0
- package/dist/types/components/input-text/component.d.ts +2 -0
- package/dist/types/components/input-text/types.d.ts +1 -0
- package/dist/types/components/kolibri/component.d.ts +3 -21
- package/dist/types/components/kolibri/types.d.ts +21 -0
- package/dist/types/components/link/component.d.ts +2 -3
- package/dist/types/components/link-group/component.d.ts +3 -28
- package/dist/types/components/link-group/types.d.ts +28 -0
- package/dist/types/components/logo/component.d.ts +3 -13
- package/dist/types/components/logo/types.d.ts +13 -0
- package/dist/types/components/modal/component.d.ts +3 -19
- package/dist/types/components/modal/types.d.ts +19 -0
- package/dist/types/components/nav/component.d.ts +4 -25
- package/dist/types/components/nav/types.d.ts +25 -0
- package/dist/types/components/pagination/component.d.ts +4 -40
- package/dist/types/components/pagination/types.d.ts +39 -0
- package/dist/types/components/popover/component.d.ts +4 -14
- package/dist/types/components/popover/test/html.mock.d.ts +2 -2
- package/dist/types/components/popover/types.d.ts +12 -0
- package/dist/types/components/progress/component.d.ts +3 -22
- package/dist/types/components/progress/types.d.ts +22 -0
- package/dist/types/components/quote/shadow.d.ts +3 -3
- package/dist/types/components/quote/test/html.mock.d.ts +2 -2
- package/dist/types/components/quote/types.d.ts +3 -3
- package/dist/types/components/select/component.d.ts +2 -0
- package/dist/types/components/select/types.d.ts +1 -0
- package/dist/types/components/skip-nav/component.d.ts +3 -15
- package/dist/types/components/skip-nav/types.d.ts +15 -0
- package/dist/types/components/span/component.d.ts +4 -27
- package/dist/types/components/span/shadow.d.ts +2 -2
- package/dist/types/components/span/test/html.mock.d.ts +3 -3
- package/dist/types/components/span/types.d.ts +27 -0
- package/dist/types/components/spin/component.d.ts +4 -12
- package/dist/types/components/spin/test/html.mock.d.ts +2 -2
- package/dist/types/components/spin/types.d.ts +11 -0
- package/dist/types/components/split-button/component.d.ts +3 -3
- package/dist/types/components/split-button/types.d.ts +2 -2
- package/dist/types/components/symbol/component.d.ts +3 -13
- package/dist/types/components/symbol/test/html.mock.d.ts +2 -2
- package/dist/types/components/symbol/types.d.ts +12 -0
- package/dist/types/components/table/component.d.ts +7 -32
- package/dist/types/components/table/types.d.ts +65 -0
- package/dist/types/components/tabs/component.d.ts +4 -45
- package/dist/types/components/tabs/types.d.ts +44 -0
- package/dist/types/components/textarea/component.d.ts +2 -0
- package/dist/types/components/textarea/types.d.ts +1 -0
- package/dist/types/components/toast/component.d.ts +3 -18
- package/dist/types/components/toast/test/html.mock.d.ts +2 -2
- package/dist/types/components/toast/types.d.ts +18 -0
- package/dist/types/components/tooltip/component.d.ts +3 -15
- package/dist/types/components/tooltip/test/html.mock.d.ts +2 -2
- package/dist/types/components/tooltip/types.d.ts +15 -0
- package/dist/types/components/version/component.d.ts +3 -12
- package/dist/types/components/version/test/html.mock.d.ts +2 -2
- package/dist/types/components/version/types.d.ts +11 -0
- package/dist/types/components.d.ts +66 -16
- package/dist/types/core/declare.d.ts +10 -0
- package/dist/types/i18n.d.ts +1 -1
- package/dist/types/types/button-link.d.ts +3 -2
- package/doc/icon-font-awesome.md +1 -1
- package/doc/icon-icofont.md +1 -1
- package/doc/table.md +3 -3
- package/jest-test-results.json +1 -1
- package/package.json +1 -1
- package/vscode-custom-data.json +12 -12
- package/dist/cjs/controller-31f22d30.js +0 -4
- package/dist/cjs/controller-31f22d30.js.map +0 -1
- package/dist/cjs/controller-77a2ce9f.js +0 -4
- package/dist/cjs/controller-77a2ce9f.js.map +0 -1
- package/dist/esm/controller-cad0ac5e.js +0 -4
- package/dist/esm/controller-cad0ac5e.js.map +0 -1
- package/dist/esm/controller-cc18d25f.js +0 -4
- package/dist/esm/controller-cc18d25f.js.map +0 -1
- package/dist/kolibri/controller-2847846e.js +0 -4
- package/dist/kolibri/controller-cad0ac5e.js +0 -4
- package/dist/kolibri/controller-cad0ac5e.js.map +0 -1
- package/dist/kolibri/controller-cc18d25f.js +0 -4
- package/dist/kolibri/controller-cc18d25f.js.map +0 -1
- package/dist/kolibri/controller-icon-65f3377a.js +0 -4
- package/dist/types/types/table.d.ts +0 -37
- /package/dist/kolibri/{controller-5a459788.js.map → controller-60d1d5f4.js.map} +0 -0
- /package/dist/kolibri/{controller-cb6b97eb.js.map → controller-ad7fb632.js.map} +0 -0
- /package/dist/kolibri/{controller-2847846e.js.map → controller-e0b5fdbd.js.map} +0 -0
- /package/dist/kolibri/{controller-icon-65f3377a.js.map → controller-icon-7e3b404f.js.map} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["defaultStyleCss","featureHint","KolBadge","this","bgColorStr","colorStr","id","nonce","handleColorChange","value","colorPair","backgroundColor","foregroundColor","_color","_label","render","h","Host","class","state","_smartButton","style","color","_icon","_hideLabel","_iconOnly","_ariaControls","_ariaLabel","_customClass","_disabled","_id","_on","_tooltipAlign","_variant","validateColor","defaultValue","hooks","beforePatch","validateLabel","afterPatch","length","a11yHint","validateSmartButton","objectObjectHandler","parseJson","e","setState","componentWillLoad"],"sources":["./src/components/badge/style.css?tag=kol-badge&mode=default&encapsulation=shadow","./src/components/badge/component.tsx"],"sourcesContent":["@import url(../style.css);\n:host > span {\n\tdisplay: inline-flex;\n\tplace-items: center;\n}\n:host > span > kol-button-wc button {\n\tcolor: inherit;\n}\n","import { Component, h, Host, JSX, Prop, State, Watch } from '@stencil/core';\n\nimport {
|
|
1
|
+
{"version":3,"names":["defaultStyleCss","featureHint","KolBadge","this","bgColorStr","colorStr","id","nonce","handleColorChange","value","colorPair","backgroundColor","foregroundColor","_color","_label","render","h","Host","class","state","_smartButton","style","color","_icon","_hideLabel","_iconOnly","_ariaControls","_ariaLabel","_customClass","_disabled","_id","_on","_tooltipAlign","_variant","validateColor","defaultValue","hooks","beforePatch","validateLabel","afterPatch","length","a11yHint","validateSmartButton","objectObjectHandler","parseJson","e","setState","componentWillLoad"],"sources":["./src/components/badge/style.css?tag=kol-badge&mode=default&encapsulation=shadow","./src/components/badge/component.tsx"],"sourcesContent":["@import url(../style.css);\n:host > span {\n\tdisplay: inline-flex;\n\tplace-items: center;\n}\n:host > span > kol-button-wc button {\n\tcolor: inherit;\n}\n","import { Component, h, Host, JSX, Prop, State, Watch } from '@stencil/core';\n\nimport { ButtonProps } from '../../types/button-link';\nimport { Stringified } from '../../types/common';\nimport { KoliBriIconProp } from '../../types/icon';\nimport { handleColorChange, PropColor, validateColor } from '../../types/props/color';\nimport { a11yHint, featureHint } from '../../utils/a11y.tipps';\nimport { objectObjectHandler, parseJson, setState } from '../../utils/prop.validators';\nimport { validateLabel } from '../../types/props';\nimport { nonce } from '../../utils/dev.utils';\nimport { KoliBriBadgeProps, KoliBriBadgeStates } from './types';\n\nfeatureHint(`[KolBadge] Optimierung des _color-Properties (rgba, rgb, hex usw.).`);\n\n@Component({\n\ttag: 'kol-badge',\n\tstyleUrls: {\n\t\tdefault: './style.css',\n\t},\n\tshadow: true,\n})\nexport class KolBadge implements KoliBriBadgeProps {\n\tprivate bgColorStr = '#000';\n\tprivate colorStr = '#fff';\n\tprivate readonly id = nonce();\n\n\tpublic render(): JSX.Element {\n\t\treturn (\n\t\t\t<Host>\n\t\t\t\t<span\n\t\t\t\t\tclass={{\n\t\t\t\t\t\t'smart-button': typeof this.state._smartButton === 'object' && this.state._smartButton !== null,\n\t\t\t\t\t}}\n\t\t\t\t\tstyle={{\n\t\t\t\t\t\tbackgroundColor: this.bgColorStr,\n\t\t\t\t\t\tcolor: this.colorStr,\n\t\t\t\t\t}}\n\t\t\t\t>\n\t\t\t\t\t<kol-span-wc id={this.id} _icon={this._icon} _hideLabel={this._hideLabel || this._iconOnly} _label={this.state._label}></kol-span-wc>\n\t\t\t\t\t{typeof this.state._smartButton === 'object' && this.state._smartButton !== null && (\n\t\t\t\t\t\t<kol-button-wc\n\t\t\t\t\t\t\t_ariaControls={this.id}\n\t\t\t\t\t\t\t_ariaLabel={this.state._smartButton._ariaLabel}\n\t\t\t\t\t\t\t_customClass={this.state._smartButton._customClass}\n\t\t\t\t\t\t\t_disabled={this.state._smartButton._disabled}\n\t\t\t\t\t\t\t_hideLabel={true}\n\t\t\t\t\t\t\t_icon={this.state._smartButton._icon}\n\t\t\t\t\t\t\t_id={this.state._smartButton._id}\n\t\t\t\t\t\t\t_label={this.state._smartButton._label}\n\t\t\t\t\t\t\t_on={this.state._smartButton._on}\n\t\t\t\t\t\t\t_tooltipAlign={this.state._smartButton._tooltipAlign}\n\t\t\t\t\t\t\t_variant={this.state._smartButton._variant}\n\t\t\t\t\t\t></kol-button-wc>\n\t\t\t\t\t)}\n\t\t\t\t</span>\n\t\t\t</Host>\n\t\t);\n\t}\n\n\t/**\n\t * Setzt die Hintergrundfarbe.\n\t */\n\t@Prop() public _color?: Stringified<PropColor> = '#000';\n\n\t/**\n\t * Blendet die Beschriftung (Label) aus und zeigt sie stattdessen mittels eines Tooltips an.\n\t */\n\t@Prop({ reflect: true }) public _hideLabel?: boolean = false;\n\n\t/**\n\t * Setzt die Iconklasse (z.B.: `_icon=\"codicon codicon-home`).\n\t */\n\t@Prop() public _icon?: Stringified<KoliBriIconProp>;\n\n\t/**\n\t * Blendet die Beschriftung (Label) aus und zeigt sie stattdessen mittels eines Tooltips an.\n\t * @deprecated use _hide-label\n\t */\n\t@Prop({ reflect: true }) public _iconOnly?: boolean;\n\n\t/**\n\t * Setzt die sichtbare oder semantische Beschriftung der Komponente (z.B. Aria-Label, Label, Headline, Caption, Summary usw.).\n\t */\n\t@Prop() public _label!: string;\n\n\t/**\n\t * Ermöglicht einen Schalter ins das Eingabefeld mit einer beliebigen Aktion zu einzufügen (nur Icon-Only).\n\t */\n\t@Prop() public _smartButton?: Stringified<ButtonProps>;\n\n\t@State() public state: KoliBriBadgeStates = {\n\t\t_color: {\n\t\t\tbackgroundColor: '#000',\n\t\t\tforegroundColor: '#fff',\n\t\t},\n\t\t_label: '…', // ⚠ required\n\t};\n\n\tprivate handleColorChange = (value: unknown) => {\n\t\tconst colorPair = handleColorChange(value);\n\t\tthis.bgColorStr = colorPair.backgroundColor;\n\t\tthis.colorStr = colorPair.foregroundColor as string;\n\t};\n\n\t@Watch('_color')\n\tpublic validateColor(value?: Stringified<PropColor>): void {\n\t\tvalidateColor(this, value, {\n\t\t\tdefaultValue: '#000',\n\t\t\thooks: {\n\t\t\t\tbeforePatch: this.handleColorChange,\n\t\t\t},\n\t\t});\n\t}\n\n\t@Watch('_label')\n\tpublic validateLabel(value?: string): void {\n\t\tvalidateLabel(this, value, {\n\t\t\thooks: {\n\t\t\t\tafterPatch: (value) => {\n\t\t\t\t\tif (typeof value === 'string' && value.length > 32) {\n\t\t\t\t\t\ta11yHint(`[KolBadge] The label is too long for a badge (${value.length} > 32).`);\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t},\n\t\t});\n\t}\n\n\t@Watch('_smartButton')\n\tpublic validateSmartButton(value?: ButtonProps | string): void {\n\t\tobjectObjectHandler(value, () => {\n\t\t\ttry {\n\t\t\t\tvalue = parseJson<ButtonProps>(value as string);\n\t\t\t\t// eslint-disable-next-line no-empty\n\t\t\t} catch (e) {\n\t\t\t\t// value behält den ursprünglichen Wert\n\t\t\t}\n\t\t\tsetState(this, '_smartButton', value);\n\t\t});\n\t}\n\n\tpublic componentWillLoad(): void {\n\t\tthis.validateColor(this._color);\n\t\tthis.validateLabel(this._label);\n\t\tthis.validateSmartButton(this._smartButton);\n\t}\n}\n"],"mappings":";;;qWAAA,MAAMA,EAAkB,uxBCYxBC,EAAY,uE,MASCC,EAAQ,M,yBACZC,KAAAC,WAAa,OACbD,KAAAE,SAAW,OACFF,KAAAG,GAAKC,IA0EdJ,KAAAK,kBAAqBC,IAC5B,MAAMC,EAAYF,EAAkBC,GACpCN,KAAKC,WAAaM,EAAUC,gBAC5BR,KAAKE,SAAWK,EAAUE,eAAyB,E,YAvCH,O,gBAKM,M,2GAuBX,CAC3CC,OAAQ,CACPF,gBAAiB,OACjBC,gBAAiB,QAElBE,OAAQ,I,CArEFC,SACN,OACCC,EAACC,EAAI,KACJD,EAAA,QACCE,MAAO,CACN,sBAAuBf,KAAKgB,MAAMC,eAAiB,UAAYjB,KAAKgB,MAAMC,eAAiB,MAE5FC,MAAO,CACNV,gBAAiBR,KAAKC,WACtBkB,MAAOnB,KAAKE,WAGbW,EAAA,eAAaV,GAAIH,KAAKG,GAAIiB,MAAOpB,KAAKoB,MAAOC,WAAYrB,KAAKqB,YAAcrB,KAAKsB,UAAWX,OAAQX,KAAKgB,MAAML,gBACvGX,KAAKgB,MAAMC,eAAiB,UAAYjB,KAAKgB,MAAMC,eAAiB,MAC3EJ,EAAA,iBACCU,cAAevB,KAAKG,GACpBqB,WAAYxB,KAAKgB,MAAMC,aAAaO,WACpCC,aAAczB,KAAKgB,MAAMC,aAAaQ,aACtCC,UAAW1B,KAAKgB,MAAMC,aAAaS,UACnCL,WAAY,KACZD,MAAOpB,KAAKgB,MAAMC,aAAaG,MAC/BO,IAAK3B,KAAKgB,MAAMC,aAAaU,IAC7BhB,OAAQX,KAAKgB,MAAMC,aAAaN,OAChCiB,IAAK5B,KAAKgB,MAAMC,aAAaW,IAC7BC,cAAe7B,KAAKgB,MAAMC,aAAaY,cACvCC,SAAU9B,KAAKgB,MAAMC,aAAaa,Y,CAsDjCC,cAAczB,GACpByB,EAAc/B,KAAMM,EAAO,CAC1B0B,aAAc,OACdC,MAAO,CACNC,YAAalC,KAAKK,oB,CAMd8B,cAAc7B,GACpB6B,EAAcnC,KAAMM,EAAO,CAC1B2B,MAAO,CACNG,WAAa9B,IACZ,UAAWA,IAAU,UAAYA,EAAM+B,OAAS,GAAI,CACnDC,EAAS,iDAAiDhC,EAAM+B,gB,MAQ9DE,oBAAoBjC,GAC1BkC,EAAoBlC,GAAO,KAC1B,IACCA,EAAQmC,EAAuBnC,E,CAE9B,MAAOoC,G,CAGTC,EAAS3C,KAAM,eAAgBM,EAAM,G,CAIhCsC,oBACN5C,KAAK+B,cAAc/B,KAAKU,QACxBV,KAAKmC,cAAcnC,KAAKW,QACxBX,KAAKuC,oBAAoBvC,KAAKiB,a"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* KoliBri - The accessible HTML-Standard
|
|
3
3
|
*/
|
|
4
|
-
import{r as i,h as t,F as e,H as a}from"./index-6ad587d0.js";import{b as n}from"./a11y.tipps-2e27f8e6.js";import{w as o}from"./
|
|
4
|
+
import{r as i,h as t,F as e,H as a}from"./index-6ad587d0.js";import{b as n}from"./a11y.tipps-2e27f8e6.js";import{w as o}from"./validation-b0e97f6c.js";import{w as r}from"./prop.validators-f81af56e.js";import"./dev.utils-157f0499.js";import"./reuse-3a02afb9.js";import"./index-ff788b4b.js";const s=":host{--a11y-min-size:44px;font-size:inherit}*{hyphens:auto;letter-spacing:inherit;word-break:break-word;word-spacing:inherit}[role='button'],button:not([role='link']),kol-input .input{min-height:var(--a11y-min-size);min-width:var(--a11y-min-size)}a,button,h1,h2,h3,h4,h5,h6,input,option,select,textarea{font-family:inherit;font-size:inherit}:is(a,button){background-color:transparent;border:none;margin:0;padding:0;width:100%;}:host{max-width:100%}*{box-sizing:border-box}kol-span-wc{display:grid;place-items:center}kol-span-wc>span{display:flex;place-items:center}a,button{cursor:pointer}button,input,option,select,textarea{font-family:inherit}.icon-only>kol-span-wc>span>span{display:none}li,ul{margin:0;padding:0;list-style:none;display:flex;gap:0.5em;flex-wrap:wrap;place-items:center}kol-icon::part(separator){font-weight:900;font-size:0.7em}kol-icon::part(separator):before{content:'\\f054';font-family:'Font Awesome 6 Free'}",l=class{constructor(a){i(this,a),this.renderLink=(i,a)=>{const n=this.state._links.length-1,o=i._iconOnly||i._hideLabel;return t("li",{key:a},0!==a&&t("kol-icon",{_ariaLabel:"",_icon:"codicon codicon-chevron-right"}),a===n?t("span",null,o?t("kol-icon",{_ariaLabel:i._label,_icon:"string"==typeof i._icon?i._icon:"codicon codicon-symbol-event"}):t(e,null,i._label)):t("kol-link",Object.assign({_useCase:"nav"},i,{_ariaLabel:i._label}),i._label))},this._ariaLabel=void 0,this._links=void 0,this.state={_ariaLabel:"…",_links:[]}}render(){return t(a,null,t("nav",{"aria-label":this.state._ariaLabel},t("ul",null,0===this.state._links.length&&t("li",null,t("kol-icon",{_ariaLabel:"",_icon:"codicon codicon-home"}),"…"),this.state._links.map(this.renderLink))))}validateAriaLabel(i){r(this,"_ariaLabel",i,{required:!0}),n(i)}validateLinks(i){o("KolBreadcrumb",this,i)}componentWillLoad(){this.validateAriaLabel(this._ariaLabel),this.validateLinks(this._links)}static get watchers(){return{_ariaLabel:["validateAriaLabel"],_links:["validateLinks"]}}};l.style={default:s};export{l as kol_breadcrumb};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["defaultStyleCss","KolBreadcrumb","this","renderLink","link","index","lastIndex","state","_links","length","hideLabel","_iconOnly","_hideLabel","h","key","_ariaLabel","_icon","_label","Fragment","Object","assign","_useCase","render","Host","map","validateAriaLabel","value","watchString","required","a11yHintLabelingLandmarks","validateLinks","watchNavLinks","componentWillLoad"],"sources":["./src/components/breadcrumb/style.css?tag=kol-breadcrumb&mode=default&encapsulation=shadow","./src/components/breadcrumb/component.tsx"],"sourcesContent":["@import url(../style.css);\nli,\nul {\n\tmargin: 0;\n\tpadding: 0;\n\tlist-style: none;\n\tdisplay: flex;\n\tgap: 0.5em;\n\tflex-wrap: wrap;\n\tplace-items: center;\n}\nkol-icon::part(separator) {\n\tfont-weight: 900;\n\tfont-size: 0.7em;\n}\nkol-icon::part(separator):before {\n\tcontent: '\\f054';\n\tfont-family: 'Font Awesome 6 Free';\n}\n","import { Component, Fragment, h, Host, JSX, Prop, State, Watch } from '@stencil/core';\n\nimport {
|
|
1
|
+
{"version":3,"names":["defaultStyleCss","KolBreadcrumb","this","renderLink","link","index","lastIndex","state","_links","length","hideLabel","_iconOnly","_hideLabel","h","key","_ariaLabel","_icon","_label","Fragment","Object","assign","_useCase","render","Host","map","validateAriaLabel","value","watchString","required","a11yHintLabelingLandmarks","validateLinks","watchNavLinks","componentWillLoad"],"sources":["./src/components/breadcrumb/style.css?tag=kol-breadcrumb&mode=default&encapsulation=shadow","./src/components/breadcrumb/component.tsx"],"sourcesContent":["@import url(../style.css);\nli,\nul {\n\tmargin: 0;\n\tpadding: 0;\n\tlist-style: none;\n\tdisplay: flex;\n\tgap: 0.5em;\n\tflex-wrap: wrap;\n\tplace-items: center;\n}\nkol-icon::part(separator) {\n\tfont-weight: 900;\n\tfont-size: 0.7em;\n}\nkol-icon::part(separator):before {\n\tcontent: '\\f054';\n\tfont-family: 'Font Awesome 6 Free';\n}\n","import { Component, Fragment, h, Host, JSX, Prop, State, Watch } from '@stencil/core';\n\nimport { LinkProps } from '../../types/button-link';\nimport { Stringified } from '../../types/common';\nimport { a11yHintLabelingLandmarks } from '../../utils/a11y.tipps';\nimport { watchNavLinks } from '../nav/validation';\nimport { KoliBriBreadcrumbAPI, KoliBriBreadcrumbStates } from './types';\nimport { watchString } from '../../utils/prop.validators';\n\n@Component({\n\ttag: 'kol-breadcrumb',\n\tstyleUrls: {\n\t\tdefault: './style.css',\n\t},\n\tshadow: true,\n})\nexport class KolBreadcrumb implements KoliBriBreadcrumbAPI {\n\tprivate readonly renderLink = (link: LinkProps, index: number): JSX.Element => {\n\t\tconst lastIndex = this.state._links.length - 1;\n\t\tconst hideLabel = link._iconOnly || link._hideLabel;\n\t\treturn (\n\t\t\t<li key={index}>\n\t\t\t\t{index !== 0 && <kol-icon _ariaLabel=\"\" _icon=\"codicon codicon-chevron-right\" />}\n\t\t\t\t{index === lastIndex ? (\n\t\t\t\t\t<span>\n\t\t\t\t\t\t{hideLabel ? (\n\t\t\t\t\t\t\t<kol-icon _ariaLabel={link._label} _icon={typeof link._icon === 'string' ? link._icon : 'codicon codicon-symbol-event'} />\n\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t<Fragment>{link._label}</Fragment>\n\t\t\t\t\t\t)}\n\t\t\t\t\t</span>\n\t\t\t\t) : (\n\t\t\t\t\t<kol-link _useCase=\"nav\" {...link} _ariaLabel={link._label}>\n\t\t\t\t\t\t{link._label}\n\t\t\t\t\t</kol-link>\n\t\t\t\t)}\n\t\t\t</li>\n\t\t);\n\t};\n\n\tpublic render(): JSX.Element {\n\t\treturn (\n\t\t\t<Host>\n\t\t\t\t<nav aria-label={this.state._ariaLabel}>\n\t\t\t\t\t<ul>\n\t\t\t\t\t\t{this.state._links.length === 0 && (\n\t\t\t\t\t\t\t<li>\n\t\t\t\t\t\t\t\t<kol-icon _ariaLabel=\"\" _icon=\"codicon codicon-home\" />…\n\t\t\t\t\t\t\t</li>\n\t\t\t\t\t\t)}\n\t\t\t\t\t\t{this.state._links.map(this.renderLink)}\n\t\t\t\t\t</ul>\n\t\t\t\t</nav>\n\t\t\t</Host>\n\t\t);\n\t}\n\n\t/**\n\t * Setzt die sichtbare oder semantische Beschriftung der Komponente (z.B. Aria-Label, Label, Headline, Caption, Summary usw.).\n\t */\n\t@Prop() public _ariaLabel!: string;\n\n\t/**\n\t * Gibt die Liste der darzustellenden Button, Links oder Texte an.\n\t */\n\t@Prop() public _links!: Stringified<LinkProps[]>;\n\n\t@State() public state: KoliBriBreadcrumbStates = {\n\t\t_ariaLabel: '…', // '⚠'\n\t\t_links: [],\n\t};\n\n\t@Watch('_ariaLabel')\n\tpublic validateAriaLabel(value?: string): void {\n\t\twatchString(this, '_ariaLabel', value, {\n\t\t\trequired: true,\n\t\t});\n\t\ta11yHintLabelingLandmarks(value);\n\t}\n\n\t@Watch('_links')\n\tpublic validateLinks(value?: Stringified<LinkProps[]>): void {\n\t\twatchNavLinks('KolBreadcrumb', this, value);\n\t}\n\n\tpublic componentWillLoad(): void {\n\t\tthis.validateAriaLabel(this._ariaLabel);\n\t\tthis.validateLinks(this._links);\n\t}\n}\n"],"mappings":";;;iSAAA,MAAMA,EAAkB,u6B,MCgBXC,EAAa,M,yBACRC,KAAAC,WAAa,CAACC,EAAiBC,KAC/C,MAAMC,EAAYJ,KAAKK,MAAMC,OAAOC,OAAS,EAC7C,MAAMC,EAAYN,EAAKO,WAAaP,EAAKQ,WACzC,OACCC,EAAA,MAAIC,IAAKT,GACPA,IAAU,GAAKQ,EAAA,YAAUE,WAAW,GAAGC,MAAM,kCAC7CX,IAAUC,EACVO,EAAA,YACEH,EACAG,EAAA,YAAUE,WAAYX,EAAKa,OAAQD,aAAcZ,EAAKY,QAAU,SAAWZ,EAAKY,MAAQ,iCAExFH,EAACK,EAAQ,KAAEd,EAAKa,SAIlBJ,EAAA,WAAAM,OAAAC,OAAA,CAAUC,SAAS,OAAUjB,EAAI,CAAEW,WAAYX,EAAKa,SAClDb,EAAKa,QAGJ,E,2DA+B0C,CAChDF,WAAY,IACZP,OAAQ,G,CA7BFc,SACN,OACCT,EAACU,EAAI,KACJV,EAAA,oBAAiBX,KAAKK,MAAMQ,YAC3BF,EAAA,UACEX,KAAKK,MAAMC,OAAOC,SAAW,GAC7BI,EAAA,UACCA,EAAA,YAAUE,WAAW,GAAGC,MAAM,yBAAyB,KAGxDd,KAAKK,MAAMC,OAAOgB,IAAItB,KAAKC,c,CAuB1BsB,kBAAkBC,GACxBC,EAAYzB,KAAM,aAAcwB,EAAO,CACtCE,SAAU,OAEXC,EAA0BH,E,CAIpBI,cAAcJ,GACpBK,EAAc,gBAAiB7B,KAAMwB,E,CAG/BM,oBACN9B,KAAKuB,kBAAkBvB,KAAKa,YAC5Bb,KAAK4B,cAAc5B,KAAKM,O"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* KoliBri - The accessible HTML-Standard
|
|
3
3
|
*/
|
|
4
|
-
import{r as t,h as i,H as e,g as s}from"./index-6ad587d0.js";import{w as a}from"./button-link-283b2d32.js";import{h as l,g as h}from"./a11y.tipps-2e27f8e6.js";import{n}from"./dev.utils-157f0499.js";import{f as d,j as r,h as o,w as c,a as u,b as v,s as f}from"./prop.validators-f81af56e.js";import{a as b}from"./reuse-3a02afb9.js";import{v as _,w as p}from"./icon-83ced735.js";import{a as m,b as y}from"./label-559ca626.js";import{v as g}from"./tab-index-ff5374b8.js";import{p as j,a as A}from"./controller-
|
|
4
|
+
import{r as t,h as i,H as e,g as s}from"./index-6ad587d0.js";import{w as a}from"./button-link-283b2d32.js";import{h as l,g as h}from"./a11y.tipps-2e27f8e6.js";import{n}from"./dev.utils-157f0499.js";import{f as d,j as r,h as o,w as c,a as u,b as v,s as f}from"./prop.validators-f81af56e.js";import{a as b}from"./reuse-3a02afb9.js";import{v as _,w as p}from"./icon-83ced735.js";import{a as m,b as y}from"./label-559ca626.js";import{v as g}from"./tab-index-ff5374b8.js";import{p as j,a as A}from"./controller-4ec2558c.js";import{a as C,w as L}from"./controller-ec771280.js";import{v as w,a as x}from"./disabled-6200e69c.js";import{v as I}from"./hide-label-2baeb5c5.js";import{w as k}from"./validation-2cc1bb89.js";import"./index-ff788b4b.js";const O=class{constructor(a){t(this,a),this.nonce=n(),this.catchRef=a=>{this.ref=a,b(this.host,this.ref)},this.onClick=a=>{var t,e;"submit"===this.state._type?j({form:this.host,ref:this.ref}):"reset"===this.state._type?A({form:this.host,ref:this.ref}):"function"==typeof(null===(t=this.state._on)||void 0===t?void 0:t.onClick)?(a.stopPropagation(),d(a,this.ref),null===(e=this.state._on)||void 0===e||e.onClick(a,this.state._value)):l("There was no button click callback configured! (_on.onClick)")},this._accessKey=void 0,this._ariaControls=void 0,this._ariaCurrent=void 0,this._ariaExpanded=void 0,this._ariaLabel=void 0,this._ariaSelected=void 0,this._customClass=void 0,this._disabled=!1,this._hideLabel=!1,this._icon=void 0,this._iconAlign=void 0,this._iconOnly=void 0,this._id=void 0,this._label=void 0,this._on=void 0,this._role=void 0,this._tabIndex=void 0,this._tooltipAlign="top",this._type="button",this._value=void 0,this._variant="normal",this.state={_icon:{},_label:"…",_on:{},_type:"button",_variant:"normal"}}render(){return i(e,null,i("button",Object.assign({ref:this.catchRef,accessKey:this.state._accessKey,"aria-controls":this.state._ariaControls,"aria-current":r(this.state._ariaCurrent),"aria-expanded":o(this.state._ariaExpanded),"aria-label":!1===this.state._hideLabel?this.state._ariaLabel:void 0,"aria-labelledby":!0===this.state._hideLabel?this.nonce:void 0,"aria-selected":r(this.state._ariaSelected),class:{[this.state._variant]:"custom"!==this.state._variant,[this.state._customClass]:"custom"===this.state._variant&&"string"==typeof this.state._customClass&&this.state._customClass.length>0,"icon-only":!0===this.state._hideLabel,"hide-label":!0===this.state._hideLabel},disabled:this.state._disabled,id:this.state._id},this.state._on,{onClick:this.onClick,role:this.state._role,tabIndex:this.state._tabIndex,type:this.state._type}),i("kol-span-wc",{_icon:this._icon,_hideLabel:this.state._hideLabel,_label:this.state._label},i("slot",{name:"expert",slot:"expert"}))),!0===this.state._hideLabel&&i("kol-tooltip",{"aria-hidden":"true",_align:this.state._tooltipAlign,_id:this.nonce,_label:this.state._ariaLabel||this.state._label}))}validateAccessKey(a){c(this,"_accessKey",a)}validateAriaControls(a){c(this,"_ariaControls",a)}validateAriaCurrent(a){u(this,"_ariaControls",(a=>!0===a||"date"===a||"location"===a||"page"===a||"step"===a||"time"===a),new Set(["boolean","String {data, location, page, step, time}"]),a)}validateAriaExpanded(a){w(this,a)}validateAriaLabel(a){m(this,a)}validateAriaSelected(a){v(this,"_ariaSelected",a)}validateCustomClass(a){c(this,"_customClass",a,{defaultValue:void 0})}validateDisabled(a){x(this,a),!0===a&&h()}validateHideLabel(a){I(this,a)}validateIcon(a){_(this,a)}validateIconAlign(a){p(this,a)}validateIconOnly(a){this.validateHideLabel(a)}validateId(a){c(this,"_id",a)}validateLabel(a){y(this,a)}validateOn(a){"object"==typeof a&&null!==a&&(this.state=Object.assign(Object.assign({},this.state),{_on:a}))}validateRole(a){c(this,"_role",a)}validateTabIndex(a){g(this,a)}validateTooltipAlign(t){a(this,"_tooltipAlign",t)}validateType(a){C(this,"_type",a)}validateValue(a){f(this,"_value",a)}validateVariant(a){L(this,"_variant",a)}componentWillLoad(){this.validateAccessKey(this._accessKey),this.validateAriaControls(this._ariaControls),this.validateAriaCurrent(this._ariaCurrent),this.validateAriaExpanded(this._ariaExpanded),this.validateAriaLabel(this._ariaLabel),this.validateAriaSelected(this._ariaSelected),this.validateCustomClass(this._customClass),this.validateDisabled(this._disabled),this.validateHideLabel(this._hideLabel||this._iconOnly),this.validateIcon(this._icon),this.validateIconAlign(this._iconAlign),this.validateId(this._id),this.validateLabel(this._label),this.validateOn(this._on),this.validateRole(this._role),this.validateTabIndex(this._tabIndex),this.validateTooltipAlign(this._tooltipAlign),this.validateType(this._type),this.validateValue(this._value),this.validateVariant(this._variant)}get host(){return s(this)}static get watchers(){return{_accessKey:["validateAccessKey"],_ariaControls:["validateAriaControls"],_ariaCurrent:["validateAriaCurrent"],_ariaExpanded:["validateAriaExpanded"],_ariaLabel:["validateAriaLabel"],_ariaSelected:["validateAriaSelected"],_customClass:["validateCustomClass"],_disabled:["validateDisabled"],_hideLabel:["validateHideLabel"],_icon:["validateIcon"],_iconAlign:["validateIconAlign"],_iconOnly:["validateIconOnly"],_id:["validateId"],_label:["validateLabel"],_on:["validateOn"],_role:["validateRole"],_tabIndex:["validateTabIndex"],_tooltipAlign:["validateTooltipAlign"],_type:["validateType"],_value:["validateValue"],_variant:["validateVariant"]}}},S=class{constructor(a){t(this,a),this.renderHeadline=(a,t)=>{switch(t){case 1:return i("h1",{class:"headline"},a,i("slot",null));case 2:return i("h2",{class:"headline"},a,i("slot",null));case 3:return i("h3",{class:"headline"},a,i("slot",null));case 4:return i("h4",{class:"headline"},a,i("slot",null));case 5:return i("h5",{class:"headline"},a,i("slot",null));case 6:return i("h6",{class:"headline"},a,i("slot",null));default:return i("strong",{class:"headline"},a,i("slot",null))}},this.renderSecondaryHeadline=(a,t)=>{switch(t){case 1:return i("span",{class:"secondary-headline"},a);case 2:return i("h2",{class:"secondary-headline"},a);case 3:return i("h3",{class:"secondary-headline"},a);case 4:return i("h4",{class:"secondary-headline"},a);case 5:return i("h5",{class:"secondary-headline"},a);case 6:return i("h6",{class:"secondary-headline"},a);default:return i("strong",{class:"secondary-headline"},a)}},this._label=void 0,this._level=1,this._secondaryHeadline=void 0,this.state={_label:"…",_level:1}}validateLabel(a){c(this,"_label",a)}validateLevel(a){k(this,a)}validateSecondaryHeadline(a){c(this,"_secondaryHeadline",a)}componentWillLoad(){this.validateLabel(this._label),this.validateLevel(this._level),this.validateSecondaryHeadline(this._secondaryHeadline)}render(){return i(e,null,"string"==typeof this.state._secondaryHeadline&&this.state._secondaryHeadline.length>0?i("hgroup",null,this.renderHeadline(this.state._label,this.state._level),this.state._secondaryHeadline&&this.renderSecondaryHeadline(this.state._secondaryHeadline,this.state._level+1)):this.renderHeadline(this.state._label,this.state._level))}static get watchers(){return{_label:["validateLabel"],_level:["validateLevel"],_secondaryHeadline:["validateSecondaryHeadline"]}}};export{O as kol_button_wc,S as kol_heading_wc};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["KolButtonWc","this","nonce","catchRef","ref","propagateFocus","host","onClick","event","state","_type","propagateSubmitEventToForm","form","propagateResetEventToForm","_a","_on","stopPropagation","setEventTarget","_b","_value","devWarning","_icon","_label","_variant","render","h","Host","Object","assign","accessKey","_accessKey","_ariaControls","mapStringOrBoolean2String","_ariaCurrent","mapBoolean2String","_ariaExpanded","_hideLabel","_ariaLabel","undefined","_ariaSelected","class","_customClass","length","disabled","_disabled","id","_id","role","_role","tabIndex","_tabIndex","type","name","slot","_align","_tooltipAlign","validateAccessKey","value","watchString","validateAriaControls","validateAriaCurrent","watchValidator","Set","validateAriaExpanded","validateAriaLabel","validateAriaLabelWithLabel","validateAriaSelected","watchBoolean","validateCustomClass","defaultValue","validateDisabled","a11yHintDisabled","validateHideLabel","validateIcon","validateIconAlign","watchIconAlign","validateIconOnly","validateId","validateLabel","validateLabelWithAriaLabel","validateOn","validateRole","validateTabIndex","validateTooltipAlign","watchTooltipAlignment","validateType","watchButtonType","validateValue","setState","validateVariant","watchButtonVariant","componentWillLoad","_iconOnly","_iconAlign","KolHeadingWc","renderHeadline","headline","level","renderSecondaryHeadline","_level","validateLevel","watchHeadingLevel","validateSecondaryHeadline","_secondaryHeadline"],"sources":["./src/components/button/component.tsx","./src/components/heading/component.tsx"],"sourcesContent":["import { Component, Element, h, Host, JSX, Prop, State, Watch } from '@stencil/core';\n\nimport { Generic } from '@a11y-ui/core';\nimport {\n\tAlternativButtonLinkRole,\n\tButtonStates,\n\tKoliBriButtonCallbacks,\n\tKoliBriButtonType,\n\tKoliBriButtonVariant,\n\tOptionalButtonProps,\n\tOptionalButtonStates,\n\tRequiredButtonProps,\n\tRequiredButtonStates,\n\twatchTooltipAlignment,\n} from '../../types/button-link';\nimport { Stringified } from '../../types/common';\nimport { KoliBriIconProp } from '../../types/icon';\nimport { AriaCurrent, Align, validateAriaExpanded, validateDisabled, validateHideLabel } from '../../types/props';\nimport { a11yHintDisabled, devWarning } from '../../utils/a11y.tipps';\nimport { nonce } from '../../utils/dev.utils';\nimport { mapBoolean2String, mapStringOrBoolean2String, setEventTarget, setState, watchBoolean, watchString, watchValidator } from '../../utils/prop.validators';\nimport { propagateFocus } from '../../utils/reuse';\nimport { validateIcon, watchIconAlign } from '../../types/props/icon';\nimport { validateAriaLabelWithLabel, validateLabelWithAriaLabel } from '../../types/props/label';\nimport { validateTabIndex } from '../../utils/validators/tab-index';\nimport { propagateResetEventToForm, propagateSubmitEventToForm } from '../form/controller';\nimport { watchButtonType, watchButtonVariant } from './controller';\n\n/**\n * @internal\n */\n@Component({\n\ttag: 'kol-button-wc',\n\tshadow: false,\n})\nexport class KolButtonWc implements Generic.Element.ComponentApi<RequiredButtonProps, OptionalButtonProps, RequiredButtonStates, OptionalButtonStates> {\n\t@Element() private readonly host?: HTMLKolButtonWcElement;\n\tprivate readonly nonce = nonce();\n\tprivate ref?: HTMLButtonElement;\n\n\tprivate readonly catchRef = (ref?: HTMLButtonElement) => {\n\t\tthis.ref = ref;\n\t\tpropagateFocus(this.host, this.ref);\n\t};\n\n\tprivate readonly onClick = (event: MouseEvent) => {\n\t\tif (this.state._type === 'submit') {\n\t\t\tpropagateSubmitEventToForm({\n\t\t\t\tform: this.host,\n\t\t\t\tref: this.ref,\n\t\t\t});\n\t\t} else if (this.state._type === 'reset') {\n\t\t\tpropagateResetEventToForm({\n\t\t\t\tform: this.host,\n\t\t\t\tref: this.ref,\n\t\t\t});\n\t\t} else if (typeof this.state._on?.onClick === 'function') {\n\t\t\tevent.stopPropagation();\n\t\t\tsetEventTarget(event, this.ref);\n\t\t\tthis.state._on?.onClick(event, this.state._value);\n\t\t} else {\n\t\t\tdevWarning(`There was no button click callback configured! (_on.onClick)`);\n\t\t}\n\t};\n\n\tpublic render(): JSX.Element {\n\t\treturn (\n\t\t\t<Host>\n\t\t\t\t<button\n\t\t\t\t\tref={this.catchRef}\n\t\t\t\t\taccessKey={this.state._accessKey}\n\t\t\t\t\taria-controls={this.state._ariaControls}\n\t\t\t\t\taria-current={mapStringOrBoolean2String(this.state._ariaCurrent)}\n\t\t\t\t\taria-expanded={mapBoolean2String(this.state._ariaExpanded)}\n\t\t\t\t\taria-label={this.state._hideLabel === false ? this.state._ariaLabel : undefined}\n\t\t\t\t\taria-labelledby={this.state._hideLabel === true ? this.nonce : undefined}\n\t\t\t\t\taria-selected={mapStringOrBoolean2String(this.state._ariaSelected)}\n\t\t\t\t\tclass={{\n\t\t\t\t\t\t[this.state._variant as string]: this.state._variant !== 'custom',\n\t\t\t\t\t\t[this.state._customClass as string]:\n\t\t\t\t\t\t\tthis.state._variant === 'custom' && typeof this.state._customClass === 'string' && this.state._customClass.length > 0,\n\t\t\t\t\t\t'icon-only': this.state._hideLabel === true, // @deprecated in v2\n\t\t\t\t\t\t'hide-label': this.state._hideLabel === true,\n\t\t\t\t\t}}\n\t\t\t\t\tdisabled={this.state._disabled}\n\t\t\t\t\tid={this.state._id}\n\t\t\t\t\t{...this.state._on}\n\t\t\t\t\tonClick={this.onClick}\n\t\t\t\t\trole={this.state._role}\n\t\t\t\t\ttabIndex={this.state._tabIndex}\n\t\t\t\t\ttype={this.state._type}\n\t\t\t\t>\n\t\t\t\t\t<kol-span-wc _icon={this._icon} _hideLabel={this.state._hideLabel} _label={this.state._label}>\n\t\t\t\t\t\t<slot name=\"expert\" slot=\"expert\"></slot>\n\t\t\t\t\t</kol-span-wc>\n\t\t\t\t</button>\n\t\t\t\t{this.state._hideLabel === true && (\n\t\t\t\t\t<kol-tooltip\n\t\t\t\t\t\t/**\n\t\t\t\t\t\t * Dieses Aria-Hidden verhindert das doppelte Vorlesen des Labels,\n\t\t\t\t\t\t * verhindert aber nicht das Aria-Labelledby vorgelesen wird.\n\t\t\t\t\t\t */\n\t\t\t\t\t\taria-hidden=\"true\"\n\t\t\t\t\t\t_align={this.state._tooltipAlign}\n\t\t\t\t\t\t_id={this.nonce}\n\t\t\t\t\t\t_label={this.state._ariaLabel || this.state._label}\n\t\t\t\t\t></kol-tooltip>\n\t\t\t\t)}\n\t\t\t</Host>\n\t\t);\n\t}\n\n\t/**\n\t * Gibt an, mit welcher Tastenkombination man das interaktive Element der Komponente auslösen oder fokussieren kann.\n\t */\n\t@Prop() public _accessKey?: string;\n\n\t/**\n\t * Gibt an, welche Elemente kontrolliert werden. (https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Attributes/aria-controls)\n\t */\n\t@Prop() public _ariaControls?: string;\n\n\t/**\n\t * Gibt an, welchen aktuellen Auswahlstatus das interaktive Element der Komponente hat. (https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Attributes/aria-current)\n\t */\n\t@Prop() public _ariaCurrent?: AriaCurrent;\n\n\t/**\n\t * Gibt an, ob durch das interaktive Element in der Komponente etwas aufgeklappt wurde. (https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Attributes/aria-expanded)\n\t */\n\t@Prop({ reflect: true }) public _ariaExpanded?: boolean;\n\n\t/**\n\t * Setzt die sichtbare oder semantische Beschriftung der Komponente (z.B. Aria-Label, Label, Headline, Caption, Summary usw.).\n\t */\n\t@Prop({ mutable: true, reflect: false }) public _ariaLabel?: string;\n\n\t/**\n\t * Gibt an, ob interaktive Element in der Komponente ausgewählt ist (z.B. role=tab). (https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Attributes/aria-selected)\n\t */\n\t@Prop({ reflect: true }) public _ariaSelected?: boolean;\n\n\t/**\n\t * Gibt an, welche Custom-Class übergeben werden soll, wenn _variant=\"custom\" gesetzt ist.\n\t */\n\t@Prop() public _customClass?: string;\n\n\t/**\n\t * Deaktiviert das interaktive Element in der Komponente und erlaubt keine Interaktion mehr damit.\n\t */\n\t@Prop({ reflect: true }) public _disabled?: boolean = false;\n\n\t/**\n\t * Blendet die Beschriftung (Label) aus und zeigt sie stattdessen mittels eines Tooltips an.\n\t */\n\t@Prop({ reflect: true }) public _hideLabel?: boolean = false;\n\n\t/**\n\t * Setzt die Iconklasse (z.B.: `_icon=\"codicon codicon-home`).\n\t */\n\t@Prop() public _icon?: Stringified<KoliBriIconProp>;\n\n\t/**\n\t * Deprecated: Gibt an, ob das Icon links oder rechts von der Beschriftung angezeigt werden soll.\n\t *\n\t * @deprecated\n\t */\n\t@Prop() public _iconAlign?: Align;\n\n\t/**\n\t * Blendet die Beschriftung (Label) aus und zeigt sie stattdessen mittels eines Tooltips an.\n\t * @deprecated use _hide-label\n\t */\n\t@Prop({ reflect: true }) public _iconOnly?: boolean;\n\n\t/**\n\t * Gibt die interne ID des primären Elements in der Komponente an.\n\t */\n\t@Prop() public _id?: string;\n\n\t/**\n\t * Setzt die sichtbare oder semantische Beschriftung der Komponente (z.B. Aria-Label, Label, Headline, Caption, Summary usw.).\n\t */\n\t// - eslint-disable-next-line @stencil/strict-mutable\n\t@Prop({ mutable: true, reflect: false }) public _label!: string;\n\n\t/**\n\t * Gibt die EventCallback-Funktionen für die Button-Events an.\n\t */\n\t@Prop() public _on?: KoliBriButtonCallbacks<unknown>;\n\n\t/**\n\t * Gibt die Rolle des primären Elements in der Komponente an.\n\t */\n\t@Prop() public _role?: AlternativButtonLinkRole;\n\n\t/**\n\t * Gibt an, welchen Tab-Index das primäre Element in der Komponente hat. (https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/tabindex)\n\t */\n\t@Prop() public _tabIndex?: number;\n\n\t/**\n\t * Gibt an, ob der Tooltip bevorzugt entweder oben, rechts, unten oder links angezeigt werden soll.\n\t */\n\t@Prop() public _tooltipAlign?: Align = 'top';\n\n\t/**\n\t * Setzt den Typ der Komponente oder des interaktiven Elements in der Komponente an.\n\t */\n\t@Prop() public _type?: KoliBriButtonType = 'button';\n\n\t/**\n\t * Gibt einen Wert an, den der Schalter bei einem Klick zurückgibt.\n\t */\n\t@Prop() public _value?: Stringified<unknown>;\n\n\t/**\n\t * Gibt an, welche Variante der Darstellung genutzt werden soll.\n\t */\n\t@Prop() public _variant?: KoliBriButtonVariant = 'normal';\n\n\t@State() public state: ButtonStates = {\n\t\t_icon: {},\n\t\t_label: '…', // ⚠ required\n\t\t_on: {},\n\t\t_type: 'button',\n\t\t_variant: 'normal',\n\t};\n\n\t@Watch('_accessKey')\n\tpublic validateAccessKey(value?: string): void {\n\t\twatchString(this, '_accessKey', value);\n\t}\n\n\t@Watch('_ariaControls')\n\tpublic validateAriaControls(value?: string): void {\n\t\twatchString(this, '_ariaControls', value);\n\t}\n\n\t@Watch('_ariaCurrent')\n\tpublic validateAriaCurrent(value?: AriaCurrent): void {\n\t\twatchValidator(\n\t\t\tthis,\n\t\t\t'_ariaControls',\n\t\t\t(value) => value === true || value === 'date' || value === 'location' || value === 'page' || value === 'step' || value === 'time',\n\t\t\tnew Set(['boolean', 'String {data, location, page, step, time}']),\n\t\t\tvalue\n\t\t);\n\t}\n\n\t@Watch('_ariaExpanded')\n\tpublic validateAriaExpanded(value?: boolean): void {\n\t\tvalidateAriaExpanded(this, value);\n\t}\n\n\t@Watch('_ariaLabel')\n\tpublic validateAriaLabel(value?: string): void {\n\t\tvalidateAriaLabelWithLabel(this, value);\n\t}\n\n\t@Watch('_ariaSelected')\n\tpublic validateAriaSelected(value?: boolean): void {\n\t\twatchBoolean(this, '_ariaSelected', value);\n\t}\n\n\t@Watch('_customClass')\n\tpublic validateCustomClass(value?: string): void {\n\t\twatchString(this, '_customClass', value, {\n\t\t\tdefaultValue: undefined,\n\t\t});\n\t}\n\n\t@Watch('_disabled')\n\tpublic validateDisabled(value?: boolean): void {\n\t\tvalidateDisabled(this, value);\n\t\tif (value === true) {\n\t\t\ta11yHintDisabled();\n\t\t}\n\t}\n\n\t@Watch('_hideLabel')\n\tpublic validateHideLabel(value?: boolean): void {\n\t\tvalidateHideLabel(this, value);\n\t}\n\n\t@Watch('_icon')\n\tpublic validateIcon(value?: KoliBriIconProp): void {\n\t\tvalidateIcon(this, value);\n\t}\n\n\t/**\n\t * @deprecated\n\t */\n\t@Watch('_iconAlign')\n\tpublic validateIconAlign(value?: Align): void {\n\t\twatchIconAlign(this, value);\n\t}\n\n\t/**\n\t * @deprecated use _hide-label\n\t */\n\t@Watch('_iconOnly')\n\tpublic validateIconOnly(value?: boolean): void {\n\t\tthis.validateHideLabel(value);\n\t}\n\n\t@Watch('_id')\n\tpublic validateId(value?: string): void {\n\t\twatchString(this, '_id', value);\n\t}\n\n\t@Watch('_label')\n\tpublic validateLabel(value?: string): void {\n\t\tvalidateLabelWithAriaLabel(this, value);\n\t}\n\n\t@Watch('_on')\n\tpublic validateOn(value?: KoliBriButtonCallbacks<unknown>): void {\n\t\tif (typeof value === 'object' && value !== null) {\n\t\t\tthis.state = {\n\t\t\t\t...this.state,\n\t\t\t\t_on: value,\n\t\t\t};\n\t\t}\n\t}\n\n\t@Watch('_role')\n\tpublic validateRole(value?: AlternativButtonLinkRole): void {\n\t\twatchString(this, '_role', value);\n\t}\n\n\t@Watch('_tabIndex')\n\tpublic validateTabIndex(value?: number): void {\n\t\tvalidateTabIndex(this, value);\n\t}\n\n\t@Watch('_tooltipAlign')\n\tpublic validateTooltipAlign(value?: Align): void {\n\t\twatchTooltipAlignment(this, '_tooltipAlign', value);\n\t}\n\n\t@Watch('_type')\n\tpublic validateType(value?: KoliBriButtonType): void {\n\t\twatchButtonType(this, '_type', value);\n\t}\n\n\t@Watch('_value')\n\tpublic validateValue(value?: Stringified<unknown>): void {\n\t\tsetState(this, '_value', value);\n\t}\n\n\t@Watch('_variant')\n\tpublic validateVariant(value?: KoliBriButtonVariant): void {\n\t\twatchButtonVariant(this, '_variant', value);\n\t}\n\n\tpublic componentWillLoad(): void {\n\t\tthis.validateAccessKey(this._accessKey);\n\t\tthis.validateAriaControls(this._ariaControls);\n\t\tthis.validateAriaCurrent(this._ariaCurrent);\n\t\tthis.validateAriaExpanded(this._ariaExpanded);\n\t\tthis.validateAriaLabel(this._ariaLabel);\n\t\tthis.validateAriaSelected(this._ariaSelected);\n\t\tthis.validateCustomClass(this._customClass);\n\t\tthis.validateDisabled(this._disabled);\n\t\tthis.validateHideLabel(this._hideLabel || this._iconOnly);\n\t\tthis.validateIcon(this._icon);\n\t\tthis.validateIconAlign(this._iconAlign);\n\t\tthis.validateId(this._id);\n\t\tthis.validateLabel(this._label);\n\t\tthis.validateOn(this._on);\n\t\tthis.validateRole(this._role);\n\t\tthis.validateTabIndex(this._tabIndex);\n\t\tthis.validateTooltipAlign(this._tooltipAlign);\n\t\tthis.validateType(this._type);\n\t\tthis.validateValue(this._value);\n\t\tthis.validateVariant(this._variant);\n\t}\n}\n","import { Component, h, Host, JSX, Prop, State, Watch } from '@stencil/core';\n\nimport { Generic } from '@a11y-ui/core';\nimport { HeadingLevel } from '../../types/heading-level';\nimport { watchString } from '../../utils/prop.validators';\nimport { watchHeadingLevel } from './validation';\n\ntype RequiredProps = {\n\tlabel: string;\n};\ntype OptionalProps = {\n\tsecondaryHeadline: string;\n\tlevel: HeadingLevel;\n};\nexport type Props = Generic.Element.Members<RequiredProps, OptionalProps>;\n\ntype RequiredStates = {\n\tlabel: string;\n\tlevel: HeadingLevel;\n};\ntype OptionalStates = {\n\tsecondaryHeadline: string;\n};\nexport type States = Generic.Element.Members<RequiredStates, OptionalStates>;\n\n/**\n * @slot - Inhalt der Überschrift.\n */\n@Component({\n\ttag: 'kol-heading-wc',\n\tshadow: false,\n})\nexport class KolHeadingWc implements Generic.Element.ComponentApi<RequiredProps, OptionalProps, RequiredStates, OptionalStates> {\n\t/**\n\t * Setzt die sichtbare oder semantische Beschriftung der Komponente (z.B. Aria-Label, Label, Headline, Caption, Summary usw.).\n\t */\n\t@Prop() public _label!: string;\n\n\t/**\n\t * Gibt an, welchen H-Level von 1 bis 6 die Überschrift hat. Oder bei 0, ob es keine Überschrift ist und als fett gedruckter Text angezeigt werden soll.\n\t */\n\t@Prop() public _level?: HeadingLevel = 1;\n\n\t/**\n\t * Setzt den Text einer weiteren Überschrift, einen Level kleiner, unter der Ersten.\n\t */\n\t@Prop() public _secondaryHeadline?: string;\n\n\t@State() public state: States = {\n\t\t_label: '…', // ⚠ required\n\t\t_level: 1,\n\t};\n\n\t@Watch('_label')\n\tpublic validateLabel(value?: string): void {\n\t\twatchString(this, '_label', value);\n\t}\n\n\t@Watch('_level')\n\tpublic validateLevel(value?: HeadingLevel): void {\n\t\twatchHeadingLevel(this, value);\n\t}\n\n\t@Watch('_secondaryHeadline')\n\tpublic validateSecondaryHeadline(value?: string): void {\n\t\twatchString(this, '_secondaryHeadline', value);\n\t}\n\n\tpublic componentWillLoad(): void {\n\t\tthis.validateLabel(this._label);\n\t\tthis.validateLevel(this._level);\n\t\tthis.validateSecondaryHeadline(this._secondaryHeadline);\n\t}\n\n\tprivate readonly renderHeadline = (headline: string, level?: number): JSX.Element => {\n\t\tswitch (level) {\n\t\t\tcase 1:\n\t\t\t\treturn (\n\t\t\t\t\t<h1 class=\"headline\">\n\t\t\t\t\t\t{headline}\n\t\t\t\t\t\t<slot />\n\t\t\t\t\t</h1>\n\t\t\t\t);\n\t\t\tcase 2:\n\t\t\t\treturn (\n\t\t\t\t\t<h2 class=\"headline\">\n\t\t\t\t\t\t{headline}\n\t\t\t\t\t\t<slot />\n\t\t\t\t\t</h2>\n\t\t\t\t);\n\t\t\tcase 3:\n\t\t\t\treturn (\n\t\t\t\t\t<h3 class=\"headline\">\n\t\t\t\t\t\t{headline}\n\t\t\t\t\t\t<slot />\n\t\t\t\t\t</h3>\n\t\t\t\t);\n\t\t\tcase 4:\n\t\t\t\treturn (\n\t\t\t\t\t<h4 class=\"headline\">\n\t\t\t\t\t\t{headline}\n\t\t\t\t\t\t<slot />\n\t\t\t\t\t</h4>\n\t\t\t\t);\n\t\t\tcase 5:\n\t\t\t\treturn (\n\t\t\t\t\t<h5 class=\"headline\">\n\t\t\t\t\t\t{headline}\n\t\t\t\t\t\t<slot />\n\t\t\t\t\t</h5>\n\t\t\t\t);\n\t\t\tcase 6:\n\t\t\t\treturn (\n\t\t\t\t\t<h6 class=\"headline\">\n\t\t\t\t\t\t{headline}\n\t\t\t\t\t\t<slot />\n\t\t\t\t\t</h6>\n\t\t\t\t);\n\t\t\tdefault:\n\t\t\t\treturn (\n\t\t\t\t\t<strong class=\"headline\">\n\t\t\t\t\t\t{headline}\n\t\t\t\t\t\t<slot />\n\t\t\t\t\t</strong>\n\t\t\t\t);\n\t\t}\n\t};\n\n\tprivate readonly renderSecondaryHeadline = (headline: string, level?: number): JSX.Element => {\n\t\tswitch (level) {\n\t\t\tcase 1: // if the headline is only strong\n\t\t\t\treturn <span class=\"secondary-headline\">{headline}</span>;\n\t\t\tcase 2: // if the headline is h1\n\t\t\t\treturn <h2 class=\"secondary-headline\">{headline}</h2>;\n\t\t\tcase 3: // if the headline is h2\n\t\t\t\treturn <h3 class=\"secondary-headline\">{headline}</h3>;\n\t\t\tcase 4: // if the headline is h3\n\t\t\t\treturn <h4 class=\"secondary-headline\">{headline}</h4>;\n\t\t\tcase 5: // if the headline is h4\n\t\t\t\treturn <h5 class=\"secondary-headline\">{headline}</h5>;\n\t\t\tcase 6: // if the headline is h5\n\t\t\t\treturn <h6 class=\"secondary-headline\">{headline}</h6>;\n\t\t\tdefault: // if the headline is h6\n\t\t\t\treturn <strong class=\"secondary-headline\">{headline}</strong>;\n\t\t}\n\t};\n\n\tpublic render(): JSX.Element {\n\t\treturn (\n\t\t\t<Host>\n\t\t\t\t{typeof this.state._secondaryHeadline === 'string' && this.state._secondaryHeadline.length > 0 ? (\n\t\t\t\t\t<hgroup>\n\t\t\t\t\t\t{this.renderHeadline(this.state._label, this.state._level)}\n\t\t\t\t\t\t{this.state._secondaryHeadline && this.renderSecondaryHeadline(this.state._secondaryHeadline, this.state._level + 1)}\n\t\t\t\t\t</hgroup>\n\t\t\t\t) : (\n\t\t\t\t\tthis.renderHeadline(this.state._label, this.state._level)\n\t\t\t\t)}\n\t\t\t</Host>\n\t\t);\n\t}\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["KolButtonWc","this","nonce","catchRef","ref","propagateFocus","host","onClick","event","state","_type","propagateSubmitEventToForm","form","propagateResetEventToForm","_a","_on","stopPropagation","setEventTarget","_b","_value","devWarning","_icon","_label","_variant","render","h","Host","Object","assign","accessKey","_accessKey","_ariaControls","mapStringOrBoolean2String","_ariaCurrent","mapBoolean2String","_ariaExpanded","_hideLabel","_ariaLabel","undefined","_ariaSelected","class","_customClass","length","disabled","_disabled","id","_id","role","_role","tabIndex","_tabIndex","type","name","slot","_align","_tooltipAlign","validateAccessKey","value","watchString","validateAriaControls","validateAriaCurrent","watchValidator","Set","validateAriaExpanded","validateAriaLabel","validateAriaLabelWithLabel","validateAriaSelected","watchBoolean","validateCustomClass","defaultValue","validateDisabled","a11yHintDisabled","validateHideLabel","validateIcon","validateIconAlign","watchIconAlign","validateIconOnly","validateId","validateLabel","validateLabelWithAriaLabel","validateOn","validateRole","validateTabIndex","validateTooltipAlign","watchTooltipAlignment","validateType","watchButtonType","validateValue","setState","validateVariant","watchButtonVariant","componentWillLoad","_iconOnly","_iconAlign","KolHeadingWc","renderHeadline","headline","level","renderSecondaryHeadline","_level","validateLevel","watchHeadingLevel","validateSecondaryHeadline","_secondaryHeadline"],"sources":["./src/components/button/component.tsx","./src/components/heading/component.tsx"],"sourcesContent":["import { Component, Element, h, Host, JSX, Prop, State, Watch } from '@stencil/core';\n\nimport { Generic } from '@a11y-ui/core';\nimport {\n\tAlternativButtonLinkRole,\n\tButtonStates,\n\tKoliBriButtonCallbacks,\n\tKoliBriButtonType,\n\tKoliBriButtonVariant,\n\tOptionalButtonProps,\n\tOptionalButtonStates,\n\tRequiredButtonProps,\n\tRequiredButtonStates,\n\twatchTooltipAlignment,\n} from '../../types/button-link';\nimport { Stringified } from '../../types/common';\nimport { KoliBriIconProp } from '../../types/icon';\nimport { AriaCurrent, Align, validateAriaExpanded, validateDisabled, validateHideLabel } from '../../types/props';\nimport { a11yHintDisabled, devWarning } from '../../utils/a11y.tipps';\nimport { nonce } from '../../utils/dev.utils';\nimport { mapBoolean2String, mapStringOrBoolean2String, setEventTarget, setState, watchBoolean, watchString, watchValidator } from '../../utils/prop.validators';\nimport { propagateFocus } from '../../utils/reuse';\nimport { validateIcon, watchIconAlign } from '../../types/props/icon';\nimport { validateAriaLabelWithLabel, validateLabelWithAriaLabel } from '../../types/props/label';\nimport { validateTabIndex } from '../../utils/validators/tab-index';\nimport { propagateResetEventToForm, propagateSubmitEventToForm } from '../form/controller';\nimport { watchButtonType, watchButtonVariant } from './controller';\n\n/**\n * @internal\n */\n@Component({\n\ttag: 'kol-button-wc',\n\tshadow: false,\n})\nexport class KolButtonWc implements Generic.Element.ComponentApi<RequiredButtonProps, OptionalButtonProps, RequiredButtonStates, OptionalButtonStates> {\n\t@Element() private readonly host?: HTMLKolButtonWcElement;\n\tprivate readonly nonce = nonce();\n\tprivate ref?: HTMLButtonElement;\n\n\tprivate readonly catchRef = (ref?: HTMLButtonElement) => {\n\t\tthis.ref = ref;\n\t\tpropagateFocus(this.host, this.ref);\n\t};\n\n\tprivate readonly onClick = (event: MouseEvent) => {\n\t\tif (this.state._type === 'submit') {\n\t\t\tpropagateSubmitEventToForm({\n\t\t\t\tform: this.host,\n\t\t\t\tref: this.ref,\n\t\t\t});\n\t\t} else if (this.state._type === 'reset') {\n\t\t\tpropagateResetEventToForm({\n\t\t\t\tform: this.host,\n\t\t\t\tref: this.ref,\n\t\t\t});\n\t\t} else if (typeof this.state._on?.onClick === 'function') {\n\t\t\tevent.stopPropagation();\n\t\t\tsetEventTarget(event, this.ref);\n\t\t\tthis.state._on?.onClick(event, this.state._value);\n\t\t} else {\n\t\t\tdevWarning(`There was no button click callback configured! (_on.onClick)`);\n\t\t}\n\t};\n\n\tpublic render(): JSX.Element {\n\t\treturn (\n\t\t\t<Host>\n\t\t\t\t<button\n\t\t\t\t\tref={this.catchRef}\n\t\t\t\t\taccessKey={this.state._accessKey}\n\t\t\t\t\taria-controls={this.state._ariaControls}\n\t\t\t\t\taria-current={mapStringOrBoolean2String(this.state._ariaCurrent)}\n\t\t\t\t\taria-expanded={mapBoolean2String(this.state._ariaExpanded)}\n\t\t\t\t\taria-label={this.state._hideLabel === false ? this.state._ariaLabel : undefined}\n\t\t\t\t\taria-labelledby={this.state._hideLabel === true ? this.nonce : undefined}\n\t\t\t\t\taria-selected={mapStringOrBoolean2String(this.state._ariaSelected)}\n\t\t\t\t\tclass={{\n\t\t\t\t\t\t[this.state._variant as string]: this.state._variant !== 'custom',\n\t\t\t\t\t\t[this.state._customClass as string]:\n\t\t\t\t\t\t\tthis.state._variant === 'custom' && typeof this.state._customClass === 'string' && this.state._customClass.length > 0,\n\t\t\t\t\t\t'icon-only': this.state._hideLabel === true, // @deprecated in v2\n\t\t\t\t\t\t'hide-label': this.state._hideLabel === true,\n\t\t\t\t\t}}\n\t\t\t\t\tdisabled={this.state._disabled}\n\t\t\t\t\tid={this.state._id}\n\t\t\t\t\t{...this.state._on}\n\t\t\t\t\tonClick={this.onClick}\n\t\t\t\t\trole={this.state._role}\n\t\t\t\t\ttabIndex={this.state._tabIndex}\n\t\t\t\t\ttype={this.state._type}\n\t\t\t\t>\n\t\t\t\t\t<kol-span-wc _icon={this._icon} _hideLabel={this.state._hideLabel} _label={this.state._label}>\n\t\t\t\t\t\t<slot name=\"expert\" slot=\"expert\"></slot>\n\t\t\t\t\t</kol-span-wc>\n\t\t\t\t</button>\n\t\t\t\t{this.state._hideLabel === true && (\n\t\t\t\t\t<kol-tooltip\n\t\t\t\t\t\t/**\n\t\t\t\t\t\t * Dieses Aria-Hidden verhindert das doppelte Vorlesen des Labels,\n\t\t\t\t\t\t * verhindert aber nicht das Aria-Labelledby vorgelesen wird.\n\t\t\t\t\t\t */\n\t\t\t\t\t\taria-hidden=\"true\"\n\t\t\t\t\t\t_align={this.state._tooltipAlign}\n\t\t\t\t\t\t_id={this.nonce}\n\t\t\t\t\t\t_label={this.state._ariaLabel || this.state._label}\n\t\t\t\t\t></kol-tooltip>\n\t\t\t\t)}\n\t\t\t</Host>\n\t\t);\n\t}\n\n\t/**\n\t * Gibt an, mit welcher Tastenkombination man das interaktive Element der Komponente auslösen oder fokussieren kann.\n\t */\n\t@Prop() public _accessKey?: string;\n\n\t/**\n\t * Gibt an, welche Elemente kontrolliert werden. (https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Attributes/aria-controls)\n\t */\n\t@Prop() public _ariaControls?: string;\n\n\t/**\n\t * Gibt an, welchen aktuellen Auswahlstatus das interaktive Element der Komponente hat. (https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Attributes/aria-current)\n\t */\n\t@Prop() public _ariaCurrent?: AriaCurrent;\n\n\t/**\n\t * Gibt an, ob durch das interaktive Element in der Komponente etwas aufgeklappt wurde. (https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Attributes/aria-expanded)\n\t */\n\t@Prop({ reflect: true }) public _ariaExpanded?: boolean;\n\n\t/**\n\t * Setzt die sichtbare oder semantische Beschriftung der Komponente (z.B. Aria-Label, Label, Headline, Caption, Summary usw.).\n\t */\n\t@Prop({ mutable: true, reflect: false }) public _ariaLabel?: string;\n\n\t/**\n\t * Gibt an, ob interaktive Element in der Komponente ausgewählt ist (z.B. role=tab). (https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Attributes/aria-selected)\n\t */\n\t@Prop({ reflect: true }) public _ariaSelected?: boolean;\n\n\t/**\n\t * Gibt an, welche Custom-Class übergeben werden soll, wenn _variant=\"custom\" gesetzt ist.\n\t */\n\t@Prop() public _customClass?: string;\n\n\t/**\n\t * Deaktiviert das interaktive Element in der Komponente und erlaubt keine Interaktion mehr damit.\n\t */\n\t@Prop({ reflect: true }) public _disabled?: boolean = false;\n\n\t/**\n\t * Blendet die Beschriftung (Label) aus und zeigt sie stattdessen mittels eines Tooltips an.\n\t */\n\t@Prop({ reflect: true }) public _hideLabel?: boolean = false;\n\n\t/**\n\t * Setzt die Iconklasse (z.B.: `_icon=\"codicon codicon-home`).\n\t */\n\t@Prop() public _icon?: Stringified<KoliBriIconProp>;\n\n\t/**\n\t * Deprecated: Gibt an, ob das Icon links oder rechts von der Beschriftung angezeigt werden soll.\n\t *\n\t * @deprecated\n\t */\n\t@Prop() public _iconAlign?: Align;\n\n\t/**\n\t * Blendet die Beschriftung (Label) aus und zeigt sie stattdessen mittels eines Tooltips an.\n\t * @deprecated use _hide-label\n\t */\n\t@Prop({ reflect: true }) public _iconOnly?: boolean;\n\n\t/**\n\t * Gibt die interne ID des primären Elements in der Komponente an.\n\t */\n\t@Prop() public _id?: string;\n\n\t/**\n\t * Setzt die sichtbare oder semantische Beschriftung der Komponente (z.B. Aria-Label, Label, Headline, Caption, Summary usw.).\n\t */\n\t// - eslint-disable-next-line @stencil/strict-mutable\n\t@Prop({ mutable: true, reflect: false }) public _label!: string;\n\n\t/**\n\t * Gibt die EventCallback-Funktionen für die Button-Events an.\n\t */\n\t@Prop() public _on?: KoliBriButtonCallbacks<unknown>;\n\n\t/**\n\t * Gibt die Rolle des primären Elements in der Komponente an.\n\t */\n\t@Prop() public _role?: AlternativButtonLinkRole;\n\n\t/**\n\t * Gibt an, welchen Tab-Index das primäre Element in der Komponente hat. (https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/tabindex)\n\t */\n\t@Prop() public _tabIndex?: number;\n\n\t/**\n\t * Gibt an, ob der Tooltip bevorzugt entweder oben, rechts, unten oder links angezeigt werden soll.\n\t */\n\t@Prop() public _tooltipAlign?: Align = 'top';\n\n\t/**\n\t * Setzt den Typ der Komponente oder des interaktiven Elements in der Komponente an.\n\t */\n\t@Prop() public _type?: KoliBriButtonType = 'button';\n\n\t/**\n\t * Gibt einen Wert an, den der Schalter bei einem Klick zurückgibt.\n\t */\n\t@Prop() public _value?: Stringified<unknown>;\n\n\t/**\n\t * Gibt an, welche Variante der Darstellung genutzt werden soll.\n\t */\n\t@Prop() public _variant?: KoliBriButtonVariant = 'normal';\n\n\t@State() public state: ButtonStates = {\n\t\t_icon: {},\n\t\t_label: '…', // ⚠ required\n\t\t_on: {},\n\t\t_type: 'button',\n\t\t_variant: 'normal',\n\t};\n\n\t@Watch('_accessKey')\n\tpublic validateAccessKey(value?: string): void {\n\t\twatchString(this, '_accessKey', value);\n\t}\n\n\t@Watch('_ariaControls')\n\tpublic validateAriaControls(value?: string): void {\n\t\twatchString(this, '_ariaControls', value);\n\t}\n\n\t@Watch('_ariaCurrent')\n\tpublic validateAriaCurrent(value?: AriaCurrent): void {\n\t\twatchValidator(\n\t\t\tthis,\n\t\t\t'_ariaControls',\n\t\t\t(value) => value === true || value === 'date' || value === 'location' || value === 'page' || value === 'step' || value === 'time',\n\t\t\tnew Set(['boolean', 'String {data, location, page, step, time}']),\n\t\t\tvalue\n\t\t);\n\t}\n\n\t@Watch('_ariaExpanded')\n\tpublic validateAriaExpanded(value?: boolean): void {\n\t\tvalidateAriaExpanded(this, value);\n\t}\n\n\t@Watch('_ariaLabel')\n\tpublic validateAriaLabel(value?: string): void {\n\t\tvalidateAriaLabelWithLabel(this, value);\n\t}\n\n\t@Watch('_ariaSelected')\n\tpublic validateAriaSelected(value?: boolean): void {\n\t\twatchBoolean(this, '_ariaSelected', value);\n\t}\n\n\t@Watch('_customClass')\n\tpublic validateCustomClass(value?: string): void {\n\t\twatchString(this, '_customClass', value, {\n\t\t\tdefaultValue: undefined,\n\t\t});\n\t}\n\n\t@Watch('_disabled')\n\tpublic validateDisabled(value?: boolean): void {\n\t\tvalidateDisabled(this, value);\n\t\tif (value === true) {\n\t\t\ta11yHintDisabled();\n\t\t}\n\t}\n\n\t@Watch('_hideLabel')\n\tpublic validateHideLabel(value?: boolean): void {\n\t\tvalidateHideLabel(this, value);\n\t}\n\n\t@Watch('_icon')\n\tpublic validateIcon(value?: KoliBriIconProp): void {\n\t\tvalidateIcon(this, value);\n\t}\n\n\t/**\n\t * @deprecated\n\t */\n\t@Watch('_iconAlign')\n\tpublic validateIconAlign(value?: Align): void {\n\t\twatchIconAlign(this, value);\n\t}\n\n\t/**\n\t * @deprecated use _hide-label\n\t */\n\t@Watch('_iconOnly')\n\tpublic validateIconOnly(value?: boolean): void {\n\t\tthis.validateHideLabel(value);\n\t}\n\n\t@Watch('_id')\n\tpublic validateId(value?: string): void {\n\t\twatchString(this, '_id', value);\n\t}\n\n\t@Watch('_label')\n\tpublic validateLabel(value?: string): void {\n\t\tvalidateLabelWithAriaLabel(this, value);\n\t}\n\n\t@Watch('_on')\n\tpublic validateOn(value?: KoliBriButtonCallbacks<unknown>): void {\n\t\tif (typeof value === 'object' && value !== null) {\n\t\t\tthis.state = {\n\t\t\t\t...this.state,\n\t\t\t\t_on: value,\n\t\t\t};\n\t\t}\n\t}\n\n\t@Watch('_role')\n\tpublic validateRole(value?: AlternativButtonLinkRole): void {\n\t\twatchString(this, '_role', value);\n\t}\n\n\t@Watch('_tabIndex')\n\tpublic validateTabIndex(value?: number): void {\n\t\tvalidateTabIndex(this, value);\n\t}\n\n\t@Watch('_tooltipAlign')\n\tpublic validateTooltipAlign(value?: Align): void {\n\t\twatchTooltipAlignment(this, '_tooltipAlign', value);\n\t}\n\n\t@Watch('_type')\n\tpublic validateType(value?: KoliBriButtonType): void {\n\t\twatchButtonType(this, '_type', value);\n\t}\n\n\t@Watch('_value')\n\tpublic validateValue(value?: Stringified<unknown>): void {\n\t\tsetState(this, '_value', value);\n\t}\n\n\t@Watch('_variant')\n\tpublic validateVariant(value?: KoliBriButtonVariant): void {\n\t\twatchButtonVariant(this, '_variant', value);\n\t}\n\n\tpublic componentWillLoad(): void {\n\t\tthis.validateAccessKey(this._accessKey);\n\t\tthis.validateAriaControls(this._ariaControls);\n\t\tthis.validateAriaCurrent(this._ariaCurrent);\n\t\tthis.validateAriaExpanded(this._ariaExpanded);\n\t\tthis.validateAriaLabel(this._ariaLabel);\n\t\tthis.validateAriaSelected(this._ariaSelected);\n\t\tthis.validateCustomClass(this._customClass);\n\t\tthis.validateDisabled(this._disabled);\n\t\tthis.validateHideLabel(this._hideLabel || this._iconOnly);\n\t\tthis.validateIcon(this._icon);\n\t\tthis.validateIconAlign(this._iconAlign);\n\t\tthis.validateId(this._id);\n\t\tthis.validateLabel(this._label);\n\t\tthis.validateOn(this._on);\n\t\tthis.validateRole(this._role);\n\t\tthis.validateTabIndex(this._tabIndex);\n\t\tthis.validateTooltipAlign(this._tooltipAlign);\n\t\tthis.validateType(this._type);\n\t\tthis.validateValue(this._value);\n\t\tthis.validateVariant(this._variant);\n\t}\n}\n","import { Component, h, Host, JSX, Prop, State, Watch } from '@stencil/core';\n\nimport { HeadingLevel } from '../../types/heading-level';\nimport { watchString } from '../../utils/prop.validators';\nimport { watchHeadingLevel } from './validation';\nimport { KoliBriHeadingAPI, KoliBriHeadingStates } from './types';\n\n/**\n * @slot - Inhalt der Überschrift.\n */\n@Component({\n\ttag: 'kol-heading-wc',\n\tshadow: false,\n})\nexport class KolHeadingWc implements KoliBriHeadingAPI {\n\t/**\n\t * Setzt die sichtbare oder semantische Beschriftung der Komponente (z.B. Aria-Label, Label, Headline, Caption, Summary usw.).\n\t */\n\t@Prop() public _label!: string;\n\n\t/**\n\t * Gibt an, welchen H-Level von 1 bis 6 die Überschrift hat. Oder bei 0, ob es keine Überschrift ist und als fett gedruckter Text angezeigt werden soll.\n\t */\n\t@Prop() public _level?: HeadingLevel = 1;\n\n\t/**\n\t * Setzt den Text einer weiteren Überschrift, einen Level kleiner, unter der Ersten.\n\t */\n\t@Prop() public _secondaryHeadline?: string;\n\n\t@State() public state: KoliBriHeadingStates = {\n\t\t_label: '…', // ⚠ required\n\t\t_level: 1,\n\t};\n\n\t@Watch('_label')\n\tpublic validateLabel(value?: string): void {\n\t\twatchString(this, '_label', value);\n\t}\n\n\t@Watch('_level')\n\tpublic validateLevel(value?: HeadingLevel): void {\n\t\twatchHeadingLevel(this, value);\n\t}\n\n\t@Watch('_secondaryHeadline')\n\tpublic validateSecondaryHeadline(value?: string): void {\n\t\twatchString(this, '_secondaryHeadline', value);\n\t}\n\n\tpublic componentWillLoad(): void {\n\t\tthis.validateLabel(this._label);\n\t\tthis.validateLevel(this._level);\n\t\tthis.validateSecondaryHeadline(this._secondaryHeadline);\n\t}\n\n\tprivate readonly renderHeadline = (headline: string, level?: number): JSX.Element => {\n\t\tswitch (level) {\n\t\t\tcase 1:\n\t\t\t\treturn (\n\t\t\t\t\t<h1 class=\"headline\">\n\t\t\t\t\t\t{headline}\n\t\t\t\t\t\t<slot />\n\t\t\t\t\t</h1>\n\t\t\t\t);\n\t\t\tcase 2:\n\t\t\t\treturn (\n\t\t\t\t\t<h2 class=\"headline\">\n\t\t\t\t\t\t{headline}\n\t\t\t\t\t\t<slot />\n\t\t\t\t\t</h2>\n\t\t\t\t);\n\t\t\tcase 3:\n\t\t\t\treturn (\n\t\t\t\t\t<h3 class=\"headline\">\n\t\t\t\t\t\t{headline}\n\t\t\t\t\t\t<slot />\n\t\t\t\t\t</h3>\n\t\t\t\t);\n\t\t\tcase 4:\n\t\t\t\treturn (\n\t\t\t\t\t<h4 class=\"headline\">\n\t\t\t\t\t\t{headline}\n\t\t\t\t\t\t<slot />\n\t\t\t\t\t</h4>\n\t\t\t\t);\n\t\t\tcase 5:\n\t\t\t\treturn (\n\t\t\t\t\t<h5 class=\"headline\">\n\t\t\t\t\t\t{headline}\n\t\t\t\t\t\t<slot />\n\t\t\t\t\t</h5>\n\t\t\t\t);\n\t\t\tcase 6:\n\t\t\t\treturn (\n\t\t\t\t\t<h6 class=\"headline\">\n\t\t\t\t\t\t{headline}\n\t\t\t\t\t\t<slot />\n\t\t\t\t\t</h6>\n\t\t\t\t);\n\t\t\tdefault:\n\t\t\t\treturn (\n\t\t\t\t\t<strong class=\"headline\">\n\t\t\t\t\t\t{headline}\n\t\t\t\t\t\t<slot />\n\t\t\t\t\t</strong>\n\t\t\t\t);\n\t\t}\n\t};\n\n\tprivate readonly renderSecondaryHeadline = (headline: string, level?: number): JSX.Element => {\n\t\tswitch (level) {\n\t\t\tcase 1: // if the headline is only strong\n\t\t\t\treturn <span class=\"secondary-headline\">{headline}</span>;\n\t\t\tcase 2: // if the headline is h1\n\t\t\t\treturn <h2 class=\"secondary-headline\">{headline}</h2>;\n\t\t\tcase 3: // if the headline is h2\n\t\t\t\treturn <h3 class=\"secondary-headline\">{headline}</h3>;\n\t\t\tcase 4: // if the headline is h3\n\t\t\t\treturn <h4 class=\"secondary-headline\">{headline}</h4>;\n\t\t\tcase 5: // if the headline is h4\n\t\t\t\treturn <h5 class=\"secondary-headline\">{headline}</h5>;\n\t\t\tcase 6: // if the headline is h5\n\t\t\t\treturn <h6 class=\"secondary-headline\">{headline}</h6>;\n\t\t\tdefault: // if the headline is h6\n\t\t\t\treturn <strong class=\"secondary-headline\">{headline}</strong>;\n\t\t}\n\t};\n\n\tpublic render(): JSX.Element {\n\t\treturn (\n\t\t\t<Host>\n\t\t\t\t{typeof this.state._secondaryHeadline === 'string' && this.state._secondaryHeadline.length > 0 ? (\n\t\t\t\t\t<hgroup>\n\t\t\t\t\t\t{this.renderHeadline(this.state._label, this.state._level)}\n\t\t\t\t\t\t{this.state._secondaryHeadline && this.renderSecondaryHeadline(this.state._secondaryHeadline, this.state._level + 1)}\n\t\t\t\t\t</hgroup>\n\t\t\t\t) : (\n\t\t\t\t\tthis.renderHeadline(this.state._label, this.state._level)\n\t\t\t\t)}\n\t\t\t</Host>\n\t\t);\n\t}\n}\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["validateHasFooter","component","value","watchBoolean","defaultStyleCss","KolCard","_heading","render","h","Host","class","_label","this","state","_level","name","_hasFooter","validateHeading","watchString","required","validateHeadline","validateLevel","watchHeadingLevel","componentWillLoad","_headline"],"sources":["./src/types/props/has-footer.ts","./src/components/card/style.css?tag=kol-card&mode=default&encapsulation=shadow","./src/components/card/component.tsx"],"sourcesContent":["import { Generic } from '@a11y-ui/core';\nimport { watchBoolean } from '../../utils/prop.validators';\n\n/* types */\n/** de\n * Zeigt den slot=\"footer\" an.\n */\n/** en\n * Shows the slot=\"footer\".\n */\nexport type PropHasFooter = {\n\thasFooter: boolean;\n};\n\n/* validator */\nexport const validateHasFooter = (component: Generic.Element.Component, value?: boolean): void => {\n\twatchBoolean(component, '_hasFooter', value);\n};\n","@import url(../style.css);\n:host > div.card {\n\theight: 100%;\n}\n","import { Component, h, Host, JSX, Prop, State, Watch } from '@stencil/core';\n\nimport {
|
|
1
|
+
{"version":3,"names":["validateHasFooter","component","value","watchBoolean","defaultStyleCss","KolCard","_heading","render","h","Host","class","_label","this","state","_level","name","_hasFooter","validateHeading","watchString","required","validateHeadline","validateLevel","watchHeadingLevel","componentWillLoad","_headline"],"sources":["./src/types/props/has-footer.ts","./src/components/card/style.css?tag=kol-card&mode=default&encapsulation=shadow","./src/components/card/component.tsx"],"sourcesContent":["import { Generic } from '@a11y-ui/core';\nimport { watchBoolean } from '../../utils/prop.validators';\n\n/* types */\n/** de\n * Zeigt den slot=\"footer\" an.\n */\n/** en\n * Shows the slot=\"footer\".\n */\nexport type PropHasFooter = {\n\thasFooter: boolean;\n};\n\n/* validator */\nexport const validateHasFooter = (component: Generic.Element.Component, value?: boolean): void => {\n\twatchBoolean(component, '_hasFooter', value);\n};\n","@import url(../style.css);\n:host > div.card {\n\theight: 100%;\n}\n","import { Component, h, Host, JSX, Prop, State, Watch } from '@stencil/core';\n\nimport { HeadingLevel } from '../../types/heading-level';\nimport { watchString } from '../../utils/prop.validators';\nimport { watchHeadingLevel } from '../heading/validation';\nimport { validateHasFooter } from '../../types/props';\nimport { KoliBriCardAPI, KoliBriCardStates } from './types';\n\n/**\n * @slot - Ermöglicht das Einfügen beliebigen HTML's in den Inhaltsbereich der Card.\n * @slot content - Ermöglicht das Einfügen beliebigen HTML's in den Inhaltsbereich der Card.\n * @slot header - Deprecated für Version 2: Ermöglicht das Einfügen beliebigen HTML's in den Kopfbereich unterhalb der Überschrift der Card.\n * @slot footer - Deprecated für Version 2: Ermöglicht das Einfügen beliebigen HTML's in den Fußbereich der Card.\n */\n@Component({\n\ttag: 'kol-card',\n\tstyleUrls: {\n\t\tdefault: './style.css',\n\t},\n\tshadow: true,\n})\nexport class KolCard implements KoliBriCardAPI {\n\tpublic render(): JSX.Element {\n\t\treturn (\n\t\t\t<Host>\n\t\t\t\t<div class=\"card\">\n\t\t\t\t\t<div class=\"header\">\n\t\t\t\t\t\t<kol-heading-wc _label={this.state._heading} _level={this.state._level}></kol-heading-wc>\n\t\t\t\t\t\t<slot name=\"header\"></slot>\n\t\t\t\t\t</div>\n\t\t\t\t\t<div class=\"content\">\n\t\t\t\t\t\t<slot name=\"content\"></slot> {/* Deprecated for version 2 */}\n\t\t\t\t\t\t<slot />\n\t\t\t\t\t</div>\n\t\t\t\t\t{this.state._hasFooter && (\n\t\t\t\t\t\t<div class=\"footer\">\n\t\t\t\t\t\t\t<slot name=\"footer\"></slot>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t)}\n\t\t\t\t</div>\n\t\t\t</Host>\n\t\t);\n\t}\n\n\t/**\n\t * Macht den Footerbereich der Card sichtbar.\n\t */\n\t@Prop({ reflect: true }) public _hasFooter?: boolean = false;\n\n\t/**\n\t * Gibt die Beschriftung der Komponente an.\n\t */\n\t@Prop() public _heading!: string;\n\n\t/**\n\t * Gibt die Beschriftung der Komponente an.\n\t *\n\t * @deprecated Verwende stattdessen das Property _heading.\n\t */\n\t@Prop() public _headline?: string;\n\n\t/**\n\t * Gibt an, welchen H-Level von 1 bis 6 die Überschrift hat. Oder bei 0, ob es keine Überschrift ist und als fett gedruckter Text angezeigt werden soll.\n\t */\n\t@Prop() public _level?: HeadingLevel = 1;\n\n\t@State() public state: KoliBriCardStates = {\n\t\t_heading: '…', // '⚠'\n\t};\n\n\t@Watch('_hasFooter')\n\tpublic validateHasFooter(value?: boolean): void {\n\t\tvalidateHasFooter(this, value);\n\t}\n\n\t@Watch('_heading')\n\tpublic validateHeading(value?: string): void {\n\t\twatchString(this, '_heading', value, {\n\t\t\trequired: true,\n\t\t});\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t * @deprecated\n\t */\n\t@Watch('_headline')\n\tpublic validateHeadline(value?: string): void {\n\t\tthis.validateHeading(value);\n\t}\n\n\t@Watch('_level')\n\tpublic validateLevel(value?: HeadingLevel): void {\n\t\twatchHeadingLevel(this, value);\n\t}\n\n\tpublic componentWillLoad(): void {\n\t\tthis.validateHasFooter(this._hasFooter);\n\t\tthis.validateHeading(this._heading || this._headline);\n\t\tthis.validateLevel(this._level);\n\t}\n}\n"],"mappings":";;;qRAeO,MAAMA,EAAoB,CAACC,EAAsCC,KACvEC,EAAaF,EAAW,aAAcC,EAAM,EChB7C,MAAME,EAAkB,ktB,MCqBXC,EAAO,M,yCA0BoC,M,6DAiBhB,E,WAEI,CAC1CC,SAAU,I,CA7CJC,SACN,OACCC,EAACC,EAAI,KACJD,EAAA,OAAKE,MAAM,QACVF,EAAA,OAAKE,MAAM,UACVF,EAAA,kBAAgBG,OAAQC,KAAKC,MAAMP,SAAUQ,OAAQF,KAAKC,MAAMC,SAChEN,EAAA,QAAMO,KAAK,YAEZP,EAAA,OAAKE,MAAM,WACVF,EAAA,QAAMO,KAAK,YAAiB,IAC5BP,EAAA,cAEAI,KAAKC,MAAMG,YACXR,EAAA,OAAKE,MAAM,UACVF,EAAA,QAAMO,KAAK,a,CAmCVf,kBAAkBE,GACxBF,EAAkBY,KAAMV,E,CAIlBe,gBAAgBf,GACtBgB,EAAYN,KAAM,WAAYV,EAAO,CACpCiB,SAAU,M,CASLC,iBAAiBlB,GACvBU,KAAKK,gBAAgBf,E,CAIfmB,cAAcnB,GACpBoB,EAAkBV,KAAMV,E,CAGlBqB,oBACNX,KAAKZ,kBAAkBY,KAAKI,YAC5BJ,KAAKK,gBAAgBL,KAAKN,UAAYM,KAAKY,WAC3CZ,KAAKS,cAAcT,KAAKE,O"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["defaultStyleCss","KolDetails","this","onClick","setTimeout","_open","_a","htmlDetailsElement","open","_summary","render","h","Host","ref","el","state","_ariaLabel","_icon","class","validateOpen","value","watchBoolean","validateSummary","watchString","required","componentWillLoad"],"sources":["./src/components/details/style.css?tag=kol-details&mode=default&encapsulation=shadow","./src/components/details/component.tsx"],"sourcesContent":["@import url(../style.css);\n@import url(../host-display-block.css);\ndetails {\n\tdisplay: grid;\n}\ndetails > summary {\n\tcursor: pointer;\n\tdisplay: flex;\n\tplace-items: center;\n}\ndetails > summary > span {\n\tborder-bottom-color: grey;\n\tborder-bottom-style: solid;\n}\ndetails > summary:focus > span,\ndetails > summary:hover > span,\ndetails[open] > summary > span {\n\tborder-bottom-color: #000;\n}\ndetails > kol-indented-text {\n\tmargin: 0.25em 0 0 0.5em;\n}\n@keyframes details-show {\n\tto {\n\t\topacity: 1;\n\t\tscale: 1;\n\t}\n}\n.content {\n\topacity: 0;\n\tscale: 1 0;\n\ttransform-origin: top;\n}\ndetails[open] > .content {\n\tanimation: 250ms ease-in-out forwards details-show;\n}\n","import { Component, h, Host, JSX, Prop, State, Watch } from '@stencil/core';\n\nimport {
|
|
1
|
+
{"version":3,"names":["defaultStyleCss","KolDetails","this","onClick","setTimeout","_open","_a","htmlDetailsElement","open","_summary","render","h","Host","ref","el","state","_ariaLabel","_icon","class","validateOpen","value","watchBoolean","validateSummary","watchString","required","componentWillLoad"],"sources":["./src/components/details/style.css?tag=kol-details&mode=default&encapsulation=shadow","./src/components/details/component.tsx"],"sourcesContent":["@import url(../style.css);\n@import url(../host-display-block.css);\ndetails {\n\tdisplay: grid;\n}\ndetails > summary {\n\tcursor: pointer;\n\tdisplay: flex;\n\tplace-items: center;\n}\ndetails > summary > span {\n\tborder-bottom-color: grey;\n\tborder-bottom-style: solid;\n}\ndetails > summary:focus > span,\ndetails > summary:hover > span,\ndetails[open] > summary > span {\n\tborder-bottom-color: #000;\n}\ndetails > kol-indented-text {\n\tmargin: 0.25em 0 0 0.5em;\n}\n@keyframes details-show {\n\tto {\n\t\topacity: 1;\n\t\tscale: 1;\n\t}\n}\n.content {\n\topacity: 0;\n\tscale: 1 0;\n\ttransform-origin: top;\n}\ndetails[open] > .content {\n\tanimation: 250ms ease-in-out forwards details-show;\n}\n","import { Component, h, Host, JSX, Prop, State, Watch } from '@stencil/core';\n\nimport { watchBoolean, watchString } from '../../utils/prop.validators';\nimport { KoliBriDetailsAPI, KoliBriDetailsStates } from './types';\n\n/**\n * @slot - Der Inhalt, der in der Detailbeschreibung angezeigt wird.\n */\n@Component({\n\ttag: 'kol-details',\n\tstyleUrls: {\n\t\tdefault: './style.css',\n\t},\n\tshadow: true,\n})\nexport class KolDetails implements KoliBriDetailsAPI {\n\tprivate htmlDetailsElement?: HTMLDetailsElement;\n\n\tpublic render(): JSX.Element {\n\t\treturn (\n\t\t\t<Host>\n\t\t\t\t<details\n\t\t\t\t\tref={(el) => {\n\t\t\t\t\t\tthis.htmlDetailsElement = el as HTMLDetailsElement;\n\t\t\t\t\t}}\n\t\t\t\t\topen={this.state._open}\n\t\t\t\t>\n\t\t\t\t\t{/* Link: https://github.com/public-ui/kolibri/issues/3558 */}\n\t\t\t\t\t{/* eslint-disable-next-line jsx-a11y/click-events-have-key-events,jsx-a11y/no-static-element-interactions */}\n\t\t\t\t\t<summary onClick={this.onClick}>\n\t\t\t\t\t\t{this.state._open ? (\n\t\t\t\t\t\t\t<kol-icon _ariaLabel=\"\" _icon=\"codicon codicon-chevron-down\" />\n\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t<kol-icon _ariaLabel=\"\" _icon=\"codicon codicon-chevron-right\" />\n\t\t\t\t\t\t)}\n\t\t\t\t\t\t<span>{this.state._summary}</span>\n\t\t\t\t\t</summary>\n\t\t\t\t\t<div class=\"content\">\n\t\t\t\t\t\t<kol-indented-text>\n\t\t\t\t\t\t\t<slot />\n\t\t\t\t\t\t</kol-indented-text>\n\t\t\t\t\t</div>\n\t\t\t\t</details>\n\t\t\t</Host>\n\t\t);\n\t}\n\n\t/**\n\t * Gibt an, ob die Komponente entweder geöffnet oder geschlossen ist.\n\t */\n\t@Prop({ mutable: true, reflect: true }) public _open?: boolean = false;\n\n\t/**\n\t * Gibt die Zusammenfassung der Detailbeschreibung an.\n\t */\n\t@Prop() public _summary!: string;\n\n\t@State() public state: KoliBriDetailsStates = {\n\t\t_summary: '…', // '⚠'\n\t};\n\n\t@Watch('_open')\n\tpublic validateOpen(value?: boolean): void {\n\t\twatchBoolean(this, '_open', value);\n\t}\n\n\t@Watch('_summary')\n\tpublic validateSummary(value?: string): void {\n\t\twatchString(this, '_summary', value, {\n\t\t\trequired: true,\n\t\t});\n\t}\n\n\tpublic componentWillLoad(): void {\n\t\tthis.validateOpen(this._open);\n\t\tthis.validateSummary(this._summary);\n\t}\n\n\tprivate onClick = () => {\n\t\tsetTimeout(() => {\n\t\t\tthis._open = this.htmlDetailsElement?.open;\n\t\t}, 25);\n\t};\n}\n"],"mappings":";;;wOAAA,MAAMA,EAAkB,4qC,MCeXC,EAAU,M,yBA+DdC,KAAAC,QAAU,KACjBC,YAAW,K,MACVF,KAAKG,OAAQC,EAAAJ,KAAKK,sBAAkB,MAAAD,SAAA,SAAAA,EAAEE,IAAI,GACxC,GAAG,E,WA/B0D,M,mCAOnB,CAC7CC,SAAU,I,CAxCJC,SACN,OACCC,EAACC,EAAI,KACJD,EAAA,WACCE,IAAMC,IACLZ,KAAKK,mBAAqBO,CAAwB,EAEnDN,KAAMN,KAAKa,MAAMV,OAIjBM,EAAA,WAASR,QAASD,KAAKC,SACrBD,KAAKa,MAAMV,MACXM,EAAA,YAAUK,WAAW,GAAGC,MAAM,iCAE9BN,EAAA,YAAUK,WAAW,GAAGC,MAAM,kCAE/BN,EAAA,YAAOT,KAAKa,MAAMN,WAEnBE,EAAA,OAAKO,MAAM,WACVP,EAAA,yBACCA,EAAA,gB,CAuBCQ,aAAaC,GACnBC,EAAanB,KAAM,QAASkB,E,CAItBE,gBAAgBF,GACtBG,EAAYrB,KAAM,WAAYkB,EAAO,CACpCI,SAAU,M,CAILC,oBACNvB,KAAKiB,aAAajB,KAAKG,OACvBH,KAAKoB,gBAAgBpB,KAAKO,S"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["KolForm","this","onSubmit","event","preventDefault","_a","state","_on","_b","onReset","render","h","method","autoComplete","noValidate","_requiredText","translate","length","validateOn","value","Object","assign","validateRequiredText","watchBoolean","watchString","componentWillLoad"],"sources":["./src/components/form/component.tsx"],"sourcesContent":["import { Component, h, JSX, Prop, State, Watch } from '@stencil/core';\
|
|
1
|
+
{"version":3,"names":["KolForm","this","onSubmit","event","preventDefault","_a","state","_on","_b","onReset","render","h","method","autoComplete","noValidate","_requiredText","translate","length","validateOn","value","Object","assign","validateRequiredText","watchBoolean","watchString","componentWillLoad"],"sources":["./src/components/form/component.tsx"],"sourcesContent":["import { Component, h, JSX, Prop, State, Watch } from '@stencil/core';\n\nimport { watchBoolean, watchString } from '../../utils/prop.validators';\nimport { Stringified } from '../../types/common';\nimport { translate } from '../../i18n';\nimport { KoliBriFormAPI, KoliBriFormCallbacks, KoliBriFormStates } from './types';\n\n/**\n * @slot - Inhalt der Form.\n */\n@Component({\n\ttag: 'kol-form',\n\tshadow: true,\n})\nexport class KolForm implements KoliBriFormAPI {\n\tprivate readonly onSubmit = (event: Event) => {\n\t\tevent.preventDefault();\n\t\tif (typeof this.state._on?.onSubmit === 'function') {\n\t\t\tthis.state._on?.onSubmit(event as SubmitEvent);\n\t\t}\n\t};\n\tprivate readonly onReset = (event: Event) => {\n\t\tevent.preventDefault();\n\t\tif (typeof this.state._on?.onReset === 'function') {\n\t\t\tthis.state._on?.onReset(event);\n\t\t}\n\t};\n\n\tpublic render(): JSX.Element {\n\t\treturn (\n\t\t\t<form method=\"post\" onSubmit={this.onSubmit} onReset={this.onReset} autoComplete=\"off\" noValidate>\n\t\t\t\t{this.state._requiredText === true ? (\n\t\t\t\t\t<p>\n\t\t\t\t\t\t<kol-indented-text>{translate('kol-form-description')}</kol-indented-text>\n\t\t\t\t\t</p>\n\t\t\t\t) : typeof this.state._requiredText === 'string' && this.state._requiredText.length > 0 ? (\n\t\t\t\t\t<p>\n\t\t\t\t\t\t<kol-indented-text>{this.state._requiredText}</kol-indented-text>\n\t\t\t\t\t</p>\n\t\t\t\t) : null}\n\t\t\t\t<slot />\n\t\t\t</form>\n\t\t);\n\t}\n\n\t/**\n\t * Gibt die EventCallback-Funktionen für die Form-Events an.\n\t */\n\t@Prop() public _on?: KoliBriFormCallbacks;\n\n\t/**\n\t * Gibt an, ob der Pflichtfeld-Hinweis eingeblendet werden soll. Ein String überschreibt den Standardtext.\n\t */\n\t@Prop() public _requiredText?: Stringified<boolean> = true;\n\n\t@State() public state: KoliBriFormStates = {};\n\n\t@Watch('_on')\n\tpublic validateOn(value?: KoliBriFormCallbacks): void {\n\t\tif (typeof value === 'object' && value !== null) {\n\t\t\tthis.state = {\n\t\t\t\t...this.state,\n\t\t\t\t_on: value,\n\t\t\t};\n\t\t}\n\t}\n\n\t@Watch('_requiredText')\n\tpublic validateRequiredText(value?: Stringified<boolean>): void {\n\t\tif (typeof value === 'boolean') {\n\t\t\twatchBoolean(this, '_requiredText', value);\n\t\t} else {\n\t\t\twatchString(this, '_requiredText', value);\n\t\t}\n\t}\n\n\tpublic componentWillLoad(): void {\n\t\tthis.validateOn(this._on);\n\t\tthis.validateRequiredText(this._requiredText);\n\t}\n}\n"],"mappings":";;;0SAcaA,EAAO,M,yBACFC,KAAAC,SAAYC,I,QAC5BA,EAAMC,iBACN,WAAWC,EAAAJ,KAAKK,MAAMC,OAAG,MAAAF,SAAA,SAAAA,EAAEH,YAAa,WAAY,EACnDM,EAAAP,KAAKK,MAAMC,OAAG,MAAAC,SAAA,SAAAA,EAAEN,SAASC,E,GAGVF,KAAAQ,QAAWN,I,QAC3BA,EAAMC,iBACN,WAAWC,EAAAJ,KAAKK,MAAMC,OAAG,MAAAF,SAAA,SAAAA,EAAEI,WAAY,WAAY,EAClDD,EAAAP,KAAKK,MAAMC,OAAG,MAAAC,SAAA,SAAAA,EAAEC,QAAQN,E,yCA6B4B,K,WAEX,E,CA3BpCO,SACN,OACCC,EAAA,QAAMC,OAAO,OAAOV,SAAUD,KAAKC,SAAUO,QAASR,KAAKQ,QAASI,aAAa,MAAMC,WAAU,MAC/Fb,KAAKK,MAAMS,gBAAkB,KAC7BJ,EAAA,SACCA,EAAA,yBAAoBK,EAAU,iCAErBf,KAAKK,MAAMS,gBAAkB,UAAYd,KAAKK,MAAMS,cAAcE,OAAS,EACrFN,EAAA,SACCA,EAAA,yBAAoBV,KAAKK,MAAMS,gBAE7B,KACJJ,EAAA,a,CAkBIO,WAAWC,GACjB,UAAWA,IAAU,UAAYA,IAAU,KAAM,CAChDlB,KAAKK,MAAKc,OAAAC,OAAAD,OAAAC,OAAA,GACNpB,KAAKK,OAAK,CACbC,IAAKY,G,EAMDG,qBAAqBH,GAC3B,UAAWA,IAAU,UAAW,CAC/BI,EAAatB,KAAM,gBAAiBkB,E,KAC9B,CACNK,EAAYvB,KAAM,gBAAiBkB,E,EAI9BM,oBACNxB,KAAKiB,WAAWjB,KAAKM,KACrBN,KAAKqB,qBAAqBrB,KAAKc,c"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["defaultStyleCss","KolHeading","render","h","_label","this","_level","_secondaryHeadline"],"sources":["./src/components/heading/style.css?tag=kol-heading&mode=default&encapsulation=shadow","./src/components/heading/shadow.tsx"],"sourcesContent":["@import url(../style.css);\n:host > kol-heading-wc {\n\tdisplay: grid;\n}\n:host > kol-heading-wc > .overline {\n\torder: 1;\n}\n:host > kol-heading-wc > .headline {\n\torder: 2;\n}\n","import { Component, h, JSX, Prop } from '@stencil/core';\n\nimport { HeadingLevel } from '../../types/heading-level';\nimport {
|
|
1
|
+
{"version":3,"names":["defaultStyleCss","KolHeading","render","h","_label","this","_level","_secondaryHeadline"],"sources":["./src/components/heading/style.css?tag=kol-heading&mode=default&encapsulation=shadow","./src/components/heading/shadow.tsx"],"sourcesContent":["@import url(../style.css);\n:host > kol-heading-wc {\n\tdisplay: grid;\n}\n:host > kol-heading-wc > .overline {\n\torder: 1;\n}\n:host > kol-heading-wc > .headline {\n\torder: 2;\n}\n","import { Component, h, JSX, Prop } from '@stencil/core';\n\nimport { HeadingLevel } from '../../types/heading-level';\nimport { KoliBriHeadingProps } from './types';\n\n/**\n * @slot - Inhalt der Überschrift.\n */\n@Component({\n\ttag: 'kol-heading',\n\tstyleUrls: {\n\t\tdefault: './style.css',\n\t},\n\tshadow: true,\n})\nexport class KolHeading implements KoliBriHeadingProps {\n\tpublic render(): JSX.Element {\n\t\treturn (\n\t\t\t<kol-heading-wc _label={this._label} _level={this._level} _secondaryHeadline={this._secondaryHeadline}>\n\t\t\t\t<slot />\n\t\t\t</kol-heading-wc>\n\t\t);\n\t}\n\t/**\n\t * Setzt die sichtbare oder semantische Beschriftung der Komponente (z.B. Aria-Label, Label, Headline, Caption, Summary usw.).\n\t */\n\t@Prop() public _label!: string;\n\n\t/**\n\t * Gibt an, welchen H-Level von 1 bis 6 die Überschrift hat. Oder bei 0, ob es keine Überschrift ist und als fett gedruckter Text angezeigt werden soll.\n\t */\n\t@Prop() public _level?: HeadingLevel;\n\n\t/**\n\t * Gibt den Text der zusätzlichen Überschrift an.\n\t */\n\t@Prop() public _secondaryHeadline?: string;\n}\n"],"mappings":";;;+CAAA,MAAMA,EAAkB,uyB,MCeXC,EAAU,M,uGACfC,SACN,OACCC,EAAA,kBAAgBC,OAAQC,KAAKD,OAAQE,OAAQD,KAAKC,OAAQC,mBAAoBF,KAAKE,oBAClFJ,EAAA,a"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["defaultStyleCss","KolIcon","_ariaLabel","_icon","render","h","Host","exportparts","this","state","length","undefined","class","part","role","validateAriaLabel","value","watchString","required","validateIcon","validatePart","devHint","componentWillLoad"],"sources":["./src/components/icon/style.css?tag=kol-icon&mode=default&encapsulation=shadow","./src/components/icon/component.tsx"],"sourcesContent":["@import url(../../assets/codicons/codicon.css);\n:host {\n\tcolor: inherit;\n\tdisplay: contents;\n\theight: 1em;\n\tline-height: inherit;\n\twidth: 1em;\n}\n:host > i {\n\theight: 1em;\n\twidth: 1em;\n}\n/*\n * The <code>:important</code> is important, because we should always override the font icon style.\n */\n:host > i,\n:host > i:before {\n\tfont-size: inherit !important;\n}\n","import { Component, h, Host, JSX, Prop, State, Watch } from '@stencil/core';\n\nimport {
|
|
1
|
+
{"version":3,"names":["defaultStyleCss","KolIcon","_ariaLabel","_icon","render","h","Host","exportparts","this","state","length","undefined","class","part","role","validateAriaLabel","value","watchString","required","validateIcon","validatePart","devHint","componentWillLoad"],"sources":["./src/components/icon/style.css?tag=kol-icon&mode=default&encapsulation=shadow","./src/components/icon/component.tsx"],"sourcesContent":["@import url(../../assets/codicons/codicon.css);\n:host {\n\tcolor: inherit;\n\tdisplay: contents;\n\theight: 1em;\n\tline-height: inherit;\n\twidth: 1em;\n}\n:host > i {\n\theight: 1em;\n\twidth: 1em;\n}\n/*\n * The <code>:important</code> is important, because we should always override the font icon style.\n */\n:host > i,\n:host > i:before {\n\tfont-size: inherit !important;\n}\n","import { Component, h, Host, JSX, Prop, State, Watch } from '@stencil/core';\n\nimport { watchString } from '../../utils/prop.validators';\nimport { devHint } from '../../utils/a11y.tipps';\nimport { KoliBriIconAPI, KoliBriIconStates } from './types';\n\n/**\n * @part icon - Ermöglicht das Styling des inneren Icons.\n */\n@Component({\n\ttag: 'kol-icon',\n\tstyleUrls: {\n\t\tdefault: './style.css',\n\t},\n\tshadow: true,\n})\nexport class KolIcon implements KoliBriIconAPI {\n\tpublic render(): JSX.Element {\n\t\treturn (\n\t\t\t<Host exportparts=\"icon\">\n\t\t\t\t<i\n\t\t\t\t\taria-hidden={this.state._ariaLabel.length > 0 ? undefined : 'true'}\n\t\t\t\t\t/**\n\t\t\t\t\t * Die Auszeichnung `aria-hidden` ist eigentlich nicht erforderlich, da die aktuellen\n\t\t\t\t\t * Screenreader, wie NVDA und JAWS, es auch ohne `aria-hidden` nicht vorlesen.\n\t\t\t\t\t *\n\t\t\t\t\t * Referenz: https://www.w3.org/TR/wai-aria/states_and_properties#aria-hidden\n\t\t\t\t\t */\n\t\t\t\t\taria-label={this.state._ariaLabel.length > 0 ? this.state._ariaLabel : undefined}\n\t\t\t\t\tclass={this.state._icon}\n\t\t\t\t\tpart=\"icon\"\n\t\t\t\t\trole=\"img\"\n\t\t\t\t></i>\n\t\t\t</Host>\n\t\t);\n\t}\n\n\t/**\n\t * Setzt die sichtbare oder semantische Beschriftung der Komponente (z.B. Aria-Label, Label, Headline, Caption, Summary usw.).\n\t */\n\t@Prop() public _ariaLabel!: string;\n\n\t/**\n\t * Setzt die Iconklasse (z.B.: `_icon=\"codicon codicon-home`).\n\t */\n\t@Prop() public _icon!: string;\n\n\t/**\n\t * Gibt den Identifier für den CSS-Part an, um das Icon von Außen ändern zu können. (https://meowni.ca/posts/part-theme-explainer/)\n\t *\n\t * @deprecated Das Styling sollte stets über CSS erfolgen.\n\t */\n\t@Prop() public _part?: string;\n\n\t@State() public state: KoliBriIconStates = {\n\t\t_ariaLabel: '…', // ⚠ required\n\t\t_icon: 'codicon codicon-home',\n\t};\n\n\t@Watch('_ariaLabel')\n\tpublic validateAriaLabel(value?: string): void {\n\t\twatchString(this, '_ariaLabel', value, {\n\t\t\trequired: true,\n\t\t});\n\t}\n\n\t@Watch('_icon')\n\tpublic validateIcon(value?: string): void {\n\t\twatchString(this, '_icon', value, {\n\t\t\trequired: true,\n\t\t});\n\t}\n\n\t/**\n\t * @deprecated\n\t */\n\t@Watch('_part')\n\tpublic validatePart(): void {\n\t\tdevHint(`ICON: The usage of the part attribute is deprecated and has no effect.`);\n\t}\n\n\tpublic componentWillLoad(): void {\n\t\tthis.validateAriaLabel(this._ariaLabel);\n\t\tthis.validateIcon(this._icon);\n\t\tthis.validatePart();\n\t}\n}\n"],"mappings":";;;6OAAA,MAAMA,EAAkB,4lvB,MCgBXC,EAAO,M,wGAsCwB,CAC1CC,WAAY,IACZC,MAAO,uB,CAvCDC,SACN,OACCC,EAACC,EAAI,CAACC,YAAY,QACjBF,EAAA,mBACcG,KAAKC,MAAMP,WAAWQ,OAAS,EAAIC,UAAY,OAAM,aAOtDH,KAAKC,MAAMP,WAAWQ,OAAS,EAAIF,KAAKC,MAAMP,WAAaS,UACvEC,MAAOJ,KAAKC,MAAMN,MAClBU,KAAK,OACLC,KAAK,Q,CA6BFC,kBAAkBC,GACxBC,EAAYT,KAAM,aAAcQ,EAAO,CACtCE,SAAU,M,CAKLC,aAAaH,GACnBC,EAAYT,KAAM,QAASQ,EAAO,CACjCE,SAAU,M,CAQLE,eACNC,EAAQ,yE,CAGFC,oBACNd,KAAKO,kBAAkBP,KAAKN,YAC5BM,KAAKW,aAAaX,KAAKL,OACvBK,KAAKY,c"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* KoliBri - The accessible HTML-Standard
|
|
3
3
|
*/
|
|
4
|
-
import{h as t,H as e,r as i,g as a}from"./index-6ad587d0.js";import{n}from"./dev.utils-157f0499.js";import{b as s,a as o}from"./reuse-3a02afb9.js";import{g as r}from"./controller-
|
|
4
|
+
import{h as t,H as e,r as i,g as a}from"./index-6ad587d0.js";import{n}from"./dev.utils-157f0499.js";import{b as s,a as o}from"./reuse-3a02afb9.js";import{g as r}from"./controller-8fc78dec.js";import{d as l}from"./a11y.tipps-2e27f8e6.js";import{b as d,a as h,s as c}from"./prop.validators-f81af56e.js";import{I as p}from"./controller-60d1d5f4.js";import"./tab-index-ff5374b8.js";import"./label-559ca626.js";import"./index-ff788b4b.js";const u=(t,e)=>{d(t,"_checked",e)},b=(t,e)=>{d(t,"_indeterminate",e)};class m extends p{constructor(t,e,i){super(t,e,i),this.component=t}validateChecked(t){d(this.component,"_checked",t),this.setFormAssociatedValue(this.component.state._checked)}validateIcon(t){h(this.component,"_icons",(t=>"object"==typeof t&&null!==t&&(s(t.checked,1)||s(t.indeterminate,1)||s(t.unchecked,1))),new Set(["InputCheckboxIcons"]),t)}validateIndeterminate(t){d(this.component,"_indeterminate",t)}validateType(t){l('The "_type" prop is deprecated. Use "_variant" instead.'),this.validateVariant(t)}validateValue(t){c(this.component,"_value",t),this.setFormAssociatedValue(this.component.state._value)}validateVariant(t){"checkbox"===t&&(l("[KolCheckbox] The \"_variant\" value 'checkbox' is deprecated. Use the new value 'default' instead."),t="default"),h(this.component,"_variant",(t=>"string"==typeof t&&("button"===t||"default"===t||"switch"===t)),new Set(["String {button, default, switch}"]),t)}componentWillLoad(){super.componentWillLoad(),this.validateChecked(this.component._checked),this.validateIcon(this.component._icon),this.validateIndeterminate(this.component._indeterminate),this.validateValue(this.component._value),this.validateVariant(this.component._variant||this.component._type)}}const f=":host{--a11y-min-size:44px;font-size:inherit}*{hyphens:auto;letter-spacing:inherit;word-break:break-word;word-spacing:inherit}[role='button'],button:not([role='link']),kol-input .input{min-height:var(--a11y-min-size);min-width:var(--a11y-min-size)}a,button,h1,h2,h3,h4,h5,h6,input,option,select,textarea{font-family:inherit;font-size:inherit}:is(a,button){background-color:transparent;border:none;margin:0;padding:0;width:100%;}:host{max-width:100%}*{box-sizing:border-box}kol-span-wc{display:grid;place-items:center}kol-span-wc>span{display:flex;place-items:center}a,button{cursor:pointer}button,input,option,select,textarea{font-family:inherit}.icon-only>kol-span-wc>span>span{display:none}.required label>span::after,.required legend>span::after{content:'*'}:host{display:block}input,textarea{cursor:text}input[type='checkbox'],input[type='color'],input[type='file'],input[type='radio'],input[type='range'],label,option,select{cursor:pointer}input[type='color'],input[type='date'],input[type='datetime-local'],input[type='email'],input[type='file'],input[type='month'],input[type='number'],input[type='password'],input[type='search'],input[type='tel'],input[type='text'],input[type='time'],input[type='url'],input[type='week'],select:not([multiple]),select[multiple] option,textarea{font-size:1rem;width:100%}input[type='file']{padding:calc((var(--a11y-min-size) - 1rem) / 10) 0.5em}select[multiple] option{padding:calc((var(--a11y-min-size) - 1rem) / 2) 0.5em}kol-input.disabled :is(button,input,label,option,select,textarea){cursor:not-allowed;opacity:0.5}label{cursor:pointer}kol-input{align-items:center;display:grid;justify-items:left;width:100}kol-input.default,kol-input.switch{grid-template-columns:auto 1fr}kol-input .input{align-items:center;display:grid;order:1}kol-input .input div{display:inline-flex}kol-input .input input{margin:0}kol-input label{order:2}kol-input .hint,kol-input.error>kol-alert{grid-column:span 2}kol-input kol-alert.error{order:3}kol-input .hint{order:4}input{border-width:2px;border-style:solid;line-height:24px}input[type='checkbox']{appearance:none;background-color:#fff;cursor:pointer;transition:0.5s}input[type='checkbox'].kol-disabled:before{cursor:not-allowed}input[type='checkbox']:before{content:'';cursor:pointer}.default kol-icon,.switch kol-icon{display:none}.button{cursor:pointer;display:inline-flex;width:auto}.button input{display:none}.default input[type='checkbox']{height:1.5em;width:1.5em}.default input[type='checkbox']:before{display:block;height:1.5em;position:relative;width:1.5em}.default input[type='checkbox']:checked:before{border-radius:1px;border-style:solid;border-width:0 3px 3px 0;height:0.75em;left:calc(0.375em - 2px);transform:rotate(40deg) translate(-50%, -50%);top:calc(0.7125em - 2px);width:0.375em}.default input[type='checkbox']:indeterminate:before{background-color:#000;height:0.2em;left:0.24em;top:0.575em;width:0.8em}.switch input[type='checkbox']{display:inline-block;height:1.7em;min-width:3.2em;position:relative;width:3.2em}.switch input[type='checkbox']:before{background-color:#000;height:1.2em;left:calc(0.25em - 2px);top:calc(0.25em - 2px);position:absolute;-webkit-transition:0.5s;-moz-transition:0.5s;-ms-transition:0.5s;transition:0.5s;width:1.2em}.switch input[type='checkbox']:checked:before{-webkit-transform:translateX(1.5em);-moz-transform:translateX(1.5em);-ms-transform:translateX(1.5em);transform:translateX(1.5em)}.switch input[type='checkbox']:indeterminate:before{transform:translateX(0.75em)}",y=class{render(){const{ariaDescribedBy:i}=r(this.state),a=""===this.state._label,n="…"===this.state._label;return t(e,null,t("kol-input",{class:{checkbox:!0,[this.state._variant]:!0},"data-role":"button"===this.state._variant?"button":void 0,onKeyPress:"button"===this.state._variant?this.onChange:void 0,tabIndex:"button"===this.state._variant?0:void 0,_alert:this.state._alert,_disabled:this.state._disabled,_error:this.state._error,_hideLabel:this.state._hideLabel,_hint:this.state._hint,_id:this.state._id,_required:this.state._required,_touched:this.state._touched,onClick:()=>{var t;return null===(t=this.ref)||void 0===t?void 0:t.focus()}},t("span",{slot:"label"},a?t("slot",{name:"expert"}):n?t("slot",null):this.state._label),t("div",{slot:"input"},t("kol-icon",{onClick:this.onChange,_ariaLabel:"",_icon:this.state._indeterminate?this.state._icon.indeterminate:this.state._checked?this.state._icon.checked:this.state._icon.unchecked}),t("input",Object.assign({ref:this.catchRef,accessKey:this.state._accessKey,"aria-describedby":i.length>0?i.join(" "):void 0,"aria-labelledby":`${this.state._id}-label`,checked:this.state._checked,disabled:!0===this.state._disabled,id:this.state._id,indeterminate:this.state._indeterminate,name:this.state._name,required:!0===this.state._required,tabIndex:this.state._tabIndex,title:"",type:"checkbox",value:"string"==typeof this.state._value?this.state._value:""},this.controller.onFacade,{onChange:this.onChange})))))}constructor(t){i(this,t),this.catchRef=t=>{this.ref=t,o(this.host,this.ref)},this.onChange=t=>{this._checked=!this._checked,this._indeterminate=!1,this.controller.setValue(t,this._checked)},this._accessKey=void 0,this._alert=!0,this._checked=!1,this._disabled=void 0,this._error=void 0,this._hideLabel=void 0,this._hint="",this._icon=void 0,this._id=void 0,this._indeterminate=void 0,this._label=void 0,this._name=void 0,this._on=void 0,this._required=void 0,this._syncValueBySelector=void 0,this._tabIndex=void 0,this._touched=!1,this._type=void 0,this._value=void 0,this._variant=void 0,this.state={_checked:!1,_icon:{checked:"codicon codicon-check",indeterminate:"codicon codicon-remove",unchecked:"codicon codicon-add"},_id:n(),_indeterminate:!1,_label:"…",_variant:"default"},this.controller=new m(this,"checkbox",this.host)}validateAccessKey(t){this.controller.validateAccessKey(t)}validateAlert(t){this.controller.validateAlert(t)}validateChecked(t){u(this,t)}validateDisabled(t){this.controller.validateDisabled(t)}validateError(t){this.controller.validateError(t)}validateHideLabel(t){this.controller.validateHideLabel(t)}validateHint(t){this.controller.validateHint(t)}validateIcon(t){this.controller.validateIcon(t)}validateId(t){this.controller.validateId(t)}validateIndeterminate(t){b(this,t)}validateLabel(t){this.controller.validateLabel(t)}validateName(t){this.controller.validateName(t)}validateOn(t){this.controller.validateOn(t)}validateRequired(t){this.controller.validateRequired(t)}validateSyncValueBySelector(t){this.controller.validateSyncValueBySelector(t)}validateTabIndex(t){this.controller.validateTabIndex(t)}validateTouched(t){this.controller.validateTouched(t)}validateType(t){this.controller.validateType(t)}validateValue(t){this.controller.validateValue(t)}validateVariant(t){this.controller.validateVariant(t)}componentWillLoad(){this._alert=!0===this._alert,this._touched=!0===this._touched,this.controller.componentWillLoad()}get host(){return a(this)}static get watchers(){return{_accessKey:["validateAccessKey"],_alert:["validateAlert"],_checked:["validateChecked"],_disabled:["validateDisabled"],_error:["validateError"],_hideLabel:["validateHideLabel"],_hint:["validateHint"],_icon:["validateIcon"],_id:["validateId"],_indeterminate:["validateIndeterminate"],_label:["validateLabel"],_name:["validateName"],_on:["validateOn"],_required:["validateRequired"],_syncValueBySelector:["validateSyncValueBySelector"],_tabIndex:["validateTabIndex"],_touched:["validateTouched"],_type:["validateType"],_value:["validateValue"],_variant:["validateVariant"]}}};y.style={default:f};export{y as kol_input_checkbox};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["validateChecked","component","value","watchBoolean","validateIndeterminate","InputCheckboxController","InputCheckboxRadioController","constructor","name","host","super","this","setFormAssociatedValue","state","_checked","validateIcon","watchValidator","isString","checked","indeterminate","unchecked","Set","validateType","devHint","validateVariant","validateValue","setState","_value","componentWillLoad","_icon","_indeterminate","_variant","_type","defaultStyleCss","KolInputCheckbox","render","ariaDescribedBy","getRenderStates","showExpertSlot","_label","showDefaultSlot","h","Host","class","checkbox","undefined","onKeyPress","onChange","tabIndex","_alert","_disabled","_error","_hideLabel","_hint","_id","_required","_touched","onClick","_a","ref","focus","slot","_ariaLabel","Object","assign","catchRef","accessKey","_accessKey","length","join","disabled","id","_name","required","_tabIndex","title","type","controller","onFacade","hostRef","propagateFocus","event","setValue","nonce","validateAccessKey","validateAlert","validateDisabled","validateError","validateHideLabel","validateHint","validateId","validateLabel","validateName","validateOn","validateRequired","validateTabIndex","validateTouched"],"sources":["./src/types/props/checked.ts","./src/types/props/indeterminate.ts","./src/components/input-checkbox/controller.ts","./src/components/input-checkbox/style.css?tag=kol-input-checkbox&mode=default&encapsulation=shadow","./src/components/input-checkbox/component.tsx"],"sourcesContent":["import { Generic } from '@a11y-ui/core';\nimport { watchBoolean } from '../../utils/prop.validators';\n\n/* types */\n/** de\n * Hakt die Checkbox an.\n */\n/** en\n * Checks the checkbox.\n */\nexport type PropChecked = {\n\tchecked: boolean;\n};\n\n/* validator */\nexport const validateChecked = (component: Generic.Element.Component, value?: boolean): void => {\n\twatchBoolean(component, '_checked', value);\n};\n","import { Generic } from '@a11y-ui/core';\nimport { watchBoolean } from '../../utils/prop.validators';\n\n/* types */\n/** de\n * Setzt den unbestimmten Zustand auf der Checkbox, hat keine Auswirkung auf _checked.\n */\n/** en\n * Puts the checkbox in the indeterminate state, does not change the value of _checked.\n */\nexport type PropIndeterminate = {\n\tindeterminate: boolean;\n};\n\n/* validator */\nexport const validateIndeterminate = (component: Generic.Element.Component, value?: boolean): void => {\n\twatchBoolean(component, '_indeterminate', value);\n};\n","import { Generic } from '@a11y-ui/core';\nimport { Stringified } from '../../types/common';\nimport { devHint } from '../../utils/a11y.tipps';\nimport { setState, watchBoolean, watchValidator } from '../../utils/prop.validators';\nimport { isString } from '../../utils/validator';\nimport { InputCheckboxRadioController } from '../input-radio/controller';\nimport { InputCheckboxIcon, InputCheckboxVariant, Props, Watches } from './types';\n\nexport class InputCheckboxController extends InputCheckboxRadioController implements Watches {\n\tprotected readonly component: Generic.Element.Component & Props;\n\n\tpublic constructor(component: Generic.Element.Component & Props, name: string, host?: HTMLElement) {\n\t\tsuper(component, name, host);\n\t\tthis.component = component;\n\t}\n\n\tpublic validateChecked(value?: boolean): void {\n\t\twatchBoolean(this.component, '_checked', value);\n\t\tthis.setFormAssociatedValue(this.component.state._checked as string);\n\t}\n\n\tpublic validateIcon(value?: Stringified<InputCheckboxIcon>): void {\n\t\twatchValidator(\n\t\t\tthis.component,\n\t\t\t'_icons',\n\t\t\t(value): boolean => {\n\t\t\t\treturn typeof value === 'object' && value !== null && (isString(value.checked, 1) || isString(value.indeterminate, 1) || isString(value.unchecked, 1));\n\t\t\t},\n\t\t\tnew Set(['InputCheckboxIcons']),\n\t\t\tvalue\n\t\t);\n\t}\n\n\tpublic validateIndeterminate(value?: boolean): void {\n\t\twatchBoolean(this.component, '_indeterminate', value);\n\t}\n\n\t/**\n\t * @deprecated\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\tpublic validateType(value?: InputCheckboxVariant): void {\n\t\tdevHint(`The \"_type\" prop is deprecated. Use \"_variant\" instead.`);\n\t\tthis.validateVariant(value);\n\t}\n\n\tpublic validateValue(value?: string): void {\n\t\tsetState(this.component, '_value', value);\n\t\tthis.setFormAssociatedValue(this.component.state._value as string);\n\t}\n\n\tpublic validateVariant(value?: InputCheckboxVariant): void {\n\t\tif (value === 'checkbox') {\n\t\t\tdevHint(`[KolCheckbox] The \"_variant\" value 'checkbox' is deprecated. Use the new value 'default' instead.`);\n\t\t\tvalue = 'default';\n\t\t}\n\t\twatchValidator(\n\t\t\tthis.component,\n\t\t\t'_variant',\n\t\t\t(value): boolean => typeof value === 'string' && (value === 'button' || value === 'default' || value === 'switch'),\n\t\t\tnew Set(['String {button, default, switch}']),\n\t\t\tvalue\n\t\t);\n\t}\n\n\tpublic componentWillLoad(): void {\n\t\tsuper.componentWillLoad();\n\t\tthis.validateChecked(this.component._checked);\n\t\tthis.validateIcon(this.component._icon);\n\t\tthis.validateIndeterminate(this.component._indeterminate);\n\t\tthis.validateValue(this.component._value);\n\t\tthis.validateVariant(this.component._variant || this.component._type);\n\t}\n}\n","@import url(../input.css);\n@import url(common.css);\n@import url(button.css);\n@import url(checkbox.css);\n@import url(switch.css);\n","import { Component, Element, h, Host, JSX, Prop, State, Watch } from '@stencil/core';\nimport { Stringified } from '../../types/common';\n\nimport { InputTypeOnDefault } from '../../types/input/types';\nimport { validateChecked, validateIndeterminate } from '../../types/props';\nimport { nonce } from '../../utils/dev.utils';\nimport { propagateFocus } from '../../utils/reuse';\nimport { getRenderStates } from '../input/controller';\nimport { InputCheckboxController } from './controller';\nimport { ComponentApi, InputCheckboxIcon, InputCheckboxVariant, States } from './types';\n\n/**\n * @slot - Die Beschriftung der Checkbox.\n */\n@Component({\n\ttag: 'kol-input-checkbox',\n\tstyleUrls: {\n\t\tdefault: './style.css',\n\t},\n\tshadow: true,\n})\nexport class KolInputCheckbox implements ComponentApi {\n\t@Element() private readonly host?: HTMLKolInputCheckboxElement;\n\tprivate ref?: HTMLInputElement;\n\n\tprivate readonly catchRef = (ref?: HTMLInputElement) => {\n\t\tthis.ref = ref;\n\t\tpropagateFocus(this.host, this.ref);\n\t};\n\n\tpublic render(): JSX.Element {\n\t\tconst { ariaDescribedBy } = getRenderStates(this.state);\n\t\tconst showExpertSlot = this.state._label === ''; // _label=\"\" or _label\n\t\tconst showDefaultSlot = this.state._label === '…'; // deprecated: default slot will be removed in v2.0.0\n\t\treturn (\n\t\t\t<Host>\n\t\t\t\t<kol-input\n\t\t\t\t\tclass={{\n\t\t\t\t\t\tcheckbox: true,\n\t\t\t\t\t\t[this.state._variant]: true,\n\t\t\t\t\t}}\n\t\t\t\t\tdata-role={this.state._variant === 'button' ? 'button' : undefined}\n\t\t\t\t\tonKeyPress={this.state._variant === 'button' ? this.onChange : undefined}\n\t\t\t\t\ttabIndex={this.state._variant === 'button' ? 0 : undefined}\n\t\t\t\t\t_alert={this.state._alert}\n\t\t\t\t\t_disabled={this.state._disabled}\n\t\t\t\t\t_error={this.state._error}\n\t\t\t\t\t_hideLabel={this.state._hideLabel}\n\t\t\t\t\t_hint={this.state._hint}\n\t\t\t\t\t_id={this.state._id}\n\t\t\t\t\t_required={this.state._required}\n\t\t\t\t\t_touched={this.state._touched}\n\t\t\t\t\tonClick={() => this.ref?.focus()}\n\t\t\t\t>\n\t\t\t\t\t<span slot=\"label\">{showExpertSlot ? <slot name=\"expert\"></slot> : showDefaultSlot ? <slot></slot> : this.state._label}</span>\n\t\t\t\t\t<div slot=\"input\">\n\t\t\t\t\t\t<kol-icon\n\t\t\t\t\t\t\tonClick={this.onChange}\n\t\t\t\t\t\t\t_ariaLabel=\"\"\n\t\t\t\t\t\t\t_icon={this.state._indeterminate ? this.state._icon.indeterminate : this.state._checked ? this.state._icon.checked : this.state._icon.unchecked}\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<input\n\t\t\t\t\t\t\tref={this.catchRef}\n\t\t\t\t\t\t\taccessKey={this.state._accessKey} // by checkbox?!\n\t\t\t\t\t\t\taria-describedby={ariaDescribedBy.length > 0 ? ariaDescribedBy.join(' ') : undefined}\n\t\t\t\t\t\t\taria-labelledby={`${this.state._id}-label`}\n\t\t\t\t\t\t\tchecked={this.state._checked}\n\t\t\t\t\t\t\tdisabled={this.state._disabled === true}\n\t\t\t\t\t\t\tid={this.state._id}\n\t\t\t\t\t\t\tindeterminate={this.state._indeterminate}\n\t\t\t\t\t\t\tname={this.state._name}\n\t\t\t\t\t\t\trequired={this.state._required === true}\n\t\t\t\t\t\t\ttabIndex={this.state._tabIndex}\n\t\t\t\t\t\t\ttitle=\"\"\n\t\t\t\t\t\t\ttype=\"checkbox\"\n\t\t\t\t\t\t\tvalue={typeof this.state._value === 'string' ? this.state._value : ''}\n\t\t\t\t\t\t\t{...this.controller.onFacade}\n\t\t\t\t\t\t\tonChange={this.onChange}\n\t\t\t\t\t\t></input>\n\t\t\t\t\t</div>\n\t\t\t\t</kol-input>\n\t\t\t</Host>\n\t\t);\n\t}\n\n\tprivate readonly controller: InputCheckboxController;\n\n\t/**\n\t * Gibt an, mit welcher Tastenkombination man das interaktive Element der Komponente auslösen oder fokussieren kann.\n\t */\n\t@Prop() public _accessKey?: string;\n\n\t/**\n\t * Gibt an, ob der Screenreader die Meldung aktiv vorlesen soll.\n\t */\n\t@Prop({ mutable: true, reflect: true }) public _alert?: boolean = true;\n\n\t/**\n\t * Gibt an, ob die Checkbox ausgewählt ist oder nicht. (kann gelesen und gesetzt werden)\n\t */\n\t@Prop({ mutable: true, reflect: true }) public _checked?: boolean = false;\n\n\t/**\n\t * Deaktiviert das interaktive Element in der Komponente und erlaubt keine Interaktion mehr damit.\n\t */\n\t@Prop({ reflect: true }) public _disabled?: boolean;\n\n\t/**\n\t * Gibt den Text für eine Fehlermeldung an.\n\t */\n\t@Prop() public _error?: string;\n\n\t/**\n\t * Blendet die Beschriftung (Label) aus und zeigt sie stattdessen mittels eines Tooltips an.\n\t */\n\t@Prop({ reflect: true }) public _hideLabel?: boolean;\n\n\t/**\n\t * Gibt den Hinweistext an.\n\t */\n\t@Prop() public _hint?: string = '';\n\n\t/**\n\t * Setzt die Iconklasse (z.B.: `_icon=\"codicon codicon-home`).\n\t */\n\t@Prop() public _icon?: Stringified<InputCheckboxIcon>;\n\n\t/**\n\t * Gibt die interne ID des primären Elements in der Komponente an.\n\t */\n\t@Prop() public _id?: string;\n\n\t/**\n\t * Gibt an, ob die Checkbox weder ausgewählt noch nicht ausgewählt ist.\n\t */\n\t@Prop({ mutable: true, reflect: true }) public _indeterminate?: boolean;\n\n\t/**\n\t * Setzt die sichtbare oder semantische Beschriftung der Komponente (z.B. Aria-Label, Label, Headline, Caption, Summary usw.).\n\t */\n\t@Prop() public _label!: string;\n\n\t/**\n\t * Gibt den technischen Namen des Eingabefeldes an.\n\t */\n\t@Prop() public _name?: string;\n\n\t/**\n\t * Gibt die EventCallback-Funktionen für das Input-Event an.\n\t */\n\t@Prop() public _on?: InputTypeOnDefault;\n\n\t/**\n\t * Macht das Eingabeelement zu einem Pflichtfeld.\n\t */\n\t@Prop({ reflect: true }) public _required?: boolean;\n\n\t/**\n\t * Gibt an, welchen Tab-Index das primäre Element in der Komponente hat. (https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/tabindex)\n\t */\n\t@Prop() public _tabIndex?: number;\n\n\t/**\n\t * Gibt an, ob dieses Eingabefeld von Nutzer:innen einmal besucht/berührt wurde.\n\t */\n\t@Prop({ mutable: true, reflect: true }) public _touched?: boolean = false;\n\n\t/**\n\t * Gibt an, welche Variante der Darstellung genutzt werden soll.\n\t *\n\t * @deprecated Verwende stattdessen das Attribute _variant.\n\t */\n\t@Prop() public _type?: InputCheckboxVariant;\n\n\t/**\n\t * Gibt den Schlüssel/Namen der Checkbox an. ({ [value]: [checked] })\n\t */\n\t@Prop() public _value?: string;\n\n\t/**\n\t * Gibt an, welche Variante der Darstellung genutzt werden soll.\n\t */\n\t@Prop() public _variant?: InputCheckboxVariant; // TODO: = 'default'; in v2 setzen\n\n\t@State() public state: States = {\n\t\t_checked: false,\n\t\t_icon: {\n\t\t\tchecked: 'codicon codicon-check',\n\t\t\tindeterminate: 'codicon codicon-remove',\n\t\t\tunchecked: 'codicon codicon-add',\n\t\t},\n\t\t_id: nonce(), // ⚠ required\n\t\t_indeterminate: false,\n\t\t_label: '…', // ⚠ required\n\t\t_variant: 'default',\n\t};\n\n\tpublic constructor() {\n\t\tthis.controller = new InputCheckboxController(this, 'checkbox', this.host);\n\t}\n\n\t@Watch('_accessKey')\n\tpublic validateAccessKey(value?: string): void {\n\t\tthis.controller.validateAccessKey(value);\n\t}\n\n\t@Watch('_alert')\n\tpublic validateAlert(value?: boolean): void {\n\t\tthis.controller.validateAlert(value);\n\t}\n\n\t@Watch('_checked')\n\tpublic validateChecked(value?: boolean): void {\n\t\tvalidateChecked(this, value);\n\t}\n\n\t@Watch('_disabled')\n\tpublic validateDisabled(value?: boolean): void {\n\t\tthis.controller.validateDisabled(value);\n\t}\n\n\t@Watch('_error')\n\tpublic validateError(value?: string): void {\n\t\tthis.controller.validateError(value);\n\t}\n\n\t@Watch('_hideLabel')\n\tpublic validateHideLabel(value?: boolean): void {\n\t\tthis.controller.validateHideLabel(value);\n\t}\n\n\t@Watch('_hint')\n\tpublic validateHint(value?: string): void {\n\t\tthis.controller.validateHint(value);\n\t}\n\n\t@Watch('_icon')\n\tpublic validateIcon(value?: Stringified<InputCheckboxIcon>): void {\n\t\tthis.controller.validateIcon(value);\n\t}\n\n\t@Watch('_id')\n\tpublic validateId(value?: string): void {\n\t\tthis.controller.validateId(value);\n\t}\n\n\t@Watch('_indeterminate')\n\tpublic validateIndeterminate(value?: boolean): void {\n\t\tvalidateIndeterminate(this, value);\n\t}\n\n\t@Watch('_label')\n\tpublic validateLabel(value?: string): void {\n\t\tthis.controller.validateLabel(value);\n\t}\n\n\t@Watch('_name')\n\tpublic validateName(value?: string): void {\n\t\tthis.controller.validateName(value);\n\t}\n\n\t@Watch('_on')\n\tpublic validateOn(value?: InputTypeOnDefault): void {\n\t\tthis.controller.validateOn(value);\n\t}\n\n\t@Watch('_required')\n\tpublic validateRequired(value?: boolean): void {\n\t\tthis.controller.validateRequired(value);\n\t}\n\n\t@Watch('_tabIndex')\n\tpublic validateTabIndex(value?: number): void {\n\t\tthis.controller.validateTabIndex(value);\n\t}\n\n\t@Watch('_touched')\n\tpublic validateTouched(value?: boolean): void {\n\t\tthis.controller.validateTouched(value);\n\t}\n\n\t@Watch('_type')\n\tpublic validateType(value?: InputCheckboxVariant): void {\n\t\tthis.controller.validateType(value);\n\t}\n\n\t@Watch('_value')\n\tpublic validateValue(value?: string): void {\n\t\tthis.controller.validateValue(value);\n\t}\n\n\t@Watch('_variant')\n\tpublic validateVariant(value?: InputCheckboxVariant): void {\n\t\tthis.controller.validateVariant(value);\n\t}\n\n\tpublic componentWillLoad(): void {\n\t\tthis._alert = this._alert === true;\n\t\tthis._touched = this._touched === true;\n\t\tthis.controller.componentWillLoad();\n\t}\n\n\tprivate onChange = (event: Event): void => {\n\t\tthis._checked = !this._checked;\n\t\tthis._indeterminate = false;\n\t\tthis.controller.setValue(event, this._checked);\n\t};\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["validateChecked","component","value","watchBoolean","validateIndeterminate","InputCheckboxController","InputCheckboxRadioController","constructor","name","host","super","this","setFormAssociatedValue","state","_checked","validateIcon","watchValidator","isString","checked","indeterminate","unchecked","Set","validateType","devHint","validateVariant","validateValue","setState","_value","componentWillLoad","_icon","_indeterminate","_variant","_type","defaultStyleCss","KolInputCheckbox","render","ariaDescribedBy","getRenderStates","showExpertSlot","_label","showDefaultSlot","h","Host","class","checkbox","undefined","onKeyPress","onChange","tabIndex","_alert","_disabled","_error","_hideLabel","_hint","_id","_required","_touched","onClick","_a","ref","focus","slot","_ariaLabel","Object","assign","catchRef","accessKey","_accessKey","length","join","disabled","id","_name","required","_tabIndex","title","type","controller","onFacade","hostRef","propagateFocus","event","setValue","nonce","validateAccessKey","validateAlert","validateDisabled","validateError","validateHideLabel","validateHint","validateId","validateLabel","validateName","validateOn","validateRequired","validateSyncValueBySelector","validateTabIndex","validateTouched"],"sources":["./src/types/props/checked.ts","./src/types/props/indeterminate.ts","./src/components/input-checkbox/controller.ts","./src/components/input-checkbox/style.css?tag=kol-input-checkbox&mode=default&encapsulation=shadow","./src/components/input-checkbox/component.tsx"],"sourcesContent":["import { Generic } from '@a11y-ui/core';\nimport { watchBoolean } from '../../utils/prop.validators';\n\n/* types */\n/** de\n * Hakt die Checkbox an.\n */\n/** en\n * Checks the checkbox.\n */\nexport type PropChecked = {\n\tchecked: boolean;\n};\n\n/* validator */\nexport const validateChecked = (component: Generic.Element.Component, value?: boolean): void => {\n\twatchBoolean(component, '_checked', value);\n};\n","import { Generic } from '@a11y-ui/core';\nimport { watchBoolean } from '../../utils/prop.validators';\n\n/* types */\n/** de\n * Setzt den unbestimmten Zustand auf der Checkbox, hat keine Auswirkung auf _checked.\n */\n/** en\n * Puts the checkbox in the indeterminate state, does not change the value of _checked.\n */\nexport type PropIndeterminate = {\n\tindeterminate: boolean;\n};\n\n/* validator */\nexport const validateIndeterminate = (component: Generic.Element.Component, value?: boolean): void => {\n\twatchBoolean(component, '_indeterminate', value);\n};\n","import { Generic } from '@a11y-ui/core';\nimport { Stringified } from '../../types/common';\nimport { devHint } from '../../utils/a11y.tipps';\nimport { setState, watchBoolean, watchValidator } from '../../utils/prop.validators';\nimport { isString } from '../../utils/validator';\nimport { InputCheckboxRadioController } from '../input-radio/controller';\nimport { InputCheckboxIcon, InputCheckboxVariant, Props, Watches } from './types';\n\nexport class InputCheckboxController extends InputCheckboxRadioController implements Watches {\n\tprotected readonly component: Generic.Element.Component & Props;\n\n\tpublic constructor(component: Generic.Element.Component & Props, name: string, host?: HTMLElement) {\n\t\tsuper(component, name, host);\n\t\tthis.component = component;\n\t}\n\n\tpublic validateChecked(value?: boolean): void {\n\t\twatchBoolean(this.component, '_checked', value);\n\t\tthis.setFormAssociatedValue(this.component.state._checked as string);\n\t}\n\n\tpublic validateIcon(value?: Stringified<InputCheckboxIcon>): void {\n\t\twatchValidator(\n\t\t\tthis.component,\n\t\t\t'_icons',\n\t\t\t(value): boolean => {\n\t\t\t\treturn typeof value === 'object' && value !== null && (isString(value.checked, 1) || isString(value.indeterminate, 1) || isString(value.unchecked, 1));\n\t\t\t},\n\t\t\tnew Set(['InputCheckboxIcons']),\n\t\t\tvalue\n\t\t);\n\t}\n\n\tpublic validateIndeterminate(value?: boolean): void {\n\t\twatchBoolean(this.component, '_indeterminate', value);\n\t}\n\n\t/**\n\t * @deprecated\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\tpublic validateType(value?: InputCheckboxVariant): void {\n\t\tdevHint(`The \"_type\" prop is deprecated. Use \"_variant\" instead.`);\n\t\tthis.validateVariant(value);\n\t}\n\n\tpublic validateValue(value?: string): void {\n\t\tsetState(this.component, '_value', value);\n\t\tthis.setFormAssociatedValue(this.component.state._value as string);\n\t}\n\n\tpublic validateVariant(value?: InputCheckboxVariant): void {\n\t\tif (value === 'checkbox') {\n\t\t\tdevHint(`[KolCheckbox] The \"_variant\" value 'checkbox' is deprecated. Use the new value 'default' instead.`);\n\t\t\tvalue = 'default';\n\t\t}\n\t\twatchValidator(\n\t\t\tthis.component,\n\t\t\t'_variant',\n\t\t\t(value): boolean => typeof value === 'string' && (value === 'button' || value === 'default' || value === 'switch'),\n\t\t\tnew Set(['String {button, default, switch}']),\n\t\t\tvalue\n\t\t);\n\t}\n\n\tpublic componentWillLoad(): void {\n\t\tsuper.componentWillLoad();\n\t\tthis.validateChecked(this.component._checked);\n\t\tthis.validateIcon(this.component._icon);\n\t\tthis.validateIndeterminate(this.component._indeterminate);\n\t\tthis.validateValue(this.component._value);\n\t\tthis.validateVariant(this.component._variant || this.component._type);\n\t}\n}\n","@import url(../input.css);\n@import url(common.css);\n@import url(button.css);\n@import url(checkbox.css);\n@import url(switch.css);\n","import { Component, Element, h, Host, JSX, Prop, State, Watch } from '@stencil/core';\nimport { Stringified } from '../../types/common';\n\nimport { InputTypeOnDefault } from '../../types/input/types';\nimport { validateChecked, validateIndeterminate } from '../../types/props';\nimport { nonce } from '../../utils/dev.utils';\nimport { propagateFocus } from '../../utils/reuse';\nimport { getRenderStates } from '../input/controller';\nimport { InputCheckboxController } from './controller';\nimport { ComponentApi, InputCheckboxIcon, InputCheckboxVariant, States } from './types';\n\n/**\n * @slot - Die Beschriftung der Checkbox.\n */\n@Component({\n\ttag: 'kol-input-checkbox',\n\tstyleUrls: {\n\t\tdefault: './style.css',\n\t},\n\tshadow: true,\n})\nexport class KolInputCheckbox implements ComponentApi {\n\t@Element() private readonly host?: HTMLKolInputCheckboxElement;\n\tprivate ref?: HTMLInputElement;\n\n\tprivate readonly catchRef = (ref?: HTMLInputElement) => {\n\t\tthis.ref = ref;\n\t\tpropagateFocus(this.host, this.ref);\n\t};\n\n\tpublic render(): JSX.Element {\n\t\tconst { ariaDescribedBy } = getRenderStates(this.state);\n\t\tconst showExpertSlot = this.state._label === ''; // _label=\"\" or _label\n\t\tconst showDefaultSlot = this.state._label === '…'; // deprecated: default slot will be removed in v2.0.0\n\t\treturn (\n\t\t\t<Host>\n\t\t\t\t<kol-input\n\t\t\t\t\tclass={{\n\t\t\t\t\t\tcheckbox: true,\n\t\t\t\t\t\t[this.state._variant]: true,\n\t\t\t\t\t}}\n\t\t\t\t\tdata-role={this.state._variant === 'button' ? 'button' : undefined}\n\t\t\t\t\tonKeyPress={this.state._variant === 'button' ? this.onChange : undefined}\n\t\t\t\t\ttabIndex={this.state._variant === 'button' ? 0 : undefined}\n\t\t\t\t\t_alert={this.state._alert}\n\t\t\t\t\t_disabled={this.state._disabled}\n\t\t\t\t\t_error={this.state._error}\n\t\t\t\t\t_hideLabel={this.state._hideLabel}\n\t\t\t\t\t_hint={this.state._hint}\n\t\t\t\t\t_id={this.state._id}\n\t\t\t\t\t_required={this.state._required}\n\t\t\t\t\t_touched={this.state._touched}\n\t\t\t\t\tonClick={() => this.ref?.focus()}\n\t\t\t\t>\n\t\t\t\t\t<span slot=\"label\">{showExpertSlot ? <slot name=\"expert\"></slot> : showDefaultSlot ? <slot></slot> : this.state._label}</span>\n\t\t\t\t\t<div slot=\"input\">\n\t\t\t\t\t\t<kol-icon\n\t\t\t\t\t\t\tonClick={this.onChange}\n\t\t\t\t\t\t\t_ariaLabel=\"\"\n\t\t\t\t\t\t\t_icon={this.state._indeterminate ? this.state._icon.indeterminate : this.state._checked ? this.state._icon.checked : this.state._icon.unchecked}\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<input\n\t\t\t\t\t\t\tref={this.catchRef}\n\t\t\t\t\t\t\taccessKey={this.state._accessKey} // by checkbox?!\n\t\t\t\t\t\t\taria-describedby={ariaDescribedBy.length > 0 ? ariaDescribedBy.join(' ') : undefined}\n\t\t\t\t\t\t\taria-labelledby={`${this.state._id}-label`}\n\t\t\t\t\t\t\tchecked={this.state._checked}\n\t\t\t\t\t\t\tdisabled={this.state._disabled === true}\n\t\t\t\t\t\t\tid={this.state._id}\n\t\t\t\t\t\t\tindeterminate={this.state._indeterminate}\n\t\t\t\t\t\t\tname={this.state._name}\n\t\t\t\t\t\t\trequired={this.state._required === true}\n\t\t\t\t\t\t\ttabIndex={this.state._tabIndex}\n\t\t\t\t\t\t\ttitle=\"\"\n\t\t\t\t\t\t\ttype=\"checkbox\"\n\t\t\t\t\t\t\tvalue={typeof this.state._value === 'string' ? this.state._value : ''}\n\t\t\t\t\t\t\t{...this.controller.onFacade}\n\t\t\t\t\t\t\tonChange={this.onChange}\n\t\t\t\t\t\t></input>\n\t\t\t\t\t</div>\n\t\t\t\t</kol-input>\n\t\t\t</Host>\n\t\t);\n\t}\n\n\tprivate readonly controller: InputCheckboxController;\n\n\t/**\n\t * Gibt an, mit welcher Tastenkombination man das interaktive Element der Komponente auslösen oder fokussieren kann.\n\t */\n\t@Prop() public _accessKey?: string;\n\n\t/**\n\t * Gibt an, ob der Screenreader die Meldung aktiv vorlesen soll.\n\t */\n\t@Prop({ mutable: true, reflect: true }) public _alert?: boolean = true;\n\n\t/**\n\t * Gibt an, ob die Checkbox ausgewählt ist oder nicht. (kann gelesen und gesetzt werden)\n\t */\n\t@Prop({ mutable: true, reflect: true }) public _checked?: boolean = false;\n\n\t/**\n\t * Deaktiviert das interaktive Element in der Komponente und erlaubt keine Interaktion mehr damit.\n\t */\n\t@Prop({ reflect: true }) public _disabled?: boolean;\n\n\t/**\n\t * Gibt den Text für eine Fehlermeldung an.\n\t */\n\t@Prop() public _error?: string;\n\n\t/**\n\t * Blendet die Beschriftung (Label) aus und zeigt sie stattdessen mittels eines Tooltips an.\n\t */\n\t@Prop({ reflect: true }) public _hideLabel?: boolean;\n\n\t/**\n\t * Gibt den Hinweistext an.\n\t */\n\t@Prop() public _hint?: string = '';\n\n\t/**\n\t * Setzt die Iconklasse (z.B.: `_icon=\"codicon codicon-home`).\n\t */\n\t@Prop() public _icon?: Stringified<InputCheckboxIcon>;\n\n\t/**\n\t * Gibt die interne ID des primären Elements in der Komponente an.\n\t */\n\t@Prop() public _id?: string;\n\n\t/**\n\t * Gibt an, ob die Checkbox weder ausgewählt noch nicht ausgewählt ist.\n\t */\n\t@Prop({ mutable: true, reflect: true }) public _indeterminate?: boolean;\n\n\t/**\n\t * Setzt die sichtbare oder semantische Beschriftung der Komponente (z.B. Aria-Label, Label, Headline, Caption, Summary usw.).\n\t */\n\t@Prop() public _label!: string;\n\n\t/**\n\t * Gibt den technischen Namen des Eingabefeldes an.\n\t */\n\t@Prop() public _name?: string;\n\n\t/**\n\t * Gibt die EventCallback-Funktionen für das Input-Event an.\n\t */\n\t@Prop() public _on?: InputTypeOnDefault;\n\n\t/**\n\t * Macht das Eingabeelement zu einem Pflichtfeld.\n\t */\n\t@Prop({ reflect: true }) public _required?: boolean;\n\n\t/**\n\t * Selector for synchronizing the value with another input element.\n\t * @internal\n\t */\n\t@Prop() public _syncValueBySelector?: string;\n\n\t/**\n\t * Gibt an, welchen Tab-Index das primäre Element in der Komponente hat. (https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/tabindex)\n\t */\n\t@Prop() public _tabIndex?: number;\n\n\t/**\n\t * Gibt an, ob dieses Eingabefeld von Nutzer:innen einmal besucht/berührt wurde.\n\t */\n\t@Prop({ mutable: true, reflect: true }) public _touched?: boolean = false;\n\n\t/**\n\t * Gibt an, welche Variante der Darstellung genutzt werden soll.\n\t *\n\t * @deprecated Verwende stattdessen das Attribute _variant.\n\t */\n\t@Prop() public _type?: InputCheckboxVariant;\n\n\t/**\n\t * Gibt den Schlüssel/Namen der Checkbox an. ({ [value]: [checked] })\n\t */\n\t@Prop() public _value?: string;\n\n\t/**\n\t * Gibt an, welche Variante der Darstellung genutzt werden soll.\n\t */\n\t@Prop() public _variant?: InputCheckboxVariant; // TODO: = 'default'; in v2 setzen\n\n\t@State() public state: States = {\n\t\t_checked: false,\n\t\t_icon: {\n\t\t\tchecked: 'codicon codicon-check',\n\t\t\tindeterminate: 'codicon codicon-remove',\n\t\t\tunchecked: 'codicon codicon-add',\n\t\t},\n\t\t_id: nonce(), // ⚠ required\n\t\t_indeterminate: false,\n\t\t_label: '…', // ⚠ required\n\t\t_variant: 'default',\n\t};\n\n\tpublic constructor() {\n\t\tthis.controller = new InputCheckboxController(this, 'checkbox', this.host);\n\t}\n\n\t@Watch('_accessKey')\n\tpublic validateAccessKey(value?: string): void {\n\t\tthis.controller.validateAccessKey(value);\n\t}\n\n\t@Watch('_alert')\n\tpublic validateAlert(value?: boolean): void {\n\t\tthis.controller.validateAlert(value);\n\t}\n\n\t@Watch('_checked')\n\tpublic validateChecked(value?: boolean): void {\n\t\tvalidateChecked(this, value);\n\t}\n\n\t@Watch('_disabled')\n\tpublic validateDisabled(value?: boolean): void {\n\t\tthis.controller.validateDisabled(value);\n\t}\n\n\t@Watch('_error')\n\tpublic validateError(value?: string): void {\n\t\tthis.controller.validateError(value);\n\t}\n\n\t@Watch('_hideLabel')\n\tpublic validateHideLabel(value?: boolean): void {\n\t\tthis.controller.validateHideLabel(value);\n\t}\n\n\t@Watch('_hint')\n\tpublic validateHint(value?: string): void {\n\t\tthis.controller.validateHint(value);\n\t}\n\n\t@Watch('_icon')\n\tpublic validateIcon(value?: Stringified<InputCheckboxIcon>): void {\n\t\tthis.controller.validateIcon(value);\n\t}\n\n\t@Watch('_id')\n\tpublic validateId(value?: string): void {\n\t\tthis.controller.validateId(value);\n\t}\n\n\t@Watch('_indeterminate')\n\tpublic validateIndeterminate(value?: boolean): void {\n\t\tvalidateIndeterminate(this, value);\n\t}\n\n\t@Watch('_label')\n\tpublic validateLabel(value?: string): void {\n\t\tthis.controller.validateLabel(value);\n\t}\n\n\t@Watch('_name')\n\tpublic validateName(value?: string): void {\n\t\tthis.controller.validateName(value);\n\t}\n\n\t@Watch('_on')\n\tpublic validateOn(value?: InputTypeOnDefault): void {\n\t\tthis.controller.validateOn(value);\n\t}\n\n\t@Watch('_required')\n\tpublic validateRequired(value?: boolean): void {\n\t\tthis.controller.validateRequired(value);\n\t}\n\n\t@Watch('_syncValueBySelector')\n\tpublic validateSyncValueBySelector(value?: string): void {\n\t\tthis.controller.validateSyncValueBySelector(value);\n\t}\n\n\t@Watch('_tabIndex')\n\tpublic validateTabIndex(value?: number): void {\n\t\tthis.controller.validateTabIndex(value);\n\t}\n\n\t@Watch('_touched')\n\tpublic validateTouched(value?: boolean): void {\n\t\tthis.controller.validateTouched(value);\n\t}\n\n\t@Watch('_type')\n\tpublic validateType(value?: InputCheckboxVariant): void {\n\t\tthis.controller.validateType(value);\n\t}\n\n\t@Watch('_value')\n\tpublic validateValue(value?: string): void {\n\t\tthis.controller.validateValue(value);\n\t}\n\n\t@Watch('_variant')\n\tpublic validateVariant(value?: InputCheckboxVariant): void {\n\t\tthis.controller.validateVariant(value);\n\t}\n\n\tpublic componentWillLoad(): void {\n\t\tthis._alert = this._alert === true;\n\t\tthis._touched = this._touched === true;\n\t\tthis.controller.componentWillLoad();\n\t}\n\n\tprivate onChange = (event: Event): void => {\n\t\tthis._checked = !this._checked;\n\t\tthis._indeterminate = false;\n\t\tthis.controller.setValue(event, this._checked);\n\t};\n}\n"],"mappings":"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"}
|