@driveflux/beam 3.0.18 → 3.0.19

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 (219) hide show
  1. package/dist/accordion/Accordion.js +7 -203
  2. package/dist/accordion/Accordion.stories.js +11 -31
  3. package/dist/alert/Alert.js +19 -193
  4. package/dist/alert/Alert.stories.js +15 -50
  5. package/dist/animations/LoadingAnimation.js +21 -34
  6. package/dist/badge/Badge.js +7 -105
  7. package/dist/badge/Badge.stories.js +7 -28
  8. package/dist/box/Box.js +3 -151
  9. package/dist/box/Box.stories.js +7 -8
  10. package/dist/breadcrumbs/Breadcrumbs.js +26 -351
  11. package/dist/breadcrumbs/Breadcrumbs.stories.js +27 -51
  12. package/dist/button/Button.js +12 -190
  13. package/dist/button/Button.stories.js +7 -35
  14. package/dist/button/TextButton.js +9 -168
  15. package/dist/card/Card.js +7 -188
  16. package/dist/card/Card.stories.js +7 -10
  17. package/dist/carousel/Carousel.js +58 -308
  18. package/dist/carousel/Carousel.stories.js +7 -39
  19. package/dist/carousel/CarouselButton.js +7 -132
  20. package/dist/center/Center.js +3 -127
  21. package/dist/center/Center.stories.js +7 -19
  22. package/dist/checkbox/Checkbox.js +4 -188
  23. package/dist/checkbox/Checkbox.stories.js +8 -10
  24. package/dist/chip/Chip.js +3 -168
  25. package/dist/chip/Chip.stories.js +7 -19
  26. package/dist/circular-progress/CircularProgress.js +11 -159
  27. package/dist/circular-progress/CircularProgress.stories.js +14 -54
  28. package/dist/command/command.js +13 -249
  29. package/dist/datepicker/DatePicker.js +90 -245
  30. package/dist/datepicker/DatePicker.stories.js +58 -162
  31. package/dist/datepicker/DatePickerDrawer.js +17 -115
  32. package/dist/datepicker/DatePickerPopover.js +35 -208
  33. package/dist/datepicker/constants.js +4 -3
  34. package/dist/datepicker/utils.js +11 -4
  35. package/dist/dialog/index.js +12 -253
  36. package/dist/divider/Divider.js +3 -127
  37. package/dist/divider/Divider.stories.js +7 -13
  38. package/dist/drawer/index.js +12 -230
  39. package/dist/dropdown/Dropdown.js +26 -297
  40. package/dist/dropdown/Dropdown.stories.js +22 -109
  41. package/dist/field-wrapper/FieldWrapper.js +3 -203
  42. package/dist/field-wrapper/FieldWrapper.stories.js +28 -124
  43. package/dist/flex/Flex.js +3 -127
  44. package/dist/flex/Flex.stories.js +7 -19
  45. package/dist/grid/Grid.js +3 -127
  46. package/dist/grid/Grid.stories.js +7 -28
  47. package/dist/hooks/use-breakpoint-value.js +14 -77
  48. package/dist/hooks/use-media-query.js +12 -61
  49. package/dist/hstack/HStack.js +3 -127
  50. package/dist/hstack/HStack.stories.js +7 -19
  51. package/dist/icons/FluxLogo.js +9 -222
  52. package/dist/icons/FluxLogoTable.js +5 -118
  53. package/dist/icons/Icon.js +7 -117
  54. package/dist/icons/Icon.stories.js +7 -12
  55. package/dist/icons/Icon24Hours.js +5 -92
  56. package/dist/icons/IconAcceleration.js +4 -81
  57. package/dist/icons/IconAccount.js +4 -81
  58. package/dist/icons/IconApplicant.js +5 -87
  59. package/dist/icons/IconArrow.js +6 -87
  60. package/dist/icons/IconArrowBack.js +4 -81
  61. package/dist/icons/IconArrowForward.js +4 -81
  62. package/dist/icons/IconArrowTopLeft.js +4 -79
  63. package/dist/icons/IconBluesharkProductGuide.js +5 -89
  64. package/dist/icons/IconBolt.js +4 -81
  65. package/dist/icons/IconBriefcase.js +4 -81
  66. package/dist/icons/IconBulb.js +4 -81
  67. package/dist/icons/IconCalendar.js +4 -81
  68. package/dist/icons/IconCalendarArrowBack.js +4 -81
  69. package/dist/icons/IconCalendarArrowForward.js +4 -81
  70. package/dist/icons/IconCalendarDoubleArrowBack.js +4 -81
  71. package/dist/icons/IconCalendarDoubleArrowForward.js +4 -81
  72. package/dist/icons/IconCancel.js +5 -86
  73. package/dist/icons/IconCancelMark.js +4 -81
  74. package/dist/icons/IconCarSUV.js +4 -81
  75. package/dist/icons/IconCarSedan.js +7 -156
  76. package/dist/icons/IconChain.js +5 -88
  77. package/dist/icons/IconCheckmark.js +4 -81
  78. package/dist/icons/IconChevronRight.js +4 -81
  79. package/dist/icons/IconCircle.js +11 -123
  80. package/dist/icons/IconCircleCheckmark.js +5 -86
  81. package/dist/icons/IconCircleError.js +4 -81
  82. package/dist/icons/IconCircleExclamation.js +6 -113
  83. package/dist/icons/IconCircleMark.js +5 -87
  84. package/dist/icons/IconCircleOutline.js +5 -148
  85. package/dist/icons/IconClock.js +5 -89
  86. package/dist/icons/IconClose.js +4 -81
  87. package/dist/icons/IconCollapseAll.js +5 -103
  88. package/dist/icons/IconConcierge.js +5 -88
  89. package/dist/icons/IconConciergeService.js +5 -96
  90. package/dist/icons/IconCreditCard.js +5 -87
  91. package/dist/icons/IconDash.js +4 -81
  92. package/dist/icons/IconDeliver.js +4 -81
  93. package/dist/icons/IconDelivery.js +5 -96
  94. package/dist/icons/IconDetails.js +4 -81
  95. package/dist/icons/IconDot.js +6 -96
  96. package/dist/icons/IconDownload.js +5 -88
  97. package/dist/icons/IconEVCharging.js +5 -88
  98. package/dist/icons/IconElectricCarFuel.js +5 -89
  99. package/dist/icons/IconEllipsis.js +5 -87
  100. package/dist/icons/IconEnvelope.js +4 -81
  101. package/dist/icons/IconExpandAll.js +5 -103
  102. package/dist/icons/IconEye.js +5 -88
  103. package/dist/icons/IconFacebook.js +6 -103
  104. package/dist/icons/IconFilter.js +5 -92
  105. package/dist/icons/IconFlagMalaysia.js +5 -150
  106. package/dist/icons/IconGiveKey.js +5 -88
  107. package/dist/icons/IconGlobe.js +4 -79
  108. package/dist/icons/IconGoogle.js +5 -96
  109. package/dist/icons/IconHome.js +5 -87
  110. package/dist/icons/IconHostAdvertise.js +4 -81
  111. package/dist/icons/IconHostCar.js +4 -84
  112. package/dist/icons/IconHostCash.js +5 -100
  113. package/dist/icons/IconHostHandle.js +4 -79
  114. package/dist/icons/IconHostLocation.js +4 -79
  115. package/dist/icons/IconHostPayment.js +5 -100
  116. package/dist/icons/IconHostService.js +5 -88
  117. package/dist/icons/IconHotDeals.js +4 -81
  118. package/dist/icons/IconInfo.js +5 -86
  119. package/dist/icons/IconInstagram.js +4 -81
  120. package/dist/icons/IconInsurance.js +5 -108
  121. package/dist/icons/IconInternet.js +4 -82
  122. package/dist/icons/IconInventory.js +5 -87
  123. package/dist/icons/IconLaurel.js +5 -110
  124. package/dist/icons/IconLinkedIn.js +4 -81
  125. package/dist/icons/IconLoading.js +4 -87
  126. package/dist/icons/IconLocation.js +5 -89
  127. package/dist/icons/IconLock.js +4 -82
  128. package/dist/icons/IconLogistics.js +4 -81
  129. package/dist/icons/IconMail.js +5 -103
  130. package/dist/icons/IconMember.js +5 -87
  131. package/dist/icons/IconMobilePen.js +5 -92
  132. package/dist/icons/IconMotorcycleMoped.js +5 -87
  133. package/dist/icons/IconNoCost.js +5 -101
  134. package/dist/icons/IconPDF.js +5 -89
  135. package/dist/icons/IconPencil.js +4 -79
  136. package/dist/icons/IconPhone.js +4 -79
  137. package/dist/icons/IconPlus.js +4 -81
  138. package/dist/icons/IconPricing.js +4 -81
  139. package/dist/icons/IconProtected.js +4 -80
  140. package/dist/icons/IconPsychology.js +4 -81
  141. package/dist/icons/IconQuestionTooltip.js +4 -137
  142. package/dist/icons/IconQuote.js +4 -81
  143. package/dist/icons/IconRate.js +4 -80
  144. package/dist/icons/IconRegister.js +5 -108
  145. package/dist/icons/IconReport.js +6 -98
  146. package/dist/icons/IconReturn.js +4 -81
  147. package/dist/icons/IconSearch.js +4 -79
  148. package/dist/icons/IconSecure.js +4 -80
  149. package/dist/icons/IconSecurity.js +4 -82
  150. package/dist/icons/IconSedanOutline.js +5 -168
  151. package/dist/icons/IconSelectArrow.js +6 -87
  152. package/dist/icons/IconSort.js +5 -88
  153. package/dist/icons/IconSortListed.js +5 -104
  154. package/dist/icons/IconSortPriceAscending.js +5 -92
  155. package/dist/icons/IconSortPriceDescending.js +5 -92
  156. package/dist/icons/IconSortYear.js +5 -88
  157. package/dist/icons/IconSpan.js +4 -80
  158. package/dist/icons/IconSpeaker.js +4 -88
  159. package/dist/icons/IconSpecialCar.js +5 -104
  160. package/dist/icons/IconStar.js +7 -101
  161. package/dist/icons/IconStockPhoto.js +5 -104
  162. package/dist/icons/IconSubscription.js +6 -122
  163. package/dist/icons/IconSubscriptions.js +6 -122
  164. package/dist/icons/IconSwap.js +5 -88
  165. package/dist/icons/IconTax.js +4 -81
  166. package/dist/icons/IconThinArrow.js +6 -87
  167. package/dist/icons/IconThumbsdown.js +5 -87
  168. package/dist/icons/IconThumbsup.js +5 -87
  169. package/dist/icons/IconTool.js +4 -81
  170. package/dist/icons/IconTooltip.js +4 -137
  171. package/dist/icons/IconTrash.js +4 -81
  172. package/dist/icons/IconTriangleExclamation.js +4 -81
  173. package/dist/icons/IconTyersBrakes.js +5 -92
  174. package/dist/icons/IconTyre.js +5 -92
  175. package/dist/icons/IconVacancy.js +5 -87
  176. package/dist/icons/IconVolunteer.js +4 -81
  177. package/dist/icons/IconWhatsapp.js +4 -82
  178. package/dist/icons/IconXPlatform.js +4 -81
  179. package/dist/icons/IconZeroEffort.js +5 -86
  180. package/dist/icons/Logo.js +3 -108
  181. package/dist/input/Input.js +11 -134
  182. package/dist/input/Input.stories.js +18 -17
  183. package/dist/input-mask/InputMask.js +11 -158
  184. package/dist/input-mask/InputMask.stories.js +6 -5
  185. package/dist/input-mask/mask-trackers.js +5 -4
  186. package/dist/input-select/InputSelect.js +68 -390
  187. package/dist/input-select/InputSelect.stories.js +25 -98
  188. package/dist/popover/popover.js +4 -136
  189. package/dist/progress/Progress.js +2 -160
  190. package/dist/progress/Progress.stories.js +14 -13
  191. package/dist/radio/Radio.js +4 -227
  192. package/dist/scroll-area/scroll-area.js +5 -180
  193. package/dist/search-input-select/SearchInputSelect.js +69 -379
  194. package/dist/select/Select.js +29 -354
  195. package/dist/select/Select.stories.js +19 -55
  196. package/dist/skeleton/Skeleton.js +3 -71
  197. package/dist/skeleton/Skeleton.stories.js +7 -8
  198. package/dist/slider/Slider.js +5 -170
  199. package/dist/slider/Slider.stories.js +11 -12
  200. package/dist/stack/Stack.js +3 -127
  201. package/dist/stack/Stack.stories.js +7 -19
  202. package/dist/table/Table.js +10 -216
  203. package/dist/table/Table.stories.js +8 -84
  204. package/dist/tabs/Tabs.js +9 -198
  205. package/dist/tabs/Tabs.stories.js +13 -46
  206. package/dist/text/Text.js +6 -152
  207. package/dist/text/Text.stories.js +7 -44
  208. package/dist/toast/Toast.stories.js +14 -66
  209. package/dist/toast/ToastBox.js +29 -77
  210. package/dist/toast/index.js +1 -0
  211. package/dist/toast/sonner.js +6 -66
  212. package/dist/toggle/Toggle.js +7 -180
  213. package/dist/toggle/Toggle.stories.js +8 -10
  214. package/dist/tooltip/Tooltip.js +12 -169
  215. package/dist/tooltip/Tooltip.stories.js +13 -71
  216. package/dist/utils.js +2 -4
  217. package/dist/vstack/VStack.js +3 -127
  218. package/dist/vstack/VStack.stories.js +7 -19
  219. package/package.json +16 -16
