@sustaina/shared-ui 1.34.0 → 1.36.0

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.js CHANGED
@@ -4,7 +4,7 @@ var clsx2 = require('clsx');
4
4
  var tailwindMerge = require('tailwind-merge');
5
5
  var jsxRuntime = require('react/jsx-runtime');
6
6
  var AccordionPrimitive = require('@radix-ui/react-accordion');
7
- var React26 = require('react');
7
+ var React25 = require('react');
8
8
  var lucideReact = require('lucide-react');
9
9
  var reactDom = require('react-dom');
10
10
  var SelectPrimitive = require('@radix-ui/react-select');
@@ -84,7 +84,7 @@ function _interopNamespace(e) {
84
84
 
85
85
  var clsx2__default = /*#__PURE__*/_interopDefault(clsx2);
86
86
  var AccordionPrimitive__namespace = /*#__PURE__*/_interopNamespace(AccordionPrimitive);
87
- var React26__namespace = /*#__PURE__*/_interopNamespace(React26);
87
+ var React25__namespace = /*#__PURE__*/_interopNamespace(React25);
88
88
  var SelectPrimitive__namespace = /*#__PURE__*/_interopNamespace(SelectPrimitive);
89
89
  var LabelPrimitive__namespace = /*#__PURE__*/_interopNamespace(LabelPrimitive);
90
90
  var PopoverPrimitive__namespace = /*#__PURE__*/_interopNamespace(PopoverPrimitive);
@@ -269,48 +269,55 @@ function cn(...args) {
269
269
  return tailwindMerge.twMerge(clsx2.clsx(args));
270
270
  }
271
271
  var ArrowIcon = ({
272
- width = "1em",
273
- height = "1em",
272
+ size = "1em",
273
+ width,
274
+ height,
274
275
  fill = "none",
276
+ color = "#127035",
275
277
  ...props
276
278
  }) => /* @__PURE__ */ jsxRuntime.jsx(
277
279
  "svg",
278
280
  {
279
281
  xmlns: "http://www.w3.org/2000/svg",
280
282
  viewBox: "0 0 14 9",
281
- width,
282
- height,
283
+ width: width ?? size,
284
+ height: height ?? size,
283
285
  fill,
284
286
  ...props,
285
- children: /* @__PURE__ */ jsxRuntime.jsx("path", { d: "M0.293 0.723L6.79 8.723L13.293 0.723H0.293Z", fill: props.color || "#127035" })
287
+ children: /* @__PURE__ */ jsxRuntime.jsx("path", { d: "M0.293 0.723L6.79 8.723L13.293 0.723H0.293Z", fill: color })
286
288
  }
287
289
  );
288
290
  var arrow_default = ArrowIcon;
289
- var SuiCalendarIcon = (props) => /* @__PURE__ */ jsxRuntime.jsx(
291
+ var DecreaseIcon = ({
292
+ size = 16,
293
+ color = "currentColor",
294
+ className,
295
+ ...props
296
+ }) => /* @__PURE__ */ jsxRuntime.jsx(
290
297
  "svg",
291
298
  {
292
299
  xmlns: "http://www.w3.org/2000/svg",
293
- width: "1em",
294
- height: "1em",
295
- fill: "none",
296
- viewBox: "0 0 25 25",
300
+ viewBox: "0 0 9 4",
301
+ width: size,
302
+ height: size,
303
+ className,
304
+ fill: color,
297
305
  ...props,
298
- children: /* @__PURE__ */ jsxRuntime.jsx(
299
- "path",
300
- {
301
- fill: "currentColor",
302
- d: "M8.504 11.205H5.837v2.4h2.667zm5.333 0h-2.666v2.4h2.666zm5.334 0h-2.667v2.4h2.667zm2.666-8.4h-1.333v-2.4h-2.667v2.4H7.171v-2.4H4.504v2.4H3.17c-1.48 0-2.654 1.08-2.654 2.4l-.013 16.8c0 1.32 1.187 2.4 2.667 2.4h18.666c1.467 0 2.667-1.08 2.667-2.4v-16.8c0-1.32-1.2-2.4-2.667-2.4m0 19.2H3.171v-13.2h18.666z"
303
- }
304
- )
306
+ children: /* @__PURE__ */ jsxRuntime.jsx("rect", { x: "0.572754", y: "0.441406", width: "7.57659", height: "2.75347", fill: color })
305
307
  }
306
308
  );
307
- var calendar_default = SuiCalendarIcon;
308
- var SuiCalendarIcon2 = (props) => /* @__PURE__ */ jsxRuntime.jsxs(
309
+ var decrease_default = DecreaseIcon;
310
+ var FiltersIcon = ({
311
+ size = 24,
312
+ color = "#379A2A",
313
+ strokeWidth = 1.5,
314
+ ...props
315
+ }) => /* @__PURE__ */ jsxRuntime.jsxs(
309
316
  "svg",
310
317
  {
311
- width: "20",
312
- height: "20",
313
- viewBox: "0 0 20 20",
318
+ width: size,
319
+ height: size,
320
+ viewBox: "0 0 24 24",
314
321
  fill: "none",
315
322
  xmlns: "http://www.w3.org/2000/svg",
316
323
  ...props,
@@ -318,9 +325,9 @@ var SuiCalendarIcon2 = (props) => /* @__PURE__ */ jsxRuntime.jsxs(
318
325
  /* @__PURE__ */ jsxRuntime.jsx(
319
326
  "path",
320
327
  {
321
- d: "M6.66666 1.66675V5.00008",
322
- stroke: "currentColor",
323
- strokeWidth: "1.5",
328
+ d: "M10 18H14",
329
+ stroke: color,
330
+ strokeWidth,
324
331
  strokeLinecap: "round",
325
332
  strokeLinejoin: "round"
326
333
  }
@@ -328,9 +335,9 @@ var SuiCalendarIcon2 = (props) => /* @__PURE__ */ jsxRuntime.jsxs(
328
335
  /* @__PURE__ */ jsxRuntime.jsx(
329
336
  "path",
330
337
  {
331
- d: "M13.3333 1.66675V5.00008",
332
- stroke: "currentColor",
333
- strokeWidth: "1.5",
338
+ d: "M11 6H3",
339
+ stroke: color,
340
+ strokeWidth,
334
341
  strokeLinecap: "round",
335
342
  strokeLinejoin: "round"
336
343
  }
@@ -338,9 +345,9 @@ var SuiCalendarIcon2 = (props) => /* @__PURE__ */ jsxRuntime.jsxs(
338
345
  /* @__PURE__ */ jsxRuntime.jsx(
339
346
  "path",
340
347
  {
341
- d: "M15.8333 3.33325H4.16667C3.24619 3.33325 2.5 4.07944 2.5 4.99992V16.6666C2.5 17.5871 3.24619 18.3333 4.16667 18.3333H15.8333C16.7538 18.3333 17.5 17.5871 17.5 16.6666V4.99992C17.5 4.07944 16.7538 3.33325 15.8333 3.33325Z",
342
- stroke: "currentColor",
343
- strokeWidth: "1.5",
348
+ d: "M15 6H21",
349
+ stroke: color,
350
+ strokeWidth,
344
351
  strokeLinecap: "round",
345
352
  strokeLinejoin: "round"
346
353
  }
@@ -348,9 +355,9 @@ var SuiCalendarIcon2 = (props) => /* @__PURE__ */ jsxRuntime.jsxs(
348
355
  /* @__PURE__ */ jsxRuntime.jsx(
349
356
  "path",
350
357
  {
351
- d: "M2.5 8.33325H17.5",
352
- stroke: "currentColor",
353
- strokeWidth: "1.5",
358
+ d: "M18 9V3",
359
+ stroke: color,
360
+ strokeWidth,
354
361
  strokeLinecap: "round",
355
362
  strokeLinejoin: "round"
356
363
  }
@@ -358,111 +365,413 @@ var SuiCalendarIcon2 = (props) => /* @__PURE__ */ jsxRuntime.jsxs(
358
365
  /* @__PURE__ */ jsxRuntime.jsx(
359
366
  "path",
360
367
  {
361
- d: "M6.66666 11.6667H6.67499",
362
- stroke: "currentColor",
363
- strokeWidth: "1.5",
368
+ d: "M7 12H15",
369
+ stroke: color,
370
+ strokeWidth,
364
371
  strokeLinecap: "round",
365
372
  strokeLinejoin: "round"
366
373
  }
374
+ )
375
+ ]
376
+ }
377
+ );
378
+ var filters_default = FiltersIcon;
379
+ var InformationIcon = ({
380
+ size = 16,
381
+ color = "currentColor",
382
+ className,
383
+ ...props
384
+ }) => /* @__PURE__ */ jsxRuntime.jsxs(
385
+ "svg",
386
+ {
387
+ xmlns: "http://www.w3.org/2000/svg",
388
+ viewBox: "0 0 34 34",
389
+ width: size,
390
+ height: size,
391
+ className,
392
+ fill: color,
393
+ ...props,
394
+ children: [
395
+ /* @__PURE__ */ jsxRuntime.jsxs("g", { clipPath: "url(#clip0_789_42722)", children: [
396
+ /* @__PURE__ */ jsxRuntime.jsx(
397
+ "path",
398
+ {
399
+ d: "M16.7158 33.4883C7.61916 33.4883 0.21582 26.0849 0.21582 16.9883C0.21582 7.89162 7.61916 0.488281 16.7158 0.488281C25.8125 0.488281 33.2158 7.89162 33.2158 16.9883C33.2158 26.0849 25.8125 33.4883 16.7158 33.4883ZM16.7158 1.80093C8.34112 1.80093 1.52847 8.61358 1.52847 16.9883C1.52847 25.363 8.34112 32.1756 16.7158 32.1756C25.0905 32.1756 31.9032 25.363 31.9032 16.9883C31.9032 8.61358 25.0905 1.80093 16.7158 1.80093Z",
400
+ fill: color
401
+ }
402
+ ),
403
+ /* @__PURE__ */ jsxRuntime.jsx(
404
+ "path",
405
+ {
406
+ d: "M18.9999 21.0838H13.5393V20.5325C13.5393 19.6005 13.6443 18.8523 13.8543 18.2747C14.0643 17.6972 14.3794 17.1721 14.7994 16.6864C15.2195 16.2139 16.1514 15.3606 17.6085 14.153C18.3829 13.5229 18.7767 12.9454 18.7767 12.4203C18.7767 11.8952 18.6192 11.4883 18.3042 11.1864C17.9892 10.8845 17.5166 10.7532 16.8865 10.7532C16.204 10.7532 15.6395 10.9764 15.1932 11.4227C14.7469 11.869 14.4581 12.6566 14.34 13.7723L8.76123 13.0766C8.95813 11.0289 9.69321 9.37496 10.9927 8.12794C12.2923 6.88093 14.2744 6.25085 16.9653 6.25085C19.0524 6.25085 20.7457 6.68403 22.019 7.5635C23.7648 8.74489 24.6312 10.3069 24.6312 12.2759C24.6312 13.0898 24.408 13.8773 23.9617 14.6256C23.5154 15.3869 22.5966 16.3057 21.2051 17.3952C20.2338 18.1566 19.63 18.7735 19.3674 19.2461C19.118 19.7055 18.9868 20.3225 18.9868 21.0575L18.9999 21.0838ZM13.3555 22.5408H19.2099V27.6995H13.3555V22.5408Z",
407
+ fill: color
408
+ }
409
+ )
410
+ ] }),
411
+ /* @__PURE__ */ jsxRuntime.jsx("defs", { children: /* @__PURE__ */ jsxRuntime.jsx("clipPath", { id: "clip0_789_42722", children: /* @__PURE__ */ jsxRuntime.jsx("rect", { width: "33", height: "33", fill: "white", transform: "translate(0.21582 0.488281)" }) }) })
412
+ ]
413
+ }
414
+ );
415
+ var information_default = InformationIcon;
416
+ var NotFoundIcon = ({
417
+ width = 24,
418
+ height = 24,
419
+ fill = "currentColor",
420
+ className = "",
421
+ ...props
422
+ }) => /* @__PURE__ */ jsxRuntime.jsxs(
423
+ "svg",
424
+ {
425
+ viewBox: "0 0 106 100",
426
+ xmlns: "http://www.w3.org/2000/svg",
427
+ width,
428
+ height,
429
+ fill,
430
+ className,
431
+ ...props,
432
+ children: [
433
+ /* @__PURE__ */ jsxRuntime.jsx(
434
+ "path",
435
+ {
436
+ d: "M44.7381 99.6137C69.3718 99.6137 89.3413 95.8824 89.3413 91.2795C89.3413 86.6767 69.3718 82.9453 44.7381 82.9453C20.1043 82.9453 0.134766 86.6767 0.134766 91.2795C0.134766 95.8824 20.1043 99.6137 44.7381 99.6137Z",
437
+ fill: "#B0DFAA"
438
+ }
367
439
  ),
368
440
  /* @__PURE__ */ jsxRuntime.jsx(
369
441
  "path",
370
442
  {
371
- d: "M10 11.6667H10.0083",
372
- stroke: "currentColor",
373
- strokeWidth: "1.5",
374
- strokeLinecap: "round",
375
- strokeLinejoin: "round"
443
+ fillRule: "evenodd",
444
+ clipRule: "evenodd",
445
+ d: "M80.4202 66.795L64.6801 47.4233C63.9249 46.5114 62.8209 45.9595 61.6584 45.9595H27.8163C26.6545 45.9595 25.5505 46.5114 24.7953 47.4233L9.05579 66.795V76.9154H80.4209V66.795H80.4202Z",
446
+ fill: "#CEE5D6"
376
447
  }
377
448
  ),
378
449
  /* @__PURE__ */ jsxRuntime.jsx(
379
450
  "path",
380
451
  {
381
- d: "M13.3333 11.6667H13.3417",
382
- stroke: "currentColor",
383
- strokeWidth: "1.5",
384
- strokeLinecap: "round",
385
- strokeLinejoin: "round"
452
+ fillRule: "evenodd",
453
+ clipRule: "evenodd",
454
+ d: "M22.3913 20.957H67.0841C67.782 20.957 68.4514 21.2343 68.9449 21.7278C69.4384 22.2213 69.7157 22.8907 69.7157 23.5886V84.9991C69.7157 85.6971 69.4384 86.3664 68.9449 86.8599C68.4514 87.3534 67.782 87.6307 67.0841 87.6307H22.3913C21.6934 87.6307 21.0241 87.3534 20.5305 86.8599C20.037 86.3664 19.7598 85.6971 19.7598 84.9991V23.5886C19.7598 22.8907 20.037 22.2213 20.5305 21.7278C21.0241 21.2343 21.6934 20.957 22.3913 20.957V20.957Z",
455
+ fill: "#F9F9F9"
386
456
  }
387
457
  ),
388
458
  /* @__PURE__ */ jsxRuntime.jsx(
389
459
  "path",
390
460
  {
391
- d: "M6.66666 15H6.67499",
392
- stroke: "currentColor",
393
- strokeWidth: "1.5",
394
- strokeLinecap: "round",
395
- strokeLinejoin: "round"
461
+ fillRule: "evenodd",
462
+ clipRule: "evenodd",
463
+ d: "M28.2124 27.5049H61.2631C61.612 27.5049 61.9467 27.6435 62.1935 27.8903C62.4402 28.137 62.5789 28.4717 62.5789 28.8207V45.2398C62.5789 45.5887 62.4402 45.9234 62.1935 46.1702C61.9467 46.4169 61.612 46.5555 61.2631 46.5555H28.2124C27.8634 46.5555 27.5288 46.4169 27.282 46.1702C27.0353 45.9234 26.8966 45.5887 26.8966 45.2398V28.8207C26.8966 28.4717 27.0353 28.137 27.282 27.8903C27.5288 27.6435 27.8634 27.5049 28.2124 27.5049ZM28.3848 53.6983H61.0907C61.4854 53.6983 61.8639 53.8551 62.143 54.1342C62.4221 54.4133 62.5789 54.7918 62.5789 55.1865C62.5789 55.5811 62.4221 55.9597 62.143 56.2387C61.8639 56.5178 61.4854 56.6746 61.0907 56.6746H28.3848C27.9901 56.6746 27.6116 56.5178 27.3325 56.2387C27.0534 55.9597 26.8966 55.5811 26.8966 55.1865C26.8966 54.7918 27.0534 54.4133 27.3325 54.1342C27.6116 53.8551 27.9901 53.6983 28.3848 53.6983ZM28.3848 61.4371H61.0907C61.4855 61.4371 61.8641 61.5939 62.1432 61.8731C62.4224 62.1522 62.5792 62.5308 62.5792 62.9256C62.5792 63.3204 62.4224 63.699 62.1432 63.9781C61.8641 64.2573 61.4855 64.4141 61.0907 64.4141H28.3848C27.99 64.4141 27.6114 64.2573 27.3323 63.9781C27.0531 63.699 26.8963 63.3204 26.8963 62.9256C26.8963 62.5308 27.0531 62.1522 27.3323 61.8731C27.6114 61.5939 27.99 61.4371 28.3848 61.4371ZM80.2749 90.0569C79.7651 92.0772 77.9743 93.5832 75.844 93.5832H13.6315C11.5012 93.5832 9.71044 92.0766 9.20123 90.0569C9.10411 89.6718 9.05505 89.2763 9.05518 88.8792V66.7957H26.3696C28.2822 66.7957 29.8236 68.4062 29.8236 70.3615V70.3878C29.8236 72.3424 31.3828 73.9207 33.2953 73.9207H56.1802C58.0927 73.9207 59.6519 72.3279 59.6519 70.3726V70.3647C59.6519 68.4095 61.1933 66.795 63.1058 66.795H80.4203V88.8799C80.4203 89.2858 80.3697 89.6799 80.2749 90.0569Z",
464
+ fill: "#DDEEE3"
396
465
  }
397
466
  ),
398
467
  /* @__PURE__ */ jsxRuntime.jsx(
399
468
  "path",
400
469
  {
401
- d: "M10 15H10.0083",
402
- stroke: "currentColor",
403
- strokeWidth: "1.5",
404
- strokeLinecap: "round",
405
- strokeLinejoin: "round"
470
+ fillRule: "evenodd",
471
+ clipRule: "evenodd",
472
+ d: "M82.4512 22.0242L77.9577 23.7676C77.8423 23.8125 77.7165 23.8239 77.5949 23.8005C77.4733 23.7771 77.3608 23.7198 77.2703 23.6353C77.1797 23.5507 77.1149 23.4424 77.0833 23.3226C77.0516 23.2029 77.0544 23.0767 77.0913 22.9584L78.3656 18.8749C76.6623 16.938 75.6624 14.5762 75.6624 12.0275C75.6624 5.45185 82.3189 0.121582 90.5308 0.121582C98.7406 0.121582 105.398 5.45185 105.398 12.0275C105.398 18.6032 98.7413 23.9334 90.5301 23.9334C87.5512 23.9334 84.7775 23.2321 82.4512 22.0242Z",
473
+ fill: "#DDEEE3"
406
474
  }
407
475
  ),
408
476
  /* @__PURE__ */ jsxRuntime.jsx(
409
477
  "path",
410
478
  {
411
- d: "M13.3333 15H13.3417",
412
- stroke: "currentColor",
413
- strokeWidth: "1.5",
414
- strokeLinecap: "round",
415
- strokeLinejoin: "round"
479
+ d: "M96.3874 14.1776C97.4226 14.1776 98.2617 13.3484 98.2617 12.3256C98.2617 11.3028 97.4226 10.4736 96.3874 10.4736C95.3522 10.4736 94.5131 11.3028 94.5131 12.3256C94.5131 13.3484 95.3522 14.1776 96.3874 14.1776Z",
480
+ fill: "white"
481
+ }
482
+ ),
483
+ /* @__PURE__ */ jsxRuntime.jsx(
484
+ "path",
485
+ {
486
+ fillRule: "evenodd",
487
+ clipRule: "evenodd",
488
+ d: "M86.5479 13.9459H82.7992L84.7058 10.7051L86.5479 13.9459ZM88.8906 10.7051H92.1702V13.9459H88.8906V10.7051Z",
489
+ fill: "white"
416
490
  }
417
491
  )
418
492
  ]
419
493
  }
420
494
  );
421
- var calendar2_default = SuiCalendarIcon2;
422
- var SuiCheckIcon = (props) => /* @__PURE__ */ jsxRuntime.jsxs(
495
+ var not_found_default = NotFoundIcon;
496
+ var PlusIcon = ({ size = 16, color = "currentColor", className, ...props }) => /* @__PURE__ */ jsxRuntime.jsxs(
423
497
  "svg",
424
498
  {
425
499
  xmlns: "http://www.w3.org/2000/svg",
426
- width: "1em",
427
- height: "1em",
500
+ viewBox: "0 0 9 9",
501
+ width: size,
502
+ height: size,
503
+ className,
504
+ fill: color,
505
+ ...props,
506
+ children: [
507
+ /* @__PURE__ */ jsxRuntime.jsx(
508
+ "path",
509
+ {
510
+ d: "M3.12305 8.23047L3.12305 0.653882L5.87652 0.653882L5.87652 8.23047L3.12305 8.23047Z",
511
+ fill: color
512
+ }
513
+ ),
514
+ /* @__PURE__ */ jsxRuntime.jsx(
515
+ "path",
516
+ {
517
+ d: "M3.12305 8.23047L3.12305 0.653882L5.87652 0.653882L5.87652 8.23047L3.12305 8.23047Z",
518
+ fill: color
519
+ }
520
+ ),
521
+ /* @__PURE__ */ jsxRuntime.jsx(
522
+ "path",
523
+ {
524
+ d: "M0.710938 3.06641L8.28752 3.06641V5.81988L0.710937 5.81988L0.710938 3.06641Z",
525
+ fill: color
526
+ }
527
+ ),
528
+ /* @__PURE__ */ jsxRuntime.jsx(
529
+ "path",
530
+ {
531
+ d: "M0.710938 3.06641L8.28752 3.06641V5.81988L0.710937 5.81988L0.710938 3.06641Z",
532
+ fill: color
533
+ }
534
+ )
535
+ ]
536
+ }
537
+ );
538
+ var plus_default = PlusIcon;
539
+ var CustomFieldIcon = ({
540
+ size = 16,
541
+ color = "currentColor",
542
+ className,
543
+ ...props
544
+ }) => /* @__PURE__ */ jsxRuntime.jsxs(
545
+ "svg",
546
+ {
547
+ width: size,
548
+ height: size,
549
+ viewBox: "0 0 30 30",
428
550
  fill: "none",
429
- viewBox: "0 0 24 24",
551
+ xmlns: "http://www.w3.org/2000/svg",
552
+ className,
430
553
  ...props,
431
554
  children: [
432
- /* @__PURE__ */ jsxRuntime.jsxs("g", { clipPath: "url(#check_svg__a)", children: [
555
+ /* @__PURE__ */ jsxRuntime.jsxs("g", { clipPath: "url(#clip0_14170_63977)", children: [
433
556
  /* @__PURE__ */ jsxRuntime.jsx(
434
557
  "path",
435
558
  {
436
- fill: "currentColor",
437
- d: "M10.976.043c9.629-.793 16.248 9.583 11.392 18.002-4.252 7.37-14.736 8.025-19.907 1.26C-3.276 11.799 1.616.815 10.976.044m5.59 7.791c-.284.048-.555.25-.775.428l-5.159 4.944c-.188.033-2.31-2.268-2.865-2.51-1.413-.619-2.427 1.01-1.22 2.22.73.733 2.573 2.531 3.354 3.044.407.267.853.335 1.295.104 1.429-1.295 2.87-2.6 4.249-3.948.647-.633 1.63-1.47 2.186-2.112.825-.95.12-2.369-1.065-2.169"
559
+ d: "M9.16987 12.9149C11.2388 12.9149 12.9159 11.2378 12.9159 9.1689C12.9159 7.10001 11.2388 5.42285 9.16987 5.42285C7.10099 5.42285 5.42383 7.10001 5.42383 9.1689C5.42383 11.2378 7.10099 12.9149 9.16987 12.9149Z",
560
+ fill: color
438
561
  }
439
562
  ),
440
563
  /* @__PURE__ */ jsxRuntime.jsx(
441
564
  "path",
442
565
  {
443
- fill: "#fff",
444
- d: "M16.567 7.835c1.186-.2 1.89 1.218 1.065 2.169-.557.64-1.54 1.479-2.187 2.112-1.379 1.348-2.818 2.653-4.248 3.948-.442.23-.889.162-1.295-.105-.782-.512-2.625-2.31-3.355-3.043-1.206-1.21-.192-2.84 1.221-2.221.556.243 2.677 2.544 2.865 2.51l5.16-4.943c.219-.178.489-.38.774-.429z"
566
+ d: "M16.4128 13.2318C16.8305 13.6494 17.5139 13.6494 17.9315 13.2318L19.7877 11.3757L21.6438 13.2318C22.0614 13.6494 22.7448 13.6494 23.1625 13.2318C23.5801 12.8142 23.5801 12.1308 23.1625 11.7131L21.3063 9.85699L23.1625 8.00084C23.5801 7.5832 23.5801 6.8998 23.1625 6.48217C22.7448 6.06454 22.0614 6.06454 21.6438 6.48217L19.7877 8.33832L17.9315 6.48217C17.5139 6.06454 16.8305 6.06454 16.4128 6.48217C15.9952 6.8998 15.9952 7.5832 16.4128 8.00084L18.269 9.85699L16.4128 11.7131C15.9952 12.1308 15.9952 12.8142 16.4128 13.2318Z",
567
+ fill: color
568
+ }
569
+ ),
570
+ /* @__PURE__ */ jsxRuntime.jsx(
571
+ "path",
572
+ {
573
+ d: "M12.375 17.0664H5.96284C5.49688 17.0664 5.11914 17.4441 5.11914 17.9101V24.3223C5.11914 24.7882 5.49688 25.166 5.11914 25.166H12.375C12.841 25.166 13.2187 24.7882 13.2187 24.3223V17.9101C13.2187 17.4441 12.841 17.0664 12.375 17.0664Z",
574
+ fill: color
575
+ }
576
+ ),
577
+ /* @__PURE__ */ jsxRuntime.jsx("path", { d: "M16.1816 24.6089H25.8315L21.0055 17.623L16.1816 24.6089Z", fill: color }),
578
+ /* @__PURE__ */ jsxRuntime.jsx(
579
+ "path",
580
+ {
581
+ d: "M28.1017 0H1.89833C0.852141 0 0 0.852141 0 1.89833V28.1017C0 29.1479 0.852141 30 1.89833 30H28.1017C29.1479 30 30 29.1479 30 28.1017V1.89833C30 0.852141 29.1479 0 28.1017 0ZM27.8907 27.8907H2.10926V2.10926H27.8907V27.8907Z",
582
+ fill: color
445
583
  }
446
584
  )
447
585
  ] }),
448
- /* @__PURE__ */ jsxRuntime.jsx("defs", { children: /* @__PURE__ */ jsxRuntime.jsx("clipPath", { id: "check_svg__a", children: /* @__PURE__ */ jsxRuntime.jsx("path", { fill: "#fff", d: "M0 0h24v24H0z" }) }) })
586
+ /* @__PURE__ */ jsxRuntime.jsx("defs", { children: /* @__PURE__ */ jsxRuntime.jsx("clipPath", { id: "clip0_14170_63977", children: /* @__PURE__ */ jsxRuntime.jsx("rect", { width: "30", height: "30", fill: "white" }) }) })
449
587
  ]
450
588
  }
451
589
  );
452
- var check_default = SuiCheckIcon;
453
- var SuiDotsVerticalIcon = (props) => /* @__PURE__ */ jsxRuntime.jsxs(
590
+ var custom_field_default = CustomFieldIcon;
591
+ var SuiCalendarIcon = ({
592
+ size = "1em",
593
+ width,
594
+ height,
595
+ color = "currentColor",
596
+ fill = "none",
597
+ ...props
598
+ }) => /* @__PURE__ */ jsxRuntime.jsx(
454
599
  "svg",
455
600
  {
456
601
  xmlns: "http://www.w3.org/2000/svg",
457
- width: "1em",
458
- height: "1em",
459
- fill: "none",
460
602
  viewBox: "0 0 25 25",
603
+ width: width ?? size,
604
+ height: height ?? size,
605
+ fill,
461
606
  ...props,
462
- children: [
463
- /* @__PURE__ */ jsxRuntime.jsx("g", { clipPath: "url(#dots-vertical_svg__a)", children: /* @__PURE__ */ jsxRuntime.jsx(
464
- "path",
465
- {
607
+ children: /* @__PURE__ */ jsxRuntime.jsx(
608
+ "path",
609
+ {
610
+ fill: color,
611
+ d: "M8.504 11.205H5.837v2.4h2.667zm5.333 0h-2.666v2.4h2.666zm5.334 0h-2.667v2.4h2.667zm2.666-8.4h-1.333v-2.4h-2.667v2.4H7.171v-2.4H4.504v2.4H3.17c-1.48 0-2.654 1.08-2.654 2.4l-.013 16.8c0 1.32 1.187 2.4 2.667 2.4h18.666c1.467 0 2.667-1.08 2.667-2.4v-16.8c0-1.32-1.2-2.4-2.667-2.4m0 19.2H3.171v-13.2h18.666z"
612
+ }
613
+ )
614
+ }
615
+ );
616
+ var calendar_default = SuiCalendarIcon;
617
+ var SuiCalendarIcon2 = (props) => /* @__PURE__ */ jsxRuntime.jsxs(
618
+ "svg",
619
+ {
620
+ width: "20",
621
+ height: "20",
622
+ viewBox: "0 0 20 20",
623
+ fill: "none",
624
+ xmlns: "http://www.w3.org/2000/svg",
625
+ ...props,
626
+ children: [
627
+ /* @__PURE__ */ jsxRuntime.jsx(
628
+ "path",
629
+ {
630
+ d: "M6.66666 1.66675V5.00008",
631
+ stroke: "currentColor",
632
+ strokeWidth: "1.5",
633
+ strokeLinecap: "round",
634
+ strokeLinejoin: "round"
635
+ }
636
+ ),
637
+ /* @__PURE__ */ jsxRuntime.jsx(
638
+ "path",
639
+ {
640
+ d: "M13.3333 1.66675V5.00008",
641
+ stroke: "currentColor",
642
+ strokeWidth: "1.5",
643
+ strokeLinecap: "round",
644
+ strokeLinejoin: "round"
645
+ }
646
+ ),
647
+ /* @__PURE__ */ jsxRuntime.jsx(
648
+ "path",
649
+ {
650
+ d: "M15.8333 3.33325H4.16667C3.24619 3.33325 2.5 4.07944 2.5 4.99992V16.6666C2.5 17.5871 3.24619 18.3333 4.16667 18.3333H15.8333C16.7538 18.3333 17.5 17.5871 17.5 16.6666V4.99992C17.5 4.07944 16.7538 3.33325 15.8333 3.33325Z",
651
+ stroke: "currentColor",
652
+ strokeWidth: "1.5",
653
+ strokeLinecap: "round",
654
+ strokeLinejoin: "round"
655
+ }
656
+ ),
657
+ /* @__PURE__ */ jsxRuntime.jsx(
658
+ "path",
659
+ {
660
+ d: "M2.5 8.33325H17.5",
661
+ stroke: "currentColor",
662
+ strokeWidth: "1.5",
663
+ strokeLinecap: "round",
664
+ strokeLinejoin: "round"
665
+ }
666
+ ),
667
+ /* @__PURE__ */ jsxRuntime.jsx(
668
+ "path",
669
+ {
670
+ d: "M6.66666 11.6667H6.67499",
671
+ stroke: "currentColor",
672
+ strokeWidth: "1.5",
673
+ strokeLinecap: "round",
674
+ strokeLinejoin: "round"
675
+ }
676
+ ),
677
+ /* @__PURE__ */ jsxRuntime.jsx(
678
+ "path",
679
+ {
680
+ d: "M10 11.6667H10.0083",
681
+ stroke: "currentColor",
682
+ strokeWidth: "1.5",
683
+ strokeLinecap: "round",
684
+ strokeLinejoin: "round"
685
+ }
686
+ ),
687
+ /* @__PURE__ */ jsxRuntime.jsx(
688
+ "path",
689
+ {
690
+ d: "M13.3333 11.6667H13.3417",
691
+ stroke: "currentColor",
692
+ strokeWidth: "1.5",
693
+ strokeLinecap: "round",
694
+ strokeLinejoin: "round"
695
+ }
696
+ ),
697
+ /* @__PURE__ */ jsxRuntime.jsx(
698
+ "path",
699
+ {
700
+ d: "M6.66666 15H6.67499",
701
+ stroke: "currentColor",
702
+ strokeWidth: "1.5",
703
+ strokeLinecap: "round",
704
+ strokeLinejoin: "round"
705
+ }
706
+ ),
707
+ /* @__PURE__ */ jsxRuntime.jsx(
708
+ "path",
709
+ {
710
+ d: "M10 15H10.0083",
711
+ stroke: "currentColor",
712
+ strokeWidth: "1.5",
713
+ strokeLinecap: "round",
714
+ strokeLinejoin: "round"
715
+ }
716
+ ),
717
+ /* @__PURE__ */ jsxRuntime.jsx(
718
+ "path",
719
+ {
720
+ d: "M13.3333 15H13.3417",
721
+ stroke: "currentColor",
722
+ strokeWidth: "1.5",
723
+ strokeLinecap: "round",
724
+ strokeLinejoin: "round"
725
+ }
726
+ )
727
+ ]
728
+ }
729
+ );
730
+ var calendar2_default = SuiCalendarIcon2;
731
+ var SuiCheckIcon = (props) => /* @__PURE__ */ jsxRuntime.jsxs(
732
+ "svg",
733
+ {
734
+ xmlns: "http://www.w3.org/2000/svg",
735
+ width: "1em",
736
+ height: "1em",
737
+ fill: "none",
738
+ viewBox: "0 0 24 24",
739
+ ...props,
740
+ children: [
741
+ /* @__PURE__ */ jsxRuntime.jsxs("g", { clipPath: "url(#check_svg__a)", children: [
742
+ /* @__PURE__ */ jsxRuntime.jsx(
743
+ "path",
744
+ {
745
+ fill: "currentColor",
746
+ d: "M10.976.043c9.629-.793 16.248 9.583 11.392 18.002-4.252 7.37-14.736 8.025-19.907 1.26C-3.276 11.799 1.616.815 10.976.044m5.59 7.791c-.284.048-.555.25-.775.428l-5.159 4.944c-.188.033-2.31-2.268-2.865-2.51-1.413-.619-2.427 1.01-1.22 2.22.73.733 2.573 2.531 3.354 3.044.407.267.853.335 1.295.104 1.429-1.295 2.87-2.6 4.249-3.948.647-.633 1.63-1.47 2.186-2.112.825-.95.12-2.369-1.065-2.169"
747
+ }
748
+ ),
749
+ /* @__PURE__ */ jsxRuntime.jsx(
750
+ "path",
751
+ {
752
+ fill: "#fff",
753
+ d: "M16.567 7.835c1.186-.2 1.89 1.218 1.065 2.169-.557.64-1.54 1.479-2.187 2.112-1.379 1.348-2.818 2.653-4.248 3.948-.442.23-.889.162-1.295-.105-.782-.512-2.625-2.31-3.355-3.043-1.206-1.21-.192-2.84 1.221-2.221.556.243 2.677 2.544 2.865 2.51l5.16-4.943c.219-.178.489-.38.774-.429z"
754
+ }
755
+ )
756
+ ] }),
757
+ /* @__PURE__ */ jsxRuntime.jsx("defs", { children: /* @__PURE__ */ jsxRuntime.jsx("clipPath", { id: "check_svg__a", children: /* @__PURE__ */ jsxRuntime.jsx("path", { fill: "#fff", d: "M0 0h24v24H0z" }) }) })
758
+ ]
759
+ }
760
+ );
761
+ var check_default = SuiCheckIcon;
762
+ var SuiDotsVerticalIcon = (props) => /* @__PURE__ */ jsxRuntime.jsxs(
763
+ "svg",
764
+ {
765
+ xmlns: "http://www.w3.org/2000/svg",
766
+ width: "1em",
767
+ height: "1em",
768
+ fill: "none",
769
+ viewBox: "0 0 25 25",
770
+ ...props,
771
+ children: [
772
+ /* @__PURE__ */ jsxRuntime.jsx("g", { clipPath: "url(#dots-vertical_svg__a)", children: /* @__PURE__ */ jsxRuntime.jsx(
773
+ "path",
774
+ {
466
775
  fill: "currentColor",
467
776
  d: "M12.504 9.03a3.373 3.373 0 0 1 3.375 3.375 3.373 3.373 0 0 1-3.375 3.375 3.373 3.373 0 0 1-3.375-3.375 3.373 3.373 0 0 1 3.375-3.375M9.129 4.155a3.373 3.373 0 0 0 3.375 3.375 3.373 3.373 0 0 0 3.375-3.375A3.373 3.373 0 0 0 12.504.78a3.373 3.373 0 0 0-3.375 3.375m0 16.5a3.373 3.373 0 0 0 3.375 3.375 3.373 3.373 0 0 0 3.375-3.375 3.373 3.373 0 0 0-3.375-3.375 3.373 3.373 0 0 0-3.375 3.375"
468
777
  }
@@ -556,155 +865,6 @@ var SuiFilterIcon = (props) => /* @__PURE__ */ jsxRuntime.jsxs(
556
865
  }
557
866
  );
558
867
  var filter_default = SuiFilterIcon;
559
- var FiltersIcon = ({
560
- size = 24,
561
- color = "#379A2A",
562
- strokeWidth = 1.5,
563
- ...props
564
- }) => /* @__PURE__ */ jsxRuntime.jsxs(
565
- "svg",
566
- {
567
- width: size,
568
- height: size,
569
- viewBox: "0 0 24 24",
570
- fill: "none",
571
- xmlns: "http://www.w3.org/2000/svg",
572
- ...props,
573
- children: [
574
- /* @__PURE__ */ jsxRuntime.jsx(
575
- "path",
576
- {
577
- d: "M10 18H14",
578
- stroke: color,
579
- strokeWidth,
580
- strokeLinecap: "round",
581
- strokeLinejoin: "round"
582
- }
583
- ),
584
- /* @__PURE__ */ jsxRuntime.jsx(
585
- "path",
586
- {
587
- d: "M11 6H3",
588
- stroke: color,
589
- strokeWidth,
590
- strokeLinecap: "round",
591
- strokeLinejoin: "round"
592
- }
593
- ),
594
- /* @__PURE__ */ jsxRuntime.jsx(
595
- "path",
596
- {
597
- d: "M15 6H21",
598
- stroke: color,
599
- strokeWidth,
600
- strokeLinecap: "round",
601
- strokeLinejoin: "round"
602
- }
603
- ),
604
- /* @__PURE__ */ jsxRuntime.jsx(
605
- "path",
606
- {
607
- d: "M18 9V3",
608
- stroke: color,
609
- strokeWidth,
610
- strokeLinecap: "round",
611
- strokeLinejoin: "round"
612
- }
613
- ),
614
- /* @__PURE__ */ jsxRuntime.jsx(
615
- "path",
616
- {
617
- d: "M7 12H15",
618
- stroke: color,
619
- strokeWidth,
620
- strokeLinecap: "round",
621
- strokeLinejoin: "round"
622
- }
623
- )
624
- ]
625
- }
626
- );
627
- var filters_default = FiltersIcon;
628
- var NotFoundIcon = ({
629
- width = 24,
630
- height = 24,
631
- fill = "currentColor",
632
- className = "",
633
- ...props
634
- }) => /* @__PURE__ */ jsxRuntime.jsxs(
635
- "svg",
636
- {
637
- viewBox: "0 0 106 100",
638
- xmlns: "http://www.w3.org/2000/svg",
639
- width,
640
- height,
641
- fill,
642
- className,
643
- ...props,
644
- children: [
645
- /* @__PURE__ */ jsxRuntime.jsx(
646
- "path",
647
- {
648
- d: "M44.7381 99.6137C69.3718 99.6137 89.3413 95.8824 89.3413 91.2795C89.3413 86.6767 69.3718 82.9453 44.7381 82.9453C20.1043 82.9453 0.134766 86.6767 0.134766 91.2795C0.134766 95.8824 20.1043 99.6137 44.7381 99.6137Z",
649
- fill: "#B0DFAA"
650
- }
651
- ),
652
- /* @__PURE__ */ jsxRuntime.jsx(
653
- "path",
654
- {
655
- fillRule: "evenodd",
656
- clipRule: "evenodd",
657
- d: "M80.4202 66.795L64.6801 47.4233C63.9249 46.5114 62.8209 45.9595 61.6584 45.9595H27.8163C26.6545 45.9595 25.5505 46.5114 24.7953 47.4233L9.05579 66.795V76.9154H80.4209V66.795H80.4202Z",
658
- fill: "#CEE5D6"
659
- }
660
- ),
661
- /* @__PURE__ */ jsxRuntime.jsx(
662
- "path",
663
- {
664
- fillRule: "evenodd",
665
- clipRule: "evenodd",
666
- d: "M22.3913 20.957H67.0841C67.782 20.957 68.4514 21.2343 68.9449 21.7278C69.4384 22.2213 69.7157 22.8907 69.7157 23.5886V84.9991C69.7157 85.6971 69.4384 86.3664 68.9449 86.8599C68.4514 87.3534 67.782 87.6307 67.0841 87.6307H22.3913C21.6934 87.6307 21.0241 87.3534 20.5305 86.8599C20.037 86.3664 19.7598 85.6971 19.7598 84.9991V23.5886C19.7598 22.8907 20.037 22.2213 20.5305 21.7278C21.0241 21.2343 21.6934 20.957 22.3913 20.957V20.957Z",
667
- fill: "#F9F9F9"
668
- }
669
- ),
670
- /* @__PURE__ */ jsxRuntime.jsx(
671
- "path",
672
- {
673
- fillRule: "evenodd",
674
- clipRule: "evenodd",
675
- d: "M28.2124 27.5049H61.2631C61.612 27.5049 61.9467 27.6435 62.1935 27.8903C62.4402 28.137 62.5789 28.4717 62.5789 28.8207V45.2398C62.5789 45.5887 62.4402 45.9234 62.1935 46.1702C61.9467 46.4169 61.612 46.5555 61.2631 46.5555H28.2124C27.8634 46.5555 27.5288 46.4169 27.282 46.1702C27.0353 45.9234 26.8966 45.5887 26.8966 45.2398V28.8207C26.8966 28.4717 27.0353 28.137 27.282 27.8903C27.5288 27.6435 27.8634 27.5049 28.2124 27.5049ZM28.3848 53.6983H61.0907C61.4854 53.6983 61.8639 53.8551 62.143 54.1342C62.4221 54.4133 62.5789 54.7918 62.5789 55.1865C62.5789 55.5811 62.4221 55.9597 62.143 56.2387C61.8639 56.5178 61.4854 56.6746 61.0907 56.6746H28.3848C27.9901 56.6746 27.6116 56.5178 27.3325 56.2387C27.0534 55.9597 26.8966 55.5811 26.8966 55.1865C26.8966 54.7918 27.0534 54.4133 27.3325 54.1342C27.6116 53.8551 27.9901 53.6983 28.3848 53.6983ZM28.3848 61.4371H61.0907C61.4855 61.4371 61.8641 61.5939 62.1432 61.8731C62.4224 62.1522 62.5792 62.5308 62.5792 62.9256C62.5792 63.3204 62.4224 63.699 62.1432 63.9781C61.8641 64.2573 61.4855 64.4141 61.0907 64.4141H28.3848C27.99 64.4141 27.6114 64.2573 27.3323 63.9781C27.0531 63.699 26.8963 63.3204 26.8963 62.9256C26.8963 62.5308 27.0531 62.1522 27.3323 61.8731C27.6114 61.5939 27.99 61.4371 28.3848 61.4371ZM80.2749 90.0569C79.7651 92.0772 77.9743 93.5832 75.844 93.5832H13.6315C11.5012 93.5832 9.71044 92.0766 9.20123 90.0569C9.10411 89.6718 9.05505 89.2763 9.05518 88.8792V66.7957H26.3696C28.2822 66.7957 29.8236 68.4062 29.8236 70.3615V70.3878C29.8236 72.3424 31.3828 73.9207 33.2953 73.9207H56.1802C58.0927 73.9207 59.6519 72.3279 59.6519 70.3726V70.3647C59.6519 68.4095 61.1933 66.795 63.1058 66.795H80.4203V88.8799C80.4203 89.2858 80.3697 89.6799 80.2749 90.0569Z",
676
- fill: "#DDEEE3"
677
- }
678
- ),
679
- /* @__PURE__ */ jsxRuntime.jsx(
680
- "path",
681
- {
682
- fillRule: "evenodd",
683
- clipRule: "evenodd",
684
- d: "M82.4512 22.0242L77.9577 23.7676C77.8423 23.8125 77.7165 23.8239 77.5949 23.8005C77.4733 23.7771 77.3608 23.7198 77.2703 23.6353C77.1797 23.5507 77.1149 23.4424 77.0833 23.3226C77.0516 23.2029 77.0544 23.0767 77.0913 22.9584L78.3656 18.8749C76.6623 16.938 75.6624 14.5762 75.6624 12.0275C75.6624 5.45185 82.3189 0.121582 90.5308 0.121582C98.7406 0.121582 105.398 5.45185 105.398 12.0275C105.398 18.6032 98.7413 23.9334 90.5301 23.9334C87.5512 23.9334 84.7775 23.2321 82.4512 22.0242Z",
685
- fill: "#DDEEE3"
686
- }
687
- ),
688
- /* @__PURE__ */ jsxRuntime.jsx(
689
- "path",
690
- {
691
- d: "M96.3874 14.1776C97.4226 14.1776 98.2617 13.3484 98.2617 12.3256C98.2617 11.3028 97.4226 10.4736 96.3874 10.4736C95.3522 10.4736 94.5131 11.3028 94.5131 12.3256C94.5131 13.3484 95.3522 14.1776 96.3874 14.1776Z",
692
- fill: "white"
693
- }
694
- ),
695
- /* @__PURE__ */ jsxRuntime.jsx(
696
- "path",
697
- {
698
- fillRule: "evenodd",
699
- clipRule: "evenodd",
700
- d: "M86.5479 13.9459H82.7992L84.7058 10.7051L86.5479 13.9459ZM88.8906 10.7051H92.1702V13.9459H88.8906V10.7051Z",
701
- fill: "white"
702
- }
703
- )
704
- ]
705
- }
706
- );
707
- var not_found_default = NotFoundIcon;
708
868
  var SuiSettingIcon = (props) => /* @__PURE__ */ jsxRuntime.jsxs(
709
869
  "svg",
710
870
  {
@@ -776,49 +936,195 @@ var SuiWarningIcon = (props) => /* @__PURE__ */ jsxRuntime.jsxs(
776
936
  ]
777
937
  }
778
938
  );
779
- var warning_default = SuiWarningIcon;
780
- var TrashIcon = ({
781
- size = 16,
782
- color = "currentColor",
783
- className,
784
- ...props
785
- }) => /* @__PURE__ */ jsxRuntime.jsxs(
939
+ var warning_default = SuiWarningIcon;
940
+ var TrashIcon = ({ size = 16, color = "currentColor", className, ...props }) => /* @__PURE__ */ jsxRuntime.jsxs(
941
+ "svg",
942
+ {
943
+ viewBox: "0 0 17 15",
944
+ xmlns: "http://www.w3.org/2000/svg",
945
+ width: size,
946
+ height: size,
947
+ fill: "none",
948
+ className,
949
+ ...props,
950
+ children: [
951
+ /* @__PURE__ */ jsxRuntime.jsxs("g", { clipPath: "url(#clip0_336_302483)", children: [
952
+ /* @__PURE__ */ jsxRuntime.jsx(
953
+ "path",
954
+ {
955
+ d: "M3.49371 2.12043C3.38318 1.44249 3.66212 0.708651 4.43068 0.529533C4.94459 0.409578 7.77168 0.42749 8.38456 0.492081C9.25207 0.583811 9.64966 1.36813 9.5125 2.12097C10.3748 2.22627 11.9484 1.85067 12.6087 2.44664C13.1053 2.89498 13.1452 3.75638 12.64 4.21232C12.2707 4.54558 12.1422 4.28179 12.0664 4.92282C11.7412 7.68938 11.6509 10.4907 11.3494 13.2605C11.2452 13.9135 10.7718 14.3401 10.0646 14.3895C7.73175 14.5534 5.1836 14.2619 2.8276 14.3873C2.09203 14.2587 1.75116 13.8364 1.64178 13.1655L0.878435 4.54558C0.710025 4.38221 0.481427 4.33281 0.310702 4.15532C-0.221151 3.60006 -0.0434807 2.66593 0.639999 2.29358C0.702502 2.25938 0.998811 2.12043 1.03411 2.12043H3.49371ZM4.30394 2.12043H8.70228C8.71964 1.8333 8.70691 1.36813 8.32321 1.30951C7.19122 1.38116 5.90586 1.20367 4.79238 1.30246C4.28831 1.34696 4.29815 1.71931 4.30394 2.12043ZM12.0415 3.0589C12.0172 3.03068 11.8812 2.9574 11.8419 2.94926L1.26329 2.93243C0.749379 2.95794 0.749379 3.72598 1.26329 3.75149H11.7429C12.1029 3.75312 12.2429 3.29338 12.0415 3.0589ZM11.2487 4.56295H1.75753L2.51508 13.1612C2.5608 13.4597 2.68754 13.5498 2.9989 13.5759C5.22817 13.762 7.7468 13.4293 10.0073 13.5759L10.3823 13.4391L11.2487 4.56295Z",
956
+ fill: color
957
+ }
958
+ ),
959
+ /* @__PURE__ */ jsxRuntime.jsx(
960
+ "path",
961
+ {
962
+ d: "M4.22952 5.50209C4.41761 5.72137 4.34006 6.27067 4.36263 6.54477C4.51599 8.36961 4.73649 10.3719 4.77121 12.1892C4.78568 12.9404 3.98125 12.8953 3.90254 12.4047C3.84698 10.417 3.54836 8.42443 3.49164 6.43947C3.48586 6.23159 3.45576 5.67469 3.54894 5.52542C3.66411 5.34088 4.08426 5.33274 4.22952 5.50263V5.50209Z",
963
+ fill: color
964
+ }
965
+ ),
966
+ /* @__PURE__ */ jsxRuntime.jsx(
967
+ "path",
968
+ {
969
+ d: "M9.43711 5.50146C9.55575 5.63933 9.52045 6.22879 9.51466 6.43776C9.45852 8.42272 9.15932 10.4153 9.10376 12.4029C9.02447 12.8936 8.21946 12.9381 8.23509 12.1875C8.27213 10.3681 8.48973 8.37007 8.64367 6.54306C8.67492 6.17234 8.50941 5.28598 9.18941 5.37771C9.24497 5.38531 9.40412 5.46238 9.43711 5.50092V5.50146Z",
970
+ fill: color
971
+ }
972
+ ),
973
+ /* @__PURE__ */ jsxRuntime.jsx(
974
+ "path",
975
+ {
976
+ d: "M6.83313 5.50252C6.90547 5.58611 6.90142 5.68218 6.91068 5.78314C7.10224 7.89891 6.76253 10.266 6.90837 12.4083C6.88985 12.8822 6.11551 12.8806 6.09814 12.4083L6.15312 5.52478C6.31575 5.34783 6.6734 5.31689 6.83313 5.50252Z",
977
+ fill: color
978
+ }
979
+ )
980
+ ] }),
981
+ /* @__PURE__ */ jsxRuntime.jsx("defs", { children: /* @__PURE__ */ jsxRuntime.jsx("clipPath", { id: "clip0_3678_200811", children: /* @__PURE__ */ jsxRuntime.jsx("rect", { width: "17", height: "15", fill: "white", transform: "translate(0.728516 0.726562)" }) }) })
982
+ ]
983
+ }
984
+ );
985
+ var trash_default = TrashIcon;
986
+ var RoleIcon = ({ size = 16, color = "currentColor", className, ...props }) => /* @__PURE__ */ jsxRuntime.jsxs(
987
+ "svg",
988
+ {
989
+ viewBox: "0 0 30 31",
990
+ xmlns: "http://www.w3.org/2000/svg",
991
+ width: size,
992
+ height: size,
993
+ className,
994
+ fill: color,
995
+ ...props,
996
+ children: [
997
+ /* @__PURE__ */ jsxRuntime.jsxs("g", { clipPath: "url(#clip0_8249_21508)", children: [
998
+ /* @__PURE__ */ jsxRuntime.jsx(
999
+ "path",
1000
+ {
1001
+ d: "M28.1017 30.1367H1.89833C0.852141 30.1367 0 29.2846 0 28.2384V2.03505C0 0.98886 0.852141 0.136719 1.89833 0.136719H28.1017C29.1479 0.136719 30 0.98886 30 2.03505V28.2384C30 29.2846 29.1479 30.1367 28.1017 30.1367ZM2.10926 28.0275H27.8907V2.24598H2.10926V28.0275Z",
1002
+ fill: color
1003
+ }
1004
+ ),
1005
+ /* @__PURE__ */ jsxRuntime.jsx(
1006
+ "path",
1007
+ {
1008
+ d: "M8.63326 12.0173C8.90535 12.1649 9.20276 12.167 9.49172 12.0552L13.1471 8.87026C13.493 8.38092 13.0058 7.70595 12.3624 7.72704C12.2612 7.73126 12.1325 7.77345 12.0292 7.79454L9.1226 10.2582C8.97074 10.2814 8.11438 9.29844 7.75791 9.21618C6.88679 9.0158 6.22237 9.77303 6.78976 10.4164C6.98381 10.6357 8.416 11.9013 8.63536 12.0194L8.63326 12.0173Z",
1009
+ fill: color
1010
+ }
1011
+ ),
1012
+ /* @__PURE__ */ jsxRuntime.jsx(
1013
+ "path",
1014
+ {
1015
+ d: "M8.63326 22.4313C8.90535 22.579 9.20276 22.5811 9.49172 22.4693L13.1471 19.2843C13.493 18.795 13.0058 18.12 12.3624 18.1411C12.2612 18.1453 12.1325 18.1875 12.0292 18.2086L9.1226 20.6722C8.97074 20.6954 8.11438 19.7125 7.75791 19.6302C6.88679 19.4299 6.22237 20.1871 6.78976 20.8304C6.98381 21.0498 8.416 22.3153 8.63536 22.4335L8.63326 22.4313Z",
1016
+ fill: color
1017
+ }
1018
+ ),
1019
+ /* @__PURE__ */ jsxRuntime.jsx(
1020
+ "path",
1021
+ {
1022
+ d: "M22.5775 9.00586H15.3322C14.8663 9.00586 14.4885 9.3836 14.4885 9.84956V10.5688C14.4885 11.0348 14.8663 11.4125 15.3322 11.4125H22.5775C23.0435 11.4125 23.4212 11.0348 23.4212 10.5688V9.84956C23.4212 9.3836 23.0435 9.00586 22.5775 9.00586Z",
1023
+ fill: color
1024
+ }
1025
+ ),
1026
+ /* @__PURE__ */ jsxRuntime.jsx(
1027
+ "path",
1028
+ {
1029
+ d: "M22.5775 19.2715H15.3322C14.8663 19.2715 14.4885 19.6492 14.4885 20.1152V20.8344C14.4885 21.3004 14.8663 21.6781 15.3322 21.6781H22.5775C23.0435 21.6781 23.4212 21.3004 23.4212 20.8344V20.1152C23.4212 19.6492 23.0435 19.2715 22.5775 19.2715Z",
1030
+ fill: color
1031
+ }
1032
+ ),
1033
+ /* @__PURE__ */ jsxRuntime.jsx(
1034
+ "path",
1035
+ {
1036
+ d: "M22.5775 14.1387H15.3322C14.8663 14.1387 14.4885 14.5164 14.4885 14.9824V15.7016C14.4885 16.1676 14.8663 16.5453 15.3322 16.5453H22.5775C23.0435 16.5453 23.4212 16.1676 23.4212 15.7016V14.9824C23.4212 14.5164 23.0435 14.1387 22.5775 14.1387Z",
1037
+ fill: color
1038
+ }
1039
+ )
1040
+ ] }),
1041
+ /* @__PURE__ */ jsxRuntime.jsx("defs", { children: /* @__PURE__ */ jsxRuntime.jsx("clipPath", { id: "clip0_8249_21508", children: /* @__PURE__ */ jsxRuntime.jsx("rect", { width: "30", height: "30", fill: color, transform: "translate(0 0.136719)" }) }) })
1042
+ ]
1043
+ }
1044
+ );
1045
+ var role_default = RoleIcon;
1046
+ var UserIcon = ({ size = 16, color = "currentColor", className, ...props }) => /* @__PURE__ */ jsxRuntime.jsxs(
1047
+ "svg",
1048
+ {
1049
+ viewBox: "0 0 31 31",
1050
+ xmlns: "http://www.w3.org/2000/svg",
1051
+ width: size,
1052
+ height: size,
1053
+ className,
1054
+ fill: color,
1055
+ ...props,
1056
+ children: [
1057
+ /* @__PURE__ */ jsxRuntime.jsxs("g", { clipPath: "url(#clip0_6640_79285)", children: [
1058
+ /* @__PURE__ */ jsxRuntime.jsx(
1059
+ "path",
1060
+ {
1061
+ d: "M15.5 0.832031C7.22905 0.832031 0.5 7.56108 0.5 15.832C0.5 24.103 7.22905 30.832 15.5 30.832C23.7709 30.832 30.5 24.103 30.5 15.832C30.5 7.56108 23.7709 0.832031 15.5 0.832031ZM15.5 28.7053C8.40089 28.7053 2.62675 22.9311 2.62675 15.832C2.62675 8.73292 8.40089 2.95879 15.5 2.95879C22.5991 2.95879 28.3732 8.73292 28.3732 15.832C28.3732 22.9311 22.5991 28.7053 15.5 28.7053Z",
1062
+ fill: color
1063
+ }
1064
+ ),
1065
+ /* @__PURE__ */ jsxRuntime.jsx(
1066
+ "path",
1067
+ {
1068
+ d: "M19.5281 15.6953C20.483 14.7489 21.0742 13.4389 21.0742 11.9905C21.0742 9.11304 18.7327 6.77148 15.8552 6.77148C12.9777 6.77148 10.6361 9.11304 10.6361 11.9905C10.6361 13.5154 11.2933 14.8893 12.3397 15.8442C9.37922 17.2543 7.3269 20.2764 7.3269 23.7685C7.3269 24.3555 7.8033 24.8319 8.39028 24.8319C8.97727 24.8319 9.45366 24.3555 9.45366 23.7685C9.45366 20.3848 11.9973 17.586 15.2725 17.1756C15.4639 17.1968 15.6595 17.2096 15.8552 17.2096C16.1274 17.2096 16.3954 17.1883 16.657 17.1479C20.0619 17.4329 22.7459 20.2913 22.7459 23.7685C22.7459 24.3555 23.2223 24.8319 23.8093 24.8319C24.3962 24.8319 24.8726 24.3555 24.8726 23.7685C24.8726 20.1466 22.6672 17.0331 19.5302 15.6953H19.5281ZM12.7629 11.9905C12.7629 10.2849 14.1495 8.89824 15.8552 8.89824C17.5608 8.89824 18.9475 10.2849 18.9475 11.9905C18.9475 13.4644 17.9096 14.6979 16.5272 15.0063C16.3848 14.9999 16.2423 14.9956 16.0976 14.9956C15.8339 14.9956 15.5723 15.0084 15.315 15.0318C13.8667 14.7766 12.7608 13.5112 12.7608 11.9884L12.7629 11.9905Z",
1069
+ fill: color
1070
+ }
1071
+ )
1072
+ ] }),
1073
+ /* @__PURE__ */ jsxRuntime.jsx("defs", { children: /* @__PURE__ */ jsxRuntime.jsx("clipPath", { id: "clip0_6640_79285", children: /* @__PURE__ */ jsxRuntime.jsx("rect", { width: "30", height: "30", fill: color, transform: "translate(0.5 0.832031)" }) }) })
1074
+ ]
1075
+ }
1076
+ );
1077
+ var user_default = UserIcon;
1078
+ var PlusIcon2 = ({ size = 16, color = "currentColor", className, ...props }) => /* @__PURE__ */ jsxRuntime.jsxs(
786
1079
  "svg",
787
1080
  {
788
1081
  viewBox: "0 0 17 15",
789
1082
  xmlns: "http://www.w3.org/2000/svg",
790
- width: size,
791
- height: size,
792
- fill: "none",
793
- className,
1083
+ className: `${className} w-[${size}px] h-[${size}px]`,
1084
+ fill: color,
1085
+ preserveAspectRatio: "xMidYMid meet",
794
1086
  ...props,
795
1087
  children: [
796
- /* @__PURE__ */ jsxRuntime.jsxs("g", { clipPath: "url(#clip0_336_302483)", children: [
1088
+ /* @__PURE__ */ jsxRuntime.jsxs("g", { clipPath: "url(#clip0_3678_200811)", children: [
797
1089
  /* @__PURE__ */ jsxRuntime.jsx(
798
1090
  "path",
799
1091
  {
800
- d: "M3.49371 2.12043C3.38318 1.44249 3.66212 0.708651 4.43068 0.529533C4.94459 0.409578 7.77168 0.42749 8.38456 0.492081C9.25207 0.583811 9.64966 1.36813 9.5125 2.12097C10.3748 2.22627 11.9484 1.85067 12.6087 2.44664C13.1053 2.89498 13.1452 3.75638 12.64 4.21232C12.2707 4.54558 12.1422 4.28179 12.0664 4.92282C11.7412 7.68938 11.6509 10.4907 11.3494 13.2605C11.2452 13.9135 10.7718 14.3401 10.0646 14.3895C7.73175 14.5534 5.1836 14.2619 2.8276 14.3873C2.09203 14.2587 1.75116 13.8364 1.64178 13.1655L0.878435 4.54558C0.710025 4.38221 0.481427 4.33281 0.310702 4.15532C-0.221151 3.60006 -0.0434807 2.66593 0.639999 2.29358C0.702502 2.25938 0.998811 2.12043 1.03411 2.12043H3.49371ZM4.30394 2.12043H8.70228C8.71964 1.8333 8.70691 1.36813 8.32321 1.30951C7.19122 1.38116 5.90586 1.20367 4.79238 1.30246C4.28831 1.34696 4.29815 1.71931 4.30394 2.12043ZM12.0415 3.0589C12.0172 3.03068 11.8812 2.9574 11.8419 2.94926L1.26329 2.93243C0.749379 2.95794 0.749379 3.72598 1.26329 3.75149H11.7429C12.1029 3.75312 12.2429 3.29338 12.0415 3.0589ZM11.2487 4.56295H1.75753L2.51508 13.1612C2.5608 13.4597 2.68754 13.5498 2.9989 13.5759C5.22817 13.762 7.7468 13.4293 10.0073 13.5759L10.3823 13.4391L11.2487 4.56295Z",
1092
+ d: "M7.4394 7.51422C8.61928 7.38916 10.0254 7.55139 11.2183 7.54802C12.2462 7.76433 13.0834 8.73098 13.161 9.83283C13.2839 11.5938 13.064 13.5135 13.161 15.2947C13.1384 15.4874 12.9962 15.6395 12.8313 15.7105L5.74231 15.7274C5.50956 15.7172 5.30591 15.5009 5.29621 15.2609C5.39319 13.4933 5.17338 11.587 5.29621 9.83283C5.37703 8.67014 6.32417 7.63251 7.4394 7.51084V7.51422Z",
801
1093
  fill: color
802
1094
  }
803
1095
  ),
804
1096
  /* @__PURE__ */ jsxRuntime.jsx(
805
1097
  "path",
806
1098
  {
807
- d: "M4.22952 5.50209C4.41761 5.72137 4.34006 6.27067 4.36263 6.54477C4.51599 8.36961 4.73649 10.3719 4.77121 12.1892C4.78568 12.9404 3.98125 12.8953 3.90254 12.4047C3.84698 10.417 3.54836 8.42443 3.49164 6.43947C3.48586 6.23159 3.45576 5.67469 3.54894 5.52542C3.66411 5.34088 4.08426 5.33274 4.22952 5.50263V5.50209Z",
1099
+ d: "M8.92617 0.740824C11.315 0.507611 12.9895 3.18111 11.7547 5.35777C10.6071 7.37557 7.79155 7.35867 6.67955 5.31383C5.63867 3.40081 6.83148 0.946998 8.92617 0.740824Z",
808
1100
  fill: color
809
1101
  }
810
1102
  ),
811
1103
  /* @__PURE__ */ jsxRuntime.jsx(
812
1104
  "path",
813
1105
  {
814
- d: "M9.43711 5.50146C9.55575 5.63933 9.52045 6.22879 9.51466 6.43776C9.45852 8.42272 9.15932 10.4153 9.10376 12.4029C9.02447 12.8936 8.21946 12.9381 8.23509 12.1875C8.27213 10.3681 8.48973 8.37007 8.64367 6.54306C8.67492 6.17234 8.50941 5.28598 9.18941 5.37771C9.24497 5.38531 9.40412 5.46238 9.43711 5.50092V5.50146Z",
1106
+ d: "M2.04411 15.7226C1.31355 15.6314 0.815737 14.9588 0.770481 14.2219C0.71876 13.3668 0.715527 12.0656 0.770481 11.2138C0.831899 10.2844 1.41053 9.40896 2.22513 9.04055C2.94276 8.71608 3.74443 8.83776 4.50408 8.8141C4.41357 9.20955 4.32629 9.59485 4.30366 10.0038C4.21638 11.7039 4.37155 13.4817 4.30366 15.1886L4.40387 15.7226H2.04087H2.04411Z",
815
1107
  fill: color
816
1108
  }
817
1109
  ),
818
1110
  /* @__PURE__ */ jsxRuntime.jsx(
819
1111
  "path",
820
1112
  {
821
- d: "M6.83313 5.50252C6.90547 5.58611 6.90142 5.68218 6.91068 5.78314C7.10224 7.89891 6.76253 10.266 6.90837 12.4083C6.88985 12.8822 6.11551 12.8806 6.09814 12.4083L6.15312 5.52478C6.31575 5.34783 6.6734 5.31689 6.83313 5.50252Z",
1113
+ d: "M14.0531 15.7236L14.1533 15.1895C14.0854 13.4827 14.2406 11.7049 14.1533 10.0048C14.1339 9.5958 14.0434 9.21049 13.9529 8.81504C14.7125 8.8387 15.5142 8.71365 16.2318 9.0415C17.0497 9.41329 17.6283 10.2887 17.6865 11.2148C17.7414 12.0665 17.7414 13.3678 17.6865 14.2229C17.6445 14.8887 17.1079 15.7236 16.4129 15.7236H14.0499H14.0531Z",
1114
+ fill: color
1115
+ }
1116
+ ),
1117
+ /* @__PURE__ */ jsxRuntime.jsx(
1118
+ "path",
1119
+ {
1120
+ d: "M3.77045 3.60682C6.00737 3.34318 7.16139 6.2161 5.44491 7.67284C3.89975 8.98424 1.64019 7.61876 1.8988 5.55364C2.0184 4.58361 2.833 3.71835 3.77045 3.60682Z",
1121
+ fill: color
1122
+ }
1123
+ ),
1124
+ /* @__PURE__ */ jsxRuntime.jsx(
1125
+ "path",
1126
+ {
1127
+ d: "M14.0789 3.60555C16.5033 3.31826 17.528 6.61366 15.5044 7.86085C13.788 8.91875 11.7321 7.22542 12.2848 5.22114C12.5111 4.39983 13.2546 3.70357 14.0789 3.60555Z",
822
1128
  fill: color
823
1129
  }
824
1130
  )
@@ -827,7 +1133,39 @@ var TrashIcon = ({
827
1133
  ]
828
1134
  }
829
1135
  );
830
- var trash_default = TrashIcon;
1136
+ var user_friend_default = PlusIcon2;
1137
+ var PlusIcon3 = ({ size = 16, color = "currentColor", className, ...props }) => /* @__PURE__ */ jsxRuntime.jsxs(
1138
+ "svg",
1139
+ {
1140
+ viewBox: "0 0 16 18",
1141
+ xmlns: "http://www.w3.org/2000/svg",
1142
+ width: size,
1143
+ height: size,
1144
+ className,
1145
+ fill: color,
1146
+ ...props,
1147
+ children: [
1148
+ /* @__PURE__ */ jsxRuntime.jsxs("g", { clipPath: "url(#clip0_2001_145027)", children: [
1149
+ /* @__PURE__ */ jsxRuntime.jsx(
1150
+ "path",
1151
+ {
1152
+ d: "M15.6777 17.4958C15.5882 17.5711 15.3981 17.6249 15.2751 17.6249H0.545811C0.310948 17.5819 0.143189 17.3128 0.109638 17.0976C0.0201661 16.3551 0.0649018 14.5473 0.255029 13.8263C0.691202 12.1368 2.31287 10.8132 4.13585 10.6948C6.66342 10.5334 9.35875 10.8239 11.8975 10.6948C15.3869 11.136 16.2145 14.063 15.8566 17.0438C15.8454 17.173 15.7671 17.4097 15.6665 17.4958H15.6777Z",
1153
+ fill: color
1154
+ }
1155
+ ),
1156
+ /* @__PURE__ */ jsxRuntime.jsx(
1157
+ "path",
1158
+ {
1159
+ d: "M7.40161 0.396418C11.1147 0.0305414 13.6982 3.70007 11.7969 6.82078C9.89563 9.94149 5.26548 9.50029 3.87867 6.27196C2.79383 3.74311 4.52734 0.686967 7.40161 0.396418Z",
1160
+ fill: color
1161
+ }
1162
+ )
1163
+ ] }),
1164
+ /* @__PURE__ */ jsxRuntime.jsx("defs", { children: /* @__PURE__ */ jsxRuntime.jsx("clipPath", { id: "clip0_2001_145027", children: /* @__PURE__ */ jsxRuntime.jsx("rect", { width: "15.87", height: "17.25", fill: "white", transform: "translate(0.0649414 0.375)" }) }) })
1165
+ ]
1166
+ }
1167
+ );
1168
+ var user_alone_default = PlusIcon3;
831
1169
  var AuditFooter = ({
832
1170
  createdAt,
833
1171
  createdBy,
@@ -934,7 +1272,7 @@ function AccordionContent({
934
1272
  );
935
1273
  }
936
1274
  var ExpandCollapse = ({ title, children, portalId }) => {
937
- const [isOpen, setIsOpen] = React26.useState(false);
1275
+ const [isOpen, setIsOpen] = React25.useState(false);
938
1276
  const Panel = /* @__PURE__ */ jsxRuntime.jsx(
939
1277
  "div",
940
1278
  {
@@ -1044,31 +1382,31 @@ function makeNewRow(field) {
1044
1382
  };
1045
1383
  }
1046
1384
  function useAdvanceSearch({ fields, limitRows }) {
1047
- const [rows, setRows] = React26.useState([makeNewRow(fields[0])]);
1048
- const updateRows = React26.useCallback((next) => {
1385
+ const [rows, setRows] = React25.useState([makeNewRow(fields[0])]);
1386
+ const updateRows = React25.useCallback((next) => {
1049
1387
  setRows(next);
1050
1388
  }, []);
1051
- const operatorsForField = React26.useCallback(
1389
+ const operatorsForField = React25.useCallback(
1052
1390
  (fieldName) => {
1053
1391
  const t = getFieldType(fields, fieldName);
1054
1392
  return OPERATOR_MAP[t];
1055
1393
  },
1056
1394
  [fields]
1057
1395
  );
1058
- const addRow = React26.useCallback(() => {
1396
+ const addRow = React25.useCallback(() => {
1059
1397
  if (limitRows && rows.length >= limitRows) return;
1060
1398
  const lastRow = rows[rows.length - 1];
1061
1399
  const lastField = fields.find((f) => f.name === lastRow?.fieldName) ?? fields[0];
1062
1400
  updateRows([...rows, makeNewRow(lastField)]);
1063
1401
  }, [rows, fields, updateRows, limitRows]);
1064
- const removeRow = React26.useCallback(
1402
+ const removeRow = React25.useCallback(
1065
1403
  (id) => {
1066
1404
  if (rows.length === 1) return;
1067
1405
  updateRows(rows.filter((r) => r.id !== id));
1068
1406
  },
1069
1407
  [rows, updateRows]
1070
1408
  );
1071
- const clearRow = React26.useCallback(
1409
+ const clearRow = React25.useCallback(
1072
1410
  (id) => {
1073
1411
  updateRows(
1074
1412
  rows.map((r) => {
@@ -1101,10 +1439,10 @@ function useAdvanceSearch({ fields, limitRows }) {
1101
1439
  },
1102
1440
  [rows, fields, updateRows]
1103
1441
  );
1104
- const clearAllRow = React26.useCallback(() => {
1442
+ const clearAllRow = React25.useCallback(() => {
1105
1443
  updateRows([makeNewRow(fields[0])]);
1106
1444
  }, [fields, updateRows]);
1107
- const changeField = React26.useCallback(
1445
+ const changeField = React25.useCallback(
1108
1446
  (id, fieldName) => {
1109
1447
  updateRows(
1110
1448
  rows.map((r) => {
@@ -1116,7 +1454,7 @@ function useAdvanceSearch({ fields, limitRows }) {
1116
1454
  },
1117
1455
  [rows, fields, updateRows]
1118
1456
  );
1119
- const changeOperator = React26.useCallback(
1457
+ const changeOperator = React25.useCallback(
1120
1458
  (id, operator) => {
1121
1459
  updateRows(
1122
1460
  rows.map((r) => {
@@ -1150,7 +1488,7 @@ function useAdvanceSearch({ fields, limitRows }) {
1150
1488
  },
1151
1489
  [rows, updateRows]
1152
1490
  );
1153
- const changeValue = React26.useCallback(
1491
+ const changeValue = React25.useCallback(
1154
1492
  (id, which, val) => {
1155
1493
  updateRows(
1156
1494
  rows.map((r) => {
@@ -1162,7 +1500,7 @@ function useAdvanceSearch({ fields, limitRows }) {
1162
1500
  },
1163
1501
  [rows, updateRows]
1164
1502
  );
1165
- const fieldOptions = React26.useMemo(
1503
+ const fieldOptions = React25.useMemo(
1166
1504
  () => fields.map((f) => ({
1167
1505
  value: f.name,
1168
1506
  label: f.label ?? f.name
@@ -1357,7 +1695,7 @@ var OPERATOR_LABEL = {
1357
1695
  containsAll: "Contains all of"
1358
1696
  };
1359
1697
  var OperatorSelect = ({ row, operators, onChangeOperator, error }) => {
1360
- React26__namespace.default.useEffect(() => {
1698
+ React25__namespace.default.useEffect(() => {
1361
1699
  if (!operators.length) return;
1362
1700
  if (!operators.includes(row.operator)) {
1363
1701
  onChangeOperator(operators[0]);
@@ -1393,15 +1731,15 @@ function Label2({ className, ...props }) {
1393
1731
  );
1394
1732
  }
1395
1733
  var Form = reactHookForm.FormProvider;
1396
- var FormFieldContext = React26__namespace.createContext({});
1734
+ var FormFieldContext = React25__namespace.createContext({});
1397
1735
  var FormField = ({
1398
1736
  ...props
1399
1737
  }) => {
1400
1738
  return /* @__PURE__ */ jsxRuntime.jsx(FormFieldContext.Provider, { value: { name: props.name }, children: /* @__PURE__ */ jsxRuntime.jsx(reactHookForm.Controller, { ...props }) });
1401
1739
  };
1402
1740
  var useFormField = () => {
1403
- const fieldContext = React26__namespace.useContext(FormFieldContext);
1404
- const itemContext = React26__namespace.useContext(FormItemContext);
1741
+ const fieldContext = React25__namespace.useContext(FormFieldContext);
1742
+ const itemContext = React25__namespace.useContext(FormItemContext);
1405
1743
  const { getFieldState } = reactHookForm.useFormContext();
1406
1744
  const formState = reactHookForm.useFormState({ name: fieldContext.name });
1407
1745
  const fieldState = getFieldState(fieldContext.name, formState);
@@ -1418,9 +1756,9 @@ var useFormField = () => {
1418
1756
  ...fieldState
1419
1757
  };
1420
1758
  };
1421
- var FormItemContext = React26__namespace.createContext({});
1759
+ var FormItemContext = React25__namespace.createContext({});
1422
1760
  function FormItem({ className, ...props }) {
1423
- const id = React26__namespace.useId();
1761
+ const id = React25__namespace.useId();
1424
1762
  return /* @__PURE__ */ jsxRuntime.jsx(FormItemContext.Provider, { value: { id }, children: /* @__PURE__ */ jsxRuntime.jsx("div", { "data-slot": "form-item", className: cn("grid gap-2", className), ...props }) });
1425
1763
  }
1426
1764
  function FormLabel({ className, ...props }) {
@@ -1524,7 +1862,7 @@ var Spinner = ({ className, variant, size = "default", ...props }) => /* @__PURE
1524
1862
  ]
1525
1863
  }
1526
1864
  );
1527
- var InputPrimitive = React26__namespace.forwardRef(
1865
+ var InputPrimitive = React25__namespace.forwardRef(
1528
1866
  ({ className, type = "text", ...props }, ref) => {
1529
1867
  return /* @__PURE__ */ jsxRuntime.jsx(
1530
1868
  "input",
@@ -1563,7 +1901,7 @@ var inputVariants = classVarianceAuthority.cva("", {
1563
1901
  appearance: "filled"
1564
1902
  }
1565
1903
  });
1566
- var Input = React26__namespace.forwardRef(
1904
+ var Input = React25__namespace.forwardRef(
1567
1905
  ({
1568
1906
  className,
1569
1907
  wrapperClassName,
@@ -1596,8 +1934,8 @@ var Input = React26__namespace.forwardRef(
1596
1934
  onChange: onChangeProp
1597
1935
  } = rest;
1598
1936
  const ariaInvalid = invalid ?? ariaInvalidProp;
1599
- const messageId = React26__namespace.useId();
1600
- const handleChange = React26__namespace.useCallback(
1937
+ const messageId = React25__namespace.useId();
1938
+ const handleChange = React25__namespace.useCallback(
1601
1939
  (event) => {
1602
1940
  onChangeProp?.(event);
1603
1941
  onValueChange?.(event.target.value);
@@ -1940,20 +2278,20 @@ function DatePicker({
1940
2278
  className,
1941
2279
  ...props
1942
2280
  }) {
1943
- const today = React26__namespace.useMemo(() => startOfDay(/* @__PURE__ */ new Date()), []);
1944
- const [displayed, setDisplayed] = React26__namespace.useState(
2281
+ const today = React25__namespace.useMemo(() => startOfDay(/* @__PURE__ */ new Date()), []);
2282
+ const [displayed, setDisplayed] = React25__namespace.useState(
1945
2283
  selectedDate ? new Date(selectedDate) : /* @__PURE__ */ new Date()
1946
2284
  );
1947
2285
  minDate = clampToDay(minDate);
1948
2286
  maxDate = clampToDay(maxDate);
1949
- const disabledSet = React26__namespace.useMemo(() => {
2287
+ const disabledSet = React25__namespace.useMemo(() => {
1950
2288
  const s = /* @__PURE__ */ new Set();
1951
2289
  disabledDates?.forEach((d) => s.add(startOfDay(d).toISOString()));
1952
2290
  return s;
1953
2291
  }, [disabledDates]);
1954
2292
  const displayYear = displayed.getFullYear();
1955
2293
  const displayMonth = displayed.getMonth();
1956
- const weekdays = React26__namespace.useMemo(() => {
2294
+ const weekdays = React25__namespace.useMemo(() => {
1957
2295
  const labels = [];
1958
2296
  for (let i = 0; i < 7; i++) {
1959
2297
  const idx = i;
@@ -1962,7 +2300,7 @@ function DatePicker({
1962
2300
  }
1963
2301
  return labels;
1964
2302
  }, [callbacks]);
1965
- const grid = React26__namespace.useMemo(() => buildCalendarGrid(displayed, true), [displayed]);
2303
+ const grid = React25__namespace.useMemo(() => buildCalendarGrid(displayed, true), [displayed]);
1966
2304
  const isDateDisabled = (date) => {
1967
2305
  const d = startOfDay(date);
1968
2306
  if (minDate && d < minDate) return true;
@@ -1972,7 +2310,7 @@ function DatePicker({
1972
2310
  };
1973
2311
  const minYear = minDate?.getFullYear();
1974
2312
  const maxYear = maxDate?.getFullYear();
1975
- const getMonthLabel = React26__namespace.useCallback(
2313
+ const getMonthLabel = React25__namespace.useCallback(
1976
2314
  (year, monthIndex) => {
1977
2315
  const label = callbacks?.monthLabel?.(year, monthIndex);
1978
2316
  if (label === null || label === void 0) {
@@ -1982,7 +2320,7 @@ function DatePicker({
1982
2320
  },
1983
2321
  [callbacks]
1984
2322
  );
1985
- const getYearLabel = React26__namespace.useCallback(
2323
+ const getYearLabel = React25__namespace.useCallback(
1986
2324
  (year) => {
1987
2325
  const label = callbacks?.yearLabel?.(year);
1988
2326
  if (label === null || label === void 0) return String(year);
@@ -1990,7 +2328,7 @@ function DatePicker({
1990
2328
  },
1991
2329
  [callbacks]
1992
2330
  );
1993
- const clampMonthToBounds = React26__namespace.useCallback(
2331
+ const clampMonthToBounds = React25__namespace.useCallback(
1994
2332
  (year, monthIndex) => {
1995
2333
  let output = monthIndex;
1996
2334
  if (typeof minYear === "number" && year === minYear && minDate) {
@@ -2005,7 +2343,7 @@ function DatePicker({
2005
2343
  },
2006
2344
  [maxDate, minDate, maxYear, minYear]
2007
2345
  );
2008
- const yearOptions = React26__namespace.useMemo(() => {
2346
+ const yearOptions = React25__namespace.useMemo(() => {
2009
2347
  const fallbackWindow = 50;
2010
2348
  const start = typeof minYear === "number" ? minYear : displayYear - fallbackWindow;
2011
2349
  const end = typeof maxYear === "number" ? maxYear : displayYear + fallbackWindow;
@@ -2026,7 +2364,7 @@ function DatePicker({
2026
2364
  }
2027
2365
  return years;
2028
2366
  }, [displayYear, maxYear, minYear, selectedDate]);
2029
- const monthOptions = React26__namespace.useMemo(() => {
2367
+ const monthOptions = React25__namespace.useMemo(() => {
2030
2368
  const months = Array.from({ length: 12 }, (_, monthIndex) => {
2031
2369
  const disabled = typeof minYear === "number" && displayYear === minYear && minDate && monthIndex < minDate.getMonth() || typeof maxYear === "number" && displayYear === maxYear && maxDate && monthIndex > maxDate.getMonth();
2032
2370
  return {
@@ -2045,7 +2383,7 @@ function DatePicker({
2045
2383
  }
2046
2384
  return months.sort((a, b) => a.value - b.value).filter((option, index, arr) => index === 0 || option.value !== arr[index - 1].value);
2047
2385
  }, [displayMonth, displayYear, getMonthLabel, maxDate, maxYear, minDate, minYear]);
2048
- const handleMonthSelect = React26__namespace.useCallback((nextValue) => {
2386
+ const handleMonthSelect = React25__namespace.useCallback((nextValue) => {
2049
2387
  const nextMonth = Number.parseInt(nextValue, 10);
2050
2388
  if (Number.isNaN(nextMonth)) return;
2051
2389
  setDisplayed((prev) => {
@@ -2055,7 +2393,7 @@ function DatePicker({
2055
2393
  return next;
2056
2394
  });
2057
2395
  }, []);
2058
- const handleYearSelect = React26__namespace.useCallback(
2396
+ const handleYearSelect = React25__namespace.useCallback(
2059
2397
  (nextValue) => {
2060
2398
  const nextYear = Number.parseInt(nextValue, 10);
2061
2399
  if (Number.isNaN(nextYear)) return;
@@ -2203,14 +2541,14 @@ var DatePicker2 = ({
2203
2541
  ariaLabel,
2204
2542
  ...calendarProps
2205
2543
  }) => {
2206
- const [open, setOpen] = React26__namespace.default.useState(false);
2207
- const parser = React26__namespace.default.useMemo(() => valueParser ?? defaultValueParser, [valueParser]);
2208
- const outputFormatter = React26__namespace.default.useMemo(() => valueFormatter ?? defaultValueFormatter, [valueFormatter]);
2209
- const labelFormatter = React26__namespace.default.useMemo(
2544
+ const [open, setOpen] = React25__namespace.default.useState(false);
2545
+ const parser = React25__namespace.default.useMemo(() => valueParser ?? defaultValueParser, [valueParser]);
2546
+ const outputFormatter = React25__namespace.default.useMemo(() => valueFormatter ?? defaultValueFormatter, [valueFormatter]);
2547
+ const labelFormatter = React25__namespace.default.useMemo(
2210
2548
  () => displayFormatter ?? defaultDisplayFormatter,
2211
2549
  [displayFormatter]
2212
2550
  );
2213
- const parsedValue = React26__namespace.default.useMemo(() => {
2551
+ const parsedValue = React25__namespace.default.useMemo(() => {
2214
2552
  if (value === null || value === void 0) return void 0;
2215
2553
  if (value instanceof Date) return value;
2216
2554
  const parsed = parser(value);
@@ -2219,26 +2557,26 @@ var DatePicker2 = ({
2219
2557
  const buttonLabel = parsedValue ? labelFormatter(parsedValue) : placeholder2;
2220
2558
  const buttonAriaLabel = ariaLabel ?? (parsedValue ? `Change date, current selection ${labelFormatter(parsedValue)}` : "Open date picker");
2221
2559
  const shouldShowClear = allowClear && !disabled && !!parsedValue;
2222
- const handleClose = React26__namespace.default.useCallback(() => setOpen(false), []);
2223
- const emitChange = React26__namespace.default.useCallback(
2560
+ const handleClose = React25__namespace.default.useCallback(() => setOpen(false), []);
2561
+ const emitChange = React25__namespace.default.useCallback(
2224
2562
  (next) => {
2225
2563
  onChange?.(next);
2226
2564
  onValueChange?.(next ? outputFormatter(next) : void 0);
2227
2565
  },
2228
2566
  [onChange, onValueChange, outputFormatter]
2229
2567
  );
2230
- const handleSelect = React26__namespace.default.useCallback(
2568
+ const handleSelect = React25__namespace.default.useCallback(
2231
2569
  (next) => {
2232
2570
  emitChange(next);
2233
2571
  if (closeOnSelect && next) handleClose();
2234
2572
  },
2235
2573
  [closeOnSelect, emitChange, handleClose]
2236
2574
  );
2237
- const handleClear = React26__namespace.default.useCallback(() => {
2575
+ const handleClear = React25__namespace.default.useCallback(() => {
2238
2576
  emitChange(void 0);
2239
2577
  handleClose();
2240
2578
  }, [emitChange, handleClose]);
2241
- const handleOpenChange = React26__namespace.default.useCallback(
2579
+ const handleOpenChange = React25__namespace.default.useCallback(
2242
2580
  (nextOpen) => {
2243
2581
  if (disabled && nextOpen) return;
2244
2582
  setOpen(nextOpen);
@@ -2428,15 +2766,15 @@ function MonthCal({
2428
2766
  onYearBackward,
2429
2767
  onYearForward
2430
2768
  }) {
2431
- const today = React26__namespace.useMemo(() => {
2769
+ const today = React25__namespace.useMemo(() => {
2432
2770
  const now = /* @__PURE__ */ new Date();
2433
2771
  now.setDate(1);
2434
2772
  now.setHours(0, 0, 0, 0);
2435
2773
  return now;
2436
2774
  }, []);
2437
- const selectedMonthDate = React26__namespace.useMemo(() => normalizeMonth(selectedDate), [selectedDate]);
2438
- const min = React26__namespace.useMemo(() => normalizeMonth(minDate), [minDate]);
2439
- const max = React26__namespace.useMemo(() => normalizeMonth(maxDate), [maxDate]);
2775
+ const selectedMonthDate = React25__namespace.useMemo(() => normalizeMonth(selectedDate), [selectedDate]);
2776
+ const min = React25__namespace.useMemo(() => normalizeMonth(minDate), [minDate]);
2777
+ const max = React25__namespace.useMemo(() => normalizeMonth(maxDate), [maxDate]);
2440
2778
  let effectiveMin = min;
2441
2779
  if (min && max && min > max) {
2442
2780
  effectiveMin = max;
@@ -2445,10 +2783,10 @@ function MonthCal({
2445
2783
  const minMonth = effectiveMin?.getMonth();
2446
2784
  const maxYear = max?.getFullYear();
2447
2785
  const maxMonth = max?.getMonth();
2448
- const [menuYear, setMenuYear] = React26__namespace.useState(
2786
+ const [menuYear, setMenuYear] = React25__namespace.useState(
2449
2787
  () => selectedMonthDate?.getFullYear() ?? today.getFullYear()
2450
2788
  );
2451
- React26__namespace.useEffect(() => {
2789
+ React25__namespace.useEffect(() => {
2452
2790
  if (selectedMonthDate) {
2453
2791
  const year = selectedMonthDate.getFullYear();
2454
2792
  if (year !== menuYear) {
@@ -2456,7 +2794,7 @@ function MonthCal({
2456
2794
  }
2457
2795
  }
2458
2796
  }, [selectedMonthDate, menuYear]);
2459
- React26__namespace.useEffect(() => {
2797
+ React25__namespace.useEffect(() => {
2460
2798
  if (typeof minYear === "number" && menuYear < minYear) {
2461
2799
  setMenuYear(minYear);
2462
2800
  return;
@@ -2467,7 +2805,7 @@ function MonthCal({
2467
2805
  }, [minYear, maxYear, menuYear]);
2468
2806
  const disablePrevYear = typeof minYear === "number" ? menuYear <= minYear : false;
2469
2807
  const disableNextYear = typeof maxYear === "number" ? menuYear >= maxYear : false;
2470
- const yearOptions = React26__namespace.useMemo(() => {
2808
+ const yearOptions = React25__namespace.useMemo(() => {
2471
2809
  const fallbackWindow = 50;
2472
2810
  const start = typeof minYear === "number" ? minYear : menuYear - fallbackWindow;
2473
2811
  const end = typeof maxYear === "number" ? maxYear : menuYear + fallbackWindow;
@@ -2481,7 +2819,7 @@ function MonthCal({
2481
2819
  }
2482
2820
  return years;
2483
2821
  }, [maxYear, menuYear, minYear]);
2484
- const formatYearLabel = React26__namespace.useCallback(
2822
+ const formatYearLabel = React25__namespace.useCallback(
2485
2823
  (year) => {
2486
2824
  const raw = callbacks?.yearLabel?.(year);
2487
2825
  if (raw === null || raw === void 0) return String(year);
@@ -2489,7 +2827,7 @@ function MonthCal({
2489
2827
  },
2490
2828
  [callbacks]
2491
2829
  );
2492
- const handleYearSelect = React26__namespace.useCallback(
2830
+ const handleYearSelect = React25__namespace.useCallback(
2493
2831
  (nextValue) => {
2494
2832
  const nextYear = Number.parseInt(nextValue, 10);
2495
2833
  if (Number.isNaN(nextYear)) return;
@@ -2499,7 +2837,7 @@ function MonthCal({
2499
2837
  },
2500
2838
  [maxYear, minYear]
2501
2839
  );
2502
- const disabledPairs = React26__namespace.useMemo(() => {
2840
+ const disabledPairs = React25__namespace.useMemo(() => {
2503
2841
  if (!disabledDates?.length) return [];
2504
2842
  const pairs = [];
2505
2843
  disabledDates.forEach((date) => {
@@ -2644,14 +2982,14 @@ var MonthPicker2 = ({
2644
2982
  ariaLabel,
2645
2983
  ...calendarProps
2646
2984
  }) => {
2647
- const [open, setOpen] = React26__namespace.default.useState(false);
2648
- const parser = React26__namespace.default.useMemo(() => valueParser ?? defaultValueParser2, [valueParser]);
2649
- const outputFormatter = React26__namespace.default.useMemo(() => valueFormatter ?? defaultValueFormatter2, [valueFormatter]);
2650
- const labelFormatter = React26__namespace.default.useMemo(
2985
+ const [open, setOpen] = React25__namespace.default.useState(false);
2986
+ const parser = React25__namespace.default.useMemo(() => valueParser ?? defaultValueParser2, [valueParser]);
2987
+ const outputFormatter = React25__namespace.default.useMemo(() => valueFormatter ?? defaultValueFormatter2, [valueFormatter]);
2988
+ const labelFormatter = React25__namespace.default.useMemo(
2651
2989
  () => displayFormatter ?? defaultDisplayFormatter2,
2652
2990
  [displayFormatter]
2653
2991
  );
2654
- const parsedValue = React26__namespace.default.useMemo(() => {
2992
+ const parsedValue = React25__namespace.default.useMemo(() => {
2655
2993
  if (value === null || value === void 0) return void 0;
2656
2994
  if (value instanceof Date) return normalizeMonth2(value);
2657
2995
  if (typeof value === "string") {
@@ -2663,8 +3001,8 @@ var MonthPicker2 = ({
2663
3001
  const buttonLabel = parsedValue ? labelFormatter(parsedValue) : placeholder2;
2664
3002
  const buttonAriaLabel = ariaLabel ?? (parsedValue ? `Change month, current selection ${labelFormatter(parsedValue)}` : "Open month picker");
2665
3003
  const shouldShowClear = allowClear && !disabled && !!parsedValue;
2666
- const handleClose = React26__namespace.default.useCallback(() => setOpen(false), []);
2667
- const emitChange = React26__namespace.default.useCallback(
3004
+ const handleClose = React25__namespace.default.useCallback(() => setOpen(false), []);
3005
+ const emitChange = React25__namespace.default.useCallback(
2668
3006
  (next) => {
2669
3007
  const normalized = next ? normalizeMonth2(next) : void 0;
2670
3008
  onChange?.(normalized);
@@ -2672,18 +3010,18 @@ var MonthPicker2 = ({
2672
3010
  },
2673
3011
  [onChange, onValueChange, outputFormatter]
2674
3012
  );
2675
- const handleSelect = React26__namespace.default.useCallback(
3013
+ const handleSelect = React25__namespace.default.useCallback(
2676
3014
  (next) => {
2677
3015
  emitChange(next);
2678
3016
  if (closeOnSelect && next) handleClose();
2679
3017
  },
2680
3018
  [closeOnSelect, emitChange, handleClose]
2681
3019
  );
2682
- const handleClear = React26__namespace.default.useCallback(() => {
3020
+ const handleClear = React25__namespace.default.useCallback(() => {
2683
3021
  emitChange(void 0);
2684
3022
  handleClose();
2685
3023
  }, [emitChange, handleClose]);
2686
- const handleOpenChange = React26__namespace.default.useCallback(
3024
+ const handleOpenChange = React25__namespace.default.useCallback(
2687
3025
  (nextOpen) => {
2688
3026
  if (disabled && nextOpen) return;
2689
3027
  setOpen(nextOpen);
@@ -2894,23 +3232,23 @@ var LookupSelect = ({
2894
3232
  dropdownPortalId,
2895
3233
  multiple = false
2896
3234
  }) => {
2897
- const [inputValue, setInputValue] = React26.useState("");
2898
- const inputRef = React26.useRef(null);
2899
- const [suggestions, setSuggestions] = React26.useState([]);
2900
- const [optionLabels, setOptionLabels] = React26.useState({});
2901
- const [loading, setLoading] = React26.useState(false);
2902
- const [fetchError, setFetchError] = React26.useState(null);
2903
- const [isDropdownOpen, setIsDropdownOpen] = React26.useState(false);
2904
- const containerRef = React26.useRef(null);
2905
- const fetchDelayRef = React26.useRef(null);
2906
- const requestIdRef = React26.useRef(0);
2907
- const [dropdownStyles, setDropdownStyles] = React26.useState();
2908
- const dropdownContentRef = React26.useRef(null);
2909
- const assignDropdownContentRef = React26.useCallback((node) => {
3235
+ const [inputValue, setInputValue] = React25.useState("");
3236
+ const inputRef = React25.useRef(null);
3237
+ const [suggestions, setSuggestions] = React25.useState([]);
3238
+ const [optionLabels, setOptionLabels] = React25.useState({});
3239
+ const [loading, setLoading] = React25.useState(false);
3240
+ const [fetchError, setFetchError] = React25.useState(null);
3241
+ const [isDropdownOpen, setIsDropdownOpen] = React25.useState(false);
3242
+ const containerRef = React25.useRef(null);
3243
+ const fetchDelayRef = React25.useRef(null);
3244
+ const requestIdRef = React25.useRef(0);
3245
+ const [dropdownStyles, setDropdownStyles] = React25.useState();
3246
+ const dropdownContentRef = React25.useRef(null);
3247
+ const assignDropdownContentRef = React25.useCallback((node) => {
2910
3248
  dropdownContentRef.current = node;
2911
3249
  }, []);
2912
- const [activeSuggestionIndex, setActiveSuggestionIndex] = React26.useState(-1);
2913
- const dropdownPortalElement = React26.useMemo(() => {
3250
+ const [activeSuggestionIndex, setActiveSuggestionIndex] = React25.useState(-1);
3251
+ const dropdownPortalElement = React25.useMemo(() => {
2914
3252
  if (typeof document === "undefined") return null;
2915
3253
  if (dropdownPortalId) {
2916
3254
  const element = document.getElementById(dropdownPortalId);
@@ -2921,7 +3259,7 @@ var LookupSelect = ({
2921
3259
  const limitReached = multiple && value.length >= maxTags;
2922
3260
  const selectedValue = !multiple && value.length > 0 ? value[0] : void 0;
2923
3261
  const selectedLabel = selectedValue ? optionLabels[selectedValue] ?? selectedValue : void 0;
2924
- const upsertOptionLabels = React26.useCallback((options) => {
3262
+ const upsertOptionLabels = React25.useCallback((options) => {
2925
3263
  setOptionLabels((prev) => {
2926
3264
  let next = null;
2927
3265
  options.forEach((opt) => {
@@ -2934,7 +3272,7 @@ var LookupSelect = ({
2934
3272
  return next ?? prev;
2935
3273
  });
2936
3274
  }, []);
2937
- const addTag = React26.useCallback(
3275
+ const addTag = React25.useCallback(
2938
3276
  (val) => {
2939
3277
  const trimmed = val.trim();
2940
3278
  if (!trimmed) return;
@@ -2951,7 +3289,7 @@ var LookupSelect = ({
2951
3289
  },
2952
3290
  [value, onChange, maxTags, multiple]
2953
3291
  );
2954
- const removeTag = React26.useCallback(
3292
+ const removeTag = React25.useCallback(
2955
3293
  (index) => {
2956
3294
  if (index < 0) return;
2957
3295
  const newTags = value.filter((_, i) => i !== index);
@@ -2959,14 +3297,14 @@ var LookupSelect = ({
2959
3297
  },
2960
3298
  [value, onChange]
2961
3299
  );
2962
- const handleClear = React26.useCallback(() => {
3300
+ const handleClear = React25.useCallback(() => {
2963
3301
  setInputValue("");
2964
3302
  setSuggestions([]);
2965
3303
  setIsDropdownOpen(false);
2966
3304
  setFetchError(null);
2967
3305
  if (onClear) onClear();
2968
3306
  }, [onClear]);
2969
- const handleSuggestionSelect = React26.useCallback(
3307
+ const handleSuggestionSelect = React25.useCallback(
2970
3308
  (option) => {
2971
3309
  upsertOptionLabels([option]);
2972
3310
  addTag(option.value);
@@ -2981,7 +3319,7 @@ var LookupSelect = ({
2981
3319
  },
2982
3320
  [addTag, multiple, upsertOptionLabels]
2983
3321
  );
2984
- const handleKeyDown = React26.useCallback(
3322
+ const handleKeyDown = React25.useCallback(
2985
3323
  (e) => {
2986
3324
  if (e.key === "ArrowDown" && suggestions.length > 0) {
2987
3325
  e.preventDefault();
@@ -3008,7 +3346,7 @@ var LookupSelect = ({
3008
3346
  },
3009
3347
  [suggestions, activeSuggestionIndex, handleSuggestionSelect, inputValue, removeTag, value.length]
3010
3348
  );
3011
- const updateDropdownPosition = React26.useCallback(() => {
3349
+ const updateDropdownPosition = React25.useCallback(() => {
3012
3350
  if (!dropdownPortalElement || !containerRef.current) return;
3013
3351
  const rect = containerRef.current.getBoundingClientRect();
3014
3352
  setDropdownStyles({
@@ -3019,7 +3357,7 @@ var LookupSelect = ({
3019
3357
  zIndex: 50
3020
3358
  });
3021
3359
  }, [dropdownPortalElement]);
3022
- React26.useEffect(() => {
3360
+ React25.useEffect(() => {
3023
3361
  if (!fetchSuggestions) return;
3024
3362
  if (fetchDelayRef.current) {
3025
3363
  clearTimeout(fetchDelayRef.current);
@@ -3060,7 +3398,7 @@ var LookupSelect = ({
3060
3398
  }
3061
3399
  };
3062
3400
  }, [inputValue, fetchSuggestions, suggestionDebounce, upsertOptionLabels]);
3063
- React26.useEffect(() => {
3401
+ React25.useEffect(() => {
3064
3402
  if (!fetchSuggestions) return;
3065
3403
  if (value.length === 0) return;
3066
3404
  const unresolvedValues = value.filter((v) => !optionLabels[v]);
@@ -3070,7 +3408,7 @@ var LookupSelect = ({
3070
3408
  }).catch(() => {
3071
3409
  });
3072
3410
  }, [value, fetchSuggestions, optionLabels, upsertOptionLabels]);
3073
- React26.useEffect(() => {
3411
+ React25.useEffect(() => {
3074
3412
  const handleDocumentClick = (event) => {
3075
3413
  const target = event.target;
3076
3414
  if (containerRef.current?.contains(target)) return;
@@ -3082,11 +3420,11 @@ var LookupSelect = ({
3082
3420
  document.removeEventListener("mousedown", handleDocumentClick);
3083
3421
  };
3084
3422
  }, []);
3085
- React26.useEffect(() => {
3423
+ React25.useEffect(() => {
3086
3424
  if (!limitReached) return;
3087
3425
  setIsDropdownOpen(false);
3088
3426
  }, [limitReached]);
3089
- React26.useEffect(() => {
3427
+ React25.useEffect(() => {
3090
3428
  if (!dropdownPortalElement) return;
3091
3429
  if (!isDropdownOpen) return;
3092
3430
  updateDropdownPosition();
@@ -3098,7 +3436,7 @@ var LookupSelect = ({
3098
3436
  window.removeEventListener("scroll", handleReposition, true);
3099
3437
  };
3100
3438
  }, [dropdownPortalElement, isDropdownOpen, updateDropdownPosition]);
3101
- React26.useEffect(() => {
3439
+ React25.useEffect(() => {
3102
3440
  if (suggestions.length === 0) {
3103
3441
  setActiveSuggestionIndex(-1);
3104
3442
  return;
@@ -3933,7 +4271,7 @@ var AdvanceSearch = ({
3933
4271
  shortDateFormat,
3934
4272
  filterFieldMap = FILTER_FIELD_MAP
3935
4273
  }) => {
3936
- const fieldsData = React26.useMemo(() => {
4274
+ const fieldsData = React25.useMemo(() => {
3937
4275
  if (fields.length === 0) throw new Error("fields cannot be an empty array");
3938
4276
  return fields || [];
3939
4277
  }, [fields]);
@@ -3953,8 +4291,8 @@ var AdvanceSearch = ({
3953
4291
  defaultValues: {}
3954
4292
  });
3955
4293
  const { handleSubmit, unregister, resetField, getValues, clearErrors, setError } = form;
3956
- const [operatorErrors, setOperatorErrors] = React26__namespace.default.useState({});
3957
- const clearOperatorError = React26.useCallback(
4294
+ const [operatorErrors, setOperatorErrors] = React25__namespace.default.useState({});
4295
+ const clearOperatorError = React25.useCallback(
3958
4296
  (rowId) => {
3959
4297
  setOperatorErrors((prev) => {
3960
4298
  if (!(rowId in prev)) return prev;
@@ -3964,7 +4302,7 @@ var AdvanceSearch = ({
3964
4302
  },
3965
4303
  [setOperatorErrors]
3966
4304
  );
3967
- const clearValue = React26.useCallback(
4305
+ const clearValue = React25.useCallback(
3968
4306
  (rowId, which) => {
3969
4307
  const fieldName = `${which}_${rowId}`;
3970
4308
  resetField(fieldName, { defaultValue: void 0 });
@@ -3974,14 +4312,14 @@ var AdvanceSearch = ({
3974
4312
  },
3975
4313
  [resetField, clearErrors]
3976
4314
  );
3977
- const parseRangeValue = React26.useCallback((raw, fieldType) => {
4315
+ const parseRangeValue = React25.useCallback((raw, fieldType) => {
3978
4316
  if (!raw) return void 0;
3979
4317
  if (Array.isArray(raw)) return void 0;
3980
4318
  const normalized = fieldType === "datemonth" ? `${raw}-01` : raw;
3981
4319
  const parsed = dateFns.parseISO(normalized);
3982
4320
  return dateFns.isValid(parsed) ? parsed : void 0;
3983
4321
  }, []);
3984
- const onSubmit = React26.useCallback(() => {
4322
+ const onSubmit = React25.useCallback(() => {
3985
4323
  const operatorValidation = {};
3986
4324
  rows.forEach((r) => {
3987
4325
  const ops = operatorsForField(r.fieldName);
@@ -4217,11 +4555,11 @@ function resetVisibleTableState(payload) {
4217
4555
  table.setSorting(prevState.sorting.filter((s) => isVisible(s.id)));
4218
4556
  }
4219
4557
  var useHover = () => {
4220
- const [hovering, setHovering] = React26.useState(false);
4221
- const prevRef = React26.useRef(null);
4222
- const onMouseEnter = React26.useCallback(() => setHovering(true), []);
4223
- const onMouseLeave = React26.useCallback(() => setHovering(false), []);
4224
- const nodeRefCallback = React26.useCallback(
4558
+ const [hovering, setHovering] = React25.useState(false);
4559
+ const prevRef = React25.useRef(null);
4560
+ const onMouseEnter = React25.useCallback(() => setHovering(true), []);
4561
+ const onMouseLeave = React25.useCallback(() => setHovering(false), []);
4562
+ const nodeRefCallback = React25.useCallback(
4225
4563
  (node) => {
4226
4564
  if (prevRef.current) {
4227
4565
  prevRef.current.removeEventListener("mouseenter", onMouseEnter);
@@ -4249,15 +4587,15 @@ var useIntersectionObserver = ({
4249
4587
  initialIsIntersecting = false,
4250
4588
  onChange
4251
4589
  } = {}) => {
4252
- const [ref, setRef] = React26.useState(null);
4253
- const [state, setState] = React26.useState(() => ({
4590
+ const [ref, setRef] = React25.useState(null);
4591
+ const [state, setState] = React25.useState(() => ({
4254
4592
  isIntersecting: initialIsIntersecting,
4255
4593
  entry: void 0
4256
4594
  }));
4257
- const callbackRef = React26.useRef(null);
4595
+ const callbackRef = React25.useRef(null);
4258
4596
  callbackRef.current = onChange;
4259
4597
  const frozen = state.entry?.isIntersecting && freezeOnceVisible;
4260
- React26.useEffect(() => {
4598
+ React25.useEffect(() => {
4261
4599
  if (!ref) return;
4262
4600
  if (!("IntersectionObserver" in window)) return;
4263
4601
  if (frozen) return;
@@ -4287,8 +4625,8 @@ var useIntersectionObserver = ({
4287
4625
  frozen,
4288
4626
  freezeOnceVisible
4289
4627
  ]);
4290
- const prevRef = React26.useRef(null);
4291
- React26.useEffect(() => {
4628
+ const prevRef = React25.useRef(null);
4629
+ React25.useEffect(() => {
4292
4630
  if (!ref && state.entry?.target && !freezeOnceVisible && !frozen && prevRef.current !== state.entry.target) {
4293
4631
  prevRef.current = state.entry.target;
4294
4632
  setState({ isIntersecting: initialIsIntersecting, entry: void 0 });
@@ -4305,8 +4643,8 @@ var isValidMediaQueryString = (query) => {
4305
4643
  return query !== "not all";
4306
4644
  };
4307
4645
  var useMediaQuery = ({ query }) => {
4308
- const [matches, setMatches] = React26.useState(false);
4309
- React26.useEffect(() => {
4646
+ const [matches, setMatches] = React25.useState(false);
4647
+ React25.useEffect(() => {
4310
4648
  if (typeof window === "undefined") {
4311
4649
  return;
4312
4650
  }
@@ -4342,8 +4680,8 @@ var useTruncated = ({
4342
4680
  onChange,
4343
4681
  resizeDetectDelay = 150
4344
4682
  }) => {
4345
- const [isTruncated, setIsTruncated] = React26.useState(false);
4346
- React26.useEffect(() => {
4683
+ const [isTruncated, setIsTruncated] = React25.useState(false);
4684
+ React25.useEffect(() => {
4347
4685
  const element = elementRef.current;
4348
4686
  if (!element) return;
4349
4687
  const checkTruncate = debounce(() => {
@@ -4371,22 +4709,29 @@ var useControllableState = ({
4371
4709
  defaultValue,
4372
4710
  value
4373
4711
  }) => {
4374
- const [internalValue, setInternalValue] = React26__namespace.useState(value ?? defaultValue);
4375
- React26__namespace.useEffect(() => {
4376
- if (value !== internalValue) {
4377
- setInternalValue(value);
4378
- }
4379
- }, [value]);
4380
- const updateState = React26__namespace.useCallback((nextValue) => {
4381
- setInternalValue(nextValue);
4382
- }, []);
4712
+ const isControlled = typeof value !== "undefined";
4713
+ const [internalValue, setInternalValue] = React25__namespace.useState(() => {
4714
+ return isControlled ? value : defaultValue;
4715
+ });
4716
+ React25__namespace.useEffect(() => {
4717
+ if (!isControlled) return;
4718
+ setInternalValue(value);
4719
+ }, [isControlled, value]);
4720
+ const setValue = React25__namespace.useCallback(
4721
+ (nextValue) => {
4722
+ if (isControlled) return;
4723
+ setInternalValue(nextValue);
4724
+ },
4725
+ [isControlled]
4726
+ );
4383
4727
  return {
4384
- value: internalValue,
4385
- updateState
4728
+ value: isControlled ? value : internalValue,
4729
+ setValue,
4730
+ isControlled
4386
4731
  };
4387
4732
  };
4388
4733
  var useControllableState_default = useControllableState;
4389
- var useIsomorphicLayoutEffect = typeof window !== "undefined" ? React26.useLayoutEffect : React26.useEffect;
4734
+ var useIsomorphicLayoutEffect = typeof window !== "undefined" ? React25.useLayoutEffect : React25.useEffect;
4390
4735
  var HeaderCell = ({
4391
4736
  rootClassName,
4392
4737
  labelClassName,
@@ -4489,7 +4834,7 @@ function TableHeader({ className, ...props }) {
4489
4834
  "thead",
4490
4835
  {
4491
4836
  "data-slot": "table-header",
4492
- className: cn("[&_tr]:border-b bg-[#f7f4f4]", className),
4837
+ className: cn("[&_tr]:border-b bg-sus-gray-2", className),
4493
4838
  ...props
4494
4839
  }
4495
4840
  );
@@ -4523,7 +4868,7 @@ function TableHead({ className, ...props }) {
4523
4868
  {
4524
4869
  "data-slot": "table-head",
4525
4870
  className: cn(
4526
- "text-foreground h-9 px-2 text-left align-middle font-medium whitespace-nowrap [&:has([role=checkbox])]:pr-0 [&>[role=checkbox]]:translate-y-[2px] hover:bg-gray-200 bg-[#F0F0F0] truncate",
4871
+ "text-foreground h-9 px-2 text-left align-middle font-medium whitespace-nowrap [&:has([role=checkbox])]:pr-0 *:[[role=checkbox]]:translate-y-0.5 hover:bg-gray-200 bg-[#F0F0F0] truncate",
4527
4872
  className
4528
4873
  ),
4529
4874
  ...props
@@ -4536,7 +4881,7 @@ function TableCell({ className, ...props }) {
4536
4881
  {
4537
4882
  "data-slot": "table-cell",
4538
4883
  className: cn(
4539
- "p-2 h-10 align-middle whitespace-nowrap [&:has([role=checkbox])]:pr-0 [&>[role=checkbox]]:translate-y-[2px] border-b truncate",
4884
+ "p-2 h-10 align-middle whitespace-nowrap [&:has([role=checkbox])]:pr-0 *:[[role=checkbox]]:translate-y-0.5 border-b truncate",
4540
4885
  className
4541
4886
  ),
4542
4887
  ...props
@@ -4584,7 +4929,7 @@ var ColumnSeparator = ({ show, className, ...props }) => {
4584
4929
  }
4585
4930
  );
4586
4931
  };
4587
- var ColumnSeparator_default = React26__namespace.default.memo(ColumnSeparator);
4932
+ var ColumnSeparator_default = React25__namespace.default.memo(ColumnSeparator);
4588
4933
  var StatusContentSlot = ({
4589
4934
  content,
4590
4935
  icon,
@@ -4603,7 +4948,7 @@ var StatusContentSlot = ({
4603
4948
  content
4604
4949
  ] });
4605
4950
  };
4606
- var StatusContentSlot_default = React26__namespace.default.memo(StatusContentSlot);
4951
+ var StatusContentSlot_default = React25__namespace.default.memo(StatusContentSlot);
4607
4952
  var stateOptions = [
4608
4953
  "columnFilters",
4609
4954
  "globalFilter",
@@ -4656,9 +5001,9 @@ var modelOptions = [
4656
5001
  "getCenterVisibleLeafColumns"
4657
5002
  ];
4658
5003
  var DataTableDevTool = ({ table }) => {
4659
- const [open, setOpen] = React26.useState(false);
4660
- const [visibleStates, setVisibleStates] = React26.useState([]);
4661
- const [visibleModels, setVisibleModels] = React26.useState([]);
5004
+ const [open, setOpen] = React25.useState(false);
5005
+ const [visibleStates, setVisibleStates] = React25.useState([]);
5006
+ const [visibleModels, setVisibleModels] = React25.useState([]);
4662
5007
  const tableState = table.getState();
4663
5008
  const toggleValue = (arr, value) => arr.includes(value) ? arr.filter((v) => v !== value) : [...arr, value];
4664
5009
  const getCircularReplacer = () => {
@@ -4915,14 +5260,14 @@ var DataTable = ({
4915
5260
  columnResizeMode: columnResizing?.enabled ? columnResizing?.resizeMode ?? "onChange" : "onChange"
4916
5261
  })
4917
5262
  });
4918
- const tableContainerRef = React26.useRef(null);
5263
+ const tableContainerRef = React25.useRef(null);
4919
5264
  const isTableEmpty = table.getCoreRowModel().rows.length === 0;
4920
5265
  const isTableEmptyAfterFiltering = table.getRowModel().rows.length === 0;
4921
5266
  const isFiltering = table.getState().columnFilters.length > 0 || !!table.getState().globalFilter;
4922
5267
  const leftVisibleLeftColumns = table.getLeftVisibleLeafColumns();
4923
5268
  const centerVisibleLeafColumns = table.getCenterVisibleLeafColumns();
4924
5269
  const rightVisibleLeafColumns = table.getRightVisibleLeafColumns();
4925
- const { isSomeColumnsFilterable, filterableColumns } = React26.useMemo(() => {
5270
+ const { isSomeColumnsFilterable, filterableColumns } = React25.useMemo(() => {
4926
5271
  const mergedColumns = [
4927
5272
  ...leftVisibleLeftColumns,
4928
5273
  ...centerVisibleLeafColumns,
@@ -4933,7 +5278,7 @@ var DataTable = ({
4933
5278
  );
4934
5279
  return { isSomeColumnsFilterable: isSomeColumnsFilterable2, filterableColumns: mergedColumns };
4935
5280
  }, [centerVisibleLeafColumns, leftVisibleLeftColumns, rightVisibleLeafColumns]);
4936
- const autoStatusKey = React26.useMemo(() => {
5281
+ const autoStatusKey = React25.useMemo(() => {
4937
5282
  if (isInitialLoading) return "initialLoading";
4938
5283
  if (isTableEmpty) return "emptyData";
4939
5284
  if (isTableEmptyAfterFiltering) return "emptyFilteredData";
@@ -4951,14 +5296,14 @@ var DataTable = ({
4951
5296
  scrollFetch?.hasMore,
4952
5297
  scrollFetch?.isFetchingMore
4953
5298
  ]);
4954
- const activeStatusContentComputed = React26.useMemo(() => {
5299
+ const activeStatusContentComputed = React25.useMemo(() => {
4955
5300
  if (!activeStatusContent) return autoStatusKey;
4956
5301
  if (typeof activeStatusContent === "function") {
4957
5302
  return activeStatusContent({ defaultComputedValue: autoStatusKey });
4958
5303
  }
4959
5304
  return activeStatusContent;
4960
5305
  }, [activeStatusContent, autoStatusKey]);
4961
- const fetchMoreOnScrollReached = React26.useCallback(
5306
+ const fetchMoreOnScrollReached = React25.useCallback(
4962
5307
  (containerRefElement) => {
4963
5308
  if (!scrollFetch?.enabled || !containerRefElement || scrollFetch?.isFetchingMore || !scrollFetch?.hasMore || !scrollFetch?.fetchMore) {
4964
5309
  return;
@@ -4992,14 +5337,14 @@ var DataTable = ({
4992
5337
  // eslint-disable-next-line react-hooks/exhaustive-deps
4993
5338
  [scrollFetch?.enabled, scrollFetch?.isFetchingMore, scrollFetch?.hasMore, scrollFetch?.fetchMore]
4994
5339
  );
4995
- React26.useEffect(() => {
5340
+ React25.useEffect(() => {
4996
5341
  if (!tableRef) return;
4997
5342
  tableRef.current = table;
4998
5343
  return () => {
4999
5344
  tableRef.current = null;
5000
5345
  };
5001
5346
  }, [tableRef, table]);
5002
- React26.useEffect(() => {
5347
+ React25.useEffect(() => {
5003
5348
  fetchMoreOnScrollReached(tableContainerRef.current);
5004
5349
  }, [fetchMoreOnScrollReached]);
5005
5350
  return /* @__PURE__ */ jsxRuntime.jsxs(
@@ -5129,7 +5474,7 @@ var DataTable = ({
5129
5474
  ),
5130
5475
  /* @__PURE__ */ jsxRuntime.jsx(TableBody, { ...components?.tableBodyProps, children: table.getRowModel().rows.map((row) => {
5131
5476
  const tableDataRowProps = typeof components?.tableDataRowProps === "function" ? components.tableDataRowProps({ row, table }) || {} : components?.tableDataRowProps || {};
5132
- return /* @__PURE__ */ React26.createElement(
5477
+ return /* @__PURE__ */ React25.createElement(
5133
5478
  TableRow,
5134
5479
  {
5135
5480
  "data-testid": `table-data-row-${row.id}`,
@@ -5542,6 +5887,11 @@ var defaultResource = {
5542
5887
  description: "Unsaved changes. Do you want to leave this page?",
5543
5888
  confirm_text: "Leave"
5544
5889
  },
5890
+ "confirm.reset_form": {
5891
+ title: "Confirmation",
5892
+ description: "Unsaved changes. If you continue, all changes will be lost.",
5893
+ confirm_text: "Reset"
5894
+ },
5545
5895
  "confirm.remove": {
5546
5896
  title: "Confirmation",
5547
5897
  description: "Are you sure you want to remove this item?",
@@ -5602,11 +5952,11 @@ function DialogAlert({
5602
5952
  }) {
5603
5953
  const alignClass = align === "start" ? "justify-start" : align === "end" ? "justify-end" : "justify-center";
5604
5954
  const { t } = reactI18next.useTranslation();
5605
- const handleCancel = React26.useCallback(() => {
5955
+ const handleCancel = React25.useCallback(() => {
5606
5956
  onCancel?.();
5607
5957
  onOpenChange(false);
5608
5958
  }, [onCancel, onOpenChange]);
5609
- const handleConfirm = React26.useCallback(() => {
5959
+ const handleConfirm = React25.useCallback(() => {
5610
5960
  let func = onConfirm;
5611
5961
  if (variant === "success" && showCancel === false) {
5612
5962
  func = onConfirm ?? onCancel;
@@ -5781,6 +6131,12 @@ var DIALOG_ALERT_TEMPLATES = {
5781
6131
  description: "confirm.leave_page.description",
5782
6132
  confirmText: "confirm.leave_page.confirm_text"
5783
6133
  },
6134
+ "confirm.reset_form": {
6135
+ variant: "confirm",
6136
+ title: "confirm.reset_form.title",
6137
+ description: "confirm.reset_form.description",
6138
+ confirmText: "confirm.reset_form.confirm_text"
6139
+ },
5784
6140
  "confirm.remove": {
5785
6141
  variant: "confirm",
5786
6142
  title: "confirm.remove.title",
@@ -5830,7 +6186,7 @@ var DialogAlertProvider = ({ children, i18nResource, i18nLang }) => {
5830
6186
  const open = useDialogAlertStore((state) => state.open);
5831
6187
  const setOpen = useDialogAlertStore((state) => state.setOpen);
5832
6188
  const dialogProps = useDialogAlertStore((state) => state.dialogProps);
5833
- React26.useEffect(() => {
6189
+ React25.useEffect(() => {
5834
6190
  if (!i18nResource) {
5835
6191
  i18n_default.changeLanguage("sharedui");
5836
6192
  return;
@@ -5940,8 +6296,8 @@ var defaultOperatorShortcuts = {
5940
6296
  };
5941
6297
  var DEFAULT_DEBOUNCE = 200;
5942
6298
  function useKeyboardNavigation(itemsLength, onSelect, isLocked) {
5943
- const [selectedIndex, setSelectedIndex] = React26.useState(0);
5944
- React26.useEffect(() => {
6299
+ const [selectedIndex, setSelectedIndex] = React25.useState(0);
6300
+ React25.useEffect(() => {
5945
6301
  const handler = (event) => {
5946
6302
  if (event.key === "ArrowDown") {
5947
6303
  event.preventDefault();
@@ -5964,10 +6320,10 @@ function useKeyboardNavigation(itemsLength, onSelect, isLocked) {
5964
6320
  return [selectedIndex, setSelectedIndex];
5965
6321
  }
5966
6322
  function useDropdownPosition(clientRect, itemsCount) {
5967
- const [rect, setRect] = React26.useState(null);
5968
- const [style, setStyle] = React26.useState({});
5969
- const ref = React26.useRef(null);
5970
- React26.useEffect(() => {
6323
+ const [rect, setRect] = React25.useState(null);
6324
+ const [style, setStyle] = React25.useState({});
6325
+ const ref = React25.useRef(null);
6326
+ React25.useEffect(() => {
5971
6327
  if (!clientRect) return;
5972
6328
  const update = () => {
5973
6329
  const nextRect = clientRect();
@@ -5984,7 +6340,7 @@ function useDropdownPosition(clientRect, itemsCount) {
5984
6340
  resizeObserver.disconnect();
5985
6341
  };
5986
6342
  }, [clientRect]);
5987
- React26.useLayoutEffect(() => {
6343
+ React25.useLayoutEffect(() => {
5988
6344
  if (!rect || !ref.current) return;
5989
6345
  const dropdown = ref.current;
5990
6346
  const dropdownRect = dropdown.getBoundingClientRect();
@@ -6011,15 +6367,15 @@ var SuggestionList = ({
6011
6367
  debounceMs = DEFAULT_DEBOUNCE,
6012
6368
  query
6013
6369
  }) => {
6014
- const [items, setItems] = React26.useState([]);
6015
- const [isLoading, setIsLoading] = React26.useState(false);
6016
- const fetchId = React26.useRef(0);
6017
- const debounceHandle = React26.useRef(null);
6018
- const itemRefs = React26.useRef([]);
6370
+ const [items, setItems] = React25.useState([]);
6371
+ const [isLoading, setIsLoading] = React25.useState(false);
6372
+ const fetchId = React25.useRef(0);
6373
+ const debounceHandle = React25.useRef(null);
6374
+ const itemRefs = React25.useRef([]);
6019
6375
  const { ref, style, rect } = useDropdownPosition(clientRect, items.length);
6020
- const normalizedMap = React26.useMemo(() => mapItem, [mapItem]);
6021
- const normalizeItem = React26.useMemo(() => normalizeToken, [normalizeToken]);
6022
- React26.useEffect(() => {
6376
+ const normalizedMap = React25.useMemo(() => mapItem, [mapItem]);
6377
+ const normalizeItem = React25.useMemo(() => normalizeToken, [normalizeToken]);
6378
+ React25.useEffect(() => {
6023
6379
  const runFetch = (input) => {
6024
6380
  fetchId.current += 1;
6025
6381
  const currentId = fetchId.current;
@@ -6050,7 +6406,7 @@ var SuggestionList = ({
6050
6406
  fetchId.current += 1;
6051
6407
  };
6052
6408
  }, [query, fetchItems, normalizedMap, normalizeItem, debounceMs]);
6053
- const handleSelect = React26.useMemo(
6409
+ const handleSelect = React25.useMemo(
6054
6410
  () => (item) => {
6055
6411
  if (isLoading) return;
6056
6412
  command(item);
@@ -6065,10 +6421,10 @@ var SuggestionList = ({
6065
6421
  },
6066
6422
  isLoading
6067
6423
  );
6068
- React26.useEffect(() => {
6424
+ React25.useEffect(() => {
6069
6425
  setSelectedIndex(0);
6070
6426
  }, [items, setSelectedIndex]);
6071
- React26.useEffect(() => {
6427
+ React25.useEffect(() => {
6072
6428
  const element = itemRefs.current[selectedIndex];
6073
6429
  if (element) element.scrollIntoView({ block: "nearest" });
6074
6430
  }, [selectedIndex]);
@@ -6116,8 +6472,8 @@ var DISALLOWED_MARKS = ["bold", "italic", "link"];
6116
6472
  var SUGGESTION_DEBOUNCE = 200;
6117
6473
  var DEFAULT_CHIP_CLASS = "outline-1 outline-muted bg-muted/40 text-foreground";
6118
6474
  var TokenView = ({ node, editor, getPos }) => {
6119
- const [isFocused, setIsFocused] = React26__namespace.default.useState(false);
6120
- React26__namespace.default.useEffect(() => {
6475
+ const [isFocused, setIsFocused] = React25__namespace.default.useState(false);
6476
+ React25__namespace.default.useEffect(() => {
6121
6477
  const handler = () => {
6122
6478
  const { from, to } = editor.state.selection;
6123
6479
  const position = getPos();
@@ -6668,6 +7024,8 @@ __export(ui_exports, {
6668
7024
  Input: () => Input,
6669
7025
  InputPrimitive: () => InputPrimitive,
6670
7026
  Label: () => Label2,
7027
+ ListContainer: () => container_default,
7028
+ ListHeader: () => header_default,
6671
7029
  MonthPicker: () => MonthPicker,
6672
7030
  Popover: () => Popover,
6673
7031
  PopoverAnchor: () => PopoverAnchor,
@@ -6744,6 +7102,76 @@ __export(ui_exports, {
6744
7102
  useFormField: () => useFormField,
6745
7103
  useSidebar: () => useSidebar
6746
7104
  });
7105
+ var ListContainer = ({ className, isLeftExpanded, children }) => {
7106
+ return /* @__PURE__ */ jsxRuntime.jsx(
7107
+ "div",
7108
+ {
7109
+ className: cn(
7110
+ "h-[calc(100vh-140px)] min-w-full overflow-hidden rounded-2xl border border-slate-300 bg-white shadow-lg transition-all duration-300 ease-in-out",
7111
+ {
7112
+ "w-full": isLeftExpanded,
7113
+ "md:w-full": isLeftExpanded,
7114
+ "w-full lg:w-1/2": !isLeftExpanded
7115
+ },
7116
+ className
7117
+ ),
7118
+ style: {
7119
+ position: "relative",
7120
+ transitionProperty: "width, transform",
7121
+ transitionDuration: "300ms"
7122
+ },
7123
+ children
7124
+ }
7125
+ );
7126
+ };
7127
+ var container_default = ListContainer;
7128
+ var ListHeader = ({
7129
+ title,
7130
+ titleIcon,
7131
+ isExpanded = false,
7132
+ bgColor = "bg-[#82B495]",
7133
+ textClassName = "text-white",
7134
+ onSettingClick,
7135
+ onExpandClick,
7136
+ rightActions,
7137
+ className
7138
+ }) => {
7139
+ return /* @__PURE__ */ jsxRuntime.jsx("div", { "data-testid": "list-header", className: cn("rounded-t-lg px-4 py-2", bgColor, className), children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-center justify-between", children: [
7140
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { className: cn("flex items-center gap-2 text-lg", textClassName), children: [
7141
+ titleIcon,
7142
+ title
7143
+ ] }),
7144
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex items-center gap-2", children: rightActions ?? /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
7145
+ onSettingClick && /* @__PURE__ */ jsxRuntime.jsx(
7146
+ "button",
7147
+ {
7148
+ onClick: onSettingClick,
7149
+ title: "Settings",
7150
+ className: "rounded p-1 hover:cursor-pointer hover:bg-white/20",
7151
+ children: /* @__PURE__ */ jsxRuntime.jsx(setting_default, { className: "text-white" })
7152
+ }
7153
+ ),
7154
+ onSettingClick && onExpandClick && /* @__PURE__ */ jsxRuntime.jsx("div", { className: cn("h-8 w-px", textClassName.replace("text-", "bg-")) }),
7155
+ onExpandClick && /* @__PURE__ */ jsxRuntime.jsx(
7156
+ "button",
7157
+ {
7158
+ "data-testid": "list-expand-button",
7159
+ onClick: onExpandClick,
7160
+ title: isExpanded ? "Collapse" : "Expand",
7161
+ className: "rounded p-1 hover:cursor-pointer hover:bg-white/20",
7162
+ children: /* @__PURE__ */ jsxRuntime.jsx("span", { className: "flex items-center gap-0.5 text-white", children: isExpanded ? /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
7163
+ /* @__PURE__ */ jsxRuntime.jsx(lucideReact.ChevronLeft, { className: "h-4 w-4" }),
7164
+ /* @__PURE__ */ jsxRuntime.jsx(lucideReact.ChevronRight, { className: "h-4 w-4 -ml-2" })
7165
+ ] }) : /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
7166
+ /* @__PURE__ */ jsxRuntime.jsx(lucideReact.ChevronRight, { className: "h-4 w-4" }),
7167
+ /* @__PURE__ */ jsxRuntime.jsx(lucideReact.ChevronLeft, { className: "h-4 w-4 -ml-2" })
7168
+ ] }) })
7169
+ }
7170
+ )
7171
+ ] }) })
7172
+ ] }) });
7173
+ };
7174
+ var header_default = ListHeader;
6747
7175
  function RadioGroupRoot({
6748
7176
  children,
6749
7177
  ...props
@@ -7032,21 +7460,21 @@ function ToolbarPlugin({
7032
7460
  acceptImageMimeTypes
7033
7461
  }) {
7034
7462
  const [editor] = LexicalComposerContext.useLexicalComposerContext();
7035
- const [state, setState] = React26.useState(initialToolbarState);
7036
- const fileInputRef = React26.useRef(null);
7037
- const [isLinkDialogOpen, setLinkDialogOpen] = React26.useState(false);
7038
- const [editingExistingLink, setEditingExistingLink] = React26.useState(false);
7039
- const [linkNodeKey, setLinkNodeKey] = React26.useState(null);
7040
- const [isImageDialogOpen, setImageDialogOpen] = React26.useState(false);
7041
- const [editingExistingImage, setEditingExistingImage] = React26.useState(false);
7042
- const [imageNodeKey, setImageNodeKey] = React26.useState(null);
7463
+ const [state, setState] = React25.useState(initialToolbarState);
7464
+ const fileInputRef = React25.useRef(null);
7465
+ const [isLinkDialogOpen, setLinkDialogOpen] = React25.useState(false);
7466
+ const [editingExistingLink, setEditingExistingLink] = React25.useState(false);
7467
+ const [linkNodeKey, setLinkNodeKey] = React25.useState(null);
7468
+ const [isImageDialogOpen, setImageDialogOpen] = React25.useState(false);
7469
+ const [editingExistingImage, setEditingExistingImage] = React25.useState(false);
7470
+ const [imageNodeKey, setImageNodeKey] = React25.useState(null);
7043
7471
  const linkForm = reactHookForm.useForm({
7044
7472
  defaultValues: { url: "", label: "" }
7045
7473
  });
7046
7474
  const imageForm = reactHookForm.useForm({
7047
7475
  defaultValues: { url: "", alt: "", width: "", height: "" }
7048
7476
  });
7049
- const openImageDialog = React26.useCallback(() => {
7477
+ const openImageDialog = React25.useCallback(() => {
7050
7478
  if (disabled || !allowImageUrlInsert) {
7051
7479
  return;
7052
7480
  }
@@ -7080,7 +7508,7 @@ function ToolbarPlugin({
7080
7508
  setImageNodeKey(targetImage?.getKey() ?? null);
7081
7509
  setImageDialogOpen(true);
7082
7510
  }, [allowImageUrlInsert, disabled, editor, imageForm]);
7083
- const closeImageDialog = React26.useCallback(() => {
7511
+ const closeImageDialog = React25.useCallback(() => {
7084
7512
  setImageDialogOpen(false);
7085
7513
  setEditingExistingImage(false);
7086
7514
  setImageNodeKey(null);
@@ -7089,7 +7517,7 @@ function ToolbarPlugin({
7089
7517
  editor.focus();
7090
7518
  }, 0);
7091
7519
  }, [editor, imageForm]);
7092
- const openLinkDialog = React26.useCallback(() => {
7520
+ const openLinkDialog = React25.useCallback(() => {
7093
7521
  if (disabled) {
7094
7522
  return;
7095
7523
  }
@@ -7129,7 +7557,7 @@ function ToolbarPlugin({
7129
7557
  setLinkNodeKey(detectedLink?.getKey() ?? null);
7130
7558
  setLinkDialogOpen(true);
7131
7559
  }, [disabled, editor, linkForm]);
7132
- const closeLinkDialog = React26.useCallback(() => {
7560
+ const closeLinkDialog = React25.useCallback(() => {
7133
7561
  setLinkDialogOpen(false);
7134
7562
  setEditingExistingLink(false);
7135
7563
  setLinkNodeKey(null);
@@ -7170,7 +7598,7 @@ function ToolbarPlugin({
7170
7598
  });
7171
7599
  closeLinkDialog();
7172
7600
  });
7173
- const handleRemoveLink = React26.useCallback(() => {
7601
+ const handleRemoveLink = React25.useCallback(() => {
7174
7602
  editor.focus();
7175
7603
  editor.update(() => {
7176
7604
  if (linkNodeKey) {
@@ -7187,7 +7615,7 @@ function ToolbarPlugin({
7187
7615
  });
7188
7616
  closeLinkDialog();
7189
7617
  }, [closeLinkDialog, editor, linkNodeKey]);
7190
- const handleLinkDialogOpenChange = React26.useCallback(
7618
+ const handleLinkDialogOpenChange = React25.useCallback(
7191
7619
  (open) => {
7192
7620
  if (open) {
7193
7621
  setLinkDialogOpen(true);
@@ -7197,7 +7625,7 @@ function ToolbarPlugin({
7197
7625
  },
7198
7626
  [closeLinkDialog]
7199
7627
  );
7200
- const updateToolbar = React26.useCallback(() => {
7628
+ const updateToolbar = React25.useCallback(() => {
7201
7629
  const selection = lexical.$getSelection();
7202
7630
  if (!lexical.$isRangeSelection(selection)) {
7203
7631
  return;
@@ -7237,7 +7665,7 @@ function ToolbarPlugin({
7237
7665
  isLink: hasLink
7238
7666
  }));
7239
7667
  }, []);
7240
- React26__namespace.useEffect(() => {
7668
+ React25__namespace.useEffect(() => {
7241
7669
  return utils.mergeRegister(
7242
7670
  editor.registerCommand(
7243
7671
  lexical.CAN_UNDO_COMMAND,
@@ -7268,7 +7696,7 @@ function ToolbarPlugin({
7268
7696
  })
7269
7697
  );
7270
7698
  }, [editor, updateToolbar]);
7271
- const applyBlock = React26.useCallback(
7699
+ const applyBlock = React25.useCallback(
7272
7700
  (nextBlock) => {
7273
7701
  if (disabled) {
7274
7702
  return;
@@ -7330,7 +7758,7 @@ function ToolbarPlugin({
7330
7758
  },
7331
7759
  [disabled, editor, state.blockType]
7332
7760
  );
7333
- const toggleFormat = React26.useCallback(
7761
+ const toggleFormat = React25.useCallback(
7334
7762
  (format5) => {
7335
7763
  if (disabled) {
7336
7764
  return;
@@ -7339,10 +7767,10 @@ function ToolbarPlugin({
7339
7767
  },
7340
7768
  [disabled, editor]
7341
7769
  );
7342
- const toggleLink = React26.useCallback(() => {
7770
+ const toggleLink = React25.useCallback(() => {
7343
7771
  openLinkDialog();
7344
7772
  }, [openLinkDialog]);
7345
- const applyElementFormat = React26.useCallback(
7773
+ const applyElementFormat = React25.useCallback(
7346
7774
  (format5) => {
7347
7775
  if (disabled) {
7348
7776
  return;
@@ -7353,7 +7781,7 @@ function ToolbarPlugin({
7353
7781
  );
7354
7782
  const canInsertImage = allowImageUrlInsert || Boolean(onImageUpload);
7355
7783
  const imageAccept = acceptImageMimeTypes ?? DEFAULT_IMAGE_ACCEPT;
7356
- const handleInsertImage = React26.useCallback(() => {
7784
+ const handleInsertImage = React25.useCallback(() => {
7357
7785
  if (disabled || !canInsertImage) {
7358
7786
  return;
7359
7787
  }
@@ -7364,7 +7792,7 @@ function ToolbarPlugin({
7364
7792
  }
7365
7793
  openImageDialog();
7366
7794
  }, [canInsertImage, disabled, editor, onImageUpload, openImageDialog]);
7367
- const handleFileChange = React26.useCallback(
7795
+ const handleFileChange = React25.useCallback(
7368
7796
  async (event) => {
7369
7797
  if (!onImageUpload) {
7370
7798
  return;
@@ -7454,7 +7882,7 @@ function ToolbarPlugin({
7454
7882
  });
7455
7883
  closeImageDialog();
7456
7884
  });
7457
- const handleImageDialogOpenChange = React26.useCallback(
7885
+ const handleImageDialogOpenChange = React25.useCallback(
7458
7886
  (open) => {
7459
7887
  if (open) {
7460
7888
  setImageDialogOpen(true);
@@ -7464,7 +7892,7 @@ function ToolbarPlugin({
7464
7892
  },
7465
7893
  [closeImageDialog]
7466
7894
  );
7467
- const handleRemoveImage = React26.useCallback(() => {
7895
+ const handleRemoveImage = React25.useCallback(() => {
7468
7896
  if (!imageNodeKey) {
7469
7897
  closeImageDialog();
7470
7898
  return;
@@ -7823,7 +8251,7 @@ function ControlledValuePlugin({
7823
8251
  trackAppliedValue
7824
8252
  }) {
7825
8253
  const [editor] = LexicalComposerContext.useLexicalComposerContext();
7826
- React26__namespace.useEffect(() => {
8254
+ React25__namespace.useEffect(() => {
7827
8255
  if (value == null || trackAppliedValue.current === value) {
7828
8256
  return;
7829
8257
  }
@@ -7847,14 +8275,14 @@ function ControlledValuePlugin({
7847
8275
  }
7848
8276
  function EditableStatePlugin({ editable }) {
7849
8277
  const [editor] = LexicalComposerContext.useLexicalComposerContext();
7850
- React26__namespace.useEffect(() => {
8278
+ React25__namespace.useEffect(() => {
7851
8279
  editor.setEditable(editable);
7852
8280
  }, [editor, editable]);
7853
8281
  return null;
7854
8282
  }
7855
8283
  function ImagesPlugin() {
7856
8284
  const [editor] = LexicalComposerContext.useLexicalComposerContext();
7857
- React26__namespace.useEffect(() => {
8285
+ React25__namespace.useEffect(() => {
7858
8286
  return editor.registerCommand(
7859
8287
  INSERT_IMAGE_COMMAND,
7860
8288
  (payload) => {
@@ -7873,7 +8301,7 @@ function ImagesPlugin() {
7873
8301
  }, [editor]);
7874
8302
  return null;
7875
8303
  }
7876
- var RichText = React26.forwardRef(function RichText2({
8304
+ var RichText = React25.forwardRef(function RichText2({
7877
8305
  value,
7878
8306
  defaultValue,
7879
8307
  onChange,
@@ -7892,11 +8320,11 @@ var RichText = React26.forwardRef(function RichText2({
7892
8320
  id,
7893
8321
  ...rest
7894
8322
  }, ref) {
7895
- const initialSerializedStateRef = React26.useRef(void 0);
8323
+ const initialSerializedStateRef = React25.useRef(void 0);
7896
8324
  if (initialSerializedStateRef.current === void 0) {
7897
8325
  initialSerializedStateRef.current = parseSerializedEditorState(value ?? defaultValue);
7898
8326
  }
7899
- const initialConfig = React26.useMemo(
8327
+ const initialConfig = React25.useMemo(
7900
8328
  () => ({
7901
8329
  namespace: "RichTextEditor",
7902
8330
  editable: !(readOnly || disabled),
@@ -7909,8 +8337,8 @@ var RichText = React26.forwardRef(function RichText2({
7909
8337
  }),
7910
8338
  [disabled, readOnly]
7911
8339
  );
7912
- const appliedValueRef = React26.useRef(value ?? defaultValue);
7913
- const handleChange = React26.useCallback(
8340
+ const appliedValueRef = React25.useRef(value ?? defaultValue);
8341
+ const handleChange = React25.useCallback(
7914
8342
  (editorState, editor) => {
7915
8343
  const serialized = JSON.stringify(editorState.toJSON());
7916
8344
  appliedValueRef.current = serialized;
@@ -8099,13 +8527,13 @@ function SheetDescription({
8099
8527
  );
8100
8528
  }
8101
8529
  function useIsMobile(breakpoint = 768) {
8102
- const [isMobile, setIsMobile] = React26.useState(() => {
8530
+ const [isMobile, setIsMobile] = React25.useState(() => {
8103
8531
  if (typeof window === "undefined") {
8104
8532
  return false;
8105
8533
  }
8106
8534
  return window.innerWidth < breakpoint;
8107
8535
  });
8108
- React26.useEffect(() => {
8536
+ React25.useEffect(() => {
8109
8537
  function onResize() {
8110
8538
  setIsMobile(window.innerWidth < breakpoint);
8111
8539
  }
@@ -8135,9 +8563,9 @@ var SIDEBAR_WIDTH = "16rem";
8135
8563
  var SIDEBAR_WIDTH_MOBILE = "18rem";
8136
8564
  var SIDEBAR_WIDTH_ICON = "3rem";
8137
8565
  var SIDEBAR_KEYBOARD_SHORTCUT = "b";
8138
- var SidebarContext = React26__namespace.createContext(null);
8566
+ var SidebarContext = React25__namespace.createContext(null);
8139
8567
  function useSidebar() {
8140
- const context = React26__namespace.useContext(SidebarContext);
8568
+ const context = React25__namespace.useContext(SidebarContext);
8141
8569
  if (!context) {
8142
8570
  throw new Error("useSidebar must be used within a SidebarProvider.");
8143
8571
  }
@@ -8153,10 +8581,10 @@ function SidebarProvider({
8153
8581
  ...props
8154
8582
  }) {
8155
8583
  const isMobile = useIsMobile();
8156
- const [openMobile, setOpenMobile] = React26__namespace.useState(false);
8157
- const [_open, _setOpen] = React26__namespace.useState(defaultOpen);
8584
+ const [openMobile, setOpenMobile] = React25__namespace.useState(false);
8585
+ const [_open, _setOpen] = React25__namespace.useState(defaultOpen);
8158
8586
  const open = openProp ?? _open;
8159
- const setOpen = React26__namespace.useCallback(
8587
+ const setOpen = React25__namespace.useCallback(
8160
8588
  (value) => {
8161
8589
  const openState = typeof value === "function" ? value(open) : value;
8162
8590
  if (setOpenProp) {
@@ -8168,10 +8596,10 @@ function SidebarProvider({
8168
8596
  },
8169
8597
  [setOpenProp, open]
8170
8598
  );
8171
- const toggleSidebar = React26__namespace.useCallback(() => {
8599
+ const toggleSidebar = React25__namespace.useCallback(() => {
8172
8600
  return isMobile ? setOpenMobile((open2) => !open2) : setOpen((open2) => !open2);
8173
8601
  }, [isMobile, setOpen, setOpenMobile]);
8174
- React26__namespace.useEffect(() => {
8602
+ React25__namespace.useEffect(() => {
8175
8603
  const handleKeyDown = (event) => {
8176
8604
  if (event.key === SIDEBAR_KEYBOARD_SHORTCUT && (event.metaKey || event.ctrlKey)) {
8177
8605
  event.preventDefault();
@@ -8182,7 +8610,7 @@ function SidebarProvider({
8182
8610
  return () => window.removeEventListener("keydown", handleKeyDown);
8183
8611
  }, [toggleSidebar]);
8184
8612
  const state = open ? "expanded" : "collapsed";
8185
- const contextValue = React26__namespace.useMemo(
8613
+ const contextValue = React25__namespace.useMemo(
8186
8614
  () => ({
8187
8615
  state,
8188
8616
  open,
@@ -8624,7 +9052,7 @@ function SidebarMenuSkeleton({
8624
9052
  showIcon = false,
8625
9053
  ...props
8626
9054
  }) {
8627
- const width = React26__namespace.useMemo(() => {
9055
+ const width = React25__namespace.useMemo(() => {
8628
9056
  return `${Math.floor(Math.random() * 40) + 50}%`;
8629
9057
  }, []);
8630
9058
  return /* @__PURE__ */ jsxRuntime.jsxs(
@@ -8889,10 +9317,10 @@ var FormulaEditor = ({
8889
9317
  fieldState,
8890
9318
  mode = "edit"
8891
9319
  }) => {
8892
- const [isExpanded, setIsExpanded] = React26.useState(false);
8893
- const lastEmittedValueRef = React26.useRef(null);
8894
- const ignorePropValueRef = React26.useRef(false);
8895
- const normalizedConfigs = React26.useMemo(() => {
9320
+ const [isExpanded, setIsExpanded] = React25.useState(false);
9321
+ const lastEmittedValueRef = React25.useRef(null);
9322
+ const ignorePropValueRef = React25.useRef(false);
9323
+ const normalizedConfigs = React25.useMemo(() => {
8896
9324
  const configsToUse = tokenConfigs?.length ? tokenConfigs : DEFAULT_TOKEN_CONFIGS;
8897
9325
  return configsToUse.map((config) => ({
8898
9326
  ...config,
@@ -8901,18 +9329,18 @@ var FormulaEditor = ({
8901
9329
  outputType: config.outputType ?? config.type
8902
9330
  }));
8903
9331
  }, [tokenConfigs]);
8904
- const prefixMap = React26.useMemo(() => buildPrefixMap(normalizedConfigs), [normalizedConfigs]);
8905
- const configLookup = React26.useMemo(() => {
9332
+ const prefixMap = React25.useMemo(() => buildPrefixMap(normalizedConfigs), [normalizedConfigs]);
9333
+ const configLookup = React25.useMemo(() => {
8906
9334
  const lookup = /* @__PURE__ */ new Map();
8907
9335
  normalizedConfigs.forEach((config) => lookup.set(config.prefix, config));
8908
9336
  return lookup;
8909
9337
  }, [normalizedConfigs]);
8910
- const allowedOperators = React26.useMemo(() => operators.map((operator) => operator.value), [operators]);
9338
+ const allowedOperators = React25.useMemo(() => operators.map((operator) => operator.value), [operators]);
8911
9339
  const displayError = errorMessage ?? fieldState?.error?.message;
8912
9340
  const hasError = Boolean(displayError);
8913
9341
  const isEditorReadOnly = mode === "display";
8914
9342
  const isEditorDisabled = disabled || loading || isEditorReadOnly;
8915
- const convertValueToContent = React26.useCallback(
9343
+ const convertValueToContent = React25.useCallback(
8916
9344
  (input) => {
8917
9345
  if (!input) return "";
8918
9346
  const trimmed = input.trim();
@@ -8924,8 +9352,8 @@ var FormulaEditor = ({
8924
9352
  },
8925
9353
  [configLookup, prefixMap]
8926
9354
  );
8927
- const resolvedContent = React26.useMemo(() => convertValueToContent(value), [convertValueToContent, value]);
8928
- const extensions = React26.useMemo(
9355
+ const resolvedContent = React25.useMemo(() => convertValueToContent(value), [convertValueToContent, value]);
9356
+ const extensions = React25.useMemo(
8929
9357
  () => [
8930
9358
  StarterKit__default.default.configure({ bold: false, italic: false }),
8931
9359
  Token.configure({ configs: normalizedConfigs, onSelect: onSelectSuggestion }),
@@ -8957,11 +9385,11 @@ var FormulaEditor = ({
8957
9385
  }
8958
9386
  }
8959
9387
  });
8960
- React26.useEffect(() => {
9388
+ React25.useEffect(() => {
8961
9389
  if (!editor) return;
8962
9390
  editor.setEditable(!isEditorDisabled);
8963
9391
  }, [editor, isEditorDisabled]);
8964
- React26.useEffect(() => {
9392
+ React25.useEffect(() => {
8965
9393
  if (!editor || resolvedContent === void 0) return;
8966
9394
  if (ignorePropValueRef.current && typeof value === "string" && value === lastEmittedValueRef.current) {
8967
9395
  ignorePropValueRef.current = false;
@@ -9093,7 +9521,7 @@ function SortableRow({
9093
9521
  id: value,
9094
9522
  disabled: name === "columns.0.id"
9095
9523
  });
9096
- const style = React26__namespace.useMemo(
9524
+ const style = React25__namespace.useMemo(
9097
9525
  () => ({
9098
9526
  transform: utilities.CSS.Transform.toString(transform),
9099
9527
  transition
@@ -9205,8 +9633,8 @@ var GridSettingsModal = ({
9205
9633
  onClose,
9206
9634
  onSaveColumns
9207
9635
  }) => {
9208
- const [isDragging, setIsDragging] = React26.useState(false);
9209
- const scrollRef = React26.useRef(null);
9636
+ const [isDragging, setIsDragging] = React25.useState(false);
9637
+ const scrollRef = React25.useRef(null);
9210
9638
  const form = reactHookForm.useForm({
9211
9639
  resolver: zod$1.zodResolver(GridSettingsSchema),
9212
9640
  defaultValues: { columns: currentColumns },
@@ -9218,7 +9646,7 @@ var GridSettingsModal = ({
9218
9646
  name: "columns",
9219
9647
  keyName: "fieldId"
9220
9648
  });
9221
- React26.useEffect(() => {
9649
+ React25.useEffect(() => {
9222
9650
  if (isOpen) {
9223
9651
  form.reset({ columns: currentColumns });
9224
9652
  }
@@ -9495,7 +9923,7 @@ function getCandidateWidths({
9495
9923
  }
9496
9924
  return DEVICE_SIZES;
9497
9925
  }
9498
- var Image2 = React26__namespace.forwardRef(function Image3({
9926
+ var Image2 = React25__namespace.forwardRef(function Image3({
9499
9927
  src,
9500
9928
  alt,
9501
9929
  width,
@@ -9525,34 +9953,34 @@ var Image2 = React26__namespace.forwardRef(function Image3({
9525
9953
  } = imgProps;
9526
9954
  const widthNumber = toNumber(width);
9527
9955
  const heightNumber = toNumber(height);
9528
- React26__namespace.useEffect(() => {
9956
+ React25__namespace.useEffect(() => {
9529
9957
  if (!fill && (!widthNumber || !heightNumber)) {
9530
9958
  console.warn(
9531
9959
  "[Image] When `fill` is false you should provide both `width` and `height` to prevent layout shifts."
9532
9960
  );
9533
9961
  }
9534
9962
  }, [fill, heightNumber, widthNumber]);
9535
- const candidateWidths = React26__namespace.useMemo(
9963
+ const candidateWidths = React25__namespace.useMemo(
9536
9964
  () => getCandidateWidths({ width: widthNumber, sizes, fill }),
9537
9965
  [fill, sizes, widthNumber]
9538
9966
  );
9539
9967
  const largestWidth = candidateWidths[candidateWidths.length - 1] ?? widthNumber ?? DEVICE_SIZES[DEVICE_SIZES.length - 1];
9540
- const computedSrc = React26__namespace.useMemo(() => {
9968
+ const computedSrc = React25__namespace.useMemo(() => {
9541
9969
  if (unoptimized) {
9542
9970
  return src;
9543
9971
  }
9544
9972
  return loader({ src, width: largestWidth, quality });
9545
9973
  }, [largestWidth, loader, quality, src, unoptimized]);
9546
- const computedSrcSet = React26__namespace.useMemo(() => {
9974
+ const computedSrcSet = React25__namespace.useMemo(() => {
9547
9975
  if (unoptimized) {
9548
9976
  return void 0;
9549
9977
  }
9550
9978
  return candidateWidths.map((currentWidth) => `${loader({ src, width: currentWidth, quality })} ${currentWidth}w`).join(", ");
9551
9979
  }, [candidateWidths, loader, quality, src, unoptimized]);
9552
9980
  const sizesValue = sizes ?? (fill ? "100vw" : widthNumber ? `${widthNumber}px` : void 0);
9553
- const [isLoaded, setIsLoaded] = React26__namespace.useState(false);
9554
- const internalRef = React26__namespace.useRef(null);
9555
- const setRefs = React26__namespace.useCallback(
9981
+ const [isLoaded, setIsLoaded] = React25__namespace.useState(false);
9982
+ const internalRef = React25__namespace.useRef(null);
9983
+ const setRefs = React25__namespace.useCallback(
9556
9984
  (node) => {
9557
9985
  internalRef.current = node;
9558
9986
  if (!ref) {
@@ -9566,7 +9994,7 @@ var Image2 = React26__namespace.forwardRef(function Image3({
9566
9994
  },
9567
9995
  [ref]
9568
9996
  );
9569
- React26__namespace.useEffect(() => {
9997
+ React25__namespace.useEffect(() => {
9570
9998
  const image = internalRef.current;
9571
9999
  if (!image) {
9572
10000
  return;
@@ -9578,7 +10006,7 @@ var Image2 = React26__namespace.forwardRef(function Image3({
9578
10006
  setIsLoaded(false);
9579
10007
  }
9580
10008
  }, [onLoadingComplete, src]);
9581
- const handleLoad = React26__namespace.useCallback(
10009
+ const handleLoad = React25__namespace.useCallback(
9582
10010
  (event) => {
9583
10011
  setIsLoaded(true);
9584
10012
  onLoadProp?.(event);
@@ -9590,7 +10018,7 @@ var Image2 = React26__namespace.forwardRef(function Image3({
9590
10018
  const fetchPriority = priority ? "high" : fetchPriorityProp;
9591
10019
  const decoding = decodingProp ?? "async";
9592
10020
  const resolvedObjectFit = objectFit ?? (fill ? "cover" : void 0);
9593
- const wrapperStyle = React26__namespace.useMemo(
10021
+ const wrapperStyle = React25__namespace.useMemo(
9594
10022
  () => ({
9595
10023
  position: "relative",
9596
10024
  display: fill ? "block" : "inline-block",
@@ -9600,7 +10028,7 @@ var Image2 = React26__namespace.forwardRef(function Image3({
9600
10028
  }),
9601
10029
  [fill, height, width]
9602
10030
  );
9603
- const imageStyle = React26__namespace.useMemo(
10031
+ const imageStyle = React25__namespace.useMemo(
9604
10032
  () => ({
9605
10033
  width: fill ? "100%" : formatDimension(width) ?? void 0,
9606
10034
  height: fill ? "100%" : formatDimension(height) ?? void 0,
@@ -9661,107 +10089,47 @@ var Image2 = React26__namespace.forwardRef(function Image3({
9661
10089
  );
9662
10090
  });
9663
10091
  Image2.displayName = "Image";
9664
- var ListTable = ({ onTableReady, children }) => {
9665
- React26__namespace.useEffect(() => {
9666
- if (onTableReady) {
9667
- onTableReady({ ready: true });
9668
- }
9669
- }, [onTableReady]);
9670
- return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex h-full w-full items-center justify-center", children: children ?? "Provide your table implementation here." });
9671
- };
9672
- var table_default = ListTable;
9673
- var ListContainer = ({ className, isLeftExpanded, children }) => {
9674
- return /* @__PURE__ */ jsxRuntime.jsx(
9675
- "div",
9676
- {
9677
- className: cn(
9678
- "h-[calc(100vh-140px)] min-w-full overflow-hidden rounded-2xl border border-slate-300 bg-white shadow-lg transition-all duration-300 ease-in-out",
9679
- {
9680
- "w-full": isLeftExpanded,
9681
- "md:w-full": isLeftExpanded,
9682
- "w-full lg:w-1/2": !isLeftExpanded
9683
- },
9684
- className
9685
- ),
9686
- style: {
9687
- position: "relative",
9688
- transitionProperty: "width, transform",
9689
- transitionDuration: "300ms"
9690
- },
9691
- children
9692
- }
9693
- );
9694
- };
9695
- var container_default = ListContainer;
9696
- var ListHeader = ({
10092
+ var MainListContainer = ({
9697
10093
  title,
9698
10094
  titleIcon,
9699
- isExpanded = false,
9700
- bgColor = "bg-[#82B495]",
9701
- textClassName = "text-white",
10095
+ isExpanded = true,
9702
10096
  onSettingClick,
9703
10097
  onExpandClick,
9704
- rightActions,
9705
- className
9706
- }) => {
9707
- return /* @__PURE__ */ jsxRuntime.jsx("div", { "data-testid": "list-header", className: cn("rounded-t-lg px-4 py-2", bgColor, className), children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-center justify-between", children: [
9708
- /* @__PURE__ */ jsxRuntime.jsxs("div", { className: cn("flex items-center gap-2 text-lg", textClassName), children: [
9709
- titleIcon,
9710
- title
9711
- ] }),
9712
- /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex items-center gap-2", children: rightActions ?? /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
9713
- onSettingClick && /* @__PURE__ */ jsxRuntime.jsx(
9714
- "button",
9715
- {
9716
- onClick: onSettingClick,
9717
- title: "Settings",
9718
- className: "rounded p-1 hover:cursor-pointer hover:bg-white/20",
9719
- children: /* @__PURE__ */ jsxRuntime.jsx(setting_default, { className: "text-white" })
9720
- }
9721
- ),
9722
- onSettingClick && onExpandClick && /* @__PURE__ */ jsxRuntime.jsx("div", { className: cn("h-8 w-px", textClassName.replace("text-", "bg-")) }),
9723
- onExpandClick && /* @__PURE__ */ jsxRuntime.jsx(
9724
- "button",
9725
- {
9726
- "data-testid": "list-expand-button",
9727
- onClick: onExpandClick,
9728
- title: isExpanded ? "Collapse" : "Expand",
9729
- className: "rounded p-1 hover:cursor-pointer hover:bg-white/20",
9730
- children: /* @__PURE__ */ jsxRuntime.jsx("span", { className: "flex items-center gap-[2px] text-white", children: isExpanded ? /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
9731
- /* @__PURE__ */ jsxRuntime.jsx(lucideReact.ChevronLeft, { className: "h-4 w-4" }),
9732
- /* @__PURE__ */ jsxRuntime.jsx(lucideReact.ChevronRight, { className: "h-4 w-4 -ml-2" })
9733
- ] }) : /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
9734
- /* @__PURE__ */ jsxRuntime.jsx(lucideReact.ChevronRight, { className: "h-4 w-4" }),
9735
- /* @__PURE__ */ jsxRuntime.jsx(lucideReact.ChevronLeft, { className: "h-4 w-4 -ml-2" })
9736
- ] }) })
9737
- }
9738
- )
9739
- ] }) })
9740
- ] }) });
9741
- };
9742
- var header_default = ListHeader;
9743
- var List = ({
9744
- isLeftExpanded,
9745
- handleSettingClick,
9746
- handleExpandClick,
9747
- onTableReady,
9748
- children
10098
+ children,
10099
+ slots,
10100
+ classNames,
10101
+ renderHeader
9749
10102
  }) => {
9750
- return /* @__PURE__ */ jsxRuntime.jsxs(container_default, { className: "flex flex-col bg-white shadow-lg", isLeftExpanded, children: [
9751
- /* @__PURE__ */ jsxRuntime.jsx(
9752
- header_default,
9753
- {
9754
- title: "Previous Example",
9755
- isExpanded: isLeftExpanded,
9756
- onSettingClick: handleSettingClick,
9757
- onExpandClick: handleExpandClick,
9758
- titleIcon: /* @__PURE__ */ jsxRuntime.jsx(lucideReact.CircleUserRound, { className: "h-6 w-6 text-white" })
9759
- }
9760
- ),
9761
- /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex h-full", children: /* @__PURE__ */ jsxRuntime.jsx(table_default, { onTableReady, children }) })
9762
- ] });
10103
+ const Container = slots?.Container ?? container_default;
10104
+ const Header2 = slots?.Header ?? header_default;
10105
+ return /* @__PURE__ */ jsxRuntime.jsxs(
10106
+ Container,
10107
+ {
10108
+ isLeftExpanded: isExpanded,
10109
+ className: cn("flex flex-col bg-white shadow-lg", classNames?.root),
10110
+ children: [
10111
+ renderHeader ? renderHeader({
10112
+ title,
10113
+ titleIcon,
10114
+ isExpanded,
10115
+ onSettingClick,
10116
+ onExpandClick
10117
+ }) : Header2 ? /* @__PURE__ */ jsxRuntime.jsx(
10118
+ Header2,
10119
+ {
10120
+ title,
10121
+ titleIcon,
10122
+ isExpanded,
10123
+ onSettingClick,
10124
+ onExpandClick
10125
+ }
10126
+ ) : null,
10127
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: cn("flex-1 flex flex-col relative min-h-0", classNames?.content), children })
10128
+ ]
10129
+ }
10130
+ );
9763
10131
  };
9764
- var List_default = List;
10132
+ var MainListContainer_default = MainListContainer;
9765
10133
  var InfoIcon = (props) => {
9766
10134
  return /* @__PURE__ */ jsxRuntime.jsxs(
9767
10135
  "svg",
@@ -9807,7 +10175,7 @@ var InfoIcon = (props) => {
9807
10175
  }
9808
10176
  );
9809
10177
  };
9810
- var InfoIcon_default = React26__namespace.default.memo(InfoIcon);
10178
+ var InfoIcon_default = React25__namespace.default.memo(InfoIcon);
9811
10179
  var Navbar = ({
9812
10180
  className,
9813
10181
  title,
@@ -9832,7 +10200,7 @@ var Navbar = ({
9832
10200
  }) => {
9833
10201
  const { isMobile, isTablet, isDesktop } = useScreenSize_default();
9834
10202
  const Icon2 = lucideReact.CircleHelp;
9835
- const shouldShowSeparator = !separatorDisable && React26.isValidElement(searchButton);
10203
+ const shouldShowSeparator = !separatorDisable && React25.isValidElement(searchButton);
9836
10204
  return /* @__PURE__ */ jsxRuntime.jsxs(
9837
10205
  "nav",
9838
10206
  {
@@ -9843,8 +10211,8 @@ var Navbar = ({
9843
10211
  children: [
9844
10212
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-center gap-2.5", children: [
9845
10213
  headImageURL !== "" ? /* @__PURE__ */ jsxRuntime.jsx("img", { src: headImageURL, alt: "", className: cn("w-full h-full", headImageURLClassName) }) : /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-col", children: [
9846
- React26.isValidElement(title) ? title : /* @__PURE__ */ jsxRuntime.jsx("h1", { className: "text-white text-xl font-bold", children: title }),
9847
- React26.isValidElement(subTitle) ? subTitle : /* @__PURE__ */ jsxRuntime.jsx("h1", { className: "text-white text-sm font-semibold", children: subTitle })
10214
+ React25.isValidElement(title) ? title : /* @__PURE__ */ jsxRuntime.jsx("h1", { className: "text-white text-xl font-bold", children: title }),
10215
+ React25.isValidElement(subTitle) ? subTitle : /* @__PURE__ */ jsxRuntime.jsx("h1", { className: "text-white text-sm font-semibold", children: subTitle })
9848
10216
  ] }),
9849
10217
  tooltipTitle && /* @__PURE__ */ jsxRuntime.jsxs(Tooltip2, { children: [
9850
10218
  /* @__PURE__ */ jsxRuntime.jsx(TooltipTrigger2, { asChild: true, children: /* @__PURE__ */ jsxRuntime.jsx("button", { className: "text-white hover:opacity-80 ", children: /* @__PURE__ */ jsxRuntime.jsx(InfoIcon_default, { className: "w-4" }) }) }),
@@ -9875,10 +10243,10 @@ var Navbar = ({
9875
10243
  ),
9876
10244
  children: [
9877
10245
  tooltipTitle && /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-center gap-3", children: [
9878
- React26.isValidElement(tooltipIcon) ? tooltipIcon : /* @__PURE__ */ jsxRuntime.jsx(Icon2, { size: 32, "aria-hidden": "true" }),
10246
+ React25.isValidElement(tooltipIcon) ? tooltipIcon : /* @__PURE__ */ jsxRuntime.jsx(Icon2, { size: 32, "aria-hidden": "true" }),
9879
10247
  /* @__PURE__ */ jsxRuntime.jsx("h3", { className: "text-xl font-bold", children: tooltipTitle })
9880
10248
  ] }),
9881
- React26.isValidElement(tooltipdescription) && tooltipdescription
10249
+ React25.isValidElement(tooltipdescription) && tooltipdescription
9882
10250
  ]
9883
10251
  }
9884
10252
  ),
@@ -9933,13 +10301,13 @@ var Navbar = ({
9933
10301
  }
9934
10302
  ),
9935
10303
  shouldShowSeparator && /* @__PURE__ */ jsxRuntime.jsx("div", { role: "separator", className: "ml-1 w-[1px] h-10 bg-white" }),
9936
- React26.isValidElement(searchButton) ? searchButton : ""
10304
+ React25.isValidElement(searchButton) ? searchButton : ""
9937
10305
  ] })
9938
10306
  ]
9939
10307
  }
9940
10308
  );
9941
10309
  };
9942
- var navbar_default = React26__namespace.default.memo(Navbar);
10310
+ var navbar_default = React25__namespace.default.memo(Navbar);
9943
10311
  var usePreventPageLeaveStore = zustand.create((set) => ({
9944
10312
  isPreventing: false,
9945
10313
  setPreventing: (value) => set({ isPreventing: value })
@@ -9949,7 +10317,7 @@ var usePreventPageLeaveStore_default = usePreventPageLeaveStore;
9949
10317
  // src/components/prevent-page-leave/PreventPageLeave.tsx
9950
10318
  var PreventPageLeave = ({ children }) => {
9951
10319
  const { isPreventing } = usePreventPageLeaveStore();
9952
- React26.useEffect(() => {
10320
+ React25.useEffect(() => {
9953
10321
  if (!isPreventing || typeof window === "undefined") {
9954
10322
  return;
9955
10323
  }
@@ -9967,11 +10335,76 @@ var PreventPageLeave = ({ children }) => {
9967
10335
  var PreventPageLeave_default = PreventPageLeave;
9968
10336
  var usePreventPageLeave = ({ isPrevening }) => {
9969
10337
  const setPreventing = usePreventPageLeaveStore_default((state) => state.setPreventing);
9970
- React26.useEffect(() => {
10338
+ React25.useEffect(() => {
9971
10339
  setPreventing(isPrevening);
9972
10340
  }, [isPrevening, setPreventing]);
9973
10341
  };
9974
10342
  var usePreventPageLeave_default = usePreventPageLeave;
10343
+ var DefaultHeader = ({
10344
+ title,
10345
+ subtitle,
10346
+ icon,
10347
+ classNames,
10348
+ rightActions
10349
+ }) => /* @__PURE__ */ jsxRuntime.jsxs("div", { className: cn("flex items-start justify-between gap-3", classNames?.header), children: [
10350
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-center gap-3", children: [
10351
+ icon ? /* @__PURE__ */ jsxRuntime.jsx(
10352
+ "div",
10353
+ {
10354
+ className: cn(
10355
+ "w-10 h-10 rounded-full bg-sus-green-50 flex items-center justify-center",
10356
+ classNames?.iconWrapper
10357
+ ),
10358
+ children: icon
10359
+ }
10360
+ ) : null,
10361
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-col", children: [
10362
+ subtitle ? /* @__PURE__ */ jsxRuntime.jsx("span", { className: cn("text-xs text-gray-500", classNames?.subtitle), children: subtitle }) : null,
10363
+ title ? /* @__PURE__ */ jsxRuntime.jsx("span", { className: cn("text-lg font-semibold text-sus-green-1", classNames?.title), children: title }) : null
10364
+ ] })
10365
+ ] }),
10366
+ rightActions ? /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex items-center gap-2", children: rightActions }) : null
10367
+ ] });
10368
+ var RightPanelContainer = ({
10369
+ title,
10370
+ subtitle,
10371
+ icon,
10372
+ rightActions,
10373
+ children,
10374
+ isExpanded = false,
10375
+ className,
10376
+ classNames,
10377
+ slots,
10378
+ renderHeader
10379
+ }) => {
10380
+ const Container = slots?.Container ?? container_default;
10381
+ const Header2 = slots?.Header ?? DefaultHeader;
10382
+ return /* @__PURE__ */ jsxRuntime.jsx(
10383
+ Container,
10384
+ {
10385
+ isLeftExpanded: isExpanded,
10386
+ className: cn(
10387
+ "flex flex-col bg-white border border-slate-300 min-w-full",
10388
+ className,
10389
+ classNames?.root
10390
+ ),
10391
+ children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: cn("flex-1 flex min-h-0 px-4 py-6 justify-center", classNames?.body), children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: cn("w-full max-w-3xl overflow-auto", classNames?.content), children: [
10392
+ renderHeader ? renderHeader({ title, subtitle, icon, rightActions, classNames }) : Header2 ? /* @__PURE__ */ jsxRuntime.jsx(
10393
+ Header2,
10394
+ {
10395
+ title,
10396
+ subtitle,
10397
+ icon,
10398
+ rightActions,
10399
+ classNames
10400
+ }
10401
+ ) : null,
10402
+ children
10403
+ ] }) })
10404
+ }
10405
+ );
10406
+ };
10407
+ var RightPanelContainer_default = RightPanelContainer;
9975
10408
 
9976
10409
  // src/components/cropperModal/type.ts
9977
10410
  var CropperModalError = class extends Error {
@@ -10108,20 +10541,20 @@ var CropperModal = ({
10108
10541
  title,
10109
10542
  props
10110
10543
  }) => {
10111
- const [isLoading, setIsLoading] = React26.useState(false);
10112
- const [crop, setCrop] = React26.useState({ x: 0, y: 0 });
10113
- const [zoom, setZoom] = React26.useState();
10114
- const [croppedAreaPixels, setCroppedAreaPixels] = React26.useState(null);
10115
- const handleClose = React26.useCallback(() => {
10544
+ const [isLoading, setIsLoading] = React25.useState(false);
10545
+ const [crop, setCrop] = React25.useState({ x: 0, y: 0 });
10546
+ const [zoom, setZoom] = React25.useState();
10547
+ const [croppedAreaPixels, setCroppedAreaPixels] = React25.useState(null);
10548
+ const handleClose = React25.useCallback(() => {
10116
10549
  onOpenChange(false);
10117
10550
  }, [onOpenChange]);
10118
- const handleCancel = React26.useCallback(() => {
10551
+ const handleCancel = React25.useCallback(() => {
10119
10552
  if (onCancel) {
10120
10553
  onCancel();
10121
10554
  }
10122
10555
  handleClose();
10123
10556
  }, [handleClose, onCancel]);
10124
- const handleCropComplete = React26.useCallback((_, croppedAreaPixels2) => {
10557
+ const handleCropComplete = React25.useCallback((_, croppedAreaPixels2) => {
10125
10558
  setCroppedAreaPixels(croppedAreaPixels2);
10126
10559
  }, []);
10127
10560
  const handleConfirm = async () => {
@@ -10229,7 +10662,7 @@ function isFragment(object) {
10229
10662
  var isValidText = (val) => ["string", "number"].includes(typeof val);
10230
10663
  function toArray(children, option = {}) {
10231
10664
  let ret = [];
10232
- React26__namespace.Children.forEach(children, (child) => {
10665
+ React25__namespace.Children.forEach(children, (child) => {
10233
10666
  if ((child === void 0 || child === null) && !option.keepEmpty) {
10234
10667
  return;
10235
10668
  }
@@ -10243,9 +10676,9 @@ function toArray(children, option = {}) {
10243
10676
  });
10244
10677
  return ret;
10245
10678
  }
10246
- var MeasureText = React26__namespace.forwardRef(({ style, children }, ref) => {
10247
- const spanRef = React26__namespace.useRef(null);
10248
- React26__namespace.useImperativeHandle(ref, () => ({
10679
+ var MeasureText = React25__namespace.forwardRef(({ style, children }, ref) => {
10680
+ const spanRef = React25__namespace.useRef(null);
10681
+ React25__namespace.useImperativeHandle(ref, () => ({
10249
10682
  isExceed: () => {
10250
10683
  const span = spanRef.current;
10251
10684
  return span.scrollHeight > span.clientHeight;
@@ -10303,19 +10736,19 @@ var lineClipStyle = {
10303
10736
  };
10304
10737
  function EllipsisMeasure(props) {
10305
10738
  const { enableMeasure, width, text, children, rows, expanded, miscDeps, onEllipsis } = props;
10306
- const nodeList = React26__namespace.useMemo(() => toArray(text), [text]);
10307
- const nodeLen = React26__namespace.useMemo(() => getNodesLen(nodeList), [text]);
10308
- const fullContent = React26__namespace.useMemo(() => children(nodeList, false), [text]);
10309
- const [ellipsisCutIndex, setEllipsisCutIndex] = React26__namespace.useState(null);
10310
- const cutMidRef = React26__namespace.useRef(null);
10311
- const measureWhiteSpaceRef = React26__namespace.useRef(null);
10312
- const needEllipsisRef = React26__namespace.useRef(null);
10313
- const descRowsEllipsisRef = React26__namespace.useRef(null);
10314
- const symbolRowEllipsisRef = React26__namespace.useRef(null);
10315
- const [canEllipsis, setCanEllipsis] = React26__namespace.useState(false);
10316
- const [needEllipsis, setNeedEllipsis] = React26__namespace.useState(STATUS_MEASURE_NONE);
10317
- const [ellipsisHeight, setEllipsisHeight] = React26__namespace.useState(0);
10318
- const [parentWhiteSpace, setParentWhiteSpace] = React26__namespace.useState(null);
10739
+ const nodeList = React25__namespace.useMemo(() => toArray(text), [text]);
10740
+ const nodeLen = React25__namespace.useMemo(() => getNodesLen(nodeList), [text]);
10741
+ const fullContent = React25__namespace.useMemo(() => children(nodeList, false), [text]);
10742
+ const [ellipsisCutIndex, setEllipsisCutIndex] = React25__namespace.useState(null);
10743
+ const cutMidRef = React25__namespace.useRef(null);
10744
+ const measureWhiteSpaceRef = React25__namespace.useRef(null);
10745
+ const needEllipsisRef = React25__namespace.useRef(null);
10746
+ const descRowsEllipsisRef = React25__namespace.useRef(null);
10747
+ const symbolRowEllipsisRef = React25__namespace.useRef(null);
10748
+ const [canEllipsis, setCanEllipsis] = React25__namespace.useState(false);
10749
+ const [needEllipsis, setNeedEllipsis] = React25__namespace.useState(STATUS_MEASURE_NONE);
10750
+ const [ellipsisHeight, setEllipsisHeight] = React25__namespace.useState(0);
10751
+ const [parentWhiteSpace, setParentWhiteSpace] = React25__namespace.useState(null);
10319
10752
  useIsomorphicLayoutEffect(() => {
10320
10753
  if (enableMeasure && width && nodeLen) {
10321
10754
  setNeedEllipsis(STATUS_MEASURE_PREPARE);
@@ -10358,7 +10791,7 @@ function EllipsisMeasure(props) {
10358
10791
  setEllipsisCutIndex(isOverflow ? [minIndex, targetMidIndex] : [targetMidIndex, maxIndex]);
10359
10792
  }
10360
10793
  }, [ellipsisCutIndex, cutMidIndex]);
10361
- const finalContent = React26__namespace.useMemo(() => {
10794
+ const finalContent = React25__namespace.useMemo(() => {
10362
10795
  if (!enableMeasure) {
10363
10796
  return children(nodeList, false);
10364
10797
  }
@@ -10449,10 +10882,10 @@ var Truncated = ({
10449
10882
  tooltipProps,
10450
10883
  tooltipContentProps
10451
10884
  }) => {
10452
- const elementRef = React26__namespace.useRef(null);
10453
- const [open, setOpen] = React26__namespace.useState(false);
10454
- const [isTruncated, setIsTruncated] = React26__namespace.useState(false);
10455
- const [measureWidth, setMeasureWidth] = React26__namespace.useState(0);
10885
+ const elementRef = React25__namespace.useRef(null);
10886
+ const [open, setOpen] = React25__namespace.useState(false);
10887
+ const [isTruncated, setIsTruncated] = React25__namespace.useState(false);
10888
+ const [measureWidth, setMeasureWidth] = React25__namespace.useState(0);
10456
10889
  const Comp = as;
10457
10890
  const normalizedChildren = typeof children === "string" ? children.replace(/>/g, ">\u200B") : children;
10458
10891
  const lineClampLines = typeof ellipsis === "number" ? ellipsis : typeof ellipsis === "object" ? ellipsis?.lineClamp ?? 3 : null;
@@ -10477,13 +10910,13 @@ var Truncated = ({
10477
10910
  setIsTruncated(false);
10478
10911
  }
10479
10912
  }, [enableMeasure]);
10480
- const truncationClass = React26__namespace.useMemo(() => {
10913
+ const truncationClass = React25__namespace.useMemo(() => {
10481
10914
  if (!ellipsis) return "";
10482
10915
  if (typeof ellipsis === "number") return `line-clamp-${ellipsis}`;
10483
10916
  if (typeof ellipsis === "object") return `line-clamp-${lineClampLines ?? 3}`;
10484
10917
  return "truncate";
10485
10918
  }, [ellipsis, lineClampLines]);
10486
- const clampedStyle = React26__namespace.useMemo(() => {
10919
+ const clampedStyle = React25__namespace.useMemo(() => {
10487
10920
  if (!lineClampLines) return style;
10488
10921
  return {
10489
10922
  ...style,
@@ -10545,7 +10978,7 @@ var Truncated = ({
10545
10978
  );
10546
10979
  };
10547
10980
  var truncated_default = Truncated;
10548
- var InputPrimitive2 = React26__namespace.forwardRef(
10981
+ var InputPrimitive2 = React25__namespace.forwardRef(
10549
10982
  ({ className, type = "text", ...props }, ref) => {
10550
10983
  return /* @__PURE__ */ jsxRuntime.jsx(
10551
10984
  "input",
@@ -10584,7 +11017,7 @@ var inputVariants2 = classVarianceAuthority.cva("", {
10584
11017
  appearance: "filled"
10585
11018
  }
10586
11019
  });
10587
- var Input2 = React26__namespace.forwardRef(
11020
+ var Input2 = React25__namespace.forwardRef(
10588
11021
  ({
10589
11022
  className,
10590
11023
  wrapperClassName,
@@ -10617,8 +11050,8 @@ var Input2 = React26__namespace.forwardRef(
10617
11050
  onChange: onChangeProp
10618
11051
  } = rest;
10619
11052
  const ariaInvalid = invalid ?? ariaInvalidProp;
10620
- const messageId = React26__namespace.useId();
10621
- const handleChange = React26__namespace.useCallback(
11053
+ const messageId = React25__namespace.useId();
11054
+ const handleChange = React25__namespace.useCallback(
10622
11055
  (event) => {
10623
11056
  onChangeProp?.(event);
10624
11057
  onValueChange?.(event.target.value);
@@ -10746,8 +11179,8 @@ var ActionMenu = ({
10746
11179
  actionButtonClassName,
10747
11180
  separatorClassName
10748
11181
  }) => {
10749
- const [open, setOpen] = React26.useState(false);
10750
- const isAllowed = React26.useCallback(
11182
+ const [open, setOpen] = React25.useState(false);
11183
+ const isAllowed = React25.useCallback(
10751
11184
  (requiredPermission) => {
10752
11185
  if (!checkPermissionFunc || requiredPermission === void 0) {
10753
11186
  return true;
@@ -10756,7 +11189,7 @@ var ActionMenu = ({
10756
11189
  },
10757
11190
  [checkPermissionFunc]
10758
11191
  );
10759
- const filteredButtons = React26.useMemo(() => {
11192
+ const filteredButtons = React25.useMemo(() => {
10760
11193
  return buttons.filter((btn) => isAllowed(btn.requiredPermission));
10761
11194
  }, [buttons, isAllowed]);
10762
11195
  if (buttons.length === 0) {
@@ -11011,13 +11444,13 @@ var useFieldNames = ({
11011
11444
  fieldNames
11012
11445
  }) => {
11013
11446
  const { label: labelFieldKey = "label", value: valueFieldKey = "value" } = fieldNames || {};
11014
- const getLabelField = React26__namespace.default.useCallback(
11447
+ const getLabelField = React25__namespace.default.useCallback(
11015
11448
  (option) => {
11016
11449
  return option?.[labelFieldKey];
11017
11450
  },
11018
11451
  [labelFieldKey]
11019
11452
  );
11020
- const getValueField = React26__namespace.default.useCallback(
11453
+ const getValueField = React25__namespace.default.useCallback(
11021
11454
  (option) => {
11022
11455
  return option?.[valueFieldKey];
11023
11456
  },
@@ -11049,11 +11482,11 @@ var VirtualizedCommand = ({
11049
11482
  onFocus
11050
11483
  }) => {
11051
11484
  const { getLabelField, getValueField } = useFieldNames_default({ fieldNames });
11052
- const internalOptions = React26__namespace.useMemo(() => options ?? [], [options]);
11053
- const [filteredOptions, setFilteredOptions] = React26__namespace.useState(internalOptions);
11054
- const [focusedIndex, setFocusedIndex] = React26__namespace.useState(0);
11055
- const [isKeyboardNavActive, setIsKeyboardNavActive] = React26__namespace.useState(false);
11056
- const parentRef = React26__namespace.useRef(null);
11485
+ const internalOptions = React25__namespace.useMemo(() => options ?? [], [options]);
11486
+ const [filteredOptions, setFilteredOptions] = React25__namespace.useState(internalOptions);
11487
+ const [focusedIndex, setFocusedIndex] = React25__namespace.useState(0);
11488
+ const [isKeyboardNavActive, setIsKeyboardNavActive] = React25__namespace.useState(false);
11489
+ const parentRef = React25__namespace.useRef(null);
11057
11490
  const virtualizer = reactVirtual.useVirtualizer({
11058
11491
  count: filteredOptions.length,
11059
11492
  getScrollElement: () => parentRef.current,
@@ -11061,14 +11494,14 @@ var VirtualizedCommand = ({
11061
11494
  overscan: 2
11062
11495
  });
11063
11496
  const virtualOptions = virtualizer.getVirtualItems();
11064
- const dynamicHeight = React26__namespace.useMemo(() => {
11497
+ const dynamicHeight = React25__namespace.useMemo(() => {
11065
11498
  const contentHeight = filteredOptions.length * ROW_HEIGHT;
11066
11499
  if (contentHeight <= 0) {
11067
11500
  return MIN_HEIGHT_EMPTY;
11068
11501
  }
11069
11502
  return Math.max(ROW_HEIGHT, Math.min(height, contentHeight));
11070
11503
  }, [filteredOptions.length, height]);
11071
- const scrollToIndex = React26__namespace.useCallback(
11504
+ const scrollToIndex = React25__namespace.useCallback(
11072
11505
  (index) => {
11073
11506
  virtualizer.scrollToIndex(index, {
11074
11507
  align: "center"
@@ -11076,7 +11509,7 @@ var VirtualizedCommand = ({
11076
11509
  },
11077
11510
  [virtualizer]
11078
11511
  );
11079
- const handleSearch = React26__namespace.useCallback(
11512
+ const handleSearch = React25__namespace.useCallback(
11080
11513
  (search) => {
11081
11514
  setIsKeyboardNavActive(false);
11082
11515
  setFilteredOptions(
@@ -11091,7 +11524,7 @@ var VirtualizedCommand = ({
11091
11524
  },
11092
11525
  [filterOption, getLabelField, internalOptions]
11093
11526
  );
11094
- const handleKeyDown = React26__namespace.useCallback(
11527
+ const handleKeyDown = React25__namespace.useCallback(
11095
11528
  (event) => {
11096
11529
  switch (event.key) {
11097
11530
  case "ArrowDown": {
@@ -11126,7 +11559,7 @@ var VirtualizedCommand = ({
11126
11559
  },
11127
11560
  [filteredOptions, focusedIndex, getValueField, onSelect, scrollToIndex]
11128
11561
  );
11129
- React26__namespace.useEffect(() => {
11562
+ React25__namespace.useEffect(() => {
11130
11563
  if (value) {
11131
11564
  const option = filteredOptions.find((option2) => {
11132
11565
  const optionValue = getValueField(option2);
@@ -11238,40 +11671,71 @@ var ComboboxInner = ({
11238
11671
  notFoundContent,
11239
11672
  searchPlaceholder,
11240
11673
  showSearch,
11674
+ open,
11675
+ showValueWhenNoMatch,
11676
+ onOpenChange,
11677
+ onClear,
11241
11678
  ...props
11242
11679
  }, ref) => {
11243
11680
  const { getLabelField, getValueField } = useFieldNames_default({ fieldNames });
11244
- const [open, setOpen] = React26__namespace.useState(false);
11245
- const { value: selectedValue, updateState: setSelectedValue } = useControllableState_default({
11681
+ const { value: openPopover, setValue: setOpenPopover } = useControllableState_default({
11682
+ defaultValue: false,
11683
+ value: open
11684
+ });
11685
+ const { value: selectedValue, setValue: setSelectedValue } = useControllableState_default({
11246
11686
  defaultValue,
11247
11687
  value
11248
11688
  });
11249
- const renderValue = React26__namespace.useMemo(() => {
11250
- if (!selectedValue) return placeholder2;
11251
- const selectedOptionFound = options?.find((option) => {
11689
+ const currentSelectedOption = React25__namespace.useMemo(() => {
11690
+ return options?.find((option) => {
11252
11691
  const optionValue = getValueField(option);
11253
11692
  return optionValue === selectedValue;
11254
11693
  });
11255
- return selectedOptionFound ? getLabelField(selectedOptionFound) : null;
11256
- }, [getLabelField, getValueField, options, placeholder2, selectedValue]);
11257
- const handleSelect = React26__namespace.useCallback(
11694
+ }, [getValueField, options, selectedValue]);
11695
+ const renderValue = React25__namespace.useMemo(() => {
11696
+ if (!selectedValue) return placeholder2;
11697
+ if (currentSelectedOption) {
11698
+ return getLabelField(currentSelectedOption);
11699
+ }
11700
+ if (showValueWhenNoMatch) {
11701
+ return selectedValue;
11702
+ }
11703
+ return null;
11704
+ }, [currentSelectedOption, getLabelField, placeholder2, selectedValue, showValueWhenNoMatch]);
11705
+ const handleSelect = React25__namespace.useCallback(
11258
11706
  (selected, option) => {
11259
11707
  setSelectedValue(selected);
11260
- setOpen(false);
11708
+ setOpenPopover(false);
11261
11709
  if (typeof onSelect === "function") {
11262
11710
  onSelect(selected, option);
11263
11711
  }
11712
+ if (typeof onOpenChange === "function") {
11713
+ onOpenChange(false);
11714
+ }
11264
11715
  },
11265
- [onSelect, setSelectedValue]
11716
+ [onOpenChange, onSelect, setOpenPopover, setSelectedValue]
11266
11717
  );
11267
- const handleClear = React26__namespace.useCallback(
11718
+ const handleOpenPopover = React25__namespace.useCallback(
11719
+ (isOpen) => {
11720
+ if (disabled) return;
11721
+ setOpenPopover(isOpen);
11722
+ if (typeof onOpenChange === "function") {
11723
+ onOpenChange(isOpen);
11724
+ }
11725
+ },
11726
+ [disabled, onOpenChange, setOpenPopover]
11727
+ );
11728
+ const handleClear = React25__namespace.useCallback(
11268
11729
  (event) => {
11269
11730
  event.stopPropagation();
11270
11731
  setSelectedValue(void 0);
11732
+ if (typeof onClear === "function") {
11733
+ onClear(selectedValue, currentSelectedOption);
11734
+ }
11271
11735
  },
11272
- [setSelectedValue]
11736
+ [currentSelectedOption, onClear, selectedValue, setSelectedValue]
11273
11737
  );
11274
- return /* @__PURE__ */ jsxRuntime.jsxs(Popover, { open, onOpenChange: (next) => !disabled && setOpen(next), children: [
11738
+ return /* @__PURE__ */ jsxRuntime.jsxs(Popover, { open: openPopover, onOpenChange: handleOpenPopover, children: [
11275
11739
  /* @__PURE__ */ jsxRuntime.jsx(PopoverTrigger, { asChild: true, children: /* @__PURE__ */ jsxRuntime.jsxs(
11276
11740
  "button",
11277
11741
  {
@@ -11279,7 +11743,7 @@ var ComboboxInner = ({
11279
11743
  name,
11280
11744
  type: "button",
11281
11745
  role: "combobox",
11282
- "aria-expanded": open,
11746
+ "aria-expanded": openPopover,
11283
11747
  className: cn(
11284
11748
  "flex items-center justify-between gap-2 rounded-md border bg-white px-3 h-9 text-sm whitespace-nowrap shadow-xs outline-none border-input",
11285
11749
  "disabled:cursor-not-allowed disabled:opacity-50",
@@ -11289,7 +11753,7 @@ var ComboboxInner = ({
11289
11753
  "transition-all",
11290
11754
  className
11291
11755
  ),
11292
- "data-state": open ? "open" : "closed",
11756
+ "data-state": openPopover ? "open" : "closed",
11293
11757
  disabled,
11294
11758
  onFocus,
11295
11759
  onBlur,
@@ -11350,7 +11814,7 @@ var ComboboxInner = ({
11350
11814
  )
11351
11815
  ] });
11352
11816
  };
11353
- var Combobox = React26__namespace.forwardRef(ComboboxInner);
11817
+ var Combobox = React25__namespace.forwardRef(ComboboxInner);
11354
11818
  var Combobox_default = Combobox;
11355
11819
  var TruncatedMouseEnterDiv = ({
11356
11820
  value,
@@ -11359,8 +11823,8 @@ var TruncatedMouseEnterDiv = ({
11359
11823
  tooltipContentProps,
11360
11824
  arrowClassName
11361
11825
  }) => {
11362
- const textRef = React26.useRef(null);
11363
- const [isTruncated, setIsTruncated] = React26.useState(false);
11826
+ const textRef = React25.useRef(null);
11827
+ const [isTruncated, setIsTruncated] = React25.useState(false);
11364
11828
  const checkTruncation = () => {
11365
11829
  if (textRef.current) {
11366
11830
  const { scrollWidth, clientWidth } = textRef.current;
@@ -11437,10 +11901,12 @@ exports.CommandSeparator = CommandSeparator;
11437
11901
  exports.CommandShortcut = CommandShortcut;
11438
11902
  exports.CropperModal = CropperModal;
11439
11903
  exports.CropperModalError = CropperModalError;
11904
+ exports.CustomFieldIcon = custom_field_default;
11440
11905
  exports.DIALOG_ALERT_I18N_SUBNAMESPACE = DIALOG_ALERT_I18N_SUBNAMESPACE;
11441
11906
  exports.DIALOG_ALERT_TEMPLATES = DIALOG_ALERT_TEMPLATES;
11442
11907
  exports.DataTable = DataTable_default;
11443
11908
  exports.DatePicker = DatePicker2;
11909
+ exports.DecreaseIcon = decrease_default;
11444
11910
  exports.Dialog = Dialog;
11445
11911
  exports.DialogAlert = DialogAlert;
11446
11912
  exports.DialogAlertProvider = DialogAlertProvider;
@@ -11466,17 +11932,16 @@ exports.FormulaEditor = FormulaEditor;
11466
11932
  exports.GridSettingsModal = GridSettingsModal_default;
11467
11933
  exports.HeaderCell = HeaderCell_default;
11468
11934
  exports.Image = Image2;
11935
+ exports.InformationIcon = information_default;
11469
11936
  exports.Input = Input;
11470
11937
  exports.InputNumber = InputNumber_default;
11471
11938
  exports.Label = Label2;
11472
- exports.List = List_default;
11473
- exports.ListContainer = container_default;
11474
- exports.ListHeader = header_default;
11475
- exports.ListTable = table_default;
11476
11939
  exports.LookupSelect = LookupSelect;
11940
+ exports.MainListContainer = MainListContainer_default;
11477
11941
  exports.MonthPicker = MonthPicker2;
11478
11942
  exports.Navbar = navbar_default;
11479
11943
  exports.NotFoundIcon = not_found_default;
11944
+ exports.PlusIcon = plus_default;
11480
11945
  exports.Popover = Popover;
11481
11946
  exports.PopoverAnchor = PopoverAnchor;
11482
11947
  exports.PopoverArrow = PopoverArrow;
@@ -11487,6 +11952,8 @@ exports.RadioGroupItem = RadioGroupItem;
11487
11952
  exports.RadioGroupRoot = RadioGroupRoot;
11488
11953
  exports.RadioLabel = RadioLabel;
11489
11954
  exports.RichText = RichText;
11955
+ exports.RightPanelContainer = RightPanelContainer_default;
11956
+ exports.RoleIcon = role_default;
11490
11957
  exports.Select = Select;
11491
11958
  exports.SelectContent = SelectContent;
11492
11959
  exports.SelectGroup = SelectGroup;
@@ -11553,6 +12020,9 @@ exports.TrashIcon = trash_default;
11553
12020
  exports.Truncated = truncated_default;
11554
12021
  exports.TruncatedMouseEnterDiv = truncatedMouseEnterDiv_default;
11555
12022
  exports.UI = ui_exports;
12023
+ exports.UserAloneIcon = user_alone_default;
12024
+ exports.UserFriendIcon = user_friend_default;
12025
+ exports.UserIcon = user_default;
11556
12026
  exports.VirtualizedCommand = VirtualizedCommand_default;
11557
12027
  exports.booleanToSelectValue = booleanToSelectValue;
11558
12028
  exports.buildPrefixMap = buildPrefixMap;