@driveflux/beam 1.9.14 → 1.9.16

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 (250) hide show
  1. package/dist/accordion/Accordion.js +133 -7
  2. package/dist/accordion/Accordion.stories.js +31 -11
  3. package/dist/alert/Alert.js +110 -14
  4. package/dist/alert/Alert.stories.js +50 -15
  5. package/dist/animations/LoadingAnimation.js +34 -21
  6. package/dist/badge/Badge.js +96 -7
  7. package/dist/badge/Badge.stories.js +28 -7
  8. package/dist/box/Box.d.ts +1 -1
  9. package/dist/box/Box.d.ts.map +1 -1
  10. package/dist/box/Box.js +87 -3
  11. package/dist/box/Box.stories.js +8 -7
  12. package/dist/breadcrumbs/Breadcrumbs.js +288 -28
  13. package/dist/breadcrumbs/Breadcrumbs.stories.js +51 -27
  14. package/dist/button/Button.d.ts +1 -1
  15. package/dist/button/Button.js +124 -12
  16. package/dist/button/Button.js.map +1 -1
  17. package/dist/button/Button.stories.js +35 -7
  18. package/dist/card/Card.js +109 -7
  19. package/dist/card/Card.stories.js +10 -7
  20. package/dist/carousel/Carousel.js +279 -58
  21. package/dist/carousel/Carousel.stories.js +39 -7
  22. package/dist/carousel/CarouselButton.js +68 -7
  23. package/dist/center/Center.js +63 -3
  24. package/dist/center/Center.stories.js +19 -7
  25. package/dist/checkbox/Checkbox.js +115 -4
  26. package/dist/checkbox/Checkbox.stories.js +10 -8
  27. package/dist/chip/Chip.js +104 -3
  28. package/dist/chip/Chip.stories.js +19 -7
  29. package/dist/circular-progress/CircularProgress.js +150 -11
  30. package/dist/circular-progress/CircularProgress.stories.js +54 -14
  31. package/dist/command/command.js +170 -13
  32. package/dist/datepicker/DatePicker.d.ts +20 -2
  33. package/dist/datepicker/DatePicker.d.ts.map +1 -1
  34. package/dist/datepicker/DatePicker.js +133 -77
  35. package/dist/datepicker/DatePicker.stories.js +144 -48
  36. package/dist/datepicker/DatePickerDrawer.d.ts +6 -0
  37. package/dist/datepicker/DatePickerDrawer.d.ts.map +1 -0
  38. package/dist/datepicker/DatePickerDrawer.js +112 -0
  39. package/dist/datepicker/DatePickerDrawer.js.map +1 -0
  40. package/dist/datepicker/DatePickerPopover.d.ts +6 -0
  41. package/dist/datepicker/DatePickerPopover.d.ts.map +1 -0
  42. package/dist/datepicker/DatePickerPopover.js +222 -0
  43. package/dist/datepicker/DatePickerPopover.js.map +1 -0
  44. package/dist/datepicker/constants.d.ts +4 -0
  45. package/dist/datepicker/constants.d.ts.map +1 -0
  46. package/dist/datepicker/constants.js +3 -0
  47. package/dist/datepicker/constants.js.map +1 -0
  48. package/dist/datepicker/utils.d.ts +3 -0
  49. package/dist/datepicker/utils.d.ts.map +1 -0
  50. package/dist/datepicker/utils.js +8 -0
  51. package/dist/datepicker/utils.js.map +1 -0
  52. package/dist/dialog/index.js +144 -12
  53. package/dist/divider/Divider.js +63 -3
  54. package/dist/divider/Divider.stories.js +13 -7
  55. package/dist/drawer/index.d.ts +3 -1
  56. package/dist/drawer/index.d.ts.map +1 -1
  57. package/dist/drawer/index.js +157 -12
  58. package/dist/dropdown/Dropdown.js +212 -26
  59. package/dist/dropdown/Dropdown.stories.js +109 -22
  60. package/dist/field-wrapper/FieldWrapper.js +136 -3
  61. package/dist/field-wrapper/FieldWrapper.stories.js +124 -28
  62. package/dist/flex/Flex.js +63 -3
  63. package/dist/flex/Flex.stories.js +19 -7
  64. package/dist/grid/Grid.js +63 -3
  65. package/dist/grid/Grid.stories.js +28 -7
  66. package/dist/hooks/use-breakpoint-value.js +77 -14
  67. package/dist/hooks/use-media-query.js +61 -12
  68. package/dist/hstack/HStack.js +63 -3
  69. package/dist/hstack/HStack.stories.js +19 -7
  70. package/dist/icons/FluxLogo.js +213 -9
  71. package/dist/icons/FluxLogoTable.js +109 -5
  72. package/dist/icons/Icon.js +108 -7
  73. package/dist/icons/Icon.stories.js +12 -7
  74. package/dist/icons/Icon24Hours.js +83 -5
  75. package/dist/icons/IconAccount.js +72 -4
  76. package/dist/icons/IconApplicant.js +78 -5
  77. package/dist/icons/IconArrow.d.ts +11 -0
  78. package/dist/icons/IconArrow.d.ts.map +1 -0
  79. package/dist/icons/IconArrow.js +86 -0
  80. package/dist/icons/IconArrow.js.map +1 -0
  81. package/dist/icons/IconArrowBack.js +72 -4
  82. package/dist/icons/IconArrowForward.js +72 -4
  83. package/dist/icons/IconArrowTopLeft.js +70 -4
  84. package/dist/icons/IconBluesharkProductGuide.js +80 -5
  85. package/dist/icons/IconBolt.js +72 -4
  86. package/dist/icons/IconBriefcase.js +72 -4
  87. package/dist/icons/IconBulb.js +72 -4
  88. package/dist/icons/IconCalendar.js +73 -5
  89. package/dist/icons/IconCancelMark.js +72 -4
  90. package/dist/icons/IconCarSUV.js +72 -4
  91. package/dist/icons/IconCarSedan.js +147 -7
  92. package/dist/icons/IconChain.js +79 -5
  93. package/dist/icons/IconCheckmark.js +72 -4
  94. package/dist/icons/IconChevronRight.js +72 -4
  95. package/dist/icons/IconCircle.js +72 -4
  96. package/dist/icons/IconCircleCheckmark.d.ts +1 -0
  97. package/dist/icons/IconCircleCheckmark.d.ts.map +1 -1
  98. package/dist/icons/IconCircleCheckmark.js +77 -4
  99. package/dist/icons/IconCircleError.js +72 -4
  100. package/dist/icons/IconCircleExclamation.js +104 -6
  101. package/dist/icons/IconCircleMark.js +78 -5
  102. package/dist/icons/IconCircleOutline.js +140 -5
  103. package/dist/icons/IconClock.js +80 -5
  104. package/dist/icons/IconClose.js +72 -4
  105. package/dist/icons/IconConcierge.js +79 -5
  106. package/dist/icons/IconConciergeService.js +87 -5
  107. package/dist/icons/IconCreditCard.js +78 -5
  108. package/dist/icons/IconDash.js +72 -4
  109. package/dist/icons/IconDelivery.js +87 -5
  110. package/dist/icons/IconDetails.js +72 -4
  111. package/dist/icons/IconDot.js +87 -6
  112. package/dist/icons/IconElectricCarFuel.js +80 -5
  113. package/dist/icons/IconEllipsis.js +78 -5
  114. package/dist/icons/IconEnvelope.js +72 -4
  115. package/dist/icons/IconEye.js +79 -5
  116. package/dist/icons/IconFacebook.js +94 -6
  117. package/dist/icons/IconFilter.js +83 -5
  118. package/dist/icons/IconFlagMalaysia.js +141 -5
  119. package/dist/icons/IconGiveKey.js +79 -5
  120. package/dist/icons/IconGlobe.js +70 -4
  121. package/dist/icons/IconGoogle.js +87 -5
  122. package/dist/icons/IconHome.js +78 -5
  123. package/dist/icons/IconHostAdvertise.js +72 -4
  124. package/dist/icons/IconHostCar.js +75 -4
  125. package/dist/icons/IconHostCash.js +91 -5
  126. package/dist/icons/IconHostHandle.js +70 -4
  127. package/dist/icons/IconHostLocation.js +70 -4
  128. package/dist/icons/IconHostPayment.js +91 -5
  129. package/dist/icons/IconHostService.js +79 -5
  130. package/dist/icons/IconHotDeals.js +72 -4
  131. package/dist/icons/IconInfo.js +77 -5
  132. package/dist/icons/IconInstagram.js +72 -4
  133. package/dist/icons/IconInsurance.js +99 -5
  134. package/dist/icons/IconInternet.js +73 -4
  135. package/dist/icons/IconInventory.js +78 -5
  136. package/dist/icons/IconLaurel.js +101 -5
  137. package/dist/icons/IconLinkedIn.js +72 -4
  138. package/dist/icons/IconLoading.js +78 -4
  139. package/dist/icons/IconLocation.js +80 -5
  140. package/dist/icons/IconLock.js +73 -4
  141. package/dist/icons/IconLogistics.js +72 -4
  142. package/dist/icons/IconMail.js +94 -5
  143. package/dist/icons/IconMember.js +78 -5
  144. package/dist/icons/IconMobilePen.js +83 -5
  145. package/dist/icons/IconMotorcycleMoped.js +78 -5
  146. package/dist/icons/IconNoCost.js +92 -5
  147. package/dist/icons/IconPDF.js +80 -5
  148. package/dist/icons/IconPencil.js +70 -4
  149. package/dist/icons/IconPhone.js +70 -4
  150. package/dist/icons/IconPlus.js +72 -4
  151. package/dist/icons/IconPricing.js +72 -4
  152. package/dist/icons/IconProtected.js +71 -4
  153. package/dist/icons/IconPsychology.js +72 -4
  154. package/dist/icons/IconQuestionTooltip.js +73 -4
  155. package/dist/icons/IconQuote.js +72 -4
  156. package/dist/icons/IconRate.js +71 -4
  157. package/dist/icons/IconRegister.js +99 -5
  158. package/dist/icons/IconReturn.js +72 -4
  159. package/dist/icons/IconSearch.js +70 -4
  160. package/dist/icons/IconSecure.js +71 -4
  161. package/dist/icons/IconSecurity.js +73 -4
  162. package/dist/icons/IconSedanOutline.js +159 -5
  163. package/dist/icons/IconSelectArrow.js +78 -6
  164. package/dist/icons/IconSort.js +79 -5
  165. package/dist/icons/IconSortListed.js +95 -5
  166. package/dist/icons/IconSortPriceAscending.js +83 -5
  167. package/dist/icons/IconSortPriceDescending.js +83 -5
  168. package/dist/icons/IconSortYear.js +79 -5
  169. package/dist/icons/IconSpan.js +71 -4
  170. package/dist/icons/IconSpeaker.js +79 -4
  171. package/dist/icons/IconSpecialCar.js +95 -5
  172. package/dist/icons/IconStar.js +92 -7
  173. package/dist/icons/IconStockPhoto.js +95 -5
  174. package/dist/icons/IconSubscription.js +113 -6
  175. package/dist/icons/IconSubscriptions.js +113 -6
  176. package/dist/icons/IconSwap.js +79 -5
  177. package/dist/icons/IconTax.js +72 -4
  178. package/dist/icons/IconThinArrow.js +78 -6
  179. package/dist/icons/IconThumbsdown.js +78 -5
  180. package/dist/icons/IconThumbsup.js +78 -5
  181. package/dist/icons/IconTool.js +72 -4
  182. package/dist/icons/IconTooltip.js +73 -4
  183. package/dist/icons/IconTrash.js +72 -4
  184. package/dist/icons/IconTriangleExclamation.js +72 -4
  185. package/dist/icons/IconTyersBrakes.js +83 -5
  186. package/dist/icons/IconTyre.js +83 -5
  187. package/dist/icons/IconVacancy.js +78 -5
  188. package/dist/icons/IconVolunteer.js +72 -4
  189. package/dist/icons/IconWhatsapp.js +73 -4
  190. package/dist/icons/IconXPlatform.js +72 -4
  191. package/dist/icons/IconZeroEffort.js +77 -5
  192. package/dist/icons/Logo.js +99 -3
  193. package/dist/input/Input.js +125 -11
  194. package/dist/input/Input.stories.js +17 -18
  195. package/dist/input-mask/InputMask.js +96 -10
  196. package/dist/input-mask/InputMask.stories.js +5 -6
  197. package/dist/input-mask/mask-trackers.js +4 -5
  198. package/dist/input-select/InputSelect.js +357 -69
  199. package/dist/input-select/InputSelect.stories.d.ts.map +1 -1
  200. package/dist/input-select/InputSelect.stories.js +54 -18
  201. package/dist/popover/popover.js +72 -4
  202. package/dist/progress/Progress.js +96 -2
  203. package/dist/progress/Progress.stories.js +13 -14
  204. package/dist/radio/Radio.js +163 -4
  205. package/dist/scroll-area/scroll-area.js +113 -5
  206. package/dist/search-input-select/SearchInputSelect.js +346 -69
  207. package/dist/select/Select.js +301 -31
  208. package/dist/select/Select.stories.d.ts.map +1 -1
  209. package/dist/select/Select.stories.js +55 -19
  210. package/dist/skeleton/Skeleton.js +62 -3
  211. package/dist/skeleton/Skeleton.stories.js +8 -7
  212. package/dist/slider/Slider.js +106 -5
  213. package/dist/slider/Slider.stories.js +12 -11
  214. package/dist/stack/Stack.js +63 -3
  215. package/dist/stack/Stack.stories.js +19 -7
  216. package/dist/styles.css +58 -0
  217. package/dist/table/Table.js +131 -10
  218. package/dist/table/Table.stories.js +84 -8
  219. package/dist/tabs/Tabs.js +128 -9
  220. package/dist/tabs/Tabs.stories.js +46 -13
  221. package/dist/text/Text.d.ts +2 -1
  222. package/dist/text/Text.d.ts.map +1 -1
  223. package/dist/text/Text.js +88 -6
  224. package/dist/text/Text.stories.js +44 -7
  225. package/dist/toast/Toast.stories.js +66 -14
  226. package/dist/toast/ToastBox.js +71 -24
  227. package/dist/toast/index.js +0 -1
  228. package/dist/toast/sonner.js +70 -11
  229. package/dist/toggle/Toggle.d.ts +12 -0
  230. package/dist/toggle/Toggle.d.ts.map +1 -0
  231. package/dist/toggle/Toggle.js +131 -0
  232. package/dist/toggle/Toggle.js.map +1 -0
  233. package/dist/toggle/Toggle.stories.d.ts +11 -0
  234. package/dist/toggle/Toggle.stories.d.ts.map +1 -0
  235. package/dist/toggle/Toggle.stories.js +17 -0
  236. package/dist/toggle/Toggle.stories.js.map +1 -0
  237. package/dist/tooltip/Tooltip.js +151 -12
  238. package/dist/tooltip/Tooltip.stories.js +71 -13
  239. package/dist/utils.js +4 -2
  240. package/dist/vstack/VStack.js +63 -3
  241. package/dist/vstack/VStack.stories.js +19 -7
  242. package/package.json +6 -1
  243. package/dist/icons/IconAcceleration.d.ts +0 -8
  244. package/dist/icons/IconAcceleration.d.ts.map +0 -1
  245. package/dist/icons/IconAcceleration.js +0 -8
  246. package/dist/icons/IconAcceleration.js.map +0 -1
  247. package/dist/icons/IconEVCharging.d.ts +0 -8
  248. package/dist/icons/IconEVCharging.d.ts.map +0 -1
  249. package/dist/icons/IconEVCharging.js +0 -8
  250. package/dist/icons/IconEVCharging.js.map +0 -1
