@algorithm-shift/design-system 1.2.5 → 1.2.6

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.mjs CHANGED
@@ -104,14 +104,59 @@ var Typography_default = Typography;
104
104
 
105
105
  // src/components/Basic/Shape/Shape.tsx
106
106
  import { jsx as jsx4 } from "react/jsx-runtime";
107
+ var Shape = ({
108
+ children,
109
+ className,
110
+ style
111
+ }) => {
112
+ return /* @__PURE__ */ jsx4("div", { className, style, children });
113
+ };
114
+ var Shape_default = Shape;
115
+
116
+ // src/components/Basic/Image/Image.tsx
117
+ import { jsx as jsx5 } from "react/jsx-runtime";
118
+ var ImageControl = ({
119
+ className,
120
+ style,
121
+ imageUrl,
122
+ altText = "Preview"
123
+ }) => {
124
+ const imageClass = cn(
125
+ "relative group",
126
+ "h-[200px] w-[200px] border-1",
127
+ "border-2 border-dashed border-gray-400 flex items-center justify-center cursor-pointer hover:border-blue-500 transition",
128
+ className
129
+ );
130
+ const defaultImgClass = cn(
131
+ "w-full h-full",
132
+ className
133
+ );
134
+ let src;
135
+ let extraProps;
136
+ if (imageUrl) {
137
+ src = imageUrl;
138
+ extraProps = {
139
+ className: defaultImgClass
140
+ };
141
+ } else {
142
+ src = "./image-placeholder.png";
143
+ extraProps = {
144
+ width: 50,
145
+ height: 50,
146
+ className: "opacity-50"
147
+ };
148
+ }
149
+ return /* @__PURE__ */ jsx5("div", { className: imageClass, style, children: /* @__PURE__ */ jsx5("img", { src, alt: altText, ...extraProps }) });
150
+ };
151
+ var Image_default = ImageControl;
107
152
 
108
153
  // src/components/Inputs/TextInput/TextInput.tsx
109
154
  import * as React2 from "react";
110
155
 
111
156
  // src/components/ui/input.tsx
