@algorithm-shift/design-system 1.2.4 → 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
@@ -78,17 +78,85 @@ var Grid_default = Grid;
78
78
 
79
79
  // src/components/Basic/Typography/Typography.tsx
80
80
  import React from "react";
81
+ var Typography = ({
82
+ className,
83
+ style,
84
+ tagName,
85
+ textContent
86
+ }) => {
87
+ const Tag = tagName || "h1";
88
+ return React.createElement(
89
+ Tag,
90
+ {
91
+ style,
92
+ className: cn(className, "pointer-events-auto")
93
+ },
94
+ [
95
+ React.createElement("span", {
96
+ key: "html",
97
+ className: "pointer-events-none",
98
+ dangerouslySetInnerHTML: { __html: textContent }
99
+ })
100
+ ]
101
+ );
102
+ };
103
+ var Typography_default = Typography;
81
104
 
82
105
  // src/components/Basic/Shape/Shape.tsx
83
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;
84
152
 
85
153
  // src/components/Inputs/TextInput/TextInput.tsx
86
154
  import * as React2 from "react";
87
155
 
88
156
  // src/components/ui/input.tsx
89
- import { jsx as jsx5 } from "react/jsx-runtime";
157
+ import { jsx as jsx6 } from "react/jsx-runtime";
90
158
  function Input({ className, type, ...props }) {
91
- return /* @__PURE__ */ jsx5(
159
+ return /* @__PURE__ */ jsx6(
92
160
  "input",
93
161
  {
94
162
  type,
@@ -105,7 +173,7 @@ function Input({ className, type, ...props }) {
105
173
  }
106
174
 
107
175
  // src/components/Inputs/TextInput/TextInput.tsx
108
- import { Fragment, jsx as jsx6, jsxs } from "react/jsx-runtime";
176
+ import { Fragment, jsx as jsx7, jsxs } from "react/jsx-runtime";
109
177
  var TextInput = ({ className, style, ...props }) => {
110
178
  const placeholder = props.placeholder || "Placeholder text";
111
179
  const regexPattern = props.regexPattern ?? "";
@@ -131,7 +199,7 @@ var TextInput = ({ className, style, ...props }) => {
131
199
  }
132
200
  };
133
201
  return /* @__PURE__ */ jsxs(Fragment, { children: [
134
- /* @__PURE__ */ jsx6(
202
+ /* @__PURE__ */ jsx7(
135
203
  Input,
136
204
  {
137
205
  type: "text",
@@ -148,11 +216,11 @@ var TextInput = ({ className, style, ...props }) => {
148
216
  pattern: regexPattern || void 0
149
217
  }
150
218
  ),
151
- 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 })
152
220
  ] });
153
221
  };
154
222
 
155
- // src/components/Inputs/EmailInput/EmailInput.tsx
223
+ // src/components/Inputs/NumberInput/NumberInput.tsx
156
224
  import * as React3 from "react";
157
225
 
158
226
  // node_modules/lucide-react/dist/esm/createLucideIcon.js
@@ -244,39 +312,63 @@ var createLucideIcon = (iconName, iconNode) => {
244
312
  return Component;
245
313
  };
246
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
+
247
339
  // node_modules/lucide-react/dist/esm/icons/check.js
248
- var __iconNode = [["path", { d: "M20 6 9 17l-5-5", key: "1gmf2c" }]];
249
- var Check = createLucideIcon("check", __iconNode);
340
+ var __iconNode3 = [["path", { d: "M20 6 9 17l-5-5", key: "1gmf2c" }]];
341
+ var Check = createLucideIcon("check", __iconNode3);
250
342
 
251
343
  // node_modules/lucide-react/dist/esm/icons/chevron-down.js
252
- var __iconNode2 = [["path", { d: "m6 9 6 6 6-6", key: "qrunsl" }]];
253
- 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);
254
346
 
255
347
  // node_modules/lucide-react/dist/esm/icons/chevron-left.js
256
- var __iconNode3 = [["path", { d: "m15 18-6-6 6-6", key: "1wnfg3" }]];
257
- 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);
258
350
 
259
351
  // node_modules/lucide-react/dist/esm/icons/chevron-right.js
260
- var __iconNode4 = [["path", { d: "m9 18 6-6-6-6", key: "mthhwq" }]];
261
- 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);
262
354
 
263
355
  // node_modules/lucide-react/dist/esm/icons/chevron-up.js
264
- var __iconNode5 = [["path", { d: "m18 15-6-6-6 6", key: "153udz" }]];
265
- 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);
266
358
 
267
359
  // node_modules/lucide-react/dist/esm/icons/circle.js
268
- var __iconNode6 = [["circle", { cx: "12", cy: "12", r: "10", key: "1mglay" }]];
269
- var Circle = createLucideIcon("circle", __iconNode6);
360
+ var __iconNode8 = [["circle", { cx: "12", cy: "12", r: "10", key: "1mglay" }]];
361
+ var Circle = createLucideIcon("circle", __iconNode8);
270
362
 
271
363
  // node_modules/lucide-react/dist/esm/icons/mail.js
