@opexa/portal-components 0.0.1 → 0.0.2

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/ui.js ADDED
@@ -0,0 +1,1280 @@
1
+ "use strict";
2
+ var __create = Object.create;
3
+ var __defProp = Object.defineProperty;
4
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
+ var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __getProtoOf = Object.getPrototypeOf;
7
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
8
+ var __export = (target, all) => {
9
+ for (var name in all)
10
+ __defProp(target, name, { get: all[name], enumerable: true });
11
+ };
12
+ var __copyProps = (to, from, except, desc) => {
13
+ if (from && typeof from === "object" || typeof from === "function") {
14
+ for (let key of __getOwnPropNames(from))
15
+ if (!__hasOwnProp.call(to, key) && key !== except)
16
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
17
+ }
18
+ return to;
19
+ };
20
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
+ // If the importer is in node compatibility mode or this is not an ESM
22
+ // file that has been converted to a CommonJS file using a Babel-
23
+ // compatible transform (i.e. "__esModule" has not been set), then set
24
+ // "default" to the CommonJS "module.exports" for node compatibility.
25
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
26
+ mod
27
+ ));
28
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
29
+
30
+ // src/lib/ui/index.ts
31
+ var ui_exports = {};
32
+ __export(ui_exports, {
33
+ AlertDialog: () => AlertDialog_exports,
34
+ Avatar: () => Avatar_exports,
35
+ Badge: () => Badge_exports,
36
+ Button: () => Button,
37
+ Checkbox: () => Checkbox_exports,
38
+ Combobox: () => Combobox_exports,
39
+ DatePicker: () => DatePicker_exports,
40
+ Dialog: () => Dialog_exports,
41
+ Drawer: () => Drawer_exports,
42
+ Field: () => Field_exports,
43
+ IconButton: () => IconButton,
44
+ Menu: () => Menu_exports,
45
+ NumberInput: () => NumberInput_exports,
46
+ PinInput: () => PinInput_exports,
47
+ Popover: () => Popover_exports,
48
+ Progress: () => Progress_exports,
49
+ SegmentGroup: () => SegmentGroup_exports,
50
+ Select: () => Select_exports,
51
+ Table: () => Table_exports,
52
+ Tabs: () => Tabs_exports,
53
+ Tooltip: () => Tooltip_exports
54
+ });
55
+ module.exports = __toCommonJS(ui_exports);
56
+
57
+ // src/lib/ui/AlertDialog/AlertDialog.tsx
58
+ var AlertDialog_exports = {};
59
+ __export(AlertDialog_exports, {
60
+ Backdrop: () => Backdrop,
61
+ Body: () => Body,
62
+ CloseTrigger: () => CloseTrigger,
63
+ Content: () => Content,
64
+ Context: () => Context,
65
+ Description: () => Description,
66
+ Footer: () => Footer,
67
+ Header: () => Header,
68
+ Positioner: () => Positioner,
69
+ Root: () => Root,
70
+ Title: () => Title,
71
+ Trigger: () => Trigger
72
+ });
73
+ var import_react2 = require("@ark-ui/react");
74
+
75
+ // src/lib/utils/createRecipeContext.tsx
76
+ var React2 = __toESM(require("react"));
77
+
78
+ // src/lib/utils/createSplitProps.ts
79
+ function splitProps(props, keys) {
80
+ const rest = {};
81
+ const result = {};
82
+ const keySet = new Set(keys);
83
+ for (const key in props) {
84
+ if (keySet.has(key)) {
85
+ result[key] = props[key];
86
+ } else {
87
+ rest[key] = props[key];
88
+ }
89
+ }
90
+ return [result, rest];
91
+ }
92
+ function createSplitProps(keys) {
93
+ return function split(props) {
94
+ return splitProps(props, keys);
95
+ };
96
+ }
97
+
98
+ // src/lib/utils/createRecipeContext.tsx
99
+ function createRecipeContext(recipe) {
100
+ const RecipeContext = React2.createContext(null);
101
+ function useContext2() {
102
+ const context = React2.useContext(RecipeContext);
103
+ return context;
104
+ }
105
+ function withRootProvider5(Component) {
106
+ const StyledComponent = (props) => {
107
+ const [recipeProps, localProps] = createSplitProps(recipe.variantKeys)(props);
108
+ const context = recipe(recipeProps);
109
+ return /* @__PURE__ */ React2.createElement(RecipeContext.Provider, { value: context }, /* @__PURE__ */ React2.createElement(Component, { ...localProps }));
110
+ };
111
+ return StyledComponent;
112
+ }
113
+ function withProvider12(Component, slot) {
114
+ const StyledComponent = (props) => {
115
+ const [recipeProps, localProps] = createSplitProps(recipe.variantKeys)(props);
116
+ const context = recipe(recipeProps);
117
+ const slotName = slot;
118
+ const getStyle = context[slotName];
119
+ const userDefinedClassName = "className" in localProps && typeof localProps.className === "string" ? localProps.className : void 0;
120
+ const className = !getStyle ? userDefinedClassName : getStyle({
121
+ ...recipeProps,
122
+ className: userDefinedClassName
123
+ });
124
+ return /* @__PURE__ */ React2.createElement(RecipeContext.Provider, { value: context }, /* @__PURE__ */ React2.createElement(Component, { ...localProps, className }));
125
+ };
126
+ StyledComponent.displayName = Component.displayName || Component.name;
127
+ return StyledComponent;
128
+ }
129
+ function withContext16(Component, slot) {
130
+ const StyledComponent = (props) => {
131
+ const context = useContext2();
132
+ const [recipeProps, localProps] = createSplitProps(recipe.variantKeys)(props);
133
+ const slotName = slot;
134
+ const getStyle = !context ? recipe(recipeProps)[slotName] : context[slotName];
135
+ const userDefinedClassName = "className" in localProps && typeof localProps.className === "string" ? localProps.className : void 0;
136
+ const className = !getStyle ? userDefinedClassName : getStyle({
137
+ ...recipeProps,
138
+ className: userDefinedClassName
139
+ });
140
+ return /* @__PURE__ */ React2.createElement(Component, { ...localProps, className });
141
+ };
142
+ StyledComponent.displayName = Component.displayName || Component.name;
143
+ return StyledComponent;
144
+ }
145
+ return {
146
+ withRootProvider: withRootProvider5,
147
+ withProvider: withProvider12,
148
+ withContext: withContext16
149
+ };
150
+ }
151
+
152
+ // src/lib/ui/AlertDialog/alertDialog.recipe.ts
153
+ var import_react = require("@ark-ui/react");
154
+ var import_tailwind_variants = require("tailwind-variants");
155
+
156
+ // src/lib/utils/anatomyToRecipeSlots.ts
157
+ function anatomyToRecipeSlots(anatomy4, baseStyles = {}) {
158
+ const styles = anatomy4.keys().reduce((acc, key) => {
159
+ acc[key] = baseStyles[key] ?? "";
160
+ return acc;
161
+ }, {});
162
+ return styles;
163
+ }
164
+
165
+ // src/lib/ui/AlertDialog/alertDialog.recipe.ts
166
+ var anatomy = import_react.dialogAnatomy.extendWith("header", "body", "footer");
167
+ var alertDialogRecipe = (0, import_tailwind_variants.tv)({
168
+ slots: anatomyToRecipeSlots(anatomy, {
169
+ backdrop: "z-backdrop ui-open:animate-backdrop-in ui-closed:animate-backdrop-out fixed inset-0 bg-black/50",
170
+ positioner: "z-dialog fixed inset-0 flex items-center justify-center",
171
+ content: "ui-open:animate-alertdialog-in ui-closed:animate-alertdialog-out relative w-[400px] max-w-[90vw] rounded-xl bg-white p-3xl shadow-xl",
172
+ header: "flex items-start justify-between",
173
+ body: "mt-xl",
174
+ title: "text-lg font-semibold",
175
+ description: "text-gray-600 mt-xs text-sm",
176
+ closeTrigger: "text-gray-400 icon:size-6",
177
+ footer: "mt-4xl flex items-center justify-center gap-lg"
178
+ })
179
+ });
180
+
181
+ // src/lib/ui/AlertDialog/AlertDialog.tsx
182
+ var { withContext, withRootProvider } = createRecipeContext(alertDialogRecipe);
183
+ var Root = withRootProvider(import_react2.Dialog.Root);
184
+ var Backdrop = withContext(import_react2.Dialog.Backdrop, "backdrop");
185
+ var CloseTrigger = withContext(import_react2.Dialog.CloseTrigger, "closeTrigger");
186
+ var Content = withContext(import_react2.Dialog.Content, "content");
187
+ var Description = withContext(import_react2.Dialog.Description, "description");
188
+ var Positioner = withContext(import_react2.Dialog.Positioner, "positioner");
189
+ var Title = withContext(import_react2.Dialog.Title, "title");
190
+ var Trigger = withContext(import_react2.Dialog.Trigger, "trigger");
191
+ var Header = withContext(import_react2.ark.section, "header");
192
+ var Body = withContext(import_react2.ark.section, "body");
193
+ var Footer = withContext(import_react2.ark.section, "footer");
194
+ var Context = import_react2.Dialog.Context;
195
+
196
+ // src/lib/ui/Avatar/Avatar.tsx
197
+ var Avatar_exports = {};
198
+ __export(Avatar_exports, {
199
+ Context: () => Context2,
200
+ Fallback: () => Fallback,
201
+ Image: () => Image,
202
+ Root: () => Root2
203
+ });
204
+ var import_react4 = require("@ark-ui/react");
205
+
206
+ // src/lib/ui/Avatar/avatar.recipe.ts
207
+ var import_react3 = require("@ark-ui/react");
208
+ var import_tailwind_variants2 = require("tailwind-variants");
209
+ var avatarRecipe = (0, import_tailwind_variants2.tv)({
210
+ slots: anatomyToRecipeSlots(import_react3.avatarAnatomy, {
211
+ root: "border-gray-200 bg-gray-50 flex items-center justify-center overflow-hidden rounded-full border",
212
+ fallback: "text-gray-600 icon:text-gray-500 flex size-full items-center justify-center",
213
+ image: "size-full object-cover"
214
+ }),
215
+ variants: {
216
+ size: {
217
+ md: {
218
+ root: "size-10",
219
+ fallback: "icon:size-6 text-sm font-semibold"
220
+ }
221
+ }
222
+ },
223
+ defaultVariants: {
224
+ size: "md"
225
+ }
226
+ });
227
+
228
+ // src/lib/ui/Avatar/Avatar.tsx
229
+ var { withContext: withContext2, withProvider } = createRecipeContext(avatarRecipe);
230
+ var Root2 = withProvider(import_react4.Avatar.Root, "root");
231
+ var Image = withContext2(import_react4.Avatar.Image, "image");
232
+ var Fallback = withContext2(import_react4.Avatar.Fallback, "fallback");
233
+ var Context2 = import_react4.Avatar.Context;
234
+
235
+ // src/lib/ui/Badge/Badge.tsx
236
+ var Badge_exports = {};
237
+ __export(Badge_exports, {
238
+ Indicator: () => Indicator,
239
+ Label: () => Label,
240
+ Root: () => Root3
241
+ });
242
+ var import_react5 = require("@ark-ui/react");
243
+
244
+ // src/lib/ui/Badge/badge.anatomy.ts
245
+ var import_anatomy = require("@ark-ui/anatomy");
246
+ var badgeAnatomy = (0, import_anatomy.createAnatomy)("badge").parts(
247
+ "root",
248
+ "label",
249
+ "indicator"
250
+ );
251
+
252
+ // src/lib/ui/Badge/badge.recipe.ts
253
+ var import_tailwind_variants3 = require("tailwind-variants");
254
+ var badgeRecipe = (0, import_tailwind_variants3.tv)({
255
+ slots: anatomyToRecipeSlots(badgeAnatomy, {
256
+ root: "inline-flex items-center",
257
+ label: "",
258
+ indicator: ""
259
+ }),
260
+ variants: {
261
+ size: {
262
+ md: {
263
+ root: "gap-1 rounded-full px-2 py-0.5",
264
+ label: "text-xs font-medium leading-tight"
265
+ }
266
+ },
267
+ variant: {
268
+ subtle: {}
269
+ },
270
+ colorScheme: {
271
+ gray: {},
272
+ danger: {},
273
+ success: {},
274
+ warning: {},
275
+ info: {}
276
+ }
277
+ },
278
+ compoundVariants: [
279
+ {
280
+ variant: "subtle",
281
+ colorScheme: "gray",
282
+ className: {
283
+ root: "bg-gray-50 border-gray-200 border",
284
+ label: "text-gray-700"
285
+ }
286
+ },
287
+ {
288
+ variant: "subtle",
289
+ colorScheme: "success",
290
+ className: {
291
+ root: "bg-green-50 border-green-200 border",
292
+ label: "text-green-700"
293
+ }
294
+ },
295
+ {
296
+ variant: "subtle",
297
+ colorScheme: "warning",
298
+ className: {
299
+ root: "bg-amber-50 border-amber-200 border",
300
+ label: "text-amber-700"
301
+ }
302
+ },
303
+ {
304
+ variant: "subtle",
305
+ colorScheme: "danger",
306
+ className: {
307
+ root: "bg-red-50 border-red-200 border",
308
+ label: "text-red-700"
309
+ }
310
+ }
311
+ ],
312
+ defaultVariants: {
313
+ size: "md",
314
+ variant: "subtle",
315
+ colorScheme: "success"
316
+ }
317
+ });
318
+
319
+ // src/lib/ui/Badge/Badge.tsx
320
+ var { withProvider: withProvider2, withContext: withContext3 } = createRecipeContext(badgeRecipe);
321
+ var parts = badgeAnatomy.build();
322
+ var Root3 = withProvider2(
323
+ (props) => /* @__PURE__ */ React.createElement(import_react5.ark.div, { ...parts.root.attrs, ...props }),
324
+ "root"
325
+ );
326
+ var Label = withContext3(
327
+ (props) => /* @__PURE__ */ React.createElement(import_react5.ark.span, { ...parts.label.attrs, ...props }),
328
+ "label"
329
+ );
330
+ var Indicator = withContext3(
331
+ (props) => /* @__PURE__ */ React.createElement(import_react5.ark.svg, { ...parts.indicator.attrs, asChild: true, ...props }),
332
+ "indicator"
333
+ );
334
+
335
+ // src/lib/ui/Button/Button.tsx
336
+ var import_react6 = require("@ark-ui/react");
337
+
338
+ // src/lib/utils/dataAttr.ts
339
+ function dataAttr(guard) {
340
+ return guard ? "" : void 0;
341
+ }
342
+
343
+ // src/lib/ui/Button/button.recipe.ts
344
+ var import_tailwind_variants4 = require("tailwind-variants");
345
+ var buttonRecipe = (0, import_tailwind_variants4.tv)({
346
+ base: "shadow-xs inline-flex items-center justify-center rounded-md font-semibold disabled:shadow-none",
347
+ variants: {
348
+ size: {
349
+ xs: "h-9 gap-sm px-2.5 text-sm",
350
+ sm: "h-10 gap-md px-3",
351
+ md: "h-11 gap-lg px-3.5"
352
+ },
353
+ variant: {
354
+ solid: "",
355
+ outline: ""
356
+ },
357
+ colorScheme: {
358
+ primary: "",
359
+ danger: "",
360
+ gray: ""
361
+ },
362
+ fullWidth: {
363
+ true: "flex w-full"
364
+ }
365
+ },
366
+ compoundVariants: [
367
+ {
368
+ variant: "solid",
369
+ colorScheme: "primary",
370
+ class: "bg-gray-900 text-white disabled:opacity-50"
371
+ },
372
+ {
373
+ variant: "solid",
374
+ colorScheme: "danger",
375
+ class: "bg-red-500 text-white disabled:opacity-50"
376
+ },
377
+ {
378
+ variant: "outline",
379
+ colorScheme: "gray",
380
+ class: "border-gray-200 border bg-transparent disabled:opacity-50"
381
+ }
382
+ ],
383
+ defaultVariants: {
384
+ size: "md",
385
+ variant: "solid",
386
+ colorScheme: "primary",
387
+ fullWidth: true
388
+ }
389
+ });
390
+
391
+ // src/lib/ui/Button/Button.tsx
392
+ function Button(props) {
393
+ const [recipeProps, localProps] = createSplitProps(
394
+ buttonRecipe.variantKeys
395
+ )(props);
396
+ return /* @__PURE__ */ React.createElement(
397
+ import_react6.ark.button,
398
+ {
399
+ type: "button",
400
+ ...localProps,
401
+ className: buttonRecipe({
402
+ ...recipeProps,
403
+ className: localProps.className
404
+ }),
405
+ "data-disabled": dataAttr(localProps.disabled)
406
+ }
407
+ );
408
+ }
409
+
410
+ // src/lib/ui/Checkbox/Checkbox.tsx
411
+ var Checkbox_exports = {};
412
+ __export(Checkbox_exports, {
413
+ Context: () => Context3,
414
+ Control: () => Control,
415
+ Group: () => Group,
416
+ HiddenInput: () => HiddenInput,
417
+ Indicator: () => Indicator2,
418
+ Label: () => Label2,
419
+ Root: () => Root4,
420
+ withContext: () => withContext4,
421
+ withProvider: () => withProvider3
422
+ });
423
+ var import_react8 = require("@ark-ui/react");
424
+
425
+ // src/lib/ui/Checkbox/checkbox.recipe.ts
426
+ var import_react7 = require("@ark-ui/react");
427
+ var import_tailwind_variants5 = require("tailwind-variants");
428
+ var checkboxRecipe = (0, import_tailwind_variants5.tv)({
429
+ slots: anatomyToRecipeSlots(import_react7.checkboxAnatomy, {
430
+ root: "flex items-start gap-2",
431
+ control: "flex shrink-0 items-center justify-center rounded-md",
432
+ label: "text-checkbox-label-fg"
433
+ }),
434
+ variants: {
435
+ size: {
436
+ md: {
437
+ control: "size-4 rounded-[0.25rem]",
438
+ indicator: "size-3"
439
+ }
440
+ },
441
+ variant: {
442
+ outline: {}
443
+ },
444
+ colorScheme: {
445
+ gray: {}
446
+ }
447
+ },
448
+ compoundVariants: [
449
+ {
450
+ variant: "outline",
451
+ colorScheme: "gray",
452
+ className: {
453
+ control: [
454
+ "border",
455
+ "shadow-xs",
456
+ "bg-transparent",
457
+ "border-gray-200",
458
+ "ui-invalid:border-red-400",
459
+ "ui-checked:bg-gray-900",
460
+ "ui-checked:border-gray-900",
461
+ "ui-readonly:opacity-50",
462
+ "ui-readonly:shadow-none",
463
+ "ui-disabled:opacity-50",
464
+ "ui-disabled:shadow-none"
465
+ ],
466
+ indicator: "text-white",
467
+ label: "text-gray-600 text-xs leading-tight"
468
+ }
469
+ }
470
+ ],
471
+ defaultVariants: {
472
+ size: "md",
473
+ variant: "outline",
474
+ colorScheme: "gray"
475
+ }
476
+ });
477
+
478
+ // src/lib/ui/Checkbox/Checkbox.tsx
479
+ var { withContext: withContext4, withProvider: withProvider3 } = createRecipeContext(checkboxRecipe);
480
+ var Root4 = withProvider3(import_react8.Checkbox.Root, "root");
481
+ var Control = withContext4(import_react8.Checkbox.Control, "control");
482
+ var Group = withContext4(import_react8.Checkbox.Group, "group");
483
+ var Indicator2 = withContext4(import_react8.Checkbox.Indicator, "indicator");
484
+ var Label2 = withContext4(import_react8.Checkbox.Label, "label");
485
+ var HiddenInput = import_react8.Checkbox.HiddenInput;
486
+ var Context3 = import_react8.Checkbox.Context;
487
+
488
+ // src/lib/ui/Combobox/Combobox.tsx
489
+ var Combobox_exports = {};
490
+ __export(Combobox_exports, {
491
+ Root: () => Root5
492
+ });
493
+ var import_react9 = require("@ark-ui/react");
494
+ var Root5 = import_react9.Combobox.Root;
495
+
496
+ // src/lib/ui/DatePicker/DatePicker.tsx
497
+ var DatePicker_exports = {};
498
+ __export(DatePicker_exports, {
499
+ ClearTrigger: () => ClearTrigger,
500
+ Content: () => Content2,
501
+ Context: () => Context4,
502
+ Control: () => Control2,
503
+ Input: () => Input,
504
+ Label: () => Label3,
505
+ MonthSelect: () => MonthSelect,
506
+ NextTrigger: () => NextTrigger,
507
+ Positioner: () => Positioner2,
508
+ PresetTrigger: () => PresetTrigger,
509
+ PrevTrigger: () => PrevTrigger,
510
+ RangeText: () => RangeText,
511
+ Root: () => Root6,
512
+ Table: () => Table,
513
+ TableBody: () => TableBody,
514
+ TableCell: () => TableCell,
515
+ TableCellTrigger: () => TableCellTrigger,
516
+ TableHead: () => TableHead,
517
+ TableHeader: () => TableHeader,
518
+ TableRow: () => TableRow,
519
+ Trigger: () => Trigger2,
520
+ View: () => View,
521
+ ViewControl: () => ViewControl,
522
+ ViewTrigger: () => ViewTrigger,
523
+ YearSelect: () => YearSelect
524
+ });
525
+ var import_react11 = require("@ark-ui/react");
526
+
527
+ // src/lib/ui/DatePicker/datePicker.recipe.ts
528
+ var import_react10 = require("@ark-ui/react");
529
+ var import_tailwind_variants6 = require("tailwind-variants");
530
+ var datePickerRecipe = (0, import_tailwind_variants6.tv)({
531
+ slots: anatomyToRecipeSlots(import_react10.datePickerAnatomy, {
532
+ content: "border-gray-200 text-gray-600 ui-placement-top:ui-open:animate-popover-in-top ui-placement-top-end:ui-open:animate-popover-in-top ui-placement-top-start:ui-open:animate-popover-in-top ui-placement-top:ui-closed:animate-popover-out-top ui-placement-top-end:ui-closed:animate-popover-out-top ui-placement-top-start:ui-closed:animate-popover-out-top ui-placement-bottom:ui-open:animate-popover-in-bottom ui-placement-bottom-start:ui-open:animate-popover-in-bottom ui-placement-bottom-end:ui-open:animate-popover-in-bottom ui-placement-bottom:ui-closed:animate-popover-out-bottom ui-placement-bottom-start:ui-closed:animate-popover-out-bottom ui-placement-bottom-end:ui-closed:animate-popover-out-bottom ui-placement-left:ui-open:animate-popover-in-left ui-placement-left-start:ui-open:animate-popover-in-left ui-placement-left-end:ui-open:animate-popover-in-left ui-placement-left:ui-closed:animate-popover-out-left ui-placement-left-start:ui-closed:animate-popover-out-left ui-placement-left-end:ui-closed:animate-popover-out-left ui-placement-right:ui-open:animate-popover-in-right ui-placement-right-start:ui-open:animate-popover-in-right ui-placement-right-end:ui-open:animate-popover-in-right ui-placement-right:ui-closed:animate-popover-out-right ui-placement-right-start:ui-closed:animate-popover-out-right ui-placement-right-end:ui-closed:animate-popover-out-right z-dropdown rounded-xl border bg-white p-4",
533
+ table: "mt-3 border-separate border-spacing-0.5",
534
+ tableCellTrigger: "text-gray-600 ui-disabled:text-gray-400 ui-selected:ui-not-disabled:bg-gray-900 ui-today:after:bg-gray-600 ui-in-range:ui-not-disabled:bg-gray-100 ui-in-range:ui-not-disabled:text-gray-900 ui-range-start:ui-not-disabled:bg-gray-900 ui-range-end:ui-not-disabled:bg-gray-900 relative flex size-10 cursor-pointer items-center justify-center text-sm ui-disabled:cursor-not-allowed ui-selected:ui-not-disabled:rounded-full ui-selected:ui-not-disabled:font-medium ui-selected:ui-not-disabled:text-white ui-today:after:absolute ui-today:after:bottom-0 ui-today:after:left-1/2 ui-today:after:mb-1 ui-today:after:size-1 ui-today:after:-translate-x-1/2 ui-today:after:rounded-full ui-in-range:ui-not-disabled:rounded-full ui-in-range:ui-not-disabled:font-medium ui-range-start:ui-not-disabled:rounded-full ui-range-start:ui-not-disabled:font-medium ui-range-start:ui-not-disabled:text-white ui-range-end:ui-not-disabled:rounded-full ui-range-end:ui-not-disabled:font-medium ui-range-end:ui-not-disabled:text-white",
535
+ tableHeader: "py-3 text-sm font-medium",
536
+ viewControl: "flex items-center justify-between",
537
+ prevTrigger: "bg-gray-50 icon:size-5 flex size-9 items-center justify-center rounded-full",
538
+ nextTrigger: "bg-gray-50 icon:size-5 flex size-9 items-center justify-center rounded-full",
539
+ rangeText: "text-gray-600 text-base font-semibold"
540
+ })
541
+ });
542
+
543
+ // src/lib/ui/DatePicker/DatePicker.tsx
544
+ var { withProvider: withProvider4, withContext: withContext5 } = createRecipeContext(datePickerRecipe);
545
+ var Root6 = withProvider4(import_react11.DatePicker.Root, "root");
546
+ var ClearTrigger = withContext5(
547
+ import_react11.DatePicker.ClearTrigger,
548
+ "clearTrigger"
549
+ );
550
+ var Content2 = withContext5(import_react11.DatePicker.Content, "content");
551
+ var Control2 = withContext5(import_react11.DatePicker.Control, "control");
552
+ var Input = withContext5(import_react11.DatePicker.Input, "input");
553
+ var Label3 = withContext5(import_react11.DatePicker.Label, "label");
554
+ var MonthSelect = withContext5(import_react11.DatePicker.MonthSelect, "monthSelect");
555
+ var NextTrigger = withContext5(import_react11.DatePicker.NextTrigger, "nextTrigger");
556
+ var Positioner2 = withContext5(import_react11.DatePicker.Positioner, "positioner");
557
+ var PresetTrigger = withContext5(
558
+ import_react11.DatePicker.PresetTrigger,
559
+ "presetTrigger"
560
+ );
561
+ var PrevTrigger = withContext5(import_react11.DatePicker.PrevTrigger, "prevTrigger");
562
+ var RangeText = withContext5(import_react11.DatePicker.RangeText, "rangeText");
563
+ var Table = withContext5(import_react11.DatePicker.Table, "table");
564
+ var TableBody = withContext5(import_react11.DatePicker.TableBody, "tableBody");
565
+ var TableCell = withContext5(import_react11.DatePicker.TableCell, "tableCell");
566
+ var TableCellTrigger = withContext5(
567
+ import_react11.DatePicker.TableCellTrigger,
568
+ "tableCellTrigger"
569
+ );
570
+ var TableHead = withContext5(import_react11.DatePicker.TableHead, "tableHead");
571
+ var TableHeader = withContext5(import_react11.DatePicker.TableHeader, "tableHeader");
572
+ var TableRow = withContext5(import_react11.DatePicker.TableRow, "tableRow");
573
+ var Trigger2 = withContext5(import_react11.DatePicker.Trigger, "trigger");
574
+ var View = withContext5(import_react11.DatePicker.View, "view");
575
+ var ViewControl = withContext5(import_react11.DatePicker.ViewControl, "viewControl");
576
+ var ViewTrigger = withContext5(import_react11.DatePicker.ViewTrigger, "viewTrigger");
577
+ var YearSelect = withContext5(import_react11.DatePicker.YearSelect, "yearSelect");
578
+ var Context4 = import_react11.DatePicker.Context;
579
+
580
+ // src/lib/ui/Dialog/Dialog.tsx
581
+ var Dialog_exports = {};
582
+ __export(Dialog_exports, {
583
+ Backdrop: () => Backdrop2,
584
+ Body: () => Body2,
585
+ CloseTrigger: () => CloseTrigger2,
586
+ Content: () => Content3,
587
+ Context: () => Context5,
588
+ Description: () => Description2,
589
+ Footer: () => Footer2,
590
+ Header: () => Header2,
591
+ Positioner: () => Positioner3,
592
+ Root: () => Root7,
593
+ Title: () => Title2,
594
+ Trigger: () => Trigger3
595
+ });
596
+ var import_react13 = require("@ark-ui/react");
597
+
598
+ // src/lib/ui/Dialog/dialog.recipe.ts
599
+ var import_react12 = require("@ark-ui/react");
600
+ var import_tailwind_variants7 = require("tailwind-variants");
601
+ var anatomy2 = import_react12.dialogAnatomy.extendWith("header", "body", "footer");
602
+ var dialogRecipe = (0, import_tailwind_variants7.tv)({
603
+ slots: anatomyToRecipeSlots(anatomy2, {
604
+ backdrop: "z-backdrop ui-open:animate-backdrop-in ui-closed:animate-backdrop-out fixed inset-0 bg-black/60",
605
+ positioner: "z-dialog fixed inset-0 overflow-y-auto lg:py-16",
606
+ content: "ui-open:animate-dialog-in ui-closed:animate-dialog-out relative",
607
+ closeTrigger: "icon:size-6 text-gray-400 absolute right-2.5 top-2.5 flex size-11 items-center justify-center"
608
+ })
609
+ });
610
+
611
+ // src/lib/ui/Dialog/Dialog.tsx
612
+ var { withContext: withContext6, withRootProvider: withRootProvider2 } = createRecipeContext(dialogRecipe);
613
+ var Root7 = withRootProvider2(import_react13.Dialog.Root);
614
+ var Backdrop2 = withContext6(import_react13.Dialog.Backdrop, "backdrop");
615
+ var CloseTrigger2 = withContext6(import_react13.Dialog.CloseTrigger, "closeTrigger");
616
+ var Content3 = withContext6(import_react13.Dialog.Content, "content");
617
+ var Description2 = withContext6(import_react13.Dialog.Description, "description");
618
+ var Positioner3 = withContext6(import_react13.Dialog.Positioner, "positioner");
619
+ var Title2 = withContext6(import_react13.Dialog.Title, "title");
620
+ var Trigger3 = withContext6(import_react13.Dialog.Trigger, "trigger");
621
+ var Header2 = withContext6(import_react13.ark.section, "header");
622
+ var Body2 = withContext6(import_react13.ark.section, "body");
623
+ var Footer2 = withContext6(import_react13.ark.section, "footer");
624
+ var Context5 = import_react13.Dialog.Context;
625
+
626
+ // src/lib/ui/Drawer/Drawer.tsx
627
+ var Drawer_exports = {};
628
+ __export(Drawer_exports, {
629
+ Backdrop: () => Backdrop3,
630
+ Body: () => Body3,
631
+ CloseTrigger: () => CloseTrigger3,
632
+ Content: () => Content4,
633
+ Context: () => Context6,
634
+ Description: () => Description3,
635
+ Footer: () => Footer3,
636
+ Header: () => Header3,
637
+ Positioner: () => Positioner4,
638
+ Root: () => Root8,
639
+ Title: () => Title3,
640
+ Trigger: () => Trigger4
641
+ });
642
+ var import_react15 = require("@ark-ui/react");
643
+
644
+ // src/lib/ui/Drawer/drawer.recipe.ts
645
+ var import_react14 = require("@ark-ui/react");
646
+ var import_tailwind_variants8 = require("tailwind-variants");
647
+ var anatomy3 = import_react14.dialogAnatomy.extendWith("header", "body", "footer");
648
+ var drawerRecipe = (0, import_tailwind_variants8.tv)({
649
+ slots: anatomyToRecipeSlots(anatomy3, {
650
+ backdrop: "z-backdrop ui-open:animate-backdrop-in ui-closed:animate-backdrop-out fixed inset-0 bg-black/60",
651
+ positioner: "z-drawer fixed inset-0 overflow-hidden overflow-y-auto lg:py-16",
652
+ content: "absolute top-0 h-full w-full bg-white lg:w-[400px]"
653
+ }),
654
+ variants: {
655
+ placement: {
656
+ left: {
657
+ content: "ui-open:animate-drawer-in-left ui-closed:animate-drawer-out-left left-0"
658
+ },
659
+ right: {
660
+ content: "ui-open:animate-drawer-in-right ui-closed:animate-drawer-out-right right-0"
661
+ }
662
+ }
663
+ },
664
+ defaultVariants: {
665
+ placement: "right"
666
+ }
667
+ });
668
+
669
+ // src/lib/ui/Drawer/Drawer.tsx
670
+ var { withContext: withContext7, withRootProvider: withRootProvider3 } = createRecipeContext(drawerRecipe);
671
+ var Root8 = withRootProvider3(import_react15.Dialog.Root);
672
+ var Backdrop3 = withContext7(import_react15.Dialog.Backdrop, "backdrop");
673
+ var CloseTrigger3 = withContext7(import_react15.Dialog.CloseTrigger, "closeTrigger");
674
+ var Content4 = withContext7(import_react15.Dialog.Content, "content");
675
+ var Description3 = withContext7(import_react15.Dialog.Description, "description");
676
+ var Positioner4 = withContext7(import_react15.Dialog.Positioner, "positioner");
677
+ var Title3 = withContext7(import_react15.Dialog.Title, "title");
678
+ var Trigger4 = withContext7(import_react15.Dialog.Trigger, "trigger");
679
+ var Header3 = withContext7(import_react15.ark.section, "header");
680
+ var Body3 = withContext7(import_react15.ark.section, "body");
681
+ var Footer3 = withContext7(import_react15.ark.section, "footer");
682
+ var Context6 = import_react15.Dialog.Context;
683
+
684
+ // src/lib/ui/Field/Field.tsx
685
+ var Field_exports = {};
686
+ __export(Field_exports, {
687
+ Context: () => Context7,
688
+ ErrorText: () => ErrorText,
689
+ HelperText: () => HelperText,
690
+ Input: () => Input2,
691
+ Label: () => Label4,
692
+ Root: () => Root9,
693
+ Select: () => Select,
694
+ Textarea: () => Textarea
695
+ });
696
+ var import_react17 = require("@ark-ui/react");
697
+
698
+ // src/lib/ui/Field/field.recipe.ts
699
+ var import_react16 = require("@ark-ui/react");
700
+ var import_tailwind_merge = require("tailwind-merge");
701
+ var import_tailwind_variants9 = require("tailwind-variants");
702
+ var outlineGrayInputStyle = (0, import_tailwind_merge.twMerge)(
703
+ "border",
704
+ "shadow-xs",
705
+ "bg-input-outline-gray-bg",
706
+ "text-input-outline-gray-fg",
707
+ "border-gray-200",
708
+ "placeholder:text-gray-400",
709
+ "ui-invalid:border-red-400",
710
+ "disabled:opacity-50",
711
+ "disabled:shadow-none",
712
+ "read-only:opacity-50",
713
+ "read-only:shadow-none"
714
+ );
715
+ var fieldRecipe = (0, import_tailwind_variants9.tv)({
716
+ slots: anatomyToRecipeSlots(import_react16.fieldAnatomy, {
717
+ input: "outer-spin:appearance-none inner-spin:appearance-none block w-full rounded-md outline-none",
718
+ select: "block w-full rounded-md outline-none",
719
+ textarea: "block w-full rounded-md outline-none",
720
+ label: "text-gray-600 mb-sm inline-block text-sm font-medium",
721
+ errorText: "text-red-600 mt-sm inline-block text-sm",
722
+ helperText: "text-gray-500",
723
+ requiredIndicator: "text-red-500 text-sm"
724
+ }),
725
+ variants: {
726
+ size: {
727
+ md: {
728
+ input: "h-11 px-3.5",
729
+ select: "h-11 px-3.5",
730
+ textarea: "px-3.5 py-2.5"
731
+ }
732
+ },
733
+ variant: {
734
+ outline: {}
735
+ },
736
+ colorScheme: {
737
+ gray: {}
738
+ }
739
+ },
740
+ compoundVariants: [
741
+ {
742
+ variant: "outline",
743
+ colorScheme: "gray",
744
+ className: {
745
+ input: outlineGrayInputStyle,
746
+ select: outlineGrayInputStyle,
747
+ textarea: outlineGrayInputStyle
748
+ }
749
+ }
750
+ ],
751
+ defaultVariants: {
752
+ size: "md",
753
+ variant: "outline",
754
+ colorScheme: "gray"
755
+ }
756
+ });
757
+
758
+ // src/lib/ui/Field/Field.tsx
759
+ var { withContext: withContext8, withProvider: withProvider5 } = createRecipeContext(fieldRecipe);
760
+ var Root9 = withProvider5(import_react17.Field.Root, "root");
761
+ var Label4 = withContext8(import_react17.Field.Label, "label");
762
+ var Input2 = withContext8(import_react17.Field.Input, "input");
763
+ var HelperText = withContext8(import_react17.Field.HelperText, "helperText");
764
+ var ErrorText = withContext8(import_react17.Field.ErrorText, "errorText");
765
+ var Select = withContext8(import_react17.Field.Select, "select");
766
+ var Textarea = withContext8(import_react17.Field.Textarea, "textarea");
767
+ var Context7 = import_react17.Field.Context;
768
+
769
+ // src/lib/ui/IconButton/IconButton.tsx
770
+ var import_react18 = require("@ark-ui/react");
771
+
772
+ // src/lib/ui/IconButton/iconButton.recipe.ts
773
+ var import_tailwind_variants10 = require("tailwind-variants");
774
+ var iconButtonRecipe = (0, import_tailwind_variants10.tv)({
775
+ extend: buttonRecipe,
776
+ variants: {
777
+ size: {
778
+ sm: "h-10 min-w-10 px-0",
779
+ md: "h-11 min-w-11 px-0"
780
+ }
781
+ },
782
+ defaultVariants: {
783
+ size: "md",
784
+ variant: "solid",
785
+ colorScheme: "primary",
786
+ fullWidth: false
787
+ }
788
+ });
789
+
790
+ // src/lib/ui/IconButton/IconButton.tsx
791
+ function IconButton(props) {
792
+ const [recipeProps, localProps] = createSplitProps(
793
+ iconButtonRecipe.variantKeys
794
+ )(props);
795
+ return /* @__PURE__ */ React.createElement(
796
+ import_react18.ark.button,
797
+ {
798
+ type: "button",
799
+ ...localProps,
800
+ className: iconButtonRecipe({
801
+ ...recipeProps,
802
+ className: localProps.className
803
+ }),
804
+ "data-disabled": dataAttr(localProps.disabled)
805
+ }
806
+ );
807
+ }
808
+
809
+ // src/lib/ui/Menu/Menu.tsx
810
+ var Menu_exports = {};
811
+ __export(Menu_exports, {
812
+ Root: () => Root10
813
+ });
814
+ var import_react19 = require("@ark-ui/react");
815
+ var Root10 = import_react19.Menu.Root;
816
+
817
+ // src/lib/ui/NumberInput/NumberInput.tsx
818
+ var NumberInput_exports = {};
819
+ __export(NumberInput_exports, {
820
+ Context: () => Context8,
821
+ Control: () => Control3,
822
+ DecrementTrigger: () => DecrementTrigger,
823
+ IncrementTrigger: () => IncrementTrigger,
824
+ Input: () => Input3,
825
+ Label: () => Label5,
826
+ Root: () => Root11,
827
+ Scrubber: () => Scrubber,
828
+ ValueText: () => ValueText
829
+ });
830
+ var import_react21 = require("@ark-ui/react");
831
+
832
+ // src/lib/ui/NumberInput/numberInput.recipe.ts
833
+ var import_react20 = require("@ark-ui/react");
834
+ var import_tailwind_variants11 = require("tailwind-variants");
835
+ var numberInputRecipe = (0, import_tailwind_variants11.tv)({
836
+ slots: anatomyToRecipeSlots(import_react20.numberInputAnatomy, {
837
+ control: "border-gray-200 ui-invalid:border-red-400 grid grid-cols-[1fr_32px] grid-rows-[1fr_1fr] overflow-hidden rounded-lg border bg-transparent ui-disabled:opacity-50 ui-readonly:cursor-default ui-readonly:opacity-50",
838
+ input: "placeholder:text-gray-400 row-[span_2/span_2] w-full border-0 bg-transparent outline-none disabled:cursor-not-allowed",
839
+ label: "text-gray-600 mb-sm inline-block text-sm font-medium",
840
+ decrementTrigger: "border-gray-200 icon:text-gray-600 inline-flex cursor-pointer items-center justify-center border-l border-t ui-disabled:cursor-not-allowed",
841
+ incrementTrigger: "border-gray-200 icon:text-gray-600 inline-flex cursor-pointer items-center justify-center border-l ui-disabled:cursor-not-allowed"
842
+ }),
843
+ variants: {
844
+ size: {
845
+ md: {
846
+ control: "h-11 pl-3.5 text-base",
847
+ incrementTrigger: "icon:size-5",
848
+ decrementTrigger: "icon:size-5"
849
+ }
850
+ }
851
+ },
852
+ defaultVariants: {
853
+ size: "md"
854
+ }
855
+ });
856
+
857
+ // src/lib/ui/NumberInput/NumberInput.tsx
858
+ var { withContext: withContext9, withProvider: withProvider6 } = createRecipeContext(numberInputRecipe);
859
+ var Root11 = withProvider6(import_react21.NumberInput.Root, "root");
860
+ var Control3 = withContext9(import_react21.NumberInput.Control, "control");
861
+ var DecrementTrigger = withContext9(
862
+ import_react21.NumberInput.DecrementTrigger,
863
+ "decrementTrigger"
864
+ );
865
+ var IncrementTrigger = withContext9(
866
+ import_react21.NumberInput.IncrementTrigger,
867
+ "incrementTrigger"
868
+ );
869
+ var Input3 = withContext9(import_react21.NumberInput.Input, "input");
870
+ var Label5 = withContext9(import_react21.NumberInput.Label, "label");
871
+ var Scrubber = withContext9(import_react21.NumberInput.Scrubber, "scrubber");
872
+ var ValueText = withContext9(import_react21.NumberInput.ValueText, "valueText");
873
+ var Context8 = import_react21.NumberInput.Context;
874
+
875
+ // src/lib/ui/PinInput/PinInput.tsx
876
+ var PinInput_exports = {};
877
+ __export(PinInput_exports, {
878
+ Context: () => Context9,
879
+ Control: () => Control4,
880
+ HiddenInput: () => HiddenInput2,
881
+ Input: () => Input4,
882
+ Label: () => Label6,
883
+ Root: () => Root12
884
+ });
885
+ var import_react23 = require("@ark-ui/react");
886
+
887
+ // src/lib/ui/PinInput/pinInput.recipe.ts
888
+ var import_react22 = require("@ark-ui/react");
889
+ var import_tailwind_variants12 = require("tailwind-variants");
890
+ var pinInputRecipe = (0, import_tailwind_variants12.tv)({
891
+ slots: anatomyToRecipeSlots(import_react22.pinInputAnatomy, {
892
+ control: "grid grid-cols-6",
893
+ input: "aspect-[10/11] w-full rounded-md outline-none",
894
+ label: "text-input-label-fg mb-sm inline-block text-sm font-medium"
895
+ }),
896
+ variants: {
897
+ size: {
898
+ md: {
899
+ input: "text-center text-2xl font-medium",
900
+ control: "gap-2"
901
+ }
902
+ },
903
+ variant: {
904
+ outline: {}
905
+ },
906
+ colorScheme: {
907
+ gray: {}
908
+ }
909
+ },
910
+ compoundVariants: [
911
+ {
912
+ variant: "outline",
913
+ colorScheme: "gray",
914
+ className: {
915
+ input: "shadow-xs border-gray-200 placeholder:text-gray-400 ui-invalid:border-red-400 border read-only:opacity-50 read-only:shadow-none disabled:opacity-50 disabled:shadow-none"
916
+ }
917
+ }
918
+ ],
919
+ defaultVariants: {
920
+ size: "md",
921
+ variant: "outline",
922
+ colorScheme: "gray"
923
+ }
924
+ });
925
+
926
+ // src/lib/ui/PinInput/PinInput.tsx
927
+ var { withContext: withContext10, withProvider: withProvider7 } = createRecipeContext(pinInputRecipe);
928
+ var Root12 = withProvider7(import_react23.PinInput.Root, "root");
929
+ var Label6 = withContext10(import_react23.PinInput.Label, "label");
930
+ var Control4 = withContext10(import_react23.PinInput.Control, "control");
931
+ var Input4 = withContext10(import_react23.PinInput.Input, "input");
932
+ var HiddenInput2 = import_react23.PinInput.HiddenInput;
933
+ var Context9 = import_react23.PinInput.Context;
934
+
935
+ // src/lib/ui/Popover/Popover.tsx
936
+ var Popover_exports = {};
937
+ __export(Popover_exports, {
938
+ Anchor: () => Anchor,
939
+ Arrow: () => Arrow,
940
+ ArrowTip: () => ArrowTip,
941
+ CloseTrigger: () => CloseTrigger4,
942
+ Content: () => Content5,
943
+ Context: () => Context10,
944
+ Description: () => Description4,
945
+ Indicator: () => Indicator3,
946
+ Positioner: () => Positioner5,
947
+ Root: () => Root13,
948
+ Title: () => Title4,
949
+ Trigger: () => Trigger5
950
+ });
951
+ var import_react25 = require("@ark-ui/react");
952
+
953
+ // src/lib/ui/Popover/popover.recipe.ts
954
+ var import_react24 = require("@ark-ui/react");
955
+ var import_tailwind_variants13 = require("tailwind-variants");
956
+ var popoverRecipe = (0, import_tailwind_variants13.tv)({
957
+ slots: anatomyToRecipeSlots(import_react24.popoverAnatomy, {
958
+ content: "ui-placement-top:ui-open:animate-popover-in-top ui-placement-top-end:ui-open:animate-popover-in-top ui-placement-top-start:ui-open:animate-popover-in-top ui-placement-top:ui-closed:animate-popover-out-top ui-placement-top-end:ui-closed:animate-popover-out-top ui-placement-top-start:ui-closed:animate-popover-out-top ui-placement-bottom:ui-open:animate-popover-in-bottom ui-placement-bottom-start:ui-open:animate-popover-in-bottom ui-placement-bottom-end:ui-open:animate-popover-in-bottom ui-placement-bottom:ui-closed:animate-popover-out-bottom ui-placement-bottom-start:ui-closed:animate-popover-out-bottom ui-placement-bottom-end:ui-closed:animate-popover-out-bottom ui-placement-left:ui-open:animate-popover-in-left ui-placement-left-start:ui-open:animate-popover-in-left ui-placement-left-end:ui-open:animate-popover-in-left ui-placement-left:ui-closed:animate-popover-out-left ui-placement-left-start:ui-closed:animate-popover-out-left ui-placement-left-end:ui-closed:animate-popover-out-left ui-placement-right:ui-open:animate-popover-in-right ui-placement-right-start:ui-open:animate-popover-in-right ui-placement-right-end:ui-open:animate-popover-in-right ui-placement-right:ui-closed:animate-popover-out-right ui-placement-right-start:ui-closed:animate-popover-out-right ui-placement-right-end:ui-closed:animate-popover-out-right",
959
+ positioner: "z-popover"
960
+ })
961
+ });
962
+
963
+ // src/lib/ui/Popover/Popover.tsx
964
+ var { withRootProvider: withRootProvider4, withContext: withContext11 } = createRecipeContext(popoverRecipe);
965
+ var Root13 = withRootProvider4(import_react25.Popover.Root);
966
+ var Anchor = withContext11(import_react25.Popover.Anchor, "anchor");
967
+ var Arrow = withContext11(import_react25.Popover.Arrow, "arrow");
968
+ var ArrowTip = withContext11(import_react25.Popover.ArrowTip, "arrowTip");
969
+ var CloseTrigger4 = withContext11(import_react25.Popover.CloseTrigger, "closeTrigger");
970
+ var Content5 = withContext11(import_react25.Popover.Content, "content");
971
+ var Description4 = withContext11(import_react25.Popover.Description, "description");
972
+ var Indicator3 = withContext11(import_react25.Popover.Indicator, "indicator");
973
+ var Positioner5 = withContext11(import_react25.Popover.Positioner, "positioner");
974
+ var Title4 = withContext11(import_react25.Popover.Title, "title");
975
+ var Trigger5 = withContext11(import_react25.Popover.Trigger, "trigger");
976
+ var Context10 = import_react25.Popover.Context;
977
+
978
+ // src/lib/ui/Progress/Progress.tsx
979
+ var Progress_exports = {};
980
+ __export(Progress_exports, {
981
+ Root: () => Root14
982
+ });
983
+ var import_react26 = require("@ark-ui/react");
984
+ var Root14 = import_react26.Progress.Root;
985
+
986
+ // src/lib/ui/SegmentGroup/SegmentGroup.tsx
987
+ var SegmentGroup_exports = {};
988
+ __export(SegmentGroup_exports, {
989
+ Context: () => Context11,
990
+ Indicator: () => Indicator4,
991
+ Item: () => Item,
992
+ ItemContext: () => ItemContext,
993
+ ItemControl: () => ItemControl,
994
+ ItemHiddenInput: () => ItemHiddenInput,
995
+ ItemText: () => ItemText,
996
+ Label: () => Label7,
997
+ Root: () => Root15
998
+ });
999
+ var import_react28 = require("@ark-ui/react");
1000
+
1001
+ // src/lib/ui/SegmentGroup/segmentGroup.recipe.ts
1002
+ var import_react27 = require("@ark-ui/react");
1003
+ var import_tailwind_variants14 = require("tailwind-variants");
1004
+ var segmentGroupRecipe = (0, import_tailwind_variants14.tv)({
1005
+ slots: anatomyToRecipeSlots(import_react27.segmentGroupAnatomy),
1006
+ variants: {
1007
+ size: {
1008
+ md: {}
1009
+ },
1010
+ variant: {
1011
+ unstyled: {},
1012
+ default: {
1013
+ root: "bg-gray-50 border-gray-200 relative flex w-fit gap-md rounded-md border p-1",
1014
+ item: "z-1 text-gray-600 ui-checked:text-gray-800 relative cursor-pointer transition-all duration-200",
1015
+ indicator: "left-[var(--left)] top-[var(--top)] h-[var(--height)] w-[var(--width)] bg-white"
1016
+ }
1017
+ }
1018
+ },
1019
+ compoundVariants: [
1020
+ {
1021
+ size: "md",
1022
+ variant: "default",
1023
+ className: {
1024
+ item: "px-lg py-md text-sm font-semibold",
1025
+ indicator: "rounded-sm shadow-sm"
1026
+ }
1027
+ }
1028
+ ],
1029
+ defaultVariants: {
1030
+ size: "md",
1031
+ variant: "default"
1032
+ }
1033
+ });
1034
+
1035
+ // src/lib/ui/SegmentGroup/SegmentGroup.tsx
1036
+ var { withProvider: withProvider8, withContext: withContext12 } = createRecipeContext(segmentGroupRecipe);
1037
+ var Root15 = withProvider8(import_react28.SegmentGroup.Root, "root");
1038
+ var Indicator4 = withContext12(import_react28.SegmentGroup.Indicator, "indicator");
1039
+ var Item = withContext12(import_react28.SegmentGroup.Item, "item");
1040
+ var ItemControl = withContext12(import_react28.SegmentGroup.ItemControl, "itemControl");
1041
+ var ItemText = withContext12(import_react28.SegmentGroup.ItemText, "itemText");
1042
+ var Label7 = withContext12(import_react28.SegmentGroup.Label, "label");
1043
+ var Context11 = import_react28.SegmentGroup.Context;
1044
+ var ItemContext = import_react28.SegmentGroup.ItemContext;
1045
+ var ItemHiddenInput = import_react28.SegmentGroup.ItemHiddenInput;
1046
+
1047
+ // src/lib/ui/Select/Select.tsx
1048
+ var Select_exports = {};
1049
+ __export(Select_exports, {
1050
+ ClearTrigger: () => ClearTrigger2,
1051
+ Content: () => Content6,
1052
+ Context: () => Context12,
1053
+ Control: () => Control5,
1054
+ HiddenSelect: () => HiddenSelect,
1055
+ Indicator: () => Indicator5,
1056
+ Item: () => Item2,
1057
+ ItemContext: () => ItemContext2,
1058
+ ItemGroup: () => ItemGroup,
1059
+ ItemGroupLabel: () => ItemGroupLabel,
1060
+ ItemIndicator: () => ItemIndicator,
1061
+ ItemText: () => ItemText2,
1062
+ Label: () => Label8,
1063
+ List: () => List,
1064
+ Positioner: () => Positioner6,
1065
+ Root: () => Root16,
1066
+ Trigger: () => Trigger6,
1067
+ ValueText: () => ValueText2
1068
+ });
1069
+ var import_react30 = require("@ark-ui/react");
1070
+
1071
+ // src/lib/ui/Select/select.recipe.ts
1072
+ var import_react29 = require("@ark-ui/react");
1073
+ var import_tailwind_variants15 = require("tailwind-variants");
1074
+ var selectRecipe = (0, import_tailwind_variants15.tv)({
1075
+ slots: anatomyToRecipeSlots(import_react29.selectAnatomy, {
1076
+ indicator: "text-gray-500 transition-transform duration-200 ui-open:rotate-180 ui-closed:rotate-0",
1077
+ positioner: "z-dropdown",
1078
+ content: "border-gray-200 ui-placement-top:ui-open:animate-popover-in-top ui-placement-top-end:ui-open:animate-popover-in-top ui-placement-top-start:ui-open:animate-popover-in-top ui-placement-top:ui-closed:animate-popover-out-top ui-placement-top-end:ui-closed:animate-popover-out-top ui-placement-top-start:ui-closed:animate-popover-out-top ui-placement-bottom:ui-open:animate-popover-in-bottom ui-placement-bottom-start:ui-open:animate-popover-in-bottom ui-placement-bottom-end:ui-open:animate-popover-in-bottom ui-placement-bottom:ui-closed:animate-popover-out-bottom ui-placement-bottom-start:ui-closed:animate-popover-out-bottom ui-placement-bottom-end:ui-closed:animate-popover-out-bottom ui-placement-left:ui-open:animate-popover-in-left ui-placement-left-start:ui-open:animate-popover-in-left ui-placement-left-end:ui-open:animate-popover-in-left ui-placement-left:ui-closed:animate-popover-out-left ui-placement-left-start:ui-closed:animate-popover-out-left ui-placement-left-end:ui-closed:animate-popover-out-left ui-placement-right:ui-open:animate-popover-in-right ui-placement-right-start:ui-open:animate-popover-in-right ui-placement-right-end:ui-open:animate-popover-in-right ui-placement-right:ui-closed:animate-popover-out-right ui-placement-right-start:ui-closed:animate-popover-out-right ui-placement-right-end:ui-closed:animate-popover-out-right z-dropdown rounded-md border bg-white p-1",
1079
+ item: "ui-highlighted:bg-gray-50 flex cursor-pointer items-center gap-2 rounded-sm px-2.5 py-1",
1080
+ itemText: "grow",
1081
+ itemIndicator: "text-green-500 size-4"
1082
+ }),
1083
+ variants: {
1084
+ size: {
1085
+ sm: {
1086
+ trigger: "h-10 gap-md px-3",
1087
+ indicator: "size-5"
1088
+ },
1089
+ md: {
1090
+ trigger: "h-11 gap-lg px-3.5",
1091
+ indicator: "size-5"
1092
+ }
1093
+ },
1094
+ variant: {
1095
+ outline: {
1096
+ trigger: "shadow-xs border-gray-200 ui-placeholder-shown:text-gray-500 flex items-center rounded-md border text-left"
1097
+ }
1098
+ }
1099
+ },
1100
+ defaultVariants: {
1101
+ size: "md",
1102
+ variant: "outline"
1103
+ }
1104
+ });
1105
+
1106
+ // src/lib/ui/Select/Select.tsx
1107
+ var { withProvider: withProvider9, withContext: withContext13 } = createRecipeContext(selectRecipe);
1108
+ var Root16 = withProvider9(import_react30.Select.Root, "root");
1109
+ var ClearTrigger2 = withContext13(import_react30.Select.ClearTrigger, "clearTrigger");
1110
+ var Content6 = withContext13(import_react30.Select.Content, "content");
1111
+ var Control5 = withContext13(import_react30.Select.Control, "control");
1112
+ var Indicator5 = withContext13(import_react30.Select.Indicator, "indicator");
1113
+ var Item2 = withContext13(import_react30.Select.Item, "item");
1114
+ var ItemGroup = withContext13(import_react30.Select.ItemGroup, "itemGroup");
1115
+ var ItemGroupLabel = withContext13(
1116
+ import_react30.Select.ItemGroupLabel,
1117
+ "itemGroupLabel"
1118
+ );
1119
+ var ItemIndicator = withContext13(import_react30.Select.ItemIndicator, "itemIndicator");
1120
+ var ItemText2 = withContext13(import_react30.Select.ItemText, "itemText");
1121
+ var Label8 = withContext13(import_react30.Select.Label, "label");
1122
+ var List = withContext13(import_react30.Select.List, "list");
1123
+ var Positioner6 = withContext13(import_react30.Select.Positioner, "positioner");
1124
+ var Trigger6 = withContext13(import_react30.Select.Trigger, "trigger");
1125
+ var ValueText2 = withContext13(import_react30.Select.ValueText, "valueText");
1126
+ var Context12 = import_react30.Select.Context;
1127
+ var HiddenSelect = import_react30.Select.HiddenSelect;
1128
+ var ItemContext2 = import_react30.Select.ItemContext;
1129
+
1130
+ // src/lib/ui/Table/Table.tsx
1131
+ var Table_exports = {};
1132
+ __export(Table_exports, {
1133
+ Body: () => Body4,
1134
+ Cell: () => Cell,
1135
+ Footer: () => Footer4,
1136
+ Header: () => Header4,
1137
+ Heading: () => Heading,
1138
+ Root: () => Root17,
1139
+ Row: () => Row
1140
+ });
1141
+ var import_react31 = require("@ark-ui/react");
1142
+
1143
+ // src/lib/ui/Table/table.recipe.ts
1144
+ var import_tailwind_variants16 = require("tailwind-variants");
1145
+
1146
+ // src/lib/ui/Table/table.anatomy.ts
1147
+ var import_anatomy2 = require("@ark-ui/anatomy");
1148
+ var tableAnatomy = (0, import_anatomy2.createAnatomy)("table").parts(
1149
+ "root",
1150
+ "header",
1151
+ "body",
1152
+ "footer",
1153
+ "row",
1154
+ "cell",
1155
+ "heading"
1156
+ );
1157
+
1158
+ // src/lib/ui/Table/table.recipe.ts
1159
+ var tableRecipe = (0, import_tailwind_variants16.tv)({
1160
+ slots: anatomyToRecipeSlots(tableAnatomy, {
1161
+ root: "w-full whitespace-nowrap"
1162
+ }),
1163
+ variants: {
1164
+ size: {
1165
+ md: {
1166
+ root: "border-gray-200 border",
1167
+ heading: "px-3xl py-lg text-left text-xs font-medium",
1168
+ cell: "px-3xl py-xl text-sm"
1169
+ }
1170
+ },
1171
+ variant: {
1172
+ outline: {
1173
+ header: "tr:bg-white tr:border-b tr:border-gray-200",
1174
+ body: "tr:odd:bg-gray-50 tr:border-gray-200 tr:border-b tr:last:border-b-0 tr:even:bg-white"
1175
+ }
1176
+ }
1177
+ },
1178
+ defaultVariants: {
1179
+ size: "md",
1180
+ variant: "outline"
1181
+ }
1182
+ });
1183
+
1184
+ // src/lib/ui/Table/Table.tsx
1185
+ var { withProvider: withProvider10, withContext: withContext14 } = createRecipeContext(tableRecipe);
1186
+ var Root17 = withProvider10(import_react31.ark.table, "root");
1187
+ var Header4 = withContext14(import_react31.ark.thead, "header");
1188
+ var Body4 = withContext14(import_react31.ark.tbody, "body");
1189
+ var Footer4 = withContext14(import_react31.ark.tfoot, "footer");
1190
+ var Row = withContext14(import_react31.ark.tr, "row");
1191
+ var Heading = withContext14(import_react31.ark.th, "heading");
1192
+ var Cell = withContext14(import_react31.ark.td, "cell");
1193
+
1194
+ // src/lib/ui/Tabs/Tabs.tsx
1195
+ var Tabs_exports = {};
1196
+ __export(Tabs_exports, {
1197
+ Content: () => Content7,
1198
+ Context: () => Context13,
1199
+ Indicator: () => Indicator6,
1200
+ List: () => List2,
1201
+ Root: () => Root18,
1202
+ Trigger: () => Trigger7
1203
+ });
1204
+ var import_react33 = require("@ark-ui/react");
1205
+
1206
+ // src/lib/ui/Tabs/tabs.recipe.ts
1207
+ var import_react32 = require("@ark-ui/react");
1208
+ var import_tailwind_variants17 = require("tailwind-variants");
1209
+ var tabsRecipe = (0, import_tailwind_variants17.tv)({
1210
+ slots: anatomyToRecipeSlots(import_react32.tabsAnatomy),
1211
+ variants: {
1212
+ size: {
1213
+ md: {}
1214
+ },
1215
+ variant: {
1216
+ unstyled: {},
1217
+ default: {
1218
+ list: "border-gray-200 bg-gray-50 relative flex w-fit gap-md rounded-md border p-1",
1219
+ indicator: "h-[var(--height)] w-[var(--width)] bg-white",
1220
+ trigger: "z-1 text-gray-600 ui-selected:text-gray-800 relative transition-all duration-200"
1221
+ }
1222
+ }
1223
+ },
1224
+ compoundVariants: [
1225
+ {
1226
+ size: "md",
1227
+ variant: "default",
1228
+ className: {
1229
+ indicator: "rounded-sm shadow-sm",
1230
+ trigger: "px-lg py-md text-sm font-semibold"
1231
+ }
1232
+ }
1233
+ ],
1234
+ defaultVariants: {
1235
+ size: "md",
1236
+ variant: "default"
1237
+ }
1238
+ });
1239
+
1240
+ // src/lib/ui/Tabs/Tabs.tsx
1241
+ var { withContext: withContext15, withProvider: withProvider11 } = createRecipeContext(tabsRecipe);
1242
+ var Root18 = withProvider11(import_react33.Tabs.Root, "root");
1243
+ var Content7 = withContext15(import_react33.Tabs.Content, "content");
1244
+ var Indicator6 = withContext15(import_react33.Tabs.Indicator, "indicator");
1245
+ var List2 = withContext15(import_react33.Tabs.List, "list");
1246
+ var Trigger7 = withContext15(import_react33.Tabs.Trigger, "trigger");
1247
+ var Context13 = import_react33.Tabs.Context;
1248
+
1249
+ // src/lib/ui/Tooltip/Tooltip.tsx
1250
+ var Tooltip_exports = {};
1251
+ __export(Tooltip_exports, {
1252
+ Root: () => Root19
1253
+ });
1254
+ var import_react34 = require("@ark-ui/react");
1255
+ var Root19 = import_react34.Tooltip.Root;
1256
+ // Annotate the CommonJS export names for ESM import in node:
1257
+ 0 && (module.exports = {
1258
+ AlertDialog,
1259
+ Avatar,
1260
+ Badge,
1261
+ Button,
1262
+ Checkbox,
1263
+ Combobox,
1264
+ DatePicker,
1265
+ Dialog,
1266
+ Drawer,
1267
+ Field,
1268
+ IconButton,
1269
+ Menu,
1270
+ NumberInput,
1271
+ PinInput,
1272
+ Popover,
1273
+ Progress,
1274
+ SegmentGroup,
1275
+ Select,
1276
+ Table,
1277
+ Tabs,
1278
+ Tooltip
1279
+ });
1280
+ //# sourceMappingURL=ui.js.map