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 +1 @@
1
- {"version":3,"file":"index.es45.js","sources":["../src/components/organisms/image-editor/use-image-editor.tsx"],"sourcesContent":["import React, { useEffect, useRef, useState } from 'react'\nimport { createRoot, type Root } from 'react-dom/client'\n\nimport { ImageEditorModal } from './image-editor-modal'\nimport {\n ImageEditorConfig,\n ImageEditorEngine,\n ImageEditorInstance,\n ImageEditorUiState,\n} from './image-editor.types'\nimport { notifyNativeImageEditorState } from './native-bridge'\nimport PictureStudioEngine from './picture-studio-engine'\n\nexport function useImageEditor(config: ImageEditorConfig): ImageEditorInstance {\n const configRef = useRef(config)\n configRef.current = config\n\n const engineRef = useRef<ImageEditorEngine | null>(null)\n const [uiState, setUiState] = useState<ImageEditorUiState | null>(null)\n const [isOpen, setIsOpen] = useState(false)\n\n if (!engineRef.current && typeof window !== 'undefined') {\n const initial = configRef.current\n engineRef.current = PictureStudioEngine.create({\n ...initial,\n image: initial.image ?? initial.backgroundImage,\n onSave: async (result, studio) => {\n const current = configRef.current\n if (current.onAssetUpload) {\n const ext = result.type === 'image/jpeg' ? 'jpg' : 'png'\n const file = new File([result.blob], `edit.${ext}`, {\n type: result.type,\n })\n const asset = await current.onAssetUpload(file)\n current.onSave({ ...result, ...asset }, studio)\n return\n }\n current.onSave(result, studio)\n },\n onUiChange: setUiState,\n }) as ImageEditorEngine\n }\n\n useEffect(() => {\n const engine = engineRef.current\n if (!engine) return\n const onOpen = () => {\n setIsOpen(true)\n notifyNativeImageEditorState(true)\n }\n const onClose = () => {\n setIsOpen(false)\n notifyNativeImageEditorState(false)\n }\n engine.on('open', onOpen)\n engine.on('close', onClose)\n return () => {\n engine.off('open', onOpen)\n engine.off('close', onClose)\n notifyNativeImageEditorState(false)\n engine.destroy()\n }\n }, [])\n\n const stickersKey = (config.stickers ?? []).join(' ')\n const lastStickersKeyRef = useRef<string | null>(null)\n useEffect(() => {\n const engine = engineRef.current\n if (!engine || lastStickersKeyRef.current === stickersKey) return\n lastStickersKeyRef.current = stickersKey\n engine.setStickers(config.stickers ?? [])\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [stickersKey])\n\n const rootRef = useRef<Root | null>(null)\n const containerRef = useRef<HTMLDivElement | null>(null)\n useEffect(() => {\n return () => {\n rootRef.current?.unmount()\n containerRef.current?.remove()\n rootRef.current = null\n containerRef.current = null\n }\n }, [])\n\n useEffect(() => {\n const engine = engineRef.current\n if (!engine) return\n if (!containerRef.current) {\n containerRef.current = document.createElement('div')\n document.body.appendChild(containerRef.current)\n rootRef.current = createRoot(containerRef.current)\n }\n rootRef.current!.render(\n <ImageEditorModal\n engine={engine}\n ui={uiState}\n isOpen={isOpen}\n saveLabel={configRef.current.saveLabel || 'Save'}\n />\n )\n }, [uiState, isOpen])\n\n return engineRef.current as ImageEditorInstance\n}\n"],"names":["useImageEditor","config","configRef","useRef","engineRef","uiState","setUiState","useState","isOpen","setIsOpen","initial","PictureStudioEngine","result","studio","current","ext","file","asset","useEffect","engine","onOpen","notifyNativeImageEditorState","onClose","stickersKey","lastStickersKeyRef","rootRef","containerRef","createRoot","React","ImageEditorModal"],"mappings":";;;;;AAaO,SAASA,EAAeC,GAAgD;AAC7E,QAAMC,IAAYC,EAAOF,CAAM;AAC/B,EAAAC,EAAU,UAAUD;AAEpB,QAAMG,IAAYD,EAAiC,IAAI,GACjD,CAACE,GAASC,CAAU,IAAIC,EAAoC,IAAI,GAChE,CAACC,GAAQC,CAAS,IAAIF,EAAS,EAAK;AAE1C,MAAI,CAACH,EAAU,WAAW,OAAO,SAAW,KAAa;AACvD,UAAMM,IAAUR,EAAU;AAC1B,IAAAE,EAAU,UAAUO,EAAoB,OAAO;AAAA,MAC7C,GAAGD;AAAA,MACH,OAAOA,EAAQ,SAASA,EAAQ;AAAA,MAChC,QAAQ,OAAOE,GAAQC,MAAW;AAChC,cAAMC,IAAUZ,EAAU;AAC1B,YAAIY,EAAQ,eAAe;AACzB,gBAAMC,IAAMH,EAAO,SAAS,eAAe,QAAQ,OAC7CI,IAAO,IAAI,KAAK,CAACJ,EAAO,IAAI,GAAG,QAAQG,CAAG,IAAI;AAAA,YAClD,MAAMH,EAAO;AAAA,UAAA,CACd,GACKK,IAAQ,MAAMH,EAAQ,cAAcE,CAAI;AAC9C,UAAAF,EAAQ,OAAO,EAAE,GAAGF,GAAQ,GAAGK,EAAA,GAASJ,CAAM;AAC9C;AAAA,QACF;AACA,QAAAC,EAAQ,OAAOF,GAAQC,CAAM;AAAA,MAC/B;AAAA,MACA,YAAYP;AAAA,IAAA,CACb;AAAA,EACH;AAEA,EAAAY,EAAU,MAAM;AACd,UAAMC,IAASf,EAAU;AACzB,QAAI,CAACe,EAAQ;AACb,UAAMC,IAAS,MAAM;AACnB,MAAAX,EAAU,EAAI,GACdY,EAA6B,EAAI;AAAA,IACnC,GACMC,IAAU,MAAM;AACpB,MAAAb,EAAU,EAAK,GACfY,EAA6B,EAAK;AAAA,IACpC;AACA,WAAAF,EAAO,GAAG,QAAQC,CAAM,GACxBD,EAAO,GAAG,SAASG,CAAO,GACnB,MAAM;AACX,MAAAH,EAAO,IAAI,QAAQC,CAAM,GACzBD,EAAO,IAAI,SAASG,CAAO,GAC3BD,EAA6B,EAAK,GAClCF,EAAO,QAAA;AAAA,IACT;AAAA,EACF,GAAG,CAAA,CAAE;AAEL,QAAMI,KAAetB,EAAO,YAAY,CAAA,GAAI,KAAK,GAAG,GAC9CuB,IAAqBrB,EAAsB,IAAI;AACrD,EAAAe,EAAU,MAAM;AACd,UAAMC,IAASf,EAAU;AACzB,IAAI,CAACe,KAAUK,EAAmB,YAAYD,MAC9CC,EAAmB,UAAUD,GAC7BJ,EAAO,YAAYlB,EAAO,YAAY,CAAA,CAAE;AAAA,EAE1C,GAAG,CAACsB,CAAW,CAAC;AAEhB,QAAME,IAAUtB,EAAoB,IAAI,GAClCuB,IAAevB,EAA8B,IAAI;AACvD,SAAAe,EAAU,MACD,MAAM;AACX,IAAAO,EAAQ,SAAS,QAAA,GACjBC,EAAa,SAAS,OAAA,GACtBD,EAAQ,UAAU,MAClBC,EAAa,UAAU;AAAA,EACzB,GACC,CAAA,CAAE,GAELR,EAAU,MAAM;AACd,UAAMC,IAASf,EAAU;AACzB,IAAKe,MACAO,EAAa,YAChBA,EAAa,UAAU,SAAS,cAAc,KAAK,GACnD,SAAS,KAAK,YAAYA,EAAa,OAAO,GAC9CD,EAAQ,UAAUE,EAAWD,EAAa,OAAO,IAEnDD,EAAQ,QAAS;AAAA,MACfG,gBAAAA,EAAA;AAAA,QAACC;AAAA,QAAA;AAAA,UACC,QAAAV;AAAA,UACA,IAAId;AAAA,UACJ,QAAAG;AAAA,UACA,WAAWN,EAAU,QAAQ,aAAa;AAAA,QAAA;AAAA,MAAA;AAAA,IAC5C;AAAA,EAEJ,GAAG,CAACG,GAASG,CAAM,CAAC,GAEbJ,EAAU;AACnB;"}
1
+ {"version":3,"file":"index.es45.js","sources":["../src/components/organisms/image-editor/use-image-editor.tsx"],"sourcesContent":["import React, { useEffect, useRef, useState } from 'react'\nimport { createRoot, type Root } from 'react-dom/client'\n\nimport { ImageEditorModal } from './image-editor-modal'\nimport {\n ImageEditorConfig,\n ImageEditorEngine,\n ImageEditorInstance,\n ImageEditorUiState,\n} from './image-editor.types'\nimport { notifyNativeImageEditorState } from './native-bridge'\nimport PictureStudioEngine from './picture-studio-engine'\n\nexport function useImageEditor(config: ImageEditorConfig): ImageEditorInstance {\n const configRef = useRef(config)\n configRef.current = config\n\n const engineRef = useRef<ImageEditorEngine | null>(null)\n const [uiState, setUiState] = useState<ImageEditorUiState | null>(null)\n const [isOpen, setIsOpen] = useState(false)\n\n if (!engineRef.current && typeof window !== 'undefined') {\n const initial = configRef.current\n engineRef.current = PictureStudioEngine.create({\n ...initial,\n image: initial.image ?? initial.backgroundImage,\n onSave: async (result, studio) => {\n const current = configRef.current\n if (current.onAssetUpload) {\n const ext = result.type === 'image/jpeg' ? 'jpg' : 'png'\n const file = new File([result.blob], `edit.${ext}`, {\n type: result.type,\n })\n const asset = await current.onAssetUpload(file)\n current.onSave({ ...result, ...asset }, studio)\n return\n }\n current.onSave(result, studio)\n },\n onUiChange: setUiState,\n }) as ImageEditorEngine\n }\n useEffect(() => {\n if (!engineRef.current || !config.savedLayers) return\n engineRef.current.setSavedLayers(config.savedLayers)\n }, [config.savedLayers])\n\n useEffect(() => {\n const engine = engineRef.current\n if (!engine) return\n const onOpen = () => {\n setIsOpen(true)\n notifyNativeImageEditorState(true)\n }\n const onClose = () => {\n setIsOpen(false)\n notifyNativeImageEditorState(false)\n }\n engine.on('open', onOpen)\n engine.on('close', onClose)\n return () => {\n engine.off('open', onOpen)\n engine.off('close', onClose)\n notifyNativeImageEditorState(false)\n engine.destroy()\n }\n }, [])\n\n const stickersKey = (config.stickers ?? []).join(' ')\n const lastStickersKeyRef = useRef<string | null>(null)\n useEffect(() => {\n const engine = engineRef.current\n if (!engine || lastStickersKeyRef.current === stickersKey) return\n lastStickersKeyRef.current = stickersKey\n engine.setStickers(config.stickers ?? [])\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [stickersKey])\n\n const rootRef = useRef<Root | null>(null)\n const containerRef = useRef<HTMLDivElement | null>(null)\n useEffect(() => {\n return () => {\n rootRef.current?.unmount()\n containerRef.current?.remove()\n rootRef.current = null\n containerRef.current = null\n }\n }, [])\n\n useEffect(() => {\n const engine = engineRef.current\n if (!engine) return\n if (!containerRef.current) {\n containerRef.current = document.createElement('div')\n document.body.appendChild(containerRef.current)\n rootRef.current = createRoot(containerRef.current)\n }\n rootRef.current!.render(\n <ImageEditorModal\n engine={engine}\n ui={uiState}\n isOpen={isOpen}\n saveLabel={configRef.current.saveLabel || 'Save'}\n />\n )\n }, [uiState, isOpen])\n\n return engineRef.current as ImageEditorInstance\n}\n"],"names":["useImageEditor","config","configRef","useRef","engineRef","uiState","setUiState","useState","isOpen","setIsOpen","initial","PictureStudioEngine","result","studio","current","ext","file","asset","useEffect","engine","onOpen","notifyNativeImageEditorState","onClose","stickersKey","lastStickersKeyRef","rootRef","containerRef","createRoot","React","ImageEditorModal"],"mappings":";;;;;AAaO,SAASA,EAAeC,GAAgD;AAC7E,QAAMC,IAAYC,EAAOF,CAAM;AAC/B,EAAAC,EAAU,UAAUD;AAEpB,QAAMG,IAAYD,EAAiC,IAAI,GACjD,CAACE,GAASC,CAAU,IAAIC,EAAoC,IAAI,GAChE,CAACC,GAAQC,CAAS,IAAIF,EAAS,EAAK;AAE1C,MAAI,CAACH,EAAU,WAAW,OAAO,SAAW,KAAa;AACvD,UAAMM,IAAUR,EAAU;AAC1B,IAAAE,EAAU,UAAUO,EAAoB,OAAO;AAAA,MAC7C,GAAGD;AAAA,MACH,OAAOA,EAAQ,SAASA,EAAQ;AAAA,MAChC,QAAQ,OAAOE,GAAQC,MAAW;AAChC,cAAMC,IAAUZ,EAAU;AAC1B,YAAIY,EAAQ,eAAe;AACzB,gBAAMC,IAAMH,EAAO,SAAS,eAAe,QAAQ,OAC7CI,IAAO,IAAI,KAAK,CAACJ,EAAO,IAAI,GAAG,QAAQG,CAAG,IAAI;AAAA,YAClD,MAAMH,EAAO;AAAA,UAAA,CACd,GACKK,IAAQ,MAAMH,EAAQ,cAAcE,CAAI;AAC9C,UAAAF,EAAQ,OAAO,EAAE,GAAGF,GAAQ,GAAGK,EAAA,GAASJ,CAAM;AAC9C;AAAA,QACF;AACA,QAAAC,EAAQ,OAAOF,GAAQC,CAAM;AAAA,MAC/B;AAAA,MACA,YAAYP;AAAA,IAAA,CACb;AAAA,EACH;AACA,EAAAY,EAAU,MAAM;AACd,IAAI,CAACd,EAAU,WAAW,CAACH,EAAO,eAClCG,EAAU,QAAQ,eAAeH,EAAO,WAAW;AAAA,EACrD,GAAG,CAACA,EAAO,WAAW,CAAC,GAEvBiB,EAAU,MAAM;AACd,UAAMC,IAASf,EAAU;AACzB,QAAI,CAACe,EAAQ;AACb,UAAMC,IAAS,MAAM;AACnB,MAAAX,EAAU,EAAI,GACdY,EAA6B,EAAI;AAAA,IACnC,GACMC,IAAU,MAAM;AACpB,MAAAb,EAAU,EAAK,GACfY,EAA6B,EAAK;AAAA,IACpC;AACA,WAAAF,EAAO,GAAG,QAAQC,CAAM,GACxBD,EAAO,GAAG,SAASG,CAAO,GACnB,MAAM;AACX,MAAAH,EAAO,IAAI,QAAQC,CAAM,GACzBD,EAAO,IAAI,SAASG,CAAO,GAC3BD,EAA6B,EAAK,GAClCF,EAAO,QAAA;AAAA,IACT;AAAA,EACF,GAAG,CAAA,CAAE;AAEL,QAAMI,KAAetB,EAAO,YAAY,CAAA,GAAI,KAAK,GAAG,GAC9CuB,IAAqBrB,EAAsB,IAAI;AACrD,EAAAe,EAAU,MAAM;AACd,UAAMC,IAASf,EAAU;AACzB,IAAI,CAACe,KAAUK,EAAmB,YAAYD,MAC9CC,EAAmB,UAAUD,GAC7BJ,EAAO,YAAYlB,EAAO,YAAY,CAAA,CAAE;AAAA,EAE1C,GAAG,CAACsB,CAAW,CAAC;AAEhB,QAAME,IAAUtB,EAAoB,IAAI,GAClCuB,IAAevB,EAA8B,IAAI;AACvD,SAAAe,EAAU,MACD,MAAM;AACX,IAAAO,EAAQ,SAAS,QAAA,GACjBC,EAAa,SAAS,OAAA,GACtBD,EAAQ,UAAU,MAClBC,EAAa,UAAU;AAAA,EACzB,GACC,CAAA,CAAE,GAELR,EAAU,MAAM;AACd,UAAMC,IAASf,EAAU;AACzB,IAAKe,MACAO,EAAa,YAChBA,EAAa,UAAU,SAAS,cAAc,KAAK,GACnD,SAAS,KAAK,YAAYA,EAAa,OAAO,GAC9CD,EAAQ,UAAUE,EAAWD,EAAa,OAAO,IAEnDD,EAAQ,QAAS;AAAA,MACfG,gBAAAA,EAAA;AAAA,QAACC;AAAA,QAAA;AAAA,UACC,QAAAV;AAAA,UACA,IAAId;AAAA,UACJ,QAAAG;AAAA,UACA,WAAWN,EAAU,QAAQ,aAAa;AAAA,QAAA;AAAA,MAAA;AAAA,IAC5C;AAAA,EAEJ,GAAG,CAACG,GAASG,CAAM,CAAC,GAEbJ,EAAU;AACnB;"}
@@ -4,9 +4,9 @@ import { Typography as d } from "./index.es19.js";
4
4
  import { Dropdown as _ } from "./index.es22.js";