@@ -1,30 +1,187 @@
1
1
  'use client';
2
+ function _define_property(obj, key, value) {
3
+ if (key in obj) {
4
+ Object.defineProperty(obj, key, {
5
+ value: value,
6
+ enumerable: true,
7
+ configurable: true,
8
+ writable: true
9
+ });
10
+ } else {
11
+ obj[key] = value;
12
+ }
13
+ return obj;
14
+ }
15
+ function _object_spread(target) {
16
+ for(var i = 1; i < arguments.length; i++){
17
+ var source = arguments[i] != null ? arguments[i] : {};
18
+ var ownKeys = Object.keys(source);
19
+ if (typeof Object.getOwnPropertySymbols === "function") {
20
+ ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function(sym) {
21
+ return Object.getOwnPropertyDescriptor(source, sym).enumerable;
22
+ }));
23
+ }
24
+ ownKeys.forEach(function(key) {
25
+ _define_property(target, key, source[key]);
26
+ });
27
+ }
28
+ return target;
29
+ }
30
+ function ownKeys(object, enumerableOnly) {
31
+ var keys = Object.keys(object);
32
+ if (Object.getOwnPropertySymbols) {
33
+ var symbols = Object.getOwnPropertySymbols(object);
34
+ if (enumerableOnly) {
35
+ symbols = symbols.filter(function(sym) {
36
+ return Object.getOwnPropertyDescriptor(object, sym).enumerable;
37
+ });
38
+ }
39
+ keys.push.apply(keys, symbols);
40
+ }
41
+ return keys;
42
+ }
43
+ function _object_spread_props(target, source) {
44
+ source = source != null ? source : {};
45
+ if (Object.getOwnPropertyDescriptors) {
46
+ Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));
47
+ } else {
48
+ ownKeys(Object(source)).forEach(function(key) {
49
+ Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));
50
+ });
51
+ }
52
+ return target;
53
+ }
54
+ function _object_without_properties(source, excluded) {
55
+ if (source == null) return {};
56
+ var target = _object_without_properties_loose(source, excluded);
57
+ var key, i;
58
+ if (Object.getOwnPropertySymbols) {
59
+ var sourceSymbolKeys = Object.getOwnPropertySymbols(source);
60
+ for(i = 0; i < sourceSymbolKeys.length; i++){
61
+ key = sourceSymbolKeys[i];
62
+ if (excluded.indexOf(key) >= 0) continue;
63
+ if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue;
64
+ target[key] = source[key];
65
+ }
66
+ }
67
+ return target;
68
+ }
69
+ function _object_without_properties_loose(source, excluded) {
70
+ if (source == null) return {};
71
+ var target = {};
72
+ var sourceKeys = Object.keys(source);
73
+ var key, i;
74
+ for(i = 0; i < sourceKeys.length; i++){
75
+ key = sourceKeys[i];
76
+ if (excluded.indexOf(key) >= 0) continue;
77
+ target[key] = source[key];
78
+ }
79
+ return target;
80
+ }
2
81
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
82
  import { Command as CommandPrimitive } from 'cmdk';
