geoiq-frontend-ui-kit 2.0.2 → 2.0.4

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 (217) hide show
  1. package/dist/components/organisms/image-editor/components/line-session-bar.d.ts +20 -0
  2. package/dist/components/organisms/image-editor/components/line-session-bar.d.ts.map +1 -0
  3. package/dist/components/organisms/image-editor/components/panel-insert.d.ts.map +1 -1
  4. package/dist/components/organisms/image-editor/components/panel-selected.d.ts.map +1 -1
  5. package/dist/components/organisms/image-editor/components/panel.d.ts.map +1 -1
  6. package/dist/components/organisms/image-editor/components/saved-layers-list.d.ts +9 -0
  7. package/dist/components/organisms/image-editor/components/saved-layers-list.d.ts.map +1 -0
  8. package/dist/components/organisms/image-editor/image-editor-modal.d.ts.map +1 -1
  9. package/dist/components/organisms/image-editor/image-editor.types.d.ts +73 -0
  10. package/dist/components/organisms/image-editor/image-editor.types.d.ts.map +1 -1
  11. package/dist/components/organisms/image-editor/use-image-editor.d.ts.map +1 -1
  12. package/dist/components/ui/request-credits-view/component/request-credit-dialog.d.ts.map +1 -1
  13. package/dist/index.es100.js +147 -120
  14. package/dist/index.es100.js.map +1 -1
  15. package/dist/index.es101.js +16 -11
  16. package/dist/index.es101.js.map +1 -1
  17. package/dist/index.es102.js +7 -41
  18. package/dist/index.es102.js.map +1 -1
  19. package/dist/index.es103.js +21 -10
  20. package/dist/index.es103.js.map +1 -1
  21. package/dist/index.es104.js +7 -74
  22. package/dist/index.es104.js.map +1 -1
  23. package/dist/index.es105.js +177 -30
  24. package/dist/index.es105.js.map +1 -1
  25. package/dist/index.es106.js +45 -16
  26. package/dist/index.es106.js.map +1 -1
  27. package/dist/index.es107.js +42 -20
  28. package/dist/index.es107.js.map +1 -1
  29. package/dist/index.es108.js +22 -12
  30. package/dist/index.es108.js.map +1 -1
  31. package/dist/index.es109.js +122 -98
  32. package/dist/index.es109.js.map +1 -1
  33. package/dist/index.es11.js +1 -1
  34. package/dist/index.es110.js +33 -62
  35. package/dist/index.es110.js.map +1 -1
  36. package/dist/index.es111.js +60 -52
  37. package/dist/index.es111.js.map +1 -1
  38. package/dist/index.es112.js +10 -41
  39. package/dist/index.es112.js.map +1 -1
  40. package/dist/index.es113.js +21 -11
  41. package/dist/index.es113.js.map +1 -1
  42. package/dist/index.es114.js +42 -92
  43. package/dist/index.es114.js.map +1 -1
  44. package/dist/index.es115.js +37 -16
  45. package/dist/index.es115.js.map +1 -1
  46. package/dist/index.es116.js +12 -99
  47. package/dist/index.es116.js.map +1 -1
  48. package/dist/index.es117.js +92 -13
  49. package/dist/index.es117.js.map +1 -1
  50. package/dist/index.es118.js +13 -101
  51. package/dist/index.es118.js.map +1 -1
  52. package/dist/index.es119.js +71 -20
  53. package/dist/index.es119.js.map +1 -1
  54. package/dist/index.es12.js +1 -1
  55. package/dist/index.es120.js +34 -25
  56. package/dist/index.es120.js.map +1 -1
  57. package/dist/index.es121.js +20 -22
  58. package/dist/index.es121.js.map +1 -1
  59. package/dist/index.es122.js +16 -45
  60. package/dist/index.es122.js.map +1 -1
  61. package/dist/index.es123.js +11 -34
  62. package/dist/index.es123.js.map +1 -1
  63. package/dist/index.es124.js +96 -61
  64. package/dist/index.es124.js.map +1 -1
  65. package/dist/index.es125.js +57 -174
  66. package/dist/index.es125.js.map +1 -1
  67. package/dist/index.es126.js +50 -17
  68. package/dist/index.es126.js.map +1 -1
  69. package/dist/index.es127.js +2 -2
  70. package/dist/index.es128.js +2 -2
  71. package/dist/index.es129.js +1 -1
  72. package/dist/index.es130.js +1 -1
  73. package/dist/index.es131.js +2 -2
  74. package/dist/index.es132.js +35 -38
  75. package/dist/index.es132.js.map +1 -1
  76. package/dist/index.es133.js +41 -7
  77. package/dist/index.es133.js.map +1 -1
  78. package/dist/index.es134.js +88 -7
  79. package/dist/index.es134.js.map +1 -1
  80. package/dist/index.es135.js +14 -34
  81. package/dist/index.es135.js.map +1 -1
  82. package/dist/index.es136.js +269 -35
  83. package/dist/index.es136.js.map +1 -1
  84. package/dist/index.es137.js +7 -2
  85. package/dist/index.es137.js.map +1 -1
  86. package/dist/index.es138.js +23 -25
  87. package/dist/index.es138.js.map +1 -1
  88. package/dist/index.es139.js +169 -15
  89. package/dist/index.es139.js.map +1 -1
  90. package/dist/index.es140.js +82 -7
  91. package/dist/index.es140.js.map +1 -1
  92. package/dist/index.es141.js +73 -21
  93. package/dist/index.es141.js.map +1 -1
  94. package/dist/index.es142.js +3 -168
  95. package/dist/index.es142.js.map +1 -1
  96. package/dist/index.es143.js +56 -82
  97. package/dist/index.es143.js.map +1 -1
  98. package/dist/index.es144.js +119 -4
  99. package/dist/index.es144.js.map +1 -1
  100. package/dist/index.es145.js +405 -56
  101. package/dist/index.es145.js.map +1 -1
  102. package/dist/index.es146.js +25 -110
  103. package/dist/index.es146.js.map +1 -1
  104. package/dist/index.es147.js +60 -314
  105. package/dist/index.es147.js.map +1 -1
  106. package/dist/index.es148.js +29 -24
  107. package/dist/index.es148.js.map +1 -1
  108. package/dist/index.es149.js +21 -64
  109. package/dist/index.es149.js.map +1 -1
  110. package/dist/index.es150.js +36 -30
  111. package/dist/index.es150.js.map +1 -1
  112. package/dist/index.es151.js +211 -24
  113. package/dist/index.es151.js.map +1 -1
  114. package/dist/index.es152.js +141 -35
  115. package/dist/index.es152.js.map +1 -1
  116. package/dist/index.es153.js +141 -140
  117. package/dist/index.es153.js.map +1 -1
  118. package/dist/index.es154.js +45 -142
  119. package/dist/index.es154.js.map +1 -1
  120. package/dist/index.es155.js +353 -45
  121. package/dist/index.es155.js.map +1 -1
  122. package/dist/index.es156.js +14 -10
  123. package/dist/index.es156.js.map +1 -1
  124. package/dist/index.es157.js +10 -42
  125. package/dist/index.es157.js.map +1 -1
  126. package/dist/index.es158.js +44 -5
  127. package/dist/index.es158.js.map +1 -1
  128. package/dist/index.es159.js +5 -11
  129. package/dist/index.es159.js.map +1 -1
  130. package/dist/index.es16.js +1 -1
  131. package/dist/index.es160.js +10 -10
  132. package/dist/index.es160.js.map +1 -1
  133. package/dist/index.es161.js +11 -2
  134. package/dist/index.es161.js.map +1 -1
  135. package/dist/index.es162.js +2 -91
  136. package/dist/index.es162.js.map +1 -1
  137. package/dist/index.es163.js +2 -213
  138. package/dist/index.es163.js.map +1 -1
  139. package/dist/index.es164.js +23 -52
  140. package/dist/index.es164.js.map +1 -1
  141. package/dist/index.es165.js +88 -33
  142. package/dist/index.es165.js.map +1 -1
  143. package/dist/index.es166.js +52 -31
  144. package/dist/index.es166.js.map +1 -1
  145. package/dist/index.es167.js +32 -29
  146. package/dist/index.es167.js.map +1 -1
  147. package/dist/index.es168.js +26 -84
  148. package/dist/index.es168.js.map +1 -1
  149. package/dist/index.es169.js +27 -111
  150. package/dist/index.es169.js.map +1 -1
  151. package/dist/index.es170.js +97 -285
  152. package/dist/index.es170.js.map +1 -1
  153. package/dist/index.es171.js +251 -30
  154. package/dist/index.es171.js.map +1 -1
  155. package/dist/index.es172.js +63 -11
  156. package/dist/index.es172.js.map +1 -1
  157. package/dist/index.es173.js +284 -82
  158. package/dist/index.es173.js.map +1 -1
  159. package/dist/index.es174.js +29 -70
  160. package/dist/index.es174.js.map +1 -1
  161. package/dist/index.es175.js +10 -114
  162. package/dist/index.es175.js.map +1 -1
  163. package/dist/index.es176.js +23 -106
  164. package/dist/index.es176.js.map +1 -1
  165. package/dist/index.es177.js +19 -82
  166. package/dist/index.es177.js.map +1 -1
  167. package/dist/index.es178.js +63 -109
  168. package/dist/index.es178.js.map +1 -1
  169. package/dist/index.es179.js +63 -117
  170. package/dist/index.es179.js.map +1 -1
  171. package/dist/index.es180.js +112 -23
  172. package/dist/index.es180.js.map +1 -1
  173. package/dist/index.es181.js +103 -18
  174. package/dist/index.es181.js.map +1 -1
  175. package/dist/index.es182.js +86 -5
  176. package/dist/index.es182.js.map +1 -1
  177. package/dist/index.es183.js +133 -0
  178. package/dist/index.es183.js.map +1 -0
  179. package/dist/index.es184.js +133 -0
  180. package/dist/index.es184.js.map +1 -0
  181. package/dist/index.es185.js +9 -0
  182. package/dist/index.es185.js.map +1 -0
  183. package/dist/index.es19.js +1 -1
  184. package/dist/index.es2.js +21 -21
  185. package/dist/index.es2.js.map +1 -1
  186. package/dist/index.es20.js +1 -1
  187. package/dist/index.es21.js +3 -3
  188. package/dist/index.es22.js +1 -1
  189. package/dist/index.es25.js +1 -1
  190. package/dist/index.es27.js +1 -1
  191. package/dist/index.es28.js +2 -2
  192. package/dist/index.es30.js +1 -1
  193. package/dist/index.es32.js +1 -1
  194. package/dist/index.es33.js +1 -1
  195. package/dist/index.es45.js +48 -46
  196. package/dist/index.es45.js.map +1 -1
  197. package/dist/index.es46.js +2 -2
  198. package/dist/index.es47.js +1 -1
  199. package/dist/index.es48.js +1 -1
  200. package/dist/index.es53.js +1 -1
  201. package/dist/index.es54.js +1 -1
  202. package/dist/index.es57.js +1 -1
  203. package/dist/index.es59.js +1 -1
  204. package/dist/index.es67.js +2 -2
  205. package/dist/index.es68.js +1 -1
  206. package/dist/index.es71.js +1 -1
  207. package/dist/index.es72.js +7 -7
  208. package/dist/index.es73.js +2 -2
  209. package/dist/index.es85.js +1 -1
  210. package/dist/index.es97.js +16 -11
  211. package/dist/index.es97.js.map +1 -1
  212. package/dist/index.es98.js +89 -262
  213. package/dist/index.es98.js.map +1 -1
  214. package/dist/index.es99.js +13 -87
  215. package/dist/index.es99.js.map +1 -1
  216. package/dist/styles.css +55 -0
  217. package/package.json +2 -1