5
5
  import { cn as f } from "./index.es89.js";
6
6
  import e, { useState as S } from "react";
7
- import { NavbarIconVariants as k } from "./index.es113.js";
7
+ import { NavbarIconVariants as k } from "./index.es116.js";
8
8
  import { AvatarDemo as A } from "./index.es6.js";
9
- import { CreditSheet as I } from "./index.es114.js";
9
+ import { CreditSheet as I } from "./index.es117.js";
10
10
  const O = ({ name: t = "", email: a = "" }) => {
11
11
  if (!(t || a)) return null;
12
12
  const r = "text-ellipsis overflow-hidden";
@@ -3,7 +3,7 @@ import { Dropdown as S } from "./index.es22.js";
3
3
  import { cn as p } from "./index.es89.js";
4
4
  import e, { useState as b } from "react";
5
5
  import { AvatarDemo as x } from "./index.es6.js";
6
- import { CreditSheet as I } from "./index.es114.js";
6
+ import { CreditSheet as I } from "./index.es117.js";
7
7
  import { BrandSwitcher as A } from "./index.es56.js";
8
8
  const q = ({ name: l = "", email: t = "" }) => {
9
9
  if (!(l || t)) return null;
@@ -3,7 +3,7 @@ import { Dropdown as z } from "./index.es22.js";
3
3
  import { cn as l } from "./index.es89.js";
4
4
  import e, { useState as I } from "react";
5
5
  import { AvatarDemo as T } from "./index.es6.js";
6
- import { CreditSheet as _ } from "./index.es114.js";
6
+ import { CreditSheet as _ } from "./index.es117.js";
7
7
  import { CreditsIndicator as F } from "./index.es55.js";
8
8
  import { BrandSwitcher as $ } from "./index.es56.js";
9
9
  import { ChevronLeft as L } from "lucide-react";
@@ -4,7 +4,7 @@ import { Badge as f } from "./index.es8.js";
4
4
  import { StarScore as B } from "./index.es52.js";
5
5
  import { Button as G } from "./index.es9.js";
6
6
  import { Skeleton as l } from "./index.es14.js";
7
- import { StoreInsightsSection as I, StoreOverviewSection as R, FootfallChartSection as P, CannibalisationChartSection as q, ReportSnippetGalleryView as F } from "./index.es98.js";
7
+ import { StoreInsightsSection as I, StoreOverviewSection as R, FootfallChartSection as P, CannibalisationChartSection as q, ReportSnippetGalleryView as F } from "./index.es136.js";
8
8
  const Y = ({
9
9
  map: E,
10
10
  title: y,
@@ -1,6 +1,6 @@
1
1
  import * as e from "react";
2
2
  import { cn as i } from "./index.es89.js";
3
- import { AnimatedInputContainerVariants as F, AnimatedInputStyles as w, DynamicComponentStyles as y } from "./index.es104.js";
3
+ import { AnimatedInputContainerVariants as F, AnimatedInputStyles as w, DynamicComponentStyles as y } from "./index.es119.js";
4
4
  import { Typography as A } from "./index.es19.js";
5
5
  import { XCircle as R } from "lucide-react";
6
6
  const b = e.forwardRef(
@@ -9,7 +9,7 @@ import "./index.es60.js";
9
9
  import "./index.es90.js";
10
10
  import "./index.es29.js";
11
11
  import "./index.es35.js";
12
- import { MAP_LAYER_TYPES as j, MAP_LAYER_CONFIG as g } from "./index.es119.js";
12
+ import { MAP_LAYER_TYPES as j, MAP_LAYER_CONFIG as g } from "./index.es113.js";
13
13
  const D = ({
14
14
  map: t,
15
15
  mapRef: l,
@@ -1,5 +1,5 @@
1
1
  import t from "react";
2
- import { Carousel as m, CarouselContent as n, CarouselItem as r, CarouselPrevious as s, CarouselNext as c } from "./index.es125.js";
2
+ import { Carousel as m, CarouselContent as n, CarouselItem as r, CarouselPrevious as s, CarouselNext as c } from "./index.es105.js";
3
3
  const i = (e) => /* @__PURE__ */ t.createElement(
4
4
  m,
5
5
  {
@@ -1,6 +1,6 @@
1
1
  import r from "react";
2
- import { ClusterHoverCard as t } from "./index.es123.js";
3
- import { PointHoverCard as a } from "./index.es124.js";
2
+ import { ClusterHoverCard as t } from "./index.es110.js";
3
+ import { PointHoverCard as a } from "./index.es111.js";
4
4
  function n(e) {
5
5
  return e.variant === "CLUSTER" ? /* @__PURE__ */ r.createElement(t, { ...e }) : /* @__PURE__ */ r.createElement(a, { ...e });
6
6
  }
@@ -1,5 +1,5 @@
1
1
  import * as t from "react";
2
- import { InputOTP as u, InputOTPGroup as f, InputOTPSlot as y } from "./index.es132.js";
2
+ import { InputOTP as u, InputOTPGroup as f, InputOTPSlot as y } from "./index.es114.js";
3
3
  import { Typography as i } from "./index.es19.js";
4
4
  const g = ({
5
5
  length: a = 6,
@@ -1,5 +1,5 @@
1
1
  import e from "react";
2
- import { Pagination as u, PaginationContent as N, PaginationItem as o, PaginationPrevious as b, PaginationNext as C, PaginationEllipsis as y } from "./index.es135.js";
2
+ import { Pagination as u, PaginationContent as N, PaginationItem as o, PaginationPrevious as b, PaginationNext as C, PaginationEllipsis as y } from "./index.es115.js";
3
3
  import { Button as r } from "./index.es9.js";
4
4
  import { Typography as p } from "./index.es19.js";
5
5
  const B = ({
@@ -1,11 +1,11 @@
1
1
  import e, { useState as s } from "react";
2
- import { MembersSection as E } from "./index.es105.js";
3
- import { ServingStatesSection as u } from "./index.es106.js";
4
- import { TypeSection as N } from "./index.es107.js";
5
- import { SharedMarketsSection as b } from "./index.es108.js";
6
- import { PropertiesAddedSection as A } from "./index.es109.js";
7
- import { NotesSection as C } from "./index.es110.js";
8
- import { DialogNote as v } from "./index.es111.js";
2
+ import { MembersSection as E } from "./index.es120.js";
3
+ import { ServingStatesSection as u } from "./index.es121.js";
4
+ import { TypeSection as N } from "./index.es122.js";
5
+ import { SharedMarketsSection as b } from "./index.es123.js";
6
+ import { PropertiesAddedSection as A } from "./index.es124.js";
7
+ import { NotesSection as C } from "./index.es125.js";
8
+ import { DialogNote as v } from "./index.es126.js";
9
9
  const y = (o) => {
10
10
  const [a, t] = s(!1), [n, r] = s(""), m = () => {
11
11
  t(!0);
@@ -2,8 +2,8 @@ import * as e from "react";
2
2
  import { useRef as f, useCallback as N, useEffect as h } from "react";
3
3
  import { Spinner as x } from "./index.es64.js";
4
4
  import { SheetPrimary as b } from "./index.es42.js";
5
- import g from "./index.es171.js";
6
- import w from "./index.es172.js";
5
+ import g from "./index.es174.js";
6
+ import w from "./index.es175.js";
7
7
  const R = ({
8
8
  isOpen: i,
9
9
  onOpenChange: u,
@@ -1,5 +1,5 @@
1
1
  import { cva as t } from "class-variance-authority";
2
- import { defaultTypographyVariant as e } from "./index.es121.js";
2
+ import { defaultTypographyVariant as e } from "./index.es108.js";
3
3
  const a = t("", {
4
4
  variants: {
5
5
  variant: {
@@ -1,14 +1,19 @@
1
- import { cva as e } from "class-variance-authority";
2
- const a = e(
3
- "relative flex w-60 touch-none select-none items-center",
4
- {
5
- variants: {
6
- variant: {}
7
- },
8
- defaultVariants: {}
9
- }
10
- );
1
+ import _ from "react-dom";
2
+ var r, t = _;
3
+ if (process.env.NODE_ENV === "production")
4
+ r = t.createRoot, t.hydrateRoot;
5
+ else {
6
+ var e = t.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED;
7
+ r = function(o, n) {
8
+ e.usingClientEntryPoint = !0;
9
+ try {
10
+ return t.createRoot(o, n);
11
+ } finally {
12
+ e.usingClientEntryPoint = !1;
13
+ }
14
+ };
15
+ }
11
16
  export {
12
- a as SliderVariants
17
+ r as createRoot
13
18
  };
14
19
  //# sourceMappingURL=index.es97.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.es97.js","sources":["../src/components/molecules/slider/slider.styles.ts"],"sourcesContent":["import { cva } from 'class-variance-authority'\n\nexport const SliderVariants = cva(\n 'relative flex w-60 touch-none select-none items-center',\n {\n variants: {\n variant: {},\n },\n defaultVariants: {},\n }\n)\n"],"names":["SliderVariants","cva"],"mappings":";AAEO,MAAMA,IAAiBC;AAAA,EAC5B;AAAA,EACA;AAAA,IACE,UAAU;AAAA,MACR,SAAS,CAAA;AAAA,IAAC;AAAA,IAEZ,iBAAiB,CAAA;AAAA,EAAC;AAEtB;"}
1
+ {"version":3,"file":"index.es97.js","sources":["../node_modules/react-dom/client.js"],"sourcesContent":["'use strict';\n\nvar m = require('react-dom');\nif (process.env.NODE_ENV === 'production') {\n exports.createRoot = m.createRoot;\n exports.hydrateRoot = m.hydrateRoot;\n} else {\n var i = m.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED;\n exports.createRoot = function(c, o) {\n i.usingClientEntryPoint = true;\n try {\n return m.createRoot(c, o);\n } finally {\n i.usingClientEntryPoint = false;\n }\n };\n exports.hydrateRoot = function(c, h, o) {\n i.usingClientEntryPoint = true;\n try {\n return m.hydrateRoot(c, h, o);\n } finally {\n i.usingClientEntryPoint = false;\n }\n };\n}\n"],"names":["m","require$$0","createRoot","i","c","o"],"mappings":";OAEIA,IAAIC;AACR,IAAI,QAAQ,IAAI,aAAa;AAC3B,EAAAC,IAAqBF,EAAE,YACDA,EAAE;AAAA,KACnB;AACL,MAAIG,IAAIH,EAAE;AACV,EAAAE,IAAqB,SAASE,GAAGC,GAAG;AAClC,IAAAF,EAAE,wBAAwB;AAC1B,QAAI;AACF,aAAOH,EAAE,WAAWI,GAAGC,CAAC;AAAA,IAC9B,UAAK;AACC,MAAAF,EAAE,wBAAwB;AAAA,IAChC;AAAA,EACA;AASA;","x_google_ignoreList":[0]}
@@ -1,277 +1,104 @@
1
- import e from "react";
2
- import { FONT_FAMILY as v } from "./index.es137.js";
3
- import { _Dialog as N } from "./index.es41.js";
4
- import { X as w, ChevronLeft as S, ChevronRight as C } from "lucide-react";
5
- import { Typography as i } from "./index.es19.js";
6
- import { ResponsiveContainer as d, BarChart as u, CartesianGrid as f, XAxis as g, YAxis as h, Tooltip as p, Bar as E } from "recharts";
7
- import { trendBoxStyles as k, trendValueStyles as F } from "./index.es138.js";
8
- const I = ({
9
- data: r,
10
- onToggle: t,
11
- isOpen: n,
12
- galleryActiveIndex: a,
13
- setgalleryActiveIndex: l
14
- }) => {
15
- const o = r && r.length, b = () => {
16
- r && l((s) => (s + 1) % r?.length);
17
- }, y = () => {
18
- r && l(
19
- (s) => (s - 1 + r.length) % r.length
1
+ import { Loader2 as g, Save as v, X as E } from "lucide-react";
2
+ import t, { useRef as n, useState as x, useEffect as s } from "react";
3
+ import { Button as b } from "./index.es9.js";
4
+ import { ImageEditorPortalContext as h } from "./index.es137.js";
5
+ import { Panel as y } from "./index.es138.js";
6
+ import { Ribbon as S } from "./index.es139.js";
7
+ import { Stage as w } from "./index.es140.js";
8
+ import { LineSessionBar as N } from "./index.es141.js";
9
+ import { StatusBar as R } from "./index.es142.js";
10
+ function z({
11
+ engine: a,
12
+ ui: r,
13
+ isOpen: o,
14
+ saveLabel: u
15
+ }) {
16
+ const l = n(null), [d, p] = x(null), i = n(null), c = n(null), m = n(!1);
17
+ return s(() => {
18
+ if (m.current) return;
19
+ const e = i.current;
20
+ !e?.canvas || !e.overlay || !e.textEditor || !e.stage || (a.mount({
21
+ canvas: e.canvas,
22
+ overlay: e.overlay,
23
+ textEditor: e.textEditor,
24
+ stage: e.stage
25
+ }), m.current = !0);
26
+ }, [r != null]), s(() => {
27
+ if (!o || !l.current) return;
28
+ l.current.hasAttribute("tabindex") || l.current.setAttribute("tabindex", "-1");
29
+ const e = setTimeout(
30
+ () => l.current?.focus({ preventScroll: !0 }),
31
+ 0
20
32
  );
21
- }, x = (s) => {
22
- l(s);
23
- }, m = () => {
24
- t();
25
- };
26
- return /* @__PURE__ */ e.createElement(
27
- N,
33
+ return () => clearTimeout(e);
34
+ }, [o]), s(() => {
35
+ o && a.refitStage();
36
+ }, [o, a]), r ? /* @__PURE__ */ t.createElement(
37
+ "div",
28
38
  {
29
- open: n,
30
- trigger: null,
31
- contentClassName: "bg-transparent w-fit border-0",
32
- onInteractOutside: m,
33
- body: /* @__PURE__ */ e.createElement("div", { className: "flex flex-col items-center justify-center w-full h-full max-w-3xl mx-auto" }, /* @__PURE__ */ e.createElement(
34
- w,
35
- {
36
- size: 24,
37
- color: "white",
38
- className: "absolute z-50 cursor-pointer -right-10 -top-10",
39
- onClick: m
40
- }
41
- ), /* @__PURE__ */ e.createElement("div", { className: "relative" }, /* @__PURE__ */ e.createElement("div", { className: "relative " }, o && /* @__PURE__ */ e.createElement(
42
- "img",
43
- {
44
- key: r[a].image_url,
45
- src: r[a].image_url,
46
- alt: `Street ${a + 1}`,
47
- className: "w-[500px] max-h-[80vh] object-contain flex-shrink-0"
48
- }
49
- )), /* @__PURE__ */ e.createElement("div", { className: "relative top-[-50%] left-[-10%] flex row w-[120%] justify-between" }, /* @__PURE__ */ e.createElement("div", { role: "button", tabIndex: 0, onClick: y }, /* @__PURE__ */ e.createElement(S, { size: 30, color: "white" })), /* @__PURE__ */ e.createElement("div", { role: "button", tabIndex: 0, onClick: b }, /* @__PURE__ */ e.createElement(C, { size: 30, color: "white" })))), /* @__PURE__ */ e.createElement("div", { className: "flex justify-center p-2 mt-4 space-x-2 rounded-lg" }, o && r.map((s, c) => /* @__PURE__ */ e.createElement(
50
- "img",
51
- {
52
- key: c,
53
- src: s.image_url,
54
- alt: `Thumbnail ${c + 1}`,
55
- onClick: () => x(c),
56
- className: `w-20 h-auto rounded-lg cursor-pointer ${c === a ? "ring-2 ring-primary-1" : "ring-2 ring-transparent"} hover:ring-gray-300`
57
- }
58
- ))))
59
- }
60
- );
61
- }, $ = ({ active: r, payload: t, label: n, year: a }) => {
62
- if (r && t && t.length) {
63
- const l = t[0]?.payload?.year, o = t[0]?.value;
64
- return /* @__PURE__ */ e.createElement("div", { className: "flex flex-col bg-light-1 p-4 rounded-lg shadow-md min-w-[200px] gap-1" }, /* @__PURE__ */ e.createElement(i, { variant: "body6", className: "text-primary" }, `${n}'${l}`), /* @__PURE__ */ e.createElement("div", { className: "my-2 w-full h-px border border-stroke-1" }), /* @__PURE__ */ e.createElement("div", { className: "flex" }, /* @__PURE__ */ e.createElement(
65
- "div",
66
- {
67
- className: "h-4 w-1 rounded-lg",
68
- style: { backgroundColor: "#6D48EF" }
69
- }
70
- ), /* @__PURE__ */ e.createElement(i, { variant: "body6", className: "text-secondary mx-1" }, "Visits"), /* @__PURE__ */ e.createElement(i, { variant: "body4", className: "text-secondary ml-auto" }, ` ${o}`)));
71
- }
72
- return null;
73
- }, z = ({ active: r, payload: t, label: n }) => {
74
- if (r && t && t.length) {
75
- const a = t[0]?.payload?.distance, l = t[0]?.value;
76
- return /* @__PURE__ */ e.createElement("div", { className: "flex bg-light-1 items-center justify-between rounded-lg shadow-md min-w-45 max-w-80 gap-2 p-2" }, /* @__PURE__ */ e.createElement(i, { variant: "body6", className: "text-primary" }, /* @__PURE__ */ e.createElement("div", { className: "flex h-full justify-between items-center p-2 gap-4" }, /* @__PURE__ */ e.createElement("div", null, n), /* @__PURE__ */ e.createElement("div", null, " ", a + "km"))), /* @__PURE__ */ e.createElement(
77
- i,
78
- {
79
- variant: "body4",
80
- className: "text-normal text-danger-1 ml-auto p-2"
39
+ ref: (e) => {
40
+ l.current = e, p(e);
81
41
  },
82
- `${l}%`
83
- ));
84
- }
85
- return null;
86
- }, K = ({ insights: r }) => /* @__PURE__ */ e.createElement("div", null, /* @__PURE__ */ e.createElement("div", { className: "flex flex-row mb-4 justify-between" }, /* @__PURE__ */ e.createElement(i, { variant: "body4", className: "text-light-2" }, "Store Insight:")), /* @__PURE__ */ e.createElement("div", { className: "bg-light-2 p-3 border border-neutral-1 rounded-lg" }, /* @__PURE__ */ e.createElement(i, { variant: "body4", className: "text-light-2 mb-2" }, "Presence of other brands in catchment:"), /* @__PURE__ */ e.createElement("div", { className: "flex gap-1 flex-wrap" }, r.map((t) => /* @__PURE__ */ e.createElement(
87
- "div",
88
- {
89
- key: t.type,
90
- className: "flex items-center gap-1 bg-light-1 px-2 py-1 rounded-full border border-neutral-1"
91
- },
92
- /* @__PURE__ */ e.createElement(
93
- "img",
94
- {
95
- src: t.iconUrl,
96
- alt: `${t.type} Icon`,
97
- className: "w-4 h-4"
98
- }
99
- ),
100
- /* @__PURE__ */ e.createElement(i, { variant: "body6", className: "text-light-2" }, t.count),
101
- /* @__PURE__ */ e.createElement("div", { className: "flex items-center gap-1" }, /* @__PURE__ */ e.createElement(i, { variant: "body6", className: "text-light-2" }, t.type === "competitor" ? "Competitors" : "Complementary"))
102
- ))))), R = ({
103
- highlights: r
104
- }) => /* @__PURE__ */ e.createElement("div", null, /* @__PURE__ */ e.createElement(i, { variant: "body4", className: "text-light-2 mb-2" }, "Store Overview:"), /* @__PURE__ */ e.createElement("div", { className: "bg-light-2 p-1 border border-neutral-1 rounded-lg" }, /* @__PURE__ */ e.createElement("div", { className: "flex justify-evenly items-center" }, r.map((t, n) => /* @__PURE__ */ e.createElement(e.Fragment, { key: n }, /* @__PURE__ */ e.createElement("div", { className: "flex flex-col items-center justify-center text-center gap-1 p-" }, /* @__PURE__ */ e.createElement(
105
- "div",
106
- {
107
- className: k({
108
- trend: t.trend?.toString()
109
- })
110
- },
111
- t.trend === 1 && /* @__PURE__ */ e.createElement(
112
- "img",
113
- {
114
- src: "https://frontend-static-files.geoiq.io/strapi/trending_up_9d73d6fac5.svg",
115
- alt: "High Trend",
116
- className: "w-3 h-3"
117
- }
118
- ),
119
- t.trend === -1 && /* @__PURE__ */ e.createElement(
120
- "img",
121
- {
122
- src: "https://frontend-static-files.geoiq.io/strapi/trending_down_87adc7f3a6.svg",
123
- alt: "Low Trend",
124
- className: "w-3 h-3"
125
- }
126
- ),
127
- t.value && t.trend ? /* @__PURE__ */ e.createElement(
128
- i,
129
- {
130
- variant: "body5",
131
- className: F({
132
- trend: t.trend?.toString()
133
- })
134
- },
135
- `${t.value}%`
136
- ) : /* @__PURE__ */ e.createElement(i, { variant: "body5", className: "text-sm" }, "-")
137
- ), t.name && /* @__PURE__ */ e.createElement(i, { variant: "body6", className: "text-light-2" }, t.name)), n < r.length - 1 && /* @__PURE__ */ e.createElement("div", { className: "border-l border-stroke-light-1 h-20 mx-1" })))))), M = ({ data: r }) => !r || r.every((t) => t.footfall === null) ? null : /* @__PURE__ */ e.createElement("div", { className: "w-full h-full bg-light-2 border border-neutral-1 p-3 rounded-lg" }, /* @__PURE__ */ e.createElement(i, { variant: "body4", className: "text-light-2 mb-4" }, "Footfall trends"), /* @__PURE__ */ e.createElement(d, { width: "100%", height: 300 }, /* @__PURE__ */ e.createElement(
138
- u,
139
- {
140
- data: r,
141
- margin: {
142
- top: 3,
143
- right: 3,
144
- bottom: -10,
145
- left: 3
146
- },
147
- barSize: 24
148
- },
149
- /* @__PURE__ */ e.createElement(f, { strokeDasharray: "10 10" }),
150
- /* @__PURE__ */ e.createElement(
151
- g,
152
- {
153
- dataKey: "month",
42
+ className: "fixed inset-0 z-[2147483000] flex items-center justify-center bg-[rgba(24,22,18,.55)] backdrop-blur-sm",
154
43
  style: {
155
- font: v,
156
- fontSize: "12px",
157
- fontWeight: "500",
158
- color: "#4A4A4A"
159
- }
160
- }
161
- ),
162
- /* @__PURE__ */ e.createElement(
163
- h,
164
- {
165
- className: "text-4-grey",
166
- style: { fontSize: "12px", fontWeight: "500" },
167
- tickFormatter: (t) => t > 1e6 ? `${t / 1e6}M` : t > 1e3 ? `${t / 1e3}K` : t,
168
- label: {
169
- value: "AVG FOOTFALL FOR A 3-MONTH PERIOD",
170
- angle: -90,
171
- position: "insideLeft",
172
- dy: -5,
173
- style: {
174
- textAnchor: "middle",
175
- fontSize: "12px",
176
- fontWeight: "500"
177
- }
178
- }
179
- }
180
- ),
181
- /* @__PURE__ */ e.createElement(p, { content: /* @__PURE__ */ e.createElement($, null) }),
182
- /* @__PURE__ */ e.createElement(
183
- E,
184
- {
185
- dataKey: "footfall",
186
- fill: "#6D48EF",
187
- radius: [4, 4, 4, 4],
188
- style: { cursor: "pointer" }
189
- }
190
- )
191
- ))), W = ({
192
- data: r
193
- }) => {
194
- if (!r || r.every((n) => n.cannibalisation === null))
195
- return null;
196
- const t = (n) => {
197
- const a = r.length;
198
- let l;
199
- return a <= 1 ? l = 50 : a <= 6 ? l = 22 - (a - 1) * 4 : l = 6, n.length > l ? `${n.slice(0, l)}...` : n;
200
- };
201
- return /* @__PURE__ */ e.createElement("div", { className: "w-full h-full bg-light-2 border border-neutral-1 p-3 rounded-lg" }, /* @__PURE__ */ e.createElement(i, { variant: "body4", className: "text-light-2 mb-4" }, "Cannibalisation effects"), /* @__PURE__ */ e.createElement(d, { width: "100%", height: 300 }, /* @__PURE__ */ e.createElement(
202
- u,
203
- {
204
- data: r,
205
- margin: {
206
- top: 3,
207
- right: 3,
208
- bottom: 5,
209
- left: 3
44
+ display: o ? "flex" : "none",
45
+ pointerEvents: "auto"
210
46
  },
211
- barSize: 24
47
+ onMouseDown: (e) => {
48
+ e.target === e.currentTarget && r.closeOnBackdrop && a.close();
49
+ }
212
50
  },
213
- /* @__PURE__ */ e.createElement(f, { strokeDasharray: "10 10" }),
214
- /* @__PURE__ */ e.createElement(
215
- g,
51
+ /* @__PURE__ */ t.createElement(h.Provider, { value: d }, /* @__PURE__ */ t.createElement("div", { className: "image-editor-modal-panel flex flex-col overflow-hidden bg-light-2 shadow-2xl" }, /* @__PURE__ */ t.createElement("div", { className: "flex items-center gap-3 border-b border-neutral-1 bg-light-3 px-4 py-3" }, /* @__PURE__ */ t.createElement(
52
+ b,
216
53
  {
217
- dataKey: "store_name",
218
- tickFormatter: t,
219
- tickMargin: 10,
220
- tick: (n) => {
221
- const { x: a, y: l, payload: o } = n;
222
- return /* @__PURE__ */ e.createElement("text", { x: a, y: l, textAnchor: "end", fill: "#666" }, /* @__PURE__ */ e.createElement("tspan", { x: a, style: { fontSize: 12 } }, t(o.value)), /* @__PURE__ */ e.createElement(
223
- "tspan",
224
- {
225
- x: a,
226
- dy: "1.5em",
227
- style: {
228
- fontSize: 10,
229
- whiteSpace: "nowrap",
230
- paddingTop: "2px"
231
- }
232
- },
233
- r[o.index].distance + " kms"
234
- ));
235
- }
54
+ variant: "primary",
55
+ size: "sm",
56
+ disabled: !r.hasImage || r.isLoadingImage || r.isSaving,
57
+ onClick: a.save,
58
+ className: "w-auto",
59
+ prefixIcon: r.isSaving ? /* @__PURE__ */ t.createElement(g, { className: "h-4 w-4 animate-spin" }) : /* @__PURE__ */ t.createElement(v, { className: "h-4 w-4" })
60
+ },
61
+ r.isSaving ? "Saving…" : u
62
+ ), /* @__PURE__ */ t.createElement(
63
+ "button",
64
+ {
65
+ type: "button",
66
+ title: "Close",
67
+ onClick: () => a.close(),
68
+ className: "ml-auto flex h-[30px] w-[30px] items-center justify-center rounded-lg border border-neutral-1 bg-white text-light-4 hover:bg-light-3 hover:text-light-2"
69
+ },
70
+ /* @__PURE__ */ t.createElement(E, { className: "h-4 w-4" })
71
+ )), /* @__PURE__ */ t.createElement(
72
+ S,
73
+ {
74
+ ui: r,
75
+ engine: a,
76
+ onOpenFile: () => c.current?.click()
236
77
  }
237
- ),
238
- /* @__PURE__ */ e.createElement(
239
- h,
78
+ ), /* @__PURE__ */ t.createElement(
79
+ "input",
240
80
  {
241
- className: "text-4-grey",
242
- style: { fontSize: "12px", fontWeight: "500" },
243
- tickFormatter: (n) => n > 1e6 ? `${n / 1e6}M` : n > 1e3 ? `${n / 1e3}K` : n,
244
- label: {
245
- value: "CANNIBALISATION IN %",
246
- angle: -90,
247
- position: "insideLeft",
248
- dy: -5,
249
- style: {
250
- textAnchor: "middle",
251
- fontSize: "12px",
252
- fontWeight: "500"
253
- }
254
- },
255
- domain: [0, 100]
81
+ ref: c,
82
+ type: "file",
83
+ accept: "image/*",
84
+ hidden: !0,
85
+ onChange: (e) => {
86
+ const f = e.target.files?.[0];
87
+ f && a.openFile(f), e.target.value = "";
88
+ }
256
89
  }
257
- ),
258
- /* @__PURE__ */ e.createElement(p, { content: /* @__PURE__ */ e.createElement(z, null) }),
259
- /* @__PURE__ */ e.createElement(
260
- E,
90
+ ), /* @__PURE__ */ t.createElement("div", { className: "image-editor-stage-panel-wrap relative flex min-h-0 flex-1" }, /* @__PURE__ */ t.createElement(N, { ui: r, engine: a }), /* @__PURE__ */ t.createElement(
91
+ w,
261
92
  {
262
- dataKey: "cannibalisation",
263
- fill: "#F93232",
264
- radius: [4, 4, 4, 4],
265
- style: { cursor: "pointer" }
93
+ ref: i,
94
+ ui: r,
95
+ onChooseImage: () => c.current?.click(),
96
+ onDropFile: (e) => a.openFile(e)
266
97
  }
267
- )
268
- )));
269
- };
98
+ ), /* @__PURE__ */ t.createElement(y, { ui: r, engine: a })), /* @__PURE__ */ t.createElement(R, { ui: r })))
99
+ ) : null;
100
+ }
270
101
  export {
271
- W as CannibalisationChartSection,
272
- M as FootfallChartSection,
273
- I as ReportSnippetGalleryView,
274
- K as StoreInsightsSection,
275
- R as StoreOverviewSection
102
+ z as ImageEditorModal
276
103
  };
277
104
  //# sourceMappingURL=index.es98.js.map