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,103 +1,16 @@
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.es140.js";
5
- import { Panel as y } from "./index.es141.js";
6
- import { Ribbon as w } from "./index.es142.js";
7
- import { Stage as S } from "./index.es143.js";
8
- import { StatusBar as N } from "./index.es144.js";
9
- function j({
10
- engine: a,
11
- ui: r,
12
- isOpen: l,
13
- saveLabel: u
14
- }) {
15
- const o = n(null), [d, p] = x(null), i = n(null), c = n(null), m = n(!1);
16
- return s(() => {
17
- if (m.current) return;
18
- const e = i.current;
19
- !e?.canvas || !e.overlay || !e.textEditor || !e.stage || (a.mount({
20
- canvas: e.canvas,
21
- overlay: e.overlay,
22
- textEditor: e.textEditor,
23
- stage: e.stage
24
- }), m.current = !0);
25
- }, [r != null]), s(() => {
26
- if (!l || !o.current) return;
27
- o.current.hasAttribute("tabindex") || o.current.setAttribute("tabindex", "-1");
28
- const e = setTimeout(
29
- () => o.current?.focus({ preventScroll: !0 }),
30
- 0
31
- );
32
- return () => clearTimeout(e);
33
- }, [l]), s(() => {
34
- l && a.refitStage();
35
- }, [l, a]), r ? /* @__PURE__ */ t.createElement(
36
- "div",
37
- {
38
- ref: (e) => {
39
- o.current = e, p(e);
40
- },
41
- className: "fixed inset-0 z-[2147483000] flex items-center justify-center bg-[rgba(24,22,18,.55)] backdrop-blur-sm",
42
- style: {
43
- display: l ? "flex" : "none",
44
- pointerEvents: "auto"
45
- },
46
- onMouseDown: (e) => {
47
- e.target === e.currentTarget && r.closeOnBackdrop && a.close();
1
+ import { cva as r } from "class-variance-authority";
2
+ const i = r(
3
+ "h-10 w-10 p-2 grid place-items-center rounded-md hover:bg-hover-s3 hover:cursor-pointer relative",
4
+ {
5
+ variants: {
6
+ isActive: {
7
+ true: "bg-click-s3",
8
+ false: "bg-inherit"
48
9
  }
49
- },
50
- /* @__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(
51
- b,
52
- {
53
- variant: "primary",
54
- size: "sm",
55
- disabled: !r.hasImage || r.isLoadingImage || r.isSaving,
56
- onClick: a.save,
57
- className: "w-auto",
58
- prefixIcon: r.isSaving ? /* @__PURE__ */ t.createElement(g, { className: "h-4 w-4 animate-spin" }) : /* @__PURE__ */ t.createElement(v, { className: "h-4 w-4" })
59
- },
60
- r.isSaving ? "Saving…" : u
61
- ), /* @__PURE__ */ t.createElement(
62
- "button",
63
- {
64
- type: "button",
65
- title: "Close",
66
- onClick: () => a.close(),
67
- 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"
68
- },
69
- /* @__PURE__ */ t.createElement(E, { className: "h-4 w-4" })
70
- )), /* @__PURE__ */ t.createElement(
71
- w,
72
- {
73
- ui: r,
74
- engine: a,
75
- onOpenFile: () => c.current?.click()
76
- }
77
- ), /* @__PURE__ */ t.createElement(
78
- "input",
79
- {
80
- ref: c,
81
- type: "file",
82
- accept: "image/*",
83
- hidden: !0,
84
- onChange: (e) => {
85
- const f = e.target.files?.[0];
86
- f && a.openFile(f), e.target.value = "";
87
- }
88
- }
89
- ), /* @__PURE__ */ t.createElement("div", { className: "image-editor-stage-panel-wrap flex min-h-0 flex-1" }, /* @__PURE__ */ t.createElement(
90
- S,
91
- {
92
- ref: i,
93
- ui: r,
94
- onChooseImage: () => c.current?.click(),
95
- onDropFile: (e) => a.openFile(e)
96
- }
97
- ), /* @__PURE__ */ t.createElement(y, { ui: r, engine: a })), /* @__PURE__ */ t.createElement(N, { ui: r })))
98
- ) : null;
99
- }
10
+ }
11
+ }
12
+ );
100
13
  export {
101
- j as ImageEditorModal
14
+ i as NavbarIconVariants
102
15
  };
103
16
  //# sourceMappingURL=index.es116.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.es116.js","sources":["../src/components/organisms/image-editor/image-editor-modal.tsx"],"sourcesContent":["import { Loader2, Save, X } from 'lucide-react'\nimport React, { useEffect, useRef, useState } from 'react'\n\nimport { Button } from '@/components/atoms/button'\n\nimport { ImageEditorEngine, ImageEditorUiState } from './image-editor.types'\nimport { ImageEditorPortalContext } from './components/portal-context'\nimport { Panel } from './components/panel'\nimport { Ribbon } from './components/ribbon'\nimport { Stage, StageHandle } from './components/stage'\nimport { StatusBar } from './components/status-bar'\n\nexport interface ImageEditorModalProps {\n engine: ImageEditorEngine\n ui: ImageEditorUiState | null\n isOpen: boolean\n saveLabel: string\n}\n\nexport function ImageEditorModal({\n engine,\n ui,\n isOpen,\n saveLabel,\n}: ImageEditorModalProps) {\n const rootRef = useRef<HTMLDivElement | null>(null)\n const [rootEl, setRootEl] = useState<HTMLDivElement | null>(null)\n const stageRef = useRef<StageHandle>(null)\n const fileInputRef = useRef<HTMLInputElement>(null)\n const mountedRef = useRef(false)\n\n useEffect(() => {\n if (mountedRef.current) return\n const s = stageRef.current\n if (!s?.canvas || !s.overlay || !s.textEditor || !s.stage) return\n engine.mount({\n canvas: s.canvas,\n overlay: s.overlay,\n textEditor: s.textEditor,\n stage: s.stage,\n })\n mountedRef.current = true\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [ui != null])\n\n useEffect(() => {\n if (!isOpen || !rootRef.current) return\n if (!rootRef.current.hasAttribute('tabindex'))\n rootRef.current.setAttribute('tabindex', '-1')\n const t = setTimeout(\n () => rootRef.current?.focus({ preventScroll: true }),\n 0\n )\n return () => clearTimeout(t)\n }, [isOpen])\n\n useEffect(() => {\n if (!isOpen) return\n engine.refitStage()\n }, [isOpen, engine])\n\n if (!ui) return null\n\n return (\n <div\n ref={(node) => {\n rootRef.current = node\n setRootEl(node)\n }}\n className=\"fixed inset-0 z-[2147483000] flex items-center justify-center bg-[rgba(24,22,18,.55)] backdrop-blur-sm\"\n style={{\n display: isOpen ? 'flex' : 'none',\n pointerEvents: 'auto',\n }}\n onMouseDown={(e) => {\n if (e.target === e.currentTarget && ui.closeOnBackdrop) engine.close()\n }}\n >\n <ImageEditorPortalContext.Provider value={rootEl}>\n <div className=\"image-editor-modal-panel flex flex-col overflow-hidden bg-light-2 shadow-2xl\">\n <div className=\"flex items-center gap-3 border-b border-neutral-1 bg-light-3 px-4 py-3\">\n <Button\n variant=\"primary\"\n size=\"sm\"\n disabled={!ui.hasImage || ui.isLoadingImage || ui.isSaving}\n onClick={engine.save}\n className=\"w-auto\"\n prefixIcon={\n ui.isSaving ? (\n <Loader2 className=\"h-4 w-4 animate-spin\" />\n ) : (\n <Save className=\"h-4 w-4\" />\n )\n }\n >\n {ui.isSaving ? 'Saving…' : saveLabel}\n </Button>\n <button\n type=\"button\"\n title=\"Close\"\n onClick={() => engine.close()}\n 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\"\n >\n <X className=\"h-4 w-4\" />\n </button>\n </div>\n\n <Ribbon\n ui={ui}\n engine={engine}\n onOpenFile={() => fileInputRef.current?.click()}\n />\n <input\n ref={fileInputRef}\n type=\"file\"\n accept=\"image/*\"\n hidden\n onChange={(e) => {\n const file = e.target.files?.[0]\n if (file) engine.openFile(file)\n e.target.value = ''\n }}\n />\n\n <div className=\"image-editor-stage-panel-wrap flex min-h-0 flex-1\">\n <Stage\n ref={stageRef}\n ui={ui}\n onChooseImage={() => fileInputRef.current?.click()}\n onDropFile={(file) => engine.openFile(file)}\n />\n <Panel ui={ui} engine={engine} />\n </div>\n\n <StatusBar ui={ui} />\n </div>\n </ImageEditorPortalContext.Provider>\n </div>\n )\n}\n"],"names":["ImageEditorModal","engine","ui","isOpen","saveLabel","rootRef","useRef","rootEl","setRootEl","useState","stageRef","fileInputRef","mountedRef","useEffect","s","t","React","node","ImageEditorPortalContext","Button","Loader2","Save","X","Ribbon","file","Stage","Panel","StatusBar"],"mappings":"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"}
