@mozaic-ds/web-components 1.0.0 → 1.2.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 +28 -106
- package/dist/Cross20.js +1 -1
- package/dist/Cross20.js.map +1 -1
- package/dist/Cross24.js +1 -1
- package/dist/CrossCircleFilled24.js +1 -1
- package/dist/attributes.js +1 -1
- package/dist/attributes.js.map +1 -1
- package/dist/bundle.d.ts +6 -5
- package/dist/bundle.d.ts.map +1 -1
- package/dist/bundle.js +6 -5
- package/dist/components/avatar/Avatar.js +2 -2
- package/dist/components/avatar/Avatar.js.map +1 -1
- package/dist/components/avatar/Avatar.stories.d.ts.map +1 -1
- package/dist/components/avatar/Avatar.stories.js +1 -3
- package/dist/components/avatar/Avatar.svelte +7 -7
- package/dist/components/avatar/Avatar.svelte.d.ts.map +1 -1
- package/dist/components/breadcrumb/Breadcrumb.js +2 -2
- package/dist/components/breadcrumb/Breadcrumb.js.map +1 -1
- package/dist/components/breadcrumb/Breadcrumb.stories.d.ts.map +1 -1
- package/dist/components/breadcrumb/Breadcrumb.stories.js +1 -4
- package/dist/components/breadcrumb/Breadcrumb.svelte +2 -5
- package/dist/components/button/Button.js +3 -3
- package/dist/components/button/Button.js.map +1 -1
- package/dist/components/button/Button.svelte +3 -3
- package/dist/components/callout/Callout.js +2 -5
- package/dist/components/callout/Callout.js.map +1 -1
- package/dist/components/callout/Callout.stories.d.ts.map +1 -1
- package/dist/components/callout/Callout.svelte +9 -16
- package/dist/components/callout/Callout.svelte.d.ts.map +1 -1
- package/dist/components/checkbox/Checkbox.js +2 -2
- package/dist/components/checkbox/Checkbox.spec.js +1 -1
- package/dist/components/checkbox/Checkbox.svelte +2 -2
- package/dist/components/checkboxgroup/CheckboxGroup.js +3 -3
- package/dist/components/checkboxgroup/CheckboxGroup.js.map +1 -1
- package/dist/components/checkboxgroup/CheckboxGroup.spec.js +1 -3
- package/dist/components/checkboxgroup/CheckboxGroup.svelte +4 -10
- package/dist/components/checkboxgroup/CheckboxGroup.svelte.d.ts.map +1 -1
- package/dist/components/circularprogressbar/CircularProgressbar.js +2 -2
- package/dist/components/circularprogressbar/CircularProgressbar.js.map +1 -1
- package/dist/components/circularprogressbar/CircularProgressbar.stories.js +2 -2
- package/dist/components/circularprogressbar/CircularProgressbar.svelte +4 -4
- package/dist/components/circularprogressbar/CircularProgressbar.svelte.d.ts +1 -0
- package/dist/components/circularprogressbar/CircularProgressbar.svelte.d.ts.map +1 -1
- package/dist/components/container/Container.js +14 -0
- package/dist/components/container/Container.js.map +1 -0
- package/dist/components/container/Container.spec.js +26 -0
- package/dist/components/container/Container.stories.d.ts +7 -0
- package/dist/components/container/Container.stories.d.ts.map +1 -0
- package/dist/components/container/Container.stories.js +23 -0
- package/dist/components/container/Container.svelte +60 -0
- package/dist/components/container/Container.svelte.d.ts +39 -0
- package/dist/components/container/Container.svelte.d.ts.map +1 -0
- package/dist/components/container/README.md +16 -0
- package/dist/components/datepicker/Datepicker.js +3 -3
- package/dist/components/datepicker/Datepicker.js.map +1 -1
- package/dist/components/datepicker/Datepicker.svelte +13 -22
- package/dist/components/datepicker/Datepicker.svelte.d.ts +1 -1
- package/dist/components/datepicker/Datepicker.svelte.d.ts.map +1 -1
- package/dist/components/datepicker/README.md +1 -1
- package/dist/components/divider/Divider.js +4 -0
- package/dist/components/divider/Divider.js.map +1 -0
- package/dist/components/divider/Divider.spec.js +50 -0
- package/dist/components/divider/Divider.stories.d.ts +9 -0
- package/dist/components/divider/Divider.stories.d.ts.map +1 -0
- package/dist/components/divider/Divider.stories.js +57 -0
- package/dist/components/divider/Divider.svelte +90 -0
- package/dist/components/divider/Divider.svelte.d.ts +47 -0
- package/dist/components/divider/Divider.svelte.d.ts.map +1 -0
- package/dist/components/divider/README.md +18 -0
- package/dist/components/drawer/Drawer.js +4 -4
- package/dist/components/drawer/Drawer.js.map +1 -1
- package/dist/components/drawer/Drawer.stories.d.ts.map +1 -1
- package/dist/components/drawer/Drawer.stories.js +1 -2
- package/dist/components/drawer/Drawer.svelte +20 -7
- package/dist/components/drawer/Drawer.svelte.d.ts +8 -0
- package/dist/components/drawer/Drawer.svelte.d.ts.map +1 -1
- package/dist/components/drawer/README.md +2 -0
- package/dist/components/field/Field.js +2 -2
- package/dist/components/field/Field.js.map +1 -1
- package/dist/components/field/Field.spec.js +56 -9
- package/dist/components/field/Field.stories.d.ts +1 -0
- package/dist/components/field/Field.stories.d.ts.map +1 -1
- package/dist/components/field/Field.stories.js +15 -0
- package/dist/components/field/Field.svelte +12 -6
- package/dist/components/field/Field.svelte.d.ts +4 -0
- package/dist/components/field/Field.svelte.d.ts.map +1 -1
- package/dist/components/field/README.md +1 -0
- package/dist/components/flag/Flag.js +2 -2
- package/dist/components/flag/Flag.js.map +1 -1
- package/dist/components/flag/Flag.stories.d.ts.map +1 -1
- package/dist/components/flag/Flag.stories.js +1 -4
- package/dist/components/flag/Flag.svelte +1 -1
- package/dist/components/iconbutton/IconButton.js +2 -2
- package/dist/components/iconbutton/IconButton.js.map +1 -1
- package/dist/components/iconbutton/IconButton.svelte +2 -2
- package/dist/components/kpiitem/KpiItem.js +5 -0
- package/dist/components/kpiitem/KpiItem.js.map +1 -0
- package/dist/components/kpiitem/KpiItem.spec.js +60 -0
- package/dist/components/kpiitem/KpiItem.stories.d.ts +8 -0
- package/dist/components/kpiitem/KpiItem.stories.d.ts.map +1 -0
- package/dist/components/kpiitem/KpiItem.stories.js +56 -0
- package/dist/components/kpiitem/KpiItem.svelte +231 -0
- package/dist/components/kpiitem/KpiItem.svelte.d.ts +34 -0
- package/dist/components/kpiitem/KpiItem.svelte.d.ts.map +1 -0
- package/dist/components/kpiitem/README.md +15 -0
- package/dist/components/linearprogressbarbuffer/LinearProgressbarBuffer.js +2 -2
- package/dist/components/linearprogressbarbuffer/LinearProgressbarBuffer.js.map +1 -1
- package/dist/components/linearprogressbarbuffer/LinearProgressbarBuffer.svelte +3 -8
- package/dist/components/linearprogressbarbuffer/LinearProgressbarBuffer.svelte.d.ts.map +1 -1
- package/dist/components/linearprogressbarpercentage/LinearProgressbarPercentage.js +2 -2
- package/dist/components/linearprogressbarpercentage/LinearProgressbarPercentage.js.map +1 -1
- package/dist/components/linearprogressbarpercentage/LinearProgressbarPercentage.svelte +3 -3
- package/dist/components/link/Link.js +1 -1
- package/dist/components/link/Link.js.map +1 -1
- package/dist/components/link/Link.svelte +1 -1
- package/dist/components/loader/Loader.js +1 -1
- package/dist/components/loader/Loader.js.map +1 -1
- package/dist/components/loader/Loader.spec.js +20 -1
- package/dist/components/loader/Loader.stories.js +1 -1
- package/dist/components/loader/Loader.svelte +8 -6
- package/dist/components/loader/Loader.svelte.d.ts +1 -1
- package/dist/components/loader/Loader.svelte.d.ts.map +1 -1
- package/dist/components/loader/README.md +1 -1
- package/dist/components/loadingoverlay/LoadingOverlay.stories.d.ts +1 -1
- package/dist/components/loadingoverlay/LoadingOverlay.stories.js +1 -1
- package/dist/components/modal/Modal.js +3 -3
- package/dist/components/modal/Modal.js.map +1 -1
- package/dist/components/modal/Modal.stories.d.ts.map +1 -1
- package/dist/components/modal/Modal.stories.js +2 -4
- package/dist/components/modal/Modal.svelte +4 -4
- package/dist/components/numberbadge/NumberBadge.js +1 -1
- package/dist/components/numberbadge/NumberBadge.js.map +1 -1
- package/dist/components/numberbadge/NumberBadge.svelte +2 -8
- package/dist/components/numberbadge/NumberBadge.svelte.d.ts.map +1 -1
- package/dist/components/overlay/Overlay.stories.d.ts.map +1 -1
- package/dist/components/overlay/Overlay.stories.js +1 -4
- package/dist/components/pagination/Pagination.js +6 -6
- package/dist/components/pagination/Pagination.js.map +1 -1
- package/dist/components/pagination/Pagination.spec.js +2 -2
- package/dist/components/pagination/Pagination.svelte +10 -28
- package/dist/components/passwordinput/PasswordInput.js +3 -3
- package/dist/components/passwordinput/PasswordInput.js.map +1 -1
- package/dist/components/passwordinput/PasswordInput.spec.js +1 -1
- package/dist/components/passwordinput/PasswordInput.svelte +10 -14
- package/dist/components/passwordinput/PasswordInput.svelte.d.ts +1 -1
- package/dist/components/passwordinput/PasswordInput.svelte.d.ts.map +1 -1
- package/dist/components/passwordinput/README.md +1 -1
- package/dist/components/pincode/Pincode.js +2 -2
- package/dist/components/pincode/Pincode.js.map +1 -1
- package/dist/components/pincode/Pincode.svelte +9 -21
- package/dist/components/pincode/Pincode.svelte.d.ts.map +1 -1
- package/dist/components/quantityselector/QuantitySelector.js +3 -3
- package/dist/components/quantityselector/QuantitySelector.js.map +1 -1
- package/dist/components/quantityselector/QuantitySelector.stories.d.ts +0 -1
- package/dist/components/quantityselector/QuantitySelector.stories.d.ts.map +1 -1
- package/dist/components/quantityselector/QuantitySelector.stories.js +0 -6
- package/dist/components/quantityselector/QuantitySelector.svelte +11 -19
- package/dist/components/quantityselector/QuantitySelector.svelte.d.ts.map +1 -1
- package/dist/components/radio/Radio.js +2 -2
- package/dist/components/radio/Radio.js.map +1 -1
- package/dist/components/radio/Radio.svelte +3 -10
- package/dist/components/radio/Radio.svelte.d.ts.map +1 -1
- package/dist/components/radiogroup/RadioGroup.js +3 -3
- package/dist/components/radiogroup/RadioGroup.js.map +1 -1
- package/dist/components/radiogroup/RadioGroup.svelte +4 -10
- package/dist/components/radiogroup/RadioGroup.svelte.d.ts.map +1 -1
- package/dist/components/segmentedcontrol/README.md +19 -0
- package/dist/components/segmentedcontrol/SegmentedControl.js +4 -0
- package/dist/components/segmentedcontrol/SegmentedControl.js.map +1 -0
- package/dist/components/segmentedcontrol/SegmentedControl.spec.js +52 -0
- package/dist/components/segmentedcontrol/SegmentedControl.stories.d.ts +8 -0
- package/dist/components/segmentedcontrol/SegmentedControl.stories.d.ts.map +1 -0
- package/dist/components/segmentedcontrol/SegmentedControl.stories.js +54 -0
- package/dist/components/segmentedcontrol/SegmentedControl.svelte +125 -0
- package/dist/components/segmentedcontrol/SegmentedControl.svelte.d.ts +32 -0
- package/dist/components/segmentedcontrol/SegmentedControl.svelte.d.ts.map +1 -0
- package/dist/components/select/README.md +1 -1
- package/dist/components/select/Select.js +3 -3
- package/dist/components/select/Select.js.map +1 -1
- package/dist/components/select/Select.svelte +7 -7
- package/dist/components/select/Select.svelte.d.ts +1 -1
- package/dist/components/select/Select.svelte.d.ts.map +1 -1
- package/dist/components/statusbadge/StatusBadge.js +2 -2
- package/dist/components/statusbadge/StatusBadge.js.map +1 -1
- package/dist/components/statusbadge/StatusBadge.svelte +9 -9
- package/dist/components/statusdot/StatusDot.js +1 -1
- package/dist/components/statusdot/StatusDot.js.map +1 -1
- package/dist/components/statusdot/StatusDot.spec.js +1 -7
- package/dist/components/statusdot/StatusDot.svelte +3 -9
- package/dist/components/statusdot/StatusDot.svelte.d.ts.map +1 -1
- package/dist/components/statusmessage/README.md +11 -0
- package/dist/components/statusmessage/StatusMessage.js +4 -0
- package/dist/components/statusmessage/StatusMessage.js.map +1 -0
- package/dist/components/statusmessage/StatusMessage.spec.js +47 -0
- package/dist/components/statusmessage/StatusMessage.stories.d.ts +11 -0
- package/dist/components/statusmessage/StatusMessage.stories.d.ts.map +1 -0
- package/dist/components/statusmessage/StatusMessage.stories.js +37 -0
- package/dist/components/statusmessage/StatusMessage.svelte +84 -0
- package/dist/components/statusmessage/StatusMessage.svelte.d.ts +17 -0
- package/dist/components/statusmessage/StatusMessage.svelte.d.ts.map +1 -0
- package/dist/components/statusnotification/StatusNotification.js +2 -6
- package/dist/components/statusnotification/StatusNotification.js.map +1 -1
- package/dist/components/statusnotification/StatusNotification.stories.d.ts.map +1 -1
- package/dist/components/statusnotification/StatusNotification.svelte +14 -23
- package/dist/components/steppercompact/README.md +13 -0
- package/dist/components/steppercompact/StepperCompact.js +4 -0
- package/dist/components/steppercompact/StepperCompact.js.map +1 -0
- package/dist/components/steppercompact/StepperCompact.spec.js +119 -0
- package/dist/components/steppercompact/StepperCompact.stories.d.ts +6 -0
- package/dist/components/steppercompact/StepperCompact.stories.d.ts.map +1 -0
- package/dist/components/steppercompact/StepperCompact.stories.js +28 -0
- package/dist/components/steppercompact/StepperCompact.svelte +123 -0
- package/dist/components/steppercompact/StepperCompact.svelte.d.ts +25 -0
- package/dist/components/steppercompact/StepperCompact.svelte.d.ts.map +1 -0
- package/dist/components/tab/Tab.js +2 -2
- package/dist/components/tab/Tab.js.map +1 -1
- package/dist/components/tab/Tab.svelte +2 -8
- package/dist/components/tab/Tab.svelte.d.ts.map +1 -1
- package/dist/components/tabs/Tabs.svelte +1 -1
- package/dist/components/tag/README.md +30 -0
- package/dist/components/tag/Tag.js +4 -0
- package/dist/components/tag/Tag.js.map +1 -0
- package/dist/components/tag/Tag.stories.d.ts +12 -0
- package/dist/components/tag/Tag.stories.d.ts.map +1 -0
- package/dist/components/tag/Tag.stories.js +70 -0
- package/dist/components/{tags/TagRemovable.svelte → tag/Tag.svelte} +107 -32
- package/dist/components/tag/Tag.svelte.d.ts +65 -0
- package/dist/components/tag/Tag.svelte.d.ts.map +1 -0
- package/dist/components/textarea/Textarea.js +2 -2
- package/dist/components/textarea/Textarea.js.map +1 -1
- package/dist/components/textarea/Textarea.svelte +6 -8
- package/dist/components/textinput/README.md +1 -1
- package/dist/components/textinput/Textinput.js +5 -5
- package/dist/components/textinput/Textinput.js.map +1 -1
- package/dist/components/textinput/Textinput.stories.d.ts +1 -1
- package/dist/components/textinput/Textinput.stories.js +1 -1
- package/dist/components/textinput/Textinput.svelte +10 -18
- package/dist/components/textinput/Textinput.svelte.d.ts +1 -1
- package/dist/components/textinput/Textinput.svelte.d.ts.map +1 -1
- package/dist/components/toaster/README.md +1 -0
- package/dist/components/toaster/Toaster.js +3 -7
- package/dist/components/toaster/Toaster.js.map +1 -1
- package/dist/components/toaster/Toaster.svelte +20 -23
- package/dist/components/toaster/Toaster.svelte.d.ts +4 -0
- package/dist/components/toaster/Toaster.svelte.d.ts.map +1 -1
- package/dist/components/toggle/Toggle.js +2 -2
- package/dist/components/toggle/Toggle.js.map +1 -1
- package/dist/components/toggle/Toggle.svelte +4 -18
- package/dist/components/toggle/Toggle.svelte.d.ts.map +1 -1
- package/dist/components/togglegroup/ToggleGroup.js +2 -2
- package/dist/components/togglegroup/ToggleGroup.js.map +1 -1
- package/dist/components/togglegroup/ToggleGroup.spec.js +1 -1
- package/dist/components/togglegroup/ToggleGroup.svelte +3 -3
- package/dist/components/tooltip/Tooltip.js +1 -1
- package/dist/components/tooltip/Tooltip.js.map +1 -1
- package/dist/components/tooltip/Tooltip.spec.js +1 -1
- package/dist/components/tooltip/Tooltip.svelte +3 -7
- package/dist/components/tooltip/Tooltip.svelte.d.ts.map +1 -1
- package/dist/custom-element-forward-events.js +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/Introduction.mdx +13 -4
- package/dist/documentation/Svelte/Introduction.mdx +1 -1
- package/dist/documentation/Svelte/usingPresets.mdx +7 -9
- package/dist/documentation/WebComponents/Introduction.mdx +0 -1
- package/dist/documentation/WebComponents/usingIcons.mdx +2 -3
- package/dist/documentation/WebComponents/usingPresets.mdx +5 -7
- 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/main.d.ts +8 -6
- package/dist/main.d.ts.map +1 -1
- package/dist/main.js +8 -6
- package/dist/slot.js +1 -1
- package/dist/slot.js.map +1 -1
- package/dist/svelte-component.js +2 -0
- package/dist/svelte-component.js.map +1 -0
- package/dist/this.js +1 -1
- package/dist/this.js.map +1 -1
- package/dist/utils/custom-element-forward-events.d.ts.map +1 -1
- package/package.json +34 -35
- package/dist/components/tags/README.md +0 -9
- package/dist/components/tags/Tag.js +0 -4
- package/dist/components/tags/Tag.js.map +0 -1
- package/dist/components/tags/Tag.svelte +0 -218
- package/dist/components/tags/Tag.svelte.d.ts +0 -9
- package/dist/components/tags/Tag.svelte.d.ts.map +0 -1
- package/dist/components/tags/TagContextualised.js +0 -4
- package/dist/components/tags/TagContextualised.js.map +0 -1
- package/dist/components/tags/TagContextualised.svelte +0 -239
- package/dist/components/tags/TagContextualised.svelte.d.ts +0 -11
- package/dist/components/tags/TagContextualised.svelte.d.ts.map +0 -1
- package/dist/components/tags/TagInteractive.js +0 -4
- package/dist/components/tags/TagInteractive.js.map +0 -1
- package/dist/components/tags/TagInteractive.svelte +0 -223
- package/dist/components/tags/TagInteractive.svelte.d.ts +0 -10
- package/dist/components/tags/TagInteractive.svelte.d.ts.map +0 -1
- package/dist/components/tags/TagRemovable.js +0 -4
- package/dist/components/tags/TagRemovable.js.map +0 -1
- package/dist/components/tags/TagRemovable.svelte.d.ts +0 -11
- package/dist/components/tags/TagRemovable.svelte.d.ts.map +0 -1
- package/dist/components/tags/TagSelectable.js +0 -4
- package/dist/components/tags/TagSelectable.js.map +0 -1
- package/dist/components/tags/TagSelectable.svelte +0 -247
- package/dist/components/tags/TagSelectable.svelte.d.ts +0 -13
- package/dist/components/tags/TagSelectable.svelte.d.ts.map +0 -1
- package/dist/components/tags/Tags.stories.d.ts +0 -5
- package/dist/components/tags/Tags.stories.d.ts.map +0 -1
- package/dist/components/tags/Tags.stories.js +0 -41
- package/dist/components/tags/TagsContextualised.stories.d.ts +0 -5
- package/dist/components/tags/TagsContextualised.stories.d.ts.map +0 -1
- package/dist/components/tags/TagsContextualised.stories.js +0 -57
- package/dist/components/tags/TagsInteractive.stories.d.ts +0 -5
- package/dist/components/tags/TagsInteractive.stories.d.ts.map +0 -1
- package/dist/components/tags/TagsInteractive.stories.js +0 -61
- package/dist/components/tags/TagsRemovable.stories.d.ts +0 -5
- package/dist/components/tags/TagsRemovable.stories.d.ts.map +0 -1
- package/dist/components/tags/TagsRemovable.stories.js +0 -62
- package/dist/components/tags/TagsSelectable.stories.d.ts +0 -5
- package/dist/components/tags/TagsSelectable.stories.d.ts.map +0 -1
- package/dist/components/tags/TagsSelectable.stories.js +0 -76
|
@@ -2,8 +2,8 @@ import{v as J,c as K,p as L,a as N,b as s,f as w,d as t,s as l,t as E,i as y,j a
|
|
|
2
2
|
* Do not edit directly, this file was auto-generated.
|
|
3
3
|
*/.mc-modal.svelte-1tduk3b {box-sizing:border-box;inset:0;outline:0;pointer-events:none;position:fixed;z-index:var(--modal-z-index, 3);display:flex;justify-content:center;align-items:flex-end;overflow:hidden auto;}
|
|
4
4
|
@media (width >= 680px) {.mc-modal.svelte-1tduk3b {align-items:center;}
|
|
5
|
-
}.mc-modal__dialog.svelte-1tduk3b {background:var(--modal-color-background, #ffffff);display:flex;flex-direction:column;opacity:0;position:relative;transform:translateY(-25%);transition:visibility 0s linear 0.4s, transform 0.4s ease, opacity 0.4s ease;visibility:hidden;width:100%;border-radius:var(--radius-l, 1rem) var(--radius-l, 1rem) 0 0;z-index:3;}
|
|
6
|
-
@media (width >= 680px) {.mc-modal__dialog.svelte-1tduk3b {width:38rem;border-radius:var(--radius-l, 1rem);}
|
|
5
|
+
}.mc-modal__dialog.svelte-1tduk3b {background:var(--modal-color-background, #ffffff);display:flex;flex-direction:column;opacity:0;position:relative;transform:translateY(-25%);transition:visibility 0s linear 0.4s, transform 0.4s ease, opacity 0.4s ease;visibility:hidden;width:100%;border-radius:var(--border-radius-l, 1rem) var(--border-radius-l, 1rem) 0 0;z-index:3;}
|
|
6
|
+
@media (width >= 680px) {.mc-modal__dialog.svelte-1tduk3b {width:38rem;border-radius:var(--border-radius-l, 1rem);}
|
|
7
7
|
}.mc-modal.is-open.svelte-1tduk3b .mc-modal__dialog:where(.svelte-1tduk3b) {opacity:1;pointer-events:all;transform:translateY(0);transition:visibility 0s linear 0s, transform 0.4s ease, opacity 0.4s ease;visibility:visible;}.mc-modal__header.svelte-1tduk3b {align-items:center;display:flex;gap:0.5rem;min-height:3rem;padding:1rem;position:relative;}
|
|
8
8
|
@media (width >= 680px) {.mc-modal__header.svelte-1tduk3b {padding:1.5rem 1.5rem 1rem 1.5rem;}
|
|
9
9
|
}.mc-modal__icon.svelte-1tduk3b {width:2rem;height:2rem;}.mc-modal__title.svelte-1tduk3b {font-size:var(--font-title-m, 1.5rem);font-weight:var(--font-weight-semi-bold, 600);color:var(--modal-color-title, #000000);margin-bottom:0.5rem;margin-top:0.5rem;padding-right:3rem;}.mc-modal__close.svelte-1tduk3b {position:absolute;top:0.75rem;right:0.75rem;}.mc-modal__body.svelte-1tduk3b {font-size:var(--font-size-150, 1rem);color:var(--modal-color-paragraph, #404040);padding:0 1rem;margin-bottom:1rem;}
|
|
@@ -12,5 +12,5 @@ import{v as J,c as K,p as L,a as N,b as s,f as w,d as t,s as l,t as E,i as y,j a
|
|
|
12
12
|
@media (width >= 680px) {.mc-modal__footer.svelte-1tduk3b {flex-direction:row;padding:0.5rem 1.5rem 1.5rem 1.5rem;}
|
|
13
13
|
}.mc-modal__link.svelte-1tduk3b {order:1;}
|
|
14
14
|
@media (width >= 680px) {.mc-modal__link.svelte-1tduk3b {margin-right:auto;order:0;}
|
|
15
|
-
}.mc-button.svelte-1tduk3b {color:var(--button-color-filled-standard-font, #ffffff);background-color:var(--button-color-filled-standard-background, #464e63);}.mc-button.svelte-1tduk3b:hover {background-color:var(--button-color-filled-standard-hover-background, #343b4c);}.mc-button.svelte-1tduk3b:active {background-color:var(--button-color-filled-standard-active-background, #242938);}.mc-button.svelte-1tduk3b:disabled {background-color:var(--button-state-disabled-background, #d9d9d9);border-color:transparent;color:var(--button-state-disabled-color, #737373);cursor:not-allowed;}.mc-button.svelte-1tduk3b {font-weight:var(--font-weight-semi-bold, 600);padding:0 calc(1rem - 0.125rem);min-height:3rem;min-width:3rem;}.mc-button.svelte-1tduk3b {display:inline-flex;justify-content:center;vertical-align:middle;text-align:center;border:2px solid transparent;border-radius:var(--button-radius, 0.25rem);transition:all ease 200ms;transition:box-shadow 200ms ease;align-items:center;box-sizing:border-box;font-family:inherit;fill:currentcolor;gap:0.25rem;cursor:pointer;}.mc-button.svelte-1tduk3b:disabled {background-color:var(--button-state-disabled-background, #d9d9d9);border-color:transparent;color:var(--button-state-disabled-color, #737373);cursor:not-allowed;}.mc-button.svelte-1tduk3b:focus-visible {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));outline:0.125rem solid transparent;outline-offset:0.125rem;}.mc-button--ghost.svelte-1tduk3b {color:var(--button-color-ghost-standard-font, #242938);background-color:var(--button-color-ghost-standard-background, rgba(255, 255, 255, 0.01));}.mc-button--ghost.svelte-1tduk3b:hover {background-color:var(--button-color-ghost-standard-hover-background, rgba(70, 78, 99, 0.1));}.mc-button--ghost.svelte-1tduk3b:active {background-color:var(--button-color-ghost-standard-active-background, rgba(70, 78, 99, 0.2));}.mc-button--ghost.svelte-1tduk3b:disabled {background-color:var(--button-state-disabled-background, #d9d9d9);border-color:transparent;color:var(--button-state-disabled-color, #737373);cursor:not-allowed;}.mc-button--icon-button.svelte-1tduk3b {border-radius:var(--radius-full, 100%);padding:0;}.mc-modal__icon.svelte-1tduk3b:empty {display:none;}`};function oe(z,r){L(r,!0),N(z,te);let d=s(r,"open",7),b=s(r,"title",7),n=s(r,"description",7),u=s(r,"closable",7,!0),v;function Y(){d(!1);const e=new CustomEvent("update:open",{detail:d(),bubbles:!0,composed:!0});v.dispatchEvent(e)}var D={get open(){return d()},set open(e){d(e),c()},get title(){return b()},set title(e){b(e),c()},get description(){return n()},set description(e){n(e),c()},get closable(){return u()},set closable(e=!0){u(e),c()}},i=ee(),f=t(i),g=t(f),p=t(g),M=t(p);m(M,r,"icon",{}),o(p);var k=l(p,2),S=t(k,!0);o(k);var q=l(k,2);{var A=e=>{var a=Z();a.__click=Y;var x=t(a);W(x,{class:"mc-modal__close","aria-hidden":"true"}),o(a),y(e,a)};T(q,e=>{u()&&e(A)})}o(g);var _=l(g,2),C=t(_);{var B=e=>{var a=$(),x=t(a,!0);o(a),E(()=>O(x,n())),y(e,a)};T(C,e=>{n()&&e(B)})}var F=l(C,2);m(F,r,"default",{}),o(_);var j=l(_,2),h=t(j),G=t(h);m(G,r,"link",{}),o(h);var H=l(h,2);m(H,r,"footer",{}),o(j),o(f);var I=l(f,2);return X(I,{get isvisible(){return d()},dialoglabel:"modal"}),o(i),V(i,e=>v=e,()=>v),E(()=>{Q(i,1,R(["mc-modal",d()&&"is-open"]),"svelte-1tduk3b"),U(i,"aria-hidden",!d()),O(S,b())}),y(z,i),P(D)}J(["click"]);customElements.define("m-modal",K(oe,{open:{},title:{},description:{},closable:{}},["icon","default","link","footer"],[],!0));
|
|
15
|
+
}.mc-button.svelte-1tduk3b {color:var(--button-color-filled-standard-font, #ffffff);background-color:var(--button-color-filled-standard-background, #464e63);}.mc-button.svelte-1tduk3b:hover {background-color:var(--button-color-filled-standard-hover-background, #343b4c);}.mc-button.svelte-1tduk3b:active {background-color:var(--button-color-filled-standard-active-background, #242938);}.mc-button.svelte-1tduk3b:disabled {background-color:var(--button-state-disabled-background, #d9d9d9);border-color:transparent;color:var(--button-state-disabled-color, #737373);cursor:not-allowed;}.mc-button.svelte-1tduk3b {font-weight:var(--font-weight-semi-bold, 600);padding:0 calc(1rem - 0.125rem);min-height:3rem;min-width:3rem;}.mc-button.svelte-1tduk3b {display:inline-flex;justify-content:center;vertical-align:middle;text-align:center;border:2px solid transparent;border-radius:var(--button-border-radius-s, 0.25rem);transition:all ease 200ms;transition:box-shadow 200ms ease;align-items:center;box-sizing:border-box;font-family:inherit;fill:currentcolor;gap:0.25rem;cursor:pointer;}.mc-button.svelte-1tduk3b:disabled {background-color:var(--button-state-disabled-background, #d9d9d9);border-color:transparent;color:var(--button-state-disabled-color, #737373);cursor:not-allowed;}.mc-button.svelte-1tduk3b:focus-visible {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));outline:0.125rem solid transparent;outline-offset:0.125rem;}.mc-button--ghost.svelte-1tduk3b {color:var(--button-color-ghost-standard-font, #242938);background-color:var(--button-color-ghost-standard-background, rgba(255, 255, 255, 0.01));}.mc-button--ghost.svelte-1tduk3b:hover {background-color:var(--button-color-ghost-standard-hover-background, rgba(70, 78, 99, 0.1));}.mc-button--ghost.svelte-1tduk3b:active {background-color:var(--button-color-ghost-standard-active-background, rgba(70, 78, 99, 0.2));}.mc-button--ghost.svelte-1tduk3b:disabled {background-color:var(--button-state-disabled-background, #d9d9d9);border-color:transparent;color:var(--button-state-disabled-color, #737373);cursor:not-allowed;}.mc-button--icon-button.svelte-1tduk3b {border-radius:var(--border-radius-full, 100%);padding:0;}.mc-modal__icon.svelte-1tduk3b:empty {display:none;}`};function oe(z,r){L(r,!0),N(z,te);let d=s(r,"open",7),b=s(r,"title",7),n=s(r,"description",7),u=s(r,"closable",7,!0),v;function Y(){d(!1);const e=new CustomEvent("update:open",{detail:d(),bubbles:!0,composed:!0});v.dispatchEvent(e)}var D={get open(){return d()},set open(e){d(e),c()},get title(){return b()},set title(e){b(e),c()},get description(){return n()},set description(e){n(e),c()},get closable(){return u()},set closable(e=!0){u(e),c()}},i=ee(),f=t(i),g=t(f),p=t(g),M=t(p);m(M,r,"icon",{}),o(p);var k=l(p,2),S=t(k,!0);o(k);var q=l(k,2);{var A=e=>{var a=Z();a.__click=Y;var x=t(a);W(x,{class:"mc-modal__close","aria-hidden":"true"}),o(a),y(e,a)};T(q,e=>{u()&&e(A)})}o(g);var _=l(g,2),C=t(_);{var B=e=>{var a=$(),x=t(a,!0);o(a),E(()=>O(x,n())),y(e,a)};T(C,e=>{n()&&e(B)})}var F=l(C,2);m(F,r,"default",{}),o(_);var j=l(_,2),h=t(j),G=t(h);m(G,r,"link",{}),o(h);var H=l(h,2);m(H,r,"footer",{}),o(j),o(f);var I=l(f,2);return X(I,{get isvisible(){return d()},dialoglabel:"modal"}),o(i),V(i,e=>v=e,()=>v),E(()=>{Q(i,1,R(["mc-modal",d()&&"is-open"]),"svelte-1tduk3b"),U(i,"aria-hidden",!d()),O(S,b())}),y(z,i),P(D)}J(["click"]);customElements.define("m-modal",K(oe,{open:{},title:{},description:{},closable:{}},["icon","default","link","footer"],[],!0));
|
|
16
16
|
//# sourceMappingURL=Modal.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Modal.js","sources":["../../../src/components/modal/Modal.svelte"],"sourcesContent":["<svelte:options customElement={{ tag: 'm-modal' }} />\n\n<script lang=\"ts\">\n import Cross24 from '@mozaic-ds/icons-svelte/svelte/Cross24/Cross24.svelte';\n import MOverlay from '../overlay/Overlay.svelte';\n /**\n * A modal is a dialog window that appears on top of the main content, requiring user interaction before returning to the main interface. It is used to focus attention on a specific task, provide important information, or request confirmation for an action. Modals typically include a title, description, and primary/secondary actions and should be used for single, focused tasks to avoid disrupting the user experience.\n *\n * @slot icon - Use this slot to insert an icon next to the title of the modal.\n * @slot default - Use this slot to insert the content of the modal.\n * @slot link - Use this slot to insert a link in the footer.\n * @slot footer - Use this slot to insert buttons in the footer.\n * @event update:open {CustomEvent<boolean>} - Fired when the open state changes.\n */\n interface Props {\n /**\n * if `true`, display the modal.\n */\n open?: boolean;\n /**\n * Title of the modal.\n */\n title: string;\n /**\n * Description of the modal.\n */\n description?: string;\n /**\n * if `true`, display the close button.\n */\n closable?: boolean;\n }\n\n let { open, title, description, closable = true }: Props = $props();\n let element: HTMLElement;\n\n function onClose() {\n open = false;\n\n const event = new CustomEvent('update:open', {\n detail: open,\n bubbles: true,\n composed: true,\n });\n element.dispatchEvent(event);\n }\n</script>\n\n<section\n class={['mc-modal', open && 'is-open']}\n tabindex=\"-1\"\n aria-labelledby=\"modalTitle\"\n aria-hidden={!open}\n bind:this={element}\n>\n <div class=\"mc-modal__dialog\" role=\"document\">\n <header class=\"mc-modal__header\">\n <span class=\"mc-modal__icon\">\n <slot name=\"icon\" />\n </span>\n <h2 class=\"mc-modal__title\" id=\"modalTitle\">{title}</h2>\n {#if closable}\n <button\n type=\"button\"\n class=\"mc-modal__close mc-button mc-button--icon-button mc-button--ghost\"\n aria-label=\"Close\"\n onclick={onClose}\n >\n <Cross24 class=\"mc-modal__close\" aria-hidden=\"true\" />\n </button>\n {/if}\n </header>\n\n <main class=\"mc-modal__body\">\n {#if description}\n <p>{description}</p>\n {/if}\n <slot />\n </main>\n\n <footer class=\"mc-modal__footer\">\n <span class=\"mc-modal__link\">\n <slot name=\"link\" />\n </span>\n <slot name=\"footer\" />\n </footer>\n </div>\n\n <MOverlay isvisible={open} dialoglabel=\"modal\" />\n</section>\n\n<style lang=\"scss\">\n @use '@mozaic-ds/styles/components/modal';\n @use '@mozaic-ds/styles/components/button';\n\n .mc-modal__icon:empty {\n display: none;\n }\n</style>\n"],"names":["open","$.prop","$$props","title","description","closable","element","onClose","event","$$render","consequent","consequent_1","$.bind_this","section","$$value"],"mappings":";;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"Modal.js","sources":["../../../src/components/modal/Modal.svelte"],"sourcesContent":["<svelte:options customElement={{ tag: 'm-modal' }} />\n\n<script lang=\"ts\">\n import Cross24 from '@mozaic-ds/icons-svelte/svelte/Cross24/Cross24.svelte';\n import MOverlay from '../overlay/Overlay.svelte';\n /**\n * A modal is a dialog window that appears on top of the main content, requiring user interaction before returning to the main interface. It is used to focus attention on a specific task, provide important information, or request confirmation for an action. Modals typically include a title, description, and primary/secondary actions and should be used for single, focused tasks to avoid disrupting the user experience.\n *\n * @slot icon - Use this slot to insert an icon next to the title of the modal.\n * @slot default - Use this slot to insert the content of the modal.\n * @slot link - Use this slot to insert a link in the footer.\n * @slot footer - Use this slot to insert buttons in the footer.\n * @event update:open {CustomEvent<boolean>} - Fired when the open state changes.\n */\n interface Props {\n /**\n * if `true`, display the modal.\n */\n open?: boolean;\n /**\n * Title of the modal.\n */\n title: string;\n /**\n * Description of the modal.\n */\n description?: string;\n /**\n * if `true`, display the close button.\n */\n closable?: boolean;\n }\n\n let { open, title, description, closable = true }: Props = $props();\n let element: HTMLElement;\n\n function onClose() {\n open = false;\n\n const event = new CustomEvent('update:open', {\n detail: open,\n bubbles: true,\n composed: true,\n });\n element.dispatchEvent(event);\n }\n</script>\n\n<section\n class={['mc-modal', open && 'is-open']}\n tabindex=\"-1\"\n aria-labelledby=\"modalTitle\"\n aria-hidden={!open}\n bind:this={element}\n>\n <div class=\"mc-modal__dialog\" role=\"document\">\n <header class=\"mc-modal__header\">\n <span class=\"mc-modal__icon\">\n <slot name=\"icon\" />\n </span>\n <h2 class=\"mc-modal__title\" id=\"modalTitle\">{title}</h2>\n {#if closable}\n <button\n type=\"button\"\n class=\"mc-modal__close mc-button mc-button--icon-button mc-button--ghost\"\n aria-label=\"Close\"\n onclick={onClose}\n >\n <Cross24 class=\"mc-modal__close\" aria-hidden=\"true\" />\n </button>\n {/if}\n </header>\n\n <main class=\"mc-modal__body\">\n {#if description}\n <p>{description}</p>\n {/if}\n <slot />\n </main>\n\n <footer class=\"mc-modal__footer\">\n <span class=\"mc-modal__link\">\n <slot name=\"link\" />\n </span>\n <slot name=\"footer\" />\n </footer>\n </div>\n\n <MOverlay isvisible={open} dialoglabel=\"modal\" />\n</section>\n\n<style lang=\"scss\">\n @use '@mozaic-ds/styles/components/modal';\n @use '@mozaic-ds/styles/components/button';\n\n .mc-modal__icon:empty {\n display: none;\n }\n</style>\n"],"names":["open","$.prop","$$props","title","description","closable","element","onClose","event","$$render","consequent","consequent_1","$.bind_this","section","$$value"],"mappings":";;;;;;;;;;;;;;i0EAAA,qBAiCQA,EAAIC,EAAAC,EAAA,OAAA,CAAA,EAAEC,EAAKF,EAAAC,EAAA,QAAA,CAAA,EAAEE,EAAWH,EAAAC,EAAA,cAAA,CAAA,EAAEG,mBAAW,EAAI,EAC3CC,EAEK,SAAAC,GAAU,CACjBP,EAAO,EAAK,EAEN,MAAAQ,EAAK,IAAO,YAAY,eAC5B,OAAQR,EAAI,EACZ,QAAS,GACT,SAAU,EAAI,CAAA,EAEhBM,EAAQ,cAAcE,CAAK,CAC7B,yMAZ2C,GAAI,6IAiC9BD,sFALRF,EAAQ,GAAAI,EAAAC,CAAA,2EAcPN,EAAW,CAAA,CAAA,kBADZA,EAAW,GAAAK,EAAAE,CAAA,qLAcCX,EAAI,8BAnCdY,EAAAC,EAAAC,GAAAR,QAAAA,CAAO,kBAJV,WAAYN,KAAQ,SAAS,CAAA,EAAA,gBAAA,qBAGvBA,EAAI,CAAA,MAQ+BG,GAAK,eAdxD"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Modal.stories.d.ts","sourceRoot":"","sources":["../../../src/components/modal/Modal.stories.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,gCAAgC,CAAC;AAKrE,OAAO,sEAAsE,CAAC;AAC9E,OAAO,0EAA0E,CAAC;AAElF,QAAA,MAAM,IAAI,EAAE,
|
|
1
|
+
{"version":3,"file":"Modal.stories.d.ts","sourceRoot":"","sources":["../../../src/components/modal/Modal.stories.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,gCAAgC,CAAC;AAKrE,OAAO,sEAAsE,CAAC;AAC9E,OAAO,0EAA0E,CAAC;AAElF,QAAA,MAAM,IAAI,EAAE,IAgDX,CAAC;AACF,eAAe,IAAI,CAAC;AACpB,KAAK,KAAK,GAAG,QAAQ,CAAC;AAEtB,eAAO,MAAM,OAAO,EAAE,KAAU,CAAC;AAEjC,eAAO,MAAM,IAAI;;;;CAIhB,CAAC;AAEF,eAAO,MAAM,cAAc;;;;CAM1B,CAAC;AAEF,eAAO,MAAM,UAAU;;;;CAOtB,CAAC;AAEF,eAAO,MAAM,MAAM;;;;CAQlB,CAAC;AAEF,eAAO,MAAM,IAAI;;;;;CAahB,CAAC;AAEF,eAAO,MAAM,MAAM;;;;CAOlB,CAAC"}
|
|
@@ -46,10 +46,8 @@ const meta = {
|
|
|
46
46
|
closable=${ifDefined(args.closable)}
|
|
47
47
|
@update:open=${handleUpdateOpen}
|
|
48
48
|
>
|
|
49
|
-
${unsafeHTML(ifDefined(args.icon))}
|
|
50
|
-
${unsafeHTML(ifDefined(args.
|
|
51
|
-
${unsafeHTML(ifDefined(args.link))}
|
|
52
|
-
${unsafeHTML(ifDefined(args.footer))}
|
|
49
|
+
${unsafeHTML(ifDefined(args.icon))} ${unsafeHTML(ifDefined(args.default))}
|
|
50
|
+
${unsafeHTML(ifDefined(args.link))} ${unsafeHTML(ifDefined(args.footer))}
|
|
53
51
|
</m-modal>
|
|
54
52
|
`;
|
|
55
53
|
},
|
|
@@ -119,13 +119,13 @@
|
|
|
119
119
|
transition: visibility 0s linear 0.4s, transform 0.4s ease, opacity 0.4s ease;
|
|
120
120
|
visibility: hidden;
|
|
121
121
|
width: 100%;
|
|
122
|
-
border-radius: var(--radius-l, 1rem) var(--radius-l, 1rem) 0 0;
|
|
122
|
+
border-radius: var(--border-radius-l, 1rem) var(--border-radius-l, 1rem) 0 0;
|
|
123
123
|
z-index: 3;
|
|
124
124
|
}
|
|
125
125
|
@media (width >= 680px) {
|
|
126
126
|
.mc-modal__dialog {
|
|
127
127
|
width: 38rem;
|
|
128
|
-
border-radius: var(--radius-l, 1rem);
|
|
128
|
+
border-radius: var(--border-radius-l, 1rem);
|
|
129
129
|
}
|
|
130
130
|
}
|
|
131
131
|
.mc-modal.is-open .mc-modal__dialog {
|
|
@@ -238,7 +238,7 @@
|
|
|
238
238
|
vertical-align: middle;
|
|
239
239
|
text-align: center;
|
|
240
240
|
border: 2px solid transparent;
|
|
241
|
-
border-radius: var(--button-radius, 0.25rem);
|
|
241
|
+
border-radius: var(--button-border-radius-s, 0.25rem);
|
|
242
242
|
transition: all ease 200ms;
|
|
243
243
|
transition: box-shadow 200ms ease;
|
|
244
244
|
align-items: center;
|
|
@@ -402,7 +402,7 @@
|
|
|
402
402
|
cursor: not-allowed;
|
|
403
403
|
}
|
|
404
404
|
.mc-button--icon-button {
|
|
405
|
-
border-radius: var(--radius-full, 100%);
|
|
405
|
+
border-radius: var(--border-radius-full, 100%);
|
|
406
406
|
padding: 0;
|
|
407
407
|
}
|
|
408
408
|
.mc-button--loading .mc-button__loader {
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import{c as i,p as m,a as g,b as o,f,t as u,i as v,j as p,k as b,d as h,r as x,e as z,g as k,h as _}from"../../custom-element.js";var w=f("<div> </div>");const y={hash:"svelte-sb883",code:`/**
|
|
2
2
|
* Do not edit directly, this file was auto-generated.
|
|
3
|
-
*/.mc-number-badge.svelte-sb883 {color:var(--number-badge-color-text-standard, #ffffff);background-color:var(--number-badge-color-background-standard, #464e63);height:1rem;min-width:1rem;padding-inline:0.125rem;font-size:var(--font-size-25, 0.625rem);border-radius:var(--radius-l, 1rem);font-weight:var(--font-weight-semi-bold, 600);display:inline-flex;align-items:center;box-sizing:border-box;justify-content:center;line-height:1;}.mc-number-badge--m.svelte-sb883 {height:1.5rem;min-width:1.5rem;padding-inline:0.25rem;font-size:var(--font-size-50, 0.75rem);}.mc-number-badge--accent.svelte-sb883 {color:var(--number-badge-color-text-accent, #ffffff);background-color:var(--number-badge-color-background-accent, #117f03);}.mc-number-badge--danger.svelte-sb883 {color:var(--number-badge-color-text-danger, #ffffff);background-color:var(--number-badge-color-background-danger, #c61112);}.mc-number-badge--inverse.svelte-sb883 {color:var(--number-badge-color-text-inverse, #464e63);background-color:var(--number-badge-color-background-inverse, #ffffff);}`};function j(d,r){m(r,!0),g(d,y);let t=o(r,"label",7),n=o(r,"appearance",7,"standard"),s=o(r,"size",7,"s");var c={get label(){return t()},set label(e){t(e),b()},get appearance(){return n()},set appearance(e="standard"){n(e),b()},get size(){return s()},set size(e="s"){s(e),b()}},a=w(),l=h(a,!0);return x(a),u(()=>{z(a,1,k(["mc-number-badge",`mc-number-badge--${n()}`,`mc-number-badge--${s()}`]),"svelte-sb883"),_(l,t())}),v(d,a),p(c)}customElements.define("m-number-badge",i(j,{label:{},appearance:{},size:{}},[],[],!0));export{j as N};
|
|
3
|
+
*/.mc-number-badge.svelte-sb883 {color:var(--number-badge-color-text-standard, #ffffff);background-color:var(--number-badge-color-background-standard, #464e63);height:1rem;min-width:1rem;padding-inline:0.125rem;font-size:var(--font-size-25, 0.625rem);border-radius:var(--border-radius-l, 1rem);font-weight:var(--font-weight-semi-bold, 600);display:inline-flex;align-items:center;box-sizing:border-box;justify-content:center;line-height:1;}.mc-number-badge--m.svelte-sb883 {height:1.5rem;min-width:1.5rem;padding-inline:0.25rem;font-size:var(--font-size-50, 0.75rem);}.mc-number-badge--accent.svelte-sb883 {color:var(--number-badge-color-text-accent, #ffffff);background-color:var(--number-badge-color-background-accent, #117f03);}.mc-number-badge--danger.svelte-sb883 {color:var(--number-badge-color-text-danger, #ffffff);background-color:var(--number-badge-color-background-danger, #c61112);}.mc-number-badge--inverse.svelte-sb883 {color:var(--number-badge-color-text-inverse, #464e63);background-color:var(--number-badge-color-background-inverse, #ffffff);}`};function j(d,r){m(r,!0),g(d,y);let t=o(r,"label",7),n=o(r,"appearance",7,"standard"),s=o(r,"size",7,"s");var c={get label(){return t()},set label(e){t(e),b()},get appearance(){return n()},set appearance(e="standard"){n(e),b()},get size(){return s()},set size(e="s"){s(e),b()}},a=w(),l=h(a,!0);return x(a),u(()=>{z(a,1,k(["mc-number-badge",`mc-number-badge--${n()}`,`mc-number-badge--${s()}`]),"svelte-sb883"),_(l,t())}),v(d,a),p(c)}customElements.define("m-number-badge",i(j,{label:{},appearance:{},size:{}},[],[],!0));export{j as N};
|
|
4
4
|
//# sourceMappingURL=NumberBadge.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NumberBadge.js","sources":["../../../src/components/numberbadge/NumberBadge.svelte"],"sourcesContent":["<svelte:options customElement={{ tag: 'm-number-badge' }} />\n\n<script lang=\"ts\">\n /**\n * A Number Badge represents a numeric count, often used to indicate notifications, updates, or items requiring attention. Its distinct appearance makes it easy to spot changes at a glance, ensuring users stay informed without breaking their workflow. Badges are commonly attached to icons, buttons, or tabs to provide contextual awareness.\n */\n interface Props {\n /**\n * Content of the badge.\n */\n label: number;\n /**\n * Allows to define the badge appearance.\n */\n appearance?: 'danger' | 'accent' | 'inverse' | 'standard';\n\n /**\n * Allows to define the badge size.\n */\n size?: 's' | 'm';\n }\n\n let { label, appearance = 'standard', size = 's' }: Props = $props();\n</script>\n\n<div
|
|
1
|
+
{"version":3,"file":"NumberBadge.js","sources":["../../../src/components/numberbadge/NumberBadge.svelte"],"sourcesContent":["<svelte:options customElement={{ tag: 'm-number-badge' }} />\n\n<script lang=\"ts\">\n /**\n * A Number Badge represents a numeric count, often used to indicate notifications, updates, or items requiring attention. Its distinct appearance makes it easy to spot changes at a glance, ensuring users stay informed without breaking their workflow. Badges are commonly attached to icons, buttons, or tabs to provide contextual awareness.\n */\n interface Props {\n /**\n * Content of the badge.\n */\n label: number;\n /**\n * Allows to define the badge appearance.\n */\n appearance?: 'danger' | 'accent' | 'inverse' | 'standard';\n\n /**\n * Allows to define the badge size.\n */\n size?: 's' | 'm';\n }\n\n let { label, appearance = 'standard', size = 's' }: Props = $props();\n</script>\n\n<div class={['mc-number-badge', `mc-number-badge--${appearance}`, `mc-number-badge--${size}`]}>\n {label}\n</div>\n\n<style lang=\"scss\">\n @use '@mozaic-ds/styles/components/number-badge';\n</style>\n"],"names":["label","$.prop","$$props","appearance","size"],"mappings":";;sjCAAA,oBAsBQA,EAAKC,EAAAC,EAAA,QAAA,CAAA,EAAEC,qBAAa,UAAU,EAAEC,eAAO,GAAG,sGAAtB,WAAU,6CAAS,IAAG,wDAGrC,sCAAuCD,EAAU,CAAA,uBAAwBC,GAAI,yBACvFJ,GAAK,eAHR"}
|
|
@@ -23,13 +23,7 @@
|
|
|
23
23
|
let { label, appearance = 'standard', size = 's' }: Props = $props();
|
|
24
24
|
</script>
|
|
25
25
|
|
|
26
|
-
<div
|
|
27
|
-
class={[
|
|
28
|
-
'mc-number-badge',
|
|
29
|
-
`mc-number-badge--${appearance}`,
|
|
30
|
-
`mc-number-badge--${size}`,
|
|
31
|
-
]}
|
|
32
|
-
>
|
|
26
|
+
<div class={['mc-number-badge', `mc-number-badge--${appearance}`, `mc-number-badge--${size}`]}>
|
|
33
27
|
{label}
|
|
34
28
|
</div>
|
|
35
29
|
|
|
@@ -43,7 +37,7 @@
|
|
|
43
37
|
min-width: 1rem;
|
|
44
38
|
padding-inline: 0.125rem;
|
|
45
39
|
font-size: var(--font-size-25, 0.625rem);
|
|
46
|
-
border-radius: var(--radius-l, 1rem);
|
|
40
|
+
border-radius: var(--border-radius-l, 1rem);
|
|
47
41
|
font-weight: var(--font-weight-semi-bold, 600);
|
|
48
42
|
display: inline-flex;
|
|
49
43
|
align-items: center;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NumberBadge.svelte.d.ts","sourceRoot":"","sources":["../../../src/components/numberbadge/NumberBadge.svelte.ts"],"names":[],"mappings":"AAGE;;GAEG;AACH,UAAU,KAAK;IACb;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;IACd;;OAEG;IACH,UAAU,CAAC,EAAE,QAAQ,GAAG,QAAQ,GAAG,SAAS,GAAG,UAAU,CAAC;IAE1D;;OAEG;IACH,IAAI,CAAC,EAAE,GAAG,GAAG,GAAG,CAAC;CAClB;
|
|
1
|
+
{"version":3,"file":"NumberBadge.svelte.d.ts","sourceRoot":"","sources":["../../../src/components/numberbadge/NumberBadge.svelte.ts"],"names":[],"mappings":"AAGE;;GAEG;AACH,UAAU,KAAK;IACb;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;IACd;;OAEG;IACH,UAAU,CAAC,EAAE,QAAQ,GAAG,QAAQ,GAAG,SAAS,GAAG,UAAU,CAAC;IAE1D;;OAEG;IACH,IAAI,CAAC,EAAE,GAAG,GAAG,GAAG,CAAC;CAClB;AAiBH,QAAA,MAAM,WAAW,2CAAwC,CAAC;AAC1D,KAAK,WAAW,GAAG,UAAU,CAAC,OAAO,WAAW,CAAC,CAAC;AAClD,eAAe,WAAW,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Overlay.stories.d.ts","sourceRoot":"","sources":["../../../src/components/overlay/Overlay.stories.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,gCAAgC,CAAC;AAKrE,QAAA,MAAM,IAAI,EAAE,
|
|
1
|
+
{"version":3,"file":"Overlay.stories.d.ts","sourceRoot":"","sources":["../../../src/components/overlay/Overlay.stories.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,gCAAgC,CAAC;AAKrE,QAAA,MAAM,IAAI,EAAE,IA4BX,CAAC;AACF,eAAe,IAAI,CAAC;AACpB,KAAK,KAAK,GAAG,QAAQ,CAAC;AAEtB,eAAO,MAAM,OAAO,EAAE,KAAU,CAAC"}
|
|
@@ -25,10 +25,7 @@ const meta = {
|
|
|
25
25
|
},
|
|
26
26
|
},
|
|
27
27
|
render: (args) => html `
|
|
28
|
-
<m-overlay
|
|
29
|
-
isvisible=${ifDefined(args.isvisible)}
|
|
30
|
-
dialoglabel=${ifDefined(args.dialoglabel)}
|
|
31
|
-
>
|
|
28
|
+
<m-overlay isvisible=${ifDefined(args.isvisible)} dialoglabel=${ifDefined(args.dialoglabel)}>
|
|
32
29
|
${unsafeHTML(ifDefined(args.default))}
|
|
33
30
|
</m-overlay>
|
|
34
31
|
`,
|
|
@@ -1,14 +1,14 @@
|
|
|
1
|
-
import{c as
|
|
1
|
+
import{c as S,p as A,b as i,z as U,t as _,i as h,j as D,k as o,e as V,g as W,v as ce,a as de,w as y,l as ue,f as z,d as N,s as K,m as l,C as k,r as w,x as B,h as O}from"../../custom-element.js";import{i as M}from"../../if.js";import{e as fe,i as ve}from"../../each.js";import{s as x,a as X,c as me,f as ge}from"../../attributes.js";import"../../legacy.js";import{B as Q}from"../button/Button.js";import{I as T}from"../iconbutton/IconButton.js";import"../../slot.js";import"../loader/Loader.js";var be=U('<svg aria-hidden="true" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="24px" height="24px"><path fill-rule="evenodd" d="M14.207 6.293a1 1 0 0 1 0 1.414L9.914 12l4.293 4.293a1 1 0 0 1-1.414 1.414l-5-5a1 1 0 0 1 0-1.414l5-5a1 1 0 0 1 1.414 0"></path></svg>');function j(b,a){A(a,!1);let f=i(a,"id",12,void 0),d=i(a,"style",12,void 0),c=i(a,"className",12,void 0),u=i(a,"fill",12,void 0),v=i(a,"size",12,"1.5rem");var m={get id(){return f()},set id(t){f(t),o()},get style(){return d()},set style(t){d(t),o()},get className(){return c()},set className(t){c(t),o()},get fill(){return u()},set fill(t){u(t),o()},get size(){return v()},set size(t){v(t),o()}},n=be();return _(()=>{x(n,"id",f()),X(n,d()),V(n,0,W(c())),x(n,"fill",u())}),h(b,n),D(m)}customElements.define("chevron-left-24",S(j,{id:{},style:{},className:{},fill:{},size:{}},[],[],!1));var pe=U('<svg aria-hidden="true" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="24px" height="24px"><path fill-rule="evenodd" d="M9.793 6.293a1 1 0 0 1 1.414 0l5 5a1 1 0 0 1 0 1.414l-5 5a1 1 0 0 1-1.414-1.414L14.086 12 9.793 7.707a1 1 0 0 1 0-1.414"></path></svg>');function I(b,a){A(a,!1);let f=i(a,"id",12,void 0),d=i(a,"style",12,void 0),c=i(a,"className",12,void 0),u=i(a,"fill",12,void 0),v=i(a,"size",12,"1.5rem");var m={get id(){return f()},set id(t){f(t),o()},get style(){return d()},set style(t){d(t),o()},get className(){return c()},set className(t){c(t),o()},get fill(){return u()},set fill(t){u(t),o()},get size(){return v()},set size(t){v(t),o()}},n=pe();return _(()=>{x(n,"id",f()),X(n,d()),V(n,0,W(c())),x(n,"fill",u())}),h(b,n),D(m)}customElements.define("chevron-right-24",S(I,{id:{},style:{},className:{},fill:{},size:{}},[],[],!1));var he=z("<option> </option>"),xe=z('<div class="mc-pagination__field"><select class="mc-select mc-pagination__select svelte-19eta05"></select></div>'),we=z('<span class="mc-pagination__label svelte-19eta05" aria-current="page"> </span>'),_e=z('<nav class="mc-pagination svelte-19eta05" aria-label="pagination"><!> <!> <!></nav>');const ye={hash:"svelte-19eta05",code:`/**
|
|
2
2
|
* Do not edit directly, this file was auto-generated.
|
|
3
3
|
*/.mc-pagination.svelte-19eta05 {align-items:center;display:flex;justify-content:center;gap:0.5rem;}.mc-pagination__label.svelte-19eta05 {clip-path:inset(100%);clip:rect(1px, 1px, 1px, 1px);height:1px;overflow:hidden;position:absolute;white-space:nowrap;padding:0;width:1px;}
|
|
4
4
|
|
|
5
|
-
/* stylelint-disable string-no-newline */.mc-select.svelte-19eta05 {appearance:none;font-family:inherit;transition:box-shadow 200ms ease;font-size:var(--font-size-150, 1rem);line-height:var(--line-height-s, 1.3);height:3rem;padding:0 3rem 0 0.75rem;background-position:right 1rem center;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' aria-hidden='true' height='1rem' width='1rem' fill='var(--forms-color-icon-interactive, %23000000)' viewBox='0 0 16 16'%3E%3Cpath d='M8 11.5a1 1 0 01-.71-.29l-5-5a1 1 0 011.42-1.42L8 9.09l4.29-4.3a1 1 0 111.42 1.42l-5 5a1 1 0 01-.71.29z'/%3E%3C/svg%3E");border:var(--border-s,
|
|
5
|
+
/* stylelint-disable string-no-newline */.mc-select.svelte-19eta05 {appearance:none;font-family:inherit;transition:box-shadow 200ms ease;font-size:var(--font-size-150, 1rem);line-height:var(--line-height-s, 1.3);height:3rem;padding:0 3rem 0 0.75rem;background-position:right 1rem center;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' aria-hidden='true' height='1rem' width='1rem' fill='var(--forms-color-icon-interactive, %23000000)' viewBox='0 0 16 16'%3E%3Cpath d='M8 11.5a1 1 0 01-.71-.29l-5-5a1 1 0 011.42-1.42L8 9.09l4.29-4.3a1 1 0 111.42 1.42l-5 5a1 1 0 01-.71.29z'/%3E%3C/svg%3E");border:var(--border-width-s, 0.0625rem) solid var(--forms-color-border-default, #666666);display:block;width:100%;color:var(--forms-color-text-default, #000000);background-color:var(--forms-color-background-default, #ffffff);text-overflow:ellipsis;background-repeat:no-repeat;background-size:1rem;border-radius:var(--border-radius-s, 0.25rem);}.mc-select.svelte-19eta05:hover {border-color:var(--forms-color-border-hover, #4d4d4d);box-shadow:0 0 0 var(--border-width-s, 0.0625rem) var(--forms-color-border-hover, #4d4d4d);}.mc-select.svelte-19eta05:focus {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));outline:0.125rem solid transparent;outline-offset:0.125rem;}.mc-select.svelte-19eta05:disabled {background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' aria-hidden='true' height='1rem' width='1rem' fill='var(--forms-color-icon-disabled, %23737373)' viewBox='0 0 16 16'%3E%3Cpath d='M8 11.5a1 1 0 01-.71-.29l-5-5a1 1 0 011.42-1.42L8 9.09l4.29-4.3a1 1 0 111.42 1.42l-5 5a1 1 0 01-.71.29z'/%3E%3C/svg%3E");background-color:var(--forms-color-background-disabled, #d9d9d9);border-color:transparent;cursor:not-allowed;box-shadow:none;color:var(--forms-color-text-disabled, #737373);}
|
|
6
6
|
|
|
7
|
-
/* stylelint-enable string-no-newline */`};function Ne(
|
|
7
|
+
/* stylelint-enable string-no-newline */`};function Ne(b,a){A(a,!0),de(b,ye);let f=i(a,"id",7),d=i(a,"value",15,1),c=i(a,"total",7,10),u=i(a,"compact",7),v=i(a,"selectLabel",7,"Page selector"),m=i(a,"prefixlabel",7,"Page"),n=i(a,"pagelabel",7,"of"),t=y(ue(Number(d())));const P=y(()=>l(t)<=1),L=y(()=>l(t)>=c()),Y=y(()=>Array.from({length:c()},(e,s)=>s+1));function F(){l(P)()||B(t,Number(l(t))-1)}function R(){l(L)()||B(t,Number(l(t))+1)}function Z(e){const s=Number(e.target.value);d(s)}var $={get id(){return f()},set id(e){f(e),o()},get value(){return d()},set value(e=1){d(e),o()},get total(){return c()},set total(e=10){c(e),o()},get compact(){return u()},set compact(e){u(e),o()},get selectLabel(){return v()},set selectLabel(e="Page selector"){v(e),o()},get prefixlabel(){return m()},set prefixlabel(e="Page"){m(e),o()},get pagelabel(){return n()},set pagelabel(e="of"){n(e),o()}},C=_e(),q=N(C);{var ee=e=>{{let s=k(()=>l(P)());Q(e,{iconposition:"only","aria-label":"Previous page",get disabled(){return l(s)},onclick:F,$$slots:{icon:(r,g)=>{j(r,{slot:"icon"})}}})}},te=e=>{{let s=k(()=>l(P)());T(e,{outlined:!0,"aria-label":"Previous page",get disabled(){return l(s)},onclick:F,$$slots:{icon:(r,g)=>{j(r,{slot:"icon"})}}})}};M(q,e=>{u()?e(te,!1):e(ee)})}var G=K(q,2);{var ae=e=>{var s=xe(),r=N(s);r.__change=Z,fe(r,21,()=>l(Y)(),ve,(g,E)=>{var p=he(),oe=N(p);w(p);var H={};_((ne,J)=>{ge(p,ne),O(oe,`${m()??""}
|
|
8
8
|
${l(E)??""}
|
|
9
9
|
${n()??""}
|
|
10
|
-
${c()??""}`),H!==(H=J)&&(
|
|
11
|
-
${
|
|
10
|
+
${c()??""}`),H!==(H=J)&&(p.value=(p.__value=J)??"")},[()=>Number(l(E))==Number(l(t)),()=>Number(l(E))]),h(g,p)}),w(r),w(s),_(()=>{x(r,"id",f()),x(r,"aria-label",v()),r.disabled=c()<=1}),me(r,()=>l(t),g=>B(t,g)),h(e,s)},le=e=>{var s=we(),r=N(s);w(s),_(()=>O(r,`${m()??""}
|
|
11
|
+
${d()??""}
|
|
12
12
|
${n()??""}
|
|
13
|
-
${c()??""}`)),h(e,s)};M(G,e=>{
|
|
13
|
+
${c()??""}`)),h(e,s)};M(G,e=>{u()?e(le,!1):e(ae)})}var se=K(G,2);{var re=e=>{{let s=k(()=>l(L)());Q(e,{iconposition:"only","aria-label":"Next page",get disabled(){return l(s)},onclick:R,$$slots:{icon:(r,g)=>{I(r,{slot:"icon"})}}})}},ie=e=>{{let s=k(()=>l(L)());T(e,{outlined:!0,"aria-label":"Next page",get disabled(){return l(s)},onclick:R,$$slots:{icon:(r,g)=>{I(r,{slot:"icon"})}}})}};M(se,e=>{u()?e(ie,!1):e(re)})}return w(C),h(b,C),D($)}ce(["change"]);customElements.define("m-pagination",S(Ne,{id:{},value:{},total:{},compact:{},selectLabel:{},prefixlabel:{},pagelabel:{}},[],[],!0));
|
|
14
14
|
//# sourceMappingURL=Pagination.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Pagination.js","sources":["../../../node_modules/@mozaic-ds/icons-svelte/dist/components/ChevronLeft24/ChevronLeft24.svelte","../../../node_modules/@mozaic-ds/icons-svelte/dist/components/ChevronRight24/ChevronRight24.svelte","../../../src/components/pagination/Pagination.svelte"],"sourcesContent":["<svelte:options customElement={{ tag: 'chevron-left-24', shadow: 'none' }} />\n<script>\n export let id = undefined;\n export let style = undefined;\n export let className = undefined;\n export let fill = undefined;\n export let size = \"1.5rem\";\n</script>\n\n<svg aria-hidden=\"true\" id={id} style={style} class={className} fill={fill} xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" width=\"24px\" height=\"24px\"><path fill-rule=\"evenodd\" d=\"M14.207 6.293a1 1 0 0 1 0 1.414L9.914 12l4.293 4.293a1 1 0 0 1-1.414 1.414l-5-5a1 1 0 0 1 0-1.414l5-5a1 1 0 0 1 1.414 0\"/></svg>","<svelte:options customElement={{ tag: 'chevron-right-24', shadow: 'none' }} />\n<script>\n export let id = undefined;\n export let style = undefined;\n export let className = undefined;\n export let fill = undefined;\n export let size = \"1.5rem\";\n</script>\n\n<svg aria-hidden=\"true\" id={id} style={style} class={className} fill={fill} xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" width=\"24px\" height=\"24px\"><path fill-rule=\"evenodd\" d=\"M9.793 6.293a1 1 0 0 1 1.414 0l5 5a1 1 0 0 1 0 1.414l-5 5a1 1 0 0 1-1.414-1.414L14.086 12 9.793 7.707a1 1 0 0 1 0-1.414\"/></svg>","<svelte:options\n customElement={{\n tag: 'm-pagination',\n }}\n/>\n\n<script lang=\"ts\">\n import ChevronLeft24 from '@mozaic-ds/icons-svelte/svelte/ChevronLeft24/ChevronLeft24.svelte';\n import ChevronRight24 from '@mozaic-ds/icons-svelte/svelte/ChevronRight24/ChevronRight24.svelte';\n import Button from '../button/Button.svelte';\n import IconButton from '../iconbutton/IconButton.svelte';\n /**\n * Pagination is a navigation component that allows users to browse through large sets of content by dividing it into discrete pages. It typically includes previous and next buttons, numeric page selectors, or dropdowns to jump between pages efficiently. Pagination improves usability and performance in content-heavy applications such as tables, search results, and articles by preventing long scrolls and reducing page load times.\n */\n interface Props {\n /**\n * A unique identifier for the pagination.\n */\n id: string;\n /**\n * The current value of the selected page.\n */\n value: number;\n /**\n * If `true`, display a compact version without the select.\n */\n compact?: boolean;\n /**\n * Total number of pages.\n */\n total?: number;\n /**\n * Accessible label for the select of the pagination.\n */\n selectLabel?: string;\n /**\n * Word displayed before the current page number.\n */\n prefixlabel?: string;\n /**\n * Word displayed between the current page number and total page number.\n */\n pagelabel?: string;\n }\n\n let {\n id,\n value = $bindable(1),\n total = 10,\n compact,\n selectLabel = 'Page selector',\n prefixlabel = 'Page',\n pagelabel = 'of',\n }: Props = $props();\n\n let selected = $state(Number(value));\n\n const isFirstPage = $state(() => selected <= 1);\n const isLastPage = $state(() => selected >= total);\n\n const pages = $state(() => Array.from({ length: total }, (_, i) => i + 1));\n\n function previous() {\n if (!isFirstPage()) {\n selected = Number(selected) - 1;\n }\n }\n\n function next() {\n if (!isLastPage()) {\n selected = Number(selected) + 1;\n }\n }\n\n function onSelectChange(event: Event) {\n const selected = Number((event.target as HTMLSelectElement).value);\n value = selected;\n }\n</script>\n\n<nav class=\"mc-pagination\" aria-label=\"pagination\">\n {#if !compact}\n <Button\n iconposition=\"only\"\n aria-label=\"Previous page\"\n disabled={isFirstPage()}\n onclick={previous}\n >\n <ChevronLeft24 slot=\"icon\" />\n </Button>\n {:else}\n <IconButton
|
|
1
|
+
{"version":3,"file":"Pagination.js","sources":["../../../node_modules/@mozaic-ds/icons-svelte/dist/components/ChevronLeft24/ChevronLeft24.svelte","../../../node_modules/@mozaic-ds/icons-svelte/dist/components/ChevronRight24/ChevronRight24.svelte","../../../src/components/pagination/Pagination.svelte"],"sourcesContent":["<svelte:options customElement={{ tag: 'chevron-left-24', shadow: 'none' }} />\n<script>\n export let id = undefined;\n export let style = undefined;\n export let className = undefined;\n export let fill = undefined;\n export let size = \"1.5rem\";\n</script>\n\n<svg aria-hidden=\"true\" id={id} style={style} class={className} fill={fill} xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" width=\"24px\" height=\"24px\"><path fill-rule=\"evenodd\" d=\"M14.207 6.293a1 1 0 0 1 0 1.414L9.914 12l4.293 4.293a1 1 0 0 1-1.414 1.414l-5-5a1 1 0 0 1 0-1.414l5-5a1 1 0 0 1 1.414 0\"/></svg>","<svelte:options customElement={{ tag: 'chevron-right-24', shadow: 'none' }} />\n<script>\n export let id = undefined;\n export let style = undefined;\n export let className = undefined;\n export let fill = undefined;\n export let size = \"1.5rem\";\n</script>\n\n<svg aria-hidden=\"true\" id={id} style={style} class={className} fill={fill} xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" width=\"24px\" height=\"24px\"><path fill-rule=\"evenodd\" d=\"M9.793 6.293a1 1 0 0 1 1.414 0l5 5a1 1 0 0 1 0 1.414l-5 5a1 1 0 0 1-1.414-1.414L14.086 12 9.793 7.707a1 1 0 0 1 0-1.414\"/></svg>","<svelte:options\n customElement={{\n tag: 'm-pagination',\n }}\n/>\n\n<script lang=\"ts\">\n import ChevronLeft24 from '@mozaic-ds/icons-svelte/svelte/ChevronLeft24/ChevronLeft24.svelte';\n import ChevronRight24 from '@mozaic-ds/icons-svelte/svelte/ChevronRight24/ChevronRight24.svelte';\n import Button from '../button/Button.svelte';\n import IconButton from '../iconbutton/IconButton.svelte';\n /**\n * Pagination is a navigation component that allows users to browse through large sets of content by dividing it into discrete pages. It typically includes previous and next buttons, numeric page selectors, or dropdowns to jump between pages efficiently. Pagination improves usability and performance in content-heavy applications such as tables, search results, and articles by preventing long scrolls and reducing page load times.\n */\n interface Props {\n /**\n * A unique identifier for the pagination.\n */\n id: string;\n /**\n * The current value of the selected page.\n */\n value: number;\n /**\n * If `true`, display a compact version without the select.\n */\n compact?: boolean;\n /**\n * Total number of pages.\n */\n total?: number;\n /**\n * Accessible label for the select of the pagination.\n */\n selectLabel?: string;\n /**\n * Word displayed before the current page number.\n */\n prefixlabel?: string;\n /**\n * Word displayed between the current page number and total page number.\n */\n pagelabel?: string;\n }\n\n let {\n id,\n value = $bindable(1),\n total = 10,\n compact,\n selectLabel = 'Page selector',\n prefixlabel = 'Page',\n pagelabel = 'of',\n }: Props = $props();\n\n let selected = $state(Number(value));\n\n const isFirstPage = $state(() => selected <= 1);\n const isLastPage = $state(() => selected >= total);\n\n const pages = $state(() => Array.from({ length: total }, (_, i) => i + 1));\n\n function previous() {\n if (!isFirstPage()) {\n selected = Number(selected) - 1;\n }\n }\n\n function next() {\n if (!isLastPage()) {\n selected = Number(selected) + 1;\n }\n }\n\n function onSelectChange(event: Event) {\n const selected = Number((event.target as HTMLSelectElement).value);\n value = selected;\n }\n</script>\n\n<nav class=\"mc-pagination\" aria-label=\"pagination\">\n {#if !compact}\n <Button\n iconposition=\"only\"\n aria-label=\"Previous page\"\n disabled={isFirstPage()}\n onclick={previous}\n >\n <ChevronLeft24 slot=\"icon\" />\n </Button>\n {:else}\n <IconButton outlined aria-label=\"Previous page\" disabled={isFirstPage()} onclick={previous}>\n <ChevronLeft24 slot=\"icon\" />\n </IconButton>\n {/if}\n\n {#if !compact}\n <div class=\"mc-pagination__field\">\n <select\n {id}\n class=\"mc-select mc-pagination__select\"\n aria-label={selectLabel}\n disabled={total <= 1}\n bind:value={selected}\n onchange={onSelectChange}\n >\n {#each pages() as page, index (index)}\n <option value={Number(page)} selected={Number(page) == Number(selected)}>\n {prefixlabel}\n {page}\n {pagelabel}\n {total}\n </option>\n {/each}\n </select>\n </div>\n {:else}\n <span class=\"mc-pagination__label\" aria-current=\"page\">\n {prefixlabel}\n {value}\n {pagelabel}\n {total}\n </span>\n {/if}\n\n {#if !compact}\n <Button iconposition=\"only\" aria-label=\"Next page\" disabled={isLastPage()} onclick={next}>\n <ChevronRight24 slot=\"icon\" />\n </Button>\n {:else}\n <IconButton outlined aria-label=\"Next page\" disabled={isLastPage()} onclick={next}>\n <ChevronRight24 slot=\"icon\" />\n </IconButton>\n {/if}\n</nav>\n\n<style lang=\"scss\">\n @use '@mozaic-ds/styles/components/pagination';\n @use '@mozaic-ds/styles/components/select';\n</style>\n"],"names":["id","style","className","fill","size","$.prop","$$props","value","total","compact","selectLabel","prefixlabel","pagelabel","selected","$.state","$.proxy","isFirstPage","$.get","isLastPage","pages","_","i","previous","$.set","next","onSelectChange","event","$$render","alternate","consequent","$.each","select","page","$.bind_select_value","$$value","alternate_1","consequent_1","alternate_2","consequent_2"],"mappings":"uxBAAA,SAEa,IAAAA,cAAK,MAAS,EACdC,iBAAQ,MAAS,EACjBC,qBAAY,MAAS,EACrBC,gBAAO,MAAS,EAChBC,gBAAO,QAAQ,iRAGAJ,GAAE,MAAUC,GAAK,UAASC,EAAS,CAAA,CAAA,aAAQC,GAAI,eAF3E,+YCPA,SAEa,IAAAH,cAAK,MAAS,EACdC,iBAAQ,MAAS,EACjBC,qBAAY,MAAS,EACrBC,gBAAO,MAAS,EAChBC,gBAAO,QAAQ,iRAGAJ,GAAE,MAAUC,GAAK,UAASC,EAAS,CAAA,CAAA,aAAQC,GAAI,eAF3E;;;;;;2DCPA,sBA8CIH,EAAEK,EAAAC,EAAA,KAAA,CAAA,EACFC,iBAAkB,CAAC,EACnBC,gBAAQ,EAAE,EACVC,EAAOJ,EAAAC,EAAA,UAAA,CAAA,EACPI,sBAAc,eAAe,EAC7BC,sBAAc,MAAM,EACpBC,oBAAY,IAAI,EAGdC,EAAQC,EAAAC,GAAU,OAAOR,EAAK,CAAA,CAAA,CAAA,QAE5BS,EAAWF,EAAA,IAAAG,EAAgBJ,CAAQ,GAAI,CAAC,EACxCK,EAAUJ,EAAA,IAAAG,EAAgBJ,CAAQ,GAAIL,GAAK,EAE3CW,EAAKL,EAAA,IAAgB,MAAM,MAAO,OAAQN,EAAK,CAAA,EAAA,CAAKY,EAAGC,IAAMA,EAAI,CAAC,CAAA,EAE/D,SAAAC,GAAW,CACbL,EAAAD,CAAW,KACdO,EAAAV,EAAW,OAAMI,EAACJ,CAAQ,GAAI,CAAC,CAEnC,CAES,SAAAW,GAAO,CACTP,EAAAC,CAAU,KACbK,EAAAV,EAAW,OAAMI,EAACJ,CAAQ,GAAI,CAAC,CAEnC,UAESY,EAAeC,EAAc,CAC9B,MAAAb,EAAW,OAAQa,EAAM,OAA6B,KAAK,EACjEnB,EAAQM,CAAQ,CAClB,qFA9BoB,EAAC,+CACX,GAAE,8GAEI,gBAAe,2DACf,OAAM,uDACR,KAAI,qDAiCJG,CAAW,EAAA,CAAA,4FACZM,uEAK+CN,CAAW,EAAA,CAAA,oFAAaM,yDAV9Eb,EAAO,EAAAkB,EAAAC,GAAA,EAAA,EAAAD,EAAAE,EAAA,0DAuBGJ,EAEHK,GAAAC,EAAA,GAAA,IAAAd,EAAAE,CAAK,UAAMa,IAAI,8DAEjBrB,EAAW,GAAA,EAAA;AAAA,gBACXqB,CAAI,GAAA,EAAA;AAAA,cACJpB,EAAS,GAAA,EAAA;AAAA,cACTJ,EAAK,GAAA,EAAA,EAAA,2CAJ+B,IAAA,OAAMS,EAACe,CAAI,CAAA,GAAK,SAAOnB,CAAQ,CAAA,EAAvD,IAAA,SAAOmB,CAAI,CAAA,6DANhBtB,GAAW,EACbqB,EAAA,SAAAvB,EAAK,GAAI,IACPyB,GAAAF,EAAA,IAAAd,EAAAJ,CAAQ,OAARA,EAAQqB,CAAA,CAAA,qDAerBvB,EAAW,GAAA,EAAA;AAAA,QACXJ,EAAK,GAAA,EAAA;AAAA,QACLK,EAAS,GAAA,EAAA;AAAA,QACTJ,EAAK,GAAA,EAAA,EAAA,CAAA,kBAzBJC,EAAO,EAAAkB,EAAAQ,GAAA,EAAA,EAAAR,EAAAS,EAAA,6CA8BkDlB,CAAU,EAAA,CAAA,wFAAaM,uEAI9BN,CAAU,EAAA,CAAA,gFAAaM,0DALzEf,EAAO,EAAAkB,EAAAU,GAAA,EAAA,EAAAV,EAAAW,EAAA,2BA/Cf","x_google_ignoreList":[0,1]}
|
|
@@ -23,7 +23,7 @@ describe('m-pagination component', () => {
|
|
|
23
23
|
expect(nextBtn).not.toBeDisabled();
|
|
24
24
|
});
|
|
25
25
|
it('updates value when select changes', async () => {
|
|
26
|
-
const {
|
|
26
|
+
const { getByLabelText } = render(Pagination, {
|
|
27
27
|
props: baseProps,
|
|
28
28
|
});
|
|
29
29
|
const select = getByLabelText(baseProps.selectLabel);
|
|
@@ -50,7 +50,7 @@ describe('m-pagination component', () => {
|
|
|
50
50
|
});
|
|
51
51
|
it('disables next button on last page', async () => {
|
|
52
52
|
const props = { ...baseProps, value: 5, total: 5 };
|
|
53
|
-
const { container
|
|
53
|
+
const { container } = render(Pagination, { props });
|
|
54
54
|
const nextBtn = container.querySelector('button[aria-label="Next page"]');
|
|
55
55
|
expect(nextBtn.disabled).toBe(true);
|
|
56
56
|
const prevBtn = container.querySelector('button[aria-label="Previous page"]');
|
|
@@ -89,12 +89,7 @@
|
|
|
89
89
|
<ChevronLeft24 slot="icon" />
|
|
90
90
|
</Button>
|
|
91
91
|
{:else}
|
|
92
|
-
<IconButton
|
|
93
|
-
outlined
|
|
94
|
-
aria-label="Previous page"
|
|
95
|
-
disabled={isFirstPage()}
|
|
96
|
-
onclick={previous}
|
|
97
|
-
>
|
|
92
|
+
<IconButton outlined aria-label="Previous page" disabled={isFirstPage()} onclick={previous}>
|
|
98
93
|
<ChevronLeft24 slot="icon" />
|
|
99
94
|
</IconButton>
|
|
100
95
|
{/if}
|
|
@@ -109,11 +104,8 @@
|
|
|
109
104
|
bind:value={selected}
|
|
110
105
|
onchange={onSelectChange}
|
|
111
106
|
>
|
|
112
|
-
{#each pages() as page}
|
|
113
|
-
<option
|
|
114
|
-
value={Number(page)}
|
|
115
|
-
selected={Number(page) == Number(selected)}
|
|
116
|
-
>
|
|
107
|
+
{#each pages() as page, index (index)}
|
|
108
|
+
<option value={Number(page)} selected={Number(page) == Number(selected)}>
|
|
117
109
|
{prefixlabel}
|
|
118
110
|
{page}
|
|
119
111
|
{pagelabel}
|
|
@@ -132,21 +124,11 @@
|
|
|
132
124
|
{/if}
|
|
133
125
|
|
|
134
126
|
{#if !compact}
|
|
135
|
-
<Button
|
|
136
|
-
iconposition="only"
|
|
137
|
-
aria-label="Next page"
|
|
138
|
-
disabled={isLastPage()}
|
|
139
|
-
onclick={next}
|
|
140
|
-
>
|
|
127
|
+
<Button iconposition="only" aria-label="Next page" disabled={isLastPage()} onclick={next}>
|
|
141
128
|
<ChevronRight24 slot="icon" />
|
|
142
129
|
</Button>
|
|
143
130
|
{:else}
|
|
144
|
-
<IconButton
|
|
145
|
-
outlined
|
|
146
|
-
aria-label="Next page"
|
|
147
|
-
disabled={isLastPage()}
|
|
148
|
-
onclick={next}
|
|
149
|
-
>
|
|
131
|
+
<IconButton outlined aria-label="Next page" disabled={isLastPage()} onclick={next}>
|
|
150
132
|
<ChevronRight24 slot="icon" />
|
|
151
133
|
</IconButton>
|
|
152
134
|
{/if}
|
|
@@ -183,8 +165,7 @@
|
|
|
183
165
|
padding: 0 3rem 0 0.75rem;
|
|
184
166
|
background-position: right 1rem center;
|
|
185
167
|
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' aria-hidden='true' height='1rem' width='1rem' fill='var(--forms-color-icon-interactive, %23000000)' viewBox='0 0 16 16'%3E%3Cpath d='M8 11.5a1 1 0 01-.71-.29l-5-5a1 1 0 011.42-1.42L8 9.09l4.29-4.3a1 1 0 111.42 1.42l-5 5a1 1 0 01-.71.29z'/%3E%3C/svg%3E");
|
|
186
|
-
border: var(--border-s,
|
|
187
|
-
border-radius: var(--radius-s, 0.25rem);
|
|
168
|
+
border: var(--border-width-s, 0.0625rem) solid var(--forms-color-border-default, #666666);
|
|
188
169
|
display: block;
|
|
189
170
|
width: 100%;
|
|
190
171
|
color: var(--forms-color-text-default, #000000);
|
|
@@ -192,10 +173,11 @@
|
|
|
192
173
|
text-overflow: ellipsis;
|
|
193
174
|
background-repeat: no-repeat;
|
|
194
175
|
background-size: 1rem;
|
|
176
|
+
border-radius: var(--border-radius-s, 0.25rem);
|
|
195
177
|
}
|
|
196
178
|
.mc-select:hover {
|
|
197
179
|
border-color: var(--forms-color-border-hover, #4d4d4d);
|
|
198
|
-
box-shadow: 0 0 0 var(--border-s,
|
|
180
|
+
box-shadow: 0 0 0 var(--border-width-s, 0.0625rem) var(--forms-color-border-hover, #4d4d4d);
|
|
199
181
|
}
|
|
200
182
|
.mc-select:focus {
|
|
201
183
|
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));
|
|
@@ -216,11 +198,11 @@
|
|
|
216
198
|
}
|
|
217
199
|
.mc-select.is-invalid {
|
|
218
200
|
border-color: var(--forms-color-border-invalid, #ea302d);
|
|
219
|
-
box-shadow: 0 0 0 var(--border-s,
|
|
201
|
+
box-shadow: 0 0 0 var(--border-width-s, 0.0625rem) var(--forms-color-border-invalid, #ea302d);
|
|
220
202
|
}
|
|
221
203
|
.mc-select.is-invalid:hover {
|
|
222
204
|
border-color: var(--forms-color-border-invalid-hover, #c61112);
|
|
223
|
-
box-shadow: 0 0 0 var(--border-s,
|
|
205
|
+
box-shadow: 0 0 0 var(--border-width-s, 0.0625rem) var(--forms-color-border-invalid-hover, #c61112);
|
|
224
206
|
}
|
|
225
207
|
.mc-select--s {
|
|
226
208
|
font-size: var(--font-size-100, 0.875rem);
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import{v as
|
|
1
|
+
import{v as B,c as G,p as J,a as K,b as r,f as D,s as z,d as n,e as E,g as V,t as H,i as M,j as N,x as Q,m as f,w as R,k as l,r as s,h as Z}from"../../custom-element.js";import{i as T}from"../../if.js";import{r as U,s as c}from"../../attributes.js";import{c as W}from"../../input.js";import{c as X}from"../../custom-element-forward-events.js";var Y=D('<div class="mc-controls-options svelte-1luc9tv"><button class="mc-controls-options__button svelte-1luc9tv" type="button"><svg class="mc-controls-options__icon svelte-1luc9tv" aria-hidden="true"><path fill-rule="evenodd" d="M12 2C6.477 2 2 6.477 2 12s4.477 10 10 10 10-4.477 10-10S17.523 2 12 2ZM8.293 8.293a1 1 0 0 1 1.414 0L12 10.586l2.293-2.293a1 1 0 1 1 1.414 1.414L13.414 12l2.293 2.293a1 1 0 0 1-1.414 1.414L12 13.414l-2.293 2.293a1 1 0 0 1-1.414-1.414L10.586 12 8.293 9.707a1 1 0 0 1 0-1.414Z" class="svelte-1luc9tv"></path></svg> <span class="mc-controls-options__label svelte-1luc9tv"> </span></button></div>'),$=D('<div><input class="mc-password-input__control mc-text-input__control svelte-1luc9tv"/> <!> <button type="button" role="switch" tabindex="0"><span class="svelte-1luc9tv"> </span></button></div>');const tt={hash:"svelte-1luc9tv",code:`/**
|
|
2
2
|
* Do not edit directly, this file was auto-generated.
|
|
3
3
|
*/.mc-password-input.svelte-1luc9tv .mc-button:where(.svelte-1luc9tv) {min-width:4rem;margin:0.5rem;}
|
|
4
4
|
|
|
5
|
-
/* stylelint-disable string-no-newline */.mc-text-input.svelte-1luc9tv {transition:box-shadow 200ms ease;background-color:var(--forms-color-background-default, #ffffff);border:var(--border-s,
|
|
5
|
+
/* stylelint-disable string-no-newline */.mc-text-input.svelte-1luc9tv {transition:box-shadow 200ms ease;background-color:var(--forms-color-background-default, #ffffff);border:var(--border-width-s, 0.0625rem) solid var(--forms-color-border-default, #666666);border-radius:var(--forms-border-radius, 0.25rem);transition:all ease 200ms;color:var(--forms-color-text-default, #000000);display:block;width:100%;height:3rem;box-sizing:border-box;display:flex;align-items:center;gap:0.5rem;}.mc-text-input__control.svelte-1luc9tv {background-color:transparent;border-width:0;font-family:inherit;outline:none;}.mc-text-input__control.svelte-1luc9tv {padding:0.75rem 0.6875rem;font-size:var(--font-size-150, 1rem);line-height:var(--line-height-s, 1.3);font-weight:var(--font-weight-regular, 400);flex-grow:1;}.mc-text-input__control.svelte-1luc9tv::placeholder {color:var(--forms-color-placeholder, #666666);}.mc-text-input.svelte-1luc9tv:focus-within {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));outline:0.125rem solid transparent;outline-offset:0.125rem;}.mc-text-input.svelte-1luc9tv:hover:not(:focus-within) {border-color:var(--forms-color-border-hover, #4d4d4d);box-shadow:0 0 0 var(--border-width-s, 0.0625rem) var(--forms-color-border-hover, #4d4d4d);}.mc-text-input.svelte-1luc9tv:has(input:where(.svelte-1luc9tv):disabled) {background-color:var(--forms-color-background-disabled, #d9d9d9);cursor:not-allowed;border-color:transparent;box-shadow:none;color:var(--forms-color-text-disabled, #737373);pointer-events:none;}.mc-text-input.svelte-1luc9tv:has(input[readonly]:where(.svelte-1luc9tv)) {border-color:var(--forms-color-border-read-only, #cccccc);pointer-events:none;}.mc-text-input.svelte-1luc9tv:has(.mc-controls-options:where(.svelte-1luc9tv)) {padding-inline-end:0.6875rem;}.mc-text-input.svelte-1luc9tv:has(.mc-controls-options:where(.svelte-1luc9tv)) .mc-text-input__control:where(.svelte-1luc9tv) {padding-inline-end:0;}.mc-text-input.is-invalid.svelte-1luc9tv {border-color:var(--forms-color-border-invalid, #ea302d);box-shadow:0 0 0 var(--border-width-s, 0.0625rem) var(--forms-color-border-invalid, #ea302d);}.mc-text-input.is-invalid.svelte-1luc9tv:hover:not(:focus-within) {border-color:var(--forms-color-border-invalid-hover, #c61112);box-shadow:0 0 0 var(--border-width-s, 0.0625rem) var(--forms-color-border-invalid-hover, #c61112);}.mc-text-input.svelte-1luc9tv :where(.svelte-1luc9tv) {box-sizing:border-box;}
|
|
6
6
|
|
|
7
|
-
/* stylelint-enable string-no-newline */.mc-button.svelte-1luc9tv {color:var(--button-color-filled-standard-font, #ffffff);background-color:var(--button-color-filled-standard-background, #464e63);}.mc-button.svelte-1luc9tv:hover {background-color:var(--button-color-filled-standard-hover-background, #343b4c);}.mc-button.svelte-1luc9tv:active {background-color:var(--button-color-filled-standard-active-background, #242938);}.mc-button.svelte-1luc9tv:disabled {background-color:var(--button-state-disabled-background, #d9d9d9);border-color:transparent;color:var(--button-state-disabled-color, #737373);cursor:not-allowed;}.mc-button.svelte-1luc9tv {font-weight:var(--font-weight-semi-bold, 600);padding:0 calc(1rem - 0.125rem);min-height:3rem;min-width:3rem;}.mc-button.svelte-1luc9tv {display:inline-flex;justify-content:center;vertical-align:middle;text-align:center;border:2px solid transparent;border-radius:var(--button-radius, 0.25rem);transition:all ease 200ms;transition:box-shadow 200ms ease;align-items:center;box-sizing:border-box;font-family:inherit;fill:currentcolor;gap:0.25rem;cursor:pointer;}.mc-button.svelte-1luc9tv:disabled {background-color:var(--button-state-disabled-background, #d9d9d9);border-color:transparent;color:var(--button-state-disabled-color, #737373);cursor:not-allowed;}.mc-button.svelte-1luc9tv:focus-visible {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));outline:0.125rem solid transparent;outline-offset:0.125rem;}.mc-button--s.svelte-1luc9tv {padding:0 calc(0.75rem - 0.125rem);min-height:2rem;min-width:2rem;}.mc-button--ghost.svelte-1luc9tv {color:var(--button-color-ghost-standard-font, #242938);background-color:var(--button-color-ghost-standard-background, rgba(255, 255, 255, 0.01));}.mc-button--ghost.svelte-1luc9tv:hover {background-color:var(--button-color-ghost-standard-hover-background, rgba(70, 78, 99, 0.1));}.mc-button--ghost.svelte-1luc9tv:active {background-color:var(--button-color-ghost-standard-active-background, rgba(70, 78, 99, 0.2));}.mc-button--ghost.svelte-1luc9tv:disabled {background-color:var(--button-state-disabled-background, #d9d9d9);border-color:transparent;color:var(--button-state-disabled-color, #737373);cursor:not-allowed;}.mc-controls-options.svelte-1luc9tv {align-items:center;display:inline-flex;justify-content:center;gap:0.5rem;}.mc-controls-options__button.svelte-1luc9tv {background-color:transparent;border-width:0;color:initial;font-family:inherit;outline:none;appearance:none;cursor:pointer;padding:0;border-radius:var(--radius-full, 100%);}.mc-controls-options__button.svelte-1luc9tv:hover .mc-controls-options__icon:where(.svelte-1luc9tv) {fill:var(--forms-color-icon-clear-hover, #4d4d4d);}.mc-controls-options__button.svelte-1luc9tv:focus-visible {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));outline:0.125rem solid transparent;outline-offset:0.125rem;}.mc-controls-options__icon.svelte-1luc9tv {fill:var(--forms-color-icon-clear, #666666);}.mc-controls-options__button.svelte-1luc9tv, .mc-controls-options__icon.svelte-1luc9tv {height:1.5rem;width:1.5rem;}.mc-controls-options__label.svelte-1luc9tv {clip-path:inset(100%);clip:rect(1px, 1px, 1px, 1px);height:1px;overflow:hidden;position:absolute;white-space:nowrap;padding:0;width:1px;}`};function et(
|
|
7
|
+
/* stylelint-enable string-no-newline */.mc-button.svelte-1luc9tv {color:var(--button-color-filled-standard-font, #ffffff);background-color:var(--button-color-filled-standard-background, #464e63);}.mc-button.svelte-1luc9tv:hover {background-color:var(--button-color-filled-standard-hover-background, #343b4c);}.mc-button.svelte-1luc9tv:active {background-color:var(--button-color-filled-standard-active-background, #242938);}.mc-button.svelte-1luc9tv:disabled {background-color:var(--button-state-disabled-background, #d9d9d9);border-color:transparent;color:var(--button-state-disabled-color, #737373);cursor:not-allowed;}.mc-button.svelte-1luc9tv {font-weight:var(--font-weight-semi-bold, 600);padding:0 calc(1rem - 0.125rem);min-height:3rem;min-width:3rem;}.mc-button.svelte-1luc9tv {display:inline-flex;justify-content:center;vertical-align:middle;text-align:center;border:2px solid transparent;border-radius:var(--button-border-radius-s, 0.25rem);transition:all ease 200ms;transition:box-shadow 200ms ease;align-items:center;box-sizing:border-box;font-family:inherit;fill:currentcolor;gap:0.25rem;cursor:pointer;}.mc-button.svelte-1luc9tv:disabled {background-color:var(--button-state-disabled-background, #d9d9d9);border-color:transparent;color:var(--button-state-disabled-color, #737373);cursor:not-allowed;}.mc-button.svelte-1luc9tv:focus-visible {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));outline:0.125rem solid transparent;outline-offset:0.125rem;}.mc-button--s.svelte-1luc9tv {padding:0 calc(0.75rem - 0.125rem);min-height:2rem;min-width:2rem;}.mc-button--ghost.svelte-1luc9tv {color:var(--button-color-ghost-standard-font, #242938);background-color:var(--button-color-ghost-standard-background, rgba(255, 255, 255, 0.01));}.mc-button--ghost.svelte-1luc9tv:hover {background-color:var(--button-color-ghost-standard-hover-background, rgba(70, 78, 99, 0.1));}.mc-button--ghost.svelte-1luc9tv:active {background-color:var(--button-color-ghost-standard-active-background, rgba(70, 78, 99, 0.2));}.mc-button--ghost.svelte-1luc9tv:disabled {background-color:var(--button-state-disabled-background, #d9d9d9);border-color:transparent;color:var(--button-state-disabled-color, #737373);cursor:not-allowed;}.mc-controls-options.svelte-1luc9tv {align-items:center;display:inline-flex;justify-content:center;gap:0.5rem;}.mc-controls-options__button.svelte-1luc9tv {background-color:transparent;border-width:0;color:initial;font-family:inherit;outline:none;appearance:none;cursor:pointer;padding:0;border-radius:var(--border-radius-full, 100%);}.mc-controls-options__button.svelte-1luc9tv:hover .mc-controls-options__icon:where(.svelte-1luc9tv) {fill:var(--forms-color-icon-clear-hover, #4d4d4d);}.mc-controls-options__button.svelte-1luc9tv:focus-visible {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));outline:0.125rem solid transparent;outline-offset:0.125rem;}.mc-controls-options__icon.svelte-1luc9tv {fill:var(--forms-color-icon-clear, #666666);}.mc-controls-options__button.svelte-1luc9tv, .mc-controls-options__icon.svelte-1luc9tv {height:1.5rem;width:1.5rem;}.mc-controls-options__label.svelte-1luc9tv {clip-path:inset(100%);clip:rect(1px, 1px, 1px, 1px);height:1px;overflow:hidden;position:absolute;white-space:nowrap;padding:0;width:1px;}`};function et(L,e){J(e,!0),K(L,tt);let h=r(e,"id",7),p=r(e,"name",7),i=r(e,"value",15),g=r(e,"placeholder",7),u=r(e,"isinvalid",7),v=r(e,"disabled",7),w=r(e,"readonly",7),_=r(e,"isclearable",7),x=r(e,"clearlabel",7,"Clear content"),b=r(e,"buttonlabel",23,()=>({show:"Show",hide:"Hide"})),d=R(!1);function F(){Q(d,!f(d))}const I=()=>i("");var O={get id(){return h()},set id(t){h(t),l()},get name(){return p()},set name(t){p(t),l()},get value(){return i()},set value(t){i(t),l()},get placeholder(){return g()},set placeholder(t){g(t),l()},get isinvalid(){return u()},set isinvalid(t){u(t),l()},get disabled(){return v()},set disabled(t){v(t),l()},get readonly(){return w()},set readonly(t){w(t),l()},get isclearable(){return _()},set isclearable(t){_(t),l()},get clearlabel(){return x()},set clearlabel(t="Clear content"){x(t),l()},get buttonlabel(){return b()},set buttonlabel(t={show:"Show",hide:"Hide"}){b(t),l()}},m=$(),o=n(m);U(o);var S=z(o,2);{var P=t=>{var k=Y(),y=n(k);y.__click=I;var C=z(n(y),2),A=n(C,!0);s(C),s(y),s(k),H(()=>Z(A,x())),M(t,k)};T(S,t=>{_()&&i()&&t(P)})}var a=z(S,2);E(a,1,V(["mc-button","mc-button--s","mc-button--ghost"]),"svelte-1luc9tv"),a.__click=F;var j=n(a),q=n(j,!0);return s(j),s(a),s(m),H(()=>{E(m,1,V(["mc-password-input","mc-text-input",u()&&"is-invalid"]),"svelte-1luc9tv"),c(o,"id",h()),c(o,"name",p()),c(o,"type",f(d)?"text":"password"),c(o,"placeholder",g()),o.disabled=v(),o.readOnly=w(),c(o,"aria-invalid",u()),a.disabled=v(),c(a,"aria-checked",f(d)),Z(q,f(d)?b().hide:b().show)}),W(o,i),M(L,m),N(O)}B(["click"]);customElements.define("m-password-input",G(et,{id:{},name:{},value:{},placeholder:{},isinvalid:{},disabled:{},readonly:{},isclearable:{},clearlabel:{},buttonlabel:{}},[],[],!0,X));
|
|
8
8
|
//# sourceMappingURL=PasswordInput.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PasswordInput.js","sources":["../../../src/components/passwordinput/PasswordInput.svelte"],"sourcesContent":["<svelte:options\n customElement={{\n tag: 'm-password-input',\n extend: customElementForwardEvents,\n }}\n/>\n\n<script lang=\"ts\">\n import { customElementForwardEvents } from '../../utils';\n /**\n * A password input is a specialized input field used to securely enter and manage passwords. It typically masks the characters entered to protect sensitive information from being seen. It includes a toggle button to show or hide the password, improving usability while maintaining security. Password inputs are commonly used in login forms, account creation, and authentication flows.\n */\n interface Props {\n /**\n * A unique identifier for the password input element, used to associate the label with the form element.\n */\n id: string;\n /**\n * The name attribute for the password input element, typically used for form submission.\n */\n name?: string;\n /**\n * The current value of the password input field.\n */\n value?: string | number;\n /**\n * A placeholder text to show in the password input when it is empty.\n */\n placeholder?: string;\n /**\n * If `true`, applies an invalid state to the password input.\n */\n isinvalid?: boolean;\n /**\n * If `true`, disables the password input, making it non-interactive.\n */\n disabled?: boolean;\n /**\n * If `true`, the password input is read-only (cannot be edited).\n */\n readonly?: boolean;\n /**\n * If `true`, a clear button will appear when the password input has a value.\n */\n isclearable?: boolean;\n /**\n * The label text for the clear button.\n */\n clearlabel?: string;\n /**\n * Labels of the button displayed when showing or hiding the password.\n */\n buttonlabel?: {\n show: string;\n hide: string;\n };\n }\n\n let {\n id,\n name,\n value,\n placeholder,\n isinvalid,\n disabled,\n readonly,\n isclearable,\n clearlabel = 'Clear content',\n buttonlabel = { show: 'Show', hide: 'Hide' },\n }: Props = $props();\n\n let isVisible = $state(false);\n\n function toggleVisibility() {\n isVisible = !isVisible;\n }\n\n const resetValue = () => (value = '');\n</script>\n\n<div class={['mc-password-input', 'mc-text-input', isinvalid && 'is-invalid']}>\n <input\n class=\"mc-password-input__control mc-text-input__control\"\n {id}\n {name}\n type={isVisible ? 'text' : 'password'}\n bind:value\n {placeholder}\n {disabled}\n {readonly}\n aria-invalid={isinvalid}\n />\n {#if isclearable && value}\n <div class=\"mc-controls-options\">\n <button
|
|
1
|
+
{"version":3,"file":"PasswordInput.js","sources":["../../../src/components/passwordinput/PasswordInput.svelte"],"sourcesContent":["<svelte:options\n customElement={{\n tag: 'm-password-input',\n extend: customElementForwardEvents,\n }}\n/>\n\n<script lang=\"ts\">\n import { customElementForwardEvents } from '../../utils';\n /**\n * A password input is a specialized input field used to securely enter and manage passwords. It typically masks the characters entered to protect sensitive information from being seen. It includes a toggle button to show or hide the password, improving usability while maintaining security. Password inputs are commonly used in login forms, account creation, and authentication flows.\n */\n interface Props {\n /**\n * A unique identifier for the password input element, used to associate the label with the form element.\n */\n id: string;\n /**\n * The name attribute for the password input element, typically used for form submission.\n */\n name?: string;\n /**\n * The current value of the password input field.\n */\n value?: string | number;\n /**\n * A placeholder text to show in the password input when it is empty.\n */\n placeholder?: string;\n /**\n * If `true`, applies an invalid state to the password input.\n */\n isinvalid?: boolean;\n /**\n * If `true`, disables the password input, making it non-interactive.\n */\n disabled?: boolean;\n /**\n * If `true`, the password input is read-only (cannot be edited).\n */\n readonly?: boolean;\n /**\n * If `true`, a clear button will appear when the password input has a value.\n */\n isclearable?: boolean;\n /**\n * The label text for the clear button.\n */\n clearlabel?: string;\n /**\n * Labels of the button displayed when showing or hiding the password.\n */\n buttonlabel?: {\n show: string;\n hide: string;\n };\n }\n\n let {\n id,\n name,\n value = $bindable(),\n placeholder,\n isinvalid,\n disabled,\n readonly,\n isclearable,\n clearlabel = 'Clear content',\n buttonlabel = { show: 'Show', hide: 'Hide' },\n }: Props = $props();\n\n let isVisible = $state(false);\n\n function toggleVisibility() {\n isVisible = !isVisible;\n }\n\n const resetValue = () => (value = '');\n</script>\n\n<div class={['mc-password-input', 'mc-text-input', isinvalid && 'is-invalid']}>\n <input\n class=\"mc-password-input__control mc-text-input__control\"\n {id}\n {name}\n type={isVisible ? 'text' : 'password'}\n bind:value\n {placeholder}\n {disabled}\n {readonly}\n aria-invalid={isinvalid}\n />\n {#if isclearable && value}\n <div class=\"mc-controls-options\">\n <button class=\"mc-controls-options__button\" type=\"button\" onclick={resetValue}>\n <svg class=\"mc-controls-options__icon\" aria-hidden=\"true\">\n <path\n fill-rule=\"evenodd\"\n d=\"M12 2C6.477 2 2 6.477 2 12s4.477 10 10 10 10-4.477 10-10S17.523 2 12 2ZM8.293 8.293a1 1 0 0 1 1.414 0L12 10.586l2.293-2.293a1 1 0 1 1 1.414 1.414L13.414 12l2.293 2.293a1 1 0 0 1-1.414 1.414L12 13.414l-2.293 2.293a1 1 0 0 1-1.414-1.414L10.586 12 8.293 9.707a1 1 0 0 1 0-1.414Z\"\n />\n </svg>\n <span class=\"mc-controls-options__label\">{clearlabel}</span>\n </button>\n </div>\n {/if}\n\n <button\n class={['mc-button', 'mc-button--s', 'mc-button--ghost']}\n type=\"button\"\n role=\"switch\"\n tabindex=\"0\"\n {disabled}\n aria-checked={isVisible}\n onclick={toggleVisibility}\n >\n <span>{isVisible ? buttonlabel.hide : buttonlabel.show}</span>\n </button>\n</div>\n\n<style lang=\"scss\">\n @use '@mozaic-ds/styles/components/password-input';\n @use '@mozaic-ds/styles/components/text-input';\n @use '@mozaic-ds/styles/components/button';\n @use '@mozaic-ds/styles/components/controls-options';\n</style>\n"],"names":["id","$.prop","$$props","name","value","placeholder","isinvalid","disabled","readonly","isclearable","clearlabel","buttonlabel","isVisible","toggleVisibility","$.set","resetValue","$$value","$$render","consequent","$.set_text","text_1","$.get","customElementForwardEvents"],"mappings":";;;;;;g8GAAA,qBA2DIA,EAAEC,EAAAC,EAAA,KAAA,CAAA,EACFC,EAAIF,EAAAC,EAAA,OAAA,CAAA,EACJE,EAAKH,EAAAC,EAAA,QAAA,EAAA,EACLG,EAAWJ,EAAAC,EAAA,cAAA,CAAA,EACXI,EAASL,EAAAC,EAAA,YAAA,CAAA,EACTK,EAAQN,EAAAC,EAAA,WAAA,CAAA,EACRM,EAAQP,EAAAC,EAAA,WAAA,CAAA,EACRO,EAAWR,EAAAC,EAAA,cAAA,CAAA,EACXQ,qBAAa,eAAe,EAC5BC,6BAAgB,KAAM,OAAQ,KAAM,MAAM,EAAA,EAGxCC,IAAmB,EAAK,EAEnB,SAAAC,GAAmB,CAC1BC,EAAAF,KAAaA,CAAS,CAAA,CACxB,OAEMG,EAAU,IAAUX,EAAQ,EAAE,mdAVrB,gBAAe,yCACZ,IAAA,YAAAY,EAAA,CAAA,KAAM,OAAQ,KAAM,QAAM,iFA0B2BD,qDAOvBL,EAAU,CAAA,CAAA,kBATrDD,EAAW,GAAIL,KAAKa,EAAAC,CAAA,0BAef,YAAa,eAAgB,kBAAkB,CAAA,EAAA,gBAAA,YAM9CL,6DAjCA,oBAAqB,gBAAiBP,KAAa,4EAKtDM,CAAS,EAAG,OAAS,UAAU,0EAKvBN,GAAS,sCAsBTM,CAAS,CAAA,EAGhBO,EAAAC,EAAAC,EAAAT,CAAS,EAAGD,EAAW,EAAC,KAAOA,EAAW,EAAC,IAAI,sBArC1D,8LA3EYW"}
|
|
@@ -33,7 +33,7 @@ describe('m-password-input component', () => {
|
|
|
33
33
|
expect(toggleBtn.getAttribute('aria-checked')).toBe('false');
|
|
34
34
|
});
|
|
35
35
|
it('shows clear button when isclearable is true and value is not empty', async () => {
|
|
36
|
-
const { container
|
|
36
|
+
const { container } = render(PasswordInput, {
|
|
37
37
|
props: { ...baseProps, isclearable: true, value: 'secret' },
|
|
38
38
|
});
|
|
39
39
|
const clearBtn = container.querySelector('.mc-controls-options__button');
|
|
@@ -59,7 +59,7 @@
|
|
|
59
59
|
let {
|
|
60
60
|
id,
|
|
61
61
|
name,
|
|
62
|
-
value,
|
|
62
|
+
value = $bindable(),
|
|
63
63
|
placeholder,
|
|
64
64
|
isinvalid,
|
|
65
65
|
disabled,
|
|
@@ -92,11 +92,7 @@
|
|
|
92
92
|
/>
|
|
93
93
|
{#if isclearable && value}
|
|
94
94
|
<div class="mc-controls-options">
|
|
95
|
-
<button
|
|
96
|
-
class="mc-controls-options__button"
|
|
97
|
-
type="button"
|
|
98
|
-
onclick={resetValue}
|
|
99
|
-
>
|
|
95
|
+
<button class="mc-controls-options__button" type="button" onclick={resetValue}>
|
|
100
96
|
<svg class="mc-controls-options__icon" aria-hidden="true">
|
|
101
97
|
<path
|
|
102
98
|
fill-rule="evenodd"
|
|
@@ -133,8 +129,8 @@
|
|
|
133
129
|
.mc-text-input {
|
|
134
130
|
transition: box-shadow 200ms ease;
|
|
135
131
|
background-color: var(--forms-color-background-default, #ffffff);
|
|
136
|
-
border: var(--border-s,
|
|
137
|
-
border-radius: var(--forms-radius
|
|
132
|
+
border: var(--border-width-s, 0.0625rem) solid var(--forms-color-border-default, #666666);
|
|
133
|
+
border-radius: var(--forms-border-radius, 0.25rem);
|
|
138
134
|
transition: all ease 200ms;
|
|
139
135
|
color: var(--forms-color-text-default, #000000);
|
|
140
136
|
display: block;
|
|
@@ -188,7 +184,7 @@
|
|
|
188
184
|
}
|
|
189
185
|
.mc-text-input:hover:not(:focus-within) {
|
|
190
186
|
border-color: var(--forms-color-border-hover, #4d4d4d);
|
|
191
|
-
box-shadow: 0 0 0 var(--border-s,
|
|
187
|
+
box-shadow: 0 0 0 var(--border-width-s, 0.0625rem) var(--forms-color-border-hover, #4d4d4d);
|
|
192
188
|
}
|
|
193
189
|
.mc-text-input:has(input:disabled) {
|
|
194
190
|
background-color: var(--forms-color-background-disabled, #d9d9d9);
|
|
@@ -230,11 +226,11 @@
|
|
|
230
226
|
}
|
|
231
227
|
.mc-text-input.is-invalid {
|
|
232
228
|
border-color: var(--forms-color-border-invalid, #ea302d);
|
|
233
|
-
box-shadow: 0 0 0 var(--border-s,
|
|
229
|
+
box-shadow: 0 0 0 var(--border-width-s, 0.0625rem) var(--forms-color-border-invalid, #ea302d);
|
|
234
230
|
}
|
|
235
231
|
.mc-text-input.is-invalid:hover:not(:focus-within) {
|
|
236
232
|
border-color: var(--forms-color-border-invalid-hover, #c61112);
|
|
237
|
-
box-shadow: 0 0 0 var(--border-s,
|
|
233
|
+
box-shadow: 0 0 0 var(--border-width-s, 0.0625rem) var(--forms-color-border-invalid-hover, #c61112);
|
|
238
234
|
}
|
|
239
235
|
.mc-text-input * {
|
|
240
236
|
box-sizing: border-box;
|
|
@@ -272,7 +268,7 @@
|
|
|
272
268
|
vertical-align: middle;
|
|
273
269
|
text-align: center;
|
|
274
270
|
border: 2px solid transparent;
|
|
275
|
-
border-radius: var(--button-radius, 0.25rem);
|
|
271
|
+
border-radius: var(--button-border-radius-s, 0.25rem);
|
|
276
272
|
transition: all ease 200ms;
|
|
277
273
|
transition: box-shadow 200ms ease;
|
|
278
274
|
align-items: center;
|
|
@@ -436,7 +432,7 @@
|
|
|
436
432
|
cursor: not-allowed;
|
|
437
433
|
}
|
|
438
434
|
.mc-button--icon-button {
|
|
439
|
-
border-radius: var(--radius-full, 100%);
|
|
435
|
+
border-radius: var(--border-radius-full, 100%);
|
|
440
436
|
padding: 0;
|
|
441
437
|
}
|
|
442
438
|
.mc-button--loading .mc-button__loader {
|
|
@@ -595,7 +591,7 @@
|
|
|
595
591
|
appearance: none;
|
|
596
592
|
cursor: pointer;
|
|
597
593
|
padding: 0;
|
|
598
|
-
border-radius: var(--radius-full, 100%);
|
|
594
|
+
border-radius: var(--border-radius-full, 100%);
|
|
599
595
|
}
|
|
600
596
|
.mc-controls-options__button:hover .mc-controls-options__icon {
|
|
601
597
|
fill: var(--forms-color-icon-clear-hover, #4d4d4d);
|
|
@@ -46,7 +46,7 @@ interface Props {
|
|
|
46
46
|
hide: string;
|
|
47
47
|
};
|
|
48
48
|
}
|
|
49
|
-
declare const PasswordInput: import("svelte").Component<Props, {}, "">;
|
|
49
|
+
declare const PasswordInput: import("svelte").Component<Props, {}, "value">;
|
|
50
50
|
type PasswordInput = ReturnType<typeof PasswordInput>;
|
|
51
51
|
export default PasswordInput;
|
|
52
52
|
//# sourceMappingURL=PasswordInput.svelte.d.ts.map
|