@embeddable.com/remarkable-ui 1.0.5 → 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.
- package/dist/BarChartDefaultHorizontalPro.js +30 -29
- package/dist/BarChartDefaultHorizontalPro.js.map +1 -1
- package/dist/BarChartDefaultPro.js +35 -34
- package/dist/BarChartDefaultPro.js.map +1 -1
- package/dist/BarChartGroupedHorizontalPro.js +29 -28
- package/dist/BarChartGroupedHorizontalPro.js.map +1 -1
- package/dist/BarChartGroupedPro.js +40 -39
- package/dist/BarChartGroupedPro.js.map +1 -1
- package/dist/BarChartStackedHorizontalPro.js +28 -27
- package/dist/BarChartStackedHorizontalPro.js.map +1 -1
- package/dist/BarChartStackedPro.js +47 -46
- package/dist/BarChartStackedPro.js.map +1 -1
- package/dist/ChartCard-FOSghcoD.js +127 -0
- package/dist/ChartCard-FOSghcoD.js.map +1 -0
- package/dist/Color.type.emb-CTiA_AzI.js +9 -0
- package/dist/Color.type.emb-CTiA_AzI.js.map +1 -0
- package/dist/ColorEditor.js +38 -0
- package/dist/ColorEditor.js.map +1 -0
- package/dist/ComparisonPeriod.type.emb-CQ63PFtq.js +14 -0
- package/dist/{ComparisonPeriod.type.emb-D0_AP_PM.js.map → ComparisonPeriod.type.emb-CQ63PFtq.js.map} +1 -1
- package/dist/ComparisonPeriodSelectFieldPro.js +33 -32
- package/dist/ComparisonPeriodSelectFieldPro.js.map +1 -1
- package/dist/DateRangeSelectFieldPro.js +10 -8
- package/dist/DateRangeSelectFieldPro.js.map +1 -1
- package/dist/DonutChartPro.js +13 -12
- package/dist/DonutChartPro.js.map +1 -1
- package/dist/DonutLabelChartPro.js +16 -15
- package/dist/DonutLabelChartPro.js.map +1 -1
- package/dist/{EditorCard-BLudeyiZ.js → EditorCard-CB-re8Qn.js} +26 -25
- package/dist/EditorCard-CB-re8Qn.js.map +1 -0
- package/dist/{HeatMap-HTlj76CN.js → HeatMap-DwXoxYyu.js} +31 -31
- package/dist/{HeatMap-HTlj76CN.js.map → HeatMap-DwXoxYyu.js.map} +1 -1
- package/dist/HeatMapPro.js +84 -60
- package/dist/HeatMapPro.js.map +1 -1
- package/dist/KpiChart-lEsVao_M.js +110 -0
- package/dist/KpiChart-lEsVao_M.js.map +1 -0
- package/dist/KpiChartNumberComparisonPro.js +55 -53
- package/dist/KpiChartNumberComparisonPro.js.map +1 -1
- package/dist/KpiChartNumberPro.js +12 -11
- package/dist/KpiChartNumberPro.js.map +1 -1
- package/dist/LineChartComparisonDefaultPro.js +114 -106
- package/dist/LineChartComparisonDefaultPro.js.map +1 -1
- package/dist/LineChartDefaultPro.js +87 -84
- package/dist/LineChartDefaultPro.js.map +1 -1
- package/dist/LineChartGroupedPro.js +52 -51
- package/dist/LineChartGroupedPro.js.map +1 -1
- package/dist/MultiSelectFieldPro.js +10 -9
- package/dist/MultiSelectFieldPro.js.map +1 -1
- package/dist/PieChartPro.js +14 -13
- package/dist/PieChartPro.js.map +1 -1
- package/dist/{PivotTable-Diy2xzoH.js → PivotTable-DlBkWU2O.js} +8 -8
- package/dist/{PivotTable-Diy2xzoH.js.map → PivotTable-DlBkWU2O.js.map} +1 -1
- package/dist/PivotTablePro.js +48 -48
- package/dist/PivotTablePro.js.map +1 -1
- package/dist/SingleSelectField-ammJ2Zc2.js +110 -0
- package/dist/SingleSelectField-ammJ2Zc2.js.map +1 -0
- package/dist/SingleSelectFieldPro.js +9 -8
- package/dist/SingleSelectFieldPro.js.map +1 -1
- package/dist/TableChartPaginated.js +73 -72
- package/dist/TableChartPaginated.js.map +1 -1
- package/dist/TablePaginated-pVrIngVd.js +12448 -0
- package/dist/TablePaginated-pVrIngVd.js.map +1 -0
- package/dist/{bars.utils-CAMiF7iA.js → bars.utils-8ka9OKUG.js} +4 -4
- package/dist/{bars.utils-CAMiF7iA.js.map → bars.utils-8ka9OKUG.js.map} +1 -1
- package/dist/{charts.utils-Cw4SeX2m.js → charts.utils-Cbyzr0nO.js} +16149 -16144
- package/dist/charts.utils-Cbyzr0nO.js.map +1 -0
- package/dist/component.constants-VpbbPSIL.js +5452 -0
- package/dist/component.constants-VpbbPSIL.js.map +1 -0
- package/dist/embeddable-components.json +14 -12
- package/dist/embeddable-theme-2b917.js +16739 -16736
- package/dist/{embeddable-types-363c8.js → embeddable-types-df460.js} +21 -17
- package/dist/embeddable-types.js.map +1 -1
- package/dist/{formatter.utils-N2gk49ys.js → formatter.utils-BLz3TSY0.js} +2 -2
- package/dist/{formatter.utils-N2gk49ys.js.map → formatter.utils-BLz3TSY0.js.map} +1 -1
- package/dist/index-B7Pv2FEr.js +48 -0
- package/dist/{index-Dwe8JLUr.js.map → index-B7Pv2FEr.js.map} +1 -1
- package/dist/index-BYbp2vA7.js +57 -0
- package/dist/index-BYbp2vA7.js.map +1 -0
- package/dist/{index-Jm7acUco.js → index-CCJCuW1J.js} +37 -36
- package/dist/index-CCJCuW1J.js.map +1 -0
- package/dist/index-DcyTRz2V.js +63 -0
- package/dist/{index-DhfbSAKi.js.map → index-DcyTRz2V.js.map} +1 -1
- package/dist/{index-BOcQ7e6Q.js → index-DtmAIOuh.js} +25 -24
- package/dist/{index-BOcQ7e6Q.js.map → index-DtmAIOuh.js.map} +1 -1
- package/dist/index-mMCdUsGD.js +63 -0
- package/dist/{index-BKkfcfXT.js.map → index-mMCdUsGD.js.map} +1 -1
- package/dist/index.js +168 -169
- package/dist/index.js.map +1 -1
- package/dist/{pies.utils-E8f3Hj1h.js → pies.utils-Cr-a3NjZ.js} +15 -14
- package/dist/{pies.utils-E8f3Hj1h.js.map → pies.utils-Cr-a3NjZ.js.map} +1 -1
- package/dist/remarkable-pro/components/charts/kpis/KpiChartNumberComparisonPro/index.d.ts.map +1 -1
- package/dist/remarkable-pro/components/charts/shared/ChartCard/ChartCard.d.ts +2 -2
- package/dist/remarkable-pro/components/charts/shared/ChartCard/ChartCard.d.ts.map +1 -1
- package/dist/remarkable-pro/components/charts/shared/ChartCard/ChartCardMenuPro/ChartCardMenuPro.d.ts +6 -2
- package/dist/remarkable-pro/components/charts/shared/ChartCard/ChartCardMenuPro/ChartCardMenuPro.d.ts.map +1 -1
- package/dist/remarkable-pro/components/charts/tables/PivotTablePro/PivotPro.utils.d.ts +2 -3
- package/dist/remarkable-pro/components/charts/tables/PivotTablePro/PivotPro.utils.d.ts.map +1 -1
- package/dist/remarkable-pro/components/charts/tables/PivotTablePro/index.d.ts +0 -1
- package/dist/remarkable-pro/components/charts/tables/PivotTablePro/index.d.ts.map +1 -1
- package/dist/remarkable-pro/components/charts/tables/TableChartPaginated/index.d.ts.map +1 -1
- package/dist/remarkable-pro/components/component.constants.d.ts +0 -14
- package/dist/remarkable-pro/components/component.constants.d.ts.map +1 -1
- package/dist/remarkable-pro/components/editors/DateRangeSelectFieldPro/index.d.ts +1 -0
- package/dist/remarkable-pro/components/editors/DateRangeSelectFieldPro/index.d.ts.map +1 -1
- package/dist/remarkable-pro/editors/ColorEditor/index.d.ts +8 -0
- package/dist/remarkable-pro/editors/ColorEditor/index.d.ts.map +1 -0
- package/dist/remarkable-pro/theme/defaults/defaults.ChartCardMenu.constants.d.ts +17 -0
- package/dist/remarkable-pro/theme/defaults/defaults.ChartCardMenu.constants.d.ts.map +1 -0
- package/dist/remarkable-pro/theme/i18n/translations/de.d.ts.map +1 -1
- package/dist/remarkable-pro/theme/i18n/translations/en.d.ts.map +1 -1
- package/dist/remarkable-pro/theme/theme.constants.d.ts.map +1 -1
- package/dist/remarkable-pro/theme/theme.types.d.ts +2 -4
- package/dist/remarkable-pro/theme/theme.types.d.ts.map +1 -1
- package/dist/remarkable-pro/theme/utils/export.utils.d.ts +4 -4
- package/dist/remarkable-pro/theme/utils/export.utils.d.ts.map +1 -1
- package/dist/remarkable-ui/components/charts/kpis/KpiChart.d.ts.map +1 -1
- package/dist/remarkable-ui/components/charts/kpis/KpiChart.stories.d.ts +2 -1
- package/dist/remarkable-ui/components/charts/kpis/KpiChart.stories.d.ts.map +1 -1
- package/dist/remarkable-ui/components/charts/kpis/KpiChart.types.d.ts +2 -1
- package/dist/remarkable-ui/components/charts/kpis/KpiChart.types.d.ts.map +1 -1
- package/dist/remarkable-ui/components/charts/kpis/components/KpiChartChange.d.ts.map +1 -1
- package/dist/remarkable-ui/components/editors/selects/MultiSelectField/MultiSelectField.d.ts +1 -1
- package/dist/remarkable-ui/components/editors/selects/MultiSelectField/MultiSelectField.d.ts.map +1 -1
- package/dist/remarkable-ui/components/editors/selects/MultiSelectField/MultiSelectField.stories.d.ts +1 -1
- package/dist/remarkable-ui/components/editors/selects/MultiSelectField/MultiSelectField.stories.d.ts.map +1 -1
- package/dist/remarkable-ui/components/editors/selects/SingleSelectField/SingleSelectField.d.ts +3 -3
- package/dist/remarkable-ui/components/editors/selects/SingleSelectField/SingleSelectField.d.ts.map +1 -1
- package/dist/remarkable-ui/components/editors/selects/SingleSelectField/SingleSelectField.stories.d.ts +3 -3
- package/dist/remarkable-ui/components/editors/selects/SingleSelectField/SingleSelectField.stories.d.ts.map +1 -1
- package/dist/remarkable-ui/components/editors/selects/shared/SelectFieldContent/SelectFieldContent.utils.d.ts +1 -1
- package/dist/remarkable-ui/components/editors/selects/shared/SelectFieldContent/SelectFieldContent.utils.d.ts.map +1 -1
- package/dist/remarkable-ui/components/editors/selects/shared/SelectFieldContent/SelectFieldOptions/SelectFieldCategory/SelectFieldCategory.d.ts.map +1 -0
- package/dist/remarkable-ui/components/editors/selects/shared/SelectFieldContent/SelectFieldOptions/SelectFieldOption/SelectFieldOption.d.ts.map +1 -0
- package/dist/remarkable-ui/components/shared/Overlay/Overlay.d.ts +8 -0
- package/dist/remarkable-ui/components/shared/Overlay/Overlay.d.ts.map +1 -0
- package/dist/remarkable-ui/components/shared/Overlay/Overlay.stories.d.ts +10 -0
- package/dist/remarkable-ui/components/shared/Overlay/Overlay.stories.d.ts.map +1 -0
- package/dist/remarkable-ui/index.d.ts +3 -4
- package/dist/remarkable-ui/index.d.ts.map +1 -1
- package/dist/remarkable-ui.css +1 -1
- package/dist/{timeRange.utils-DuutFoIE.js → timeRange.utils-AEhW9Gu4.js} +2 -2
- package/dist/{timeRange.utils-DuutFoIE.js.map → timeRange.utils-AEhW9Gu4.js.map} +1 -1
- package/package.json +1 -1
- package/dist/ChartCard-BzLW_64B.js +0 -122
- package/dist/ChartCard-BzLW_64B.js.map +0 -1
- package/dist/ComparisonPeriod.type.emb-D0_AP_PM.js +0 -14
- package/dist/EditorCard-BLudeyiZ.js.map +0 -1
- package/dist/KpiChart-DWnEF3iA.js +0 -105
- package/dist/KpiChart-DWnEF3iA.js.map +0 -1
- package/dist/SingleSelectField-CX2hEN0u.js +0 -109
- package/dist/SingleSelectField-CX2hEN0u.js.map +0 -1
- package/dist/charts.utils-Cw4SeX2m.js.map +0 -1
- package/dist/component.constants-B5vygi6l.js +0 -17905
- package/dist/component.constants-B5vygi6l.js.map +0 -1
- package/dist/index-BKkfcfXT.js +0 -62
- package/dist/index-DhfbSAKi.js +0 -62
- package/dist/index-Dwe8JLUr.js +0 -47
- package/dist/index-Jm7acUco.js.map +0 -1
- package/dist/index-_mthkdMa.js +0 -56
- package/dist/index-_mthkdMa.js.map +0 -1
- package/dist/remarkable-pro/components/charts/shared/ChartCard/ChartCard.stories.d.ts +0 -20
- package/dist/remarkable-pro/components/charts/shared/ChartCard/ChartCard.stories.d.ts.map +0 -1
- package/dist/remarkable-pro/components/charts/shared/ChartCard/ChartCardMenuPro/ChartCardMenuPro.constants.d.ts +0 -3
- package/dist/remarkable-pro/components/charts/shared/ChartCard/ChartCardMenuPro/ChartCardMenuPro.constants.d.ts.map +0 -1
- package/dist/remarkable-pro/components/charts/shared/ChartCard/ChartCardMenuPro/ChartCardMenuPro.stories.d.ts +0 -16
- package/dist/remarkable-pro/components/charts/shared/ChartCard/ChartCardMenuPro/ChartCardMenuPro.stories.d.ts.map +0 -1
- package/dist/remarkable-pro/components/charts/shared/ChartCard/ChartCardMenuPro/ChartCardMenuPro.types.d.ts +0 -16
- package/dist/remarkable-pro/components/charts/shared/ChartCard/ChartCardMenuPro/ChartCardMenuPro.types.d.ts.map +0 -1
- package/dist/remarkable-pro/components/editors/ComparisonPeriodSelectFieldPro/index.stories.d.ts +0 -12
- package/dist/remarkable-pro/components/editors/ComparisonPeriodSelectFieldPro/index.stories.d.ts.map +0 -1
- package/dist/remarkable-pro/components/editors/DateRangeSelectFieldPro/index.stories.d.ts +0 -17
- package/dist/remarkable-pro/components/editors/DateRangeSelectFieldPro/index.stories.d.ts.map +0 -1
- package/dist/remarkable-pro/components/editors/shared/EditorCard/EditorCard.stories.d.ts +0 -12
- package/dist/remarkable-pro/components/editors/shared/EditorCard/EditorCard.stories.d.ts.map +0 -1
- package/dist/remarkable-ui/components/editors/selects/shared/SelectFieldContent/SelectListOptions/SelectFieldCategory/SelectFieldCategory.d.ts.map +0 -1
- package/dist/remarkable-ui/components/editors/selects/shared/SelectFieldContent/SelectListOptions/SelectFieldOption/SelectFieldOption.d.ts.map +0 -1
- package/dist/remarkable-ui/components/shared/PageOverlay/PageOverlay.d.ts +0 -3
- package/dist/remarkable-ui/components/shared/PageOverlay/PageOverlay.d.ts.map +0 -1
- package/dist/remarkable-ui/components/shared/PageOverlay/PageOverlay.stories.d.ts +0 -7
- package/dist/remarkable-ui/components/shared/PageOverlay/PageOverlay.stories.d.ts.map +0 -1
- package/dist/remarkable-ui/components/shared/PageOverlay/PageOverlay.types.d.ts +0 -7
- package/dist/remarkable-ui/components/shared/PageOverlay/PageOverlay.types.d.ts.map +0 -1
- /package/dist/remarkable-ui/components/editors/selects/shared/SelectFieldContent/{SelectListOptions → SelectFieldOptions}/SelectFieldCategory/SelectFieldCategory.d.ts +0 -0
- /package/dist/remarkable-ui/components/editors/selects/shared/SelectFieldContent/{SelectListOptions → SelectFieldOptions}/SelectFieldOption/SelectFieldOption.d.ts +0 -0
|
@@ -6,14 +6,14 @@ const E = "en-US", e = (t, n = {}) => ({
|
|
|
6
6
|
optionLabel: () => t,
|
|
7
7
|
...n
|
|
8
8
|
}
|
|
9
|
-
}),
|
|
10
|
-
if (
|
|
9
|
+
}), D = () => globalThis.__EMBEDDABLE_BUNDLE_HASH__ ?? null, d = (t, n) => {
|
|
10
|
+
if (I.includes(t))
|
|
11
11
|
throw new Error(`Type ${t} is part of the nativeTypes and cannot be defined`, { cause: "sdk" });
|
|
12
12
|
const r = {
|
|
13
13
|
__embeddableType: "custom",
|
|
14
14
|
toString: () => t,
|
|
15
15
|
typeConfig: n
|
|
16
|
-
}, o =
|
|
16
|
+
}, o = D();
|
|
17
17
|
globalThis.__EMBEDDABLE__ = globalThis.__EMBEDDABLE__ || {};
|
|
18
18
|
const i = o ? globalThis.__EMBEDDABLE__[o] = globalThis.__EMBEDDABLE__[o] || {} : globalThis.__EMBEDDABLE__;
|
|
19
19
|
return i.types = i.types || {}, i.types = {
|
|
@@ -23,22 +23,22 @@ const E = "en-US", e = (t, n = {}) => ({
|
|
|
23
23
|
...n
|
|
24
24
|
}
|
|
25
25
|
}, r;
|
|
26
|
-
},
|
|
27
|
-
p,
|
|
26
|
+
}, L = "string", m = "number", b = "boolean", A = "time", f = "timeRange", S = "granularity", B = "dataset", y = "measure", M = "dimension", h = "dimensionOrMeasure", l = [
|
|
28
27
|
L,
|
|
29
|
-
|
|
28
|
+
m,
|
|
30
29
|
b,
|
|
30
|
+
A,
|
|
31
31
|
f,
|
|
32
32
|
S
|
|
33
|
-
],
|
|
34
|
-
...
|
|
33
|
+
], I = [
|
|
34
|
+
...l,
|
|
35
35
|
B,
|
|
36
36
|
y,
|
|
37
37
|
M,
|
|
38
38
|
h
|
|
39
|
-
],
|
|
40
|
-
var i, g, T,
|
|
41
|
-
const r =
|
|
39
|
+
], N = () => globalThis.__EMBEDDABLE_BUNDLE_HASH__ ?? null, s = (t, n) => {
|
|
40
|
+
var i, g, T, p;
|
|
41
|
+
const r = N();
|
|
42
42
|
globalThis.__EMBEDDABLE__ ?? (globalThis.__EMBEDDABLE__ = {});
|
|
43
43
|
const o = r ? (i = globalThis.__EMBEDDABLE__)[r] ?? (i[r] = {}) : globalThis.__EMBEDDABLE__;
|
|
44
44
|
if (typeof t == "string")
|
|
@@ -47,7 +47,7 @@ const E = "en-US", e = (t, n = {}) => ({
|
|
|
47
47
|
const c = t.toString();
|
|
48
48
|
if (!((T = o == null ? void 0 : o.types) != null && T[c]))
|
|
49
49
|
return;
|
|
50
|
-
(
|
|
50
|
+
(p = o.types[c]).options ?? (p.options = []), o.types[c].options.push(n);
|
|
51
51
|
}
|
|
52
52
|
};
|
|
53
53
|
e("string", {
|
|
@@ -99,14 +99,14 @@ e("dataset");
|
|
|
99
99
|
e("measure");
|
|
100
100
|
e("dimension");
|
|
101
101
|
e("dimensionOrMeasure");
|
|
102
|
-
const
|
|
102
|
+
const a = d("align", {
|
|
103
103
|
label: "Align",
|
|
104
104
|
optionLabel: (t) => t
|
|
105
105
|
});
|
|
106
|
-
s(
|
|
107
|
-
s(
|
|
108
|
-
s(
|
|
109
|
-
const _ =
|
|
106
|
+
s(a, "left");
|
|
107
|
+
s(a, "center");
|
|
108
|
+
s(a, "right");
|
|
109
|
+
const _ = d("comparisonPeriod", {
|
|
110
110
|
label: "Comparison Period",
|
|
111
111
|
optionLabel: (t) => t
|
|
112
112
|
});
|
|
@@ -115,4 +115,8 @@ s(_, "Previous week");
|
|
|
115
115
|
s(_, "Previous month");
|
|
116
116
|
s(_, "Previous quarter");
|
|
117
117
|
s(_, "Previous year");
|
|
118
|
+
d("color", {
|
|
119
|
+
label: "Color",
|
|
120
|
+
optionLabel: (t) => t.toUpperCase()
|
|
121
|
+
});
|
|
118
122
|
//# sourceMappingURL=embeddable-types.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"embeddable-types.js","sources":["../node_modules/@embeddable.com/core/lib/index.esm.js","../src/remarkable-pro/components/types/Align.type.emb.ts","../src/remarkable-pro/components/types/ComparisonPeriod.type.emb.ts"],"sourcesContent":["import { mergician } from 'mergician';\n\nconst DEFAULT_LOCALE = \"en-US\";\nconst normalizeEntities = (entities, { mapFn = (x) => x, filterFn = Boolean, }) => {\n if (!entities)\n return undefined;\n const filtered = entities.filter(filterFn);\n if (filtered.length === 0)\n return undefined;\n return filtered.map(mapFn);\n};\nconst getName = (x) => x.name;\nconst checkTimeDimension = (timeDimension) => Boolean(timeDimension &&\n timeDimension.dimension &&\n (timeDimension.granularity || timeDimension.dateRange));\nconst validateOrderBy = (orderByParam, dimensions, measures, timeDimensions) => {\n const unknownDimensionsOrMeasures = [];\n const dimensionAndMeasureNames = [\n ...[...measures, ...dimensions].filter(Boolean).map((x) => x.name),\n ...timeDimensions\n .filter(Boolean)\n .map((x) => x.dimension)\n .filter(Boolean),\n ];\n for (const orderBy of orderByParam) {\n const { name } = orderBy.property;\n if (dimensionAndMeasureNames.includes(name))\n continue;\n unknownDimensionsOrMeasures.push(name);\n }\n return unknownDimensionsOrMeasures;\n};\nconst createBuiltInType = (name, typeConfig = {}) => ({\n __embeddableType: \"built-in\",\n toString: () => name,\n typeConfig: {\n label: name,\n optionLabel: () => name,\n ...typeConfig,\n },\n});\nconst validateFilter = (filter) => {\n if (!filter.property)\n return \"filter property must be set\";\n if (!filter.operator)\n return \"filter operator must be set\";\n};\nconst convertFilterValue = (value) => {\n // no need to convert these values\n if (value == null ||\n typeof value === \"string\" ||\n typeof value === \"boolean\" ||\n typeof value === \"number\" ||\n value instanceof Date ||\n Array.isArray(value)) {\n return value;\n }\n // time or timeRange must be converted\n if (value?.relativeTimeString)\n return value?.relativeTimeString;\n if (Object.hasOwn(value, \"date\"))\n return value?.date;\n if (Object.hasOwn(value, \"from\") || Object.hasOwn(value, \"to\")) {\n const timeRange = value;\n return [timeRange?.from, timeRange?.to].filter(Boolean);\n }\n};\nfunction deduplicateEntitiesByName(entities) {\n if (!entities || entities.length === 0)\n return [];\n const seen = new Set();\n return entities.filter((entity) => {\n if (seen.has(entity.name)) {\n return false;\n }\n seen.add(entity.name);\n return true;\n });\n}\n\nconst DIMENSION_TYPE = \"dimension\";\nconst MEASURE_TYPE = \"measure\";\nconst deepFlattenSelect = (input) => {\n if (Array.isArray(input)) {\n return input.flatMap(deepFlattenSelect);\n }\n return [input];\n};\nconst processSelectParam = (selectParam) => {\n const result = {\n dimensions: [],\n measures: [],\n timeDimensions: [],\n };\n if (!selectParam) {\n return result;\n }\n const flat = deepFlattenSelect(selectParam).filter(Boolean);\n if (!flat.length) {\n result.error = \"select must not be empty\";\n return result;\n }\n for (const ent of flat) {\n const isValidEntity = typeof ent === \"object\" &&\n (isDimensionOrMeasure(ent) || isTimeDimension(ent));\n if (!isValidEntity) {\n result.error =\n \"select must only contain Dimension, Measure or TimeDimension objects\";\n return result;\n }\n if (isTimeDimension(ent)) {\n result.timeDimensions.push(ent);\n }\n else if (isDimension(ent)) {\n const dimension = ent;\n const granularity = dimension.inputs?.granularity;\n if (dimension.nativeType === \"time\" && granularity) {\n result.timeDimensions.push({\n dimension: dimension.name,\n granularity,\n title: dimension.title,\n });\n }\n else {\n result.dimensions.push(dimension);\n }\n }\n else if (isMeasure(ent)) {\n result.measures.push(ent);\n }\n else {\n const type = \"__type__\" in ent ? ent.__type__ : typeof ent;\n result.error = `Unknown __type__ in select: ${type}`;\n return result;\n }\n }\n return result;\n};\nfunction validateLegacyFields(request) {\n if (request.measures?.length > 0 &&\n request.measures.some((m) => m?.__type__ !== MEASURE_TYPE)) {\n return \"Unexpected type passed to `measures` in loadData function. Expected an array of type Measure.\";\n }\n if (request.dimensions?.length > 0 &&\n request.dimensions.some((m) => m?.__type__ !== DIMENSION_TYPE)) {\n return \"Unexpected type passed to `dimensions` in loadData function. Expected an array of type Dimension.\";\n }\n return null;\n}\nfunction processApiSelection(request) {\n const result = {\n dimensions: [],\n measures: [],\n timeDimensions: [],\n usingSelect: false,\n };\n if (request.select) {\n result.usingSelect = true;\n const selectResult = processSelectParam(request.select);\n if (selectResult.error) {\n result.error = selectResult.error;\n return result;\n }\n result.dimensions = selectResult.dimensions;\n result.measures = selectResult.measures;\n result.timeDimensions = selectResult.timeDimensions;\n }\n else {\n const legacyError = validateLegacyFields(request);\n if (legacyError) {\n result.error = legacyError;\n return result;\n }\n result.dimensions =\n normalizeEntities(request.dimensions, { mapFn: (x) => x }) ?? [];\n result.measures =\n normalizeEntities(request.measures, { mapFn: (x) => x }) ?? [];\n result.timeDimensions =\n normalizeEntities(request.timeDimensions, { filterFn: Boolean }) ?? [];\n }\n result.dimensions = deduplicateEntitiesByName(result.dimensions);\n result.measures = deduplicateEntitiesByName(result.measures);\n return result;\n}\nfunction validateOrderByLogic(orderBy, dimensions, measures, timeDimensions) {\n const unknownDimensionsOrMeasures = validateOrderBy(orderBy ?? [], dimensions, measures, timeDimensions);\n if (unknownDimensionsOrMeasures.length > 0) {\n return `Cannot order by ${unknownDimensionsOrMeasures.join(\", \")} as no such ${unknownDimensionsOrMeasures.length === 1 ? \"property\" : \"properties\"} has been loaded.`;\n }\n return null;\n}\nfunction validateFiltersLogic(filters) {\n if (filters) {\n const errors = filters\n .map((f, index) => ({\n index,\n message: validateFilter(f),\n }))\n .filter((e) => !!e.message);\n if (errors.length) {\n return errors\n .map((e) => `filter[${e.index}] is not valid: ${e.message}`)\n .join(\"\\n\");\n }\n }\n return null;\n}\nfunction buildQueryObject(request, dimensions, measures, timeDimensions, order) {\n return {\n inputName: request.from.inputName,\n datasetId: request.from.datasetId,\n embeddableId: request.from.embeddableId,\n dimensions: normalizeEntities(dimensions, { mapFn: getName }) ?? [],\n measures: normalizeEntities(measures, { mapFn: getName }) ?? [],\n order,\n timeDimensions: normalizeEntities(timeDimensions, { filterFn: checkTimeDimension }) ?? [],\n offset: request.offset,\n limit: request.limit,\n variableValues: request.from.variableValues,\n filters: request.filters?.map((f) => ({\n member: f.property.name,\n operator: f.operator,\n values: convertFilterValue(f.value),\n })),\n timezone: request.timezone,\n countRows: request.countRows,\n };\n}\n\nconst LOAD_DATA_EVENT = \"embeddable-event:load-data\";\nconst FilterOperator = {\n equals: \"equals\",\n notEquals: \"notEquals\",\n contains: \"contains\",\n notContains: \"notContains\",\n startsWith: \"startsWith\",\n endsWith: \"endsWith\",\n gt: \"gt\",\n gte: \"gte\",\n lt: \"lt\",\n lte: \"lte\",\n notNull: \"set\",\n isNull: \"notSet\",\n inDateRange: \"inDateRange\",\n notInDateRange: \"notInDateRange\",\n beforeDate: \"beforeDate\",\n afterDate: \"afterDate\",\n measureFilter: \"measureFilter\",\n};\nconst isLoadDataParams = (ldp) => typeof ldp === \"object\" &&\n ldp &&\n \"requestParams\" in ldp &&\n \"dataLoader\" in ldp;\nconst executeDataRequest = (triggerElement, request, componentId, propertyName) => {\n if (!request.from)\n return \"No dataset selected\";\n // Mutually exclusive API check\n if (request.select &&\n (request.dimensions || request.measures || request.timeDimensions)) {\n return \"loadData expects you to use either dimensions, timeDimensions and measures, or select. You cannot use both together.\";\n }\n // Process select or legacy fields\n const apiResult = processApiSelection(request);\n if (apiResult.error) {\n return apiResult.error;\n }\n const { dimensions, measures, timeDimensions } = apiResult;\n // Validate required fields\n const dimensionsOrMeasuresDefined = dimensions.length || measures.length || timeDimensions.length;\n if (!dimensionsOrMeasuresDefined) {\n return \"At least a dimension or a measure should be selected.\";\n }\n // Order By Validation\n const orderByError = validateOrderByLogic(request.orderBy, dimensions, measures, timeDimensions);\n if (orderByError) {\n return orderByError;\n }\n // Filter Validation\n const filterError = validateFiltersLogic(request.filters);\n if (filterError) {\n return filterError;\n }\n // Prepare OrderBy for query\n const order = normalizeEntities(request.orderBy, {\n mapFn: (o) => [o.property.name, o.direction],\n });\n // Build Query Object\n const query = buildQueryObject(request, dimensions, measures, timeDimensions, order);\n // Dispatch Event\n triggerElement.dispatchEvent(new CustomEvent(LOAD_DATA_EVENT, {\n bubbles: true,\n composed: true,\n detail: {\n query,\n componentId,\n propertyName,\n },\n }));\n};\nconst loadData = (requestParams) => ({\n requestParams,\n dataLoader: executeDataRequest,\n});\nconst isDimension = (dimensionOrMeasure) => dimensionOrMeasure?.__type__ === DIMENSION_TYPE;\nconst isMeasure = (dimensionOrMeasure) => dimensionOrMeasure?.__type__ === MEASURE_TYPE;\nconst isTimeDimension = (dimensionOrMeasure) => \"dimension\" in (dimensionOrMeasure ?? {}) &&\n !(\"__type__\" in dimensionOrMeasure);\nconst isDimensionOrMeasure = (dimensionOrMeasure) => isDimension(dimensionOrMeasure) || isMeasure(dimensionOrMeasure);\n\nconst getOperationObject = (operation, value) => ({\n operation,\n value: value ?? null,\n __embeddableVariableMeta: true,\n});\nconst Value = {\n noFilter: () => getOperationObject(\"NO_FILTER\"),\n of: (value) => getOperationObject(\"VALUE\", value),\n};\n\nconst UPDATE_VALUE_EVENT = \"embeddable:value:changed\";\nconst setValue = (triggerElement, value, componentId, eventName) => {\n const event = new CustomEvent(UPDATE_VALUE_EVENT, {\n bubbles: true,\n composed: true,\n detail: {\n componentId,\n value,\n eventName,\n },\n });\n triggerElement.dispatchEvent(event);\n};\n\n// Helper to get the bundleHash from window if available\nconst getBundleHash$1 = () => globalThis.__EMBEDDABLE_BUNDLE_HASH__ ?? null;\nconst defineType = (typeName, typeConfig) => {\n if (ALL_NATIVE_TYPES.includes(typeName)) {\n throw new Error(`Type ${typeName} is part of the nativeTypes and cannot be defined`, { cause: \"sdk\" });\n }\n const type = {\n __embeddableType: \"custom\",\n toString: () => typeName,\n typeConfig,\n };\n // Get the bundleHash from stored value or window\n const bundleHash = getBundleHash$1();\n globalThis.__EMBEDDABLE__ = globalThis.__EMBEDDABLE__ || {};\n const embeddable = bundleHash\n ? (globalThis.__EMBEDDABLE__[bundleHash] =\n globalThis.__EMBEDDABLE__[bundleHash] || {})\n : globalThis.__EMBEDDABLE__;\n embeddable.types = embeddable.types || {};\n // Preserve existing types by merging with new type\n embeddable.types = {\n ...embeddable.types,\n [typeName]: {\n name: typeName,\n ...typeConfig,\n },\n };\n return type;\n};\nconst STRING = \"string\";\nconst NUMBER = \"number\";\nconst BOOLEAN = \"boolean\";\nconst TIME = \"time\";\nconst TIME_RANGE = \"timeRange\";\nconst GRANULARITY = \"granularity\";\nconst DATASET = \"dataset\";\nconst MEASURE = \"measure\";\nconst DIMENSION = \"dimension\";\nconst DIMENSION_OR_MEASURE = \"dimensionOrMeasure\";\nconst DEFAULT_NATIVE_TYPES = [\n STRING,\n NUMBER,\n BOOLEAN,\n TIME,\n TIME_RANGE,\n GRANULARITY,\n];\nconst ALL_NATIVE_TYPES = [\n ...DEFAULT_NATIVE_TYPES,\n DATASET,\n MEASURE,\n DIMENSION,\n DIMENSION_OR_MEASURE,\n];\nconst MEASURE_TYPE_STRING = \"string\";\nconst MEASURE_TYPE_TIME = \"time\";\nconst MEASURE_TYPE_BOOLEAN = \"boolean\";\nconst MEASURE_TYPE_NUMBER = \"number\";\nconst MEASURE_TYPE_COUNT = \"count\";\nconst MEASURE_TYPE_COUNT_DISTINCT = \"count_distinct\";\nconst MEASURE_TYPE_COUNT_DISTINCT_APPROX = \"count_distinct_approx\";\nconst MEASURE_TYPE_SUM = \"sum\";\nconst MEASURE_TYPE_AVG = \"avg\";\nconst MEASURE_TYPE_MIN = \"min\";\nconst MEASURE_TYPE_MAX = \"max\";\nconst MEASURE_TYPES = [\n MEASURE_TYPE_STRING,\n MEASURE_TYPE_TIME,\n MEASURE_TYPE_BOOLEAN,\n MEASURE_TYPE_NUMBER,\n MEASURE_TYPE_COUNT,\n MEASURE_TYPE_COUNT_DISTINCT,\n MEASURE_TYPE_COUNT_DISTINCT_APPROX,\n MEASURE_TYPE_SUM,\n MEASURE_TYPE_AVG,\n MEASURE_TYPE_MIN,\n MEASURE_TYPE_MAX,\n];\nconst DIMENSION_TYPE_STRING = \"string\";\nconst DIMENSION_TYPE_NUMBER = \"number\";\nconst DIMENSION_TYPE_BOOLEAN = \"boolean\";\nconst DIMENSION_TYPE_GEO = \"geo\";\nconst DIMENSION_TYPE_TIME = \"time\";\nconst DIMENSION_TYPES = [\n DIMENSION_TYPE_STRING,\n DIMENSION_TYPE_NUMBER,\n DIMENSION_TYPE_BOOLEAN,\n DIMENSION_TYPE_GEO,\n DIMENSION_TYPE_TIME,\n];\nconst DIMENSION_OR_MEASURE_TYPES = [\n ...DIMENSION_TYPES,\n ...MEASURE_TYPES,\n];\n\n// Helper to get the bundleHash from window if available\n// Check if we have a bundleHash in the window\nconst getBundleHash = () => globalThis.__EMBEDDABLE_BUNDLE_HASH__ ?? null;\nconst defineOption = (type, option) => {\n // Get the bundleHash from stored value or window\n const bundleHash = getBundleHash();\n globalThis.__EMBEDDABLE__ ??= {};\n const embeddable = bundleHash\n ? (globalThis.__EMBEDDABLE__[bundleHash] ??= {})\n : globalThis.__EMBEDDABLE__;\n if (typeof type === \"string\") {\n // Handle native types\n embeddable.nativeTypes = embeddable.nativeTypes || {};\n embeddable.nativeTypes[type] = embeddable.nativeTypes[type] || {};\n embeddable.nativeTypes[type].options ??= [];\n embeddable.nativeTypes[type].options.push(option);\n }\n else {\n // Handle custom types\n const typeName = type.toString();\n if (!embeddable?.types?.[typeName])\n return;\n embeddable.types[typeName].options ??= [];\n embeddable.types[typeName].options.push(option);\n }\n};\n\nconst StringType = createBuiltInType(\"string\", {\n transform: (value) => value,\n optionLabel: (value) => Array.isArray(value)\n ? `[${value.map((v) => `\"${v}\"`).join(\",\")}]`\n : `\"${value}\"`,\n});\nconst NumberType = createBuiltInType(\"number\", {\n transform: (value) => Array.isArray(value) ? value : value ? Number(value) : value,\n optionLabel: (value) => Array.isArray(value)\n ? `[${value.join(\",\")}]`\n : (value?.toLocaleString(DEFAULT_LOCALE) ?? \"\"),\n});\nconst BooleanType = createBuiltInType(\"boolean\", {\n transform: (value) => value === \"true\" || value === true,\n optionLabel: (value) => (value ? \"true\" : \"false\"),\n});\nconst TimeType = createBuiltInType(\"time\", {\n transform: (value) => {\n const date = value?.date ? new Date(value.date) : undefined;\n const isValid = date && date.toString() !== \"Invalid Date\";\n return {\n date: isValid ? date : undefined,\n relativeTimeString: value?.relativeTimeString,\n };\n },\n optionLabel: (value) => {\n if (!value)\n return \"\";\n if (value?.date) {\n return (value.date?.toLocaleDateString(DEFAULT_LOCALE) ??\n value.date.toLocaleString());\n }\n return value.relativeTimeString;\n },\n});\nconst TimeRangeType = createBuiltInType(\"timeRange\", {\n transform: (value) => {\n // Return undefined instead of a null populated object\n if (!value)\n return undefined;\n const [from, to] = [value?.from, value?.to];\n const fromDate = new Date(from);\n const toDate = new Date(to);\n return {\n from: fromDate.toString() !== \"Invalid Date\" ? fromDate : undefined,\n to: toDate.toString() !== \"Invalid Date\" ? toDate : undefined,\n relativeTimeString: value?.relativeTimeString,\n };\n },\n optionLabel: (value) => {\n if (!value)\n return \"\";\n if (value?.from && value?.to) {\n return `${value.from?.toLocaleDateString(DEFAULT_LOCALE) ??\n value.from?.toLocaleString()},${value.to?.toLocaleDateString(DEFAULT_LOCALE) ??\n value.to?.toLocaleString()}`;\n }\n return value?.relativeTimeString;\n },\n});\nconst GranularityType = createBuiltInType(\"granularity\", {\n transform: (value) => value,\n optionLabel: (value) => value,\n});\nconst DatasetType = createBuiltInType(\"dataset\");\nconst MeasureType = createBuiltInType(\"measure\");\nconst DimensionType = createBuiltInType(\"dimension\");\nconst DimensionOrMeasureType = createBuiltInType(\"dimensionOrMeasure\");\n\nvar nativeTypes = /*#__PURE__*/Object.freeze({\n __proto__: null,\n BooleanType: BooleanType,\n DatasetType: DatasetType,\n DimensionOrMeasureType: DimensionOrMeasureType,\n DimensionType: DimensionType,\n GranularityType: GranularityType,\n MeasureType: MeasureType,\n NumberType: NumberType,\n StringType: StringType,\n TimeRangeType: TimeRangeType,\n TimeType: TimeType\n});\n\nconst defineTheme = (parentTheme, childTheme) => {\n return mergician(parentTheme, childTheme);\n};\n\nexport { ALL_NATIVE_TYPES, DEFAULT_NATIVE_TYPES, DIMENSION_OR_MEASURE_TYPES, DIMENSION_TYPES, FilterOperator, MEASURE_TYPES, Value, defineOption, defineTheme, defineType, isDimension, isDimensionOrMeasure, isLoadDataParams, isMeasure, isTimeDimension, loadData, nativeTypes, setValue };\n","import { defineOption, defineType } from '@embeddable.com/core';\n\nconst AlignType = defineType('align', {\n label: 'Align',\n optionLabel: (value: string) => value,\n});\n\ndefineOption(AlignType, 'left');\ndefineOption(AlignType, 'center');\ndefineOption(AlignType, 'right');\n\nexport default AlignType;\n","import { defineOption, defineType } from '@embeddable.com/core';\n\nconst ComparisonPeriodType = defineType('comparisonPeriod', {\n label: 'Comparison Period',\n optionLabel: (value: string) => value,\n});\n\ndefineOption(ComparisonPeriodType, 'Previous period');\ndefineOption(ComparisonPeriodType, 'Previous week');\ndefineOption(ComparisonPeriodType, 'Previous month');\ndefineOption(ComparisonPeriodType, 'Previous quarter');\ndefineOption(ComparisonPeriodType, 'Previous year');\n\nexport default ComparisonPeriodType;\n"],"names":["DEFAULT_LOCALE","createBuiltInType","name","typeConfig","getBundleHash$1","defineType","typeName","ALL_NATIVE_TYPES","type","bundleHash","embeddable","STRING","NUMBER","BOOLEAN","TIME","TIME_RANGE","GRANULARITY","DATASET","MEASURE","DIMENSION","DIMENSION_OR_MEASURE","DEFAULT_NATIVE_TYPES","getBundleHash","defineOption","option","_a","_b","_c","_d","value","v","date","from","to","fromDate","toDate","AlignType","ComparisonPeriodType"],"mappings":"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","x_google_ignoreList":[0]}
|
|
1
|
+
{"version":3,"file":"embeddable-types.js","sources":["../node_modules/@embeddable.com/core/lib/index.esm.js","../src/remarkable-pro/components/types/Align.type.emb.ts","../src/remarkable-pro/components/types/ComparisonPeriod.type.emb.ts","../src/remarkable-pro/editors/ColorEditor/Color.type.emb.ts"],"sourcesContent":["import { mergician } from 'mergician';\n\nconst DEFAULT_LOCALE = \"en-US\";\nconst normalizeEntities = (entities, { mapFn = (x) => x, filterFn = Boolean, }) => {\n if (!entities)\n return undefined;\n const filtered = entities.filter(filterFn);\n if (filtered.length === 0)\n return undefined;\n return filtered.map(mapFn);\n};\nconst getName = (x) => x.name;\nconst checkTimeDimension = (timeDimension) => Boolean(timeDimension &&\n timeDimension.dimension &&\n (timeDimension.granularity || timeDimension.dateRange));\nconst validateOrderBy = (orderByParam, dimensions, measures, timeDimensions) => {\n const unknownDimensionsOrMeasures = [];\n const dimensionAndMeasureNames = [\n ...[...measures, ...dimensions].filter(Boolean).map((x) => x.name),\n ...timeDimensions\n .filter(Boolean)\n .map((x) => x.dimension)\n .filter(Boolean),\n ];\n for (const orderBy of orderByParam) {\n const { name } = orderBy.property;\n if (dimensionAndMeasureNames.includes(name))\n continue;\n unknownDimensionsOrMeasures.push(name);\n }\n return unknownDimensionsOrMeasures;\n};\nconst createBuiltInType = (name, typeConfig = {}) => ({\n __embeddableType: \"built-in\",\n toString: () => name,\n typeConfig: {\n label: name,\n optionLabel: () => name,\n ...typeConfig,\n },\n});\nconst validateFilter = (filter) => {\n if (!filter.property)\n return \"filter property must be set\";\n if (!filter.operator)\n return \"filter operator must be set\";\n};\nconst convertFilterValue = (value) => {\n // no need to convert these values\n if (value == null ||\n typeof value === \"string\" ||\n typeof value === \"boolean\" ||\n typeof value === \"number\" ||\n value instanceof Date ||\n Array.isArray(value)) {\n return value;\n }\n // time or timeRange must be converted\n if (value?.relativeTimeString)\n return value?.relativeTimeString;\n if (Object.hasOwn(value, \"date\"))\n return value?.date;\n if (Object.hasOwn(value, \"from\") || Object.hasOwn(value, \"to\")) {\n const timeRange = value;\n return [timeRange?.from, timeRange?.to].filter(Boolean);\n }\n};\nfunction deduplicateEntitiesByName(entities) {\n if (!entities || entities.length === 0)\n return [];\n const seen = new Set();\n return entities.filter((entity) => {\n if (seen.has(entity.name)) {\n return false;\n }\n seen.add(entity.name);\n return true;\n });\n}\n\nconst DIMENSION_TYPE = \"dimension\";\nconst MEASURE_TYPE = \"measure\";\nconst deepFlattenSelect = (input) => {\n if (Array.isArray(input)) {\n return input.flatMap(deepFlattenSelect);\n }\n return [input];\n};\nconst processSelectParam = (selectParam) => {\n const result = {\n dimensions: [],\n measures: [],\n timeDimensions: [],\n };\n if (!selectParam) {\n return result;\n }\n const flat = deepFlattenSelect(selectParam).filter(Boolean);\n if (!flat.length) {\n result.error = \"select must not be empty\";\n return result;\n }\n for (const ent of flat) {\n const isValidEntity = typeof ent === \"object\" &&\n (isDimensionOrMeasure(ent) || isTimeDimension(ent));\n if (!isValidEntity) {\n result.error =\n \"select must only contain Dimension, Measure or TimeDimension objects\";\n return result;\n }\n if (isTimeDimension(ent)) {\n result.timeDimensions.push(ent);\n }\n else if (isDimension(ent)) {\n const dimension = ent;\n const granularity = dimension.inputs?.granularity;\n if (dimension.nativeType === \"time\" && granularity) {\n result.timeDimensions.push({\n dimension: dimension.name,\n granularity,\n title: dimension.title,\n });\n }\n else {\n result.dimensions.push(dimension);\n }\n }\n else if (isMeasure(ent)) {\n result.measures.push(ent);\n }\n else {\n const type = \"__type__\" in ent ? ent.__type__ : typeof ent;\n result.error = `Unknown __type__ in select: ${type}`;\n return result;\n }\n }\n return result;\n};\nfunction validateLegacyFields(request) {\n if (request.measures?.length > 0 &&\n request.measures.some((m) => m?.__type__ !== MEASURE_TYPE)) {\n return \"Unexpected type passed to `measures` in loadData function. Expected an array of type Measure.\";\n }\n if (request.dimensions?.length > 0 &&\n request.dimensions.some((m) => m?.__type__ !== DIMENSION_TYPE)) {\n return \"Unexpected type passed to `dimensions` in loadData function. Expected an array of type Dimension.\";\n }\n return null;\n}\nfunction processApiSelection(request) {\n const result = {\n dimensions: [],\n measures: [],\n timeDimensions: [],\n usingSelect: false,\n };\n if (request.select) {\n result.usingSelect = true;\n const selectResult = processSelectParam(request.select);\n if (selectResult.error) {\n result.error = selectResult.error;\n return result;\n }\n result.dimensions = selectResult.dimensions;\n result.measures = selectResult.measures;\n result.timeDimensions = selectResult.timeDimensions;\n }\n else {\n const legacyError = validateLegacyFields(request);\n if (legacyError) {\n result.error = legacyError;\n return result;\n }\n result.dimensions =\n normalizeEntities(request.dimensions, { mapFn: (x) => x }) ?? [];\n result.measures =\n normalizeEntities(request.measures, { mapFn: (x) => x }) ?? [];\n result.timeDimensions =\n normalizeEntities(request.timeDimensions, { filterFn: Boolean }) ?? [];\n }\n result.dimensions = deduplicateEntitiesByName(result.dimensions);\n result.measures = deduplicateEntitiesByName(result.measures);\n return result;\n}\nfunction validateOrderByLogic(orderBy, dimensions, measures, timeDimensions) {\n const unknownDimensionsOrMeasures = validateOrderBy(orderBy ?? [], dimensions, measures, timeDimensions);\n if (unknownDimensionsOrMeasures.length > 0) {\n return `Cannot order by ${unknownDimensionsOrMeasures.join(\", \")} as no such ${unknownDimensionsOrMeasures.length === 1 ? \"property\" : \"properties\"} has been loaded.`;\n }\n return null;\n}\nfunction validateFiltersLogic(filters) {\n if (filters) {\n const errors = filters\n .map((f, index) => ({\n index,\n message: validateFilter(f),\n }))\n .filter((e) => !!e.message);\n if (errors.length) {\n return errors\n .map((e) => `filter[${e.index}] is not valid: ${e.message}`)\n .join(\"\\n\");\n }\n }\n return null;\n}\nfunction buildQueryObject(request, dimensions, measures, timeDimensions, order) {\n return {\n inputName: request.from.inputName,\n datasetId: request.from.datasetId,\n embeddableId: request.from.embeddableId,\n dimensions: normalizeEntities(dimensions, { mapFn: getName }) ?? [],\n measures: normalizeEntities(measures, { mapFn: getName }) ?? [],\n order,\n timeDimensions: normalizeEntities(timeDimensions, { filterFn: checkTimeDimension }) ?? [],\n offset: request.offset,\n limit: request.limit,\n variableValues: request.from.variableValues,\n filters: request.filters?.map((f) => ({\n member: f.property.name,\n operator: f.operator,\n values: convertFilterValue(f.value),\n })),\n timezone: request.timezone,\n countRows: request.countRows,\n };\n}\n\nconst LOAD_DATA_EVENT = \"embeddable-event:load-data\";\nconst FilterOperator = {\n equals: \"equals\",\n notEquals: \"notEquals\",\n contains: \"contains\",\n notContains: \"notContains\",\n startsWith: \"startsWith\",\n endsWith: \"endsWith\",\n gt: \"gt\",\n gte: \"gte\",\n lt: \"lt\",\n lte: \"lte\",\n notNull: \"set\",\n isNull: \"notSet\",\n inDateRange: \"inDateRange\",\n notInDateRange: \"notInDateRange\",\n beforeDate: \"beforeDate\",\n afterDate: \"afterDate\",\n measureFilter: \"measureFilter\",\n};\nconst isLoadDataParams = (ldp) => typeof ldp === \"object\" &&\n ldp &&\n \"requestParams\" in ldp &&\n \"dataLoader\" in ldp;\nconst executeDataRequest = (triggerElement, request, componentId, propertyName) => {\n if (!request.from)\n return \"No dataset selected\";\n // Mutually exclusive API check\n if (request.select &&\n (request.dimensions || request.measures || request.timeDimensions)) {\n return \"loadData expects you to use either dimensions, timeDimensions and measures, or select. You cannot use both together.\";\n }\n // Process select or legacy fields\n const apiResult = processApiSelection(request);\n if (apiResult.error) {\n return apiResult.error;\n }\n const { dimensions, measures, timeDimensions } = apiResult;\n // Validate required fields\n const dimensionsOrMeasuresDefined = dimensions.length || measures.length || timeDimensions.length;\n if (!dimensionsOrMeasuresDefined) {\n return \"At least a dimension or a measure should be selected.\";\n }\n // Order By Validation\n const orderByError = validateOrderByLogic(request.orderBy, dimensions, measures, timeDimensions);\n if (orderByError) {\n return orderByError;\n }\n // Filter Validation\n const filterError = validateFiltersLogic(request.filters);\n if (filterError) {\n return filterError;\n }\n // Prepare OrderBy for query\n const order = normalizeEntities(request.orderBy, {\n mapFn: (o) => [o.property.name, o.direction],\n });\n // Build Query Object\n const query = buildQueryObject(request, dimensions, measures, timeDimensions, order);\n // Dispatch Event\n triggerElement.dispatchEvent(new CustomEvent(LOAD_DATA_EVENT, {\n bubbles: true,\n composed: true,\n detail: {\n query,\n componentId,\n propertyName,\n },\n }));\n};\nconst loadData = (requestParams) => ({\n requestParams,\n dataLoader: executeDataRequest,\n});\nconst isDimension = (dimensionOrMeasure) => dimensionOrMeasure?.__type__ === DIMENSION_TYPE;\nconst isMeasure = (dimensionOrMeasure) => dimensionOrMeasure?.__type__ === MEASURE_TYPE;\nconst isTimeDimension = (dimensionOrMeasure) => \"dimension\" in (dimensionOrMeasure ?? {}) &&\n !(\"__type__\" in dimensionOrMeasure);\nconst isDimensionOrMeasure = (dimensionOrMeasure) => isDimension(dimensionOrMeasure) || isMeasure(dimensionOrMeasure);\n\nconst getOperationObject = (operation, value) => ({\n operation,\n value: value ?? null,\n __embeddableVariableMeta: true,\n});\nconst Value = {\n noFilter: () => getOperationObject(\"NO_FILTER\"),\n of: (value) => getOperationObject(\"VALUE\", value),\n};\n\nconst UPDATE_VALUE_EVENT = \"embeddable:value:changed\";\nconst setValue = (triggerElement, value, componentId, eventName) => {\n const event = new CustomEvent(UPDATE_VALUE_EVENT, {\n bubbles: true,\n composed: true,\n detail: {\n componentId,\n value,\n eventName,\n },\n });\n triggerElement.dispatchEvent(event);\n};\n\n// Helper to get the bundleHash from window if available\nconst getBundleHash$1 = () => globalThis.__EMBEDDABLE_BUNDLE_HASH__ ?? null;\nconst defineType = (typeName, typeConfig) => {\n if (ALL_NATIVE_TYPES.includes(typeName)) {\n throw new Error(`Type ${typeName} is part of the nativeTypes and cannot be defined`, { cause: \"sdk\" });\n }\n const type = {\n __embeddableType: \"custom\",\n toString: () => typeName,\n typeConfig,\n };\n // Get the bundleHash from stored value or window\n const bundleHash = getBundleHash$1();\n globalThis.__EMBEDDABLE__ = globalThis.__EMBEDDABLE__ || {};\n const embeddable = bundleHash\n ? (globalThis.__EMBEDDABLE__[bundleHash] =\n globalThis.__EMBEDDABLE__[bundleHash] || {})\n : globalThis.__EMBEDDABLE__;\n embeddable.types = embeddable.types || {};\n // Preserve existing types by merging with new type\n embeddable.types = {\n ...embeddable.types,\n [typeName]: {\n name: typeName,\n ...typeConfig,\n },\n };\n return type;\n};\nconst STRING = \"string\";\nconst NUMBER = \"number\";\nconst BOOLEAN = \"boolean\";\nconst TIME = \"time\";\nconst TIME_RANGE = \"timeRange\";\nconst GRANULARITY = \"granularity\";\nconst DATASET = \"dataset\";\nconst MEASURE = \"measure\";\nconst DIMENSION = \"dimension\";\nconst DIMENSION_OR_MEASURE = \"dimensionOrMeasure\";\nconst DEFAULT_NATIVE_TYPES = [\n STRING,\n NUMBER,\n BOOLEAN,\n TIME,\n TIME_RANGE,\n GRANULARITY,\n];\nconst ALL_NATIVE_TYPES = [\n ...DEFAULT_NATIVE_TYPES,\n DATASET,\n MEASURE,\n DIMENSION,\n DIMENSION_OR_MEASURE,\n];\nconst MEASURE_TYPE_STRING = \"string\";\nconst MEASURE_TYPE_TIME = \"time\";\nconst MEASURE_TYPE_BOOLEAN = \"boolean\";\nconst MEASURE_TYPE_NUMBER = \"number\";\nconst MEASURE_TYPE_COUNT = \"count\";\nconst MEASURE_TYPE_COUNT_DISTINCT = \"count_distinct\";\nconst MEASURE_TYPE_COUNT_DISTINCT_APPROX = \"count_distinct_approx\";\nconst MEASURE_TYPE_SUM = \"sum\";\nconst MEASURE_TYPE_AVG = \"avg\";\nconst MEASURE_TYPE_MIN = \"min\";\nconst MEASURE_TYPE_MAX = \"max\";\nconst MEASURE_TYPES = [\n MEASURE_TYPE_STRING,\n MEASURE_TYPE_TIME,\n MEASURE_TYPE_BOOLEAN,\n MEASURE_TYPE_NUMBER,\n MEASURE_TYPE_COUNT,\n MEASURE_TYPE_COUNT_DISTINCT,\n MEASURE_TYPE_COUNT_DISTINCT_APPROX,\n MEASURE_TYPE_SUM,\n MEASURE_TYPE_AVG,\n MEASURE_TYPE_MIN,\n MEASURE_TYPE_MAX,\n];\nconst DIMENSION_TYPE_STRING = \"string\";\nconst DIMENSION_TYPE_NUMBER = \"number\";\nconst DIMENSION_TYPE_BOOLEAN = \"boolean\";\nconst DIMENSION_TYPE_GEO = \"geo\";\nconst DIMENSION_TYPE_TIME = \"time\";\nconst DIMENSION_TYPES = [\n DIMENSION_TYPE_STRING,\n DIMENSION_TYPE_NUMBER,\n DIMENSION_TYPE_BOOLEAN,\n DIMENSION_TYPE_GEO,\n DIMENSION_TYPE_TIME,\n];\nconst DIMENSION_OR_MEASURE_TYPES = [\n ...DIMENSION_TYPES,\n ...MEASURE_TYPES,\n];\n\n// Helper to get the bundleHash from window if available\n// Check if we have a bundleHash in the window\nconst getBundleHash = () => globalThis.__EMBEDDABLE_BUNDLE_HASH__ ?? null;\nconst defineOption = (type, option) => {\n // Get the bundleHash from stored value or window\n const bundleHash = getBundleHash();\n globalThis.__EMBEDDABLE__ ??= {};\n const embeddable = bundleHash\n ? (globalThis.__EMBEDDABLE__[bundleHash] ??= {})\n : globalThis.__EMBEDDABLE__;\n if (typeof type === \"string\") {\n // Handle native types\n embeddable.nativeTypes = embeddable.nativeTypes || {};\n embeddable.nativeTypes[type] = embeddable.nativeTypes[type] || {};\n embeddable.nativeTypes[type].options ??= [];\n embeddable.nativeTypes[type].options.push(option);\n }\n else {\n // Handle custom types\n const typeName = type.toString();\n if (!embeddable?.types?.[typeName])\n return;\n embeddable.types[typeName].options ??= [];\n embeddable.types[typeName].options.push(option);\n }\n};\n\nconst StringType = createBuiltInType(\"string\", {\n transform: (value) => value,\n optionLabel: (value) => Array.isArray(value)\n ? `[${value.map((v) => `\"${v}\"`).join(\",\")}]`\n : `\"${value}\"`,\n});\nconst NumberType = createBuiltInType(\"number\", {\n transform: (value) => Array.isArray(value) ? value : value ? Number(value) : value,\n optionLabel: (value) => Array.isArray(value)\n ? `[${value.join(\",\")}]`\n : (value?.toLocaleString(DEFAULT_LOCALE) ?? \"\"),\n});\nconst BooleanType = createBuiltInType(\"boolean\", {\n transform: (value) => value === \"true\" || value === true,\n optionLabel: (value) => (value ? \"true\" : \"false\"),\n});\nconst TimeType = createBuiltInType(\"time\", {\n transform: (value) => {\n const date = value?.date ? new Date(value.date) : undefined;\n const isValid = date && date.toString() !== \"Invalid Date\";\n return {\n date: isValid ? date : undefined,\n relativeTimeString: value?.relativeTimeString,\n };\n },\n optionLabel: (value) => {\n if (!value)\n return \"\";\n if (value?.date) {\n return (value.date?.toLocaleDateString(DEFAULT_LOCALE) ??\n value.date.toLocaleString());\n }\n return value.relativeTimeString;\n },\n});\nconst TimeRangeType = createBuiltInType(\"timeRange\", {\n transform: (value) => {\n // Return undefined instead of a null populated object\n if (!value)\n return undefined;\n const [from, to] = [value?.from, value?.to];\n const fromDate = new Date(from);\n const toDate = new Date(to);\n return {\n from: fromDate.toString() !== \"Invalid Date\" ? fromDate : undefined,\n to: toDate.toString() !== \"Invalid Date\" ? toDate : undefined,\n relativeTimeString: value?.relativeTimeString,\n };\n },\n optionLabel: (value) => {\n if (!value)\n return \"\";\n if (value?.from && value?.to) {\n return `${value.from?.toLocaleDateString(DEFAULT_LOCALE) ??\n value.from?.toLocaleString()},${value.to?.toLocaleDateString(DEFAULT_LOCALE) ??\n value.to?.toLocaleString()}`;\n }\n return value?.relativeTimeString;\n },\n});\nconst GranularityType = createBuiltInType(\"granularity\", {\n transform: (value) => value,\n optionLabel: (value) => value,\n});\nconst DatasetType = createBuiltInType(\"dataset\");\nconst MeasureType = createBuiltInType(\"measure\");\nconst DimensionType = createBuiltInType(\"dimension\");\nconst DimensionOrMeasureType = createBuiltInType(\"dimensionOrMeasure\");\n\nvar nativeTypes = /*#__PURE__*/Object.freeze({\n __proto__: null,\n BooleanType: BooleanType,\n DatasetType: DatasetType,\n DimensionOrMeasureType: DimensionOrMeasureType,\n DimensionType: DimensionType,\n GranularityType: GranularityType,\n MeasureType: MeasureType,\n NumberType: NumberType,\n StringType: StringType,\n TimeRangeType: TimeRangeType,\n TimeType: TimeType\n});\n\nconst defineTheme = (parentTheme, childTheme) => {\n return mergician(parentTheme, childTheme);\n};\n\nexport { ALL_NATIVE_TYPES, DEFAULT_NATIVE_TYPES, DIMENSION_OR_MEASURE_TYPES, DIMENSION_TYPES, FilterOperator, MEASURE_TYPES, Value, defineOption, defineTheme, defineType, isDimension, isDimensionOrMeasure, isLoadDataParams, isMeasure, isTimeDimension, loadData, nativeTypes, setValue };\n","import { defineOption, defineType } from '@embeddable.com/core';\n\nconst AlignType = defineType('align', {\n label: 'Align',\n optionLabel: (value: string) => value,\n});\n\ndefineOption(AlignType, 'left');\ndefineOption(AlignType, 'center');\ndefineOption(AlignType, 'right');\n\nexport default AlignType;\n","import { defineOption, defineType } from '@embeddable.com/core';\n\nconst ComparisonPeriodType = defineType('comparisonPeriod', {\n label: 'Comparison Period',\n optionLabel: (value: string) => value,\n});\n\ndefineOption(ComparisonPeriodType, 'Previous period');\ndefineOption(ComparisonPeriodType, 'Previous week');\ndefineOption(ComparisonPeriodType, 'Previous month');\ndefineOption(ComparisonPeriodType, 'Previous quarter');\ndefineOption(ComparisonPeriodType, 'Previous year');\n\nexport default ComparisonPeriodType;\n","import { defineType } from '@embeddable.com/core';\n\nconst ColorType = defineType('color', {\n label: 'Color',\n optionLabel: (value: string) => value.toUpperCase(),\n});\n\nexport default ColorType;\n"],"names":["DEFAULT_LOCALE","createBuiltInType","name","typeConfig","getBundleHash$1","defineType","typeName","ALL_NATIVE_TYPES","type","bundleHash","embeddable","STRING","NUMBER","BOOLEAN","TIME","TIME_RANGE","GRANULARITY","DATASET","MEASURE","DIMENSION","DIMENSION_OR_MEASURE","DEFAULT_NATIVE_TYPES","getBundleHash","defineOption","option","_a","_b","_c","_d","value","v","date","from","to","fromDate","toDate","AlignType","ComparisonPeriodType"],"mappings":"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","x_google_ignoreList":[0]}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { E as T } from "./component.constants-VpbbPSIL.js";
|
|
2
2
|
const i = (r) => {
|
|
3
3
|
const s = {};
|
|
4
4
|
return (m) => {
|
|
@@ -43,4 +43,4 @@ const i = (r) => {
|
|
|
43
43
|
export {
|
|
44
44
|
D as g
|
|
45
45
|
};
|
|
46
|
-
//# sourceMappingURL=formatter.utils-
|
|
46
|
+
//# sourceMappingURL=formatter.utils-BLz3TSY0.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"formatter.utils-
|
|
1
|
+
{"version":3,"file":"formatter.utils-BLz3TSY0.js","sources":["../src/remarkable-pro/utils.ts/cache.utils.ts","../src/remarkable-pro/utils.ts/data.utils.ts","../src/remarkable-pro/theme/formatter/formatter.utils.ts"],"sourcesContent":["/**\n * Creates a formatter cache.\n * Cache used to prevent unnecessary (expensive) creation of formatter objects\n */\nexport const cache = <Params, Formatter>(factory: (params?: Params) => Formatter) => {\n const internalCache: { [key: string]: Formatter } = {};\n const get = (params?: Params) => {\n const key = JSON.stringify(params);\n let formatter = internalCache[key];\n if (formatter) {\n return formatter;\n }\n formatter = factory(params);\n internalCache[key] = formatter;\n return formatter;\n };\n return get;\n};\n","const ISO_DATE_TIME_REGEX = /^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}\\.\\d{3}$/;\n\nexport const isValidISODate = (value: string): boolean => {\n return Boolean(value && ISO_DATE_TIME_REGEX.test(value));\n};\n","import { DimensionOrMeasure } from '@embeddable.com/core';\nimport { DateTimeFormatter, NumberFormatter, StringFormatter } from './formatter.types';\nimport { Theme } from '../theme.types';\nimport { cache } from '../../utils.ts/cache.utils';\nimport { isValidISODate } from '../../utils.ts/data.utils';\nimport { resolveI18nString } from '../../components/component.utils';\n\nexport type GetThemeFormatter = {\n string: (key: string) => string;\n number: (value: number | bigint, options?: Intl.NumberFormatOptions) => string;\n dateTime: (value: Date, options?: Intl.DateTimeFormatOptions) => string;\n dimensionOrMeasureTitle: (key: DimensionOrMeasure) => string;\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n data: (key: DimensionOrMeasure, value: any) => string;\n};\n\nexport const getThemeFormatter = (theme: Theme): GetThemeFormatter => {\n const cachedNumberFormatter = cache<Intl.NumberFormatOptions, NumberFormatter>((options) =>\n theme.formatter.numberFormatter(theme, options),\n );\n\n const cachedDataNumberFormatter = cache<DimensionOrMeasure, NumberFormatter>((key) =>\n theme.formatter.dataNumberFormatter(theme, key!),\n );\n\n const cachedDateTimeFormatter = cache<Intl.DateTimeFormatOptions, DateTimeFormatter>((options) =>\n theme.formatter.dateTimeFormatter(theme, options),\n );\n\n const cachedDataDateTimeFormatter = cache<DimensionOrMeasure, DateTimeFormatter>((key) =>\n theme.formatter.dataDateTimeFormatter(theme, key!),\n );\n\n const cachedDataOthersFormatter = cache<DimensionOrMeasure, StringFormatter>((key) =>\n theme.formatter.dataOthersFormatter(theme, key!),\n );\n\n return {\n string: (key: string) => theme.formatter.stringFormatter().format(key),\n number: (value: number | bigint, options?: Intl.NumberFormatOptions): string => {\n return cachedNumberFormatter(options).format(value);\n },\n dateTime: (value: Date, options?: Intl.DateTimeFormatOptions): string => {\n return cachedDateTimeFormatter(options).format(value);\n },\n dimensionOrMeasureTitle: (key: DimensionOrMeasure): string => {\n const displayName = key.inputs?.displayName;\n if (displayName) {\n if (displayName.includes('|')) {\n return resolveI18nString(displayName);\n }\n return displayName;\n }\n\n const resolved = cachedDataOthersFormatter(key).format(key.name);\n return resolved === key.name ? (key.title ?? key.name) : resolved;\n },\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n data: (key: DimensionOrMeasure, value: any): string => {\n let newValue = value;\n\n // Number\n if (key.nativeType === 'number') {\n newValue = cachedDataNumberFormatter(key).format(value);\n }\n\n // Time\n if (key.nativeType === 'time' && isValidISODate(value)) {\n newValue = cachedDataDateTimeFormatter(key).format(new Date(value));\n }\n\n // Others (boolean and string)\n if (key.nativeType === 'boolean' || key.nativeType === 'string') {\n newValue = cachedDataOthersFormatter(key).format(value);\n }\n\n // Prefix and suffix\n const appended = `${key.inputs?.prefix || ''}${newValue}${key.inputs?.suffix || ''}`;\n\n // Max characters\n if (key.inputs?.maxCharacters) {\n if (appended.length <= key.inputs.maxCharacters) {\n return appended;\n }\n return appended.substring(0, key.inputs.maxCharacters) + '...';\n }\n\n return appended;\n },\n };\n};\n"],"names":["cache","factory","internalCache","params","key","formatter","ISO_DATE_TIME_REGEX","isValidISODate","value","getThemeFormatter","theme","cachedNumberFormatter","options","cachedDataNumberFormatter","cachedDateTimeFormatter","cachedDataDateTimeFormatter","cachedDataOthersFormatter","displayName","_a","resolveI18nString","resolved","newValue","appended","_b","_c"],"mappings":";AAIO,MAAMA,IAAQ,CAAoBC,MAA4C;AACnF,QAAMC,IAA8C,CAAA;AAWpD,SAVY,CAACC,MAAoB;AAC/B,UAAMC,IAAM,KAAK,UAAUD,CAAM;AACjC,QAAIE,IAAYH,EAAcE,CAAG;AACjC,WAAIC,MAGJA,IAAYJ,EAAQE,CAAM,GAC1BD,EAAcE,CAAG,IAAIC,GACdA;AAAA,EACT;AAEF,GCjBMC,IAAsB,gDAEfC,IAAiB,CAACC,MACtB,GAAQA,KAASF,EAAoB,KAAKE,CAAK,ICa3CC,IAAoB,CAACC,MAAoC;AACpE,QAAMC,IAAwBX;AAAA,IAAiD,CAACY,MAC9EF,EAAM,UAAU,gBAAgBA,GAAOE,CAAO;AAAA,EAAA,GAG1CC,IAA4Bb;AAAA,IAA2C,CAACI,MAC5EM,EAAM,UAAU,oBAAoBA,GAAON,CAAI;AAAA,EAAA,GAG3CU,IAA0Bd;AAAA,IAAqD,CAACY,MACpFF,EAAM,UAAU,kBAAkBA,GAAOE,CAAO;AAAA,EAAA,GAG5CG,IAA8Bf;AAAA,IAA6C,CAACI,MAChFM,EAAM,UAAU,sBAAsBA,GAAON,CAAI;AAAA,EAAA,GAG7CY,IAA4BhB;AAAA,IAA2C,CAACI,MAC5EM,EAAM,UAAU,oBAAoBA,GAAON,CAAI;AAAA,EAAA;AAGjD,SAAO;AAAA,IACL,QAAQ,CAACA,MAAgBM,EAAM,UAAU,gBAAA,EAAkB,OAAON,CAAG;AAAA,IACrE,QAAQ,CAACI,GAAwBI,MACxBD,EAAsBC,CAAO,EAAE,OAAOJ,CAAK;AAAA,IAEpD,UAAU,CAACA,GAAaI,MACfE,EAAwBF,CAAO,EAAE,OAAOJ,CAAK;AAAA,IAEtD,yBAAyB,CAACJ,MAAoC;;AAC5D,YAAMa,KAAcC,IAAAd,EAAI,WAAJ,gBAAAc,EAAY;AAChC,UAAID;AACF,eAAIA,EAAY,SAAS,GAAG,IACnBE,EAAkBF,CAAW,IAE/BA;AAGT,YAAMG,IAAWJ,EAA0BZ,CAAG,EAAE,OAAOA,EAAI,IAAI;AAC/D,aAAOgB,MAAahB,EAAI,OAAQA,EAAI,SAASA,EAAI,OAAQgB;AAAA,IAC3D;AAAA;AAAA,IAEA,MAAM,CAAChB,GAAyBI,MAAuB;;AACrD,UAAIa,IAAWb;AAGf,MAAIJ,EAAI,eAAe,aACrBiB,IAAWR,EAA0BT,CAAG,EAAE,OAAOI,CAAK,IAIpDJ,EAAI,eAAe,UAAUG,EAAeC,CAAK,MACnDa,IAAWN,EAA4BX,CAAG,EAAE,OAAO,IAAI,KAAKI,CAAK,CAAC,KAIhEJ,EAAI,eAAe,aAAaA,EAAI,eAAe,cACrDiB,IAAWL,EAA0BZ,CAAG,EAAE,OAAOI,CAAK;AAIxD,YAAMc,IAAW,KAAGJ,IAAAd,EAAI,WAAJ,gBAAAc,EAAY,WAAU,EAAE,GAAGG,CAAQ,KAAGE,IAAAnB,EAAI,WAAJ,gBAAAmB,EAAY,WAAU,EAAE;AAGlF,cAAIC,IAAApB,EAAI,WAAJ,QAAAoB,EAAY,gBACVF,EAAS,UAAUlB,EAAI,OAAO,gBACzBkB,IAEFA,EAAS,UAAU,GAAGlB,EAAI,OAAO,aAAa,IAAI,QAGpDkB;AAAA,IACT;AAAA,EAAA;AAEJ;"}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import { j as i } from "./TablePaginated-pVrIngVd.js";
|
|
2
|
+
import { g as b } from "./formatter.utils-BLz3TSY0.js";
|
|
3
|
+
import { useTheme as O } from "@embeddable.com/react";
|
|
4
|
+
import { E as j } from "./EditorCard-CB-re8Qn.js";
|
|
5
|
+
import { r as x, z as v } from "./component.constants-VpbbPSIL.js";
|
|
6
|
+
import "react";
|
|
7
|
+
import { S as F } from "./SingleSelectField-ammJ2Zc2.js";
|
|
8
|
+
const M = 200, _ = (l) => {
|
|
9
|
+
var r, a;
|
|
10
|
+
const m = O(), c = b(m), {
|
|
11
|
+
title: d,
|
|
12
|
+
description: p,
|
|
13
|
+
dimension: t,
|
|
14
|
+
optionalSecondDimension: n,
|
|
15
|
+
placeholder: u,
|
|
16
|
+
results: o,
|
|
17
|
+
selectedValue: g,
|
|
18
|
+
setSearchValue: S,
|
|
19
|
+
onChange: s
|
|
20
|
+
} = x(l), h = ((r = o.data) == null ? void 0 : r.map((e) => ({
|
|
21
|
+
value: n ? e[n.name] : e[t.name],
|
|
22
|
+
label: c.data(t, e[t.name])
|
|
23
|
+
}))) ?? [], f = !o.isLoading && (((a = o.data) == null ? void 0 : a.length) ?? 0) === 0;
|
|
24
|
+
return /* @__PURE__ */ i.jsx(j, { title: d, subtitle: p, children: /* @__PURE__ */ i.jsx(
|
|
25
|
+
F,
|
|
26
|
+
{
|
|
27
|
+
clearable: !0,
|
|
28
|
+
searchable: !0,
|
|
29
|
+
isLoading: o.isLoading,
|
|
30
|
+
value: g,
|
|
31
|
+
options: h,
|
|
32
|
+
placeholder: u,
|
|
33
|
+
noOptionsMessage: f ? v.t("common.noOptionsFound") : void 0,
|
|
34
|
+
onChange: (e) => s == null ? void 0 : s(e),
|
|
35
|
+
onSearch: S
|
|
36
|
+
}
|
|
37
|
+
) });
|
|
38
|
+
}, N = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
|
|
39
|
+
__proto__: null,
|
|
40
|
+
MAX_OPTIONS: M,
|
|
41
|
+
default: _
|
|
42
|
+
}, Symbol.toStringTag, { value: "Module" }));
|
|
43
|
+
export {
|
|
44
|
+
M,
|
|
45
|
+
_ as S,
|
|
46
|
+
N as i
|
|
47
|
+
};
|
|
48
|
+
//# sourceMappingURL=index-B7Pv2FEr.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index-
|
|
1
|
+
{"version":3,"file":"index-B7Pv2FEr.js","sources":["../src/remarkable-pro/components/editors/SingleSelectFieldPro/index.tsx"],"sourcesContent":["import { DataResponse, Dimension } from '@embeddable.com/core';\nimport { getThemeFormatter } from '../../../theme/formatter/formatter.utils';\nimport { useTheme } from '@embeddable.com/react';\nimport { Theme } from '../../../theme/theme.types';\nimport { EditorCard } from '../shared/EditorCard/EditorCard';\nimport { resolveI18nProps } from '../../component.utils';\nimport { i18n } from '../../../theme/i18n/i18n';\nimport { SingleSelectField } from '../../../../remarkable-ui';\n\nexport const MAX_OPTIONS = 200;\n\ntype SingleSelectFieldProProps = {\n title?: string;\n description?: string;\n dimension: Dimension;\n optionalSecondDimension?: Dimension;\n placeholder?: string;\n results: DataResponse;\n selectedValue: string;\n maxOptions?: number;\n setSearchValue: (search: string) => void;\n onChange?: (selectedValue: string) => void;\n};\n\nconst SingleSelectFieldPro = (props: SingleSelectFieldProProps) => {\n const theme: Theme = useTheme() as Theme;\n const themeFormatter = getThemeFormatter(theme);\n\n const {\n title,\n description,\n dimension,\n optionalSecondDimension,\n placeholder,\n results,\n selectedValue,\n setSearchValue,\n onChange,\n } = resolveI18nProps(props);\n\n const options =\n results.data?.map((data) => {\n return {\n value: optionalSecondDimension ? data[optionalSecondDimension.name] : data[dimension.name],\n label: themeFormatter.data(dimension, data[dimension.name]),\n };\n }) ?? [];\n\n const showNoOptionsMessage = Boolean(!results.isLoading && (results.data?.length ?? 0) === 0);\n\n return (\n <EditorCard title={title} subtitle={description}>\n <SingleSelectField\n clearable\n searchable\n isLoading={results.isLoading}\n value={selectedValue}\n options={options}\n placeholder={placeholder}\n noOptionsMessage={showNoOptionsMessage ? i18n.t('common.noOptionsFound') : undefined}\n onChange={(newValue: string) => onChange?.(newValue)}\n onSearch={setSearchValue}\n />\n </EditorCard>\n );\n};\n\nexport default SingleSelectFieldPro;\n"],"names":["MAX_OPTIONS","SingleSelectFieldPro","props","theme","useTheme","themeFormatter","getThemeFormatter","title","description","dimension","optionalSecondDimension","placeholder","results","selectedValue","setSearchValue","onChange","resolveI18nProps","options","_a","data","showNoOptionsMessage","_b","jsx","EditorCard","SingleSelectField","i18n","newValue"],"mappings":";;;;;;;AASO,MAAMA,IAAc,KAerBC,IAAuB,CAACC,MAAqC;;AACjE,QAAMC,IAAeC,EAAA,GACfC,IAAiBC,EAAkBH,CAAK,GAExC;AAAA,IACJ,OAAAI;AAAA,IACA,aAAAC;AAAA,IACA,WAAAC;AAAA,IACA,yBAAAC;AAAA,IACA,aAAAC;AAAA,IACA,SAAAC;AAAA,IACA,eAAAC;AAAA,IACA,gBAAAC;AAAA,IACA,UAAAC;AAAA,EAAA,IACEC,EAAiBd,CAAK,GAEpBe,MACJC,IAAAN,EAAQ,SAAR,gBAAAM,EAAc,IAAI,CAACC,OACV;AAAA,IACL,OAAOT,IAA0BS,EAAKT,EAAwB,IAAI,IAAIS,EAAKV,EAAU,IAAI;AAAA,IACzF,OAAOJ,EAAe,KAAKI,GAAWU,EAAKV,EAAU,IAAI,CAAC;AAAA,EAAA,QAExD,CAAA,GAEFW,IAA+B,CAACR,EAAQ,gBAAcS,IAAAT,EAAQ,SAAR,gBAAAS,EAAc,WAAU,OAAO;AAE3F,SACEC,gBAAAA,EAAAA,IAACC,GAAA,EAAW,OAAAhB,GAAc,UAAUC,GAClC,UAAAc,gBAAAA,EAAAA;AAAAA,IAACE;AAAA,IAAA;AAAA,MACC,WAAS;AAAA,MACT,YAAU;AAAA,MACV,WAAWZ,EAAQ;AAAA,MACnB,OAAOC;AAAA,MACP,SAAAI;AAAA,MACA,aAAAN;AAAA,MACA,kBAAkBS,IAAuBK,EAAK,EAAE,uBAAuB,IAAI;AAAA,MAC3E,UAAU,CAACC,MAAqBX,KAAA,gBAAAA,EAAWW;AAAA,MAC3C,UAAUZ;AAAA,IAAA;AAAA,EAAA,GAEd;AAEJ;;;;;"}
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
import { h as R, j as d } from "./TablePaginated-pVrIngVd.js";
|
|
2
|
+
import { useTheme as b } from "@embeddable.com/react";
|
|
3
|
+
import { useState as O, useEffect as c } from "react";
|
|
4
|
+
import { S as j } from "./SingleSelectField-ammJ2Zc2.js";
|
|
5
|
+
import { g as y, u as C } from "./editors.timeRange.utils-D9m6B3r1.js";
|
|
6
|
+
import { E as x, r as F, z as T } from "./component.constants-VpbbPSIL.js";
|
|
7
|
+
import { E as _ } from "./EditorCard-CB-re8Qn.js";
|
|
8
|
+
/**
|
|
9
|
+
* @license @tabler/icons-react v3.35.0 - MIT
|
|
10
|
+
*
|
|
11
|
+
* This source code is licensed under the MIT license.
|
|
12
|
+
* See the LICENSE file in the root directory of this source tree.
|
|
13
|
+
*/
|
|
14
|
+
const z = [["path", { d: "M16 2a1 1 0 0 1 .993 .883l.007 .117v1h1a3 3 0 0 1 2.995 2.824l.005 .176v12a3 3 0 0 1 -2.824 2.995l-.176 .005h-12a3 3 0 0 1 -2.995 -2.824l-.005 -.176v-12a3 3 0 0 1 2.824 -2.995l.176 -.005h1v-1a1 1 0 0 1 1.993 -.117l.007 .117v1h6v-1a1 1 0 0 1 1 -1zm3 7h-14v9.625c0 .705 .386 1.286 .883 1.366l.117 .009h12c.513 0 .936 -.53 .993 -1.215l.007 -.16v-9.625z", key: "svg-0" }], ["path", { d: "M12 12a1 1 0 0 1 .993 .883l.007 .117v3a1 1 0 0 1 -1.993 .117l-.007 -.117v-2a1 1 0 0 1 -.117 -1.993l.117 -.007h1z", key: "svg-1" }]], E = R("filled", "calendar-filled", "CalendarFilled", z), I = (o) => o.map((a) => ({
|
|
15
|
+
rightLabel: y(a.getRange(), a.dateFormat),
|
|
16
|
+
value: a.value,
|
|
17
|
+
label: x(a.label)
|
|
18
|
+
})), L = (o) => {
|
|
19
|
+
const a = b(), { dayjsLocaleReady: m } = C(), { selectedValue: e, clearable: v, onChange: g } = o, [l, r] = O(
|
|
20
|
+
e == null ? void 0 : e.relativeTimeString
|
|
21
|
+
), n = a.defaults.dateRangesOptions, i = e == null ? void 0 : e.relativeTimeString;
|
|
22
|
+
if (c(() => {
|
|
23
|
+
if (!i) return;
|
|
24
|
+
const t = n.find(
|
|
25
|
+
(s) => s.value === i
|
|
26
|
+
);
|
|
27
|
+
r(t ? t.value : void 0);
|
|
28
|
+
}, [i, n]), c(() => {
|
|
29
|
+
if (!e && !l) return;
|
|
30
|
+
const t = n.find((S) => S.value === l), s = t ? t.getRange() : void 0;
|
|
31
|
+
g(s);
|
|
32
|
+
}, [l, n]), c(() => {
|
|
33
|
+
e || r(void 0);
|
|
34
|
+
}, [e]), !m)
|
|
35
|
+
return null;
|
|
36
|
+
const { description: u, placeholder: f, title: p } = F(o), h = I(n);
|
|
37
|
+
return /* @__PURE__ */ d.jsx(_, { title: p, subtitle: u, children: /* @__PURE__ */ d.jsx(
|
|
38
|
+
j,
|
|
39
|
+
{
|
|
40
|
+
startIcon: E,
|
|
41
|
+
clearable: v,
|
|
42
|
+
placeholder: f,
|
|
43
|
+
value: l,
|
|
44
|
+
onChange: (t) => r(t || void 0),
|
|
45
|
+
options: h,
|
|
46
|
+
noOptionsMessage: T.t("common.noOptionsAvailable")
|
|
47
|
+
}
|
|
48
|
+
) });
|
|
49
|
+
}, V = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
|
|
50
|
+
__proto__: null,
|
|
51
|
+
default: L
|
|
52
|
+
}, Symbol.toStringTag, { value: "Module" }));
|
|
53
|
+
export {
|
|
54
|
+
L as D,
|
|
55
|
+
V as i
|
|
56
|
+
};
|
|
57
|
+
//# sourceMappingURL=index-BYbp2vA7.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index-BYbp2vA7.js","sources":["../node_modules/@tabler/icons-react/dist/esm/icons/IconCalendarFilled.mjs","../src/remarkable-pro/components/editors/DateRangeSelectFieldPro/DateRangeSelectFieldPro.utils.ts","../src/remarkable-pro/components/editors/DateRangeSelectFieldPro/index.tsx"],"sourcesContent":["/**\n * @license @tabler/icons-react v3.35.0 - 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\": \"M16 2a1 1 0 0 1 .993 .883l.007 .117v1h1a3 3 0 0 1 2.995 2.824l.005 .176v12a3 3 0 0 1 -2.824 2.995l-.176 .005h-12a3 3 0 0 1 -2.995 -2.824l-.005 -.176v-12a3 3 0 0 1 2.824 -2.995l.176 -.005h1v-1a1 1 0 0 1 1.993 -.117l.007 .117v1h6v-1a1 1 0 0 1 1 -1zm3 7h-14v9.625c0 .705 .386 1.286 .883 1.366l.117 .009h12c.513 0 .936 -.53 .993 -1.215l.007 -.16v-9.625z\", \"key\": \"svg-0\" }], [\"path\", { \"d\": \"M12 12a1 1 0 0 1 .993 .883l.007 .117v3a1 1 0 0 1 -1.993 .117l-.007 -.117v-2a1 1 0 0 1 -.117 -1.993l.117 -.007h1z\", \"key\": \"svg-1\" }]];\nconst IconCalendarFilled = createReactComponent(\"filled\", \"calendar-filled\", \"CalendarFilled\", __iconNode);\n\nexport { __iconNode, IconCalendarFilled as default };\n//# sourceMappingURL=IconCalendarFilled.mjs.map\n","import { DateRangeSelectFieldProOption } from './DateRangeSelectFieldPro.types';\nimport { SelectListOptionProps } from '../../../../remarkable-ui';\nimport { getTimeRangeLabel } from '../editors.timeRange.utils';\nimport { resolveI18nString } from '../../component.utils';\n\nexport const getDateRangeSelectFieldProOptions = (\n dateRangeSelectFieldProOptions: DateRangeSelectFieldProOption[],\n): SelectListOptionProps[] => {\n return dateRangeSelectFieldProOptions.map((option) => {\n return {\n rightLabel: getTimeRangeLabel(option.getRange(), option.dateFormat),\n value: option.value,\n label: resolveI18nString(option.label),\n };\n });\n};\n","import { useTheme } from '@embeddable.com/react';\nimport { SingleSelectField } from '../../../../remarkable-ui';\nimport { Theme } from '../../../theme/theme.types';\nimport { useLoadDayjsLocale } from '../../../utils.ts/date.utils';\nimport { getDateRangeSelectFieldProOptions } from './DateRangeSelectFieldPro.utils';\nimport { TimeRange } from '@embeddable.com/core';\nimport { resolveI18nProps } from '../../component.utils';\nimport { EditorCard } from '../shared/EditorCard/EditorCard';\nimport { IconCalendarFilled } from '@tabler/icons-react';\nimport { i18n } from '../../../theme/i18n/i18n';\nimport { useEffect, useState } from 'react';\n\ntype DateRangeSelectFieldProProps = {\n description?: string;\n onChange: (newDateRange: TimeRange) => void;\n placeholder?: string;\n selectedValue: TimeRange;\n title?: string;\n clearable?: boolean;\n};\n\nconst DateRangeSelectFieldPro = (props: DateRangeSelectFieldProProps) => {\n const theme: Theme = useTheme() as Theme;\n const { dayjsLocaleReady } = useLoadDayjsLocale();\n\n const { selectedValue, clearable, onChange } = props;\n const [internalValue, setInternalValue] = useState<string | undefined>(\n selectedValue?.relativeTimeString,\n );\n\n // When updation the selectedValue in the builder, the defined value value can:\n // 1. exist in the options: relativeTimeString converted into TimeRange and onChange is called with the TimeRange\n // 2. not exist in the options: onChange is called with undefined (resets)\n\n const dateRangeOptions = theme.defaults.dateRangesOptions;\n\n const selectedValueRelativeTimeString = selectedValue?.relativeTimeString;\n\n useEffect(() => {\n if (!selectedValueRelativeTimeString) return;\n\n const matchedOption = dateRangeOptions.find(\n (option) => option.value === selectedValueRelativeTimeString,\n );\n\n setInternalValue(matchedOption ? matchedOption.value : undefined);\n }, [selectedValueRelativeTimeString, dateRangeOptions]);\n\n useEffect(() => {\n if (!selectedValue && !internalValue) return;\n\n const matchedOption = dateRangeOptions.find((option) => option.value === internalValue);\n\n const newChangeValue = matchedOption ? matchedOption.getRange() : undefined;\n\n onChange(newChangeValue);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [internalValue, dateRangeOptions]);\n\n useEffect(() => {\n if (!selectedValue) {\n setInternalValue(undefined);\n }\n }, [selectedValue]);\n\n if (!dayjsLocaleReady) {\n return null;\n }\n\n const { description, placeholder, title } = resolveI18nProps(props);\n\n const options = getDateRangeSelectFieldProOptions(dateRangeOptions);\n\n return (\n <EditorCard title={title} subtitle={description}>\n <SingleSelectField\n startIcon={IconCalendarFilled}\n clearable={clearable}\n placeholder={placeholder}\n value={internalValue}\n onChange={(value) => setInternalValue(value || undefined)}\n options={options}\n noOptionsMessage={i18n.t('common.noOptionsAvailable')}\n />\n </EditorCard>\n );\n};\n\nexport default DateRangeSelectFieldPro;\n"],"names":["__iconNode","IconCalendarFilled","createReactComponent","getDateRangeSelectFieldProOptions","dateRangeSelectFieldProOptions","option","getTimeRangeLabel","resolveI18nString","DateRangeSelectFieldPro","props","theme","useTheme","dayjsLocaleReady","useLoadDayjsLocale","selectedValue","clearable","onChange","internalValue","setInternalValue","useState","dateRangeOptions","selectedValueRelativeTimeString","useEffect","matchedOption","newChangeValue","description","placeholder","title","resolveI18nProps","options","jsx","EditorCard","SingleSelectField","value","i18n"],"mappings":";;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AASA,MAAMA,IAAa,CAAC,CAAC,QAAQ,EAAE,GAAK,iWAAiW,KAAO,QAAO,CAAE,GAAG,CAAC,QAAQ,EAAE,GAAK,oHAAoH,KAAO,QAAO,CAAE,CAAC,GACviBC,IAAqBC,EAAqB,UAAU,mBAAmB,kBAAkBF,CAAU,GCL5FG,IAAoC,CAC/CC,MAEOA,EAA+B,IAAI,CAACC,OAClC;AAAA,EACL,YAAYC,EAAkBD,EAAO,SAAA,GAAYA,EAAO,UAAU;AAAA,EAClE,OAAOA,EAAO;AAAA,EACd,OAAOE,EAAkBF,EAAO,KAAK;AAAA,EAExC,GCOGG,IAA0B,CAACC,MAAwC;AACvE,QAAMC,IAAeC,EAAA,GACf,EAAE,kBAAAC,EAAA,IAAqBC,EAAA,GAEvB,EAAE,eAAAC,GAAe,WAAAC,GAAW,UAAAC,EAAA,IAAaP,GACzC,CAACQ,GAAeC,CAAgB,IAAIC;AAAA,IACxCL,KAAA,gBAAAA,EAAe;AAAA,EAAA,GAOXM,IAAmBV,EAAM,SAAS,mBAElCW,IAAkCP,KAAA,gBAAAA,EAAe;AA6BvD,MA3BAQ,EAAU,MAAM;AACd,QAAI,CAACD,EAAiC;AAEtC,UAAME,IAAgBH,EAAiB;AAAA,MACrC,CAACf,MAAWA,EAAO,UAAUgB;AAAA,IAAA;AAG/B,IAAAH,EAAiBK,IAAgBA,EAAc,QAAQ,MAAS;AAAA,EAClE,GAAG,CAACF,GAAiCD,CAAgB,CAAC,GAEtDE,EAAU,MAAM;AACd,QAAI,CAACR,KAAiB,CAACG,EAAe;AAEtC,UAAMM,IAAgBH,EAAiB,KAAK,CAACf,MAAWA,EAAO,UAAUY,CAAa,GAEhFO,IAAiBD,IAAgBA,EAAc,SAAA,IAAa;AAElE,IAAAP,EAASQ,CAAc;AAAA,EAEzB,GAAG,CAACP,GAAeG,CAAgB,CAAC,GAEpCE,EAAU,MAAM;AACd,IAAKR,KACHI,EAAiB,MAAS;AAAA,EAE9B,GAAG,CAACJ,CAAa,CAAC,GAEd,CAACF;AACH,WAAO;AAGT,QAAM,EAAE,aAAAa,GAAa,aAAAC,GAAa,OAAAC,EAAA,IAAUC,EAAiBnB,CAAK,GAE5DoB,IAAU1B,EAAkCiB,CAAgB;AAElE,SACEU,gBAAAA,EAAAA,IAACC,GAAA,EAAW,OAAAJ,GAAc,UAAUF,GAClC,UAAAK,gBAAAA,EAAAA;AAAAA,IAACE;AAAA,IAAA;AAAA,MACC,WAAW/B;AAAA,MACX,WAAAc;AAAA,MACA,aAAAW;AAAA,MACA,OAAOT;AAAA,MACP,UAAU,CAACgB,MAAUf,EAAiBe,KAAS,MAAS;AAAA,MACxD,SAAAJ;AAAA,MACA,kBAAkBK,EAAK,EAAE,2BAA2B;AAAA,IAAA;AAAA,EAAA,GAExD;AAEJ;;;;","x_google_ignoreList":[0]}
|
|
@@ -1,7 +1,8 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { g as
|
|
3
|
-
import { useTheme as
|
|
4
|
-
import { u as
|
|
1
|
+
import { h as A, j as s, k as X, p as G, q as U, S as W, F as Y } from "./TablePaginated-pVrIngVd.js";
|
|
2
|
+
import { g as Z } from "./formatter.utils-BLz3TSY0.js";
|
|
3
|
+
import { useTheme as ee } from "@embeddable.com/react";
|
|
4
|
+
import { u as se, d as te, g as le, s as B, I as ae, S as ne, E as re } from "./EditorCard-CB-re8Qn.js";
|
|
5
|
+
import { O as ce, P as oe, Q as ie, S as I, r as de, z as ue } from "./component.constants-VpbbPSIL.js";
|
|
5
6
|
import { useState as y, useRef as me, useEffect as D, useMemo as E, Fragment as pe } from "react";
|
|
6
7
|
/**
|
|
7
8
|
* @license @tabler/icons-react v3.35.0 - MIT
|
|
@@ -30,7 +31,7 @@ const be = [["path", { d: "M18.333 2c1.96 0 3.56 1.537 3.662 3.472l.005 .195v12.
|
|
|
30
31
|
endIcon: m,
|
|
31
32
|
className: r,
|
|
32
33
|
...u
|
|
33
|
-
}) => /* @__PURE__ */ s.jsxs("button", { className:
|
|
34
|
+
}) => /* @__PURE__ */ s.jsxs("button", { className: X(N.button, N[b], N[h], r), ...u, children: [
|
|
34
35
|
d && /* @__PURE__ */ s.jsx(d, {}),
|
|
35
36
|
/* @__PURE__ */ s.jsx("span", { children: x }),
|
|
36
37
|
m && /* @__PURE__ */ s.jsx(m, {})
|
|
@@ -52,46 +53,46 @@ const be = [["path", { d: "M18.333 2c1.96 0 3.56 1.537 3.662 3.472l.005 .195v12.
|
|
|
52
53
|
error: g = !1,
|
|
53
54
|
errorMessage: p
|
|
54
55
|
}) => {
|
|
55
|
-
const [o,
|
|
56
|
-
|
|
56
|
+
const [o, q] = y(!1), [L, C] = y(""), [i, O] = y(t), [V, M] = y(""), P = me(null);
|
|
57
|
+
se(o, P), D(() => {
|
|
57
58
|
O(t);
|
|
58
59
|
}, [JSON.stringify(t)]), D(() => {
|
|
59
60
|
if (r)
|
|
60
61
|
return;
|
|
61
62
|
if (!t || t.length === 0) {
|
|
62
|
-
|
|
63
|
+
M("");
|
|
63
64
|
return;
|
|
64
65
|
}
|
|
65
66
|
const e = t.map(
|
|
66
67
|
(l) => {
|
|
67
68
|
var n;
|
|
68
|
-
return ((n = c.find((
|
|
69
|
+
return ((n = c.find((k) => k.value === l)) == null ? void 0 : n.label) ?? l;
|
|
69
70
|
}
|
|
70
71
|
);
|
|
71
72
|
if (e.length > 0) {
|
|
72
73
|
const l = e.join(", ");
|
|
73
|
-
|
|
74
|
+
M(`(${e.length}) ${l}`);
|
|
74
75
|
}
|
|
75
76
|
}, [t, c, r]);
|
|
76
|
-
const S = E(() => a ?
|
|
77
|
+
const S = E(() => a ? te(a) : void 0, [a]), _ = u && !a ? c.filter((e) => e.label.toLowerCase().includes(L.toLowerCase())) : c, z = E(() => le(_), [_]), w = i.every((e) => t.includes(e)) && t.every((e) => i.includes(e)), T = (e, l) => {
|
|
77
78
|
e.preventDefault(), l && (i.includes(l) ? O(i.filter((n) => n !== l)) : O([...i, l]));
|
|
78
79
|
}, H = (e) => {
|
|
79
80
|
C(e), S == null || S(e);
|
|
80
81
|
}, J = (e) => {
|
|
81
|
-
f(e),
|
|
82
|
+
f(e), q(!1), C(""), a == null || a("");
|
|
82
83
|
}, K = () => {
|
|
83
84
|
C(""), a == null || a(""), f([]);
|
|
84
|
-
},
|
|
85
|
+
}, Q = g || !!p;
|
|
85
86
|
return /* @__PURE__ */ s.jsxs("div", { children: [
|
|
86
|
-
/* @__PURE__ */ s.jsx(
|
|
87
|
+
/* @__PURE__ */ s.jsx(G, { label: b, required: h }),
|
|
87
88
|
/* @__PURE__ */ s.jsx(
|
|
88
|
-
|
|
89
|
+
ce,
|
|
89
90
|
{
|
|
90
91
|
open: o,
|
|
91
|
-
onOpenChange:
|
|
92
|
+
onOpenChange: q,
|
|
92
93
|
disabled: d,
|
|
93
94
|
triggerComponent: /* @__PURE__ */ s.jsx(
|
|
94
|
-
|
|
95
|
+
W,
|
|
95
96
|
{
|
|
96
97
|
startIcon: x,
|
|
97
98
|
"aria-label": "Select options",
|
|
@@ -101,46 +102,46 @@ const be = [["path", { d: "M18.333 2c1.96 0 3.56 1.537 3.662 3.472l.005 .195v12.
|
|
|
101
102
|
onClear: K,
|
|
102
103
|
isClearable: m,
|
|
103
104
|
isLoading: r,
|
|
104
|
-
error:
|
|
105
|
+
error: Q
|
|
105
106
|
}
|
|
106
107
|
),
|
|
107
|
-
children: /* @__PURE__ */ s.jsxs(
|
|
108
|
+
children: /* @__PURE__ */ s.jsxs(oe, { children: [
|
|
108
109
|
u && /* @__PURE__ */ s.jsx(
|
|
109
|
-
|
|
110
|
+
U,
|
|
110
111
|
{
|
|
111
112
|
ref: P,
|
|
112
|
-
startIcon:
|
|
113
|
+
startIcon: ae,
|
|
113
114
|
"aria-label": "Search options",
|
|
114
115
|
placeholder: "Search…",
|
|
115
116
|
role: "searchbox",
|
|
116
|
-
value:
|
|
117
|
+
value: L,
|
|
117
118
|
onKeyDown: (e) => e.stopPropagation(),
|
|
118
119
|
onChange: H,
|
|
119
120
|
className: B.searchField
|
|
120
121
|
}
|
|
121
122
|
),
|
|
122
|
-
/* @__PURE__ */ s.jsxs(
|
|
123
|
-
|
|
124
|
-
/* @__PURE__ */ s.jsx(
|
|
123
|
+
/* @__PURE__ */ s.jsxs(ie, { disabled: r, children: [
|
|
124
|
+
z ? Object.entries(z).map(([e, l]) => /* @__PURE__ */ s.jsxs(pe, { children: [
|
|
125
|
+
/* @__PURE__ */ s.jsx(ne, { label: e }),
|
|
125
126
|
l.map((n) => /* @__PURE__ */ s.jsx(
|
|
126
|
-
|
|
127
|
+
I,
|
|
127
128
|
{
|
|
128
|
-
onClick: (
|
|
129
|
+
onClick: (k) => T(k, n.value),
|
|
129
130
|
startIcon: i.includes(n.value) ? /* @__PURE__ */ s.jsx($, {}) : /* @__PURE__ */ s.jsx(R, {}),
|
|
130
131
|
...n
|
|
131
132
|
},
|
|
132
133
|
(n == null ? void 0 : n.value) ?? n.label
|
|
133
134
|
))
|
|
134
135
|
] }, e)) : _.map((e) => /* @__PURE__ */ s.jsx(
|
|
135
|
-
|
|
136
|
+
I,
|
|
136
137
|
{
|
|
137
|
-
onClick: (l) =>
|
|
138
|
+
onClick: (l) => T(l, e.value),
|
|
138
139
|
startIcon: i.includes(e.value) ? /* @__PURE__ */ s.jsx($, {}) : /* @__PURE__ */ s.jsx(R, {}),
|
|
139
140
|
...e
|
|
140
141
|
},
|
|
141
142
|
(e == null ? void 0 : e.value) ?? e.label
|
|
142
143
|
)),
|
|
143
|
-
j && _.length === 0 && /* @__PURE__ */ s.jsx(
|
|
144
|
+
j && _.length === 0 && /* @__PURE__ */ s.jsx(I, { disabled: !0, value: "empty", label: j })
|
|
144
145
|
] }),
|
|
145
146
|
/* @__PURE__ */ s.jsx(
|
|
146
147
|
ye,
|
|
@@ -157,11 +158,11 @@ const be = [["path", { d: "M18.333 2c1.96 0 3.56 1.537 3.662 3.472l.005 .195v12.
|
|
|
157
158
|
] })
|
|
158
159
|
}
|
|
159
160
|
),
|
|
160
|
-
p && /* @__PURE__ */ s.jsx(
|
|
161
|
+
p && /* @__PURE__ */ s.jsx(Y, { message: p, variant: "error" })
|
|
161
162
|
] });
|
|
162
163
|
}, ve = 200, Ce = (x) => {
|
|
163
164
|
var g, p;
|
|
164
|
-
const b =
|
|
165
|
+
const b = ee(), h = Z(b), {
|
|
165
166
|
title: d,
|
|
166
167
|
description: m,
|
|
167
168
|
dimension: r,
|
|
@@ -171,11 +172,11 @@ const be = [["path", { d: "M18.333 2c1.96 0 3.56 1.537 3.662 3.472l.005 .195v12.
|
|
|
171
172
|
selectedValues: F,
|
|
172
173
|
setSearchValue: v,
|
|
173
174
|
onChange: t
|
|
174
|
-
} =
|
|
175
|
+
} = de(x), f = ((g = c.data) == null ? void 0 : g.map((o) => ({
|
|
175
176
|
value: u ? o[u.name] : o[r.name],
|
|
176
177
|
label: h.data(r, o[r.name])
|
|
177
178
|
}))) ?? [], a = !c.isLoading && (((p = c.data) == null ? void 0 : p.length) ?? 0) === 0;
|
|
178
|
-
return /* @__PURE__ */ s.jsx(
|
|
179
|
+
return /* @__PURE__ */ s.jsx(re, { title: d, subtitle: m, children: /* @__PURE__ */ s.jsx(
|
|
179
180
|
Fe,
|
|
180
181
|
{
|
|
181
182
|
isClearable: !0,
|
|
@@ -184,7 +185,7 @@ const be = [["path", { d: "M18.333 2c1.96 0 3.56 1.537 3.662 3.472l.005 .195v12.
|
|
|
184
185
|
values: F ?? [],
|
|
185
186
|
options: f,
|
|
186
187
|
placeholder: j,
|
|
187
|
-
noOptionsMessage: a ?
|
|
188
|
+
noOptionsMessage: a ? ue.t("common.noOptionsFound") : void 0,
|
|
188
189
|
onChange: (o) => t == null ? void 0 : t(o),
|
|
189
190
|
onSearch: v
|
|
190
191
|
}
|
|
@@ -201,4 +202,4 @@ export {
|
|
|
201
202
|
Fe as b,
|
|
202
203
|
Le as i
|
|
203
204
|
};
|
|
204
|
-
//# sourceMappingURL=index-
|
|
205
|
+
//# sourceMappingURL=index-CCJCuW1J.js.map
|