@embeddable.com/remarkable-ui 1.0.4 → 1.0.6

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 (188) hide show
  1. package/dist/BarChartDefaultHorizontalPro.js +30 -29
  2. package/dist/BarChartDefaultHorizontalPro.js.map +1 -1
  3. package/dist/BarChartDefaultPro.js +35 -34
  4. package/dist/BarChartDefaultPro.js.map +1 -1
  5. package/dist/BarChartGroupedHorizontalPro.js +29 -28
  6. package/dist/BarChartGroupedHorizontalPro.js.map +1 -1
  7. package/dist/BarChartGroupedPro.js +40 -39
  8. package/dist/BarChartGroupedPro.js.map +1 -1
  9. package/dist/BarChartStackedHorizontalPro.js +28 -27
  10. package/dist/BarChartStackedHorizontalPro.js.map +1 -1
  11. package/dist/BarChartStackedPro.js +47 -46
  12. package/dist/BarChartStackedPro.js.map +1 -1
  13. package/dist/ChartCard-FOSghcoD.js +127 -0
  14. package/dist/ChartCard-FOSghcoD.js.map +1 -0
  15. package/dist/Color.type.emb-CTiA_AzI.js +9 -0
  16. package/dist/Color.type.emb-CTiA_AzI.js.map +1 -0
  17. package/dist/ColorEditor.js +38 -0
  18. package/dist/ColorEditor.js.map +1 -0
  19. package/dist/ComparisonPeriod.type.emb-CQ63PFtq.js +14 -0
  20. package/dist/{ComparisonPeriod.type.emb-Dlysd_iF.js.map → ComparisonPeriod.type.emb-CQ63PFtq.js.map} +1 -1
  21. package/dist/ComparisonPeriodSelectFieldPro.js +33 -32
  22. package/dist/ComparisonPeriodSelectFieldPro.js.map +1 -1
  23. package/dist/DateRangeSelectFieldPro.js +10 -8
  24. package/dist/DateRangeSelectFieldPro.js.map +1 -1
  25. package/dist/DonutChartPro.js +13 -12
  26. package/dist/DonutChartPro.js.map +1 -1
  27. package/dist/DonutLabelChartPro.js +16 -15
  28. package/dist/DonutLabelChartPro.js.map +1 -1
  29. package/dist/{EditorCard-ncOGVWah.js → EditorCard-CB-re8Qn.js} +24 -23
  30. package/dist/EditorCard-CB-re8Qn.js.map +1 -0
  31. package/dist/{HeatMap-DvjtDRTL.js → HeatMap-DwXoxYyu.js} +33 -33
  32. package/dist/{HeatMap-DvjtDRTL.js.map → HeatMap-DwXoxYyu.js.map} +1 -1
  33. package/dist/HeatMapPro.js +84 -60
  34. package/dist/HeatMapPro.js.map +1 -1
  35. package/dist/KpiChart-lEsVao_M.js +110 -0
  36. package/dist/KpiChart-lEsVao_M.js.map +1 -0
  37. package/dist/KpiChartNumberComparisonPro.js +55 -53
  38. package/dist/KpiChartNumberComparisonPro.js.map +1 -1
  39. package/dist/KpiChartNumberPro.js +12 -11
  40. package/dist/KpiChartNumberPro.js.map +1 -1
  41. package/dist/LineChartComparisonDefaultPro.js +120 -112
  42. package/dist/LineChartComparisonDefaultPro.js.map +1 -1
  43. package/dist/LineChartDefaultPro.js +87 -84
  44. package/dist/LineChartDefaultPro.js.map +1 -1
  45. package/dist/LineChartGroupedPro.js +52 -51
  46. package/dist/LineChartGroupedPro.js.map +1 -1
  47. package/dist/MultiSelectFieldPro.js +10 -9
  48. package/dist/MultiSelectFieldPro.js.map +1 -1
  49. package/dist/PieChartPro.js +14 -13
  50. package/dist/PieChartPro.js.map +1 -1
  51. package/dist/{PivotTable-UDo7378U.js → PivotTable-DlBkWU2O.js} +8 -8
  52. package/dist/{PivotTable-UDo7378U.js.map → PivotTable-DlBkWU2O.js.map} +1 -1
  53. package/dist/PivotTablePro.js +48 -48
  54. package/dist/PivotTablePro.js.map +1 -1
  55. package/dist/SingleSelectField-ammJ2Zc2.js +110 -0
  56. package/dist/SingleSelectField-ammJ2Zc2.js.map +1 -0
  57. package/dist/SingleSelectFieldPro.js +9 -8
  58. package/dist/SingleSelectFieldPro.js.map +1 -1
  59. package/dist/TableChartPaginated.js +73 -72
  60. package/dist/TableChartPaginated.js.map +1 -1
  61. package/dist/TablePaginated-pVrIngVd.js +12448 -0
  62. package/dist/TablePaginated-pVrIngVd.js.map +1 -0
  63. package/dist/{bars.utils-DLuq19zt.js → bars.utils-8ka9OKUG.js} +4 -4
  64. package/dist/{bars.utils-DLuq19zt.js.map → bars.utils-8ka9OKUG.js.map} +1 -1
  65. package/dist/{charts.utils-VLkuIHmS.js → charts.utils-Cbyzr0nO.js} +16149 -16144
  66. package/dist/charts.utils-Cbyzr0nO.js.map +1 -0
  67. package/dist/component.constants-VpbbPSIL.js +5452 -0
  68. package/dist/component.constants-VpbbPSIL.js.map +1 -0
  69. package/dist/embeddable-components.json +15 -13
  70. package/dist/embeddable-theme-2b917.js +16739 -16736
  71. package/dist/{embeddable-types-363c8.js → embeddable-types-df460.js} +21 -17
  72. package/dist/embeddable-types.js.map +1 -1
  73. package/dist/{formatter.utils-Dza9buQ8.js → formatter.utils-BLz3TSY0.js} +2 -2
  74. package/dist/{formatter.utils-Dza9buQ8.js.map → formatter.utils-BLz3TSY0.js.map} +1 -1
  75. package/dist/index-B7Pv2FEr.js +48 -0
  76. package/dist/{index-DTedizV6.js.map → index-B7Pv2FEr.js.map} +1 -1
  77. package/dist/index-BYbp2vA7.js +57 -0
  78. package/dist/index-BYbp2vA7.js.map +1 -0
  79. package/dist/{index-Bv_AzW89.js → index-CCJCuW1J.js} +37 -36
  80. package/dist/index-CCJCuW1J.js.map +1 -0
  81. package/dist/index-DcyTRz2V.js +63 -0
  82. package/dist/{index-Cvk5RTZT.js.map → index-DcyTRz2V.js.map} +1 -1
  83. package/dist/{index-DiSLIUsa.js → index-DtmAIOuh.js} +25 -24
  84. package/dist/{index-DiSLIUsa.js.map → index-DtmAIOuh.js.map} +1 -1
  85. package/dist/index-mMCdUsGD.js +63 -0
  86. package/dist/{index-CHbc8CTj.js.map → index-mMCdUsGD.js.map} +1 -1
  87. package/dist/index.js +187 -181
  88. package/dist/index.js.map +1 -1
  89. package/dist/{pies.utils-BZEnXtqg.js → pies.utils-Cr-a3NjZ.js} +15 -14
  90. package/dist/{pies.utils-BZEnXtqg.js.map → pies.utils-Cr-a3NjZ.js.map} +1 -1
  91. package/dist/remarkable-pro/components/charts/kpis/KpiChartNumberComparisonPro/index.d.ts.map +1 -1
  92. package/dist/remarkable-pro/components/charts/shared/ChartCard/ChartCard.d.ts +2 -2
  93. package/dist/remarkable-pro/components/charts/shared/ChartCard/ChartCard.d.ts.map +1 -1
  94. package/dist/remarkable-pro/components/charts/shared/ChartCard/ChartCardMenuPro/ChartCardMenuPro.d.ts +6 -2
  95. package/dist/remarkable-pro/components/charts/shared/ChartCard/ChartCardMenuPro/ChartCardMenuPro.d.ts.map +1 -1
  96. package/dist/remarkable-pro/components/charts/tables/PivotTablePro/PivotPro.utils.d.ts +2 -3
  97. package/dist/remarkable-pro/components/charts/tables/PivotTablePro/PivotPro.utils.d.ts.map +1 -1
  98. package/dist/remarkable-pro/components/charts/tables/PivotTablePro/index.d.ts +0 -1
  99. package/dist/remarkable-pro/components/charts/tables/PivotTablePro/index.d.ts.map +1 -1
  100. package/dist/remarkable-pro/components/charts/tables/TableChartPaginated/index.d.ts.map +1 -1
  101. package/dist/remarkable-pro/components/component.constants.d.ts +0 -14
  102. package/dist/remarkable-pro/components/component.constants.d.ts.map +1 -1
  103. package/dist/remarkable-pro/components/editors/DateRangeSelectFieldPro/index.d.ts +1 -0
  104. package/dist/remarkable-pro/components/editors/DateRangeSelectFieldPro/index.d.ts.map +1 -1
  105. package/dist/remarkable-pro/editors/ColorEditor/index.d.ts +8 -0
  106. package/dist/remarkable-pro/editors/ColorEditor/index.d.ts.map +1 -0
  107. package/dist/remarkable-pro/theme/defaults/defaults.ChartCardMenu.constants.d.ts +17 -0
  108. package/dist/remarkable-pro/theme/defaults/defaults.ChartCardMenu.constants.d.ts.map +1 -0
  109. package/dist/remarkable-pro/theme/i18n/translations/de.d.ts.map +1 -1
  110. package/dist/remarkable-pro/theme/i18n/translations/en.d.ts.map +1 -1
  111. package/dist/remarkable-pro/theme/theme.constants.d.ts.map +1 -1
  112. package/dist/remarkable-pro/theme/theme.types.d.ts +2 -4
  113. package/dist/remarkable-pro/theme/theme.types.d.ts.map +1 -1
  114. package/dist/remarkable-pro/theme/utils/export.utils.d.ts +4 -4
  115. package/dist/remarkable-pro/theme/utils/export.utils.d.ts.map +1 -1
  116. package/dist/remarkable-ui/components/charts/chartjs.cartesian.constants.d.ts +5 -5
  117. package/dist/remarkable-ui/components/charts/chartjs.cartesian.constants.d.ts.map +1 -1
  118. package/dist/remarkable-ui/components/charts/chartjs.constants.d.ts +1 -1
  119. package/dist/remarkable-ui/components/charts/chartjs.constants.d.ts.map +1 -1
  120. package/dist/remarkable-ui/components/charts/kpis/KpiChart.d.ts.map +1 -1
  121. package/dist/remarkable-ui/components/charts/kpis/KpiChart.stories.d.ts +2 -1
  122. package/dist/remarkable-ui/components/charts/kpis/KpiChart.stories.d.ts.map +1 -1
  123. package/dist/remarkable-ui/components/charts/kpis/KpiChart.types.d.ts +2 -1
  124. package/dist/remarkable-ui/components/charts/kpis/KpiChart.types.d.ts.map +1 -1
  125. package/dist/remarkable-ui/components/charts/kpis/components/KpiChartChange.d.ts.map +1 -1
  126. package/dist/remarkable-ui/components/editors/selects/MultiSelectField/MultiSelectField.d.ts +1 -1
  127. package/dist/remarkable-ui/components/editors/selects/MultiSelectField/MultiSelectField.d.ts.map +1 -1
  128. package/dist/remarkable-ui/components/editors/selects/MultiSelectField/MultiSelectField.stories.d.ts +1 -1
  129. package/dist/remarkable-ui/components/editors/selects/MultiSelectField/MultiSelectField.stories.d.ts.map +1 -1
  130. package/dist/remarkable-ui/components/editors/selects/SingleSelectField/SingleSelectField.d.ts +3 -3
  131. package/dist/remarkable-ui/components/editors/selects/SingleSelectField/SingleSelectField.d.ts.map +1 -1
  132. package/dist/remarkable-ui/components/editors/selects/SingleSelectField/SingleSelectField.stories.d.ts +3 -3
  133. package/dist/remarkable-ui/components/editors/selects/SingleSelectField/SingleSelectField.stories.d.ts.map +1 -1
  134. package/dist/remarkable-ui/components/editors/selects/shared/SelectFieldContent/SelectFieldContent.utils.d.ts +1 -1
  135. package/dist/remarkable-ui/components/editors/selects/shared/SelectFieldContent/SelectFieldContent.utils.d.ts.map +1 -1
  136. package/dist/remarkable-ui/components/editors/selects/shared/SelectFieldContent/SelectFieldOptions/SelectFieldCategory/SelectFieldCategory.d.ts.map +1 -0
  137. package/dist/remarkable-ui/components/editors/selects/shared/SelectFieldContent/SelectFieldOptions/SelectFieldOption/SelectFieldOption.d.ts.map +1 -0
  138. package/dist/remarkable-ui/components/shared/Overlay/Overlay.d.ts +8 -0
  139. package/dist/remarkable-ui/components/shared/Overlay/Overlay.d.ts.map +1 -0
  140. package/dist/remarkable-ui/components/shared/Overlay/Overlay.stories.d.ts +10 -0
  141. package/dist/remarkable-ui/components/shared/Overlay/Overlay.stories.d.ts.map +1 -0
  142. package/dist/remarkable-ui/index.d.ts +4 -5
  143. package/dist/remarkable-ui/index.d.ts.map +1 -1
  144. package/dist/remarkable-ui.css +1 -1
  145. package/dist/{timeRange.utils-Yy_Z93Kv.js → timeRange.utils-AEhW9Gu4.js} +2 -2
  146. package/dist/{timeRange.utils-Yy_Z93Kv.js.map → timeRange.utils-AEhW9Gu4.js.map} +1 -1
  147. package/package.json +1 -1
  148. package/dist/ChartCard-DE8akLvk.js +0 -122
  149. package/dist/ChartCard-DE8akLvk.js.map +0 -1
  150. package/dist/ComparisonPeriod.type.emb-Dlysd_iF.js +0 -14
  151. package/dist/EditorCard-ncOGVWah.js.map +0 -1
  152. package/dist/KpiChart-B9tgnF4B.js +0 -105
  153. package/dist/KpiChart-B9tgnF4B.js.map +0 -1
  154. package/dist/SingleSelectField-BTpa_tLg.js +0 -109
  155. package/dist/SingleSelectField-BTpa_tLg.js.map +0 -1
  156. package/dist/charts.utils-VLkuIHmS.js.map +0 -1
  157. package/dist/component.constants-BfTb5vNm.js +0 -17898
  158. package/dist/component.constants-BfTb5vNm.js.map +0 -1
  159. package/dist/index-9-Jj7smT.js +0 -56
  160. package/dist/index-9-Jj7smT.js.map +0 -1
  161. package/dist/index-Bv_AzW89.js.map +0 -1
  162. package/dist/index-CHbc8CTj.js +0 -62
  163. package/dist/index-Cvk5RTZT.js +0 -62
  164. package/dist/index-DTedizV6.js +0 -47
  165. package/dist/remarkable-pro/components/charts/shared/ChartCard/ChartCard.stories.d.ts +0 -20
  166. package/dist/remarkable-pro/components/charts/shared/ChartCard/ChartCard.stories.d.ts.map +0 -1
  167. package/dist/remarkable-pro/components/charts/shared/ChartCard/ChartCardMenuPro/ChartCardMenuPro.constants.d.ts +0 -3
  168. package/dist/remarkable-pro/components/charts/shared/ChartCard/ChartCardMenuPro/ChartCardMenuPro.constants.d.ts.map +0 -1
  169. package/dist/remarkable-pro/components/charts/shared/ChartCard/ChartCardMenuPro/ChartCardMenuPro.stories.d.ts +0 -16
  170. package/dist/remarkable-pro/components/charts/shared/ChartCard/ChartCardMenuPro/ChartCardMenuPro.stories.d.ts.map +0 -1
  171. package/dist/remarkable-pro/components/charts/shared/ChartCard/ChartCardMenuPro/ChartCardMenuPro.types.d.ts +0 -16
  172. package/dist/remarkable-pro/components/charts/shared/ChartCard/ChartCardMenuPro/ChartCardMenuPro.types.d.ts.map +0 -1
  173. package/dist/remarkable-pro/components/editors/ComparisonPeriodSelectFieldPro/index.stories.d.ts +0 -12
  174. package/dist/remarkable-pro/components/editors/ComparisonPeriodSelectFieldPro/index.stories.d.ts.map +0 -1
  175. package/dist/remarkable-pro/components/editors/DateRangeSelectFieldPro/index.stories.d.ts +0 -17
  176. package/dist/remarkable-pro/components/editors/DateRangeSelectFieldPro/index.stories.d.ts.map +0 -1
  177. package/dist/remarkable-pro/components/editors/shared/EditorCard/EditorCard.stories.d.ts +0 -12
  178. package/dist/remarkable-pro/components/editors/shared/EditorCard/EditorCard.stories.d.ts.map +0 -1
  179. package/dist/remarkable-ui/components/editors/selects/shared/SelectFieldContent/SelectListOptions/SelectFieldCategory/SelectFieldCategory.d.ts.map +0 -1
  180. package/dist/remarkable-ui/components/editors/selects/shared/SelectFieldContent/SelectListOptions/SelectFieldOption/SelectFieldOption.d.ts.map +0 -1
  181. package/dist/remarkable-ui/components/shared/PageOverlay/PageOverlay.d.ts +0 -3
  182. package/dist/remarkable-ui/components/shared/PageOverlay/PageOverlay.d.ts.map +0 -1
  183. package/dist/remarkable-ui/components/shared/PageOverlay/PageOverlay.stories.d.ts +0 -7
  184. package/dist/remarkable-ui/components/shared/PageOverlay/PageOverlay.stories.d.ts.map +0 -1
  185. package/dist/remarkable-ui/components/shared/PageOverlay/PageOverlay.types.d.ts +0 -7
  186. package/dist/remarkable-ui/components/shared/PageOverlay/PageOverlay.types.d.ts.map +0 -1
  187. /package/dist/remarkable-ui/components/editors/selects/shared/SelectFieldContent/{SelectListOptions → SelectFieldOptions}/SelectFieldCategory/SelectFieldCategory.d.ts +0 -0
  188. /package/dist/remarkable-ui/components/editors/selects/shared/SelectFieldContent/{SelectListOptions → SelectFieldOptions}/SelectFieldOption/SelectFieldOption.d.ts +0 -0
