@flightlesslabs/dodo-ui 0.12.1 → 0.14.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 (188) hide show
  1. package/dist/index.d.ts +3 -0
  2. package/dist/index.js +2 -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/RangeSlider/RangeSlider.svelte +32 -19
  6. package/{src/lib/stories/components/Form/RangeSlider → dist/stories/components/Form/Toggle}/Color/Color.stories.svelte +4 -4
  7. package/dist/stories/components/Form/Toggle/Color/Color.stories.svelte.d.ts +26 -0
  8. package/dist/stories/components/Form/Toggle/Events/Events.stories.svelte +35 -0
  9. package/dist/stories/components/Form/Toggle/Events/Events.stories.svelte.d.ts +18 -0
  10. package/{src/lib/stories/components/Form/NumericInput → dist/stories/components/Form/Toggle}/Roundness/Roundness.stories.svelte +8 -6
  11. package/dist/stories/components/Form/Toggle/Roundness/Roundness.stories.svelte.d.ts +26 -0
  12. package/{src/lib/stories/components/Form/RangeSlider → dist/stories/components/Form/Toggle}/Size/Size.stories.svelte +4 -4
  13. package/dist/stories/components/Form/Toggle/Size/Size.stories.svelte.d.ts +26 -0
  14. package/dist/stories/components/Form/Toggle/Toggle.stories.svelte +37 -0
  15. package/dist/stories/components/Form/Toggle/Toggle.stories.svelte.d.ts +21 -0
  16. package/dist/stories/components/Form/Toggle/Toggle.svelte +369 -0
  17. package/dist/stories/components/Form/Toggle/Toggle.svelte.d.ts +34 -0
  18. package/dist/stories/components/Form/Toggle/utils/scss/mixins.scss +81 -0
  19. package/package.json +42 -40
  20. package/src/lib/index.ts +4 -0
  21. package/src/lib/stories/components/Form/Button/Button.svelte +2 -2
  22. package/src/lib/stories/components/Form/RangeSlider/RangeSlider.svelte +33 -22
  23. package/src/lib/stories/components/Form/Toggle/Toggle.svelte +262 -0
  24. package/src/lib/stories/components/Form/Toggle/utils/scss/mixins.scss +81 -0
  25. package/src/lib/stories/Home.mdx +0 -59
  26. package/src/lib/stories/assets/dark-theme-toggle.png +0 -0
  27. package/src/lib/stories/components/Form/Button/Button.stories.svelte +0 -61
  28. package/src/lib/stories/components/Form/Button/Color/Color.stories.svelte +0 -43
  29. package/src/lib/stories/components/Form/Button/Events/Events.stories.svelte +0 -36
  30. package/src/lib/stories/components/Form/Button/IconButton/IconButton.stories.svelte +0 -43
  31. package/src/lib/stories/components/Form/Button/Roundness/Roundness.stories.svelte +0 -23
  32. package/src/lib/stories/components/Form/Button/Size/Size.stories.svelte +0 -16
  33. package/src/lib/stories/components/Form/Button/Variant/Variant.stories.svelte +0 -18
  34. package/src/lib/stories/components/Form/DatePicker/Color/Color.stories.svelte +0 -47
  35. package/src/lib/stories/components/Form/DatePicker/Controls/Controls.stories.svelte +0 -58
  36. package/src/lib/stories/components/Form/DatePicker/Customize/Customize.stories.svelte +0 -167
  37. package/src/lib/stories/components/Form/DatePicker/DatePicker.stories.svelte +0 -107
  38. package/src/lib/stories/components/Form/DatePicker/Events/Events.stories.svelte +0 -147
  39. package/src/lib/stories/components/Form/DatePicker/FilterDates/FilterDates.stories.svelte +0 -61
  40. package/src/lib/stories/components/Form/DatePicker/Positions/AutoPosition/AutoPosition.stories.svelte +0 -46
  41. package/src/lib/stories/components/Form/DatePicker/Positions/Positions.stories.svelte +0 -57
  42. package/src/lib/stories/components/Form/DatePicker/Roundness/Roundness.stories.svelte +0 -38
  43. package/src/lib/stories/components/Form/DatePicker/Size/Size.stories.svelte +0 -41
  44. package/src/lib/stories/components/Form/DatePicker/WithIcon/WithIcon.stories.svelte +0 -41
  45. package/src/lib/stories/components/Form/FormControl/FormControl.stories.svelte +0 -28
  46. package/src/lib/stories/components/Form/Label/Label.stories.svelte +0 -13
  47. package/src/lib/stories/components/Form/Message/Color/Color.stories.svelte +0 -36
  48. package/src/lib/stories/components/Form/Message/Message.stories.svelte +0 -27
  49. package/src/lib/stories/components/Form/Message/Size/Size.stories.svelte +0 -22
  50. package/src/lib/stories/components/Form/NumericInput/Events/Events.stories.svelte +0 -134
  51. package/src/lib/stories/components/Form/NumericInput/NumericInput.stories.svelte +0 -84
  52. package/src/lib/stories/components/Form/NumericInput/Size/Size.stories.svelte +0 -16
  53. package/src/lib/stories/components/Form/NumericInput/Validation/Validation.stories.svelte +0 -87
  54. package/src/lib/stories/components/Form/NumericInput/WithIcon/WithIcon.stories.svelte +0 -31
  55. package/src/lib/stories/components/Form/PasswordInput/Events/Events.stories.svelte +0 -132
  56. package/src/lib/stories/components/Form/PasswordInput/PasswordInput.stories.svelte +0 -58
  57. package/src/lib/stories/components/Form/PasswordInput/Roundness/Roundness.stories.svelte +0 -20
  58. package/src/lib/stories/components/Form/PasswordInput/Size/Size.stories.svelte +0 -16
  59. package/src/lib/stories/components/Form/PasswordInput/WithIcon/WithIcon.stories.svelte +0 -31
  60. package/src/lib/stories/components/Form/RangeSlider/Events/Events.stories.svelte +0 -63
  61. package/src/lib/stories/components/Form/RangeSlider/RangeSlider.stories.svelte +0 -69
  62. package/src/lib/stories/components/Form/RangeSlider/Roundness/Roundness.stories.svelte +0 -30
  63. package/src/lib/stories/components/Form/RangeSlider/WithIcon/WithIcon.stories.svelte +0 -33
  64. package/src/lib/stories/components/Form/Select/Customize/Customize.stories.svelte +0 -139
  65. package/src/lib/stories/components/Form/Select/DropDownArrow/DropDownArrow.stories.svelte +0 -63
  66. package/src/lib/stories/components/Form/Select/Events/Events.stories.svelte +0 -174
  67. package/src/lib/stories/components/Form/Select/Options/OptionFormat.mdx +0 -40
  68. package/src/lib/stories/components/Form/Select/Positions/AutoPosition/AutoPosition.stories.svelte +0 -58
  69. package/src/lib/stories/components/Form/Select/Positions/Positions.stories.svelte +0 -87
  70. package/src/lib/stories/components/Form/Select/Roundness/Roundness.stories.svelte +0 -32
  71. package/src/lib/stories/components/Form/Select/Select.stories.svelte +0 -125
  72. package/src/lib/stories/components/Form/Select/Size/Size.stories.svelte +0 -28
  73. package/src/lib/stories/components/Form/Select/WithIcon/WithIcon.stories.svelte +0 -43
  74. package/src/lib/stories/components/Form/TextInput/Events/Events.stories.svelte +0 -125
  75. package/src/lib/stories/components/Form/TextInput/Roundness/Roundness.stories.svelte +0 -21
  76. package/src/lib/stories/components/Form/TextInput/Size/Size.stories.svelte +0 -17
  77. package/src/lib/stories/components/Form/TextInput/TextInput.stories.svelte +0 -43
  78. package/src/lib/stories/components/Form/TextInput/WithIcon/WithIcon.stories.svelte +0 -47
  79. package/src/lib/stories/components/Info/Calendar/Calendar.stories.svelte +0 -121
  80. package/src/lib/stories/components/Info/Calendar/Color/Color.stories.svelte +0 -23
  81. package/src/lib/stories/components/Info/Calendar/Controls/Controls.stories.svelte +0 -26
  82. package/src/lib/stories/components/Info/Calendar/Customize/Customize.stories.svelte +0 -160
  83. package/src/lib/stories/components/Info/Calendar/Events/Events.stories.svelte +0 -122
  84. package/src/lib/stories/components/Info/Calendar/FilterDates/FilterDates.stories.svelte +0 -70
  85. package/src/lib/stories/components/Info/Calendar/Size/Size.stories.svelte +0 -20
  86. package/src/lib/stories/components/Info/Calendar/SubComponents/CalendarControls/CalendarControls.stories.svelte +0 -36
  87. package/src/lib/stories/components/Info/Calendar/SubComponents/CalendarControls/CalendarMonthSelector/CalendarMonthSelector.stories.svelte +0 -58
  88. package/src/lib/stories/components/Info/Calendar/SubComponents/CalendarControls/CalendarMonthSelector/Color/Color.stories.svelte +0 -23
  89. package/src/lib/stories/components/Info/Calendar/SubComponents/CalendarControls/CalendarMonthSelector/Customize/Customize.stories.svelte +0 -30
  90. package/src/lib/stories/components/Info/Calendar/SubComponents/CalendarControls/CalendarMonthSelector/Events/Events.stories.svelte +0 -25
  91. package/src/lib/stories/components/Info/Calendar/SubComponents/CalendarControls/CalendarMonthSelector/NameTypes/NameTypes.stories.svelte +0 -25
  92. package/src/lib/stories/components/Info/Calendar/SubComponents/CalendarControls/CalendarMonthSelector/Roundness/Roundness.stories.svelte +0 -26
  93. package/src/lib/stories/components/Info/Calendar/SubComponents/CalendarControls/CalendarMonthSelector/Size/Size.stories.svelte +0 -20
  94. package/src/lib/stories/components/Info/Calendar/SubComponents/CalendarControls/CalendarNavigation/CalendarNavigation.stories.svelte +0 -36
  95. package/src/lib/stories/components/Info/Calendar/SubComponents/CalendarControls/CalendarNavigation/Color/Color.stories.svelte +0 -19
  96. package/src/lib/stories/components/Info/Calendar/SubComponents/CalendarControls/CalendarNavigation/Customize/Customize.stories.svelte +0 -33
  97. package/src/lib/stories/components/Info/Calendar/SubComponents/CalendarControls/CalendarNavigation/Events/Events.stories.svelte +0 -37
  98. package/src/lib/stories/components/Info/Calendar/SubComponents/CalendarControls/CalendarNavigation/Size/Size.stories.svelte +0 -16
  99. package/src/lib/stories/components/Info/Calendar/SubComponents/CalendarControls/CalendarYearSelector/CalendarYearSelector.stories.svelte +0 -58
  100. package/src/lib/stories/components/Info/Calendar/SubComponents/CalendarControls/CalendarYearSelector/Color/Color.stories.svelte +0 -23
  101. package/src/lib/stories/components/Info/Calendar/SubComponents/CalendarControls/CalendarYearSelector/Customize/Customize.stories.svelte +0 -30
  102. package/src/lib/stories/components/Info/Calendar/SubComponents/CalendarControls/CalendarYearSelector/Events/Events.stories.svelte +0 -25
  103. package/src/lib/stories/components/Info/Calendar/SubComponents/CalendarControls/CalendarYearSelector/Roundness/Roundness.stories.svelte +0 -26
  104. package/src/lib/stories/components/Info/Calendar/SubComponents/CalendarControls/CalendarYearSelector/Size/Size.stories.svelte +0 -20
  105. package/src/lib/stories/components/Info/Calendar/SubComponents/CalendarControls/Color/Color.stories.svelte +0 -23
  106. package/src/lib/stories/components/Info/Calendar/SubComponents/CalendarControls/Controls/Controls.stories.svelte +0 -21
  107. package/src/lib/stories/components/Info/Calendar/SubComponents/CalendarControls/Customize/Customize.stories.svelte +0 -69
  108. package/src/lib/stories/components/Info/Calendar/SubComponents/CalendarControls/Events/Events.stories.svelte +0 -61
  109. package/src/lib/stories/components/Info/Calendar/SubComponents/CalendarControls/Size/Size.stories.svelte +0 -20
  110. package/src/lib/stories/components/Info/Calendar/SubComponents/CalendarDatesChart/CalendarDateChip/CalendarDateChip.stories.svelte +0 -75
  111. package/src/lib/stories/components/Info/Calendar/SubComponents/CalendarDatesChart/CalendarDateChip/Color/Color.stories.svelte +0 -41
  112. package/src/lib/stories/components/Info/Calendar/SubComponents/CalendarDatesChart/CalendarDateChip/Customize/Customize.stories.svelte +0 -45
  113. package/src/lib/stories/components/Info/Calendar/SubComponents/CalendarDatesChart/CalendarDateChip/Events/Events.stories.svelte +0 -28
  114. package/src/lib/stories/components/Info/Calendar/SubComponents/CalendarDatesChart/CalendarDateChip/Roundness/Roundness.stories.svelte +0 -31
  115. package/src/lib/stories/components/Info/Calendar/SubComponents/CalendarDatesChart/CalendarDateChip/Size/Size.stories.svelte +0 -24
  116. package/src/lib/stories/components/Info/Calendar/SubComponents/CalendarDatesChart/CalendarDateChip/SpecialChips/SpecialChips.stories.svelte +0 -96
  117. package/src/lib/stories/components/Info/Calendar/SubComponents/CalendarDatesChart/CalendarDatesChart.stories.svelte +0 -104
  118. package/src/lib/stories/components/Info/Calendar/SubComponents/CalendarDatesChart/CalendarWeek/CalendarWeek.stories.svelte +0 -38
  119. package/src/lib/stories/components/Info/Calendar/SubComponents/CalendarDatesChart/CalendarWeek/Customize/Customize.stories.svelte +0 -32
  120. package/src/lib/stories/components/Info/Calendar/SubComponents/CalendarDatesChart/CalendarWeek/NameTypes/NameTypes.stories.svelte +0 -28
  121. package/src/lib/stories/components/Info/Calendar/SubComponents/CalendarDatesChart/CalendarWeek/Size/Size.stories.svelte +0 -16
  122. package/src/lib/stories/components/Info/Calendar/SubComponents/CalendarDatesChart/Color/Color.stories.svelte +0 -23
  123. package/src/lib/stories/components/Info/Calendar/SubComponents/CalendarDatesChart/Customize/Customize.stories.svelte +0 -68
  124. package/src/lib/stories/components/Info/Calendar/SubComponents/CalendarDatesChart/Events/Events.stories.svelte +0 -24
  125. package/src/lib/stories/components/Info/Calendar/SubComponents/CalendarDatesChart/Size/Size.stories.svelte +0 -20
  126. package/src/lib/stories/components/Info/Calendar/SubComponents/CalendarMonthList/CalendarMonthChip/CalendarMonthChip.stories.svelte +0 -40
  127. package/src/lib/stories/components/Info/Calendar/SubComponents/CalendarMonthList/CalendarMonthChip/Color/Color.stories.svelte +0 -29
  128. package/src/lib/stories/components/Info/Calendar/SubComponents/CalendarMonthList/CalendarMonthChip/Customize/Customize.stories.svelte +0 -33
  129. package/src/lib/stories/components/Info/Calendar/SubComponents/CalendarMonthList/CalendarMonthChip/Events/Events.stories.svelte +0 -23
  130. package/src/lib/stories/components/Info/Calendar/SubComponents/CalendarMonthList/CalendarMonthChip/Roundness/Roundness.stories.svelte +0 -26
  131. package/src/lib/stories/components/Info/Calendar/SubComponents/CalendarMonthList/CalendarMonthChip/Size/Size.stories.svelte +0 -19
  132. package/src/lib/stories/components/Info/Calendar/SubComponents/CalendarMonthList/CalendarMonthList.stories.svelte +0 -45
  133. package/src/lib/stories/components/Info/Calendar/SubComponents/CalendarMonthList/Color/Color.stories.svelte +0 -22
  134. package/src/lib/stories/components/Info/Calendar/SubComponents/CalendarMonthList/Customize/Customize.stories.svelte +0 -36
  135. package/src/lib/stories/components/Info/Calendar/SubComponents/CalendarMonthList/Events/Events.stories.svelte +0 -33
  136. package/src/lib/stories/components/Info/Calendar/SubComponents/CalendarMonthList/Size/Size.stories.svelte +0 -19
  137. package/src/lib/stories/components/Info/Calendar/SubComponents/CalendarYearList/CalendarYearChip/CalendarYearChip.stories.svelte +0 -41
  138. package/src/lib/stories/components/Info/Calendar/SubComponents/CalendarYearList/CalendarYearChip/Color/Color.stories.svelte +0 -30
  139. package/src/lib/stories/components/Info/Calendar/SubComponents/CalendarYearList/CalendarYearChip/Customize/Customize.stories.svelte +0 -33
  140. package/src/lib/stories/components/Info/Calendar/SubComponents/CalendarYearList/CalendarYearChip/Events/Events.stories.svelte +0 -24
  141. package/src/lib/stories/components/Info/Calendar/SubComponents/CalendarYearList/CalendarYearChip/Roundness/Roundness.stories.svelte +0 -27
  142. package/src/lib/stories/components/Info/Calendar/SubComponents/CalendarYearList/CalendarYearChip/Size/Size.stories.svelte +0 -20
  143. package/src/lib/stories/components/Info/Calendar/SubComponents/CalendarYearList/CalendarYearList.stories.svelte +0 -39
  144. package/src/lib/stories/components/Info/Calendar/SubComponents/CalendarYearList/Color/Color.stories.svelte +0 -23
  145. package/src/lib/stories/components/Info/Calendar/SubComponents/CalendarYearList/Customize/Customize.stories.svelte +0 -36
  146. package/src/lib/stories/components/Info/Calendar/SubComponents/CalendarYearList/Events/Events.stories.svelte +0 -24
  147. package/src/lib/stories/components/Info/Calendar/SubComponents/CalendarYearList/Size/Size.stories.svelte +0 -20
  148. package/src/lib/stories/components/Info/Calendar/utils/createDateOfMonth/index.mdx +0 -121
  149. package/src/lib/stories/components/Info/Calendar/utils/getDatesOfMonth/index.mdx +0 -37
  150. package/src/lib/stories/components/Layout/Menu/DynamicMenu/Customize/Customize.stories.svelte +0 -30
  151. package/src/lib/stories/components/Layout/Menu/DynamicMenu/DynamicMenu.stories.svelte +0 -56
  152. package/src/lib/stories/components/Layout/Menu/DynamicMenu/Events/Events.stories.svelte +0 -48
  153. package/src/lib/stories/components/Layout/Menu/DynamicMenu/KeybaordNavigation/KeybaordNavigation.stories.svelte +0 -29
  154. package/src/lib/stories/components/Layout/Menu/DynamicMenu/Options/OptionFormat.mdx +0 -72
  155. package/src/lib/stories/components/Layout/Menu/Menu.stories.svelte +0 -69
  156. package/src/lib/stories/components/Layout/Menu/MenuItem/MenuItem.stories.svelte +0 -34
  157. package/src/lib/stories/components/Layout/Menu/MenuItem/Size/Size.stories.svelte +0 -16
  158. package/src/lib/stories/components/Layout/Menu/MenuItem/Type/Type.stories.svelte +0 -21
  159. package/src/lib/stories/components/Layout/Menu/Size/Size.stories.svelte +0 -37
  160. package/src/lib/stories/components/Layout/Paper/Color/Color.stories.svelte +0 -63
  161. package/src/lib/stories/components/Layout/Paper/Paper.stories.svelte +0 -50
  162. package/src/lib/stories/components/Layout/Paper/Roundness/Roundness.stories.svelte +0 -25
  163. package/src/lib/stories/components/Layout/Paper/Shadow/Shadow.stories.svelte +0 -24
  164. package/src/lib/stories/components/Layout/Separator/Color/Color.stories.svelte +0 -19
  165. package/src/lib/stories/components/Layout/Separator/Separator.stories.svelte +0 -30
  166. package/src/lib/stories/developer tools/Intro.mdx +0 -9
  167. package/src/lib/stories/developer tools/components/DynamicInput/DynamicInput.stories.svelte +0 -53
  168. package/src/lib/stories/developer tools/components/DynamicInput/Events/Events.stories.svelte +0 -121
  169. package/src/lib/stories/developer tools/components/DynamicInput/Size/Size.stories.svelte +0 -17
  170. package/src/lib/stories/developer tools/components/InputEnclosure/InputEnclosure.stories.svelte +0 -38
  171. package/src/lib/stories/developer tools/components/InputEnclosure/Roundness/Roundness.stories.svelte +0 -20
  172. package/src/lib/stories/developer tools/components/InputEnclosure/Size/Size.stories.svelte +0 -16
  173. package/src/lib/stories/developer tools/components/InputEnclosure/WithIcon/WithIcon.stories.svelte +0 -47
  174. package/src/lib/stories/developer tools/components/Popper/Popper.stories.svelte +0 -140
  175. package/src/lib/stories/developer tools/components/Popper/PopperPopup/PopperPopup.stories.svelte +0 -64
  176. package/src/lib/stories/developer tools/components/Popper/Positions/AutoPosition/AutoPosition.stories.svelte +0 -92
  177. package/src/lib/stories/developer tools/components/Popper/Positions/Positions.stories.svelte +0 -114
  178. package/src/lib/stories/developer tools/components/UtilityButton/Size/Size.stories.svelte +0 -25
  179. package/src/lib/stories/developer tools/components/UtilityButton/UtilityButton.stories.svelte +0 -30
  180. package/src/lib/stories/developer tools/directives/clickOutside/index.mdx +0 -25
  181. package/src/lib/stories/developer tools/helpers/Numbers/cleanNumericString/index.mdx +0 -20
  182. package/src/lib/stories/developer tools/helpers/Numbers/isValidNumberValue/index.mdx +0 -71
  183. package/src/lib/stories/developer tools/helpers/Time/getMoment/index.mdx +0 -45
  184. package/src/lib/stories/developer tools/helpers/logger/index.mdx +0 -63
  185. package/src/lib/stories/developer tools/philosophy/Colors/Colors.mdx +0 -43
  186. package/src/lib/stories/developer tools/philosophy/Colors/Colors.stories.svelte +0 -22
  187. package/src/lib/stories/developer tools/philosophy/Colors/Opacity.stories.svelte +0 -11
  188. package/src/lib/stories/developer tools/philosophy/Themes.mdx +0 -23