@@ -1,144 +1,4 @@
1
1
  'use client';
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(iter) {
24
- if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter);
25
- }
26
- function _iterable_to_array_limit(arr, i) {
27
- var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"];
28
- if (_i == null) return;
29
- var _arr = [];
30
- var _n = true;
31
- var _d = false;
32
- var _s, _e;
33
- try {
34
- for(_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true){
35
- _arr.push(_s.value);
36
- if (i && _arr.length === i) break;
37
- }
38
- } catch (err) {
39
- _d = true;
40
- _e = err;
41
- } finally{
42
- try {
43
- if (!_n && _i["return"] != null) _i["return"]();
44
- } finally{
45
- if (_d) throw _e;
46
- }
47
- }
48
- return _arr;
49
- }
50
- function _non_iterable_rest() {
51
- throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
52
- }
53
- function _object_spread(target) {
54
- for(var i = 1; i < arguments.length; i++){
55
- var source = arguments[i] != null ? arguments[i] : {};
56
- var ownKeys = Object.keys(source);
57
- if (typeof Object.getOwnPropertySymbols === "function") {
58
- ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function(sym) {
59
- return Object.getOwnPropertyDescriptor(source, sym).enumerable;
60
- }));
61
- }
62
- ownKeys.forEach(function(key) {
63
- _define_property(target, key, source[key]);
64
- });
65
- }
66
- return target;
67
- }
68
- function ownKeys(object, enumerableOnly) {
69
- var keys = Object.keys(object);
70
- if (Object.getOwnPropertySymbols) {
71
- var symbols = Object.getOwnPropertySymbols(object);
72
- if (enumerableOnly) {
73
- symbols = symbols.filter(function(sym) {
74
- return Object.getOwnPropertyDescriptor(object, sym).enumerable;
75
- });
76
- }
77
- keys.push.apply(keys, symbols);
78
- }
79
- return keys;
80
- }
81
- function _object_spread_props(target, source) {
82
- source = source != null ? source : {};
83
- if (Object.getOwnPropertyDescriptors) {
84
- Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));
85
- } else {
86
- ownKeys(Object(source)).forEach(function(key) {
87
- Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));
88
- });
89
- }
90
- return target;
91
- }
92
- function _object_without_properties(source, excluded) {
93
- if (source == null) return {};
94
- var target = {}, sourceKeys, key, i;
95
- if (typeof Reflect !== "undefined" && Reflect.ownKeys) {
96
- sourceKeys = Reflect.ownKeys(Object(source));
97
- for(i = 0; i < sourceKeys.length; i++){
98
- key = sourceKeys[i];
99
- if (excluded.indexOf(key) >= 0) continue;
100
- if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue;
101
- target[key] = source[key];
102
- }
103
- return target;
104
- }
105
- target = _object_without_properties_loose(source, excluded);
106
- if (Object.getOwnPropertySymbols) {
107
- sourceKeys = Object.getOwnPropertySymbols(source);
108
- for(i = 0; i < sourceKeys.length; i++){
109
- key = sourceKeys[i];
110
- if (excluded.indexOf(key) >= 0) continue;
111
- if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue;
112
- target[key] = source[key];
113
- }
114
- }
115
- return target;
116
- }
117
- function _object_without_properties_loose(source, excluded) {
118
- if (source == null) return {};
119
- var target = {}, sourceKeys = Object.getOwnPropertyNames(source), key, i;
120
- for(i = 0; i < sourceKeys.length; i++){
121
- key = sourceKeys[i];
122
- if (excluded.indexOf(key) >= 0) continue;
123
- if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue;
124
- target[key] = source[key];
125
- }
126
- return target;
127
- }
128
- function _sliced_to_array(arr, i) {
129
- return _array_with_holes(arr) || _iterable_to_array_limit(arr, i) || _unsupported_iterable_to_array(arr, i) || _non_iterable_rest();
130
- }
131
- function _to_array(arr) {
132
- return _array_with_holes(arr) || _iterable_to_array(arr) || _unsupported_iterable_to_array(arr) || _non_iterable_rest();
133
- }
134
- function _unsupported_iterable_to_array(o, minLen) {
135
- if (!o) return;
136
- if (typeof o === "string") return _array_like_to_array(o, minLen);
137
- var n = Object.prototype.toString.call(o).slice(8, -1);
138
- if (n === "Object" && o.constructor) n = o.constructor.name;
139
- if (n === "Map" || n === "Set") return Array.from(n);
140
- if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array(o, minLen);
141
- }
142
2
  import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
