@flightlesslabs/dodo-ui 0.13.0 → 0.15.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (212) hide show
  1. package/dist/index.d.ts +9 -0
  2. package/dist/index.js +6 -0
  3. package/dist/stories/components/Form/Button/Button.svelte +1 -1
  4. package/dist/stories/components/Form/Button/Button.svelte.d.ts +1 -1
  5. package/dist/stories/components/Form/Checkbox/Checkbox.stories.svelte +39 -0
  6. package/dist/stories/components/Form/Checkbox/Checkbox.stories.svelte.d.ts +21 -0
  7. package/dist/stories/components/Form/Checkbox/Checkbox.svelte +452 -0
  8. package/dist/stories/components/Form/Checkbox/Checkbox.svelte.d.ts +42 -0
  9. package/{src/lib/stories/components/Form/RangeSlider → dist/stories/components/Form/Checkbox}/Color/Color.stories.svelte +4 -4
  10. package/dist/stories/components/Form/Checkbox/Color/Color.stories.svelte.d.ts +26 -0
  11. package/dist/stories/components/Form/Checkbox/Customize/Customize.stories.svelte +27 -0
  12. package/dist/stories/components/Form/Checkbox/Customize/Customize.stories.svelte.d.ts +18 -0
  13. package/dist/stories/components/Form/Checkbox/Events/Events.stories.svelte +35 -0
  14. package/dist/stories/components/Form/Checkbox/Events/Events.stories.svelte.d.ts +18 -0
  15. package/{src/lib/stories/components/Form/PasswordInput → dist/stories/components/Form/Checkbox}/Roundness/Roundness.stories.svelte +6 -4
  16. package/dist/stories/components/Form/Checkbox/Roundness/Roundness.stories.svelte.d.ts +26 -0
  17. package/{src/lib/stories/components/Form/RangeSlider → dist/stories/components/Form/Checkbox}/Size/Size.stories.svelte +4 -4
  18. package/dist/stories/components/Form/Checkbox/Size/Size.stories.svelte.d.ts +26 -0
  19. package/dist/stories/components/Form/Checkbox/utils/scss/mixins.scss +80 -0
  20. package/{src/lib/stories/components/Info/Calendar/SubComponents/CalendarMonthList → dist/stories/components/Form/Radio}/Color/Color.stories.svelte +4 -7
  21. package/dist/stories/components/Form/Radio/Color/Color.stories.svelte.d.ts +26 -0
  22. package/dist/stories/components/Form/Radio/Events/Events.stories.svelte +32 -0
  23. package/dist/stories/components/Form/Radio/Events/Events.stories.svelte.d.ts +18 -0
  24. package/dist/stories/components/Form/Radio/Radio.stories.svelte +39 -0
  25. package/dist/stories/components/Form/Radio/Radio.stories.svelte.d.ts +21 -0
  26. package/dist/stories/components/Form/Radio/Radio.svelte +413 -0
  27. package/dist/stories/components/Form/Radio/Radio.svelte.d.ts +36 -0
  28. package/{src/lib/stories/components/Form/NumericInput → dist/stories/components/Form/Radio}/Roundness/Roundness.stories.svelte +7 -5
  29. package/dist/stories/components/Form/Radio/Roundness/Roundness.stories.svelte.d.ts +26 -0
  30. package/{src/lib/stories/components/Info/Calendar/SubComponents/CalendarDatesChart/CalendarWeek → dist/stories/components/Form/Radio}/Size/Size.stories.svelte +4 -4
  31. package/dist/stories/components/Form/Radio/Size/Size.stories.svelte.d.ts +26 -0
  32. package/dist/stories/components/Form/Radio/utils/scss/mixins.scss +85 -0
  33. package/{src/lib/stories/components/Info/Calendar/SubComponents/CalendarControls/CalendarNavigation → dist/stories/components/Form/Toggle}/Color/Color.stories.svelte +4 -4
  34. package/dist/stories/components/Form/Toggle/Color/Color.stories.svelte.d.ts +26 -0
  35. package/dist/stories/components/Form/Toggle/Events/Events.stories.svelte +35 -0
  36. package/dist/stories/components/Form/Toggle/Events/Events.stories.svelte.d.ts +18 -0
  37. package/{src/lib/stories/developer tools/components/InputEnclosure/Roundness/Roundness.stories.svelte → dist/stories/components/Form/Toggle/Roundness/Roundness.stories.svelte} +8 -6
  38. package/dist/stories/components/Form/Toggle/Roundness/Roundness.stories.svelte.d.ts +26 -0
  39. package/{src/lib/stories/components/Form/NumericInput → dist/stories/components/Form/Toggle}/Size/Size.stories.svelte +4 -4
  40. package/dist/stories/components/Form/Toggle/Size/Size.stories.svelte.d.ts +26 -0
  41. package/dist/stories/components/Form/Toggle/Toggle.stories.svelte +37 -0
  42. package/dist/stories/components/Form/Toggle/Toggle.stories.svelte.d.ts +21 -0
  43. package/dist/stories/components/Form/Toggle/Toggle.svelte +359 -0
  44. package/dist/stories/components/Form/Toggle/Toggle.svelte.d.ts +36 -0
  45. package/dist/stories/components/Form/Toggle/utils/scss/mixins.scss +68 -0
  46. package/package.json +16 -14
  47. package/src/lib/index.ts +12 -0
  48. package/src/lib/stories/components/Form/Button/Button.svelte +2 -2
  49. package/src/lib/stories/components/Form/Checkbox/Checkbox.svelte +323 -0
  50. package/src/lib/stories/components/Form/Checkbox/utils/scss/mixins.scss +80 -0
  51. package/src/lib/stories/components/Form/Radio/Radio.svelte +278 -0
  52. package/src/lib/stories/components/Form/Radio/utils/scss/mixins.scss +85 -0
  53. package/src/lib/stories/components/Form/Toggle/Toggle.svelte +290 -0
  54. package/src/lib/stories/components/Form/Toggle/utils/scss/mixins.scss +68 -0
  55. package/src/lib/stories/Home.mdx +0 -59
  56. package/src/lib/stories/assets/dark-theme-toggle.png +0 -0
  57. package/src/lib/stories/components/Form/Button/Button.stories.svelte +0 -61
  58. package/src/lib/stories/components/Form/Button/Color/Color.stories.svelte +0 -43
  59. package/src/lib/stories/components/Form/Button/Events/Events.stories.svelte +0 -36
  60. package/src/lib/stories/components/Form/Button/IconButton/IconButton.stories.svelte +0 -43
  61. package/src/lib/stories/components/Form/Button/Roundness/Roundness.stories.svelte +0 -23
  62. package/src/lib/stories/components/Form/Button/Size/Size.stories.svelte +0 -16
  63. package/src/lib/stories/components/Form/Button/Variant/Variant.stories.svelte +0 -18
  64. package/src/lib/stories/components/Form/DatePicker/Color/Color.stories.svelte +0 -47
  65. package/src/lib/stories/components/Form/DatePicker/Controls/Controls.stories.svelte +0 -58
  66. package/src/lib/stories/components/Form/DatePicker/Customize/Customize.stories.svelte +0 -167
  67. package/src/lib/stories/components/Form/DatePicker/DatePicker.stories.svelte +0 -107
  68. package/src/lib/stories/components/Form/DatePicker/Events/Events.stories.svelte +0 -147
  69. package/src/lib/stories/components/Form/DatePicker/FilterDates/FilterDates.stories.svelte +0 -61
  70. package/src/lib/stories/components/Form/DatePicker/Positions/AutoPosition/AutoPosition.stories.svelte +0 -46
  71. package/src/lib/stories/components/Form/DatePicker/Positions/Positions.stories.svelte +0 -57
  72. package/src/lib/stories/components/Form/DatePicker/Roundness/Roundness.stories.svelte +0 -38
  73. package/src/lib/stories/components/Form/DatePicker/Size/Size.stories.svelte +0 -41
  74. package/src/lib/stories/components/Form/DatePicker/WithIcon/WithIcon.stories.svelte +0 -41
  75. package/src/lib/stories/components/Form/FormControl/FormControl.stories.svelte +0 -28
  76. package/src/lib/stories/components/Form/Label/Label.stories.svelte +0 -13
  77. package/src/lib/stories/components/Form/Message/Color/Color.stories.svelte +0 -36
  78. package/src/lib/stories/components/Form/Message/Message.stories.svelte +0 -27
  79. package/src/lib/stories/components/Form/Message/Size/Size.stories.svelte +0 -22
  80. package/src/lib/stories/components/Form/NumericInput/Events/Events.stories.svelte +0 -134
  81. package/src/lib/stories/components/Form/NumericInput/NumericInput.stories.svelte +0 -84
  82. package/src/lib/stories/components/Form/NumericInput/Validation/Validation.stories.svelte +0 -87
  83. package/src/lib/stories/components/Form/NumericInput/WithIcon/WithIcon.stories.svelte +0 -31
  84. package/src/lib/stories/components/Form/PasswordInput/Events/Events.stories.svelte +0 -132
  85. package/src/lib/stories/components/Form/PasswordInput/PasswordInput.stories.svelte +0 -58
  86. package/src/lib/stories/components/Form/PasswordInput/Size/Size.stories.svelte +0 -16
  87. package/src/lib/stories/components/Form/PasswordInput/WithIcon/WithIcon.stories.svelte +0 -31
  88. package/src/lib/stories/components/Form/RangeSlider/Events/Events.stories.svelte +0 -63
  89. package/src/lib/stories/components/Form/RangeSlider/RangeSlider.stories.svelte +0 -69
  90. package/src/lib/stories/components/Form/RangeSlider/Roundness/Roundness.stories.svelte +0 -30
  91. package/src/lib/stories/components/Form/RangeSlider/WithIcon/WithIcon.stories.svelte +0 -33
  92. package/src/lib/stories/components/Form/Select/Customize/Customize.stories.svelte +0 -139
  93. package/src/lib/stories/components/Form/Select/DropDownArrow/DropDownArrow.stories.svelte +0 -63
  94. package/src/lib/stories/components/Form/Select/Events/Events.stories.svelte +0 -174
  95. package/src/lib/stories/components/Form/Select/Options/OptionFormat.mdx +0 -40
  96. package/src/lib/stories/components/Form/Select/Positions/AutoPosition/AutoPosition.stories.svelte +0 -58
  97. package/src/lib/stories/components/Form/Select/Positions/Positions.stories.svelte +0 -87
  98. package/src/lib/stories/components/Form/Select/Roundness/Roundness.stories.svelte +0 -32
  99. package/src/lib/stories/components/Form/Select/Select.stories.svelte +0 -125
  100. package/src/lib/stories/components/Form/Select/Size/Size.stories.svelte +0 -28
  101. package/src/lib/stories/components/Form/Select/WithIcon/WithIcon.stories.svelte +0 -43
  102. package/src/lib/stories/components/Form/TextInput/Events/Events.stories.svelte +0 -125
  103. package/src/lib/stories/components/Form/TextInput/Roundness/Roundness.stories.svelte +0 -21
  104. package/src/lib/stories/components/Form/TextInput/Size/Size.stories.svelte +0 -17
  105. package/src/lib/stories/components/Form/TextInput/TextInput.stories.svelte +0 -43
  106. package/src/lib/stories/components/Form/TextInput/WithIcon/WithIcon.stories.svelte +0 -47
  107. package/src/lib/stories/components/Info/Calendar/Calendar.stories.svelte +0 -121
  108. package/src/lib/stories/components/Info/Calendar/Color/Color.stories.svelte +0 -23
  109. package/src/lib/stories/components/Info/Calendar/Controls/Controls.stories.svelte +0 -26
  110. package/src/lib/stories/components/Info/Calendar/Customize/Customize.stories.svelte +0 -160
  111. package/src/lib/stories/components/Info/Calendar/Events/Events.stories.svelte +0 -122
  112. package/src/lib/stories/components/Info/Calendar/FilterDates/FilterDates.stories.svelte +0 -70
  113. package/src/lib/stories/components/Info/Calendar/Size/Size.stories.svelte +0 -20
  114. package/src/lib/stories/components/Info/Calendar/SubComponents/CalendarControls/CalendarControls.stories.svelte +0 -36
  115. package/src/lib/stories/components/Info/Calendar/SubComponents/CalendarControls/CalendarMonthSelector/CalendarMonthSelector.stories.svelte +0 -58
  116. package/src/lib/stories/components/Info/Calendar/SubComponents/CalendarControls/CalendarMonthSelector/Color/Color.stories.svelte +0 -23
  117. package/src/lib/stories/components/Info/Calendar/SubComponents/CalendarControls/CalendarMonthSelector/Customize/Customize.stories.svelte +0 -30
  118. package/src/lib/stories/components/Info/Calendar/SubComponents/CalendarControls/CalendarMonthSelector/Events/Events.stories.svelte +0 -25
  119. package/src/lib/stories/components/Info/Calendar/SubComponents/CalendarControls/CalendarMonthSelector/NameTypes/NameTypes.stories.svelte +0 -25
  120. package/src/lib/stories/components/Info/Calendar/SubComponents/CalendarControls/CalendarMonthSelector/Roundness/Roundness.stories.svelte +0 -26
  121. package/src/lib/stories/components/Info/Calendar/SubComponents/CalendarControls/CalendarMonthSelector/Size/Size.stories.svelte +0 -20
  122. package/src/lib/stories/components/Info/Calendar/SubComponents/CalendarControls/CalendarNavigation/CalendarNavigation.stories.svelte +0 -36
  123. package/src/lib/stories/components/Info/Calendar/SubComponents/CalendarControls/CalendarNavigation/Customize/Customize.stories.svelte +0 -33
  124. package/src/lib/stories/components/Info/Calendar/SubComponents/CalendarControls/CalendarNavigation/Events/Events.stories.svelte +0 -37
  125. package/src/lib/stories/components/Info/Calendar/SubComponents/CalendarControls/CalendarNavigation/Size/Size.stories.svelte +0 -16
  126. package/src/lib/stories/components/Info/Calendar/SubComponents/CalendarControls/CalendarYearSelector/CalendarYearSelector.stories.svelte +0 -58
  127. package/src/lib/stories/components/Info/Calendar/SubComponents/CalendarControls/CalendarYearSelector/Color/Color.stories.svelte +0 -23
  128. package/src/lib/stories/components/Info/Calendar/SubComponents/CalendarControls/CalendarYearSelector/Customize/Customize.stories.svelte +0 -30
  129. package/src/lib/stories/components/Info/Calendar/SubComponents/CalendarControls/CalendarYearSelector/Events/Events.stories.svelte +0 -25
  130. package/src/lib/stories/components/Info/Calendar/SubComponents/CalendarControls/CalendarYearSelector/Roundness/Roundness.stories.svelte +0 -26
  131. package/src/lib/stories/components/Info/Calendar/SubComponents/CalendarControls/CalendarYearSelector/Size/Size.stories.svelte +0 -20
  132. package/src/lib/stories/components/Info/Calendar/SubComponents/CalendarControls/Color/Color.stories.svelte +0 -23
  133. package/src/lib/stories/components/Info/Calendar/SubComponents/CalendarControls/Controls/Controls.stories.svelte +0 -21
  134. package/src/lib/stories/components/Info/Calendar/SubComponents/CalendarControls/Customize/Customize.stories.svelte +0 -69
  135. package/src/lib/stories/components/Info/Calendar/SubComponents/CalendarControls/Events/Events.stories.svelte +0 -61
  136. package/src/lib/stories/components/Info/Calendar/SubComponents/CalendarControls/Size/Size.stories.svelte +0 -20
  137. package/src/lib/stories/components/Info/Calendar/SubComponents/CalendarDatesChart/CalendarDateChip/CalendarDateChip.stories.svelte +0 -75
  138. package/src/lib/stories/components/Info/Calendar/SubComponents/CalendarDatesChart/CalendarDateChip/Color/Color.stories.svelte +0 -41
  139. package/src/lib/stories/components/Info/Calendar/SubComponents/CalendarDatesChart/CalendarDateChip/Customize/Customize.stories.svelte +0 -45
  140. package/src/lib/stories/components/Info/Calendar/SubComponents/CalendarDatesChart/CalendarDateChip/Events/Events.stories.svelte +0 -28
  141. package/src/lib/stories/components/Info/Calendar/SubComponents/CalendarDatesChart/CalendarDateChip/Roundness/Roundness.stories.svelte +0 -31
  142. package/src/lib/stories/components/Info/Calendar/SubComponents/CalendarDatesChart/CalendarDateChip/Size/Size.stories.svelte +0 -24
  143. package/src/lib/stories/components/Info/Calendar/SubComponents/CalendarDatesChart/CalendarDateChip/SpecialChips/SpecialChips.stories.svelte +0 -96
  144. package/src/lib/stories/components/Info/Calendar/SubComponents/CalendarDatesChart/CalendarDatesChart.stories.svelte +0 -104
  145. package/src/lib/stories/components/Info/Calendar/SubComponents/CalendarDatesChart/CalendarWeek/CalendarWeek.stories.svelte +0 -38
  146. package/src/lib/stories/components/Info/Calendar/SubComponents/CalendarDatesChart/CalendarWeek/Customize/Customize.stories.svelte +0 -32
  147. package/src/lib/stories/components/Info/Calendar/SubComponents/CalendarDatesChart/CalendarWeek/NameTypes/NameTypes.stories.svelte +0 -28
  148. package/src/lib/stories/components/Info/Calendar/SubComponents/CalendarDatesChart/Color/Color.stories.svelte +0 -23
  149. package/src/lib/stories/components/Info/Calendar/SubComponents/CalendarDatesChart/Customize/Customize.stories.svelte +0 -68
  150. package/src/lib/stories/components/Info/Calendar/SubComponents/CalendarDatesChart/Events/Events.stories.svelte +0 -24
  151. package/src/lib/stories/components/Info/Calendar/SubComponents/CalendarDatesChart/Size/Size.stories.svelte +0 -20
  152. package/src/lib/stories/components/Info/Calendar/SubComponents/CalendarMonthList/CalendarMonthChip/CalendarMonthChip.stories.svelte +0 -40
  153. package/src/lib/stories/components/Info/Calendar/SubComponents/CalendarMonthList/CalendarMonthChip/Color/Color.stories.svelte +0 -29
  154. package/src/lib/stories/components/Info/Calendar/SubComponents/CalendarMonthList/CalendarMonthChip/Customize/Customize.stories.svelte +0 -33
  155. package/src/lib/stories/components/Info/Calendar/SubComponents/CalendarMonthList/CalendarMonthChip/Events/Events.stories.svelte +0 -23
  156. package/src/lib/stories/components/Info/Calendar/SubComponents/CalendarMonthList/CalendarMonthChip/Roundness/Roundness.stories.svelte +0 -26
  157. package/src/lib/stories/components/Info/Calendar/SubComponents/CalendarMonthList/CalendarMonthChip/Size/Size.stories.svelte +0 -19
  158. package/src/lib/stories/components/Info/Calendar/SubComponents/CalendarMonthList/CalendarMonthList.stories.svelte +0 -45
  159. package/src/lib/stories/components/Info/Calendar/SubComponents/CalendarMonthList/Customize/Customize.stories.svelte +0 -36
  160. package/src/lib/stories/components/Info/Calendar/SubComponents/CalendarMonthList/Events/Events.stories.svelte +0 -33
  161. package/src/lib/stories/components/Info/Calendar/SubComponents/CalendarMonthList/Size/Size.stories.svelte +0 -19
  162. package/src/lib/stories/components/Info/Calendar/SubComponents/CalendarYearList/CalendarYearChip/CalendarYearChip.stories.svelte +0 -41
  163. package/src/lib/stories/components/Info/Calendar/SubComponents/CalendarYearList/CalendarYearChip/Color/Color.stories.svelte +0 -30
  164. package/src/lib/stories/components/Info/Calendar/SubComponents/CalendarYearList/CalendarYearChip/Customize/Customize.stories.svelte +0 -33
  165. package/src/lib/stories/components/Info/Calendar/SubComponents/CalendarYearList/CalendarYearChip/Events/Events.stories.svelte +0 -24
  166. package/src/lib/stories/components/Info/Calendar/SubComponents/CalendarYearList/CalendarYearChip/Roundness/Roundness.stories.svelte +0 -27
  167. package/src/lib/stories/components/Info/Calendar/SubComponents/CalendarYearList/CalendarYearChip/Size/Size.stories.svelte +0 -20
  168. package/src/lib/stories/components/Info/Calendar/SubComponents/CalendarYearList/CalendarYearList.stories.svelte +0 -39
  169. package/src/lib/stories/components/Info/Calendar/SubComponents/CalendarYearList/Color/Color.stories.svelte +0 -23
  170. package/src/lib/stories/components/Info/Calendar/SubComponents/CalendarYearList/Customize/Customize.stories.svelte +0 -36
  171. package/src/lib/stories/components/Info/Calendar/SubComponents/CalendarYearList/Events/Events.stories.svelte +0 -24
  172. package/src/lib/stories/components/Info/Calendar/SubComponents/CalendarYearList/Size/Size.stories.svelte +0 -20
  173. package/src/lib/stories/components/Info/Calendar/utils/createDateOfMonth/index.mdx +0 -121
  174. package/src/lib/stories/components/Info/Calendar/utils/getDatesOfMonth/index.mdx +0 -37
  175. package/src/lib/stories/components/Layout/Menu/DynamicMenu/Customize/Customize.stories.svelte +0 -30
  176. package/src/lib/stories/components/Layout/Menu/DynamicMenu/DynamicMenu.stories.svelte +0 -56
  177. package/src/lib/stories/components/Layout/Menu/DynamicMenu/Events/Events.stories.svelte +0 -48
  178. package/src/lib/stories/components/Layout/Menu/DynamicMenu/KeybaordNavigation/KeybaordNavigation.stories.svelte +0 -29
  179. package/src/lib/stories/components/Layout/Menu/DynamicMenu/Options/OptionFormat.mdx +0 -72
  180. package/src/lib/stories/components/Layout/Menu/Menu.stories.svelte +0 -69
  181. package/src/lib/stories/components/Layout/Menu/MenuItem/MenuItem.stories.svelte +0 -34
  182. package/src/lib/stories/components/Layout/Menu/MenuItem/Size/Size.stories.svelte +0 -16
  183. package/src/lib/stories/components/Layout/Menu/MenuItem/Type/Type.stories.svelte +0 -21
  184. package/src/lib/stories/components/Layout/Menu/Size/Size.stories.svelte +0 -37
  185. package/src/lib/stories/components/Layout/Paper/Color/Color.stories.svelte +0 -63
  186. package/src/lib/stories/components/Layout/Paper/Paper.stories.svelte +0 -50
  187. package/src/lib/stories/components/Layout/Paper/Roundness/Roundness.stories.svelte +0 -25
  188. package/src/lib/stories/components/Layout/Paper/Shadow/Shadow.stories.svelte +0 -24
  189. package/src/lib/stories/components/Layout/Separator/Color/Color.stories.svelte +0 -19
  190. package/src/lib/stories/components/Layout/Separator/Separator.stories.svelte +0 -30
  191. package/src/lib/stories/developer tools/Intro.mdx +0 -9
  192. package/src/lib/stories/developer tools/components/DynamicInput/DynamicInput.stories.svelte +0 -53
  193. package/src/lib/stories/developer tools/components/DynamicInput/Events/Events.stories.svelte +0 -121
  194. package/src/lib/stories/developer tools/components/DynamicInput/Size/Size.stories.svelte +0 -17
  195. package/src/lib/stories/developer tools/components/InputEnclosure/InputEnclosure.stories.svelte +0 -38
  196. package/src/lib/stories/developer tools/components/InputEnclosure/Size/Size.stories.svelte +0 -16
  197. package/src/lib/stories/developer tools/components/InputEnclosure/WithIcon/WithIcon.stories.svelte +0 -47
  198. package/src/lib/stories/developer tools/components/Popper/Popper.stories.svelte +0 -140
  199. package/src/lib/stories/developer tools/components/Popper/PopperPopup/PopperPopup.stories.svelte +0 -64
  200. package/src/lib/stories/developer tools/components/Popper/Positions/AutoPosition/AutoPosition.stories.svelte +0 -92
  201. package/src/lib/stories/developer tools/components/Popper/Positions/Positions.stories.svelte +0 -114
  202. package/src/lib/stories/developer tools/components/UtilityButton/Size/Size.stories.svelte +0 -25
  203. package/src/lib/stories/developer tools/components/UtilityButton/UtilityButton.stories.svelte +0 -30
  204. package/src/lib/stories/developer tools/directives/clickOutside/index.mdx +0 -25
  205. package/src/lib/stories/developer tools/helpers/Numbers/cleanNumericString/index.mdx +0 -20
  206. package/src/lib/stories/developer tools/helpers/Numbers/isValidNumberValue/index.mdx +0 -71
  207. package/src/lib/stories/developer tools/helpers/Time/getMoment/index.mdx +0 -45
  208. package/src/lib/stories/developer tools/helpers/logger/index.mdx +0 -63
  209. package/src/lib/stories/developer tools/philosophy/Colors/Colors.mdx +0 -43
  210. package/src/lib/stories/developer tools/philosophy/Colors/Colors.stories.svelte +0 -22
  211. package/src/lib/stories/developer tools/philosophy/Colors/Opacity.stories.svelte +0 -11
  212. package/src/lib/stories/developer tools/philosophy/Themes.mdx +0 -23
