geoiq-frontend-ui-kit 1.6.0 → 1.6.2

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 (227) hide show
  1. package/dist/components/organisms/navbar/navbar-desktop.d.ts.map +1 -1
  2. package/dist/components/organisms/navbar/navbar-mobile.d.ts.map +1 -1
  3. package/dist/components/organisms/navbar/navbar.types.d.ts +7 -0
  4. package/dist/components/organisms/navbar/navbar.types.d.ts.map +1 -1
  5. package/dist/components/ui/credit-sheet/credit-sheet.d.ts +5 -0
  6. package/dist/components/ui/credit-sheet/credit-sheet.d.ts.map +1 -0
  7. package/dist/components/ui/credit-sheet/credit-sheet.types.d.ts +11 -0
  8. package/dist/components/ui/credit-sheet/credit-sheet.types.d.ts.map +1 -0
  9. package/dist/components/ui/request-credits-view/component/request-credit-dialog.d.ts +5 -0
  10. package/dist/components/ui/request-credits-view/component/request-credit-dialog.d.ts.map +1 -0
  11. package/dist/components/ui/request-credits-view/component/request-credit-dialog.types.d.ts +7 -0
  12. package/dist/components/ui/request-credits-view/component/request-credit-dialog.types.d.ts.map +1 -0
  13. package/dist/components/ui/request-credits-view/request-credits-view.d.ts.map +1 -1
  14. package/dist/components/ui/request-credits-view/request-credits-view.types.d.ts +2 -1
  15. package/dist/components/ui/request-credits-view/request-credits-view.types.d.ts.map +1 -1
  16. package/dist/index.es10.js +1 -1
  17. package/dist/index.es10.js.map +1 -1
  18. package/dist/index.es100.js +86 -259
  19. package/dist/index.es100.js.map +1 -1
  20. package/dist/index.es101.js +264 -65
  21. package/dist/index.es101.js.map +1 -1
  22. package/dist/index.es102.js +71 -20
  23. package/dist/index.es102.js.map +1 -1
  24. package/dist/index.es103.js +22 -180
  25. package/dist/index.es103.js.map +1 -1
  26. package/dist/index.es104.js.map +1 -1
  27. package/dist/index.es105.js +1 -1
  28. package/dist/index.es105.js.map +1 -1
  29. package/dist/index.es106.js +36 -33
  30. package/dist/index.es106.js.map +1 -1
  31. package/dist/index.es107.js +181 -9
  32. package/dist/index.es107.js.map +1 -1
  33. package/dist/index.es108.js +7 -53
  34. package/dist/index.es108.js.map +1 -1
  35. package/dist/index.es109.js +51 -181
  36. package/dist/index.es109.js.map +1 -1
  37. package/dist/index.es11.js.map +1 -1
  38. package/dist/index.es110.js +184 -22
  39. package/dist/index.es110.js.map +1 -1
  40. package/dist/index.es111.js +21 -171
  41. package/dist/index.es111.js.map +1 -1
  42. package/dist/index.es112.js +173 -43
  43. package/dist/index.es112.js.map +1 -1
  44. package/dist/index.es113.js +37 -28
  45. package/dist/index.es113.js.map +1 -1
  46. package/dist/index.es114.js +35 -18
  47. package/dist/index.es114.js.map +1 -1
  48. package/dist/index.es115.js +27 -13
  49. package/dist/index.es115.js.map +1 -1
  50. package/dist/index.es116.js +15 -7
  51. package/dist/index.es116.js.map +1 -1
  52. package/dist/index.es117.js +20 -98
  53. package/dist/index.es117.js.map +1 -1
  54. package/dist/index.es118.js +9 -61
  55. package/dist/index.es118.js.map +1 -1
  56. package/dist/index.es119.js +97 -54
  57. package/dist/index.es119.js.map +1 -1
  58. package/dist/index.es12.js.map +1 -1
  59. package/dist/index.es120.js +60 -12
  60. package/dist/index.es120.js.map +1 -1
  61. package/dist/index.es121.js +52 -22
  62. package/dist/index.es121.js.map +1 -1
  63. package/dist/index.es122.js +14 -10
  64. package/dist/index.es122.js.map +1 -1
  65. package/dist/index.es123.js +25 -5
  66. package/dist/index.es123.js.map +1 -1
  67. package/dist/index.es124.js +11 -10
  68. package/dist/index.es124.js.map +1 -1
  69. package/dist/index.es125.js +44 -11
  70. package/dist/index.es125.js.map +1 -1
  71. package/dist/index.es126.js +5 -2
  72. package/dist/index.es126.js.map +1 -1
  73. package/dist/index.es127.js +11 -44
  74. package/dist/index.es127.js.map +1 -1
  75. package/dist/index.es128.js +10 -34
  76. package/dist/index.es128.js.map +1 -1
  77. package/dist/index.es129.js +2 -11
  78. package/dist/index.es129.js.map +1 -1
  79. package/dist/index.es13.js.map +1 -1
  80. package/dist/index.es130.js +33 -255
  81. package/dist/index.es130.js.map +1 -1
  82. package/dist/index.es131.js +11 -82
  83. package/dist/index.es131.js.map +1 -1
  84. package/dist/index.es132.js +255 -74
  85. package/dist/index.es132.js.map +1 -1
  86. package/dist/index.es133.js +59 -91
  87. package/dist/index.es133.js.map +1 -1
  88. package/dist/index.es134.js +47 -80
  89. package/dist/index.es134.js.map +1 -1
  90. package/dist/index.es135.js +103 -76
  91. package/dist/index.es135.js.map +1 -1
  92. package/dist/index.es136.js +62 -82
  93. package/dist/index.es136.js.map +1 -1
  94. package/dist/index.es137.js +75 -117
  95. package/dist/index.es137.js.map +1 -1
  96. package/dist/index.es138.js +128 -5
  97. package/dist/index.es138.js.map +1 -1
  98. package/dist/index.es139.js +132 -0
  99. package/dist/index.es139.js.map +1 -0
  100. package/dist/index.es14.js +1 -1
  101. package/dist/index.es14.js.map +1 -1
  102. package/dist/index.es140.js +9 -0
  103. package/dist/index.es140.js.map +1 -0
  104. package/dist/index.es15.js.map +1 -1
  105. package/dist/index.es16.js.map +1 -1
  106. package/dist/index.es17.js +1 -1
  107. package/dist/index.es17.js.map +1 -1
  108. package/dist/index.es18.js +1 -1
  109. package/dist/index.es18.js.map +1 -1
  110. package/dist/index.es19.js +3 -3
  111. package/dist/index.es19.js.map +1 -1
  112. package/dist/index.es2.js.map +1 -1
  113. package/dist/index.es20.js +1 -1
  114. package/dist/index.es20.js.map +1 -1
  115. package/dist/index.es21.js.map +1 -1
  116. package/dist/index.es22.js.map +1 -1
  117. package/dist/index.es23.js +1 -1
  118. package/dist/index.es23.js.map +1 -1
  119. package/dist/index.es24.js.map +1 -1
  120. package/dist/index.es25.js.map +1 -1
  121. package/dist/index.es26.js.map +1 -1
  122. package/dist/index.es27.js +1 -1
  123. package/dist/index.es27.js.map +1 -1
  124. package/dist/index.es28.js.map +1 -1
  125. package/dist/index.es29.js +1 -1
  126. package/dist/index.es29.js.map +1 -1
  127. package/dist/index.es3.js.map +1 -1
  128. package/dist/index.es30.js +1 -1
  129. package/dist/index.es30.js.map +1 -1
  130. package/dist/index.es31.js.map +1 -1
  131. package/dist/index.es32.js.map +1 -1
  132. package/dist/index.es33.js.map +1 -1
  133. package/dist/index.es34.js.map +1 -1
  134. package/dist/index.es35.js.map +1 -1
  135. package/dist/index.es36.js.map +1 -1
  136. package/dist/index.es37.js.map +1 -1
  137. package/dist/index.es38.js.map +1 -1
  138. package/dist/index.es39.js.map +1 -1
  139. package/dist/index.es4.js.map +1 -1
  140. package/dist/index.es40.js +92 -64
  141. package/dist/index.es40.js.map +1 -1
  142. package/dist/index.es41.js +94 -71
  143. package/dist/index.es41.js.map +1 -1
  144. package/dist/index.es42.js.map +1 -1
  145. package/dist/index.es44.js.map +1 -1
  146. package/dist/index.es45.js.map +1 -1
  147. package/dist/index.es46.js +1 -1
  148. package/dist/index.es46.js.map +1 -1
  149. package/dist/index.es47.js +1 -1
  150. package/dist/index.es47.js.map +1 -1
  151. package/dist/index.es48.js +20 -89
  152. package/dist/index.es48.js.map +1 -1
  153. package/dist/index.es49.js +1 -1
  154. package/dist/index.es49.js.map +1 -1
  155. package/dist/index.es5.js.map +1 -1
  156. package/dist/index.es50.js.map +1 -1
  157. package/dist/index.es51.js +1 -1
  158. package/dist/index.es51.js.map +1 -1
  159. package/dist/index.es52.js.map +1 -1
  160. package/dist/index.es53.js.map +1 -1
  161. package/dist/index.es54.js.map +1 -1
  162. package/dist/index.es55.js.map +1 -1
  163. package/dist/index.es56.js.map +1 -1
  164. package/dist/index.es57.js.map +1 -1
  165. package/dist/index.es58.js.map +1 -1
  166. package/dist/index.es59.js.map +1 -1
  167. package/dist/index.es6.js.map +1 -1
  168. package/dist/index.es60.js +1 -1
  169. package/dist/index.es60.js.map +1 -1
  170. package/dist/index.es61.js.map +1 -1
  171. package/dist/index.es62.js +5 -5
  172. package/dist/index.es62.js.map +1 -1
  173. package/dist/index.es63.js +1 -1
  174. package/dist/index.es63.js.map +1 -1
  175. package/dist/index.es64.js +7 -7
  176. package/dist/index.es64.js.map +1 -1
  177. package/dist/index.es65.js +2 -2
  178. package/dist/index.es65.js.map +1 -1
  179. package/dist/index.es66.js.map +1 -1
  180. package/dist/index.es67.js.map +1 -1
  181. package/dist/index.es68.js.map +1 -1
  182. package/dist/index.es69.js.map +1 -1
  183. package/dist/index.es7.js.map +1 -1
  184. package/dist/index.es70.js.map +1 -1
  185. package/dist/index.es71.js +1 -1
  186. package/dist/index.es71.js.map +1 -1
  187. package/dist/index.es72.js.map +1 -1
  188. package/dist/index.es73.js.map +1 -1
  189. package/dist/index.es74.js.map +1 -1
  190. package/dist/index.es75.js.map +1 -1
  191. package/dist/index.es76.js.map +1 -1
  192. package/dist/index.es78.js.map +1 -1
  193. package/dist/index.es79.js.map +1 -1
  194. package/dist/index.es8.js.map +1 -1
  195. package/dist/index.es80.js.map +1 -1
  196. package/dist/index.es81.js.map +1 -1
  197. package/dist/index.es86.js +41 -7
  198. package/dist/index.es86.js.map +1 -1
  199. package/dist/index.es87.js +8 -35
  200. package/dist/index.es87.js.map +1 -1
  201. package/dist/index.es88.js +22 -22
  202. package/dist/index.es88.js.map +1 -1
  203. package/dist/index.es89.js +88 -22
  204. package/dist/index.es89.js.map +1 -1
  205. package/dist/index.es9.js +1 -1
  206. package/dist/index.es9.js.map +1 -1
  207. package/dist/index.es90.js +118 -41
  208. package/dist/index.es90.js.map +1 -1
  209. package/dist/index.es91.js +13 -84
  210. package/dist/index.es91.js.map +1 -1
  211. package/dist/index.es92.js +48 -121
  212. package/dist/index.es92.js.map +1 -1
  213. package/dist/index.es93.js +12 -15
  214. package/dist/index.es93.js.map +1 -1
  215. package/dist/index.es94.js +10 -13
  216. package/dist/index.es94.js.map +1 -1
  217. package/dist/index.es95.js.map +1 -1
  218. package/dist/index.es96.js +41 -10
  219. package/dist/index.es96.js.map +1 -1
  220. package/dist/index.es97.js +10 -41
  221. package/dist/index.es97.js.map +1 -1
  222. package/dist/index.es98.js +7 -34
  223. package/dist/index.es98.js.map +1 -1
  224. package/dist/index.es99.js +83 -12
  225. package/dist/index.es99.js.map +1 -1
  226. package/dist/styles.css +19 -5
  227. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"navbar-desktop.d.ts","sourceRoot":"","sources":["../../../../src/components/organisms/navbar/navbar-desktop.tsx"],"names":[],"mappings":"AAKA,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,EAAa,kBAAkB,EAAE,MAAM,gBAAgB,CAAA;AAkK9D,eAAO,MAAM,aAAa,EAAE,KAAK,CAAC,EAAE,CAAC,kBAAkB,CAgDtD,CAAA"}
