@public-ui/components 3.0.0-0edf6aa20a9ac9faa46ebe0e45a8c62841b05164.0 → 3.0.0-37e952f54ae220a836264edf844556a2c45116ea.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/custom-elements.json +171 -118
- package/dist/cjs/Alert-2081f13f.js +4 -0
- package/dist/cjs/Alert-2081f13f.js.map +1 -0
- package/dist/cjs/{Collapsible-86925548.js → Collapsible-8faf0000.js} +1 -1
- package/dist/cjs/{Collapsible-86925548.js.map → Collapsible-8faf0000.js.map} +1 -1
- package/dist/cjs/CustomSuggestionsOptionsGroup-ed59192b.js +4 -0
- package/dist/cjs/CustomSuggestionsOptionsGroup-ed59192b.js.map +1 -0
- package/dist/cjs/FieldControlStateWrapper-f1f27193.js +4 -0
- package/dist/cjs/FieldControlStateWrapper-f1f27193.js.map +1 -0
- package/dist/cjs/{Heading-ad46954e.js → Heading-7c92fd24.js} +1 -1
- package/dist/cjs/{Heading-ad46954e.js.map → Heading-7c92fd24.js.map} +1 -1
- package/dist/cjs/Icon-eaf6789f.js +4 -0
- package/dist/cjs/{Icon-7f43100b.js.map → Icon-eaf6789f.js.map} +1 -1
- package/dist/cjs/Input-956b42d2.js +4 -0
- package/dist/cjs/Input-956b42d2.js.map +1 -0
- package/dist/cjs/InputStateWrapper-47cc5b7e.js +4 -0
- package/dist/cjs/InputStateWrapper-47cc5b7e.js.map +1 -0
- package/dist/cjs/InternalUnderlinedBadgeText-75ec8b12.js +4 -0
- package/dist/cjs/InternalUnderlinedBadgeText-75ec8b12.js.map +1 -0
- package/dist/cjs/{Span-8ca233d2.js → Span-da47606f.js} +1 -1
- package/dist/cjs/{Span-8ca233d2.js.map → Span-da47606f.js.map} +1 -1
- package/dist/cjs/{access-and-short-key-12a097ab.js → access-and-short-key-d0fc7c38.js} +1 -1
- package/dist/cjs/{access-and-short-key-12a097ab.js.map → access-and-short-key-d0fc7c38.js.map} +1 -1
- package/dist/cjs/{align-b9732b91.js → align-93ac54ce.js} +1 -1
- package/dist/cjs/{align-b9732b91.js.map → align-93ac54ce.js.map} +1 -1
- package/dist/cjs/align-floating-elements-f88156a1.js +4 -0
- package/dist/cjs/align-floating-elements-f88156a1.js.map +1 -0
- package/dist/cjs/app-globals-2d20db47.js +4 -0
- package/dist/cjs/{app-globals-702172ad.js.map → app-globals-2d20db47.js.map} +1 -1
- package/dist/cjs/{associated.controller-5e3fde43.js → associated.controller-3b505cce.js} +1 -1
- package/dist/cjs/{associated.controller-5e3fde43.js.map → associated.controller-3b505cce.js.map} +1 -1
- package/dist/cjs/bem-85316256.js +4 -0
- package/dist/cjs/bem-85316256.js.map +1 -0
- package/dist/cjs/bem-c7c596d7.js +4 -0
- package/dist/cjs/bem-c7c596d7.js.map +1 -0
- package/dist/cjs/browser-4433089a.js +4 -0
- package/dist/cjs/browser-4433089a.js.map +1 -0
- package/dist/cjs/{button-variant-cd1a80cf.js → button-variant-bf871613.js} +1 -1
- package/dist/cjs/{button-variant-cd1a80cf.js.map → button-variant-bf871613.js.map} +1 -1
- package/dist/cjs/{color-2c30c52b.js → color-e425cd22.js} +1 -1
- package/dist/cjs/{color-2c30c52b.js.map → color-e425cd22.js.map} +1 -1
- package/dist/cjs/component-names-82c4d68d.js +4 -0
- package/dist/cjs/component-names-82c4d68d.js.map +1 -0
- package/dist/cjs/controller-9087aeae.js +4 -0
- package/dist/cjs/{controller-44df52af.js.map → controller-9087aeae.js.map} +1 -1
- package/dist/cjs/{controller-739092ae.js → controller-a37c3bf3.js} +1 -1
- package/dist/cjs/{controller-739092ae.js.map → controller-a37c3bf3.js.map} +1 -1
- package/dist/cjs/{controller-fcd5edcb.js → controller-c5807631.js} +1 -1
- package/dist/cjs/{controller-fcd5edcb.js.map → controller-c5807631.js.map} +1 -1
- package/dist/cjs/{controller-737e4986.js → controller-f64cf64d.js} +1 -1
- package/dist/cjs/{controller-737e4986.js.map → controller-f64cf64d.js.map} +1 -1
- package/dist/cjs/controller-icon-af749150.js +4 -0
- package/dist/cjs/controller-icon-af749150.js.map +1 -0
- package/dist/cjs/custom-class-090248c5.js +4 -0
- package/dist/cjs/{custom-class-3a1c18f3.js.map → custom-class-090248c5.js.map} +1 -1
- package/dist/cjs/{dev.utils-94f2c3c9.js → dev.utils-2aebece9.js} +1 -1
- package/dist/cjs/{dev.utils-94f2c3c9.js.map → dev.utils-2aebece9.js.map} +1 -1
- package/dist/cjs/{devtools-649d9a72.js → devtools-a4ca6fb6.js} +1 -1
- package/dist/cjs/{devtools-649d9a72.js.map → devtools-a4ca6fb6.js.map} +1 -1
- package/dist/cjs/disabled-8e4f2f5c.js +4 -0
- package/dist/cjs/{disabled-5a2e250c.js.map → disabled-8e4f2f5c.js.map} +1 -1
- package/dist/cjs/{events-fc641593.js → events-40771c95.js} +1 -1
- package/dist/cjs/events-40771c95.js.map +1 -0
- package/dist/cjs/getRenderStates-34145e2d.js +4 -0
- package/dist/cjs/getRenderStates-34145e2d.js.map +1 -0
- package/dist/cjs/has-closer-70d42d31.js +4 -0
- package/dist/cjs/{has-closer-9b3c14a7.js.map → has-closer-70d42d31.js.map} +1 -1
- package/dist/cjs/has-counter-fac5a323.js +4 -0
- package/dist/cjs/{has-counter-7318f6f4.js.map → has-counter-fac5a323.js.map} +1 -1
- package/dist/cjs/hide-label-a5f79571.js +4 -0
- package/dist/cjs/{hide-label-b0063224.js.map → hide-label-a5f79571.js.map} +1 -1
- package/dist/cjs/href-e0353cd7.js +4 -0
- package/dist/cjs/{href-2485cb51.js.map → href-e0353cd7.js.map} +1 -1
- package/dist/cjs/{i18n-1d085d07.js → i18n-0e710ccd.js} +1 -1
- package/dist/cjs/{i18n-1d085d07.js.map → i18n-0e710ccd.js.map} +1 -1
- package/dist/cjs/i18n-8c288a27.js +4 -0
- package/dist/cjs/i18n-8c288a27.js.map +1 -0
- package/dist/cjs/{icons-310a07cc.js → icons-73f0fbcf.js} +1 -1
- package/dist/cjs/icons-73f0fbcf.js.map +1 -0
- package/dist/cjs/image-source-c7eb536a.js +4 -0
- package/dist/cjs/{image-source-27335383.js.map → image-source-c7eb536a.js.map} +1 -1
- package/dist/cjs/index-49ec9257.js +4 -0
- package/dist/cjs/index-49ec9257.js.map +1 -0
- package/dist/cjs/index-92a1d333.js +4 -0
- package/dist/cjs/index-92a1d333.js.map +1 -0
- package/dist/cjs/index.cjs.js +1 -1
- package/dist/cjs/index.cjs.js.map +1 -1
- package/dist/cjs/isArray-e114fe6e.js +4 -0
- package/dist/cjs/isArray-e114fe6e.js.map +1 -0
- package/dist/cjs/kol-abbr.cjs.entry.js +1 -1
- package/dist/cjs/kol-abbr.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-accordion.cjs.entry.js +1 -1
- package/dist/cjs/kol-accordion.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-alert-wc.cjs.entry.js +1 -1
- package/dist/cjs/kol-alert-wc.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-alert.cjs.entry.js +1 -1
- package/dist/cjs/kol-alert.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-avatar-wc.cjs.entry.js +1 -1
- package/dist/cjs/kol-avatar.cjs.entry.js +1 -1
- package/dist/cjs/kol-avatar.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-link.cjs.entry.js +1 -1
- package/dist/cjs/kol-button-link.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-button-wc.cjs.entry.js +1 -1
- package/dist/cjs/kol-button-wc.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-button.cjs.entry.js +1 -1
- package/dist/cjs/kol-button.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-card.cjs.entry.js +1 -1
- package/dist/cjs/kol-card.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-combobox.cjs.entry.js +1 -1
- package/dist/cjs/kol-combobox.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-drawer.cjs.entry.js +1 -1
- package/dist/cjs/kol-drawer.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.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-input-checkbox.cjs.entry.js +1 -1
- package/dist/cjs/kol-input-checkbox.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-input-color.cjs.entry.js +1 -1
- package/dist/cjs/kol-input-color.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-input-date.cjs.entry.js +1 -1
- package/dist/cjs/kol-input-date.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-input-email.cjs.entry.js +1 -1
- package/dist/cjs/kol-input-email.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-input-file.cjs.entry.js +1 -1
- package/dist/cjs/kol-input-file.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-input-number.cjs.entry.js +1 -1
- package/dist/cjs/kol-input-number.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-input-password.cjs.entry.js +1 -1
- package/dist/cjs/kol-input-password.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-input-radio.cjs.entry.js +1 -1
- package/dist/cjs/kol-input-radio.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-input-range.cjs.entry.js +1 -1
- package/dist/cjs/kol-input-range.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-input-text.cjs.entry.js +1 -1
- package/dist/cjs/kol-input-text.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-kolibri.cjs.entry.js +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-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-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-button-wc.cjs.entry.js +4 -0
- package/dist/cjs/kol-popover-button-wc.cjs.entry.js.map +1 -0
- package/dist/cjs/kol-popover-button.cjs.entry.js +1 -1
- package/dist/cjs/kol-popover-button.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-popover-wc.cjs.entry.js +1 -1
- package/dist/cjs/kol-progress.cjs.entry.js +1 -1
- package/dist/cjs/kol-progress.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-quote.cjs.entry.js +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-single-select.cjs.entry.js +1 -1
- package/dist/cjs/kol-single-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-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 +1 -1
- package/dist/cjs/kol-split-button.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-table-settings-wc.cjs.entry.js +4 -0
- package/dist/cjs/kol-table-settings-wc.cjs.entry.js.map +1 -0
- package/dist/cjs/kol-table-stateful.cjs.entry.js +1 -1
- package/dist/cjs/kol-table-stateful.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-table-stateless-wc.cjs.entry.js +1 -1
- package/dist/cjs/kol-table-stateless-wc.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-table-stateless.cjs.entry.js +1 -1
- package/dist/cjs/kol-table-stateless.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-container.cjs.entry.js +1 -1
- package/dist/cjs/kol-toast-container.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-toolbar.cjs.entry.js +1 -1
- package/dist/cjs/kol-toolbar.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-tooltip-wc.cjs.entry.js +1 -1
- package/dist/cjs/kol-tooltip-wc.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-tree-item-wc.cjs.entry.js +1 -1
- package/dist/cjs/kol-tree-item-wc.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-tree-item.cjs.entry.js +1 -1
- package/dist/cjs/kol-tree-item.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-tree-wc.cjs.entry.js +1 -1
- package/dist/cjs/kol-tree-wc.cjs.entry.js.map +1 -1
- package/dist/cjs/kol-tree.cjs.entry.js +1 -1
- package/dist/cjs/kol-tree.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/{label-b8654499.js → label-fab376ae.js} +1 -1
- package/dist/cjs/{label-b8654499.js.map → label-fab376ae.js.map} +1 -1
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/cjs/open-10500c96.js +4 -0
- package/dist/cjs/{open-5c1af49f.js.map → open-10500c96.js.map} +1 -1
- package/dist/cjs/{prop.validators-96dfedce.js → prop.validators-b788b493.js} +1 -1
- package/dist/cjs/prop.validators-b788b493.js.map +1 -0
- package/dist/cjs/reuse-8650ea4e.js +4 -0
- package/dist/cjs/reuse-8650ea4e.js.map +1 -0
- package/dist/cjs/rows-e801d3f8.js +4 -0
- package/dist/cjs/{rows-782313b6.js.map → rows-e801d3f8.js.map} +1 -1
- package/dist/cjs/show-e401e023.js +4 -0
- package/dist/cjs/{show-5b2be58e.js.map → show-e401e023.js.map} +1 -1
- package/dist/cjs/spell-check-c271d689.js +4 -0
- package/dist/cjs/{spell-check-5c5eee25.js.map → spell-check-c271d689.js.map} +1 -1
- package/dist/cjs/{suggestions-cd0a843d.js → suggestions-58a5019e.js} +1 -1
- package/dist/cjs/{suggestions-cd0a843d.js.map → suggestions-58a5019e.js.map} +1 -1
- package/dist/cjs/{callback-ab215ba6.js → table-settings-c05aaa16.js} +1 -1
- package/dist/cjs/table-settings-c05aaa16.js.map +1 -0
- package/dist/cjs/test-component.cjs.entry.js +1 -1
- package/dist/cjs/tooltip-align-b25e613c.js +4 -0
- package/dist/cjs/{tooltip-align-3b9a6bde.js.map → tooltip-align-b25e613c.js.map} +1 -1
- package/dist/cjs/{validation-7ea25fa6.js → validation-0e34c435.js} +1 -1
- package/dist/cjs/{validation-7ea25fa6.js.map → validation-0e34c435.js.map} +1 -1
- package/dist/cjs/{validation-fbc2d426.js → validation-d75a53d3.js} +1 -1
- package/dist/cjs/{validation-fbc2d426.js.map → validation-d75a53d3.js.map} +1 -1
- package/dist/components/Alert.js +1 -1
- package/dist/components/Alert.js.map +1 -1
- package/dist/components/CustomSuggestionsOptionsGroup.js +1 -1
- package/dist/components/CustomSuggestionsOptionsGroup.js.map +1 -1
- package/dist/components/FieldControlStateWrapper.js +1 -1
- package/dist/components/FieldControlStateWrapper.js.map +1 -1
- package/dist/components/Input.js +1 -1
- package/dist/components/Input.js.map +1 -1
- package/dist/components/InputContainerStateWrapper.js +1 -1
- package/dist/components/InputContainerStateWrapper.js.map +1 -1
- package/dist/components/InputStateWrapper.js +1 -1
- package/dist/components/InputStateWrapper.js.map +1 -1
- package/dist/components/InternalUnderlinedBadgeText.js +1 -1
- package/dist/components/InternalUnderlinedBadgeText.js.map +1 -1
- package/dist/components/access-and-short-key.js +1 -1
- package/dist/components/align-floating-elements.js +1 -1
- package/dist/components/align-floating-elements.js.map +1 -1
- package/dist/components/associated.controller.js +1 -1
- package/dist/components/bem.js +4 -0
- package/dist/components/bem.js.map +1 -0
- package/dist/components/bem2.js +4 -0
- package/dist/components/bem2.js.map +1 -0
- package/dist/components/browser.js +4 -0
- package/dist/components/browser.js.map +1 -0
- package/dist/components/button-variant.js +1 -1
- package/dist/components/color.js +1 -1
- package/dist/components/color.js.map +1 -1
- package/dist/components/component-names.js +1 -1
- package/dist/components/component-names.js.map +1 -1
- package/dist/components/controller.js +1 -1
- package/dist/components/controller2.js +1 -1
- package/dist/components/controller2.js.map +1 -1
- package/dist/components/controller4.js +1 -1
- package/dist/components/custom-class.js +1 -1
- package/dist/components/devtools.js +1 -1
- package/dist/components/disabled.js +1 -1
- package/dist/components/events.js +1 -1
- package/dist/components/events.js.map +1 -1
- package/dist/components/getRenderStates.js +1 -1
- package/dist/components/getRenderStates.js.map +1 -1
- package/dist/components/has-closer.js +1 -1
- package/dist/components/has-counter.js +1 -1
- package/dist/components/hide-label.js +1 -1
- package/dist/components/href.js +1 -1
- package/dist/components/i18n.js +1 -1
- package/dist/components/i18n.js.map +1 -1
- package/dist/components/icons.js +1 -1
- package/dist/components/icons.js.map +1 -1
- package/dist/components/image-source.js +1 -1
- package/dist/components/index.js +1 -1
- package/dist/components/index.js.map +1 -1
- package/dist/components/isArray.js +4 -0
- package/dist/components/isArray.js.map +1 -0
- 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.js +1 -1
- package/dist/components/kol-alert.js +1 -1
- package/dist/components/kol-alert.js.map +1 -1
- package/dist/components/kol-avatar.js +1 -1
- package/dist/components/kol-avatar.js.map +1 -1
- package/dist/components/kol-badge.js +1 -1
- package/dist/components/kol-badge.js.map +1 -1
- package/dist/components/kol-breadcrumb.js +1 -1
- package/dist/components/kol-breadcrumb.js.map +1 -1
- package/dist/components/kol-button-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-wc.js.map +1 -1
- package/dist/components/kol-button.js +1 -1
- package/dist/components/kol-button.js.map +1 -1
- package/dist/components/kol-card.js +1 -1
- package/dist/components/kol-card.js.map +1 -1
- package/dist/components/kol-combobox.js +1 -1
- package/dist/components/kol-combobox.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-drawer.js +1 -1
- package/dist/components/kol-drawer.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.js +1 -1
- package/dist/components/kol-icon.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-input-checkbox.js +1 -1
- package/dist/components/kol-input-checkbox.js.map +1 -1
- package/dist/components/kol-input-color.js +1 -1
- package/dist/components/kol-input-color.js.map +1 -1
- package/dist/components/kol-input-date.js +1 -1
- package/dist/components/kol-input-date.js.map +1 -1
- package/dist/components/kol-input-email.js +1 -1
- package/dist/components/kol-input-email.js.map +1 -1
- package/dist/components/kol-input-file.js +1 -1
- package/dist/components/kol-input-file.js.map +1 -1
- package/dist/components/kol-input-number.js +1 -1
- package/dist/components/kol-input-number.js.map +1 -1
- package/dist/components/kol-input-password.js +1 -1
- package/dist/components/kol-input-password.js.map +1 -1
- package/dist/components/kol-input-radio.js +1 -1
- package/dist/components/kol-input-radio.js.map +1 -1
- package/dist/components/kol-input-range.js +1 -1
- package/dist/components/kol-input-range.js.map +1 -1
- package/dist/components/kol-input-text.js +1 -1
- package/dist/components/kol-input-text.js.map +1 -1
- package/dist/components/kol-kolibri.js +1 -1
- package/dist/components/kol-kolibri.js.map +1 -1
- package/dist/components/kol-link-button.js +1 -1
- package/dist/components/kol-link-button.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-link.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-pagination.js.map +1 -1
- package/dist/components/{kol-input.d.ts → kol-popover-button-wc.d.ts} +4 -4
- package/dist/components/kol-popover-button-wc.js +4 -0
- package/dist/components/kol-popover-button-wc.js.map +1 -0
- package/dist/components/kol-popover-button.js +1 -1
- package/dist/components/kol-popover-button.js.map +1 -1
- package/dist/components/kol-popover-wc.js +1 -1
- package/dist/components/kol-progress.js +1 -1
- package/dist/components/kol-progress.js.map +1 -1
- package/dist/components/kol-quote.js +1 -1
- package/dist/components/kol-quote.js.map +1 -1
- package/dist/components/kol-select.js +1 -1
- package/dist/components/kol-select.js.map +1 -1
- package/dist/components/kol-single-select.js +1 -1
- package/dist/components/kol-single-select.js.map +1 -1
- package/dist/components/kol-skip-nav.js +1 -1
- package/dist/components/kol-skip-nav.js.map +1 -1
- package/dist/components/kol-spin.js +1 -1
- package/dist/components/kol-spin.js.map +1 -1
- package/dist/components/kol-split-button.js +1 -1
- package/dist/components/kol-split-button.js.map +1 -1
- package/dist/components/kol-table-settings-wc.d.ts +11 -0
- package/dist/components/kol-table-settings-wc.js +4 -0
- package/dist/components/kol-table-settings-wc.js.map +1 -0
- package/dist/components/kol-table-stateful.js +1 -1
- package/dist/components/kol-table-stateful.js.map +1 -1
- package/dist/components/kol-table-stateless-wc.js +1 -1
- package/dist/components/kol-table-stateless-wc.js.map +1 -1
- package/dist/components/kol-table-stateless.js +1 -1
- package/dist/components/kol-table-stateless.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-container.js +1 -1
- package/dist/components/kol-toast-container.js.map +1 -1
- package/dist/components/kol-toolbar.js +1 -1
- package/dist/components/kol-toolbar.js.map +1 -1
- package/dist/components/kol-tooltip-wc.js +1 -1
- package/dist/components/kol-tree-item-wc.js +1 -1
- package/dist/components/kol-tree-item-wc.js.map +1 -1
- package/dist/components/kol-tree-item.js +1 -1
- package/dist/components/kol-tree-item.js.map +1 -1
- package/dist/components/kol-tree-wc.js +1 -1
- package/dist/components/kol-tree-wc.js.map +1 -1
- package/dist/components/kol-tree.js +1 -1
- package/dist/components/kol-tree.js.map +1 -1
- package/dist/components/kol-version.js +1 -1
- package/dist/components/kol-version.js.map +1 -1
- package/dist/components/open.js +1 -1
- package/dist/components/prop.validators.js +1 -1
- package/dist/components/prop.validators.js.map +1 -1
- package/dist/components/reuse.js +1 -1
- package/dist/components/reuse.js.map +1 -1
- package/dist/components/rows.js +1 -1
- package/dist/components/show.js +1 -1
- package/dist/components/spell-check.js +1 -1
- package/dist/components/suggestions.js +1 -1
- package/dist/components/{callback.js → table-settings.js} +1 -1
- package/dist/components/table-settings.js.map +1 -0
- package/dist/components/validation2.js +1 -1
- package/dist/esm/Alert-362a56d6.js +4 -0
- package/dist/esm/Alert-362a56d6.js.map +1 -0
- package/dist/esm/{Collapsible-9dbf3e00.js → Collapsible-f5aaa0af.js} +1 -1
- package/dist/esm/{Collapsible-9dbf3e00.js.map → Collapsible-f5aaa0af.js.map} +1 -1
- package/dist/esm/CustomSuggestionsOptionsGroup-45c3a085.js +4 -0
- package/dist/esm/CustomSuggestionsOptionsGroup-45c3a085.js.map +1 -0
- package/dist/esm/FieldControlStateWrapper-5fe1febc.js +4 -0
- package/dist/esm/FieldControlStateWrapper-5fe1febc.js.map +1 -0
- package/dist/esm/{Heading-e1db538b.js → Heading-a93a1765.js} +1 -1
- package/dist/esm/{Heading-e1db538b.js.map → Heading-a93a1765.js.map} +1 -1
- package/dist/esm/Icon-1679f3fc.js +4 -0
- package/dist/esm/{Icon-1eca6817.js.map → Icon-1679f3fc.js.map} +1 -1
- package/dist/esm/Input-f05ea4d5.js +4 -0
- package/dist/esm/Input-f05ea4d5.js.map +1 -0
- package/dist/esm/InputStateWrapper-040f7635.js +4 -0
- package/dist/esm/InputStateWrapper-040f7635.js.map +1 -0
- package/dist/esm/InternalUnderlinedBadgeText-77ae0c4d.js +4 -0
- package/dist/esm/InternalUnderlinedBadgeText-77ae0c4d.js.map +1 -0
- package/dist/esm/{Span-a19668ac.js → Span-a625f565.js} +1 -1
- package/dist/esm/{Span-a19668ac.js.map → Span-a625f565.js.map} +1 -1
- package/dist/esm/{access-and-short-key-9cca88b8.js → access-and-short-key-7091d688.js} +1 -1
- package/dist/esm/{access-and-short-key-9cca88b8.js.map → access-and-short-key-7091d688.js.map} +1 -1
- package/dist/esm/{align-4719d626.js → align-679f189f.js} +1 -1
- package/dist/esm/{align-4719d626.js.map → align-679f189f.js.map} +1 -1
- package/dist/esm/align-floating-elements-7cdb6dc6.js +4 -0
- package/dist/esm/align-floating-elements-7cdb6dc6.js.map +1 -0
- package/dist/esm/app-globals-832318f2.js +4 -0
- package/dist/esm/{app-globals-6d7eac5a.js.map → app-globals-832318f2.js.map} +1 -1
- package/dist/esm/{associated.controller-52d302aa.js → associated.controller-9e991177.js} +1 -1
- package/dist/esm/{associated.controller-52d302aa.js.map → associated.controller-9e991177.js.map} +1 -1
- package/dist/esm/bem-dabd96cc.js +4 -0
- package/dist/esm/bem-dabd96cc.js.map +1 -0
- package/dist/esm/bem-e4c3a2e6.js +4 -0
- package/dist/esm/bem-e4c3a2e6.js.map +1 -0
- package/dist/esm/browser-f629a56a.js +4 -0
- package/dist/esm/browser-f629a56a.js.map +1 -0
- package/dist/esm/{button-variant-ce5f212b.js → button-variant-68e61ccd.js} +1 -1
- package/dist/esm/{button-variant-ce5f212b.js.map → button-variant-68e61ccd.js.map} +1 -1
- package/dist/esm/{color-62f7b76a.js → color-adb63076.js} +1 -1
- package/dist/esm/{color-62f7b76a.js.map → color-adb63076.js.map} +1 -1
- package/dist/esm/component-names-7ee7402b.js +4 -0
- package/dist/esm/component-names-7ee7402b.js.map +1 -0
- package/dist/esm/{controller-a26ccfc4.js → controller-070818e3.js} +1 -1
- package/dist/esm/{controller-a26ccfc4.js.map → controller-070818e3.js.map} +1 -1
- package/dist/esm/controller-1be136a8.js +4 -0
- package/dist/esm/controller-1be136a8.js.map +1 -0
- package/dist/esm/{controller-f84a4671.js → controller-71d68376.js} +1 -1
- package/dist/esm/{controller-f84a4671.js.map → controller-71d68376.js.map} +1 -1
- package/dist/esm/{controller-0953b02a.js → controller-f04a784c.js} +1 -1
- package/dist/esm/{controller-0953b02a.js.map → controller-f04a784c.js.map} +1 -1
- package/dist/esm/controller-icon-9397b382.js +4 -0
- package/dist/esm/controller-icon-9397b382.js.map +1 -0
- package/dist/esm/custom-class-7ee02f93.js +4 -0
- package/dist/esm/{custom-class-ac49545a.js.map → custom-class-7ee02f93.js.map} +1 -1
- package/dist/esm/{dev.utils-f9d0242d.js → dev.utils-ada1cd11.js} +1 -1
- package/dist/esm/{dev.utils-f9d0242d.js.map → dev.utils-ada1cd11.js.map} +1 -1
- package/dist/esm/{devtools-87a9e4de.js → devtools-10e45767.js} +1 -1
- package/dist/esm/{devtools-87a9e4de.js.map → devtools-10e45767.js.map} +1 -1
- package/dist/esm/disabled-66301c63.js +4 -0
- package/dist/esm/{disabled-dad7478c.js.map → disabled-66301c63.js.map} +1 -1
- package/dist/esm/{events-5adf6b62.js → events-5886c68b.js} +1 -1
- package/dist/esm/events-5886c68b.js.map +1 -0
- package/dist/esm/getRenderStates-3c94aee3.js +4 -0
- package/dist/esm/getRenderStates-3c94aee3.js.map +1 -0
- package/dist/esm/{has-closer-a4e62c58.js → has-closer-f231599a.js} +1 -1
- package/dist/esm/{has-closer-a4e62c58.js.map → has-closer-f231599a.js.map} +1 -1
- package/dist/esm/{has-counter-a43c36ef.js → has-counter-239ecfc9.js} +1 -1
- package/dist/esm/{has-counter-a43c36ef.js.map → has-counter-239ecfc9.js.map} +1 -1
- package/dist/esm/{hide-label-429a15ea.js → hide-label-4a7cf616.js} +1 -1
- package/dist/esm/{hide-label-429a15ea.js.map → hide-label-4a7cf616.js.map} +1 -1
- package/dist/esm/{href-d8ec67f8.js → href-8cf96f1c.js} +1 -1
- package/dist/esm/{href-d8ec67f8.js.map → href-8cf96f1c.js.map} +1 -1
- package/dist/esm/i18n-45224cc3.js +4 -0
- package/dist/esm/i18n-45224cc3.js.map +1 -0
- package/dist/esm/{i18n-5fe08f1c.js → i18n-efbafc80.js} +1 -1
- package/dist/esm/{i18n-5fe08f1c.js.map → i18n-efbafc80.js.map} +1 -1
- package/dist/esm/{icons-199f1746.js → icons-ae235ff9.js} +1 -1
- package/dist/esm/icons-ae235ff9.js.map +1 -0
- package/dist/esm/{image-source-320efd4f.js → image-source-f8e45250.js} +1 -1
- package/dist/esm/{image-source-320efd4f.js.map → image-source-f8e45250.js.map} +1 -1
- package/dist/esm/index-62ec26b4.js +4 -0
- package/dist/esm/index-62ec26b4.js.map +1 -0
- package/dist/esm/index-932feda8.js +4 -0
- package/dist/esm/index-932feda8.js.map +1 -0
- package/dist/esm/index.js +1 -1
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/isArray-7a60fa7f.js +4 -0
- package/dist/esm/isArray-7a60fa7f.js.map +1 -0
- package/dist/esm/kol-abbr.entry.js +1 -1
- package/dist/esm/kol-abbr.entry.js.map +1 -1
- package/dist/esm/kol-accordion.entry.js +1 -1
- package/dist/esm/kol-accordion.entry.js.map +1 -1
- package/dist/esm/kol-alert-wc.entry.js +1 -1
- package/dist/esm/kol-alert-wc.entry.js.map +1 -1
- package/dist/esm/kol-alert.entry.js +1 -1
- package/dist/esm/kol-alert.entry.js.map +1 -1
- package/dist/esm/kol-avatar-wc.entry.js +1 -1
- package/dist/esm/kol-avatar.entry.js +1 -1
- package/dist/esm/kol-avatar.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-link.entry.js +1 -1
- package/dist/esm/kol-button-link.entry.js.map +1 -1
- package/dist/esm/kol-button-wc.entry.js +1 -1
- package/dist/esm/kol-button-wc.entry.js.map +1 -1
- package/dist/esm/kol-button.entry.js +1 -1
- package/dist/esm/kol-button.entry.js.map +1 -1
- package/dist/esm/kol-card.entry.js +1 -1
- package/dist/esm/kol-card.entry.js.map +1 -1
- package/dist/esm/kol-combobox.entry.js +1 -1
- package/dist/esm/kol-combobox.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-drawer.entry.js +1 -1
- package/dist/esm/kol-drawer.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.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-input-checkbox.entry.js +1 -1
- package/dist/esm/kol-input-checkbox.entry.js.map +1 -1
- package/dist/esm/kol-input-color.entry.js +1 -1
- package/dist/esm/kol-input-color.entry.js.map +1 -1
- package/dist/esm/kol-input-date.entry.js +1 -1
- package/dist/esm/kol-input-date.entry.js.map +1 -1
- package/dist/esm/kol-input-email.entry.js +1 -1
- package/dist/esm/kol-input-email.entry.js.map +1 -1
- package/dist/esm/kol-input-file.entry.js +1 -1
- package/dist/esm/kol-input-file.entry.js.map +1 -1
- package/dist/esm/kol-input-number.entry.js +1 -1
- package/dist/esm/kol-input-number.entry.js.map +1 -1
- package/dist/esm/kol-input-password.entry.js +1 -1
- package/dist/esm/kol-input-password.entry.js.map +1 -1
- package/dist/esm/kol-input-radio.entry.js +1 -1
- package/dist/esm/kol-input-radio.entry.js.map +1 -1
- package/dist/esm/kol-input-range.entry.js +1 -1
- package/dist/esm/kol-input-range.entry.js.map +1 -1
- package/dist/esm/kol-input-text.entry.js +1 -1
- package/dist/esm/kol-input-text.entry.js.map +1 -1
- package/dist/esm/kol-kolibri.entry.js +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-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-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-button-wc.entry.js +4 -0
- package/dist/esm/kol-popover-button-wc.entry.js.map +1 -0
- package/dist/esm/kol-popover-button.entry.js +1 -1
- package/dist/esm/kol-popover-button.entry.js.map +1 -1
- package/dist/esm/kol-popover-wc.entry.js +1 -1
- package/dist/esm/kol-progress.entry.js +1 -1
- package/dist/esm/kol-progress.entry.js.map +1 -1
- package/dist/esm/kol-quote.entry.js +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-single-select.entry.js +1 -1
- package/dist/esm/kol-single-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-spin.entry.js +1 -1
- package/dist/esm/kol-spin.entry.js.map +1 -1
- package/dist/esm/kol-split-button.entry.js +1 -1
- package/dist/esm/kol-split-button.entry.js.map +1 -1
- package/dist/esm/kol-table-settings-wc.entry.js +4 -0
- package/dist/esm/kol-table-settings-wc.entry.js.map +1 -0
- package/dist/esm/kol-table-stateful.entry.js +1 -1
- package/dist/esm/kol-table-stateful.entry.js.map +1 -1
- package/dist/esm/kol-table-stateless-wc.entry.js +1 -1
- package/dist/esm/kol-table-stateless-wc.entry.js.map +1 -1
- package/dist/esm/kol-table-stateless.entry.js +1 -1
- package/dist/esm/kol-table-stateless.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-container.entry.js +1 -1
- package/dist/esm/kol-toast-container.entry.js.map +1 -1
- package/dist/esm/kol-toolbar.entry.js +1 -1
- package/dist/esm/kol-toolbar.entry.js.map +1 -1
- package/dist/esm/kol-tooltip-wc.entry.js +1 -1
- package/dist/esm/kol-tooltip-wc.entry.js.map +1 -1
- package/dist/esm/kol-tree-item-wc.entry.js +1 -1
- package/dist/esm/kol-tree-item-wc.entry.js.map +1 -1
- package/dist/esm/kol-tree-item.entry.js +1 -1
- package/dist/esm/kol-tree-item.entry.js.map +1 -1
- package/dist/esm/kol-tree-wc.entry.js +1 -1
- package/dist/esm/kol-tree-wc.entry.js.map +1 -1
- package/dist/esm/kol-tree.entry.js +1 -1
- package/dist/esm/kol-tree.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/{label-d0315384.js → label-5355d0b2.js} +1 -1
- package/dist/esm/{label-d0315384.js.map → label-5355d0b2.js.map} +1 -1
- package/dist/esm/loader.js +1 -1
- package/dist/esm/{open-20d08415.js → open-cbfb3998.js} +1 -1
- package/dist/esm/{open-20d08415.js.map → open-cbfb3998.js.map} +1 -1
- package/dist/esm/prop.validators-bb13c77c.js +4 -0
- package/dist/esm/prop.validators-bb13c77c.js.map +1 -0
- package/dist/esm/reuse-f46e7e35.js +4 -0
- package/dist/esm/reuse-f46e7e35.js.map +1 -0
- package/dist/esm/{rows-26af6558.js → rows-e07b2646.js} +1 -1
- package/dist/esm/{rows-26af6558.js.map → rows-e07b2646.js.map} +1 -1
- package/dist/esm/{show-484b637e.js → show-fea62c9e.js} +1 -1
- package/dist/esm/{show-484b637e.js.map → show-fea62c9e.js.map} +1 -1
- package/dist/esm/spell-check-6beed622.js +4 -0
- package/dist/esm/{spell-check-60fa0b9f.js.map → spell-check-6beed622.js.map} +1 -1
- package/dist/esm/{suggestions-f139f5ec.js → suggestions-935a4e0c.js} +1 -1
- package/dist/esm/{suggestions-f139f5ec.js.map → suggestions-935a4e0c.js.map} +1 -1
- package/dist/esm/{callback-fd6ab619.js → table-settings-4fe55021.js} +1 -1
- package/dist/esm/table-settings-4fe55021.js.map +1 -0
- package/dist/esm/test-component.entry.js +1 -1
- package/dist/esm/{tooltip-align-8e0fa436.js → tooltip-align-4b5c8431.js} +1 -1
- package/dist/esm/{tooltip-align-8e0fa436.js.map → tooltip-align-4b5c8431.js.map} +1 -1
- package/dist/esm/{validation-14b61e5a.js → validation-06abd8ec.js} +1 -1
- package/dist/esm/{validation-14b61e5a.js.map → validation-06abd8ec.js.map} +1 -1
- package/dist/esm/{validation-0c197148.js → validation-b0361862.js} +1 -1
- package/dist/esm/{validation-0c197148.js.map → validation-b0361862.js.map} +1 -1
- package/dist/kolibri/Alert-362a56d6.js +4 -0
- package/dist/kolibri/Alert-362a56d6.js.map +1 -0
- package/dist/kolibri/{Collapsible-9dbf3e00.js → Collapsible-f5aaa0af.js} +1 -1
- package/dist/kolibri/CustomSuggestionsOptionsGroup-45c3a085.js +4 -0
- package/dist/kolibri/CustomSuggestionsOptionsGroup-45c3a085.js.map +1 -0
- package/dist/kolibri/FieldControlStateWrapper-5fe1febc.js +4 -0
- package/dist/kolibri/FieldControlStateWrapper-5fe1febc.js.map +1 -0
- package/dist/kolibri/{Heading-e1db538b.js → Heading-a93a1765.js} +1 -1
- package/dist/kolibri/Icon-1679f3fc.js +4 -0
- package/dist/kolibri/Input-f05ea4d5.js +4 -0
- package/dist/kolibri/Input-f05ea4d5.js.map +1 -0
- package/dist/kolibri/InputStateWrapper-040f7635.js +4 -0
- package/dist/kolibri/{InputStateWrapper-3d255d22.js.map → InputStateWrapper-040f7635.js.map} +1 -1
- package/dist/kolibri/InternalUnderlinedBadgeText-77ae0c4d.js +4 -0
- package/dist/kolibri/InternalUnderlinedBadgeText-77ae0c4d.js.map +1 -0
- package/dist/kolibri/{Span-a19668ac.js → Span-a625f565.js} +1 -1
- package/dist/kolibri/access-and-short-key-7091d688.js +4 -0
- package/dist/kolibri/align-679f189f.js +4 -0
- package/dist/kolibri/align-floating-elements-7cdb6dc6.js +4 -0
- package/dist/kolibri/align-floating-elements-7cdb6dc6.js.map +1 -0
- package/dist/kolibri/app-globals-832318f2.js +4 -0
- package/dist/kolibri/{associated.controller-52d302aa.js → associated.controller-9e991177.js} +1 -1
- package/dist/kolibri/bem-dabd96cc.js +4 -0
- package/dist/kolibri/bem-dabd96cc.js.map +1 -0
- package/dist/kolibri/bem-e4c3a2e6.js +4 -0
- package/dist/kolibri/bem-e4c3a2e6.js.map +1 -0
- package/dist/kolibri/browser-f629a56a.js +4 -0
- package/dist/kolibri/browser-f629a56a.js.map +1 -0
- package/dist/kolibri/{button-variant-ce5f212b.js → button-variant-68e61ccd.js} +1 -1
- package/dist/kolibri/{color-62f7b76a.js → color-adb63076.js} +1 -1
- package/dist/kolibri/color-adb63076.js.map +1 -0
- package/dist/kolibri/component-names-7ee7402b.js +4 -0
- package/dist/kolibri/component-names-7ee7402b.js.map +1 -0
- package/dist/kolibri/{controller-a26ccfc4.js → controller-070818e3.js} +1 -1
- package/dist/kolibri/controller-1be136a8.js +4 -0
- package/dist/kolibri/controller-1be136a8.js.map +1 -0
- package/dist/kolibri/{controller-f84a4671.js → controller-71d68376.js} +1 -1
- package/dist/kolibri/{controller-0953b02a.js → controller-f04a784c.js} +1 -1
- package/dist/kolibri/controller-icon-9397b382.js +4 -0
- package/dist/kolibri/controller-icon-9397b382.js.map +1 -0
- package/dist/kolibri/custom-class-7ee02f93.js +4 -0
- package/dist/kolibri/{dev.utils-f9d0242d.js → dev.utils-ada1cd11.js} +1 -1
- package/dist/kolibri/devtools-10e45767.js +4 -0
- package/dist/kolibri/{devtools-87a9e4de.js.map → devtools-10e45767.js.map} +1 -1
- package/dist/kolibri/{disabled-dad7478c.js → disabled-66301c63.js} +1 -1
- package/dist/kolibri/events-5886c68b.js +4 -0
- package/dist/kolibri/events-5886c68b.js.map +1 -0
- package/dist/kolibri/getRenderStates-3c94aee3.js +4 -0
- package/dist/kolibri/getRenderStates-3c94aee3.js.map +1 -0
- package/dist/kolibri/has-closer-f231599a.js +4 -0
- package/dist/kolibri/has-counter-239ecfc9.js +4 -0
- package/dist/kolibri/hide-label-4a7cf616.js +4 -0
- package/dist/kolibri/href-8cf96f1c.js +4 -0
- package/dist/kolibri/i18n-45224cc3.js +4 -0
- package/dist/kolibri/i18n-45224cc3.js.map +1 -0
- package/dist/kolibri/i18n-efbafc80.js +4 -0
- package/dist/kolibri/icons-ae235ff9.js +4 -0
- package/dist/kolibri/icons-ae235ff9.js.map +1 -0
- package/dist/kolibri/image-source-f8e45250.js +4 -0
- package/dist/kolibri/{index-06658c3d.js → index-62ec26b4.js} +2 -2
- package/dist/kolibri/index-62ec26b4.js.map +1 -0
- package/dist/kolibri/index-932feda8.js +4 -0
- package/dist/kolibri/index-932feda8.js.map +1 -0
- package/dist/kolibri/index.esm.js +1 -1
- package/dist/kolibri/index.esm.js.map +1 -1
- package/dist/kolibri/isArray-7a60fa7f.js +4 -0
- package/dist/kolibri/isArray-7a60fa7f.js.map +1 -0
- package/dist/kolibri/kol-abbr.entry.js +1 -1
- package/dist/kolibri/kol-abbr.entry.js.map +1 -1
- package/dist/kolibri/kol-accordion.entry.js +1 -1
- package/dist/kolibri/kol-accordion.entry.js.map +1 -1
- package/dist/kolibri/kol-alert-wc.entry.js +1 -1
- package/dist/kolibri/kol-alert-wc.entry.js.map +1 -1
- package/dist/kolibri/kol-alert.entry.js +1 -1
- package/dist/kolibri/kol-alert.entry.js.map +1 -1
- package/dist/kolibri/kol-avatar-wc.entry.js +1 -1
- package/dist/kolibri/kol-avatar.entry.js +1 -1
- package/dist/kolibri/kol-avatar.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-link.entry.js +1 -1
- package/dist/kolibri/kol-button-link.entry.js.map +1 -1
- package/dist/kolibri/kol-button-wc.entry.js +1 -1
- package/dist/kolibri/kol-button-wc.entry.js.map +1 -1
- package/dist/kolibri/kol-button.entry.js +1 -1
- package/dist/kolibri/kol-button.entry.js.map +1 -1
- package/dist/kolibri/kol-card.entry.js +1 -1
- package/dist/kolibri/kol-card.entry.js.map +1 -1
- package/dist/kolibri/kol-combobox.entry.js +1 -1
- package/dist/kolibri/kol-combobox.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-drawer.entry.js +1 -1
- package/dist/kolibri/kol-drawer.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.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-input-checkbox.entry.js +1 -1
- package/dist/kolibri/kol-input-checkbox.entry.js.map +1 -1
- package/dist/kolibri/kol-input-color.entry.js +1 -1
- package/dist/kolibri/kol-input-color.entry.js.map +1 -1
- package/dist/kolibri/kol-input-date.entry.js +1 -1
- package/dist/kolibri/kol-input-date.entry.js.map +1 -1
- package/dist/kolibri/kol-input-email.entry.js +1 -1
- package/dist/kolibri/kol-input-email.entry.js.map +1 -1
- package/dist/kolibri/kol-input-file.entry.js +1 -1
- package/dist/kolibri/kol-input-file.entry.js.map +1 -1
- package/dist/kolibri/kol-input-number.entry.js +1 -1
- package/dist/kolibri/kol-input-number.entry.js.map +1 -1
- package/dist/kolibri/kol-input-password.entry.js +1 -1
- package/dist/kolibri/kol-input-password.entry.js.map +1 -1
- package/dist/kolibri/kol-input-radio.entry.js +1 -1
- package/dist/kolibri/kol-input-radio.entry.js.map +1 -1
- package/dist/kolibri/kol-input-range.entry.js +1 -1
- package/dist/kolibri/kol-input-range.entry.js.map +1 -1
- package/dist/kolibri/kol-input-text.entry.js +1 -1
- package/dist/kolibri/kol-input-text.entry.js.map +1 -1
- package/dist/kolibri/kol-kolibri.entry.js +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-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-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-button-wc.entry.js +4 -0
- package/dist/kolibri/kol-popover-button-wc.entry.js.map +1 -0
- package/dist/kolibri/kol-popover-button.entry.js +1 -1
- package/dist/kolibri/kol-popover-button.entry.js.map +1 -1
- package/dist/kolibri/kol-popover-wc.entry.js +1 -1
- package/dist/kolibri/kol-progress.entry.js +1 -1
- package/dist/kolibri/kol-progress.entry.js.map +1 -1
- package/dist/kolibri/kol-quote.entry.js +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-single-select.entry.js +1 -1
- package/dist/kolibri/kol-single-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-spin.entry.js +1 -1
- package/dist/kolibri/kol-spin.entry.js.map +1 -1
- package/dist/kolibri/kol-split-button.entry.js +1 -1
- package/dist/kolibri/kol-split-button.entry.js.map +1 -1
- package/dist/kolibri/kol-table-settings-wc.entry.js +4 -0
- package/dist/kolibri/kol-table-settings-wc.entry.js.map +1 -0
- package/dist/kolibri/kol-table-stateful.entry.js +1 -1
- package/dist/kolibri/kol-table-stateful.entry.js.map +1 -1
- package/dist/kolibri/kol-table-stateless-wc.entry.js +1 -1
- package/dist/kolibri/kol-table-stateless-wc.entry.js.map +1 -1
- package/dist/kolibri/kol-table-stateless.entry.js +1 -1
- package/dist/kolibri/kol-table-stateless.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-container.entry.js +1 -1
- package/dist/kolibri/kol-toast-container.entry.js.map +1 -1
- package/dist/kolibri/kol-toolbar.entry.js +1 -1
- package/dist/kolibri/kol-toolbar.entry.js.map +1 -1
- package/dist/kolibri/kol-tooltip-wc.entry.js +1 -1
- package/dist/kolibri/kol-tooltip-wc.entry.js.map +1 -1
- package/dist/kolibri/kol-tree-item-wc.entry.js +1 -1
- package/dist/kolibri/kol-tree-item-wc.entry.js.map +1 -1
- package/dist/kolibri/kol-tree-item.entry.js +1 -1
- package/dist/kolibri/kol-tree-item.entry.js.map +1 -1
- package/dist/kolibri/kol-tree-wc.entry.js +1 -1
- package/dist/kolibri/kol-tree-wc.entry.js.map +1 -1
- package/dist/kolibri/kol-tree.entry.js +1 -1
- package/dist/kolibri/kol-tree.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-5355d0b2.js +4 -0
- package/dist/kolibri/open-cbfb3998.js +4 -0
- package/dist/kolibri/prop.validators-bb13c77c.js +4 -0
- package/dist/kolibri/prop.validators-bb13c77c.js.map +1 -0
- package/dist/kolibri/reuse-f46e7e35.js +4 -0
- package/dist/kolibri/reuse-f46e7e35.js.map +1 -0
- package/dist/kolibri/rows-e07b2646.js +4 -0
- package/dist/kolibri/show-fea62c9e.js +4 -0
- package/dist/kolibri/spell-check-6beed622.js +4 -0
- package/dist/kolibri/{suggestions-f139f5ec.js → suggestions-935a4e0c.js} +1 -1
- package/dist/kolibri/{callback-fd6ab619.js → table-settings-4fe55021.js} +1 -1
- package/dist/kolibri/table-settings-4fe55021.js.map +1 -0
- package/dist/kolibri/test-component.entry.js +1 -1
- package/dist/kolibri/tooltip-align-4b5c8431.js +4 -0
- package/dist/kolibri/validation-06abd8ec.js +4 -0
- package/dist/kolibri/{validation-0c197148.js → validation-b0361862.js} +1 -1
- package/dist/types/components/@deprecated/input/controller-icon.d.ts +2 -2
- package/dist/types/components/@deprecated/input/types-icon.d.ts +2 -4
- package/dist/types/components/button/component.d.ts +2 -0
- package/dist/types/components/button/shadow.d.ts +0 -1
- package/dist/types/components/button-link/shadow.d.ts +0 -1
- package/dist/types/components/combobox/shadow.d.ts +4 -5
- package/dist/types/components/component-list.d.ts +2 -2
- package/dist/types/components/icon/bem.d.ts +16 -0
- package/dist/types/components/input/controller.d.ts +1 -1
- package/dist/types/components/input/types.d.ts +2 -3
- package/dist/types/components/input-checkbox/shadow.d.ts +0 -2
- package/dist/types/components/input-color/shadow.d.ts +13 -8
- package/dist/types/components/input-date/shadow.d.ts +3 -5
- package/dist/types/components/input-email/shadow.d.ts +3 -5
- package/dist/types/components/input-file/shadow.d.ts +9 -5
- package/dist/types/components/input-number/shadow.d.ts +3 -5
- package/dist/types/components/input-password/shadow.d.ts +3 -5
- package/dist/types/components/input-radio/controller.d.ts +1 -1
- package/dist/types/components/input-radio/shadow.d.ts +0 -2
- package/dist/types/components/input-range/shadow.d.ts +3 -5
- package/dist/types/components/input-text/shadow.d.ts +3 -5
- package/dist/types/components/link/shadow.d.ts +0 -1
- package/dist/types/components/link-button/shadow.d.ts +0 -1
- package/dist/types/components/popover-button/component.d.ts +40 -0
- package/dist/types/components/popover-button/shadow.d.ts +3 -13
- package/dist/types/components/progress/shadow.d.ts +1 -1
- package/dist/types/components/select/shadow.d.ts +4 -4
- package/dist/types/components/single-select/controller.d.ts +4 -2
- package/dist/types/components/single-select/shadow.d.ts +11 -8
- package/dist/types/components/split-button/shadow.d.ts +0 -1
- package/dist/types/components/table-stateful/shadow.d.ts +3 -0
- package/dist/types/components/table-stateless/component.d.ts +16 -1
- package/dist/types/components/table-stateless/shadow.d.ts +2 -0
- package/dist/types/components/table-stateless/table-settings.d.ts +18 -0
- package/dist/types/components/tabs/shadow.d.ts +2 -1
- package/dist/types/components/textarea/shadow.d.ts +3 -5
- package/dist/types/components.d.ts +278 -374
- package/dist/types/core/component-names.d.ts +2 -0
- package/dist/types/functional-components/Alert/Alert.d.ts +1 -1
- package/dist/types/functional-components/Alert/bem.d.ts +29 -0
- package/dist/types/functional-components/IconButton/IconButton.d.ts +1 -1
- package/dist/types/index.d.ts +2 -0
- package/dist/types/locales/de.d.ts +12 -0
- package/dist/types/locales/en.d.ts +12 -0
- package/dist/types/schema/components/combobox.d.ts +4 -8
- package/dist/types/schema/components/input-checkbox.d.ts +0 -2
- package/dist/types/schema/components/input-color.d.ts +4 -8
- package/dist/types/schema/components/input-date.d.ts +3 -5
- package/dist/types/schema/components/input-email.d.ts +4 -8
- package/dist/types/schema/components/input-file.d.ts +4 -8
- package/dist/types/schema/components/input-number.d.ts +3 -5
- package/dist/types/schema/components/input-password.d.ts +5 -9
- package/dist/types/schema/components/input-radio.d.ts +0 -2
- package/dist/types/schema/components/input-range.d.ts +4 -8
- package/dist/types/schema/components/input-text.d.ts +4 -8
- package/dist/types/schema/components/input.d.ts +2 -3
- package/dist/types/schema/components/select.d.ts +5 -7
- package/dist/types/schema/components/single-select.d.ts +7 -9
- package/dist/types/schema/components/table.d.ts +3 -2
- package/dist/types/schema/components/tableStateless.d.ts +3 -2
- package/dist/types/schema/components/textarea.d.ts +4 -8
- package/dist/types/schema/interfaces/EventDetail.d.ts +4 -0
- package/dist/types/schema/props/aria-has-popup.d.ts +3 -0
- package/dist/types/schema/props/icons.d.ts +5 -1
- package/dist/types/schema/props/msg.d.ts +1 -2
- package/dist/types/schema/props/table-settings.d.ts +7 -0
- package/dist/types/schema/types/icons.d.ts +4 -0
- package/dist/types/schema/types/index.d.ts +1 -1
- package/dist/types/schema/types/input/control/number.d.ts +2 -4
- package/dist/types/schema/types/table-settings.d.ts +10 -0
- package/dist/types/schema/types/table.d.ts +1 -0
- package/dist/types/schema/utils/prop.validators.d.ts +0 -2
- package/dist/types/utils/events.d.ts +2 -1
- package/doc/button-link.md +0 -1
- package/doc/button.md +0 -1
- package/doc/combobox.md +0 -1
- package/doc/input-checkbox.md +0 -1
- package/doc/input-color.md +0 -1
- package/doc/input-date.md +0 -1
- package/doc/input-email.md +0 -1
- package/doc/input-file.md +0 -1
- package/doc/input-number.md +0 -1
- package/doc/input-password.md +0 -1
- package/doc/input-radio.md +0 -1
- package/doc/input-range.md +0 -1
- package/doc/input-text.md +0 -1
- package/doc/link-button.md +0 -1
- package/doc/link.md +0 -1
- package/doc/popover-button.md +14 -2
- package/doc/select.md +22 -22
- package/doc/single-select.md +24 -23
- package/doc/split-button.md +0 -1
- package/doc/table-stateful.md +2 -1
- package/doc/table-stateless.md +10 -9
- package/doc/textarea.md +1 -2
- package/package.json +4 -3
- package/vscode-custom-data.json +171 -74
- package/dist/cjs/Alert-e499a0f5.js +0 -4
- package/dist/cjs/Alert-e499a0f5.js.map +0 -1
- package/dist/cjs/CustomSuggestionsOptionsGroup-a8f57231.js +0 -4
- package/dist/cjs/CustomSuggestionsOptionsGroup-a8f57231.js.map +0 -1
- package/dist/cjs/FieldControlStateWrapper-24628eb1.js +0 -4
- package/dist/cjs/FieldControlStateWrapper-24628eb1.js.map +0 -1
- package/dist/cjs/FormFieldMsg-4224a47c.js +0 -4
- package/dist/cjs/FormFieldMsg-4224a47c.js.map +0 -1
- package/dist/cjs/Icon-7f43100b.js +0 -4
- package/dist/cjs/Input-1dcec29c.js +0 -4
- package/dist/cjs/Input-1dcec29c.js.map +0 -1
- package/dist/cjs/InputStateWrapper-5951abef.js +0 -4
- package/dist/cjs/InputStateWrapper-5951abef.js.map +0 -1
- package/dist/cjs/InternalUnderlinedBadgeText-434182d2.js +0 -4
- package/dist/cjs/InternalUnderlinedBadgeText-434182d2.js.map +0 -1
- package/dist/cjs/align-floating-elements-1d37261b.js +0 -4
- package/dist/cjs/align-floating-elements-1d37261b.js.map +0 -1
- package/dist/cjs/app-globals-702172ad.js +0 -4
- package/dist/cjs/callback-ab215ba6.js.map +0 -1
- package/dist/cjs/component-names-74abfa2e.js +0 -4
- package/dist/cjs/component-names-74abfa2e.js.map +0 -1
- package/dist/cjs/controller-44df52af.js +0 -4
- package/dist/cjs/controller-icon-0f569061.js +0 -4
- package/dist/cjs/controller-icon-0f569061.js.map +0 -1
- package/dist/cjs/custom-class-3a1c18f3.js +0 -4
- package/dist/cjs/disabled-5a2e250c.js +0 -4
- package/dist/cjs/events-fc641593.js.map +0 -1
- package/dist/cjs/getRenderStates-bea5d834.js +0 -4
- package/dist/cjs/getRenderStates-bea5d834.js.map +0 -1
- package/dist/cjs/has-closer-9b3c14a7.js +0 -4
- package/dist/cjs/has-counter-7318f6f4.js +0 -4
- package/dist/cjs/hide-label-b0063224.js +0 -4
- package/dist/cjs/href-2485cb51.js +0 -4
- package/dist/cjs/i18n-737701e2.js +0 -4
- package/dist/cjs/i18n-737701e2.js.map +0 -1
- package/dist/cjs/icons-310a07cc.js.map +0 -1
- package/dist/cjs/image-source-27335383.js +0 -4
- package/dist/cjs/index-38f5f0b2.js +0 -4
- package/dist/cjs/index-38f5f0b2.js.map +0 -1
- package/dist/cjs/index-f2f390fa.js +0 -4
- package/dist/cjs/index-f2f390fa.js.map +0 -1
- package/dist/cjs/kol-input.cjs.entry.js +0 -4
- package/dist/cjs/kol-input.cjs.entry.js.map +0 -1
- package/dist/cjs/open-5c1af49f.js +0 -4
- package/dist/cjs/prop.validators-96dfedce.js.map +0 -1
- package/dist/cjs/reuse-8cfefa9b.js +0 -4
- package/dist/cjs/reuse-8cfefa9b.js.map +0 -1
- package/dist/cjs/rows-782313b6.js +0 -4
- package/dist/cjs/show-5b2be58e.js +0 -4
- package/dist/cjs/spell-check-5c5eee25.js +0 -4
- package/dist/cjs/tooltip-align-3b9a6bde.js +0 -4
- package/dist/components/FormFieldMsg.js +0 -4
- package/dist/components/FormFieldMsg.js.map +0 -1
- package/dist/components/callback.js.map +0 -1
- package/dist/components/kol-input.js +0 -4
- package/dist/components/kol-input.js.map +0 -1
- package/dist/esm/Alert-ee7dcaa7.js +0 -4
- package/dist/esm/Alert-ee7dcaa7.js.map +0 -1
- package/dist/esm/CustomSuggestionsOptionsGroup-15302af4.js +0 -4
- package/dist/esm/CustomSuggestionsOptionsGroup-15302af4.js.map +0 -1
- package/dist/esm/FieldControlStateWrapper-a5049927.js +0 -4
- package/dist/esm/FieldControlStateWrapper-a5049927.js.map +0 -1
- package/dist/esm/FormFieldMsg-f1c6a975.js +0 -4
- package/dist/esm/FormFieldMsg-f1c6a975.js.map +0 -1
- package/dist/esm/Icon-1eca6817.js +0 -4
- package/dist/esm/Input-cc85529a.js +0 -4
- package/dist/esm/Input-cc85529a.js.map +0 -1
- package/dist/esm/InputStateWrapper-3d255d22.js +0 -4
- package/dist/esm/InputStateWrapper-3d255d22.js.map +0 -1
- package/dist/esm/InternalUnderlinedBadgeText-738f2cd0.js +0 -4
- package/dist/esm/InternalUnderlinedBadgeText-738f2cd0.js.map +0 -1
- package/dist/esm/align-floating-elements-db77d917.js +0 -4
- package/dist/esm/align-floating-elements-db77d917.js.map +0 -1
- package/dist/esm/app-globals-6d7eac5a.js +0 -4
- package/dist/esm/callback-fd6ab619.js.map +0 -1
- package/dist/esm/component-names-545d6582.js +0 -4
- package/dist/esm/component-names-545d6582.js.map +0 -1
- package/dist/esm/controller-2be0e2ad.js +0 -4
- package/dist/esm/controller-2be0e2ad.js.map +0 -1
- package/dist/esm/controller-icon-b0799db4.js +0 -4
- package/dist/esm/controller-icon-b0799db4.js.map +0 -1
- package/dist/esm/custom-class-ac49545a.js +0 -4
- package/dist/esm/disabled-dad7478c.js +0 -4
- package/dist/esm/events-5adf6b62.js.map +0 -1
- package/dist/esm/getRenderStates-8b6bedc5.js +0 -4
- package/dist/esm/getRenderStates-8b6bedc5.js.map +0 -1
- package/dist/esm/i18n-7ea9f137.js +0 -4
- package/dist/esm/i18n-7ea9f137.js.map +0 -1
- package/dist/esm/icons-199f1746.js.map +0 -1
- package/dist/esm/index-06658c3d.js +0 -4
- package/dist/esm/index-06658c3d.js.map +0 -1
- package/dist/esm/index-da3e0c00.js +0 -4
- package/dist/esm/index-da3e0c00.js.map +0 -1
- package/dist/esm/kol-input.entry.js +0 -4
- package/dist/esm/kol-input.entry.js.map +0 -1
- package/dist/esm/prop.validators-9feb1d92.js +0 -4
- package/dist/esm/prop.validators-9feb1d92.js.map +0 -1
- package/dist/esm/reuse-32931294.js +0 -4
- package/dist/esm/reuse-32931294.js.map +0 -1
- package/dist/esm/spell-check-60fa0b9f.js +0 -4
- package/dist/kolibri/Alert-ee7dcaa7.js +0 -4
- package/dist/kolibri/Alert-ee7dcaa7.js.map +0 -1
- package/dist/kolibri/CustomSuggestionsOptionsGroup-15302af4.js +0 -4
- package/dist/kolibri/CustomSuggestionsOptionsGroup-15302af4.js.map +0 -1
- package/dist/kolibri/FieldControlStateWrapper-a5049927.js +0 -4
- package/dist/kolibri/FieldControlStateWrapper-a5049927.js.map +0 -1
- package/dist/kolibri/FormFieldMsg-f1c6a975.js +0 -4
- package/dist/kolibri/FormFieldMsg-f1c6a975.js.map +0 -1
- package/dist/kolibri/Icon-1eca6817.js +0 -4
- package/dist/kolibri/Input-cc85529a.js +0 -4
- package/dist/kolibri/Input-cc85529a.js.map +0 -1
- package/dist/kolibri/InputStateWrapper-3d255d22.js +0 -4
- package/dist/kolibri/InternalUnderlinedBadgeText-738f2cd0.js +0 -4
- package/dist/kolibri/InternalUnderlinedBadgeText-738f2cd0.js.map +0 -1
- package/dist/kolibri/access-and-short-key-9cca88b8.js +0 -4
- package/dist/kolibri/align-4719d626.js +0 -4
- package/dist/kolibri/align-floating-elements-db77d917.js +0 -4
- package/dist/kolibri/align-floating-elements-db77d917.js.map +0 -1
- package/dist/kolibri/app-globals-6d7eac5a.js +0 -4
- package/dist/kolibri/callback-fd6ab619.js.map +0 -1
- package/dist/kolibri/color-62f7b76a.js.map +0 -1
- package/dist/kolibri/component-names-545d6582.js +0 -4
- package/dist/kolibri/component-names-545d6582.js.map +0 -1
- package/dist/kolibri/controller-2be0e2ad.js +0 -4
- package/dist/kolibri/controller-2be0e2ad.js.map +0 -1
- package/dist/kolibri/controller-icon-b0799db4.js +0 -4
- package/dist/kolibri/controller-icon-b0799db4.js.map +0 -1
- package/dist/kolibri/custom-class-ac49545a.js +0 -4
- package/dist/kolibri/devtools-87a9e4de.js +0 -4
- package/dist/kolibri/events-5adf6b62.js +0 -4
- package/dist/kolibri/events-5adf6b62.js.map +0 -1
- package/dist/kolibri/getRenderStates-8b6bedc5.js +0 -4
- package/dist/kolibri/getRenderStates-8b6bedc5.js.map +0 -1
- package/dist/kolibri/has-closer-a4e62c58.js +0 -4
- package/dist/kolibri/has-counter-a43c36ef.js +0 -4
- package/dist/kolibri/hide-label-429a15ea.js +0 -4
- package/dist/kolibri/href-d8ec67f8.js +0 -4
- package/dist/kolibri/i18n-5fe08f1c.js +0 -4
- package/dist/kolibri/i18n-7ea9f137.js +0 -4
- package/dist/kolibri/i18n-7ea9f137.js.map +0 -1
- package/dist/kolibri/icons-199f1746.js +0 -4
- package/dist/kolibri/icons-199f1746.js.map +0 -1
- package/dist/kolibri/image-source-320efd4f.js +0 -4
- package/dist/kolibri/index-06658c3d.js.map +0 -1
- package/dist/kolibri/index-da3e0c00.js +0 -4
- package/dist/kolibri/index-da3e0c00.js.map +0 -1
- package/dist/kolibri/kol-input.entry.js +0 -4
- package/dist/kolibri/kol-input.entry.js.map +0 -1
- package/dist/kolibri/label-d0315384.js +0 -4
- package/dist/kolibri/open-20d08415.js +0 -4
- package/dist/kolibri/prop.validators-9feb1d92.js +0 -4
- package/dist/kolibri/prop.validators-9feb1d92.js.map +0 -1
- package/dist/kolibri/reuse-32931294.js +0 -4
- package/dist/kolibri/reuse-32931294.js.map +0 -1
- package/dist/kolibri/rows-26af6558.js +0 -4
- package/dist/kolibri/show-484b637e.js +0 -4
- package/dist/kolibri/spell-check-60fa0b9f.js +0 -4
- package/dist/kolibri/tooltip-align-8e0fa436.js +0 -4
- package/dist/kolibri/validation-14b61e5a.js +0 -4
- package/dist/types/components/input/component.d.ts +0 -35
- /package/dist/kolibri/{Collapsible-9dbf3e00.js.map → Collapsible-f5aaa0af.js.map} +0 -0
- /package/dist/kolibri/{Heading-e1db538b.js.map → Heading-a93a1765.js.map} +0 -0
- /package/dist/kolibri/{Icon-1eca6817.js.map → Icon-1679f3fc.js.map} +0 -0
- /package/dist/kolibri/{Span-a19668ac.js.map → Span-a625f565.js.map} +0 -0
- /package/dist/kolibri/{access-and-short-key-9cca88b8.js.map → access-and-short-key-7091d688.js.map} +0 -0
- /package/dist/kolibri/{align-4719d626.js.map → align-679f189f.js.map} +0 -0
- /package/dist/kolibri/{app-globals-6d7eac5a.js.map → app-globals-832318f2.js.map} +0 -0
- /package/dist/kolibri/{associated.controller-52d302aa.js.map → associated.controller-9e991177.js.map} +0 -0
- /package/dist/kolibri/{button-variant-ce5f212b.js.map → button-variant-68e61ccd.js.map} +0 -0
- /package/dist/kolibri/{controller-a26ccfc4.js.map → controller-070818e3.js.map} +0 -0
- /package/dist/kolibri/{controller-f84a4671.js.map → controller-71d68376.js.map} +0 -0
- /package/dist/kolibri/{controller-0953b02a.js.map → controller-f04a784c.js.map} +0 -0
- /package/dist/kolibri/{custom-class-ac49545a.js.map → custom-class-7ee02f93.js.map} +0 -0
- /package/dist/kolibri/{dev.utils-f9d0242d.js.map → dev.utils-ada1cd11.js.map} +0 -0
- /package/dist/kolibri/{disabled-dad7478c.js.map → disabled-66301c63.js.map} +0 -0
- /package/dist/kolibri/{has-closer-a4e62c58.js.map → has-closer-f231599a.js.map} +0 -0
- /package/dist/kolibri/{has-counter-a43c36ef.js.map → has-counter-239ecfc9.js.map} +0 -0
- /package/dist/kolibri/{hide-label-429a15ea.js.map → hide-label-4a7cf616.js.map} +0 -0
- /package/dist/kolibri/{href-d8ec67f8.js.map → href-8cf96f1c.js.map} +0 -0
- /package/dist/kolibri/{i18n-5fe08f1c.js.map → i18n-efbafc80.js.map} +0 -0
- /package/dist/kolibri/{image-source-320efd4f.js.map → image-source-f8e45250.js.map} +0 -0
- /package/dist/kolibri/{label-d0315384.js.map → label-5355d0b2.js.map} +0 -0
- /package/dist/kolibri/{open-20d08415.js.map → open-cbfb3998.js.map} +0 -0
- /package/dist/kolibri/{rows-26af6558.js.map → rows-e07b2646.js.map} +0 -0
- /package/dist/kolibri/{show-484b637e.js.map → show-fea62c9e.js.map} +0 -0
- /package/dist/kolibri/{spell-check-60fa0b9f.js.map → spell-check-6beed622.js.map} +0 -0
- /package/dist/kolibri/{suggestions-f139f5ec.js.map → suggestions-935a4e0c.js.map} +0 -0
- /package/dist/kolibri/{tooltip-align-8e0fa436.js.map → tooltip-align-4b5c8431.js.map} +0 -0
- /package/dist/kolibri/{validation-14b61e5a.js.map → validation-06abd8ec.js.map} +0 -0
- /package/dist/kolibri/{validation-0c197148.js.map → validation-b0361862.js.map} +0 -0
@@ -1,4 +1,4 @@
|
|
1
1
|
/*!
|
2
2
|
* KoliBri - The accessible HTML-Standard
|
3
3
|
*/
|
4
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});const index=require("./index-
|
4
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});const index=require("./index-92a1d333.js"),i18n=require("./i18n-0e710ccd.js"),dev_utils=require("./dev.utils-2aebece9.js"),componentNames=require("./component-names-82c4d68d.js"),tslib_es6=require("./tslib.es6-5e301284.js"),clsx=require("./clsx-dd4d6dd1.js"),Alert=require("./Alert-2081f13f.js");require("./i18n-8c288a27.js"),require("./reuse-8650ea4e.js"),require("./dev.utils-58fde089.js"),require("./bem-85316256.js"),require("./browser-4433089a.js"),require("./Heading-7c92fd24.js");const ToastItemFc=t=>{var{status:n,toast:e,onClose:s}=t,o=tslib_es6.__rest(t,["status","toast","onClose"]);const{type:i,label:a,description:l,variant:r}=e;return index.h("div",{class:clsx.clsx("kol-toast-item",`kol-toast-item--${n}`)},index.h(Alert.KolAlertFc,{class:"kol-toast-item__alert",alert:!0,label:a,level:0,hasCloser:!0,type:i,variant:r||"card",onCloserClick:s},index.h("div",Object.assign({},o),l)))},KolToastItemFc=ToastItemFc,defaultStyleCss="/*\n * This file contains all rules for accessibility.\n */\n@layer kol-global {\n :host {\n /*\n * Minimum size of interactive elements.\n */\n --a11y-min-size: calc(44rem / var(--kolibri-root-font-size, 16));\n /*\n * No element should be used without a background and font color whose contrast ratio has\n * not been checked. By initially setting the background color to white and the font color\n * to black, the contrast ratio is ensured and explicit adjustment is forced.\n */\n background-color: white;\n color: black;\n /*\n * Verdana is an accessible font that can be used without requiring additional loading time.\n */\n font-family: Verdana;\n }\n * {\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n hyphens: auto;\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n word-break: break-word;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n }\n /*\n * All interactive elements should have a minimum size of rem(44).\n */\n /* input:not([type='checkbox'], [type='radio'], [type='range']), */\n /* option, */\n /* select, */\n /* textarea, */\n [role=button],\n button:not([role=link]) {\n min-height: var(--a11y-min-size);\n min-width: var(--a11y-min-size);\n }\n /*\n * Some interactive elements should not inherit the font-family and font-size.\n */\n a,\n button,\n h1,\n h2,\n h3,\n h4,\n h5,\n h6,\n input,\n option,\n select,\n textarea {\n /*\n * All elements should inherit the font family from his parent element.\n */\n font-family: inherit;\n /*\n * All elements should inherit the font size from his parent element.\n */\n font-size: inherit;\n }\n}\n/**\n * Sometimes we need the semantic element for accessibility reasons,\n * but we don't want to show it.\n *\n * - https://www.a11yproject.com/posts/how-to-hide-content/\n */\n.visually-hidden {\n clip: rect(0 0 0 0);\n clip-path: inset(50%);\n height: calc(1rem / var(--kolibri-root-font-size, 16));\n overflow: hidden;\n position: absolute;\n white-space: nowrap;\n width: calc(1rem / var(--kolibri-root-font-size, 16));\n}\n\n@layer kol-global {\n /*\n * Dieses CSS stellt sicher, dass der Standard-Style\n * von A und Button resettet werden.\n */\n :is(a, button) {\n background-color: transparent;\n border: none;\n margin: 0;\n padding: 0;\n width: 100%;\n /* 100% needed for custom width from outside */\n }\n /*\n * Ensure elements with hidden attribute to be actually not visible\n * @see https://meowni.ca/hidden.is.a.lie.html\n */\n [hidden] {\n display: none !important;\n }\n .badge-text-hint {\n background-color: lightgray;\n color: black;\n }\n}\n@layer kol-global {\n :host {\n /*\n * The max-width is needed to prevent the table from overflowing the\n * parent node, if the table is wider than the parent node.\n */\n max-width: 100%;\n }\n * {\n /*\n * We prefer to box-sizing: border-box for all elements.\n */\n box-sizing: border-box;\n }\n .kol-span {\n /* KolSpan is a layout component with icons in all directions and a label text in the middle. */\n display: grid;\n place-items: center;\n /* The sub span in KolSpan is the horizontal span with icon left and right and the label text in the middle. */\n }\n .kol-span__container {\n display: flex;\n place-items: center;\n }\n a,\n button {\n cursor: pointer;\n }\n .kol-span .kol-span__label--hide-label .kol-span__label {\n display: none;\n }\n /* Reset browser agent style. */\n button:disabled {\n color: unset;\n }\n .disabled label,\n .disabled:focus-within label,\n [aria-disabled=true],\n [aria-disabled=true]:focus,\n [disabled],\n [disabled]:focus {\n cursor: not-allowed;\n opacity: 0.5;\n outline: none;\n }\n [aria-disabled=true]:focus .kol-span,\n [disabled]:focus .kol-span {\n outline: none !important;\n }\n}\n@layer kol-component {\n :host {\n display: block;\n }\n}\n@layer kol-component {\n :host {\n font-size: calc(16rem / var(--kolibri-root-font-size, 16));\n }\n .kol-tooltip {\n display: contents;\n }\n .kol-tooltip__floating {\n animation-duration: 0.25s;\n animation-iteration-count: 1;\n animation-name: fadeInOpacity;\n animation-timing-function: ease-in;\n box-sizing: border-box;\n display: none;\n position: fixed;\n visibility: hidden;\n /* Avoid layout interference - see https://floating-ui.com/docs/computePosition */\n top: 0;\n left: 0;\n max-width: 90vw;\n max-height: 90vh;\n /* Can be used to specify the tooltip-width from the outside. Unset by default. */\n width: var(--kol-tooltip-width);\n }\n .kol-tooltip__arrow {\n background-color: #fff;\n color: #000;\n height: calc(10rem / var(--kolibri-root-font-size, 16));\n position: absolute;\n transform: rotate(45deg);\n width: calc(10rem / var(--kolibri-root-font-size, 16));\n z-index: 999;\n }\n .kol-tooltip__content {\n background-color: #fff;\n color: #000;\n position: relative;\n z-index: 1000;\n }\n @keyframes fadeInOpacity {\n 0% {\n opacity: 0;\n }\n 100% {\n opacity: 1;\n }\n }\n}\n@layer kol-component {\n .kol-alert {\n display: grid;\n }\n .kol-alert__container {\n place-items: center;\n display: flex;\n }\n .kol-alert__container-content {\n flex-grow: 1;\n }\n .kol-alert__closer {\n /* Visible with forced colors */\n outline: transparent solid calc(1rem / var(--kolibri-root-font-size, 16));\n }\n}\n@layer kol-component {\n :host {\n display: flex;\n flex-direction: column;\n font-size: calc(16rem / var(--kolibri-root-font-size, 16));\n position: fixed;\n z-index: 200;\n }\n .kol-toast-container__close-all {\n align-self: flex-end;\n }\n}",KolToastContainerDefaultStyle0=defaultStyleCss,TRANSITION_TIMEOUT=300,KolToastContainer=class{constructor(t){index.registerInstance(this,t),this.knownRenderFunctions=new Set,this.state={_toastStates:[]}}async enqueue(t){const n={toast:t,status:"adding",id:`toast-${dev_utils.nonce()}`};return this.state=Object.assign(Object.assign({},this.state),{_toastStates:[n,...this.state._toastStates]}),setTimeout((()=>{this.state=Object.assign(Object.assign({},this.state),{_toastStates:this.state._toastStates.map((t=>t.id===n.id&&"removing"!==t.status?Object.assign(Object.assign({},t),{status:"settled"}):t))})}),300),()=>{this.handleClose(n)}}handleClose(t){this.state=Object.assign(Object.assign({},this.state),{_toastStates:this.state._toastStates.map((n=>(n.id===t.id&&(n.status="removing"),n)))}),setTimeout((()=>{this.state=Object.assign(Object.assign({},this.state),{_toastStates:this.state._toastStates.filter((n=>n.id!==t.id))})}),300)}async closeAll(t=!1){if(t)this.state=Object.assign(Object.assign({},this.state),{_toastStates:[]});else{const t=[...this.state._toastStates];this.state=Object.assign(Object.assign({},this.state),{_toastStates:t.map((t=>Object.assign(Object.assign({},t),{status:"removing"})))}),setTimeout((()=>{this.state=Object.assign(Object.assign({},this.state),{_toastStates:this.state._toastStates.filter((n=>t.every((t=>t.id!==n.id))))})}),300)}}handleToastRef(t,n){n&&"function"==typeof t.toast.render&&!this.knownRenderFunctions.has(t.toast.render)&&(this.knownRenderFunctions.add(t.toast.render),t.toast.render(n,{close:()=>this.handleClose(t)}))}render(){return index.h(index.Host,{key:"43cab139328015afcc3105680b99a8880ad8c525",class:"kol-toast-container"},this.state._toastStates.length>1&&index.h(componentNames.KolButtonTag,{key:"1c8af42ea396c97e400db71cb7aeb4522fa12d4e",_label:i18n.translate("kol-toast-close-all"),class:"kol-toast-container__button-close-all",_on:{onClick:()=>{this.closeAll()}}}),this.state._toastStates.map((t=>index.h(KolToastItemFc,{key:t.id,onClose:()=>this.handleClose(t),ref:n=>this.handleToastRef(t,n),toast:t.toast,status:t.status}))))}};KolToastContainer.style={default:KolToastContainerDefaultStyle0},exports.kol_toast_container=KolToastContainer;
|
@@ -1 +1 @@
|
|
1
|
-
{"file":"kol-toast-container.entry.cjs.js","mappings":"
|
1
|
+
{"file":"kol-toast-container.entry.cjs.js","mappings":"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","names":["h","clsx","KolAlertFc","nonce","Host","KolButtonTag","translate"],"sources":["src/functional-components/ToastItem/ToastItem.tsx","src/components/toaster/style.scss?tag=kol-toast-container&mode=default&encapsulation=shadow","src/components/toaster/shadow.tsx"],"sourcesContent":["import { h, type FunctionalComponent as FC } from '@stencil/core';\nimport type { JSXBase } from '@stencil/core/internal';\nimport { type Toast } from '../../schema';\n\nimport KolAlertFc from '../Alert';\nimport clsx from 'clsx';\n\ntype ToastItemProps = JSXBase.HTMLAttributes<HTMLDivElement> & {\n\tstatus: 'adding' | 'settled' | 'removing';\n\ttoast: Toast;\n\tonClose: () => void;\n};\n\nconst ToastItemFc: FC<ToastItemProps> = ({ status, toast, onClose, ...other }) => {\n\tconst { type, label, description, variant } = toast;\n\n\treturn (\n\t\t<div class={clsx('kol-toast-item', `kol-toast-item--${status}`)}>\n\t\t\t<KolAlertFc\n\t\t\t\tclass=\"kol-toast-item__alert\"\n\t\t\t\talert={true}\n\t\t\t\tlabel={label}\n\t\t\t\tlevel={0}\n\t\t\t\thasCloser={true}\n\t\t\t\ttype={type}\n\t\t\t\tvariant={variant || 'card'}\n\t\t\t\tonCloserClick={onClose}\n\t\t\t>\n\t\t\t\t<div {...other}>{description}</div>\n\t\t\t</KolAlertFc>\n\t\t</div>\n\t);\n};\n\nexport default ToastItemFc;\n","@use '../../styles/global' as *;\n@use '../../styles/kol-alert-mixin' as *;\n@use '../@shared/mixins' as *;\n\n@include kol-alert;\n\n@layer kol-component {\n\t:host {\n\t\tdisplay: flex;\n\t\tflex-direction: column;\n\t\tfont-size: rem(16);\n\t\tposition: fixed;\n\t\tz-index: 200;\n\t}\n\n\t.kol-toast-container {\n\t\t&__close-all {\n\t\t\talign-self: flex-end;\n\t\t}\n\t}\n}\n","import type { JSX } from '@stencil/core';\nimport { Component, h, Host, Method, State } from '@stencil/core';\n\nimport { translate } from '../../i18n';\nimport { nonce } from '../../utils/dev.utils';\n\nimport type { Toast, ToasterAPI, ToasterStates, ToastRenderFunction, ToastState } from '../../schema';\nimport { KolButtonTag } from '../../core/component-names';\nimport { KolToastItemFc } from '../../functional-components';\n\nconst TRANSITION_TIMEOUT = 300;\n\n@Component({\n\ttag: 'kol-toast-container',\n\tstyleUrls: {\n\t\tdefault: './style.scss',\n\t},\n\tshadow: true,\n})\nexport class KolToastContainer implements ToasterAPI {\n\t@State() public state: ToasterStates = {\n\t\t_toastStates: [],\n\t};\n\n\t/* Keep track of render functions, so we call each only once. */\n\tprivate knownRenderFunctions = new Set<ToastRenderFunction>();\n\n\t// Stencil requires async function:\n\t@Method()\n\t// eslint-disable-next-line @typescript-eslint/require-await\n\tpublic async enqueue(toast: Toast) {\n\t\tconst newToastState: ToastState = {\n\t\t\ttoast,\n\t\t\tstatus: 'adding',\n\t\t\tid: `toast-${nonce()}`,\n\t\t};\n\t\tthis.state = {\n\t\t\t...this.state,\n\t\t\t_toastStates: [newToastState, ...this.state._toastStates],\n\t\t};\n\n\t\tsetTimeout(() => {\n\t\t\tthis.state = {\n\t\t\t\t...this.state,\n\t\t\t\t_toastStates: this.state._toastStates.map((localToastState) =>\n\t\t\t\t\tlocalToastState.id === newToastState.id && localToastState.status !== 'removing'\n\t\t\t\t\t\t? {\n\t\t\t\t\t\t\t\t...localToastState,\n\t\t\t\t\t\t\t\tstatus: 'settled',\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t: localToastState,\n\t\t\t\t),\n\t\t\t};\n\t\t}, TRANSITION_TIMEOUT);\n\n\t\treturn () => {\n\t\t\tthis.handleClose(newToastState);\n\t\t};\n\t}\n\n\tprivate handleClose(toastState: ToastState) {\n\t\tthis.state = {\n\t\t\t...this.state,\n\t\t\t_toastStates: this.state._toastStates.map((localToastState) => {\n\t\t\t\tif (localToastState.id === toastState.id) {\n\t\t\t\t\tlocalToastState.status = 'removing';\n\t\t\t\t}\n\t\t\t\treturn localToastState;\n\t\t\t}),\n\t\t};\n\n\t\tsetTimeout(() => {\n\t\t\tthis.state = {\n\t\t\t\t...this.state,\n\t\t\t\t_toastStates: this.state._toastStates.filter((localToastState) => localToastState.id !== toastState.id),\n\t\t\t};\n\t\t}, TRANSITION_TIMEOUT);\n\t}\n\n\t@Method()\n\t// eslint-disable-next-line @typescript-eslint/require-await\n\tpublic async closeAll(immediate: boolean = false) {\n\t\tif (immediate) {\n\t\t\tthis.state = {\n\t\t\t\t...this.state,\n\t\t\t\t_toastStates: [],\n\t\t\t};\n\t\t} else {\n\t\t\tconst toastsToClose = [...this.state._toastStates]; // Create a snapshot of the open toasts at the time closeAll has been called\n\n\t\t\tthis.state = {\n\t\t\t\t...this.state,\n\t\t\t\t_toastStates: toastsToClose.map((localToastState) => ({\n\t\t\t\t\t...localToastState,\n\t\t\t\t\tstatus: 'removing',\n\t\t\t\t})),\n\t\t\t};\n\n\t\t\tsetTimeout(() => {\n\t\t\t\tthis.state = {\n\t\t\t\t\t...this.state,\n\t\t\t\t\t_toastStates: this.state._toastStates.filter((toastState) => toastsToClose.every((toastToClose) => toastToClose.id !== toastState.id)),\n\t\t\t\t};\n\t\t\t}, TRANSITION_TIMEOUT);\n\t\t}\n\t}\n\n\tprivate handleToastRef(toastState: ToastState, element?: HTMLDivElement) {\n\t\tif (element && typeof toastState.toast.render === 'function' && !this.knownRenderFunctions.has(toastState.toast.render)) {\n\t\t\tthis.knownRenderFunctions.add(toastState.toast.render);\n\t\t\ttoastState.toast.render(element, { close: () => this.handleClose(toastState) });\n\t\t}\n\t}\n\n\tpublic render(): JSX.Element {\n\t\treturn (\n\t\t\t<Host class=\"kol-toast-container\">\n\t\t\t\t{this.state._toastStates.length > 1 && (\n\t\t\t\t\t<KolButtonTag\n\t\t\t\t\t\t_label={translate('kol-toast-close-all')}\n\t\t\t\t\t\tclass=\"kol-toast-container__button-close-all\"\n\t\t\t\t\t\t_on={{\n\t\t\t\t\t\t\tonClick: () => {\n\t\t\t\t\t\t\t\tvoid this.closeAll();\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t}}\n\t\t\t\t\t></KolButtonTag>\n\t\t\t\t)}\n\t\t\t\t{this.state._toastStates.map((toastState) => (\n\t\t\t\t\t<KolToastItemFc\n\t\t\t\t\t\tkey={toastState.id}\n\t\t\t\t\t\tonClose={() => this.handleClose(toastState)}\n\t\t\t\t\t\tref={(element?: HTMLDivElement) => this.handleToastRef(toastState, element)}\n\t\t\t\t\t\ttoast={toastState.toast}\n\t\t\t\t\t\tstatus={toastState.status}\n\t\t\t\t\t/>\n\t\t\t\t))}\n\t\t\t</Host>\n\t\t);\n\t}\n}\n"],"version":3}
|
@@ -1,4 +1,4 @@
|
|
1
1
|
/*!
|
2
2
|
* KoliBri - The accessible HTML-Standard
|
3
3
|
*/
|
4
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});const index=require("./index-
|
4
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});const index=require("./index-92a1d333.js"),componentNames=require("./component-names-82c4d68d.js"),prop_validators=require("./prop.validators-b788b493.js"),label=require("./label-fab376ae.js");require("./index-49ec9257.js"),require("./dev.utils-58fde089.js");const validateToolbarItems=(n,e)=>{prop_validators.emptyStringByArrayHandler(e,(()=>{prop_validators.objectObjectHandler(e,(()=>{void 0===e&&(e=[]);try{e=prop_validators.parseJson(e)}catch(n){}Array.isArray(e)&&e.every((n=>"object"==typeof n&&null!==n))&&prop_validators.setState(n,"_items",e)}))}))},defaultStyleCss="@charset \"UTF-8\";\n/*\n * This file contains all rules for accessibility.\n */\n@layer kol-global {\n :host {\n /*\n * Minimum size of interactive elements.\n */\n --a11y-min-size: calc(44rem / var(--kolibri-root-font-size, 16));\n /*\n * No element should be used without a background and font color whose contrast ratio has\n * not been checked. By initially setting the background color to white and the font color\n * to black, the contrast ratio is ensured and explicit adjustment is forced.\n */\n background-color: white;\n color: black;\n /*\n * Verdana is an accessible font that can be used without requiring additional loading time.\n */\n font-family: Verdana;\n }\n * {\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n hyphens: auto;\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n word-break: break-word;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n }\n /*\n * All interactive elements should have a minimum size of rem(44).\n */\n /* input:not([type='checkbox'], [type='radio'], [type='range']), */\n /* option, */\n /* select, */\n /* textarea, */\n [role=button],\n button:not([role=link]) {\n min-height: var(--a11y-min-size);\n min-width: var(--a11y-min-size);\n }\n /*\n * Some interactive elements should not inherit the font-family and font-size.\n */\n a,\n button,\n h1,\n h2,\n h3,\n h4,\n h5,\n h6,\n input,\n option,\n select,\n textarea {\n /*\n * All elements should inherit the font family from his parent element.\n */\n font-family: inherit;\n /*\n * All elements should inherit the font size from his parent element.\n */\n font-size: inherit;\n }\n}\n/**\n * Sometimes we need the semantic element for accessibility reasons,\n * but we don't want to show it.\n *\n * - https://www.a11yproject.com/posts/how-to-hide-content/\n */\n.visually-hidden {\n clip: rect(0 0 0 0);\n clip-path: inset(50%);\n height: calc(1rem / var(--kolibri-root-font-size, 16));\n overflow: hidden;\n position: absolute;\n white-space: nowrap;\n width: calc(1rem / var(--kolibri-root-font-size, 16));\n}\n\n@layer kol-global {\n /*\n * Dieses CSS stellt sicher, dass der Standard-Style\n * von A und Button resettet werden.\n */\n :is(a, button) {\n background-color: transparent;\n border: none;\n margin: 0;\n padding: 0;\n width: 100%;\n /* 100% needed for custom width from outside */\n }\n /*\n * Ensure elements with hidden attribute to be actually not visible\n * @see https://meowni.ca/hidden.is.a.lie.html\n */\n [hidden] {\n display: none !important;\n }\n .badge-text-hint {\n background-color: lightgray;\n color: black;\n }\n}\n@layer kol-global {\n :host {\n /*\n * The max-width is needed to prevent the table from overflowing the\n * parent node, if the table is wider than the parent node.\n */\n max-width: 100%;\n }\n * {\n /*\n * We prefer to box-sizing: border-box for all elements.\n */\n box-sizing: border-box;\n }\n .kol-span {\n /* KolSpan is a layout component with icons in all directions and a label text in the middle. */\n display: grid;\n place-items: center;\n /* The sub span in KolSpan is the horizontal span with icon left and right and the label text in the middle. */\n }\n .kol-span__container {\n display: flex;\n place-items: center;\n }\n a,\n button {\n cursor: pointer;\n }\n .kol-span .kol-span__label--hide-label .kol-span__label {\n display: none;\n }\n /* Reset browser agent style. */\n button:disabled {\n color: unset;\n }\n .disabled label,\n .disabled:focus-within label,\n [aria-disabled=true],\n [aria-disabled=true]:focus,\n [disabled],\n [disabled]:focus {\n cursor: not-allowed;\n opacity: 0.5;\n outline: none;\n }\n [aria-disabled=true]:focus .kol-span,\n [disabled]:focus .kol-span {\n outline: none !important;\n }\n}\n@layer kol-component {\n :host {\n font-size: calc(16rem / var(--kolibri-root-font-size, 16));\n }\n .kol-tooltip {\n display: contents;\n }\n .kol-tooltip__floating {\n animation-duration: 0.25s;\n animation-iteration-count: 1;\n animation-name: fadeInOpacity;\n animation-timing-function: ease-in;\n box-sizing: border-box;\n display: none;\n position: fixed;\n visibility: hidden;\n /* Avoid layout interference - see https://floating-ui.com/docs/computePosition */\n top: 0;\n left: 0;\n max-width: 90vw;\n max-height: 90vh;\n /* Can be used to specify the tooltip-width from the outside. Unset by default. */\n width: var(--kol-tooltip-width);\n }\n .kol-tooltip__arrow {\n background-color: #fff;\n color: #000;\n height: calc(10rem / var(--kolibri-root-font-size, 16));\n position: absolute;\n transform: rotate(45deg);\n width: calc(10rem / var(--kolibri-root-font-size, 16));\n z-index: 999;\n }\n .kol-tooltip__content {\n background-color: #fff;\n color: #000;\n position: relative;\n z-index: 1000;\n }\n @keyframes fadeInOpacity {\n 0% {\n opacity: 0;\n }\n 100% {\n opacity: 1;\n }\n }\n}\n@layer kol-component {\n :host {\n display: inline-block;\n }\n .kol-link {\n font-style: calc(16rem / var(--kolibri-root-font-size, 16));\n display: inline-flex;\n place-items: center;\n text-align: center;\n text-decoration-line: none;\n }\n .kol-link::before {\n /* Render zero-width character as first element to set the baseline correctly. */\n content: \"\";\n }\n .kol-link__text {\n margin: auto;\n width: 100%;\n }\n}\n@layer kol-component {\n .kol-toolbar {\n font-size: calc(16rem / var(--kolibri-root-font-size, 16));\n display: flex;\n align-items: center;\n gap: calc(16rem / var(--kolibri-root-font-size, 16));\n flex-wrap: wrap;\n }\n .kol-toolbar:focus-within {\n outline: 1px solid;\n outline-offset: 2px;\n }\n}",KolToolbarDefaultStyle0=defaultStyleCss,KolToolbar=class{constructor(n){index.registerInstance(this,n),this.indexToElement=new Map,this.renderItem=(n,e)=>{const t=e!==this.currentIndex||(null==n?void 0:n._disabled)?-1:0,o={key:e,class:"button normal kol-toolbar__item",_tabIndex:t},i=n=>{n&&this.indexToElement.set(e,n)};return"_href"in n?index.h(componentNames.KolLinkWcTag,Object.assign({},n,o,{ref:i,_role:"button"})):index.h(componentNames.KolButtonWcTag,Object.assign({},n,o,{ref:i}))},this.state={_label:"",_items:[]},this.currentIndex=0,this._label=void 0,this._items=void 0}render(){return index.h("div",{key:"ce72055bee29ba24ec133dc88eff54d8e25c817d",class:"kol-toolbar",role:"toolbar","aria-label":this.state._label},this.state._items.map(this.renderItem))}validateLabel(n){label.validateLabel(this,n)}validateItems(n){validateToolbarItems(this,n)}getCurrentToolbarItem(n){return"number"==typeof n?this.indexToElement.get(n):void 0}setFirstEnabledItemIndex(){var n;this.currentIndex=null===(n=this.state._items)||void 0===n?void 0:n.findIndex((n=>!n._disabled))}handleKeyDown(n){var e,t;if(!("ArrowRight"===n.code||"ArrowLeft"===n.code))return;n.preventDefault();const o=(null===(e=this._items)||void 0===e?void 0:e.length)-1,i=this.currentIndex;let a=0;switch(n.code){case"ArrowLeft":a=i!==a?i-1:o;break;case"ArrowRight":o!==i&&(a=i+1)}i!==a&&(this.currentIndex=a,null===(t=this.getCurrentToolbarItem(a))||void 0===t||t.kolFocus())}handleBlur(n){n.target===this.host&&this.setFirstEnabledItemIndex()}componentWillLoad(){this.validateLabel(this._label),this.validateItems(this._items),this.setFirstEnabledItemIndex()}get host(){return index.getElement(this)}static get watchers(){return{_label:["validateLabel"],_items:["validateItems"]}}};KolToolbar.style={default:KolToolbarDefaultStyle0},exports.kol_toolbar=KolToolbar;
|
@@ -1 +1 @@
|
|
1
|
-
{"file":"kol-toolbar.entry.cjs.js","mappings":";;;;;;;;;;;;;;AAiBO,MAAM,oBAAoB,GAAG,CAAC,SAAoC,EAAE,KAA4B;IACtGA,yCAAyB,CAAC,KAAK,EAAE;QAChCC,mCAAmB,CAAC,KAAK,EAAE;YAC1B,IAAI,OAAO,KAAK,KAAK,WAAW,EAAE;gBACjC,KAAK,GAAG,EAAE,CAAC;aACX;YACD,IAAI;gBACH,KAAK,GAAGC,yBAAS,CAAwB,KAAK,CAAC,CAAC;aAEhD;YAAC,OAAO,CAAC,EAAE;aAEX;YACD,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,KAAK,CAAC,CAAC,KAA0B,KAAK,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,CAAC,EAAE;gBACrHC,wBAAQ,CAAC,SAAS,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC;aACrC;SACD,CAAC,CAAC;KACH,CAAC,CAAC;AACJ,CAAC;;AClCD,MAAM,eAAe,GAAG,
|
1
|
+
{"file":"kol-toolbar.entry.cjs.js","mappings":"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","names":["emptyStringByArrayHandler","objectObjectHandler","parseJson","setState","index","h","KolLinkWcTag","KolButtonWcTag","validateLabel"],"sources":["src/schema/props/toolbar-items.ts","src/components/toolbar/style.scss?tag=kol-toolbar&mode=default&encapsulation=shadow","src/components/toolbar/shadow.tsx"],"sourcesContent":["import type { Generic } from 'adopted-style-sheets';\n\nimport { emptyStringByArrayHandler, objectObjectHandler, parseJson, setState } from '../utils';\nimport type { ButtonProps, LinkProps } from '../../schema';\n\n/* types */\nexport type ToolbarItemPropType = ButtonProps | LinkProps;\nexport type ToolbarItemsPropType = ToolbarItemPropType[];\n\n/**\n * Defines the primary toolbar items.\n */\nexport type PropToolbarItems = {\n\titems: ToolbarItemsPropType;\n};\n\n/* validator */\nexport const validateToolbarItems = (component: Generic.Element.Component, value?: ToolbarItemsPropType): void => {\n\temptyStringByArrayHandler(value, () => {\n\t\tobjectObjectHandler(value, () => {\n\t\t\tif (typeof value === 'undefined') {\n\t\t\t\tvalue = [];\n\t\t\t}\n\t\t\ttry {\n\t\t\t\tvalue = parseJson<ToolbarItemPropType[]>(value);\n\t\t\t\t// eslint-disable-next-line no-empty\n\t\t\t} catch (e) {\n\t\t\t\t// value keeps the original items\n\t\t\t}\n\t\t\tif (Array.isArray(value) && value.every((items: ToolbarItemPropType) => typeof items === 'object' && items !== null)) {\n\t\t\t\tsetState(component, '_items', value);\n\t\t\t}\n\t\t});\n\t});\n};\n","@use '../@shared/mixins' as *;\n@use '../../styles/global' as *;\n@use '../tooltip/style.scss' as *;\n@use '../@shared/kol-button-mixin' as *;\n\n@include kol-button-styles('kol-link');\n\n@layer kol-component {\n\t.kol-toolbar {\n\t\tfont-size: rem(16);\n\n\t\tdisplay: flex;\n\t\talign-items: center;\n\t\tgap: rem(16);\n\t\tflex-wrap: wrap;\n\n\t\t&:focus-within {\n\t\t\toutline: 1px solid;\n\t\t\toutline-offset: 2px;\n\t\t}\n\t}\n}\n","import type { JSX } from '@stencil/core';\nimport { Component, Element, h, Listen, Prop, State, Watch } from '@stencil/core';\n\nimport type { LabelPropType, ToolbarAPI, ToolbarStates, ToolbarItemsPropType, ToolbarItemPropType } from '../../schema';\nimport { validateLabel, validateToolbarItems } from '../../schema';\nimport { KolLinkWcTag, KolButtonWcTag } from '../../core/component-names';\n\n@Component({\n\ttag: 'kol-toolbar',\n\tstyleUrls: {\n\t\tdefault: './style.scss',\n\t},\n\tshadow: true,\n})\nexport class KolToolbar implements ToolbarAPI {\n\t@Element() host!: HTMLElement;\n\n\t@State() public state: ToolbarStates = {\n\t\t_label: '',\n\t\t_items: [],\n\t};\n\n\t@State() private currentIndex: number = 0;\n\n\tprivate indexToElement = new Map<number, HTMLKolLinkWcElement | HTMLKolButtonWcElement>();\n\n\tprivate renderItem = (element: ToolbarItemPropType, index: number): JSX.Element => {\n\t\tconst tabIndex = index === this.currentIndex && !element?._disabled ? 0 : -1;\n\t\tconst props = {\n\t\t\tkey: index,\n\t\t\tclass: 'button normal kol-toolbar__item',\n\t\t\t_tabIndex: tabIndex,\n\t\t};\n\t\tconst catchRef = (element?: HTMLKolLinkWcElement | HTMLKolButtonWcElement) => {\n\t\t\telement && this.indexToElement.set(index, element);\n\t\t};\n\n\t\treturn '_href' in element ? (\n\t\t\t<KolLinkWcTag {...element} {...props} ref={catchRef} _role=\"button\"></KolLinkWcTag>\n\t\t) : (\n\t\t\t<KolButtonWcTag {...element} {...props} ref={catchRef}></KolButtonWcTag>\n\t\t);\n\t};\n\n\tpublic render(): JSX.Element {\n\t\treturn (\n\t\t\t<div class=\"kol-toolbar\" role=\"toolbar\" aria-label={this.state._label}>\n\t\t\t\t{this.state._items.map(this.renderItem)}\n\t\t\t</div>\n\t\t);\n\t}\n\n\t/**\n\t * Defines the visible or semantic label of the component (e.g. aria-label, label, headline, caption, summary, etc.).\n\t */\n\t@Prop() public _label!: string;\n\n\t/**\n\t * Defines the functional elements of toolbar to render (e.g. kol-link, kol-button).\n\t */\n\t@Prop() public _items!: ToolbarItemsPropType;\n\n\t@Watch('_label') validateLabel(value?: LabelPropType): void {\n\t\tvalidateLabel(this, value);\n\t}\n\n\t@Watch('_items')\n\tpublic validateItems(value?: ToolbarItemsPropType): void {\n\t\tvalidateToolbarItems(this, value);\n\t}\n\n\t/**\n\t * Retrieves the toolbar item by index if defined.\n\t * If not it use the current index of state.\n\t *\n\t * @returns An array of HTMLElements representing the toolbar items.\n\t */\n\tprivate getCurrentToolbarItem(index?: number): ChildNode | undefined {\n\t\treturn typeof index === 'number' ? this.indexToElement.get(index) : undefined;\n\t}\n\n\t/**\n\t * Sets the index of the first enabled toolbar item.\n\t */\n\tprivate setFirstEnabledItemIndex() {\n\t\tthis.currentIndex = this.state._items?.findIndex((item) => !item._disabled);\n\t}\n\n\t@Listen('keydown')\n\tpublic handleKeyDown(event: KeyboardEvent) {\n\t\tconst isArrowKey = event.code === 'ArrowRight' || event.code === 'ArrowLeft';\n\t\tif (!isArrowKey) return;\n\t\tevent.preventDefault();\n\n\t\tconst lastItemIndex = this._items?.length - 1;\n\t\tconst currentIndex = this.currentIndex;\n\t\tlet nextIndex = 0;\n\n\t\tswitch (event.code) {\n\t\t\tcase 'ArrowLeft':\n\t\t\t\tnextIndex = currentIndex !== nextIndex ? currentIndex - 1 : lastItemIndex;\n\t\t\t\tbreak;\n\t\t\tcase 'ArrowRight':\n\t\t\t\tif (lastItemIndex !== currentIndex) nextIndex = currentIndex + 1;\n\t\t\t\tbreak;\n\t\t}\n\t\tif (currentIndex === nextIndex) return;\n\n\t\tthis.currentIndex = nextIndex;\n\t\tvoid (this.getCurrentToolbarItem(nextIndex) as HTMLKolLinkWcElement | HTMLKolButtonWcElement | undefined)?.kolFocus();\n\t}\n\n\t/**\n\t * Resets the tabIndexes of the toolbar to default.\n\t */\n\t@Listen('blur', { capture: true })\n\tpublic handleBlur(event: FocusEvent) {\n\t\tif (event.target === this.host) this.setFirstEnabledItemIndex();\n\t}\n\n\tpublic componentWillLoad(): void {\n\t\tthis.validateLabel(this._label);\n\t\tthis.validateItems(this._items);\n\t\tthis.setFirstEnabledItemIndex();\n\t}\n}\n"],"version":3}
|
@@ -1,4 +1,4 @@
|
|
1
1
|
/*!
|
2
2
|
* KoliBri - The accessible HTML-Standard
|
3
3
|
*/
|
4
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});const index=require("./index-
|
4
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});const index=require("./index-92a1d333.js"),alignFloatingElements=require("./align-floating-elements-f88156a1.js"),Span=require("./Span-da47606f.js"),prop_validators=require("./prop.validators-b788b493.js"),dev_utils=require("./dev.utils-58fde089.js"),align=require("./align-93ac54ce.js"),label=require("./label-fab376ae.js");require("./reuse-8650ea4e.js"),require("./tslib.es6-5e301284.js"),require("./clsx-dd4d6dd1.js"),require("./Icon-eaf6789f.js"),require("./component-names-82c4d68d.js"),require("./InternalUnderlinedBadgeText-75ec8b12.js"),require("./isArray-e114fe6e.js"),require("./isObject-6090b636.js"),require("./index-49ec9257.js");const validateBadgeText=(e,t)=>{prop_validators.watchString(e,"_badgeText",t)},validateId=(e,t)=>{prop_validators.watchString(e,"_id",t)},VISIBLE_OVERLAYS=new Set;function showOverlay(e){VISIBLE_OVERLAYS.forEach((e=>{e.style.setProperty("z-index","999")})),VISIBLE_OVERLAYS.add(e),e.style.setProperty("z-index","1000")}function hideOverlay(e){if(VISIBLE_OVERLAYS.delete(e),VISIBLE_OVERLAYS.size>0){const e=Array.from(VISIBLE_OVERLAYS).pop();e&&e.style.setProperty("z-index","1000")}}const KolTooltipWc=class{constructor(e){index.registerInstance(this,e),this.hasFocusIn=!1,this.hasMouseIn=!1,this.showTooltip=()=>{if(this.previousSibling&&this.tooltipElement){showOverlay(this.tooltipElement),this.tooltipElement.style.setProperty("display","block"),dev_utils.getDocument().addEventListener("keyup",this.hideTooltipByEscape);const e=this.previousSibling,t=this.tooltipElement;this.cleanupAutoPositioning=alignFloatingElements.autoUpdate(e,t,(()=>{this.alignTooltip()}))}},this.hideTooltip=()=>{this.tooltipElement&&(hideOverlay(this.tooltipElement),this.tooltipElement.style.setProperty("display","none"),this.tooltipElement.style.setProperty("visibility","hidden"),this.cleanupAutoPositioning&&(this.cleanupAutoPositioning(),this.cleanupAutoPositioning=void 0)),dev_utils.getDocument().removeEventListener("keyup",this.hideTooltipByEscape)},this.hideTooltipByEscape=e=>{"Escape"===e.key&&this.hideTooltip()},this.addListeners=e=>{e.addEventListener("mouseenter",this.handleMouseEnter.bind(this)),e.addEventListener("mouseleave",this.handleMouseleave.bind(this)),e.addEventListener("focusin",this.handleFocusIn.bind(this)),e.addEventListener("focusout",this.handleFocusout.bind(this))},this.removeListeners=e=>{e.removeEventListener("mouseenter",this.handleMouseEnter.bind(this)),e.removeEventListener("mouseleave",this.handleMouseleave.bind(this)),e.removeEventListener("focusin",this.handleFocusIn.bind(this)),e.removeEventListener("focusout",this.handleFocusout.bind(this))},this.resyncListeners=(e,t,i=!1)=>{e&&this.removeListeners(e),t&&(i&&(this.previousSibling=t),this.addListeners(t))},this.catchTooltipElement=e=>{this.tooltipElement=e},this.catchArrowElement=e=>{this.arrowElement=e},this.showOrHideTooltip=()=>{clearTimeout(this.overFocusTimeout),this.overFocusTimeout=setTimeout((()=>{this.hasMouseIn||this.hasFocusIn?this.showTooltip():this.hideTooltip()}),300)},this._badgeText=void 0,this._align="top",this._id=void 0,this._label=void 0,this.state={_align:"top",_label:""}}async alignTooltip(){this.tooltipElement&&this.previousSibling&&await alignFloatingElements.alignFloatingElements({align:this._align,referenceElement:this.previousSibling,arrowElement:this.arrowElement,floatingElement:this.tooltipElement})}handleMouseEnter(){this.hasMouseIn=!0,this.showOrHideTooltip()}handleMouseleave(){this.hasMouseIn=!1,this.showOrHideTooltip()}handleFocusIn(){this.hasFocusIn=!0,this.showOrHideTooltip()}handleFocusout(){this.hasFocusIn=!1,this.showOrHideTooltip()}render(){return index.h(index.Host,{key:"4852834fc19a0047920d45f7c571d81a99d0dcbe",class:"kol-tooltip"},""!==this.state._label&&index.h("div",{key:"2bdc1f7dfc7f7de90dcd3a37375b01daa4d78c79",class:"kol-tooltip__floating",ref:this.catchTooltipElement},index.h("div",{key:"0a029ee8f29d29f589873a7ce03630efcbb17b09",class:"kol-tooltip__arrow",ref:this.catchArrowElement}),index.h(Span.KolSpanFc,{key:"5410f3fc83be087594be5fd4009d3bf832fc5b23",class:"kol-tooltip__content",id:this.state._id,badgeText:this._badgeText,label:this.state._label})))}validateBadgeText(e){validateBadgeText(this,e)}validateAlign(e){align.validateAlign(this,e)}validateId(e){validateId(this,e)}validateLabel(e){label.validateLabel(this,e,{required:!0})}componentWillLoad(){this.validateBadgeText(this._badgeText),this.validateAlign(this._align),this.validateId(this._id),this.validateLabel(this._label)}handleEventListeners(){var e;this.resyncListeners(this.previousSibling,null===(e=this.host)||void 0===e?void 0:e.previousElementSibling,!0),this.resyncListeners(this.tooltipElement,this.tooltipElement)}connectedCallback(){var e;this.previousSibling=null===(e=this.host)||void 0===e?void 0:e.previousElementSibling}componentDidRender(){this.handleEventListeners()}disconnectedCallback(){this.previousSibling&&(this.removeListeners(this.previousSibling),this.previousSibling=void 0),this.tooltipElement&&this.removeListeners(this.tooltipElement),this.cleanupAutoPositioning&&this.cleanupAutoPositioning()}get host(){return index.getElement(this)}static get watchers(){return{_badgeText:["validateBadgeText"],_align:["validateAlign"],_id:["validateId"],_label:["validateLabel"]}}};exports.kol_tooltip_wc=KolTooltipWc;
|
@@ -1 +1 @@
|
|
1
|
-
{"file":"kol-tooltip-wc.entry.cjs.js","mappings":"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","names":["watchString","getDocument","autoUpdate","alignFloatingElements","h","Host","KolSpanFc","validateAlign","validateLabel"],"sources":["src/schema/props/badge-text.ts","src/schema/props/id.ts","src/utils/overlay.ts","src/components/tooltip/component.tsx"],"sourcesContent":["import type { Generic } from 'adopted-style-sheets';\nimport { watchString } from '../utils';\nimport type { AccessKeyPropType } from './access-key';\nimport type { ShortKeyPropType } from './short-key';\n\n/* types */\nexport type BadgeTextPropType = AccessKeyPropType | ShortKeyPropType;\n\n/**\n * Defines the elements badge text.\n */\nexport type PropBadgeText = {\n\tbadgeText: BadgeTextPropType;\n};\n\n/* validator */\nexport const validateBadgeText = (component: Generic.Element.Component, value?: BadgeTextPropType): void => {\n\twatchString(component, '_badgeText', value);\n};\n","import type { Generic } from 'adopted-style-sheets';\n\nimport { watchString } from '../utils';\n\n/* types */\nexport type IdPropType = string;\n\n/**\n * Defines the internal ID of the primary component element.\n */\nexport type PropId = {\n\tid: IdPropType;\n};\n\n/* validator */\nexport const validateId = (component: Generic.Element.Component, value?: IdPropType): void => {\n\twatchString(component, '_id', value);\n};\n","/**\n * This file contains the functions used to manage the visible overlays.\n */\n\n/**\n * This set contains all the visible overlays.\n */\nconst VISIBLE_OVERLAYS: Set<HTMLElement> = new Set();\n\n/**\n * This function is used to add an overlay to the visible overlay list.\n * All overlays in the list will have a z-index of 999, except the last\n * one, which will have a z-index of 1000.\n *\n * @param overlay Get the overlay element reference\n */\nexport function showOverlay(overlay: HTMLElement): void {\n\tVISIBLE_OVERLAYS.forEach((visibleOverlay) => {\n\t\tvisibleOverlay.style.setProperty('z-index', '999');\n\t});\n\tVISIBLE_OVERLAYS.add(overlay);\n\toverlay.style.setProperty('z-index', '1000');\n}\n\n/**\n * This function is used to remove an overlay from the visible overlay list.\n * All overlays in the list will have a z-index of 999, except the last\n * one, which will have a z-index of 1000.\n *\n * @param overlay Get the overlay element reference\n */\nexport function hideOverlay(overlay: HTMLElement): void {\n\tVISIBLE_OVERLAYS.delete(overlay);\n\tif (VISIBLE_OVERLAYS.size > 0) {\n\t\tconst last = Array.from(VISIBLE_OVERLAYS).pop();\n\t\tif (last) {\n\t\t\tlast.style.setProperty('z-index', '1000');\n\t\t}\n\t}\n}\n","import { autoUpdate } from '@floating-ui/dom';\nimport type { AlignPropType, BadgeTextPropType, IdPropType, LabelPropType, TooltipAPI, TooltipStates } from '../../schema';\nimport { getDocument, validateBadgeText, validateAlign, validateId, validateLabel } from '../../schema';\nimport type { JSX } from '@stencil/core';\nimport { Component, Element, h, Host, Prop, State, Watch } from '@stencil/core';\n\nimport { alignFloatingElements } from '../../utils/align-floating-elements';\nimport { hideOverlay, showOverlay } from '../../utils/overlay';\nimport { KolSpanFc } from '../../functional-components';\n\n/**\n * @internal\n */\n@Component({\n\ttag: 'kol-tooltip-wc',\n\tshadow: false,\n})\nexport class KolTooltipWc implements TooltipAPI {\n\t@Element() private host!: HTMLKolTooltipWcElement;\n\n\tprivate arrowElement?: HTMLDivElement;\n\tprivate previousSibling?: Element | null;\n\tprivate tooltipElement?: HTMLDivElement;\n\tprivate hasFocusIn = false;\n\tprivate hasMouseIn = false;\n\n\tprivate cleanupAutoPositioning?: () => void;\n\n\tprivate async alignTooltip(): Promise<void> {\n\t\tif (this.tooltipElement && this.previousSibling) {\n\t\t\tawait alignFloatingElements({\n\t\t\t\talign: this._align,\n\t\t\t\treferenceElement: this.previousSibling,\n\t\t\t\tarrowElement: this.arrowElement,\n\t\t\t\tfloatingElement: this.tooltipElement,\n\t\t\t});\n\t\t}\n\t}\n\n\tprivate showTooltip = (): void => {\n\t\tif (this.previousSibling && this.tooltipElement /* SSR instanceof HTMLElement */) {\n\t\t\tshowOverlay(this.tooltipElement);\n\t\t\tthis.tooltipElement.style.setProperty('display', 'block');\n\t\t\tgetDocument().addEventListener('keyup', this.hideTooltipByEscape);\n\n\t\t\tconst target = this.previousSibling;\n\t\t\tconst tooltipEl = this.tooltipElement;\n\t\t\tthis.cleanupAutoPositioning = autoUpdate(target, tooltipEl, () => {\n\t\t\t\tvoid this.alignTooltip();\n\t\t\t});\n\t\t}\n\t};\n\n\tprivate hideTooltip = (): void => {\n\t\tif (this.tooltipElement /* SSR instanceof HTMLElement */) {\n\t\t\thideOverlay(this.tooltipElement);\n\t\t\tthis.tooltipElement.style.setProperty('display', 'none');\n\t\t\tthis.tooltipElement.style.setProperty('visibility', 'hidden');\n\t\t\tif (this.cleanupAutoPositioning) {\n\t\t\t\tthis.cleanupAutoPositioning();\n\t\t\t\tthis.cleanupAutoPositioning = undefined;\n\t\t\t}\n\t\t}\n\t\tgetDocument().removeEventListener('keyup', this.hideTooltipByEscape);\n\t};\n\n\tprivate hideTooltipByEscape = (event: KeyboardEvent): void => {\n\t\tif (event.key === 'Escape') {\n\t\t\tthis.hideTooltip();\n\t\t}\n\t};\n\n\tprivate handleMouseEnter() {\n\t\tthis.hasMouseIn = true;\n\t\tthis.showOrHideTooltip();\n\t}\n\tprivate handleMouseleave() {\n\t\tthis.hasMouseIn = false;\n\t\tthis.showOrHideTooltip();\n\t}\n\tprivate handleFocusIn() {\n\t\tthis.hasFocusIn = true;\n\t\tthis.showOrHideTooltip();\n\t}\n\tprivate handleFocusout() {\n\t\tthis.hasFocusIn = false;\n\t\tthis.showOrHideTooltip();\n\t}\n\n\tprivate addListeners = (el: Element): void => {\n\t\tel.addEventListener('mouseenter', this.handleMouseEnter.bind(this));\n\t\tel.addEventListener('mouseleave', this.handleMouseleave.bind(this));\n\t\tel.addEventListener('focusin', this.handleFocusIn.bind(this));\n\t\tel.addEventListener('focusout', this.handleFocusout.bind(this));\n\t};\n\n\tprivate removeListeners = (el: Element): void => {\n\t\tel.removeEventListener('mouseenter', this.handleMouseEnter.bind(this));\n\t\tel.removeEventListener('mouseleave', this.handleMouseleave.bind(this));\n\t\tel.removeEventListener('focusin', this.handleFocusIn.bind(this));\n\t\tel.removeEventListener('focusout', this.handleFocusout.bind(this));\n\t};\n\n\tprivate resyncListeners = (last?: Element | null, next?: Element | null, replacePreviousSibling = false): void => {\n\t\tif (last) {\n\t\t\tthis.removeListeners(last);\n\t\t}\n\t\tif (next) {\n\t\t\t/**\n\t\t\t * This makes the next element to the last element for the next resync cycle.\n\t\t\t */\n\t\t\tif (replacePreviousSibling) {\n\t\t\t\tthis.previousSibling = next;\n\t\t\t}\n\t\t\tthis.addListeners(next);\n\t\t}\n\t};\n\n\tprivate catchTooltipElement = (el?: HTMLDivElement): void => {\n\t\tthis.tooltipElement = el;\n\t};\n\tprivate catchArrowElement = (element?: HTMLDivElement): void => {\n\t\tthis.arrowElement = element;\n\t};\n\n\tpublic render(): JSX.Element {\n\t\treturn (\n\t\t\t<Host class=\"kol-tooltip\">\n\t\t\t\t{this.state._label !== '' && (\n\t\t\t\t\t<div class=\"kol-tooltip__floating\" ref={this.catchTooltipElement}>\n\t\t\t\t\t\t<div class=\"kol-tooltip__arrow\" ref={this.catchArrowElement} />\n\t\t\t\t\t\t<KolSpanFc class=\"kol-tooltip__content\" id={this.state._id} badgeText={this._badgeText} label={this.state._label} />\n\t\t\t\t\t</div>\n\t\t\t\t)}\n\t\t\t</Host>\n\t\t);\n\t}\n\n\t/**\n\t * Defines the elements badge text.\n\t */\n\t@Prop() public _badgeText?: BadgeTextPropType;\n\n\t/**\n\t * Defines the alignment of the tooltip, popover or tabs in relation to the element.\n\t */\n\t@Prop() public _align?: AlignPropType = 'top';\n\n\t/**\n\t * Defines the internal ID of the primary component element.\n\t */\n\t@Prop() public _id?: IdPropType;\n\n\t/**\n\t * Defines the visible or semantic label of the component (e.g. aria-label, label, headline, caption, summary, etc.).\n\t */\n\t@Prop() public _label!: LabelPropType;\n\n\t@State() public state: TooltipStates = {\n\t\t_align: 'top',\n\t\t_label: '', // ⚠ required\n\t};\n\n\t@Watch('_badgeText')\n\tpublic validateBadgeText(value?: BadgeTextPropType): void {\n\t\tvalidateBadgeText(this, value);\n\t}\n\n\t@Watch('_align')\n\tpublic validateAlign(value?: AlignPropType): void {\n\t\tvalidateAlign(this, value);\n\t}\n\n\t@Watch('_id')\n\tpublic validateId(value?: IdPropType): void {\n\t\tvalidateId(this, value);\n\t}\n\n\t@Watch('_label')\n\tpublic validateLabel(value?: LabelPropType): void {\n\t\tvalidateLabel(this, value, {\n\t\t\trequired: true,\n\t\t});\n\t}\n\n\tprivate overFocusTimeout?: ReturnType<typeof setTimeout>;\n\n\tprivate showOrHideTooltip = (): void => {\n\t\tclearTimeout(this.overFocusTimeout);\n\t\tthis.overFocusTimeout = setTimeout(() => {\n\t\t\tif (this.hasMouseIn || this.hasFocusIn) {\n\t\t\t\tthis.showTooltip();\n\t\t\t} else {\n\t\t\t\tthis.hideTooltip();\n\t\t\t}\n\t\t\t// Timing Guidelines for Exposing Hidden Content: https://www.nngroup.com/articles/timing-exposing-content/\n\t\t}, 300);\n\t};\n\n\tpublic componentWillLoad(): void {\n\t\tthis.validateBadgeText(this._badgeText);\n\t\tthis.validateAlign(this._align);\n\t\tthis.validateId(this._id);\n\t\tthis.validateLabel(this._label);\n\t}\n\n\tprivate handleEventListeners(): void {\n\t\tthis.resyncListeners(this.previousSibling, this.host?.previousElementSibling, true);\n\t\tthis.resyncListeners(this.tooltipElement, this.tooltipElement);\n\t}\n\n\tpublic connectedCallback(): void {\n\t\tthis.previousSibling = this.host?.previousElementSibling;\n\t}\n\n\tpublic componentDidRender(): void {\n\t\tthis.handleEventListeners();\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (componentDidLoad)\n\t */\n\tpublic disconnectedCallback(): void {\n\t\tif (this.previousSibling /* SSR instanceof HTMLElement */) {\n\t\t\tthis.removeListeners(this.previousSibling);\n\t\t\tthis.previousSibling = undefined;\n\t\t}\n\t\tif (this.tooltipElement /* SSR instanceof HTMLElement */) {\n\t\t\tthis.removeListeners(this.tooltipElement);\n\t\t}\n\t\tif (this.cleanupAutoPositioning) {\n\t\t\tthis.cleanupAutoPositioning();\n\t\t}\n\t}\n}\n"],"version":3}
|
1
|
+
{"file":"kol-tooltip-wc.entry.cjs.js","mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAgBO,MAAM,iBAAiB,GAAG,CAAC,SAAoC,EAAE,KAAyB;IAChGA,2BAAW,CAAC,SAAS,EAAE,YAAY,EAAE,KAAK,CAAC,CAAC;AAC7C,CAAC;;ACHM,MAAM,UAAU,GAAG,CAAC,SAAoC,EAAE,KAAkB;IAClFA,2BAAW,CAAC,SAAS,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;AACtC,CAAC;;ACVD,MAAM,gBAAgB,GAAqB,IAAI,GAAG,EAAE,CAAC;SASrC,WAAW,CAAC,OAAoB;IAC/C,gBAAgB,CAAC,OAAO,CAAC,CAAC,cAAc;QACvC,cAAc,CAAC,KAAK,CAAC,WAAW,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;KACnD,CAAC,CAAC;IACH,gBAAgB,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IAC9B,OAAO,CAAC,KAAK,CAAC,WAAW,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;AAC9C,CAAC;SASe,WAAW,CAAC,OAAoB;IAC/C,gBAAgB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IACjC,IAAI,gBAAgB,CAAC,IAAI,GAAG,CAAC,EAAE;QAC9B,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,GAAG,EAAE,CAAC;QAChD,IAAI,IAAI,EAAE;YACT,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;SAC1C;KACD;AACF;;MCtBa,YAAY;;;QAMhB,eAAU,GAAG,KAAK,CAAC;QACnB,eAAU,GAAG,KAAK,CAAC;QAenB,gBAAW,GAAG;YACrB,IAAI,IAAI,CAAC,eAAe,IAAI,IAAI,CAAC,cAAc,EAAmC;gBACjF,WAAW,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;gBACjC,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,WAAW,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;gBAC1DC,qBAAW,EAAE,CAAC,gBAAgB,CAAC,OAAO,EAAE,IAAI,CAAC,mBAAmB,CAAC,CAAC;gBAElE,MAAM,MAAM,GAAG,IAAI,CAAC,eAAe,CAAC;gBACpC,MAAM,SAAS,GAAG,IAAI,CAAC,cAAc,CAAC;gBACtC,IAAI,CAAC,sBAAsB,GAAGC,gCAAU,CAAC,MAAM,EAAE,SAAS,EAAE;oBAC3D,KAAK,IAAI,CAAC,YAAY,EAAE,CAAC;iBACzB,CAAC,CAAC;aACH;SACD,CAAC;QAEM,gBAAW,GAAG;YACrB,IAAI,IAAI,CAAC,cAAc,EAAmC;gBACzD,WAAW,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;gBACjC,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,WAAW,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;gBACzD,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,WAAW,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC;gBAC9D,IAAI,IAAI,CAAC,sBAAsB,EAAE;oBAChC,IAAI,CAAC,sBAAsB,EAAE,CAAC;oBAC9B,IAAI,CAAC,sBAAsB,GAAG,SAAS,CAAC;iBACxC;aACD;YACDD,qBAAW,EAAE,CAAC,mBAAmB,CAAC,OAAO,EAAE,IAAI,CAAC,mBAAmB,CAAC,CAAC;SACrE,CAAC;QAEM,wBAAmB,GAAG,CAAC,KAAoB;YAClD,IAAI,KAAK,CAAC,GAAG,KAAK,QAAQ,EAAE;gBAC3B,IAAI,CAAC,WAAW,EAAE,CAAC;aACnB;SACD,CAAC;QAmBM,iBAAY,GAAG,CAAC,EAAW;YAClC,EAAE,CAAC,gBAAgB,CAAC,YAAY,EAAE,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;YACpE,EAAE,CAAC,gBAAgB,CAAC,YAAY,EAAE,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;YACpE,EAAE,CAAC,gBAAgB,CAAC,SAAS,EAAE,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;YAC9D,EAAE,CAAC,gBAAgB,CAAC,UAAU,EAAE,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;SAChE,CAAC;QAEM,oBAAe,GAAG,CAAC,EAAW;YACrC,EAAE,CAAC,mBAAmB,CAAC,YAAY,EAAE,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;YACvE,EAAE,CAAC,mBAAmB,CAAC,YAAY,EAAE,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;YACvE,EAAE,CAAC,mBAAmB,CAAC,SAAS,EAAE,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;YACjE,EAAE,CAAC,mBAAmB,CAAC,UAAU,EAAE,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;SACnE,CAAC;QAEM,oBAAe,GAAG,CAAC,IAAqB,EAAE,IAAqB,EAAE,sBAAsB,GAAG,KAAK;YACtG,IAAI,IAAI,EAAE;gBACT,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;aAC3B;YACD,IAAI,IAAI,EAAE;gBAIT,IAAI,sBAAsB,EAAE;oBAC3B,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC;iBAC5B;gBACD,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;aACxB;SACD,CAAC;QAEM,wBAAmB,GAAG,CAAC,EAAmB;YACjD,IAAI,CAAC,cAAc,GAAG,EAAE,CAAC;SACzB,CAAC;QACM,sBAAiB,GAAG,CAAC,OAAwB;YACpD,IAAI,CAAC,YAAY,GAAG,OAAO,CAAC;SAC5B,CAAC;QAgEM,sBAAiB,GAAG;YAC3B,YAAY,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;YACpC,IAAI,CAAC,gBAAgB,GAAG,UAAU,CAAC;gBAClC,IAAI,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,UAAU,EAAE;oBACvC,IAAI,CAAC,WAAW,EAAE,CAAC;iBACnB;qBAAM;oBACN,IAAI,CAAC,WAAW,EAAE,CAAC;iBACnB;aAED,EAAE,GAAG,CAAC,CAAC;SACR,CAAC;;sBAnDsC,KAAK;;;qBAYN;YACtC,MAAM,EAAE,KAAK;YACb,MAAM,EAAE,EAAE;SACV;;IArIO,MAAM,YAAY;QACzB,IAAI,IAAI,CAAC,cAAc,IAAI,IAAI,CAAC,eAAe,EAAE;YAChD,MAAME,2CAAqB,CAAC;gBAC3B,KAAK,EAAE,IAAI,CAAC,MAAM;gBAClB,gBAAgB,EAAE,IAAI,CAAC,eAAe;gBACtC,YAAY,EAAE,IAAI,CAAC,YAAY;gBAC/B,eAAe,EAAE,IAAI,CAAC,cAAc;aACpC,CAAC,CAAC;SACH;KACD;IAmCO,gBAAgB;QACvB,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;QACvB,IAAI,CAAC,iBAAiB,EAAE,CAAC;KACzB;IACO,gBAAgB;QACvB,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;QACxB,IAAI,CAAC,iBAAiB,EAAE,CAAC;KACzB;IACO,aAAa;QACpB,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;QACvB,IAAI,CAAC,iBAAiB,EAAE,CAAC;KACzB;IACO,cAAc;QACrB,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;QACxB,IAAI,CAAC,iBAAiB,EAAE,CAAC;KACzB;IAsCM,MAAM;QACZ,QACCC,QAACC,UAAI,qDAAC,KAAK,EAAC,aAAa,IACvB,IAAI,CAAC,KAAK,CAAC,MAAM,KAAK,EAAE,KACxBD,kEAAK,KAAK,EAAC,uBAAuB,EAAC,GAAG,EAAE,IAAI,CAAC,mBAAmB,IAC/DA,kEAAK,KAAK,EAAC,oBAAoB,EAAC,GAAG,EAAE,IAAI,CAAC,iBAAiB,GAAI,EAC/DA,QAACE,cAAS,qDAAC,KAAK,EAAC,sBAAsB,EAAC,EAAE,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,SAAS,EAAE,IAAI,CAAC,UAAU,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,GAAI,CAC/G,CACN,CACK,EACN;KACF;IA4BM,iBAAiB,CAAC,KAAyB;QACjD,iBAAiB,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;KAC/B;IAGM,aAAa,CAAC,KAAqB;QACzCC,mBAAa,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;KAC3B;IAGM,UAAU,CAAC,KAAkB;QACnC,UAAU,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;KACxB;IAGM,aAAa,CAAC,KAAqB;QACzCC,mBAAa,CAAC,IAAI,EAAE,KAAK,EAAE;YAC1B,QAAQ,EAAE,IAAI;SACd,CAAC,CAAC;KACH;IAgBM,iBAAiB;QACvB,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QACxC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAChC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC1B,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;KAChC;IAEO,oBAAoB;;QAC3B,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,eAAe,EAAE,MAAA,IAAI,CAAC,IAAI,0CAAE,sBAAsB,EAAE,IAAI,CAAC,CAAC;QACpF,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,cAAc,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC;KAC/D;IAEM,iBAAiB;;QACvB,IAAI,CAAC,eAAe,GAAG,MAAA,IAAI,CAAC,IAAI,0CAAE,sBAAsB,CAAC;KACzD;IAEM,kBAAkB;QACxB,IAAI,CAAC,oBAAoB,EAAE,CAAC;KAC5B;IAKM,oBAAoB;QAC1B,IAAI,IAAI,CAAC,eAAe,EAAmC;YAC1D,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;YAC3C,IAAI,CAAC,eAAe,GAAG,SAAS,CAAC;SACjC;QACD,IAAI,IAAI,CAAC,cAAc,EAAmC;YACzD,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;SAC1C;QACD,IAAI,IAAI,CAAC,sBAAsB,EAAE;YAChC,IAAI,CAAC,sBAAsB,EAAE,CAAC;SAC9B;KACD;;;;;;;;;;;;","names":["watchString","getDocument","autoUpdate","alignFloatingElements","h","Host","KolSpanFc","validateAlign","validateLabel"],"sources":["src/schema/props/badge-text.ts","src/schema/props/id.ts","src/utils/overlay.ts","src/components/tooltip/component.tsx"],"sourcesContent":["import type { Generic } from 'adopted-style-sheets';\nimport { watchString } from '../utils';\nimport type { AccessKeyPropType } from './access-key';\nimport type { ShortKeyPropType } from './short-key';\n\n/* types */\nexport type BadgeTextPropType = AccessKeyPropType | ShortKeyPropType;\n\n/**\n * Defines the elements badge text.\n */\nexport type PropBadgeText = {\n\tbadgeText: BadgeTextPropType;\n};\n\n/* validator */\nexport const validateBadgeText = (component: Generic.Element.Component, value?: BadgeTextPropType): void => {\n\twatchString(component, '_badgeText', value);\n};\n","import type { Generic } from 'adopted-style-sheets';\n\nimport { watchString } from '../utils';\n\n/* types */\nexport type IdPropType = string;\n\n/**\n * Defines the internal ID of the primary component element.\n */\nexport type PropId = {\n\tid: IdPropType;\n};\n\n/* validator */\nexport const validateId = (component: Generic.Element.Component, value?: IdPropType): void => {\n\twatchString(component, '_id', value);\n};\n","/**\n * This file contains the functions used to manage the visible overlays.\n */\n\n/**\n * This set contains all the visible overlays.\n */\nconst VISIBLE_OVERLAYS: Set<HTMLElement> = new Set();\n\n/**\n * This function is used to add an overlay to the visible overlay list.\n * All overlays in the list will have a z-index of 999, except the last\n * one, which will have a z-index of 1000.\n *\n * @param overlay Get the overlay element reference\n */\nexport function showOverlay(overlay: HTMLElement): void {\n\tVISIBLE_OVERLAYS.forEach((visibleOverlay) => {\n\t\tvisibleOverlay.style.setProperty('z-index', '999');\n\t});\n\tVISIBLE_OVERLAYS.add(overlay);\n\toverlay.style.setProperty('z-index', '1000');\n}\n\n/**\n * This function is used to remove an overlay from the visible overlay list.\n * All overlays in the list will have a z-index of 999, except the last\n * one, which will have a z-index of 1000.\n *\n * @param overlay Get the overlay element reference\n */\nexport function hideOverlay(overlay: HTMLElement): void {\n\tVISIBLE_OVERLAYS.delete(overlay);\n\tif (VISIBLE_OVERLAYS.size > 0) {\n\t\tconst last = Array.from(VISIBLE_OVERLAYS).pop();\n\t\tif (last) {\n\t\t\tlast.style.setProperty('z-index', '1000');\n\t\t}\n\t}\n}\n","import { autoUpdate } from '@floating-ui/dom';\nimport type { AlignPropType, BadgeTextPropType, IdPropType, LabelPropType, TooltipAPI, TooltipStates } from '../../schema';\nimport { getDocument, validateBadgeText, validateAlign, validateId, validateLabel } from '../../schema';\nimport type { JSX } from '@stencil/core';\nimport { Component, Element, h, Host, Prop, State, Watch } from '@stencil/core';\n\nimport { alignFloatingElements } from '../../utils/align-floating-elements';\nimport { hideOverlay, showOverlay } from '../../utils/overlay';\nimport { KolSpanFc } from '../../functional-components';\n\n/**\n * @internal\n */\n@Component({\n\ttag: 'kol-tooltip-wc',\n\tshadow: false,\n})\nexport class KolTooltipWc implements TooltipAPI {\n\t@Element() private host!: HTMLKolTooltipWcElement;\n\n\tprivate arrowElement?: HTMLDivElement;\n\tprivate previousSibling?: Element | null;\n\tprivate tooltipElement?: HTMLDivElement;\n\tprivate hasFocusIn = false;\n\tprivate hasMouseIn = false;\n\n\tprivate cleanupAutoPositioning?: () => void;\n\n\tprivate async alignTooltip(): Promise<void> {\n\t\tif (this.tooltipElement && this.previousSibling) {\n\t\t\tawait alignFloatingElements({\n\t\t\t\talign: this._align,\n\t\t\t\treferenceElement: this.previousSibling,\n\t\t\t\tarrowElement: this.arrowElement,\n\t\t\t\tfloatingElement: this.tooltipElement,\n\t\t\t});\n\t\t}\n\t}\n\n\tprivate showTooltip = (): void => {\n\t\tif (this.previousSibling && this.tooltipElement /* SSR instanceof HTMLElement */) {\n\t\t\tshowOverlay(this.tooltipElement);\n\t\t\tthis.tooltipElement.style.setProperty('display', 'block');\n\t\t\tgetDocument().addEventListener('keyup', this.hideTooltipByEscape);\n\n\t\t\tconst target = this.previousSibling;\n\t\t\tconst tooltipEl = this.tooltipElement;\n\t\t\tthis.cleanupAutoPositioning = autoUpdate(target, tooltipEl, () => {\n\t\t\t\tvoid this.alignTooltip();\n\t\t\t});\n\t\t}\n\t};\n\n\tprivate hideTooltip = (): void => {\n\t\tif (this.tooltipElement /* SSR instanceof HTMLElement */) {\n\t\t\thideOverlay(this.tooltipElement);\n\t\t\tthis.tooltipElement.style.setProperty('display', 'none');\n\t\t\tthis.tooltipElement.style.setProperty('visibility', 'hidden');\n\t\t\tif (this.cleanupAutoPositioning) {\n\t\t\t\tthis.cleanupAutoPositioning();\n\t\t\t\tthis.cleanupAutoPositioning = undefined;\n\t\t\t}\n\t\t}\n\t\tgetDocument().removeEventListener('keyup', this.hideTooltipByEscape);\n\t};\n\n\tprivate hideTooltipByEscape = (event: KeyboardEvent): void => {\n\t\tif (event.key === 'Escape') {\n\t\t\tthis.hideTooltip();\n\t\t}\n\t};\n\n\tprivate handleMouseEnter() {\n\t\tthis.hasMouseIn = true;\n\t\tthis.showOrHideTooltip();\n\t}\n\tprivate handleMouseleave() {\n\t\tthis.hasMouseIn = false;\n\t\tthis.showOrHideTooltip();\n\t}\n\tprivate handleFocusIn() {\n\t\tthis.hasFocusIn = true;\n\t\tthis.showOrHideTooltip();\n\t}\n\tprivate handleFocusout() {\n\t\tthis.hasFocusIn = false;\n\t\tthis.showOrHideTooltip();\n\t}\n\n\tprivate addListeners = (el: Element): void => {\n\t\tel.addEventListener('mouseenter', this.handleMouseEnter.bind(this));\n\t\tel.addEventListener('mouseleave', this.handleMouseleave.bind(this));\n\t\tel.addEventListener('focusin', this.handleFocusIn.bind(this));\n\t\tel.addEventListener('focusout', this.handleFocusout.bind(this));\n\t};\n\n\tprivate removeListeners = (el: Element): void => {\n\t\tel.removeEventListener('mouseenter', this.handleMouseEnter.bind(this));\n\t\tel.removeEventListener('mouseleave', this.handleMouseleave.bind(this));\n\t\tel.removeEventListener('focusin', this.handleFocusIn.bind(this));\n\t\tel.removeEventListener('focusout', this.handleFocusout.bind(this));\n\t};\n\n\tprivate resyncListeners = (last?: Element | null, next?: Element | null, replacePreviousSibling = false): void => {\n\t\tif (last) {\n\t\t\tthis.removeListeners(last);\n\t\t}\n\t\tif (next) {\n\t\t\t/**\n\t\t\t * This makes the next element to the last element for the next resync cycle.\n\t\t\t */\n\t\t\tif (replacePreviousSibling) {\n\t\t\t\tthis.previousSibling = next;\n\t\t\t}\n\t\t\tthis.addListeners(next);\n\t\t}\n\t};\n\n\tprivate catchTooltipElement = (el?: HTMLDivElement): void => {\n\t\tthis.tooltipElement = el;\n\t};\n\tprivate catchArrowElement = (element?: HTMLDivElement): void => {\n\t\tthis.arrowElement = element;\n\t};\n\n\tpublic render(): JSX.Element {\n\t\treturn (\n\t\t\t<Host class=\"kol-tooltip\">\n\t\t\t\t{this.state._label !== '' && (\n\t\t\t\t\t<div class=\"kol-tooltip__floating\" ref={this.catchTooltipElement}>\n\t\t\t\t\t\t<div class=\"kol-tooltip__arrow\" ref={this.catchArrowElement} />\n\t\t\t\t\t\t<KolSpanFc class=\"kol-tooltip__content\" id={this.state._id} badgeText={this._badgeText} label={this.state._label} />\n\t\t\t\t\t</div>\n\t\t\t\t)}\n\t\t\t</Host>\n\t\t);\n\t}\n\n\t/**\n\t * Defines the elements badge text.\n\t */\n\t@Prop() public _badgeText?: BadgeTextPropType;\n\n\t/**\n\t * Defines the alignment of the tooltip, popover or tabs in relation to the element.\n\t */\n\t@Prop() public _align?: AlignPropType = 'top';\n\n\t/**\n\t * Defines the internal ID of the primary component element.\n\t */\n\t@Prop() public _id?: IdPropType;\n\n\t/**\n\t * Defines the visible or semantic label of the component (e.g. aria-label, label, headline, caption, summary, etc.).\n\t */\n\t@Prop() public _label!: LabelPropType;\n\n\t@State() public state: TooltipStates = {\n\t\t_align: 'top',\n\t\t_label: '', // ⚠ required\n\t};\n\n\t@Watch('_badgeText')\n\tpublic validateBadgeText(value?: BadgeTextPropType): void {\n\t\tvalidateBadgeText(this, value);\n\t}\n\n\t@Watch('_align')\n\tpublic validateAlign(value?: AlignPropType): void {\n\t\tvalidateAlign(this, value);\n\t}\n\n\t@Watch('_id')\n\tpublic validateId(value?: IdPropType): void {\n\t\tvalidateId(this, value);\n\t}\n\n\t@Watch('_label')\n\tpublic validateLabel(value?: LabelPropType): void {\n\t\tvalidateLabel(this, value, {\n\t\t\trequired: true,\n\t\t});\n\t}\n\n\tprivate overFocusTimeout?: ReturnType<typeof setTimeout>;\n\n\tprivate showOrHideTooltip = (): void => {\n\t\tclearTimeout(this.overFocusTimeout);\n\t\tthis.overFocusTimeout = setTimeout(() => {\n\t\t\tif (this.hasMouseIn || this.hasFocusIn) {\n\t\t\t\tthis.showTooltip();\n\t\t\t} else {\n\t\t\t\tthis.hideTooltip();\n\t\t\t}\n\t\t\t// Timing Guidelines for Exposing Hidden Content: https://www.nngroup.com/articles/timing-exposing-content/\n\t\t}, 300);\n\t};\n\n\tpublic componentWillLoad(): void {\n\t\tthis.validateBadgeText(this._badgeText);\n\t\tthis.validateAlign(this._align);\n\t\tthis.validateId(this._id);\n\t\tthis.validateLabel(this._label);\n\t}\n\n\tprivate handleEventListeners(): void {\n\t\tthis.resyncListeners(this.previousSibling, this.host?.previousElementSibling, true);\n\t\tthis.resyncListeners(this.tooltipElement, this.tooltipElement);\n\t}\n\n\tpublic connectedCallback(): void {\n\t\tthis.previousSibling = this.host?.previousElementSibling;\n\t}\n\n\tpublic componentDidRender(): void {\n\t\tthis.handleEventListeners();\n\t}\n\n\t/**\n\t * @see: components/abbr/component.tsx (componentDidLoad)\n\t */\n\tpublic disconnectedCallback(): void {\n\t\tif (this.previousSibling /* SSR instanceof HTMLElement */) {\n\t\t\tthis.removeListeners(this.previousSibling);\n\t\t\tthis.previousSibling = undefined;\n\t\t}\n\t\tif (this.tooltipElement /* SSR instanceof HTMLElement */) {\n\t\t\tthis.removeListeners(this.tooltipElement);\n\t\t}\n\t\tif (this.cleanupAutoPositioning) {\n\t\t\tthis.cleanupAutoPositioning();\n\t\t}\n\t}\n}\n"],"version":3}
|
@@ -1,4 +1,4 @@
|
|
1
1
|
/*!
|
2
2
|
* KoliBri - The accessible HTML-Standard
|
3
3
|
*/
|
4
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});const index=require("./index-
|
4
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});const index=require("./index-92a1d333.js"),componentNames=require("./component-names-82c4d68d.js"),dev_utils=require("./dev.utils-2aebece9.js"),clsx=require("./clsx-dd4d6dd1.js"),prop_validators=require("./prop.validators-b788b493.js"),label=require("./label-fab376ae.js"),open=require("./open-10500c96.js"),href=require("./href-e0353cd7.js");require("./reuse-8650ea4e.js"),require("./dev.utils-58fde089.js"),require("./index-49ec9257.js");const validateActive=(e,t,i)=>{prop_validators.watchBoolean(e,"_active",t,i)},KolTreeItemWc=class{constructor(e){index.registerInstance(this,e),this.groupId=`tree-group-${dev_utils.nonce()}`,this.level=void 0,this.state={_active:!1,_hasChildren:!1,_href:"",_label:"",_open:!1},this._active=void 0,this._label=void 0,this._open=void 0,this._href=void 0}render(){const{_href:e,_active:t,_hasChildren:i,_open:a,_label:s}=this.state;return index.h(index.Host,{key:"1358f3b8f8c7ae14535f30e3c2ff1ef8ab6904b1",onSlotchange:this.handleSlotchange.bind(this)},index.h("li",{key:"d6271238a133cac44eb78bf8ed0b94a951135432",class:"kol-tree-item",style:{"--level":`${this.level}`}},index.h(componentNames.KolLinkWcTag,{key:"329b9adc28bacf6742544123bc02fe82f2ceb9b5",class:clsx.clsx("kol-tree-item__link",{"kol-tree-item__link--first-level":0===this.level,"kol-tree-item__link--active":t}),_href:e,_label:"",_role:"treeitem",_tabIndex:t?0:-1,_ariaExpanded:i?a:void 0,_ariaOwns:i?this.groupId:void 0,ref:e=>this.linkElement=e},index.h("span",{key:"0292f071a8abfe0f9332ef4a8561149d38f804e2",class:"kol-tree-item__link-inner",slot:"expert"},i?index.h("span",{class:"kol-tree-item__toggle-button",onClick:e=>a?void this.handleCollapseClick(e):void this.handleExpandClick(e)},index.h(componentNames.KolIconTag,{class:"kol-tree-item__toggle-button-icon",_icons:"codicon codicon-"+(a?"chevron-down":"chevron-right"),_label:""})):index.h("span",{class:"kol-tree-item__toggle-button-placeholder"}),index.h("span",{key:"ed810a798a4e2ba38f848ce0c6fdfc3893c3c86d",class:"kol-tree-item__text"},s))),index.h("ul",{key:"0e8ea268f1c26f79e55d45bfeda91d230bc4789d",class:"kol-tree-item__children",hidden:!i||!a,role:"group",id:this.groupId},index.h("slot",{key:"a6509011c3fa851be4c6cace3aadf2b6d6bbfc7b"}))))}validateActive(e){validateActive(this,e||!1)}validateLabel(e){label.validateLabel(this,e)}validateOpen(e){open.validateOpen(this,e)}validateHref(e){href.validateHref(this,e)}componentWillLoad(){this.validateActive(this._active),this.validateLabel(this._label),this.validateOpen(this._open),this.validateHref(this._href),this.checkForChildren(),this.determineTreeItemDepth()}determineTreeItemDepth(){let e=0,t=this.host.parentNode.host.parentNode;for(;null!==t&&t.tagName.toLowerCase()!==componentNames.KolTreeTag&&t!==document.body;)t=t.parentElement,e+=1;this.level=e}handleSlotchange(){this.checkForChildren()}checkForChildren(){var e,t;this.state=Object.assign(Object.assign({},this.state),{_hasChildren:Boolean(null===(t=null===(e=this.host.querySelector("slot"))||void 0===e?void 0:e.assignedElements)||void 0===t?void 0:t.call(e).length)})}async focusLink(){await this.linkElement.kolFocus()}async handleExpandClick(e){e.preventDefault(),await this.linkElement.kolFocus(),await this.expand()}async expand(){this.state._hasChildren&&(this.state=Object.assign(Object.assign({},this.state),{_open:!0}))}async handleCollapseClick(e){e.preventDefault(),this.linkElement.focus(),await this.collapse()}async collapse(){this.state._hasChildren&&(this.state=Object.assign(Object.assign({},this.state),{_open:!1}))}async isOpen(){var e;return null!==(e=this.state._open)&&void 0!==e&&e}get host(){return index.getElement(this)}static get watchers(){return{_active:["validateActive"],_label:["validateLabel"],_open:["validateOpen"],_href:["validateHref"]}}};exports.kol_tree_item_wc=KolTreeItemWc;
|
@@ -1 +1 @@
|
|
1
|
-
{"file":"kol-tree-item-wc.entry.cjs.js","mappings":"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","names":["watchBoolean","nonce","h","Host","KolLinkWcTag","clsx","KolIconTag","validateLabel","validateOpen","validateHref","KolTreeTag"],"sources":["src/schema/props/active.ts","src/components/tree-item/component.tsx"],"sourcesContent":["import type { Generic } from 'adopted-style-sheets';\n\nimport type { WatchBooleanOptions } from '../utils';\nimport { watchBoolean } from '../utils';\n\n/* types */\nexport type ActivePropType = boolean;\n\n/**\n * Defines whether something is active.\n */\nexport type PropActive = {\n\tactive: ActivePropType;\n};\n\n/* validator */\nexport const validateActive = (component: Generic.Element.Component, value: ActivePropType, options?: WatchBooleanOptions): void => {\n\twatchBoolean(component, '_active', value, options);\n};\n","import { Component, Element, h, Host, type JSX, Method, Prop, State, Watch } from '@stencil/core';\n\nimport type { ActivePropType, HrefPropType, LabelPropType, OpenPropType, TreeItemAPI, TreeItemStates } from '../../schema';\nimport { validateActive, validateHref, validateLabel, validateOpen } from '../../schema';\nimport { KolLinkWcTag, KolIconTag, KolTreeTag } from '../../core/component-names';\nimport { nonce } from '../../utils/dev.utils';\nimport clsx from 'clsx';\n\n@Component({\n\ttag: `kol-tree-item-wc`,\n\tshadow: false,\n})\nexport class KolTreeItemWc implements TreeItemAPI {\n\tprivate linkElement!: HTMLKolLinkWcElement;\n\tprivate groupId = `tree-group-${nonce()}`;\n\n\t@State() private level?: number;\n\t@Element() host!: HTMLElement;\n\n\tpublic render(): JSX.Element {\n\t\tconst { _href, _active, _hasChildren, _open, _label } = this.state;\n\t\treturn (\n\t\t\t<Host onSlotchange={this.handleSlotchange.bind(this)}>\n\t\t\t\t<li\n\t\t\t\t\tclass=\"kol-tree-item\"\n\t\t\t\t\tstyle={{\n\t\t\t\t\t\t'--level': `${this.level}`,\n\t\t\t\t\t}}\n\t\t\t\t>\n\t\t\t\t\t<KolLinkWcTag\n\t\t\t\t\t\tclass={clsx('kol-tree-item__link', {\n\t\t\t\t\t\t\t'kol-tree-item__link--first-level': this.level === 0,\n\t\t\t\t\t\t\t'kol-tree-item__link--active': _active,\n\t\t\t\t\t\t})}\n\t\t\t\t\t\t_href={_href}\n\t\t\t\t\t\t_label=\"\"\n\t\t\t\t\t\t_role=\"treeitem\"\n\t\t\t\t\t\t_tabIndex={_active ? 0 : -1}\n\t\t\t\t\t\t_ariaExpanded={_hasChildren ? _open : undefined}\n\t\t\t\t\t\t_ariaOwns={_hasChildren ? this.groupId : undefined}\n\t\t\t\t\t\tref={(element?: HTMLKolLinkWcElement) => (this.linkElement = element!)}\n\t\t\t\t\t>\n\t\t\t\t\t\t<span slot=\"expert\">\n\t\t\t\t\t\t\t{_hasChildren && (\n\t\t\t\t\t\t\t\t// eslint-disable-next-line jsx-a11y/no-static-element-interactions,jsx-a11y/click-events-have-key-events\n\t\t\t\t\t\t\t\t<span\n\t\t\t\t\t\t\t\t\tclass=\"kol-tree-item__toggle-button\"\n\t\t\t\t\t\t\t\t\tonClick={(event) => (_open ? void this.handleCollapseClick(event) : void this.handleExpandClick(event))}\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t<KolIconTag\n\t\t\t\t\t\t\t\t\t\tclass=\"kol-tree-item__toggle-button-icon\"\n\t\t\t\t\t\t\t\t\t\t_icons={`codicon codicon-${_open ? 'chevron-down' : 'chevron-right'}`}\n\t\t\t\t\t\t\t\t\t\t_label={'' /* Label deliberately left empty */}\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t)}{' '}\n\t\t\t\t\t\t\t{_label}\n\t\t\t\t\t\t</span>\n\t\t\t\t\t</KolLinkWcTag>\n\t\t\t\t\t<ul class=\"kol-tree-item__children\" hidden={!_hasChildren || !_open} role=\"group\" id={this.groupId}>\n\t\t\t\t\t\t<slot />\n\t\t\t\t\t</ul>\n\t\t\t\t</li>\n\t\t\t</Host>\n\t\t);\n\t}\n\n\t@State() public state: TreeItemStates = {\n\t\t_active: false,\n\t\t_hasChildren: false,\n\t\t_href: '',\n\t\t_label: '',\n\t\t_open: false,\n\t};\n\n\t/**\n\t * If set (to true) the tree item is the active one.\n\t */\n\t@Prop() _active?: OpenPropType;\n\n\t/**\n\t * Defines the visible or semantic label of the component (e.g. aria-label, label, headline, caption, summary, etc.).\n\t */\n\t@Prop() _label!: LabelPropType;\n\n\t/**\n\t * Opens/expands the element when truthy, closes/collapses when falsy.\n\t */\n\t@Prop() _open?: OpenPropType;\n\n\t/**\n\t * Defines the target URI of the link.\n\t */\n\t@Prop() _href!: HrefPropType;\n\n\t@Watch('_active') validateActive(value?: ActivePropType): void {\n\t\tvalidateActive(this, value || false);\n\t}\n\n\t@Watch('_label') validateLabel(value?: LabelPropType): void {\n\t\tvalidateLabel(this, value);\n\t}\n\n\t@Watch('_open') validateOpen(value?: OpenPropType): void {\n\t\tvalidateOpen(this, value);\n\t}\n\n\t@Watch('_href') validateHref(value?: HrefPropType): void {\n\t\tvalidateHref(this, value);\n\t}\n\n\tpublic componentWillLoad(): void {\n\t\tthis.validateActive(this._active);\n\t\tthis.validateLabel(this._label);\n\t\tthis.validateOpen(this._open);\n\t\tthis.validateHref(this._href);\n\n\t\tthis.checkForChildren();\n\t\tthis.determineTreeItemDepth();\n\t}\n\n\tprivate determineTreeItemDepth() {\n\t\tlet level = 0;\n\t\tlet traverseItem: HTMLElement | null = (this.host.parentNode as unknown as ShadowRoot).host.parentNode as HTMLElement;\n\t\twhile (traverseItem !== null && traverseItem.tagName.toLowerCase() !== KolTreeTag && traverseItem !== document.body) {\n\t\t\ttraverseItem = traverseItem.parentElement;\n\t\t\tlevel += 1;\n\t\t}\n\t\tthis.level = level;\n\t}\n\n\tprivate handleSlotchange() {\n\t\tthis.checkForChildren();\n\t}\n\n\tprivate checkForChildren() {\n\t\tthis.state = {\n\t\t\t...this.state,\n\t\t\t_hasChildren: Boolean(this.host.querySelector('slot')?.assignedElements?.().length),\n\t\t};\n\t}\n\n\t@Method() async focusLink() {\n\t\tawait this.linkElement.kolFocus();\n\t}\n\n\tprivate async handleExpandClick(event: MouseEvent) {\n\t\tevent.preventDefault();\n\t\tawait this.linkElement.kolFocus();\n\t\tawait this.expand();\n\t}\n\n\t@Method()\n\t// eslint-disable-next-line @typescript-eslint/require-await\n\tpublic async expand() {\n\t\tif (this.state._hasChildren) {\n\t\t\tthis.state = {\n\t\t\t\t...this.state,\n\t\t\t\t_open: true,\n\t\t\t};\n\t\t}\n\t}\n\n\tprivate async handleCollapseClick(event: MouseEvent) {\n\t\tevent.preventDefault();\n\t\tthis.linkElement.focus();\n\t\tawait this.collapse();\n\t}\n\n\t@Method()\n\t// eslint-disable-next-line @typescript-eslint/require-await\n\tpublic async collapse() {\n\t\tif (this.state._hasChildren) {\n\t\t\tthis.state = {\n\t\t\t\t...this.state,\n\t\t\t\t_open: false,\n\t\t\t};\n\t\t}\n\t}\n\n\t@Method()\n\t// eslint-disable-next-line @typescript-eslint/require-await\n\tpublic async isOpen() {\n\t\treturn this.state._open ?? false;\n\t}\n}\n"],"version":3}
|
1
|
+
{"file":"kol-tree-item-wc.entry.cjs.js","mappings":"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","names":["watchBoolean","nonce","h","Host","KolLinkWcTag","clsx","KolIconTag","validateLabel","validateOpen","validateHref","KolTreeTag"],"sources":["src/schema/props/active.ts","src/components/tree-item/component.tsx"],"sourcesContent":["import type { Generic } from 'adopted-style-sheets';\n\nimport type { WatchBooleanOptions } from '../utils';\nimport { watchBoolean } from '../utils';\n\n/* types */\nexport type ActivePropType = boolean;\n\n/**\n * Defines whether something is active.\n */\nexport type PropActive = {\n\tactive: ActivePropType;\n};\n\n/* validator */\nexport const validateActive = (component: Generic.Element.Component, value: ActivePropType, options?: WatchBooleanOptions): void => {\n\twatchBoolean(component, '_active', value, options);\n};\n","import { Component, Element, h, Host, type JSX, Method, Prop, State, Watch } from '@stencil/core';\n\nimport type { ActivePropType, HrefPropType, LabelPropType, OpenPropType, TreeItemAPI, TreeItemStates } from '../../schema';\nimport { validateActive, validateHref, validateLabel, validateOpen } from '../../schema';\nimport { KolLinkWcTag, KolIconTag, KolTreeTag } from '../../core/component-names';\nimport { nonce } from '../../utils/dev.utils';\nimport clsx from 'clsx';\n\n@Component({\n\ttag: `kol-tree-item-wc`,\n\tshadow: false,\n})\nexport class KolTreeItemWc implements TreeItemAPI {\n\tprivate linkElement!: HTMLKolLinkWcElement;\n\tprivate groupId = `tree-group-${nonce()}`;\n\n\t@State() private level?: number;\n\t@Element() host!: HTMLElement;\n\n\tpublic render(): JSX.Element {\n\t\tconst { _href, _active, _hasChildren, _open, _label } = this.state;\n\t\treturn (\n\t\t\t<Host onSlotchange={this.handleSlotchange.bind(this)}>\n\t\t\t\t<li\n\t\t\t\t\tclass=\"kol-tree-item\"\n\t\t\t\t\tstyle={{\n\t\t\t\t\t\t'--level': `${this.level}`,\n\t\t\t\t\t}}\n\t\t\t\t>\n\t\t\t\t\t<KolLinkWcTag\n\t\t\t\t\t\tclass={clsx('kol-tree-item__link', {\n\t\t\t\t\t\t\t'kol-tree-item__link--first-level': this.level === 0,\n\t\t\t\t\t\t\t'kol-tree-item__link--active': _active,\n\t\t\t\t\t\t})}\n\t\t\t\t\t\t_href={_href}\n\t\t\t\t\t\t_label=\"\"\n\t\t\t\t\t\t_role=\"treeitem\"\n\t\t\t\t\t\t_tabIndex={_active ? 0 : -1}\n\t\t\t\t\t\t_ariaExpanded={_hasChildren ? _open : undefined}\n\t\t\t\t\t\t_ariaOwns={_hasChildren ? this.groupId : undefined}\n\t\t\t\t\t\tref={(element?: HTMLKolLinkWcElement) => (this.linkElement = element!)}\n\t\t\t\t\t>\n\t\t\t\t\t\t<span class=\"kol-tree-item__link-inner\" slot=\"expert\">\n\t\t\t\t\t\t\t{_hasChildren ? (\n\t\t\t\t\t\t\t\t// eslint-disable-next-line jsx-a11y/no-static-element-interactions,jsx-a11y/click-events-have-key-events\n\t\t\t\t\t\t\t\t<span\n\t\t\t\t\t\t\t\t\tclass=\"kol-tree-item__toggle-button\"\n\t\t\t\t\t\t\t\t\tonClick={(event) => (_open ? void this.handleCollapseClick(event) : void this.handleExpandClick(event))}\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t<KolIconTag\n\t\t\t\t\t\t\t\t\t\tclass=\"kol-tree-item__toggle-button-icon\"\n\t\t\t\t\t\t\t\t\t\t_icons={`codicon codicon-${_open ? 'chevron-down' : 'chevron-right'}`}\n\t\t\t\t\t\t\t\t\t\t_label={'' /* Label deliberately left empty */}\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t<span class=\"kol-tree-item__toggle-button-placeholder\"></span>\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t<span class=\"kol-tree-item__text\">{_label}</span>\n\t\t\t\t\t\t</span>\n\t\t\t\t\t</KolLinkWcTag>\n\t\t\t\t\t<ul class=\"kol-tree-item__children\" hidden={!_hasChildren || !_open} role=\"group\" id={this.groupId}>\n\t\t\t\t\t\t<slot />\n\t\t\t\t\t</ul>\n\t\t\t\t</li>\n\t\t\t</Host>\n\t\t);\n\t}\n\n\t@State() public state: TreeItemStates = {\n\t\t_active: false,\n\t\t_hasChildren: false,\n\t\t_href: '',\n\t\t_label: '',\n\t\t_open: false,\n\t};\n\n\t/**\n\t * If set (to true) the tree item is the active one.\n\t */\n\t@Prop() _active?: OpenPropType;\n\n\t/**\n\t * Defines the visible or semantic label of the component (e.g. aria-label, label, headline, caption, summary, etc.).\n\t */\n\t@Prop() _label!: LabelPropType;\n\n\t/**\n\t * Opens/expands the element when truthy, closes/collapses when falsy.\n\t */\n\t@Prop() _open?: OpenPropType;\n\n\t/**\n\t * Defines the target URI of the link.\n\t */\n\t@Prop() _href!: HrefPropType;\n\n\t@Watch('_active') validateActive(value?: ActivePropType): void {\n\t\tvalidateActive(this, value || false);\n\t}\n\n\t@Watch('_label') validateLabel(value?: LabelPropType): void {\n\t\tvalidateLabel(this, value);\n\t}\n\n\t@Watch('_open') validateOpen(value?: OpenPropType): void {\n\t\tvalidateOpen(this, value);\n\t}\n\n\t@Watch('_href') validateHref(value?: HrefPropType): void {\n\t\tvalidateHref(this, value);\n\t}\n\n\tpublic componentWillLoad(): void {\n\t\tthis.validateActive(this._active);\n\t\tthis.validateLabel(this._label);\n\t\tthis.validateOpen(this._open);\n\t\tthis.validateHref(this._href);\n\n\t\tthis.checkForChildren();\n\t\tthis.determineTreeItemDepth();\n\t}\n\n\tprivate determineTreeItemDepth() {\n\t\tlet level = 0;\n\t\tlet traverseItem: HTMLElement | null = (this.host.parentNode as unknown as ShadowRoot).host.parentNode as HTMLElement;\n\t\twhile (traverseItem !== null && traverseItem.tagName.toLowerCase() !== KolTreeTag && traverseItem !== document.body) {\n\t\t\ttraverseItem = traverseItem.parentElement;\n\t\t\tlevel += 1;\n\t\t}\n\t\tthis.level = level;\n\t}\n\n\tprivate handleSlotchange() {\n\t\tthis.checkForChildren();\n\t}\n\n\tprivate checkForChildren() {\n\t\tthis.state = {\n\t\t\t...this.state,\n\t\t\t_hasChildren: Boolean(this.host.querySelector('slot')?.assignedElements?.().length),\n\t\t};\n\t}\n\n\t@Method() async focusLink() {\n\t\tawait this.linkElement.kolFocus();\n\t}\n\n\tprivate async handleExpandClick(event: MouseEvent) {\n\t\tevent.preventDefault();\n\t\tawait this.linkElement.kolFocus();\n\t\tawait this.expand();\n\t}\n\n\t@Method()\n\t// eslint-disable-next-line @typescript-eslint/require-await\n\tpublic async expand() {\n\t\tif (this.state._hasChildren) {\n\t\t\tthis.state = {\n\t\t\t\t...this.state,\n\t\t\t\t_open: true,\n\t\t\t};\n\t\t}\n\t}\n\n\tprivate async handleCollapseClick(event: MouseEvent) {\n\t\tevent.preventDefault();\n\t\tthis.linkElement.focus();\n\t\tawait this.collapse();\n\t}\n\n\t@Method()\n\t// eslint-disable-next-line @typescript-eslint/require-await\n\tpublic async collapse() {\n\t\tif (this.state._hasChildren) {\n\t\t\tthis.state = {\n\t\t\t\t...this.state,\n\t\t\t\t_open: false,\n\t\t\t};\n\t\t}\n\t}\n\n\t@Method()\n\t// eslint-disable-next-line @typescript-eslint/require-await\n\tpublic async isOpen() {\n\t\treturn this.state._open ?? false;\n\t}\n}\n"],"version":3}
|
@@ -1,4 +1,4 @@
|
|
1
1
|
/*!
|
2
2
|
* KoliBri - The accessible HTML-Standard
|
3
3
|
*/
|
4
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});const index=require("./index-
|
4
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});const index=require("./index-92a1d333.js"),componentNames=require("./component-names-82c4d68d.js"),defaultStyleCss="/*\n * This file contains all rules for accessibility.\n */\n@layer kol-global {\n :host {\n /*\n * Minimum size of interactive elements.\n */\n --a11y-min-size: calc(44rem / var(--kolibri-root-font-size, 16));\n /*\n * No element should be used without a background and font color whose contrast ratio has\n * not been checked. By initially setting the background color to white and the font color\n * to black, the contrast ratio is ensured and explicit adjustment is forced.\n */\n background-color: white;\n color: black;\n /*\n * Verdana is an accessible font that can be used without requiring additional loading time.\n */\n font-family: Verdana;\n }\n * {\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n hyphens: auto;\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n word-break: break-word;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n }\n /*\n * All interactive elements should have a minimum size of rem(44).\n */\n /* input:not([type='checkbox'], [type='radio'], [type='range']), */\n /* option, */\n /* select, */\n /* textarea, */\n [role=button],\n button:not([role=link]) {\n min-height: var(--a11y-min-size);\n min-width: var(--a11y-min-size);\n }\n /*\n * Some interactive elements should not inherit the font-family and font-size.\n */\n a,\n button,\n h1,\n h2,\n h3,\n h4,\n h5,\n h6,\n input,\n option,\n select,\n textarea {\n /*\n * All elements should inherit the font family from his parent element.\n */\n font-family: inherit;\n /*\n * All elements should inherit the font size from his parent element.\n */\n font-size: inherit;\n }\n}\n/**\n * Sometimes we need the semantic element for accessibility reasons,\n * but we don't want to show it.\n *\n * - https://www.a11yproject.com/posts/how-to-hide-content/\n */\n.visually-hidden {\n clip: rect(0 0 0 0);\n clip-path: inset(50%);\n height: calc(1rem / var(--kolibri-root-font-size, 16));\n overflow: hidden;\n position: absolute;\n white-space: nowrap;\n width: calc(1rem / var(--kolibri-root-font-size, 16));\n}\n\n@layer kol-global {\n /*\n * Dieses CSS stellt sicher, dass der Standard-Style\n * von A und Button resettet werden.\n */\n :is(a, button) {\n background-color: transparent;\n border: none;\n margin: 0;\n padding: 0;\n width: 100%;\n /* 100% needed for custom width from outside */\n }\n /*\n * Ensure elements with hidden attribute to be actually not visible\n * @see https://meowni.ca/hidden.is.a.lie.html\n */\n [hidden] {\n display: none !important;\n }\n .badge-text-hint {\n background-color: lightgray;\n color: black;\n }\n}\n@layer kol-global {\n :host {\n /*\n * The max-width is needed to prevent the table from overflowing the\n * parent node, if the table is wider than the parent node.\n */\n max-width: 100%;\n }\n * {\n /*\n * We prefer to box-sizing: border-box for all elements.\n */\n box-sizing: border-box;\n }\n .kol-span {\n /* KolSpan is a layout component with icons in all directions and a label text in the middle. */\n display: grid;\n place-items: center;\n /* The sub span in KolSpan is the horizontal span with icon left and right and the label text in the middle. */\n }\n .kol-span__container {\n display: flex;\n place-items: center;\n }\n a,\n button {\n cursor: pointer;\n }\n .kol-span .kol-span__label--hide-label .kol-span__label {\n display: none;\n }\n /* Reset browser agent style. */\n button:disabled {\n color: unset;\n }\n .disabled label,\n .disabled:focus-within label,\n [aria-disabled=true],\n [aria-disabled=true]:focus,\n [disabled],\n [disabled]:focus {\n cursor: not-allowed;\n opacity: 0.5;\n outline: none;\n }\n [aria-disabled=true]:focus .kol-span,\n [disabled]:focus .kol-span {\n outline: none !important;\n }\n}\n@layer kol-component {\n .kol-tree-item {\n --indentation: var(--tree-item-indentation, calc(10rem / var(--kolibri-root-font-size, 16)));\n font-size: calc(16rem / var(--kolibri-root-font-size, 16));\n }\n .kol-tree-item__link .kol-link {\n align-items: center;\n display: inline-flex;\n min-height: var(--a11y-min-size);\n padding-left: max(var(--indentation) * var(--level) + (8rem / var(--kolibri-root-font-size, 16)), 8rem / var(--kolibri-root-font-size, 16));\n padding-right: calc(6rem / var(--kolibri-root-font-size, 16));\n text-decoration: none;\n }\n .kol-tree-item__link--first-level .kol-link {\n padding-left: calc(6rem / var(--kolibri-root-font-size, 16));\n }\n .kol-tree-item__link-inner {\n display: flex;\n align-items: center;\n }\n .kol-tree-item__children {\n margin: 0;\n padding: 0;\n list-style: none;\n }\n .kol-tree-item .kol-span {\n place-items: unset;\n }\n .kol-tree-item__toggle-button, .kol-tree-item__toggle-button-placeholder {\n width: var(--a11y-min-size);\n height: var(--a11y-min-size);\n display: inline-flex;\n justify-content: center;\n align-items: center;\n }\n .kol-tree-item__text {\n text-decoration: underline;\n }\n}",KolTreeItemDefaultStyle0=defaultStyleCss,KolTreeItem=class{constructor(n){index.registerInstance(this,n),this._active=void 0,this._label=void 0,this._open=void 0,this._href=void 0}async focusLink(){this.element&&await this.element.focusLink()}async expand(){this.element&&await this.element.expand()}async collapse(){this.element&&await this.element.collapse()}async isOpen(){var n,e;return null!==(e=await(null===(n=this.element)||void 0===n?void 0:n.isOpen()))&&void 0!==e&&e}render(){return index.h(componentNames.KolTreeItemWcTag,{key:"058ffb876889218e812b8d16395cf3d4735e9786",_active:this._active,_label:this._label,_open:this._open,_href:this._href,ref:n=>this.element=n},index.h("slot",{key:"a084e5ba793a60fd5696756cd16d92e50f6c9c9f"}))}};KolTreeItem.style={default:KolTreeItemDefaultStyle0},exports.kol_tree_item=KolTreeItem;
|
@@ -1 +1 @@
|
|
1
|
-
{"file":"kol-tree-item.entry.cjs.js","mappings":";;;;;;;;;;AAAA,MAAM,eAAe,GAAG,
|
1
|
+
{"file":"kol-tree-item.entry.cjs.js","mappings":";;;;;;;;;;AAAA,MAAM,eAAe,GAAG,y2KAAy2K,CAAC;AACl4K,iCAAe,eAAe;;MCWjB,WAAW;;;;;;;;IAuBb,MAAM,SAAS;QACxB,IAAI,IAAI,CAAC,OAAO,EAAE;YACjB,MAAM,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,CAAC;SAC/B;KACD;IAES,MAAM,MAAM;QACrB,IAAI,IAAI,CAAC,OAAO,EAAE;YACjB,MAAM,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;SAC5B;KACD;IAES,MAAM,QAAQ;QACvB,IAAI,IAAI,CAAC,OAAO,EAAE;YACjB,MAAM,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC;SAC9B;KACD;IAES,MAAM,MAAM;;QACrB,OAAO,OAAC,OAAM,MAAA,IAAI,CAAC,OAAO,0CAAE,MAAM,EAAE,CAAA,CAAC,mCAAI,KAAK,CAAC;KAC/C;IAEM,MAAM;QACZ,QACCA,QAACC,+BAAgB,qDAChB,OAAO,EAAE,IAAI,CAAC,OAAO,EACrB,MAAM,EAAE,IAAI,CAAC,MAAM,EACnB,KAAK,EAAE,IAAI,CAAC,KAAK,EACjB,KAAK,EAAE,IAAI,CAAC,KAAK,EACjB,GAAG,EAAE,CAAC,OAAkC,MAAM,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,IAErED,oEAAQ,CACU,EAClB;KACF;;;;;;;;","names":["h","KolTreeItemWcTag"],"sources":["src/components/tree-item/style.scss?tag=kol-tree-item&mode=default&encapsulation=shadow","src/components/tree-item/shadow.tsx"],"sourcesContent":["@use '../@shared/mixins' as *;\n@use '../../styles/global' as *;\n\n@layer kol-component {\n\t$base-horizontal-padding: rem(8);\n\n\t.kol-tree-item {\n\t\t$root: &;\n\t\t--indentation: var(--tree-item-indentation, #{rem(10)}); // Set `--tree-item-indentation` in themes to control padding\n\t\tfont-size: rem(16);\n\n\t\t&__link {\n\t\t\t.kol-link {\n\t\t\t\talign-items: center;\n\t\t\t\tdisplay: inline-flex;\n\t\t\t\tmin-height: var(--a11y-min-size);\n\t\t\t\tpadding-left: max(calc((var(--indentation) * var(--level)) + $base-horizontal-padding), $base-horizontal-padding);\n\t\t\t\tpadding-right: rem(6);\n\t\t\t\ttext-decoration: none;\n\t\t\t}\n\n\t\t\t&--first-level .kol-link {\n\t\t\t\tpadding-left: rem(6);\n\t\t\t}\n\t\t}\n\n\t\t&__link-inner {\n\t\t\tdisplay: flex;\n\t\t\talign-items: center;\n\t\t}\n\n\t\t&__children {\n\t\t\tmargin: 0;\n\t\t\tpadding: 0;\n\t\t\tlist-style: none;\n\t\t}\n\n\t\t.kol-span {\n\t\t\tplace-items: unset; // unset 'center' style from global layer\n\t\t}\n\n\t\t&__toggle-button,\n\t\t&__toggle-button-placeholder {\n\t\t\twidth: var(--a11y-min-size);\n\t\t\theight: var(--a11y-min-size);\n\t\t\tdisplay: inline-flex;\n\t\t\tjustify-content: center;\n\t\t\talign-items: center;\n\t\t}\n\n\t\t&__text {\n\t\t\ttext-decoration: underline;\n\t\t}\n\t}\n}\n","import { Component, h, type JSX, Method, Prop } from '@stencil/core';\n\nimport type { HrefPropType, LabelPropType, OpenPropType, TreeItemProps } from '../../schema';\nimport { KolTreeItemWcTag } from '../../core/component-names';\n\n@Component({\n\ttag: 'kol-tree-item', // keep in sync with `const TREE_ITEM_TAG_NAME`\n\tstyleUrls: {\n\t\tdefault: './style.scss',\n\t},\n\tshadow: true,\n})\nexport class KolTreeItem implements TreeItemProps {\n\tprivate element?: HTMLKolTreeItemWcElement;\n\n\t/**\n\t * If set (to true) the tree item is the active one.\n\t */\n\t@Prop() _active?: OpenPropType;\n\n\t/**\n\t * Defines the visible or semantic label of the component (e.g. aria-label, label, headline, caption, summary, etc.).\n\t */\n\t@Prop() _label!: LabelPropType;\n\n\t/**\n\t * Opens/expands the element when truthy, closes/collapses when falsy.\n\t */\n\t@Prop() _open?: OpenPropType;\n\n\t/**\n\t * Defines the target URI of the link.\n\t */\n\t@Prop() _href!: HrefPropType;\n\n\t@Method() async focusLink() {\n\t\tif (this.element) {\n\t\t\tawait this.element.focusLink();\n\t\t}\n\t}\n\n\t@Method() async expand() {\n\t\tif (this.element) {\n\t\t\tawait this.element.expand();\n\t\t}\n\t}\n\n\t@Method() async collapse() {\n\t\tif (this.element) {\n\t\t\tawait this.element.collapse();\n\t\t}\n\t}\n\n\t@Method() async isOpen() {\n\t\treturn (await this.element?.isOpen()) ?? false;\n\t}\n\n\tpublic render(): JSX.Element {\n\t\treturn (\n\t\t\t<KolTreeItemWcTag\n\t\t\t\t_active={this._active}\n\t\t\t\t_label={this._label}\n\t\t\t\t_open={this._open}\n\t\t\t\t_href={this._href}\n\t\t\t\tref={(element?: HTMLKolTreeItemWcElement) => (this.element = element)}\n\t\t\t>\n\t\t\t\t<slot />\n\t\t\t</KolTreeItemWcTag>\n\t\t);\n\t}\n}\n"],"version":3}
|
@@ -1,4 +1,4 @@
|
|
1
1
|
/*!
|
2
2
|
* KoliBri - The accessible HTML-Standard
|
3
3
|
*/
|
4
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});const index=require("./index-
|
4
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});const index=require("./index-92a1d333.js"),componentNames=require("./component-names-82c4d68d.js"),label=require("./label-fab376ae.js");require("./prop.validators-b788b493.js"),require("./index-49ec9257.js"),require("./dev.utils-58fde089.js");const KolTreeWc=class{constructor(e){index.registerInstance(this,e),this.state={_label:""},this._label=void 0}validateLabel(e){label.validateLabel(this,e)}render(){return index.h(index.Host,{key:"05d1fdf7fc5589847e2fdce7b3d307860721ccd2",onSlotchange:this.handleSlotchange.bind(this)},index.h("nav",{key:"b03ad56f3ce550d09d22efa04e23273588093034",class:"kol-tree","aria-label":this.state._label},index.h("ul",{key:"7b7e4fc2e98037621beb67e6dcdd00f7072d3878",class:"kol-tree__treeview-navigation",role:"tree","aria-label":this.state._label},index.h("slot",{key:"c6bd99309dd93b1eb88031533f17f25c0e9952c7"}))))}static isTreeItem(e){return(null==e?void 0:e.tagName)===componentNames.KolTreeItemTag.toUpperCase()}componentWillLoad(){this.validateLabel(this._label),this.handleTreeChange(),this.observeChildListMutations()}disconnectedCallback(){var e;null===(e=this.observer)||void 0===e||e.disconnect()}observeChildListMutations(){this.observer=new MutationObserver(this.handleTreeChange.bind(this)),this.observeTopLevelItems()}handleSlotchange(){this.observeTopLevelItems(),this.handleTreeChange()}observeTopLevelItems(){var e;null===(e=this.getTopLevelTreeItems())||void 0===e||e.forEach((e=>{var t;null===(t=this.observer)||void 0===t||t.observe(e,{childList:!0,subtree:!0})}))}getTopLevelTreeItems(){var e,t,a;return null===(a=null===(t=null===(e=this.host.querySelector("slot"))||void 0===e?void 0:e.assignedNodes)||void 0===t?void 0:t.call(e))||void 0===a?void 0:a.filter(KolTreeWc.isTreeItem)}handleTreeChange(){this.treeItemElements=this.getTreeItemElements(),this.ensureActiveItemVisibility()}getTreeItemElements(){var e;return null===(e=this.getTopLevelTreeItems())||void 0===e?void 0:e.reduce(((e,t)=>{const a=t.querySelectorAll(componentNames.KolTreeItemTag);return[...e,t,...a]}),[])}async getOpenTreeItemElements(){if(!this.treeItemElements)return;const e=async t=>!KolTreeWc.isTreeItem(t.parentElement)||await t.parentElement.isOpen()&&await e(t.parentElement);return(await Promise.all(this.treeItemElements.map((async t=>({value:t,include:await e(t)}))))).filter((e=>e.include)).map((e=>e.value))}async handleKeyDown(e){var t,a,i,l,n,r,s,o,d;const c=await this.getOpenTreeItemElements(),v=null===(t=document.activeElement)||void 0===t?void 0:t.closest(componentNames.KolTreeItemTag),u=e.metaKey||e.altKey||e.ctrlKey||e.shiftKey;if(!c||!v)return;const m=null==c?void 0:c.findIndex((e=>e===v));switch(e.key){case"ArrowDown":await(null===(a=c[m+1])||void 0===a?void 0:a.focusLink()),e.preventDefault();break;case"ArrowUp":await(null===(i=c[m-1])||void 0===i?void 0:i.focusLink()),e.preventDefault();break;case"Right":case"ArrowRight":e.preventDefault(),await v.isOpen()?await(null===(l=c[m+1])||void 0===l?void 0:l.focusLink()):await v.expand();break;case"Left":case"ArrowLeft":if(e.preventDefault(),await v.isOpen())await v.collapse();else{const e=c.findIndex((e=>e===v.parentElement));-1!==e&&await(null===(n=c[e])||void 0===n?void 0:n.focusLink())}break;case"Home":await(null===(r=c[0])||void 0===r?void 0:r.focusLink()),e.preventDefault();break;case"End":await(null===(s=c[c.length-1])||void 0===s?void 0:s.focusLink()),e.preventDefault();break;case null===(o=e.key.match(/^[a-zA-Z0-9]$/))||void 0===o?void 0:o.input:if(!u){const t=e.key.toLowerCase(),a=c.indexOf(v)+1,i=c.concat(c),l=i.slice(a,a+c.length).findIndex((e=>{var a;return null===(a=e.getAttribute("_label"))||void 0===a?void 0:a.trim().toLowerCase().startsWith(t)}));-1!==l&&(await i[a+l].focusLink(),e.preventDefault())}break;case"*":{const e=null===(d=v.parentElement)||void 0===d?void 0:d.querySelectorAll(componentNames.KolTreeItemTag);null==e||e.forEach((e=>{e.expand()}));break}}}async handleFocusOut(e){e.relatedTarget&&!e.relatedTarget.closest(componentNames.KolTreeTag)&&await this.ensureActiveItemVisibility()}async ensureActiveItemVisibility(){const e=t=>{KolTreeWc.isTreeItem(t.parentElement)&&(t.parentElement.expand(),e(t.parentElement))},t=(()=>{var e,t,a,i;const l=null!==(i=null===(a=null===(t=null===(e=this.host.querySelector("slot"))||void 0===e?void 0:e.assignedNodes)||void 0===t?void 0:t.call(e))||void 0===a?void 0:a.filter(KolTreeWc.isTreeItem))&&void 0!==i?i:[];for(const e of l){if(e._active)return e;const t=e.querySelector(`${componentNames.KolTreeItemTag}[_active="true"]`);if(t&&t._active)return t}})();t&&e(t)}get host(){return index.getElement(this)}static get watchers(){return{_label:["validateLabel"]}}};exports.kol_tree_wc=KolTreeWc;
|
@@ -1 +1 @@
|
|
1
|
-
{"file":"kol-tree-wc.entry.cjs.js","mappings":"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","names":["validateLabel","h","Host","KolTreeItemTag","KolTreeTag"],"sources":["src/components/tree/component.tsx"],"sourcesContent":["import type { JSX } from '@stencil/core';\nimport { Component, Element, h, Host, Listen, Prop, State, Watch } from '@stencil/core';\n\nimport type { LabelPropType, TreeAPI, TreeStates } from '../../schema';\nimport { validateLabel } from '../../schema';\nimport { KolTreeItemTag, KolTreeTag } from '../../core/component-names';\n\n/**\n * @internal\n */\n@Component({\n\ttag: 'kol-tree-wc',\n\tshadow: false,\n})\nexport class KolTreeWc implements TreeAPI {\n\t@Element() host!: HTMLElement;\n\n\t@State() public state: TreeStates = {\n\t\t_label: '',\n\t};\n\tprivate observer?: MutationObserver;\n\tprivate treeItemElements?: HTMLKolTreeItemElement[];\n\n\t/**\n\t * Defines the visible or semantic label of the component (e.g. aria-label, label, headline, caption, summary, etc.).\n\t */\n\t@Prop() _label!: LabelPropType;\n\n\t@Watch('_label') validateLabel(value?: LabelPropType): void {\n\t\tvalidateLabel(this, value);\n\t}\n\n\tpublic render(): JSX.Element {\n\t\treturn (\n\t\t\t<Host onSlotchange={this.handleSlotchange.bind(this)}>\n\t\t\t\t<nav class=\"kol-tree\" aria-label={this.state._label}>\n\t\t\t\t\t<ul class=\"kol-tree__treeview-navigation\" role=\"tree\" aria-label={this.state._label}>\n\t\t\t\t\t\t<slot />\n\t\t\t\t\t</ul>\n\t\t\t\t</nav>\n\t\t\t</Host>\n\t\t);\n\t}\n\n\tprivate static isTreeItem(this: void, element?: HTMLElement | null): element is HTMLKolTreeItemElement {\n\t\treturn element?.tagName === KolTreeItemTag.toUpperCase();\n\t}\n\n\tpublic componentWillLoad(): void {\n\t\tthis.validateLabel(this._label);\n\n\t\tthis.handleTreeChange();\n\t\tthis.observeChildListMutations();\n\t}\n\n\tpublic disconnectedCallback(): void {\n\t\tthis.observer?.disconnect();\n\t}\n\n\tprivate observeChildListMutations() {\n\t\tthis.observer = new MutationObserver(this.handleTreeChange.bind(this));\n\t\tthis.observeTopLevelItems();\n\t}\n\n\tprivate handleSlotchange() {\n\t\tthis.observeTopLevelItems();\n\t\tthis.handleTreeChange();\n\t}\n\n\tprivate observeTopLevelItems() {\n\t\tthis.getTopLevelTreeItems()?.forEach((treeItem) => {\n\t\t\tthis.observer?.observe(treeItem, { childList: true, subtree: true });\n\t\t});\n\t}\n\n\tprivate getTopLevelTreeItems(): HTMLKolTreeItemElement[] {\n\t\treturn (this.host.querySelector('slot')?.assignedNodes?.() as HTMLElement[])?.filter(KolTreeWc.isTreeItem);\n\t}\n\n\tprivate handleTreeChange(): void {\n\t\tthis.treeItemElements = this.getTreeItemElements();\n\t\tvoid this.ensureActiveItemVisibility();\n\t}\n\n\t/**\n\t * Returns array of all TreeItem elements in the order they appear\n\t */\n\tprivate getTreeItemElements(): HTMLKolTreeItemElement[] {\n\t\treturn this.getTopLevelTreeItems()?.reduce((accumulator: HTMLKolTreeItemElement[], currentValue: HTMLKolTreeItemElement) => {\n\t\t\tconst children = currentValue.querySelectorAll(KolTreeItemTag);\n\n\t\t\treturn [...accumulator, currentValue, ...children];\n\t\t}, []);\n\t}\n\n\tprivate async getOpenTreeItemElements(): Promise<HTMLKolTreeItemElement[] | undefined> {\n\t\tif (!this.treeItemElements) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst areElementAndAllParentsOpen = async (element: HTMLKolTreeItemElement): Promise<boolean> => {\n\t\t\tif (!KolTreeWc.isTreeItem(element.parentElement)) {\n\t\t\t\t// parent is tree itself, top level is always open\n\t\t\t\treturn true;\n\t\t\t} else {\n\t\t\t\treturn (await element.parentElement.isOpen()) && (await areElementAndAllParentsOpen(element.parentElement));\n\t\t\t}\n\t\t};\n\n\t\tconst elementsWithInclude = await Promise.all(\n\t\t\tthis.treeItemElements.map(async (element) => ({\n\t\t\t\tvalue: element,\n\t\t\t\tinclude: await areElementAndAllParentsOpen(element),\n\t\t\t})),\n\t\t);\n\n\t\treturn elementsWithInclude.filter((element) => element.include).map((element) => element.value);\n\t}\n\n\t@Listen('keydown')\n\tpublic async handleKeyDown(event: KeyboardEvent) {\n\t\tconst openItems = await this.getOpenTreeItemElements();\n\t\tconst currentTreeItem: HTMLKolTreeItemElement | undefined | null = document.activeElement?.closest(KolTreeItemTag);\n\n\t\tif (!openItems || !currentTreeItem) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst currentIndex = openItems?.findIndex((elem) => elem === currentTreeItem);\n\n\t\tswitch (event.key) {\n\t\t\tcase 'ArrowDown': {\n\t\t\t\tawait openItems[currentIndex + 1]?.focusLink();\n\t\t\t\tevent.preventDefault();\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tcase 'ArrowUp': {\n\t\t\t\tawait openItems[currentIndex - 1]?.focusLink();\n\t\t\t\tevent.preventDefault();\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tcase 'Right':\n\t\t\tcase 'ArrowRight': {\n\t\t\t\tevent.preventDefault();\n\t\t\t\tif (await currentTreeItem.isOpen()) {\n\t\t\t\t\tawait openItems[currentIndex + 1]?.focusLink();\n\t\t\t\t} else {\n\t\t\t\t\tawait currentTreeItem.expand();\n\t\t\t\t}\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tcase 'Left':\n\t\t\tcase 'ArrowLeft': {\n\t\t\t\tevent.preventDefault();\n\t\t\t\tif (await currentTreeItem.isOpen()) {\n\t\t\t\t\tawait currentTreeItem.collapse();\n\t\t\t\t} else {\n\t\t\t\t\tconst parentIndex = openItems.findIndex((item) => item === currentTreeItem.parentElement);\n\t\t\t\t\tparentIndex !== -1 && (await openItems[parentIndex]?.focusLink());\n\t\t\t\t}\n\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tcase 'Home': {\n\t\t\t\tawait openItems[0]?.focusLink();\n\t\t\t\tevent.preventDefault();\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tcase 'End': {\n\t\t\t\tawait openItems[openItems.length - 1]?.focusLink();\n\t\t\t\tevent.preventDefault();\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tcase event.key.match(/[a-zA-Z0-9]/)?.input: {\n\t\t\t\tconst char = event.key.toLowerCase();\n\t\t\t\tconst startIndex = openItems.indexOf(currentTreeItem) + 1;\n\t\t\t\tconst wrapAroundItems = openItems.concat(openItems);\n\t\t\t\tconst matchIndex = wrapAroundItems\n\t\t\t\t\t.slice(startIndex, startIndex + openItems.length)\n\t\t\t\t\t.findIndex((item) => item.getAttribute('_label')?.trim().toLowerCase().startsWith(char));\n\n\t\t\t\tif (matchIndex !== -1) {\n\t\t\t\t\tawait wrapAroundItems[startIndex + matchIndex].focusLink();\n\t\t\t\t\tevent.preventDefault();\n\t\t\t\t}\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tcase '*': {\n\t\t\t\tconst siblings = currentTreeItem.parentElement?.querySelectorAll(KolTreeItemTag);\n\t\t\t\tsiblings?.forEach((element) => {\n\t\t\t\t\tvoid element.expand();\n\t\t\t\t});\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t}\n\n\t@Listen('focusout')\n\tpublic async handleFocusOut(event: FocusEvent) {\n\t\tif (event.relatedTarget && !(event.relatedTarget as Element).closest(KolTreeTag)) {\n\t\t\t/* Tree lost focus */\n\t\t\tawait this.ensureActiveItemVisibility();\n\t\t}\n\t}\n\n\t// eslint-disable-next-line @typescript-eslint/require-await\n\tprivate async ensureActiveItemVisibility() {\n\t\tconst findActiveItem = (): HTMLKolTreeItemElement | undefined => {\n\t\t\tconst rootNodes = (this.host.querySelector('slot')?.assignedNodes?.() as HTMLElement[])?.filter(KolTreeWc.isTreeItem) ?? [];\n\t\t\tfor (const rootNode of rootNodes) {\n\t\t\t\tif (rootNode._active) {\n\t\t\t\t\treturn rootNode;\n\t\t\t\t}\n\t\t\t\tconst childMatch = rootNode.querySelector(`${KolTreeItemTag}[_active=\"true\"]`);\n\t\t\t\tif (childMatch && (childMatch as HTMLKolTreeItemElement)._active) {\n\t\t\t\t\treturn childMatch as HTMLKolTreeItemElement;\n\t\t\t\t}\n\t\t\t}\n\t\t};\n\n\t\tconst expandParentElements = (element: HTMLKolTreeItemElement) => {\n\t\t\tif (KolTreeWc.isTreeItem(element.parentElement)) {\n\t\t\t\tvoid element.parentElement.expand();\n\t\t\t\texpandParentElements(element.parentElement);\n\t\t\t}\n\t\t};\n\n\t\tconst target = findActiveItem();\n\t\tif (target) {\n\t\t\texpandParentElements(target);\n\t\t}\n\t}\n}\n"],"version":3}
|
1
|
+
{"file":"kol-tree-wc.entry.cjs.js","mappings":"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","names":["validateLabel","h","Host","KolTreeItemTag","KolTreeTag"],"sources":["src/components/tree/component.tsx"],"sourcesContent":["import type { JSX } from '@stencil/core';\nimport { Component, Element, h, Host, Listen, Prop, State, Watch } from '@stencil/core';\n\nimport type { LabelPropType, TreeAPI, TreeStates } from '../../schema';\nimport { validateLabel } from '../../schema';\nimport { KolTreeItemTag, KolTreeTag } from '../../core/component-names';\n\n/**\n * @internal\n */\n@Component({\n\ttag: 'kol-tree-wc',\n\tshadow: false,\n})\nexport class KolTreeWc implements TreeAPI {\n\t@Element() host!: HTMLElement;\n\n\t@State() public state: TreeStates = {\n\t\t_label: '',\n\t};\n\tprivate observer?: MutationObserver;\n\tprivate treeItemElements?: HTMLKolTreeItemElement[];\n\n\t/**\n\t * Defines the visible or semantic label of the component (e.g. aria-label, label, headline, caption, summary, etc.).\n\t */\n\t@Prop() _label!: LabelPropType;\n\n\t@Watch('_label') validateLabel(value?: LabelPropType): void {\n\t\tvalidateLabel(this, value);\n\t}\n\n\tpublic render(): JSX.Element {\n\t\treturn (\n\t\t\t<Host onSlotchange={this.handleSlotchange.bind(this)}>\n\t\t\t\t<nav class=\"kol-tree\" aria-label={this.state._label}>\n\t\t\t\t\t<ul class=\"kol-tree__treeview-navigation\" role=\"tree\" aria-label={this.state._label}>\n\t\t\t\t\t\t<slot />\n\t\t\t\t\t</ul>\n\t\t\t\t</nav>\n\t\t\t</Host>\n\t\t);\n\t}\n\n\tprivate static isTreeItem(this: void, element?: HTMLElement | null): element is HTMLKolTreeItemElement {\n\t\treturn element?.tagName === KolTreeItemTag.toUpperCase();\n\t}\n\n\tpublic componentWillLoad(): void {\n\t\tthis.validateLabel(this._label);\n\n\t\tthis.handleTreeChange();\n\t\tthis.observeChildListMutations();\n\t}\n\n\tpublic disconnectedCallback(): void {\n\t\tthis.observer?.disconnect();\n\t}\n\n\tprivate observeChildListMutations() {\n\t\tthis.observer = new MutationObserver(this.handleTreeChange.bind(this));\n\t\tthis.observeTopLevelItems();\n\t}\n\n\tprivate handleSlotchange() {\n\t\tthis.observeTopLevelItems();\n\t\tthis.handleTreeChange();\n\t}\n\n\tprivate observeTopLevelItems() {\n\t\tthis.getTopLevelTreeItems()?.forEach((treeItem) => {\n\t\t\tthis.observer?.observe(treeItem, { childList: true, subtree: true });\n\t\t});\n\t}\n\n\tprivate getTopLevelTreeItems(): HTMLKolTreeItemElement[] {\n\t\treturn (this.host.querySelector('slot')?.assignedNodes?.() as HTMLElement[])?.filter(KolTreeWc.isTreeItem);\n\t}\n\n\tprivate handleTreeChange(): void {\n\t\tthis.treeItemElements = this.getTreeItemElements();\n\t\tvoid this.ensureActiveItemVisibility();\n\t}\n\n\t/**\n\t * Returns array of all TreeItem elements in the order they appear\n\t */\n\tprivate getTreeItemElements(): HTMLKolTreeItemElement[] {\n\t\treturn this.getTopLevelTreeItems()?.reduce((accumulator: HTMLKolTreeItemElement[], currentValue: HTMLKolTreeItemElement) => {\n\t\t\tconst children = currentValue.querySelectorAll(KolTreeItemTag);\n\n\t\t\treturn [...accumulator, currentValue, ...children];\n\t\t}, []);\n\t}\n\n\tprivate async getOpenTreeItemElements(): Promise<HTMLKolTreeItemElement[] | undefined> {\n\t\tif (!this.treeItemElements) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst areElementAndAllParentsOpen = async (element: HTMLKolTreeItemElement): Promise<boolean> => {\n\t\t\tif (!KolTreeWc.isTreeItem(element.parentElement)) {\n\t\t\t\t// parent is tree itself, top level is always open\n\t\t\t\treturn true;\n\t\t\t} else {\n\t\t\t\treturn (await element.parentElement.isOpen()) && (await areElementAndAllParentsOpen(element.parentElement));\n\t\t\t}\n\t\t};\n\n\t\tconst elementsWithInclude = await Promise.all(\n\t\t\tthis.treeItemElements.map(async (element) => ({\n\t\t\t\tvalue: element,\n\t\t\t\tinclude: await areElementAndAllParentsOpen(element),\n\t\t\t})),\n\t\t);\n\n\t\treturn elementsWithInclude.filter((element) => element.include).map((element) => element.value);\n\t}\n\n\t@Listen('keydown')\n\tpublic async handleKeyDown(event: KeyboardEvent) {\n\t\tconst openItems = await this.getOpenTreeItemElements();\n\t\tconst currentTreeItem: HTMLKolTreeItemElement | undefined | null = document.activeElement?.closest(KolTreeItemTag);\n\t\tconst hasModifierKeyPressed = event.metaKey || event.altKey || event.ctrlKey || event.shiftKey;\n\n\t\tif (!openItems || !currentTreeItem) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst currentIndex = openItems?.findIndex((elem) => elem === currentTreeItem);\n\n\t\tswitch (event.key) {\n\t\t\tcase 'ArrowDown': {\n\t\t\t\tawait openItems[currentIndex + 1]?.focusLink();\n\t\t\t\tevent.preventDefault();\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tcase 'ArrowUp': {\n\t\t\t\tawait openItems[currentIndex - 1]?.focusLink();\n\t\t\t\tevent.preventDefault();\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tcase 'Right':\n\t\t\tcase 'ArrowRight': {\n\t\t\t\tevent.preventDefault();\n\t\t\t\tif (await currentTreeItem.isOpen()) {\n\t\t\t\t\tawait openItems[currentIndex + 1]?.focusLink();\n\t\t\t\t} else {\n\t\t\t\t\tawait currentTreeItem.expand();\n\t\t\t\t}\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tcase 'Left':\n\t\t\tcase 'ArrowLeft': {\n\t\t\t\tevent.preventDefault();\n\t\t\t\tif (await currentTreeItem.isOpen()) {\n\t\t\t\t\tawait currentTreeItem.collapse();\n\t\t\t\t} else {\n\t\t\t\t\tconst parentIndex = openItems.findIndex((item) => item === currentTreeItem.parentElement);\n\t\t\t\t\tparentIndex !== -1 && (await openItems[parentIndex]?.focusLink());\n\t\t\t\t}\n\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tcase 'Home': {\n\t\t\t\tawait openItems[0]?.focusLink();\n\t\t\t\tevent.preventDefault();\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tcase 'End': {\n\t\t\t\tawait openItems[openItems.length - 1]?.focusLink();\n\t\t\t\tevent.preventDefault();\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tcase event.key.match(/^[a-zA-Z0-9]$/)?.input: {\n\t\t\t\t/* Ignore events with any modifier key to avoid breaking native browser or OS shortcuts such as ⌘+L */\n\t\t\t\tif (!hasModifierKeyPressed) {\n\t\t\t\t\tconst char = event.key.toLowerCase();\n\t\t\t\t\tconst startIndex = openItems.indexOf(currentTreeItem) + 1;\n\t\t\t\t\tconst wrapAroundItems = openItems.concat(openItems);\n\t\t\t\t\tconst matchIndex = wrapAroundItems\n\t\t\t\t\t\t.slice(startIndex, startIndex + openItems.length)\n\t\t\t\t\t\t.findIndex((item) => item.getAttribute('_label')?.trim().toLowerCase().startsWith(char));\n\n\t\t\t\t\tif (matchIndex !== -1) {\n\t\t\t\t\t\tawait wrapAroundItems[startIndex + matchIndex].focusLink();\n\t\t\t\t\t\tevent.preventDefault();\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tcase '*': {\n\t\t\t\tconst siblings = currentTreeItem.parentElement?.querySelectorAll(KolTreeItemTag);\n\t\t\t\tsiblings?.forEach((element) => {\n\t\t\t\t\tvoid element.expand();\n\t\t\t\t});\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t}\n\n\t@Listen('focusout')\n\tpublic async handleFocusOut(event: FocusEvent) {\n\t\tif (event.relatedTarget && !(event.relatedTarget as Element).closest(KolTreeTag)) {\n\t\t\t/* Tree lost focus */\n\t\t\tawait this.ensureActiveItemVisibility();\n\t\t}\n\t}\n\n\t// eslint-disable-next-line @typescript-eslint/require-await\n\tprivate async ensureActiveItemVisibility() {\n\t\tconst findActiveItem = (): HTMLKolTreeItemElement | undefined => {\n\t\t\tconst rootNodes = (this.host.querySelector('slot')?.assignedNodes?.() as HTMLElement[])?.filter(KolTreeWc.isTreeItem) ?? [];\n\t\t\tfor (const rootNode of rootNodes) {\n\t\t\t\tif (rootNode._active) {\n\t\t\t\t\treturn rootNode;\n\t\t\t\t}\n\t\t\t\tconst childMatch = rootNode.querySelector(`${KolTreeItemTag}[_active=\"true\"]`);\n\t\t\t\tif (childMatch && (childMatch as HTMLKolTreeItemElement)._active) {\n\t\t\t\t\treturn childMatch as HTMLKolTreeItemElement;\n\t\t\t\t}\n\t\t\t}\n\t\t};\n\n\t\tconst expandParentElements = (element: HTMLKolTreeItemElement) => {\n\t\t\tif (KolTreeWc.isTreeItem(element.parentElement)) {\n\t\t\t\tvoid element.parentElement.expand();\n\t\t\t\texpandParentElements(element.parentElement);\n\t\t\t}\n\t\t};\n\n\t\tconst target = findActiveItem();\n\t\tif (target) {\n\t\t\texpandParentElements(target);\n\t\t}\n\t}\n}\n"],"version":3}
|