112
- import { jsx as jsx5 } from "react/jsx-runtime";
157
+ import { jsx as jsx6 } from "react/jsx-runtime";
113
158
  function Input({ className, type, ...props }) {
114
- return /* @__PURE__ */ jsx5(
159
+ return /* @__PURE__ */ jsx6(
115
160
  "input",
116
161
  {
117
162
  type,
@@ -128,7 +173,7 @@ function Input({ className, type, ...props }) {
128
173
  }
129
174
 
130
175
  // src/components/Inputs/TextInput/TextInput.tsx
131
- import { Fragment, jsx as jsx6, jsxs } from "react/jsx-runtime";
176
+ import { Fragment, jsx as jsx7, jsxs } from "react/jsx-runtime";
132
177
  var TextInput = ({ className, style, ...props }) => {
133
178
  const placeholder = props.placeholder || "Placeholder text";
134
179
  const regexPattern = props.regexPattern ?? "";
@@ -154,7 +199,7 @@ var TextInput = ({ className, style, ...props }) => {
154
199
  }
155
200
  };
156
201
  return /* @__PURE__ */ jsxs(Fragment, { children: [
157
- /* @__PURE__ */ jsx6(
202
+ /* @__PURE__ */ jsx7(
158
203
  Input,
159
204
  {
160
205
  type: "text",
@@ -171,11 +216,11 @@ var TextInput = ({ className, style, ...props }) => {
171
216
  pattern: regexPattern || void 0
172
217
  }
173
218
  ),
174
- error && /* @__PURE__ */ jsx6("p", { className: "mt-1 text-xs text-red-500", children: error })
219
+ error && /* @__PURE__ */ jsx7("p", { className: "mt-1 text-xs text-red-500", children: error })
175
220
  ] });
176
221
  };
177
222
 
178
- // src/components/Inputs/EmailInput/EmailInput.tsx
223
+ // src/components/Inputs/NumberInput/NumberInput.tsx
179
224
  import * as React3 from "react";
180
225
 
181
226
  // node_modules/lucide-react/dist/esm/createLucideIcon.js
@@ -267,39 +312,63 @@ var createLucideIcon = (iconName, iconNode) => {
267
312
  return Component;
268
313
  };
269
314
 
315
+ // node_modules/lucide-react/dist/esm/icons/calculator.js
316
+ var __iconNode = [
317
+ ["rect", { width: "16", height: "20", x: "4", y: "2", rx: "2", key: "1nb95v" }],
318
+ ["line", { x1: "8", x2: "16", y1: "6", y2: "6", key: "x4nwl0" }],
319
+ ["line", { x1: "16", x2: "16", y1: "14", y2: "18", key: "wjye3r" }],
320
+ ["path", { d: "M16 10h.01", key: "1m94wz" }],
321
+ ["path", { d: "M12 10h.01", key: "1nrarc" }],
322
+ ["path", { d: "M8 10h.01", key: "19clt8" }],
323
+ ["path", { d: "M12 14h.01", key: "1etili" }],
324
+ ["path", { d: "M8 14h.01", key: "6423bh" }],
325
+ ["path", { d: "M12 18h.01", key: "mhygvu" }],
326
+ ["path", { d: "M8 18h.01", key: "lrp35t" }]
327
+ ];
328
+ var Calculator = createLucideIcon("calculator", __iconNode);
329
+
330
+ // node_modules/lucide-react/dist/esm/icons/calendar.js
331
+ var __iconNode2 = [
332
+ ["path", { d: "M8 2v4", key: "1cmpym" }],
333
+ ["path", { d: "M16 2v4", key: "4m81vk" }],
334
+ ["rect", { width: "18", height: "18", x: "3", y: "4", rx: "2", key: "1hopcy" }],
335
+ ["path", { d: "M3 10h18", key: "8toen8" }]
336
+ ];
337
+ var Calendar = createLucideIcon("calendar", __iconNode2);
338
+
270
339
  // node_modules/lucide-react/dist/esm/icons/check.js
271
- var __iconNode = [["path", { d: "M20 6 9 17l-5-5", key: "1gmf2c" }]];
272
- var Check = createLucideIcon("check", __iconNode);
340
+ var __iconNode3 = [["path", { d: "M20 6 9 17l-5-5", key: "1gmf2c" }]];
341
+ var Check = createLucideIcon("check", __iconNode3);
273
342
 
274
343
  // node_modules/lucide-react/dist/esm/icons/chevron-down.js
275
- var __iconNode2 = [["path", { d: "m6 9 6 6 6-6", key: "qrunsl" }]];
276
- var ChevronDown = createLucideIcon("chevron-down", __iconNode2);
344
+ var __iconNode4 = [["path", { d: "m6 9 6 6 6-6", key: "qrunsl" }]];
345
+ var ChevronDown = createLucideIcon("chevron-down", __iconNode4);
277
346
 
278
347
  // node_modules/lucide-react/dist/esm/icons/chevron-left.js
279
- var __iconNode3 = [["path", { d: "m15 18-6-6 6-6", key: "1wnfg3" }]];
280
- var ChevronLeft = createLucideIcon("chevron-left", __iconNode3);
348
+ var __iconNode5 = [["path", { d: "m15 18-6-6 6-6", key: "1wnfg3" }]];
349
+ var ChevronLeft = createLucideIcon("chevron-left", __iconNode5);
281
350
 
282
351
  // node_modules/lucide-react/dist/esm/icons/chevron-right.js
283
- var __iconNode4 = [["path", { d: "m9 18 6-6-6-6", key: "mthhwq" }]];
284
- var ChevronRight = createLucideIcon("chevron-right", __iconNode4);
352
+ var __iconNode6 = [["path", { d: "m9 18 6-6-6-6", key: "mthhwq" }]];
353
+ var ChevronRight = createLucideIcon("chevron-right", __iconNode6);
285
354
 
286
355
  // node_modules/lucide-react/dist/esm/icons/chevron-up.js
287
- var __iconNode5 = [["path", { d: "m18 15-6-6-6 6", key: "153udz" }]];
288
- var ChevronUp = createLucideIcon("chevron-up", __iconNode5);
356
+ var __iconNode7 = [["path", { d: "m18 15-6-6-6 6", key: "153udz" }]];
357
+ var ChevronUp = createLucideIcon("chevron-up", __iconNode7);
289
358
 
290
359
  // node_modules/lucide-react/dist/esm/icons/circle.js
291
- var __iconNode6 = [["circle", { cx: "12", cy: "12", r: "10", key: "1mglay" }]];
292
- var Circle = createLucideIcon("circle", __iconNode6);
360
+ var __iconNode8 = [["circle", { cx: "12", cy: "12", r: "10", key: "1mglay" }]];
361
+ var Circle = createLucideIcon("circle", __iconNode8);
293
362
 
294
363
  // node_modules/lucide-react/dist/esm/icons/mail.js
295
- var __iconNode7 = [
364
+ var __iconNode9 = [
296
365
  ["path", { d: "m22 7-8.991 5.727a2 2 0 0 1-2.009 0L2 7", key: "132q7q" }],
297
366
  ["rect", { x: "2", y: "4", width: "20", height: "16", rx: "2", key: "izxlao" }]
298
367
  ];
299
- var Mail = createLucideIcon("mail", __iconNode7);
368
+ var Mail = createLucideIcon("mail", __iconNode9);
300
369
 
301
370
  // node_modules/lucide-react/dist/esm/icons/scan-eye.js
302
- var __iconNode8 = [
371
+ var __iconNode10 = [
303
372
  ["path", { d: "M3 7V5a2 2 0 0 1 2-2h2", key: "aa7l1z" }],
304
373
  ["path", { d: "M17 3h2a2 2 0 0 1 2 2v2", key: "4qcy5o" }],
305
374
  ["path", { d: "M21 17v2a2 2 0 0 1-2 2h-2", key: "6vwrx8" }],
@@ -313,11 +382,18 @@ var __iconNode8 = [
313
382
  }
314
383
  ]
315
384
  ];
316
- var ScanEye = createLucideIcon("scan-eye", __iconNode8);
385
+ var ScanEye = createLucideIcon("scan-eye", __iconNode10);
317
386
 
318
- // src/components/Inputs/EmailInput/EmailInput.tsx
319
- import { Fragment as Fragment2, jsx as jsx7, jsxs as jsxs2 } from "react/jsx-runtime";
320
- var EmailInput = ({ className, style, ...props }) => {
387
+ // node_modules/lucide-react/dist/esm/icons/search.js
388
+ var __iconNode11 = [
389
+ ["path", { d: "m21 21-4.34-4.34", key: "14j7rj" }],
390
+ ["circle", { cx: "11", cy: "11", r: "8", key: "4ej97u" }]
391
+ ];
392
+ var Search = createLucideIcon("search", __iconNode11);
393
+
394
+ // src/components/Inputs/NumberInput/NumberInput.tsx
395
+ import { Fragment as Fragment2, jsx as jsx8, jsxs as jsxs2 } from "react/jsx-runtime";
396
+ var NumberInput = ({ className, style, ...props }) => {
321
397
  const placeholder = props.placeholder ?? "Placeholder text";
322
398
  const regexPattern = props.regexPattern ?? "";
323
399
  const errorMessage = props.errorMessage ?? "Required";
@@ -343,11 +419,12 @@ var EmailInput = ({ className, style, ...props }) => {
343
419
  };
344
420
  return /* @__PURE__ */ jsxs2(Fragment2, { children: [
345
421
  /* @__PURE__ */ jsxs2("div", { className: "flex justify-start items-center relative", children: [
346
- /* @__PURE__ */ jsx7(Mail, { className: "absolute left-3 top-1/2 h-4 w-4 -translate-y-1/2 text-[#BDBDBD]" }),
347
- /* @__PURE__ */ jsx7(
422
+ /* @__PURE__ */ jsx8(Calculator, { className: "absolute left-3 top-1/2 h-4 w-4 -translate-y-1/2 text-[#BDBDBD]" }),
423
+ /* @__PURE__ */ jsx8(
348
424
  Input,
349
425
  {
350
- type: "email",
426
+ type: "number",
427
+ id: "number-field",
351
428
  value,
352
429
  className,
353
430
  style,
@@ -362,14 +439,14 @@ var EmailInput = ({ className, style, ...props }) => {
362
439
  }
363
440
  )
364
441
  ] }),
365
- error && /* @__PURE__ */ jsx7("p", { className: "mt-1 text-xs text-red-500", children: error })
442
+ error && /* @__PURE__ */ jsx8("p", { className: "mt-1 text-xs text-red-500", children: error })
366
443
  ] });
367
444
  };
368
445
 
369
- // src/components/Inputs/PasswordInput/PasswordInput.tsx
446
+ // src/components/Inputs/EmailInput/EmailInput.tsx
370
447
  import * as React4 from "react";
371
- import { Fragment as Fragment3, jsx as jsx8, jsxs as jsxs3 } from "react/jsx-runtime";
372
- var PasswordInput = ({ className, style, ...props }) => {
448
+ import { Fragment as Fragment3, jsx as jsx9, jsxs as jsxs3 } from "react/jsx-runtime";
449
+ var EmailInput = ({ className, style, ...props }) => {
373
450
  const placeholder = props.placeholder ?? "Placeholder text";
374
451
  const regexPattern = props.regexPattern ?? "";
375
452
  const errorMessage = props.errorMessage ?? "Required";
@@ -395,8 +472,60 @@ var PasswordInput = ({ className, style, ...props }) => {
395
472
  };
396
473
  return /* @__PURE__ */ jsxs3(Fragment3, { children: [
397
474
  /* @__PURE__ */ jsxs3("div", { className: "flex justify-start items-center relative", children: [
398
- /* @__PURE__ */ jsx8(ScanEye, { className: "absolute left-3 top-1/2 h-4 w-4 -translate-y-1/2 text-[#BDBDBD]" }),
399
- /* @__PURE__ */ jsx8(
475
+ /* @__PURE__ */ jsx9(Mail, { className: "absolute left-3 top-1/2 h-4 w-4 -translate-y-1/2 text-[#BDBDBD]" }),
476
+ /* @__PURE__ */ jsx9(
477
+ Input,
478
+ {
479
+ type: "email",
480
+ value,
481
+ className,
482
+ style,
483
+ autoComplete: isAutocomplete ? "on" : "off",
484
+ placeholder,
485
+ onChange: handleChange,
486
+ disabled: isDisabled || !isEditable,
487
+ readOnly: isReadonly,
488
+ required: isRequired,
489
+ maxLength: noOfCharacters,
490
+ pattern: regexPattern || void 0
491
+ }
492
+ )
493
+ ] }),
494
+ error && /* @__PURE__ */ jsx9("p", { className: "mt-1 text-xs text-red-500", children: error })
495
+ ] });
496
+ };
497
+
498
+ // src/components/Inputs/PasswordInput/PasswordInput.tsx
499
+ import * as React5 from "react";
500
+ import { Fragment as Fragment4, jsx as jsx10, jsxs as jsxs4 } from "react/jsx-runtime";
501
+ var PasswordInput = ({ className, style, ...props }) => {
502
+ const placeholder = props.placeholder ?? "Placeholder text";
503
+ const regexPattern = props.regexPattern ?? "";
504
+ const errorMessage = props.errorMessage ?? "Required";
505
+ const noOfCharacters = props.noOfCharacters ?? 100;
506
+ const isRequired = props.isRequired ?? false;
507
+ const isEditable = props.isEditable ?? true;
508
+ const isDisabled = props.isDisabled ?? false;
509
+ const isReadonly = props.isReadonly ?? false;
510
+ const isAutocomplete = props.isAutocomplete ?? false;
511
+ const [value, setValue] = React5.useState("");
512
+ const [error, setError] = React5.useState(null);
513
+ const handleChange = (e) => {
514
+ const val = e.target.value;
515
+ if (val.length > noOfCharacters) return;
516
+ setValue(val);
517
+ if (isRequired && val.trim() === "") {
518
+ setError(errorMessage);
519
+ } else if (regexPattern && !new RegExp(regexPattern).test(val)) {
520
+ setError(errorMessage);
521
+ } else {
522
+ setError(null);
523
+ }
524
+ };
525
+ return /* @__PURE__ */ jsxs4(Fragment4, { children: [
526
+ /* @__PURE__ */ jsxs4("div", { className: "flex justify-start items-center relative", children: [
527
+ /* @__PURE__ */ jsx10(ScanEye, { className: "absolute left-3 top-1/2 h-4 w-4 -translate-y-1/2 text-[#BDBDBD]" }),
528
+ /* @__PURE__ */ jsx10(
400
529
  Input,
401
530
  {
402
531
  type: "password",
@@ -415,17 +544,17 @@ var PasswordInput = ({ className, style, ...props }) => {
415
544
  }
416
545
  )
417
546
  ] }),
418
- error && /* @__PURE__ */ jsx8("p", { className: "mt-1 text-xs text-red-500", children: error })
547
+ error && /* @__PURE__ */ jsx10("p", { className: "mt-1 text-xs text-red-500", children: error })
419
548
  ] });
420
549
  };
421
550
 
422
551
  // src/components/Inputs/Textarea/Textarea.tsx
423
- import * as React5 from "react";
552
+ import * as React6 from "react";
424
553
 
425
554
  // src/components/ui/textarea.tsx
426
- import { jsx as jsx9 } from "react/jsx-runtime";
555
+ import { jsx as jsx11 } from "react/jsx-runtime";
427
556
  function Textarea({ className, ...props }) {
428
- return /* @__PURE__ */ jsx9(
557
+ return /* @__PURE__ */ jsx11(
429
558
  "textarea",
430
559
  {
431
560
  "data-slot": "textarea",
@@ -439,7 +568,7 @@ function Textarea({ className, ...props }) {
439
568
  }
440
569
 
441
570
  // src/components/Inputs/Textarea/Textarea.tsx
442
- import { Fragment as Fragment4, jsx as jsx10, jsxs as jsxs4 } from "react/jsx-runtime";
571
+ import { Fragment as Fragment5, jsx as jsx12, jsxs as jsxs5 } from "react/jsx-runtime";
443
572
  var Textarea2 = ({ className, style, ...props }) => {
444
573
  const placeholder = props.placeholder ?? "Placeholder text";
445
574
  const regexPattern = props.regexPattern ?? "";
@@ -450,8 +579,8 @@ var Textarea2 = ({ className, style, ...props }) => {
450
579
  const isDisabled = props.isDisabled ?? false;
451
580
  const isReadonly = props.isReadonly ?? false;
452
581
  const isAutocomplete = props.isAutocomplete ?? false;
453
- const [value, setValue] = React5.useState("");
454
- const [error, setError] = React5.useState(null);
582
+ const [value, setValue] = React6.useState("");
583
+ const [error, setError] = React6.useState(null);
455
584
  const handleChange = (e) => {
456
585
  const val = e.target.value;
457
586
  if (val.length > noOfCharacters) return;
@@ -464,8 +593,8 @@ var Textarea2 = ({ className, style, ...props }) => {
464
593
  setError(null);
465
594
  }
466
595
  };
467
- return /* @__PURE__ */ jsxs4(Fragment4, { children: [
468
- /* @__PURE__ */ jsx10(
596
+ return /* @__PURE__ */ jsxs5(Fragment5, { children: [
597
+ /* @__PURE__ */ jsx12(
469
598
  Textarea,
470
599
  {
471
600
  id: "textarea-field",
@@ -481,13 +610,13 @@ var Textarea2 = ({ className, style, ...props }) => {
481
610
  maxLength: noOfCharacters
482
611
  }
483
612
  ),
484
- error && /* @__PURE__ */ jsx10("p", { className: "mt-1 text-xs text-red-500", children: error })
613
+ error && /* @__PURE__ */ jsx12("p", { className: "mt-1 text-xs text-red-500", children: error })
485
614
  ] });
486
615
  };
487
616
 
488
617
  // src/components/Inputs/UrlInput/UrlInput.tsx
489
- import * as React6 from "react";
490
- import { Fragment as Fragment5, jsx as jsx11, jsxs as jsxs5 } from "react/jsx-runtime";
618
+ import * as React7 from "react";
619
+ import { Fragment as Fragment6, jsx as jsx13, jsxs as jsxs6 } from "react/jsx-runtime";
491
620
  var UrlInput = ({ className, style, ...props }) => {
492
621
  const placeholder = props.placeholder ?? "Placeholder text";
493
622
  const regexPattern = props.regexPattern ?? "";
@@ -498,8 +627,8 @@ var UrlInput = ({ className, style, ...props }) => {
498
627
  const isDisabled = props.isDisabled ?? false;
499
628
  const isReadonly = props.isReadonly ?? false;
500
629
  const isAutocomplete = props.isAutocomplete ?? false;
501
- const [value, setValue] = React6.useState("");
502
- const [error, setError] = React6.useState(null);
630
+ const [value, setValue] = React7.useState("");
631
+ const [error, setError] = React7.useState(null);
503
632
  const handleChange = (e) => {
504
633
  const val = e.target.value;
505
634
  if (val.length > noOfCharacters) return;
@@ -512,10 +641,10 @@ var UrlInput = ({ className, style, ...props }) => {
512
641
  setError(null);
513
642
  }
514
643
  };
515
- return /* @__PURE__ */ jsxs5(Fragment5, { children: [
516
- /* @__PURE__ */ jsxs5("div", { className: "flex justify-start items-center relative", children: [
517
- /* @__PURE__ */ jsx11("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://" }),
518
- /* @__PURE__ */ jsx11(
644
+ return /* @__PURE__ */ jsxs6(Fragment6, { children: [
645
+ /* @__PURE__ */ jsxs6("div", { className: "flex justify-start items-center relative", children: [
646
+ /* @__PURE__ */ jsx13("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://" }),
647
+ /* @__PURE__ */ jsx13(
519
648
  Input,
520
649
  {
521
650
  type: "url",
@@ -534,18 +663,18 @@ var UrlInput = ({ className, style, ...props }) => {
534
663
  }
535
664
  )
536
665
  ] }),
537
- error && /* @__PURE__ */ jsx11("p", { className: "mt-1 text-xs text-red-500", children: error })
666
+ error && /* @__PURE__ */ jsx13("p", { className: "mt-1 text-xs text-red-500", children: error })
538
667
  ] });
539
668
  };
540
669
 
541
670
  // src/components/ui/checkbox.tsx
542
671
  import * as CheckboxPrimitive from "@radix-ui/react-checkbox";
543
- import { jsx as jsx12 } from "react/jsx-runtime";
672
+ import { jsx as jsx14 } from "react/jsx-runtime";
544
673
  function Checkbox({
545
674
  className,
546
675
  ...props
547
676
  }) {
548
- return /* @__PURE__ */ jsx12(
677
+ return /* @__PURE__ */ jsx14(
549
678
  CheckboxPrimitive.Root,
550
679
  {
551
680
  "data-slot": "checkbox",
@@ -554,12 +683,12 @@ function Checkbox({
554
683
  className
555
684
  ),
556
685
  ...props,
557
- children: /* @__PURE__ */ jsx12(
686
+ children: /* @__PURE__ */ jsx14(
558
687
  CheckboxPrimitive.Indicator,
559
688
  {
560
689
  "data-slot": "checkbox-indicator",
561
690
  className: "flex items-center justify-center text-current transition-none",
562
- children: /* @__PURE__ */ jsx12(Check, { className: "size-3.5" })
691
+ children: /* @__PURE__ */ jsx14(Check, { className: "size-3.5" })
563
692
  }
564
693
  )
565
694
  }
@@ -568,12 +697,12 @@ function Checkbox({
568
697
 
569
698
  // src/components/ui/label.tsx
570
699
  import * as LabelPrimitive from "@radix-ui/react-label";
571
- import { jsx as jsx13 } from "react/jsx-runtime";
700
+ import { jsx as jsx15 } from "react/jsx-runtime";
572
701
  function Label({
573
702
  className,
574
703
  ...props
575
704
  }) {
576
- return /* @__PURE__ */ jsx13(
705
+ return /* @__PURE__ */ jsx15(
577
706
  LabelPrimitive.Root,
578
707
  {
579
708
  "data-slot": "label",
@@ -587,23 +716,23 @@ function Label({
587
716
  }
588
717
 
589
718
  // src/components/Inputs/Checkbox/Checkbox.tsx
590
- import { jsx as jsx14, jsxs as jsxs6 } from "react/jsx-runtime";
719
+ import { jsx as jsx16, jsxs as jsxs7 } from "react/jsx-runtime";
591
720
  var CheckboxInput = ({ className, style, ...props }) => {
592
721
  const text = props.text ? props.text : "Subscribe";
593
- return /* @__PURE__ */ jsx14("div", { className, style, children: /* @__PURE__ */ jsxs6("div", { className: "flex items-center space-x-2", children: [
594
- /* @__PURE__ */ jsx14(Checkbox, { id: "newsletter" }),
595
- /* @__PURE__ */ jsx14(Label, { htmlFor: "newsletter", children: text })
722
+ return /* @__PURE__ */ jsx16("div", { className, style, children: /* @__PURE__ */ jsxs7("div", { className: "flex items-center space-x-2", children: [
723
+ /* @__PURE__ */ jsx16(Checkbox, { id: "newsletter" }),
724
+ /* @__PURE__ */ jsx16(Label, { htmlFor: "newsletter", children: text })
596
725
  ] }) });
597
726
  };
598
727
 
599
728
  // src/components/ui/radio-group.tsx
600
729
  import * as RadioGroupPrimitive from "@radix-ui/react-radio-group";
601
- import { jsx as jsx15 } from "react/jsx-runtime";
730
+ import { jsx as jsx17 } from "react/jsx-runtime";
602
731
  function RadioGroup({
603
732
  className,
604
733
  ...props
605
734
  }) {
606
- return /* @__PURE__ */ jsx15(
735
+ return /* @__PURE__ */ jsx17(
607
736
  RadioGroupPrimitive.Root,
608
737
  {
609
738
  "data-slot": "radio-group",
@@ -616,7 +745,7 @@ function RadioGroupItem({
616
745
  className,
617
746
  ...props
618
747
  }) {
619
- return /* @__PURE__ */ jsx15(
748
+ return /* @__PURE__ */ jsx17(
620
749
  RadioGroupPrimitive.Item,
621
750
  {
622
751
  "data-slot": "radio-group-item",
@@ -625,12 +754,12 @@ function RadioGroupItem({
625
754
  className
626
755
  ),
627
756
  ...props,
628
- children: /* @__PURE__ */ jsx15(
757
+ children: /* @__PURE__ */ jsx17(
629
758
  RadioGroupPrimitive.Indicator,
630
759
  {
631
760
  "data-slot": "radio-group-indicator",
632
761
  className: "relative flex items-center justify-center",
633
- children: /* @__PURE__ */ jsx15(Circle, { className: "fill-primary absolute top-1/2 left-1/2 size-2 -translate-x-1/2 -translate-y-1/2" })
762
+ children: /* @__PURE__ */ jsx17(Circle, { className: "fill-primary absolute top-1/2 left-1/2 size-2 -translate-x-1/2 -translate-y-1/2" })
634
763
  }
635
764
  )
636
765
  }
@@ -638,48 +767,117 @@ function RadioGroupItem({
638
767
  }
639
768
 
640
769
  // src/components/Inputs/RadioInput/RadioInput.tsx
641
- import { jsx as jsx16, jsxs as jsxs7 } from "react/jsx-runtime";
770
+ import { jsx as jsx18, jsxs as jsxs8 } from "react/jsx-runtime";
642
771
  var RadioInput = ({ className, style, ...props }) => {
643
772
  const text = Array.isArray(props.text) ? props.text : [props.text ?? "Subscribe"];
644
- return /* @__PURE__ */ jsx16("div", { className, style, children: /* @__PURE__ */ jsx16(RadioGroup, { defaultValue: "option-1", children: text?.map((item, index) => /* @__PURE__ */ jsxs7("div", { className: "flex items-center space-x-2", children: [
645
- /* @__PURE__ */ jsx16(RadioGroupItem, { value: item, id: `r${index}` }),
646
- /* @__PURE__ */ jsx16(Label, { htmlFor: `r${index}`, children: item })
773
+ return /* @__PURE__ */ jsx18("div", { className, style, children: /* @__PURE__ */ jsx18(RadioGroup, { defaultValue: "option-1", children: text?.map((item, index) => /* @__PURE__ */ jsxs8("div", { className: "flex items-center space-x-2", children: [
774
+ /* @__PURE__ */ jsx18(RadioGroupItem, { value: item, id: `r${index}` }),
775
+ /* @__PURE__ */ jsx18(Label, { htmlFor: `r${index}`, children: item })
647
776
  ] }, index)) }) });
648
777
  };
649
778
 
650
779
  // src/components/Inputs/MultiCheckbox/MultiCheckbox.tsx
651
- import { jsx as jsx17, jsxs as jsxs8 } from "react/jsx-runtime";
780
+ import { jsx as jsx19, jsxs as jsxs9 } from "react/jsx-runtime";
652
781
  var MultiCheckbox = ({ className, style, ...props }) => {
653
782
  const text = Array.isArray(props.text) ? props.text : [props.text ?? "Subscribe"];
654
- return /* @__PURE__ */ jsx17("div", { className, style, children: /* @__PURE__ */ jsx17("div", { className: "flex gap-3 flex-col", children: text?.map((item, index) => /* @__PURE__ */ jsxs8("div", { className: "flex items-center space-x-2", children: [
655
- /* @__PURE__ */ jsx17(Checkbox, { id: `newsletter-${index}` }),
656
- /* @__PURE__ */ jsx17(Label, { htmlFor: `newsletter-${index}`, children: item })
783
+ return /* @__PURE__ */ jsx19("div", { className, style, children: /* @__PURE__ */ jsx19("div", { className: "flex gap-3 flex-col", children: text?.map((item, index) => /* @__PURE__ */ jsxs9("div", { className: "flex items-center space-x-2", children: [
784
+ /* @__PURE__ */ jsx19(Checkbox, { id: `newsletter-${index}` }),
785
+ /* @__PURE__ */ jsx19(Label, { htmlFor: `newsletter-${index}`, children: item })
657
786
  ] }, index)) }) });
658
787
  };
659
788
 
660
789
  // src/components/Global/TinyMceEditor.tsx
661
790
  import { useMemo, useRef } from "react";
662
791
  import { Editor } from "@tinymce/tinymce-react";
663
- import { jsx as jsx18 } from "react/jsx-runtime";
792
+ import { jsx as jsx20 } from "react/jsx-runtime";
793
+ function MyEditor({
794
+ value,
795
+ onChange,
796
+ isDefault
797
+ }) {
798
+ const editorRef = useRef(null);
799
+ function stripOuterP(html) {
800
+ const trimmedHtml = html.trim();
801
+ if (!trimmedHtml) return "";
802
+ const div = document.createElement("div");
803
+ div.innerHTML = trimmedHtml;
804
+ const firstChild = div.firstElementChild;
805
+ if (div.childElementCount === 1 && firstChild?.tagName === "P") {
806
+ return firstChild.innerHTML;
807
+ }
808
+ return trimmedHtml;
809
+ }
810
+ const isDefaultToolbar = useMemo(() => {
811
+ let toolbar = "undo redo | formatselect | bold italic forecolor";
812
+ if (isDefault) {
813
+ toolbar = "undo redo | blocks | bold italic forecolor | alignleft aligncenter alignright alignjustify | bullist numlist outdent indent | removeformat | help";
814
+ }
815
+ return toolbar;
816
+ }, [isDefault]);
817
+ return /* @__PURE__ */ jsx20(
818
+ Editor,
819
+ {
820
+ apiKey: process.env.NEXT_PUBLIC_TINYMCE_API_KEY,
821
+ tinymceScriptSrc: process.env.NEXT_PUBLIC_TINYMCE_SCRIPT_SRC,
822
+ onInit: (_evt, editor) => editorRef.current = editor,
823
+ value,
824
+ licenseKey: "gpl",
825
+ init: {
826
+ height: 300,
827
+ menubar: false,
828
+ forced_root_block: false,
829
+ plugins: [
830
+ "advlist",
831
+ "autolink",
832
+ "lists",
833
+ "link",
834
+ "image",
835
+ "charmap",
836
+ "preview",
837
+ "anchor",
838
+ "searchreplace",
839
+ "visualblocks",
840
+ "code",
841
+ "fullscreen",
842
+ "insertdatetime",
843
+ "media",
844
+ "table",
845
+ "help",
846
+ "wordcount"
847
+ ],
848
+ toolbar: isDefaultToolbar,
849
+ content_style: `
850
+ body {
851
+ outline: none;
852
+ }
853
+ `
854
+ },
855
+ onEditorChange: (content) => onChange?.(stripOuterP(content))
856
+ }
857
+ );
858
+ }
664
859
 
665
860
  // src/components/Inputs/RichText/RichText.tsx
666
- import { jsx as jsx19 } from "react/jsx-runtime";
861
+ import { jsx as jsx21 } from "react/jsx-runtime";
862
+ function RichText({ className, style }) {
863
+ return /* @__PURE__ */ jsx21("div", { className, style, children: /* @__PURE__ */ jsx21(MyEditor, { isDefault: true }) });
864
+ }
667
865
 
668
866
  // src/components/Inputs/Dropdown/Dropdown.tsx
669
- import * as React7 from "react";
867
+ import * as React8 from "react";
670
868
 
671
869
  // src/components/ui/select.tsx
672
870
  import * as SelectPrimitive from "@radix-ui/react-select";
673
- import { jsx as jsx20, jsxs as jsxs9 } from "react/jsx-runtime";
871
+ import { jsx as jsx22, jsxs as jsxs10 } from "react/jsx-runtime";
674
872
  function Select({
675
873
  ...props
676
874
  }) {
677
- return /* @__PURE__ */ jsx20(SelectPrimitive.Root, { "data-slot": "select", ...props });
875
+ return /* @__PURE__ */ jsx22(SelectPrimitive.Root, { "data-slot": "select", ...props });
678
876
  }
679
877
  function SelectValue({
680
878
  ...props
681
879
  }) {
682
- return /* @__PURE__ */ jsx20(SelectPrimitive.Value, { "data-slot": "select-value", ...props });
880
+ return /* @__PURE__ */ jsx22(SelectPrimitive.Value, { "data-slot": "select-value", ...props });
683
881
  }
684
882
  function SelectTrigger({
685
883
  className,
@@ -687,7 +885,7 @@ function SelectTrigger({
687
885
  children,
688
886
  ...props
689
887
  }) {
690
- return /* @__PURE__ */ jsxs9(
888
+ return /* @__PURE__ */ jsxs10(
691
889
  SelectPrimitive.Trigger,
692
890
  {
693
891
  "data-slot": "select-trigger",
@@ -699,7 +897,7 @@ function SelectTrigger({
699
897
  ...props,
700
898
  children: [
701
899
  children,
702
- /* @__PURE__ */ jsx20(SelectPrimitive.Icon, { asChild: true, children: /* @__PURE__ */ jsx20(ChevronDown, { className: "size-4 opacity-50" }) })
900
+ /* @__PURE__ */ jsx22(SelectPrimitive.Icon, { asChild: true, children: /* @__PURE__ */ jsx22(ChevronDown, { className: "size-4 opacity-50" }) })
703
901
  ]
704
902
  }
705
903
  );
@@ -710,7 +908,7 @@ function SelectContent({
710
908
  position = "popper",
711
909
  ...props
712
910
  }) {
713
- return /* @__PURE__ */ jsx20(SelectPrimitive.Portal, { children: /* @__PURE__ */ jsxs9(
911
+ return /* @__PURE__ */ jsx22(SelectPrimitive.Portal, { children: /* @__PURE__ */ jsxs10(
714
912
  SelectPrimitive.Content,
715
913
  {
716
914
  "data-slot": "select-content",
@@ -722,8 +920,8 @@ function SelectContent({
722
920
  position,
723
921
  ...props,
724
922
  children: [
725
- /* @__PURE__ */ jsx20(SelectScrollUpButton, {}),
726
- /* @__PURE__ */ jsx20(
923
+ /* @__PURE__ */ jsx22(SelectScrollUpButton, {}),
924
+ /* @__PURE__ */ jsx22(
727
925
  SelectPrimitive.Viewport,
728
926
  {
729
927
  className: cn(
@@ -733,7 +931,7 @@ function SelectContent({
733
931
  children
734
932
  }
735
933
  ),
736
- /* @__PURE__ */ jsx20(SelectScrollDownButton, {})
934
+ /* @__PURE__ */ jsx22(SelectScrollDownButton, {})
737
935
  ]
738
936
  }
739
937
  ) });
@@ -743,7 +941,7 @@ function SelectItem({
743
941
  children,
744
942
  ...props
745
943
  }) {
746
- return /* @__PURE__ */ jsxs9(
944
+ return /* @__PURE__ */ jsxs10(
747
945
  SelectPrimitive.Item,
748
946
  {
749
947
  "data-slot": "select-item",
@@ -753,8 +951,8 @@ function SelectItem({
753
951
  ),
754
952
  ...props,
755
953
  children: [
756
- /* @__PURE__ */ jsx20("span", { className: "absolute right-2 flex size-3.5 items-center justify-center", children: /* @__PURE__ */ jsx20(SelectPrimitive.ItemIndicator, { children: /* @__PURE__ */ jsx20(Check, { className: "size-4" }) }) }),
757
- /* @__PURE__ */ jsx20(SelectPrimitive.ItemText, { children })
954
+ /* @__PURE__ */ jsx22("span", { className: "absolute right-2 flex size-3.5 items-center justify-center", children: /* @__PURE__ */ jsx22(SelectPrimitive.ItemIndicator, { children: /* @__PURE__ */ jsx22(Check, { className: "size-4" }) }) }),
955
+ /* @__PURE__ */ jsx22(SelectPrimitive.ItemText, { children })
758
956
  ]
759
957
  }
760
958
  );
@@ -763,7 +961,7 @@ function SelectScrollUpButton({
763
961
  className,
764
962
  ...props
765
963
  }) {
766
- return /* @__PURE__ */ jsx20(
964
+ return /* @__PURE__ */ jsx22(
767
965
  SelectPrimitive.ScrollUpButton,
768
966
  {
769
967
  "data-slot": "select-scroll-up-button",
@@ -772,7 +970,7 @@ function SelectScrollUpButton({
772
970
  className
773
971
  ),
774
972
  ...props,
775
- children: /* @__PURE__ */ jsx20(ChevronUp, { className: "size-4" })
973
+ children: /* @__PURE__ */ jsx22(ChevronUp, { className: "size-4" })
776
974
  }
777
975
  );
778
976
  }
@@ -780,7 +978,7 @@ function SelectScrollDownButton({
780
978
  className,
781
979
  ...props
782
980
  }) {
783
- return /* @__PURE__ */ jsx20(
981
+ return /* @__PURE__ */ jsx22(
784
982
  SelectPrimitive.ScrollDownButton,
785
983
  {
786
984
  "data-slot": "select-scroll-down-button",
@@ -789,13 +987,13 @@ function SelectScrollDownButton({
789
987
  className
790
988
  ),
791
989
  ...props,
792
- children: /* @__PURE__ */ jsx20(ChevronDown, { className: "size-4" })
990
+ children: /* @__PURE__ */ jsx22(ChevronDown, { className: "size-4" })
793
991
  }
794
992
  );
795
993
  }
796
994
 
797
995
  // src/components/Global/SelectDropdown.tsx
798
- import { jsx as jsx21, jsxs as jsxs10 } from "react/jsx-runtime";
996
+ import { jsx as jsx23, jsxs as jsxs11 } from "react/jsx-runtime";
799
997
  function SelectDropdown({
800
998
  options,
801
999
  placeholder = "Select an option",
@@ -807,23 +1005,23 @@ function SelectDropdown({
807
1005
  readOnly,
808
1006
  style
809
1007
  }) {
810
- return /* @__PURE__ */ jsxs10(Select, { value, onValueChange: onChange, disabled, children: [
811
- /* @__PURE__ */ jsx21(
1008
+ return /* @__PURE__ */ jsxs11(Select, { value, onValueChange: onChange, disabled, children: [
1009
+ /* @__PURE__ */ jsx23(
812
1010
  SelectTrigger,
813
1011
  {
814
1012
  id,
815
1013
  className,
816
1014
  style: style ?? {},
817
1015
  "aria-readonly": readOnly,
818
- children: /* @__PURE__ */ jsx21(SelectValue, { placeholder })
1016
+ children: /* @__PURE__ */ jsx23(SelectValue, { placeholder })
819
1017
  }
820
1018
  ),
821
- /* @__PURE__ */ jsx21(SelectContent, { children: options.map((opt) => /* @__PURE__ */ jsx21(SelectItem, { value: opt.value, children: opt.label }, opt.value)) })
1019
+ /* @__PURE__ */ jsx23(SelectContent, { children: options.map((opt) => /* @__PURE__ */ jsx23(SelectItem, { value: opt.value, children: opt.label }, opt.value)) })
822
1020
  ] });
823
1021
  }
824
1022
 
825
1023
  // src/components/Inputs/Dropdown/Dropdown.tsx
826
- import { Fragment as Fragment6, jsx as jsx22, jsxs as jsxs11 } from "react/jsx-runtime";
1024
+ import { Fragment as Fragment7, jsx as jsx24, jsxs as jsxs12 } from "react/jsx-runtime";
827
1025
  var Dropdown = ({ className, style, ...props }) => {
828
1026
  const text = Array.isArray(props.text) ? props.text : [props.text ?? "Default"];
829
1027
  const placeholder = props.placeholder ? props.placeholder : "Placeholder text";
@@ -838,8 +1036,8 @@ var Dropdown = ({ className, style, ...props }) => {
838
1036
  const isDisabled = props.isDisabled ?? false;
839
1037
  const isReadonly = props.isReadonly ?? false;
840
1038
  const isAutocomplete = props.isAutocomplete ?? false;
841
- const [value, setValue] = React7.useState("");
842
- const [error, setError] = React7.useState(null);
1039
+ const [value, setValue] = React8.useState("");
1040
+ const [error, setError] = React8.useState(null);
843
1041
  const handleChange = (val) => {
844
1042
  setValue(val);
845
1043
  if (isRequired && val.trim() === "") {
@@ -850,8 +1048,8 @@ var Dropdown = ({ className, style, ...props }) => {
850
1048
  setError(null);
851
1049
  }
852
1050
  };
853
- return /* @__PURE__ */ jsxs11(Fragment6, { children: [
854
- /* @__PURE__ */ jsx22("div", { className: "flex gap-3 flex-col", children: /* @__PURE__ */ jsx22(
1051
+ return /* @__PURE__ */ jsxs12(Fragment7, { children: [
1052
+ /* @__PURE__ */ jsx24("div", { className: "flex gap-3 flex-col", children: /* @__PURE__ */ jsx24(
855
1053
  SelectDropdown,
856
1054
  {
857
1055
  options: formatList,
@@ -868,18 +1066,18 @@ var Dropdown = ({ className, style, ...props }) => {
868
1066
  pattern: regexPattern || void 0
869
1067
  }
870
1068
  ) }),
871
- error && /* @__PURE__ */ jsx22("p", { className: "mt-1 text-xs text-red-500", children: error })
1069
+ error && /* @__PURE__ */ jsx24("p", { className: "mt-1 text-xs text-red-500", children: error })
872
1070
  ] });
873
1071
  };
874
1072
 
875
1073
  // src/components/ui/switch.tsx
876
1074
  import * as SwitchPrimitive from "@radix-ui/react-switch";
877
- import { jsx as jsx23 } from "react/jsx-runtime";
1075
+ import { jsx as jsx25 } from "react/jsx-runtime";
878
1076
  function Switch({
879
1077
  className,
880
1078
  ...props
881
1079
  }) {
882
- return /* @__PURE__ */ jsx23(
1080
+ return /* @__PURE__ */ jsx25(
883
1081
  SwitchPrimitive.Root,
884
1082
  {
885
1083
  "data-slot": "switch",
@@ -888,7 +1086,7 @@ function Switch({
888
1086
  className
889
1087
  ),
890
1088
  ...props,
891
- children: /* @__PURE__ */ jsx23(
1089
+ children: /* @__PURE__ */ jsx25(
892
1090
  SwitchPrimitive.Thumb,
893
1091
  {
894
1092
  "data-slot": "switch-thumb",
@@ -902,30 +1100,30 @@ function Switch({
902
1100
  }
903
1101
 
904
1102
  // src/components/Inputs/SwitchToggle/SwitchToggle.tsx
905
- import { jsx as jsx24, jsxs as jsxs12 } from "react/jsx-runtime";
1103
+ import { jsx as jsx26, jsxs as jsxs13 } from "react/jsx-runtime";
906
1104
  var SwitchToggle = ({ className, style, ...props }) => {
907
1105
  const text = Array.isArray(props.text) ? props.text : [props.text ?? "Subscribe"];
908
- return /* @__PURE__ */ jsx24("div", { className, style, children: text?.map((item, index) => /* @__PURE__ */ jsxs12("div", { className: "flex items-center space-x-2 mb-2", children: [
909
- /* @__PURE__ */ jsx24(Switch, { id: `switch-${index}` }),
910
- /* @__PURE__ */ jsx24(Label, { htmlFor: `switch-${index}`, children: item })
1106
+ return /* @__PURE__ */ jsx26("div", { className, style, children: text?.map((item, index) => /* @__PURE__ */ jsxs13("div", { className: "flex items-center space-x-2 mb-2", children: [
1107
+ /* @__PURE__ */ jsx26(Switch, { id: `switch-${index}` }),
1108
+ /* @__PURE__ */ jsx26(Label, { htmlFor: `switch-${index}`, children: item })
911
1109
  ] }, index)) });
912
1110
  };
913
1111
 
914
1112
  // src/components/Inputs/PhoneInput/PhoneInput.tsx
915
- import * as React8 from "react";
1113
+ import * as React9 from "react";
916
1114
  import { PhoneInput as PhoneInputField } from "react-international-phone";
917
1115
  import "react-international-phone/style.css";
918
- import { Fragment as Fragment7, jsx as jsx25, jsxs as jsxs13 } from "react/jsx-runtime";
1116
+ import { Fragment as Fragment8, jsx as jsx27, jsxs as jsxs14 } from "react/jsx-runtime";
919
1117
  var PhoneInput = ({ className, style, ...props }) => {
920
1118
  const placeholder = props.placeholder ?? "Enter phone number";
921
- const [value, setValue] = React8.useState("");
1119
+ const [value, setValue] = React9.useState("");
922
1120
  const regexPattern = props.regexPattern ?? "";
923
1121
  const errorMessage = props.errorMessage ?? "Required";
924
1122
  const noOfCharacters = props.noOfCharacters ?? 100;
925
1123
  const isRequired = props.isRequired ?? false;
926
1124
  const isEditable = props.isEditable ?? true;
927
1125
  const isDisabled = props.isDisabled ?? false;
928
- const [error, setError] = React8.useState(null);
1126
+ const [error, setError] = React9.useState(null);
929
1127
  const handleChange = (val) => {
930
1128
  if (val.length > noOfCharacters) return;
931
1129
  setValue(val);
@@ -937,8 +1135,8 @@ var PhoneInput = ({ className, style, ...props }) => {
937
1135
  setError(null);
938
1136
  }
939
1137
  };
940
- return /* @__PURE__ */ jsxs13(Fragment7, { children: [
941
- /* @__PURE__ */ jsx25(
1138
+ return /* @__PURE__ */ jsxs14(Fragment8, { children: [
1139
+ /* @__PURE__ */ jsx27(
942
1140
  PhoneInputField,
943
1141
  {
944
1142
  defaultCountry: "in",
@@ -955,23 +1153,158 @@ var PhoneInput = ({ className, style, ...props }) => {
955
1153
  style
956
1154
  }
957
1155
  ),
958
- error && /* @__PURE__ */ jsx25("p", { className: "mt-1 text-xs text-red-500", children: error })
1156
+ error && /* @__PURE__ */ jsx27("p", { className: "mt-1 text-xs text-red-500", children: error })
1157
+ ] });
1158
+ };
1159
+
1160
+ // src/components/Inputs/SearchInput/SearchInput.tsx
1161
+ import * as React10 from "react";
1162
+ import { Fragment as Fragment9, jsx as jsx28, jsxs as jsxs15 } from "react/jsx-runtime";
1163
+ var SearchInput = ({ className, style, ...props }) => {
1164
+ const placeholder = props.placeholder ?? "Placeholder text";
1165
+ const regexPattern = props.regexPattern ?? "";
1166
+ const errorMessage = props.errorMessage ?? "Required";
1167
+ const noOfCharacters = props.noOfCharacters ?? 100;
1168
+ const isRequired = props.isRequired ?? false;
1169
+ const isEditable = props.isEditable ?? true;
1170
+ const isDisabled = props.isDisabled ?? false;
1171
+ const isReadonly = props.isReadonly ?? false;
1172
+ const isAutocomplete = props.isAutocomplete ?? false;
1173
+ const [value, setValue] = React10.useState("");
1174
+ const [error, setError] = React10.useState(null);
1175
+ const handleChange = (e) => {
1176
+ const val = e.target.value;
1177
+ if (val.length > noOfCharacters) return;
1178
+ setValue(val);
1179
+ if (isRequired && val.trim() === "") {
1180
+ setError(errorMessage);
1181
+ } else if (regexPattern && !new RegExp(regexPattern).test(val)) {
1182
+ setError(errorMessage);
1183
+ } else {
1184
+ setError(null);
1185
+ }
1186
+ };
1187
+ return /* @__PURE__ */ jsxs15(Fragment9, { children: [
1188
+ /* @__PURE__ */ jsxs15("div", { className: "flex justify-start items-center relative", children: [
1189
+ /* @__PURE__ */ jsx28(Search, { className: "absolute left-3 top-1/2 h-4 w-4 -translate-y-1/2 text-[#BDBDBD]" }),
1190
+ /* @__PURE__ */ jsx28(
1191
+ Input,
1192
+ {
1193
+ type: "text",
1194
+ id: "text-field",
1195
+ className,
1196
+ style,
1197
+ value,
1198
+ autoComplete: isAutocomplete ? "on" : "off",
1199
+ placeholder,
1200
+ onChange: handleChange,
1201
+ disabled: isDisabled || !isEditable,
1202
+ readOnly: isReadonly,
1203
+ required: isRequired,
1204
+ maxLength: noOfCharacters,
1205
+ pattern: regexPattern || void 0
1206
+ }
1207
+ )
1208
+ ] }),
1209
+ error && /* @__PURE__ */ jsx28("p", { className: "mt-1 text-xs text-red-500", children: error })
1210
+ ] });
1211
+ };
1212
+
1213
+ // src/components/Inputs/FileInput/FileInput.tsx
1214
+ import { jsx as jsx29, jsxs as jsxs16 } from "react/jsx-runtime";
1215
+ var FileInput = ({ className, style, ...props }) => {
1216
+ const placeholder = props.placeholder ?? "Placeholder text";
1217
+ return /* @__PURE__ */ jsxs16("div", { className: "d-flex items-center relative align-middle", children: [
1218
+ /* @__PURE__ */ jsx29("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-[11px]", children: "Browse" }),
1219
+ /* @__PURE__ */ jsx29(
1220
+ Input,
1221
+ {
1222
+ type: "file",
1223
+ id: "file",
1224
+ autoComplete: "off",
1225
+ placeholder,
1226
+ className,
1227
+ style
1228
+ }
1229
+ )
959
1230
  ] });
960
1231
  };
961
1232
 
962
1233
  // src/components/Inputs/DatePicker/DatePicker.tsx
963
- import React9 from "react";
964
- import { Fragment as Fragment8, jsx as jsx26, jsxs as jsxs14 } from "react/jsx-runtime";
1234
+ import React11 from "react";
1235
+ import { Fragment as Fragment10, jsx as jsx30, jsxs as jsxs17 } from "react/jsx-runtime";
1236
+ function DatePicker({ className, style, ...props }) {
1237
+ const placeholder = props.placeholder ?? "Placeholder text";
1238
+ const minimumDate = props.minimumDate ?? "none";
1239
+ const customMinimumDate = props.customMinimumDate ?? "";
1240
+ const maximumDate = props.maximumDate ?? "none";
1241
+ const customMaximumDate = props.customMaximumDate ?? "";
1242
+ const errorMessage = props.errorMessage ?? "Required";
1243
+ const isRequired = props.isRequired ?? false;
1244
+ const isEditable = props.isEditable ?? true;
1245
+ const isDisabled = props.isDisabled ?? false;
1246
+ const isReadonly = props.isReadonly ?? false;
1247
+ const isAutocomplete = props.isAutocomplete ?? false;
1248
+ const [value, setValue] = React11.useState("");
1249
+ const [error, setError] = React11.useState(null);
1250
+ const resolveDate = (option, customOption) => {
1251
+ if (!option) return void 0;
1252
+ switch (option) {
1253
+ case "today":
1254
+ return (/* @__PURE__ */ new Date()).toISOString().split("T")[0];
1255
+ case "custom":
1256
+ return customOption ?? void 0;
1257
+ case "none":
1258
+ default:
1259
+ return void 0;
1260
+ }
1261
+ };
1262
+ const minDate = resolveDate(minimumDate, customMinimumDate);
1263
+ const maxDate = resolveDate(maximumDate, customMaximumDate);
1264
+ const handleChange = (e) => {
1265
+ const val = e.target.value;
1266
+ setValue(val);
1267
+ if (isRequired && val.trim() === "") {
1268
+ setError(errorMessage);
1269
+ } else {
1270
+ setError(null);
1271
+ }
1272
+ };
1273
+ return /* @__PURE__ */ jsxs17(Fragment10, { children: [
1274
+ /* @__PURE__ */ jsxs17("div", { className: "flex justify-start items-center relative", children: [
1275
+ /* @__PURE__ */ jsx30(Calendar, { className: "absolute left-3 top-1/2 h-4 w-4 -translate-y-1/2 text-[#BDBDBD]" }),
1276
+ /* @__PURE__ */ jsx30(
1277
+ Input,
1278
+ {
1279
+ type: "date",
1280
+ id: "date",
1281
+ autoComplete: isAutocomplete ? "on" : "off",
1282
+ onChange: handleChange,
1283
+ disabled: isDisabled || !isEditable,
1284
+ value,
1285
+ readOnly: isReadonly,
1286
+ required: isRequired,
1287
+ placeholder,
1288
+ min: minDate,
1289
+ max: maxDate,
1290
+ className,
1291
+ style
1292
+ }
1293
+ )
1294
+ ] }),
1295
+ error && /* @__PURE__ */ jsx30("p", { className: "mt-1 text-xs text-red-500", children: error })
1296
+ ] });
1297
+ }
965
1298
 
966
1299
  // src/components/Inputs/DateRange/DateRange.tsx
967
- import * as React11 from "react";
1300
+ import * as React13 from "react";
968
1301
  import { addDays, format } from "date-fns";
969
1302
 
970
1303
  // src/components/ui/calendar.tsx
971
- import * as React10 from "react";
1304
+ import * as React12 from "react";
972
1305
  import { DayPicker, getDefaultClassNames } from "react-day-picker";
973
- import { jsx as jsx27 } from "react/jsx-runtime";
974
- function Calendar({
1306
+ import { jsx as jsx31 } from "react/jsx-runtime";
1307
+ function Calendar2({
975
1308
  className,
976
1309
  classNames,
977
1310
  showOutsideDays = true,
@@ -982,7 +1315,7 @@ function Calendar({
982
1315
  ...props
983
1316
  }) {
984
1317
  const defaultClassNames = getDefaultClassNames();
985
- return /* @__PURE__ */ jsx27(
1318
+ return /* @__PURE__ */ jsx31(
986
1319
  DayPicker,
987
1320
  {
988
1321
  showOutsideDays,
@@ -1081,7 +1414,7 @@ function Calendar({
1081
1414
  },
1082
1415
  components: {
1083
1416
  Root: ({ className: className2, rootRef, ...props2 }) => {
1084
- return /* @__PURE__ */ jsx27(
1417
+ return /* @__PURE__ */ jsx31(
1085
1418
  "div",
1086
1419
  {
1087
1420
  "data-slot": "calendar",
@@ -1093,10 +1426,10 @@ function Calendar({
1093
1426
  },
1094
1427
  Chevron: ({ className: className2, orientation, ...props2 }) => {
1095
1428
  if (orientation === "left") {
1096
- return /* @__PURE__ */ jsx27(ChevronLeft, { className: cn("size-4", className2), ...props2 });
1429
+ return /* @__PURE__ */ jsx31(ChevronLeft, { className: cn("size-4", className2), ...props2 });
1097
1430
  }
1098
1431
  if (orientation === "right") {
1099
- return /* @__PURE__ */ jsx27(
1432
+ return /* @__PURE__ */ jsx31(
1100
1433
  ChevronRight,
1101
1434
  {
1102
1435
  className: cn("size-4", className2),
@@ -1104,11 +1437,11 @@ function Calendar({
1104
1437
  }
1105
1438
  );
1106
1439
  }
1107
- return /* @__PURE__ */ jsx27(ChevronDown, { className: cn("size-4", className2), ...props2 });
1440
+ return /* @__PURE__ */ jsx31(ChevronDown, { className: cn("size-4", className2), ...props2 });
1108
1441
  },
1109
1442
  DayButton: CalendarDayButton,
1110
1443
  WeekNumber: ({ children, ...props2 }) => {
1111
- return /* @__PURE__ */ jsx27("td", { ...props2, children: /* @__PURE__ */ jsx27("div", { className: "flex size-(--cell-size) items-center justify-center text-center", children }) });
1444
+ return /* @__PURE__ */ jsx31("td", { ...props2, children: /* @__PURE__ */ jsx31("div", { className: "flex size-(--cell-size) items-center justify-center text-center", children }) });
1112
1445
  },
1113
1446
  ...components
1114
1447
  },
@@ -1123,11 +1456,11 @@ function CalendarDayButton({
1123
1456
  ...props
1124
1457
  }) {
1125
1458
  const defaultClassNames = getDefaultClassNames();
1126
- const ref = React10.useRef(null);
1127
- React10.useEffect(() => {
1459
+ const ref = React12.useRef(null);
1460
+ React12.useEffect(() => {
1128
1461
  if (modifiers.focused) ref.current?.focus();
1129
1462
  }, [modifiers.focused]);
1130
- return /* @__PURE__ */ jsx27(
1463
+ return /* @__PURE__ */ jsx31(
1131
1464
  Button,
1132
1465
  {
1133
1466
  ref,
@@ -1150,16 +1483,16 @@ function CalendarDayButton({
1150
1483
 
1151
1484
  // src/components/ui/popover.tsx
1152
1485
  import * as PopoverPrimitive from "@radix-ui/react-popover";
1153
- import { jsx as jsx28 } from "react/jsx-runtime";
1486
+ import { jsx as jsx32 } from "react/jsx-runtime";
1154
1487
  function Popover({
1155
1488
  ...props
1156
1489
  }) {
1157
- return /* @__PURE__ */ jsx28(PopoverPrimitive.Root, { "data-slot": "popover", ...props });
1490
+ return /* @__PURE__ */ jsx32(PopoverPrimitive.Root, { "data-slot": "popover", ...props });
1158
1491
  }
1159
1492
  function PopoverTrigger({
1160
1493
  ...props
1161
1494
  }) {
1162
- return /* @__PURE__ */ jsx28(PopoverPrimitive.Trigger, { "data-slot": "popover-trigger", ...props });
1495
+ return /* @__PURE__ */ jsx32(PopoverPrimitive.Trigger, { "data-slot": "popover-trigger", ...props });
1163
1496
  }
1164
1497
  function PopoverContent({
1165
1498
  className,
@@ -1167,7 +1500,7 @@ function PopoverContent({
1167
1500
  sideOffset = 4,
1168
1501
  ...props
1169
1502
  }) {
1170
- return /* @__PURE__ */ jsx28(PopoverPrimitive.Portal, { children: /* @__PURE__ */ jsx28(
1503
+ return /* @__PURE__ */ jsx32(PopoverPrimitive.Portal, { children: /* @__PURE__ */ jsx32(
1171
1504
  PopoverPrimitive.Content,
1172
1505
  {
1173
1506
  "data-slot": "popover-content",
@@ -1183,14 +1516,14 @@ function PopoverContent({
1183
1516
  }
1184
1517
 
1185
1518
  // src/components/Inputs/DateRange/DateRange.tsx
1186
- import { Fragment as Fragment9, jsx as jsx29, jsxs as jsxs15 } from "react/jsx-runtime";
1519
+ import { Fragment as Fragment11, jsx as jsx33, jsxs as jsxs18 } from "react/jsx-runtime";
1187
1520
  var DateRange = ({ className, style }) => {
1188
- const [date, setDate] = React11.useState({
1521
+ const [date, setDate] = React13.useState({
1189
1522
  from: /* @__PURE__ */ new Date(),
1190
1523
  to: addDays(/* @__PURE__ */ new Date(), 7)
1191
1524
  });
1192
- return /* @__PURE__ */ jsx29("div", { className, style, children: /* @__PURE__ */ jsxs15(Popover, { children: [
1193
- /* @__PURE__ */ jsx29(PopoverTrigger, { asChild: true, children: /* @__PURE__ */ jsx29(
1525
+ return /* @__PURE__ */ jsx33("div", { className, style, children: /* @__PURE__ */ jsxs18(Popover, { children: [
1526
+ /* @__PURE__ */ jsx33(PopoverTrigger, { asChild: true, children: /* @__PURE__ */ jsx33(
1194
1527
  Button,
1195
1528
  {
1196
1529
  id: "date",
@@ -1199,16 +1532,16 @@ var DateRange = ({ className, style }) => {
1199
1532
  "w-[300px] justify-start text-left font-normal text-[11px]",
1200
1533
  !date && "text-muted-foreground"
1201
1534
  ),
1202
- children: date?.from ? date.to ? /* @__PURE__ */ jsxs15(Fragment9, { children: [
1535
+ children: date?.from ? date.to ? /* @__PURE__ */ jsxs18(Fragment11, { children: [
1203
1536
  format(date.from, "LLL dd, y"),
1204
1537
  " -",
1205
1538
  " ",
1206
1539
  format(date.to, "LLL dd, y")
1207
- ] }) : format(date.from, "LLL dd, y") : /* @__PURE__ */ jsx29("span", { children: "Pick a date range" })
1540
+ ] }) : format(date.from, "LLL dd, y") : /* @__PURE__ */ jsx33("span", { children: "Pick a date range" })
1208
1541
  }
1209
1542
  ) }),
1210
- /* @__PURE__ */ jsx29(PopoverContent, { className: "w-auto p-0", align: "start", children: /* @__PURE__ */ jsx29(
1211
- Calendar,
1543
+ /* @__PURE__ */ jsx33(PopoverContent, { className: "w-auto p-0", align: "start", children: /* @__PURE__ */ jsx33(
1544
+ Calendar2,
1212
1545
  {
1213
1546
  mode: "range",
1214
1547
  defaultMonth: date?.from,
@@ -1219,6 +1552,7 @@ var DateRange = ({ className, style }) => {
1219
1552
  ) })
1220
1553
  ] }) });
1221
1554
  };
1555
+ var DateRange_default = DateRange;
1222
1556
 
1223
1557
  // src/components/ui/data-table.tsx
1224
1558
  import {
@@ -1228,14 +1562,14 @@ import {
1228
1562
  } from "@tanstack/react-table";
1229
1563
 
1230
1564
  // src/components/ui/table.tsx
1231
- import { jsx as jsx30 } from "react/jsx-runtime";
1565
+ import { jsx as jsx34 } from "react/jsx-runtime";
1232
1566
  function Table({ className, ...props }) {
1233
- return /* @__PURE__ */ jsx30(
1567
+ return /* @__PURE__ */ jsx34(
1234
1568
  "div",
1235
1569
  {
1236
1570
  "data-slot": "table-container",
1237
1571
  className: "relative w-full overflow-x-auto rounded-md border border-gray-200 bg-white",
1238
- children: /* @__PURE__ */ jsx30(
1572
+ children: /* @__PURE__ */ jsx34(
1239
1573
  "table",
1240
1574
  {
1241
1575
  "data-slot": "table",
@@ -1247,7 +1581,7 @@ function Table({ className, ...props }) {
1247
1581
  );
1248
1582
  }
1249
1583
  function TableHeader({ className, ...props }) {
1250
- return /* @__PURE__ */ jsx30(
1584
+ return /* @__PURE__ */ jsx34(
1251
1585
  "thead",
1252
1586
  {
1253
1587
  "data-slot": "table-header",
@@ -1260,7 +1594,7 @@ function TableHeader({ className, ...props }) {
1260
1594
  );
1261
1595
  }
1262
1596
  function TableBody({ className, ...props }) {
1263
- return /* @__PURE__ */ jsx30(
1597
+ return /* @__PURE__ */ jsx34(
1264
1598
  "tbody",
1265
1599
  {
1266
1600
  "data-slot": "table-body",
@@ -1273,7 +1607,7 @@ function TableBody({ className, ...props }) {
1273
1607
  );
1274
1608
  }
1275
1609
  function TableRow({ className, ...props }) {
1276
- return /* @__PURE__ */ jsx30(
1610
+ return /* @__PURE__ */ jsx34(
1277
1611
  "tr",
1278
1612
  {
1279
1613
  "data-slot": "table-row",
@@ -1286,7 +1620,7 @@ function TableRow({ className, ...props }) {
1286
1620
  );
1287
1621
  }
1288
1622
  function TableHead({ className, ...props }) {
1289
- return /* @__PURE__ */ jsx30(
1623
+ return /* @__PURE__ */ jsx34(
1290
1624
  "th",
1291
1625
  {
1292
1626
  "data-slot": "table-head",
@@ -1299,7 +1633,7 @@ function TableHead({ className, ...props }) {
1299
1633
  );
1300
1634
  }
1301
1635
  function TableCell({ className, ...props }) {
1302
- return /* @__PURE__ */ jsx30(
1636
+ return /* @__PURE__ */ jsx34(
1303
1637
  "td",
1304
1638
  {
1305
1639
  "data-slot": "table-cell",
@@ -1313,7 +1647,7 @@ function TableCell({ className, ...props }) {
1313
1647
  }
1314
1648
 
1315
1649
  // src/components/ui/data-table.tsx
1316
- import { Fragment as Fragment10, jsx as jsx31, jsxs as jsxs16 } from "react/jsx-runtime";
1650
+ import { Fragment as Fragment12, jsx as jsx35, jsxs as jsxs19 } from "react/jsx-runtime";
1317
1651
  function DataTable({
1318
1652
  columns,
1319
1653
  rowActions,
@@ -1338,14 +1672,14 @@ function DataTable({
1338
1672
  onCellClick(rowData, columnId);
1339
1673
  }
1340
1674
  };
1341
- return /* @__PURE__ */ jsx31("div", { className: "overflow-hidden rounded-md border w-full", children: /* @__PURE__ */ jsxs16(Table, { children: [
1342
- /* @__PURE__ */ jsx31(TableHeader, { children: table.getHeaderGroups().map((headerGroup) => /* @__PURE__ */ jsx31(TableRow, { children: headerGroup.headers.map((header) => {
1343
- return /* @__PURE__ */ jsx31(TableHead, { children: header.isPlaceholder ? null : flexRender(
1675
+ return /* @__PURE__ */ jsx35("div", { className: "overflow-hidden rounded-md border w-full", children: /* @__PURE__ */ jsxs19(Table, { children: [
1676
+ /* @__PURE__ */ jsx35(TableHeader, { children: table.getHeaderGroups().map((headerGroup) => /* @__PURE__ */ jsx35(TableRow, { children: headerGroup.headers.map((header) => {
1677
+ return /* @__PURE__ */ jsx35(TableHead, { children: header.isPlaceholder ? null : flexRender(
1344
1678
  header.column.columnDef.header,
1345
1679
  header.getContext()
1346
1680
  ) }, header.id);
1347
1681
  }) }, headerGroup.id)) }),
1348
- /* @__PURE__ */ jsx31(TableBody, { children: loading ? /* @__PURE__ */ jsx31(TableRow, { children: /* @__PURE__ */ jsx31(TableCell, { colSpan: columns.length, className: "h-24 text-center", children: "Loading..." }) }) : /* @__PURE__ */ jsx31(Fragment10, { children: table.getRowModel().rows?.length ? table.getRowModel().rows.map((row) => /* @__PURE__ */ jsxs16(
1682
+ /* @__PURE__ */ jsx35(TableBody, { children: loading ? /* @__PURE__ */ jsx35(TableRow, { children: /* @__PURE__ */ jsx35(TableCell, { colSpan: columns.length, className: "h-24 text-center", children: "Loading..." }) }) : /* @__PURE__ */ jsx35(Fragment12, { children: table.getRowModel().rows?.length ? table.getRowModel().rows.map((row) => /* @__PURE__ */ jsxs19(
1349
1683
  TableRow,
1350
1684
  {
1351
1685
  "data-state": row.getIsSelected() && "selected",
@@ -1355,7 +1689,7 @@ function DataTable({
1355
1689
  const isCellClickable = cellClickEnabled(row.original, cell.column.id);
1356
1690
  const dynamicClass = cell.column.columnDef.meta?.cellClass || "";
1357
1691
  const dynamicStyle = cell.column.columnDef.meta?.cellStyle || {};
1358
- return /* @__PURE__ */ jsx31(
1692
+ return /* @__PURE__ */ jsx35(
1359
1693
  TableCell,
1360
1694
  {
1361
1695
  className: `${dynamicClass} ${isCellClickable ? "underline cursor-pointer" : ""}`,
@@ -1370,36 +1704,36 @@ function DataTable({
1370
1704
  cell.id
1371
1705
  );
1372
1706
  }),
1373
- rowActions.length > 0 && /* @__PURE__ */ jsx31("div", { className: "absolute top-0 right-0 bg-white py-3 min-w-[100px] z-50 shadow-md flex items-center justify-center gap-3 p-2 opacity-0 group-hover:opacity-100 duration-300 h-full", children: rowActions.map((action, index) => /* @__PURE__ */ jsx31("p", { className: "text-[#383838] text-[12px] cursor-pointer font-[400]", children: action.header }, index)) })
1707
+ rowActions.length > 0 && /* @__PURE__ */ jsx35("div", { className: "absolute top-0 right-0 bg-white py-3 min-w-[100px] z-50 shadow-md flex items-center justify-center gap-3 p-2 opacity-0 group-hover:opacity-100 duration-300 h-full", children: rowActions.map((action, index) => /* @__PURE__ */ jsx35("p", { className: "text-[#383838] text-[12px] cursor-pointer font-[400]", children: action.header }, index)) })
1374
1708
  ]
1375
1709
  },
1376
1710
  row.id
1377
- )) : /* @__PURE__ */ jsx31(TableRow, { children: /* @__PURE__ */ jsx31(TableCell, { colSpan: columns.length, className: "h-24 text-center", children: "No results." }) }) }) })
1711
+ )) : /* @__PURE__ */ jsx35(TableRow, { children: /* @__PURE__ */ jsx35(TableCell, { colSpan: columns.length, className: "h-24 text-center", children: "No results." }) }) }) })
1378
1712
  ] }) });
1379
1713
  }
1380
1714
 
1381
1715
  // src/components/DataDisplay/Table/Table.tsx
1382
- import { jsx as jsx32 } from "react/jsx-runtime";
1716
+ import { jsx as jsx36 } from "react/jsx-runtime";
1383
1717
  var Table2 = ({ columns, data, rowActions }) => {
1384
1718
  const rawColumns = Array.isArray(columns) ? columns : [];
1385
1719
  const rawData = Array.isArray(data) ? data : [];
1386
1720
  const rawRowActions = Array.isArray(rowActions) ? rowActions : [];
1387
- return /* @__PURE__ */ jsx32(DataTable, { columns: rawColumns, data: rawData, rowActions: rawRowActions });
1721
+ return /* @__PURE__ */ jsx36(DataTable, { columns: rawColumns, data: rawData, rowActions: rawRowActions });
1388
1722
  };
1389
1723
  var Table_default = Table2;
1390
1724
 
1391
1725
  // src/components/ui/dropdown-menu.tsx
1392
1726
  import * as DropdownMenuPrimitive from "@radix-ui/react-dropdown-menu";
1393
- import { jsx as jsx33, jsxs as jsxs17 } from "react/jsx-runtime";
1727
+ import { jsx as jsx37, jsxs as jsxs20 } from "react/jsx-runtime";
1394
1728
  function DropdownMenu({
1395
1729
  ...props
1396
1730
  }) {
1397
- return /* @__PURE__ */ jsx33(DropdownMenuPrimitive.Root, { "data-slot": "dropdown-menu", ...props });
1731
+ return /* @__PURE__ */ jsx37(DropdownMenuPrimitive.Root, { "data-slot": "dropdown-menu", ...props });
1398
1732
  }
1399
1733
  function DropdownMenuTrigger({
1400
1734
  ...props
1401
1735
  }) {
1402
- return /* @__PURE__ */ jsx33(
1736
+ return /* @__PURE__ */ jsx37(
1403
1737
  DropdownMenuPrimitive.Trigger,
1404
1738
  {
1405
1739
  "data-slot": "dropdown-menu-trigger",
@@ -1412,7 +1746,7 @@ function DropdownMenuContent({
1412
1746
  sideOffset = 4,
1413
1747
  ...props
1414
1748
  }) {
1415
- return /* @__PURE__ */ jsx33(DropdownMenuPrimitive.Portal, { children: /* @__PURE__ */ jsx33(
1749
+ return /* @__PURE__ */ jsx37(DropdownMenuPrimitive.Portal, { children: /* @__PURE__ */ jsx37(
1416
1750
  DropdownMenuPrimitive.Content,
1417
1751
  {
1418
1752
  "data-slot": "dropdown-menu-content",
@@ -1431,7 +1765,7 @@ function DropdownMenuItem({
1431
1765
  variant = "default",
1432
1766
  ...props
1433
1767
  }) {
1434
- return /* @__PURE__ */ jsx33(
1768
+ return /* @__PURE__ */ jsx37(
1435
1769
  DropdownMenuPrimitive.Item,
1436
1770
  {
1437
1771
  "data-slot": "dropdown-menu-item",
@@ -1447,13 +1781,13 @@ function DropdownMenuItem({
1447
1781
  }
1448
1782
 
1449
1783
  // src/components/Navigation/Tabs/Tabs.tsx
1450
- import { jsx as jsx34, jsxs as jsxs18 } from "react/jsx-runtime";
1784
+ import { jsx as jsx38, jsxs as jsxs21 } from "react/jsx-runtime";
1451
1785
  var Tabs = ({ tabs, className, style }) => {
1452
1786
  const rawTabs = Array.isArray(tabs) ? tabs : [];
1453
1787
  const baseClasses = "text-[12px] text-[#E9E9E9] p-2 text-center rounded-md transition-colors border-none outline-none focus:outline-none focus:ring-0 focus:ring-offset-0 cursor-pointer select-none ";
1454
1788
  const activeClasses = "bg-white/10 text-white";
1455
1789
  const hoverClasses = "hover:bg-white/5";
1456
- return /* @__PURE__ */ jsx34("div", { className, style, children: rawTabs.map((tab, index) => {
1790
+ return /* @__PURE__ */ jsx38("div", { className, style, children: rawTabs.map((tab, index) => {
1457
1791
  const finalClasses = [
1458
1792
  baseClasses,
1459
1793
  tab.isActive ? activeClasses : hoverClasses,
@@ -1461,24 +1795,24 @@ var Tabs = ({ tabs, className, style }) => {
1461
1795
  ].join(" ");
1462
1796
  const hasDropdown = Array.isArray(tab.children) && tab.children.length > 0 && tab.isDropDown;
1463
1797
  if (hasDropdown) {
1464
- return /* @__PURE__ */ jsxs18(DropdownMenu, { children: [
1465
- /* @__PURE__ */ jsxs18(
1798
+ return /* @__PURE__ */ jsxs21(DropdownMenu, { children: [
1799
+ /* @__PURE__ */ jsxs21(
1466
1800
  DropdownMenuTrigger,
1467
1801
  {
1468
1802
  className: `${finalClasses} inline-flex items-center gap-1`,
1469
1803
  children: [
1470
1804
  tab.header,
1471
- /* @__PURE__ */ jsx34(ChevronDown, { className: "h-4 w-4 opacity-80" })
1805
+ /* @__PURE__ */ jsx38(ChevronDown, { className: "h-4 w-4 opacity-80" })
1472
1806
  ]
1473
1807
  }
1474
1808
  ),
1475
- /* @__PURE__ */ jsx34(
1809
+ /* @__PURE__ */ jsx38(
1476
1810
  DropdownMenuContent,
1477
1811
  {
1478
1812
  align: "start",
1479
1813
  sideOffset: 6,
1480
1814
  className: "z-50 min-w-[160px] rounded-md border border-gray-200 bg-white p-1 shadow-lg",
1481
- children: tab.children.map((item) => /* @__PURE__ */ jsx34(
1815
+ children: tab.children.map((item) => /* @__PURE__ */ jsx38(
1482
1816
  DropdownMenuItem,
1483
1817
  {
1484
1818
  asChild: true,
@@ -1491,19 +1825,19 @@ var Tabs = ({ tabs, className, style }) => {
1491
1825
  )
1492
1826
  ] }, index);
1493
1827
  }
1494
- return /* @__PURE__ */ jsx34("div", { className: finalClasses, style: { backgroundColor: "transparent", border: "none", ...tab.style }, role: "button", tabIndex: 0, children: tab.header }, index);
1828
+ return /* @__PURE__ */ jsx38("div", { className: finalClasses, style: { backgroundColor: "transparent", border: "none", ...tab.style }, role: "button", tabIndex: 0, children: tab.header }, index);
1495
1829
  }) });
1496
1830
  };
1497
1831
  var Tabs_default = Tabs;
1498
1832
 
1499
1833
  // src/components/Navigation/Stages/Stages.tsx
1500
- import React12 from "react";
1501
- import { jsx as jsx35, jsxs as jsxs19 } from "react/jsx-runtime";
1834
+ import React14 from "react";
1835
+ import { jsx as jsx39, jsxs as jsxs22 } from "react/jsx-runtime";
1502
1836
  var StagesComponent = ({ stages, isShowBtn, buttonText, className, style }) => {
1503
- return /* @__PURE__ */ jsx35("div", { className, style, children: /* @__PURE__ */ jsxs19("div", { className: "flex items-center justify-between bg-gray-50 p-2 rounded-lg border border-gray-200 w-full", children: [
1504
- /* @__PURE__ */ jsx35("div", { className: "flex items-center", children: /* @__PURE__ */ jsx35("button", { className: "p-2 hover:bg-gray-100 rounded", children: /* @__PURE__ */ jsx35("svg", { className: "w-4 h-4 text-gray-600", fill: "none", stroke: "currentColor", viewBox: "0 0 24 24", children: /* @__PURE__ */ jsx35("path", { strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: 2, d: "M19 9l-7 7-7-7" }) }) }) }),
1505
- /* @__PURE__ */ jsx35("div", { className: "flex items-center flex-1 px-2", children: stages.map((stage, index) => /* @__PURE__ */ jsxs19(React12.Fragment, { children: [
1506
- /* @__PURE__ */ jsx35(
1837
+ return /* @__PURE__ */ jsx39("div", { className, style, children: /* @__PURE__ */ jsxs22("div", { className: "flex items-center justify-between bg-gray-50 p-2 rounded-lg border border-gray-200 w-full", children: [
1838
+ /* @__PURE__ */ jsx39("div", { className: "flex items-center", children: /* @__PURE__ */ jsx39("button", { className: "p-2 hover:bg-gray-100 rounded", children: /* @__PURE__ */ jsx39("svg", { className: "w-4 h-4 text-gray-600", fill: "none", stroke: "currentColor", viewBox: "0 0 24 24", children: /* @__PURE__ */ jsx39("path", { strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: 2, d: "M19 9l-7 7-7-7" }) }) }) }),
1839
+ /* @__PURE__ */ jsx39("div", { className: "flex items-center flex-1 px-2", children: stages?.length > 0 && stages?.map((stage, index) => /* @__PURE__ */ jsxs22(React14.Fragment, { children: [
1840
+ /* @__PURE__ */ jsx39(
1507
1841
  "button",
1508
1842
  {
1509
1843
  className: `
@@ -1511,26 +1845,26 @@ var StagesComponent = ({ stages, isShowBtn, buttonText, className, style }) => {
1511
1845
  children: stage.header
1512
1846
  }
1513
1847
  ),
1514
- index < stages.length - 1 && /* @__PURE__ */ jsx35("div", { className: "flex-shrink-0 w-3 h-px bg-gray-300" })
1848
+ index < stages.length - 1 && /* @__PURE__ */ jsx39("div", { className: "flex-shrink-0 w-3 h-px bg-gray-300" })
1515
1849
  ] }, stage.id)) }),
1516
- isShowBtn && /* @__PURE__ */ jsx35("div", { className: "flex items-center", children: /* @__PURE__ */ jsx35("button", { className: "bg-[#034486] text-white px-6 py-2 rounded-lg text-sm font-medium transition-colors duration-200 shadow-sm", children: buttonText }) })
1850
+ isShowBtn && /* @__PURE__ */ jsx39("div", { className: "flex items-center", children: /* @__PURE__ */ jsx39("button", { className: "bg-[#034486] text-white px-6 py-2 rounded-lg text-sm font-medium transition-colors duration-200 shadow-sm", children: buttonText }) })
1517
1851
  ] }) });
1518
1852
  };
1519
1853
  var Stages_default = StagesComponent;
1520
1854
 
1521
1855
  // src/components/Navigation/Spacer/Spacer.tsx
1522
- import { jsx as jsx36 } from "react/jsx-runtime";
1856
+ import { jsx as jsx40 } from "react/jsx-runtime";
1523
1857
  var Spacer = ({ className, style }) => {
1524
- return /* @__PURE__ */ jsx36("div", { className: `${className}`, style });
1858
+ return /* @__PURE__ */ jsx40("div", { className: `${className}`, style });
1525
1859
  };
1526
1860
  var Spacer_default = Spacer;
1527
1861
 
1528
1862
  // src/components/Navigation/Profile/Profile.tsx
1529
- import { jsx as jsx37, jsxs as jsxs20 } from "react/jsx-runtime";
1863
+ import { jsx as jsx41, jsxs as jsxs23 } from "react/jsx-runtime";
1530
1864
  var Profile = ({ profileType, showName, userName, className, style }) => {
1531
- return /* @__PURE__ */ jsx37("div", { className, style, children: /* @__PURE__ */ jsxs20("div", { className: "flex gap-2 items-center justify-between w-30 cursor-pointer", children: [
1532
- showName && /* @__PURE__ */ jsx37("h4", { className: "text-[#000000] dark:text-[#fff] text-[13px] font-[500] mb-0", children: userName }),
1533
- profileType === "avatar" ? /* @__PURE__ */ jsx37(
1865
+ return /* @__PURE__ */ jsx41("div", { className, style, children: /* @__PURE__ */ jsxs23("div", { className: "flex gap-2 items-center justify-between w-30 cursor-pointer", children: [
1866
+ showName && /* @__PURE__ */ jsx41("h4", { className: "text-[#000000] dark:text-[#fff] text-[13px] font-[500] mb-0", children: userName }),
1867
+ profileType === "avatar" ? /* @__PURE__ */ jsx41(
1534
1868
  "img",
1535
1869
  {
1536
1870
  src: "https://builder.development.algorithmshift.ai/images/toolset/profile.svg",
@@ -1538,16 +1872,16 @@ var Profile = ({ profileType, showName, userName, className, style }) => {
1538
1872
  width: 24,
1539
1873
  height: 24
1540
1874
  }
1541
- ) : /* @__PURE__ */ jsx37("div", { className: "w-6 h-6 bg-[#12715b] rounded-full text-[#fff] text-center text-[11px] flex items-center justify-center", children: "A" })
1875
+ ) : /* @__PURE__ */ jsx41("div", { className: "w-6 h-6 bg-[#12715b] rounded-full text-[#fff] text-center text-[11px] flex items-center justify-center", children: "A" })
1542
1876
  ] }) });
1543
1877
  };
1544
1878
  var Profile_default = Profile;
1545
1879
 
1546
1880
  // src/components/Navigation/Notification/Notification.tsx
1547
- import { jsx as jsx38, jsxs as jsxs21 } from "react/jsx-runtime";
1548
- var Notification = ({ className, style, badgeType, badgeCount, hideBadgeWhenZero }) => {
1549
- return /* @__PURE__ */ jsx38("div", { className, style, children: /* @__PURE__ */ jsxs21("div", { className: "w-[34px] h-[34px] bg-[#E9E9E9] rounded-md text-center flex items-center justify-center relative", children: [
1550
- /* @__PURE__ */ jsx38(
1881
+ import { jsx as jsx42, jsxs as jsxs24 } from "react/jsx-runtime";
1882
+ var Notification = ({ className, style, badgeType, badgeCount = 0, hideBadgeWhenZero }) => {
1883
+ return /* @__PURE__ */ jsx42("div", { className, style, children: /* @__PURE__ */ jsxs24("div", { className: "w-[34px] h-[34px] bg-[#E9E9E9] rounded-md text-center flex items-center justify-center relative", children: [
1884
+ /* @__PURE__ */ jsx42(
1551
1885
  "img",
1552
1886
  {
1553
1887
  src: "https://builder.development.algorithmshift.ai/images/toolset/notification.svg",
@@ -1556,14 +1890,14 @@ var Notification = ({ className, style, badgeType, badgeCount, hideBadgeWhenZero
1556
1890
  height: 18
1557
1891
  }
1558
1892
  ),
1559
- badgeType === "number" && !(hideBadgeWhenZero && badgeCount === 0) && badgeCount > 0 ? /* @__PURE__ */ jsx38("span", { className: "text-[10px] text-[#fff] bg-[#FF4A4A] w-[20px] h-[20px] rounded-full absolute top-0 right-0 transform translate-x-1/2 -translate-y-1/2 leading-[20px]", children: badgeCount }) : /* @__PURE__ */ jsx38("span", { className: "bg-[#FF4A4A] w-[10px] h-[10px] rounded-full absolute top-0 right-0 transform translate-x-1/2 -translate-y-1/2 leading-[20px]" })
1893
+ badgeType === "number" && !(hideBadgeWhenZero && badgeCount === 0) && badgeCount > 0 ? /* @__PURE__ */ jsx42("span", { className: "text-[10px] text-[#fff] bg-[#FF4A4A] w-[20px] h-[20px] rounded-full absolute top-0 right-0 transform translate-x-1/2 -translate-y-1/2 leading-[20px]", children: badgeCount }) : /* @__PURE__ */ jsx42("span", { className: "bg-[#FF4A4A] w-[10px] h-[10px] rounded-full absolute top-0 right-0 transform translate-x-1/2 -translate-y-1/2 leading-[20px]" })
1560
1894
  ] }) });
1561
1895
  };
1562
1896
  var Notification_default = Notification;
1563
1897
 
1564
1898
  // src/components/Navigation/Logo/Logo.tsx
1565
- import { jsx as jsx39 } from "react/jsx-runtime";
1566
- var ImageControl = ({
1899
+ import { jsx as jsx43 } from "react/jsx-runtime";
1900
+ var ImageControl2 = ({
1567
1901
  className,
1568
1902
  style,
1569
1903
  imageUrl
@@ -1583,24 +1917,31 @@ var ImageControl = ({
1583
1917
  className: "opacity-50"
1584
1918
  };
1585
1919
  }
1586
- return /* @__PURE__ */ jsx39("div", { className, style, children: /* @__PURE__ */ jsx39("img", { src, alt: "Preview", sizes: "100vw", ...extraProps }) });
1920
+ return /* @__PURE__ */ jsx43("div", { className, style, children: /* @__PURE__ */ jsx43("img", { src, alt: "Preview", sizes: "100vw", ...extraProps }) });
1587
1921
  };
1588
- var Logo_default = ImageControl;
1922
+ var Logo_default = ImageControl2;
1589
1923
  export {
1590
1924
  Button,
1591
1925
  CheckboxInput,
1592
- DateRange,
1926
+ DatePicker,
1927
+ DateRange_default as DateRange,
1593
1928
  Dropdown,
1594
1929
  EmailInput,
1930
+ FileInput,
1595
1931
  Flex_default as FlexLayout,
1596
1932
  Grid_default as GridLayout,
1933
+ Image_default as Image,
1597
1934
  Logo_default as Logo,
1598
1935
  MultiCheckbox,
1599
1936
  Notification_default as Notification,
1937
+ NumberInput,
1600
1938
  PasswordInput,
1601
1939
  PhoneInput,
1602
1940
  Profile_default as Profile,
1603
1941
  RadioInput,
1942
+ RichText,
1943
+ SearchInput,
1944
+ Shape_default as Shape,
1604
1945
  Spacer_default as Spacer,
1605
1946
  Stages_default as Stages,
1606
1947
  SwitchToggle,
@@ -1619,6 +1960,8 @@ lucide-react/dist/esm/shared/src/utils.js:
1619
1960
  lucide-react/dist/esm/defaultAttributes.js:
1620
1961
  lucide-react/dist/esm/Icon.js:
1621
1962
  lucide-react/dist/esm/createLucideIcon.js:
1963
+ lucide-react/dist/esm/icons/calculator.js:
1964
+ lucide-react/dist/esm/icons/calendar.js:
1622
1965
  lucide-react/dist/esm/icons/check.js:
1623
1966
  lucide-react/dist/esm/icons/chevron-down.js:
1624
1967
  lucide-react/dist/esm/icons/chevron-left.js:
@@ -1627,6 +1970,7 @@ lucide-react/dist/esm/icons/chevron-up.js:
1627
1970
  lucide-react/dist/esm/icons/circle.js:
1628
1971
  lucide-react/dist/esm/icons/mail.js:
1629
1972
  lucide-react/dist/esm/icons/scan-eye.js:
1973
+ lucide-react/dist/esm/icons/search.js:
1630
1974
  lucide-react/dist/esm/lucide-react.js:
1631
1975
  (**
1632
1976
  * @license lucide-react v0.542.0 - ISC