geoiq-frontend-ui-kit 1.8.8 → 1.8.9

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.
Files changed (134) hide show
  1. package/dist/components/ui/request-credits-view/component/request-credit-dialog.d.ts.map +1 -1
  2. package/dist/components/ui/request-credits-view/component/request-credit-dialog.types.d.ts +1 -0
  3. package/dist/components/ui/request-credits-view/component/request-credit-dialog.types.d.ts.map +1 -1
  4. package/dist/components/ui/request-credits-view/request-credits-view.d.ts.map +1 -1
  5. package/dist/components/ui/request-credits-view/request-credits-view.types.d.ts +1 -0
  6. package/dist/components/ui/request-credits-view/request-credits-view.types.d.ts.map +1 -1
  7. package/dist/index.es100.js +17 -9
  8. package/dist/index.es100.js.map +1 -1
  9. package/dist/index.es101.js +34 -68
  10. package/dist/index.es101.js.map +1 -1
  11. package/dist/index.es102.js +19 -185
  12. package/dist/index.es102.js.map +1 -1
  13. package/dist/index.es103.js +20 -23
  14. package/dist/index.es103.js.map +1 -1
  15. package/dist/index.es104.js +12 -203
  16. package/dist/index.es104.js.map +1 -1
  17. package/dist/index.es105.js +98 -11
  18. package/dist/index.es105.js.map +1 -1
  19. package/dist/index.es106.js +59 -38
  20. package/dist/index.es106.js.map +1 -1
  21. package/dist/index.es107.js +55 -25
  22. package/dist/index.es107.js.map +1 -1
  23. package/dist/index.es108.js +9 -7
  24. package/dist/index.es108.js.map +1 -1
  25. package/dist/index.es109.js +66 -31
  26. package/dist/index.es109.js.map +1 -1
  27. package/dist/index.es11.js +1 -1
  28. package/dist/index.es110.js +181 -58
  29. package/dist/index.es110.js.map +1 -1
  30. package/dist/index.es111.js +23 -23
  31. package/dist/index.es111.js.map +1 -1
  32. package/dist/index.es112.js +201 -11
  33. package/dist/index.es112.js.map +1 -1
  34. package/dist/index.es113.js +11 -87
  35. package/dist/index.es113.js.map +1 -1
  36. package/dist/index.es114.js +21 -12
  37. package/dist/index.es114.js.map +1 -1
  38. package/dist/index.es115.js +30 -31
  39. package/dist/index.es115.js.map +1 -1
  40. package/dist/index.es116.js +61 -18
  41. package/dist/index.es116.js.map +1 -1
  42. package/dist/index.es117.js +35 -18
  43. package/dist/index.es117.js.map +1 -1
  44. package/dist/index.es118.js +38 -10
  45. package/dist/index.es118.js.map +1 -1
  46. package/dist/index.es119.js +175 -92
  47. package/dist/index.es119.js.map +1 -1
  48. package/dist/index.es12.js +1 -1
  49. package/dist/index.es120.js +13 -63
  50. package/dist/index.es120.js.map +1 -1
  51. package/dist/index.es121.js +41 -47
  52. package/dist/index.es121.js.map +1 -1
  53. package/dist/index.es122.js +19 -178
  54. package/dist/index.es122.js.map +1 -1
  55. package/dist/index.es123.js +38 -15
  56. package/dist/index.es123.js.map +1 -1
  57. package/dist/index.es124.js +22 -42
  58. package/dist/index.es124.js.map +1 -1
  59. package/dist/index.es125.js +265 -41
  60. package/dist/index.es125.js.map +1 -1
  61. package/dist/index.es126.js +6 -35
  62. package/dist/index.es126.js.map +1 -1
  63. package/dist/index.es127.js +12 -21
  64. package/dist/index.es127.js.map +1 -1
  65. package/dist/index.es128.js +44 -5
  66. package/dist/index.es128.js.map +1 -1
  67. package/dist/index.es129.js +5 -11
  68. package/dist/index.es129.js.map +1 -1
  69. package/dist/index.es130.js +10 -10
  70. package/dist/index.es130.js.map +1 -1
  71. package/dist/index.es131.js +11 -2
  72. package/dist/index.es131.js.map +1 -1
  73. package/dist/index.es132.js +2 -44
  74. package/dist/index.es132.js.map +1 -1
  75. package/dist/index.es134.js +21 -12
  76. package/dist/index.es134.js.map +1 -1
  77. package/dist/index.es135.js +33 -284
  78. package/dist/index.es135.js.map +1 -1
  79. package/dist/index.es136.js +11 -35
  80. package/dist/index.es136.js.map +1 -1
  81. package/dist/index.es137.js +286 -11
  82. package/dist/index.es137.js.map +1 -1
  83. package/dist/index.es138.js +1 -1
  84. package/dist/index.es139.js +1 -1
  85. package/dist/index.es140.js +1 -1
  86. package/dist/index.es141.js +1 -1
  87. package/dist/index.es142.js +2 -2
  88. package/dist/index.es143.js +1 -1
  89. package/dist/index.es144.js +1 -1
  90. package/dist/index.es16.js +1 -1
  91. package/dist/index.es19.js +1 -1
  92. package/dist/index.es2.js +36 -35
  93. package/dist/index.es2.js.map +1 -1
  94. package/dist/index.es20.js +1 -1
  95. package/dist/index.es21.js +3 -3
  96. package/dist/index.es22.js +1 -1
  97. package/dist/index.es25.js +1 -1
  98. package/dist/index.es27.js +1 -1
  99. package/dist/index.es28.js +2 -2
  100. package/dist/index.es3.js +15 -13
  101. package/dist/index.es3.js.map +1 -1
  102. package/dist/index.es30.js +1 -1
  103. package/dist/index.es32.js +1 -1
  104. package/dist/index.es33.js +1 -1
  105. package/dist/index.es43.js +2 -2
  106. package/dist/index.es44.js +1 -1
  107. package/dist/index.es45.js +1 -1
  108. package/dist/index.es50.js +1 -1
  109. package/dist/index.es52.js +1 -1
  110. package/dist/index.es54.js +1 -1
  111. package/dist/index.es62.js +2 -2
  112. package/dist/index.es63.js +1 -1
  113. package/dist/index.es65.js +5 -5
  114. package/dist/index.es66.js +1 -1
  115. package/dist/index.es67.js +7 -7
  116. package/dist/index.es68.js +2 -2
  117. package/dist/index.es74.js +1 -1
  118. package/dist/index.es91.js +7 -5
  119. package/dist/index.es91.js.map +1 -1
  120. package/dist/index.es92.js +72 -258
  121. package/dist/index.es92.js.map +1 -1
  122. package/dist/index.es94.js +19 -39
  123. package/dist/index.es94.js.map +1 -1
  124. package/dist/index.es95.js +7 -37
  125. package/dist/index.es95.js.map +1 -1
  126. package/dist/index.es96.js +37 -82
  127. package/dist/index.es96.js.map +1 -1
  128. package/dist/index.es97.js +42 -122
  129. package/dist/index.es97.js.map +1 -1
  130. package/dist/index.es98.js +84 -13
  131. package/dist/index.es98.js.map +1 -1
  132. package/dist/index.es99.js +122 -22
  133. package/dist/index.es99.js.map +1 -1
  134. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"request-credit-dialog.d.ts","sourceRoot":"","sources":["../../../../../src/components/ui/request-credits-view/component/request-credit-dialog.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA8B,MAAM,OAAO,CAAA;AAKlD,OAAO,EAAE,yBAAyB,EAAE,MAAM,+BAA+B,CAAA;AAIzE,eAAO,MAAM,oBAAoB,EAAE,KAAK,CAAC,EAAE,CAAC,yBAAyB,CAqKpE,CAAA"}