@@ -1,23 +1,45 @@
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;
1
+ import e, { forwardRef as l, useContext as o, createContext as s } from "react";
2
+ import { StepItemStatus as n } from "./index.es31.js";
3
+ import { Typography as i } from "./index.es19.js";
4
+ import { cn as p } from "./index.es89.js";
5
+ import { StepItemVariants as u } from "./index.es156.js";
6
+ const m = s(null), h = l(
7
+ ({ children: a, steps: t, id: r }, c) => /* @__PURE__ */ e.createElement(m.Provider, { value: t }, /* @__PURE__ */ e.createElement("div", { className: "w-[100%]", ref: c, id: r }, a))
8
+ ), w = () => {
9
+ const a = o(m);
10
+ return /* @__PURE__ */ e.createElement("div", { className: "flex justify-between items-center w-[100%]" }, a?.map((t, r) => /* @__PURE__ */ e.createElement(e.Fragment, null, /* @__PURE__ */ e.createElement(
11
+ E,
12
+ {
13
+ key: r,
14
+ value: t,
15
+ variant: t?.status ?? n.PENDING
16
+ }
17
+ ), r !== a.length - 1 && /* @__PURE__ */ e.createElement(
18
+ "div",
19
+ {
20
+ className: ` w-5 grow border-b-2 ${t?.status == n.COMPLETED ? "border-primary-2" : "border-neutral-2"}`
21
+ }
22
+ ))));
23
+ }, E = ({ value: a, ...t }) => {
24
+ const { variant: r } = t;
25
+ return /* @__PURE__ */ e.createElement("div", { className: p(u({ variant: r })) }, r !== n.COMPLETED ? /* @__PURE__ */ e.createElement(
26
+ i,
27
+ {
28
+ variant: "body4",
29
+ style: { textAlign: "center", height: "max-content" }
30
+ },
31
+ a?.label
32
+ ) : /* @__PURE__ */ e.createElement(e.Fragment, null, /* @__PURE__ */ e.createElement("div", null, /* @__PURE__ */ e.createElement(
33
+ "img",
34
+ {
35
+ src: "https://frontend-static-files.geoiq.io/strapi/check_white_e0c342eeb9.svg",
36
+ alt: "check-mark-icon"
37
+ }
38
+ ))));
39
+ };
20
40
  export {
21
- i as TypeSection
41
+ w as StepGroup,
42
+ m as StepperContext,
43
+ h as StepperProvider
22
44
  };
23
45
  //# sourceMappingURL=index.es107.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.es107.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;"}
