@marwes-ui/svelte 1.3.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/CHANGELOG.md +42 -0
- package/LICENSE +21 -0
- package/README.md +518 -0
- package/dist/components/accordion/Accordion.svelte +56 -0
- package/dist/components/accordion/Accordion.svelte.d.ts +4 -0
- package/dist/components/accordion/AccordionField.svelte +90 -0
- package/dist/components/accordion/AccordionField.svelte.d.ts +4 -0
- package/dist/components/accordion/FAQAccordion.svelte +21 -0
- package/dist/components/accordion/FAQAccordion.svelte.d.ts +20 -0
- package/dist/components/accordion/README.md +19 -0
- package/dist/components/accordion/SectionsAccordion.svelte +22 -0
- package/dist/components/accordion/SectionsAccordion.svelte.d.ts +21 -0
- package/dist/components/accordion/SettingsAccordion.svelte +21 -0
- package/dist/components/accordion/SettingsAccordion.svelte.d.ts +20 -0
- package/dist/components/accordion/index.d.ts +2 -0
- package/dist/components/accordion/index.js +1 -0
- package/dist/components/accordion/types.d.ts +28 -0
- package/dist/components/accordion/types.js +1 -0
- package/dist/components/avatar/Avatar.svelte +45 -0
- package/dist/components/avatar/Avatar.svelte.d.ts +4 -0
- package/dist/components/avatar/AvatarBadge.svelte +47 -0
- package/dist/components/avatar/AvatarBadge.svelte.d.ts +7 -0
- package/dist/components/avatar/AvatarGroup.svelte +50 -0
- package/dist/components/avatar/AvatarGroup.svelte.d.ts +15 -0
- package/dist/components/avatar/PresenceAvatar.svelte +12 -0
- package/dist/components/avatar/PresenceAvatar.svelte.d.ts +7 -0
- package/dist/components/avatar/ProfileAvatar.svelte +7 -0
- package/dist/components/avatar/ProfileAvatar.svelte.d.ts +4 -0
- package/dist/components/avatar/README.md +19 -0
- package/dist/components/avatar/TeamAvatarGroup.svelte +21 -0
- package/dist/components/avatar/TeamAvatarGroup.svelte.d.ts +15 -0
- package/dist/components/avatar/index.d.ts +2 -0
- package/dist/components/avatar/index.js +1 -0
- package/dist/components/avatar/types.d.ts +6 -0
- package/dist/components/avatar/types.js +1 -0
- package/dist/components/badge/Badge.svelte +26 -0
- package/dist/components/badge/Badge.svelte.d.ts +4 -0
- package/dist/components/badge/BadgeGroup.svelte +25 -0
- package/dist/components/badge/BadgeGroup.svelte.d.ts +4 -0
- package/dist/components/badge/NotificationBadge.svelte +7 -0
- package/dist/components/badge/NotificationBadge.svelte.d.ts +4 -0
- package/dist/components/badge/PriorityBadge.svelte +7 -0
- package/dist/components/badge/PriorityBadge.svelte.d.ts +4 -0
- package/dist/components/badge/README.md +16 -0
- package/dist/components/badge/StatusBadge.svelte +7 -0
- package/dist/components/badge/StatusBadge.svelte.d.ts +4 -0
- package/dist/components/badge/index.d.ts +3 -0
- package/dist/components/badge/index.js +2 -0
- package/dist/components/badge/types.d.ts +15 -0
- package/dist/components/badge/types.js +1 -0
- package/dist/components/button/Button.svelte +92 -0
- package/dist/components/button/Button.svelte.d.ts +4 -0
- package/dist/components/button/CancelButton.svelte +8 -0
- package/dist/components/button/CancelButton.svelte.d.ts +5 -0
- package/dist/components/button/CloseButton.svelte +8 -0
- package/dist/components/button/CloseButton.svelte.d.ts +5 -0
- package/dist/components/button/ConfirmButton.svelte +8 -0
- package/dist/components/button/ConfirmButton.svelte.d.ts +5 -0
- package/dist/components/button/CopyButton.svelte +8 -0
- package/dist/components/button/CopyButton.svelte.d.ts +5 -0
- package/dist/components/button/CreateButton.svelte +7 -0
- package/dist/components/button/CreateButton.svelte.d.ts +5 -0
- package/dist/components/button/DestructiveButton.svelte +8 -0
- package/dist/components/button/DestructiveButton.svelte.d.ts +5 -0
- package/dist/components/button/DownloadButton.svelte +8 -0
- package/dist/components/button/DownloadButton.svelte.d.ts +5 -0
- package/dist/components/button/DropdownButton.svelte +8 -0
- package/dist/components/button/DropdownButton.svelte.d.ts +5 -0
- package/dist/components/button/EditButton.svelte +8 -0
- package/dist/components/button/EditButton.svelte.d.ts +5 -0
- package/dist/components/button/FilterButton.svelte +8 -0
- package/dist/components/button/FilterButton.svelte.d.ts +5 -0
- package/dist/components/button/LinkButton.svelte +8 -0
- package/dist/components/button/LinkButton.svelte.d.ts +5 -0
- package/dist/components/button/PrimaryButton.svelte +7 -0
- package/dist/components/button/PrimaryButton.svelte.d.ts +5 -0
- package/dist/components/button/README.md +21 -0
- package/dist/components/button/RefreshButton.svelte +8 -0
- package/dist/components/button/RefreshButton.svelte.d.ts +5 -0
- package/dist/components/button/SaveButton.svelte +8 -0
- package/dist/components/button/SaveButton.svelte.d.ts +5 -0
- package/dist/components/button/SearchButton.svelte +8 -0
- package/dist/components/button/SearchButton.svelte.d.ts +5 -0
- package/dist/components/button/SecondaryButton.svelte +7 -0
- package/dist/components/button/SecondaryButton.svelte.d.ts +5 -0
- package/dist/components/button/SortButton.svelte +8 -0
- package/dist/components/button/SortButton.svelte.d.ts +5 -0
- package/dist/components/button/SubmitButton.svelte +7 -0
- package/dist/components/button/SubmitButton.svelte.d.ts +5 -0
- package/dist/components/button/SuccessButton.svelte +7 -0
- package/dist/components/button/SuccessButton.svelte.d.ts +5 -0
- package/dist/components/button/TextButton.svelte +7 -0
- package/dist/components/button/TextButton.svelte.d.ts +5 -0
- package/dist/components/button/UploadButton.svelte +8 -0
- package/dist/components/button/UploadButton.svelte.d.ts +5 -0
- package/dist/components/button/VerifyButton.svelte +8 -0
- package/dist/components/button/VerifyButton.svelte.d.ts +5 -0
- package/dist/components/button/index.d.ts +2 -0
- package/dist/components/button/index.js +1 -0
- package/dist/components/button/types.d.ts +8 -0
- package/dist/components/button/types.js +1 -0
- package/dist/components/card/Card.svelte +33 -0
- package/dist/components/card/Card.svelte.d.ts +4 -0
- package/dist/components/card/ProductCard.svelte +6 -0
- package/dist/components/card/ProductCard.svelte.d.ts +4 -0
- package/dist/components/card/ProfileCard.svelte +6 -0
- package/dist/components/card/ProfileCard.svelte.d.ts +4 -0
- package/dist/components/card/README.md +15 -0
- package/dist/components/card/StatCard.svelte +6 -0
- package/dist/components/card/StatCard.svelte.d.ts +4 -0
- package/dist/components/card/index.d.ts +2 -0
- package/dist/components/card/index.js +1 -0
- package/dist/components/card/types.d.ts +10 -0
- package/dist/components/card/types.js +1 -0
- package/dist/components/checkbox/Checkbox.svelte +54 -0
- package/dist/components/checkbox/Checkbox.svelte.d.ts +4 -0
- package/dist/components/checkbox/CheckboxField.svelte +74 -0
- package/dist/components/checkbox/CheckboxField.svelte.d.ts +4 -0
- package/dist/components/checkbox/CheckboxGroupField.svelte +50 -0
- package/dist/components/checkbox/CheckboxGroupField.svelte.d.ts +4 -0
- package/dist/components/checkbox/README.md +17 -0
- package/dist/components/checkbox/index.d.ts +3 -0
- package/dist/components/checkbox/index.js +2 -0
- package/dist/components/checkbox/types.d.ts +30 -0
- package/dist/components/checkbox/types.js +1 -0
- package/dist/components/date-picker/DatePicker.svelte +108 -0
- package/dist/components/date-picker/DatePicker.svelte.d.ts +4 -0
- package/dist/components/date-picker/README.md +17 -0
- package/dist/components/date-picker/index.d.ts +2 -0
- package/dist/components/date-picker/index.js +1 -0
- package/dist/components/date-picker/types.d.ts +13 -0
- package/dist/components/date-picker/types.js +1 -0
- package/dist/components/dialog/ConfirmDialog.svelte +28 -0
- package/dist/components/dialog/ConfirmDialog.svelte.d.ts +4 -0
- package/dist/components/dialog/DestructiveDialog.svelte +28 -0
- package/dist/components/dialog/DestructiveDialog.svelte.d.ts +4 -0
- package/dist/components/dialog/Dialog.svelte +114 -0
- package/dist/components/dialog/Dialog.svelte.d.ts +4 -0
- package/dist/components/dialog/DialogModal.svelte +120 -0
- package/dist/components/dialog/DialogModal.svelte.d.ts +4 -0
- package/dist/components/dialog/InfoDialog.svelte +24 -0
- package/dist/components/dialog/InfoDialog.svelte.d.ts +4 -0
- package/dist/components/dialog/README.md +23 -0
- package/dist/components/dialog/index.d.ts +6 -0
- package/dist/components/dialog/index.js +5 -0
- package/dist/components/dialog/types.d.ts +42 -0
- package/dist/components/dialog/types.js +1 -0
- package/dist/components/divider/Divider.svelte +25 -0
- package/dist/components/divider/Divider.svelte.d.ts +4 -0
- package/dist/components/divider/README.md +15 -0
- package/dist/components/divider/index.d.ts +2 -0
- package/dist/components/divider/index.js +1 -0
- package/dist/components/divider/types.d.ts +5 -0
- package/dist/components/divider/types.js +1 -0
- package/dist/components/heading/H1.svelte +23 -0
- package/dist/components/heading/H1.svelte.d.ts +4 -0
- package/dist/components/heading/H2.svelte +23 -0
- package/dist/components/heading/H2.svelte.d.ts +4 -0
- package/dist/components/heading/H3.svelte +23 -0
- package/dist/components/heading/H3.svelte.d.ts +4 -0
- package/dist/components/heading/README.md +13 -0
- package/dist/components/heading/index.d.ts +4 -0
- package/dist/components/heading/index.js +3 -0
- package/dist/components/heading/types.d.ts +26 -0
- package/dist/components/heading/types.js +1 -0
- package/dist/components/icon/Icon.svelte +65 -0
- package/dist/components/icon/Icon.svelte.d.ts +4 -0
- package/dist/components/icon/README.md +18 -0
- package/dist/components/icon/index.d.ts +2 -0
- package/dist/components/icon/index.js +1 -0
- package/dist/components/icon/types.d.ts +12 -0
- package/dist/components/icon/types.js +1 -0
- package/dist/components/input/CurrencyField.svelte +12 -0
- package/dist/components/input/CurrencyField.svelte.d.ts +7 -0
- package/dist/components/input/DateOfBirthField.svelte +21 -0
- package/dist/components/input/DateOfBirthField.svelte.d.ts +14 -0
- package/dist/components/input/DropdownField.svelte +29 -0
- package/dist/components/input/DropdownField.svelte.d.ts +14 -0
- package/dist/components/input/EmailField.svelte +9 -0
- package/dist/components/input/EmailField.svelte.d.ts +7 -0
- package/dist/components/input/Input.svelte +49 -0
- package/dist/components/input/Input.svelte.d.ts +4 -0
- package/dist/components/input/InputField.svelte +139 -0
- package/dist/components/input/InputField.svelte.d.ts +4 -0
- package/dist/components/input/InputOtp.svelte +140 -0
- package/dist/components/input/InputOtp.svelte.d.ts +4 -0
- package/dist/components/input/PasswordField.svelte +9 -0
- package/dist/components/input/PasswordField.svelte.d.ts +7 -0
- package/dist/components/input/PhoneField.svelte +9 -0
- package/dist/components/input/PhoneField.svelte.d.ts +7 -0
- package/dist/components/input/README.md +24 -0
- package/dist/components/input/RichText.svelte +177 -0
- package/dist/components/input/RichText.svelte.d.ts +4 -0
- package/dist/components/input/RichTextField.svelte +84 -0
- package/dist/components/input/RichTextField.svelte.d.ts +4 -0
- package/dist/components/input/SearchField.svelte +9 -0
- package/dist/components/input/SearchField.svelte.d.ts +7 -0
- package/dist/components/input/Select.svelte +88 -0
- package/dist/components/input/Select.svelte.d.ts +4 -0
- package/dist/components/input/SelectField.svelte +395 -0
- package/dist/components/input/SelectField.svelte.d.ts +4 -0
- package/dist/components/input/Textarea.svelte +50 -0
- package/dist/components/input/Textarea.svelte.d.ts +4 -0
- package/dist/components/input/TextareaField.svelte +57 -0
- package/dist/components/input/TextareaField.svelte.d.ts +4 -0
- package/dist/components/input/URLField.svelte +9 -0
- package/dist/components/input/URLField.svelte.d.ts +7 -0
- package/dist/components/input/ZipCodeField.svelte +21 -0
- package/dist/components/input/ZipCodeField.svelte.d.ts +14 -0
- package/dist/components/input/index.d.ts +7 -0
- package/dist/components/input/index.js +6 -0
- package/dist/components/input/types.d.ts +104 -0
- package/dist/components/input/types.js +1 -0
- package/dist/components/paragraph/Paragraph.svelte +23 -0
- package/dist/components/paragraph/Paragraph.svelte.d.ts +4 -0
- package/dist/components/paragraph/README.md +13 -0
- package/dist/components/paragraph/index.d.ts +2 -0
- package/dist/components/paragraph/index.js +1 -0
- package/dist/components/paragraph/types.d.ts +9 -0
- package/dist/components/paragraph/types.js +1 -0
- package/dist/components/radio/OptionRadioGroup.svelte +52 -0
- package/dist/components/radio/OptionRadioGroup.svelte.d.ts +21 -0
- package/dist/components/radio/README.md +16 -0
- package/dist/components/radio/Radio.svelte +38 -0
- package/dist/components/radio/Radio.svelte.d.ts +4 -0
- package/dist/components/radio/RadioGroupField.svelte +75 -0
- package/dist/components/radio/RadioGroupField.svelte.d.ts +4 -0
- package/dist/components/radio/RatingRadioGroup.svelte +51 -0
- package/dist/components/radio/RatingRadioGroup.svelte.d.ts +17 -0
- package/dist/components/radio/YesNoRadioGroup.svelte +48 -0
- package/dist/components/radio/YesNoRadioGroup.svelte.d.ts +16 -0
- package/dist/components/radio/index.d.ts +3 -0
- package/dist/components/radio/index.js +2 -0
- package/dist/components/radio/types.d.ts +22 -0
- package/dist/components/radio/types.js +1 -0
- package/dist/components/skeleton/README.md +16 -0
- package/dist/components/skeleton/Skeleton.svelte +29 -0
- package/dist/components/skeleton/Skeleton.svelte.d.ts +4 -0
- package/dist/components/skeleton/index.d.ts +2 -0
- package/dist/components/skeleton/index.js +1 -0
- package/dist/components/skeleton/types.d.ts +6 -0
- package/dist/components/skeleton/types.js +1 -0
- package/dist/components/slider/BrightnessSlider.svelte +31 -0
- package/dist/components/slider/BrightnessSlider.svelte.d.ts +11 -0
- package/dist/components/slider/README.md +20 -0
- package/dist/components/slider/RadiusSlider.svelte +31 -0
- package/dist/components/slider/RadiusSlider.svelte.d.ts +11 -0
- package/dist/components/slider/Slider.svelte +67 -0
- package/dist/components/slider/Slider.svelte.d.ts +4 -0
- package/dist/components/slider/SliderField.svelte +115 -0
- package/dist/components/slider/SliderField.svelte.d.ts +4 -0
- package/dist/components/slider/VolumeSlider.svelte +31 -0
- package/dist/components/slider/VolumeSlider.svelte.d.ts +11 -0
- package/dist/components/slider/index.d.ts +2 -0
- package/dist/components/slider/index.js +1 -0
- package/dist/components/slider/types.d.ts +28 -0
- package/dist/components/slider/types.js +1 -0
- package/dist/components/spacing/README.md +15 -0
- package/dist/components/spacing/Spacer.svelte +8 -0
- package/dist/components/spacing/Spacer.svelte.d.ts +3 -0
- package/dist/components/spacing/Spacing.svelte +23 -0
- package/dist/components/spacing/Spacing.svelte.d.ts +4 -0
- package/dist/components/spacing/index.d.ts +3 -0
- package/dist/components/spacing/index.js +2 -0
- package/dist/components/spacing/types.d.ts +7 -0
- package/dist/components/spacing/types.js +1 -0
- package/dist/components/spinner/ButtonSpinner.svelte +35 -0
- package/dist/components/spinner/ButtonSpinner.svelte.d.ts +4 -0
- package/dist/components/spinner/EmptyStateSpinner.svelte +20 -0
- package/dist/components/spinner/EmptyStateSpinner.svelte.d.ts +4 -0
- package/dist/components/spinner/README.md +19 -0
- package/dist/components/spinner/Spinner.svelte +60 -0
- package/dist/components/spinner/Spinner.svelte.d.ts +4 -0
- package/dist/components/spinner/index.d.ts +3 -0
- package/dist/components/spinner/index.js +2 -0
- package/dist/components/spinner/types.d.ts +9 -0
- package/dist/components/spinner/types.js +1 -0
- package/dist/components/stat-tile/README.md +15 -0
- package/dist/components/stat-tile/StatTile.svelte +44 -0
- package/dist/components/stat-tile/StatTile.svelte.d.ts +4 -0
- package/dist/components/stat-tile/index.d.ts +2 -0
- package/dist/components/stat-tile/index.js +1 -0
- package/dist/components/stat-tile/types.d.ts +14 -0
- package/dist/components/stat-tile/types.js +1 -0
- package/dist/components/switch/FeatureToggle.svelte +19 -0
- package/dist/components/switch/FeatureToggle.svelte.d.ts +13 -0
- package/dist/components/switch/PermissionSwitch.svelte +19 -0
- package/dist/components/switch/PermissionSwitch.svelte.d.ts +13 -0
- package/dist/components/switch/PreferenceSwitch.svelte +19 -0
- package/dist/components/switch/PreferenceSwitch.svelte.d.ts +13 -0
- package/dist/components/switch/README.md +17 -0
- package/dist/components/switch/Switch.svelte +52 -0
- package/dist/components/switch/Switch.svelte.d.ts +4 -0
- package/dist/components/switch/SwitchField.svelte +71 -0
- package/dist/components/switch/SwitchField.svelte.d.ts +4 -0
- package/dist/components/switch/index.d.ts +3 -0
- package/dist/components/switch/index.js +2 -0
- package/dist/components/switch/types.d.ts +20 -0
- package/dist/components/switch/types.js +1 -0
- package/dist/components/tab/ContentTabs.svelte +11 -0
- package/dist/components/tab/ContentTabs.svelte.d.ts +3 -0
- package/dist/components/tab/NavigationTabs.svelte +11 -0
- package/dist/components/tab/NavigationTabs.svelte.d.ts +3 -0
- package/dist/components/tab/README.md +26 -0
- package/dist/components/tab/SettingsTabs.svelte +11 -0
- package/dist/components/tab/SettingsTabs.svelte.d.ts +3 -0
- package/dist/components/tab/Tab.svelte +32 -0
- package/dist/components/tab/Tab.svelte.d.ts +4 -0
- package/dist/components/tab/TabGroup.svelte +132 -0
- package/dist/components/tab/TabGroup.svelte.d.ts +4 -0
- package/dist/components/tab/TabPanel.svelte +25 -0
- package/dist/components/tab/TabPanel.svelte.d.ts +4 -0
- package/dist/components/tab/index.d.ts +7 -0
- package/dist/components/tab/index.js +6 -0
- package/dist/components/tab/types.d.ts +36 -0
- package/dist/components/tab/types.js +1 -0
- package/dist/components/toast/ErrorToast.svelte +24 -0
- package/dist/components/toast/ErrorToast.svelte.d.ts +4 -0
- package/dist/components/toast/InfoToast.svelte +24 -0
- package/dist/components/toast/InfoToast.svelte.d.ts +4 -0
- package/dist/components/toast/README.md +35 -0
- package/dist/components/toast/SuccessToast.svelte +25 -0
- package/dist/components/toast/SuccessToast.svelte.d.ts +4 -0
- package/dist/components/toast/Toast.svelte +53 -0
- package/dist/components/toast/Toast.svelte.d.ts +4 -0
- package/dist/components/toast/ToastContainer.svelte +212 -0
- package/dist/components/toast/ToastContainer.svelte.d.ts +4 -0
- package/dist/components/toast/ToastProvider.svelte +71 -0
- package/dist/components/toast/ToastProvider.svelte.d.ts +7 -0
- package/dist/components/toast/WarningToast.svelte +24 -0
- package/dist/components/toast/WarningToast.svelte.d.ts +4 -0
- package/dist/components/toast/index.d.ts +9 -0
- package/dist/components/toast/index.js +8 -0
- package/dist/components/toast/types.d.ts +48 -0
- package/dist/components/toast/types.js +1 -0
- package/dist/components/tooltip/README.md +22 -0
- package/dist/components/tooltip/Tooltip.svelte +29 -0
- package/dist/components/tooltip/Tooltip.svelte.d.ts +4 -0
- package/dist/components/tooltip/TooltipGroup.svelte +100 -0
- package/dist/components/tooltip/TooltipGroup.svelte.d.ts +4 -0
- package/dist/components/tooltip/index.d.ts +3 -0
- package/dist/components/tooltip/index.js +2 -0
- package/dist/components/tooltip/types.d.ts +22 -0
- package/dist/components/tooltip/types.js +1 -0
- package/dist/index.d.ts +149 -0
- package/dist/index.js +149 -0
- package/dist/internal/attrs.d.ts +2 -0
- package/dist/internal/attrs.js +5 -0
- package/dist/internal/css-vars.d.ts +5 -0
- package/dist/internal/css-vars.js +20 -0
- package/dist/internal/merge-class.d.ts +1 -0
- package/dist/internal/merge-class.js +4 -0
- package/dist/internal/svg-attrs.d.ts +9 -0
- package/dist/internal/svg-attrs.js +16 -0
- package/dist/provider/MarwesProvider.svelte +186 -0
- package/dist/provider/MarwesProvider.svelte.d.ts +4 -0
- package/dist/provider/context.d.ts +3 -0
- package/dist/provider/context.js +12 -0
- package/dist/provider/runtime-theme.d.ts +5 -0
- package/dist/provider/runtime-theme.js +63 -0
- package/dist/provider/theme-mode-runtime.d.ts +15 -0
- package/dist/provider/theme-mode-runtime.js +84 -0
- package/dist/provider/types.d.ts +32 -0
- package/dist/provider/types.js +1 -0
- package/dist/provider/use-theme-mode.d.ts +24 -0
- package/dist/provider/use-theme-mode.js +38 -0
- package/dist/provider/use-theme.d.ts +15 -0
- package/dist/provider/use-theme.js +19 -0
- package/dist/ssr.d.ts +2 -0
- package/dist/ssr.js +1 -0
- package/package.json +59 -0
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
<script lang="ts">
|
|
2
|
+
import { createTooltipRecipe } from "@marwes-ui/core";
|
|
3
|
+
import { cssVarsToStyle, mergeStyle } from "../../internal/css-vars.js";
|
|
4
|
+
import { mergeClass } from "../../internal/merge-class.js";
|
|
5
|
+
import type { TooltipProps } from "./types.js";
|
|
6
|
+
|
|
7
|
+
let {
|
|
8
|
+
children,
|
|
9
|
+
class: className,
|
|
10
|
+
style,
|
|
11
|
+
dataAttributes,
|
|
12
|
+
...options
|
|
13
|
+
}: TooltipProps = $props();
|
|
14
|
+
|
|
15
|
+
const kit = $derived(createTooltipRecipe(options));
|
|
16
|
+
const mergedClass = $derived(mergeClass(kit.className, className));
|
|
17
|
+
const mergedStyle = $derived(mergeStyle(cssVarsToStyle(kit.vars), style));
|
|
18
|
+
</script>
|
|
19
|
+
|
|
20
|
+
<span
|
|
21
|
+
id={kit.a11y.id}
|
|
22
|
+
class={mergedClass}
|
|
23
|
+
style={mergedStyle}
|
|
24
|
+
role={kit.a11y.role}
|
|
25
|
+
{...kit.dataAttributes}
|
|
26
|
+
{...dataAttributes}
|
|
27
|
+
>
|
|
28
|
+
{@render children?.()}
|
|
29
|
+
</span>
|
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
<script lang="ts">
|
|
2
|
+
import { IconName } from "@marwes-ui/core";
|
|
3
|
+
import type { IconNameType } from "@marwes-ui/core";
|
|
4
|
+
import { mergeClass } from "../../internal/merge-class.js";
|
|
5
|
+
import Icon from "../icon/Icon.svelte";
|
|
6
|
+
import Tooltip from "./Tooltip.svelte";
|
|
7
|
+
import type { TooltipGroupProps } from "./types.js";
|
|
8
|
+
|
|
9
|
+
const TOOLTIP_EXIT_DURATION_MS = 160;
|
|
10
|
+
|
|
11
|
+
let {
|
|
12
|
+
content,
|
|
13
|
+
icon = IconName.HelpCircle,
|
|
14
|
+
triggerLabel = "Show tooltip",
|
|
15
|
+
open,
|
|
16
|
+
defaultOpen = false,
|
|
17
|
+
onopenchange,
|
|
18
|
+
tooltipId: tooltipIdProp,
|
|
19
|
+
tooltipClass,
|
|
20
|
+
triggerClass,
|
|
21
|
+
dataAttributes,
|
|
22
|
+
class: className,
|
|
23
|
+
id: idProp,
|
|
24
|
+
}: TooltipGroupProps = $props();
|
|
25
|
+
|
|
26
|
+
const uniqueId = $props.id();
|
|
27
|
+
const groupId = $derived(idProp ?? `mw-tooltip-group-${uniqueId}`);
|
|
28
|
+
const resolvedTooltipId = $derived(tooltipIdProp ?? `${groupId}-tooltip`);
|
|
29
|
+
|
|
30
|
+
const isControlled = $derived(open !== undefined);
|
|
31
|
+
let internalOpen = $state(defaultOpen);
|
|
32
|
+
const resolvedOpen = $derived(isControlled ? (open as boolean) : internalOpen);
|
|
33
|
+
let isTooltipMounted = $state(resolvedOpen);
|
|
34
|
+
|
|
35
|
+
$effect(() => {
|
|
36
|
+
if (resolvedOpen) {
|
|
37
|
+
isTooltipMounted = true;
|
|
38
|
+
} else {
|
|
39
|
+
const timer = setTimeout(() => {
|
|
40
|
+
isTooltipMounted = false;
|
|
41
|
+
}, TOOLTIP_EXIT_DURATION_MS);
|
|
42
|
+
return () => clearTimeout(timer);
|
|
43
|
+
}
|
|
44
|
+
});
|
|
45
|
+
|
|
46
|
+
function updateOpen(nextOpen: boolean): void {
|
|
47
|
+
if (resolvedOpen === nextOpen) return;
|
|
48
|
+
if (!isControlled) {
|
|
49
|
+
internalOpen = nextOpen;
|
|
50
|
+
}
|
|
51
|
+
onopenchange?.(nextOpen);
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
const mergedClass = $derived(mergeClass("mw-tooltip-group", className));
|
|
55
|
+
const mergedTriggerClass = $derived(mergeClass("mw-tooltip-group__trigger", triggerClass));
|
|
56
|
+
</script>
|
|
57
|
+
|
|
58
|
+
<span
|
|
59
|
+
id={groupId}
|
|
60
|
+
class={mergedClass}
|
|
61
|
+
data-component="tooltip-group"
|
|
62
|
+
data-open={resolvedOpen ? "true" : undefined}
|
|
63
|
+
{...dataAttributes}
|
|
64
|
+
onmouseenter={() => updateOpen(true)}
|
|
65
|
+
onmouseleave={() => updateOpen(false)}
|
|
66
|
+
onfocusin={() => updateOpen(true)}
|
|
67
|
+
onfocusout={(e) => {
|
|
68
|
+
const related = e.relatedTarget;
|
|
69
|
+
if (related instanceof Node && e.currentTarget.contains(related)) return;
|
|
70
|
+
updateOpen(false);
|
|
71
|
+
}}
|
|
72
|
+
onkeydown={(e) => { if (e.key === "Escape") updateOpen(false); }}
|
|
73
|
+
role="presentation"
|
|
74
|
+
>
|
|
75
|
+
{#if isTooltipMounted}
|
|
76
|
+
<Tooltip
|
|
77
|
+
id={resolvedTooltipId}
|
|
78
|
+
{...(tooltipClass ? { class: tooltipClass } : {})}
|
|
79
|
+
dataAttributes={{
|
|
80
|
+
"data-state": resolvedOpen ? "open" : "closed",
|
|
81
|
+
...(resolvedOpen ? {} : { "aria-hidden": "true" }),
|
|
82
|
+
}}
|
|
83
|
+
>
|
|
84
|
+
{#if typeof content === "string"}
|
|
85
|
+
{content}
|
|
86
|
+
{:else}
|
|
87
|
+
{@render content()}
|
|
88
|
+
{/if}
|
|
89
|
+
</Tooltip>
|
|
90
|
+
{/if}
|
|
91
|
+
|
|
92
|
+
<button
|
|
93
|
+
type="button"
|
|
94
|
+
class={mergedTriggerClass}
|
|
95
|
+
aria-label={triggerLabel}
|
|
96
|
+
aria-describedby={resolvedOpen ? resolvedTooltipId : undefined}
|
|
97
|
+
>
|
|
98
|
+
<Icon name={icon} decorative />
|
|
99
|
+
</button>
|
|
100
|
+
</span>
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import type { IconNameType, TooltipOptions } from "@marwes-ui/core";
|
|
2
|
+
import type { Snippet } from "svelte";
|
|
3
|
+
export interface TooltipProps extends TooltipOptions {
|
|
4
|
+
children?: Snippet;
|
|
5
|
+
class?: string;
|
|
6
|
+
style?: string;
|
|
7
|
+
dataAttributes?: Record<string, string>;
|
|
8
|
+
}
|
|
9
|
+
export interface TooltipGroupProps {
|
|
10
|
+
content: Snippet | string;
|
|
11
|
+
icon?: IconNameType;
|
|
12
|
+
triggerLabel?: string;
|
|
13
|
+
open?: boolean;
|
|
14
|
+
defaultOpen?: boolean;
|
|
15
|
+
onopenchange?: (open: boolean) => void;
|
|
16
|
+
tooltipId?: string;
|
|
17
|
+
tooltipClass?: string;
|
|
18
|
+
triggerClass?: string;
|
|
19
|
+
dataAttributes?: Record<string, string>;
|
|
20
|
+
class?: string;
|
|
21
|
+
id?: string;
|
|
22
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1,149 @@
|
|
|
1
|
+
export { default as MarwesProvider } from "./provider/MarwesProvider.svelte";
|
|
2
|
+
export type { MarwesProviderProps, MarwesContextState, MarwesContextValue, } from "./provider/types.js";
|
|
3
|
+
export { useTheme } from "./provider/use-theme.js";
|
|
4
|
+
export type { UseThemeReturn } from "./provider/use-theme.js";
|
|
5
|
+
export { useThemeMode } from "./provider/use-theme-mode.js";
|
|
6
|
+
export type { ThemeModeContextValue } from "./provider/use-theme-mode.js";
|
|
7
|
+
export { createMarwesThemeScript, createMarwesThemeStyle } from "./ssr.js";
|
|
8
|
+
export type { MarwesThemeScriptOptions, MarwesThemeStyleOptions } from "./ssr.js";
|
|
9
|
+
export { default as Button } from "./components/button/Button.svelte";
|
|
10
|
+
export { default as PrimaryButton } from "./components/button/PrimaryButton.svelte";
|
|
11
|
+
export { default as SecondaryButton } from "./components/button/SecondaryButton.svelte";
|
|
12
|
+
export { default as TextButton } from "./components/button/TextButton.svelte";
|
|
13
|
+
export { default as SuccessButton } from "./components/button/SuccessButton.svelte";
|
|
14
|
+
export { default as DestructiveButton } from "./components/button/DestructiveButton.svelte";
|
|
15
|
+
export { default as SubmitButton } from "./components/button/SubmitButton.svelte";
|
|
16
|
+
export { default as CancelButton } from "./components/button/CancelButton.svelte";
|
|
17
|
+
export { default as CreateButton } from "./components/button/CreateButton.svelte";
|
|
18
|
+
export { default as LinkButton } from "./components/button/LinkButton.svelte";
|
|
19
|
+
export { default as SaveButton } from "./components/button/SaveButton.svelte";
|
|
20
|
+
export { default as ConfirmButton } from "./components/button/ConfirmButton.svelte";
|
|
21
|
+
export { default as VerifyButton } from "./components/button/VerifyButton.svelte";
|
|
22
|
+
export { default as EditButton } from "./components/button/EditButton.svelte";
|
|
23
|
+
export { default as CloseButton } from "./components/button/CloseButton.svelte";
|
|
24
|
+
export { default as RefreshButton } from "./components/button/RefreshButton.svelte";
|
|
25
|
+
export { default as UploadButton } from "./components/button/UploadButton.svelte";
|
|
26
|
+
export { default as DownloadButton } from "./components/button/DownloadButton.svelte";
|
|
27
|
+
export { default as CopyButton } from "./components/button/CopyButton.svelte";
|
|
28
|
+
export { default as SearchButton } from "./components/button/SearchButton.svelte";
|
|
29
|
+
export { default as FilterButton } from "./components/button/FilterButton.svelte";
|
|
30
|
+
export { default as SortButton } from "./components/button/SortButton.svelte";
|
|
31
|
+
export { default as DropdownButton } from "./components/button/DropdownButton.svelte";
|
|
32
|
+
export type { ButtonProps } from "./components/button/types.js";
|
|
33
|
+
export { default as Icon } from "./components/icon/Icon.svelte";
|
|
34
|
+
export type { IconProps } from "./components/icon/types.js";
|
|
35
|
+
export { default as Spinner } from "./components/spinner/Spinner.svelte";
|
|
36
|
+
export { default as ButtonSpinner } from "./components/spinner/ButtonSpinner.svelte";
|
|
37
|
+
export { default as EmptyStateSpinner } from "./components/spinner/EmptyStateSpinner.svelte";
|
|
38
|
+
export type { SpinnerProps, ButtonSpinnerProps } from "./components/spinner/types.js";
|
|
39
|
+
export { default as Input } from "./components/input/Input.svelte";
|
|
40
|
+
export { default as InputField } from "./components/input/InputField.svelte";
|
|
41
|
+
export { default as PasswordField } from "./components/input/PasswordField.svelte";
|
|
42
|
+
export { default as EmailField } from "./components/input/EmailField.svelte";
|
|
43
|
+
export { default as SearchField } from "./components/input/SearchField.svelte";
|
|
44
|
+
export { default as PhoneField } from "./components/input/PhoneField.svelte";
|
|
45
|
+
export { default as URLField } from "./components/input/URLField.svelte";
|
|
46
|
+
export { default as CurrencyField } from "./components/input/CurrencyField.svelte";
|
|
47
|
+
export { default as DateOfBirthField } from "./components/input/DateOfBirthField.svelte";
|
|
48
|
+
export { default as ZipCodeField } from "./components/input/ZipCodeField.svelte";
|
|
49
|
+
export { default as DropdownField } from "./components/input/DropdownField.svelte";
|
|
50
|
+
export { default as InputOtp } from "./components/input/InputOtp.svelte";
|
|
51
|
+
export { default as RichText } from "./components/input/RichText.svelte";
|
|
52
|
+
export { default as RichTextField } from "./components/input/RichTextField.svelte";
|
|
53
|
+
export type { InputProps, InputFieldProps, InputOtpProps, RichTextProps, RichTextFieldProps, } from "./components/input/types.js";
|
|
54
|
+
export { default as Badge } from "./components/badge/Badge.svelte";
|
|
55
|
+
export { default as BadgeGroup } from "./components/badge/BadgeGroup.svelte";
|
|
56
|
+
export { default as StatusBadge } from "./components/badge/StatusBadge.svelte";
|
|
57
|
+
export { default as PriorityBadge } from "./components/badge/PriorityBadge.svelte";
|
|
58
|
+
export { default as NotificationBadge } from "./components/badge/NotificationBadge.svelte";
|
|
59
|
+
export type { BadgeProps, BadgeGroupProps } from "./components/badge/types.js";
|
|
60
|
+
export { default as Card } from "./components/card/Card.svelte";
|
|
61
|
+
export { default as ProductCard } from "./components/card/ProductCard.svelte";
|
|
62
|
+
export { default as ProfileCard } from "./components/card/ProfileCard.svelte";
|
|
63
|
+
export { default as StatCard } from "./components/card/StatCard.svelte";
|
|
64
|
+
export type { CardProps } from "./components/card/types.js";
|
|
65
|
+
export { default as Divider } from "./components/divider/Divider.svelte";
|
|
66
|
+
export type { DividerProps } from "./components/divider/types.js";
|
|
67
|
+
export { default as Spacing } from "./components/spacing/Spacing.svelte";
|
|
68
|
+
export { default as Spacer } from "./components/spacing/Spacer.svelte";
|
|
69
|
+
export type { SpacingProps, SpacerProps } from "./components/spacing/types.js";
|
|
70
|
+
export { default as H1 } from "./components/heading/H1.svelte";
|
|
71
|
+
export { default as H2 } from "./components/heading/H2.svelte";
|
|
72
|
+
export { default as H3 } from "./components/heading/H3.svelte";
|
|
73
|
+
export type { H1Props, H2Props, H3Props } from "./components/heading/types.js";
|
|
74
|
+
export { default as Paragraph } from "./components/paragraph/Paragraph.svelte";
|
|
75
|
+
export type { ParagraphProps } from "./components/paragraph/types.js";
|
|
76
|
+
export { default as Textarea } from "./components/input/Textarea.svelte";
|
|
77
|
+
export { default as TextareaField } from "./components/input/TextareaField.svelte";
|
|
78
|
+
export type { TextareaProps, TextareaFieldProps } from "./components/input/types.js";
|
|
79
|
+
export { default as Select } from "./components/input/Select.svelte";
|
|
80
|
+
export { default as SelectField } from "./components/input/SelectField.svelte";
|
|
81
|
+
export type { SelectProps, SelectFieldProps } from "./components/input/types.js";
|
|
82
|
+
export { default as Checkbox } from "./components/checkbox/Checkbox.svelte";
|
|
83
|
+
export { default as CheckboxField } from "./components/checkbox/CheckboxField.svelte";
|
|
84
|
+
export { default as CheckboxGroupField } from "./components/checkbox/CheckboxGroupField.svelte";
|
|
85
|
+
export type { CheckboxProps, CheckboxFieldProps, CheckboxGroupFieldProps, } from "./components/checkbox/types.js";
|
|
86
|
+
export { default as Switch } from "./components/switch/Switch.svelte";
|
|
87
|
+
export { default as SwitchField } from "./components/switch/SwitchField.svelte";
|
|
88
|
+
export { default as FeatureToggle } from "./components/switch/FeatureToggle.svelte";
|
|
89
|
+
export { default as PreferenceSwitch } from "./components/switch/PreferenceSwitch.svelte";
|
|
90
|
+
export { default as PermissionSwitch } from "./components/switch/PermissionSwitch.svelte";
|
|
91
|
+
export type { SwitchProps, SwitchFieldProps } from "./components/switch/types.js";
|
|
92
|
+
export { default as Radio } from "./components/radio/Radio.svelte";
|
|
93
|
+
export { default as RadioGroupField } from "./components/radio/RadioGroupField.svelte";
|
|
94
|
+
export { default as OptionRadioGroup } from "./components/radio/OptionRadioGroup.svelte";
|
|
95
|
+
export { default as YesNoRadioGroup } from "./components/radio/YesNoRadioGroup.svelte";
|
|
96
|
+
export { default as RatingRadioGroup } from "./components/radio/RatingRadioGroup.svelte";
|
|
97
|
+
export type { RadioProps, RadioGroupFieldProps } from "./components/radio/types.js";
|
|
98
|
+
export { default as Avatar } from "./components/avatar/Avatar.svelte";
|
|
99
|
+
export { default as AvatarBadge } from "./components/avatar/AvatarBadge.svelte";
|
|
100
|
+
export { default as AvatarGroup } from "./components/avatar/AvatarGroup.svelte";
|
|
101
|
+
export { default as ProfileAvatar } from "./components/avatar/ProfileAvatar.svelte";
|
|
102
|
+
export { default as PresenceAvatar } from "./components/avatar/PresenceAvatar.svelte";
|
|
103
|
+
export { default as TeamAvatarGroup } from "./components/avatar/TeamAvatarGroup.svelte";
|
|
104
|
+
export type { AvatarProps } from "./components/avatar/types.js";
|
|
105
|
+
export { default as DatePicker } from "./components/date-picker/DatePicker.svelte";
|
|
106
|
+
export type { DatePickerProps } from "./components/date-picker/types.js";
|
|
107
|
+
export { default as Skeleton } from "./components/skeleton/Skeleton.svelte";
|
|
108
|
+
export type { SkeletonProps } from "./components/skeleton/types.js";
|
|
109
|
+
export { default as StatTile } from "./components/stat-tile/StatTile.svelte";
|
|
110
|
+
export type { StatTileProps } from "./components/stat-tile/types.js";
|
|
111
|
+
export { default as Tooltip } from "./components/tooltip/Tooltip.svelte";
|
|
112
|
+
export { default as TooltipGroup } from "./components/tooltip/TooltipGroup.svelte";
|
|
113
|
+
export type { TooltipProps, TooltipGroupProps } from "./components/tooltip/types.js";
|
|
114
|
+
export { default as Toast } from "./components/toast/Toast.svelte";
|
|
115
|
+
export { default as ToastContainer } from "./components/toast/ToastContainer.svelte";
|
|
116
|
+
export { default as ToastProvider } from "./components/toast/ToastProvider.svelte";
|
|
117
|
+
export { useToast } from "./components/toast/ToastProvider.svelte";
|
|
118
|
+
export { default as SuccessToast } from "./components/toast/SuccessToast.svelte";
|
|
119
|
+
export { default as ErrorToast } from "./components/toast/ErrorToast.svelte";
|
|
120
|
+
export { default as WarningToast } from "./components/toast/WarningToast.svelte";
|
|
121
|
+
export { default as InfoToast } from "./components/toast/InfoToast.svelte";
|
|
122
|
+
export type { ToastProps, ToastContainerProps, ToastProviderProps, ToastController, ManagedToast, ShowToastOptions, SuccessToastProps, ErrorToastProps, WarningToastProps, InfoToastProps, } from "./components/toast/types.js";
|
|
123
|
+
export { default as Dialog } from "./components/dialog/Dialog.svelte";
|
|
124
|
+
export { default as DialogModal } from "./components/dialog/DialogModal.svelte";
|
|
125
|
+
export { default as ConfirmDialog } from "./components/dialog/ConfirmDialog.svelte";
|
|
126
|
+
export { default as DestructiveDialog } from "./components/dialog/DestructiveDialog.svelte";
|
|
127
|
+
export { default as InfoDialog } from "./components/dialog/InfoDialog.svelte";
|
|
128
|
+
export type { DialogProps, DialogModalProps, ConfirmDialogProps, DestructiveDialogProps, InfoDialogProps, } from "./components/dialog/types.js";
|
|
129
|
+
export { default as Accordion } from "./components/accordion/Accordion.svelte";
|
|
130
|
+
export { default as AccordionField } from "./components/accordion/AccordionField.svelte";
|
|
131
|
+
export { default as FAQAccordion } from "./components/accordion/FAQAccordion.svelte";
|
|
132
|
+
export { default as SettingsAccordion } from "./components/accordion/SettingsAccordion.svelte";
|
|
133
|
+
export { default as SectionsAccordion } from "./components/accordion/SectionsAccordion.svelte";
|
|
134
|
+
export type { AccordionProps, AccordionFieldItem, AccordionFieldProps, } from "./components/accordion/types.js";
|
|
135
|
+
export { default as Tab } from "./components/tab/Tab.svelte";
|
|
136
|
+
export { default as TabPanel } from "./components/tab/TabPanel.svelte";
|
|
137
|
+
export { default as TabGroup } from "./components/tab/TabGroup.svelte";
|
|
138
|
+
export { default as NavigationTabs } from "./components/tab/NavigationTabs.svelte";
|
|
139
|
+
export { default as ContentTabs } from "./components/tab/ContentTabs.svelte";
|
|
140
|
+
export { default as SettingsTabs } from "./components/tab/SettingsTabs.svelte";
|
|
141
|
+
export type { TabProps, TabPanelProps, TabGroupProps, TabGroupItem, NavigationTabsProps, ContentTabsProps, SettingsTabsProps, } from "./components/tab/types.js";
|
|
142
|
+
export { default as Slider } from "./components/slider/Slider.svelte";
|
|
143
|
+
export { default as SliderField } from "./components/slider/SliderField.svelte";
|
|
144
|
+
export { default as VolumeSlider } from "./components/slider/VolumeSlider.svelte";
|
|
145
|
+
export { default as BrightnessSlider } from "./components/slider/BrightnessSlider.svelte";
|
|
146
|
+
export { default as RadiusSlider } from "./components/slider/RadiusSlider.svelte";
|
|
147
|
+
export type { SliderProps, SliderFieldProps } from "./components/slider/types.js";
|
|
148
|
+
export { AvatarSize, AvatarType, BadgeVariant, ButtonAction, ButtonSize, ButtonVariant, createFontStack, IconName, mwAvailableFonts, mwFontFallbacks, mwGoogleFontFamilies, mwStyledTheme, mwThemeVarNames, mwThemeVars, mwVar, Spacings, SwitchSize, ThemeMode, } from "@marwes-ui/core";
|
|
149
|
+
export type { Density, FontLoadingConfig, FontLoadingMode, FontLoadingOptions, MwAvailableFont, MwFontFallback, MwGoogleFontFamily, MwStyledTheme, MwThemeVarName, MwThemeVarNames, MwThemeVarReference, MwThemeVars, ResolvedTheme, SpacingSize, Theme, ThemeInput, ThemeModeAttribute, ThemeModeRootTarget, ThemePreference, ThemeVariableStrategy, ToneName, } from "@marwes-ui/core";
|
package/dist/index.js
ADDED
|
@@ -0,0 +1,149 @@
|
|
|
1
|
+
// @marwes-ui/svelte — main public API
|
|
2
|
+
// CSS is NOT imported here. Users import from @marwes-ui/presets explicitly.
|
|
3
|
+
// Provider
|
|
4
|
+
export { default as MarwesProvider } from "./provider/MarwesProvider.svelte";
|
|
5
|
+
export { useTheme } from "./provider/use-theme.js";
|
|
6
|
+
export { useThemeMode } from "./provider/use-theme-mode.js";
|
|
7
|
+
// SSR
|
|
8
|
+
export { createMarwesThemeScript, createMarwesThemeStyle } from "./ssr.js";
|
|
9
|
+
// Button
|
|
10
|
+
export { default as Button } from "./components/button/Button.svelte";
|
|
11
|
+
export { default as PrimaryButton } from "./components/button/PrimaryButton.svelte";
|
|
12
|
+
export { default as SecondaryButton } from "./components/button/SecondaryButton.svelte";
|
|
13
|
+
export { default as TextButton } from "./components/button/TextButton.svelte";
|
|
14
|
+
export { default as SuccessButton } from "./components/button/SuccessButton.svelte";
|
|
15
|
+
export { default as DestructiveButton } from "./components/button/DestructiveButton.svelte";
|
|
16
|
+
export { default as SubmitButton } from "./components/button/SubmitButton.svelte";
|
|
17
|
+
export { default as CancelButton } from "./components/button/CancelButton.svelte";
|
|
18
|
+
export { default as CreateButton } from "./components/button/CreateButton.svelte";
|
|
19
|
+
export { default as LinkButton } from "./components/button/LinkButton.svelte";
|
|
20
|
+
export { default as SaveButton } from "./components/button/SaveButton.svelte";
|
|
21
|
+
export { default as ConfirmButton } from "./components/button/ConfirmButton.svelte";
|
|
22
|
+
export { default as VerifyButton } from "./components/button/VerifyButton.svelte";
|
|
23
|
+
export { default as EditButton } from "./components/button/EditButton.svelte";
|
|
24
|
+
export { default as CloseButton } from "./components/button/CloseButton.svelte";
|
|
25
|
+
export { default as RefreshButton } from "./components/button/RefreshButton.svelte";
|
|
26
|
+
export { default as UploadButton } from "./components/button/UploadButton.svelte";
|
|
27
|
+
export { default as DownloadButton } from "./components/button/DownloadButton.svelte";
|
|
28
|
+
export { default as CopyButton } from "./components/button/CopyButton.svelte";
|
|
29
|
+
export { default as SearchButton } from "./components/button/SearchButton.svelte";
|
|
30
|
+
export { default as FilterButton } from "./components/button/FilterButton.svelte";
|
|
31
|
+
export { default as SortButton } from "./components/button/SortButton.svelte";
|
|
32
|
+
export { default as DropdownButton } from "./components/button/DropdownButton.svelte";
|
|
33
|
+
// Icon
|
|
34
|
+
export { default as Icon } from "./components/icon/Icon.svelte";
|
|
35
|
+
// Spinner
|
|
36
|
+
export { default as Spinner } from "./components/spinner/Spinner.svelte";
|
|
37
|
+
export { default as ButtonSpinner } from "./components/spinner/ButtonSpinner.svelte";
|
|
38
|
+
export { default as EmptyStateSpinner } from "./components/spinner/EmptyStateSpinner.svelte";
|
|
39
|
+
// Input
|
|
40
|
+
export { default as Input } from "./components/input/Input.svelte";
|
|
41
|
+
export { default as InputField } from "./components/input/InputField.svelte";
|
|
42
|
+
export { default as PasswordField } from "./components/input/PasswordField.svelte";
|
|
43
|
+
export { default as EmailField } from "./components/input/EmailField.svelte";
|
|
44
|
+
export { default as SearchField } from "./components/input/SearchField.svelte";
|
|
45
|
+
export { default as PhoneField } from "./components/input/PhoneField.svelte";
|
|
46
|
+
export { default as URLField } from "./components/input/URLField.svelte";
|
|
47
|
+
export { default as CurrencyField } from "./components/input/CurrencyField.svelte";
|
|
48
|
+
export { default as DateOfBirthField } from "./components/input/DateOfBirthField.svelte";
|
|
49
|
+
export { default as ZipCodeField } from "./components/input/ZipCodeField.svelte";
|
|
50
|
+
export { default as DropdownField } from "./components/input/DropdownField.svelte";
|
|
51
|
+
export { default as InputOtp } from "./components/input/InputOtp.svelte";
|
|
52
|
+
export { default as RichText } from "./components/input/RichText.svelte";
|
|
53
|
+
export { default as RichTextField } from "./components/input/RichTextField.svelte";
|
|
54
|
+
// Badge
|
|
55
|
+
export { default as Badge } from "./components/badge/Badge.svelte";
|
|
56
|
+
export { default as BadgeGroup } from "./components/badge/BadgeGroup.svelte";
|
|
57
|
+
export { default as StatusBadge } from "./components/badge/StatusBadge.svelte";
|
|
58
|
+
export { default as PriorityBadge } from "./components/badge/PriorityBadge.svelte";
|
|
59
|
+
export { default as NotificationBadge } from "./components/badge/NotificationBadge.svelte";
|
|
60
|
+
// Card
|
|
61
|
+
export { default as Card } from "./components/card/Card.svelte";
|
|
62
|
+
export { default as ProductCard } from "./components/card/ProductCard.svelte";
|
|
63
|
+
export { default as ProfileCard } from "./components/card/ProfileCard.svelte";
|
|
64
|
+
export { default as StatCard } from "./components/card/StatCard.svelte";
|
|
65
|
+
// Divider
|
|
66
|
+
export { default as Divider } from "./components/divider/Divider.svelte";
|
|
67
|
+
// Spacing
|
|
68
|
+
export { default as Spacing } from "./components/spacing/Spacing.svelte";
|
|
69
|
+
export { default as Spacer } from "./components/spacing/Spacer.svelte";
|
|
70
|
+
// Heading
|
|
71
|
+
export { default as H1 } from "./components/heading/H1.svelte";
|
|
72
|
+
export { default as H2 } from "./components/heading/H2.svelte";
|
|
73
|
+
export { default as H3 } from "./components/heading/H3.svelte";
|
|
74
|
+
// Paragraph
|
|
75
|
+
export { default as Paragraph } from "./components/paragraph/Paragraph.svelte";
|
|
76
|
+
// Textarea
|
|
77
|
+
export { default as Textarea } from "./components/input/Textarea.svelte";
|
|
78
|
+
export { default as TextareaField } from "./components/input/TextareaField.svelte";
|
|
79
|
+
// Select
|
|
80
|
+
export { default as Select } from "./components/input/Select.svelte";
|
|
81
|
+
export { default as SelectField } from "./components/input/SelectField.svelte";
|
|
82
|
+
// Checkbox
|
|
83
|
+
export { default as Checkbox } from "./components/checkbox/Checkbox.svelte";
|
|
84
|
+
export { default as CheckboxField } from "./components/checkbox/CheckboxField.svelte";
|
|
85
|
+
export { default as CheckboxGroupField } from "./components/checkbox/CheckboxGroupField.svelte";
|
|
86
|
+
// Switch
|
|
87
|
+
export { default as Switch } from "./components/switch/Switch.svelte";
|
|
88
|
+
export { default as SwitchField } from "./components/switch/SwitchField.svelte";
|
|
89
|
+
export { default as FeatureToggle } from "./components/switch/FeatureToggle.svelte";
|
|
90
|
+
export { default as PreferenceSwitch } from "./components/switch/PreferenceSwitch.svelte";
|
|
91
|
+
export { default as PermissionSwitch } from "./components/switch/PermissionSwitch.svelte";
|
|
92
|
+
// Radio
|
|
93
|
+
export { default as Radio } from "./components/radio/Radio.svelte";
|
|
94
|
+
export { default as RadioGroupField } from "./components/radio/RadioGroupField.svelte";
|
|
95
|
+
export { default as OptionRadioGroup } from "./components/radio/OptionRadioGroup.svelte";
|
|
96
|
+
export { default as YesNoRadioGroup } from "./components/radio/YesNoRadioGroup.svelte";
|
|
97
|
+
export { default as RatingRadioGroup } from "./components/radio/RatingRadioGroup.svelte";
|
|
98
|
+
// Avatar
|
|
99
|
+
export { default as Avatar } from "./components/avatar/Avatar.svelte";
|
|
100
|
+
export { default as AvatarBadge } from "./components/avatar/AvatarBadge.svelte";
|
|
101
|
+
export { default as AvatarGroup } from "./components/avatar/AvatarGroup.svelte";
|
|
102
|
+
export { default as ProfileAvatar } from "./components/avatar/ProfileAvatar.svelte";
|
|
103
|
+
export { default as PresenceAvatar } from "./components/avatar/PresenceAvatar.svelte";
|
|
104
|
+
export { default as TeamAvatarGroup } from "./components/avatar/TeamAvatarGroup.svelte";
|
|
105
|
+
// DatePicker
|
|
106
|
+
export { default as DatePicker } from "./components/date-picker/DatePicker.svelte";
|
|
107
|
+
// Skeleton
|
|
108
|
+
export { default as Skeleton } from "./components/skeleton/Skeleton.svelte";
|
|
109
|
+
// StatTile
|
|
110
|
+
export { default as StatTile } from "./components/stat-tile/StatTile.svelte";
|
|
111
|
+
// Tooltip
|
|
112
|
+
export { default as Tooltip } from "./components/tooltip/Tooltip.svelte";
|
|
113
|
+
export { default as TooltipGroup } from "./components/tooltip/TooltipGroup.svelte";
|
|
114
|
+
// Toast
|
|
115
|
+
export { default as Toast } from "./components/toast/Toast.svelte";
|
|
116
|
+
export { default as ToastContainer } from "./components/toast/ToastContainer.svelte";
|
|
117
|
+
export { default as ToastProvider } from "./components/toast/ToastProvider.svelte";
|
|
118
|
+
export { useToast } from "./components/toast/ToastProvider.svelte";
|
|
119
|
+
export { default as SuccessToast } from "./components/toast/SuccessToast.svelte";
|
|
120
|
+
export { default as ErrorToast } from "./components/toast/ErrorToast.svelte";
|
|
121
|
+
export { default as WarningToast } from "./components/toast/WarningToast.svelte";
|
|
122
|
+
export { default as InfoToast } from "./components/toast/InfoToast.svelte";
|
|
123
|
+
// Dialog
|
|
124
|
+
export { default as Dialog } from "./components/dialog/Dialog.svelte";
|
|
125
|
+
export { default as DialogModal } from "./components/dialog/DialogModal.svelte";
|
|
126
|
+
export { default as ConfirmDialog } from "./components/dialog/ConfirmDialog.svelte";
|
|
127
|
+
export { default as DestructiveDialog } from "./components/dialog/DestructiveDialog.svelte";
|
|
128
|
+
export { default as InfoDialog } from "./components/dialog/InfoDialog.svelte";
|
|
129
|
+
// Accordion
|
|
130
|
+
export { default as Accordion } from "./components/accordion/Accordion.svelte";
|
|
131
|
+
export { default as AccordionField } from "./components/accordion/AccordionField.svelte";
|
|
132
|
+
export { default as FAQAccordion } from "./components/accordion/FAQAccordion.svelte";
|
|
133
|
+
export { default as SettingsAccordion } from "./components/accordion/SettingsAccordion.svelte";
|
|
134
|
+
export { default as SectionsAccordion } from "./components/accordion/SectionsAccordion.svelte";
|
|
135
|
+
// Tab
|
|
136
|
+
export { default as Tab } from "./components/tab/Tab.svelte";
|
|
137
|
+
export { default as TabPanel } from "./components/tab/TabPanel.svelte";
|
|
138
|
+
export { default as TabGroup } from "./components/tab/TabGroup.svelte";
|
|
139
|
+
export { default as NavigationTabs } from "./components/tab/NavigationTabs.svelte";
|
|
140
|
+
export { default as ContentTabs } from "./components/tab/ContentTabs.svelte";
|
|
141
|
+
export { default as SettingsTabs } from "./components/tab/SettingsTabs.svelte";
|
|
142
|
+
// Slider
|
|
143
|
+
export { default as Slider } from "./components/slider/Slider.svelte";
|
|
144
|
+
export { default as SliderField } from "./components/slider/SliderField.svelte";
|
|
145
|
+
export { default as VolumeSlider } from "./components/slider/VolumeSlider.svelte";
|
|
146
|
+
export { default as BrightnessSlider } from "./components/slider/BrightnessSlider.svelte";
|
|
147
|
+
export { default as RadiusSlider } from "./components/slider/RadiusSlider.svelte";
|
|
148
|
+
// Core re-exports
|
|
149
|
+
export { AvatarSize, AvatarType, BadgeVariant, ButtonAction, ButtonSize, ButtonVariant, createFontStack, IconName, mwAvailableFonts, mwFontFallbacks, mwGoogleFontFamilies, mwStyledTheme, mwThemeVarNames, mwThemeVars, mwVar, Spacings, SwitchSize, ThemeMode, } from "@marwes-ui/core";
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import type { CssVars } from "@marwes-ui/core";
|
|
2
|
+
export type SvelteStyleInput = string | Record<string, string | number | null | undefined> | null | undefined;
|
|
3
|
+
export declare function cssVarsToStyle(vars: CssVars | undefined): string | undefined;
|
|
4
|
+
export declare function styleObjectToString(style: Record<string, string | number | null | undefined> | undefined): string | undefined;
|
|
5
|
+
export declare function mergeStyle(...parts: Array<string | undefined>): string | undefined;
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
export function cssVarsToStyle(vars) {
|
|
2
|
+
if (!vars)
|
|
3
|
+
return undefined;
|
|
4
|
+
const declarations = Object.entries(vars)
|
|
5
|
+
.filter(([, value]) => value !== undefined && value !== null && value !== "")
|
|
6
|
+
.map(([property, value]) => `${property}: ${String(value)}`);
|
|
7
|
+
return declarations.length > 0 ? declarations.join("; ") : undefined;
|
|
8
|
+
}
|
|
9
|
+
export function styleObjectToString(style) {
|
|
10
|
+
if (!style)
|
|
11
|
+
return undefined;
|
|
12
|
+
const declarations = Object.entries(style)
|
|
13
|
+
.filter(([, value]) => value !== undefined && value !== null && value !== "")
|
|
14
|
+
.map(([property, value]) => `${property}: ${String(value)}`);
|
|
15
|
+
return declarations.length > 0 ? declarations.join("; ") : undefined;
|
|
16
|
+
}
|
|
17
|
+
export function mergeStyle(...parts) {
|
|
18
|
+
const style = parts.filter(Boolean).join("; ");
|
|
19
|
+
return style.length > 0 ? style : undefined;
|
|
20
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function mergeClass(...parts: Array<string | false | null | undefined>): string | undefined;
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Convert camelCase SVG attribute names to kebab-case.
|
|
3
|
+
* React JSX does this automatically; Svelte needs it explicitly.
|
|
4
|
+
*
|
|
5
|
+
* e.g. strokeDasharray → stroke-dasharray
|
|
6
|
+
* strokeWidth → stroke-width
|
|
7
|
+
* strokeLinecap → stroke-linecap
|
|
8
|
+
*/
|
|
9
|
+
export declare function svgAttrsToKebab(attrs: Record<string, string>): Record<string, string>;
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Convert camelCase SVG attribute names to kebab-case.
|
|
3
|
+
* React JSX does this automatically; Svelte needs it explicitly.
|
|
4
|
+
*
|
|
5
|
+
* e.g. strokeDasharray → stroke-dasharray
|
|
6
|
+
* strokeWidth → stroke-width
|
|
7
|
+
* strokeLinecap → stroke-linecap
|
|
8
|
+
*/
|
|
9
|
+
export function svgAttrsToKebab(attrs) {
|
|
10
|
+
const result = {};
|
|
11
|
+
for (const [key, value] of Object.entries(attrs)) {
|
|
12
|
+
const kebabKey = key.replace(/([A-Z])/g, "-$1").toLowerCase();
|
|
13
|
+
result[kebabKey] = value;
|
|
14
|
+
}
|
|
15
|
+
return result;
|
|
16
|
+
}
|