272
- var __iconNode7 = [
364
+ var __iconNode9 = [
273
365
  ["path", { d: "m22 7-8.991 5.727a2 2 0 0 1-2.009 0L2 7", key: "132q7q" }],
274
366
  ["rect", { x: "2", y: "4", width: "20", height: "16", rx: "2", key: "izxlao" }]
275
367
  ];
276
- var Mail = createLucideIcon("mail", __iconNode7);
368
+ var Mail = createLucideIcon("mail", __iconNode9);
277
369
 
278
370
  // node_modules/lucide-react/dist/esm/icons/scan-eye.js
279
- var __iconNode8 = [
371
+ var __iconNode10 = [
280
372
  ["path", { d: "M3 7V5a2 2 0 0 1 2-2h2", key: "aa7l1z" }],
281
373
  ["path", { d: "M17 3h2a2 2 0 0 1 2 2v2", key: "4qcy5o" }],
282
374
  ["path", { d: "M21 17v2a2 2 0 0 1-2 2h-2", key: "6vwrx8" }],
@@ -290,11 +382,18 @@ var __iconNode8 = [
290
382
  }
291
383
  ]
292
384
  ];
293
- var ScanEye = createLucideIcon("scan-eye", __iconNode8);
385
+ var ScanEye = createLucideIcon("scan-eye", __iconNode10);
294
386
 
295
- // src/components/Inputs/EmailInput/EmailInput.tsx
296
- import { Fragment as Fragment2, jsx as jsx7, jsxs as jsxs2 } from "react/jsx-runtime";
297
- 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 }) => {
298
397
  const placeholder = props.placeholder ?? "Placeholder text";
299
398
  const regexPattern = props.regexPattern ?? "";
300
399
  const errorMessage = props.errorMessage ?? "Required";
@@ -320,11 +419,12 @@ var EmailInput = ({ className, style, ...props }) => {
320
419
  };
321
420
  return /* @__PURE__ */ jsxs2(Fragment2, { children: [
322
421
  /* @__PURE__ */ jsxs2("div", { className: "flex justify-start items-center relative", children: [
323
- /* @__PURE__ */ jsx7(Mail, { className: "absolute left-3 top-1/2 h-4 w-4 -translate-y-1/2 text-[#BDBDBD]" }),
324
- /* @__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(
325
424
  Input,
326
425
  {
327
- type: "email",
426
+ type: "number",
427
+ id: "number-field",
328
428
  value,
329
429
  className,
330
430
  style,
@@ -339,14 +439,14 @@ var EmailInput = ({ className, style, ...props }) => {
339
439
  }
340
440
  )
341
441
  ] }),
342
- 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 })
343
443
  ] });
344
444
  };
345
445
 
346
- // src/components/Inputs/PasswordInput/PasswordInput.tsx
446
+ // src/components/Inputs/EmailInput/EmailInput.tsx
347
447
  import * as React4 from "react";
348
- import { Fragment as Fragment3, jsx as jsx8, jsxs as jsxs3 } from "react/jsx-runtime";
349
- 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 }) => {
350
450
  const placeholder = props.placeholder ?? "Placeholder text";
351
451
  const regexPattern = props.regexPattern ?? "";
352
452
  const errorMessage = props.errorMessage ?? "Required";
@@ -372,8 +472,60 @@ var PasswordInput = ({ className, style, ...props }) => {
372
472
  };
373
473
  return /* @__PURE__ */ jsxs3(Fragment3, { children: [
374
474
  /* @__PURE__ */ jsxs3("div", { className: "flex justify-start items-center relative", children: [
375
- /* @__PURE__ */ jsx8(ScanEye, { className: "absolute left-3 top-1/2 h-4 w-4 -translate-y-1/2 text-[#BDBDBD]" }),
376
- /* @__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(
377
529
  Input,
378
530
  {
379
531
  type: "password",
@@ -392,17 +544,17 @@ var PasswordInput = ({ className, style, ...props }) => {
392
544
  }
393
545
  )
394
546
  ] }),
395
- 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 })
396
548
  ] });
397
549
  };
398
550
 
399
551
  // src/components/Inputs/Textarea/Textarea.tsx
400
- import * as React5 from "react";
552
+ import * as React6 from "react";
401
553
 
402
554
  // src/components/ui/textarea.tsx
403
- import { jsx as jsx9 } from "react/jsx-runtime";
555
+ import { jsx as jsx11 } from "react/jsx-runtime";
404
556
  function Textarea({ className, ...props }) {
405
- return /* @__PURE__ */ jsx9(
557
+ return /* @__PURE__ */ jsx11(
406
558
  "textarea",
407
559
  {
408
560
  "data-slot": "textarea",
@@ -416,7 +568,7 @@ function Textarea({ className, ...props }) {
416
568
  }
417
569
 
418
570
  // src/components/Inputs/Textarea/Textarea.tsx
419
- 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";
420
572
  var Textarea2 = ({ className, style, ...props }) => {
421
573
  const placeholder = props.placeholder ?? "Placeholder text";
422
574
  const regexPattern = props.regexPattern ?? "";
@@ -427,8 +579,8 @@ var Textarea2 = ({ className, style, ...props }) => {
427
579
  const isDisabled = props.isDisabled ?? false;
428
580
  const isReadonly = props.isReadonly ?? false;
429
581
  const isAutocomplete = props.isAutocomplete ?? false;
430
- const [value, setValue] = React5.useState("");
431
- const [error, setError] = React5.useState(null);
582
+ const [value, setValue] = React6.useState("");
583
+ const [error, setError] = React6.useState(null);
432
584
  const handleChange = (e) => {
433
585
  const val = e.target.value;
434
586
  if (val.length > noOfCharacters) return;
@@ -441,8 +593,8 @@ var Textarea2 = ({ className, style, ...props }) => {
441
593
  setError(null);
442
594
  }
443
595
  };
444
- return /* @__PURE__ */ jsxs4(Fragment4, { children: [
445
- /* @__PURE__ */ jsx10(
596
+ return /* @__PURE__ */ jsxs5(Fragment5, { children: [
597
+ /* @__PURE__ */ jsx12(
446
598
  Textarea,
447
599
  {
448
600
  id: "textarea-field",
@@ -458,13 +610,13 @@ var Textarea2 = ({ className, style, ...props }) => {
458
610
  maxLength: noOfCharacters
459
611
  }
460
612
  ),
461
- 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 })
462
614
  ] });
463
615
  };
464
616
 
465
617
  // src/components/Inputs/UrlInput/UrlInput.tsx
466
- import * as React6 from "react";
467
- 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";
468
620
  var UrlInput = ({ className, style, ...props }) => {
469
621
  const placeholder = props.placeholder ?? "Placeholder text";
470
622
  const regexPattern = props.regexPattern ?? "";
@@ -475,8 +627,8 @@ var UrlInput = ({ className, style, ...props }) => {
475
627
  const isDisabled = props.isDisabled ?? false;
476
628
  const isReadonly = props.isReadonly ?? false;
477
629
  const isAutocomplete = props.isAutocomplete ?? false;
478
- const [value, setValue] = React6.useState("");
479
- const [error, setError] = React6.useState(null);
630
+ const [value, setValue] = React7.useState("");
631
+ const [error, setError] = React7.useState(null);
480
632
  const handleChange = (e) => {
481
633
  const val = e.target.value;
482
634
  if (val.length > noOfCharacters) return;
@@ -489,10 +641,10 @@ var UrlInput = ({ className, style, ...props }) => {
489
641
  setError(null);
490
642
  }
491
643
  };
492
- return /* @__PURE__ */ jsxs5(Fragment5, { children: [
493
- /* @__PURE__ */ jsxs5("div", { className: "flex justify-start items-center relative", children: [
494
- /* @__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://" }),
495
- /* @__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(
496
648
  Input,
497
649
  {
498
650
  type: "url",
@@ -511,18 +663,18 @@ var UrlInput = ({ className, style, ...props }) => {
511
663
  }
512
664
  )
513
665
  ] }),
514
- 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 })
515
667
  ] });
516
668
  };
517
669
 
518
670
  // src/components/ui/checkbox.tsx
519
671
  import * as CheckboxPrimitive from "@radix-ui/react-checkbox";
520
- import { jsx as jsx12 } from "react/jsx-runtime";
672
+ import { jsx as jsx14 } from "react/jsx-runtime";
521
673
  function Checkbox({
522
674
  className,
523
675
  ...props
524
676
  }) {
525
- return /* @__PURE__ */ jsx12(
677
+ return /* @__PURE__ */ jsx14(
526
678
  CheckboxPrimitive.Root,
527
679
  {
528
680
  "data-slot": "checkbox",
@@ -531,12 +683,12 @@ function Checkbox({
531
683
  className
532
684
  ),
533
685
  ...props,
534
- children: /* @__PURE__ */ jsx12(
686
+ children: /* @__PURE__ */ jsx14(
535
687
  CheckboxPrimitive.Indicator,
536
688
  {
537
689
  "data-slot": "checkbox-indicator",
538
690
  className: "flex items-center justify-center text-current transition-none",
539
- children: /* @__PURE__ */ jsx12(Check, { className: "size-3.5" })
691
+ children: /* @__PURE__ */ jsx14(Check, { className: "size-3.5" })
540
692
  }
541
693
  )
542
694
  }
@@ -545,12 +697,12 @@ function Checkbox({
545
697
 
546
698
  // src/components/ui/label.tsx
547
699
  import * as LabelPrimitive from "@radix-ui/react-label";
548
- import { jsx as jsx13 } from "react/jsx-runtime";
700
+ import { jsx as jsx15 } from "react/jsx-runtime";
549
701
  function Label({
550
702
  className,
551
703
  ...props
552
704
  }) {
553
- return /* @__PURE__ */ jsx13(
705
+ return /* @__PURE__ */ jsx15(
554
706
  LabelPrimitive.Root,
555
707
  {
556
708
  "data-slot": "label",
@@ -564,23 +716,23 @@ function Label({
564
716
  }
565
717
 
566
718
  // src/components/Inputs/Checkbox/Checkbox.tsx
567
- import { jsx as jsx14, jsxs as jsxs6 } from "react/jsx-runtime";
719
+ import { jsx as jsx16, jsxs as jsxs7 } from "react/jsx-runtime";
568
720
  var CheckboxInput = ({ className, style, ...props }) => {
569
721
  const text = props.text ? props.text : "Subscribe";
570
- return /* @__PURE__ */ jsx14("div", { className, style, children: /* @__PURE__ */ jsxs6("div", { className: "flex items-center space-x-2", children: [
571
- /* @__PURE__ */ jsx14(Checkbox, { id: "newsletter" }),
572
- /* @__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 })
573
725
  ] }) });
574
726
  };
575
727
 
576
728
  // src/components/ui/radio-group.tsx
577
729
  import * as RadioGroupPrimitive from "@radix-ui/react-radio-group";
578
- import { jsx as jsx15 } from "react/jsx-runtime";
730
+ import { jsx as jsx17 } from "react/jsx-runtime";
579
731
  function RadioGroup({
580
732
  className,
581
733
  ...props
582
734
  }) {
583
- return /* @__PURE__ */ jsx15(
735
+ return /* @__PURE__ */ jsx17(
584
736
  RadioGroupPrimitive.Root,
585
737
  {
586
738
  "data-slot": "radio-group",
@@ -593,7 +745,7 @@ function RadioGroupItem({
593
745
  className,
594
746
  ...props
595
747
  }) {
596
- return /* @__PURE__ */ jsx15(
748
+ return /* @__PURE__ */ jsx17(
597
749
  RadioGroupPrimitive.Item,
598
750
  {
599
751
  "data-slot": "radio-group-item",
@@ -602,12 +754,12 @@ function RadioGroupItem({
602
754
  className
603
755
  ),
604
756
  ...props,
605
- children: /* @__PURE__ */ jsx15(
757
+ children: /* @__PURE__ */ jsx17(
606
758
  RadioGroupPrimitive.Indicator,
607
759
  {
608
760
  "data-slot": "radio-group-indicator",
609
761
  className: "relative flex items-center justify-center",
610
- 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" })
611
763
  }
612
764
  )
613
765
  }
@@ -615,48 +767,117 @@ function RadioGroupItem({
615
767
  }
616
768
 
617
769
  // src/components/Inputs/RadioInput/RadioInput.tsx
618
- import { jsx as jsx16, jsxs as jsxs7 } from "react/jsx-runtime";
770
+ import { jsx as jsx18, jsxs as jsxs8 } from "react/jsx-runtime";
619
771
  var RadioInput = ({ className, style, ...props }) => {
620
772
  const text = Array.isArray(props.text) ? props.text : [props.text ?? "Subscribe"];
621
- 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: [
622
- /* @__PURE__ */ jsx16(RadioGroupItem, { value: item, id: `r${index}` }),
623
- /* @__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 })
624
776
  ] }, index)) }) });
625
777
  };
626
778
 
627
779
  // src/components/Inputs/MultiCheckbox/MultiCheckbox.tsx
628
- import { jsx as jsx17, jsxs as jsxs8 } from "react/jsx-runtime";
780
+ import { jsx as jsx19, jsxs as jsxs9 } from "react/jsx-runtime";
629
781
  var MultiCheckbox = ({ className, style, ...props }) => {
630
782
  const text = Array.isArray(props.text) ? props.text : [props.text ?? "Subscribe"];
631
- 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: [
632
- /* @__PURE__ */ jsx17(Checkbox, { id: `newsletter-${index}` }),
633
- /* @__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 })
634
786
  ] }, index)) }) });
635
787
  };
636
788
 
637
789
  // src/components/Global/TinyMceEditor.tsx
638
790
  import { useMemo, useRef } from "react";
639
791
  import { Editor } from "@tinymce/tinymce-react";
640
- 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
+ }
641
859
 
642
860
  // src/components/Inputs/RichText/RichText.tsx
643
- 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
+ }
644
865
 
645
866
  // src/components/Inputs/Dropdown/Dropdown.tsx
646
- import * as React7 from "react";
867
+ import * as React8 from "react";
647
868
 
648
869
  // src/components/ui/select.tsx
649
870
  import * as SelectPrimitive from "@radix-ui/react-select";
650
- import { jsx as jsx20, jsxs as jsxs9 } from "react/jsx-runtime";
871
+ import { jsx as jsx22, jsxs as jsxs10 } from "react/jsx-runtime";
651
872
  function Select({
652
873
  ...props
653
874
  }) {
654
- return /* @__PURE__ */ jsx20(SelectPrimitive.Root, { "data-slot": "select", ...props });
875
+ return /* @__PURE__ */ jsx22(SelectPrimitive.Root, { "data-slot": "select", ...props });
655
876
  }
656
877
  function SelectValue({
657
878
  ...props
658
879
  }) {
659
- return /* @__PURE__ */ jsx20(SelectPrimitive.Value, { "data-slot": "select-value", ...props });
880
+ return /* @__PURE__ */ jsx22(SelectPrimitive.Value, { "data-slot": "select-value", ...props });
660
881
  }
661
882
  function SelectTrigger({
662
883
  className,
@@ -664,7 +885,7 @@ function SelectTrigger({
664
885
  children,
665
886
  ...props
666
887
  }) {
667
- return /* @__PURE__ */ jsxs9(
888
+ return /* @__PURE__ */ jsxs10(
668
889
  SelectPrimitive.Trigger,
669
890
  {
670
891
  "data-slot": "select-trigger",
@@ -676,7 +897,7 @@ function SelectTrigger({
676
897
  ...props,
677
898
  children: [
678
899
  children,
679
- /* @__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" }) })
680
901
  ]
681
902
  }
682
903
  );
@@ -687,7 +908,7 @@ function SelectContent({
687
908
  position = "popper",
688
909
  ...props
689
910
  }) {
690
- return /* @__PURE__ */ jsx20(SelectPrimitive.Portal, { children: /* @__PURE__ */ jsxs9(
911
+ return /* @__PURE__ */ jsx22(SelectPrimitive.Portal, { children: /* @__PURE__ */ jsxs10(
691
912
  SelectPrimitive.Content,
692
913
  {
693
914
  "data-slot": "select-content",
@@ -699,8 +920,8 @@ function SelectContent({
699
920
  position,
700
921
  ...props,
701
922
  children: [
702
- /* @__PURE__ */ jsx20(SelectScrollUpButton, {}),
703
- /* @__PURE__ */ jsx20(
923
+ /* @__PURE__ */ jsx22(SelectScrollUpButton, {}),
924
+ /* @__PURE__ */ jsx22(
704
925
  SelectPrimitive.Viewport,
705
926
  {
706
927
  className: cn(
@@ -710,7 +931,7 @@ function SelectContent({
710
931
  children
711
932
  }
712
933
  ),
713
- /* @__PURE__ */ jsx20(SelectScrollDownButton, {})
934
+ /* @__PURE__ */ jsx22(SelectScrollDownButton, {})
714
935
  ]
715
936
  }
716
937
  ) });
@@ -720,7 +941,7 @@ function SelectItem({
720
941
  children,
721
942
  ...props
722
943
  }) {
723
- return /* @__PURE__ */ jsxs9(
944
+ return /* @__PURE__ */ jsxs10(
724
945
  SelectPrimitive.Item,
725
946
  {
726
947
  "data-slot": "select-item",
@@ -730,8 +951,8 @@ function SelectItem({
730
951
  ),
731
952
  ...props,
732
953
  children: [
733
- /* @__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" }) }) }),
734
- /* @__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 })
735
956
  ]
736
957
  }
737
958
  );
@@ -740,7 +961,7 @@ function SelectScrollUpButton({
740
961
  className,
741
962
  ...props
742
963
  }) {
743
- return /* @__PURE__ */ jsx20(
964
+ return /* @__PURE__ */ jsx22(
744
965
  SelectPrimitive.ScrollUpButton,
745
966
  {
746
967
  "data-slot": "select-scroll-up-button",
@@ -749,7 +970,7 @@ function SelectScrollUpButton({
749
970
  className
750
971
  ),
751
972
  ...props,
752
- children: /* @__PURE__ */ jsx20(ChevronUp, { className: "size-4" })
973
+ children: /* @__PURE__ */ jsx22(ChevronUp, { className: "size-4" })
753
974
  }
754
975
  );
755
976
  }
@@ -757,7 +978,7 @@ function SelectScrollDownButton({
757
978
  className,
758
979
  ...props
759
980
  }) {
760
- return /* @__PURE__ */ jsx20(
981
+ return /* @__PURE__ */ jsx22(
761
982
  SelectPrimitive.ScrollDownButton,
762
983
  {
763
984
  "data-slot": "select-scroll-down-button",
@@ -766,13 +987,13 @@ function SelectScrollDownButton({
766
987
  className
767
988
  ),
768
989
  ...props,
769
- children: /* @__PURE__ */ jsx20(ChevronDown, { className: "size-4" })
990
+ children: /* @__PURE__ */ jsx22(ChevronDown, { className: "size-4" })
770
991
  }
771
992
  );
772
993
  }
773
994
 
774
995
  // src/components/Global/SelectDropdown.tsx
775
- import { jsx as jsx21, jsxs as jsxs10 } from "react/jsx-runtime";
996
+ import { jsx as jsx23, jsxs as jsxs11 } from "react/jsx-runtime";
776
997
  function SelectDropdown({
777
998
  options,
778
999
  placeholder = "Select an option",
@@ -784,23 +1005,23 @@ function SelectDropdown({
784
1005
  readOnly,
785
1006
  style
786
1007
  }) {
787
- return /* @__PURE__ */ jsxs10(Select, { value, onValueChange: onChange, disabled, children: [
788
- /* @__PURE__ */ jsx21(
1008
+ return /* @__PURE__ */ jsxs11(Select, { value, onValueChange: onChange, disabled, children: [
1009
+ /* @__PURE__ */ jsx23(
789
1010
  SelectTrigger,
790
1011
  {
791
1012
  id,
792
1013
  className,
793
1014
  style: style ?? {},
794
1015
  "aria-readonly": readOnly,
795
- children: /* @__PURE__ */ jsx21(SelectValue, { placeholder })
1016
+ children: /* @__PURE__ */ jsx23(SelectValue, { placeholder })
796
1017
  }
797
1018
  ),
798
- /* @__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)) })
799
1020
  ] });
800
1021
  }
801
1022
 
802
1023
  // src/components/Inputs/Dropdown/Dropdown.tsx
803
- 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";
804
1025
  var Dropdown = ({ className, style, ...props }) => {
805
1026
  const text = Array.isArray(props.text) ? props.text : [props.text ?? "Default"];
806
1027
  const placeholder = props.placeholder ? props.placeholder : "Placeholder text";
@@ -815,8 +1036,8 @@ var Dropdown = ({ className, style, ...props }) => {
815
1036
  const isDisabled = props.isDisabled ?? false;
816
1037
  const isReadonly = props.isReadonly ?? false;
817
1038
  const isAutocomplete = props.isAutocomplete ?? false;
818
- const [value, setValue] = React7.useState("");
819
- const [error, setError] = React7.useState(null);
1039
+ const [value, setValue] = React8.useState("");
1040
+ const [error, setError] = React8.useState(null);
820
1041
  const handleChange = (val) => {
821
1042
  setValue(val);
822
1043
  if (isRequired && val.trim() === "") {
@@ -827,8 +1048,8 @@ var Dropdown = ({ className, style, ...props }) => {
827
1048
  setError(null);
828
1049
  }
829
1050
  };
830
- return /* @__PURE__ */ jsxs11(Fragment6, { children: [
831
- /* @__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(
832
1053
  SelectDropdown,
833
1054
  {
834
1055
  options: formatList,
@@ -845,18 +1066,18 @@ var Dropdown = ({ className, style, ...props }) => {
845
1066
  pattern: regexPattern || void 0
846
1067
  }
847
1068
  ) }),
848
- 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 })
849
1070
  ] });
850
1071
  };
851
1072
 
852
1073
  // src/components/ui/switch.tsx
853
1074
  import * as SwitchPrimitive from "@radix-ui/react-switch";
854
- import { jsx as jsx23 } from "react/jsx-runtime";
1075
+ import { jsx as jsx25 } from "react/jsx-runtime";
855
1076
  function Switch({
856
1077
  className,
857
1078
  ...props
858
1079
  }) {
859
- return /* @__PURE__ */ jsx23(
1080
+ return /* @__PURE__ */ jsx25(
860
1081
  SwitchPrimitive.Root,
861
1082
  {
862
1083
  "data-slot": "switch",
@@ -865,7 +1086,7 @@ function Switch({
865
1086
  className
866
1087
  ),
867
1088
  ...props,
868
- children: /* @__PURE__ */ jsx23(
1089
+ children: /* @__PURE__ */ jsx25(
869
1090
  SwitchPrimitive.Thumb,
870
1091
  {
871
1092
  "data-slot": "switch-thumb",
@@ -879,30 +1100,30 @@ function Switch({
879
1100
  }
880
1101
 
881
1102
  // src/components/Inputs/SwitchToggle/SwitchToggle.tsx
882
- import { jsx as jsx24, jsxs as jsxs12 } from "react/jsx-runtime";
1103
+ import { jsx as jsx26, jsxs as jsxs13 } from "react/jsx-runtime";
883
1104
  var SwitchToggle = ({ className, style, ...props }) => {
884
1105
  const text = Array.isArray(props.text) ? props.text : [props.text ?? "Subscribe"];
885
- return /* @__PURE__ */ jsx24("div", { className, style, children: text?.map((item, index) => /* @__PURE__ */ jsxs12("div", { className: "flex items-center space-x-2 mb-2", children: [
886
- /* @__PURE__ */ jsx24(Switch, { id: `switch-${index}` }),
887
- /* @__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 })
888
1109
  ] }, index)) });
889
1110
  };
890
1111
 
891
1112
  // src/components/Inputs/PhoneInput/PhoneInput.tsx
892
- import * as React8 from "react";
1113
+ import * as React9 from "react";
893
1114
  import { PhoneInput as PhoneInputField } from "react-international-phone";
894
1115
  import "react-international-phone/style.css";
895
- 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";
896
1117
  var PhoneInput = ({ className, style, ...props }) => {
897
1118
  const placeholder = props.placeholder ?? "Enter phone number";
898
- const [value, setValue] = React8.useState("");
1119
+ const [value, setValue] = React9.useState("");
899
1120
  const regexPattern = props.regexPattern ?? "";
900
1121
  const errorMessage = props.errorMessage ?? "Required";
901
1122
  const noOfCharacters = props.noOfCharacters ?? 100;
902
1123
  const isRequired = props.isRequired ?? false;
903
1124
  const isEditable = props.isEditable ?? true;
904
1125
  const isDisabled = props.isDisabled ?? false;
905
- const [error, setError] = React8.useState(null);
1126
+ const [error, setError] = React9.useState(null);
906
1127
  const handleChange = (val) => {
907
1128
  if (val.length > noOfCharacters) return;
908
1129
  setValue(val);
@@ -914,8 +1135,8 @@ var PhoneInput = ({ className, style, ...props }) => {
914
1135
  setError(null);
915
1136
  }
916
1137
  };
917
- return /* @__PURE__ */ jsxs13(Fragment7, { children: [
918
- /* @__PURE__ */ jsx25(
1138
+ return /* @__PURE__ */ jsxs14(Fragment8, { children: [
1139
+ /* @__PURE__ */ jsx27(
919
1140
  PhoneInputField,
920
1141
  {
921
1142
  defaultCountry: "in",
@@ -932,23 +1153,158 @@ var PhoneInput = ({ className, style, ...props }) => {
932
1153
  style
933
1154
  }
934
1155
  ),
935
- 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
+ )
936
1230
  ] });
937
1231
  };
938
1232
 
939
1233
  // src/components/Inputs/DatePicker/DatePicker.tsx
940
- import React9 from "react";
941
- 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
+ }
942
1298
 
943
1299
  // src/components/Inputs/DateRange/DateRange.tsx
944
- import * as React11 from "react";
1300
+ import * as React13 from "react";
945
1301
  import { addDays, format } from "date-fns";
946
1302
 
947
1303
  // src/components/ui/calendar.tsx
948
- import * as React10 from "react";
1304
+ import * as React12 from "react";
949
1305
  import { DayPicker, getDefaultClassNames } from "react-day-picker";
950
- import { jsx as jsx27 } from "react/jsx-runtime";
951
- function Calendar({
1306
+ import { jsx as jsx31 } from "react/jsx-runtime";
1307
+ function Calendar2({
952
1308
  className,
953
1309
  classNames,
954
1310
  showOutsideDays = true,
@@ -959,7 +1315,7 @@ function Calendar({
959
1315
  ...props
960
1316
  }) {
961
1317
  const defaultClassNames = getDefaultClassNames();
962
- return /* @__PURE__ */ jsx27(
1318
+ return /* @__PURE__ */ jsx31(
963
1319
  DayPicker,
964
1320
  {
965
1321
  showOutsideDays,
@@ -1058,7 +1414,7 @@ function Calendar({
1058
1414
  },
1059
1415
  components: {
1060
1416
  Root: ({ className: className2, rootRef, ...props2 }) => {
1061
- return /* @__PURE__ */ jsx27(
1417
+ return /* @__PURE__ */ jsx31(
1062
1418
  "div",
1063
1419
  {
1064
1420
  "data-slot": "calendar",
@@ -1070,10 +1426,10 @@ function Calendar({
1070
1426
  },
1071
1427
  Chevron: ({ className: className2, orientation, ...props2 }) => {
1072
1428
  if (orientation === "left") {
1073
- return /* @__PURE__ */ jsx27(ChevronLeft, { className: cn("size-4", className2), ...props2 });
1429
+ return /* @__PURE__ */ jsx31(ChevronLeft, { className: cn("size-4", className2), ...props2 });
1074
1430
  }
1075
1431
  if (orientation === "right") {
1076
- return /* @__PURE__ */ jsx27(
1432
+ return /* @__PURE__ */ jsx31(
1077
1433
  ChevronRight,
1078
1434
  {
1079
1435
  className: cn("size-4", className2),
@@ -1081,11 +1437,11 @@ function Calendar({
1081
1437
  }
1082
1438
  );
1083
1439
  }
1084
- return /* @__PURE__ */ jsx27(ChevronDown, { className: cn("size-4", className2), ...props2 });
1440
+ return /* @__PURE__ */ jsx31(ChevronDown, { className: cn("size-4", className2), ...props2 });
1085
1441
  },
1086
1442
  DayButton: CalendarDayButton,
1087
1443
  WeekNumber: ({ children, ...props2 }) => {
1088
- 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 }) });
1089
1445
  },
1090
1446
  ...components
1091
1447
  },
@@ -1100,11 +1456,11 @@ function CalendarDayButton({
1100
1456
  ...props
1101
1457
  }) {
1102
1458
  const defaultClassNames = getDefaultClassNames();
1103
- const ref = React10.useRef(null);
1104
- React10.useEffect(() => {
1459
+ const ref = React12.useRef(null);
1460
+ React12.useEffect(() => {
1105
1461
  if (modifiers.focused) ref.current?.focus();
1106
1462
  }, [modifiers.focused]);
1107
- return /* @__PURE__ */ jsx27(
1463
+ return /* @__PURE__ */ jsx31(
1108
1464
  Button,
1109
1465
  {
1110
1466
  ref,
@@ -1127,16 +1483,16 @@ function CalendarDayButton({
1127
1483
 
1128
1484
  // src/components/ui/popover.tsx
1129
1485
  import * as PopoverPrimitive from "@radix-ui/react-popover";
1130
- import { jsx as jsx28 } from "react/jsx-runtime";
1486
+ import { jsx as jsx32 } from "react/jsx-runtime";
1131
1487
  function Popover({
1132
1488
  ...props
1133
1489
  }) {
1134
- return /* @__PURE__ */ jsx28(PopoverPrimitive.Root, { "data-slot": "popover", ...props });
1490
+ return /* @__PURE__ */ jsx32(PopoverPrimitive.Root, { "data-slot": "popover", ...props });
1135
1491
  }
1136
1492
  function PopoverTrigger({
1137
1493
  ...props
1138
1494
  }) {
1139
- return /* @__PURE__ */ jsx28(PopoverPrimitive.Trigger, { "data-slot": "popover-trigger", ...props });
1495
+ return /* @__PURE__ */ jsx32(PopoverPrimitive.Trigger, { "data-slot": "popover-trigger", ...props });
1140
1496
  }
1141
1497
  function PopoverContent({
1142
1498
  className,
@@ -1144,7 +1500,7 @@ function PopoverContent({
1144
1500
  sideOffset = 4,
1145
1501
  ...props
1146
1502
  }) {
1147
- return /* @__PURE__ */ jsx28(PopoverPrimitive.Portal, { children: /* @__PURE__ */ jsx28(
1503
+ return /* @__PURE__ */ jsx32(PopoverPrimitive.Portal, { children: /* @__PURE__ */ jsx32(
1148
1504
  PopoverPrimitive.Content,
1149
1505
  {
1150
1506
  "data-slot": "popover-content",
@@ -1160,14 +1516,14 @@ function PopoverContent({
1160
1516
  }
1161
1517
 
1162
1518
  // src/components/Inputs/DateRange/DateRange.tsx
1163
- 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";
1164
1520
  var DateRange = ({ className, style }) => {
1165
- const [date, setDate] = React11.useState({
1521
+ const [date, setDate] = React13.useState({
1166
1522
  from: /* @__PURE__ */ new Date(),
1167
1523
  to: addDays(/* @__PURE__ */ new Date(), 7)
1168
1524
  });
1169
- return /* @__PURE__ */ jsx29("div", { className, style, children: /* @__PURE__ */ jsxs15(Popover, { children: [
1170
- /* @__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(
1171
1527
  Button,
1172
1528
  {
1173
1529
  id: "date",
@@ -1176,16 +1532,16 @@ var DateRange = ({ className, style }) => {
1176
1532
  "w-[300px] justify-start text-left font-normal text-[11px]",
1177
1533
  !date && "text-muted-foreground"
1178
1534
  ),
1179
- children: date?.from ? date.to ? /* @__PURE__ */ jsxs15(Fragment9, { children: [
1535
+ children: date?.from ? date.to ? /* @__PURE__ */ jsxs18(Fragment11, { children: [
1180
1536
  format(date.from, "LLL dd, y"),
1181
1537
  " -",
1182
1538
  " ",
1183
1539
  format(date.to, "LLL dd, y")
1184
- ] }) : 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" })
1185
1541
  }
1186
1542
  ) }),
1187
- /* @__PURE__ */ jsx29(PopoverContent, { className: "w-auto p-0", align: "start", children: /* @__PURE__ */ jsx29(
1188
- Calendar,
1543
+ /* @__PURE__ */ jsx33(PopoverContent, { className: "w-auto p-0", align: "start", children: /* @__PURE__ */ jsx33(
1544
+ Calendar2,
1189
1545
  {
1190
1546
  mode: "range",
1191
1547
  defaultMonth: date?.from,
@@ -1196,6 +1552,7 @@ var DateRange = ({ className, style }) => {
1196
1552
  ) })
1197
1553
  ] }) });
1198
1554
  };
1555
+ var DateRange_default = DateRange;
1199
1556
 
1200
1557
  // src/components/ui/data-table.tsx
1201
1558
  import {
@@ -1205,14 +1562,14 @@ import {
1205
1562
  } from "@tanstack/react-table";
1206
1563
 
1207
1564
  // src/components/ui/table.tsx
1208
- import { jsx as jsx30 } from "react/jsx-runtime";
1565
+ import { jsx as jsx34 } from "react/jsx-runtime";
1209
1566
  function Table({ className, ...props }) {
1210
- return /* @__PURE__ */ jsx30(
1567
+ return /* @__PURE__ */ jsx34(
1211
1568
  "div",
1212
1569
  {
1213
1570
  "data-slot": "table-container",
1214
1571
  className: "relative w-full overflow-x-auto rounded-md border border-gray-200 bg-white",
1215
- children: /* @__PURE__ */ jsx30(
1572
+ children: /* @__PURE__ */ jsx34(
1216
1573
  "table",
1217
1574
  {
1218
1575
  "data-slot": "table",
@@ -1224,7 +1581,7 @@ function Table({ className, ...props }) {
1224
1581
  );
1225
1582
  }
1226
1583
  function TableHeader({ className, ...props }) {
1227
- return /* @__PURE__ */ jsx30(
1584
+ return /* @__PURE__ */ jsx34(
1228
1585
  "thead",
1229
1586
  {
1230
1587
  "data-slot": "table-header",
@@ -1237,7 +1594,7 @@ function TableHeader({ className, ...props }) {
1237
1594
  );
1238
1595
  }
1239
1596
  function TableBody({ className, ...props }) {
1240
- return /* @__PURE__ */ jsx30(
1597
+ return /* @__PURE__ */ jsx34(
1241
1598
  "tbody",
1242
1599
  {
1243
1600
  "data-slot": "table-body",
@@ -1250,7 +1607,7 @@ function TableBody({ className, ...props }) {
1250
1607
  );
1251
1608
  }
1252
1609
  function TableRow({ className, ...props }) {
1253
- return /* @__PURE__ */ jsx30(
1610
+ return /* @__PURE__ */ jsx34(
1254
1611
  "tr",
1255
1612
  {
1256
1613
  "data-slot": "table-row",
@@ -1263,7 +1620,7 @@ function TableRow({ className, ...props }) {
1263
1620
  );
1264
1621
  }
1265
1622
  function TableHead({ className, ...props }) {
1266
- return /* @__PURE__ */ jsx30(
1623
+ return /* @__PURE__ */ jsx34(
1267
1624
  "th",
1268
1625
  {
1269
1626
  "data-slot": "table-head",
@@ -1276,7 +1633,7 @@ function TableHead({ className, ...props }) {
1276
1633
  );
1277
1634
  }
1278
1635
  function TableCell({ className, ...props }) {
1279
- return /* @__PURE__ */ jsx30(
1636
+ return /* @__PURE__ */ jsx34(
1280
1637
  "td",
1281
1638
  {
1282
1639
  "data-slot": "table-cell",
@@ -1290,7 +1647,7 @@ function TableCell({ className, ...props }) {
1290
1647
  }
1291
1648
 
1292
1649
  // src/components/ui/data-table.tsx
1293
- 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";
1294
1651
  function DataTable({
1295
1652
  columns,
1296
1653
  rowActions,
@@ -1315,14 +1672,14 @@ function DataTable({
1315
1672
  onCellClick(rowData, columnId);
1316
1673
  }
1317
1674
  };
1318
- return /* @__PURE__ */ jsx31("div", { className: "overflow-hidden rounded-md border w-full", children: /* @__PURE__ */ jsxs16(Table, { children: [
1319
- /* @__PURE__ */ jsx31(TableHeader, { children: table.getHeaderGroups().map((headerGroup) => /* @__PURE__ */ jsx31(TableRow, { children: headerGroup.headers.map((header) => {
1320
- 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(
1321
1678
  header.column.columnDef.header,
1322
1679
  header.getContext()
1323
1680
  ) }, header.id);
1324
1681
  }) }, headerGroup.id)) }),
1325
- /* @__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(
1326
1683
  TableRow,
1327
1684
  {
1328
1685
  "data-state": row.getIsSelected() && "selected",
@@ -1332,7 +1689,7 @@ function DataTable({
1332
1689
  const isCellClickable = cellClickEnabled(row.original, cell.column.id);
1333
1690
  const dynamicClass = cell.column.columnDef.meta?.cellClass || "";
1334
1691
  const dynamicStyle = cell.column.columnDef.meta?.cellStyle || {};
1335
- return /* @__PURE__ */ jsx31(
1692
+ return /* @__PURE__ */ jsx35(
1336
1693
  TableCell,
1337
1694
  {
1338
1695
  className: `${dynamicClass} ${isCellClickable ? "underline cursor-pointer" : ""}`,
@@ -1347,36 +1704,36 @@ function DataTable({
1347
1704
  cell.id
1348
1705
  );
1349
1706
  }),
1350
- 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)) })
1351
1708
  ]
1352
1709
  },
1353
1710
  row.id
1354
- )) : /* @__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." }) }) }) })
1355
1712
  ] }) });
1356
1713
  }
1357
1714
 
1358
1715
  // src/components/DataDisplay/Table/Table.tsx
1359
- import { jsx as jsx32 } from "react/jsx-runtime";
1716
+ import { jsx as jsx36 } from "react/jsx-runtime";
1360
1717
  var Table2 = ({ columns, data, rowActions }) => {
1361
1718
  const rawColumns = Array.isArray(columns) ? columns : [];
1362
1719
  const rawData = Array.isArray(data) ? data : [];
1363
1720
  const rawRowActions = Array.isArray(rowActions) ? rowActions : [];
1364
- return /* @__PURE__ */ jsx32(DataTable, { columns: rawColumns, data: rawData, rowActions: rawRowActions });
1721
+ return /* @__PURE__ */ jsx36(DataTable, { columns: rawColumns, data: rawData, rowActions: rawRowActions });
1365
1722
  };
1366
1723
  var Table_default = Table2;
1367
1724
 
1368
1725
  // src/components/ui/dropdown-menu.tsx
1369
1726
  import * as DropdownMenuPrimitive from "@radix-ui/react-dropdown-menu";
1370
- import { jsx as jsx33, jsxs as jsxs17 } from "react/jsx-runtime";
1727
+ import { jsx as jsx37, jsxs as jsxs20 } from "react/jsx-runtime";
1371
1728
  function DropdownMenu({
1372
1729
  ...props
1373
1730
  }) {
1374
- return /* @__PURE__ */ jsx33(DropdownMenuPrimitive.Root, { "data-slot": "dropdown-menu", ...props });
1731
+ return /* @__PURE__ */ jsx37(DropdownMenuPrimitive.Root, { "data-slot": "dropdown-menu", ...props });
1375
1732
  }
1376
1733
  function DropdownMenuTrigger({
1377
1734
  ...props
1378
1735
  }) {
1379
- return /* @__PURE__ */ jsx33(
1736
+ return /* @__PURE__ */ jsx37(
1380
1737
  DropdownMenuPrimitive.Trigger,
1381
1738
  {
1382
1739
  "data-slot": "dropdown-menu-trigger",
@@ -1389,7 +1746,7 @@ function DropdownMenuContent({
1389
1746
  sideOffset = 4,
1390
1747
  ...props
1391
1748
  }) {
1392
- return /* @__PURE__ */ jsx33(DropdownMenuPrimitive.Portal, { children: /* @__PURE__ */ jsx33(
1749
+ return /* @__PURE__ */ jsx37(DropdownMenuPrimitive.Portal, { children: /* @__PURE__ */ jsx37(
1393
1750
  DropdownMenuPrimitive.Content,
1394
1751
  {
1395
1752
  "data-slot": "dropdown-menu-content",
@@ -1408,7 +1765,7 @@ function DropdownMenuItem({
1408
1765
  variant = "default",
1409
1766
  ...props
1410
1767
  }) {
1411
- return /* @__PURE__ */ jsx33(
1768
+ return /* @__PURE__ */ jsx37(
1412
1769
  DropdownMenuPrimitive.Item,
1413
1770
  {
1414
1771
  "data-slot": "dropdown-menu-item",
@@ -1424,13 +1781,13 @@ function DropdownMenuItem({
1424
1781
  }
1425
1782
 
1426
1783
  // src/components/Navigation/Tabs/Tabs.tsx
1427
- import { jsx as jsx34, jsxs as jsxs18 } from "react/jsx-runtime";
1784
+ import { jsx as jsx38, jsxs as jsxs21 } from "react/jsx-runtime";
1428
1785
  var Tabs = ({ tabs, className, style }) => {
1429
1786
  const rawTabs = Array.isArray(tabs) ? tabs : [];
1430
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 ";
1431
1788
  const activeClasses = "bg-white/10 text-white";
1432
1789
  const hoverClasses = "hover:bg-white/5";
1433
- return /* @__PURE__ */ jsx34("div", { className, style, children: rawTabs.map((tab, index) => {
1790
+ return /* @__PURE__ */ jsx38("div", { className, style, children: rawTabs.map((tab, index) => {
1434
1791
  const finalClasses = [
1435
1792
  baseClasses,
1436
1793
  tab.isActive ? activeClasses : hoverClasses,
@@ -1438,24 +1795,24 @@ var Tabs = ({ tabs, className, style }) => {
1438
1795
  ].join(" ");
1439
1796
  const hasDropdown = Array.isArray(tab.children) && tab.children.length > 0 && tab.isDropDown;
1440
1797
  if (hasDropdown) {
1441
- return /* @__PURE__ */ jsxs18(DropdownMenu, { children: [
1442
- /* @__PURE__ */ jsxs18(
1798
+ return /* @__PURE__ */ jsxs21(DropdownMenu, { children: [
1799
+ /* @__PURE__ */ jsxs21(
1443
1800
  DropdownMenuTrigger,
1444
1801
  {
1445
1802
  className: `${finalClasses} inline-flex items-center gap-1`,
1446
1803
  children: [
1447
1804
  tab.header,
1448
- /* @__PURE__ */ jsx34(ChevronDown, { className: "h-4 w-4 opacity-80" })
1805
+ /* @__PURE__ */ jsx38(ChevronDown, { className: "h-4 w-4 opacity-80" })
1449
1806
  ]
1450
1807
  }
1451
1808
  ),
1452
- /* @__PURE__ */ jsx34(
1809
+ /* @__PURE__ */ jsx38(
1453
1810
  DropdownMenuContent,
1454
1811
  {
1455
1812
  align: "start",
1456
1813
  sideOffset: 6,
1457
1814
  className: "z-50 min-w-[160px] rounded-md border border-gray-200 bg-white p-1 shadow-lg",
1458
- children: tab.children.map((item) => /* @__PURE__ */ jsx34(
1815
+ children: tab.children.map((item) => /* @__PURE__ */ jsx38(
1459
1816
  DropdownMenuItem,
1460
1817
  {
1461
1818
  asChild: true,
@@ -1468,19 +1825,19 @@ var Tabs = ({ tabs, className, style }) => {
1468
1825
  )
1469
1826
  ] }, index);
1470
1827
  }
1471
- 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);
1472
1829
  }) });
1473
1830
  };
1474
1831
  var Tabs_default = Tabs;
1475
1832
 
1476
1833
  // src/components/Navigation/Stages/Stages.tsx
1477
- import React12 from "react";
1478
- 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";
1479
1836
  var StagesComponent = ({ stages, isShowBtn, buttonText, className, style }) => {
1480
- 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: [
1481
- /* @__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" }) }) }) }),
1482
- /* @__PURE__ */ jsx35("div", { className: "flex items-center flex-1 px-2", children: stages.map((stage, index) => /* @__PURE__ */ jsxs19(React12.Fragment, { children: [
1483
- /* @__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(
1484
1841
  "button",
1485
1842
  {
1486
1843
  className: `
@@ -1488,26 +1845,26 @@ var StagesComponent = ({ stages, isShowBtn, buttonText, className, style }) => {
1488
1845
  children: stage.header
1489
1846
  }
1490
1847
  ),
1491
- 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" })
1492
1849
  ] }, stage.id)) }),
1493
- 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 }) })
1494
1851
  ] }) });
1495
1852
  };
1496
1853
  var Stages_default = StagesComponent;
1497
1854
 
1498
1855
  // src/components/Navigation/Spacer/Spacer.tsx
1499
- import { jsx as jsx36 } from "react/jsx-runtime";
1856
+ import { jsx as jsx40 } from "react/jsx-runtime";
1500
1857
  var Spacer = ({ className, style }) => {
1501
- return /* @__PURE__ */ jsx36("div", { className: `${className}`, style });
1858
+ return /* @__PURE__ */ jsx40("div", { className: `${className}`, style });
1502
1859
  };
1503
1860
  var Spacer_default = Spacer;
1504
1861
 
1505
1862
  // src/components/Navigation/Profile/Profile.tsx
1506
- import { jsx as jsx37, jsxs as jsxs20 } from "react/jsx-runtime";
1863
+ import { jsx as jsx41, jsxs as jsxs23 } from "react/jsx-runtime";
1507
1864
  var Profile = ({ profileType, showName, userName, className, style }) => {
1508
- return /* @__PURE__ */ jsx37("div", { className, style, children: /* @__PURE__ */ jsxs20("div", { className: "flex gap-2 items-center justify-between w-30 cursor-pointer", children: [
1509
- showName && /* @__PURE__ */ jsx37("h4", { className: "text-[#000000] dark:text-[#fff] text-[13px] font-[500] mb-0", children: userName }),
1510
- 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(
1511
1868
  "img",
1512
1869
  {
1513
1870
  src: "https://builder.development.algorithmshift.ai/images/toolset/profile.svg",
@@ -1515,16 +1872,16 @@ var Profile = ({ profileType, showName, userName, className, style }) => {
1515
1872
  width: 24,
1516
1873
  height: 24
1517
1874
  }
1518
- ) : /* @__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" })
1519
1876
  ] }) });
1520
1877
  };
1521
1878
  var Profile_default = Profile;
1522
1879
 
1523
1880
  // src/components/Navigation/Notification/Notification.tsx
1524
- import { jsx as jsx38, jsxs as jsxs21 } from "react/jsx-runtime";
1525
- var Notification = ({ className, style, badgeType, badgeCount, hideBadgeWhenZero }) => {
1526
- 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: [
1527
- /* @__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(
1528
1885
  "img",
1529
1886
  {
1530
1887
  src: "https://builder.development.algorithmshift.ai/images/toolset/notification.svg",
@@ -1533,14 +1890,14 @@ var Notification = ({ className, style, badgeType, badgeCount, hideBadgeWhenZero
1533
1890
  height: 18
1534
1891
  }
1535
1892
  ),
1536
- 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]" })
1537
1894
  ] }) });
1538
1895
  };
1539
1896
  var Notification_default = Notification;
1540
1897
 
1541
1898
  // src/components/Navigation/Logo/Logo.tsx
1542
- import { jsx as jsx39 } from "react/jsx-runtime";
1543
- var ImageControl = ({
1899
+ import { jsx as jsx43 } from "react/jsx-runtime";
1900
+ var ImageControl2 = ({
1544
1901
  className,
1545
1902
  style,
1546
1903
  imageUrl
@@ -1560,24 +1917,31 @@ var ImageControl = ({
1560
1917
  className: "opacity-50"
1561
1918
  };
1562
1919
  }
1563
- 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 }) });
1564
1921
  };
1565
- var Logo_default = ImageControl;
1922
+ var Logo_default = ImageControl2;
1566
1923
  export {
1567
1924
  Button,
1568
1925
  CheckboxInput,
1569
- DateRange,
1926
+ DatePicker,
1927
+ DateRange_default as DateRange,
1570
1928
  Dropdown,
1571
1929
  EmailInput,
1930
+ FileInput,
1572
1931
  Flex_default as FlexLayout,
1573
1932
  Grid_default as GridLayout,
1933
+ Image_default as Image,
1574
1934
  Logo_default as Logo,
1575
1935
  MultiCheckbox,
1576
1936
  Notification_default as Notification,
1937
+ NumberInput,
1577
1938
  PasswordInput,
1578
1939
  PhoneInput,
1579
1940
  Profile_default as Profile,
1580
1941
  RadioInput,
1942
+ RichText,
1943
+ SearchInput,
1944
+ Shape_default as Shape,
1581
1945
  Spacer_default as Spacer,
1582
1946
  Stages_default as Stages,
1583
1947
  SwitchToggle,
@@ -1585,6 +1949,7 @@ export {
1585
1949
  Tabs_default as Tabs,
1586
1950
  TextInput,
1587
1951
  Textarea2 as Textarea,
1952
+ Typography_default as Typography,
1588
1953
  UrlInput,
1589
1954
  buttonVariants,
1590
1955
  cn
@@ -1595,6 +1960,8 @@ lucide-react/dist/esm/shared/src/utils.js:
1595
1960
  lucide-react/dist/esm/defaultAttributes.js:
1596
1961
  lucide-react/dist/esm/Icon.js:
1597
1962
  lucide-react/dist/esm/createLucideIcon.js:
1963
+ lucide-react/dist/esm/icons/calculator.js:
1964
+ lucide-react/dist/esm/icons/calendar.js:
1598
1965
  lucide-react/dist/esm/icons/check.js:
1599
1966
  lucide-react/dist/esm/icons/chevron-down.js:
1600
1967
  lucide-react/dist/esm/icons/chevron-left.js:
@@ -1603,6 +1970,7 @@ lucide-react/dist/esm/icons/chevron-up.js:
1603
1970
  lucide-react/dist/esm/icons/circle.js:
1604
1971
  lucide-react/dist/esm/icons/mail.js:
1605
1972
  lucide-react/dist/esm/icons/scan-eye.js:
1973
+ lucide-react/dist/esm/icons/search.js:
1606
1974
  lucide-react/dist/esm/lucide-react.js:
1607
1975
  (**
1608
1976
  * @license lucide-react v0.542.0 - ISC