@mozaic-ds/web-components 1.0.0-alpha.4 → 1.0.0-alpha.5

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.
Files changed (203) hide show
  1. package/dist/{components/badge → badge}/Badge.js +1 -1
  2. package/dist/badge/Badge.js.map +1 -0
  3. package/dist/badge/Badge.svelte +66 -0
  4. package/dist/badge/Badge.svelte.d.ts +10 -0
  5. package/dist/badge/Badge.svelte.d.ts.map +1 -0
  6. package/dist/badge/badge.types.d.ts +3 -0
  7. package/dist/badge/badge.types.d.ts.map +1 -0
  8. package/dist/badge/badge.types.js +1 -0
  9. package/dist/bundle.js +31 -0
  10. package/dist/{components/button → button}/Button.js +1 -1
  11. package/dist/button/Button.js.map +1 -0
  12. package/dist/button/Button.svelte +466 -0
  13. package/dist/button/Button.svelte.d.ts +43 -0
  14. package/dist/button/Button.svelte.d.ts.map +1 -0
  15. package/dist/{components/button → button}/IconButton.js +1 -1
  16. package/dist/button/IconButton.js.map +1 -0
  17. package/dist/button/IconButton.svelte +395 -0
  18. package/dist/button/IconButton.svelte.d.ts +15 -0
  19. package/dist/button/IconButton.svelte.d.ts.map +1 -0
  20. package/dist/button/button.types.d.ts +13 -0
  21. package/dist/button/button.types.d.ts.map +1 -0
  22. package/dist/button/button.types.js +1 -0
  23. package/dist/{components/checkbox → checkbox}/Checkbox.js +1 -1
  24. package/dist/checkbox/Checkbox.js.map +1 -0
  25. package/dist/checkbox/Checkbox.svelte +199 -0
  26. package/dist/checkbox/Checkbox.svelte.d.ts +14 -0
  27. package/dist/checkbox/Checkbox.svelte.d.ts.map +1 -0
  28. package/dist/{components/checkboxgroup → checkboxgroup}/checkboxGroup.js +1 -1
  29. package/dist/checkboxgroup/checkboxGroup.js.map +1 -0
  30. package/dist/checkboxgroup/checkboxGroup.svelte +208 -0
  31. package/dist/checkboxgroup/checkboxGroup.svelte.d.ts +11 -0
  32. package/dist/checkboxgroup/checkboxGroup.svelte.d.ts.map +1 -0
  33. package/dist/checkboxgroup/checkboxgroup.types.d.ts +11 -0
  34. package/dist/checkboxgroup/checkboxgroup.types.d.ts.map +1 -0
  35. package/dist/checkboxgroup/checkboxgroup.types.js +1 -0
  36. package/dist/{components/field → field}/Field.js +1 -1
  37. package/dist/field/Field.js.map +1 -0
  38. package/dist/field/Field.svelte +141 -0
  39. package/dist/field/Field.svelte.d.ts +40 -0
  40. package/dist/field/Field.svelte.d.ts.map +1 -0
  41. package/dist/{components/link → link}/Link.js +1 -1
  42. package/dist/link/Link.js.map +1 -0
  43. package/dist/link/Link.svelte +132 -0
  44. package/dist/link/Link.svelte.d.ts +42 -0
  45. package/dist/link/Link.svelte.d.ts.map +1 -0
  46. package/dist/link/link.types.d.ts +4 -0
  47. package/dist/link/link.types.d.ts.map +1 -0
  48. package/dist/link/link.types.js +1 -0
  49. package/dist/{components/loader → loader}/Loader.js +1 -1
  50. package/dist/loader/Loader.js.map +1 -0
  51. package/dist/loader/Loader.svelte +182 -0
  52. package/dist/loader/Loader.svelte.d.ts +11 -0
  53. package/dist/loader/Loader.svelte.d.ts.map +1 -0
  54. package/dist/loader/loader.types.d.ts +3 -0
  55. package/dist/loader/loader.types.d.ts.map +1 -0
  56. package/dist/loader/loader.types.js +1 -0
  57. package/dist/{components/overlay → overlay}/Overlay.js +1 -1
  58. package/dist/overlay/Overlay.js.map +1 -0
  59. package/dist/overlay/Overlay.svelte +106 -0
  60. package/dist/overlay/Overlay.svelte.d.ts +32 -0
  61. package/dist/overlay/Overlay.svelte.d.ts.map +1 -0
  62. package/dist/{components/overlay → overlay}/OverlayLoader.js +1 -1
  63. package/dist/overlay/OverlayLoader.js.map +1 -0
  64. package/dist/overlay/OverlayLoader.svelte +200 -0
  65. package/dist/overlay/OverlayLoader.svelte.d.ts +9 -0
  66. package/dist/overlay/OverlayLoader.svelte.d.ts.map +1 -0
  67. package/dist/{components/quantityselector → quantityselector}/QuantitySelector.js +1 -1
  68. package/dist/quantityselector/QuantitySelector.js.map +1 -0
  69. package/dist/quantityselector/QuantitySelector.svelte +260 -0
  70. package/dist/quantityselector/QuantitySelector.svelte.d.ts +18 -0
  71. package/dist/quantityselector/QuantitySelector.svelte.d.ts.map +1 -0
  72. package/dist/{components/radio → radio}/Radio.js +1 -1
  73. package/dist/radio/Radio.js.map +1 -0
  74. package/dist/radio/Radio.svelte +109 -0
  75. package/dist/radio/Radio.svelte.d.ts +11 -0
  76. package/dist/radio/Radio.svelte.d.ts.map +1 -0
  77. package/dist/{components/radiogroup → radiogroup}/RadioGroup.js +1 -1
  78. package/dist/radiogroup/RadioGroup.js.map +1 -0
  79. package/dist/radiogroup/RadioGroup.svelte +219 -0
  80. package/dist/radiogroup/RadioGroup.svelte.d.ts +13 -0
  81. package/dist/radiogroup/RadioGroup.svelte.d.ts.map +1 -0
  82. package/dist/radiogroup/radioGroup.types.d.ts +9 -0
  83. package/dist/radiogroup/radioGroup.types.d.ts.map +1 -0
  84. package/dist/radiogroup/radioGroup.types.js +1 -0
  85. package/dist/{components/select → select}/Select.js +1 -1
  86. package/dist/select/Select.js.map +1 -0
  87. package/dist/select/Select.svelte +134 -0
  88. package/dist/select/Select.svelte.d.ts +16 -0
  89. package/dist/select/Select.svelte.d.ts.map +1 -0
  90. package/dist/select/select.types.d.ts +9 -0
  91. package/dist/select/select.types.d.ts.map +1 -0
  92. package/dist/select/select.types.js +1 -0
  93. package/dist/{components/statusbadge → statusbadge}/StatusBadge.js +1 -1
  94. package/dist/statusbadge/StatusBadge.js.map +1 -0
  95. package/dist/statusbadge/StatusBadge.svelte +81 -0
  96. package/dist/statusbadge/StatusBadge.svelte.d.ts +32 -0
  97. package/dist/statusbadge/StatusBadge.svelte.d.ts.map +1 -0
  98. package/dist/{components/statusbadge → statusbadge}/StatusDot.js +1 -1
  99. package/dist/statusbadge/StatusDot.js.map +1 -0
  100. package/dist/statusbadge/StatusDot.svelte +49 -0
  101. package/dist/statusbadge/StatusDot.svelte.d.ts +9 -0
  102. package/dist/statusbadge/StatusDot.svelte.d.ts.map +1 -0
  103. package/dist/statusbadge/badge.types.d.ts +3 -0
  104. package/dist/statusbadge/badge.types.d.ts.map +1 -0
  105. package/dist/statusbadge/badge.types.js +1 -0
  106. package/dist/{components/textarea → textarea}/Textarea.js +1 -1
  107. package/dist/textarea/Textarea.js.map +1 -0
  108. package/dist/textarea/Textarea.svelte +178 -0
  109. package/dist/textarea/Textarea.svelte.d.ts +32 -0
  110. package/dist/textarea/Textarea.svelte.d.ts.map +1 -0
  111. package/dist/{components/textinput → textinput}/Textinput.js +1 -1
  112. package/dist/textinput/Textinput.js.map +1 -0
  113. package/dist/textinput/Textinput.svelte +288 -0
  114. package/dist/textinput/Textinput.svelte.d.ts +41 -0
  115. package/dist/textinput/Textinput.svelte.d.ts.map +1 -0
  116. package/dist/textinput/textinput.types.d.ts +3 -0
  117. package/dist/textinput/textinput.types.d.ts.map +1 -0
  118. package/dist/textinput/textinput.types.js +1 -0
  119. package/dist/{components/toggle → toggle}/Toggle.js +1 -1
  120. package/dist/toggle/Toggle.js.map +1 -0
  121. package/dist/toggle/Toggle.svelte +161 -0
  122. package/dist/toggle/Toggle.svelte.d.ts +29 -0
  123. package/dist/toggle/Toggle.svelte.d.ts.map +1 -0
  124. package/dist/toggle/toggle.types.d.ts +2 -0
  125. package/dist/toggle/toggle.types.d.ts.map +1 -0
  126. package/dist/toggle/toggle.types.js +1 -0
  127. package/package.json +13 -13
  128. package/dist/Badge.d.ts +0 -5
  129. package/dist/Button.d.ts +0 -5
  130. package/dist/Checkbox.d.ts +0 -5
  131. package/dist/Field.d.ts +0 -5
  132. package/dist/IconButton.d.ts +0 -5
  133. package/dist/Link.d.ts +0 -5
  134. package/dist/Loader.d.ts +0 -5
  135. package/dist/Overlay.d.ts +0 -5
  136. package/dist/OverlayLoader.d.ts +0 -5
  137. package/dist/QuantitySelector.d.ts +0 -5
  138. package/dist/Radio.d.ts +0 -5
  139. package/dist/RadioGroup.d.ts +0 -5
  140. package/dist/Select.d.ts +0 -5
  141. package/dist/StatusBadge.d.ts +0 -5
  142. package/dist/StatusDot.d.ts +0 -5
  143. package/dist/Textarea.d.ts +0 -5
  144. package/dist/Textinput.d.ts +0 -5
  145. package/dist/Toggle.d.ts +0 -5
  146. package/dist/checkboxGroup.d.ts +0 -5
  147. package/dist/components/badge/Badge.d.ts +0 -4
  148. package/dist/components/badge/Badge.js.map +0 -1
  149. package/dist/components/badge/Badge.svelte +0 -34
  150. package/dist/components/button/Button.d.ts +0 -4
  151. package/dist/components/button/Button.js.map +0 -1
  152. package/dist/components/button/Button.svelte +0 -133
  153. package/dist/components/button/IconButton.d.ts +0 -4
  154. package/dist/components/button/IconButton.js.map +0 -1
  155. package/dist/components/checkbox/Checkbox.d.ts +0 -4
  156. package/dist/components/checkbox/Checkbox.js.map +0 -1
  157. package/dist/components/checkbox/Checkbox.svelte +0 -54
  158. package/dist/components/checkboxgroup/checkboxGroup.d.ts +0 -4
  159. package/dist/components/checkboxgroup/checkboxGroup.js.map +0 -1
  160. package/dist/components/checkboxgroup/checkboxGroup.svelte +0 -63
  161. package/dist/components/field/Field.d.ts +0 -4
  162. package/dist/components/field/Field.js.map +0 -1
  163. package/dist/components/field/Field.svelte +0 -66
  164. package/dist/components/iconbutton/IconButton.svelte +0 -62
  165. package/dist/components/link/Link.d.ts +0 -4
  166. package/dist/components/link/Link.js.map +0 -1
  167. package/dist/components/link/Link.svelte +0 -65
  168. package/dist/components/loader/Loader.d.ts +0 -4
  169. package/dist/components/loader/Loader.js.map +0 -1
  170. package/dist/components/loader/Loader.svelte +0 -89
  171. package/dist/components/overlay/Overlay.d.ts +0 -4
  172. package/dist/components/overlay/Overlay.js.map +0 -1
  173. package/dist/components/overlay/Overlay.svelte +0 -21
  174. package/dist/components/overlay/OverlayLoader.d.ts +0 -4
  175. package/dist/components/overlay/OverlayLoader.js.map +0 -1
  176. package/dist/components/overlayloader/OverlayLoader.svelte +0 -23
  177. package/dist/components/quantityselector/QuantitySelector.d.ts +0 -4
  178. package/dist/components/quantityselector/QuantitySelector.js.map +0 -1
  179. package/dist/components/quantityselector/QuantitySelector.svelte +0 -111
  180. package/dist/components/radio/Radio.d.ts +0 -4
  181. package/dist/components/radio/Radio.js.map +0 -1
  182. package/dist/components/radio/Radio.svelte +0 -37
  183. package/dist/components/radiogroup/RadioGroup.d.ts +0 -4
  184. package/dist/components/radiogroup/RadioGroup.js.map +0 -1
  185. package/dist/components/radiogroup/RadioGroup.svelte +0 -72
  186. package/dist/components/select/Select.d.ts +0 -4
  187. package/dist/components/select/Select.js.map +0 -1
  188. package/dist/components/select/Select.svelte +0 -75
  189. package/dist/components/statusbadge/StatusBadge.d.ts +0 -4
  190. package/dist/components/statusbadge/StatusBadge.js.map +0 -1
  191. package/dist/components/statusbadge/StatusBadge.svelte +0 -22
  192. package/dist/components/statusbadge/StatusDot.d.ts +0 -4
  193. package/dist/components/statusbadge/StatusDot.js.map +0 -1
  194. package/dist/components/statusdot/StatusDot.svelte +0 -22
  195. package/dist/components/textarea/Textarea.d.ts +0 -4
  196. package/dist/components/textarea/Textarea.js.map +0 -1
  197. package/dist/components/textarea/Textarea.svelte +0 -58
  198. package/dist/components/textinput/Textinput.d.ts +0 -4
  199. package/dist/components/textinput/Textinput.js.map +0 -1
  200. package/dist/components/textinput/Textinput.svelte +0 -143
  201. package/dist/components/toggle/Toggle.d.ts +0 -4
  202. package/dist/components/toggle/Toggle.js.map +0 -1
  203. package/dist/components/toggle/Toggle.svelte +0 -54