143
3
  import { Command as CommandPrimitive } from 'cmdk';
144
4
  import * as React from 'react';
@@ -147,74 +7,29 @@ import Box from '../box/Box';
147
7
  import FieldWrapper from '../field-wrapper/FieldWrapper';
148
8
  import IconSearch from '../icons/IconSearch';
149
9
  import { cn } from '../utils';
150
- var Command = /*#__PURE__*/ React.forwardRef(function(_0, _1) {
151
- var _ref = [
152
- _0,
153
- _1
154
- ], _ref1 = _to_array(_ref), _ref2 = _ref1[0], _rest = _ref1.slice(1), className = _ref2.className, props = _object_without_properties(_ref2, [
155
- "className"
156
- ]), _rest1 = _sliced_to_array(_rest, 1), ref = _rest1[0];
157
- return /*#__PURE__*/ _jsx(CommandPrimitive, _object_spread({
158
- ref: ref,
159
- className: cn('flex relative w-full', className)
160
- }, props));
161
- });
10
+ const Command = React.forwardRef(({ className, ...props }, ref) => (_jsx(CommandPrimitive, { ref: ref, className: cn('flex relative w-full', className), ...props })));
162
11
  Command.displayName = CommandPrimitive.displayName;
163
- var CommandInput = /*#__PURE__*/ React.forwardRef(function(_0, _1) {
164
- var _ref = [
165
- _0,
166
- _1
167
- ], _ref1 = _to_array(_ref), _ref2 = _ref1[0], _rest = _ref1.slice(1), className = _ref2.className, error = _ref2.error, prefix = _ref2.prefix, isFocused = _ref2.isFocused, isSelected = _ref2.isSelected, handleToggle = _ref2.handleToggle, handleClear = _ref2.handleClear, props = _object_without_properties(_ref2, [
168
- "className",
169
- "error",
170
- "prefix",
171
- "isFocused",
172
- "isSelected",
173
- "handleToggle",
174
- "handleClear"
175
- ]), _rest1 = _sliced_to_array(_rest, 1), ref = _rest1[0];
176
- return /*#__PURE__*/ _jsxs("div", {
177
- ref: ref,
178
- className: cn('flex items-center h-12 w-full border border-primary2 bg-white text-sm cursor-pointer outline-hidden file:border-0 file:bg-transparent file:text-sm file:font-medium hover:border-black focus-within:border-black focus-within:outline-hidden disabled:cursor-not-allowed disabled:opacity-50', error && 'border-alert4 hover:border-alert4 focus-within:border-alert4', className),
179
- children: [
180
- prefix,
181
- /*#__PURE__*/ _jsx(IconSearch, {
182
- className: "text-primary3 m-2",
183
- size: '20px',
184
- title: "Search"
185
- }),
186
- /*#__PURE__*/ _jsx(CommandPrimitive.Input, _object_spread_props(_object_spread({
187
- className: cn('border-none h-full w-full px-3 outline-hidden text-ellipsis placeholder:text-primary2 placeholder:tracking-wide cursor-pointer')
188
- }, props), {
189
- onClick: function onClick(_e) {
190
- if (isSelected) {
191
- isFocused = true;
192
- } else if (!isFocused) {
193
- handleToggle();
194
- }
12
+ const CommandInput = React.forwardRef(({ className, error, prefix, isFocused, isSelected, handleToggle, handleClear, ...props }, ref) => (_jsxs("div", { ref: ref, className: cn('flex items-center h-12 w-full border border-primary2 bg-white text-sm cursor-pointer outline-hidden file:border-0 file:bg-transparent file:text-sm file:font-medium hover:border-black focus-within:border-black focus-within:outline-hidden disabled:cursor-not-allowed disabled:opacity-50', error && 'border-alert4 hover:border-alert4 focus-within:border-alert4', className), children: [prefix, _jsx(IconSearch, { className: "text-primary3 m-2", size: '20px', title: "Search" }), _jsx(CommandPrimitive.Input, { className: cn('border-none h-full w-full px-3 outline-hidden text-ellipsis placeholder:text-primary2 placeholder:tracking-wide cursor-pointer'), ...props, onClick: (_e) => {
13
+ if (isSelected) {
14
+ isFocused = true;
195
15
  }
196
- }))
197
- ]
198
- });
199
- });
16
+ else if (!isFocused) {
17
+ handleToggle();
18
+ }
19
+ } })] })));
200
20
  CommandInput.displayName = CommandPrimitive.Input.displayName;
201
- var CommandList = /*#__PURE__*/ React.forwardRef(function(_0, _1) {
202
- var _ref = [
203
- _0,
204
- _1
205
- ], _ref1 = _to_array(_ref), _ref2 = _ref1[0], _rest = _ref1.slice(1), className = _ref2.className, props = _object_without_properties(_ref2, [
206
- "className"
207
- ]), _rest1 = _sliced_to_array(_rest, 1), ref = _rest1[0];
208
- var _React_useState = _sliced_to_array(React.useState('bottom'), 2), position = _React_useState[0], setPosition = _React_useState[1];
209
- useEffect(function() {
210
- var handlePosition = function handlePosition() {
21
+ const CommandList = React.forwardRef(({ className, ...props }, ref) => {
22
+ const [position, setPosition] = React.useState('bottom');
23
+ useEffect(() => {
24
+ const handlePosition = () => {
211
25
  if (ref && 'current' in ref && ref.current) {
212
- var rect = ref.current.getBoundingClientRect();
213
- var spaceBelow = window.innerHeight - rect.bottom;
214
- var spaceAbove = rect.top;
26
+ const rect = ref.current.getBoundingClientRect();
27
+ const spaceBelow = window.innerHeight - rect.bottom;
28
+ const spaceAbove = rect.top;
215
29
  if (spaceBelow < 200 && spaceAbove > spaceBelow) {
216
30
  setPosition('top');
217
- } else {
31
+ }
32
+ else {
218
33
  setPosition('bottom');
219
34
  }
220
35
  }
@@ -222,226 +37,101 @@ var CommandList = /*#__PURE__*/ React.forwardRef(function(_0, _1) {
222
37
  handlePosition();
223
38
  window.addEventListener('resize', handlePosition);
224
39
  window.addEventListener('scroll', handlePosition);
225
- return function() {
40
+ return () => {
226
41
  window.removeEventListener('resize', handlePosition);
227
42
  window.removeEventListener('scroll', handlePosition);
228
43
  };
229
- }, [
230
- ref
231
- ]);
232
- return /*#__PURE__*/ _jsx(CommandPrimitive.List, _object_spread({
233
- ref: ref,
234
- className: cn('max-h-80 absolute left-0 right-0 mt-1 shadow-md overflow-y-auto overflow-x-hidden z-10 bg-white', position === 'top' ? 'bottom-full mb-1' : 'top-full mt-1', className)
235
- }, props));
44
+ }, [ref]);
45
+ return (_jsx(CommandPrimitive.List, { ref: ref, className: cn('max-h-80 absolute left-0 right-0 mt-1 shadow-md overflow-y-auto overflow-x-hidden z-10 bg-white', position === 'top' ? 'bottom-full mb-1' : 'top-full mt-1', className), ...props }));
236
46
  });
237
47
  CommandList.displayName = CommandPrimitive.List.displayName;
238
- var CommandEmpty = /*#__PURE__*/ React.forwardRef(function(props, ref) {
239
- return /*#__PURE__*/ _jsx(CommandPrimitive.Empty, _object_spread({
240
- ref: ref,
241
- className: "p-4 text-center text-sm text-primary3"
242
- }, props));
243
- });
48
+ const CommandEmpty = React.forwardRef((props, ref) => (_jsx(CommandPrimitive.Empty, { ref: ref, className: "p-4 text-center text-sm text-primary3", ...props })));
244
49
  CommandEmpty.displayName = CommandPrimitive.Empty.displayName;
245
- var CommandGroup = /*#__PURE__*/ React.forwardRef(function(_0, _1) {
246
- var _ref = [
247
- _0,
248
- _1
249
- ], _ref1 = _to_array(_ref), _ref2 = _ref1[0], _rest = _ref1.slice(1), className = _ref2.className, props = _object_without_properties(_ref2, [
250
- "className"
251
- ]), _rest1 = _sliced_to_array(_rest, 1), ref = _rest1[0];
252
- return /*#__PURE__*/ _jsx(CommandPrimitive.Group, _object_spread({
253
- ref: ref,
254
- 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)
255
- }, props));
256
- });
50
+ 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 })));
257
51
  CommandGroup.displayName = CommandPrimitive.Group.displayName;
258
- var CommandSeparator = /*#__PURE__*/ React.forwardRef(function(_0, _1) {
259
- var _ref = [
260
- _0,
261
- _1
262
- ], _ref1 = _to_array(_ref), _ref2 = _ref1[0], _rest = _ref1.slice(1), className = _ref2.className, props = _object_without_properties(_ref2, [
263
- "className"
264
- ]), _rest1 = _sliced_to_array(_rest, 1), ref = _rest1[0];
265
- return /*#__PURE__*/ _jsx(CommandPrimitive.Separator, _object_spread({
266
- ref: ref,
267
- className: cn('-mx-1 h-px bg-zinc-200 dark:bg-zinc-800', className)
268
- }, props));
269
- });
52
+ 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 })));
270
53
  CommandSeparator.displayName = CommandPrimitive.Separator.displayName;