@@ -0,0 +1,278 @@
1
+ <script lang="ts" module>
2
+ import type { ComponentColor } from '$lib/types/colors.js';
3
+ import type { ComponentRoundness } from '$lib/types/roundness.js';
4
+ import type { ComponentSize } from '$lib/types/size.js';
5
+
6
+ import type { Snippet } from 'svelte';
7
+ import type { ChangeEventHandler } from 'svelte/elements';
8
+
9
+ export interface RadioProps {
10
+ /** Radio contents goes here */
11
+ children?: Snippet;
12
+ /** Radio ref */
13
+ ref?: HTMLInputElement;
14
+ /** How large should the radio be? */
15
+ size?: ComponentSize;
16
+ /** What color to use? */
17
+ color?: ComponentColor;
18
+ /** How round should the border radius be? */
19
+ roundness?: ComponentRoundness;
20
+ /** Radio disabled state */
21
+ disabled?: boolean;
22
+ /** Name */
23
+ name?: string;
24
+ /** value */
25
+ value?: string;
26
+ /** selected Value */
27
+ selectedValue?: string;
28
+ /** Id */
29
+ id?: string;
30
+ /** Title (for tooltip) */
31
+ title?: string;
32
+ /** Custom css class*/
33
+ class?: string;
34
+ /** onchange event handler */
35
+ onchange?: ChangeEventHandler<HTMLInputElement>;
36
+ }
37
+ </script>
38
+
39
+ <script lang="ts">
40
+ let {
41
+ children,
42
+ size = 'normal',
43
+ color = 'primary',
44
+ roundness = 'full',
45
+ name,
46
+ id,
47
+ title,
48
+ class: className = '',
49
+ disabled = false,
50
+ ref = $bindable<HTMLInputElement>(),
51
+ onchange,
52
+ value,
53
+ selectedValue,
54
+ }: RadioProps = $props();
55
+ </script>
56
+
57
+ <label
58
+ class:disabled
59
+ class={[
60
+ 'dodo-ui-Radio',
61
+ `size--${size}`,
62
+ `color--${color}`,
63
+ `roundness--${roundness}`,
64
+ className,
65
+ ].join(' ')}
66
+ for={id}
67
+ >
68
+ <input
69
+ type="radio"
70
+ {name}
71
+ {id}
72
+ {title}
73
+ {disabled}
74
+ {onchange}
75
+ bind:this={ref}
76
+ bind:group={selectedValue}
77
+ {value}
78
+ />
79
+ <div class="Radio">
80
+ <span class="RadioHandle"></span>
81
+ </div>
82
+
83
+ {#if children}
84
+ <div class="RadioMessage">
85
+ {@render children()}
86
+ </div>
87
+ {/if}
88
+ </label>
89
+
90
+ <style lang="scss">
91
+ @use 'utils/scss/mixins.scss' as *;
92
+
93
+ :global(:root) {
94
+ --dodo-ui-Radio-disabled-color: var(--dodo-color-neutral-400);
95
+ --dodo-ui-Radio-disabled-bg: var(--dodo-color-neutral-200);
96
+ --dodo-ui-Radio-border-disabled-color: var(--dodo-color-neutral-300);
97
+
98
+ --dodo-ui-Radio-border-color: var(--dodo-color-neutral-400);
99
+
100
+ @include generate-dodo-ui-radio-colors(neutral);
101
+ @include generate-dodo-ui-radio-colors(primary);
102
+ @include generate-dodo-ui-radio-colors(secondary);
103
+ @include generate-dodo-ui-radio-colors(safe);
104
+ @include generate-dodo-ui-radio-colors(warning);
105
+ @include generate-dodo-ui-radio-colors(danger);
106
+ }
107
+
108
+ :global(.dodo-theme--dark) {
109
+ --dodo-ui-Radio-disabled-bg: var(--dodo-color-neutral-100);
110
+ --dodo-ui-Radio-disabled-color: var(--dodo-color-neutral-500);
111
+ --dodo-ui-Radio-border-disabled-color: var(--dodo-color-neutral-400);
112
+
113
+ --dodo-ui-Radio-border-color: var(--dodo-color-neutral-500);
114
+
115
+ @include generate-dodo-ui-radio-colors-dark(neutral);
116
+ @include generate-dodo-ui-radio-colors-dark(primary);
117
+ @include generate-dodo-ui-radio-colors-dark(secondary);
118
+ @include generate-dodo-ui-radio-colors-dark(safe);
119
+ @include generate-dodo-ui-radio-colors-dark(warning);
120
+ @include generate-dodo-ui-radio-colors-dark(danger);
121
+ }
122
+
123
+ .dodo-ui-Radio {
124
+ cursor: pointer;
125
+ outline: none;
126
+ display: inline-flex;
127
+ padding: 0;
128
+ margin: 0;
129
+ position: relative;
130
+
131
+ input {
132
+ opacity: 0;
133
+ width: 0;
134
+ height: 0;
135
+ position: absolute;
136
+
137
+ &:focus-visible {
138
+ & + .Radio {
139
+ outline: 1px solid;
140
+ }
141
+ }
142
+
143
+ &:checked {
144
+ &:not([disabled]) {
145
+ & + .Radio {
146
+ .RadioHandle {
147
+ color: var(--dodo-color-constant-white);
148
+ }
149
+ }
150
+ }
151
+
152
+ &[disabled] {
153
+ & + .Radio {
154
+ .RadioHandle {
155
+ color: var(--dodo-ui-Radio-disabled-color);
156
+ }
157
+ }
158
+ }
159
+ }
160
+ }
161
+
162
+ .RadioHandle {
163
+ color: transparent;
164
+ display: inline-flex;
165
+ align-items: center;
166
+ justify-content: center;
167
+ border-radius: 50%;
168
+ height: 65%;
169
+ width: 65%;
170
+ }
171
+
172
+ .Radio {
173
+ transition: all 150ms;
174
+ text-decoration: none;
175
+ margin: 0;
176
+ display: inline-flex;
177
+ justify-content: center;
178
+ align-items: center;
179
+ font-family: inherit;
180
+ border-style: solid;
181
+ border-width: calc(var(--dodo-ui-element-border-width) * 2);
182
+ border-color: var(--dodo-ui-Radio-border-color);
183
+ outline: 0;
184
+ letter-spacing: 0.3px;
185
+ border-radius: inherit;
186
+ position: relative;
187
+ }
188
+
189
+ .RadioMessage {
190
+ display: flex;
191
+ align-items: center;
192
+ margin-left: var(--dodo-ui-space);
193
+ user-select: none;
194
+ }
195
+
196
+ &.size {
197
+ &--normal {
198
+ font-size: 1rem;
199
+
200
+ .Radio {
201
+ height: calc(var(--dodo-ui-element-height-normal) / 1.2);
202
+ width: calc(var(--dodo-ui-element-height-normal) / 1.2);
203
+ }
204
+ }
205
+
206
+ &--small {
207
+ font-size: 0.9rem;
208
+
209
+ .Radio {
210
+ height: calc(var(--dodo-ui-element-height-small) / 1.2);
211
+ width: calc(var(--dodo-ui-element-height-small) / 1.2);
212
+ }
213
+ }
214
+
215
+ &--large {
216
+ font-size: 1.1rem;
217
+
218
+ .Radio {
219
+ height: calc(var(--dodo-ui-element-height-large) / 1.2);
220
+ width: calc(var(--dodo-ui-element-height-large) / 1.2);
221
+ }
222
+ }
223
+ }
224
+
225
+ &.roundness {
226
+ &--1 {
227
+ border-radius: var(--dodo-ui-element-roundness-1);
228
+ }
229
+
230
+ &--2 {
231
+ border-radius: var(--dodo-ui-element-roundness-2);
232
+ }
233
+
234
+ &--3 {
235
+ border-radius: var(--dodo-ui-element-roundness-3);
236
+ }
237
+
238
+ &--full {
239
+ border-radius: 50%;
240
+ }
241
+ }
242
+
243
+ &.color {
244
+ @include generate-dodo-ui-radio-color(neutral);
245
+ @include generate-dodo-ui-radio-color(primary);
246
+ @include generate-dodo-ui-radio-color(secondary);
247
+ @include generate-dodo-ui-radio-color(safe);
248
+ @include generate-dodo-ui-radio-color(warning);
249
+ @include generate-dodo-ui-radio-color(danger);
250
+ }
251
+
252
+ &.disabled {
253
+ cursor: initial;
254
+ color: var(--dodo-ui-Radio-disabled-color);
255
+
256
+ .Radio {
257
+ background-color: var(--dodo-ui-Radio-disabled-bg);
258
+ border-color: var(--dodo-ui-Radio-border-disabled-color);
259
+ }
260
+
261
+ &:hover {
262
+ color: var(--dodo-ui-Radio-disabled-color);
263
+
264
+ .Radio {
265
+ background-color: var(--dodo-ui-Radio-disabled-bg);
266
+ }
267
+ }
268
+
269
+ &:active {
270
+ color: var(--dodo-ui-Radio-disabled-color);
271
+
272
+ .Radio {
273
+ background-color: var(--dodo-ui-Radio-disabled-bg);
274
+ }
275
+ }
276
+ }
277
+ }
278
+ </style>
@@ -0,0 +1,85 @@
1
+ /// Mixin: generate-dodo-ui-radio-colors
2
+ /// Generates CSS custom properties for Dodo UI radio styles (text & solid)
3
+ /// across different interaction states (default, hover, active).
4
+ /// @param {String} $color-name - The theme color name (e.g., "primary", "safe", etc.)
5
+ @mixin generate-dodo-ui-radio-colors($color-name) {
6
+ --dodo-ui-Radio-#{$color-name}-bg: var(--dodo-color-#{$color-name}-200);
7
+ --dodo-ui-Radio-#{$color-name}-hover-bg: var(--dodo-color-#{$color-name}-300);
8
+ --dodo-ui-Radio-#{$color-name}-active-bg: var(--dodo-color-#{$color-name}-400);
9
+
10
+ --dodo-ui-Radio-#{$color-name}-checked-bg: var(--dodo-color-#{$color-name}-500);
11
+ --dodo-ui-Radio-#{$color-name}-checked-hover-bg: var(--dodo-color-#{$color-name}-600);
12
+ --dodo-ui-Radio-#{$color-name}-checked-active-bg: var(--dodo-color-#{$color-name}-700);
13
+ }
14
+
15
+ /// Mixin: generate-dodo-ui-radio-colors
16
+ /// Generates CSS custom properties for Dodo UI radio styles (text & solid)
17
+ /// across different interaction states (default, hover, active).
18
+ /// @param {String} $color-name - The theme color name (e.g., "primary", "safe", etc.)
19
+ @mixin generate-dodo-ui-radio-colors-dark($color-name) {
20
+ --dodo-ui-Radio-#{$color-name}-bg: color-mix(
21
+ in oklab,
22
+ var(--dodo-color-#{$color-name}-50) 90%,
23
+ #fff
24
+ );
25
+ --dodo-ui-Radio-#{$color-name}-hover-bg: color-mix(
26
+ in oklab,
27
+ var(--dodo-color-#{$color-name}-100) 90%,
28
+ #fff
29
+ );
30
+ --dodo-ui-Radio-#{$color-name}-active-bg: color-mix(
31
+ in oklab,
32
+ var(--dodo-color-#{$color-name}-200) 90%,
33
+ #fff
34
+ );
35
+
36
+ --dodo-ui-Radio-#{$color-name}-checked-bg: var(--dodo-color-#{$color-name}-400);
37
+ --dodo-ui-Radio-#{$color-name}-checked-hover-bg: var(--dodo-color-#{$color-name}-300);
38
+ --dodo-ui-Radio-#{$color-name}-checked-active-bg: var(--dodo-color-#{$color-name}-200);
39
+ }
40
+
41
+ /// Mixin: generate-dodo-ui-radio-color
42
+ /// @param {String} $theme - e.g., default, safe, danger, etc.
43
+ @mixin generate-dodo-ui-radio-color($theme) {
44
+ &--#{$theme} {
45
+ .Radio {
46
+ background-color: var(--dodo-ui-Radio-#{$theme}-bg);
47
+ }
48
+
49
+ input:checked:not([disabled]) {
50
+ & + .Radio {
51
+ .RadioHandle {
52
+ background-color: var(--dodo-ui-Radio-#{$theme}-checked-bg);
53
+ }
54
+ }
55
+ }
56
+
57
+ &:hover {
58
+ .Radio {
59
+ background-color: var(--dodo-ui-Radio-#{$theme}-hover-bg);
60
+ }
61
+
62
+ input:checked:not([disabled]) {
63
+ & + .Radio {
64
+ .RadioHandle {
65
+ background-color: var(--dodo-ui-Radio-#{$theme}-checked-hover-bg);
66
+ }
67
+ }
68
+ }
69
+ }
70
+
71
+ &:active {
72
+ .Radio {
73
+ background-color: var(--dodo-ui-Radio-#{$theme}-active-bg);
74
+ }
75
+
76
+ input:checked:not([disabled]) {
77
+ & + .Radio {
78
+ .RadioHandle {
79
+ background-color: var(--dodo-ui-Radio-#{$theme}-checked-active-bg);
80
+ }
81
+ }
82
+ }
83
+ }
84
+ }
85
+ }
@@ -0,0 +1,290 @@
1
+ <script lang="ts" module>
2
+ import type { ComponentColor } from '$lib/types/colors.js';
3
+ import type { ComponentRoundness } from '$lib/types/roundness.js';
4
+ import type { ComponentSize } from '$lib/types/size.js';
5
+
6
+ import type { Snippet } from 'svelte';
7
+ import type { ChangeEventHandler } from 'svelte/elements';
8
+
9
+ export interface ToggleProps {
10
+ /** Toggle contents goes here */
11
+ children?: Snippet;
12
+ /** Toggle ref */
13
+ ref?: HTMLInputElement;
14
+ /** How large should the toggle be? */
15
+ size?: ComponentSize;
16
+ /** What color to use? */
17
+ color?: ComponentColor;
18
+ /** How round should the border radius be? */
19
+ roundness?: ComponentRoundness;
20
+ /** Toggle disabled state */
21
+ disabled?: boolean;
22
+ /** Name */
23
+ name?: string;
24
+ /** value */
25
+ value?: string;
26
+ /** Id */
27
+ id?: string;
28
+ /** Title (for tooltip) */
29
+ title?: string;
30
+ /** Custom css class*/
31
+ class?: string;
32
+ /** onchange event handler */
33
+ onchange?: ChangeEventHandler<HTMLInputElement>;
34
+ /** checked */
35
+ checked?: boolean;
36
+ }
37
+ </script>
38
+
39
+ <script lang="ts">
40
+ let {
41
+ children,
42
+ size = 'normal',
43
+ color = 'primary',
44
+ roundness = 3,
45
+ name,
46
+ id,
47
+ title,
48
+ class: className = '',
49
+ disabled = false,
50
+ checked = $bindable<boolean>(),
51
+ ref = $bindable<HTMLInputElement>(),
52
+ onchange,
53
+ value,
54
+ }: ToggleProps = $props();
55
+ </script>
56
+
57
+ <label
58
+ class:disabled
59
+ class={[
60
+ 'dodo-ui-Toggle',
61
+ `size--${size}`,
62
+ `color--${color}`,
63
+ `roundness--${roundness}`,
64
+ className,
65
+ ].join(' ')}
66
+ for={id}
67
+ >
68
+ <input
69
+ type="checkbox"
70
+ {name}
71
+ {id}
72
+ {title}
73
+ {disabled}
74
+ {onchange}
75
+ bind:this={ref}
76
+ bind:checked
77
+ {value}
78
+ />
79
+ <div class="Toggle">
80
+ <span class="ToggleHandle"></span>
81
+ </div>
82
+
83
+ {#if children}
84
+ <div class="ToggleMessage">
85
+ {@render children()}
86
+ </div>
87
+ {/if}
88
+ </label>
89
+
90
+ <style lang="scss">
91
+ @use 'utils/scss/mixins.scss' as *;
92
+
93
+ :global(:root) {
94
+ --dodo-ui-Toggle-disabled-color: var(--dodo-color-neutral-400);
95
+ --dodo-ui-Toggle-disabled-bg: var(--dodo-color-neutral-200);
96
+ --dodo-ui-Toggle-border-disabled-color: var(--dodo-color-neutral-300);
97
+
98
+ --dodo-ui-Toggle-border-color: var(--dodo-color-neutral-400);
99
+
100
+ --dodo-ui-ToggleHandle-bg: var(--dodo-color-neutral-500);
101
+ --dodo-ui-ToggleHandle-disabled-bg: var(--dodo-color-neutral-400);
102
+
103
+ @include generate-dodo-ui-toggle-colors(neutral);
104
+ @include generate-dodo-ui-toggle-colors(primary);
105
+ @include generate-dodo-ui-toggle-colors(secondary);
106
+ @include generate-dodo-ui-toggle-colors(safe);
107
+ @include generate-dodo-ui-toggle-colors(warning);
108
+ @include generate-dodo-ui-toggle-colors(danger);
109
+ }
110
+
111
+ :global(.dodo-theme--dark) {
112
+ --dodo-ui-Toggle-disabled-bg: var(--dodo-color-neutral-100);
113
+ --dodo-ui-Toggle-disabled-color: var(--dodo-color-neutral-500);
114
+ --dodo-ui-Toggle-border-disabled-color: var(--dodo-color-neutral-400);
115
+
116
+ --dodo-ui-Toggle-border-color: var(--dodo-color-neutral-500);
117
+
118
+ --dodo-ui-ToggleHandle-bg: var(--dodo-color-neutral-300);
119
+ --dodo-ui-ToggleHandle-disabled-bg: var(--dodo-color-neutral-200);
120
+
121
+ @include generate-dodo-ui-toggle-colors-dark(neutral);
122
+ @include generate-dodo-ui-toggle-colors-dark(primary);
123
+ @include generate-dodo-ui-toggle-colors-dark(secondary);
124
+ @include generate-dodo-ui-toggle-colors-dark(safe);
125
+ @include generate-dodo-ui-toggle-colors-dark(warning);
126
+ @include generate-dodo-ui-toggle-colors-dark(danger);
127
+ }
128
+
129
+ .dodo-ui-Toggle {
130
+ cursor: pointer;
131
+ outline: none;
132
+ display: inline-flex;
133
+ padding: 0;
134
+ margin: 0;
135
+ position: relative;
136
+
137
+ input {
138
+ opacity: 0;
139
+ width: 0;
140
+ height: 0;
141
+ position: absolute;
142
+
143
+ &:focus-visible {
144
+ & + .Toggle {
145
+ outline: 1px solid;
146
+ }
147
+ }
148
+
149
+ &:checked {
150
+ & + .Toggle {
151
+ .ToggleHandle {
152
+ transform: translateX(var(--ToggleHandle-offset));
153
+ }
154
+ }
155
+
156
+ &:not([disabled]) {
157
+ & + .Toggle {
158
+ .ToggleHandle {
159
+ background-color: var(--dodo-color-constant-white);
160
+ }
161
+ }
162
+ }
163
+ }
164
+ }
165
+
166
+ .Toggle {
167
+ transition: all 150ms;
168
+ text-decoration: none;
169
+ margin: 0;
170
+ display: inline-flex;
171
+ justify-content: flex-start;
172
+ align-items: center;
173
+ font-family: inherit;
174
+ border-style: solid;
175
+ outline: 0;
176
+ letter-spacing: 0.3px;
177
+ padding: 0 var(--dodo-ui-space-small);
178
+ border-radius: inherit;
179
+ position: relative;
180
+ border-width: calc(var(--dodo-ui-element-border-width) * 2);
181
+ border-color: var(--dodo-ui-Toggle-border-color);
182
+ }
183
+
184
+ .ToggleMessage {
185
+ display: flex;
186
+ align-items: center;
187
+ margin-left: var(--dodo-ui-space);
188
+ user-select: none;
189
+ }
190
+
191
+ .ToggleHandle {
192
+ display: flex;
193
+ border-radius: 50%;
194
+ transition: all 150ms;
195
+ height: var(--ToggleHandle-size);
196
+ width: var(--ToggleHandle-size);
197
+ background-color: var(--dodo-ui-ToggleHandle-bg);
198
+ position: absolute;
199
+ right: initial;
200
+ }
201
+
202
+ &.size {
203
+ &--normal {
204
+ font-size: 1rem;
205
+ --ToggleHandle-size: calc(var(--dodo-ui-element-height-normal) / 1.8);
206
+ --ToggleHandle-offset: calc(var(--dodo-ui-element-height-normal) / 1.7);
207
+
208
+ .Toggle {
209
+ height: calc(var(--dodo-ui-element-height-normal) / 1.2);
210
+ width: calc(var(--dodo-ui-element-height-normal) * 1.5);
211
+ }
212
+ }
213
+
214
+ &--small {
215
+ font-size: 0.9rem;
216
+ --ToggleHandle-size: calc(var(--dodo-ui-element-height-small) / 1.8);
217
+ --ToggleHandle-offset: calc(var(--dodo-ui-element-height-small) / 1.9);
218
+
219
+ .Toggle {
220
+ height: calc(var(--dodo-ui-element-height-small) / 1.2);
221
+ width: calc(var(--dodo-ui-element-height-small) * 1.5);
222
+ }
223
+ }
224
+
225
+ &--large {
226
+ font-size: 1.1rem;
227
+ --ToggleHandle-size: calc(var(--dodo-ui-element-height-large) / 1.8);
228
+ --ToggleHandle-offset: calc(var(--dodo-ui-element-height-large) / 1.6);
229
+
230
+ .Toggle {
231
+ height: calc(var(--dodo-ui-element-height-large) / 1.2);
232
+ width: calc(var(--dodo-ui-element-height-large) * 1.5);
233
+ }
234
+ }
235
+ }
236
+
237
+ &.roundness {
238
+ &--1 {
239
+ border-radius: var(--dodo-ui-element-roundness-1);
240
+ }
241
+
242
+ &--2 {
243
+ border-radius: var(--dodo-ui-element-roundness-2);
244
+ }
245
+
246
+ &--3 {
247
+ border-radius: var(--dodo-ui-element-roundness-3);
248
+ }
249
+ }
250
+
251
+ &.color {
252
+ @include generate-dodo-ui-toggle-color(neutral);
253
+ @include generate-dodo-ui-toggle-color(primary);
254
+ @include generate-dodo-ui-toggle-color(secondary);
255
+ @include generate-dodo-ui-toggle-color(safe);
256
+ @include generate-dodo-ui-toggle-color(warning);
257
+ @include generate-dodo-ui-toggle-color(danger);
258
+ }
259
+
260
+ &.disabled {
261
+ cursor: initial;
262
+ color: var(--dodo-ui-Toggle-disabled-color);
263
+
264
+ .Toggle {
265
+ background-color: var(--dodo-ui-Toggle-disabled-bg);
266
+ border-color: var(--dodo-ui-Toggle-border-disabled-color);
267
+ }
268
+
269
+ .ToggleHandle {
270
+ background-color: var(--dodo-ui-ToggleHandle-disabled-bg);
271
+ }
272
+
273
+ &:hover {
274
+ color: var(--dodo-ui-Toggle-disabled-color);
275
+
276
+ .Toggle {
277
+ background-color: var(--dodo-ui-Toggle-disabled-bg);
278
+ }
279
+ }
280
+
281
+ &:active {
282
+ color: var(--dodo-ui-Toggle-disabled-color);
283
+
284
+ .Toggle {
285
+ background-color: var(--dodo-ui-Toggle-disabled-bg);
286
+ }
287
+ }
288
+ }
289
+ }
290
+ </style>
@@ -0,0 +1,68 @@
1
+ /// Mixin: generate-dodo-ui-toggle-colors
2
+ /// Generates CSS custom properties for Dodo UI toggle styles (text & solid)
3
+ /// across different interaction states (default, hover, active).
4
+ /// @param {String} $color-name - The theme color name (e.g., "primary", "safe", etc.)
5
+ @mixin generate-dodo-ui-toggle-colors($color-name) {
6
+ --dodo-ui-Toggle-#{$color-name}-bg: var(--dodo-color-#{$color-name}-200);
7
+ --dodo-ui-Toggle-#{$color-name}-hover-bg: var(--dodo-color-#{$color-name}-300);
8
+ --dodo-ui-Toggle-#{$color-name}-active-bg: var(--dodo-color-#{$color-name}-400);
9
+
10
+ --dodo-ui-Toggle-#{$color-name}-checked-bg: var(--dodo-color-#{$color-name}-500);
11
+ --dodo-ui-Toggle-#{$color-name}-checked-hover-bg: var(--dodo-color-#{$color-name}-600);
12
+ --dodo-ui-Toggle-#{$color-name}-checked-active-bg: var(--dodo-color-#{$color-name}-700);
13
+ }
14
+
15
+ /// Mixin: generate-dodo-ui-toggle-colors
16
+ /// Generates CSS custom properties for Dodo UI toggle styles (text & solid)
17
+ /// across different interaction states (default, hover, active).
18
+ /// @param {String} $color-name - The theme color name (e.g., "primary", "safe", etc.)
19
+ @mixin generate-dodo-ui-toggle-colors-dark($color-name) {
20
+ --dodo-ui-Toggle-#{$color-name}-bg: var(--dodo-color-#{$color-name}-800);
21
+ --dodo-ui-Toggle-#{$color-name}-hover-bg: var(--dodo-color-#{$color-name}-700);
22
+ --dodo-ui-Toggle-#{$color-name}-active-bg: var(--dodo-color-#{$color-name}-600);
23
+
24
+ --dodo-ui-Toggle-#{$color-name}-checked-bg: var(--dodo-color-#{$color-name}-400);
25
+ --dodo-ui-Toggle-#{$color-name}-checked-hover-bg: var(--dodo-color-#{$color-name}-300);
26
+ --dodo-ui-Toggle-#{$color-name}-checked-active-bg: var(--dodo-color-#{$color-name}-200);
27
+ }
28
+
29
+ /// Mixin: generate-dodo-ui-toggle-color
30
+ /// @param {String} $theme - e.g., default, safe, danger, etc.
31
+ @mixin generate-dodo-ui-toggle-color($theme) {
32
+ &--#{$theme} {
33
+ .Toggle {
34
+ background-color: var(--dodo-ui-Toggle-#{$theme}-bg);
35
+ }
36
+
37
+ input:checked:not([disabled]) {
38
+ & + .Toggle {
39
+ background-color: var(--dodo-ui-Toggle-#{$theme}-checked-bg);
40
+ border-color: transparent;
41
+ }
42
+ }
43
+
44
+ &:hover {
45
+ .Toggle {
46
+ background-color: var(--dodo-ui-Toggle-#{$theme}-hover-bg);
47
+ }
48
+
49
+ input:checked:not([disabled]) {
50
+ & + .Toggle {
51
+ background-color: var(--dodo-ui-Toggle-#{$theme}-checked-hover-bg);
52
+ }
53
+ }
54
+ }
55
+
56
+ &:active {
57
+ .Toggle {
58
+ background-color: var(--dodo-ui-Toggle-#{$theme}-active-bg);
59
+ }
60
+
61
+ input:checked:not([disabled]) {
62
+ & + .Toggle {
63
+ background-color: var(--dodo-ui-Toggle-#{$theme}-checked-active-bg);
64
+ }
65
+ }
66
+ }
67
+ }
68
+ }