1
+ {"version":3,"file":"index.es107.js","sources":["../src/components/molecules/stepper/stepper-components.tsx"],"sourcesContent":["import React, {\n PropsWithChildren,\n createContext,\n forwardRef,\n useContext,\n} from 'react'\nimport { StepItemStatus, StepperItemProps, StepperValue } from './stepper.type'\nimport { Typography } from '../../atoms/typography'\nimport { cn } from '@/lib/utils'\nimport { StepItemVariants } from './stepper.styles'\n\ninterface StepperProviderProps extends PropsWithChildren {\n steps: StepperValue[] // Add a steps prop to pass the steps array\n id?: string\n}\n\nconst StepperContext = createContext<StepperValue[] | null>(null) // Context will hold an array of strings\n\nconst StepperProvider = forwardRef<HTMLDivElement, StepperProviderProps>(\n ({ children, steps, id }, ref) => {\n return (\n <StepperContext.Provider value={steps}>\n <div className={'w-[100%]'} ref={ref} id={id}>\n {children}\n </div>\n </StepperContext.Provider>\n )\n }\n)\n\nconst StepGroup = () => {\n const steps = useContext(StepperContext) // Accessing the steps array from context\n\n return (\n <div className=\"flex justify-between items-center w-[100%]\">\n {steps?.map((step, index) => (\n <>\n <StepItem\n key={index}\n value={step}\n variant={step?.status ?? StepItemStatus.PENDING}\n />\n {index !== steps.length - 1 && (\n <div\n className={` w-5 grow border-b-2 ${step?.status == StepItemStatus.COMPLETED ? 'border-primary-2' : 'border-neutral-2'}`}\n />\n )}\n </>\n ))}\n </div>\n )\n}\n\n// individual step item and styles\nconst StepItem = ({ value, ...props }: StepperItemProps) => {\n const { variant } = props\n return (\n <div className={cn(StepItemVariants({ variant }))}>\n {variant !== StepItemStatus.COMPLETED ? (\n <Typography\n variant={'body4'}\n style={{ textAlign: 'center', height: 'max-content' }}\n >\n {value?.label}\n </Typography>\n ) : (\n <>\n <div>\n <img\n src=\"https://frontend-static-files.geoiq.io/strapi/check_white_e0c342eeb9.svg\"\n alt=\"check-mark-icon\"\n />\n </div>\n </>\n )}\n </div>\n )\n}\n\nexport { StepperProvider, StepperContext, StepGroup }\n"],"names":["StepperContext","createContext","StepperProvider","forwardRef","children","steps","id","ref","React","StepGroup","useContext","step","index","StepItem","StepItemStatus","value","props","variant","cn","StepItemVariants","Typography"],"mappings":";;;;;AAgBA,MAAMA,IAAiBC,EAAqC,IAAI,GAE1DC,IAAkBC;AAAA,EACtB,CAAC,EAAE,UAAAC,GAAU,OAAAC,GAAO,IAAAC,EAAA,GAAMC,MAEtBC,gBAAAA,EAAA,cAACR,EAAe,UAAf,EAAwB,OAAOK,KAC9BG,gBAAAA,EAAA,cAAC,OAAA,EAAI,WAAW,YAAY,KAAAD,GAAU,IAAAD,EAAA,GACnCF,CACH,CACF;AAGN,GAEMK,IAAY,MAAM;AACtB,QAAMJ,IAAQK,EAAWV,CAAc;AAEvC,SACEQ,gBAAAA,EAAA,cAAC,SAAI,WAAU,6CAAA,GACZH,GAAO,IAAI,CAACM,GAAMC,MACjBJ,gBAAAA,EAAA,cAAAA,EAAA,UAAA,MACEA,gBAAAA,EAAA;AAAA,IAACK;AAAA,IAAA;AAAA,MACC,KAAKD;AAAA,MACL,OAAOD;AAAA,MACP,SAASA,GAAM,UAAUG,EAAe;AAAA,IAAA;AAAA,EAAA,GAEzCF,MAAUP,EAAM,SAAS,KACxBG,gBAAAA,EAAA;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,WAAW,wBAAwBG,GAAM,UAAUG,EAAe,YAAY,qBAAqB,kBAAkB;AAAA,IAAA;AAAA,EAAA,CAG3H,CACD,CACH;AAEJ,GAGMD,IAAW,CAAC,EAAE,OAAAE,GAAO,GAAGC,QAA8B;AAC1D,QAAM,EAAE,SAAAC,MAAYD;AACpB,SACER,gBAAAA,EAAA,cAAC,OAAA,EAAI,WAAWU,EAAGC,EAAiB,EAAE,SAAAF,EAAA,CAAS,CAAC,EAAA,GAC7CA,MAAYH,EAAe,YAC1BN,gBAAAA,EAAA;AAAA,IAACY;AAAA,IAAA;AAAA,MACC,SAAS;AAAA,MACT,OAAO,EAAE,WAAW,UAAU,QAAQ,cAAA;AAAA,IAAc;AAAA,IAEnDL,GAAO;AAAA,EAAA,IAGVP,gBAAAA,EAAA,cAAAA,EAAA,UAAA,MACEA,gBAAAA,EAAA,cAAC,OAAA,MACCA,gBAAAA,EAAA;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,KAAI;AAAA,MACJ,KAAI;AAAA,IAAA;AAAA,EAAA,CAER,CACF,CAEJ;AAEJ;"}
@@ -1,15 +1,25 @@
1
- import e from "react";
2
- import { AccordionDemo as r } from "./index.es4.js";
3
- import { Typography as o } from "./index.es19.js";
4
- const n = ({ sharedMarkets: t }) => t ? /* @__PURE__ */ e.createElement(
5
- r,
6
- {
7
- trigger: /* @__PURE__ */ e.createElement(o, { variant: "body1", className: "text-light-2" }, "Shared markets"),
8
- content: /* @__PURE__ */ e.createElement("div", null, t),
9
- triggerProps: { className: "cursor-pointer my-2" }
10
- }
11
- ) : null;
1
+ const p = {
2
+ display1: "p",
3
+ display2: "p",
4
+ display3: "p",
5
+ h1: "h1",
6
+ h2: "h2",
7
+ h3: "h3",
8
+ body1: "p",
9
+ body2: "p",
10
+ body3: "p",
11
+ body4: "p",
12
+ body5: "p",
13
+ body6: "p"
14
+ // overline1: 'p',
15
+ // overline2: 'p',
16
+ // overline3: 'p',
17
+ // 'cta-large': 'p',
18
+ // 'cta-normal': 'p',
19
+ // 'cta-small': 'p',
20
+ }, y = "body1";
12
21
  export {
13
- n as SharedMarketsSection
22
+ y as defaultTypographyVariant,
23
+ p as variantElementMap
14
24
  };
15
25
  //# sourceMappingURL=index.es108.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.es108.js","sources":["../src/components/ui/agent-snippet-view/components/shared-markets-section.tsx"],"sourcesContent":["import React from 'react'\nimport { Accordion } from '@/components/atoms/accordion'\nimport { Typography } from '@/components/atoms/typography'\n\nexport const SharedMarketsSection: React.FC<{\n sharedMarkets?: React.ReactNode\n}> = ({ sharedMarkets }) =>\n sharedMarkets ? (\n <Accordion\n trigger={\n <Typography variant=\"body1\" className=\"text-light-2\">\n Shared markets\n </Typography>\n }\n content={<div>{sharedMarkets}</div>}\n triggerProps={{ className: 'cursor-pointer my-2' }}\n />\n ) : null\n"],"names":["SharedMarketsSection","sharedMarkets","React","Accordion","Typography"],"mappings":";;;AAIO,MAAMA,IAER,CAAC,EAAE,eAAAC,EAAA,MACNA,IACEC,gBAAAA,EAAA;AAAA,EAACC;AAAAA,EAAA;AAAA,IACC,SACED,gBAAAA,EAAA,cAACE,GAAA,EAAW,SAAQ,SAAQ,WAAU,kBAAe,gBAErD;AAAA,IAEF,SAASF,gBAAAA,EAAA,cAAC,OAAA,MAAKD,CAAc;AAAA,IAC7B,cAAc,EAAE,WAAW,sBAAA;AAAA,EAAsB;AACnD,IACE;"}