1
+ {"version":3,"file":"index.es116.js","sources":["../src/components/organisms/navbar/navbar.styles.ts"],"sourcesContent":["import { cva } from 'class-variance-authority'\n\nexport const NavbarIconVariants = cva(\n 'h-10 w-10 p-2 grid place-items-center rounded-md hover:bg-hover-s3 hover:cursor-pointer relative',\n {\n variants: {\n isActive: {\n true: 'bg-click-s3',\n false: 'bg-inherit',\n },\n },\n }\n)\n"],"names":["NavbarIconVariants","cva"],"mappings":";AAEO,MAAMA,IAAqBC;AAAA,EAChC;AAAA,EACA;AAAA,IACE,UAAU;AAAA,MACR,UAAU;AAAA,QACR,MAAM;AAAA,QACN,OAAO;AAAA,MAAA;AAAA,IACT;AAAA,EACF;AAEJ;"}
@@ -1,17 +1,96 @@
1
- function i() {
2
- return typeof window > "u" ? null : window.ReactNativeWebView ?? null;
3
- }
4
- function n(t) {
5
- const e = i();
6
- if (e)
7
- try {
8
- e.postMessage(
9
- JSON.stringify({ type: "IMAGE_EDITOR", payload: { data: { open: t } } })
10
- );
11
- } catch {
1
+ import e, { useState as N } from "react";
2
+ import { Button as _ } from "./index.es9.js";
3
+ import { Typography as i } from "./index.es19.js";
4
+ import { SheetPrimary as q } from "./index.es42.js";
5
+ import { RequestCreditsDialog as P } from "./index.es2.js";
6
+ const S = ({
7
+ open: o,
8
+ onClose: a,
9
+ credit_details: c = "0",
10
+ description: s,
11
+ onRequestCredits: l,
12
+ onProceedToPayment: m,
13
+ trigger: f = null,
14
+ containerId: d,
15
+ className: u,
16
+ dialogClassName: p,
17
+ buyCreditsOptions: h,
18
+ minimumCreditsToBuy: g,
19
+ requestOnly: y
20
+ }) => {
21
+ const [E, t] = N(!1), v = () => {
22
+ t(!0);
23
+ }, x = (n, r) => {
24
+ l?.(n, r), t(!1), a();
25
+ }, C = (n, r) => {
26
+ m?.(n, r), t(!1), a();
27
+ };
28
+ return /* @__PURE__ */ e.createElement(e.Fragment, null, /* @__PURE__ */ e.createElement(
29
+ q,
30
+ {
31
+ open: o,
32
+ trigger: f,
33
+ onOpenChange: a,
34
+ title: "Credits",
35
+ contentProps: {
36
+ className: u,
37
+ side: "custom"
38
+ },
39
+ bodyProps: {
40
+ className: "p-0 h-full"
41
+ },
42
+ content: /* @__PURE__ */ e.createElement("div", { className: "flex flex-col items-center justify-center h-full p-6" }, /* @__PURE__ */ e.createElement("div", { className: "flex-col items-center justify-center" }, /* @__PURE__ */ e.createElement(
43
+ "img",
44
+ {
45
+ src: "https://frontend-static-files.geoiq.io/strapi/Group_8faa24a1c9/Group_8faa24a1c9.svg",
46
+ alt: "Credit information",
47
+ className: "w-[280px] h-[120px] object-contain"
48
+ }
49
+ ), /* @__PURE__ */ e.createElement("div", { className: "mt-2 flex justify-center" }, /* @__PURE__ */ e.createElement(i, { variant: "h2", className: "flex items-center mb-4" }, c, /* @__PURE__ */ e.createElement(
50
+ "img",
51
+ {
52
+ src: "https://frontend-static-files.geoiq.io/strapi/Credit_Icon_e6fcaf6845/Credit_Icon_e6fcaf6845.svg",
53
+ width: 32,
54
+ height: 32,
55
+ alt: "coin icon",
56
+ className: "ml-1"
57
+ }
58
+ )), s && /* @__PURE__ */ e.createElement(i, { variant: "body1", className: "text-light-3" }, s)))),
59
+ footer: /* @__PURE__ */ e.createElement("div", { className: "flex w-full justify-center" }, /* @__PURE__ */ e.createElement(
60
+ _,
61
+ {
62
+ variant: "primary",
63
+ suffixIcon: /* @__PURE__ */ e.createElement(
64
+ "img",
65
+ {
66
+ src: "https://frontend-static-files.geoiq.io/strapi/navbar_credits_247858e26a.svg",
67
+ width: 16,
68
+ height: 16,
69
+ alt: "coin icon",
70
+ className: "ml-1"
71
+ }
72
+ ),
73
+ title: "Request for credits",
74
+ onClick: v
75
+ }
76
+ )),
77
+ container: typeof document < "u" ? document.getElementById(d || "") : void 0
12
78
  }
13
- }
79
+ ), /* @__PURE__ */ e.createElement(
80
+ P,
81
+ {
82
+ open: E,
83
+ onClose: () => t(!1),
84
+ onRequestCredits: x,
85
+ onProceedToPayment: C,
86
+ dialogClassName: p,
87
+ buyCreditsOptions: h,
88
+ minimumCreditsToBuy: g,
89
+ requestOnly: y
90
+ }
91
+ ));
92
+ };
14
93
  export {
15
- n as notifyNativeImageEditorState
94
+ S as CreditSheet
16
95
  };
17
96
  //# sourceMappingURL=index.es117.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.es117.js","sources":["../src/components/organisms/image-editor/native-bridge.ts"],"sourcesContent":["type ReactNativeWebViewBridge = { postMessage: (message: string) => void }\n\nfunction getNativeBridge(): ReactNativeWebViewBridge | null {\n if (typeof window === 'undefined') return null\n const host = window as unknown as {\n ReactNativeWebView?: ReactNativeWebViewBridge\n }\n return host.ReactNativeWebView ?? null\n}\n\n/** No-op outside a React Native WebView. */\nexport function notifyNativeImageEditorState(open: boolean): void {\n const bridge = getNativeBridge()\n if (!bridge) return\n\n try {\n bridge.postMessage(\n JSON.stringify({ type: 'IMAGE_EDITOR', payload: { data: { open } } })\n )\n } catch {\n // noop\n }\n}\n"],"names":["getNativeBridge","notifyNativeImageEditorState","open","bridge"],"mappings":"AAEA,SAASA,IAAmD;AAC1D,SAAI,OAAO,SAAW,MAAoB,OAC7B,OAGD,sBAAsB;AACpC;AAGO,SAASC,EAA6BC,GAAqB;AAChE,QAAMC,IAASH,EAAA;AACf,MAAKG;AAEL,QAAI;AACF,MAAAA,EAAO;AAAA,QACL,KAAK,UAAU,EAAE,MAAM,gBAAgB,SAAS,EAAE,MAAM,EAAE,MAAAD,EAAA,IAAO,CAAG;AAAA,MAAA;AAAA,IAExE,QAAQ;AAAA,IAER;AACF;"}
1
+ {"version":3,"file":"index.es117.js","sources":["../src/components/ui/credit-sheet/credit-sheet.tsx"],"sourcesContent":["import React, { useState } from 'react'\nimport { Button } from '@/components/atoms/button'\nimport { Typography } from '@/components/atoms/typography'\nimport type { CreditSheetProps } from './credit-sheet.types'\nimport { Sheet } from '@/components/organisms/sheet'\nimport { RequestCreditsDialog } from '../request-credits-view/component/request-credit-dialog'\n\nexport const CreditSheet: React.FC<CreditSheetProps> = ({\n open,\n onClose,\n credit_details = '0',\n description,\n onRequestCredits,\n onProceedToPayment,\n trigger = null,\n containerId,\n className,\n dialogClassName,\n buyCreditsOptions,\n minimumCreditsToBuy,\n requestOnly,\n}) => {\n const [showRequestDialog, setShowRequestDialog] = useState(false)\n\n const handleButtonClick = () => {\n setShowRequestDialog(true)\n }\n\n const handleRequestCredits = (credits: string, phoneNumber: string) => {\n onRequestCredits?.(credits, phoneNumber)\n setShowRequestDialog(false)\n onClose()\n }\n\n const handleProceedToPayment = (credits: string, phoneNumber: string) => {\n onProceedToPayment?.(credits, phoneNumber)\n setShowRequestDialog(false)\n onClose() // Close the sheet after proceeding to payment\n }\n\n return (\n <>\n <Sheet\n open={open}\n trigger={trigger}\n onOpenChange={onClose}\n title=\"Credits\"\n contentProps={{\n className: className,\n side: 'custom',\n }}\n bodyProps={{\n className: 'p-0 h-full',\n }}\n content={\n <div className=\"flex flex-col items-center justify-center h-full p-6\">\n {/* Fixed Image - Centered */}\n <div className=\"flex-col items-center justify-center\">\n <img\n src=\"https://frontend-static-files.geoiq.io/strapi/Group_8faa24a1c9/Group_8faa24a1c9.svg\"\n alt=\"Credit information\"\n className=\"w-[280px] h-[120px] object-contain\"\n />\n <div className=\"mt-2 flex justify-center\">\n <Typography variant=\"h2\" className=\"flex items-center mb-4\">\n {credit_details}\n <img\n src={\n 'https://frontend-static-files.geoiq.io/strapi/Credit_Icon_e6fcaf6845/Credit_Icon_e6fcaf6845.svg'\n }\n width={32}\n height={32}\n alt=\"coin icon\"\n className=\"ml-1\"\n />\n </Typography>\n {description && (\n <Typography variant=\"body1\" className=\"text-light-3\">\n {description}\n </Typography>\n )}\n </div>\n </div>\n </div>\n }\n footer={\n <div className=\"flex w-full justify-center\">\n <Button\n variant=\"primary\"\n suffixIcon={\n <img\n src={\n 'https://frontend-static-files.geoiq.io/strapi/navbar_credits_247858e26a.svg'\n }\n width={16}\n height={16}\n alt=\"coin icon\"\n className=\"ml-1\"\n />\n }\n title=\"Request for credits\"\n onClick={handleButtonClick}\n />\n </div>\n }\n container={\n typeof document !== 'undefined'\n ? document.getElementById(containerId || '')\n : undefined\n }\n />\n\n {/* Request Credits Dialog */}\n <RequestCreditsDialog\n open={showRequestDialog}\n onClose={() => setShowRequestDialog(false)}\n onRequestCredits={handleRequestCredits}\n onProceedToPayment={handleProceedToPayment}\n dialogClassName={dialogClassName}\n buyCreditsOptions={buyCreditsOptions}\n minimumCreditsToBuy={minimumCreditsToBuy}\n requestOnly={requestOnly}\n />\n </>\n )\n}\n"],"names":["CreditSheet","open","onClose","credit_details","description","onRequestCredits","onProceedToPayment","trigger","containerId","className","dialogClassName","buyCreditsOptions","minimumCreditsToBuy","requestOnly","showRequestDialog","setShowRequestDialog","useState","handleButtonClick","handleRequestCredits","credits","phoneNumber","handleProceedToPayment","React","Sheet","Typography","Button","RequestCreditsDialog"],"mappings":";;;;;AAOO,MAAMA,IAA0C,CAAC;AAAA,EACtD,MAAAC;AAAA,EACA,SAAAC;AAAA,EACA,gBAAAC,IAAiB;AAAA,EACjB,aAAAC;AAAA,EACA,kBAAAC;AAAA,EACA,oBAAAC;AAAA,EACA,SAAAC,IAAU;AAAA,EACV,aAAAC;AAAA,EACA,WAAAC;AAAA,EACA,iBAAAC;AAAA,EACA,mBAAAC;AAAA,EACA,qBAAAC;AAAA,EACA,aAAAC;AACF,MAAM;AACJ,QAAM,CAACC,GAAmBC,CAAoB,IAAIC,EAAS,EAAK,GAE1DC,IAAoB,MAAM;AAC9B,IAAAF,EAAqB,EAAI;AAAA,EAC3B,GAEMG,IAAuB,CAACC,GAAiBC,MAAwB;AACrE,IAAAf,IAAmBc,GAASC,CAAW,GACvCL,EAAqB,EAAK,GAC1Bb,EAAA;AAAA,EACF,GAEMmB,IAAyB,CAACF,GAAiBC,MAAwB;AACvE,IAAAd,IAAqBa,GAASC,CAAW,GACzCL,EAAqB,EAAK,GAC1Bb,EAAA;AAAA,EACF;AAEA,SACEoB,gBAAAA,EAAA,cAAAA,EAAA,UAAA,MACEA,gBAAAA,EAAA;AAAA,IAACC;AAAAA,IAAA;AAAA,MACC,MAAAtB;AAAA,MACA,SAAAM;AAAA,MACA,cAAcL;AAAA,MACd,OAAM;AAAA,MACN,cAAc;AAAA,QACZ,WAAAO;AAAA,QACA,MAAM;AAAA,MAAA;AAAA,MAER,WAAW;AAAA,QACT,WAAW;AAAA,MAAA;AAAA,MAEb,yCACG,OAAA,EAAI,WAAU,0DAEba,gBAAAA,EAAA,cAAC,OAAA,EAAI,WAAU,uCAAA,GACbA,gBAAAA,EAAA;AAAA,QAAC;AAAA,QAAA;AAAA,UACC,KAAI;AAAA,UACJ,KAAI;AAAA,UACJ,WAAU;AAAA,QAAA;AAAA,MAAA,GAEZA,gBAAAA,EAAA,cAAC,OAAA,EAAI,WAAU,2BAAA,GACbA,gBAAAA,EAAA,cAACE,GAAA,EAAW,SAAQ,MAAK,WAAU,4BAChCrB,GACDmB,gBAAAA,EAAA;AAAA,QAAC;AAAA,QAAA;AAAA,UACC,KACE;AAAA,UAEF,OAAO;AAAA,UACP,QAAQ;AAAA,UACR,KAAI;AAAA,UACJ,WAAU;AAAA,QAAA;AAAA,MAAA,CAEd,GACClB,KACCkB,gBAAAA,EAAA,cAACE,GAAA,EAAW,SAAQ,SAAQ,WAAU,eAAA,GACnCpB,CACH,CAEJ,CACF,CACF;AAAA,MAEF,QACEkB,gBAAAA,EAAA,cAAC,OAAA,EAAI,WAAU,6BAAA,GACbA,gBAAAA,EAAA;AAAA,QAACG;AAAA,QAAA;AAAA,UACC,SAAQ;AAAA,UACR,YACEH,gBAAAA,EAAA;AAAA,YAAC;AAAA,YAAA;AAAA,cACC,KACE;AAAA,cAEF,OAAO;AAAA,cACP,QAAQ;AAAA,cACR,KAAI;AAAA,cACJ,WAAU;AAAA,YAAA;AAAA,UAAA;AAAA,UAGd,OAAM;AAAA,UACN,SAASL;AAAA,QAAA;AAAA,MAAA,CAEb;AAAA,MAEF,WACE,OAAO,WAAa,MAChB,SAAS,eAAeT,KAAe,EAAE,IACzC;AAAA,IAAA;AAAA,EAAA,GAKRc,gBAAAA,EAAA;AAAA,IAACI;AAAA,IAAA;AAAA,MACC,MAAMZ;AAAA,MACN,SAAS,MAAMC,EAAqB,EAAK;AAAA,MACzC,kBAAkBG;AAAA,MAClB,oBAAoBG;AAAA,MACpB,iBAAAX;AAAA,MACA,mBAAAC;AAAA,MACA,qBAAAC;AAAA,MACA,aAAAC;AAAA,IAAA;AAAA,EAAA,CAEJ;AAEJ;"}
@@ -1,105 +1,17 @@
1
- import { VERSION as m } from "./index.es145.js";
2
- import { CROP_RATIOS as we, FILTERS as Ie, FONTS as Ee, SHAPES as Le, SWATCHES as Re } from "./index.es145.js";
3
- import { createState as h, getState as f, emit as c, emptySourceCanvas as y, resetAdjValues as x, getSel as C } from "./index.es146.js";
4
- import { zoomIn as g, zoomOut as T, zoomToFit as z, ZOOM_MIN as F, ZOOM_MAX as O, syncCanvasSize as k, render as S, fitStage as v } from "./index.es147.js";
5
- import { undo as w, redo as I } from "./index.es148.js";
6
- import { rotate as E, flip as L, resetToOriginal as R, applyCrop as W, cancelCrop as B, setCropRatio as b } from "./index.es149.js";
7
- import { setMode as A, selectLayer as M } from "./index.es150.js";
8
- import { commitTextEdit as p } from "./index.es151.js";
9
- import { addSticker as _ } from "./index.es152.js";
10
- import { deleteLayer as j, deleteSelected as H, duplicateSelected as N, bringSelectedToFront as P, sendSelectedToBack as U, setAdjustment as Z, setFilter as D, selectShapeType as V, setShapeFill as $, setShapeWidth as q, setBrushSize as X, setBrushStyle as G, setTextFont as J, setTextSize as K, setTextColor as Q, setShapeColor as Y, setDrawColor as ee, setSelectedColor as te, setSelectedText as oe, setSelectedFont as se, setSelectedTextSize as re, setSelectedBoxWidth as ie, setSelectedShapeFill as ae, setSelectedWidth as ne, layerName as le } from "./index.es153.js";
11
- import { doSave as de, produce as ce, normalizeSource as n, loadState as u, doLoadImage as l } from "./index.es154.js";
12
- import { mount as Se } from "./index.es155.js";
13
- function pe(r) {
14
- r = r || {};
15
- const o = {}, e = h(r);
16
- function i() {
17
- typeof r.onUiChange == "function" && r.onUiChange(d());
1
+ import { cva as s } from "class-variance-authority";
2
+ const o = s("", {
3
+ variants: {
4
+ bgColor: {
5
+ success: "bg-success-2",
6
+ danger: "bg-danger-2",
7
+ stroke: "bg-light-4"
8
+ }
9
+ },
10
+ defaultVariants: {
11
+ bgColor: "success"
18
12
  }
19
- e.notify = i, o.on = (t, s) => (e.listeners[t] && e.listeners[t].push(s), o), o.off = (t, s) => (e.listeners[t] && (e.listeners[t] = e.listeners[t].filter((a) => a !== s)), o);
20
- function d() {
21
- const t = C(e);
22
- return {
23
- hasImage: !!e.sourceCanvas.width,
24
- mode: e.mode,
25
- canUndo: e.undoStack.length > 0,
26
- canRedo: e.redoStack.length > 0,
27
- canReset: !!e.originalCanvas,
28
- zoomPercent: Math.round(e.zoom * 100),
29
- canZoomIn: e.zoom < O - 1e-6,
30
- canZoomOut: e.zoom > F + 1e-6,
31
- closeOnBackdrop: r.closeOnBackdrop !== !1,
32
- canOpenImage: r.allowOpenImage !== !1,
33
- isEditingText: !!e.editingLayer,
34
- editingSelectAll: e.editingSelectAll,
35
- dims: e.sourceCanvas.width ? `${e.sourceCanvas.width} × ${e.sourceCanvas.height} px` : "No image",
36
- statusText: e.statusText,
37
- isSaving: e.isSaving,
38
- isLoadingImage: e.isLoadingImage,
39
- adjustments: { ...e.adj },
40
- selectedShapeType: e.selectedShapeType,
41
- textColor: e.textColor,
42
- shapeColor: e.shapeColor,
43
- drawColor: e.drawColor,
44
- shapeFill: e.shapeFill,
45
- shapeWidth: e.shapeWidth,
46
- brushSize: e.brushSize,
47
- brushStyle: e.brushStyle,
48
- textFont: e.textFont,
49
- textSize: e.textSize,
50
- cropRatio: e.cropRatio,
51
- stickers: e.stickers,
52
- selected: t ? {
53
- id: t.id,
54
- type: t.type,
55
- color: t.color,
56
- text: t.type === "text" ? t.text : void 0,
57
- font: t.type === "text" ? t.font : void 0,
58
- size: t.type === "text" ? t.size : void 0,
59
- boxWidth: t.type === "text" ? t.boxWidth : void 0,
60
- fill: t.type === "shape" ? t.fill : void 0,
61
- width: t.type === "shape" || t.type === "stroke" ? t.width : void 0
62
- } : null,
63
- layers: e.layers.map((s) => ({
64
- id: s.id,
65
- type: s.type,
66
- name: le(s)
67
- }))
68
- };
69
- }
70
- return o.getUiState = d, o.refitStage = () => {
71
- !e.mounted || !e.sourceCanvas.width || (v(e), S(e));
72
- }, o.zoomIn = () => g(e), o.zoomOut = () => T(e), o.zoomToFit = () => z(e), o.setMode = (t) => A(e, t), o.selectLayer = (t) => M(e, t), o.undo = () => w(e), o.redo = () => I(e), o.rotate = (t) => E(e, t), o.flip = (t) => L(e, t), o.resetToOriginal = () => R(e), o.applyCrop = () => W(e), o.cancelCrop = () => B(e), o.setCropRatio = (t) => b(e, t), o.commitTextEdit = () => p(e), o.addSticker = (t) => _(e, t), o.setStickers = (t) => {
73
- e.stickers = t || [], i();
74
- }, o.deleteLayer = (t) => j(e, t), o.deleteSelected = () => H(e), o.duplicateSelected = () => N(e), o.bringSelectedToFront = () => P(e), o.sendSelectedToBack = () => U(e), o.setAdjustment = (t, s) => Z(e, t, s), o.setFilter = (t) => D(e, t), o.selectShapeType = (t) => V(e, t), o.setShapeFill = (t) => $(e, t), o.setShapeWidth = (t) => q(e, t), o.setBrushSize = (t) => X(e, t), o.setBrushStyle = (t) => G(e, t), o.setTextFont = (t) => J(e, t), o.setTextSize = (t) => K(e, t), o.setTextColor = (t) => Q(e, t), o.setShapeColor = (t) => Y(e, t), o.setDrawColor = (t) => ee(e, t), o.setSelectedColor = (t) => te(e, t), o.setSelectedText = (t) => oe(e, t), o.setSelectedFont = (t) => se(e, t), o.setSelectedTextSize = (t) => re(e, t), o.setSelectedBoxWidth = (t) => ie(e, t), o.setSelectedShapeFill = (t) => ae(e, t), o.setSelectedWidth = (t) => ne(e, t), o.save = () => de(e, o), o.export = (t) => (t = t || {}, e.sourceCanvas.width ? ce(e, t.type, t.quality) : Promise.resolve(null)), o.getState = () => f(e), o.mount = (t) => Se(e, o, t), o.openFile = (t) => n(
75
- e,
76
- t,
77
- (s) => l(e, s)
78
- ), o.open = (t) => {
79
- if (t = t || {}, e.isOpenFlag)
80
- return i(), o;
81
- e.isOpenFlag = !0;
82
- const s = () => {
83
- e.mounted && e.sourceCanvas.width && (k(e), S(e)), i(), c(e, "open", {});
84
- };
85
- return t.state ? (u(e, t.state), setTimeout(s, 0)) : t.image ? n(e, t.image, (a) => {
86
- l(e, a), setTimeout(s, 0);
87
- }) : setTimeout(s, 0), o;
88
- }, o.close = () => (e.isOpenFlag = !1, p(e), i(), c(e, "close", {}), o), o.loadImage = (t) => (n(
89
- e,
90
- t,
91
- (s) => l(e, s)
92
- ), o), o.loadState = (t) => (u(e, t), o), o.reset = () => (e.sourceCanvas = y(), e.originalCanvas = null, e.layers = [], e.selectedId = null, e.undoStack = [], e.redoStack = [], e.zoom = 1, x(e), e.statusText = "Ready", i(), o), o.isOpen = () => e.isOpenFlag, o.destroy = () => {
93
- o._keyHandler && document.removeEventListener("keydown", o._keyHandler), o._resizeHandler && window.removeEventListener("resize", o._resizeHandler), Object.keys(e.listeners).forEach((t) => e.listeners[t] = []);
94
- }, r.autoOpen && o.open({ image: r.image, state: r.state }), o;
95
- }
96
- const Oe = { version: m, create: pe };
13
+ });
97
14
  export {
98
- we as CROP_RATIOS,
99
- Ie as FILTERS,
100
- Ee as FONTS,
101
- Le as SHAPES,
102
- Re as SWATCHES,
103
- Oe as default
15
+ o as SliderBgColorVariants
104
16
  };
105
17
  //# sourceMappingURL=index.es118.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.es118.js","sources":["../src/components/organisms/image-editor/picture-studio-engine.js"],"sourcesContent":["import {\n FILTERS,\n SWATCHES,\n SHAPES,\n FONTS,\n CROP_RATIOS,\n VERSION,\n} from './engine/constants.js'\nimport {\n createState,\n emit,\n emptySourceCanvas,\n getSel,\n getState as readState,\n resetAdjValues,\n} from './engine/state.js'\nimport {\n fitStage,\n render,\n syncCanvasSize,\n zoomIn,\n zoomOut,\n zoomToFit,\n ZOOM_MIN,\n ZOOM_MAX,\n} from './engine/rendering.js'\nimport * as history from './engine/history.js'\nimport * as geometry from './engine/geometry.js'\nimport * as mode from './engine/mode.js'\nimport * as textEditor from './engine/text-editor.js'\nimport * as stickers from './engine/stickers.js'\nimport * as layerActions from './engine/layer-actions.js'\nimport * as saveExport from './engine/save-export.js'\nimport { mount as mountEngine } from './engine/mount.js'\n\nexport { FILTERS, SWATCHES, SHAPES, FONTS, CROP_RATIOS }\n\nfunction createEngine(config) {\n config = config || {}\n const self = {}\n const state = createState(config)\n\n function notify() {\n if (typeof config.onUiChange === 'function') config.onUiChange(getUiState())\n }\n state.notify = notify\n\n self.on = (ev, fn) => {\n if (state.listeners[ev]) state.listeners[ev].push(fn)\n return self\n }\n self.off = (ev, fn) => {\n if (state.listeners[ev])\n state.listeners[ev] = state.listeners[ev].filter((f) => f !== fn)\n return self\n }\n\n function getUiState() {\n const sel = getSel(state)\n return {\n hasImage: !!state.sourceCanvas.width,\n mode: state.mode,\n canUndo: state.undoStack.length > 0,\n canRedo: state.redoStack.length > 0,\n canReset: !!state.originalCanvas,\n zoomPercent: Math.round(state.zoom * 100),\n canZoomIn: state.zoom < ZOOM_MAX - 1e-6,\n canZoomOut: state.zoom > ZOOM_MIN + 1e-6,\n closeOnBackdrop: config.closeOnBackdrop !== false,\n canOpenImage: config.allowOpenImage !== false,\n isEditingText: !!state.editingLayer,\n editingSelectAll: state.editingSelectAll,\n dims: state.sourceCanvas.width\n ? `${state.sourceCanvas.width} × ${state.sourceCanvas.height} px`\n : 'No image',\n statusText: state.statusText,\n isSaving: state.isSaving,\n isLoadingImage: state.isLoadingImage,\n adjustments: { ...state.adj },\n selectedShapeType: state.selectedShapeType,\n textColor: state.textColor,\n shapeColor: state.shapeColor,\n drawColor: state.drawColor,\n shapeFill: state.shapeFill,\n shapeWidth: state.shapeWidth,\n brushSize: state.brushSize,\n brushStyle: state.brushStyle,\n textFont: state.textFont,\n textSize: state.textSize,\n cropRatio: state.cropRatio,\n stickers: state.stickers,\n selected: sel\n ? {\n id: sel.id,\n type: sel.type,\n color: sel.color,\n text: sel.type === 'text' ? sel.text : undefined,\n font: sel.type === 'text' ? sel.font : undefined,\n size: sel.type === 'text' ? sel.size : undefined,\n boxWidth: sel.type === 'text' ? sel.boxWidth : undefined,\n fill: sel.type === 'shape' ? sel.fill : undefined,\n width:\n sel.type === 'shape' || sel.type === 'stroke'\n ? sel.width\n : undefined,\n }\n : null,\n layers: state.layers.map((l) => ({\n id: l.id,\n type: l.type,\n name: layerActions.layerName(l),\n })),\n }\n }\n self.getUiState = getUiState\n\n self.refitStage = () => {\n if (!state.mounted || !state.sourceCanvas.width) return\n fitStage(state)\n render(state)\n }\n self.zoomIn = () => zoomIn(state)\n self.zoomOut = () => zoomOut(state)\n self.zoomToFit = () => zoomToFit(state)\n self.setMode = (m) => mode.setMode(state, m)\n self.selectLayer = (id) => mode.selectLayer(state, id)\n self.undo = () => history.undo(state)\n self.redo = () => history.redo(state)\n self.rotate = (deg) => geometry.rotate(state, deg)\n self.flip = (hz) => geometry.flip(state, hz)\n self.resetToOriginal = () => geometry.resetToOriginal(state)\n self.applyCrop = () => geometry.applyCrop(state)\n self.cancelCrop = () => geometry.cancelCrop(state)\n self.setCropRatio = (v) => geometry.setCropRatio(state, v)\n self.commitTextEdit = () => textEditor.commitTextEdit(state)\n self.addSticker = (src) => stickers.addSticker(state, src)\n self.setStickers = (list) => {\n state.stickers = list || []\n notify()\n }\n self.deleteLayer = (id) => layerActions.deleteLayer(state, id)\n self.deleteSelected = () => layerActions.deleteSelected(state)\n self.duplicateSelected = () => layerActions.duplicateSelected(state)\n self.bringSelectedToFront = () => layerActions.bringSelectedToFront(state)\n self.sendSelectedToBack = () => layerActions.sendSelectedToBack(state)\n self.setAdjustment = (key, value) =>\n layerActions.setAdjustment(state, key, value)\n self.setFilter = (id) => layerActions.setFilter(state, id)\n self.selectShapeType = (id) => layerActions.selectShapeType(state, id)\n self.setShapeFill = (v) => layerActions.setShapeFill(state, v)\n self.setShapeWidth = (v) => layerActions.setShapeWidth(state, v)\n self.setBrushSize = (v) => layerActions.setBrushSize(state, v)\n self.setBrushStyle = (v) => layerActions.setBrushStyle(state, v)\n self.setTextFont = (v) => layerActions.setTextFont(state, v)\n self.setTextSize = (v) => layerActions.setTextSize(state, v)\n self.setTextColor = (v) => layerActions.setTextColor(state, v)\n self.setShapeColor = (v) => layerActions.setShapeColor(state, v)\n self.setDrawColor = (v) => layerActions.setDrawColor(state, v)\n self.setSelectedColor = (v) => layerActions.setSelectedColor(state, v)\n self.setSelectedText = (v) => layerActions.setSelectedText(state, v)\n self.setSelectedFont = (v) => layerActions.setSelectedFont(state, v)\n self.setSelectedTextSize = (v) => layerActions.setSelectedTextSize(state, v)\n self.setSelectedBoxWidth = (v) => layerActions.setSelectedBoxWidth(state, v)\n self.setSelectedShapeFill = (v) => layerActions.setSelectedShapeFill(state, v)\n self.setSelectedWidth = (v) => layerActions.setSelectedWidth(state, v)\n self.save = () => saveExport.doSave(state, self)\n self.export = (opts) => {\n opts = opts || {}\n if (!state.sourceCanvas.width) return Promise.resolve(null)\n return saveExport.produce(state, opts.type, opts.quality)\n }\n self.getState = () => readState(state)\n self.mount = (refs) => mountEngine(state, self, refs)\n self.openFile = (file) =>\n saveExport.normalizeSource(state, file, (d) =>\n saveExport.doLoadImage(state, d)\n )\n\n self.open = (opts) => {\n opts = opts || {}\n if (state.isOpenFlag) {\n notify()\n return self\n }\n state.isOpenFlag = true\n const finish = () => {\n if (state.mounted && state.sourceCanvas.width) {\n syncCanvasSize(state)\n render(state)\n }\n notify()\n emit(state, 'open', {})\n }\n if (opts.state) {\n saveExport.loadState(state, opts.state)\n setTimeout(finish, 0)\n } else if (opts.image) {\n saveExport.normalizeSource(state, opts.image, (d) => {\n saveExport.doLoadImage(state, d)\n setTimeout(finish, 0)\n })\n } else {\n setTimeout(finish, 0)\n }\n return self\n }\n self.close = () => {\n state.isOpenFlag = false\n textEditor.commitTextEdit(state)\n notify()\n emit(state, 'close', {})\n return self\n }\n self.loadImage = (src) => {\n saveExport.normalizeSource(state, src, (d) =>\n saveExport.doLoadImage(state, d)\n )\n return self\n }\n self.loadState = (s) => {\n saveExport.loadState(state, s)\n return self\n }\n self.reset = () => {\n state.sourceCanvas = emptySourceCanvas()\n state.originalCanvas = null\n state.layers = []\n state.selectedId = null\n state.undoStack = []\n state.redoStack = []\n state.zoom = 1\n resetAdjValues(state)\n state.statusText = 'Ready'\n notify()\n return self\n }\n self.isOpen = () => state.isOpenFlag\n self.destroy = () => {\n if (self._keyHandler)\n document.removeEventListener('keydown', self._keyHandler)\n if (self._resizeHandler)\n window.removeEventListener('resize', self._resizeHandler)\n Object.keys(state.listeners).forEach((k) => (state.listeners[k] = []))\n }\n\n if (config.autoOpen) self.open({ image: config.image, state: config.state })\n\n return self\n}\n\nconst PictureStudioEngine = { version: VERSION, create: createEngine }\nexport default PictureStudioEngine\n"],"names":["createEngine","config","self","state","createState","notify","getUiState","ev","fn","f","sel","getSel","ZOOM_MAX","ZOOM_MIN","l","layerActions.layerName","fitStage","render","zoomIn","zoomOut","zoomToFit","m","mode.setMode","id","mode.selectLayer","history.undo","history.redo","deg","geometry.rotate","hz","geometry.flip","geometry.resetToOriginal","geometry.applyCrop","geometry.cancelCrop","v","geometry.setCropRatio","textEditor.commitTextEdit","src","stickers.addSticker","list","layerActions.deleteLayer","layerActions.deleteSelected","layerActions.duplicateSelected","layerActions.bringSelectedToFront","layerActions.sendSelectedToBack","key","value","layerActions.setAdjustment","layerActions.setFilter","layerActions.selectShapeType","layerActions.setShapeFill","layerActions.setShapeWidth","layerActions.setBrushSize","layerActions.setBrushStyle","layerActions.setTextFont","layerActions.setTextSize","layerActions.setTextColor","layerActions.setShapeColor","layerActions.setDrawColor","layerActions.setSelectedColor","layerActions.setSelectedText","layerActions.setSelectedFont","layerActions.setSelectedTextSize","layerActions.setSelectedBoxWidth","layerActions.setSelectedShapeFill","layerActions.setSelectedWidth","saveExport.doSave","opts","saveExport.produce","readState","refs","mountEngine","file","saveExport.normalizeSource","d","saveExport.doLoadImage","finish","syncCanvasSize","emit","saveExport.loadState","s","emptySourceCanvas","resetAdjValues","k","PictureStudioEngine","VERSION"],"mappings":"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"}
1
+ {"version":3,"file":"index.es118.js","sources":["../src/components/molecules/polar-slider/polar-slider.styles.ts"],"sourcesContent":["import { cva } from 'class-variance-authority'\n\nexport const SliderBgColorVariants = cva('', {\n variants: {\n bgColor: {\n success: 'bg-success-2',\n danger: 'bg-danger-2',\n stroke: 'bg-light-4',\n },\n },\n defaultVariants: {\n bgColor: 'success',\n },\n})\n"],"names":["SliderBgColorVariants","cva"],"mappings":";AAEO,MAAMA,IAAwBC,EAAI,IAAI;AAAA,EAC3C,UAAU;AAAA,IACR,SAAS;AAAA,MACP,SAAS;AAAA,MACT,QAAQ;AAAA,MACR,QAAQ;AAAA,IAAA;AAAA,EACV;AAAA,EAEF,iBAAiB;AAAA,IACf,SAAS;AAAA,EAAA;AAEb,CAAC;"}
@@ -1,26 +1,77 @@
1
- const t = {
2
- ROADMAP: "https://frontend-static-files.geoiq.io/strapi/Default_efc09fdd1c.png",
3
- ROADMAP_TRAFFIC: "https://frontend-static-files.geoiq.io/strapi/ic_traffic_705be1ba8d.png",
4
- SATELLITE: "https://frontend-static-files.geoiq.io/strapi/ic_satellite_31fe09163d.png",
5
- SATELLITE_TRAFFIC: "https://frontend-static-files.geoiq.io/strapi/ic_satellite_31fe09163d.png"
6
- }, e = [
7
- { key: "ROADMAP", label: "Roadmap", type: "roadmap", traffic: !1 },
1
+ import { cva as e } from "class-variance-authority";
2
+ const t = e(
3
+ ` h-[38px] w-full border flex items-center justify-between gap-1.5 relative mt-1.5 rounded-lg
4
+ text-light-2 px-3 py-2
5
+ file:border-0 file:bg-transparent
6
+ placeholder:font-normal placeholder:text-light-4`,
8
7
  {
9
- key: "ROADMAP_TRAFFIC",
10
- label: "Roadmap Traffic",
11
- type: "roadmap",
12
- traffic: !0
13
- },
14
- { key: "SATELLITE", label: "Satellite", type: "hybrid", traffic: !1 },
8
+ variants: {
9
+ isError: {
10
+ true: "",
11
+ false: ""
12
+ },
13
+ isFocused: {
14
+ true: "",
15
+ false: ""
16
+ },
17
+ disabled: {
18
+ true: "bg-light-3 border-neutral-2 cursor-not-allowed",
19
+ false: ""
20
+ }
21
+ },
22
+ defaultVariants: {
23
+ isError: !1
24
+ },
25
+ compoundVariants: [
26
+ {
27
+ isError: !0,
28
+ isFocused: !0,
29
+ className: "border-danger-2 ring-4 ring-danger-1"
30
+ },
31
+ {
32
+ isError: !1,
33
+ isFocused: !0,
34
+ className: "border-primary-2 ring-4 ring-primary-1"
35
+ },
36
+ {
37
+ isError: !0,
38
+ isFocused: !1,
39
+ className: "border-danger-2"
40
+ },
41
+ {
42
+ isError: !1,
43
+ isFocused: !1,
44
+ className: "border-light-2"
45
+ }
46
+ ]
47
+ }
48
+ ), a = e(
49
+ "outline-none w-full h-full bg-transparent disabled:cursor-not-allowed placeholder:font-normal placeholder:text-light-4",
50
+ {
51
+ variants: {
52
+ isError: {
53
+ true: "text-danger-1",
54
+ false: "text-light-2"
55
+ }
56
+ }
57
+ }
58
+ ), s = e(
59
+ "absolute top-[7px] text-top transition-transform duration-500 text-light-4 pointer-events-none ",
15
60
  {
16
- key: "SATELLITE_TRAFFIC",
17
- label: "Satellite Traffic",
18
- type: "hybrid",
19
- traffic: !0
61
+ variants: {
62
+ animate: {
63
+ true: "",
64
+ false: ""
65
+ }
66
+ },
67
+ defaultVariants: {
68
+ animate: !1
69
+ }
20
70
  }
21
- ];
71
+ );
22
72
  export {
23
- t as MAP_LAYER_CONFIG,
24
- e as MAP_LAYER_TYPES
73
+ t as AnimatedInputContainerVariants,
74
+ a as AnimatedInputStyles,
75
+ s as DynamicComponentStyles
25
76
  };
26
77
  //# sourceMappingURL=index.es119.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.es119.js","sources":["../src/components/ui/map-toolbar/map-layer-config.ts"],"sourcesContent":["export const MAP_LAYER_CONFIG = {\n ROADMAP:\n 'https://frontend-static-files.geoiq.io/strapi/Default_efc09fdd1c.png',\n ROADMAP_TRAFFIC:\n 'https://frontend-static-files.geoiq.io/strapi/ic_traffic_705be1ba8d.png',\n SATELLITE:\n 'https://frontend-static-files.geoiq.io/strapi/ic_satellite_31fe09163d.png',\n SATELLITE_TRAFFIC:\n 'https://frontend-static-files.geoiq.io/strapi/ic_satellite_31fe09163d.png',\n}\nexport const MAP_LAYER_TYPES = [\n { key: 'ROADMAP', label: 'Roadmap', type: 'roadmap', traffic: false },\n {\n key: 'ROADMAP_TRAFFIC',\n label: 'Roadmap Traffic',\n type: 'roadmap',\n traffic: true,\n },\n { key: 'SATELLITE', label: 'Satellite', type: 'hybrid', traffic: false },\n {\n key: 'SATELLITE_TRAFFIC',\n label: 'Satellite Traffic',\n type: 'hybrid',\n traffic: true,\n },\n]\n"],"names":["MAP_LAYER_CONFIG","MAP_LAYER_TYPES"],"mappings":"AAAO,MAAMA,IAAmB;AAAA,EAC9B,SACE;AAAA,EACF,iBACE;AAAA,EACF,WACE;AAAA,EACF,mBACE;AACJ,GACaC,IAAkB;AAAA,EAC7B,EAAE,KAAK,WAAW,OAAO,WAAW,MAAM,WAAW,SAAS,GAAA;AAAA,EAC9D;AAAA,IACE,KAAK;AAAA,IACL,OAAO;AAAA,IACP,MAAM;AAAA,IACN,SAAS;AAAA,EAAA;AAAA,EAEX,EAAE,KAAK,aAAa,OAAO,aAAa,MAAM,UAAU,SAAS,GAAA;AAAA,EACjE;AAAA,IACE,KAAK;AAAA,IACL,OAAO;AAAA,IACP,MAAM;AAAA,IACN,SAAS;AAAA,EAAA;AAEb;"}
1
+ {"version":3,"file":"index.es119.js","sources":["../src/components/ui/animated-input/animated-input.styles.ts"],"sourcesContent":["import { cva } from 'class-variance-authority'\n\nexport const AnimatedInputContainerVariants = cva(\n ` h-[38px] w-full border flex items-center justify-between gap-1.5 relative mt-1.5 rounded-lg \n text-light-2 px-3 py-2\n file:border-0 file:bg-transparent\n placeholder:font-normal placeholder:text-light-4`,\n {\n variants: {\n isError: {\n true: '',\n false: '',\n },\n isFocused: {\n true: '',\n false: '',\n },\n disabled: {\n true: 'bg-light-3 border-neutral-2 cursor-not-allowed',\n false: '',\n },\n },\n defaultVariants: {\n isError: false,\n },\n compoundVariants: [\n {\n isError: true,\n isFocused: true,\n className: 'border-danger-2 ring-4 ring-danger-1',\n },\n {\n isError: false,\n isFocused: true,\n className: 'border-primary-2 ring-4 ring-primary-1',\n },\n {\n isError: true,\n isFocused: false,\n className: 'border-danger-2',\n },\n {\n isError: false,\n isFocused: false,\n className: 'border-light-2',\n },\n ],\n }\n)\n\nexport const AnimatedInputStyles = cva(\n `outline-none w-full h-full bg-transparent disabled:cursor-not-allowed placeholder:font-normal placeholder:text-light-4`,\n {\n variants: {\n isError: {\n true: 'text-danger-1',\n false: 'text-light-2',\n },\n },\n }\n)\n\nexport const DynamicComponentStyles = cva(\n `absolute top-[7px] text-top transition-transform duration-500 text-light-4 pointer-events-none `,\n {\n variants: {\n animate: {\n true: '',\n false: '',\n },\n },\n defaultVariants: {\n animate: false,\n },\n }\n)\n"],"names":["AnimatedInputContainerVariants","cva","AnimatedInputStyles","DynamicComponentStyles"],"mappings":";AAEO,MAAMA,IAAiCC;AAAA,EAC5C;AAAA;AAAA;AAAA;AAAA,EAIA;AAAA,IACE,UAAU;AAAA,MACR,SAAS;AAAA,QACP,MAAM;AAAA,QACN,OAAO;AAAA,MAAA;AAAA,MAET,WAAW;AAAA,QACT,MAAM;AAAA,QACN,OAAO;AAAA,MAAA;AAAA,MAET,UAAU;AAAA,QACR,MAAM;AAAA,QACN,OAAO;AAAA,MAAA;AAAA,IACT;AAAA,IAEF,iBAAiB;AAAA,MACf,SAAS;AAAA,IAAA;AAAA,IAEX,kBAAkB;AAAA,MAChB;AAAA,QACE,SAAS;AAAA,QACT,WAAW;AAAA,QACX,WAAW;AAAA,MAAA;AAAA,MAEb;AAAA,QACE,SAAS;AAAA,QACT,WAAW;AAAA,QACX,WAAW;AAAA,MAAA;AAAA,MAEb;AAAA,QACE,SAAS;AAAA,QACT,WAAW;AAAA,QACX,WAAW;AAAA,MAAA;AAAA,MAEb;AAAA,QACE,SAAS;AAAA,QACT,WAAW;AAAA,QACX,WAAW;AAAA,MAAA;AAAA,IACb;AAAA,EACF;AAEJ,GAEaC,IAAsBD;AAAA,EACjC;AAAA,EACA;AAAA,IACE,UAAU;AAAA,MACR,SAAS;AAAA,QACP,MAAM;AAAA,QACN,OAAO;AAAA,MAAA;AAAA,IACT;AAAA,EACF;AAEJ,GAEaE,IAAyBF;AAAA,EACpC;AAAA,EACA;AAAA,IACE,UAAU;AAAA,MACR,SAAS;AAAA,QACP,MAAM;AAAA,QACN,OAAO;AAAA,MAAA;AAAA,IACT;AAAA,IAEF,iBAAiB;AAAA,MACf,SAAS;AAAA,IAAA;AAAA,EACX;AAEJ;"}
@@ -1,7 +1,7 @@
1
1
  import * as r from "react";
2
2
  import * as a from "@radix-ui/react-progress";
3
3
  import { cn as i } from "./index.es89.js";
4
- import { ProgressVariants as n } from "./index.es133.js";
4
+ import { ProgressVariants as n } from "./index.es112.js";
5
5
  const l = r.forwardRef(({ className: t, value: o, ...e }, m) => {
6
6
  const s = (o || 0) / (e.max || 100) * 100;
7
7
  return /* @__PURE__ */ r.createElement(
@@ -1,28 +1,37 @@
1
- import { cva as t } from "class-variance-authority";
2
- const e = t("w-full", {
3
- variants: {
4
- isOpen: {
5
- true: "ring-4 ring-primary-1 border-primary-2 text-light-1"
6
- },
7
- isValue: {
8
- true: "text-light-1",
9
- false: "text-light-4"
10
- }
11
- },
12
- compoundVariants: [
13
- // {
14
- // isOpen: true,
15
- // isValue: true,
16
- // className: 'border-primary-2',
17
- // },
18
- {
19
- isOpen: !1,
20
- isValue: !0,
21
- className: "border-neutral-2"
22
- }
23
- ]
24
- });
1
+ import a from "react";
2
+ import { AccordionDemo as l } from "./index.es4.js";
3
+ import { AvatarDemo as o } from "./index.es6.js";
4
+ import { Typography as r } from "./index.es19.js";
5
+ const p = ({ members: t }) => t.length > 0 ? /* @__PURE__ */ a.createElement(
6
+ l,
7
+ {
8
+ trigger: /* @__PURE__ */ a.createElement("div", { className: "flex items-center gap-1" }, /* @__PURE__ */ a.createElement(r, { variant: "body1", className: "text-light-2" }, "Members (", t.length, ")")),
9
+ content: /* @__PURE__ */ a.createElement("div", { className: "flex flex-col gap-2" }, t.map((e) => /* @__PURE__ */ a.createElement(
10
+ "div",
11
+ {
12
+ key: e.id,
13
+ className: "flex items-center gap-3 rounded-xl bg-light-2 px-4 py-3"
14
+ },
15
+ /* @__PURE__ */ a.createElement(
16
+ o,
17
+ {
18
+ size: "md",
19
+ imageSrc: e.imageSrc || "",
20
+ alt: e.alt || e.name,
21
+ fallback: e.fallback || e.name?.[0].toUpperCase() || "",
22
+ avatarProps: {
23
+ className: "border border-neutral-1 h-8 w-8 bg-light-1"
24
+ },
25
+ ...e
26
+ }
27
+ ),
28
+ /* @__PURE__ */ a.createElement(r, { variant: "body2" }, e.name)
29
+ ))),
30
+ contentProps: { className: "max-h-[400px] overflow-y-auto" },
31
+ triggerProps: { className: "cursor-pointer my-2" }
32
+ }
33
+ ) : null;
25
34
  export {
26
- e as ComboBoxStates
35
+ p as MembersSection
27
36
  };
28
37
  //# sourceMappingURL=index.es120.js.map