@lumx/vue 4.17.1-alpha.2 → 4.17.1-alpha.3
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/README.md +31 -0
- package/_internal/_virtual/_rolldown/runtime.js +34 -0
- package/_internal/components/alert-dialog/AlertDialog.d.ts +45 -0
- package/_internal/components/alert-dialog/AlertDialog.js +79 -0
- package/_internal/components/alert-dialog/index.d.ts +1 -0
- package/_internal/components/avatar/Avatar.d.ts +30 -0
- package/_internal/components/avatar/Avatar.js +50 -0
- package/_internal/components/avatar/index.d.ts +2 -0
- package/_internal/components/badge/Badge.d.ts +16 -0
- package/_internal/components/badge/Badge.js +25 -0
- package/_internal/components/badge/BadgeWrapper.d.ts +10 -0
- package/_internal/components/badge/BadgeWrapper.js +22 -0
- package/_internal/components/badge/index.d.ts +2 -0
- package/_internal/components/button/Button.d.ts +18 -0
- package/_internal/components/button/Button.js +66 -0
- package/_internal/components/button/ButtonGroup.d.ts +16 -0
- package/_internal/components/button/ButtonGroup.js +25 -0
- package/_internal/components/button/IconButton.d.ts +33 -0
- package/_internal/components/button/IconButton.js +53 -0
- package/_internal/components/button/index.d.ts +4 -0
- package/_internal/components/checkbox/Checkbox.d.ts +20 -0
- package/_internal/components/checkbox/Checkbox.js +55 -0
- package/_internal/components/checkbox/index.d.ts +1 -0
- package/_internal/components/chip/Chip.d.ts +26 -0
- package/_internal/components/chip/Chip.js +74 -0
- package/_internal/components/chip/ChipGroup.d.ts +10 -0
- package/_internal/components/chip/ChipGroup.js +19 -0
- package/_internal/components/chip/SelectionChipGroup.d.ts +48 -0
- package/_internal/components/chip/SelectionChipGroup.js +91 -0
- package/_internal/components/chip/index.d.ts +3 -0
- package/_internal/components/combobox/ComboboxButton.d.ts +15 -0
- package/_internal/components/combobox/ComboboxButton.js +63 -0
- package/_internal/components/combobox/ComboboxInput.d.ts +20 -0
- package/_internal/components/combobox/ComboboxInput.js +97 -0
- package/_internal/components/combobox/ComboboxList.d.ts +7 -0
- package/_internal/components/combobox/ComboboxList.js +54 -0
- package/_internal/components/combobox/ComboboxOption.d.ts +11 -0
- package/_internal/components/combobox/ComboboxOption.js +79 -0
- package/_internal/components/combobox/ComboboxOptionAction.d.ts +9 -0
- package/_internal/components/combobox/ComboboxOptionAction.js +40 -0
- package/_internal/components/combobox/ComboboxOptionMoreInfo.d.ts +9 -0
- package/_internal/components/combobox/ComboboxOptionMoreInfo.js +78 -0
- package/_internal/components/combobox/ComboboxOptionSkeleton.d.ts +7 -0
- package/_internal/components/combobox/ComboboxOptionSkeleton.js +37 -0
- package/_internal/components/combobox/ComboboxPopover.d.ts +13 -0
- package/_internal/components/combobox/ComboboxPopover.js +46 -0
- package/_internal/components/combobox/ComboboxProvider.d.ts +7 -0
- package/_internal/components/combobox/ComboboxProvider.js +46 -0
- package/_internal/components/combobox/ComboboxSection.d.ts +7 -0
- package/_internal/components/combobox/ComboboxSection.js +51 -0
- package/_internal/components/combobox/ComboboxState.d.ts +7 -0
- package/_internal/components/combobox/ComboboxState.js +61 -0
- package/_internal/components/combobox/context/ComboboxContext.js +21 -0
- package/_internal/components/combobox/context/ComboboxListContext.js +19 -0
- package/_internal/components/combobox/context/ComboboxOptionContext.js +22 -0
- package/_internal/components/combobox/context/useComboboxEvent.js +20 -0
- package/_internal/components/combobox/context/useComboboxOpen.js +17 -0
- package/_internal/components/combobox/index.d.ts +115 -0
- package/_internal/components/combobox/index.js +44 -0
- package/_internal/components/combobox/useWrappedRenderOptionSlot.js +46 -0
- package/_internal/components/combobox/useWrappedRenderSectionTitleSlot.js +18 -0
- package/_internal/components/dialog/Dialog.d.ts +42 -0
- package/_internal/components/dialog/Dialog.js +109 -0
- package/_internal/components/dialog/index.d.ts +2 -0
- package/_internal/components/divider/Divider.d.ts +16 -0
- package/_internal/components/divider/Divider.js +29 -0
- package/_internal/components/divider/index.d.ts +1 -0
- package/_internal/components/drag-handle/DragHandle.d.ts +16 -0
- package/_internal/components/drag-handle/DragHandle.js +29 -0
- package/_internal/components/drag-handle/index.d.ts +1 -0
- package/_internal/components/expansion-panel/ExpansionPanel.d.ts +34 -0
- package/_internal/components/expansion-panel/ExpansionPanel.js +86 -0
- package/_internal/components/expansion-panel/index.d.ts +1 -0
- package/_internal/components/flag/Flag.d.ts +16 -0
- package/_internal/components/flag/Flag.js +30 -0
- package/_internal/components/flag/index.d.ts +2 -0
- package/_internal/components/flex-box/FlexBox.d.ts +24 -0
- package/_internal/components/flex-box/FlexBox.js +30 -0
- package/_internal/components/flex-box/index.d.ts +2 -0
- package/_internal/components/generic-block/GenericBlock.d.ts +59 -0
- package/_internal/components/generic-block/GenericBlock.js +55 -0
- package/_internal/components/generic-block/index.d.ts +2 -0
- package/_internal/components/grid-column/GridColumn.d.ts +9 -0
- package/_internal/components/grid-column/GridColumn.js +19 -0
- package/_internal/components/grid-column/index.d.ts +2 -0
- package/_internal/components/heading/Heading.d.ts +16 -0
- package/_internal/components/heading/Heading.js +36 -0
- package/_internal/components/heading/HeadingLevelProvider.d.ts +14 -0
- package/_internal/components/heading/HeadingLevelProvider.js +29 -0
- package/_internal/components/heading/context.js +4 -0
- package/_internal/components/heading/index.d.ts +4 -0
- package/_internal/components/heading/useHeadingLevel.d.ts +11 -0
- package/_internal/components/heading/useHeadingLevel.js +14 -0
- package/_internal/components/icon/Icon.d.ts +16 -0
- package/_internal/components/icon/Icon.js +27 -0
- package/_internal/components/icon/index.d.ts +2 -0
- package/_internal/components/image-block/ImageBlock.d.ts +19 -0
- package/_internal/components/image-block/ImageBlock.js +38 -0
- package/_internal/components/image-block/ImageCaption.js +30 -0
- package/_internal/components/image-block/index.d.ts +2 -0
- package/_internal/components/inline-list/InlineList.d.ts +16 -0
- package/_internal/components/inline-list/InlineList.js +25 -0
- package/_internal/components/inline-list/index.d.ts +1 -0
- package/_internal/components/input-helper/InputHelper.d.ts +16 -0
- package/_internal/components/input-helper/InputHelper.js +28 -0
- package/_internal/components/input-helper/index.d.ts +1 -0
- package/_internal/components/input-label/InputLabel.d.ts +16 -0
- package/_internal/components/input-label/InputLabel.js +28 -0
- package/_internal/components/input-label/index.d.ts +1 -0
- package/_internal/components/lightbox/Lightbox.d.ts +22 -0
- package/_internal/components/lightbox/Lightbox.js +63 -0
- package/_internal/components/lightbox/index.d.ts +1 -0
- package/_internal/components/link/Link.d.ts +20 -0
- package/_internal/components/link/Link.js +43 -0
- package/_internal/components/link/index.d.ts +1 -0
- package/_internal/components/link-preview/LinkPreview.d.ts +20 -0
- package/_internal/components/link-preview/LinkPreview.js +36 -0
- package/_internal/components/link-preview/index.d.ts +1 -0
- package/_internal/components/list/List.d.ts +16 -0
- package/_internal/components/list/List.js +25 -0
- package/_internal/components/list/ListDivider.d.ts +16 -0
- package/_internal/components/list/ListDivider.js +22 -0
- package/_internal/components/list/ListItem.d.ts +27 -0
- package/_internal/components/list/ListItem.js +47 -0
- package/_internal/components/list/ListItemAction.d.ts +27 -0
- package/_internal/components/list/ListItemAction.js +41 -0
- package/_internal/components/list/ListSection.d.ts +16 -0
- package/_internal/components/list/ListSection.js +30 -0
- package/_internal/components/list/index.d.ts +6 -0
- package/_internal/components/menu-button/MenuButton.d.ts +48 -0
- package/_internal/components/menu-button/MenuButton.js +59 -0
- package/_internal/components/menu-button/MenuItem.d.ts +40 -0
- package/_internal/components/menu-button/MenuItem.js +86 -0
- package/_internal/components/menu-button/MenuList.js +43 -0
- package/_internal/components/menu-button/MenuPopover.d.ts +8 -0
- package/_internal/components/menu-button/MenuPopover.js +36 -0
- package/_internal/components/menu-button/MenuProvider.js +49 -0
- package/_internal/components/menu-button/MenuTrigger.js +52 -0
- package/_internal/components/menu-button/context.js +15 -0
- package/_internal/components/menu-button/index.d.ts +3 -0
- package/_internal/components/menu-button/useMenuEvent.js +17 -0
- package/_internal/components/menu-button/useMenuOpen.js +11 -0
- package/_internal/components/message/Message.d.ts +22 -0
- package/_internal/components/message/Message.js +31 -0
- package/_internal/components/message/index.d.ts +1 -0
- package/_internal/components/mosaic/Mosaic.d.ts +28 -0
- package/_internal/components/mosaic/Mosaic.js +36 -0
- package/_internal/components/mosaic/index.d.ts +1 -0
- package/_internal/components/popover/Popover.d.ts +35 -0
- package/_internal/components/popover/Popover.js +76 -0
- package/_internal/components/popover/index.d.ts +3 -0
- package/_internal/components/popover/usePopoverStyle.js +55 -0
- package/_internal/components/popover-dialog/PopoverDialog.d.ts +28 -0
- package/_internal/components/popover-dialog/PopoverDialog.js +34 -0
- package/_internal/components/popover-dialog/index.d.ts +1 -0
- package/_internal/components/progress/ProgressCircular.d.ts +10 -0
- package/_internal/components/progress/ProgressCircular.js +28 -0
- package/_internal/components/progress/ProgressLinear.d.ts +10 -0
- package/_internal/components/progress/ProgressLinear.js +23 -0
- package/_internal/components/progress/index.d.ts +3 -0
- package/_internal/components/radio-button/RadioButton.d.ts +20 -0
- package/_internal/components/radio-button/RadioButton.js +50 -0
- package/_internal/components/radio-button/RadioGroup.d.ts +15 -0
- package/_internal/components/radio-button/RadioGroup.js +25 -0
- package/_internal/components/radio-button/index.d.ts +2 -0
- package/_internal/components/select-button/SelectButton.d.ts +172 -0
- package/_internal/components/select-button/SelectButton.js +164 -0
- package/_internal/components/select-button/index.d.ts +21 -0
- package/_internal/components/select-button/index.js +7 -0
- package/_internal/components/select-text-field/SelectTextField.d.ts +122 -0
- package/_internal/components/select-text-field/SelectTextField.js +195 -0
- package/_internal/components/select-text-field/index.d.ts +51 -0
- package/_internal/components/select-text-field/index.js +19 -0
- package/_internal/components/skeleton/SkeletonCircle.d.ts +15 -0
- package/_internal/components/skeleton/SkeletonCircle.js +29 -0
- package/_internal/components/skeleton/SkeletonRectangle.d.ts +15 -0
- package/_internal/components/skeleton/SkeletonRectangle.js +29 -0
- package/_internal/components/skeleton/SkeletonTypography.d.ts +15 -0
- package/_internal/components/skeleton/SkeletonTypography.js +29 -0
- package/_internal/components/skeleton/index.d.ts +4 -0
- package/_internal/components/switch/Switch.d.ts +20 -0
- package/_internal/components/switch/Switch.js +50 -0
- package/_internal/components/switch/index.d.ts +1 -0
- package/_internal/components/table/Table.d.ts +10 -0
- package/_internal/components/table/Table.js +24 -0
- package/_internal/components/table/TableBody.d.ts +10 -0
- package/_internal/components/table/TableBody.js +21 -0
- package/_internal/components/table/TableCell.d.ts +17 -0
- package/_internal/components/table/TableCell.js +28 -0
- package/_internal/components/table/TableHeader.d.ts +10 -0
- package/_internal/components/table/TableHeader.js +21 -0
- package/_internal/components/table/TableRow.d.ts +14 -0
- package/_internal/components/table/TableRow.js +28 -0
- package/_internal/components/table/index.d.ts +6 -0
- package/_internal/components/tabs/Tab.d.ts +16 -0
- package/_internal/components/tabs/Tab.js +52 -0
- package/_internal/components/tabs/TabList.d.ts +22 -0
- package/_internal/components/tabs/TabList.js +42 -0
- package/_internal/components/tabs/TabPanel.d.ts +18 -0
- package/_internal/components/tabs/TabPanel.js +36 -0
- package/_internal/components/tabs/TabProvider.d.ts +25 -0
- package/_internal/components/tabs/TabProvider.js +60 -0
- package/_internal/components/tabs/index.d.ts +5 -0
- package/_internal/components/tabs/state.js +53 -0
- package/_internal/components/text/Text.d.ts +16 -0
- package/_internal/components/text/Text.js +50 -0
- package/_internal/components/text/index.d.ts +1 -0
- package/_internal/components/text-field/RawInputText.d.ts +27 -0
- package/_internal/components/text-field/RawInputText.js +55 -0
- package/_internal/components/text-field/RawInputTextarea.d.ts +27 -0
- package/_internal/components/text-field/RawInputTextarea.js +59 -0
- package/_internal/components/text-field/TextField.d.ts +52 -0
- package/_internal/components/text-field/TextField.js +123 -0
- package/_internal/components/text-field/index.d.ts +3 -0
- package/_internal/components/text-field/useFitRowsToContent.js +25 -0
- package/_internal/components/thumbnail/Thumbnail.d.ts +29 -0
- package/_internal/components/thumbnail/Thumbnail.js +89 -0
- package/_internal/components/thumbnail/index.d.ts +2 -0
- package/_internal/components/thumbnail/useFocusPointStyle.js +50 -0
- package/_internal/components/thumbnail/useImageLoad.js +38 -0
- package/_internal/components/time-picker-field/TimePickerField.d.ts +37 -0
- package/_internal/components/time-picker-field/TimePickerField.js +104 -0
- package/_internal/components/time-picker-field/index.d.ts +2 -0
- package/_internal/components/toolbar/Toolbar.d.ts +10 -0
- package/_internal/components/toolbar/Toolbar.js +23 -0
- package/_internal/components/toolbar/index.d.ts +2 -0
- package/_internal/components/tooltip/Tooltip.d.ts +18 -0
- package/_internal/components/tooltip/Tooltip.js +77 -0
- package/_internal/components/tooltip/context.js +20 -0
- package/_internal/components/tooltip/index.d.ts +2 -0
- package/_internal/components/tooltip/useInjectTooltipRef.js +46 -0
- package/_internal/components/tooltip/useTooltipOpen.js +39 -0
- package/_internal/components/uploader/Uploader.d.ts +30 -0
- package/_internal/components/uploader/Uploader.js +77 -0
- package/_internal/components/uploader/index.d.ts +2 -0
- package/_internal/components/user-block/UserBlock.d.ts +31 -0
- package/_internal/components/user-block/UserBlock.js +120 -0
- package/_internal/components/user-block/index.d.ts +2 -0
- package/_internal/composables/useAttrFallback.js +39 -0
- package/_internal/composables/useCallbackOnEscape.js +42 -0
- package/_internal/composables/useClassName.js +21 -0
- package/_internal/composables/useDisableBodyScroll.js +17 -0
- package/_internal/composables/useDisableStateProps.js +36 -0
- package/_internal/composables/useDisabledState.js +8 -0
- package/_internal/composables/useFocus.js +23 -0
- package/_internal/composables/useFocusTrap.js +38 -0
- package/_internal/composables/useHasEventListener.js +13 -0
- package/_internal/composables/useId.js +14 -0
- package/_internal/composables/useOverflowTooltipLabel.js +28 -0
- package/_internal/composables/useRestoreFocusOnClose.js +37 -0
- package/_internal/composables/useRovingTabIndexContainer.js +26 -0
- package/_internal/composables/useSlot.js +15 -0
- package/_internal/composables/useTransitionVisibility.js +40 -0
- package/_internal/composables/useWatchDisposable.js +24 -0
- package/_internal/node_modules/@floating-ui/core/dist/floating-ui.core.js +536 -0
- package/_internal/node_modules/@floating-ui/dom/dist/floating-ui.dom.js +528 -0
- package/_internal/node_modules/@floating-ui/utils/dist/floating-ui.utils.dom.js +144 -0
- package/_internal/node_modules/@floating-ui/utils/dist/floating-ui.utils.js +135 -0
- package/_internal/node_modules/@floating-ui/vue/dist/floating-ui.vue.js +145 -0
- package/_internal/node_modules/@vue/reactivity/dist/reactivity.d.ts +104 -0
- package/_internal/node_modules/@vue/runtime-core/dist/runtime-core.d.ts +1179 -0
- package/_internal/node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts +90 -0
- package/_internal/node_modules/@vue/shared/dist/shared.d.ts +7 -0
- package/_internal/node_modules/@vueuse/core/dist/index.js +289 -0
- package/_internal/node_modules/@vueuse/shared/dist/index.js +49 -0
- package/_internal/node_modules/classnames/index.js +45 -0
- package/_internal/node_modules/lodash/_DataView.js +10 -0
- package/_internal/node_modules/lodash/_Hash.js +34 -0
- package/_internal/node_modules/lodash/_ListCache.js +34 -0
- package/_internal/node_modules/lodash/_Map.js +10 -0
- package/_internal/node_modules/lodash/_MapCache.js +34 -0
- package/_internal/node_modules/lodash/_Promise.js +10 -0
- package/_internal/node_modules/lodash/_Set.js +10 -0
- package/_internal/node_modules/lodash/_Symbol.js +9 -0
- package/_internal/node_modules/lodash/_WeakMap.js +10 -0
- package/_internal/node_modules/lodash/_apply.js +27 -0
- package/_internal/node_modules/lodash/_arrayMap.js +22 -0
- package/_internal/node_modules/lodash/_arrayPush.js +21 -0
- package/_internal/node_modules/lodash/_assignValue.js +27 -0
- package/_internal/node_modules/lodash/_assocIndexOf.js +23 -0
- package/_internal/node_modules/lodash/_baseAssignValue.js +28 -0
- package/_internal/node_modules/lodash/_baseFindIndex.js +24 -0
- package/_internal/node_modules/lodash/_baseFlatten.js +34 -0
- package/_internal/node_modules/lodash/_baseGet.js +25 -0
- package/_internal/node_modules/lodash/_baseGetTag.js +27 -0
- package/_internal/node_modules/lodash/_baseHasIn.js +19 -0
- package/_internal/node_modules/lodash/_baseIndexOf.js +24 -0
- package/_internal/node_modules/lodash/_baseIndexOfWith.js +23 -0
- package/_internal/node_modules/lodash/_baseIsArguments.js +23 -0
- package/_internal/node_modules/lodash/_baseIsNaN.js +18 -0
- package/_internal/node_modules/lodash/_baseIsNative.js +40 -0
- package/_internal/node_modules/lodash/_baseIsTypedArray.js +29 -0
- package/_internal/node_modules/lodash/_baseKeys.js +26 -0
- package/_internal/node_modules/lodash/_basePick.js +25 -0
- package/_internal/node_modules/lodash/_basePickBy.js +29 -0
- package/_internal/node_modules/lodash/_basePullAll.js +40 -0
- package/_internal/node_modules/lodash/_baseRest.js +23 -0
- package/_internal/node_modules/lodash/_baseSet.js +41 -0
- package/_internal/node_modules/lodash/_baseSetToString.js +19 -0
- package/_internal/node_modules/lodash/_baseSlice.js +28 -0
- package/_internal/node_modules/lodash/_baseToString.js +32 -0
- package/_internal/node_modules/lodash/_baseTrim.js +22 -0
- package/_internal/node_modules/lodash/_baseUnary.js +20 -0
- package/_internal/node_modules/lodash/_castPath.js +25 -0
- package/_internal/node_modules/lodash/_copyArray.js +22 -0
- package/_internal/node_modules/lodash/_coreJsData.js +9 -0
- package/_internal/node_modules/lodash/_defineProperty.js +16 -0
- package/_internal/node_modules/lodash/_flatRest.js +22 -0
- package/_internal/node_modules/lodash/_freeGlobal.js +8 -0
- package/_internal/node_modules/lodash/_getMapData.js +22 -0
- package/_internal/node_modules/lodash/_getNative.js +23 -0
- package/_internal/node_modules/lodash/_getRawTag.js +40 -0
- package/_internal/node_modules/lodash/_getTag.js +40 -0
- package/_internal/node_modules/lodash/_getValue.js +19 -0
- package/_internal/node_modules/lodash/_hasPath.js +36 -0
- package/_internal/node_modules/lodash/_hashClear.js +21 -0
- package/_internal/node_modules/lodash/_hashDelete.js +23 -0
- package/_internal/node_modules/lodash/_hashGet.js +31 -0
- package/_internal/node_modules/lodash/_hashHas.js +25 -0
- package/_internal/node_modules/lodash/_hashSet.js +28 -0
- package/_internal/node_modules/lodash/_isFlattenable.js +24 -0
- package/_internal/node_modules/lodash/_isIndex.js +25 -0
- package/_internal/node_modules/lodash/_isKey.js +27 -0
- package/_internal/node_modules/lodash/_isKeyable.js +19 -0
- package/_internal/node_modules/lodash/_isMasked.js +25 -0
- package/_internal/node_modules/lodash/_isPrototype.js +21 -0
- package/_internal/node_modules/lodash/_listCacheClear.js +19 -0
- package/_internal/node_modules/lodash/_listCacheDelete.js +29 -0
- package/_internal/node_modules/lodash/_listCacheGet.js +23 -0
- package/_internal/node_modules/lodash/_listCacheHas.js +22 -0
- package/_internal/node_modules/lodash/_listCacheSet.js +28 -0
- package/_internal/node_modules/lodash/_mapCacheClear.js +27 -0
- package/_internal/node_modules/lodash/_mapCacheDelete.js +24 -0
- package/_internal/node_modules/lodash/_mapCacheGet.js +22 -0
- package/_internal/node_modules/lodash/_mapCacheHas.js +22 -0
- package/_internal/node_modules/lodash/_mapCacheSet.js +26 -0
- package/_internal/node_modules/lodash/_memoizeCapped.js +28 -0
- package/_internal/node_modules/lodash/_nativeCreate.js +9 -0
- package/_internal/node_modules/lodash/_nativeKeys.js +9 -0
- package/_internal/node_modules/lodash/_nodeUtil.js +22 -0
- package/_internal/node_modules/lodash/_objectToString.js +24 -0
- package/_internal/node_modules/lodash/_overArg.js +21 -0
- package/_internal/node_modules/lodash/_overRest.js +32 -0
- package/_internal/node_modules/lodash/_root.js +12 -0
- package/_internal/node_modules/lodash/_setToString.js +11 -0
- package/_internal/node_modules/lodash/_shortOut.js +31 -0
- package/_internal/node_modules/lodash/_strictIndexOf.js +23 -0
- package/_internal/node_modules/lodash/_stringToPath.js +21 -0
- package/_internal/node_modules/lodash/_toKey.js +24 -0
- package/_internal/node_modules/lodash/_toSource.js +28 -0
- package/_internal/node_modules/lodash/_trimmedEndIndex.js +23 -0
- package/_internal/node_modules/lodash/castArray.js +48 -0
- package/_internal/node_modules/lodash/constant.js +32 -0
- package/_internal/node_modules/lodash/eq.js +43 -0
- package/_internal/node_modules/lodash/flatten.js +27 -0
- package/_internal/node_modules/lodash/hasIn.js +40 -0
- package/_internal/node_modules/lodash/identity.js +27 -0
- package/_internal/node_modules/lodash/isArguments.js +21 -0
- package/_internal/node_modules/lodash/isArray.js +8 -0
- package/_internal/node_modules/lodash/isArrayLike.js +39 -0
- package/_internal/node_modules/lodash/isBuffer.js +17 -0
- package/_internal/node_modules/lodash/isEmpty.js +63 -0
- package/_internal/node_modules/lodash/isFunction.js +35 -0
- package/_internal/node_modules/lodash/isInteger.js +39 -0
- package/_internal/node_modules/lodash/isLength.js +39 -0
- package/_internal/node_modules/lodash/isObject.js +37 -0
- package/_internal/node_modules/lodash/isObjectLike.js +35 -0
- package/_internal/node_modules/lodash/isSymbol.js +33 -0
- package/_internal/node_modules/lodash/isTypedArray.js +13 -0
- package/_internal/node_modules/lodash/last.js +26 -0
- package/_internal/node_modules/lodash/memoize.js +69 -0
- package/_internal/node_modules/lodash/pick.js +13 -0
- package/_internal/node_modules/lodash/pull.js +10 -0
- package/_internal/node_modules/lodash/pullAll.js +33 -0
- package/_internal/node_modules/lodash/set.js +41 -0
- package/_internal/node_modules/lodash/stubFalse.js +24 -0
- package/_internal/node_modules/lodash/take.js +41 -0
- package/_internal/node_modules/lodash/toFinite.js +41 -0
- package/_internal/node_modules/lodash/toInteger.js +40 -0
- package/_internal/node_modules/lodash/toNumber.js +57 -0
- package/_internal/node_modules/lodash/toString.js +34 -0
- package/_internal/node_modules/vue/jsx-runtime/index.d.ts +1 -0
- package/_internal/node_modules/vue-demi/lib/index.js +34 -0
- package/_internal/packages/lumx-core/src/js/components/AlertDialog/index.d.ts +15 -0
- package/_internal/packages/lumx-core/src/js/components/AlertDialog/index.js +107 -0
- package/_internal/packages/lumx-core/src/js/components/Avatar/index.d.ts +27 -0
- package/_internal/packages/lumx-core/src/js/components/Avatar/index.js +29 -0
- package/_internal/packages/lumx-core/src/js/components/Badge/BadgeWrapper.d.ts +14 -0
- package/_internal/packages/lumx-core/src/js/components/Badge/BadgeWrapper.js +12 -0
- package/_internal/packages/lumx-core/src/js/components/Badge/index.d.ts +18 -0
- package/_internal/packages/lumx-core/src/js/components/Badge/index.js +36 -0
- package/_internal/packages/lumx-core/src/js/components/Button/Button.d.ts +19 -0
- package/_internal/packages/lumx-core/src/js/components/Button/Button.js +49 -0
- package/_internal/packages/lumx-core/src/js/components/Button/ButtonGroup.d.ts +17 -0
- package/_internal/packages/lumx-core/src/js/components/Button/ButtonGroup.js +33 -0
- package/_internal/packages/lumx-core/src/js/components/Button/ButtonRoot.d.ts +46 -0
- package/_internal/packages/lumx-core/src/js/components/Button/ButtonRoot.js +77 -0
- package/_internal/packages/lumx-core/src/js/components/Button/IconButton.d.ts +24 -0
- package/_internal/packages/lumx-core/src/js/components/Button/IconButton.js +46 -0
- package/_internal/packages/lumx-core/src/js/components/Checkbox/index.d.ts +35 -0
- package/_internal/packages/lumx-core/src/js/components/Checkbox/index.js +60 -0
- package/_internal/packages/lumx-core/src/js/components/Chip/ChipGroup.d.ts +21 -0
- package/_internal/packages/lumx-core/src/js/components/Chip/ChipGroup.js +19 -0
- package/_internal/packages/lumx-core/src/js/components/Chip/SelectionChipGroup.d.ts +29 -0
- package/_internal/packages/lumx-core/src/js/components/Chip/SelectionChipGroup.js +66 -0
- package/_internal/packages/lumx-core/src/js/components/Chip/index.d.ts +63 -0
- package/_internal/packages/lumx-core/src/js/components/Chip/index.js +65 -0
- package/_internal/packages/lumx-core/src/js/components/Chip/setupSelectionChipGroupEvents.js +97 -0
- package/_internal/packages/lumx-core/src/js/components/Combobox/ComboboxButton.d.ts +34 -0
- package/_internal/packages/lumx-core/src/js/components/Combobox/ComboboxButton.js +58 -0
- package/_internal/packages/lumx-core/src/js/components/Combobox/ComboboxInput.d.ts +34 -0
- package/_internal/packages/lumx-core/src/js/components/Combobox/ComboboxInput.js +47 -0
- package/_internal/packages/lumx-core/src/js/components/Combobox/ComboboxList.d.ts +36 -0
- package/_internal/packages/lumx-core/src/js/components/Combobox/ComboboxList.js +30 -0
- package/_internal/packages/lumx-core/src/js/components/Combobox/ComboboxOption.d.ts +53 -0
- package/_internal/packages/lumx-core/src/js/components/Combobox/ComboboxOption.js +75 -0
- package/_internal/packages/lumx-core/src/js/components/Combobox/ComboboxOptionAction.d.ts +20 -0
- package/_internal/packages/lumx-core/src/js/components/Combobox/ComboboxOptionAction.js +29 -0
- package/_internal/packages/lumx-core/src/js/components/Combobox/ComboboxOptionMoreInfo.d.ts +29 -0
- package/_internal/packages/lumx-core/src/js/components/Combobox/ComboboxOptionMoreInfo.js +60 -0
- package/_internal/packages/lumx-core/src/js/components/Combobox/ComboboxOptionSkeleton.d.ts +32 -0
- package/_internal/packages/lumx-core/src/js/components/Combobox/ComboboxOptionSkeleton.js +40 -0
- package/_internal/packages/lumx-core/src/js/components/Combobox/ComboboxPopover.d.ts +16 -0
- package/_internal/packages/lumx-core/src/js/components/Combobox/ComboboxPopover.js +52 -0
- package/_internal/packages/lumx-core/src/js/components/Combobox/ComboboxSection.d.ts +36 -0
- package/_internal/packages/lumx-core/src/js/components/Combobox/ComboboxSection.js +43 -0
- package/_internal/packages/lumx-core/src/js/components/Combobox/ComboboxState.d.ts +64 -0
- package/_internal/packages/lumx-core/src/js/components/Combobox/ComboboxState.js +85 -0
- package/_internal/packages/lumx-core/src/js/components/Combobox/constants.js +4 -0
- package/_internal/packages/lumx-core/src/js/components/Combobox/setupCombobox.js +350 -0
- package/_internal/packages/lumx-core/src/js/components/Combobox/setupComboboxButton.js +84 -0
- package/_internal/packages/lumx-core/src/js/components/Combobox/setupComboboxInput.js +95 -0
- package/_internal/packages/lumx-core/src/js/components/Combobox/setupListbox.js +84 -0
- package/_internal/packages/lumx-core/src/js/components/Combobox/subscribeComboboxState.js +43 -0
- package/_internal/packages/lumx-core/src/js/components/Combobox/types.d.ts +142 -0
- package/_internal/packages/lumx-core/src/js/components/Combobox/utils.js +63 -0
- package/_internal/packages/lumx-core/src/js/components/Dialog/index.d.ts +20 -0
- package/_internal/packages/lumx-core/src/js/components/Dialog/index.js +59 -0
- package/_internal/packages/lumx-core/src/js/components/Divider/index.d.ts +13 -0
- package/_internal/packages/lumx-core/src/js/components/Divider/index.js +21 -0
- package/_internal/packages/lumx-core/src/js/components/DragHandle/index.d.ts +13 -0
- package/_internal/packages/lumx-core/src/js/components/DragHandle/index.js +28 -0
- package/_internal/packages/lumx-core/src/js/components/ExpansionPanel/index.d.ts +51 -0
- package/_internal/packages/lumx-core/src/js/components/ExpansionPanel/index.js +63 -0
- package/_internal/packages/lumx-core/src/js/components/Flag/index.d.ts +24 -0
- package/_internal/packages/lumx-core/src/js/components/Flag/index.js +36 -0
- package/_internal/packages/lumx-core/src/js/components/FlexBox/index.d.ts +34 -0
- package/_internal/packages/lumx-core/src/js/components/FlexBox/index.js +37 -0
- package/_internal/packages/lumx-core/src/js/components/FlexBox/types.d.ts +9 -0
- package/_internal/packages/lumx-core/src/js/components/GenericBlock/constants.d.ts +22 -0
- package/_internal/packages/lumx-core/src/js/components/GenericBlock/constants.js +15 -0
- package/_internal/packages/lumx-core/src/js/components/GenericBlock/index.d.ts +60 -0
- package/_internal/packages/lumx-core/src/js/components/GenericBlock/index.js +45 -0
- package/_internal/packages/lumx-core/src/js/components/GridColumn/GridColumn.d.ts +27 -0
- package/_internal/packages/lumx-core/src/js/components/GridColumn/GridColumn.js +50 -0
- package/_internal/packages/lumx-core/src/js/components/GridColumn/index.d.ts +1 -0
- package/_internal/packages/lumx-core/src/js/components/Heading/constants.d.ts +10 -0
- package/_internal/packages/lumx-core/src/js/components/Heading/constants.js +19 -0
- package/_internal/packages/lumx-core/src/js/components/Heading/index.d.ts +14 -0
- package/_internal/packages/lumx-core/src/js/components/Heading/index.js +26 -0
- package/_internal/packages/lumx-core/src/js/components/Heading/utils.js +14 -0
- package/_internal/packages/lumx-core/src/js/components/Icon/constants.d.ts +4 -0
- package/_internal/packages/lumx-core/src/js/components/Icon/index.d.ts +34 -0
- package/_internal/packages/lumx-core/src/js/components/Icon/index.js +63 -0
- package/_internal/packages/lumx-core/src/js/components/ImageBlock/ImageCaption.d.ts +19 -0
- package/_internal/packages/lumx-core/src/js/components/ImageBlock/ImageCaption.js +52 -0
- package/_internal/packages/lumx-core/src/js/components/ImageBlock/index.d.ts +52 -0
- package/_internal/packages/lumx-core/src/js/components/ImageBlock/index.js +67 -0
- package/_internal/packages/lumx-core/src/js/components/InlineList/index.d.ts +34 -0
- package/_internal/packages/lumx-core/src/js/components/InlineList/index.js +48 -0
- package/_internal/packages/lumx-core/src/js/components/InputHelper/constants.js +9 -0
- package/_internal/packages/lumx-core/src/js/components/InputHelper/index.d.ts +21 -0
- package/_internal/packages/lumx-core/src/js/components/InputHelper/index.js +32 -0
- package/_internal/packages/lumx-core/src/js/components/InputLabel/index.d.ts +24 -0
- package/_internal/packages/lumx-core/src/js/components/InputLabel/index.js +31 -0
- package/_internal/packages/lumx-core/src/js/components/Lightbox/index.d.ts +14 -0
- package/_internal/packages/lumx-core/src/js/components/Lightbox/index.js +46 -0
- package/_internal/packages/lumx-core/src/js/components/Link/index.d.ts +34 -0
- package/_internal/packages/lumx-core/src/js/components/Link/index.js +36 -0
- package/_internal/packages/lumx-core/src/js/components/LinkPreview/index.d.ts +35 -0
- package/_internal/packages/lumx-core/src/js/components/LinkPreview/index.js +64 -0
- package/_internal/packages/lumx-core/src/js/components/List/ListDivider.d.ts +12 -0
- package/_internal/packages/lumx-core/src/js/components/List/ListDivider.js +37 -0
- package/_internal/packages/lumx-core/src/js/components/List/ListItem.d.ts +40 -0
- package/_internal/packages/lumx-core/src/js/components/List/ListItem.js +56 -0
- package/_internal/packages/lumx-core/src/js/components/List/ListItemAction.js +27 -0
- package/_internal/packages/lumx-core/src/js/components/List/ListSection.d.ts +27 -0
- package/_internal/packages/lumx-core/src/js/components/List/ListSection.js +46 -0
- package/_internal/packages/lumx-core/src/js/components/List/index.d.ts +20 -0
- package/_internal/packages/lumx-core/src/js/components/List/index.js +39 -0
- package/_internal/packages/lumx-core/src/js/components/Menu/MenuButton.d.ts +28 -0
- package/_internal/packages/lumx-core/src/js/components/Menu/MenuButton.js +21 -0
- package/_internal/packages/lumx-core/src/js/components/Menu/MenuItem.d.ts +27 -0
- package/_internal/packages/lumx-core/src/js/components/Menu/MenuItem.js +33 -0
- package/_internal/packages/lumx-core/src/js/components/Menu/MenuList.js +19 -0
- package/_internal/packages/lumx-core/src/js/components/Menu/MenuPopover.d.ts +12 -0
- package/_internal/packages/lumx-core/src/js/components/Menu/MenuPopover.js +33 -0
- package/_internal/packages/lumx-core/src/js/components/Menu/MenuTrigger.js +21 -0
- package/_internal/packages/lumx-core/src/js/components/Menu/setupMenu.js +256 -0
- package/_internal/packages/lumx-core/src/js/components/Menu/utils.js +16 -0
- package/_internal/packages/lumx-core/src/js/components/Message/index.d.ts +31 -0
- package/_internal/packages/lumx-core/src/js/components/Message/index.js +83 -0
- package/_internal/packages/lumx-core/src/js/components/Mosaic/index.d.ts +18 -0
- package/_internal/packages/lumx-core/src/js/components/Mosaic/index.js +48 -0
- package/_internal/packages/lumx-core/src/js/components/Popover/constants.d.ts +39 -0
- package/_internal/packages/lumx-core/src/js/components/Popover/constants.js +37 -0
- package/_internal/packages/lumx-core/src/js/components/Popover/index.d.ts +65 -0
- package/_internal/packages/lumx-core/src/js/components/Popover/index.js +71 -0
- package/_internal/packages/lumx-core/src/js/components/Popover/types.d.ts +39 -0
- package/_internal/packages/lumx-core/src/js/components/Popover/utils/buildPopoverMiddleware.js +53 -0
- package/_internal/packages/lumx-core/src/js/components/Popover/utils/computeArrowStyles.js +13 -0
- package/_internal/packages/lumx-core/src/js/components/Popover/utils/getFloatingPlacement.js +10 -0
- package/_internal/packages/lumx-core/src/js/components/Popover/utils/parseAutoPlacement.js +21 -0
- package/_internal/packages/lumx-core/src/js/components/Popover/utils/parseFitWidth.js +12 -0
- package/_internal/packages/lumx-core/src/js/components/PopoverDialog/index.d.ts +13 -0
- package/_internal/packages/lumx-core/src/js/components/PopoverDialog/index.js +15 -0
- package/_internal/packages/lumx-core/src/js/components/ProgressCircular/index.d.ts +32 -0
- package/_internal/packages/lumx-core/src/js/components/ProgressCircular/index.js +43 -0
- package/_internal/packages/lumx-core/src/js/components/ProgressLinear/index.d.ts +13 -0
- package/_internal/packages/lumx-core/src/js/components/ProgressLinear/index.js +21 -0
- package/_internal/packages/lumx-core/src/js/components/RadioButton/index.d.ts +35 -0
- package/_internal/packages/lumx-core/src/js/components/RadioButton/index.js +51 -0
- package/_internal/packages/lumx-core/src/js/components/RadioGroup/index.d.ts +1 -0
- package/_internal/packages/lumx-core/src/js/components/RadioGroup/index.js +33 -0
- package/_internal/packages/lumx-core/src/js/components/RawClickable/index.d.ts +14 -0
- package/_internal/packages/lumx-core/src/js/components/RawClickable/index.js +33 -0
- package/_internal/packages/lumx-core/src/js/components/SelectButton/index.d.ts +58 -0
- package/_internal/packages/lumx-core/src/js/components/SelectButton/index.js +85 -0
- package/_internal/packages/lumx-core/src/js/components/SelectTextField/index.js +70 -0
- package/_internal/packages/lumx-core/src/js/components/Skeleton/SkeletonCircle.d.ts +18 -0
- package/_internal/packages/lumx-core/src/js/components/Skeleton/SkeletonCircle.js +25 -0
- package/_internal/packages/lumx-core/src/js/components/Skeleton/SkeletonRectangle.d.ts +34 -0
- package/_internal/packages/lumx-core/src/js/components/Skeleton/SkeletonRectangle.js +40 -0
- package/_internal/packages/lumx-core/src/js/components/Skeleton/SkeletonTypography.d.ts +24 -0
- package/_internal/packages/lumx-core/src/js/components/Skeleton/SkeletonTypography.js +31 -0
- package/_internal/packages/lumx-core/src/js/components/Skeleton/index.d.ts +3 -0
- package/_internal/packages/lumx-core/src/js/components/Switch/index.d.ts +37 -0
- package/_internal/packages/lumx-core/src/js/components/Switch/index.js +58 -0
- package/_internal/packages/lumx-core/src/js/components/Table/TableBody.d.ts +15 -0
- package/_internal/packages/lumx-core/src/js/components/Table/TableBody.js +20 -0
- package/_internal/packages/lumx-core/src/js/components/Table/TableCell.d.ts +42 -0
- package/_internal/packages/lumx-core/src/js/components/Table/TableCell.js +79 -0
- package/_internal/packages/lumx-core/src/js/components/Table/TableHeader.d.ts +15 -0
- package/_internal/packages/lumx-core/src/js/components/Table/TableHeader.js +20 -0
- package/_internal/packages/lumx-core/src/js/components/Table/TableRow.d.ts +22 -0
- package/_internal/packages/lumx-core/src/js/components/Table/TableRow.js +25 -0
- package/_internal/packages/lumx-core/src/js/components/Table/constants.d.ts +1 -0
- package/_internal/packages/lumx-core/src/js/components/Table/constants.js +7 -0
- package/_internal/packages/lumx-core/src/js/components/Table/index.d.ts +20 -0
- package/_internal/packages/lumx-core/src/js/components/Table/index.js +22 -0
- package/_internal/packages/lumx-core/src/js/components/Tabs/Tab.d.ts +54 -0
- package/_internal/packages/lumx-core/src/js/components/Tabs/Tab.js +66 -0
- package/_internal/packages/lumx-core/src/js/components/Tabs/TabList.d.ts +27 -0
- package/_internal/packages/lumx-core/src/js/components/Tabs/TabList.js +42 -0
- package/_internal/packages/lumx-core/src/js/components/Tabs/TabPanel.d.ts +26 -0
- package/_internal/packages/lumx-core/src/js/components/Tabs/TabPanel.js +28 -0
- package/_internal/packages/lumx-core/src/js/components/Tabs/constants.js +7 -0
- package/_internal/packages/lumx-core/src/js/components/Tabs/state.js +53 -0
- package/_internal/packages/lumx-core/src/js/components/Text/index.d.ts +55 -0
- package/_internal/packages/lumx-core/src/js/components/Text/index.js +37 -0
- package/_internal/packages/lumx-core/src/js/components/TextField/RawInputText.d.ts +21 -0
- package/_internal/packages/lumx-core/src/js/components/TextField/RawInputText.js +42 -0
- package/_internal/packages/lumx-core/src/js/components/TextField/RawInputTextarea.d.ts +19 -0
- package/_internal/packages/lumx-core/src/js/components/TextField/RawInputTextarea.js +42 -0
- package/_internal/packages/lumx-core/src/js/components/TextField/TextField.d.ts +70 -0
- package/_internal/packages/lumx-core/src/js/components/TextField/TextField.js +127 -0
- package/_internal/packages/lumx-core/src/js/components/TextField/constants.d.ts +1 -0
- package/_internal/packages/lumx-core/src/js/components/TextField/constants.js +11 -0
- package/_internal/packages/lumx-core/src/js/components/Thumbnail/index.d.ts +60 -0
- package/_internal/packages/lumx-core/src/js/components/Thumbnail/index.js +99 -0
- package/_internal/packages/lumx-core/src/js/components/Thumbnail/types.d.ts +47 -0
- package/_internal/packages/lumx-core/src/js/components/Thumbnail/types.js +18 -0
- package/_internal/packages/lumx-core/src/js/components/Thumbnail/utils.d.ts +1 -0
- package/_internal/packages/lumx-core/src/js/components/Thumbnail/utils.js +76 -0
- package/_internal/packages/lumx-core/src/js/components/TimePickerField/index.d.ts +61 -0
- package/_internal/packages/lumx-core/src/js/components/TimePickerField/index.js +72 -0
- package/_internal/packages/lumx-core/src/js/components/Toolbar/index.d.ts +23 -0
- package/_internal/packages/lumx-core/src/js/components/Toolbar/index.js +36 -0
- package/_internal/packages/lumx-core/src/js/components/Tooltip/constants.d.ts +4 -0
- package/_internal/packages/lumx-core/src/js/components/Tooltip/constants.js +8 -0
- package/_internal/packages/lumx-core/src/js/components/Tooltip/index.d.ts +25 -0
- package/_internal/packages/lumx-core/src/js/components/Tooltip/index.js +56 -0
- package/_internal/packages/lumx-core/src/js/components/Tooltip/tooltipOpenManager.js +93 -0
- package/_internal/packages/lumx-core/src/js/components/Uploader/index.d.ts +59 -0
- package/_internal/packages/lumx-core/src/js/components/Uploader/index.js +64 -0
- package/_internal/packages/lumx-core/src/js/components/UserBlock/index.d.ts +124 -0
- package/_internal/packages/lumx-core/src/js/components/UserBlock/index.js +88 -0
- package/_internal/packages/lumx-core/src/js/constants/browser/index.js +7 -0
- package/_internal/packages/lumx-core/src/js/constants/components/index.js +19 -0
- package/_internal/packages/lumx-core/src/js/constants/enums/index.d.ts +184 -0
- package/_internal/packages/lumx-core/src/js/constants/enums/index.js +140 -0
- package/_internal/packages/lumx-core/src/js/constants/index.d.ts +1 -0
- package/_internal/packages/lumx-core/src/js/types/AriaAttributes.d.ts +32 -0
- package/_internal/packages/lumx-core/src/js/types/Booleanish.d.ts +4 -0
- package/_internal/packages/lumx-core/src/js/types/CommonRef.d.ts +4 -0
- package/_internal/packages/lumx-core/src/js/types/GenericProps.d.ts +14 -0
- package/_internal/packages/lumx-core/src/js/types/HasAriaDisabled.d.ts +9 -0
- package/_internal/packages/lumx-core/src/js/types/HasAriaLabelOrLabelledBy.d.ts +19 -0
- package/_internal/packages/lumx-core/src/js/types/HasChecked.d.ts +9 -0
- package/_internal/packages/lumx-core/src/js/types/HasClassName.d.ts +9 -0
- package/_internal/packages/lumx-core/src/js/types/HasCloseMode.d.ts +10 -0
- package/_internal/packages/lumx-core/src/js/types/HasDisabled.d.ts +9 -0
- package/_internal/packages/lumx-core/src/js/types/HasPolymorphicAs.d.ts +12 -0
- package/_internal/packages/lumx-core/src/js/types/HasRequiredLinkHref.d.ts +6 -0
- package/_internal/packages/lumx-core/src/js/types/HasTheme.d.ts +10 -0
- package/_internal/packages/lumx-core/src/js/types/HeadingElement.d.ts +5 -0
- package/_internal/packages/lumx-core/src/js/types/JSXElement.d.ts +13 -0
- package/_internal/packages/lumx-core/src/js/types/Selector.d.ts +11 -0
- package/_internal/packages/lumx-core/src/js/types/TextElement.d.ts +7 -0
- package/_internal/packages/lumx-core/src/js/types/ValueOf.d.ts +5 -0
- package/_internal/packages/lumx-core/src/js/types/index.d.ts +17 -0
- package/_internal/packages/lumx-core/src/js/utils/ClickAway/index.d.ts +7 -0
- package/_internal/packages/lumx-core/src/js/utils/ClickAway/index.js +37 -0
- package/_internal/packages/lumx-core/src/js/utils/InfiniteScroll/index.d.ts +9 -0
- package/_internal/packages/lumx-core/src/js/utils/InfiniteScroll/index.js +21 -0
- package/_internal/packages/lumx-core/src/js/utils/InfiniteScroll/setupInfiniteScrollObserver.js +18 -0
- package/_internal/packages/lumx-core/src/js/utils/Portal/index.d.ts +28 -0
- package/_internal/packages/lumx-core/src/js/utils/_internal/color/resolveColorWithVariants.js +9 -0
- package/_internal/packages/lumx-core/src/js/utils/browser/createSelectorTreeWalker.js +20 -0
- package/_internal/packages/lumx-core/src/js/utils/browser/css/combineSize.js +14 -0
- package/_internal/packages/lumx-core/src/js/utils/browser/css/resolveCssSize.js +8 -0
- package/_internal/packages/lumx-core/src/js/utils/browser/css/types.d.ts +7 -0
- package/_internal/packages/lumx-core/src/js/utils/browser/isFocusVisible.js +11 -0
- package/_internal/packages/lumx-core/src/js/utils/browser/isHoverNotSupported.js +5 -0
- package/_internal/packages/lumx-core/src/js/utils/browser/isPrintableKey.js +12 -0
- package/_internal/packages/lumx-core/src/js/utils/browser/lastDescendant.js +9 -0
- package/_internal/packages/lumx-core/src/js/utils/browser/querySelectorInclusive.js +18 -0
- package/_internal/packages/lumx-core/src/js/utils/browser/trackContainerFocus.js +28 -0
- package/_internal/packages/lumx-core/src/js/utils/classNames/action-area/index.js +22 -0
- package/_internal/packages/lumx-core/src/js/utils/classNames/bem/block.js +18 -0
- package/_internal/packages/lumx-core/src/js/utils/classNames/bem/element.js +7 -0
- package/_internal/packages/lumx-core/src/js/utils/classNames/bem/index.js +22 -0
- package/_internal/packages/lumx-core/src/js/utils/classNames/bem/modifier.js +19 -0
- package/_internal/packages/lumx-core/src/js/utils/classNames/color/index.js +38 -0
- package/_internal/packages/lumx-core/src/js/utils/classNames/index.js +12 -0
- package/_internal/packages/lumx-core/src/js/utils/classNames/spacing/index.js +31 -0
- package/_internal/packages/lumx-core/src/js/utils/classNames/typography/index.js +10 -0
- package/_internal/packages/lumx-core/src/js/utils/classNames/visually-hidden/index.js +9 -0
- package/_internal/packages/lumx-core/src/js/utils/disabledState/index.js +13 -0
- package/_internal/packages/lumx-core/src/js/utils/events/keyboard.js +27 -0
- package/_internal/packages/lumx-core/src/js/utils/focus/constants.js +13 -0
- package/_internal/packages/lumx-core/src/js/utils/focus/getFirstAndLastFocusable.js +20 -0
- package/_internal/packages/lumx-core/src/js/utils/focus/getFocusableElements.js +8 -0
- package/_internal/packages/lumx-core/src/js/utils/focus/setupFocusTrap.js +83 -0
- package/_internal/packages/lumx-core/src/js/utils/focusNavigation/createActiveItemState.js +38 -0
- package/_internal/packages/lumx-core/src/js/utils/focusNavigation/createGridFocusNavigation.js +182 -0
- package/_internal/packages/lumx-core/src/js/utils/focusNavigation/createListFocusNavigation.js +151 -0
- package/_internal/packages/lumx-core/src/js/utils/focusNavigation/createPendingNavigation.js +23 -0
- package/_internal/packages/lumx-core/src/js/utils/focusNavigation/setupRovingTabIndex.js +167 -0
- package/_internal/packages/lumx-core/src/js/utils/focusNavigation/types.d.ts +40 -0
- package/_internal/packages/lumx-core/src/js/utils/function/listenerTower.js +28 -0
- package/_internal/packages/lumx-core/src/js/utils/iterable/first.js +8 -0
- package/_internal/packages/lumx-core/src/js/utils/locale/getCurrentLocale.js +10 -0
- package/_internal/packages/lumx-core/src/js/utils/select/findOptionById.js +19 -0
- package/_internal/packages/lumx-core/src/js/utils/select/getOptionDisplayName.js +19 -0
- package/_internal/packages/lumx-core/src/js/utils/select/renderSelectOptions.js +55 -0
- package/_internal/packages/lumx-core/src/js/utils/select/toggleSelection.js +39 -0
- package/_internal/packages/lumx-core/src/js/utils/select/types.d.ts +224 -0
- package/_internal/packages/lumx-core/src/js/utils/selectors/getWithSelector.js +9 -0
- package/_internal/packages/lumx-core/src/js/utils/selectors/groupBySelector.js +21 -0
- package/_internal/packages/lumx-core/src/js/utils/time/buildTimeList.js +36 -0
- package/_internal/packages/lumx-core/src/js/utils/time/formatTime.js +14 -0
- package/_internal/packages/lumx-core/src/js/utils/time/getDateAtTime.js +12 -0
- package/_internal/packages/lumx-core/src/js/utils/time/isDateOnTime.js +10 -0
- package/_internal/packages/lumx-core/src/js/utils/time/parseTimeInput.js +46 -0
- package/_internal/packages/lumx-core/src/js/utils/time/snapTimeToBounds.js +21 -0
- package/_internal/packages/lumx-core/src/js/utils/time/timeOfDayMinutes.js +9 -0
- package/_internal/packages/lumx-core/src/js/utils/typeahead/index.js +77 -0
- package/_internal/utils/ClickAway/ClickAwayProvider.d.ts +19 -0
- package/_internal/utils/ClickAway/ClickAwayProvider.js +58 -0
- package/_internal/utils/ClickAway/index.d.ts +2 -0
- package/_internal/utils/ClickAway/useClickAway.d.ts +25 -0
- package/_internal/utils/ClickAway/useClickAway.js +25 -0
- package/_internal/utils/InfiniteScroll/InfiniteScroll.d.ts +9 -0
- package/_internal/utils/InfiniteScroll/InfiniteScroll.js +23 -0
- package/_internal/utils/InfiniteScroll/index.d.ts +2 -0
- package/_internal/utils/Portal/Portal.d.ts +10 -0
- package/_internal/utils/Portal/Portal.js +37 -0
- package/_internal/utils/Portal/PortalProvider.d.ts +8 -0
- package/_internal/utils/Portal/PortalProvider.js +19 -0
- package/_internal/utils/Portal/index.d.ts +3 -0
- package/_internal/utils/VueToJSX.d.ts +38 -0
- package/_internal/utils/VueToJSX.js +11 -0
- package/_internal/utils/isComponentType.js +9 -0
- package/_internal/utils/theme/ResetTheme.js +11 -0
- package/_internal/utils/theme/ThemeProvider.d.ts +14 -0
- package/_internal/utils/theme/ThemeProvider.js +18 -0
- package/_internal/utils/theme/index.d.ts +2 -0
- package/_internal/utils/theme/useTheme.d.ts +14 -0
- package/_internal/utils/theme/useTheme.js +14 -0
- package/_internal/utils/wrapChildrenIconWithSpaces.js +37 -0
- package/index.d.ts +114 -48
- package/index.js +83 -11709
- package/package.json +6 -9
- package/utils/index.d.ts +10 -7
- package/utils/index.js +8 -24
- package/_internal/CHaqSUjw.js +0 -159
- package/_internal/CHaqSUjw.js.map +0 -1
- package/components/alert-dialog/AlertDialog.d.ts +0 -45
- package/components/alert-dialog/AlertDialog.stories.d.ts +0 -104
- package/components/alert-dialog/index.d.ts +0 -1
- package/components/avatar/Avatar.d.ts +0 -42
- package/components/avatar/Avatar.stories.d.ts +0 -146
- package/components/avatar/index.d.ts +0 -1
- package/components/badge/Badge.d.ts +0 -13
- package/components/badge/Badge.stories.d.ts +0 -34
- package/components/badge/BadgeWrapper.d.ts +0 -8
- package/components/badge/BadgeWrapper.stories.d.ts +0 -18
- package/components/badge/index.d.ts +0 -4
- package/components/button/Button.d.ts +0 -19
- package/components/button/ButtonGroup.d.ts +0 -13
- package/components/button/IconButton.d.ts +0 -35
- package/components/button/index.d.ts +0 -6
- package/components/checkbox/Checkbox.d.ts +0 -21
- package/components/checkbox/index.d.ts +0 -3
- package/components/chip/Chip.d.ts +0 -30
- package/components/chip/Chip.stories.d.ts +0 -121
- package/components/chip/ChipGroup.d.ts +0 -7
- package/components/chip/ChipGroup.stories.d.ts +0 -12
- package/components/chip/SelectionChipGroup.d.ts +0 -51
- package/components/chip/SelectionChipGroup.stories.d.ts +0 -66
- package/components/chip/Stories/CustomRender.vue.d.ts +0 -2
- package/components/chip/Stories/InTextField.vue.d.ts +0 -2
- package/components/chip/index.d.ts +0 -3
- package/components/combobox/Combobox.stories.d.ts +0 -153
- package/components/combobox/Combobox.test.stories.d.ts +0 -165
- package/components/combobox/ComboboxButton.d.ts +0 -48
- package/components/combobox/ComboboxInput.d.ts +0 -41
- package/components/combobox/ComboboxList.d.ts +0 -15
- package/components/combobox/ComboboxOption.d.ts +0 -32
- package/components/combobox/ComboboxOption.test.d.ts +0 -1
- package/components/combobox/ComboboxOptionAction.d.ts +0 -20
- package/components/combobox/ComboboxOptionMoreInfo.d.ts +0 -29
- package/components/combobox/ComboboxOptionSkeleton.d.ts +0 -14
- package/components/combobox/ComboboxPopover.d.ts +0 -20
- package/components/combobox/ComboboxProvider.d.ts +0 -20
- package/components/combobox/ComboboxSection.d.ts +0 -14
- package/components/combobox/ComboboxState.d.ts +0 -14
- package/components/combobox/context/ComboboxContext.d.ts +0 -23
- package/components/combobox/context/ComboboxListContext.d.ts +0 -14
- package/components/combobox/context/ComboboxOptionContext.d.ts +0 -16
- package/components/combobox/context/useComboboxEvent.d.ts +0 -7
- package/components/combobox/context/useComboboxOpen.d.ts +0 -7
- package/components/combobox/index.d.ts +0 -112
- package/components/combobox/useWrappedRenderOptionSlot.d.ts +0 -11
- package/components/combobox/useWrappedRenderSectionTitleSlot.d.ts +0 -10
- package/components/dialog/Dialog.d.ts +0 -67
- package/components/dialog/Dialog.stories.d.ts +0 -106
- package/components/dialog/index.d.ts +0 -2
- package/components/divider/Divider.d.ts +0 -14
- package/components/divider/index.d.ts +0 -2
- package/components/drag-handle/DragHandle.d.ts +0 -14
- package/components/drag-handle/index.d.ts +0 -2
- package/components/expansion-panel/ExpansionPanel.d.ts +0 -39
- package/components/expansion-panel/ExpansionPanel.stories.d.ts +0 -54
- package/components/expansion-panel/index.d.ts +0 -1
- package/components/flag/Flag.d.ts +0 -13
- package/components/flag/Flag.stories.d.ts +0 -108
- package/components/flag/index.d.ts +0 -4
- package/components/flex-box/FlexBox.d.ts +0 -28
- package/components/flex-box/index.d.ts +0 -4
- package/components/generic-block/GenericBlock.d.ts +0 -62
- package/components/generic-block/GenericBlock.stories.d.ts +0 -65
- package/components/generic-block/index.d.ts +0 -4
- package/components/grid-column/GridColumn.d.ts +0 -9
- package/components/grid-column/GridColumn.stories.d.ts +0 -42
- package/components/grid-column/index.d.ts +0 -2
- package/components/heading/Heading.d.ts +0 -13
- package/components/heading/HeadingLevelProvider.d.ts +0 -12
- package/components/heading/context.d.ts +0 -3
- package/components/heading/index.d.ts +0 -6
- package/components/heading/useHeadingLevel.d.ts +0 -7
- package/components/icon/Icon.d.ts +0 -13
- package/components/icon/index.d.ts +0 -4
- package/components/image-block/ImageBlock.d.ts +0 -19
- package/components/image-block/ImageBlock.stories.d.ts +0 -178
- package/components/image-block/ImageCaption.d.ts +0 -19
- package/components/image-block/index.d.ts +0 -1
- package/components/inline-list/InlineList.d.ts +0 -13
- package/components/inline-list/InlineList.stories.d.ts +0 -53
- package/components/inline-list/index.d.ts +0 -3
- package/components/input-helper/InputHelper.d.ts +0 -13
- package/components/input-helper/index.d.ts +0 -3
- package/components/input-label/InputLabel.d.ts +0 -13
- package/components/input-label/index.d.ts +0 -3
- package/components/lightbox/Lightbox.d.ts +0 -28
- package/components/lightbox/Lightbox.stories.d.ts +0 -27
- package/components/lightbox/index.d.ts +0 -1
- package/components/link/Link.d.ts +0 -20
- package/components/link/Link.stories.d.ts +0 -268
- package/components/link/index.d.ts +0 -3
- package/components/link-preview/LinkPreview.d.ts +0 -20
- package/components/link-preview/LinkPreview.stories.d.ts +0 -55
- package/components/link-preview/index.d.ts +0 -3
- package/components/list/List.d.ts +0 -13
- package/components/list/List.stories.d.ts +0 -24
- package/components/list/ListDivider.d.ts +0 -13
- package/components/list/ListDivider.stories.d.ts +0 -7
- package/components/list/ListItem.d.ts +0 -26
- package/components/list/ListItem.stories.d.ts +0 -80
- package/components/list/ListItemAction.d.ts +0 -31
- package/components/list/ListSection.d.ts +0 -13
- package/components/list/ListSection.stories.d.ts +0 -112
- package/components/list/index.d.ts +0 -5
- package/components/menu-button/MenuButton.d.ts +0 -52
- package/components/menu-button/MenuButton.stories.d.ts +0 -46
- package/components/menu-button/MenuButton.test.d.ts +0 -1
- package/components/menu-button/MenuButton.test.stories.d.ts +0 -26
- package/components/menu-button/MenuItem.d.ts +0 -44
- package/components/menu-button/MenuItem.test.d.ts +0 -1
- package/components/menu-button/MenuList.d.ts +0 -15
- package/components/menu-button/MenuPopover.d.ts +0 -15
- package/components/menu-button/MenuProvider.d.ts +0 -15
- package/components/menu-button/MenuTrigger.d.ts +0 -15
- package/components/menu-button/Stories/WithLinkItems.vue.d.ts +0 -8
- package/components/menu-button/context.d.ts +0 -13
- package/components/menu-button/index.d.ts +0 -3
- package/components/menu-button/useMenuEvent.d.ts +0 -3
- package/components/menu-button/useMenuOpen.d.ts +0 -2
- package/components/message/Message.d.ts +0 -25
- package/components/message/index.d.ts +0 -3
- package/components/mosaic/Mosaic.d.ts +0 -30
- package/components/mosaic/Mosaic.stories.d.ts +0 -93
- package/components/mosaic/index.d.ts +0 -1
- package/components/popover/Popover.d.ts +0 -47
- package/components/popover/Popover.stories.d.ts +0 -138
- package/components/popover/Popover.test.stories.d.ts +0 -26
- package/components/popover/index.d.ts +0 -3
- package/components/popover/usePopoverStyle.d.ts +0 -31
- package/components/popover-dialog/PopoverDialog.d.ts +0 -27
- package/components/popover-dialog/PopoverDialog.stories.d.ts +0 -32
- package/components/popover-dialog/PopoverDialog.test.stories.d.ts +0 -99
- package/components/popover-dialog/index.d.ts +0 -1
- package/components/progress/ProgressCircular.d.ts +0 -9
- package/components/progress/ProgressCircular.stories.d.ts +0 -22
- package/components/progress/ProgressLinear.d.ts +0 -8
- package/components/progress/index.d.ts +0 -4
- package/components/radio-button/RadioButton.d.ts +0 -21
- package/components/radio-button/RadioGroup.d.ts +0 -15
- package/components/radio-button/index.d.ts +0 -4
- package/components/select-button/SelectButton.d.ts +0 -176
- package/components/select-button/SelectButton.stories.d.ts +0 -126
- package/components/select-button/SelectButton.test.d.ts +0 -1
- package/components/select-button/SelectButton.test.stories.d.ts +0 -41
- package/components/select-button/Stories/CustomRender.vue.d.ts +0 -2
- package/components/select-button/Stories/WithInfiniteScroll.vue.d.ts +0 -2
- package/components/select-button/index.d.ts +0 -13
- package/components/select-text-field/SelectTextField.d.ts +0 -133
- package/components/select-text-field/SelectTextField.stories.d.ts +0 -203
- package/components/select-text-field/SelectTextField.test.d.ts +0 -1
- package/components/select-text-field/SelectTextField.test.stories.d.ts +0 -37
- package/components/select-text-field/Stories/CustomRender.vue.d.ts +0 -2
- package/components/select-text-field/Stories/MultipleWithSearch.vue.d.ts +0 -2
- package/components/select-text-field/Stories/WithCreatableOptions.vue.d.ts +0 -2
- package/components/select-text-field/Stories/WithInfiniteScroll.vue.d.ts +0 -2
- package/components/select-text-field/Stories/WithSearch.vue.d.ts +0 -2
- package/components/select-text-field/index.d.ts +0 -36
- package/components/skeleton/SkeletonCircle.d.ts +0 -14
- package/components/skeleton/SkeletonRectangle.d.ts +0 -14
- package/components/skeleton/SkeletonTypography.d.ts +0 -14
- package/components/skeleton/index.d.ts +0 -10
- package/components/switch/Switch.d.ts +0 -21
- package/components/switch/index.d.ts +0 -2
- package/components/table/Table.d.ts +0 -7
- package/components/table/TableBody.d.ts +0 -7
- package/components/table/TableCell.d.ts +0 -16
- package/components/table/TableHeader.d.ts +0 -7
- package/components/table/TableRow.d.ts +0 -13
- package/components/table/index.d.ts +0 -10
- package/components/tabs/Tab.d.ts +0 -26
- package/components/tabs/TabList.d.ts +0 -21
- package/components/tabs/TabPanel.d.ts +0 -16
- package/components/tabs/TabProvider.d.ts +0 -26
- package/components/tabs/TabProvider.stories.d.ts +0 -53
- package/components/tabs/TabProvider.test.d.ts +0 -1
- package/components/tabs/index.d.ts +0 -4
- package/components/tabs/state.d.ts +0 -19
- package/components/text/Text.d.ts +0 -13
- package/components/text/index.d.ts +0 -3
- package/components/text-field/RawInputText.d.ts +0 -30
- package/components/text-field/RawInputText.stories.d.ts +0 -13
- package/components/text-field/RawInputTextarea.d.ts +0 -30
- package/components/text-field/RawInputTextarea.stories.d.ts +0 -18
- package/components/text-field/Stories/WithChips.vue.d.ts +0 -2
- package/components/text-field/TextField.d.ts +0 -75
- package/components/text-field/TextField.stories.d.ts +0 -101
- package/components/text-field/index.d.ts +0 -3
- package/components/text-field/useFitRowsToContent.d.ts +0 -5
- package/components/thumbnail/Stories/ThumbnailClickable.vue.d.ts +0 -20
- package/components/thumbnail/Thumbnail.d.ts +0 -35
- package/components/thumbnail/Thumbnail.stories.d.ts +0 -169
- package/components/thumbnail/index.d.ts +0 -4
- package/components/thumbnail/useFocusPointStyle.d.ts +0 -20
- package/components/thumbnail/useImageLoad.d.ts +0 -10
- package/components/time-picker-field/TimePickerField.d.ts +0 -45
- package/components/time-picker-field/TimePickerField.stories.d.ts +0 -54
- package/components/time-picker-field/TimePickerField.test.d.ts +0 -1
- package/components/time-picker-field/index.d.ts +0 -2
- package/components/toolbar/Toolbar.d.ts +0 -8
- package/components/toolbar/Toolbar.stories.d.ts +0 -19
- package/components/toolbar/index.d.ts +0 -3
- package/components/tooltip/Tooltip.d.ts +0 -15
- package/components/tooltip/Tooltip.stories.d.ts +0 -51
- package/components/tooltip/Tooltip.test.stories.d.ts +0 -63
- package/components/tooltip/context.d.ts +0 -13
- package/components/tooltip/index.d.ts +0 -1
- package/components/tooltip/useInjectTooltipRef.d.ts +0 -22
- package/components/tooltip/useTooltipOpen.d.ts +0 -14
- package/components/uploader/Uploader.d.ts +0 -38
- package/components/uploader/index.d.ts +0 -2
- package/components/user-block/UserBlock.d.ts +0 -39
- package/components/user-block/UserBlock.stories.d.ts +0 -151
- package/components/user-block/index.d.ts +0 -1
- package/composables/useAttrFallback.d.ts +0 -28
- package/composables/useCallbackOnEscape.d.ts +0 -13
- package/composables/useClassName.d.ts +0 -16
- package/composables/useDisableBodyScroll.d.ts +0 -8
- package/composables/useDisableStateProps.d.ts +0 -16
- package/composables/useDisabledState.d.ts +0 -3
- package/composables/useFocus.d.ts +0 -9
- package/composables/useFocusTrap.d.ts +0 -13
- package/composables/useHasEventListener.d.ts +0 -7
- package/composables/useId.d.ts +0 -7
- package/composables/useOverflowTooltipLabel.d.ts +0 -7
- package/composables/useRestoreFocusOnClose.d.ts +0 -15
- package/composables/useRovingTabIndexContainer.d.ts +0 -32
- package/composables/useSlot.d.ts +0 -6
- package/composables/useTheme.d.ts +0 -1
- package/composables/useTransitionVisibility.d.ts +0 -11
- package/composables/useWatchDisposable.d.ts +0 -19
- package/index.js.map +0 -1
- package/stories/decorators/withChromaticForceScreenSize.d.ts +0 -2
- package/stories/decorators/withCombinations.d.ts +0 -6
- package/stories/decorators/withNestedProps.d.ts +0 -10
- package/stories/decorators/withResizableBox.d.ts +0 -12
- package/stories/decorators/withThemedBackground.d.ts +0 -12
- package/stories/decorators/withTheming.d.ts +0 -26
- package/stories/decorators/withValueOnChange.d.ts +0 -12
- package/stories/decorators/withWrapper.d.ts +0 -10
- package/stories/utils/CustomLink.vue.d.ts +0 -29
- package/stories/utils/useAttrsWithoutHandlers.d.ts +0 -27
- package/stories/utils/withRender.d.ts +0 -54
- package/utils/ClickAway/ClickAwayProvider.d.ts +0 -21
- package/utils/ClickAway/ClickAwayProvider.stories.d.ts +0 -25
- package/utils/ClickAway/index.d.ts +0 -2
- package/utils/ClickAway/useClickAway.d.ts +0 -18
- package/utils/InfiniteScroll/InfiniteScroll.d.ts +0 -7
- package/utils/InfiniteScroll/InfiniteScroll.test.stories.d.ts +0 -39
- package/utils/InfiniteScroll/index.d.ts +0 -1
- package/utils/Portal/Portal.d.ts +0 -7
- package/utils/Portal/PortalProvider.d.ts +0 -9
- package/utils/Portal/PortalProvider.stories.d.ts +0 -19
- package/utils/Portal/index.d.ts +0 -2
- package/utils/VueToJSX.d.ts +0 -40
- package/utils/action-area/ActionArea.stories.d.ts +0 -28
- package/utils/index.js.map +0 -1
- package/utils/isComponentType.d.ts +0 -6
- package/utils/theme/ResetTheme.d.ts +0 -3
- package/utils/theme/ThemeProvider.d.ts +0 -10
- package/utils/theme/index.d.ts +0 -3
- package/utils/theme/useTheme.d.ts +0 -10
- package/utils/wrapChildrenIconWithSpaces.d.ts +0 -3
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
import { calculateFocusPointStyle, getImageSize } from "../../packages/lumx-core/src/js/components/Thumbnail/utils.js";
|
|
2
|
+
import { computed, nextTick, ref, watch } from "vue";
|
|
3
|
+
//#region src/components/thumbnail/useFocusPointStyle.ts
|
|
4
|
+
/**
|
|
5
|
+
* Vue composable to compute CSS properties for focus point positioning.
|
|
6
|
+
*
|
|
7
|
+
* @param params - Focus point style parameters
|
|
8
|
+
* @returns Computed CSS properties for the image
|
|
9
|
+
*/
|
|
10
|
+
function useFocusPointStyle(params) {
|
|
11
|
+
const { image, aspectRatio, focusPoint, width, height, element, isLoaded } = params;
|
|
12
|
+
const imageSize = computed(() => getImageSize({
|
|
13
|
+
image: image.value,
|
|
14
|
+
aspectRatio: aspectRatio.value,
|
|
15
|
+
focusPoint: focusPoint.value,
|
|
16
|
+
width: width.value,
|
|
17
|
+
height: height.value,
|
|
18
|
+
element: element.value,
|
|
19
|
+
isLoaded: isLoaded.value
|
|
20
|
+
}));
|
|
21
|
+
const containerSize = ref(void 0);
|
|
22
|
+
const updateContainerSize = () => {
|
|
23
|
+
const cWidth = element.value?.offsetWidth;
|
|
24
|
+
const cHeight = element.value?.offsetHeight;
|
|
25
|
+
if (cWidth && cHeight) {
|
|
26
|
+
const oldContainerSize = containerSize.value;
|
|
27
|
+
if (oldContainerSize?.width !== cWidth || oldContainerSize?.height !== cHeight) containerSize.value = {
|
|
28
|
+
width: cWidth,
|
|
29
|
+
height: cHeight
|
|
30
|
+
};
|
|
31
|
+
} else if (imageSize.value) requestAnimationFrame(updateContainerSize);
|
|
32
|
+
};
|
|
33
|
+
watch([
|
|
34
|
+
() => element.value?.offsetWidth,
|
|
35
|
+
() => element.value?.offsetHeight,
|
|
36
|
+
imageSize
|
|
37
|
+
], () => {
|
|
38
|
+
nextTick(updateContainerSize);
|
|
39
|
+
}, { immediate: true });
|
|
40
|
+
return computed(() => calculateFocusPointStyle({
|
|
41
|
+
image: image.value,
|
|
42
|
+
aspectRatio: aspectRatio.value,
|
|
43
|
+
focusPoint: focusPoint.value,
|
|
44
|
+
element: element.value,
|
|
45
|
+
imageSize: imageSize.value,
|
|
46
|
+
containerSize: containerSize.value
|
|
47
|
+
}));
|
|
48
|
+
}
|
|
49
|
+
//#endregion
|
|
50
|
+
export { useFocusPointStyle };
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import { getImageLoadingState } from "../../packages/lumx-core/src/js/components/Thumbnail/utils.js";
|
|
2
|
+
import { onBeforeUnmount, ref, watch } from "vue";
|
|
3
|
+
//#region src/components/thumbnail/useImageLoad.ts
|
|
4
|
+
/**
|
|
5
|
+
* Vue composable to track image loading state.
|
|
6
|
+
*
|
|
7
|
+
* @param imageURL - The URL of the image to track
|
|
8
|
+
* @param imgRef - Reference to the HTML image element
|
|
9
|
+
* @returns The current loading state ('hasError', 'isLoading', or 'isLoaded')
|
|
10
|
+
*/
|
|
11
|
+
function useImageLoad(imageURL, imgRef) {
|
|
12
|
+
const state = ref(getImageLoadingState(imgRef.value));
|
|
13
|
+
watch([imageURL, imgRef], () => {
|
|
14
|
+
state.value = getImageLoadingState(imgRef.value);
|
|
15
|
+
}, { immediate: true });
|
|
16
|
+
const update = (event) => {
|
|
17
|
+
if (imgRef.value) state.value = getImageLoadingState(imgRef.value, event);
|
|
18
|
+
};
|
|
19
|
+
watch(imgRef, (img, oldImg) => {
|
|
20
|
+
if (oldImg) {
|
|
21
|
+
oldImg.removeEventListener("load", update);
|
|
22
|
+
oldImg.removeEventListener("error", update);
|
|
23
|
+
}
|
|
24
|
+
if (img) {
|
|
25
|
+
img.addEventListener("load", update);
|
|
26
|
+
img.addEventListener("error", update);
|
|
27
|
+
}
|
|
28
|
+
}, { immediate: true });
|
|
29
|
+
onBeforeUnmount(() => {
|
|
30
|
+
if (imgRef.value) {
|
|
31
|
+
imgRef.value.removeEventListener("load", update);
|
|
32
|
+
imgRef.value.removeEventListener("error", update);
|
|
33
|
+
}
|
|
34
|
+
});
|
|
35
|
+
return state;
|
|
36
|
+
}
|
|
37
|
+
//#endregion
|
|
38
|
+
export { useImageLoad };
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import { ClassValue } from "../../utils/VueToJSX.js";
|
|
2
|
+
import { SingleSelectTextFieldProps } from "../select-text-field/SelectTextField.js";
|
|
3
|
+
import { TimePickerFieldOwnedSelectProps, TimePickerFieldWrapperProps } from "../../packages/lumx-core/src/js/components/TimePickerField/index.js";
|
|
4
|
+
|
|
5
|
+
//#region src/components/time-picker-field/TimePickerField.d.ts
|
|
6
|
+
/**
|
|
7
|
+
* Inherited SelectTextField props (less the parts owned by TimePickerField).
|
|
8
|
+
*/
|
|
9
|
+
type InheritedSelectTextFieldProps = Omit<SingleSelectTextFieldProps<any>, TimePickerFieldOwnedSelectProps | 'class'>;
|
|
10
|
+
/**
|
|
11
|
+
* `TimePickerField` props.
|
|
12
|
+
*/
|
|
13
|
+
interface TimePickerFieldProps extends InheritedSelectTextFieldProps, TimePickerFieldWrapperProps {
|
|
14
|
+
/** CSS class. */
|
|
15
|
+
class?: ClassValue;
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* A select-style picker for choosing a time of day. Wraps `SelectTextField`
|
|
19
|
+
* with a generated list of times built from `step`, `minTime`, and `maxTime`.
|
|
20
|
+
*
|
|
21
|
+
* Out-of-range options (strictly before `minTime` or after `maxTime`) remain
|
|
22
|
+
* visible in the dropdown but are rendered as disabled.
|
|
23
|
+
*
|
|
24
|
+
* Free-form typed input (e.g. `"10:30 PM"`, `"14"`, `"930"`) is parsed on blur.
|
|
25
|
+
*/
|
|
26
|
+
declare const TimePickerField: import("vue").DefineSetupFnComponent<TimePickerFieldProps, {
|
|
27
|
+
/**
|
|
28
|
+
* Selection change. Payload is the new `Date` whose date part is inherited
|
|
29
|
+
* from the previous `value` (or today, if none) and whose time-of-day
|
|
30
|
+
* matches the user selection. May be `undefined` when the field is cleared.
|
|
31
|
+
*/
|
|
32
|
+
change: (_newValue?: Date) => boolean;
|
|
33
|
+
}, {}, TimePickerFieldProps & {
|
|
34
|
+
onChange?: ((_newValue?: Date | undefined) => any) | undefined;
|
|
35
|
+
}, import("vue").PublicProps>;
|
|
36
|
+
//#endregion
|
|
37
|
+
export { TimePickerField, TimePickerFieldProps };
|
|
@@ -0,0 +1,104 @@
|
|
|
1
|
+
import { useClassName } from "../../composables/useClassName.js";
|
|
2
|
+
import { keysOf } from "../../utils/VueToJSX.js";
|
|
3
|
+
import SelectTextField from "../select-text-field/SelectTextField.js";
|
|
4
|
+
import { SelectTextFieldOption } from "../select-text-field/index.js";
|
|
5
|
+
import { DEFAULT_PROPS, TimePickerField as TimePickerField$1 } from "../../packages/lumx-core/src/js/components/TimePickerField/index.js";
|
|
6
|
+
import { formatTime } from "../../packages/lumx-core/src/js/utils/time/formatTime.js";
|
|
7
|
+
import { getDateAtTime } from "../../packages/lumx-core/src/js/utils/time/getDateAtTime.js";
|
|
8
|
+
import { buildTimeList } from "../../packages/lumx-core/src/js/utils/time/buildTimeList.js";
|
|
9
|
+
import { parseTimeInput } from "../../packages/lumx-core/src/js/utils/time/parseTimeInput.js";
|
|
10
|
+
import { snapTimeToBounds } from "../../packages/lumx-core/src/js/utils/time/snapTimeToBounds.js";
|
|
11
|
+
import { isDateOnTime } from "../../packages/lumx-core/src/js/utils/time/isDateOnTime.js";
|
|
12
|
+
import { getCurrentLocale } from "../../packages/lumx-core/src/js/utils/locale/getCurrentLocale.js";
|
|
13
|
+
import { computed, defineComponent, ref, watch } from "vue";
|
|
14
|
+
/**
|
|
15
|
+
* A select-style picker for choosing a time of day. Wraps `SelectTextField`
|
|
16
|
+
* with a generated list of times built from `step`, `minTime`, and `maxTime`.
|
|
17
|
+
*
|
|
18
|
+
* Out-of-range options (strictly before `minTime` or after `maxTime`) remain
|
|
19
|
+
* visible in the dropdown but are rendered as disabled.
|
|
20
|
+
*
|
|
21
|
+
* Free-form typed input (e.g. `"10:30 PM"`, `"14"`, `"930"`) is parsed on blur.
|
|
22
|
+
*/
|
|
23
|
+
var TimePickerField = /* @__PURE__ */ defineComponent((props, { emit }) => {
|
|
24
|
+
const className = useClassName(() => props.class);
|
|
25
|
+
const locale = computed(() => props.locale ?? getCurrentLocale());
|
|
26
|
+
const step = computed(() => props.step ?? DEFAULT_PROPS.step);
|
|
27
|
+
const boundsMode = computed(() => props.boundsMode ?? DEFAULT_PROPS.boundsMode);
|
|
28
|
+
const timeList = computed(() => buildTimeList({
|
|
29
|
+
step: step.value,
|
|
30
|
+
minTime: props.minTime,
|
|
31
|
+
maxTime: props.maxTime,
|
|
32
|
+
locale: locale.value
|
|
33
|
+
}));
|
|
34
|
+
const committedSearch = ref("");
|
|
35
|
+
const selectedOption = computed(() => {
|
|
36
|
+
const { value } = props;
|
|
37
|
+
if (!value) return void 0;
|
|
38
|
+
return {
|
|
39
|
+
hour: value.getHours(),
|
|
40
|
+
minute: value.getMinutes(),
|
|
41
|
+
name: formatTime(value, locale.value)
|
|
42
|
+
};
|
|
43
|
+
});
|
|
44
|
+
watch(() => [
|
|
45
|
+
boundsMode.value,
|
|
46
|
+
props.value,
|
|
47
|
+
props.minTime,
|
|
48
|
+
props.maxTime
|
|
49
|
+
], () => {
|
|
50
|
+
if (boundsMode.value !== "enforce" || !props.value) return;
|
|
51
|
+
const clamped = snapTimeToBounds({
|
|
52
|
+
hour: props.value.getHours(),
|
|
53
|
+
minute: props.value.getMinutes()
|
|
54
|
+
}, props.minTime, props.maxTime);
|
|
55
|
+
if (clamped.hour !== props.value.getHours() || clamped.minute !== props.value.getMinutes()) emit("change", getDateAtTime(clamped, props.value));
|
|
56
|
+
}, { immediate: true });
|
|
57
|
+
const handleChange = (next) => {
|
|
58
|
+
emit("change", next ? getDateAtTime(next, props.value) : void 0);
|
|
59
|
+
};
|
|
60
|
+
const handleSearch = (typed) => {
|
|
61
|
+
if (typed) committedSearch.value = typed;
|
|
62
|
+
};
|
|
63
|
+
const handleBlur = () => {
|
|
64
|
+
const typed = committedSearch.value;
|
|
65
|
+
committedSearch.value = "";
|
|
66
|
+
if (!typed) return;
|
|
67
|
+
const parsed = parseTimeInput(typed);
|
|
68
|
+
if (!parsed) return;
|
|
69
|
+
const time = snapTimeToBounds(parsed, props.minTime, props.maxTime);
|
|
70
|
+
if (props.value && isDateOnTime(props.value, time)) return;
|
|
71
|
+
emit("change", getDateAtTime(time, props.value));
|
|
72
|
+
};
|
|
73
|
+
return () => {
|
|
74
|
+
const searchInputValue = props.value ? formatTime(props.value, locale.value) : void 0;
|
|
75
|
+
const { value: _value, locale: _locale, step: _step, minTime: _minTime, maxTime: _maxTime, translations, class: _class, ...forwardedProps } = props;
|
|
76
|
+
return TimePickerField$1({
|
|
77
|
+
...forwardedProps,
|
|
78
|
+
value: selectedOption.value,
|
|
79
|
+
options: timeList.value,
|
|
80
|
+
translations,
|
|
81
|
+
className: className.value,
|
|
82
|
+
handleChange,
|
|
83
|
+
handleSearch,
|
|
84
|
+
handleBlur,
|
|
85
|
+
searchInputValue
|
|
86
|
+
}, {
|
|
87
|
+
SelectTextField,
|
|
88
|
+
Option: SelectTextFieldOption
|
|
89
|
+
});
|
|
90
|
+
};
|
|
91
|
+
}, {
|
|
92
|
+
name: "LumxTimePickerField",
|
|
93
|
+
inheritAttrs: false,
|
|
94
|
+
props: keysOf()("value", "locale", "step", "minTime", "maxTime", "boundsMode", "translations", "class", "label", "placeholder", "icon", "isDisabled", "aria-disabled", "isRequired", "hasError", "error", "helper", "id", "name", "isValid", "ariaLabel", "inputProps", "theme", "hasClearButton"),
|
|
95
|
+
emits: {
|
|
96
|
+
/**
|
|
97
|
+
* Selection change. Payload is the new `Date` whose date part is inherited
|
|
98
|
+
* from the previous `value` (or today, if none) and whose time-of-day
|
|
99
|
+
* matches the user selection. May be `undefined` when the field is cleared.
|
|
100
|
+
*/
|
|
101
|
+
change: (_newValue) => true }
|
|
102
|
+
});
|
|
103
|
+
//#endregion
|
|
104
|
+
export { TimePickerField as default };
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { ClassValue, VueToJSXProps } from "../../utils/VueToJSX.js";
|
|
2
|
+
import { TOOLBAR_NAME, ToolbarProps as ToolbarProps$1 } from "../../packages/lumx-core/src/js/components/Toolbar/index.js";
|
|
3
|
+
|
|
4
|
+
//#region src/components/toolbar/Toolbar.d.ts
|
|
5
|
+
type ToolbarProps = VueToJSXProps<ToolbarProps$1, 'label' | 'after' | 'before'>;
|
|
6
|
+
declare const Toolbar: import("vue").DefineSetupFnComponent<ToolbarProps, {}, {}, Omit<ToolbarProps$1, import("@lumx/core/js/types").PropsToOverride | "children" | "className" | "label" | "before" | "after"> & {
|
|
7
|
+
class?: ClassValue;
|
|
8
|
+
} & {}, import("vue").PublicProps>;
|
|
9
|
+
//#endregion
|
|
10
|
+
export { Toolbar, ToolbarProps };
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { useClassName } from "../../composables/useClassName.js";
|
|
2
|
+
import { keysOf } from "../../utils/VueToJSX.js";
|
|
3
|
+
import { Toolbar as Toolbar$1 } from "../../packages/lumx-core/src/js/components/Toolbar/index.js";
|
|
4
|
+
import { createVNode, defineComponent, mergeProps, useAttrs } from "vue";
|
|
5
|
+
//#region src/components/toolbar/Toolbar.tsx
|
|
6
|
+
var Toolbar = /* @__PURE__ */ defineComponent((props, { slots }) => {
|
|
7
|
+
const attrs = useAttrs();
|
|
8
|
+
const className = useClassName(() => props.class);
|
|
9
|
+
return () => {
|
|
10
|
+
return createVNode(Toolbar$1, mergeProps(props, attrs, {
|
|
11
|
+
"className": className.value,
|
|
12
|
+
"label": slots.default?.() ?? attrs.label,
|
|
13
|
+
"before": slots.before?.() ?? attrs.before,
|
|
14
|
+
"after": slots.after?.() ?? attrs.after
|
|
15
|
+
}), null);
|
|
16
|
+
};
|
|
17
|
+
}, {
|
|
18
|
+
name: "LumxToolbar",
|
|
19
|
+
inheritAttrs: false,
|
|
20
|
+
props: keysOf()("class")
|
|
21
|
+
});
|
|
22
|
+
//#endregion
|
|
23
|
+
export { Toolbar as default };
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { ClassValue } from "../../utils/VueToJSX.js";
|
|
2
|
+
import { TooltipPlacement, TooltipProps as TooltipProps$1 } from "../../packages/lumx-core/src/js/components/Tooltip/index.js";
|
|
3
|
+
|
|
4
|
+
//#region src/components/tooltip/Tooltip.d.ts
|
|
5
|
+
/**
|
|
6
|
+
* Defines the props of the component.
|
|
7
|
+
*/
|
|
8
|
+
interface TooltipProps extends TooltipProps$1 {
|
|
9
|
+
/** Class name forwarded to the tooltip popup */
|
|
10
|
+
class?: ClassValue;
|
|
11
|
+
}
|
|
12
|
+
/**
|
|
13
|
+
* Vue Tooltip component.
|
|
14
|
+
* Wraps the shared core TooltipPopup with Vue-specific Floating UI, Portal, and slot injection.
|
|
15
|
+
*/
|
|
16
|
+
declare const Tooltip: import("vue").DefineSetupFnComponent<TooltipProps, {}, {}, TooltipProps & {}, import("vue").PublicProps>;
|
|
17
|
+
//#endregion
|
|
18
|
+
export { Tooltip, TooltipProps };
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
import { useId } from "../../composables/useId.js";
|
|
2
|
+
import { useClassName } from "../../composables/useClassName.js";
|
|
3
|
+
import { keysOf } from "../../utils/VueToJSX.js";
|
|
4
|
+
import { Portal } from "../../utils/Portal/Portal.js";
|
|
5
|
+
import { useCallbackOnEscape } from "../../composables/useCallbackOnEscape.js";
|
|
6
|
+
import { provideTooltipContext } from "./context.js";
|
|
7
|
+
import { autoUpdate, offset } from "../../node_modules/@floating-ui/dom/dist/floating-ui.dom.js";
|
|
8
|
+
import { useFloating } from "../../node_modules/@floating-ui/vue/dist/floating-ui.vue.js";
|
|
9
|
+
import { DEFAULT_PROPS, TooltipPopup } from "../../packages/lumx-core/src/js/components/Tooltip/index.js";
|
|
10
|
+
import { useTooltipOpen } from "./useTooltipOpen.js";
|
|
11
|
+
import { useInjectTooltipRef } from "./useInjectTooltipRef.js";
|
|
12
|
+
import { Fragment, computed, createVNode, defineComponent, isVNode, ref } from "vue";
|
|
13
|
+
//#region src/components/tooltip/Tooltip.tsx
|
|
14
|
+
/**
|
|
15
|
+
* Defines the props of the component.
|
|
16
|
+
*/
|
|
17
|
+
function _isSlot(s) {
|
|
18
|
+
return typeof s === "function" || Object.prototype.toString.call(s) === "[object Object]" && !isVNode(s);
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* Vue Tooltip component.
|
|
22
|
+
* Wraps the shared core TooltipPopup with Vue-specific Floating UI, Portal, and slot injection.
|
|
23
|
+
*/
|
|
24
|
+
var Tooltip = /* @__PURE__ */ defineComponent((props, { slots }) => {
|
|
25
|
+
const id = useId();
|
|
26
|
+
const className = useClassName(() => props.class);
|
|
27
|
+
const anchorElement = ref(null);
|
|
28
|
+
const popperElement = ref(null);
|
|
29
|
+
const placement = computed(() => props.placement || DEFAULT_PROPS.placement);
|
|
30
|
+
const closeMode = computed(() => props.closeMode || DEFAULT_PROPS.closeMode);
|
|
31
|
+
const ariaLinkMode = computed(() => props.ariaLinkMode || DEFAULT_PROPS.ariaLinkMode);
|
|
32
|
+
const zIndex = computed(() => props.zIndex || DEFAULT_PROPS.zIndex);
|
|
33
|
+
const { floatingStyles, placement: resolvedPlacement } = useFloating(anchorElement, popperElement, {
|
|
34
|
+
placement,
|
|
35
|
+
whileElementsMounted: autoUpdate,
|
|
36
|
+
middleware: [offset(8)]
|
|
37
|
+
});
|
|
38
|
+
const { isOpen: isActivated, onPopperMount, manager } = useTooltipOpen(computed(() => props.delay), anchorElement);
|
|
39
|
+
const isOpen = computed(() => (isActivated.value || props.forceOpen) && !!props.label);
|
|
40
|
+
const isMounted = computed(() => !!props.label && (isOpen.value || closeMode.value === "hide"));
|
|
41
|
+
const isHidden = computed(() => !isOpen.value && closeMode.value === "hide");
|
|
42
|
+
useCallbackOnEscape(computed(() => isOpen.value ? () => manager.value?.close() : void 0));
|
|
43
|
+
provideTooltipContext();
|
|
44
|
+
return () => {
|
|
45
|
+
let _slot;
|
|
46
|
+
const position = resolvedPlacement.value ?? placement.value;
|
|
47
|
+
return createVNode(Fragment, null, [useInjectTooltipRef({
|
|
48
|
+
slotContent: slots.default?.(),
|
|
49
|
+
setAnchorElement: (el) => {
|
|
50
|
+
anchorElement.value = el?.$el || el;
|
|
51
|
+
},
|
|
52
|
+
isMounted: isMounted.value,
|
|
53
|
+
id,
|
|
54
|
+
label: props.label,
|
|
55
|
+
ariaLinkMode: ariaLinkMode.value
|
|
56
|
+
}), isMounted.value && createVNode(Portal, null, _isSlot(_slot = TooltipPopup({
|
|
57
|
+
ref: (el) => {
|
|
58
|
+
const element = el?.$el || el;
|
|
59
|
+
popperElement.value = element;
|
|
60
|
+
onPopperMount(element);
|
|
61
|
+
},
|
|
62
|
+
id,
|
|
63
|
+
label: props.label,
|
|
64
|
+
position,
|
|
65
|
+
isHidden: isHidden.value,
|
|
66
|
+
style: isHidden.value ? void 0 : floatingStyles.value,
|
|
67
|
+
zIndex: zIndex.value,
|
|
68
|
+
className: className.value
|
|
69
|
+
})) ? _slot : { default: () => [_slot] })]);
|
|
70
|
+
};
|
|
71
|
+
}, {
|
|
72
|
+
name: "LumxTooltip",
|
|
73
|
+
inheritAttrs: false,
|
|
74
|
+
props: keysOf()("label", "placement", "delay", "forceOpen", "closeMode", "ariaLinkMode", "zIndex", "class")
|
|
75
|
+
});
|
|
76
|
+
//#endregion
|
|
77
|
+
export { Tooltip };
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { inject, provide } from "vue";
|
|
2
|
+
//#region src/components/tooltip/context.ts
|
|
3
|
+
var TOOLTIP_CONTEXT_KEY = Symbol("tooltip-context");
|
|
4
|
+
var DEFAULT_VALUE = {};
|
|
5
|
+
/**
|
|
6
|
+
* Provide tooltip context marker to child components.
|
|
7
|
+
* Used to detect when a component is inside a tooltip (e.g., to prevent nested tooltips).
|
|
8
|
+
*/
|
|
9
|
+
function provideTooltipContext() {
|
|
10
|
+
provide(TOOLTIP_CONTEXT_KEY, DEFAULT_VALUE);
|
|
11
|
+
}
|
|
12
|
+
/**
|
|
13
|
+
* Inject tooltip context marker.
|
|
14
|
+
* Returns the context value if inside a tooltip, undefined otherwise.
|
|
15
|
+
*/
|
|
16
|
+
function useTooltipContext() {
|
|
17
|
+
return inject(TOOLTIP_CONTEXT_KEY, void 0);
|
|
18
|
+
}
|
|
19
|
+
//#endregion
|
|
20
|
+
export { provideTooltipContext, useTooltipContext };
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import { Comment, Fragment, Text, cloneVNode, h } from "vue";
|
|
2
|
+
//#region src/components/tooltip/useInjectTooltipRef.ts
|
|
3
|
+
/**
|
|
4
|
+
* Flatten Fragment nodes from slot content (slots may wrap content in Fragments).
|
|
5
|
+
*/
|
|
6
|
+
function renderSlotFragments(children) {
|
|
7
|
+
return children.flatMap((child) => {
|
|
8
|
+
if (child.type === Fragment) return renderSlotFragments(child.children);
|
|
9
|
+
return [child];
|
|
10
|
+
});
|
|
11
|
+
}
|
|
12
|
+
/**
|
|
13
|
+
* Check if a VNode has isDisabled or disabled props.
|
|
14
|
+
*/
|
|
15
|
+
function isDisabledVNode(vnode) {
|
|
16
|
+
const props = vnode.props || {};
|
|
17
|
+
return props.disabled === true || props.isDisabled === true;
|
|
18
|
+
}
|
|
19
|
+
/**
|
|
20
|
+
* Inject ref and ARIA attributes into tooltip anchor slot content.
|
|
21
|
+
* - For a single non-disabled element slot: clone with injected ref and ARIA attributes.
|
|
22
|
+
* - For text/fragment/multiple children/disabled elements: wrap in a div.
|
|
23
|
+
*/
|
|
24
|
+
function useInjectTooltipRef(options) {
|
|
25
|
+
const { slotContent, setAnchorElement, isMounted, id, label, ariaLinkMode } = options;
|
|
26
|
+
if (!slotContent || !label) return h(Fragment, slotContent);
|
|
27
|
+
const children = renderSlotFragments(slotContent);
|
|
28
|
+
const firstChild = children.find((c) => c.type !== Comment);
|
|
29
|
+
const linkId = isMounted ? id : void 0;
|
|
30
|
+
if (firstChild && children.length === 1 && firstChild.type !== Text && !isDisabledVNode(firstChild)) {
|
|
31
|
+
const extraProps = { ref: setAnchorElement };
|
|
32
|
+
if (linkId && label !== firstChild.props?.["aria-label"]) {
|
|
33
|
+
const existing = firstChild.props?.[ariaLinkMode];
|
|
34
|
+
extraProps[ariaLinkMode] = existing ? `${existing} ${linkId}` : linkId;
|
|
35
|
+
}
|
|
36
|
+
return cloneVNode(firstChild, extraProps, true);
|
|
37
|
+
}
|
|
38
|
+
const wrapperProps = {
|
|
39
|
+
class: "lumx-tooltip-anchor-wrapper",
|
|
40
|
+
ref: setAnchorElement
|
|
41
|
+
};
|
|
42
|
+
if (linkId) wrapperProps[ariaLinkMode] = linkId;
|
|
43
|
+
return h("div", wrapperProps, slotContent);
|
|
44
|
+
}
|
|
45
|
+
//#endregion
|
|
46
|
+
export { useInjectTooltipRef };
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import { createTooltipOpenManager } from "../../packages/lumx-core/src/js/components/Tooltip/tooltipOpenManager.js";
|
|
2
|
+
import { ref, shallowRef, watchEffect } from "vue";
|
|
3
|
+
//#region src/components/tooltip/useTooltipOpen.ts
|
|
4
|
+
/**
|
|
5
|
+
* Vue composable controlling tooltip visibility using mouse hover the anchor and delay.
|
|
6
|
+
*
|
|
7
|
+
* @param delay Delay in millisecond to display the tooltip.
|
|
8
|
+
* @param anchorElement Tooltip anchor element ref.
|
|
9
|
+
* @return whether or not to show the tooltip plus popper mount callback and manager ref.
|
|
10
|
+
*/
|
|
11
|
+
function useTooltipOpen(delay, anchorElement) {
|
|
12
|
+
const isOpen = ref(false);
|
|
13
|
+
const managerRef = shallowRef();
|
|
14
|
+
watchEffect((onCleanup) => {
|
|
15
|
+
const el = anchorElement.value;
|
|
16
|
+
if (!el) return;
|
|
17
|
+
const manager = createTooltipOpenManager({
|
|
18
|
+
delay: delay.value,
|
|
19
|
+
onStateChange: (value) => {
|
|
20
|
+
isOpen.value = value;
|
|
21
|
+
}
|
|
22
|
+
});
|
|
23
|
+
managerRef.value = manager;
|
|
24
|
+
manager.attachAnchor(el);
|
|
25
|
+
onCleanup(() => {
|
|
26
|
+
manager.destroy();
|
|
27
|
+
});
|
|
28
|
+
});
|
|
29
|
+
const onPopperMount = (el) => {
|
|
30
|
+
managerRef.value?.attachPopper(el);
|
|
31
|
+
};
|
|
32
|
+
return {
|
|
33
|
+
isOpen,
|
|
34
|
+
onPopperMount,
|
|
35
|
+
manager: managerRef
|
|
36
|
+
};
|
|
37
|
+
}
|
|
38
|
+
//#endregion
|
|
39
|
+
export { useTooltipOpen };
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { ClassValue, VueToJSXProps } from "../../utils/VueToJSX.js";
|
|
2
|
+
import { UploaderProps as UploaderProps$1, UploaderPropsToOverride, UploaderSize, UploaderVariant } from "../../packages/lumx-core/src/js/components/Uploader/index.js";
|
|
3
|
+
|
|
4
|
+
//#region src/components/uploader/Uploader.d.ts
|
|
5
|
+
type VueFileInputProps = {
|
|
6
|
+
/** Accepted file types. */accept?: string; /** Whether multiple files can be selected. */
|
|
7
|
+
multiple?: boolean; /** Camera capture mode. */
|
|
8
|
+
capture?: boolean | 'user' | 'environment'; /** Native input id (generated if not provided). */
|
|
9
|
+
id?: string;
|
|
10
|
+
};
|
|
11
|
+
type UploaderProps = VueToJSXProps<UploaderProps$1, UploaderPropsToOverride> & {
|
|
12
|
+
/** Handle file selection with a native input file. */fileInputProps?: VueFileInputProps;
|
|
13
|
+
};
|
|
14
|
+
/**
|
|
15
|
+
* Uploader component.
|
|
16
|
+
*
|
|
17
|
+
* @param props Component props.
|
|
18
|
+
* @return Vue element.
|
|
19
|
+
*/
|
|
20
|
+
declare const Uploader: import("vue").DefineSetupFnComponent<UploaderProps, {
|
|
21
|
+
change: (_files: File[], _event?: Event) => boolean;
|
|
22
|
+
}, {}, Omit<UploaderProps$1, import("@lumx/core/js/types").PropsToOverride | "children" | "className" | UploaderPropsToOverride> & {
|
|
23
|
+
class?: ClassValue;
|
|
24
|
+
} & {
|
|
25
|
+
/** Handle file selection with a native input file. */fileInputProps?: VueFileInputProps;
|
|
26
|
+
} & {
|
|
27
|
+
onChange?: ((_files: File[], _event?: Event | undefined) => any) | undefined;
|
|
28
|
+
}, import("vue").PublicProps>;
|
|
29
|
+
//#endregion
|
|
30
|
+
export { Uploader, UploaderProps };
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
import { useId } from "../../composables/useId.js";
|
|
2
|
+
import { useClassName } from "../../composables/useClassName.js";
|
|
3
|
+
import { keysOf } from "../../utils/VueToJSX.js";
|
|
4
|
+
import { useTheme } from "../../utils/theme/useTheme.js";
|
|
5
|
+
import { useDisableStateProps } from "../../composables/useDisableStateProps.js";
|
|
6
|
+
import { Uploader as Uploader$1 } from "../../packages/lumx-core/src/js/components/Uploader/index.js";
|
|
7
|
+
import { computed, createVNode, defineComponent, mergeProps, ref, useAttrs } from "vue";
|
|
8
|
+
/**
|
|
9
|
+
* Uploader component.
|
|
10
|
+
*
|
|
11
|
+
* @param props Component props.
|
|
12
|
+
* @return Vue element.
|
|
13
|
+
*/
|
|
14
|
+
var Uploader = /* @__PURE__ */ defineComponent((props, { emit }) => {
|
|
15
|
+
const attrs = useAttrs();
|
|
16
|
+
const defaultTheme = useTheme();
|
|
17
|
+
const className = useClassName(() => props.class);
|
|
18
|
+
const generatedInputId = useId();
|
|
19
|
+
const inputId = computed(() => props.fileInputProps?.id || generatedInputId);
|
|
20
|
+
const isDragHovering = ref(false);
|
|
21
|
+
const { isAnyDisabled, disabledStateProps, otherProps } = useDisableStateProps(computed(() => ({
|
|
22
|
+
...props,
|
|
23
|
+
...attrs
|
|
24
|
+
})));
|
|
25
|
+
const handleClick = (event) => {
|
|
26
|
+
if (isAnyDisabled.value) {
|
|
27
|
+
event.preventDefault();
|
|
28
|
+
return;
|
|
29
|
+
}
|
|
30
|
+
event.stopImmediatePropagation();
|
|
31
|
+
attrs.onClick?.(event);
|
|
32
|
+
};
|
|
33
|
+
const handleChange = (event) => {
|
|
34
|
+
if (isAnyDisabled.value) return;
|
|
35
|
+
event.stopImmediatePropagation();
|
|
36
|
+
const input = event.target;
|
|
37
|
+
emit("change", input.files ? Array.from(input.files) : [], event);
|
|
38
|
+
};
|
|
39
|
+
return () => {
|
|
40
|
+
const hasFileInput = Boolean(props.fileInputProps);
|
|
41
|
+
const { onClick: _onClick, fileInputProps: _fp, class: _class, theme: _theme, ...restProps } = otherProps.value;
|
|
42
|
+
return createVNode(Uploader$1, mergeProps(restProps, {
|
|
43
|
+
"className": className.value,
|
|
44
|
+
"theme": props.theme || defaultTheme.value,
|
|
45
|
+
"inputId": inputId.value,
|
|
46
|
+
"isAnyDisabled": isAnyDisabled.value,
|
|
47
|
+
"isDragHovering": isDragHovering.value,
|
|
48
|
+
"handleClick": handleClick,
|
|
49
|
+
"handleChange": handleChange,
|
|
50
|
+
"Component": hasFileInput ? "label" : "button",
|
|
51
|
+
"fileInputProps": {
|
|
52
|
+
...props.fileInputProps,
|
|
53
|
+
...disabledStateProps.value,
|
|
54
|
+
readonly: isAnyDisabled.value,
|
|
55
|
+
onDrop: () => {
|
|
56
|
+
isDragHovering.value = false;
|
|
57
|
+
},
|
|
58
|
+
onDragleave: () => {
|
|
59
|
+
isDragHovering.value = false;
|
|
60
|
+
},
|
|
61
|
+
onDragenter: () => {
|
|
62
|
+
isDragHovering.value = true;
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
}, hasFileInput ? { htmlFor: inputId.value } : {
|
|
66
|
+
type: "button",
|
|
67
|
+
...disabledStateProps.value
|
|
68
|
+
}), null);
|
|
69
|
+
};
|
|
70
|
+
}, {
|
|
71
|
+
name: "LumxUploader",
|
|
72
|
+
inheritAttrs: false,
|
|
73
|
+
props: keysOf()("class", "theme", "aspectRatio", "icon", "label", "size", "variant", "isDisabled", "disabled", "aria-disabled", "fileInputProps"),
|
|
74
|
+
emits: { change: (_files, _event) => true }
|
|
75
|
+
});
|
|
76
|
+
//#endregion
|
|
77
|
+
export { Uploader as default };
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { ClassValue, VueToJSXProps } from "../../utils/VueToJSX.js";
|
|
2
|
+
import { AvatarProps } from "../avatar/Avatar.js";
|
|
3
|
+
import { UserBlockProps as UserBlockProps$1, UserBlockPropsToOverride, UserBlockSize } from "../../packages/lumx-core/src/js/components/UserBlock/index.js";
|
|
4
|
+
|
|
5
|
+
//#region src/components/user-block/UserBlock.d.ts
|
|
6
|
+
type UserBlockProps = VueToJSXProps<UserBlockProps$1, UserBlockPropsToOverride | 'handleClick' | 'handleMouseEnter' | 'handleMouseLeave' | 'simpleAction' | 'multipleActions' | 'additionalFields' | 'after'> & {
|
|
7
|
+
/** Props to pass to the avatar. */avatarProps?: Omit<AvatarProps, 'alt'>; /** Props to pass to the link wrapping the avatar thumbnail. */
|
|
8
|
+
linkProps?: Record<string, any>;
|
|
9
|
+
};
|
|
10
|
+
/**
|
|
11
|
+
* UserBlock component.
|
|
12
|
+
*
|
|
13
|
+
* @param props Component props.
|
|
14
|
+
* @return Vue element.
|
|
15
|
+
*/
|
|
16
|
+
declare const UserBlock: import("vue").DefineSetupFnComponent<UserBlockProps, {
|
|
17
|
+
click: () => boolean;
|
|
18
|
+
mouseenter: () => boolean;
|
|
19
|
+
mouseleave: () => boolean;
|
|
20
|
+
}, {}, Omit<UserBlockProps$1, import("@lumx/core/js/types").PropsToOverride | "children" | "className" | "after" | UserBlockPropsToOverride | "simpleAction" | "multipleActions" | "additionalFields"> & {
|
|
21
|
+
class?: ClassValue;
|
|
22
|
+
} & {
|
|
23
|
+
/** Props to pass to the avatar. */avatarProps?: Omit<AvatarProps, "alt">; /** Props to pass to the link wrapping the avatar thumbnail. */
|
|
24
|
+
linkProps?: Record<string, any>;
|
|
25
|
+
} & {
|
|
26
|
+
onClick?: (() => any) | undefined;
|
|
27
|
+
onMouseenter?: (() => any) | undefined;
|
|
28
|
+
onMouseleave?: (() => any) | undefined;
|
|
29
|
+
}, import("vue").PublicProps>;
|
|
30
|
+
//#endregion
|
|
31
|
+
export { UserBlock, UserBlockProps };
|