4
83
  import * as React from 'react';
5
84
  import { Dialog, DialogContent } from '../dialog/index';
6
85
  import IconSearch from '../icons/IconSearch';
7
86
  import { cn } from '../utils';
8
- const Command = React.forwardRef(({ className, ...props }, ref) => (_jsx(CommandPrimitive, { ref: ref, className: cn('flex h-full w-full flex-col overflow-hidden rounded-md bg-white text-zinc-950 dark:bg-zinc-950 dark:text-zinc-50', className), ...props })));
87
+ var Command = /*#__PURE__*/ React.forwardRef(function(_param, ref) {
88
+ var className = _param.className, props = _object_without_properties(_param, [
89
+ "className"
90
+ ]);
91
+ return /*#__PURE__*/ _jsx(CommandPrimitive, _object_spread({
92
+ ref: ref,
93
+ className: cn('flex h-full w-full flex-col overflow-hidden rounded-md bg-white text-zinc-950 dark:bg-zinc-950 dark:text-zinc-50', className)
94
+ }, props));
95
+ });
9
96
  Command.displayName = CommandPrimitive.displayName;
10
- const CommandDialog = ({ children, ...props }) => {
11
- return (_jsx(Dialog, { ...props, children: _jsx(DialogContent, { className: "overflow-hidden p-0 shadow-lg", children: _jsx(Command, { className: "[&_[cmdk-group-heading]]:px-2 [&_[cmdk-group-heading]]:font-medium [&_[cmdk-group-heading]]:text-zinc-500 [&_[cmdk-group]:not([hidden])_~[cmdk-group]]:pt-0 [&_[cmdk-group]]:px-2 [&_[cmdk-input-wrapper]_svg]:h-5 [&_[cmdk-input-wrapper]_svg]:w-5 [&_[cmdk-input]]:h-12 [&_[cmdk-item]]:px-2 [&_[cmdk-item]]:py-3 [&_[cmdk-item]_svg]:h-5 [&_[cmdk-item]_svg]:w-5 dark:[&_[cmdk-group-heading]]:text-zinc-400", children: children }) }) }));
97
+ var CommandDialog = function(_param) {
98
+ var children = _param.children, props = _object_without_properties(_param, [
99
+ "children"
100
+ ]);
101
+ return /*#__PURE__*/ _jsx(Dialog, _object_spread_props(_object_spread({}, props), {
102
+ children: /*#__PURE__*/ _jsx(DialogContent, {
103
+ className: "overflow-hidden p-0 shadow-lg",
104
+ children: /*#__PURE__*/ _jsx(Command, {
105
+ className: "[&_[cmdk-group-heading]]:px-2 [&_[cmdk-group-heading]]:font-medium [&_[cmdk-group-heading]]:text-zinc-500 [&_[cmdk-group]:not([hidden])_~[cmdk-group]]:pt-0 [&_[cmdk-group]]:px-2 [&_[cmdk-input-wrapper]_svg]:h-5 [&_[cmdk-input-wrapper]_svg]:w-5 [&_[cmdk-input]]:h-12 [&_[cmdk-item]]:px-2 [&_[cmdk-item]]:py-3 [&_[cmdk-item]_svg]:h-5 [&_[cmdk-item]_svg]:w-5 dark:[&_[cmdk-group-heading]]:text-zinc-400",
106
+ children: children
107
+ })
108
+ })
109
+ }));
12
110
  };
13
- const CommandInput = React.forwardRef(({ className, containerClassName, ...props }, ref) => (_jsxs("div", { className: cn('flex h-10 items-center border-b px-3', containerClassName), "cmdk-input-wrapper": "", children: [_jsx(IconSearch, { className: "mr-2 h-4 w-4 shrink-0 opacity-50" }), _jsx(CommandPrimitive.Input, { ref: ref, className: cn('flex w-full rounded-md bg-transparent py-3 text-sm outline-none placeholder:text-zinc-500 disabled:cursor-not-allowed disabled:opacity-50 dark:placeholder:text-zinc-400', className), ...props })] })));
111
+ var CommandInput = /*#__PURE__*/ React.forwardRef(function(_param, ref) {
112
+ var className = _param.className, containerClassName = _param.containerClassName, props = _object_without_properties(_param, [
113
+ "className",
114
+ "containerClassName"
115
+ ]);
116
+ return /*#__PURE__*/ _jsxs("div", {
117
+ className: cn('flex h-10 items-center border-b px-3', containerClassName),
118
+ "cmdk-input-wrapper": "",
119
+ children: [
120
+ /*#__PURE__*/ _jsx(IconSearch, {
121
+ className: "mr-2 h-4 w-4 shrink-0 opacity-50"
122
+ }),
123
+ /*#__PURE__*/ _jsx(CommandPrimitive.Input, _object_spread({
124
+ ref: ref,
125
+ className: cn('flex w-full rounded-md bg-transparent py-3 text-sm outline-none placeholder:text-zinc-500 disabled:cursor-not-allowed disabled:opacity-50 dark:placeholder:text-zinc-400', className)
126
+ }, props))
127
+ ]
128
+ });
129
+ });
14
130
  CommandInput.displayName = CommandPrimitive.Input.displayName;
15
- const CommandList = React.forwardRef(({ className, ...props }, ref) => (_jsx(CommandPrimitive.List, { ref: ref, className: cn('max-h-[300px] overflow-y-auto overflow-x-hidden', className), ...props })));
131
+ var CommandList = /*#__PURE__*/ React.forwardRef(function(_param, ref) {
132
+ var className = _param.className, props = _object_without_properties(_param, [
133
+ "className"
134
+ ]);
135
+ return /*#__PURE__*/ _jsx(CommandPrimitive.List, _object_spread({
136
+ ref: ref,
137
+ className: cn('max-h-[300px] overflow-y-auto overflow-x-hidden', className)
138
+ }, props));
139
+ });
16
140
  CommandList.displayName = CommandPrimitive.List.displayName;
17
- const CommandEmpty = React.forwardRef((props, ref) => (_jsx(CommandPrimitive.Empty, { ref: ref, className: "py-6 text-center text-sm", ...props })));
141
+ var CommandEmpty = /*#__PURE__*/ React.forwardRef(function(props, ref) {
142
+ return /*#__PURE__*/ _jsx(CommandPrimitive.Empty, _object_spread({
143
+ ref: ref,
144
+ className: "py-6 text-center text-sm"
145
+ }, props));
146
+ });
18
147
  CommandEmpty.displayName = CommandPrimitive.Empty.displayName;
19
- const CommandGroup = React.forwardRef(({ className, ...props }, ref) => (_jsx(CommandPrimitive.Group, { ref: ref, className: cn('overflow-hidden p-1 text-zinc-950 [&_[cmdk-group-heading]]:px-2 [&_[cmdk-group-heading]]:py-1.5 [&_[cmdk-group-heading]]:text-xs [&_[cmdk-group-heading]]:font-medium [&_[cmdk-group-heading]]:text-zinc-500 dark:text-zinc-50 dark:[&_[cmdk-group-heading]]:text-zinc-400', className), ...props })));
148
+ var CommandGroup = /*#__PURE__*/ React.forwardRef(function(_param, ref) {
149
+ var className = _param.className, props = _object_without_properties(_param, [
150
+ "className"
151
+ ]);
152
+ return /*#__PURE__*/ _jsx(CommandPrimitive.Group, _object_spread({
153
+ ref: ref,
154
+ className: cn('overflow-hidden p-1 text-zinc-950 [&_[cmdk-group-heading]]:px-2 [&_[cmdk-group-heading]]:py-1.5 [&_[cmdk-group-heading]]:text-xs [&_[cmdk-group-heading]]:font-medium [&_[cmdk-group-heading]]:text-zinc-500 dark:text-zinc-50 dark:[&_[cmdk-group-heading]]:text-zinc-400', className)
155
+ }, props));
156
+ });
20
157
  CommandGroup.displayName = CommandPrimitive.Group.displayName;
21
- const CommandSeparator = React.forwardRef(({ className, ...props }, ref) => (_jsx(CommandPrimitive.Separator, { ref: ref, className: cn('-mx-1 h-px bg-zinc-200 dark:bg-zinc-800', className), ...props })));
158
+ var CommandSeparator = /*#__PURE__*/ React.forwardRef(function(_param, ref) {
159
+ var className = _param.className, props = _object_without_properties(_param, [
160
+ "className"
161
+ ]);
162
+ return /*#__PURE__*/ _jsx(CommandPrimitive.Separator, _object_spread({
163
+ ref: ref,
164
+ className: cn('-mx-1 h-px bg-zinc-200 dark:bg-zinc-800', className)
165
+ }, props));
166
+ });
22
167
  CommandSeparator.displayName = CommandPrimitive.Separator.displayName;
23
- const CommandItem = React.forwardRef(({ className, ...props }, ref) => (_jsx(CommandPrimitive.Item, { ref: ref, className: cn("relative flex cursor-default select-none items-center rounded-sm px-2 py-1.5 text-sm outline-none data-[disabled=true]:pointer-events-none data-[selected='true']:bg-zinc-100 data-[selected=true]:text-zinc-900 data-[disabled=true]:opacity-50 dark:data-[selected='true']:bg-zinc-800 dark:data-[selected=true]:text-zinc-50", className), ...props })));
168
+ var CommandItem = /*#__PURE__*/ React.forwardRef(function(_param, ref) {
169
+ var className = _param.className, props = _object_without_properties(_param, [
170
+ "className"
171
+ ]);
172
+ return /*#__PURE__*/ _jsx(CommandPrimitive.Item, _object_spread({
173
+ ref: ref,
174
+ className: cn("relative flex cursor-default select-none items-center rounded-sm px-2 py-1.5 text-sm outline-none data-[disabled=true]:pointer-events-none data-[selected='true']:bg-zinc-100 data-[selected=true]:text-zinc-900 data-[disabled=true]:opacity-50 dark:data-[selected='true']:bg-zinc-800 dark:data-[selected=true]:text-zinc-50", className)
175
+ }, props));
176
+ });
24
177
  CommandItem.displayName = CommandPrimitive.Item.displayName;
25
- const CommandShortcut = ({ className, ...props }) => {
26
- return (_jsx("span", { className: cn('ml-auto text-xs tracking-widest text-zinc-500 dark:text-zinc-400', className), ...props }));
178
+ var CommandShortcut = function(_param) {
179
+ var className = _param.className, props = _object_without_properties(_param, [
180
+ "className"
181
+ ]);
182
+ return /*#__PURE__*/ _jsx("span", _object_spread({
183
+ className: cn('ml-auto text-xs tracking-widest text-zinc-500 dark:text-zinc-400', className)
184
+ }, props));
27
185
  };
28
186
  CommandShortcut.displayName = 'CommandShortcut';
29
- export { Command, CommandDialog, CommandInput, CommandList, CommandEmpty, CommandGroup, CommandItem, CommandShortcut, CommandSeparator, };
30
- //# sourceMappingURL=command.js.map
187
+ export { Command, CommandDialog, CommandInput, CommandList, CommandEmpty, CommandGroup, CommandItem, CommandShortcut, CommandSeparator, };
@@ -1,7 +1,7 @@
1
1
  import { type FC } from 'react';
2
- import { type CalendarType } from 'react-calendar';
2
+ import type { CalendarType } from 'react-calendar';
3
+ import type { Value } from 'react-calendar/dist/esm/shared/types.js';
3
4
  import type { InputProps } from '../input/Input';
4
- export type ValuePiece = Date | null;
5
5
  export type DatePickerProps = {
6
6
  htmlFor?: string;
7
7
  locale?: string;
@@ -12,6 +12,13 @@ export type DatePickerProps = {
12
12
  isDisabled?: boolean;
13
13
  onError?: (type: 'start-gte-end') => void;
14
14
  inputProps?: Omit<InputProps, 'htmlFor'>;
15
+ drawerTitle?: string;
16
+ resetButton?: {
17
+ label?: string;
18
+ };
19
+ applyButton?: {
20
+ label?: string;
21
+ };
15
22
  } & ({
16
23
  isRange: true;
17
24
  value?: [Date, Date];
@@ -21,6 +28,17 @@ export type DatePickerProps = {
21
28
  value?: Date;
22
29
  onChange?: (value: Date) => void;
23
30
  });
31
+ export type DatePickerChildProps = {
32
+ innerValue: Date | [Date, Date] | undefined;
33
+ setInnerValue: (value: Date | [Date, Date] | undefined) => void;
34
+ inputValue: string;
35
+ setInputValue: (value: string) => void;
36
+ focused: boolean;
37
+ setFocused: (value: boolean) => void;
38
+ handleSelect: (value: Value) => void;
39
+ handleReset: () => void;
40
+ handleApply: () => void;
41
+ };
24
42
  declare const DatePicker: FC<DatePickerProps>;
25
43
  export default DatePicker;
26
44
  //# sourceMappingURL=DatePicker.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"DatePicker.d.ts","sourceRoot":"","sources":["../../src/datepicker/DatePicker.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAoB,KAAK,EAAE,EAA+B,MAAM,OAAO,CAAA;AAC9E,OAAiB,EAAE,KAAK,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAK5D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAA;AAGhD,MAAM,MAAM,UAAU,GAAG,IAAI,GAAG,IAAI,CAAA;AAEpC,MAAM,MAAM,eAAe,GAAG;IAC7B,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,OAAO,CAAC,EAAE,IAAI,CAAA;IACd,OAAO,CAAC,EAAE,IAAI,CAAA;IACd,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,YAAY,CAAC,EAAE,YAAY,CAAA;IAC3B,UAAU,CAAC,EAAE,OAAO,CAAA;IACpB,OAAO,CAAC,EAAE,CAAC,IAAI,EAAE,eAAe,KAAK,IAAI,CAAA;IACzC,UAAU,CAAC,EAAE,IAAI,CAAC,UAAU,EAAE,SAAS,CAAC,CAAA;CACxC,GAAG,CACD;IACA,OAAO,EAAE,IAAI,CAAA;IACb,KAAK,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC,CAAA;IACpB,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,IAAI,CAAA;CACvC,GACD;IACA,OAAO,CAAC,EAAE,KAAK,CAAA;IACf,KAAK,CAAC,EAAE,IAAI,CAAA;IACZ,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,IAAI,KAAK,IAAI,CAAA;CAC/B,CACH,CAAA;AAOD,QAAA,MAAM,UAAU,EAAE,EAAE,CAAC,eAAe,CAkHnC,CAAA;AAED,eAAe,UAAU,CAAA"}
1
+ {"version":3,"file":"DatePicker.d.ts","sourceRoot":"","sources":["../../src/datepicker/DatePicker.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAoB,KAAK,EAAE,EAA+B,MAAM,OAAO,CAAA;AAC9E,OAAiB,EAAE,KAAK,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAe5D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAA;AAKhD,MAAM,MAAM,UAAU,GAAG,IAAI,GAAG,IAAI,CAAA;AAEpC,MAAM,MAAM,eAAe,GAAG;IAC7B,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,OAAO,CAAC,EAAE,IAAI,CAAA;IACd,OAAO,CAAC,EAAE,IAAI,CAAA;IACd,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,YAAY,CAAC,EAAE,YAAY,CAAA;IAC3B,UAAU,CAAC,EAAE,OAAO,CAAA;IACpB,OAAO,CAAC,EAAE,CAAC,IAAI,EAAE,eAAe,KAAK,IAAI,CAAA;IACzC,UAAU,CAAC,EAAE,IAAI,CAAC,UAAU,EAAE,SAAS,CAAC,CAAA;IACxC,WAAW,CAAC,EAAE;QACb,KAAK,CAAC,EAAE,MAAM,CAAA;QACd,WAAW,CAAC,EAAE;YACb,KAAK,CAAC,EAAE,MAAM,CAAA;SACd,CAAA;QACD,WAAW,CAAC,EAAE;YACb,KAAK,CAAC,EAAE,MAAM,CAAA;SACd,CAAA;KACD,CAAA;CACD,GAAG,CACD;IACA,OAAO,EAAE,IAAI,CAAA;IACb,KAAK,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC,CAAA;IACpB,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,IAAI,CAAA;CACvC,GACD;IACA,OAAO,CAAC,EAAE,KAAK,CAAA;IACf,KAAK,CAAC,EAAE,IAAI,CAAA;IACZ,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,IAAI,KAAK,IAAI,CAAA;CAC/B,CACH,CAAA;AAOD,QAAA,MAAM,UAAU,EAAE,EAAE,CAAC,eAAe,CAiNnC,CAAA;AAED,eAAe,UAAU,CAAA"}
@@ -1,85 +1,141 @@
1
1
  'use client';
2
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
- import { format } from '@driveflux/time';
4
- import { useEffect, useRef, useState } from 'react';
5
- import Calendar from 'react-calendar';
6
- import Box from '../box/Box';
7
- import IconCalendar from '../icons/IconCalendar';
8
- import InputMask from '../input-mask/InputMask';
9
- import { maskTrackDate } from '../input-mask/mask-trackers';
10
- import { cn } from '../utils';
11
- const DATE_INPUT_FORMAT = 'DD-MM-YYYY';
12
- const DATE_REGEX = /^(0[0-9]|[12][0-9]|3[01])-(0[1-9]|1[0-2])-\d{4}$/;
13
- const DATERANGE_REGEX = /^(0[0-9]|[12][0-9]|3[01])-(0[1-9]|1[0-2])-\d{4}\s-\s(0[0-9]|[12][0-9]|3[01])-(0[1-9]|1[0-2])-\d{4}$/;
14
- const DatePicker = ({ htmlFor = 'datepicker', locale = 'en', isRange, value, onChange, minDate, maxDate, placeholder, calendarType, isDisabled, onError, inputProps, }) => {
15
- const [inputValue, setInputValue] = useState(formatInputBy(value, isRange));
16
- const [focused, setFocused] = useState(false);
17
- const containerRef = useRef(null);
18
- const handleChange = (e) => {
19
- const value = e.target.value;
20
- setInputValue(value);
21
- if (isRange && DATERANGE_REGEX.test(value)) {
22
- const [startDate, endDate] = value.split(' - ');
23
- const [startDay, startMonth, startYear] = startDate.split('/');
24
- const [endDay, endMonth, endYear] = endDate.split('/');
25
- const formattedStartDate = new Date(`${startYear}-${startMonth}-${startDay}`);
26
- const formattedEndDate = new Date(`${endYear}-${endMonth}-${endDay}`);
27
- if (formattedStartDate >= formattedEndDate) {
28
- onError?.('start-gte-end');
29
- return;
30
- }
31
- onChange?.([formattedStartDate, formattedEndDate]);
2
+ function _array_like_to_array(arr, len) {
3
+ if (len == null || len > arr.length) len = arr.length;
4
+ for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
5
+ return arr2;
6
+ }
7
+ function _array_with_holes(arr) {
8
+ if (Array.isArray(arr)) return arr;
9
+ }
10
+ function _define_property(obj, key, value) {
11
+ if (key in obj) {
12
+ Object.defineProperty(obj, key, {
13
+ value: value,
14
+ enumerable: true,
15
+ configurable: true,
16
+ writable: true
17
+ });
18
+ } else {
19
+ obj[key] = value;
20
+ }
21
+ return obj;
22
+ }
23
+ function _iterable_to_array_limit(arr, i) {
24
+ var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"];
25
+ if (_i == null) return;
26
+ var _arr = [];
27
+ var _n = true;
28
+ var _d = false;
29
+ var _s, _e;
30
+ try {
31
+ for(_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true){
32
+ _arr.push(_s.value);
33
+ if (i && _arr.length === i) break;
34
+ }
35
+ } catch (err) {
36
+ _d = true;
37
+ _e = err;
38
+ } finally{
39
+ try {
40
+ if (!_n && _i["return"] != null) _i["return"]();
41
+ } finally{
42
+ if (_d) throw _e;
43
+ }
44
+ }
45
+ return _arr;
46
+ }
47
+ function _non_iterable_rest() {
48
+ throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
49
+ }
50
+ function _object_spread(target) {
51
+ for(var i = 1; i < arguments.length; i++){
52
+ var source = arguments[i] != null ? arguments[i] : {};
53
+ var ownKeys = Object.keys(source);
54
+ if (typeof Object.getOwnPropertySymbols === "function") {
55
+ ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function(sym) {
56
+ return Object.getOwnPropertyDescriptor(source, sym).enumerable;
57
+ }));
58
+ }
59
+ ownKeys.forEach(function(key) {
60
+ _define_property(target, key, source[key]);
61
+ });
62
+ }
63
+ return target;
64
+ }
65
+ function _sliced_to_array(arr, i) {
66
+ return _array_with_holes(arr) || _iterable_to_array_limit(arr, i) || _unsupported_iterable_to_array(arr, i) || _non_iterable_rest();
67
+ }
68
+ function _unsupported_iterable_to_array(o, minLen) {
69
+ if (!o) return;
70
+ if (typeof o === "string") return _array_like_to_array(o, minLen);
71
+ var n = Object.prototype.toString.call(o).slice(8, -1);
72
+ if (n === "Object" && o.constructor) n = o.constructor.name;
73
+ if (n === "Map" || n === "Set") return Array.from(n);
74
+ if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array(o, minLen);
75
+ }
76
+ import { jsx as _jsx } from "react/jsx-runtime";
77
+ import { useState } from 'react';
78
+ import { useIsMobile } from '../hooks/use-media-query';
79
+ import DatePickerDrawer from './DatePickerDrawer';
80
+ import DatePickerPopover from './DatePickerPopover';
81
+ import { formatInputBy } from './utils';
82
+ var DatePicker = function(props) {
83
+ var value = props.value, isRange = props.isRange, minDate = props.minDate, onChange = props.onChange;
84
+ var isMobile = useIsMobile();
85
+ var _useState = _sliced_to_array(useState(value), 2), innerValue = _useState[0], setInnerValue = _useState[1];
86
+ var _useState1 = _sliced_to_array(useState(formatInputBy(value, isRange)), 2), inputValue = _useState1[0], setInputValue = _useState1[1];
87
+ var _useState2 = _sliced_to_array(useState(false), 2), focused = _useState2[0], setFocused = _useState2[1];
88
+ var handleSelect = function(value) {
89
+ if (isRange && Array.isArray(value) && value && value[0] && value[1]) {
90
+ setInnerValue([
91
+ value[0],
92
+ value[1]
93
+ ]);
32
94
  return;
33
95
  }
34
- if (!isRange && DATE_REGEX.test(value)) {
35
- const [day, month, year] = value.split('-');
36
- onChange?.(new Date(`${year}-${month}-${day}`));
96
+ if (!isRange && !Array.isArray(value) && value) {
97
+ setInnerValue(value);
37
98
  return;
38
99
  }
39
100
  };
40
- useEffect(() => {
41
- const handleClick = (e) => {
42
- const targetElement = e.target;
43
- const isCalendarClick = targetElement.closest('.react-calendar__tile');
44
- setFocused(!!containerRef.current?.contains(targetElement) || !!isCalendarClick);
45
- };
46
- document.addEventListener('click', handleClick);
47
- return () => document.removeEventListener('click', handleClick);
48
- }, []);
49
- return (_jsxs(Box, { ref: containerRef, className: "relative", children: [_jsx(InputMask, { htmlFor: htmlFor, placeholder: placeholder || formatPlaceholderBy(isRange), className: cn(isDisabled ? 'cursor-text' : 'cursor-pointer'), value: inputValue, isDisabled: isDisabled, suffix: _jsx(IconCalendar, { size: '16px' }), onChange: handleChange, onClick: () => {
50
- !isDisabled && setFocused(true);
51
- }, ...inputProps, mask: formatPlaceholderBy(isRange), maskReplacement: {
52
- D: /\d/,
53
- M: /\d/,
54
- Y: /\d/,
55
- }, maskTrack: (data) => maskTrackDate(data, isRange) }), focused && (_jsx(Box, { className: "absolute top-12 left-0 w-full p-2 border border-primary1 shadow-xl bg-white", children: _jsx(Calendar, { value: value, onChange: (value) => {
56
- if (isRange &&
57
- Array.isArray(value) &&
58
- value &&
59
- value[0] &&
60
- value[1]) {
61
- onChange?.([value[0], value[1]]);
62
- setInputValue(formatInputBy([value[0], value[1]], isRange));
63
- return;
64
- }
65
- if (!isRange && !Array.isArray(value) && value) {
66
- onChange?.(value);
67
- setInputValue(formatInputBy(value, isRange));
68
- return;
69
- }
70
- }, locale: locale || 'en', selectRange: isRange, minDate: minDate, maxDate: maxDate, calendarType: calendarType }) }))] }));
101
+ var handleReset = function() {
102
+ setInnerValue(minDate || new Date());
103
+ };
104
+ var handleApply = function() {
105
+ if (isRange && Array.isArray(innerValue) && innerValue && innerValue[0] && innerValue[1]) {
106
+ onChange === null || onChange === void 0 ? void 0 : onChange([
107
+ innerValue[0],
108
+ innerValue[1]
109
+ ]);
110
+ setFocused(false);
111
+ return;
112
+ }
113
+ if (!isRange && !Array.isArray(innerValue) && innerValue) {
114
+ onChange === null || onChange === void 0 ? void 0 : onChange(innerValue);
115
+ setFocused(false);
116
+ return;
117
+ }
118
+ };
119
+ return isMobile ? /*#__PURE__*/ _jsx(DatePickerDrawer, _object_spread({
120
+ innerValue: innerValue,
121
+ setInnerValue: setInnerValue,
122
+ inputValue: inputValue,
123
+ setInputValue: setInputValue,
124
+ focused: focused,
125
+ setFocused: setFocused,
126
+ handleSelect: handleSelect,
127
+ handleReset: handleReset,
128
+ handleApply: handleApply
129
+ }, props)) : /*#__PURE__*/ _jsx(DatePickerPopover, _object_spread({
130
+ innerValue: innerValue,
131
+ setInnerValue: setInnerValue,
132
+ inputValue: inputValue,
133
+ setInputValue: setInputValue,
134
+ focused: focused,
135
+ setFocused: setFocused,
136
+ handleSelect: handleSelect,
137
+ handleReset: handleReset,
138
+ handleApply: handleApply
139
+ }, props));
71
140
  };
72
141
  export default DatePicker;
73
- const formatPlaceholderBy = (isRange) => {
74
- return isRange
75
- ? `${DATE_INPUT_FORMAT} - ${DATE_INPUT_FORMAT}`
76
- : DATE_INPUT_FORMAT;
77
- };
78
- const formatInputBy = (value, isRange) => {
79
- return Array.isArray(value)
80
- ? `${format(value[0])} - ${format(value[1])}`
81
- : value
82
- ? format(value)
83
- : formatPlaceholderBy(isRange);
84
- };
85
- //# sourceMappingURL=DatePicker.js.map