@mozaic-ds/web-components 1.3.0 → 1.5.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/dist/Condition20.js +2 -0
- package/dist/Condition20.js.map +1 -0
- package/dist/accordion-list.state.svelte.js +2 -0
- package/dist/accordion-list.state.svelte.js.map +1 -0
- package/dist/attributes.js +1 -1
- package/dist/attributes.js.map +1 -1
- package/dist/branches.js +2 -0
- package/dist/branches.js.map +1 -0
- package/dist/bundle.d.ts +8 -0
- package/dist/bundle.d.ts.map +1 -1
- package/dist/bundle.js +8 -0
- package/dist/components/accordionlist/AccordionList.js +50 -0
- package/dist/components/accordionlist/AccordionList.js.map +1 -0
- package/dist/components/accordionlist/AccordionList.spec.js +40 -0
- package/dist/components/accordionlist/AccordionList.stories.d.ts +15 -0
- package/dist/components/accordionlist/AccordionList.stories.d.ts.map +1 -0
- package/dist/components/accordionlist/AccordionList.stories.js +141 -0
- package/dist/components/accordionlist/AccordionList.svelte +441 -0
- package/dist/components/accordionlist/AccordionList.svelte.d.ts +47 -0
- package/dist/components/accordionlist/AccordionList.svelte.d.ts.map +1 -0
- package/dist/components/accordionlist/README.md +18 -0
- package/dist/components/accordionlist/accordion-list.state.svelte.d.ts +5 -0
- package/dist/components/accordionlist/accordion-list.state.svelte.d.ts.map +1 -0
- package/dist/components/accordionlist/accordion-list.state.svelte.js +6 -0
- package/dist/components/accordionlistItem/AccordionListItem.js +50 -0
- package/dist/components/accordionlistItem/AccordionListItem.js.map +1 -0
- package/dist/components/accordionlistItem/AccordionListItem.spec.js +75 -0
- package/dist/components/accordionlistItem/AccordionListItem.svelte +463 -0
- package/dist/components/accordionlistItem/AccordionListItem.svelte.d.ts +50 -0
- package/dist/components/accordionlistItem/AccordionListItem.svelte.d.ts.map +1 -0
- package/dist/components/accordionlistItem/README.md +29 -0
- package/dist/components/actionbottombar/ActionBottomBar.js +12 -0
- package/dist/components/actionbottombar/ActionBottomBar.js.map +1 -0
- package/dist/components/actionbottombar/ActionBottomBar.spec.js +20 -0
- package/dist/components/actionbottombar/ActionBottomBar.stories.d.ts +19 -0
- package/dist/components/actionbottombar/ActionBottomBar.stories.d.ts.map +1 -0
- package/dist/components/actionbottombar/ActionBottomBar.stories.js +131 -0
- package/dist/components/actionbottombar/ActionBottomBar.svelte +95 -0
- package/dist/components/actionbottombar/ActionBottomBar.svelte.d.ts +34 -0
- package/dist/components/actionbottombar/ActionBottomBar.svelte.d.ts.map +1 -0
- package/dist/components/actionbottombar/README.md +17 -0
- package/dist/components/actionlistbox/ActionListbox.js +10 -0
- package/dist/components/actionlistbox/ActionListbox.js.map +1 -0
- package/dist/components/actionlistbox/ActionListbox.spec.js +20 -0
- package/dist/components/actionlistbox/ActionListbox.stories.d.ts +12 -0
- package/dist/components/actionlistbox/ActionListbox.stories.d.ts.map +1 -0
- package/dist/components/actionlistbox/ActionListbox.stories.js +49 -0
- package/dist/components/actionlistbox/ActionListbox.svelte +213 -0
- package/dist/components/actionlistbox/ActionListbox.svelte.d.ts +37 -0
- package/dist/components/actionlistbox/ActionListbox.svelte.d.ts.map +1 -0
- package/dist/components/actionlistbox/README.md +23 -0
- package/dist/components/actionlistboxitem/ActionListboxItem.js +4 -0
- package/dist/components/actionlistboxitem/ActionListboxItem.js.map +1 -0
- package/dist/components/actionlistboxitem/ActionListboxItem.spec.js +37 -0
- package/dist/components/actionlistboxitem/ActionListboxItem.svelte +136 -0
- package/dist/components/actionlistboxitem/ActionListboxItem.svelte.d.ts +43 -0
- package/dist/components/actionlistboxitem/ActionListboxItem.svelte.d.ts.map +1 -0
- package/dist/components/actionlistboxitem/README.md +20 -0
- 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 +1 -1
- package/dist/components/avatar/Avatar.stories.d.ts.map +1 -1
- package/dist/components/avatar/Avatar.stories.js +2 -2
- package/dist/components/avatar/Avatar.svelte +1 -0
- package/dist/components/avatar/Avatar.svelte.d.ts +1 -0
- 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.svelte +1 -0
- package/dist/components/breadcrumb/Breadcrumb.svelte.d.ts +1 -0
- package/dist/components/breadcrumb/Breadcrumb.svelte.d.ts.map +1 -1
- package/dist/components/builtinmenu/BuiltInMenu.js +4 -0
- package/dist/components/builtinmenu/BuiltInMenu.js.map +1 -0
- package/dist/components/builtinmenu/BuiltInMenu.stories.d.ts +11 -0
- package/dist/components/builtinmenu/BuiltInMenu.stories.d.ts.map +1 -0
- package/dist/components/builtinmenu/BuiltInMenu.stories.js +61 -0
- package/dist/components/builtinmenu/BuiltInMenu.svelte +133 -0
- package/dist/components/builtinmenu/BuiltInMenu.svelte.d.ts +36 -0
- package/dist/components/builtinmenu/BuiltInMenu.svelte.d.ts.map +1 -0
- package/dist/components/builtinmenu/BuiltinMenu.spec.js +19 -0
- package/dist/components/builtinmenu/README.md +17 -0
- package/dist/components/builtinmenuitem/BuiltInMenuItem.js +8 -0
- package/dist/components/builtinmenuitem/BuiltInMenuItem.js.map +1 -0
- package/dist/components/builtinmenuitem/BuiltInMenuItem.spec.js +36 -0
- package/dist/components/builtinmenuitem/BuiltInMenuItem.svelte +156 -0
- package/dist/components/builtinmenuitem/BuiltInMenuItem.svelte.d.ts +45 -0
- package/dist/components/builtinmenuitem/BuiltInMenuItem.svelte.d.ts.map +1 -0
- package/dist/components/builtinmenuitem/README.md +19 -0
- package/dist/components/button/Button.js +3 -3
- package/dist/components/button/Button.js.map +1 -1
- package/dist/components/button/Button.stories.d.ts +13 -2
- package/dist/components/button/Button.stories.d.ts.map +1 -1
- package/dist/components/button/Button.stories.js +145 -7
- package/dist/components/button/Button.svelte +17 -6
- package/dist/components/button/Button.svelte.d.ts +1 -0
- package/dist/components/button/Button.svelte.d.ts.map +1 -1
- package/dist/components/callout/Callout.js +2 -2
- package/dist/components/callout/Callout.js.map +1 -1
- package/dist/components/callout/Callout.stories.d.ts +2 -2
- package/dist/components/callout/Callout.stories.d.ts.map +1 -1
- package/dist/components/callout/Callout.stories.js +2 -2
- package/dist/components/callout/Callout.svelte +1 -0
- package/dist/components/callout/Callout.svelte.d.ts +1 -0
- package/dist/components/callout/Callout.svelte.d.ts.map +1 -1
- package/dist/components/carousel/Carousel.js +2 -2
- package/dist/components/carousel/Carousel.js.map +1 -1
- package/dist/components/carousel/Carousel.stories.d.ts.map +1 -1
- package/dist/components/carousel/Carousel.stories.js +1 -0
- package/dist/components/carousel/Carousel.svelte +3 -2
- package/dist/components/carousel/Carousel.svelte.d.ts +1 -0
- package/dist/components/carousel/Carousel.svelte.d.ts.map +1 -1
- package/dist/components/checkbox/Checkbox.js +2 -2
- package/dist/components/checkbox/Checkbox.js.map +1 -1
- package/dist/components/checkbox/Checkbox.stories.js +5 -5
- package/dist/components/checkbox/Checkbox.svelte +5 -0
- package/dist/components/checkbox/Checkbox.svelte.d.ts +1 -0
- package/dist/components/checkbox/Checkbox.svelte.d.ts.map +1 -1
- package/dist/components/checkboxgroup/CheckboxGroup.js +2 -2
- package/dist/components/checkboxgroup/CheckboxGroup.js.map +1 -1
- package/dist/components/checkboxgroup/CheckboxGroup.stories.js +2 -2
- package/dist/components/checkboxgroup/CheckboxGroup.svelte +3 -0
- package/dist/components/checkboxgroup/CheckboxGroup.svelte.d.ts +1 -0
- package/dist/components/checkboxgroup/CheckboxGroup.svelte.d.ts.map +1 -1
- package/dist/components/checklistmenu/CheckListMenu.js +4 -0
- package/dist/components/checklistmenu/CheckListMenu.js.map +1 -0
- package/dist/components/checklistmenu/CheckListMenu.spec.js +33 -0
- package/dist/components/checklistmenu/CheckListMenu.stories.d.ts +8 -0
- package/dist/components/checklistmenu/CheckListMenu.stories.d.ts.map +1 -0
- package/dist/components/checklistmenu/CheckListMenu.stories.js +32 -0
- package/dist/components/checklistmenu/CheckListMenu.svelte +79 -0
- package/dist/components/checklistmenu/CheckListMenu.svelte.d.ts +29 -0
- package/dist/components/checklistmenu/CheckListMenu.svelte.d.ts.map +1 -0
- package/dist/components/checklistmenu/README.md +12 -0
- package/dist/components/circularprogressbar/CircularProgressbar.js +2 -2
- package/dist/components/circularprogressbar/CircularProgressbar.js.map +1 -1
- package/dist/components/circularprogressbar/CircularProgressbar.svelte +1 -0
- 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 +2 -2
- package/dist/components/container/Container.js.map +1 -1
- package/dist/components/container/Container.stories.d.ts.map +1 -1
- package/dist/components/container/Container.stories.js +1 -3
- package/dist/components/container/Container.svelte +8 -1
- package/dist/components/container/Container.svelte.d.ts.map +1 -1
- package/dist/components/datepicker/Datepicker.js +2 -2
- package/dist/components/datepicker/Datepicker.js.map +1 -1
- package/dist/components/datepicker/Datepicker.stories.d.ts.map +1 -1
- package/dist/components/datepicker/Datepicker.stories.js +6 -4
- package/dist/components/datepicker/Datepicker.svelte +15 -3
- package/dist/components/datepicker/Datepicker.svelte.d.ts +1 -0
- package/dist/components/datepicker/Datepicker.svelte.d.ts.map +1 -1
- package/dist/components/divider/Divider.js +2 -2
- package/dist/components/divider/Divider.js.map +1 -1
- package/dist/components/divider/Divider.svelte +3 -2
- package/dist/components/divider/Divider.svelte.d.ts +1 -0
- package/dist/components/divider/Divider.svelte.d.ts.map +1 -1
- package/dist/components/drawer/Drawer.js +2 -2
- package/dist/components/drawer/Drawer.js.map +1 -1
- package/dist/components/drawer/Drawer.stories.js +3 -3
- package/dist/components/drawer/Drawer.svelte +29 -7
- package/dist/components/drawer/Drawer.svelte.d.ts +1 -0
- package/dist/components/drawer/Drawer.svelte.d.ts.map +1 -1
- package/dist/components/field/Field.js +2 -2
- package/dist/components/field/Field.js.map +1 -1
- package/dist/components/field/Field.stories.d.ts.map +1 -1
- package/dist/components/field/Field.stories.js +6 -3
- package/dist/components/field/Field.svelte +5 -0
- package/dist/components/field/Field.svelte.d.ts.map +1 -1
- package/dist/components/fileuploader/FileUploader.js +4 -0
- package/dist/components/fileuploader/FileUploader.js.map +1 -0
- package/dist/components/fileuploader/FileUploader.spec.js +134 -0
- package/dist/components/fileuploader/FileUploader.stories.d.ts +17 -0
- package/dist/components/fileuploader/FileUploader.stories.d.ts.map +1 -0
- package/dist/components/fileuploader/FileUploader.stories.js +175 -0
- package/dist/components/fileuploader/FileUploader.svelte +819 -0
- package/dist/components/fileuploader/FileUploader.svelte.d.ts +125 -0
- package/dist/components/fileuploader/FileUploader.svelte.d.ts.map +1 -0
- package/dist/components/fileuploader/README.md +42 -0
- package/dist/components/fileuploaderitem/FileUploaderItem.js +5 -0
- package/dist/components/fileuploaderitem/FileUploaderItem.js.map +1 -0
- package/dist/components/fileuploaderitem/FileUploaderItem.spec.js +41 -0
- package/dist/components/fileuploaderitem/FileUploaderItem.svelte +298 -0
- package/dist/components/fileuploaderitem/FileUploaderItem.svelte.d.ts +62 -0
- package/dist/components/fileuploaderitem/FileUploaderItem.svelte.d.ts.map +1 -0
- package/dist/components/fileuploaderitem/README.md +24 -0
- package/dist/components/flag/Flag.js +2 -2
- package/dist/components/flag/Flag.js.map +1 -1
- package/dist/components/flag/Flag.svelte +1 -0
- package/dist/components/flag/Flag.svelte.d.ts +1 -0
- package/dist/components/flag/Flag.svelte.d.ts.map +1 -1
- package/dist/components/iconbutton/IconButton.js +2 -2
- package/dist/components/iconbutton/IconButton.js.map +1 -1
- package/dist/components/iconbutton/IconButton.stories.d.ts +13 -7
- package/dist/components/iconbutton/IconButton.stories.d.ts.map +1 -1
- package/dist/components/iconbutton/IconButton.stories.js +113 -10
- package/dist/components/iconbutton/IconButton.svelte +32 -2
- package/dist/components/iconbutton/IconButton.svelte.d.ts +5 -0
- package/dist/components/iconbutton/IconButton.svelte.d.ts.map +1 -1
- package/dist/components/iconbutton/README.md +1 -0
- package/dist/components/kpiitem/KpiItem.js +2 -2
- package/dist/components/kpiitem/KpiItem.js.map +1 -1
- package/dist/components/kpiitem/KpiItem.stories.d.ts.map +1 -1
- package/dist/components/kpiitem/KpiItem.stories.js +1 -0
- package/dist/components/kpiitem/KpiItem.svelte +2 -3
- package/dist/components/kpiitem/KpiItem.svelte.d.ts +1 -0
- package/dist/components/kpiitem/KpiItem.svelte.d.ts.map +1 -1
- package/dist/components/linearprogressbarbuffer/LinearProgressbarBuffer.js +2 -2
- package/dist/components/linearprogressbarbuffer/LinearProgressbarBuffer.js.map +1 -1
- package/dist/components/linearprogressbarbuffer/LinearProgressbarBuffer.svelte +1 -0
- package/dist/components/linearprogressbarbuffer/LinearProgressbarBuffer.svelte.d.ts +1 -0
- 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 +1 -0
- package/dist/components/linearprogressbarpercentage/LinearProgressbarPercentage.svelte.d.ts +1 -0
- package/dist/components/linearprogressbarpercentage/LinearProgressbarPercentage.svelte.d.ts.map +1 -1
- package/dist/components/link/Link.js +2 -2
- package/dist/components/link/Link.js.map +1 -1
- package/dist/components/link/Link.stories.d.ts +2 -2
- package/dist/components/link/Link.stories.d.ts.map +1 -1
- package/dist/components/link/Link.stories.js +3 -3
- package/dist/components/link/Link.svelte +9 -1
- package/dist/components/link/Link.svelte.d.ts +1 -0
- package/dist/components/link/Link.svelte.d.ts.map +1 -1
- package/dist/components/loader/Loader.js +2 -2
- package/dist/components/loader/Loader.js.map +1 -1
- package/dist/components/loader/Loader.svelte +1 -0
- package/dist/components/loader/Loader.svelte.d.ts +1 -0
- package/dist/components/loader/Loader.svelte.d.ts.map +1 -1
- package/dist/components/loadingoverlay/LoadingOverlay.js +2 -2
- package/dist/components/loadingoverlay/LoadingOverlay.js.map +1 -1
- package/dist/components/loadingoverlay/LoadingOverlay.stories.js +1 -1
- package/dist/components/loadingoverlay/LoadingOverlay.svelte +9 -1
- package/dist/components/loadingoverlay/LoadingOverlay.svelte.d.ts +1 -0
- package/dist/components/loadingoverlay/LoadingOverlay.svelte.d.ts.map +1 -1
- package/dist/components/modal/Modal.js +2 -2
- package/dist/components/modal/Modal.js.map +1 -1
- package/dist/components/modal/Modal.stories.d.ts +2 -2
- package/dist/components/modal/Modal.stories.d.ts.map +1 -1
- package/dist/components/modal/Modal.stories.js +4 -4
- package/dist/components/modal/Modal.svelte +15 -3
- package/dist/components/modal/Modal.svelte.d.ts +1 -0
- package/dist/components/modal/Modal.svelte.d.ts.map +1 -1
- package/dist/components/numberbadge/NumberBadge.js +2 -2
- package/dist/components/numberbadge/NumberBadge.js.map +1 -1
- package/dist/components/numberbadge/NumberBadge.svelte +1 -0
- package/dist/components/numberbadge/NumberBadge.svelte.d.ts +1 -0
- package/dist/components/numberbadge/NumberBadge.svelte.d.ts.map +1 -1
- package/dist/components/overlay/Overlay.js +2 -2
- package/dist/components/overlay/Overlay.js.map +1 -1
- package/dist/components/overlay/Overlay.stories.js +1 -1
- package/dist/components/overlay/Overlay.svelte +8 -1
- package/dist/components/overlay/Overlay.svelte.d.ts.map +1 -1
- package/dist/components/pagination/Pagination.js +8 -8
- package/dist/components/pagination/Pagination.js.map +1 -1
- package/dist/components/pagination/Pagination.stories.js +1 -1
- package/dist/components/pagination/Pagination.svelte +4 -2
- package/dist/components/pagination/Pagination.svelte.d.ts.map +1 -1
- package/dist/components/passwordinput/PasswordInput.js +2 -2
- package/dist/components/passwordinput/PasswordInput.js.map +1 -1
- package/dist/components/passwordinput/PasswordInput.stories.d.ts.map +1 -1
- package/dist/components/passwordinput/PasswordInput.stories.js +5 -4
- package/dist/components/passwordinput/PasswordInput.svelte +10 -0
- package/dist/components/passwordinput/PasswordInput.svelte.d.ts +1 -0
- package/dist/components/passwordinput/PasswordInput.svelte.d.ts.map +1 -1
- package/dist/components/phonenumber/PhoneNumber.js +7 -7
- package/dist/components/phonenumber/PhoneNumber.js.map +1 -1
- package/dist/components/phonenumber/PhoneNumber.stories.d.ts.map +1 -1
- package/dist/components/phonenumber/PhoneNumber.stories.js +11 -4
- package/dist/components/phonenumber/PhoneNumber.svelte +16 -4
- package/dist/components/phonenumber/PhoneNumber.svelte.d.ts +1 -0
- package/dist/components/phonenumber/PhoneNumber.svelte.d.ts.map +1 -1
- package/dist/components/pincode/Pincode.js +2 -2
- package/dist/components/pincode/Pincode.js.map +1 -1
- package/dist/components/pincode/Pincode.stories.d.ts.map +1 -1
- package/dist/components/pincode/Pincode.stories.js +4 -3
- package/dist/components/pincode/Pincode.svelte +12 -2
- package/dist/components/pincode/Pincode.svelte.d.ts.map +1 -1
- package/dist/components/quantityselector/QuantitySelector.js +2 -2
- package/dist/components/quantityselector/QuantitySelector.js.map +1 -1
- package/dist/components/quantityselector/QuantitySelector.stories.d.ts.map +1 -1
- package/dist/components/quantityselector/QuantitySelector.stories.js +4 -3
- package/dist/components/quantityselector/QuantitySelector.svelte +7 -2
- package/dist/components/quantityselector/QuantitySelector.svelte.d.ts +1 -0
- 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.stories.js +3 -3
- package/dist/components/radio/Radio.svelte +3 -0
- package/dist/components/radio/Radio.svelte.d.ts +1 -0
- package/dist/components/radio/Radio.svelte.d.ts.map +1 -1
- package/dist/components/radiogroup/RadioGroup.js +2 -2
- package/dist/components/radiogroup/RadioGroup.js.map +1 -1
- package/dist/components/radiogroup/RadioGroup.stories.js +2 -2
- package/dist/components/radiogroup/RadioGroup.svelte +2 -0
- package/dist/components/radiogroup/RadioGroup.svelte.d.ts.map +1 -1
- package/dist/components/segmentedcontrol/SegmentedControl.js +2 -2
- package/dist/components/segmentedcontrol/SegmentedControl.js.map +1 -1
- package/dist/components/segmentedcontrol/SegmentedControl.stories.d.ts.map +1 -1
- package/dist/components/segmentedcontrol/SegmentedControl.stories.js +2 -1
- package/dist/components/segmentedcontrol/SegmentedControl.svelte +9 -1
- package/dist/components/segmentedcontrol/SegmentedControl.svelte.d.ts.map +1 -1
- package/dist/components/select/Select.js +2 -2
- package/dist/components/select/Select.js.map +1 -1
- package/dist/components/select/Select.stories.d.ts.map +1 -1
- package/dist/components/select/Select.stories.js +4 -3
- package/dist/components/select/Select.svelte +4 -0
- package/dist/components/select/Select.svelte.d.ts +1 -0
- package/dist/components/select/Select.svelte.d.ts.map +1 -1
- package/dist/components/starrating/StarRating.js +2 -2
- package/dist/components/starrating/StarRating.js.map +1 -1
- package/dist/components/starrating/StarRating.stories.d.ts +1 -0
- package/dist/components/starrating/StarRating.stories.d.ts.map +1 -1
- package/dist/components/starrating/StarRating.stories.js +3 -2
- package/dist/components/starrating/StarRating.svelte +6 -3
- package/dist/components/starrating/StarRating.svelte.d.ts +1 -0
- package/dist/components/starrating/StarRating.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 +1 -0
- package/dist/components/statusbadge/StatusBadge.svelte.d.ts +1 -0
- package/dist/components/statusbadge/StatusBadge.svelte.d.ts.map +1 -1
- package/dist/components/statusdot/StatusDot.js +2 -2
- package/dist/components/statusdot/StatusDot.js.map +1 -1
- package/dist/components/statusdot/StatusDot.svelte +1 -0
- package/dist/components/statusdot/StatusDot.svelte.d.ts +1 -0
- package/dist/components/statusdot/StatusDot.svelte.d.ts.map +1 -1
- package/dist/components/statusmessage/StatusMessage.js +2 -2
- package/dist/components/statusmessage/StatusMessage.js.map +1 -1
- package/dist/components/statusmessage/StatusMessage.svelte +10 -7
- package/dist/components/statusmessage/StatusMessage.svelte.d.ts +1 -0
- package/dist/components/statusmessage/StatusMessage.svelte.d.ts.map +1 -1
- package/dist/components/statusnotification/StatusNotification.js +2 -2
- package/dist/components/statusnotification/StatusNotification.js.map +1 -1
- package/dist/components/statusnotification/StatusNotification.stories.d.ts +1 -1
- package/dist/components/statusnotification/StatusNotification.stories.d.ts.map +1 -1
- package/dist/components/statusnotification/StatusNotification.stories.js +2 -2
- package/dist/components/statusnotification/StatusNotification.svelte +26 -13
- package/dist/components/statusnotification/StatusNotification.svelte.d.ts +1 -0
- package/dist/components/statusnotification/StatusNotification.svelte.d.ts.map +1 -1
- package/dist/components/stepperbottombar/README.md +24 -0
- package/dist/components/stepperbottombar/StepperBottomBar.js +12 -0
- package/dist/components/stepperbottombar/StepperBottomBar.js.map +1 -0
- package/dist/components/stepperbottombar/StepperBottomBar.spec.js +106 -0
- package/dist/components/stepperbottombar/StepperBottomBar.stories.d.ts +9 -0
- package/dist/components/stepperbottombar/StepperBottomBar.stories.d.ts.map +1 -0
- package/dist/components/stepperbottombar/StepperBottomBar.stories.js +74 -0
- package/dist/components/stepperbottombar/StepperBottomBar.svelte +535 -0
- package/dist/components/stepperbottombar/StepperBottomBar.svelte.d.ts +41 -0
- package/dist/components/stepperbottombar/StepperBottomBar.svelte.d.ts.map +1 -0
- package/dist/components/steppercompact/StepperCompact.js +2 -2
- package/dist/components/steppercompact/StepperCompact.js.map +1 -1
- package/dist/components/stepperinline/README.md +11 -0
- package/dist/components/stepperinline/StepperInline.js +16 -0
- package/dist/components/stepperinline/StepperInline.js.map +1 -0
- package/dist/components/stepperinline/StepperInline.spec.js +83 -0
- package/dist/components/stepperinline/StepperInline.stories.d.ts +7 -0
- package/dist/components/stepperinline/StepperInline.stories.d.ts.map +1 -0
- package/dist/components/stepperinline/StepperInline.stories.js +23 -0
- package/dist/components/stepperinline/StepperInline.svelte +176 -0
- package/dist/components/stepperinline/StepperInline.svelte.d.ts +27 -0
- package/dist/components/stepperinline/StepperInline.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 +11 -2
- package/dist/components/tab/Tab.svelte.d.ts +1 -0
- package/dist/components/tab/Tab.svelte.d.ts.map +1 -1
- package/dist/components/tabs/Tabs.js +2 -2
- package/dist/components/tabs/Tabs.js.map +1 -1
- package/dist/components/tabs/Tabs.stories.d.ts +1 -1
- package/dist/components/tabs/Tabs.stories.d.ts.map +1 -1
- package/dist/components/tabs/Tabs.stories.js +4 -4
- package/dist/components/tabs/Tabs.svelte +10 -2
- package/dist/components/tabs/Tabs.svelte.d.ts.map +1 -1
- package/dist/components/tag/Tag.js +2 -2
- package/dist/components/tag/Tag.js.map +1 -1
- package/dist/components/tag/Tag.stories.js +2 -2
- package/dist/components/tag/Tag.svelte +15 -7
- package/dist/components/tag/Tag.svelte.d.ts +1 -0
- package/dist/components/tag/Tag.svelte.d.ts.map +1 -1
- package/dist/components/textarea/Textarea.js +2 -2
- package/dist/components/textarea/Textarea.js.map +1 -1
- package/dist/components/textarea/Textarea.stories.d.ts.map +1 -1
- package/dist/components/textarea/Textarea.stories.js +4 -3
- package/dist/components/textarea/Textarea.svelte +12 -1
- package/dist/components/textarea/Textarea.svelte.d.ts +1 -0
- package/dist/components/textarea/Textarea.svelte.d.ts.map +1 -1
- package/dist/components/textinput/Textinput.js +2 -2
- package/dist/components/textinput/Textinput.js.map +1 -1
- package/dist/components/textinput/Textinput.stories.d.ts +4 -0
- package/dist/components/textinput/Textinput.stories.d.ts.map +1 -1
- package/dist/components/textinput/Textinput.stories.js +157 -28
- package/dist/components/textinput/Textinput.svelte +13 -1
- package/dist/components/textinput/Textinput.svelte.d.ts +1 -0
- package/dist/components/textinput/Textinput.svelte.d.ts.map +1 -1
- package/dist/components/toaster/Toaster.js +3 -3
- package/dist/components/toaster/Toaster.js.map +1 -1
- package/dist/components/toaster/Toaster.stories.js +1 -1
- package/dist/components/toaster/Toaster.svelte +24 -9
- package/dist/components/toaster/Toaster.svelte.d.ts +1 -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.stories.js +2 -2
- package/dist/components/toggle/Toggle.svelte +2 -0
- package/dist/components/toggle/Toggle.svelte.d.ts +1 -0
- 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.stories.js +1 -1
- package/dist/components/togglegroup/ToggleGroup.svelte +1 -0
- package/dist/components/togglegroup/ToggleGroup.svelte.d.ts.map +1 -1
- package/dist/components/tooltip/Tooltip.js +2 -2
- package/dist/components/tooltip/Tooltip.js.map +1 -1
- package/dist/components/tooltip/Tooltip.stories.js +1 -1
- package/dist/components/tooltip/Tooltip.svelte +9 -1
- package/dist/components/tooltip/Tooltip.svelte.d.ts +1 -0
- package/dist/components/tooltip/Tooltip.svelte.d.ts.map +1 -1
- package/dist/custom-element.js +3 -3
- package/dist/custom-element.js.map +1 -1
- package/dist/documentation/{WebComponents/usingPresets.mdx → BrandPresets.mdx} +2 -24
- package/dist/documentation/Changelog.mdx +19 -0
- package/dist/documentation/Color.mdx +224 -0
- package/dist/documentation/Contributing.mdx +11 -5
- package/dist/documentation/GettingStarted.mdx +76 -0
- package/dist/documentation/Icon.stories.d.ts +10 -0
- package/dist/documentation/Icon.stories.d.ts.map +1 -0
- package/dist/documentation/Icon.stories.js +138 -0
- package/dist/documentation/Migration.mdx +5 -5
- package/dist/documentation/Welcome.mdx +50 -0
- 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/index-client.js +2 -0
- package/dist/index-client.js.map +1 -0
- package/dist/input.js +1 -1
- package/dist/input.js.map +1 -1
- package/dist/main.d.ts +8 -1
- package/dist/main.d.ts.map +1 -1
- package/dist/main.js +8 -1
- package/dist/slot.js +1 -1
- package/dist/slot.js.map +1 -1
- package/dist/svelte-component.js +1 -1
- package/dist/svelte-component.js.map +1 -1
- package/dist/svelte-element.js +2 -0
- package/dist/svelte-element.js.map +1 -0
- package/dist/this.js +1 -1
- package/dist/this.js.map +1 -1
- package/package.json +22 -23
- package/dist/Cross20.js +0 -2
- package/dist/Cross20.js.map +0 -1
- package/dist/Cross24.js +0 -2
- package/dist/Cross24.js.map +0 -1
- package/dist/CrossCircleFilled24.js +0 -2
- package/dist/CrossCircleFilled24.js.map +0 -1
- package/dist/Less24.js +0 -2
- package/dist/Less24.js.map +0 -1
- package/dist/documentation/Introduction.mdx +0 -109
- package/dist/documentation/SupportAndOnboarding.mdx +0 -70
- package/dist/documentation/Svelte/Introduction.mdx +0 -76
- package/dist/documentation/Svelte/usingIcons.mdx +0 -98
- package/dist/documentation/Svelte/usingPresets.mdx +0 -134
- package/dist/documentation/WebComponents/Introduction.mdx +0 -52
- package/dist/documentation/WebComponents/usingIcons.mdx +0 -81
- package/dist/legacy.js +0 -2
- package/dist/legacy.js.map +0 -1
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
# `m-stepper-inline`
|
|
2
|
+
|
|
3
|
+
An inline stepper is a horizontal navigation component that displays a sequence of steps in a linear fashion. It helps users understand their progress through a multi-step process by visually indicating the current step, completed steps, and upcoming steps. Inline steppers are typically used in forms, onboarding flows, and checkout processes to enhance user experience and provide clarity on the workflow.
|
|
4
|
+
|
|
5
|
+
## Props
|
|
6
|
+
|
|
7
|
+
| Name | Description | Type | Default |
|
|
8
|
+
|------|-------------|------|---------|
|
|
9
|
+
| `step` | Current step of the stepper compact. | `number` | `$bindable(1)` |
|
|
10
|
+
| `steps` | Steps of the stepper inline. | `Array<{ label: string; additionalinfo?: string; }>` | `$bindable([])` |
|
|
11
|
+
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import{c as H,p as J,a as K,b as $,k as L,f as a,g as N,h as l,i as O,d as i,j as C,r as s,n as t,s as j,t as M,l as g,m as x,e as P,v as y}from"../../custom-element.js";import{i as D}from"../../if.js";import{e as Q,i as T}from"../../each.js";import{a as U}from"../../attributes.js";import{e as V,f as W}from"../../Condition20.js";import"../../branches.js";var X=l('<span class="mc-stepper-inline__icon mc-stepper-inline__icon--check svelte-s80odb" aria-hidden="true"><!></span>'),Y=l("<span></span>"),Z=l('<span class="mc-stepper-inline__icon mc-stepper-inline__icon--chevron svelte-s80odb" aria-hidden="true"><!></span>'),ee=l('<li><!> <div class="mc-stepper-inline__content svelte-s80odb"><span> </span></div> <!></li>'),re=l('<nav><ol class="mc-stepper-inline__container svelte-s80odb"></ol></nav>');const te={hash:"svelte-s80odb",code:`/**
|
|
2
|
+
* Do not edit directly, this file was auto-generated.
|
|
3
|
+
*/.mc-stepper-inline__container.svelte-s80odb {display:flex;align-items:center;gap:1rem;list-style:none;padding:0;margin:0;}.mc-stepper-inline__label.svelte-s80odb {font-size:var(--font-size-100, 0.875rem);transition:color 200ms ease;}.mc-stepper-inline__label.is-current.svelte-s80odb {font-weight:var(--font-weight-medium, 600);color:var(--stepper-color-step-label-active, #000000);}.mc-stepper-inline__item.svelte-s80odb {display:inline-flex;align-items:center;gap:0.5rem;color:var(--stepper-color-step-label-default, #666666);}.mc-stepper-inline__item.is-completed.svelte-s80odb: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;border-radius:var(--border-radius-s, 0.25rem);}.mc-stepper-inline__item.is-completed.svelte-s80odb:hover {cursor:pointer;}.mc-stepper-inline__item.is-completed.svelte-s80odb:hover .mc-stepper-inline__label:where(.svelte-s80odb) {text-decoration:underline;}.mc-stepper-inline__icon.svelte-s80odb {fill:var(--stepper-color-information, #666666);display:flex;flex-shrink:0;}.mc-stepper-inline__icon--check.svelte-s80odb {box-sizing:border-box;width:1.5rem;height:1.5rem;background-color:transparent;border:0.125rem solid var(--stepper-color-information, #666666);border-radius:1rem;}.mc-stepper-inline__icon--chevron.svelte-s80odb {width:1.25rem;height:1.25rem;}.mc-stepper-inline__circle.svelte-s80odb {box-sizing:border-box;width:1.5rem;height:1.5rem;border-radius:50%;border:0.125rem solid var(--stepper-color-information, #666666);display:flex;align-items:center;justify-content:center;font-size:var(--font-size-100, 0.875rem);font-weight:var(--font-weight-medium, 600);color:var(--stepper-color-information, #666666);background-color:var(--stepper-color-step-item-default-background, #ffffff);flex-shrink:0;transition:background-color 200ms ease, color 200ms ease, border-color 200ms ease;}.mc-stepper-inline__circle.is-current.svelte-s80odb {background-color:var(--stepper-color-step-item-active-background, #117f03);color:var(--stepper-color-step-item-active-text, #ffffff);border-color:transparent;
|
|
4
|
+
animation: svelte-s80odb-pop-in 300ms cubic-bezier(0.175, 0.885, 0.32, 1.275) forwards;}.mc-stepper-inline__content.svelte-s80odb {display:flex;flex-direction:column;margin-right:0.5rem;}.mc-stepper-inline__additional.svelte-s80odb {font-size:var(--font-size-50, 0.75rem);color:var(--stepper-color-information, #666666);}.mc-stepper-inline__separator.svelte-s80odb {color:var(--stepper-color-information, #666666);margin-left:1rem;}
|
|
5
|
+
|
|
6
|
+
@keyframes svelte-s80odb-pop-in {
|
|
7
|
+
0% {
|
|
8
|
+
transform: scale(0.5);
|
|
9
|
+
opacity: 0;
|
|
10
|
+
}
|
|
11
|
+
100% {
|
|
12
|
+
transform: scale(1);
|
|
13
|
+
opacity: 1;
|
|
14
|
+
}
|
|
15
|
+
}.mc-stepper-inline__icon {align-items:center;}`};function se(k,p){J(p,!0),K(k,te);let f=$(p,"step",15,1),o=$(p,"steps",31,()=>L([])),E=O(p,["$$slots","$$events","$$legacy","$$host","step","steps"]);const w=y(()=>()=>Math.min(Math.max(f()??1,1),o().length??1)),I=y(()=>()=>o().map((n,m)=>({completed:m+1<t(w)(),current:m+1===t(w)()})));var R={get step(){return f()},set step(n=1){f(n),C()},get steps(){return o()},set steps(n=[]){o(n),C()}},c=re();U(c,()=>({class:"mc-stepper-inline","aria-label":"Stepper",...E}),void 0,void 0,void 0,"svelte-s80odb");var z=i(c);return Q(z,21,o,T,(n,m,_,oe)=>{const d=y(()=>t(I)()[_]);var v=ee(),S=i(v);{var q=r=>{var e=X(),h=i(e);V(h,{}),s(e),a(r,e)},A=r=>{var e=Y();e.textContent=_+1,M(()=>g(e,1,x(["mc-stepper-inline__circle",t(d).current?"is-current":""]),"svelte-s80odb")),a(r,e)};D(S,r=>{t(d).completed?r(q):r(A,!1)})}var b=j(S,2),u=i(b),B=i(u,!0);s(u),s(b);var F=j(b,2);{var G=r=>{var e=Z(),h=i(e);W(h,{}),s(e),a(r,e)};D(F,r=>{_<o().length-1&&r(G)})}s(v),M(()=>{g(v,1,x(["mc-stepper-inline__item",t(d).completed?"is-completed":""]),"svelte-s80odb"),g(u,1,x(["mc-stepper-inline__label",t(d).current?"is-current":""]),"svelte-s80odb"),P(B,t(m).label)}),a(n,v)}),s(z),s(c),a(k,c),N(R)}customElements.define("m-stepper-inline",H(se,{step:{},steps:{}},[],[],!0));
|
|
16
|
+
//# sourceMappingURL=StepperInline.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"StepperInline.js","sources":["../../../src/components/stepperinline/StepperInline.svelte"],"sourcesContent":["<svelte:options customElement={{ tag: 'm-stepper-inline' }} />\n\n<script lang=\"ts\">\n import { Check24 } from '@mozaic-ds/icons-svelte';\n import { ChevronRight24 } from '@mozaic-ds/icons-svelte';\n /**\n * An inline stepper is a horizontal navigation component that displays a sequence of steps in a linear fashion. It helps users understand their progress through a multi-step process by visually indicating the current step, completed steps, and upcoming steps. Inline steppers are typically used in forms, onboarding flows, and checkout processes to enhance user experience and provide clarity on the workflow.\n */\n\n interface Props {\n [key: string]: any;\n /**\n * Current step of the stepper compact.\n */\n step?: number;\n\n /**\n * Steps of the stepper inline.\n */\n steps?: Array<{\n /**\n * Label of the step.\n */\n label: string;\n\n /**\n * Optional additional information under the label.\n */\n additionalinfo?: string;\n }>;\n }\n\n let { step = $bindable(1), steps = $bindable([]), ...attrs }: Props = $props();\n\n const safeStep = $derived(() => Math.min(Math.max(step ?? 1, 1), steps.length ?? 1));\n\n const stepStates = $derived(() =>\n steps.map((_, i) => ({\n completed: i + 1 < safeStep(),\n current: i + 1 === safeStep(),\n })),\n );\n</script>\n\n<nav class=\"mc-stepper-inline\" aria-label=\"Stepper\" {...attrs}>\n <ol class=\"mc-stepper-inline__container\">\n {#each steps as step, i (i)}\n {@const state = stepStates()[i]}\n <li class={['mc-stepper-inline__item', state.completed ? 'is-completed' : '']}>\n {#if state.completed}\n <span class=\"mc-stepper-inline__icon mc-stepper-inline__icon--check\" aria-hidden=\"true\">\n <Check24 />\n </span>\n {:else}\n <span class={['mc-stepper-inline__circle', state.current ? 'is-current' : '']}>\n {i + 1}\n </span>\n {/if}\n <div class=\"mc-stepper-inline__content\">\n <span class={['mc-stepper-inline__label', state.current ? 'is-current' : '']}>\n {step.label}\n </span>\n </div>\n {#if i < steps.length - 1}\n <span class=\"mc-stepper-inline__icon mc-stepper-inline__icon--chevron\" aria-hidden=\"true\">\n <ChevronRight24 />\n </span>\n {/if}\n </li>\n {/each}\n </ol>\n</nav>\n\n<style lang=\"scss\">\n @use '@mozaic-ds/styles/components/stepper-inline';\n\n :global(.mc-stepper-inline__icon) {\n align-items: center;\n }\n</style>\n"],"names":["step","steps","$.prop","$$props","$.proxy","attrs","$.rest_props","safeStep","stepStates","_","i","nav","root","ol","$.index","$$anchor","$$array","state","$.derived","$.get","li","root_1","span","root_2","Check24","node_1","span_1","root_3","$$render","consequent","alternate","div","$.sibling","node","span_2","span_3","root_4","ChevronRight24","node_3","consequent_1","$.set_text","text"],"mappings":";;;;;;;;;;;;;;kEAEA,iBA8BQ,IAAAA,gBAAiB,CAAC,EAAGC,EAAKC,EAAAC,EAAA,QAAA,GAAA,IAAAC,EAAA,CAAA,CAAA,CAAA,EAAqBC,EAAKC,EAAAH,EAAA,CAAA,UAAA,WAAA,WAAA,SAAA,OAAA,OAAA,CAAA,EAEpD,MAAAI,YAA0B,KAAK,IAAI,KAAK,IAAIP,EAAI,GAAI,EAAG,CAAC,EAAGC,EAAK,EAAC,QAAU,CAAC,CAAA,EAE5EO,YACJP,EAAK,EAAC,IAAG,CAAEQ,EAAGC,KAAC,CACb,UAAWA,EAAI,IAAIH,CAAQ,EAAA,EAC3B,QAASG,EAAI,MAAMH,CAAQ,EAAA,+CAPR,EAAC,8DAYzBI,EAAGC,GAAA,IAAHD,4DAAuDN,0CACrD,IAAAQ,IADFF,CAAG,WACDE,EAAE,GACMZ,EAAKa,EAAA,CAAAC,EAAIf,EAAIU,EAAAM,KAAA,OACVC,EAAKC,EAAA,IAAAC,EAAGX,CAAU,EAAA,EAAGE,CAAC,CAAA,MAC7BU,EAAEC,GAAA,MAAFD,CAAE,iBAEEE,EAAIC,EAAA,MAAJD,CAAI,EACFE,EAAOC,EAAA,EAAA,IADTH,CAAI,MAAJA,CAAI,aAIJI,EAAIC,EAAA,EAAJD,EAAI,YACFhB,EAAI,UADNgB,OAAa,4BAA6BP,EAAAF,CAAK,EAAC,QAAU,aAAe,2BAAzES,CAAI,WALFP,EAAAF,CAAK,EAAC,UAASW,EAAAC,CAAA,EAAAD,EAAAE,EAAA,EAAA,QASnBC,EAAGC,EAAAC,EAAA,CAAA,EACDC,IADFH,CAAG,MACDG,EAAI,EAAA,IAAJA,CAAI,IADNH,CAAG,UAAHA,EAAG,CAAA,iBAMDI,EAAIC,EAAA,MAAJD,CAAI,EACFE,EAAcC,EAAA,EAAA,IADhBH,CAAI,MAAJA,CAAI,WADFzB,EAAIT,EAAK,EAAC,OAAS,GAAC2B,EAAAW,CAAA,MAf1BnB,CAAE,WAAFA,OAAW,0BAA2BD,EAAAF,CAAK,EAAC,UAAY,eAAiB,wBAWrEiB,OAAa,2BAA4Bf,EAAAF,CAAK,EAAC,QAAU,aAAe,sBACtEuB,EAAAC,EAAAtB,EAAAnB,CAAI,EAAC,KAAK,QAZhBoB,CAAE,MAHNP,CAAE,IADJF,CAAG,MAAHA,CAAG,MAFI"}
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
import { render } from '@testing-library/svelte';
|
|
2
|
+
import StepperInline from './StepperInline.svelte';
|
|
3
|
+
import { describe, it, expect } from 'vitest';
|
|
4
|
+
describe('StepperInline', () => {
|
|
5
|
+
const defaultSteps = [{ label: 'Step 1' }, { label: 'Step 2' }, { label: 'Step 3' }];
|
|
6
|
+
it('renders correctly with default props', () => {
|
|
7
|
+
const { getAllByRole, getByText } = render(StepperInline, {
|
|
8
|
+
props: {
|
|
9
|
+
step: 1,
|
|
10
|
+
steps: defaultSteps,
|
|
11
|
+
},
|
|
12
|
+
});
|
|
13
|
+
expect(getAllByRole('listitem').length).toBe(defaultSteps.length);
|
|
14
|
+
expect(getByText('Step 1')).toBeTruthy();
|
|
15
|
+
});
|
|
16
|
+
it('marks the correct step as active', async () => {
|
|
17
|
+
const { container, rerender } = render(StepperInline, {
|
|
18
|
+
props: {
|
|
19
|
+
step: 2,
|
|
20
|
+
steps: defaultSteps,
|
|
21
|
+
},
|
|
22
|
+
});
|
|
23
|
+
let labels = container.querySelectorAll('.mc-stepper-inline__label');
|
|
24
|
+
expect(labels[1].classList.contains('is-current')).toBe(true);
|
|
25
|
+
expect(labels[0].classList.contains('is-current')).toBe(false);
|
|
26
|
+
await rerender({ step: 3, steps: defaultSteps });
|
|
27
|
+
labels = container.querySelectorAll('.mc-stepper-inline__label');
|
|
28
|
+
expect(labels[2].classList.contains('is-current')).toBe(true);
|
|
29
|
+
});
|
|
30
|
+
it('marks completed steps', () => {
|
|
31
|
+
const { container } = render(StepperInline, {
|
|
32
|
+
props: {
|
|
33
|
+
step: 3,
|
|
34
|
+
steps: defaultSteps,
|
|
35
|
+
},
|
|
36
|
+
});
|
|
37
|
+
const items = container.querySelectorAll('.mc-stepper-inline__item');
|
|
38
|
+
expect(items[0].classList.contains('is-completed')).toBe(true);
|
|
39
|
+
expect(items[1].classList.contains('is-completed')).toBe(true);
|
|
40
|
+
expect(items[2].classList.contains('is-completed')).toBe(false);
|
|
41
|
+
});
|
|
42
|
+
it('renders no steps when steps prop is empty', () => {
|
|
43
|
+
const { queryAllByRole } = render(StepperInline, {
|
|
44
|
+
props: {
|
|
45
|
+
step: 1,
|
|
46
|
+
steps: [],
|
|
47
|
+
},
|
|
48
|
+
});
|
|
49
|
+
expect(queryAllByRole('listitem').length).toBe(0);
|
|
50
|
+
});
|
|
51
|
+
it('renders correct step numbers', () => {
|
|
52
|
+
const { container } = render(StepperInline, {
|
|
53
|
+
props: {
|
|
54
|
+
step: 1,
|
|
55
|
+
steps: defaultSteps,
|
|
56
|
+
},
|
|
57
|
+
});
|
|
58
|
+
const circles = container.querySelectorAll('.mc-stepper-inline__circle');
|
|
59
|
+
circles.forEach((circle, i) => {
|
|
60
|
+
expect(circle.textContent).toBe(String(i + 1));
|
|
61
|
+
});
|
|
62
|
+
});
|
|
63
|
+
it('renders chevron icon between steps except last', () => {
|
|
64
|
+
const { container } = render(StepperInline, {
|
|
65
|
+
props: {
|
|
66
|
+
step: 1,
|
|
67
|
+
steps: defaultSteps,
|
|
68
|
+
},
|
|
69
|
+
});
|
|
70
|
+
const chevrons = container.querySelectorAll('.mc-stepper-inline__icon--chevron');
|
|
71
|
+
expect(chevrons.length).toBe(defaultSteps.length - 1);
|
|
72
|
+
});
|
|
73
|
+
it('renders check icon for completed steps', () => {
|
|
74
|
+
const { container } = render(StepperInline, {
|
|
75
|
+
props: {
|
|
76
|
+
step: 3,
|
|
77
|
+
steps: defaultSteps,
|
|
78
|
+
},
|
|
79
|
+
});
|
|
80
|
+
const checkIcons = container.querySelectorAll('.mc-stepper-inline__icon--check');
|
|
81
|
+
expect(checkIcons.length).toBe(2);
|
|
82
|
+
});
|
|
83
|
+
});
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { Meta, StoryObj } from '@storybook/web-components-vite';
|
|
2
|
+
import './StepperInline.svelte';
|
|
3
|
+
declare const meta: Meta;
|
|
4
|
+
export default meta;
|
|
5
|
+
type Story = StoryObj;
|
|
6
|
+
export declare const Default: Story;
|
|
7
|
+
//# sourceMappingURL=StepperInline.stories.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"StepperInline.stories.d.ts","sourceRoot":"","sources":["../../../src/components/stepperinline/StepperInline.stories.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,gCAAgC,CAAC;AAErE,OAAO,wBAAwB,CAAC;AAEhC,QAAA,MAAM,IAAI,EAAE,IAmBX,CAAC;AAEF,eAAe,IAAI,CAAC;AACpB,KAAK,KAAK,GAAG,QAAQ,CAAC;AAEtB,eAAO,MAAM,OAAO,EAAE,KAAU,CAAC"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { html } from 'lit';
|
|
2
|
+
import './StepperInline.svelte';
|
|
3
|
+
const meta = {
|
|
4
|
+
title: 'Indicators/Stepper Inline',
|
|
5
|
+
component: 'm-stepper-inline',
|
|
6
|
+
argTypes: {
|
|
7
|
+
step: {
|
|
8
|
+
control: { type: 'number', min: 1, max: 10 },
|
|
9
|
+
},
|
|
10
|
+
},
|
|
11
|
+
args: {
|
|
12
|
+
currentStep: 2,
|
|
13
|
+
steps: [
|
|
14
|
+
{ label: 'Cart' },
|
|
15
|
+
{ label: 'Delivery address' },
|
|
16
|
+
{ label: 'Payment' },
|
|
17
|
+
{ label: 'Order confirmation' },
|
|
18
|
+
],
|
|
19
|
+
},
|
|
20
|
+
render: (args) => html `<m-stepper-inline step="${args.currentStep}" .steps="${args.steps}"></m-stepper-inline>`,
|
|
21
|
+
};
|
|
22
|
+
export default meta;
|
|
23
|
+
export const Default = {};
|
|
@@ -0,0 +1,176 @@
|
|
|
1
|
+
<svelte:options customElement={{ tag: 'm-stepper-inline' }} />
|
|
2
|
+
|
|
3
|
+
<script lang="ts">
|
|
4
|
+
import { Check24 } from '@mozaic-ds/icons-svelte';
|
|
5
|
+
import { ChevronRight24 } from '@mozaic-ds/icons-svelte';
|
|
6
|
+
/**
|
|
7
|
+
* An inline stepper is a horizontal navigation component that displays a sequence of steps in a linear fashion. It helps users understand their progress through a multi-step process by visually indicating the current step, completed steps, and upcoming steps. Inline steppers are typically used in forms, onboarding flows, and checkout processes to enhance user experience and provide clarity on the workflow.
|
|
8
|
+
*/
|
|
9
|
+
|
|
10
|
+
interface Props {
|
|
11
|
+
[key: string]: any;
|
|
12
|
+
/**
|
|
13
|
+
* Current step of the stepper compact.
|
|
14
|
+
*/
|
|
15
|
+
step?: number;
|
|
16
|
+
|
|
17
|
+
/**
|
|
18
|
+
* Steps of the stepper inline.
|
|
19
|
+
*/
|
|
20
|
+
steps?: Array<{
|
|
21
|
+
/**
|
|
22
|
+
* Label of the step.
|
|
23
|
+
*/
|
|
24
|
+
label: string;
|
|
25
|
+
|
|
26
|
+
/**
|
|
27
|
+
* Optional additional information under the label.
|
|
28
|
+
*/
|
|
29
|
+
additionalinfo?: string;
|
|
30
|
+
}>;
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
let { step = $bindable(1), steps = $bindable([]), ...attrs }: Props = $props();
|
|
34
|
+
|
|
35
|
+
const safeStep = $derived(() => Math.min(Math.max(step ?? 1, 1), steps.length ?? 1));
|
|
36
|
+
|
|
37
|
+
const stepStates = $derived(() =>
|
|
38
|
+
steps.map((_, i) => ({
|
|
39
|
+
completed: i + 1 < safeStep(),
|
|
40
|
+
current: i + 1 === safeStep(),
|
|
41
|
+
})),
|
|
42
|
+
);
|
|
43
|
+
</script>
|
|
44
|
+
|
|
45
|
+
<nav class="mc-stepper-inline" aria-label="Stepper" {...attrs}>
|
|
46
|
+
<ol class="mc-stepper-inline__container">
|
|
47
|
+
{#each steps as step, i (i)}
|
|
48
|
+
{@const state = stepStates()[i]}
|
|
49
|
+
<li class={['mc-stepper-inline__item', state.completed ? 'is-completed' : '']}>
|
|
50
|
+
{#if state.completed}
|
|
51
|
+
<span class="mc-stepper-inline__icon mc-stepper-inline__icon--check" aria-hidden="true">
|
|
52
|
+
<Check24 />
|
|
53
|
+
</span>
|
|
54
|
+
{:else}
|
|
55
|
+
<span class={['mc-stepper-inline__circle', state.current ? 'is-current' : '']}>
|
|
56
|
+
{i + 1}
|
|
57
|
+
</span>
|
|
58
|
+
{/if}
|
|
59
|
+
<div class="mc-stepper-inline__content">
|
|
60
|
+
<span class={['mc-stepper-inline__label', state.current ? 'is-current' : '']}>
|
|
61
|
+
{step.label}
|
|
62
|
+
</span>
|
|
63
|
+
</div>
|
|
64
|
+
{#if i < steps.length - 1}
|
|
65
|
+
<span class="mc-stepper-inline__icon mc-stepper-inline__icon--chevron" aria-hidden="true">
|
|
66
|
+
<ChevronRight24 />
|
|
67
|
+
</span>
|
|
68
|
+
{/if}
|
|
69
|
+
</li>
|
|
70
|
+
{/each}
|
|
71
|
+
</ol>
|
|
72
|
+
</nav>
|
|
73
|
+
|
|
74
|
+
<style>/**
|
|
75
|
+
* Do not edit directly, this file was auto-generated.
|
|
76
|
+
*/
|
|
77
|
+
.mc-stepper-inline__container {
|
|
78
|
+
display: flex;
|
|
79
|
+
align-items: center;
|
|
80
|
+
gap: 1rem;
|
|
81
|
+
list-style: none;
|
|
82
|
+
padding: 0;
|
|
83
|
+
margin: 0;
|
|
84
|
+
}
|
|
85
|
+
.mc-stepper-inline__label {
|
|
86
|
+
font-size: var(--font-size-100, 0.875rem);
|
|
87
|
+
transition: color 200ms ease;
|
|
88
|
+
}
|
|
89
|
+
.mc-stepper-inline__label.is-current {
|
|
90
|
+
font-weight: var(--font-weight-medium, 600);
|
|
91
|
+
color: var(--stepper-color-step-label-active, #000000);
|
|
92
|
+
}
|
|
93
|
+
.mc-stepper-inline__item {
|
|
94
|
+
display: inline-flex;
|
|
95
|
+
align-items: center;
|
|
96
|
+
gap: 0.5rem;
|
|
97
|
+
color: var(--stepper-color-step-label-default, #666666);
|
|
98
|
+
}
|
|
99
|
+
.mc-stepper-inline__item.is-completed:focus-visible {
|
|
100
|
+
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));
|
|
101
|
+
outline: 0.125rem solid transparent;
|
|
102
|
+
outline-offset: 0.125rem;
|
|
103
|
+
border-radius: var(--border-radius-s, 0.25rem);
|
|
104
|
+
}
|
|
105
|
+
.mc-stepper-inline__item.is-completed:hover {
|
|
106
|
+
cursor: pointer;
|
|
107
|
+
}
|
|
108
|
+
.mc-stepper-inline__item.is-completed:hover .mc-stepper-inline__label {
|
|
109
|
+
text-decoration: underline;
|
|
110
|
+
}
|
|
111
|
+
.mc-stepper-inline__icon {
|
|
112
|
+
fill: var(--stepper-color-information, #666666);
|
|
113
|
+
display: flex;
|
|
114
|
+
flex-shrink: 0;
|
|
115
|
+
}
|
|
116
|
+
.mc-stepper-inline__icon--check {
|
|
117
|
+
box-sizing: border-box;
|
|
118
|
+
width: 1.5rem;
|
|
119
|
+
height: 1.5rem;
|
|
120
|
+
background-color: transparent;
|
|
121
|
+
border: 0.125rem solid var(--stepper-color-information, #666666);
|
|
122
|
+
border-radius: 1rem;
|
|
123
|
+
}
|
|
124
|
+
.mc-stepper-inline__icon--chevron {
|
|
125
|
+
width: 1.25rem;
|
|
126
|
+
height: 1.25rem;
|
|
127
|
+
}
|
|
128
|
+
.mc-stepper-inline__circle {
|
|
129
|
+
box-sizing: border-box;
|
|
130
|
+
width: 1.5rem;
|
|
131
|
+
height: 1.5rem;
|
|
132
|
+
border-radius: 50%;
|
|
133
|
+
border: 0.125rem solid var(--stepper-color-information, #666666);
|
|
134
|
+
display: flex;
|
|
135
|
+
align-items: center;
|
|
136
|
+
justify-content: center;
|
|
137
|
+
font-size: var(--font-size-100, 0.875rem);
|
|
138
|
+
font-weight: var(--font-weight-medium, 600);
|
|
139
|
+
color: var(--stepper-color-information, #666666);
|
|
140
|
+
background-color: var(--stepper-color-step-item-default-background, #ffffff);
|
|
141
|
+
flex-shrink: 0;
|
|
142
|
+
transition: background-color 200ms ease, color 200ms ease, border-color 200ms ease;
|
|
143
|
+
}
|
|
144
|
+
.mc-stepper-inline__circle.is-current {
|
|
145
|
+
background-color: var(--stepper-color-step-item-active-background, #117f03);
|
|
146
|
+
color: var(--stepper-color-step-item-active-text, #ffffff);
|
|
147
|
+
border-color: transparent;
|
|
148
|
+
animation: pop-in 300ms cubic-bezier(0.175, 0.885, 0.32, 1.275) forwards;
|
|
149
|
+
}
|
|
150
|
+
.mc-stepper-inline__content {
|
|
151
|
+
display: flex;
|
|
152
|
+
flex-direction: column;
|
|
153
|
+
margin-right: 0.5rem;
|
|
154
|
+
}
|
|
155
|
+
.mc-stepper-inline__additional {
|
|
156
|
+
font-size: var(--font-size-50, 0.75rem);
|
|
157
|
+
color: var(--stepper-color-information, #666666);
|
|
158
|
+
}
|
|
159
|
+
.mc-stepper-inline__separator {
|
|
160
|
+
color: var(--stepper-color-information, #666666);
|
|
161
|
+
margin-left: 1rem;
|
|
162
|
+
}
|
|
163
|
+
|
|
164
|
+
@keyframes pop-in {
|
|
165
|
+
0% {
|
|
166
|
+
transform: scale(0.5);
|
|
167
|
+
opacity: 0;
|
|
168
|
+
}
|
|
169
|
+
100% {
|
|
170
|
+
transform: scale(1);
|
|
171
|
+
opacity: 1;
|
|
172
|
+
}
|
|
173
|
+
}
|
|
174
|
+
:global(.mc-stepper-inline__icon) {
|
|
175
|
+
align-items: center;
|
|
176
|
+
}</style>
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* An inline stepper is a horizontal navigation component that displays a sequence of steps in a linear fashion. It helps users understand their progress through a multi-step process by visually indicating the current step, completed steps, and upcoming steps. Inline steppers are typically used in forms, onboarding flows, and checkout processes to enhance user experience and provide clarity on the workflow.
|
|
3
|
+
*/
|
|
4
|
+
interface Props {
|
|
5
|
+
[key: string]: any;
|
|
6
|
+
/**
|
|
7
|
+
* Current step of the stepper compact.
|
|
8
|
+
*/
|
|
9
|
+
step?: number;
|
|
10
|
+
/**
|
|
11
|
+
* Steps of the stepper inline.
|
|
12
|
+
*/
|
|
13
|
+
steps?: Array<{
|
|
14
|
+
/**
|
|
15
|
+
* Label of the step.
|
|
16
|
+
*/
|
|
17
|
+
label: string;
|
|
18
|
+
/**
|
|
19
|
+
* Optional additional information under the label.
|
|
20
|
+
*/
|
|
21
|
+
additionalinfo?: string;
|
|
22
|
+
}>;
|
|
23
|
+
}
|
|
24
|
+
declare const StepperInline: import("svelte").Component<Props, {}, "step" | "steps">;
|
|
25
|
+
type StepperInline = ReturnType<typeof StepperInline>;
|
|
26
|
+
export default StepperInline;
|
|
27
|
+
//# sourceMappingURL=StepperInline.svelte.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"StepperInline.svelte.d.ts","sourceRoot":"","sources":["../../../src/components/stepperinline/StepperInline.svelte.ts"],"names":[],"mappings":"AAME;;GAEG;AAEH,UAAU,KAAK;IACb,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;IACnB;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd;;OAEG;IACH,KAAK,CAAC,EAAE,KAAK,CAAC;QACZ;;WAEG;QACH,KAAK,EAAE,MAAM,CAAC;QAEd;;WAEG;QACH,cAAc,CAAC,EAAE,MAAM,CAAC;KACzB,CAAC,CAAC;CACJ;AAqDH,QAAA,MAAM,aAAa,yDAAwC,CAAC;AAC5D,KAAK,aAAa,GAAG,UAAU,CAAC,OAAO,aAAa,CAAC,CAAC;AACtD,eAAe,aAAa,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{c as
|
|
1
|
+
import{c as D,p as E,a as S,b as i,f as g,g as T,h,d as r,j as d,r as o,s as k,i as q}from"../../custom-element.js";import{i as A}from"../../if.js";import{s as b}from"../../slot.js";import{a as x}from"../../attributes.js";import"../../branches.js";var C=h('<button><span class="mc-tabs__icon svelte-g14hff"><!></span> <span class="mc-tabs__label svelte-g14hff"><!></span></button>'),F=h('<a><span class="mc-tabs__icon svelte-g14hff"><!></span> <span class="mc-tabs__label svelte-g14hff"><!></span></a>'),G=h('<li class="mc-tabs__item" role="presentation"><!></li>');const H={hash:"svelte-g14hff",code:`/**
|
|
2
2
|
* Do not edit directly, this file was auto-generated.
|
|
3
|
-
*/.mc-tabs.svelte-g14hff {background-color:var(--tabs-color-background-default, #ffffff);position:relative;width:100%;height:3.5rem;}.mc-tabs__list.svelte-g14hff {list-style-type:none;padding-inline-start:0;margin-block:0;display:flex;gap:0.5rem;padding:0.5rem 0.25rem;}.mc-tabs__tab.svelte-g14hff {font-size:var(--font-size-100, 0.875rem);font-weight:var(--font-weight-semi-bold, 600);align-items:center;background:none;border:none;border-radius:var(--border-radius-s, 0.25rem);color:var(--tabs-color-text-default, #404040);cursor:pointer;display:flex;gap:0.25rem;height:2.5rem;justify-content:center;outline:none;padding-left:0.75rem;padding-right:0.75rem;position:relative;text-decoration:none;}.mc-tabs__tab.svelte-g14hff:hover {background-color:var(--tabs-color-background-hover, rgba(0, 0, 0, 0.05));}.mc-tabs__tab.svelte-g14hff: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-tabs__tab--selected.svelte-g14hff {color:var(--tabs-color-text-selected, #006902);background-color:var(--tabs-color-background-selected, #ebf5de);}.mc-tabs__tab--selected.svelte-g14hff:hover {background-color:var(--tabs-color-background-selected-hover, #c5e39e);}.mc-tabs__tab--disabled.svelte-g14hff {color:var(--tabs-color-text-disabled, #b3b3b3);cursor:not-allowed;}.mc-tabs__tab--disabled.svelte-g14hff:hover {background:none;}.mc-tabs__label.svelte-g14hff {pointer-events:none;}.mc-tabs__icon.svelte-g14hff {fill:currentcolor;height:1.5rem;width:1.5rem;}.mc-tabs__icon.svelte-g14hff:empty {display:none;}`};function I(p,t){
|
|
3
|
+
*/.mc-tabs.svelte-g14hff {background-color:var(--tabs-color-background-default, #ffffff);position:relative;width:100%;height:3.5rem;}.mc-tabs__list.svelte-g14hff {list-style-type:none;padding-inline-start:0;margin-block:0;display:flex;gap:0.5rem;padding:var(--tabs-list-padding, 0.5rem 0.25rem);}.mc-tabs__tab.svelte-g14hff {font-size:var(--font-size-100, 0.875rem);font-weight:var(--font-weight-semi-bold, 600);align-items:center;background:none;border:none;border-radius:var(--border-radius-s, 0.25rem);color:var(--tabs-color-text-default, #404040);cursor:pointer;display:flex;gap:0.25rem;height:2.5rem;justify-content:center;outline:none;padding-left:0.75rem;padding-right:0.75rem;position:relative;text-decoration:none;}.mc-tabs__tab.svelte-g14hff:hover {background-color:var(--tabs-color-background-hover, rgba(0, 0, 0, 0.05));}.mc-tabs__tab.svelte-g14hff: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-tabs__tab--selected.svelte-g14hff {color:var(--tabs-color-text-selected, #006902);background-color:var(--tabs-color-background-selected, #ebf5de);}.mc-tabs__tab--selected.svelte-g14hff:hover {background-color:var(--tabs-color-background-selected-hover, #c5e39e);}.mc-tabs__tab--disabled.svelte-g14hff {color:var(--tabs-color-text-disabled, #b3b3b3);cursor:not-allowed;}.mc-tabs__tab--disabled.svelte-g14hff:hover {background:none;}.mc-tabs__label.svelte-g14hff {pointer-events:none;}.mc-tabs__icon.svelte-g14hff {fill:currentcolor;height:1.5rem;width:1.5rem;}.mc-tabs__icon.svelte-g14hff:empty {display:none;}`};function I(p,t){E(t,!0),S(p,H);let f=i(t,"tag",7,"button"),l=i(t,"selected",7,!1),v=i(t,"href",7),c=i(t,"disabled",7),y=q(t,["$$slots","$$events","$$legacy","$$host","tag","selected","href","disabled"]);var w={get tag(){return f()},set tag(e="button"){f(e),d()},get selected(){return l()},set selected(e=!1){l(e),d()},get href(){return v()},set href(e){v(e),d()},get disabled(){return c()},set disabled(e){c(e),d()}},m=G(),j=r(m);{var z=e=>{var a=C();x(a,()=>({type:"button",role:"tab","aria-selected":l(),class:["mc-tabs__tab",l()&&"mc-tabs__tab--selected",c()&&"mc-tabs__tab--disabled"],...y}),void 0,void 0,void 0,"svelte-g14hff");var s=r(a),u=r(s);b(u,t,"icon",{},null),o(s);var n=k(s,2),_=r(n);b(_,t,"default",{},null),o(n),o(a),g(e,a)},B=e=>{var a=F();x(a,()=>({href:v(),role:"tab","aria-selected":l(),class:["mc-tabs__tab",l()&&"mc-tabs__tab--selected",c()&&"mc-tabs__tab--disabled"],...y}),void 0,void 0,void 0,"svelte-g14hff");var s=r(a),u=r(s);b(u,t,"icon",{},null),o(s);var n=k(s,2),_=r(n);b(_,t,"default",{},null),o(n),o(a),g(e,a)};A(j,e=>{f()==="button"?e(z):e(B,!1)})}return o(m),g(p,m),T(w)}customElements.define("m-tab",D(I,{selected:{attribute:"selected",reflect:!0,type:"Boolean"},disabled:{attribute:"disabled",reflect:!0,type:"Boolean"},tag:{},href:{}},["icon","default"],[],!0));
|
|
4
4
|
//# sourceMappingURL=Tab.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Tab.js","sources":["../../../src/components/tab/Tab.svelte"],"sourcesContent":["<svelte:options
|
|
1
|
+
{"version":3,"file":"Tab.js","sources":["../../../src/components/tab/Tab.svelte"],"sourcesContent":["<svelte:options\n customElement={{\n tag: 'm-tab',\n props: {\n selected: { reflect: true, type: 'Boolean', attribute: 'selected' },\n disabled: { reflect: true, type: 'Boolean', attribute: 'disabled' },\n },\n }}\n/>\n\n<script lang=\"ts\">\n /**\n * Tabs are a navigation component that allows users to switch between different sections within the same context. They help organize content efficiently by displaying only one section at a time, reducing clutter and improving accessibility. Tabs can include icons, labels, and notification badges to provide additional context. They are commonly used in dashboards, product management, and settings interfaces.\n *\n * @slot default - The content displayed in the tab.\n * @slot icon - Use this slot to insert an icon for the tab.\n */\n interface Props {\n [key: string]: any;\n /**\n * The HTML tag used for the tab.\n */\n tag?: 'a' | 'button';\n /**\n * If `true`, the tab will be selected.\n */\n selected?: boolean;\n /**\n * URL for the tab link.\n */\n href?: string;\n /**\n * If `true`, the tab will be disabled.\n */\n disabled?: boolean;\n }\n\n let { tag = 'button', selected = false, href, disabled, ...attrs }: Props = $props();\n</script>\n\n<li class=\"mc-tabs__item\" role=\"presentation\">\n {#if tag === 'button'}\n <button\n type=\"button\"\n role=\"tab\"\n aria-selected={selected}\n class={[\n 'mc-tabs__tab',\n selected && 'mc-tabs__tab--selected',\n disabled && 'mc-tabs__tab--disabled',\n ]}\n {...attrs}\n >\n <span class=\"mc-tabs__icon\">\n <slot name=\"icon\" />\n </span>\n\n <span class=\"mc-tabs__label\">\n <slot />\n </span>\n </button>\n {:else}\n <a\n {href}\n role=\"tab\"\n aria-selected={selected}\n class={[\n 'mc-tabs__tab',\n selected && 'mc-tabs__tab--selected',\n disabled && 'mc-tabs__tab--disabled',\n ]}\n {...attrs}\n >\n <span class=\"mc-tabs__icon\">\n <slot name=\"icon\" />\n </span>\n <span class=\"mc-tabs__label\">\n <slot />\n </span>\n </a>\n {/if}\n</li>\n\n<style lang=\"scss\">\n @use '@mozaic-ds/styles/components/tabs';\n\n .mc-tabs__icon:empty {\n display: none;\n }\n</style>\n"],"names":["tag","selected","href","$.prop","$$props","disabled","attrs","$.rest_props","li","root","button","root_1","span","$.child","span_1","$.reset","$.append","$$anchor","root_2","span_2","span_3","$$render","consequent","alternate"],"mappings":";;6sDAUA,gBA2BQ,IAAAA,cAAM,QAAQ,EAAEC,mBAAW,EAAK,EAAEC,EAAIC,EAAAC,EAAA,OAAA,CAAA,EAAEC,EAAQF,EAAAC,EAAA,WAAA,CAAA,EAAKE,EAAKC,EAAAH,EAAA,sHAApD,SAAQ,qDAAa,GAAK,8GAGvCI,EAAEC,EAAA,MAAFD,CAAE,aAEE,IAAAE,EAAAC,EAAA,IAAAD,iDAGgBT,EAAQ,SAErB,eACAA,EAAQ,GAAI,yBACZI,KAAY,6BAEVC,0CAEH,IAAAM,EAAIC,EAXNH,CAAA,MAWEE,CAAI,0BAAJA,CAAI,EAIJ,IAAAE,IAJAF,EAAI,CAAA,MAIJE,CAAI,6BAAJA,CAAI,EAfNC,EAAAL,CAAA,EAAAM,EAAAC,EAAAP,CAAA,SAoBA,IAAA,EAAAQ,EAAA,IAAA,aACEhB,EAAI,6BAEUD,EAAQ,SAErB,eACAA,EAAQ,GAAI,yBACZI,KAAY,6BAEVC,0CAEH,IAAAa,EAAIN,EAXN,CAAA,MAWEM,CAAI,0BAAJA,CAAI,EAGJ,IAAAC,IAHAD,EAAI,CAAA,MAGJC,CAAI,6BAAJA,CAAI,EAdNL,EAAA,CAAA,EAAAC,EAAAC,EAAA,CAAA,WArBEjB,EAAG,IAAK,SAAQqB,EAAAC,CAAA,EAAAD,EAAAE,EAAA,EAAA,aADtBf,CAAE,MAAFA,CAAE,MAFK"}
|
|
@@ -1,4 +1,12 @@
|
|
|
1
|
-
<svelte:options
|
|
1
|
+
<svelte:options
|
|
2
|
+
customElement={{
|
|
3
|
+
tag: 'm-tab',
|
|
4
|
+
props: {
|
|
5
|
+
selected: { reflect: true, type: 'Boolean', attribute: 'selected' },
|
|
6
|
+
disabled: { reflect: true, type: 'Boolean', attribute: 'disabled' },
|
|
7
|
+
},
|
|
8
|
+
}}
|
|
9
|
+
/>
|
|
2
10
|
|
|
3
11
|
<script lang="ts">
|
|
4
12
|
/**
|
|
@@ -8,6 +16,7 @@
|
|
|
8
16
|
* @slot icon - Use this slot to insert an icon for the tab.
|
|
9
17
|
*/
|
|
10
18
|
interface Props {
|
|
19
|
+
[key: string]: any;
|
|
11
20
|
/**
|
|
12
21
|
* The HTML tag used for the tab.
|
|
13
22
|
*/
|
|
@@ -87,7 +96,7 @@
|
|
|
87
96
|
margin-block: 0;
|
|
88
97
|
display: flex;
|
|
89
98
|
gap: 0.5rem;
|
|
90
|
-
padding: 0.5rem 0.25rem;
|
|
99
|
+
padding: var(--tabs-list-padding, 0.5rem 0.25rem);
|
|
91
100
|
}
|
|
92
101
|
.mc-tabs__tab {
|
|
93
102
|
font-size: var(--font-size-100, 0.875rem);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Tab.svelte.d.ts","sourceRoot":"","sources":["../../../src/components/tab/Tab.svelte.ts"],"names":[],"mappings":"AAGE;;;;;GAKG;AACH,UAAU,KAAK;IACb;;OAEG;IACH,GAAG,CAAC,EAAE,GAAG,GAAG,QAAQ,CAAC;IACrB;;OAEG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;OAEG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;
|
|
1
|
+
{"version":3,"file":"Tab.svelte.d.ts","sourceRoot":"","sources":["../../../src/components/tab/Tab.svelte.ts"],"names":[],"mappings":"AAGE;;;;;GAKG;AACH,UAAU,KAAK;IACb,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;IACnB;;OAEG;IACH,GAAG,CAAC,EAAE,GAAG,GAAG,QAAQ,CAAC;IACrB;;OAEG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;OAEG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAkDH,UAAU,kCAAkC,CAAC,KAAK,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,GAAG,EAAE,MAAM,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,GAAG,EAAE,KAAK,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,GAAG,EAAE,OAAO,GAAG,EAAE,EAAE,QAAQ,GAAG,MAAM;IACpM,KAAK,OAAO,EAAE,OAAO,QAAQ,EAAE,2BAA2B,CAAC,KAAK,CAAC,GAAG,OAAO,QAAQ,EAAE,eAAe,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,CAAC,GAAG;QAAE,UAAU,CAAC,EAAE,QAAQ,CAAA;KAAE,GAAG,OAAO,CAAC;IACjK,CAAC,QAAQ,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,GAAG;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,KAAK,CAAA;KAAC,GAAG,OAAO,GAAG;QAAE,IAAI,CAAC,EAAE,GAAG,CAAC;QAAC,GAAG,CAAC,EAAE,GAAG,CAAA;KAAE,CAAC;IAC9G,YAAY,CAAC,EAAE,QAAQ,CAAC;CAC3B;AACD,KAAK,gCAAgC,CAAC,KAAK,EAAE,KAAK,IAAI,KAAK,GACvD,CAAC,KAAK,SAAS;IAAE,OAAO,EAAE,GAAG,CAAA;CAAE,GACzB,KAAK,SAAS,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,GACnC,GAAG,GACH;IAAE,QAAQ,CAAC,EAAE,GAAG,CAAA;CAAE,GAClB,EAAE,CAAC,CAAC;AAId,QAAA,MAAM,GAAG;;;;;;;;UAAqF,CAAC;AAC7E,KAAK,GAAG,GAAG,YAAY,CAAC,OAAO,GAAG,CAAC,CAAC;AACtC,eAAe,GAAG,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{c as
|
|
1
|
+
import{c as h,p as y,a as q,b as c,s as k,t as w,f as o,g as x,h as p,d as v,j as d,r as m,l as j,m as z}from"../../custom-element.js";import{i as B}from"../../if.js";import{s as D}from"../../slot.js";import{s as E}from"../../attributes.js";import"../../branches.js";var S=p('<div class="mc-divider-horizontal svelte-qelc5p"></div>'),T=p('<nav><ul class="mc-tabs__list svelte-qelc5p" role="tablist"><!></ul> <!></nav>');const A={hash:"svelte-qelc5p",code:`/**
|
|
2
2
|
* Do not edit directly, this file was auto-generated.
|
|
3
|
-
*/.mc-tabs.svelte-qelc5p {background-color:var(--tabs-color-background-default, #ffffff);position:relative;width:100%;height:3.5rem;}.mc-tabs__list.svelte-qelc5p {list-style-type:none;padding-inline-start:0;margin-block:0;display:flex;gap:0.5rem;padding:0.5rem 0.25rem;}.mc-tabs--centered.svelte-qelc5p .mc-tabs__list:where(.svelte-qelc5p) {justify-content:center;}.mc-divider-horizontal.svelte-qelc5p {background:var(--divider-color-primary, #cccccc);height:0.0625rem;}`};function C(n,t){
|
|
3
|
+
*/.mc-tabs.svelte-qelc5p {background-color:var(--tabs-color-background-default, #ffffff);position:relative;width:100%;height:3.5rem;}.mc-tabs__list.svelte-qelc5p {list-style-type:none;padding-inline-start:0;margin-block:0;display:flex;gap:0.5rem;padding:var(--tabs-list-padding, 0.5rem 0.25rem);}.mc-tabs--centered.svelte-qelc5p .mc-tabs__list:where(.svelte-qelc5p) {justify-content:center;}.mc-divider-horizontal.svelte-qelc5p {background:var(--divider-color-primary, #cccccc);height:0.0625rem;}`};function C(n,t){y(t,!0),q(n,A);let a=c(t,"description",7),i=c(t,"divider",7,!0),l=c(t,"centered",7);var u={get description(){return a()},set description(e){a(e),d()},get divider(){return i()},set divider(e=!0){i(e),d()},get centered(){return l()},set centered(e){l(e),d()}},r=T(),s=v(r),b=v(s);D(b,t,"tab",{},null),m(s);var f=k(s,2);{var g=e=>{var _=S();o(e,_)};B(f,e=>{i()&&e(g)})}return m(r),w(()=>{j(r,1,z(["mc-tabs",l()&&"mc-tabs--centered"]),"svelte-qelc5p"),E(s,"aria-label",a())}),o(n,r),x(u)}customElements.define("m-tabs",h(C,{divider:{attribute:"divider",reflect:!0,type:"Boolean"},centered:{attribute:"centered",reflect:!0,type:"Boolean"},description:{}},["tab"],[],!0));
|
|
4
4
|
//# sourceMappingURL=Tabs.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Tabs.js","sources":["../../../src/components/tabs/Tabs.svelte"],"sourcesContent":["<svelte:options
|
|
1
|
+
{"version":3,"file":"Tabs.js","sources":["../../../src/components/tabs/Tabs.svelte"],"sourcesContent":["<svelte:options\n customElement={{\n tag: 'm-tabs',\n props: {\n divider: { reflect: true, type: 'Boolean', attribute: 'divider' },\n centered: { reflect: true, type: 'Boolean', attribute: 'centered' },\n },\n }}\n/>\n\n<script lang=\"ts\">\n /**\n * Tabs are a navigation component that allows users to switch between different sections within the same context. They help organize content efficiently by displaying only one section at a time, reducing clutter and improving accessibility. Tabs can include icons, labels, and notification badges to provide additional context. They are commonly used in dashboards, product management, and settings interfaces.\n *\n * @slot tab - use this slot to insert `m-tab` components.\n */\n interface Props {\n /**\n * A description indicating the purpose of the set of tabs. Useful for improving the accessibility of the component.\n */\n description?: string;\n /**\n * If `true`, the divider will appear.\n */\n divider?: boolean;\n /**\n * If `true`, the tabs of the component will be centered.\n */\n centered?: boolean;\n }\n\n let { description, divider = true, centered }: Props = $props();\n</script>\n\n<nav class={['mc-tabs', centered && 'mc-tabs--centered']}>\n <ul class=\"mc-tabs__list\" role=\"tablist\" aria-label={description}>\n <slot name=\"tab\" />\n </ul>\n {#if divider}\n <div class=\"mc-divider-horizontal\"></div>\n {/if}\n</nav>\n\n<style lang=\"scss\">\n @use '@mozaic-ds/styles/components/tabs';\n @use '@mozaic-ds/styles/components/divider';\n</style>\n"],"names":["description","$.prop","$$props","divider","centered","nav","root","ul","div","root_1","$$render","consequent","$.set_class","$.clsx","$.set_attribute"],"mappings":";;mgBAUA,oBAqBQA,EAAWC,EAAAC,EAAA,cAAA,CAAA,EAAEC,kBAAU,EAAI,EAAEC,EAAQH,EAAAC,EAAA,WAAA,CAAA,4GAAd,GAAI,iEAGlCG,EAAGC,EAAA,EACDC,IADFF,CAAG,MACDE,CAAE,yBAAFA,CAAE,UAAFA,EAAE,CAAA,iBAIAC,EAAGC,EAAA,MAAHD,CAAG,WADDL,EAAO,GAAAO,EAAAC,CAAA,aAJbN,CAAG,SAAHO,EAAAP,EAAG,EAAAQ,EAAA,CAAS,UAAWT,KAAY,mBAAmB,CAAA,EAAA,eAAA,EACpDU,EAAAP,eAAoDP,GAAW,QADjEK,CAAG,MAFI"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import type { Meta, StoryObj } from '@storybook/web-components-vite';
|
|
2
2
|
import './Tabs.svelte';
|
|
3
3
|
import '../tab/Tab.svelte';
|
|
4
|
-
import '@mozaic-ds/icons-svelte/
|
|
4
|
+
import '@mozaic-ds/icons-svelte/components/ChevronRight24/ChevronRight24.svelte';
|
|
5
5
|
declare const meta: Meta;
|
|
6
6
|
export default meta;
|
|
7
7
|
type Story = StoryObj;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Tabs.stories.d.ts","sourceRoot":"","sources":["../../../src/components/tabs/Tabs.stories.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,gCAAgC,CAAC;AAIrE,OAAO,eAAe,CAAC;AACvB,OAAO,mBAAmB,CAAC;AAC3B,OAAO,
|
|
1
|
+
{"version":3,"file":"Tabs.stories.d.ts","sourceRoot":"","sources":["../../../src/components/tabs/Tabs.stories.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,gCAAgC,CAAC;AAIrE,OAAO,eAAe,CAAC;AACvB,OAAO,mBAAmB,CAAC;AAC3B,OAAO,yEAAyE,CAAC;AAEjF,QAAA,MAAM,IAAI,EAAE,IAsBX,CAAC;AACF,eAAe,IAAI,CAAC;AACpB,KAAK,KAAK,GAAG,QAAQ,CAAC;AAEtB,eAAO,MAAM,OAAO,EAAE,KAAU,CAAC;AAEjC,eAAO,MAAM,KAAK,EAAE,KAqBnB,CAAC;AAEF,eAAO,MAAM,QAAQ,EAAE,KAEtB,CAAC;AAEF,eAAO,MAAM,SAAS,EAAE,KAEvB,CAAC;AAEF,eAAO,MAAM,QAAQ,EAAE,KAStB,CAAC"}
|
|
@@ -3,11 +3,11 @@ import { ifDefined } from 'lit-html/directives/if-defined.js';
|
|
|
3
3
|
import { unsafeHTML } from 'lit/directives/unsafe-html.js';
|
|
4
4
|
import './Tabs.svelte';
|
|
5
5
|
import '../tab/Tab.svelte';
|
|
6
|
-
import '@mozaic-ds/icons-svelte/
|
|
6
|
+
import '@mozaic-ds/icons-svelte/components/ChevronRight24/ChevronRight24.svelte';
|
|
7
7
|
const meta = {
|
|
8
8
|
title: 'Navigation/Tabs',
|
|
9
9
|
component: 'm-tabs',
|
|
10
|
-
subcomponents: { '
|
|
10
|
+
subcomponents: { 'Tab': 'm-tab' },
|
|
11
11
|
args: {
|
|
12
12
|
tab: `
|
|
13
13
|
<m-tab slot="tab" selected="true">label</m-tab>
|
|
@@ -19,8 +19,8 @@ const meta = {
|
|
|
19
19
|
render: (args) => html `
|
|
20
20
|
<m-tabs
|
|
21
21
|
description=${ifDefined(args.description)}
|
|
22
|
-
centered=${
|
|
23
|
-
divider=${
|
|
22
|
+
?centered=${args.centered}
|
|
23
|
+
?divider=${args.divider}
|
|
24
24
|
value=${ifDefined(args.value)}
|
|
25
25
|
>
|
|
26
26
|
${unsafeHTML(ifDefined(args.tab))}
|
|
@@ -1,4 +1,12 @@
|
|
|
1
|
-
<svelte:options
|
|
1
|
+
<svelte:options
|
|
2
|
+
customElement={{
|
|
3
|
+
tag: 'm-tabs',
|
|
4
|
+
props: {
|
|
5
|
+
divider: { reflect: true, type: 'Boolean', attribute: 'divider' },
|
|
6
|
+
centered: { reflect: true, type: 'Boolean', attribute: 'centered' },
|
|
7
|
+
},
|
|
8
|
+
}}
|
|
9
|
+
/>
|
|
2
10
|
|
|
3
11
|
<script lang="ts">
|
|
4
12
|
/**
|
|
@@ -48,7 +56,7 @@
|
|
|
48
56
|
margin-block: 0;
|
|
49
57
|
display: flex;
|
|
50
58
|
gap: 0.5rem;
|
|
51
|
-
padding: 0.5rem 0.25rem;
|
|
59
|
+
padding: var(--tabs-list-padding, 0.5rem 0.25rem);
|
|
52
60
|
}
|
|
53
61
|
.mc-tabs__tab {
|
|
54
62
|
font-size: var(--font-size-100, 0.875rem);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Tabs.svelte.d.ts","sourceRoot":"","sources":["../../../src/components/tabs/Tabs.svelte.ts"],"names":[],"mappings":"AAGE;;;;GAIG;AACH,UAAU,KAAK;IACb;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;OAEG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB;;OAEG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;
|
|
1
|
+
{"version":3,"file":"Tabs.svelte.d.ts","sourceRoot":"","sources":["../../../src/components/tabs/Tabs.svelte.ts"],"names":[],"mappings":"AAGE;;;;GAIG;AACH,UAAU,KAAK;IACb;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;OAEG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB;;OAEG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AA4BH,UAAU,kCAAkC,CAAC,KAAK,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,GAAG,EAAE,MAAM,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,GAAG,EAAE,KAAK,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,GAAG,EAAE,OAAO,GAAG,EAAE,EAAE,QAAQ,GAAG,MAAM;IACpM,KAAK,OAAO,EAAE,OAAO,QAAQ,EAAE,2BAA2B,CAAC,KAAK,CAAC,GAAG,OAAO,QAAQ,EAAE,eAAe,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,CAAC,GAAG;QAAE,UAAU,CAAC,EAAE,QAAQ,CAAA;KAAE,GAAG,OAAO,CAAC;IACjK,CAAC,QAAQ,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,GAAG;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,KAAK,CAAA;KAAC,GAAG,OAAO,GAAG;QAAE,IAAI,CAAC,EAAE,GAAG,CAAC;QAAC,GAAG,CAAC,EAAE,GAAG,CAAA;KAAE,CAAC;IAC9G,YAAY,CAAC,EAAE,QAAQ,CAAC;CAC3B;AAUD,QAAA,MAAM,IAAI;;;;UAAqF,CAAC;AAC9E,KAAK,IAAI,GAAG,YAAY,CAAC,OAAO,IAAI,CAAC,CAAC;AACxC,eAAe,IAAI,CAAC"}
|