1
+ {"version":3,"file":"navbar-desktop.d.ts","sourceRoot":"","sources":["../../../../src/components/organisms/navbar/navbar-desktop.tsx"],"names":[],"mappings":"AAKA,OAAO,KAAmB,MAAM,OAAO,CAAA;AACvC,OAAO,EAAa,kBAAkB,EAAE,MAAM,gBAAgB,CAAA;AAyK9D,eAAO,MAAM,aAAa,EAAE,KAAK,CAAC,EAAE,CAAC,kBAAkB,CAsEtD,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"navbar-mobile.d.ts","sourceRoot":"","sources":["../../../../src/components/organisms/navbar/navbar-mobile.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,EAAa,iBAAiB,EAAE,MAAM,gBAAgB,CAAA;AA8O7D,eAAO,MAAM,YAAY,EAAE,KAAK,CAAC,EAAE,CAAC,iBAAiB,CAiDpD,CAAA"}
1
+ {"version":3,"file":"navbar-mobile.d.ts","sourceRoot":"","sources":["../../../../src/components/organisms/navbar/navbar-mobile.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAmB,MAAM,OAAO,CAAA;AACvC,OAAO,EAAa,iBAAiB,EAAE,MAAM,gBAAgB,CAAA;AAuP7D,eAAO,MAAM,YAAY,EAAE,KAAK,CAAC,EAAE,CAAC,iBAAiB,CA2EpD,CAAA"}
@@ -2,6 +2,7 @@ import { ReactElement } from 'react';
2
2
 
3
3
  export type NavbarPropsDesktop = {
4
4
  credits: number;
5
+ totalCredits?: number;
5
6
  className?: React.ComponentProps<'div'>['className'];
6
7
  icons: {
7
8
  help: IconProps;
@@ -9,6 +10,8 @@ export type NavbarPropsDesktop = {
9
10
  list: Array<IconProps>;
10
11
  chat?: IconProps;
11
12
  };
13
+ onRequestCredits?: (credits: string, phoneNumber: string) => void;
14
+ onProceedToPayment?: (credits: string, phoneNumber: string) => void;
12
15
  id?: string;
13
16
  login: {
14
17
  isLoggedIn: boolean;
@@ -51,11 +54,15 @@ type BottomItems = {
51
54
  };
52
55
  export type NavbarPropsMobile = {
53
56
  credits: NavbarPropsDesktop['credits'];
57
+ totalCredits?: NavbarPropsDesktop['totalCredits'];
54
58
  profile: NavbarPropsDesktop['profile'];
55
59
  icons: NavbarPropsDesktop['icons']['list'];
56
60
  logo: NavbarPropsDesktop['logo'] & {
57
61
  text: string;
58
62
  };
63
+ onRequestCredits?: (credits: string, phoneNumber: string) => void;
64
+ onProceedToPayment?: (credits: string, phoneNumber: string) => void;
65
+ containerId?: string;
59
66
  id?: string;
60
67
  logoutPanel: {
61
68
  handleLogout: () => void;
@@ -1 +1 @@
1
- {"version":3,"file":"navbar.types.d.ts","sourceRoot":"","sources":["../../../../src/components/organisms/navbar/navbar.types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,OAAO,CAAA;AAGpC,MAAM,MAAM,kBAAkB,GAAG;IAC/B,OAAO,EAAE,MAAM,CAAA;IACf,SAAS,CAAC,EAAE,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,WAAW,CAAC,CAAA;IACpD,KAAK,EAAE;QACL,IAAI,EAAE,SAAS,CAAA;QACf,YAAY,CAAC,EAAE,SAAS,CAAA;QACxB,IAAI,EAAE,KAAK,CAAC,SAAS,CAAC,CAAA;QACtB,IAAI,CAAC,EAAE,SAAS,CAAA;KACjB,CAAA;IAED,EAAE,CAAC,EAAE,MAAM,CAAA;IAEX,KAAK,EAAE;QACL,UAAU,EAAE,OAAO,CAAA;QAEnB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAA;KACrB,CAAA;IAED,IAAI,EAAE;QACJ,GAAG,EAAE,MAAM,CAAA;QACX,GAAG,EAAE,MAAM,CAAA;KACZ,CAAA;IAED,OAAO,EAAE;QACP,cAAc,EAAE,KAAK,CAAC,KAAK,CAAC,2BAA2B,CAAC,CAAC,CAAA;QAEzD,KAAK,CAAC,EAAE,MAAM,CAAA;QACd,IAAI,CAAC,EAAE,MAAM,CAAA;QACb,GAAG,CAAC,EAAE,MAAM,CAAA;QACZ,OAAO,CAAC,EAAE,MAAM,IAAI,CAAA;KACrB,CAAA;CACF,CAAA;AAED,KAAK,2BAA2B,GAAG;IACjC,KAAK,EAAE,MAAM,CAAA;IACb,QAAQ,EAAE,OAAO,CAAA;IACjB,OAAO,EAAE,MAAM,IAAI,CAAA;IAEnB,IAAI,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;CACvB,CAAA;AAED;;KAEK;AACL,MAAM,MAAM,SAAS,GAAG;IACtB,GAAG,EAAE,MAAM,CAAA;IACX,GAAG,EAAE,MAAM,CAAA;IAEX,SAAS,CAAC,EAAE,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,WAAW,CAAC,CAAA;IACpD,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,KAAK,CAAC,EAAE,OAAO,CAAA;IACf,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,KAAK,CAAC,SAAS,KAAK,YAAY,CAAA;IACrD,OAAO,CAAC,EAAE,MAAM,IAAI,CAAA;CACrB,CAAA;AAOD,KAAK,WAAW,GAAG;IACjB,KAAK,EAAE,MAAM,CAAA;IACb,OAAO,EAAE,MAAM,IAAI,CAAA;CACpB,CAAA;AAED,MAAM,MAAM,iBAAiB,GAAG;IAC9B,OAAO,EAAE,kBAAkB,CAAC,SAAS,CAAC,CAAA;IAEtC,OAAO,EAAE,kBAAkB,CAAC,SAAS,CAAC,CAAA;IAEtC,KAAK,EAAE,kBAAkB,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,CAAA;IAE1C,IAAI,EAAE,kBAAkB,CAAC,MAAM,CAAC,GAAG;QAAE,IAAI,EAAE,MAAM,CAAA;KAAE,CAAA;IAEnD,EAAE,CAAC,EAAE,MAAM,CAAA;IAEX,WAAW,EAAE;QACX,YAAY,EAAE,MAAM,IAAI,CAAA;QACxB,WAAW,EAAE,KAAK,CAAC,WAAW,CAAC,CAAA;KAChC,CAAA;CACF,CAAA"}
1
+ {"version":3,"file":"navbar.types.d.ts","sourceRoot":"","sources":["../../../../src/components/organisms/navbar/navbar.types.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ import { default as React } from 'react';
2
+ import { CreditSheetProps } from './credit-sheet.types';
3
+
4
+ export declare const CreditSheet: React.FC<CreditSheetProps>;
5
+ //# sourceMappingURL=credit-sheet.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"credit-sheet.d.ts","sourceRoot":"","sources":["../../../../src/components/ui/credit-sheet/credit-sheet.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAmB,MAAM,OAAO,CAAA;AAGvC,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAA;AAI5D,eAAO,MAAM,WAAW,EAAE,KAAK,CAAC,EAAE,CAAC,gBAAgB,CA8GlD,CAAA"}
@@ -0,0 +1,11 @@
1
+ export interface CreditSheetProps {
2
+ open: boolean;
3
+ onClose: () => void;
4
+ credit_details?: string;
5
+ description?: string;
6
+ onRequestCredits?: (credits: string, phoneNumber: string) => void;
7
+ onProceedToPayment?: (credits: string, phoneNumber: string) => void;
8
+ trigger?: React.ReactNode;
9
+ containerId?: string;
10
+ }
11
+ //# sourceMappingURL=credit-sheet.types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"credit-sheet.types.d.ts","sourceRoot":"","sources":["../../../../src/components/ui/credit-sheet/credit-sheet.types.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,OAAO,CAAA;IACb,OAAO,EAAE,MAAM,IAAI,CAAA;IACnB,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,gBAAgB,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,KAAK,IAAI,CAAA;IACjE,kBAAkB,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,KAAK,IAAI,CAAA;IACnE,OAAO,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IACzB,WAAW,CAAC,EAAE,MAAM,CAAA;CACrB"}
@@ -0,0 +1,5 @@
1
+ import { default as React } from 'react';
2
+ import { RequestCreditsDialogProps } from './request-credit-dialog.types';
3
+
4
+ export declare const RequestCreditsDialog: React.FC<RequestCreditsDialogProps>;
5
+ //# sourceMappingURL=request-credit-dialog.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"request-credit-dialog.d.ts","sourceRoot":"","sources":["../../../../../src/components/ui/request-credits-view/component/request-credit-dialog.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA8B,MAAM,OAAO,CAAA;AAKlD,OAAO,EAAE,yBAAyB,EAAE,MAAM,+BAA+B,CAAA;AAIzE,eAAO,MAAM,oBAAoB,EAAE,KAAK,CAAC,EAAE,CAAC,yBAAyB,CAgLpE,CAAA"}
@@ -0,0 +1,7 @@
1
+ export interface RequestCreditsDialogProps {
2
+ open: boolean;
3
+ onClose: () => void;
4
+ onRequestCredits: (credits: string, phoneNumber: string) => void;
5
+ onProceedToPayment?: (credits: string, phoneNumber: string) => void;
6
+ }
7
+ //# sourceMappingURL=request-credit-dialog.types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"request-credit-dialog.types.d.ts","sourceRoot":"","sources":["../../../../../src/components/ui/request-credits-view/component/request-credit-dialog.types.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,yBAAyB;IACxC,IAAI,EAAE,OAAO,CAAA;IACb,OAAO,EAAE,MAAM,IAAI,CAAA;IACnB,gBAAgB,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,KAAK,IAAI,CAAA;IAChE,kBAAkB,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,KAAK,IAAI,CAAA;CACpE"}
@@ -1 +1 @@
1
- {"version":3,"file":"request-credits-view.d.ts","sourceRoot":"","sources":["../../../../src/components/ui/request-credits-view/request-credits-view.tsx"],"names":[],"mappings":"AAAA,OAAc,EAAE,EAAE,EAAY,MAAM,OAAO,CAAA;AAC3C,OAAO,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAA;AASnE,QAAA,MAAM,kBAAkB,EAAE,EAAE,CAAC,oBAAoB,CAAC,uBAAuB,CA8IxE,CAAA;AAED,eAAe,kBAAkB,CAAA"}
1
+ {"version":3,"file":"request-credits-view.d.ts","sourceRoot":"","sources":["../../../../src/components/ui/request-credits-view/request-credits-view.tsx"],"names":[],"mappings":"AAAA,OAAc,EAAE,EAAE,EAAY,MAAM,OAAO,CAAA;AAC3C,OAAO,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAA;AAInE,QAAA,MAAM,kBAAkB,EAAE,EAAE,CAAC,oBAAoB,CAAC,uBAAuB,CAmCxE,CAAA;AAED,eAAe,kBAAkB,CAAA"}
@@ -1,6 +1,7 @@
1
1
  export declare namespace RequestCreditsViewNS {
2
2
  interface RequestCreditsViewProps {
3
- onRequestCredits: (credit: string, phoneNumber: string) => void;
3
+ onRequestCredits: (credits: string, phoneNumber: string) => void;
4
+ onProceedToPayment?: (credits: string, phoneNumber: string) => void;
4
5
  }
5
6
  }
6
7
  //# sourceMappingURL=request-credits-view.types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"request-credits-view.types.d.ts","sourceRoot":"","sources":["../../../../src/components/ui/request-credits-view/request-credits-view.types.ts"],"names":[],"mappings":"AACA,yBAAiB,oBAAoB,CAAC;IACpC,UAAiB,uBAAuB;QACtC,gBAAgB,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,KAAK,IAAI,CAAA;KAChE;CACF"}
1
+ {"version":3,"file":"request-credits-view.types.d.ts","sourceRoot":"","sources":["../../../../src/components/ui/request-credits-view/request-credits-view.types.ts"],"names":[],"mappings":"AACA,yBAAiB,oBAAoB,CAAC;IACpC,UAAiB,uBAAuB;QACtC,gBAAgB,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,KAAK,IAAI,CAAA;QAChE,kBAAkB,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,KAAK,IAAI,CAAA;KACpE;CACF"}
@@ -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.es78.js";
4
- import { ProgressVariants as n } from "./index.es86.js";
4
+ import { ProgressVariants as n } from "./index.es94.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 +1 @@
1
- {"version":3,"file":"index.es10.js","sources":["../src/components/atoms/progress/progress.tsx"],"sourcesContent":["import * as React from 'react'\nimport * as ProgressPrimitive from '@radix-ui/react-progress'\n\nimport { cn } from '@/lib/utils'\nimport { ProgressVariants } from './progress.styles'\n\nconst Progress = React.forwardRef<\n React.ElementRef<typeof ProgressPrimitive.Root>,\n React.ComponentPropsWithoutRef<typeof ProgressPrimitive.Root>\n>(({ className, value, ...props }, ref) => {\n const completionPercentage = ((value || 0) / (props.max || 100)) * 100\n return (\n <ProgressPrimitive.Root\n ref={ref}\n className={cn(ProgressVariants({ className }))}\n max={props.max || 100}\n {...props}\n id={props.id}\n >\n <ProgressPrimitive.Indicator\n className=\"flex-1 h-full transition-all rounded bg-hover-p1 \"\n style={{\n transform: `translateX(-${100 - completionPercentage}%)`,\n }}\n />\n </ProgressPrimitive.Root>\n )\n})\n\nProgress.displayName = ProgressPrimitive.Root.displayName\n\nexport { Progress }\n"],"names":["Progress","React","className","value","props","ref","completionPercentage","ProgressPrimitive","cn","ProgressVariants"],"mappings":";;;;AAMM,MAAAA,IAAWC,EAAM,WAGrB,CAAC,EAAE,WAAAC,GAAW,OAAAC,GAAO,GAAGC,EAAM,GAAGC,MAAQ;AACzC,QAAMC,KAAyBH,KAAS,MAAMC,EAAM,OAAO,OAAQ;AAEjE,SAAA,gBAAAH,EAAA;AAAA,IAACM,EAAkB;AAAA,IAAlB;AAAA,MACC,KAAAF;AAAA,MACA,WAAWG,EAAGC,EAAiB,EAAE,WAAAP,EAAW,CAAA,CAAC;AAAA,MAC7C,KAAKE,EAAM,OAAO;AAAA,MACjB,GAAGA;AAAA,MACJ,IAAIA,EAAM;AAAA,IAAA;AAAA,IAEV,gBAAAH,EAAA;AAAA,MAACM,EAAkB;AAAA,MAAlB;AAAA,QACC,WAAU;AAAA,QACV,OAAO;AAAA,UACL,WAAW,eAAe,MAAMD,CAAoB;AAAA,QAAA;AAAA,MACtD;AAAA,IAAA;AAAA,EAEJ;AAEJ,CAAC;AAEDN,EAAS,cAAcO,EAAkB,KAAK;"}
1
+ {"version":3,"file":"index.es10.js","sources":["../src/components/atoms/progress/progress.tsx"],"sourcesContent":["import * as React from 'react'\nimport * as ProgressPrimitive from '@radix-ui/react-progress'\n\nimport { cn } from '@/lib/utils'\nimport { ProgressVariants } from './progress.styles'\n\nconst Progress = React.forwardRef<\n React.ElementRef<typeof ProgressPrimitive.Root>,\n React.ComponentPropsWithoutRef<typeof ProgressPrimitive.Root>\n>(({ className, value, ...props }, ref) => {\n const completionPercentage = ((value || 0) / (props.max || 100)) * 100\n return (\n <ProgressPrimitive.Root\n ref={ref}\n className={cn(ProgressVariants({ className }))}\n max={props.max || 100}\n {...props}\n id={props.id}\n >\n <ProgressPrimitive.Indicator\n className=\"flex-1 h-full transition-all rounded bg-hover-p1 \"\n style={{\n transform: `translateX(-${100 - completionPercentage}%)`,\n }}\n />\n </ProgressPrimitive.Root>\n )\n})\n\nProgress.displayName = ProgressPrimitive.Root.displayName\n\nexport { Progress }\n"],"names":["Progress","React","className","value","props","ref","completionPercentage","ProgressPrimitive","cn","ProgressVariants"],"mappings":";;;;AAMA,MAAMA,IAAWC,EAAM,WAGrB,CAAC,EAAE,WAAAC,GAAW,OAAAC,GAAO,GAAGC,EAAA,GAASC,MAAQ;AACzC,QAAMC,KAAyBH,KAAS,MAAMC,EAAM,OAAO,OAAQ;AACnE,SACE,gBAAAH,EAAA;AAAA,IAACM,EAAkB;AAAA,IAAlB;AAAA,MACC,KAAAF;AAAA,MACA,WAAWG,EAAGC,EAAiB,EAAE,WAAAP,EAAA,CAAW,CAAC;AAAA,MAC7C,KAAKE,EAAM,OAAO;AAAA,MACjB,GAAGA;AAAA,MACJ,IAAIA,EAAM;AAAA,IAAA;AAAA,IAEV,gBAAAH,EAAA;AAAA,MAACM,EAAkB;AAAA,MAAlB;AAAA,QACC,WAAU;AAAA,QACV,OAAO;AAAA,UACL,WAAW,eAAe,MAAMD,CAAoB;AAAA,QAAA;AAAA,MACtD;AAAA,IAAA;AAAA,EACF;AAGN,CAAC;AAEDN,EAAS,cAAcO,EAAkB,KAAK;"}
@@ -1,276 +1,103 @@
1
- import e from "react";
2
- import { _Dialog as v } from "./index.es37.js";
3
- import { X as N, ChevronLeft as w, ChevronRight as S } from "lucide-react";
4
- import { Typography as i } from "./index.es17.js";
5
- import { ResponsiveContainer as d, BarChart as u, CartesianGrid as f, XAxis as g, YAxis as h, Tooltip as p, Bar as E } from "recharts";
6
- import { trendBoxStyles as C, trendValueStyles as k } from "./index.es121.js";
7
- const O = ({
8
- data: r,
9
- onToggle: t,
10
- isOpen: n,
11
- galleryActiveIndex: a,
12
- setgalleryActiveIndex: l
1
+ import e, { useState as d, useEffect as C } from "react";
2
+ import { _Dialog as w } from "./index.es37.js";
3
+ import { Typography as f } from "./index.es17.js";
4
+ import { Button as p } from "./index.es7.js";
5
+ import { Input as _ } from "./index.es9.js";
6
+ const i = ["1", "5", "10", "20", ">50"], S = ({
7
+ open: o,
8
+ onClose: v,
9
+ onRequestCredits: h,
10
+ onProceedToPayment: g
13
11
  }) => {
14
- const o = r && r.length, b = () => {
15
- r && l((s) => (s + 1) % r?.length);
16
- }, y = () => {
17
- r && l(
18
- (s) => (s - 1 + r.length) % r.length
19
- );
20
- }, x = (s) => {
21
- l(s);
22
- }, m = () => {
23
- t();
12
+ const [a, m] = d(i[0]), [s, c] = d(""), [E, l] = d(""), N = (t) => {
13
+ if (!t)
14
+ return "Phone number is required";
15
+ const r = t.startsWith("+91") ? t.substring(3) : t;
16
+ return /^[6-9]\d{9}$/.test(r) ? "" : "Please enter valid number";
17
+ }, n = a === ">50", b = (t) => {
18
+ const r = t.target.value;
19
+ c(r), l("");
20
+ }, x = () => {
21
+ const t = N(s);
22
+ if (t && n) {
23
+ l(t);
24
+ return;
25
+ }
26
+ const r = n ? "50+" : a;
27
+ n ? h(r, s) : g ? g(r, s) : h(r, s), u();
28
+ }, u = () => {
29
+ v(), setTimeout(() => {
30
+ c(""), l(""), m(i[0]);
31
+ }, 100);
24
32
  };
33
+ C(() => {
34
+ o || setTimeout(() => {
35
+ c(""), l(""), m(i[0]);
36
+ }, 100);
37
+ }, [o]);
38
+ const y = n ? `Request ${a}` : `Proceed to Payment ${a} `;
25
39
  return /* @__PURE__ */ e.createElement(
26
- v,
40
+ w,
27
41
  {
28
- open: n,
42
+ open: o,
43
+ onOpenChange: u,
29
44
  trigger: null,
30
- contentClassName: "bg-transparent w-fit border-0",
31
- onInteractOutside: m,
32
- 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(
33
- N,
45
+ contentClassName: "w-min",
46
+ body: /* @__PURE__ */ e.createElement("div", { className: "flex items-center " }, /* @__PURE__ */ e.createElement("div", null, /* @__PURE__ */ e.createElement(
47
+ "img",
34
48
  {
35
- size: 24,
36
- color: "white",
37
- className: "absolute z-50 cursor-pointer -right-10 -top-10",
38
- onClick: m
49
+ src: "https://frontend-static-files.geoiq.io/strapi/Group_427319313_e054593ef1/Group_427319313_e054593ef1.svg",
50
+ alt: "lock",
51
+ className: "hidden md:block justify-center items-center ml-4"
39
52
  }
40
- ), /* @__PURE__ */ e.createElement("div", { className: "relative" }, /* @__PURE__ */ e.createElement("div", { className: "relative " }, o && /* @__PURE__ */ e.createElement(
41
- "img",
53
+ )), /* @__PURE__ */ e.createElement("div", { className: "px-4 py-2 w-80 md:w-[540px]" }, /* @__PURE__ */ e.createElement("div", { className: "flex flex-col gap-2" }, /* @__PURE__ */ e.createElement(f, { variant: "h3", className: "text-light-2" }, "How many credits do you need?"), /* @__PURE__ */ e.createElement(f, { variant: "body4", className: "text-light-4" }, /* @__PURE__ */ e.createElement("span", { className: "underline" }, "Note:"), " One credit is needed to unlock a site report.", " ", n ? " Please provide your phone number to make a request" : "", ".")), /* @__PURE__ */ e.createElement("div", { className: "flex flex-row gap-2 mt-2" }, i.map((t) => /* @__PURE__ */ e.createElement(
54
+ p,
55
+ {
56
+ variant: a === t ? "primary" : "secondary",
57
+ key: t,
58
+ className: a === t ? "w-10" : "w-10 bg-light-2",
59
+ size: "sm",
60
+ onClick: () => {
61
+ m(t);
62
+ }
63
+ },
64
+ t
65
+ ))), n && /* @__PURE__ */ e.createElement("div", { className: "flex flex-col mt-4" }, /* @__PURE__ */ e.createElement(f, { className: "text-sm font-medium mb-1 text-light-2" }, "Phone Number *"), /* @__PURE__ */ e.createElement(
66
+ _,
42
67
  {
43
- key: r[a].image_url,
44
- src: r[a].image_url,
45
- alt: `Street ${a + 1}`,
46
- className: "w-[500px] max-h-[80vh] object-contain flex-shrink-0"
68
+ id: "phoneNumber",
69
+ type: "tel",
70
+ value: s,
71
+ onChange: b,
72
+ className: "h-10",
73
+ placeholder: "Enter phone number",
74
+ maxLength: 13,
75
+ isError: !!E,
76
+ message: E
47
77
  }
48
- )), /* @__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(w, { size: 30, color: "white" })), /* @__PURE__ */ e.createElement("div", { role: "button", tabIndex: 0, onClick: b }, /* @__PURE__ */ e.createElement(S, { 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(
49
- "img",
78
+ )))),
79
+ footer: /* @__PURE__ */ e.createElement("div", { className: "flex w-full gap-2 justify-evenly" }, /* @__PURE__ */ e.createElement(p, { variant: "secondary", onClick: u, title: "Cancel" }), /* @__PURE__ */ e.createElement(
80
+ p,
50
81
  {
51
- key: c,
52
- src: s.image_url,
53
- alt: `Thumbnail ${c + 1}`,
54
- onClick: () => x(c),
55
- className: `w-20 h-auto rounded-lg cursor-pointer ${c === a ? "ring-2 ring-primary-1" : "ring-2 ring-transparent"} hover:ring-gray-300`
82
+ variant: "primary",
83
+ suffixIcon: /* @__PURE__ */ e.createElement(
84
+ "img",
85
+ {
86
+ src: "https://frontend-static-files.geoiq.io/strapi/navbar_credits_247858e26a.svg",
87
+ width: 16,
88
+ height: 16,
89
+ alt: "coin icon",
90
+ className: "ml-1 mr-2 md:mr-0"
91
+ }
92
+ ),
93
+ title: y,
94
+ onClick: x
56
95
  }
57
- ))))
96
+ ))
58
97
  }
59
98
  );
60
- }, $ = ({ active: r, payload: t, label: n, year: a }) => {
61
- if (r && t && t.length) {
62
- const l = t[0]?.payload?.year, o = t[0]?.value;
63
- 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(
64
- "div",
65
- {
66
- className: "h-4 w-1 rounded-lg",
67
- style: { backgroundColor: "#6D48EF" }
68
- }
69
- ), /* @__PURE__ */ e.createElement(i, { variant: "body6", className: "text-secondary mx-1" }, "Visits"), /* @__PURE__ */ e.createElement(i, { variant: "body4", className: "text-secondary ml-auto" }, ` ${o}`)));
70
- }
71
- return null;
72
- }, z = ({ active: r, payload: t, label: n }) => {
73
- if (r && t && t.length) {
74
- const a = t[0]?.payload?.distance, l = t[0]?.value;
75
- 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(
76
- i,
77
- {
78
- variant: "body4",
79
- className: "text-normal text-danger-1 ml-auto p-2"
80
- },
81
- `${l}%`
82
- ));
83
- }
84
- return null;
85
- }, D = ({ 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(
86
- "div",
87
- {
88
- key: t.type,
89
- className: "flex items-center gap-1 bg-light-1 px-2 py-1 rounded-full border border-neutral-1"
90
- },
91
- /* @__PURE__ */ e.createElement(
92
- "img",
93
- {
94
- src: t.iconUrl,
95
- alt: `${t.type} Icon`,
96
- className: "w-4 h-4"
97
- }
98
- ),
99
- /* @__PURE__ */ e.createElement(i, { variant: "body6", className: "text-light-2" }, t.count),
100
- /* @__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"))
101
- ))))), K = ({
102
- highlights: r
103
- }) => /* @__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(
104
- "div",
105
- {
106
- className: C({
107
- trend: t.trend?.toString()
108
- })
109
- },
110
- t.trend === 1 && /* @__PURE__ */ e.createElement(
111
- "img",
112
- {
113
- src: "https://frontend-static-files.geoiq.io/strapi/trending_up_9d73d6fac5.svg",
114
- alt: "High Trend",
115
- className: "w-3 h-3"
116
- }
117
- ),
118
- t.trend === -1 && /* @__PURE__ */ e.createElement(
119
- "img",
120
- {
121
- src: "https://frontend-static-files.geoiq.io/strapi/trending_down_87adc7f3a6.svg",
122
- alt: "Low Trend",
123
- className: "w-3 h-3"
124
- }
125
- ),
126
- t.value && t.trend ? /* @__PURE__ */ e.createElement(
127
- i,
128
- {
129
- variant: "body5",
130
- className: k({
131
- trend: t.trend?.toString()
132
- })
133
- },
134
- `${t.value}%`
135
- ) : /* @__PURE__ */ e.createElement(i, { variant: "body5", className: "text-sm" }, "-")
136
- ), 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" })))))), I = ({ 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(
137
- u,
138
- {
139
- data: r,
140
- margin: {
141
- top: 3,
142
- right: 3,
143
- bottom: -10,
144
- left: 3
145
- },
146
- barSize: 24
147
- },
148
- /* @__PURE__ */ e.createElement(f, { strokeDasharray: "10 10" }),
149
- /* @__PURE__ */ e.createElement(
150
- g,
151
- {
152
- dataKey: "month",
153
- style: {
154
- font: "Kumbh Sans",
155
- fontSize: "12px",
156
- fontWeight: "500",
157
- color: "#4A4A4A"
158
- }
159
- }
160
- ),
161
- /* @__PURE__ */ e.createElement(
162
- h,
163
- {
164
- className: "text-4-grey",
165
- style: { fontSize: "12px", fontWeight: "500" },
166
- tickFormatter: (t) => t > 1e6 ? `${t / 1e6}M` : t > 1e3 ? `${t / 1e3}K` : t,
167
- label: {
168
- value: "AVG FOOTFALL FOR A 3-MONTH PERIOD",
169
- angle: -90,
170
- position: "insideLeft",
171
- dy: -5,
172
- style: {
173
- textAnchor: "middle",
174
- fontSize: "12px",
175
- fontWeight: "500"
176
- }
177
- }
178
- }
179
- ),
180
- /* @__PURE__ */ e.createElement(p, { content: /* @__PURE__ */ e.createElement($, null) }),
181
- /* @__PURE__ */ e.createElement(
182
- E,
183
- {
184
- dataKey: "footfall",
185
- fill: "#6D48EF",
186
- radius: [4, 4, 4, 4],
187
- style: { cursor: "pointer" }
188
- }
189
- )
190
- ))), R = ({
191
- data: r
192
- }) => {
193
- if (!r || r.every((n) => n.cannibalisation === null))
194
- return null;
195
- const t = (n) => {
196
- const a = r.length;
197
- let l;
198
- return a <= 1 ? l = 50 : a <= 6 ? l = 22 - (a - 1) * 4 : l = 6, n.length > l ? `${n.slice(0, l)}...` : n;
199
- };
200
- 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(
201
- u,
202
- {
203
- data: r,
204
- margin: {
205
- top: 3,
206
- right: 3,
207
- bottom: 5,
208
- left: 3
209
- },
210
- barSize: 24
211
- },
212
- /* @__PURE__ */ e.createElement(f, { strokeDasharray: "10 10" }),
213
- /* @__PURE__ */ e.createElement(
214
- g,
215
- {
216
- dataKey: "store_name",
217
- tickFormatter: t,
218
- tickMargin: 10,
219
- tick: (n) => {
220
- const { x: a, y: l, payload: o } = n;
221
- 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(
222
- "tspan",
223
- {
224
- x: a,
225
- dy: "1.5em",
226
- style: {
227
- fontSize: 10,
228
- whiteSpace: "nowrap",
229
- paddingTop: "2px"
230
- }
231
- },
232
- r[o.index].distance + " kms"
233
- ));
234
- }
235
- }
236
- ),
237
- /* @__PURE__ */ e.createElement(
238
- h,
239
- {
240
- className: "text-4-grey",
241
- style: { fontSize: "12px", fontWeight: "500" },
242
- tickFormatter: (n) => n > 1e6 ? `${n / 1e6}M` : n > 1e3 ? `${n / 1e3}K` : n,
243
- label: {
244
- value: "CANNIBALISATION IN %",
245
- angle: -90,
246
- position: "insideLeft",
247
- dy: -5,
248
- style: {
249
- textAnchor: "middle",
250
- fontSize: "12px",
251
- fontWeight: "500"
252
- }
253
- },
254
- domain: [0, 100]
255
- }
256
- ),
257
- /* @__PURE__ */ e.createElement(p, { content: /* @__PURE__ */ e.createElement(z, null) }),
258
- /* @__PURE__ */ e.createElement(
259
- E,
260
- {
261
- dataKey: "cannibalisation",
262
- fill: "#F93232",
263
- radius: [4, 4, 4, 4],
264
- style: { cursor: "pointer" }
265
- }
266
- )
267
- )));
268
99
  };
269
100
  export {
270
- R as CannibalisationChartSection,
271
- I as FootfallChartSection,
272
- O as ReportSnippetGalleryView,
273
- D as StoreInsightsSection,
274
- K as StoreOverviewSection
101
+ S as RequestCreditsDialog
275
102
  };
276
103
  //# sourceMappingURL=index.es100.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.es100.js","sources":["../src/components/ui/report-snippet-view/report-snippet-view-components.tsx"],"sourcesContent":["import React, { FC } from 'react'\nimport { ReportSnippetViewNS } from './report-snippet-view.types'\n\nimport { Dialog } from '@/components/organisms/dialog'\nimport { ChevronLeft, ChevronRight, X } from 'lucide-react'\nimport { Typography } from '@/components/atoms/typography'\nimport {\n BarChart,\n Bar,\n XAxis,\n YAxis,\n CartesianGrid,\n Tooltip,\n ResponsiveContainer,\n} from 'recharts'\nimport { trendBoxStyles, trendValueStyles } from './report-snippet-view-style'\n\nconst ReportSnippetGalleryView: FC<{\n onToggle: () => void\n isOpen: boolean\n data?: ReportSnippetViewNS.StreetViewData\n galleryActiveIndex: number\n setgalleryActiveIndex: React.Dispatch<React.SetStateAction<number>>\n}> = ({\n data,\n onToggle,\n isOpen,\n galleryActiveIndex,\n setgalleryActiveIndex,\n}) => {\n // Current active item\n\n const isDataAvailable = data && data.length\n\n // Handle next click\n const handleNext = () => {\n if (!data) return\n setgalleryActiveIndex((prevIndex) => (prevIndex + 1) % data?.length)\n }\n\n // Handle previous click\n const handlePrev = () => {\n if (!data) return\n setgalleryActiveIndex(\n (prevIndex) => (prevIndex - 1 + data.length) % data.length\n )\n }\n\n const handleThumbnailClick = (index: number) => {\n setgalleryActiveIndex(index)\n }\n\n const toggleGallery = () => {\n onToggle()\n }\n\n return (\n <Dialog\n open={isOpen}\n trigger={null}\n contentClassName=\"bg-transparent w-fit border-0\"\n onInteractOutside={toggleGallery}\n body={\n <div className=\"flex flex-col items-center justify-center w-full h-full max-w-3xl mx-auto\">\n <X\n size={24}\n color=\"white\"\n className=\"absolute z-50 cursor-pointer -right-10 -top-10\"\n onClick={toggleGallery}\n />\n\n {/* Main Carousel */}\n <div className=\"relative\">\n <div className=\"relative \">\n {isDataAvailable && (\n <img\n key={data[galleryActiveIndex].image_url}\n src={data[galleryActiveIndex].image_url}\n alt={`Street ${galleryActiveIndex + 1}`}\n className=\"w-[500px] max-h-[80vh] object-contain flex-shrink-0\"\n />\n )}\n </div>\n\n {/* Navigation Buttons */}\n <div className=\"relative top-[-50%] left-[-10%] flex row w-[120%] justify-between\">\n <div role=\"button\" tabIndex={0} onClick={handlePrev}>\n <ChevronLeft size={30} color=\"white\" />\n </div>\n <div role=\"button\" tabIndex={0} onClick={handleNext}>\n <ChevronRight size={30} color=\"white\" />\n </div>\n </div>\n </div>\n\n {/* Thumbnails */}\n <div className=\"flex justify-center p-2 mt-4 space-x-2 rounded-lg\">\n {isDataAvailable &&\n data.map((item, index) => (\n <img\n key={index}\n src={item.image_url}\n alt={`Thumbnail ${index + 1}`}\n onClick={() => handleThumbnailClick(index)}\n className={`w-20 h-auto rounded-lg cursor-pointer ${\n index === galleryActiveIndex\n ? 'ring-2 ring-primary-1'\n : 'ring-2 ring-transparent'\n } hover:ring-gray-300`}\n />\n ))}\n </div>\n </div>\n }\n />\n )\n}\n// eslint-disable-next-line @typescript-eslint/no-explicit-any, @typescript-eslint/no-unused-vars\nconst CustomTooltipFootfall = ({ active, payload, label, year }: any) => {\n if (active && payload && payload.length) {\n const year = payload[0]?.payload?.year\n const footfall = payload[0]?.value\n return (\n <div className=\"flex flex-col bg-light-1 p-4 rounded-lg shadow-md min-w-[200px] gap-1\">\n {/* Month Information */}\n <Typography variant={'body6'} className=\"text-primary\">\n {`${label}'${year}`}\n </Typography>\n\n {/* Separator */}\n <div className=\"my-2 w-full h-px border border-stroke-1\" />\n\n {/* Footfall/Visits Information */}\n <div className=\"flex\">\n <div\n className=\"h-4 w-1 rounded-lg\"\n style={{ backgroundColor: '#6D48EF' }}\n />\n <Typography variant={'body6'} className=\"text-secondary mx-1\">\n Visits\n </Typography>\n <Typography variant={'body4'} className=\"text-secondary ml-auto\">\n {` ${footfall}`}\n </Typography>\n </div>\n </div>\n )\n }\n return null\n}\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nconst CustomTooltipCannibalisation = ({ active, payload, label }: any) => {\n if (active && payload && payload.length) {\n const distance = payload[0]?.payload?.distance\n const cannibalisation = payload[0]?.value\n return (\n <div className=\"flex bg-light-1 items-center justify-between rounded-lg shadow-md min-w-45 max-w-80 gap-2 p-2\">\n {/* Month Information */}\n <Typography variant={'body6'} className=\"text-primary\">\n {\n <div className=\"flex h-full justify-between items-center p-2 gap-4\">\n <div>{label}</div>\n <div> {distance + 'km'}</div>\n </div>\n }\n </Typography>\n {/* Footfall/Visits Information */}\n <Typography\n variant={'body4'}\n className=\"text-normal text-danger-1 ml-auto p-2\"\n >\n {`${cannibalisation}%`}\n </Typography>\n </div>\n )\n }\n return null\n}\n\n{\n /*--------- Store insights ----------*/\n}\ninterface StoreInsightsSectionProps {\n insights: ReportSnippetViewNS.CatchmentInsights[]\n // customButton?: React.ReactNode\n}\n\nconst StoreInsightsSection: FC<StoreInsightsSectionProps> = ({ insights }) => {\n return (\n <div>\n <div className=\"flex flex-row mb-4 justify-between\">\n <Typography variant=\"body4\" className=\"text-light-2\">\n Store Insight:\n </Typography>\n </div>\n\n <div className=\"bg-light-2 p-3 border border-neutral-1 rounded-lg\">\n <Typography variant=\"body4\" className=\"text-light-2 mb-2\">\n Presence of other brands in catchment:\n </Typography>\n\n {/* Render store insights data */}\n <div className=\"flex gap-1 flex-wrap\">\n {insights.map((item) => (\n <div\n key={item.type}\n className=\"flex items-center gap-1 bg-light-1 px-2 py-1 rounded-full border border-neutral-1\"\n >\n {/* Icon */}\n <img\n src={item.iconUrl}\n alt={`${item.type} Icon`}\n className=\"w-4 h-4\"\n />\n\n {/* Name and Count */}\n <Typography variant=\"body6\" className=\"text-light-2\">\n {item.count}\n </Typography>\n <div className=\"flex items-center gap-1\">\n <Typography variant=\"body6\" className=\"text-light-2\">\n {item.type === 'competitor' ? 'Competitors' : 'Complementary'}\n </Typography>\n </div>\n </div>\n ))}\n </div>\n </div>\n </div>\n )\n}\n\n{\n /*--------- Store Overview ----------*/\n}\ninterface StoreOverviewSectionProps {\n highlights: ReportSnippetViewNS.StoreHighlights[]\n}\n\nconst StoreOverviewSection: FC<StoreOverviewSectionProps> = ({\n highlights,\n}) => {\n return (\n <div>\n <Typography variant={'body4'} className=\"text-light-2 mb-2\">\n Store Overview:\n </Typography>\n <div className=\"bg-light-2 p-1 border border-neutral-1 rounded-lg\">\n <div className=\"flex justify-evenly items-center\">\n {highlights.map((item, index) => (\n <React.Fragment key={index}>\n <div className=\"flex flex-col items-center justify-center text-center gap-1 p-\">\n {/* Trend Box */}\n <div\n className={trendBoxStyles({\n trend: item.trend?.toString() as '1' | '-1' | '0' | null,\n })}\n >\n {item.trend === 1 && (\n <img\n src=\"https://frontend-static-files.geoiq.io/strapi/trending_up_9d73d6fac5.svg\"\n alt=\"High Trend\"\n className={'w-3 h-3'}\n />\n )}\n {item.trend === -1 && (\n <img\n src=\"https://frontend-static-files.geoiq.io/strapi/trending_down_87adc7f3a6.svg\"\n alt=\"Low Trend\"\n className={'w-3 h-3'}\n />\n )}\n {item.value && item.trend ? (\n <Typography\n variant=\"body5\"\n className={trendValueStyles({\n trend: item.trend?.toString() as\n | '1'\n | '-1'\n | '0'\n | null,\n })}\n >\n {`${item.value}%`}\n </Typography>\n ) : (\n <Typography variant=\"body5\" className=\"text-sm\">\n -\n </Typography>\n )}\n </div>\n\n {/* Name */}\n {item.name && (\n <Typography variant={'body6'} className=\"text-light-2\">\n {item.name}\n </Typography>\n )}\n </div>\n\n {/* Separator */}\n {index < highlights.length - 1 && (\n <div className=\"border-l border-stroke-light-1 h-20 mx-1\" />\n )}\n </React.Fragment>\n ))}\n </div>\n </div>\n </div>\n )\n}\n\n{\n /*----------------- Footfall Trends ------------------*/\n}\ninterface FootfallChartSectionProps {\n data: ReportSnippetViewNS.FootfallChartData[]\n}\n\nconst FootfallChartSection: FC<FootfallChartSectionProps> = ({ data }) => {\n if (!data || data.every((item) => item.footfall === null)) {\n return null\n }\n return (\n <div className=\"w-full h-full bg-light-2 border border-neutral-1 p-3 rounded-lg\">\n {/* Section heading */}\n <Typography variant={'body4'} className=\"text-light-2 mb-4\">\n Footfall trends\n </Typography>\n\n {/* Bar Chart */}\n <ResponsiveContainer width=\"100%\" height={300}>\n <BarChart\n data={data}\n margin={{\n top: 3,\n right: 3,\n bottom: -10,\n left: 3,\n }}\n barSize={24}\n >\n <CartesianGrid strokeDasharray=\"10 10\" />\n <XAxis\n dataKey=\"month\"\n style={{\n font: 'Kumbh Sans',\n fontSize: '12px',\n fontWeight: '500',\n color: '#4A4A4A',\n }}\n />\n <YAxis\n className=\"text-4-grey\"\n style={{ fontSize: '12px', fontWeight: '500' }}\n tickFormatter={(val) => {\n if (val > 1000000) {\n return `${val / 1000000}M`\n }\n if (val > 1000) {\n return `${val / 1000}K`\n }\n return val\n }}\n label={{\n value: 'AVG FOOTFALL FOR A 3-MONTH PERIOD',\n angle: -90,\n position: 'insideLeft',\n dy: -5,\n style: {\n textAnchor: 'middle',\n fontSize: '12px',\n fontWeight: '500',\n },\n }}\n />\n <Tooltip content={<CustomTooltipFootfall />} />\n <Bar\n dataKey=\"footfall\"\n fill=\"#6D48EF\"\n radius={[4, 4, 4, 4]}\n style={{ cursor: 'pointer' }}\n />\n </BarChart>\n </ResponsiveContainer>\n </div>\n )\n}\n\n{\n /* -----------------Cannibalisation Effect------------------ */\n}\ninterface CannibalisationChartSectionProps {\n data: ReportSnippetViewNS.CannibalisationChartData[]\n}\n\nconst CannibalisationChartSection: FC<CannibalisationChartSectionProps> = ({\n data,\n}) => {\n if (!data || data.every((item) => item.cannibalisation === null)) {\n return null\n }\n const formatXAxisLabel = (label: string) => {\n const barCount = data.length\n let maxLength\n\n if (barCount <= 1) {\n maxLength = 50\n } else if (barCount <= 6) {\n maxLength = 22 - (barCount - 1) * 4\n } else {\n maxLength = 6\n }\n\n return label.length > maxLength ? `${label.slice(0, maxLength)}...` : label\n }\n return (\n <div className=\"w-full h-full bg-light-2 border border-neutral-1 p-3 rounded-lg\">\n {/* Section heading */}\n <Typography variant={'body4'} className=\"text-light-2 mb-4\">\n Cannibalisation effects\n </Typography>\n\n {/* Bar Chart */}\n <ResponsiveContainer width=\"100%\" height={300}>\n <BarChart\n data={data}\n margin={{\n top: 3,\n right: 3,\n bottom: 5,\n left: 3,\n }}\n barSize={24}\n >\n <CartesianGrid strokeDasharray=\"10 10\" />\n <XAxis\n dataKey=\"store_name\"\n tickFormatter={formatXAxisLabel}\n tickMargin={10}\n tick={(props) => {\n const { x, y, payload } = props\n return (\n <text x={x} y={y} textAnchor={'end'} fill=\"#666\">\n <tspan x={x} style={{ fontSize: 12 }}>\n {formatXAxisLabel(payload.value)}\n </tspan>\n <tspan\n x={x}\n dy=\"1.5em\"\n style={{\n fontSize: 10,\n whiteSpace: 'nowrap',\n paddingTop: '2px',\n }}\n >\n {data[payload.index].distance + ' kms'}\n </tspan>\n </text>\n )\n }}\n />\n <YAxis\n className=\"text-4-grey\"\n style={{ fontSize: '12px', fontWeight: '500' }}\n tickFormatter={(val) => {\n if (val > 1000000) {\n return `${val / 1000000}M`\n }\n if (val > 1000) {\n return `${val / 1000}K`\n }\n return val\n }}\n label={{\n value: 'CANNIBALISATION IN %',\n angle: -90,\n position: 'insideLeft',\n dy: -5,\n style: {\n textAnchor: 'middle',\n fontSize: '12px',\n fontWeight: '500',\n },\n }}\n domain={[0, 100]}\n />\n <Tooltip content={<CustomTooltipCannibalisation />} />\n <Bar\n dataKey=\"cannibalisation\"\n fill=\"#F93232\"\n radius={[4, 4, 4, 4]}\n style={{ cursor: 'pointer' }}\n />\n </BarChart>\n </ResponsiveContainer>\n </div>\n )\n}\n\nexport {\n ReportSnippetGalleryView,\n StoreInsightsSection,\n StoreOverviewSection,\n FootfallChartSection,\n CannibalisationChartSection,\n}\n"],"names":["ReportSnippetGalleryView","data","onToggle","isOpen","galleryActiveIndex","setgalleryActiveIndex","isDataAvailable","handleNext","prevIndex","handlePrev","handleThumbnailClick","index","toggleGallery","React","Dialog","X","ChevronLeft","ChevronRight","item","CustomTooltipFootfall","active","payload","label","year","footfall","Typography","CustomTooltipCannibalisation","distance","cannibalisation","StoreInsightsSection","insights","StoreOverviewSection","highlights","trendBoxStyles","trendValueStyles","FootfallChartSection","ResponsiveContainer","BarChart","CartesianGrid","XAxis","YAxis","val","Tooltip","Bar","CannibalisationChartSection","formatXAxisLabel","barCount","maxLength","props","x","y"],"mappings":"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"}
1
+ {"version":3,"file":"index.es100.js","sources":["../src/components/ui/request-credits-view/component/request-credit-dialog.tsx"],"sourcesContent":["import React, { useState, useEffect } from 'react'\nimport { Dialog } from '@/components/organisms/dialog'\nimport { Typography } from '@/components/atoms/typography'\nimport { Button } from '@/components/atoms/button'\nimport { Input } from '@/components/atoms/input'\nimport { RequestCreditsDialogProps } from './request-credit-dialog.types'\n\nconst Credits = ['1', '5', '10', '20', '>50']\n\nexport const RequestCreditsDialog: React.FC<RequestCreditsDialogProps> = ({\n open,\n onClose,\n onRequestCredits,\n onProceedToPayment,\n}) => {\n const [selectedCredit, setSelectedCredit] = useState(Credits[0])\n const [phoneNumber, setPhoneNumber] = useState('')\n const [phoneError, setPhoneError] = useState('')\n\n const validatePhone = (phone: string) => {\n if (!phone) {\n return 'Phone number is required'\n }\n\n // Strip the +91 prefix if present for validation\n const numberOnly = phone.startsWith('+91') ? phone.substring(3) : phone\n\n // Validate the 10-digit part\n if (!/^[6-9]\\d{9}$/.test(numberOnly)) {\n return 'Please enter valid number'\n }\n\n return ''\n }\n const isRequestAction = selectedCredit === '>50'\n\n const handlePhoneChange = (e: React.ChangeEvent<HTMLInputElement>) => {\n const value = e.target.value\n setPhoneNumber(value)\n setPhoneError('')\n }\n\n const handleSubmit = () => {\n const error = validatePhone(phoneNumber)\n if (error && isRequestAction) {\n setPhoneError(error)\n return\n }\n\n const credit = isRequestAction ? '50+' : selectedCredit\n\n // Different actions based on credit selection\n if (isRequestAction) {\n // For >50 credits, call request credits (manual approval)\n onRequestCredits(credit, phoneNumber)\n } else {\n // For <=50 credits, proceed to payment\n if (onProceedToPayment) {\n onProceedToPayment(credit, phoneNumber)\n } else {\n // Fallback to request credits if no payment handler\n onRequestCredits(credit, phoneNumber)\n }\n }\n\n reset()\n }\n\n const reset = () => {\n onClose()\n // To avoid the flickering of the input field when the dialog closes\n setTimeout(() => {\n setPhoneNumber('')\n setPhoneError('')\n setSelectedCredit(Credits[0])\n }, 100)\n }\n\n // Reset form when dialog closes\n useEffect(() => {\n if (!open) {\n setTimeout(() => {\n setPhoneNumber('')\n setPhoneError('')\n setSelectedCredit(Credits[0])\n }, 100)\n }\n }, [open])\n\n // Determine button text and action\n const buttonText = isRequestAction\n ? `Request ${selectedCredit}`\n : `Proceed to Payment ${selectedCredit} `\n\n return (\n <Dialog\n open={open}\n onOpenChange={reset}\n trigger={null}\n contentClassName=\"w-min\"\n body={\n <div className=\"flex items-center \">\n <div>\n <img\n src=\"https://frontend-static-files.geoiq.io/strapi/Group_427319313_e054593ef1/Group_427319313_e054593ef1.svg\"\n alt=\"lock\"\n className=\"hidden md:block justify-center items-center ml-4\"\n />\n </div>\n <div className=\"px-4 py-2 w-80 md:w-[540px]\">\n <div className=\"flex flex-col gap-2\">\n <Typography variant={'h3'} className=\"text-light-2\">\n How many credits do you need?\n </Typography>\n <Typography variant={'body4'} className=\"text-light-4\">\n <span className=\"underline\">Note:</span> One credit is needed to\n unlock a site report.{' '}\n {isRequestAction\n ? ' Please provide your phone number to make a request'\n : ''}\n .\n </Typography>\n </div>\n\n <div className=\"flex flex-row gap-2 mt-2\">\n {Credits.map((credit) => (\n <Button\n variant={selectedCredit === credit ? 'primary' : 'secondary'}\n key={credit}\n className={\n selectedCredit === credit ? 'w-10' : 'w-10 bg-light-2'\n }\n size={'sm'}\n onClick={() => {\n setSelectedCredit(credit)\n }}\n >\n {credit}\n </Button>\n ))}\n </div>\n {isRequestAction && (\n <div className=\"flex flex-col mt-4\">\n <Typography className=\"text-sm font-medium mb-1 text-light-2\">\n Phone Number *\n </Typography>\n <Input\n id=\"phoneNumber\"\n type=\"tel\"\n value={phoneNumber}\n onChange={handlePhoneChange}\n className=\"h-10\"\n placeholder=\"Enter phone number\"\n maxLength={13}\n isError={!!phoneError}\n message={phoneError}\n />\n </div>\n )}\n </div>\n </div>\n }\n footer={\n <div className=\"flex w-full gap-2 justify-evenly\">\n <Button variant=\"secondary\" onClick={reset} title={'Cancel'} />\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 mr-2 md:mr-0\"\n />\n }\n title={buttonText}\n onClick={handleSubmit}\n />\n </div>\n }\n />\n )\n}\n"],"names":["Credits","RequestCreditsDialog","open","onClose","onRequestCredits","onProceedToPayment","selectedCredit","setSelectedCredit","useState","phoneNumber","setPhoneNumber","phoneError","setPhoneError","validatePhone","phone","numberOnly","isRequestAction","handlePhoneChange","e","value","handleSubmit","error","credit","reset","useEffect","buttonText","React","Dialog","Typography","Button","Input"],"mappings":"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"}