@livestorm/ui-vue 1.1.2 → 2.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +164 -32
- package/components-vite.js +5 -5
- package/components.d.ts +3 -3
- package/dist/UiTimelineItem.vue_vue_type_style_index_0_lang-DOLFRKcb.mjs +5565 -0
- package/dist/a11y-DIdrv5Mn.mjs +66 -0
- package/dist/breakpoints.mjs +9 -0
- package/dist/bus.mjs +5 -0
- package/dist/components.mjs +213 -1550
- package/dist/index.mjs +84 -166
- package/dist/integrations.mjs +8 -0
- package/dist/layouts.mjs +236 -0
- package/dist/responsive.mjs +25 -0
- package/dist/slot.mjs +21 -0
- package/dist/toastDSV2-wMh-UMzW.mjs +74 -0
- package/dist/types/index.d.ts +84 -0
- package/dist/types/src/components/Toast/LayoutToasts.vue.d.ts +3 -0
- package/dist/types/src/components/Toast/ToastMessage.vue.d.ts +21 -0
- package/dist/types/src/components/Toast/toastDSV2.d.ts +102 -0
- package/dist/types/src/components/UiActionBar/UiActionBar.vue.d.ts +44 -0
- package/dist/types/src/components/UiActionBar/UiActionBarItem.vue.d.ts +47 -0
- package/dist/types/src/components/UiActionBar/UiActionBarSeparator.vue.d.ts +3 -0
- package/dist/types/src/components/UiActionBar/index.d.ts +4 -0
- package/dist/types/src/components/UiActionBar/types.d.ts +14 -0
- package/dist/types/src/components/UiAnimatedLogo/UiAnimatedLogo.vue.d.ts +10 -0
- package/dist/types/src/components/UiAnimatedLogo/animations-links.d.ts +3 -0
- package/dist/types/src/components/UiAvatar/UiAvatar.vue.d.ts +55 -0
- package/dist/types/src/components/UiAvatar/index.d.ts +1 -0
- package/dist/types/src/components/UiAvatarList/UiAvatarList.vue.d.ts +28 -0
- package/dist/types/src/components/UiAvatarList/index.d.ts +1 -0
- package/dist/types/src/components/UiBadge/UiBadge.vue.d.ts +47 -0
- package/dist/types/src/components/UiBadge/index.d.ts +1 -0
- package/dist/types/src/components/UiBanner/UiBanner.vue.d.ts +96 -0
- package/dist/types/src/components/UiBanner/index.d.ts +2 -0
- package/dist/types/src/components/UiBreadcrumb/UiBreadcrumb.vue.d.ts +15 -0
- package/dist/types/src/components/UiBreadcrumb/index.d.ts +2 -0
- package/dist/types/src/components/UiButton/UiButton.vue.d.ts +249 -0
- package/dist/types/src/components/UiButtonGroup/UiButtonGroup.vue.d.ts +42 -0
- package/dist/types/src/components/UiButtonGroup/UiButtonGroupItem.vue.d.ts +21 -0
- package/dist/types/src/components/UiButtonGroup/index.d.ts +3 -0
- package/dist/types/src/components/UiButtonGroup/types.d.ts +10 -0
- package/dist/types/src/components/UiCard/UiCard.vue.d.ts +31 -0
- package/dist/types/src/components/UiCarousel/UiCarousel.vue.d.ts +63 -0
- package/dist/types/src/components/UiCarousel/index.d.ts +2 -0
- package/dist/types/src/components/UiColorField/UiColorField.vue.d.ts +19 -0
- package/dist/types/src/components/UiColorField/index.d.ts +2 -0
- package/dist/types/src/components/UiColorField/types.d.ts +29 -0
- package/dist/types/src/components/UiColorPicker/UiColorPicker.vue.d.ts +35 -0
- package/dist/types/src/components/UiColorPicker/index.d.ts +2 -0
- package/dist/types/src/components/UiColorPicker/types.d.ts +97 -0
- package/dist/types/src/components/UiDialog/MarketplaceHeaderExample.vue.d.ts +28 -0
- package/dist/types/src/components/UiDialog/UiDialog.vue.d.ts +18 -0
- package/dist/types/src/components/UiDialog/UiDialogClose.vue.d.ts +10 -0
- package/dist/types/src/components/UiDialog/UiDialogContent.vue.d.ts +54 -0
- package/dist/types/src/components/UiDialog/UiDialogFooter.vue.d.ts +13 -0
- package/dist/types/src/components/UiDialog/UiDialogTrigger.vue.d.ts +14 -0
- package/dist/types/src/components/UiDialog/index.d.ts +7 -0
- package/dist/types/src/components/UiDropdown/UiDropdown.vue.d.ts +42 -0
- package/dist/types/src/components/UiDropdown/UiDropdownContent.vue.d.ts +32 -0
- package/dist/types/src/components/UiDropdown/UiDropdownItem.vue.d.ts +27 -0
- package/dist/types/src/components/UiDropdown/UiDropdownSeparator.vue.d.ts +3 -0
- package/dist/types/src/components/UiDropdown/UiDropdownTrigger.vue.d.ts +45 -0
- package/dist/types/src/components/UiDropdown/context.d.ts +7 -0
- package/dist/types/src/components/UiDropdown/index.d.ts +6 -0
- package/dist/types/src/components/UiEmptyState/UiEmptyState.vue.d.ts +29 -0
- package/dist/types/src/components/UiFieldWrapper/UiFieldWrapper.vue.d.ts +36 -0
- package/dist/types/src/components/UiFieldWrapper/index.d.ts +1 -0
- package/dist/types/src/components/UiForm/UiFormField.types.d.ts +22 -0
- package/dist/types/src/components/UiForm/UiFormField.vue.d.ts +34 -0
- package/dist/types/src/components/UiForm/index.d.ts +3 -0
- package/dist/types/src/components/UiHorizontalSeparator/UiHorizontalSeparator.vue.d.ts +6 -0
- package/dist/types/src/components/UiInputCheckbox/UiInputCheckbox.vue.d.ts +108 -0
- package/dist/types/src/components/UiInputCheckbox/index.d.ts +2 -0
- package/dist/types/src/components/UiInputCheckbox/types.d.ts +1 -0
- package/dist/types/src/components/UiInputSelect/UiInputSelect.vue.d.ts +66 -0
- package/dist/types/src/components/UiInputSelect/index.d.ts +2 -0
- package/dist/types/src/components/UiInputSelect/types.d.ts +1 -0
- package/dist/types/src/components/UiInputTextarea/UiInputTextarea.vue.d.ts +49 -0
- package/dist/types/src/components/UiInputTextarea/index.d.ts +2 -0
- package/dist/types/src/components/UiInputTextarea/types.d.ts +1 -0
- package/dist/types/src/components/UiLabel/UiLabel.vue.d.ts +17 -0
- package/dist/types/src/components/UiList/UiList.vue.d.ts +27 -0
- package/dist/types/src/components/UiListItem/UiListItem.vue.d.ts +35 -0
- package/dist/types/src/components/UiLoader/UiLoader.vue.d.ts +17 -0
- package/dist/types/src/components/UiLogo/UiLogo.vue.d.ts +20 -0
- package/dist/types/src/components/UiLogo/variants/PulseVariant.vue.d.ts +3 -0
- package/dist/types/src/components/UiLogo/variants/TornadoVariant.vue.d.ts +3 -0
- package/dist/types/src/components/UiMenu/UiMenu.vue.d.ts +18 -0
- package/dist/types/src/components/UiMenu/UiMenuContent.vue.d.ts +30 -0
- package/dist/types/src/components/UiMenu/UiMenuGroup.vue.d.ts +16 -0
- package/dist/types/src/components/UiMenu/UiMenuItem.vue.d.ts +18 -0
- package/dist/types/src/components/UiMenu/UiMenuLabel.vue.d.ts +13 -0
- package/dist/types/src/components/UiMenu/UiMenuSeparator.vue.d.ts +13 -0
- package/dist/types/src/components/UiMenu/UiMenuSub.vue.d.ts +18 -0
- package/dist/types/src/components/UiMenu/UiMenuSubContent.vue.d.ts +32 -0
- package/dist/types/src/components/UiMenu/UiMenuSubTrigger.vue.d.ts +14 -0
- package/dist/types/src/components/UiMenu/UiMenuTrigger.vue.d.ts +14 -0
- package/dist/types/src/components/UiMenu/index.d.ts +10 -0
- package/dist/types/src/components/UiPage/UiPage.vue.d.ts +37 -0
- package/dist/types/src/components/UiPageHeader/UiPageHeader.vue.d.ts +33 -0
- package/dist/types/src/components/UiPopover/UiPopover.vue.d.ts +18 -0
- package/dist/types/src/components/UiPopover/UiPopoverAnchor.vue.d.ts +14 -0
- package/dist/types/src/components/UiPopover/UiPopoverContent.vue.d.ts +28 -0
- package/dist/types/src/components/UiPopover/UiPopoverTrigger.vue.d.ts +14 -0
- package/dist/types/src/components/UiProgress/UiProgress.vue.d.ts +15 -0
- package/dist/types/src/components/UiProgress/index.d.ts +2 -0
- package/dist/types/src/components/UiProgress/types.d.ts +4 -0
- package/dist/types/src/components/UiRoomButton/UiRoomButton.vue.d.ts +29 -0
- package/dist/types/src/components/UiShell/UiShell.vue.d.ts +24 -0
- package/dist/types/src/components/UiSideMenu/UiSideMenu.vue.d.ts +64 -0
- package/dist/types/src/components/UiSideMenu/UiSideMenuBottom.vue.d.ts +7 -0
- package/dist/types/src/components/UiSideMenu/UiSideMenuItem.vue.d.ts +53 -0
- package/dist/types/src/components/UiSideMenu/UiSideMenuItemContent.vue.d.ts +43 -0
- package/dist/types/src/components/UiSideMenu/UiSideMenuTop.vue.d.ts +7 -0
- package/dist/types/src/components/UiSideMenu/injection.d.ts +7 -0
- package/dist/types/src/components/UiSideMenu/types.d.ts +39 -0
- package/dist/types/src/components/UiSideMenu/useLabelHidden.d.ts +2 -0
- package/dist/types/src/components/UiSideMenu/useSideMenuLayout.d.ts +7 -0
- package/dist/types/src/components/UiStepper/UiStepper.vue.d.ts +18 -0
- package/dist/types/src/components/UiStepper/UiStepperDescription.vue.d.ts +14 -0
- package/dist/types/src/components/UiStepper/UiStepperIndicator.vue.d.ts +20 -0
- package/dist/types/src/components/UiStepper/UiStepperItem.vue.d.ts +19 -0
- package/dist/types/src/components/UiStepper/UiStepperSeparator.vue.d.ts +10 -0
- package/dist/types/src/components/UiStepper/UiStepperTitle.vue.d.ts +14 -0
- package/dist/types/src/components/UiStepper/index.d.ts +7 -0
- package/dist/types/src/components/UiTable/UiTable.vue.d.ts +20 -0
- package/dist/types/src/components/UiTable/UiTableBody.vue.d.ts +13 -0
- package/dist/types/src/components/UiTable/UiTableCell.vue.d.ts +13 -0
- package/dist/types/src/components/UiTable/UiTableHeader.vue.d.ts +13 -0
- package/dist/types/src/components/UiTable/UiTableHeaderCell.vue.d.ts +13 -0
- package/dist/types/src/components/UiTable/UiTableRow.vue.d.ts +16 -0
- package/dist/types/src/components/UiTable/index.d.ts +6 -0
- package/dist/types/src/components/UiTabs/UiTabs.vue.d.ts +37 -0
- package/dist/types/src/components/UiTabs/index.d.ts +2 -0
- package/dist/types/src/components/UiTag/UiTag.vue.d.ts +43 -0
- package/dist/types/src/components/UiTag/index.d.ts +1 -0
- package/dist/types/src/components/UiTextField/UiTextField.vue.d.ts +65 -0
- package/dist/types/src/components/UiTextField/index.d.ts +2 -0
- package/dist/types/src/components/UiTextField/types.d.ts +2 -0
- package/dist/types/src/components/UiTimeline/UiTimeline.vue.d.ts +19 -0
- package/dist/types/src/components/UiTimeline/UiTimelineItem.vue.d.ts +28 -0
- package/dist/types/src/components/UiTimeline/index.d.ts +2 -0
- package/dist/types/src/components/UiTooltip/UiTooltip.vue.d.ts +18 -0
- package/dist/types/src/components/UiTooltip/UiTooltipContent.vue.d.ts +54 -0
- package/dist/types/src/components/UiTooltip/UiTooltipProvider.vue.d.ts +17 -0
- package/dist/types/src/components/UiTooltip/UiTooltipTrigger.vue.d.ts +14 -0
- package/dist/types/src/components/UiTooltip/index.d.ts +4 -0
- package/dist/types/src/composables/useButtonStyles.d.ts +20 -0
- package/dist/types/src/composables/useMobileMenu.d.ts +11 -0
- package/dist/types/src/composables/useThemeAndModes.d.ts +34 -0
- package/dist/types/src/constants/index.d.ts +2 -0
- package/dist/types/src/constants/sizes.d.ts +2 -0
- package/dist/types/src/constants/themes.d.ts +22 -0
- package/dist/types/src/integrations/index.d.ts +1 -0
- package/dist/types/src/layouts/index.d.ts +2 -0
- package/dist/types/src/mixins/DynamicAction.d.ts +30 -0
- package/dist/types/src/primitives.d.ts +6 -0
- package/dist/types/src/theme.d.ts +1 -0
- package/dist/types/src/utils/a11y.d.ts +2 -0
- package/dist/types/src/utils/breakpoints.d.ts +9 -0
- package/dist/types/src/utils/bus.d.ts +2 -0
- package/dist/types/src/utils/clipboard.d.ts +4 -0
- package/dist/types/src/utils/devices.d.ts +19 -0
- package/dist/types/src/utils/elements.d.ts +1 -0
- package/dist/types/src/utils/index.d.ts +9 -0
- package/dist/types/src/utils/numbers.d.ts +30 -0
- package/dist/types/src/utils/responsive.d.ts +5 -0
- package/dist/types/src/utils/responsive.types.d.ts +12 -0
- package/dist/types/src/utils/router.d.ts +1 -0
- package/dist/types/src/utils/slot.d.ts +8 -0
- package/dist/types/src/utils/stack-view.d.ts +10 -0
- package/dist/types/src/utils/uid.d.ts +1 -0
- package/dist/types/style.d.ts +1 -0
- package/dist/ui-vue.css +1 -0
- package/dist/useThemeAndModes-DY5SDC0a.mjs +109 -0
- package/dist/utils.mjs +111 -0
- package/index.d.ts +88 -2
- package/index.js +169 -16
- package/integrations.d.ts +10 -0
- package/package.json +127 -58
- package/src/components/Toast/LayoutToasts.vue +63 -0
- package/src/components/Toast/ToastMessage.vue +208 -0
- package/src/components/Toast/toastDSV2.ts +151 -0
- package/src/components/UiActionBar/UiActionBar.vue +86 -0
- package/src/components/UiActionBar/UiActionBarItem.vue +179 -0
- package/src/components/UiActionBar/UiActionBarSeparator.vue +18 -0
- package/src/components/UiActionBar/index.ts +4 -0
- package/src/components/UiActionBar/types.ts +24 -0
- package/src/components/UiAnimatedLogo/UiAnimatedLogo.vue +47 -0
- package/src/components/UiAnimatedLogo/animations-links.ts +6 -0
- package/src/components/UiAvatar/UiAvatar.vue +186 -0
- package/src/components/UiAvatar/index.js +1 -0
- package/src/components/UiAvatarList/UiAvatarList.vue +109 -0
- package/src/components/UiAvatarList/index.js +1 -0
- package/src/components/UiBadge/UiBadge.vue +161 -0
- package/src/components/UiBadge/index.ts +2 -0
- package/src/components/UiBanner/UiBanner.vue +363 -0
- package/src/components/UiBanner/index.ts +2 -0
- package/src/components/UiBreadcrumb/UiBreadcrumb.vue +93 -0
- package/src/components/UiBreadcrumb/index.ts +2 -0
- package/src/components/UiButton/UiButton.vue +319 -0
- package/src/components/UiButtonGroup/UiButtonGroup.vue +198 -0
- package/src/components/UiButtonGroup/UiButtonGroupItem.vue +123 -0
- package/src/components/UiButtonGroup/index.ts +3 -0
- package/src/components/UiButtonGroup/types.ts +24 -0
- package/src/components/UiCard/UiCard.vue +112 -0
- package/src/components/UiCarousel/UiCarousel.vue +215 -0
- package/src/components/UiCarousel/index.ts +2 -0
- package/src/components/UiColorField/UiColorField.vue +158 -0
- package/src/components/UiColorField/index.ts +2 -0
- package/src/components/UiColorField/types.ts +30 -0
- package/src/components/UiColorPicker/UiColorPicker.vue +487 -0
- package/src/components/UiColorPicker/index.ts +2 -0
- package/src/components/UiColorPicker/types.ts +103 -0
- package/src/components/UiDialog/MarketplaceHeaderExample.vue +217 -0
- package/src/components/UiDialog/UiDialog.md +97 -0
- package/src/components/UiDialog/UiDialog.vue +16 -0
- package/src/components/UiDialog/UiDialogClose.vue +29 -0
- package/src/components/UiDialog/UiDialogContent.vue +238 -0
- package/src/components/UiDialog/UiDialogFooter.vue +9 -0
- package/src/components/UiDialog/UiDialogTrigger.vue +12 -0
- package/src/components/UiDialog/index.ts +18 -0
- package/src/components/UiDropdown/UiDropdown.vue +48 -0
- package/src/components/UiDropdown/UiDropdownContent.vue +72 -0
- package/src/components/UiDropdown/UiDropdownItem.vue +75 -0
- package/src/components/UiDropdown/UiDropdownSeparator.vue +7 -0
- package/src/components/UiDropdown/UiDropdownTrigger.vue +239 -0
- package/src/components/UiDropdown/context.ts +9 -0
- package/src/components/UiDropdown/index.ts +21 -0
- package/src/components/UiEmptyState/UiEmptyState.vue +80 -0
- package/src/components/UiFieldWrapper/UiFieldWrapper.vue +79 -0
- package/src/components/UiFieldWrapper/index.ts +1 -0
- package/src/components/UiForm/UiFormField.types.ts +24 -0
- package/src/components/UiForm/UiFormField.vue +66 -0
- package/src/components/UiForm/index.ts +3 -0
- package/src/components/UiHorizontalSeparator/UiHorizontalSeparator.vue +28 -0
- package/src/components/UiInputCheckbox/UiInputCheckbox.vue +477 -0
- package/src/components/UiInputCheckbox/index.ts +2 -0
- package/src/components/UiInputCheckbox/types.ts +1 -0
- package/src/components/UiInputSelect/UiInputSelect.vue +166 -0
- package/src/components/UiInputSelect/index.ts +2 -0
- package/src/components/UiInputSelect/types.ts +1 -0
- package/src/components/UiInputTextarea/UiInputTextarea.vue +219 -0
- package/src/components/UiInputTextarea/index.ts +2 -0
- package/src/components/UiInputTextarea/types.ts +1 -0
- package/src/components/UiLabel/UiLabel.vue +34 -0
- package/src/components/UiList/UiList.vue +45 -0
- package/src/components/UiListItem/UiListItem.vue +108 -0
- package/src/components/UiLoader/UiLoader.vue +45 -0
- package/src/components/UiLogo/UiLogo.vue +99 -0
- package/src/components/UiLogo/variants/PulseVariant.vue +51 -0
- package/src/components/UiLogo/variants/TornadoVariant.vue +147 -0
- package/src/components/UiMenu/UiMenu.vue +15 -0
- package/src/components/UiMenu/UiMenuContent.vue +25 -0
- package/src/components/UiMenu/UiMenuGroup.vue +19 -0
- package/src/components/UiMenu/UiMenuItem.vue +18 -0
- package/src/components/UiMenu/UiMenuLabel.vue +9 -0
- package/src/components/UiMenu/UiMenuSeparator.vue +9 -0
- package/src/components/UiMenu/UiMenuSub.vue +15 -0
- package/src/components/UiMenu/UiMenuSubContent.vue +23 -0
- package/src/components/UiMenu/UiMenuSubTrigger.vue +17 -0
- package/src/components/UiMenu/UiMenuTrigger.vue +13 -0
- package/src/components/UiMenu/index.ts +10 -0
- package/src/components/UiPage/UiPage.vue +201 -0
- package/src/components/UiPageHeader/UiPageHeader.vue +128 -0
- package/src/components/UiPopover/UiPopover.vue +16 -0
- package/src/components/UiPopover/UiPopoverAnchor.vue +12 -0
- package/src/components/UiPopover/UiPopoverContent.vue +26 -0
- package/src/components/UiPopover/UiPopoverTrigger.vue +19 -0
- package/src/components/UiProgress/UiProgress.vue +92 -0
- package/src/components/UiProgress/index.ts +2 -0
- package/src/components/UiProgress/types.ts +5 -0
- package/src/components/UiRoomButton/UiRoomButton.vue +240 -0
- package/src/components/UiShell/UiShell.vue +88 -0
- package/src/components/UiSideMenu/UiSideMenu.vue +513 -0
- package/src/components/UiSideMenu/UiSideMenuBottom.vue +27 -0
- package/src/components/UiSideMenu/UiSideMenuItem.vue +102 -0
- package/src/components/UiSideMenu/UiSideMenuItemContent.vue +172 -0
- package/src/components/UiSideMenu/UiSideMenuTop.vue +29 -0
- package/src/components/UiSideMenu/injection.ts +9 -0
- package/src/components/UiSideMenu/types.ts +41 -0
- package/src/components/UiSideMenu/useLabelHidden.ts +33 -0
- package/src/components/UiSideMenu/useSideMenuLayout.ts +12 -0
- package/src/components/UiStepper/UiStepper.vue +40 -0
- package/src/components/UiStepper/UiStepperDescription.vue +27 -0
- package/src/components/UiStepper/UiStepperIndicator.vue +93 -0
- package/src/components/UiStepper/UiStepperItem.vue +30 -0
- package/src/components/UiStepper/UiStepperSeparator.vue +49 -0
- package/src/components/UiStepper/UiStepperTitle.vue +24 -0
- package/src/components/UiStepper/index.ts +17 -0
- package/src/components/UiTable/UiTable.vue +24 -0
- package/src/components/UiTable/UiTableBody.vue +5 -0
- package/src/components/UiTable/UiTableCell.vue +26 -0
- package/src/components/UiTable/UiTableHeader.vue +17 -0
- package/src/components/UiTable/UiTableHeaderCell.vue +19 -0
- package/src/components/UiTable/UiTableRow.vue +27 -0
- package/src/components/UiTable/index.ts +6 -0
- package/src/components/UiTabs/UiTabs.vue +218 -0
- package/src/components/UiTabs/index.ts +5 -0
- package/src/components/UiTag/UiTag.vue +187 -0
- package/src/components/UiTag/index.js +1 -0
- package/src/components/UiTextField/UiTextField.vue +370 -0
- package/src/components/UiTextField/index.ts +2 -0
- package/src/components/UiTextField/types.ts +2 -0
- package/src/components/UiTimeline/README.md +169 -0
- package/src/components/UiTimeline/UiTimeline.vue +58 -0
- package/src/components/UiTimeline/UiTimelineItem.vue +141 -0
- package/src/components/UiTimeline/index.ts +2 -0
- package/src/components/UiTooltip/UiTooltip.vue +16 -0
- package/src/components/UiTooltip/UiTooltipContent.vue +86 -0
- package/src/components/UiTooltip/UiTooltipProvider.vue +15 -0
- package/src/components/UiTooltip/UiTooltipTrigger.vue +19 -0
- package/src/components/UiTooltip/index.js +4 -0
- package/src/composables/useButtonStyles.ts +242 -0
- package/src/composables/useMobileMenu.ts +57 -0
- package/src/composables/useThemeAndModes.ts +225 -0
- package/src/constants/index.ts +2 -0
- package/src/constants/sizes.ts +2 -0
- package/src/constants/themes.ts +34 -0
- package/src/css/{body.postcss → body.css} +3 -2
- package/src/css/reka-animations.css +209 -0
- package/src/css/{transitions.postcss → transitions.css} +12 -5
- package/src/global.d.ts +181 -0
- package/src/integrations/index.js +1 -0
- package/src/layouts/index.js +5 -0
- package/src/mixins/DynamicAction.js +5 -3
- package/src/primitives.ts +6 -0
- package/src/theme.ts +1 -0
- package/src/utils/a11y.ts +8 -0
- package/src/utils/{breakpoints.js → breakpoints.ts} +1 -0
- package/src/utils/clipboard.js +2 -2
- package/src/utils/devices.js +0 -3
- package/src/utils/index.js +2 -1
- package/src/utils/numbers.ts +61 -0
- package/src/utils/responsive.types.ts +12 -0
- package/src/utils/{slot.js → slot.ts} +18 -1
- package/style.js +3 -12
- package/theme.d.ts +1 -0
- package/.env +0 -1
- package/.eslintignore +0 -4
- package/.eslintrc.js +0 -47
- package/.pkg +0 -11
- package/babel.config.js +0 -5
- package/build/Dockerfile +0 -31
- package/ci/ci.yml +0 -54
- package/components-webpack.js +0 -29
- package/dist/environment-e70e5768.mjs +0 -1664
- package/dist/style.css +0 -1
- package/plugins.js +0 -17
- package/postcss.config.js +0 -1
- package/src/components/BaseAutocomplete/BaseAutocomplete.spec.js +0 -506
- package/src/components/BaseAutocomplete/BaseAutocomplete.stories.js +0 -184
- package/src/components/BaseAutocomplete/BaseAutocomplete.vue +0 -431
- package/src/components/BaseBanner/BaseBanner.spec.js +0 -32
- package/src/components/BaseBanner/BaseBanner.stories.js +0 -133
- package/src/components/BaseBanner/BaseBanner.vue +0 -229
- package/src/components/BaseButton/BaseButton.spec.js +0 -98
- package/src/components/BaseButton/BaseButton.stories.js +0 -291
- package/src/components/BaseButton/BaseButton.vue +0 -193
- package/src/components/BaseButton/__snapshots__/BaseButton.spec.js.snap +0 -37
- package/src/components/BaseButton/__snapshots__/BaseButton.spec.js.snap.old +0 -31
- package/src/components/BaseCheckbox/BaseCheckbox.stories.js +0 -82
- package/src/components/BaseCheckbox/BaseCheckbox.vue +0 -161
- package/src/components/BaseDropdownMenu/BaseDropdownMenu.stories.js +0 -84
- package/src/components/BaseDropdownMenu/BaseDropdownMenu.vue +0 -251
- package/src/components/BaseDropdownMenu/BaseDropdownMenuButton.vue +0 -26
- package/src/components/BaseDropdownMenu/BaseDropdownMenuDivider.vue +0 -10
- package/src/components/BaseDropdownMenu/BaseDropdownMenuItem.vue +0 -206
- package/src/components/BaseDropdownMenu/BaseDropdownMenuSearch.vue +0 -49
- package/src/components/BaseDropdownMenu/BaseDropdownMenuTitle.vue +0 -26
- package/src/components/BaseModal/BaseModal.stories.js +0 -143
- package/src/components/BaseModal/BaseModal.vue +0 -187
- package/src/components/BaseModal/BaseModalContent.vue +0 -164
- package/src/components/BaseModal/BaseModalContentOld.vue +0 -242
- package/src/components/BaseRating/BaseRating.spec.js +0 -46
- package/src/components/BaseRating/BaseRating.stories.js +0 -46
- package/src/components/BaseRating/BaseRating.vue +0 -119
- package/src/components/BaseSelect/BaseSelect.stories.js +0 -177
- package/src/components/BaseSelect/BaseSelect.vue +0 -443
- package/src/components/BaseSelect/BaseSelectGroup.vue +0 -34
- package/src/components/BaseSelect/BaseSelectOption.vue +0 -219
- package/src/components/BaseSwitch/BaseSwitch.stories.js +0 -44
- package/src/components/BaseSwitch/BaseSwitch.vue +0 -114
- package/src/components/BaseTag/BaseTag.stories.js +0 -123
- package/src/components/BaseTag/BaseTag.vue +0 -244
- package/src/css/button.postcss +0 -354
- package/src/css/checkbox-radio.postcss +0 -152
- package/src/css/icon.postcss +0 -9
- package/src/css/loader.postcss +0 -120
- package/src/css/popper.postcss +0 -143
- package/src/css/tailwind-utilities.postcss +0 -1
- package/src/css/tailwind.postcss +0 -2
- package/style-postcss.d.ts +0 -3
- package/style-postcss.js +0 -2
- package/tailwind.config.base.cjs +0 -88
- package/tailwind.config.js +0 -9
- package/tsconfig.check.json +0 -13
- package/tsconfig.json +0 -66
- package/vite.config.js +0 -43
- package/vitest.setup.js +0 -26
package/src/global.d.ts
ADDED
|
@@ -0,0 +1,181 @@
|
|
|
1
|
+
import type { RenderSlot } from './utils/slot'
|
|
2
|
+
import type UiActionBar from './components/UiActionBar/UiActionBar.vue'
|
|
3
|
+
import type UiActionBarItem from './components/UiActionBar/UiActionBarItem.vue'
|
|
4
|
+
import type UiActionBarSeparator from './components/UiActionBar/UiActionBarSeparator.vue'
|
|
5
|
+
import type UiAnimatedLogo from './components/UiAnimatedLogo/UiAnimatedLogo.vue'
|
|
6
|
+
import type UiAvatar from './components/UiAvatar/UiAvatar.vue'
|
|
7
|
+
import type UiAvatarList from './components/UiAvatarList/UiAvatarList.vue'
|
|
8
|
+
import type UiBadge from './components/UiBadge/UiBadge.vue'
|
|
9
|
+
import type UiBanner from './components/UiBanner/UiBanner.vue'
|
|
10
|
+
import type UiBreadcrumb from './components/UiBreadcrumb/UiBreadcrumb.vue'
|
|
11
|
+
import type UiButton from './components/UiButton/UiButton.vue'
|
|
12
|
+
import type UiButtonGroup from './components/UiButtonGroup/UiButtonGroup.vue'
|
|
13
|
+
import type UiButtonGroupItem from './components/UiButtonGroup/UiButtonGroupItem.vue'
|
|
14
|
+
import type UiCard from './components/UiCard/UiCard.vue'
|
|
15
|
+
import type UiCarousel from './components/UiCarousel/UiCarousel.vue'
|
|
16
|
+
import type UiColorField from './components/UiColorField/UiColorField.vue'
|
|
17
|
+
import type UiColorPicker from './components/UiColorPicker/UiColorPicker.vue'
|
|
18
|
+
import type UiDialog from './components/UiDialog/UiDialog.vue'
|
|
19
|
+
import type UiDialogClose from './components/UiDialog/UiDialogClose.vue'
|
|
20
|
+
import type UiDialogContent from './components/UiDialog/UiDialogContent.vue'
|
|
21
|
+
import type UiDialogFooter from './components/UiDialog/UiDialogFooter.vue'
|
|
22
|
+
import type UiDialogTrigger from './components/UiDialog/UiDialogTrigger.vue'
|
|
23
|
+
import type UiDropdown from './components/UiDropdown/UiDropdown.vue'
|
|
24
|
+
import type UiDropdownContent from './components/UiDropdown/UiDropdownContent.vue'
|
|
25
|
+
import type UiDropdownItem from './components/UiDropdown/UiDropdownItem.vue'
|
|
26
|
+
import type UiDropdownSeparator from './components/UiDropdown/UiDropdownSeparator.vue'
|
|
27
|
+
import type UiDropdownTrigger from './components/UiDropdown/UiDropdownTrigger.vue'
|
|
28
|
+
import type UiEmptyState from './components/UiEmptyState/UiEmptyState.vue'
|
|
29
|
+
import type UiFieldWrapper from './components/UiFieldWrapper/UiFieldWrapper.vue'
|
|
30
|
+
import type UiFormField from './components/UiForm/UiFormField.vue'
|
|
31
|
+
import type UiHorizontalSeparator from './components/UiHorizontalSeparator/UiHorizontalSeparator.vue'
|
|
32
|
+
import type UiInputCheckbox from './components/UiInputCheckbox/UiInputCheckbox.vue'
|
|
33
|
+
import type UiInputSelect from './components/UiInputSelect/UiInputSelect.vue'
|
|
34
|
+
import type UiInputTextarea from './components/UiInputTextarea/UiInputTextarea.vue'
|
|
35
|
+
import type UiLabel from './components/UiLabel/UiLabel.vue'
|
|
36
|
+
import type UiList from './components/UiList/UiList.vue'
|
|
37
|
+
import type UiListItem from './components/UiListItem/UiListItem.vue'
|
|
38
|
+
import type UiLoader from './components/UiLoader/UiLoader.vue'
|
|
39
|
+
import type UiLogo from './components/UiLogo/UiLogo.vue'
|
|
40
|
+
import type UiMenu from './components/UiMenu/UiMenu.vue'
|
|
41
|
+
import type UiMenuContent from './components/UiMenu/UiMenuContent.vue'
|
|
42
|
+
import type UiMenuGroup from './components/UiMenu/UiMenuGroup.vue'
|
|
43
|
+
import type UiMenuItem from './components/UiMenu/UiMenuItem.vue'
|
|
44
|
+
import type UiMenuLabel from './components/UiMenu/UiMenuLabel.vue'
|
|
45
|
+
import type UiMenuSeparator from './components/UiMenu/UiMenuSeparator.vue'
|
|
46
|
+
import type UiMenuSub from './components/UiMenu/UiMenuSub.vue'
|
|
47
|
+
import type UiMenuSubContent from './components/UiMenu/UiMenuSubContent.vue'
|
|
48
|
+
import type UiMenuSubTrigger from './components/UiMenu/UiMenuSubTrigger.vue'
|
|
49
|
+
import type UiMenuTrigger from './components/UiMenu/UiMenuTrigger.vue'
|
|
50
|
+
import type UiPage from './components/UiPage/UiPage.vue'
|
|
51
|
+
import type UiPageHeader from './components/UiPageHeader/UiPageHeader.vue'
|
|
52
|
+
import type UiPopover from './components/UiPopover/UiPopover.vue'
|
|
53
|
+
import type UiPopoverAnchor from './components/UiPopover/UiPopoverAnchor.vue'
|
|
54
|
+
import type UiPopoverContent from './components/UiPopover/UiPopoverContent.vue'
|
|
55
|
+
import type UiPopoverTrigger from './components/UiPopover/UiPopoverTrigger.vue'
|
|
56
|
+
import type UiProgress from './components/UiProgress/UiProgress.vue'
|
|
57
|
+
import type UiRoomButton from './components/UiRoomButton/UiRoomButton.vue'
|
|
58
|
+
import type UiShell from './components/UiShell/UiShell.vue'
|
|
59
|
+
import type UiSideMenu from './components/UiSideMenu/UiSideMenu.vue'
|
|
60
|
+
import type UiSideMenuBottom from './components/UiSideMenu/UiSideMenuBottom.vue'
|
|
61
|
+
import type UiSideMenuItem from './components/UiSideMenu/UiSideMenuItem.vue'
|
|
62
|
+
import type UiSideMenuItemContent from './components/UiSideMenu/UiSideMenuItemContent.vue'
|
|
63
|
+
import type UiSideMenuTop from './components/UiSideMenu/UiSideMenuTop.vue'
|
|
64
|
+
import type UiStepper from './components/UiStepper/UiStepper.vue'
|
|
65
|
+
import type UiStepperDescription from './components/UiStepper/UiStepperDescription.vue'
|
|
66
|
+
import type UiStepperIndicator from './components/UiStepper/UiStepperIndicator.vue'
|
|
67
|
+
import type UiStepperItem from './components/UiStepper/UiStepperItem.vue'
|
|
68
|
+
import type UiStepperSeparator from './components/UiStepper/UiStepperSeparator.vue'
|
|
69
|
+
import type UiStepperTitle from './components/UiStepper/UiStepperTitle.vue'
|
|
70
|
+
import type UiTable from './components/UiTable/UiTable.vue'
|
|
71
|
+
import type UiTableBody from './components/UiTable/UiTableBody.vue'
|
|
72
|
+
import type UiTableCell from './components/UiTable/UiTableCell.vue'
|
|
73
|
+
import type UiTableHeader from './components/UiTable/UiTableHeader.vue'
|
|
74
|
+
import type UiTableHeaderCell from './components/UiTable/UiTableHeaderCell.vue'
|
|
75
|
+
import type UiTableRow from './components/UiTable/UiTableRow.vue'
|
|
76
|
+
import type UiTabs from './components/UiTabs/UiTabs.vue'
|
|
77
|
+
import type UiTag from './components/UiTag/UiTag.vue'
|
|
78
|
+
import type UiTextField from './components/UiTextField/UiTextField.vue'
|
|
79
|
+
import type UiTimeline from './components/UiTimeline/UiTimeline.vue'
|
|
80
|
+
import type UiTimelineItem from './components/UiTimeline/UiTimelineItem.vue'
|
|
81
|
+
import type UiTooltip from './components/UiTooltip/UiTooltip.vue'
|
|
82
|
+
import type UiTooltipContent from './components/UiTooltip/UiTooltipContent.vue'
|
|
83
|
+
import type UiTooltipProvider from './components/UiTooltip/UiTooltipProvider.vue'
|
|
84
|
+
import type UiTooltipTrigger from './components/UiTooltip/UiTooltipTrigger.vue'
|
|
85
|
+
|
|
86
|
+
declare module 'vue' {
|
|
87
|
+
interface ComponentCustomProperties {
|
|
88
|
+
i18n: {
|
|
89
|
+
t: (key: string, ...args: unknown[]) => string
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
|
|
93
|
+
export interface GlobalComponents {
|
|
94
|
+
RenderSlot: typeof RenderSlot
|
|
95
|
+
UiActionBar: typeof UiActionBar
|
|
96
|
+
UiActionBarItem: typeof UiActionBarItem
|
|
97
|
+
UiActionBarSeparator: typeof UiActionBarSeparator
|
|
98
|
+
UiAnimatedLogo: typeof UiAnimatedLogo
|
|
99
|
+
UiAvatar: typeof UiAvatar
|
|
100
|
+
UiAvatarList: typeof UiAvatarList
|
|
101
|
+
UiBadge: typeof UiBadge
|
|
102
|
+
UiBanner: typeof UiBanner
|
|
103
|
+
UiBreadcrumb: typeof UiBreadcrumb
|
|
104
|
+
UiButton: typeof UiButton
|
|
105
|
+
UiButtonGroup: typeof UiButtonGroup
|
|
106
|
+
UiButtonGroupItem: typeof UiButtonGroupItem
|
|
107
|
+
UiCard: typeof UiCard
|
|
108
|
+
UiCarousel: typeof UiCarousel
|
|
109
|
+
UiColorField: typeof UiColorField
|
|
110
|
+
UiColorPicker: typeof UiColorPicker
|
|
111
|
+
UiDialog: typeof UiDialog
|
|
112
|
+
UiDialogClose: typeof UiDialogClose
|
|
113
|
+
UiDialogContent: typeof UiDialogContent
|
|
114
|
+
UiDialogFooter: typeof UiDialogFooter
|
|
115
|
+
UiDialogTrigger: typeof UiDialogTrigger
|
|
116
|
+
UiDropdown: typeof UiDropdown
|
|
117
|
+
UiDropdownContent: typeof UiDropdownContent
|
|
118
|
+
UiDropdownItem: typeof UiDropdownItem
|
|
119
|
+
UiDropdownSeparator: typeof UiDropdownSeparator
|
|
120
|
+
UiDropdownTrigger: typeof UiDropdownTrigger
|
|
121
|
+
UiEmptyState: typeof UiEmptyState
|
|
122
|
+
UiFieldWrapper: typeof UiFieldWrapper
|
|
123
|
+
UiFormField: typeof UiFormField
|
|
124
|
+
UiHorizontalSeparator: typeof UiHorizontalSeparator
|
|
125
|
+
UiInputCheckbox: typeof UiInputCheckbox
|
|
126
|
+
UiInputSelect: typeof UiInputSelect
|
|
127
|
+
UiInputTextarea: typeof UiInputTextarea
|
|
128
|
+
UiLabel: typeof UiLabel
|
|
129
|
+
UiList: typeof UiList
|
|
130
|
+
UiListItem: typeof UiListItem
|
|
131
|
+
UiLoader: typeof UiLoader
|
|
132
|
+
UiLogo: typeof UiLogo
|
|
133
|
+
UiMenu: typeof UiMenu
|
|
134
|
+
UiMenuContent: typeof UiMenuContent
|
|
135
|
+
UiMenuGroup: typeof UiMenuGroup
|
|
136
|
+
UiMenuItem: typeof UiMenuItem
|
|
137
|
+
UiMenuLabel: typeof UiMenuLabel
|
|
138
|
+
UiMenuSeparator: typeof UiMenuSeparator
|
|
139
|
+
UiMenuSub: typeof UiMenuSub
|
|
140
|
+
UiMenuSubContent: typeof UiMenuSubContent
|
|
141
|
+
UiMenuSubTrigger: typeof UiMenuSubTrigger
|
|
142
|
+
UiMenuTrigger: typeof UiMenuTrigger
|
|
143
|
+
UiPage: typeof UiPage
|
|
144
|
+
UiPageHeader: typeof UiPageHeader
|
|
145
|
+
UiPopover: typeof UiPopover
|
|
146
|
+
UiPopoverAnchor: typeof UiPopoverAnchor
|
|
147
|
+
UiPopoverContent: typeof UiPopoverContent
|
|
148
|
+
UiPopoverTrigger: typeof UiPopoverTrigger
|
|
149
|
+
UiProgress: typeof UiProgress
|
|
150
|
+
UiRoomButton: typeof UiRoomButton
|
|
151
|
+
UiShell: typeof UiShell
|
|
152
|
+
UiSideMenu: typeof UiSideMenu
|
|
153
|
+
UiSideMenuBottom: typeof UiSideMenuBottom
|
|
154
|
+
UiSideMenuItem: typeof UiSideMenuItem
|
|
155
|
+
UiSideMenuItemContent: typeof UiSideMenuItemContent
|
|
156
|
+
UiSideMenuTop: typeof UiSideMenuTop
|
|
157
|
+
UiStepper: typeof UiStepper
|
|
158
|
+
UiStepperDescription: typeof UiStepperDescription
|
|
159
|
+
UiStepperIndicator: typeof UiStepperIndicator
|
|
160
|
+
UiStepperItem: typeof UiStepperItem
|
|
161
|
+
UiStepperSeparator: typeof UiStepperSeparator
|
|
162
|
+
UiStepperTitle: typeof UiStepperTitle
|
|
163
|
+
UiTable: typeof UiTable
|
|
164
|
+
UiTableBody: typeof UiTableBody
|
|
165
|
+
UiTableCell: typeof UiTableCell
|
|
166
|
+
UiTableHeader: typeof UiTableHeader
|
|
167
|
+
UiTableHeaderCell: typeof UiTableHeaderCell
|
|
168
|
+
UiTableRow: typeof UiTableRow
|
|
169
|
+
UiTabs: typeof UiTabs
|
|
170
|
+
UiTag: typeof UiTag
|
|
171
|
+
UiTextField: typeof UiTextField
|
|
172
|
+
UiTimeline: typeof UiTimeline
|
|
173
|
+
UiTimelineItem: typeof UiTimelineItem
|
|
174
|
+
UiTooltip: typeof UiTooltip
|
|
175
|
+
UiTooltipContent: typeof UiTooltipContent
|
|
176
|
+
UiTooltipProvider: typeof UiTooltipProvider
|
|
177
|
+
UiTooltipTrigger: typeof UiTooltipTrigger
|
|
178
|
+
}
|
|
179
|
+
}
|
|
180
|
+
|
|
181
|
+
export {} // Enable type augmentation instead of replacement
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from '../components/Toast/toastDSV2'
|
|
@@ -21,6 +21,8 @@ export default {
|
|
|
21
21
|
|
|
22
22
|
computed: {
|
|
23
23
|
component () {
|
|
24
|
+
const isDisabled = this.disabled || this.loading
|
|
25
|
+
|
|
24
26
|
if (this.to) {
|
|
25
27
|
return {
|
|
26
28
|
is: 'router-link',
|
|
@@ -28,14 +30,14 @@ export default {
|
|
|
28
30
|
to: this.to,
|
|
29
31
|
// @TODO vue3 check if we need to have a replacement for this
|
|
30
32
|
// exact: !this.activePage,
|
|
31
|
-
disabled:
|
|
33
|
+
disabled: isDisabled,
|
|
32
34
|
},
|
|
33
35
|
}
|
|
34
36
|
} else if (this.href) {
|
|
35
37
|
return {
|
|
36
38
|
is: 'a',
|
|
37
39
|
props: {
|
|
38
|
-
href:
|
|
40
|
+
href: isDisabled
|
|
39
41
|
? undefined
|
|
40
42
|
: this.href,
|
|
41
43
|
},
|
|
@@ -50,7 +52,7 @@ export default {
|
|
|
50
52
|
is: 'button',
|
|
51
53
|
props: {
|
|
52
54
|
type: this.type,
|
|
53
|
-
disabled:
|
|
55
|
+
disabled: isDisabled,
|
|
54
56
|
},
|
|
55
57
|
}
|
|
56
58
|
}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Re-exports of reka-ui headless primitives so application packages can consume
|
|
3
|
+
* them through the design system instead of depending on reka-ui directly
|
|
4
|
+
* (reka-ui is a dependency of this package, not of the app packages).
|
|
5
|
+
*/
|
|
6
|
+
export { FocusScope, RovingFocusGroup, RovingFocusItem } from 'reka-ui'
|
package/src/theme.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export type ThemeColorType = 'alert'|'warning'|'info'|'success'
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
function focusFirstMenuItem (event: Event) {
|
|
2
|
+
event.preventDefault()
|
|
3
|
+
const target = (event.target as HTMLElement).closest('[role="menu"]') || event.target as HTMLElement
|
|
4
|
+
const firstLink = target.querySelector('a')
|
|
5
|
+
firstLink?.focus()
|
|
6
|
+
}
|
|
7
|
+
|
|
8
|
+
export { focusFirstMenuItem }
|
package/src/utils/clipboard.js
CHANGED
|
@@ -9,14 +9,14 @@ export function useCopyToClipboard () {
|
|
|
9
9
|
|
|
10
10
|
const canCopy = computed(() => isSupported.value && permissionClipboardWrite.value)
|
|
11
11
|
|
|
12
|
-
async function copy (text, el) {
|
|
12
|
+
async function copy (text, el, tooltipText = i18n.t('general_misc_copied-text')) {
|
|
13
13
|
await _copy(text)
|
|
14
14
|
|
|
15
15
|
if (el) {
|
|
16
16
|
el.classList.add('copied')
|
|
17
17
|
const tooltip = createTooltip(el, {
|
|
18
18
|
triggers: [],
|
|
19
|
-
content:
|
|
19
|
+
content: tooltipText,
|
|
20
20
|
delay: 0,
|
|
21
21
|
})
|
|
22
22
|
tooltip.show()
|
package/src/utils/devices.js
CHANGED
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
// eslint-disable-next-line
|
|
2
1
|
const REGEX_MOBILE1 = /(android|bb\d+|meego).+mobile|avantgo|bada\/|blackberry|blazer|compal|elaine|FBAN|FBAV|fennec|hiptop|iemobile|ip(hone|od)|Instagram|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\.(browser|link)|vodafone|wap|windows ce|xda|xiino/i
|
|
3
2
|
|
|
4
3
|
// eslint-disable-next-line
|
|
@@ -8,12 +7,10 @@ function isMobile (a) {
|
|
|
8
7
|
return REGEX_MOBILE1.test(a) || REGEX_MOBILE2.test(a.slice(0, 4))
|
|
9
8
|
}
|
|
10
9
|
|
|
11
|
-
// eslint-disable-next-line
|
|
12
10
|
const REGEX_MOBILE_OR_TABLET1 = /(android|bb\d+|meego).+mobile|avantgo|bada\/|blackberry|blazer|compal|elaine|FBAN|FBAV|fennec|hiptop|iemobile|ip(hone|od)|Instagram|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\.(browser|link)|vodafone|wap|windows ce|xda|xiino|android|ipad|playbook|silk/i
|
|
13
11
|
// eslint-disable-next-line
|
|
14
12
|
const REGEX_MOBILE_OR_TABLET2 = /1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s\-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|\-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw\-(n|u)|c55\/|capi|ccwa|cdm\-|cell|chtm|cldc|cmd\-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc\-s|devi|dica|dmob|do(c|p)o|ds(12|\-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(\-|_)|g1 u|g560|gene|gf\-5|g\-mo|go(\.w|od)|gr(ad|un)|haie|hcit|hd\-(m|p|t)|hei\-|hi(pt|ta)|hp( i|ip)|hs\-c|ht(c(\-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i\-(20|go|ma)|i230|iac( |\-|\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\/)|klon|kpt |kwc\-|kyo(c|k)|le(no|xi)|lg( g|\/(k|l|u)|50|54|\-[a-w])|libw|lynx|m1\-w|m3ga|m50\/|ma(te|ui|xo)|mc(01|21|ca)|m\-cr|me(rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(\-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)\-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|\-([1-8]|c))|phil|pire|pl(ay|uc)|pn\-2|po(ck|rt|se)|prox|psio|pt\-g|qa\-a|qc(07|12|21|32|60|\-[2-7]|i\-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h\-|oo|p\-)|sdk\/|se(c(\-|0|1)|47|mc|nd|ri)|sgh\-|shar|sie(\-|m)|sk\-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h\-|v\-|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl\-|tdg\-|tel(i|m)|tim\-|t\-mo|to(pl|sh)|ts(70|m\-|m3|m5)|tx\-9|up(\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|\-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(\-| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|yas\-|your|zeto|zte\-/i
|
|
15
13
|
|
|
16
|
-
// eslint-disable-next-line
|
|
17
14
|
const REGEX_CRAWLER = /Googlebot\/|Googlebot-Mobile|Googlebot-Image|Googlebot-News|Googlebot-Video|AdsBot-Google([^-]|$)|AdsBot-Google-Mobile|Feedfetcher-Google|Mediapartners-Google|Mediapartners \(Googlebot\)|APIs-Google|bingbot|Slurp|[wW]get|LinkedInBot|Python-urllib|python-requests|aiohttp|httpx|libwww-perl|httpunit|nutch|Go-http-client|phpcrawl|msnbot|jyxobot|FAST-WebCrawler|FAST Enterprise Crawler|BIGLOTRON|Teoma|convera|seekbot|Gigabot|Gigablast|exabot|ia_archiver|GingerCrawler|webmon |HTTrack|grub.org|UsineNouvelleCrawler|antibot|netresearchserver|speedy|fluffy|findlink|msrbot|panscient|yacybot|AISearchBot|ips-agent|tagoobot|MJ12bot|woriobot|yanga|buzzbot|mlbot|YandexBot|YandexImages|YandexAccessibilityBot|YandexMobileBot|YandexMetrika|YandexTurbo|YandexImageResizer|YandexVideo|YandexAdNet|YandexBlogs|YandexCalendar|YandexDirect|YandexFavicons|YaDirectFetcher|YandexForDomain|YandexMarket|YandexMedia|YandexMobileScreenShotBot|YandexNews|YandexOntoDB|YandexPagechecker|YandexPartner|YandexRCA|YandexSearchShop|YandexSitelinks|YandexSpravBot|YandexTracker|YandexVertis|YandexVerticals|YandexWebmaster|YandexScreenshotBot|purebot|Linguee Bot|CyberPatrol|voilabot|Baiduspider|citeseerxbot|spbot|twengabot|postrank|TurnitinBot|scribdbot|page2rss|sitebot|linkdex|Adidxbot|ezooms|dotbot|Mail.RU_Bot|discobot|heritrix|findthatfile|europarchive.org|NerdByNature.Bot|sistrix crawler|Ahrefs(Bot|SiteAudit)|fuelbot|CrunchBot|IndeedBot|mappydata|woobot|ZoominfoBot|PrivacyAwareBot|Multiviewbot|SWIMGBot|Grobbot|eright|Apercite|semanticbot|Aboundex|domaincrawler|wbsearchbot|summify|CCBot|edisterbot|seznambot|ec2linkfinder|gslfbot|aiHitBot|intelium_bot|facebookexternalhit|Yeti|RetrevoPageAnalyzer|lb-spider|Sogou|lssbot|careerbot|wotbox|wocbot|ichiro|DuckDuckBot|lssrocketcrawler|drupact|webcompanycrawler|acoonbot|openindexspider|gnam gnam spider|web-archive-net.com.bot|backlinkcrawler|coccoc|integromedb|content crawler spider|toplistbot|it2media-domain-crawler|ip-web-crawler.com|siteexplorer.info|elisabot|proximic|changedetection|arabot|WeSEE:Search|niki-bot|CrystalSemanticsBot|rogerbot|360Spider|psbot|InterfaxScanBot|CC Metadata Scaper|g00g1e.net|GrapeshotCrawler|urlappendbot|brainobot|fr-crawler|binlar|SimpleCrawler|Twitterbot|cXensebot|smtbot|bnf.fr_bot|A6-Indexer|ADmantX|Facebot|OrangeBot\/|memorybot|AdvBot|MegaIndex|SemanticScholarBot|ltx71|nerdybot|xovibot|BUbiNG|Qwantify|archive.org_bot|Applebot|TweetmemeBot|crawler4j|findxbot|S[eE][mM]rushBot|yoozBot|lipperhey|Y!J|Domain Re-Animator Bot|AddThis|Screaming Frog SEO Spider|MetaURI|Scrapy|Livelap[bB]ot|OpenHoseBot|CapsuleChecker|collection@infegy.com|IstellaBot|DeuSu\/|betaBot|Cliqzbot\/|MojeekBot\/|netEstate NE Crawler|SafeSearch microdata crawler|Gluten Free Crawler\/|Sonic|Sysomos|Trove|deadlinkchecker|Slack-ImgProxy|Embedly|RankActiveLinkBot|iskanie|SafeDNSBot|SkypeUriPreview|Veoozbot|Slackbot|redditbot|datagnionbot|Google-Adwords-Instant|adbeat_bot|WhatsApp|contxbot|pinterest.com.bot|electricmonk|GarlikCrawler|BingPreview\/|vebidoobot|FemtosearchBot|Yahoo Link Preview|MetaJobBot|DomainStatsBot|mindUpBot|Daum\/|Jugendschutzprogramm-Crawler|Xenu Link Sleuth|Pcore-HTTP|moatbot|KosmioBot|pingdom|AppInsights|PhantomJS|Gowikibot|PiplBot|Discordbot|TelegramBot|Jetslide|newsharecounts|James BOT|Bark[rR]owler|TinEye|SocialRankIOBot|trendictionbot|Ocarinabot|epicbot|Primalbot|DuckDuckGo-Favicons-Bot|GnowitNewsbot|Leikibot|LinkArchiver|YaK\/|PaperLiBot|Digg Deeper|dcrawl|Snacktory|AndersPinkBot|Fyrebot|EveryoneSocialBot|Mediatoolkitbot|Luminator-robots|ExtLinksBot|SurveyBot|NING\/|okhttp|Nuzzel|omgili|PocketParser|YisouSpider|um-LN|ToutiaoSpider|MuckRack|Jamie's Spider|AHC\/|NetcraftSurveyAgent|Laserlikebot|^Apache-HttpClient|AppEngine-Google|Jetty|Upflow|Thinklab|Traackr.com|Twurly|Mastodon|http_get|DnyzBot|botify|007ac9 Crawler|BehloolBot|BrandVerity|check_http|BDCbot|ZumBot|EZID|ICC-Crawler|ArchiveBot|^LCC |filterdb.iss.net\/crawler|BLP_bbot|BomboraBot|Buck\/|Companybook-Crawler|Genieo|magpie-crawler|MeltwaterNews|Moreover|newspaper\/|ScoutJet|(^| )sentry\/|StorygizeBot|UptimeRobot|OutclicksBot|seoscanners|Hatena|Google Web Preview|MauiBot|AlphaBot|SBL-BOT|IAS crawler|adscanner|Netvibes|acapbot|Baidu-YunGuanCe|bitlybot|blogmuraBot|Bot.AraTurka.com|bot-pge.chlooe.com|BoxcarBot|BTWebClient|ContextAd Bot|Digincore bot|Disqus|Feedly|Fetch\/|Fever|Flamingo_SearchEngine|FlipboardProxy|g2reader-bot|G2 Web Services|imrbot|K7MLWCBot|Kemvibot|Landau-Media-Spider|linkapediabot|vkShare|Siteimprove.com|BLEXBot\/|DareBoost|ZuperlistBot\/|Miniflux\/|Feedspot|Diffbot\/|SEOkicks|tracemyfile|Nimbostratus-Bot|zgrab|PR-CY.RU|AdsTxtCrawler|Datafeedwatch|Zabbix|TangibleeBot|google-xrawler|axios|Amazon CloudFront|Pulsepoint|CloudFlare-AlwaysOnline|Google-Structured-Data-Testing-Tool|WordupInfoSearch|WebDataStats|HttpUrlConnection|Seekport Crawler|ZoomBot|VelenPublicWebCrawler|MoodleBot|jpg-newsbot|outbrain|W3C_Validator|Validator\.nu|W3C-checklink|W3C-mobileOK|W3C_I18n-Checker|FeedValidator|W3C_CSS_Validator|W3C_Unicorn|Google-PhysicalWeb|Blackboard|ICBot\/|BazQux|Twingly|Rivva|Experibot|awesomecrawler|Dataprovider.com|GroupHigh\/|theoldreader.com|AnyEvent|Uptimebot\.org|Nmap Scripting Engine|2ip.ru|Clickagy|Caliperbot|MBCrawler|online-webceo-bot|B2B Bot|AddSearchBot|Google Favicon|HubSpot|Chrome-Lighthouse|HeadlessChrome|CheckMarkNetwork\/|www\.uptime\.com|Streamline3Bot\/|serpstatbot\/|MixnodeCache\/|^curl|SimpleScraper|RSSingBot|Jooblebot|fedoraplanet|Friendica|NextCloud|Tiny Tiny RSS|RegionStuttgartBot|Bytespider|Datanyze|Google-Site-Verification|TrendsmapResolver|tweetedtimes|NTENTbot|Gwene|SimplePie|SearchAtlas|Superfeedr|feedbot|UT-Dorkbot|Amazonbot|SerendeputyBot|Eyeotabot|officestorebot|Neticle Crawler|SurdotlyBot|LinkisBot|AwarioSmartBot|AwarioRssBot|RyteBot|FreeWebMonitoring SiteChecker|AspiegelBot|NAVER Blog Rssbot|zenback bot|SentiBot|Domains Project\/|Pandalytics|VKRobot|bidswitchbot|tigerbot|NIXStatsbot|Atom Feed Robot|Curebot|PagePeeker\/|Vigil\/|rssbot\/|startmebot\/|JobboerseBot|seewithkids|NINJA bot|Cutbot|BublupBot|BrandONbot|RidderBot|Taboolabot|Dubbotbot|FindITAnswersbot|infoobot|Refindbot|BlogTraffic\/\d\.\d+ Feed-Fetcher|SeobilityBot|Cincraw|Dragonbot|VoluumDSP-content-bot|FreshRSS|BitBot|^PHP-Curl-Class|Google-Certificates-Bridge/
|
|
18
15
|
|
|
19
16
|
function isMobileOrTablet (a) {
|
package/src/utils/index.js
CHANGED
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
function preventLessThanZero (num: number): number {
|
|
2
|
+
return Math.max(num, 0)
|
|
3
|
+
}
|
|
4
|
+
|
|
5
|
+
interface CustomNumberFormatOptions {
|
|
6
|
+
allowNegative?: boolean
|
|
7
|
+
}
|
|
8
|
+
|
|
9
|
+
function formatNumber (num: number, customOptions?: CustomNumberFormatOptions, passthroughOptions?: Intl.NumberFormatOptions): string {
|
|
10
|
+
const { allowNegative = true } = customOptions || {}
|
|
11
|
+
if (!allowNegative) {
|
|
12
|
+
num = preventLessThanZero(num)
|
|
13
|
+
}
|
|
14
|
+
return num.toLocaleString(undefined, passthroughOptions)
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
interface PercentageFormatOptions {
|
|
18
|
+
/**
|
|
19
|
+
* Number of decimal places to display
|
|
20
|
+
* @default 0
|
|
21
|
+
*/
|
|
22
|
+
decimals?: number
|
|
23
|
+
/**
|
|
24
|
+
* Whether to clamp the value between 0 and 100
|
|
25
|
+
* @default true
|
|
26
|
+
*/
|
|
27
|
+
clamp?: boolean
|
|
28
|
+
/**
|
|
29
|
+
* Value to return if the percentage is NaN or invalid
|
|
30
|
+
* @default 0
|
|
31
|
+
*/
|
|
32
|
+
fallback?: number
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
/**
|
|
36
|
+
* Formats a percentage value, handling NaN and invalid cases
|
|
37
|
+
* @param value - The percentage value to format
|
|
38
|
+
* @param options - Formatting options
|
|
39
|
+
* @returns Formatted percentage as a number (without the % symbol)
|
|
40
|
+
*/
|
|
41
|
+
function formatPercentage (value: number | undefined | null, options?: PercentageFormatOptions): number {
|
|
42
|
+
const { decimals = 0, clamp = true, fallback = 0 } = options || {}
|
|
43
|
+
|
|
44
|
+
// Handle invalid values
|
|
45
|
+
if (value === undefined || value === null || isNaN(value) || !isFinite(value)) {
|
|
46
|
+
return fallback
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
// Round to specified decimal places
|
|
50
|
+
const multiplier = Math.pow(10, decimals)
|
|
51
|
+
let result = Math.round(value * multiplier) / multiplier
|
|
52
|
+
|
|
53
|
+
// Clamp between 0 and 100 if requested
|
|
54
|
+
if (clamp) {
|
|
55
|
+
result = Math.max(0, Math.min(100, result))
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
return result
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
export { formatNumber, formatPercentage, preventLessThanZero }
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Shape of the `$responsive` global property installed by the responsive
|
|
3
|
+
* plugin (see ./responsive.js).
|
|
4
|
+
*/
|
|
5
|
+
export type ResponsiveGlobalComponentProperty = {
|
|
6
|
+
width: number
|
|
7
|
+
height: number
|
|
8
|
+
mobile: boolean
|
|
9
|
+
tablet: boolean
|
|
10
|
+
smallDesktop: boolean
|
|
11
|
+
desktop: boolean
|
|
12
|
+
}
|
|
@@ -3,14 +3,17 @@ import { useSlots, isVNode, Comment, Fragment } from 'vue'
|
|
|
3
3
|
export function useSlotsAsComponents () {
|
|
4
4
|
const slots = useSlots()
|
|
5
5
|
const proxy = new Proxy(slots, {
|
|
6
|
+
// @ts-expect-error
|
|
6
7
|
get: (target, key) => (...args) => getSlotAsComponent(target[key]?.(...args)),
|
|
7
8
|
})
|
|
8
9
|
return proxy
|
|
9
10
|
}
|
|
10
11
|
|
|
11
12
|
// from https://github.com/vuejs/core/blob/25f7a16a6eccbfa8d857977dcf1f23fb36b830b5/packages/runtime-core/src/helpers/renderSlot.ts#L84-L97
|
|
13
|
+
// @ts-expect-error
|
|
12
14
|
export function getSlotAsComponent (vnodes) {
|
|
13
15
|
if (!vnodes) return null
|
|
16
|
+
// @ts-expect-error
|
|
14
17
|
return vnodes.some(child => {
|
|
15
18
|
if (!isVNode(child)) return true
|
|
16
19
|
if (child.type === Comment) return false
|
|
@@ -23,5 +26,19 @@ export function getSlotAsComponent (vnodes) {
|
|
|
23
26
|
? vnodes
|
|
24
27
|
: null
|
|
25
28
|
}
|
|
26
|
-
|
|
29
|
+
// @ts-expect-error
|
|
27
30
|
export const RenderSlot = ({ vnodes }) => vnodes
|
|
31
|
+
|
|
32
|
+
// @ts-expect-error
|
|
33
|
+
export function unwrapFragments (vnodes) {
|
|
34
|
+
if (!vnodes) return null
|
|
35
|
+
// @ts-expect-error
|
|
36
|
+
return vnodes.map(child => {
|
|
37
|
+
if (!isVNode(child)) return child
|
|
38
|
+
// RenderSlot
|
|
39
|
+
if (child.props?.vnodes) return unwrapFragments(child.props.vnodes)
|
|
40
|
+
// Fragment
|
|
41
|
+
if (child.type === Fragment) return unwrapFragments(child.children)
|
|
42
|
+
return child
|
|
43
|
+
}).flat(10)
|
|
44
|
+
}
|
package/style.js
CHANGED
|
@@ -1,12 +1,3 @@
|
|
|
1
|
-
import './src/css/
|
|
2
|
-
|
|
3
|
-
import '
|
|
4
|
-
|
|
5
|
-
import './src/css/body.postcss'
|
|
6
|
-
|
|
7
|
-
import './src/css/transitions.postcss'
|
|
8
|
-
import './src/css/loader.postcss'
|
|
9
|
-
import './src/css/button.postcss'
|
|
10
|
-
import './src/css/icon.postcss'
|
|
11
|
-
import './src/css/checkbox-radio.postcss'
|
|
12
|
-
import './src/css/popper.postcss'
|
|
1
|
+
import './src/css/body.css'
|
|
2
|
+
import './src/css/transitions.css'
|
|
3
|
+
import './src/css/reka-animations.css'
|
package/theme.d.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export type { ThemeColorType } from './src/theme'
|
package/.env
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
VITE_UI_VUE=true
|
package/.eslintignore
DELETED
package/.eslintrc.js
DELETED
|
@@ -1,47 +0,0 @@
|
|
|
1
|
-
module.exports = {
|
|
2
|
-
root: true,
|
|
3
|
-
parser: 'vue-eslint-parser',
|
|
4
|
-
parserOptions: {
|
|
5
|
-
parser: '@typescript-eslint/parser',
|
|
6
|
-
},
|
|
7
|
-
extends: [
|
|
8
|
-
'plugin:vue/vue3-recommended',
|
|
9
|
-
'@vue/eslint-config-standard',
|
|
10
|
-
'plugin:vitest-globals/recommended',
|
|
11
|
-
'@vue/typescript',
|
|
12
|
-
],
|
|
13
|
-
env: {
|
|
14
|
-
node: true,
|
|
15
|
-
mocha: true,
|
|
16
|
-
'vitest-globals/env': true,
|
|
17
|
-
},
|
|
18
|
-
rules: {
|
|
19
|
-
'no-console': 'off',
|
|
20
|
-
'no-debugger': 'off',
|
|
21
|
-
'comma-dangle': ['error', {
|
|
22
|
-
arrays: 'always-multiline',
|
|
23
|
-
objects: 'always-multiline',
|
|
24
|
-
imports: 'always-multiline',
|
|
25
|
-
exports: 'always-multiline',
|
|
26
|
-
functions: 'only-multiline',
|
|
27
|
-
}],
|
|
28
|
-
'vue/no-v-html': 'off',
|
|
29
|
-
// html-quotes off: Allow :query='gql => gql`query { foo (bar: "text with quotes") }`' as GraphQL only support double quotes (") for text in queries
|
|
30
|
-
'vue/html-quotes': 'off',
|
|
31
|
-
'vue/no-unsupported-features': ['warn', {
|
|
32
|
-
version: '^3.2.30',
|
|
33
|
-
ignores: [],
|
|
34
|
-
}],
|
|
35
|
-
'vue/multi-word-component-names': 'warn',
|
|
36
|
-
'import/export': 'off',
|
|
37
|
-
'no-use-before-define': 'off',
|
|
38
|
-
},
|
|
39
|
-
overrides: [
|
|
40
|
-
{
|
|
41
|
-
files: ['**/*.vue'],
|
|
42
|
-
rules: {
|
|
43
|
-
'import/first': 'off',
|
|
44
|
-
},
|
|
45
|
-
},
|
|
46
|
-
],
|
|
47
|
-
}
|
package/.pkg
DELETED
package/babel.config.js
DELETED
package/build/Dockerfile
DELETED
|
@@ -1,31 +0,0 @@
|
|
|
1
|
-
FROM public.ecr.aws/docker/library/node:16-alpine as base
|
|
2
|
-
|
|
3
|
-
# Setup PNPM
|
|
4
|
-
|
|
5
|
-
RUN corepack enable && corepack prepare pnpm@8.6.0 --activate
|
|
6
|
-
|
|
7
|
-
WORKDIR /app
|
|
8
|
-
|
|
9
|
-
# @TODO improve CI
|
|
10
|
-
# COPY . .
|
|
11
|
-
COPY package.json pnpm-lock.yaml pnpm-workspace.yaml .
|
|
12
|
-
COPY packages/ui-icons/package.json packages/ui-icons/
|
|
13
|
-
COPY packages/ui-vue/package.json packages/ui-vue/
|
|
14
|
-
# Needed for the depedencies (for example postcss.config.js)
|
|
15
|
-
COPY packages/frontend/package.json packages/frontend/
|
|
16
|
-
COPY packages/dev-utils/package.json packages/dev-utils/
|
|
17
|
-
|
|
18
|
-
# NPM dependencies
|
|
19
|
-
|
|
20
|
-
RUN --mount=type=cache,id=pnpm-store,target=/root/.local/share/pnpm/store/v3 \
|
|
21
|
-
pnpm install --frozen-lockfile --ignore-scripts --prefer-offline --filter "@livestorm/ui-vue..." --filter "@livestorm/frontend..."
|
|
22
|
-
|
|
23
|
-
COPY packages/ui-icons packages/ui-icons
|
|
24
|
-
COPY packages/ui-vue packages/ui-vue
|
|
25
|
-
# Needed for the references to '../frontend'
|
|
26
|
-
COPY packages/frontend/ packages/frontend/
|
|
27
|
-
|
|
28
|
-
RUN pnpm run -r --filter "@livestorm/ui-vue..." prepare && \
|
|
29
|
-
pnpm run -r --filter "@livestorm/ui-vue^..." build
|
|
30
|
-
|
|
31
|
-
WORKDIR /app/packages/ui-vue
|
package/ci/ci.yml
DELETED
|
@@ -1,54 +0,0 @@
|
|
|
1
|
-
steps:
|
|
2
|
-
- label: ":docker: Build package (base)"
|
|
3
|
-
key: build-base
|
|
4
|
-
agents:
|
|
5
|
-
queue: "elastic-builders"
|
|
6
|
-
plugins:
|
|
7
|
-
- livestorm/lsc#v1.0.32:
|
|
8
|
-
build-package: true
|
|
9
|
-
build-target: base
|
|
10
|
-
build-cache-from:
|
|
11
|
-
- ${PACKAGE_REGISTRY}/${PACKAGE_IMAGE_NAME}:latest
|
|
12
|
-
|
|
13
|
-
- label: ":eslint: Run ESLint"
|
|
14
|
-
depends_on: build-base
|
|
15
|
-
command: |
|
|
16
|
-
pnpm run test:eslint
|
|
17
|
-
plugins:
|
|
18
|
-
- docker#v4.0.0:
|
|
19
|
-
image: "${PACKAGE_IMAGE}-base"
|
|
20
|
-
skip-checkout: true
|
|
21
|
-
mount-checkout: false
|
|
22
|
-
|
|
23
|
-
- label: ":typescript: Run TypeScript check"
|
|
24
|
-
depends_on: build-base
|
|
25
|
-
command: |
|
|
26
|
-
pnpm run test:types
|
|
27
|
-
plugins:
|
|
28
|
-
- docker#v4.0.0:
|
|
29
|
-
image: "${PACKAGE_IMAGE}-base"
|
|
30
|
-
skip-checkout: true
|
|
31
|
-
mount-checkout: false
|
|
32
|
-
|
|
33
|
-
- label: ":vitest: Run unit tests"
|
|
34
|
-
depends_on: build-base
|
|
35
|
-
key: "ut"
|
|
36
|
-
artifact_paths: "reports/junit/*.xml"
|
|
37
|
-
command: |
|
|
38
|
-
pnpm run test:vitest:run --reporter=default --reporter=junit --outputFile.junit=reports/junit/junit.xml
|
|
39
|
-
plugins:
|
|
40
|
-
- docker#v4.0.0:
|
|
41
|
-
image: "${PACKAGE_IMAGE}-base"
|
|
42
|
-
skip-checkout: true
|
|
43
|
-
mount-checkout: false
|
|
44
|
-
volumes:
|
|
45
|
-
- ./reports/junit:/app/packages/ui-vue/reports/junit
|
|
46
|
-
|
|
47
|
-
- label: ":memo: Tests Report"
|
|
48
|
-
depends_on: "ut"
|
|
49
|
-
allow_dependency_failure: true
|
|
50
|
-
plugins:
|
|
51
|
-
- junit-annotate#v2.0.2:
|
|
52
|
-
artifacts: "reports/junit/*.xml"
|
|
53
|
-
failure-format: file
|
|
54
|
-
report-slowest: 20
|
package/components-webpack.js
DELETED
|
@@ -1,29 +0,0 @@
|
|
|
1
|
-
import { RenderSlot } from './src/utils/slot'
|
|
2
|
-
|
|
3
|
-
const NAME_REG = /Base([a-z0-9]+)\./i
|
|
4
|
-
|
|
5
|
-
export function registerComponents (app, prefix = 'Ls') {
|
|
6
|
-
app.component('RenderSlot', RenderSlot)
|
|
7
|
-
|
|
8
|
-
const requireComponentsLib = require.context('./src/components/', true, /Base[a-z0-9]+\.(jsx?|vue)$/i)
|
|
9
|
-
requireComponentsLib.keys().forEach(fileName => {
|
|
10
|
-
const component = requireComponentsLib(fileName)
|
|
11
|
-
const name = fileName.match(NAME_REG)[1]
|
|
12
|
-
app.component(`${prefix}${name}`, component.default || component)
|
|
13
|
-
})
|
|
14
|
-
}
|
|
15
|
-
|
|
16
|
-
export function getComponents (prefix = 'Ls') {
|
|
17
|
-
const componentsMap = {}
|
|
18
|
-
|
|
19
|
-
componentsMap.RenderSlot = RenderSlot
|
|
20
|
-
|
|
21
|
-
const requireComponentsLib = require.context('./src/components/', true, /Base[a-z0-9]+\.(jsx?|vue)$/i)
|
|
22
|
-
requireComponentsLib.keys().forEach(fileName => {
|
|
23
|
-
const component = requireComponentsLib(fileName)
|
|
24
|
-
const name = fileName.match(NAME_REG)[1]
|
|
25
|
-
componentsMap[`${prefix}${name}`] = component.default || component
|
|
26
|
-
})
|
|
27
|
-
|
|
28
|
-
return componentsMap
|
|
29
|
-
}
|