@embeddable.com/remarkable-pro 0.0.21 → 0.0.23

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 (230) hide show
  1. package/dist/BarChartDefaultHorizontalPro.js +17 -10
  2. package/dist/BarChartDefaultHorizontalPro.js.map +1 -1
  3. package/dist/BarChartDefaultPro.js +17 -10
  4. package/dist/BarChartDefaultPro.js.map +1 -1
  5. package/dist/BarChartGroupedHorizontalPro.js +19 -11
  6. package/dist/BarChartGroupedHorizontalPro.js.map +1 -1
  7. package/dist/BarChartGroupedPro.js +19 -11
  8. package/dist/BarChartGroupedPro.js.map +1 -1
  9. package/dist/BarChartStackedHorizontalPro.js +18 -10
  10. package/dist/BarChartStackedHorizontalPro.js.map +1 -1
  11. package/dist/BarChartStackedPro.js +19 -11
  12. package/dist/BarChartStackedPro.js.map +1 -1
  13. package/dist/ChartCard-B3B1rFYh.js +116 -0
  14. package/dist/ChartCard-B3B1rFYh.js.map +1 -0
  15. package/dist/{Color.type.emb-Dkh_ZrO6.js → Color.type.emb-sebikYGW.js} +8424 -8398
  16. package/dist/{Color.type.emb-Dkh_ZrO6.js.map → Color.type.emb-sebikYGW.js.map} +1 -1
  17. package/dist/ColorEditor.js +1 -1
  18. package/dist/ComparisonPeriodSelectFieldPro.js +11 -8
  19. package/dist/ComparisonPeriodSelectFieldPro.js.map +1 -1
  20. package/dist/DateRangePickerCustomPro.js +33 -28
  21. package/dist/DateRangePickerCustomPro.js.map +1 -1
  22. package/dist/DateRangeSelectFieldPro.js +12 -8
  23. package/dist/DateRangeSelectFieldPro.js.map +1 -1
  24. package/dist/DonutChartPro.js +23 -15
  25. package/dist/DonutChartPro.js.map +1 -1
  26. package/dist/DonutLabelChartPro.js +31 -11
  27. package/dist/DonutLabelChartPro.js.map +1 -1
  28. package/dist/{EditorCard-1Z3UFd1D.js → EditorCard-DpSCsmZJ.js} +3 -3
  29. package/dist/{EditorCard-1Z3UFd1D.js.map → EditorCard-DpSCsmZJ.js.map} +1 -1
  30. package/dist/GranularitySelectFieldPro.js +97 -81
  31. package/dist/GranularitySelectFieldPro.js.map +1 -1
  32. package/dist/HeatMapPro.js +18 -10
  33. package/dist/HeatMapPro.js.map +1 -1
  34. package/dist/IconCalendarFilled-Bfm3jkzE.js +12 -0
  35. package/dist/IconCalendarFilled-Bfm3jkzE.js.map +1 -0
  36. package/dist/KpiChartNumberComparisonPro.js +25 -14
  37. package/dist/KpiChartNumberComparisonPro.js.map +1 -1
  38. package/dist/KpiChartNumberPro.js +23 -14
  39. package/dist/KpiChartNumberPro.js.map +1 -1
  40. package/dist/LineChartComparisonDefaultPro.js +37 -19
  41. package/dist/LineChartComparisonDefaultPro.js.map +1 -1
  42. package/dist/LineChartDefaultPro.js +21 -14
  43. package/dist/LineChartDefaultPro.js.map +1 -1
  44. package/dist/LineChartGroupedPro.js +25 -17
  45. package/dist/LineChartGroupedPro.js.map +1 -1
  46. package/dist/MultiSelectFieldPro.js +22 -16
  47. package/dist/MultiSelectFieldPro.js.map +1 -1
  48. package/dist/PieChartPro.js +23 -15
  49. package/dist/PieChartPro.js.map +1 -1
  50. package/dist/PivotTablePro.js +19 -11
  51. package/dist/PivotTablePro.js.map +1 -1
  52. package/dist/SingleSelectFieldPro.js +22 -16
  53. package/dist/SingleSelectFieldPro.js.map +1 -1
  54. package/dist/TableChartPaginated.js +62 -43
  55. package/dist/TableChartPaginated.js.map +1 -1
  56. package/dist/TableScrollable.js +324 -315
  57. package/dist/TableScrollable.js.map +1 -1
  58. package/dist/{bars.utils-CsJD9MNL.js → bars.utils-DJnFf-V0.js} +10 -9
  59. package/dist/bars.utils-DJnFf-V0.js.map +1 -0
  60. package/dist/{charts.utils-CUPowt7F.js → charts.utils-udVhj9f6.js} +321 -321
  61. package/dist/charts.utils-udVhj9f6.js.map +1 -0
  62. package/dist/{component.inputs.constants-CNdmawDt.js → component.inputs.constants-Ds7YpNhT.js} +35 -35
  63. package/dist/{component.inputs.constants-CNdmawDt.js.map → component.inputs.constants-Ds7YpNhT.js.map} +1 -1
  64. package/dist/components/charts/bars/BarChartDefaultHorizontalPro/index.d.ts +11 -12
  65. package/dist/components/charts/bars/BarChartDefaultHorizontalPro/index.d.ts.map +1 -1
  66. package/dist/components/charts/bars/BarChartDefaultPro/index.d.ts +11 -12
  67. package/dist/components/charts/bars/BarChartDefaultPro/index.d.ts.map +1 -1
  68. package/dist/components/charts/bars/BarChartGroupedHorizontalPro/index.d.ts +10 -11
  69. package/dist/components/charts/bars/BarChartGroupedHorizontalPro/index.d.ts.map +1 -1
  70. package/dist/components/charts/bars/BarChartGroupedPro/index.d.ts +10 -11
  71. package/dist/components/charts/bars/BarChartGroupedPro/index.d.ts.map +1 -1
  72. package/dist/components/charts/bars/BarChartStackedHorizontalPro/index.d.ts +10 -11
  73. package/dist/components/charts/bars/BarChartStackedHorizontalPro/index.d.ts.map +1 -1
  74. package/dist/components/charts/bars/BarChartStackedPro/index.d.ts +10 -11
  75. package/dist/components/charts/bars/BarChartStackedPro/index.d.ts.map +1 -1
  76. package/dist/components/charts/bars/bars.utils.d.ts +1 -1
  77. package/dist/components/charts/bars/bars.utils.d.ts.map +1 -1
  78. package/dist/components/charts/kpis/KpiChartNumberComparisonPro/index.d.ts +6 -7
  79. package/dist/components/charts/kpis/KpiChartNumberComparisonPro/index.d.ts.map +1 -1
  80. package/dist/components/charts/kpis/KpiChartNumberPro/index.d.ts +3 -4
  81. package/dist/components/charts/kpis/KpiChartNumberPro/index.d.ts.map +1 -1
  82. package/dist/components/charts/lines/LineChartComparisonDefaultPro/LineChartComparisonDefaultPro.utils.d.ts +3 -3
  83. package/dist/components/charts/lines/LineChartComparisonDefaultPro/LineChartComparisonDefaultPro.utils.d.ts.map +1 -1
  84. package/dist/components/charts/lines/LineChartComparisonDefaultPro/index.d.ts +12 -13
  85. package/dist/components/charts/lines/LineChartComparisonDefaultPro/index.d.ts.map +1 -1
  86. package/dist/components/charts/lines/LineChartDefaultPro/LineChartDefaultPro.utils.d.ts +1 -1
  87. package/dist/components/charts/lines/LineChartDefaultPro/LineChartDefaultPro.utils.d.ts.map +1 -1
  88. package/dist/components/charts/lines/LineChartDefaultPro/index.d.ts +10 -11
  89. package/dist/components/charts/lines/LineChartDefaultPro/index.d.ts.map +1 -1
  90. package/dist/components/charts/lines/LineChartGroupedPro/LineChartGroupedPro.utils.d.ts +1 -1
  91. package/dist/components/charts/lines/LineChartGroupedPro/LineChartGroupedPro.utils.d.ts.map +1 -1
  92. package/dist/components/charts/lines/LineChartGroupedPro/index.d.ts +10 -11
  93. package/dist/components/charts/lines/LineChartGroupedPro/index.d.ts.map +1 -1
  94. package/dist/components/charts/lines/lines.utils.d.ts +1 -1
  95. package/dist/components/charts/lines/lines.utils.d.ts.map +1 -1
  96. package/dist/components/charts/pies/DonutChartPro/index.d.ts.map +1 -1
  97. package/dist/components/charts/pies/DonutLabelChartPro/index.d.ts +1 -1
  98. package/dist/components/charts/pies/DonutLabelChartPro/index.d.ts.map +1 -1
  99. package/dist/components/charts/pies/PieChartPro/index.d.ts.map +1 -1
  100. package/dist/components/charts/pies/pies.types.d.ts +7 -8
  101. package/dist/components/charts/pies/pies.types.d.ts.map +1 -1
  102. package/dist/components/charts/shared/ChartCard/ChartCard.d.ts +1 -1
  103. package/dist/components/charts/shared/ChartCard/ChartCard.d.ts.map +1 -1
  104. package/dist/components/charts/tables/HeatMapPro/index.d.ts +3 -4
  105. package/dist/components/charts/tables/HeatMapPro/index.d.ts.map +1 -1
  106. package/dist/components/charts/tables/PivotTablePro/index.d.ts +2 -3
  107. package/dist/components/charts/tables/PivotTablePro/index.d.ts.map +1 -1
  108. package/dist/components/charts/tables/TableChartPaginated/index.d.ts +6 -8
  109. package/dist/components/charts/tables/TableChartPaginated/index.d.ts.map +1 -1
  110. package/dist/components/charts/tables/TableScrollable/TableScrollable.utils.d.ts +1 -1
  111. package/dist/components/charts/tables/TableScrollable/index.d.ts +6 -8
  112. package/dist/components/charts/tables/TableScrollable/index.d.ts.map +1 -1
  113. package/dist/components/editors/ComparisonPeriodSelectFieldPro/index.d.ts +2 -3
  114. package/dist/components/editors/ComparisonPeriodSelectFieldPro/index.d.ts.map +1 -1
  115. package/dist/components/editors/GranularitySelectFieldPro/GranularitySelectFieldPro.utils.d.ts.map +1 -1
  116. package/dist/components/editors/GranularitySelectFieldPro/index.d.ts +6 -6
  117. package/dist/components/editors/GranularitySelectFieldPro/index.d.ts.map +1 -1
  118. package/dist/components/editors/MultiSelectFieldPro/index.d.ts +4 -5
  119. package/dist/components/editors/MultiSelectFieldPro/index.d.ts.map +1 -1
  120. package/dist/components/editors/SingleSelectFieldPro/index.d.ts +4 -5
  121. package/dist/components/editors/SingleSelectFieldPro/index.d.ts.map +1 -1
  122. package/dist/components/editors/dates/DateRangePickerCustomPro/index.d.ts +3 -4
  123. package/dist/components/editors/dates/DateRangePickerCustomPro/index.d.ts.map +1 -1
  124. package/dist/components/editors/dates/DateRangePickerPresetsPro/index.d.ts +3 -4
  125. package/dist/components/editors/dates/DateRangePickerPresetsPro/index.d.ts.map +1 -1
  126. package/dist/components/preview.data.constants.d.ts +18 -0
  127. package/dist/components/preview.data.constants.d.ts.map +1 -0
  128. package/dist/embeddable-components.json +38 -13
  129. package/dist/embeddable-theme-0137e.js +3 -3
  130. package/dist/{formatter.utils-BiWZBhcE.js → formatter.utils-tS15PLXn.js} +2 -2
  131. package/dist/{formatter.utils-BiWZBhcE.js.map → formatter.utils-tS15PLXn.js.map} +1 -1
  132. package/dist/index--Dbq1zrZ.js +31 -0
  133. package/dist/index--Dbq1zrZ.js.map +1 -0
  134. package/dist/index-APU1GD5M.js +166 -0
  135. package/dist/index-APU1GD5M.js.map +1 -0
  136. package/dist/index-BMiribI6.js +72 -0
  137. package/dist/index-BMiribI6.js.map +1 -0
  138. package/dist/index-BUk63KEk.js +87 -0
  139. package/dist/index-BUk63KEk.js.map +1 -0
  140. package/dist/index-BWbZ-eYD.js +83 -0
  141. package/dist/index-BWbZ-eYD.js.map +1 -0
  142. package/dist/index-Bqp4yCd3.js +75 -0
  143. package/dist/index-Bqp4yCd3.js.map +1 -0
  144. package/dist/index-BsWftigv.js +123 -0
  145. package/dist/index-BsWftigv.js.map +1 -0
  146. package/dist/{index-CSoASUv1.js → index-CBgU-nlM.js} +5 -5
  147. package/dist/index-CBgU-nlM.js.map +1 -0
  148. package/dist/{index-tjFCL7Y-.js → index-CCdQwMMN.js} +6 -6
  149. package/dist/index-CCdQwMMN.js.map +1 -0
  150. package/dist/{index-DoFkdyxp.js → index-CDtF3MO_.js} +45 -36
  151. package/dist/index-CDtF3MO_.js.map +1 -0
  152. package/dist/{index-Du2TCRQq.js → index-CTC3YNmw.js} +5 -5
  153. package/dist/index-CTC3YNmw.js.map +1 -0
  154. package/dist/index-CbL0nET2.js +63 -0
  155. package/dist/index-CbL0nET2.js.map +1 -0
  156. package/dist/index-D6h8s36F.js +84 -0
  157. package/dist/index-D6h8s36F.js.map +1 -0
  158. package/dist/index-D9J4M9sd.js +82 -0
  159. package/dist/index-D9J4M9sd.js.map +1 -0
  160. package/dist/{index-yOOAOJHG.js → index-DtGheuiZ.js} +32 -31
  161. package/dist/index-DtGheuiZ.js.map +1 -0
  162. package/dist/index-DxpfQVmG.js +113 -0
  163. package/dist/index-DxpfQVmG.js.map +1 -0
  164. package/dist/index-DxpjYqqB.js +63 -0
  165. package/dist/index-DxpjYqqB.js.map +1 -0
  166. package/dist/index-DzPftkGV.js +73 -0
  167. package/dist/index-DzPftkGV.js.map +1 -0
  168. package/dist/index-Nj7bJ8tg.js +161 -0
  169. package/dist/index-Nj7bJ8tg.js.map +1 -0
  170. package/dist/index-h3GKi8po.js +332 -0
  171. package/dist/index-h3GKi8po.js.map +1 -0
  172. package/dist/index-t7YCtFvf.js +97 -0
  173. package/dist/index-t7YCtFvf.js.map +1 -0
  174. package/dist/index.js +29 -29
  175. package/dist/lines.utils-COGf_F0b.js +40 -0
  176. package/dist/lines.utils-COGf_F0b.js.map +1 -0
  177. package/dist/{pies.utils-DCy5LWcY.js → pies.utils-Dgs6TAkX.js} +12 -12
  178. package/dist/{pies.utils-DCy5LWcY.js.map → pies.utils-Dgs6TAkX.js.map} +1 -1
  179. package/dist/preview.data.constants-tDMYNi0n.js +71 -0
  180. package/dist/preview.data.constants-tDMYNi0n.js.map +1 -0
  181. package/dist/{tables.utils-8OmfcPmH.js → tables.utils-33eWJN_a.js} +5 -9
  182. package/dist/tables.utils-33eWJN_a.js.map +1 -0
  183. package/dist/theme/formatter/formatter.constants.d.ts.map +1 -1
  184. package/dist/{timeRange.utils-81KUBS9O.js → timeRange.utils-Dz0fdD_b.js} +2 -2
  185. package/dist/{timeRange.utils-81KUBS9O.js.map → timeRange.utils-Dz0fdD_b.js.map} +1 -1
  186. package/package.json +5 -5
  187. package/dist/ChartCard-D_A88_bS.js +0 -116
  188. package/dist/ChartCard-D_A88_bS.js.map +0 -1
  189. package/dist/bars.utils-CsJD9MNL.js.map +0 -1
  190. package/dist/charts.utils-CUPowt7F.js.map +0 -1
  191. package/dist/index-1vsLONt_.js +0 -111
  192. package/dist/index-1vsLONt_.js.map +0 -1
  193. package/dist/index-8PpbF7SA.js +0 -82
  194. package/dist/index-8PpbF7SA.js.map +0 -1
  195. package/dist/index-B3m93Z4r.js +0 -81
  196. package/dist/index-B3m93Z4r.js.map +0 -1
  197. package/dist/index-BBcQWvRk.js +0 -159
  198. package/dist/index-BBcQWvRk.js.map +0 -1
  199. package/dist/index-BOI6FOwo.js +0 -62
  200. package/dist/index-BOI6FOwo.js.map +0 -1
  201. package/dist/index-Boogtc12.js +0 -71
  202. package/dist/index-Boogtc12.js.map +0 -1
  203. package/dist/index-BuBn1ktN.js +0 -83
  204. package/dist/index-BuBn1ktN.js.map +0 -1
  205. package/dist/index-CQ_mo5Eg.js +0 -330
  206. package/dist/index-CQ_mo5Eg.js.map +0 -1
  207. package/dist/index-CSoASUv1.js.map +0 -1
  208. package/dist/index-CVJKjJGv.js +0 -72
  209. package/dist/index-CVJKjJGv.js.map +0 -1
  210. package/dist/index-Cv4JGkHO.js +0 -95
  211. package/dist/index-Cv4JGkHO.js.map +0 -1
  212. package/dist/index-D5CZAWnJ.js +0 -128
  213. package/dist/index-D5CZAWnJ.js.map +0 -1
  214. package/dist/index-DVUJikiN.js +0 -73
  215. package/dist/index-DVUJikiN.js.map +0 -1
  216. package/dist/index-Dhzhtagm.js +0 -30
  217. package/dist/index-Dhzhtagm.js.map +0 -1
  218. package/dist/index-DkmPuuV8.js +0 -84
  219. package/dist/index-DkmPuuV8.js.map +0 -1
  220. package/dist/index-DoFkdyxp.js.map +0 -1
  221. package/dist/index-Dp7Av-Oy.js +0 -62
  222. package/dist/index-Dp7Av-Oy.js.map +0 -1
  223. package/dist/index-Du2TCRQq.js.map +0 -1
  224. package/dist/index-XTTodJI4.js +0 -163
  225. package/dist/index-XTTodJI4.js.map +0 -1
  226. package/dist/index-tjFCL7Y-.js.map +0 -1
  227. package/dist/index-yOOAOJHG.js.map +0 -1
  228. package/dist/lines.utils-CFEUUo4k.js +0 -40
  229. package/dist/lines.utils-CFEUUo4k.js.map +0 -1
  230. package/dist/tables.utils-8OmfcPmH.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"formatter.constants.d.ts","sourceRoot":"","sources":["../../../src/theme/formatter/formatter.constants.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,cAAc,EAIf,MAAM,mBAAmB,CAAC;AA+J3B,eAAO,MAAM,wBAAwB,EAAE,cAatC,CAAC"}
