@algorithm-shift/design-system 1.2.76 → 1.2.78

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
@@ -59,6 +59,7 @@ __export(src_exports, {
59
59
  Phone: () => PhoneInput_default,
60
60
  PieChart: () => PieChart_default,
61
61
  RadioGroup: () => RadioInput_default,
62
+ Repeater: () => Repeater_default,
62
63
  RichText: () => RichText,
63
64
  Search: () => SearchInput_default,
64
65
  Shape: () => Shape_default,
@@ -313,10 +314,33 @@ function TabGroupComponent({
313
314
  ] });
314
315
  }
315
316
 
317
+ // src/components/Layout/Repeater.tsx
318
+ var import_react4 = __toESM(require("react"));
319
+ var import_jsx_runtime10 = require("react/jsx-runtime");
320
+ function Repeater({
321
+ items = [],
322
+ count,
323
+ render,
324
+ emptyFallback = null,
325
+ wrapper,
326
+ className
327
+ }) {
328
+ const list = import_react4.default.useMemo(
329
+ () => typeof count === "number" ? items.slice(0, count) : items,
330
+ [items, count]
331
+ );
332
+ if (!list.length) {
333
+ return emptyFallback ? /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(import_jsx_runtime10.Fragment, { children: emptyFallback }) : null;
334
+ }
335
+ const content = list.map((item, i) => /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(import_react4.default.Fragment, { children: render(item, i, list) }, i));
336
+ return wrapper ? /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(import_jsx_runtime10.Fragment, { children: wrapper(content) }) : /* @__PURE__ */ (0, import_jsx_runtime10.jsx)("div", { className, children: content });
337
+ }
338
+ var Repeater_default = import_react4.default.memo(Repeater);
339
+
316
340
  // src/components/ui/button.tsx
317
341
  var import_react_slot = require("@radix-ui/react-slot");
318
342
  var import_class_variance_authority = require("class-variance-authority");
