magick-ui 0.2.2 → 0.2.3
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/index.cjs +626 -406
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.js +626 -401
- package/dist/index.js.map +1 -1
- package/dist/schema.cjs +292 -158
- package/dist/schema.cjs.map +1 -1
- package/dist/schema.d.cts +252 -25
- package/dist/schema.d.ts +252 -25
- package/dist/schema.js +291 -158
- package/dist/schema.js.map +1 -1
- package/dist/ui/index.cjs +337 -248
- package/dist/ui/index.cjs.map +1 -1
- package/dist/ui/index.d.cts +26 -1
- package/dist/ui/index.d.ts +26 -1
- package/dist/ui/index.js +337 -243
- package/dist/ui/index.js.map +1 -1
- package/package.json +2 -1
- package/schema/component-schema.json +106 -0
package/dist/index.js
CHANGED
|
@@ -3221,6 +3221,112 @@ var component_schema_default = {
|
|
|
3221
3221
|
},
|
|
3222
3222
|
$schema: "http://json-schema.org/draft-07/schema#"
|
|
3223
3223
|
},
|
|
3224
|
+
"google-map": {
|
|
3225
|
+
$ref: "#/definitions/google-map",
|
|
3226
|
+
definitions: {
|
|
3227
|
+
"google-map": {
|
|
3228
|
+
type: "object",
|
|
3229
|
+
properties: {
|
|
3230
|
+
type: {
|
|
3231
|
+
type: "string",
|
|
3232
|
+
const: "google-map"
|
|
3233
|
+
},
|
|
3234
|
+
props: {
|
|
3235
|
+
type: "object",
|
|
3236
|
+
properties: {
|
|
3237
|
+
center: {
|
|
3238
|
+
type: "object",
|
|
3239
|
+
properties: {
|
|
3240
|
+
lat: {
|
|
3241
|
+
type: "number",
|
|
3242
|
+
description: "Center latitude"
|
|
3243
|
+
},
|
|
3244
|
+
lng: {
|
|
3245
|
+
type: "number",
|
|
3246
|
+
description: "Center longitude"
|
|
3247
|
+
}
|
|
3248
|
+
},
|
|
3249
|
+
required: [
|
|
3250
|
+
"lat",
|
|
3251
|
+
"lng"
|
|
3252
|
+
],
|
|
3253
|
+
additionalProperties: false,
|
|
3254
|
+
description: "Map center coordinates"
|
|
3255
|
+
},
|
|
3256
|
+
zoom: {
|
|
3257
|
+
type: "number",
|
|
3258
|
+
description: "Zoom level (1-20). Defaults to 12"
|
|
3259
|
+
},
|
|
3260
|
+
markers: {
|
|
3261
|
+
type: "array",
|
|
3262
|
+
items: {
|
|
3263
|
+
type: "object",
|
|
3264
|
+
properties: {
|
|
3265
|
+
lat: {
|
|
3266
|
+
type: "number",
|
|
3267
|
+
description: "Latitude"
|
|
3268
|
+
},
|
|
3269
|
+
lng: {
|
|
3270
|
+
type: "number",
|
|
3271
|
+
description: "Longitude"
|
|
3272
|
+
},
|
|
3273
|
+
title: {
|
|
3274
|
+
type: "string",
|
|
3275
|
+
description: "Marker title shown in info window"
|
|
3276
|
+
},
|
|
3277
|
+
description: {
|
|
3278
|
+
type: "string",
|
|
3279
|
+
description: "Marker description shown in info window"
|
|
3280
|
+
},
|
|
3281
|
+
color: {
|
|
3282
|
+
type: "string",
|
|
3283
|
+
description: "Marker pin color (hex or CSS color)"
|
|
3284
|
+
}
|
|
3285
|
+
},
|
|
3286
|
+
required: [
|
|
3287
|
+
"lat",
|
|
3288
|
+
"lng"
|
|
3289
|
+
],
|
|
3290
|
+
additionalProperties: false
|
|
3291
|
+
},
|
|
3292
|
+
description: "Array of map markers with lat/lng and optional info"
|
|
3293
|
+
},
|
|
3294
|
+
height: {
|
|
3295
|
+
type: "string",
|
|
3296
|
+
description: "Map height CSS value. Defaults to '400px'"
|
|
3297
|
+
},
|
|
3298
|
+
width: {
|
|
3299
|
+
type: "string",
|
|
3300
|
+
description: "Map width CSS value. Defaults to '100%'"
|
|
3301
|
+
},
|
|
3302
|
+
gestureHandling: {
|
|
3303
|
+
type: "string",
|
|
3304
|
+
enum: [
|
|
3305
|
+
"cooperative",
|
|
3306
|
+
"greedy",
|
|
3307
|
+
"none",
|
|
3308
|
+
"auto"
|
|
3309
|
+
],
|
|
3310
|
+
description: "How the map handles touch/scroll gestures. Defaults to 'cooperative'"
|
|
3311
|
+
},
|
|
3312
|
+
disableDefaultUI: {
|
|
3313
|
+
type: "boolean",
|
|
3314
|
+
description: "Hide default map controls"
|
|
3315
|
+
}
|
|
3316
|
+
},
|
|
3317
|
+
additionalProperties: false
|
|
3318
|
+
}
|
|
3319
|
+
},
|
|
3320
|
+
required: [
|
|
3321
|
+
"type",
|
|
3322
|
+
"props"
|
|
3323
|
+
],
|
|
3324
|
+
additionalProperties: false,
|
|
3325
|
+
description: "An interactive Google Map with optional markers and info windows"
|
|
3326
|
+
}
|
|
3327
|
+
},
|
|
3328
|
+
$schema: "http://json-schema.org/draft-07/schema#"
|
|
3329
|
+
},
|
|
3224
3330
|
calendar: {
|
|
3225
3331
|
$ref: "#/definitions/calendar",
|
|
3226
3332
|
definitions: {
|
|
@@ -5396,75 +5502,100 @@ var tableSchema = z45.object({
|
|
|
5396
5502
|
})
|
|
5397
5503
|
}).describe("A data table with columns and rows");
|
|
5398
5504
|
|
|
5399
|
-
// src/ui/
|
|
5505
|
+
// src/ui/Map/schema.ts
|
|
5400
5506
|
import { z as z46 } from "zod";
|
|
5401
|
-
var
|
|
5402
|
-
|
|
5507
|
+
var mapMarkerSchema = z46.object({
|
|
5508
|
+
lat: z46.number().describe("Latitude"),
|
|
5509
|
+
lng: z46.number().describe("Longitude"),
|
|
5510
|
+
title: z46.string().optional().describe("Marker title shown in info window"),
|
|
5511
|
+
description: z46.string().optional().describe("Marker description shown in info window"),
|
|
5512
|
+
color: z46.string().optional().describe("Marker pin color (hex or CSS color)")
|
|
5513
|
+
});
|
|
5514
|
+
var googleMapSchema = z46.object({
|
|
5515
|
+
type: z46.literal("google-map"),
|
|
5403
5516
|
props: z46.object({
|
|
5404
|
-
|
|
5405
|
-
|
|
5406
|
-
|
|
5407
|
-
|
|
5408
|
-
|
|
5409
|
-
|
|
5410
|
-
|
|
5411
|
-
|
|
5517
|
+
center: z46.object({
|
|
5518
|
+
lat: z46.number().describe("Center latitude"),
|
|
5519
|
+
lng: z46.number().describe("Center longitude")
|
|
5520
|
+
}).optional().describe("Map center coordinates"),
|
|
5521
|
+
zoom: z46.number().optional().describe("Zoom level (1-20). Defaults to 12"),
|
|
5522
|
+
markers: z46.array(mapMarkerSchema).optional().describe("Array of map markers with lat/lng and optional info"),
|
|
5523
|
+
height: z46.string().optional().describe("Map height CSS value. Defaults to '400px'"),
|
|
5524
|
+
width: z46.string().optional().describe("Map width CSS value. Defaults to '100%'"),
|
|
5525
|
+
gestureHandling: z46.enum(["cooperative", "greedy", "none", "auto"]).optional().describe("How the map handles touch/scroll gestures. Defaults to 'cooperative'"),
|
|
5526
|
+
disableDefaultUI: z46.boolean().optional().describe("Hide default map controls")
|
|
5527
|
+
})
|
|
5528
|
+
}).describe("An interactive Google Map with optional markers and info windows");
|
|
5412
5529
|
|
|
5413
|
-
// src/ui/
|
|
5530
|
+
// src/ui/Calendar/schema.ts
|
|
5414
5531
|
import { z as z47 } from "zod";
|
|
5415
|
-
var
|
|
5416
|
-
type: z47.literal("
|
|
5532
|
+
var calendarSchema = z47.object({
|
|
5533
|
+
type: z47.literal("calendar"),
|
|
5417
5534
|
props: z47.object({
|
|
5418
|
-
|
|
5419
|
-
|
|
5420
|
-
|
|
5421
|
-
|
|
5422
|
-
|
|
5535
|
+
showOutsideDays: z47.boolean().optional().describe("Show days from adjacent months. Defaults to true"),
|
|
5536
|
+
captionLayout: z47.enum(["label", "dropdown", "dropdown-months", "dropdown-years"]).optional().describe("Caption display mode. Defaults to 'label'"),
|
|
5537
|
+
buttonVariant: z47.enum(["primary", "secondary", "outline", "destructive", "ghost", "soft"]).optional().describe("Navigation button style. Defaults to 'ghost'"),
|
|
5538
|
+
mode: z47.enum(["single", "multiple", "range"]).optional().describe("Selection mode"),
|
|
5539
|
+
numberOfMonths: z47.number().optional().describe("Number of months to display"),
|
|
5423
5540
|
disabled: z47.boolean().optional()
|
|
5424
5541
|
}).optional()
|
|
5425
|
-
}).describe("A
|
|
5542
|
+
}).describe("A date calendar for picking dates or date ranges");
|
|
5426
5543
|
|
|
5427
|
-
// src/ui/
|
|
5544
|
+
// src/ui/FileInput/schema.ts
|
|
5428
5545
|
import { z as z48 } from "zod";
|
|
5429
|
-
var
|
|
5430
|
-
type: z48.literal("
|
|
5546
|
+
var fileInputSchema = z48.object({
|
|
5547
|
+
type: z48.literal("file-input"),
|
|
5431
5548
|
props: z48.object({
|
|
5432
|
-
|
|
5433
|
-
|
|
5549
|
+
label: z48.string().optional().describe("Label text above the input"),
|
|
5550
|
+
helperText: z48.string().optional().describe("Helper text below the input"),
|
|
5551
|
+
error: z48.boolean().optional().describe("Show error styling. Defaults to false"),
|
|
5552
|
+
accept: z48.string().optional().describe("Accepted file types, e.g. 'image/*,.pdf'"),
|
|
5553
|
+
multiple: z48.boolean().optional().describe("Allow multiple files. Defaults to false"),
|
|
5554
|
+
disabled: z48.boolean().optional()
|
|
5434
5555
|
}).optional()
|
|
5435
|
-
}).describe("A
|
|
5556
|
+
}).describe("A file input with choose-file button and upload progress");
|
|
5436
5557
|
|
|
5437
|
-
// src/ui/
|
|
5558
|
+
// src/ui/ToolToggle/schema.ts
|
|
5438
5559
|
import { z as z49 } from "zod";
|
|
5439
|
-
var
|
|
5440
|
-
type: z49.literal("toggle
|
|
5560
|
+
var toolToggleSchema = z49.object({
|
|
5561
|
+
type: z49.literal("tool-toggle"),
|
|
5441
5562
|
props: z49.object({
|
|
5442
|
-
|
|
5443
|
-
|
|
5444
|
-
|
|
5563
|
+
icon: z49.string().optional().describe("Icon name (resolved by the renderer)"),
|
|
5564
|
+
dropdown: z49.boolean().optional().describe("Show dropdown chevron")
|
|
5565
|
+
}).optional()
|
|
5566
|
+
}).describe("A round toggle button used in toolbars, optionally with a dropdown");
|
|
5567
|
+
|
|
5568
|
+
// src/ui/ToggleDropdownButton/schema.ts
|
|
5569
|
+
import { z as z50 } from "zod";
|
|
5570
|
+
var toggleDropdownButtonSchema = z50.object({
|
|
5571
|
+
type: z50.literal("toggle-dropdown-button"),
|
|
5572
|
+
props: z50.object({
|
|
5573
|
+
type: z50.enum(["text", "icon"]).describe("Button content type"),
|
|
5574
|
+
selected: z50.boolean().describe("Whether the button is selected"),
|
|
5575
|
+
variant: z50.enum(["primary", "secondary", "destructive"]).describe("Button color variant")
|
|
5445
5576
|
})
|
|
5446
5577
|
}).describe("A split toggle button with an attached dropdown trigger");
|
|
5447
5578
|
|
|
5448
5579
|
// src/ui/IconContainer/schema.ts
|
|
5449
|
-
import { z as
|
|
5450
|
-
var iconContainerSchema =
|
|
5451
|
-
type:
|
|
5452
|
-
props:
|
|
5453
|
-
icon:
|
|
5454
|
-
size:
|
|
5455
|
-
colorInFill:
|
|
5456
|
-
disableTheme:
|
|
5580
|
+
import { z as z51 } from "zod";
|
|
5581
|
+
var iconContainerSchema = z51.object({
|
|
5582
|
+
type: z51.literal("icon-container"),
|
|
5583
|
+
props: z51.object({
|
|
5584
|
+
icon: z51.string().optional().describe("Icon name (resolved by the renderer)"),
|
|
5585
|
+
size: z51.enum(["xs", "sm", "md", "lg", "xl", "2xl", "3xl", "4xl", "5xl", "6xl", "auto"]).optional().describe("Icon size. Defaults to 'sm'"),
|
|
5586
|
+
colorInFill: z51.boolean().optional().describe("Apply fill colors to SVG paths. Defaults to true"),
|
|
5587
|
+
disableTheme: z51.boolean().optional().describe("Disable theme-aware coloring. Defaults to false")
|
|
5457
5588
|
}).optional(),
|
|
5458
|
-
children:
|
|
5589
|
+
children: z51.array(uiNodeSchema).optional().describe("Icon element")
|
|
5459
5590
|
}).describe("A sized container for static icons with theme-aware coloring");
|
|
5460
5591
|
|
|
5461
5592
|
// src/ui/IconProfile/schema.ts
|
|
5462
|
-
import { z as
|
|
5463
|
-
var iconProfileSchema =
|
|
5464
|
-
type:
|
|
5465
|
-
props:
|
|
5466
|
-
icon:
|
|
5467
|
-
color:
|
|
5593
|
+
import { z as z52 } from "zod";
|
|
5594
|
+
var iconProfileSchema = z52.object({
|
|
5595
|
+
type: z52.literal("icon-profile"),
|
|
5596
|
+
props: z52.object({
|
|
5597
|
+
icon: z52.string().describe("Icon name (resolved by the renderer)"),
|
|
5598
|
+
color: z52.enum([
|
|
5468
5599
|
"red",
|
|
5469
5600
|
"orange",
|
|
5470
5601
|
"amber",
|
|
@@ -5484,18 +5615,18 @@ var iconProfileSchema = z51.object({
|
|
|
5484
5615
|
"rose",
|
|
5485
5616
|
"slate"
|
|
5486
5617
|
]).optional().describe("Background glow and icon color. Defaults to 'red'"),
|
|
5487
|
-
size:
|
|
5488
|
-
externalIcon:
|
|
5618
|
+
size: z52.enum(["26", "32", "40", "48", "56", "64"]).optional().describe("Size in pixels. Defaults to '64'"),
|
|
5619
|
+
externalIcon: z52.boolean().optional().describe("Whether the icon is external")
|
|
5489
5620
|
})
|
|
5490
5621
|
}).describe("An icon with a colored radial glow background");
|
|
5491
5622
|
|
|
5492
5623
|
// src/ui/ButtonWithTooltip/schema.ts
|
|
5493
|
-
import { z as
|
|
5494
|
-
var buttonWithTooltipSchema =
|
|
5495
|
-
type:
|
|
5496
|
-
props:
|
|
5497
|
-
content:
|
|
5498
|
-
position:
|
|
5624
|
+
import { z as z53 } from "zod";
|
|
5625
|
+
var buttonWithTooltipSchema = z53.object({
|
|
5626
|
+
type: z53.literal("button-with-tooltip"),
|
|
5627
|
+
props: z53.object({
|
|
5628
|
+
content: z53.string().describe("Tooltip text"),
|
|
5629
|
+
position: z53.enum([
|
|
5499
5630
|
"top",
|
|
5500
5631
|
"top-center",
|
|
5501
5632
|
"top-left",
|
|
@@ -5507,147 +5638,147 @@ var buttonWithTooltipSchema = z52.object({
|
|
|
5507
5638
|
"left",
|
|
5508
5639
|
"right"
|
|
5509
5640
|
]).optional().describe("Tooltip placement"),
|
|
5510
|
-
withArrow:
|
|
5641
|
+
withArrow: z53.boolean().optional().describe("Show an arrow pointer")
|
|
5511
5642
|
}),
|
|
5512
|
-
children:
|
|
5643
|
+
children: z53.array(uiNodeSchema).optional().describe("The button element to wrap with a tooltip")
|
|
5513
5644
|
}).describe("A button wrapped with a tooltip that appears on hover");
|
|
5514
5645
|
|
|
5515
5646
|
// src/ui/Sheet/schema.ts
|
|
5516
|
-
import { z as
|
|
5517
|
-
var sheetSchema =
|
|
5518
|
-
type:
|
|
5519
|
-
props:
|
|
5520
|
-
children:
|
|
5647
|
+
import { z as z54 } from "zod";
|
|
5648
|
+
var sheetSchema = z54.object({
|
|
5649
|
+
type: z54.literal("sheet"),
|
|
5650
|
+
props: z54.object({}).optional(),
|
|
5651
|
+
children: z54.array(uiNodeSchema).optional().describe("Compose with sheet-trigger and sheet-content")
|
|
5521
5652
|
}).describe("A slide-out panel overlay");
|
|
5522
|
-
var sheetTriggerSchema =
|
|
5523
|
-
type:
|
|
5524
|
-
props:
|
|
5525
|
-
children:
|
|
5653
|
+
var sheetTriggerSchema = z54.object({
|
|
5654
|
+
type: z54.literal("sheet-trigger"),
|
|
5655
|
+
props: z54.object({}).optional(),
|
|
5656
|
+
children: z54.array(uiNodeSchema).optional().describe("The element that opens the sheet")
|
|
5526
5657
|
}).describe("Trigger element that opens a sheet");
|
|
5527
|
-
var sheetContentSchema =
|
|
5528
|
-
type:
|
|
5529
|
-
props:
|
|
5530
|
-
side:
|
|
5531
|
-
showCloseButton:
|
|
5658
|
+
var sheetContentSchema = z54.object({
|
|
5659
|
+
type: z54.literal("sheet-content"),
|
|
5660
|
+
props: z54.object({
|
|
5661
|
+
side: z54.enum(["top", "right", "bottom", "left"]).optional().describe("Slide-in direction. Defaults to 'right'"),
|
|
5662
|
+
showCloseButton: z54.boolean().optional().describe("Show close button. Defaults to true")
|
|
5532
5663
|
}).optional(),
|
|
5533
|
-
children:
|
|
5664
|
+
children: z54.array(uiNodeSchema).optional().describe("Sheet body content")
|
|
5534
5665
|
}).describe("Content panel of a sheet");
|
|
5535
|
-
var sheetHeaderSchema =
|
|
5536
|
-
type:
|
|
5537
|
-
props:
|
|
5538
|
-
children:
|
|
5666
|
+
var sheetHeaderSchema = z54.object({
|
|
5667
|
+
type: z54.literal("sheet-header"),
|
|
5668
|
+
props: z54.object({}).optional(),
|
|
5669
|
+
children: z54.array(uiNodeSchema).optional()
|
|
5539
5670
|
}).describe("Header section of a sheet");
|
|
5540
|
-
var sheetFooterSchema =
|
|
5541
|
-
type:
|
|
5542
|
-
props:
|
|
5543
|
-
children:
|
|
5671
|
+
var sheetFooterSchema = z54.object({
|
|
5672
|
+
type: z54.literal("sheet-footer"),
|
|
5673
|
+
props: z54.object({}).optional(),
|
|
5674
|
+
children: z54.array(uiNodeSchema).optional()
|
|
5544
5675
|
}).describe("Footer section of a sheet");
|
|
5545
|
-
var sheetTitleSchema =
|
|
5546
|
-
type:
|
|
5547
|
-
props:
|
|
5548
|
-
children:
|
|
5676
|
+
var sheetTitleSchema = z54.object({
|
|
5677
|
+
type: z54.literal("sheet-title"),
|
|
5678
|
+
props: z54.object({
|
|
5679
|
+
children: z54.string().optional().describe("Title text")
|
|
5549
5680
|
}).optional(),
|
|
5550
|
-
children:
|
|
5681
|
+
children: z54.array(uiNodeSchema).optional()
|
|
5551
5682
|
}).describe("Title inside a sheet-header");
|
|
5552
|
-
var sheetDescriptionSchema =
|
|
5553
|
-
type:
|
|
5554
|
-
props:
|
|
5555
|
-
children:
|
|
5683
|
+
var sheetDescriptionSchema = z54.object({
|
|
5684
|
+
type: z54.literal("sheet-description"),
|
|
5685
|
+
props: z54.object({
|
|
5686
|
+
children: z54.string().optional().describe("Description text")
|
|
5556
5687
|
}).optional(),
|
|
5557
|
-
children:
|
|
5688
|
+
children: z54.array(uiNodeSchema).optional()
|
|
5558
5689
|
}).describe("Description text inside a sheet-header");
|
|
5559
5690
|
|
|
5560
5691
|
// src/ui/Dropdown/schema.ts
|
|
5561
|
-
import { z as
|
|
5562
|
-
var dropdownMenuSchema =
|
|
5563
|
-
type:
|
|
5564
|
-
props:
|
|
5565
|
-
children:
|
|
5692
|
+
import { z as z55 } from "zod";
|
|
5693
|
+
var dropdownMenuSchema = z55.object({
|
|
5694
|
+
type: z55.literal("dropdown-menu"),
|
|
5695
|
+
props: z55.object({}).optional(),
|
|
5696
|
+
children: z55.array(uiNodeSchema).optional().describe("Compose with dropdown-menu-trigger and dropdown-menu-content")
|
|
5566
5697
|
}).describe("A dropdown menu container");
|
|
5567
|
-
var dropdownMenuTriggerSchema =
|
|
5568
|
-
type:
|
|
5569
|
-
props:
|
|
5570
|
-
children:
|
|
5698
|
+
var dropdownMenuTriggerSchema = z55.object({
|
|
5699
|
+
type: z55.literal("dropdown-menu-trigger"),
|
|
5700
|
+
props: z55.object({}).optional(),
|
|
5701
|
+
children: z55.array(uiNodeSchema).optional().describe("The element that opens the dropdown")
|
|
5571
5702
|
}).describe("Trigger element that opens a dropdown menu");
|
|
5572
|
-
var dropdownMenuContentSchema =
|
|
5573
|
-
type:
|
|
5574
|
-
props:
|
|
5575
|
-
side:
|
|
5576
|
-
align:
|
|
5703
|
+
var dropdownMenuContentSchema = z55.object({
|
|
5704
|
+
type: z55.literal("dropdown-menu-content"),
|
|
5705
|
+
props: z55.object({
|
|
5706
|
+
side: z55.enum(["top", "right", "bottom", "left"]).optional(),
|
|
5707
|
+
align: z55.enum(["start", "center", "end"]).optional()
|
|
5577
5708
|
}).optional(),
|
|
5578
|
-
children:
|
|
5709
|
+
children: z55.array(uiNodeSchema).optional().describe("Menu items")
|
|
5579
5710
|
}).describe("Content panel of a dropdown menu");
|
|
5580
|
-
var dropdownMenuItemSchema =
|
|
5581
|
-
type:
|
|
5582
|
-
props:
|
|
5583
|
-
children:
|
|
5584
|
-
variant:
|
|
5585
|
-
disabled:
|
|
5711
|
+
var dropdownMenuItemSchema = z55.object({
|
|
5712
|
+
type: z55.literal("dropdown-menu-item"),
|
|
5713
|
+
props: z55.object({
|
|
5714
|
+
children: z55.string().optional().describe("Menu item text"),
|
|
5715
|
+
variant: z55.enum(["default", "destructive"]).optional().describe("Item style. Defaults to 'default'"),
|
|
5716
|
+
disabled: z55.boolean().optional()
|
|
5586
5717
|
}).optional(),
|
|
5587
|
-
children:
|
|
5718
|
+
children: z55.array(uiNodeSchema).optional()
|
|
5588
5719
|
}).describe("A single item inside a dropdown menu");
|
|
5589
|
-
var dropdownMenuSeparatorSchema =
|
|
5590
|
-
type:
|
|
5591
|
-
props:
|
|
5720
|
+
var dropdownMenuSeparatorSchema = z55.object({
|
|
5721
|
+
type: z55.literal("dropdown-menu-separator"),
|
|
5722
|
+
props: z55.object({}).optional()
|
|
5592
5723
|
}).describe("A visual separator between dropdown menu items");
|
|
5593
|
-
var dropdownMenuLabelSchema =
|
|
5594
|
-
type:
|
|
5595
|
-
props:
|
|
5596
|
-
children:
|
|
5724
|
+
var dropdownMenuLabelSchema = z55.object({
|
|
5725
|
+
type: z55.literal("dropdown-menu-label"),
|
|
5726
|
+
props: z55.object({
|
|
5727
|
+
children: z55.string().optional().describe("Label text")
|
|
5597
5728
|
}).optional(),
|
|
5598
|
-
children:
|
|
5729
|
+
children: z55.array(uiNodeSchema).optional()
|
|
5599
5730
|
}).describe("A non-interactive label inside a dropdown menu");
|
|
5600
5731
|
|
|
5601
5732
|
// src/ui/Popover/schema.ts
|
|
5602
|
-
import { z as
|
|
5603
|
-
var popoverSchema =
|
|
5604
|
-
type:
|
|
5605
|
-
props:
|
|
5606
|
-
children:
|
|
5733
|
+
import { z as z56 } from "zod";
|
|
5734
|
+
var popoverSchema = z56.object({
|
|
5735
|
+
type: z56.literal("popover"),
|
|
5736
|
+
props: z56.object({}).optional(),
|
|
5737
|
+
children: z56.array(uiNodeSchema).optional().describe("Compose with popover-trigger and popover-content")
|
|
5607
5738
|
}).describe("A popover overlay container");
|
|
5608
|
-
var popoverTriggerSchema =
|
|
5609
|
-
type:
|
|
5610
|
-
props:
|
|
5611
|
-
children:
|
|
5739
|
+
var popoverTriggerSchema = z56.object({
|
|
5740
|
+
type: z56.literal("popover-trigger"),
|
|
5741
|
+
props: z56.object({}).optional(),
|
|
5742
|
+
children: z56.array(uiNodeSchema).optional().describe("The element that opens the popover")
|
|
5612
5743
|
}).describe("Trigger element that opens a popover");
|
|
5613
|
-
var popoverContentSchema =
|
|
5614
|
-
type:
|
|
5615
|
-
props:
|
|
5616
|
-
align:
|
|
5617
|
-
sideOffset:
|
|
5744
|
+
var popoverContentSchema = z56.object({
|
|
5745
|
+
type: z56.literal("popover-content"),
|
|
5746
|
+
props: z56.object({
|
|
5747
|
+
align: z56.enum(["start", "center", "end"]).optional().describe("Alignment relative to trigger. Defaults to 'center'"),
|
|
5748
|
+
sideOffset: z56.number().optional().describe("Offset from trigger in px. Defaults to 4")
|
|
5618
5749
|
}).optional(),
|
|
5619
|
-
children:
|
|
5750
|
+
children: z56.array(uiNodeSchema).optional().describe("Popover body content")
|
|
5620
5751
|
}).describe("Content panel of a popover");
|
|
5621
5752
|
|
|
5622
5753
|
// src/ui/ContextMenu/schema.ts
|
|
5623
|
-
import { z as
|
|
5624
|
-
var contextMenuSchema =
|
|
5625
|
-
type:
|
|
5626
|
-
props:
|
|
5627
|
-
children:
|
|
5754
|
+
import { z as z57 } from "zod";
|
|
5755
|
+
var contextMenuSchema = z57.object({
|
|
5756
|
+
type: z57.literal("context-menu"),
|
|
5757
|
+
props: z57.object({}).optional(),
|
|
5758
|
+
children: z57.array(uiNodeSchema).optional().describe("Compose with context-menu-trigger and context-menu-content")
|
|
5628
5759
|
}).describe("A right-click context menu container");
|
|
5629
|
-
var contextMenuTriggerSchema =
|
|
5630
|
-
type:
|
|
5631
|
-
props:
|
|
5632
|
-
children:
|
|
5760
|
+
var contextMenuTriggerSchema = z57.object({
|
|
5761
|
+
type: z57.literal("context-menu-trigger"),
|
|
5762
|
+
props: z57.object({}).optional(),
|
|
5763
|
+
children: z57.array(uiNodeSchema).optional().describe("The element that triggers the context menu on right-click")
|
|
5633
5764
|
}).describe("Trigger area for a context menu");
|
|
5634
|
-
var contextMenuContentSchema =
|
|
5635
|
-
type:
|
|
5636
|
-
props:
|
|
5637
|
-
children:
|
|
5765
|
+
var contextMenuContentSchema = z57.object({
|
|
5766
|
+
type: z57.literal("context-menu-content"),
|
|
5767
|
+
props: z57.object({}).optional(),
|
|
5768
|
+
children: z57.array(uiNodeSchema).optional().describe("Menu items")
|
|
5638
5769
|
}).describe("Content panel of a context menu");
|
|
5639
|
-
var contextMenuItemSchema =
|
|
5640
|
-
type:
|
|
5641
|
-
props:
|
|
5642
|
-
children:
|
|
5643
|
-
variant:
|
|
5644
|
-
disabled:
|
|
5770
|
+
var contextMenuItemSchema = z57.object({
|
|
5771
|
+
type: z57.literal("context-menu-item"),
|
|
5772
|
+
props: z57.object({
|
|
5773
|
+
children: z57.string().optional().describe("Menu item text"),
|
|
5774
|
+
variant: z57.enum(["default", "destructive"]).optional().describe("Item style. Defaults to 'default'"),
|
|
5775
|
+
disabled: z57.boolean().optional()
|
|
5645
5776
|
}).optional(),
|
|
5646
|
-
children:
|
|
5777
|
+
children: z57.array(uiNodeSchema).optional()
|
|
5647
5778
|
}).describe("A single item inside a context menu");
|
|
5648
|
-
var contextMenuSeparatorSchema =
|
|
5649
|
-
type:
|
|
5650
|
-
props:
|
|
5779
|
+
var contextMenuSeparatorSchema = z57.object({
|
|
5780
|
+
type: z57.literal("context-menu-separator"),
|
|
5781
|
+
props: z57.object({}).optional()
|
|
5651
5782
|
}).describe("A visual separator between context menu items");
|
|
5652
5783
|
|
|
5653
5784
|
// src/schema.ts
|
|
@@ -9283,11 +9414,104 @@ function LinkButton({
|
|
|
9283
9414
|
);
|
|
9284
9415
|
}
|
|
9285
9416
|
|
|
9417
|
+
// src/ui/Map/index.tsx
|
|
9418
|
+
import {
|
|
9419
|
+
APIProvider,
|
|
9420
|
+
Map as GoogleMap,
|
|
9421
|
+
AdvancedMarker,
|
|
9422
|
+
InfoWindow,
|
|
9423
|
+
Pin
|
|
9424
|
+
} from "@vis.gl/react-google-maps";
|
|
9425
|
+
import { useState as useState6, useCallback as useCallback3 } from "react";
|
|
9426
|
+
import { jsx as jsx34, jsxs as jsxs25 } from "react/jsx-runtime";
|
|
9427
|
+
function MarkerWithInfo({
|
|
9428
|
+
marker,
|
|
9429
|
+
index,
|
|
9430
|
+
onMarkerClick
|
|
9431
|
+
}) {
|
|
9432
|
+
const [open, setOpen] = useState6(false);
|
|
9433
|
+
const handleClick = useCallback3(() => {
|
|
9434
|
+
setOpen((prev) => !prev);
|
|
9435
|
+
onMarkerClick?.(marker, index);
|
|
9436
|
+
}, [marker, index, onMarkerClick]);
|
|
9437
|
+
return /* @__PURE__ */ jsxs25(
|
|
9438
|
+
AdvancedMarker,
|
|
9439
|
+
{
|
|
9440
|
+
position: { lat: marker.lat, lng: marker.lng },
|
|
9441
|
+
title: marker.title,
|
|
9442
|
+
onClick: handleClick,
|
|
9443
|
+
children: [
|
|
9444
|
+
marker.color && /* @__PURE__ */ jsx34(
|
|
9445
|
+
Pin,
|
|
9446
|
+
{
|
|
9447
|
+
background: marker.color,
|
|
9448
|
+
borderColor: marker.color,
|
|
9449
|
+
glyphColor: "#fff"
|
|
9450
|
+
}
|
|
9451
|
+
),
|
|
9452
|
+
open && (marker.title || marker.description) && /* @__PURE__ */ jsx34(
|
|
9453
|
+
InfoWindow,
|
|
9454
|
+
{
|
|
9455
|
+
position: { lat: marker.lat, lng: marker.lng },
|
|
9456
|
+
onCloseClick: () => setOpen(false),
|
|
9457
|
+
children: /* @__PURE__ */ jsxs25("div", { className: "max-w-xs", children: [
|
|
9458
|
+
marker.title && /* @__PURE__ */ jsx34("h3", { className: "text-body-sm font-semibold", children: marker.title }),
|
|
9459
|
+
marker.description && /* @__PURE__ */ jsx34("p", { className: "text-body-sm text-element-inverse-gray mt-1", children: marker.description })
|
|
9460
|
+
] })
|
|
9461
|
+
}
|
|
9462
|
+
)
|
|
9463
|
+
]
|
|
9464
|
+
}
|
|
9465
|
+
);
|
|
9466
|
+
}
|
|
9467
|
+
var DEFAULT_CENTER = { lat: 16.8661, lng: 96.1951 };
|
|
9468
|
+
function GoogleMapView({
|
|
9469
|
+
apiKey,
|
|
9470
|
+
center = DEFAULT_CENTER,
|
|
9471
|
+
zoom = 12,
|
|
9472
|
+
markers = [],
|
|
9473
|
+
mapId,
|
|
9474
|
+
height = "400px",
|
|
9475
|
+
width = "100%",
|
|
9476
|
+
className,
|
|
9477
|
+
gestureHandling = "cooperative",
|
|
9478
|
+
disableDefaultUI = false,
|
|
9479
|
+
onMarkerClick
|
|
9480
|
+
}) {
|
|
9481
|
+
return /* @__PURE__ */ jsx34(APIProvider, { apiKey, children: /* @__PURE__ */ jsx34(
|
|
9482
|
+
"div",
|
|
9483
|
+
{
|
|
9484
|
+
className: cn("overflow-hidden rounded-unit-corner-radius-xl", className),
|
|
9485
|
+
style: { height, width },
|
|
9486
|
+
children: /* @__PURE__ */ jsx34(
|
|
9487
|
+
GoogleMap,
|
|
9488
|
+
{
|
|
9489
|
+
defaultCenter: center,
|
|
9490
|
+
defaultZoom: zoom,
|
|
9491
|
+
mapId,
|
|
9492
|
+
gestureHandling,
|
|
9493
|
+
disableDefaultUI,
|
|
9494
|
+
style: { width: "100%", height: "100%" },
|
|
9495
|
+
children: markers.map((marker, i) => /* @__PURE__ */ jsx34(
|
|
9496
|
+
MarkerWithInfo,
|
|
9497
|
+
{
|
|
9498
|
+
marker,
|
|
9499
|
+
index: i,
|
|
9500
|
+
onMarkerClick
|
|
9501
|
+
},
|
|
9502
|
+
`${marker.lat}-${marker.lng}-${i}`
|
|
9503
|
+
))
|
|
9504
|
+
}
|
|
9505
|
+
)
|
|
9506
|
+
}
|
|
9507
|
+
) });
|
|
9508
|
+
}
|
|
9509
|
+
|
|
9286
9510
|
// src/ui/Media/index.tsx
|
|
9287
9511
|
import { cva as cva10 } from "class-variance-authority";
|
|
9288
9512
|
import { Pause, Play } from "lucide-react";
|
|
9289
9513
|
import * as React10 from "react";
|
|
9290
|
-
import { Fragment as Fragment5, jsx as
|
|
9514
|
+
import { Fragment as Fragment5, jsx as jsx35, jsxs as jsxs26 } from "react/jsx-runtime";
|
|
9291
9515
|
var mediaVariants = cva10(
|
|
9292
9516
|
"relative overflow-hidden bg-gray-100 dark:bg-gray-800",
|
|
9293
9517
|
{
|
|
@@ -9385,7 +9609,7 @@ var Media = React10.forwardRef(
|
|
|
9385
9609
|
const handleImageError = () => {
|
|
9386
9610
|
setImageError(true);
|
|
9387
9611
|
};
|
|
9388
|
-
return /* @__PURE__ */
|
|
9612
|
+
return /* @__PURE__ */ jsx35(
|
|
9389
9613
|
"div",
|
|
9390
9614
|
{
|
|
9391
9615
|
ref,
|
|
@@ -9393,8 +9617,8 @@ var Media = React10.forwardRef(
|
|
|
9393
9617
|
onMouseEnter: () => setIsHovered(true),
|
|
9394
9618
|
onMouseLeave: () => setIsHovered(false),
|
|
9395
9619
|
...props,
|
|
9396
|
-
children: type === "image" ? /* @__PURE__ */
|
|
9397
|
-
/* @__PURE__ */
|
|
9620
|
+
children: type === "image" ? /* @__PURE__ */ jsxs26(Fragment5, { children: [
|
|
9621
|
+
/* @__PURE__ */ jsx35(
|
|
9398
9622
|
"img",
|
|
9399
9623
|
{
|
|
9400
9624
|
src,
|
|
@@ -9412,13 +9636,13 @@ var Media = React10.forwardRef(
|
|
|
9412
9636
|
style: { objectFit }
|
|
9413
9637
|
}
|
|
9414
9638
|
),
|
|
9415
|
-
!imageLoaded && !imageError && /* @__PURE__ */
|
|
9416
|
-
imageError && /* @__PURE__ */
|
|
9417
|
-
/* @__PURE__ */
|
|
9418
|
-
/* @__PURE__ */
|
|
9639
|
+
!imageLoaded && !imageError && /* @__PURE__ */ jsx35("div", { className: "absolute inset-0 flex items-center justify-center bg-gray-200 dark:bg-gray-700", children: /* @__PURE__ */ jsx35("div", { className: "h-8 w-8 animate-spin rounded-full border-2 border-gray-300 border-t-gray-600" }) }),
|
|
9640
|
+
imageError && /* @__PURE__ */ jsx35("div", { className: "absolute inset-0 flex items-center justify-center bg-gray-200 dark:bg-gray-700", children: /* @__PURE__ */ jsxs26("div", { className: "text-center text-gray-500", children: [
|
|
9641
|
+
/* @__PURE__ */ jsx35("div", { className: "text-2xl", children: "\u{1F4F7}" }),
|
|
9642
|
+
/* @__PURE__ */ jsx35("div", { className: "text-sm", children: "Failed to load" })
|
|
9419
9643
|
] }) })
|
|
9420
|
-
] }) : /* @__PURE__ */
|
|
9421
|
-
/* @__PURE__ */
|
|
9644
|
+
] }) : /* @__PURE__ */ jsxs26(Fragment5, { children: [
|
|
9645
|
+
/* @__PURE__ */ jsx35(
|
|
9422
9646
|
"video",
|
|
9423
9647
|
{
|
|
9424
9648
|
ref: videoRef,
|
|
@@ -9431,7 +9655,7 @@ var Media = React10.forwardRef(
|
|
|
9431
9655
|
preload: "metadata"
|
|
9432
9656
|
}
|
|
9433
9657
|
),
|
|
9434
|
-
showPlayButton && /* @__PURE__ */
|
|
9658
|
+
showPlayButton && /* @__PURE__ */ jsx35(
|
|
9435
9659
|
"div",
|
|
9436
9660
|
{
|
|
9437
9661
|
className: cn(
|
|
@@ -9441,10 +9665,10 @@ var Media = React10.forwardRef(
|
|
|
9441
9665
|
"opacity-0": !isHovered && !videoPlaying
|
|
9442
9666
|
}
|
|
9443
9667
|
),
|
|
9444
|
-
children: /* @__PURE__ */
|
|
9668
|
+
children: /* @__PURE__ */ jsx35(
|
|
9445
9669
|
IconButton,
|
|
9446
9670
|
{
|
|
9447
|
-
icon: videoPlaying ? /* @__PURE__ */
|
|
9671
|
+
icon: videoPlaying ? /* @__PURE__ */ jsx35(Pause, { className: "text-gray-900" }) : /* @__PURE__ */ jsx35(Play, { className: "ml-1 text-gray-900" }),
|
|
9448
9672
|
onClick: videoPlaying ? handlePause : handlePlay,
|
|
9449
9673
|
varient: "outline",
|
|
9450
9674
|
size: "md",
|
|
@@ -9465,7 +9689,7 @@ Media.displayName = "Media";
|
|
|
9465
9689
|
// src/ui/MultiSelect/index.tsx
|
|
9466
9690
|
import { ChevronDown as ChevronDown2, CircleXIcon, X as X3 } from "lucide-react";
|
|
9467
9691
|
import * as React11 from "react";
|
|
9468
|
-
import { jsx as
|
|
9692
|
+
import { jsx as jsx36, jsxs as jsxs27 } from "react/jsx-runtime";
|
|
9469
9693
|
function MultiSelect({
|
|
9470
9694
|
options,
|
|
9471
9695
|
selected,
|
|
@@ -9538,8 +9762,8 @@ function MultiSelect({
|
|
|
9538
9762
|
e.preventDefault();
|
|
9539
9763
|
inputRef.current?.focus();
|
|
9540
9764
|
};
|
|
9541
|
-
return /* @__PURE__ */
|
|
9542
|
-
/* @__PURE__ */
|
|
9765
|
+
return /* @__PURE__ */ jsxs27(Popover, { open, onOpenChange: setOpen, children: [
|
|
9766
|
+
/* @__PURE__ */ jsx36(PopoverTrigger, { asChild: true, children: /* @__PURE__ */ jsxs27(
|
|
9543
9767
|
"div",
|
|
9544
9768
|
{
|
|
9545
9769
|
ref: containerRef,
|
|
@@ -9551,10 +9775,10 @@ function MultiSelect({
|
|
|
9551
9775
|
),
|
|
9552
9776
|
onClick: handleContainerClick,
|
|
9553
9777
|
children: [
|
|
9554
|
-
/* @__PURE__ */
|
|
9778
|
+
/* @__PURE__ */ jsxs27("div", { className: "flex flex-1 flex-wrap items-center gap-1", children: [
|
|
9555
9779
|
selected.map((value) => {
|
|
9556
9780
|
const option = options.find((opt) => opt.value === value);
|
|
9557
|
-
return /* @__PURE__ */
|
|
9781
|
+
return /* @__PURE__ */ jsx36(
|
|
9558
9782
|
Chip,
|
|
9559
9783
|
{
|
|
9560
9784
|
label: option?.label || value,
|
|
@@ -9565,12 +9789,12 @@ function MultiSelect({
|
|
|
9565
9789
|
className: cn(
|
|
9566
9790
|
disabled && "pointer-events-none cursor-not-allowed"
|
|
9567
9791
|
),
|
|
9568
|
-
children: /* @__PURE__ */
|
|
9792
|
+
children: /* @__PURE__ */ jsx36(X3, { className: "hover:text-destructive ml-1.5 h-3 w-3 cursor-pointer" })
|
|
9569
9793
|
},
|
|
9570
9794
|
value
|
|
9571
9795
|
);
|
|
9572
9796
|
}),
|
|
9573
|
-
/* @__PURE__ */
|
|
9797
|
+
/* @__PURE__ */ jsx36(
|
|
9574
9798
|
"input",
|
|
9575
9799
|
{
|
|
9576
9800
|
ref: inputRef,
|
|
@@ -9584,25 +9808,25 @@ function MultiSelect({
|
|
|
9584
9808
|
}
|
|
9585
9809
|
)
|
|
9586
9810
|
] }),
|
|
9587
|
-
selected.length > 0 && /* @__PURE__ */
|
|
9811
|
+
selected.length > 0 && /* @__PURE__ */ jsx36(
|
|
9588
9812
|
CircleXIcon,
|
|
9589
9813
|
{
|
|
9590
9814
|
className: "text-icon-default size-4.5 shrink-0",
|
|
9591
9815
|
onClick: () => onChange([])
|
|
9592
9816
|
}
|
|
9593
9817
|
),
|
|
9594
|
-
!createConfig?.enabled && /* @__PURE__ */
|
|
9818
|
+
!createConfig?.enabled && /* @__PURE__ */ jsx36(ChevronDown2, { className: "text-icon-default size-4.5 shrink-0" })
|
|
9595
9819
|
]
|
|
9596
9820
|
}
|
|
9597
9821
|
) }),
|
|
9598
|
-
/* @__PURE__ */
|
|
9822
|
+
/* @__PURE__ */ jsx36(
|
|
9599
9823
|
PopoverContent,
|
|
9600
9824
|
{
|
|
9601
9825
|
className: "shadow-box w-[var(--radix-popover-trigger-width)] border-none bg-white p-2",
|
|
9602
9826
|
align: "start",
|
|
9603
|
-
children: /* @__PURE__ */
|
|
9604
|
-
createConfig?.enabled && /* @__PURE__ */
|
|
9605
|
-
filteredOptions.map((option) => /* @__PURE__ */
|
|
9827
|
+
children: /* @__PURE__ */ jsx36("div", { className: "p-0", children: /* @__PURE__ */ jsx36("div", { className: "max-h-[300px] overflow-y-auto", children: filteredOptions.length === 0 && !canCreate ? /* @__PURE__ */ jsx36("div", { className: "py-6 text-center text-gray-500", children: inputValue ? "No results found." : "Start typing to search..." }) : /* @__PURE__ */ jsxs27("div", { className: "flex flex-col gap-1.5 px-1.5 pt-1.5 pb-0.5", children: [
|
|
9828
|
+
createConfig?.enabled && /* @__PURE__ */ jsx36("p", { className: "text-text-default pb-0.5 font-semibold", children: "Select or create one" }),
|
|
9829
|
+
filteredOptions.map((option) => /* @__PURE__ */ jsx36(
|
|
9606
9830
|
Chip,
|
|
9607
9831
|
{
|
|
9608
9832
|
label: option.label,
|
|
@@ -9611,14 +9835,14 @@ function MultiSelect({
|
|
|
9611
9835
|
},
|
|
9612
9836
|
option.value
|
|
9613
9837
|
)),
|
|
9614
|
-
canCreate && /* @__PURE__ */
|
|
9838
|
+
canCreate && /* @__PURE__ */ jsxs27(
|
|
9615
9839
|
"div",
|
|
9616
9840
|
{
|
|
9617
9841
|
onClick: async () => await handleCreate(),
|
|
9618
9842
|
className: "flex items-center justify-between",
|
|
9619
9843
|
children: [
|
|
9620
|
-
/* @__PURE__ */
|
|
9621
|
-
/* @__PURE__ */
|
|
9844
|
+
/* @__PURE__ */ jsx36(Chip, { label: inputValue.trim(), className: "rounded-md" }),
|
|
9845
|
+
/* @__PURE__ */ jsx36(
|
|
9622
9846
|
Button,
|
|
9623
9847
|
{
|
|
9624
9848
|
variant: "ghost",
|
|
@@ -9642,7 +9866,7 @@ import {
|
|
|
9642
9866
|
OTPInputContext as BaseOTPInputContext
|
|
9643
9867
|
} from "input-otp";
|
|
9644
9868
|
import * as React12 from "react";
|
|
9645
|
-
import { jsx as
|
|
9869
|
+
import { jsx as jsx37, jsxs as jsxs28 } from "react/jsx-runtime";
|
|
9646
9870
|
function OTPInput({
|
|
9647
9871
|
type = 4,
|
|
9648
9872
|
separate = false,
|
|
@@ -9650,8 +9874,8 @@ function OTPInput({
|
|
|
9650
9874
|
className,
|
|
9651
9875
|
...props
|
|
9652
9876
|
}) {
|
|
9653
|
-
return /* @__PURE__ */
|
|
9654
|
-
/* @__PURE__ */
|
|
9877
|
+
return /* @__PURE__ */ jsx37("div", { className: cn(className), children: /* @__PURE__ */ jsxs28(InputOTP, { disabled, className: "w-full", ...props, children: [
|
|
9878
|
+
/* @__PURE__ */ jsx37(InputOTPGroup, { className: "w-full", children: [...new Array(type / 2)].map((_, index) => /* @__PURE__ */ jsx37(
|
|
9655
9879
|
InputOTPSlot,
|
|
9656
9880
|
{
|
|
9657
9881
|
className: "w-full",
|
|
@@ -9660,8 +9884,8 @@ function OTPInput({
|
|
|
9660
9884
|
},
|
|
9661
9885
|
index
|
|
9662
9886
|
)) }),
|
|
9663
|
-
separate && /* @__PURE__ */
|
|
9664
|
-
/* @__PURE__ */
|
|
9887
|
+
separate && /* @__PURE__ */ jsx37(InputOTPSeparator, {}),
|
|
9888
|
+
/* @__PURE__ */ jsx37(InputOTPGroup, { className: "w-full", children: [...new Array(type / 2)].map((_, index) => /* @__PURE__ */ jsx37(
|
|
9665
9889
|
InputOTPSlot,
|
|
9666
9890
|
{
|
|
9667
9891
|
className: "w-full",
|
|
@@ -9677,7 +9901,7 @@ function InputOTP({
|
|
|
9677
9901
|
containerClassName,
|
|
9678
9902
|
...props
|
|
9679
9903
|
}) {
|
|
9680
|
-
return /* @__PURE__ */
|
|
9904
|
+
return /* @__PURE__ */ jsx37(
|
|
9681
9905
|
BaseOTPInput,
|
|
9682
9906
|
{
|
|
9683
9907
|
"data-slot": "input-otp",
|
|
@@ -9688,7 +9912,7 @@ function InputOTP({
|
|
|
9688
9912
|
);
|
|
9689
9913
|
}
|
|
9690
9914
|
function InputOTPGroup({ className, ...props }) {
|
|
9691
|
-
return /* @__PURE__ */
|
|
9915
|
+
return /* @__PURE__ */ jsx37(
|
|
9692
9916
|
"div",
|
|
9693
9917
|
{
|
|
9694
9918
|
"data-slot": "input-otp-group",
|
|
@@ -9706,7 +9930,7 @@ function InputOTPSlot({
|
|
|
9706
9930
|
}) {
|
|
9707
9931
|
const inputOTPContext = React12.useContext(BaseOTPInputContext);
|
|
9708
9932
|
const { char, hasFakeCaret, isActive } = inputOTPContext?.slots[index] ?? {};
|
|
9709
|
-
return /* @__PURE__ */
|
|
9933
|
+
return /* @__PURE__ */ jsxs28(
|
|
9710
9934
|
"div",
|
|
9711
9935
|
{
|
|
9712
9936
|
"data-slot": "input-otp-slot",
|
|
@@ -9721,26 +9945,26 @@ function InputOTPSlot({
|
|
|
9721
9945
|
),
|
|
9722
9946
|
...props,
|
|
9723
9947
|
children: [
|
|
9724
|
-
/* @__PURE__ */
|
|
9725
|
-
hasFakeCaret && /* @__PURE__ */
|
|
9948
|
+
/* @__PURE__ */ jsx37("span", { className: "text-h6", children: char || placeholder }),
|
|
9949
|
+
hasFakeCaret && /* @__PURE__ */ jsx37("div", { className: "pointer-events-none absolute inset-0 flex items-center justify-center", children: /* @__PURE__ */ jsx37("div", { className: "animate-caret-blink bg-foreground h-4 w-px duration-1000" }) })
|
|
9726
9950
|
]
|
|
9727
9951
|
}
|
|
9728
9952
|
);
|
|
9729
9953
|
}
|
|
9730
9954
|
function InputOTPSeparator({ ...props }) {
|
|
9731
|
-
return /* @__PURE__ */
|
|
9955
|
+
return /* @__PURE__ */ jsx37("div", { "data-slot": "input-otp-separator", role: "separator", ...props, children: /* @__PURE__ */ jsx37("div", { className: "bg-border-primary-normal h-0.5 w-2" }) });
|
|
9732
9956
|
}
|
|
9733
9957
|
|
|
9734
9958
|
// src/ui/PasswordInput/index.tsx
|
|
9735
9959
|
import * as React13 from "react";
|
|
9736
9960
|
import { Eye, EyeOff } from "lucide-react";
|
|
9737
|
-
import { jsx as
|
|
9961
|
+
import { jsx as jsx38, jsxs as jsxs29 } from "react/jsx-runtime";
|
|
9738
9962
|
var PasswordInput = React13.memo(
|
|
9739
9963
|
({ type, label, className, ...props }) => {
|
|
9740
9964
|
const [showPassword, setShowPassword] = React13.useState(false);
|
|
9741
9965
|
const error = props["aria-invalid"] || false;
|
|
9742
9966
|
const inputRef = React13.useRef(null);
|
|
9743
|
-
return /* @__PURE__ */
|
|
9967
|
+
return /* @__PURE__ */ jsxs29(
|
|
9744
9968
|
"div",
|
|
9745
9969
|
{
|
|
9746
9970
|
className: cn(
|
|
@@ -9760,7 +9984,7 @@ var PasswordInput = React13.memo(
|
|
|
9760
9984
|
}
|
|
9761
9985
|
),
|
|
9762
9986
|
children: [
|
|
9763
|
-
/* @__PURE__ */
|
|
9987
|
+
/* @__PURE__ */ jsx38(
|
|
9764
9988
|
"input",
|
|
9765
9989
|
{
|
|
9766
9990
|
ref: inputRef,
|
|
@@ -9784,7 +10008,7 @@ var PasswordInput = React13.memo(
|
|
|
9784
10008
|
}
|
|
9785
10009
|
}
|
|
9786
10010
|
),
|
|
9787
|
-
/* @__PURE__ */
|
|
10011
|
+
/* @__PURE__ */ jsx38(
|
|
9788
10012
|
"button",
|
|
9789
10013
|
{
|
|
9790
10014
|
tabIndex: -1,
|
|
@@ -9793,7 +10017,7 @@ var PasswordInput = React13.memo(
|
|
|
9793
10017
|
onClick: () => setShowPassword(!showPassword),
|
|
9794
10018
|
"aria-label": showPassword ? "Hide password" : "Show password",
|
|
9795
10019
|
className: "hover:bg-primary-bg-soft absolute right-2 flex h-5 w-5 cursor-pointer items-center justify-center rounded-sm bg-white",
|
|
9796
|
-
children: showPassword ? /* @__PURE__ */
|
|
10020
|
+
children: showPassword ? /* @__PURE__ */ jsx38(Eye, { size: 16, className: "text-element-inverse-default-alt" }) : /* @__PURE__ */ jsx38(EyeOff, { size: 16, className: "text-element-inverse-default-alt" })
|
|
9797
10021
|
}
|
|
9798
10022
|
)
|
|
9799
10023
|
]
|
|
@@ -9805,16 +10029,16 @@ var PasswordInput = React13.memo(
|
|
|
9805
10029
|
// src/ui/Radio/index.tsx
|
|
9806
10030
|
import * as RadioGroupPrimitive from "@radix-ui/react-radio-group";
|
|
9807
10031
|
import { CircleIcon as CircleIcon2 } from "lucide-react";
|
|
9808
|
-
import { jsx as
|
|
10032
|
+
import { jsx as jsx39, jsxs as jsxs30 } from "react/jsx-runtime";
|
|
9809
10033
|
function Radio({ onSelect, options, ...props }) {
|
|
9810
|
-
return /* @__PURE__ */
|
|
9811
|
-
return /* @__PURE__ */
|
|
10034
|
+
return /* @__PURE__ */ jsx39(BaseRadioGroup, { ...props, children: options.map((option) => {
|
|
10035
|
+
return /* @__PURE__ */ jsxs30(
|
|
9812
10036
|
Label2,
|
|
9813
10037
|
{
|
|
9814
10038
|
htmlFor: option.value,
|
|
9815
10039
|
className: "hover:bg-surface-bg flex cursor-pointer items-center gap-x-2 rounded-lg p-1.5",
|
|
9816
10040
|
children: [
|
|
9817
|
-
/* @__PURE__ */
|
|
10041
|
+
/* @__PURE__ */ jsx39(
|
|
9818
10042
|
BaseRadioGroupItem,
|
|
9819
10043
|
{
|
|
9820
10044
|
onClick: () => {
|
|
@@ -9835,7 +10059,7 @@ function BaseRadioGroup({
|
|
|
9835
10059
|
className,
|
|
9836
10060
|
...props
|
|
9837
10061
|
}) {
|
|
9838
|
-
return /* @__PURE__ */
|
|
10062
|
+
return /* @__PURE__ */ jsx39(
|
|
9839
10063
|
RadioGroupPrimitive.Root,
|
|
9840
10064
|
{
|
|
9841
10065
|
"data-slot": "radio-group",
|
|
@@ -9848,7 +10072,7 @@ function BaseRadioGroupItem({
|
|
|
9848
10072
|
className,
|
|
9849
10073
|
...props
|
|
9850
10074
|
}) {
|
|
9851
|
-
return /* @__PURE__ */
|
|
10075
|
+
return /* @__PURE__ */ jsx39(
|
|
9852
10076
|
RadioGroupPrimitive.Item,
|
|
9853
10077
|
{
|
|
9854
10078
|
"data-slot": "radio-group-item",
|
|
@@ -9857,12 +10081,12 @@ function BaseRadioGroupItem({
|
|
|
9857
10081
|
className
|
|
9858
10082
|
),
|
|
9859
10083
|
...props,
|
|
9860
|
-
children: /* @__PURE__ */
|
|
10084
|
+
children: /* @__PURE__ */ jsx39(
|
|
9861
10085
|
RadioGroupPrimitive.Indicator,
|
|
9862
10086
|
{
|
|
9863
10087
|
"data-slot": "radio-group-indicator",
|
|
9864
10088
|
className: "relative flex items-center justify-center",
|
|
9865
|
-
children: /* @__PURE__ */
|
|
10089
|
+
children: /* @__PURE__ */ jsx39(CircleIcon2, { className: "fill-check-box-and-radio-checked-enabled group-data-[state=checked]:hover:fill-check-box-and-radio-checked-hovered absolute top-1/2 left-1/2 size-[16px] -translate-x-1/2 -translate-y-1/2 stroke-none" })
|
|
9866
10090
|
}
|
|
9867
10091
|
)
|
|
9868
10092
|
}
|
|
@@ -9873,8 +10097,8 @@ function BaseRadioGroupItem({
|
|
|
9873
10097
|
import { debounce } from "lodash";
|
|
9874
10098
|
import { SearchIcon as SearchIcon2 } from "lucide-react";
|
|
9875
10099
|
import { useQueryState } from "nuqs";
|
|
9876
|
-
import { useCallback as
|
|
9877
|
-
import { jsx as
|
|
10100
|
+
import { useCallback as useCallback4, useEffect as useEffect6, useState as useState10 } from "react";
|
|
10101
|
+
import { jsx as jsx40 } from "react/jsx-runtime";
|
|
9878
10102
|
function SearchInput({
|
|
9879
10103
|
searchKey,
|
|
9880
10104
|
placeholder = "Search by...",
|
|
@@ -9886,8 +10110,8 @@ function SearchInput({
|
|
|
9886
10110
|
const [search, setSearch] = useQueryState(searchKey, {
|
|
9887
10111
|
defaultValue: ""
|
|
9888
10112
|
});
|
|
9889
|
-
const [inputValue, setInputValue] =
|
|
9890
|
-
const debouncedSetValue =
|
|
10113
|
+
const [inputValue, setInputValue] = useState10(search ?? "");
|
|
10114
|
+
const debouncedSetValue = useCallback4(
|
|
9891
10115
|
debounce((value) => {
|
|
9892
10116
|
if (addToParam) {
|
|
9893
10117
|
setSearch(value);
|
|
@@ -9903,7 +10127,7 @@ function SearchInput({
|
|
|
9903
10127
|
debouncedSetValue.cancel();
|
|
9904
10128
|
};
|
|
9905
10129
|
}, [inputValue, debouncedSetValue]);
|
|
9906
|
-
return /* @__PURE__ */
|
|
10130
|
+
return /* @__PURE__ */ jsx40("div", { className: cn("relative", className), children: /* @__PURE__ */ jsx40(
|
|
9907
10131
|
Input,
|
|
9908
10132
|
{
|
|
9909
10133
|
onChange: (e) => {
|
|
@@ -9912,7 +10136,7 @@ function SearchInput({
|
|
|
9912
10136
|
},
|
|
9913
10137
|
placeholder,
|
|
9914
10138
|
prefixNode: {
|
|
9915
|
-
node: /* @__PURE__ */
|
|
10139
|
+
node: /* @__PURE__ */ jsx40(SearchIcon2, { className: "text-element-inverse-default" }),
|
|
9916
10140
|
withBorder: false
|
|
9917
10141
|
},
|
|
9918
10142
|
value: inputValue,
|
|
@@ -9925,7 +10149,7 @@ function SearchInput({
|
|
|
9925
10149
|
// src/ui/SelectHover/index.tsx
|
|
9926
10150
|
import { Check as Check2 } from "lucide-react";
|
|
9927
10151
|
import * as React14 from "react";
|
|
9928
|
-
import { jsx as
|
|
10152
|
+
import { jsx as jsx41, jsxs as jsxs31 } from "react/jsx-runtime";
|
|
9929
10153
|
function SelectHover({
|
|
9930
10154
|
options,
|
|
9931
10155
|
placeholder = "Select an option",
|
|
@@ -9952,15 +10176,15 @@ function SelectHover({
|
|
|
9952
10176
|
setIsOpen(false);
|
|
9953
10177
|
}, 300);
|
|
9954
10178
|
};
|
|
9955
|
-
return /* @__PURE__ */
|
|
9956
|
-
/* @__PURE__ */
|
|
9957
|
-
/* @__PURE__ */
|
|
10179
|
+
return /* @__PURE__ */ jsx41(Popover, { open: isOpen, onOpenChange: setIsOpen, children: /* @__PURE__ */ jsxs31("div", { onMouseEnter: handleMouseEnter, onMouseLeave: handleMouseLeave, children: [
|
|
10180
|
+
/* @__PURE__ */ jsx41(PopoverTrigger, { asChild: true, children: /* @__PURE__ */ jsx41(Button, { role: "combobox", "aria-expanded": isOpen, className, children: /* @__PURE__ */ jsx41("span", { className: "truncate", children: selectedOption ? selectedOption.label : placeholder }) }) }),
|
|
10181
|
+
/* @__PURE__ */ jsx41(
|
|
9958
10182
|
PopoverContent,
|
|
9959
10183
|
{
|
|
9960
10184
|
className: "bg-surface-bg-container w-full rounded-3xl border-none p-2 shadow-md",
|
|
9961
10185
|
onMouseEnter: handleMouseEnter,
|
|
9962
10186
|
onMouseLeave: handleMouseLeave,
|
|
9963
|
-
children: /* @__PURE__ */
|
|
10187
|
+
children: /* @__PURE__ */ jsx41("div", { className: "flex max-h-[300px] flex-col items-start gap-[2px] overflow-auto", children: options.map((option) => /* @__PURE__ */ jsxs31(
|
|
9964
10188
|
"button",
|
|
9965
10189
|
{
|
|
9966
10190
|
className: cn(
|
|
@@ -9969,8 +10193,8 @@ function SelectHover({
|
|
|
9969
10193
|
),
|
|
9970
10194
|
onClick: () => handleSelect(option.value),
|
|
9971
10195
|
children: [
|
|
9972
|
-
/* @__PURE__ */
|
|
9973
|
-
value === option.value && /* @__PURE__ */
|
|
10196
|
+
/* @__PURE__ */ jsx41("span", { className: "flex-1", children: option.label }),
|
|
10197
|
+
value === option.value && /* @__PURE__ */ jsx41(Check2, { className: "text-icon-secondary ml-2 h-4 w-4" })
|
|
9974
10198
|
]
|
|
9975
10199
|
},
|
|
9976
10200
|
option.value
|
|
@@ -9983,7 +10207,7 @@ function SelectHover({
|
|
|
9983
10207
|
// src/ui/SelectInput/index.tsx
|
|
9984
10208
|
import * as SelectPrimitive from "@radix-ui/react-select";
|
|
9985
10209
|
import { CheckIcon as CheckIcon4, ChevronDownIcon as ChevronDownIcon3, ChevronUpIcon } from "lucide-react";
|
|
9986
|
-
import { jsx as
|
|
10210
|
+
import { jsx as jsx42, jsxs as jsxs32 } from "react/jsx-runtime";
|
|
9987
10211
|
function SelectInput({
|
|
9988
10212
|
defaultValue,
|
|
9989
10213
|
options,
|
|
@@ -9996,8 +10220,8 @@ function SelectInput({
|
|
|
9996
10220
|
itemProps,
|
|
9997
10221
|
...props
|
|
9998
10222
|
}) {
|
|
9999
|
-
return /* @__PURE__ */
|
|
10000
|
-
/* @__PURE__ */
|
|
10223
|
+
return /* @__PURE__ */ jsxs32(BaseSelect, { onValueChange: onChange, defaultValue, ...props, children: [
|
|
10224
|
+
/* @__PURE__ */ jsx42(
|
|
10001
10225
|
BaseSelectTrigger,
|
|
10002
10226
|
{
|
|
10003
10227
|
withArrow,
|
|
@@ -10005,7 +10229,7 @@ function SelectInput({
|
|
|
10005
10229
|
"aria-invalid": props["aria-invalid"],
|
|
10006
10230
|
className: cn("w-full cursor-pointer", className),
|
|
10007
10231
|
variant,
|
|
10008
|
-
children: /* @__PURE__ */
|
|
10232
|
+
children: /* @__PURE__ */ jsx42(
|
|
10009
10233
|
BaseSelectValue,
|
|
10010
10234
|
{
|
|
10011
10235
|
className: "flex-1",
|
|
@@ -10014,7 +10238,7 @@ function SelectInput({
|
|
|
10014
10238
|
)
|
|
10015
10239
|
}
|
|
10016
10240
|
),
|
|
10017
|
-
/* @__PURE__ */
|
|
10241
|
+
/* @__PURE__ */ jsx42(
|
|
10018
10242
|
BaseSelectContent,
|
|
10019
10243
|
{
|
|
10020
10244
|
...contentProps,
|
|
@@ -10022,7 +10246,7 @@ function SelectInput({
|
|
|
10022
10246
|
"border-stroke-inverse-slate-02 border",
|
|
10023
10247
|
contentProps?.className
|
|
10024
10248
|
),
|
|
10025
|
-
children: options.map((option) => /* @__PURE__ */
|
|
10249
|
+
children: options.map((option) => /* @__PURE__ */ jsxs32(
|
|
10026
10250
|
BaseSelectItem,
|
|
10027
10251
|
{
|
|
10028
10252
|
value: option.value,
|
|
@@ -10042,12 +10266,12 @@ function SelectInput({
|
|
|
10042
10266
|
function BaseSelect({
|
|
10043
10267
|
...props
|
|
10044
10268
|
}) {
|
|
10045
|
-
return /* @__PURE__ */
|
|
10269
|
+
return /* @__PURE__ */ jsx42(SelectPrimitive.Root, { "data-slot": "select", ...props });
|
|
10046
10270
|
}
|
|
10047
10271
|
function BaseSelectValue({
|
|
10048
10272
|
...props
|
|
10049
10273
|
}) {
|
|
10050
|
-
return /* @__PURE__ */
|
|
10274
|
+
return /* @__PURE__ */ jsx42(SelectPrimitive.Value, { "data-slot": "select-value", ...props });
|
|
10051
10275
|
}
|
|
10052
10276
|
function BaseSelectTrigger({
|
|
10053
10277
|
className,
|
|
@@ -10057,7 +10281,7 @@ function BaseSelectTrigger({
|
|
|
10057
10281
|
children,
|
|
10058
10282
|
...props
|
|
10059
10283
|
}) {
|
|
10060
|
-
return /* @__PURE__ */
|
|
10284
|
+
return /* @__PURE__ */ jsxs32(
|
|
10061
10285
|
SelectPrimitive.Trigger,
|
|
10062
10286
|
{
|
|
10063
10287
|
"data-slot": "select-trigger",
|
|
@@ -10078,7 +10302,7 @@ function BaseSelectTrigger({
|
|
|
10078
10302
|
...props,
|
|
10079
10303
|
children: [
|
|
10080
10304
|
children,
|
|
10081
|
-
withArrow && /* @__PURE__ */
|
|
10305
|
+
withArrow && /* @__PURE__ */ jsx42(SelectPrimitive.Icon, { asChild: true, children: /* @__PURE__ */ jsx42(ChevronDownIcon3, { className: "text-icon-default size-4" }) })
|
|
10082
10306
|
]
|
|
10083
10307
|
}
|
|
10084
10308
|
);
|
|
@@ -10089,7 +10313,7 @@ function BaseSelectContent({
|
|
|
10089
10313
|
position = "popper",
|
|
10090
10314
|
...props
|
|
10091
10315
|
}) {
|
|
10092
|
-
return /* @__PURE__ */
|
|
10316
|
+
return /* @__PURE__ */ jsx42(SelectPrimitive.Portal, { children: /* @__PURE__ */ jsxs32(
|
|
10093
10317
|
SelectPrimitive.Content,
|
|
10094
10318
|
{
|
|
10095
10319
|
"data-slot": "select-content",
|
|
@@ -10101,8 +10325,8 @@ function BaseSelectContent({
|
|
|
10101
10325
|
position,
|
|
10102
10326
|
...props,
|
|
10103
10327
|
children: [
|
|
10104
|
-
/* @__PURE__ */
|
|
10105
|
-
/* @__PURE__ */
|
|
10328
|
+
/* @__PURE__ */ jsx42(BaseSelectScrollUpButton, {}),
|
|
10329
|
+
/* @__PURE__ */ jsx42(
|
|
10106
10330
|
SelectPrimitive.Viewport,
|
|
10107
10331
|
{
|
|
10108
10332
|
className: cn(
|
|
@@ -10112,7 +10336,7 @@ function BaseSelectContent({
|
|
|
10112
10336
|
children
|
|
10113
10337
|
}
|
|
10114
10338
|
),
|
|
10115
|
-
/* @__PURE__ */
|
|
10339
|
+
/* @__PURE__ */ jsx42(BaseSelectScrollDownButton, {})
|
|
10116
10340
|
]
|
|
10117
10341
|
}
|
|
10118
10342
|
) });
|
|
@@ -10122,7 +10346,7 @@ function BaseSelectItem({
|
|
|
10122
10346
|
children,
|
|
10123
10347
|
...props
|
|
10124
10348
|
}) {
|
|
10125
|
-
return /* @__PURE__ */
|
|
10349
|
+
return /* @__PURE__ */ jsxs32(
|
|
10126
10350
|
SelectPrimitive.Item,
|
|
10127
10351
|
{
|
|
10128
10352
|
"data-slot": "select-item",
|
|
@@ -10132,8 +10356,8 @@ function BaseSelectItem({
|
|
|
10132
10356
|
),
|
|
10133
10357
|
...props,
|
|
10134
10358
|
children: [
|
|
10135
|
-
/* @__PURE__ */
|
|
10136
|
-
/* @__PURE__ */
|
|
10359
|
+
/* @__PURE__ */ jsx42("span", { className: "absolute right-2 flex size-3.5 items-center justify-center", children: /* @__PURE__ */ jsx42(SelectPrimitive.ItemIndicator, { children: /* @__PURE__ */ jsx42(CheckIcon4, { className: "text-icon-secondary size-4" }) }) }),
|
|
10360
|
+
/* @__PURE__ */ jsx42(SelectPrimitive.ItemText, { children })
|
|
10137
10361
|
]
|
|
10138
10362
|
}
|
|
10139
10363
|
);
|
|
@@ -10142,7 +10366,7 @@ function BaseSelectScrollUpButton({
|
|
|
10142
10366
|
className,
|
|
10143
10367
|
...props
|
|
10144
10368
|
}) {
|
|
10145
|
-
return /* @__PURE__ */
|
|
10369
|
+
return /* @__PURE__ */ jsx42(
|
|
10146
10370
|
SelectPrimitive.ScrollUpButton,
|
|
10147
10371
|
{
|
|
10148
10372
|
"data-slot": "select-scroll-up-button",
|
|
@@ -10151,7 +10375,7 @@ function BaseSelectScrollUpButton({
|
|
|
10151
10375
|
className
|
|
10152
10376
|
),
|
|
10153
10377
|
...props,
|
|
10154
|
-
children: /* @__PURE__ */
|
|
10378
|
+
children: /* @__PURE__ */ jsx42(ChevronUpIcon, { className: "size-4" })
|
|
10155
10379
|
}
|
|
10156
10380
|
);
|
|
10157
10381
|
}
|
|
@@ -10159,7 +10383,7 @@ function BaseSelectScrollDownButton({
|
|
|
10159
10383
|
className,
|
|
10160
10384
|
...props
|
|
10161
10385
|
}) {
|
|
10162
|
-
return /* @__PURE__ */
|
|
10386
|
+
return /* @__PURE__ */ jsx42(
|
|
10163
10387
|
SelectPrimitive.ScrollDownButton,
|
|
10164
10388
|
{
|
|
10165
10389
|
"data-slot": "select-scroll-down-button",
|
|
@@ -10168,7 +10392,7 @@ function BaseSelectScrollDownButton({
|
|
|
10168
10392
|
className
|
|
10169
10393
|
),
|
|
10170
10394
|
...props,
|
|
10171
|
-
children: /* @__PURE__ */
|
|
10395
|
+
children: /* @__PURE__ */ jsx42(ChevronDownIcon3, { className: "size-4" })
|
|
10172
10396
|
}
|
|
10173
10397
|
);
|
|
10174
10398
|
}
|
|
@@ -10176,15 +10400,15 @@ function BaseSelectScrollDownButton({
|
|
|
10176
10400
|
// src/ui/Sheet/index.tsx
|
|
10177
10401
|
import * as SheetPrimitive from "@radix-ui/react-dialog";
|
|
10178
10402
|
import { XIcon as XIcon3 } from "lucide-react";
|
|
10179
|
-
import { jsx as
|
|
10403
|
+
import { jsx as jsx43, jsxs as jsxs33 } from "react/jsx-runtime";
|
|
10180
10404
|
function Sheet({ ...props }) {
|
|
10181
|
-
return /* @__PURE__ */
|
|
10405
|
+
return /* @__PURE__ */ jsx43(SheetPrimitive.Root, { "data-slot": "sheet", ...props });
|
|
10182
10406
|
}
|
|
10183
10407
|
|
|
10184
10408
|
// src/ui/Skeleton/index.tsx
|
|
10185
|
-
import { jsx as
|
|
10409
|
+
import { jsx as jsx44 } from "react/jsx-runtime";
|
|
10186
10410
|
function Skeleton({ className, ...props }) {
|
|
10187
|
-
return /* @__PURE__ */
|
|
10411
|
+
return /* @__PURE__ */ jsx44(
|
|
10188
10412
|
"div",
|
|
10189
10413
|
{
|
|
10190
10414
|
"data-slot": "skeleton",
|
|
@@ -10200,7 +10424,7 @@ function Skeleton({ className, ...props }) {
|
|
|
10200
10424
|
// src/ui/Slider/index.tsx
|
|
10201
10425
|
import * as SliderPrimitive from "@radix-ui/react-slider";
|
|
10202
10426
|
import * as React15 from "react";
|
|
10203
|
-
import { jsx as
|
|
10427
|
+
import { jsx as jsx45, jsxs as jsxs34 } from "react/jsx-runtime";
|
|
10204
10428
|
function Slider({
|
|
10205
10429
|
className,
|
|
10206
10430
|
defaultValue,
|
|
@@ -10213,7 +10437,7 @@ function Slider({
|
|
|
10213
10437
|
() => Array.isArray(value) ? value : Array.isArray(defaultValue) ? defaultValue : [min, max],
|
|
10214
10438
|
[value, defaultValue, min, max]
|
|
10215
10439
|
);
|
|
10216
|
-
return /* @__PURE__ */
|
|
10440
|
+
return /* @__PURE__ */ jsxs34(
|
|
10217
10441
|
SliderPrimitive.Root,
|
|
10218
10442
|
{
|
|
10219
10443
|
"data-slot": "slider",
|
|
@@ -10227,14 +10451,14 @@ function Slider({
|
|
|
10227
10451
|
),
|
|
10228
10452
|
...props,
|
|
10229
10453
|
children: [
|
|
10230
|
-
/* @__PURE__ */
|
|
10454
|
+
/* @__PURE__ */ jsx45(
|
|
10231
10455
|
SliderPrimitive.Track,
|
|
10232
10456
|
{
|
|
10233
10457
|
"data-slot": "slider-track",
|
|
10234
10458
|
className: cn(
|
|
10235
10459
|
"bg-audioProgress-bg relative grow overflow-hidden rounded-full data-[orientation=horizontal]:h-1.5 data-[orientation=horizontal]:w-full data-[orientation=vertical]:h-full data-[orientation=vertical]:w-1.5"
|
|
10236
10460
|
),
|
|
10237
|
-
children: /* @__PURE__ */
|
|
10461
|
+
children: /* @__PURE__ */ jsx45(
|
|
10238
10462
|
SliderPrimitive.Range,
|
|
10239
10463
|
{
|
|
10240
10464
|
"data-slot": "slider-range",
|
|
@@ -10245,7 +10469,7 @@ function Slider({
|
|
|
10245
10469
|
)
|
|
10246
10470
|
}
|
|
10247
10471
|
),
|
|
10248
|
-
Array.from({ length: _values.length }, (_, index) => /* @__PURE__ */
|
|
10472
|
+
Array.from({ length: _values.length }, (_, index) => /* @__PURE__ */ jsx45(
|
|
10249
10473
|
SliderPrimitive.Thumb,
|
|
10250
10474
|
{
|
|
10251
10475
|
"data-slot": "slider-thumb",
|
|
@@ -10261,10 +10485,10 @@ function Slider({
|
|
|
10261
10485
|
// src/ui/Sooner/index.tsx
|
|
10262
10486
|
import { useTheme } from "next-themes";
|
|
10263
10487
|
import { Toaster as Sonner } from "sonner";
|
|
10264
|
-
import { jsx as
|
|
10488
|
+
import { jsx as jsx46 } from "react/jsx-runtime";
|
|
10265
10489
|
var Toaster = ({ ...props }) => {
|
|
10266
10490
|
const { theme = "system" } = useTheme();
|
|
10267
|
-
return /* @__PURE__ */
|
|
10491
|
+
return /* @__PURE__ */ jsx46(
|
|
10268
10492
|
Sonner,
|
|
10269
10493
|
{
|
|
10270
10494
|
theme,
|
|
@@ -10281,14 +10505,14 @@ var Toaster = ({ ...props }) => {
|
|
|
10281
10505
|
|
|
10282
10506
|
// src/ui/Switch/index.tsx
|
|
10283
10507
|
import * as SwitchPrimitive from "@radix-ui/react-switch";
|
|
10284
|
-
import { jsx as
|
|
10508
|
+
import { jsx as jsx47, jsxs as jsxs35 } from "react/jsx-runtime";
|
|
10285
10509
|
function Switch({
|
|
10286
10510
|
className,
|
|
10287
10511
|
label,
|
|
10288
10512
|
...props
|
|
10289
10513
|
}) {
|
|
10290
|
-
return /* @__PURE__ */
|
|
10291
|
-
/* @__PURE__ */
|
|
10514
|
+
return /* @__PURE__ */ jsxs35("div", { className: "flex items-center space-x-2", children: [
|
|
10515
|
+
/* @__PURE__ */ jsx47(
|
|
10292
10516
|
SwitchPrimitive.Root,
|
|
10293
10517
|
{
|
|
10294
10518
|
"data-slot": "switch",
|
|
@@ -10298,7 +10522,7 @@ function Switch({
|
|
|
10298
10522
|
className
|
|
10299
10523
|
),
|
|
10300
10524
|
...props,
|
|
10301
|
-
children: /* @__PURE__ */
|
|
10525
|
+
children: /* @__PURE__ */ jsx47(
|
|
10302
10526
|
SwitchPrimitive.Thumb,
|
|
10303
10527
|
{
|
|
10304
10528
|
"data-slot": "switch-thumb",
|
|
@@ -10309,7 +10533,7 @@ function Switch({
|
|
|
10309
10533
|
)
|
|
10310
10534
|
}
|
|
10311
10535
|
),
|
|
10312
|
-
label && /* @__PURE__ */
|
|
10536
|
+
label && /* @__PURE__ */ jsx47(Label2, { htmlFor: props.id || label, children: label })
|
|
10313
10537
|
] });
|
|
10314
10538
|
}
|
|
10315
10539
|
|
|
@@ -10332,8 +10556,8 @@ import {
|
|
|
10332
10556
|
MagickoCopySuccess
|
|
10333
10557
|
} from "magick-icons";
|
|
10334
10558
|
import * as React16 from "react";
|
|
10335
|
-
import { useState as
|
|
10336
|
-
import { Fragment as Fragment6, jsx as
|
|
10559
|
+
import { useState as useState12 } from "react";
|
|
10560
|
+
import { Fragment as Fragment6, jsx as jsx48, jsxs as jsxs36 } from "react/jsx-runtime";
|
|
10337
10561
|
var Table = ({
|
|
10338
10562
|
columns,
|
|
10339
10563
|
tableData,
|
|
@@ -10341,7 +10565,7 @@ var Table = ({
|
|
|
10341
10565
|
emptyState = {
|
|
10342
10566
|
emptyAction: void 0,
|
|
10343
10567
|
label: "There is currently no data available to display in this table.",
|
|
10344
|
-
icon: /* @__PURE__ */
|
|
10568
|
+
icon: /* @__PURE__ */ jsx48(IconProfile, { icon: /* @__PURE__ */ jsx48(IconsaxBriefcaseBold, {}), color: "teal" })
|
|
10345
10569
|
},
|
|
10346
10570
|
onRowClick
|
|
10347
10571
|
}) => {
|
|
@@ -10353,41 +10577,41 @@ var Table = ({
|
|
|
10353
10577
|
getSortedRowModel: getSortedRowModel()
|
|
10354
10578
|
});
|
|
10355
10579
|
const rowCount = table.getRowModel().rows.length;
|
|
10356
|
-
return /* @__PURE__ */
|
|
10357
|
-
isLoading ? /* @__PURE__ */
|
|
10580
|
+
return /* @__PURE__ */ jsxs36("div", { className: "relative flex flex-col overflow-auto", children: [
|
|
10581
|
+
isLoading ? /* @__PURE__ */ jsx48(
|
|
10358
10582
|
"div",
|
|
10359
10583
|
{
|
|
10360
10584
|
className: cn(
|
|
10361
10585
|
rowCount === 0 ? "" : "bg-gray-100 dark:bg-gray-700",
|
|
10362
10586
|
"absolute top-10 left-0 w-full h-full min-h-[100px] opacity-70 z-10 flex items-center justify-center"
|
|
10363
10587
|
),
|
|
10364
|
-
children: /* @__PURE__ */
|
|
10588
|
+
children: /* @__PURE__ */ jsx48(Spinner, { className: "size-10 text-stroke-inverse-slate-04 " })
|
|
10365
10589
|
}
|
|
10366
10590
|
) : null,
|
|
10367
|
-
!isLoading && rowCount === 0 ? /* @__PURE__ */
|
|
10591
|
+
!isLoading && rowCount === 0 ? /* @__PURE__ */ jsx48("div", { className: "absolute top-1/2 left-1/2 -translate-x-1/2 -translate-y-1/2 z-2", children: /* @__PURE__ */ jsxs36("div", { className: "flex flex-col items-center gap-4", children: [
|
|
10368
10592
|
emptyState?.icon,
|
|
10369
|
-
/* @__PURE__ */
|
|
10370
|
-
emptyState?.emptyAction ? /* @__PURE__ */
|
|
10593
|
+
/* @__PURE__ */ jsx48(Text, { children: emptyState?.label }),
|
|
10594
|
+
emptyState?.emptyAction ? /* @__PURE__ */ jsx48(
|
|
10371
10595
|
Button,
|
|
10372
10596
|
{
|
|
10373
10597
|
variant: "outline",
|
|
10374
|
-
prefix: /* @__PURE__ */
|
|
10598
|
+
prefix: /* @__PURE__ */ jsx48(MagickoAdd, { className: "[&_path]:fill-element-inverse-default" }),
|
|
10375
10599
|
onClick: () => emptyState?.emptyAction?.(),
|
|
10376
10600
|
children: "Create new"
|
|
10377
10601
|
}
|
|
10378
10602
|
) : null
|
|
10379
10603
|
] }) }) : null,
|
|
10380
|
-
/* @__PURE__ */
|
|
10604
|
+
/* @__PURE__ */ jsx48("div", { className: "max-w-full flex-1 overflow-x-auto", children: /* @__PURE__ */ jsxs36(
|
|
10381
10605
|
"table",
|
|
10382
10606
|
{
|
|
10383
10607
|
className: "w-full caption-bottom text-sm",
|
|
10384
10608
|
style: { minWidth: "max-content" },
|
|
10385
10609
|
children: [
|
|
10386
|
-
/* @__PURE__ */
|
|
10610
|
+
/* @__PURE__ */ jsx48("thead", { className: "bg-fill-inverse-slate-03", children: table.getHeaderGroups().map((headerGroup) => /* @__PURE__ */ jsx48(
|
|
10387
10611
|
"tr",
|
|
10388
10612
|
{
|
|
10389
10613
|
className: "hover:bg-muted/50 border-stroke-inverse-slate-02 border-b transition-colors",
|
|
10390
|
-
children: headerGroup.headers.map((header) => /* @__PURE__ */
|
|
10614
|
+
children: headerGroup.headers.map((header) => /* @__PURE__ */ jsx48(
|
|
10391
10615
|
"th",
|
|
10392
10616
|
{
|
|
10393
10617
|
className: "text-muted-foreground h-12 px-4 text-left align-middle font-medium",
|
|
@@ -10401,14 +10625,14 @@ var Table = ({
|
|
|
10401
10625
|
},
|
|
10402
10626
|
headerGroup.id
|
|
10403
10627
|
)) }),
|
|
10404
|
-
/* @__PURE__ */
|
|
10628
|
+
/* @__PURE__ */ jsxs36("tbody", { className: "relative", children: [
|
|
10405
10629
|
table.getRowModel().rows.map((row) => {
|
|
10406
|
-
return /* @__PURE__ */
|
|
10630
|
+
return /* @__PURE__ */ jsx48(
|
|
10407
10631
|
"tr",
|
|
10408
10632
|
{
|
|
10409
10633
|
className: "hover:bg-muted/50 bg-table-table-cell-unselected group/row border-stroke-inverse-slate-02 cursor-pointer border-b transition-colors",
|
|
10410
10634
|
onClick: () => onRowClick?.(row.original),
|
|
10411
|
-
children: row.getVisibleCells().map((cell) => /* @__PURE__ */
|
|
10635
|
+
children: row.getVisibleCells().map((cell) => /* @__PURE__ */ jsx48("td", { className: "p-4", children: flexRender(
|
|
10412
10636
|
cell.column.columnDef.cell,
|
|
10413
10637
|
cell.getContext()
|
|
10414
10638
|
) }, cell.id))
|
|
@@ -10416,7 +10640,7 @@ var Table = ({
|
|
|
10416
10640
|
row.id
|
|
10417
10641
|
);
|
|
10418
10642
|
}),
|
|
10419
|
-
rowCount === 0 && Array.from({ length: 6 }).map((_, index) => /* @__PURE__ */
|
|
10643
|
+
rowCount === 0 && Array.from({ length: 6 }).map((_, index) => /* @__PURE__ */ jsx48("tr", { children: /* @__PURE__ */ jsx48("td", { colSpan: columns.length, className: "h-12 p-4", children: /* @__PURE__ */ jsx48("div", { className: "" }) }) }, index))
|
|
10420
10644
|
] })
|
|
10421
10645
|
]
|
|
10422
10646
|
}
|
|
@@ -10451,13 +10675,13 @@ var PrimaryCell = React16.forwardRef(
|
|
|
10451
10675
|
}, ref) => {
|
|
10452
10676
|
let content = children;
|
|
10453
10677
|
if (variant === "badge") {
|
|
10454
|
-
content = /* @__PURE__ */
|
|
10678
|
+
content = /* @__PURE__ */ jsxs36("div", { className: "flex items-center gap-2", children: [
|
|
10455
10679
|
children,
|
|
10456
|
-
badgeContent && /* @__PURE__ */
|
|
10680
|
+
badgeContent && /* @__PURE__ */ jsx48(Badge, { type: badgeType, size: badgeSize, children: badgeContent })
|
|
10457
10681
|
] });
|
|
10458
10682
|
} else if (variant === "progress") {
|
|
10459
|
-
content = /* @__PURE__ */
|
|
10460
|
-
progressValue !== 100 && /* @__PURE__ */
|
|
10683
|
+
content = /* @__PURE__ */ jsxs36(Fragment6, { children: [
|
|
10684
|
+
progressValue !== 100 && /* @__PURE__ */ jsx48(
|
|
10461
10685
|
ProgressIndicator,
|
|
10462
10686
|
{
|
|
10463
10687
|
variant: "circle",
|
|
@@ -10466,23 +10690,23 @@ var PrimaryCell = React16.forwardRef(
|
|
|
10466
10690
|
showPercentage: showProgressPercentage
|
|
10467
10691
|
}
|
|
10468
10692
|
),
|
|
10469
|
-
children && /* @__PURE__ */
|
|
10693
|
+
children && /* @__PURE__ */ jsx48("span", { className: "text-body-sm text-element-inverse-default", children })
|
|
10470
10694
|
] });
|
|
10471
10695
|
} else if (variant === "error") {
|
|
10472
|
-
content = /* @__PURE__ */
|
|
10473
|
-
/* @__PURE__ */
|
|
10474
|
-
errorMessage ? /* @__PURE__ */
|
|
10696
|
+
content = /* @__PURE__ */ jsxs36(Fragment6, { children: [
|
|
10697
|
+
/* @__PURE__ */ jsx48(AlertCircle, { className: "size-4 shrink-0" }),
|
|
10698
|
+
errorMessage ? /* @__PURE__ */ jsx48("span", { className: "text-body-sm", children: errorMessage }) : children
|
|
10475
10699
|
] });
|
|
10476
10700
|
}
|
|
10477
|
-
return /* @__PURE__ */
|
|
10701
|
+
return /* @__PURE__ */ jsxs36(
|
|
10478
10702
|
"div",
|
|
10479
10703
|
{
|
|
10480
10704
|
ref,
|
|
10481
10705
|
className: cn(primaryCellVariants({ variant })),
|
|
10482
10706
|
...props,
|
|
10483
10707
|
children: [
|
|
10484
|
-
/* @__PURE__ */
|
|
10485
|
-
hoverUI && /* @__PURE__ */
|
|
10708
|
+
/* @__PURE__ */ jsx48("div", { className: "flex min-w-0 flex-1 items-center gap-2", children: content }),
|
|
10709
|
+
hoverUI && /* @__PURE__ */ jsx48("div", { className: "ml-2 flex items-center gap-2 opacity-0 transition-opacity duration-200 group-hover/row:opacity-100", children: hoverUI })
|
|
10486
10710
|
]
|
|
10487
10711
|
}
|
|
10488
10712
|
);
|
|
@@ -10491,7 +10715,7 @@ var PrimaryCell = React16.forwardRef(
|
|
|
10491
10715
|
PrimaryCell.displayName = "PrimaryCell";
|
|
10492
10716
|
Table.PrimaryCell = PrimaryCell;
|
|
10493
10717
|
var TextCell = React16.forwardRef(({ text, copyable = true, className, ...props }, ref) => {
|
|
10494
|
-
const [isCopied, setIsCopied] =
|
|
10718
|
+
const [isCopied, setIsCopied] = useState12(false);
|
|
10495
10719
|
const [hoverRef, isHovering] = useHover();
|
|
10496
10720
|
const handleCopy = () => {
|
|
10497
10721
|
navigator.clipboard.writeText(text);
|
|
@@ -10504,11 +10728,11 @@ var TextCell = React16.forwardRef(({ text, copyable = true, className, ...props
|
|
|
10504
10728
|
}, 1200);
|
|
10505
10729
|
}
|
|
10506
10730
|
}, [isCopied]);
|
|
10507
|
-
return /* @__PURE__ */
|
|
10508
|
-
copyable && isHovering && /* @__PURE__ */
|
|
10731
|
+
return /* @__PURE__ */ jsx48("div", { className: cn("w-full h-full", className), ref, ...props, children: /* @__PURE__ */ jsxs36("div", { className: "relative", ref: hoverRef, children: [
|
|
10732
|
+
copyable && isHovering && /* @__PURE__ */ jsx48(
|
|
10509
10733
|
IconButton,
|
|
10510
10734
|
{
|
|
10511
|
-
icon: isCopied ? /* @__PURE__ */
|
|
10735
|
+
icon: isCopied ? /* @__PURE__ */ jsx48(
|
|
10512
10736
|
MagickoCopySuccess,
|
|
10513
10737
|
{
|
|
10514
10738
|
className: cn(
|
|
@@ -10516,16 +10740,16 @@ var TextCell = React16.forwardRef(({ text, copyable = true, className, ...props
|
|
|
10516
10740
|
"transition-all ease-in duration-200"
|
|
10517
10741
|
)
|
|
10518
10742
|
}
|
|
10519
|
-
) : /* @__PURE__ */
|
|
10743
|
+
) : /* @__PURE__ */ jsx48(MagickoCopy, { className: "size-4" }),
|
|
10520
10744
|
className: "absolute top-1/2 -right-3 -translate-y-1/2",
|
|
10521
10745
|
size: "sm",
|
|
10522
10746
|
varient: "soft",
|
|
10523
10747
|
onClick: handleCopy
|
|
10524
10748
|
}
|
|
10525
10749
|
),
|
|
10526
|
-
/* @__PURE__ */
|
|
10527
|
-
/* @__PURE__ */
|
|
10528
|
-
/* @__PURE__ */
|
|
10750
|
+
/* @__PURE__ */ jsxs36(Popover, { children: [
|
|
10751
|
+
/* @__PURE__ */ jsx48(PopoverTrigger, { asChild: true, children: /* @__PURE__ */ jsx48(Text, { className: "truncate line-clamp-1", children: text ?? "-" }) }),
|
|
10752
|
+
/* @__PURE__ */ jsx48(PopoverContent, { className: "", children: /* @__PURE__ */ jsx48(Text, { children: text ?? "-" }) })
|
|
10529
10753
|
] })
|
|
10530
10754
|
] }) });
|
|
10531
10755
|
});
|
|
@@ -10535,7 +10759,7 @@ var Table_default = Table;
|
|
|
10535
10759
|
|
|
10536
10760
|
// src/ui/Tabs/index.tsx
|
|
10537
10761
|
import * as TabsPrimitive from "@radix-ui/react-tabs";
|
|
10538
|
-
import { jsx as
|
|
10762
|
+
import { jsx as jsx49, jsxs as jsxs37 } from "react/jsx-runtime";
|
|
10539
10763
|
function Tabs({
|
|
10540
10764
|
defaultActiveTab,
|
|
10541
10765
|
tabSmall,
|
|
@@ -10544,8 +10768,8 @@ function Tabs({
|
|
|
10544
10768
|
showContent = true,
|
|
10545
10769
|
...props
|
|
10546
10770
|
}) {
|
|
10547
|
-
return /* @__PURE__ */
|
|
10548
|
-
/* @__PURE__ */
|
|
10771
|
+
return /* @__PURE__ */ jsxs37(BaseTabs, { defaultValue: defaultActiveTab, className, ...props, children: [
|
|
10772
|
+
/* @__PURE__ */ jsx49(BaseTabsList, { children: tabs.map((tab) => /* @__PURE__ */ jsxs37(
|
|
10549
10773
|
BaseTabsTrigger,
|
|
10550
10774
|
{
|
|
10551
10775
|
tabSmall,
|
|
@@ -10553,22 +10777,22 @@ function Tabs({
|
|
|
10553
10777
|
className: "relative flex cursor-pointer items-center justify-center gap-x-2",
|
|
10554
10778
|
onClick: typeof tab === "object" && "onClick" in tab ? tab.onClick : void 0,
|
|
10555
10779
|
children: [
|
|
10556
|
-
tab.icon && /* @__PURE__ */
|
|
10780
|
+
tab.icon && /* @__PURE__ */ jsx49("div", { children: tab.icon }),
|
|
10557
10781
|
tab.label,
|
|
10558
|
-
tab.notification && /* @__PURE__ */
|
|
10559
|
-
!!tab.count && /* @__PURE__ */
|
|
10782
|
+
tab.notification && /* @__PURE__ */ jsx49("div", { className: "bg-icon-destructive absolute top-1 right-1 size-1.5 rounded-full" }),
|
|
10783
|
+
!!tab.count && /* @__PURE__ */ jsx49(Badge, { type: "primary-soft", children: tab.count })
|
|
10560
10784
|
]
|
|
10561
10785
|
},
|
|
10562
10786
|
tab.value
|
|
10563
10787
|
)) }),
|
|
10564
|
-
showContent && "content" in tabs[0] && tabs.map((tab) => /* @__PURE__ */
|
|
10788
|
+
showContent && "content" in tabs[0] && tabs.map((tab) => /* @__PURE__ */ jsx49(BaseTabsContent, { value: tab.value, children: tab.content }, tab.value))
|
|
10565
10789
|
] });
|
|
10566
10790
|
}
|
|
10567
10791
|
function BaseTabs({
|
|
10568
10792
|
className,
|
|
10569
10793
|
...props
|
|
10570
10794
|
}) {
|
|
10571
|
-
return /* @__PURE__ */
|
|
10795
|
+
return /* @__PURE__ */ jsx49(
|
|
10572
10796
|
TabsPrimitive.Root,
|
|
10573
10797
|
{
|
|
10574
10798
|
"data-slot": "tabs",
|
|
@@ -10581,7 +10805,7 @@ function BaseTabsList({
|
|
|
10581
10805
|
className,
|
|
10582
10806
|
...props
|
|
10583
10807
|
}) {
|
|
10584
|
-
return /* @__PURE__ */
|
|
10808
|
+
return /* @__PURE__ */ jsx49(
|
|
10585
10809
|
TabsPrimitive.List,
|
|
10586
10810
|
{
|
|
10587
10811
|
"data-slot": "tabs-list",
|
|
@@ -10598,7 +10822,7 @@ function BaseTabsTrigger({
|
|
|
10598
10822
|
tabSmall,
|
|
10599
10823
|
...props
|
|
10600
10824
|
}) {
|
|
10601
|
-
return /* @__PURE__ */
|
|
10825
|
+
return /* @__PURE__ */ jsx49(
|
|
10602
10826
|
TabsPrimitive.Trigger,
|
|
10603
10827
|
{
|
|
10604
10828
|
"data-slot": "tabs-trigger",
|
|
@@ -10615,7 +10839,7 @@ function BaseTabsContent({
|
|
|
10615
10839
|
className,
|
|
10616
10840
|
...props
|
|
10617
10841
|
}) {
|
|
10618
|
-
return /* @__PURE__ */
|
|
10842
|
+
return /* @__PURE__ */ jsx49(
|
|
10619
10843
|
TabsPrimitive.Content,
|
|
10620
10844
|
{
|
|
10621
10845
|
"data-slot": "tabs-content",
|
|
@@ -10627,7 +10851,7 @@ function BaseTabsContent({
|
|
|
10627
10851
|
|
|
10628
10852
|
// src/ui/Tag/index.tsx
|
|
10629
10853
|
import { cva as cva12 } from "class-variance-authority";
|
|
10630
|
-
import { jsx as
|
|
10854
|
+
import { jsx as jsx50 } from "react/jsx-runtime";
|
|
10631
10855
|
var tagVariants = cva12("px-1 rounded-sm", {
|
|
10632
10856
|
variants: {
|
|
10633
10857
|
variant: {
|
|
@@ -10645,14 +10869,14 @@ function Tag({
|
|
|
10645
10869
|
variant,
|
|
10646
10870
|
className
|
|
10647
10871
|
}) {
|
|
10648
|
-
return /* @__PURE__ */
|
|
10872
|
+
return /* @__PURE__ */ jsx50("div", { "data-slot": "tag", className: cn(tagVariants({ variant }), className), children: /* @__PURE__ */ jsx50("span", { className: "text-caption font-semibold text-white", children: label }) });
|
|
10649
10873
|
}
|
|
10650
10874
|
|
|
10651
10875
|
// src/ui/TextAreaInput/index.tsx
|
|
10652
10876
|
import * as React17 from "react";
|
|
10653
|
-
import { jsx as
|
|
10877
|
+
import { jsx as jsx51 } from "react/jsx-runtime";
|
|
10654
10878
|
var TextareaInput = React17.forwardRef(({ className, label, ...props }, ref) => {
|
|
10655
|
-
return /* @__PURE__ */
|
|
10879
|
+
return /* @__PURE__ */ jsx51(
|
|
10656
10880
|
"textarea",
|
|
10657
10881
|
{
|
|
10658
10882
|
ref,
|
|
@@ -10672,8 +10896,8 @@ var TextAreaInput_default = TextareaInput;
|
|
|
10672
10896
|
|
|
10673
10897
|
// src/ui/TimePicker/index.tsx
|
|
10674
10898
|
import { Clock } from "lucide-react";
|
|
10675
|
-
import { useState as
|
|
10676
|
-
import { jsx as
|
|
10899
|
+
import { useState as useState13 } from "react";
|
|
10900
|
+
import { jsx as jsx52, jsxs as jsxs38 } from "react/jsx-runtime";
|
|
10677
10901
|
function TimePicker({
|
|
10678
10902
|
label,
|
|
10679
10903
|
onValueChange,
|
|
@@ -10682,7 +10906,7 @@ function TimePicker({
|
|
|
10682
10906
|
value,
|
|
10683
10907
|
...props
|
|
10684
10908
|
}) {
|
|
10685
|
-
const [isOpen, setIsOpen] =
|
|
10909
|
+
const [isOpen, setIsOpen] = useState13(false);
|
|
10686
10910
|
const currentValue = value || defaultValue || "";
|
|
10687
10911
|
const formatTimeForDisplay = (timeValue) => {
|
|
10688
10912
|
if (!timeValue) return "";
|
|
@@ -10694,10 +10918,10 @@ function TimePicker({
|
|
|
10694
10918
|
const handleChange = (value2) => {
|
|
10695
10919
|
onValueChange?.(value2);
|
|
10696
10920
|
};
|
|
10697
|
-
return /* @__PURE__ */
|
|
10698
|
-
label && /* @__PURE__ */
|
|
10699
|
-
/* @__PURE__ */
|
|
10700
|
-
/* @__PURE__ */
|
|
10921
|
+
return /* @__PURE__ */ jsxs38("div", { className: "flex flex-col gap-3", children: [
|
|
10922
|
+
label && /* @__PURE__ */ jsx52(Label2, { htmlFor: "time-picker", className: "px-1", children: "Time" }),
|
|
10923
|
+
/* @__PURE__ */ jsxs38(DropdownMenu, { open: isOpen, onOpenChange: setIsOpen, children: [
|
|
10924
|
+
/* @__PURE__ */ jsx52(DropdownMenuTrigger, { className: "!p-0", children: /* @__PURE__ */ jsx52(
|
|
10701
10925
|
Input,
|
|
10702
10926
|
{
|
|
10703
10927
|
...props,
|
|
@@ -10705,17 +10929,17 @@ function TimePicker({
|
|
|
10705
10929
|
value: currentValue ? formatTimeForDisplay(currentValue) : "",
|
|
10706
10930
|
onKeyDown: (e) => e.preventDefault(),
|
|
10707
10931
|
prefixNode: {
|
|
10708
|
-
node: /* @__PURE__ */
|
|
10932
|
+
node: /* @__PURE__ */ jsx52(Clock, { className: "pointer-events-none h-5 w-5 text-gray-700" }),
|
|
10709
10933
|
withBorder: false
|
|
10710
10934
|
}
|
|
10711
10935
|
}
|
|
10712
10936
|
) }),
|
|
10713
|
-
/* @__PURE__ */
|
|
10937
|
+
/* @__PURE__ */ jsx52(
|
|
10714
10938
|
DropdownMenuContent,
|
|
10715
10939
|
{
|
|
10716
10940
|
align: "start",
|
|
10717
10941
|
className: "max-h-60 min-w-41 overflow-y-auto",
|
|
10718
|
-
children: timeOptions?.map((item) => /* @__PURE__ */
|
|
10942
|
+
children: timeOptions?.map((item) => /* @__PURE__ */ jsx52(
|
|
10719
10943
|
DropdownMenuItem,
|
|
10720
10944
|
{
|
|
10721
10945
|
className: cn(
|
|
@@ -10736,11 +10960,11 @@ function TimePicker({
|
|
|
10736
10960
|
// src/ui/Title/index.tsx
|
|
10737
10961
|
import { Slot as Slot6 } from "@radix-ui/react-slot";
|
|
10738
10962
|
import * as React18 from "react";
|
|
10739
|
-
import { jsx as
|
|
10963
|
+
import { jsx as jsx53 } from "react/jsx-runtime";
|
|
10740
10964
|
var Title2 = React18.forwardRef(
|
|
10741
10965
|
({ className, asChild = false, ...props }, ref) => {
|
|
10742
10966
|
const Comp = asChild ? Slot6 : "h2";
|
|
10743
|
-
return /* @__PURE__ */
|
|
10967
|
+
return /* @__PURE__ */ jsx53(
|
|
10744
10968
|
Comp,
|
|
10745
10969
|
{
|
|
10746
10970
|
ref,
|
|
@@ -10759,7 +10983,7 @@ var Title_default = Title2;
|
|
|
10759
10983
|
// src/ui/Toggle/index.tsx
|
|
10760
10984
|
import * as TogglePrimitive from "@radix-ui/react-toggle";
|
|
10761
10985
|
import { cva as cva13 } from "class-variance-authority";
|
|
10762
|
-
import { jsx as
|
|
10986
|
+
import { jsx as jsx54 } from "react/jsx-runtime";
|
|
10763
10987
|
var toggleVariants = cva13(
|
|
10764
10988
|
"inline-flex items-center justify-center gap-2 text-sm font-medium disabled:pointer-events-none disabled:text-icon-inactive data-[state=on]:disabled:text-icon-inactive data-[state=on]:disabled:bg-toggle-bg-inactiveDefault data-[state=on]:bg-toggle-bg-activeDefault data-[state=on]:hover:bg-toggle-bg-activeHover data-[state=on]:text-icon-white hover:bg-toggle-bg-inactiveHover hover:text-icon-default [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 [&_svg]:shrink-0 focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] outline-none transition-[color,box-shadow] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive whitespace-nowrap cursor-pointer",
|
|
10765
10989
|
{
|
|
@@ -10794,7 +11018,7 @@ function Toggle({
|
|
|
10794
11018
|
size,
|
|
10795
11019
|
...props
|
|
10796
11020
|
}) {
|
|
10797
|
-
return /* @__PURE__ */
|
|
11021
|
+
return /* @__PURE__ */ jsx54(
|
|
10798
11022
|
TogglePrimitive.Root,
|
|
10799
11023
|
{
|
|
10800
11024
|
"data-slot": "toggle",
|
|
@@ -10811,7 +11035,7 @@ import { useRef as useRef10 } from "react";
|
|
|
10811
11035
|
// src/ui/ToggleDropdownButton/ToggleDropdownLeftButton.tsx
|
|
10812
11036
|
import { cva as cva14 } from "class-variance-authority";
|
|
10813
11037
|
import * as React19 from "react";
|
|
10814
|
-
import { jsx as
|
|
11038
|
+
import { jsx as jsx55 } from "react/jsx-runtime";
|
|
10815
11039
|
var toggleDropdownLeftButtonVariants = cva14(
|
|
10816
11040
|
"flex items-center justify-center cursor-pointer transition-all",
|
|
10817
11041
|
{
|
|
@@ -10907,7 +11131,7 @@ function ToggleDropdownLeftButton({
|
|
|
10907
11131
|
}) {
|
|
10908
11132
|
const iconClass = selected ? "text-element-static-white fill-element-static-white" : "text-element-inverse-default fill-element-inverse-default";
|
|
10909
11133
|
const isIcon = React19.isValidElement(children);
|
|
10910
|
-
return type === "text" ? /* @__PURE__ */
|
|
11134
|
+
return type === "text" ? /* @__PURE__ */ jsx55(
|
|
10911
11135
|
"button",
|
|
10912
11136
|
{
|
|
10913
11137
|
type: "button",
|
|
@@ -10916,7 +11140,7 @@ function ToggleDropdownLeftButton({
|
|
|
10916
11140
|
className
|
|
10917
11141
|
),
|
|
10918
11142
|
...props,
|
|
10919
|
-
children: isIcon ? /* @__PURE__ */
|
|
11143
|
+
children: isIcon ? /* @__PURE__ */ jsx55(
|
|
10920
11144
|
IconContainer,
|
|
10921
11145
|
{
|
|
10922
11146
|
colorInFill: false,
|
|
@@ -10929,7 +11153,7 @@ function ToggleDropdownLeftButton({
|
|
|
10929
11153
|
}
|
|
10930
11154
|
) : children
|
|
10931
11155
|
}
|
|
10932
|
-
) : /* @__PURE__ */
|
|
11156
|
+
) : /* @__PURE__ */ jsx55(
|
|
10933
11157
|
"button",
|
|
10934
11158
|
{
|
|
10935
11159
|
type: "button",
|
|
@@ -10938,7 +11162,7 @@ function ToggleDropdownLeftButton({
|
|
|
10938
11162
|
className
|
|
10939
11163
|
),
|
|
10940
11164
|
...props,
|
|
10941
|
-
children: /* @__PURE__ */
|
|
11165
|
+
children: /* @__PURE__ */ jsx55(
|
|
10942
11166
|
IconContainer,
|
|
10943
11167
|
{
|
|
10944
11168
|
colorInFill: false,
|
|
@@ -10957,7 +11181,7 @@ function ToggleDropdownLeftButton({
|
|
|
10957
11181
|
// src/ui/ToggleDropdownButton/ToggleDropdownRightButton.tsx
|
|
10958
11182
|
import { cva as cva15 } from "class-variance-authority";
|
|
10959
11183
|
import * as React20 from "react";
|
|
10960
|
-
import { jsx as
|
|
11184
|
+
import { jsx as jsx56 } from "react/jsx-runtime";
|
|
10961
11185
|
var toggleDropdownRightButtonVariants = cva15(
|
|
10962
11186
|
"flex items-center justify-center group cursor-pointer transition-all",
|
|
10963
11187
|
{
|
|
@@ -11053,7 +11277,7 @@ function ToggleDropdownRightButton({
|
|
|
11053
11277
|
}) {
|
|
11054
11278
|
const iconClass = selected ? "text-element-static-white fill-element-static-white" : "text-element-inverse-default fill-element-inverse-default";
|
|
11055
11279
|
const isIcon = React20.isValidElement(children);
|
|
11056
|
-
return type === "text" ? /* @__PURE__ */
|
|
11280
|
+
return type === "text" ? /* @__PURE__ */ jsx56(
|
|
11057
11281
|
"button",
|
|
11058
11282
|
{
|
|
11059
11283
|
type: "button",
|
|
@@ -11062,7 +11286,7 @@ function ToggleDropdownRightButton({
|
|
|
11062
11286
|
className
|
|
11063
11287
|
),
|
|
11064
11288
|
...props,
|
|
11065
|
-
children: isIcon ? /* @__PURE__ */
|
|
11289
|
+
children: isIcon ? /* @__PURE__ */ jsx56(
|
|
11066
11290
|
IconContainer,
|
|
11067
11291
|
{
|
|
11068
11292
|
colorInFill: false,
|
|
@@ -11075,7 +11299,7 @@ function ToggleDropdownRightButton({
|
|
|
11075
11299
|
}
|
|
11076
11300
|
) : children
|
|
11077
11301
|
}
|
|
11078
|
-
) : /* @__PURE__ */
|
|
11302
|
+
) : /* @__PURE__ */ jsx56(
|
|
11079
11303
|
"button",
|
|
11080
11304
|
{
|
|
11081
11305
|
type: "button",
|
|
@@ -11084,7 +11308,7 @@ function ToggleDropdownRightButton({
|
|
|
11084
11308
|
className
|
|
11085
11309
|
),
|
|
11086
11310
|
...props,
|
|
11087
|
-
children: /* @__PURE__ */
|
|
11311
|
+
children: /* @__PURE__ */ jsx56(
|
|
11088
11312
|
IconContainer,
|
|
11089
11313
|
{
|
|
11090
11314
|
colorInFill: false,
|
|
@@ -11101,10 +11325,10 @@ function ToggleDropdownRightButton({
|
|
|
11101
11325
|
}
|
|
11102
11326
|
|
|
11103
11327
|
// src/ui/ToggleDropdownButton/useToggleDropdown.ts
|
|
11104
|
-
import { useState as
|
|
11328
|
+
import { useState as useState14, useCallback as useCallback5 } from "react";
|
|
11105
11329
|
|
|
11106
11330
|
// src/ui/ToggleDropdownButton/index.tsx
|
|
11107
|
-
import { jsx as
|
|
11331
|
+
import { jsx as jsx57, jsxs as jsxs39 } from "react/jsx-runtime";
|
|
11108
11332
|
var ToggleDropdownButton = ({
|
|
11109
11333
|
type,
|
|
11110
11334
|
selected,
|
|
@@ -11122,8 +11346,8 @@ var ToggleDropdownButton = ({
|
|
|
11122
11346
|
const handleLeftButtonClick = () => {
|
|
11123
11347
|
onLeftButtonClick?.();
|
|
11124
11348
|
};
|
|
11125
|
-
return /* @__PURE__ */
|
|
11126
|
-
/* @__PURE__ */
|
|
11349
|
+
return /* @__PURE__ */ jsxs39("div", { className: "gap-x-unit-1px flex items-center", children: [
|
|
11350
|
+
/* @__PURE__ */ jsx57(
|
|
11127
11351
|
ToggleDropdownLeftButton,
|
|
11128
11352
|
{
|
|
11129
11353
|
selected,
|
|
@@ -11134,8 +11358,8 @@ var ToggleDropdownButton = ({
|
|
|
11134
11358
|
children: leftButtonChildren
|
|
11135
11359
|
}
|
|
11136
11360
|
),
|
|
11137
|
-
/* @__PURE__ */
|
|
11138
|
-
/* @__PURE__ */
|
|
11361
|
+
/* @__PURE__ */ jsxs39("div", { className: "relative", children: [
|
|
11362
|
+
/* @__PURE__ */ jsx57(
|
|
11139
11363
|
ToggleDropdownRightButton,
|
|
11140
11364
|
{
|
|
11141
11365
|
ref: rightButtonRef,
|
|
@@ -11155,8 +11379,8 @@ var ToggleDropdownButton_default = ToggleDropdownButton;
|
|
|
11155
11379
|
|
|
11156
11380
|
// src/ui/ToolToggle/index.tsx
|
|
11157
11381
|
import { ChevronDown as ChevronDown3 } from "lucide-react";
|
|
11158
|
-
import { useState as
|
|
11159
|
-
import { jsx as
|
|
11382
|
+
import { useState as useState15 } from "react";
|
|
11383
|
+
import { jsx as jsx58, jsxs as jsxs40 } from "react/jsx-runtime";
|
|
11160
11384
|
var ToolToggle = ({
|
|
11161
11385
|
dropdown,
|
|
11162
11386
|
dropdownContent,
|
|
@@ -11164,41 +11388,41 @@ var ToolToggle = ({
|
|
|
11164
11388
|
className,
|
|
11165
11389
|
onClick
|
|
11166
11390
|
}) => {
|
|
11167
|
-
const [active, setActive] =
|
|
11391
|
+
const [active, setActive] = useState15(false);
|
|
11168
11392
|
const handleClick = () => {
|
|
11169
11393
|
setActive(!active);
|
|
11170
11394
|
onClick?.(active);
|
|
11171
11395
|
};
|
|
11172
|
-
return /* @__PURE__ */
|
|
11173
|
-
/* @__PURE__ */
|
|
11396
|
+
return /* @__PURE__ */ jsx58("div", { className: cn(dropdown ? "min-w-20" : "min-w-[52px]", className), children: /* @__PURE__ */ jsxs40(DropdownMenu, { children: [
|
|
11397
|
+
/* @__PURE__ */ jsx58(
|
|
11174
11398
|
DropdownMenuTrigger,
|
|
11175
11399
|
{
|
|
11176
11400
|
className: cn(
|
|
11177
11401
|
"border-border-primary-light !bg-toggle-bg-inactiveDefault hover:!bg-toggle-bg-inactiveHover flex h-full w-full items-center justify-center gap-x-2 !rounded-full border p-4 transition-all",
|
|
11178
11402
|
active && "!bg-toggle-bg-activeDefault hover:!bg-toggle-bg-activeHover"
|
|
11179
11403
|
),
|
|
11180
|
-
children: /* @__PURE__ */
|
|
11404
|
+
children: /* @__PURE__ */ jsxs40(
|
|
11181
11405
|
"div",
|
|
11182
11406
|
{
|
|
11183
11407
|
className: "flex items-center justify-center gap-x-2",
|
|
11184
11408
|
onClick: handleClick,
|
|
11185
11409
|
children: [
|
|
11186
11410
|
icon,
|
|
11187
|
-
dropdown && /* @__PURE__ */
|
|
11411
|
+
dropdown && /* @__PURE__ */ jsx58(ChevronDown3, { className: "text-icon-default size-5" })
|
|
11188
11412
|
]
|
|
11189
11413
|
}
|
|
11190
11414
|
)
|
|
11191
11415
|
}
|
|
11192
11416
|
),
|
|
11193
|
-
dropdown && /* @__PURE__ */
|
|
11417
|
+
dropdown && /* @__PURE__ */ jsx58(DropdownMenuContent, { align: "start", className: "min-w-41", children: dropdownContent })
|
|
11194
11418
|
] }) });
|
|
11195
11419
|
};
|
|
11196
11420
|
|
|
11197
11421
|
// src/ui/WrapperCard/index.tsx
|
|
11198
|
-
import { jsx as
|
|
11422
|
+
import { jsx as jsx59 } from "react/jsx-runtime";
|
|
11199
11423
|
var WrapperCard = (props) => {
|
|
11200
11424
|
const { children, className } = props;
|
|
11201
|
-
return /* @__PURE__ */
|
|
11425
|
+
return /* @__PURE__ */ jsx59(
|
|
11202
11426
|
"div",
|
|
11203
11427
|
{
|
|
11204
11428
|
className: cn(
|
|
@@ -11219,7 +11443,7 @@ import {
|
|
|
11219
11443
|
useFormContext,
|
|
11220
11444
|
useFormState
|
|
11221
11445
|
} from "react-hook-form";
|
|
11222
|
-
import { jsx as
|
|
11446
|
+
import { jsx as jsx60 } from "react/jsx-runtime";
|
|
11223
11447
|
var BaseForm = FormProvider;
|
|
11224
11448
|
var FormFieldContext = React21.createContext(
|
|
11225
11449
|
{}
|
|
@@ -11227,7 +11451,7 @@ var FormFieldContext = React21.createContext(
|
|
|
11227
11451
|
var BaseFormField = ({
|
|
11228
11452
|
...props
|
|
11229
11453
|
}) => {
|
|
11230
|
-
return /* @__PURE__ */
|
|
11454
|
+
return /* @__PURE__ */ jsx60(FormFieldContext.Provider, { value: { name: props.name }, children: /* @__PURE__ */ jsx60(Controller, { ...props }) });
|
|
11231
11455
|
};
|
|
11232
11456
|
var useFormField = () => {
|
|
11233
11457
|
const fieldContext = React21.useContext(FormFieldContext);
|
|
@@ -11253,7 +11477,7 @@ var FormItemContext = React21.createContext(
|
|
|
11253
11477
|
);
|
|
11254
11478
|
function BaseFormItem({ className, ...props }) {
|
|
11255
11479
|
const id = React21.useId();
|
|
11256
|
-
return /* @__PURE__ */
|
|
11480
|
+
return /* @__PURE__ */ jsx60(FormItemContext.Provider, { value: { id }, children: /* @__PURE__ */ jsx60(
|
|
11257
11481
|
"div",
|
|
11258
11482
|
{
|
|
11259
11483
|
"data-slot": "form-item",
|
|
@@ -11267,7 +11491,7 @@ function BaseFormLabel({
|
|
|
11267
11491
|
...props
|
|
11268
11492
|
}) {
|
|
11269
11493
|
const { error, formItemId } = useFormField();
|
|
11270
|
-
return /* @__PURE__ */
|
|
11494
|
+
return /* @__PURE__ */ jsx60(
|
|
11271
11495
|
Label2,
|
|
11272
11496
|
{
|
|
11273
11497
|
"data-slot": "form-label",
|
|
@@ -11283,7 +11507,7 @@ function BaseFormLabel({
|
|
|
11283
11507
|
}
|
|
11284
11508
|
function BaseFormControl({ ...props }) {
|
|
11285
11509
|
const { error, formItemId, formDescriptionId, formMessageId } = useFormField();
|
|
11286
|
-
return /* @__PURE__ */
|
|
11510
|
+
return /* @__PURE__ */ jsx60(
|
|
11287
11511
|
Slot7,
|
|
11288
11512
|
{
|
|
11289
11513
|
"data-slot": "form-control",
|
|
@@ -11299,7 +11523,7 @@ function BaseFormDescription({
|
|
|
11299
11523
|
...props
|
|
11300
11524
|
}) {
|
|
11301
11525
|
const { formDescriptionId } = useFormField();
|
|
11302
|
-
return /* @__PURE__ */
|
|
11526
|
+
return /* @__PURE__ */ jsx60(
|
|
11303
11527
|
"p",
|
|
11304
11528
|
{
|
|
11305
11529
|
"data-slot": "form-description",
|
|
@@ -11315,7 +11539,7 @@ function BaseFormMessage({ className, ...props }) {
|
|
|
11315
11539
|
if (!body) {
|
|
11316
11540
|
return null;
|
|
11317
11541
|
}
|
|
11318
|
-
return /* @__PURE__ */
|
|
11542
|
+
return /* @__PURE__ */ jsx60(
|
|
11319
11543
|
"p",
|
|
11320
11544
|
{
|
|
11321
11545
|
"data-slot": "form-message",
|
|
@@ -11329,7 +11553,7 @@ function BaseFormMessage({ className, ...props }) {
|
|
|
11329
11553
|
|
|
11330
11554
|
// src/ui/form/FormField.tsx
|
|
11331
11555
|
import * as React22 from "react";
|
|
11332
|
-
import { jsx as
|
|
11556
|
+
import { jsx as jsx61, jsxs as jsxs41 } from "react/jsx-runtime";
|
|
11333
11557
|
var FormField = ({
|
|
11334
11558
|
control,
|
|
11335
11559
|
field,
|
|
@@ -11337,18 +11561,18 @@ var FormField = ({
|
|
|
11337
11561
|
onBlur,
|
|
11338
11562
|
className
|
|
11339
11563
|
}) => {
|
|
11340
|
-
return /* @__PURE__ */
|
|
11564
|
+
return /* @__PURE__ */ jsx61(
|
|
11341
11565
|
BaseFormField,
|
|
11342
11566
|
{
|
|
11343
11567
|
control,
|
|
11344
11568
|
name: field.name,
|
|
11345
|
-
render: ({ field: formField }) => /* @__PURE__ */
|
|
11346
|
-
field.label && /* @__PURE__ */
|
|
11569
|
+
render: ({ field: formField }) => /* @__PURE__ */ jsxs41(BaseFormItem, { className: cn("w-full", className), children: [
|
|
11570
|
+
field.label && /* @__PURE__ */ jsxs41(BaseFormLabel, { className: "gap-1", children: [
|
|
11347
11571
|
field.label,
|
|
11348
|
-
field.required && /* @__PURE__ */
|
|
11349
|
-
field.optional && /* @__PURE__ */
|
|
11572
|
+
field.required && /* @__PURE__ */ jsx61("span", { className: "text-element-inverse-red", children: "*" }),
|
|
11573
|
+
field.optional && /* @__PURE__ */ jsx61("span", { className: "text-title-sm!", children: "(Optional)" })
|
|
11350
11574
|
] }),
|
|
11351
|
-
/* @__PURE__ */
|
|
11575
|
+
/* @__PURE__ */ jsx61(BaseFormControl, { children: React22.isValidElement(field.render) ? React22.cloneElement(
|
|
11352
11576
|
field.render,
|
|
11353
11577
|
{
|
|
11354
11578
|
...formField,
|
|
@@ -11358,7 +11582,7 @@ var FormField = ({
|
|
|
11358
11582
|
}
|
|
11359
11583
|
}
|
|
11360
11584
|
) : field.render }),
|
|
11361
|
-
isShowError && /* @__PURE__ */
|
|
11585
|
+
isShowError && /* @__PURE__ */ jsx61(BaseFormMessage, {})
|
|
11362
11586
|
] })
|
|
11363
11587
|
},
|
|
11364
11588
|
field.name
|
|
@@ -11371,7 +11595,7 @@ import {
|
|
|
11371
11595
|
Controller as Controller2,
|
|
11372
11596
|
useFormContext as useFormContext2
|
|
11373
11597
|
} from "react-hook-form";
|
|
11374
|
-
import { jsx as
|
|
11598
|
+
import { jsx as jsx62, jsxs as jsxs42 } from "react/jsx-runtime";
|
|
11375
11599
|
var FormMethodsContext = createContext4(
|
|
11376
11600
|
null
|
|
11377
11601
|
);
|
|
@@ -11382,11 +11606,11 @@ function Form({
|
|
|
11382
11606
|
className,
|
|
11383
11607
|
children
|
|
11384
11608
|
}) {
|
|
11385
|
-
return /* @__PURE__ */
|
|
11609
|
+
return /* @__PURE__ */ jsx62(
|
|
11386
11610
|
FormMethodsContext.Provider,
|
|
11387
11611
|
{
|
|
11388
11612
|
value: formMethods,
|
|
11389
|
-
children: /* @__PURE__ */
|
|
11613
|
+
children: /* @__PURE__ */ jsx62(BaseForm, { ...formMethods, children: /* @__PURE__ */ jsx62(
|
|
11390
11614
|
"form",
|
|
11391
11615
|
{
|
|
11392
11616
|
id,
|
|
@@ -11407,7 +11631,7 @@ Form.InputField = function InputField({
|
|
|
11407
11631
|
...props
|
|
11408
11632
|
}) {
|
|
11409
11633
|
const { control } = useFormContext2();
|
|
11410
|
-
return /* @__PURE__ */
|
|
11634
|
+
return /* @__PURE__ */ jsx62(
|
|
11411
11635
|
FormField,
|
|
11412
11636
|
{
|
|
11413
11637
|
className: "w-full",
|
|
@@ -11418,7 +11642,7 @@ Form.InputField = function InputField({
|
|
|
11418
11642
|
name,
|
|
11419
11643
|
label,
|
|
11420
11644
|
required,
|
|
11421
|
-
render: /* @__PURE__ */
|
|
11645
|
+
render: /* @__PURE__ */ jsx62(Input, { ...props, inputClassName: props.inputClassName })
|
|
11422
11646
|
}
|
|
11423
11647
|
}
|
|
11424
11648
|
);
|
|
@@ -11429,7 +11653,7 @@ Form.PasswordField = function PasswordField({
|
|
|
11429
11653
|
...props
|
|
11430
11654
|
}) {
|
|
11431
11655
|
const { control } = useFormContext2();
|
|
11432
|
-
return /* @__PURE__ */
|
|
11656
|
+
return /* @__PURE__ */ jsx62(
|
|
11433
11657
|
FormField,
|
|
11434
11658
|
{
|
|
11435
11659
|
className: "w-full",
|
|
@@ -11437,7 +11661,7 @@ Form.PasswordField = function PasswordField({
|
|
|
11437
11661
|
field: {
|
|
11438
11662
|
name,
|
|
11439
11663
|
label,
|
|
11440
|
-
render: /* @__PURE__ */
|
|
11664
|
+
render: /* @__PURE__ */ jsx62(PasswordInput, { ...props })
|
|
11441
11665
|
}
|
|
11442
11666
|
}
|
|
11443
11667
|
);
|
|
@@ -11449,7 +11673,7 @@ Form.SelectInputField = function SelectInputField({
|
|
|
11449
11673
|
...props
|
|
11450
11674
|
}) {
|
|
11451
11675
|
const { control } = useFormContext2();
|
|
11452
|
-
return /* @__PURE__ */
|
|
11676
|
+
return /* @__PURE__ */ jsx62(
|
|
11453
11677
|
FormField,
|
|
11454
11678
|
{
|
|
11455
11679
|
control,
|
|
@@ -11457,7 +11681,7 @@ Form.SelectInputField = function SelectInputField({
|
|
|
11457
11681
|
name,
|
|
11458
11682
|
required,
|
|
11459
11683
|
label,
|
|
11460
|
-
render: /* @__PURE__ */
|
|
11684
|
+
render: /* @__PURE__ */ jsx62(SelectInput, { ...props })
|
|
11461
11685
|
}
|
|
11462
11686
|
}
|
|
11463
11687
|
);
|
|
@@ -11469,14 +11693,14 @@ Form.MultiSelectField = function MultiSelectField({
|
|
|
11469
11693
|
}) {
|
|
11470
11694
|
const { control, watch, setValue } = useFormContext2();
|
|
11471
11695
|
const selectedValues = watch(name) || [];
|
|
11472
|
-
return /* @__PURE__ */
|
|
11696
|
+
return /* @__PURE__ */ jsx62(
|
|
11473
11697
|
FormField,
|
|
11474
11698
|
{
|
|
11475
11699
|
control,
|
|
11476
11700
|
field: {
|
|
11477
11701
|
name,
|
|
11478
11702
|
label,
|
|
11479
|
-
render: /* @__PURE__ */
|
|
11703
|
+
render: /* @__PURE__ */ jsx62(
|
|
11480
11704
|
MultiSelect,
|
|
11481
11705
|
{
|
|
11482
11706
|
...props,
|
|
@@ -11495,7 +11719,7 @@ Form.TextareaField = function TextareaField({
|
|
|
11495
11719
|
...props
|
|
11496
11720
|
}) {
|
|
11497
11721
|
const { control } = useFormContext2();
|
|
11498
|
-
return /* @__PURE__ */
|
|
11722
|
+
return /* @__PURE__ */ jsx62(
|
|
11499
11723
|
FormField,
|
|
11500
11724
|
{
|
|
11501
11725
|
control,
|
|
@@ -11503,7 +11727,7 @@ Form.TextareaField = function TextareaField({
|
|
|
11503
11727
|
name,
|
|
11504
11728
|
label,
|
|
11505
11729
|
optional,
|
|
11506
|
-
render: /* @__PURE__ */
|
|
11730
|
+
render: /* @__PURE__ */ jsx62(TextAreaInput_default, { ...props })
|
|
11507
11731
|
}
|
|
11508
11732
|
}
|
|
11509
11733
|
);
|
|
@@ -11521,14 +11745,14 @@ Form.FileUploadField = function FileUploadFieldComponent({
|
|
|
11521
11745
|
const { control, formState } = useFormContext2();
|
|
11522
11746
|
const fieldError = formState.errors[name];
|
|
11523
11747
|
const hasValidationError = !!fieldError;
|
|
11524
|
-
return /* @__PURE__ */
|
|
11748
|
+
return /* @__PURE__ */ jsx62(
|
|
11525
11749
|
Controller2,
|
|
11526
11750
|
{
|
|
11527
11751
|
control,
|
|
11528
11752
|
name,
|
|
11529
|
-
render: ({ field: formField }) => /* @__PURE__ */
|
|
11530
|
-
label && /* @__PURE__ */
|
|
11531
|
-
/* @__PURE__ */
|
|
11753
|
+
render: ({ field: formField }) => /* @__PURE__ */ jsxs42("div", { className: "space-y-1", children: [
|
|
11754
|
+
label && /* @__PURE__ */ jsx62("label", { htmlFor: name, className: "font-medium", children: label }),
|
|
11755
|
+
/* @__PURE__ */ jsx62(
|
|
11532
11756
|
FileUploadField,
|
|
11533
11757
|
{
|
|
11534
11758
|
field: { name, isMultiple, maxFiles, children },
|
|
@@ -11559,7 +11783,7 @@ Form.DateInputField = function DateInputField({
|
|
|
11559
11783
|
}) {
|
|
11560
11784
|
const { control, watch, setValue } = useFormContext2();
|
|
11561
11785
|
const value = watch(name);
|
|
11562
|
-
return /* @__PURE__ */
|
|
11786
|
+
return /* @__PURE__ */ jsx62(
|
|
11563
11787
|
FormField,
|
|
11564
11788
|
{
|
|
11565
11789
|
control,
|
|
@@ -11567,7 +11791,7 @@ Form.DateInputField = function DateInputField({
|
|
|
11567
11791
|
name,
|
|
11568
11792
|
label,
|
|
11569
11793
|
required,
|
|
11570
|
-
render: /* @__PURE__ */
|
|
11794
|
+
render: /* @__PURE__ */ jsx62(
|
|
11571
11795
|
DatePickerInput,
|
|
11572
11796
|
{
|
|
11573
11797
|
...props,
|
|
@@ -11586,14 +11810,14 @@ Form.TimeInputField = function TimeInputField({
|
|
|
11586
11810
|
...props
|
|
11587
11811
|
}) {
|
|
11588
11812
|
const { control, setValue } = useFormContext2();
|
|
11589
|
-
return /* @__PURE__ */
|
|
11813
|
+
return /* @__PURE__ */ jsx62(
|
|
11590
11814
|
FormField,
|
|
11591
11815
|
{
|
|
11592
11816
|
control,
|
|
11593
11817
|
field: {
|
|
11594
11818
|
name,
|
|
11595
11819
|
label,
|
|
11596
|
-
render: /* @__PURE__ */
|
|
11820
|
+
render: /* @__PURE__ */ jsx62(
|
|
11597
11821
|
TimePicker,
|
|
11598
11822
|
{
|
|
11599
11823
|
onValueChange: (value) => {
|
|
@@ -11612,13 +11836,13 @@ Form.CheckboxField = function CheckboxField({
|
|
|
11612
11836
|
...props
|
|
11613
11837
|
}) {
|
|
11614
11838
|
const { control } = useFormContext2();
|
|
11615
|
-
return /* @__PURE__ */
|
|
11839
|
+
return /* @__PURE__ */ jsx62(
|
|
11616
11840
|
FormField,
|
|
11617
11841
|
{
|
|
11618
11842
|
control,
|
|
11619
11843
|
field: {
|
|
11620
11844
|
name,
|
|
11621
|
-
render: /* @__PURE__ */
|
|
11845
|
+
render: /* @__PURE__ */ jsx62(Checkbox, { value: name, label, ...props })
|
|
11622
11846
|
}
|
|
11623
11847
|
}
|
|
11624
11848
|
);
|
|
@@ -11628,12 +11852,12 @@ Form.OTPInputField = function OTPInputField({
|
|
|
11628
11852
|
...props
|
|
11629
11853
|
}) {
|
|
11630
11854
|
const { control } = useFormContext2();
|
|
11631
|
-
return /* @__PURE__ */
|
|
11855
|
+
return /* @__PURE__ */ jsx62(
|
|
11632
11856
|
FormField,
|
|
11633
11857
|
{
|
|
11634
11858
|
className: "w-full",
|
|
11635
11859
|
control,
|
|
11636
|
-
field: { name, render: /* @__PURE__ */
|
|
11860
|
+
field: { name, render: /* @__PURE__ */ jsx62(OTPInput, { ...props }) }
|
|
11637
11861
|
}
|
|
11638
11862
|
);
|
|
11639
11863
|
};
|
|
@@ -11644,14 +11868,14 @@ Form.RadioField = function RadioField({
|
|
|
11644
11868
|
}) {
|
|
11645
11869
|
const { control } = useFormContext2();
|
|
11646
11870
|
const { setValue } = useFormContext2();
|
|
11647
|
-
return /* @__PURE__ */
|
|
11871
|
+
return /* @__PURE__ */ jsx62(
|
|
11648
11872
|
FormField,
|
|
11649
11873
|
{
|
|
11650
11874
|
control,
|
|
11651
11875
|
field: {
|
|
11652
11876
|
name,
|
|
11653
11877
|
label,
|
|
11654
|
-
render: /* @__PURE__ */
|
|
11878
|
+
render: /* @__PURE__ */ jsx62(
|
|
11655
11879
|
Radio,
|
|
11656
11880
|
{
|
|
11657
11881
|
...props,
|
|
@@ -11668,13 +11892,13 @@ Form.ComboboxField = function ComboboxField({
|
|
|
11668
11892
|
}) {
|
|
11669
11893
|
const { control, setValue, watch } = useFormContext2();
|
|
11670
11894
|
const value = watch(name);
|
|
11671
|
-
return /* @__PURE__ */
|
|
11895
|
+
return /* @__PURE__ */ jsx62(
|
|
11672
11896
|
FormField,
|
|
11673
11897
|
{
|
|
11674
11898
|
control,
|
|
11675
11899
|
field: {
|
|
11676
11900
|
name,
|
|
11677
|
-
render: /* @__PURE__ */
|
|
11901
|
+
render: /* @__PURE__ */ jsx62(
|
|
11678
11902
|
Combobox,
|
|
11679
11903
|
{
|
|
11680
11904
|
...props,
|
|
@@ -11696,7 +11920,7 @@ Form.SwitchField = function SwitchField({
|
|
|
11696
11920
|
}) {
|
|
11697
11921
|
const { control, setValue, watch } = useFormContext2();
|
|
11698
11922
|
const value = watch(name);
|
|
11699
|
-
return /* @__PURE__ */
|
|
11923
|
+
return /* @__PURE__ */ jsx62(
|
|
11700
11924
|
FormField,
|
|
11701
11925
|
{
|
|
11702
11926
|
control,
|
|
@@ -11704,9 +11928,9 @@ Form.SwitchField = function SwitchField({
|
|
|
11704
11928
|
field: {
|
|
11705
11929
|
name,
|
|
11706
11930
|
label,
|
|
11707
|
-
render: /* @__PURE__ */
|
|
11708
|
-
prefix && /* @__PURE__ */
|
|
11709
|
-
/* @__PURE__ */
|
|
11931
|
+
render: /* @__PURE__ */ jsxs42("div", { className: "flex items-center", children: [
|
|
11932
|
+
prefix && /* @__PURE__ */ jsx62("span", { className: "mr-2", children: prefix }),
|
|
11933
|
+
/* @__PURE__ */ jsx62(
|
|
11710
11934
|
Switch,
|
|
11711
11935
|
{
|
|
11712
11936
|
...props,
|
|
@@ -11714,7 +11938,7 @@ Form.SwitchField = function SwitchField({
|
|
|
11714
11938
|
onCheckedChange: (checked) => setValue(name, checked)
|
|
11715
11939
|
}
|
|
11716
11940
|
),
|
|
11717
|
-
suffix && /* @__PURE__ */
|
|
11941
|
+
suffix && /* @__PURE__ */ jsx62("span", { className: "ml-2", children: suffix })
|
|
11718
11942
|
] })
|
|
11719
11943
|
}
|
|
11720
11944
|
}
|
|
@@ -12727,6 +12951,7 @@ export {
|
|
|
12727
12951
|
FileUploadField,
|
|
12728
12952
|
Form,
|
|
12729
12953
|
FormField,
|
|
12954
|
+
GoogleMapView,
|
|
12730
12955
|
GradientContainer,
|
|
12731
12956
|
Grid,
|
|
12732
12957
|
IconButton,
|