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