@fluid-app/rep-widgets 0.1.0

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 (228) hide show
  1. package/dist/AlertWidget-2JHMNYIY.js +5 -0
  2. package/dist/AlertWidget-2JHMNYIY.js.map +1 -0
  3. package/dist/AlertWidget-VHXWOKM4.cjs +18 -0
  4. package/dist/AlertWidget-VHXWOKM4.cjs.map +1 -0
  5. package/dist/CalendarWidget-AQ7PVNSI.cjs +18 -0
  6. package/dist/CalendarWidget-AQ7PVNSI.cjs.map +1 -0
  7. package/dist/CalendarWidget-E54LNKCG.js +5 -0
  8. package/dist/CalendarWidget-E54LNKCG.js.map +1 -0
  9. package/dist/CarouselWidget-IPPFSXDZ.js +8 -0
  10. package/dist/CarouselWidget-IPPFSXDZ.js.map +1 -0
  11. package/dist/CarouselWidget-ZG6LJJXG.cjs +21 -0
  12. package/dist/CarouselWidget-ZG6LJJXG.cjs.map +1 -0
  13. package/dist/CatchUpWidget-CSSQMPPA.cjs +18 -0
  14. package/dist/CatchUpWidget-CSSQMPPA.cjs.map +1 -0
  15. package/dist/CatchUpWidget-HYJRKFN3.js +5 -0
  16. package/dist/CatchUpWidget-HYJRKFN3.js.map +1 -0
  17. package/dist/ChartWidget-MBLGRSJQ.cjs +19 -0
  18. package/dist/ChartWidget-MBLGRSJQ.cjs.map +1 -0
  19. package/dist/ChartWidget-OL5DRMGA.js +6 -0
  20. package/dist/ChartWidget-OL5DRMGA.js.map +1 -0
  21. package/dist/ContainerWidget-DETCLP52.js +8 -0
  22. package/dist/ContainerWidget-DETCLP52.js.map +1 -0
  23. package/dist/ContainerWidget-XQDJSJXO.cjs +21 -0
  24. package/dist/ContainerWidget-XQDJSJXO.cjs.map +1 -0
  25. package/dist/EmbedWidget-HTR2MJ25.cjs +16 -0
  26. package/dist/EmbedWidget-HTR2MJ25.cjs.map +1 -0
  27. package/dist/EmbedWidget-O2XFGDJS.js +3 -0
  28. package/dist/EmbedWidget-O2XFGDJS.js.map +1 -0
  29. package/dist/ImageWidget-L2MIYWTE.cjs +17 -0
  30. package/dist/ImageWidget-L2MIYWTE.cjs.map +1 -0
  31. package/dist/ImageWidget-RF6XKPPV.js +4 -0
  32. package/dist/ImageWidget-RF6XKPPV.js.map +1 -0
  33. package/dist/LayoutWidget-4XISA6RO.cjs +20 -0
  34. package/dist/LayoutWidget-4XISA6RO.cjs.map +1 -0
  35. package/dist/LayoutWidget-WZSMZLLM.js +7 -0
  36. package/dist/LayoutWidget-WZSMZLLM.js.map +1 -0
  37. package/dist/ListWidget-XY5C3P3C.cjs +19 -0
  38. package/dist/ListWidget-XY5C3P3C.cjs.map +1 -0
  39. package/dist/ListWidget-ZFRV6DKI.js +6 -0
  40. package/dist/ListWidget-ZFRV6DKI.js.map +1 -0
  41. package/dist/MySiteWidget-75NJUIWV.js +5 -0
  42. package/dist/MySiteWidget-75NJUIWV.js.map +1 -0
  43. package/dist/MySiteWidget-CBDKQT35.cjs +18 -0
  44. package/dist/MySiteWidget-CBDKQT35.cjs.map +1 -0
  45. package/dist/NestedWidget-N4I7LOVX.js +6 -0
  46. package/dist/NestedWidget-N4I7LOVX.js.map +1 -0
  47. package/dist/NestedWidget-VO3YYOOH.cjs +19 -0
  48. package/dist/NestedWidget-VO3YYOOH.cjs.map +1 -0
  49. package/dist/QuickShareWidget-3VGSFY4J.js +4 -0
  50. package/dist/QuickShareWidget-3VGSFY4J.js.map +1 -0
  51. package/dist/QuickShareWidget-VHDB5SYT.cjs +17 -0
  52. package/dist/QuickShareWidget-VHDB5SYT.cjs.map +1 -0
  53. package/dist/RecentActivityWidget-3KAR64SB.js +5 -0
  54. package/dist/RecentActivityWidget-3KAR64SB.js.map +1 -0
  55. package/dist/RecentActivityWidget-X5UABJHL.cjs +18 -0
  56. package/dist/RecentActivityWidget-X5UABJHL.cjs.map +1 -0
  57. package/dist/SpacerWidget-K7CXVECO.cjs +16 -0
  58. package/dist/SpacerWidget-K7CXVECO.cjs.map +1 -0
  59. package/dist/SpacerWidget-ODKNZAND.js +3 -0
  60. package/dist/SpacerWidget-ODKNZAND.js.map +1 -0
  61. package/dist/TableWidget-MDEBHVIA.cjs +20 -0
  62. package/dist/TableWidget-MDEBHVIA.cjs.map +1 -0
  63. package/dist/TableWidget-W6LL5FLE.js +7 -0
  64. package/dist/TableWidget-W6LL5FLE.js.map +1 -0
  65. package/dist/TextWidget-D72TL53O.js +4 -0
  66. package/dist/TextWidget-D72TL53O.js.map +1 -0
  67. package/dist/TextWidget-DYINWJGB.cjs +17 -0
  68. package/dist/TextWidget-DYINWJGB.cjs.map +1 -0
  69. package/dist/ToDoWidget-DH544SJH.cjs +18 -0
  70. package/dist/ToDoWidget-DH544SJH.cjs.map +1 -0
  71. package/dist/ToDoWidget-LCAYWRVH.js +5 -0
  72. package/dist/ToDoWidget-LCAYWRVH.js.map +1 -0
  73. package/dist/VideoWidget-VHAZTNLI.js +4 -0
  74. package/dist/VideoWidget-VHAZTNLI.js.map +1 -0
  75. package/dist/VideoWidget-YLRKZ27S.cjs +17 -0
  76. package/dist/VideoWidget-YLRKZ27S.cjs.map +1 -0
  77. package/dist/chunk-2KQFMF6L.js +413 -0
  78. package/dist/chunk-2KQFMF6L.js.map +1 -0
  79. package/dist/chunk-3CUVGQQI.cjs +15 -0
  80. package/dist/chunk-3CUVGQQI.cjs.map +1 -0
  81. package/dist/chunk-3RV7AYQZ.js +149 -0
  82. package/dist/chunk-3RV7AYQZ.js.map +1 -0
  83. package/dist/chunk-4M2A5W2D.cjs +42 -0
  84. package/dist/chunk-4M2A5W2D.cjs.map +1 -0
  85. package/dist/chunk-4XJCU4HY.js +248 -0
  86. package/dist/chunk-4XJCU4HY.js.map +1 -0
  87. package/dist/chunk-5HHN5MRZ.js +11 -0
  88. package/dist/chunk-5HHN5MRZ.js.map +1 -0
  89. package/dist/chunk-6GF46P3S.js +33 -0
  90. package/dist/chunk-6GF46P3S.js.map +1 -0
  91. package/dist/chunk-7JIRJTGY.js +32 -0
  92. package/dist/chunk-7JIRJTGY.js.map +1 -0
  93. package/dist/chunk-7XWMJDFE.js +443 -0
  94. package/dist/chunk-7XWMJDFE.js.map +1 -0
  95. package/dist/chunk-C7A3OMIF.cjs +446 -0
  96. package/dist/chunk-C7A3OMIF.cjs.map +1 -0
  97. package/dist/chunk-CEZOXMO6.js +377 -0
  98. package/dist/chunk-CEZOXMO6.js.map +1 -0
  99. package/dist/chunk-CM7D7WGL.cjs +36 -0
  100. package/dist/chunk-CM7D7WGL.cjs.map +1 -0
  101. package/dist/chunk-D4ULCQ42.cjs +353 -0
  102. package/dist/chunk-D4ULCQ42.cjs.map +1 -0
  103. package/dist/chunk-DKGP3DTX.cjs +389 -0
  104. package/dist/chunk-DKGP3DTX.cjs.map +1 -0
  105. package/dist/chunk-DM2JDG3D.js +318 -0
  106. package/dist/chunk-DM2JDG3D.js.map +1 -0
  107. package/dist/chunk-DW6V4ZCT.cjs +140 -0
  108. package/dist/chunk-DW6V4ZCT.cjs.map +1 -0
  109. package/dist/chunk-E4MY6TUE.cjs +255 -0
  110. package/dist/chunk-E4MY6TUE.cjs.map +1 -0
  111. package/dist/chunk-EHSWARYY.js +39 -0
  112. package/dist/chunk-EHSWARYY.js.map +1 -0
  113. package/dist/chunk-EUOP3MWJ.cjs +118 -0
  114. package/dist/chunk-EUOP3MWJ.cjs.map +1 -0
  115. package/dist/chunk-F3SFIX7U.cjs +58 -0
  116. package/dist/chunk-F3SFIX7U.cjs.map +1 -0
  117. package/dist/chunk-F63VY23B.js +174 -0
  118. package/dist/chunk-F63VY23B.js.map +1 -0
  119. package/dist/chunk-FSLUSFJ2.cjs +75 -0
  120. package/dist/chunk-FSLUSFJ2.cjs.map +1 -0
  121. package/dist/chunk-GA52TZC4.js +133 -0
  122. package/dist/chunk-GA52TZC4.js.map +1 -0
  123. package/dist/chunk-GRFCSQ2M.js +13 -0
  124. package/dist/chunk-GRFCSQ2M.js.map +1 -0
  125. package/dist/chunk-HBRGW3CJ.js +383 -0
  126. package/dist/chunk-HBRGW3CJ.js.map +1 -0
  127. package/dist/chunk-HDA2ZOV2.cjs +13 -0
  128. package/dist/chunk-HDA2ZOV2.cjs.map +1 -0
  129. package/dist/chunk-HQVTEFSO.js +386 -0
  130. package/dist/chunk-HQVTEFSO.js.map +1 -0
  131. package/dist/chunk-IU657MP5.js +270 -0
  132. package/dist/chunk-IU657MP5.js.map +1 -0
  133. package/dist/chunk-IY3BNQ5Y.js +24 -0
  134. package/dist/chunk-IY3BNQ5Y.js.map +1 -0
  135. package/dist/chunk-J2FIIZSN.js +137 -0
  136. package/dist/chunk-J2FIIZSN.js.map +1 -0
  137. package/dist/chunk-JRBJXVXL.cjs +251 -0
  138. package/dist/chunk-JRBJXVXL.cjs.map +1 -0
  139. package/dist/chunk-JYWKXNUO.cjs +37 -0
  140. package/dist/chunk-JYWKXNUO.cjs.map +1 -0
  141. package/dist/chunk-KE27RJ3X.cjs +954 -0
  142. package/dist/chunk-KE27RJ3X.cjs.map +1 -0
  143. package/dist/chunk-M4J3OZJF.cjs +152 -0
  144. package/dist/chunk-M4J3OZJF.cjs.map +1 -0
  145. package/dist/chunk-MKUJOEAC.cjs +178 -0
  146. package/dist/chunk-MKUJOEAC.cjs.map +1 -0
  147. package/dist/chunk-MNRHGJDQ.cjs +225 -0
  148. package/dist/chunk-MNRHGJDQ.cjs.map +1 -0
  149. package/dist/chunk-MNWWZGL2.js +14 -0
  150. package/dist/chunk-MNWWZGL2.js.map +1 -0
  151. package/dist/chunk-MWED53XR.js +115 -0
  152. package/dist/chunk-MWED53XR.js.map +1 -0
  153. package/dist/chunk-NCQQI2T2.cjs +386 -0
  154. package/dist/chunk-NCQQI2T2.cjs.map +1 -0
  155. package/dist/chunk-NGYR4RQF.js +476 -0
  156. package/dist/chunk-NGYR4RQF.js.map +1 -0
  157. package/dist/chunk-NNJDJNSY.cjs +197 -0
  158. package/dist/chunk-NNJDJNSY.cjs.map +1 -0
  159. package/dist/chunk-NOZVVD6G.cjs +26 -0
  160. package/dist/chunk-NOZVVD6G.cjs.map +1 -0
  161. package/dist/chunk-NUG3DWF7.js +55 -0
  162. package/dist/chunk-NUG3DWF7.js.map +1 -0
  163. package/dist/chunk-NXAZEYLC.cjs +136 -0
  164. package/dist/chunk-NXAZEYLC.cjs.map +1 -0
  165. package/dist/chunk-PNVBMN27.cjs +380 -0
  166. package/dist/chunk-PNVBMN27.cjs.map +1 -0
  167. package/dist/chunk-RKDOQV4T.js +73 -0
  168. package/dist/chunk-RKDOQV4T.js.map +1 -0
  169. package/dist/chunk-RMZFC7HF.cjs +17 -0
  170. package/dist/chunk-RMZFC7HF.cjs.map +1 -0
  171. package/dist/chunk-SBHL3GFW.js +40 -0
  172. package/dist/chunk-SBHL3GFW.js.map +1 -0
  173. package/dist/chunk-TFJQ4525.cjs +416 -0
  174. package/dist/chunk-TFJQ4525.cjs.map +1 -0
  175. package/dist/chunk-VBJ5FT4C.cjs +273 -0
  176. package/dist/chunk-VBJ5FT4C.cjs.map +1 -0
  177. package/dist/chunk-VZFL5BZM.js +222 -0
  178. package/dist/chunk-VZFL5BZM.js.map +1 -0
  179. package/dist/chunk-W7VPL5I4.js +252 -0
  180. package/dist/chunk-W7VPL5I4.js.map +1 -0
  181. package/dist/chunk-XALQ3ANE.cjs +34 -0
  182. package/dist/chunk-XALQ3ANE.cjs.map +1 -0
  183. package/dist/chunk-YCYKV5KF.cjs +43 -0
  184. package/dist/chunk-YCYKV5KF.cjs.map +1 -0
  185. package/dist/chunk-YJZGIS4L.cjs +479 -0
  186. package/dist/chunk-YJZGIS4L.cjs.map +1 -0
  187. package/dist/chunk-YU5DAILW.cjs +14 -0
  188. package/dist/chunk-YU5DAILW.cjs.map +1 -0
  189. package/dist/chunk-YY5WLV63.js +951 -0
  190. package/dist/chunk-YY5WLV63.js.map +1 -0
  191. package/dist/chunk-ZS7C474P.js +3 -0
  192. package/dist/chunk-ZS7C474P.js.map +1 -0
  193. package/dist/chunk-ZSUGXJWD.js +194 -0
  194. package/dist/chunk-ZSUGXJWD.js.map +1 -0
  195. package/dist/chunk-ZWFK5UUU.js +11 -0
  196. package/dist/chunk-ZWFK5UUU.js.map +1 -0
  197. package/dist/components/index.cjs +17 -0
  198. package/dist/components/index.cjs.map +1 -0
  199. package/dist/components/index.d.cts +8 -0
  200. package/dist/components/index.d.ts +8 -0
  201. package/dist/components/index.js +4 -0
  202. package/dist/components/index.js.map +1 -0
  203. package/dist/contexts/index.cjs +29 -0
  204. package/dist/contexts/index.cjs.map +1 -0
  205. package/dist/contexts/index.d.cts +73 -0
  206. package/dist/contexts/index.d.ts +73 -0
  207. package/dist/contexts/index.js +4 -0
  208. package/dist/contexts/index.js.map +1 -0
  209. package/dist/core/index.cjs +55 -0
  210. package/dist/core/index.cjs.map +1 -0
  211. package/dist/core/index.d.cts +64 -0
  212. package/dist/core/index.d.ts +64 -0
  213. package/dist/core/index.js +6 -0
  214. package/dist/core/index.js.map +1 -0
  215. package/dist/ui/index.cjs +80 -0
  216. package/dist/ui/index.cjs.map +1 -0
  217. package/dist/ui/index.d.cts +69 -0
  218. package/dist/ui/index.d.ts +69 -0
  219. package/dist/ui/index.js +7 -0
  220. package/dist/ui/index.js.map +1 -0
  221. package/dist/widgets/index.cjs +217 -0
  222. package/dist/widgets/index.cjs.map +1 -0
  223. package/dist/widgets/index.d.cts +397 -0
  224. package/dist/widgets/index.d.ts +397 -0
  225. package/dist/widgets/index.js +59 -0
  226. package/dist/widgets/index.js.map +1 -0
  227. package/package.json +99 -0
  228. package/styles/globals.css +20 -0