1
+ {"version":3,"file":"index.es108.js","sources":["../src/components/atoms/typography/typography.config.ts"],"sourcesContent":["export const variantElementMap = {\n display1: 'p',\n display2: 'p',\n display3: 'p',\n h1: 'h1',\n h2: 'h2',\n h3: 'h3',\n body1: 'p',\n body2: 'p',\n body3: 'p',\n body4: 'p',\n body5: 'p',\n body6: 'p',\n // overline1: 'p',\n // overline2: 'p',\n // overline3: 'p',\n // 'cta-large': 'p',\n // 'cta-normal': 'p',\n // 'cta-small': 'p',\n}\n\nexport const defaultTypographyVariant = 'body1'\n"],"names":["variantElementMap","defaultTypographyVariant"],"mappings":"AAAO,MAAMA,IAAoB;AAAA,EAC/B,UAAU;AAAA,EACV,UAAU;AAAA,EACV,UAAU;AAAA,EACV,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,OAAO;AAAA,EACP,OAAO;AAAA,EACP,OAAO;AAAA,EACP,OAAO;AAAA,EACP,OAAO;AAAA,EACP,OAAO;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAOT,GAEaC,IAA2B;"}
@@ -1,101 +1,125 @@
1
- import e, { useRef as m, useState as N, useEffect as b } from "react";
2
- import { AccordionDemo as y } from "./index.es4.js";
3
- import { Typography as r } from "./index.es19.js";
4
- import { SearchIcon as w, ExternalLink as _ } from "lucide-react";
5
- import { Button as S } from "./index.es9.js";
6
- import { Input as k } from "./index.es11.js";
7
- import "clsx";
8
- import "tailwind-merge";
9
- import "./index.es60.js";
10
- import "./index.es90.js";
11
- import "./index.es29.js";
12
- import "./index.es35.js";
13
- import { Spinner as z } from "./index.es64.js";
14
- const G = ({
15
- properties: n = [],
16
- title: s = "Properties added",
17
- property_count: i,
18
- onRedirect: o,
19
- onReachBottom: d,
20
- onSearchChange: g,
21
- loading: f = !1
22
- }) => {
23
- const c = m(null), p = m(!1), [u, h] = N(""), E = (t) => {
24
- h(t.target.value), g?.(t.target.value), c.current && (c.current.scrollTop = 0);
25
- };
26
- b(() => {
27
- p.current = !1;
28
- }, [n]);
29
- const x = (t) => {
30
- const { scrollTop: l, scrollHeight: a, clientHeight: v } = t.currentTarget;
31
- l + v >= a - 5 && d?.();
32
- };
33
- return /* @__PURE__ */ e.createElement(
34
- y,
35
- {
36
- trigger: /* @__PURE__ */ e.createElement(r, { variant: "body1", className: "text-light-2" }, s, " (", i, ")"),
37
- content: /* @__PURE__ */ e.createElement(
38
- "div",
39
- {
40
- ref: c,
41
- onScroll: x,
42
- className: "max-h-[400px] overflow-y-auto"
43
- },
44
- /* @__PURE__ */ e.createElement("div", { className: "w-full sticky top-0 bg-light-1 z-50 pb-2" }, /* @__PURE__ */ e.createElement(
45
- k,
46
- {
47
- placeholder: "Search properties",
48
- prefix: /* @__PURE__ */ e.createElement(w, { className: "stroke-light-2", size: 20 }),
49
- value: u,
50
- onChange: E
51
- }
52
- )),
53
- n.length === 0 ? /* @__PURE__ */ e.createElement("div", { className: "flex justify-center items-center h-20 text-light-3" }, "No property found") : /* @__PURE__ */ e.createElement(e.Fragment, null, n.map((t) => /* @__PURE__ */ e.createElement(
54
- "div",
55
- {
56
- key: t.id,
57
- className: "rounded-[12px] border border-neutral-1 bg-light-2 p-3 mb-3 flex flex-col gap-2 "
58
- },
59
- /* @__PURE__ */ e.createElement("div", { className: "w-full flex justify-between items-start" }, /* @__PURE__ */ e.createElement("div", null, /* @__PURE__ */ e.createElement("div", { className: "flex items-center gap-2 mb-3 p-0" }, /* @__PURE__ */ e.createElement(r, { variant: "body4", className: "text-light-2 " }, t.name), /* @__PURE__ */ e.createElement(
60
- S,
61
- {
62
- variant: "secondary",
63
- size: "sm",
64
- className: "w-fit ml-auto",
65
- onClick: () => o?.(t)
66
- },
67
- /* @__PURE__ */ e.createElement(
68
- _,
69
- {
70
- size: 16,
71
- className: "text-light-1 cursor-pointer bg-light-1"
72
- }
73
- )
74
- )), /* @__PURE__ */ e.createElement("div", { className: "flex w-[372px] rounded-lg p-3 bg-light-1" }, t.property_details && t.property_details.length > 0 && /* @__PURE__ */ e.createElement("div", { className: "flex w-full rounded-lg p-0 bg-light-1" }, t.property_details && t.property_details.length > 0 && t.property_details.map(
75
- (l, a) => /* @__PURE__ */ e.createElement(e.Fragment, { key: a }, /* @__PURE__ */ e.createElement("div", { className: "flex flex-col min-w-0" }, /* @__PURE__ */ e.createElement("div", { className: "truncate font-medium" }, /* @__PURE__ */ e.createElement(
76
- r,
77
- {
78
- variant: "body6",
79
- className: "text-light-4"
80
- },
81
- l.name
82
- ), " "), /* @__PURE__ */ e.createElement("div", { className: "truncate text-light-3" }, /* @__PURE__ */ e.createElement(
83
- r,
84
- {
85
- variant: "body6",
86
- className: "text-light-2"
87
- },
88
- l.value
89
- ))), t.property_details && a !== t.property_details.length - 1 && /* @__PURE__ */ e.createElement("div", { className: "h-auto w-px border-l mx-3 border-neutral-2" }))
90
- )))))
91
- )), f && /* @__PURE__ */ e.createElement("div", { className: "left-0 right-0 bottom-0 flex justify-center items-center py-4" }, /* @__PURE__ */ e.createElement(z, null)))
92
- ),
93
- triggerProps: { className: "cursor-pointer my-2" },
94
- contentProps: { className: "max-h-[400px] overflow-y-auto" }
95
- }
96
- );
97
- };
1
+ import * as e from "react";
2
+ import * as t from "@radix-ui/react-dropdown-menu";
3
+ import { ChevronRight as l, Check as i, Circle as m } from "lucide-react";
4
+ import { cn as d } from "./index.es89.js";
5
+ const h = t.Root, E = t.Trigger, D = t.Group, M = t.Portal, R = t.Sub, c = e.forwardRef(({ className: o, inset: n, children: a, ...r }, s) => /* @__PURE__ */ e.createElement(
6
+ t.SubTrigger,
7
+ {
8
+ ref: s,
9
+ className: d(
10
+ "flex cursor-default select-none items-center rounded-sm px-2 py-1.5 text-sm outline-none focus:bg-accent data-[state=open]:bg-accent",
11
+ n && "pl-8",
12
+ o
13
+ ),
14
+ ...r
15
+ },
16
+ a,
17
+ /* @__PURE__ */ e.createElement(l, { className: "w-4 h-4 ml-auto" })
18
+ ));
19
+ c.displayName = t.SubTrigger.displayName;
20
+ const p = e.forwardRef(({ className: o, ...n }, a) => /* @__PURE__ */ e.createElement(
21
+ t.SubContent,
22
+ {
23
+ ref: a,
24
+ className: d(
25
+ "z-50 min-w-[8rem] overflow-hidden rounded-md border bg-popover p-1 text-popover-foreground shadow-lg data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",
26
+ o
27
+ ),
28
+ ...n
29
+ }
30
+ ));
31
+ p.displayName = t.SubContent.displayName;
32
+ const u = e.forwardRef(({ className: o, sideOffset: n = 4, ...a }, r) => /* @__PURE__ */ e.createElement(t.Portal, { container: a?.container }, /* @__PURE__ */ e.createElement(
33
+ t.Content,
34
+ {
35
+ ref: r,
36
+ sideOffset: n,
37
+ className: d(
38
+ "z-50 min-w-[8rem] overflow-hidden rounded-md border bg-popover p-1 text-popover-foreground shadow-md data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",
39
+ o
40
+ ),
41
+ ...a
42
+ }
43
+ )));
44
+ u.displayName = t.Content.displayName;
45
+ const f = e.forwardRef(({ className: o, inset: n, ...a }, r) => /* @__PURE__ */ e.createElement(
46
+ t.Item,
47
+ {
48
+ ref: r,
49
+ className: d(
50
+ "relative flex select-none items-center rounded-md outline-none transition-colors focus:bg-accent focus:text-accent-foreground data-[disabled]:opacity-50 cursor-pointer data-[disabled]:cursor-not-allowed",
51
+ n && "pl-8",
52
+ o
53
+ ),
54
+ ...a
55
+ }
56
+ ));
57
+ f.displayName = t.Item.displayName;
58
+ const b = e.forwardRef(({ className: o, children: n, checked: a, ...r }, s) => /* @__PURE__ */ e.createElement(
59
+ t.CheckboxItem,
60
+ {
61
+ ref: s,
62
+ className: d(
63
+ "relative flex cursor-default select-none items-center rounded-sm py-1.5 pl-8 pr-2 text-sm outline-none transition-colors focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50",
64
+ o
65
+ ),
66
+ checked: a,
67
+ disabled: !0,
68
+ ...r
69
+ },
70
+ /* @__PURE__ */ e.createElement("span", { className: "absolute left-2 flex h-3.5 w-3.5 items-center justify-center" }, /* @__PURE__ */ e.createElement(t.ItemIndicator, null, /* @__PURE__ */ e.createElement(i, { className: "w-4 h-4" }))),
71
+ n
72
+ ));
73
+ b.displayName = t.CheckboxItem.displayName;
74
+ const w = e.forwardRef(({ className: o, children: n, ...a }, r) => /* @__PURE__ */ e.createElement(
75
+ t.RadioItem,
76
+ {
77
+ ref: r,
78
+ className: d(
79
+ "relative flex cursor-default select-none items-center rounded-sm py-1.5 pl-8 pr-2 text-sm outline-none transition-colors focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50",
80
+ o
81
+ ),
82
+ ...a
83
+ },
84
+ /* @__PURE__ */ e.createElement("span", { className: "absolute left-2 flex h-3.5 w-3.5 items-center justify-center" }, /* @__PURE__ */ e.createElement(t.ItemIndicator, null, /* @__PURE__ */ e.createElement(m, { className: "w-2 h-2 fill-current" }))),
85
+ n
86
+ ));
87
+ w.displayName = t.RadioItem.displayName;
88
+ const g = e.forwardRef(({ className: o, inset: n, ...a }, r) => /* @__PURE__ */ e.createElement(
89
+ t.Label,
90
+ {
91
+ ref: r,
92
+ className: d(
93
+ "px-2 py-1.5 text-sm font-semibold",
94
+ n && "pl-8",
95
+ o
96
+ ),
97
+ ...a
98
+ }
99
+ ));
100
+ g.displayName = t.Label.displayName;
101
+ const N = e.forwardRef(({ className: o, ...n }, a) => /* @__PURE__ */ e.createElement(
102
+ t.Separator,
103
+ {
104
+ ref: a,
105
+ className: d("-mx-1 my-1 h-px bg-muted", o),
106
+ ...n
107
+ }
108
+ ));
109
+ N.displayName = t.Separator.displayName;
98
110
  export {
99
- G as PropertiesAddedSection
111
+ h as DropdownMenu,
112
+ b as DropdownMenuCheckboxItem,
113
+ u as DropdownMenuContent,
114
+ D as DropdownMenuGroup,
115
+ f as DropdownMenuItem,
116
+ g as DropdownMenuLabel,
117
+ M as DropdownMenuPortal,
118
+ w as DropdownMenuRadioItem,
119
+ N as DropdownMenuSeparator,
120
+ R as DropdownMenuSub,
121
+ p as DropdownMenuSubContent,
122
+ c as DropdownMenuSubTrigger,
123
+ E as DropdownMenuTrigger
100
124
  };