271
- var CommandItem = /*#__PURE__*/ React.forwardRef(function(_0, _1) {
272
- var _ref = [
273
- _0,
274
- _1
275
- ], _ref1 = _to_array(_ref), _ref2 = _ref1[0], _rest = _ref1.slice(1), className = _ref2.className, props = _object_without_properties(_ref2, [
276
- "className"
277
- ]), _rest1 = _sliced_to_array(_rest, 1), ref = _rest1[0];
278
- return /*#__PURE__*/ _jsx(CommandPrimitive.Item, _object_spread({
279
- ref: ref,
280
- className: cn('relative flex cursor-pointer select-none items-center rounded-xs px-4 h-10 text-sm outline-hidden data-[disabled=true]:pointer-events-none data-[disabled=true]:bg-primary1 data-[disabled=true]:text-primary2 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)
281
- }, props));
282
- });
54
+ const CommandItem = React.forwardRef(({ className, ...props }, ref) => (_jsx(CommandPrimitive.Item, { ref: ref, className: cn('relative flex cursor-pointer select-none items-center rounded-xs px-4 h-10 text-sm outline-hidden data-[disabled=true]:pointer-events-none data-[disabled=true]:bg-primary1 data-[disabled=true]:text-primary2 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 })));
283
55
  CommandItem.displayName = CommandPrimitive.Item.displayName;
284
- var CommandShortcut = function CommandShortcut(_0) {
285
- var className = _0.className, props = _object_without_properties(_0, [
286
- "className"
287
- ]);
288
- return /*#__PURE__*/ _jsx("span", _object_spread({
289
- className: cn('ml-auto text-xs tracking-widest text-zinc-500 dark:text-zinc-400', className)
290
- }, props));
56
+ const CommandShortcut = ({ className, ...props }) => {
57
+ return (_jsx("span", { className: cn('ml-auto text-xs tracking-widest text-zinc-500 dark:text-zinc-400', className), ...props }));
291
58
  };
292
59
  CommandShortcut.displayName = 'CommandShortcut';
293
- var SearchInputSelect = /*#__PURE__*/ React.forwardRef(function(props, _ref) {
294
- var _options_find;
295
- var // for wrapper
296
- wrapperProps = props.wrapperProps, htmlFor = props.htmlFor, label = props.label, showRequired = props.showRequired, showOptional = props.showOptional, outerPrefix = props.outerPrefix, outerSuffix = props.outerSuffix, error = props.error, // for Select-input-search
297
- providedValue = props.value, placeholder = props.placeholder, prefix = props.prefix, options = props.options, noOptionsText = props.noOptionsText, onChange = props.onChange, _props_isClearable = props.isClearable, isClearable = _props_isClearable === void 0 ? true : _props_isClearable, children = props.children, selectProps = _object_without_properties(props, [
298
- "wrapperProps",
299
- "htmlFor",
300
- "label",
301
- "showRequired",
302
- "showOptional",
303
- "outerPrefix",
304
- "outerSuffix",
305
- "error",
306
- "value",
307
- "placeholder",
308
- "prefix",
309
- "options",
310
- "noOptionsText",
311
- "onChange",
312
- "isClearable",
313
- "children"
314
- ]);
315
- var _React_useState = _sliced_to_array(React.useState(false), 2), isFocused = _React_useState[0], setIsFocused = _React_useState[1];
316
- var _React_useState1 = _sliced_to_array(React.useState(''), 2), search = _React_useState1[0], setSearch = _React_useState1[1];
317
- var _React_useState2 = _sliced_to_array(React.useState(providedValue), 2), value = _React_useState2[0], setValue = _React_useState2[1];
318
- var _React_useState3 = _sliced_to_array(React.useState(false), 2), showAll = _React_useState3[0], setShowAll = _React_useState3[1];
319
- var inputRef = React.useRef(null);
320
- var listRef = React.useRef(null);
321
- var wrapperRef = React.useRef(null);
322
- var filteredOptions = React.useMemo(function() {
323
- return options.filter(function(option) {
324
- return typeof option.label === 'string' && option.label.toLowerCase().includes(search.toLowerCase());
325
- });
326
- }, [
327
- search,
328
- options
329
- ]);
330
- var displayedOptions = showAll ? filteredOptions : filteredOptions.slice(0, 5);
331
- var handleFocus = function handleFocus() {
60
+ const SearchInputSelect = React.forwardRef((props, _ref) => {
61
+ const {
62
+ // for wrapper
63
+ wrapperProps, htmlFor, label, showRequired, showOptional, outerPrefix, outerSuffix, error,
64
+ // for Select-input-search
65
+ value: providedValue, placeholder, prefix, options, noOptionsText, onChange, isClearable = true, children, ...selectProps } = props;
66
+ const [isFocused, setIsFocused] = React.useState(false);
67
+ const [search, setSearch] = React.useState('');
68
+ const [value, setValue] = React.useState(providedValue);
69
+ const [showAll, setShowAll] = React.useState(false);
70
+ const inputRef = React.useRef(null);
71
+ const listRef = React.useRef(null);
72
+ const wrapperRef = React.useRef(null);
73
+ const filteredOptions = React.useMemo(() => {
74
+ return options.filter((option) => typeof option.label === 'string' &&
75
+ option.label.toLowerCase().includes(search.toLowerCase()));
76
+ }, [search, options]);
77
+ const displayedOptions = showAll
78
+ ? filteredOptions
79
+ : filteredOptions.slice(0, 5);
80
+ const handleFocus = () => {
332
81
  setIsFocused(true);
333
82
  };
334
- var handleBlur = function handleBlur(e) {
83
+ const handleBlur = (e) => {
335
84
  if (e.relatedTarget === null) {
336
- var _inputRef_current;
337
85
  setIsFocused(false);
338
- (_inputRef_current = inputRef.current) === null || _inputRef_current === void 0 ? void 0 : _inputRef_current.blur();
86
+ inputRef.current?.blur();
339
87
  }
340
88
  };
341
- var handleChange = function handleChange(value) {
89
+ const handleChange = (value) => {
342
90
  setSearch(value);
343
91
  };
344
- var handleSelect = function handleSelect(option) {
345
- var _inputRef_current;
92
+ const handleSelect = (option) => {
346
93
  setSearch(option.label);
347
- onChange === null || onChange === void 0 ? void 0 : onChange(option.value);
94
+ onChange?.(option.value);
348
95
  setValue(option.value);
349
96
  setIsFocused(false);
350
- (_inputRef_current = inputRef.current) === null || _inputRef_current === void 0 ? void 0 : _inputRef_current.focus();
97
+ inputRef.current?.focus();
351
98
  };
352
- var handleToggle = function handleToggle() {
353
- setIsFocused(function(isFocused) {
354
- var _inputRef_current;
355
- isFocused && ((_inputRef_current = inputRef.current) === null || _inputRef_current === void 0 ? void 0 : _inputRef_current.blur());
99
+ const handleToggle = () => {
100
+ setIsFocused((isFocused) => {
101
+ isFocused && inputRef.current?.blur();
356
102
  return !isFocused;
357
103
  });
358
104
  };
359
- var handleClear = function handleClear(event) {
105
+ const handleClear = (event) => {
360
106
  event.preventDefault();
361
107
  event.stopPropagation();
362
108
  setSearch('');
363
109
  setIsFocused(false);
364
- onChange === null || onChange === void 0 ? void 0 : onChange(undefined);
110
+ onChange?.(undefined);
365
111
  setValue(undefined);
366
112
  };
367
- var handleClickOutside = function handleClickOutside(event) {
368
- if (wrapperRef.current && !wrapperRef.current.contains(event.target)) {
113
+ const handleClickOutside = (event) => {
114
+ if (wrapperRef.current &&
115
+ !wrapperRef.current.contains(event.target)) {
369
116
  setIsFocused(false);
370
117
  }
371
118
  };
372
- var handleShowAll = function handleShowAll() {
373
- setShowAll(function(prev) {
374
- return !prev;
375
- });
119
+ const handleShowAll = () => {
120
+ setShowAll((prev) => !prev);
376
121
  if (filteredOptions.length > 5) {
377
122
  setShowAll(true);
378
123
  }
379
124
  };
380
125
  // biome-ignore lint/correctness/useExhaustiveDependencies: <explanation>
381
- React.useEffect(function() {
126
+ React.useEffect(() => {
382
127
  document.addEventListener('mousedown', handleClickOutside);
383
- return function() {
128
+ return () => {
384
129
  document.removeEventListener('mousedown', handleClickOutside);
385
130
  };
386
131
  }, []);
387
- return /*#__PURE__*/ _jsx(FieldWrapper, _object_spread_props(_object_spread({
388
- htmlFor: htmlFor,
389
- label: label,
390
- showOptional: showOptional,
391
- showRequired: showRequired,
392
- error: error
393
- }, wrapperProps), {
394
- children: /*#__PURE__*/ _jsx("div", {
395
- ref: wrapperRef,
396
- className: "relative w-full",
397
- children: /*#__PURE__*/ _jsxs(Command, {
398
- shouldFilter: false,
399
- onFocus: handleFocus,
400
- onBlur: handleBlur,
401
- children: [
402
- /*#__PURE__*/ _jsx(CommandInput, _object_spread_props(_object_spread({}, selectProps), {
403
- ref: inputRef,
404
- placeholder: placeholder,
405
- value: isFocused ? search : ((_options_find = options.find(function(option) {
406
- return option.value === value;
407
- })) === null || _options_find === void 0 ? void 0 : _options_find.label) || '',
408
- isFocused: isFocused,
409
- isSelected: !!value,
410
- onValueChange: handleChange,
411
- handleToggle: handleToggle,
412
- handleClear: handleClear
413
- })),
414
- /*#__PURE__*/ _jsx(CommandList, {
415
- ref: listRef,
416
- children: isFocused && !value && /*#__PURE__*/ _jsxs(_Fragment, {
417
- children: [
418
- displayedOptions.length > 0 ? displayedOptions.map(function(option) {
419
- return /*#__PURE__*/ _jsx(CommandItem, {
420
- value: JSON.stringify(option.value),
421
- disabled: option.isDisabled,
422
- onSelect: function onSelect() {
423
- return handleSelect(option);
424
- },
425
- className: "tracking-normal text-primary3 w-full",
426
- children: option.label
427
- }, option.label);
428
- }) : /*#__PURE__*/ _jsx(CommandEmpty, {
429
- children: noOptionsText || 'No options'
430
- }),
431
- filteredOptions.length > 5 && !showAll && /*#__PURE__*/ _jsx(Box, {
432
- className: cn('text-links text-sm font-bold text-center tracking-wide', 'p-2 items-center'),
433
- as: "button",
434
- type: "button",
435
- onClick: handleShowAll,
436
- children: showAll ? 'Show less' : 'Show all results'
437
- }),
438
- children
439
- ]
440
- })
441
- })
442
- ]
443
- })
444
- })
445
- }));
132
+ return (_jsx(FieldWrapper, { htmlFor: htmlFor, label: label, showOptional: showOptional, showRequired: showRequired, error: error, ...wrapperProps, children: _jsx("div", { ref: wrapperRef, className: "relative w-full", children: _jsxs(Command, { shouldFilter: false, onFocus: handleFocus, onBlur: handleBlur, children: [_jsx(CommandInput, { ...selectProps, ref: inputRef, placeholder: placeholder, value: isFocused
133
+ ? search
134
+ : options.find((option) => option.value === value)?.label || '', isFocused: isFocused, isSelected: !!value, onValueChange: handleChange, handleToggle: handleToggle, handleClear: handleClear }), _jsx(CommandList, { ref: listRef, children: isFocused && !value && (_jsxs(_Fragment, { children: [displayedOptions.length > 0 ? (displayedOptions.map((option) => (_jsx(CommandItem, { value: JSON.stringify(option.value), disabled: option.isDisabled, onSelect: () => handleSelect(option), className: "tracking-normal text-primary3 w-full", children: option.label }, option.label)))) : (_jsx(CommandEmpty, { children: noOptionsText || 'No options' })), filteredOptions.length > 5 && !showAll && (_jsx(Box, { className: cn('text-links text-sm font-bold text-center tracking-wide', 'p-2 items-center'), as: "button", type: "button", onClick: handleShowAll, children: showAll ? 'Show less' : 'Show all results' })), children] })) })] }) }) }));
446
135
  });
447
136
  export default SearchInputSelect;
137
+ //# sourceMappingURL=SearchInputSelect.js.map