1
+ {"version":3,"file":"formatter.constants.d.ts","sourceRoot":"","sources":["../../../src/theme/formatter/formatter.constants.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,cAAc,EAIf,MAAM,mBAAmB,CAAC;AAoK3B,eAAO,MAAM,wBAAwB,EAAE,cAatC,CAAC"}
@@ -1,4 +1,4 @@
1
- import { c as i } from "./component.inputs.constants-CNdmawDt.js";
1
+ import { c as i } from "./component.inputs.constants-Ds7YpNhT.js";
2
2
  const f = (o, t, s) => {
3
3
  var d;
4
4
  if (!o || !t)
@@ -17,4 +17,4 @@ export {
17
17
  v as a,
18
18
  f as g
19
19
  };
20
- //# sourceMappingURL=timeRange.utils-81KUBS9O.js.map
20
+ //# sourceMappingURL=timeRange.utils-Dz0fdD_b.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"timeRange.utils-81KUBS9O.js","sources":["../src/components/utils/timeRange.utils.ts"],"sourcesContent":["import { TimeRange } from '@embeddable.com/core';\nimport { Theme } from '../../theme/theme.types';\nimport { resolveI18nString } from '../component.utils';\n\nexport const getComparisonPeriodDateRange = (\n primaryDateRange: TimeRange,\n comparisonPeriod: string | undefined,\n theme: Theme,\n): TimeRange => {\n if (!primaryDateRange || !comparisonPeriod) {\n return undefined;\n }\n\n const primaryDateRangeRange = primaryDateRange?.relativeTimeString\n ? theme.defaults.dateRangesOptions\n .find((option) => option.value === primaryDateRange?.relativeTimeString)\n ?.getRange()\n : primaryDateRange;\n\n const comparisonPeriodOption = theme.defaults.comparisonPeriodsOptions.find(\n (option) => option.value === comparisonPeriod,\n );\n\n return comparisonPeriodOption?.getRange(primaryDateRangeRange);\n};\n\nexport const getComparisonPeriodLabel = (\n comparisonPeriod: string | undefined,\n theme: Theme,\n): string => {\n const option = theme.defaults.comparisonPeriodsOptions.find(\n (option) => option.value === comparisonPeriod,\n );\n return option ? resolveI18nString(option.label) : '';\n};\n"],"names":["getComparisonPeriodDateRange","primaryDateRange","comparisonPeriod","theme","primaryDateRangeRange","_a","option","comparisonPeriodOption","getComparisonPeriodLabel","resolveI18nString"],"mappings":";AAIO,MAAMA,IAA+B,CAC1CC,GACAC,GACAC,MACc;;AACd,MAAI,CAACF,KAAoB,CAACC;AACxB;AAGF,QAAME,IAAwBH,KAAA,QAAAA,EAAkB,sBAC5CI,IAAAF,EAAM,SAAS,kBACZ,KAAK,CAACG,MAAWA,EAAO,WAAUL,KAAA,gBAAAA,EAAkB,mBAAkB,MADzE,gBAAAI,EAEI,aACJJ,GAEEM,IAAyBJ,EAAM,SAAS,yBAAyB;AAAA,IACrE,CAACG,MAAWA,EAAO,UAAUJ;AAAA,EAAA;AAG/B,SAAOK,KAAA,gBAAAA,EAAwB,SAASH;AAC1C,GAEaI,IAA2B,CACtCN,GACAC,MACW;AACX,QAAMG,IAASH,EAAM,SAAS,yBAAyB;AAAA,IACrD,CAACG,MAAWA,EAAO,UAAUJ;AAAA,EAAA;AAE/B,SAAOI,IAASG,EAAkBH,EAAO,KAAK,IAAI;AACpD;"}
1
+ {"version":3,"file":"timeRange.utils-Dz0fdD_b.js","sources":["../src/components/utils/timeRange.utils.ts"],"sourcesContent":["import { TimeRange } from '@embeddable.com/core';\nimport { Theme } from '../../theme/theme.types';\nimport { resolveI18nString } from '../component.utils';\n\nexport const getComparisonPeriodDateRange = (\n primaryDateRange: TimeRange,\n comparisonPeriod: string | undefined,\n theme: Theme,\n): TimeRange => {\n if (!primaryDateRange || !comparisonPeriod) {\n return undefined;\n }\n\n const primaryDateRangeRange = primaryDateRange?.relativeTimeString\n ? theme.defaults.dateRangesOptions\n .find((option) => option.value === primaryDateRange?.relativeTimeString)\n ?.getRange()\n : primaryDateRange;\n\n const comparisonPeriodOption = theme.defaults.comparisonPeriodsOptions.find(\n (option) => option.value === comparisonPeriod,\n );\n\n return comparisonPeriodOption?.getRange(primaryDateRangeRange);\n};\n\nexport const getComparisonPeriodLabel = (\n comparisonPeriod: string | undefined,\n theme: Theme,\n): string => {\n const option = theme.defaults.comparisonPeriodsOptions.find(\n (option) => option.value === comparisonPeriod,\n );\n return option ? resolveI18nString(option.label) : '';\n};\n"],"names":["getComparisonPeriodDateRange","primaryDateRange","comparisonPeriod","theme","primaryDateRangeRange","_a","option","comparisonPeriodOption","getComparisonPeriodLabel","resolveI18nString"],"mappings":";AAIO,MAAMA,IAA+B,CAC1CC,GACAC,GACAC,MACc;;AACd,MAAI,CAACF,KAAoB,CAACC;AACxB;AAGF,QAAME,IAAwBH,KAAA,QAAAA,EAAkB,sBAC5CI,IAAAF,EAAM,SAAS,kBACZ,KAAK,CAACG,MAAWA,EAAO,WAAUL,KAAA,gBAAAA,EAAkB,mBAAkB,MADzE,gBAAAI,EAEI,aACJJ,GAEEM,IAAyBJ,EAAM,SAAS,yBAAyB;AAAA,IACrE,CAACG,MAAWA,EAAO,UAAUJ;AAAA,EAAA;AAG/B,SAAOK,KAAA,gBAAAA,EAAwB,SAASH;AAC1C,GAEaI,IAA2B,CACtCN,GACAC,MACW;AACX,QAAMG,IAASH,EAAM,SAAS,yBAAyB;AAAA,IACrD,CAACG,MAAWA,EAAO,UAAUJ;AAAA,EAAA;AAE/B,SAAOI,IAASG,EAAkBH,EAAO,KAAK,IAAI;AACpD;"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@embeddable.com/remarkable-pro",
3
3
  "author": "embeddable (https://embeddable.com)",
4
- "version": "0.0.21",
4
+ "version": "0.0.23",
5
5
  "repository": {
6
6
  "type": "git",
7
7
  "url": "https://github.com/embeddable-hq/remarkable-pro"
@@ -57,8 +57,8 @@
57
57
  },
58
58
  "dependencies": {
59
59
  "@changesets/cli": "^2.29.6",
60
- "@embeddable.com/core": "^2.13.2",
61
- "@embeddable.com/react": "^2.12.2",
60
+ "@embeddable.com/core": "^2.13.4",
61
+ "@embeddable.com/react": "^2.13.0",
62
62
  "@embeddable.com/remarkable-ui": "^2.0.28",
63
63
  "@tabler/icons-react": "^3.34.1",
64
64
  "chart.js": "^4.5.0",
@@ -75,8 +75,8 @@
75
75
  "xlsx": "^0.18.5"
76
76
  },
77
77
  "devDependencies": {
78
- "@embeddable.com/sdk-core": "^4.1.5",
79
- "@embeddable.com/sdk-react": "^4.0.9",
78
+ "@embeddable.com/sdk-core": "^4.1.7",
79
+ "@embeddable.com/sdk-react": "^4.1.0",
80
80
  "@eslint/css": "^0.13.0",
81
81
  "@types/chroma-js": "^3.1.1",
82
82
  "@types/react": "^19.1.9",
@@ -1,116 +0,0 @@
1
- import { s as I, j as e, Q as N, x as S, y as L, z as k, A as D, n as M, o as H, R as _, p as F, U as T, q as f } from "./Color.type.emb-Dkh_ZrO6.js";
2
- import j, { useRef as b } from "react";
3
- import { useTheme as p } from "@embeddable.com/react";
4
- import { a as v, i as d, I as w } from "./component.inputs.constants-CNdmawDt.js";
5
- /**
6
- * @license @tabler/icons-react v3.36.1 - MIT
7
- *
8
- * This source code is licensed under the MIT license.
9
- * See the LICENSE file in the root directory of this source tree.
10
- */
11
- const A = [["path", { d: "M11 12a1 1 0 1 0 2 0a1 1 0 1 0 -2 0", key: "svg-0" }], ["path", { d: "M11 19a1 1 0 1 0 2 0a1 1 0 1 0 -2 0", key: "svg-1" }], ["path", { d: "M11 5a1 1 0 1 0 2 0a1 1 0 1 0 -2 0", key: "svg-2" }]], E = I("outline", "dots-vertical", "DotsVertical", A), O = "_chartCard_1c8il_1", P = "_chartCardHeader_1c8il_6", U = "_hidden_1c8il_10", V = "_chartCardRightContent_1c8il_14", i = {
12
- chartCard: O,
13
- chartCardHeader: P,
14
- hidden: U,
15
- chartCardRightContent: V
16
- }, $ = "_loading_1hx4f_7", q = {
17
- loading: $
18
- }, y = () => /* @__PURE__ */ e.jsx(N, { className: q.loading }), z = "_list_mwshn_1", B = {
19
- list: z
20
- };
21
- function K({ src: n, className: a, ...r }) {
22
- const t = decodeURIComponent(n.replace(/^data:image\/svg\+xml,/, ""));
23
- return /* @__PURE__ */ e.jsx("div", { className: a, ...r, dangerouslySetInnerHTML: { __html: t } });
24
- }
25
- const Q = (n) => {
26
- const a = p();
27
- v(a);
28
- const [r, t] = j.useState(!1), o = a.defaults.chartMenuOptions ?? [];
29
- if (o.length === 0)
30
- return null;
31
- const l = (s) => {
32
- setTimeout(() => {
33
- Promise.resolve(s()).finally(() => t(!1));
34
- }, 100);
35
- }, h = (s) => {
36
- if (t(!0), n.onCustomDownload) {
37
- n.onCustomDownload((c) => l(() => s(c)));
38
- return;
39
- }
40
- l(() => s({ ...n, theme: a }));
41
- };
42
- return /* @__PURE__ */ e.jsx(
43
- S,
44
- {
45
- side: "bottom",
46
- align: "end",
47
- triggerComponent: r ? /* @__PURE__ */ e.jsx(y, {}) : /* @__PURE__ */ e.jsx(D, { icon: E }),
48
- children: /* @__PURE__ */ e.jsx(L, { className: B.list, autoFocus: !0, children: o.map((s, c) => {
49
- const m = d.t(s.labelKey);
50
- return /* @__PURE__ */ e.jsx(
51
- k,
52
- {
53
- label: m,
54
- onClick: () => h(s.onClick),
55
- startIcon: s.iconSrc ? /* @__PURE__ */ e.jsx(K, { src: s.iconSrc }) : void 0
56
- },
57
- c
58
- );
59
- }) })
60
- }
61
- );
62
- }, G = j.forwardRef(
63
- ({
64
- title: n,
65
- subtitle: a,
66
- children: r,
67
- data: t,
68
- errorMessage: o,
69
- dimensionsAndMeasures: l = [],
70
- hideMenu: h = !1,
71
- onCustomDownload: s
72
- }, c) => {
73
- var x;
74
- const m = p();
75
- v(m);
76
- const u = b(null), g = !!(t != null && t.data && ((x = t.data) == null ? void 0 : x.length) > 0), C = !t || (t == null ? void 0 : t.isLoading), R = () => C && !g ? /* @__PURE__ */ e.jsx(T, {}) : o ? /* @__PURE__ */ e.jsx(
77
- f,
78
- {
79
- variant: "error",
80
- icon: w,
81
- title: d.t("charts.errorTitle"),
82
- message: o
83
- }
84
- ) : g ? r : /* @__PURE__ */ e.jsx(
85
- f,
86
- {
87
- title: d.t("charts.emptyTitle"),
88
- message: d.t("charts.emptyMessage")
89
- }
90
- );
91
- return /* @__PURE__ */ e.jsxs(M, { className: i.chartCard, children: [
92
- h ? null : /* @__PURE__ */ e.jsxs(e.Fragment, { children: [
93
- /* @__PURE__ */ e.jsx("div", { className: i.chartCardHeader, children: /* @__PURE__ */ e.jsx(H, { title: n, subtitle: a }) }),
94
- /* @__PURE__ */ e.jsxs("div", { className: i.chartCardRightContent, children: [
95
- /* @__PURE__ */ e.jsx("div", { className: _(!C && i.hidden), children: /* @__PURE__ */ e.jsx(y, {}) }),
96
- /* @__PURE__ */ e.jsx("div", { className: _(C && i.hidden), children: /* @__PURE__ */ e.jsx(
97
- Q,
98
- {
99
- title: n,
100
- containerRef: u,
101
- data: t == null ? void 0 : t.data,
102
- dimensionsAndMeasures: l,
103
- onCustomDownload: s
104
- }
105
- ) })
106
- ] })
107
- ] }),
108
- /* @__PURE__ */ e.jsx(F, { ref: s ? c : u, children: R() })
109
- ] });
110
- }
111
- );
112
- G.displayName = "ChartCard";
113
- export {
114
- G as C
115
- };
116
- //# sourceMappingURL=ChartCard-D_A88_bS.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ChartCard-D_A88_bS.js","sources":["../node_modules/@tabler/icons-react/dist/esm/icons/IconDotsVertical.mjs","../src/components/charts/shared/ChartCard/ChartCardLoading/ChartCardLoading.tsx","../src/components/charts/shared/ChartCard/ChartCardMenuPro/ChartCardMenuPro.tsx","../src/components/charts/shared/ChartCard/ChartCard.tsx"],"sourcesContent":["/**\n * @license @tabler/icons-react v3.36.1 - MIT\n *\n * This source code is licensed under the MIT license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createReactComponent from '../createReactComponent.mjs';\n\nconst __iconNode = [[\"path\", { \"d\": \"M11 12a1 1 0 1 0 2 0a1 1 0 1 0 -2 0\", \"key\": \"svg-0\" }], [\"path\", { \"d\": \"M11 19a1 1 0 1 0 2 0a1 1 0 1 0 -2 0\", \"key\": \"svg-1\" }], [\"path\", { \"d\": \"M11 5a1 1 0 1 0 2 0a1 1 0 1 0 -2 0\", \"key\": \"svg-2\" }]];\nconst IconDotsVertical = createReactComponent(\"outline\", \"dots-vertical\", \"DotsVertical\", __iconNode);\n\nexport { __iconNode, IconDotsVertical as default };\n//# sourceMappingURL=IconDotsVertical.mjs.map\n","import { IconLoader2 } from '@tabler/icons-react';\nimport styles from './ChartCardLoading.module.css';\n\nexport const ChartCardLoading = () => <IconLoader2 className={styles.loading} />;\n","import { IconDotsVertical } from '@tabler/icons-react';\nimport React from 'react';\nimport { useTheme } from '@embeddable.com/react';\nimport { ChartCardLoading } from '../ChartCardLoading/ChartCardLoading';\nimport { i18n, i18nSetup } from '../../../../../theme/i18n/i18n';\nimport { Theme } from '../../../../../theme/theme.types';\nimport {\n Dropdown,\n ActionIcon,\n SelectFieldContent,\n SelectListOption,\n} from '@embeddable.com/remarkable-ui';\nimport styles from './ChartCardMenuPro.module.css';\nimport { ChartCardMenuOptionOnClickProps } from '../../../../../theme/defaults/defaults.ChartCardMenu.constants';\n\ntype InlineSvgFromDataProps = React.HTMLAttributes<HTMLSpanElement> & {\n src: string;\n};\n\nexport function InlineSvgFromData({ src, className, ...rest }: InlineSvgFromDataProps) {\n // Remove prefix and URL-decode the SVG markup\n const svgMarkup = decodeURIComponent(src.replace(/^data:image\\/svg\\+xml,/, ''));\n\n return <div className={className} {...rest} dangerouslySetInnerHTML={{ __html: svgMarkup }} />;\n}\n\ntype ChartCardMenuProProps = Omit<ChartCardMenuOptionOnClickProps, 'theme'>;\n\nexport const ChartCardMenuPro: React.FC<ChartCardMenuProProps> = (props) => {\n const theme: Theme = useTheme() as Theme;\n i18nSetup(theme);\n\n const [isLoading, setIsLoading] = React.useState(false);\n\n const options = theme.defaults.chartMenuOptions ?? [];\n\n if (options.length === 0) {\n return null;\n }\n\n const startAction = (onClick: () => void | Promise<void>) => {\n setTimeout(() => {\n Promise.resolve(onClick()).finally(() => setIsLoading(false));\n }, 100);\n };\n\n const handleExport = (onClick: (props: ChartCardMenuOptionOnClickProps) => void) => {\n setIsLoading(true);\n if (props.onCustomDownload) {\n props.onCustomDownload((args) => startAction(() => onClick(args)));\n return;\n }\n startAction(() => onClick({ ...props, theme }));\n };\n\n return (\n <Dropdown\n side=\"bottom\"\n align=\"end\"\n triggerComponent={isLoading ? <ChartCardLoading /> : <ActionIcon icon={IconDotsVertical} />}\n >\n <SelectFieldContent className={styles.list} autoFocus>\n {options.map((option, index) => {\n const label = i18n.t(option.labelKey);\n\n return (\n <SelectListOption\n key={index}\n label={label}\n onClick={() => handleExport(option.onClick)}\n startIcon={option.iconSrc ? <InlineSvgFromData src={option.iconSrc} /> : undefined}\n />\n );\n })}\n </SelectFieldContent>\n </Dropdown>\n );\n};\n","import React, { CSSProperties, useRef } from 'react';\nimport { IconAlertCircle } from '@tabler/icons-react';\nimport {\n Card,\n CardContent,\n CardFeedback,\n CardHeader,\n Skeleton,\n} from '@embeddable.com/remarkable-ui';\nimport styles from './ChartCard.module.css';\nimport { DataResponse, Dimension, Measure } from '@embeddable.com/core';\nimport { useTheme } from '@embeddable.com/react';\nimport { ChartCardLoading } from './ChartCardLoading/ChartCardLoading';\nimport { ChartCardMenuPro } from './ChartCardMenuPro/ChartCardMenuPro';\nimport { Theme } from '../../../../theme/theme.types';\nimport { i18n, i18nSetup } from '../../../../theme/i18n/i18n';\nimport clsx from 'clsx';\nimport { ChartCardMenuOptionOnClickProps } from '../../../../theme/defaults/defaults.ChartCardMenu.constants';\n\nexport type ChartCardHeaderProps = {\n title?: string;\n subtitle?: string;\n hideMenu?: boolean;\n};\n\ntype ChartCardProps = {\n children: React.ReactNode;\n data: DataResponse;\n errorMessage?: string;\n style?: CSSProperties;\n dimensionsAndMeasures?: (Dimension | Measure)[];\n onCustomDownload?: (props: (props: ChartCardMenuOptionOnClickProps) => void) => void;\n} & ChartCardHeaderProps;\n\nexport const ChartCard = React.forwardRef<HTMLDivElement, ChartCardProps>(\n (\n {\n title,\n subtitle,\n children,\n data,\n errorMessage,\n dimensionsAndMeasures = [],\n hideMenu = false,\n onCustomDownload,\n },\n ref,\n ) => {\n const theme: Theme = useTheme() as Theme;\n i18nSetup(theme);\n\n const chartRef = useRef<HTMLDivElement>(null);\n\n const hasData = Boolean(data?.data && data.data?.length > 0);\n\n const isLoading = !data || data?.isLoading;\n\n const getDisplay = () => {\n if (isLoading && !hasData) {\n return <Skeleton />;\n }\n\n if (errorMessage) {\n return (\n <CardFeedback\n variant=\"error\"\n icon={IconAlertCircle}\n title={i18n.t('charts.errorTitle')}\n message={errorMessage}\n />\n );\n }\n\n if (!hasData) {\n return (\n <CardFeedback\n title={i18n.t('charts.emptyTitle')}\n message={i18n.t('charts.emptyMessage')}\n />\n );\n }\n\n return children;\n };\n\n return (\n <Card className={styles.chartCard}>\n {hideMenu ? null : (\n <>\n <div className={styles.chartCardHeader}>\n <CardHeader title={title} subtitle={subtitle} />\n </div>\n <div className={styles.chartCardRightContent}>\n <div className={clsx(!isLoading && styles.hidden)}>\n <ChartCardLoading />\n </div>\n <div className={clsx(isLoading && styles.hidden)}>\n <ChartCardMenuPro\n title={title}\n containerRef={chartRef}\n data={data?.data}\n dimensionsAndMeasures={dimensionsAndMeasures}\n onCustomDownload={onCustomDownload}\n />\n </div>\n </div>\n </>\n )}\n\n <CardContent ref={onCustomDownload ? ref : chartRef}>{getDisplay()}</CardContent>\n </Card>\n );\n },\n);\n\nChartCard.displayName = 'ChartCard';\n"],"names":["__iconNode","IconDotsVertical","createReactComponent","ChartCardLoading","jsx","IconLoader2","styles","InlineSvgFromData","src","className","rest","svgMarkup","ChartCardMenuPro","props","theme","useTheme","i18nSetup","isLoading","setIsLoading","React","options","startAction","onClick","handleExport","args","Dropdown","ActionIcon","SelectFieldContent","option","index","label","i18n","SelectListOption","ChartCard","title","subtitle","children","data","errorMessage","dimensionsAndMeasures","hideMenu","onCustomDownload","ref","chartRef","useRef","hasData","_a","getDisplay","Skeleton","CardFeedback","IconAlertCircle","jsxs","Card","Fragment","CardHeader","clsx","CardContent"],"mappings":"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","x_google_ignoreList":[0]}
@@ -1 +0,0 @@
1
- {"version":3,"file":"bars.utils-CsJD9MNL.js","sources":["../src/components/charts/bars/bars.utils.ts"],"sourcesContent":["import { CUBE_DIMENSION_TYPE_TIME, DataResponse, Dimension, Measure } from '@embeddable.com/core';\nimport { Theme } from '../../../theme/theme.types';\nimport { remarkableTheme } from '../../../theme/theme.constants';\nimport { ChartData, ChartOptions } from 'chart.js';\nimport { getThemeFormatter } from '../../../theme/formatter/formatter.utils';\nimport { groupTailAsOther } from '../charts.utils';\nimport { getColor } from '../../../theme/styles/styles.utils';\nimport { getChartColors, getChartContrastColors } from '@embeddable.com/remarkable-ui';\nimport { getObjectStableKey } from '../../../utils.ts/object.utils';\nimport { Context } from 'chartjs-plugin-datalabels';\n\nexport const getBarStackedChartProData = (\n props: {\n data: DataResponse['data'];\n dimension: Dimension;\n groupDimension: Dimension;\n measure: Measure;\n },\n theme: Theme,\n): ChartData<'bar'> => {\n const themeFormatter = getThemeFormatter(theme);\n const { data = [], dimension, groupDimension, measure } = props;\n\n const axis = [...new Set(data.map((d) => d[dimension.name]).filter((d) => d != null))].sort();\n const groupDimensionName = `${groupDimension.name}${groupDimension.nativeType === CUBE_DIMENSION_TYPE_TIME && groupDimension.inputs?.granularity ? `.${groupDimension.inputs.granularity}` : ''}`;\n const groupBy = [...new Set(data.map((d) => d[groupDimensionName]))].filter((d) => d != null);\n\n const themeKey = getObjectStableKey(theme);\n const chartContrastColors = getChartContrastColors();\n const datasets = groupBy.map((groupByItem, index) => {\n const backgroundColor = getColor(\n `${themeKey}.charts.backgroundColors`,\n `${groupDimension.name}.${groupByItem}`,\n theme.charts.backgroundColors ?? chartContrastColors,\n index,\n );\n\n const borderColor = getColor(\n `${themeKey}.charts.borderColors`,\n `${groupDimension.name}.${groupByItem}`,\n theme.charts.borderColors ?? chartContrastColors,\n index,\n );\n\n return {\n label: themeFormatter.data(groupDimension, groupByItem),\n rawLabel: groupByItem,\n backgroundColor,\n borderColor,\n data: axis.map((axisItem) => {\n const record = data.find(\n (d) => d[groupDimensionName] === groupByItem && d[dimension.name] === axisItem,\n );\n return record ? Number(record[measure.name]) : 0;\n }),\n };\n });\n\n return {\n labels: axis,\n datasets,\n };\n};\n\nexport const getBarChartProData = (\n props: {\n data: DataResponse['data'];\n dimension: Dimension;\n measures: Measure[];\n maxItems?: number;\n },\n theme: Theme = remarkableTheme,\n): ChartData<'bar'> => {\n if (!props.data) {\n return {\n labels: [],\n datasets: [{ data: [] }],\n };\n }\n\n const themeFormatter = getThemeFormatter(theme);\n const themeKey = getObjectStableKey(theme);\n const groupedData = groupTailAsOther(props.data, props.dimension, props.measures, props.maxItems);\n const chartColors = getChartColors();\n\n return {\n labels: groupedData.map((item) => {\n return item[props.dimension.name];\n }),\n datasets: props.measures.map((measure, index) => {\n const backgroundColor = getColor(\n `${themeKey}.charts.backgroundColors`,\n measure.name,\n theme.charts.backgroundColors ?? chartColors,\n index,\n );\n\n const borderColor = getColor(\n `${themeKey}.charts.borderColors`,\n measure.name,\n theme.charts.borderColors ?? chartColors,\n index,\n );\n\n return {\n label: themeFormatter.dimensionOrMeasureTitle(measure),\n data: groupedData.map((item) => item[measure.name] ?? 0),\n backgroundColor,\n borderColor,\n };\n }),\n };\n};\n\nconst getBarChartProDatalabelTotalFormatter = (\n context: Context,\n formatter: (value: number) => string,\n) => {\n const { datasets } = context.chart.data;\n const i = context.dataIndex;\n\n const total = datasets.reduce((sum, ds) => {\n const val = ds.data[i] as number;\n return sum + (val || 0);\n }, 0);\n\n return formatter(total);\n};\n\nexport const getBarChartProOptions = (\n options: {\n onBarClicked: (args: {\n axisDimensionValue: string | null;\n groupingDimensionValue: string | null;\n }) => void;\n measures: Measure[];\n dimension: Dimension;\n horizontal: boolean;\n data: ChartData<'bar'>;\n },\n theme: Theme,\n): Partial<ChartOptions<'bar'>> => {\n const { onBarClicked, measures, dimension, horizontal, data } = options;\n\n const themeFormatter = getThemeFormatter(theme);\n return {\n plugins: {\n legend: { position: theme.charts.legendPosition ?? 'bottom' },\n datalabels: {\n labels: {\n total: {\n formatter: (_value: string | number, context: Context) =>\n getBarChartProDatalabelTotalFormatter(context, (value: number) =>\n themeFormatter.data(measures[0]!, value),\n ),\n },\n value: {\n formatter: (value: string | number, context) => {\n const measure = measures[context.datasetIndex % measures.length]!;\n return themeFormatter.data(measure, value);\n },\n },\n },\n },\n tooltip: {\n callbacks: {\n title: (context) => {\n const label = context[0]?.label;\n return themeFormatter.data(dimension, label);\n },\n label: (context) => {\n const measure = measures[context.datasetIndex % measures.length]!;\n const raw = context.raw as number;\n return `${themeFormatter.data(dimension, context.dataset.label) || ''}: ${themeFormatter.data(measure, raw)}`;\n },\n },\n },\n },\n scales: {\n x: {\n ticks: {\n callback: (value) => {\n if (horizontal) {\n return themeFormatter.data(measures[0]!, value);\n }\n\n if (!data || !data.labels) return undefined;\n\n const label = data.labels[Number(value)] as string;\n\n return themeFormatter.data(dimension, label);\n },\n },\n },\n y: {\n ticks: {\n callback: (value) => {\n if (!horizontal) {\n return themeFormatter.data(measures[0]!, value);\n }\n if (!data || !data.labels) return undefined;\n const label = data.labels[Number(value)] as string;\n return themeFormatter.data(dimension, label);\n },\n },\n },\n },\n onClick: (_event, elements, chart) => {\n const element = elements[0];\n const axisDimensionValue = (element ? chart.data.labels![element.index] : null) as\n | string\n | null;\n const groupingDimensionValue = (\n element\n ? (chart.data.datasets[element.datasetIndex] as { rawLabel?: string | null })?.rawLabel\n : null\n ) as string | null;\n\n onBarClicked({\n axisDimensionValue,\n groupingDimensionValue,\n });\n },\n };\n};\n"],"names":["getBarStackedChartProData","props","theme","themeFormatter","getThemeFormatter","data","dimension","groupDimension","measure","axis","d","groupDimensionName","CUBE_DIMENSION_TYPE_TIME","_a","groupBy","themeKey","getObjectStableKey","chartContrastColors","getChartContrastColors","datasets","groupByItem","index","backgroundColor","getColor","borderColor","axisItem","record","getBarChartProData","remarkableTheme","groupedData","groupTailAsOther","chartColors","getChartColors","item","getBarChartProDatalabelTotalFormatter","context","formatter","i","total","sum","ds","val","getBarChartProOptions","options","onBarClicked","measures","horizontal","_value","value","label","raw","_event","elements","chart","element","axisDimensionValue","groupingDimensionValue"],"mappings":"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"}