1
+ {"version":3,"file":"request-credit-dialog.d.ts","sourceRoot":"","sources":["../../../../../src/components/ui/request-credits-view/component/request-credit-dialog.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA8B,MAAM,OAAO,CAAA;AAKlD,OAAO,EAAE,yBAAyB,EAAE,MAAM,+BAA+B,CAAA;AAIzE,eAAO,MAAM,oBAAoB,EAAE,KAAK,CAAC,EAAE,CAAC,yBAAyB,CAwKpE,CAAA"}
@@ -4,5 +4,6 @@ export interface RequestCreditsDialogProps {
4
4
  onRequestCredits: (credits: string, phoneNumber: string) => void;
5
5
  onProceedToPayment?: (credits: string, phoneNumber: string) => void;
6
6
  dialogClassName?: string;
7
+ buyCreditsOptions?: string[];
7
8
  }
8
9
  //# sourceMappingURL=request-credit-dialog.types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"request-credit-dialog.types.d.ts","sourceRoot":"","sources":["../../../../../src/components/ui/request-credits-view/component/request-credit-dialog.types.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,yBAAyB;IACxC,IAAI,EAAE,OAAO,CAAA;IACb,OAAO,EAAE,MAAM,IAAI,CAAA;IACnB,gBAAgB,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,KAAK,IAAI,CAAA;IAChE,kBAAkB,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,KAAK,IAAI,CAAA;IACnE,eAAe,CAAC,EAAE,MAAM,CAAA;CACzB"}
1
+ {"version":3,"file":"request-credit-dialog.types.d.ts","sourceRoot":"","sources":["../../../../../src/components/ui/request-credits-view/component/request-credit-dialog.types.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,yBAAyB;IACxC,IAAI,EAAE,OAAO,CAAA;IACb,OAAO,EAAE,MAAM,IAAI,CAAA;IACnB,gBAAgB,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,KAAK,IAAI,CAAA;IAChE,kBAAkB,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,KAAK,IAAI,CAAA;IACnE,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,iBAAiB,CAAC,EAAE,MAAM,EAAE,CAAA;CAC7B"}
@@ -1 +1 @@
1
- {"version":3,"file":"request-credits-view.d.ts","sourceRoot":"","sources":["../../../../src/components/ui/request-credits-view/request-credits-view.tsx"],"names":[],"mappings":"AAAA,OAAc,EAAE,EAAE,EAAY,MAAM,OAAO,CAAA;AAC3C,OAAO,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAA;AAInE,QAAA,MAAM,kBAAkB,EAAE,EAAE,CAAC,oBAAoB,CAAC,uBAAuB,CAmCxE,CAAA;AAED,eAAe,kBAAkB,CAAA"}
1
+ {"version":3,"file":"request-credits-view.d.ts","sourceRoot":"","sources":["../../../../src/components/ui/request-credits-view/request-credits-view.tsx"],"names":[],"mappings":"AAAA,OAAc,EAAE,EAAE,EAAY,MAAM,OAAO,CAAA;AAC3C,OAAO,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAA;AAInE,QAAA,MAAM,kBAAkB,EAAE,EAAE,CAAC,oBAAoB,CAAC,uBAAuB,CAqCxE,CAAA;AAED,eAAe,kBAAkB,CAAA"}
@@ -2,6 +2,7 @@ export declare namespace RequestCreditsViewNS {
2
2
  interface RequestCreditsViewProps {
3
3
  onRequestCredits: (credits: string, phoneNumber: string) => void;
4
4
  onProceedToPayment?: (credits: string, phoneNumber: string) => void;
5
+ buyCreditsOptions?: string[];
5
6
  }
6
7
  }
7
8
  //# sourceMappingURL=request-credits-view.types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"request-credits-view.types.d.ts","sourceRoot":"","sources":["../../../../src/components/ui/request-credits-view/request-credits-view.types.ts"],"names":[],"mappings":"AACA,yBAAiB,oBAAoB,CAAC;IACpC,UAAiB,uBAAuB;QACtC,gBAAgB,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,KAAK,IAAI,CAAA;QAChE,kBAAkB,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,KAAK,IAAI,CAAA;KACpE;CACF"}
1
+ {"version":3,"file":"request-credits-view.types.d.ts","sourceRoot":"","sources":["../../../../src/components/ui/request-credits-view/request-credits-view.types.ts"],"names":[],"mappings":"AACA,yBAAiB,oBAAoB,CAAC;IACpC,UAAiB,uBAAuB;QACtC,gBAAgB,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,KAAK,IAAI,CAAA;QAChE,kBAAkB,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,KAAK,IAAI,CAAA;QACnE,iBAAiB,CAAC,EAAE,MAAM,EAAE,CAAA;KAC7B;CACF"}
@@ -1,12 +1,20 @@
1
- import e from "react";
2
- import { FormSection as m } from "./index.es128.js";
3
- import { Typography as o } from "./index.es19.js";
4
- import { useFormStructure as c } from "./index.es129.js";
5
- const f = () => {
6
- const { currentStep: t, totalSteps: l, currentStepIndex: a } = c();
7
- return /* @__PURE__ */ e.createElement("section", { className: "flex flex-col gap-4 flex-1 overflow-scroll pb-16 [&::-webkit-scrollbar]:hidden [-ms-overflow-style:'none'] [scrollbar-width:'none']" }, /* @__PURE__ */ e.createElement("div", { className: "flex flex-col gap-1" }, /* @__PURE__ */ e.createElement(o, { variant: "h2" }, t.name), /* @__PURE__ */ e.createElement(o, { variant: "h3", className: "text-light-3" }, "Step ", a + 1, " of ", l)), /* @__PURE__ */ e.createElement("div", { className: "border-b border-light-1" }), t.sections.map((r) => /* @__PURE__ */ e.createElement(m, { key: r.id, section: r })));
8
- };
1
+ import { cva as t } from "class-variance-authority";
2
+ const r = t(
3
+ "rounded hover:text-light-2 hover:stroke-light-1 hover:bg-light-3 ",
4
+ {
5
+ variants: {
6
+ type: {
7
+ icon: "p-1",
8
+ text: "px-2 py-1"
9
+ },
10
+ isSelected: {
11
+ true: "text-light-2 stroke-light-1 bg-light-3",
12
+ false: "text-light-3 stroke-light-2"
13
+ }
14
+ }
15
+ }
16
+ );
9
17
  export {
10
- f as FormStep
18
+ r as CrumbVariants
11
19
  };
12
20
  //# sourceMappingURL=index.es100.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.es100.js","sources":["../src/components/ui/form-renderer/components/form-step.tsx"],"sourcesContent":["// components/FormStep.tsx\nimport React from 'react'\nimport { FormSection } from './form-section'\nimport { useFormStructure } from '../context/form-structure'\nimport { Typography } from '@/components/atoms/typography'\n\nexport const FormStep: React.FC = () => {\n const { currentStep, totalSteps, currentStepIndex } = useFormStructure()\n\n return (\n <section className=\"flex flex-col gap-4 flex-1 overflow-scroll pb-16 [&::-webkit-scrollbar]:hidden [-ms-overflow-style:'none'] [scrollbar-width:'none']\">\n <div className=\"flex flex-col gap-1\">\n <Typography variant=\"h2\">{currentStep.name}</Typography>\n <Typography variant=\"h3\" className=\"text-light-3\">\n Step {currentStepIndex + 1} of {totalSteps}\n </Typography>\n </div>\n <div className=\"border-b border-light-1\" />\n {currentStep.sections.map((section) => (\n <FormSection key={section.id} section={section} />\n ))}\n </section>\n )\n}\n"],"names":["FormStep","currentStep","totalSteps","currentStepIndex","useFormStructure","React","Typography","section","FormSection"],"mappings":";;;;AAMO,MAAMA,IAAqB,MAAM;AACtC,QAAM,EAAE,aAAAC,GAAa,YAAAC,GAAY,kBAAAC,EAAA,IAAqBC,EAAA;AAEtD,SACEC,gBAAAA,EAAA,cAAC,aAAQ,WAAU,uIAAA,mCAChB,OAAA,EAAI,WAAU,yBACbA,gBAAAA,EAAA,cAACC,GAAA,EAAW,SAAQ,KAAA,GAAML,EAAY,IAAK,GAC3CI,gBAAAA,EAAA,cAACC,KAAW,SAAQ,MAAK,WAAU,eAAA,GAAe,SAC1CH,IAAmB,GAAE,QAAKD,CAClC,CACF,mCACC,OAAA,EAAI,WAAU,2BAA0B,GACxCD,EAAY,SAAS,IAAI,CAACM,MACzBF,gBAAAA,EAAA,cAACG,GAAA,EAAY,KAAKD,EAAQ,IAAI,SAAAA,EAAA,CAAkB,CACjD,CACH;AAEJ;"}
1
+ {"version":3,"file":"index.es100.js","sources":["../src/components/molecules/breadcrumb/breadcrumb.styles.ts"],"sourcesContent":["import { cva } from 'class-variance-authority'\n\nexport const CrumbVariants = cva(\n 'rounded hover:text-light-2 hover:stroke-light-1 hover:bg-light-3 ',\n {\n variants: {\n type: {\n icon: 'p-1',\n text: 'px-2 py-1',\n },\n isSelected: {\n true: 'text-light-2 stroke-light-1 bg-light-3',\n false: 'text-light-3 stroke-light-2',\n },\n },\n }\n)\n"],"names":["CrumbVariants","cva"],"mappings":";AAEO,MAAMA,IAAgBC;AAAA,EAC3B;AAAA,EACA;AAAA,IACE,UAAU;AAAA,MACR,MAAM;AAAA,QACJ,MAAM;AAAA,QACN,MAAM;AAAA,MAAA;AAAA,MAER,YAAY;AAAA,QACV,MAAM;AAAA,QACN,OAAO;AAAA,MAAA;AAAA,IACT;AAAA,EACF;AAEJ;"}
@@ -1,71 +1,37 @@
1
- import e, { useState as N } from "react";
2
- import { Button as n } from "./index.es9.js";
3
- import { useFormStructure as k } from "./index.es129.js";
4
- import { useFormValues as C } from "./index.es130.js";
5
- const V = ({
6
- onGoToNextStep: i,
7
- onGoToPreviousStep: o,
8
- isSubmitting: f,
9
- testMode: s = !1
10
- }) => {
11
- const {
12
- goToNextStep: l,
13
- goToPreviousStep: S,
14
- isFirstStep: r,
15
- isLastStep: a,
16
- currentStep: g,
17
- currentStepIndex: c,
18
- totalSteps: m
19
- } = k(), { submitForm: v, validateStep: x, values: u } = C(), { isStepValid: p } = x(g), [y, d] = N(!1), b = async () => {
20
- if (!i) {
21
- l();
22
- return;
23
- }
24
- const F = {
25
- currentStepIndex: c,
26
- totalSteps: m,
27
- isFirstStep: r,
28
- isLastStep: a,
29
- values: u
30
- };
31
- try {
32
- d(!0);
33
- const t = i(F);
34
- t && typeof t.then == "function" && await t, l();
35
- } catch {
36
- } finally {
37
- d(!1);
38
- }
39
- }, h = () => {
40
- o && o({
41
- currentStepIndex: c,
42
- totalSteps: m,
43
- isFirstStep: r,
44
- isLastStep: a,
45
- values: u
46
- }), S();
47
- };
48
- return /* @__PURE__ */ e.createElement("div", { className: "w-full flex h-[5rem] items-center justify-center gap-3 border-t border-neutral-1 bg-light-2 px-3" }, /* @__PURE__ */ e.createElement(n, { variant: "secondary", onClick: h }, r ? "Cancel" : "Back"), a ? /* @__PURE__ */ e.createElement(
49
- n,
50
- {
51
- variant: "primary",
52
- onClick: v,
53
- disabled: !(p || s),
54
- loading: f
55
- },
56
- "Submit"
57
- ) : /* @__PURE__ */ e.createElement(
58
- n,
59
- {
60
- variant: "primary",
61
- onClick: b,
62
- disabled: !(p || s),
63
- loading: y
64
- },
65
- "Save & Next"
66
- ));
67
- };
1
+ import a from "react";
2
+ import { AccordionDemo as l } from "./index.es4.js";
3
+ import { AvatarDemo as o } from "./index.es6.js";
4
+ import { Typography as r } from "./index.es19.js";
5
+ const p = ({ members: t }) => t.length > 0 ? /* @__PURE__ */ a.createElement(
6
+ l,
7
+ {
8
+ trigger: /* @__PURE__ */ a.createElement("div", { className: "flex items-center gap-1" }, /* @__PURE__ */ a.createElement(r, { variant: "body1", className: "text-light-2" }, "Members (", t.length, ")")),
9
+ content: /* @__PURE__ */ a.createElement("div", { className: "flex flex-col gap-2" }, t.map((e) => /* @__PURE__ */ a.createElement(
10
+ "div",
11
+ {
12
+ key: e.id,
13
+ className: "flex items-center gap-3 rounded-xl bg-light-2 px-4 py-3"
14
+ },
15
+ /* @__PURE__ */ a.createElement(
16
+ o,
17
+ {
18
+ size: "md",
19
+ imageSrc: e.imageSrc || "",
20
+ alt: e.alt || e.name,
21
+ fallback: e.fallback || e.name?.[0].toUpperCase() || "",
22
+ avatarProps: {
23
+ className: "border border-neutral-1 h-8 w-8 bg-light-1"
24
+ },
25
+ ...e
26
+ }
27
+ ),
28
+ /* @__PURE__ */ a.createElement(r, { variant: "body2" }, e.name)
29
+ ))),
30
+ contentProps: { className: "max-h-[400px] overflow-y-auto" },
31
+ triggerProps: { className: "cursor-pointer my-2" }
32
+ }
33
+ ) : null;
68
34
  export {
69
- V as FormNavigation
35
+ p as MembersSection
70
36
  };
71
37
  //# sourceMappingURL=index.es101.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.es101.js","sources":["../src/components/ui/form-renderer/components/form-navigation.tsx"],"sourcesContent":["// components/FormNavigation.tsx\nimport React, { useState } from 'react'\nimport { useFormValues } from '../context/form-values'\nimport { useFormStructure } from '../context/form-structure'\nimport { Button } from '@/components/atoms/button'\nimport { OnNavigate } from '../form.types'\n\ninterface FormNavigationProps {\n onGoToNextStep?: OnNavigate\n onGoToPreviousStep?: OnNavigate\n isSubmitting: boolean\n testMode?: boolean\n}\n\nexport const FormNavigation: React.FC<FormNavigationProps> = ({\n onGoToNextStep,\n onGoToPreviousStep,\n isSubmitting,\n testMode = false,\n}) => {\n const {\n goToNextStep,\n goToPreviousStep,\n isFirstStep,\n isLastStep,\n currentStep,\n currentStepIndex,\n totalSteps,\n } = useFormStructure()\n\n const { submitForm, validateStep, values } = useFormValues()\n\n const { isStepValid } = validateStep(currentStep)\n // const isStepValid = true\n\n const [nextLoading, setNextLoading] = useState<boolean>(false)\n\n const handleNextStep = async () => {\n if (!onGoToNextStep) {\n goToNextStep()\n return\n }\n\n const nextStepData = {\n currentStepIndex,\n totalSteps,\n isFirstStep,\n isLastStep,\n values,\n }\n\n try {\n setNextLoading(true)\n const result = onGoToNextStep(nextStepData)\n\n // Await if it's a Promise, otherwise just continue\n if (result && typeof result.then === 'function') {\n await result\n }\n\n // If successful, proceed to next step\n goToNextStep()\n } catch (error) {\n // Don't proceed to next step if there's an error\n } finally {\n setNextLoading(false)\n }\n }\n\n const handlePreviousStep = () => {\n if (onGoToPreviousStep)\n onGoToPreviousStep({\n currentStepIndex,\n totalSteps,\n isFirstStep,\n isLastStep,\n values,\n })\n goToPreviousStep()\n }\n\n return (\n <div className=\"w-full flex h-[5rem] items-center justify-center gap-3 border-t border-neutral-1 bg-light-2 px-3\">\n <Button variant=\"secondary\" onClick={handlePreviousStep}>\n {isFirstStep ? 'Cancel' : 'Back'}\n </Button>\n\n {isLastStep ? (\n <Button\n variant=\"primary\"\n onClick={submitForm}\n disabled={!(isStepValid || testMode)}\n loading={isSubmitting}\n >\n Submit\n </Button>\n ) : (\n <Button\n variant=\"primary\"\n onClick={handleNextStep}\n disabled={!(isStepValid || testMode)}\n loading={nextLoading}\n >\n Save & Next\n </Button>\n )}\n </div>\n )\n}\n"],"names":["FormNavigation","onGoToNextStep","onGoToPreviousStep","isSubmitting","testMode","goToNextStep","goToPreviousStep","isFirstStep","isLastStep","currentStep","currentStepIndex","totalSteps","useFormStructure","submitForm","validateStep","values","useFormValues","isStepValid","nextLoading","setNextLoading","useState","handleNextStep","nextStepData","result","handlePreviousStep","React","Button"],"mappings":";;;;AAcO,MAAMA,IAAgD,CAAC;AAAA,EAC5D,gBAAAC;AAAA,EACA,oBAAAC;AAAA,EACA,cAAAC;AAAA,EACA,UAAAC,IAAW;AACb,MAAM;AACJ,QAAM;AAAA,IACJ,cAAAC;AAAA,IACA,kBAAAC;AAAA,IACA,aAAAC;AAAA,IACA,YAAAC;AAAA,IACA,aAAAC;AAAA,IACA,kBAAAC;AAAA,IACA,YAAAC;AAAA,EAAA,IACEC,EAAA,GAEE,EAAE,YAAAC,GAAY,cAAAC,GAAc,QAAAC,EAAA,IAAWC,EAAA,GAEvC,EAAE,aAAAC,EAAA,IAAgBH,EAAaL,CAAW,GAG1C,CAACS,GAAaC,CAAc,IAAIC,EAAkB,EAAK,GAEvDC,IAAiB,YAAY;AACjC,QAAI,CAACpB,GAAgB;AACnB,MAAAI,EAAA;AACA;AAAA,IACF;AAEA,UAAMiB,IAAe;AAAA,MACnB,kBAAAZ;AAAA,MACA,YAAAC;AAAA,MACA,aAAAJ;AAAA,MACA,YAAAC;AAAA,MACA,QAAAO;AAAA,IAAA;AAGF,QAAI;AACF,MAAAI,EAAe,EAAI;AACnB,YAAMI,IAAStB,EAAeqB,CAAY;AAG1C,MAAIC,KAAU,OAAOA,EAAO,QAAS,cACnC,MAAMA,GAIRlB,EAAA;AAAA,IACF,QAAgB;AAAA,IAEhB,UAAA;AACE,MAAAc,EAAe,EAAK;AAAA,IACtB;AAAA,EACF,GAEMK,IAAqB,MAAM;AAC/B,IAAItB,KACFA,EAAmB;AAAA,MACjB,kBAAAQ;AAAA,MACA,YAAAC;AAAA,MACA,aAAAJ;AAAA,MACA,YAAAC;AAAA,MACA,QAAAO;AAAA,IAAA,CACD,GACHT,EAAA;AAAA,EACF;AAEA,SACEmB,gBAAAA,EAAA,cAAC,OAAA,EAAI,WAAU,sIACZC,GAAA,EAAO,SAAQ,aAAY,SAASF,EAAA,GAClCjB,IAAc,WAAW,MAC5B,GAECC,IACCiB,gBAAAA,EAAA;AAAA,IAACC;AAAA,IAAA;AAAA,MACC,SAAQ;AAAA,MACR,SAASb;AAAA,MACT,UAAU,EAAEI,KAAeb;AAAA,MAC3B,SAASD;AAAA,IAAA;AAAA,IACV;AAAA,EAAA,IAIDsB,gBAAAA,EAAA;AAAA,IAACC;AAAA,IAAA;AAAA,MACC,SAAQ;AAAA,MACR,SAASL;AAAA,MACT,UAAU,EAAEJ,KAAeb;AAAA,MAC3B,SAASc;AAAA,IAAA;AAAA,IACV;AAAA,EAAA,CAIL;AAEJ;"}
1
+ {"version":3,"file":"index.es101.js","sources":["../src/components/ui/agent-snippet-view/components/members-section.tsx"],"sourcesContent":["import React from 'react'\nimport { Accordion } from '@/components/atoms/accordion'\nimport { Avatar } from '@/components/atoms/avatar'\nimport { Typography } from '@/components/atoms/typography'\nimport type { Member } from '../agent-snippet-view.types'\n\nexport const MembersSection: React.FC<{\n members: Member[]\n}> = ({ members }) =>\n members.length > 0 ? (\n <Accordion\n trigger={\n <div className=\"flex items-center gap-1\">\n <Typography variant=\"body1\" className=\"text-light-2\">\n Members ({members.length})\n </Typography>\n </div>\n }\n content={\n <div className=\"flex flex-col gap-2\">\n {members.map((member) => (\n <div\n key={member.id}\n className=\"flex items-center gap-3 rounded-xl bg-light-2 px-4 py-3\"\n >\n <Avatar\n size=\"md\"\n imageSrc={member.imageSrc || ''}\n alt={member.alt || member.name}\n fallback={\n member.fallback || member.name?.[0].toUpperCase() || ''\n }\n avatarProps={{\n className: 'border border-neutral-1 h-8 w-8 bg-light-1',\n }}\n {...member}\n />\n <Typography variant=\"body2\">{member.name}</Typography>\n </div>\n ))}\n </div>\n }\n contentProps={{ className: 'max-h-[400px] overflow-y-auto' }}\n triggerProps={{ className: 'cursor-pointer my-2' }}\n />\n ) : null\n"],"names":["MembersSection","members","React","Accordion","Typography","member","Avatar"],"mappings":";;;;AAMO,MAAMA,IAER,CAAC,EAAE,SAAAC,QACNA,EAAQ,SAAS,IACfC,gBAAAA,EAAA;AAAA,EAACC;AAAAA,EAAA;AAAA,IACC,SACED,gBAAAA,EAAA,cAAC,OAAA,EAAI,WAAU,6BACbA,gBAAAA,EAAA,cAACE,GAAA,EAAW,SAAQ,SAAQ,WAAU,eAAA,GAAe,aACzCH,EAAQ,QAAO,GAC3B,CACF;AAAA,IAEF,yCACG,OAAA,EAAI,WAAU,yBACZA,EAAQ,IAAI,CAACI,MACZH,gBAAAA,EAAA;AAAA,MAAC;AAAA,MAAA;AAAA,QACC,KAAKG,EAAO;AAAA,QACZ,WAAU;AAAA,MAAA;AAAA,MAEVH,gBAAAA,EAAA;AAAA,QAACI;AAAAA,QAAA;AAAA,UACC,MAAK;AAAA,UACL,UAAUD,EAAO,YAAY;AAAA,UAC7B,KAAKA,EAAO,OAAOA,EAAO;AAAA,UAC1B,UACEA,EAAO,YAAYA,EAAO,OAAO,CAAC,EAAE,iBAAiB;AAAA,UAEvD,aAAa;AAAA,YACX,WAAW;AAAA,UAAA;AAAA,UAEZ,GAAGA;AAAA,QAAA;AAAA,MAAA;AAAA,MAENH,gBAAAA,EAAA,cAACE,GAAA,EAAW,SAAQ,QAAA,GAASC,EAAO,IAAK;AAAA,IAAA,CAE5C,CACH;AAAA,IAEF,cAAc,EAAE,WAAW,gCAAA;AAAA,IAC3B,cAAc,EAAE,WAAW,sBAAA;AAAA,EAAsB;AACnD,IACE;"}
@@ -1,189 +1,23 @@
1
1
  import e from "react";
2
- import { Typography as s } from "./index.es19.js";
3
- import { Checkbox as N } from "@radix-ui/react-checkbox";
4
- import { AccordionDemo as I } from "./index.es4.js";
5
- import { Badge as b } from "./index.es8.js";
6
- import { FormFieldType as a } from "./index.es131.js";
7
- const x = ({
8
- structure: u,
9
- values: o
10
- }) => {
11
- const E = (r, n) => {
12
- if (r.type === a.REPEATABLE_GROUP_FIELD) {
13
- const t = `${r.id}||`, c = /* @__PURE__ */ new Set();
14
- Object.keys(o).forEach((i) => {
15
- if (i.startsWith(t)) {
16
- const m = i.match(new RegExp(`^${r.id}\\|\\|(\\d+)\\|\\|`));
17
- m && m[1] && c.add(parseInt(m[1]));
18
- }
19
- });
20
- const l = Array.from(c).sort((i, m) => i - m);
21
- return l.length === 0 ? [] : l.flatMap((i) => r.options.map((m) => {
22
- const d = `${r.id}||${i}||${m.id}`, _ = o[d], p = {
23
- ...m,
24
- id: d
25
- };
26
- return /* @__PURE__ */ e.createElement(e.Fragment, { key: d }, g(p), E(p, _));
27
- }));
28
- }
29
- if (n == null || n === "")
30
- return /* @__PURE__ */ e.createElement(s, { variant: "body2", className: "text-light-4" }, "Not answered");
31
- switch (r.type) {
32
- case a.SHORT_TEXT:
33
- case a.LONG_TEXT:
34
- case a.EMAIL:
35
- case a.NUMBER:
36
- case a.MOBILE_NUMBER:
37
- case a.SINGLE_VIDEO_PICKER_WITH_INPUT:
38
- return /* @__PURE__ */ e.createElement(s, { variant: "body2", className: "text-light-1" }, n);
39
- case a.DATE_PICKER:
40
- return /* @__PURE__ */ e.createElement(s, { variant: "body2", className: "text-light-1" }, new Date(n * 1e3).toLocaleDateString());
41
- case a.SINGLE_COMBOBOX:
42
- case a.RADIO_GROUP:
43
- return /* @__PURE__ */ e.createElement(s, { variant: "body2", className: "text-light-1" }, n);
44
- case a.CHECKBOX_GROUP: {
45
- const t = o[r.id];
46
- return /* @__PURE__ */ e.createElement("div", { className: "flex flex-col gap-2" }, r.options.map((c) => /* @__PURE__ */ e.createElement("div", { key: c, className: "flex items-center space-x-2" }, /* @__PURE__ */ e.createElement(
47
- N,
48
- {
49
- disabled: !0,
50
- id: c,
51
- checked: t?.split(",").includes(c)
52
- }
53
- ), /* @__PURE__ */ e.createElement(s, { variant: "body1", className: "text-light-4" }, c))));
54
- }
55
- case a.MULTI_COMBOBOX:
56
- case a.CREATABLE_MULTI_COMBOBOX:
57
- return /* @__PURE__ */ e.createElement(s, { variant: "body2", className: "text-light-1" }, typeof n == "string" ? n.split(",").join(", ") : null);
58
- case a.RADIO_GROUP_WITH_OPTIONAL_INPUT: {
59
- const t = n;
60
- return /* @__PURE__ */ e.createElement(s, { variant: "body2", className: "text-light-1" }, t.radio_value, t.input_value && t.radio_value === r.inputTriggerOptionValue && `: ${t.input_value}`);
61
- }
62
- case a.SINGLE_IMAGE_PICKER: {
63
- const t = n;
64
- return /* @__PURE__ */ e.createElement("div", { className: "mt-1" }, /* @__PURE__ */ e.createElement(
65
- "a",
66
- {
67
- href: t.public_url,
68
- target: "_blank",
69
- rel: "noopener noreferrer"
70
- },
71
- /* @__PURE__ */ e.createElement(
72
- "img",
73
- {
74
- src: t.public_url,
75
- alt: r.name,
76
- className: "object-cover w-full h-32 rounded-md hover:opacity-90"
77
- }
78
- )
79
- ));
80
- }
81
- case a.SINGLE_VIDEO_PICKER: {
82
- const t = n;
83
- return /* @__PURE__ */ e.createElement("div", { className: "mt-1" }, /* @__PURE__ */ e.createElement(
84
- "video",
85
- {
86
- src: t.public_url,
87
- controls: !0,
88
- className: "w-full h-32 rounded-md"
89
- },
90
- /* @__PURE__ */ e.createElement(
91
- "track",
92
- {
93
- kind: "captions",
94
- label: "English captions",
95
- srcLang: "en",
96
- src: "",
97
- default: !0
98
- }
99
- )
100
- ));
101
- }
102
- case a.MULTI_IMAGE_PICKER: {
103
- const t = n;
104
- return /* @__PURE__ */ e.createElement("div", { className: "grid grid-cols-1 gap-2 mt-1 sm:grid-cols-3 md:grid-cols-4" }, t.map((c, l) => /* @__PURE__ */ e.createElement(
105
- "a",
106
- {
107
- key: l,
108
- href: c.public_url,
109
- target: "_blank",
110
- rel: "noopener noreferrer"
111
- },
112
- /* @__PURE__ */ e.createElement(
113
- "img",
114
- {
115
- src: c.public_url,
116
- alt: r.name,
117
- className: "object-cover w-full h-32 rounded-md hover:opacity-90"
118
- }
119
- )
120
- )));
121
- }
122
- case a.MULTI_VIDEO_PICKER: {
123
- const t = n;
124
- return /* @__PURE__ */ e.createElement("div", { className: "grid grid-cols-1 gap-4 mt-1 sm:grid-cols-2" }, t.map((c, l) => /* @__PURE__ */ e.createElement("div", { key: l, className: "flex flex-col" }, /* @__PURE__ */ e.createElement(
125
- "video",
126
- {
127
- src: c.public_url,
128
- controls: !0,
129
- className: "h-32 rounded-md"
130
- },
131
- /* @__PURE__ */ e.createElement(
132
- "track",
133
- {
134
- kind: "captions",
135
- label: "English captions",
136
- srcLang: "en",
137
- src: "",
138
- default: !0
139
- }
140
- )
141
- ))));
142
- }
143
- case a.TAGGABLE_MULTI_IMAGE_PICKER:
144
- case a.TAGGABLE_MULTI_IMAGE_PICKER_WITH_INPUT: {
145
- const t = n;
146
- return /* @__PURE__ */ e.createElement("div", { className: "grid grid-cols-1 gap-2 mt-1 sm:grid-cols-3 md:grid-cols-4" }, t.map((c, l) => /* @__PURE__ */ e.createElement("div", { key: l, className: "relative" }, /* @__PURE__ */ e.createElement(
147
- "a",
148
- {
149
- key: l,
150
- href: c.public_url,
151
- target: "_blank",
152
- rel: "noopener noreferrer"
153
- },
154
- /* @__PURE__ */ e.createElement(
155
- "img",
156
- {
157
- src: c.public_url,
158
- alt: r.name,
159
- className: "object-cover w-full h-32 rounded-md hover:opacity-90"
160
- }
161
- )
162
- ), /* @__PURE__ */ e.createElement(
163
- b,
164
- {
165
- className: "absolute bottom-2 right-2 ",
166
- variant: "select"
167
- },
168
- c.tag && c.tag.length > 8 ? `${c.tag.substring(0, 8)}...` : c.tag
169
- ))));
170
- }
171
- default:
172
- return /* @__PURE__ */ e.createElement(s, { variant: "body2", className: "text-light-4" }, "Unsupported field type");
173
- }
174
- }, g = (r) => /* @__PURE__ */ e.createElement(s, { variant: "body1", className: "mb-1 text-light-3" }, r.name, r.required && /* @__PURE__ */ e.createElement("span", { className: "text-danger-1" }, "*"));
175
- return /* @__PURE__ */ e.createElement("div", { className: "" }, u.steps.map((r) => /* @__PURE__ */ e.createElement(
176
- I,
177
- {
178
- key: r.id,
179
- trigger: /* @__PURE__ */ e.createElement("div", { className: "flex items-center gap-2" }, /* @__PURE__ */ e.createElement(s, { variant: "h3", className: "text-light-2" }, r.name)),
180
- triggerProps: { className: "mt-4 " },
181
- contentProps: { className: "mt-4 p-2 bg-light-2 rounded" },
182
- content: r.sections.map((n) => /* @__PURE__ */ e.createElement("div", { key: n.id, className: "mb-4" }, /* @__PURE__ */ e.createElement(s, { variant: "h3", className: "mb-2 text-light-2" }, n.name), /* @__PURE__ */ e.createElement("div", { className: "flex flex-col gap-3" }, n.fields.map((t) => /* @__PURE__ */ e.createElement("div", { key: t.id, className: "last:border-b-0" }, g(t), E(t, o[t.id]))))))
183
- }
184
- )));
185
- };
2
+ import { AccordionDemo as m } from "./index.es4.js";
3
+ import { Typography as a } from "./index.es19.js";
4
+ const i = ({ servingStates: t }) => t && t.length > 0 ? /* @__PURE__ */ e.createElement(
5
+ m,
6
+ {
7
+ trigger: /* @__PURE__ */ e.createElement(a, { variant: "body1", className: "text-light-2" }, "Serving states"),
8
+ content: /* @__PURE__ */ e.createElement("div", { className: "flex flex-wrap gap-1" }, t.map((r, o) => /* @__PURE__ */ e.createElement(
9
+ a,
10
+ {
11
+ key: r + o,
12
+ variant: "body4",
13
+ className: "rounded bg-primary-1 px-2 py-0.5 text-xs text-light-3"
14
+ },
15
+ r
16
+ ))),
17
+ triggerProps: { className: "cursor-pointer my-2" }
18
+ }
19
+ ) : null;
186
20
  export {
187
- x as FormReadOnlyView
21
+ i as ServingStatesSection
188
22
  };
189
23
  //# sourceMappingURL=index.es102.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.es102.js","sources":["../src/components/ui/form-renderer/components/form-read-only-view.tsx"],"sourcesContent":["// components/form-readonly-view.tsx\nimport React, { ReactNode } from 'react'\nimport {\n FormStructure,\n FormValues,\n FormField,\n FormFieldValue,\n AssetValue,\n TaggableAssetValue,\n RadioGroupWithInputFieldValue,\n} from './../form.types'\nimport { Typography } from '@/components/atoms/typography'\nimport { Checkbox } from '@radix-ui/react-checkbox'\nimport { Accordion } from '@/components/atoms/accordion'\nimport { Badge } from '@/components/atoms/badge'\n\nimport { FormFieldType } from '../form.enums'\n\ninterface FormReadOnlyViewProps {\n structure: FormStructure\n values: FormValues\n}\n\nexport const FormReadOnlyView: React.FC<FormReadOnlyViewProps> = ({\n structure,\n values,\n}) => {\n // Helper function to render field value based on type\n const renderFieldValue = (\n field: FormField,\n value: FormFieldValue\n ): ReactNode => {\n // Special handling for repeatable groups, Since values[field.id] wont exist for repeatable groups\n\n if (field.type === FormFieldType.REPEATABLE_GROUP_FIELD) {\n const prefix = `${field.id}||`\n const entryIndices = new Set<number>()\n\n // Extract unique entry indices from the keys present in `values`\n Object.keys(values).forEach((key) => {\n if (key.startsWith(prefix)) {\n // Regex to capture the index part: field.id||INDEX||subfield.id\n // Assuming field.id does not contain characters that need escaping for RegExp\n const match = key.match(new RegExp(`^${field.id}\\\\|\\\\|(\\\\d+)\\\\|\\\\|`))\n if (match && match[1]) {\n entryIndices.add(parseInt(match[1]))\n }\n }\n })\n\n // Sort indices numerically\n const sortedIndices = Array.from(entryIndices).sort((a, b) => a - b)\n\n if (sortedIndices.length === 0) {\n return [] // No entries to render\n }\n\n // Use flatMap to iterate through each entry index, then each sub-field template,\n // and flatten the results into a single array of React elements.\n return sortedIndices.flatMap((entryIndex) => {\n // For each entry, map over its defined sub-fields from the field's options\n return field.options.map((subFieldTemplate) => {\n // Construct the unique key for this specific instance of the sub-field\n const instanceKey = `${field.id}||${entryIndex}||${subFieldTemplate.id}`\n const value = values[instanceKey] // Get the value for this specific instance\n\n // Create a new field object for this instance,\n // using the subFieldTemplate and overriding its 'id' with the unique instanceKey.\n const instanceSpecificSubField: FormField = {\n ...subFieldTemplate,\n id: instanceKey,\n }\n\n return (\n <React.Fragment key={instanceKey}>\n {renderQuestionLabel(instanceSpecificSubField)}\n {renderFieldValue(instanceSpecificSubField, value)}\n </React.Fragment>\n )\n })\n })\n }\n\n if (value === undefined || value === null || value === '') {\n return (\n <Typography variant=\"body2\" className=\"text-light-4\">\n Not answered\n </Typography>\n )\n }\n\n switch (field.type) {\n case FormFieldType.SHORT_TEXT:\n case FormFieldType.LONG_TEXT:\n case FormFieldType.EMAIL:\n case FormFieldType.NUMBER:\n case FormFieldType.MOBILE_NUMBER:\n case FormFieldType.SINGLE_VIDEO_PICKER_WITH_INPUT:\n return (\n <Typography variant=\"body2\" className=\"text-light-1\">\n {value as string}\n </Typography>\n )\n\n case FormFieldType.DATE_PICKER:\n return (\n <Typography variant=\"body2\" className=\"text-light-1\">\n {new Date((value as number) * 1000).toLocaleDateString()}\n </Typography>\n )\n\n case FormFieldType.SINGLE_COMBOBOX:\n case FormFieldType.RADIO_GROUP:\n return (\n <Typography variant=\"body2\" className=\"text-light-1\">\n {value as string}\n </Typography>\n )\n\n case FormFieldType.CHECKBOX_GROUP: {\n const value = values[field.id] as string\n return (\n <div className=\"flex flex-col gap-2\">\n {field.options.map((option) => {\n return (\n <div key={option} className=\"flex items-center space-x-2\">\n <Checkbox\n disabled\n id={option}\n checked={value?.split(',').includes(option)}\n />\n <Typography variant=\"body1\" className=\"text-light-4\">\n {option}\n </Typography>\n </div>\n )\n })}\n </div>\n )\n }\n case FormFieldType.MULTI_COMBOBOX:\n case FormFieldType.CREATABLE_MULTI_COMBOBOX:\n return (\n <Typography variant=\"body2\" className=\"text-light-1\">\n {typeof value === 'string' ? value.split(',').join(', ') : null}\n </Typography>\n )\n\n case FormFieldType.RADIO_GROUP_WITH_OPTIONAL_INPUT: {\n const radioValue = value as RadioGroupWithInputFieldValue\n return (\n <Typography variant=\"body2\" className=\"text-light-1\">\n {radioValue.radio_value}\n {radioValue.input_value &&\n radioValue.radio_value === field.inputTriggerOptionValue &&\n `: ${radioValue.input_value}`}\n </Typography>\n )\n }\n\n // For single image/video uploads\n case FormFieldType.SINGLE_IMAGE_PICKER: {\n const asset = value as AssetValue\n return (\n <div className=\"mt-1\">\n <a\n href={asset.public_url}\n target=\"_blank\"\n rel=\"noopener noreferrer\"\n >\n <img\n src={asset.public_url}\n alt={field.name}\n className=\"object-cover w-full h-32 rounded-md hover:opacity-90\"\n />\n </a>\n </div>\n )\n }\n\n case FormFieldType.SINGLE_VIDEO_PICKER: {\n const asset = value as AssetValue\n return (\n <div className=\"mt-1\">\n <video\n src={asset.public_url}\n controls\n className=\"w-full h-32 rounded-md\"\n >\n <track\n kind=\"captions\"\n label=\"English captions\"\n srcLang=\"en\"\n src=\"\"\n default\n />\n </video>\n </div>\n )\n }\n\n case FormFieldType.MULTI_IMAGE_PICKER: {\n const assets = value as AssetValue[]\n return (\n <div className=\"grid grid-cols-1 gap-2 mt-1 sm:grid-cols-3 md:grid-cols-4\">\n {assets.map((asset, index) => (\n <a\n key={index}\n href={asset.public_url}\n target=\"_blank\"\n rel=\"noopener noreferrer\"\n >\n <img\n src={asset.public_url}\n alt={field.name}\n className=\"object-cover w-full h-32 rounded-md hover:opacity-90\"\n />\n </a>\n ))}\n </div>\n )\n }\n\n case FormFieldType.MULTI_VIDEO_PICKER: {\n const assets = value as AssetValue[]\n return (\n <div className=\"grid grid-cols-1 gap-4 mt-1 sm:grid-cols-2\">\n {assets.map((asset, index) => (\n <div key={index} className=\"flex flex-col\">\n <video\n src={asset.public_url}\n controls\n className=\"h-32 rounded-md\"\n >\n <track\n kind=\"captions\"\n label=\"English captions\"\n srcLang=\"en\"\n src=\"\"\n default\n />\n </video>\n </div>\n ))}\n </div>\n )\n }\n\n case FormFieldType.TAGGABLE_MULTI_IMAGE_PICKER:\n case FormFieldType.TAGGABLE_MULTI_IMAGE_PICKER_WITH_INPUT: {\n const taggedAssets = value as TaggableAssetValue[]\n return (\n <div className=\"grid grid-cols-1 gap-2 mt-1 sm:grid-cols-3 md:grid-cols-4\">\n {taggedAssets.map((asset, index) => (\n <div key={index} className=\"relative\">\n <a\n key={index}\n href={asset.public_url}\n target=\"_blank\"\n rel=\"noopener noreferrer\"\n >\n <img\n src={asset.public_url}\n alt={field.name}\n className=\"object-cover w-full h-32 rounded-md hover:opacity-90\"\n />\n </a>\n <Badge\n className=\"absolute bottom-2 right-2 \"\n variant={'select'}\n >\n {asset.tag && asset.tag.length > 8\n ? `${asset.tag.substring(0, 8)}...`\n : asset.tag}\n </Badge>\n </div>\n ))}\n </div>\n )\n }\n\n default:\n return (\n <Typography variant=\"body2\" className=\"text-light-4\">\n Unsupported field type\n </Typography>\n )\n }\n }\n\n const renderQuestionLabel = (field: FormField): ReactNode => {\n return (\n <Typography variant=\"body1\" className=\"mb-1 text-light-3\">\n {field.name}\n {field.required && <span className=\"text-danger-1\">*</span>}\n </Typography>\n )\n }\n\n return (\n <div className=\"\">\n {structure.steps.map((step) => (\n <Accordion\n key={step.id}\n trigger={\n <div className=\"flex items-center gap-2\">\n <Typography variant=\"h3\" className=\"text-light-2\">\n {step.name}\n </Typography>\n </div>\n }\n triggerProps={{ className: 'mt-4 ' }}\n contentProps={{ className: 'mt-4 p-2 bg-light-2 rounded' }}\n content={step.sections.map((section) => (\n <div key={section.id} className=\"mb-4\">\n <Typography variant=\"h3\" className=\"mb-2 text-light-2\">\n {section.name}\n </Typography>\n\n <div className=\"flex flex-col gap-3\">\n {section.fields.map((field) => (\n <div key={field.id} className=\"last:border-b-0\">\n {renderQuestionLabel(field)}\n {renderFieldValue(field, values[field.id])}\n </div>\n ))}\n </div>\n </div>\n ))}\n />\n ))}\n </div>\n )\n}\n"],"names":["FormReadOnlyView","structure","values","renderFieldValue","field","value","FormFieldType","prefix","entryIndices","key","match","sortedIndices","a","b","entryIndex","subFieldTemplate","instanceKey","instanceSpecificSubField","React","renderQuestionLabel","Typography","option","Checkbox","radioValue","asset","assets","index","taggedAssets","Badge","step","Accordion","section"],"mappings":"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"}
1
+ {"version":3,"file":"index.es102.js","sources":["../src/components/ui/agent-snippet-view/components/serving-states-section.tsx"],"sourcesContent":["import React from 'react'\nimport { Accordion } from '@/components/atoms/accordion'\nimport { Typography } from '@/components/atoms/typography'\n\nexport const ServingStatesSection: React.FC<{\n servingStates?: string[]\n}> = ({ servingStates }) =>\n servingStates && servingStates.length > 0 ? (\n <Accordion\n trigger={\n <Typography variant=\"body1\" className=\"text-light-2\">\n Serving states\n </Typography>\n }\n content={\n <div className=\"flex flex-wrap gap-1\">\n {servingStates.map((state, idx) => (\n <Typography\n key={state + idx}\n variant=\"body4\"\n className=\"rounded bg-primary-1 px-2 py-0.5 text-xs text-light-3\"\n >\n {state}\n </Typography>\n ))}\n </div>\n }\n triggerProps={{ className: 'cursor-pointer my-2' }}\n />\n ) : null\n"],"names":["ServingStatesSection","servingStates","React","Accordion","Typography","state","idx"],"mappings":";;;AAIO,MAAMA,IAER,CAAC,EAAE,eAAAC,QACNA,KAAiBA,EAAc,SAAS,IACtCC,gBAAAA,EAAA;AAAA,EAACC;AAAAA,EAAA;AAAA,IACC,SACED,gBAAAA,EAAA,cAACE,GAAA,EAAW,SAAQ,SAAQ,WAAU,kBAAe,gBAErD;AAAA,IAEF,yCACG,OAAA,EAAI,WAAU,0BACZH,EAAc,IAAI,CAACI,GAAOC,MACzBJ,gBAAAA,EAAA;AAAA,MAACE;AAAA,MAAA;AAAA,QACC,KAAKC,IAAQC;AAAA,QACb,SAAQ;AAAA,QACR,WAAU;AAAA,MAAA;AAAA,MAETD;AAAA,IAAA,CAEJ,CACH;AAAA,IAEF,cAAc,EAAE,WAAW,sBAAA;AAAA,EAAsB;AACnD,IACE;"}
@@ -1,26 +1,23 @@
1
- import l, { useState as a } from "react";
2
- import { FormStructureContext as c } from "./index.es129.js";
3
- const f = ({ children: n, structure: e }) => {
4
- const [t, o] = a(0), r = () => {
5
- t < e.steps.length - 1 && o(t + 1);
6
- }, p = () => {
7
- t > 0 && o(t - 1);
8
- }, S = (s) => {
9
- s >= 0 && s < e.steps.length && o(s);
10
- }, i = {
11
- structure: e,
12
- currentStepIndex: t,
13
- currentStep: e.steps[t],
14
- goToNextStep: r,
15
- goToPreviousStep: p,
16
- goToStep: S,
17
- isFirstStep: t === 0,
18
- isLastStep: t === e.steps.length - 1,
19
- totalSteps: e.steps.length
20
- };
21
- return /* @__PURE__ */ l.createElement(c.Provider, { value: i }, n);
22
- };
1
+ import e from "react";
2
+ import { AccordionDemo as m } from "./index.es4.js";
3
+ import { Typography as a } from "./index.es19.js";
4
+ const i = ({ types: t }) => t && t.length > 0 ? /* @__PURE__ */ e.createElement(
5
+ m,
6
+ {
7
+ trigger: /* @__PURE__ */ e.createElement(a, { variant: "body1", className: "text-light-2" }, "Types"),
8
+ content: /* @__PURE__ */ e.createElement("div", { className: "flex flex-wrap gap-1" }, t.map((r, o) => /* @__PURE__ */ e.createElement(
9
+ a,
10
+ {
11
+ key: r + o,
12
+ variant: "body4",
13
+ className: "rounded bg-primary-1 px-2 py-0.5 text-xs text-light-3"
14
+ },
15
+ r
16
+ ))),
17
+ triggerProps: { className: "cursor-pointer my-2" }
18
+ }
19
+ ) : null;
23
20
  export {
24
- f as FormStructureProvider
21
+ i as TypeSection
25
22
  };
26
23
  //# sourceMappingURL=index.es103.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.es103.js","sources":["../src/components/ui/form-renderer/context/form-structure/form-structure.provider.tsx"],"sourcesContent":["import React, { useState } from 'react'\nimport { FormStructureContext } from './form-structure.context'\nimport { FormStructure } from '../../form.types'\n\nexport const FormStructureProvider: React.FC<{\n children: React.ReactNode\n structure: FormStructure\n}> = ({ children, structure }) => {\n const [currentStepIndex, setCurrentStepIndex] = useState(0)\n\n const goToNextStep = () => {\n if (currentStepIndex < structure.steps.length - 1) {\n setCurrentStepIndex(currentStepIndex + 1)\n }\n }\n\n const goToPreviousStep = () => {\n if (currentStepIndex > 0) {\n setCurrentStepIndex(currentStepIndex - 1)\n }\n }\n\n const goToStep = (stepIndex: number) => {\n if (stepIndex >= 0 && stepIndex < structure.steps.length) {\n setCurrentStepIndex(stepIndex)\n }\n }\n\n const value = {\n structure,\n currentStepIndex,\n currentStep: structure.steps[currentStepIndex],\n goToNextStep,\n goToPreviousStep,\n goToStep,\n isFirstStep: currentStepIndex === 0,\n isLastStep: currentStepIndex === structure.steps.length - 1,\n totalSteps: structure.steps.length,\n }\n\n return (\n <FormStructureContext.Provider value={value}>\n {children}\n </FormStructureContext.Provider>\n )\n}\n"],"names":["FormStructureProvider","children","structure","currentStepIndex","setCurrentStepIndex","useState","goToNextStep","goToPreviousStep","goToStep","stepIndex","value","React","FormStructureContext"],"mappings":";;AAIO,MAAMA,IAGR,CAAC,EAAE,UAAAC,GAAU,WAAAC,QAAgB;AAChC,QAAM,CAACC,GAAkBC,CAAmB,IAAIC,EAAS,CAAC,GAEpDC,IAAe,MAAM;AACzB,IAAIH,IAAmBD,EAAU,MAAM,SAAS,KAC9CE,EAAoBD,IAAmB,CAAC;AAAA,EAE5C,GAEMI,IAAmB,MAAM;AAC7B,IAAIJ,IAAmB,KACrBC,EAAoBD,IAAmB,CAAC;AAAA,EAE5C,GAEMK,IAAW,CAACC,MAAsB;AACtC,IAAIA,KAAa,KAAKA,IAAYP,EAAU,MAAM,UAChDE,EAAoBK,CAAS;AAAA,EAEjC,GAEMC,IAAQ;AAAA,IACZ,WAAAR;AAAA,IACA,kBAAAC;AAAA,IACA,aAAaD,EAAU,MAAMC,CAAgB;AAAA,IAC7C,cAAAG;AAAA,IACA,kBAAAC;AAAA,IACA,UAAAC;AAAA,IACA,aAAaL,MAAqB;AAAA,IAClC,YAAYA,MAAqBD,EAAU,MAAM,SAAS;AAAA,IAC1D,YAAYA,EAAU,MAAM;AAAA,EAAA;AAG9B,SACES,gBAAAA,EAAA,cAACC,EAAqB,UAArB,EAA8B,OAAAF,KAC5BT,CACH;AAEJ;"}
1
+ {"version":3,"file":"index.es103.js","sources":["../src/components/ui/agent-snippet-view/components/agent-type-section.tsx"],"sourcesContent":["import React from 'react'\nimport { Accordion } from '@/components/atoms/accordion'\nimport { Typography } from '@/components/atoms/typography'\n\nexport const TypeSection: React.FC<{\n types?: string[]\n}> = ({ types }) =>\n types && types.length > 0 ? (\n <Accordion\n trigger={\n <Typography variant=\"body1\" className=\"text-light-2\">\n Types\n </Typography>\n }\n content={\n <div className=\"flex flex-wrap gap-1\">\n {types.map((type, idx) => (\n <Typography\n key={type + idx}\n variant=\"body4\"\n className=\"rounded bg-primary-1 px-2 py-0.5 text-xs text-light-3\"\n >\n {type}\n </Typography>\n ))}\n </div>\n }\n triggerProps={{ className: 'cursor-pointer my-2' }}\n />\n ) : null\n"],"names":["TypeSection","types","React","Accordion","Typography","type","idx"],"mappings":";;;AAIO,MAAMA,IAER,CAAC,EAAE,OAAAC,QACNA,KAASA,EAAM,SAAS,IACtBC,gBAAAA,EAAA;AAAA,EAACC;AAAAA,EAAA;AAAA,IACC,SACED,gBAAAA,EAAA,cAACE,GAAA,EAAW,SAAQ,SAAQ,WAAU,kBAAe,OAErD;AAAA,IAEF,yCACG,OAAA,EAAI,WAAU,0BACZH,EAAM,IAAI,CAACI,GAAMC,MAChBJ,gBAAAA,EAAA;AAAA,MAACE;AAAA,MAAA;AAAA,QACC,KAAKC,IAAOC;AAAA,QACZ,SAAQ;AAAA,QACR,WAAU;AAAA,MAAA;AAAA,MAETD;AAAA,IAAA,CAEJ,CACH;AAAA,IAEF,cAAc,EAAE,WAAW,sBAAA;AAAA,EAAsB;AACnD,IACE;"}