@umbraco-ui/uui 2.0.0-rc.2 → 2.0.1
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 +103 -1
- package/dist/_virtual/_@oxc-project_runtime@0.138.0/helpers/esm/decorate.js +9 -0
- package/dist/components/action-bar/action-bar.d.ts +0 -1
- package/dist/components/action-bar/action-bar.element.js +15 -12
- package/dist/components/action-bar/action-bar.element.js.map +1 -1
- package/dist/components/action-bar/action-bar.js +5 -5
- package/dist/components/action-bar/action-bar.js.map +1 -1
- package/dist/components/avatar/avatar.d.ts +0 -1
- package/dist/components/avatar/avatar.element.js +72 -86
- package/dist/components/avatar/avatar.element.js.map +1 -1
- package/dist/components/avatar/avatar.js +5 -5
- package/dist/components/avatar/avatar.js.map +1 -1
- package/dist/components/avatar-group/avatar-group.d.ts +0 -1
- package/dist/components/avatar-group/avatar-group.element.js +58 -68
- package/dist/components/avatar-group/avatar-group.element.js.map +1 -1
- package/dist/components/avatar-group/avatar-group.js +5 -5
- package/dist/components/avatar-group/avatar-group.js.map +1 -1
- package/dist/components/badge/badge.d.ts +0 -1
- package/dist/components/badge/badge.element.js +32 -38
- package/dist/components/badge/badge.element.js.map +1 -1
- package/dist/components/badge/badge.js +5 -5
- package/dist/components/badge/badge.js.map +1 -1
- package/dist/components/boolean-input/UUIBooleanInputEvent.js +15 -13
- package/dist/components/boolean-input/UUIBooleanInputEvent.js.map +1 -1
- package/dist/components/boolean-input/boolean-input.d.ts +0 -1
- package/dist/components/boolean-input/boolean-input.element.js +114 -134
- package/dist/components/boolean-input/boolean-input.element.js.map +1 -1
- package/dist/components/boolean-input/boolean-input.js +3 -0
- package/dist/components/box/box.d.ts +0 -1
- package/dist/components/box/box.element.js +74 -77
- package/dist/components/box/box.element.js.map +1 -1
- package/dist/components/box/box.js +5 -5
- package/dist/components/box/box.js.map +1 -1
- package/dist/components/breadcrumbs/breadcrumb-item.element.js +45 -50
- package/dist/components/breadcrumbs/breadcrumb-item.element.js.map +1 -1
- package/dist/components/breadcrumbs/breadcrumbs.d.ts +0 -1
- package/dist/components/breadcrumbs/breadcrumbs.element.js +40 -47
- package/dist/components/breadcrumbs/breadcrumbs.element.js.map +1 -1
- package/dist/components/breadcrumbs/breadcrumbs.js +5 -6
- package/dist/components/breadcrumbs/breadcrumbs.js.map +1 -1
- package/dist/components/button/button.d.ts +0 -1
- package/dist/components/button/button.element.js +147 -199
- package/dist/components/button/button.element.js.map +1 -1
- package/dist/components/button/button.js +5 -5
- package/dist/components/button/button.js.map +1 -1
- package/dist/components/button-copy-text/UUICopyTextEvent.js +16 -12
- package/dist/components/button-copy-text/UUICopyTextEvent.js.map +1 -1
- package/dist/components/button-copy-text/button-copy-text.d.ts +0 -1
- package/dist/components/button-copy-text/button-copy-text.element.js +78 -93
- package/dist/components/button-copy-text/button-copy-text.element.js.map +1 -1
- package/dist/components/button-copy-text/button-copy-text.js +6 -7
- package/dist/components/button-copy-text/button-copy-text.js.map +1 -1
- package/dist/components/button-group/button-group.d.ts +0 -1
- package/dist/components/button-group/button-group.element.js +19 -14
- package/dist/components/button-group/button-group.element.js.map +1 -1
- package/dist/components/button-group/button-group.js +5 -5
- package/dist/components/button-group/button-group.js.map +1 -1
- package/dist/components/button-inline-create/UUIButtonInlineCreateEvent.js +16 -14
- package/dist/components/button-inline-create/UUIButtonInlineCreateEvent.js.map +1 -1
- package/dist/components/button-inline-create/button-inline-create.d.ts +0 -1
- package/dist/components/button-inline-create/button-inline-create.element.js +63 -88
- package/dist/components/button-inline-create/button-inline-create.element.js.map +1 -1
- package/dist/components/button-inline-create/button-inline-create.js +6 -7
- package/dist/components/button-inline-create/button-inline-create.js.map +1 -1
- package/dist/components/card/UUICardEvent.js +9 -7
- package/dist/components/card/UUICardEvent.js.map +1 -1
- package/dist/components/card/card.d.ts +0 -1
- package/dist/components/card/card.element.d.ts +7 -0
- package/dist/components/card/card.element.js +72 -69
- package/dist/components/card/card.element.js.map +1 -1
- package/dist/components/card/card.js +6 -7
- package/dist/components/card/card.js.map +1 -1
- package/dist/components/card-block-type/card-block-type.d.ts +0 -1
- package/dist/components/card-block-type/card-block-type.element.js +55 -74
- package/dist/components/card-block-type/card-block-type.element.js.map +1 -1
- package/dist/components/card-block-type/card-block-type.js +5 -5
- package/dist/components/card-block-type/card-block-type.js.map +1 -1
- package/dist/components/card-content-node/card-content-node.d.ts +0 -1
- package/dist/components/card-content-node/card-content-node.element.d.ts +1 -0
- package/dist/components/card-content-node/card-content-node.element.js +82 -83
- package/dist/components/card-content-node/card-content-node.element.js.map +1 -1
- package/dist/components/card-content-node/card-content-node.js +5 -5
- package/dist/components/card-content-node/card-content-node.js.map +1 -1
- package/dist/components/card-media/card-media.d.ts +0 -1
- package/dist/components/card-media/card-media.element.d.ts +4 -0
- package/dist/components/card-media/card-media.element.js +103 -89
- package/dist/components/card-media/card-media.element.js.map +1 -1
- package/dist/components/card-media/card-media.js +5 -5
- package/dist/components/card-media/card-media.js.map +1 -1
- package/dist/components/card-user/card-user.d.ts +0 -1
- package/dist/components/card-user/card-user.element.js +57 -72
- package/dist/components/card-user/card-user.element.js.map +1 -1
- package/dist/components/card-user/card-user.js +5 -5
- package/dist/components/card-user/card-user.js.map +1 -1
- package/dist/components/checkbox/checkbox.d.ts +0 -1
- package/dist/components/checkbox/checkbox.element.js +41 -22
- package/dist/components/checkbox/checkbox.element.js.map +1 -1
- package/dist/components/checkbox/checkbox.js +5 -5
- package/dist/components/checkbox/checkbox.js.map +1 -1
- package/dist/components/color-area/UUIColorAreaEvent.js +15 -13
- package/dist/components/color-area/UUIColorAreaEvent.js.map +1 -1
- package/dist/components/color-area/color-area.d.ts +0 -1
- package/dist/components/color-area/color-area.element.js +137 -174
- package/dist/components/color-area/color-area.element.js.map +1 -1
- package/dist/components/color-area/color-area.js +6 -7
- package/dist/components/color-area/color-area.js.map +1 -1
- package/dist/components/color-picker/UUIColorPickerEvent.js +15 -13
- package/dist/components/color-picker/UUIColorPickerEvent.js.map +1 -1
- package/dist/components/color-picker/color-picker.d.ts +0 -1
- package/dist/components/color-picker/color-picker.element.js +293 -334
- package/dist/components/color-picker/color-picker.element.js.map +1 -1
- package/dist/components/color-picker/color-picker.js +6 -7
- package/dist/components/color-picker/color-picker.js.map +1 -1
- package/dist/components/color-slider/UUIColorSliderEvent.js +15 -13
- package/dist/components/color-slider/UUIColorSliderEvent.js.map +1 -1
- package/dist/components/color-slider/color-slider.d.ts +0 -1
- package/dist/components/color-slider/color-slider.element.js +169 -219
- package/dist/components/color-slider/color-slider.element.js.map +1 -1
- package/dist/components/color-slider/color-slider.js +6 -7
- package/dist/components/color-slider/color-slider.js.map +1 -1
- package/dist/components/color-swatch/color-swatch.d.ts +0 -1
- package/dist/components/color-swatch/color-swatch.element.d.ts +1 -1
- package/dist/components/color-swatch/color-swatch.element.js +215 -201
- package/dist/components/color-swatch/color-swatch.element.js.map +1 -1
- package/dist/components/color-swatch/color-swatch.js +5 -5
- package/dist/components/color-swatch/color-swatch.js.map +1 -1
- package/dist/components/color-swatches/UUIColorSwatchesEvent.js +15 -13
- package/dist/components/color-swatches/UUIColorSwatchesEvent.js.map +1 -1
- package/dist/components/color-swatches/color-swatches.d.ts +0 -1
- package/dist/components/color-swatches/color-swatches.element.js +115 -132
- package/dist/components/color-swatches/color-swatches.element.js.map +1 -1
- package/dist/components/color-swatches/color-swatches.js +6 -7
- package/dist/components/color-swatches/color-swatches.js.map +1 -1
- package/dist/components/combobox/UUIComboboxEvent.js +18 -14
- package/dist/components/combobox/UUIComboboxEvent.js.map +1 -1
- package/dist/components/combobox/combobox.d.ts +0 -1
- package/dist/components/combobox/combobox.element.js +321 -425
- package/dist/components/combobox/combobox.element.js.map +1 -1
- package/dist/components/combobox/combobox.js +6 -7
- package/dist/components/combobox/combobox.js.map +1 -1
- package/dist/components/combobox-list/UUIComboboxListEvent.js +18 -14
- package/dist/components/combobox-list/UUIComboboxListEvent.js.map +1 -1
- package/dist/components/combobox-list/combobox-list-option.element.js +88 -80
- package/dist/components/combobox-list/combobox-list-option.element.js.map +1 -1
- package/dist/components/combobox-list/combobox-list.d.ts +0 -1
- package/dist/components/combobox-list/combobox-list.element.js +218 -275
- package/dist/components/combobox-list/combobox-list.element.js.map +1 -1
- package/dist/components/combobox-list/combobox-list.js +6 -8
- package/dist/components/combobox-list/combobox-list.js.map +1 -1
- package/dist/components/dialog/dialog.d.ts +0 -1
- package/dist/components/dialog/dialog.element.js +19 -14
- package/dist/components/dialog/dialog.element.js.map +1 -1
- package/dist/components/dialog/dialog.js +5 -5
- package/dist/components/dialog/dialog.js.map +1 -1
- package/dist/components/dialog-layout/dialog-layout.d.ts +0 -1
- package/dist/components/dialog-layout/dialog-layout.element.js +59 -64
- package/dist/components/dialog-layout/dialog-layout.element.js.map +1 -1
- package/dist/components/dialog-layout/dialog-layout.js +5 -5
- package/dist/components/dialog-layout/dialog-layout.js.map +1 -1
- package/dist/components/file-dropzone/UUIFileDropzoneEvent.js +18 -14
- package/dist/components/file-dropzone/UUIFileDropzoneEvent.js.map +1 -1
- package/dist/components/file-dropzone/file-dropzone.d.ts +0 -1
- package/dist/components/file-dropzone/file-dropzone.element.js +214 -257
- package/dist/components/file-dropzone/file-dropzone.element.js.map +1 -1
- package/dist/components/file-dropzone/file-dropzone.js +6 -7
- package/dist/components/file-dropzone/file-dropzone.js.map +1 -1
- package/dist/components/file-preview/UUIFileSize.js +46 -19
- package/dist/components/file-preview/UUIFileSize.js.map +1 -1
- package/dist/components/file-preview/file-preview.d.ts +0 -1
- package/dist/components/file-preview/file-preview.element.js +78 -103
- package/dist/components/file-preview/file-preview.element.js.map +1 -1
- package/dist/components/file-preview/file-preview.js +6 -5
- package/dist/components/file-preview/file-preview.js.map +1 -1
- package/dist/components/form/form.d.ts +0 -1
- package/dist/components/form/form.element.js +46 -46
- package/dist/components/form/form.element.js.map +1 -1
- package/dist/components/form/form.js +5 -5
- package/dist/components/form/form.js.map +1 -1
- package/dist/components/form-layout-item/form-layout-item.d.ts +0 -1
- package/dist/components/form-layout-item/form-layout-item.element.js +39 -45
- package/dist/components/form-layout-item/form-layout-item.element.js.map +1 -1
- package/dist/components/form-layout-item/form-layout-item.js +5 -5
- package/dist/components/form-layout-item/form-layout-item.js.map +1 -1
- package/dist/components/form-validation-message/form-validation-message.d.ts +0 -1
- package/dist/components/form-validation-message/form-validation-message.element.js +71 -89
- package/dist/components/form-validation-message/form-validation-message.element.js.map +1 -1
- package/dist/components/form-validation-message/form-validation-message.js +5 -5
- package/dist/components/form-validation-message/form-validation-message.js.map +1 -1
- package/dist/components/icon/UUIIconRequestEvent.js +21 -19
- package/dist/components/icon/UUIIconRequestEvent.js.map +1 -1
- package/dist/components/icon/icon.d.ts +0 -1
- package/dist/components/icon/icon.element.js +93 -117
- package/dist/components/icon/icon.element.js.map +1 -1
- package/dist/components/icon/icon.js +6 -7
- package/dist/components/icon/icon.js.map +1 -1
- package/dist/components/icon-registry/UUIIconHost.js +16 -17
- package/dist/components/icon-registry/UUIIconHost.js.map +1 -1
- package/dist/components/icon-registry/UUIIconRegistry.js +67 -77
- package/dist/components/icon-registry/UUIIconRegistry.js.map +1 -1
- package/dist/components/icon-registry/icon-registry.d.ts +0 -1
- package/dist/components/icon-registry/icon-registry.element.js +39 -48
- package/dist/components/icon-registry/icon-registry.element.js.map +1 -1
- package/dist/components/icon-registry/icon-registry.js +7 -6
- package/dist/components/icon-registry/icon-registry.js.map +1 -1
- package/dist/components/icon-registry-essential/UUIIconRegistryEssential.js +44 -42
- package/dist/components/icon-registry-essential/UUIIconRegistryEssential.js.map +1 -1
- package/dist/components/icon-registry-essential/icon-registry-essential.d.ts +0 -1
- package/dist/components/icon-registry-essential/icon-registry-essential.element.js +15 -9
- package/dist/components/icon-registry-essential/icon-registry-essential.element.js.map +1 -1
- package/dist/components/icon-registry-essential/icon-registry-essential.js +6 -39
- package/dist/components/icon-registry-essential/icon-registry-essential.js.map +1 -1
- package/dist/components/icon-registry-essential/svgs/iconAdd.js +6 -5
- package/dist/components/icon-registry-essential/svgs/iconAdd.js.map +1 -1
- package/dist/components/icon-registry-essential/svgs/iconAlert.js +6 -5
- package/dist/components/icon-registry-essential/svgs/iconAlert.js.map +1 -1
- package/dist/components/icon-registry-essential/svgs/iconAttachment.js +6 -5
- package/dist/components/icon-registry-essential/svgs/iconAttachment.js.map +1 -1
- package/dist/components/icon-registry-essential/svgs/iconCalendar.js +6 -5
- package/dist/components/icon-registry-essential/svgs/iconCalendar.js.map +1 -1
- package/dist/components/icon-registry-essential/svgs/iconCheck.js +6 -5
- package/dist/components/icon-registry-essential/svgs/iconCheck.js.map +1 -1
- package/dist/components/icon-registry-essential/svgs/iconClipboard.js +6 -5
- package/dist/components/icon-registry-essential/svgs/iconClipboard.js.map +1 -1
- package/dist/components/icon-registry-essential/svgs/iconCode.js +6 -5
- package/dist/components/icon-registry-essential/svgs/iconCode.js.map +1 -1
- package/dist/components/icon-registry-essential/svgs/iconColorPicker.js +6 -5
- package/dist/components/icon-registry-essential/svgs/iconColorPicker.js.map +1 -1
- package/dist/components/icon-registry-essential/svgs/iconCopy.js +6 -5
- package/dist/components/icon-registry-essential/svgs/iconCopy.js.map +1 -1
- package/dist/components/icon-registry-essential/svgs/iconDelete.js +6 -5
- package/dist/components/icon-registry-essential/svgs/iconDelete.js.map +1 -1
- package/dist/components/icon-registry-essential/svgs/iconDocument.js +6 -5
- package/dist/components/icon-registry-essential/svgs/iconDocument.js.map +1 -1
- package/dist/components/icon-registry-essential/svgs/iconDownload.js +6 -5
- package/dist/components/icon-registry-essential/svgs/iconDownload.js.map +1 -1
- package/dist/components/icon-registry-essential/svgs/iconDrag.js +6 -5
- package/dist/components/icon-registry-essential/svgs/iconDrag.js.map +1 -1
- package/dist/components/icon-registry-essential/svgs/iconEdit.js +6 -5
- package/dist/components/icon-registry-essential/svgs/iconEdit.js.map +1 -1
- package/dist/components/icon-registry-essential/svgs/iconFavorite.js +6 -5
- package/dist/components/icon-registry-essential/svgs/iconFavorite.js.map +1 -1
- package/dist/components/icon-registry-essential/svgs/iconFolder.js +6 -5
- package/dist/components/icon-registry-essential/svgs/iconFolder.js.map +1 -1
- package/dist/components/icon-registry-essential/svgs/iconForbidden.js +6 -5
- package/dist/components/icon-registry-essential/svgs/iconForbidden.js.map +1 -1
- package/dist/components/icon-registry-essential/svgs/iconInfo.js +6 -5
- package/dist/components/icon-registry-essential/svgs/iconInfo.js.map +1 -1
- package/dist/components/icon-registry-essential/svgs/iconLink.js +6 -5
- package/dist/components/icon-registry-essential/svgs/iconLink.js.map +1 -1
- package/dist/components/icon-registry-essential/svgs/iconLock.js +6 -5
- package/dist/components/icon-registry-essential/svgs/iconLock.js.map +1 -1
- package/dist/components/icon-registry-essential/svgs/iconPause.js +6 -5
- package/dist/components/icon-registry-essential/svgs/iconPause.js.map +1 -1
- package/dist/components/icon-registry-essential/svgs/iconPicture.js +6 -5
- package/dist/components/icon-registry-essential/svgs/iconPicture.js.map +1 -1
- package/dist/components/icon-registry-essential/svgs/iconPlay.js +6 -5
- package/dist/components/icon-registry-essential/svgs/iconPlay.js.map +1 -1
- package/dist/components/icon-registry-essential/svgs/iconRemove.js +6 -5
- package/dist/components/icon-registry-essential/svgs/iconRemove.js.map +1 -1
- package/dist/components/icon-registry-essential/svgs/iconSearch.js +6 -5
- package/dist/components/icon-registry-essential/svgs/iconSearch.js.map +1 -1
- package/dist/components/icon-registry-essential/svgs/iconSee.js +6 -5
- package/dist/components/icon-registry-essential/svgs/iconSee.js.map +1 -1
- package/dist/components/icon-registry-essential/svgs/iconSettings.js +6 -5
- package/dist/components/icon-registry-essential/svgs/iconSettings.js.map +1 -1
- package/dist/components/icon-registry-essential/svgs/iconSubtract.js +6 -5
- package/dist/components/icon-registry-essential/svgs/iconSubtract.js.map +1 -1
- package/dist/components/icon-registry-essential/svgs/iconSync.js +6 -5
- package/dist/components/icon-registry-essential/svgs/iconSync.js.map +1 -1
- package/dist/components/icon-registry-essential/svgs/iconUnlock.js +6 -5
- package/dist/components/icon-registry-essential/svgs/iconUnlock.js.map +1 -1
- package/dist/components/icon-registry-essential/svgs/iconUnsee.js +6 -5
- package/dist/components/icon-registry-essential/svgs/iconUnsee.js.map +1 -1
- package/dist/components/icon-registry-essential/svgs/iconWand.js +6 -5
- package/dist/components/icon-registry-essential/svgs/iconWand.js.map +1 -1
- package/dist/components/icon-registry-essential/svgs/iconWrong.js +6 -5
- package/dist/components/icon-registry-essential/svgs/iconWrong.js.map +1 -1
- package/dist/components/icon-registry-essential/svgs/index.js +34 -0
- package/dist/components/index.js +206 -0
- package/dist/components/input/UUIInputEvent.js +18 -14
- package/dist/components/input/UUIInputEvent.js.map +1 -1
- package/dist/components/input/input.d.ts +0 -1
- package/dist/components/input/input.element.js +176 -201
- package/dist/components/input/input.element.js.map +1 -1
- package/dist/components/input/input.js +6 -7
- package/dist/components/input/input.js.map +1 -1
- package/dist/components/input-file/input-file.d.ts +0 -1
- package/dist/components/input-file/input-file.element.js +137 -211
- package/dist/components/input-file/input-file.element.js.map +1 -1
- package/dist/components/input-file/input-file.js +5 -5
- package/dist/components/input-file/input-file.js.map +1 -1
- package/dist/components/input-lock/UUIInputLockEvent.js +15 -13
- package/dist/components/input-lock/UUIInputLockEvent.js.map +1 -1
- package/dist/components/input-lock/input-lock.d.ts +0 -1
- package/dist/components/input-lock/input-lock.element.js +69 -105
- package/dist/components/input-lock/input-lock.element.js.map +1 -1
- package/dist/components/input-lock/input-lock.js +6 -7
- package/dist/components/input-lock/input-lock.js.map +1 -1
- package/dist/components/input-password/input-password.d.ts +0 -1
- package/dist/components/input-password/input-password.element.js +45 -90
- package/dist/components/input-password/input-password.element.js.map +1 -1
- package/dist/components/input-password/input-password.js +5 -5
- package/dist/components/input-password/input-password.js.map +1 -1
- package/dist/components/keyboard-shortcut/key.element.js +19 -14
- package/dist/components/keyboard-shortcut/key.element.js.map +1 -1
- package/dist/components/keyboard-shortcut/keyboard-shortcut.d.ts +0 -1
- package/dist/components/keyboard-shortcut/keyboard-shortcut.element.js +19 -14
- package/dist/components/keyboard-shortcut/keyboard-shortcut.element.js.map +1 -1
- package/dist/components/keyboard-shortcut/keyboard-shortcut.js +5 -6
- package/dist/components/keyboard-shortcut/keyboard-shortcut.js.map +1 -1
- package/dist/components/label/label.d.ts +0 -1
- package/dist/components/label/label.element.js +52 -54
- package/dist/components/label/label.element.js.map +1 -1
- package/dist/components/label/label.js +5 -5
- package/dist/components/label/label.js.map +1 -1
- package/dist/components/loader/loader.d.ts +0 -1
- package/dist/components/loader/loader.element.js +18 -14
- package/dist/components/loader/loader.element.js.map +1 -1
- package/dist/components/loader/loader.js +5 -5
- package/dist/components/loader/loader.js.map +1 -1
- package/dist/components/loader-bar/loader-bar.d.ts +0 -1
- package/dist/components/loader-bar/loader-bar.element.js +55 -52
- package/dist/components/loader-bar/loader-bar.element.js.map +1 -1
- package/dist/components/loader-bar/loader-bar.js +5 -5
- package/dist/components/loader-bar/loader-bar.js.map +1 -1
- package/dist/components/loader-circle/loader-circle.d.ts +0 -1
- package/dist/components/loader-circle/loader-circle.element.js +52 -59
- package/dist/components/loader-circle/loader-circle.element.js.map +1 -1
- package/dist/components/loader-circle/loader-circle.js +5 -5
- package/dist/components/loader-circle/loader-circle.js.map +1 -1
- package/dist/components/menu-item/UUIMenuItemEvent.js +15 -9
- package/dist/components/menu-item/UUIMenuItemEvent.js.map +1 -1
- package/dist/components/menu-item/menu-item.d.ts +0 -1
- package/dist/components/menu-item/menu-item.element.js +136 -139
- package/dist/components/menu-item/menu-item.element.js.map +1 -1
- package/dist/components/menu-item/menu-item.js +6 -7
- package/dist/components/menu-item/menu-item.js.map +1 -1
- package/dist/components/modal/modal-container.js +86 -141
- package/dist/components/modal/modal-container.js.map +1 -1
- package/dist/components/modal/modal-dialog.element.js +14 -15
- package/dist/components/modal/modal-dialog.element.js.map +1 -1
- package/dist/components/modal/modal-sidebar.element.js +41 -64
- package/dist/components/modal/modal-sidebar.element.js.map +1 -1
- package/dist/components/modal/modal.d.ts +0 -1
- package/dist/components/modal/modal.element.js +89 -106
- package/dist/components/modal/modal.element.js.map +1 -1
- package/dist/components/modal/modal.js +6 -12
- package/dist/components/modal/modal.js.map +1 -1
- package/dist/components/pagination/UUIPaginationEvent.js +15 -13
- package/dist/components/pagination/UUIPaginationEvent.js.map +1 -1
- package/dist/components/pagination/pagination.d.ts +0 -1
- package/dist/components/pagination/pagination.element.js +188 -228
- package/dist/components/pagination/pagination.element.js.map +1 -1
- package/dist/components/pagination/pagination.js +6 -7
- package/dist/components/pagination/pagination.js.map +1 -1
- package/dist/components/popover-container/popover-container.d.ts +0 -1
- package/dist/components/popover-container/popover-container.element.d.ts +1 -0
- package/dist/components/popover-container/popover-container.element.js +290 -335
- package/dist/components/popover-container/popover-container.element.js.map +1 -1
- package/dist/components/popover-container/popover-container.js +5 -5
- package/dist/components/popover-container/popover-container.js.map +1 -1
- package/dist/components/progress-bar/progress-bar.d.ts +0 -1
- package/dist/components/progress-bar/progress-bar.element.js +41 -43
- package/dist/components/progress-bar/progress-bar.element.js.map +1 -1
- package/dist/components/progress-bar/progress-bar.js +5 -5
- package/dist/components/progress-bar/progress-bar.js.map +1 -1
- package/dist/components/radio/UUIRadioEvent.js +15 -13
- package/dist/components/radio/UUIRadioEvent.js.map +1 -1
- package/dist/components/radio/UUIRadioGroupEvent.js +15 -13
- package/dist/components/radio/UUIRadioGroupEvent.js.map +1 -1
- package/dist/components/radio/radio-group.element.js +224 -279
- package/dist/components/radio/radio-group.element.js.map +1 -1
- package/dist/components/radio/radio.d.ts +0 -1
- package/dist/components/radio/radio.element.js +100 -123
- package/dist/components/radio/radio.element.js.map +1 -1
- package/dist/components/radio/radio.js +7 -10
- package/dist/components/radio/radio.js.map +1 -1
- package/dist/components/range-slider/UUIRangeSliderEvent.js +18 -14
- package/dist/components/range-slider/UUIRangeSliderEvent.js.map +1 -1
- package/dist/components/range-slider/range-slider.d.ts +0 -1
- package/dist/components/range-slider/range-slider.element.js +439 -504
- package/dist/components/range-slider/range-slider.element.js.map +1 -1
- package/dist/components/range-slider/range-slider.js +6 -7
- package/dist/components/range-slider/range-slider.js.map +1 -1
- package/dist/components/ref/UUIRefEvent.js +9 -7
- package/dist/components/ref/UUIRefEvent.js.map +1 -1
- package/dist/components/ref/ref.d.ts +0 -1
- package/dist/components/ref/ref.element.js +55 -50
- package/dist/components/ref/ref.element.js.map +1 -1
- package/dist/components/ref/ref.js +6 -7
- package/dist/components/ref/ref.js.map +1 -1
- package/dist/components/ref-list/ref-list.d.ts +0 -1
- package/dist/components/ref-list/ref-list.element.js +17 -14
- package/dist/components/ref-list/ref-list.element.js.map +1 -1
- package/dist/components/ref-list/ref-list.js +5 -5
- package/dist/components/ref-list/ref-list.js.map +1 -1
- package/dist/components/ref-node/ref-node.d.ts +0 -1
- package/dist/components/ref-node/ref-node.element.js +91 -109
- package/dist/components/ref-node/ref-node.element.js.map +1 -1
- package/dist/components/ref-node/ref-node.js +5 -5
- package/dist/components/ref-node/ref-node.js.map +1 -1
- package/dist/components/ref-node-data-type/ref-node-data-type.d.ts +0 -1
- package/dist/components/ref-node-data-type/ref-node-data-type.element.js +30 -35
- package/dist/components/ref-node-data-type/ref-node-data-type.element.js.map +1 -1
- package/dist/components/ref-node-data-type/ref-node-data-type.js +5 -5
- package/dist/components/ref-node-data-type/ref-node-data-type.js.map +1 -1
- package/dist/components/ref-node-document-type/ref-node-document-type.d.ts +0 -1
- package/dist/components/ref-node-document-type/ref-node-document-type.element.js +30 -35
- package/dist/components/ref-node-document-type/ref-node-document-type.element.js.map +1 -1
- package/dist/components/ref-node-document-type/ref-node-document-type.js +5 -5
- package/dist/components/ref-node-document-type/ref-node-document-type.js.map +1 -1
- package/dist/components/ref-node-form/ref-node-form.d.ts +0 -1
- package/dist/components/ref-node-form/ref-node-form.element.js +21 -12
- package/dist/components/ref-node-form/ref-node-form.element.js.map +1 -1
- package/dist/components/ref-node-form/ref-node-form.js +5 -5
- package/dist/components/ref-node-form/ref-node-form.js.map +1 -1
- package/dist/components/ref-node-member/ref-node-member.d.ts +0 -1
- package/dist/components/ref-node-member/ref-node-member.element.js +33 -35
- package/dist/components/ref-node-member/ref-node-member.element.js.map +1 -1
- package/dist/components/ref-node-member/ref-node-member.js +5 -5
- package/dist/components/ref-node-member/ref-node-member.js.map +1 -1
- package/dist/components/ref-node-package/ref-node-package.d.ts +0 -1
- package/dist/components/ref-node-package/ref-node-package.element.js +33 -42
- package/dist/components/ref-node-package/ref-node-package.element.js.map +1 -1
- package/dist/components/ref-node-package/ref-node-package.js +5 -5
- package/dist/components/ref-node-package/ref-node-package.js.map +1 -1
- package/dist/components/ref-node-user/ref-node-user.d.ts +0 -1
- package/dist/components/ref-node-user/ref-node-user.element.js +33 -35
- package/dist/components/ref-node-user/ref-node-user.element.js.map +1 -1
- package/dist/components/ref-node-user/ref-node-user.js +5 -5
- package/dist/components/ref-node-user/ref-node-user.js.map +1 -1
- package/dist/components/responsive-container/responsive-container.d.ts +0 -1
- package/dist/components/responsive-container/responsive-container.element.js +186 -244
- package/dist/components/responsive-container/responsive-container.element.js.map +1 -1
- package/dist/components/responsive-container/responsive-container.js +5 -5
- package/dist/components/responsive-container/responsive-container.js.map +1 -1
- package/dist/components/scroll-container/scroll-container.d.ts +0 -1
- package/dist/components/scroll-container/scroll-container.element.js +35 -36
- package/dist/components/scroll-container/scroll-container.element.js.map +1 -1
- package/dist/components/scroll-container/scroll-container.js +5 -5
- package/dist/components/scroll-container/scroll-container.js.map +1 -1
- package/dist/components/select/UUISelectEvent.js +15 -13
- package/dist/components/select/UUISelectEvent.js.map +1 -1
- package/dist/components/select/select.d.ts +0 -1
- package/dist/components/select/select.element.js +134 -163
- package/dist/components/select/select.element.js.map +1 -1
- package/dist/components/select/select.js +6 -7
- package/dist/components/select/select.js.map +1 -1
- package/dist/components/slider/UUISliderEvent.js +18 -14
- package/dist/components/slider/UUISliderEvent.js.map +1 -1
- package/dist/components/slider/native-input.styles.js +6 -5
- package/dist/components/slider/native-input.styles.js.map +1 -1
- package/dist/components/slider/slider.d.ts +0 -1
- package/dist/components/slider/slider.element.d.ts +7 -0
- package/dist/components/slider/slider.element.js +197 -227
- package/dist/components/slider/slider.element.js.map +1 -1
- package/dist/components/slider/slider.js +6 -7
- package/dist/components/slider/slider.js.map +1 -1
- package/dist/components/symbol-drag-handle/symbol-drag-handle.d.ts +0 -1
- package/dist/components/symbol-drag-handle/symbol-drag-handle.element.js +19 -16
- package/dist/components/symbol-drag-handle/symbol-drag-handle.element.js.map +1 -1
- package/dist/components/symbol-drag-handle/symbol-drag-handle.js +5 -5
- package/dist/components/symbol-drag-handle/symbol-drag-handle.js.map +1 -1
- package/dist/components/symbol-expand/symbol-expand.d.ts +0 -1
- package/dist/components/symbol-expand/symbol-expand.element.js +27 -30
- package/dist/components/symbol-expand/symbol-expand.element.js.map +1 -1
- package/dist/components/symbol-expand/symbol-expand.js +5 -5
- package/dist/components/symbol-expand/symbol-expand.js.map +1 -1
- package/dist/components/symbol-file/symbol-file.d.ts +0 -1
- package/dist/components/symbol-file/symbol-file.element.js +24 -32
- package/dist/components/symbol-file/symbol-file.element.js.map +1 -1
- package/dist/components/symbol-file/symbol-file.js +5 -5
- package/dist/components/symbol-file/symbol-file.js.map +1 -1
- package/dist/components/symbol-file-dropzone/symbol-file-dropzone.d.ts +0 -1
- package/dist/components/symbol-file-dropzone/symbol-file-dropzone.element.js +26 -30
- package/dist/components/symbol-file-dropzone/symbol-file-dropzone.element.js.map +1 -1
- package/dist/components/symbol-file-dropzone/symbol-file-dropzone.js +5 -5
- package/dist/components/symbol-file-dropzone/symbol-file-dropzone.js.map +1 -1
- package/dist/components/symbol-file-thumbnail/symbol-file-thumbnail.d.ts +0 -1
- package/dist/components/symbol-file-thumbnail/symbol-file-thumbnail.element.js +39 -95
- package/dist/components/symbol-file-thumbnail/symbol-file-thumbnail.element.js.map +1 -1
- package/dist/components/symbol-file-thumbnail/symbol-file-thumbnail.js +5 -5
- package/dist/components/symbol-file-thumbnail/symbol-file-thumbnail.js.map +1 -1
- package/dist/components/symbol-folder/symbol-folder.d.ts +0 -1
- package/dist/components/symbol-folder/symbol-folder.element.js +17 -14
- package/dist/components/symbol-folder/symbol-folder.element.js.map +1 -1
- package/dist/components/symbol-folder/symbol-folder.js +5 -5
- package/dist/components/symbol-folder/symbol-folder.js.map +1 -1
- package/dist/components/symbol-lock/symbol-lock.d.ts +0 -1
- package/dist/components/symbol-lock/symbol-lock.element.js +26 -30
- package/dist/components/symbol-lock/symbol-lock.element.js.map +1 -1
- package/dist/components/symbol-lock/symbol-lock.js +5 -5
- package/dist/components/symbol-lock/symbol-lock.js.map +1 -1
- package/dist/components/symbol-more/symbol-more.d.ts +0 -1
- package/dist/components/symbol-more/symbol-more.element.js +17 -14
- package/dist/components/symbol-more/symbol-more.element.js.map +1 -1
- package/dist/components/symbol-more/symbol-more.js +5 -5
- package/dist/components/symbol-more/symbol-more.js.map +1 -1
- package/dist/components/symbol-sort/symbol-sort.d.ts +0 -1
- package/dist/components/symbol-sort/symbol-sort.element.js +29 -31
- package/dist/components/symbol-sort/symbol-sort.element.js.map +1 -1
- package/dist/components/symbol-sort/symbol-sort.js +5 -5
- package/dist/components/symbol-sort/symbol-sort.js.map +1 -1
- package/dist/components/table/table-cell.element.js +65 -71
- package/dist/components/table/table-cell.element.js.map +1 -1
- package/dist/components/table/table-column.element.js +14 -10
- package/dist/components/table/table-column.element.js.map +1 -1
- package/dist/components/table/table-head-cell.element.js +19 -16
- package/dist/components/table/table-head-cell.element.js.map +1 -1
- package/dist/components/table/table-head.element.js +23 -18
- package/dist/components/table/table-head.element.js.map +1 -1
- package/dist/components/table/table-row.element.js +41 -52
- package/dist/components/table/table-row.element.js.map +1 -1
- package/dist/components/table/table.d.ts +0 -1
- package/dist/components/table/table.element.js +31 -20
- package/dist/components/table/table.element.js.map +1 -1
- package/dist/components/table/table.js +5 -10
- package/dist/components/table/table.js.map +1 -1
- package/dist/components/tabs/UUITabEvent.js +6 -6
- package/dist/components/tabs/UUITabEvent.js.map +1 -1
- package/dist/components/tabs/UUITabGroupEvent.js +6 -6
- package/dist/components/tabs/UUITabGroupEvent.js.map +1 -1
- package/dist/components/tabs/tab-group.element.js +188 -251
- package/dist/components/tabs/tab-group.element.js.map +1 -1
- package/dist/components/tabs/tab.element.js +66 -56
- package/dist/components/tabs/tab.element.js.map +1 -1
- package/dist/components/tabs/tabs.d.ts +0 -1
- package/dist/components/tabs/tabs.js +7 -6
- package/dist/components/tabs/tabs.js.map +1 -1
- package/dist/components/tag/tag.d.ts +0 -1
- package/dist/components/tag/tag.element.js +32 -34
- package/dist/components/tag/tag.element.js.map +1 -1
- package/dist/components/tag/tag.js +5 -5
- package/dist/components/tag/tag.js.map +1 -1
- package/dist/components/textarea/UUITextareaEvent.js +18 -14
- package/dist/components/textarea/UUITextareaEvent.js.map +1 -1
- package/dist/components/textarea/textarea.d.ts +0 -1
- package/dist/components/textarea/textarea.element.d.ts +2 -0
- package/dist/components/textarea/textarea.element.js +153 -180
- package/dist/components/textarea/textarea.element.js.map +1 -1
- package/dist/components/textarea/textarea.js +6 -7
- package/dist/components/textarea/textarea.js.map +1 -1
- package/dist/components/toast-notification/UUIToastNotificationEvent.js +18 -10
- package/dist/components/toast-notification/UUIToastNotificationEvent.js.map +1 -1
- package/dist/components/toast-notification/toast-notification.d.ts +0 -1
- package/dist/components/toast-notification/toast-notification.element.js +155 -224
- package/dist/components/toast-notification/toast-notification.element.js.map +1 -1
- package/dist/components/toast-notification/toast-notification.js +6 -7
- package/dist/components/toast-notification/toast-notification.js.map +1 -1
- package/dist/components/toast-notification-container/toast-notification-container.d.ts +0 -1
- package/dist/components/toast-notification-container/toast-notification-container.element.js +98 -122
- package/dist/components/toast-notification-container/toast-notification-container.element.js.map +1 -1
- package/dist/components/toast-notification-container/toast-notification-container.js +6 -9
- package/dist/components/toast-notification-container/toast-notification-container.js.map +1 -1
- package/dist/components/toast-notification-layout/toast-notification-layout.d.ts +0 -1
- package/dist/components/toast-notification-layout/toast-notification-layout.element.js +33 -39
- package/dist/components/toast-notification-layout/toast-notification-layout.element.js.map +1 -1
- package/dist/components/toast-notification-layout/toast-notification-layout.js +6 -9
- package/dist/components/toast-notification-layout/toast-notification-layout.js.map +1 -1
- package/dist/components/toggle/toggle.d.ts +0 -1
- package/dist/components/toggle/toggle.element.js +43 -54
- package/dist/components/toggle/toggle.element.js.map +1 -1
- package/dist/components/toggle/toggle.js +5 -5
- package/dist/components/toggle/toggle.js.map +1 -1
- package/dist/components/visually-hidden/visually-hidden.d.ts +0 -1
- package/dist/components/visually-hidden/visually-hidden.element.js +17 -14
- package/dist/components/visually-hidden/visually-hidden.element.js.map +1 -1
- package/dist/components/visually-hidden/visually-hidden.js +5 -5
- package/dist/components/visually-hidden/visually-hidden.js.map +1 -1
- package/dist/index.js +115 -359
- package/dist/internal/animations/uui-blink.js +7 -7
- package/dist/internal/animations/uui-blink.js.map +1 -1
- package/dist/internal/animations/uui-pulse.js +7 -9
- package/dist/internal/animations/uui-pulse.js.map +1 -1
- package/dist/internal/animations/uui-shake.js +7 -9
- package/dist/internal/animations/uui-shake.js.map +1 -1
- package/dist/internal/events/UUIEvent.js +13 -9
- package/dist/internal/events/UUIEvent.js.map +1 -1
- package/dist/internal/events/UUIFormControlEvent.d.ts +2 -2
- package/dist/internal/events/UUIFormControlEvent.js +18 -14
- package/dist/internal/events/UUIFormControlEvent.js.map +1 -1
- package/dist/internal/events/UUISelectableEvent.js +19 -15
- package/dist/internal/events/UUISelectableEvent.js.map +1 -1
- package/dist/internal/mixins/ActiveMixin.js +24 -24
- package/dist/internal/mixins/ActiveMixin.js.map +1 -1
- package/dist/internal/mixins/FormControlMixin.d.ts +3 -3
- package/dist/internal/mixins/FormControlMixin.js +276 -339
- package/dist/internal/mixins/FormControlMixin.js.map +1 -1
- package/dist/internal/mixins/FormControlWithBasicsMixin.d.ts +19 -3
- package/dist/internal/mixins/FormControlWithBasicsMixin.js +54 -60
- package/dist/internal/mixins/FormControlWithBasicsMixin.js.map +1 -1
- package/dist/internal/mixins/LabelMixin.js +54 -57
- package/dist/internal/mixins/LabelMixin.js.map +1 -1
- package/dist/internal/mixins/PopoverTargetMixin.js +43 -47
- package/dist/internal/mixins/PopoverTargetMixin.js.map +1 -1
- package/dist/internal/mixins/SelectOnlyMixin.js +39 -33
- package/dist/internal/mixins/SelectOnlyMixin.js.map +1 -1
- package/dist/internal/mixins/SelectableMixin.js +109 -121
- package/dist/internal/mixins/SelectableMixin.js.map +1 -1
- package/dist/internal/registration/index.js +17 -20
- package/dist/internal/registration/index.js.map +1 -1
- package/dist/internal/types/InterfaceColor.js +11 -10
- package/dist/internal/types/InterfaceColor.js.map +1 -1
- package/dist/internal/types/InterfaceHeading.js +12 -11
- package/dist/internal/types/InterfaceHeading.js.map +1 -1
- package/dist/internal/types/InterfaceLook.js +11 -10
- package/dist/internal/types/InterfaceLook.js.map +1 -1
- package/dist/internal/utils/Timer.js +56 -61
- package/dist/internal/utils/Timer.js.map +1 -1
- package/dist/internal/utils/color.js +105 -74
- package/dist/internal/utils/color.js.map +1 -1
- package/dist/internal/utils/drag.js +27 -36
- package/dist/internal/utils/drag.js.map +1 -1
- package/dist/internal/utils/findAncestorByAttributeValue.js +22 -19
- package/dist/internal/utils/findAncestorByAttributeValue.js.map +1 -1
- package/dist/internal/utils/math.js +23 -13
- package/dist/internal/utils/math.js.map +1 -1
- package/dist/internal/utils/slotHasContent.js +6 -5
- package/dist/internal/utils/slotHasContent.js.map +1 -1
- package/dist/internal/version.js +10 -16
- package/dist/internal/version.js.map +1 -1
- package/dist/package.json.js +6 -5
- package/dist/package.json.js.map +1 -1
- package/dist/styles/uui-font.css +1 -1
- package/dist/styles/uui-text.css +1 -1
- package/dist/styles/uui-text.css.js +6 -5
- package/dist/styles/uui-text.css.js.map +1 -1
- package/dist/styles/uui-text.styles.js +7 -6
- package/dist/styles/uui-text.styles.js.map +1 -1
- package/dist/themes/dark.css +1 -1
- package/dist/themes/high-contrast.css +1 -1
- package/dist/themes/light.css +1 -1
- package/package.json +26 -25
- package/vscode.html-custom-data.json +36 -7
- package/dist/index.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"boolean-input.element.js","sources":["../../../src/components/boolean-input/boolean-input.element.ts"],"sourcesContent":["import {\n UUIFormControlWithBasicsMixin,\n LabelMixin,\n} from '../../internal/mixins/index.js';\nimport type { TemplateResult } from 'lit';\nimport { css, html, LitElement } from 'lit';\nimport { property, query } from 'lit/decorators.js';\nimport { ifDefined } from 'lit/directives/if-defined.js';\n\nimport { UUIBooleanInputEvent } from './UUIBooleanInputEvent.js';\n\ntype LabelPosition = 'left' | 'right' | 'top' | 'bottom';\n\n/**\n * Base class wrapping native input type=\"checkbox\". Extend for custom boolean input.\n * @extends LabelMixin\n * @fires UUIBooleanInputEvent#change on change\n * @abstract\n */\nexport abstract class UUIBooleanInputElement extends UUIFormControlWithBasicsMixin(\n LabelMixin('', LitElement),\n '',\n) {\n private _value = '';\n\n /** intentional overwrite of FormControlMixins value getter and setter method. */\n get value() {\n return this._value;\n }\n set value(newVal: string) {\n const oldValue = super.value;\n this._value = newVal;\n this._internals.setFormValue(\n this._checked && this.name !== '' ? this._value : null,\n );\n\n this.requestUpdate('value', oldValue);\n }\n\n /**\n * Specifies the label position of the checkbox or the toggle\n * @type {'left' | 'right' | 'top' | 'bottom'}\n * @attr label-position\n * @default right\n */\n @property({ type: String, attribute: 'label-position', reflect: true })\n labelPosition: LabelPosition = 'right';\n\n private _checked = false;\n\n /**\n * Reflects the state of the element.\n * True if checkbox or toggle is checked. Change this to switch the state programmatically.\n * @type {boolean}\n * @attr\n * @default false\n */\n @property({ type: Boolean }) // Do not 'reflect' as the attribute is used as fallback.\n get checked() {\n return this._checked;\n }\n set checked(newVal) {\n const oldValue = this._checked;\n this._checked = newVal;\n this._internals.setFormValue(\n this._checked && this.name !== '' ? this._value || 'on' : null,\n );\n this.requestUpdate('checked', oldValue);\n }\n\n /**\n * Indeterminate state for the input.\n * @type {boolean}\n * @attr\n * @default false\n */\n @property({ type: Boolean, reflect: true })\n indeterminate = false;\n\n /**\n * Disables the input.\n * @type {boolean}\n * @attr\n * @default false\n */\n @property({ type: Boolean, reflect: true })\n disabled = false;\n\n /**\n * Sets the input to readonly mode, meaning value cannot be changed but still able to read and select its content.\n * @type {boolean}\n * @attr\n * @default false\n */\n @property({ type: Boolean, reflect: true })\n readonly = false;\n\n @query('#input')\n protected readonly _input!: HTMLInputElement;\n\n private readonly inputRole: 'checkbox' | 'switch';\n\n constructor(inputRole: 'checkbox' | 'switch' = 'checkbox') {\n super();\n if (this._value === '') {\n this._value = 'on';\n }\n this.inputRole = inputRole;\n this.addEventListener('keydown', this.#onKeyDown);\n }\n\n protected getFormElement(): HTMLInputElement {\n return this._input;\n }\n\n #onKeyDown(e: KeyboardEvent): void {\n if (e.key == 'Enter') {\n this.submit();\n }\n }\n\n public hasValue(): boolean {\n return this.checked;\n }\n\n public formResetCallback() {\n super.formResetCallback();\n this.checked = this.hasAttribute('checked');\n }\n\n /**\n * This method enables <label for=\"...\"> to focus the input\n */\n async focus() {\n await this.updateComplete;\n this._input.focus();\n }\n async click() {\n await this.updateComplete;\n this._input.click();\n }\n\n private _onInputChange(e: Event) {\n e.stopPropagation();\n this.pristine = false;\n this.checked = this._input.checked;\n this.indeterminate = this._input.indeterminate;\n this.dispatchEvent(new UUIBooleanInputEvent(UUIBooleanInputEvent.CHANGE));\n }\n\n /**\n * When extending UUIBooleanInputBase class you need to implement this abstract method. It should return a template of your input.\n * @returns {TemplateResult}\n * @abstract\n * @method\n */\n protected abstract renderCheckbox(): TemplateResult;\n\n render() {\n return html`\n <label>\n <input\n id=\"input\"\n type=\"checkbox\"\n @change=\"${this._onInputChange}\"\n .disabled=${this.disabled || this.readonly}\n .checked=${this.checked}\n .indeterminate=${this.indeterminate}\n aria-checked=\"${this.checked ? 'true' : 'false'}\"\n aria-label=${ifDefined(\n this.getAttribute('aria-label') || this.label || undefined,\n )}\n aria-labelledby=${ifDefined(\n this.getAttribute('aria-labelledby') || undefined,\n )}\n role=\"${this.inputRole}\" />\n ${this.renderCheckbox()} ${this.renderLabel()}\n </label>\n `;\n }\n\n static override readonly styles = [\n css`\n :host {\n display: inline-block;\n }\n\n label {\n position: relative;\n cursor: pointer;\n user-select: none;\n display: flex;\n flex-wrap: nowrap;\n align-items: center;\n justify-items: center;\n gap: var(--uui-size-3);\n }\n\n :host([readonly]) label {\n cursor: default;\n }\n\n input {\n position: absolute;\n height: 0px;\n width: 0px;\n opacity: 0;\n }\n\n :host([label-position='left']) label {\n flex-direction: row-reverse;\n }\n\n :host([label-position='top']) label {\n gap: var(--uui-size-half-base-unit);\n flex-direction: column-reverse;\n }\n\n :host([label-position='bottom']) label {\n gap: var(--uui-size-half-base-unit);\n flex-direction: column;\n }\n\n :host([disabled]) label {\n cursor: not-allowed;\n opacity: 0.5;\n }\n\n .label {\n display: block;\n }\n\n span.label:empty {\n display: none;\n }\n `,\n ];\n}\n"],"
|
|
1
|
+
{"version":3,"file":"boolean-input.element.js","names":["#onKeyDown"],"sources":["../../../src/components/boolean-input/boolean-input.element.ts"],"sourcesContent":["import {\n UUIFormControlWithBasicsMixin,\n LabelMixin,\n} from '../../internal/mixins/index.js';\nimport type { TemplateResult } from 'lit';\nimport { css, html, LitElement } from 'lit';\nimport { property, query } from 'lit/decorators.js';\nimport { ifDefined } from 'lit/directives/if-defined.js';\n\nimport { UUIBooleanInputEvent } from './UUIBooleanInputEvent.js';\n\ntype LabelPosition = 'left' | 'right' | 'top' | 'bottom';\n\n/**\n * Base class wrapping native input type=\"checkbox\". Extend for custom boolean input.\n * @extends LabelMixin\n * @fires UUIBooleanInputEvent#change on change\n * @abstract\n */\nexport abstract class UUIBooleanInputElement extends UUIFormControlWithBasicsMixin(\n LabelMixin('', LitElement),\n '',\n) {\n private _value = '';\n\n /** intentional overwrite of FormControlMixins value getter and setter method. */\n get value() {\n return this._value;\n }\n set value(newVal: string) {\n const oldValue = super.value;\n this._value = newVal;\n this._internals.setFormValue(\n this._checked && this.name !== '' ? this._value : null,\n );\n\n this.requestUpdate('value', oldValue);\n }\n\n /**\n * Specifies the label position of the checkbox or the toggle\n * @type {'left' | 'right' | 'top' | 'bottom'}\n * @attr label-position\n * @default right\n */\n @property({ type: String, attribute: 'label-position', reflect: true })\n labelPosition: LabelPosition = 'right';\n\n private _checked = false;\n\n /**\n * Reflects the state of the element.\n * True if checkbox or toggle is checked. Change this to switch the state programmatically.\n * @type {boolean}\n * @attr\n * @default false\n */\n @property({ type: Boolean }) // Do not 'reflect' as the attribute is used as fallback.\n get checked() {\n return this._checked;\n }\n set checked(newVal) {\n const oldValue = this._checked;\n this._checked = newVal;\n this._internals.setFormValue(\n this._checked && this.name !== '' ? this._value || 'on' : null,\n );\n this.requestUpdate('checked', oldValue);\n }\n\n /**\n * Indeterminate state for the input.\n * @type {boolean}\n * @attr\n * @default false\n */\n @property({ type: Boolean, reflect: true })\n indeterminate = false;\n\n /**\n * Disables the input.\n * @type {boolean}\n * @attr\n * @default false\n */\n @property({ type: Boolean, reflect: true })\n disabled = false;\n\n /**\n * Sets the input to readonly mode, meaning value cannot be changed but still able to read and select its content.\n * @type {boolean}\n * @attr\n * @default false\n */\n @property({ type: Boolean, reflect: true })\n readonly = false;\n\n @query('#input')\n protected readonly _input!: HTMLInputElement;\n\n private readonly inputRole: 'checkbox' | 'switch';\n\n constructor(inputRole: 'checkbox' | 'switch' = 'checkbox') {\n super();\n if (this._value === '') {\n this._value = 'on';\n }\n this.inputRole = inputRole;\n this.addEventListener('keydown', this.#onKeyDown);\n }\n\n protected getFormElement(): HTMLInputElement {\n return this._input;\n }\n\n #onKeyDown(e: KeyboardEvent): void {\n if (e.key == 'Enter') {\n this.submit();\n }\n }\n\n public hasValue(): boolean {\n return this.checked;\n }\n\n public formResetCallback() {\n super.formResetCallback();\n this.checked = this.hasAttribute('checked');\n }\n\n /**\n * This method enables <label for=\"...\"> to focus the input\n */\n async focus() {\n await this.updateComplete;\n this._input.focus();\n }\n async click() {\n await this.updateComplete;\n this._input.click();\n }\n\n private _onInputChange(e: Event) {\n e.stopPropagation();\n this.pristine = false;\n this.checked = this._input.checked;\n this.indeterminate = this._input.indeterminate;\n this.dispatchEvent(new UUIBooleanInputEvent(UUIBooleanInputEvent.CHANGE));\n }\n\n /**\n * When extending UUIBooleanInputBase class you need to implement this abstract method. It should return a template of your input.\n * @returns {TemplateResult}\n * @abstract\n * @method\n */\n protected abstract renderCheckbox(): TemplateResult;\n\n render() {\n return html`\n <label>\n <input\n id=\"input\"\n type=\"checkbox\"\n @change=\"${this._onInputChange}\"\n .disabled=${this.disabled || this.readonly}\n .checked=${this.checked}\n .indeterminate=${this.indeterminate}\n aria-checked=\"${this.checked ? 'true' : 'false'}\"\n aria-label=${ifDefined(\n this.getAttribute('aria-label') || this.label || undefined,\n )}\n aria-labelledby=${ifDefined(\n this.getAttribute('aria-labelledby') || undefined,\n )}\n role=\"${this.inputRole}\" />\n ${this.renderCheckbox()} ${this.renderLabel()}\n </label>\n `;\n }\n\n static override readonly styles = [\n css`\n :host {\n display: inline-block;\n }\n\n label {\n position: relative;\n cursor: pointer;\n user-select: none;\n display: flex;\n flex-wrap: nowrap;\n align-items: center;\n justify-items: center;\n gap: var(--uui-size-3);\n }\n\n :host([readonly]) label {\n cursor: default;\n }\n\n input {\n position: absolute;\n height: 0px;\n width: 0px;\n opacity: 0;\n }\n\n :host([label-position='left']) label {\n flex-direction: row-reverse;\n }\n\n :host([label-position='top']) label {\n gap: var(--uui-size-half-base-unit);\n flex-direction: column-reverse;\n }\n\n :host([label-position='bottom']) label {\n gap: var(--uui-size-half-base-unit);\n flex-direction: column;\n }\n\n :host([disabled]) label {\n cursor: not-allowed;\n opacity: 0.5;\n }\n\n .label {\n display: block;\n }\n\n span.label:empty {\n display: none;\n }\n `,\n ];\n}\n"],"mappings":";;;;;;;;;;;;;;AAmBA,IAAsB,yBAAtB,cAAqD,8BACnD,WAAW,IAAI,UAAU,GACzB,EACF,CAAC,CAAC;;CAIA,IAAI,QAAQ;EACV,OAAO,KAAK;CACd;CACA,IAAI,MAAM,QAAgB;EACxB,MAAM,WAAW,MAAM;EACvB,KAAK,SAAS;EACd,KAAK,WAAW,aACd,KAAK,YAAY,KAAK,SAAS,KAAK,KAAK,SAAS,IACpD;EAEA,KAAK,cAAc,SAAS,QAAQ;CACtC;;;;;;;;CAoBA,IACI,UAAU;EACZ,OAAO,KAAK;CACd;CACA,IAAI,QAAQ,QAAQ;EAClB,MAAM,WAAW,KAAK;EACtB,KAAK,WAAW;EAChB,KAAK,WAAW,aACd,KAAK,YAAY,KAAK,SAAS,KAAK,KAAK,UAAU,OAAO,IAC5D;EACA,KAAK,cAAc,WAAW,QAAQ;CACxC;CAkCA,YAAY,YAAmC,YAAY;EACzD,MAAM;gBAhFS;uBAuBc;kBAEZ;uBA6BH;kBASL;kBASA;EAST,IAAI,KAAK,WAAW,IAClB,KAAK,SAAS;EAEhB,KAAK,YAAY;EACjB,KAAK,iBAAiB,WAAW,KAAKA,UAAU;CAClD;CAEA,iBAA6C;EAC3C,OAAO,KAAK;CACd;CAEA,WAAW,GAAwB;EACjC,IAAI,EAAE,OAAO,SACX,KAAK,OAAO;CAEhB;CAEA,WAA2B;EACzB,OAAO,KAAK;CACd;CAEA,oBAA2B;EACzB,MAAM,kBAAkB;EACxB,KAAK,UAAU,KAAK,aAAa,SAAS;CAC5C;;;;CAKA,MAAM,QAAQ;EACZ,MAAM,KAAK;EACX,KAAK,OAAO,MAAM;CACpB;CACA,MAAM,QAAQ;EACZ,MAAM,KAAK;EACX,KAAK,OAAO,MAAM;CACpB;CAEA,eAAuB,GAAU;EAC/B,EAAE,gBAAgB;EAClB,KAAK,WAAW;EAChB,KAAK,UAAU,KAAK,OAAO;EAC3B,KAAK,gBAAgB,KAAK,OAAO;EACjC,KAAK,cAAc,IAAI,qBAAqB,qBAAqB,MAAM,CAAC;CAC1E;CAUA,SAAS;EACP,OAAO,IAAI;;;;;qBAKM,KAAK,eAAe;sBACnB,KAAK,YAAY,KAAK,SAAS;qBAChC,KAAK,QAAQ;2BACP,KAAK,cAAc;0BACpB,KAAK,UAAU,SAAS,QAAQ;uBACnC,UACX,KAAK,aAAa,YAAY,KAAK,KAAK,SAAS,KAAA,CACnD,EAAE;4BACgB,UAChB,KAAK,aAAa,iBAAiB,KAAK,KAAA,CAC1C,EAAE;kBACM,KAAK,UAAU;UACvB,KAAK,eAAe,EAAE,GAAG,KAAK,YAAY,EAAE;;;CAGpD;;gBAEkC,CAChC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAsDL;;AACF;YAhMG,SAAS;CAAE,MAAM;CAAQ,WAAW;CAAkB,SAAS;AAAK,CAAC,CAAA,GAAA,uBAAA,WAAA,iBAAA,KAAA,CAAA;YAYrE,SAAS,EAAE,MAAM,QAAQ,CAAC,CAAA,GAAA,uBAAA,WAAA,WAAA,IAAA;YAmB1B,SAAS;CAAE,MAAM;CAAS,SAAS;AAAK,CAAC,CAAA,GAAA,uBAAA,WAAA,iBAAA,KAAA,CAAA;YASzC,SAAS;CAAE,MAAM;CAAS,SAAS;AAAK,CAAC,CAAA,GAAA,uBAAA,WAAA,YAAA,KAAA,CAAA;YASzC,SAAS;CAAE,MAAM;CAAS,SAAS;AAAK,CAAC,CAAA,GAAA,uBAAA,WAAA,YAAA,KAAA,CAAA;YAGzC,MAAM,QAAQ,CAAA,GAAA,uBAAA,WAAA,UAAA,KAAA,CAAA"}
|
|
@@ -1,52 +1,63 @@
|
|
|
1
|
+
import __decorate from "../../_virtual/_@oxc-project_runtime@0.138.0/helpers/esm/decorate.js";
|
|
2
|
+
import { UUITextStyles } from "../../styles/uui-text.styles.js";
|
|
1
3
|
import { LitElement, css } from "lit";
|
|
2
4
|
import { property, state } from "lit/decorators.js";
|
|
3
|
-
import {
|
|
4
|
-
|
|
5
|
-
var __defProp = Object.defineProperty;
|
|
6
|
-
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
7
|
-
var __decorateClass = (decorators, target, key, kind) => {
|
|
8
|
-
var result = kind > 1 ? void 0 : kind ? __getOwnPropDesc(target, key) : target;
|
|
9
|
-
for (var i = decorators.length - 1, decorator; i >= 0; i--)
|
|
10
|
-
if (decorator = decorators[i])
|
|
11
|
-
result = (kind ? decorator(target, key, result) : decorator(result)) || result;
|
|
12
|
-
if (kind && result) __defProp(target, key, result);
|
|
13
|
-
return result;
|
|
14
|
-
};
|
|
5
|
+
import { html as html$1, unsafeStatic } from "lit/static-html.js";
|
|
6
|
+
//#region src/components/box/box.element.ts
|
|
15
7
|
function slotHasContent(target) {
|
|
16
|
-
|
|
8
|
+
return target ? target.assignedNodes({ flatten: true }).length > 0 : false;
|
|
17
9
|
}
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
10
|
+
/**
|
|
11
|
+
* A layout box for grouping elements, as well its possible to append a header, with a headline or other elements to the box.
|
|
12
|
+
* @element uui-box
|
|
13
|
+
* @slot headline - headline area, this area is placed within the headline tag which is located inside the header. Use this to ensure the right headline styling.
|
|
14
|
+
* @slot header - header area, use this for things that are not the headline but are located in the header.
|
|
15
|
+
* @slot header-actions - right-side of the box header, use this to append some actions that are general for the topic of this box.
|
|
16
|
+
* @slot - area for the content of the box
|
|
17
|
+
* @cssprop --uui-box-header-padding - overwrite the header padding
|
|
18
|
+
* @cssprop --uui-box-default-padding - overwrite the box padding
|
|
19
|
+
* @cssprop --uui-box-border-radius - overwrite the box border-radius, default is var(--uui-border-radius-3)
|
|
20
|
+
* @cssprop --uui-box-border-color - overwrites the box border colorm default is var(--uui-color-divider-standalone)
|
|
21
|
+
*/
|
|
22
|
+
var UUIBoxElement = class extends LitElement {
|
|
23
|
+
constructor(..._args) {
|
|
24
|
+
super(..._args);
|
|
25
|
+
this.headline = null;
|
|
26
|
+
this._headlineVariantTag = "h5";
|
|
27
|
+
this._headlineSlotHasContent = false;
|
|
28
|
+
this._headlineSlotChanged = (e) => {
|
|
29
|
+
this._headlineSlotHasContent = slotHasContent(e.target);
|
|
30
|
+
};
|
|
31
|
+
this._headerSlotHasContent = false;
|
|
32
|
+
this._headerSlotChanged = (e) => {
|
|
33
|
+
this._headerSlotHasContent = slotHasContent(e.target);
|
|
34
|
+
};
|
|
35
|
+
this._headerActionsSlotHasContent = false;
|
|
36
|
+
this._headerActionsSlotChanged = (e) => {
|
|
37
|
+
this._headerActionsSlotHasContent = slotHasContent(e.target);
|
|
38
|
+
};
|
|
39
|
+
}
|
|
40
|
+
/**
|
|
41
|
+
* Changes the headline variant for accessibility for this box.
|
|
42
|
+
* Notice this does not change the visual representation of the headline. (Umbraco recommends displaying a h5 size headline in the UUI-BOX)
|
|
43
|
+
* @type {"h1" | "h2" | "h3" | "h4" | "h5" | "h6"}
|
|
44
|
+
* @attr
|
|
45
|
+
* @default "h5"
|
|
46
|
+
*/
|
|
47
|
+
set headlineVariant(value) {
|
|
48
|
+
this._headlineVariantTag = value;
|
|
49
|
+
}
|
|
50
|
+
get headlineVariant() {
|
|
51
|
+
return this._headlineVariantTag;
|
|
52
|
+
}
|
|
53
|
+
/**
|
|
54
|
+
* Renders a header with the `header`-slot, `header-actions`-slot, headline and `headline`-slot within
|
|
55
|
+
* @returns {TemplateResult}
|
|
56
|
+
* @protected
|
|
57
|
+
* @method
|
|
58
|
+
*/
|
|
59
|
+
renderHeader() {
|
|
60
|
+
return html$1`<div
|
|
50
61
|
id="header"
|
|
51
62
|
class="uui-text"
|
|
52
63
|
style=${this._headerSlotHasContent || this._headlineSlotHasContent || this._headerActionsSlotHasContent || this.headline !== null ? "" : "display: none"}>
|
|
@@ -60,17 +71,15 @@ const _UUIBoxElement = class _UUIBoxElement extends LitElement {
|
|
|
60
71
|
<slot name="header" @slotchange=${this._headerSlotChanged}></slot>
|
|
61
72
|
<slot name="header-actions" @slotchange=${this._headerActionsSlotChanged}></slot>
|
|
62
73
|
</div>`;
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
74
|
+
}
|
|
75
|
+
render() {
|
|
76
|
+
return html$1`
|
|
66
77
|
${this.renderHeader()}
|
|
67
78
|
<slot></slot>
|
|
68
79
|
`;
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
UUITextStyles,
|
|
73
|
-
css`
|
|
80
|
+
}
|
|
81
|
+
static {
|
|
82
|
+
this.styles = [UUITextStyles, css`
|
|
74
83
|
:host {
|
|
75
84
|
display: block;
|
|
76
85
|
border-width: var(--uui-box-border-width, 1px);
|
|
@@ -103,28 +112,16 @@ _UUIBoxElement.styles = [
|
|
|
103
112
|
display: block;
|
|
104
113
|
margin-left: auto;
|
|
105
114
|
}
|
|
106
|
-
`
|
|
107
|
-
|
|
108
|
-
let UUIBoxElement = _UUIBoxElement;
|
|
109
|
-
__decorateClass([
|
|
110
|
-
property({ type: String })
|
|
111
|
-
], UUIBoxElement.prototype, "headline", 2);
|
|
112
|
-
__decorateClass([
|
|
113
|
-
property({ attribute: "headline-variant" })
|
|
114
|
-
], UUIBoxElement.prototype, "headlineVariant", 1);
|
|
115
|
-
__decorateClass([
|
|
116
|
-
state()
|
|
117
|
-
], UUIBoxElement.prototype, "_headlineVariantTag", 2);
|
|
118
|
-
__decorateClass([
|
|
119
|
-
state()
|
|
120
|
-
], UUIBoxElement.prototype, "_headlineSlotHasContent", 2);
|
|
121
|
-
__decorateClass([
|
|
122
|
-
state()
|
|
123
|
-
], UUIBoxElement.prototype, "_headerSlotHasContent", 2);
|
|
124
|
-
__decorateClass([
|
|
125
|
-
state()
|
|
126
|
-
], UUIBoxElement.prototype, "_headerActionsSlotHasContent", 2);
|
|
127
|
-
export {
|
|
128
|
-
UUIBoxElement
|
|
115
|
+
`];
|
|
116
|
+
}
|
|
129
117
|
};
|
|
130
|
-
|
|
118
|
+
__decorate([property({ type: String })], UUIBoxElement.prototype, "headline", void 0);
|
|
119
|
+
__decorate([property({ attribute: "headline-variant" })], UUIBoxElement.prototype, "headlineVariant", null);
|
|
120
|
+
__decorate([state()], UUIBoxElement.prototype, "_headlineVariantTag", void 0);
|
|
121
|
+
__decorate([state()], UUIBoxElement.prototype, "_headlineSlotHasContent", void 0);
|
|
122
|
+
__decorate([state()], UUIBoxElement.prototype, "_headerSlotHasContent", void 0);
|
|
123
|
+
__decorate([state()], UUIBoxElement.prototype, "_headerActionsSlotHasContent", void 0);
|
|
124
|
+
//#endregion
|
|
125
|
+
export { UUIBoxElement };
|
|
126
|
+
|
|
127
|
+
//# sourceMappingURL=box.element.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"box.element.js","sources":["../../../src/components/box/box.element.ts"],"sourcesContent":["import { LitElement, css } from 'lit';\nimport { property, state } from 'lit/decorators.js';\nimport { UUITextStyles } from '../../styles/index.js';\nimport type { UUIInterfaceHeading } from '../../internal/index.js';\nimport { html, unsafeStatic } from 'lit/static-html.js';\n\nfunction slotHasContent(target: EventTarget | null): boolean {\n return target\n ? (target as HTMLSlotElement).assignedNodes({ flatten: true }).length > 0\n : false;\n}\n\n/**\n * A layout box for grouping elements, as well its possible to append a header, with a headline or other elements to the box.\n * @element uui-box\n * @slot headline - headline area, this area is placed within the headline tag which is located inside the header. Use this to ensure the right headline styling.\n * @slot header - header area, use this for things that are not the headline but are located in the header.\n * @slot header-actions - right-side of the box header, use this to append some actions that are general for the topic of this box.\n * @slot - area for the content of the box\n * @cssprop --uui-box-header-padding - overwrite the header padding\n * @cssprop --uui-box-default-padding - overwrite the box padding\n * @cssprop --uui-box-border-radius - overwrite the box border-radius, default is var(--uui-border-radius-3)\n * @cssprop --uui-box-border-color - overwrites the box border colorm default is var(--uui-color-divider-standalone)\n */\nexport class UUIBoxElement extends LitElement {\n /**\n * Headline for this box, can also be set via the `headline` slot.\n * @type string\n * @attr\n * @default null\n */\n @property({ type: String })\n headline: string | null = null;\n\n /**\n * Changes the headline variant for accessibility for this box.\n * Notice this does not change the visual representation of the headline. (Umbraco recommends displaying a h5 size headline in the UUI-BOX)\n * @type {\"h1\" | \"h2\" | \"h3\" | \"h4\" | \"h5\" | \"h6\"}\n * @attr\n * @default \"h5\"\n */\n @property({ attribute: 'headline-variant' })\n set headlineVariant(value: UUIInterfaceHeading) {\n this._headlineVariantTag = value;\n }\n get headlineVariant() {\n return this._headlineVariantTag;\n }\n\n @state()\n private _headlineVariantTag: UUIInterfaceHeading = 'h5';\n\n @state()\n private _headlineSlotHasContent = false;\n private readonly _headlineSlotChanged = (e: Event) => {\n this._headlineSlotHasContent = slotHasContent(e.target);\n };\n\n @state()\n private _headerSlotHasContent = false;\n private readonly _headerSlotChanged = (e: Event) => {\n this._headerSlotHasContent = slotHasContent(e.target);\n };\n\n @state()\n private _headerActionsSlotHasContent = false;\n private readonly _headerActionsSlotChanged = (e: Event) => {\n this._headerActionsSlotHasContent = slotHasContent(e.target);\n };\n\n /**\n * Renders a header with the `header`-slot, `header-actions`-slot, headline and `headline`-slot within\n * @returns {TemplateResult}\n * @protected\n * @method\n */\n protected renderHeader() {\n /* eslint-disable lit/no-invalid-html, lit/binding-positions */\n return html`<div\n id=\"header\"\n class=\"uui-text\"\n style=${\n this._headerSlotHasContent ||\n this._headlineSlotHasContent ||\n this._headerActionsSlotHasContent ||\n this.headline !== null\n ? ''\n : 'display: none'\n }>\n <${unsafeStatic(this._headlineVariantTag)}\n id=\"headline\"\n class=\"uui-h5\"\n style=${\n this._headlineSlotHasContent || this.headline !== null\n ? ''\n : 'display: none'\n }>\n ${this.headline}\n <slot name=\"headline\" @slotchange=${this._headlineSlotChanged}></slot>\n </${unsafeStatic(this._headlineVariantTag)}>\n <slot name=\"header\" @slotchange=${this._headerSlotChanged}></slot>\n <slot name=\"header-actions\" @slotchange=${\n this._headerActionsSlotChanged\n }></slot>\n </div>`;\n /* eslint-enable lit/no-invalid-html, lit/binding-positions */\n }\n\n render() {\n return html`\n ${this.renderHeader()}\n <slot></slot>\n `;\n }\n\n static override readonly styles = [\n UUITextStyles,\n css`\n :host {\n display: block;\n border-width: var(--uui-box-border-width, 1px);\n border-style: solid;\n border-color: var(\n --uui-box-border-color,\n var(--uui-color-divider-standalone)\n );\n border-radius: var(--uui-box-border-radius, var(--uui-border-radius-3));\n background-color: var(--uui-color-surface);\n }\n\n #header {\n display: flex;\n align-items: center;\n column-gap: var(--uui-size-space-5);\n border-bottom: 1px solid var(--uui-color-divider-standalone);\n padding: var(\n --uui-box-header-padding,\n var(--uui-size-space-4) var(--uui-size-space-5)\n );\n }\n\n slot:not([name]) {\n display: block;\n padding: var(--uui-box-default-padding, var(--uui-size-space-5));\n }\n\n slot[name='header-actions'] {\n display: block;\n margin-left: auto;\n }\n `,\n ];\n}\n"],"
|
|
1
|
+
{"version":3,"file":"box.element.js","names":[],"sources":["../../../src/components/box/box.element.ts"],"sourcesContent":["import { LitElement, css } from 'lit';\nimport { property, state } from 'lit/decorators.js';\nimport { UUITextStyles } from '../../styles/index.js';\nimport type { UUIInterfaceHeading } from '../../internal/index.js';\nimport { html, unsafeStatic } from 'lit/static-html.js';\n\nfunction slotHasContent(target: EventTarget | null): boolean {\n return target\n ? (target as HTMLSlotElement).assignedNodes({ flatten: true }).length > 0\n : false;\n}\n\n/**\n * A layout box for grouping elements, as well its possible to append a header, with a headline or other elements to the box.\n * @element uui-box\n * @slot headline - headline area, this area is placed within the headline tag which is located inside the header. Use this to ensure the right headline styling.\n * @slot header - header area, use this for things that are not the headline but are located in the header.\n * @slot header-actions - right-side of the box header, use this to append some actions that are general for the topic of this box.\n * @slot - area for the content of the box\n * @cssprop --uui-box-header-padding - overwrite the header padding\n * @cssprop --uui-box-default-padding - overwrite the box padding\n * @cssprop --uui-box-border-radius - overwrite the box border-radius, default is var(--uui-border-radius-3)\n * @cssprop --uui-box-border-color - overwrites the box border colorm default is var(--uui-color-divider-standalone)\n */\nexport class UUIBoxElement extends LitElement {\n /**\n * Headline for this box, can also be set via the `headline` slot.\n * @type string\n * @attr\n * @default null\n */\n @property({ type: String })\n headline: string | null = null;\n\n /**\n * Changes the headline variant for accessibility for this box.\n * Notice this does not change the visual representation of the headline. (Umbraco recommends displaying a h5 size headline in the UUI-BOX)\n * @type {\"h1\" | \"h2\" | \"h3\" | \"h4\" | \"h5\" | \"h6\"}\n * @attr\n * @default \"h5\"\n */\n @property({ attribute: 'headline-variant' })\n set headlineVariant(value: UUIInterfaceHeading) {\n this._headlineVariantTag = value;\n }\n get headlineVariant() {\n return this._headlineVariantTag;\n }\n\n @state()\n private _headlineVariantTag: UUIInterfaceHeading = 'h5';\n\n @state()\n private _headlineSlotHasContent = false;\n private readonly _headlineSlotChanged = (e: Event) => {\n this._headlineSlotHasContent = slotHasContent(e.target);\n };\n\n @state()\n private _headerSlotHasContent = false;\n private readonly _headerSlotChanged = (e: Event) => {\n this._headerSlotHasContent = slotHasContent(e.target);\n };\n\n @state()\n private _headerActionsSlotHasContent = false;\n private readonly _headerActionsSlotChanged = (e: Event) => {\n this._headerActionsSlotHasContent = slotHasContent(e.target);\n };\n\n /**\n * Renders a header with the `header`-slot, `header-actions`-slot, headline and `headline`-slot within\n * @returns {TemplateResult}\n * @protected\n * @method\n */\n protected renderHeader() {\n /* eslint-disable lit/no-invalid-html, lit/binding-positions */\n return html`<div\n id=\"header\"\n class=\"uui-text\"\n style=${\n this._headerSlotHasContent ||\n this._headlineSlotHasContent ||\n this._headerActionsSlotHasContent ||\n this.headline !== null\n ? ''\n : 'display: none'\n }>\n <${unsafeStatic(this._headlineVariantTag)}\n id=\"headline\"\n class=\"uui-h5\"\n style=${\n this._headlineSlotHasContent || this.headline !== null\n ? ''\n : 'display: none'\n }>\n ${this.headline}\n <slot name=\"headline\" @slotchange=${this._headlineSlotChanged}></slot>\n </${unsafeStatic(this._headlineVariantTag)}>\n <slot name=\"header\" @slotchange=${this._headerSlotChanged}></slot>\n <slot name=\"header-actions\" @slotchange=${\n this._headerActionsSlotChanged\n }></slot>\n </div>`;\n /* eslint-enable lit/no-invalid-html, lit/binding-positions */\n }\n\n render() {\n return html`\n ${this.renderHeader()}\n <slot></slot>\n `;\n }\n\n static override readonly styles = [\n UUITextStyles,\n css`\n :host {\n display: block;\n border-width: var(--uui-box-border-width, 1px);\n border-style: solid;\n border-color: var(\n --uui-box-border-color,\n var(--uui-color-divider-standalone)\n );\n border-radius: var(--uui-box-border-radius, var(--uui-border-radius-3));\n background-color: var(--uui-color-surface);\n }\n\n #header {\n display: flex;\n align-items: center;\n column-gap: var(--uui-size-space-5);\n border-bottom: 1px solid var(--uui-color-divider-standalone);\n padding: var(\n --uui-box-header-padding,\n var(--uui-size-space-4) var(--uui-size-space-5)\n );\n }\n\n slot:not([name]) {\n display: block;\n padding: var(--uui-box-default-padding, var(--uui-size-space-5));\n }\n\n slot[name='header-actions'] {\n display: block;\n margin-left: auto;\n }\n `,\n ];\n}\n"],"mappings":";;;;;;AAMA,SAAS,eAAe,QAAqC;CAC3D,OAAO,SACF,OAA2B,cAAc,EAAE,SAAS,KAAK,CAAC,CAAC,CAAC,SAAS,IACtE;AACN;;;;;;;;;;;;;AAcA,IAAa,gBAAb,cAAmC,WAAW;;;kBAQlB;6BAkByB;iCAGjB;+BACO,MAAa;GACpD,KAAK,0BAA0B,eAAe,EAAE,MAAM;EACxD;+BAGgC;6BACO,MAAa;GAClD,KAAK,wBAAwB,eAAe,EAAE,MAAM;EACtD;sCAGuC;oCACO,MAAa;GACzD,KAAK,+BAA+B,eAAe,EAAE,MAAM;EAC7D;;;;;;;;;CA3BA,IACI,gBAAgB,OAA4B;EAC9C,KAAK,sBAAsB;CAC7B;CACA,IAAI,kBAAkB;EACpB,OAAO,KAAK;CACd;;;;;;;CA6BA,eAAyB;EAEvB,OAAO,MAAI;;;cAIP,KAAK,yBACL,KAAK,2BACL,KAAK,gCACL,KAAK,aAAa,OACd,KACA,gBACL;SACE,aAAa,KAAK,mBAAmB,EAAE;;;gBAItC,KAAK,2BAA2B,KAAK,aAAa,OAC9C,KACA,gBACL;UACC,KAAK,SAAS;4CACoB,KAAK,qBAAqB;UAC5D,aAAa,KAAK,mBAAmB,EAAE;wCACT,KAAK,mBAAmB;gDAExD,KAAK,0BACN;;CAGL;CAEA,SAAS;EACP,OAAO,MAAI;QACP,KAAK,aAAa,EAAE;;;CAG1B;;gBAEkC,CAChC,eACA,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAkCL;;AACF;YAzHG,SAAS,EAAE,MAAM,OAAO,CAAC,CAAA,GAAA,cAAA,WAAA,YAAA,KAAA,CAAA;YAUzB,SAAS,EAAE,WAAW,mBAAmB,CAAC,CAAA,GAAA,cAAA,WAAA,mBAAA,IAAA;YAQ1C,MAAM,CAAA,GAAA,cAAA,WAAA,uBAAA,KAAA,CAAA;YAGN,MAAM,CAAA,GAAA,cAAA,WAAA,2BAAA,KAAA,CAAA;YAMN,MAAM,CAAA,GAAA,cAAA,WAAA,yBAAA,KAAA,CAAA;YAMN,MAAM,CAAA,GAAA,cAAA,WAAA,gCAAA,KAAA,CAAA"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { defineElement } from "../../internal/registration/index.js";
|
|
2
2
|
import { UUIBoxElement } from "./box.element.js";
|
|
3
|
+
//#region src/components/box/box.ts
|
|
3
4
|
defineElement("uui-box", UUIBoxElement);
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
//# sourceMappingURL=box.js.map
|
|
5
|
+
//#endregion
|
|
6
|
+
export { UUIBoxElement };
|
|
7
|
+
|
|
8
|
+
//# sourceMappingURL=box.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"box.js","sources":["../../../src/components/box/box.ts"],"sourcesContent":["import { defineElement } from '../../internal/registration/index.js';\nimport { UUIBoxElement } from './box.element.js';\n\ndefineElement('uui-box', UUIBoxElement);\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'uui-box': UUIBoxElement;\n }\n}\n\nexport * from './box.element.js';\
|
|
1
|
+
{"version":3,"file":"box.js","names":[],"sources":["../../../src/components/box/box.ts"],"sourcesContent":["import { defineElement } from '../../internal/registration/index.js';\nimport { UUIBoxElement } from './box.element.js';\n\ndefineElement('uui-box', UUIBoxElement);\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'uui-box': UUIBoxElement;\n }\n}\n\nexport * from './box.element.js';\n"],"mappings":";;;AAGA,cAAc,WAAW,aAAa"}
|
|
@@ -1,46 +1,41 @@
|
|
|
1
|
-
import
|
|
1
|
+
import __decorate from "../../_virtual/_@oxc-project_runtime@0.138.0/helpers/esm/decorate.js";
|
|
2
|
+
import { LitElement, css, html } from "lit";
|
|
2
3
|
import { property } from "lit/decorators.js";
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
}
|
|
24
|
-
}
|
|
25
|
-
renderLinkAndSeparator() {
|
|
26
|
-
const item = this.href ? html`<a id="link" href=${this.href}><slot></slot></a>` : html`<span
|
|
4
|
+
//#region src/components/breadcrumbs/breadcrumb-item.element.ts
|
|
5
|
+
/**
|
|
6
|
+
* A breadcrumb-item to be used with the breadcrumbs component.
|
|
7
|
+
* @element uui-breadcrumb-item
|
|
8
|
+
* @slot - This slot displays elements inside the breadcrumb
|
|
9
|
+
* @csspart separator - change the content of the after element of this part to change the separator
|
|
10
|
+
*/
|
|
11
|
+
var UUIBreadcrumbItemElement = class extends LitElement {
|
|
12
|
+
constructor(..._args) {
|
|
13
|
+
super(..._args);
|
|
14
|
+
this.lastItem = false;
|
|
15
|
+
}
|
|
16
|
+
connectedCallback() {
|
|
17
|
+
super.connectedCallback();
|
|
18
|
+
}
|
|
19
|
+
_onKeydown(e) {
|
|
20
|
+
if (e.key === "Enter") e.currentTarget.click();
|
|
21
|
+
}
|
|
22
|
+
renderLinkAndSeparator() {
|
|
23
|
+
return html`${this.href ? html`<a id="link" href=${this.href}><slot></slot></a>` : html`<span
|
|
27
24
|
id="link"
|
|
28
25
|
tabindex="0"
|
|
29
26
|
role="link"
|
|
30
27
|
@keydown=${this._onKeydown}
|
|
31
28
|
><slot></slot
|
|
32
|
-
></span>`;
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
_UUIBreadcrumbItemElement.styles = [
|
|
43
|
-
css`
|
|
29
|
+
></span>`}<span part="separator"></span>`;
|
|
30
|
+
}
|
|
31
|
+
renderCurrent() {
|
|
32
|
+
return html`<span id="last-item"><slot></slot></span>`;
|
|
33
|
+
}
|
|
34
|
+
render() {
|
|
35
|
+
return html`${this.lastItem ? this.renderCurrent() : this.renderLinkAndSeparator()}`;
|
|
36
|
+
}
|
|
37
|
+
static {
|
|
38
|
+
this.styles = [css`
|
|
44
39
|
:host {
|
|
45
40
|
font-size: var(--uui-type-small-size);
|
|
46
41
|
color: currentColor;
|
|
@@ -65,7 +60,8 @@ _UUIBreadcrumbItemElement.styles = [
|
|
|
65
60
|
a:focus-visible,
|
|
66
61
|
span#link:focus-visible {
|
|
67
62
|
border-radius: var(--uui-border-radius);
|
|
68
|
-
outline: 2px
|
|
63
|
+
outline: calc(2px * var(--uui-show-focus-outline, 1)) solid
|
|
64
|
+
var(--uui-color-focus);
|
|
69
65
|
}
|
|
70
66
|
|
|
71
67
|
[part='separator']::after {
|
|
@@ -85,16 +81,15 @@ _UUIBreadcrumbItemElement.styles = [
|
|
|
85
81
|
overflow: hidden;
|
|
86
82
|
text-overflow: ellipsis;
|
|
87
83
|
}
|
|
88
|
-
`
|
|
89
|
-
|
|
90
|
-
let UUIBreadcrumbItemElement = _UUIBreadcrumbItemElement;
|
|
91
|
-
__decorateClass([
|
|
92
|
-
property()
|
|
93
|
-
], UUIBreadcrumbItemElement.prototype, "href");
|
|
94
|
-
__decorateClass([
|
|
95
|
-
property({ type: Boolean, attribute: "last-item" })
|
|
96
|
-
], UUIBreadcrumbItemElement.prototype, "lastItem");
|
|
97
|
-
export {
|
|
98
|
-
UUIBreadcrumbItemElement
|
|
84
|
+
`];
|
|
85
|
+
}
|
|
99
86
|
};
|
|
100
|
-
|
|
87
|
+
__decorate([property()], UUIBreadcrumbItemElement.prototype, "href", void 0);
|
|
88
|
+
__decorate([property({
|
|
89
|
+
type: Boolean,
|
|
90
|
+
attribute: "last-item"
|
|
91
|
+
})], UUIBreadcrumbItemElement.prototype, "lastItem", void 0);
|
|
92
|
+
//#endregion
|
|
93
|
+
export { UUIBreadcrumbItemElement };
|
|
94
|
+
|
|
95
|
+
//# sourceMappingURL=breadcrumb-item.element.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"breadcrumb-item.element.js","sources":["../../../src/components/breadcrumbs/breadcrumb-item.element.ts"],"sourcesContent":["import { css, html, LitElement } from 'lit';\nimport { property } from 'lit/decorators.js';\n\n/**\n * A breadcrumb-item to be used with the breadcrumbs component.\n * @element uui-breadcrumb-item\n * @slot - This slot displays elements inside the breadcrumb\n * @csspart separator - change the content of the after element of this part to change the separator\n */\nexport class UUIBreadcrumbItemElement extends LitElement {\n connectedCallback() {\n super.connectedCallback();\n }\n\n /**\n * Specifies the link href.\n * @type {String}\n * @default undefined\n */\n @property()\n href?: string;\n\n /**\n * Specifies if the element is the last item in the uui-breadcrumbs. Last item will not render as a link\n * @type {Boolean}\n * @attr last-item\n * @default 'false'\n */\n @property({ type: Boolean, attribute: 'last-item' })\n lastItem = false;\n\n private _onKeydown(e: KeyboardEvent) {\n if (e.key === 'Enter') {\n (e.currentTarget as HTMLElement).click();\n }\n }\n\n renderLinkAndSeparator() {\n const item = this.href\n ? html`<a id=\"link\" href=${this.href}><slot></slot></a>`\n : html`<span\n id=\"link\"\n tabindex=\"0\"\n role=\"link\"\n @keydown=${this._onKeydown}\n ><slot></slot\n ></span>`;\n\n return html`${item}<span part=\"separator\"></span>`;\n }\n\n renderCurrent() {\n return html`<span id=\"last-item\"><slot></slot></span>`;\n }\n\n render() {\n return html`${this.lastItem\n ? this.renderCurrent()\n : this.renderLinkAndSeparator()}`;\n }\n\n static override readonly styles = [\n css`\n :host {\n font-size: var(--uui-type-small-size);\n color: currentColor;\n }\n\n a,\n a:visited,\n span#link {\n color: currentColor;\n cursor: pointer;\n text-decoration: underline;\n }\n a:hover,\n span#link:hover {\n color: var(--uui-color-interactive-emphasis);\n }\n a:focus,\n span#link:focus {\n color: var(--uui-color-focus);\n }\n\n a:focus-visible,\n span#link:focus-visible {\n border-radius: var(--uui-border-radius);\n outline: 2px
|
|
1
|
+
{"version":3,"file":"breadcrumb-item.element.js","names":[],"sources":["../../../src/components/breadcrumbs/breadcrumb-item.element.ts"],"sourcesContent":["import { css, html, LitElement } from 'lit';\nimport { property } from 'lit/decorators.js';\n\n/**\n * A breadcrumb-item to be used with the breadcrumbs component.\n * @element uui-breadcrumb-item\n * @slot - This slot displays elements inside the breadcrumb\n * @csspart separator - change the content of the after element of this part to change the separator\n */\nexport class UUIBreadcrumbItemElement extends LitElement {\n connectedCallback() {\n super.connectedCallback();\n }\n\n /**\n * Specifies the link href.\n * @type {String}\n * @default undefined\n */\n @property()\n href?: string;\n\n /**\n * Specifies if the element is the last item in the uui-breadcrumbs. Last item will not render as a link\n * @type {Boolean}\n * @attr last-item\n * @default 'false'\n */\n @property({ type: Boolean, attribute: 'last-item' })\n lastItem = false;\n\n private _onKeydown(e: KeyboardEvent) {\n if (e.key === 'Enter') {\n (e.currentTarget as HTMLElement).click();\n }\n }\n\n renderLinkAndSeparator() {\n const item = this.href\n ? html`<a id=\"link\" href=${this.href}><slot></slot></a>`\n : html`<span\n id=\"link\"\n tabindex=\"0\"\n role=\"link\"\n @keydown=${this._onKeydown}\n ><slot></slot\n ></span>`;\n\n return html`${item}<span part=\"separator\"></span>`;\n }\n\n renderCurrent() {\n return html`<span id=\"last-item\"><slot></slot></span>`;\n }\n\n render() {\n return html`${this.lastItem\n ? this.renderCurrent()\n : this.renderLinkAndSeparator()}`;\n }\n\n static override readonly styles = [\n css`\n :host {\n font-size: var(--uui-type-small-size);\n color: currentColor;\n }\n\n a,\n a:visited,\n span#link {\n color: currentColor;\n cursor: pointer;\n text-decoration: underline;\n }\n a:hover,\n span#link:hover {\n color: var(--uui-color-interactive-emphasis);\n }\n a:focus,\n span#link:focus {\n color: var(--uui-color-focus);\n }\n\n a:focus-visible,\n span#link:focus-visible {\n border-radius: var(--uui-border-radius);\n outline: calc(2px * var(--uui-show-focus-outline, 1)) solid\n var(--uui-color-focus);\n }\n\n [part='separator']::after {\n content: '/';\n speak: never;\n position: relative;\n top: 1px;\n margin: -3px 1px 0;\n color: var(--uui-color-border);\n }\n\n #link,\n #last-item {\n padding: 0 4px;\n max-width: 150px;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n }\n `,\n ];\n}\n"],"mappings":";;;;;;;;;;AASA,IAAa,2BAAb,cAA8C,WAAW;;;kBAoB5C;;CAnBX,oBAAoB;EAClB,MAAM,kBAAkB;CAC1B;CAmBA,WAAmB,GAAkB;EACnC,IAAI,EAAE,QAAQ,SACZ,EAAG,cAA8B,MAAM;CAE3C;CAEA,yBAAyB;EAWvB,OAAO,IAAI,GAVE,KAAK,OACd,IAAI,qBAAqB,KAAK,KAAK,sBACnC,IAAI;;;;qBAIS,KAAK,WAAW;;kBAId;CACrB;CAEA,gBAAgB;EACd,OAAO,IAAI;CACb;CAEA,SAAS;EACP,OAAO,IAAI,GAAG,KAAK,WACf,KAAK,cAAc,IACnB,KAAK,uBAAuB;CAClC;;gBAEkC,CAChC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KA+CL;;AACF;YA3FG,SAAS,CAAA,GAAA,yBAAA,WAAA,QAAA,KAAA,CAAA;YAST,SAAS;CAAE,MAAM;CAAS,WAAW;AAAY,CAAC,CAAA,GAAA,yBAAA,WAAA,YAAA,KAAA,CAAA"}
|
|
@@ -1,36 +1,32 @@
|
|
|
1
|
-
import
|
|
2
|
-
import { queryAssignedElements } from "lit/decorators.js";
|
|
1
|
+
import __decorate from "../../_virtual/_@oxc-project_runtime@0.138.0/helpers/esm/decorate.js";
|
|
3
2
|
import { UUIBreadcrumbItemElement } from "./breadcrumb-item.element.js";
|
|
4
3
|
import "../responsive-container/responsive-container.js";
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
}
|
|
32
|
-
render() {
|
|
33
|
-
return html`<uui-responsive-container
|
|
4
|
+
import { LitElement, css, html } from "lit";
|
|
5
|
+
import { queryAssignedElements } from "lit/decorators.js";
|
|
6
|
+
//#region src/components/breadcrumbs/breadcrumbs.element.ts
|
|
7
|
+
/**
|
|
8
|
+
* A breadcrumbs component to be used in combination with the uui-breadcrumb-item.
|
|
9
|
+
* @element uui-breadcrumbs
|
|
10
|
+
* @slot - Slot to display nested breadcrumb items. It supports `<uui-breadcrumb-item>` elements or elements containing the `role="listitem"` attribute
|
|
11
|
+
*/
|
|
12
|
+
var UUIBreadcrumbsElement = class extends LitElement {
|
|
13
|
+
elementIsBreadcrumbItem(el) {
|
|
14
|
+
return el instanceof UUIBreadcrumbItemElement;
|
|
15
|
+
}
|
|
16
|
+
connectedCallback() {
|
|
17
|
+
super.connectedCallback();
|
|
18
|
+
this.setAttribute("aria-label", "breadcrumb");
|
|
19
|
+
this.setAttribute("role", "navigation");
|
|
20
|
+
}
|
|
21
|
+
handleSlotChange() {
|
|
22
|
+
if (this.slotNodes.length > 0) {
|
|
23
|
+
const lastItem = this.slotNodes.at(-1);
|
|
24
|
+
lastItem.setAttribute("aria-current", "page");
|
|
25
|
+
if (this.elementIsBreadcrumbItem(lastItem)) lastItem.lastItem = true;
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
render() {
|
|
29
|
+
return html`<uui-responsive-container
|
|
34
30
|
id="breadcrumbs-list"
|
|
35
31
|
collapse="start">
|
|
36
32
|
<span slot="trigger-content">
|
|
@@ -38,10 +34,9 @@ const _UUIBreadcrumbsElement = class _UUIBreadcrumbsElement extends LitElement {
|
|
|
38
34
|
</span>
|
|
39
35
|
<slot @slotchange=${this.handleSlotChange}></slot>
|
|
40
36
|
</uui-responsive-container>`;
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
css`
|
|
37
|
+
}
|
|
38
|
+
static {
|
|
39
|
+
this.styles = [css`
|
|
45
40
|
:host {
|
|
46
41
|
display: flex;
|
|
47
42
|
}
|
|
@@ -72,16 +67,14 @@ _UUIBreadcrumbsElement.styles = [
|
|
|
72
67
|
color: var(--uui-color-border); /* Matches breadcrumb separator */
|
|
73
68
|
margin-left: var(--uui-size-2);
|
|
74
69
|
}
|
|
75
|
-
`
|
|
76
|
-
|
|
77
|
-
let UUIBreadcrumbsElement = _UUIBreadcrumbsElement;
|
|
78
|
-
__decorateClass([
|
|
79
|
-
queryAssignedElements({
|
|
80
|
-
flatten: true,
|
|
81
|
-
selector: "uui-breadcrumb-item, [uui-breadcrumb-item], [role=listitem]"
|
|
82
|
-
})
|
|
83
|
-
], UUIBreadcrumbsElement.prototype, "slotNodes");
|
|
84
|
-
export {
|
|
85
|
-
UUIBreadcrumbsElement
|
|
70
|
+
`];
|
|
71
|
+
}
|
|
86
72
|
};
|
|
87
|
-
|
|
73
|
+
__decorate([queryAssignedElements({
|
|
74
|
+
flatten: true,
|
|
75
|
+
selector: "uui-breadcrumb-item, [uui-breadcrumb-item], [role=listitem]"
|
|
76
|
+
})], UUIBreadcrumbsElement.prototype, "slotNodes", void 0);
|
|
77
|
+
//#endregion
|
|
78
|
+
export { UUIBreadcrumbsElement };
|
|
79
|
+
|
|
80
|
+
//# sourceMappingURL=breadcrumbs.element.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"breadcrumbs.element.js","sources":["../../../src/components/breadcrumbs/breadcrumbs.element.ts"],"sourcesContent":["import { css, html, LitElement } from 'lit';\nimport { queryAssignedElements } from 'lit/decorators.js';\n\nimport { UUIBreadcrumbItemElement } from './breadcrumb-item.element.js';\nimport '../responsive-container/responsive-container.js';\n\n/**\n * A breadcrumbs component to be used in combination with the uui-breadcrumb-item.\n * @element uui-breadcrumbs\n * @slot - Slot to display nested breadcrumb items. It supports `<uui-breadcrumb-item>` elements or elements containing the `role=\"listitem\"` attribute\n */\nexport class UUIBreadcrumbsElement extends LitElement {\n @queryAssignedElements({\n flatten: true,\n selector: 'uui-breadcrumb-item, [uui-breadcrumb-item], [role=listitem]',\n })\n private readonly slotNodes!: HTMLElement[];\n\n private elementIsBreadcrumbItem(el: unknown): el is UUIBreadcrumbItemElement {\n return el instanceof UUIBreadcrumbItemElement;\n }\n\n connectedCallback() {\n super.connectedCallback();\n this.setAttribute('aria-label', 'breadcrumb');\n this.setAttribute('role', 'navigation');\n }\n\n handleSlotChange() {\n if (this.slotNodes.length > 0) {\n const lastItem = this.slotNodes.at(-1)!;\n lastItem.setAttribute('aria-current', 'page');\n\n if (this.elementIsBreadcrumbItem(lastItem)) {\n lastItem.lastItem = true;\n }\n }\n }\n\n render() {\n return html`<uui-responsive-container\n id=\"breadcrumbs-list\"\n collapse=\"start\">\n <span slot=\"trigger-content\">\n <span class=\"ellipsis\">…</span> <span class=\"separator\">/</span>\n </span>\n <slot @slotchange=${this.handleSlotChange}></slot>\n </uui-responsive-container>`;\n }\n\n static override readonly styles = [\n css`\n :host {\n display: flex;\n }\n\n #breadcrumbs-list {\n display: flex;\n list-style-type: decimal;\n margin-block-start: 0em;\n margin-block-end: 0em;\n margin-inline-start: 0px;\n margin-inline-end: 0px;\n padding-inline-start: 0px;\n }\n uui-responsive-container {\n --uui-responsive-container-gap: 0;\n }\n\n /* Style the trigger content to match breadcrumb items */\n [slot='trigger-content'] {\n font-size: var(--uui-type-small-size);\n }\n\n [slot='trigger-content'] .ellipsis {\n color: currentColor; /* Black/default text color */\n }\n\n [slot='trigger-content'] .separator {\n color: var(--uui-color-border); /* Matches breadcrumb separator */\n margin-left: var(--uui-size-2);\n }\n `,\n ];\n}\n"],"
|
|
1
|
+
{"version":3,"file":"breadcrumbs.element.js","names":[],"sources":["../../../src/components/breadcrumbs/breadcrumbs.element.ts"],"sourcesContent":["import { css, html, LitElement } from 'lit';\nimport { queryAssignedElements } from 'lit/decorators.js';\n\nimport { UUIBreadcrumbItemElement } from './breadcrumb-item.element.js';\nimport '../responsive-container/responsive-container.js';\n\n/**\n * A breadcrumbs component to be used in combination with the uui-breadcrumb-item.\n * @element uui-breadcrumbs\n * @slot - Slot to display nested breadcrumb items. It supports `<uui-breadcrumb-item>` elements or elements containing the `role=\"listitem\"` attribute\n */\nexport class UUIBreadcrumbsElement extends LitElement {\n @queryAssignedElements({\n flatten: true,\n selector: 'uui-breadcrumb-item, [uui-breadcrumb-item], [role=listitem]',\n })\n private readonly slotNodes!: HTMLElement[];\n\n private elementIsBreadcrumbItem(el: unknown): el is UUIBreadcrumbItemElement {\n return el instanceof UUIBreadcrumbItemElement;\n }\n\n connectedCallback() {\n super.connectedCallback();\n this.setAttribute('aria-label', 'breadcrumb');\n this.setAttribute('role', 'navigation');\n }\n\n handleSlotChange() {\n if (this.slotNodes.length > 0) {\n const lastItem = this.slotNodes.at(-1)!;\n lastItem.setAttribute('aria-current', 'page');\n\n if (this.elementIsBreadcrumbItem(lastItem)) {\n lastItem.lastItem = true;\n }\n }\n }\n\n render() {\n return html`<uui-responsive-container\n id=\"breadcrumbs-list\"\n collapse=\"start\">\n <span slot=\"trigger-content\">\n <span class=\"ellipsis\">…</span> <span class=\"separator\">/</span>\n </span>\n <slot @slotchange=${this.handleSlotChange}></slot>\n </uui-responsive-container>`;\n }\n\n static override readonly styles = [\n css`\n :host {\n display: flex;\n }\n\n #breadcrumbs-list {\n display: flex;\n list-style-type: decimal;\n margin-block-start: 0em;\n margin-block-end: 0em;\n margin-inline-start: 0px;\n margin-inline-end: 0px;\n padding-inline-start: 0px;\n }\n uui-responsive-container {\n --uui-responsive-container-gap: 0;\n }\n\n /* Style the trigger content to match breadcrumb items */\n [slot='trigger-content'] {\n font-size: var(--uui-type-small-size);\n }\n\n [slot='trigger-content'] .ellipsis {\n color: currentColor; /* Black/default text color */\n }\n\n [slot='trigger-content'] .separator {\n color: var(--uui-color-border); /* Matches breadcrumb separator */\n margin-left: var(--uui-size-2);\n }\n `,\n ];\n}\n"],"mappings":";;;;;;;;;;;AAWA,IAAa,wBAAb,cAA2C,WAAW;CAOpD,wBAAgC,IAA6C;EAC3E,OAAO,cAAc;CACvB;CAEA,oBAAoB;EAClB,MAAM,kBAAkB;EACxB,KAAK,aAAa,cAAc,YAAY;EAC5C,KAAK,aAAa,QAAQ,YAAY;CACxC;CAEA,mBAAmB;EACjB,IAAI,KAAK,UAAU,SAAS,GAAG;GAC7B,MAAM,WAAW,KAAK,UAAU,GAAG,EAAE;GACrC,SAAS,aAAa,gBAAgB,MAAM;GAE5C,IAAI,KAAK,wBAAwB,QAAQ,GACvC,SAAS,WAAW;EAExB;CACF;CAEA,SAAS;EACP,OAAO,IAAI;;;;;;0BAMW,KAAK,iBAAiB;;CAE9C;;gBAEkC,CAChC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAgCL;;AACF;YAxEG,sBAAsB;CACrB,SAAS;CACT,UAAU;AACZ,CAAC,CAAA,GAAA,sBAAA,WAAA,aAAA,KAAA,CAAA"}
|
|
@@ -1,11 +1,10 @@
|
|
|
1
1
|
import { defineElement } from "../../internal/registration/index.js";
|
|
2
2
|
import { UUIBreadcrumbItemElement } from "./breadcrumb-item.element.js";
|
|
3
3
|
import { UUIBreadcrumbsElement } from "./breadcrumbs.element.js";
|
|
4
|
+
//#region src/components/breadcrumbs/breadcrumbs.ts
|
|
4
5
|
defineElement("uui-breadcrumb-item", UUIBreadcrumbItemElement);
|
|
5
6
|
defineElement("uui-breadcrumbs", UUIBreadcrumbsElement);
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
};
|
|
11
|
-
//# sourceMappingURL=breadcrumbs.js.map
|
|
7
|
+
//#endregion
|
|
8
|
+
export { UUIBreadcrumbItemElement, UUIBreadcrumbsElement };
|
|
9
|
+
|
|
10
|
+
//# sourceMappingURL=breadcrumbs.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"breadcrumbs.js","sources":["../../../src/components/breadcrumbs/breadcrumbs.ts"],"sourcesContent":["import { defineElement } from '../../internal/registration/index.js';\nimport { UUIBreadcrumbItemElement } from './breadcrumb-item.element.js';\nimport { UUIBreadcrumbsElement } from './breadcrumbs.element.js';\n\ndefineElement('uui-breadcrumb-item', UUIBreadcrumbItemElement);\ndefineElement('uui-breadcrumbs', UUIBreadcrumbsElement);\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'uui-breadcrumb-item': UUIBreadcrumbItemElement;\n 'uui-breadcrumbs': UUIBreadcrumbsElement;\n }\n}\n\nexport * from './breadcrumb-item.element.js';\nexport * from './breadcrumbs.element.js';\
|
|
1
|
+
{"version":3,"file":"breadcrumbs.js","names":[],"sources":["../../../src/components/breadcrumbs/breadcrumbs.ts"],"sourcesContent":["import { defineElement } from '../../internal/registration/index.js';\nimport { UUIBreadcrumbItemElement } from './breadcrumb-item.element.js';\nimport { UUIBreadcrumbsElement } from './breadcrumbs.element.js';\n\ndefineElement('uui-breadcrumb-item', UUIBreadcrumbItemElement);\ndefineElement('uui-breadcrumbs', UUIBreadcrumbsElement);\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'uui-breadcrumb-item': UUIBreadcrumbItemElement;\n 'uui-breadcrumbs': UUIBreadcrumbsElement;\n }\n}\n\nexport * from './breadcrumb-item.element.js';\nexport * from './breadcrumbs.element.js';\n"],"mappings":";;;;AAIA,cAAc,uBAAuB,wBAAwB;AAC7D,cAAc,mBAAmB,qBAAqB"}
|