geoiq-frontend-ui-kit 1.7.7 → 1.7.9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/components/organisms/navbar/navbar-extended.d.ts.map +1 -1
- package/dist/components/ui/report-snippet-view/report-snippet-view.d.ts.map +1 -1
- package/dist/components/ui/report-snippet-view/report-snippet-view.types.d.ts +4 -0
- package/dist/components/ui/report-snippet-view/report-snippet-view.types.d.ts.map +1 -1
- package/dist/index.es100.js +9 -86
- package/dist/index.es100.js.map +1 -1
- package/dist/index.es101.js +32 -9
- package/dist/index.es101.js.map +1 -1
- package/dist/index.es102.js +270 -19
- package/dist/index.es102.js.map +1 -1
- package/dist/index.es103.js +71 -20
- package/dist/index.es103.js.map +1 -1
- package/dist/index.es104.js +32 -44
- package/dist/index.es104.js.map +1 -1
- package/dist/index.es105.js +62 -33
- package/dist/index.es105.js.map +1 -1
- package/dist/index.es106.js +21 -18
- package/dist/index.es106.js.map +1 -1
- package/dist/index.es107.js +45 -16
- package/dist/index.es107.js.map +1 -1
- package/dist/index.es108.js +42 -12
- package/dist/index.es108.js.map +1 -1
- package/dist/index.es109.js +37 -98
- package/dist/index.es109.js.map +1 -1
- package/dist/index.es11.js +1 -1
- package/dist/index.es110.js +24 -63
- package/dist/index.es110.js.map +1 -1
- package/dist/index.es111.js +8 -54
- package/dist/index.es111.js.map +1 -1
- package/dist/index.es112.js +67 -10
- package/dist/index.es112.js.map +1 -1
- package/dist/index.es113.js +183 -47
- package/dist/index.es113.js.map +1 -1
- package/dist/index.es114.js +23 -37
- package/dist/index.es114.js.map +1 -1
- package/dist/index.es115.js +176 -13
- package/dist/index.es115.js.map +1 -1
- package/dist/index.es116.js +31 -30
- package/dist/index.es116.js.map +1 -1
- package/dist/index.es117.js +18 -61
- package/dist/index.es117.js.map +1 -1
- package/dist/index.es118.js +20 -25
- package/dist/index.es118.js.map +1 -1
- package/dist/index.es119.js +10 -7
- package/dist/index.es119.js.map +1 -1
- package/dist/index.es12.js +1 -1
- package/dist/index.es120.js +94 -64
- package/dist/index.es120.js.map +1 -1
- package/dist/index.es121.js +58 -179
- package/dist/index.es121.js.map +1 -1
- package/dist/index.es122.js +55 -23
- package/dist/index.es122.js.map +1 -1
- package/dist/index.es123.js +43 -177
- package/dist/index.es123.js.map +1 -1
- package/dist/index.es124.js +181 -22
- package/dist/index.es124.js.map +1 -1
- package/dist/index.es125.js +21 -12
- package/dist/index.es125.js.map +1 -1
- package/dist/index.es126.js +10 -42
- package/dist/index.es126.js.map +1 -1
- package/dist/index.es127.js +12 -21
- package/dist/index.es127.js.map +1 -1
- package/dist/index.es128.js +5 -12
- package/dist/index.es128.js.map +1 -1
- package/dist/index.es129.js +11 -5
- package/dist/index.es129.js.map +1 -1
- package/dist/index.es130.js +10 -10
- package/dist/index.es130.js.map +1 -1
- package/dist/index.es131.js +2 -11
- package/dist/index.es131.js.map +1 -1
- package/dist/index.es132.js +44 -2
- package/dist/index.es132.js.map +1 -1
- package/dist/index.es135.js +2 -2
- package/dist/index.es136.js +1 -1
- package/dist/index.es137.js +1 -1
- package/dist/index.es138.js +1 -1
- package/dist/index.es139.js +1 -1
- package/dist/index.es140.js +1 -1
- package/dist/index.es141.js +1 -1
- package/dist/index.es142.js +1 -1
- package/dist/index.es16.js +1 -1
- package/dist/index.es19.js +1 -1
- package/dist/index.es20.js +1 -1
- package/dist/index.es21.js +3 -3
- package/dist/index.es22.js +1 -1
- package/dist/index.es25.js +1 -1
- package/dist/index.es27.js +1 -1
- package/dist/index.es29.js +1 -1
- package/dist/index.es31.js +1 -1
- package/dist/index.es32.js +1 -1
- package/dist/index.es42.js +2 -2
- package/dist/index.es43.js +1 -1
- package/dist/index.es44.js +106 -81
- package/dist/index.es44.js.map +1 -1
- package/dist/index.es49.js +37 -35
- package/dist/index.es49.js.map +1 -1
- package/dist/index.es50.js +1 -1
- package/dist/index.es51.js +1 -1
- package/dist/index.es53.js +1 -1
- package/dist/index.es61.js +2 -2
- package/dist/index.es62.js +1 -1
- package/dist/index.es64.js +5 -5
- package/dist/index.es65.js +1 -1
- package/dist/index.es66.js +7 -7
- package/dist/index.es73.js +1 -1
- package/dist/index.es90.js +12 -41
- package/dist/index.es90.js.map +1 -1
- package/dist/index.es91.js +86 -12
- package/dist/index.es91.js.map +1 -1
- package/dist/index.es92.js +86 -85
- package/dist/index.es92.js.map +1 -1
- package/dist/index.es93.js +120 -179
- package/dist/index.es93.js.map +1 -1
- package/dist/index.es94.js +13 -39
- package/dist/index.es94.js.map +1 -1
- package/dist/index.es95.js +33 -28
- package/dist/index.es95.js.map +1 -1
- package/dist/index.es96.js +4 -4
- package/dist/index.es96.js.map +1 -1
- package/dist/index.es97.js +19 -270
- package/dist/index.es97.js.map +1 -1
- package/dist/index.es98.js +12 -120
- package/dist/index.es98.js.map +1 -1
- package/dist/index.es99.js +22 -74
- package/dist/index.es99.js.map +1 -1
- package/dist/styles.css +3 -0
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"navbar-extended.d.ts","sourceRoot":"","sources":["../../../../src/components/organisms/navbar/navbar-extended.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAmB,MAAM,OAAO,CAAA;AACvC,OAAO,EAAE,mBAAmB,EAAqB,MAAM,gBAAgB,CAAA;
|
|
1
|
+
{"version":3,"file":"navbar-extended.d.ts","sourceRoot":"","sources":["../../../../src/components/organisms/navbar/navbar-extended.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAmB,MAAM,OAAO,CAAA;AACvC,OAAO,EAAE,mBAAmB,EAAqB,MAAM,gBAAgB,CAAA;AAmQvE,eAAO,MAAM,cAAc,EAAE,KAAK,CAAC,EAAE,CAAC,mBAAmB,CA8JxD,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"report-snippet-view.d.ts","sourceRoot":"","sources":["../../../../src/components/ui/report-snippet-view/report-snippet-view.tsx"],"names":[],"mappings":"AAAA,OAAc,EAAE,EAAE,EAAiB,MAAM,OAAO,CAAA;AAChD,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAA;AAejE,QAAA,MAAM,iBAAiB,EAAE,EAAE,CAAC,mBAAmB,CAAC,sBAAsB,
|
|
1
|
+
{"version":3,"file":"report-snippet-view.d.ts","sourceRoot":"","sources":["../../../../src/components/ui/report-snippet-view/report-snippet-view.tsx"],"names":[],"mappings":"AAAA,OAAc,EAAE,EAAE,EAAiB,MAAM,OAAO,CAAA;AAChD,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAA;AAejE,QAAA,MAAM,iBAAiB,EAAE,EAAE,CAAC,mBAAmB,CAAC,sBAAsB,CAkUrE,CAAA;AAED,eAAe,iBAAiB,CAAA"}
|
|
@@ -48,6 +48,10 @@ export declare namespace ReportSnippetViewNS {
|
|
|
48
48
|
catchmentInsights?: CatchmentInsights[];
|
|
49
49
|
footfallChartData?: FootfallChartData[];
|
|
50
50
|
cannibalisationChartData?: CannibalisationChartData[];
|
|
51
|
+
/** Optional section rendered above Location Highlights (e.g. financial projections, coordinates) */
|
|
52
|
+
customModelSection?: React.ReactNode;
|
|
53
|
+
/** Optional custom section rendered at the very end (after all sections) to show anything extra */
|
|
54
|
+
customSection?: React.ReactNode;
|
|
51
55
|
};
|
|
52
56
|
}
|
|
53
57
|
//# sourceMappingURL=report-snippet-view.types.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"report-snippet-view.types.d.ts","sourceRoot":"","sources":["../../../../src/components/ui/report-snippet-view/report-snippet-view.types.ts"],"names":[],"mappings":"AACA,yBAAiB,mBAAmB,CAAC;IACnC,KAAY,eAAe,GAAG;QAC5B,SAAS,EAAE,MAAM,CAAA;QACjB,SAAS,EAAE,MAAM,CAAA;KAClB,CAAA;IACD,KAAY,cAAc,GAAG,eAAe,EAAE,GAAG,IAAI,CAAA;IACrD,KAAY,KAAK,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAA;IAE9B,KAAY,iBAAiB,GAAG;QAC9B,IAAI,EAAE,YAAY,GAAG,eAAe,CAAA;QACpC,KAAK,EAAE,MAAM,CAAA;QACb,OAAO,EAAE,MAAM,CAAA;KAChB,CAAA;IACD,KAAY,eAAe,GAAG;QAC5B,IAAI,CAAC,EAAE,MAAM,CAAA;QACb,KAAK,CAAC,EAAE,KAAK,GAAG,IAAI,CAAA;QACpB,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;KACtB,CAAA;IAED,KAAY,iBAAiB,GAAG;QAC9B,KAAK,EAAE,MAAM,CAAA;QACb,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAA;QACvB,IAAI,EAAE,MAAM,CAAA;KACb,CAAA;IACD,KAAY,wBAAwB,GAAG;QACrC,UAAU,EAAE,MAAM,CAAA;QAClB,eAAe,EAAE,MAAM,GAAG,IAAI,CAAA;QAC9B,QAAQ,EAAE,MAAM,CAAA;KACjB,CAAA;IAED,KAAY,sBAAsB,GAAG;QACnC,KAAK,CAAC,EAAE,MAAM,CAAA;QACd,QAAQ,CAAC,EAAE,MAAM,CAAA;QACjB,UAAU,CAAC,EAAE;YACX,IAAI,EAAE,MAAM,CAAA;YACZ,OAAO,EACH,SAAS,GACT,SAAS,GACT,QAAQ,GACR,QAAQ,GACR,SAAS,GACT,UAAU,GACV,SAAS,CAAA;SACd,EAAE,CAAA;QACH,WAAW,CAAC,EAAE,MAAM,CAAA;QACpB,KAAK,CAAC,EAAE;YAEN,KAAK,EAAE,MAAM,GAAG,IAAI,CAAA;YAEpB,SAAS,CAAC,EAAE,OAAO,CAAA;SACpB,CAAA;QACD,GAAG,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;QAEnB,SAAS,CAAC,EAAE,OAAO,CAAA;QACnB,cAAc,CAAC,EAAE,cAAc,CAAA;QAC/B,qBAAqB,CAAC,EAAE,MAAM,IAAI,CAAA;QAClC,uBAAuB,CAAC,EAAE,OAAO,CAAA;QACjC,GAAG,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;QACrB,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;QAC1B,eAAe,CAAC,EAAE,eAAe,EAAE,CAAA;QACnC,iBAAiB,CAAC,EAAE,iBAAiB,EAAE,CAAA;QACvC,iBAAiB,CAAC,EAAE,iBAAiB,EAAE,CAAA;QACvC,wBAAwB,CAAC,EAAE,wBAAwB,EAAE,CAAA;
|
|
1
|
+
{"version":3,"file":"report-snippet-view.types.d.ts","sourceRoot":"","sources":["../../../../src/components/ui/report-snippet-view/report-snippet-view.types.ts"],"names":[],"mappings":"AACA,yBAAiB,mBAAmB,CAAC;IACnC,KAAY,eAAe,GAAG;QAC5B,SAAS,EAAE,MAAM,CAAA;QACjB,SAAS,EAAE,MAAM,CAAA;KAClB,CAAA;IACD,KAAY,cAAc,GAAG,eAAe,EAAE,GAAG,IAAI,CAAA;IACrD,KAAY,KAAK,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAA;IAE9B,KAAY,iBAAiB,GAAG;QAC9B,IAAI,EAAE,YAAY,GAAG,eAAe,CAAA;QACpC,KAAK,EAAE,MAAM,CAAA;QACb,OAAO,EAAE,MAAM,CAAA;KAChB,CAAA;IACD,KAAY,eAAe,GAAG;QAC5B,IAAI,CAAC,EAAE,MAAM,CAAA;QACb,KAAK,CAAC,EAAE,KAAK,GAAG,IAAI,CAAA;QACpB,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;KACtB,CAAA;IAED,KAAY,iBAAiB,GAAG;QAC9B,KAAK,EAAE,MAAM,CAAA;QACb,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAA;QACvB,IAAI,EAAE,MAAM,CAAA;KACb,CAAA;IACD,KAAY,wBAAwB,GAAG;QACrC,UAAU,EAAE,MAAM,CAAA;QAClB,eAAe,EAAE,MAAM,GAAG,IAAI,CAAA;QAC9B,QAAQ,EAAE,MAAM,CAAA;KACjB,CAAA;IAED,KAAY,sBAAsB,GAAG;QACnC,KAAK,CAAC,EAAE,MAAM,CAAA;QACd,QAAQ,CAAC,EAAE,MAAM,CAAA;QACjB,UAAU,CAAC,EAAE;YACX,IAAI,EAAE,MAAM,CAAA;YACZ,OAAO,EACH,SAAS,GACT,SAAS,GACT,QAAQ,GACR,QAAQ,GACR,SAAS,GACT,UAAU,GACV,SAAS,CAAA;SACd,EAAE,CAAA;QACH,WAAW,CAAC,EAAE,MAAM,CAAA;QACpB,KAAK,CAAC,EAAE;YAEN,KAAK,EAAE,MAAM,GAAG,IAAI,CAAA;YAEpB,SAAS,CAAC,EAAE,OAAO,CAAA;SACpB,CAAA;QACD,GAAG,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;QAEnB,SAAS,CAAC,EAAE,OAAO,CAAA;QACnB,cAAc,CAAC,EAAE,cAAc,CAAA;QAC/B,qBAAqB,CAAC,EAAE,MAAM,IAAI,CAAA;QAClC,uBAAuB,CAAC,EAAE,OAAO,CAAA;QACjC,GAAG,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;QACrB,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;QAC1B,eAAe,CAAC,EAAE,eAAe,EAAE,CAAA;QACnC,iBAAiB,CAAC,EAAE,iBAAiB,EAAE,CAAA;QACvC,iBAAiB,CAAC,EAAE,iBAAiB,EAAE,CAAA;QACvC,wBAAwB,CAAC,EAAE,wBAAwB,EAAE,CAAA;QACrD,oGAAoG;QACpG,kBAAkB,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;QACpC,mGAAmG;QACnG,aAAa,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;KAEhC,CAAA;CACF"}
|
package/dist/index.es100.js
CHANGED
|
@@ -1,91 +1,14 @@
|
|
|
1
|
-
import
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
{
|
|
10
|
-
ref: t,
|
|
11
|
-
className: m(
|
|
12
|
-
"flex flex-wrap items-center gap-1.5 break-words text-sm text-muted-foreground sm:gap-2.5",
|
|
13
|
-
r
|
|
14
|
-
),
|
|
15
|
-
...a
|
|
16
|
-
}
|
|
17
|
-
));
|
|
18
|
-
d.displayName = "BreadcrumbList";
|
|
19
|
-
const p = e.forwardRef(({ className: r, ...a }, t) => /* @__PURE__ */ e.createElement(
|
|
20
|
-
"li",
|
|
21
|
-
{
|
|
22
|
-
ref: t,
|
|
23
|
-
className: m("inline-flex items-center gap-1.5", r),
|
|
24
|
-
...a
|
|
25
|
-
}
|
|
26
|
-
));
|
|
27
|
-
p.displayName = "BreadcrumbItem";
|
|
28
|
-
const u = e.forwardRef(({ asChild: r, className: a, ...t }, s) => {
|
|
29
|
-
const n = r ? o : "a";
|
|
30
|
-
return /* @__PURE__ */ e.createElement(
|
|
31
|
-
n,
|
|
32
|
-
{
|
|
33
|
-
ref: s,
|
|
34
|
-
className: m("transition-colors hover:text-foreground", a),
|
|
35
|
-
...t
|
|
36
|
-
}
|
|
37
|
-
);
|
|
38
|
-
});
|
|
39
|
-
u.displayName = "BreadcrumbLink";
|
|
40
|
-
const f = e.forwardRef(({ className: r, ...a }, t) => /* @__PURE__ */ e.createElement(
|
|
41
|
-
"span",
|
|
42
|
-
{
|
|
43
|
-
ref: t,
|
|
44
|
-
role: "link",
|
|
45
|
-
"aria-disabled": "true",
|
|
46
|
-
"aria-current": "page",
|
|
47
|
-
className: m("font-normal text-foreground", r),
|
|
48
|
-
...a
|
|
1
|
+
import { cva as e } from "class-variance-authority";
|
|
2
|
+
const a = e(
|
|
3
|
+
"relative flex w-60 touch-none select-none items-center",
|
|
4
|
+
{
|
|
5
|
+
variants: {
|
|
6
|
+
variant: {}
|
|
7
|
+
},
|
|
8
|
+
defaultVariants: {}
|
|
49
9
|
}
|
|
50
|
-
));
|
|
51
|
-
f.displayName = "BreadcrumbPage";
|
|
52
|
-
const b = ({
|
|
53
|
-
children: r,
|
|
54
|
-
className: a,
|
|
55
|
-
...t
|
|
56
|
-
}) => /* @__PURE__ */ e.createElement(
|
|
57
|
-
"li",
|
|
58
|
-
{
|
|
59
|
-
role: "presentation",
|
|
60
|
-
"aria-hidden": "true",
|
|
61
|
-
className: m("[&>svg]:size-3.5", a),
|
|
62
|
-
...t
|
|
63
|
-
},
|
|
64
|
-
r ?? /* @__PURE__ */ e.createElement(l, null)
|
|
65
|
-
);
|
|
66
|
-
b.displayName = "BreadcrumbSeparator";
|
|
67
|
-
const N = ({
|
|
68
|
-
className: r,
|
|
69
|
-
...a
|
|
70
|
-
}) => /* @__PURE__ */ e.createElement(
|
|
71
|
-
"span",
|
|
72
|
-
{
|
|
73
|
-
role: "presentation",
|
|
74
|
-
"aria-hidden": "true",
|
|
75
|
-
className: m("flex h-9 w-9 items-center justify-center", r),
|
|
76
|
-
...a
|
|
77
|
-
},
|
|
78
|
-
/* @__PURE__ */ e.createElement(c, { className: "h-4 w-4" }),
|
|
79
|
-
/* @__PURE__ */ e.createElement("span", { className: "sr-only" }, "More")
|
|
80
10
|
);
|
|
81
|
-
N.displayName = "BreadcrumbElipssis";
|
|
82
11
|
export {
|
|
83
|
-
|
|
84
|
-
N as BreadcrumbEllipsis,
|
|
85
|
-
p as BreadcrumbItem,
|
|
86
|
-
u as BreadcrumbLink,
|
|
87
|
-
d as BreadcrumbList,
|
|
88
|
-
f as BreadcrumbPage,
|
|
89
|
-
b as BreadcrumbSeparator
|
|
12
|
+
a as SliderVariants
|
|
90
13
|
};
|
|
91
14
|
//# sourceMappingURL=index.es100.js.map
|
package/dist/index.es100.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.es100.js","sources":["../src/components/molecules/
|
|
1
|
+
{"version":3,"file":"index.es100.js","sources":["../src/components/molecules/slider/slider.styles.ts"],"sourcesContent":["import { cva } from 'class-variance-authority'\n\nexport const SliderVariants = cva(\n 'relative flex w-60 touch-none select-none items-center',\n {\n variants: {\n variant: {},\n },\n defaultVariants: {},\n }\n)\n"],"names":["SliderVariants","cva"],"mappings":";AAEO,MAAMA,IAAiBC;AAAA,EAC5B;AAAA,EACA;AAAA,IACE,UAAU;AAAA,MACR,SAAS,CAAA;AAAA,IAAC;AAAA,IAEZ,iBAAiB,CAAA;AAAA,EAAC;AAEtB;"}
|
package/dist/index.es101.js
CHANGED
|
@@ -1,20 +1,43 @@
|
|
|
1
1
|
import { cva as t } from "class-variance-authority";
|
|
2
|
-
const
|
|
3
|
-
"
|
|
2
|
+
const e = t(
|
|
3
|
+
"inline-flex items-center justify-evenly p-1 text-muted-foreground",
|
|
4
4
|
{
|
|
5
5
|
variants: {
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
6
|
+
variant: {
|
|
7
|
+
primary: "bg-light-3 border rounded-xl border-neutral-1",
|
|
8
|
+
secondary: "bg-background "
|
|
9
9
|
},
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
10
|
+
size: {
|
|
11
|
+
sm: "h-10 rounded-xl ",
|
|
12
|
+
md: "h-12 rounded-xl "
|
|
13
13
|
}
|
|
14
|
+
},
|
|
15
|
+
defaultVariants: {
|
|
16
|
+
variant: "primary",
|
|
17
|
+
size: "md"
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
), i = t(
|
|
21
|
+
"inline-flex w-full items-center justify-center whitespace-nowrap text-sm text-light-2 font-medium disabled:pointer-events-none disabled:opacity-50 ring-offset-background transition-all focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring ",
|
|
22
|
+
{
|
|
23
|
+
variants: {
|
|
24
|
+
size: {
|
|
25
|
+
sm: "h-8 text-[14px] p-1.5 ",
|
|
26
|
+
md: "h-10 text-[16px] p-2 "
|
|
27
|
+
},
|
|
28
|
+
variant: {
|
|
29
|
+
primary: "rounded-lg data-[state=active]:bg-rest-s1 data-[state=active]:text-primary-1 data-[state=active]:border data-[state=active]:border-neutral-1 data-[state=active]:font-semibold data-[state=active]:shadow-sm ",
|
|
30
|
+
secondary: "data-[state=active]:bg-background data-[state=active]:text-primary-1 data-[state=active]:font-semibold data-[state=active]:border-b-2 data-[state=active]:border-primary-2 "
|
|
31
|
+
}
|
|
32
|
+
},
|
|
33
|
+
defaultVariants: {
|
|
34
|
+
variant: "primary",
|
|
35
|
+
size: "md"
|
|
14
36
|
}
|
|
15
37
|
}
|
|
16
38
|
);
|
|
17
39
|
export {
|
|
18
|
-
|
|
40
|
+
i as TabTriggerVariants,
|
|
41
|
+
e as TabsVariants
|
|
19
42
|
};
|
|
20
43
|
//# sourceMappingURL=index.es101.js.map
|
package/dist/index.es101.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.es101.js","sources":["../src/components/molecules/
|
|
1
|
+
{"version":3,"file":"index.es101.js","sources":["../src/components/molecules/tabs/tabs.styles.ts"],"sourcesContent":["import { cva } from 'class-variance-authority'\n\nexport const TabsVariants = cva(\n 'inline-flex items-center justify-evenly p-1 text-muted-foreground',\n {\n variants: {\n variant: {\n primary: 'bg-light-3 border rounded-xl border-neutral-1',\n secondary: 'bg-background ',\n },\n size: {\n sm: 'h-10 rounded-xl ',\n md: 'h-12 rounded-xl ',\n },\n },\n defaultVariants: {\n variant: 'primary',\n size: 'md',\n },\n }\n)\n\nexport const TabTriggerVariants = cva(\n 'inline-flex w-full items-center justify-center whitespace-nowrap text-sm text-light-2 font-medium disabled:pointer-events-none disabled:opacity-50 ring-offset-background transition-all focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring ',\n {\n variants: {\n size: {\n sm: 'h-8 text-[14px] p-1.5 ',\n md: 'h-10 text-[16px] p-2 ',\n },\n variant: {\n primary:\n 'rounded-lg data-[state=active]:bg-rest-s1 data-[state=active]:text-primary-1 data-[state=active]:border data-[state=active]:border-neutral-1 data-[state=active]:font-semibold data-[state=active]:shadow-sm ',\n secondary:\n 'data-[state=active]:bg-background data-[state=active]:text-primary-1 data-[state=active]:font-semibold data-[state=active]:border-b-2 data-[state=active]:border-primary-2 ',\n },\n },\n defaultVariants: {\n variant: 'primary',\n size: 'md',\n },\n }\n)\n"],"names":["TabsVariants","cva","TabTriggerVariants"],"mappings":";AAEO,MAAMA,IAAeC;AAAA,EAC1B;AAAA,EACA;AAAA,IACE,UAAU;AAAA,MACR,SAAS;AAAA,QACP,SAAS;AAAA,QACT,WAAW;AAAA,MAAA;AAAA,MAEb,MAAM;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,MAAA;AAAA,IACN;AAAA,IAEF,iBAAiB;AAAA,MACf,SAAS;AAAA,MACT,MAAM;AAAA,IAAA;AAAA,EACR;AAEJ,GAEaC,IAAqBD;AAAA,EAChC;AAAA,EACA;AAAA,IACE,UAAU;AAAA,MACR,MAAM;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,MAAA;AAAA,MAEN,SAAS;AAAA,QACP,SACE;AAAA,QACF,WACE;AAAA,MAAA;AAAA,IACJ;AAAA,IAEF,iBAAiB;AAAA,MACf,SAAS;AAAA,MACT,MAAM;AAAA,IAAA;AAAA,EACR;AAEJ;"}
|
package/dist/index.es102.js
CHANGED
|
@@ -1,25 +1,276 @@
|
|
|
1
|
-
import
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
1
|
+
import e from "react";
|
|
2
|
+
import { _Dialog as v } from "./index.es39.js";
|
|
3
|
+
import { X as N, ChevronLeft as w, ChevronRight as S } from "lucide-react";
|
|
4
|
+
import { Typography as i } from "./index.es19.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.es125.js";
|
|
7
|
+
const O = ({
|
|
8
|
+
data: r,
|
|
9
|
+
onToggle: t,
|
|
10
|
+
isOpen: n,
|
|
11
|
+
galleryActiveIndex: a,
|
|
12
|
+
setgalleryActiveIndex: l
|
|
13
|
+
}) => {
|
|
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();
|
|
24
|
+
};
|
|
25
|
+
return /* @__PURE__ */ e.createElement(
|
|
26
|
+
v,
|
|
27
|
+
{
|
|
28
|
+
open: n,
|
|
29
|
+
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,
|
|
34
|
+
{
|
|
35
|
+
size: 24,
|
|
36
|
+
color: "white",
|
|
37
|
+
className: "absolute z-50 cursor-pointer -right-10 -top-10",
|
|
38
|
+
onClick: m
|
|
39
|
+
}
|
|
40
|
+
), /* @__PURE__ */ e.createElement("div", { className: "relative" }, /* @__PURE__ */ e.createElement("div", { className: "relative " }, o && /* @__PURE__ */ e.createElement(
|
|
41
|
+
"img",
|
|
42
|
+
{
|
|
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"
|
|
47
|
+
}
|
|
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",
|
|
50
|
+
{
|
|
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`
|
|
56
|
+
}
|
|
57
|
+
))))
|
|
58
|
+
}
|
|
59
|
+
);
|
|
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"
|
|
12
80
|
},
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
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
|
+
}
|
|
16
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
|
|
17
211
|
},
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
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
|
+
};
|
|
22
269
|
export {
|
|
23
|
-
|
|
270
|
+
R as CannibalisationChartSection,
|
|
271
|
+
I as FootfallChartSection,
|
|
272
|
+
O as ReportSnippetGalleryView,
|
|
273
|
+
D as StoreInsightsSection,
|
|
274
|
+
K as StoreOverviewSection
|
|
24
275
|
};
|
|
25
276
|
//# sourceMappingURL=index.es102.js.map
|
package/dist/index.es102.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.es102.js","sources":["../src/components/atoms/textarea/textarea.styles.ts"],"sourcesContent":["import { cva } from 'class-variance-authority'\n\nexport const TextAreaVariants = cva(\n ` border flex items-center justify-between gap-1.5 relative mt-1.5 rounded-lg \n text-light-1 px-3 py-2\n file:border-0 file:bg-transparent\n placeholder:font-normal placeholder:text-light-4`,\n {\n variants: {\n isFocused: {\n true: 'border-primary-2 ring-4 ring-primary-1',\n false: 'border-light-2',\n },\n disabled: {\n true: 'bg-light-3 border-neutral-2 cursor-not-allowed',\n false: '',\n },\n },\n defaultVariants: {},\n compoundVariants: [],\n }\n)\n"],"names":["TextAreaVariants","cva"],"mappings":";AAEO,MAAMA,IAAmBC;AAAA,EAC9B;AAAA;AAAA;AAAA;AAAA,EAIA;AAAA,IACE,UAAU;AAAA,MACR,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,CAAA;AAAA,IACjB,kBAAkB,CAAA;AAAA,EAAC;AAEvB;"}
|
|
1
|
+
{"version":3,"file":"index.es102.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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"}
|