@@ -1,12 +1,13 @@
1
- import { i as y, r as M, j as m, F as S, d as W, a as u, T as c, b as d, t as N, c as j, I as B, R as I, J as h, A as G, o as k } from "./component.constants-BfTb5vNm.js";
2
- import { useTheme as O, defineComponent as V } from "@embeddable.com/react";
3
- import { C as E } from "./ChartCard-DE8akLvk.js";
4
- import { useRef as J } from "react";
5
- import { P as L } from "./PivotTable-UDo7378U.js";
1
+ import { j as u, l as x } from "./TablePaginated-pVrIngVd.js";
2
+ import { useTheme as y, defineComponent as A } from "@embeddable.com/react";
3
+ import { i as M, r as S, z as W, d as N, m as c, H as r, a as d, t as j, b as G, G as B, D as h, v as I } from "./component.constants-VpbbPSIL.js";
4
+ import { C as k } from "./ChartCard-FOSghcoD.js";
5
+ import { useRef as O } from "react";
6
+ import { P as V } from "./PivotTable-DlBkWU2O.js";
6
7
  import { u as p } from "./charts.fillGaps.hooks-5WclK2CD.js";
7
- import { g as T } from "./formatter.utils-Dza9buQ8.js";
8
- const _ = (e, o) => {
9
- const t = T(o);
8
+ import { g as w } from "./formatter.utils-BLz3TSY0.js";
9
+ const z = (e, o) => {
10
+ const t = w(o);
10
11
  return e.measures.map((s) => {
11
12
  var n, a;
12
13
  return {
@@ -18,35 +19,30 @@ const _ = (e, o) => {
18
19
  };
19
20
  });
20
21
  }, b = (e, o) => {
21
- const t = T(o);
22
+ const t = w(o);
22
23
  return {
23
24
  key: e.dimension.name,
24
25
  label: t.dimensionOrMeasureTitle(e.dimension),
25
26
  formatValue: (s) => t.data(e.dimension, s)
26
27
  };
27
- }, q = (e) => e.measures.filter((o) => {
28
+ }, E = (e) => e.filter((o) => {
28
29
  var t;
29
30
  return (t = o.inputs) == null ? void 0 : t.showColumnTotal;
30
- }).map((o) => o.name), z = (e) => {
31
- const o = O();
32
- y(o);
33
- const { description: t, title: s } = M(e), {
34
- measures: n,
35
- rowDimension: a,
36
- columnDimension: i,
37
- showRowTotals: r,
38
- displayNullAs: w,
39
- columnWidth: f,
40
- firstColumnWidth: g
41
- } = e, D = p({
31
+ }).map((o) => o.name), H = (e) => e.filter((o) => {
32
+ var t;
33
+ return (t = o.inputs) == null ? void 0 : t.showRowTotal;
34
+ }).map((o) => o.name), L = (e) => {
35
+ const o = y();
36
+ M(o);
37
+ const { description: t, title: s } = S(e), { measures: n, rowDimension: a, columnDimension: i, displayNullAs: m, columnWidth: T, firstColumnWidth: f } = e, D = p({
42
38
  results: e.results,
43
39
  dimension: i
44
40
  }), l = p({
45
41
  results: D,
46
42
  dimension: a
47
- }), P = J(null), C = _({ measures: n, displayNullAs: w }, o), v = b({ dimension: a }, o), R = b({ dimension: i }, o), F = q({ measures: n }), A = r ? n.map((x) => x.name) : [];
48
- return /* @__PURE__ */ m.jsx(
49
- E,
43
+ }), P = O(null), g = z({ measures: n, displayNullAs: m }, o), v = b({ dimension: a }, o), C = b({ dimension: i }, o), R = E(n), F = H(n);
44
+ return /* @__PURE__ */ u.jsx(
45
+ k,
50
46
  {
51
47
  ref: P,
52
48
  title: s,
@@ -54,40 +50,45 @@ const _ = (e, o) => {
54
50
  data: e.results,
55
51
  dimensionsAndMeasures: [a, i, ...n],
56
52
  errorMessage: l == null ? void 0 : l.error,
57
- children: /* @__PURE__ */ m.jsx(
58
- L,
53
+ children: /* @__PURE__ */ u.jsx(
54
+ V,
59
55
  {
60
- firstColumnWidth: g,
61
- columnWidth: f,
62
- totalLabel: S.t("charts.pivotTable.total"),
56
+ firstColumnWidth: f,
57
+ columnWidth: T,
58
+ totalLabel: W.t("charts.pivotTable.total"),
63
59
  data: l.data ?? [],
64
- measures: C,
60
+ measures: g,
65
61
  rowDimension: v,
66
- columnDimension: R,
67
- columnTotalsFor: F,
68
- rowTotalsFor: A
62
+ columnDimension: C,
63
+ columnTotalsFor: R,
64
+ rowTotalsFor: F
69
65
  }
70
66
  )
71
67
  }
72
68
  );
73
- }, H = {
69
+ }, _ = {
74
70
  name: "PivotTablePro",
75
71
  label: "Pivot Table",
76
72
  category: "Table Charts",
77
73
  inputs: [
78
- W,
74
+ N,
79
75
  {
80
- ...u,
76
+ ...c,
81
77
  label: "Measures To Display",
82
78
  inputs: [
83
- ...u.inputs,
79
+ ...c.inputs,
84
80
  {
85
- ...c,
81
+ ...r,
86
82
  name: "showColumnTotal",
87
83
  label: "Show Column Total"
88
84
  },
89
85
  {
90
- ...c,
86
+ ...r,
87
+ name: "showRowTotal",
88
+ label: "Show Row Total"
89
+ },
90
+ {
91
+ ...r,
91
92
  name: "showAsPercentage",
92
93
  label: "Show As Percentage",
93
94
  description: "If turned on, other measures may be ignored",
@@ -105,10 +106,9 @@ const _ = (e, o) => {
105
106
  label: "Column Dimension",
106
107
  name: "columnDimension"
107
108
  },
108
- N,
109
109
  j,
110
- { ...B, name: "showRowTotals", label: "Show Row Totals" },
111
- { ...I, name: "displayNullAs", label: "Display Null As" },
110
+ G,
111
+ { ...B, name: "displayNullAs", label: "Display Null As" },
112
112
  {
113
113
  ...h,
114
114
  name: "firstColumnWidth",
@@ -121,12 +121,12 @@ const _ = (e, o) => {
121
121
  label: "Column Width",
122
122
  description: "Set the width in px (e.g. 200)"
123
123
  },
124
- G
124
+ I
125
125
  ]
126
- }, ee = V(z, H, {
126
+ }, $ = A(L, _, {
127
127
  props: (e) => ({
128
128
  ...e,
129
- results: k({
129
+ results: x({
130
130
  from: e.dataset,
131
131
  select: [e.rowDimension, e.columnDimension, ...e.measures],
132
132
  limit: e.maxResults,
@@ -135,7 +135,7 @@ const _ = (e, o) => {
135
135
  })
136
136
  });
137
137
  export {
138
- ee as default,
139
- H as meta
138
+ $ as default,
139
+ _ as meta
140
140
  };
141
141
  //# sourceMappingURL=PivotTablePro.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"PivotTablePro.js","sources":["../src/remarkable-pro/components/charts/tables/PivotTablePro/PivotPro.utils.ts","../src/remarkable-pro/components/charts/tables/PivotTablePro/index.tsx","../src/remarkable-pro/components/charts/tables/PivotTablePro/PivotTablePro.emb.ts"],"sourcesContent":["import { Dimension, Measure } from '@embeddable.com/core';\nimport { Theme } from '../../../../theme/theme.types';\nimport { PivotTableProps } from '../../../../../remarkable-ui';\nimport { getThemeFormatter } from '../../../../theme/formatter/formatter.utils';\n\n/* eslint-disable @typescript-eslint/no-explicit-any */\n\nexport const getPivotMeasures = (\n props: { measures: Measure[]; displayNullAs?: string },\n theme: Theme,\n): PivotTableProps<any>['measures'] => {\n const themeFormatter = getThemeFormatter(theme);\n\n return props.measures.map((measure) => {\n return {\n key: measure.name,\n label: themeFormatter.dimensionOrMeasureTitle(measure),\n showAsPercentage: Boolean(measure.inputs?.showAsPercentage),\n percentageDecimalPlaces: measure.inputs?.decimalPlaces ?? 1,\n accessor: (row) => {\n const value = row[measure.name];\n\n return value == null\n ? props.displayNullAs\n : themeFormatter.data(measure, row[measure.name]);\n },\n };\n });\n};\n\nexport const getPivotDimension = (\n props: { dimension: Dimension },\n theme: Theme,\n): PivotTableProps<any>['rowDimension' | 'columnDimension'] => {\n const themeFormatter = getThemeFormatter(theme);\n\n return {\n key: props.dimension.name,\n label: themeFormatter.dimensionOrMeasureTitle(props.dimension),\n formatValue: (value: string) => themeFormatter.data(props.dimension, value),\n };\n};\n\nexport const getPivotColumnTotalsFor = (props: {\n measures: Measure[];\n}): PivotTableProps<any>['columnTotalsFor'] | undefined => {\n return props.measures.filter((m) => m.inputs?.showColumnTotal).map((m) => m.name);\n};\n","import { useTheme } from '@embeddable.com/react';\nimport { Theme } from '../../../../theme/theme.types';\nimport { i18n, i18nSetup } from '../../../../theme/i18n/i18n';\nimport { ChartCard } from '../../shared/ChartCard/ChartCard';\nimport { resolveI18nProps } from '../../../component.utils';\nimport { DataResponse, Dimension, Measure } from '@embeddable.com/core';\nimport { PivotTable } from '../../../../../remarkable-ui';\nimport { useRef } from 'react';\nimport { useFillGaps } from '../../charts.fillGaps.hooks';\nimport { getPivotColumnTotalsFor, getPivotDimension, getPivotMeasures } from './PivotPro.utils';\n\n/* eslint-disable @typescript-eslint/no-explicit-any */\n\ntype PivotTableProProps = {\n title: string;\n description: string;\n results: DataResponse;\n measures: Measure[];\n rowDimension: Dimension;\n columnDimension: Dimension;\n showRowTotals?: boolean;\n displayNullAs?: string;\n columnWidth?: number;\n firstColumnWidth?: number;\n};\n\nconst PivotTablePro = (props: PivotTableProProps) => {\n const theme = useTheme() as Theme;\n i18nSetup(theme);\n\n const { description, title } = resolveI18nProps(props);\n const {\n measures,\n rowDimension,\n columnDimension,\n showRowTotals,\n displayNullAs,\n columnWidth,\n firstColumnWidth,\n } = props;\n\n // Fill gaps for the column dimension\n const resultsColumnDimensionFillGaps = useFillGaps({\n results: props.results,\n dimension: columnDimension,\n });\n\n // Fill gaps for the row dimension\n const results = useFillGaps({\n results: resultsColumnDimensionFillGaps,\n dimension: rowDimension,\n });\n\n const cardContentRef = useRef<HTMLDivElement>(null);\n\n const pivotMeasures = getPivotMeasures({ measures, displayNullAs }, theme);\n const pivotRowDimension = getPivotDimension({ dimension: rowDimension }, theme);\n const pivotColumnDimension = getPivotDimension({ dimension: columnDimension }, theme);\n const pivotColumnTotalsFor = getPivotColumnTotalsFor({ measures });\n const pivotRowTotalsFor = showRowTotals ? measures.map((m) => m.name) : [];\n\n return (\n <ChartCard\n ref={cardContentRef}\n title={title}\n subtitle={description}\n data={props.results}\n dimensionsAndMeasures={[rowDimension, columnDimension, ...measures]}\n errorMessage={results?.error}\n >\n <PivotTable\n firstColumnWidth={firstColumnWidth}\n columnWidth={columnWidth}\n totalLabel={i18n.t('charts.pivotTable.total')}\n data={results.data ?? []}\n measures={pivotMeasures}\n rowDimension={pivotRowDimension}\n columnDimension={pivotColumnDimension}\n columnTotalsFor={pivotColumnTotalsFor}\n rowTotalsFor={pivotRowTotalsFor}\n />\n </ChartCard>\n );\n};\n\nexport default PivotTablePro;\n","import { loadData } from '@embeddable.com/core';\nimport { defineComponent, EmbeddedComponentMeta, Inputs } from '@embeddable.com/react';\nimport PivotTablePro from './index';\nimport {\n dataset,\n description,\n title,\n maxResults,\n measures,\n genericBoolean,\n subInputGenericBoolean,\n genericString,\n dimensionWithDateBounds,\n genericNumber,\n} from '../../../component.constants';\n\nexport const meta = {\n name: 'PivotTablePro',\n label: 'Pivot Table',\n category: 'Table Charts',\n inputs: [\n dataset,\n {\n ...measures,\n label: 'Measures To Display',\n inputs: [\n ...measures.inputs,\n {\n ...subInputGenericBoolean,\n name: 'showColumnTotal',\n label: 'Show Column Total',\n },\n {\n ...subInputGenericBoolean,\n name: 'showAsPercentage',\n label: 'Show As Percentage',\n description: 'If turned on, other measures may be ignored',\n defaultValue: false,\n },\n ],\n },\n {\n ...dimensionWithDateBounds,\n label: 'Row Dimension',\n name: 'rowDimension',\n },\n {\n ...dimensionWithDateBounds,\n label: 'Column Dimension',\n name: 'columnDimension',\n },\n title,\n description,\n { ...genericBoolean, name: 'showRowTotals', label: 'Show Row Totals' },\n { ...genericString, name: 'displayNullAs', label: 'Display Null As' },\n {\n ...genericNumber,\n name: 'firstColumnWidth',\n label: 'First Column Width',\n description: 'Set the width in px (e.g. 200)',\n },\n {\n ...genericNumber,\n name: 'columnWidth',\n label: 'Column Width',\n description: 'Set the width in px (e.g. 200)',\n },\n\n maxResults,\n ],\n} as const satisfies EmbeddedComponentMeta;\n\nexport default defineComponent(PivotTablePro, meta, {\n props: (inputs: Inputs<typeof meta>) => {\n return {\n ...inputs,\n\n results: loadData({\n from: inputs.dataset,\n select: [inputs.rowDimension, inputs.columnDimension, ...inputs.measures],\n limit: inputs.maxResults,\n countRows: true,\n }),\n };\n },\n});\n"],"names":["getPivotMeasures","props","theme","themeFormatter","getThemeFormatter","measure","_a","_b","row","getPivotDimension","value","getPivotColumnTotalsFor","m","PivotTablePro","useTheme","i18nSetup","description","title","resolveI18nProps","measures","rowDimension","columnDimension","showRowTotals","displayNullAs","columnWidth","firstColumnWidth","resultsColumnDimensionFillGaps","useFillGaps","results","cardContentRef","useRef","pivotMeasures","pivotRowDimension","pivotColumnDimension","pivotColumnTotalsFor","pivotRowTotalsFor","jsx","ChartCard","PivotTable","i18n","meta","dataset","subInputGenericBoolean","dimensionWithDateBounds","genericBoolean","genericString","genericNumber","maxResults","PivotTablePro_emb","defineComponent","inputs","loadData"],"mappings":"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"}
1
+ {"version":3,"file":"PivotTablePro.js","sources":["../src/remarkable-pro/components/charts/tables/PivotTablePro/PivotPro.utils.ts","../src/remarkable-pro/components/charts/tables/PivotTablePro/index.tsx","../src/remarkable-pro/components/charts/tables/PivotTablePro/PivotTablePro.emb.ts"],"sourcesContent":["import { Dimension, Measure } from '@embeddable.com/core';\nimport { Theme } from '../../../../theme/theme.types';\nimport { PivotTableProps } from '../../../../../remarkable-ui';\nimport { getThemeFormatter } from '../../../../theme/formatter/formatter.utils';\n\n/* eslint-disable @typescript-eslint/no-explicit-any */\n\nexport const getPivotMeasures = (\n props: { measures: Measure[]; displayNullAs?: string },\n theme: Theme,\n): PivotTableProps<any>['measures'] => {\n const themeFormatter = getThemeFormatter(theme);\n\n return props.measures.map((measure) => {\n return {\n key: measure.name,\n label: themeFormatter.dimensionOrMeasureTitle(measure),\n showAsPercentage: Boolean(measure.inputs?.showAsPercentage),\n percentageDecimalPlaces: measure.inputs?.decimalPlaces ?? 1,\n accessor: (row) => {\n const value = row[measure.name];\n\n return value == null\n ? props.displayNullAs\n : themeFormatter.data(measure, row[measure.name]);\n },\n };\n });\n};\n\nexport const getPivotDimension = (\n props: { dimension: Dimension },\n theme: Theme,\n): PivotTableProps<any>['rowDimension' | 'columnDimension'] => {\n const themeFormatter = getThemeFormatter(theme);\n\n return {\n key: props.dimension.name,\n label: themeFormatter.dimensionOrMeasureTitle(props.dimension),\n formatValue: (value: string) => themeFormatter.data(props.dimension, value),\n };\n};\n\nexport const getPivotColumnTotalsFor = (\n measures: Measure[],\n): PivotTableProps<any>['columnTotalsFor'] | undefined => {\n return measures.filter((m) => m.inputs?.showColumnTotal).map((m) => m.name);\n};\n\nexport const getPivotRowTotalsFor = (\n measures: Measure[],\n): PivotTableProps<any>['rowTotalsFor'] | undefined => {\n return measures.filter((m) => m.inputs?.showRowTotal).map((m) => m.name);\n};\n","import { useTheme } from '@embeddable.com/react';\nimport { Theme } from '../../../../theme/theme.types';\nimport { i18n, i18nSetup } from '../../../../theme/i18n/i18n';\nimport { ChartCard } from '../../shared/ChartCard/ChartCard';\nimport { resolveI18nProps } from '../../../component.utils';\nimport { DataResponse, Dimension, Measure } from '@embeddable.com/core';\nimport { PivotTable } from '../../../../../remarkable-ui';\nimport { useRef } from 'react';\nimport { useFillGaps } from '../../charts.fillGaps.hooks';\nimport {\n getPivotColumnTotalsFor,\n getPivotDimension,\n getPivotMeasures,\n getPivotRowTotalsFor,\n} from './PivotPro.utils';\n\n/* eslint-disable @typescript-eslint/no-explicit-any */\n\ntype PivotTableProProps = {\n title: string;\n description: string;\n results: DataResponse;\n measures: Measure[];\n rowDimension: Dimension;\n columnDimension: Dimension;\n displayNullAs?: string;\n columnWidth?: number;\n firstColumnWidth?: number;\n};\n\nconst PivotTablePro = (props: PivotTableProProps) => {\n const theme = useTheme() as Theme;\n i18nSetup(theme);\n\n const { description, title } = resolveI18nProps(props);\n const { measures, rowDimension, columnDimension, displayNullAs, columnWidth, firstColumnWidth } =\n props;\n\n // Fill gaps for the column dimension\n const resultsColumnDimensionFillGaps = useFillGaps({\n results: props.results,\n dimension: columnDimension,\n });\n\n // Fill gaps for the row dimension\n const results = useFillGaps({\n results: resultsColumnDimensionFillGaps,\n dimension: rowDimension,\n });\n\n const cardContentRef = useRef<HTMLDivElement>(null);\n\n const pivotMeasures = getPivotMeasures({ measures, displayNullAs }, theme);\n const pivotRowDimension = getPivotDimension({ dimension: rowDimension }, theme);\n const pivotColumnDimension = getPivotDimension({ dimension: columnDimension }, theme);\n const pivotColumnTotalsFor = getPivotColumnTotalsFor(measures);\n const pivotRowTotalsFor = getPivotRowTotalsFor(measures);\n\n return (\n <ChartCard\n ref={cardContentRef}\n title={title}\n subtitle={description}\n data={props.results}\n dimensionsAndMeasures={[rowDimension, columnDimension, ...measures]}\n errorMessage={results?.error}\n >\n <PivotTable\n firstColumnWidth={firstColumnWidth}\n columnWidth={columnWidth}\n totalLabel={i18n.t('charts.pivotTable.total')}\n data={results.data ?? []}\n measures={pivotMeasures}\n rowDimension={pivotRowDimension}\n columnDimension={pivotColumnDimension}\n columnTotalsFor={pivotColumnTotalsFor}\n rowTotalsFor={pivotRowTotalsFor}\n />\n </ChartCard>\n );\n};\n\nexport default PivotTablePro;\n","import { loadData } from '@embeddable.com/core';\nimport { defineComponent, EmbeddedComponentMeta, Inputs } from '@embeddable.com/react';\nimport PivotTablePro from './index';\nimport {\n dataset,\n description,\n title,\n maxResults,\n measures,\n subInputGenericBoolean,\n genericString,\n dimensionWithDateBounds,\n genericNumber,\n} from '../../../component.constants';\n\nexport const meta = {\n name: 'PivotTablePro',\n label: 'Pivot Table',\n category: 'Table Charts',\n inputs: [\n dataset,\n {\n ...measures,\n label: 'Measures To Display',\n inputs: [\n ...measures.inputs,\n {\n ...subInputGenericBoolean,\n name: 'showColumnTotal',\n label: 'Show Column Total',\n },\n {\n ...subInputGenericBoolean,\n name: 'showRowTotal',\n label: 'Show Row Total',\n },\n {\n ...subInputGenericBoolean,\n name: 'showAsPercentage',\n label: 'Show As Percentage',\n description: 'If turned on, other measures may be ignored',\n defaultValue: false,\n },\n ],\n },\n {\n ...dimensionWithDateBounds,\n label: 'Row Dimension',\n name: 'rowDimension',\n },\n {\n ...dimensionWithDateBounds,\n label: 'Column Dimension',\n name: 'columnDimension',\n },\n title,\n description,\n { ...genericString, name: 'displayNullAs', label: 'Display Null As' },\n {\n ...genericNumber,\n name: 'firstColumnWidth',\n label: 'First Column Width',\n description: 'Set the width in px (e.g. 200)',\n },\n {\n ...genericNumber,\n name: 'columnWidth',\n label: 'Column Width',\n description: 'Set the width in px (e.g. 200)',\n },\n\n maxResults,\n ],\n} as const satisfies EmbeddedComponentMeta;\n\nexport default defineComponent(PivotTablePro, meta, {\n props: (inputs: Inputs<typeof meta>) => {\n return {\n ...inputs,\n\n results: loadData({\n from: inputs.dataset,\n select: [inputs.rowDimension, inputs.columnDimension, ...inputs.measures],\n limit: inputs.maxResults,\n countRows: true,\n }),\n };\n },\n});\n"],"names":["getPivotMeasures","props","theme","themeFormatter","getThemeFormatter","measure","_a","_b","row","getPivotDimension","value","getPivotColumnTotalsFor","measures","m","getPivotRowTotalsFor","PivotTablePro","useTheme","i18nSetup","description","title","resolveI18nProps","rowDimension","columnDimension","displayNullAs","columnWidth","firstColumnWidth","resultsColumnDimensionFillGaps","useFillGaps","results","cardContentRef","useRef","pivotMeasures","pivotRowDimension","pivotColumnDimension","pivotColumnTotalsFor","pivotRowTotalsFor","jsx","ChartCard","PivotTable","i18n","meta","dataset","subInputGenericBoolean","dimensionWithDateBounds","genericString","genericNumber","maxResults","PivotTablePro_emb","defineComponent","inputs","loadData"],"mappings":"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"}
@@ -0,0 +1,110 @@
1
+ import { j as s, p as q, q as w, S as B, F as H } from "./TablePaginated-pVrIngVd.js";
2
+ import { useState as m, useRef as K, useEffect as Q, useMemo as O, Fragment as z } from "react";
3
+ import { O as A, P as G, Q as J, S as x } from "./component.constants-VpbbPSIL.js";
4
+ import { u as U, d as V, g as W, s as X, I as Y, S as Z } from "./EditorCard-CB-re8Qn.js";
5
+ const se = ({
6
+ label: y,
7
+ required: L,
8
+ value: r = "",
9
+ startIcon: o,
10
+ options: t,
11
+ disabled: b,
12
+ placeholder: I,
13
+ searchable: j,
14
+ clearable: k,
15
+ isLoading: C,
16
+ noOptionsMessage: p = "No options available",
17
+ onChange: E,
18
+ onSearch: a,
19
+ error: R = !1,
20
+ errorMessage: i
21
+ }) => {
22
+ const [F, D] = m(!1), [g, S] = m(""), [N, d] = m(r), h = K(null);
23
+ U(F, h), Q(() => {
24
+ if (!r) {
25
+ d("");
26
+ return;
27
+ }
28
+ const e = t.find((c) => c.value === r);
29
+ e && d(e.label);
30
+ }, [r, t]);
31
+ const n = O(() => a ? V(a) : void 0, [a]), u = j && !a ? t.filter((e) => e.label.toLowerCase().includes(g.toLowerCase())) : t, v = O(() => W(u), [u]), f = (e) => {
32
+ if (S(""), E(e ?? ""), a == null || a(""), e === "")
33
+ d("");
34
+ else {
35
+ const c = t.find((l) => l.value === e);
36
+ c && d(c.label);
37
+ }
38
+ }, P = (e) => {
39
+ S(e), n == null || n(e);
40
+ }, T = R || !!i;
41
+ return /* @__PURE__ */ s.jsxs("div", { children: [
42
+ /* @__PURE__ */ s.jsx(q, { label: y, required: L }),
43
+ /* @__PURE__ */ s.jsx(
44
+ A,
45
+ {
46
+ open: F,
47
+ onOpenChange: D,
48
+ disabled: b,
49
+ triggerComponent: /* @__PURE__ */ s.jsx(
50
+ B,
51
+ {
52
+ startIcon: o,
53
+ "aria-label": "Select option",
54
+ placeholder: I,
55
+ disabled: b,
56
+ valueLabel: N,
57
+ onClear: () => f(""),
58
+ isClearable: k,
59
+ isLoading: C,
60
+ error: T
61
+ }
62
+ ),
63
+ children: /* @__PURE__ */ s.jsxs(G, { children: [
64
+ j && /* @__PURE__ */ s.jsx(
65
+ w,
66
+ {
67
+ ref: h,
68
+ startIcon: Y,
69
+ "aria-label": "Search options",
70
+ placeholder: "Search…",
71
+ role: "searchbox",
72
+ value: g,
73
+ onKeyDown: (e) => e.stopPropagation(),
74
+ onChange: P,
75
+ className: X.searchField
76
+ }
77
+ ),
78
+ /* @__PURE__ */ s.jsxs(J, { disabled: C, children: [
79
+ v ? Object.entries(v).map(([e, c]) => /* @__PURE__ */ s.jsxs(z, { children: [
80
+ /* @__PURE__ */ s.jsx(Z, { label: e }),
81
+ c.map((l) => /* @__PURE__ */ s.jsx(
82
+ x,
83
+ {
84
+ onClick: () => f(l == null ? void 0 : l.value),
85
+ isSelected: l.value === r,
86
+ ...l
87
+ },
88
+ (l == null ? void 0 : l.value) ?? l.label
89
+ ))
90
+ ] }, e)) : u.map((e) => /* @__PURE__ */ s.jsx(
91
+ x,
92
+ {
93
+ onClick: () => f(e == null ? void 0 : e.value),
94
+ isSelected: e.value === r,
95
+ ...e
96
+ },
97
+ (e == null ? void 0 : e.value) ?? e.label
98
+ )),
99
+ t.length === 0 && /* @__PURE__ */ s.jsx(x, { disabled: !0, value: "empty", label: p })
100
+ ] })
101
+ ] })
102
+ }
103
+ ),
104
+ i && /* @__PURE__ */ s.jsx(H, { message: i, variant: "error" })
105
+ ] });
106
+ };
107
+ export {
108
+ se as S
109
+ };
110
+ //# sourceMappingURL=SingleSelectField-ammJ2Zc2.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SingleSelectField-ammJ2Zc2.js","sources":["../src/remarkable-ui/components/editors/selects/SingleSelectField/SingleSelectField.tsx"],"sourcesContent":["import { FC, Fragment, useEffect, useMemo, useRef, useState } from 'react';\nimport { SelectFieldTrigger } from '../shared/SelectFieldTrigger/SelectFieldTrigger';\nimport { Dropdown } from '../../../shared/Dropdown/Dropdown';\nimport {\n SelectFieldContent,\n SelectFieldContentList,\n} from '../shared/SelectFieldContent/SelectFieldContent';\nimport {\n SelectListOption,\n SelectListOptionProps,\n SelectListOptionPropsWithCategory,\n} from '../shared/SelectFieldContent/SelectFieldOptions/SelectFieldOption/SelectFieldOption';\nimport { SelectFieldCategory } from '../shared/SelectFieldContent/SelectFieldOptions/SelectFieldCategory/SelectFieldCategory';\nimport { groupOptionsByCategory } from '../shared/SelectFieldContent/SelectFieldContent.utils';\nimport { IconSearch, TablerIcon } from '@tabler/icons-react';\nimport { useSelectSearchFocus } from '../shared/useSelectSearchFocus.hook';\nimport { FieldHeader, FieldHeaderProps } from '../../../shared/Field/FieldHeader';\nimport styles from '../selects.module.css';\nimport { FieldFeedback } from '../../../shared/Field/FieldFeedback';\nimport { TextField } from '../../inputs/TextField/TextField';\nimport { debounce } from '../../../../utils/debounce.utils';\n\nexport type SingleSelectFieldProps = {\n options: (SelectListOptionProps | SelectListOptionPropsWithCategory)[];\n startIcon?: TablerIcon;\n value?: string;\n disabled?: boolean;\n placeholder?: string;\n searchable?: boolean;\n clearable?: boolean;\n isLoading?: boolean;\n noOptionsMessage?: string;\n onChange: (value: string) => void;\n onSearch?: (search: string) => void;\n error?: boolean;\n errorMessage?: string;\n} & FieldHeaderProps;\n\nexport const SingleSelectField: FC<SingleSelectFieldProps> = ({\n label,\n required,\n value = '',\n startIcon,\n options,\n disabled,\n placeholder,\n searchable,\n clearable,\n isLoading,\n noOptionsMessage = 'No options available',\n onChange,\n onSearch,\n error = false,\n errorMessage,\n}) => {\n const [isOpen, setIsOpen] = useState(false);\n const [searchValue, setSearchValue] = useState<string>('');\n const [selectedLabel, setSelectedLabel] = useState<string>(value);\n\n const searchFieldRef = useRef<HTMLInputElement>(null);\n useSelectSearchFocus(isOpen, searchFieldRef);\n\n useEffect(() => {\n if (!value) {\n setSelectedLabel('');\n return;\n }\n\n const option = options.find((opt) => opt.value === value);\n if (option) {\n setSelectedLabel(option.label);\n }\n }, [value, options]);\n\n const debouncedSearch = useMemo(() => (onSearch ? debounce(onSearch) : undefined), [onSearch]);\n\n const displayOptions =\n searchable && !onSearch\n ? options.filter((option) => option.label.toLowerCase().includes(searchValue.toLowerCase()))\n : options;\n\n const groupedOptions = useMemo(() => groupOptionsByCategory(displayOptions), [displayOptions]);\n\n const handleChange = (newValue?: string) => {\n setSearchValue('');\n onChange(newValue ?? '');\n onSearch?.('');\n\n if (newValue === '') {\n setSelectedLabel('');\n } else {\n const option = options.find((opt) => opt.value === newValue);\n if (option) setSelectedLabel(option.label);\n }\n };\n\n const handleSearch = (newSearch: string) => {\n setSearchValue(newSearch);\n debouncedSearch?.(newSearch);\n };\n\n const hasError = error || !!errorMessage;\n\n return (\n <div>\n <FieldHeader label={label} required={required} />\n <Dropdown\n open={isOpen}\n onOpenChange={setIsOpen}\n disabled={disabled}\n triggerComponent={\n <SelectFieldTrigger\n startIcon={startIcon}\n aria-label=\"Select option\"\n placeholder={placeholder}\n disabled={disabled}\n valueLabel={selectedLabel}\n onClear={() => handleChange('')}\n isClearable={clearable}\n isLoading={isLoading}\n error={hasError}\n />\n }\n >\n <SelectFieldContent>\n {searchable && (\n <TextField\n ref={searchFieldRef}\n startIcon={IconSearch}\n aria-label=\"Search options\"\n placeholder=\"Search…\"\n role=\"searchbox\"\n value={searchValue}\n onKeyDown={(e) => e.stopPropagation()}\n onChange={handleSearch}\n className={styles.searchField}\n />\n )}\n <SelectFieldContentList disabled={isLoading}>\n {groupedOptions\n ? Object.entries(groupedOptions).map(([category, categoryOptions]) => (\n <Fragment key={category}>\n <SelectFieldCategory label={category} />\n {categoryOptions.map((option) => (\n <SelectListOption\n key={option?.value ?? option.label}\n onClick={() => handleChange(option?.value)}\n isSelected={option.value === value}\n {...option}\n />\n ))}\n </Fragment>\n ))\n : displayOptions.map((option) => (\n <SelectListOption\n key={option?.value ?? option.label}\n onClick={() => handleChange(option?.value)}\n isSelected={option.value === value}\n {...option}\n />\n ))}\n {options.length === 0 && (\n <SelectListOption disabled value=\"empty\" label={noOptionsMessage} />\n )}\n </SelectFieldContentList>\n </SelectFieldContent>\n </Dropdown>\n {errorMessage && <FieldFeedback message={errorMessage} variant=\"error\" />}\n </div>\n );\n};\n"],"names":["SingleSelectField","label","required","value","startIcon","options","disabled","placeholder","searchable","clearable","isLoading","noOptionsMessage","onChange","onSearch","error","errorMessage","isOpen","setIsOpen","useState","searchValue","setSearchValue","selectedLabel","setSelectedLabel","searchFieldRef","useRef","useSelectSearchFocus","useEffect","option","opt","debouncedSearch","useMemo","debounce","displayOptions","groupedOptions","groupOptionsByCategory","handleChange","newValue","handleSearch","newSearch","hasError","jsx","FieldHeader","Dropdown","SelectFieldTrigger","SelectFieldContent","TextField","IconSearch","styles","jsxs","SelectFieldContentList","category","categoryOptions","Fragment","SelectFieldCategory","SelectListOption","FieldFeedback"],"mappings":";;;;AAsCO,MAAMA,KAAgD,CAAC;AAAA,EAC5D,OAAAC;AAAA,EACA,UAAAC;AAAA,EACA,OAAAC,IAAQ;AAAA,EACR,WAAAC;AAAA,EACA,SAAAC;AAAA,EACA,UAAAC;AAAA,EACA,aAAAC;AAAA,EACA,YAAAC;AAAA,EACA,WAAAC;AAAA,EACA,WAAAC;AAAA,EACA,kBAAAC,IAAmB;AAAA,EACnB,UAAAC;AAAA,EACA,UAAAC;AAAA,EACA,OAAAC,IAAQ;AAAA,EACR,cAAAC;AACF,MAAM;AACJ,QAAM,CAACC,GAAQC,CAAS,IAAIC,EAAS,EAAK,GACpC,CAACC,GAAaC,CAAc,IAAIF,EAAiB,EAAE,GACnD,CAACG,GAAeC,CAAgB,IAAIJ,EAAiBf,CAAK,GAE1DoB,IAAiBC,EAAyB,IAAI;AACpD,EAAAC,EAAqBT,GAAQO,CAAc,GAE3CG,EAAU,MAAM;AACd,QAAI,CAACvB,GAAO;AACV,MAAAmB,EAAiB,EAAE;AACnB;AAAA,IACF;AAEA,UAAMK,IAAStB,EAAQ,KAAK,CAACuB,MAAQA,EAAI,UAAUzB,CAAK;AACxD,IAAIwB,KACFL,EAAiBK,EAAO,KAAK;AAAA,EAEjC,GAAG,CAACxB,GAAOE,CAAO,CAAC;AAEnB,QAAMwB,IAAkBC,EAAQ,MAAOjB,IAAWkB,EAASlB,CAAQ,IAAI,QAAY,CAACA,CAAQ,CAAC,GAEvFmB,IACJxB,KAAc,CAACK,IACXR,EAAQ,OAAO,CAACsB,MAAWA,EAAO,MAAM,cAAc,SAASR,EAAY,YAAA,CAAa,CAAC,IACzFd,GAEA4B,IAAiBH,EAAQ,MAAMI,EAAuBF,CAAc,GAAG,CAACA,CAAc,CAAC,GAEvFG,IAAe,CAACC,MAAsB;AAK1C,QAJAhB,EAAe,EAAE,GACjBR,EAASwB,KAAY,EAAE,GACvBvB,KAAA,QAAAA,EAAW,KAEPuB,MAAa;AACf,MAAAd,EAAiB,EAAE;AAAA,SACd;AACL,YAAMK,IAAStB,EAAQ,KAAK,CAACuB,MAAQA,EAAI,UAAUQ,CAAQ;AAC3D,MAAIT,KAAQL,EAAiBK,EAAO,KAAK;AAAA,IAC3C;AAAA,EACF,GAEMU,IAAe,CAACC,MAAsB;AAC1C,IAAAlB,EAAekB,CAAS,GACxBT,KAAA,QAAAA,EAAkBS;AAAA,EACpB,GAEMC,IAAWzB,KAAS,CAAC,CAACC;AAE5B,gCACG,OAAA,EACC,UAAA;AAAA,IAAAyB,gBAAAA,EAAAA,IAACC,GAAA,EAAY,OAAAxC,GAAc,UAAAC,EAAA,CAAoB;AAAA,IAC/CsC,gBAAAA,EAAAA;AAAAA,MAACE;AAAA,MAAA;AAAA,QACC,MAAM1B;AAAA,QACN,cAAcC;AAAA,QACd,UAAAX;AAAA,QACA,kBACEkC,gBAAAA,EAAAA;AAAAA,UAACG;AAAA,UAAA;AAAA,YACC,WAAAvC;AAAA,YACA,cAAW;AAAA,YACX,aAAAG;AAAA,YACA,UAAAD;AAAA,YACA,YAAYe;AAAA,YACZ,SAAS,MAAMc,EAAa,EAAE;AAAA,YAC9B,aAAa1B;AAAA,YACb,WAAAC;AAAA,YACA,OAAO6B;AAAA,UAAA;AAAA,QAAA;AAAA,QAIX,iCAACK,GAAA,EACE,UAAA;AAAA,UAAApC,KACCgC,gBAAAA,EAAAA;AAAAA,YAACK;AAAA,YAAA;AAAA,cACC,KAAKtB;AAAA,cACL,WAAWuB;AAAA,cACX,cAAW;AAAA,cACX,aAAY;AAAA,cACZ,MAAK;AAAA,cACL,OAAO3B;AAAA,cACP,WAAW,CAAC,MAAM,EAAE,gBAAA;AAAA,cACpB,UAAUkB;AAAA,cACV,WAAWU,EAAO;AAAA,YAAA;AAAA,UAAA;AAAA,UAGtBC,gBAAAA,EAAAA,KAACC,GAAA,EAAuB,UAAUvC,GAC/B,UAAA;AAAA,YAAAuB,IACG,OAAO,QAAQA,CAAc,EAAE,IAAI,CAAC,CAACiB,GAAUC,CAAe,MAC5DH,gBAAAA,EAAAA,KAACI,GAAA,EACC,UAAA;AAAA,cAAAZ,gBAAAA,EAAAA,IAACa,GAAA,EAAoB,OAAOH,EAAA,CAAU;AAAA,cACrCC,EAAgB,IAAI,CAACxB,MACpBa,gBAAAA,EAAAA;AAAAA,gBAACc;AAAA,gBAAA;AAAA,kBAEC,SAAS,MAAMnB,EAAaR,KAAA,gBAAAA,EAAQ,KAAK;AAAA,kBACzC,YAAYA,EAAO,UAAUxB;AAAA,kBAC5B,GAAGwB;AAAA,gBAAA;AAAA,iBAHCA,KAAA,gBAAAA,EAAQ,UAASA,EAAO;AAAA,cAAA,CAKhC;AAAA,YAAA,EAAA,GATYuB,CAUf,CACD,IACDlB,EAAe,IAAI,CAACL,MAClBa,gBAAAA,EAAAA;AAAAA,cAACc;AAAA,cAAA;AAAA,gBAEC,SAAS,MAAMnB,EAAaR,KAAA,gBAAAA,EAAQ,KAAK;AAAA,gBACzC,YAAYA,EAAO,UAAUxB;AAAA,gBAC5B,GAAGwB;AAAA,cAAA;AAAA,eAHCA,KAAA,gBAAAA,EAAQ,UAASA,EAAO;AAAA,YAAA,CAKhC;AAAA,YACJtB,EAAQ,WAAW,KAClBmC,gBAAAA,EAAAA,IAACc,GAAA,EAAiB,UAAQ,IAAC,OAAM,SAAQ,OAAO3C,EAAA,CAAkB;AAAA,UAAA,EAAA,CAEtE;AAAA,QAAA,EAAA,CACF;AAAA,MAAA;AAAA,IAAA;AAAA,IAEDI,KAAgByB,gBAAAA,EAAAA,IAACe,GAAA,EAAc,SAASxC,GAAc,SAAQ,QAAA,CAAQ;AAAA,EAAA,GACzE;AAEJ;"}
@@ -1,6 +1,7 @@
1
1
  import { defineComponent as i } from "@embeddable.com/react";
2
- import { d as s, z as r, t as d, c as m, a1 as c, V as n, o as u } from "./component.constants-BfTb5vNm.js";
3
- import { M as p, S as g } from "./index-DTedizV6.js";
2
+ import { V as n, l as r } from "./TablePaginated-pVrIngVd.js";
3
+ import { d as s, u as d, t as m, b as c, M as u } from "./component.constants-VpbbPSIL.js";
4
+ import { M as p, S as g } from "./index-B7Pv2FEr.js";
4
5
  const f = {
5
6
  name: "SingleSelectFieldPro",
6
7
  label: "Single Select Field",
@@ -9,10 +10,10 @@ const f = {
9
10
  defaultHeight: 120,
10
11
  inputs: [
11
12
  s,
12
- { ...r, label: "Dimension (to load Dropdown values)" },
13
- d,
13
+ { ...d, label: "Dimension (to load Dropdown values)" },
14
14
  m,
15
- { ...c, defaultValue: "Select value..." },
15
+ c,
16
+ { ...u, defaultValue: "Select value..." },
16
17
  {
17
18
  name: "maxOptions",
18
19
  type: "number",
@@ -60,14 +61,14 @@ const f = {
60
61
  events: [{ name: "onChange", property: "value" }]
61
62
  }
62
63
  ]
63
- }, y = i(g, f, {
64
+ }, V = i(g, f, {
64
65
  props: (e, [a, l]) => {
65
66
  const t = e.dimension.nativeType === "string" ? "contains" : "equals";
66
67
  return {
67
68
  ...e,
68
69
  maxOptions: e.maxOptions,
69
70
  setSearchValue: (o) => l({ searchValue: o }),
70
- results: u({
71
+ results: r({
71
72
  limit: e.maxOptions,
72
73
  from: e.dataset,
73
74
  select: [e.dimension, e.optionalSecondDimension].filter(Boolean),
@@ -88,7 +89,7 @@ const f = {
88
89
  }
89
90
  });
90
91
  export {
91
- y as default,
92
+ V as default,
92
93
  f as meta
93
94
  };
94
95
  //# sourceMappingURL=SingleSelectFieldPro.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"SingleSelectFieldPro.js","sources":["../src/remarkable-pro/components/editors/SingleSelectFieldPro/SingleSelectFieldPro.emb.ts"],"sourcesContent":["import { defineComponent, EmbeddedComponentMeta, Inputs } from '@embeddable.com/react';\nimport { Value, loadData } from '@embeddable.com/core';\nimport { dataset, description, dimension, placeholder, title } from '../../component.constants';\nimport SingleSelectFieldPro, { MAX_OPTIONS } from '.';\n\nexport const meta = {\n name: 'SingleSelectFieldPro',\n label: 'Single Select Field',\n category: 'Dropdowns',\n defaultWidth: 300,\n defaultHeight: 120,\n inputs: [\n dataset,\n { ...dimension, label: 'Dimension (to load Dropdown values)' },\n title,\n description,\n { ...placeholder, defaultValue: 'Select value...' },\n {\n name: 'maxOptions',\n type: 'number',\n label: 'Maximum options',\n category: 'Component Settings',\n defaultValue: MAX_OPTIONS,\n },\n {\n name: 'selectedValue',\n type: 'string',\n label: 'Selected Value',\n category: 'Pre-configured Variables',\n },\n {\n type: 'dimension',\n config: {\n dataset: 'dataset',\n },\n required: false,\n name: 'optionalSecondDimension',\n label: 'Optional secondary dimension',\n category: 'Data Mapping for Interactions',\n description: 'Send a different dimension to embeddable when the user clicks. Must be unique.',\n },\n ],\n events: [\n {\n name: 'onChange',\n label: 'selected value updated',\n properties: [\n {\n name: 'value',\n label: 'selected Value',\n type: 'string',\n },\n ],\n },\n ],\n variables: [\n {\n name: 'single-select value',\n type: 'string',\n defaultValue: Value.noFilter(),\n inputs: ['selectedValue'],\n events: [{ name: 'onChange', property: 'value' }],\n },\n ],\n} as const satisfies EmbeddedComponentMeta;\n\ntype SingleSelectDropdownState = {\n searchValue?: string;\n};\n\nexport default defineComponent(SingleSelectFieldPro, meta, {\n props: (\n inputs: Inputs<typeof meta>,\n [state, setState]: [SingleSelectDropdownState, (state: SingleSelectDropdownState) => void],\n ) => {\n const operator = inputs.dimension.nativeType === 'string' ? 'contains' : 'equals';\n return {\n ...inputs,\n maxOptions: inputs.maxOptions,\n setSearchValue: (searchValue: string) => setState({ searchValue: searchValue }),\n results: loadData({\n limit: inputs.maxOptions,\n from: inputs.dataset,\n select: [inputs.dimension, inputs.optionalSecondDimension].filter(Boolean),\n filters: state?.searchValue\n ? [\n {\n operator,\n property: inputs.dimension,\n value: state.searchValue,\n },\n ]\n : undefined,\n }),\n };\n },\n events: {\n onChange: (selectedValue: string) => {\n return {\n value: selectedValue || Value.noFilter(),\n };\n },\n },\n});\n"],"names":["meta","dataset","dimension","title","description","placeholder","MAX_OPTIONS","Value","SingleSelectFieldPro_emb","defineComponent","SingleSelectFieldPro","inputs","state","setState","operator","searchValue","loadData","selectedValue"],"mappings":";;;AAKO,MAAMA,IAAO;AAAA,EAClB,MAAM;AAAA,EACN,OAAO;AAAA,EACP,UAAU;AAAA,EACV,cAAc;AAAA,EACd,eAAe;AAAA,EACf,QAAQ;AAAA,IACNC;AAAA,IACA,EAAE,GAAGC,GAAW,OAAO,sCAAA;AAAA,IACvBC;AAAA,IACAC;AAAA,IACA,EAAE,GAAGC,GAAa,cAAc,kBAAA;AAAA,IAChC;AAAA,MACE,MAAM;AAAA,MACN,MAAM;AAAA,MACN,OAAO;AAAA,MACP,UAAU;AAAA,MACV,cAAcC;AAAA,IAAA;AAAA,IAEhB;AAAA,MACE,MAAM;AAAA,MACN,MAAM;AAAA,MACN,OAAO;AAAA,MACP,UAAU;AAAA,IAAA;AAAA,IAEZ;AAAA,MACE,MAAM;AAAA,MACN,QAAQ;AAAA,QACN,SAAS;AAAA,MAAA;AAAA,MAEX,UAAU;AAAA,MACV,MAAM;AAAA,MACN,OAAO;AAAA,MACP,UAAU;AAAA,MACV,aAAa;AAAA,IAAA;AAAA,EACf;AAAA,EAEF,QAAQ;AAAA,IACN;AAAA,MACE,MAAM;AAAA,MACN,OAAO;AAAA,MACP,YAAY;AAAA,QACV;AAAA,UACE,MAAM;AAAA,UACN,OAAO;AAAA,UACP,MAAM;AAAA,QAAA;AAAA,MACR;AAAA,IACF;AAAA,EACF;AAAA,EAEF,WAAW;AAAA,IACT;AAAA,MACE,MAAM;AAAA,MACN,MAAM;AAAA,MACN,cAAcC,EAAM,SAAA;AAAA,MACpB,QAAQ,CAAC,eAAe;AAAA,MACxB,QAAQ,CAAC,EAAE,MAAM,YAAY,UAAU,SAAS;AAAA,IAAA;AAAA,EAClD;AAEJ,GAMAC,IAAeC,EAAgBC,GAAsBV,GAAM;AAAA,EACzD,OAAO,CACLW,GACA,CAACC,GAAOC,CAAQ,MACb;AACH,UAAMC,IAAWH,EAAO,UAAU,eAAe,WAAW,aAAa;AACzE,WAAO;AAAA,MACL,GAAGA;AAAA,MACH,YAAYA,EAAO;AAAA,MACnB,gBAAgB,CAACI,MAAwBF,EAAS,EAAE,aAAAE,GAA0B;AAAA,MAC9E,SAASC,EAAS;AAAA,QAChB,OAAOL,EAAO;AAAA,QACd,MAAMA,EAAO;AAAA,QACb,QAAQ,CAACA,EAAO,WAAWA,EAAO,uBAAuB,EAAE,OAAO,OAAO;AAAA,QACzE,SAASC,KAAA,QAAAA,EAAO,cACZ;AAAA,UACE;AAAA,YACE,UAAAE;AAAA,YACA,UAAUH,EAAO;AAAA,YACjB,OAAOC,EAAM;AAAA,UAAA;AAAA,QACf,IAEF;AAAA,MAAA,CACL;AAAA,IAAA;AAAA,EAEL;AAAA,EACA,QAAQ;AAAA,IACN,UAAU,CAACK,OACF;AAAA,MACL,OAAOA,KAAiBV,EAAM,SAAA;AAAA,IAAS;AAAA,EAE3C;AAEJ,CAAC;"}
1
+ {"version":3,"file":"SingleSelectFieldPro.js","sources":["../src/remarkable-pro/components/editors/SingleSelectFieldPro/SingleSelectFieldPro.emb.ts"],"sourcesContent":["import { defineComponent, EmbeddedComponentMeta, Inputs } from '@embeddable.com/react';\nimport { Value, loadData } from '@embeddable.com/core';\nimport { dataset, description, dimension, placeholder, title } from '../../component.constants';\nimport SingleSelectFieldPro, { MAX_OPTIONS } from '.';\n\nexport const meta = {\n name: 'SingleSelectFieldPro',\n label: 'Single Select Field',\n category: 'Dropdowns',\n defaultWidth: 300,\n defaultHeight: 120,\n inputs: [\n dataset,\n { ...dimension, label: 'Dimension (to load Dropdown values)' },\n title,\n description,\n { ...placeholder, defaultValue: 'Select value...' },\n {\n name: 'maxOptions',\n type: 'number',\n label: 'Maximum options',\n category: 'Component Settings',\n defaultValue: MAX_OPTIONS,\n },\n {\n name: 'selectedValue',\n type: 'string',\n label: 'Selected Value',\n category: 'Pre-configured Variables',\n },\n {\n type: 'dimension',\n config: {\n dataset: 'dataset',\n },\n required: false,\n name: 'optionalSecondDimension',\n label: 'Optional secondary dimension',\n category: 'Data Mapping for Interactions',\n description: 'Send a different dimension to embeddable when the user clicks. Must be unique.',\n },\n ],\n events: [\n {\n name: 'onChange',\n label: 'selected value updated',\n properties: [\n {\n name: 'value',\n label: 'selected Value',\n type: 'string',\n },\n ],\n },\n ],\n variables: [\n {\n name: 'single-select value',\n type: 'string',\n defaultValue: Value.noFilter(),\n inputs: ['selectedValue'],\n events: [{ name: 'onChange', property: 'value' }],\n },\n ],\n} as const satisfies EmbeddedComponentMeta;\n\ntype SingleSelectDropdownState = {\n searchValue?: string;\n};\n\nexport default defineComponent(SingleSelectFieldPro, meta, {\n props: (\n inputs: Inputs<typeof meta>,\n [state, setState]: [SingleSelectDropdownState, (state: SingleSelectDropdownState) => void],\n ) => {\n const operator = inputs.dimension.nativeType === 'string' ? 'contains' : 'equals';\n return {\n ...inputs,\n maxOptions: inputs.maxOptions,\n setSearchValue: (searchValue: string) => setState({ searchValue: searchValue }),\n results: loadData({\n limit: inputs.maxOptions,\n from: inputs.dataset,\n select: [inputs.dimension, inputs.optionalSecondDimension].filter(Boolean),\n filters: state?.searchValue\n ? [\n {\n operator,\n property: inputs.dimension,\n value: state.searchValue,\n },\n ]\n : undefined,\n }),\n };\n },\n events: {\n onChange: (selectedValue: string) => {\n return {\n value: selectedValue || Value.noFilter(),\n };\n },\n },\n});\n"],"names":["meta","dataset","dimension","title","description","placeholder","MAX_OPTIONS","Value","SingleSelectFieldPro_emb","defineComponent","SingleSelectFieldPro","inputs","state","setState","operator","searchValue","loadData","selectedValue"],"mappings":";;;;AAKO,MAAMA,IAAO;AAAA,EAClB,MAAM;AAAA,EACN,OAAO;AAAA,EACP,UAAU;AAAA,EACV,cAAc;AAAA,EACd,eAAe;AAAA,EACf,QAAQ;AAAA,IACNC;AAAA,IACA,EAAE,GAAGC,GAAW,OAAO,sCAAA;AAAA,IACvBC;AAAA,IACAC;AAAA,IACA,EAAE,GAAGC,GAAa,cAAc,kBAAA;AAAA,IAChC;AAAA,MACE,MAAM;AAAA,MACN,MAAM;AAAA,MACN,OAAO;AAAA,MACP,UAAU;AAAA,MACV,cAAcC;AAAA,IAAA;AAAA,IAEhB;AAAA,MACE,MAAM;AAAA,MACN,MAAM;AAAA,MACN,OAAO;AAAA,MACP,UAAU;AAAA,IAAA;AAAA,IAEZ;AAAA,MACE,MAAM;AAAA,MACN,QAAQ;AAAA,QACN,SAAS;AAAA,MAAA;AAAA,MAEX,UAAU;AAAA,MACV,MAAM;AAAA,MACN,OAAO;AAAA,MACP,UAAU;AAAA,MACV,aAAa;AAAA,IAAA;AAAA,EACf;AAAA,EAEF,QAAQ;AAAA,IACN;AAAA,MACE,MAAM;AAAA,MACN,OAAO;AAAA,MACP,YAAY;AAAA,QACV;AAAA,UACE,MAAM;AAAA,UACN,OAAO;AAAA,UACP,MAAM;AAAA,QAAA;AAAA,MACR;AAAA,IACF;AAAA,EACF;AAAA,EAEF,WAAW;AAAA,IACT;AAAA,MACE,MAAM;AAAA,MACN,MAAM;AAAA,MACN,cAAcC,EAAM,SAAA;AAAA,MACpB,QAAQ,CAAC,eAAe;AAAA,MACxB,QAAQ,CAAC,EAAE,MAAM,YAAY,UAAU,SAAS;AAAA,IAAA;AAAA,EAClD;AAEJ,GAMAC,IAAeC,EAAgBC,GAAsBV,GAAM;AAAA,EACzD,OAAO,CACLW,GACA,CAACC,GAAOC,CAAQ,MACb;AACH,UAAMC,IAAWH,EAAO,UAAU,eAAe,WAAW,aAAa;AACzE,WAAO;AAAA,MACL,GAAGA;AAAA,MACH,YAAYA,EAAO;AAAA,MACnB,gBAAgB,CAACI,MAAwBF,EAAS,EAAE,aAAAE,GAA0B;AAAA,MAC9E,SAASC,EAAS;AAAA,QAChB,OAAOL,EAAO;AAAA,QACd,MAAMA,EAAO;AAAA,QACb,QAAQ,CAACA,EAAO,WAAWA,EAAO,uBAAuB,EAAE,OAAO,OAAO;AAAA,QACzE,SAASC,KAAA,QAAAA,EAAO,cACZ;AAAA,UACE;AAAA,YACE,UAAAE;AAAA,YACA,UAAUH,EAAO;AAAA,YACjB,OAAOC,EAAM;AAAA,UAAA;AAAA,QACf,IAEF;AAAA,MAAA,CACL;AAAA,IAAA;AAAA,EAEL;AAAA,EACA,QAAQ;AAAA,IACN,UAAU,CAACK,OACF;AAAA,MACL,OAAOA,KAAiBV,EAAM,SAAA;AAAA,IAAS;AAAA,EAE3C;AAEJ,CAAC;"}