@@ -1,4 +1,4 @@
1
- import{c as m,p as h,a as b,b as r,t as y,e as v,f as g,g as x,h as u,i as l,r as f,k as w}from"../../custom-element.js";import{s as k}from"../../attributes.js";import{L as z}from"../loader/Loader.js";import"../../if.js";var _=y('<div><div role="dialog" tabindex="-1" class="svelte-ne5o65"><!></div></div>');const M={hash:"svelte-ne5o65",code:`/**
1
+ import{c as m,p as h,a as b,b as r,t as y,e as v,f as g,g as x,h as u,i as l,r as f,k as w}from"../custom-element.js";import{s as k}from"../attributes.js";import{L as z}from"../loader/Loader.js";import"../if.js";var _=y('<div><div role="dialog" tabindex="-1" class="svelte-ne5o65"><!></div></div>');const M={hash:"svelte-ne5o65",code:`/**
2
2
  * Do not edit directly, this file was auto-generated.
3
3
  */
4
4
 
@@ -0,0 +1 @@
1
+ {"version":3,"file":"OverlayLoader.js","sources":["../../src/components/overlay/OverlayLoader.svelte"],"sourcesContent":["<svelte:options customElement=\"m-overlay-loader\" />\n\n<script lang=\"ts\">\n import Loader from '../loader/Loader.svelte';\n interface Props {\n isvisible?: boolean;\n text: string;\n dialoglabel: string;\n }\n\n let { isvisible = false, text, dialoglabel }: Props = $props();\n</script>\n\n<div class=\"mc-overlay-loader\" class:is-visible={isvisible}>\n <div role=\"dialog\" tabindex=\"-1\" aria-labelledby={dialoglabel}>\n <Loader size=\"l\" theme=\"inverse\" {text} />\n </div>\n</div>\n\n<style lang=\"scss\">\n @use '@mozaic-ds/styles/components/loader';\n @use '@mozaic-ds/styles/components/overlay';\n</style>\n"],"names":["isvisible","text","$.prop","$$props","dialoglabel"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;oYAUQ,IAAAA,oBAAY,EAAK,EAAEC,EAAIC,EAAAC,EAAA,OAAA,CAAA,EAAEC,EAAWF,EAAAC,EAAA,cAAA,CAAA,kLAGKH,EAAS,EAAA,wBACNI,GAAW,0DAJ3C,GAAK"}
@@ -0,0 +1,200 @@
1
+ <svelte:options customElement="m-overlay-loader" />
2
+
3
+ <script lang="ts">
4
+ import Loader from '../loader/Loader.svelte';
5
+ interface Props {
6
+ isvisible?: boolean;
7
+ text: string;
8
+ dialoglabel: string;
9
+ }
10
+
11
+ let { isvisible = false, text, dialoglabel }: Props = $props();
12
+ </script>
13
+
14
+ <div class="mc-overlay-loader" class:is-visible={isvisible}>
15
+ <div role="dialog" tabindex="-1" aria-labelledby={dialoglabel}>
16
+ <Loader size="l" theme="inverse" {text} />
17
+ </div>
18
+ </div>
19
+
20
+ <style>/**
21
+ * Do not edit directly, this file was auto-generated.
22
+ */
23
+ .mc-loader {
24
+ color: var(--loader-color-standard, #464e63);
25
+ align-items: center;
26
+ display: inline-flex;
27
+ flex-direction: column;
28
+ }
29
+ .mc-loader .mc-loader__spinner {
30
+ height: 2rem;
31
+ width: 2rem;
32
+ }
33
+ .mc-loader .mc-loader__path {
34
+ stroke-width: 4;
35
+ }
36
+ .mc-loader .mc-loader__path {
37
+ stroke: currentColor;
38
+ }
39
+ .mc-loader__spinner:not(:only-child) {
40
+ margin-bottom: 1rem;
41
+ }
42
+ .mc-loader__icon {
43
+ animation: rotate-loader 2s linear infinite;
44
+ transform-origin: center;
45
+ }
46
+ .mc-loader__path {
47
+ fill: none;
48
+ stroke-dasharray: 1, 200;
49
+ stroke-dashoffset: 0;
50
+ stroke-linecap: round;
51
+ animation: animate-dash-loader 2s ease-in-out infinite;
52
+ }
53
+ .mc-loader__text {
54
+ font-size: 1rem;
55
+ color: currentcolor;
56
+ }
57
+ .mc-loader:not(.mc-loader--text-visible) .mc-loader__text {
58
+ clip-path: inset(100%);
59
+ clip: rect(1px, 1px, 1px, 1px);
60
+ height: 1px;
61
+ overflow: hidden;
62
+ position: absolute;
63
+ white-space: nowrap;
64
+ padding: 0;
65
+ width: 1px;
66
+ }
67
+ .mc-loader--s .mc-loader__spinner {
68
+ height: 1.5rem;
69
+ width: 1.5rem;
70
+ }
71
+ .mc-loader--s .mc-loader__path {
72
+ stroke-width: 4;
73
+ }
74
+ .mc-loader--l .mc-loader__spinner {
75
+ height: 4rem;
76
+ width: 4rem;
77
+ }
78
+ .mc-loader--l .mc-loader__path {
79
+ stroke-width: 8;
80
+ }
81
+ .mc-loader--accent {
82
+ color: var(--loader-color-accent, #117f03);
83
+ }
84
+ .mc-loader--accent .mc-loader__path {
85
+ stroke: currentColor;
86
+ }
87
+ .mc-loader--inverse {
88
+ color: var(--loader-color-inverse, #ffffff);
89
+ }
90
+ .mc-loader--inverse .mc-loader__path {
91
+ stroke: currentColor;
92
+ }
93
+
94
+ @keyframes rotate-loader {
95
+ 0% {
96
+ transform: rotate(0deg);
97
+ }
98
+ 100% {
99
+ transform: rotate(270deg);
100
+ }
101
+ }
102
+ @keyframes animate-dash-loader {
103
+ 0% {
104
+ stroke-dasharray: 1, 200;
105
+ stroke-dashoffset: 0;
106
+ }
107
+ 50% {
108
+ stroke-dasharray: 89, 200;
109
+ stroke-dashoffset: -35px;
110
+ }
111
+ 100% {
112
+ stroke-dasharray: 89, 200;
113
+ stroke-dashoffset: -124px;
114
+ }
115
+ }
116
+ /**
117
+ * Maps to store shadow properties for top shadows.
118
+ * @type Map
119
+ */
120
+ /**
121
+ * Maps to store shadow properties for bottom shadows.
122
+ * @type Map
123
+ */
124
+ /**
125
+ * Mixin to define the box-shadow properties for a given direction and size.
126
+ *
127
+ * @param {String} $direction - The direction of the shadow ('top' or 'bottom').
128
+ * @param {String} $size - The size of the shadow ('xs', 's', 'm', 'l').
129
+ */
130
+ /**
131
+ * Mixin to generate shadow classes for the specified direction (top or bottom).
132
+ * This mixin iterates over the predefined sizes and creates a CSS class for each size.
133
+ *
134
+ * @param {String} $direction - The direction of the shadow ('top' or 'bottom').
135
+ */
136
+ .shadow--top-xs {
137
+ box-shadow: 0px -3px 5px -2px;
138
+ }
139
+
140
+ .shadow--top-s {
141
+ box-shadow: 0px -5px 10px -2px;
142
+ }
143
+
144
+ .shadow--top-m {
145
+ box-shadow: 0px -10px 20px -4px;
146
+ }
147
+
148
+ .shadow--top-l {
149
+ box-shadow: 0px -20px 40px -8px;
150
+ }
151
+
152
+ .shadow--bottom-xs {
153
+ box-shadow: 0px 3px 5px -2px;
154
+ }
155
+
156
+ .shadow--bottom-s {
157
+ box-shadow: 0px 5px 10px -2px;
158
+ }
159
+
160
+ .shadow--bottom-m {
161
+ box-shadow: 0px 10px 20px -4px;
162
+ }
163
+
164
+ .shadow--bottom-l {
165
+ box-shadow: 0px 20px 40px -8px;
166
+ }
167
+
168
+ .mc-overlay {
169
+ filter: blur(1px);
170
+ inset: 0;
171
+ opacity: 0;
172
+ position: fixed;
173
+ pointer-events: none;
174
+ transition: opacity 0.4s ease, visibility 0ms 0.4s;
175
+ z-index: 1999999998;
176
+ }
177
+ .mc-overlay.is-visible {
178
+ opacity: 1;
179
+ pointer-events: all;
180
+ transition: opacity 0.4s ease, visibility 0ms;
181
+ visibility: visible;
182
+ }
183
+
184
+ .mc-overlay-loader {
185
+ inset: 0;
186
+ opacity: 0;
187
+ position: fixed;
188
+ pointer-events: none;
189
+ transition: opacity 0.4s ease, visibility 0ms 0.4s;
190
+ z-index: 1999999998;
191
+ align-items: center;
192
+ display: flex;
193
+ justify-content: center;
194
+ }
195
+ .mc-overlay-loader.is-visible {
196
+ opacity: 1;
197
+ pointer-events: all;
198
+ transition: opacity 0.4s ease, visibility 0ms;
199
+ visibility: visible;
200
+ }</style>
@@ -0,0 +1,9 @@
1
+ interface Props {
2
+ isvisible?: boolean;
3
+ text: string;
4
+ dialoglabel: string;
5
+ }
6
+ declare const OverlayLoader: import("svelte").Component<Props, {}, "">;
7
+ type OverlayLoader = ReturnType<typeof OverlayLoader>;
8
+ export default OverlayLoader;
9
+ //# sourceMappingURL=OverlayLoader.svelte.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"OverlayLoader.svelte.d.ts","sourceRoot":"","sources":["../../src/components/overlay/OverlayLoader.svelte.ts"],"names":[],"mappings":"AAKE,UAAU,KAAK;IACb,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;CACrB;AAoBH,QAAA,MAAM,aAAa,2CAAsC,CAAC;AAC1D,KAAK,aAAa,GAAG,UAAU,CAAC,OAAO,aAAa,CAAC,CAAC;AACtD,eAAe,aAAa,CAAC"}
@@ -1,4 +1,4 @@
1
- import{d as W,c as A,p as C,a as H,b as n,t as J,e as c,s as h,k as I,f as L,g as M,h as O,i as o,r as d,j as B}from"../../custom-element.js";import{r as P,s as i}from"../../attributes.js";import{b as R}from"../../input.js";function T(m,e,l,r,a){e()>l()&&e(l()),e()<r()&&e(r()),a()(e())}function U(m,e,l,r,a){e()-Number(l())>r()&&e(e()-Number(l())),a()(e())}function X(m,e,l,r,a){e()+Number(l())<r()&&e(e()+Number(l())),a()(e())}var Y=J('<div><input type="number" class="mc-quantity-selector__control svelte-rbl4od" spellcheck="false"> <button type="button" class="mc-quantity-selector__button mc-quantity-selector__button--increase svelte-rbl4od" tabindex="-1"><span class="mc-quantity-selector__icon svelte-rbl4od"><ui-more-24></ui-more-24></span> <span class="mc-quantity-selector__label svelte-rbl4od"> </span></button> <button type="button" class="mc-quantity-selector__button mc-quantity-selector__button--decrease svelte-rbl4od" tabindex="-1"><span class="mc-quantity-selector__icon svelte-rbl4od"><ui-less-24></ui-less-24></span> <span class="mc-quantity-selector__label svelte-rbl4od"> </span></button></div>',2);const Z={hash:"svelte-rbl4od",code:`/**
1
+ import{d as W,c as A,p as C,a as H,b as n,t as J,e as c,s as h,k as I,f as L,g as M,h as O,i as o,r as d,j as B}from"../custom-element.js";import{r as P,s as i}from"../attributes.js";import{b as R}from"../input.js";function T(m,e,l,r,a){e()>l()&&e(l()),e()<r()&&e(r()),a()(e())}function U(m,e,l,r,a){e()-Number(l())>r()&&e(e()-Number(l())),a()(e())}function X(m,e,l,r,a){e()+Number(l())<r()&&e(e()+Number(l())),a()(e())}var Y=J('<div><input type="number" class="mc-quantity-selector__control svelte-rbl4od" spellcheck="false"> <button type="button" class="mc-quantity-selector__button mc-quantity-selector__button--increase svelte-rbl4od" tabindex="-1"><span class="mc-quantity-selector__icon svelte-rbl4od"><ui-more-24></ui-more-24></span> <span class="mc-quantity-selector__label svelte-rbl4od"> </span></button> <button type="button" class="mc-quantity-selector__button mc-quantity-selector__button--decrease svelte-rbl4od" tabindex="-1"><span class="mc-quantity-selector__icon svelte-rbl4od"><ui-less-24></ui-less-24></span> <span class="mc-quantity-selector__label svelte-rbl4od"> </span></button></div>',2);const Z={hash:"svelte-rbl4od",code:`/**
2
2
  * Do not edit directly, this file was auto-generated.
3
3
  */.mc-quantity-selector.svelte-rbl4od {background-color:var(--forms-color-background-default, #ffffff);border:1px solid var(--forms-color-border-default, #666666);border-radius:0.25rem;transition:all ease 200ms;color:var(--forms-color-text-default, #000000);display:block;width:100%;height:3rem;border-radius:0.25rem;display:flex;gap:0.25rem;padding:0.1875rem;position:relative;}.mc-quantity-selector.svelte-rbl4od,
4
4
  .mc-quantity-selector.svelte-rbl4od :where(.svelte-rbl4od) {box-sizing:border-box;}.mc-quantity-selector__control.svelte-rbl4od {background-color:transparent;border-width:0;color:inherit;font-family:inherit;outline:none;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"QuantitySelector.js","sources":["../../src/components/quantityselector/QuantitySelector.svelte"],"sourcesContent":["<svelte:options\n customElement={{\n tag: 'm-qty-selector',\n shadow: 'none',\n }}\n/>\n\n<script lang=\"ts\">\n interface Props {\n id?: string | undefined;\n quantity?: number;\n min?: number;\n max?: number;\n small?: boolean;\n decrementlabel?: string;\n inputarialabel?: string;\n incrementlabel?: string;\n disabled?: boolean;\n name?: string;\n step?: number;\n [key: string]: any;\n }\n\n let {\n id = undefined,\n quantity = $bindable(1),\n min = 1,\n max = 100,\n small = false,\n decrementlabel = 'Decrement',\n inputarialabel = 'Quantity Selector',\n incrementlabel = 'Increment',\n disabled = false,\n name = 'quantity-selector-input',\n step = 1,\n increment,\n decrement,\n inputqty,\n }: Props = $props();\n\n function handleValue(): void {\n if (quantity > max) {\n quantity = max;\n }\n if (quantity < min) {\n quantity = min;\n }\n inputqty(quantity);\n }\n\n function handleDecrement(): void {\n if (quantity - Number(step) > min) {\n quantity = quantity - Number(step);\n }\n decrement(quantity);\n }\n\n function handleIncrement(): void {\n if (quantity + Number(step) < max) {\n quantity = quantity + Number(step);\n }\n increment(quantity);\n }\n</script>\n\n<div class=\"mc-quantity-selector\" class:mc-quantity-selector--s={small}>\n <input\n type=\"number\"\n {id}\n {name}\n bind:value={quantity}\n oninput={handleValue}\n class=\"mc-quantity-selector__control\"\n aria-label={inputarialabel}\n aria-valuemin={min}\n aria-valuemax={max}\n aria-valuenow={quantity}\n spellcheck=\"false\"\n {disabled}\n />\n <button\n type=\"button\"\n aria-controls={id}\n class=\"mc-quantity-selector__button mc-quantity-selector__button--increase\"\n tabindex=\"-1\"\n onclick={handleIncrement}\n disabled={quantity === max || disabled}\n >\n <span class=\"mc-quantity-selector__icon\">\n <ui-more-24></ui-more-24>\n </span>\n <span class=\"mc-quantity-selector__label\">{decrementlabel}</span>\n </button>\n <button\n type=\"button\"\n aria-controls={id}\n class=\"mc-quantity-selector__button mc-quantity-selector__button--decrease\"\n tabindex=\"-1\"\n onclick={handleDecrement}\n disabled={quantity === min || disabled}\n >\n <span class=\"mc-quantity-selector__icon\">\n <ui-less-24></ui-less-24>\n </span>\n <span class=\"mc-quantity-selector__label\">{incrementlabel}</span>\n </button>\n</div>\n\n<style lang=\"scss\">\n @use '@mozaic-ds/styles/components/quantity-selector';\n</style>\n"],"names":["handleValue","_","quantity","max","min","inputqty","handleDecrement","__1","step","decrement","handleIncrement","__2","increment","id","small","decrementlabel","inputarialabel","incrementlabel","disabled","name","$.prop","$$props"],"mappings":"uNAwCW,SAAAA,EAAoBC,EAAAC,EAAAC,EAAAC,EAAAC,EAAA,CACvBH,EAAQ,EAAGC,KACbD,EAAWC,EAAG,CAAA,EAEZD,EAAQ,EAAGE,KACbF,EAAWE,EAAG,CAAA,EAEhBC,EAAQ,EAACH,GAAQ,CACnB,CAES,SAAAI,EAAwBC,EAAAL,EAAAM,EAAAJ,EAAAK,EAAA,CAC3BP,IAAW,OAAOM,EAAI,CAAA,EAAIJ,EAAG,GAC/BF,EAAWA,EAAW,EAAA,OAAOM,EAAI,CAAA,CAAA,EAEnCC,EAAS,EAACP,GAAQ,CACpB,CAES,SAAAQ,EAAwBC,EAAAT,EAAAM,EAAAL,EAAAS,EAAA,CAC3BV,IAAW,OAAOM,EAAI,CAAA,EAAIL,EAAG,GAC/BD,EAAWA,EAAW,EAAA,OAAOM,EAAI,CAAA,CAAA,EAEnCI,EAAS,EAACV,GAAQ,CACpB;;;;;u+FAtCE,IAAAW,aAAK,MAAS,EACdX,oBAAqB,CAAC,EACtBE,cAAM,CAAC,EACPD,cAAM,GAAG,EACTW,gBAAQ,EAAK,EACbC,yBAAiB,WAAW,EAC5BC,yBAAiB,mBAAmB,EACpCC,yBAAiB,WAAW,EAC5BC,mBAAW,EAAK,EAChBC,eAAO,yBAAyB,EAChCX,eAAO,CAAC,EACRI,EAASQ,EAAAC,EAAA,YAAA,CAAA,EACTZ,EAASW,EAAAC,EAAA,YAAA,CAAA,EACThB,EAAQe,EAAAC,EAAA,WAAA,CAAA,6CAkCCrB,EAAWE,EAAAC,EAAAC,EAAAC,CAAA,0BAcXK,kHAaAJ,4LAjCoDQ,EAAK,EAAA,iDAQtDE,GAAc,sBACXZ,GAAG,sBACHD,GAAG,sBACHD,GAAQ,qCAMRW,GAAE,aAIPX,EAAQ,IAAKC,EAAG,GAAIe,EAAQ,MAKKH,GAAc,sBAI1CF,GAAE,aAIPX,EAAQ,IAAKE,EAAG,GAAIc,EAAQ,MAKKD,GAAc,QAlC7Cf,CAAQ,0CA9Cf,OAAS,qDACO,EAAC,2CAChB,EAAC,2CACD,IAAG,+CACD,GAAK,iEACI,YAAW,iEACX,oBAAmB,iEACnB,YAAW,qDACjB,GAAK,6CACT,0BAAyB,6CACzB,EAAC"}
@@ -0,0 +1,260 @@
1
+ <svelte:options
2
+ customElement={{
3
+ tag: 'm-qty-selector',
4
+ shadow: 'none',
5
+ }}
6
+ />
7
+
8
+ <script lang="ts">
9
+ interface Props {
10
+ id?: string | undefined;
11
+ quantity?: number;
12
+ min?: number;
13
+ max?: number;
14
+ small?: boolean;
15
+ decrementlabel?: string;
16
+ inputarialabel?: string;
17
+ incrementlabel?: string;
18
+ disabled?: boolean;
19
+ name?: string;
20
+ step?: number;
21
+ [key: string]: any;
22
+ }
23
+
24
+ let {
25
+ id = undefined,
26
+ quantity = $bindable(1),
27
+ min = 1,
28
+ max = 100,
29
+ small = false,
30
+ decrementlabel = 'Decrement',
31
+ inputarialabel = 'Quantity Selector',
32
+ incrementlabel = 'Increment',
33
+ disabled = false,
34
+ name = 'quantity-selector-input',
35
+ step = 1,
36
+ increment,
37
+ decrement,
38
+ inputqty,
39
+ }: Props = $props();
40
+
41
+ function handleValue(): void {
42
+ if (quantity > max) {
43
+ quantity = max;
44
+ }
45
+ if (quantity < min) {
46
+ quantity = min;
47
+ }
48
+ inputqty(quantity);
49
+ }
50
+
51
+ function handleDecrement(): void {
52
+ if (quantity - Number(step) > min) {
53
+ quantity = quantity - Number(step);
54
+ }
55
+ decrement(quantity);
56
+ }
57
+
58
+ function handleIncrement(): void {
59
+ if (quantity + Number(step) < max) {
60
+ quantity = quantity + Number(step);
61
+ }
62
+ increment(quantity);
63
+ }
64
+ </script>
65
+
66
+ <div class="mc-quantity-selector" class:mc-quantity-selector--s={small}>
67
+ <input
68
+ type="number"
69
+ {id}
70
+ {name}
71
+ bind:value={quantity}
72
+ oninput={handleValue}
73
+ class="mc-quantity-selector__control"
74
+ aria-label={inputarialabel}
75
+ aria-valuemin={min}
76
+ aria-valuemax={max}
77
+ aria-valuenow={quantity}
78
+ spellcheck="false"
79
+ {disabled}
80
+ />
81
+ <button
82
+ type="button"
83
+ aria-controls={id}
84
+ class="mc-quantity-selector__button mc-quantity-selector__button--increase"
85
+ tabindex="-1"
86
+ onclick={handleIncrement}
87
+ disabled={quantity === max || disabled}
88
+ >
89
+ <span class="mc-quantity-selector__icon">
90
+ <ui-more-24></ui-more-24>
91
+ </span>
92
+ <span class="mc-quantity-selector__label">{decrementlabel}</span>
93
+ </button>
94
+ <button
95
+ type="button"
96
+ aria-controls={id}
97
+ class="mc-quantity-selector__button mc-quantity-selector__button--decrease"
98
+ tabindex="-1"
99
+ onclick={handleDecrement}
100
+ disabled={quantity === min || disabled}
101
+ >
102
+ <span class="mc-quantity-selector__icon">
103
+ <ui-less-24></ui-less-24>
104
+ </span>
105
+ <span class="mc-quantity-selector__label">{incrementlabel}</span>
106
+ </button>
107
+ </div>
108
+
109
+ <style>/**
110
+ * Do not edit directly, this file was auto-generated.
111
+ */
112
+ .mc-quantity-selector {
113
+ background-color: var(--forms-color-background-default, #ffffff);
114
+ border: 1px solid var(--forms-color-border-default, #666666);
115
+ border-radius: 0.25rem;
116
+ transition: all ease 200ms;
117
+ color: var(--forms-color-text-default, #000000);
118
+ display: block;
119
+ width: 100%;
120
+ height: 3rem;
121
+ border-radius: 0.25rem;
122
+ display: flex;
123
+ gap: 0.25rem;
124
+ padding: 0.1875rem;
125
+ position: relative;
126
+ }
127
+ .mc-quantity-selector,
128
+ .mc-quantity-selector * {
129
+ box-sizing: border-box;
130
+ }
131
+ .mc-quantity-selector__control {
132
+ background-color: transparent;
133
+ border-width: 0;
134
+ color: inherit;
135
+ font-family: inherit;
136
+ outline: none;
137
+ /* For Blink & WebKit rendering engines */
138
+ /* For Gecko rendering engine */
139
+ padding: 0;
140
+ font-size: inherit;
141
+ font-size: 1rem;
142
+ line-height: 1.5;
143
+ font-weight: 600;
144
+ cursor: inherit;
145
+ text-align: center;
146
+ flex-grow: 1;
147
+ }
148
+ .mc-quantity-selector__control[type=number]::-webkit-inner-spin-button, .mc-quantity-selector__control[type=number]::-webkit-outer-spin-button {
149
+ appearance: none;
150
+ margin: 0;
151
+ }
152
+ .mc-quantity-selector__control[type=number] {
153
+ appearance: textfield;
154
+ }
155
+ .mc-quantity-selector__control[type=search]::-webkit-search-decoration, .mc-quantity-selector__control[type=search]::-webkit-search-cancel-button {
156
+ appearance: none;
157
+ }
158
+ .mc-quantity-selector__control::placeholder {
159
+ color: var(--forms-color-placeholder, #666666);
160
+ }
161
+ .mc-quantity-selector__button {
162
+ background-color: transparent;
163
+ border-width: 0;
164
+ color: initial;
165
+ font-family: inherit;
166
+ outline: none;
167
+ appearance: none;
168
+ cursor: pointer;
169
+ padding: 0;
170
+ height: 2.5rem;
171
+ width: 2.5rem;
172
+ border-radius: 100%;
173
+ color: var(--quantity-selector-color-button-text-default, #242938);
174
+ display: inline-flex;
175
+ align-items: center;
176
+ justify-content: center;
177
+ flex-shrink: 0;
178
+ }
179
+ .mc-quantity-selector__button:disabled {
180
+ color: var(--quantity-selector-color-button-text-disabled, #d9d9d9);
181
+ cursor: not-allowed;
182
+ }
183
+ .mc-quantity-selector__button:hover:not(:disabled) {
184
+ background-color: var(--quantity-selector-color-button-background-hover, rgba(255, 255, 255, 0.1));
185
+ }
186
+ .mc-quantity-selector__button--decrease {
187
+ order: -1;
188
+ }
189
+ .mc-quantity-selector__icon {
190
+ height: 1.5rem;
191
+ width: 1.5rem;
192
+ fill: currentcolor;
193
+ }
194
+ .mc-quantity-selector__label {
195
+ clip-path: inset(100%);
196
+ clip: rect(1px, 1px, 1px, 1px);
197
+ height: 1px;
198
+ overflow: hidden;
199
+ position: absolute;
200
+ white-space: nowrap;
201
+ padding: 0;
202
+ width: 1px;
203
+ }
204
+ .mc-quantity-selector::after {
205
+ transition: box-shadow 200ms ease;
206
+ border-radius: 0.25rem;
207
+ content: "";
208
+ position: absolute;
209
+ inset: -0.125rem var(--inset-x, 3rem);
210
+ pointer-events: none;
211
+ display: block;
212
+ }
213
+ .mc-quantity-selector:hover:not(:focus-within) {
214
+ border-color: var(--forms-color-border-hover, #4d4d4d);
215
+ box-shadow: 0 0 0 1px var(--forms-color-border-hover, #4d4d4d);
216
+ }
217
+ .mc-quantity-selector:has(input:disabled) {
218
+ background-color: var(--forms-color-background-disabled, #d9d9d9);
219
+ cursor: not-allowed;
220
+ border-color: transparent;
221
+ box-shadow: none;
222
+ color: var(--forms-color-text-disabled, #737373);
223
+ pointer-events: none;
224
+ }
225
+ .mc-quantity-selector:has(input:disabled) .mc-quantity-selector__button:disabled {
226
+ color: var(--forms-color-icon-disabled, #737373);
227
+ }
228
+ .mc-quantity-selector:has(input[readonly]) {
229
+ border-color: var(--forms-color-border-read-only, #cccccc);
230
+ pointer-events: none;
231
+ }
232
+ .mc-quantity-selector:has(input[readonly]) .mc-quantity-selector__control[readonly] {
233
+ text-align: left;
234
+ padding-left: 0.5rem;
235
+ }
236
+ .mc-quantity-selector:has(input:focus)::after {
237
+ 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));
238
+ outline: 0.125rem solid transparent;
239
+ outline-offset: 0.125rem;
240
+ }
241
+ .mc-quantity-selector--s {
242
+ --inset-x: 2rem;
243
+ height: 2rem;
244
+ }
245
+ .mc-quantity-selector--s .mc-quantity-selector__button {
246
+ height: 1.5rem;
247
+ width: 1.5rem;
248
+ }
249
+ .mc-quantity-selector--s .mc-quantity-selector__icon {
250
+ height: 1.25rem;
251
+ width: 1.25rem;
252
+ }
253
+ .mc-quantity-selector.is-invalid {
254
+ border-color: var(--forms-color-border-invalid, #ea302d);
255
+ box-shadow: 0 0 0 1px var(--forms-color-border-invalid, #ea302d);
256
+ }
257
+ .mc-quantity-selector.is-invalid:hover:not(:focus-within) {
258
+ border-color: var(--forms-color-border-invalid-hover, #c61112);
259
+ box-shadow: 0 0 0 1px var(--forms-color-border-invalid-hover, #c61112);
260
+ }</style>
@@ -0,0 +1,18 @@
1
+ interface Props {
2
+ id?: string | undefined;
3
+ quantity?: number;
4
+ min?: number;
5
+ max?: number;
6
+ small?: boolean;
7
+ decrementlabel?: string;
8
+ inputarialabel?: string;
9
+ incrementlabel?: string;
10
+ disabled?: boolean;
11
+ name?: string;
12
+ step?: number;
13
+ [key: string]: any;
14
+ }
15
+ declare const QuantitySelector: import("svelte").Component<Props, {}, "quantity">;
16
+ type QuantitySelector = ReturnType<typeof QuantitySelector>;
17
+ export default QuantitySelector;
18
+ //# sourceMappingURL=QuantitySelector.svelte.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"QuantitySelector.svelte.d.ts","sourceRoot":"","sources":["../../src/components/quantityselector/QuantitySelector.svelte.ts"],"names":[],"mappings":"AAGE,UAAU,KAAK;IACb,EAAE,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACxB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;CACpB;AAuEH,QAAA,MAAM,gBAAgB,mDAAsC,CAAC;AAC7D,KAAK,gBAAgB,GAAG,UAAU,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAC5D,eAAe,gBAAgB,CAAC"}
@@ -1,4 +1,4 @@
1
- import{c as g,p as w,a as x,b as a,t as y,f as j,e as p,k as z,B,s as C,j as D,g as E,h as R,i as t,r as _}from"../../custom-element.js";import{s as f,a as S,r as q}from"../../attributes.js";var A=y('<div class="mc-radio svelte-1u25pv4"><input type="radio"> <label class="mc-radio__label svelte-1u25pv4"> </label></div>');const F={hash:"svelte-1u25pv4",code:`/**
1
+ import{c as g,p as w,a as x,b as a,t as y,f as j,e as p,k as z,B,s as C,j as D,g as E,h as R,i as t,r as _}from"../custom-element.js";import{s as f,a as S,r as q}from"../attributes.js";var A=y('<div class="mc-radio svelte-1u25pv4"><input type="radio"> <label class="mc-radio__label svelte-1u25pv4"> </label></div>');const F={hash:"svelte-1u25pv4",code:`/**
2
2
  * Do not edit directly, this file was auto-generated.
3
3
  */.mc-radio.svelte-1u25pv4 {align-items:center;display:flex;gap:0.5rem;}.mc-radio__label.svelte-1u25pv4 {font-size:1rem;line-height:1.3;color:var(--forms-color-text-default, #000000);cursor:pointer;}.mc-radio__input.svelte-1u25pv4 {appearance:none;margin:0;cursor:pointer;transition:box-shadow 200ms ease;background-color:var(--forms-color-background-default, #ffffff);border:0.125rem solid var(--forms-color-border-default, #666666);border-radius:100%;transition:all ease 200ms;height:1.25rem;width:1.25rem;position:relative;}.mc-radio__input.svelte-1u25pv4::before {border-radius:100%;content:"";display:block;height:0.5rem;left:50%;position:absolute;top:50%;transform:translate(-50%, -50%);width:0.5rem;}.mc-radio__input.svelte-1u25pv4:hover {border-color:var(--forms-color-border-hover, #4d4d4d);}.mc-radio__input.svelte-1u25pv4: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-radio__input.svelte-1u25pv4:checked {background-color:var(--forms-color-background-checked, #117f03);}.mc-radio__input.svelte-1u25pv4:checked::before {background-color:var(--forms-color-background-default, #ffffff);}.mc-radio__input.svelte-1u25pv4:checked, .mc-radio__input.svelte-1u25pv4:disabled {border-color:transparent;}.mc-radio__input.svelte-1u25pv4:disabled {background-color:var(--forms-color-background-disabled, #d9d9d9);cursor:not-allowed;}.mc-radio__input.svelte-1u25pv4:disabled:checked::before {background-color:var(--forms-color-icon-disabled, #737373);}.mc-radio__input.svelte-1u25pv4:disabled + .mc-radio__label:where(.svelte-1u25pv4) {color:var(--forms-color-text-disabled, #737373);cursor:not-allowed;}.mc-radio__input.svelte-1u25pv4:not(:disabled):checked:hover {background-color:var(--forms-color-background-checked-hover, #006902);}.mc-radio__input.is-invalid.svelte-1u25pv4:not(:checked) {border-color:var(--forms-color-border-invalid, #ea302d);}.mc-radio__input.is-invalid.svelte-1u25pv4:not(:checked):hover {border-color:var(--forms-color-border-invalid-hover, #c61112);}`};function G(m,r){w(r,!0),x(m,F);let s=a(r,"id",7,""),l=a(r,"name",7,""),i=a(r,"checked",7,!1),d=a(r,"disabled",7,!1),c=a(r,"isinvalid",7,!1),n=a(r,"label",7,"");function h(e){const b=["mc-radio__input"];return e&&b.push("is-invalid"),b.join(" ")}var u=A(),o=p(u);q(o);var v=C(o,2),k=p(v,!0);return _(v),_(u),j(e=>{f(o,"id",s()),z(o,1,B(e),"svelte-1u25pv4"),f(o,"name",l()),S(o,i()),o.disabled=d(),f(v,"for",s()),D(k,n())},[()=>h(c())]),E(m,u),R({get id(){return s()},set id(e=""){s(e),t()},get name(){return l()},set name(e=""){l(e),t()},get checked(){return i()},set checked(e=!1){i(e),t()},get disabled(){return d()},set disabled(e=!1){d(e),t()},get isinvalid(){return c()},set isinvalid(e=!1){c(e),t()},get label(){return n()},set label(e=""){n(e),t()}})}customElements.define("m-radio",g(G,{id:{},name:{},checked:{},disabled:{},isinvalid:{},label:{}},[],[],!0));
4
4
  //# sourceMappingURL=Radio.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Radio.js","sources":["../../src/components/radio/Radio.svelte"],"sourcesContent":["<svelte:options customElement={{ tag: 'm-radio' }} />\n\n<script lang=\"ts\">\n let {\n id = '',\n name = '',\n checked = false,\n disabled = false,\n isinvalid = false,\n label = '',\n } = $props();\n\n function getClasses(isInvalid: boolean): string {\n const classes = ['mc-radio__input'];\n if (isInvalid) {\n classes.push('is-invalid');\n }\n return classes.join(' ');\n }\n</script>\n\n<!-- svelte-ignore a11y_click_events_have_key_events -->\n<div class=\"mc-radio\">\n <input\n {id}\n type=\"radio\"\n class={getClasses(isinvalid)}\n {name}\n {checked}\n {disabled}\n />\n <label for={id} class=\"mc-radio__label\">{label}</label>\n</div>\n\n<style lang=\"scss\">\n @use '@mozaic-ds/styles/components/radio';\n</style>\n"],"names":["id","name","checked","disabled","isinvalid","label","getClasses","isInvalid","classes"],"mappings":";;yqEAII,IAAAA,aAAK,EAAE,EACPC,eAAO,EAAE,EACTC,kBAAU,EAAK,EACfC,mBAAW,EAAK,EAChBC,oBAAY,EAAK,EACjBC,gBAAQ,EAAE,WAGHC,EAAWC,EAA4B,CACxC,MAAAC,GAAW,iBAAiB,EAC9B,OAAAD,GACFC,EAAQ,KAAK,YAAY,EAEpBA,EAAQ,KAAK,GAAG,CACzB,kKAaYR,GAAE,MAA2BK,GAAK,GALrC,CAAA,IAAAC,EAAWF,GAAS,CAAA,2CAtBtB,GAAE,6CACA,GAAE,mDACC,GAAK,qDACJ,GAAK,uDACJ,GAAK,+CACT,GAAE"}
@@ -0,0 +1,109 @@
1
+ <svelte:options customElement={{ tag: 'm-radio' }} />
2
+
3
+ <script lang="ts">
4
+ let {
5
+ id = '',
6
+ name = '',
7
+ checked = false,
8
+ disabled = false,
9
+ isinvalid = false,
10
+ label = '',
11
+ } = $props();
12
+
13
+ function getClasses(isInvalid: boolean): string {
14
+ const classes = ['mc-radio__input'];
15
+ if (isInvalid) {
16
+ classes.push('is-invalid');
17
+ }
18
+ return classes.join(' ');
19
+ }
20
+ </script>
21
+
22
+ <!-- svelte-ignore a11y_click_events_have_key_events -->
23
+ <div class="mc-radio">
24
+ <input
25
+ {id}
26
+ type="radio"
27
+ class={getClasses(isinvalid)}
28
+ {name}
29
+ {checked}
30
+ {disabled}
31
+ />
32
+ <label for={id} class="mc-radio__label">{label}</label>
33
+ </div>
34
+
35
+ <style>/**
36
+ * Do not edit directly, this file was auto-generated.
37
+ */
38
+ .mc-radio {
39
+ align-items: center;
40
+ display: flex;
41
+ gap: 0.5rem;
42
+ }
43
+ .mc-radio__label {
44
+ font-size: 1rem;
45
+ line-height: 1.3;
46
+ color: var(--forms-color-text-default, #000000);
47
+ cursor: pointer;
48
+ }
49
+ .mc-radio__input {
50
+ appearance: none;
51
+ margin: 0;
52
+ cursor: pointer;
53
+ transition: box-shadow 200ms ease;
54
+ background-color: var(--forms-color-background-default, #ffffff);
55
+ border: 0.125rem solid var(--forms-color-border-default, #666666);
56
+ border-radius: 100%;
57
+ transition: all ease 200ms;
58
+ height: 1.25rem;
59
+ width: 1.25rem;
60
+ position: relative;
61
+ }
62
+ .mc-radio__input::before {
63
+ border-radius: 100%;
64
+ content: "";
65
+ display: block;
66
+ height: 0.5rem;
67
+ left: 50%;
68
+ position: absolute;
69
+ top: 50%;
70
+ transform: translate(-50%, -50%);
71
+ width: 0.5rem;
72
+ }
73
+ .mc-radio__input:hover {
74
+ border-color: var(--forms-color-border-hover, #4d4d4d);
75
+ }
76
+ .mc-radio__input:focus-visible {
77
+ 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));
78
+ outline: 0.125rem solid transparent;
79
+ outline-offset: 0.125rem;
80
+ }
81
+ .mc-radio__input:checked {
82
+ background-color: var(--forms-color-background-checked, #117f03);
83
+ }
84
+ .mc-radio__input:checked::before {
85
+ background-color: var(--forms-color-background-default, #ffffff);
86
+ }
87
+ .mc-radio__input:checked, .mc-radio__input:disabled {
88
+ border-color: transparent;
89
+ }
90
+ .mc-radio__input:disabled {
91
+ background-color: var(--forms-color-background-disabled, #d9d9d9);
92
+ cursor: not-allowed;
93
+ }
94
+ .mc-radio__input:disabled:checked::before {
95
+ background-color: var(--forms-color-icon-disabled, #737373);
96
+ }
97
+ .mc-radio__input:disabled + .mc-radio__label {
98
+ color: var(--forms-color-text-disabled, #737373);
99
+ cursor: not-allowed;
100
+ }
101
+ .mc-radio__input:not(:disabled):checked:hover {
102
+ background-color: var(--forms-color-background-checked-hover, #006902);
103
+ }
104
+ .mc-radio__input.is-invalid:not(:checked) {
105
+ border-color: var(--forms-color-border-invalid, #ea302d);
106
+ }
107
+ .mc-radio__input.is-invalid:not(:checked):hover {
108
+ border-color: var(--forms-color-border-invalid-hover, #c61112);
109
+ }</style>
@@ -0,0 +1,11 @@
1
+ declare const Radio: import("svelte").Component<{
2
+ id?: string;
3
+ name?: string;
4
+ checked?: boolean;
5
+ disabled?: boolean;
6
+ isinvalid?: boolean;
7
+ label?: string;
8
+ }, {}, "">;
9
+ type Radio = ReturnType<typeof Radio>;
10
+ export default Radio;
11
+ //# sourceMappingURL=Radio.svelte.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Radio.svelte.d.ts","sourceRoot":"","sources":["../../src/components/radio/Radio.svelte.ts"],"names":[],"mappings":"AAkCA,QAAA,MAAM,KAAK;SA/BuC,MAAM;WAAS,MAAM;cAAY,OAAO;eAAa,OAAO;gBAAc,OAAO;YAAU,MAAM;UA+BlG,CAAC;AAClD,KAAK,KAAK,GAAG,UAAU,CAAC,OAAO,KAAK,CAAC,CAAC;AACtC,eAAe,KAAK,CAAC"}