@@ -1,140 +0,0 @@
1
- <script module lang="ts">
2
- import { defineMeta } from '@storybook/addon-svelte-csf';
3
- import type { StoryBookArgTypes } from '$lib/storybook-types.js';
4
- import { Menu, MenuItem, Popper } from '$lib/index.js';
5
- import Button from '$lib/stories/components/Form/Button/Button.svelte';
6
- import { positionXArray, positionYArray } from '$lib/types/position.js';
7
-
8
- export const storyPopperArgTypes: StoryBookArgTypes = {
9
- popupPositionX: {
10
- control: { type: 'select' },
11
- options: positionXArray,
12
- },
13
- popupPositionY: {
14
- control: { type: 'select' },
15
- options: positionYArray,
16
- },
17
- };
18
-
19
- // More on how to set up stories at: https://storybook.js.org/docs/writing-stories
20
- const { Story } = defineMeta({
21
- component: Popper,
22
- tags: ['autodocs'],
23
- argTypes: storyPopperArgTypes,
24
- parameters: {
25
- docs: {
26
- story: {
27
- height: '200px',
28
- inline: false,
29
- },
30
- },
31
- },
32
- });
33
-
34
- let open = $state(false);
35
- </script>
36
-
37
- <Story name="Default" args={{ open, onClickOutside: () => (open = false) }} asChild>
38
- <Popper {open} onClickOutside={() => (open = false)}>
39
- <Button onclick={() => (open = true)}>Click to see Popup</Button>
40
- {#snippet popupChildren()}
41
- <Menu>
42
- <MenuItem>One</MenuItem>
43
- <MenuItem>Two</MenuItem>
44
- <MenuItem>Three</MenuItem>
45
- </Menu>
46
- {/snippet}
47
- </Popper>
48
- </Story>
49
-
50
- <Story name="MenuOpen" args={{ open: true }} asChild>
51
- <Popper open>
52
- Hello! how are you doing?
53
- {#snippet popupChildren()}
54
- <Menu>
55
- <MenuItem>One</MenuItem>
56
- <MenuItem>Two</MenuItem>
57
- <MenuItem>Three</MenuItem>
58
- </Menu>
59
- {/snippet}
60
- </Popper>
61
- </Story>
62
-
63
- <Story
64
- name="CustomPaperProps"
65
- args={{
66
- open: true,
67
- paperProps: {
68
- color: 'primary',
69
- },
70
- }}
71
- asChild
72
- >
73
- <Popper
74
- open
75
- paperProps={{
76
- color: 'primary',
77
- }}
78
- >
79
- Hello! how are you doing?
80
- {#snippet popupChildren()}
81
- <Menu>
82
- <MenuItem>One</MenuItem>
83
- <MenuItem>Two</MenuItem>
84
- <MenuItem>Three</MenuItem>
85
- </Menu>
86
- {/snippet}
87
- </Popper>
88
- </Story>
89
-
90
- <!-- Expand the Popper to full width -->
91
- <Story name="FullWidth" asChild>
92
- <Popper {open} fullWidth onClickOutside={() => (open = false)}>
93
- <Button onclick={() => (open = true)}>Click to see Popup</Button>
94
-
95
- {#snippet popupChildren()}
96
- <Menu>
97
- <MenuItem>One</MenuItem>
98
- <MenuItem>Two</MenuItem>
99
- <MenuItem>Three</MenuItem>
100
- </Menu>
101
- {/snippet}
102
- </Popper>
103
- </Story>
104
-
105
- <!-- Expand the Popper to full width but not the popup -->
106
- <Story name="PopupFullWidthFalse" asChild>
107
- <Popper {open} fullWidth popupFullWidth={false} onClickOutside={() => (open = false)}>
108
- <Button onclick={() => (open = true)}>Click to see Popup</Button>
109
-
110
- {#snippet popupChildren()}
111
- <Menu>
112
- <MenuItem>One</MenuItem>
113
- <MenuItem>Two</MenuItem>
114
- <MenuItem>Three</MenuItem>
115
- </Menu>
116
- {/snippet}
117
- </Popper>
118
- </Story>
119
-
120
- <Story
121
- name="CustomPopup"
122
- args={{
123
- open,
124
- onClickOutside: () => (open = false),
125
- }}
126
- asChild
127
- >
128
- <Popper {open} onClickOutside={() => (open = false)}>
129
- <Button onclick={() => (open = true)}>Click to see Popup</Button>
130
-
131
- {#snippet customPopup(popperLocation)}
132
- {#if open}
133
- <Menu>
134
- <MenuItem>{popperLocation?.height}</MenuItem>
135
- <MenuItem>{popperLocation?.width}</MenuItem>
136
- </Menu>
137
- {/if}
138
- {/snippet}
139
- </Popper>
140
- </Story>
@@ -1,64 +0,0 @@
1
- <script module lang="ts">
2
- import { defineMeta } from '@storybook/addon-svelte-csf';
3
- import type { StoryBookArgTypes } from '$lib/storybook-types.js';
4
- import { Menu, MenuItem, PopperPopup } from '$lib/index.js';
5
- import { positionXArray, positionYArray } from '$lib/types/position.js';
6
-
7
- export const storyPopperPopupArgTypes: StoryBookArgTypes = {
8
- popupPositionX: {
9
- control: { type: 'select' },
10
- options: positionXArray,
11
- },
12
- popupPositionY: {
13
- control: { type: 'select' },
14
- options: positionYArray,
15
- },
16
- };
17
-
18
- // More on how to set up stories at: https://storybook.js.org/docs/writing-stories
19
- const { Story } = defineMeta({
20
- component: PopperPopup,
21
- tags: ['autodocs'],
22
- argTypes: storyPopperPopupArgTypes,
23
- parameters: {
24
- docs: {
25
- story: {
26
- height: '200px',
27
- inline: false,
28
- },
29
- },
30
- },
31
- });
32
- </script>
33
-
34
- <Story name="Default" asChild>
35
- <PopperPopup>
36
- <Menu>
37
- <MenuItem>One</MenuItem>
38
- <MenuItem>Two</MenuItem>
39
- <MenuItem>Three</MenuItem>
40
- </Menu>
41
- </PopperPopup>
42
- </Story>
43
-
44
- <Story
45
- name="CustomPaperProps"
46
- args={{
47
- paperProps: {
48
- color: 'primary',
49
- },
50
- }}
51
- asChild
52
- >
53
- <PopperPopup
54
- paperProps={{
55
- color: 'primary',
56
- }}
57
- >
58
- <Menu>
59
- <MenuItem>One</MenuItem>
60
- <MenuItem>Two</MenuItem>
61
- <MenuItem>Three</MenuItem>
62
- </Menu>
63
- </PopperPopup>
64
- </Story>
@@ -1,92 +0,0 @@
1
- <script module lang="ts">
2
- import { defineMeta } from '@storybook/addon-svelte-csf';
3
- import { Menu, MenuItem, Popper } from '$lib/index.js';
4
- import Button from '$lib/stories/components/Form/Button/Button.svelte';
5
- import { storyPopperArgTypes } from '../../Popper.stories.svelte';
6
-
7
- // More on how to set up stories at: https://storybook.js.org/docs/writing-stories
8
- const { Story } = defineMeta({
9
- component: Popper,
10
- tags: ['autodocs'],
11
- argTypes: storyPopperArgTypes,
12
- parameters: {
13
- docs: {
14
- story: {
15
- height: '200px',
16
- inline: false,
17
- },
18
- },
19
- },
20
- });
21
-
22
- let open = $state(false);
23
- </script>
24
-
25
- <!-- Positions will auto adjust depending on the space on top and bottom -->
26
- <Story
27
- name="PositionAutoAdjust"
28
- args={{ open, onClickOutside: () => (open = false), popupPositionY: 'top' }}
29
- asChild
30
- >
31
- <Popper {open} onClickOutside={() => (open = false)} popupPositionY="top">
32
- <Button onclick={() => (open = true)}>Click to see Popup</Button>
33
- {#snippet popupChildren()}
34
- <Menu>
35
- <MenuItem>One</MenuItem>
36
- <MenuItem>Two</MenuItem>
37
- <MenuItem>Three</MenuItem>
38
- </Menu>
39
- {/snippet}
40
- </Popper>
41
- </Story>
42
-
43
- <!-- Positions will not auto adjust if you use `lockPoistions` -->
44
- <Story
45
- name="LockPoistions"
46
- args={{
47
- open,
48
- onClickOutside: () => (open = false),
49
- popupPositionY: 'top',
50
- lockPoistions: true,
51
- }}
52
- asChild
53
- >
54
- <Popper {open} lockPoistions onClickOutside={() => (open = false)} popupPositionY="top">
55
- <Button onclick={() => (open = true)}>Click to see Popup</Button>
56
- {#snippet popupChildren()}
57
- <Menu>
58
- <MenuItem>One</MenuItem>
59
- <MenuItem>Two</MenuItem>
60
- <MenuItem>Three</MenuItem>
61
- </Menu>
62
- {/snippet}
63
- </Popper>
64
- </Story>
65
-
66
- <!-- you can also adjust `popperHeightForVerticalPosition` to achive the same -->
67
- <Story
68
- name="HeightForVerticalPosition"
69
- args={{
70
- open,
71
- onClickOutside: () => (open = false),
72
- popupPositionY: 'top',
73
- popperHeightForVerticalPosition: 3,
74
- }}
75
- asChild
76
- >
77
- <Popper
78
- {open}
79
- onClickOutside={() => (open = false)}
80
- popupPositionY="top"
81
- popperHeightForVerticalPosition={3}
82
- >
83
- <Button onclick={() => (open = true)}>Click to see Popup</Button>
84
- {#snippet popupChildren()}
85
- <Menu>
86
- <MenuItem>One</MenuItem>
87
- <MenuItem>Two</MenuItem>
88
- <MenuItem>Three</MenuItem>
89
- </Menu>
90
- {/snippet}
91
- </Popper>
92
- </Story>
@@ -1,114 +0,0 @@
1
- <script module lang="ts">
2
- import { defineMeta } from '@storybook/addon-svelte-csf';
3
- import { Menu, MenuItem, Popper } from '$lib/index.js';
4
- import Button from '$lib/stories/components/Form/Button/Button.svelte';
5
- import { storyPopperArgTypes } from '../Popper.stories.svelte';
6
-
7
- // More on how to set up stories at: https://storybook.js.org/docs/writing-stories
8
- const { Story } = defineMeta({
9
- component: Popper,
10
- tags: ['autodocs'],
11
- argTypes: storyPopperArgTypes,
12
- parameters: {
13
- layout: 'centered',
14
- docs: {
15
- story: {
16
- height: '400px',
17
- inline: false,
18
- },
19
- },
20
- },
21
- });
22
-
23
- let open = $state(false);
24
- </script>
25
-
26
- <Story name="BottomLeft" asChild>
27
- <Popper {open} onClickOutside={() => (open = false)} popupWidth="100px">
28
- <Button onclick={() => (open = true)}>Click to see Popup</Button>
29
- {#snippet popupChildren()}
30
- <Menu>
31
- <MenuItem>One</MenuItem>
32
- <MenuItem>Two</MenuItem>
33
- <MenuItem>Three</MenuItem>
34
- </Menu>
35
- {/snippet}
36
- </Popper>
37
- </Story>
38
-
39
- <Story name="BottomCenter" asChild>
40
- <Popper {open} popupPositionX="center" onClickOutside={() => (open = false)} popupWidth="100px">
41
- <Button onclick={() => (open = true)}>Click to see Popup</Button>
42
- {#snippet popupChildren()}
43
- <Menu>
44
- <MenuItem>One</MenuItem>
45
- <MenuItem>Two</MenuItem>
46
- <MenuItem>Three</MenuItem>
47
- </Menu>
48
- {/snippet}
49
- </Popper>
50
- </Story>
51
-
52
- <Story name="BottomRight" asChild>
53
- <Popper {open} popupPositionX="right" onClickOutside={() => (open = false)} popupWidth="100px">
54
- <Button onclick={() => (open = true)}>Click to see Popup</Button>
55
- {#snippet popupChildren()}
56
- <Menu>
57
- <MenuItem>One</MenuItem>
58
- <MenuItem>Two</MenuItem>
59
- <MenuItem>Three</MenuItem>
60
- </Menu>
61
- {/snippet}
62
- </Popper>
63
- </Story>
64
-
65
- <Story name="TopLeft" asChild>
66
- <Popper {open} popupPositionY="top" onClickOutside={() => (open = false)} popupWidth="100px">
67
- <Button onclick={() => (open = true)}>Click to see Popup</Button>
68
- {#snippet popupChildren()}
69
- <Menu>
70
- <MenuItem>One</MenuItem>
71
- <MenuItem>Two</MenuItem>
72
- <MenuItem>Three</MenuItem>
73
- </Menu>
74
- {/snippet}
75
- </Popper>
76
- </Story>
77
-
78
- <Story name="TopCenter" asChild>
79
- <Popper
80
- {open}
81
- popupPositionY="top"
82
- popupPositionX="center"
83
- onClickOutside={() => (open = false)}
84
- popupWidth="100px"
85
- >
86
- <Button onclick={() => (open = true)}>Click to see Popup</Button>
87
- {#snippet popupChildren()}
88
- <Menu>
89
- <MenuItem>One</MenuItem>
90
- <MenuItem>Two</MenuItem>
91
- <MenuItem>Three</MenuItem>
92
- </Menu>
93
- {/snippet}
94
- </Popper>
95
- </Story>
96
-
97
- <Story name="TopRight" asChild>
98
- <Popper
99
- {open}
100
- popupPositionY="top"
101
- popupPositionX="right"
102
- onClickOutside={() => (open = false)}
103
- popupWidth="100px"
104
- >
105
- <Button onclick={() => (open = true)}>Click to see Popup</Button>
106
- {#snippet popupChildren()}
107
- <Menu>
108
- <MenuItem>One</MenuItem>
109
- <MenuItem>Two</MenuItem>
110
- <MenuItem>Three</MenuItem>
111
- </Menu>
112
- {/snippet}
113
- </Popper>
114
- </Story>
@@ -1,25 +0,0 @@
1
- <script module>
2
- import { defineMeta } from '@storybook/addon-svelte-csf';
3
- import UtilityButton from '../UtilityButton.svelte';
4
- import { storyUtilityButtonArgTypes } from '../UtilityButton.stories.svelte';
5
- import Icon from '@iconify/svelte';
6
-
7
- // More on how to set up stories at: https://storybook.js.org/docs/writing-stories
8
- const { Story } = defineMeta({
9
- component: UtilityButton,
10
- tags: ['autodocs'],
11
- argTypes: storyUtilityButtonArgTypes,
12
- });
13
- </script>
14
-
15
- <Story name="Normal">
16
- <Icon icon="mdi:eye" width="24" height="24" />
17
- </Story>
18
-
19
- <Story name="Small" args={{ size: 'small' }}>
20
- <Icon icon="mdi:eye" width="24" height="24" />
21
- </Story>
22
-
23
- <Story name="Large" args={{ size: 'large' }}>
24
- <Icon icon="mdi:eye" width="24" height="24" />
25
- </Story>
@@ -1,30 +0,0 @@
1
- <script module lang="ts">
2
- import { defineMeta } from '@storybook/addon-svelte-csf';
3
- import UtilityButton from './UtilityButton.svelte';
4
- import type { StoryBookArgTypes } from '$lib/storybook-types.js';
5
- import Icon from '@iconify/svelte';
6
- import { componentSizeArray } from '$lib/types/size.js';
7
-
8
- export const storyUtilityButtonArgTypes: StoryBookArgTypes = {
9
- size: {
10
- control: { type: 'select' },
11
- options: componentSizeArray,
12
- },
13
- };
14
-
15
- // More on how to set up stories at: https://storybook.js.org/docs/writing-stories
16
- const { Story } = defineMeta({
17
- component: UtilityButton,
18
- tags: ['autodocs'],
19
- argTypes: storyUtilityButtonArgTypes,
20
- });
21
- </script>
22
-
23
- <!-- Button with default style -->
24
- <Story name="Default">
25
- <Icon icon="mdi:eye" width="24" height="24" />
26
- </Story>
27
-
28
- <Story name="Disabled" args={{ disabled: true }}>
29
- <Icon icon="mdi:eye" width="24" height="24" />
30
- </Story>
@@ -1,25 +0,0 @@
1
- import { Source } from '@storybook/addon-docs/blocks';
2
-
3
- # Click Outside
4
-
5
- Event that fires after clicking outside the target component
6
-
7
- <Source
8
- dark
9
- language="js"
10
- code={`
11
- import { clickOutside } '@flightlesslabs/dodo-ui';
12
- `}
13
- />
14
-
15
- Attach it to a component
16
-
17
- <Source
18
- dark
19
- language="js"
20
- code={`
21
- <div
22
- use:clickOutside={onClickOutside}
23
- ...
24
- `}
25
- />
@@ -1,20 +0,0 @@
1
- import { Source } from '@storybook/addon-docs/blocks';
2
-
3
- # `cleanNumericString`
4
-
5
- Cleans the input string by removing all characters except numeric digits (0-9) and a single decimal point.
6
- Only the first decimal point is retained; all subsequent dots are removed.
7
-
8
- ---
9
-
10
- ## Basic Usage
11
-
12
- <Source
13
- dark
14
- language="ts"
15
- code={`
16
- import { cleanNumericString } from '@flightlesslabs/dodo-ui';
17
-
18
- const result = cleanNumericString("abc123.45.67def"); // result === "123.4567"
19
- `}
20
- />
@@ -1,71 +0,0 @@
1
- import { Source } from '@storybook/addon-docs/blocks';
2
-
3
- # `isValidNumberValue`
4
-
5
- Utility function to validate whether a string is a valid number based on customizable settings including minimum, maximum, decimal places, and allowance of negative numbers.
6
-
7
- ---
8
-
9
- ## Basic Usage
10
-
11
- Validates a string as a number with default settings (no decimals allowed, no negatives allowed, strict checking):
12
-
13
- <Source
14
- dark
15
- language="ts"
16
- code={`
17
- import { isValidNumberValue } from '@flightlesslabs/dodo-ui';
18
-
19
- const result = isValidNumberValue("123");
20
- console.log(result); // true
21
- `}
22
- />
23
-
24
- ---
25
-
26
- ## With Settings
27
-
28
- Customize validation rules:
29
-
30
- - `min` — minimum allowed value (inclusive)
31
- - `max` — maximum allowed value (inclusive)
32
- - `allowNegativeValues` — whether negatives are allowed
33
- - `decimalPlaces` — max decimal places allowed
34
- - `log` — enable detailed logging
35
- - `strict` — Strict checking, Full text - keep it enabled, Partial text - keep it disabled
36
-
37
- <Source
38
- dark
39
- language="ts"
40
- code={`
41
- import { isValidNumberValue } from '@flightlesslabs/dodo-ui';
42
-
43
- const result1 = isValidNumberValue("123.456", { decimalPlaces: 3, log: true });
44
- const result2 = isValidNumberValue("-50", { allowNegativeValues: true, min: -100 });
45
- const result3 = isValidNumberValue("200", { max: 150 });
46
-
47
- const result4 = isValidNumberValue("-", { allowNegativeValues: true });
48
- const result5 = isValidNumberValue("-", { allowNegativeValues: true, strict: false });
49
-
50
- console.log(result1); // true
51
- console.log(result2); // true
52
- console.log(result3); // false (exceeds max)
53
- console.log(result4); // false (fails in strict check)
54
- console.log(result5); // true (pass in strict check)
55
- `}
56
- />
57
-
58
- ---
59
-
60
- ## Type Definition
61
-
62
- ```ts
63
- export type IsValidNumberValueSettings = {
64
- min?: number;
65
- max?: number;
66
- allowNegativeValues?: boolean;
67
- decimalPlaces?: number;
68
- log?: boolean;
69
- strict?: boolean;
70
- };
71
- ```
@@ -1,45 +0,0 @@
1
- import { Source } from '@storybook/addon-docs/blocks';
2
-
3
- # `getMoment`
4
-
5
- A [Day.js](https://day.js.org/) wrapper that supports custom formats, UTC mode, and timezone conversion using `dayjs`, `utc`, `timezone`, and `customParseFormat` plugins.
6
-
7
- ---
8
-
9
- ## Usage
10
-
11
- <Source
12
- dark
13
- language="ts"
14
- code={`
15
- // Basic local time
16
- getMoment('2025-01-01T00:00:00Z').format();
17
-
18
- // UTC output
19
- getMoment('2025-01-01T00:00:00Z', undefined, { utc: true }).format();
20
- // → "2025-01-01T00:00:00Z"
21
-
22
- // With custom format + timezone
23
- getMoment('01-01-2025', 'DD-MM-YYYY', { timezone: 'Asia/Kolkata' }).format();
24
- // → "2025-01-01T00:00:00+05:30"
25
- `}
26
- />
27
-
28
- ---
29
-
30
- ## API
31
-
32
- <Source
33
- dark
34
- language="ts"
35
- code={`
36
- getMoment(
37
- date?: ConfigType,
38
- format?: string,
39
- settings?: {
40
- utc?: boolean;
41
- timezone?: string;
42
- }
43
- ): dayjs.Dayjs
44
- `}
45
- />
@@ -1,63 +0,0 @@
1
- import { Source } from '@storybook/addon-docs/blocks';
2
-
3
- # Logger Utility
4
-
5
- A customizable logger function that supports:
6
-
7
- - Log levels (`info`, `warn`, `error`)
8
- - Optional labels
9
- - A `show` flag to toggle logging
10
- - Console output with timestamps
11
-
12
- ## Import
13
-
14
- Import the logger creation function:
15
-
16
- <Source dark language="ts" code={`import { createLogger } from '@flightlesslabs/dodo-ui';`} />
17
-
18
- ## Basic Usage
19
-
20
- Create a logger and log different types of messages:
21
-
22
- <Source
23
- dark
24
- language="ts"
25
- code={`const logger = createLogger({
26
- label: 'AuthService',
27
- });
28
-
29
- logger.info('User logged in');
30
- logger.warn('Token is about to expire');
31
- logger.error('Login failed', new Error('Invalid credentials'));
32
- `}
33
- />
34
-
35
- ## Disable Logging
36
-
37
- You can use the \`show\` flag to completely silence the logger (e.g., in production):
38
-
39
- <Source
40
- dark
41
- language="ts"
42
- code={`const logger = createLogger({
43
- show: false,
44
- });
45
-
46
- logger.info('This will not be logged');
47
- `}
48
- />
49
-
50
- ## Level Filtering
51
-
52
- The logger will only show messages **at or above** the configured `level`:
53
-
54
- <Source
55
- dark
56
- language="ts"
57
- code={`const logger = createLogger();
58
-
59
- logger.info('This will NOT show');
60
- logger.warn('This WILL show');
61
- logger.error('This WILL show');
62
- `}
63
- />