@embeddable.com/remarkable-pro 0.0.18 → 0.0.19
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 +4 -4
- package/dist/BarChartDefaultHorizontalPro.js.map +1 -1
- package/dist/BarChartDefaultPro.js +4 -4
- package/dist/BarChartDefaultPro.js.map +1 -1
- package/dist/BarChartGroupedHorizontalPro.js +7 -7
- package/dist/BarChartGroupedHorizontalPro.js.map +1 -1
- package/dist/BarChartGroupedPro.js +7 -7
- package/dist/BarChartGroupedPro.js.map +1 -1
- package/dist/BarChartStackedHorizontalPro.js +5 -5
- package/dist/BarChartStackedHorizontalPro.js.map +1 -1
- package/dist/BarChartStackedPro.js +5 -5
- package/dist/BarChartStackedPro.js.map +1 -1
- package/dist/{ChartCard-DWm_d8Zt.js → ChartCard-DsPc_21K.js} +12 -12
- package/dist/ChartCard-DsPc_21K.js.map +1 -0
- package/dist/{Color.type.emb-BKd2NgB4.js → Color.type.emb-B6HPqRjW.js} +22 -22
- package/dist/Color.type.emb-B6HPqRjW.js.map +1 -0
- package/dist/ColorEditor.js +4 -4
- package/dist/ColorEditor.js.map +1 -1
- package/dist/ComparisonPeriodSelectFieldPro.js +7 -7
- package/dist/ComparisonPeriodSelectFieldPro.js.map +1 -1
- package/dist/DateRangePickerCustomPro.js +18 -18
- package/dist/DateRangePickerCustomPro.js.map +1 -1
- package/dist/DateRangeSelectFieldPro.js +6 -6
- package/dist/DateRangeSelectFieldPro.js.map +1 -1
- package/dist/DonutChartPro.js +4 -4
- package/dist/DonutChartPro.js.map +1 -1
- package/dist/DonutLabelChartPro.js +6 -6
- package/dist/DonutLabelChartPro.js.map +1 -1
- package/dist/{EditorCard-DjnvkPrk.js → EditorCard-aOGeW4jt.js} +3 -3
- package/dist/{EditorCard-DjnvkPrk.js.map → EditorCard-aOGeW4jt.js.map} +1 -1
- package/dist/GranularitySelectFieldPro.js +169 -0
- package/dist/GranularitySelectFieldPro.js.map +1 -0
- package/dist/HeatMapPro.js +5 -5
- package/dist/HeatMapPro.js.map +1 -1
- package/dist/KpiChartNumberComparisonPro.js +9 -10
- package/dist/KpiChartNumberComparisonPro.js.map +1 -1
- package/dist/KpiChartNumberPro.js +3 -3
- package/dist/LineChartComparisonDefaultPro.js +5 -5
- package/dist/LineChartComparisonDefaultPro.js.map +1 -1
- package/dist/LineChartDefaultPro.js +4 -4
- package/dist/LineChartDefaultPro.js.map +1 -1
- package/dist/LineChartGroupedPro.js +5 -5
- package/dist/LineChartGroupedPro.js.map +1 -1
- package/dist/MultiSelectFieldPro.js +8 -8
- package/dist/MultiSelectFieldPro.js.map +1 -1
- package/dist/PieChartPro.js +4 -4
- package/dist/PieChartPro.js.map +1 -1
- package/dist/PivotTablePro.js +13 -13
- package/dist/PivotTablePro.js.map +1 -1
- package/dist/SingleSelectFieldPro.js +6 -6
- package/dist/SingleSelectFieldPro.js.map +1 -1
- package/dist/TableChartPaginated.js +8 -8
- package/dist/TableChartPaginated.js.map +1 -1
- package/dist/TableScrollable.js +36 -36
- package/dist/TableScrollable.js.map +1 -1
- package/dist/{bars.utils-UMmKPcFA.js → bars.utils-DtHJ7gBc.js} +4 -4
- package/dist/{bars.utils-UMmKPcFA.js.map → bars.utils-DtHJ7gBc.js.map} +1 -1
- package/dist/charts.fillGaps.hooks-C7KsWcZb.js +67 -0
- package/dist/charts.fillGaps.hooks-C7KsWcZb.js.map +1 -0
- package/dist/{charts.utils-CczkrS7C.js → charts.utils-DM6cHNrK.js} +338 -318
- package/dist/charts.utils-DM6cHNrK.js.map +1 -0
- package/dist/{component.inputs.constants-DvrG0Pd4.js → component.inputs.constants-jJBFejC-.js} +273 -254
- package/dist/component.inputs.constants-jJBFejC-.js.map +1 -0
- package/dist/components/charts/charts.fillGaps.hooks.d.ts.map +1 -1
- package/dist/components/component.inputs.constants.d.ts +33 -22
- package/dist/components/component.inputs.constants.d.ts.map +1 -1
- package/dist/components/component.subinputs.constants.d.ts +2 -2
- package/dist/components/editors/GranularitySelectFieldPro/GranularitySelectFieldPro.utils.d.ts +14 -0
- package/dist/components/editors/GranularitySelectFieldPro/GranularitySelectFieldPro.utils.d.ts.map +1 -0
- package/dist/components/editors/GranularitySelectFieldPro/index.d.ts +14 -0
- package/dist/components/editors/GranularitySelectFieldPro/index.d.ts.map +1 -0
- package/dist/embeddable-components.json +15 -13
- package/dist/embeddable-theme-0137e.js +226 -198
- package/dist/embeddable-types-fa6d0.js +1 -1
- package/dist/embeddable-types.js.map +1 -1
- package/dist/{formatter.utils-DhYAAdix.js → formatter.utils-BUUUf91Q.js} +2 -2
- package/dist/{formatter.utils-DhYAAdix.js.map → formatter.utils-BUUUf91Q.js.map} +1 -1
- package/dist/{index-BVukmtai.js → index-8A8KFAVc.js} +5 -5
- package/dist/{index-BVukmtai.js.map → index-8A8KFAVc.js.map} +1 -1
- package/dist/{index-CKp5i6mg.js → index-B-Tq5-JV.js} +6 -6
- package/dist/{index-CKp5i6mg.js.map → index-B-Tq5-JV.js.map} +1 -1
- package/dist/{index-BtDrBn-k.js → index-BcDgD_JS.js} +6 -6
- package/dist/{index-BtDrBn-k.js.map → index-BcDgD_JS.js.map} +1 -1
- package/dist/{index-Ch8RmqGo.js → index-Bif__GxM.js} +6 -6
- package/dist/{index-Ch8RmqGo.js.map → index-Bif__GxM.js.map} +1 -1
- package/dist/{index-DTQefWw3.js → index-CKT9qwYq.js} +6 -6
- package/dist/{index-DTQefWw3.js.map → index-CKT9qwYq.js.map} +1 -1
- package/dist/{index-Bp0gl65w.js → index-CQlKWTOb.js} +6 -6
- package/dist/{index-Bp0gl65w.js.map → index-CQlKWTOb.js.map} +1 -1
- package/dist/{index-B50xzMzX.js → index-CZ9Sw8H3.js} +6 -6
- package/dist/{index-B50xzMzX.js.map → index-CZ9Sw8H3.js.map} +1 -1
- package/dist/{index-Ym6OQLII.js → index-Ct3Qtgor.js} +5 -5
- package/dist/{index-Ym6OQLII.js.map → index-Ct3Qtgor.js.map} +1 -1
- package/dist/{index-B67vIicG.js → index-CxgncSEN.js} +5 -5
- package/dist/{index-B67vIicG.js.map → index-CxgncSEN.js.map} +1 -1
- package/dist/{index-CrwZXvMM.js → index-D0Y3IwQg.js} +6 -6
- package/dist/{index-CrwZXvMM.js.map → index-D0Y3IwQg.js.map} +1 -1
- package/dist/{index-ClD6BYE7.js → index-DF_tK19U.js} +6 -6
- package/dist/{index-ClD6BYE7.js.map → index-DF_tK19U.js.map} +1 -1
- package/dist/{index-CChmPG5w.js → index-DVE9YBTf.js} +5 -5
- package/dist/{index-CChmPG5w.js.map → index-DVE9YBTf.js.map} +1 -1
- package/dist/{index-BIwjj2og.js → index-DVPIPYNB.js} +6 -6
- package/dist/{index-BIwjj2og.js.map → index-DVPIPYNB.js.map} +1 -1
- package/dist/{index-0v8ZD5Px.js → index-DZIiW5Nz.js} +6 -6
- package/dist/index-DZIiW5Nz.js.map +1 -0
- package/dist/{index-CNfKPgoS.js → index-DZ_H2OEY.js} +5 -5
- package/dist/{index-CNfKPgoS.js.map → index-DZ_H2OEY.js.map} +1 -1
- package/dist/{index-BWXo1H8L.js → index-F6XINVuQ.js} +6 -6
- package/dist/{index-BWXo1H8L.js.map → index-F6XINVuQ.js.map} +1 -1
- package/dist/{index-DER6yAdV.js → index-LhNKcA1s.js} +5 -5
- package/dist/{index-DER6yAdV.js.map → index-LhNKcA1s.js.map} +1 -1
- package/dist/{index-B8nyN_rk.js → index-Z5AHoasI.js} +5 -5
- package/dist/{index-B8nyN_rk.js.map → index-Z5AHoasI.js.map} +1 -1
- package/dist/{index-BkRLZw0F.js → index-cLri0mtu.js} +6 -6
- package/dist/{index-BkRLZw0F.js.map → index-cLri0mtu.js.map} +1 -1
- package/dist/{index-CAgVPB3g.js → index-dov3IPMj.js} +7 -7
- package/dist/{index-CAgVPB3g.js.map → index-dov3IPMj.js.map} +1 -1
- package/dist/{index-BAmKVmpn.js → index-grfYNj7h.js} +6 -6
- package/dist/{index-BAmKVmpn.js.map → index-grfYNj7h.js.map} +1 -1
- package/dist/index.js +29 -29
- package/dist/{pies.utils-CBGxudxq.js → pies.utils-CIDqAzCT.js} +5 -5
- package/dist/{pies.utils-CBGxudxq.js.map → pies.utils-CIDqAzCT.js.map} +1 -1
- package/dist/{tables.utils-CQdtEdns.js → tables.utils-BVdgLNxV.js} +4 -4
- package/dist/{tables.utils-CQdtEdns.js.map → tables.utils-BVdgLNxV.js.map} +1 -1
- package/dist/theme/defaults/defaults.GranularityOptions.constants.d.ts +15 -0
- package/dist/theme/defaults/defaults.GranularityOptions.constants.d.ts.map +1 -0
- package/dist/theme/i18n/translations/de.d.ts.map +1 -1
- package/dist/theme/i18n/translations/en.d.ts.map +1 -1
- package/dist/{timeRange.utils-BaqbWNuX.js → timeRange.utils-xV5aEhJD.js} +2 -2
- package/dist/{timeRange.utils-BaqbWNuX.js.map → timeRange.utils-xV5aEhJD.js.map} +1 -1
- package/package.json +1 -1
- package/dist/ChartCard-DWm_d8Zt.js.map +0 -1
- package/dist/Color.type.emb-BKd2NgB4.js.map +0 -1
- package/dist/charts.fillGaps.hooks-DPso1ZUh.js +0 -66
- package/dist/charts.fillGaps.hooks-DPso1ZUh.js.map +0 -1
- package/dist/charts.utils-CczkrS7C.js.map +0 -1
- package/dist/component.inputs.constants-DvrG0Pd4.js.map +0 -1
- package/dist/index-0v8ZD5Px.js.map +0 -1
package/dist/ColorEditor.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { defineEditor as l } from "@embeddable.com/react";
|
|
2
|
-
import { j as r, A as a, I as i, q as p, V as u } from "./Color.type.emb-
|
|
2
|
+
import { j as r, A as a, I as i, q as p, V as u } from "./Color.type.emb-B6HPqRjW.js";
|
|
3
3
|
import { useState as m, useEffect as C } from "react";
|
|
4
4
|
const I = "_colorInputContainer_1o1qe_1", d = "_colorInput_1o1qe_1", s = {
|
|
5
5
|
colorInputContainer: I,
|
|
@@ -22,16 +22,16 @@ const I = "_colorInputContainer_1o1qe_1", d = "_colorInput_1o1qe_1", s = {
|
|
|
22
22
|
] });
|
|
23
23
|
}, _ = {
|
|
24
24
|
name: "ColorEditor",
|
|
25
|
-
label: "Color
|
|
25
|
+
label: "Color editor",
|
|
26
26
|
type: p
|
|
27
|
-
},
|
|
27
|
+
}, E = l(f, _, {
|
|
28
28
|
inputs: (o, t) => ({
|
|
29
29
|
value: o,
|
|
30
30
|
onChange: (n) => t(u.of(n))
|
|
31
31
|
})
|
|
32
32
|
});
|
|
33
33
|
export {
|
|
34
|
-
|
|
34
|
+
E as default,
|
|
35
35
|
_ as meta
|
|
36
36
|
};
|
|
37
37
|
//# sourceMappingURL=ColorEditor.js.map
|
package/dist/ColorEditor.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ColorEditor.js","sources":["../src/editors/ColorEditor/index.tsx","../src/editors/ColorEditor/ColorEditor.emb.ts"],"sourcesContent":["import { useState, useEffect, FC } from 'react';\nimport styles from './ColorEditor.module.css';\nimport { ActionIcon } from '@embeddable.com/remarkable-ui';\nimport { IconX } from '@tabler/icons-react';\n\ntype ColorInputProps = {\n value: string;\n onChange: (color?: string) => void;\n};\n\nconst ColorInput: FC<ColorInputProps> = ({ value, onChange }) => {\n const [color, setColor] = useState<string>(value);\n\n useEffect(() => {\n setColor(value);\n }, [value, setColor]);\n\n return (\n <div className={styles.colorInputContainer}>\n <input\n type=\"color\"\n className={styles.colorInput}\n value={color ?? '#FFFFFF'}\n onChange={(e) => onChange(e.target.value)}\n />\n {color && <ActionIcon icon={IconX} onClick={() => onChange(undefined)} />}\n </div>\n );\n};\n\nexport default ColorInput;\n","import { defineEditor } from '@embeddable.com/react';\nimport ColorType from './Color.type.emb';\nimport { Value } from '@embeddable.com/core';\n\nimport Component from './index';\n\nexport const meta = {\n name: 'ColorEditor',\n label: 'Color
|
|
1
|
+
{"version":3,"file":"ColorEditor.js","sources":["../src/editors/ColorEditor/index.tsx","../src/editors/ColorEditor/ColorEditor.emb.ts"],"sourcesContent":["import { useState, useEffect, FC } from 'react';\nimport styles from './ColorEditor.module.css';\nimport { ActionIcon } from '@embeddable.com/remarkable-ui';\nimport { IconX } from '@tabler/icons-react';\n\ntype ColorInputProps = {\n value: string;\n onChange: (color?: string) => void;\n};\n\nconst ColorInput: FC<ColorInputProps> = ({ value, onChange }) => {\n const [color, setColor] = useState<string>(value);\n\n useEffect(() => {\n setColor(value);\n }, [value, setColor]);\n\n return (\n <div className={styles.colorInputContainer}>\n <input\n type=\"color\"\n className={styles.colorInput}\n value={color ?? '#FFFFFF'}\n onChange={(e) => onChange(e.target.value)}\n />\n {color && <ActionIcon icon={IconX} onClick={() => onChange(undefined)} />}\n </div>\n );\n};\n\nexport default ColorInput;\n","import { defineEditor } from '@embeddable.com/react';\nimport ColorType from './Color.type.emb';\nimport { Value } from '@embeddable.com/core';\n\nimport Component from './index';\n\nexport const meta = {\n name: 'ColorEditor',\n label: 'Color editor',\n type: ColorType,\n};\n\n/* @ts-expect-error - to be fixed in @embeddable.com/react */\nexport default defineEditor(Component, meta, {\n inputs: (value, setter) => {\n return {\n value,\n onChange: (val: string) => setter(Value.of(val)),\n };\n },\n});\n"],"names":["ColorInput","value","onChange","color","setColor","useState","useEffect","jsxs","styles","jsx","e","ActionIcon","IconX","meta","ColorType","ColorEditor_emb","defineEditor","Component","setter","val","Value"],"mappings":";;;;;;GAUMA,IAAkC,CAAC,EAAE,OAAAC,GAAO,UAAAC,QAAe;AAC/D,QAAM,CAACC,GAAOC,CAAQ,IAAIC,EAAiBJ,CAAK;AAEhD,SAAAK,EAAU,MAAM;AACd,IAAAF,EAASH,CAAK;AAAA,EAChB,GAAG,CAACA,GAAOG,CAAQ,CAAC,GAGlBG,gBAAAA,EAAAA,KAAC,OAAA,EAAI,WAAWC,EAAO,qBACrB,UAAA;AAAA,IAAAC,gBAAAA,EAAAA;AAAAA,MAAC;AAAA,MAAA;AAAA,QACC,MAAK;AAAA,QACL,WAAWD,EAAO;AAAA,QAClB,OAAOL,KAAS;AAAA,QAChB,UAAU,CAACO,MAAMR,EAASQ,EAAE,OAAO,KAAK;AAAA,MAAA;AAAA,IAAA;AAAA,IAEzCP,2BAAUQ,GAAA,EAAW,MAAMC,GAAO,SAAS,MAAMV,EAAS,MAAS,EAAA,CAAG;AAAA,EAAA,GACzE;AAEJ,GCtBaW,IAAO;AAAA,EAClB,MAAM;AAAA,EACN,OAAO;AAAA,EACP,MAAMC;AACR,GAGAC,IAAeC,EAAaC,GAAWJ,GAAM;AAAA,EAC3C,QAAQ,CAACZ,GAAOiB,OACP;AAAA,IACL,OAAAjB;AAAA,IACA,UAAU,CAACkB,MAAgBD,EAAOE,EAAM,GAAGD,CAAG,CAAC;AAAA,EAAA;AAGrD,CAAC;"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { defineComponent as i } from "@embeddable.com/react";
|
|
2
|
-
import { V as r } from "./Color.type.emb-
|
|
3
|
-
import { D as t } from "./index-
|
|
4
|
-
import { b as e, C as a } from "./component.inputs.constants-
|
|
2
|
+
import { V as r } from "./Color.type.emb-B6HPqRjW.js";
|
|
3
|
+
import { D as t } from "./index-DZIiW5Nz.js";
|
|
4
|
+
import { b as e, C as a } from "./component.inputs.constants-jJBFejC-.js";
|
|
5
5
|
const n = {
|
|
6
6
|
name: "ComparisonPeriodSelectFieldPro",
|
|
7
7
|
label: "Comparison Period Select Field",
|
|
@@ -15,24 +15,24 @@ const n = {
|
|
|
15
15
|
{
|
|
16
16
|
...e.timeRange,
|
|
17
17
|
name: "primaryDateRange",
|
|
18
|
-
label: "Primary
|
|
18
|
+
label: "Primary date-range",
|
|
19
19
|
category: "Pre-configured variables",
|
|
20
20
|
description: "Pick the main time period. The comparison range is based on this selection."
|
|
21
21
|
},
|
|
22
22
|
{
|
|
23
23
|
...e.comparisonPeriod,
|
|
24
|
-
label: "Selected
|
|
24
|
+
label: "Selected comparison period",
|
|
25
25
|
category: "Pre-configured variables"
|
|
26
26
|
}
|
|
27
27
|
],
|
|
28
28
|
events: [
|
|
29
29
|
{
|
|
30
30
|
name: "onChange",
|
|
31
|
-
label: "
|
|
31
|
+
label: "Selected comparison-period updated",
|
|
32
32
|
properties: [
|
|
33
33
|
{
|
|
34
34
|
name: "value",
|
|
35
|
-
label: "
|
|
35
|
+
label: "Selected comparison-period",
|
|
36
36
|
type: a
|
|
37
37
|
}
|
|
38
38
|
]
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ComparisonPeriodSelectFieldPro.js","sources":["../src/components/editors/ComparisonPeriodSelectFieldPro/ComparisonPeriodSelectFieldPro.emb.ts"],"sourcesContent":["import { defineComponent, EmbeddedComponentMeta, Inputs } from '@embeddable.com/react';\nimport { Value } from '@embeddable.com/core';\nimport ComparisonPeriodSelectFieldPro from './index';\nimport ComparisonPeriodType from '../../types/ComparisonPeriod.type.emb';\nimport { inputs } from '../../component.inputs.constants';\n\nexport const meta = {\n name: 'ComparisonPeriodSelectFieldPro',\n label: 'Comparison Period Select Field',\n category: 'Dropdowns',\n defaultWidth: 300,\n defaultHeight: 120,\n inputs: [\n { ...inputs.title },\n { ...inputs.description },\n { ...inputs.placeholder, defaultValue: 'Select a date-comparison' },\n {\n ...inputs.timeRange,\n name: 'primaryDateRange',\n label: 'Primary
|
|
1
|
+
{"version":3,"file":"ComparisonPeriodSelectFieldPro.js","sources":["../src/components/editors/ComparisonPeriodSelectFieldPro/ComparisonPeriodSelectFieldPro.emb.ts"],"sourcesContent":["import { defineComponent, EmbeddedComponentMeta, Inputs } from '@embeddable.com/react';\nimport { Value } from '@embeddable.com/core';\nimport ComparisonPeriodSelectFieldPro from './index';\nimport ComparisonPeriodType from '../../types/ComparisonPeriod.type.emb';\nimport { inputs } from '../../component.inputs.constants';\n\nexport const meta = {\n name: 'ComparisonPeriodSelectFieldPro',\n label: 'Comparison Period Select Field',\n category: 'Dropdowns',\n defaultWidth: 300,\n defaultHeight: 120,\n inputs: [\n { ...inputs.title },\n { ...inputs.description },\n { ...inputs.placeholder, defaultValue: 'Select a date-comparison' },\n {\n ...inputs.timeRange,\n name: 'primaryDateRange',\n label: 'Primary date-range',\n category: 'Pre-configured variables',\n description: 'Pick the main time period. The comparison range is based on this selection.',\n },\n {\n ...inputs.comparisonPeriod,\n label: 'Selected comparison period',\n category: 'Pre-configured variables',\n },\n ],\n events: [\n {\n name: 'onChange',\n label: 'Selected comparison-period updated',\n properties: [\n {\n name: 'value',\n label: 'Selected comparison-period',\n type: ComparisonPeriodType,\n },\n ],\n },\n ],\n variables: [\n {\n name: 'comparison-period value',\n type: ComparisonPeriodType,\n defaultValue: Value.noFilter(),\n inputs: ['comparisonPeriod'],\n events: [{ name: 'onChange', property: 'value' }],\n },\n ],\n} as const satisfies EmbeddedComponentMeta;\n\nexport default defineComponent(ComparisonPeriodSelectFieldPro, meta, {\n props: (inputs: Inputs<typeof meta>) => inputs,\n events: {\n onChange: (value) => {\n return {\n value: value || Value.noFilter(),\n };\n },\n },\n});\n"],"names":["meta","inputs","ComparisonPeriodType","Value","ComparisonPeriodSelectFieldPro_emb","defineComponent","ComparisonPeriodSelectFieldPro","value"],"mappings":";;;;AAMO,MAAMA,IAAO;AAAA,EAClB,MAAM;AAAA,EACN,OAAO;AAAA,EACP,UAAU;AAAA,EACV,cAAc;AAAA,EACd,eAAe;AAAA,EACf,QAAQ;AAAA,IACN,EAAE,GAAGC,EAAO,MAAA;AAAA,IACZ,EAAE,GAAGA,EAAO,YAAA;AAAA,IACZ,EAAE,GAAGA,EAAO,aAAa,cAAc,2BAAA;AAAA,IACvC;AAAA,MACE,GAAGA,EAAO;AAAA,MACV,MAAM;AAAA,MACN,OAAO;AAAA,MACP,UAAU;AAAA,MACV,aAAa;AAAA,IAAA;AAAA,IAEf;AAAA,MACE,GAAGA,EAAO;AAAA,MACV,OAAO;AAAA,MACP,UAAU;AAAA,IAAA;AAAA,EACZ;AAAA,EAEF,QAAQ;AAAA,IACN;AAAA,MACE,MAAM;AAAA,MACN,OAAO;AAAA,MACP,YAAY;AAAA,QACV;AAAA,UACE,MAAM;AAAA,UACN,OAAO;AAAA,UACP,MAAMC;AAAA,QAAA;AAAA,MACR;AAAA,IACF;AAAA,EACF;AAAA,EAEF,WAAW;AAAA,IACT;AAAA,MACE,MAAM;AAAA,MACN,MAAMA;AAAA,MACN,cAAcC,EAAM,SAAA;AAAA,MACpB,QAAQ,CAAC,kBAAkB;AAAA,MAC3B,QAAQ,CAAC,EAAE,MAAM,YAAY,UAAU,SAAS;AAAA,IAAA;AAAA,EAClD;AAEJ,GAEAC,IAAeC,EAAgBC,GAAgCN,GAAM;AAAA,EACnE,OAAO,CAACC,MAAgCA;AAAAA,EACxC,QAAQ;AAAA,IACN,UAAU,CAACM,OACF;AAAA,MACL,OAAOA,KAASJ,EAAM,SAAA;AAAA,IAAS;AAAA,EAEnC;AAEJ,CAAC;"}
|
|
@@ -1,19 +1,19 @@
|
|
|
1
|
-
import { useTheme as
|
|
2
|
-
import { j as
|
|
1
|
+
import { useTheme as v, defineComponent as C } from "@embeddable.com/react";
|
|
2
|
+
import { j as l, f as y, V as s } from "./Color.type.emb-B6HPqRjW.js";
|
|
3
3
|
import { u as D, g as P, a as V, b as w } from "./dates.utils-BF32dTLi.js";
|
|
4
|
-
import { a as
|
|
5
|
-
import { E as
|
|
6
|
-
const
|
|
7
|
-
const t =
|
|
8
|
-
|
|
4
|
+
import { a as S, r as j, i as k, b as a } from "./component.inputs.constants-jJBFejC-.js";
|
|
5
|
+
import { E as M } from "./EditorCard-aOGeW4jt.js";
|
|
6
|
+
const T = (e) => {
|
|
7
|
+
const t = v();
|
|
8
|
+
S(t);
|
|
9
9
|
const { dayjsLocaleReady: r } = D();
|
|
10
10
|
if (!r)
|
|
11
11
|
return null;
|
|
12
|
-
const { onChange: i, clearable: u, selectedValue: n, showTwoMonths: c } = e, { description: d, placeholder: m, title: g } =
|
|
12
|
+
const { onChange: i, clearable: u, selectedValue: n, showTwoMonths: c } = e, { description: d, placeholder: m, title: g } = j(e), p = (R) => {
|
|
13
13
|
const b = w(R);
|
|
14
14
|
i(b);
|
|
15
15
|
}, o = t.defaults.dateRangesOptions, h = P(n, "MMM DD", o), f = t.i18n.language ?? t.formatter.locale;
|
|
16
|
-
return /* @__PURE__ */
|
|
16
|
+
return /* @__PURE__ */ l.jsx(M, { title: g, subtitle: d, children: /* @__PURE__ */ l.jsx(
|
|
17
17
|
y,
|
|
18
18
|
{
|
|
19
19
|
locale: f,
|
|
@@ -23,10 +23,10 @@ const x = (e) => {
|
|
|
23
23
|
numberOfMonths: c ? 2 : 1,
|
|
24
24
|
value: V(n, o),
|
|
25
25
|
onChange: p,
|
|
26
|
-
submitLabel:
|
|
26
|
+
submitLabel: k.t("editors.dateRangePicker.apply")
|
|
27
27
|
}
|
|
28
28
|
) });
|
|
29
|
-
},
|
|
29
|
+
}, x = {
|
|
30
30
|
name: "DateRangePickerCustomPro",
|
|
31
31
|
label: "Date-Range Picker - Custom",
|
|
32
32
|
category: "Dropdowns",
|
|
@@ -40,7 +40,7 @@ const x = (e) => {
|
|
|
40
40
|
{
|
|
41
41
|
...a.timeRange,
|
|
42
42
|
name: "selectedValue",
|
|
43
|
-
label: "Selected
|
|
43
|
+
label: "Selected value",
|
|
44
44
|
category: "Pre-configured variables"
|
|
45
45
|
},
|
|
46
46
|
{
|
|
@@ -54,11 +54,11 @@ const x = (e) => {
|
|
|
54
54
|
events: [
|
|
55
55
|
{
|
|
56
56
|
name: "onChange",
|
|
57
|
-
label: "
|
|
57
|
+
label: "Selected date-range updated",
|
|
58
58
|
properties: [
|
|
59
59
|
{
|
|
60
60
|
name: "value",
|
|
61
|
-
label: "
|
|
61
|
+
label: "Selected date-range",
|
|
62
62
|
type: "timeRange"
|
|
63
63
|
}
|
|
64
64
|
]
|
|
@@ -68,23 +68,23 @@ const x = (e) => {
|
|
|
68
68
|
{
|
|
69
69
|
name: "date-range value",
|
|
70
70
|
type: "timeRange",
|
|
71
|
-
defaultValue:
|
|
71
|
+
defaultValue: s.noFilter(),
|
|
72
72
|
inputs: ["selectedValue"],
|
|
73
73
|
events: [{ name: "onChange", property: "value" }]
|
|
74
74
|
}
|
|
75
75
|
]
|
|
76
|
-
}, I =
|
|
76
|
+
}, I = C(T, x, {
|
|
77
77
|
props: (e) => ({
|
|
78
78
|
...e
|
|
79
79
|
}),
|
|
80
80
|
events: {
|
|
81
81
|
onChange: (e) => ({
|
|
82
|
-
value: e ??
|
|
82
|
+
value: e ?? s.noFilter()
|
|
83
83
|
})
|
|
84
84
|
}
|
|
85
85
|
});
|
|
86
86
|
export {
|
|
87
87
|
I as default,
|
|
88
|
-
|
|
88
|
+
x as meta
|
|
89
89
|
};
|
|
90
90
|
//# sourceMappingURL=DateRangePickerCustomPro.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DateRangePickerCustomPro.js","sources":["../src/components/editors/dates/DateRangePickerCustomPro/index.tsx","../src/components/editors/dates/DateRangePickerCustomPro/DateRangePickerCustomPro.emb.ts"],"sourcesContent":["import { useTheme } from '@embeddable.com/react';\nimport { DateRange, DateRangePickerField } from '@embeddable.com/remarkable-ui';\nimport { Theme } from '../../../../theme/theme.types';\nimport { useLoadDayjsLocale } from '../../../../utils.ts/date.utils';\nimport { TimeRange } from '@embeddable.com/core';\nimport { resolveI18nProps } from '../../../component.utils';\nimport { EditorCard } from '../../shared/EditorCard/EditorCard';\nimport { i18n, i18nSetup } from '../../../../theme/i18n/i18n';\nimport {\n getDateRangeFromTimeRange,\n getTimeRangeFromDateRange,\n getTimeRangeLabel,\n} from '../dates.utils';\n\ntype DateRangePickerPresetsProps = {\n description?: string;\n onChange: (newDateRange: TimeRange) => void;\n placeholder?: string;\n selectedValue: TimeRange;\n title?: string;\n clearable?: boolean;\n showTwoMonths?: boolean;\n};\n\nconst DateRangePickerPresets = (props: DateRangePickerPresetsProps) => {\n const theme: Theme = useTheme() as Theme;\n i18nSetup(theme);\n\n const { dayjsLocaleReady } = useLoadDayjsLocale();\n\n if (!dayjsLocaleReady) {\n return null;\n }\n\n const { onChange, clearable, selectedValue, showTwoMonths } = props;\n\n const { description, placeholder, title } = resolveI18nProps(props);\n\n const handleChange = (newDateRange: DateRange | undefined) => {\n const timeRange: TimeRange = getTimeRangeFromDateRange(newDateRange);\n onChange(timeRange);\n };\n\n const dateRangeOptions = theme.defaults.dateRangesOptions;\n const displayValue = getTimeRangeLabel(selectedValue, 'MMM DD', dateRangeOptions);\n\n const locale = theme.i18n.language ?? theme.formatter.locale;\n\n return (\n <EditorCard title={title} subtitle={description}>\n <DateRangePickerField\n locale={locale}\n clearable={clearable}\n placeholder={placeholder}\n displayValue={displayValue}\n numberOfMonths={showTwoMonths ? 2 : 1}\n value={getDateRangeFromTimeRange(selectedValue, dateRangeOptions)}\n onChange={handleChange}\n submitLabel={i18n.t('editors.dateRangePicker.apply')}\n />\n </EditorCard>\n );\n};\n\nexport default DateRangePickerPresets;\n","import { defineComponent, EmbeddedComponentMeta, Inputs } from '@embeddable.com/react';\nimport { Value } from '@embeddable.com/core';\nimport DateTimeSelectFieldPro from './index';\nimport { inputs } from '../../../component.inputs.constants';\n\nexport const meta = {\n name: 'DateRangePickerCustomPro',\n label: 'Date-Range Picker - Custom',\n category: 'Dropdowns',\n defaultWidth: 300,\n defaultHeight: 120,\n inputs: [\n inputs.title,\n inputs.description,\n { ...inputs.placeholder, defaultValue: 'Select a date-range' },\n inputs.clearable,\n {\n ...inputs.timeRange,\n name: 'selectedValue',\n label: 'Selected
|
|
1
|
+
{"version":3,"file":"DateRangePickerCustomPro.js","sources":["../src/components/editors/dates/DateRangePickerCustomPro/index.tsx","../src/components/editors/dates/DateRangePickerCustomPro/DateRangePickerCustomPro.emb.ts"],"sourcesContent":["import { useTheme } from '@embeddable.com/react';\nimport { DateRange, DateRangePickerField } from '@embeddable.com/remarkable-ui';\nimport { Theme } from '../../../../theme/theme.types';\nimport { useLoadDayjsLocale } from '../../../../utils.ts/date.utils';\nimport { TimeRange } from '@embeddable.com/core';\nimport { resolveI18nProps } from '../../../component.utils';\nimport { EditorCard } from '../../shared/EditorCard/EditorCard';\nimport { i18n, i18nSetup } from '../../../../theme/i18n/i18n';\nimport {\n getDateRangeFromTimeRange,\n getTimeRangeFromDateRange,\n getTimeRangeLabel,\n} from '../dates.utils';\n\ntype DateRangePickerPresetsProps = {\n description?: string;\n onChange: (newDateRange: TimeRange) => void;\n placeholder?: string;\n selectedValue: TimeRange;\n title?: string;\n clearable?: boolean;\n showTwoMonths?: boolean;\n};\n\nconst DateRangePickerPresets = (props: DateRangePickerPresetsProps) => {\n const theme: Theme = useTheme() as Theme;\n i18nSetup(theme);\n\n const { dayjsLocaleReady } = useLoadDayjsLocale();\n\n if (!dayjsLocaleReady) {\n return null;\n }\n\n const { onChange, clearable, selectedValue, showTwoMonths } = props;\n\n const { description, placeholder, title } = resolveI18nProps(props);\n\n const handleChange = (newDateRange: DateRange | undefined) => {\n const timeRange: TimeRange = getTimeRangeFromDateRange(newDateRange);\n onChange(timeRange);\n };\n\n const dateRangeOptions = theme.defaults.dateRangesOptions;\n const displayValue = getTimeRangeLabel(selectedValue, 'MMM DD', dateRangeOptions);\n\n const locale = theme.i18n.language ?? theme.formatter.locale;\n\n return (\n <EditorCard title={title} subtitle={description}>\n <DateRangePickerField\n locale={locale}\n clearable={clearable}\n placeholder={placeholder}\n displayValue={displayValue}\n numberOfMonths={showTwoMonths ? 2 : 1}\n value={getDateRangeFromTimeRange(selectedValue, dateRangeOptions)}\n onChange={handleChange}\n submitLabel={i18n.t('editors.dateRangePicker.apply')}\n />\n </EditorCard>\n );\n};\n\nexport default DateRangePickerPresets;\n","import { defineComponent, EmbeddedComponentMeta, Inputs } from '@embeddable.com/react';\nimport { Value } from '@embeddable.com/core';\nimport DateTimeSelectFieldPro from './index';\nimport { inputs } from '../../../component.inputs.constants';\n\nexport const meta = {\n name: 'DateRangePickerCustomPro',\n label: 'Date-Range Picker - Custom',\n category: 'Dropdowns',\n defaultWidth: 300,\n defaultHeight: 120,\n inputs: [\n inputs.title,\n inputs.description,\n { ...inputs.placeholder, defaultValue: 'Select a date-range' },\n inputs.clearable,\n {\n ...inputs.timeRange,\n name: 'selectedValue',\n label: 'Selected value',\n category: 'Pre-configured variables',\n },\n {\n ...inputs.boolean,\n name: 'showTwoMonths',\n label: 'Show two months',\n defaultValue: false,\n category: 'Component Settings',\n },\n ],\n events: [\n {\n name: 'onChange',\n label: 'Selected date-range updated',\n properties: [\n {\n name: 'value',\n label: 'Selected date-range',\n type: 'timeRange',\n },\n ],\n },\n ],\n variables: [\n {\n name: 'date-range value',\n type: 'timeRange',\n defaultValue: Value.noFilter(),\n inputs: ['selectedValue'],\n events: [{ name: 'onChange', property: 'value' }],\n },\n ],\n} as const satisfies EmbeddedComponentMeta;\n\nexport default defineComponent(DateTimeSelectFieldPro, meta, {\n props: (inputs: Inputs<typeof meta>) => {\n return {\n ...inputs,\n };\n },\n events: {\n onChange: (range) => ({\n value: range ?? Value.noFilter(),\n }),\n },\n});\n"],"names":["DateRangePickerPresets","props","theme","useTheme","i18nSetup","dayjsLocaleReady","useLoadDayjsLocale","onChange","clearable","selectedValue","showTwoMonths","description","placeholder","title","resolveI18nProps","handleChange","newDateRange","timeRange","getTimeRangeFromDateRange","dateRangeOptions","displayValue","getTimeRangeLabel","locale","jsx","EditorCard","DateRangePickerField","getDateRangeFromTimeRange","i18n","meta","inputs","Value","DateRangePickerCustomPro_emb","defineComponent","DateTimeSelectFieldPro","range"],"mappings":";;;;;AAwBA,MAAMA,IAAyB,CAACC,MAAuC;AACrE,QAAMC,IAAeC,EAAA;AACrB,EAAAC,EAAUF,CAAK;AAEf,QAAM,EAAE,kBAAAG,EAAA,IAAqBC,EAAA;AAE7B,MAAI,CAACD;AACH,WAAO;AAGT,QAAM,EAAE,UAAAE,GAAU,WAAAC,GAAW,eAAAC,GAAe,eAAAC,MAAkBT,GAExD,EAAE,aAAAU,GAAa,aAAAC,GAAa,OAAAC,EAAA,IAAUC,EAAiBb,CAAK,GAE5Dc,IAAe,CAACC,MAAwC;AAC5D,UAAMC,IAAuBC,EAA0BF,CAAY;AACnE,IAAAT,EAASU,CAAS;AAAA,EACpB,GAEME,IAAmBjB,EAAM,SAAS,mBAClCkB,IAAeC,EAAkBZ,GAAe,UAAUU,CAAgB,GAE1EG,IAASpB,EAAM,KAAK,YAAYA,EAAM,UAAU;AAEtD,SACEqB,gBAAAA,EAAAA,IAACC,GAAA,EAAW,OAAAX,GAAc,UAAUF,GAClC,UAAAY,gBAAAA,EAAAA;AAAAA,IAACE;AAAA,IAAA;AAAA,MACC,QAAAH;AAAA,MACA,WAAAd;AAAA,MACA,aAAAI;AAAA,MACA,cAAAQ;AAAA,MACA,gBAAgBV,IAAgB,IAAI;AAAA,MACpC,OAAOgB,EAA0BjB,GAAeU,CAAgB;AAAA,MAChE,UAAUJ;AAAA,MACV,aAAaY,EAAK,EAAE,+BAA+B;AAAA,IAAA;AAAA,EAAA,GAEvD;AAEJ,GCzDaC,IAAO;AAAA,EAClB,MAAM;AAAA,EACN,OAAO;AAAA,EACP,UAAU;AAAA,EACV,cAAc;AAAA,EACd,eAAe;AAAA,EACf,QAAQ;AAAA,IACNC,EAAO;AAAA,IACPA,EAAO;AAAA,IACP,EAAE,GAAGA,EAAO,aAAa,cAAc,sBAAA;AAAA,IACvCA,EAAO;AAAA,IACP;AAAA,MACE,GAAGA,EAAO;AAAA,MACV,MAAM;AAAA,MACN,OAAO;AAAA,MACP,UAAU;AAAA,IAAA;AAAA,IAEZ;AAAA,MACE,GAAGA,EAAO;AAAA,MACV,MAAM;AAAA,MACN,OAAO;AAAA,MACP,cAAc;AAAA,MACd,UAAU;AAAA,IAAA;AAAA,EACZ;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,GAEAC,IAAeC,EAAgBC,GAAwBL,GAAM;AAAA,EAC3D,OAAO,CAACC,OACC;AAAA,IACL,GAAGA;AAAAA,EAAA;AAAA,EAGP,QAAQ;AAAA,IACN,UAAU,CAACK,OAAW;AAAA,MACpB,OAAOA,KAASJ,EAAM,SAAA;AAAA,IAAS;AAAA,EACjC;AAEJ,CAAC;"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { defineComponent as n } from "@embeddable.com/react";
|
|
2
|
-
import { V as t } from "./Color.type.emb-
|
|
3
|
-
import { D as l } from "./index-
|
|
4
|
-
import { b as e } from "./component.inputs.constants-
|
|
2
|
+
import { V as t } from "./Color.type.emb-B6HPqRjW.js";
|
|
3
|
+
import { D as l } from "./index-LhNKcA1s.js";
|
|
4
|
+
import { b as e } from "./component.inputs.constants-jJBFejC-.js";
|
|
5
5
|
const o = {
|
|
6
6
|
name: "DateRangeSelectFieldPro",
|
|
7
7
|
label: "Date-Range Picker - Presets",
|
|
@@ -30,18 +30,18 @@ const o = {
|
|
|
30
30
|
{
|
|
31
31
|
...e.timeRange,
|
|
32
32
|
name: "selectedValue",
|
|
33
|
-
label: "Selected
|
|
33
|
+
label: "Selected value",
|
|
34
34
|
category: "Pre-configured variables"
|
|
35
35
|
}
|
|
36
36
|
],
|
|
37
37
|
events: [
|
|
38
38
|
{
|
|
39
39
|
name: "onChange",
|
|
40
|
-
label: "
|
|
40
|
+
label: "Selected date-range updated",
|
|
41
41
|
properties: [
|
|
42
42
|
{
|
|
43
43
|
name: "value",
|
|
44
|
-
label: "
|
|
44
|
+
label: "Selected date-range",
|
|
45
45
|
type: "timeRange"
|
|
46
46
|
}
|
|
47
47
|
]
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DateRangeSelectFieldPro.js","sources":["../src/components/editors/dates/DateRangePickerPresetsPro/DateRangeSelectFieldPro.emb.ts"],"sourcesContent":["import { defineComponent, EmbeddedComponentMeta, Inputs } from '@embeddable.com/react';\nimport { Value } from '@embeddable.com/core';\nimport DateTimeSelectFieldPro from './index';\nimport { inputs } from '../../../component.inputs.constants';\n\nexport const meta = {\n name: 'DateRangeSelectFieldPro',\n label: 'Date-Range Picker - Presets',\n category: 'Dropdowns',\n defaultWidth: 300,\n defaultHeight: 120,\n inputs: [\n { ...inputs.title },\n { ...inputs.description },\n { ...inputs.placeholder, defaultValue: 'Select a date-range' },\n {\n ...inputs.boolean,\n name: 'showCustomRangeOptions',\n label: 'Show custom date-range option',\n defaultValue: true,\n category: 'Component Settings',\n },\n {\n ...inputs.boolean,\n name: 'showTwoMonths',\n label: 'Show two-month view',\n defaultValue: false,\n category: 'Component Settings',\n },\n inputs.clearable,\n {\n ...inputs.timeRange,\n name: 'selectedValue',\n label: 'Selected
|
|
1
|
+
{"version":3,"file":"DateRangeSelectFieldPro.js","sources":["../src/components/editors/dates/DateRangePickerPresetsPro/DateRangeSelectFieldPro.emb.ts"],"sourcesContent":["import { defineComponent, EmbeddedComponentMeta, Inputs } from '@embeddable.com/react';\nimport { Value } from '@embeddable.com/core';\nimport DateTimeSelectFieldPro from './index';\nimport { inputs } from '../../../component.inputs.constants';\n\nexport const meta = {\n name: 'DateRangeSelectFieldPro',\n label: 'Date-Range Picker - Presets',\n category: 'Dropdowns',\n defaultWidth: 300,\n defaultHeight: 120,\n inputs: [\n { ...inputs.title },\n { ...inputs.description },\n { ...inputs.placeholder, defaultValue: 'Select a date-range' },\n {\n ...inputs.boolean,\n name: 'showCustomRangeOptions',\n label: 'Show custom date-range option',\n defaultValue: true,\n category: 'Component Settings',\n },\n {\n ...inputs.boolean,\n name: 'showTwoMonths',\n label: 'Show two-month view',\n defaultValue: false,\n category: 'Component Settings',\n },\n inputs.clearable,\n {\n ...inputs.timeRange,\n name: 'selectedValue',\n label: 'Selected value',\n category: 'Pre-configured variables',\n },\n ],\n events: [\n {\n name: 'onChange',\n label: 'Selected date-range updated',\n properties: [\n {\n name: 'value',\n label: 'Selected date-range',\n type: 'timeRange',\n },\n ],\n },\n ],\n variables: [\n {\n name: 'date-range value',\n type: 'timeRange',\n defaultValue: Value.noFilter(),\n inputs: ['selectedValue'],\n events: [{ name: 'onChange', property: 'value' }],\n },\n ],\n} as const satisfies EmbeddedComponentMeta;\n\nexport default defineComponent(DateTimeSelectFieldPro, meta, {\n props: (inputs: Inputs<typeof meta>) => {\n return {\n ...inputs,\n };\n },\n events: {\n onChange: (range) => ({\n value: range ?? Value.noFilter(),\n }),\n },\n});\n"],"names":["meta","inputs","Value","DateRangeSelectFieldPro_emb","defineComponent","DateTimeSelectFieldPro","range"],"mappings":";;;;AAKO,MAAMA,IAAO;AAAA,EAClB,MAAM;AAAA,EACN,OAAO;AAAA,EACP,UAAU;AAAA,EACV,cAAc;AAAA,EACd,eAAe;AAAA,EACf,QAAQ;AAAA,IACN,EAAE,GAAGC,EAAO,MAAA;AAAA,IACZ,EAAE,GAAGA,EAAO,YAAA;AAAA,IACZ,EAAE,GAAGA,EAAO,aAAa,cAAc,sBAAA;AAAA,IACvC;AAAA,MACE,GAAGA,EAAO;AAAA,MACV,MAAM;AAAA,MACN,OAAO;AAAA,MACP,cAAc;AAAA,MACd,UAAU;AAAA,IAAA;AAAA,IAEZ;AAAA,MACE,GAAGA,EAAO;AAAA,MACV,MAAM;AAAA,MACN,OAAO;AAAA,MACP,cAAc;AAAA,MACd,UAAU;AAAA,IAAA;AAAA,IAEZA,EAAO;AAAA,IACP;AAAA,MACE,GAAGA,EAAO;AAAA,MACV,MAAM;AAAA,MACN,OAAO;AAAA,MACP,UAAU;AAAA,IAAA;AAAA,EACZ;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,GAEAC,IAAeC,EAAgBC,GAAwBL,GAAM;AAAA,EAC3D,OAAO,CAACC,OACC;AAAA,IACL,GAAGA;AAAAA,EAAA;AAAA,EAGP,QAAQ;AAAA,IACN,UAAU,CAACK,OAAW;AAAA,MACpB,OAAOA,KAASJ,EAAM,SAAA;AAAA,IAAS;AAAA,EACjC;AAEJ,CAAC;"}
|
package/dist/DonutChartPro.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { V as o, l as n } from "./Color.type.emb-
|
|
1
|
+
import { V as o, l as n } from "./Color.type.emb-B6HPqRjW.js";
|
|
2
2
|
import { defineComponent as a } from "@embeddable.com/react";
|
|
3
|
-
import { D as s } from "./index-
|
|
4
|
-
import { b as e } from "./component.inputs.constants-
|
|
3
|
+
import { D as s } from "./index-8A8KFAVc.js";
|
|
4
|
+
import { b as e } from "./component.inputs.constants-jJBFejC-.js";
|
|
5
5
|
const r = {
|
|
6
6
|
name: "DonutChartPro",
|
|
7
7
|
label: "Donut Chart",
|
|
@@ -24,7 +24,7 @@ const r = {
|
|
|
24
24
|
properties: [
|
|
25
25
|
{
|
|
26
26
|
name: "dimensionValue",
|
|
27
|
-
label: "Clicked
|
|
27
|
+
label: "Clicked dimension",
|
|
28
28
|
type: "string"
|
|
29
29
|
}
|
|
30
30
|
]
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DonutChartPro.js","sources":["../src/components/charts/pies/DonutChartPro/DonutChartPro.emb.ts"],"sourcesContent":["import { Value, loadData } from '@embeddable.com/core';\nimport { defineComponent, EmbeddedComponentMeta, Inputs } from '@embeddable.com/react';\nimport DonutChartPro from './index';\nimport { inputs } from '../../../component.inputs.constants';\n\nexport const meta = {\n name: 'DonutChartPro',\n label: 'Donut Chart',\n category: 'Pie Charts',\n inputs: [\n inputs.dataset,\n inputs.measure,\n inputs.dimension,\n inputs.title,\n inputs.description,\n inputs.showLegend,\n inputs.maxLegendItems,\n inputs.showTooltips,\n inputs.showValueLabels,\n ],\n events: [\n {\n name: 'onSegmentClick',\n label: 'A segment is clicked',\n properties: [\n {\n name: 'dimensionValue',\n label: 'Clicked
|
|
1
|
+
{"version":3,"file":"DonutChartPro.js","sources":["../src/components/charts/pies/DonutChartPro/DonutChartPro.emb.ts"],"sourcesContent":["import { Value, loadData } from '@embeddable.com/core';\nimport { defineComponent, EmbeddedComponentMeta, Inputs } from '@embeddable.com/react';\nimport DonutChartPro from './index';\nimport { inputs } from '../../../component.inputs.constants';\n\nexport const meta = {\n name: 'DonutChartPro',\n label: 'Donut Chart',\n category: 'Pie Charts',\n inputs: [\n inputs.dataset,\n inputs.measure,\n inputs.dimension,\n inputs.title,\n inputs.description,\n inputs.showLegend,\n inputs.maxLegendItems,\n inputs.showTooltips,\n inputs.showValueLabels,\n ],\n events: [\n {\n name: 'onSegmentClick',\n label: 'A segment is clicked',\n properties: [\n {\n name: 'dimensionValue',\n label: 'Clicked dimension',\n type: 'string',\n },\n ],\n },\n ],\n} as const satisfies EmbeddedComponentMeta;\n\nexport default defineComponent(DonutChartPro, meta, {\n props: (inputs: Inputs<typeof meta>) => {\n return {\n ...inputs,\n results: loadData({\n from: inputs.dataset,\n select: [inputs.measure, inputs.dimension],\n }),\n };\n },\n events: {\n onSegmentClick: (value) => {\n return {\n dimensionValue: value.dimensionValue || Value.noFilter(),\n };\n },\n },\n});\n"],"names":["meta","inputs","DonutChartPro_emb","defineComponent","DonutChartPro","loadData","value","Value"],"mappings":";;;;AAKO,MAAMA,IAAO;AAAA,EAClB,MAAM;AAAA,EACN,OAAO;AAAA,EACP,UAAU;AAAA,EACV,QAAQ;AAAA,IACNC,EAAO;AAAA,IACPA,EAAO;AAAA,IACPA,EAAO;AAAA,IACPA,EAAO;AAAA,IACPA,EAAO;AAAA,IACPA,EAAO;AAAA,IACPA,EAAO;AAAA,IACPA,EAAO;AAAA,IACPA,EAAO;AAAA,EAAA;AAAA,EAET,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;AAEJ,GAEAC,IAAeC,EAAgBC,GAAeJ,GAAM;AAAA,EAClD,OAAO,CAACC,OACC;AAAA,IACL,GAAGA;AAAAA,IACH,SAASI,EAAS;AAAA,MAChB,MAAMJ,EAAO;AAAA,MACb,QAAQ,CAACA,EAAO,SAASA,EAAO,SAAS;AAAA,IAAA,CAC1C;AAAA,EAAA;AAAA,EAGL,QAAQ;AAAA,IACN,gBAAgB,CAACK,OACR;AAAA,MACL,gBAAgBA,EAAM,kBAAkBC,EAAM,SAAA;AAAA,IAAS;AAAA,EAE3D;AAEJ,CAAC;"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { D as n } from "./index-
|
|
2
|
-
import { V as r, l as t } from "./Color.type.emb-
|
|
1
|
+
import { D as n } from "./index-cLri0mtu.js";
|
|
2
|
+
import { V as r, l as t } from "./Color.type.emb-B6HPqRjW.js";
|
|
3
3
|
import { defineComponent as o } from "@embeddable.com/react";
|
|
4
|
-
import { b as e } from "./component.inputs.constants-
|
|
4
|
+
import { b as e } from "./component.inputs.constants-jJBFejC-.js";
|
|
5
5
|
const s = {
|
|
6
6
|
name: "DonutLabelChartPro",
|
|
7
7
|
label: "Donut Label Chart",
|
|
@@ -10,11 +10,11 @@ const s = {
|
|
|
10
10
|
e.dataset,
|
|
11
11
|
e.measure,
|
|
12
12
|
e.dimension,
|
|
13
|
-
{ ...e.measure, name: "innerLabelMeasure", label: "Inner
|
|
13
|
+
{ ...e.measure, name: "innerLabelMeasure", label: "Inner label measure" },
|
|
14
14
|
{
|
|
15
15
|
...e.string,
|
|
16
16
|
name: "innerLabelText",
|
|
17
|
-
label: "Inner
|
|
17
|
+
label: "Inner label text",
|
|
18
18
|
description: "Text to display inside the donut chart",
|
|
19
19
|
category: "Component Data"
|
|
20
20
|
},
|
|
@@ -32,7 +32,7 @@ const s = {
|
|
|
32
32
|
properties: [
|
|
33
33
|
{
|
|
34
34
|
name: "dimensionValue",
|
|
35
|
-
label: "Clicked
|
|
35
|
+
label: "Clicked dimension",
|
|
36
36
|
type: "string"
|
|
37
37
|
}
|
|
38
38
|
]
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DonutLabelChartPro.js","sources":["../src/components/charts/pies/DonutLabelChartPro/DonutLabelChartPro.emb.ts"],"sourcesContent":["import DonutChartPro from './index';\nimport { Value, loadData } from '@embeddable.com/core';\nimport { defineComponent, EmbeddedComponentMeta, Inputs } from '@embeddable.com/react';\nimport { inputs } from '../../../component.inputs.constants';\n\nexport const meta = {\n name: 'DonutLabelChartPro',\n label: 'Donut Label Chart',\n category: 'Pie Charts',\n inputs: [\n inputs.dataset,\n inputs.measure,\n inputs.dimension,\n { ...inputs.measure, name: 'innerLabelMeasure', label: 'Inner
|
|
1
|
+
{"version":3,"file":"DonutLabelChartPro.js","sources":["../src/components/charts/pies/DonutLabelChartPro/DonutLabelChartPro.emb.ts"],"sourcesContent":["import DonutChartPro from './index';\nimport { Value, loadData } from '@embeddable.com/core';\nimport { defineComponent, EmbeddedComponentMeta, Inputs } from '@embeddable.com/react';\nimport { inputs } from '../../../component.inputs.constants';\n\nexport const meta = {\n name: 'DonutLabelChartPro',\n label: 'Donut Label Chart',\n category: 'Pie Charts',\n inputs: [\n inputs.dataset,\n inputs.measure,\n inputs.dimension,\n { ...inputs.measure, name: 'innerLabelMeasure', label: 'Inner label measure' },\n {\n ...inputs.string,\n name: 'innerLabelText',\n label: 'Inner label text',\n description: 'Text to display inside the donut chart',\n category: 'Component Data',\n },\n inputs.title,\n inputs.description,\n inputs.showLegend,\n inputs.maxLegendItems,\n inputs.showTooltips,\n inputs.showValueLabels,\n ],\n events: [\n {\n name: 'onSegmentClick',\n label: 'A segment is clicked',\n properties: [\n {\n name: 'dimensionValue',\n label: 'Clicked dimension',\n type: 'string',\n },\n ],\n },\n ],\n} as const satisfies EmbeddedComponentMeta;\n\nexport default defineComponent(DonutChartPro, meta, {\n props: (inputs: Inputs<typeof meta>) => {\n return {\n ...inputs,\n results: loadData({\n from: inputs.dataset,\n select: [inputs.measure, inputs.dimension],\n }),\n resultsInnerLabel: loadData({\n from: inputs.dataset,\n select: [inputs.innerLabelMeasure],\n }),\n };\n },\n events: {\n onSegmentClick: (value) => {\n return {\n dimensionValue: value.dimensionValue || Value.noFilter(),\n };\n },\n },\n});\n"],"names":["meta","inputs","DonutLabelChartPro_emb","defineComponent","DonutChartPro","loadData","value","Value"],"mappings":";;;;AAKO,MAAMA,IAAO;AAAA,EAClB,MAAM;AAAA,EACN,OAAO;AAAA,EACP,UAAU;AAAA,EACV,QAAQ;AAAA,IACNC,EAAO;AAAA,IACPA,EAAO;AAAA,IACPA,EAAO;AAAA,IACP,EAAE,GAAGA,EAAO,SAAS,MAAM,qBAAqB,OAAO,sBAAA;AAAA,IACvD;AAAA,MACE,GAAGA,EAAO;AAAA,MACV,MAAM;AAAA,MACN,OAAO;AAAA,MACP,aAAa;AAAA,MACb,UAAU;AAAA,IAAA;AAAA,IAEZA,EAAO;AAAA,IACPA,EAAO;AAAA,IACPA,EAAO;AAAA,IACPA,EAAO;AAAA,IACPA,EAAO;AAAA,IACPA,EAAO;AAAA,EAAA;AAAA,EAET,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;AAEJ,GAEAC,IAAeC,EAAgBC,GAAeJ,GAAM;AAAA,EAClD,OAAO,CAACC,OACC;AAAA,IACL,GAAGA;AAAAA,IACH,SAASI,EAAS;AAAA,MAChB,MAAMJ,EAAO;AAAA,MACb,QAAQ,CAACA,EAAO,SAASA,EAAO,SAAS;AAAA,IAAA,CAC1C;AAAA,IACD,mBAAmBI,EAAS;AAAA,MAC1B,MAAMJ,EAAO;AAAA,MACb,QAAQ,CAACA,EAAO,iBAAiB;AAAA,IAAA,CAClC;AAAA,EAAA;AAAA,EAGL,QAAQ;AAAA,IACN,gBAAgB,CAACK,OACR;AAAA,MACL,gBAAgBA,EAAM,kBAAkBC,EAAM,SAAA;AAAA,IAAS;AAAA,EAE3D;AAEJ,CAAC;"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { j as r, C as c, n as d, o as m, p as l } from "./Color.type.emb-
|
|
1
|
+
import { j as r, C as c, n as d, o as m, p as l } from "./Color.type.emb-B6HPqRjW.js";
|
|
2
2
|
import { useTheme as p } from "@embeddable.com/react";
|
|
3
|
-
import { a as C, i as x, I as j } from "./component.inputs.constants-
|
|
3
|
+
import { a as C, i as x, I as j } from "./component.inputs.constants-jJBFejC-.js";
|
|
4
4
|
const u = "_card_15bw3_1", f = {
|
|
5
5
|
card: u
|
|
6
6
|
}, b = ({
|
|
@@ -29,4 +29,4 @@ const u = "_card_15bw3_1", f = {
|
|
|
29
29
|
export {
|
|
30
30
|
b as E
|
|
31
31
|
};
|
|
32
|
-
//# sourceMappingURL=EditorCard-
|
|
32
|
+
//# sourceMappingURL=EditorCard-aOGeW4jt.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EditorCard-
|
|
1
|
+
{"version":3,"file":"EditorCard-aOGeW4jt.js","sources":["../src/components/editors/shared/EditorCard/EditorCard.tsx"],"sourcesContent":["import { useTheme } from '@embeddable.com/react';\nimport { i18n, i18nSetup } from '../../../../theme/i18n/i18n';\nimport styles from './EditorCard.module.css';\nimport { FC } from 'react';\nimport { Theme } from '../../../../theme/theme.types';\nimport { Card, CardContent, CardFeedback, CardHeader } from '@embeddable.com/remarkable-ui';\nimport { IconAlertCircle } from '@tabler/icons-react';\n\ntype EditorCardProps = {\n title?: string;\n subtitle?: string;\n children: React.ReactNode;\n errorMessage?: string;\n};\n\nexport const EditorCard: FC<EditorCardProps> = ({\n title,\n subtitle,\n children,\n errorMessage,\n ...props\n}) => {\n const theme: Theme = useTheme() as Theme;\n i18nSetup(theme);\n\n const getDisplay = () => {\n if (errorMessage) {\n return (\n <CardFeedback\n variant=\"error\"\n icon={IconAlertCircle}\n title={i18n.t('editors.errorTitle')}\n message={errorMessage}\n />\n );\n }\n\n return children;\n };\n\n return (\n <Card className={styles.card} {...props}>\n <CardHeader title={title} subtitle={subtitle} />\n <CardContent>{getDisplay()}</CardContent>\n </Card>\n );\n};\n"],"names":["EditorCard","title","subtitle","children","errorMessage","props","theme","useTheme","i18nSetup","getDisplay","jsx","CardFeedback","IconAlertCircle","i18n","Card","styles","CardHeader","CardContent"],"mappings":";;;;;GAeaA,IAAkC,CAAC;AAAA,EAC9C,OAAAC;AAAA,EACA,UAAAC;AAAA,EACA,UAAAC;AAAA,EACA,cAAAC;AAAA,EACA,GAAGC;AACL,MAAM;AACJ,QAAMC,IAAeC,EAAA;AACrB,EAAAC,EAAUF,CAAK;AAEf,QAAMG,IAAa,MACbL,IAEAM,gBAAAA,EAAAA;AAAAA,IAACC;AAAA,IAAA;AAAA,MACC,SAAQ;AAAA,MACR,MAAMC;AAAA,MACN,OAAOC,EAAK,EAAE,oBAAoB;AAAA,MAClC,SAAST;AAAA,IAAA;AAAA,EAAA,IAKRD;AAGT,gCACGW,GAAA,EAAK,WAAWC,EAAO,MAAO,GAAGV,GAChC,UAAA;AAAA,IAAAK,gBAAAA,EAAAA,IAACM,GAAA,EAAW,OAAAf,GAAc,UAAAC,EAAA,CAAoB;AAAA,IAC9CQ,gBAAAA,EAAAA,IAACO,GAAA,EAAa,UAAAR,EAAA,EAAW,CAAE;AAAA,EAAA,GAC7B;AAEJ;"}
|
|
@@ -0,0 +1,169 @@
|
|
|
1
|
+
import { useTheme as T, defineComponent as w } from "@embeddable.com/react";
|
|
2
|
+
import { j as m, S as F, V as C } from "./Color.type.emb-B6HPqRjW.js";
|
|
3
|
+
import { useMemo as O, useEffect as k } from "react";
|
|
4
|
+
import { c as E, a as G, r as D, b as i } from "./component.inputs.constants-jJBFejC-.js";
|
|
5
|
+
import { E as P } from "./EditorCard-aOGeW4jt.js";
|
|
6
|
+
const t = {
|
|
7
|
+
second: "second",
|
|
8
|
+
minute: "minute",
|
|
9
|
+
hour: "hour",
|
|
10
|
+
day: "day",
|
|
11
|
+
week: "week",
|
|
12
|
+
month: "month",
|
|
13
|
+
quarter: "quarter",
|
|
14
|
+
year: "year"
|
|
15
|
+
}, V = [
|
|
16
|
+
{ value: t.second, label: "defaults.granularityOptions.second|Second" },
|
|
17
|
+
{ value: t.minute, label: "defaults.granularityOptions.minute|Minute" },
|
|
18
|
+
{ value: t.hour, label: "defaults.granularityOptions.hour|Hour" },
|
|
19
|
+
{ value: t.day, label: "defaults.granularityOptions.day|Day" },
|
|
20
|
+
{ value: t.week, label: "defaults.granularityOptions.week|Week" },
|
|
21
|
+
{ value: t.month, label: "defaults.granularityOptions.month|Month" },
|
|
22
|
+
{ value: t.quarter, label: "defaults.granularityOptions.quarter|Quarter" },
|
|
23
|
+
{ value: t.year, label: "defaults.granularityOptions.year|Year" }
|
|
24
|
+
], q = 1, x = 100, A = () => V.map((e) => ({
|
|
25
|
+
...e,
|
|
26
|
+
label: E(e.label)
|
|
27
|
+
})), g = (e) => {
|
|
28
|
+
if (e instanceof Date) return isNaN(e.getTime()) ? null : e;
|
|
29
|
+
if (typeof e == "string" || typeof e == "number") {
|
|
30
|
+
const a = new Date(e);
|
|
31
|
+
return isNaN(a.getTime()) ? null : a;
|
|
32
|
+
}
|
|
33
|
+
return null;
|
|
34
|
+
}, n = (e) => new Date(e.getTime() + 1), u = (e, a, r) => (a.getTime() - e.getTime()) / r;
|
|
35
|
+
function M(e, a, r) {
|
|
36
|
+
if (e > a) return 0;
|
|
37
|
+
switch (r) {
|
|
38
|
+
case t.second:
|
|
39
|
+
return u(e, n(a), 1e3);
|
|
40
|
+
case t.minute:
|
|
41
|
+
return u(e, n(a), 60 * 1e3);
|
|
42
|
+
case t.hour:
|
|
43
|
+
return u(e, n(a), 3600 * 1e3);
|
|
44
|
+
case t.day:
|
|
45
|
+
return u(e, n(a), 1440 * 60 * 1e3);
|
|
46
|
+
case t.week:
|
|
47
|
+
return u(e, n(a), 10080 * 60 * 1e3);
|
|
48
|
+
case t.month:
|
|
49
|
+
return u(e, n(a), 672 * 60 * 60 * 1e3);
|
|
50
|
+
// shortest month
|
|
51
|
+
case t.quarter:
|
|
52
|
+
return u(e, n(a), 2160 * 60 * 60 * 1e3);
|
|
53
|
+
// shortest quarter
|
|
54
|
+
case t.year:
|
|
55
|
+
return u(e, n(a), 365 * 24 * 60 * 60 * 1e3);
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
const N = (e, a, r) => {
|
|
59
|
+
const l = M(e, a, r);
|
|
60
|
+
return l >= q && l <= x;
|
|
61
|
+
}, U = (e, a) => {
|
|
62
|
+
const r = g(e == null ? void 0 : e.from), l = g(e == null ? void 0 : e.to);
|
|
63
|
+
if (!r || !l) return a;
|
|
64
|
+
const y = /* @__PURE__ */ new Set();
|
|
65
|
+
for (const o of a) {
|
|
66
|
+
const d = o.value;
|
|
67
|
+
N(r, l, d) && y.add(d);
|
|
68
|
+
}
|
|
69
|
+
return a.filter((o) => y.has(o.value));
|
|
70
|
+
}, _ = (e) => {
|
|
71
|
+
const a = T();
|
|
72
|
+
G(a);
|
|
73
|
+
const { granularity: r, granularities: l, clearable: y, onChange: o } = e, { description: d, placeholder: b, title: h, primaryTimeRange: p } = D(e), v = A(), s = O(() => U(
|
|
74
|
+
p,
|
|
75
|
+
v.filter((c) => l == null ? void 0 : l.includes(c.value))
|
|
76
|
+
), [p, l]);
|
|
77
|
+
k(() => {
|
|
78
|
+
var c;
|
|
79
|
+
if (r && !s.some((f) => f.value === r)) {
|
|
80
|
+
const f = (c = s[1] ?? s[0]) == null ? void 0 : c.value;
|
|
81
|
+
f && o(f);
|
|
82
|
+
}
|
|
83
|
+
}, [s, r, o]);
|
|
84
|
+
const S = s.some((c) => c.value === r) ? r : void 0;
|
|
85
|
+
return /* @__PURE__ */ m.jsx(P, { title: h, subtitle: d, children: /* @__PURE__ */ m.jsx(
|
|
86
|
+
F,
|
|
87
|
+
{
|
|
88
|
+
clearable: y,
|
|
89
|
+
placeholder: b,
|
|
90
|
+
value: S,
|
|
91
|
+
options: s,
|
|
92
|
+
onChange: o
|
|
93
|
+
}
|
|
94
|
+
) });
|
|
95
|
+
}, j = {
|
|
96
|
+
name: "GranularitySelectFieldPro",
|
|
97
|
+
label: "Granularity Select Field",
|
|
98
|
+
category: "Dropdowns",
|
|
99
|
+
defaultWidth: 300,
|
|
100
|
+
defaultHeight: 120,
|
|
101
|
+
inputs: [
|
|
102
|
+
i.title,
|
|
103
|
+
i.description,
|
|
104
|
+
{ ...i.placeholder, defaultValue: "Select a granularity" },
|
|
105
|
+
{
|
|
106
|
+
...i.granularities,
|
|
107
|
+
label: "Available granularities",
|
|
108
|
+
category: "Pre-configured variables",
|
|
109
|
+
// Ignore seconds and minutes
|
|
110
|
+
defaultValue: [
|
|
111
|
+
t.hour,
|
|
112
|
+
t.day,
|
|
113
|
+
t.week,
|
|
114
|
+
t.month,
|
|
115
|
+
t.quarter,
|
|
116
|
+
t.year
|
|
117
|
+
]
|
|
118
|
+
},
|
|
119
|
+
{
|
|
120
|
+
...i.granularity,
|
|
121
|
+
label: "Selected granularity",
|
|
122
|
+
category: "Pre-configured variables"
|
|
123
|
+
},
|
|
124
|
+
{
|
|
125
|
+
...i.timeRange,
|
|
126
|
+
name: "primaryTimeRange",
|
|
127
|
+
label: "Primary date-range",
|
|
128
|
+
description: "Connect your primary date-range variable to enable automatic selection of the most appropriate granularity",
|
|
129
|
+
category: "Pre-configured variables"
|
|
130
|
+
},
|
|
131
|
+
{ ...i.clearable, defaultValue: !1 }
|
|
132
|
+
],
|
|
133
|
+
events: [
|
|
134
|
+
{
|
|
135
|
+
name: "onChange",
|
|
136
|
+
label: "Selected granularity updated",
|
|
137
|
+
properties: [
|
|
138
|
+
{
|
|
139
|
+
name: "value",
|
|
140
|
+
label: "Selected granularity",
|
|
141
|
+
type: "granularity"
|
|
142
|
+
}
|
|
143
|
+
]
|
|
144
|
+
}
|
|
145
|
+
],
|
|
146
|
+
variables: [
|
|
147
|
+
{
|
|
148
|
+
name: "granularity value",
|
|
149
|
+
type: "granularity",
|
|
150
|
+
defaultValue: "day",
|
|
151
|
+
inputs: ["granularity"],
|
|
152
|
+
events: [{ name: "onChange", property: "value" }]
|
|
153
|
+
}
|
|
154
|
+
]
|
|
155
|
+
}, Q = w(_, j, {
|
|
156
|
+
props: (e) => ({
|
|
157
|
+
...e
|
|
158
|
+
}),
|
|
159
|
+
events: {
|
|
160
|
+
onChange: (e) => ({
|
|
161
|
+
value: e ?? C.noFilter()
|
|
162
|
+
})
|
|
163
|
+
}
|
|
164
|
+
});
|
|
165
|
+
export {
|
|
166
|
+
Q as default,
|
|
167
|
+
j as meta
|
|
168
|
+
};
|
|
169
|
+
//# sourceMappingURL=GranularitySelectFieldPro.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"GranularitySelectFieldPro.js","sources":["../src/theme/defaults/defaults.GranularityOptions.constants.ts","../src/components/editors/GranularitySelectFieldPro/GranularitySelectFieldPro.utils.ts","../src/components/editors/GranularitySelectFieldPro/index.tsx","../src/components/editors/GranularitySelectFieldPro/GranularitySelectFieldPro.emb.ts"],"sourcesContent":["import { SelectListOptionProps } from '@embeddable.com/remarkable-ui';\n\nexport const Granularity = {\n second: 'second',\n minute: 'minute',\n hour: 'hour',\n day: 'day',\n week: 'week',\n month: 'month',\n quarter: 'quarter',\n year: 'year',\n} as const;\n\nexport type TGranularity = keyof typeof Granularity;\nexport type TGranularityValue = (typeof Granularity)[TGranularity];\n\nexport const defaultGranularitySelectFieldOptions: SelectListOptionProps[] = [\n { value: Granularity.second, label: 'defaults.granularityOptions.second|Second' },\n { value: Granularity.minute, label: 'defaults.granularityOptions.minute|Minute' },\n { value: Granularity.hour, label: 'defaults.granularityOptions.hour|Hour' },\n { value: Granularity.day, label: 'defaults.granularityOptions.day|Day' },\n { value: Granularity.week, label: 'defaults.granularityOptions.week|Week' },\n { value: Granularity.month, label: 'defaults.granularityOptions.month|Month' },\n { value: Granularity.quarter, label: 'defaults.granularityOptions.quarter|Quarter' },\n { value: Granularity.year, label: 'defaults.granularityOptions.year|Year' },\n];\n","import { SelectListOptionProps } from '@embeddable.com/remarkable-ui';\nimport { TimeRange } from '@embeddable.com/core';\nimport {\n defaultGranularitySelectFieldOptions,\n Granularity,\n TGranularity,\n TGranularityValue,\n} from '../../../theme/defaults/defaults.GranularityOptions.constants';\nimport { resolveI18nString } from '../../component.utils';\n\nconst DEFAULT_MIN_BUCKETS = 1;\nconst DEFAULT_MAX_BUCKETS = 100;\n\nexport const getGranularitySelectFieldOptions = () =>\n defaultGranularitySelectFieldOptions.map((opt) => ({\n ...opt,\n label: resolveI18nString(opt.label),\n }));\n\n// Convert possibly-string timestamps to Date safely.\nconst toDate = (d: unknown): Date | null => {\n if (d instanceof Date) return isNaN(d.getTime()) ? null : d;\n if (typeof d === 'string' || typeof d === 'number') {\n const parsed = new Date(d);\n return isNaN(parsed.getTime()) ? null : parsed;\n }\n return null;\n};\n\n// Inclusive end -> Exclusive end helper (only used for sub-day diffs)\nconst toExclusiveEnd = (endInclusive: Date): Date => new Date(endInclusive.getTime() + 1);\n\nconst bucketCountByUnit = (start: Date, endExclusive: Date, unitMs: number): number => {\n return (endExclusive.getTime() - start.getTime()) / unitMs;\n};\n\n// Bucket counting (treat end as INCLUSIVE)\nfunction bucketCount(start: Date, endInclusive: Date, granularity: TGranularity): number {\n if (start > endInclusive) return 0;\n\n switch (granularity) {\n case Granularity.second:\n return bucketCountByUnit(start, toExclusiveEnd(endInclusive), 1000);\n\n case Granularity.minute:\n return bucketCountByUnit(start, toExclusiveEnd(endInclusive), 60 * 1000);\n\n case Granularity.hour:\n return bucketCountByUnit(start, toExclusiveEnd(endInclusive), 60 * 60 * 1000);\n\n case Granularity.day:\n return bucketCountByUnit(start, toExclusiveEnd(endInclusive), 24 * 60 * 60 * 1000);\n\n case Granularity.week:\n return bucketCountByUnit(start, toExclusiveEnd(endInclusive), 7 * 24 * 60 * 60 * 1000);\n\n case Granularity.month:\n return bucketCountByUnit(start, toExclusiveEnd(endInclusive), 28 * 24 * 60 * 60 * 1000); // shortest month\n\n case Granularity.quarter:\n return bucketCountByUnit(start, toExclusiveEnd(endInclusive), 90 * 24 * 60 * 60 * 1000); // shortest quarter\n\n case Granularity.year:\n return bucketCountByUnit(start, toExclusiveEnd(endInclusive), 365 * 24 * 60 * 60 * 1000); // shortest year\n }\n}\n\nconst isGranularityValid = (\n start: Date,\n endInclusive: Date,\n granularity: TGranularityValue,\n): boolean => {\n const buckets = bucketCount(start, endInclusive, granularity);\n return buckets >= DEFAULT_MIN_BUCKETS && buckets <= DEFAULT_MAX_BUCKETS;\n};\n\nexport const getAvailableGranularityOptionsFromTimeRange = (\n timeRange: TimeRange,\n allOptions: SelectListOptionProps[],\n): SelectListOptionProps[] => {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const from = toDate((timeRange as any)?.from);\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const to = toDate((timeRange as any)?.to);\n\n // If we can’t parse range, don’t hide anything (fail open)\n if (!from || !to) return allOptions;\n\n const validSet = new Set<TGranularityValue>();\n\n for (const opt of allOptions) {\n const g = opt.value as TGranularityValue;\n if (isGranularityValid(from, to, g)) {\n validSet.add(g);\n }\n }\n\n // preserve original UI ordering\n return allOptions.filter((opt) => validSet.has(opt.value as TGranularityValue));\n};\n","import { useEffect, useMemo } from 'react';\nimport { useTheme } from '@embeddable.com/react';\nimport { SingleSelectField } from '@embeddable.com/remarkable-ui';\nimport { TimeRange } from '@embeddable.com/core';\nimport { Theme } from '../../../theme/theme.types';\nimport { i18nSetup } from '../../../theme/i18n/i18n';\nimport { resolveI18nProps } from '../../component.utils';\nimport { EditorCard } from '../shared/EditorCard/EditorCard';\nimport {\n getAvailableGranularityOptionsFromTimeRange,\n getGranularitySelectFieldOptions,\n} from './GranularitySelectFieldPro.utils';\n\ntype GranularitySelectFieldProProps = {\n description?: string;\n onChange: (newGranularity: string) => void;\n placeholder?: string;\n primaryTimeRange: TimeRange;\n title?: string;\n granularity?: string;\n granularities?: string[];\n clearable?: boolean;\n};\n\nconst GranularitySelectFieldPro = (props: GranularitySelectFieldProProps) => {\n const theme: Theme = useTheme() as Theme;\n i18nSetup(theme);\n\n const { granularity, granularities, clearable, onChange } = props;\n const { description, placeholder, title, primaryTimeRange } = resolveI18nProps(props);\n\n const granularitySelectFieldOptions = getGranularitySelectFieldOptions();\n\n const availableOptions = useMemo(() => {\n return getAvailableGranularityOptionsFromTimeRange(\n primaryTimeRange,\n granularitySelectFieldOptions.filter((opt) => granularities?.includes(opt.value as string)),\n );\n }, [primaryTimeRange, granularities]);\n\n useEffect(() => {\n if (granularity) {\n // Selected granularity is not available - select 2nd or 1st available (if 2nd is not available)\n if (!availableOptions.some((opt) => opt.value === granularity)) {\n const newGranularity = (availableOptions[1] ?? availableOptions[0])?.value as string;\n if (newGranularity) {\n onChange(newGranularity);\n }\n }\n }\n }, [availableOptions, granularity, onChange]);\n\n const safeValue = availableOptions.some((opt) => opt.value === granularity)\n ? granularity\n : undefined;\n\n return (\n <EditorCard title={title} subtitle={description}>\n <SingleSelectField\n clearable={clearable}\n placeholder={placeholder}\n value={safeValue}\n options={availableOptions}\n onChange={onChange}\n />\n </EditorCard>\n );\n};\n\nexport default GranularitySelectFieldPro;\n","import { defineComponent, EmbeddedComponentMeta, Inputs } from '@embeddable.com/react';\nimport { Value } from '@embeddable.com/core';\nimport DateTimeSelectFieldPro from './index';\nimport { inputs } from '../../component.inputs.constants';\nimport { Granularity } from '../../../theme/defaults/defaults.GranularityOptions.constants';\n\nexport const meta = {\n name: 'GranularitySelectFieldPro',\n label: 'Granularity Select Field',\n category: 'Dropdowns',\n defaultWidth: 300,\n defaultHeight: 120,\n inputs: [\n inputs.title,\n inputs.description,\n { ...inputs.placeholder, defaultValue: 'Select a granularity' },\n {\n ...inputs.granularities,\n label: 'Available granularities',\n category: 'Pre-configured variables',\n // Ignore seconds and minutes\n defaultValue: [\n Granularity.hour,\n Granularity.day,\n Granularity.week,\n Granularity.month,\n Granularity.quarter,\n Granularity.year,\n ],\n },\n {\n ...inputs.granularity,\n label: 'Selected granularity',\n category: 'Pre-configured variables',\n },\n {\n ...inputs.timeRange,\n name: 'primaryTimeRange',\n label: 'Primary date-range',\n description:\n 'Connect your primary date-range variable to enable automatic selection of the most appropriate granularity',\n category: 'Pre-configured variables',\n },\n { ...inputs.clearable, defaultValue: false },\n ],\n events: [\n {\n name: 'onChange',\n label: 'Selected granularity updated',\n properties: [\n {\n name: 'value',\n label: 'Selected granularity',\n type: 'granularity',\n },\n ],\n },\n ],\n variables: [\n {\n name: 'granularity value',\n type: 'granularity',\n defaultValue: 'day',\n inputs: ['granularity'],\n events: [{ name: 'onChange', property: 'value' }],\n },\n ],\n} as const satisfies EmbeddedComponentMeta;\n\nexport default defineComponent(DateTimeSelectFieldPro, meta, {\n props: (inputs: Inputs<typeof meta>) => {\n return {\n ...inputs,\n };\n },\n events: {\n onChange: (granularity) => ({\n value: granularity ?? Value.noFilter(),\n }),\n },\n});\n"],"names":["Granularity","defaultGranularitySelectFieldOptions","DEFAULT_MIN_BUCKETS","DEFAULT_MAX_BUCKETS","getGranularitySelectFieldOptions","opt","resolveI18nString","toDate","d","parsed","toExclusiveEnd","endInclusive","bucketCountByUnit","start","endExclusive","unitMs","bucketCount","granularity","isGranularityValid","buckets","getAvailableGranularityOptionsFromTimeRange","timeRange","allOptions","from","to","validSet","g","GranularitySelectFieldPro","props","theme","useTheme","i18nSetup","granularities","clearable","onChange","description","placeholder","title","primaryTimeRange","resolveI18nProps","granularitySelectFieldOptions","availableOptions","useMemo","useEffect","newGranularity","_a","safeValue","jsx","EditorCard","SingleSelectField","meta","inputs","GranularitySelectFieldPro_emb","defineComponent","DateTimeSelectFieldPro","Value"],"mappings":"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"}
|
package/dist/HeatMapPro.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { g as t, l as a } from "./Color.type.emb-
|
|
1
|
+
import { g as t, l as a } from "./Color.type.emb-B6HPqRjW.js";
|
|
2
2
|
import { defineComponent as n } from "@embeddable.com/react";
|
|
3
|
-
import { H as i } from "./index-
|
|
4
|
-
import { b as e } from "./component.inputs.constants-
|
|
3
|
+
import { H as i } from "./index-D0Y3IwQg.js";
|
|
4
|
+
import { b as e } from "./component.inputs.constants-jJBFejC-.js";
|
|
5
5
|
const r = {
|
|
6
6
|
name: "HeatMapPro",
|
|
7
7
|
label: "Heat Map",
|
|
@@ -11,12 +11,12 @@ const r = {
|
|
|
11
11
|
e.measure,
|
|
12
12
|
{
|
|
13
13
|
...e.dimensionWithDateBounds,
|
|
14
|
-
label: "Row
|
|
14
|
+
label: "Row dimension",
|
|
15
15
|
name: "rowDimension"
|
|
16
16
|
},
|
|
17
17
|
{
|
|
18
18
|
...e.dimensionWithDateBounds,
|
|
19
|
-
label: "Column
|
|
19
|
+
label: "Column dimension",
|
|
20
20
|
name: "columnDimension"
|
|
21
21
|
},
|
|
22
22
|
e.title,
|