@public-ui/components 1.5.0-rc.8 → 1.5.0
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/assets/codicons/LICENSE +395 -0
- package/assets/codicons/LICENSE-CODE +21 -0
- package/assets/codicons/codicon.css +571 -0
- package/assets/codicons/codicon.csv +421 -0
- package/assets/codicons/codicon.html +3871 -0
- package/assets/codicons/codicon.svg +1 -0
- package/assets/codicons/codicon.ttf +0 -0
- package/assets/kolibri.ico +0 -0
- package/cheat-sheet.html +181 -173
- package/custom-elements.json +426 -271
- package/dist/cjs/{a11y.tipps-d37919af.js → a11y.tipps-6f0ad06e.js} +1 -1
- package/dist/cjs/{a11y.tipps-d37919af.js.map → a11y.tipps-6f0ad06e.js.map} +1 -1
- package/dist/cjs/{app-globals-6eda606a.js → app-globals-a5083cd8.js} +1 -1
- package/dist/cjs/{app-globals-6eda606a.js.map → app-globals-a5083cd8.js.map} +1 -1
- package/dist/cjs/aria-selected-3d69f172.js +4 -0
- package/dist/cjs/aria-selected-3d69f172.js.map +1 -0
- package/dist/cjs/button-link-78099d0b.js +4 -0
- package/dist/cjs/button-link-78099d0b.js.map +1 -0
- package/dist/cjs/color-dd2a83b7.js +4 -0
- package/dist/cjs/color-dd2a83b7.js.map +1 -0
- package/dist/cjs/controller-0dc3063e.js +4 -0
- package/dist/cjs/controller-0dc3063e.js.map +1 -0
- package/dist/cjs/{controller-5565d7af.js → controller-1a0e56e5.js} +1 -1
- package/dist/cjs/controller-1a0e56e5.js.map +1 -0
- package/dist/cjs/{controller-21a6eac9.js → controller-47ec1d99.js} +1 -1
- package/dist/cjs/{controller-21a6eac9.js.map → controller-47ec1d99.js.map} +1 -1
- package/dist/cjs/{controller-41024136.js → controller-4c51f1d0.js} +1 -1
- package/dist/cjs/controller-4c51f1d0.js.map +1 -0
- package/dist/cjs/controller-974e72cd.js +4 -0
- package/dist/cjs/{controller-830760de.js.map → controller-974e72cd.js.map} +1 -1
- package/dist/cjs/{controller-e17991a8.js → controller-f5d21db5.js} +1 -1
- package/dist/cjs/controller-f5d21db5.js.map +1 -0
- package/dist/cjs/{controller-icon-f69a8b14.js → controller-icon-8a67d498.js} +1 -1
- package/dist/cjs/controller-icon-8a67d498.js.map +1 -0
- package/dist/cjs/{dev.utils-4142fd37.js → dev.utils-d69c0a9f.js} +1 -1
- package/dist/cjs/{dev.utils-4142fd37.js.map → dev.utils-d69c0a9f.js.map} +1 -1
- package/dist/cjs/{devtools-78d46952.js → devtools-a1501143.js} +1 -1
- package/dist/cjs/{devtools-78d46952.js.map → devtools-a1501143.js.map} +1 -1
- package/dist/cjs/disabled-0893d275.js +4 -0
- package/dist/cjs/disabled-0893d275.js.map +1 -0
- package/dist/cjs/floating-ui.dom.esm-a89c1e0e.js +4 -0
- package/dist/cjs/floating-ui.dom.esm-a89c1e0e.js.map +1 -0
- package/dist/cjs/hide-label-142676e3.js +4 -0
- package/dist/cjs/hide-label-142676e3.js.map +1 -0
- package/dist/cjs/{i18n-f4e2ff1a.js → i18n-c5c6847b.js} +1 -1
- package/dist/cjs/{i18n-f4e2ff1a.js.map → i18n-c5c6847b.js.map} +1 -1
- package/dist/cjs/{icon-e4f3e165.js → icon-d0c5f305.js} +1 -1
- package/dist/cjs/icon-d0c5f305.js.map +1 -0
- package/dist/cjs/index-2f320bab.js +5 -0
- package/dist/cjs/index-2f320bab.js.map +1 -0
- package/dist/cjs/{index-eb52922f.js → index-7159f3d9.js} +1 -1
- package/dist/cjs/index-7159f3d9.js.map +1 -0
- package/dist/cjs/index-9c91e91b.js +4 -0
- package/dist/cjs/index-9c91e91b.js.map +1 -0
- package/dist/cjs/index.cjs.js +1 -1
- package/dist/cjs/index.cjs.js.map +1 -1
- package/dist/cjs/kol-abbr.cjs.entry.js +1 -1
- package/dist/cjs/kol-abbr.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-accordion.cjs.entry.js +1 -1
- package/dist/cjs/kol-accordion.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-alert-wc_2.cjs.entry.js +4 -0
- package/dist/cjs/kol-alert-wc_2.cjs.entry.js.map +1 -0
- package/dist/cjs/kol-alert.cjs.entry.js +1 -1
- package/dist/cjs/kol-alert.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-badge.cjs.entry.js +1 -1
- package/dist/cjs/kol-badge.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-breadcrumb.cjs.entry.js +1 -1
- package/dist/cjs/kol-breadcrumb.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-button-group-wc.cjs.entry.js +1 -1
- package/dist/cjs/kol-button-group-wc.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-button-group.cjs.entry.js +1 -1
- package/dist/cjs/kol-button-group.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-button-link.cjs.entry.js +1 -1
- package/dist/cjs/kol-button-link.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-button-wc_3.cjs.entry.js +4 -0
- package/dist/cjs/kol-button-wc_3.cjs.entry.js.map +1 -0
- package/dist/cjs/kol-button.cjs.entry.js +1 -1
- package/dist/cjs/kol-button.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-card.cjs.entry.js +1 -1
- package/dist/cjs/kol-card.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-details.cjs.entry.js +1 -1
- package/dist/cjs/kol-details.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-form.cjs.entry.js +1 -1
- package/dist/cjs/kol-form.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-heading.cjs.entry.js +1 -1
- package/dist/cjs/kol-heading.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-icon-font-awesome.cjs.entry.js +1 -1
- package/dist/cjs/kol-icon-font-awesome.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-icon-icofont.cjs.entry.js +1 -1
- package/dist/cjs/kol-icon-icofont.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-icon.cjs.entry.js +1 -1
- package/dist/cjs/kol-icon.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-image.cjs.entry.js +1 -1
- package/dist/cjs/kol-image.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-indented-text.cjs.entry.js +1 -1
- package/dist/cjs/kol-indented-text.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-input-adapter-leanup.cjs.entry.js +1 -1
- package/dist/cjs/kol-input-checkbox.cjs.entry.js +1 -1
- package/dist/cjs/kol-input-checkbox.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-input-color.cjs.entry.js +1 -1
- package/dist/cjs/kol-input-color.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-input-date.cjs.entry.js +1 -1
- package/dist/cjs/kol-input-date.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-input-email.cjs.entry.js +1 -1
- package/dist/cjs/kol-input-email.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-input-file.cjs.entry.js +1 -1
- package/dist/cjs/kol-input-file.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-input-number.cjs.entry.js +1 -1
- package/dist/cjs/kol-input-number.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-input-password.cjs.entry.js +1 -1
- package/dist/cjs/kol-input-password.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-input-radio-group.cjs.entry.js +1 -1
- package/dist/cjs/kol-input-radio-group.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-input-radio.cjs.entry.js +1 -1
- package/dist/cjs/kol-input-radio.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-input-range.cjs.entry.js +1 -1
- package/dist/cjs/kol-input-range.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-input-text.cjs.entry.js +1 -1
- package/dist/cjs/kol-input-text.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-kolibri.cjs.entry.js +1 -1
- package/dist/cjs/kol-kolibri.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-link-button.cjs.entry.js +1 -1
- package/dist/cjs/kol-link-button.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-link-group.cjs.entry.js +1 -1
- package/dist/cjs/kol-link-group.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-link-wc.cjs.entry.js +1 -1
- package/dist/cjs/kol-link-wc.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-link.cjs.entry.js +1 -1
- package/dist/cjs/kol-link.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-logo.cjs.entry.js +1 -1
- package/dist/cjs/kol-logo.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-modal.cjs.entry.js +1 -1
- package/dist/cjs/kol-modal.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-nav.cjs.entry.js +1 -1
- package/dist/cjs/kol-nav.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-pagination.cjs.entry.js +1 -1
- package/dist/cjs/kol-pagination.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-popover.cjs.entry.js +4 -0
- package/dist/cjs/kol-popover.cjs.entry.js.map +1 -0
- package/dist/cjs/kol-progress.cjs.entry.js +1 -1
- package/dist/cjs/kol-progress.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-quote.cjs.entry.js +1 -1
- package/dist/cjs/kol-quote.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-select.cjs.entry.js +1 -1
- package/dist/cjs/kol-select.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-skip-nav.cjs.entry.js +1 -1
- package/dist/cjs/kol-skip-nav.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-span.cjs.entry.js +1 -1
- package/dist/cjs/kol-span.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-spin.cjs.entry.js +1 -1
- package/dist/cjs/kol-spin.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-split-button.cjs.entry.js +4 -0
- package/dist/cjs/kol-split-button.cjs.entry.js.map +1 -0
- package/dist/cjs/kol-symbol.cjs.entry.js +1 -1
- package/dist/cjs/kol-symbol.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-table.cjs.entry.js +1 -1
- package/dist/cjs/kol-table.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-tabs.cjs.entry.js +1 -1
- package/dist/cjs/kol-tabs.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-textarea.cjs.entry.js +1 -1
- package/dist/cjs/kol-textarea.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-toast.cjs.entry.js +1 -1
- package/dist/cjs/kol-toast.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-tooltip.cjs.entry.js +1 -1
- package/dist/cjs/kol-tooltip.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-version.cjs.entry.js +1 -1
- package/dist/cjs/kol-version.cjs.entry.js.map +1 -1
- package/dist/cjs/kolibri.cjs.js +1 -1
- package/dist/cjs/kolibri.cjs.js.map +1 -1
- package/dist/cjs/label-77683d7b.js +4 -0
- package/dist/cjs/label-77683d7b.js.map +1 -0
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/cjs/loader.cjs.js.map +1 -1
- package/dist/cjs/{prop.validators-6a254bcc.js → prop.validators-d6eed32b.js} +1 -1
- package/dist/cjs/{prop.validators-6a254bcc.js.map → prop.validators-d6eed32b.js.map} +1 -1
- package/dist/cjs/reuse-0fe7470f.js +4 -0
- package/dist/cjs/{reuse-bbd0b4e7.js.map → reuse-0fe7470f.js.map} +1 -1
- package/dist/cjs/show-6e36cda5.js +4 -0
- package/dist/cjs/show-6e36cda5.js.map +1 -0
- package/dist/cjs/{tab-index-f37e79c5.js → tab-index-9fcb9e3f.js} +1 -1
- package/dist/cjs/{tab-index-f37e79c5.js.map → tab-index-9fcb9e3f.js.map} +1 -1
- package/dist/cjs/validation-423d5cd3.js +4 -0
- package/dist/cjs/{validation-ce77567d.js.map → validation-423d5cd3.js.map} +1 -1
- package/dist/cjs/{validation-fa80f868.js → validation-5c91bbc8.js} +1 -1
- package/dist/cjs/{validation-fa80f868.js.map → validation-5c91bbc8.js.map} +1 -1
- package/dist/components/aria-selected.js +4 -0
- package/dist/components/aria-selected.js.map +1 -0
- package/dist/components/color.js +4 -0
- package/dist/components/color.js.map +1 -0
- package/dist/components/component.js +1 -1
- package/dist/components/component.js.map +1 -1
- package/dist/components/component10.js +1 -1
- package/dist/components/component10.js.map +1 -1
- package/dist/components/component11.js +1 -1
- package/dist/components/component11.js.map +1 -1
- package/dist/components/component12.js +1 -1
- package/dist/components/component12.js.map +1 -1
- package/dist/components/component13.js +1 -1
- package/dist/components/component13.js.map +1 -1
- package/dist/components/component14.js +4 -0
- package/dist/components/component14.js.map +1 -0
- package/dist/components/component15.js +4 -0
- package/dist/components/component15.js.map +1 -0
- package/dist/components/component2.js +1 -1
- package/dist/components/component2.js.map +1 -1
- package/dist/components/component3.js +1 -1
- package/dist/components/component3.js.map +1 -1
- package/dist/components/component4.js +1 -1
- package/dist/components/component4.js.map +1 -1
- package/dist/components/component5.js +1 -1
- package/dist/components/component5.js.map +1 -1
- package/dist/components/component6.js +1 -1
- package/dist/components/component6.js.map +1 -1
- package/dist/components/component7.js +1 -1
- package/dist/components/component7.js.map +1 -1
- package/dist/components/component8.js +1 -1
- package/dist/components/component8.js.map +1 -1
- package/dist/components/component9.js +1 -1
- package/dist/components/component9.js.map +1 -1
- package/dist/components/controller-icon.js +1 -1
- package/dist/components/controller-icon.js.map +1 -1
- package/dist/components/controller.js +1 -1
- package/dist/components/controller.js.map +1 -1
- package/dist/components/controller2.js +1 -1
- package/dist/components/controller2.js.map +1 -1
- package/dist/components/controller3.js +1 -1
- package/dist/components/controller3.js.map +1 -1
- package/dist/components/controller4.js +1 -1
- package/dist/components/controller4.js.map +1 -1
- package/dist/components/devtools.js +1 -1
- package/dist/components/floating-ui.dom.esm.js +4 -0
- package/dist/components/floating-ui.dom.esm.js.map +1 -0
- package/dist/components/hide-label.js +4 -0
- package/dist/components/hide-label.js.map +1 -0
- package/dist/components/i18n.js +1 -1
- package/dist/components/i18n.js.map +1 -1
- package/dist/components/index.js +1 -1
- package/dist/components/index.js.map +1 -1
- package/dist/components/kol-abbr.js +1 -1
- package/dist/components/kol-abbr.js.map +1 -1
- package/dist/components/kol-accordion.js +1 -1
- package/dist/components/kol-accordion.js.map +1 -1
- package/dist/components/kol-alert-wc.d.ts +11 -0
- package/dist/components/kol-alert-wc.js +4 -0
- package/dist/components/kol-alert-wc.js.map +1 -0
- package/dist/components/kol-alert.js +1 -1
- package/dist/components/kol-badge.js +1 -1
- package/dist/components/kol-breadcrumb.js +1 -1
- package/dist/components/kol-breadcrumb.js.map +1 -1
- package/dist/components/kol-button-group-wc.js +1 -1
- package/dist/components/kol-button-group.js +1 -1
- package/dist/components/kol-button-group.js.map +1 -1
- package/dist/components/kol-button-link.js +1 -1
- package/dist/components/kol-button-link.js.map +1 -1
- package/dist/components/kol-button-wc.js +1 -1
- package/dist/components/kol-button.js +1 -1
- package/dist/components/kol-card.js +1 -1
- package/dist/components/kol-card.js.map +1 -1
- package/dist/components/kol-details.js +1 -1
- package/dist/components/kol-details.js.map +1 -1
- package/dist/components/kol-form.js +1 -1
- package/dist/components/kol-form.js.map +1 -1
- package/dist/components/kol-heading.js +1 -1
- package/dist/components/kol-heading.js.map +1 -1
- package/dist/components/kol-icon-font-awesome.js.map +1 -1
- package/dist/components/kol-icon-icofont.js.map +1 -1
- package/dist/components/kol-image.js +1 -1
- package/dist/components/kol-image.js.map +1 -1
- package/dist/components/kol-indented-text.js +1 -1
- package/dist/components/kol-input-adapter-leanup.js +1 -1
- package/dist/components/kol-input-adapter-leanup.js.map +1 -1
- package/dist/components/kol-input-checkbox.js +1 -1
- package/dist/components/kol-input-checkbox.js.map +1 -1
- package/dist/components/kol-input-color.js +1 -1
- package/dist/components/kol-input-color.js.map +1 -1
- package/dist/components/kol-input-date.js +1 -1
- package/dist/components/kol-input-date.js.map +1 -1
- package/dist/components/kol-input-email.js +1 -1
- package/dist/components/kol-input-email.js.map +1 -1
- package/dist/components/kol-input-file.js +1 -1
- package/dist/components/kol-input-file.js.map +1 -1
- package/dist/components/kol-input-number.js +1 -1
- package/dist/components/kol-input-password.js +1 -1
- package/dist/components/kol-input-password.js.map +1 -1
- package/dist/components/kol-input-radio-group.js +1 -1
- package/dist/components/kol-input-radio-group.js.map +1 -1
- package/dist/components/kol-input-radio.js +1 -1
- package/dist/components/kol-input-range.js +1 -1
- package/dist/components/kol-input-range.js.map +1 -1
- package/dist/components/kol-input-text.js +1 -1
- package/dist/components/kol-input-text.js.map +1 -1
- package/dist/components/kol-input.js +1 -1
- package/dist/components/kol-kolibri.js +1 -1
- package/dist/components/kol-kolibri.js.map +1 -1
- package/dist/components/kol-link-button.js +1 -1
- package/dist/components/kol-link-button.js.map +1 -1
- package/dist/components/kol-link-group.js +1 -1
- package/dist/components/kol-link-group.js.map +1 -1
- package/dist/components/kol-link-wc.js +1 -1
- package/dist/components/kol-link.js +1 -1
- package/dist/components/kol-logo.js +1 -1
- package/dist/components/kol-logo.js.map +1 -1
- package/dist/components/kol-modal.js +1 -1
- package/dist/components/kol-modal.js.map +1 -1
- package/dist/components/kol-nav.js +1 -1
- package/dist/components/kol-nav.js.map +1 -1
- package/dist/components/kol-pagination.js +1 -1
- package/dist/components/kol-popover.d.ts +11 -0
- package/dist/components/kol-popover.js +4 -0
- package/dist/components/kol-popover.js.map +1 -0
- package/dist/components/kol-progress.js +1 -1
- package/dist/components/kol-progress.js.map +1 -1
- package/dist/components/kol-quote.js +1 -1
- package/dist/components/kol-quote.js.map +1 -1
- package/dist/components/kol-select.js +1 -1
- package/dist/components/kol-skip-nav.js +1 -1
- package/dist/components/kol-skip-nav.js.map +1 -1
- package/dist/components/kol-span.js +1 -1
- package/dist/components/kol-span.js.map +1 -1
- package/dist/components/kol-spin.js +1 -1
- package/dist/components/kol-spin.js.map +1 -1
- package/dist/components/kol-split-button.d.ts +11 -0
- package/dist/components/kol-split-button.js +4 -0
- package/dist/components/kol-split-button.js.map +1 -0
- package/dist/components/kol-symbol.js.map +1 -1
- package/dist/components/kol-table.js +1 -1
- package/dist/components/kol-table.js.map +1 -1
- package/dist/components/kol-tabs.js +1 -1
- package/dist/components/kol-tabs.js.map +1 -1
- package/dist/components/kol-textarea.js +1 -1
- package/dist/components/kol-textarea.js.map +1 -1
- package/dist/components/kol-toast.js +1 -1
- package/dist/components/kol-toast.js.map +1 -1
- package/dist/components/kol-tooltip.js +1 -1
- package/dist/components/kol-version.js +1 -1
- package/dist/components/kol-version.js.map +1 -1
- package/dist/components/prop.validators.js +1 -1
- package/dist/components/prop.validators.js.map +1 -1
- package/dist/components/shadow.js +1 -1
- package/dist/components/shadow.js.map +1 -1
- package/dist/components/shadow2.js +1 -1
- package/dist/components/shadow2.js.map +1 -1
- package/dist/components/shadow3.js +4 -0
- package/dist/components/shadow3.js.map +1 -0
- package/dist/components/show.js +4 -0
- package/dist/components/show.js.map +1 -0
- package/dist/components/tab-index.js +4 -0
- package/dist/components/tab-index.js.map +1 -0
- package/dist/components/validation.js +1 -1
- package/dist/esm/{a11y.tipps-5ca36877.js → a11y.tipps-1cea9822.js} +1 -1
- package/dist/esm/{a11y.tipps-5ca36877.js.map → a11y.tipps-1cea9822.js.map} +1 -1
- package/dist/esm/app-globals-6ba5ef2f.js +4 -0
- package/dist/esm/{app-globals-08fd5e4e.js.map → app-globals-6ba5ef2f.js.map} +1 -1
- package/dist/esm/aria-selected-aaf31182.js +4 -0
- package/dist/esm/aria-selected-aaf31182.js.map +1 -0
- package/dist/esm/{button-link-249585bf.js → button-link-4a7e6a2e.js} +1 -1
- package/dist/esm/button-link-4a7e6a2e.js.map +1 -0
- package/dist/esm/color-0e8ca0ca.js +4 -0
- package/dist/esm/color-0e8ca0ca.js.map +1 -0
- package/dist/esm/controller-0cf6cd75.js +4 -0
- package/dist/esm/{controller-bf4a0bc1.js.map → controller-0cf6cd75.js.map} +1 -1
- package/dist/esm/{controller-ca954299.js → controller-1ec68c46.js} +1 -1
- package/dist/esm/controller-1ec68c46.js.map +1 -0
- package/dist/esm/{controller-08af836c.js → controller-3e94c3f2.js} +1 -1
- package/dist/esm/controller-3e94c3f2.js.map +1 -0
- package/dist/esm/controller-53ddde7c.js +4 -0
- package/dist/esm/controller-53ddde7c.js.map +1 -0
- package/dist/esm/{controller-03e00b6c.js → controller-830cac3b.js} +1 -1
- package/dist/esm/controller-830cac3b.js.map +1 -0
- package/dist/esm/{controller-ac44fc5f.js → controller-985aff52.js} +1 -1
- package/dist/esm/{controller-ac44fc5f.js.map → controller-985aff52.js.map} +1 -1
- package/dist/esm/{controller-icon-fb82236a.js → controller-icon-26c0e34a.js} +1 -1
- package/dist/esm/controller-icon-26c0e34a.js.map +1 -0
- package/dist/esm/{dev.utils-bedce29d.js → dev.utils-157f0499.js} +1 -1
- package/dist/esm/{dev.utils-bedce29d.js.map → dev.utils-157f0499.js.map} +1 -1
- package/dist/esm/{devtools-525ee939.js → devtools-33f1b614.js} +1 -1
- package/dist/esm/{devtools-525ee939.js.map → devtools-33f1b614.js.map} +1 -1
- package/dist/esm/disabled-9bd11a04.js +4 -0
- package/dist/esm/disabled-9bd11a04.js.map +1 -0
- package/dist/esm/floating-ui.dom.esm-735f9fad.js +4 -0
- package/dist/esm/floating-ui.dom.esm-735f9fad.js.map +1 -0
- package/dist/esm/hide-label-5d7003be.js +4 -0
- package/dist/esm/hide-label-5d7003be.js.map +1 -0
- package/dist/esm/{i18n-97355570.js → i18n-81ce19c0.js} +1 -1
- package/dist/esm/{i18n-97355570.js.map → i18n-81ce19c0.js.map} +1 -1
- package/dist/esm/{icon-970694a7.js → icon-dfcf642a.js} +1 -1
- package/dist/esm/icon-dfcf642a.js.map +1 -0
- package/dist/esm/index-0e29e47a.js +5 -0
- package/dist/esm/index-0e29e47a.js.map +1 -0
- package/dist/esm/index-133da8ac.js +4 -0
- package/dist/esm/index-133da8ac.js.map +1 -0
- package/dist/esm/{index-81bd9b41.js → index-f4596895.js} +1 -1
- package/dist/esm/index-f4596895.js.map +1 -0
- package/dist/esm/index.js +1 -1
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/kol-abbr.entry.js +1 -1
- package/dist/esm/kol-abbr.entry.js.map +1 -1
- package/dist/esm/kol-accordion.entry.js +1 -1
- package/dist/esm/kol-accordion.entry.js.map +1 -1
- package/dist/esm/kol-alert-wc_2.entry.js +4 -0
- package/dist/esm/kol-alert-wc_2.entry.js.map +1 -0
- package/dist/esm/kol-alert.entry.js +1 -1
- package/dist/esm/kol-alert.entry.js.map +1 -1
- package/dist/esm/kol-badge.entry.js +1 -1
- package/dist/esm/kol-badge.entry.js.map +1 -1
- package/dist/esm/kol-breadcrumb.entry.js +1 -1
- package/dist/esm/kol-breadcrumb.entry.js.map +1 -1
- package/dist/esm/kol-button-group-wc.entry.js +1 -1
- package/dist/esm/kol-button-group-wc.entry.js.map +1 -1
- package/dist/esm/kol-button-group.entry.js +1 -1
- package/dist/esm/kol-button-group.entry.js.map +1 -1
- package/dist/esm/kol-button-link.entry.js +1 -1
- package/dist/esm/kol-button-link.entry.js.map +1 -1
- package/dist/esm/kol-button-wc_3.entry.js +4 -0
- package/dist/esm/kol-button-wc_3.entry.js.map +1 -0
- package/dist/esm/kol-button.entry.js +1 -1
- package/dist/esm/kol-button.entry.js.map +1 -1
- package/dist/esm/kol-card.entry.js +1 -1
- package/dist/esm/kol-card.entry.js.map +1 -1
- package/dist/esm/kol-details.entry.js +1 -1
- package/dist/esm/kol-details.entry.js.map +1 -1
- package/dist/esm/kol-form.entry.js +1 -1
- package/dist/esm/kol-form.entry.js.map +1 -1
- package/dist/esm/kol-heading.entry.js +1 -1
- package/dist/esm/kol-heading.entry.js.map +1 -1
- package/dist/esm/kol-icon-font-awesome.entry.js +1 -1
- package/dist/esm/kol-icon-font-awesome.entry.js.map +1 -1
- package/dist/esm/kol-icon-icofont.entry.js +1 -1
- package/dist/esm/kol-icon-icofont.entry.js.map +1 -1
- package/dist/esm/kol-icon.entry.js +1 -1
- package/dist/esm/kol-icon.entry.js.map +1 -1
- package/dist/esm/kol-image.entry.js +1 -1
- package/dist/esm/kol-image.entry.js.map +1 -1
- package/dist/esm/kol-indented-text.entry.js +1 -1
- package/dist/esm/kol-indented-text.entry.js.map +1 -1
- package/dist/esm/kol-input-adapter-leanup.entry.js +1 -1
- package/dist/esm/kol-input-checkbox.entry.js +1 -1
- package/dist/esm/kol-input-checkbox.entry.js.map +1 -1
- package/dist/esm/kol-input-color.entry.js +1 -1
- package/dist/esm/kol-input-color.entry.js.map +1 -1
- package/dist/esm/kol-input-date.entry.js +1 -1
- package/dist/esm/kol-input-date.entry.js.map +1 -1
- package/dist/esm/kol-input-email.entry.js +1 -1
- package/dist/esm/kol-input-email.entry.js.map +1 -1
- package/dist/esm/kol-input-file.entry.js +1 -1
- package/dist/esm/kol-input-file.entry.js.map +1 -1
- package/dist/esm/kol-input-number.entry.js +1 -1
- package/dist/esm/kol-input-number.entry.js.map +1 -1
- package/dist/esm/kol-input-password.entry.js +1 -1
- package/dist/esm/kol-input-password.entry.js.map +1 -1
- package/dist/esm/kol-input-radio-group.entry.js +1 -1
- package/dist/esm/kol-input-radio-group.entry.js.map +1 -1
- package/dist/esm/kol-input-radio.entry.js +1 -1
- package/dist/esm/kol-input-radio.entry.js.map +1 -1
- package/dist/esm/kol-input-range.entry.js +1 -1
- package/dist/esm/kol-input-range.entry.js.map +1 -1
- package/dist/esm/kol-input-text.entry.js +1 -1
- package/dist/esm/kol-input-text.entry.js.map +1 -1
- package/dist/esm/kol-kolibri.entry.js +1 -1
- package/dist/esm/kol-kolibri.entry.js.map +1 -1
- package/dist/esm/kol-link-button.entry.js +1 -1
- package/dist/esm/kol-link-button.entry.js.map +1 -1
- package/dist/esm/kol-link-group.entry.js +1 -1
- package/dist/esm/kol-link-group.entry.js.map +1 -1
- package/dist/esm/kol-link-wc.entry.js +1 -1
- package/dist/esm/kol-link-wc.entry.js.map +1 -1
- package/dist/esm/kol-link.entry.js +1 -1
- package/dist/esm/kol-link.entry.js.map +1 -1
- package/dist/esm/kol-logo.entry.js +1 -1
- package/dist/esm/kol-logo.entry.js.map +1 -1
- package/dist/esm/kol-modal.entry.js +1 -1
- package/dist/esm/kol-modal.entry.js.map +1 -1
- package/dist/esm/kol-nav.entry.js +1 -1
- package/dist/esm/kol-nav.entry.js.map +1 -1
- package/dist/esm/kol-pagination.entry.js +1 -1
- package/dist/esm/kol-pagination.entry.js.map +1 -1
- package/dist/esm/kol-popover.entry.js +4 -0
- package/dist/esm/kol-popover.entry.js.map +1 -0
- package/dist/esm/kol-progress.entry.js +1 -1
- package/dist/esm/kol-progress.entry.js.map +1 -1
- package/dist/esm/kol-quote.entry.js +1 -1
- package/dist/esm/kol-quote.entry.js.map +1 -1
- package/dist/esm/kol-select.entry.js +1 -1
- package/dist/esm/kol-select.entry.js.map +1 -1
- package/dist/esm/kol-skip-nav.entry.js +1 -1
- package/dist/esm/kol-skip-nav.entry.js.map +1 -1
- package/dist/esm/kol-span.entry.js +1 -1
- package/dist/esm/kol-span.entry.js.map +1 -1
- package/dist/esm/kol-spin.entry.js +1 -1
- package/dist/esm/kol-spin.entry.js.map +1 -1
- package/dist/esm/kol-split-button.entry.js +4 -0
- package/dist/esm/kol-split-button.entry.js.map +1 -0
- package/dist/esm/kol-symbol.entry.js +1 -1
- package/dist/esm/kol-symbol.entry.js.map +1 -1
- package/dist/esm/kol-table.entry.js +1 -1
- package/dist/esm/kol-table.entry.js.map +1 -1
- package/dist/esm/kol-tabs.entry.js +1 -1
- package/dist/esm/kol-tabs.entry.js.map +1 -1
- package/dist/esm/kol-textarea.entry.js +1 -1
- package/dist/esm/kol-textarea.entry.js.map +1 -1
- package/dist/esm/kol-toast.entry.js +1 -1
- package/dist/esm/kol-toast.entry.js.map +1 -1
- package/dist/esm/kol-tooltip.entry.js +1 -1
- package/dist/esm/kol-tooltip.entry.js.map +1 -1
- package/dist/esm/kol-version.entry.js +1 -1
- package/dist/esm/kol-version.entry.js.map +1 -1
- package/dist/esm/kolibri.js +1 -1
- package/dist/esm/kolibri.js.map +1 -1
- package/dist/esm/label-4bfc9d30.js +4 -0
- package/dist/esm/label-4bfc9d30.js.map +1 -0
- package/dist/esm/loader.js +1 -1
- package/dist/esm/loader.js.map +1 -1
- package/dist/esm/{prop.validators-1f3db013.js → prop.validators-e15a584f.js} +1 -1
- package/dist/esm/{prop.validators-1f3db013.js.map → prop.validators-e15a584f.js.map} +1 -1
- package/dist/esm/{reuse-56bb5a4b.js → reuse-3a02afb9.js} +1 -1
- package/dist/esm/{reuse-56bb5a4b.js.map → reuse-3a02afb9.js.map} +1 -1
- package/dist/esm/show-f85eb6d8.js +4 -0
- package/dist/esm/show-f85eb6d8.js.map +1 -0
- package/dist/esm/{tab-index-97fed287.js → tab-index-eff012a1.js} +1 -1
- package/dist/esm/{tab-index-97fed287.js.map → tab-index-eff012a1.js.map} +1 -1
- package/dist/esm/validation-d4aeea71.js +4 -0
- package/dist/esm/{validation-b0614edd.js.map → validation-d4aeea71.js.map} +1 -1
- package/dist/esm/validation-ec53a8be.js +4 -0
- package/dist/esm/{validation-2bb481bd.js.map → validation-ec53a8be.js.map} +1 -1
- package/dist/kolibri/{a11y.tipps-5ca36877.js → a11y.tipps-1cea9822.js} +1 -1
- package/dist/kolibri/app-globals-6ba5ef2f.js +4 -0
- package/dist/kolibri/aria-selected-aaf31182.js +4 -0
- package/dist/kolibri/aria-selected-aaf31182.js.map +1 -0
- package/dist/kolibri/assets/codicons/LICENSE +394 -394
- package/dist/kolibri/assets/codicons/LICENSE-CODE +21 -21
- package/dist/kolibri/assets/popover-simulation.js +1 -0
- package/dist/kolibri/assets/progress-simulation.js +1 -1
- package/dist/kolibri/{button-link-249585bf.js → button-link-4a7e6a2e.js} +1 -1
- package/dist/kolibri/button-link-4a7e6a2e.js.map +1 -0
- package/dist/kolibri/color-0e8ca0ca.js +4 -0
- package/dist/kolibri/color-0e8ca0ca.js.map +1 -0
- package/dist/kolibri/{controller-bf4a0bc1.js → controller-0cf6cd75.js} +1 -1
- package/dist/kolibri/controller-0cf6cd75.js.map +1 -0
- package/dist/kolibri/{controller-ca954299.js → controller-1ec68c46.js} +1 -1
- package/dist/kolibri/controller-1ec68c46.js.map +1 -0
- package/dist/kolibri/{controller-08af836c.js → controller-3e94c3f2.js} +1 -1
- package/dist/kolibri/controller-3e94c3f2.js.map +1 -0
- package/dist/kolibri/controller-53ddde7c.js +4 -0
- package/dist/kolibri/controller-53ddde7c.js.map +1 -0
- package/dist/kolibri/controller-830cac3b.js +4 -0
- package/dist/kolibri/controller-830cac3b.js.map +1 -0
- package/dist/kolibri/controller-985aff52.js +4 -0
- package/dist/kolibri/{controller-icon-fb82236a.js → controller-icon-26c0e34a.js} +1 -1
- package/dist/kolibri/controller-icon-26c0e34a.js.map +1 -0
- package/dist/kolibri/{dev.utils-bedce29d.js → dev.utils-157f0499.js} +1 -1
- package/dist/kolibri/dev.utils-157f0499.js.map +1 -0
- package/dist/kolibri/{devtools-525ee939.js → devtools-33f1b614.js} +1 -1
- package/dist/kolibri/disabled-9bd11a04.js +4 -0
- package/dist/kolibri/disabled-9bd11a04.js.map +1 -0
- package/dist/kolibri/floating-ui.dom.esm-735f9fad.js +4 -0
- package/dist/kolibri/floating-ui.dom.esm-735f9fad.js.map +1 -0
- package/dist/kolibri/hide-label-5d7003be.js +4 -0
- package/dist/kolibri/hide-label-5d7003be.js.map +1 -0
- package/dist/kolibri/{i18n-97355570.js → i18n-81ce19c0.js} +1 -1
- package/dist/kolibri/{icon-970694a7.js → icon-dfcf642a.js} +1 -1
- package/dist/kolibri/icon-dfcf642a.js.map +1 -0
- package/dist/kolibri/index-0e29e47a.js +5 -0
- package/dist/kolibri/index-0e29e47a.js.map +1 -0
- package/dist/kolibri/index-133da8ac.js +4 -0
- package/dist/kolibri/index-133da8ac.js.map +1 -0
- package/dist/kolibri/index-f4596895.js +4 -0
- package/dist/kolibri/index-f4596895.js.map +1 -0
- package/dist/kolibri/index.esm.js +1 -1
- package/dist/kolibri/index.esm.js.map +1 -1
- package/dist/kolibri/kol-abbr.entry.js +1 -1
- package/dist/kolibri/kol-abbr.entry.js.map +1 -1
- package/dist/kolibri/kol-accordion.entry.js +1 -1
- package/dist/kolibri/kol-accordion.entry.js.map +1 -1
- package/dist/kolibri/kol-alert-wc_2.entry.js +4 -0
- package/dist/kolibri/kol-alert-wc_2.entry.js.map +1 -0
- package/dist/kolibri/kol-alert.entry.js +1 -1
- package/dist/kolibri/kol-alert.entry.js.map +1 -1
- package/dist/kolibri/kol-badge.entry.js +1 -1
- package/dist/kolibri/kol-badge.entry.js.map +1 -1
- package/dist/kolibri/kol-breadcrumb.entry.js +1 -1
- package/dist/kolibri/kol-breadcrumb.entry.js.map +1 -1
- package/dist/kolibri/kol-button-group-wc.entry.js +1 -1
- package/dist/kolibri/kol-button-group-wc.entry.js.map +1 -1
- package/dist/kolibri/kol-button-group.entry.js +1 -1
- package/dist/kolibri/kol-button-group.entry.js.map +1 -1
- package/dist/kolibri/kol-button-link.entry.js +1 -1
- package/dist/kolibri/kol-button-link.entry.js.map +1 -1
- package/dist/kolibri/kol-button-wc_3.entry.js +4 -0
- package/dist/kolibri/kol-button-wc_3.entry.js.map +1 -0
- package/dist/kolibri/kol-button.entry.js +1 -1
- package/dist/kolibri/kol-button.entry.js.map +1 -1
- package/dist/kolibri/kol-card.entry.js +1 -1
- package/dist/kolibri/kol-card.entry.js.map +1 -1
- package/dist/kolibri/kol-details.entry.js +1 -1
- package/dist/kolibri/kol-details.entry.js.map +1 -1
- package/dist/kolibri/kol-form.entry.js +1 -1
- package/dist/kolibri/kol-form.entry.js.map +1 -1
- package/dist/kolibri/kol-heading.entry.js +1 -1
- package/dist/kolibri/kol-heading.entry.js.map +1 -1
- package/dist/kolibri/kol-icon-font-awesome.entry.js +1 -1
- package/dist/kolibri/kol-icon-font-awesome.entry.js.map +1 -1
- package/dist/kolibri/kol-icon-icofont.entry.js +1 -1
- package/dist/kolibri/kol-icon-icofont.entry.js.map +1 -1
- package/dist/kolibri/kol-icon.entry.js +1 -1
- package/dist/kolibri/kol-icon.entry.js.map +1 -1
- package/dist/kolibri/kol-image.entry.js +1 -1
- package/dist/kolibri/kol-image.entry.js.map +1 -1
- package/dist/kolibri/kol-indented-text.entry.js +1 -1
- package/dist/kolibri/kol-indented-text.entry.js.map +1 -1
- package/dist/kolibri/kol-input-adapter-leanup.entry.js +1 -1
- package/dist/kolibri/kol-input-checkbox.entry.js +1 -1
- package/dist/kolibri/kol-input-checkbox.entry.js.map +1 -1
- package/dist/kolibri/kol-input-color.entry.js +1 -1
- package/dist/kolibri/kol-input-color.entry.js.map +1 -1
- package/dist/kolibri/kol-input-date.entry.js +1 -1
- package/dist/kolibri/kol-input-date.entry.js.map +1 -1
- package/dist/kolibri/kol-input-email.entry.js +1 -1
- package/dist/kolibri/kol-input-email.entry.js.map +1 -1
- package/dist/kolibri/kol-input-file.entry.js +1 -1
- package/dist/kolibri/kol-input-file.entry.js.map +1 -1
- package/dist/kolibri/kol-input-number.entry.js +1 -1
- package/dist/kolibri/kol-input-number.entry.js.map +1 -1
- package/dist/kolibri/kol-input-password.entry.js +1 -1
- package/dist/kolibri/kol-input-password.entry.js.map +1 -1
- package/dist/kolibri/kol-input-radio-group.entry.js +1 -1
- package/dist/kolibri/kol-input-radio-group.entry.js.map +1 -1
- package/dist/kolibri/kol-input-radio.entry.js +1 -1
- package/dist/kolibri/kol-input-radio.entry.js.map +1 -1
- package/dist/kolibri/kol-input-range.entry.js +1 -1
- package/dist/kolibri/kol-input-range.entry.js.map +1 -1
- package/dist/kolibri/kol-input-text.entry.js +1 -1
- package/dist/kolibri/kol-input-text.entry.js.map +1 -1
- package/dist/kolibri/kol-kolibri.entry.js +1 -1
- package/dist/kolibri/kol-kolibri.entry.js.map +1 -1
- package/dist/kolibri/kol-link-button.entry.js +1 -1
- package/dist/kolibri/kol-link-button.entry.js.map +1 -1
- package/dist/kolibri/kol-link-group.entry.js +1 -1
- package/dist/kolibri/kol-link-group.entry.js.map +1 -1
- package/dist/kolibri/kol-link-wc.entry.js +1 -1
- package/dist/kolibri/kol-link-wc.entry.js.map +1 -1
- package/dist/kolibri/kol-link.entry.js +1 -1
- package/dist/kolibri/kol-link.entry.js.map +1 -1
- package/dist/kolibri/kol-logo.entry.js +1 -1
- package/dist/kolibri/kol-logo.entry.js.map +1 -1
- package/dist/kolibri/kol-modal.entry.js +1 -1
- package/dist/kolibri/kol-modal.entry.js.map +1 -1
- package/dist/kolibri/kol-nav.entry.js +1 -1
- package/dist/kolibri/kol-nav.entry.js.map +1 -1
- package/dist/kolibri/kol-pagination.entry.js +1 -1
- package/dist/kolibri/kol-pagination.entry.js.map +1 -1
- package/dist/kolibri/kol-popover.entry.js +4 -0
- package/dist/kolibri/kol-popover.entry.js.map +1 -0
- package/dist/kolibri/kol-progress.entry.js +1 -1
- package/dist/kolibri/kol-progress.entry.js.map +1 -1
- package/dist/kolibri/kol-quote.entry.js +1 -1
- package/dist/kolibri/kol-quote.entry.js.map +1 -1
- package/dist/kolibri/kol-select.entry.js +1 -1
- package/dist/kolibri/kol-select.entry.js.map +1 -1
- package/dist/kolibri/kol-skip-nav.entry.js +1 -1
- package/dist/kolibri/kol-skip-nav.entry.js.map +1 -1
- package/dist/kolibri/kol-span.entry.js +1 -1
- package/dist/kolibri/kol-span.entry.js.map +1 -1
- package/dist/kolibri/kol-spin.entry.js +1 -1
- package/dist/kolibri/kol-spin.entry.js.map +1 -1
- package/dist/kolibri/kol-split-button.entry.js +4 -0
- package/dist/kolibri/kol-split-button.entry.js.map +1 -0
- package/dist/kolibri/kol-symbol.entry.js +1 -1
- package/dist/kolibri/kol-symbol.entry.js.map +1 -1
- package/dist/kolibri/kol-table.entry.js +1 -1
- package/dist/kolibri/kol-table.entry.js.map +1 -1
- package/dist/kolibri/kol-tabs.entry.js +1 -1
- package/dist/kolibri/kol-tabs.entry.js.map +1 -1
- package/dist/kolibri/kol-textarea.entry.js +1 -1
- package/dist/kolibri/kol-textarea.entry.js.map +1 -1
- package/dist/kolibri/kol-toast.entry.js +1 -1
- package/dist/kolibri/kol-toast.entry.js.map +1 -1
- package/dist/kolibri/kol-tooltip.entry.js +1 -1
- package/dist/kolibri/kol-tooltip.entry.js.map +1 -1
- package/dist/kolibri/kol-version.entry.js +1 -1
- package/dist/kolibri/kol-version.entry.js.map +1 -1
- package/dist/kolibri/kolibri.esm.js +1 -1
- package/dist/kolibri/kolibri.esm.js.map +1 -1
- package/dist/kolibri/label-4bfc9d30.js +4 -0
- package/dist/kolibri/label-4bfc9d30.js.map +1 -0
- package/dist/kolibri/{prop.validators-1f3db013.js → prop.validators-e15a584f.js} +1 -1
- package/dist/kolibri/prop.validators-e15a584f.js.map +1 -0
- package/dist/kolibri/reuse-3a02afb9.js.map +1 -0
- package/dist/kolibri/show-f85eb6d8.js +4 -0
- package/dist/kolibri/show-f85eb6d8.js.map +1 -0
- package/dist/kolibri/tab-index-eff012a1.js +4 -0
- package/dist/kolibri/{tab-index-97fed287.js.map → tab-index-eff012a1.js.map} +1 -1
- package/dist/kolibri/validation-d4aeea71.js +4 -0
- package/dist/kolibri/{validation-b0614edd.js.map → validation-d4aeea71.js.map} +1 -1
- package/dist/kolibri/validation-ec53a8be.js +4 -0
- package/dist/loader/index.d.ts +1 -1
- package/dist/types/components/@deprecated/input/controller.d.ts +4 -0
- package/dist/types/components/abbr/component.d.ts +3 -14
- package/dist/types/components/abbr/test/html.mock.d.ts +1 -1
- package/dist/types/components/abbr/types.d.ts +14 -0
- package/dist/types/components/accordion/component.d.ts +9 -20
- package/dist/types/components/accordion/test/html.mock.d.ts +1 -1
- package/dist/types/components/accordion/types.d.ts +21 -0
- package/dist/types/components/alert/component.d.ts +2 -18
- package/dist/types/components/alert/shadow.d.ts +14 -0
- package/dist/types/components/alert/test/html.mock.d.ts +1 -1
- package/dist/types/components/alert/types.d.ts +24 -0
- package/dist/types/components/badge/component.d.ts +5 -8
- package/dist/types/components/button/component.d.ts +2 -2
- package/dist/types/components/button/shadow.d.ts +2 -2
- package/dist/types/components/button-link/component.d.ts +2 -2
- package/dist/types/components/card/component.d.ts +2 -2
- package/dist/types/components/form/controller.d.ts +2 -2
- package/dist/types/components/heading/component.d.ts +4 -4
- package/dist/types/components/heading/shadow.d.ts +1 -1
- package/dist/types/components/input/controller.d.ts +1 -1
- package/dist/types/components/input/types.d.ts +5 -8
- package/dist/types/components/input-checkbox/component.d.ts +1 -1
- package/dist/types/components/input-checkbox/types.d.ts +4 -7
- package/dist/types/components/input-color/component.d.ts +1 -1
- package/dist/types/components/input-date/component.d.ts +1 -1
- package/dist/types/components/input-email/component.d.ts +1 -1
- package/dist/types/components/input-email/types.d.ts +3 -2
- package/dist/types/components/input-file/component.d.ts +1 -1
- package/dist/types/components/input-number/component.d.ts +1 -1
- package/dist/types/components/input-number/types.d.ts +1 -0
- package/dist/types/components/input-password/component.d.ts +1 -1
- package/dist/types/components/input-password/types.d.ts +1 -0
- package/dist/types/components/input-radio/component.d.ts +1 -1
- package/dist/types/components/input-radio-group/component.d.ts +1 -1
- package/dist/types/components/input-range/component.d.ts +1 -1
- package/dist/types/components/input-text/component.d.ts +1 -1
- package/dist/types/components/input-text/controller.d.ts +2 -3
- package/dist/types/components/input-text/types.d.ts +3 -3
- package/dist/types/components/kolibri/component.d.ts +5 -3
- package/dist/types/components/link/component.d.ts +4 -2
- package/dist/types/components/link/shadow.d.ts +3 -2
- package/dist/types/components/link-button/component.d.ts +5 -12
- package/dist/types/components/modal/component.d.ts +0 -4
- package/dist/types/components/nav/component.d.ts +4 -10
- package/dist/types/components/pagination/component.d.ts +1 -1
- package/dist/types/components/popover/shadow.d.ts +37 -0
- package/dist/types/components/popover/test/html.mock.d.ts +4 -0
- package/dist/types/components/progress/component.d.ts +4 -1
- package/dist/types/components/select/component.d.ts +1 -1
- package/dist/types/components/select/types.d.ts +1 -0
- package/dist/types/components/split-button/component.d.ts +52 -0
- package/dist/types/components/split-button/types.d.ts +19 -0
- package/dist/types/components/table/component.d.ts +0 -1
- package/dist/types/components/tabs/component.d.ts +1 -1
- package/dist/types/components/textarea/component.d.ts +1 -1
- package/dist/types/components/textarea/types.d.ts +5 -6
- package/dist/types/components/toast/component.d.ts +3 -4
- package/dist/types/components/toast/toaster.d.ts +1 -1
- package/dist/types/components/tooltip/component.d.ts +1 -1
- package/dist/types/components.d.ts +657 -352
- package/dist/types/i18n.d.ts +1 -1
- package/dist/types/index.d.ts +1 -1
- package/dist/types/stencil-public-runtime.d.ts +1 -0
- package/dist/types/types/button-link-text.d.ts +6 -8
- package/dist/types/types/button-link.d.ts +8 -27
- package/dist/types/types/icon.d.ts +9 -32
- package/dist/types/types/props/adjust-height.d.ts +5 -0
- package/dist/types/types/props/alert.d.ts +5 -0
- package/dist/types/types/props/alignment.d.ts +5 -0
- package/dist/types/types/props/aria-current.d.ts +6 -0
- package/dist/types/types/props/aria-expanded.d.ts +5 -0
- package/dist/types/types/props/aria-selected.d.ts +5 -0
- package/dist/types/types/props/checked.d.ts +5 -0
- package/dist/types/types/props/collapsible.d.ts +5 -0
- package/dist/types/types/props/color.d.ts +20 -0
- package/dist/types/types/props/compact.d.ts +5 -0
- package/dist/types/types/props/disabled.d.ts +5 -0
- package/dist/types/types/props/download.d.ts +5 -0
- package/dist/types/types/props/has-closer.d.ts +5 -0
- package/dist/types/types/props/has-compact-button.d.ts +5 -0
- package/dist/types/types/props/has-counter.d.ts +5 -0
- package/dist/types/types/props/has-footer.d.ts +5 -0
- package/dist/types/types/props/hide-label.d.ts +5 -0
- package/dist/types/{utils/validators → types/props}/icon.d.ts +6 -2
- package/dist/types/types/props/indeterminate.d.ts +5 -0
- package/dist/types/types/props/index.d.ts +1 -0
- package/dist/types/types/props/label.d.ts +8 -2
- package/dist/types/types/props/multiple.d.ts +5 -0
- package/dist/types/types/props/open.d.ts +5 -0
- package/dist/types/types/props/read-only.d.ts +5 -0
- package/dist/types/types/props/required.d.ts +5 -0
- package/dist/types/types/props/show.d.ts +6 -0
- package/dist/types/types/props/stealth.d.ts +5 -0
- package/dist/types/types/props/touched.d.ts +5 -0
- package/dist/types/utils/prop.validators.d.ts +2 -2
- package/dist/types/utils/reuse.d.ts +1 -1
- package/dist/types/utils/validators/alignment.d.ts +1 -1
- package/doc/abbr.md +9 -9
- package/doc/accordion.md +51 -39
- package/doc/alert.md +20 -26
- package/doc/badge.md +21 -30
- package/doc/breadcrumb.md +11 -21
- package/doc/button-link.md +20 -22
- package/doc/button.md +44 -84
- package/doc/card.md +18 -69
- package/doc/components.md +1 -1
- package/doc/details.md +13 -10
- package/doc/form.md +4 -4
- package/doc/heading.md +20 -13
- package/doc/icon-font-awesome.md +3 -3
- package/doc/icon-icofont.md +2 -2
- package/doc/icon.md +16 -20
- package/doc/image.md +29 -20
- package/doc/indented-text.md +1 -7
- package/doc/input-adapter-leanup.md +5 -6
- package/doc/input-checkbox.md +33 -30
- package/doc/input-color.md +28 -32
- package/doc/input-date.md +33 -37
- package/doc/input-email.md +34 -34
- package/doc/input-file.md +28 -27
- package/doc/input-number.md +34 -64
- package/doc/input-password.md +29 -30
- package/doc/input-radio-group.md +20 -21
- package/doc/input-radio.md +42 -25
- package/doc/input-range.md +28 -32
- package/doc/input-text.md +37 -40
- package/doc/kolibri.md +17 -12
- package/doc/link-button.md +23 -31
- package/doc/link-group.md +21 -23
- package/doc/link.md +38 -71
- package/doc/logo.md +6 -10
- package/doc/modal.md +38 -57
- package/doc/nav.md +50 -47
- package/doc/pagination.md +27 -33
- package/doc/popover.md +21 -0
- package/doc/progress.md +13 -10
- package/doc/quote.md +14 -13
- package/doc/select.md +47 -46
- package/doc/skip-nav.md +11 -17
- package/doc/span.md +5 -5
- package/doc/spin.md +5 -6
- package/doc/split-button.md +85 -0
- package/doc/table.md +21 -74
- package/doc/tabs.md +28 -42
- package/doc/textarea.md +33 -35
- package/doc/toast.md +27 -21
- package/doc/tooltip.md +10 -12
- package/doc/version.md +6 -9
- package/jest-test-results.json +1 -1
- package/package.json +3 -2
- package/vscode-custom-data.json +437 -180
- package/dist/cjs/button-link-d6aa5d38.js +0 -4
- package/dist/cjs/button-link-d6aa5d38.js.map +0 -1
- package/dist/cjs/controller-41024136.js.map +0 -1
- package/dist/cjs/controller-5565d7af.js.map +0 -1
- package/dist/cjs/controller-830760de.js +0 -4
- package/dist/cjs/controller-bab88e15.js +0 -4
- package/dist/cjs/controller-bab88e15.js.map +0 -1
- package/dist/cjs/controller-e17991a8.js.map +0 -1
- package/dist/cjs/controller-icon-f69a8b14.js.map +0 -1
- package/dist/cjs/icon-e4f3e165.js.map +0 -1
- package/dist/cjs/index-1266b30d.js +0 -4
- package/dist/cjs/index-1266b30d.js.map +0 -1
- package/dist/cjs/index-26858caf.js +0 -4
- package/dist/cjs/index-26858caf.js.map +0 -1
- package/dist/cjs/index-29c5d3c6.js +0 -5
- package/dist/cjs/index-29c5d3c6.js.map +0 -1
- package/dist/cjs/index-eb52922f.js.map +0 -1
- package/dist/cjs/kol-button-wc_2.cjs.entry.js +0 -4
- package/dist/cjs/kol-button-wc_2.cjs.entry.js.map +0 -1
- package/dist/cjs/kol-heading-wc_2.cjs.entry.js +0 -4
- package/dist/cjs/kol-heading-wc_2.cjs.entry.js.map +0 -1
- package/dist/cjs/label-412be5d5.js +0 -4
- package/dist/cjs/label-412be5d5.js.map +0 -1
- package/dist/cjs/reuse-bbd0b4e7.js +0 -4
- package/dist/cjs/validation-ce77567d.js +0 -4
- package/dist/components/index2.js +0 -4
- package/dist/components/index2.js.map +0 -1
- package/dist/esm/app-globals-08fd5e4e.js +0 -4
- package/dist/esm/button-link-249585bf.js.map +0 -1
- package/dist/esm/controller-03e00b6c.js.map +0 -1
- package/dist/esm/controller-08af836c.js.map +0 -1
- package/dist/esm/controller-4f4582b7.js +0 -4
- package/dist/esm/controller-4f4582b7.js.map +0 -1
- package/dist/esm/controller-bf4a0bc1.js +0 -4
- package/dist/esm/controller-ca954299.js.map +0 -1
- package/dist/esm/controller-icon-fb82236a.js.map +0 -1
- package/dist/esm/icon-970694a7.js.map +0 -1
- package/dist/esm/index-50adf9a0.js +0 -5
- package/dist/esm/index-50adf9a0.js.map +0 -1
- package/dist/esm/index-81bd9b41.js.map +0 -1
- package/dist/esm/index-d14da386.js +0 -4
- package/dist/esm/index-d14da386.js.map +0 -1
- package/dist/esm/index-f3c76945.js +0 -4
- package/dist/esm/index-f3c76945.js.map +0 -1
- package/dist/esm/kol-button-wc_2.entry.js +0 -4
- package/dist/esm/kol-button-wc_2.entry.js.map +0 -1
- package/dist/esm/kol-heading-wc_2.entry.js +0 -4
- package/dist/esm/kol-heading-wc_2.entry.js.map +0 -1
- package/dist/esm/label-966377c0.js +0 -4
- package/dist/esm/label-966377c0.js.map +0 -1
- package/dist/esm/validation-2bb481bd.js +0 -4
- package/dist/esm/validation-b0614edd.js +0 -4
- package/dist/kolibri/app-globals-08fd5e4e.js +0 -4
- package/dist/kolibri/assets/bpa-icons/bpa-icons.eot +0 -0
- package/dist/kolibri/assets/bpa-icons/bpa-icons.json +0 -1115
- package/dist/kolibri/assets/bpa-icons/bpa-icons.svg +0 -432
- package/dist/kolibri/assets/bpa-icons/bpa-icons.symbol.svg +0 -1449
- package/dist/kolibri/assets/bpa-icons/bpa-icons.ttf +0 -0
- package/dist/kolibri/assets/bpa-icons/bpa-icons.woff +0 -0
- package/dist/kolibri/assets/bpa-icons/bpa-icons.woff2 +0 -0
- package/dist/kolibri/assets/bpa-icons/style.css +0 -159
- package/dist/kolibri/assets/bpa-icons/style.less +0 -157
- package/dist/kolibri/assets/bpa-icons/style.module.less +0 -160
- package/dist/kolibri/assets/bpa-icons/style.scss +0 -299
- package/dist/kolibri/assets/bpa-icons/style.styl +0 -157
- package/dist/kolibri/assets/bundes/LICENSE.md +0 -1
- package/dist/kolibri/assets/bundes/sans/BundesSans-Web-Black.ttf +0 -0
- package/dist/kolibri/assets/bundes/sans/BundesSans-Web-Black.woff +0 -0
- package/dist/kolibri/assets/bundes/sans/BundesSans-Web-Black.woff2 +0 -0
- package/dist/kolibri/assets/bundes/sans/BundesSans-Web-BlackItalic.ttf +0 -0
- package/dist/kolibri/assets/bundes/sans/BundesSans-Web-BlackItalic.woff +0 -0
- package/dist/kolibri/assets/bundes/sans/BundesSans-Web-BlackItalic.woff2 +0 -0
- package/dist/kolibri/assets/bundes/sans/BundesSans-Web-Bold.ttf +0 -0
- package/dist/kolibri/assets/bundes/sans/BundesSans-Web-Bold.woff +0 -0
- package/dist/kolibri/assets/bundes/sans/BundesSans-Web-Bold.woff2 +0 -0
- package/dist/kolibri/assets/bundes/sans/BundesSans-Web-BoldItalic.ttf +0 -0
- package/dist/kolibri/assets/bundes/sans/BundesSans-Web-BoldItalic.woff +0 -0
- package/dist/kolibri/assets/bundes/sans/BundesSans-Web-BoldItalic.woff2 +0 -0
- package/dist/kolibri/assets/bundes/sans/BundesSans-Web-Light.ttf +0 -0
- package/dist/kolibri/assets/bundes/sans/BundesSans-Web-Light.woff +0 -0
- package/dist/kolibri/assets/bundes/sans/BundesSans-Web-Light.woff2 +0 -0
- package/dist/kolibri/assets/bundes/sans/BundesSans-Web-LightItalic.ttf +0 -0
- package/dist/kolibri/assets/bundes/sans/BundesSans-Web-LightItalic.woff +0 -0
- package/dist/kolibri/assets/bundes/sans/BundesSans-Web-LightItalic.woff2 +0 -0
- package/dist/kolibri/assets/bundes/sans/BundesSans-Web-Medium.ttf +0 -0
- package/dist/kolibri/assets/bundes/sans/BundesSans-Web-Medium.woff +0 -0
- package/dist/kolibri/assets/bundes/sans/BundesSans-Web-Medium.woff2 +0 -0
- package/dist/kolibri/assets/bundes/sans/BundesSans-Web-MediumItalic.ttf +0 -0
- package/dist/kolibri/assets/bundes/sans/BundesSans-Web-MediumItalic.woff +0 -0
- package/dist/kolibri/assets/bundes/sans/BundesSans-Web-MediumItalic.woff2 +0 -0
- package/dist/kolibri/assets/bundes/sans/BundesSans-Web-Regular.ttf +0 -0
- package/dist/kolibri/assets/bundes/sans/BundesSans-Web-Regular.woff +0 -0
- package/dist/kolibri/assets/bundes/sans/BundesSans-Web-Regular.woff2 +0 -0
- package/dist/kolibri/assets/bundes/sans/BundesSans-Web-RegularItalic.ttf +0 -0
- package/dist/kolibri/assets/bundes/sans/BundesSans-Web-RegularItalic.woff +0 -0
- package/dist/kolibri/assets/bundes/sans/BundesSans-Web-RegularItalic.woff2 +0 -0
- package/dist/kolibri/assets/bundes/sans-cond/BundesSansCond-Web-Regular.ttf +0 -0
- package/dist/kolibri/assets/bundes/sans-cond/BundesSansCond-Web-Regular.woff +0 -0
- package/dist/kolibri/assets/bundes/sans-cond/BundesSansCond-Web-Regular.woff2 +0 -0
- package/dist/kolibri/assets/bundes/serif/BundesSerif-Web-Bold.ttf +0 -0
- package/dist/kolibri/assets/bundes/serif/BundesSerif-Web-Bold.woff +0 -0
- package/dist/kolibri/assets/bundes/serif/BundesSerif-Web-Bold.woff2 +0 -0
- package/dist/kolibri/assets/bundes/serif/BundesSerif-Web-BoldItalic.ttf +0 -0
- package/dist/kolibri/assets/bundes/serif/BundesSerif-Web-BoldItalic.woff +0 -0
- package/dist/kolibri/assets/bundes/serif/BundesSerif-Web-BoldItalic.woff2 +0 -0
- package/dist/kolibri/assets/bundes/serif/BundesSerif-Web-Italic.ttf +0 -0
- package/dist/kolibri/assets/bundes/serif/BundesSerif-Web-Italic.woff +0 -0
- package/dist/kolibri/assets/bundes/serif/BundesSerif-Web-Italic.woff2 +0 -0
- package/dist/kolibri/assets/bundes/serif/BundesSerif-Web-Regular.ttf +0 -0
- package/dist/kolibri/assets/bundes/serif/BundesSerif-Web-Regular.woff +0 -0
- package/dist/kolibri/assets/bundes/serif/BundesSerif-Web-Regular.woff2 +0 -0
- package/dist/kolibri/assets/bundes/style.css +0 -84
- package/dist/kolibri/assets/fontawesome-free/LICENSE.txt +0 -165
- package/dist/kolibri/assets/fontawesome-free/css/all.css +0 -7831
- package/dist/kolibri/assets/fontawesome-free/css/all.min.css +0 -6
- package/dist/kolibri/assets/fontawesome-free/css/brands.css +0 -1432
- package/dist/kolibri/assets/fontawesome-free/css/brands.min.css +0 -6
- package/dist/kolibri/assets/fontawesome-free/css/fontawesome.css +0 -6338
- package/dist/kolibri/assets/fontawesome-free/css/fontawesome.min.css +0 -6
- package/dist/kolibri/assets/fontawesome-free/css/regular.css +0 -19
- package/dist/kolibri/assets/fontawesome-free/css/regular.min.css +0 -6
- package/dist/kolibri/assets/fontawesome-free/css/solid.css +0 -19
- package/dist/kolibri/assets/fontawesome-free/css/solid.min.css +0 -6
- package/dist/kolibri/assets/fontawesome-free/css/svg-with-js.css +0 -634
- package/dist/kolibri/assets/fontawesome-free/css/svg-with-js.min.css +0 -6
- package/dist/kolibri/assets/fontawesome-free/css/v4-font-face.css +0 -26
- package/dist/kolibri/assets/fontawesome-free/css/v4-font-face.min.css +0 -6
- package/dist/kolibri/assets/fontawesome-free/css/v4-shims.css +0 -2146
- package/dist/kolibri/assets/fontawesome-free/css/v4-shims.min.css +0 -6
- package/dist/kolibri/assets/fontawesome-free/css/v5-font-face.css +0 -22
- package/dist/kolibri/assets/fontawesome-free/css/v5-font-face.min.css +0 -6
- package/dist/kolibri/assets/fontawesome-free/webfonts/fa-brands-400.ttf +0 -0
- package/dist/kolibri/assets/fontawesome-free/webfonts/fa-brands-400.woff2 +0 -0
- package/dist/kolibri/assets/fontawesome-free/webfonts/fa-regular-400.ttf +0 -0
- package/dist/kolibri/assets/fontawesome-free/webfonts/fa-regular-400.woff2 +0 -0
- package/dist/kolibri/assets/fontawesome-free/webfonts/fa-solid-900.ttf +0 -0
- package/dist/kolibri/assets/fontawesome-free/webfonts/fa-solid-900.woff2 +0 -0
- package/dist/kolibri/assets/fontawesome-free/webfonts/fa-v4compatibility.ttf +0 -0
- package/dist/kolibri/assets/fontawesome-free/webfonts/fa-v4compatibility.woff2 +0 -0
- package/dist/kolibri/assets/icofont/demo.html +0 -18939
- package/dist/kolibri/assets/icofont/fonts/icofont.eot +0 -0
- package/dist/kolibri/assets/icofont/fonts/icofont.svg +0 -2105
- package/dist/kolibri/assets/icofont/fonts/icofont.ttf +0 -0
- package/dist/kolibri/assets/icofont/fonts/icofont.woff +0 -0
- package/dist/kolibri/assets/icofont/fonts/icofont.woff2 +0 -0
- package/dist/kolibri/assets/icofont/icofont.css +0 -10757
- package/dist/kolibri/assets/icofont/icofont.min.css +0 -7
- package/dist/kolibri/assets/kreon/Kreon-VariableFont_wght.ttf +0 -0
- package/dist/kolibri/assets/kreon/OFL.txt +0 -93
- package/dist/kolibri/assets/kreon/README.txt +0 -67
- package/dist/kolibri/assets/kreon/static/Kreon-Bold.ttf +0 -0
- package/dist/kolibri/assets/kreon/static/Kreon-Light.ttf +0 -0
- package/dist/kolibri/assets/kreon/static/Kreon-Medium.ttf +0 -0
- package/dist/kolibri/assets/kreon/static/Kreon-Regular.ttf +0 -0
- package/dist/kolibri/assets/kreon/static/Kreon-SemiBold.ttf +0 -0
- package/dist/kolibri/assets/kreon/style.css +0 -41
- package/dist/kolibri/assets/noto-sans/fonts/NotoSans-Black.ttf +0 -0
- package/dist/kolibri/assets/noto-sans/fonts/NotoSans-BlackItalic.ttf +0 -0
- package/dist/kolibri/assets/noto-sans/fonts/NotoSans-Bold.ttf +0 -0
- package/dist/kolibri/assets/noto-sans/fonts/NotoSans-BoldItalic.ttf +0 -0
- package/dist/kolibri/assets/noto-sans/fonts/NotoSans-ExtraBold.ttf +0 -0
- package/dist/kolibri/assets/noto-sans/fonts/NotoSans-ExtraBoldItalic.ttf +0 -0
- package/dist/kolibri/assets/noto-sans/fonts/NotoSans-ExtraLight.ttf +0 -0
- package/dist/kolibri/assets/noto-sans/fonts/NotoSans-ExtraLightItalic.ttf +0 -0
- package/dist/kolibri/assets/noto-sans/fonts/NotoSans-Italic.ttf +0 -0
- package/dist/kolibri/assets/noto-sans/fonts/NotoSans-Light.ttf +0 -0
- package/dist/kolibri/assets/noto-sans/fonts/NotoSans-LightItalic.ttf +0 -0
- package/dist/kolibri/assets/noto-sans/fonts/NotoSans-Medium.ttf +0 -0
- package/dist/kolibri/assets/noto-sans/fonts/NotoSans-MediumItalic.ttf +0 -0
- package/dist/kolibri/assets/noto-sans/fonts/NotoSans-Regular.ttf +0 -0
- package/dist/kolibri/assets/noto-sans/fonts/NotoSans-SemiBold.ttf +0 -0
- package/dist/kolibri/assets/noto-sans/fonts/NotoSans-SemiBoldItalic.ttf +0 -0
- package/dist/kolibri/assets/noto-sans/fonts/NotoSans-Thin.ttf +0 -0
- package/dist/kolibri/assets/noto-sans/fonts/NotoSans-ThinItalic.ttf +0 -0
- package/dist/kolibri/assets/noto-sans/fonts/OFL.txt +0 -93
- package/dist/kolibri/assets/noto-sans/noto-sans.css +0 -11
- package/dist/kolibri/assets/roboto/LICENSE.txt +0 -202
- package/dist/kolibri/assets/roboto/Roboto-Black.ttf +0 -0
- package/dist/kolibri/assets/roboto/Roboto-BlackItalic.ttf +0 -0
- package/dist/kolibri/assets/roboto/Roboto-Bold.ttf +0 -0
- package/dist/kolibri/assets/roboto/Roboto-BoldItalic.ttf +0 -0
- package/dist/kolibri/assets/roboto/Roboto-Italic.ttf +0 -0
- package/dist/kolibri/assets/roboto/Roboto-Light.ttf +0 -0
- package/dist/kolibri/assets/roboto/Roboto-LightItalic.ttf +0 -0
- package/dist/kolibri/assets/roboto/Roboto-Medium.ttf +0 -0
- package/dist/kolibri/assets/roboto/Roboto-MediumItalic.ttf +0 -0
- package/dist/kolibri/assets/roboto/Roboto-Regular.ttf +0 -0
- package/dist/kolibri/assets/roboto/Roboto-Thin.ttf +0 -0
- package/dist/kolibri/assets/roboto/Roboto-ThinItalic.ttf +0 -0
- package/dist/kolibri/assets/roboto/roboto.css +0 -27
- package/dist/kolibri/assets/tabler-icons/fonts/tabler-icons.eot +0 -0
- package/dist/kolibri/assets/tabler-icons/fonts/tabler-icons.ttf +0 -0
- package/dist/kolibri/assets/tabler-icons/fonts/tabler-icons.woff +0 -0
- package/dist/kolibri/assets/tabler-icons/fonts/tabler-icons.woff2 +0 -0
- package/dist/kolibri/assets/tabler-icons/tabler-icons.css +0 -16057
- package/dist/kolibri/assets/tabler-icons/tabler-icons.html +0 -36226
- package/dist/kolibri/assets/tabler-icons/tabler-icons.min.css +0 -4
- package/dist/kolibri/assets/tabler-icons/tabler-icons.png +0 -0
- package/dist/kolibri/assets/tabler-icons/tabler-icons.scss +0 -8058
- package/dist/kolibri/button-link-249585bf.js.map +0 -1
- package/dist/kolibri/controller-03e00b6c.js +0 -4
- package/dist/kolibri/controller-03e00b6c.js.map +0 -1
- package/dist/kolibri/controller-08af836c.js.map +0 -1
- package/dist/kolibri/controller-4f4582b7.js +0 -4
- package/dist/kolibri/controller-4f4582b7.js.map +0 -1
- package/dist/kolibri/controller-ac44fc5f.js +0 -4
- package/dist/kolibri/controller-bf4a0bc1.js.map +0 -1
- package/dist/kolibri/controller-ca954299.js.map +0 -1
- package/dist/kolibri/controller-icon-fb82236a.js.map +0 -1
- package/dist/kolibri/dev.utils-bedce29d.js.map +0 -1
- package/dist/kolibri/icon-970694a7.js.map +0 -1
- package/dist/kolibri/index-50adf9a0.js +0 -5
- package/dist/kolibri/index-50adf9a0.js.map +0 -1
- package/dist/kolibri/index-81bd9b41.js +0 -4
- package/dist/kolibri/index-81bd9b41.js.map +0 -1
- package/dist/kolibri/index-d14da386.js +0 -4
- package/dist/kolibri/index-d14da386.js.map +0 -1
- package/dist/kolibri/index-f3c76945.js +0 -4
- package/dist/kolibri/index-f3c76945.js.map +0 -1
- package/dist/kolibri/kol-button-wc_2.entry.js +0 -4
- package/dist/kolibri/kol-button-wc_2.entry.js.map +0 -1
- package/dist/kolibri/kol-heading-wc_2.entry.js +0 -4
- package/dist/kolibri/kol-heading-wc_2.entry.js.map +0 -1
- package/dist/kolibri/label-966377c0.js +0 -4
- package/dist/kolibri/label-966377c0.js.map +0 -1
- package/dist/kolibri/prop.validators-1f3db013.js.map +0 -1
- package/dist/kolibri/reuse-56bb5a4b.js.map +0 -1
- package/dist/kolibri/tab-index-97fed287.js +0 -4
- package/dist/kolibri/validation-2bb481bd.js +0 -4
- package/dist/kolibri/validation-b0614edd.js +0 -4
- package/dist/types/schema/i18n-keys.d.ts +0 -29
- package/dist/types/schema/index.d.ts +0 -2
- package/dist/types/schema/tag-names.d.ts +0 -50
- package/dist/types/types/alert.d.ts +0 -6
- package/dist/types/utils/validators/label.d.ts +0 -7
- /package/dist/kolibri/{a11y.tipps-5ca36877.js.map → a11y.tipps-1cea9822.js.map} +0 -0
- /package/dist/kolibri/{app-globals-08fd5e4e.js.map → app-globals-6ba5ef2f.js.map} +0 -0
- /package/dist/kolibri/{controller-ac44fc5f.js.map → controller-985aff52.js.map} +0 -0
- /package/dist/kolibri/{devtools-525ee939.js.map → devtools-33f1b614.js.map} +0 -0
- /package/dist/kolibri/{i18n-97355570.js.map → i18n-81ce19c0.js.map} +0 -0
- /package/dist/kolibri/{reuse-56bb5a4b.js → reuse-3a02afb9.js} +0 -0
- /package/dist/kolibri/{validation-2bb481bd.js.map → validation-ec53a8be.js.map} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["defaultStyleCss","KolInputDate","this","catchRef","ref","propergateFocus","host","render","h","Host","_accessKey","_alert","_autoComplete","_disabled","_error","_hideLabel","_hint","_icon","_id","_list","_max","state","_min","_name","_on","_readOnly","_required","_smartButton","_step","_tabIndex","_touched","_type","_value","valueAsIsoDate","value","defaultValue","v","Date","getFullYear","getMonth","getDate","getHours","getMinutes","getSeconds","undefined","Error","validateDateString","isoDateRegex","test","isoLocalDateTimeRegex","isoMonthRegex","isoTimeRegex","isoWeekRegex","validateOn","setState","Object","assign","onChange","e","validateMax","watchValidator","Set","DEFAULT_MAX_DATE","validateMin","validateValue","componentWillLoad"],"sources":["./src/components/input-date/style.css?tag=kol-input-date&mode=default&encapsulation=shadow","./src/components/input-date/component.tsx"],"sourcesContent":["@import '../input-line.css';\n\nkol-input-number {\n\tdisplay: block;\n}\n","import { Component, Element, h, Host, JSX, Prop, State, Watch } from '@stencil/core';\nimport { ButtonProps } from '../../types/button-link';\nimport { Stringified } from '../../types/common';\nimport { InputDateType } from '../../types/input/control/number';\nimport { Iso8601 } from '../../types/input/iso8601';\nimport { InputTypeOnDefault, InputTypeOnOff } from '../../types/input/types';\nimport { setState, watchValidator } from '../../utils/prop.validators';\nimport { propergateFocus } from '../../utils/reuse';\nimport { KoliBriHorizontalIcon } from '../../types/icon';\nimport { ComponentApi, States } from './types';\n\n@Component({\n\ttag: 'kol-input-date',\n\tstyleUrls: {\n\t\tdefault: './style.css',\n\t},\n\tshadow: true,\n})\nexport class KolInputDate implements ComponentApi {\n\t@Element() private readonly host?: HTMLKolInputDateElement;\n\tprivate ref?: HTMLKolInputNumberElement;\n\n\tprivate static readonly DEFAULT_MAX_DATE = new Date(9999, 11, 31, 23, 59, 59);\n\n\t// test: https://regex101.com/r/NTVh4L/1\n\tprivate static readonly isoDateRegex = /^\\d{4}-([0]\\d|1[0-2])-([0-2]\\d|3[01])/;\n\tprivate static readonly isoLocalDateTimeRegex = /^\\d{4}-([0]\\d|1[0-2])-([0-2]\\d|3[01])[T ][0-2]\\d:[0-5]\\d(:[0-5]\\d(?:\\.\\d+)?)?/;\n\tprivate static readonly isoMonthRegex = /^\\d{4}-([0]\\d|1[0-2])/;\n\tprivate static readonly isoTimeRegex = /^[0-2]\\d:[0-5]\\d(:[0-5]\\d(?:\\.\\d+)?)?/;\n\tprivate static readonly isoWeekRegex = /^\\d{4}-W(?:[0-4]\\d|5[0-3])$/;\n\n\tprivate readonly catchRef = (ref?: HTMLKolInputNumberElement) => {\n\t\tthis.ref = ref;\n\t\tpropergateFocus(this.host, this.ref);\n\t};\n\n\tpublic render(): JSX.Element {\n\t\treturn (\n\t\t\t<Host>\n\t\t\t\t<kol-input-number\n\t\t\t\t\tref={this.catchRef}\n\t\t\t\t\t_accessKey={this._accessKey}\n\t\t\t\t\t_alert={this._alert}\n\t\t\t\t\t_autoComplete={this._autoComplete}\n\t\t\t\t\t_disabled={this._disabled}\n\t\t\t\t\t_error={this._error}\n\t\t\t\t\t_hideLabel={this._hideLabel}\n\t\t\t\t\t_hint={this._hint}\n\t\t\t\t\t_icon={this._icon}\n\t\t\t\t\t_id={this._id}\n\t\t\t\t\t_list={this._list}\n\t\t\t\t\t_max={this.state._max}\n\t\t\t\t\t_min={this.state._min}\n\t\t\t\t\t_name={this._name}\n\t\t\t\t\t_on={this.state._on}\n\t\t\t\t\t_readOnly={this._readOnly}\n\t\t\t\t\t_required={this._required}\n\t\t\t\t\t_smartButton={this._smartButton}\n\t\t\t\t\t_step={this._step}\n\t\t\t\t\t_tabIndex={this._tabIndex}\n\t\t\t\t\t_touched={this._touched}\n\t\t\t\t\t_type={this._type}\n\t\t\t\t\t_value={this.state._value}\n\t\t\t\t>\n\t\t\t\t\t<slot />\n\t\t\t\t</kol-input-number>\n\t\t\t</Host>\n\t\t);\n\t}\n\n\t/**\n\t * Gibt an, mit welcher Tastenkombination man das Input auslösen oder fokussieren kann.\n\t */\n\t@Prop() public _accessKey?: string;\n\n\t/**\n\t * Gibt an, ob die Fehlermeldung vorgelesen werden soll, wenn es eine gibt.\n\t */\n\t@Prop({ mutable: true, reflect: true }) public _alert?: boolean = true;\n\n\t/**\n\t * Gibt an, ob das Eingabefeld autovervollständigt werden kann.\n\t */\n\t@Prop() public _autoComplete?: InputTypeOnOff;\n\n\t/**\n\t * Gibt an, ob das Eingabefeld aktiviert oder deaktiviert ist.\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 * Gibt an, ob das Eingabefeld kein sichtbares Label haben soll.\n\t */\n\t@Prop({ reflect: true }) public _hideLabel?: boolean;\n\n\t/**\n\t * Gibt den Text für eine Hinweistext an.\n\t */\n\t@Prop() public _hint?: string = '';\n\n\t/**\n\t * Ermöglicht das Anzeigen von Icons links und/oder rechts am Rand des Eingabefeldes.\n\t */\n\t@Prop() public _icon?: Stringified<KoliBriHorizontalIcon>;\n\n\t/**\n\t * Gibt die technische ID des Eingabefeldes an.\n\t */\n\t@Prop() public _id!: string;\n\n\t/**\n\t * Gibt die Liste der Vorschlagszahlen an.\n\t */\n\t@Prop() public _list?: Stringified<string[]>;\n\n\t/**\n\t * Gibt den größtmöglichen Datumswert an.\n\t */\n\t@Prop() public _max?: Iso8601 | Date;\n\n\t/**\n\t * Gibt den kleinstmöglichen Datumswert an.\n\t */\n\t@Prop() public _min?: Iso8601 | Date;\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 * Gibt an, ob das Eingabefeld nur lesend ist.\n\t */\n\t@Prop({ reflect: true }) public _readOnly?: boolean;\n\n\t/**\n\t * Gibt an, ob das Eingabefeld ein Pflichtfeld ist.\n\t */\n\t@Prop({ reflect: true }) public _required?: boolean;\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?: ButtonProps;\n\n\t/**\n\t * Gibt die Schrittweite der Wertveränderung an\n\t */\n\t@Prop() public _step?: number;\n\n\t/**\n\t * Gibt an, welchen Tab-Index dieses Input hat.\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 den Typ des Eingabefeldes an.\n\t */\n\t@Prop() public _type: InputDateType = 'date';\n\n\t/**\n\t * Gibt den Wert des Eingabefeldes an.\n\t */\n\t@Prop({ mutable: true }) public _value?: Iso8601 | Date | null;\n\n\t/**\n\t * @see: components/abbr/component.tsx (@State)\n\t */\n\t@State() public state: States = {};\n\n\tprivate valueAsIsoDate(value?: Iso8601 | Date | null, defaultValue?: Date): Iso8601 | null | undefined {\n\t\tconst v: Iso8601 | Date | undefined = value ?? defaultValue;\n\t\tif (typeof v === 'string') {\n\t\t\treturn v;\n\t\t}\n\t\tif (typeof v === 'object' && v instanceof Date) {\n\t\t\tswitch (this._type) {\n\t\t\t\tcase 'date':\n\t\t\t\t\treturn `${v.getFullYear()}-${v.getMonth() + 1}-${v.getDate()}`;\n\t\t\t\tcase 'datetime-local':\n\t\t\t\t\treturn `${v.getFullYear()}-${v.getMonth() + 1}-${v.getDate()}T${v.getHours()}:${v.getMinutes()}:${v.getSeconds()}`;\n\t\t\t\tcase 'month':\n\t\t\t\t\treturn `${v.getFullYear()}-${v.getMonth() + 1}`;\n\t\t\t\tcase 'time':\n\t\t\t\t\t// https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input/time#using_the_step_attribute\n\t\t\t\t\tif (this._step === undefined || (typeof this._step === 'string' && this._step === '60') || (typeof this._step === 'number' && this._step === 60)) {\n\t\t\t\t\t\treturn `${v.getHours()}:${v.getMinutes()}`;\n\t\t\t\t\t} else {\n\t\t\t\t\t\treturn `${v.getHours()}:${v.getMinutes()}:${v.getSeconds()}`;\n\t\t\t\t\t}\n\t\t\t\tcase 'week':\n\t\t\t\t\tthrow new Error('Auto convert to week is not supported!');\n\t\t\t}\n\t\t}\n\t\tif (value === null) {\n\t\t\treturn null;\n\t\t}\n\t\treturn undefined;\n\t}\n\n\tprivate validateDateString(value: Iso8601): boolean {\n\t\tswitch (this._type) {\n\t\t\tcase 'date':\n\t\t\t\treturn KolInputDate.isoDateRegex.test(value);\n\t\t\tcase 'datetime-local':\n\t\t\t\treturn KolInputDate.isoLocalDateTimeRegex.test(value);\n\t\t\tcase 'month':\n\t\t\t\treturn KolInputDate.isoMonthRegex.test(value);\n\t\t\tcase 'time':\n\t\t\t\treturn KolInputDate.isoTimeRegex.test(value);\n\t\t\tcase 'week':\n\t\t\t\treturn KolInputDate.isoWeekRegex.test(value);\n\t\t}\n\t}\n\n\t@Watch('_on')\n\tpublic validateOn(value?: InputTypeOnDefault) {\n\t\tsetState(this, '_on', {\n\t\t\t...value,\n\t\t\tonChange: (e: Event, v: unknown) => {\n\t\t\t\t// set the value here when the value is switched between blank and set (or vice versa) to enable value resets via setting null as value.\n\t\t\t\tif (!!v !== !!this._value) {\n\t\t\t\t\tthis._value = v as Iso8601;\n\t\t\t\t}\n\n\t\t\t\tif (value?.onChange) {\n\t\t\t\t\tvalue.onChange(e, v);\n\t\t\t\t}\n\t\t\t},\n\t\t});\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_max')\n\tpublic validateMax(value?: Iso8601 | Date): void {\n\t\twatchValidator(\n\t\t\tthis,\n\t\t\t'_max',\n\t\t\t(value): boolean => value === undefined || (value !== null && this.validateDateString(value)),\n\t\t\tnew Set(['Iso8601', 'Date']),\n\t\t\tthis.valueAsIsoDate(value, this._type === 'date' || this._type === 'month' || this._type === 'datetime-local' ? KolInputDate.DEFAULT_MAX_DATE : undefined)\n\t\t);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_min')\n\tpublic validateMin(value?: Iso8601 | Date): void {\n\t\twatchValidator(\n\t\t\tthis,\n\t\t\t'_min',\n\t\t\t(value): boolean => value === undefined || (value !== null && this.validateDateString(value)),\n\t\t\tnew Set(['Iso8601', 'Date']),\n\t\t\tthis.valueAsIsoDate(value)\n\t\t);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_value')\n\tpublic validateValue(value?: Iso8601 | Date | null): void {\n\t\twatchValidator(\n\t\t\tthis,\n\t\t\t'_value',\n\t\t\t(value): boolean => value === undefined || value === null || this.validateDateString(value),\n\t\t\tnew Set(['Iso8601', 'Date']),\n\t\t\tthis.valueAsIsoDate(value)\n\t\t);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (componentWillLoad)\n\t */\n\tpublic componentWillLoad(): void {\n\t\tthis.validateOn(this._on);\n\t\tthis.validateMax(this._max);\n\t\tthis.validateMin(this._min);\n\t\tthis.validateValue(this._value);\n\t}\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["KolInputDate","this","catchRef","ref","propagateFocus","host","render","h","Host","_accessKey","_alert","_autoComplete","_disabled","_error","_hideLabel","_hint","_icon","_id","_list","_max","state","_min","_name","_on","_readOnly","_required","_smartButton","_step","_tabIndex","_touched","_type","_value","valueAsIsoDate","value","defaultValue","v","Date","getFullYear","getMonth","getDate","getHours","getMinutes","getSeconds","undefined","Error","validateDateString","isoDateRegex","test","isoLocalDateTimeRegex","isoMonthRegex","isoTimeRegex","isoWeekRegex","validateOn","setState","Object","assign","onChange","e","validateMax","watchValidator","Set","DEFAULT_MAX_DATE","validateMin","validateValue","componentWillLoad"],"sources":["./src/components/input-date/component.tsx"],"sourcesContent":["import { Component, Element, h, Host, JSX, Prop, State, Watch } from '@stencil/core';\nimport { ButtonProps } from '../../types/button-link';\nimport { Stringified } from '../../types/common';\nimport { InputDateType } from '../../types/input/control/number';\nimport { Iso8601 } from '../../types/input/iso8601';\nimport { InputTypeOnDefault, InputTypeOnOff } from '../../types/input/types';\nimport { setState, watchValidator } from '../../utils/prop.validators';\nimport { propagateFocus } from '../../utils/reuse';\nimport { KoliBriHorizontalIcon } from '../../types/icon';\nimport { ComponentApi, States } from './types';\n\n@Component({\n\ttag: 'kol-input-date',\n\t// styleUrls: {\n\t// \tdefault: './style.css',\n\t// },\n\tshadow: false,\n})\nexport class KolInputDate implements ComponentApi {\n\t@Element() private readonly host?: HTMLKolInputDateElement;\n\tprivate ref?: HTMLKolInputNumberElement;\n\n\tprivate static readonly DEFAULT_MAX_DATE = new Date(9999, 11, 31, 23, 59, 59);\n\n\t// test: https://regex101.com/r/NTVh4L/1\n\tprivate static readonly isoDateRegex = /^\\d{4}-([0]\\d|1[0-2])-([0-2]\\d|3[01])/;\n\tprivate static readonly isoLocalDateTimeRegex = /^\\d{4}-([0]\\d|1[0-2])-([0-2]\\d|3[01])[T ][0-2]\\d:[0-5]\\d(:[0-5]\\d(?:\\.\\d+)?)?/;\n\tprivate static readonly isoMonthRegex = /^\\d{4}-([0]\\d|1[0-2])/;\n\tprivate static readonly isoTimeRegex = /^[0-2]\\d:[0-5]\\d(:[0-5]\\d(?:\\.\\d+)?)?/;\n\tprivate static readonly isoWeekRegex = /^\\d{4}-W(?:[0-4]\\d|5[0-3])$/;\n\n\tprivate readonly catchRef = (ref?: HTMLKolInputNumberElement) => {\n\t\tthis.ref = ref;\n\t\tpropagateFocus(this.host, this.ref);\n\t};\n\n\tpublic render(): JSX.Element {\n\t\treturn (\n\t\t\t<Host>\n\t\t\t\t<kol-input-number\n\t\t\t\t\tref={this.catchRef}\n\t\t\t\t\t_accessKey={this._accessKey}\n\t\t\t\t\t_alert={this._alert}\n\t\t\t\t\t_autoComplete={this._autoComplete}\n\t\t\t\t\t_disabled={this._disabled}\n\t\t\t\t\t_error={this._error}\n\t\t\t\t\t_hideLabel={this._hideLabel}\n\t\t\t\t\t_hint={this._hint}\n\t\t\t\t\t_icon={this._icon}\n\t\t\t\t\t_id={this._id}\n\t\t\t\t\t_list={this._list}\n\t\t\t\t\t_max={this.state._max}\n\t\t\t\t\t_min={this.state._min}\n\t\t\t\t\t_name={this._name}\n\t\t\t\t\t_on={this.state._on}\n\t\t\t\t\t_readOnly={this._readOnly}\n\t\t\t\t\t_required={this._required}\n\t\t\t\t\t_smartButton={this._smartButton}\n\t\t\t\t\t_step={this._step}\n\t\t\t\t\t_tabIndex={this._tabIndex}\n\t\t\t\t\t_touched={this._touched}\n\t\t\t\t\t_type={this._type}\n\t\t\t\t\t_value={this.state._value}\n\t\t\t\t>\n\t\t\t\t\t<slot />\n\t\t\t\t</kol-input-number>\n\t\t\t</Host>\n\t\t);\n\t}\n\n\t/**\n\t * Gibt an, mit welcher Tastenkombination man das Input auslösen oder fokussieren kann.\n\t */\n\t@Prop() public _accessKey?: string;\n\n\t/**\n\t * Gibt an, ob die Fehlermeldung vorgelesen werden soll, wenn es eine gibt.\n\t */\n\t@Prop({ mutable: true, reflect: true }) public _alert?: boolean = true;\n\n\t/**\n\t * Gibt an, ob das Eingabefeld autovervollständigt werden kann.\n\t */\n\t@Prop() public _autoComplete?: InputTypeOnOff;\n\n\t/**\n\t * Setzt das Feld in einen inaktiven Zustand, in dem es keine Interaktion erlaubt.\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 * Versteckt das sichtbare Label des Elements.\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 * Ermöglicht das Anzeigen von Icons links und/oder rechts am Rand des Eingabefeldes.\n\t */\n\t@Prop() public _icon?: Stringified<KoliBriHorizontalIcon>;\n\n\t/**\n\t * Gibt die technische ID des Eingabefeldes an.\n\t */\n\t@Prop() public _id?: string;\n\n\t/**\n\t * Gibt die Liste der Vorschlagszahlen an.\n\t */\n\t@Prop() public _list?: Stringified<string[]>;\n\n\t/**\n\t * Gibt den größtmöglichen Datumswert an.\n\t */\n\t@Prop() public _max?: Iso8601 | Date;\n\n\t/**\n\t * Gibt den kleinstmöglichen Datumswert an.\n\t */\n\t@Prop() public _min?: Iso8601 | Date;\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 * Setzt das Eingabefeld in den schreibgeschützten Modus.\n\t */\n\t@Prop({ reflect: true }) public _readOnly?: boolean;\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 * Ermöglicht eine Schaltfläche ins das Eingabefeld mit einer beliebigen Aktion zu einzufügen (ohne label).\n\t */\n\t@Prop() public _smartButton?: ButtonProps;\n\n\t/**\n\t * Gibt die Schrittweite der Wertveränderung an\n\t */\n\t@Prop() public _step?: number;\n\n\t/**\n\t * Gibt an, welchen Tab-Index dieses Input hat.\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 den Typ des Eingabefeldes an.\n\t */\n\t@Prop() public _type: InputDateType = 'date';\n\n\t/**\n\t * Gibt den Wert des Eingabefeldes an.\n\t */\n\t@Prop({ mutable: true }) public _value?: Iso8601 | Date | null;\n\n\t@State() public state: States = {};\n\n\tprivate valueAsIsoDate(value?: Iso8601 | Date | null, defaultValue?: Date): Iso8601 | null | undefined {\n\t\tconst v: Iso8601 | Date | undefined = value ?? defaultValue;\n\t\tif (typeof v === 'string') {\n\t\t\treturn v;\n\t\t}\n\t\tif (typeof v === 'object' && v instanceof Date) {\n\t\t\tswitch (this._type) {\n\t\t\t\tcase 'date':\n\t\t\t\t\treturn `${v.getFullYear()}-${v.getMonth() + 1}-${v.getDate()}`;\n\t\t\t\tcase 'datetime-local':\n\t\t\t\t\treturn `${v.getFullYear()}-${v.getMonth() + 1}-${v.getDate()}T${v.getHours()}:${v.getMinutes()}:${v.getSeconds()}`;\n\t\t\t\tcase 'month':\n\t\t\t\t\treturn `${v.getFullYear()}-${v.getMonth() + 1}`;\n\t\t\t\tcase 'time':\n\t\t\t\t\t// https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input/time#using_the_step_attribute\n\t\t\t\t\tif (this._step === undefined || (typeof this._step === 'string' && this._step === '60') || (typeof this._step === 'number' && this._step === 60)) {\n\t\t\t\t\t\treturn `${v.getHours()}:${v.getMinutes()}`;\n\t\t\t\t\t} else {\n\t\t\t\t\t\treturn `${v.getHours()}:${v.getMinutes()}:${v.getSeconds()}`;\n\t\t\t\t\t}\n\t\t\t\tcase 'week':\n\t\t\t\t\tthrow new Error('Auto convert to week is not supported!');\n\t\t\t}\n\t\t}\n\t\tif (value === null) {\n\t\t\treturn null;\n\t\t}\n\t\treturn undefined;\n\t}\n\n\tprivate validateDateString(value: Iso8601): boolean {\n\t\tswitch (this._type) {\n\t\t\tcase 'date':\n\t\t\t\treturn KolInputDate.isoDateRegex.test(value);\n\t\t\tcase 'datetime-local':\n\t\t\t\treturn KolInputDate.isoLocalDateTimeRegex.test(value);\n\t\t\tcase 'month':\n\t\t\t\treturn KolInputDate.isoMonthRegex.test(value);\n\t\t\tcase 'time':\n\t\t\t\treturn KolInputDate.isoTimeRegex.test(value);\n\t\t\tcase 'week':\n\t\t\t\treturn KolInputDate.isoWeekRegex.test(value);\n\t\t}\n\t}\n\n\t@Watch('_on')\n\tpublic validateOn(value?: InputTypeOnDefault) {\n\t\tsetState(this, '_on', {\n\t\t\t...value,\n\t\t\tonChange: (e: Event, v: unknown) => {\n\t\t\t\t// set the value here when the value is switched between blank and set (or vice versa) to enable value resets via setting null as value.\n\t\t\t\tif (!!v !== !!this._value) {\n\t\t\t\t\tthis._value = v as Iso8601;\n\t\t\t\t}\n\n\t\t\t\tif (value?.onChange) {\n\t\t\t\t\tvalue.onChange(e, v);\n\t\t\t\t}\n\t\t\t},\n\t\t});\n\t}\n\n\t@Watch('_max')\n\tpublic validateMax(value?: Iso8601 | Date): void {\n\t\twatchValidator(\n\t\t\tthis,\n\t\t\t'_max',\n\t\t\t(value): boolean => value === undefined || (value !== null && this.validateDateString(value)),\n\t\t\tnew Set(['Iso8601', 'Date']),\n\t\t\tthis.valueAsIsoDate(value, this._type === 'date' || this._type === 'month' || this._type === 'datetime-local' ? KolInputDate.DEFAULT_MAX_DATE : undefined)\n\t\t);\n\t}\n\n\t@Watch('_min')\n\tpublic validateMin(value?: Iso8601 | Date): void {\n\t\twatchValidator(\n\t\t\tthis,\n\t\t\t'_min',\n\t\t\t(value): boolean => value === undefined || (value !== null && this.validateDateString(value)),\n\t\t\tnew Set(['Iso8601', 'Date']),\n\t\t\tthis.valueAsIsoDate(value)\n\t\t);\n\t}\n\n\t@Watch('_value')\n\tpublic validateValue(value?: Iso8601 | Date | null): void {\n\t\twatchValidator(\n\t\t\tthis,\n\t\t\t'_value',\n\t\t\t(value): boolean => value === undefined || value === null || this.validateDateString(value),\n\t\t\tnew Set(['Iso8601', 'Date']),\n\t\t\tthis.valueAsIsoDate(value)\n\t\t);\n\t}\n\n\tpublic componentWillLoad(): void {\n\t\tthis.validateOn(this._on);\n\t\tthis.validateMax(this._max);\n\t\tthis.validateMin(this._min);\n\t\tthis.validateValue(this._value);\n\t}\n}\n"],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* KoliBri - The accessible HTML-Standard
|
|
3
3
|
*/
|
|
4
|
-
import{h as t,H as e,r as i,g as a}from"./index-
|
|
4
|
+
import{h as t,H as e,r as i,g as a}from"./index-0e29e47a.js";import{a as s}from"./reuse-3a02afb9.js";import{p as n}from"./controller-0cf6cd75.js";import{g as l}from"./controller-53ddde7c.js";import{b as d}from"./prop.validators-e15a584f.js";import{I as o}from"./controller-830cac3b.js";import{n as r}from"./dev.utils-157f0499.js";import"./a11y.tipps-1cea9822.js";import"./tab-index-eff012a1.js";import"./index-f4596895.js";import"./controller-3e94c3f2.js";import"./controller-icon-26c0e34a.js";import"./icon-dfcf642a.js";const h=(t,e)=>{d(t,"_multiple",e)};class p extends o{constructor(t,e,i){super(t,e,i),this.component=t}validateMultiple(t){d(this.component,"_multiple",t)}componentWillLoad(){super.componentWillLoad(),this.validateMultiple(this.component._multiple)}}const u=":host{--a11y-min-size:44px}*{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}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}kol-input{display:grid}kol-input [slot='input']{flex-grow:1}input:not([type='checkbox'],[type='radio']),select:not([multiple]){height:2.75em}input:focus,option:focus,select:focus,textarea:focus{outline:0}.input{display:flex;align-items:center}.input>kol-icon{display:grid;height:var(--a11y-min-size);place-items:center}div.input{cursor:text}",c=class{render(){const{ariaDescribedBy:i}=l(this.state),a=Array.isArray(this.state._list)&&this.state._list.length>0;return t(e,{class:{"has-value":this.state._hasValue}},t("kol-input",{class:{email:!0},_alert:this.state._alert,_disabled:this.state._disabled,_error:this.state._error,_hideLabel:this.state._hideLabel,_hint:this.state._hint,_icon:this.state._icon,_id:this.state._id,_list:this.state._list,_readOnly:this.state._readOnly,_required:this.state._required,_smartButton:this.state._smartButton,_touched:this.state._touched,onClick:()=>{var t;return null===(t=this.ref)||void 0===t?void 0:t.focus()}},t("span",{slot:"label"},t("slot",null)),t("input",Object.assign({ref:this.catchRef,title:"",accessKey:this.state._accessKey,"aria-describedby":i.length>0?i.join(" "):void 0,"aria-labelledby":`${this.state._id}-label`,autoCapitalize:"off",autoComplete:this.state._autoComplete,autoCorrect:"off",disabled:this.state._disabled,multiple:this.state._multiple,id:this.state._id,list:a?`${this.state._id}-list`:void 0,maxlength:this.state._maxLength,name:this.state._name,pattern:this.state._pattern,placeholder:this.state._placeholder,readOnly:this.state._readOnly,required:this.state._required,size:this.state._size,slot:"input",spellcheck:"false",type:"email",value:this.state._value},this.controller.onFacade,{onKeyUp:this.onKeyUp}))))}constructor(t){i(this,t),this.catchRef=t=>{this.ref=t,s(this.host,this.ref)},this.onKeyUp=t=>{"Enter"===t.code?n({form:this.host,ref:this.ref}):this.controller.onFacade.onChange(t)},this._accessKey=void 0,this._alert=!0,this._autoComplete=void 0,this._disabled=void 0,this._error=void 0,this._hideLabel=void 0,this._hint="",this._icon=void 0,this._id=void 0,this._list=void 0,this._maxLength=void 0,this._multiple=void 0,this._name=void 0,this._on=void 0,this._pattern=void 0,this._placeholder=void 0,this._readOnly=void 0,this._required=void 0,this._size=void 0,this._smartButton=void 0,this._tabIndex=void 0,this._touched=!1,this._value=void 0,this.state={_autoComplete:"off",_id:r(),_hasValue:!1,_list:[]},this.controller=new p(this,"email",this.host)}validateAccessKey(t){this.controller.validateAccessKey(t)}validateAlert(t){this.controller.validateAlert(t)}validateAutoComplete(t){this.controller.validateAutoComplete(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)}validateList(t){this.controller.validateList(t)}validateMaxLength(t){this.controller.validateMaxLength(t)}validateMultiple(t){h(this,t)}validateName(t){this.controller.validateName(t)}validateOn(t){this.controller.validateOn(t)}validatePattern(t){this.controller.validatePattern(t)}validatePlaceholder(t){this.controller.validatePlaceholder(t)}validateReadOnly(t){this.controller.validateReadOnly(t)}validateRequired(t){this.controller.validateRequired(t)}validateSize(t){this.controller.validateSize(t)}validateSmartButton(t){this.controller.validateSmartButton(t)}validateTabIndex(t){this.controller.validateTabIndex(t)}validateTouched(t){this.controller.validateTouched(t)}validateValue(t){this.controller.validateValue(t)}componentWillLoad(){this._alert=!0===this._alert,this._touched=!0===this._touched,this.controller.componentWillLoad(),this.state._hasValue=!!this.state._value,this.controller.addValueChangeListener((t=>this.state._hasValue=!!t))}get host(){return a(this)}static get watchers(){return{_accessKey:["validateAccessKey"],_alert:["validateAlert"],_autoComplete:["validateAutoComplete"],_disabled:["validateDisabled"],_error:["validateError"],_hideLabel:["validateHideLabel"],_hint:["validateHint"],_icon:["validateIcon"],_id:["validateId"],_list:["validateList"],_maxLength:["validateMaxLength"],_multiple:["validateMultiple"],_name:["validateName"],_on:["validateOn"],_pattern:["validatePattern"],_placeholder:["validatePlaceholder"],_readOnly:["validateReadOnly"],_required:["validateRequired"],_size:["validateSize"],_smartButton:["validateSmartButton"],_tabIndex:["validateTabIndex"],_touched:["validateTouched"],_value:["validateValue"]}}};c.style={default:u};export{c as kol_input_email};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["InputEmailController","InputTextEmailController","constructor","component","name","host","super","this","validateMultiple","value","watchBoolean","componentWillLoad","_multiple","defaultStyleCss","KolInputEmail","render","ariaDiscribedBy","getRenderStates","state","hasList","Array","isArray","_list","length","h","Host","_alert","_disabled","_error","_hideLabel","_hint","_icon","_id","_readOnly","_required","_smartButton","_touched","slot","Object","assign","ref","catchRef","part","title","accessKey","_accessKey","join","undefined","autoCapitalize","autoComplete","_autoComplete","autoCorrect","disabled","multiple","id","list","maxlength","_maxLength","_name","pattern","_pattern","placeholder","_placeholder","readOnly","required","size","_size","spellcheck","type","_value","controller","onFacade","onKeyUp","hostRef","propergateFocus","event","code","propergateSubmitEventToForm","form","onChange","validateAccessKey","validateAlert","validateAutoComplete","validateDisabled","validateError","validateHideLabel","validateHint","validateIcon","validateId","validateList","validateMaxLength","validateName","validateOn","validatePattern","validatePlaceholder","validateReadOnly","validateRequired","validateSize","validateSmartButton","validateTabIndex","validateTouched","validateValue"],"sources":["./src/components/input-email/controller.ts","./src/components/input-email/style.css?tag=kol-input-email&mode=default&encapsulation=shadow","./src/components/input-email/component.tsx"],"sourcesContent":["import { Generic } from '@a11y-ui/core';\nimport { watchBoolean } from '../../utils/prop.validators';\nimport { InputTextEmailController } from '../input-text/controller';\nimport { Props, Watches } from './types';\n\nexport class InputEmailController extends InputTextEmailController implements Watches {\n\tprotected readonly component: Generic.Element.Component & Props;\n\n\tpublic constructor(component: Generic.Element.Component & Props, name: string, host?: HTMLElement) {\n\t\tsuper(component, name, host);\n\t\tthis.component = component;\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\tpublic validateMultiple(value?: boolean): void {\n\t\twatchBoolean(this.component, '_multiple', value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (componentWillLoad)\n\t */\n\tpublic componentWillLoad(): void {\n\t\tsuper.componentWillLoad();\n\t\tthis.validateMultiple(this.component._multiple);\n\t}\n}\n","@import '../input-line.css';\n","import { Component, Element, h, Host, JSX, Prop, State, Watch } from '@stencil/core';\nimport { ButtonProps } from '../../types/button-link';\nimport { Stringified } from '../../types/common';\n\nimport { InputTypeOnDefault, InputTypeOnOff } from '../../types/input/types';\nimport { propergateFocus } from '../../utils/reuse';\nimport { propergateSubmitEventToForm } from '../form/controller';\nimport { KoliBriHorizontalIcon } from '../../types/icon';\nimport { getRenderStates } from '../input/controller';\nimport { InputEmailController } from './controller';\nimport { ComponentApi, States } from './types';\n\n@Component({\n\ttag: 'kol-input-email',\n\tstyleUrls: {\n\t\tdefault: './style.css',\n\t},\n\tshadow: true,\n})\nexport class KolInputEmail implements ComponentApi {\n\t@Element() private readonly host?: HTMLKolInputEmailElement;\n\tprivate ref?: HTMLInputElement;\n\n\tprivate readonly catchRef = (ref?: HTMLInputElement) => {\n\t\tthis.ref = ref;\n\t\tpropergateFocus(this.host, this.ref);\n\t};\n\n\tprivate readonly onKeyUp = (event: KeyboardEvent) => {\n\t\tif (event.code === 'Enter') {\n\t\t\tpropergateSubmitEventToForm({\n\t\t\t\tform: this.host,\n\t\t\t\tref: this.ref,\n\t\t\t});\n\t\t} else {\n\t\t\tthis.controller.onFacade.onChange(event);\n\t\t}\n\t};\n\n\tpublic render(): JSX.Element {\n\t\tconst { ariaDiscribedBy } = getRenderStates(this.state);\n\t\tconst hasList = Array.isArray(this.state._list) && this.state._list.length > 0;\n\t\treturn (\n\t\t\t<Host>\n\t\t\t\t<kol-input\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_icon={this.state._icon}\n\t\t\t\t\t_id={this.state._id}\n\t\t\t\t\t_list={this.state._list}\n\t\t\t\t\t_readOnly={this.state._readOnly}\n\t\t\t\t\t_required={this.state._required}\n\t\t\t\t\t_smartButton={this.state._smartButton}\n\t\t\t\t\t_touched={this.state._touched}\n\t\t\t\t>\n\t\t\t\t\t<span slot=\"label\">\n\t\t\t\t\t\t<slot />\n\t\t\t\t\t</span>\n\t\t\t\t\t<input\n\t\t\t\t\t\tref={this.catchRef}\n\t\t\t\t\t\tpart=\"input\"\n\t\t\t\t\t\ttitle=\"\"\n\t\t\t\t\t\taccessKey={this.state._accessKey}\n\t\t\t\t\t\taria-describedby={ariaDiscribedBy.length > 0 ? ariaDiscribedBy.join(' ') : undefined}\n\t\t\t\t\t\taria-labelledby={`${this.state._id}-label`}\n\t\t\t\t\t\tautoCapitalize=\"off\"\n\t\t\t\t\t\tautoComplete={this.state._autoComplete}\n\t\t\t\t\t\tautoCorrect=\"off\"\n\t\t\t\t\t\tdisabled={this.state._disabled}\n\t\t\t\t\t\tmultiple={this.state._multiple}\n\t\t\t\t\t\tid={this.state._id}\n\t\t\t\t\t\tlist={hasList ? `${this.state._id}-list` : undefined}\n\t\t\t\t\t\tmaxlength={this.state._maxLength}\n\t\t\t\t\t\tname={this.state._name}\n\t\t\t\t\t\tpattern={this.state._pattern}\n\t\t\t\t\t\tplaceholder={this.state._placeholder}\n\t\t\t\t\t\treadOnly={this.state._readOnly}\n\t\t\t\t\t\trequired={this.state._required}\n\t\t\t\t\t\tsize={this.state._size}\n\t\t\t\t\t\tslot=\"input\"\n\t\t\t\t\t\tspellcheck=\"false\"\n\t\t\t\t\t\t// title={this.state._title}\n\t\t\t\t\t\ttype=\"email\"\n\t\t\t\t\t\tvalue={this.state._value as string}\n\t\t\t\t\t\t{...this.controller.onFacade}\n\t\t\t\t\t\tonKeyUp={this.onKeyUp}\n\t\t\t\t\t/>\n\t\t\t\t</kol-input>\n\t\t\t</Host>\n\t\t);\n\t}\n\n\tprivate readonly controller: InputEmailController;\n\n\t/**\n\t * Gibt an, mit welcher Tastenkombination man das Input auslösen oder fokussieren kann.\n\t */\n\t@Prop() public _accessKey?: string;\n\n\t/**\n\t * Gibt an, ob die Fehlermeldung vorgelesen werden soll, wenn es eine gibt.\n\t */\n\t@Prop({ mutable: true, reflect: true }) public _alert?: boolean = true;\n\n\t/**\n\t * Gibt an, ob das Eingabefeld autovervollständigt werden kann.\n\t */\n\t@Prop() public _autoComplete?: InputTypeOnOff;\n\n\t/**\n\t * Gibt an, ob das Eingabefeld aktiviert oder deaktiviert ist.\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 * Gibt an, ob das Eingabefeld kein sichtbares Label haben soll.\n\t */\n\t@Prop({ reflect: true }) public _hideLabel?: boolean;\n\n\t/**\n\t * Gibt den Text für eine Hinweistext an.\n\t */\n\t@Prop() public _hint?: string = '';\n\n\t/**\n\t * Ermöglicht das Anzeigen von Icons links und/oder rechts am Rand des Eingabefeldes.\n\t */\n\t@Prop() public _icon?: Stringified<KoliBriHorizontalIcon>;\n\n\t/**\n\t * Gibt die technische ID des Eingabefeldes an.\n\t */\n\t@Prop() public _id!: string;\n\n\t/**\n\t * Gibt die Liste der Vorschlagswörter an.\n\t */\n\t@Prop() public _list?: Stringified<string[]>;\n\n\t/**\n\t * Gibt an, wie viele Zeichen man maximal eingeben kann.\n\t */\n\t@Prop() public _maxLength?: number;\n\n\t/**\n\t * Gibt an, ob mehrere Werte eingegeben werden können.\n\t */\n\t@Prop({ reflect: true }) public _multiple?: boolean;\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 * Gibt ein Prüfpattern für das Eingabefeld an.\n\t */\n\t@Prop() public _pattern?: string;\n\n\t/**\n\t * Gibt den Platzhalter des Eingabefeldes an, wenn es leer ist.\n\t */\n\t@Prop() public _placeholder?: string;\n\n\t/**\n\t * Gibt an, ob das Eingabefeld nur lesend ist.\n\t */\n\t@Prop({ reflect: true }) public _readOnly?: boolean;\n\n\t/**\n\t * Gibt an, ob das Radio ein Pflichtfeld ist.\n\t */\n\t@Prop({ reflect: true }) public _required?: boolean;\n\n\t/**\n\t * Gibt an, wie viele Zeichen man eingeben kann.\n\t */\n\t@Prop() public _size?: number;\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?: ButtonProps;\n\n\t/**\n\t * Gibt an, welchen Tab-Index dieses Input hat.\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 den Wert des Eingabefeldes an.\n\t */\n\t@Prop() public _value?: string;\n\n\t/**\n\t * @see: components/abbr/component.tsx (@State)\n\t */\n\t@State() public state: States = {\n\t\t_autoComplete: 'off',\n\t\t_id: '…', // ⚠ required\n\t\t_list: [],\n\t};\n\n\tpublic constructor() {\n\t\tthis.controller = new InputEmailController(this, 'email', this.host);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_accessKey')\n\tpublic validateAccessKey(value?: string): void {\n\t\tthis.controller.validateAccessKey(value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_alert')\n\tpublic validateAlert(value?: boolean): void {\n\t\tthis.controller.validateAlert(value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_autoComplete')\n\tpublic validateAutoComplete(value?: InputTypeOnOff): void {\n\t\tthis.controller.validateAutoComplete(value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_disabled')\n\tpublic validateDisabled(value?: boolean): void {\n\t\tthis.controller.validateDisabled(value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_error')\n\tpublic validateError(value?: string): void {\n\t\tthis.controller.validateError(value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_hideLabel')\n\tpublic validateHideLabel(value?: boolean): void {\n\t\tthis.controller.validateHideLabel(value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_hint')\n\tpublic validateHint(value?: string): void {\n\t\tthis.controller.validateHint(value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_icon')\n\tpublic validateIcon(value?: Stringified<KoliBriHorizontalIcon>): void {\n\t\tthis.controller.validateIcon(value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_id')\n\tpublic validateId(value?: string): void {\n\t\tthis.controller.validateId(value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_list')\n\tpublic validateList(value?: Stringified<string[]>): void {\n\t\tthis.controller.validateList(value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_maxLength')\n\tpublic validateMaxLength(value?: number): void {\n\t\tthis.controller.validateMaxLength(value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_multiple')\n\tpublic validateMultiple(value?: boolean): void {\n\t\tthis.controller.validateMultiple(value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_name')\n\tpublic validateName(value?: string): void {\n\t\tthis.controller.validateName(value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_on')\n\tpublic validateOn(value?: InputTypeOnDefault): void {\n\t\tthis.controller.validateOn(value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_pattern')\n\tpublic validatePattern(value?: string): void {\n\t\tthis.controller.validatePattern(value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_placeholder')\n\tpublic validatePlaceholder(value?: string): void {\n\t\tthis.controller.validatePlaceholder(value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_readOnly')\n\tpublic validateReadOnly(value?: boolean): void {\n\t\tthis.controller.validateReadOnly(value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_required')\n\tpublic validateRequired(value?: boolean): void {\n\t\tthis.controller.validateRequired(value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_size')\n\tpublic validateSize(value?: number): void {\n\t\tthis.controller.validateSize(value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_smartButton')\n\tpublic validateSmartButton(value?: ButtonProps | string): void {\n\t\tthis.controller.validateSmartButton(value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_tabIndex')\n\tpublic validateTabIndex(value?: number): void {\n\t\tthis.controller.validateTabIndex(value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_touched')\n\tpublic validateTouched(value?: boolean): void {\n\t\tthis.controller.validateTouched(value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_value')\n\tpublic validateValue(value?: string): void {\n\t\tthis.controller.validateValue(value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (componentWillLoad)\n\t */\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"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["validateMultiple","component","value","watchBoolean","InputEmailController","InputTextEmailController","constructor","name","host","super","this","componentWillLoad","_multiple","defaultStyleCss","KolInputEmail","render","ariaDescribedBy","getRenderStates","state","hasList","Array","isArray","_list","length","h","Host","class","_hasValue","email","_alert","_disabled","_error","_hideLabel","_hint","_icon","_id","_readOnly","_required","_smartButton","_touched","onClick","_a","ref","focus","slot","Object","assign","catchRef","title","accessKey","_accessKey","join","undefined","autoCapitalize","autoComplete","_autoComplete","autoCorrect","disabled","multiple","id","list","maxlength","_maxLength","_name","pattern","_pattern","placeholder","_placeholder","readOnly","required","size","_size","spellcheck","type","_value","controller","onFacade","onKeyUp","hostRef","propagateFocus","event","code","propagateSubmitEventToForm","form","onChange","nonce","validateAccessKey","validateAlert","validateAutoComplete","validateDisabled","validateError","validateHideLabel","validateHint","validateIcon","validateId","validateList","validateMaxLength","validateName","validateOn","validatePattern","validatePlaceholder","validateReadOnly","validateRequired","validateSize","validateSmartButton","validateTabIndex","validateTouched","validateValue","addValueChangeListener","v"],"sources":["./src/types/props/multiple.ts","./src/components/input-email/controller.ts","./src/components/input-email/style.css?tag=kol-input-email&mode=default&encapsulation=shadow","./src/components/input-email/component.tsx"],"sourcesContent":["import { Generic } from '@a11y-ui/core';\nimport { watchBoolean } from '../../utils/prop.validators';\n\n/* types */\n/** de\n * Schlatet das Eingabefeld um, sodass es mehrere Eingaben akzeptiert.\n */\n/** en\n * Makes the input accept multiple inputs.\n */\nexport type PropMultiple = {\n\tmultiple: boolean;\n};\n\n/* validator */\nexport const validateMultiple = (component: Generic.Element.Component, value?: boolean): void => {\n\twatchBoolean(component, '_multiple', value);\n};\n","import { Generic } from '@a11y-ui/core';\nimport { watchBoolean } from '../../utils/prop.validators';\nimport { InputTextEmailController } from '../input-text/controller';\nimport { Props, Watches } from './types';\n\nexport class InputEmailController extends InputTextEmailController 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 validateMultiple(value?: boolean): void {\n\t\twatchBoolean(this.component, '_multiple', value);\n\t}\n\n\tpublic componentWillLoad(): void {\n\t\tsuper.componentWillLoad();\n\t\tthis.validateMultiple(this.component._multiple);\n\t}\n}\n","@import url(../input-line.css);\ndiv.input {\n\tcursor: text;\n}\n","import { Component, Element, h, Host, JSX, Prop, State, Watch } from '@stencil/core';\nimport { ButtonProps } from '../../types/button-link';\nimport { Stringified } from '../../types/common';\n\nimport { InputTypeOnDefault, InputTypeOnOff } from '../../types/input/types';\nimport { propagateFocus } from '../../utils/reuse';\nimport { propagateSubmitEventToForm } from '../form/controller';\nimport { KoliBriHorizontalIcon } from '../../types/icon';\nimport { getRenderStates } from '../input/controller';\nimport { InputEmailController } from './controller';\nimport { ComponentApi, States } from './types';\nimport { validateMultiple } from '../../types/props';\nimport { nonce } from '../../utils/dev.utils';\n\n@Component({\n\ttag: 'kol-input-email',\n\tstyleUrls: {\n\t\tdefault: './style.css',\n\t},\n\tshadow: true,\n})\nexport class KolInputEmail implements ComponentApi {\n\t@Element() private readonly host?: HTMLKolInputEmailElement;\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\tprivate readonly onKeyUp = (event: KeyboardEvent) => {\n\t\tif (event.code === 'Enter') {\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 {\n\t\t\tthis.controller.onFacade.onChange(event);\n\t\t}\n\t};\n\n\tpublic render(): JSX.Element {\n\t\tconst { ariaDescribedBy } = getRenderStates(this.state);\n\t\tconst hasList = Array.isArray(this.state._list) && this.state._list.length > 0;\n\t\treturn (\n\t\t\t<Host\n\t\t\t\tclass={{\n\t\t\t\t\t'has-value': this.state._hasValue,\n\t\t\t\t}}\n\t\t\t>\n\t\t\t\t<kol-input\n\t\t\t\t\tclass={{\n\t\t\t\t\t\temail: true,\n\t\t\t\t\t}}\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_icon={this.state._icon}\n\t\t\t\t\t_id={this.state._id}\n\t\t\t\t\t_list={this.state._list}\n\t\t\t\t\t_readOnly={this.state._readOnly}\n\t\t\t\t\t_required={this.state._required}\n\t\t\t\t\t_smartButton={this.state._smartButton}\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\">\n\t\t\t\t\t\t<slot />\n\t\t\t\t\t</span>\n\t\t\t\t\t<input\n\t\t\t\t\t\tref={this.catchRef}\n\t\t\t\t\t\ttitle=\"\"\n\t\t\t\t\t\taccessKey={this.state._accessKey}\n\t\t\t\t\t\taria-describedby={ariaDescribedBy.length > 0 ? ariaDescribedBy.join(' ') : undefined}\n\t\t\t\t\t\taria-labelledby={`${this.state._id}-label`}\n\t\t\t\t\t\tautoCapitalize=\"off\"\n\t\t\t\t\t\tautoComplete={this.state._autoComplete}\n\t\t\t\t\t\tautoCorrect=\"off\"\n\t\t\t\t\t\tdisabled={this.state._disabled}\n\t\t\t\t\t\tmultiple={this.state._multiple}\n\t\t\t\t\t\tid={this.state._id}\n\t\t\t\t\t\tlist={hasList ? `${this.state._id}-list` : undefined}\n\t\t\t\t\t\tmaxlength={this.state._maxLength}\n\t\t\t\t\t\tname={this.state._name}\n\t\t\t\t\t\tpattern={this.state._pattern}\n\t\t\t\t\t\tplaceholder={this.state._placeholder}\n\t\t\t\t\t\treadOnly={this.state._readOnly}\n\t\t\t\t\t\trequired={this.state._required}\n\t\t\t\t\t\tsize={this.state._size}\n\t\t\t\t\t\tslot=\"input\"\n\t\t\t\t\t\tspellcheck=\"false\"\n\t\t\t\t\t\t// title={this.state._title}\n\t\t\t\t\t\ttype=\"email\"\n\t\t\t\t\t\tvalue={this.state._value as string}\n\t\t\t\t\t\t{...this.controller.onFacade}\n\t\t\t\t\t\tonKeyUp={this.onKeyUp}\n\t\t\t\t\t/>\n\t\t\t\t</kol-input>\n\t\t\t</Host>\n\t\t);\n\t}\n\n\tprivate readonly controller: InputEmailController;\n\n\t/**\n\t * Gibt an, mit welcher Tastenkombination man das Input auslösen oder fokussieren kann.\n\t */\n\t@Prop() public _accessKey?: string;\n\n\t/**\n\t * Gibt an, ob die Fehlermeldung vorgelesen werden soll, wenn es eine gibt.\n\t */\n\t@Prop({ mutable: true, reflect: true }) public _alert?: boolean = true;\n\n\t/**\n\t * Gibt an, ob das Eingabefeld autovervollständigt werden kann.\n\t */\n\t@Prop() public _autoComplete?: InputTypeOnOff;\n\n\t/**\n\t * Setzt das Feld in einen inaktiven Zustand, in dem es keine Interaktion erlaubt.\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 * Versteckt das sichtbare Label des Elements.\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 * Ermöglicht das Anzeigen von Icons links und/oder rechts am Rand des Eingabefeldes.\n\t */\n\t@Prop() public _icon?: Stringified<KoliBriHorizontalIcon>;\n\n\t/**\n\t * Gibt die technische ID des Eingabefeldes an.\n\t */\n\t@Prop() public _id?: string;\n\n\t/**\n\t * Gibt die Liste der Vorschlagswörter an.\n\t */\n\t@Prop() public _list?: Stringified<string[]>;\n\n\t/**\n\t * Gibt an, wie viele Zeichen man maximal eingeben kann.\n\t */\n\t@Prop() public _maxLength?: number;\n\n\t/**\n\t * Gibt an, ob mehrere Werte eingegeben werden können.\n\t */\n\t@Prop({ reflect: true }) public _multiple?: boolean;\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 * Gibt ein Prüfpattern für das Eingabefeld an.\n\t */\n\t@Prop() public _pattern?: string;\n\n\t/**\n\t * Gibt den Platzhalter des Eingabefeldes an, wenn es leer ist.\n\t */\n\t@Prop() public _placeholder?: string;\n\n\t/**\n\t * Setzt das Eingabefeld in den schreibgeschützten Modus.\n\t */\n\t@Prop({ reflect: true }) public _readOnly?: boolean;\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 * Setzt die Breite des Eingabefeldes in Buchstabenbreiten.\n\t */\n\t@Prop() public _size?: number;\n\n\t/**\n\t * Ermöglicht eine Schaltfläche ins das Eingabefeld mit einer beliebigen Aktion zu einzufügen (ohne label).\n\t */\n\t@Prop() public _smartButton?: ButtonProps;\n\n\t/**\n\t * Gibt an, welchen Tab-Index dieses Input hat.\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 den Wert des Eingabefeldes an.\n\t */\n\t@Prop() public _value?: string;\n\n\t@State() public state: States = {\n\t\t_autoComplete: 'off',\n\t\t_id: nonce(), // ⚠ required\n\t\t_hasValue: false,\n\t\t_list: [],\n\t};\n\n\tpublic constructor() {\n\t\tthis.controller = new InputEmailController(this, 'email', 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('_autoComplete')\n\tpublic validateAutoComplete(value?: InputTypeOnOff): void {\n\t\tthis.controller.validateAutoComplete(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<KoliBriHorizontalIcon>): 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('_list')\n\tpublic validateList(value?: Stringified<string[]>): void {\n\t\tthis.controller.validateList(value);\n\t}\n\n\t@Watch('_maxLength')\n\tpublic validateMaxLength(value?: number): void {\n\t\tthis.controller.validateMaxLength(value);\n\t}\n\n\t@Watch('_multiple')\n\tpublic validateMultiple(value?: boolean): void {\n\t\tvalidateMultiple(this, 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('_pattern')\n\tpublic validatePattern(value?: string): void {\n\t\tthis.controller.validatePattern(value);\n\t}\n\n\t@Watch('_placeholder')\n\tpublic validatePlaceholder(value?: string): void {\n\t\tthis.controller.validatePlaceholder(value);\n\t}\n\n\t@Watch('_readOnly')\n\tpublic validateReadOnly(value?: boolean): void {\n\t\tthis.controller.validateReadOnly(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('_size')\n\tpublic validateSize(value?: number): void {\n\t\tthis.controller.validateSize(value);\n\t}\n\n\t@Watch('_smartButton')\n\tpublic validateSmartButton(value?: ButtonProps | string): void {\n\t\tthis.controller.validateSmartButton(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('_value')\n\tpublic validateValue(value?: string): void {\n\t\tthis.controller.validateValue(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\n\t\tthis.state._hasValue = !!this.state._value;\n\t\tthis.controller.addValueChangeListener((v) => (this.state._hasValue = !!v));\n\t}\n}\n"],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* KoliBri - The accessible HTML-Standard
|
|
3
3
|
*/
|
|
4
|
-
import{h as t,H as e,r as i,g as a}from"./index-
|
|
4
|
+
import{h as t,H as e,r as i,g as a}from"./index-0e29e47a.js";import{a as s}from"./reuse-3a02afb9.js";import{g as n}from"./controller-53ddde7c.js";import{w as l,b as o}from"./prop.validators-e15a584f.js";import{I as d}from"./controller-icon-26c0e34a.js";import{n as r}from"./dev.utils-157f0499.js";import"./a11y.tipps-1cea9822.js";import"./tab-index-eff012a1.js";import"./index-f4596895.js";import"./icon-dfcf642a.js";class p extends d{constructor(t,e,i){super(t,e,i),this.component=t}validateAccept(t){l(this.component,"_accept",t)}validateMultiple(t){o(this.component,"_multiple",t)}validateRequired(t){o(this.component,"_required",t)}validateValue(t){l(this.component,"_value",t),this.setFormAssociatedValue(this.component._value)}componentWillLoad(){super.componentWillLoad(),this.validateAccept(this.component._accept),this.validateMultiple(this.component._multiple),this.validateRequired(this.component._required),this.validateValue(this.component._value)}}const u=":host{--a11y-min-size:44px}*{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}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}kol-input{display:grid}kol-input [slot='input']{flex-grow:1}input:not([type='checkbox'],[type='radio']),select:not([multiple]){height:2.75em}input:focus,option:focus,select:focus,textarea:focus{outline:0}.input{display:flex;align-items:center}.input>kol-icon{display:grid;height:var(--a11y-min-size);place-items:center}label input[type='file']::-webkit-file-upload-button{display:none}label input[type='file']:before{content:'Datei auswählen'}label input[multiple]:before{content:'Dateien auswählen'}div.input{cursor:pointer}",h=class{render(){const{ariaDescribedBy:i}=n(this.state);return t(e,null,t("kol-input",{class:{file:!0},_disabled:this.state._disabled,_error:this.state._error,_hideLabel:this.state._hideLabel,_hint:this.state._hint,_icon:this.state._icon,_id:this.state._id,_required:this.state._required,_smartButton:this.state._smartButton,_touched:this.state._touched,onClick:()=>{var t;return null===(t=this.ref)||void 0===t?void 0:t.focus()}},t("span",{slot:"label"},t("slot",null)),t("input",Object.assign({ref:this.catchRef,title:"",accept:this.state._accept,accessKey:this.state._accessKey,"aria-describedby":i.length>0?i.join(" "):void 0,"aria-labelledby":`${this.state._id}-label`,autoCapitalize:"off",autoCorrect:"off",disabled:this.state._disabled,id:this.state._id,multiple:this.state._multiple,name:this.state._name,required:this.state._required,slot:"input",spellcheck:"false",type:"file",value:this.state._value},this.controller.onFacade,{onChange:this.onChange}))))}constructor(t){i(this,t),this.catchRef=t=>{this.ref=t,s(this.host,this.ref)},this.onChange=t=>{var e;this.ref instanceof HTMLInputElement&&"file"===this.ref.type&&"function"==typeof(null===(e=this.state._on)||void 0===e?void 0:e.onChange)&&this.state._on.onChange(t,this.ref.files)},this._accept=void 0,this._accessKey=void 0,this._alert=!0,this._disabled=void 0,this._error=void 0,this._hideLabel=void 0,this._hint="",this._icon=void 0,this._id=void 0,this._multiple=void 0,this._name=void 0,this._on=void 0,this._required=void 0,this._smartButton=void 0,this._tabIndex=void 0,this._touched=!1,this._value=void 0,this.state={_id:r()},this.controller=new p(this,"file",this.host)}validateAccept(t){this.controller.validateAccept(t)}validateAccessKey(t){this.controller.validateAccessKey(t)}validateAlert(t){this.controller.validateAlert(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)}validateMultiple(t){this.controller.validateMultiple(t)}validateName(t){this.controller.validateName(t)}validateOn(t){this.controller.validateOn(t)}validateRequired(t){this.controller.validateRequired(t)}validateSmartButton(t){this.controller.validateSmartButton(t)}validateTabIndex(t){this.controller.validateTabIndex(t)}validateTouched(t){this.controller.validateTouched(t)}validateValue(t){this.controller.validateValue(t)}componentWillLoad(){this._alert=!0===this._alert,this._touched=!0===this._touched,this.controller.componentWillLoad()}get host(){return a(this)}static get watchers(){return{_accept:["validateAccept"],_accessKey:["validateAccessKey"],_alert:["validateAlert"],_disabled:["validateDisabled"],_error:["validateError"],_hideLabel:["validateHideLabel"],_hint:["validateHint"],_icon:["validateIcon"],_id:["validateId"],_multiple:["validateMultiple"],_name:["validateName"],_on:["validateOn"],_required:["validateRequired"],_smartButton:["validateSmartButton"],_tabIndex:["validateTabIndex"],_touched:["validateTouched"],_value:["validateValue"]}}};h.style={default:u};export{h as kol_input_file};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["InputFileController","InputIconController","constructor","component","name","host","super","this","validateAccept","value","watchString","validateMultiple","watchBoolean","validateRequired","validateValue","setFormAssociatedValue","_value","componentWillLoad","_accept","_multiple","_required","defaultStyleCss","KolInputFile","render","ariaDiscribedBy","getRenderStates","state","h","Host","_disabled","_error","_hideLabel","_hint","_icon","_id","_smartButton","_touched","slot","Object","assign","ref","catchRef","part","title","accept","accessKey","_accessKey","length","join","undefined","autoCapitalize","autoCorrect","disabled","id","multiple","_name","required","spellcheck","type","controller","onFacade","onChange","hostRef","propergateFocus","event","HTMLInputElement","_a","_on","files","validateAccessKey","validateAlert","validateDisabled","validateError","validateHideLabel","validateHint","validateIcon","validateId","validateName","validateOn","validateSmartButton","validateTabIndex","validateTouched","_alert"],"sources":["./src/components/input-file/controller.ts","./src/components/input-file/style.css?tag=kol-input-file&mode=default&encapsulation=shadow","./src/components/input-file/component.tsx"],"sourcesContent":["import { Generic } from '@a11y-ui/core';\nimport { watchBoolean, watchString } from '../../utils/prop.validators';\nimport { InputIconController } from '../@deprecated/input/controller-icon';\nimport { Props, Watches } from './types';\n\nexport class InputFileController extends InputIconController implements Watches {\n\tprotected readonly component: Generic.Element.Component & Props;\n\n\tpublic constructor(component: Generic.Element.Component & Props, name: string, host?: HTMLElement) {\n\t\tsuper(component, name, host);\n\t\tthis.component = component;\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\tpublic validateAccept(value?: string): void {\n\t\twatchString(this.component, '_accept', value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\tpublic validateMultiple(value?: boolean): void {\n\t\twatchBoolean(this.component, '_multiple', value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\tpublic validateRequired(value?: boolean): void {\n\t\twatchBoolean(this.component, '_required', value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\tpublic validateValue(value?: string): void {\n\t\twatchString(this.component, '_value', value);\n\t\tthis.setFormAssociatedValue(this.component._value as string);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (componentWillLoad)\n\t */\n\tpublic componentWillLoad(): void {\n\t\tsuper.componentWillLoad();\n\t\tthis.validateAccept(this.component._accept);\n\t\tthis.validateMultiple(this.component._multiple);\n\t\tthis.validateRequired(this.component._required);\n\t\tthis.validateValue(this.component._value);\n\t}\n}\n","@import '../input-line.css';\n\nlabel input[type='file']::-webkit-file-upload-button {\n\tdisplay: none;\n}\n\nlabel input[type='file']::before {\n\tcontent: 'Datei auswählen';\n}\n\nlabel input[multiple]::before {\n\tcontent: 'Dateien auswählen';\n}\n","import { Component, Element, h, Host, JSX, Prop, State, Watch } from '@stencil/core';\nimport { ButtonProps } from '../../types/button-link';\nimport { Stringified } from '../../types/common';\n\nimport { InputTypeOnDefault } from '../../types/input/types';\nimport { propergateFocus } from '../../utils/reuse';\nimport { KoliBriHorizontalIcon } from '../../types/icon';\nimport { getRenderStates } from '../input/controller';\nimport { InputFileController } from './controller';\nimport { ComponentApi, States } from './types';\n\n@Component({\n\ttag: 'kol-input-file',\n\tstyleUrls: {\n\t\tdefault: './style.css',\n\t},\n\tshadow: true,\n})\nexport class KolInputFile implements ComponentApi {\n\t@Element() private readonly host?: HTMLKolInputFileElement;\n\tprivate ref?: HTMLInputElement;\n\n\tprivate readonly catchRef = (ref?: HTMLInputElement) => {\n\t\tthis.ref = ref;\n\t\tpropergateFocus(this.host, this.ref);\n\t};\n\n\tpublic render(): JSX.Element {\n\t\tconst { ariaDiscribedBy } = getRenderStates(this.state);\n\t\treturn (\n\t\t\t<Host>\n\t\t\t\t<kol-input\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_icon={this.state._icon}\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_smartButton={this.state._smartButton}\n\t\t\t\t\t_touched={this.state._touched}\n\t\t\t\t>\n\t\t\t\t\t<span slot=\"label\">\n\t\t\t\t\t\t<slot />\n\t\t\t\t\t</span>\n\t\t\t\t\t<input\n\t\t\t\t\t\tref={this.catchRef}\n\t\t\t\t\t\tpart=\"input\"\n\t\t\t\t\t\ttitle=\"\"\n\t\t\t\t\t\taccept={this.state._accept}\n\t\t\t\t\t\taccessKey={this.state._accessKey}\n\t\t\t\t\t\taria-describedby={ariaDiscribedBy.length > 0 ? ariaDiscribedBy.join(' ') : undefined}\n\t\t\t\t\t\taria-labelledby={`${this.state._id}-label`}\n\t\t\t\t\t\tautoCapitalize=\"off\"\n\t\t\t\t\t\tautoCorrect=\"off\"\n\t\t\t\t\t\tdisabled={this.state._disabled}\n\t\t\t\t\t\tid={this.state._id}\n\t\t\t\t\t\tmultiple={this.state._multiple}\n\t\t\t\t\t\tname={this.state._name}\n\t\t\t\t\t\trequired={this.state._required}\n\t\t\t\t\t\tslot=\"input\"\n\t\t\t\t\t\tspellcheck=\"false\"\n\t\t\t\t\t\ttype=\"file\"\n\t\t\t\t\t\tvalue={this.state._value as string}\n\t\t\t\t\t\t{...this.controller.onFacade}\n\t\t\t\t\t\tonChange={this.onChange}\n\t\t\t\t\t/>\n\t\t\t\t</kol-input>\n\t\t\t</Host>\n\t\t);\n\t}\n\n\tprivate readonly controller: InputFileController;\n\n\t/**\n\t * Gibt an, welche Dateiformate erlaubt sind.\n\t */\n\t@Prop() public _accept?: string;\n\n\t/**\n\t * Gibt an, mit welcher Tastenkombination man das Input auslösen oder fokussieren kann.\n\t */\n\t@Prop() public _accessKey?: string;\n\n\t/**\n\t * Gibt an, ob die Fehlermeldung vorgelesen werden soll, wenn es eine gibt.\n\t */\n\t@Prop({ mutable: true, reflect: true }) public _alert?: boolean = true;\n\n\t/**\n\t * Gibt an, ob das Eingabefeld aktiviert oder deaktiviert ist.\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 * Gibt an, ob das Eingabefeld kein sichtbares Label haben soll.\n\t */\n\t@Prop({ reflect: true }) public _hideLabel?: boolean;\n\n\t/**\n\t * Gibt den Text für eine Hinweistext an.\n\t */\n\t@Prop() public _hint?: string = '';\n\n\t/**\n\t * Ermöglicht das Anzeigen von Icons links und/oder rechts am Rand des Eingabefeldes.\n\t */\n\t@Prop() public _icon?: Stringified<KoliBriHorizontalIcon>;\n\n\t/**\n\t * Gibt die technische ID des Eingabefeldes an.\n\t */\n\t@Prop() public _id!: string;\n\n\t/**\n\t * Gibt an, ob mehrere Werte eingegeben werden können.\n\t */\n\t@Prop({ reflect: true }) public _multiple?: boolean;\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 * Gibt an, ob das Eingabefeld ein Pflichtfeld ist.\n\t */\n\t@Prop({ reflect: true }) public _required?: boolean;\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?: ButtonProps;\n\n\t/**\n\t * Gibt an, welchen Tab-Index dieses Input hat.\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 den Wert des Eingabefeldes an.\n\t */\n\t@Prop() public _value?: string;\n\n\t/**\n\t * @see: components/abbr/component.tsx (@State)\n\t */\n\t@State() public state: States = {\n\t\t_id: '…', // ⚠ required\n\t};\n\n\tpublic constructor() {\n\t\tthis.controller = new InputFileController(this, 'file', this.host);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_accept')\n\tpublic validateAccept(value?: string): void {\n\t\tthis.controller.validateAccept(value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_accessKey')\n\tpublic validateAccessKey(value?: string): void {\n\t\tthis.controller.validateAccessKey(value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_alert')\n\tpublic validateAlert(value?: boolean): void {\n\t\tthis.controller.validateAlert(value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_disabled')\n\tpublic validateDisabled(value?: boolean): void {\n\t\tthis.controller.validateDisabled(value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_error')\n\tpublic validateError(value?: string): void {\n\t\tthis.controller.validateError(value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_hideLabel')\n\tpublic validateHideLabel(value?: boolean): void {\n\t\tthis.controller.validateHideLabel(value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_hint')\n\tpublic validateHint(value?: string): void {\n\t\tthis.controller.validateHint(value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_icon')\n\tpublic validateIcon(value?: Stringified<KoliBriHorizontalIcon>): void {\n\t\tthis.controller.validateIcon(value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_id')\n\tpublic validateId(value?: string): void {\n\t\tthis.controller.validateId(value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_multiple')\n\tpublic validateMultiple(value?: boolean): void {\n\t\tthis.controller.validateMultiple(value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_name')\n\tpublic validateName(value?: string): void {\n\t\tthis.controller.validateName(value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_on')\n\tpublic validateOn(value?: InputTypeOnDefault): void {\n\t\tthis.controller.validateOn(value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_required')\n\tpublic validateRequired(value?: boolean): void {\n\t\tthis.controller.validateRequired(value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_smartButton')\n\tpublic validateSmartButton(value?: ButtonProps | string): void {\n\t\tthis.controller.validateSmartButton(value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_tabIndex')\n\tpublic validateTabIndex(value?: number): void {\n\t\tthis.controller.validateTabIndex(value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_touched')\n\tpublic validateTouched(value?: boolean): void {\n\t\tthis.controller.validateTouched(value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_value')\n\tpublic validateValue(value?: string): void {\n\t\tthis.controller.validateValue(value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (componentWillLoad)\n\t */\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) => {\n\t\tif (this.ref instanceof HTMLInputElement && this.ref.type === 'file' && typeof this.state._on?.onChange === 'function') {\n\t\t\tthis.state._on.onChange(event, this.ref.files);\n\t\t}\n\t};\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["InputFileController","InputIconController","constructor","component","name","host","super","this","validateAccept","value","watchString","validateMultiple","watchBoolean","validateRequired","validateValue","setFormAssociatedValue","_value","componentWillLoad","_accept","_multiple","_required","defaultStyleCss","KolInputFile","render","ariaDescribedBy","getRenderStates","state","h","Host","class","file","_disabled","_error","_hideLabel","_hint","_icon","_id","_smartButton","_touched","onClick","_a","ref","focus","slot","Object","assign","catchRef","title","accept","accessKey","_accessKey","length","join","undefined","autoCapitalize","autoCorrect","disabled","id","multiple","_name","required","spellcheck","type","controller","onFacade","onChange","hostRef","propagateFocus","event","HTMLInputElement","_on","files","nonce","validateAccessKey","validateAlert","validateDisabled","validateError","validateHideLabel","validateHint","validateIcon","validateId","validateName","validateOn","validateSmartButton","validateTabIndex","validateTouched","_alert"],"sources":["./src/components/input-file/controller.ts","./src/components/input-file/style.css?tag=kol-input-file&mode=default&encapsulation=shadow","./src/components/input-file/component.tsx"],"sourcesContent":["import { Generic } from '@a11y-ui/core';\nimport { watchBoolean, watchString } from '../../utils/prop.validators';\nimport { InputIconController } from '../@deprecated/input/controller-icon';\nimport { Props, Watches } from './types';\n\nexport class InputFileController extends InputIconController 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 validateAccept(value?: string): void {\n\t\twatchString(this.component, '_accept', value);\n\t}\n\n\tpublic validateMultiple(value?: boolean): void {\n\t\twatchBoolean(this.component, '_multiple', value);\n\t}\n\n\tpublic validateRequired(value?: boolean): void {\n\t\twatchBoolean(this.component, '_required', value);\n\t}\n\n\tpublic validateValue(value?: string): void {\n\t\twatchString(this.component, '_value', value);\n\t\tthis.setFormAssociatedValue(this.component._value as string);\n\t}\n\n\tpublic componentWillLoad(): void {\n\t\tsuper.componentWillLoad();\n\t\tthis.validateAccept(this.component._accept);\n\t\tthis.validateMultiple(this.component._multiple);\n\t\tthis.validateRequired(this.component._required);\n\t\tthis.validateValue(this.component._value);\n\t}\n}\n","@import url(../input-line.css);\nlabel input[type='file']::-webkit-file-upload-button {\n\tdisplay: none;\n}\nlabel input[type='file']:before {\n\tcontent: 'Datei auswählen';\n}\nlabel input[multiple]:before {\n\tcontent: 'Dateien auswählen';\n}\ndiv.input {\n\tcursor: pointer;\n}\n","import { Component, Element, h, Host, JSX, Prop, State, Watch } from '@stencil/core';\nimport { ButtonProps } from '../../types/button-link';\nimport { Stringified } from '../../types/common';\n\nimport { InputTypeOnDefault } from '../../types/input/types';\nimport { propagateFocus } from '../../utils/reuse';\nimport { KoliBriHorizontalIcon } from '../../types/icon';\nimport { getRenderStates } from '../input/controller';\nimport { InputFileController } from './controller';\nimport { ComponentApi, States } from './types';\nimport { nonce } from '../../utils/dev.utils';\n\n@Component({\n\ttag: 'kol-input-file',\n\tstyleUrls: {\n\t\tdefault: './style.css',\n\t},\n\tshadow: true,\n})\nexport class KolInputFile implements ComponentApi {\n\t@Element() private readonly host?: HTMLKolInputFileElement;\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\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\tfile: true,\n\t\t\t\t\t}}\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_icon={this.state._icon}\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_smartButton={this.state._smartButton}\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\">\n\t\t\t\t\t\t<slot />\n\t\t\t\t\t</span>\n\t\t\t\t\t<input\n\t\t\t\t\t\tref={this.catchRef}\n\t\t\t\t\t\ttitle=\"\"\n\t\t\t\t\t\taccept={this.state._accept}\n\t\t\t\t\t\taccessKey={this.state._accessKey}\n\t\t\t\t\t\taria-describedby={ariaDescribedBy.length > 0 ? ariaDescribedBy.join(' ') : undefined}\n\t\t\t\t\t\taria-labelledby={`${this.state._id}-label`}\n\t\t\t\t\t\tautoCapitalize=\"off\"\n\t\t\t\t\t\tautoCorrect=\"off\"\n\t\t\t\t\t\tdisabled={this.state._disabled}\n\t\t\t\t\t\tid={this.state._id}\n\t\t\t\t\t\tmultiple={this.state._multiple}\n\t\t\t\t\t\tname={this.state._name}\n\t\t\t\t\t\trequired={this.state._required}\n\t\t\t\t\t\tslot=\"input\"\n\t\t\t\t\t\tspellcheck=\"false\"\n\t\t\t\t\t\ttype=\"file\"\n\t\t\t\t\t\tvalue={this.state._value as string}\n\t\t\t\t\t\t{...this.controller.onFacade}\n\t\t\t\t\t\tonChange={this.onChange}\n\t\t\t\t\t/>\n\t\t\t\t</kol-input>\n\t\t\t</Host>\n\t\t);\n\t}\n\n\tprivate readonly controller: InputFileController;\n\n\t/**\n\t * Gibt an, welche Dateiformate erlaubt sind.\n\t */\n\t@Prop() public _accept?: string;\n\n\t/**\n\t * Gibt an, mit welcher Tastenkombination man das Input auslösen oder fokussieren kann.\n\t */\n\t@Prop() public _accessKey?: string;\n\n\t/**\n\t * Gibt an, ob die Fehlermeldung vorgelesen werden soll, wenn es eine gibt.\n\t */\n\t@Prop({ mutable: true, reflect: true }) public _alert?: boolean = true;\n\n\t/**\n\t * Setzt das Feld in einen inaktiven Zustand, in dem es keine Interaktion erlaubt.\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 * Versteckt das sichtbare Label des Elements.\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 * Ermöglicht das Anzeigen von Icons links und/oder rechts am Rand des Eingabefeldes.\n\t */\n\t@Prop() public _icon?: Stringified<KoliBriHorizontalIcon>;\n\n\t/**\n\t * Gibt die technische ID des Eingabefeldes an.\n\t */\n\t@Prop() public _id?: string;\n\n\t/**\n\t * Gibt an, ob mehrere Werte eingegeben werden können.\n\t */\n\t@Prop({ reflect: true }) public _multiple?: boolean;\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 * Ermöglicht eine Schaltfläche ins das Eingabefeld mit einer beliebigen Aktion zu einzufügen (ohne label).\n\t */\n\t@Prop() public _smartButton?: ButtonProps;\n\n\t/**\n\t * Gibt an, welchen Tab-Index dieses Input hat.\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 den Wert des Eingabefeldes an.\n\t */\n\t@Prop() public _value?: string;\n\n\t@State() public state: States = {\n\t\t_id: nonce(), // ⚠ required\n\t};\n\n\tpublic constructor() {\n\t\tthis.controller = new InputFileController(this, 'file', this.host);\n\t}\n\n\t@Watch('_accept')\n\tpublic validateAccept(value?: string): void {\n\t\tthis.controller.validateAccept(value);\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('_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<KoliBriHorizontalIcon>): 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('_multiple')\n\tpublic validateMultiple(value?: boolean): void {\n\t\tthis.controller.validateMultiple(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('_smartButton')\n\tpublic validateSmartButton(value?: ButtonProps | string): void {\n\t\tthis.controller.validateSmartButton(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('_value')\n\tpublic validateValue(value?: string): void {\n\t\tthis.controller.validateValue(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) => {\n\t\tif (this.ref instanceof HTMLInputElement && this.ref.type === 'file' && typeof this.state._on?.onChange === 'function') {\n\t\t\tthis.state._on.onChange(event, this.ref.files);\n\t\t}\n\t};\n}\n"],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* KoliBri - The accessible HTML-Standard
|
|
3
3
|
*/
|
|
4
|
-
import{h as t,H as e,r as i,g as a}from"./index-
|
|
4
|
+
import{h as t,H as e,r as i,g as a}from"./index-0e29e47a.js";import{a as s}from"./reuse-3a02afb9.js";import{p as n}from"./controller-0cf6cd75.js";import{g as l}from"./controller-53ddde7c.js";import{a as d,d as o,w as r,b as h,e as p}from"./prop.validators-e15a584f.js";import{I as u}from"./controller-icon-26c0e34a.js";import{n as c}from"./dev.utils-157f0499.js";import"./a11y.tipps-1cea9822.js";import"./tab-index-eff012a1.js";import"./index-f4596895.js";import"./icon-dfcf642a.js";class f extends u{constructor(t,e,i){super(t,e,i),this.numberOrIsoDateRegex=/^\d+$|(^\d{4}-([0]\d|1[0-2])-([0-2]\d|3[01])([T ][0-2]\d:[0-5]\d:[0-5]\d(?:\.\d+)?([+-][0-2]\d:[0-5]\d|Z)?)?$)|(^[0-2]\d:[0-5]\d(:[0-5]\d)?$)/,this.parseToString=t=>"string"==typeof t?t:"number"==typeof t?`${t}`:"object"==typeof t&&t instanceof Date?t.toISOString():"",this.validateIso8601=(t,e,i)=>{const a=parseFloat(e),s=a==e;return d(this.component,t,(t=>void 0===t||""===t||s&&"number"==typeof a||this.numberOrIsoDateRegex.test(t)),new Set(["number","Date","string{ISO-8601}"]),this.parseToString(e),{hooks:{afterPatch:t=>{"string"==typeof t&&i&&i(t)}}})},this.component=t}validateAutoComplete(t){d(this.component,"_autoComplete",(t=>"string"==typeof t&&("on"===t||"off"===t)),new Set(["on | off"]),t)}validateList(t){o(this.component,"_list",(t=>"string"==typeof t),t)}onChange(t){super.onChange(t),!!t.target.value!=!!this.component._value&&(this.component._value=t.target.value)}validateMax(t){this.validateIso8601("_max",t)}validateMin(t){this.validateIso8601("_min",t)}validatePlaceholder(t){r(this.component,"_placeholder",t)}validateReadOnly(t){h(this.component,"_readOnly",t)}validateRequired(t){h(this.component,"_required",t)}validateStep(t){p(this.component,"_step",t)}validateType(t){d(this.component,"_type",(t=>"string"==typeof t&&("date"===t||"datetime-local"===t||"month"===t||"number"===t||"time"===t||"week"===t)),new Set(["String {date, datetime-local, month, number, time, week}"]),t)}validateValue(t){this.validateValueEx(t)}validateValueEx(t,e){this.validateIso8601("_value",t,e)}componentWillLoad(){super.componentWillLoad(),this.validateAutoComplete(this.component._autoComplete),this.validateMax(this.component._max),this.validateMin(this.component._min),this.validateList(this.component._list),this.validateReadOnly(this.component._readOnly),this.validateRequired(this.component._required),this.validateStep(this.component._step),this.validateType(this.component._type),this.validateValue(this.component._value)}}const m=":host{--a11y-min-size:44px}*{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}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}kol-input{display:grid}kol-input [slot='input']{flex-grow:1}input:not([type='checkbox'],[type='radio']),select:not([multiple]){height:2.75em}input:focus,option:focus,select:focus,textarea:focus{outline:0}.input{display:flex;align-items:center}.input>kol-icon{display:grid;height:var(--a11y-min-size);place-items:center}div.input{cursor:text}",y=class{render(){const{ariaDescribedBy:i}=l(this.state),a=Array.isArray(this.state._list)&&this.state._list.length>0;return t(e,{class:{"has-value":this.state._hasValue}},t("kol-input",{class:{[this.state._type]:!0},_disabled:this.state._disabled,_error:this.state._error,_hideLabel:this.state._hideLabel,_hint:this.state._hint,_icon:this.state._icon,_id:this.state._id,_list:this.state._list,_readOnly:this.state._readOnly,_required:this.state._required,_smartButton:this.state._smartButton,_touched:this.state._touched}," ",t("span",{slot:"label"},t("slot",null)),t("input",Object.assign({ref:this.catchRef,title:"",accessKey:this.state._accessKey,"aria-describedby":i.length>0?i.join(" "):void 0,"aria-labelledby":`${this.state._id}-label`,autoCapitalize:"off",autoComplete:this.state._autoComplete,autoCorrect:"off",disabled:this.state._disabled,id:this.state._id,list:a?`${this.state._id}-list`:void 0,max:this.state._max,min:this.state._min,name:this.state._name,readOnly:this.state._readOnly,required:this.state._required,placeholder:this.state._placeholder,slot:"input",step:this.state._step,spellcheck:"false",type:this.state._type,value:this.state._value},this.controller.onFacade,{onKeyUp:this.onKeyUp}))))}constructor(t){i(this,t),this.catchRef=t=>{this.ref=t,s(this.host,this.ref)},this.onKeyUp=t=>{"Enter"===t.code?n({form:this.host,ref:this.ref}):this.controller.onFacade.onChange(t)},this._accessKey=void 0,this._alert=!0,this._autoComplete=void 0,this._disabled=void 0,this._error=void 0,this._hideLabel=void 0,this._hint="",this._icon=void 0,this._id=void 0,this._list=void 0,this._max=void 0,this._min=void 0,this._name=void 0,this._on=void 0,this._placeholder=void 0,this._readOnly=void 0,this._required=void 0,this._smartButton=void 0,this._step=void 0,this._tabIndex=void 0,this._touched=!1,this._type="number",this._value=void 0,this.state={_autoComplete:"off",_id:c(),_hasValue:!1,_list:[],_type:"number"},this.controller=new f(this,"number",this.host)}validateAccessKey(t){this.controller.validateAccessKey(t)}validateAlert(t){this.controller.validateAlert(t)}validateAutoComplete(t){this.controller.validateAutoComplete(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)}validateList(t){this.controller.validateList(t)}validateMax(t){this.controller.validateMax(t)}validateMin(t){this.controller.validateMin(t)}validateName(t){this.controller.validateName(t)}validateOn(t){this.controller.validateOn(t)}validatePlaceholder(t){this.controller.validatePlaceholder(t)}validateReadOnly(t){this.controller.validateReadOnly(t)}validateRequired(t){this.controller.validateRequired(t)}validateSmartButton(t){this.controller.validateSmartButton(t)}validateStep(t){this.controller.validateStep(t)}validateTabIndex(t){this.controller.validateTabIndex(t)}validateTouched(t){this.controller.validateTouched(t)}validateType(t){this.controller.validateType(t)}validateValue(t){this.controller.validateValueEx(t,(t=>{""===t&&this.ref&&(this.ref.value="")}))}componentWillLoad(){this._alert=!0===this._alert,this._touched=!0===this._touched,this.controller.componentWillLoad(),this.state._hasValue=!!this.state._value,this.controller.addValueChangeListener((t=>this.state._hasValue=!!t))}get host(){return a(this)}static get watchers(){return{_accessKey:["validateAccessKey"],_alert:["validateAlert"],_autoComplete:["validateAutoComplete"],_disabled:["validateDisabled"],_error:["validateError"],_hideLabel:["validateHideLabel"],_hint:["validateHint"],_icon:["validateIcon"],_id:["validateId"],_list:["validateList"],_max:["validateMax"],_min:["validateMin"],_name:["validateName"],_on:["validateOn"],_placeholder:["validatePlaceholder"],_readOnly:["validateReadOnly"],_required:["validateRequired"],_smartButton:["validateSmartButton"],_step:["validateStep"],_tabIndex:["validateTabIndex"],_touched:["validateTouched"],_type:["validateType"],_value:["validateValue"]}}};y.style={default:m};export{y as kol_input_number};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["InputNumberController","InputIconController","constructor","component","name","host","super","this","numberOrIsoDateRegex","parseToString","value","Date","toISOString","validateIso8601","propName","afterPatch","parsedValue","parseFloat","valueMatched","watchValidator","undefined","test","Set","hooks","validateAutoComplete","validateList","watchJsonArrayString","item","onChange","event","target","_value","validateMax","validateMin","validatePlaceholder","watchString","validateReadOnly","watchBoolean","validateRequired","validateStep","watchNumber","validateType","validateValue","validateValueEx","componentWillLoad","_autoComplete","_max","_min","_list","_readOnly","_required","_step","_type","defaultStyleCss","KolInputNumber","render","ariaDiscribedBy","getRenderStates","state","hasList","Array","isArray","length","h","Host","_disabled","_error","_hideLabel","_hint","_icon","_id","_smartButton","_touched","slot","Object","assign","ref","catchRef","part","title","accessKey","_accessKey","join","autoCapitalize","autoComplete","autoCorrect","disabled","id","list","max","min","_name","readOnly","required","placeholder","_placeholder","step","spellcheck","type","controller","onFacade","onKeyUp","hostRef","propergateFocus","code","propergateSubmitEventToForm","form","validateAccessKey","validateAlert","validateDisabled","validateError","validateHideLabel","validateHint","validateIcon","validateId","validateName","validateOn","validateSmartButton","validateTabIndex","validateTouched","v","_alert"],"sources":["./src/components/input-number/controller.ts","./src/components/input-number/style.css?tag=kol-input-number&mode=default&encapsulation=shadow","./src/components/input-number/component.tsx"],"sourcesContent":["import { Generic } from '@a11y-ui/core';\nimport { Stringified } from '../../types/common';\nimport { InputNumberType } from '../../types/input/control/number';\nimport { Iso8601 } from '../../types/input/iso8601';\nimport { InputTypeOnOff } from '../../types/input/types';\nimport { watchBoolean, watchJsonArrayString, watchNumber, watchString, watchValidator } from '../../utils/prop.validators';\nimport { InputIconController } from '../@deprecated/input/controller-icon';\nimport { Props, Watches } from './types';\n\nexport class InputNumberController extends InputIconController implements Watches {\n\t/**\n\t * Regex to check whether a string is a number or a date in ISO-8601 format.\n\t * Test the regex here: https://regex101.com/r/ddGR4V/1\n\t */\n\tprivate readonly numberOrIsoDateRegex =\n\t\t/^\\d+$|(^\\d{4}-([0]\\d|1[0-2])-([0-2]\\d|3[01])([T ][0-2]\\d:[0-5]\\d:[0-5]\\d(?:\\.\\d+)?([+-][0-2]\\d:[0-5]\\d|Z)?)?$)|(^[0-2]\\d:[0-5]\\d(:[0-5]\\d)?$)/;\n\n\tprotected readonly component: Generic.Element.Component & Props;\n\n\tpublic constructor(component: Generic.Element.Component & Props, name: string, host?: HTMLElement) {\n\t\tsuper(component, name, host);\n\t\tthis.component = component;\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\tpublic validateAutoComplete(value?: InputTypeOnOff): void {\n\t\twatchValidator(\n\t\t\tthis.component,\n\t\t\t'_autoComplete',\n\t\t\t(value): boolean => typeof value === 'string' && (value === 'on' || value === 'off'),\n\t\t\tnew Set(['on | off']),\n\t\t\tvalue\n\t\t);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\tpublic validateList(value?: Stringified<string[]>): void {\n\t\twatchJsonArrayString(this.component, '_list', (item: string) => typeof item === 'string', value);\n\t}\n\n\tprivate readonly parseToString = (value?: number | Date | string | null) => {\n\t\tif (typeof value === 'string') {\n\t\t\treturn value;\n\t\t}\n\t\tif (typeof value === 'number') {\n\t\t\treturn `${value}`;\n\t\t}\n\t\tif (typeof value === 'object' && value instanceof Date) {\n\t\t\treturn value.toISOString();\n\t\t}\n\t\treturn '';\n\t};\n\n\tprivate readonly validateIso8601 = (propName: string, value?: number | Iso8601 | null, afterPatch?: (v: string) => void) => {\n\t\tconst parsedValue = parseFloat(value as string);\n\t\tconst valueMatched = parsedValue == value;\n\t\treturn watchValidator(\n\t\t\tthis.component,\n\t\t\tpropName,\n\t\t\t(value): boolean => value === undefined || value === '' || (valueMatched && typeof parsedValue === 'number') || this.numberOrIsoDateRegex.test(value),\n\t\t\tnew Set(['number', 'Date', 'string{ISO-8601}']),\n\t\t\tthis.parseToString(value),\n\t\t\t{\n\t\t\t\thooks: {\n\t\t\t\t\tafterPatch: (value) => {\n\t\t\t\t\t\tif (typeof value === 'string' && afterPatch) {\n\t\t\t\t\t\t\tafterPatch(value);\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t}\n\t\t);\n\t};\n\n\tprotected onChange(event: Event): void {\n\t\tsuper.onChange(event);\n\n\t\t// set the value here when the value is switched between blank and set (or vice versa) to enable value resets via setting null as value.\n\t\tif (!!(event.target as HTMLInputElement).value !== !!this.component._value) {\n\t\t\tthis.component._value = (event.target as HTMLInputElement).value as number | Iso8601;\n\t\t}\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\tpublic validateMax(value?: number | Iso8601): void {\n\t\tthis.validateIso8601('_max', value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\tpublic validateMin(value?: number | Iso8601): void {\n\t\tthis.validateIso8601('_min', value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\tpublic validatePlaceholder(value?: string): void {\n\t\twatchString(this.component, '_placeholder', value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\tpublic validateReadOnly(value?: boolean): void {\n\t\twatchBoolean(this.component, '_readOnly', value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\tpublic validateRequired(value?: boolean): void {\n\t\twatchBoolean(this.component, '_required', value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\tpublic validateStep(value?: number): void {\n\t\twatchNumber(this.component, '_step', value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t * @deprecated\n\t */\n\tpublic validateType(value?: InputNumberType): void {\n\t\twatchValidator(\n\t\t\tthis.component,\n\t\t\t'_type',\n\t\t\t(value): boolean =>\n\t\t\t\ttypeof value === 'string' &&\n\t\t\t\t(value === 'date' || value === 'datetime-local' || value === 'month' || value === 'number' || value === 'time' || value === 'week'),\n\t\t\tnew Set(['String {date, datetime-local, month, number, time, week}']),\n\t\t\tvalue\n\t\t);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\tpublic validateValue(value?: number | Iso8601 | null): void {\n\t\tthis.validateValueEx(value);\n\t}\n\n\t/**\n\t * Overload of validate value. Extends by an after patch callback function.\n\t */\n\tpublic validateValueEx(value?: number | Iso8601 | null, afterPatch?: (v: string) => void): void {\n\t\tthis.validateIso8601('_value', value, afterPatch);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (componentWillLoad)\n\t */\n\tpublic componentWillLoad(): void {\n\t\tsuper.componentWillLoad();\n\t\tthis.validateAutoComplete(this.component._autoComplete);\n\t\tthis.validateMax(this.component._max);\n\t\tthis.validateMin(this.component._min);\n\t\tthis.validateList(this.component._list);\n\t\tthis.validateReadOnly(this.component._readOnly);\n\t\tthis.validateRequired(this.component._required);\n\t\tthis.validateStep(this.component._step);\n\t\tthis.validateType(this.component._type);\n\t\tthis.validateValue(this.component._value);\n\t}\n}\n","@import '../input-line.css';\n","import { Component, Element, h, Host, JSX, Prop, State, Watch } from '@stencil/core';\nimport { ButtonProps } from '../../types/button-link';\nimport { Stringified } from '../../types/common';\nimport { InputNumberType } from '../../types/input/control/number';\nimport { Iso8601 } from '../../types/input/iso8601';\nimport { InputTypeOnDefault, InputTypeOnOff } from '../../types/input/types';\nimport { propergateFocus } from '../../utils/reuse';\nimport { propergateSubmitEventToForm } from '../form/controller';\nimport { KoliBriHorizontalIcon } from '../../types/icon';\nimport { getRenderStates } from '../input/controller';\nimport { InputNumberController } from './controller';\nimport { ComponentApi, States } from './types';\n\n@Component({\n\ttag: 'kol-input-number',\n\tstyleUrls: {\n\t\tdefault: './style.css',\n\t},\n\tshadow: true,\n})\nexport class KolInputNumber implements ComponentApi {\n\t@Element() private readonly host?: HTMLKolInputNumberElement;\n\tprivate ref?: HTMLInputElement;\n\n\tprivate readonly catchRef = (ref?: HTMLInputElement) => {\n\t\tthis.ref = ref;\n\t\tpropergateFocus(this.host, this.ref);\n\t};\n\n\tprivate readonly onKeyUp = (event: KeyboardEvent) => {\n\t\tif (event.code === 'Enter') {\n\t\t\tpropergateSubmitEventToForm({\n\t\t\t\tform: this.host,\n\t\t\t\tref: this.ref,\n\t\t\t});\n\t\t} else {\n\t\t\tthis.controller.onFacade.onChange(event);\n\t\t}\n\t};\n\n\tpublic render(): JSX.Element {\n\t\tconst { ariaDiscribedBy } = getRenderStates(this.state);\n\t\tconst hasList = Array.isArray(this.state._list) && this.state._list.length > 0;\n\t\treturn (\n\t\t\t<Host>\n\t\t\t\t<kol-input\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_icon={this.state._icon}\n\t\t\t\t\t_id={this.state._id}\n\t\t\t\t\t_list={this.state._list}\n\t\t\t\t\t_readOnly={this.state._readOnly}\n\t\t\t\t\t_required={this.state._required}\n\t\t\t\t\t_smartButton={this.state._smartButton}\n\t\t\t\t\t_touched={this.state._touched}\n\t\t\t\t>\n\t\t\t\t\t{' '}\n\t\t\t\t\t<span slot=\"label\">\n\t\t\t\t\t\t<slot />\n\t\t\t\t\t</span>\n\t\t\t\t\t<input\n\t\t\t\t\t\tref={this.catchRef}\n\t\t\t\t\t\tpart=\"input\"\n\t\t\t\t\t\ttitle=\"\"\n\t\t\t\t\t\taccessKey={this.state._accessKey}\n\t\t\t\t\t\taria-describedby={ariaDiscribedBy.length > 0 ? ariaDiscribedBy.join(' ') : undefined}\n\t\t\t\t\t\taria-labelledby={`${this.state._id}-label`}\n\t\t\t\t\t\tautoCapitalize=\"off\"\n\t\t\t\t\t\tautoComplete={this.state._autoComplete}\n\t\t\t\t\t\tautoCorrect=\"off\"\n\t\t\t\t\t\tdisabled={this.state._disabled}\n\t\t\t\t\t\tid={this.state._id}\n\t\t\t\t\t\tlist={hasList ? `${this.state._id}-list` : undefined}\n\t\t\t\t\t\tmax={this.state._max}\n\t\t\t\t\t\tmin={this.state._min}\n\t\t\t\t\t\tname={this.state._name}\n\t\t\t\t\t\treadOnly={this.state._readOnly}\n\t\t\t\t\t\trequired={this.state._required}\n\t\t\t\t\t\tplaceholder={this.state._placeholder}\n\t\t\t\t\t\tslot=\"input\"\n\t\t\t\t\t\tstep={this.state._step}\n\t\t\t\t\t\tspellcheck=\"false\"\n\t\t\t\t\t\ttype={this.state._type}\n\t\t\t\t\t\tvalue={this.state._value as string}\n\t\t\t\t\t\t{...this.controller.onFacade}\n\t\t\t\t\t\tonKeyUp={this.onKeyUp}\n\t\t\t\t\t/>\n\t\t\t\t</kol-input>\n\t\t\t</Host>\n\t\t);\n\t}\n\n\tprivate readonly controller: InputNumberController;\n\n\t/**\n\t * Gibt an, mit welcher Tastenkombination man das Input auslösen oder fokussieren kann.\n\t */\n\t@Prop() public _accessKey?: string;\n\n\t/**\n\t * Gibt an, ob die Fehlermeldung vorgelesen werden soll, wenn es eine gibt.\n\t */\n\t@Prop({ mutable: true, reflect: true }) public _alert?: boolean = true;\n\n\t/**\n\t * Gibt an, ob das Eingabefeld autovervollständigt werden kann.\n\t */\n\t@Prop() public _autoComplete?: InputTypeOnOff;\n\n\t/**\n\t * Gibt an, ob das Eingabefeld aktiviert oder deaktiviert ist.\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 * Gibt an, ob das Eingabefeld kein sichtbares Label haben soll.\n\t */\n\t@Prop({ reflect: true }) public _hideLabel?: boolean;\n\n\t/**\n\t * Gibt den Text für eine Hinweistext an.\n\t */\n\t@Prop() public _hint?: string = '';\n\n\t/**\n\t * Ermöglicht das Anzeigen von Icons links und/oder rechts am Rand des Eingabefeldes.\n\t */\n\t@Prop() public _icon?: Stringified<KoliBriHorizontalIcon>;\n\n\t/**\n\t * Gibt die technische ID des Eingabefeldes an.\n\t */\n\t@Prop() public _id!: string;\n\n\t/**\n\t * Gibt die Liste der Vorschlagszahlen an.\n\t */\n\t@Prop() public _list?: Stringified<string[]>;\n\n\t/**\n\t * Gibt den größtmöglichen Zahlenwert an.\n\t */\n\t@Prop() public _max?: number | Iso8601;\n\n\t/**\n\t * Gibt den kleinstmöglichen Zahlenwert an.\n\t */\n\t@Prop() public _min?: number | Iso8601;\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 * Gibt den Platzhalter des Eingabefeldes an, wenn es leer ist.\n\t */\n\t@Prop() public _placeholder?: string;\n\n\t/**\n\t * Gibt an, ob das Eingabefeld nur lesend ist.\n\t */\n\t@Prop({ reflect: true }) public _readOnly?: boolean;\n\n\t/**\n\t * Gibt an, ob das Eingabefeld ein Pflichtfeld ist.\n\t */\n\t@Prop({ reflect: true }) public _required?: boolean;\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?: ButtonProps;\n\n\t/**\n\t * Gibt die Schrittweite der Wertveränderung an\n\t */\n\t@Prop() public _step?: number;\n\n\t/**\n\t * Gibt an, welchen Tab-Index dieses Input hat.\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, ob es ein DateTime-, Date-, Month-, Week-, Time-, DateTime-Local-, Number-Eingabefeld ist.\n\t *\n\t * @deprecated Das W3C hat die Date-Typen in eine eigene Gruppe zusammengefasst. Verwende hierfür die InputDate-Komponente.\n\t */\n\t@Prop() public _type?: InputNumberType = 'number';\n\n\t/**\n\t * Gibt den Wert des Eingabefeldes an.\n\t */\n\t@Prop({ mutable: true }) public _value?: number | Iso8601 | null;\n\n\t/**\n\t * @see: components/abbr/component.tsx (@State)\n\t */\n\t@State() public state: States = {\n\t\t_autoComplete: 'off',\n\t\t_id: '…', // ⚠ required\n\t\t_list: [],\n\n\t\t_type: 'number',\n\t};\n\n\tpublic constructor() {\n\t\tthis.controller = new InputNumberController(this, 'number', this.host);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_accessKey')\n\tpublic validateAccessKey(value?: string): void {\n\t\tthis.controller.validateAccessKey(value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_alert')\n\tpublic validateAlert(value?: boolean): void {\n\t\tthis.controller.validateAlert(value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_autoComplete')\n\tpublic validateAutoComplete(value?: InputTypeOnOff): void {\n\t\tthis.controller.validateAutoComplete(value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_disabled')\n\tpublic validateDisabled(value?: boolean): void {\n\t\tthis.controller.validateDisabled(value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_error')\n\tpublic validateError(value?: string): void {\n\t\tthis.controller.validateError(value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_hideLabel')\n\tpublic validateHideLabel(value?: boolean): void {\n\t\tthis.controller.validateHideLabel(value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_hint')\n\tpublic validateHint(value?: string): void {\n\t\tthis.controller.validateHint(value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_icon')\n\tpublic validateIcon(value?: Stringified<KoliBriHorizontalIcon>): void {\n\t\tthis.controller.validateIcon(value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_id')\n\tpublic validateId(value?: string): void {\n\t\tthis.controller.validateId(value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_list')\n\tpublic validateList(value?: Stringified<string[]>): void {\n\t\tthis.controller.validateList(value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_max')\n\tpublic validateMax(value?: number | Iso8601): void {\n\t\tthis.controller.validateMax(value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_min')\n\tpublic validateMin(value?: number | Iso8601): void {\n\t\tthis.controller.validateMin(value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_name')\n\tpublic validateName(value?: string): void {\n\t\tthis.controller.validateName(value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_on')\n\tpublic validateOn(value?: InputTypeOnDefault): void {\n\t\tthis.controller.validateOn(value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_placeholder')\n\tpublic validatePlaceholder(value?: string): void {\n\t\tthis.controller.validatePlaceholder(value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_readOnly')\n\tpublic validateReadOnly(value?: boolean): void {\n\t\tthis.controller.validateReadOnly(value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_required')\n\tpublic validateRequired(value?: boolean): void {\n\t\tthis.controller.validateRequired(value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_smartButton')\n\tpublic validateSmartButton(value?: ButtonProps | string): void {\n\t\tthis.controller.validateSmartButton(value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_step')\n\tpublic validateStep(value?: number): void {\n\t\tthis.controller.validateStep(value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_tabIndex')\n\tpublic validateTabIndex(value?: number): void {\n\t\tthis.controller.validateTabIndex(value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_touched')\n\tpublic validateTouched(value?: boolean): void {\n\t\tthis.controller.validateTouched(value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t * @deprecated\n\t */\n\t@Watch('_type')\n\tpublic validateType(value?: InputNumberType): void {\n\t\tthis.controller.validateType(value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t */\n\t@Watch('_value')\n\tpublic validateValue(value?: number | Iso8601 | null): void {\n\t\tthis.controller.validateValueEx(value, (v) => {\n\t\t\tif (v === '' && this.ref) {\n\t\t\t\tthis.ref.value = '';\n\t\t\t}\n\t\t});\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (componentWillLoad)\n\t */\n\tpublic componentWillLoad(): void {\n\t\tthis._alert = this._alert === true;\n\t\tthis._touched = this._touched === true;\n\t\tthis.controller.componentWillLoad();\n\t}\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["InputNumberController","InputIconController","constructor","component","name","host","super","this","numberOrIsoDateRegex","parseToString","value","Date","toISOString","validateIso8601","propName","afterPatch","parsedValue","parseFloat","valueMatched","watchValidator","undefined","test","Set","hooks","validateAutoComplete","validateList","watchJsonArrayString","item","onChange","event","target","_value","validateMax","validateMin","validatePlaceholder","watchString","validateReadOnly","watchBoolean","validateRequired","validateStep","watchNumber","validateType","validateValue","validateValueEx","componentWillLoad","_autoComplete","_max","_min","_list","_readOnly","_required","_step","_type","defaultStyleCss","KolInputNumber","render","ariaDescribedBy","getRenderStates","state","hasList","Array","isArray","length","h","Host","class","_hasValue","_disabled","_error","_hideLabel","_hint","_icon","_id","_smartButton","_touched","slot","Object","assign","ref","catchRef","title","accessKey","_accessKey","join","autoCapitalize","autoComplete","autoCorrect","disabled","id","list","max","min","_name","readOnly","required","placeholder","_placeholder","step","spellcheck","type","controller","onFacade","onKeyUp","hostRef","propagateFocus","code","propagateSubmitEventToForm","form","nonce","validateAccessKey","validateAlert","validateDisabled","validateError","validateHideLabel","validateHint","validateIcon","validateId","validateName","validateOn","validateSmartButton","validateTabIndex","validateTouched","v","_alert","addValueChangeListener"],"sources":["./src/components/input-number/controller.ts","./src/components/input-number/style.css?tag=kol-input-number&mode=default&encapsulation=shadow","./src/components/input-number/component.tsx"],"sourcesContent":["import { Generic } from '@a11y-ui/core';\nimport { Stringified } from '../../types/common';\nimport { InputNumberType } from '../../types/input/control/number';\nimport { Iso8601 } from '../../types/input/iso8601';\nimport { InputTypeOnOff } from '../../types/input/types';\nimport { watchBoolean, watchJsonArrayString, watchNumber, watchString, watchValidator } from '../../utils/prop.validators';\nimport { InputIconController } from '../@deprecated/input/controller-icon';\nimport { Props, Watches } from './types';\n\nexport class InputNumberController extends InputIconController implements Watches {\n\t/**\n\t * Regex to check whether a string is a number or a date in ISO-8601 format.\n\t * Test the regex here: https://regex101.com/r/ddGR4V/1\n\t */\n\tprivate readonly numberOrIsoDateRegex =\n\t\t/^\\d+$|(^\\d{4}-([0]\\d|1[0-2])-([0-2]\\d|3[01])([T ][0-2]\\d:[0-5]\\d:[0-5]\\d(?:\\.\\d+)?([+-][0-2]\\d:[0-5]\\d|Z)?)?$)|(^[0-2]\\d:[0-5]\\d(:[0-5]\\d)?$)/;\n\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 validateAutoComplete(value?: InputTypeOnOff): void {\n\t\twatchValidator(\n\t\t\tthis.component,\n\t\t\t'_autoComplete',\n\t\t\t(value): boolean => typeof value === 'string' && (value === 'on' || value === 'off'),\n\t\t\tnew Set(['on | off']),\n\t\t\tvalue\n\t\t);\n\t}\n\n\tpublic validateList(value?: Stringified<string[]>): void {\n\t\twatchJsonArrayString(this.component, '_list', (item: string) => typeof item === 'string', value);\n\t}\n\n\tprivate readonly parseToString = (value?: number | Date | string | null) => {\n\t\tif (typeof value === 'string') {\n\t\t\treturn value;\n\t\t}\n\t\tif (typeof value === 'number') {\n\t\t\treturn `${value}`;\n\t\t}\n\t\tif (typeof value === 'object' && value instanceof Date) {\n\t\t\treturn value.toISOString();\n\t\t}\n\t\treturn '';\n\t};\n\n\tprivate readonly validateIso8601 = (propName: string, value?: number | Iso8601 | null, afterPatch?: (v: string) => void) => {\n\t\tconst parsedValue = parseFloat(value as string);\n\t\tconst valueMatched = parsedValue == value;\n\t\treturn watchValidator(\n\t\t\tthis.component,\n\t\t\tpropName,\n\t\t\t(value): boolean => value === undefined || value === '' || (valueMatched && typeof parsedValue === 'number') || this.numberOrIsoDateRegex.test(value),\n\t\t\tnew Set(['number', 'Date', 'string{ISO-8601}']),\n\t\t\tthis.parseToString(value),\n\t\t\t{\n\t\t\t\thooks: {\n\t\t\t\t\tafterPatch: (value) => {\n\t\t\t\t\t\tif (typeof value === 'string' && afterPatch) {\n\t\t\t\t\t\t\tafterPatch(value);\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t}\n\t\t);\n\t};\n\n\tprotected onChange(event: Event): void {\n\t\tsuper.onChange(event);\n\n\t\t// set the value here when the value is switched between blank and set (or vice versa) to enable value resets via setting null as value.\n\t\tif (!!(event.target as HTMLInputElement).value !== !!this.component._value) {\n\t\t\tthis.component._value = (event.target as HTMLInputElement).value as number | Iso8601;\n\t\t}\n\t}\n\n\tpublic validateMax(value?: number | Iso8601): void {\n\t\tthis.validateIso8601('_max', value);\n\t}\n\n\tpublic validateMin(value?: number | Iso8601): void {\n\t\tthis.validateIso8601('_min', value);\n\t}\n\n\tpublic validatePlaceholder(value?: string): void {\n\t\twatchString(this.component, '_placeholder', value);\n\t}\n\n\tpublic validateReadOnly(value?: boolean): void {\n\t\twatchBoolean(this.component, '_readOnly', value);\n\t}\n\n\tpublic validateRequired(value?: boolean): void {\n\t\twatchBoolean(this.component, '_required', value);\n\t}\n\n\tpublic validateStep(value?: number): void {\n\t\twatchNumber(this.component, '_step', value);\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t * @deprecated\n\t */\n\tpublic validateType(value?: InputNumberType): void {\n\t\twatchValidator(\n\t\t\tthis.component,\n\t\t\t'_type',\n\t\t\t(value): boolean =>\n\t\t\t\ttypeof value === 'string' &&\n\t\t\t\t(value === 'date' || value === 'datetime-local' || value === 'month' || value === 'number' || value === 'time' || value === 'week'),\n\t\t\tnew Set(['String {date, datetime-local, month, number, time, week}']),\n\t\t\tvalue\n\t\t);\n\t}\n\n\tpublic validateValue(value?: number | Iso8601 | null): void {\n\t\tthis.validateValueEx(value);\n\t}\n\n\t/**\n\t * Overload of validate value. Extends by an after patch callback function.\n\t */\n\tpublic validateValueEx(value?: number | Iso8601 | null, afterPatch?: (v: string) => void): void {\n\t\tthis.validateIso8601('_value', value, afterPatch);\n\t}\n\n\tpublic componentWillLoad(): void {\n\t\tsuper.componentWillLoad();\n\t\tthis.validateAutoComplete(this.component._autoComplete);\n\t\tthis.validateMax(this.component._max);\n\t\tthis.validateMin(this.component._min);\n\t\tthis.validateList(this.component._list);\n\t\tthis.validateReadOnly(this.component._readOnly);\n\t\tthis.validateRequired(this.component._required);\n\t\tthis.validateStep(this.component._step);\n\t\tthis.validateType(this.component._type);\n\t\tthis.validateValue(this.component._value);\n\t}\n}\n","@import url(../input-line.css);\ndiv.input {\n\tcursor: text;\n}\n","import { Component, Element, h, Host, JSX, Prop, State, Watch } from '@stencil/core';\nimport { ButtonProps } from '../../types/button-link';\nimport { Stringified } from '../../types/common';\nimport { InputNumberType } from '../../types/input/control/number';\nimport { Iso8601 } from '../../types/input/iso8601';\nimport { InputTypeOnDefault, InputTypeOnOff } from '../../types/input/types';\nimport { propagateFocus } from '../../utils/reuse';\nimport { propagateSubmitEventToForm } from '../form/controller';\nimport { KoliBriHorizontalIcon } from '../../types/icon';\nimport { getRenderStates } from '../input/controller';\nimport { InputNumberController } from './controller';\nimport { ComponentApi, States } from './types';\nimport { nonce } from '../../utils/dev.utils';\n\n@Component({\n\ttag: 'kol-input-number',\n\tstyleUrls: {\n\t\tdefault: './style.css',\n\t},\n\tshadow: true,\n})\nexport class KolInputNumber implements ComponentApi {\n\t@Element() private readonly host?: HTMLKolInputNumberElement;\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\tprivate readonly onKeyUp = (event: KeyboardEvent) => {\n\t\tif (event.code === 'Enter') {\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 {\n\t\t\tthis.controller.onFacade.onChange(event);\n\t\t}\n\t};\n\n\tpublic render(): JSX.Element {\n\t\tconst { ariaDescribedBy } = getRenderStates(this.state);\n\t\tconst hasList = Array.isArray(this.state._list) && this.state._list.length > 0;\n\t\treturn (\n\t\t\t<Host\n\t\t\t\tclass={{\n\t\t\t\t\t'has-value': this.state._hasValue,\n\t\t\t\t}}\n\t\t\t>\n\t\t\t\t<kol-input\n\t\t\t\t\tclass={{\n\t\t\t\t\t\t[this.state._type]: true,\n\t\t\t\t\t}}\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_icon={this.state._icon}\n\t\t\t\t\t_id={this.state._id}\n\t\t\t\t\t_list={this.state._list}\n\t\t\t\t\t_readOnly={this.state._readOnly}\n\t\t\t\t\t_required={this.state._required}\n\t\t\t\t\t_smartButton={this.state._smartButton}\n\t\t\t\t\t_touched={this.state._touched}\n\t\t\t\t>\n\t\t\t\t\t{' '}\n\t\t\t\t\t<span slot=\"label\">\n\t\t\t\t\t\t<slot />\n\t\t\t\t\t</span>\n\t\t\t\t\t<input\n\t\t\t\t\t\tref={this.catchRef}\n\t\t\t\t\t\ttitle=\"\"\n\t\t\t\t\t\taccessKey={this.state._accessKey}\n\t\t\t\t\t\taria-describedby={ariaDescribedBy.length > 0 ? ariaDescribedBy.join(' ') : undefined}\n\t\t\t\t\t\taria-labelledby={`${this.state._id}-label`}\n\t\t\t\t\t\tautoCapitalize=\"off\"\n\t\t\t\t\t\tautoComplete={this.state._autoComplete}\n\t\t\t\t\t\tautoCorrect=\"off\"\n\t\t\t\t\t\tdisabled={this.state._disabled}\n\t\t\t\t\t\tid={this.state._id}\n\t\t\t\t\t\tlist={hasList ? `${this.state._id}-list` : undefined}\n\t\t\t\t\t\tmax={this.state._max}\n\t\t\t\t\t\tmin={this.state._min}\n\t\t\t\t\t\tname={this.state._name}\n\t\t\t\t\t\treadOnly={this.state._readOnly}\n\t\t\t\t\t\trequired={this.state._required}\n\t\t\t\t\t\tplaceholder={this.state._placeholder}\n\t\t\t\t\t\tslot=\"input\"\n\t\t\t\t\t\tstep={this.state._step}\n\t\t\t\t\t\tspellcheck=\"false\"\n\t\t\t\t\t\ttype={this.state._type}\n\t\t\t\t\t\tvalue={this.state._value as string}\n\t\t\t\t\t\t{...this.controller.onFacade}\n\t\t\t\t\t\tonKeyUp={this.onKeyUp}\n\t\t\t\t\t/>\n\t\t\t\t</kol-input>\n\t\t\t</Host>\n\t\t);\n\t}\n\n\tprivate readonly controller: InputNumberController;\n\n\t/**\n\t * Gibt an, mit welcher Tastenkombination man das Input auslösen oder fokussieren kann.\n\t */\n\t@Prop() public _accessKey?: string;\n\n\t/**\n\t * Gibt an, ob die Fehlermeldung vorgelesen werden soll, wenn es eine gibt.\n\t */\n\t@Prop({ mutable: true, reflect: true }) public _alert?: boolean = true;\n\n\t/**\n\t * Gibt an, ob das Eingabefeld autovervollständigt werden kann.\n\t */\n\t@Prop() public _autoComplete?: InputTypeOnOff;\n\n\t/**\n\t * Setzt das Feld in einen inaktiven Zustand, in dem es keine Interaktion erlaubt.\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 * Versteckt das sichtbare Label des Elements.\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 * Ermöglicht das Anzeigen von Icons links und/oder rechts am Rand des Eingabefeldes.\n\t */\n\t@Prop() public _icon?: Stringified<KoliBriHorizontalIcon>;\n\n\t/**\n\t * Gibt die technische ID des Eingabefeldes an.\n\t */\n\t@Prop() public _id?: string;\n\n\t/**\n\t * Gibt die Liste der Vorschlagszahlen an.\n\t */\n\t@Prop() public _list?: Stringified<string[]>;\n\n\t/**\n\t * Gibt den größtmöglichen Zahlenwert an.\n\t */\n\t@Prop() public _max?: number | Iso8601;\n\n\t/**\n\t * Gibt den kleinstmöglichen Zahlenwert an.\n\t */\n\t@Prop() public _min?: number | Iso8601;\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 * Gibt den Platzhalter des Eingabefeldes an, wenn es leer ist.\n\t */\n\t@Prop() public _placeholder?: string;\n\n\t/**\n\t * Setzt das Eingabefeld in den schreibgeschützten Modus.\n\t */\n\t@Prop({ reflect: true }) public _readOnly?: boolean;\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 * Ermöglicht eine Schaltfläche ins das Eingabefeld mit einer beliebigen Aktion zu einzufügen (ohne label).\n\t */\n\t@Prop() public _smartButton?: ButtonProps;\n\n\t/**\n\t * Gibt die Schrittweite der Wertveränderung an\n\t */\n\t@Prop() public _step?: number;\n\n\t/**\n\t * Gibt an, welchen Tab-Index dieses Input hat.\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, ob es ein DateTime-, Date-, Month-, Week-, Time-, DateTime-Local-, Number-Eingabefeld ist.\n\t *\n\t * @deprecated Das W3C hat die Date-Typen in eine eigene Gruppe zusammengefasst. Verwende hierfür die InputDate-Komponente.\n\t */\n\t@Prop() public _type?: InputNumberType = 'number';\n\n\t/**\n\t * Gibt den Wert des Eingabefeldes an.\n\t */\n\t@Prop({ mutable: true }) public _value?: number | Iso8601 | null;\n\n\t@State() public state: States = {\n\t\t_autoComplete: 'off',\n\t\t_id: nonce(), // ⚠ required\n\t\t_hasValue: false,\n\t\t_list: [],\n\t\t_type: 'number',\n\t};\n\n\tpublic constructor() {\n\t\tthis.controller = new InputNumberController(this, 'number', 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('_autoComplete')\n\tpublic validateAutoComplete(value?: InputTypeOnOff): void {\n\t\tthis.controller.validateAutoComplete(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<KoliBriHorizontalIcon>): 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('_list')\n\tpublic validateList(value?: Stringified<string[]>): void {\n\t\tthis.controller.validateList(value);\n\t}\n\n\t@Watch('_max')\n\tpublic validateMax(value?: number | Iso8601): void {\n\t\tthis.controller.validateMax(value);\n\t}\n\n\t@Watch('_min')\n\tpublic validateMin(value?: number | Iso8601): void {\n\t\tthis.controller.validateMin(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('_placeholder')\n\tpublic validatePlaceholder(value?: string): void {\n\t\tthis.controller.validatePlaceholder(value);\n\t}\n\n\t@Watch('_readOnly')\n\tpublic validateReadOnly(value?: boolean): void {\n\t\tthis.controller.validateReadOnly(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('_smartButton')\n\tpublic validateSmartButton(value?: ButtonProps | string): void {\n\t\tthis.controller.validateSmartButton(value);\n\t}\n\n\t@Watch('_step')\n\tpublic validateStep(value?: number): void {\n\t\tthis.controller.validateStep(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/**\n\t * @see: components/abbr/component.tsx (@Watch)\n\t * @deprecated\n\t */\n\t@Watch('_type')\n\tpublic validateType(value?: InputNumberType): void {\n\t\tthis.controller.validateType(value);\n\t}\n\n\t@Watch('_value')\n\tpublic validateValue(value?: number | Iso8601 | null): void {\n\t\tthis.controller.validateValueEx(value, (v) => {\n\t\t\tif (v === '' && this.ref) {\n\t\t\t\tthis.ref.value = '';\n\t\t\t}\n\t\t});\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\n\t\tthis.state._hasValue = !!this.state._value;\n\t\tthis.controller.addValueChangeListener((v) => (this.state._hasValue = !!v));\n\t}\n}\n"],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* KoliBri - The accessible HTML-Standard
|
|
3
3
|
*/
|
|
4
|
-
import{h as t,H as e,r as i,g as a}from"./index-
|
|
4
|
+
import{h as t,H as e,r as i,g as a}from"./index-0e29e47a.js";import{d as s}from"./a11y.tipps-1cea9822.js";import{a as n}from"./reuse-3a02afb9.js";import{p as l}from"./controller-0cf6cd75.js";import{g as o}from"./controller-53ddde7c.js";import{I as d}from"./controller-3e94c3f2.js";import{n as r}from"./dev.utils-157f0499.js";import"./prop.validators-e15a584f.js";import"./index-f4596895.js";import"./tab-index-eff012a1.js";import"./controller-icon-26c0e34a.js";import"./icon-dfcf642a.js";const h=":host{--a11y-min-size:44px}*{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}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}kol-input{display:grid}kol-input [slot='input']{flex-grow:1}input:not([type='checkbox'],[type='radio']),select:not([multiple]){height:2.75em}input:focus,option:focus,select:focus,textarea:focus{outline:0}.input{display:flex;align-items:center}.input>kol-icon{display:grid;height:var(--a11y-min-size);place-items:center}div.input{cursor:text}",p=class{render(){const{ariaDescribedBy:i}=o(this.state);return t(e,{class:{"has-value":this.state._hasValue}},t("kol-input",{class:{password:!0},_disabled:this.state._disabled,_error:this.state._error,_hideLabel:this.state._hideLabel,_hint:this.state._hint,_icon:this.state._icon,_id:this.state._id,_readOnly:this.state._readOnly,_required:this.state._required,_smartButton:this.state._smartButton,_touched:this.state._touched,onClick:()=>{var t;return null===(t=this.ref)||void 0===t?void 0:t.focus()}},t("span",{slot:"label"},t("slot",null)),t("input",Object.assign({ref:this.catchRef,title:"",accessKey:this.state._accessKey,"aria-describedby":i.length>0?i.join(" "):void 0,"aria-labelledby":`${this.state._id}-label`,autoCapitalize:"off",autoComplete:this.state._autoComplete,autoCorrect:"off",disabled:this.state._disabled,id:this.state._id,maxlength:this.state._maxLength,name:this.state._name,pattern:this.state._pattern,placeholder:this.state._placeholder,readOnly:this.state._readOnly,required:this.state._required,size:this.state._size,slot:"input",spellcheck:"false",type:"password",value:this.state._value},this.controller.onFacade,{onKeyUp:this.onKeyUp}))))}constructor(t){i(this,t),this.catchRef=t=>{this.ref=t,n(this.host,this.ref)},this.onKeyUp=t=>{"Enter"===t.code?l({form:this.host,ref:this.ref}):this.controller.onFacade.onClick(t)},this._accessKey=void 0,this._alert=!0,this._autoComplete=void 0,this._disabled=void 0,this._error=void 0,this._hideLabel=void 0,this._hint="",this._icon=void 0,this._id=void 0,this._maxLength=void 0,this._name=void 0,this._on=void 0,this._pattern=void 0,this._placeholder=void 0,this._readOnly=void 0,this._required=void 0,this._size=void 0,this._smartButton=void 0,this._tabIndex=void 0,this._touched=!1,this._value=void 0,this.state={_autoComplete:"off",_id:r(),_hasValue:!1},this.controller=new d(this,"password",this.host)}validateAccessKey(t){this.controller.validateAccessKey(t)}validateAlert(t){this.controller.validateAlert(t)}validateAutoComplete(t){this.controller.validateAutoComplete(t),"on"===t&&s("[KolInputPassword] Die Option 'autocomplete' sollte bei einem Passwort-Eingabefeld nicht auf \"on\" gesetzt werden.")}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)}validateMaxLength(t){this.controller.validateMaxLength(t)}validateName(t){this.controller.validateName(t)}validateOn(t){this.controller.validateOn(t)}validatePattern(t){this.controller.validatePattern(t)}validatePlaceholder(t){this.controller.validatePlaceholder(t)}validateReadOnly(t){this.controller.validateReadOnly(t)}validateRequired(t){this.controller.validateRequired(t)}validateSize(t){this.controller.validateSize(t)}validateSmartButton(t){this.controller.validateSmartButton(t)}validateTabIndex(t){this.controller.validateTabIndex(t)}validateTouched(t){this.controller.validateTouched(t)}validateValue(t){this.controller.validateValue(t)}componentWillLoad(){this._alert=!0===this._alert,this._touched=!0===this._touched,this.controller.componentWillLoad(),this.state._hasValue=!!this.state._value,this.controller.addValueChangeListener((t=>this.state._hasValue=!!t))}get host(){return a(this)}static get watchers(){return{_accessKey:["validateAccessKey"],_alert:["validateAlert"],_autoComplete:["validateAutoComplete"],_disabled:["validateDisabled"],_error:["validateError"],_hideLabel:["validateHideLabel"],_hint:["validateHint"],_icon:["validateIcon"],_id:["validateId"],_maxLength:["validateMaxLength"],_name:["validateName"],_on:["validateOn"],_pattern:["validatePattern"],_placeholder:["validatePlaceholder"],_readOnly:["validateReadOnly"],_required:["validateRequired"],_size:["validateSize"],_smartButton:["validateSmartButton"],_tabIndex:["validateTabIndex"],_touched:["validateTouched"],_value:["validateValue"]}}};p.style={default:h};export{p as kol_input_password};
|