@mozaic-ds/web-components 1.0.0-alpha.5 → 1.0.0-alpha.7
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/{badge → components/badge}/Badge.js +1 -1
- package/dist/components/badge/Badge.js.map +1 -0
- package/dist/components/badge/Badge.svelte.d.ts.map +1 -0
- package/dist/components/badge/badge.types.d.ts.map +1 -0
- package/dist/{button → components/button}/Button.js +1 -1
- package/dist/components/button/Button.js.map +1 -0
- package/dist/components/button/Button.svelte.d.ts.map +1 -0
- package/dist/{button → components/button}/IconButton.js +1 -1
- package/dist/components/button/IconButton.js.map +1 -0
- package/dist/components/button/IconButton.svelte.d.ts.map +1 -0
- package/dist/components/button/button.types.d.ts.map +1 -0
- package/dist/{checkbox → components/checkbox}/Checkbox.js +1 -1
- package/dist/components/checkbox/Checkbox.js.map +1 -0
- package/dist/components/checkbox/Checkbox.svelte.d.ts.map +1 -0
- package/dist/{checkboxgroup → components/checkboxgroup}/checkboxGroup.js +1 -1
- package/dist/components/checkboxgroup/checkboxGroup.js.map +1 -0
- package/dist/components/checkboxgroup/checkboxGroup.svelte.d.ts.map +1 -0
- package/dist/components/checkboxgroup/checkboxgroup.types.d.ts.map +1 -0
- package/dist/{field → components/field}/Field.js +1 -1
- package/dist/components/field/Field.js.map +1 -0
- package/dist/components/field/Field.svelte.d.ts.map +1 -0
- package/dist/{link → components/link}/Link.js +1 -1
- package/dist/components/link/Link.js.map +1 -0
- package/dist/components/link/Link.svelte.d.ts.map +1 -0
- package/dist/components/link/link.types.d.ts.map +1 -0
- package/dist/{loader → components/loader}/Loader.js +1 -1
- package/dist/components/loader/Loader.js.map +1 -0
- package/dist/components/loader/Loader.svelte.d.ts.map +1 -0
- package/dist/components/loader/loader.types.d.ts.map +1 -0
- package/dist/{overlay → components/overlay}/Overlay.js +1 -1
- package/dist/components/overlay/Overlay.js.map +1 -0
- package/dist/components/overlay/Overlay.svelte.d.ts.map +1 -0
- package/dist/{overlay → components/overlay}/OverlayLoader.js +1 -1
- package/dist/components/overlay/OverlayLoader.js.map +1 -0
- package/dist/components/overlay/OverlayLoader.svelte.d.ts.map +1 -0
- package/dist/{quantityselector → components/quantityselector}/QuantitySelector.js +1 -1
- package/dist/components/quantityselector/QuantitySelector.js.map +1 -0
- package/dist/components/quantityselector/QuantitySelector.svelte.d.ts.map +1 -0
- package/dist/{radio → components/radio}/Radio.js +1 -1
- package/dist/components/radio/Radio.js.map +1 -0
- package/dist/components/radio/Radio.svelte.d.ts.map +1 -0
- package/dist/{radiogroup → components/radiogroup}/RadioGroup.js +1 -1
- package/dist/components/radiogroup/RadioGroup.js.map +1 -0
- package/dist/components/radiogroup/RadioGroup.svelte.d.ts.map +1 -0
- package/dist/components/radiogroup/radioGroup.types.d.ts.map +1 -0
- package/dist/{select → components/select}/Select.js +1 -1
- package/dist/components/select/Select.js.map +1 -0
- package/dist/components/select/Select.svelte.d.ts.map +1 -0
- package/dist/components/select/select.types.d.ts.map +1 -0
- package/dist/{statusbadge → components/statusbadge}/StatusBadge.js +1 -1
- package/dist/components/statusbadge/StatusBadge.js.map +1 -0
- package/dist/components/statusbadge/StatusBadge.svelte.d.ts.map +1 -0
- package/dist/{statusbadge → components/statusbadge}/StatusDot.js +1 -1
- package/dist/components/statusbadge/StatusDot.js.map +1 -0
- package/dist/components/statusbadge/StatusDot.svelte.d.ts.map +1 -0
- package/dist/components/statusbadge/badge.types.d.ts.map +1 -0
- package/dist/{textarea → components/textarea}/Textarea.js +1 -1
- package/dist/components/textarea/Textarea.js.map +1 -0
- package/dist/{toggle/Toggle.svelte.d.ts.map → components/textarea/Textarea.svelte.d.ts.map} +1 -1
- package/dist/{textinput → components/textinput}/Textinput.js +1 -1
- package/dist/components/textinput/Textinput.js.map +1 -0
- package/dist/components/textinput/Textinput.svelte.d.ts.map +1 -0
- package/dist/components/textinput/textinput.types.d.ts.map +1 -0
- package/dist/{toggle → components/toggle}/Toggle.js +1 -1
- package/dist/components/toggle/Toggle.js.map +1 -0
- package/dist/components/toggle/Toggle.svelte.d.ts.map +1 -0
- package/dist/components/toggle/toggle.types.d.ts.map +1 -0
- package/dist/main.d.ts +18 -0
- package/dist/main.d.ts.map +1 -0
- package/dist/main.js +17 -0
- package/dist/stories/Contributing.stories.mdx +1 -0
- package/dist/stories/HowToWrite.stories.mdx +86 -0
- package/dist/stories/Introduction.stories.mdx +131 -0
- package/dist/stories/Status.stories.mdx +56 -0
- package/dist/stories/SupportAndOnboarding.stories.mdx +62 -0
- package/dist/stories/badge/Badge.stories.d.ts +8 -0
- package/dist/stories/badge/Badge.stories.d.ts.map +1 -0
- package/dist/stories/badge/Badge.stories.js +68 -0
- package/dist/stories/button/Button.stories.d.ts +8 -0
- package/dist/stories/button/Button.stories.d.ts.map +1 -0
- package/dist/stories/button/Button.stories.js +151 -0
- package/dist/stories/button/IconButton.stories.d.ts +7 -0
- package/dist/stories/button/IconButton.stories.d.ts.map +1 -0
- package/dist/stories/button/IconButton.stories.js +68 -0
- package/dist/stories/checkbox/Checkbox.stories.d.ts +9 -0
- package/dist/stories/checkbox/Checkbox.stories.d.ts.map +1 -0
- package/dist/stories/checkbox/Checkbox.stories.js +105 -0
- package/dist/stories/checkbox-group/Checkbox-group.stories.d.ts +7 -0
- package/dist/stories/checkbox-group/Checkbox-group.stories.d.ts.map +1 -0
- package/dist/stories/checkbox-group/Checkbox-group.stories.js +140 -0
- package/dist/stories/field/Field.stories.d.ts +10 -0
- package/dist/stories/field/Field.stories.d.ts.map +1 -0
- package/dist/stories/field/Field.stories.js +146 -0
- package/dist/stories/link/Link.stories.d.ts +7 -0
- package/dist/stories/link/Link.stories.d.ts.map +1 -0
- package/dist/stories/link/Link.stories.js +83 -0
- package/dist/stories/loader/Loader.stories.d.ts +7 -0
- package/dist/stories/loader/Loader.stories.d.ts.map +1 -0
- package/dist/stories/loader/Loader.stories.js +52 -0
- package/dist/stories/overlay/Overlay.stories.d.ts +5 -0
- package/dist/stories/overlay/Overlay.stories.d.ts.map +1 -0
- package/dist/stories/overlay/Overlay.stories.js +45 -0
- package/dist/stories/overlay/OverlayLoader.stories.d.ts +5 -0
- package/dist/stories/overlay/OverlayLoader.stories.d.ts.map +1 -0
- package/dist/stories/overlay/OverlayLoader.stories.js +51 -0
- package/dist/stories/quantityselector/QuantitySelector.stories.d.ts +7 -0
- package/dist/stories/quantityselector/QuantitySelector.stories.d.ts.map +1 -0
- package/dist/stories/quantityselector/QuantitySelector.stories.js +124 -0
- package/dist/stories/radio/Radio.stories.d.ts +8 -0
- package/dist/stories/radio/Radio.stories.d.ts.map +1 -0
- package/dist/stories/radio/Radio.stories.js +75 -0
- package/dist/stories/radio-group/Radio-group.stories.d.ts +7 -0
- package/dist/stories/radio-group/Radio-group.stories.d.ts.map +1 -0
- package/dist/stories/radio-group/Radio-group.stories.js +146 -0
- package/dist/stories/select/Select.stories.d.ts +8 -0
- package/dist/stories/select/Select.stories.d.ts.map +1 -0
- package/dist/stories/select/Select.stories.js +88 -0
- package/dist/stories/status-badge/StatusBadge.stories.d.ts +8 -0
- package/dist/stories/status-badge/StatusBadge.stories.d.ts.map +1 -0
- package/dist/stories/status-badge/StatusBadge.stories.js +53 -0
- package/dist/stories/status-dot/StatusDot.stories.d.ts +9 -0
- package/dist/stories/status-dot/StatusDot.stories.d.ts.map +1 -0
- package/dist/stories/status-dot/StatusDot.stories.js +59 -0
- package/dist/stories/textarea/Textarea.stories.d.ts +8 -0
- package/dist/stories/textarea/Textarea.stories.d.ts.map +1 -0
- package/dist/stories/textarea/Textarea.stories.js +97 -0
- package/dist/stories/textinput/Textinput.stories.d.ts +7 -0
- package/dist/stories/textinput/Textinput.stories.d.ts.map +1 -0
- package/dist/stories/textinput/Textinput.stories.js +117 -0
- package/dist/stories/toggle/Toggle.stories.d.ts +8 -0
- package/dist/stories/toggle/Toggle.stories.d.ts.map +1 -0
- package/dist/stories/toggle/Toggle.stories.js +73 -0
- package/dist/utilities/ClickOutside.d.ts +3 -0
- package/dist/utilities/ClickOutside.d.ts.map +1 -0
- package/dist/utilities/ClickOutside.js +13 -0
- package/dist/utilities/EventForward.d.ts +10 -0
- package/dist/utilities/EventForward.d.ts.map +1 -0
- package/dist/utilities/EventForward.js +127 -0
- package/dist/utilities/EventHandler.d.ts +8 -0
- package/dist/utilities/EventHandler.d.ts.map +1 -0
- package/dist/utilities/EventHandler.js +11 -0
- package/package.json +2 -2
- package/dist/badge/Badge.js.map +0 -1
- package/dist/badge/Badge.svelte.d.ts.map +0 -1
- package/dist/badge/badge.types.d.ts.map +0 -1
- package/dist/button/Button.js.map +0 -1
- package/dist/button/Button.svelte.d.ts.map +0 -1
- package/dist/button/IconButton.js.map +0 -1
- package/dist/button/IconButton.svelte.d.ts.map +0 -1
- package/dist/button/button.types.d.ts.map +0 -1
- package/dist/checkbox/Checkbox.js.map +0 -1
- package/dist/checkbox/Checkbox.svelte.d.ts.map +0 -1
- package/dist/checkboxgroup/checkboxGroup.js.map +0 -1
- package/dist/checkboxgroup/checkboxGroup.svelte.d.ts.map +0 -1
- package/dist/checkboxgroup/checkboxgroup.types.d.ts.map +0 -1
- package/dist/field/Field.js.map +0 -1
- package/dist/field/Field.svelte.d.ts.map +0 -1
- package/dist/link/Link.js.map +0 -1
- package/dist/link/Link.svelte.d.ts.map +0 -1
- package/dist/link/link.types.d.ts.map +0 -1
- package/dist/loader/Loader.js.map +0 -1
- package/dist/loader/Loader.svelte.d.ts.map +0 -1
- package/dist/loader/loader.types.d.ts.map +0 -1
- package/dist/overlay/Overlay.js.map +0 -1
- package/dist/overlay/Overlay.svelte.d.ts.map +0 -1
- package/dist/overlay/OverlayLoader.js.map +0 -1
- package/dist/overlay/OverlayLoader.svelte.d.ts.map +0 -1
- package/dist/quantityselector/QuantitySelector.js.map +0 -1
- package/dist/quantityselector/QuantitySelector.svelte.d.ts.map +0 -1
- package/dist/radio/Radio.js.map +0 -1
- package/dist/radio/Radio.svelte.d.ts.map +0 -1
- package/dist/radiogroup/RadioGroup.js.map +0 -1
- package/dist/radiogroup/RadioGroup.svelte.d.ts.map +0 -1
- package/dist/radiogroup/radioGroup.types.d.ts.map +0 -1
- package/dist/select/Select.js.map +0 -1
- package/dist/select/Select.svelte.d.ts.map +0 -1
- package/dist/select/select.types.d.ts.map +0 -1
- package/dist/statusbadge/StatusBadge.js.map +0 -1
- package/dist/statusbadge/StatusBadge.svelte.d.ts.map +0 -1
- package/dist/statusbadge/StatusDot.js.map +0 -1
- package/dist/statusbadge/StatusDot.svelte.d.ts.map +0 -1
- package/dist/statusbadge/badge.types.d.ts.map +0 -1
- package/dist/textarea/Textarea.js.map +0 -1
- package/dist/textarea/Textarea.svelte.d.ts.map +0 -1
- package/dist/textinput/Textinput.js.map +0 -1
- package/dist/textinput/Textinput.svelte.d.ts.map +0 -1
- package/dist/textinput/textinput.types.d.ts.map +0 -1
- package/dist/toggle/Toggle.js.map +0 -1
- package/dist/toggle/toggle.types.d.ts.map +0 -1
- /package/dist/{badge → components/badge}/Badge.svelte +0 -0
- /package/dist/{badge → components/badge}/Badge.svelte.d.ts +0 -0
- /package/dist/{badge → components/badge}/badge.types.d.ts +0 -0
- /package/dist/{badge → components/badge}/badge.types.js +0 -0
- /package/dist/{button → components/button}/Button.svelte +0 -0
- /package/dist/{button → components/button}/Button.svelte.d.ts +0 -0
- /package/dist/{button → components/button}/IconButton.svelte +0 -0
- /package/dist/{button → components/button}/IconButton.svelte.d.ts +0 -0
- /package/dist/{button → components/button}/button.types.d.ts +0 -0
- /package/dist/{button → components/button}/button.types.js +0 -0
- /package/dist/{checkbox → components/checkbox}/Checkbox.svelte +0 -0
- /package/dist/{checkbox → components/checkbox}/Checkbox.svelte.d.ts +0 -0
- /package/dist/{checkboxgroup → components/checkboxgroup}/checkboxGroup.svelte +0 -0
- /package/dist/{checkboxgroup → components/checkboxgroup}/checkboxGroup.svelte.d.ts +0 -0
- /package/dist/{checkboxgroup → components/checkboxgroup}/checkboxgroup.types.d.ts +0 -0
- /package/dist/{checkboxgroup → components/checkboxgroup}/checkboxgroup.types.js +0 -0
- /package/dist/{field → components/field}/Field.svelte +0 -0
- /package/dist/{field → components/field}/Field.svelte.d.ts +0 -0
- /package/dist/{link → components/link}/Link.svelte +0 -0
- /package/dist/{link → components/link}/Link.svelte.d.ts +0 -0
- /package/dist/{link → components/link}/link.types.d.ts +0 -0
- /package/dist/{link → components/link}/link.types.js +0 -0
- /package/dist/{loader → components/loader}/Loader.svelte +0 -0
- /package/dist/{loader → components/loader}/Loader.svelte.d.ts +0 -0
- /package/dist/{loader → components/loader}/loader.types.d.ts +0 -0
- /package/dist/{loader → components/loader}/loader.types.js +0 -0
- /package/dist/{overlay → components/overlay}/Overlay.svelte +0 -0
- /package/dist/{overlay → components/overlay}/Overlay.svelte.d.ts +0 -0
- /package/dist/{overlay → components/overlay}/OverlayLoader.svelte +0 -0
- /package/dist/{overlay → components/overlay}/OverlayLoader.svelte.d.ts +0 -0
- /package/dist/{quantityselector → components/quantityselector}/QuantitySelector.svelte +0 -0
- /package/dist/{quantityselector → components/quantityselector}/QuantitySelector.svelte.d.ts +0 -0
- /package/dist/{radio → components/radio}/Radio.svelte +0 -0
- /package/dist/{radio → components/radio}/Radio.svelte.d.ts +0 -0
- /package/dist/{radiogroup → components/radiogroup}/RadioGroup.svelte +0 -0
- /package/dist/{radiogroup → components/radiogroup}/RadioGroup.svelte.d.ts +0 -0
- /package/dist/{radiogroup → components/radiogroup}/radioGroup.types.d.ts +0 -0
- /package/dist/{radiogroup → components/radiogroup}/radioGroup.types.js +0 -0
- /package/dist/{select → components/select}/Select.svelte +0 -0
- /package/dist/{select → components/select}/Select.svelte.d.ts +0 -0
- /package/dist/{select → components/select}/select.types.d.ts +0 -0
- /package/dist/{select → components/select}/select.types.js +0 -0
- /package/dist/{statusbadge → components/statusbadge}/StatusBadge.svelte +0 -0
- /package/dist/{statusbadge → components/statusbadge}/StatusBadge.svelte.d.ts +0 -0
- /package/dist/{statusbadge → components/statusbadge}/StatusDot.svelte +0 -0
- /package/dist/{statusbadge → components/statusbadge}/StatusDot.svelte.d.ts +0 -0
- /package/dist/{statusbadge → components/statusbadge}/badge.types.d.ts +0 -0
- /package/dist/{statusbadge → components/statusbadge}/badge.types.js +0 -0
- /package/dist/{textarea → components/textarea}/Textarea.svelte +0 -0
- /package/dist/{textarea → components/textarea}/Textarea.svelte.d.ts +0 -0
- /package/dist/{textinput → components/textinput}/Textinput.svelte +0 -0
- /package/dist/{textinput → components/textinput}/Textinput.svelte.d.ts +0 -0
- /package/dist/{textinput → components/textinput}/textinput.types.d.ts +0 -0
- /package/dist/{textinput → components/textinput}/textinput.types.js +0 -0
- /package/dist/{toggle → components/toggle}/Toggle.svelte +0 -0
- /package/dist/{toggle → components/toggle}/Toggle.svelte.d.ts +0 -0
- /package/dist/{toggle → components/toggle}/toggle.types.d.ts +0 -0
- /package/dist/{toggle → components/toggle}/toggle.types.js +0 -0
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{c as u,p as l,a as n,b as c,t as m,f as i,g as b,h as g,i as d,k as v}from"
|
|
1
|
+
import{c as u,p as l,a as n,b as c,t as m,f as i,g as b,h as g,i as d,k as v}from"../../custom-element.js";var w=m("<div></div>");const h={hash:"svelte-bwqsm9",code:`/**
|
|
2
2
|
* Do not edit directly, this file was auto-generated.
|
|
3
3
|
*/.mc-status-dot.svelte-bwqsm9 {background-color:var(--status-dot-color-background-information, #0074aa);height:0.5rem;width:0.5rem;border-radius:100%;display:inline-block;}.mc-status-dot--s.svelte-bwqsm9 {height:0.25rem;width:0.25rem;}.mc-status-dot--l.svelte-bwqsm9 {height:1rem;width:1rem;}.mc-status-dot--success.svelte-bwqsm9 {background-color:var(--status-dot-color-background-success, #117f03);}.mc-status-dot--danger.svelte-bwqsm9 {background-color:var(--status-dot-color-background-danger, #c61112);}.mc-status-dot--warning.svelte-bwqsm9 {background-color:var(--status-dot-color-background-warning, #b64f00);}.mc-status-dot--neutral.svelte-bwqsm9 {background-color:var(--status-dot-color-background-neutral, #666666);}`};function f(o,e){l(e,!0),n(o,h);let t=c(e,"style",7),s=c(e,"size",7);var r=w();return i(()=>v(r,1,`mc-status-dot ${(s()?`mc-status-dot--${s()}`:"")??""} ${(t()?`mc-status-dot--${t()}`:"")??""}`,"svelte-bwqsm9")),b(o,r),g({get style(){return t()},set style(a){t(a),d()},get size(){return s()},set size(a){s(a),d()}})}customElements.define("m-status-dot",u(f,{style:{},size:{}},[],[],!1));export{f as S};
|
|
4
4
|
//# sourceMappingURL=StatusDot.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"StatusDot.js","sources":["../../../src/components/statusbadge/StatusDot.svelte"],"sourcesContent":["<svelte:options customElement={{ tag: 'm-status-dot', shadow: 'none' }} />\n\n<script lang=\"ts\">\n import type { BadgeStyle, BadgeSize } from './badge.types';\n\n interface Props {\n style: BadgeStyle;\n size: BadgeSize;\n }\n\n let { style, size }: Props = $props();\n</script>\n\n<div\n class=\"mc-status-dot {size ? `mc-status-dot--${size}` : ''} {style\n ? `mc-status-dot--${style}`\n : ''}\"\n></div>\n\n<style lang=\"scss\">\n @use '@mozaic-ds/styles/components/status-dot';\n</style>\n"],"names":["style","$.prop","$$props","size"],"mappings":";;8vBAUQA,EAAKC,EAAAC,EAAA,QAAA,CAAA,EAAEC,EAAIF,EAAAC,EAAA,OAAA,CAAA,iDAIKC,EAAI,EAAA,kBAAqBA,EAAI,CAAK,GAAA,aAAMH,EACxC,EAAA,kBAAAA,MAClB,KAAE,EAAA,GAAA,eAAA,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"StatusDot.svelte.d.ts","sourceRoot":"","sources":["../../../src/components/statusbadge/StatusDot.svelte.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAGzD,UAAU,KAAK;IACb,KAAK,EAAE,UAAU,CAAC;IAClB,IAAI,EAAE,SAAS,CAAC;CACjB;AAkBH,QAAA,MAAM,SAAS,2CAAsC,CAAC;AACtD,KAAK,SAAS,GAAG,UAAU,CAAC,OAAO,SAAS,CAAC,CAAC;AAC9C,eAAe,SAAS,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"badge.types.d.ts","sourceRoot":"","sources":["../../../src/components/statusbadge/badge.types.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,UAAU,GAAG,QAAQ,GAAG,SAAS,GAAG,SAAS,GAAG,SAAS,GAAG,MAAM,CAAC;AAC/E,MAAM,MAAM,SAAS,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{d as w,c as y,p as _,a as k,b as o,t as D,f as E,g as q,h as z,i as t,q as I,k as O}from"
|
|
1
|
+
import{d as w,c as y,p as _,a as k,b as o,t as D,f as E,g as q,h as z,i as t,q as I,k as O}from"../../custom-element.js";import{s as l}from"../../attributes.js";import{b as S}from"../../input.js";import{c as T}from"../../index-client.js";var j=D('<textarea spellcheck="false"></textarea>');const A={hash:"svelte-15vrvs3",code:`/**
|
|
2
2
|
* Do not edit directly, this file was auto-generated.
|
|
3
3
|
*/
|
|
4
4
|
/* stylelint-disable string-no-newline */
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Textarea.js","sources":["../../../src/components/textarea/Textarea.svelte"],"sourcesContent":["<svelte:options customElement=\"m-textarea\" />\n\n<script lang=\"ts\">\n import { createEventDispatcher } from 'svelte';\n\n interface Props {\n name: string;\n value: string;\n placeholder: string;\n rows?: number;\n isinvalid: boolean;\n disabled?: boolean;\n minlength: number;\n maxlength: number;\n readonly: boolean;\n }\n\n let {\n name,\n value = $bindable(),\n placeholder,\n rows = 2,\n isinvalid,\n disabled = false,\n minlength,\n maxlength,\n readonly,\n }: Props = $props();\n\n const dispatch = createEventDispatcher();\n\n function onInput(e: Event) {\n let value = (e.target as HTMLInputElement).value;\n dispatch('on-input', value);\n }\n</script>\n\n<textarea\n bind:value\n class=\"mc-textarea\"\n class:is-invalid={isinvalid}\n aria-invalid={isinvalid}\n {name}\n id={name}\n {placeholder}\n {rows}\n {disabled}\n {minlength}\n {maxlength}\n {readonly}\n spellcheck=\"false\"\n oninput={onInput}\n></textarea>\n\n<style lang=\"scss\">\n @use '@mozaic-ds/styles/components/field';\n @use '@mozaic-ds/styles/components/textarea';\n</style>\n"],"names":["name","$.prop","$$props","value","placeholder","rows","isinvalid","disabled","minlength","maxlength","readonly","dispatch","createEventDispatcher","onInput"],"mappings":";;;;;snDAkBIA,EAAIC,EAAAC,EAAA,OAAA,CAAA,EACJC,EAAKF,EAAAC,EAAA,QAAA,EAAA,EACLE,EAAWH,EAAAC,EAAA,cAAA,CAAA,EACXG,eAAO,CAAC,EACRC,EAASL,EAAAC,EAAA,YAAA,CAAA,EACTK,mBAAW,EAAK,EAChBC,EAASP,EAAAC,EAAA,YAAA,CAAA,EACTO,EAASR,EAAAC,EAAA,YAAA,CAAA,EACTQ,EAAQT,EAAAC,EAAA,WAAA,CAAA,EAGJ,MAAAS,EAAWC,EAAqB,WAE7BC,EAAQ,EAAU,CACrB,IAAAV,EAAS,EAAE,OAA4B,MAC3CQ,EAAS,WAAYR,CAAK,CAC5B,uCAiBSU,mEAXSP,EAAS,EAAA,qBACbA,GAAS,2BAEnBN,GAAI,6TAtBC,EAAC,4GAEG,GAAK"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"
|
|
1
|
+
{"version":3,"file":"Textarea.svelte.d.ts","sourceRoot":"","sources":["../../../src/components/textarea/Textarea.svelte.ts"],"names":[],"mappings":"AAME,UAAU,KAAK;IACb,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,OAAO,CAAC;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,OAAO,CAAC;CACnB;AAiCH,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;AAKD,QAAA,MAAM,QAAQ;;;;mBAA6E,CAAC;AAC1E,KAAK,QAAQ,GAAG,YAAY,CAAC,OAAO,QAAQ,CAAC,CAAC;AAChD,eAAe,QAAQ,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{l as A,u as R,d as U,c as X,a as Y,b as n,t as D,f as K,g as Z,h as $,p as ee,e as m,s as B,m as T,n as V,r as u,k as te,o as ne,i as o,j as oe}from"
|
|
1
|
+
import{l as A,u as R,d as U,c as X,a as Y,b as n,t as D,f as K,g as Z,h as $,p as ee,e as m,s as B,m as T,n as V,r as u,k as te,o as ne,i as o,j as oe}from"../../custom-element.js";import{i as W}from"../../if.js";import{s as ie,a as re}from"../../slot.js";import{r as le,b as se}from"../../attributes.js";import{b as ae}from"../../input.js";function ce(a,t,c){A(()=>{var i=R(()=>t(a,c==null?void 0:c())||{});if(i!=null&&i.destroy)return()=>i.destroy()})}function ve(a,t){console.log(t()),t("")}var de=D('<span class="mc-text-input__icon svelte-1ovon7j"><!></span>'),me=D('<div class="mc-controls-options js-control-options svelte-1ovon7j"><button type="button" class="mc-controls-options__button svelte-1ovon7j"><svg class="mc-controls-options__icon svelte-1ovon7j" 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-1ovon7j"></path></svg> <span class="mc-controls-options__label svelte-1ovon7j"> </span></button></div>'),ue=D("<div><!> <input> <!></div>");const pe={hash:"svelte-1ovon7j",code:`/**
|
|
2
2
|
* Do not edit directly, this file was auto-generated.
|
|
3
3
|
*/.mc-controls-options.svelte-1ovon7j {align-items:center;display:inline-flex;justify-content:center;gap:0.5rem;}.mc-controls-options__button.svelte-1ovon7j {background-color:transparent;border-width:0;color:initial;font-family:inherit;outline:none;appearance:none;cursor:pointer;padding:0;}.mc-controls-options__icon.svelte-1ovon7j {fill:var(--forms-color-icon-clear, #666666);}.mc-controls-options__button.svelte-1ovon7j, .mc-controls-options__icon.svelte-1ovon7j {height:1.5rem;width:1.5rem;}.mc-controls-options__label.svelte-1ovon7j {clip-path:inset(100%);clip:rect(1px, 1px, 1px, 1px);height:1px;overflow:hidden;position:absolute;white-space:nowrap;padding:0;width:1px;}.mc-controls-options__unit.svelte-1ovon7j {font-size:1rem;line-height:1.3;font-weight:600;color:var(--forms-color-text-default, #000000);}
|
|
4
4
|
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Textinput.js","sources":["../../../node_modules/svelte/src/internal/client/dom/elements/actions.js","../../../src/components/textinput/Textinput.svelte"],"sourcesContent":["/** @import { ActionPayload } from '#client' */\nimport { effect, render_effect } from '../../reactivity/effects.js';\nimport { safe_not_equal } from '../../reactivity/equality.js';\nimport { deep_read_state, untrack } from '../../runtime.js';\n\n/**\n * @template P\n * @param {Element} dom\n * @param {(dom: Element, value?: P) => ActionPayload<P>} action\n * @param {() => P} [get_value]\n * @returns {void}\n */\nexport function action(dom, action, get_value) {\n\teffect(() => {\n\t\tvar payload = untrack(() => action(dom, get_value?.()) || {});\n\n\t\tif (get_value && payload?.update) {\n\t\t\tvar inited = false;\n\t\t\t/** @type {P} */\n\t\t\tvar prev = /** @type {any} */ ({}); // initialize with something so it's never equal on first run\n\n\t\t\trender_effect(() => {\n\t\t\t\tvar value = get_value();\n\n\t\t\t\t// Action's update method is coarse-grained, i.e. when anything in the passed value changes, update.\n\t\t\t\t// This works in legacy mode because of mutable_source being updated as a whole, but when using $state\n\t\t\t\t// together with actions and mutation, it wouldn't notice the change without a deep read.\n\t\t\t\tdeep_read_state(value);\n\n\t\t\t\tif (inited && safe_not_equal(prev, value)) {\n\t\t\t\t\tprev = value;\n\t\t\t\t\t/** @type {Function} */ (payload.update)(value);\n\t\t\t\t}\n\t\t\t});\n\n\t\t\tinited = true;\n\t\t}\n\n\t\tif (payload?.destroy) {\n\t\t\treturn () => /** @type {Function} */ (payload.destroy)();\n\t\t}\n\t});\n}\n","<svelte:options customElement=\"m-textinput\" />\n\n<script lang=\"ts\">\n import type { TextInputSize, TextInputType } from './textinput.types';\n\n interface Props {\n name: string;\n value: string;\n placeholder: string;\n inputtype?: TextInputType;\n isvalid: boolean;\n isinvalid: boolean;\n disabled?: boolean;\n size?: TextInputSize;\n iconname: string;\n rightalign: boolean;\n min: string;\n max: string;\n minlength: number;\n maxlength: number;\n required?: boolean;\n clearlabel?: string;\n isclearable?: boolean;\n }\n\n let {\n name,\n value,\n placeholder,\n inputtype = 'text',\n isvalid,\n isinvalid,\n disabled = false,\n size = 'm',\n iconname,\n rightalign,\n min,\n max,\n minlength,\n maxlength,\n required = false,\n clearlabel = 'Clear content',\n isclearable = false,\n ...events\n }: Props = $props();\n\n let inputType = $derived(inputtype);\n let displayClear = $derived(isclearable && value ? true : false);\n\n function getClasses(\n isValid: boolean,\n isInvalid: boolean,\n size: TextInputSize,\n iconname: string,\n ): string {\n const classes = ['mc-text-input', 'mc-field__input'];\n\n if (isValid) {\n classes.push('is-valid');\n }\n\n if (isInvalid) {\n classes.push('is-invalid');\n }\n\n if (size === 's') {\n classes.push('mc-text-input--s');\n }\n\n if (iconname) {\n classes.push('mc-left-icon-input__input');\n }\n\n if (rightalign) {\n classes.push('right-align');\n }\n\n return classes.join(' ');\n }\n\n const setType = (node: any) => {\n // eslint-disable-next-line @typescript-eslint/no-unsafe-member-access\n node.type = inputType;\n };\n\n function resetValue() {\n console.log(value);\n value = '';\n }\n</script>\n\n<div class=\"{getClasses(isvalid, isinvalid, size, iconname)} \">\n {#if $$slots.icon}\n <span class=\"mc-text-input__icon\">\n <slot name=\"icon\" />\n </span>\n {/if}\n <input\n bind:value\n use:setType\n class=\"mc-text-input__control\"\n aria-invalid={isinvalid}\n {name}\n id={name}\n {placeholder}\n {disabled}\n {min}\n {max}\n {minlength}\n {maxlength}\n spellcheck=\"false\"\n {required}\n {...events}\n />\n <!-- Control options -->\n {#if displayClear}\n <div class=\"mc-controls-options js-control-options\">\n <!-- Clear Button -->\n <button\n type=\"button\"\n class=\"mc-controls-options__button\"\n onclick={resetValue}\n >\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</div>\n\n<style lang=\"scss\">\n @use '@mozaic-ds/styles/components/controls-options';\n @use '@mozaic-ds/styles/components/text-input';\n\n .right-align {\n text-align: right;\n }\n</style>\n"],"names":["action","dom","get_value","effect","payload","untrack","resetValue","_","value","name","$.prop","$$props","placeholder","inputtype","isvalid","isinvalid","disabled","size","iconname","rightalign","min","max","minlength","maxlength","required","clearlabel","isclearable","events","$.rest_props","inputType","displayClear","getClasses","isValid","isInvalid","classes","setType","node","$.get","$$slots","$$render","consequent","consequent_1"],"mappings":"qVAYO,SAASA,GAAOC,EAAKD,EAAQE,EAAW,CAC9CC,EAAO,IAAM,CACZ,IAAIC,EAAUC,EAAQ,IAAML,EAAOC,EAAKC,GAAA,YAAAA,GAAa,GAAK,EAAE,EAwB5D,GAAIE,GAAA,MAAAA,EAAS,QACZ,MAAO,IAA+BA,EAAQ,QAAU,CAE3D,CAAE,CACF,CC2CW,SAAAE,GAAaC,EAAAC,EAAA,CACpB,QAAQ,IAAIA,GAAK,EACjBA,EAAQ,EAAE,CACZ;;;;;;;;;8IA9DEC,EAAIC,EAAAC,EAAA,OAAA,CAAA,EACJH,EAAKE,EAAAC,EAAA,QAAA,CAAA,EACLC,EAAWF,EAAAC,EAAA,cAAA,CAAA,EACXE,oBAAY,MAAM,EAClBC,EAAOJ,EAAAC,EAAA,UAAA,CAAA,EACPI,EAASL,EAAAC,EAAA,YAAA,CAAA,EACTK,mBAAW,EAAK,EAChBC,eAAO,GAAG,EACVC,EAAQR,EAAAC,EAAA,WAAA,CAAA,EACRQ,EAAUT,EAAAC,EAAA,aAAA,CAAA,EACVS,EAAGV,EAAAC,EAAA,MAAA,CAAA,EACHU,EAAGX,EAAAC,EAAA,MAAA,CAAA,EACHW,EAASZ,EAAAC,EAAA,YAAA,CAAA,EACTY,EAASb,EAAAC,EAAA,YAAA,CAAA,EACTa,mBAAW,EAAK,EAChBC,qBAAa,eAAe,EAC5BC,sBAAc,EAAK,EAChBC,EAAAC,GAAAjB,EAAA,+NAGDkB,IAAqBhB,CAAS,EAC9BiB,QAAwB,GAAAJ,EAAW,GAAIlB,EAAQ,EAAY,WAEtDuB,EACPC,EACAC,EACAhB,EACAC,EACQ,OACFgB,EAAO,CAAI,gBAAiB,iBAAiB,EAE/C,OAAAF,GACFE,EAAQ,KAAK,UAAU,EAGrBD,GACFC,EAAQ,KAAK,YAAY,EAGvBjB,IAAS,KACXiB,EAAQ,KAAK,kBAAkB,EAG7BhB,GACFgB,EAAQ,KAAK,2BAA2B,EAGtCf,EAAU,GACZe,EAAQ,KAAK,aAAa,EAGrBA,EAAQ,KAAK,GAAG,CACzB,OAEMC,EAAWC,GAAc,CAE7BA,EAAK,KAAIC,EAAGR,CAAS,CACtB,wFASIS,EAAQ,MAAIC,EAAAC,CAAA,8HA6BFlC,GAAUE,CAAA,sDAQuBiB,EAAU,CAAA,CAAA,oBAdrDK,CAAY,GAAAS,EAAAE,CAAA,mHAdD1B,EAAS,cAEnBN,EAAI,8GASJkB,uBArBK,IAAAI,EAAWjB,EAAO,EAAEC,EAAS,EAAEE,IAAMC,EAAQ,CAAA,iNA9D1C,OAAM,+JAGP,GAAK,6CACT,IAAG,uWAOC,GAAK,yDACH,gBAAe,2DACd,GAAK","x_google_ignoreList":[0]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Textinput.svelte.d.ts","sourceRoot":"","sources":["../../../src/components/textinput/Textinput.svelte.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAGpE,UAAU,KAAK;IACb,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,aAAa,CAAC;IAC1B,OAAO,EAAE,OAAO,CAAC;IACjB,SAAS,EAAE,OAAO,CAAC;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,IAAI,CAAC,EAAE,aAAa,CAAC;IACrB,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,OAAO,CAAC;IACpB,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;IACZ,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB;AAkGH,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,SAAS;;;;UAAmF,CAAC;AACjF,KAAK,SAAS,GAAG,YAAY,CAAC,OAAO,SAAS,CAAC,CAAC;AAClD,eAAe,SAAS,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"textinput.types.d.ts","sourceRoot":"","sources":["../../../src/components/textinput/textinput.types.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,aAAa,GACrB,MAAM,GACN,OAAO,GACP,QAAQ,GACR,UAAU,GACV,QAAQ,GACR,KAAK,GACL,MAAM,CAAC;AAEX,MAAM,MAAM,aAAa,GAAG,GAAG,GAAG,GAAG,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{d as x,c as z,p as L,a as M,b as o,t as E,e as n,s as P,r as m,f,g as u,h as B,i as s,j as H,k as y}from"
|
|
1
|
+
import{d as x,c as z,p as L,a as M,b as o,t as E,e as n,s as P,r as m,f,g as u,h as B,i as s,j as H,k as y}from"../../custom-element.js";import{i as D}from"../../if.js";import{r as S,s as w,a as j}from"../../attributes.js";import{c as T}from"../../index-client.js";function Y(d,a,l){a(!a()),l("change",a())}var q=E('<span class="mc-toggle__label svelte-2vapv3"> </span>'),A=E('<div><label class="mc-toggle__container svelte-2vapv3"><input class="mc-toggle__input svelte-2vapv3" type="checkbox"> <!></label></div>');const F={hash:"svelte-2vapv3",code:`/**
|
|
2
2
|
* Do not edit directly, this file was auto-generated.
|
|
3
3
|
*/.mc-toggle.svelte-2vapv3 {width:fit-content;}.mc-toggle__container.svelte-2vapv3 {display:flex;align-items:center;cursor:pointer;gap:0.5rem;position:relative;}.mc-toggle__container.svelte-2vapv3::before, .mc-toggle__container.svelte-2vapv3::after {content:"";}.mc-toggle__container.svelte-2vapv3::before {transition:box-shadow 200ms ease;height:1.5rem;width:2.5rem;background-color:var(--forms-color-background-unchecked, #666666);border-radius:1rem;flex-shrink:0;}.mc-toggle__container.svelte-2vapv3::after {height:1.25rem;width:1.25rem;background-color:var(--forms-color-icon-inverse, #ffffff);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' aria-hidden='true' height='1.25rem' width='1.25rem' fill='var(--forms-color-background-unchecked, %23666666)' viewBox='0 0 20 20'%3E%3Cg clip-path='url(%23a)'%3E%3Cpath fill-rule='evenodd' d='M14.697 6.364a.75.75 0 1 0-1.06-1.061L10 8.939 6.364 5.303a.75.75 0 0 0-1.06 1.06L8.94 10l-3.637 3.636a.75.75 0 1 0 1.06 1.06L10 11.062l3.636 3.636a.75.75 0 0 0 1.061-1.06L11.061 10z'/%3E%3C/g%3E%3Cdefs%3E%3CclipPath id='a'%3E%3Cpath fill='%23fff' d='M0 0h20v20H0z'/%3E%3C/clipPath%3E%3C/defs%3E%3C/svg%3E");border-radius:100%;background-position:center;left:0.125rem;position:absolute;top:50%;transform:translateY(-50%);}.mc-toggle__input.svelte-2vapv3 {clip-path:inset(100%);clip:rect(1px, 1px, 1px, 1px);height:1px;overflow:hidden;position:absolute;white-space:nowrap;padding:0;width:1px;}.mc-toggle__label.svelte-2vapv3 {color:var(--forms-color-text-default, #000000);font-size:1rem;font-weight:400;line-height:1.5;}.mc-toggle.svelte-2vapv3:has(:where(.svelte-2vapv3):checked) .mc-toggle__container:where(.svelte-2vapv3)::before {background-color:var(--forms-color-background-checked, #117f03);}.mc-toggle.svelte-2vapv3:has(:where(.svelte-2vapv3):checked) .mc-toggle__container:where(.svelte-2vapv3)::after {background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' aria-hidden='true' height='1.25rem' width='1.25rem' fill='var(--forms-color-background-checked, %23117f03)' viewBox='0 0 20 20'%3E%3Cg clip-path='url(%23a)'%3E%3Cpath fill-rule='evenodd' d='M14.697 6.553a.75.75 0 0 1 0 1.06l-5.833 5.834a.75.75 0 0 1-1.06 0l-2.5-2.5a.75.75 0 0 1 1.06-1.06l1.97 1.97 5.303-5.304a.75.75 0 0 1 1.06 0'/%3E%3C/g%3E%3Cdefs%3E%3CclipPath id='a'%3E%3Cpath fill='%23fff' d='M0 0h20v20H0z'/%3E%3C/clipPath%3E%3C/defs%3E%3C/svg%3E");transform:translate(1rem, -50%);}.mc-toggle.svelte-2vapv3:has(:where(.svelte-2vapv3):disabled) .mc-toggle__container:where(.svelte-2vapv3) {cursor:not-allowed;}.mc-toggle.svelte-2vapv3:has(:where(.svelte-2vapv3):disabled) .mc-toggle__container:where(.svelte-2vapv3)::before {background-color:var(--forms-color-background-disabled, #d9d9d9);}.mc-toggle.svelte-2vapv3:has(:where(.svelte-2vapv3):disabled) .mc-toggle__container:where(.svelte-2vapv3)::after {background-color:var(--forms-color-icon-disabled, #737373);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' aria-hidden='true' height='1.25rem' width='1.25rem' fill='var(--forms-color-background-disabled, %23d9d9d9)' viewBox='0 0 20 20'%3E%3Cg clip-path='url(%23a)'%3E%3Cpath fill-rule='evenodd' d='M14.697 6.364a.75.75 0 1 0-1.06-1.061L10 8.939 6.364 5.303a.75.75 0 0 0-1.06 1.06L8.94 10l-3.637 3.636a.75.75 0 1 0 1.06 1.06L10 11.062l3.636 3.636a.75.75 0 0 0 1.061-1.06L11.061 10z'/%3E%3C/g%3E%3Cdefs%3E%3CclipPath id='a'%3E%3Cpath fill='%23fff' d='M0 0h20v20H0z'/%3E%3C/clipPath%3E%3C/defs%3E%3C/svg%3E");}.mc-toggle.svelte-2vapv3:has(:where(.svelte-2vapv3):disabled) .mc-toggle__label:where(.svelte-2vapv3) {color:var(--forms-color-text-disabled, #737373);}.mc-toggle.svelte-2vapv3:has(:where(.svelte-2vapv3):disabled:checked) .mc-toggle__container:where(.svelte-2vapv3)::after {background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' aria-hidden='true' height='1.25rem' width='1.25rem' fill='var(--forms-color-background-disabled, %23d9d9d9)' viewBox='0 0 20 20'%3E%3Cg clip-path='url(%23a)'%3E%3Cpath fill-rule='evenodd' d='M14.697 6.553a.75.75 0 0 1 0 1.06l-5.833 5.834a.75.75 0 0 1-1.06 0l-2.5-2.5a.75.75 0 0 1 1.06-1.06l1.97 1.97 5.303-5.304a.75.75 0 0 1 1.06 0'/%3E%3C/g%3E%3Cdefs%3E%3CclipPath id='a'%3E%3Cpath fill='%23fff' d='M0 0h20v20H0z'/%3E%3C/clipPath%3E%3C/defs%3E%3C/svg%3E");}.mc-toggle.svelte-2vapv3:has(:where(.svelte-2vapv3):focus-visible) .mc-toggle__container:where(.svelte-2vapv3)::before {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-toggle--m.svelte-2vapv3 .mc-toggle__container:where(.svelte-2vapv3)::before {height:2rem;width:3.5rem;}.mc-toggle--m.svelte-2vapv3 .mc-toggle__container:where(.svelte-2vapv3)::after {height:1.5rem;width:1.5rem;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' aria-hidden='true' height='1.5rem' width='1.5rem' fill='var(--forms-color-background-unchecked, %23666666)' viewBox='0 0 24 24'%3E%3Cg clip-path='url(%23a)'%3E%3Cpath fill-rule='evenodd' d='M17.707 7.707a1 1 0 0 0-1.414-1.414L12 10.586 7.707 6.293a1 1 0 0 0-1.414 1.414L10.586 12l-4.293 4.293a1 1 0 1 0 1.414 1.414L12 13.414l4.293 4.293a1 1 0 0 0 1.414-1.414L13.414 12z'/%3E%3C/g%3E%3Cdefs%3E%3CclipPath id='a'%3E%3Cpath fill='%23fff' d='M0 0h24v24H0z'/%3E%3C/clipPath%3E%3C/defs%3E%3C/svg%3E");left:0.25rem;}.mc-toggle--m.svelte-2vapv3:has(:where(.svelte-2vapv3):checked) .mc-toggle__container:where(.svelte-2vapv3)::after {background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' aria-hidden='true' height='1.5rem' width='1.5rem' fill='var(--forms-color-background-checked, %23117f03)' viewBox='0 0 24 24'%3E%3Cg clip-path='url(%23a)'%3E%3Cpath fill-rule='evenodd' d='M17.707 7.793a1 1 0 0 1 0 1.414l-7 7a1 1 0 0 1-1.414 0l-3-3a1 1 0 1 1 1.414-1.414L10 14.086l6.293-6.293a1 1 0 0 1 1.414 0'/%3E%3C/g%3E%3Cdefs%3E%3CclipPath id='a'%3E%3Cpath fill='%23fff' d='M0 0h24v24H0z'/%3E%3C/clipPath%3E%3C/defs%3E%3C/svg%3E");transform:translate(1.5rem, -50%);}.mc-toggle--m.svelte-2vapv3:has(:where(.svelte-2vapv3):disabled) .mc-toggle__container:where(.svelte-2vapv3)::after {background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' aria-hidden='true' height='1.5rem' width='1.5rem' fill='var(--forms-color-background-disabled, %23d9d9d9)' viewBox='0 0 24 24'%3E%3Cg clip-path='url(%23a)'%3E%3Cpath fill-rule='evenodd' d='M17.707 7.707a1 1 0 0 0-1.414-1.414L12 10.586 7.707 6.293a1 1 0 0 0-1.414 1.414L10.586 12l-4.293 4.293a1 1 0 1 0 1.414 1.414L12 13.414l4.293 4.293a1 1 0 0 0 1.414-1.414L13.414 12z'/%3E%3C/g%3E%3Cdefs%3E%3CclipPath id='a'%3E%3Cpath fill='%23fff' d='M0 0h24v24H0z'/%3E%3C/clipPath%3E%3C/defs%3E%3C/svg%3E");}.mc-toggle--m.svelte-2vapv3:has(:where(.svelte-2vapv3):disabled:checked) .mc-toggle__container:where(.svelte-2vapv3)::after {background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' aria-hidden='true' height='1.5rem' width='1.5rem' fill='var(--forms-color-background-disabled, %23d9d9d9)' viewBox='0 0 24 24'%3E%3Cg clip-path='url(%23a)'%3E%3Cpath fill-rule='evenodd' d='M17.707 7.793a1 1 0 0 1 0 1.414l-7 7a1 1 0 0 1-1.414 0l-3-3a1 1 0 1 1 1.414-1.414L10 14.086l6.293-6.293a1 1 0 0 1 1.414 0'/%3E%3C/g%3E%3Cdefs%3E%3CclipPath id='a'%3E%3Cpath fill='%23fff' d='M0 0h24v24H0z'/%3E%3C/clipPath%3E%3C/defs%3E%3C/svg%3E");}.mc-toggle--hide-label.svelte-2vapv3 .mc-toggle__label:where(.svelte-2vapv3) {clip-path:inset(100%);clip:rect(1px, 1px, 1px, 1px);height:1px;overflow:hidden;position:absolute;white-space:nowrap;padding:0;width:1px;}`};function G(d,a){L(a,!0),M(d,F);let l=o(a,"name",7),i=o(a,"checked",15),g=o(a,"disabled",7,!1),c=o(a,"size",7,"m"),r=o(a,"label",7),C=T();var v=A(),p=n(v),t=n(p);S(t),t.__click=[Y,i,C];var b=P(t,2);{var _=e=>{var h=q(),k=n(h,!0);m(h),f(()=>H(k,r())),u(e,h)};D(b,e=>{r()&&e(_)})}return m(p),m(v),f(()=>{y(v,1,`mc-toggle ${(r()?"":" mc-toggle--hide-label")??""} ${(c()==="m"?" mc-toggle--m":"")??""}`,"svelte-2vapv3"),w(t,"id",l()),w(t,"name",l()),j(t,i()),t.disabled=g()}),u(d,v),B({get name(){return l()},set name(e){l(e),s()},get checked(){return i()},set checked(e){i(e),s()},get disabled(){return g()},set disabled(e=!1){g(e),s()},get size(){return c()},set size(e="m"){c(e),s()},get label(){return r()},set label(e){r(e),s()}})}x(["click"]);customElements.define("m-toggle",z(G,{name:{},checked:{},disabled:{},size:{},label:{}},[],[],!0));
|
|
4
4
|
//# sourceMappingURL=Toggle.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Toggle.js","sources":["../../../src/components/toggle/Toggle.svelte"],"sourcesContent":["<svelte:options customElement=\"m-toggle\" />\n\n<script lang=\"ts\">\n import type { ToggleSize } from './toggle.types';\n import { createEventDispatcher } from 'svelte';\n\n interface Props {\n name: string;\n checked: boolean;\n disabled?: boolean;\n size?: ToggleSize;\n label: string;\n }\n\n let {\n name,\n checked = $bindable(),\n disabled = false,\n size = 'm',\n label,\n }: Props = $props();\n\n let dispatch = createEventDispatcher();\n\n function handleState(): void {\n checked = !checked;\n dispatch('change', checked);\n }\n</script>\n\n<div\n class=\"mc-toggle {!label ? ' mc-toggle--hide-label' : ''} {size === 'm'\n ? ' mc-toggle--m'\n : ''}\"\n>\n <label class=\"mc-toggle__container\">\n <input\n class=\"mc-toggle__input\"\n id={name}\n {name}\n type=\"checkbox\"\n {checked}\n {disabled}\n onclick={handleState}\n />\n {#if label}\n <span class=\"mc-toggle__label\">{label}</span>\n {/if}\n </label>\n</div>\n\n<style lang=\"scss\">\n @use '@mozaic-ds/styles/components/toggle';\n</style>\n"],"names":["handleState","_","checked","dispatch","name","$.prop","$$props","disabled","size","label","createEventDispatcher","$$render","consequent"],"mappings":"yQAwBW,SAAAA,EAAoBC,EAAAC,EAAAC,EAAA,CAC3BD,GAAWA,GAAO,EAClBC,EAAS,SAAUD,GAAO,CAC5B;;8kPAZEE,EAAIC,EAAAC,EAAA,OAAA,CAAA,EACJJ,EAAOG,EAAAC,EAAA,UAAA,EAAA,EACPC,mBAAW,EAAK,EAChBC,eAAO,GAAG,EACVC,EAAKJ,EAAAC,EAAA,QAAA,CAAA,EAGHH,EAAWO,EAAqB,0CAqBvBV,EAAWE,EAAAC,CAAA,6DAGYM,EAAK,CAAA,CAAA,kBADlCA,EAAK,GAAAE,EAAAC,CAAA,gDAdOH,EAAK,EAA8B,GAA3B,2BAA6B,EAAA,KAAGD,EAAI,IAAK,IAChE,gBACA,KAAE,EAAA,GAAA,eAAA,WAKEJ,GAAI,gMArBC,GAAK,6CACT,IAAG"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Toggle.svelte.d.ts","sourceRoot":"","sources":["../../../src/components/toggle/Toggle.svelte.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAI/C,UAAU,KAAK;IACb,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,OAAO,CAAC;IACjB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,IAAI,CAAC,EAAE,UAAU,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;CACf;AAuCH,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;AAKD,QAAA,MAAM,MAAM;;;;qBAA6E,CAAC;AACxE,KAAK,MAAM,GAAG,YAAY,CAAC,OAAO,MAAM,CAAC,CAAC;AAC5C,eAAe,MAAM,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"toggle.types.d.ts","sourceRoot":"","sources":["../../../src/components/toggle/toggle.types.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,UAAU,GAAG,GAAG,GAAG,GAAG,CAAC"}
|
package/dist/main.d.ts
ADDED
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import Button from './components/button/Button.svelte';
|
|
2
|
+
import Checkbox from './components/checkbox/Checkbox.svelte';
|
|
3
|
+
import CheckboxGroup from './components/checkboxgroup/checkboxGroup.svelte';
|
|
4
|
+
import Textarea from './components/textarea/Textarea.svelte';
|
|
5
|
+
import Select from './components/select/Select.svelte';
|
|
6
|
+
import Toggle from './components/toggle/Toggle.svelte';
|
|
7
|
+
import Field from './components/field/Field.svelte';
|
|
8
|
+
import Link from './components/link/Link.svelte';
|
|
9
|
+
import Loader from './components/loader/Loader.svelte';
|
|
10
|
+
import Textinput from './components/textinput/Textinput.svelte';
|
|
11
|
+
import Overlay from './components/overlay/Overlay.svelte';
|
|
12
|
+
import OverlayLoader from './components/overlay/OverlayLoader.svelte';
|
|
13
|
+
import Radio from './components/radio/Radio.svelte';
|
|
14
|
+
import RadioGroup from './components/radiogroup/RadioGroup.svelte';
|
|
15
|
+
import QuantitySelector from './components/quantityselector/QuantitySelector.svelte';
|
|
16
|
+
import Badge from './components/badge/Badge.svelte';
|
|
17
|
+
export { Button, Checkbox, CheckboxGroup, Textarea, Select, Toggle, Field, Link, Loader, Textinput, Overlay, OverlayLoader, Radio, RadioGroup, QuantitySelector, Badge, };
|
|
18
|
+
//# sourceMappingURL=main.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"main.d.ts","sourceRoot":"","sources":["../src/main.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,mCAAmC,CAAC;AACvD,OAAO,QAAQ,MAAM,uCAAuC,CAAC;AAC7D,OAAO,aAAa,MAAM,iDAAiD,CAAC;AAC5E,OAAO,QAAQ,MAAM,uCAAuC,CAAC;AAC7D,OAAO,MAAM,MAAM,mCAAmC,CAAC;AACvD,OAAO,MAAM,MAAM,mCAAmC,CAAC;AACvD,OAAO,KAAK,MAAM,iCAAiC,CAAC;AACpD,OAAO,IAAI,MAAM,+BAA+B,CAAC;AACjD,OAAO,MAAM,MAAM,mCAAmC,CAAC;AACvD,OAAO,SAAS,MAAM,yCAAyC,CAAC;AAChE,OAAO,OAAO,MAAM,qCAAqC,CAAC;AAC1D,OAAO,aAAa,MAAM,2CAA2C,CAAC;AACtE,OAAO,KAAK,MAAM,iCAAiC,CAAC;AACpD,OAAO,UAAU,MAAM,2CAA2C,CAAC;AACnE,OAAO,gBAAgB,MAAM,uDAAuD,CAAC;AACrF,OAAO,KAAK,MAAM,iCAAiC,CAAC;AAEpD,OAAO,EACL,MAAM,EACN,QAAQ,EACR,aAAa,EACb,QAAQ,EACR,MAAM,EACN,MAAM,EACN,KAAK,EACL,IAAI,EACJ,MAAM,EACN,SAAS,EACT,OAAO,EACP,aAAa,EACb,KAAK,EACL,UAAU,EACV,gBAAgB,EAChB,KAAK,GACN,CAAC"}
|
package/dist/main.js
ADDED
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import Button from './components/button/Button.svelte';
|
|
2
|
+
import Checkbox from './components/checkbox/Checkbox.svelte';
|
|
3
|
+
import CheckboxGroup from './components/checkboxgroup/checkboxGroup.svelte';
|
|
4
|
+
import Textarea from './components/textarea/Textarea.svelte';
|
|
5
|
+
import Select from './components/select/Select.svelte';
|
|
6
|
+
import Toggle from './components/toggle/Toggle.svelte';
|
|
7
|
+
import Field from './components/field/Field.svelte';
|
|
8
|
+
import Link from './components/link/Link.svelte';
|
|
9
|
+
import Loader from './components/loader/Loader.svelte';
|
|
10
|
+
import Textinput from './components/textinput/Textinput.svelte';
|
|
11
|
+
import Overlay from './components/overlay/Overlay.svelte';
|
|
12
|
+
import OverlayLoader from './components/overlay/OverlayLoader.svelte';
|
|
13
|
+
import Radio from './components/radio/Radio.svelte';
|
|
14
|
+
import RadioGroup from './components/radiogroup/RadioGroup.svelte';
|
|
15
|
+
import QuantitySelector from './components/quantityselector/QuantitySelector.svelte';
|
|
16
|
+
import Badge from './components/badge/Badge.svelte';
|
|
17
|
+
export { Button, Checkbox, CheckboxGroup, Textarea, Select, Toggle, Field, Link, Loader, Textinput, Overlay, OverlayLoader, Radio, RadioGroup, QuantitySelector, Badge, };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
Contributing
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
import { Meta } from '@storybook/addon-docs';
|
|
2
|
+
|
|
3
|
+
<Meta title="Write stories" />
|
|
4
|
+
|
|
5
|
+
<h1 align="center">How to write stories</h1>
|
|
6
|
+
|
|
7
|
+
To test and showcase our web components library we've decided to use stories from Storybook.
|
|
8
|
+
To have a consistent project and be easy to contribute to, we have to enforce the story's `title`, `name`, and `description`.
|
|
9
|
+
It will ensure that all cases are covered.
|
|
10
|
+
|
|
11
|
+
## General rules
|
|
12
|
+
|
|
13
|
+
Use your stories as tests to cover most cases, keep in mind those test cases:
|
|
14
|
+
|
|
15
|
+
- Mock all data scenarios
|
|
16
|
+
- Long label or user input
|
|
17
|
+
- Error case
|
|
18
|
+
- Loading state
|
|
19
|
+
- No data
|
|
20
|
+
|
|
21
|
+
## Names
|
|
22
|
+
|
|
23
|
+
- If you only have one story, name it `default`.
|
|
24
|
+
- If you have one main story, and a few other cases, name it `default`.
|
|
25
|
+
- Try not to use the component state as story name e.g. `disabled`.
|
|
26
|
+
|
|
27
|
+
## Names
|
|
28
|
+
|
|
29
|
+
- If you only have one story, name it `default`.
|
|
30
|
+
- If you have one main story, and a few other cases, name it `default`.
|
|
31
|
+
- Try not to use the component state as story name e.g. `disabled`.
|
|
32
|
+
|
|
33
|
+
## How it works
|
|
34
|
+
|
|
35
|
+
Create a story named `{ComponentName}.stories.ts` in `src/stories/{componentname)/`.
|
|
36
|
+
|
|
37
|
+
We're using an html version of [storybook](https://storybook.js.org/docs/html/writing-stories/introduction) to showcase web components.
|
|
38
|
+
|
|
39
|
+
1 - Import storybook Object
|
|
40
|
+
|
|
41
|
+
```js
|
|
42
|
+
import type { Story, Meta } from '@storybook/html';
|
|
43
|
+
```
|
|
44
|
+
|
|
45
|
+
2 - Instantiate the story
|
|
46
|
+
|
|
47
|
+
```js
|
|
48
|
+
export default {
|
|
49
|
+
title: 'Components/{ComponentName}',
|
|
50
|
+
argTypes: {
|
|
51
|
+
label: { control: 'text' },
|
|
52
|
+
size: {
|
|
53
|
+
control: { type: 'radio' },
|
|
54
|
+
options: ['s', 'm', 'l'],
|
|
55
|
+
},
|
|
56
|
+
disabled: { control: 'boolean' },
|
|
57
|
+
...
|
|
58
|
+
},
|
|
59
|
+
} as Meta;
|
|
60
|
+
```
|
|
61
|
+
|
|
62
|
+
3 - Create a story template
|
|
63
|
+
The template can be treated as the `default` story.
|
|
64
|
+
|
|
65
|
+
```js
|
|
66
|
+
const Template: Story = (args) => {
|
|
67
|
+
// Initiate the web-component
|
|
68
|
+
const primary = document.createElement('m-your-component');
|
|
69
|
+
|
|
70
|
+
// Set props to the component
|
|
71
|
+
primary.setAttribute('label', 'Primary');
|
|
72
|
+
primary.setAttribute('size', args.size);
|
|
73
|
+
|
|
74
|
+
// Return HTMl as string format
|
|
75
|
+
return `<div>${primary.outerHTML}</div>`;
|
|
76
|
+
};
|
|
77
|
+
```
|
|
78
|
+
|
|
79
|
+
4 - Bind story to template
|
|
80
|
+
|
|
81
|
+
```js
|
|
82
|
+
export const Bordered = Template.bind({});
|
|
83
|
+
Bordered.args = {
|
|
84
|
+
bordered: true,
|
|
85
|
+
};
|
|
86
|
+
```
|
|
@@ -0,0 +1,131 @@
|
|
|
1
|
+
import { Meta } from '@storybook/addon-docs';
|
|
2
|
+
|
|
3
|
+
<Meta title="Introduction" />
|
|
4
|
+
|
|
5
|
+
<style></style>
|
|
6
|
+
|
|
7
|
+
<h1 align="center">Mozaic-web-components</h1>
|
|
8
|
+
|
|
9
|
+
> This project contains a collection of Svelte and Web Component that implements the [Mozaic Design System](https://github.com/adeo/mozaic-design-system) guidelines.
|
|
10
|
+
|
|
11
|
+
<p align="center">
|
|
12
|
+
<a href="https://github.com/adeo/mozaic-web-components/blob/master/.eslintrc.js">
|
|
13
|
+
<img
|
|
14
|
+
src="https://img.shields.io/badge/code_style-prettier-ff69b4.svg?style=flat-square)"
|
|
15
|
+
alt="Prettier badge"
|
|
16
|
+
/>
|
|
17
|
+
</a>
|
|
18
|
+
<a href="https://github.com/adeo/mozaic-web-components/issues">
|
|
19
|
+
<img
|
|
20
|
+
src="https://img.shields.io/badge/PRs-welcome-brightgreen.svg"
|
|
21
|
+
alt="PRs welcome"
|
|
22
|
+
/>
|
|
23
|
+
</a>
|
|
24
|
+
</p>
|
|
25
|
+
|
|
26
|
+
# Getting Started
|
|
27
|
+
|
|
28
|
+
All the available components are showcased in our [Storybook](https://ubiquitous-giggle-7b5b6e33.pages.github.io/?path=/story/components-button--solid).
|
|
29
|
+
|
|
30
|
+
To install mozaic `web-components` in your project, you will need to run the following command using `npm`:
|
|
31
|
+
|
|
32
|
+
```
|
|
33
|
+
npm install --save @mozaic-ds/web-components
|
|
34
|
+
```
|
|
35
|
+
|
|
36
|
+
If you prefer `Yarn`, use the following command instead:
|
|
37
|
+
|
|
38
|
+
```
|
|
39
|
+
yarn add @mozaic-ds/web-components
|
|
40
|
+
```
|
|
41
|
+
|
|
42
|
+
## Usage
|
|
43
|
+
|
|
44
|
+
Our library offers Svelte components and Web components.
|
|
45
|
+
|
|
46
|
+
1 - Svelte
|
|
47
|
+
|
|
48
|
+
Import the Button component:
|
|
49
|
+
|
|
50
|
+
```js
|
|
51
|
+
import Button from '@mozaic-ds/web-components/public/components/button/Button.svelte';
|
|
52
|
+
// import Mozaic icons as web component
|
|
53
|
+
import '@mozaic-ds/icons-svelte';
|
|
54
|
+
```
|
|
55
|
+
|
|
56
|
+
2 - Web components
|
|
57
|
+
|
|
58
|
+
We currently offers two ways to load web-components
|
|
59
|
+
|
|
60
|
+
Import all components:
|
|
61
|
+
The easiest way to consume mozaic-web-components, is to import all the web-components and make them available in your application.
|
|
62
|
+
|
|
63
|
+
```js
|
|
64
|
+
// In the entry point file of your application - usually src/main.js
|
|
65
|
+
import '@mozaic-ds/web-components/public/bundle.js';
|
|
66
|
+
import '@mozaic-ds/icons-svelte';
|
|
67
|
+
```
|
|
68
|
+
|
|
69
|
+
Import component individually:
|
|
70
|
+
|
|
71
|
+
If you do not want to use all the components of the library, but only some of them, you can proceed as follows:
|
|
72
|
+
|
|
73
|
+
```js
|
|
74
|
+
// In the entry point file of your application - usually src/main.js
|
|
75
|
+
|
|
76
|
+
import Button from '@mozaic-ds/web-components/public/components/button/Button.js';
|
|
77
|
+
if (!customElements.get('m-button')) {
|
|
78
|
+
customElements.define('m-button', Button);
|
|
79
|
+
}
|
|
80
|
+
...
|
|
81
|
+
import ChevronRight20 from '@mozaic-ds/icons-svelte/dist/custom-elements/ChevronRight20/ChevronRight20.js';
|
|
82
|
+
|
|
83
|
+
if (!customElements.get('ui-chevron-right-20')) {
|
|
84
|
+
customElements.define(
|
|
85
|
+
'ui-chevron-right-20',
|
|
86
|
+
ChevronRight20
|
|
87
|
+
)
|
|
88
|
+
}
|
|
89
|
+
```
|
|
90
|
+
|
|
91
|
+
> NOTE: We recommend you to define mozaic web component using the prefix `m-*`
|
|
92
|
+
|
|
93
|
+
Once you've imported the component, you can use our components in the same manner as native HTML tags:
|
|
94
|
+
|
|
95
|
+
```html
|
|
96
|
+
<m-button label="Label" size="m"></m-button>
|
|
97
|
+
<m-ratings
|
|
98
|
+
size="s"
|
|
99
|
+
value="3"
|
|
100
|
+
suffixlabel="7 reviews"
|
|
101
|
+
a11ylabel="Global score: 4/5"
|
|
102
|
+
></m-ratings>
|
|
103
|
+
...
|
|
104
|
+
```
|
|
105
|
+
|
|
106
|
+
### Adeo Preset
|
|
107
|
+
|
|
108
|
+
In order to use Mozaic web components with Adeo preset, you have to import a specific path:
|
|
109
|
+
|
|
110
|
+
```js
|
|
111
|
+
import '@mozaic-ds/web-components/public/adeo/...';
|
|
112
|
+
```
|
|
113
|
+
|
|
114
|
+
> NOTE: This is for global or individual imports
|
|
115
|
+
|
|
116
|
+
## Project setup
|
|
117
|
+
|
|
118
|
+
```
|
|
119
|
+
npm install
|
|
120
|
+
npm run build && npm run build:icons
|
|
121
|
+
```
|
|
122
|
+
|
|
123
|
+
### Compiles and hot-reloads for development
|
|
124
|
+
|
|
125
|
+
```
|
|
126
|
+
npm run start
|
|
127
|
+
```
|
|
128
|
+
|
|
129
|
+
Contributing
|
|
130
|
+
|
|
131
|
+
We're always looking for contributors to help us fix bugs, build features, or help us improve the documentation. If you're intersted chec out our [Contribution Guide](https://github.com/adeo/mozaic-web-components/wiki/Contributing).
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
import { Meta } from '@storybook/addon-docs';
|
|
2
|
+
|
|
3
|
+
<Meta title="Status" />
|
|
4
|
+
|
|
5
|
+
# Components status
|
|
6
|
+
|
|
7
|
+
✔️ - Published | 💛 - Planned | 💙 - Work in progress | ✖️ - Not planned
|
|
8
|
+
|
|
9
|
+
| Component | Status |
|
|
10
|
+
| ------------------ | ------ |
|
|
11
|
+
| Accordion | ✔️ |
|
|
12
|
+
| Badge | ✔️ |
|
|
13
|
+
| BarChart | ✔️ |
|
|
14
|
+
| Breadcrumbs | ✔️ |
|
|
15
|
+
| Button | ✔️ |
|
|
16
|
+
| Card | ✔️ |
|
|
17
|
+
| CheckBox | ✔️ |
|
|
18
|
+
| CheckBox group | ✔️ |
|
|
19
|
+
| Divider | ✖️ |
|
|
20
|
+
| DonutChart | ✔️ |
|
|
21
|
+
| Datatable | ✔️ |
|
|
22
|
+
| Field | ✔️ |
|
|
23
|
+
| FileUploader | 💙 |
|
|
24
|
+
| Flag | ✔️ |
|
|
25
|
+
| Header | ✔️ |
|
|
26
|
+
| GroupBarChart | ✔️ |
|
|
27
|
+
| Heading | ✖️ |
|
|
28
|
+
| Hero | ✔️ |
|
|
29
|
+
| Layer | ✔️ |
|
|
30
|
+
| LineChart | ✔️ |
|
|
31
|
+
| Link | ✔️ |
|
|
32
|
+
| Modal | ✔️ |
|
|
33
|
+
| Notification | ✔️ |
|
|
34
|
+
| OptionButton | 💙 |
|
|
35
|
+
| OptionCard | 💙 |
|
|
36
|
+
| Notification | ✔️ |
|
|
37
|
+
| Pagination | ✔️ |
|
|
38
|
+
| Password input | ✖️ |
|
|
39
|
+
| Phone number input | 💙 |
|
|
40
|
+
| ProgressBar | ✔️ |
|
|
41
|
+
| Radio | ✔️ |
|
|
42
|
+
| Radio group | ✔️ |
|
|
43
|
+
| RatingStarsInput | ✔️ |
|
|
44
|
+
| RatingStars | ✔️ |
|
|
45
|
+
| QuantitySelector | ✔️ |
|
|
46
|
+
| Select | ✔️ |
|
|
47
|
+
| Sidebar | ✔️ |
|
|
48
|
+
| StackBarChart | ✔️ |
|
|
49
|
+
| Stepper | ✔️ |
|
|
50
|
+
| Tabs | ✔️ |
|
|
51
|
+
| Tags | ✔️ |
|
|
52
|
+
| Text | ✔️ |
|
|
53
|
+
| TextArea | ✔️ |
|
|
54
|
+
| TextInput | ✔️ |
|
|
55
|
+
| Toggle | ✔️ |
|
|
56
|
+
| Tooltip | ✔️ |
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
import { Meta } from '@storybook/addon-docs';
|
|
2
|
+
|
|
3
|
+
<Meta
|
|
4
|
+
title="Support & Onboarding"
|
|
5
|
+
parameters={{
|
|
6
|
+
layout: 'fullscreen',
|
|
7
|
+
viewMode: 'docs',
|
|
8
|
+
previewTabs: {
|
|
9
|
+
canvas: { hidden: true },
|
|
10
|
+
},
|
|
11
|
+
}}
|
|
12
|
+
/>
|
|
13
|
+
|
|
14
|
+
<style>
|
|
15
|
+
{`
|
|
16
|
+
.mc-button--mdx {
|
|
17
|
+
color: #fff;
|
|
18
|
+
}
|
|
19
|
+
`}
|
|
20
|
+
</style>
|
|
21
|
+
|
|
22
|
+
# Need help?
|
|
23
|
+
|
|
24
|
+
## Support
|
|
25
|
+
|
|
26
|
+
Any feedback, ideas or questions?
|
|
27
|
+
|
|
28
|
+
The **Mozaic Design System team** would welcome any feedback, ideas, or requirements that you have.<br/>
|
|
29
|
+
Our goal is to make your lives easier.
|
|
30
|
+
|
|
31
|
+
If you want to get more detailed information on the components or any other topic related to Mozaic web-components, you can contact us through the channels below.
|
|
32
|
+
|
|
33
|
+
- Join the [#mozaic-web-component](https://adeo-tech-community.slack.com/archives/C021A2J25C4) channel on **Slack**
|
|
34
|
+
- Join the [#mozaic-support](https://app.slack.com/client/T4R6RCZFA/CKQJZL7C4/) channel on **Slack**
|
|
35
|
+
- Join our [Workplace group](https://adeo.workplace.com/groups/427492661454646/) **Mozaic Design System**
|
|
36
|
+
|
|
37
|
+
## Demo
|
|
38
|
+
|
|
39
|
+
Once a month, on the last Thursday of the month, the Design System team organises a retro/demo.
|
|
40
|
+
|
|
41
|
+
On the agenda:
|
|
42
|
+
|
|
43
|
+
- Presentation of the main features on the library of the past month
|
|
44
|
+
- Open discussion about your needs, feedbacks & requests
|
|
45
|
+
- Technical discussion about the direction of the project.
|
|
46
|
+
|
|
47
|
+
Want to be a part of it?! <br/>
|
|
48
|
+
Nothing could be easier, you just have to add the **Demo - Mozaic-Web-Component** agenda to yours, by clicking on this link below:
|
|
49
|
+
|
|
50
|
+
- Join our [Mozaic web components demo](https://calendar.google.com/calendar/u/1?cid=Y19jYmU2ZmFmM2NkODE1NGYyMzkyOTU3MzQyZDdhNjIyNmU2YmVhYjNlNjkwMTM1YjY4MDM0MDJlYTgzNTdhMzA0QGdyb3VwLmNhbGVuZGFyLmdvb2dsZS5jb20)
|
|
51
|
+
|
|
52
|
+
## Onboarding Sessions
|
|
53
|
+
|
|
54
|
+
Are you new to using a design system, and in particular Mozaic?<br/>
|
|
55
|
+
Do you want to know more about how **Mozaic** works, and more specifically how to use Mozaic-web-components?<br/>
|
|
56
|
+
You need a personalized support to install or configure your project?
|
|
57
|
+
|
|
58
|
+
The **Mozaic Design System team** is at your disposal for that.
|
|
59
|
+
|
|
60
|
+
Do not hesitate to book a slot for **an onboarding session**, by going to this url:
|
|
61
|
+
|
|
62
|
+
- I book an [onboarding session](https://calendar.google.com/calendar/u/0/appointments/AcZssZ13Wlk-9EHijqW461I_re20kxmteeTAm850Ob4=)
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { StoryFn, Meta } from '@storybook/html';
|
|
2
|
+
declare const _default: Meta;
|
|
3
|
+
export default _default;
|
|
4
|
+
export declare const Default: StoryFn;
|
|
5
|
+
export declare const CustomLabel: StoryFn;
|
|
6
|
+
export declare const AccentStyle: StoryFn;
|
|
7
|
+
export declare const SmallSize: StoryFn;
|
|
8
|
+
//# sourceMappingURL=Badge.stories.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Badge.stories.d.ts","sourceRoot":"","sources":["../../../src/stories/badge/Badge.stories.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAC;wBAwChD,IAAI;AA7BT,wBA6BU;AAWV,eAAO,MAAM,OAAO,SAAoB,CAAC;AAQzC,eAAO,MAAM,WAAW,SAAoB,CAAC;AAQ7C,eAAO,MAAM,WAAW,SAAoB,CAAC;AAO7C,eAAO,MAAM,SAAS,SAAoB,CAAC"}
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
import { action } from '@storybook/addon-actions';
|
|
2
|
+
import { BADGE } from '@geometricpanda/storybook-addon-badges';
|
|
3
|
+
import { userEvent, within, expect } from '@storybook/test';
|
|
4
|
+
export default {
|
|
5
|
+
title: 'Indicators/Badge (number)',
|
|
6
|
+
argTypes: {
|
|
7
|
+
label: {
|
|
8
|
+
description: 'Specify the badge label',
|
|
9
|
+
control: 'text',
|
|
10
|
+
},
|
|
11
|
+
style: {
|
|
12
|
+
description: 'Specify the badge type',
|
|
13
|
+
control: { type: 'radio' },
|
|
14
|
+
options: ['standard', 'accent', 'danger', 'inverse'],
|
|
15
|
+
},
|
|
16
|
+
size: {
|
|
17
|
+
description: 'Specify the size of the badge, available sizes are `s`, `m`',
|
|
18
|
+
control: { type: 'radio' },
|
|
19
|
+
options: ['s', 'm'],
|
|
20
|
+
},
|
|
21
|
+
change: {
|
|
22
|
+
name: 'click',
|
|
23
|
+
action: 'click',
|
|
24
|
+
table: {
|
|
25
|
+
category: 'Events',
|
|
26
|
+
},
|
|
27
|
+
},
|
|
28
|
+
},
|
|
29
|
+
parameters: {
|
|
30
|
+
badges: [BADGE.STABLE],
|
|
31
|
+
},
|
|
32
|
+
};
|
|
33
|
+
const Template = (args) => {
|
|
34
|
+
const primary = document.createElement('m-badge');
|
|
35
|
+
primary.setAttribute('label', args.label || '99');
|
|
36
|
+
if (args.style)
|
|
37
|
+
primary.setAttribute('style', args.style);
|
|
38
|
+
if (args.size)
|
|
39
|
+
primary.setAttribute('size', args.size || 'm');
|
|
40
|
+
primary.addEventListener('click', action('click'));
|
|
41
|
+
return primary;
|
|
42
|
+
};
|
|
43
|
+
export const Default = Template.bind({});
|
|
44
|
+
Default.args = {};
|
|
45
|
+
Default.play = async ({ canvasElement }) => {
|
|
46
|
+
const badge = within(canvasElement).getByText('99');
|
|
47
|
+
expect(badge).not.toBeNull();
|
|
48
|
+
await userEvent.click(badge);
|
|
49
|
+
};
|
|
50
|
+
export const CustomLabel = Template.bind({});
|
|
51
|
+
CustomLabel.args = { label: 'X' };
|
|
52
|
+
CustomLabel.play = async ({ canvasElement }) => {
|
|
53
|
+
const badge = within(canvasElement).getByText('X');
|
|
54
|
+
expect(badge).not.toBeNull();
|
|
55
|
+
await userEvent.click(badge);
|
|
56
|
+
};
|
|
57
|
+
export const AccentStyle = Template.bind({});
|
|
58
|
+
AccentStyle.args = { style: 'accent' };
|
|
59
|
+
AccentStyle.play = async ({ canvasElement }) => {
|
|
60
|
+
const badge = canvasElement.querySelector('m-badge');
|
|
61
|
+
expect(badge).toHaveAttribute('style', 'accent');
|
|
62
|
+
};
|
|
63
|
+
export const SmallSize = Template.bind({});
|
|
64
|
+
SmallSize.args = { size: 's' };
|
|
65
|
+
SmallSize.play = async ({ canvasElement }) => {
|
|
66
|
+
const badge = canvasElement.querySelector('m-badge');
|
|
67
|
+
expect(badge).toHaveAttribute('size', 's');
|
|
68
|
+
};
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { StoryFn, Meta } from '@storybook/html';
|
|
2
|
+
declare const _default: Meta;
|
|
3
|
+
export default _default;
|
|
4
|
+
export declare const Filled: StoryFn;
|
|
5
|
+
export declare const Outlined: StoryFn;
|
|
6
|
+
export declare const Ghost: StoryFn;
|
|
7
|
+
export declare const Icon: StoryFn;
|
|
8
|
+
//# sourceMappingURL=Button.stories.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Button.stories.d.ts","sourceRoot":"","sources":["../../../src/stories/button/Button.stories.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAC;wBAwEhD,IAAI;AA7DT,wBA6DU;AAyBV,eAAO,MAAM,MAAM,SAAoB,CAAC;AAUxC,eAAO,MAAM,QAAQ,SAAoB,CAAC;AAc1C,eAAO,MAAM,KAAK,SAAoB,CAAC;AAqBvC,eAAO,MAAM,IAAI,SAAoB,CAAC"}
|