101
125
  //# sourceMappingURL=index.es109.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.es109.js","sources":["../src/components/ui/agent-snippet-view/components/properties-added-section.tsx"],"sourcesContent":["import React, { useEffect, useRef, useState } from 'react'\nimport { Accordion } from '@/components/atoms/accordion'\nimport { Typography } from '@/components/atoms/typography'\nimport { ExternalLink, SearchIcon } from 'lucide-react'\nimport { PropertiesAddedSectionProps } from '../agent-snippet-view.types'\nimport { Button, Input, Spinner } from '@/index'\n\nexport const PropertiesAddedSection: React.FC<PropertiesAddedSectionProps> = ({\n properties = [],\n title = 'Properties added',\n property_count,\n onRedirect,\n onReachBottom,\n onSearchChange,\n loading = false,\n}) => {\n const contentRef = useRef<HTMLDivElement>(null)\n const isFetchingRef = useRef(false)\n const [search, setSearch] = useState('')\n\n const handleInputChange = (e: React.ChangeEvent<HTMLInputElement>) => {\n setSearch(e.target.value)\n onSearchChange?.(e.target.value)\n if (contentRef.current) {\n contentRef.current.scrollTop = 0\n }\n }\n\n useEffect(() => {\n isFetchingRef.current = false\n }, [properties])\n\n const handleScroll = (e: React.UIEvent<HTMLDivElement>) => {\n const { scrollTop, scrollHeight, clientHeight } = e.currentTarget\n if (scrollTop + clientHeight >= scrollHeight - 5) {\n onReachBottom?.()\n }\n }\n return (\n <Accordion\n trigger={\n <Typography variant=\"body1\" className=\"text-light-2\">\n {title} ({property_count})\n </Typography>\n }\n content={\n <div\n ref={contentRef}\n onScroll={handleScroll}\n className=\"max-h-[400px] overflow-y-auto\"\n >\n <div className=\"w-full sticky top-0 bg-light-1 z-50 pb-2\">\n <Input\n placeholder=\"Search properties\"\n prefix={<SearchIcon className=\"stroke-light-2\" size={20} />}\n value={search}\n onChange={handleInputChange}\n />\n </div>\n {properties.length === 0 ? (\n <div className=\"flex justify-center items-center h-20 text-light-3\">\n No property found\n </div>\n ) : (\n <>\n {properties.map((property) => (\n <div\n key={property.id}\n className=\"rounded-[12px] border border-neutral-1 bg-light-2 p-3 mb-3 flex flex-col gap-2 \"\n >\n <div className=\"w-full flex justify-between items-start\">\n <div>\n <div className=\"flex items-center gap-2 mb-3 p-0\">\n <Typography variant=\"body4\" className=\"text-light-2 \">\n {property.name}\n </Typography>\n <Button\n variant=\"secondary\"\n size=\"sm\"\n className=\"w-fit ml-auto\"\n onClick={() => onRedirect?.(property)}\n >\n <ExternalLink\n size={16}\n className=\"text-light-1 cursor-pointer bg-light-1\"\n />\n </Button>\n </div>\n <div className=\"flex w-[372px] rounded-lg p-3 bg-light-1\">\n {/* Render features only */}\n {property.property_details &&\n property.property_details.length > 0 && (\n <div className=\"flex w-full rounded-lg p-0 bg-light-1\">\n {property.property_details &&\n property.property_details.length > 0 &&\n property.property_details.map(\n (feature, idx) => (\n <React.Fragment key={idx}>\n <div className=\"flex flex-col min-w-0\">\n <div className=\"truncate font-medium\">\n <Typography\n variant=\"body6\"\n className=\"text-light-4\"\n >\n {feature.name}\n </Typography>{' '}\n </div>\n <div className=\"truncate text-light-3\">\n <Typography\n variant=\"body6\"\n className=\"text-light-2\"\n >\n {feature.value}\n </Typography>\n </div>\n </div>\n {property.property_details &&\n idx !==\n property.property_details.length -\n 1 && (\n <div className=\"h-auto w-px border-l mx-3 border-neutral-2\" />\n )}\n </React.Fragment>\n )\n )}\n </div>\n )}\n </div>\n </div>\n </div>\n </div>\n ))}\n {loading && (\n <div className=\"left-0 right-0 bottom-0 flex justify-center items-center py-4\">\n <Spinner />\n </div>\n )}\n </>\n )}\n </div>\n }\n triggerProps={{ className: 'cursor-pointer my-2' }}\n contentProps={{ className: 'max-h-[400px] overflow-y-auto' }}\n />\n )\n}\n"],"names":["PropertiesAddedSection","properties","title","property_count","onRedirect","onReachBottom","onSearchChange","loading","contentRef","useRef","isFetchingRef","search","setSearch","useState","handleInputChange","e","useEffect","handleScroll","scrollTop","scrollHeight","clientHeight","React","Accordion","Typography","Input","SearchIcon","property","Button","ExternalLink","feature","idx","Spinner"],"mappings":"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"}