319
- var import_jsx_runtime10 = require("react/jsx-runtime");
343
+ var import_jsx_runtime11 = require("react/jsx-runtime");
320
344
  var buttonVariants = (0, import_class_variance_authority.cva)(
321
345
  "inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium transition-all disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 shrink-0 [&_svg]:shrink-0 outline-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive",
322
346
  {
@@ -350,7 +374,7 @@ function Button({
350
374
  ...props
351
375
  }) {
352
376
  const Comp = asChild ? import_react_slot.Slot : "button";
353
- return /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(
377
+ return /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
354
378
  Comp,
355
379
  {
356
380
  "data-slot": "button",
@@ -361,7 +385,7 @@ function Button({
361
385
  }
362
386
 
363
387
  // src/components/Basic/Button/Button.tsx
364
- var import_jsx_runtime11 = require("react/jsx-runtime");
388
+ var import_jsx_runtime12 = require("react/jsx-runtime");
365
389
  var ButtonWrapper = ({
366
390
  className,
367
391
  style,
@@ -370,7 +394,7 @@ var ButtonWrapper = ({
370
394
  loading = false,
371
395
  ...props
372
396
  }) => {
373
- return /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
397
+ return /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(
374
398
  Button,
375
399
  {
376
400
  ...props,
@@ -387,7 +411,7 @@ var Button_default = ButtonWrapper;
387
411
  var image_placeholder_default = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAMgAAADICAYAAACtWK6eAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEwAACxMBAJqcGAAAD25JREFUeJzt3XfwHGUdx/H3LyEJoQihJVITIEEQBUQHIQEBQaRMwApIyS8UQQREBQUZRaUXUQwwYoShSlWqQ5ci1ZE2YkIgEBIggNQEQgKk+Mf3t/7utt2ze7u35T6vmZ1M7vae57m7/fxu99nd5wERERERERERERERERERERERERERERERERERERERERERERERERERERERERGR7tJTdANiDAIOBDag3O2sm/eBS4Dnim6IxLsAWKKlkOVtYETrr6j+BhTdgBhfL7oBXWwYsH3RjSiDMgdkUNEN6HKDi25AGSxVdAMSeA14q+hG1FQPsFHRjZBk3qV5v/joYptTa0sTPA7pLbJBZVHmXSyRwikgIjEUEJEYCohIDAVEJIYCIhJDARGJoYCIxFBARGIoICIxqnQtVtYGAbsCewCfB9bELtB7G/gPcBdwBTC7qAaKxMnrWqweYC/gRVrfF/ERcB52+Xed6VqsCN22i7U0cBlwJbCOw/qDgMOAp4DP5dguKaluCshg4AZgnxSvXQu4F9sVky7STccgZwE7hTw+D7gFeBKYD4wEdgHG+NZbHrgR2AR4M7dWijjK8hhkLOHHGH8g/PiiB/g2FgT/ay5uox1lpWOQCsoyIHcS3AB+6vC6McB/fa9bDKzfRlvKSAGJkGQXa1ngCGwXJMp04FxggWOZawDfB1YKeW5ogrbFGQns4HvsZuAMh9c+C0zEdsE8PX2PHZ9F40psAvBF32PvAX/EfUigTwBHYl3oacwHLgSedlx/GWwbHRWzzgxgEvBByjZFuh63IWMudyxvCPCCY5nt/IJ8N6SszRK8vgd41Pf6f6VsS1mF/YJELW/g3u0d9suddJkLrO5Y37WOZV7nWF4iixwrn+tY3uaO5bUbkEm+cmalKON4XxkfUq8ewCQBWQLs7FDm0IRlxi3fcXwfCxzLW+hYXqIv2XXdxxzXm457mNqxaki9Sfl3KQYDK6RrTmLjgduws/ojO1RnnI9w2+VZAEzNoL7FWA+ji8cd1xvoWnk73byzsJ/bRtOAnzi+fg72l+gXwCohz29KgjeSQJr3HPaaRe02xMEE4CL6/zhtA2xHupAn9SLBYZbmAGcCLzm8fgmwO3Aabidlw8wDzgGmOK6/F3Zs6e9EWQ07l5Ur/8/UQTnXl1Uv1tm+ct4k+e7Rqb4y3if/8YInEL5b+xLZ96LVvRfrUILvz0md9qOj+H92VybYqxVnIPCtkDKdP+QU/L8cjdYE7qF+Xc2l1A0BuZ3gQdlpuA+teRiwnu+xm9ttVIxeosPhUUg6pBsC8gbW/ddoM2wjbHU8sjN2iUqjBcCl2TQtoBfr9/d/L09hu3WNFJKS+YDmfbi9c64vyzPpY7CuWf9+6MPAFgSPJ1YGTif8GOCkNtoRpzeivkewHrNx2Ik6//Mv035I6n4MMoHm9zYvj0pOb6hgOnaWNE9Z3w9yFMGNwFueBa7BJo65H+vKDFvvcWxjylov8eHw5BWSugdkGM33/5ySRyU92JwRe5N/OCD7gPRgXYZpT1Y9T/pLJuJMxC0cnjxCUveAAKyInXDclprMWJbHHYU9wDHAxyQLx73A8Azq90saDk/WIemGgNROntMffAa7ALFVMGZi53vy6MxIGw5PliFRQCqoE/ODrAv8ALvA8j7gIeAm7MTgl8nnTD60Hw5PViFRQCqorhPoHEA24fCMJTokox3LUEAqqI4BOQC7+C6rcHjaDYkCUkF1C0he4fC0ExIFpILqFJC8w+FJGxIFpILqEpBOhcOTJiQKSAXVISCdDodnLHYzmr/eVwgPiQKSgR7sJv7x2M3xeat6QIoKhydJSLohIMth4zBvkVcFv6b/w5vaV2GeqhyQAyk2HB7XkNQ9ICtgt0177+2EPCqZR/MHuFcelTTIKyDLYVd37o37PSFJlCUcHpeQ1D0g+9P83vy3DmTC/wFW5ZbbRsOxAQe8Mu8n21/CsoXD0yokdQ+Ibrl1MBz4O/Dphse2Bm4lm5AcCEwmeKXoo9iYwHMyqCOtB7Gbv97zPb46diGm6xn3rtMtAfHCsVHIc+NoPyQHUd5weB4Evkp4SO7qfHOqoRsCEhcOzzhs7Kk0ITkIG46zzOHwPER4SFYroC2VUPeADMfu2/aHYyHB/dCxJA9JlcLhiQqJhKhzQLxwbOh7/GNsGJ9DiA7J8g7lVzEcHoUkB1XqxRqOjcbnb/NH2Mkiz8GE9zo9QHxIol5XdG9VUlsR3rulXqwUqhIQ13B4ojb2BwkPSV3C4YkKSW+BbcqaAtInaTg8riGpWzg841BA2lb2gIwgXTg8rUJS13CAThRGqsskniOwrtyoA/IbHcqY3PfvBTQfeG+FTemwPuU4IF+nb/kn7jN5SUp16MXKIhyeyYT3bo2mHOGYiI3PdR82d+Kl2Iy8gzrYBolQxl2suN2q3duoO2p3qsjdqoFE9zi9iXU5b0e6P3raxcpA2QIyArvsPutweMp2zLEUwfGRw5bZ2AiSWyYoWwHJgH9jOSCPShrEBSTvcHj8ISn6gPw6WgekcZmBTfWwaYty6x4Qb7fZWxbnUcndNG+IeV8BGhWQuHCMz6EduwJ/Bk7G7Qx7nr5JsoA0LlOwG4XGhJRb94BsRP/lRUuAO/KoZBVsOrMrsLny8hYWkE6Ho2yGEjwOeR6bJCjJeMNPYHNJrt1Xbt0DAjar2DXA77DpLSrPH5Cz6O5weC6n+f2/j40RsCrwPayHy3XK7sXYdVk/Dnmut0PvR1LyByTsgLnbwgGwG8HPYU/fOmsAP8S6otPukvXm+zakXf6A+JcP6b5wgJ3zeJvmz+L6mPVHAcdh07glCchDwH4Uf9wlEeIC0q3h8PyJ5s9jAW6TGm0I/Ap4BvegzAf+gp10HZrlm5D2RAWk28MBsCPBz2VCwjI2w6bVezGkrKjlPayTZjd09r5wYQFROMxA4HWaP5tb2yhvS+zk4mzcw/I29ku2A/nNoyIx/AFROJqdR/Pn8zHtd18OwC5XuQC7fMU1LK8B52KXzddi/r8q8AfkV8U2p3S2JrihHpJh+UthQwVdgl2Q6RqWWcCZwOYZtkVCVHno0U7oAV6i+TO6J6e6hgBfA64mOMJm3PIscCLBK61rawD5DNcZRgFp7Tc0f0aLsHGu8rQsNmzrjdhur0tQFgNH5NwuF0PI8RaPnbB7EBZi+5t572sqIK19geDGeFQH618Ru0fF5VKXVzvYLr8B2O0Ai7DOjR3zqMT/c55LJQ0UEDfTaf6cHimgDSsCk4gPyLQC2uXxX30w0/WFSX5u1vT9f50Er5X8XO37/xbAyA7VvQp2lfNM4PCY9d6h2F0s/7a7duhaIap0T/qewMZFN6KE1gh5bC/sPpC8jMB+0Q/FjkmivAH8FuuSnptje0rB/5PZ6TsKtbgvT6b4vF2shR1/zm9R/yvYxZKdmInMRS1HNcnlrq8usQnWtTo1o/K8Cx4nEN+LORM4A7gQ6+GqvDKPavJQ0Q2ouKxmANsXO59xMNHhmI7NjzIaOJ+ahAPK/QvSC5yC/SXU5QutbYAdNHv2JJu5+H5J9HYyBfuOrsK6ULtap49BJJmjCX5Hm2VQbuOUdY3LEVTnD5emYBOuJvjF751BuUdjd276HY71Zkkf/YKU3wM0f0cvks1f+fGEX1YyDfhkBuXnTb8gAtixQKN1SDaAXJSbsDsK/b8kY7BJQKsQklQUkHq5luDBsmtv1vLE7zJ1bUhcaRerGu6i+Xt6ldZ/CPen/+TflcSf64ja3XqG8oaklmPzSjoHEfyuto9Zf2XsXvPG9W8k/p7zqoVEAZH/G4btBjV+V5Nj1j+R4Hdbt5AoINLkFpq/q7cI39hXIP6at7qEpCMBmeGrYNs8KpFM7Etwg9g1ZL2fhayXZUjKcp5kJ5rbNj2PSrYBXsDuST6F6pxF7UbLE5xL5DLfOstgl6M3rrOA8JDcQLVD0oMNJPEBFo6xxTZHysA/l8hcbBR3z48IbtBHASeFPF6HkIg0CZtL5Bt9zw0hOEjc6/Tfv6GQSO2FzSVyXd9zhxHciI/1vT7rkExFIZGS8c8l8gGwEsHxeN8ifBT3kwkPyfUoJFIDYXOJ3BHy2AkxZSgkUlthc4n4lznYycU4WYdkCpp3RErCP5eIfznVsZx2QhI2qNyBCd+HSC52IDoc87C5DV2dElHOX4kOSVh38hKC08aJFGIgNj1B2EZ6dorykoQkbHLQJdhcJppTRErjXIIb6QLSXy/lEpKwe+SXALfRfMKyNlbHxju6Gdil4LZIMuMIbqjnt1lmXEiOjXiuyHCMxy7inExOvWiN9zsvpIvmfKiBHqznqPF8iPP4tDFOJTwIZQvHJjRPI35fHpWoF6LaRgGXYrfOfinDcl1CcjvF7lYdEtKmzPkr0P0g4okLSdHhAI1qIgU7jvDR5O8Edsc6BCpJAZGsHEf/BY5gB8TjqXA4oNxj80r1/Byb6mw5shtZvlAKiGTtpaIbkCXtYonEUEBEYiggIjEUEJEYCohIDAVEJIYCIhJDARGJoYCIxEgSkHm+/8/JsiEiOXrf9/+5eVTSOBL4E/QPUylSdsvRPJ31MXlV9FlgR2xsV5EqWRr4CrBx0Q0RERERERERERERERERkZJLMgT9AGAPbNjKWdj4riJVMRzYD1gDeI4chh89j/5rWV7GJoMUqYJVgVfp337PyaMS/1xz++RRiUgOJtK87c53fWGSy90H+/4/NMFrRYrkv7jWeTBt3TAlEkMBEYmhgIjE6Emwrr9b7HXgXd9j04EjgRdalLUWMAn4VIL6Pc/11TGjxXpr99WxQYo6ngWOAGa2WG9kXx2jU9Qxra+OWS3WGwX8PmUdz2CfVas61u2rY/0UdUzF3sfLDnVMAtZLUccU4HBgdov1RmPvY5Tv8WHAar7Hkmz7TlznonvQoay7EpSXto572qzDZR67f7RZx90OdTTODZlXHQ+3WcftDnU80mYdf3Oo47EE5WVuoWPFLjfEN/ZJp1lcBox4o8063nKo450263i9JHW812Ydr3Sgjla/5mCT9biU9bFDWUCyY5BrHde7OsOyolyT0TpVqKMun1Un3odrHVe5VppkP2wINrPtujHrTAMupnVClwL2BzZKUH+aOiaQbrrqqcAl2K9mnEF9daQ5lpqCzTrrUkcv6Y6lktQxERiToo6ngcuARS3WG4y9jzR1/Bu43LGOA4g/lpoOXAR8lKIdIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIrX3Py2wAaYahY2rAAAAAElFTkSuQmCC";
388
412
 
389
413
  // src/components/Basic/Image/Image.tsx
390
- var import_jsx_runtime12 = require("react/jsx-runtime");
414
+ var import_jsx_runtime13 = require("react/jsx-runtime");
391
415
  var ImageControl = ({
392
416
  className,
393
417
  style,
@@ -404,26 +428,26 @@ var ImageControl = ({
404
428
  className
405
429
  );
406
430
  if (!imageUrl && !imageUrlExternal) {
407
- return /* @__PURE__ */ (0, import_jsx_runtime12.jsx)("div", { className: imageClass, children: /* @__PURE__ */ (0, import_jsx_runtime12.jsx)("img", { src: image_placeholder_default, alt: altText, className: "opacity-50", width: 50, height: 50 }) });
431
+ return /* @__PURE__ */ (0, import_jsx_runtime13.jsx)("div", { className: imageClass, children: /* @__PURE__ */ (0, import_jsx_runtime13.jsx)("img", { src: image_placeholder_default, alt: altText, className: "opacity-50", width: 50, height: 50 }) });
408
432
  }
409
433
  const url = imageUrlExternal || imageUrl;
410
- return /* @__PURE__ */ (0, import_jsx_runtime12.jsx)("img", { src: url, alt: altText, className: defaultImgClass, style });
434
+ return /* @__PURE__ */ (0, import_jsx_runtime13.jsx)("img", { src: url, alt: altText, className: defaultImgClass, style });
411
435
  };
412
436
  var Image_default = ImageControl;
413
437
 
414
438
  // src/components/Basic/Shape/Shape.tsx
415
- var import_jsx_runtime13 = require("react/jsx-runtime");
439
+ var import_jsx_runtime14 = require("react/jsx-runtime");
416
440
  var Shape = ({
417
441
  children,
418
442
  className,
419
443
  style
420
444
  }) => {
421
- return /* @__PURE__ */ (0, import_jsx_runtime13.jsx)("div", { className, style, children });
445
+ return /* @__PURE__ */ (0, import_jsx_runtime14.jsx)("div", { className, style, children });
422
446
  };
423
447
  var Shape_default = Shape;
424
448
 
425
449
  // src/components/Basic/Typography/Typography.tsx
426
- var import_react4 = __toESM(require("react"));
450
+ var import_react5 = __toESM(require("react"));
427
451
  var Typography = ({
428
452
  className,
429
453
  style,
@@ -431,14 +455,14 @@ var Typography = ({
431
455
  textContent
432
456
  }) => {
433
457
  const Tag2 = tagName || "h1";
434
- return import_react4.default.createElement(
458
+ return import_react5.default.createElement(
435
459
  Tag2,
436
460
  {
437
461
  style,
438
462
  className: cn(className, "pointer-events-auto")
439
463
  },
440
464
  [
441
- import_react4.default.createElement("span", {
465
+ import_react5.default.createElement("span", {
442
466
  key: "html",
443
467
  className: "pointer-events-none",
444
468
  dangerouslySetInnerHTML: { __html: textContent }
@@ -3554,7 +3578,7 @@ __export(lucide_react_exports, {
3554
3578
  LucideMailX: () => MailX,
3555
3579
  LucideMailbox: () => Mailbox,
3556
3580
  LucideMails: () => Mails,
3557
- LucideMap: () => Map,
3581
+ LucideMap: () => Map2,
3558
3582
  LucideMapMinus: () => MapMinus,
3559
3583
  LucideMapPin: () => MapPin,
3560
3584
  LucideMapPinCheck: () => MapPinCheck,
@@ -4390,8 +4414,8 @@ __export(lucide_react_exports, {
4390
4414
  MailboxIcon: () => Mailbox,
4391
4415
  Mails: () => Mails,
4392
4416
  MailsIcon: () => Mails,
4393
- Map: () => Map,
4394
- MapIcon: () => Map,
4417
+ Map: () => Map2,
4418
+ MapIcon: () => Map2,
4395
4419
  MapMinus: () => MapMinus,
4396
4420
  MapMinusIcon: () => MapMinus,
4397
4421
  MapPin: () => MapPin,
@@ -6926,7 +6950,7 @@ __export(icons_exports, {
6926
6950
  MailX: () => MailX,
6927
6951
  Mailbox: () => Mailbox,
6928
6952
  Mails: () => Mails,
6929
- Map: () => Map,
6953
+ Map: () => Map2,
6930
6954
  MapMinus: () => MapMinus,
6931
6955
  MapPin: () => MapPin,
6932
6956
  MapPinCheck: () => MapPinCheck,
@@ -7646,7 +7670,7 @@ __export(icons_exports, {
7646
7670
  });
7647
7671
 
7648
7672
  // node_modules/lucide-react/dist/esm/createLucideIcon.js
7649
- var import_react6 = require("react");
7673
+ var import_react7 = require("react");
7650
7674
 
7651
7675
  // node_modules/lucide-react/dist/esm/shared/src/utils.js
7652
7676
  var toKebabCase = (string) => string.replace(/([a-z0-9])([A-Z])/g, "$1-$2").toLowerCase();
@@ -7670,7 +7694,7 @@ var hasA11yProp = (props) => {
7670
7694
  };
7671
7695
 
7672
7696
  // node_modules/lucide-react/dist/esm/Icon.js
7673
- var import_react5 = require("react");
7697
+ var import_react6 = require("react");
7674
7698
 
7675
7699
  // node_modules/lucide-react/dist/esm/defaultAttributes.js
7676
7700
  var defaultAttributes = {
@@ -7686,7 +7710,7 @@ var defaultAttributes = {
7686
7710
  };
7687
7711
 
7688
7712
  // node_modules/lucide-react/dist/esm/Icon.js
7689
- var Icon = (0, import_react5.forwardRef)(
7713
+ var Icon = (0, import_react6.forwardRef)(
7690
7714
  ({
7691
7715
  color = "currentColor",
7692
7716
  size = 24,
@@ -7696,7 +7720,7 @@ var Icon = (0, import_react5.forwardRef)(
7696
7720
  children,
7697
7721
  iconNode,
7698
7722
  ...rest
7699
- }, ref) => (0, import_react5.createElement)(
7723
+ }, ref) => (0, import_react6.createElement)(
7700
7724
  "svg",
7701
7725
  {
7702
7726
  ref,
@@ -7710,7 +7734,7 @@ var Icon = (0, import_react5.forwardRef)(
7710
7734
  ...rest
7711
7735
  },
7712
7736
  [
7713
- ...iconNode.map(([tag, attrs]) => (0, import_react5.createElement)(tag, attrs)),
7737
+ ...iconNode.map(([tag, attrs]) => (0, import_react6.createElement)(tag, attrs)),
7714
7738
  ...Array.isArray(children) ? children : [children]
7715
7739
  ]
7716
7740
  )
@@ -7718,8 +7742,8 @@ var Icon = (0, import_react5.forwardRef)(
7718
7742
 
7719
7743
  // node_modules/lucide-react/dist/esm/createLucideIcon.js
7720
7744
  var createLucideIcon = (iconName, iconNode) => {
7721
- const Component2 = (0, import_react6.forwardRef)(
7722
- ({ className, ...props }, ref) => (0, import_react6.createElement)(Icon, {
7745
+ const Component2 = (0, import_react7.forwardRef)(
7746
+ ({ className, ...props }, ref) => (0, import_react7.createElement)(Icon, {
7723
7747
  ref,
7724
7748
  iconNode,
7725
7749
  className: mergeClasses(
@@ -18539,7 +18563,7 @@ var __iconNode933 = [
18539
18563
  ["path", { d: "M15 5.764v15", key: "1pn4in" }],
18540
18564
  ["path", { d: "M9 3.236v15", key: "1uimfh" }]
18541
18565
  ];
18542
- var Map = createLucideIcon("map", __iconNode933);
18566
+ var Map2 = createLucideIcon("map", __iconNode933);
18543
18567
 
18544
18568
  // node_modules/lucide-react/dist/esm/icons/mars-stroke.js
18545
18569
  var __iconNode934 = [
@@ -26756,9 +26780,9 @@ var ZoomOut = createLucideIcon("zoom-out", __iconNode1634);
26756
26780
 
26757
26781
  // src/components/Basic/Breadcrumb/Breadcrumb.tsx
26758
26782
  var import_link3 = __toESM(require("next/link"));
26759
- var import_jsx_runtime14 = require("react/jsx-runtime");
26783
+ var import_jsx_runtime15 = require("react/jsx-runtime");
26760
26784
  var Breadcrumb = ({ list = [], className, style }) => {
26761
- return /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(
26785
+ return /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(
26762
26786
  "nav",
26763
26787
  {
26764
26788
  "aria-label": "breadcrumb",
@@ -26766,16 +26790,16 @@ var Breadcrumb = ({ list = [], className, style }) => {
26766
26790
  style,
26767
26791
  children: list.map((item, index) => {
26768
26792
  const isLast = index === list.length - 1;
26769
- return /* @__PURE__ */ (0, import_jsx_runtime14.jsxs)("div", { className: "flex items-center", children: [
26770
- item.url && !isLast ? /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(
26793
+ return /* @__PURE__ */ (0, import_jsx_runtime15.jsxs)("div", { className: "flex items-center", children: [
26794
+ item.url && !isLast ? /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(
26771
26795
  import_link3.default,
26772
26796
  {
26773
26797
  href: item.url,
26774
26798
  className: "hover:text-foreground transition-colors",
26775
26799
  children: item.header
26776
26800
  }
26777
- ) : /* @__PURE__ */ (0, import_jsx_runtime14.jsx)("span", { className: "text-foreground font-medium", children: item.header }),
26778
- !isLast && /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(ChevronRight, { className: "mx-2 h-4 w-4 text-muted-foreground" })
26801
+ ) : /* @__PURE__ */ (0, import_jsx_runtime15.jsx)("span", { className: "text-foreground font-medium", children: item.header }),
26802
+ !isLast && /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(ChevronRight, { className: "mx-2 h-4 w-4 text-muted-foreground" })
26779
26803
  ] }, item.id);
26780
26804
  })
26781
26805
  }
@@ -26785,16 +26809,16 @@ var Breadcrumb_default = Breadcrumb;
26785
26809
 
26786
26810
  // src/components/ui/dropdown-menu.tsx
26787
26811
  var DropdownMenuPrimitive = __toESM(require("@radix-ui/react-dropdown-menu"));
26788
- var import_jsx_runtime15 = require("react/jsx-runtime");
26812
+ var import_jsx_runtime16 = require("react/jsx-runtime");
26789
26813
  function DropdownMenu({
26790
26814
  ...props
26791
26815
  }) {
26792
- return /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(DropdownMenuPrimitive.Root, { "data-slot": "dropdown-menu", ...props });
26816
+ return /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(DropdownMenuPrimitive.Root, { "data-slot": "dropdown-menu", ...props });
26793
26817
  }
26794
26818
  function DropdownMenuTrigger({
26795
26819
  ...props
26796
26820
  }) {
26797
- return /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(
26821
+ return /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
26798
26822
  DropdownMenuPrimitive.Trigger,
26799
26823
  {
26800
26824
  "data-slot": "dropdown-menu-trigger",
@@ -26807,7 +26831,7 @@ function DropdownMenuContent({
26807
26831
  sideOffset = 4,
26808
26832
  ...props
26809
26833
  }) {
26810
- return /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(DropdownMenuPrimitive.Portal, { children: /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(
26834
+ return /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(DropdownMenuPrimitive.Portal, { children: /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
26811
26835
  DropdownMenuPrimitive.Content,
26812
26836
  {
26813
26837
  "data-slot": "dropdown-menu-content",
@@ -26826,7 +26850,7 @@ function DropdownMenuItem({
26826
26850
  variant = "default",
26827
26851
  ...props
26828
26852
  }) {
26829
- return /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(
26853
+ return /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
26830
26854
  DropdownMenuPrimitive.Item,
26831
26855
  {
26832
26856
  "data-slot": "dropdown-menu-item",
@@ -26843,7 +26867,7 @@ function DropdownMenuItem({
26843
26867
  function DropdownMenuSub({
26844
26868
  ...props
26845
26869
  }) {
26846
- return /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(DropdownMenuPrimitive.Sub, { "data-slot": "dropdown-menu-sub", ...props });
26870
+ return /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(DropdownMenuPrimitive.Sub, { "data-slot": "dropdown-menu-sub", ...props });
26847
26871
  }
26848
26872
  function DropdownMenuSubTrigger({
26849
26873
  className,
@@ -26851,7 +26875,7 @@ function DropdownMenuSubTrigger({
26851
26875
  children,
26852
26876
  ...props
26853
26877
  }) {
26854
- return /* @__PURE__ */ (0, import_jsx_runtime15.jsxs)(
26878
+ return /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)(
26855
26879
  DropdownMenuPrimitive.SubTrigger,
26856
26880
  {
26857
26881
  "data-slot": "dropdown-menu-sub-trigger",
@@ -26863,7 +26887,7 @@ function DropdownMenuSubTrigger({
26863
26887
  ...props,
26864
26888
  children: [
26865
26889
  children,
26866
- /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(ChevronRight, { className: "ml-auto size-4" })
26890
+ /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(ChevronRight, { className: "ml-auto size-4" })
26867
26891
  ]
26868
26892
  }
26869
26893
  );
@@ -26872,7 +26896,7 @@ function DropdownMenuSubContent({
26872
26896
  className,
26873
26897
  ...props
26874
26898
  }) {
26875
- return /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(
26899
+ return /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
26876
26900
  DropdownMenuPrimitive.SubContent,
26877
26901
  {
26878
26902
  "data-slot": "dropdown-menu-sub-content",
@@ -26887,11 +26911,11 @@ function DropdownMenuSubContent({
26887
26911
 
26888
26912
  // src/components/Basic/ButtonGroup/ButtonGroup.tsx
26889
26913
  var import_link4 = __toESM(require("next/link"));
26890
- var import_jsx_runtime16 = require("react/jsx-runtime");
26914
+ var import_jsx_runtime17 = require("react/jsx-runtime");
26891
26915
  function SplitButton({ style, textContent, className, list = [] }) {
26892
26916
  const bgColor = style?.backgroundColor || "";
26893
- return /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)("div", { className: "inline-flex rounded-md overflow-hidden border border-teal-200 bg-teal-700 items-center focus:ring-0", style: { backgroundColor: bgColor }, children: [
26894
- /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
26917
+ return /* @__PURE__ */ (0, import_jsx_runtime17.jsxs)("div", { className: "inline-flex rounded-md overflow-hidden border border-teal-200 bg-teal-700 items-center focus:ring-0", style: { backgroundColor: bgColor }, children: [
26918
+ /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(
26895
26919
  Button,
26896
26920
  {
26897
26921
  className: `rounded-none border-r px-4 py-2 text-whit focus:ring-0 ${className || ""}`,
@@ -26899,17 +26923,17 @@ function SplitButton({ style, textContent, className, list = [] }) {
26899
26923
  children: textContent || "Button"
26900
26924
  }
26901
26925
  ),
26902
- /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)(DropdownMenu, { children: [
26903
- /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(DropdownMenuTrigger, { asChild: true, children: /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
26926
+ /* @__PURE__ */ (0, import_jsx_runtime17.jsxs)(DropdownMenu, { children: [
26927
+ /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(DropdownMenuTrigger, { asChild: true, children: /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(
26904
26928
  Button,
26905
26929
  {
26906
26930
  className: "rounded-none bg-teal-700 px-4 py-2 text-white ring-0 shadow-none hover:bg-teal-600 focus:ring-0",
26907
26931
  "aria-label": "Open Dropdown",
26908
26932
  style: { backgroundColor: bgColor },
26909
- children: /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(ChevronDown, { className: "w-4 h-4" })
26933
+ children: /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(ChevronDown, { className: "w-4 h-4" })
26910
26934
  }
26911
26935
  ) }),
26912
- /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(DropdownMenuContent, { align: "end", className: "bg-white min-w-[120px]", children: list.map((item) => /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(DropdownMenuItem, { className: "text-black", children: /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(import_link4.default, { href: item.url || "#", children: item.header }) }, item.id)) })
26936
+ /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(DropdownMenuContent, { align: "end", className: "bg-white min-w-[120px]", children: list.map((item) => /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(DropdownMenuItem, { className: "text-black", children: /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(import_link4.default, { href: item.url || "#", children: item.header }) }, item.id)) })
26913
26937
  ] })
26914
26938
  ] });
26915
26939
  }
@@ -26917,7 +26941,7 @@ function SplitButton({ style, textContent, className, list = [] }) {
26917
26941
  // src/components/Basic/Icon/Icon.tsx
26918
26942
  var faSolid = __toESM(require("@fortawesome/free-solid-svg-icons"));
26919
26943
  var import_react_fontawesome2 = require("@fortawesome/react-fontawesome");
26920
- var import_jsx_runtime17 = require("react/jsx-runtime");
26944
+ var import_jsx_runtime18 = require("react/jsx-runtime");
26921
26945
  var Icon2 = ({ iconType = "fontawesome", name = "Envelope", className, fontSize = 10, style }) => {
26922
26946
  let content = null;
26923
26947
  if (iconType === "fontawesome") {
@@ -26926,7 +26950,7 @@ var Icon2 = ({ iconType = "fontawesome", name = "Envelope", className, fontSize
26926
26950
  if (!faIcon) {
26927
26951
  return null;
26928
26952
  }
26929
- content = /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(
26953
+ content = /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(
26930
26954
  import_react_fontawesome2.FontAwesomeIcon,
26931
26955
  {
26932
26956
  icon: faIcon,
@@ -26940,19 +26964,19 @@ var Icon2 = ({ iconType = "fontawesome", name = "Envelope", className, fontSize
26940
26964
  if (!Lucide) {
26941
26965
  return null;
26942
26966
  }
26943
- content = /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(Lucide, { className: cn("w-5 h-5"), size: fontSize, style: { color: style?.color } });
26967
+ content = /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(Lucide, { className: cn("w-5 h-5"), size: fontSize, style: { color: style?.color } });
26944
26968
  }
26945
- return /* @__PURE__ */ (0, import_jsx_runtime17.jsx)("div", { style, className, children: content });
26969
+ return /* @__PURE__ */ (0, import_jsx_runtime18.jsx)("div", { style, className, children: content });
26946
26970
  };
26947
26971
  var Icon_default = Icon2;
26948
26972
 
26949
26973
  // src/components/Inputs/TextInput/TextInput.tsx
26950
- var import_react7 = require("react");
26974
+ var import_react8 = require("react");
26951
26975
 
26952
26976
  // src/components/ui/input.tsx
26953
- var import_jsx_runtime18 = require("react/jsx-runtime");
26977
+ var import_jsx_runtime19 = require("react/jsx-runtime");
26954
26978
  function Input({ className, type, ...props }) {
26955
- return /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(
26979
+ return /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(
26956
26980
  "input",
26957
26981
  {
26958
26982
  type,
@@ -26969,14 +26993,14 @@ function Input({ className, type, ...props }) {
26969
26993
  }
26970
26994
 
26971
26995
  // src/components/Inputs/TextInput/TextInput.tsx
26972
- var import_jsx_runtime19 = require("react/jsx-runtime");
26996
+ var import_jsx_runtime20 = require("react/jsx-runtime");
26973
26997
  var TextInput = ({ className, style, ...props }) => {
26974
26998
  const placeholder = props.placeholder || "Placeholder text";
26975
26999
  const isEditable = props.isEditable ?? true;
26976
27000
  const isDisabled = props.isDisabled ?? false;
26977
27001
  const isReadonly = props.isReadonly ?? false;
26978
27002
  const isAutocomplete = props.isAutocomplete ?? false;
26979
- (0, import_react7.useEffect)(() => {
27003
+ (0, import_react8.useEffect)(() => {
26980
27004
  if (props.value !== void 0) {
26981
27005
  const e = { target: { value: props.value } };
26982
27006
  handleChange?.(e);
@@ -26985,8 +27009,8 @@ var TextInput = ({ className, style, ...props }) => {
26985
27009
  const handleChange = (e) => {
26986
27010
  props.onChange?.(e);
26987
27011
  };
26988
- return /* @__PURE__ */ (0, import_jsx_runtime19.jsxs)(import_jsx_runtime19.Fragment, { children: [
26989
- /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(
27012
+ return /* @__PURE__ */ (0, import_jsx_runtime20.jsxs)(import_jsx_runtime20.Fragment, { children: [
27013
+ /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(
26990
27014
  Input,
26991
27015
  {
26992
27016
  type: "text",
@@ -27004,21 +27028,21 @@ var TextInput = ({ className, style, ...props }) => {
27004
27028
  readOnly: isReadonly
27005
27029
  }
27006
27030
  ),
27007
- props.errorMessage && /* @__PURE__ */ (0, import_jsx_runtime19.jsx)("p", { className: "mt-1 text-xs text-red-500", children: props.errorMessage })
27031
+ props.errorMessage && /* @__PURE__ */ (0, import_jsx_runtime20.jsx)("p", { className: "mt-1 text-xs text-red-500", children: props.errorMessage })
27008
27032
  ] });
27009
27033
  };
27010
27034
  var TextInput_default = TextInput;
27011
27035
 
27012
27036
  // src/components/Inputs/NumberInput/NumberInput.tsx
27013
- var import_react8 = require("react");
27014
- var import_jsx_runtime20 = require("react/jsx-runtime");
27037
+ var import_react9 = require("react");
27038
+ var import_jsx_runtime21 = require("react/jsx-runtime");
27015
27039
  var NumberInput = ({ className, style, ...props }) => {
27016
27040
  const placeholder = props.placeholder ?? "Placeholder text";
27017
27041
  const isEditable = props.isEditable ?? true;
27018
27042
  const isDisabled = props.isDisabled ?? false;
27019
27043
  const isReadonly = props.isReadonly ?? false;
27020
27044
  const isAutocomplete = props.isAutocomplete ?? false;
27021
- (0, import_react8.useEffect)(() => {
27045
+ (0, import_react9.useEffect)(() => {
27022
27046
  if (props.value !== void 0) {
27023
27047
  const e = { target: { value: props.value } };
27024
27048
  handleChange?.(e);
@@ -27027,44 +27051,41 @@ var NumberInput = ({ className, style, ...props }) => {
27027
27051
  const handleChange = (e) => {
27028
27052
  props.onChange?.(e);
27029
27053
  };
27030
- return /* @__PURE__ */ (0, import_jsx_runtime20.jsxs)(import_jsx_runtime20.Fragment, { children: [
27031
- /* @__PURE__ */ (0, import_jsx_runtime20.jsxs)("div", { className: "flex justify-start items-center relative", children: [
27032
- /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(Calculator, { className: "absolute left-3 top-1/2 h-4 w-4 -translate-y-1/2 text-[#BDBDBD]" }),
27033
- /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(
27034
- Input,
27035
- {
27036
- type: "number",
27037
- id: props.name || "number-field",
27038
- name: props.name,
27039
- value: props.value || "",
27040
- className: cn(className, props.errorMessage ? "border-red-500" : ""),
27041
- style: {
27042
- ...style,
27043
- borderColor: props.errorMessage ? "#f87171" : style?.borderColor
27044
- },
27045
- autoComplete: isAutocomplete ? "on" : "off",
27046
- placeholder,
27047
- onChange: handleChange,
27048
- disabled: isDisabled || !isEditable,
27049
- readOnly: isReadonly
27050
- }
27051
- )
27052
- ] }),
27053
- props.errorMessage && /* @__PURE__ */ (0, import_jsx_runtime20.jsx)("p", { className: "mt-1 text-xs text-red-500", children: props.errorMessage })
27054
+ return /* @__PURE__ */ (0, import_jsx_runtime21.jsxs)(import_jsx_runtime21.Fragment, { children: [
27055
+ /* @__PURE__ */ (0, import_jsx_runtime21.jsx)("div", { className: "flex justify-start items-center relative", children: /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(
27056
+ Input,
27057
+ {
27058
+ type: "number",
27059
+ id: props.name || "number-field",
27060
+ name: props.name,
27061
+ value: props.value || "",
27062
+ className: cn(className, props.errorMessage ? "border-red-500" : ""),
27063
+ style: {
27064
+ ...style,
27065
+ borderColor: props.errorMessage ? "#f87171" : style?.borderColor
27066
+ },
27067
+ autoComplete: isAutocomplete ? "on" : "off",
27068
+ placeholder,
27069
+ onChange: handleChange,
27070
+ disabled: isDisabled || !isEditable,
27071
+ readOnly: isReadonly
27072
+ }
27073
+ ) }),
27074
+ props.errorMessage && /* @__PURE__ */ (0, import_jsx_runtime21.jsx)("p", { className: "mt-1 text-xs text-red-500", children: props.errorMessage })
27054
27075
  ] });
27055
27076
  };
27056
27077
  var NumberInput_default = NumberInput;
27057
27078
 
27058
27079
  // src/components/Inputs/EmailInput/EmailInput.tsx
27059
- var import_react9 = require("react");
27060
- var import_jsx_runtime21 = require("react/jsx-runtime");
27080
+ var import_react10 = require("react");
27081
+ var import_jsx_runtime22 = require("react/jsx-runtime");
27061
27082
  var EmailInput = ({ className, style, ...props }) => {
27062
27083
  const placeholder = props.placeholder ?? "Placeholder text";
27063
27084
  const isEditable = props.isEditable ?? true;
27064
27085
  const isDisabled = props.isDisabled ?? false;
27065
27086
  const isReadonly = props.isReadonly ?? false;
27066
27087
  const isAutocomplete = props.isAutocomplete ?? false;
27067
- (0, import_react9.useEffect)(() => {
27088
+ (0, import_react10.useEffect)(() => {
27068
27089
  if (props.value !== void 0) {
27069
27090
  const e = { target: { value: props.value } };
27070
27091
  handleChange?.(e);
@@ -27073,43 +27094,40 @@ var EmailInput = ({ className, style, ...props }) => {
27073
27094
  const handleChange = (e) => {
27074
27095
  props.onChange?.(e);
27075
27096
  };
27076
- return /* @__PURE__ */ (0, import_jsx_runtime21.jsxs)(import_jsx_runtime21.Fragment, { children: [
27077
- /* @__PURE__ */ (0, import_jsx_runtime21.jsxs)("div", { className: "flex justify-start items-center relative", children: [
27078
- /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(Mail, { className: "absolute left-3 top-1/2 h-4 w-4 -translate-y-1/2 text-[#BDBDBD]" }),
27079
- /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(
27080
- Input,
27081
- {
27082
- type: "email",
27083
- name: props.name,
27084
- value: props.value || "",
27085
- className: cn(className, props.errorMessage ? "border-red-500" : ""),
27086
- style: {
27087
- ...style,
27088
- borderColor: props.errorMessage ? "#f87171" : style?.borderColor
27089
- },
27090
- autoComplete: isAutocomplete ? "on" : "off",
27091
- placeholder,
27092
- onChange: handleChange,
27093
- disabled: isDisabled || !isEditable,
27094
- readOnly: isReadonly
27095
- }
27096
- )
27097
- ] }),
27098
- props.errorMessage && /* @__PURE__ */ (0, import_jsx_runtime21.jsx)("p", { className: "mt-1 text-xs text-red-500", children: props.errorMessage })
27097
+ return /* @__PURE__ */ (0, import_jsx_runtime22.jsxs)(import_jsx_runtime22.Fragment, { children: [
27098
+ /* @__PURE__ */ (0, import_jsx_runtime22.jsx)("div", { className: "flex justify-start items-center relative", children: /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(
27099
+ Input,
27100
+ {
27101
+ type: "email",
27102
+ name: props.name,
27103
+ value: props.value || "",
27104
+ className: cn(className, props.errorMessage ? "border-red-500" : ""),
27105
+ style: {
27106
+ ...style,
27107
+ borderColor: props.errorMessage ? "#f87171" : style?.borderColor
27108
+ },
27109
+ autoComplete: isAutocomplete ? "on" : "off",
27110
+ placeholder,
27111
+ onChange: handleChange,
27112
+ disabled: isDisabled || !isEditable,
27113
+ readOnly: isReadonly
27114
+ }
27115
+ ) }),
27116
+ props.errorMessage && /* @__PURE__ */ (0, import_jsx_runtime22.jsx)("p", { className: "mt-1 text-xs text-red-500", children: props.errorMessage })
27099
27117
  ] });
27100
27118
  };
27101
27119
  var EmailInput_default = EmailInput;
27102
27120
 
27103
27121
  // src/components/Inputs/PasswordInput/PasswordInput.tsx
27104
- var import_react10 = require("react");
27105
- var import_jsx_runtime22 = require("react/jsx-runtime");
27122
+ var import_react11 = require("react");
27123
+ var import_jsx_runtime23 = require("react/jsx-runtime");
27106
27124
  var PasswordInput = ({ className, style, ...props }) => {
27107
27125
  const placeholder = props.placeholder ?? "Placeholder text";
27108
27126
  const isEditable = props.isEditable ?? true;
27109
27127
  const isDisabled = props.isDisabled ?? false;
27110
27128
  const isReadonly = props.isReadonly ?? false;
27111
27129
  const isAutocomplete = props.isAutocomplete ?? false;
27112
- (0, import_react10.useEffect)(() => {
27130
+ (0, import_react11.useEffect)(() => {
27113
27131
  if (props.value !== void 0) {
27114
27132
  const e = { target: { value: props.value } };
27115
27133
  handleChange?.(e);
@@ -27118,41 +27136,38 @@ var PasswordInput = ({ className, style, ...props }) => {
27118
27136
  const handleChange = (e) => {
27119
27137
  props.onChange?.(e);
27120
27138
  };
27121
- return /* @__PURE__ */ (0, import_jsx_runtime22.jsxs)(import_jsx_runtime22.Fragment, { children: [
27122
- /* @__PURE__ */ (0, import_jsx_runtime22.jsxs)("div", { className: "flex justify-start items-center relative", children: [
27123
- /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(ScanEye, { className: "absolute left-3 top-1/2 h-4 w-4 -translate-y-1/2 text-[#BDBDBD]" }),
27124
- /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(
27125
- Input,
27126
- {
27127
- type: "password",
27128
- id: props.name || "password-field",
27129
- name: props.name,
27130
- value: props.value || "",
27131
- className: cn(className, props.errorMessage ? "border-red-500" : ""),
27132
- style: {
27133
- ...style,
27134
- borderColor: props.errorMessage ? "#f87171" : style?.borderColor
27135
- },
27136
- autoComplete: isAutocomplete ? "on" : "off",
27137
- placeholder,
27138
- onChange: handleChange,
27139
- disabled: isDisabled || !isEditable,
27140
- readOnly: isReadonly
27141
- }
27142
- )
27143
- ] }),
27144
- props.errorMessage && /* @__PURE__ */ (0, import_jsx_runtime22.jsx)("p", { className: "mt-1 text-xs text-red-500", children: props.errorMessage })
27139
+ return /* @__PURE__ */ (0, import_jsx_runtime23.jsxs)(import_jsx_runtime23.Fragment, { children: [
27140
+ /* @__PURE__ */ (0, import_jsx_runtime23.jsx)("div", { className: "flex justify-start items-center relative", children: /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(
27141
+ Input,
27142
+ {
27143
+ type: "password",
27144
+ id: props.name || "password-field",
27145
+ name: props.name,
27146
+ value: props.value || "",
27147
+ className: cn(className, props.errorMessage ? "border-red-500" : ""),
27148
+ style: {
27149
+ ...style,
27150
+ borderColor: props.errorMessage ? "#f87171" : style?.borderColor
27151
+ },
27152
+ autoComplete: isAutocomplete ? "on" : "off",
27153
+ placeholder,
27154
+ onChange: handleChange,
27155
+ disabled: isDisabled || !isEditable,
27156
+ readOnly: isReadonly
27157
+ }
27158
+ ) }),
27159
+ props.errorMessage && /* @__PURE__ */ (0, import_jsx_runtime23.jsx)("p", { className: "mt-1 text-xs text-red-500", children: props.errorMessage })
27145
27160
  ] });
27146
27161
  };
27147
27162
  var PasswordInput_default = PasswordInput;
27148
27163
 
27149
27164
  // src/components/Inputs/Textarea/Textarea.tsx
27150
- var import_react11 = require("react");
27165
+ var import_react12 = require("react");
27151
27166
 
27152
27167
  // src/components/ui/textarea.tsx
27153
- var import_jsx_runtime23 = require("react/jsx-runtime");
27168
+ var import_jsx_runtime24 = require("react/jsx-runtime");
27154
27169
  function Textarea({ className, ...props }) {
27155
- return /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(
27170
+ return /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(
27156
27171
  "textarea",
27157
27172
  {
27158
27173
  "data-slot": "textarea",
@@ -27166,14 +27181,14 @@ function Textarea({ className, ...props }) {
27166
27181
  }
27167
27182
 
27168
27183
  // src/components/Inputs/Textarea/Textarea.tsx
27169
- var import_jsx_runtime24 = require("react/jsx-runtime");
27184
+ var import_jsx_runtime25 = require("react/jsx-runtime");
27170
27185
  var Textarea2 = ({ className, style, ...props }) => {
27171
27186
  const placeholder = props.placeholder ?? "Placeholder text";
27172
27187
  const isEditable = props.isEditable ?? true;
27173
27188
  const isDisabled = props.isDisabled ?? false;
27174
27189
  const isReadonly = props.isReadonly ?? false;
27175
27190
  const isAutocomplete = props.isAutocomplete ?? false;
27176
- (0, import_react11.useEffect)(() => {
27191
+ (0, import_react12.useEffect)(() => {
27177
27192
  if (props.value !== void 0) {
27178
27193
  const e = { target: { value: props.value } };
27179
27194
  handleChange?.(e);
@@ -27182,8 +27197,8 @@ var Textarea2 = ({ className, style, ...props }) => {
27182
27197
  const handleChange = (e) => {
27183
27198
  props.onChange?.(e);
27184
27199
  };
27185
- return /* @__PURE__ */ (0, import_jsx_runtime24.jsxs)(import_jsx_runtime24.Fragment, { children: [
27186
- /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(
27200
+ return /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(import_jsx_runtime25.Fragment, { children: [
27201
+ /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(
27187
27202
  Textarea,
27188
27203
  {
27189
27204
  id: "textarea-field",
@@ -27201,21 +27216,21 @@ var Textarea2 = ({ className, style, ...props }) => {
27201
27216
  readOnly: isReadonly
27202
27217
  }
27203
27218
  ),
27204
- props.errorMessage && /* @__PURE__ */ (0, import_jsx_runtime24.jsx)("p", { className: "mt-1 text-xs text-red-500", children: props.errorMessage })
27219
+ props.errorMessage && /* @__PURE__ */ (0, import_jsx_runtime25.jsx)("p", { className: "mt-1 text-xs text-red-500", children: props.errorMessage })
27205
27220
  ] });
27206
27221
  };
27207
27222
  var Textarea_default = Textarea2;
27208
27223
 
27209
27224
  // src/components/Inputs/UrlInput/UrlInput.tsx
27210
- var import_react12 = require("react");
27211
- var import_jsx_runtime25 = require("react/jsx-runtime");
27225
+ var import_react13 = require("react");
27226
+ var import_jsx_runtime26 = require("react/jsx-runtime");
27212
27227
  var UrlInput = ({ className, style, ...props }) => {
27213
27228
  const placeholder = props.placeholder ?? "Placeholder text";
27214
27229
  const isEditable = props.isEditable ?? true;
27215
27230
  const isDisabled = props.isDisabled ?? false;
27216
27231
  const isReadonly = props.isReadonly ?? false;
27217
27232
  const isAutocomplete = props.isAutocomplete ?? false;
27218
- (0, import_react12.useEffect)(() => {
27233
+ (0, import_react13.useEffect)(() => {
27219
27234
  if (props.value !== void 0) {
27220
27235
  const e = { target: { value: props.value } };
27221
27236
  handleChange?.(e);
@@ -27224,10 +27239,10 @@ var UrlInput = ({ className, style, ...props }) => {
27224
27239
  const handleChange = (e) => {
27225
27240
  props.onChange?.(e);
27226
27241
  };
27227
- return /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(import_jsx_runtime25.Fragment, { children: [
27228
- /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)("div", { className: "flex justify-start items-center relative", children: [
27229
- /* @__PURE__ */ (0, import_jsx_runtime25.jsx)("div", { className: "bg-[#E9E9E9] absolute px-10 text-center top-1/2 h-full justify-center items-center flex w-10 -translate-y-1/2 text-[#383838] font-[500] text-[12px]", children: "https://" }),
27230
- /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(
27242
+ return /* @__PURE__ */ (0, import_jsx_runtime26.jsxs)(import_jsx_runtime26.Fragment, { children: [
27243
+ /* @__PURE__ */ (0, import_jsx_runtime26.jsxs)("div", { className: "flex justify-start items-center relative", children: [
27244
+ /* @__PURE__ */ (0, import_jsx_runtime26.jsx)("div", { className: "bg-[#E9E9E9] absolute px-10 text-center top-1/2 h-full justify-center items-center flex w-10 -translate-y-1/2 text-[#383838] font-[500] text-[12px]", children: "https://" }),
27245
+ /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(
27231
27246
  Input,
27232
27247
  {
27233
27248
  id: "url-field",
@@ -27247,22 +27262,22 @@ var UrlInput = ({ className, style, ...props }) => {
27247
27262
  }
27248
27263
  )
27249
27264
  ] }),
27250
- props.errorMessage && /* @__PURE__ */ (0, import_jsx_runtime25.jsx)("p", { className: "mt-1 text-xs text-red-500", children: props.errorMessage })
27265
+ props.errorMessage && /* @__PURE__ */ (0, import_jsx_runtime26.jsx)("p", { className: "mt-1 text-xs text-red-500", children: props.errorMessage })
27251
27266
  ] });
27252
27267
  };
27253
27268
  var UrlInput_default = UrlInput;
27254
27269
 
27255
27270
  // src/components/Inputs/Checkbox/Checkbox.tsx
27256
- var import_react13 = require("react");
27271
+ var import_react14 = require("react");
27257
27272
 
27258
27273
  // src/components/ui/checkbox.tsx
27259
27274
  var CheckboxPrimitive = __toESM(require("@radix-ui/react-checkbox"));
27260
- var import_jsx_runtime26 = require("react/jsx-runtime");
27275
+ var import_jsx_runtime27 = require("react/jsx-runtime");
27261
27276
  function Checkbox({
27262
27277
  className,
27263
27278
  ...props
27264
27279
  }) {
27265
- return /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(
27280
+ return /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(
27266
27281
  CheckboxPrimitive.Root,
27267
27282
  {
27268
27283
  "data-slot": "checkbox",
@@ -27271,12 +27286,12 @@ function Checkbox({
27271
27286
  className
27272
27287
  ),
27273
27288
  ...props,
27274
- children: /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(
27289
+ children: /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(
27275
27290
  CheckboxPrimitive.Indicator,
27276
27291
  {
27277
27292
  "data-slot": "checkbox-indicator",
27278
27293
  className: "flex items-center justify-center text-current transition-none",
27279
- children: /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(Check, { className: "size-3.5" })
27294
+ children: /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(Check, { className: "size-3.5" })
27280
27295
  }
27281
27296
  )
27282
27297
  }
@@ -27285,12 +27300,12 @@ function Checkbox({
27285
27300
 
27286
27301
  // src/components/ui/label.tsx
27287
27302
  var LabelPrimitive = __toESM(require("@radix-ui/react-label"));
27288
- var import_jsx_runtime27 = require("react/jsx-runtime");
27303
+ var import_jsx_runtime28 = require("react/jsx-runtime");
27289
27304
  function Label2({
27290
27305
  className,
27291
27306
  ...props
27292
27307
  }) {
27293
- return /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(
27308
+ return /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(
27294
27309
  LabelPrimitive.Root,
27295
27310
  {
27296
27311
  "data-slot": "label",
@@ -27304,12 +27319,12 @@ function Label2({
27304
27319
  }
27305
27320
 
27306
27321
  // src/components/Inputs/Checkbox/Checkbox.tsx
27307
- var import_jsx_runtime28 = require("react/jsx-runtime");
27322
+ var import_jsx_runtime29 = require("react/jsx-runtime");
27308
27323
  var CheckboxInput = ({ className, style, ...props }) => {
27309
27324
  const isEditable = props.isEditable ?? true;
27310
27325
  const isDisabled = props.isDisabled ?? false;
27311
27326
  const text = props.text ? props.text : "Subscribe";
27312
- (0, import_react13.useEffect)(() => {
27327
+ (0, import_react14.useEffect)(() => {
27313
27328
  if (props.value) {
27314
27329
  handleChange(props.value);
27315
27330
  }
@@ -27317,9 +27332,9 @@ var CheckboxInput = ({ className, style, ...props }) => {
27317
27332
  const handleChange = (value) => {
27318
27333
  props.onChange?.(value);
27319
27334
  };
27320
- return /* @__PURE__ */ (0, import_jsx_runtime28.jsxs)(import_jsx_runtime28.Fragment, { children: [
27321
- /* @__PURE__ */ (0, import_jsx_runtime28.jsx)("div", { className, style, children: /* @__PURE__ */ (0, import_jsx_runtime28.jsxs)("div", { className: "flex items-center space-x-2", children: [
27322
- /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(
27335
+ return /* @__PURE__ */ (0, import_jsx_runtime29.jsxs)(import_jsx_runtime29.Fragment, { children: [
27336
+ /* @__PURE__ */ (0, import_jsx_runtime29.jsx)("div", { className, style, children: /* @__PURE__ */ (0, import_jsx_runtime29.jsxs)("div", { className: "flex items-center space-x-2", children: [
27337
+ /* @__PURE__ */ (0, import_jsx_runtime29.jsx)(
27323
27338
  Checkbox,
27324
27339
  {
27325
27340
  id: props.name || "checkbox",
@@ -27328,24 +27343,24 @@ var CheckboxInput = ({ className, style, ...props }) => {
27328
27343
  disabled: !isEditable || isDisabled
27329
27344
  }
27330
27345
  ),
27331
- /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(Label2, { htmlFor: props.name || "checkbox", children: text })
27346
+ /* @__PURE__ */ (0, import_jsx_runtime29.jsx)(Label2, { htmlFor: props.name || "checkbox", children: text })
27332
27347
  ] }) }),
27333
- props.errorMessage && /* @__PURE__ */ (0, import_jsx_runtime28.jsx)("p", { className: "mt-1 text-xs text-red-500", children: props.errorMessage })
27348
+ props.errorMessage && /* @__PURE__ */ (0, import_jsx_runtime29.jsx)("p", { className: "mt-1 text-xs text-red-500", children: props.errorMessage })
27334
27349
  ] });
27335
27350
  };
27336
27351
  var Checkbox_default = CheckboxInput;
27337
27352
 
27338
27353
  // src/components/Inputs/RadioInput/RadioInput.tsx
27339
- var import_react14 = require("react");
27354
+ var import_react15 = require("react");
27340
27355
 
27341
27356
  // src/components/ui/radio-group.tsx
27342
27357
  var RadioGroupPrimitive = __toESM(require("@radix-ui/react-radio-group"));
27343
- var import_jsx_runtime29 = require("react/jsx-runtime");
27358
+ var import_jsx_runtime30 = require("react/jsx-runtime");
27344
27359
  function RadioGroup2({
27345
27360
  className,
27346
27361
  ...props
27347
27362
  }) {
27348
- return /* @__PURE__ */ (0, import_jsx_runtime29.jsx)(
27363
+ return /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(
27349
27364
  RadioGroupPrimitive.Root,
27350
27365
  {
27351
27366
  "data-slot": "radio-group",
@@ -27358,7 +27373,7 @@ function RadioGroupItem({
27358
27373
  className,
27359
27374
  ...props
27360
27375
  }) {
27361
- return /* @__PURE__ */ (0, import_jsx_runtime29.jsx)(
27376
+ return /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(
27362
27377
  RadioGroupPrimitive.Item,
27363
27378
  {
27364
27379
  "data-slot": "radio-group-item",
@@ -27367,12 +27382,12 @@ function RadioGroupItem({
27367
27382
  className
27368
27383
  ),
27369
27384
  ...props,
27370
- children: /* @__PURE__ */ (0, import_jsx_runtime29.jsx)(
27385
+ children: /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(
27371
27386
  RadioGroupPrimitive.Indicator,
27372
27387
  {
27373
27388
  "data-slot": "radio-group-indicator",
27374
27389
  className: "relative flex items-center justify-center",
27375
- children: /* @__PURE__ */ (0, import_jsx_runtime29.jsx)(Circle, { className: "fill-primary absolute top-1/2 left-1/2 size-2 -translate-x-1/2 -translate-y-1/2" })
27390
+ children: /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(Circle, { className: "fill-primary absolute top-1/2 left-1/2 size-2 -translate-x-1/2 -translate-y-1/2" })
27376
27391
  }
27377
27392
  )
27378
27393
  }
@@ -27380,7 +27395,7 @@ function RadioGroupItem({
27380
27395
  }
27381
27396
 
27382
27397
  // src/components/Inputs/RadioInput/RadioInput.tsx
27383
- var import_jsx_runtime30 = require("react/jsx-runtime");
27398
+ var import_jsx_runtime31 = require("react/jsx-runtime");
27384
27399
  var RadioInput = ({
27385
27400
  className,
27386
27401
  style,
@@ -27396,7 +27411,7 @@ var RadioInput = ({
27396
27411
  value: item[dataKey || "value"],
27397
27412
  label: item[dataLabel || "label"]
27398
27413
  }));
27399
- (0, import_react14.useEffect)(() => {
27414
+ (0, import_react15.useEffect)(() => {
27400
27415
  if (props.value !== void 0) {
27401
27416
  handleChange?.(props.value);
27402
27417
  }
@@ -27405,29 +27420,29 @@ var RadioInput = ({
27405
27420
  onChange?.(value);
27406
27421
  };
27407
27422
  const resolvedDefaultValue = (typeof defaultValue === "string" ? defaultValue : void 0) ?? options[0]?.value;
27408
- return /* @__PURE__ */ (0, import_jsx_runtime30.jsxs)(import_jsx_runtime30.Fragment, { children: [
27409
- /* @__PURE__ */ (0, import_jsx_runtime30.jsx)("div", { className, style, children: /* @__PURE__ */ (0, import_jsx_runtime30.jsxs)(
27423
+ return /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)(import_jsx_runtime31.Fragment, { children: [
27424
+ /* @__PURE__ */ (0, import_jsx_runtime31.jsx)("div", { className, style, children: /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)(
27410
27425
  RadioGroup2,
27411
27426
  {
27412
27427
  defaultValue: resolvedDefaultValue,
27413
27428
  onValueChange: handleChange,
27414
27429
  children: [
27415
- options.length === 0 && /* @__PURE__ */ (0, import_jsx_runtime30.jsx)("div", { className: "text-sm text-gray-500", children: "No options available" }),
27416
- options.map((item) => /* @__PURE__ */ (0, import_jsx_runtime30.jsxs)("div", { className: "flex items-center space-x-2", children: [
27417
- /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(RadioGroupItem, { value: item.value, id: `radio-${item.value}` }),
27418
- /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(Label2, { htmlFor: `radio-${item.value}`, children: item.label })
27430
+ options.length === 0 && /* @__PURE__ */ (0, import_jsx_runtime31.jsx)("div", { className: "text-sm text-gray-500", children: "No options available" }),
27431
+ options.map((item) => /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)("div", { className: "flex items-center space-x-2", children: [
27432
+ /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(RadioGroupItem, { value: item.value, id: `radio-${item.value}` }),
27433
+ /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(Label2, { htmlFor: `radio-${item.value}`, children: item.label })
27419
27434
  ] }, item.value))
27420
27435
  ]
27421
27436
  }
27422
27437
  ) }),
27423
- props.errorMessage && /* @__PURE__ */ (0, import_jsx_runtime30.jsx)("p", { className: "mt-1 text-xs text-red-500", children: props.errorMessage })
27438
+ props.errorMessage && /* @__PURE__ */ (0, import_jsx_runtime31.jsx)("p", { className: "mt-1 text-xs text-red-500", children: props.errorMessage })
27424
27439
  ] });
27425
27440
  };
27426
27441
  var RadioInput_default = RadioInput;
27427
27442
 
27428
27443
  // src/components/Inputs/MultiCheckbox/MultiCheckbox.tsx
27429
- var import_react15 = require("react");
27430
- var import_jsx_runtime31 = require("react/jsx-runtime");
27444
+ var import_react16 = require("react");
27445
+ var import_jsx_runtime32 = require("react/jsx-runtime");
27431
27446
  var MultiCheckbox = ({
27432
27447
  className,
27433
27448
  style,
@@ -27440,17 +27455,17 @@ var MultiCheckbox = ({
27440
27455
  isDisabled = false
27441
27456
  }) => {
27442
27457
  const list = Array.isArray(data) ? data : [];
27443
- const [value, setValue] = (0, import_react15.useState)(propValue);
27458
+ const [value, setValue] = (0, import_react16.useState)(propValue);
27444
27459
  const options = (list || []).map((item) => ({
27445
27460
  value: item[dataKey || "value"],
27446
27461
  label: item[dataLabel || "label"]
27447
27462
  }));
27448
- (0, import_react15.useEffect)(() => {
27463
+ (0, import_react16.useEffect)(() => {
27449
27464
  if (propValue !== void 0) {
27450
27465
  onChange?.(propValue);
27451
27466
  }
27452
27467
  }, []);
27453
- const handleChange = (0, import_react15.useCallback)(
27468
+ const handleChange = (0, import_react16.useCallback)(
27454
27469
  (key, checked) => {
27455
27470
  setValue((prev) => {
27456
27471
  const newValue = { ...prev, [key]: checked };
@@ -27460,15 +27475,15 @@ var MultiCheckbox = ({
27460
27475
  },
27461
27476
  [onChange]
27462
27477
  );
27463
- return /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)(
27478
+ return /* @__PURE__ */ (0, import_jsx_runtime32.jsxs)(
27464
27479
  "div",
27465
27480
  {
27466
27481
  className: cn("flex flex-col gap-3", className),
27467
27482
  style,
27468
27483
  children: [
27469
- options.length === 0 && /* @__PURE__ */ (0, import_jsx_runtime31.jsx)("p", { className: "text-sm text-gray-500", children: "No options available." }),
27470
- options.map((opt) => /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)("div", { className: "flex items-center space-x-2", children: [
27471
- /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(
27484
+ options.length === 0 && /* @__PURE__ */ (0, import_jsx_runtime32.jsx)("p", { className: "text-sm text-gray-500", children: "No options available." }),
27485
+ options.map((opt) => /* @__PURE__ */ (0, import_jsx_runtime32.jsxs)("div", { className: "flex items-center space-x-2", children: [
27486
+ /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(
27472
27487
  Checkbox,
27473
27488
  {
27474
27489
  id: opt.value,
@@ -27477,7 +27492,7 @@ var MultiCheckbox = ({
27477
27492
  disabled: !isEditable || isDisabled
27478
27493
  }
27479
27494
  ),
27480
- /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(Label2, { htmlFor: opt.value, children: opt.label })
27495
+ /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(Label2, { htmlFor: opt.value, children: opt.label })
27481
27496
  ] }, opt.value))
27482
27497
  ]
27483
27498
  }
@@ -27486,18 +27501,18 @@ var MultiCheckbox = ({
27486
27501
  var MultiCheckbox_default = MultiCheckbox;
27487
27502
 
27488
27503
  // src/components/Inputs/RichText/RichText.tsx
27489
- var import_react17 = require("react");
27504
+ var import_react18 = require("react");
27490
27505
 
27491
27506
  // src/components/Global/TinyMceEditor.tsx
27492
- var import_react16 = require("react");
27507
+ var import_react17 = require("react");
27493
27508
  var import_tinymce_react = require("@tinymce/tinymce-react");
27494
- var import_jsx_runtime32 = require("react/jsx-runtime");
27509
+ var import_jsx_runtime33 = require("react/jsx-runtime");
27495
27510
  function MyEditor({
27496
27511
  value,
27497
27512
  onChange,
27498
27513
  isDefault
27499
27514
  }) {
27500
- const editorRef = (0, import_react16.useRef)(null);
27515
+ const editorRef = (0, import_react17.useRef)(null);
27501
27516
  function stripOuterP(html) {
27502
27517
  const trimmedHtml = html.trim();
27503
27518
  if (!trimmedHtml) return "";
@@ -27509,14 +27524,14 @@ function MyEditor({
27509
27524
  }
27510
27525
  return trimmedHtml;
27511
27526
  }
27512
- const isDefaultToolbar = (0, import_react16.useMemo)(() => {
27527
+ const isDefaultToolbar = (0, import_react17.useMemo)(() => {
27513
27528
  let toolbar = "undo redo | formatselect | bold italic forecolor";
27514
27529
  if (isDefault) {
27515
27530
  toolbar = "undo redo | blocks | bold italic forecolor | alignleft aligncenter alignright alignjustify | bullist numlist outdent indent | removeformat | help";
27516
27531
  }
27517
27532
  return toolbar;
27518
27533
  }, [isDefault]);
27519
- return /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(
27534
+ return /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(
27520
27535
  import_tinymce_react.Editor,
27521
27536
  {
27522
27537
  apiKey: process.env.NEXT_PUBLIC_TINYMCE_API_KEY,
@@ -27560,9 +27575,9 @@ function MyEditor({
27560
27575
  }
27561
27576
 
27562
27577
  // src/components/Inputs/RichText/RichText.tsx
27563
- var import_jsx_runtime33 = require("react/jsx-runtime");
27578
+ var import_jsx_runtime34 = require("react/jsx-runtime");
27564
27579
  function RichText({ className, style, ...props }) {
27565
- (0, import_react17.useEffect)(() => {
27580
+ (0, import_react18.useEffect)(() => {
27566
27581
  if (props.value !== void 0) {
27567
27582
  handleChange?.(props.value);
27568
27583
  }
@@ -27570,7 +27585,7 @@ function RichText({ className, style, ...props }) {
27570
27585
  const handleChange = (content) => {
27571
27586
  props.onChange?.(content);
27572
27587
  };
27573
- return /* @__PURE__ */ (0, import_jsx_runtime33.jsxs)(
27588
+ return /* @__PURE__ */ (0, import_jsx_runtime34.jsxs)(
27574
27589
  "div",
27575
27590
  {
27576
27591
  className: cn(className, props.errorMessage ? "border-red-500" : ""),
@@ -27579,28 +27594,28 @@ function RichText({ className, style, ...props }) {
27579
27594
  borderColor: props.errorMessage ? "#f87171" : style?.borderColor
27580
27595
  },
27581
27596
  children: [
27582
- /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(MyEditor, { onChange: handleChange, value: props.value || "", isDefault: true }),
27583
- props.errorMessage && /* @__PURE__ */ (0, import_jsx_runtime33.jsx)("p", { className: "mt-1 text-xs text-red-500", children: props.errorMessage })
27597
+ /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(MyEditor, { onChange: handleChange, value: props.value || "", isDefault: true }),
27598
+ props.errorMessage && /* @__PURE__ */ (0, import_jsx_runtime34.jsx)("p", { className: "mt-1 text-xs text-red-500", children: props.errorMessage })
27584
27599
  ]
27585
27600
  }
27586
27601
  );
27587
27602
  }
27588
27603
 
27589
27604
  // src/components/Inputs/Dropdown/Dropdown.tsx
27590
- var import_react18 = require("react");
27605
+ var import_react19 = require("react");
27591
27606
 
27592
27607
  // src/components/ui/select.tsx
27593
27608
  var SelectPrimitive = __toESM(require("@radix-ui/react-select"));
27594
- var import_jsx_runtime34 = require("react/jsx-runtime");
27609
+ var import_jsx_runtime35 = require("react/jsx-runtime");
27595
27610
  function Select({
27596
27611
  ...props
27597
27612
  }) {
27598
- return /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(SelectPrimitive.Root, { "data-slot": "select", ...props });
27613
+ return /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(SelectPrimitive.Root, { "data-slot": "select", ...props });
27599
27614
  }
27600
27615
  function SelectValue({
27601
27616
  ...props
27602
27617
  }) {
27603
- return /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(SelectPrimitive.Value, { "data-slot": "select-value", ...props });
27618
+ return /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(SelectPrimitive.Value, { "data-slot": "select-value", ...props });
27604
27619
  }
27605
27620
  function SelectTrigger({
27606
27621
  className,
@@ -27608,7 +27623,7 @@ function SelectTrigger({
27608
27623
  children,
27609
27624
  ...props
27610
27625
  }) {
27611
- return /* @__PURE__ */ (0, import_jsx_runtime34.jsxs)(
27626
+ return /* @__PURE__ */ (0, import_jsx_runtime35.jsxs)(
27612
27627
  SelectPrimitive.Trigger,
27613
27628
  {
27614
27629
  "data-slot": "select-trigger",
@@ -27620,7 +27635,7 @@ function SelectTrigger({
27620
27635
  ...props,
27621
27636
  children: [
27622
27637
  children,
27623
- /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(SelectPrimitive.Icon, { asChild: true, children: /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(ChevronDown, { className: "size-4 opacity-50" }) })
27638
+ /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(SelectPrimitive.Icon, { asChild: true, children: /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(ChevronDown, { className: "size-4 opacity-50" }) })
27624
27639
  ]
27625
27640
  }
27626
27641
  );
@@ -27631,7 +27646,7 @@ function SelectContent({
27631
27646
  position = "popper",
27632
27647
  ...props
27633
27648
  }) {
27634
- return /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(SelectPrimitive.Portal, { children: /* @__PURE__ */ (0, import_jsx_runtime34.jsxs)(
27649
+ return /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(SelectPrimitive.Portal, { children: /* @__PURE__ */ (0, import_jsx_runtime35.jsxs)(
27635
27650
  SelectPrimitive.Content,
27636
27651
  {
27637
27652
  "data-slot": "select-content",
@@ -27643,8 +27658,8 @@ function SelectContent({
27643
27658
  position,
27644
27659
  ...props,
27645
27660
  children: [
27646
- /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(SelectScrollUpButton, {}),
27647
- /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(
27661
+ /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(SelectScrollUpButton, {}),
27662
+ /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(
27648
27663
  SelectPrimitive.Viewport,
27649
27664
  {
27650
27665
  className: cn(
@@ -27654,7 +27669,7 @@ function SelectContent({
27654
27669
  children
27655
27670
  }
27656
27671
  ),
27657
- /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(SelectScrollDownButton, {})
27672
+ /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(SelectScrollDownButton, {})
27658
27673
  ]
27659
27674
  }
27660
27675
  ) });
@@ -27664,7 +27679,7 @@ function SelectItem({
27664
27679
  children,
27665
27680
  ...props
27666
27681
  }) {
27667
- return /* @__PURE__ */ (0, import_jsx_runtime34.jsxs)(
27682
+ return /* @__PURE__ */ (0, import_jsx_runtime35.jsxs)(
27668
27683
  SelectPrimitive.Item,
27669
27684
  {
27670
27685
  "data-slot": "select-item",
@@ -27674,8 +27689,8 @@ function SelectItem({
27674
27689
  ),
27675
27690
  ...props,
27676
27691
  children: [
27677
- /* @__PURE__ */ (0, import_jsx_runtime34.jsx)("span", { className: "absolute right-2 flex size-3.5 items-center justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(SelectPrimitive.ItemIndicator, { children: /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(Check, { className: "size-4" }) }) }),
27678
- /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(SelectPrimitive.ItemText, { children })
27692
+ /* @__PURE__ */ (0, import_jsx_runtime35.jsx)("span", { className: "absolute right-2 flex size-3.5 items-center justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(SelectPrimitive.ItemIndicator, { children: /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(Check, { className: "size-4" }) }) }),
27693
+ /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(SelectPrimitive.ItemText, { children })
27679
27694
  ]
27680
27695
  }
27681
27696
  );
@@ -27684,7 +27699,7 @@ function SelectScrollUpButton({
27684
27699
  className,
27685
27700
  ...props
27686
27701
  }) {
27687
- return /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(
27702
+ return /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(
27688
27703
  SelectPrimitive.ScrollUpButton,
27689
27704
  {
27690
27705
  "data-slot": "select-scroll-up-button",
@@ -27693,7 +27708,7 @@ function SelectScrollUpButton({
27693
27708
  className
27694
27709
  ),
27695
27710
  ...props,
27696
- children: /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(ChevronUp, { className: "size-4" })
27711
+ children: /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(ChevronUp, { className: "size-4" })
27697
27712
  }
27698
27713
  );
27699
27714
  }
@@ -27701,7 +27716,7 @@ function SelectScrollDownButton({
27701
27716
  className,
27702
27717
  ...props
27703
27718
  }) {
27704
- return /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(
27719
+ return /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(
27705
27720
  SelectPrimitive.ScrollDownButton,
27706
27721
  {
27707
27722
  "data-slot": "select-scroll-down-button",
@@ -27710,20 +27725,20 @@ function SelectScrollDownButton({
27710
27725
  className
27711
27726
  ),
27712
27727
  ...props,
27713
- children: /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(ChevronDown, { className: "size-4" })
27728
+ children: /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(ChevronDown, { className: "size-4" })
27714
27729
  }
27715
27730
  );
27716
27731
  }
27717
27732
 
27718
27733
  // src/components/Inputs/Dropdown/Dropdown.tsx
27719
- var import_jsx_runtime35 = require("react/jsx-runtime");
27734
+ var import_jsx_runtime36 = require("react/jsx-runtime");
27720
27735
  var Dropdown = ({ className, style, ...props }) => {
27721
27736
  const list = Array.isArray(props?.data) ? props.data : [];
27722
27737
  const placeholder = props.placeholder ? props.placeholder : "Placeholder text";
27723
27738
  const isEditable = props.isEditable ?? true;
27724
27739
  const isDisabled = props.isDisabled ?? false;
27725
27740
  const isReadonly = props.isReadonly ?? false;
27726
- (0, import_react18.useEffect)(() => {
27741
+ (0, import_react19.useEffect)(() => {
27727
27742
  if (props.value !== void 0) {
27728
27743
  handleChange(props.value);
27729
27744
  }
@@ -27737,9 +27752,9 @@ var Dropdown = ({ className, style, ...props }) => {
27737
27752
  value: item[dataKey],
27738
27753
  label: item[dataLabel]
27739
27754
  }));
27740
- return /* @__PURE__ */ (0, import_jsx_runtime35.jsxs)(import_jsx_runtime35.Fragment, { children: [
27741
- /* @__PURE__ */ (0, import_jsx_runtime35.jsxs)(Select, { name: props.name, value: props.value || "", onValueChange: handleChange, disabled: isDisabled || !isEditable, children: [
27742
- /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(
27755
+ return /* @__PURE__ */ (0, import_jsx_runtime36.jsxs)(import_jsx_runtime36.Fragment, { children: [
27756
+ /* @__PURE__ */ (0, import_jsx_runtime36.jsxs)(Select, { name: props.name, value: props.value || "", onValueChange: handleChange, disabled: isDisabled || !isEditable, children: [
27757
+ /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(
27743
27758
  SelectTrigger,
27744
27759
  {
27745
27760
  id: props.name || "select-field",
@@ -27749,31 +27764,31 @@ var Dropdown = ({ className, style, ...props }) => {
27749
27764
  borderColor: props.errorMessage ? "#f87171" : style?.borderColor
27750
27765
  },
27751
27766
  "aria-readonly": isReadonly,
27752
- children: /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(SelectValue, { placeholder })
27767
+ children: /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(SelectValue, { placeholder })
27753
27768
  }
27754
27769
  ),
27755
- /* @__PURE__ */ (0, import_jsx_runtime35.jsxs)(SelectContent, { children: [
27756
- props.dataLoading && /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(SelectItem, { value: "none", disabled: true, children: "Loading..." }),
27757
- !props.dataLoading && options.length === 0 && /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(SelectItem, { value: "none", disabled: true, children: "No options" }),
27758
- options.map((opt) => /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(SelectItem, { value: opt.value, children: opt.label }, opt.value))
27770
+ /* @__PURE__ */ (0, import_jsx_runtime36.jsxs)(SelectContent, { children: [
27771
+ props.dataLoading && /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(SelectItem, { value: "none", disabled: true, children: "Loading..." }),
27772
+ !props.dataLoading && options.length === 0 && /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(SelectItem, { value: "none", disabled: true, children: "No options" }),
27773
+ options.map((opt) => /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(SelectItem, { value: opt.value, children: opt.label }, opt.value))
27759
27774
  ] })
27760
27775
  ] }),
27761
- props.errorMessage && /* @__PURE__ */ (0, import_jsx_runtime35.jsx)("p", { className: "mt-1 text-xs text-red-500", children: props.errorMessage })
27776
+ props.errorMessage && /* @__PURE__ */ (0, import_jsx_runtime36.jsx)("p", { className: "mt-1 text-xs text-red-500", children: props.errorMessage })
27762
27777
  ] });
27763
27778
  };
27764
27779
  var Dropdown_default = Dropdown;
27765
27780
 
27766
27781
  // src/components/Inputs/SwitchToggle/SwitchToggle.tsx
27767
- var import_react19 = require("react");
27782
+ var import_react20 = require("react");
27768
27783
 
27769
27784
  // src/components/ui/switch.tsx
27770
27785
  var SwitchPrimitive = __toESM(require("@radix-ui/react-switch"));
27771
- var import_jsx_runtime36 = require("react/jsx-runtime");
27786
+ var import_jsx_runtime37 = require("react/jsx-runtime");
27772
27787
  function Switch({
27773
27788
  className,
27774
27789
  ...props
27775
27790
  }) {
27776
- return /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(
27791
+ return /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(
27777
27792
  SwitchPrimitive.Root,
27778
27793
  {
27779
27794
  "data-slot": "switch",
@@ -27782,7 +27797,7 @@ function Switch({
27782
27797
  className
27783
27798
  ),
27784
27799
  ...props,
27785
- children: /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(
27800
+ children: /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(
27786
27801
  SwitchPrimitive.Thumb,
27787
27802
  {
27788
27803
  "data-slot": "switch-thumb",
@@ -27796,11 +27811,11 @@ function Switch({
27796
27811
  }
27797
27812
 
27798
27813
  // src/components/Inputs/SwitchToggle/SwitchToggle.tsx
27799
- var import_jsx_runtime37 = require("react/jsx-runtime");
27814
+ var import_jsx_runtime38 = require("react/jsx-runtime");
27800
27815
  var SwitchToggle = ({ className, style, ...props }) => {
27801
27816
  const isEditable = props.isEditable ?? true;
27802
27817
  const isDisabled = props.isDisabled ?? false;
27803
- (0, import_react19.useEffect)(() => {
27818
+ (0, import_react20.useEffect)(() => {
27804
27819
  if (props.value !== void 0) {
27805
27820
  handleChange?.(props.value);
27806
27821
  }
@@ -27808,9 +27823,9 @@ var SwitchToggle = ({ className, style, ...props }) => {
27808
27823
  const handleChange = (value) => {
27809
27824
  props.onChange?.(value);
27810
27825
  };
27811
- return /* @__PURE__ */ (0, import_jsx_runtime37.jsxs)(import_jsx_runtime37.Fragment, { children: [
27812
- /* @__PURE__ */ (0, import_jsx_runtime37.jsx)("div", { className, style, children: /* @__PURE__ */ (0, import_jsx_runtime37.jsxs)("div", { className: "flex items-center space-x-2 mb-2", children: [
27813
- /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(
27826
+ return /* @__PURE__ */ (0, import_jsx_runtime38.jsxs)(import_jsx_runtime38.Fragment, { children: [
27827
+ /* @__PURE__ */ (0, import_jsx_runtime38.jsx)("div", { className, style, children: /* @__PURE__ */ (0, import_jsx_runtime38.jsxs)("div", { className: "flex items-center space-x-2 mb-2", children: [
27828
+ /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(
27814
27829
  Switch,
27815
27830
  {
27816
27831
  id: props.name || "switch",
@@ -27819,23 +27834,23 @@ var SwitchToggle = ({ className, style, ...props }) => {
27819
27834
  disabled: isDisabled || !isEditable
27820
27835
  }
27821
27836
  ),
27822
- /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(Label2, { htmlFor: props.name || "switch", children: props.text })
27837
+ /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(Label2, { htmlFor: props.name || "switch", children: props.text })
27823
27838
  ] }) }),
27824
- props.errorMessage && /* @__PURE__ */ (0, import_jsx_runtime37.jsx)("p", { className: "mt-1 text-xs text-red-500", children: props.errorMessage })
27839
+ props.errorMessage && /* @__PURE__ */ (0, import_jsx_runtime38.jsx)("p", { className: "mt-1 text-xs text-red-500", children: props.errorMessage })
27825
27840
  ] });
27826
27841
  };
27827
27842
  var SwitchToggle_default = SwitchToggle;
27828
27843
 
27829
27844
  // src/components/Inputs/PhoneInput/PhoneInput.tsx
27830
- var import_react20 = require("react");
27845
+ var import_react21 = require("react");
27831
27846
  var import_react_international_phone = require("react-international-phone");
27832
27847
  var import_style = require("react-international-phone/style.css");
27833
- var import_jsx_runtime38 = require("react/jsx-runtime");
27848
+ var import_jsx_runtime39 = require("react/jsx-runtime");
27834
27849
  var PhoneInput = ({ className, style, ...props }) => {
27835
27850
  const placeholder = props.placeholder ?? "Enter phone number";
27836
27851
  const isEditable = props.isEditable ?? true;
27837
27852
  const isDisabled = props.isDisabled ?? false;
27838
- (0, import_react20.useEffect)(() => {
27853
+ (0, import_react21.useEffect)(() => {
27839
27854
  if (props.value !== void 0) {
27840
27855
  handleChange?.(props.value);
27841
27856
  }
@@ -27843,8 +27858,8 @@ var PhoneInput = ({ className, style, ...props }) => {
27843
27858
  const handleChange = (val) => {
27844
27859
  props.onChange?.(val);
27845
27860
  };
27846
- return /* @__PURE__ */ (0, import_jsx_runtime38.jsxs)(import_jsx_runtime38.Fragment, { children: [
27847
- /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(
27861
+ return /* @__PURE__ */ (0, import_jsx_runtime39.jsxs)(import_jsx_runtime39.Fragment, { children: [
27862
+ /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(
27848
27863
  import_react_international_phone.PhoneInput,
27849
27864
  {
27850
27865
  defaultCountry: "in",
@@ -27868,21 +27883,21 @@ var PhoneInput = ({ className, style, ...props }) => {
27868
27883
  disabled: isDisabled || !isEditable
27869
27884
  }
27870
27885
  ),
27871
- props.errorMessage && /* @__PURE__ */ (0, import_jsx_runtime38.jsx)("p", { className: "mt-1 text-xs text-red-500", children: props.errorMessage })
27886
+ props.errorMessage && /* @__PURE__ */ (0, import_jsx_runtime39.jsx)("p", { className: "mt-1 text-xs text-red-500", children: props.errorMessage })
27872
27887
  ] });
27873
27888
  };
27874
27889
  var PhoneInput_default = PhoneInput;
27875
27890
 
27876
27891
  // src/components/Inputs/SearchInput/SearchInput.tsx
27877
- var import_react21 = require("react");
27878
- var import_jsx_runtime39 = require("react/jsx-runtime");
27892
+ var import_react22 = require("react");
27893
+ var import_jsx_runtime40 = require("react/jsx-runtime");
27879
27894
  var SearchInput = ({ className, style, ...props }) => {
27880
27895
  const placeholder = props.placeholder ?? "Placeholder text";
27881
27896
  const isEditable = props.isEditable ?? true;
27882
27897
  const isDisabled = props.isDisabled ?? false;
27883
27898
  const isReadonly = props.isReadonly ?? false;
27884
27899
  const isAutocomplete = props.isAutocomplete ?? false;
27885
- (0, import_react21.useEffect)(() => {
27900
+ (0, import_react22.useEffect)(() => {
27886
27901
  if (props.value !== void 0) {
27887
27902
  const e = { target: { value: props.value } };
27888
27903
  handleChange?.(e);
@@ -27891,40 +27906,37 @@ var SearchInput = ({ className, style, ...props }) => {
27891
27906
  const handleChange = (e) => {
27892
27907
  props.onChange?.(e);
27893
27908
  };
27894
- return /* @__PURE__ */ (0, import_jsx_runtime39.jsxs)(import_jsx_runtime39.Fragment, { children: [
27895
- /* @__PURE__ */ (0, import_jsx_runtime39.jsxs)("div", { className: "flex justify-start items-center relative", children: [
27896
- /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(Search, { className: "absolute left-3 top-1/2 h-4 w-4 -translate-y-1/2 text-[#BDBDBD]" }),
27897
- /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(
27898
- Input,
27899
- {
27900
- type: "text",
27901
- id: props.name || "text-field",
27902
- name: props.name,
27903
- value: props.value || "",
27904
- className: cn(className, props.errorMessage ? "border-red-500" : ""),
27905
- style: {
27906
- ...style,
27907
- borderColor: props.errorMessage ? "#f87171" : style?.borderColor
27908
- },
27909
- autoComplete: isAutocomplete ? "on" : "off",
27910
- placeholder,
27911
- onChange: handleChange,
27912
- disabled: isDisabled || !isEditable,
27913
- readOnly: isReadonly
27914
- }
27915
- )
27916
- ] }),
27917
- props.errorMessage && /* @__PURE__ */ (0, import_jsx_runtime39.jsx)("p", { className: "mt-1 text-xs text-red-500", children: props.errorMessage })
27909
+ return /* @__PURE__ */ (0, import_jsx_runtime40.jsxs)(import_jsx_runtime40.Fragment, { children: [
27910
+ /* @__PURE__ */ (0, import_jsx_runtime40.jsx)("div", { className: "flex justify-start items-center relative", children: /* @__PURE__ */ (0, import_jsx_runtime40.jsx)(
27911
+ Input,
27912
+ {
27913
+ type: "text",
27914
+ id: props.name || "text-field",
27915
+ name: props.name,
27916
+ value: props.value || "",
27917
+ className: cn(className, props.errorMessage ? "border-red-500" : ""),
27918
+ style: {
27919
+ ...style,
27920
+ borderColor: props.errorMessage ? "#f87171" : style?.borderColor
27921
+ },
27922
+ autoComplete: isAutocomplete ? "on" : "off",
27923
+ placeholder,
27924
+ onChange: handleChange,
27925
+ disabled: isDisabled || !isEditable,
27926
+ readOnly: isReadonly
27927
+ }
27928
+ ) }),
27929
+ props.errorMessage && /* @__PURE__ */ (0, import_jsx_runtime40.jsx)("p", { className: "mt-1 text-xs text-red-500", children: props.errorMessage })
27918
27930
  ] });
27919
27931
  };
27920
27932
  var SearchInput_default = SearchInput;
27921
27933
 
27922
27934
  // src/components/Inputs/FileInput/FileInput.tsx
27923
- var import_react22 = require("react");
27924
- var import_jsx_runtime40 = require("react/jsx-runtime");
27935
+ var import_react23 = require("react");
27936
+ var import_jsx_runtime41 = require("react/jsx-runtime");
27925
27937
  var FileInput2 = ({ className, style, ...props }) => {
27926
27938
  const placeholder = props.placeholder ?? "Placeholder text";
27927
- (0, import_react22.useEffect)(() => {
27939
+ (0, import_react23.useEffect)(() => {
27928
27940
  if (props.value !== void 0) {
27929
27941
  const e = { target: { value: props.value } };
27930
27942
  handleChange?.(e);
@@ -27933,8 +27945,8 @@ var FileInput2 = ({ className, style, ...props }) => {
27933
27945
  const handleChange = (e) => {
27934
27946
  props.onChange?.(e);
27935
27947
  };
27936
- return /* @__PURE__ */ (0, import_jsx_runtime40.jsxs)("div", { className: "d-flex items-center relative align-middle", children: [
27937
- /* @__PURE__ */ (0, import_jsx_runtime40.jsx)(
27948
+ return /* @__PURE__ */ (0, import_jsx_runtime41.jsxs)("div", { className: "d-flex items-center relative align-middle", children: [
27949
+ /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(
27938
27950
  Input,
27939
27951
  {
27940
27952
  type: "file",
@@ -27951,14 +27963,14 @@ var FileInput2 = ({ className, style, ...props }) => {
27951
27963
  onChange: handleChange
27952
27964
  }
27953
27965
  ),
27954
- props.errorMessage && /* @__PURE__ */ (0, import_jsx_runtime40.jsx)("p", { className: "mt-1 text-xs text-red-500", children: props.errorMessage })
27966
+ props.errorMessage && /* @__PURE__ */ (0, import_jsx_runtime41.jsx)("p", { className: "mt-1 text-xs text-red-500", children: props.errorMessage })
27955
27967
  ] });
27956
27968
  };
27957
27969
  var FileInput_default = FileInput2;
27958
27970
 
27959
27971
  // src/components/Inputs/DatePicker/DatePicker.tsx
27960
- var import_react23 = require("react");
27961
- var import_jsx_runtime41 = require("react/jsx-runtime");
27972
+ var import_react24 = require("react");
27973
+ var import_jsx_runtime42 = require("react/jsx-runtime");
27962
27974
  function DatePicker({ className, style, ...props }) {
27963
27975
  const placeholder = props.placeholder ?? "Placeholder text";
27964
27976
  const minimumDate = props.minimumDate ?? "none";
@@ -27983,7 +27995,7 @@ function DatePicker({ className, style, ...props }) {
27983
27995
  };
27984
27996
  const minDate = resolveDate(minimumDate, customMinimumDate);
27985
27997
  const maxDate = resolveDate(maximumDate, customMaximumDate);
27986
- (0, import_react23.useEffect)(() => {
27998
+ (0, import_react24.useEffect)(() => {
27987
27999
  if (props.value !== void 0) {
27988
28000
  handleChange(props.value);
27989
28001
  }
@@ -27995,47 +28007,44 @@ function DatePicker({ className, style, ...props }) {
27995
28007
  if (!value) return "";
27996
28008
  return new Date(value).toISOString().split("T")[0];
27997
28009
  };
27998
- return /* @__PURE__ */ (0, import_jsx_runtime41.jsxs)(import_jsx_runtime41.Fragment, { children: [
27999
- /* @__PURE__ */ (0, import_jsx_runtime41.jsxs)("div", { className: "flex justify-start items-center relative", children: [
28000
- /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(Calendar, { className: "absolute left-3 top-1/2 h-4 w-4 -translate-y-1/2 text-[#BDBDBD]" }),
28001
- /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(
28002
- Input,
28003
- {
28004
- type: "date",
28005
- id: "date",
28006
- autoComplete: isAutocomplete ? "on" : "off",
28007
- onChange: handleChange,
28008
- disabled: isDisabled || !isEditable,
28009
- name: props.name,
28010
- value: toDateInputValue(props.value),
28011
- className: cn(
28012
- className,
28013
- props.errorMessage ? "border-red-500" : "",
28014
- "appearance-auto"
28015
- ),
28016
- style: {
28017
- ...style,
28018
- borderColor: props.errorMessage ? "#f87171" : style?.borderColor
28019
- },
28020
- readOnly: isReadonly,
28021
- placeholder,
28022
- min: minDate,
28023
- max: maxDate
28024
- }
28025
- )
28026
- ] }),
28027
- props.errorMessage && /* @__PURE__ */ (0, import_jsx_runtime41.jsx)("p", { className: "mt-1 text-xs text-red-500", children: props.errorMessage })
28010
+ return /* @__PURE__ */ (0, import_jsx_runtime42.jsxs)(import_jsx_runtime42.Fragment, { children: [
28011
+ /* @__PURE__ */ (0, import_jsx_runtime42.jsx)("div", { className: "flex justify-start items-center relative", children: /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(
28012
+ Input,
28013
+ {
28014
+ type: "date",
28015
+ id: "date",
28016
+ autoComplete: isAutocomplete ? "on" : "off",
28017
+ onChange: handleChange,
28018
+ disabled: isDisabled || !isEditable,
28019
+ name: props.name,
28020
+ value: toDateInputValue(props.value),
28021
+ className: cn(
28022
+ className,
28023
+ props.errorMessage ? "border-red-500" : "",
28024
+ "appearance-auto"
28025
+ ),
28026
+ style: {
28027
+ ...style,
28028
+ borderColor: props.errorMessage ? "#f87171" : style?.borderColor
28029
+ },
28030
+ readOnly: isReadonly,
28031
+ placeholder,
28032
+ min: minDate,
28033
+ max: maxDate
28034
+ }
28035
+ ) }),
28036
+ props.errorMessage && /* @__PURE__ */ (0, import_jsx_runtime42.jsx)("p", { className: "mt-1 text-xs text-red-500", children: props.errorMessage })
28028
28037
  ] });
28029
28038
  }
28030
28039
 
28031
28040
  // src/components/Inputs/DateRange/DateRange.tsx
28032
- var import_react24 = __toESM(require("react"));
28041
+ var import_react25 = __toESM(require("react"));
28033
28042
  var import_date_fns = require("date-fns");
28034
28043
 
28035
28044
  // src/components/ui/calendar.tsx
28036
- var React5 = __toESM(require("react"));
28045
+ var React6 = __toESM(require("react"));
28037
28046
  var import_react_day_picker = require("react-day-picker");
28038
- var import_jsx_runtime42 = require("react/jsx-runtime");
28047
+ var import_jsx_runtime43 = require("react/jsx-runtime");
28039
28048
  function Calendar2({
28040
28049
  className,
28041
28050
  classNames,
@@ -28047,7 +28056,7 @@ function Calendar2({
28047
28056
  ...props
28048
28057
  }) {
28049
28058
  const defaultClassNames = (0, import_react_day_picker.getDefaultClassNames)();
28050
- return /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(
28059
+ return /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(
28051
28060
  import_react_day_picker.DayPicker,
28052
28061
  {
28053
28062
  showOutsideDays,
@@ -28146,7 +28155,7 @@ function Calendar2({
28146
28155
  },
28147
28156
  components: {
28148
28157
  Root: ({ className: className2, rootRef, ...props2 }) => {
28149
- return /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(
28158
+ return /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(
28150
28159
  "div",
28151
28160
  {
28152
28161
  "data-slot": "calendar",
@@ -28158,10 +28167,10 @@ function Calendar2({
28158
28167
  },
28159
28168
  Chevron: ({ className: className2, orientation, ...props2 }) => {
28160
28169
  if (orientation === "left") {
28161
- return /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(ChevronLeft, { className: cn("size-4", className2), ...props2 });
28170
+ return /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(ChevronLeft, { className: cn("size-4", className2), ...props2 });
28162
28171
  }
28163
28172
  if (orientation === "right") {
28164
- return /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(
28173
+ return /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(
28165
28174
  ChevronRight,
28166
28175
  {
28167
28176
  className: cn("size-4", className2),
@@ -28169,11 +28178,11 @@ function Calendar2({
28169
28178
  }
28170
28179
  );
28171
28180
  }
28172
- return /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(ChevronDown, { className: cn("size-4", className2), ...props2 });
28181
+ return /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(ChevronDown, { className: cn("size-4", className2), ...props2 });
28173
28182
  },
28174
28183
  DayButton: CalendarDayButton,
28175
28184
  WeekNumber: ({ children, ...props2 }) => {
28176
- return /* @__PURE__ */ (0, import_jsx_runtime42.jsx)("td", { ...props2, children: /* @__PURE__ */ (0, import_jsx_runtime42.jsx)("div", { className: "flex size-(--cell-size) items-center justify-center text-center", children }) });
28185
+ return /* @__PURE__ */ (0, import_jsx_runtime43.jsx)("td", { ...props2, children: /* @__PURE__ */ (0, import_jsx_runtime43.jsx)("div", { className: "flex size-(--cell-size) items-center justify-center text-center", children }) });
28177
28186
  },
28178
28187
  ...components
28179
28188
  },
@@ -28188,11 +28197,11 @@ function CalendarDayButton({
28188
28197
  ...props
28189
28198
  }) {
28190
28199
  const defaultClassNames = (0, import_react_day_picker.getDefaultClassNames)();
28191
- const ref = React5.useRef(null);
28192
- React5.useEffect(() => {
28200
+ const ref = React6.useRef(null);
28201
+ React6.useEffect(() => {
28193
28202
  if (modifiers.focused) ref.current?.focus();
28194
28203
  }, [modifiers.focused]);
28195
- return /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(
28204
+ return /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(
28196
28205
  Button,
28197
28206
  {
28198
28207
  ref,
@@ -28215,16 +28224,16 @@ function CalendarDayButton({
28215
28224
 
28216
28225
  // src/components/ui/popover.tsx
28217
28226
  var PopoverPrimitive = __toESM(require("@radix-ui/react-popover"));
28218
- var import_jsx_runtime43 = require("react/jsx-runtime");
28227
+ var import_jsx_runtime44 = require("react/jsx-runtime");
28219
28228
  function Popover({
28220
28229
  ...props
28221
28230
  }) {
28222
- return /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(PopoverPrimitive.Root, { "data-slot": "popover", ...props });
28231
+ return /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(PopoverPrimitive.Root, { "data-slot": "popover", ...props });
28223
28232
  }
28224
28233
  function PopoverTrigger({
28225
28234
  ...props
28226
28235
  }) {
28227
- return /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(PopoverPrimitive.Trigger, { "data-slot": "popover-trigger", ...props });
28236
+ return /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(PopoverPrimitive.Trigger, { "data-slot": "popover-trigger", ...props });
28228
28237
  }
28229
28238
  function PopoverContent({
28230
28239
  className,
@@ -28232,7 +28241,7 @@ function PopoverContent({
28232
28241
  sideOffset = 4,
28233
28242
  ...props
28234
28243
  }) {
28235
- return /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(PopoverPrimitive.Portal, { children: /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(
28244
+ return /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(PopoverPrimitive.Portal, { children: /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(
28236
28245
  PopoverPrimitive.Content,
28237
28246
  {
28238
28247
  "data-slot": "popover-content",
@@ -28248,16 +28257,16 @@ function PopoverContent({
28248
28257
  }
28249
28258
 
28250
28259
  // src/components/Inputs/DateRange/DateRange.tsx
28251
- var import_jsx_runtime44 = require("react/jsx-runtime");
28260
+ var import_jsx_runtime45 = require("react/jsx-runtime");
28252
28261
  var DateRange = ({ className, style, ...props }) => {
28253
28262
  const isDateRange = (val) => !!val && val.from instanceof Date;
28254
- const [date, setDate] = import_react24.default.useState(
28263
+ const [date, setDate] = import_react25.default.useState(
28255
28264
  isDateRange(props.value) ? props.value : {
28256
28265
  from: /* @__PURE__ */ new Date(),
28257
28266
  to: (0, import_date_fns.addDays)(/* @__PURE__ */ new Date(), 7)
28258
28267
  }
28259
28268
  );
28260
- (0, import_react24.useEffect)(() => {
28269
+ (0, import_react25.useEffect)(() => {
28261
28270
  if (props.value && isDateRange(props.value)) {
28262
28271
  handleChange?.(props.value);
28263
28272
  }
@@ -28268,9 +28277,9 @@ var DateRange = ({ className, style, ...props }) => {
28268
28277
  props.onChange?.(value);
28269
28278
  }
28270
28279
  };
28271
- return /* @__PURE__ */ (0, import_jsx_runtime44.jsxs)(import_jsx_runtime44.Fragment, { children: [
28272
- /* @__PURE__ */ (0, import_jsx_runtime44.jsx)("div", { className, style, children: /* @__PURE__ */ (0, import_jsx_runtime44.jsxs)(Popover, { children: [
28273
- /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(PopoverTrigger, { asChild: true, children: /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(
28280
+ return /* @__PURE__ */ (0, import_jsx_runtime45.jsxs)(import_jsx_runtime45.Fragment, { children: [
28281
+ /* @__PURE__ */ (0, import_jsx_runtime45.jsx)("div", { className, style, children: /* @__PURE__ */ (0, import_jsx_runtime45.jsxs)(Popover, { children: [
28282
+ /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(PopoverTrigger, { asChild: true, children: /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(
28274
28283
  Button,
28275
28284
  {
28276
28285
  id: "date",
@@ -28279,15 +28288,15 @@ var DateRange = ({ className, style, ...props }) => {
28279
28288
  "w-full justify-start text-left font-normal text-[11px] border-[#BDBDBD]",
28280
28289
  !date && "text-muted-foreground"
28281
28290
  ),
28282
- children: date?.from ? date.to ? /* @__PURE__ */ (0, import_jsx_runtime44.jsxs)(import_jsx_runtime44.Fragment, { children: [
28291
+ children: date?.from ? date.to ? /* @__PURE__ */ (0, import_jsx_runtime45.jsxs)(import_jsx_runtime45.Fragment, { children: [
28283
28292
  (0, import_date_fns.format)(date.from, "LLL dd, y"),
28284
28293
  " -",
28285
28294
  " ",
28286
28295
  (0, import_date_fns.format)(date.to, "LLL dd, y")
28287
- ] }) : (0, import_date_fns.format)(date.from, "LLL dd, y") : /* @__PURE__ */ (0, import_jsx_runtime44.jsx)("span", { children: "Pick a date range" })
28296
+ ] }) : (0, import_date_fns.format)(date.from, "LLL dd, y") : /* @__PURE__ */ (0, import_jsx_runtime45.jsx)("span", { children: "Pick a date range" })
28288
28297
  }
28289
28298
  ) }),
28290
- /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(PopoverContent, { className: "w-auto p-0", align: "start", children: /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(
28299
+ /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(PopoverContent, { className: "w-auto p-0", align: "start", children: /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(
28291
28300
  Calendar2,
28292
28301
  {
28293
28302
  mode: "range",
@@ -28298,21 +28307,21 @@ var DateRange = ({ className, style, ...props }) => {
28298
28307
  }
28299
28308
  ) })
28300
28309
  ] }) }),
28301
- props.errorMessage && /* @__PURE__ */ (0, import_jsx_runtime44.jsx)("p", { className: "mt-1 text-xs text-red-500", children: props.errorMessage })
28310
+ props.errorMessage && /* @__PURE__ */ (0, import_jsx_runtime45.jsx)("p", { className: "mt-1 text-xs text-red-500", children: props.errorMessage })
28302
28311
  ] });
28303
28312
  };
28304
28313
  var DateRange_default = DateRange;
28305
28314
 
28306
28315
  // src/components/Inputs/TextInputGroup/TextInputGroup.tsx
28307
- var import_react25 = require("react");
28308
- var import_jsx_runtime45 = require("react/jsx-runtime");
28316
+ var import_react26 = require("react");
28317
+ var import_jsx_runtime46 = require("react/jsx-runtime");
28309
28318
  var TextInputGroup = ({ className, style, prepend, append, ...props }) => {
28310
28319
  const placeholder = props.placeholder ?? "Placeholder text";
28311
28320
  const isEditable = props.isEditable ?? true;
28312
28321
  const isDisabled = props.isDisabled ?? false;
28313
28322
  const isReadonly = props.isReadonly ?? false;
28314
28323
  const isAutocomplete = props.isAutocomplete ?? false;
28315
- (0, import_react25.useEffect)(() => {
28324
+ (0, import_react26.useEffect)(() => {
28316
28325
  if (props.value !== void 0) {
28317
28326
  const e = { target: { value: props.value } };
28318
28327
  handleChange?.(e);
@@ -28321,8 +28330,8 @@ var TextInputGroup = ({ className, style, prepend, append, ...props }) => {
28321
28330
  const handleChange = (e) => {
28322
28331
  props.onChange?.(e);
28323
28332
  };
28324
- return /* @__PURE__ */ (0, import_jsx_runtime45.jsxs)(import_jsx_runtime45.Fragment, { children: [
28325
- /* @__PURE__ */ (0, import_jsx_runtime45.jsxs)(
28333
+ return /* @__PURE__ */ (0, import_jsx_runtime46.jsxs)(import_jsx_runtime46.Fragment, { children: [
28334
+ /* @__PURE__ */ (0, import_jsx_runtime46.jsxs)(
28326
28335
  "div",
28327
28336
  {
28328
28337
  className: cn(
@@ -28332,8 +28341,8 @@ var TextInputGroup = ({ className, style, prepend, append, ...props }) => {
28332
28341
  props.errorMessage ? "border-red-500" : ""
28333
28342
  ),
28334
28343
  children: [
28335
- prepend && /* @__PURE__ */ (0, import_jsx_runtime45.jsx)("div", { className: "px-3 flex items-center bg-gray-500 text-white h-10 rounded-l-md", children: prepend }),
28336
- /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(
28344
+ prepend && /* @__PURE__ */ (0, import_jsx_runtime46.jsx)("div", { className: "px-3 flex items-center bg-gray-500 text-white h-10 rounded-l-md", children: prepend }),
28345
+ /* @__PURE__ */ (0, import_jsx_runtime46.jsx)(
28337
28346
  Input,
28338
28347
  {
28339
28348
  id: props.name || "prepend-input",
@@ -28355,39 +28364,39 @@ var TextInputGroup = ({ className, style, prepend, append, ...props }) => {
28355
28364
  readOnly: isReadonly
28356
28365
  }
28357
28366
  ),
28358
- append && /* @__PURE__ */ (0, import_jsx_runtime45.jsx)("div", { className: "px-3 flex items-center bg-gray-500 text-white h-10 rounded-r-md", children: append })
28367
+ append && /* @__PURE__ */ (0, import_jsx_runtime46.jsx)("div", { className: "px-3 flex items-center bg-gray-500 text-white h-10 rounded-r-md", children: append })
28359
28368
  ]
28360
28369
  }
28361
28370
  ),
28362
- props.errorMessage && /* @__PURE__ */ (0, import_jsx_runtime45.jsx)("p", { className: "mt-1 text-xs text-red-500", children: props.errorMessage })
28371
+ props.errorMessage && /* @__PURE__ */ (0, import_jsx_runtime46.jsx)("p", { className: "mt-1 text-xs text-red-500", children: props.errorMessage })
28363
28372
  ] });
28364
28373
  };
28365
28374
  var TextInputGroup_default = TextInputGroup;
28366
28375
 
28367
28376
  // src/components/Inputs/Multiselect/MultiSelect.tsx
28368
- var React7 = __toESM(require("react"));
28377
+ var React8 = __toESM(require("react"));
28369
28378
 
28370
28379
  // src/components/ui/command.tsx
28371
28380
  var import_cmdk = require("cmdk");
28372
28381
 
28373
28382
  // src/components/ui/dialog.tsx
28374
28383
  var DialogPrimitive = __toESM(require("@radix-ui/react-dialog"));
28375
- var import_jsx_runtime46 = require("react/jsx-runtime");
28384
+ var import_jsx_runtime47 = require("react/jsx-runtime");
28376
28385
  function Dialog({
28377
28386
  ...props
28378
28387
  }) {
28379
- return /* @__PURE__ */ (0, import_jsx_runtime46.jsx)(DialogPrimitive.Root, { "data-slot": "dialog", ...props });
28388
+ return /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(DialogPrimitive.Root, { "data-slot": "dialog", ...props });
28380
28389
  }
28381
28390
  function DialogPortal({
28382
28391
  ...props
28383
28392
  }) {
28384
- return /* @__PURE__ */ (0, import_jsx_runtime46.jsx)(DialogPrimitive.Portal, { "data-slot": "dialog-portal", ...props });
28393
+ return /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(DialogPrimitive.Portal, { "data-slot": "dialog-portal", ...props });
28385
28394
  }
28386
28395
  function DialogOverlay({
28387
28396
  className,
28388
28397
  ...props
28389
28398
  }) {
28390
- return /* @__PURE__ */ (0, import_jsx_runtime46.jsx)(
28399
+ return /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(
28391
28400
  DialogPrimitive.Overlay,
28392
28401
  {
28393
28402
  "data-slot": "dialog-overlay",
@@ -28405,9 +28414,9 @@ function DialogContent({
28405
28414
  showCloseButton = true,
28406
28415
  ...props
28407
28416
  }) {
28408
- return /* @__PURE__ */ (0, import_jsx_runtime46.jsxs)(DialogPortal, { "data-slot": "dialog-portal", children: [
28409
- /* @__PURE__ */ (0, import_jsx_runtime46.jsx)(DialogOverlay, {}),
28410
- /* @__PURE__ */ (0, import_jsx_runtime46.jsxs)(
28417
+ return /* @__PURE__ */ (0, import_jsx_runtime47.jsxs)(DialogPortal, { "data-slot": "dialog-portal", children: [
28418
+ /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(DialogOverlay, {}),
28419
+ /* @__PURE__ */ (0, import_jsx_runtime47.jsxs)(
28411
28420
  DialogPrimitive.Content,
28412
28421
  {
28413
28422
  "data-slot": "dialog-content",
@@ -28418,14 +28427,14 @@ function DialogContent({
28418
28427
  ...props,
28419
28428
  children: [
28420
28429
  children,
28421
- showCloseButton && /* @__PURE__ */ (0, import_jsx_runtime46.jsxs)(
28430
+ showCloseButton && /* @__PURE__ */ (0, import_jsx_runtime47.jsxs)(
28422
28431
  DialogPrimitive.Close,
28423
28432
  {
28424
28433
  "data-slot": "dialog-close",
28425
28434
  className: "ring-offset-background focus:ring-ring data-[state=open]:bg-accent data-[state=open]:text-muted-foreground absolute top-4 right-4 rounded-xs opacity-70 transition-opacity hover:opacity-100 focus:ring-2 focus:ring-offset-2 focus:outline-hidden disabled:pointer-events-none [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",
28426
28435
  children: [
28427
- /* @__PURE__ */ (0, import_jsx_runtime46.jsx)(X, {}),
28428
- /* @__PURE__ */ (0, import_jsx_runtime46.jsx)("span", { className: "sr-only", children: "Close" })
28436
+ /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(X, {}),
28437
+ /* @__PURE__ */ (0, import_jsx_runtime47.jsx)("span", { className: "sr-only", children: "Close" })
28429
28438
  ]
28430
28439
  }
28431
28440
  )
@@ -28435,7 +28444,7 @@ function DialogContent({
28435
28444
  ] });
28436
28445
  }
28437
28446
  function DialogHeader({ className, ...props }) {
28438
- return /* @__PURE__ */ (0, import_jsx_runtime46.jsx)(
28447
+ return /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(
28439
28448
  "div",
28440
28449
  {
28441
28450
  "data-slot": "dialog-header",
@@ -28445,7 +28454,7 @@ function DialogHeader({ className, ...props }) {
28445
28454
  );
28446
28455
  }
28447
28456
  function DialogFooter({ className, ...props }) {
28448
- return /* @__PURE__ */ (0, import_jsx_runtime46.jsx)(
28457
+ return /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(
28449
28458
  "div",
28450
28459
  {
28451
28460
  "data-slot": "dialog-footer",
@@ -28461,7 +28470,7 @@ function DialogTitle({
28461
28470
  className,
28462
28471
  ...props
28463
28472
  }) {
28464
- return /* @__PURE__ */ (0, import_jsx_runtime46.jsx)(
28473
+ return /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(
28465
28474
  DialogPrimitive.Title,
28466
28475
  {
28467
28476
  "data-slot": "dialog-title",
@@ -28474,7 +28483,7 @@ function DialogDescription({
28474
28483
  className,
28475
28484
  ...props
28476
28485
  }) {
28477
- return /* @__PURE__ */ (0, import_jsx_runtime46.jsx)(
28486
+ return /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(
28478
28487
  DialogPrimitive.Description,
28479
28488
  {
28480
28489
  "data-slot": "dialog-description",
@@ -28485,12 +28494,12 @@ function DialogDescription({
28485
28494
  }
28486
28495
 
28487
28496
  // src/components/ui/command.tsx
28488
- var import_jsx_runtime47 = require("react/jsx-runtime");
28497
+ var import_jsx_runtime48 = require("react/jsx-runtime");
28489
28498
  function Command2({
28490
28499
  className,
28491
28500
  ...props
28492
28501
  }) {
28493
- return /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(
28502
+ return /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
28494
28503
  import_cmdk.Command,
28495
28504
  {
28496
28505
  "data-slot": "command",
@@ -28506,14 +28515,14 @@ function CommandInput({
28506
28515
  className,
28507
28516
  ...props
28508
28517
  }) {
28509
- return /* @__PURE__ */ (0, import_jsx_runtime47.jsxs)(
28518
+ return /* @__PURE__ */ (0, import_jsx_runtime48.jsxs)(
28510
28519
  "div",
28511
28520
  {
28512
28521
  "data-slot": "command-input-wrapper",
28513
28522
  className: "flex h-9 items-center gap-2 border-b px-3",
28514
28523
  children: [
28515
- /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(Search, { className: "size-4 shrink-0 opacity-50" }),
28516
- /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(
28524
+ /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(Search, { className: "size-4 shrink-0 opacity-50" }),
28525
+ /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
28517
28526
  import_cmdk.Command.Input,
28518
28527
  {
28519
28528
  "data-slot": "command-input",
@@ -28532,7 +28541,7 @@ function CommandList({
28532
28541
  className,
28533
28542
  ...props
28534
28543
  }) {
28535
- return /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(
28544
+ return /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
28536
28545
  import_cmdk.Command.List,
28537
28546
  {
28538
28547
  "data-slot": "command-list",
@@ -28547,7 +28556,7 @@ function CommandList({
28547
28556
  function CommandEmpty({
28548
28557
  ...props
28549
28558
  }) {
28550
- return /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(
28559
+ return /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
28551
28560
  import_cmdk.Command.Empty,
28552
28561
  {
28553
28562
  "data-slot": "command-empty",
@@ -28560,7 +28569,7 @@ function CommandGroup({
28560
28569
  className,
28561
28570
  ...props
28562
28571
  }) {
28563
- return /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(
28572
+ return /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
28564
28573
  import_cmdk.Command.Group,
28565
28574
  {
28566
28575
  "data-slot": "command-group",
@@ -28576,7 +28585,7 @@ function CommandItem({
28576
28585
  className,
28577
28586
  ...props
28578
28587
  }) {
28579
- return /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(
28588
+ return /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
28580
28589
  import_cmdk.Command.Item,
28581
28590
  {
28582
28591
  "data-slot": "command-item",
@@ -28590,7 +28599,7 @@ function CommandItem({
28590
28599
  }
28591
28600
 
28592
28601
  // src/components/Inputs/Multiselect/MultiSelect.tsx
28593
- var import_jsx_runtime48 = require("react/jsx-runtime");
28602
+ var import_jsx_runtime49 = require("react/jsx-runtime");
28594
28603
  var MultiSelect = ({
28595
28604
  value = [],
28596
28605
  onChange,
@@ -28603,8 +28612,8 @@ var MultiSelect = ({
28603
28612
  dataLabel = "label",
28604
28613
  ...props
28605
28614
  }) => {
28606
- const [open, setOpen] = React7.useState(false);
28607
- React7.useEffect(() => {
28615
+ const [open, setOpen] = React8.useState(false);
28616
+ React8.useEffect(() => {
28608
28617
  if (value) {
28609
28618
  onChange(value);
28610
28619
  }
@@ -28614,7 +28623,7 @@ var MultiSelect = ({
28614
28623
  value?.includes(val) ? value.filter((v) => v !== val) : [...value || [], val]
28615
28624
  );
28616
28625
  };
28617
- const selectedLabels = React7.useMemo(
28626
+ const selectedLabels = React8.useMemo(
28618
28627
  () => data.filter((opt) => value.includes(opt.value)).map((opt) => opt.label),
28619
28628
  [data, value]
28620
28629
  );
@@ -28622,8 +28631,8 @@ var MultiSelect = ({
28622
28631
  value: item[dataKey],
28623
28632
  label: item[dataLabel]
28624
28633
  }));
28625
- return /* @__PURE__ */ (0, import_jsx_runtime48.jsxs)(Popover, { open, onOpenChange: setOpen, children: [
28626
- /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(PopoverTrigger, { asChild: true, children: /* @__PURE__ */ (0, import_jsx_runtime48.jsxs)(
28634
+ return /* @__PURE__ */ (0, import_jsx_runtime49.jsxs)(Popover, { open, onOpenChange: setOpen, children: [
28635
+ /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(PopoverTrigger, { asChild: true, children: /* @__PURE__ */ (0, import_jsx_runtime49.jsxs)(
28627
28636
  Button,
28628
28637
  {
28629
28638
  variant: "outline",
@@ -28632,12 +28641,12 @@ var MultiSelect = ({
28632
28641
  disabled,
28633
28642
  type: "button",
28634
28643
  children: [
28635
- /* @__PURE__ */ (0, import_jsx_runtime48.jsx)("span", { className: "truncate", children: selectedLabels.length > 0 ? selectedLabels.join(", ") : placeholder }),
28636
- /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(ChevronsUpDown, { className: "ml-2 h-4 w-4 shrink-0 opacity-50" })
28644
+ /* @__PURE__ */ (0, import_jsx_runtime49.jsx)("span", { className: "truncate", children: selectedLabels.length > 0 ? selectedLabels.join(", ") : placeholder }),
28645
+ /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(ChevronsUpDown, { className: "ml-2 h-4 w-4 shrink-0 opacity-50" })
28637
28646
  ]
28638
28647
  }
28639
28648
  ) }),
28640
- /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
28649
+ /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(
28641
28650
  PopoverContent,
28642
28651
  {
28643
28652
  align: "start",
@@ -28646,26 +28655,26 @@ var MultiSelect = ({
28646
28655
  onInteractOutside: (e) => {
28647
28656
  if (e.target.closest(".keep-open")) e.preventDefault();
28648
28657
  },
28649
- children: /* @__PURE__ */ (0, import_jsx_runtime48.jsxs)(Command2, { shouldFilter: searchable, children: [
28650
- searchable && /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(CommandInput, { placeholder: "Search..." }),
28651
- /* @__PURE__ */ (0, import_jsx_runtime48.jsxs)(CommandList, { children: [
28652
- /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(CommandEmpty, { children: "No options found." }),
28653
- /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(CommandGroup, { children: options.map((opt) => {
28658
+ children: /* @__PURE__ */ (0, import_jsx_runtime49.jsxs)(Command2, { shouldFilter: searchable, children: [
28659
+ searchable && /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(CommandInput, { placeholder: "Search..." }),
28660
+ /* @__PURE__ */ (0, import_jsx_runtime49.jsxs)(CommandList, { children: [
28661
+ /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(CommandEmpty, { children: "No options found." }),
28662
+ /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(CommandGroup, { children: options.map((opt) => {
28654
28663
  const isSelected = value.includes(opt.value);
28655
- return /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
28664
+ return /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(
28656
28665
  "div",
28657
28666
  {
28658
28667
  className: "keep-open",
28659
- children: /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
28668
+ children: /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(
28660
28669
  CommandItem,
28661
28670
  {
28662
28671
  onMouseDown: (e) => {
28663
28672
  e.preventDefault();
28664
28673
  toggleOption(opt.value);
28665
28674
  },
28666
- children: /* @__PURE__ */ (0, import_jsx_runtime48.jsxs)("div", { className: "flex items-center gap-2", children: [
28667
- /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(Checkbox, { checked: isSelected }),
28668
- /* @__PURE__ */ (0, import_jsx_runtime48.jsx)("span", { children: opt.label })
28675
+ children: /* @__PURE__ */ (0, import_jsx_runtime49.jsxs)("div", { className: "flex items-center gap-2", children: [
28676
+ /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(Checkbox, { checked: isSelected }),
28677
+ /* @__PURE__ */ (0, import_jsx_runtime49.jsx)("span", { children: opt.label })
28669
28678
  ] })
28670
28679
  },
28671
28680
  opt.value
@@ -28678,26 +28687,26 @@ var MultiSelect = ({
28678
28687
  ] })
28679
28688
  }
28680
28689
  ),
28681
- props.errorMessage && /* @__PURE__ */ (0, import_jsx_runtime48.jsx)("p", { className: "mt-1 text-xs text-red-500", children: props.errorMessage })
28690
+ props.errorMessage && /* @__PURE__ */ (0, import_jsx_runtime49.jsx)("p", { className: "mt-1 text-xs text-red-500", children: props.errorMessage })
28682
28691
  ] });
28683
28692
  };
28684
28693
  var MultiSelect_default = MultiSelect;
28685
28694
 
28686
28695
  // src/components/ui/data-table.tsx
28687
- var React8 = __toESM(require("react"));
28696
+ var React9 = __toESM(require("react"));
28688
28697
  var import_free_solid_svg_icons2 = require("@fortawesome/free-solid-svg-icons");
28689
28698
  var import_react_fontawesome3 = require("@fortawesome/react-fontawesome");
28690
28699
  var import_react_table = require("@tanstack/react-table");
28691
28700
 
28692
28701
  // src/components/ui/table.tsx
28693
- var import_jsx_runtime49 = require("react/jsx-runtime");
28702
+ var import_jsx_runtime50 = require("react/jsx-runtime");
28694
28703
  function Table3({ className, ...props }) {
28695
- return /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(
28704
+ return /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(
28696
28705
  "div",
28697
28706
  {
28698
28707
  "data-slot": "table-container",
28699
28708
  className: "relative w-full overflow-x-auto rounded-md border border-gray-200 bg-white",
28700
- children: /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(
28709
+ children: /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(
28701
28710
  "table",
28702
28711
  {
28703
28712
  "data-slot": "table",
@@ -28709,7 +28718,7 @@ function Table3({ className, ...props }) {
28709
28718
  );
28710
28719
  }
28711
28720
  function TableHeader({ className, ...props }) {
28712
- return /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(
28721
+ return /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(
28713
28722
  "thead",
28714
28723
  {
28715
28724
  "data-slot": "table-header",
@@ -28722,7 +28731,7 @@ function TableHeader({ className, ...props }) {
28722
28731
  );
28723
28732
  }
28724
28733
  function TableBody({ className, ...props }) {
28725
- return /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(
28734
+ return /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(
28726
28735
  "tbody",
28727
28736
  {
28728
28737
  "data-slot": "table-body",
@@ -28735,7 +28744,7 @@ function TableBody({ className, ...props }) {
28735
28744
  );
28736
28745
  }
28737
28746
  function TableRow({ className, ...props }) {
28738
- return /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(
28747
+ return /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(
28739
28748
  "tr",
28740
28749
  {
28741
28750
  "data-slot": "table-row",
@@ -28748,7 +28757,7 @@ function TableRow({ className, ...props }) {
28748
28757
  );
28749
28758
  }
28750
28759
  function TableHead({ className, ...props }) {
28751
- return /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(
28760
+ return /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(
28752
28761
  "th",
28753
28762
  {
28754
28763
  "data-slot": "table-head",
@@ -28761,7 +28770,7 @@ function TableHead({ className, ...props }) {
28761
28770
  );
28762
28771
  }
28763
28772
  function TableCell({ className, ...props }) {
28764
- return /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(
28773
+ return /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(
28765
28774
  "td",
28766
28775
  {
28767
28776
  "data-slot": "table-cell",
@@ -28775,7 +28784,7 @@ function TableCell({ className, ...props }) {
28775
28784
  }
28776
28785
 
28777
28786
  // src/components/ui/data-table.tsx
28778
- var import_jsx_runtime50 = require("react/jsx-runtime");
28787
+ var import_jsx_runtime51 = require("react/jsx-runtime");
28779
28788
  function DataTable({
28780
28789
  columns,
28781
28790
  data,
@@ -28790,15 +28799,41 @@ function DataTable({
28790
28799
  onFilterChange,
28791
28800
  onGlobalSearch,
28792
28801
  globalSearch,
28793
- onCellClick
28802
+ onCellClick,
28803
+ onDeleteRow,
28804
+ enableDelete
28794
28805
  }) {
28795
- const [columnFilters, setColumnFilters] = React8.useState([]);
28796
- const [columnVisibility, setColumnVisibility] = React8.useState({});
28797
- const [manualSort, setManualSort] = React8.useState(null);
28798
- const [searchTerm, setSearchTerm] = React8.useState("");
28806
+ const [columnFilters, setColumnFilters] = React9.useState([]);
28807
+ const [columnVisibility, setColumnVisibility] = React9.useState({});
28808
+ const [manualSort, setManualSort] = React9.useState(null);
28809
+ const [searchTerm, setSearchTerm] = React9.useState("");
28810
+ const deleteColumn = React9.useMemo(() => ({
28811
+ id: "delete",
28812
+ header: "Actions",
28813
+ cell: ({ row }) => /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(
28814
+ "button",
28815
+ {
28816
+ className: "px-3 py-1 text-[12px] bg-red-800 text-white rounded hover:bg-neutral-600 cursor-pointer",
28817
+ onClick: (event) => {
28818
+ event.stopPropagation();
28819
+ if (onDeleteRow) {
28820
+ onDeleteRow(row.original, "delete");
28821
+ }
28822
+ },
28823
+ children: "Delete"
28824
+ }
28825
+ ),
28826
+ meta: { isClickable: true }
28827
+ }), [onDeleteRow]);
28828
+ const combinedColumns = React9.useMemo(() => {
28829
+ if (enableDelete) {
28830
+ return [...columns, deleteColumn];
28831
+ }
28832
+ return columns;
28833
+ }, [columns, enableDelete, deleteColumn]);
28799
28834
  const table = (0, import_react_table.useReactTable)({
28800
28835
  data,
28801
- columns,
28836
+ columns: combinedColumns,
28802
28837
  state: {
28803
28838
  columnFilters,
28804
28839
  columnVisibility,
@@ -28843,11 +28878,11 @@ function DataTable({
28843
28878
  }
28844
28879
  return [];
28845
28880
  };
28846
- return /* @__PURE__ */ (0, import_jsx_runtime50.jsxs)("div", { className: "overflow-hidden rounded-md w-full", children: [
28847
- /* @__PURE__ */ (0, import_jsx_runtime50.jsxs)("div", { className: `flex ${globalSearch ? "justify-between" : "justify-end"} p-2 bg-gray-50`, children: [
28848
- globalSearch && /* @__PURE__ */ (0, import_jsx_runtime50.jsxs)("div", { className: "flex items-center gap-2 w-full max-w-sm", children: [
28849
- /* @__PURE__ */ (0, import_jsx_runtime50.jsxs)("div", { className: "relative w-full", children: [
28850
- /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(
28881
+ return /* @__PURE__ */ (0, import_jsx_runtime51.jsxs)("div", { className: "overflow-hidden rounded-md w-full", children: [
28882
+ /* @__PURE__ */ (0, import_jsx_runtime51.jsxs)("div", { className: `flex ${globalSearch ? "justify-between" : "justify-end"} p-2 bg-gray-50`, children: [
28883
+ globalSearch && /* @__PURE__ */ (0, import_jsx_runtime51.jsxs)("div", { className: "flex items-center gap-2 w-full max-w-sm", children: [
28884
+ /* @__PURE__ */ (0, import_jsx_runtime51.jsxs)("div", { className: "relative w-full", children: [
28885
+ /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(
28851
28886
  "input",
28852
28887
  {
28853
28888
  type: "text",
@@ -28862,9 +28897,9 @@ function DataTable({
28862
28897
  className: "border border-gray-300 rounded-md text-sm px-3 py-2 pl-8 w-full focus:outline-none focus:ring-1 focus:ring-[#12715B]"
28863
28898
  }
28864
28899
  ),
28865
- /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(Search, { className: "absolute left-2 top-2.5 text-gray-400", size: 16 })
28900
+ /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(Search, { className: "absolute left-2 top-2.5 text-gray-400", size: 16 })
28866
28901
  ] }),
28867
- /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(
28902
+ /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(
28868
28903
  Button,
28869
28904
  {
28870
28905
  size: "sm",
@@ -28874,8 +28909,8 @@ function DataTable({
28874
28909
  }
28875
28910
  )
28876
28911
  ] }),
28877
- /* @__PURE__ */ (0, import_jsx_runtime50.jsxs)(Popover, { children: [
28878
- /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(PopoverTrigger, { asChild: true, children: /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(
28912
+ /* @__PURE__ */ (0, import_jsx_runtime51.jsxs)(Popover, { children: [
28913
+ /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(PopoverTrigger, { asChild: true, children: /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(
28879
28914
  Button,
28880
28915
  {
28881
28916
  variant: "outline",
@@ -28884,10 +28919,10 @@ function DataTable({
28884
28919
  children: "Manage Columns"
28885
28920
  }
28886
28921
  ) }),
28887
- /* @__PURE__ */ (0, import_jsx_runtime50.jsxs)(PopoverContent, { align: "end", className: "w-48 p-3 space-y-2", children: [
28888
- /* @__PURE__ */ (0, import_jsx_runtime50.jsx)("div", { className: "text-sm font-medium mb-2", children: "Show / Hide Columns" }),
28889
- /* @__PURE__ */ (0, import_jsx_runtime50.jsxs)("label", { className: "flex items-center gap-2 text-sm font-semibold border-b pb-2 mb-2", children: [
28890
- /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(
28922
+ /* @__PURE__ */ (0, import_jsx_runtime51.jsxs)(PopoverContent, { align: "end", className: "w-48 p-3 space-y-2", children: [
28923
+ /* @__PURE__ */ (0, import_jsx_runtime51.jsx)("div", { className: "text-sm font-medium mb-2", children: "Show / Hide Columns" }),
28924
+ /* @__PURE__ */ (0, import_jsx_runtime51.jsxs)("label", { className: "flex items-center gap-2 text-sm font-semibold border-b pb-2 mb-2", children: [
28925
+ /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(
28891
28926
  "input",
28892
28927
  {
28893
28928
  type: "checkbox",
@@ -28906,8 +28941,8 @@ function DataTable({
28906
28941
  ),
28907
28942
  "Toggle All"
28908
28943
  ] }),
28909
- table.getAllLeafColumns().map((column) => /* @__PURE__ */ (0, import_jsx_runtime50.jsxs)("label", { className: "flex items-center gap-2 text-sm", children: [
28910
- /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(
28944
+ table.getAllLeafColumns().map((column) => /* @__PURE__ */ (0, import_jsx_runtime51.jsxs)("label", { className: "flex items-center gap-2 text-sm", children: [
28945
+ /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(
28911
28946
  "input",
28912
28947
  {
28913
28948
  type: "checkbox",
@@ -28920,13 +28955,13 @@ function DataTable({
28920
28955
  ] })
28921
28956
  ] })
28922
28957
  ] }),
28923
- /* @__PURE__ */ (0, import_jsx_runtime50.jsxs)(Table3, { children: [
28924
- /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(TableHeader, { children: table.getHeaderGroups().map((hg) => /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(TableRow, { children: hg.headers.map((header) => {
28958
+ /* @__PURE__ */ (0, import_jsx_runtime51.jsxs)(Table3, { children: [
28959
+ /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(TableHeader, { children: table.getHeaderGroups().map((hg) => /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(TableRow, { children: hg.headers.map((header) => {
28925
28960
  const canSort = header.column.getCanSort();
28926
28961
  const canFilter = header.column.getCanFilter();
28927
28962
  const sortDir = manualSort?.key === header.column.id ? manualSort.dir : null;
28928
- return /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(TableHead, { className: "relative select-none", children: /* @__PURE__ */ (0, import_jsx_runtime50.jsxs)("div", { className: "flex items-center justify-between", children: [
28929
- /* @__PURE__ */ (0, import_jsx_runtime50.jsxs)(
28963
+ return /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(TableHead, { className: "relative select-none", children: /* @__PURE__ */ (0, import_jsx_runtime51.jsxs)("div", { className: "flex items-center justify-between", children: [
28964
+ /* @__PURE__ */ (0, import_jsx_runtime51.jsxs)(
28930
28965
  "span",
28931
28966
  {
28932
28967
  className: `flex items-center gap-1 ${canSort ? "cursor-pointer" : ""}`,
@@ -28938,32 +28973,32 @@ function DataTable({
28938
28973
  },
28939
28974
  children: [
28940
28975
  (0, import_react_table.flexRender)(header.column.columnDef.header, header.getContext()),
28941
- canSort && /* @__PURE__ */ (0, import_jsx_runtime50.jsxs)(import_jsx_runtime50.Fragment, { children: [
28942
- sortDir === "asc" && /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(ArrowUp, { size: 14, className: "text-gray-500" }),
28943
- sortDir === "desc" && /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(ArrowDown, { size: 14, className: "text-gray-500" }),
28944
- !sortDir && /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(ArrowUpDown, { size: 14, className: "text-gray-400" })
28976
+ canSort && /* @__PURE__ */ (0, import_jsx_runtime51.jsxs)(import_jsx_runtime51.Fragment, { children: [
28977
+ sortDir === "asc" && /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(ArrowUp, { size: 14, className: "text-gray-500" }),
28978
+ sortDir === "desc" && /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(ArrowDown, { size: 14, className: "text-gray-500" }),
28979
+ !sortDir && /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(ArrowUpDown, { size: 14, className: "text-gray-400" })
28945
28980
  ] })
28946
28981
  ]
28947
28982
  }
28948
28983
  ),
28949
- canFilter && /* @__PURE__ */ (0, import_jsx_runtime50.jsxs)(Popover, { children: [
28950
- /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(PopoverTrigger, { asChild: true, children: /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(
28984
+ canFilter && /* @__PURE__ */ (0, import_jsx_runtime51.jsxs)(Popover, { children: [
28985
+ /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(PopoverTrigger, { asChild: true, children: /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(
28951
28986
  "span",
28952
28987
  {
28953
28988
  role: "presentation",
28954
28989
  className: "pl-5 cursor-pointer",
28955
28990
  onClick: (e) => e.stopPropagation(),
28956
- children: /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(import_react_fontawesome3.FontAwesomeIcon, { icon: import_free_solid_svg_icons2.faEllipsisH, className: "w-5 h-5 text-gray-500" })
28991
+ children: /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(import_react_fontawesome3.FontAwesomeIcon, { icon: import_free_solid_svg_icons2.faEllipsisH, className: "w-5 h-5 text-gray-500" })
28957
28992
  }
28958
28993
  ) }),
28959
- /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(
28994
+ /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(
28960
28995
  PopoverContent,
28961
28996
  {
28962
28997
  align: "center",
28963
28998
  sideOffset: 14,
28964
28999
  className: "w-50 p-3 z-[200] border-gray-300",
28965
29000
  avoidCollisions: true,
28966
- children: /* @__PURE__ */ (0, import_jsx_runtime50.jsxs)(
29001
+ children: /* @__PURE__ */ (0, import_jsx_runtime51.jsxs)(
28967
29002
  "form",
28968
29003
  {
28969
29004
  onSubmit: (e) => {
@@ -28976,8 +29011,8 @@ function DataTable({
28976
29011
  },
28977
29012
  className: "space-y-2",
28978
29013
  children: [
28979
- /* @__PURE__ */ (0, import_jsx_runtime50.jsx)("label", { htmlFor: "filter", className: "text-xs text-gray-500 font-normal", children: "Filter by value:" }),
28980
- /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(
29014
+ /* @__PURE__ */ (0, import_jsx_runtime51.jsx)("label", { htmlFor: "filter", className: "text-xs text-gray-500 font-normal", children: "Filter by value:" }),
29015
+ /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(
28981
29016
  "input",
28982
29017
  {
28983
29018
  name: "filter",
@@ -28987,7 +29022,7 @@ function DataTable({
28987
29022
  autoComplete: "off"
28988
29023
  }
28989
29024
  ),
28990
- /* @__PURE__ */ (0, import_jsx_runtime50.jsx)("div", { className: "justify-end flex", children: /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(
29025
+ /* @__PURE__ */ (0, import_jsx_runtime51.jsx)("div", { className: "justify-end flex", children: /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(
28991
29026
  Button,
28992
29027
  {
28993
29028
  type: "submit",
@@ -29003,13 +29038,13 @@ function DataTable({
29003
29038
  ] })
29004
29039
  ] }) }, header.id);
29005
29040
  }) }, hg.id)) }),
29006
- /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(TableBody, { children: loading ? /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(TableRow, { children: /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(TableCell, { colSpan: columns.length, className: "h-24 text-center", children: "Loading..." }) }) : table.getRowModel().rows.length ? table.getRowModel().rows.map((row) => /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(TableRow, { children: row.getVisibleCells().map((cell) => {
29041
+ /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(TableBody, { children: loading ? /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(TableRow, { children: /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(TableCell, { colSpan: combinedColumns.length, className: "h-24 text-center", children: "Loading..." }) }) : table.getRowModel().rows.length ? table.getRowModel().rows.map((row) => /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(TableRow, { children: row.getVisibleCells().map((cell) => {
29007
29042
  const meta = cell.column.columnDef.meta || {};
29008
29043
  const isClickable = meta?.isClickable;
29009
- return /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(
29044
+ return /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(
29010
29045
  TableCell,
29011
29046
  {
29012
- className: `${meta?.cellClass ?? ""} ${isClickable ? "cursor-pointer hover:bg-gray-100 underline" : ""}`,
29047
+ className: `${meta?.cellClass ?? ""} ${isClickable ? "cursor-pointer hover:bg-gray-100" : ""}`,
29013
29048
  style: meta?.cellStyle,
29014
29049
  onClick: () => {
29015
29050
  if (isClickable && onCellClick) {
@@ -29020,17 +29055,17 @@ function DataTable({
29020
29055
  },
29021
29056
  cell.id
29022
29057
  );
29023
- }) }, row.id)) : /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(TableRow, { children: /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(TableCell, { colSpan: columns.length, className: "h-24 text-center", children: "No results." }) }) })
29058
+ }) }, row.id)) : /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(TableRow, { children: /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(TableCell, { colSpan: combinedColumns.length, className: "h-24 text-center", children: "No results." }) }) })
29024
29059
  ] }),
29025
- pagination && /* @__PURE__ */ (0, import_jsx_runtime50.jsxs)("div", { className: "flex items-center justify-between py-3 px-2 text-sm w-full", children: [
29026
- /* @__PURE__ */ (0, import_jsx_runtime50.jsxs)("div", { children: [
29060
+ pagination && /* @__PURE__ */ (0, import_jsx_runtime51.jsxs)("div", { className: "flex items-center justify-between py-3 px-2 text-sm w-full", children: [
29061
+ /* @__PURE__ */ (0, import_jsx_runtime51.jsxs)("div", { children: [
29027
29062
  "Page ",
29028
29063
  table.getState().pagination.pageIndex + 1,
29029
29064
  " of ",
29030
29065
  table.getPageCount()
29031
29066
  ] }),
29032
- /* @__PURE__ */ (0, import_jsx_runtime50.jsxs)("div", { className: "flex items-center gap-2", children: [
29033
- /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(
29067
+ /* @__PURE__ */ (0, import_jsx_runtime51.jsxs)("div", { className: "flex items-center gap-2", children: [
29068
+ /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(
29034
29069
  "button",
29035
29070
  {
29036
29071
  onClick: () => table.previousPage(),
@@ -29043,7 +29078,7 @@ function DataTable({
29043
29078
  table.getState().pagination.pageIndex + 1,
29044
29079
  table.getPageCount(),
29045
29080
  5
29046
- ).map((pageNum, index) => /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(
29081
+ ).map((pageNum, index) => /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(
29047
29082
  "button",
29048
29083
  {
29049
29084
  disabled: pageNum === "...",
@@ -29053,7 +29088,7 @@ function DataTable({
29053
29088
  },
29054
29089
  index
29055
29090
  )),
29056
- /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(
29091
+ /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(
29057
29092
  "button",
29058
29093
  {
29059
29094
  onClick: () => table.nextPage(),
@@ -29068,7 +29103,7 @@ function DataTable({
29068
29103
  }
29069
29104
 
29070
29105
  // src/components/DataDisplay/Table/Table.tsx
29071
- var import_jsx_runtime51 = require("react/jsx-runtime");
29106
+ var import_jsx_runtime52 = require("react/jsx-runtime");
29072
29107
  var Table4 = ({
29073
29108
  columns,
29074
29109
  data,
@@ -29086,12 +29121,15 @@ var Table4 = ({
29086
29121
  loading = false,
29087
29122
  totalRecords = 0,
29088
29123
  globalSearch = false,
29124
+ onCellClick,
29125
+ enableDelete,
29126
+ onDeleteRow,
29089
29127
  ...props
29090
29128
  }) => {
29091
29129
  const rawColumns = Array.isArray(columns) ? columns : [];
29092
29130
  const rawData = Array.isArray(data) ? data : [];
29093
29131
  const isControlled = typeof page === "number";
29094
- return /* @__PURE__ */ (0, import_jsx_runtime51.jsx)("div", { className: `${className || ""} space-y-3`, style, children: /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(
29132
+ return /* @__PURE__ */ (0, import_jsx_runtime52.jsx)("div", { className: `${className || ""} space-y-3`, style, children: /* @__PURE__ */ (0, import_jsx_runtime52.jsx)(
29095
29133
  DataTable,
29096
29134
  {
29097
29135
  ...props,
@@ -29112,17 +29150,21 @@ var Table4 = ({
29112
29150
  onGlobalSearch: (term) => onGlobalSearch?.({ searchTerm: term }),
29113
29151
  globalSearch,
29114
29152
  onCellClick: (cell) => {
29115
- props.onCellClick?.({ id: cell.id, column: cell });
29116
- }
29153
+ onCellClick?.({ id: cell.id, column: cell });
29154
+ },
29155
+ onDeleteRow: (cell) => {
29156
+ onDeleteRow?.(cell.id);
29157
+ },
29158
+ enableDelete
29117
29159
  }
29118
29160
  ) });
29119
29161
  };
29120
29162
  var Table_default = Table4;
29121
29163
 
29122
29164
  // src/components/ui/pagination.tsx
29123
- var import_jsx_runtime52 = require("react/jsx-runtime");
29165
+ var import_jsx_runtime53 = require("react/jsx-runtime");
29124
29166
  function Pagination({ className, ...props }) {
29125
- return /* @__PURE__ */ (0, import_jsx_runtime52.jsx)(
29167
+ return /* @__PURE__ */ (0, import_jsx_runtime53.jsx)(
29126
29168
  "nav",
29127
29169
  {
29128
29170
  role: "navigation",
@@ -29137,7 +29179,7 @@ function PaginationContent({
29137
29179
  className,
29138
29180
  ...props
29139
29181
  }) {
29140
- return /* @__PURE__ */ (0, import_jsx_runtime52.jsx)(
29182
+ return /* @__PURE__ */ (0, import_jsx_runtime53.jsx)(
29141
29183
  "ul",
29142
29184
  {
29143
29185
  "data-slot": "pagination-content",
@@ -29147,7 +29189,7 @@ function PaginationContent({
29147
29189
  );
29148
29190
  }
29149
29191
  function PaginationItem({ ...props }) {
29150
- return /* @__PURE__ */ (0, import_jsx_runtime52.jsx)("li", { "data-slot": "pagination-item", ...props });
29192
+ return /* @__PURE__ */ (0, import_jsx_runtime53.jsx)("li", { "data-slot": "pagination-item", ...props });
29151
29193
  }
29152
29194
  function PaginationLink({
29153
29195
  className,
@@ -29155,7 +29197,7 @@ function PaginationLink({
29155
29197
  size = "icon",
29156
29198
  ...props
29157
29199
  }) {
29158
- return /* @__PURE__ */ (0, import_jsx_runtime52.jsx)(
29200
+ return /* @__PURE__ */ (0, import_jsx_runtime53.jsx)(
29159
29201
  "a",
29160
29202
  {
29161
29203
  "aria-current": isActive ? "page" : void 0,
@@ -29176,7 +29218,7 @@ function PaginationPrevious({
29176
29218
  className,
29177
29219
  ...props
29178
29220
  }) {
29179
- return /* @__PURE__ */ (0, import_jsx_runtime52.jsxs)(
29221
+ return /* @__PURE__ */ (0, import_jsx_runtime53.jsxs)(
29180
29222
  PaginationLink,
29181
29223
  {
29182
29224
  "aria-label": "Go to previous page",
@@ -29184,8 +29226,8 @@ function PaginationPrevious({
29184
29226
  className: cn("gap-1 px-2.5 sm:pl-2.5", className),
29185
29227
  ...props,
29186
29228
  children: [
29187
- /* @__PURE__ */ (0, import_jsx_runtime52.jsx)(ChevronLeft, {}),
29188
- /* @__PURE__ */ (0, import_jsx_runtime52.jsx)("span", { className: "hidden sm:block", children: "Previous" })
29229
+ /* @__PURE__ */ (0, import_jsx_runtime53.jsx)(ChevronLeft, {}),
29230
+ /* @__PURE__ */ (0, import_jsx_runtime53.jsx)("span", { className: "hidden sm:block", children: "Previous" })
29189
29231
  ]
29190
29232
  }
29191
29233
  );
@@ -29194,7 +29236,7 @@ function PaginationNext({
29194
29236
  className,
29195
29237
  ...props
29196
29238
  }) {
29197
- return /* @__PURE__ */ (0, import_jsx_runtime52.jsxs)(
29239
+ return /* @__PURE__ */ (0, import_jsx_runtime53.jsxs)(
29198
29240
  PaginationLink,
29199
29241
  {
29200
29242
  "aria-label": "Go to next page",
@@ -29202,8 +29244,8 @@ function PaginationNext({
29202
29244
  className: cn("gap-1 px-2.5 sm:pr-2.5", className),
29203
29245
  ...props,
29204
29246
  children: [
29205
- /* @__PURE__ */ (0, import_jsx_runtime52.jsx)("span", { className: "hidden sm:block", children: "Next" }),
29206
- /* @__PURE__ */ (0, import_jsx_runtime52.jsx)(ChevronRight, {})
29247
+ /* @__PURE__ */ (0, import_jsx_runtime53.jsx)("span", { className: "hidden sm:block", children: "Next" }),
29248
+ /* @__PURE__ */ (0, import_jsx_runtime53.jsx)(ChevronRight, {})
29207
29249
  ]
29208
29250
  }
29209
29251
  );
@@ -29212,7 +29254,7 @@ function PaginationEllipsis({
29212
29254
  className,
29213
29255
  ...props
29214
29256
  }) {
29215
- return /* @__PURE__ */ (0, import_jsx_runtime52.jsxs)(
29257
+ return /* @__PURE__ */ (0, import_jsx_runtime53.jsxs)(
29216
29258
  "span",
29217
29259
  {
29218
29260
  "aria-hidden": true,
@@ -29220,15 +29262,15 @@ function PaginationEllipsis({
29220
29262
  className: cn("flex size-9 items-center justify-center", className),
29221
29263
  ...props,
29222
29264
  children: [
29223
- /* @__PURE__ */ (0, import_jsx_runtime52.jsx)(Ellipsis, { className: "size-4" }),
29224
- /* @__PURE__ */ (0, import_jsx_runtime52.jsx)("span", { className: "sr-only", children: "More pages" })
29265
+ /* @__PURE__ */ (0, import_jsx_runtime53.jsx)(Ellipsis, { className: "size-4" }),
29266
+ /* @__PURE__ */ (0, import_jsx_runtime53.jsx)("span", { className: "sr-only", children: "More pages" })
29225
29267
  ]
29226
29268
  }
29227
29269
  );
29228
29270
  }
29229
29271
 
29230
29272
  // src/components/DataDisplay/Pagination/Pagination.tsx
29231
- var import_jsx_runtime53 = require("react/jsx-runtime");
29273
+ var import_jsx_runtime54 = require("react/jsx-runtime");
29232
29274
  var CustomPagination = ({
29233
29275
  totalPages,
29234
29276
  currentPage,
@@ -29274,10 +29316,10 @@ var CustomPagination = ({
29274
29316
  }
29275
29317
  };
29276
29318
  const pageNumbers = getPageNumbers();
29277
- return /* @__PURE__ */ (0, import_jsx_runtime53.jsxs)("div", { className: "flex flex-row gap-1 w-full items-center justify-between", children: [
29278
- /* @__PURE__ */ (0, import_jsx_runtime53.jsxs)("div", { className: "flex items-center gap-2", children: [
29279
- /* @__PURE__ */ (0, import_jsx_runtime53.jsx)("p", { className: "text-sm text-muted-foreground whitespace-nowrap", children: "Items per page:" }),
29280
- /* @__PURE__ */ (0, import_jsx_runtime53.jsxs)(
29319
+ return /* @__PURE__ */ (0, import_jsx_runtime54.jsxs)("div", { className: "flex flex-row gap-1 w-full items-center justify-between", children: [
29320
+ /* @__PURE__ */ (0, import_jsx_runtime54.jsxs)("div", { className: "flex items-center gap-2", children: [
29321
+ /* @__PURE__ */ (0, import_jsx_runtime54.jsx)("p", { className: "text-sm text-muted-foreground whitespace-nowrap", children: "Items per page:" }),
29322
+ /* @__PURE__ */ (0, import_jsx_runtime54.jsxs)(
29281
29323
  Select,
29282
29324
  {
29283
29325
  defaultValue: String(perPage),
@@ -29285,26 +29327,26 @@ var CustomPagination = ({
29285
29327
  onPageChange({ page: 1, itemsPerPage: Number(value) });
29286
29328
  },
29287
29329
  children: [
29288
- /* @__PURE__ */ (0, import_jsx_runtime53.jsx)(SelectTrigger, { className: "w-[100px]", children: /* @__PURE__ */ (0, import_jsx_runtime53.jsx)(SelectValue, { placeholder: "Select" }) }),
29289
- /* @__PURE__ */ (0, import_jsx_runtime53.jsxs)(SelectContent, { children: [
29290
- /* @__PURE__ */ (0, import_jsx_runtime53.jsx)(SelectItem, { value: "5", children: "5" }),
29291
- /* @__PURE__ */ (0, import_jsx_runtime53.jsx)(SelectItem, { value: "10", children: "10" }),
29292
- /* @__PURE__ */ (0, import_jsx_runtime53.jsx)(SelectItem, { value: "20", children: "20" }),
29293
- /* @__PURE__ */ (0, import_jsx_runtime53.jsx)(SelectItem, { value: "50", children: "50" })
29330
+ /* @__PURE__ */ (0, import_jsx_runtime54.jsx)(SelectTrigger, { className: "w-[100px]", children: /* @__PURE__ */ (0, import_jsx_runtime54.jsx)(SelectValue, { placeholder: "Select" }) }),
29331
+ /* @__PURE__ */ (0, import_jsx_runtime54.jsxs)(SelectContent, { children: [
29332
+ /* @__PURE__ */ (0, import_jsx_runtime54.jsx)(SelectItem, { value: "5", children: "5" }),
29333
+ /* @__PURE__ */ (0, import_jsx_runtime54.jsx)(SelectItem, { value: "10", children: "10" }),
29334
+ /* @__PURE__ */ (0, import_jsx_runtime54.jsx)(SelectItem, { value: "20", children: "20" }),
29335
+ /* @__PURE__ */ (0, import_jsx_runtime54.jsx)(SelectItem, { value: "50", children: "50" })
29294
29336
  ] })
29295
29337
  ]
29296
29338
  }
29297
29339
  )
29298
29340
  ] }),
29299
- /* @__PURE__ */ (0, import_jsx_runtime53.jsx)(Pagination, { className: "justify-end", children: /* @__PURE__ */ (0, import_jsx_runtime53.jsxs)(PaginationContent, { children: [
29300
- /* @__PURE__ */ (0, import_jsx_runtime53.jsx)(PaginationItem, { children: /* @__PURE__ */ (0, import_jsx_runtime53.jsx)(
29341
+ /* @__PURE__ */ (0, import_jsx_runtime54.jsx)(Pagination, { className: "justify-end", children: /* @__PURE__ */ (0, import_jsx_runtime54.jsxs)(PaginationContent, { children: [
29342
+ /* @__PURE__ */ (0, import_jsx_runtime54.jsx)(PaginationItem, { children: /* @__PURE__ */ (0, import_jsx_runtime54.jsx)(
29301
29343
  PaginationPrevious,
29302
29344
  {
29303
29345
  onClick: () => handlePageChange(currentPage - 1),
29304
29346
  className: currentPage === 1 ? "pointer-events-none opacity-50" : "cursor-pointer"
29305
29347
  }
29306
29348
  ) }),
29307
- pageNumbers.map((pageNumber, index) => /* @__PURE__ */ (0, import_jsx_runtime53.jsx)(PaginationItem, { children: pageNumber === "..." ? /* @__PURE__ */ (0, import_jsx_runtime53.jsx)(PaginationEllipsis, {}) : /* @__PURE__ */ (0, import_jsx_runtime53.jsx)(
29349
+ pageNumbers.map((pageNumber, index) => /* @__PURE__ */ (0, import_jsx_runtime54.jsx)(PaginationItem, { children: pageNumber === "..." ? /* @__PURE__ */ (0, import_jsx_runtime54.jsx)(PaginationEllipsis, {}) : /* @__PURE__ */ (0, import_jsx_runtime54.jsx)(
29308
29350
  PaginationLink,
29309
29351
  {
29310
29352
  onClick: () => handlePageChange(pageNumber),
@@ -29313,7 +29355,7 @@ var CustomPagination = ({
29313
29355
  children: pageNumber
29314
29356
  }
29315
29357
  ) }, index)),
29316
- /* @__PURE__ */ (0, import_jsx_runtime53.jsx)(PaginationItem, { children: /* @__PURE__ */ (0, import_jsx_runtime53.jsx)(
29358
+ /* @__PURE__ */ (0, import_jsx_runtime54.jsx)(PaginationItem, { children: /* @__PURE__ */ (0, import_jsx_runtime54.jsx)(
29317
29359
  PaginationNext,
29318
29360
  {
29319
29361
  onClick: () => handlePageChange(currentPage + 1),
@@ -29326,12 +29368,48 @@ var CustomPagination = ({
29326
29368
  var Pagination_default = CustomPagination;
29327
29369
 
29328
29370
  // src/components/Navigation/Tabs/Tabs.tsx
29371
+ var import_react27 = require("react");
29329
29372
  var import_link5 = __toESM(require("next/link"));
29330
29373
  var import_navigation3 = require("next/navigation");
29331
- var import_react26 = require("react");
29332
- var import_jsx_runtime54 = require("react/jsx-runtime");
29333
- var Tabs = ({ className, style, tabs, verticalMenu, pathname, canvasMode, isBuilder = true }) => {
29334
- const rawTabs = Array.isArray(tabs) ? tabs : [];
29374
+ var import_jsx_runtime55 = require("react/jsx-runtime");
29375
+ var Tabs = ({ className, style, tabs, verticalMenu, pathname, canvasMode, isBuilder = true, source, parentKey, menuNameKey, menuUrlKey, loading }) => {
29376
+ function groupMenus(menus = []) {
29377
+ const menuMap = /* @__PURE__ */ new Map();
29378
+ menus.forEach((menu) => {
29379
+ menuMap.set(menu.menu_id, {
29380
+ ...menu,
29381
+ url: menu[menuUrlKey || "url"],
29382
+ header: menu[menuNameKey || "name"],
29383
+ isDropDown: false,
29384
+ children: []
29385
+ });
29386
+ });
29387
+ const rootMenus = [];
29388
+ menus.forEach((menu) => {
29389
+ if (menu[parentKey || "parentId"]) {
29390
+ const parent = menuMap.get(menu[parentKey || "parentId"]);
29391
+ if (parent) {
29392
+ parent.children.push(menuMap.get(menu.menu_id));
29393
+ }
29394
+ } else {
29395
+ rootMenus.push(menuMap.get(menu.menu_id));
29396
+ }
29397
+ });
29398
+ const sortMenus = (list) => list.sort((a, b) => (a.sort_order || 0) - (b.sort_order || 0)).map((menu) => {
29399
+ const sortedChildren = sortMenus(menu.children || []);
29400
+ return {
29401
+ ...menu,
29402
+ children: sortedChildren,
29403
+ isDropDown: sortedChildren.length > 0
29404
+ };
29405
+ });
29406
+ return sortMenus(rootMenus);
29407
+ }
29408
+ const rawTabs = (0, import_react27.useMemo)(() => {
29409
+ if (!Array.isArray(tabs)) return [];
29410
+ if (source === "manual") return Array.isArray(tabs) ? tabs : [];
29411
+ return groupMenus(tabs);
29412
+ }, [tabs, source, parentKey, menuNameKey, menuUrlKey]);
29335
29413
  const baseClasses = "text-[12px] text-foreground p-2 text-center rounded-md transition-colors";
29336
29414
  const activeClasses = "bg-white/10 text-white";
29337
29415
  const hoverClasses = "hover:bg-white/5";
@@ -29340,9 +29418,9 @@ var Tabs = ({ className, style, tabs, verticalMenu, pathname, canvasMode, isBuil
29340
29418
  return pathname === path || path !== "/" && pathname?.startsWith(path);
29341
29419
  };
29342
29420
  const router = (0, import_navigation3.useRouter)();
29343
- const [showExitDialog, setShowExitDialog] = (0, import_react26.useState)(false);
29344
- const [pendingUrl, setPendingUrl] = (0, import_react26.useState)(null);
29345
- const handleBuilderExit = (0, import_react26.useCallback)(
29421
+ const [showExitDialog, setShowExitDialog] = (0, import_react27.useState)(false);
29422
+ const [pendingUrl, setPendingUrl] = (0, import_react27.useState)(null);
29423
+ const handleBuilderExit = (0, import_react27.useCallback)(
29346
29424
  (e, url) => {
29347
29425
  if (isBuilder) {
29348
29426
  e.preventDefault();
@@ -29361,23 +29439,31 @@ var Tabs = ({ className, style, tabs, verticalMenu, pathname, canvasMode, isBuil
29361
29439
  const renderDesktopTab = (tab, index) => {
29362
29440
  const finalClasses = [baseClasses, isActive(tab.url) ? activeClasses : hoverClasses, tab.className || ""].join(" ");
29363
29441
  if (Array.isArray(tab.children) && tab.children.length > 0 && tab.isDropDown) {
29364
- return /* @__PURE__ */ (0, import_jsx_runtime54.jsxs)(DropdownMenu, { children: [
29365
- /* @__PURE__ */ (0, import_jsx_runtime54.jsxs)(DropdownMenuTrigger, { className: `${finalClasses} inline-flex items-center gap-1`, children: [
29442
+ return /* @__PURE__ */ (0, import_jsx_runtime55.jsxs)(DropdownMenu, { children: [
29443
+ /* @__PURE__ */ (0, import_jsx_runtime55.jsxs)(DropdownMenuTrigger, { className: `${finalClasses} inline-flex items-center gap-1`, children: [
29366
29444
  tab.header,
29367
- /* @__PURE__ */ (0, import_jsx_runtime54.jsx)(ChevronDown, { className: "h-4 w-4 opacity-80" })
29445
+ /* @__PURE__ */ (0, import_jsx_runtime55.jsx)(ChevronDown, { className: "h-4 w-4 opacity-80" })
29368
29446
  ] }),
29369
- /* @__PURE__ */ (0, import_jsx_runtime54.jsx)(
29447
+ /* @__PURE__ */ (0, import_jsx_runtime55.jsx)(
29370
29448
  DropdownMenuContent,
29371
29449
  {
29372
29450
  align: "start",
29373
29451
  sideOffset: 6,
29374
29452
  className: "z-50 min-w-[160px] rounded-md border border-gray-200 bg-white p-1 shadow-lg",
29375
- children: tab.children.map((item) => /* @__PURE__ */ (0, import_jsx_runtime54.jsx)(
29453
+ children: tab.children.map((item) => /* @__PURE__ */ (0, import_jsx_runtime55.jsx)(
29376
29454
  DropdownMenuItem,
29377
29455
  {
29378
29456
  asChild: true,
29379
29457
  className: "cursor-pointer rounded-sm px-3 py-2 text-[12px] text-gray-800 hover:bg-gray-100 focus:bg-gray-100",
29380
- children: /* @__PURE__ */ (0, import_jsx_runtime54.jsx)(import_link5.default, { href: item.url || "#", onClick: (e) => handleBuilderExit(e, item.url || "#"), children: item.header })
29458
+ children: /* @__PURE__ */ (0, import_jsx_runtime55.jsx)(
29459
+ import_link5.default,
29460
+ {
29461
+ href: item.url || "#",
29462
+ target: item.opens_in_new_tab ? "_blank" : "_self",
29463
+ onClick: (e) => handleBuilderExit(e, item.url || "#"),
29464
+ children: item.header
29465
+ }
29466
+ )
29381
29467
  },
29382
29468
  item.id
29383
29469
  ))
@@ -29385,24 +29471,25 @@ var Tabs = ({ className, style, tabs, verticalMenu, pathname, canvasMode, isBuil
29385
29471
  )
29386
29472
  ] }, index);
29387
29473
  }
29388
- return tab.url ? /* @__PURE__ */ (0, import_jsx_runtime54.jsx)(
29474
+ return tab.url ? /* @__PURE__ */ (0, import_jsx_runtime55.jsx)(
29389
29475
  import_link5.default,
29390
29476
  {
29391
29477
  href: tab.url,
29478
+ target: tab.opens_in_new_tab ? "_blank" : "_self",
29392
29479
  className: finalClasses,
29393
29480
  style: tab.style,
29394
29481
  onClick: (e) => handleBuilderExit(e, tab.url || "#"),
29395
29482
  children: tab.header
29396
29483
  },
29397
29484
  index
29398
- ) : /* @__PURE__ */ (0, import_jsx_runtime54.jsx)("div", { className: finalClasses, style: tab.style, role: "button", tabIndex: 0, children: tab.header }, index);
29485
+ ) : /* @__PURE__ */ (0, import_jsx_runtime55.jsx)("div", { className: finalClasses, style: tab.style, role: "button", tabIndex: 0, children: tab.header }, index);
29399
29486
  };
29400
- const renderMobileMenu = () => /* @__PURE__ */ (0, import_jsx_runtime54.jsxs)(DropdownMenu, { children: [
29401
- /* @__PURE__ */ (0, import_jsx_runtime54.jsxs)(DropdownMenuTrigger, { className: "flex items-center gap-2 px-3 py-2 rounded-md bg-white/10 text-white text-sm", children: [
29402
- /* @__PURE__ */ (0, import_jsx_runtime54.jsx)(Menu, { className: "h-4 w-4" }),
29487
+ const renderMobileMenu = () => /* @__PURE__ */ (0, import_jsx_runtime55.jsxs)(DropdownMenu, { children: [
29488
+ /* @__PURE__ */ (0, import_jsx_runtime55.jsxs)(DropdownMenuTrigger, { className: "flex items-center gap-2 px-3 py-2 rounded-md bg-white/10 text-white text-sm", children: [
29489
+ /* @__PURE__ */ (0, import_jsx_runtime55.jsx)(Menu, { className: "h-4 w-4" }),
29403
29490
  "Menu"
29404
29491
  ] }),
29405
- /* @__PURE__ */ (0, import_jsx_runtime54.jsx)(
29492
+ /* @__PURE__ */ (0, import_jsx_runtime55.jsx)(
29406
29493
  DropdownMenuContent,
29407
29494
  {
29408
29495
  align: "start",
@@ -29411,25 +29498,25 @@ var Tabs = ({ className, style, tabs, verticalMenu, pathname, canvasMode, isBuil
29411
29498
  children: rawTabs.map((tab, i) => {
29412
29499
  const hasChildren = Array.isArray(tab.children) && tab.children.length > 0 && tab.isDropDown;
29413
29500
  if (hasChildren) {
29414
- return /* @__PURE__ */ (0, import_jsx_runtime54.jsxs)(DropdownMenuSub, { children: [
29415
- /* @__PURE__ */ (0, import_jsx_runtime54.jsx)(DropdownMenuSubTrigger, { className: "flex items-center justify-between cursor-pointer rounded-sm px-3 py-2 text-[13px] text-foreground hover:text-foreground", children: tab.header }),
29416
- /* @__PURE__ */ (0, import_jsx_runtime54.jsx)(DropdownMenuSubContent, { className: "bg-white border shadow-lg rounded-md p-1", children: tab.children.map((item) => /* @__PURE__ */ (0, import_jsx_runtime54.jsx)(
29501
+ return /* @__PURE__ */ (0, import_jsx_runtime55.jsxs)(DropdownMenuSub, { children: [
29502
+ /* @__PURE__ */ (0, import_jsx_runtime55.jsx)(DropdownMenuSubTrigger, { className: "flex items-center justify-between cursor-pointer rounded-sm px-3 py-2 text-[13px] text-foreground hover:text-foreground", children: tab.header }),
29503
+ /* @__PURE__ */ (0, import_jsx_runtime55.jsx)(DropdownMenuSubContent, { className: "bg-white border shadow-lg rounded-md p-1", children: tab.children.map((item) => /* @__PURE__ */ (0, import_jsx_runtime55.jsx)(
29417
29504
  DropdownMenuItem,
29418
29505
  {
29419
29506
  asChild: true,
29420
29507
  className: "cursor-pointer rounded-sm px-3 py-2 text-[12px] text-gray-800 hover:bg-gray-100",
29421
- children: /* @__PURE__ */ (0, import_jsx_runtime54.jsx)(import_link5.default, { href: item.url || "#", onClick: (e) => handleBuilderExit(e, item.url || "#"), children: item.header })
29508
+ children: /* @__PURE__ */ (0, import_jsx_runtime55.jsx)(import_link5.default, { href: item.url || "#", onClick: (e) => handleBuilderExit(e, item.url || "#"), children: item.header })
29422
29509
  },
29423
29510
  item.id
29424
29511
  )) })
29425
29512
  ] }, i);
29426
29513
  }
29427
- return /* @__PURE__ */ (0, import_jsx_runtime54.jsx)(
29514
+ return /* @__PURE__ */ (0, import_jsx_runtime55.jsx)(
29428
29515
  DropdownMenuItem,
29429
29516
  {
29430
29517
  asChild: true,
29431
29518
  className: "cursor-pointer rounded-sm px-3 py-2 text-[13px] text-gray-800 hover:bg-gray-100",
29432
- children: /* @__PURE__ */ (0, import_jsx_runtime54.jsx)(import_link5.default, { href: tab.url || "#", onClick: (e) => handleBuilderExit(e, tab.url || "#"), children: tab.header })
29519
+ children: /* @__PURE__ */ (0, import_jsx_runtime55.jsx)(import_link5.default, { href: tab.url || "#", onClick: (e) => handleBuilderExit(e, tab.url || "#"), children: tab.header })
29433
29520
  },
29434
29521
  i
29435
29522
  );
@@ -29439,19 +29526,19 @@ var Tabs = ({ className, style, tabs, verticalMenu, pathname, canvasMode, isBuil
29439
29526
  ] });
29440
29527
  const forceMobile = canvasMode ? canvasMode === "mobile" || canvasMode === "tablet" : void 0;
29441
29528
  const forceDesktop = canvasMode ? canvasMode === "desktop" : void 0;
29442
- return /* @__PURE__ */ (0, import_jsx_runtime54.jsxs)(import_jsx_runtime54.Fragment, { children: [
29443
- /* @__PURE__ */ (0, import_jsx_runtime54.jsxs)("div", { className, style, children: [
29444
- forceDesktop !== void 0 ? forceDesktop && /* @__PURE__ */ (0, import_jsx_runtime54.jsx)("div", { className: "hidden md:flex", children: /* @__PURE__ */ (0, import_jsx_runtime54.jsx)("div", { className: `flex gap-2 ${verticalMenu ? "flex-col items-start" : "flex-row"}`, children: rawTabs.map(renderDesktopTab) }) }) : /* @__PURE__ */ (0, import_jsx_runtime54.jsx)("div", { className: "hidden md:flex", children: /* @__PURE__ */ (0, import_jsx_runtime54.jsx)("div", { className: `flex gap-2 ${verticalMenu ? "flex-col items-start" : "flex-row"}`, children: rawTabs.map(renderDesktopTab) }) }),
29445
- forceMobile !== void 0 ? forceMobile && /* @__PURE__ */ (0, import_jsx_runtime54.jsx)("div", { children: renderMobileMenu() }) : /* @__PURE__ */ (0, import_jsx_runtime54.jsx)("div", { className: "flex md:hidden", children: renderMobileMenu() })
29529
+ return /* @__PURE__ */ (0, import_jsx_runtime55.jsxs)(import_jsx_runtime55.Fragment, { children: [
29530
+ /* @__PURE__ */ (0, import_jsx_runtime55.jsxs)("div", { className, style, children: [
29531
+ forceDesktop !== void 0 ? forceDesktop && /* @__PURE__ */ (0, import_jsx_runtime55.jsx)("div", { className: "hidden md:flex", children: /* @__PURE__ */ (0, import_jsx_runtime55.jsx)("div", { className: `flex gap-2 ${verticalMenu ? "flex-col items-start" : "flex-row"}`, children: rawTabs.map(renderDesktopTab) }) }) : /* @__PURE__ */ (0, import_jsx_runtime55.jsx)("div", { className: "hidden md:flex", children: /* @__PURE__ */ (0, import_jsx_runtime55.jsx)("div", { className: `flex gap-2 ${verticalMenu ? "flex-col items-start" : "flex-row"}`, children: rawTabs.map(renderDesktopTab) }) }),
29532
+ forceMobile !== void 0 ? forceMobile && /* @__PURE__ */ (0, import_jsx_runtime55.jsx)("div", { children: renderMobileMenu() }) : /* @__PURE__ */ (0, import_jsx_runtime55.jsx)("div", { className: "flex md:hidden", children: renderMobileMenu() })
29446
29533
  ] }),
29447
- /* @__PURE__ */ (0, import_jsx_runtime54.jsx)(Dialog, { open: showExitDialog, onOpenChange: setShowExitDialog, children: /* @__PURE__ */ (0, import_jsx_runtime54.jsxs)(DialogContent, { className: "bg-[#fff]", children: [
29448
- /* @__PURE__ */ (0, import_jsx_runtime54.jsxs)(DialogHeader, { children: [
29449
- /* @__PURE__ */ (0, import_jsx_runtime54.jsx)(DialogTitle, { children: "Exit Builder?" }),
29450
- /* @__PURE__ */ (0, import_jsx_runtime54.jsx)(DialogDescription, { children: "You are about to leave the builder. Any unsaved changes may be lost." })
29534
+ /* @__PURE__ */ (0, import_jsx_runtime55.jsx)(Dialog, { open: showExitDialog, onOpenChange: setShowExitDialog, children: /* @__PURE__ */ (0, import_jsx_runtime55.jsxs)(DialogContent, { className: "bg-[#fff]", children: [
29535
+ /* @__PURE__ */ (0, import_jsx_runtime55.jsxs)(DialogHeader, { children: [
29536
+ /* @__PURE__ */ (0, import_jsx_runtime55.jsx)(DialogTitle, { children: "Exit Builder?" }),
29537
+ /* @__PURE__ */ (0, import_jsx_runtime55.jsx)(DialogDescription, { children: "You are about to leave the builder. Any unsaved changes may be lost." })
29451
29538
  ] }),
29452
- /* @__PURE__ */ (0, import_jsx_runtime54.jsxs)(DialogFooter, { children: [
29453
- /* @__PURE__ */ (0, import_jsx_runtime54.jsx)(Button, { className: "cursor-pointer bg-[#12715b] text-[#fff]", variant: "outline", onClick: () => setShowExitDialog(false), children: "Cancel" }),
29454
- /* @__PURE__ */ (0, import_jsx_runtime54.jsx)(Button, { className: "cursor-pointer border-[#12715b] border", onClick: confirmExit, children: "Yes, Exit" })
29539
+ /* @__PURE__ */ (0, import_jsx_runtime55.jsxs)(DialogFooter, { children: [
29540
+ /* @__PURE__ */ (0, import_jsx_runtime55.jsx)(Button, { className: "cursor-pointer bg-[#12715b] text-[#fff]", variant: "outline", onClick: () => setShowExitDialog(false), children: "Cancel" }),
29541
+ /* @__PURE__ */ (0, import_jsx_runtime55.jsx)(Button, { className: "cursor-pointer border-[#12715b] border", onClick: confirmExit, children: "Yes, Exit" })
29455
29542
  ] })
29456
29543
  ] }) })
29457
29544
  ] });
@@ -29459,34 +29546,42 @@ var Tabs = ({ className, style, tabs, verticalMenu, pathname, canvasMode, isBuil
29459
29546
  var Tabs_default = Tabs;
29460
29547
 
29461
29548
  // src/components/Navigation/Stages/Stages.tsx
29462
- var import_react27 = __toESM(require("react"));
29463
- var import_jsx_runtime55 = require("react/jsx-runtime");
29464
- var StagesComponent = ({ stages, isShowBtn, buttonText, className, style, onStageChange }) => {
29465
- return /* @__PURE__ */ (0, import_jsx_runtime55.jsx)("div", { className, style, children: /* @__PURE__ */ (0, import_jsx_runtime55.jsxs)("div", { className: "flex items-center justify-between bg-red p-2 rounded-lg border border-gray-200 w-full", children: [
29466
- /* @__PURE__ */ (0, import_jsx_runtime55.jsx)("div", { className: "flex items-center", children: /* @__PURE__ */ (0, import_jsx_runtime55.jsx)("button", { className: "p-2 hover:bg-gray-100 rounded", children: /* @__PURE__ */ (0, import_jsx_runtime55.jsx)("svg", { className: "w-4 h-4 text-gray-600", fill: "none", stroke: "currentColor", viewBox: "0 0 24 24", children: /* @__PURE__ */ (0, import_jsx_runtime55.jsx)("path", { strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: 2, d: "M19 9l-7 7-7-7" }) }) }) }),
29467
- /* @__PURE__ */ (0, import_jsx_runtime55.jsx)("div", { className: "flex items-center flex-1 px-2 flex-wrap gap-2", children: stages?.length > 0 && stages?.map((stage, index) => /* @__PURE__ */ (0, import_jsx_runtime55.jsxs)(import_react27.default.Fragment, { children: [
29468
- /* @__PURE__ */ (0, import_jsx_runtime55.jsx)(
29469
- "button",
29470
- {
29471
- className: `min-w-[120px] px-4 py-2 rounded-full text-sm font-medium transition-colors duration-200 whitespace-nowrap ${stage.isActive ? "bg-[#034486] text-white shadow-md" : "bg-white text-gray-700 hover:bg-gray-100 border border-gray-200"}`,
29472
- onClick: () => {
29473
- if (onStageChange) {
29474
- onStageChange(stage.id);
29475
- }
29476
- },
29477
- children: stage.header
29478
- }
29479
- ),
29480
- index < stages.length - 1 && /* @__PURE__ */ (0, import_jsx_runtime55.jsx)("div", { className: "flex-shrink-0 w-3 h-px bg-gray-300" })
29481
- ] }, stage.id)) }),
29482
- isShowBtn && /* @__PURE__ */ (0, import_jsx_runtime55.jsx)("div", { className: "flex items-center", children: /* @__PURE__ */ (0, import_jsx_runtime55.jsx)(
29549
+ var import_react28 = __toESM(require("react"));
29550
+ var import_jsx_runtime56 = require("react/jsx-runtime");
29551
+ var StagesComponent = ({ stages, isShowBtn, buttonText, className, style, onStageChange, currentStage }) => {
29552
+ return /* @__PURE__ */ (0, import_jsx_runtime56.jsx)("div", { className, style, children: /* @__PURE__ */ (0, import_jsx_runtime56.jsxs)("div", { className: "flex items-center justify-between bg-red p-2 rounded-lg border border-gray-200 w-full", children: [
29553
+ /* @__PURE__ */ (0, import_jsx_runtime56.jsx)("div", { className: "flex items-center", children: /* @__PURE__ */ (0, import_jsx_runtime56.jsx)("button", { className: "p-2 hover:bg-gray-100 rounded", children: /* @__PURE__ */ (0, import_jsx_runtime56.jsx)("svg", { className: "w-4 h-4 text-gray-600", fill: "none", stroke: "currentColor", viewBox: "0 0 24 24", children: /* @__PURE__ */ (0, import_jsx_runtime56.jsx)("path", { strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: 2, d: "M19 9l-7 7-7-7" }) }) }) }),
29554
+ /* @__PURE__ */ (0, import_jsx_runtime56.jsx)("div", { className: "flex items-center flex-1 px-2 flex-wrap gap-2", children: stages?.length > 0 && stages?.map((stage, index) => {
29555
+ const currentIndex = stages.findIndex((s) => s.key === currentStage);
29556
+ const isAllCompleted = currentStage === "completed";
29557
+ const isCompleted = isAllCompleted || index < currentIndex;
29558
+ const isActive = !isAllCompleted && index === currentIndex;
29559
+ return /* @__PURE__ */ (0, import_jsx_runtime56.jsxs)(import_react28.default.Fragment, { children: [
29560
+ /* @__PURE__ */ (0, import_jsx_runtime56.jsx)(
29561
+ "button",
29562
+ {
29563
+ className: `
29564
+ min-w-[120px] px-4 py-2 rounded-full text-sm font-medium transition-colors duration-200 whitespace-nowrap
29565
+ ${isActive ? "bg-[#034486] text-white shadow-md" : isCompleted ? "bg-[#e0f2fe] text-[#034486] border border-[#034486]" : "bg-white text-gray-700 hover:bg-gray-100 border border-gray-200"}`,
29566
+ onClick: () => {
29567
+ if (onStageChange) {
29568
+ onStageChange(stage.key);
29569
+ }
29570
+ },
29571
+ children: stage.header
29572
+ }
29573
+ ),
29574
+ index < stages.length - 1 && /* @__PURE__ */ (0, import_jsx_runtime56.jsx)("div", { className: "flex-shrink-0 w-3 h-px bg-gray-300" })
29575
+ ] }, stage.id);
29576
+ }) }),
29577
+ isShowBtn && /* @__PURE__ */ (0, import_jsx_runtime56.jsx)("div", { className: "flex items-center", children: /* @__PURE__ */ (0, import_jsx_runtime56.jsx)(
29483
29578
  "button",
29484
29579
  {
29485
29580
  className: "bg-[#034486] text-white px-6 py-2 rounded-lg text-sm font-medium transition-colors duration-200 shadow-sm",
29486
29581
  onClick: () => {
29487
29582
  const activeStage = stages?.find((stage) => stage.isActive);
29488
29583
  if (activeStage && onStageChange) {
29489
- onStageChange(activeStage.id);
29584
+ onStageChange("completed");
29490
29585
  }
29491
29586
  },
29492
29587
  children: buttonText
@@ -29497,26 +29592,26 @@ var StagesComponent = ({ stages, isShowBtn, buttonText, className, style, onStag
29497
29592
  var Stages_default = StagesComponent;
29498
29593
 
29499
29594
  // src/components/Navigation/Spacer/Spacer.tsx
29500
- var import_jsx_runtime56 = require("react/jsx-runtime");
29595
+ var import_jsx_runtime57 = require("react/jsx-runtime");
29501
29596
  var Spacer = ({ className, style }) => {
29502
- return /* @__PURE__ */ (0, import_jsx_runtime56.jsx)("div", { className: `${className}`, style });
29597
+ return /* @__PURE__ */ (0, import_jsx_runtime57.jsx)("div", { className: `${className}`, style });
29503
29598
  };
29504
29599
  var Spacer_default = Spacer;
29505
29600
 
29506
29601
  // src/components/Navigation/Profile/Profile.tsx
29507
- var import_jsx_runtime57 = require("react/jsx-runtime");
29602
+ var import_jsx_runtime58 = require("react/jsx-runtime");
29508
29603
 
29509
29604
  // src/components/Navigation/Notification/Notification.tsx
29510
- var import_jsx_runtime58 = require("react/jsx-runtime");
29605
+ var import_jsx_runtime59 = require("react/jsx-runtime");
29511
29606
 
29512
29607
  // src/components/Navigation/Logo/Logo.tsx
29513
- var import_jsx_runtime59 = require("react/jsx-runtime");
29608
+ var import_jsx_runtime60 = require("react/jsx-runtime");
29514
29609
 
29515
29610
  // src/components/ui/avatar.tsx
29516
- var React10 = __toESM(require("react"));
29611
+ var React11 = __toESM(require("react"));
29517
29612
  var AvatarPrimitive = __toESM(require("@radix-ui/react-avatar"));
29518
- var import_jsx_runtime60 = require("react/jsx-runtime");
29519
- var Avatar = React10.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime60.jsx)(
29613
+ var import_jsx_runtime61 = require("react/jsx-runtime");
29614
+ var Avatar = React11.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime61.jsx)(
29520
29615
  AvatarPrimitive.Root,
29521
29616
  {
29522
29617
  ref,
@@ -29528,7 +29623,7 @@ var Avatar = React10.forwardRef(({ className, ...props }, ref) => /* @__PURE__ *
29528
29623
  }
29529
29624
  ));
29530
29625
  Avatar.displayName = AvatarPrimitive.Root.displayName;
29531
- var AvatarImage = React10.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime60.jsx)(
29626
+ var AvatarImage = React11.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime61.jsx)(
29532
29627
  AvatarPrimitive.Image,
29533
29628
  {
29534
29629
  ref,
@@ -29537,7 +29632,7 @@ var AvatarImage = React10.forwardRef(({ className, ...props }, ref) => /* @__PUR
29537
29632
  }
29538
29633
  ));
29539
29634
  AvatarImage.displayName = AvatarPrimitive.Image.displayName;
29540
- var AvatarFallback = React10.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime60.jsx)(
29635
+ var AvatarFallback = React11.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime61.jsx)(
29541
29636
  AvatarPrimitive.Fallback,
29542
29637
  {
29543
29638
  ref,
@@ -29555,8 +29650,8 @@ var import_link6 = __toESM(require("next/link"));
29555
29650
  var import_image3 = __toESM(require("next/image"));
29556
29651
  var import_navigation4 = require("next/navigation");
29557
29652
  var import_react_dropdown_menu = require("@radix-ui/react-dropdown-menu");
29558
- var import_react28 = require("react");
29559
- var import_jsx_runtime61 = require("react/jsx-runtime");
29653
+ var import_react29 = require("react");
29654
+ var import_jsx_runtime62 = require("react/jsx-runtime");
29560
29655
  function Navbar({
29561
29656
  style,
29562
29657
  badgeType,
@@ -29576,9 +29671,9 @@ function Navbar({
29576
29671
  }) {
29577
29672
  const isMobileView = canvasMode === "mobile" || canvasMode === "tablet";
29578
29673
  const router = (0, import_navigation4.useRouter)();
29579
- const [showExitDialog, setShowExitDialog] = (0, import_react28.useState)(false);
29580
- const [pendingUrl, setPendingUrl] = (0, import_react28.useState)(null);
29581
- const handleBuilderExit = (0, import_react28.useCallback)(
29674
+ const [showExitDialog, setShowExitDialog] = (0, import_react29.useState)(false);
29675
+ const [pendingUrl, setPendingUrl] = (0, import_react29.useState)(null);
29676
+ const handleBuilderExit = (0, import_react29.useCallback)(
29582
29677
  (e, url) => {
29583
29678
  if (isBuilder) {
29584
29679
  e.preventDefault();
@@ -29594,29 +29689,29 @@ function Navbar({
29594
29689
  router.push(pendingUrl);
29595
29690
  }
29596
29691
  };
29597
- const formatedMenu = (0, import_react28.useMemo)(() => {
29692
+ const formatedMenu = (0, import_react29.useMemo)(() => {
29598
29693
  if (source === "state" && navList && navList.length) {
29599
29694
  return navList.map((i) => ({ ...i, header: i.name || "Menu" }));
29600
29695
  }
29601
29696
  return list || [];
29602
29697
  }, [source, navList]);
29603
- return /* @__PURE__ */ (0, import_jsx_runtime61.jsxs)(import_jsx_runtime61.Fragment, { children: [
29604
- /* @__PURE__ */ (0, import_jsx_runtime61.jsx)(
29698
+ return /* @__PURE__ */ (0, import_jsx_runtime62.jsxs)(import_jsx_runtime62.Fragment, { children: [
29699
+ /* @__PURE__ */ (0, import_jsx_runtime62.jsx)(
29605
29700
  "nav",
29606
29701
  {
29607
29702
  className: "w-full border-b border-b-white dark:border-b-gray-800 dark:bg-gray-800 bg-white shadow-sm",
29608
29703
  style,
29609
- children: /* @__PURE__ */ (0, import_jsx_runtime61.jsxs)("div", { className: "mx-auto flex max-w-[90%] items-center justify-between px-4 py-4", children: [
29610
- /* @__PURE__ */ (0, import_jsx_runtime61.jsx)(
29704
+ children: /* @__PURE__ */ (0, import_jsx_runtime62.jsxs)("div", { className: "mx-auto flex max-w-[90%] items-center justify-between px-4 py-4", children: [
29705
+ /* @__PURE__ */ (0, import_jsx_runtime62.jsx)(
29611
29706
  import_link6.default,
29612
29707
  {
29613
29708
  href: "/",
29614
29709
  onClick: (e) => handleBuilderExit(e, "/"),
29615
29710
  className: "flex items-center space-x-2",
29616
- children: imageUrl ? /* @__PURE__ */ (0, import_jsx_runtime61.jsx)(import_image3.default, { src: imageUrl, alt: altText, width: 200, height: 200 }) : /* @__PURE__ */ (0, import_jsx_runtime61.jsx)("span", { className: "font-semibold text-blue-700", children: "Logo" })
29711
+ children: imageUrl ? /* @__PURE__ */ (0, import_jsx_runtime62.jsx)(import_image3.default, { src: imageUrl, alt: altText, width: 200, height: 200 }) : /* @__PURE__ */ (0, import_jsx_runtime62.jsx)("span", { className: "font-semibold text-blue-700", children: "Logo" })
29617
29712
  }
29618
29713
  ),
29619
- !isMobileView && /* @__PURE__ */ (0, import_jsx_runtime61.jsx)("div", { className: "flex items-center space-x-6 sm:hidden md:flex", children: formatedMenu.map((item) => /* @__PURE__ */ (0, import_jsx_runtime61.jsx)(
29714
+ !isMobileView && /* @__PURE__ */ (0, import_jsx_runtime62.jsx)("div", { className: "flex items-center space-x-6 sm:hidden md:flex", children: formatedMenu.map((item) => /* @__PURE__ */ (0, import_jsx_runtime62.jsx)(
29620
29715
  import_link6.default,
29621
29716
  {
29622
29717
  href: item.url || "#",
@@ -29626,39 +29721,39 @@ function Navbar({
29626
29721
  },
29627
29722
  item.id
29628
29723
  )) }),
29629
- /* @__PURE__ */ (0, import_jsx_runtime61.jsxs)("div", { className: "flex items-center space-x-3", children: [
29630
- !isMobileView ? /* @__PURE__ */ (0, import_jsx_runtime61.jsx)("div", { className: "flex-1 px-6", children: /* @__PURE__ */ (0, import_jsx_runtime61.jsxs)("div", { className: "relative w-full max-w-md border border-gray-300 rounded-md", children: [
29631
- /* @__PURE__ */ (0, import_jsx_runtime61.jsx)(Search, { className: "absolute left-3 top-1/2 -translate-y-1/2 h-4 w-4 dark:text-white text-gray-400" }),
29632
- /* @__PURE__ */ (0, import_jsx_runtime61.jsx)(Input, { placeholder: "Search", className: "pl-9 text-gray-400" })
29633
- ] }) }) : /* @__PURE__ */ (0, import_jsx_runtime61.jsx)(Button, { variant: "ghost", size: "icon", className: "border border-gray-400", children: /* @__PURE__ */ (0, import_jsx_runtime61.jsx)(Search, { className: "h-5 w-5 text-gray-400" }) }),
29634
- /* @__PURE__ */ (0, import_jsx_runtime61.jsxs)("div", { className: "relative bg-[#E9E9E9] dark:bg-gray-700 rounded-md", children: [
29635
- /* @__PURE__ */ (0, import_jsx_runtime61.jsx)(Button, { variant: "ghost", size: "icon", children: /* @__PURE__ */ (0, import_jsx_runtime61.jsx)(Bell, { className: "h-5 w-5 text-[#1C1B1F] dark:text-gray-400" }) }),
29636
- badgeType === "number" && !(hideBadgeWhenZero && badgeCount === 0) && Number(badgeCount) > 0 ? /* @__PURE__ */ (0, import_jsx_runtime61.jsx)("span", { className: "absolute -top-1 -right-1 flex h-4 w-4 items-center justify-center rounded-full bg-red-500 text-[10px] text-white leading-8", children: badgeCount }) : /* @__PURE__ */ (0, import_jsx_runtime61.jsx)("span", { className: "absolute -top-1 -right-1 flex h-2 w-2 items-center justify-center rounded-full bg-red-500" })
29724
+ /* @__PURE__ */ (0, import_jsx_runtime62.jsxs)("div", { className: "flex items-center space-x-3", children: [
29725
+ !isMobileView ? /* @__PURE__ */ (0, import_jsx_runtime62.jsx)("div", { className: "flex-1 px-6", children: /* @__PURE__ */ (0, import_jsx_runtime62.jsxs)("div", { className: "relative w-full max-w-md border border-gray-300 rounded-md", children: [
29726
+ /* @__PURE__ */ (0, import_jsx_runtime62.jsx)(Search, { className: "absolute left-3 top-1/2 -translate-y-1/2 h-4 w-4 dark:text-white text-gray-400" }),
29727
+ /* @__PURE__ */ (0, import_jsx_runtime62.jsx)(Input, { placeholder: "Search", className: "pl-9 text-gray-400" })
29728
+ ] }) }) : /* @__PURE__ */ (0, import_jsx_runtime62.jsx)(Button, { variant: "ghost", size: "icon", className: "border border-gray-400", children: /* @__PURE__ */ (0, import_jsx_runtime62.jsx)(Search, { className: "h-5 w-5 text-gray-400" }) }),
29729
+ /* @__PURE__ */ (0, import_jsx_runtime62.jsxs)("div", { className: "relative bg-[#E9E9E9] dark:bg-gray-700 rounded-md", children: [
29730
+ /* @__PURE__ */ (0, import_jsx_runtime62.jsx)(Button, { variant: "ghost", size: "icon", children: /* @__PURE__ */ (0, import_jsx_runtime62.jsx)(Bell, { className: "h-5 w-5 text-[#1C1B1F] dark:text-gray-400" }) }),
29731
+ badgeType === "number" && !(hideBadgeWhenZero && badgeCount === 0) && Number(badgeCount) > 0 ? /* @__PURE__ */ (0, import_jsx_runtime62.jsx)("span", { className: "absolute -top-1 -right-1 flex h-4 w-4 items-center justify-center rounded-full bg-red-500 text-[10px] text-white leading-8", children: badgeCount }) : /* @__PURE__ */ (0, import_jsx_runtime62.jsx)("span", { className: "absolute -top-1 -right-1 flex h-2 w-2 items-center justify-center rounded-full bg-red-500" })
29637
29732
  ] }),
29638
- /* @__PURE__ */ (0, import_jsx_runtime61.jsxs)(DropdownMenu, { children: [
29639
- /* @__PURE__ */ (0, import_jsx_runtime61.jsx)(DropdownMenuTrigger, { asChild: true, children: /* @__PURE__ */ (0, import_jsx_runtime61.jsxs)("div", { className: "flex items-center space-x-2", children: [
29640
- !isMobileView && showName && /* @__PURE__ */ (0, import_jsx_runtime61.jsx)("h4", { className: "text-[#000000] dark:text-gray-300 text-[13px] font-[500] mb-0", children: userName }),
29641
- !isMobileView ? /* @__PURE__ */ (0, import_jsx_runtime61.jsxs)(import_jsx_runtime61.Fragment, { children: [
29642
- /* @__PURE__ */ (0, import_jsx_runtime61.jsx)(Avatar, { className: "cursor-pointer h-8 w-8 text-gray-900", children: profileType === "avatar" ? /* @__PURE__ */ (0, import_jsx_runtime61.jsx)(
29733
+ /* @__PURE__ */ (0, import_jsx_runtime62.jsxs)(DropdownMenu, { children: [
29734
+ /* @__PURE__ */ (0, import_jsx_runtime62.jsx)(DropdownMenuTrigger, { asChild: true, children: /* @__PURE__ */ (0, import_jsx_runtime62.jsxs)("div", { className: "flex items-center space-x-2", children: [
29735
+ !isMobileView && showName && /* @__PURE__ */ (0, import_jsx_runtime62.jsx)("h4", { className: "text-[#000000] dark:text-gray-300 text-[13px] font-[500] mb-0", children: userName }),
29736
+ !isMobileView ? /* @__PURE__ */ (0, import_jsx_runtime62.jsxs)(import_jsx_runtime62.Fragment, { children: [
29737
+ /* @__PURE__ */ (0, import_jsx_runtime62.jsx)(Avatar, { className: "cursor-pointer h-8 w-8 text-gray-900", children: profileType === "avatar" ? /* @__PURE__ */ (0, import_jsx_runtime62.jsx)(
29643
29738
  AvatarImage,
29644
29739
  {
29645
29740
  src: "/images/appbuilder/toolset/profile.svg",
29646
29741
  alt: "Profile"
29647
29742
  }
29648
- ) : /* @__PURE__ */ (0, import_jsx_runtime61.jsx)("div", { className: "w-8 h-8 bg-[#12715b] rounded-full text-[#fff] text-center text-[11px] flex items-center justify-center", children: userName && getInitials(userName) }) }),
29649
- /* @__PURE__ */ (0, import_jsx_runtime61.jsx)(
29743
+ ) : /* @__PURE__ */ (0, import_jsx_runtime62.jsx)("div", { className: "w-8 h-8 bg-[#12715b] rounded-full text-[#fff] text-center text-[11px] flex items-center justify-center", children: userName && getInitials(userName) }) }),
29744
+ /* @__PURE__ */ (0, import_jsx_runtime62.jsx)(
29650
29745
  Button,
29651
29746
  {
29652
29747
  variant: "ghost",
29653
29748
  size: "icon",
29654
29749
  className: "text-gray-900 md:hidden dark:invert",
29655
- children: /* @__PURE__ */ (0, import_jsx_runtime61.jsx)(Menu, { className: "h-6 w-6" })
29750
+ children: /* @__PURE__ */ (0, import_jsx_runtime62.jsx)(Menu, { className: "h-6 w-6" })
29656
29751
  }
29657
29752
  )
29658
- ] }) : /* @__PURE__ */ (0, import_jsx_runtime61.jsx)(Button, { variant: "ghost", size: "icon", className: "text-gray-900 dark:invert", children: /* @__PURE__ */ (0, import_jsx_runtime61.jsx)(Menu, { className: "h-6 w-6" }) })
29753
+ ] }) : /* @__PURE__ */ (0, import_jsx_runtime62.jsx)(Button, { variant: "ghost", size: "icon", className: "text-gray-900 dark:invert", children: /* @__PURE__ */ (0, import_jsx_runtime62.jsx)(Menu, { className: "h-6 w-6" }) })
29659
29754
  ] }) }),
29660
- /* @__PURE__ */ (0, import_jsx_runtime61.jsxs)(DropdownMenuContent, { align: "end", className: "bg-white dark:bg-gray-800", children: [
29661
- profileMenu && profileMenu.length > 0 && /* @__PURE__ */ (0, import_jsx_runtime61.jsx)(import_jsx_runtime61.Fragment, { children: profileMenu.map((item) => /* @__PURE__ */ (0, import_jsx_runtime61.jsx)(DropdownMenuItem, { className: "text-black dark:invert", children: /* @__PURE__ */ (0, import_jsx_runtime61.jsx)(
29755
+ /* @__PURE__ */ (0, import_jsx_runtime62.jsxs)(DropdownMenuContent, { align: "end", className: "bg-white dark:bg-gray-800", children: [
29756
+ profileMenu && profileMenu.length > 0 && /* @__PURE__ */ (0, import_jsx_runtime62.jsx)(import_jsx_runtime62.Fragment, { children: profileMenu.map((item) => /* @__PURE__ */ (0, import_jsx_runtime62.jsx)(DropdownMenuItem, { className: "text-black dark:invert", children: /* @__PURE__ */ (0, import_jsx_runtime62.jsx)(
29662
29757
  import_link6.default,
29663
29758
  {
29664
29759
  href: item.url || "#",
@@ -29666,9 +29761,9 @@ function Navbar({
29666
29761
  children: item.header
29667
29762
  }
29668
29763
  ) }, item.id)) }),
29669
- /* @__PURE__ */ (0, import_jsx_runtime61.jsxs)("div", { className: "md:hidden", children: [
29670
- /* @__PURE__ */ (0, import_jsx_runtime61.jsx)(import_react_dropdown_menu.DropdownMenuSeparator, {}),
29671
- formatedMenu && formatedMenu.length > 0 && /* @__PURE__ */ (0, import_jsx_runtime61.jsx)(import_jsx_runtime61.Fragment, { children: formatedMenu.map((item) => /* @__PURE__ */ (0, import_jsx_runtime61.jsx)(DropdownMenuItem, { className: "text-black dark:invert", children: /* @__PURE__ */ (0, import_jsx_runtime61.jsx)(
29764
+ /* @__PURE__ */ (0, import_jsx_runtime62.jsxs)("div", { className: "md:hidden", children: [
29765
+ /* @__PURE__ */ (0, import_jsx_runtime62.jsx)(import_react_dropdown_menu.DropdownMenuSeparator, {}),
29766
+ formatedMenu && formatedMenu.length > 0 && /* @__PURE__ */ (0, import_jsx_runtime62.jsx)(import_jsx_runtime62.Fragment, { children: formatedMenu.map((item) => /* @__PURE__ */ (0, import_jsx_runtime62.jsx)(DropdownMenuItem, { className: "text-black dark:invert", children: /* @__PURE__ */ (0, import_jsx_runtime62.jsx)(
29672
29767
  import_link6.default,
29673
29768
  {
29674
29769
  href: item.url || "#",
@@ -29683,51 +29778,51 @@ function Navbar({
29683
29778
  ] })
29684
29779
  }
29685
29780
  ),
29686
- /* @__PURE__ */ (0, import_jsx_runtime61.jsx)(Dialog, { open: showExitDialog, onOpenChange: setShowExitDialog, children: /* @__PURE__ */ (0, import_jsx_runtime61.jsxs)(DialogContent, { className: "bg-[#fff]", children: [
29687
- /* @__PURE__ */ (0, import_jsx_runtime61.jsxs)(DialogHeader, { children: [
29688
- /* @__PURE__ */ (0, import_jsx_runtime61.jsx)(DialogTitle, { children: "Exit Builder?" }),
29689
- /* @__PURE__ */ (0, import_jsx_runtime61.jsx)(DialogDescription, { children: "You are about to leave the builder. Any unsaved changes may be lost." })
29781
+ /* @__PURE__ */ (0, import_jsx_runtime62.jsx)(Dialog, { open: showExitDialog, onOpenChange: setShowExitDialog, children: /* @__PURE__ */ (0, import_jsx_runtime62.jsxs)(DialogContent, { className: "bg-[#fff]", children: [
29782
+ /* @__PURE__ */ (0, import_jsx_runtime62.jsxs)(DialogHeader, { children: [
29783
+ /* @__PURE__ */ (0, import_jsx_runtime62.jsx)(DialogTitle, { children: "Exit Builder?" }),
29784
+ /* @__PURE__ */ (0, import_jsx_runtime62.jsx)(DialogDescription, { children: "You are about to leave the builder. Any unsaved changes may be lost." })
29690
29785
  ] }),
29691
- /* @__PURE__ */ (0, import_jsx_runtime61.jsxs)(DialogFooter, { children: [
29692
- /* @__PURE__ */ (0, import_jsx_runtime61.jsx)(Button, { className: "cursor-pointer bg-[#12715b] text-[#fff]", variant: "outline", onClick: () => setShowExitDialog(false), children: "Cancel" }),
29693
- /* @__PURE__ */ (0, import_jsx_runtime61.jsx)(Button, { className: "cursor-pointer border-[#12715b] border", onClick: confirmExit, children: "Yes, Exit" })
29786
+ /* @__PURE__ */ (0, import_jsx_runtime62.jsxs)(DialogFooter, { children: [
29787
+ /* @__PURE__ */ (0, import_jsx_runtime62.jsx)(Button, { className: "cursor-pointer bg-[#12715b] text-[#fff]", variant: "outline", onClick: () => setShowExitDialog(false), children: "Cancel" }),
29788
+ /* @__PURE__ */ (0, import_jsx_runtime62.jsx)(Button, { className: "cursor-pointer border-[#12715b] border", onClick: confirmExit, children: "Yes, Exit" })
29694
29789
  ] })
29695
29790
  ] }) })
29696
29791
  ] });
29697
29792
  }
29698
29793
 
29699
29794
  // src/components/Chart/BarChart.tsx
29700
- var import_react29 = __toESM(require("react"));
29795
+ var import_react30 = __toESM(require("react"));
29701
29796
  var import_recharts = require("recharts");
29702
- var import_jsx_runtime62 = require("react/jsx-runtime");
29797
+ var import_jsx_runtime63 = require("react/jsx-runtime");
29703
29798
  var ChartComponent = ({ className, style, loading, ...props }) => {
29704
29799
  const data = Array.isArray(props.data) ? props.data : [];
29705
29800
  const chartType = props.chartType || "bar";
29706
29801
  const legendsPosition = props.legendsPosition === "middle" || props.legendsPosition === "bottom" ? props.legendsPosition : "top";
29707
29802
  if (loading || data.length === 0) {
29708
- return /* @__PURE__ */ (0, import_jsx_runtime62.jsx)(
29803
+ return /* @__PURE__ */ (0, import_jsx_runtime63.jsx)(
29709
29804
  "div",
29710
29805
  {
29711
29806
  className: `flex items-center justify-center w-full h-[300px] md:h-[400px] bg-gray-50 animate-pulse rounded-lg ${className}`,
29712
29807
  style,
29713
- children: /* @__PURE__ */ (0, import_jsx_runtime62.jsx)("div", { className: "text-gray-400 text-sm md:text-base", children: loading ? "Loading chart report..." : "No data available to display the chart." })
29808
+ children: /* @__PURE__ */ (0, import_jsx_runtime63.jsx)("div", { className: "text-gray-400 text-sm md:text-base", children: loading ? "Loading chart report..." : "No data available to display the chart." })
29714
29809
  }
29715
29810
  );
29716
29811
  }
29717
- return /* @__PURE__ */ (0, import_jsx_runtime62.jsx)("div", { className: `${className} h-[400px]`, style, children: /* @__PURE__ */ (0, import_jsx_runtime62.jsx)(import_recharts.ResponsiveContainer, { width: "100%", height: "100%", children: chartType === "bar" ? /* @__PURE__ */ (0, import_jsx_runtime62.jsxs)(import_recharts.BarChart, { data, title: "Leads", desc: "content", children: [
29718
- /* @__PURE__ */ (0, import_jsx_runtime62.jsx)(import_recharts.CartesianGrid, { strokeDasharray: "3 3" }),
29719
- /* @__PURE__ */ (0, import_jsx_runtime62.jsx)(import_recharts.XAxis, { dataKey: "name" }),
29720
- /* @__PURE__ */ (0, import_jsx_runtime62.jsx)(import_recharts.YAxis, {}),
29721
- /* @__PURE__ */ (0, import_jsx_runtime62.jsx)(import_recharts.Tooltip, { formatter: (value) => `${value}k` }),
29722
- /* @__PURE__ */ (0, import_jsx_runtime62.jsx)(import_recharts.Legend, { verticalAlign: legendsPosition, align: "center" }),
29723
- /* @__PURE__ */ (0, import_jsx_runtime62.jsx)(
29812
+ return /* @__PURE__ */ (0, import_jsx_runtime63.jsx)("div", { className: `${className} h-[400px]`, style, children: /* @__PURE__ */ (0, import_jsx_runtime63.jsx)(import_recharts.ResponsiveContainer, { width: "100%", height: "100%", children: chartType === "bar" ? /* @__PURE__ */ (0, import_jsx_runtime63.jsxs)(import_recharts.BarChart, { data, title: "Leads", desc: "content", children: [
29813
+ /* @__PURE__ */ (0, import_jsx_runtime63.jsx)(import_recharts.CartesianGrid, { strokeDasharray: "3 3" }),
29814
+ /* @__PURE__ */ (0, import_jsx_runtime63.jsx)(import_recharts.XAxis, { dataKey: "name" }),
29815
+ /* @__PURE__ */ (0, import_jsx_runtime63.jsx)(import_recharts.YAxis, {}),
29816
+ /* @__PURE__ */ (0, import_jsx_runtime63.jsx)(import_recharts.Tooltip, { formatter: (value) => `${value}k` }),
29817
+ /* @__PURE__ */ (0, import_jsx_runtime63.jsx)(import_recharts.Legend, { verticalAlign: legendsPosition, align: "center" }),
29818
+ /* @__PURE__ */ (0, import_jsx_runtime63.jsx)(
29724
29819
  import_recharts.Bar,
29725
29820
  {
29726
29821
  dataKey: "value",
29727
29822
  fill: "#00695C",
29728
29823
  radius: [6, 6, 0, 0],
29729
29824
  isAnimationActive: false,
29730
- children: data.map((entry, index) => /* @__PURE__ */ (0, import_jsx_runtime62.jsx)(
29825
+ children: data.map((entry, index) => /* @__PURE__ */ (0, import_jsx_runtime63.jsx)(
29731
29826
  "rect",
29732
29827
  {
29733
29828
  fill: entry.color || "#00695C"
@@ -29736,16 +29831,16 @@ var ChartComponent = ({ className, style, loading, ...props }) => {
29736
29831
  ))
29737
29832
  }
29738
29833
  )
29739
- ] }) : /* @__PURE__ */ (0, import_jsx_runtime62.jsxs)(import_recharts.AreaChart, { data, children: [
29740
- /* @__PURE__ */ (0, import_jsx_runtime62.jsx)("defs", { children: /* @__PURE__ */ (0, import_jsx_runtime62.jsxs)("linearGradient", { id: "colorCount", x1: "0", y1: "0", x2: "0", y2: "1", children: [
29741
- /* @__PURE__ */ (0, import_jsx_runtime62.jsx)("stop", { offset: "5%", stopColor: "#00695C", stopOpacity: 0.8 }),
29742
- /* @__PURE__ */ (0, import_jsx_runtime62.jsx)("stop", { offset: "95%", stopColor: "#00695C", stopOpacity: 0 })
29834
+ ] }) : /* @__PURE__ */ (0, import_jsx_runtime63.jsxs)(import_recharts.AreaChart, { data, children: [
29835
+ /* @__PURE__ */ (0, import_jsx_runtime63.jsx)("defs", { children: /* @__PURE__ */ (0, import_jsx_runtime63.jsxs)("linearGradient", { id: "colorCount", x1: "0", y1: "0", x2: "0", y2: "1", children: [
29836
+ /* @__PURE__ */ (0, import_jsx_runtime63.jsx)("stop", { offset: "5%", stopColor: "#00695C", stopOpacity: 0.8 }),
29837
+ /* @__PURE__ */ (0, import_jsx_runtime63.jsx)("stop", { offset: "95%", stopColor: "#00695C", stopOpacity: 0 })
29743
29838
  ] }) }),
29744
- /* @__PURE__ */ (0, import_jsx_runtime62.jsx)(import_recharts.CartesianGrid, { strokeDasharray: "3 3" }),
29745
- /* @__PURE__ */ (0, import_jsx_runtime62.jsx)(import_recharts.XAxis, { dataKey: "name" }),
29746
- /* @__PURE__ */ (0, import_jsx_runtime62.jsx)(import_recharts.YAxis, {}),
29747
- /* @__PURE__ */ (0, import_jsx_runtime62.jsx)(import_recharts.Tooltip, { formatter: (value) => `${value}k` }),
29748
- /* @__PURE__ */ (0, import_jsx_runtime62.jsx)(
29839
+ /* @__PURE__ */ (0, import_jsx_runtime63.jsx)(import_recharts.CartesianGrid, { strokeDasharray: "3 3" }),
29840
+ /* @__PURE__ */ (0, import_jsx_runtime63.jsx)(import_recharts.XAxis, { dataKey: "name" }),
29841
+ /* @__PURE__ */ (0, import_jsx_runtime63.jsx)(import_recharts.YAxis, {}),
29842
+ /* @__PURE__ */ (0, import_jsx_runtime63.jsx)(import_recharts.Tooltip, { formatter: (value) => `${value}k` }),
29843
+ /* @__PURE__ */ (0, import_jsx_runtime63.jsx)(
29749
29844
  import_recharts.Area,
29750
29845
  {
29751
29846
  type: "monotone",
@@ -29758,12 +29853,12 @@ var ChartComponent = ({ className, style, loading, ...props }) => {
29758
29853
  )
29759
29854
  ] }) }) });
29760
29855
  };
29761
- var BarChart_default = import_react29.default.memo(ChartComponent);
29856
+ var BarChart_default = import_react30.default.memo(ChartComponent);
29762
29857
 
29763
29858
  // src/components/Chart/PieChart.tsx
29764
- var import_react30 = __toESM(require("react"));
29859
+ var import_react31 = __toESM(require("react"));
29765
29860
  var import_recharts2 = require("recharts");
29766
- var import_jsx_runtime63 = require("react/jsx-runtime");
29861
+ var import_jsx_runtime64 = require("react/jsx-runtime");
29767
29862
  var getRandomColor = () => {
29768
29863
  const palette = [
29769
29864
  "#2563eb",
@@ -29783,32 +29878,32 @@ var DonutChart = ({ className, style, loading, ...props }) => {
29783
29878
  const showLegends = props.showLegends ?? true;
29784
29879
  const labelType = props.labelType || "inside";
29785
29880
  const canvasMode = props.canvasMode;
29786
- const data = (0, import_react30.useMemo)(() => {
29881
+ const data = (0, import_react31.useMemo)(() => {
29787
29882
  if (!Array.isArray(props.data)) return [];
29788
29883
  return props.data.map((item) => ({ ...item, color: getRandomColor() }));
29789
29884
  }, [props.data]);
29790
- const total = (0, import_react30.useMemo)(() => data.reduce((sum, d) => sum + d.value, 0), [data]);
29885
+ const total = (0, import_react31.useMemo)(() => data.reduce((sum, d) => sum + d.value, 0), [data]);
29791
29886
  const forceMobile = canvasMode === "mobile" || canvasMode === "tablet";
29792
- const [mounted, setMounted] = (0, import_react30.useState)(false);
29793
- (0, import_react30.useEffect)(() => {
29887
+ const [mounted, setMounted] = (0, import_react31.useState)(false);
29888
+ (0, import_react31.useEffect)(() => {
29794
29889
  const timeout = setTimeout(() => setMounted(true), 100);
29795
29890
  return () => clearTimeout(timeout);
29796
29891
  }, []);
29797
- const renderLegends = (0, import_react30.useMemo)(() => {
29892
+ const renderLegends = (0, import_react31.useMemo)(() => {
29798
29893
  if (!showLegends) return null;
29799
- return /* @__PURE__ */ (0, import_jsx_runtime63.jsx)(import_jsx_runtime63.Fragment, { children: data.map((d) => /* @__PURE__ */ (0, import_jsx_runtime63.jsxs)(
29894
+ return /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(import_jsx_runtime64.Fragment, { children: data.map((d) => /* @__PURE__ */ (0, import_jsx_runtime64.jsxs)(
29800
29895
  "div",
29801
29896
  {
29802
29897
  className: "flex items-center space-x-2 rounded-md border border-gray-200 px-3 py-2 w-[48%] md:w-auto",
29803
29898
  children: [
29804
- /* @__PURE__ */ (0, import_jsx_runtime63.jsx)(
29899
+ /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(
29805
29900
  "span",
29806
29901
  {
29807
29902
  className: "inline-block w-[16px] h-[16px] rounded",
29808
29903
  style: { backgroundColor: d.color }
29809
29904
  }
29810
29905
  ),
29811
- /* @__PURE__ */ (0, import_jsx_runtime63.jsx)("span", { className: "text-[#000000] text-[12px] md:text-[13px] font-[500]", children: d.name })
29906
+ /* @__PURE__ */ (0, import_jsx_runtime64.jsx)("span", { className: "text-[#000000] text-[12px] md:text-[13px] font-[500]", children: d.name })
29812
29907
  ]
29813
29908
  },
29814
29909
  d.name
@@ -29816,24 +29911,24 @@ var DonutChart = ({ className, style, loading, ...props }) => {
29816
29911
  }, [data, showLegends]);
29817
29912
  if (!mounted) return null;
29818
29913
  if (loading || data.length === 0) {
29819
- return /* @__PURE__ */ (0, import_jsx_runtime63.jsx)(
29914
+ return /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(
29820
29915
  "div",
29821
29916
  {
29822
29917
  className: `flex items-center justify-center w-full h-[300px] md:h-[400px] bg-gray-50 animate-pulse rounded-lg ${className}`,
29823
29918
  style,
29824
- children: /* @__PURE__ */ (0, import_jsx_runtime63.jsx)("div", { className: "text-gray-400 text-sm md:text-base", children: loading ? "Loading chart report..." : "No data available to display the chart." })
29919
+ children: /* @__PURE__ */ (0, import_jsx_runtime64.jsx)("div", { className: "text-gray-400 text-sm md:text-base", children: loading ? "Loading chart report..." : "No data available to display the chart." })
29825
29920
  }
29826
29921
  );
29827
29922
  }
29828
- return /* @__PURE__ */ (0, import_jsx_runtime63.jsxs)(
29923
+ return /* @__PURE__ */ (0, import_jsx_runtime64.jsxs)(
29829
29924
  "div",
29830
29925
  {
29831
29926
  className: `relative flex flex-col items-center ${className}`,
29832
29927
  style,
29833
29928
  children: [
29834
- /* @__PURE__ */ (0, import_jsx_runtime63.jsxs)("div", { className: "relative w-full md:w-[70%] h-[300px] md:h-[400px] flex items-center justify-center", children: [
29835
- /* @__PURE__ */ (0, import_jsx_runtime63.jsx)(import_recharts2.ResponsiveContainer, { width: "99%", height: "100%", children: /* @__PURE__ */ (0, import_jsx_runtime63.jsxs)(import_recharts2.PieChart, { children: [
29836
- /* @__PURE__ */ (0, import_jsx_runtime63.jsxs)(
29929
+ /* @__PURE__ */ (0, import_jsx_runtime64.jsxs)("div", { className: "relative w-full md:w-[70%] h-[300px] md:h-[400px] flex items-center justify-center", children: [
29930
+ /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(import_recharts2.ResponsiveContainer, { width: "99%", height: "100%", children: /* @__PURE__ */ (0, import_jsx_runtime64.jsxs)(import_recharts2.PieChart, { children: [
29931
+ /* @__PURE__ */ (0, import_jsx_runtime64.jsxs)(
29837
29932
  import_recharts2.Pie,
29838
29933
  {
29839
29934
  data,
@@ -29845,8 +29940,8 @@ var DonutChart = ({ className, style, loading, ...props }) => {
29845
29940
  labelLine: false,
29846
29941
  isAnimationActive: false,
29847
29942
  children: [
29848
- data.map((entry, index) => /* @__PURE__ */ (0, import_jsx_runtime63.jsx)(import_recharts2.Cell, { fill: entry.color }, `cell-${index}`)),
29849
- /* @__PURE__ */ (0, import_jsx_runtime63.jsx)(
29943
+ data.map((entry, index) => /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(import_recharts2.Cell, { fill: entry.color }, `cell-${index}`)),
29944
+ /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(
29850
29945
  import_recharts2.LabelList,
29851
29946
  {
29852
29947
  dataKey: "value",
@@ -29859,14 +29954,14 @@ var DonutChart = ({ className, style, loading, ...props }) => {
29859
29954
  ]
29860
29955
  }
29861
29956
  ),
29862
- /* @__PURE__ */ (0, import_jsx_runtime63.jsx)(
29957
+ /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(
29863
29958
  import_recharts2.Tooltip,
29864
29959
  {
29865
29960
  formatter: (value, name) => [`${value}k`, name]
29866
29961
  }
29867
29962
  )
29868
29963
  ] }) }),
29869
- /* @__PURE__ */ (0, import_jsx_runtime63.jsxs)(
29964
+ /* @__PURE__ */ (0, import_jsx_runtime64.jsxs)(
29870
29965
  "div",
29871
29966
  {
29872
29967
  className: `absolute left-1/2 top-1/2 -translate-x-1/2 -translate-y-1/2 ${forceMobile ? "text-2xl" : "text-4xl"} font-bold text-[#000]`,
@@ -29877,18 +29972,18 @@ var DonutChart = ({ className, style, loading, ...props }) => {
29877
29972
  }
29878
29973
  )
29879
29974
  ] }),
29880
- /* @__PURE__ */ (0, import_jsx_runtime63.jsx)("div", { className: "flex flex-wrap justify-center gap-2 mt-6 w-full md:w-auto", children: renderLegends })
29975
+ /* @__PURE__ */ (0, import_jsx_runtime64.jsx)("div", { className: "flex flex-wrap justify-center gap-2 mt-6 w-full md:w-auto", children: renderLegends })
29881
29976
  ]
29882
29977
  }
29883
29978
  );
29884
29979
  };
29885
- var PieChart_default = import_react30.default.memo(DonutChart);
29980
+ var PieChart_default = import_react31.default.memo(DonutChart);
29886
29981
 
29887
29982
  // src/components/Blocks/EmailComposer.tsx
29888
- var import_jsx_runtime64 = require("react/jsx-runtime");
29983
+ var import_jsx_runtime65 = require("react/jsx-runtime");
29889
29984
  function EmailComposer({ className, style, to, setTo, showCc, setShowCc, showBcc, setShowBcc, cc, setCc, bcc, setBcc, subject, setSubject, body, setBody }) {
29890
- return /* @__PURE__ */ (0, import_jsx_runtime64.jsx)("div", { className, style, children: /* @__PURE__ */ (0, import_jsx_runtime64.jsxs)("div", { className: "border rounded-md shadow bg-[#fff] p-4 mx-auto z-[50] relative", children: [
29891
- /* @__PURE__ */ (0, import_jsx_runtime64.jsx)("div", { className: "mb-3", children: /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(
29985
+ return /* @__PURE__ */ (0, import_jsx_runtime65.jsx)("div", { className, style, children: /* @__PURE__ */ (0, import_jsx_runtime65.jsxs)("div", { className: "border rounded-md shadow bg-[#fff] p-4 mx-auto z-[50] relative", children: [
29986
+ /* @__PURE__ */ (0, import_jsx_runtime65.jsx)("div", { className: "mb-3", children: /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(
29892
29987
  "input",
29893
29988
  {
29894
29989
  type: "email",
@@ -29897,8 +29992,8 @@ function EmailComposer({ className, style, to, setTo, showCc, setShowCc, showBcc
29897
29992
  required: true
29898
29993
  }
29899
29994
  ) }),
29900
- /* @__PURE__ */ (0, import_jsx_runtime64.jsx)("div", { className: "mb-3", children: /* @__PURE__ */ (0, import_jsx_runtime64.jsxs)("div", { className: "flex items-center gap-2", children: [
29901
- /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(
29995
+ /* @__PURE__ */ (0, import_jsx_runtime65.jsx)("div", { className: "mb-3", children: /* @__PURE__ */ (0, import_jsx_runtime65.jsxs)("div", { className: "flex items-center gap-2", children: [
29996
+ /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(
29902
29997
  "input",
29903
29998
  {
29904
29999
  type: "email",
@@ -29909,7 +30004,7 @@ function EmailComposer({ className, style, to, setTo, showCc, setShowCc, showBcc
29909
30004
  required: true
29910
30005
  }
29911
30006
  ),
29912
- !showCc && /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(
30007
+ !showCc && /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(
29913
30008
  "button",
29914
30009
  {
29915
30010
  onClick: () => setShowCc?.(true),
@@ -29917,7 +30012,7 @@ function EmailComposer({ className, style, to, setTo, showCc, setShowCc, showBcc
29917
30012
  children: "Cc"
29918
30013
  }
29919
30014
  ),
29920
- !showBcc && /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(
30015
+ !showBcc && /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(
29921
30016
  "button",
29922
30017
  {
29923
30018
  onClick: () => setShowBcc?.(true),
@@ -29926,7 +30021,7 @@ function EmailComposer({ className, style, to, setTo, showCc, setShowCc, showBcc
29926
30021
  }
29927
30022
  )
29928
30023
  ] }) }),
29929
- showCc && /* @__PURE__ */ (0, import_jsx_runtime64.jsx)("div", { className: "mb-3", children: /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(
30024
+ showCc && /* @__PURE__ */ (0, import_jsx_runtime65.jsx)("div", { className: "mb-3", children: /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(
29930
30025
  "input",
29931
30026
  {
29932
30027
  type: "text",
@@ -29936,7 +30031,7 @@ function EmailComposer({ className, style, to, setTo, showCc, setShowCc, showBcc
29936
30031
  className: "w-full flex-1 border-2 rounded-md h-[40px] px-3 focus:outline-none border-[#E9E9E9] text-[#383838]"
29937
30032
  }
29938
30033
  ) }),
29939
- showBcc && /* @__PURE__ */ (0, import_jsx_runtime64.jsx)("div", { className: "mb-3", children: /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(
30034
+ showBcc && /* @__PURE__ */ (0, import_jsx_runtime65.jsx)("div", { className: "mb-3", children: /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(
29940
30035
  "input",
29941
30036
  {
29942
30037
  type: "text",
@@ -29946,7 +30041,7 @@ function EmailComposer({ className, style, to, setTo, showCc, setShowCc, showBcc
29946
30041
  className: "w-full flex-1 border-2 rounded-md h-[40px] px-3 focus:outline-none border-[#E9E9E9] text-[#383838]"
29947
30042
  }
29948
30043
  ) }),
29949
- /* @__PURE__ */ (0, import_jsx_runtime64.jsx)("div", { className: "mb-3", children: /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(
30044
+ /* @__PURE__ */ (0, import_jsx_runtime65.jsx)("div", { className: "mb-3", children: /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(
29950
30045
  "input",
29951
30046
  {
29952
30047
  type: "text",
@@ -29956,11 +30051,11 @@ function EmailComposer({ className, style, to, setTo, showCc, setShowCc, showBcc
29956
30051
  className: "w-full flex-1 border-2 rounded-md h-[40px] px-3 focus:outline-none border-[#E9E9E9] text-[#383838]"
29957
30052
  }
29958
30053
  ) }),
29959
- /* @__PURE__ */ (0, import_jsx_runtime64.jsx)("div", { className: "mb-4", children: /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(MyEditor, { value: body, onChange: setBody }) }),
29960
- /* @__PURE__ */ (0, import_jsx_runtime64.jsxs)("div", { className: "flex justify-end gap-2", children: [
29961
- /* @__PURE__ */ (0, import_jsx_runtime64.jsx)("button", { className: "px-4 py-2 rounded-md text-gray-600 hover:bg-gray-100", children: "Discard" }),
29962
- /* @__PURE__ */ (0, import_jsx_runtime64.jsx)("button", { className: "px-4 py-2 rounded-md border text-[#12715B] border-[#12715B]", children: "Reset" }),
29963
- /* @__PURE__ */ (0, import_jsx_runtime64.jsx)("button", { className: "px-4 py-2 rounded-md bg-[#12715B] text-white", children: "Send" })
30054
+ /* @__PURE__ */ (0, import_jsx_runtime65.jsx)("div", { className: "mb-4", children: /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(MyEditor, { value: body, onChange: setBody }) }),
30055
+ /* @__PURE__ */ (0, import_jsx_runtime65.jsxs)("div", { className: "flex justify-end gap-2", children: [
30056
+ /* @__PURE__ */ (0, import_jsx_runtime65.jsx)("button", { className: "px-4 py-2 rounded-md text-gray-600 hover:bg-gray-100", children: "Discard" }),
30057
+ /* @__PURE__ */ (0, import_jsx_runtime65.jsx)("button", { className: "px-4 py-2 rounded-md border text-[#12715B] border-[#12715B]", children: "Reset" }),
30058
+ /* @__PURE__ */ (0, import_jsx_runtime65.jsx)("button", { className: "px-4 py-2 rounded-md bg-[#12715B] text-white", children: "Send" })
29964
30059
  ] })
29965
30060
  ] }) });
29966
30061
  }
@@ -30005,10 +30100,10 @@ function showSonnerToast({
30005
30100
  // src/components/ui/sonner.tsx
30006
30101
  var import_next_themes = require("next-themes");
30007
30102
  var import_sonner2 = require("sonner");
30008
- var import_jsx_runtime65 = require("react/jsx-runtime");
30103
+ var import_jsx_runtime66 = require("react/jsx-runtime");
30009
30104
  var Toaster = ({ ...props }) => {
30010
30105
  const { theme = "system" } = (0, import_next_themes.useTheme)();
30011
- return /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(
30106
+ return /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(
30012
30107
  import_sonner2.Toaster,
30013
30108
  {
30014
30109
  theme,
@@ -30052,6 +30147,7 @@ var Toaster = ({ ...props }) => {
30052
30147
  Phone,
30053
30148
  PieChart,
30054
30149
  RadioGroup,
30150
+ Repeater,
30055
30151
  RichText,
30056
30152
  Search,
30057
30153
  Shape,