@mozaic-ds/web-components 1.0.0-beta.6 → 1.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 +36 -68
- package/dist/Cross20.js +1 -1
- package/dist/Cross20.js.map +1 -1
- package/dist/Cross24.js +1 -1
- package/dist/Cross24.js.map +1 -1
- package/dist/CrossCircleFilled24.js +1 -1
- package/dist/CrossCircleFilled24.js.map +1 -1
- package/dist/attributes.js +1 -1
- package/dist/attributes.js.map +1 -1
- package/dist/bundle.d.ts +24 -23
- package/dist/bundle.d.ts.map +1 -1
- package/dist/bundle.js +24 -23
- package/dist/components/avatar/Avatar.js +2 -5
- package/dist/components/avatar/Avatar.js.map +1 -1
- package/dist/components/avatar/Avatar.spec.js +17 -0
- package/dist/components/avatar/Avatar.stories.d.ts.map +1 -1
- package/dist/components/avatar/Avatar.stories.js +3 -29
- package/dist/components/avatar/Avatar.svelte +9 -10
- package/dist/components/avatar/Avatar.svelte.d.ts +2 -0
- package/dist/components/avatar/Avatar.svelte.d.ts.map +1 -1
- package/dist/components/avatar/README.md +16 -0
- package/dist/components/breadcrumb/Breadcrumb.js +6 -9
- package/dist/components/breadcrumb/Breadcrumb.js.map +1 -1
- package/dist/components/breadcrumb/Breadcrumb.spec.js +42 -0
- package/dist/components/breadcrumb/Breadcrumb.stories.d.ts.map +1 -1
- package/dist/components/breadcrumb/Breadcrumb.stories.js +6 -35
- package/dist/components/breadcrumb/Breadcrumb.svelte +26 -34
- package/dist/components/breadcrumb/Breadcrumb.svelte.d.ts.map +1 -1
- package/dist/components/breadcrumb/README.md +11 -0
- package/dist/components/button/Button.js +3 -6
- package/dist/components/button/Button.js.map +1 -1
- package/dist/components/button/Button.spec.js +74 -0
- package/dist/components/button/Button.stories.d.ts +9 -13
- package/dist/components/button/Button.stories.d.ts.map +1 -1
- package/dist/components/button/Button.stories.js +46 -146
- package/dist/components/button/Button.svelte +186 -168
- package/dist/components/button/Button.svelte.d.ts +36 -8
- package/dist/components/button/Button.svelte.d.ts.map +1 -1
- package/dist/components/button/README.md +26 -0
- package/dist/components/callout/Callout.js +2 -5
- package/dist/components/callout/Callout.js.map +1 -1
- package/dist/components/callout/Callout.spec.js +33 -0
- package/dist/components/callout/Callout.stories.d.ts.map +1 -1
- package/dist/components/callout/Callout.stories.js +2 -55
- package/dist/components/callout/Callout.svelte +15 -14
- package/dist/components/callout/Callout.svelte.d.ts +4 -0
- package/dist/components/callout/Callout.svelte.d.ts.map +1 -1
- package/dist/components/callout/README.md +20 -0
- package/dist/components/checkbox/Checkbox.js +3 -6
- package/dist/components/checkbox/Checkbox.js.map +1 -1
- package/dist/components/checkbox/Checkbox.spec.js +70 -0
- package/dist/components/checkbox/Checkbox.stories.d.ts +11 -16
- package/dist/components/checkbox/Checkbox.stories.d.ts.map +1 -1
- package/dist/components/checkbox/Checkbox.stories.js +67 -124
- package/dist/components/checkbox/Checkbox.svelte +75 -58
- package/dist/components/checkbox/Checkbox.svelte.d.ts +31 -6
- package/dist/components/checkbox/Checkbox.svelte.d.ts.map +1 -1
- package/dist/components/checkbox/README.md +17 -0
- package/dist/components/checkboxgroup/CheckboxGroup.js +4 -7
- package/dist/components/checkboxgroup/CheckboxGroup.js.map +1 -1
- package/dist/components/checkboxgroup/CheckboxGroup.spec.js +113 -0
- package/dist/components/checkboxgroup/CheckboxGroup.stories.d.ts +5 -13
- package/dist/components/checkboxgroup/CheckboxGroup.stories.d.ts.map +1 -1
- package/dist/components/checkboxgroup/CheckboxGroup.stories.js +56 -140
- package/dist/components/checkboxgroup/CheckboxGroup.svelte +89 -81
- package/dist/components/checkboxgroup/CheckboxGroup.svelte.d.ts +30 -6
- package/dist/components/checkboxgroup/CheckboxGroup.svelte.d.ts.map +1 -1
- package/dist/components/checkboxgroup/README.md +14 -0
- package/dist/components/circularprogressbar/CircularProgressbar.js +4 -7
- package/dist/components/circularprogressbar/CircularProgressbar.js.map +1 -1
- package/dist/components/circularprogressbar/CircularProgressbar.spec.js +74 -0
- package/dist/components/circularprogressbar/CircularProgressbar.stories.d.ts +6 -6
- package/dist/components/circularprogressbar/CircularProgressbar.stories.d.ts.map +1 -1
- package/dist/components/circularprogressbar/CircularProgressbar.stories.js +29 -68
- package/dist/components/circularprogressbar/CircularProgressbar.svelte +46 -30
- package/dist/components/circularprogressbar/CircularProgressbar.svelte.d.ts +18 -0
- package/dist/components/circularprogressbar/CircularProgressbar.svelte.d.ts.map +1 -1
- package/dist/components/circularprogressbar/README.md +14 -0
- package/dist/components/datepicker/Datepicker.js +3 -6
- package/dist/components/datepicker/Datepicker.js.map +1 -1
- package/dist/components/datepicker/Datepicker.spec.js +95 -0
- package/dist/components/datepicker/Datepicker.stories.d.ts +7 -6
- package/dist/components/datepicker/Datepicker.stories.d.ts.map +1 -1
- package/dist/components/datepicker/Datepicker.stories.js +58 -75
- package/dist/components/datepicker/Datepicker.svelte +103 -79
- package/dist/components/datepicker/Datepicker.svelte.d.ts +30 -1
- package/dist/components/datepicker/Datepicker.svelte.d.ts.map +1 -1
- package/dist/components/datepicker/README.md +18 -0
- package/dist/components/drawer/Drawer.js +12 -15
- package/dist/components/drawer/Drawer.js.map +1 -1
- package/dist/components/drawer/Drawer.spec.js +101 -0
- package/dist/components/drawer/Drawer.stories.d.ts +29 -8
- package/dist/components/drawer/Drawer.stories.d.ts.map +1 -1
- package/dist/components/drawer/Drawer.stories.js +86 -87
- package/dist/components/drawer/Drawer.svelte +185 -161
- package/dist/components/drawer/Drawer.svelte.d.ts +26 -3
- package/dist/components/drawer/Drawer.svelte.d.ts.map +1 -1
- package/dist/components/drawer/README.md +29 -0
- package/dist/components/field/Field.js +3 -6
- package/dist/components/field/Field.js.map +1 -1
- package/dist/components/field/Field.spec.js +51 -0
- package/dist/components/field/Field.stories.d.ts +9 -15
- package/dist/components/field/Field.stories.d.ts.map +1 -1
- package/dist/components/field/Field.stories.js +86 -142
- package/dist/components/field/Field.svelte +63 -30
- package/dist/components/field/Field.svelte.d.ts +38 -7
- package/dist/components/field/Field.svelte.d.ts.map +1 -1
- package/dist/components/field/README.md +24 -0
- package/dist/components/flag/Flag.js +2 -5
- package/dist/components/flag/Flag.js.map +1 -1
- package/dist/components/flag/Flag.spec.js +30 -0
- package/dist/components/flag/Flag.stories.d.ts +8 -18
- package/dist/components/flag/Flag.stories.d.ts.map +1 -1
- package/dist/components/flag/Flag.stories.js +28 -106
- package/dist/components/flag/Flag.svelte +23 -24
- package/dist/components/flag/Flag.svelte.d.ts +10 -28
- package/dist/components/flag/Flag.svelte.d.ts.map +1 -1
- package/dist/components/flag/README.md +11 -0
- package/dist/components/iconbutton/IconButton.js +2 -5
- package/dist/components/iconbutton/IconButton.js.map +1 -1
- package/dist/components/iconbutton/IconButton.stories.d.ts +11 -11
- package/dist/components/iconbutton/IconButton.stories.d.ts.map +1 -1
- package/dist/components/iconbutton/IconButton.stories.js +51 -67
- package/dist/components/iconbutton/IconButton.svelte +157 -152
- package/dist/components/iconbutton/IconButton.svelte.d.ts +28 -7
- package/dist/components/iconbutton/IconButton.svelte.d.ts.map +1 -1
- package/dist/components/iconbutton/README.md +21 -0
- package/dist/components/linearprogressbarbuffer/LinearProgressbarBuffer.js +2 -5
- package/dist/components/linearprogressbarbuffer/LinearProgressbarBuffer.js.map +1 -1
- package/dist/components/linearprogressbarbuffer/LinearProgressbarBuffer.spec.js +28 -0
- package/dist/components/linearprogressbarbuffer/LinearProgressbarBuffer.stories.d.ts +5 -7
- package/dist/components/linearprogressbarbuffer/LinearProgressbarBuffer.stories.d.ts.map +1 -1
- package/dist/components/linearprogressbarbuffer/LinearProgressbarBuffer.stories.js +18 -49
- package/dist/components/linearprogressbarbuffer/LinearProgressbarBuffer.svelte +19 -12
- package/dist/components/linearprogressbarbuffer/LinearProgressbarBuffer.svelte.d.ts +10 -1
- package/dist/components/linearprogressbarbuffer/LinearProgressbarBuffer.svelte.d.ts.map +1 -1
- package/dist/components/linearprogressbarbuffer/README.md +11 -0
- package/dist/components/linearprogressbarpercentage/LinearProgressbarPercentage.js +2 -5
- package/dist/components/linearprogressbarpercentage/LinearProgressbarPercentage.js.map +1 -1
- package/dist/components/linearprogressbarpercentage/LinearProgressbarPercentage.spec.js +26 -0
- package/dist/components/linearprogressbarpercentage/LinearProgressbarPercentage.stories.d.ts +4 -5
- package/dist/components/linearprogressbarpercentage/LinearProgressbarPercentage.stories.d.ts.map +1 -1
- package/dist/components/linearprogressbarpercentage/LinearProgressbarPercentage.stories.js +15 -33
- package/dist/components/linearprogressbarpercentage/LinearProgressbarPercentage.svelte +19 -16
- package/dist/components/linearprogressbarpercentage/LinearProgressbarPercentage.svelte.d.ts +6 -0
- package/dist/components/linearprogressbarpercentage/LinearProgressbarPercentage.svelte.d.ts.map +1 -1
- package/dist/components/linearprogressbarpercentage/README.md +10 -0
- package/dist/components/link/Link.js +2 -5
- package/dist/components/link/Link.js.map +1 -1
- package/dist/components/link/Link.spec.js +51 -0
- package/dist/components/link/Link.stories.d.ts +12 -12
- package/dist/components/link/Link.stories.d.ts.map +1 -1
- package/dist/components/link/Link.stories.js +61 -74
- package/dist/components/link/Link.svelte +54 -52
- package/dist/components/link/Link.svelte.d.ts +29 -8
- package/dist/components/link/Link.svelte.d.ts.map +1 -1
- package/dist/components/link/README.md +23 -0
- package/dist/components/loader/Loader.js +7 -10
- package/dist/components/loader/Loader.js.map +1 -1
- package/dist/components/loader/Loader.spec.js +54 -0
- package/dist/components/loader/Loader.stories.d.ts +8 -10
- package/dist/components/loader/Loader.stories.d.ts.map +1 -1
- package/dist/components/loader/Loader.stories.js +27 -43
- package/dist/components/loader/Loader.svelte +42 -43
- package/dist/components/loader/Loader.svelte.d.ts +14 -3
- package/dist/components/loader/Loader.svelte.d.ts.map +1 -1
- package/dist/components/loader/README.md +12 -0
- package/dist/components/loadingoverlay/LoadingOverlay.js +4 -0
- package/dist/components/loadingoverlay/LoadingOverlay.js.map +1 -0
- package/dist/components/loadingoverlay/LoadingOverlay.spec.js +38 -0
- package/dist/components/loadingoverlay/LoadingOverlay.stories.d.ts +7 -0
- package/dist/components/loadingoverlay/LoadingOverlay.stories.d.ts.map +1 -0
- package/dist/components/loadingoverlay/LoadingOverlay.stories.js +39 -0
- package/dist/components/loadingoverlay/LoadingOverlay.svelte +50 -0
- package/dist/components/loadingoverlay/LoadingOverlay.svelte.d.ts +17 -0
- package/dist/components/loadingoverlay/LoadingOverlay.svelte.d.ts.map +1 -0
- package/dist/components/loadingoverlay/README.md +11 -0
- package/dist/components/modal/Modal.js +14 -17
- package/dist/components/modal/Modal.js.map +1 -1
- package/dist/components/modal/Modal.spec.js +50 -0
- package/dist/components/modal/Modal.stories.d.ts +36 -9
- package/dist/components/modal/Modal.stories.d.ts.map +1 -1
- package/dist/components/modal/Modal.stories.js +54 -83
- package/dist/components/modal/Modal.svelte +167 -166
- package/dist/components/modal/Modal.svelte.d.ts +22 -5
- package/dist/components/modal/Modal.svelte.d.ts.map +1 -1
- package/dist/components/modal/README.md +28 -0
- package/dist/components/numberbadge/NumberBadge.js +2 -5
- package/dist/components/numberbadge/NumberBadge.js.map +1 -1
- package/dist/components/numberbadge/NumberBadge.spec.js +28 -0
- package/dist/components/numberbadge/NumberBadge.stories.d.ts +9 -13
- package/dist/components/numberbadge/NumberBadge.stories.d.ts.map +1 -1
- package/dist/components/numberbadge/NumberBadge.stories.js +28 -56
- package/dist/components/numberbadge/NumberBadge.svelte +36 -35
- package/dist/components/numberbadge/NumberBadge.svelte.d.ts +15 -4
- package/dist/components/numberbadge/NumberBadge.svelte.d.ts.map +1 -1
- package/dist/components/numberbadge/README.md +12 -0
- package/dist/components/overlay/Overlay.js +2 -5
- package/dist/components/overlay/Overlay.js.map +1 -1
- package/dist/components/overlay/Overlay.spec.js +29 -0
- package/dist/components/overlay/Overlay.stories.d.ts +5 -7
- package/dist/components/overlay/Overlay.stories.d.ts.map +1 -1
- package/dist/components/overlay/Overlay.stories.js +32 -40
- package/dist/components/overlay/Overlay.svelte +21 -12
- package/dist/components/overlay/Overlay.svelte.d.ts +11 -0
- package/dist/components/overlay/Overlay.svelte.d.ts.map +1 -1
- package/dist/components/overlay/README.md +17 -0
- package/dist/components/pagination/Pagination.js +8 -11
- package/dist/components/pagination/Pagination.js.map +1 -1
- package/dist/components/pagination/Pagination.spec.js +65 -0
- package/dist/components/pagination/Pagination.stories.d.ts +8 -11
- package/dist/components/pagination/Pagination.stories.d.ts.map +1 -1
- package/dist/components/pagination/Pagination.stories.js +37 -91
- package/dist/components/pagination/Pagination.svelte +53 -35
- package/dist/components/pagination/Pagination.svelte.d.ts +27 -4
- package/dist/components/pagination/Pagination.svelte.d.ts.map +1 -1
- package/dist/components/pagination/README.md +16 -0
- package/dist/components/passwordinput/PasswordInput.js +4 -9
- package/dist/components/passwordinput/PasswordInput.js.map +1 -1
- package/dist/components/passwordinput/PasswordInput.spec.js +84 -0
- package/dist/components/passwordinput/PasswordInput.stories.d.ts +10 -13
- package/dist/components/passwordinput/PasswordInput.stories.d.ts.map +1 -1
- package/dist/components/passwordinput/PasswordInput.stories.js +67 -124
- package/dist/components/passwordinput/PasswordInput.svelte +424 -60
- package/dist/components/passwordinput/PasswordInput.svelte.d.ts +34 -2
- package/dist/components/passwordinput/PasswordInput.svelte.d.ts.map +1 -1
- package/dist/components/passwordinput/README.md +19 -0
- package/dist/components/pincode/Pincode.js +4 -7
- package/dist/components/pincode/Pincode.js.map +1 -1
- package/dist/components/pincode/Pincode.spec.js +99 -0
- package/dist/components/pincode/Pincode.stories.d.ts +9 -13
- package/dist/components/pincode/Pincode.stories.d.ts.map +1 -1
- package/dist/components/pincode/Pincode.stories.js +62 -127
- package/dist/components/pincode/Pincode.svelte +72 -60
- package/dist/components/pincode/Pincode.svelte.d.ts +30 -24
- package/dist/components/pincode/Pincode.svelte.d.ts.map +1 -1
- package/dist/components/pincode/README.md +22 -0
- package/dist/components/quantityselector/QuantitySelector.js +3 -7
- package/dist/components/quantityselector/QuantitySelector.js.map +1 -1
- package/dist/components/quantityselector/QuantitySelector.spec.js +104 -0
- package/dist/components/quantityselector/QuantitySelector.stories.d.ts +11 -15
- package/dist/components/quantityselector/QuantitySelector.stories.d.ts.map +1 -1
- package/dist/components/quantityselector/QuantitySelector.stories.js +77 -145
- package/dist/components/quantityselector/QuantitySelector.svelte +136 -112
- package/dist/components/quantityselector/QuantitySelector.svelte.d.ts +49 -17
- package/dist/components/quantityselector/QuantitySelector.svelte.d.ts.map +1 -1
- package/dist/components/quantityselector/README.md +21 -0
- package/dist/components/radio/README.md +15 -0
- package/dist/components/radio/Radio.js +2 -5
- package/dist/components/radio/Radio.js.map +1 -1
- package/dist/components/radio/Radio.spec.js +60 -0
- package/dist/components/radio/Radio.stories.d.ts +9 -13
- package/dist/components/radio/Radio.stories.d.ts.map +1 -1
- package/dist/components/radio/Radio.stories.js +54 -70
- package/dist/components/radio/Radio.svelte +58 -39
- package/dist/components/radio/Radio.svelte.d.ts +27 -5
- package/dist/components/radio/Radio.svelte.d.ts.map +1 -1
- package/dist/components/radiogroup/README.md +14 -0
- package/dist/components/radiogroup/RadioGroup.js +4 -7
- package/dist/components/radiogroup/RadioGroup.js.map +1 -1
- package/dist/components/radiogroup/RadioGroup.spec.js +65 -0
- package/dist/components/radiogroup/RadioGroup.stories.d.ts +5 -12
- package/dist/components/radiogroup/RadioGroup.stories.d.ts.map +1 -1
- package/dist/components/radiogroup/RadioGroup.stories.js +56 -151
- package/dist/components/radiogroup/RadioGroup.svelte +81 -77
- package/dist/components/radiogroup/RadioGroup.svelte.d.ts +28 -9
- package/dist/components/radiogroup/RadioGroup.svelte.d.ts.map +1 -1
- package/dist/components/select/README.md +18 -0
- package/dist/components/select/Select.js +3 -6
- package/dist/components/select/Select.js.map +1 -1
- package/dist/components/select/Select.spec.js +76 -0
- package/dist/components/select/Select.stories.d.ts +10 -14
- package/dist/components/select/Select.stories.d.ts.map +1 -1
- package/dist/components/select/Select.stories.js +87 -92
- package/dist/components/select/Select.svelte +77 -67
- package/dist/components/select/Select.svelte.d.ts +41 -10
- package/dist/components/select/Select.svelte.d.ts.map +1 -1
- package/dist/components/statusbadge/README.md +11 -0
- package/dist/components/statusbadge/StatusBadge.js +2 -5
- package/dist/components/statusbadge/StatusBadge.js.map +1 -1
- package/dist/components/statusbadge/StatusBadge.spec.js +31 -0
- package/dist/components/statusbadge/StatusBadge.stories.d.ts +9 -12
- package/dist/components/statusbadge/StatusBadge.stories.d.ts.map +1 -1
- package/dist/components/statusbadge/StatusBadge.stories.js +21 -44
- package/dist/components/statusbadge/StatusBadge.svelte +34 -29
- package/dist/components/statusbadge/StatusBadge.svelte.d.ts +13 -28
- package/dist/components/statusbadge/StatusBadge.svelte.d.ts.map +1 -1
- package/dist/components/statusdot/README.md +11 -0
- package/dist/components/statusdot/StatusDot.js +2 -5
- package/dist/components/statusdot/StatusDot.js.map +1 -1
- package/dist/components/statusdot/StatusDot.spec.js +42 -0
- package/dist/components/statusdot/StatusDot.stories.d.ts.map +1 -1
- package/dist/components/statusdot/StatusDot.stories.js +9 -37
- package/dist/components/statusdot/StatusDot.svelte +15 -16
- package/dist/components/statusdot/StatusDot.svelte.d.ts +2 -2
- package/dist/components/statusdot/StatusDot.svelte.d.ts.map +1 -1
- package/dist/components/statusnotification/README.md +25 -0
- package/dist/components/statusnotification/StatusNotification.js +3 -6
- package/dist/components/statusnotification/StatusNotification.js.map +1 -1
- package/dist/components/statusnotification/StatusNotification.spec.js +54 -0
- package/dist/components/statusnotification/StatusNotification.stories.d.ts +16 -14
- package/dist/components/statusnotification/StatusNotification.stories.d.ts.map +1 -1
- package/dist/components/statusnotification/StatusNotification.stories.js +53 -86
- package/dist/components/statusnotification/StatusNotification.svelte +186 -187
- package/dist/components/statusnotification/StatusNotification.svelte.d.ts +21 -18
- package/dist/components/statusnotification/StatusNotification.svelte.d.ts.map +1 -1
- package/dist/components/tab/README.md +20 -0
- package/dist/components/tab/Tab.js +4 -0
- package/dist/components/tab/Tab.js.map +1 -0
- package/dist/components/tab/Tab.spec.js +58 -0
- package/dist/components/tab/Tab.svelte +154 -0
- package/dist/components/{tabs → tab}/Tab.svelte.d.ts +20 -3
- package/dist/components/tab/Tab.svelte.d.ts.map +1 -0
- package/dist/components/tabs/README.md +18 -0
- package/dist/components/tabs/Tabs.js +2 -5
- package/dist/components/tabs/Tabs.js.map +1 -1
- package/dist/components/tabs/Tabs.spec.js +51 -0
- package/dist/components/tabs/Tabs.stories.d.ts +9 -6
- package/dist/components/tabs/Tabs.stories.d.ts.map +1 -1
- package/dist/components/tabs/Tabs.stories.js +59 -115
- package/dist/components/tabs/Tabs.svelte +46 -29
- package/dist/components/tabs/Tabs.svelte.d.ts +21 -7
- package/dist/components/tabs/Tabs.svelte.d.ts.map +1 -1
- package/dist/components/tags/README.md +9 -0
- package/dist/components/tags/Tag.js +2 -5
- package/dist/components/tags/Tag.js.map +1 -1
- package/dist/components/tags/Tag.svelte +35 -38
- package/dist/components/tags/TagContextualised.js +2 -5
- package/dist/components/tags/TagContextualised.js.map +1 -1
- package/dist/components/tags/TagContextualised.svelte +35 -38
- package/dist/components/tags/TagInteractive.js +2 -5
- package/dist/components/tags/TagInteractive.js.map +1 -1
- package/dist/components/tags/TagInteractive.svelte +35 -38
- package/dist/components/tags/TagRemovable.js +2 -5
- package/dist/components/tags/TagRemovable.js.map +1 -1
- package/dist/components/tags/TagRemovable.svelte +35 -38
- package/dist/components/tags/TagSelectable.js +2 -5
- package/dist/components/tags/TagSelectable.js.map +1 -1
- package/dist/components/tags/TagSelectable.svelte +35 -38
- package/dist/components/tags/Tags.stories.d.ts.map +1 -1
- package/dist/components/tags/Tags.stories.js +7 -1
- package/dist/components/tags/TagsContextualised.stories.d.ts.map +1 -1
- package/dist/components/tags/TagsContextualised.stories.js +7 -1
- package/dist/components/tags/TagsInteractive.stories.d.ts.map +1 -1
- package/dist/components/tags/TagsInteractive.stories.js +7 -1
- package/dist/components/tags/TagsRemovable.stories.d.ts.map +1 -1
- package/dist/components/tags/TagsRemovable.stories.js +7 -1
- package/dist/components/tags/TagsSelectable.stories.d.ts.map +1 -1
- package/dist/components/tags/TagsSelectable.stories.js +7 -1
- package/dist/components/textarea/README.md +19 -0
- package/dist/components/textarea/Textarea.js +2 -8
- package/dist/components/textarea/Textarea.js.map +1 -1
- package/dist/components/textarea/Textarea.spec.js +67 -0
- package/dist/components/textarea/Textarea.stories.d.ts +9 -13
- package/dist/components/textarea/Textarea.stories.d.ts.map +1 -1
- package/dist/components/textarea/Textarea.stories.js +61 -92
- package/dist/components/textarea/Textarea.svelte +70 -117
- package/dist/components/textarea/Textarea.svelte.d.ts +43 -13
- package/dist/components/textarea/Textarea.svelte.d.ts.map +1 -1
- package/dist/components/textinput/README.md +26 -0
- package/dist/components/textinput/Textinput.js +5 -9
- package/dist/components/textinput/Textinput.js.map +1 -1
- package/dist/components/textinput/Textinput.spec.js +89 -0
- package/dist/components/textinput/Textinput.stories.d.ts +11 -12
- package/dist/components/textinput/Textinput.stories.d.ts.map +1 -1
- package/dist/components/textinput/Textinput.stories.js +78 -137
- package/dist/components/textinput/Textinput.svelte +107 -148
- package/dist/components/textinput/Textinput.svelte.d.ts +46 -22
- package/dist/components/textinput/Textinput.svelte.d.ts.map +1 -1
- package/dist/components/toaster/README.md +28 -0
- package/dist/components/toaster/Toaster.js +5 -8
- package/dist/components/toaster/Toaster.js.map +1 -1
- package/dist/components/toaster/Toaster.spec.js +100 -0
- package/dist/components/toaster/Toaster.stories.d.ts.map +1 -1
- package/dist/components/toaster/Toaster.stories.js +5 -73
- package/dist/components/toaster/Toaster.svelte +157 -146
- package/dist/components/toaster/Toaster.svelte.d.ts +3 -0
- package/dist/components/toaster/Toaster.svelte.d.ts.map +1 -1
- package/dist/components/toggle/README.md +15 -0
- package/dist/components/toggle/Toggle.js +2 -5
- package/dist/components/toggle/Toggle.js.map +1 -1
- package/dist/components/toggle/Toggle.spec.js +69 -0
- package/dist/components/toggle/Toggle.stories.d.ts +9 -14
- package/dist/components/toggle/Toggle.stories.d.ts.map +1 -1
- package/dist/components/toggle/Toggle.stories.js +55 -64
- package/dist/components/toggle/Toggle.svelte +59 -48
- package/dist/components/toggle/Toggle.svelte.d.ts +26 -7
- package/dist/components/toggle/Toggle.svelte.d.ts.map +1 -1
- package/dist/components/togglegroup/README.md +13 -0
- package/dist/components/togglegroup/ToggleGroup.js +3 -6
- package/dist/components/togglegroup/ToggleGroup.js.map +1 -1
- package/dist/components/togglegroup/ToggleGroup.spec.js +50 -0
- package/dist/components/togglegroup/ToggleGroup.stories.d.ts +5 -13
- package/dist/components/togglegroup/ToggleGroup.stories.d.ts.map +1 -1
- package/dist/components/togglegroup/ToggleGroup.stories.js +56 -104
- package/dist/components/togglegroup/ToggleGroup.svelte +91 -97
- package/dist/components/togglegroup/ToggleGroup.svelte.d.ts +25 -14
- package/dist/components/togglegroup/ToggleGroup.svelte.d.ts.map +1 -1
- package/dist/components/tooltip/README.md +19 -0
- package/dist/components/tooltip/Tooltip.js +4 -7
- package/dist/components/tooltip/Tooltip.js.map +1 -1
- package/dist/components/tooltip/Tooltip.spec.js +38 -0
- package/dist/components/tooltip/Tooltip.stories.d.ts +6 -7
- package/dist/components/tooltip/Tooltip.stories.d.ts.map +1 -1
- package/dist/components/tooltip/Tooltip.stories.js +45 -59
- package/dist/components/tooltip/Tooltip.svelte +31 -25
- package/dist/components/tooltip/Tooltip.svelte.d.ts +17 -0
- package/dist/components/tooltip/Tooltip.svelte.d.ts.map +1 -1
- package/dist/custom-element-forward-events.js.map +1 -1
- package/dist/custom-element.js +3 -3
- package/dist/custom-element.js.map +1 -1
- package/dist/documentation/Contributing.mdx +1 -1
- package/dist/documentation/Introduction.mdx +45 -11
- package/dist/documentation/SupportAndOnboarding.mdx +2 -2
- package/dist/each.js +1 -1
- package/dist/each.js.map +1 -1
- package/dist/if.js +1 -1
- package/dist/if.js.map +1 -1
- package/dist/input.js +1 -1
- package/dist/input.js.map +1 -1
- package/dist/legacy.js +1 -1
- package/dist/legacy.js.map +1 -1
- package/dist/main.d.ts +24 -23
- package/dist/main.d.ts.map +1 -1
- package/dist/main.js +24 -23
- package/dist/slot.js +1 -1
- package/dist/slot.js.map +1 -1
- package/dist/this.js +2 -0
- package/dist/this.js.map +1 -0
- package/package.json +12 -4
- package/dist/components/button/button.types.d.ts +0 -13
- package/dist/components/button/button.types.d.ts.map +0 -1
- package/dist/components/button/button.types.js +0 -1
- package/dist/components/checkboxgroup/checkboxgroup.types.d.ts +0 -9
- package/dist/components/checkboxgroup/checkboxgroup.types.d.ts.map +0 -1
- package/dist/components/checkboxgroup/checkboxgroup.types.js +0 -1
- package/dist/components/link/link.types.d.ts +0 -4
- package/dist/components/link/link.types.d.ts.map +0 -1
- package/dist/components/link/link.types.js +0 -1
- package/dist/components/loader/loader.types.d.ts +0 -3
- package/dist/components/loader/loader.types.d.ts.map +0 -1
- package/dist/components/loader/loader.types.js +0 -1
- package/dist/components/numberbadge/NumberBadge.types.d.ts +0 -3
- package/dist/components/numberbadge/NumberBadge.types.d.ts.map +0 -1
- package/dist/components/numberbadge/NumberBadge.types.js +0 -1
- package/dist/components/overlayloader/OverlayLoader.js +0 -30
- package/dist/components/overlayloader/OverlayLoader.js.map +0 -1
- package/dist/components/overlayloader/OverlayLoader.stories.d.ts +0 -8
- package/dist/components/overlayloader/OverlayLoader.stories.d.ts.map +0 -1
- package/dist/components/overlayloader/OverlayLoader.stories.js +0 -50
- package/dist/components/overlayloader/OverlayLoader.svelte +0 -159
- package/dist/components/overlayloader/OverlayLoader.svelte.d.ts +0 -9
- package/dist/components/overlayloader/OverlayLoader.svelte.d.ts.map +0 -1
- package/dist/components/quantityselector/quantitySelector.types.d.ts +0 -2
- package/dist/components/quantityselector/quantitySelector.types.d.ts.map +0 -1
- package/dist/components/quantityselector/quantitySelector.types.js +0 -1
- package/dist/components/radiogroup/radioGroup.types.d.ts +0 -9
- package/dist/components/radiogroup/radioGroup.types.d.ts.map +0 -1
- package/dist/components/radiogroup/radioGroup.types.js +0 -1
- package/dist/components/select/select.types.d.ts +0 -9
- package/dist/components/select/select.types.d.ts.map +0 -1
- package/dist/components/select/select.types.js +0 -1
- package/dist/components/statusbadge/StatusBadge.types.d.ts +0 -2
- package/dist/components/statusbadge/StatusBadge.types.d.ts.map +0 -1
- package/dist/components/statusbadge/StatusBadge.types.js +0 -1
- package/dist/components/statusdot/StatusDot.types.d.ts +0 -3
- package/dist/components/statusdot/StatusDot.types.d.ts.map +0 -1
- package/dist/components/statusdot/StatusDot.types.js +0 -1
- package/dist/components/tabs/Tab.js +0 -7
- package/dist/components/tabs/Tab.js.map +0 -1
- package/dist/components/tabs/Tab.svelte +0 -137
- package/dist/components/tabs/Tab.svelte.d.ts.map +0 -1
- package/dist/components/textinput/textinput.types.d.ts +0 -3
- package/dist/components/textinput/textinput.types.d.ts.map +0 -1
- package/dist/components/textinput/textinput.types.js +0 -1
- package/dist/components/toggle/toggle.types.d.ts +0 -2
- package/dist/components/toggle/toggle.types.d.ts.map +0 -1
- package/dist/components/toggle/toggle.types.js +0 -1
- package/dist/index-client.js +0 -2
- package/dist/index-client.js.map +0 -1
- package/dist/snippet.js +0 -2
- package/dist/snippet.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Link.js","sources":["../../../src/components/link/Link.svelte"],"sourcesContent":["<svelte:options customElement
|
|
1
|
+
{"version":3,"file":"Link.js","sources":["../../../src/components/link/Link.svelte"],"sourcesContent":["<svelte:options customElement={{ tag: 'm-link' }} />\n\n<script lang=\"ts\">\n /**\n * A link is an interactive text element used to navigate between pages, sections, or external resources. It is typically underlined and styled to indicate its clickable nature. Links can be standalone or embedded within text, and they may include icons to reinforce their purpose. They are essential for navigation and content referencing in web and application interfaces.\n *\n * @slot default - Use this slot to insert the textual content of the Link.\n * @slot icon - Use this slot to insert an icon for the Link.\n */\n interface Props {\n /**\n * Position of the icon relative to the text.\n */\n iconposition?: 'left' | 'right';\n /**\n * Allows to define the link appearance.\n */\n appearance?: 'secondary' | 'accent' | 'inverse' | 'standard';\n /**\n * Allows to define the link size.\n */\n size?: 's' | 'm';\n /**\n * URL for the link.\n */\n href?: string;\n /**\n * Where to open the link.\n */\n target?: '_self' | '_blank' | '_parent' | '_top';\n /**\n * Specify wether the link is inline.\n */\n inline?: boolean;\n }\n\n let {\n href,\n target,\n inline,\n appearance = 'standard',\n size = 's',\n iconposition = 'left',\n }: Props = $props();\n</script>\n\n<a\n class={[\n 'mc-link',\n `mc-link--${appearance}`,\n `mc-link--${size}`,\n inline && 'mc-link--inline',\n !inline && 'mc-link--stand-alone',\n ]}\n {href}\n {target}\n>\n {#if iconposition === 'left'}\n <span class=\"mc-link__icon\">\n <slot name=\"icon\" />\n </span>\n {/if}\n <span class=\"mc-link__label\">\n <slot />\n </span>\n {#if iconposition === 'right'}\n <span class=\"mc-link__icon\">\n <slot name=\"icon\" />\n </span>\n {/if}\n</a>\n\n<style lang=\"scss\">\n @use '@mozaic-ds/styles/components/link';\n\n .mc-link__icon:empty {\n display: none;\n }\n</style>\n"],"names":["href","$.prop","$$props","target","inline","appearance","size","iconposition","$$render","consequent","consequent_1"],"mappings":";;mzDAAA,oBAqCIA,EAAIC,EAAAC,EAAA,OAAA,CAAA,EACJC,EAAMF,EAAAC,EAAA,SAAA,CAAA,EACNE,EAAMH,EAAAC,EAAA,SAAA,CAAA,EACNG,qBAAa,UAAU,EACvBC,eAAO,GAAG,EACVC,uBAAe,MAAM,sMAFR,WAAU,6CAChB,IAAG,6DACK,OAAM,2FAelBA,EAAY,IAAK,QAAMC,EAAAC,CAAA,gIAQvBF,EAAY,IAAK,SAAOC,EAAAE,CAAA,gCAjB3B,sBACYL,EAAU,CAAA,eACVC,EAAI,CAAA,GAChBF,EAAM,GAAI,kBACT,CAAAA,EAAM,GAAI,yFARf"}
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
import { describe, it, expect } from 'vitest';
|
|
2
|
+
import { render } from '@testing-library/svelte';
|
|
3
|
+
import Link from './Link.svelte';
|
|
4
|
+
describe('m-link component', () => {
|
|
5
|
+
it('renders with default props and correct classes', () => {
|
|
6
|
+
const { container } = render(Link, {
|
|
7
|
+
props: {
|
|
8
|
+
href: 'https://example.com',
|
|
9
|
+
},
|
|
10
|
+
});
|
|
11
|
+
const link = container.querySelector('a.mc-link');
|
|
12
|
+
expect(link).toBeTruthy();
|
|
13
|
+
expect(link).toHaveAttribute('href', 'https://example.com');
|
|
14
|
+
expect(link.classList.contains('mc-link--standard')).toBe(true);
|
|
15
|
+
expect(link.classList.contains('mc-link--s')).toBe(true);
|
|
16
|
+
expect(link.classList.contains('mc-link--stand-alone')).toBe(true);
|
|
17
|
+
});
|
|
18
|
+
it('renders with inline class when inline prop is true', () => {
|
|
19
|
+
const { container } = render(Link, {
|
|
20
|
+
props: {
|
|
21
|
+
href: 'https://example.com',
|
|
22
|
+
inline: true,
|
|
23
|
+
},
|
|
24
|
+
});
|
|
25
|
+
const link = container.querySelector('a.mc-link');
|
|
26
|
+
expect(link.classList.contains('mc-link--inline')).toBe(true);
|
|
27
|
+
expect(link.classList.contains('mc-link--stand-alone')).toBe(false);
|
|
28
|
+
});
|
|
29
|
+
it('applies appearance and size classes correctly', () => {
|
|
30
|
+
const { container } = render(Link, {
|
|
31
|
+
props: {
|
|
32
|
+
href: 'https://example.com',
|
|
33
|
+
appearance: 'accent',
|
|
34
|
+
size: 'm',
|
|
35
|
+
},
|
|
36
|
+
});
|
|
37
|
+
const link = container.querySelector('a.mc-link');
|
|
38
|
+
expect(link.classList.contains('mc-link--accent')).toBe(true);
|
|
39
|
+
expect(link.classList.contains('mc-link--m')).toBe(true);
|
|
40
|
+
});
|
|
41
|
+
it('sets target attribute correctly', () => {
|
|
42
|
+
const { container } = render(Link, {
|
|
43
|
+
props: {
|
|
44
|
+
href: 'https://example.com',
|
|
45
|
+
target: '_blank',
|
|
46
|
+
},
|
|
47
|
+
});
|
|
48
|
+
const link = container.querySelector('a.mc-link');
|
|
49
|
+
expect(link).toHaveAttribute('target', '_blank');
|
|
50
|
+
});
|
|
51
|
+
});
|
|
@@ -1,13 +1,13 @@
|
|
|
1
|
-
import type { Meta } from '@storybook/
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
declare const
|
|
9
|
-
export
|
|
10
|
-
export declare const
|
|
11
|
-
export declare const IconLeft:
|
|
12
|
-
export declare const IconRight:
|
|
1
|
+
import type { Meta, StoryObj } from '@storybook/web-components-vite';
|
|
2
|
+
declare const meta: Meta;
|
|
3
|
+
export default meta;
|
|
4
|
+
type Story = StoryObj;
|
|
5
|
+
export declare const Standard: Story;
|
|
6
|
+
export declare const Secondary: Story;
|
|
7
|
+
export declare const Accent: Story;
|
|
8
|
+
export declare const Inverse: Story;
|
|
9
|
+
export declare const Size: Story;
|
|
10
|
+
export declare const Inline: Story;
|
|
11
|
+
export declare const IconLeft: Story;
|
|
12
|
+
export declare const IconRight: Story;
|
|
13
13
|
//# sourceMappingURL=Link.stories.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Link.stories.d.ts","sourceRoot":"","sources":["../../../src/components/link/Link.stories.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"Link.stories.d.ts","sourceRoot":"","sources":["../../../src/components/link/Link.stories.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,gCAAgC,CAAC;AAKrE,QAAA,MAAM,IAAI,EAAE,IAqCX,CAAC;AACF,eAAe,IAAI,CAAC;AACpB,KAAK,KAAK,GAAG,QAAQ,CAAC;AAEtB,eAAO,MAAM,QAAQ,EAAE,KAAU,CAAC;AAElC,eAAO,MAAM,SAAS,EAAE,KAEvB,CAAC;AAEF,eAAO,MAAM,MAAM,EAAE,KAEpB,CAAC;AAEF,eAAO,MAAM,OAAO,EAAE,KAKrB,CAAC;AAEF,eAAO,MAAM,IAAI,EAAE,KAElB,CAAC;AAEF,eAAO,MAAM,MAAM,EAAE,KAEpB,CAAC;AAEF,eAAO,MAAM,QAAQ,EAAE,KAKtB,CAAC;AAEF,eAAO,MAAM,SAAS,EAAE,KAKvB,CAAC"}
|
|
@@ -1,86 +1,73 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
export default {
|
|
8
|
-
title: 'Navigation/Link (stand alone)',
|
|
9
|
-
tags: ['autodocs', 'beta'],
|
|
1
|
+
import { html } from 'lit';
|
|
2
|
+
import { ifDefined } from 'lit-html/directives/if-defined.js';
|
|
3
|
+
import { unsafeHTML } from 'lit/directives/unsafe-html.js';
|
|
4
|
+
const meta = {
|
|
5
|
+
title: 'Navigation/Link',
|
|
6
|
+
component: 'm-link',
|
|
10
7
|
argTypes: {
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
8
|
+
iconposition: {
|
|
9
|
+
control: 'radio',
|
|
10
|
+
options: ['left', 'right'],
|
|
14
11
|
},
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
},
|
|
19
|
-
target: {
|
|
20
|
-
description: 'Specify the href target',
|
|
21
|
-
control: {
|
|
22
|
-
type: 'select',
|
|
23
|
-
options: ['_blank', '_self', '_parent', '_top'],
|
|
24
|
-
},
|
|
25
|
-
defaultValue: '_blank',
|
|
26
|
-
if: { arg: 'href' },
|
|
12
|
+
appearance: {
|
|
13
|
+
control: 'radio',
|
|
14
|
+
options: ['secondary', 'accent', 'inverse', 'standard'],
|
|
27
15
|
},
|
|
28
16
|
size: {
|
|
29
|
-
|
|
30
|
-
control: { type: 'select' },
|
|
17
|
+
control: 'radio',
|
|
31
18
|
options: ['s', 'm'],
|
|
32
19
|
},
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
},
|
|
37
|
-
inline: {
|
|
38
|
-
description: 'Specify wether the link is inline',
|
|
39
|
-
control: 'boolean',
|
|
40
|
-
},
|
|
41
|
-
style: {
|
|
42
|
-
description: 'Specify which theme to display for the link',
|
|
43
|
-
control: {
|
|
44
|
-
type: 'select',
|
|
45
|
-
},
|
|
46
|
-
options: ['primary', 'secondary', 'accent', 'inverse'],
|
|
47
|
-
},
|
|
48
|
-
iconposition: {
|
|
49
|
-
description: 'Specify wether the icon is on the right or left ot the link',
|
|
50
|
-
control: { type: 'radio' },
|
|
51
|
-
options: ['left', 'right'],
|
|
20
|
+
target: {
|
|
21
|
+
control: 'radio',
|
|
22
|
+
options: ['_self', '_blank', '_parent', '_top'],
|
|
52
23
|
},
|
|
53
24
|
},
|
|
25
|
+
args: {
|
|
26
|
+
default: 'Stand-alone link',
|
|
27
|
+
href: '#',
|
|
28
|
+
},
|
|
29
|
+
render: (args) => html `
|
|
30
|
+
<m-link
|
|
31
|
+
iconposition=${ifDefined(args.iconposition)}
|
|
32
|
+
appearance=${ifDefined(args.appearance)}
|
|
33
|
+
size=${ifDefined(args.size)}
|
|
34
|
+
href=${ifDefined(args.href)}
|
|
35
|
+
target=${ifDefined(args.target)}
|
|
36
|
+
inline=${ifDefined(args.inline)}
|
|
37
|
+
>
|
|
38
|
+
${unsafeHTML(ifDefined(args.icon))} ${unsafeHTML(ifDefined(args.default))}
|
|
39
|
+
</m-link>
|
|
40
|
+
`,
|
|
41
|
+
};
|
|
42
|
+
export default meta;
|
|
43
|
+
export const Standard = {};
|
|
44
|
+
export const Secondary = {
|
|
45
|
+
args: { appearance: 'secondary' },
|
|
54
46
|
};
|
|
55
|
-
const
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
if (args.style)
|
|
64
|
-
primary.setAttribute('style', args.style);
|
|
65
|
-
if (args.inline)
|
|
66
|
-
primary.setAttribute('inline', args.inline);
|
|
67
|
-
if (args.disabled)
|
|
68
|
-
primary.setAttribute('disabled', args.disabled);
|
|
69
|
-
if (args.iconposition)
|
|
70
|
-
primary.setAttribute('iconposition', args.iconposition);
|
|
71
|
-
primary.setAttribute('size', args.size);
|
|
72
|
-
primary.setAttribute('href', args.href);
|
|
73
|
-
primary.setAttribute('target', args.target);
|
|
74
|
-
primary.appendChild(label);
|
|
75
|
-
primary.appendChild(icon);
|
|
76
|
-
return primary;
|
|
47
|
+
export const Accent = {
|
|
48
|
+
args: { appearance: 'accent' },
|
|
49
|
+
};
|
|
50
|
+
export const Inverse = {
|
|
51
|
+
globals: {
|
|
52
|
+
backgrounds: { value: 'inverse' },
|
|
53
|
+
},
|
|
54
|
+
args: { appearance: 'inverse' },
|
|
77
55
|
};
|
|
78
|
-
export const
|
|
79
|
-
|
|
80
|
-
IconLeft.args = {
|
|
81
|
-
iconposition: 'left',
|
|
56
|
+
export const Size = {
|
|
57
|
+
args: { size: 'm' },
|
|
82
58
|
};
|
|
83
|
-
export const
|
|
84
|
-
|
|
85
|
-
|
|
59
|
+
export const Inline = {
|
|
60
|
+
args: { inline: true },
|
|
61
|
+
};
|
|
62
|
+
export const IconLeft = {
|
|
63
|
+
args: {
|
|
64
|
+
iconPosition: 'left',
|
|
65
|
+
icon: '<chevron-left-24 slot="icon"></chevron-left-24>',
|
|
66
|
+
},
|
|
67
|
+
};
|
|
68
|
+
export const IconRight = {
|
|
69
|
+
args: {
|
|
70
|
+
iconPosition: 'right',
|
|
71
|
+
icon: '<chevron-right-24 slot="icon"></chevron-right-24>',
|
|
72
|
+
},
|
|
86
73
|
};
|
|
@@ -1,58 +1,59 @@
|
|
|
1
|
-
<svelte:options customElement=
|
|
1
|
+
<svelte:options customElement={{ tag: 'm-link' }} />
|
|
2
2
|
|
|
3
3
|
<script lang="ts">
|
|
4
|
-
|
|
4
|
+
/**
|
|
5
|
+
* A link is an interactive text element used to navigate between pages, sections, or external resources. It is typically underlined and styled to indicate its clickable nature. Links can be standalone or embedded within text, and they may include icons to reinforce their purpose. They are essential for navigation and content referencing in web and application interfaces.
|
|
6
|
+
*
|
|
7
|
+
* @slot default - Use this slot to insert the textual content of the Link.
|
|
8
|
+
* @slot icon - Use this slot to insert an icon for the Link.
|
|
9
|
+
*/
|
|
5
10
|
interface Props {
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
+
/**
|
|
12
|
+
* Position of the icon relative to the text.
|
|
13
|
+
*/
|
|
14
|
+
iconposition?: 'left' | 'right';
|
|
15
|
+
/**
|
|
16
|
+
* Allows to define the link appearance.
|
|
17
|
+
*/
|
|
18
|
+
appearance?: 'secondary' | 'accent' | 'inverse' | 'standard';
|
|
19
|
+
/**
|
|
20
|
+
* Allows to define the link size.
|
|
21
|
+
*/
|
|
22
|
+
size?: 's' | 'm';
|
|
23
|
+
/**
|
|
24
|
+
* URL for the link.
|
|
25
|
+
*/
|
|
26
|
+
href?: string;
|
|
27
|
+
/**
|
|
28
|
+
* Where to open the link.
|
|
29
|
+
*/
|
|
30
|
+
target?: '_self' | '_blank' | '_parent' | '_top';
|
|
31
|
+
/**
|
|
32
|
+
* Specify wether the link is inline.
|
|
33
|
+
*/
|
|
11
34
|
inline?: boolean;
|
|
12
|
-
iconposition?: LinkIconPosition | undefined;
|
|
13
|
-
[key: string]: any;
|
|
14
35
|
}
|
|
15
36
|
|
|
16
37
|
let {
|
|
17
38
|
href,
|
|
18
39
|
target,
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
size = '
|
|
22
|
-
|
|
23
|
-
iconposition = undefined,
|
|
24
|
-
...events
|
|
40
|
+
inline,
|
|
41
|
+
appearance = 'standard',
|
|
42
|
+
size = 's',
|
|
43
|
+
iconposition = 'left',
|
|
25
44
|
}: Props = $props();
|
|
26
|
-
|
|
27
|
-
function setClasses(
|
|
28
|
-
appearance: LinkStyle,
|
|
29
|
-
size: LinkSize,
|
|
30
|
-
inline: boolean,
|
|
31
|
-
): string {
|
|
32
|
-
const classes = ['mc-link'];
|
|
33
|
-
|
|
34
|
-
if (appearance) {
|
|
35
|
-
classes.push(`mc-link--${appearance}`);
|
|
36
|
-
}
|
|
37
|
-
if (size) {
|
|
38
|
-
classes.push(`mc-link--${size}`);
|
|
39
|
-
}
|
|
40
|
-
if (inline) {
|
|
41
|
-
classes.push('mc-link--inline');
|
|
42
|
-
} else {
|
|
43
|
-
classes.push('mc-link--stand-alone');
|
|
44
|
-
}
|
|
45
|
-
return classes.join(' ');
|
|
46
|
-
}
|
|
47
45
|
</script>
|
|
48
46
|
|
|
49
47
|
<a
|
|
48
|
+
class={[
|
|
49
|
+
'mc-link',
|
|
50
|
+
`mc-link--${appearance}`,
|
|
51
|
+
`mc-link--${size}`,
|
|
52
|
+
inline && 'mc-link--inline',
|
|
53
|
+
!inline && 'mc-link--stand-alone',
|
|
54
|
+
]}
|
|
50
55
|
{href}
|
|
51
56
|
{target}
|
|
52
|
-
class="{setClasses(appearance, size, inline)} {disabled
|
|
53
|
-
? 'is-disabled'
|
|
54
|
-
: ''} "
|
|
55
|
-
{...events}
|
|
56
57
|
>
|
|
57
58
|
{#if iconposition === 'left'}
|
|
58
59
|
<span class="mc-link__icon">
|
|
@@ -72,9 +73,6 @@
|
|
|
72
73
|
<style>/**
|
|
73
74
|
* Do not edit directly, this file was auto-generated.
|
|
74
75
|
*/
|
|
75
|
-
/**
|
|
76
|
-
* Do not edit directly, this file was auto-generated.
|
|
77
|
-
*/
|
|
78
76
|
.mc-link {
|
|
79
77
|
transition: box-shadow 200ms ease;
|
|
80
78
|
display: inline-flex;
|
|
@@ -83,7 +81,7 @@
|
|
|
83
81
|
gap: 0.25rem;
|
|
84
82
|
min-height: 1.5rem;
|
|
85
83
|
text-decoration: none;
|
|
86
|
-
color: #000000;
|
|
84
|
+
color: var(--link-color-text-primary, #000000);
|
|
87
85
|
font-size: 0.875rem;
|
|
88
86
|
}
|
|
89
87
|
.mc-link__label {
|
|
@@ -100,7 +98,7 @@
|
|
|
100
98
|
text-decoration: underline;
|
|
101
99
|
}
|
|
102
100
|
.mc-link:focus {
|
|
103
|
-
box-shadow: 0 0 0 0.125rem var(--focus-color-mid, #ffffff), 0 0 0 0.25rem var(--focus-color-outer, #000000);
|
|
101
|
+
box-shadow: 0 0 0 0.125rem var(--focus-color-mid, var(--focus-color-outline-mid, #ffffff)), 0 0 0 0.25rem var(--focus-color-outer, var(--focus-color-outline-outer, #000000));
|
|
104
102
|
outline: 0.125rem solid transparent;
|
|
105
103
|
outline-offset: 0.125rem;
|
|
106
104
|
}
|
|
@@ -109,22 +107,22 @@
|
|
|
109
107
|
font-size: 1rem;
|
|
110
108
|
}
|
|
111
109
|
.mc-link--secondary {
|
|
112
|
-
color: #666666;
|
|
110
|
+
color: var(--link-color-text-secondary, #666666);
|
|
113
111
|
}
|
|
114
112
|
.mc-link--accent {
|
|
115
|
-
color: #117f03;
|
|
113
|
+
color: var(--link-color-text-accent, #117f03);
|
|
116
114
|
}
|
|
117
115
|
.mc-link--inverse {
|
|
118
|
-
--focus-color-mid: #000000;
|
|
119
|
-
--focus-color-outer: #ffffff;
|
|
120
|
-
color: #ffffff;
|
|
116
|
+
--focus-color-mid: var(--focus-color-outline-outer, #000000);
|
|
117
|
+
--focus-color-outer: var(--focus-color-outline-mid, #ffffff);
|
|
118
|
+
color: var(--link-color-text-inverse, #ffffff);
|
|
121
119
|
}
|
|
122
120
|
.mc-link--stand-alone {
|
|
123
121
|
min-height: 2rem;
|
|
124
|
-
font-weight: 600;
|
|
122
|
+
font-weight: var(--link-font-weight, 600);
|
|
125
123
|
}
|
|
126
124
|
.mc-link--stand-alone .mc-link__label {
|
|
127
|
-
border-bottom: 1px solid currentColor;
|
|
125
|
+
border-bottom: var(--border-s, 1px) solid currentColor;
|
|
128
126
|
}
|
|
129
127
|
.mc-link--stand-alone:hover .mc-link__label {
|
|
130
128
|
border-color: transparent;
|
|
@@ -138,4 +136,8 @@
|
|
|
138
136
|
}
|
|
139
137
|
.mc-link--inline:hover {
|
|
140
138
|
text-decoration: none;
|
|
139
|
+
}
|
|
140
|
+
|
|
141
|
+
.mc-link__icon:empty {
|
|
142
|
+
display: none;
|
|
141
143
|
}</style>
|
|
@@ -1,13 +1,34 @@
|
|
|
1
|
-
|
|
1
|
+
/**
|
|
2
|
+
* A link is an interactive text element used to navigate between pages, sections, or external resources. It is typically underlined and styled to indicate its clickable nature. Links can be standalone or embedded within text, and they may include icons to reinforce their purpose. They are essential for navigation and content referencing in web and application interfaces.
|
|
3
|
+
*
|
|
4
|
+
* @slot default - Use this slot to insert the textual content of the Link.
|
|
5
|
+
* @slot icon - Use this slot to insert an icon for the Link.
|
|
6
|
+
*/
|
|
2
7
|
interface Props {
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
+
/**
|
|
9
|
+
* Position of the icon relative to the text.
|
|
10
|
+
*/
|
|
11
|
+
iconposition?: 'left' | 'right';
|
|
12
|
+
/**
|
|
13
|
+
* Allows to define the link appearance.
|
|
14
|
+
*/
|
|
15
|
+
appearance?: 'secondary' | 'accent' | 'inverse' | 'standard';
|
|
16
|
+
/**
|
|
17
|
+
* Allows to define the link size.
|
|
18
|
+
*/
|
|
19
|
+
size?: 's' | 'm';
|
|
20
|
+
/**
|
|
21
|
+
* URL for the link.
|
|
22
|
+
*/
|
|
23
|
+
href?: string;
|
|
24
|
+
/**
|
|
25
|
+
* Where to open the link.
|
|
26
|
+
*/
|
|
27
|
+
target?: '_self' | '_blank' | '_parent' | '_top';
|
|
28
|
+
/**
|
|
29
|
+
* Specify wether the link is inline.
|
|
30
|
+
*/
|
|
8
31
|
inline?: boolean;
|
|
9
|
-
iconposition?: LinkIconPosition | undefined;
|
|
10
|
-
[key: string]: any;
|
|
11
32
|
}
|
|
12
33
|
interface $$__sveltets_2_IsomorphicComponent<Props extends Record<string, any> = any, Events extends Record<string, any> = any, Slots extends Record<string, any> = any, Exports = {}, Bindings = string> {
|
|
13
34
|
new (options: import('svelte').ComponentConstructorOptions<Props>): import('svelte').SvelteComponent<Props, Events, Slots> & {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Link.svelte.d.ts","sourceRoot":"","sources":["../../../src/components/link/Link.svelte.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"Link.svelte.d.ts","sourceRoot":"","sources":["../../../src/components/link/Link.svelte.ts"],"names":[],"mappings":"AAGE;;;;;GAKG;AACH,UAAU,KAAK;IACb;;OAEG;IACH,YAAY,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;IAChC;;OAEG;IACH,UAAU,CAAC,EAAE,WAAW,GAAG,QAAQ,GAAG,SAAS,GAAG,UAAU,CAAC;IAC7D;;OAEG;IACH,IAAI,CAAC,EAAE,GAAG,GAAG,GAAG,CAAC;IACjB;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;OAEG;IACH,MAAM,CAAC,EAAE,OAAO,GAAG,QAAQ,GAAG,SAAS,GAAG,MAAM,CAAC;IACjD;;OAEG;IACH,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AA0CH,UAAU,kCAAkC,CAAC,KAAK,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,GAAG,EAAE,MAAM,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,GAAG,EAAE,KAAK,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,GAAG,EAAE,OAAO,GAAG,EAAE,EAAE,QAAQ,GAAG,MAAM;IACpM,KAAK,OAAO,EAAE,OAAO,QAAQ,EAAE,2BAA2B,CAAC,KAAK,CAAC,GAAG,OAAO,QAAQ,EAAE,eAAe,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,CAAC,GAAG;QAAE,UAAU,CAAC,EAAE,QAAQ,CAAA;KAAE,GAAG,OAAO,CAAC;IACjK,CAAC,QAAQ,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,GAAG;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,KAAK,CAAA;KAAC,GAAG,OAAO,GAAG;QAAE,IAAI,CAAC,EAAE,GAAG,CAAC;QAAC,GAAG,CAAC,EAAE,GAAG,CAAA;KAAE,CAAC;IAC9G,YAAY,CAAC,EAAE,QAAQ,CAAC;CAC3B;AACD,KAAK,gCAAgC,CAAC,KAAK,EAAE,KAAK,IAAI,KAAK,GACvD,CAAC,KAAK,SAAS;IAAE,OAAO,EAAE,GAAG,CAAA;CAAE,GACzB,KAAK,SAAS,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,GACnC,GAAG,GACH;IAAE,QAAQ,CAAC,EAAE,GAAG,CAAA;CAAE,GAClB,EAAE,CAAC,CAAC;AAId,QAAA,MAAM,IAAI;;;;;;;;UAAqF,CAAC;AAC9E,KAAK,IAAI,GAAG,YAAY,CAAC,OAAO,IAAI,CAAC,CAAC;AACxC,eAAe,IAAI,CAAC"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
# `m-link`
|
|
2
|
+
|
|
3
|
+
A link is an interactive text element used to navigate between pages, sections, or external resources. It is typically underlined and styled to indicate its clickable nature. Links can be standalone or embedded within text, and they may include icons to reinforce their purpose. They are essential for navigation and content referencing in web and application interfaces.
|
|
4
|
+
|
|
5
|
+
## Props
|
|
6
|
+
|
|
7
|
+
| Name | Description | Type | Default |
|
|
8
|
+
|------|-------------|------|---------|
|
|
9
|
+
| `iconposition` | Position of the icon relative to the text. | `'left'` `'right'` | `left` |
|
|
10
|
+
| `appearance` | Allows to define the link appearance. | `'secondary'` `'accent'` `'inverse'` `'standard'` | `standard` |
|
|
11
|
+
| `size` | Allows to define the link size. | `'s'` `'m'` | `s` |
|
|
12
|
+
| `href` | URL for the link. | `string` | |
|
|
13
|
+
| `target` | Where to open the link. | `'_self'` `'_blank'` `'_parent'` `'_top'` | |
|
|
14
|
+
| `inline` | Specify wether the link is inline. | `boolean` | |
|
|
15
|
+
|
|
16
|
+
## Slots
|
|
17
|
+
|
|
18
|
+
| Name | Description |
|
|
19
|
+
|------|-------------|
|
|
20
|
+
| `icon` | Use this slot to insert an icon for the Link. |
|
|
21
|
+
| `default` | Use this slot to insert the textual content of the Link. |
|
|
22
|
+
| `icon` | Use this slot to insert an icon for the Link. |
|
|
23
|
+
|
|
@@ -1,13 +1,10 @@
|
|
|
1
|
-
import{c as
|
|
1
|
+
import{c as z,p as C,a as B,b as d,f as _,s as L,d as l,t as g,e as R,g as D,i as h,j as E,k as m,r as o,h as S}from"../../custom-element.js";import{i as V}from"../../if.js";import{s as p}from"../../attributes.js";var q=_('<span class="mc-loader__text svelte-g7kvnj"> </span>'),A=_('<div><span class="mc-loader__spinner svelte-g7kvnj"><svg class="mc-loader__icon svelte-g7kvnj" xmlns="http://www.w3.org/2000/svg"><circle class="mc-loader__path svelte-g7kvnj" cx="50%" cy="50%"></circle></svg></span> <!></div>');const F={hash:"svelte-g7kvnj",code:`/**
|
|
2
2
|
* Do not edit directly, this file was auto-generated.
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
*/.mc-loader.svelte-ekl442 {color:#464e63;align-items:center;display:inline-flex;flex-direction:column;}.mc-loader.svelte-ekl442 .mc-loader__spinner:where(.svelte-ekl442) {height:2rem;width:2rem;}.mc-loader.svelte-ekl442 .mc-loader__path:where(.svelte-ekl442) {stroke-width:4;}.mc-loader.svelte-ekl442 .mc-loader__path:where(.svelte-ekl442) {stroke:currentColor;}.mc-loader__spinner.svelte-ekl442:not(:only-child) {margin-bottom:1rem;}.mc-loader__icon.svelte-ekl442 {
|
|
7
|
-
animation: svelte-ekl442-rotate-loader 2s linear infinite;transform-origin:center;}.mc-loader__path.svelte-ekl442 {fill:none;stroke-dasharray:1, 200;stroke-dashoffset:0;stroke-linecap:round;
|
|
8
|
-
animation: svelte-ekl442-animate-dash-loader 2s ease-in-out infinite;}.mc-loader__text.svelte-ekl442 {font-size:1rem;color:currentcolor;}.mc-loader.svelte-ekl442:not(.mc-loader--text-visible) .mc-loader__text:where(.svelte-ekl442) {clip-path:inset(100%);clip:rect(1px, 1px, 1px, 1px);height:1px;overflow:hidden;position:absolute;white-space:nowrap;padding:0;width:1px;}.mc-loader--xs.svelte-ekl442 .mc-loader__spinner:where(.svelte-ekl442) {height:1.25rem;width:1.25rem;}.mc-loader--xs.svelte-ekl442 .mc-loader__path:where(.svelte-ekl442) {stroke-width:2;}.mc-loader--s.svelte-ekl442 .mc-loader__spinner:where(.svelte-ekl442) {height:1.5rem;width:1.5rem;}.mc-loader--s.svelte-ekl442 .mc-loader__path:where(.svelte-ekl442) {stroke-width:4;}.mc-loader--l.svelte-ekl442 .mc-loader__spinner:where(.svelte-ekl442) {height:4rem;width:4rem;}.mc-loader--l.svelte-ekl442 .mc-loader__path:where(.svelte-ekl442) {stroke-width:8;}.mc-loader--accent.svelte-ekl442 {color:#117f03;}.mc-loader--accent.svelte-ekl442 .mc-loader__path:where(.svelte-ekl442) {stroke:currentColor;}.mc-loader--inverse.svelte-ekl442 {color:#ffffff;}.mc-loader--inverse.svelte-ekl442 .mc-loader__path:where(.svelte-ekl442) {stroke:currentColor;}
|
|
3
|
+
*/.mc-loader.svelte-g7kvnj .mc-loader__spinner:where(.svelte-g7kvnj) {height:2rem;width:2rem;}.mc-loader.svelte-g7kvnj .mc-loader__path:where(.svelte-g7kvnj) {stroke-width:4;}.mc-loader.svelte-g7kvnj {color:var(--loader-color-standard, #464e63);}.mc-loader.svelte-g7kvnj .mc-loader__path:where(.svelte-g7kvnj) {stroke:currentColor;}.mc-loader.svelte-g7kvnj {align-items:center;display:inline-flex;flex-direction:column;}.mc-loader__spinner.svelte-g7kvnj:not(:only-child) {margin-bottom:1rem;}.mc-loader__icon.svelte-g7kvnj {
|
|
4
|
+
animation: svelte-g7kvnj-rotate-loader 2s linear infinite;transform-origin:center;}.mc-loader__path.svelte-g7kvnj {fill:none;stroke-dasharray:1, 200;stroke-dashoffset:0;stroke-linecap:round;
|
|
5
|
+
animation: svelte-g7kvnj-animate-dash-loader 2s ease-in-out infinite;}.mc-loader__text.svelte-g7kvnj {font-size:var(--font-size-150, 1rem);color:currentcolor;}.mc-loader.svelte-g7kvnj:not(.mc-loader--text-visible) .mc-loader__text:where(.svelte-g7kvnj) {clip-path:inset(100%);clip:rect(1px, 1px, 1px, 1px);height:1px;overflow:hidden;position:absolute;white-space:nowrap;padding:0;width:1px;}.mc-loader--xs.svelte-g7kvnj .mc-loader__spinner:where(.svelte-g7kvnj) {height:1.25rem;width:1.25rem;}.mc-loader--xs.svelte-g7kvnj .mc-loader__path:where(.svelte-g7kvnj) {stroke-width:2;}.mc-loader--s.svelte-g7kvnj .mc-loader__spinner:where(.svelte-g7kvnj) {height:1.5rem;width:1.5rem;}.mc-loader--s.svelte-g7kvnj .mc-loader__path:where(.svelte-g7kvnj) {stroke-width:4;}.mc-loader--l.svelte-g7kvnj .mc-loader__spinner:where(.svelte-g7kvnj) {height:4rem;width:4rem;}.mc-loader--l.svelte-g7kvnj .mc-loader__path:where(.svelte-g7kvnj) {stroke-width:8;}.mc-loader--accent.svelte-g7kvnj {color:var(--loader-color-accent, #117f03);}.mc-loader--accent.svelte-g7kvnj .mc-loader__path:where(.svelte-g7kvnj) {stroke:currentColor;}.mc-loader--inverse.svelte-g7kvnj {color:var(--loader-color-inverse, #ffffff);}.mc-loader--inverse.svelte-g7kvnj .mc-loader__path:where(.svelte-g7kvnj) {stroke:currentColor;}
|
|
9
6
|
|
|
10
|
-
@keyframes svelte-
|
|
7
|
+
@keyframes svelte-g7kvnj-rotate-loader {
|
|
11
8
|
0% {
|
|
12
9
|
transform: rotate(0deg);
|
|
13
10
|
}
|
|
@@ -15,7 +12,7 @@ import{c as C,p as B,a as j,b as h,f as u,s as D,d as n,t as _,u as L,e as R,h a
|
|
|
15
12
|
transform: rotate(270deg);
|
|
16
13
|
}
|
|
17
14
|
}
|
|
18
|
-
@keyframes svelte-
|
|
15
|
+
@keyframes svelte-g7kvnj-animate-dash-loader {
|
|
19
16
|
0% {
|
|
20
17
|
stroke-dasharray: 1, 200;
|
|
21
18
|
stroke-dashoffset: 0;
|
|
@@ -28,5 +25,5 @@ import{c as C,p as B,a as j,b as h,f as u,s as D,d as n,t as _,u as L,e as R,h a
|
|
|
28
25
|
stroke-dasharray: 89, 200;
|
|
29
26
|
stroke-dashoffset: -124px;
|
|
30
27
|
}
|
|
31
|
-
}`};function G(
|
|
28
|
+
}`};function G(k,s){C(s,!0),B(k,F);let t=d(s,"size",7,"m"),v=d(s,"appearance",7,"standard"),r=d(s,"text",7);const f=()=>{let e;switch(t()){case"s":e="0 0 24 24";break;case"l":e="0 0 64 64";break;default:e="0 0 32 32"}return e},j=()=>{let e;switch(t()){case"s":e=6;break;case"l":e=19;break;default:e=9}return e};var w={get size(){return t()},set size(e="m"){t(e),m()},get appearance(){return v()},set appearance(e="standard"){v(e),m()},get text(){return r()},set text(e){r(e),m()}},n=A(),c=l(n),i=l(c),x=l(i);o(i),o(c);var u=L(c,2);{var b=e=>{var a=q(),y=l(a,!0);o(a),g(()=>S(y,r())),h(e,a)};V(u,e=>{r()&&e(b)})}return o(n),g((e,a)=>{R(n,1,D(["mc-loader",`mc-loader--${t()}`,`mc-loader--${v()}`,r()&&"mc-loader--text-visible"]),"svelte-g7kvnj"),p(i,"viewBox",e),p(x,"r",a)},[f,j]),h(k,n),E(w)}customElements.define("m-loader",z(G,{size:{},appearance:{},text:{}},[],[],!0));export{G as L};
|
|
32
29
|
//# sourceMappingURL=Loader.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Loader.js","sources":["../../../src/components/loader/Loader.svelte"],"sourcesContent":["<svelte:options customElement={{ tag: 'm-loader' }} />\n\n<script lang=\"ts\">\n
|
|
1
|
+
{"version":3,"file":"Loader.js","sources":["../../../src/components/loader/Loader.svelte"],"sourcesContent":["<svelte:options customElement={{ tag: 'm-loader' }} />\n\n<script lang=\"ts\">\n /**\n * A loader is a visual indicator used to inform users that a process is in progress, typically during data fetching, page loading, or background operations. It provides feedback that the system is working, helping to manage user expectations and reduce perceived wait time.\n */\n interface Props {\n /**\n * Specifies the visual appearance of the loader.\n */\n appearance?: 'standard' | 'accent' | 'inverse';\n\n /**\n * Defines the size of the loader.\n */\n size?: 's' | 'm' | 'l';\n\n /**\n * Text to display alongside the loader when using the loader inside an `Overlay`.\n */\n text?: string;\n }\n\n let { size = 'm', appearance = 'standard', text }: Props = $props();\n\n const setViewBox = () => {\n let viewBox: string;\n\n switch (size) {\n case 's':\n viewBox = '0 0 24 24';\n break;\n case 'l':\n viewBox = '0 0 64 64';\n break;\n default:\n viewBox = '0 0 32 32';\n }\n\n return viewBox;\n };\n\n const setCircleRadius = () => {\n let circleRadius: number;\n\n switch (size) {\n case 's':\n circleRadius = 6;\n break;\n case 'l':\n circleRadius = 19;\n break;\n default:\n circleRadius = 9;\n }\n\n return circleRadius;\n };\n</script>\n\n<div\n class={[\n 'mc-loader',\n `mc-loader--${size}`,\n `mc-loader--${appearance}`,\n text && 'mc-loader--text-visible',\n ]}\n>\n <span class=\"mc-loader__spinner\">\n <svg\n class=\"mc-loader__icon\"\n xmlns=\"http://www.w3.org/2000/svg\"\n viewBox={setViewBox()}\n >\n <circle class=\"mc-loader__path\" cx=\"50%\" cy=\"50%\" r={setCircleRadius()} />\n </svg>\n </span>\n\n {#if text}\n <span class=\"mc-loader__text\">\n {text}\n </span>\n {/if}\n</div>\n\n<style lang=\"scss\">\n @use '@mozaic-ds/styles/components/loader';\n</style>\n"],"names":["size","appearance","text","$.prop","$$props","setViewBox","viewBox","setCircleRadius","circleRadius","$$render","consequent"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;mBAAA,gBAuBQ,IAAAA,eAAO,GAAG,EAAEC,qBAAa,UAAU,EAAEC,EAAIC,EAAAC,EAAA,OAAA,CAAA,EAEzC,MAAAC,EAAU,IAAS,KACnBC,SAEIN,EAAI,EAAA,KACL,IACHM,EAAU,sBAEP,IACHA,EAAU,0BAGVA,EAAU,mBAGPA,CACT,EAEMC,EAAe,IAAS,KACxBC,SAEIR,EAAI,EAAA,KACL,IACHQ,EAAe,YAEZ,IACHA,EAAe,iBAGfA,EAAe,SAGZA,CACT,2CAlCa,IAAG,yDAAe,WAAU,yJAyDpCN,EAAI,CAAA,CAAA,kBAFJA,EAAI,GAAAO,EAAAC,CAAA,mCAhBP,0BACcV,EAAI,CAAA,iBACJC,EAAU,CAAA,GACxBC,KAAQ,0EAOG,CAAAG,EAE4CE,CAAe,cAhB1E"}
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
import { describe, it, expect } from 'vitest';
|
|
2
|
+
import { render } from '@testing-library/svelte';
|
|
3
|
+
import Loader from './Loader.svelte';
|
|
4
|
+
describe('m-loader component', () => {
|
|
5
|
+
it('renders with default props', () => {
|
|
6
|
+
const { container } = render(Loader);
|
|
7
|
+
const loader = container.querySelector('.mc-loader');
|
|
8
|
+
expect(loader).toBeTruthy();
|
|
9
|
+
expect(loader?.classList).toContain('mc-loader--m');
|
|
10
|
+
expect(loader?.classList).toContain('mc-loader--standard');
|
|
11
|
+
expect(loader?.classList).not.toContain('mc-loader--text-visible');
|
|
12
|
+
const svg = container.querySelector('svg.mc-loader__icon');
|
|
13
|
+
expect(svg).toBeTruthy();
|
|
14
|
+
expect(svg?.getAttribute('viewBox')).toBe('0 0 32 32');
|
|
15
|
+
const circle = container.querySelector('circle.mc-loader__path');
|
|
16
|
+
expect(circle).toBeTruthy();
|
|
17
|
+
expect(circle?.getAttribute('r')).toBe('9');
|
|
18
|
+
const textSpan = container.querySelector('.mc-loader__text');
|
|
19
|
+
expect(textSpan).toBeNull();
|
|
20
|
+
});
|
|
21
|
+
it('renders with size "s" and appearance "accent"', () => {
|
|
22
|
+
const { container } = render(Loader, {
|
|
23
|
+
props: { size: 's', appearance: 'accent' },
|
|
24
|
+
});
|
|
25
|
+
const loader = container.querySelector('.mc-loader');
|
|
26
|
+
expect(loader?.classList).toContain('mc-loader--s');
|
|
27
|
+
expect(loader?.classList).toContain('mc-loader--accent');
|
|
28
|
+
const svg = container.querySelector('svg.mc-loader__icon');
|
|
29
|
+
expect(svg?.getAttribute('viewBox')).toBe('0 0 24 24');
|
|
30
|
+
const circle = container.querySelector('circle.mc-loader__path');
|
|
31
|
+
expect(circle?.getAttribute('r')).toBe('6');
|
|
32
|
+
});
|
|
33
|
+
it('renders with size "l" and appearance "inverse"', () => {
|
|
34
|
+
const { container } = render(Loader, {
|
|
35
|
+
props: { size: 'l', appearance: 'inverse' },
|
|
36
|
+
});
|
|
37
|
+
const loader = container.querySelector('.mc-loader');
|
|
38
|
+
expect(loader?.classList).toContain('mc-loader--l');
|
|
39
|
+
expect(loader?.classList).toContain('mc-loader--inverse');
|
|
40
|
+
const svg = container.querySelector('svg.mc-loader__icon');
|
|
41
|
+
expect(svg?.getAttribute('viewBox')).toBe('0 0 64 64');
|
|
42
|
+
const circle = container.querySelector('circle.mc-loader__path');
|
|
43
|
+
expect(circle?.getAttribute('r')).toBe('19');
|
|
44
|
+
});
|
|
45
|
+
it('renders with text and applies text-visible class', () => {
|
|
46
|
+
const text = 'Loading...';
|
|
47
|
+
const { container, getByText } = render(Loader, { props: { text } });
|
|
48
|
+
const loader = container.querySelector('.mc-loader');
|
|
49
|
+
expect(loader?.classList).toContain('mc-loader--text-visible');
|
|
50
|
+
const textSpan = getByText(text);
|
|
51
|
+
expect(textSpan).toBeTruthy();
|
|
52
|
+
expect(textSpan.classList.contains('mc-loader__text')).toBe(true);
|
|
53
|
+
});
|
|
54
|
+
});
|