@@ -0,0 +1,377 @@
1
+ import { Card, ChartContainer, ChartTooltip, ChartTooltipContent, ChartLegend, ChartLegendContent } from './chunk-DM2JDG3D.js';
2
+ import { getFontSizeField, getColorField, getPaddingField, getBorderRadiusField } from './chunk-ZS7C474P.js';
3
+ import { BarChart, CartesianGrid, XAxis, YAxis, Bar, PieChart, Pie, AreaChart, Area, LineChart, Line } from 'recharts';
4
+ import { jsx, jsxs } from 'react/jsx-runtime';
5
+
6
+ var defaultData = [
7
+ { name: "Jan", value: 186 },
8
+ { name: "Feb", value: 305 },
9
+ { name: "Mar", value: 237 },
10
+ { name: "Apr", value: 273 },
11
+ { name: "May", value: 209 },
12
+ { name: "Jun", value: 214 }
13
+ ];
14
+ var defaultPieData = [
15
+ { name: "Jan", value: 186, fill: "var(--chart-1)" },
16
+ { name: "Feb", value: 305, fill: "var(--chart-2)" },
17
+ { name: "Mar", value: 237, fill: "var(--chart-3)" },
18
+ { name: "Apr", value: 273, fill: "var(--chart-4)" },
19
+ { name: "May", value: 209, fill: "var(--chart-5)" }
20
+ ];
21
+ var defaultChartConfig = {
22
+ value: {
23
+ label: "Value",
24
+ color: "var(--chart-1)"
25
+ }
26
+ };
27
+ function ChartWidget({
28
+ titleEnabled = true,
29
+ title = "Chart Widget",
30
+ titleFontSize = "lg",
31
+ titleColor = "foreground",
32
+ description = "Displaying sample data",
33
+ descriptionFontSize = "md",
34
+ descriptionColor = "foreground",
35
+ chartType = "bar",
36
+ showLegend = false,
37
+ showTooltip = true,
38
+ showGrid = true,
39
+ width = "100%",
40
+ height = "300px",
41
+ background = {
42
+ type: "solid",
43
+ color: "background"
44
+ },
45
+ padding = 4,
46
+ borderRadius = "md",
47
+ dataKey = "value",
48
+ xAxisKey = "name",
49
+ data,
50
+ chartConfig,
51
+ className,
52
+ ...props
53
+ }) {
54
+ const backgroundColor = background.color || "background";
55
+ const backgroundImage = (background.resource?.image_url || background.resource?.imageUrl) && background.type === "image" ? `url(${background.resource.image_url || background.resource.imageUrl})` : "none";
56
+ const chartData = data ?? defaultData;
57
+ const chartPieData = chartType === "pie" && data ? data.map((item, index) => ({
58
+ ...item,
59
+ fill: `var(--chart-${index % 5 + 1})`
60
+ })) : defaultPieData;
61
+ const config = chartConfig ?? defaultChartConfig;
62
+ const renderChart = () => {
63
+ switch (chartType) {
64
+ case "bar":
65
+ return /* @__PURE__ */ jsxs(BarChart, { data: chartData, children: [
66
+ showGrid && /* @__PURE__ */ jsx(CartesianGrid, { strokeDasharray: "3 3" }),
67
+ /* @__PURE__ */ jsx(XAxis, { dataKey: xAxisKey }),
68
+ /* @__PURE__ */ jsx(YAxis, {}),
69
+ showTooltip && /* @__PURE__ */ jsx(ChartTooltip, { content: /* @__PURE__ */ jsx(ChartTooltipContent, {}) }),
70
+ showLegend && /* @__PURE__ */ jsx(ChartLegend, { content: /* @__PURE__ */ jsx(ChartLegendContent, {}) }),
71
+ /* @__PURE__ */ jsx(Bar, { dataKey, fill: "var(--color-value)", radius: 8 })
72
+ ] });
73
+ case "line":
74
+ return /* @__PURE__ */ jsxs(LineChart, { data: chartData, children: [
75
+ showGrid && /* @__PURE__ */ jsx(CartesianGrid, { strokeDasharray: "3 3" }),
76
+ /* @__PURE__ */ jsx(XAxis, { dataKey: xAxisKey }),
77
+ /* @__PURE__ */ jsx(YAxis, {}),
78
+ showTooltip && /* @__PURE__ */ jsx(ChartTooltip, { content: /* @__PURE__ */ jsx(ChartTooltipContent, {}) }),
79
+ showLegend && /* @__PURE__ */ jsx(ChartLegend, { content: /* @__PURE__ */ jsx(ChartLegendContent, {}) }),
80
+ /* @__PURE__ */ jsx(
81
+ Line,
82
+ {
83
+ type: "monotone",
84
+ dataKey,
85
+ stroke: "var(--color-value)",
86
+ strokeWidth: 2,
87
+ dot: { r: 4 }
88
+ }
89
+ )
90
+ ] });
91
+ case "area":
92
+ return /* @__PURE__ */ jsxs(AreaChart, { data: chartData, children: [
93
+ showGrid && /* @__PURE__ */ jsx(CartesianGrid, { strokeDasharray: "3 3" }),
94
+ /* @__PURE__ */ jsx(XAxis, { dataKey: xAxisKey }),
95
+ /* @__PURE__ */ jsx(YAxis, {}),
96
+ showTooltip && /* @__PURE__ */ jsx(ChartTooltip, { content: /* @__PURE__ */ jsx(ChartTooltipContent, {}) }),
97
+ showLegend && /* @__PURE__ */ jsx(ChartLegend, { content: /* @__PURE__ */ jsx(ChartLegendContent, {}) }),
98
+ /* @__PURE__ */ jsx(
99
+ Area,
100
+ {
101
+ type: "monotone",
102
+ dataKey,
103
+ stroke: "var(--color-value)",
104
+ fill: "var(--color-value)",
105
+ fillOpacity: 0.6
106
+ }
107
+ )
108
+ ] });
109
+ case "pie":
110
+ return /* @__PURE__ */ jsxs(PieChart, { children: [
111
+ showTooltip && /* @__PURE__ */ jsx(ChartTooltip, { content: /* @__PURE__ */ jsx(ChartTooltipContent, { hideLabel: true }) }),
112
+ showLegend && /* @__PURE__ */ jsx(ChartLegend, { content: /* @__PURE__ */ jsx(ChartLegendContent, {}) }),
113
+ /* @__PURE__ */ jsx(
114
+ Pie,
115
+ {
116
+ data: chartPieData,
117
+ dataKey,
118
+ nameKey: xAxisKey,
119
+ cx: "50%",
120
+ cy: "50%",
121
+ outerRadius: 80,
122
+ label: true
123
+ }
124
+ )
125
+ ] });
126
+ default:
127
+ return /* @__PURE__ */ jsxs(BarChart, { data: chartData, children: [
128
+ showGrid && /* @__PURE__ */ jsx(CartesianGrid, { strokeDasharray: "3 3" }),
129
+ /* @__PURE__ */ jsx(XAxis, { dataKey: xAxisKey }),
130
+ /* @__PURE__ */ jsx(YAxis, {}),
131
+ showTooltip && /* @__PURE__ */ jsx(ChartTooltip, { content: /* @__PURE__ */ jsx(ChartTooltipContent, {}) }),
132
+ showLegend && /* @__PURE__ */ jsx(ChartLegend, { content: /* @__PURE__ */ jsx(ChartLegendContent, {}) }),
133
+ /* @__PURE__ */ jsx(Bar, { dataKey, fill: "var(--color-value)", radius: 8 })
134
+ ] });
135
+ }
136
+ };
137
+ return /* @__PURE__ */ jsx(
138
+ Card,
139
+ {
140
+ className: `bg-${backgroundColor} p-${padding} rounded-${borderRadius} ${className}`,
141
+ style: {
142
+ width,
143
+ maxWidth: "100%",
144
+ backgroundImage
145
+ },
146
+ ...props,
147
+ children: /* @__PURE__ */ jsxs("div", { className: "p-6", children: [
148
+ /* @__PURE__ */ jsxs("div", { className: "mb-4", children: [
149
+ titleEnabled && /* @__PURE__ */ jsx(
150
+ "h3",
151
+ {
152
+ className: `text-${titleFontSize} text-${titleColor} font-bold`,
153
+ children: title
154
+ }
155
+ ),
156
+ description && /* @__PURE__ */ jsx(
157
+ "p",
158
+ {
159
+ className: `text-${descriptionFontSize} text-${descriptionColor}`,
160
+ children: description
161
+ }
162
+ )
163
+ ] }),
164
+ /* @__PURE__ */ jsx(ChartContainer, { config, style: { height }, children: renderChart() })
165
+ ] })
166
+ }
167
+ );
168
+ }
169
+ var chartWidgetPropertySchema = {
170
+ widgetType: "ChartWidget",
171
+ displayName: "Chart",
172
+ tabsConfig: [
173
+ { id: "styling", label: "Styling" },
174
+ { id: "data", label: "Data" }
175
+ ],
176
+ dataSourceTargetProps: ["data", "chartConfig"],
177
+ fields: [
178
+ // Content Tab - Title Group
179
+ {
180
+ key: "titleEnabled",
181
+ label: "Widget Title",
182
+ type: "boolean",
183
+ description: "Enable the title displayed above the chart",
184
+ defaultValue: true,
185
+ tab: "styling",
186
+ group: "Title"
187
+ },
188
+ {
189
+ key: "title",
190
+ label: "Title",
191
+ type: "text",
192
+ description: "The chart title",
193
+ defaultValue: "Chart Widget",
194
+ tab: "styling",
195
+ group: "Title",
196
+ requiresKeyToBeTrue: "titleEnabled"
197
+ },
198
+ getFontSizeField({
199
+ key: "titleFontSize",
200
+ label: "Title Font Size",
201
+ description: "Font size for the chart title",
202
+ defaultValue: "lg",
203
+ tab: "styling",
204
+ group: "Title",
205
+ requiresKeyToBeTrue: "titleEnabled"
206
+ }),
207
+ getColorField({
208
+ key: "titleColor",
209
+ label: "Title Color",
210
+ description: "Color for the chart title",
211
+ defaultValue: "foreground",
212
+ tab: "styling",
213
+ group: "Title",
214
+ requiresKeyToBeTrue: "titleEnabled"
215
+ }),
216
+ // Content Tab - Description Group
217
+ {
218
+ key: "description",
219
+ label: "Description",
220
+ type: "textarea",
221
+ description: "The chart description",
222
+ rows: 2,
223
+ defaultValue: "Displaying sample data",
224
+ tab: "styling",
225
+ group: "Description"
226
+ },
227
+ getFontSizeField({
228
+ key: "descriptionFontSize",
229
+ label: "Description Font Size",
230
+ description: "Font size for the chart description",
231
+ defaultValue: "md",
232
+ tab: "styling",
233
+ group: "Description"
234
+ }),
235
+ getColorField({
236
+ key: "descriptionColor",
237
+ label: "Description Color",
238
+ description: "Color for the chart description",
239
+ defaultValue: "foreground",
240
+ tab: "styling",
241
+ group: "Description"
242
+ }),
243
+ // Styling Tab - Design Group
244
+ {
245
+ key: "chartType",
246
+ label: "Chart Type",
247
+ type: "select",
248
+ description: "Type of chart to display",
249
+ options: [
250
+ { label: "Bar Chart", value: "bar" },
251
+ { label: "Line Chart", value: "line" },
252
+ { label: "Area Chart", value: "area" },
253
+ { label: "Pie Chart", value: "pie" }
254
+ ],
255
+ defaultValue: "bar",
256
+ tab: "styling",
257
+ group: "Design"
258
+ },
259
+ {
260
+ key: "showLegend",
261
+ label: "Show Legend",
262
+ type: "boolean",
263
+ description: "Display chart legend",
264
+ defaultValue: false,
265
+ tab: "styling",
266
+ group: "Design"
267
+ },
268
+ {
269
+ key: "showTooltip",
270
+ label: "Show Tooltip",
271
+ type: "boolean",
272
+ description: "Display tooltip on hover",
273
+ defaultValue: true,
274
+ tab: "styling",
275
+ group: "Design"
276
+ },
277
+ {
278
+ key: "showGrid",
279
+ label: "Show Grid",
280
+ type: "boolean",
281
+ description: "Display background grid lines",
282
+ defaultValue: true,
283
+ tab: "styling",
284
+ group: "Design"
285
+ },
286
+ {
287
+ key: "separator",
288
+ type: "separator",
289
+ label: "Separator",
290
+ tab: "styling",
291
+ group: "Design"
292
+ },
293
+ {
294
+ key: "width",
295
+ label: "Width",
296
+ type: "text",
297
+ description: "Width of the chart container (CSS value, e.g., 100%, 600px)",
298
+ defaultValue: "100%",
299
+ tab: "styling",
300
+ group: "Design"
301
+ },
302
+ {
303
+ key: "height",
304
+ label: "Height",
305
+ type: "text",
306
+ description: "Height of the chart (CSS value, e.g., 300px, 400px)",
307
+ defaultValue: "300px",
308
+ tab: "styling",
309
+ group: "Design"
310
+ },
311
+ {
312
+ key: "separator2",
313
+ type: "separator",
314
+ label: "Separator",
315
+ tab: "styling",
316
+ group: "Design"
317
+ },
318
+ {
319
+ type: "background",
320
+ key: "background",
321
+ label: "Background",
322
+ description: "Background for the chart container",
323
+ defaultValue: "background",
324
+ tab: "styling",
325
+ group: "Design"
326
+ },
327
+ getPaddingField({
328
+ key: "padding",
329
+ label: "Padding",
330
+ description: "Padding for the chart container",
331
+ defaultValue: 4,
332
+ tab: "styling",
333
+ group: "Design"
334
+ }),
335
+ getBorderRadiusField({
336
+ key: "borderRadius",
337
+ label: "Border Radius",
338
+ description: "Border radius for the chart container",
339
+ defaultValue: "md",
340
+ tab: "styling",
341
+ group: "Design"
342
+ }),
343
+ // Data Tab - Data Group
344
+ {
345
+ key: "dataSource",
346
+ label: "Data Source",
347
+ type: "dataSource",
348
+ description: "Configure dynamic data fetching from an API",
349
+ tab: "data",
350
+ group: "Data"
351
+ },
352
+ {
353
+ key: "dataKey",
354
+ label: "Data Key",
355
+ type: "select",
356
+ description: "Key in the data to use for chart values",
357
+ options: [{ label: "value", value: "value" }],
358
+ defaultValue: "value",
359
+ tab: "data",
360
+ group: "Data"
361
+ },
362
+ {
363
+ key: "xAxisKey",
364
+ label: "X-Axis Key",
365
+ type: "select",
366
+ description: "Key in the data to use for X-axis labels",
367
+ options: [{ label: "name", value: "name" }],
368
+ defaultValue: "name",
369
+ tab: "data",
370
+ group: "Data"
371
+ }
372
+ ]
373
+ };
374
+
375
+ export { ChartWidget, chartWidgetPropertySchema };
376
+ //# sourceMappingURL=chunk-CEZOXMO6.js.map
377
+ //# sourceMappingURL=chunk-CEZOXMO6.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/widgets/ChartWidget.tsx"],"names":["RechartsBarChart","RechartsLineChart","RechartsAreaChart","RechartsPieChart"],"mappings":"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","file":"chunk-CEZOXMO6.js","sourcesContent":["import type { WidgetPropertySchema } from \"@fluid-app/rep-core/registries\";\nimport { Card } from \"../ui/card\";\nimport {\n ChartContainer,\n ChartTooltip,\n ChartTooltipContent,\n ChartLegend,\n ChartLegendContent,\n} from \"../ui/chart\";\nimport type { ComponentProps } from \"react\";\nimport {\n Bar,\n BarChart as RechartsBarChart,\n Line,\n LineChart as RechartsLineChart,\n Area,\n AreaChart as RechartsAreaChart,\n Pie,\n PieChart as RechartsPieChart,\n XAxis,\n YAxis,\n CartesianGrid,\n} from \"recharts\";\nimport {\n getBorderRadiusField,\n getColorField,\n getFontSizeField,\n getPaddingField,\n} from \"../core/fields\";\nimport type {\n BackgroundValue,\n BorderRadiusOptions,\n ColorOptions,\n FontSizeOptions,\n PaddingOptions,\n} from \"@fluid-app/rep-core/types\";\n\ntype ChartDataPoint = Record<string, unknown>;\n\ntype ChartWidgetProps = ComponentProps<\"div\"> & {\n // Title\n titleEnabled?: boolean;\n title?: string;\n titleFontSize?: FontSizeOptions;\n titleColor?: ColorOptions;\n\n // Description\n description?: string;\n descriptionFontSize?: FontSizeOptions;\n descriptionColor?: ColorOptions;\n\n // Design\n chartType?: \"bar\" | \"line\" | \"area\" | \"pie\";\n showLegend?: boolean;\n showTooltip?: boolean;\n showGrid?: boolean;\n width?: string;\n height?: string;\n background?: BackgroundValue;\n padding?: PaddingOptions;\n borderRadius?: BorderRadiusOptions;\n\n // Data\n dataKey?: string;\n xAxisKey?: string;\n /** Chart data - when provided via dataSource, this overrides defaultData */\n data?: ChartDataPoint[];\n /** Chart configuration - can be dynamically provided via dataSource */\n chartConfig?: Record<string, { label: string; color: string }>;\n};\n\n// Default sample data for demonstration\nconst defaultData = [\n { name: \"Jan\", value: 186 },\n { name: \"Feb\", value: 305 },\n { name: \"Mar\", value: 237 },\n { name: \"Apr\", value: 273 },\n { name: \"May\", value: 209 },\n { name: \"Jun\", value: 214 },\n];\n\n// Pie chart data with individual fill properties\nconst defaultPieData = [\n { name: \"Jan\", value: 186, fill: \"var(--chart-1)\" },\n { name: \"Feb\", value: 305, fill: \"var(--chart-2)\" },\n { name: \"Mar\", value: 237, fill: \"var(--chart-3)\" },\n { name: \"Apr\", value: 273, fill: \"var(--chart-4)\" },\n { name: \"May\", value: 209, fill: \"var(--chart-5)\" },\n];\n\nconst defaultChartConfig = {\n value: {\n label: \"Value\",\n color: \"var(--chart-1)\",\n },\n};\n\nexport function ChartWidget({\n titleEnabled = true,\n title = \"Chart Widget\",\n titleFontSize = \"lg\",\n titleColor = \"foreground\",\n\n description = \"Displaying sample data\",\n descriptionFontSize = \"md\",\n descriptionColor = \"foreground\",\n\n chartType = \"bar\",\n showLegend = false,\n showTooltip = true,\n showGrid = true,\n width = \"100%\",\n height = \"300px\",\n background = {\n type: \"solid\",\n color: \"background\",\n },\n padding = 4,\n borderRadius = \"md\",\n\n dataKey = \"value\",\n xAxisKey = \"name\",\n data,\n chartConfig,\n className,\n ...props\n}: ChartWidgetProps) {\n const backgroundColor = background.color || \"background\";\n const backgroundImage =\n (background.resource?.image_url || background.resource?.imageUrl) &&\n background.type === \"image\"\n ? `url(${background.resource.image_url || background.resource.imageUrl})`\n : \"none\";\n // Use provided data or fall back to default\n const chartData = data ?? defaultData;\n const chartPieData =\n chartType === \"pie\" && data\n ? data.map((item, index) => ({\n ...item,\n fill: `var(--chart-${(index % 5) + 1})`,\n }))\n : defaultPieData;\n const config = chartConfig ?? defaultChartConfig;\n const renderChart = () => {\n switch (chartType) {\n case \"bar\":\n return (\n <RechartsBarChart data={chartData}>\n {showGrid && <CartesianGrid strokeDasharray=\"3 3\" />}\n <XAxis dataKey={xAxisKey} />\n <YAxis />\n {showTooltip && <ChartTooltip content={<ChartTooltipContent />} />}\n {showLegend && <ChartLegend content={<ChartLegendContent />} />}\n <Bar dataKey={dataKey} fill=\"var(--color-value)\" radius={8} />\n </RechartsBarChart>\n );\n\n case \"line\":\n return (\n <RechartsLineChart data={chartData}>\n {showGrid && <CartesianGrid strokeDasharray=\"3 3\" />}\n <XAxis dataKey={xAxisKey} />\n <YAxis />\n {showTooltip && <ChartTooltip content={<ChartTooltipContent />} />}\n {showLegend && <ChartLegend content={<ChartLegendContent />} />}\n <Line\n type=\"monotone\"\n dataKey={dataKey}\n stroke=\"var(--color-value)\"\n strokeWidth={2}\n dot={{ r: 4 }}\n />\n </RechartsLineChart>\n );\n\n case \"area\":\n return (\n <RechartsAreaChart data={chartData}>\n {showGrid && <CartesianGrid strokeDasharray=\"3 3\" />}\n <XAxis dataKey={xAxisKey} />\n <YAxis />\n {showTooltip && <ChartTooltip content={<ChartTooltipContent />} />}\n {showLegend && <ChartLegend content={<ChartLegendContent />} />}\n <Area\n type=\"monotone\"\n dataKey={dataKey}\n stroke=\"var(--color-value)\"\n fill=\"var(--color-value)\"\n fillOpacity={0.6}\n />\n </RechartsAreaChart>\n );\n\n case \"pie\":\n return (\n <RechartsPieChart>\n {showTooltip && (\n <ChartTooltip content={<ChartTooltipContent hideLabel />} />\n )}\n {showLegend && <ChartLegend content={<ChartLegendContent />} />}\n <Pie\n data={chartPieData}\n dataKey={dataKey}\n nameKey={xAxisKey}\n cx=\"50%\"\n cy=\"50%\"\n outerRadius={80}\n label\n />\n </RechartsPieChart>\n );\n\n default:\n // Fallback to bar chart for unknown chart types\n return (\n <RechartsBarChart data={chartData}>\n {showGrid && <CartesianGrid strokeDasharray=\"3 3\" />}\n <XAxis dataKey={xAxisKey} />\n <YAxis />\n {showTooltip && <ChartTooltip content={<ChartTooltipContent />} />}\n {showLegend && <ChartLegend content={<ChartLegendContent />} />}\n <Bar dataKey={dataKey} fill=\"var(--color-value)\" radius={8} />\n </RechartsBarChart>\n );\n }\n };\n\n return (\n <Card\n className={`bg-${backgroundColor} p-${padding} rounded-${borderRadius} ${className}`}\n style={{\n width,\n maxWidth: \"100%\",\n backgroundImage,\n }}\n {...props}\n >\n <div className=\"p-6\">\n <div className=\"mb-4\">\n {titleEnabled && (\n <h3\n className={`text-${titleFontSize} text-${titleColor} font-bold`}\n >\n {title}\n </h3>\n )}\n {description && (\n <p\n className={`text-${descriptionFontSize} text-${descriptionColor}`}\n >\n {description}\n </p>\n )}\n </div>\n <ChartContainer config={config} style={{ height }}>\n {renderChart()}\n </ChartContainer>\n </div>\n </Card>\n );\n}\n\nexport const chartWidgetPropertySchema: WidgetPropertySchema = {\n widgetType: \"ChartWidget\",\n displayName: \"Chart\",\n tabsConfig: [\n { id: \"styling\", label: \"Styling\" },\n { id: \"data\", label: \"Data\" },\n ],\n dataSourceTargetProps: [\"data\", \"chartConfig\"],\n fields: [\n // Content Tab - Title Group\n {\n key: \"titleEnabled\",\n label: \"Widget Title\",\n type: \"boolean\",\n description: \"Enable the title displayed above the chart\",\n defaultValue: true,\n tab: \"styling\",\n group: \"Title\",\n },\n {\n key: \"title\",\n label: \"Title\",\n type: \"text\",\n description: \"The chart title\",\n defaultValue: \"Chart Widget\",\n tab: \"styling\",\n group: \"Title\",\n requiresKeyToBeTrue: \"titleEnabled\",\n },\n getFontSizeField({\n key: \"titleFontSize\",\n label: \"Title Font Size\",\n description: \"Font size for the chart title\",\n defaultValue: \"lg\",\n tab: \"styling\",\n group: \"Title\",\n requiresKeyToBeTrue: \"titleEnabled\",\n }),\n getColorField({\n key: \"titleColor\",\n label: \"Title Color\",\n description: \"Color for the chart title\",\n defaultValue: \"foreground\",\n tab: \"styling\",\n group: \"Title\",\n requiresKeyToBeTrue: \"titleEnabled\",\n }),\n\n // Content Tab - Description Group\n {\n key: \"description\",\n label: \"Description\",\n type: \"textarea\",\n description: \"The chart description\",\n rows: 2,\n defaultValue: \"Displaying sample data\",\n tab: \"styling\",\n group: \"Description\",\n },\n getFontSizeField({\n key: \"descriptionFontSize\",\n label: \"Description Font Size\",\n description: \"Font size for the chart description\",\n defaultValue: \"md\",\n tab: \"styling\",\n group: \"Description\",\n }),\n getColorField({\n key: \"descriptionColor\",\n label: \"Description Color\",\n description: \"Color for the chart description\",\n defaultValue: \"foreground\",\n tab: \"styling\",\n group: \"Description\",\n }),\n\n // Styling Tab - Design Group\n {\n key: \"chartType\",\n label: \"Chart Type\",\n type: \"select\",\n description: \"Type of chart to display\",\n options: [\n { label: \"Bar Chart\", value: \"bar\" },\n { label: \"Line Chart\", value: \"line\" },\n { label: \"Area Chart\", value: \"area\" },\n { label: \"Pie Chart\", value: \"pie\" },\n ],\n defaultValue: \"bar\",\n tab: \"styling\",\n group: \"Design\",\n },\n {\n key: \"showLegend\",\n label: \"Show Legend\",\n type: \"boolean\",\n description: \"Display chart legend\",\n defaultValue: false,\n tab: \"styling\",\n group: \"Design\",\n },\n {\n key: \"showTooltip\",\n label: \"Show Tooltip\",\n type: \"boolean\",\n description: \"Display tooltip on hover\",\n defaultValue: true,\n tab: \"styling\",\n group: \"Design\",\n },\n {\n key: \"showGrid\",\n label: \"Show Grid\",\n type: \"boolean\",\n description: \"Display background grid lines\",\n defaultValue: true,\n tab: \"styling\",\n group: \"Design\",\n },\n {\n key: \"separator\",\n type: \"separator\",\n label: \"Separator\",\n tab: \"styling\",\n group: \"Design\",\n },\n {\n key: \"width\",\n label: \"Width\",\n type: \"text\",\n description:\n \"Width of the chart container (CSS value, e.g., 100%, 600px)\",\n defaultValue: \"100%\",\n tab: \"styling\",\n group: \"Design\",\n },\n {\n key: \"height\",\n label: \"Height\",\n type: \"text\",\n description: \"Height of the chart (CSS value, e.g., 300px, 400px)\",\n defaultValue: \"300px\",\n tab: \"styling\",\n group: \"Design\",\n },\n {\n key: \"separator2\",\n type: \"separator\",\n label: \"Separator\",\n tab: \"styling\",\n group: \"Design\",\n },\n {\n type: \"background\",\n key: \"background\",\n label: \"Background\",\n description: \"Background for the chart container\",\n defaultValue: \"background\",\n tab: \"styling\",\n group: \"Design\",\n },\n getPaddingField({\n key: \"padding\",\n label: \"Padding\",\n description: \"Padding for the chart container\",\n defaultValue: 4,\n tab: \"styling\",\n group: \"Design\",\n }),\n getBorderRadiusField({\n key: \"borderRadius\",\n label: \"Border Radius\",\n description: \"Border radius for the chart container\",\n defaultValue: \"md\",\n tab: \"styling\",\n group: \"Design\",\n }),\n\n // Data Tab - Data Group\n {\n key: \"dataSource\",\n label: \"Data Source\",\n type: \"dataSource\",\n description: \"Configure dynamic data fetching from an API\",\n tab: \"data\",\n group: \"Data\",\n },\n {\n key: \"dataKey\",\n label: \"Data Key\",\n type: \"select\",\n description: \"Key in the data to use for chart values\",\n options: [{ label: \"value\", value: \"value\" }],\n defaultValue: \"value\",\n tab: \"data\",\n group: \"Data\",\n },\n {\n key: \"xAxisKey\",\n label: \"X-Axis Key\",\n type: \"select\",\n description: \"Key in the data to use for X-axis labels\",\n options: [{ label: \"name\", value: \"name\" }],\n defaultValue: \"name\",\n tab: \"data\",\n group: \"Data\",\n },\n ],\n};\n"]}
@@ -0,0 +1,36 @@
1
+ 'use strict';
2
+
3
+ var registries = require('@fluid-app/rep-core/registries');
4
+
5
+
6
+
7
+ Object.defineProperty(exports, "gapValues", {
8
+ enumerable: true,
9
+ get: function () { return registries.gapValues; }
10
+ });
11
+ Object.defineProperty(exports, "getBorderRadiusField", {
12
+ enumerable: true,
13
+ get: function () { return registries.getBorderRadiusField; }
14
+ });
15
+ Object.defineProperty(exports, "getButtonSizeField", {
16
+ enumerable: true,
17
+ get: function () { return registries.getButtonSizeField; }
18
+ });
19
+ Object.defineProperty(exports, "getColorField", {
20
+ enumerable: true,
21
+ get: function () { return registries.getColorField; }
22
+ });
23
+ Object.defineProperty(exports, "getFontSizeField", {
24
+ enumerable: true,
25
+ get: function () { return registries.getFontSizeField; }
26
+ });
27
+ Object.defineProperty(exports, "getGapField", {
28
+ enumerable: true,
29
+ get: function () { return registries.getGapField; }
30
+ });
31
+ Object.defineProperty(exports, "getPaddingField", {
32
+ enumerable: true,
33
+ get: function () { return registries.getPaddingField; }
34
+ });
35
+ //# sourceMappingURL=chunk-CM7D7WGL.cjs.map
36
+ //# sourceMappingURL=chunk-CM7D7WGL.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"names":[],"mappings":"","file":"chunk-CM7D7WGL.cjs","sourcesContent":[]}