1
+ {"version":3,"file":"index.es109.js","sources":["../src/components/molecules/dropdown-menu/dropdown-menu-components.tsx"],"sourcesContent":["'use client'\n\nimport * as React from 'react'\nimport * as DropdownMenuPrimitive from '@radix-ui/react-dropdown-menu'\nimport { Check, ChevronRight, Circle } from 'lucide-react'\n\nimport { cn } from '@/lib/utils'\n\nconst DropdownMenu = DropdownMenuPrimitive.Root\n\nconst DropdownMenuTrigger = DropdownMenuPrimitive.Trigger\n\nconst DropdownMenuGroup = DropdownMenuPrimitive.Group\n\nconst DropdownMenuPortal = DropdownMenuPrimitive.Portal\n\nconst DropdownMenuSub = DropdownMenuPrimitive.Sub\n\nconst DropdownMenuRadioGroup = DropdownMenuPrimitive.RadioGroup\n\nconst DropdownMenuSubTrigger = React.forwardRef<\n React.ElementRef<typeof DropdownMenuPrimitive.SubTrigger>,\n React.ComponentPropsWithoutRef<typeof DropdownMenuPrimitive.SubTrigger> & {\n inset?: boolean\n }\n>(({ className, inset, children, ...props }, ref) => (\n <DropdownMenuPrimitive.SubTrigger\n ref={ref}\n className={cn(\n 'flex cursor-default select-none items-center rounded-sm px-2 py-1.5 text-sm outline-none focus:bg-accent data-[state=open]:bg-accent',\n inset && 'pl-8',\n className\n )}\n {...props}\n >\n {children}\n <ChevronRight className=\"w-4 h-4 ml-auto\" />\n </DropdownMenuPrimitive.SubTrigger>\n))\nDropdownMenuSubTrigger.displayName =\n DropdownMenuPrimitive.SubTrigger.displayName\n\nconst DropdownMenuSubContent = React.forwardRef<\n React.ElementRef<typeof DropdownMenuPrimitive.SubContent>,\n React.ComponentPropsWithoutRef<typeof DropdownMenuPrimitive.SubContent>\n>(({ className, ...props }, ref) => (\n <DropdownMenuPrimitive.SubContent\n ref={ref}\n className={cn(\n 'z-50 min-w-[8rem] overflow-hidden rounded-md border bg-popover p-1 text-popover-foreground shadow-lg data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2',\n className\n )}\n {...props}\n />\n))\nDropdownMenuSubContent.displayName =\n DropdownMenuPrimitive.SubContent.displayName\n\nconst DropdownMenuContent = React.forwardRef<\n React.ElementRef<typeof DropdownMenuPrimitive.Content>,\n React.ComponentPropsWithoutRef<typeof DropdownMenuPrimitive.Content> &\n Pick<\n React.ComponentPropsWithoutRef<typeof DropdownMenuPrimitive.Portal>,\n 'container'\n >\n>(({ className, sideOffset = 4, ...props }, ref) => (\n <DropdownMenuPrimitive.Portal container={props?.container}>\n <DropdownMenuPrimitive.Content\n ref={ref}\n sideOffset={sideOffset}\n className={cn(\n 'z-50 min-w-[8rem] overflow-hidden rounded-md border bg-popover p-1 text-popover-foreground shadow-md data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2',\n className\n )}\n {...props}\n />\n </DropdownMenuPrimitive.Portal>\n))\nDropdownMenuContent.displayName = DropdownMenuPrimitive.Content.displayName\n\nconst DropdownMenuItem = React.forwardRef<\n React.ElementRef<typeof DropdownMenuPrimitive.Item>,\n React.ComponentPropsWithoutRef<typeof DropdownMenuPrimitive.Item> & {\n inset?: boolean\n }\n>(({ className, inset, ...props }, ref) => {\n return (\n <DropdownMenuPrimitive.Item\n ref={ref}\n className={cn(\n 'relative flex select-none items-center rounded-md outline-none transition-colors focus:bg-accent focus:text-accent-foreground data-[disabled]:opacity-50 cursor-pointer data-[disabled]:cursor-not-allowed',\n inset && 'pl-8',\n className\n )}\n {...props}\n />\n )\n})\nDropdownMenuItem.displayName = DropdownMenuPrimitive.Item.displayName\n\nconst DropdownMenuCheckboxItem = React.forwardRef<\n React.ElementRef<typeof DropdownMenuPrimitive.CheckboxItem>,\n React.ComponentPropsWithoutRef<typeof DropdownMenuPrimitive.CheckboxItem>\n>(({ className, children, checked, ...props }, ref) => (\n <DropdownMenuPrimitive.CheckboxItem\n ref={ref}\n className={cn(\n 'relative flex cursor-default select-none items-center rounded-sm py-1.5 pl-8 pr-2 text-sm outline-none transition-colors focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50',\n className\n )}\n checked={checked}\n disabled\n {...props}\n >\n <span className=\"absolute left-2 flex h-3.5 w-3.5 items-center justify-center\">\n <DropdownMenuPrimitive.ItemIndicator>\n <Check className=\"w-4 h-4\" />\n </DropdownMenuPrimitive.ItemIndicator>\n </span>\n {children}\n </DropdownMenuPrimitive.CheckboxItem>\n))\nDropdownMenuCheckboxItem.displayName =\n DropdownMenuPrimitive.CheckboxItem.displayName\n\nconst DropdownMenuRadioItem = React.forwardRef<\n React.ElementRef<typeof DropdownMenuPrimitive.RadioItem>,\n React.ComponentPropsWithoutRef<typeof DropdownMenuPrimitive.RadioItem>\n>(({ className, children, ...props }, ref) => (\n <DropdownMenuPrimitive.RadioItem\n ref={ref}\n className={cn(\n 'relative flex cursor-default select-none items-center rounded-sm py-1.5 pl-8 pr-2 text-sm outline-none transition-colors focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50',\n className\n )}\n {...props}\n >\n <span className=\"absolute left-2 flex h-3.5 w-3.5 items-center justify-center\">\n <DropdownMenuPrimitive.ItemIndicator>\n <Circle className=\"w-2 h-2 fill-current\" />\n </DropdownMenuPrimitive.ItemIndicator>\n </span>\n {children}\n </DropdownMenuPrimitive.RadioItem>\n))\nDropdownMenuRadioItem.displayName = DropdownMenuPrimitive.RadioItem.displayName\n\nconst DropdownMenuLabel = React.forwardRef<\n React.ElementRef<typeof DropdownMenuPrimitive.Label>,\n React.ComponentPropsWithoutRef<typeof DropdownMenuPrimitive.Label> & {\n inset?: boolean\n }\n>(({ className, inset, ...props }, ref) => (\n <DropdownMenuPrimitive.Label\n ref={ref}\n className={cn(\n 'px-2 py-1.5 text-sm font-semibold',\n inset && 'pl-8',\n className\n )}\n {...props}\n />\n))\nDropdownMenuLabel.displayName = DropdownMenuPrimitive.Label.displayName\n\nconst DropdownMenuSeparator = React.forwardRef<\n React.ElementRef<typeof DropdownMenuPrimitive.Separator>,\n React.ComponentPropsWithoutRef<typeof DropdownMenuPrimitive.Separator>\n>(({ className, ...props }, ref) => (\n <DropdownMenuPrimitive.Separator\n ref={ref}\n className={cn('-mx-1 my-1 h-px bg-muted', className)}\n {...props}\n />\n))\nDropdownMenuSeparator.displayName = DropdownMenuPrimitive.Separator.displayName\n\nconst DropdownMenuShortcut = ({\n className,\n ...props\n}: React.HTMLAttributes<HTMLSpanElement>) => {\n return (\n <span\n className={cn('ml-auto text-xs tracking-widest opacity-60', className)}\n {...props}\n />\n )\n}\nDropdownMenuShortcut.displayName = 'DropdownMenuShortcut'\n\nexport {\n DropdownMenu,\n DropdownMenuTrigger,\n DropdownMenuContent,\n DropdownMenuItem,\n DropdownMenuCheckboxItem,\n DropdownMenuRadioItem,\n DropdownMenuLabel,\n DropdownMenuSeparator,\n DropdownMenuShortcut,\n DropdownMenuGroup,\n DropdownMenuPortal,\n DropdownMenuSub,\n DropdownMenuSubContent,\n DropdownMenuSubTrigger,\n DropdownMenuRadioGroup,\n}\n"],"names":["DropdownMenu","DropdownMenuPrimitive","DropdownMenuTrigger","DropdownMenuGroup","DropdownMenuPortal","DropdownMenuSub","DropdownMenuSubTrigger","React","className","inset","children","props","ref","cn","ChevronRight","DropdownMenuSubContent","DropdownMenuContent","sideOffset","DropdownMenuItem","DropdownMenuCheckboxItem","checked","Check","DropdownMenuRadioItem","Circle","DropdownMenuLabel","DropdownMenuSeparator"],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import * as e from "react";
2
2
  import { cn as p } from "./index.es89.js";
3
- import { InputVariants as g } from "./index.es122.js";
3
+ import { InputVariants as g } from "./index.es106.js";
4
4
  import { Typography as E } from "./index.es19.js";
5
5
  import { XCircle as h } from "lucide-react";
6
6
  const v = e.forwardRef(
@@ -1,67 +1,38 @@
1
1
  import e from "react";
2
- import { AccordionDemo as c } from "./index.es4.js";
3
- import { Typography as a } from "./index.es19.js";
4
- import { Button as p } from "./index.es9.js";
5
- import { FileText as d } from "lucide-react";
6
- import { Spinner as g } from "./index.es64.js";
7
- import { AvatarDemo as f } from "./index.es6.js";
8
- import "clsx";
9
- import "tailwind-merge";
10
- import "./index.es60.js";
11
- import "./index.es90.js";
12
- import "./index.es29.js";
13
- import "./index.es35.js";
14
- const D = ({ notes: r, onAddNote: l, notesLoading: o }) => /* @__PURE__ */ e.createElement(
15
- c,
16
- {
17
- trigger: /* @__PURE__ */ e.createElement(a, { variant: "body1", className: "my-2 text-light-2" }, "Call history & notes"),
18
- content: /* @__PURE__ */ e.createElement("div", null, l && /* @__PURE__ */ e.createElement("div", { className: "w-full sticky top-0 bg-light-1 z-50 pb-2" }, /* @__PURE__ */ e.createElement(
19
- p,
20
- {
21
- variant: "secondary",
22
- size: "sm",
23
- className: "flex w-fit justify-start",
24
- onClick: l
25
- },
26
- /* @__PURE__ */ e.createElement(d, { size: 16, className: "mr-1" }),
27
- "Add notes"
28
- )), o && /* @__PURE__ */ e.createElement("div", { className: "flex justify-center items-center py-2" }, /* @__PURE__ */ e.createElement(g, null)), r.length === 0 ? /* @__PURE__ */ e.createElement("div", { className: "py-4 text-start text-light-4" }, "Nothing here yet. Add a note to begin.") : r.map((t, m) => {
29
- const i = new Date(t.timestamp), n = i.toLocaleDateString("en-GB"), s = i.toLocaleTimeString("en-US", {
30
- hour: "2-digit",
31
- minute: "2-digit"
32
- });
33
- return /* @__PURE__ */ e.createElement(
34
- "div",
35
- {
36
- key: m,
37
- className: `flex items-start gap-3 py-3 ${m !== r.length - 1 ? "border-b border-neutral-2" : ""}`
38
- },
39
- /* @__PURE__ */ e.createElement(
40
- f,
41
- {
42
- imageSrc: t.user.image_url || "",
43
- alt: t.user.first_name,
44
- fallback: t.user.first_name?.[0]?.toUpperCase() || "",
45
- size: "md"
46
- }
47
- ),
48
- /* @__PURE__ */ e.createElement("div", { className: "mr-3 flex w-full justify-between" }, /* @__PURE__ */ e.createElement("div", null, /* @__PURE__ */ e.createElement(
49
- a,
50
- {
51
- variant: "body2",
52
- className: "mt-1 max-w-[250px] whitespace-pre-line break-words text-light-3"
53
- },
54
- t.note
55
- ), t.call_duration && /* @__PURE__ */ e.createElement(a, { variant: "body6", className: "text-light-4 mt-1" }, t.call_duration)), /* @__PURE__ */ e.createElement("div", { className: "flex flex-col gap-1" }, /* @__PURE__ */ e.createElement(a, { variant: "body6", className: "text-light-2" }, n), /* @__PURE__ */ e.createElement(a, { variant: "body6", className: "text-light-4" }, s)))
56
- );
57
- })),
58
- triggerProps: {
59
- className: "cursor-pointer my-2"
2
+ import { Typography as n } from "./index.es19.js";
3
+ import { ResponsiveContainer as o, PieChart as i, Pie as m, Cell as s } from "recharts";
4
+ function p({
5
+ list: l,
6
+ total: r
7
+ }) {
8
+ const c = l?.reduce(
9
+ (t, a) => t + a.count,
10
+ 0
11
+ ) || 1;
12
+ return /* @__PURE__ */ e.createElement("div", { className: "flex gap-2 p-4 border rounded-lg border-neutral-1 bg-light-1" }, /* @__PURE__ */ e.createElement("div", { className: "relative w-[180px] h-[164px] flex items-center justify-center" }, /* @__PURE__ */ e.createElement(o, { width: "100%", height: "100%" }, /* @__PURE__ */ e.createElement(i, null, /* @__PURE__ */ e.createElement(
13
+ m,
14
+ {
15
+ data: l,
16
+ labelLine: !1,
17
+ outerRadius: "100%",
18
+ innerRadius: r != null ? "40%" : void 0,
19
+ dataKey: "count"
60
20
  },
61
- contentProps: { className: "max-h-[400px] overflow-y-auto" }
62
- }
63
- );
21
+ l?.map(
22
+ (t, a) => /* @__PURE__ */ e.createElement(
23
+ s,
24
+ {
25
+ key: `cell-${a}`,
26
+ fill: t.color,
27
+ stroke: "none"
28
+ }
29
+ )
30
+ )
31
+ ))), r != null && /* @__PURE__ */ e.createElement("div", { className: "absolute inset-0 flex flex-col items-center justify-center pointer-events-none" }, /* @__PURE__ */ e.createElement(n, { variant: "body4", className: "text-light-1" }, "Total"), /* @__PURE__ */ e.createElement(n, { variant: "body2", className: "text-light-1 font-semibold" }, r))), /* @__PURE__ */ e.createElement("div", { className: "flex flex-col gap-4" }, l?.map(
32
+ (t, a) => /* @__PURE__ */ e.createElement("div", { key: a, className: "flex flex-col gap-1" }, /* @__PURE__ */ e.createElement("div", { className: "flex items-center gap-1" }, /* @__PURE__ */ e.createElement("img", { src: t.icon_url, alt: t.name || "Brand icon" }), /* @__PURE__ */ e.createElement(n, { variant: "body4", className: "text-light-3" }, t.name)), /* @__PURE__ */ e.createElement(n, { variant: "body4", className: "text-light-2" }, (t.count / c * 100).toFixed(2), "% (", t.count, ")"))
33
+ )));
34
+ }
64
35
  export {
65
- D as NotesSection
36
+ p as ClusterHoverCard
66
37
  };
67
38
  //# sourceMappingURL=index.es110.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.es110.js","sources":["../src/components/ui/agent-snippet-view/components/notes-section.tsx"],"sourcesContent":["import React from 'react'\nimport { Accordion } from '@/components/atoms/accordion'\n// import { Avatar } from '@/components/atoms/avatar'\nimport { Typography } from '@/components/atoms/typography'\nimport { Button } from '@/components/atoms/button'\nimport { FileText } from 'lucide-react'\nimport type { Note } from '../agent-snippet-view.types'\nimport { Spinner } from '@/components/unstyled/spinner'\nimport { Avatar } from '@/index'\n\nexport const NotesSection: React.FC<{\n notes: Note[]\n onAddNote?: () => void\n notesLoading?: boolean\n}> = ({ notes, onAddNote, notesLoading }) => (\n <Accordion\n trigger={\n <Typography variant=\"body1\" className=\"my-2 text-light-2\">\n Call history & notes\n </Typography>\n }\n content={\n <div>\n {onAddNote && (\n <div className=\"w-full sticky top-0 bg-light-1 z-50 pb-2\">\n <Button\n variant=\"secondary\"\n size=\"sm\"\n className=\"flex w-fit justify-start\"\n onClick={onAddNote}\n >\n <FileText size={16} className=\"mr-1\" />\n Add notes\n </Button>\n </div>\n )}\n {notesLoading && (\n <div className=\"flex justify-center items-center py-2\">\n <Spinner />\n </div>\n )}\n {notes.length === 0 ? (\n <div className=\"py-4 text-start text-light-4\">\n Nothing here yet. Add a note to begin.\n </div>\n ) : (\n notes.map((item, idx) => {\n const date = new Date(item.timestamp)\n const dateStr = date.toLocaleDateString('en-GB')\n const timeStr = date.toLocaleTimeString('en-US', {\n hour: '2-digit',\n minute: '2-digit',\n })\n // const fallback = item.user.first_name?.[0]?.toUpperCase() || ''\n return (\n <div\n key={idx}\n className={`flex items-start gap-3 py-3 ${idx !== notes.length - 1 ? 'border-b border-neutral-2' : ''}`}\n >\n <Avatar\n imageSrc={item.user.image_url || ''}\n alt={item.user.first_name}\n fallback={item.user.first_name?.[0]?.toUpperCase() || ''}\n size=\"md\"\n />\n <div className=\"mr-3 flex w-full justify-between\">\n <div>\n <Typography\n variant=\"body2\"\n className=\"mt-1 max-w-[250px] whitespace-pre-line break-words text-light-3\"\n >\n {item.note}\n </Typography>\n {item.call_duration && (\n <Typography variant=\"body6\" className=\"text-light-4 mt-1\">\n {item.call_duration}\n </Typography>\n )}\n </div>\n <div className=\"flex flex-col gap-1\">\n <Typography variant=\"body6\" className=\"text-light-2\">\n {dateStr}\n </Typography>\n <Typography variant=\"body6\" className=\"text-light-4\">\n {timeStr}\n </Typography>\n </div>\n </div>\n </div>\n )\n })\n )}\n </div>\n }\n triggerProps={{\n className: 'cursor-pointer my-2',\n }}\n contentProps={{ className: 'max-h-[400px] overflow-y-auto' }}\n />\n)\n"],"names":["NotesSection","notes","onAddNote","notesLoading","React","Accordion","Typography","Button","FileText","Spinner","item","idx","date","dateStr","timeStr","Avatar"],"mappings":";;;;;;;;;;;;;AAUO,MAAMA,IAIR,CAAC,EAAE,OAAAC,GAAO,WAAAC,GAAW,cAAAC,QACxBC,gBAAAA,EAAA;AAAA,EAACC;AAAAA,EAAA;AAAA,IACC,SACED,gBAAAA,EAAA,cAACE,GAAA,EAAW,SAAQ,SAAQ,WAAU,uBAAoB,sBAE1D;AAAA,IAEF,SACEF,gBAAAA,EAAA,cAAC,OAAA,MACEF,KACCE,gBAAAA,EAAA,cAAC,OAAA,EAAI,WAAU,2CAAA,GACbA,gBAAAA,EAAA;AAAA,MAACG;AAAA,MAAA;AAAA,QACC,SAAQ;AAAA,QACR,MAAK;AAAA,QACL,WAAU;AAAA,QACV,SAASL;AAAA,MAAA;AAAA,MAETE,gBAAAA,EAAA,cAACI,GAAA,EAAS,MAAM,IAAI,WAAU,QAAO;AAAA,MAAE;AAAA,IAAA,CAG3C,GAEDL,KACCC,gBAAAA,EAAA,cAAC,OAAA,EAAI,WAAU,wCAAA,GACbA,gBAAAA,EAAA,cAACK,GAAA,IAAQ,CACX,GAEDR,EAAM,WAAW,IAChBG,gBAAAA,EAAA,cAAC,OAAA,EAAI,WAAU,kCAA+B,wCAE9C,IAEAH,EAAM,IAAI,CAACS,GAAMC,MAAQ;AACvB,YAAMC,IAAO,IAAI,KAAKF,EAAK,SAAS,GAC9BG,IAAUD,EAAK,mBAAmB,OAAO,GACzCE,IAAUF,EAAK,mBAAmB,SAAS;AAAA,QAC/C,MAAM;AAAA,QACN,QAAQ;AAAA,MAAA,CACT;AAED,aACER,gBAAAA,EAAA;AAAA,QAAC;AAAA,QAAA;AAAA,UACC,KAAKO;AAAA,UACL,WAAW,+BAA+BA,MAAQV,EAAM,SAAS,IAAI,8BAA8B,EAAE;AAAA,QAAA;AAAA,QAErGG,gBAAAA,EAAA;AAAA,UAACW;AAAAA,UAAA;AAAA,YACC,UAAUL,EAAK,KAAK,aAAa;AAAA,YACjC,KAAKA,EAAK,KAAK;AAAA,YACf,UAAUA,EAAK,KAAK,aAAa,CAAC,GAAG,iBAAiB;AAAA,YACtD,MAAK;AAAA,UAAA;AAAA,QAAA;AAAA,QAEPN,gBAAAA,EAAA,cAAC,OAAA,EAAI,WAAU,mCAAA,mCACZ,OAAA,MACCA,gBAAAA,EAAA;AAAA,UAACE;AAAA,UAAA;AAAA,YACC,SAAQ;AAAA,YACR,WAAU;AAAA,UAAA;AAAA,UAETI,EAAK;AAAA,QAAA,GAEPA,EAAK,iBACJN,gBAAAA,EAAA,cAACE,KAAW,SAAQ,SAAQ,WAAU,oBAAA,GACnCI,EAAK,aACR,CAEJ,mCACC,OAAA,EAAI,WAAU,sBAAA,GACbN,gBAAAA,EAAA,cAACE,GAAA,EAAW,SAAQ,SAAQ,WAAU,kBACnCO,CACH,GACAT,gBAAAA,EAAA,cAACE,GAAA,EAAW,SAAQ,SAAQ,WAAU,eAAA,GACnCQ,CACH,CACF,CACF;AAAA,MAAA;AAAA,IAGN,CAAC,CAEL;AAAA,IAEF,cAAc;AAAA,MACZ,WAAW;AAAA,IAAA;AAAA,IAEb,cAAc,EAAE,WAAW,gCAAA;AAAA,EAAgC;AAC7D;"}
1
+ {"version":3,"file":"index.es110.js","sources":["../src/components/ui/map-marker-hover-card/components/map-cluster-hover-card.tsx"],"sourcesContent":["import React from 'react'\nimport { Typography } from '@/components/atoms/typography'\nimport { PieChart, Pie, Cell, ResponsiveContainer } from 'recharts'\nimport { MapMarkerHoverCardNS } from '../map-marker-hover-card.types'\n\nexport function ClusterHoverCard({\n list,\n total,\n}: MapMarkerHoverCardNS.ClusterHoverCardProps) {\n const totalCount =\n list?.reduce(\n (sum: number, item: MapMarkerHoverCardNS.ClusterDataItem) =>\n sum + item.count,\n 0\n ) || 1\n\n return (\n <div className=\"flex gap-2 p-4 border rounded-lg border-neutral-1 bg-light-1\">\n <div className=\"relative w-[180px] h-[164px] flex items-center justify-center\">\n <ResponsiveContainer width=\"100%\" height=\"100%\">\n <PieChart>\n <Pie\n data={list}\n labelLine={false}\n outerRadius=\"100%\"\n innerRadius={total != null ? '40%' : undefined}\n dataKey=\"count\"\n >\n {list?.map(\n (\n entry: MapMarkerHoverCardNS.ClusterDataItem,\n index: number\n ) => (\n <Cell\n key={`cell-${index}`}\n fill={entry.color}\n stroke=\"none\"\n />\n )\n )}\n </Pie>\n </PieChart>\n </ResponsiveContainer>\n {total != null && (\n <div className=\"absolute inset-0 flex flex-col items-center justify-center pointer-events-none\">\n <Typography variant=\"body4\" className=\"text-light-1\">\n Total\n </Typography>\n <Typography variant=\"body2\" className=\"text-light-1 font-semibold\">\n {total}\n </Typography>\n </div>\n )}\n </div>\n <div className=\"flex flex-col gap-4\">\n {list?.map(\n (item: MapMarkerHoverCardNS.ClusterDataItem, index: number) => (\n <div key={index} className=\"flex flex-col gap-1\">\n <div className=\"flex items-center gap-1\">\n <img src={item.icon_url} alt={item.name || 'Brand icon'} />\n <Typography variant=\"body4\" className=\"text-light-3\">\n {item.name}\n </Typography>\n </div>\n <Typography variant=\"body4\" className=\"text-light-2\">\n {((item.count / totalCount) * 100).toFixed(2)}% ({item.count})\n </Typography>\n </div>\n )\n )}\n </div>\n </div>\n )\n}\n"],"names":["ClusterHoverCard","list","total","totalCount","sum","item","React","ResponsiveContainer","PieChart","Pie","entry","index","Cell","Typography"],"mappings":";;;AAKO,SAASA,EAAiB;AAAA,EAC/B,MAAAC;AAAA,EACA,OAAAC;AACF,GAA+C;AAC7C,QAAMC,IACJF,GAAM;AAAA,IACJ,CAACG,GAAaC,MACZD,IAAMC,EAAK;AAAA,IACb;AAAA,EAAA,KACG;AAEP,SACEC,gBAAAA,EAAA,cAAC,OAAA,EAAI,WAAU,kGACZ,OAAA,EAAI,WAAU,gEAAA,GACbA,gBAAAA,EAAA,cAACC,KAAoB,OAAM,QAAO,QAAO,0CACtCC,GAAA,MACCF,gBAAAA,EAAA;AAAA,IAACG;AAAA,IAAA;AAAA,MACC,MAAMR;AAAA,MACN,WAAW;AAAA,MACX,aAAY;AAAA,MACZ,aAAaC,KAAS,OAAO,QAAQ;AAAA,MACrC,SAAQ;AAAA,IAAA;AAAA,IAEPD,GAAM;AAAA,MACL,CACES,GACAC,MAEAL,gBAAAA,EAAA;AAAA,QAACM;AAAA,QAAA;AAAA,UACC,KAAK,QAAQD,CAAK;AAAA,UAClB,MAAMD,EAAM;AAAA,UACZ,QAAO;AAAA,QAAA;AAAA,MAAA;AAAA,IACT;AAAA,EAEJ,CAEJ,CACF,GACCR,KAAS,QACRI,gBAAAA,EAAA,cAAC,OAAA,EAAI,WAAU,iFAAA,GACbA,gBAAAA,EAAA,cAACO,GAAA,EAAW,SAAQ,SAAQ,WAAU,kBAAe,OAErD,GACAP,gBAAAA,EAAA,cAACO,GAAA,EAAW,SAAQ,SAAQ,WAAU,gCACnCX,CACH,CACF,CAEJ,GACAI,gBAAAA,EAAA,cAAC,OAAA,EAAI,WAAU,yBACZL,GAAM;AAAA,IACL,CAACI,GAA4CM,MAC3CL,gBAAAA,EAAA,cAAC,SAAI,KAAKK,GAAO,WAAU,sBAAA,GACzBL,gBAAAA,EAAA,cAAC,OAAA,EAAI,WAAU,0BAAA,GACbA,gBAAAA,EAAA,cAAC,OAAA,EAAI,KAAKD,EAAK,UAAU,KAAKA,EAAK,QAAQ,aAAA,CAAc,GACzDC,gBAAAA,EAAA,cAACO,GAAA,EAAW,SAAQ,SAAQ,WAAU,kBACnCR,EAAK,IACR,CACF,GACAC,gBAAAA,EAAA,cAACO,GAAA,EAAW,SAAQ,SAAQ,WAAU,mBACjCR,EAAK,QAAQF,IAAc,KAAK,QAAQ,CAAC,GAAE,OAAIE,EAAK,OAAM,GAC/D,CACF;AAAA,EAAA,CAGN,CACF;AAEJ;"}