@embeddable.com/remarkable-pro 0.3.8 → 0.3.11
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/AreaChartPro.js +1 -1
- package/dist/BarChartDefaultHorizontalPro.js +1 -1
- package/dist/BarChartDefaultPro.js +1 -1
- package/dist/BarChartGroupedHorizontalPro.js +1 -1
- package/dist/BarChartGroupedPro.js +1 -1
- package/dist/BarChartStackedHorizontalPro.js +1 -1
- package/dist/BarChartStackedPro.js +1 -1
- package/dist/BarLineChartPro.js +1 -1
- package/dist/BubbleChartPro.js +1 -1
- package/dist/{ChartCard-DoGFLbS2.js → ChartCard-jnVaCkEl.js} +3 -3
- package/dist/{ChartCard-DoGFLbS2.js.map → ChartCard-jnVaCkEl.js.map} +1 -1
- package/dist/{Color.type.emb-DlaJUTvL.js → Color.type.emb-BaD8SdPp.js} +2 -2
- package/dist/{Color.type.emb-DlaJUTvL.js.map → Color.type.emb-BaD8SdPp.js.map} +1 -1
- package/dist/ColorEditor.js +3 -3
- package/dist/ComparisonPeriodSelectFieldPro.js +1 -1
- package/dist/DateRangePickerCustomPro.js +1 -1
- package/dist/DateRangeSelectFieldPro.js +1 -1
- package/dist/{DimensionAndMeasureSingleSelectField-DxxOxs5u.js → DimensionAndMeasureSingleSelectField-_jJAx5WA.js} +3 -3
- package/dist/{DimensionAndMeasureSingleSelectField-DxxOxs5u.js.map → DimensionAndMeasureSingleSelectField-_jJAx5WA.js.map} +1 -1
- package/dist/DimensionMeasureMultiSelectFieldPro.js +1 -1
- package/dist/DimensionSingleSelectFieldPro.js +1 -1
- package/dist/DonutChartPro.js +1 -1
- package/dist/DonutLabelChartPro.js +1 -1
- package/dist/{EditorCard-CXZ06jv0.js → EditorCard-UMHyz0mi.js} +3 -3
- package/dist/{EditorCard-CXZ06jv0.js.map → EditorCard-UMHyz0mi.js.map} +1 -1
- package/dist/FilterBuilderPro.js +1 -1
- package/dist/{GranularitySelectField-AD9h_nFb.js → GranularitySelectField-DqIroVY8.js} +3 -3
- package/dist/{GranularitySelectField-AD9h_nFb.js.map → GranularitySelectField-DqIroVY8.js.map} +1 -1
- package/dist/GranularitySelectFieldPro.js +1 -1
- package/dist/HeatMapPro.js +1 -1
- package/dist/HorizontalDividerPro.js +1 -1
- package/dist/{IconAlertCircle-G4eEBkwP.js → IconAlertCircle-6JBV4EIw.js} +2 -2
- package/dist/{IconAlertCircle-G4eEBkwP.js.map → IconAlertCircle-6JBV4EIw.js.map} +1 -1
- package/dist/{IconCalendarFilled-DtogsEc6.js → IconCalendarFilled-DqAxJw4A.js} +2 -2
- package/dist/{IconCalendarFilled-DtogsEc6.js.map → IconCalendarFilled-DqAxJw4A.js.map} +1 -1
- package/dist/KpiChartNumberComparisonPro.js +1 -1
- package/dist/KpiChartNumberPro.js +1 -1
- package/dist/LineChartComparisonDefaultPro.js +1 -1
- package/dist/LineChartComparisonWithKpiTabsPro.js +1 -1
- package/dist/LineChartDefaultPro.js +1 -1
- package/dist/LineChartGroupedPro.js +1 -1
- package/dist/LineChartWithKpiTabsPro.js +1 -1
- package/dist/{Markdown.type.emb-Cu7lMx7t.js → Markdown.type.emb-Bj3t2uti.js} +2 -2
- package/dist/{Markdown.type.emb-Cu7lMx7t.js.map → Markdown.type.emb-Bj3t2uti.js.map} +1 -1
- package/dist/MarkdownEditor.js +3 -3
- package/dist/MarkdownPro.js +1 -1
- package/dist/MeasureMultiSelectFieldPro.js +1 -1
- package/dist/MeasureSingleSelectFieldPro.js +1 -1
- package/dist/MultiSelectFieldPro.js +1 -1
- package/dist/PieChartPro.js +1 -1
- package/dist/PivotTablePro.js +1 -1
- package/dist/ScatterChartPro.js +1 -1
- package/dist/SingleSelectFieldPro.js +1 -1
- package/dist/TableChartPaginated.js +1 -1
- package/dist/TableScrollable.js +1 -1
- package/dist/TextFieldPro.js +1 -1
- package/dist/{af-irMZ0wKU.js → af-C91exd0Q.js} +3 -3
- package/dist/{af-irMZ0wKU.js.map → af-C91exd0Q.js.map} +1 -1
- package/dist/{am-CpL4LPRS.js → am-DtfmJd4G.js} +3 -3
- package/dist/{am-CpL4LPRS.js.map → am-DtfmJd4G.js.map} +1 -1
- package/dist/{ar-cgQjhkSj.js → ar-BGSOGueG.js} +3 -3
- package/dist/{ar-cgQjhkSj.js.map → ar-BGSOGueG.js.map} +1 -1
- package/dist/{az-B_Gi3evf.js → az-CGw2Ya-y.js} +3 -3
- package/dist/{az-B_Gi3evf.js.map → az-CGw2Ya-y.js.map} +1 -1
- package/dist/{bars.loadData.utils-C0aBNT5b.js → bars.loadData.utils-UhQFoiF3.js} +4 -4
- package/dist/{bars.loadData.utils-C0aBNT5b.js.map → bars.loadData.utils-UhQFoiF3.js.map} +1 -1
- package/dist/{bars.utils-CsufVR7j.js → bars.utils-BGi2vvkU.js} +5 -5
- package/dist/{bars.utils-CsufVR7j.js.map → bars.utils-BGi2vvkU.js.map} +1 -1
- package/dist/{be-COpHabX2.js → be-Bste1Cz3.js} +3 -3
- package/dist/{be-COpHabX2.js.map → be-Bste1Cz3.js.map} +1 -1
- package/dist/{bg-CI1SPzWG.js → bg-DFkYJwwX.js} +3 -3
- package/dist/{bg-CI1SPzWG.js.map → bg-DFkYJwwX.js.map} +1 -1
- package/dist/{bi-Di9KogCM.js → bi-Bj5rxlAQ.js} +3 -3
- package/dist/{bi-Di9KogCM.js.map → bi-Bj5rxlAQ.js.map} +1 -1
- package/dist/{bm-AXLxr0AO.js → bm-De6-QCVd.js} +3 -3
- package/dist/{bm-AXLxr0AO.js.map → bm-De6-QCVd.js.map} +1 -1
- package/dist/{bn-DWHwkpP-.js → bn-DSFOM2Aj.js} +3 -3
- package/dist/{bn-DWHwkpP-.js.map → bn-DSFOM2Aj.js.map} +1 -1
- package/dist/{bo-B3o3nxDp.js → bo-C4XaJ3be.js} +3 -3
- package/dist/{bo-B3o3nxDp.js.map → bo-C4XaJ3be.js.map} +1 -1
- package/dist/{br-BEA_Y8j4.js → br-CSc5ArsD.js} +3 -3
- package/dist/{br-BEA_Y8j4.js.map → br-CSc5ArsD.js.map} +1 -1
- package/dist/{bs-Dt0zhTg3.js → bs-BTlppPk-.js} +3 -3
- package/dist/{bs-Dt0zhTg3.js.map → bs-BTlppPk-.js.map} +1 -1
- package/dist/{ca-R_m1zV8A.js → ca-sBwNl5KY.js} +3 -3
- package/dist/{ca-R_m1zV8A.js.map → ca-sBwNl5KY.js.map} +1 -1
- package/dist/{charts.fillGaps.hooks-CWY0cZuI.js → charts.fillGaps.hooks-ImD798b-.js} +34 -34
- package/dist/charts.fillGaps.hooks-ImD798b-.js.map +1 -0
- package/dist/{charts.utils-B-Ryq4Nc.js → charts.utils-CM-dKk0n.js} +2 -2
- package/dist/{charts.utils-B-Ryq4Nc.js.map → charts.utils-CM-dKk0n.js.map} +1 -1
- package/dist/{component.inputs.constants-C1gOvjv8.js → component.inputs.constants-CJRHMXHA.js} +179 -169
- package/dist/component.inputs.constants-CJRHMXHA.js.map +1 -0
- package/dist/components/charts/charts.fillGaps.hooks.d.ts.map +1 -1
- package/dist/components/component.subinputs.constants.d.ts +8 -0
- package/dist/components/component.subinputs.constants.d.ts.map +1 -1
- package/dist/components/editors/FilterBuilderPro/components/FilterBuilderProAndOrButton.d.ts +1 -0
- package/dist/components/editors/FilterBuilderPro/components/FilterBuilderProAndOrButton.d.ts.map +1 -1
- package/dist/components/editors/FilterBuilderPro/definition.d.ts +2 -1
- package/dist/components/editors/FilterBuilderPro/definition.d.ts.map +1 -1
- package/dist/components/editors/FilterBuilderPro/index.d.ts.map +1 -1
- package/dist/components/editors/FilterBuilderPro/test-utils.d.ts +5 -0
- package/dist/components/editors/FilterBuilderPro/test-utils.d.ts.map +1 -0
- package/dist/{cs-BWPozwIn.js → cs-CCuHEKh-.js} +3 -3
- package/dist/{cs-BWPozwIn.js.map → cs-CCuHEKh-.js.map} +1 -1
- package/dist/{cv-BFdsicoJ.js → cv-CTHnbmYd.js} +3 -3
- package/dist/{cv-BFdsicoJ.js.map → cv-CTHnbmYd.js.map} +1 -1
- package/dist/{cy-DR3oiB7p.js → cy-CfeClTM9.js} +3 -3
- package/dist/{cy-DR3oiB7p.js.map → cy-CfeClTM9.js.map} +1 -1
- package/dist/{da-Bs_TLRDx.js → da-DMpHyphi.js} +3 -3
- package/dist/{da-Bs_TLRDx.js.map → da-DMpHyphi.js.map} +1 -1
- package/dist/dates.utils-DbQ1olEB.js +169 -0
- package/dist/{dates.utils-Dx0wDT-t.js.map → dates.utils-DbQ1olEB.js.map} +1 -1
- package/dist/{de-NNk-ieBb.js → de-BdKLq6SK.js} +3 -3
- package/dist/{de-NNk-ieBb.js.map → de-BdKLq6SK.js.map} +1 -1
- package/dist/{definition-C54zW9In.js → definition-3QpYOtAr.js} +6 -6
- package/dist/{definition-C54zW9In.js.map → definition-3QpYOtAr.js.map} +1 -1
- package/dist/{definition-D5geQ9-W.js → definition-81RJMlxU.js} +6 -6
- package/dist/{definition-D5geQ9-W.js.map → definition-81RJMlxU.js.map} +1 -1
- package/dist/{definition-Cm7PQWqQ.js → definition-BAb2u4mc.js} +9 -9
- package/dist/{definition-Cm7PQWqQ.js.map → definition-BAb2u4mc.js.map} +1 -1
- package/dist/{definition-e9wTPHru.js → definition-BLXhy0w7.js} +3 -3
- package/dist/{definition-e9wTPHru.js.map → definition-BLXhy0w7.js.map} +1 -1
- package/dist/{definition-C1DQHgBQ.js → definition-BObbBhcm.js} +9 -9
- package/dist/{definition-C1DQHgBQ.js.map → definition-BObbBhcm.js.map} +1 -1
- package/dist/{definition-BH3qZ4TD.js → definition-BSCzplhq.js} +6 -6
- package/dist/{definition-BH3qZ4TD.js.map → definition-BSCzplhq.js.map} +1 -1
- package/dist/{definition-CVEFL-6_.js → definition-BT_TJ2xu.js} +10 -10
- package/dist/{definition-CVEFL-6_.js.map → definition-BT_TJ2xu.js.map} +1 -1
- package/dist/{definition-ChKlVRtM.js → definition-BUb4WQQi.js} +7 -7
- package/dist/{definition-ChKlVRtM.js.map → definition-BUb4WQQi.js.map} +1 -1
- package/dist/{definition-DqlnTS8s.js → definition-BUjb1Q6D.js} +5 -5
- package/dist/{definition-DqlnTS8s.js.map → definition-BUjb1Q6D.js.map} +1 -1
- package/dist/{definition-D2_q8sjv.js → definition-BVKJiEOy.js} +5 -5
- package/dist/{definition-D2_q8sjv.js.map → definition-BVKJiEOy.js.map} +1 -1
- package/dist/{definition-B-x1tk-e.js → definition-BWMkkQfu.js} +6 -6
- package/dist/{definition-B-x1tk-e.js.map → definition-BWMkkQfu.js.map} +1 -1
- package/dist/{definition-CsgW-B0i.js → definition-BhJTfgLy.js} +7 -7
- package/dist/{definition-CsgW-B0i.js.map → definition-BhJTfgLy.js.map} +1 -1
- package/dist/{definition-BkYMMXzW.js → definition-Bhq5zlSY.js} +10 -10
- package/dist/{definition-BkYMMXzW.js.map → definition-Bhq5zlSY.js.map} +1 -1
- package/dist/{definition-vlD6rIpy.js → definition-BhzssiIh.js} +7 -7
- package/dist/{definition-vlD6rIpy.js.map → definition-BhzssiIh.js.map} +1 -1
- package/dist/{definition-B1NqUAf5.js → definition-Bumjg1Nc.js} +9 -9
- package/dist/{definition-B1NqUAf5.js.map → definition-Bumjg1Nc.js.map} +1 -1
- package/dist/{definition-BDqI_0a1.js → definition-BwAHlBSA.js} +6 -6
- package/dist/{definition-BDqI_0a1.js.map → definition-BwAHlBSA.js.map} +1 -1
- package/dist/{definition-DB5rmkbu.js → definition-C7M49DO-.js} +6 -6
- package/dist/{definition-DB5rmkbu.js.map → definition-C7M49DO-.js.map} +1 -1
- package/dist/{definition-DaOinV1h.js → definition-C9J7qbst.js} +7 -7
- package/dist/{definition-DaOinV1h.js.map → definition-C9J7qbst.js.map} +1 -1
- package/dist/{definition-DhIrq7vL.js → definition-CB2yhrXd.js} +6 -6
- package/dist/{definition-DhIrq7vL.js.map → definition-CB2yhrXd.js.map} +1 -1
- package/dist/{definition-akR2s4L2.js → definition-CI1F6BYS.js} +7 -7
- package/dist/{definition-akR2s4L2.js.map → definition-CI1F6BYS.js.map} +1 -1
- package/dist/{definition-DWE6nkLY.js → definition-CKr3luD3.js} +10 -10
- package/dist/{definition-DWE6nkLY.js.map → definition-CKr3luD3.js.map} +1 -1
- package/dist/{definition-qdKFwg5F.js → definition-CUecLROw.js} +6 -6
- package/dist/{definition-qdKFwg5F.js.map → definition-CUecLROw.js.map} +1 -1
- package/dist/{definition-CKxyYAvz.js → definition-CWC28cKE.js} +3 -3
- package/dist/{definition-CKxyYAvz.js.map → definition-CWC28cKE.js.map} +1 -1
- package/dist/{definition-D6nZ4-iZ.js → definition-Cc3GuVLL.js} +6 -6
- package/dist/{definition-D6nZ4-iZ.js.map → definition-Cc3GuVLL.js.map} +1 -1
- package/dist/{definition-BM-FWMKT.js → definition-Cvmrf_Av.js} +10 -10
- package/dist/{definition-BM-FWMKT.js.map → definition-Cvmrf_Av.js.map} +1 -1
- package/dist/{definition-DP4a1pBF.js → definition-CzIq3snB.js} +9 -9
- package/dist/{definition-DP4a1pBF.js.map → definition-CzIq3snB.js.map} +1 -1
- package/dist/{definition-B8mXQ9MU.js → definition-D5M0-YDz.js} +10 -10
- package/dist/{definition-B8mXQ9MU.js.map → definition-D5M0-YDz.js.map} +1 -1
- package/dist/definition-DA1NiTYd.js +658 -0
- package/dist/definition-DA1NiTYd.js.map +1 -0
- package/dist/{definition-DsJ7KXSG.js → definition-DBm7UExP.js} +11 -11
- package/dist/{definition-DsJ7KXSG.js.map → definition-DBm7UExP.js.map} +1 -1
- package/dist/{definition-Q9FNorQj.js → definition-DCw41pB6.js} +7 -7
- package/dist/{definition-Q9FNorQj.js.map → definition-DCw41pB6.js.map} +1 -1
- package/dist/{definition-DQwCxWAq.js → definition-DGm0gnDo.js} +8 -8
- package/dist/{definition-DQwCxWAq.js.map → definition-DGm0gnDo.js.map} +1 -1
- package/dist/{definition-UZEr-HJJ.js → definition-DOgO1UO1.js} +6 -6
- package/dist/{definition-UZEr-HJJ.js.map → definition-DOgO1UO1.js.map} +1 -1
- package/dist/{definition-mYoL0jkD.js → definition-DYRmzQG8.js} +9 -9
- package/dist/{definition-mYoL0jkD.js.map → definition-DYRmzQG8.js.map} +1 -1
- package/dist/{definition-GS-0m3Xi.js → definition-QQGyselv.js} +6 -6
- package/dist/{definition-GS-0m3Xi.js.map → definition-QQGyselv.js.map} +1 -1
- package/dist/{definition-CfAViwzx.js → definition-ViiZJXzp.js} +6 -6
- package/dist/{definition-CfAViwzx.js.map → definition-ViiZJXzp.js.map} +1 -1
- package/dist/{definition-k-ot6tpW.js → definition-WpA0B1mq.js} +9 -9
- package/dist/{definition-k-ot6tpW.js.map → definition-WpA0B1mq.js.map} +1 -1
- package/dist/{definition-DLH5Wkbl.js → definition-n2w2opqD.js} +8 -8
- package/dist/{definition-DLH5Wkbl.js.map → definition-n2w2opqD.js.map} +1 -1
- package/dist/{definition-DFTy0dij.js → definition-v65ricVf.js} +4 -4
- package/dist/{definition-DFTy0dij.js.map → definition-v65ricVf.js.map} +1 -1
- package/dist/{dimension.utils-4qaXsySV.js → dimension.utils-CiM7fJ79.js} +4 -4
- package/dist/{dimension.utils-4qaXsySV.js.map → dimension.utils-CiM7fJ79.js.map} +1 -1
- package/dist/{dimensionsAndMeasures.utils-Df-k9Ai-.js → dimensionsAndMeasures.utils-6WmCMSx-.js} +2 -2
- package/dist/{dimensionsAndMeasures.utils-Df-k9Ai-.js.map → dimensionsAndMeasures.utils-6WmCMSx-.js.map} +1 -1
- package/dist/{dv-DoknU8mB.js → dv-DNA516Jh.js} +3 -3
- package/dist/{dv-DoknU8mB.js.map → dv-DNA516Jh.js.map} +1 -1
- package/dist/{el-tmqbz5MF.js → el-C2KlECVR.js} +3 -3
- package/dist/{el-tmqbz5MF.js.map → el-C2KlECVR.js.map} +1 -1
- package/dist/embeddable-components.json +56 -56
- package/dist/embeddable-theme-0137e.js +2 -0
- package/dist/{en-IKe4NqJo.js → en-Cw-Z2V2c.js} +2 -2
- package/dist/{en-IKe4NqJo.js.map → en-Cw-Z2V2c.js.map} +1 -1
- package/dist/{eo-B9XFykyK.js → eo-DYPeM7bf.js} +3 -3
- package/dist/{eo-B9XFykyK.js.map → eo-DYPeM7bf.js.map} +1 -1
- package/dist/{es-BWrQ5VXY.js → es-DXOWX99Z.js} +3 -3
- package/dist/{es-BWrQ5VXY.js.map → es-DXOWX99Z.js.map} +1 -1
- package/dist/{et-Dn78_GQz.js → et-Lhoue_ag.js} +3 -3
- package/dist/{et-Dn78_GQz.js.map → et-Lhoue_ag.js.map} +1 -1
- package/dist/{eu-DsgPuhdB.js → eu-BluElTfm.js} +3 -3
- package/dist/{eu-DsgPuhdB.js.map → eu-BluElTfm.js.map} +1 -1
- package/dist/{fa-CWdOqAh8.js → fa-B8vOI_I4.js} +3 -3
- package/dist/{fa-CWdOqAh8.js.map → fa-B8vOI_I4.js.map} +1 -1
- package/dist/{fi-DKHDCy_a.js → fi-DTcpLlIc.js} +3 -3
- package/dist/{fi-DKHDCy_a.js.map → fi-DTcpLlIc.js.map} +1 -1
- package/dist/{fo-KtI-Se4I.js → fo-I8kDvjJM.js} +3 -3
- package/dist/{fo-KtI-Se4I.js.map → fo-I8kDvjJM.js.map} +1 -1
- package/dist/{formatter.utils-D8VAiDYp.js → formatter.utils-BaA4WFcv.js} +3 -3
- package/dist/{formatter.utils-D8VAiDYp.js.map → formatter.utils-BaA4WFcv.js.map} +1 -1
- package/dist/{fr-bovHiPy3.js → fr-igxANXwb.js} +3 -3
- package/dist/{fr-bovHiPy3.js.map → fr-igxANXwb.js.map} +1 -1
- package/dist/{fy-DFlrn2YX.js → fy-DMjsAroT.js} +3 -3
- package/dist/{fy-DFlrn2YX.js.map → fy-DMjsAroT.js.map} +1 -1
- package/dist/{ga-DQ0z7CZm.js → ga-H-kRF7eV.js} +3 -3
- package/dist/{ga-DQ0z7CZm.js.map → ga-H-kRF7eV.js.map} +1 -1
- package/dist/{gd-C0HIm6vz.js → gd-UR9dHZ8J.js} +3 -3
- package/dist/{gd-C0HIm6vz.js.map → gd-UR9dHZ8J.js.map} +1 -1
- package/dist/{gl-BiHkK93h.js → gl-CEQMD0Hq.js} +3 -3
- package/dist/{gl-BiHkK93h.js.map → gl-CEQMD0Hq.js.map} +1 -1
- package/dist/{granularity.utils-D8sR_MWc.js → granularity.utils-BXLMSveL.js} +3 -3
- package/dist/{granularity.utils-D8sR_MWc.js.map → granularity.utils-BXLMSveL.js.map} +1 -1
- package/dist/{gu-DMsZJR__.js → gu-BEANpFVl.js} +3 -3
- package/dist/{gu-DMsZJR__.js.map → gu-BEANpFVl.js.map} +1 -1
- package/dist/{he-CUnnspY0.js → he-BNv-zFcL.js} +3 -3
- package/dist/{he-CUnnspY0.js.map → he-BNv-zFcL.js.map} +1 -1
- package/dist/{hi-CyE6NXAl.js → hi-Dsib8YvB.js} +3 -3
- package/dist/{hi-CyE6NXAl.js.map → hi-Dsib8YvB.js.map} +1 -1
- package/dist/{hr-BeTRXlh9.js → hr-Uj1L1_TP.js} +3 -3
- package/dist/{hr-BeTRXlh9.js.map → hr-Uj1L1_TP.js.map} +1 -1
- package/dist/{ht-B2XtTptL.js → ht-lcxGJzbA.js} +3 -3
- package/dist/{ht-B2XtTptL.js.map → ht-lcxGJzbA.js.map} +1 -1
- package/dist/{hu-DHDnW-r6.js → hu-C4tvSFls.js} +3 -3
- package/dist/{hu-DHDnW-r6.js.map → hu-C4tvSFls.js.map} +1 -1
- package/dist/{id-DZsRqym2.js → id-BcLdSHbD.js} +3 -3
- package/dist/{id-DZsRqym2.js.map → id-BcLdSHbD.js.map} +1 -1
- package/dist/{index-R1KUfGZo.js → index-BE2wAzsQ.js} +2 -2
- package/dist/{index-R1KUfGZo.js.map → index-BE2wAzsQ.js.map} +1 -1
- package/dist/{index-3F2_3p7g.js → index-BpJ2xsEV.js} +16 -14
- package/dist/{index-3F2_3p7g.js.map → index-BpJ2xsEV.js.map} +1 -1
- package/dist/{index-DG8wyZMc.js → index-DiM1H-Lo.js} +4 -4
- package/dist/{index-DG8wyZMc.js.map → index-DiM1H-Lo.js.map} +1 -1
- package/dist/index.js +56 -56
- package/dist/{is-B6LfJ82E.js → is-C6GGSgTB.js} +3 -3
- package/dist/{is-B6LfJ82E.js.map → is-C6GGSgTB.js.map} +1 -1
- package/dist/{isoWeek-DBgSa6cj.js → isoWeek-CAZ_hyHu.js} +2 -2
- package/dist/{isoWeek-DBgSa6cj.js.map → isoWeek-CAZ_hyHu.js.map} +1 -1
- package/dist/{it-B95Rj70b.js → it-DD0KA_tw.js} +3 -3
- package/dist/{it-B95Rj70b.js.map → it-DD0KA_tw.js.map} +1 -1
- package/dist/{ja-Cs7r1QpD.js → ja-DpymuJ9n.js} +3 -3
- package/dist/{ja-Cs7r1QpD.js.map → ja-DpymuJ9n.js.map} +1 -1
- package/dist/{jv-B8LB71Jj.js → jv-CCSiYT9h.js} +3 -3
- package/dist/{jv-B8LB71Jj.js.map → jv-CCSiYT9h.js.map} +1 -1
- package/dist/{ka-BpJBWKOn.js → ka-kBDI6Xr2.js} +3 -3
- package/dist/{ka-BpJBWKOn.js.map → ka-kBDI6Xr2.js.map} +1 -1
- package/dist/{kk-Mx_BfX2z.js → kk-CAv3bDqb.js} +3 -3
- package/dist/{kk-Mx_BfX2z.js.map → kk-CAv3bDqb.js.map} +1 -1
- package/dist/{km-DMXcNasr.js → km-BbBg2v4D.js} +3 -3
- package/dist/{km-DMXcNasr.js.map → km-BbBg2v4D.js.map} +1 -1
- package/dist/{kn-OQ8i8nGR.js → kn-Dh-cLUE5.js} +3 -3
- package/dist/{kn-OQ8i8nGR.js.map → kn-Dh-cLUE5.js.map} +1 -1
- package/dist/{ko-CYO_uiBT.js → ko-CCmrliYB.js} +3 -3
- package/dist/{ko-CYO_uiBT.js.map → ko-CCmrliYB.js.map} +1 -1
- package/dist/{ku-7TTsj_yF.js → ku-rDoLfDXE.js} +3 -3
- package/dist/{ku-7TTsj_yF.js.map → ku-rDoLfDXE.js.map} +1 -1
- package/dist/{ky-sJiTOWD9.js → ky-pG-6yi3K.js} +3 -3
- package/dist/{ky-sJiTOWD9.js.map → ky-pG-6yi3K.js.map} +1 -1
- package/dist/{lb-Do9C0rtE.js → lb-CyfgKdlp.js} +3 -3
- package/dist/{lb-Do9C0rtE.js.map → lb-CyfgKdlp.js.map} +1 -1
- package/dist/{lo-BvcjGzfG.js → lo-BiEnv84t.js} +3 -3
- package/dist/{lo-BvcjGzfG.js.map → lo-BiEnv84t.js.map} +1 -1
- package/dist/{lt-CykP1POg.js → lt-wGPijyJh.js} +3 -3
- package/dist/{lt-CykP1POg.js.map → lt-wGPijyJh.js.map} +1 -1
- package/dist/{lv-Dard4JsA.js → lv-B1yclL4z.js} +3 -3
- package/dist/{lv-Dard4JsA.js.map → lv-B1yclL4z.js.map} +1 -1
- package/dist/{me-UZI4m0_-.js → me-BYUbxLXl.js} +3 -3
- package/dist/{me-UZI4m0_-.js.map → me-BYUbxLXl.js.map} +1 -1
- package/dist/meta/AreaChartPro.meta.json +11 -1
- package/dist/meta/BarChartDefaultHorizontalPro.meta.json +11 -1
- package/dist/meta/BarChartDefaultPro.meta.json +11 -1
- package/dist/meta/BarChartGroupedHorizontalPro.meta.json +11 -1
- package/dist/meta/BarChartGroupedPro.meta.json +11 -1
- package/dist/meta/BarChartStackedHorizontalPro.meta.json +11 -1
- package/dist/meta/BarChartStackedPro.meta.json +11 -1
- package/dist/meta/BarLineChartPro.meta.json +11 -1
- package/dist/meta/HeatMapPro.meta.json +20 -0
- package/dist/meta/LineChartComparisonDefaultPro.meta.json +11 -1
- package/dist/meta/LineChartComparisonWithKpiTabsPro.meta.json +11 -1
- package/dist/meta/LineChartDefaultPro.meta.json +11 -1
- package/dist/meta/LineChartGroupedPro.meta.json +11 -1
- package/dist/meta/LineChartWithKpiTabsPro.meta.json +11 -1
- package/dist/meta/PivotTablePro.meta.json +20 -0
- package/dist/{mi-9Ozqz4gT.js → mi-UoFBWH7A.js} +3 -3
- package/dist/{mi-9Ozqz4gT.js.map → mi-UoFBWH7A.js.map} +1 -1
- package/dist/{mk-rbyIihM1.js → mk-D1gJTCJC.js} +3 -3
- package/dist/{mk-rbyIihM1.js.map → mk-D1gJTCJC.js.map} +1 -1
- package/dist/{ml-D0vrQhvR.js → ml-pFtUfRtD.js} +3 -3
- package/dist/{ml-D0vrQhvR.js.map → ml-pFtUfRtD.js.map} +1 -1
- package/dist/{mn-TFPvBLt0.js → mn-de674cjH.js} +3 -3
- package/dist/{mn-TFPvBLt0.js.map → mn-de674cjH.js.map} +1 -1
- package/dist/{mr-BubS0SYt.js → mr-CxfA7fC5.js} +3 -3
- package/dist/{mr-BubS0SYt.js.map → mr-CxfA7fC5.js.map} +1 -1
- package/dist/{ms-CYCLg-v3.js → ms-ByuuCm3G.js} +3 -3
- package/dist/{ms-CYCLg-v3.js.map → ms-ByuuCm3G.js.map} +1 -1
- package/dist/{mt-BHuJrLP_.js → mt-CKDCXGfn.js} +3 -3
- package/dist/{mt-BHuJrLP_.js.map → mt-CKDCXGfn.js.map} +1 -1
- package/dist/{my-CS1t9rmt.js → my-BZPq82Xw.js} +3 -3
- package/dist/{my-CS1t9rmt.js.map → my-BZPq82Xw.js.map} +1 -1
- package/dist/{nb-CtThl4t-.js → nb-DtBVjiLg.js} +3 -3
- package/dist/{nb-CtThl4t-.js.map → nb-DtBVjiLg.js.map} +1 -1
- package/dist/{ne-xng7_XGc.js → ne-B2lLkHnE.js} +3 -3
- package/dist/{ne-xng7_XGc.js.map → ne-B2lLkHnE.js.map} +1 -1
- package/dist/{nl-DWhHpNM-.js → nl-UVwmO-83.js} +3 -3
- package/dist/{nl-DWhHpNM-.js.map → nl-UVwmO-83.js.map} +1 -1
- package/dist/{nn-B47xdwfi.js → nn-CujFuqIj.js} +3 -3
- package/dist/{nn-B47xdwfi.js.map → nn-CujFuqIj.js.map} +1 -1
- package/dist/{pies.utils-DzYnG_XU.js → pies.utils-vf7_pmdH.js} +6 -6
- package/dist/{pies.utils-DzYnG_XU.js.map → pies.utils-vf7_pmdH.js.map} +1 -1
- package/dist/{pl-DA2lYPca.js → pl-Dx__F_UR.js} +3 -3
- package/dist/{pl-DA2lYPca.js.map → pl-Dx__F_UR.js.map} +1 -1
- package/dist/{preview.data.constants-Cg6C5D3p.js → preview.data.constants-DyU7ur6g.js} +2 -2
- package/dist/{preview.data.constants-Cg6C5D3p.js.map → preview.data.constants-DyU7ur6g.js.map} +1 -1
- package/dist/{pt-YaH3Ezww.js → pt-DfJM7qKA.js} +3 -3
- package/dist/{pt-YaH3Ezww.js.map → pt-DfJM7qKA.js.map} +1 -1
- package/dist/{quarterOfYear-yJJhOIKZ.js → quarterOfYear-CW1CE0Qw.js} +2 -2
- package/dist/{quarterOfYear-yJJhOIKZ.js.map → quarterOfYear-CW1CE0Qw.js.map} +1 -1
- package/dist/remarkable-pro.css +1 -1
- package/dist/{ro-DXt7gogJ.js → ro-0C9adnfM.js} +3 -3
- package/dist/{ro-DXt7gogJ.js.map → ro-0C9adnfM.js.map} +1 -1
- package/dist/{ru-BE6qaU6J.js → ru-B3-tVPSo.js} +3 -3
- package/dist/{ru-BE6qaU6J.js.map → ru-B3-tVPSo.js.map} +1 -1
- package/dist/{rw-DF2Ov4Os.js → rw-riaNILA3.js} +3 -3
- package/dist/{rw-DF2Ov4Os.js.map → rw-riaNILA3.js.map} +1 -1
- package/dist/{sd-f2wSKKSt.js → sd-CWyHO6KM.js} +3 -3
- package/dist/{sd-f2wSKKSt.js.map → sd-CWyHO6KM.js.map} +1 -1
- package/dist/{se-byoIERrp.js → se-D0JzOUIW.js} +3 -3
- package/dist/{se-byoIERrp.js.map → se-D0JzOUIW.js.map} +1 -1
- package/dist/{si-CW0ztNNv.js → si-CAdDB6xE.js} +3 -3
- package/dist/{si-CW0ztNNv.js.map → si-CAdDB6xE.js.map} +1 -1
- package/dist/{sk-CsmO8u5i.js → sk-Mn9bmbPp.js} +3 -3
- package/dist/{sk-CsmO8u5i.js.map → sk-Mn9bmbPp.js.map} +1 -1
- package/dist/{sl-AqbqNwr7.js → sl-Bnm_YWcw.js} +3 -3
- package/dist/{sl-AqbqNwr7.js.map → sl-Bnm_YWcw.js.map} +1 -1
- package/dist/{sq-BJZhl7BY.js → sq-DOSW3HB5.js} +3 -3
- package/dist/{sq-BJZhl7BY.js.map → sq-DOSW3HB5.js.map} +1 -1
- package/dist/{sr-CxoQE2fc.js → sr-Bxxcx91i.js} +3 -3
- package/dist/{sr-CxoQE2fc.js.map → sr-Bxxcx91i.js.map} +1 -1
- package/dist/{ss-B3A5DAlF.js → ss-BslPVpyj.js} +3 -3
- package/dist/{ss-B3A5DAlF.js.map → ss-BslPVpyj.js.map} +1 -1
- package/dist/{sv-DGd-X1cE.js → sv-BxUSiFok.js} +3 -3
- package/dist/{sv-DGd-X1cE.js.map → sv-BxUSiFok.js.map} +1 -1
- package/dist/{sw-KlpZgSsw.js → sw-DAcUlhTr.js} +3 -3
- package/dist/{sw-KlpZgSsw.js.map → sw-DAcUlhTr.js.map} +1 -1
- package/dist/{ta-CHQP1cN2.js → ta-Df7sBCCe.js} +3 -3
- package/dist/{ta-CHQP1cN2.js.map → ta-Df7sBCCe.js.map} +1 -1
- package/dist/{tables.utils-YvswHv-D.js → tables.utils-Be6yca9d.js} +4 -4
- package/dist/{tables.utils-YvswHv-D.js.map → tables.utils-Be6yca9d.js.map} +1 -1
- package/dist/{te-ClMMzkFH.js → te-CIAYOGdw.js} +3 -3
- package/dist/{te-ClMMzkFH.js.map → te-CIAYOGdw.js.map} +1 -1
- package/dist/{tet-KjhxxOL2.js → tet-_8qmD3If.js} +3 -3
- package/dist/{tet-KjhxxOL2.js.map → tet-_8qmD3If.js.map} +1 -1
- package/dist/{tg-DItF4qBd.js → tg-qmfLuTxH.js} +3 -3
- package/dist/{tg-DItF4qBd.js.map → tg-qmfLuTxH.js.map} +1 -1
- package/dist/{th-CflzOv1b.js → th-Siquh77z.js} +3 -3
- package/dist/{th-CflzOv1b.js.map → th-Siquh77z.js.map} +1 -1
- package/dist/theme/i18n/translations/de.d.ts.map +1 -1
- package/dist/theme/i18n/translations/en.d.ts.map +1 -1
- package/dist/{theme.constants-BiBxPvNY.js → theme.constants-gny2xWxf.js} +9 -7
- package/dist/theme.constants-gny2xWxf.js.map +1 -0
- package/dist/{tk-CQfvlsr0.js → tk-ClVOcqnI.js} +3 -3
- package/dist/{tk-CQfvlsr0.js.map → tk-ClVOcqnI.js.map} +1 -1
- package/dist/{tlh-Dxb52tkw.js → tlh-1kCHVBQ_.js} +3 -3
- package/dist/{tlh-Dxb52tkw.js.map → tlh-1kCHVBQ_.js.map} +1 -1
- package/dist/{tr-Dns4sPuK.js → tr-CT0ft2sB.js} +3 -3
- package/dist/{tr-Dns4sPuK.js.map → tr-CT0ft2sB.js.map} +1 -1
- package/dist/{tzl-CQq8LRnO.js → tzl-ChoetePP.js} +3 -3
- package/dist/{tzl-CQq8LRnO.js.map → tzl-ChoetePP.js.map} +1 -1
- package/dist/{tzm-Dfdv8nzV.js → tzm-BiGqHava.js} +3 -3
- package/dist/{tzm-Dfdv8nzV.js.map → tzm-BiGqHava.js.map} +1 -1
- package/dist/{uk-tF3fzNkD.js → uk-BjBwyge_.js} +3 -3
- package/dist/{uk-tF3fzNkD.js.map → uk-BjBwyge_.js.map} +1 -1
- package/dist/{ur-fNYfVTDR.js → ur-B7I4LgX2.js} +3 -3
- package/dist/{ur-fNYfVTDR.js.map → ur-B7I4LgX2.js.map} +1 -1
- package/dist/{utc-Bjirj3e9.js → utc-DrY1tEQ4.js} +2 -2
- package/dist/{utc-Bjirj3e9.js.map → utc-DrY1tEQ4.js.map} +1 -1
- package/dist/{uz-COYre9xq.js → uz-C1802yPa.js} +3 -3
- package/dist/{uz-COYre9xq.js.map → uz-C1802yPa.js.map} +1 -1
- package/dist/{vi-C7iSHLfj.js → vi-BO1mNBv9.js} +3 -3
- package/dist/{vi-C7iSHLfj.js.map → vi-BO1mNBv9.js.map} +1 -1
- package/dist/{x-pseudo-BVX7J1Gu.js → x-pseudo-C_rDVa7l.js} +3 -3
- package/dist/{x-pseudo-BVX7J1Gu.js.map → x-pseudo-C_rDVa7l.js.map} +1 -1
- package/dist/{yo-BqDeT7jS.js → yo-Cz0sqDpf.js} +3 -3
- package/dist/{yo-BqDeT7jS.js.map → yo-Cz0sqDpf.js.map} +1 -1
- package/dist/{zh-cn-fDmZ4Cqp.js → zh-cn-BT6dd1Zf.js} +3 -3
- package/dist/{zh-cn-fDmZ4Cqp.js.map → zh-cn-BT6dd1Zf.js.map} +1 -1
- package/dist/{zh-hk-CzYqQEws.js → zh-hk-Dgp4x-7n.js} +3 -3
- package/dist/{zh-hk-CzYqQEws.js.map → zh-hk-Dgp4x-7n.js.map} +1 -1
- package/dist/{zh-tw-C22337Z2.js → zh-tw-B06vPflo.js} +3 -3
- package/dist/{zh-tw-C22337Z2.js.map → zh-tw-B06vPflo.js.map} +1 -1
- package/package.json +1 -1
- package/dist/charts.fillGaps.hooks-CWY0cZuI.js.map +0 -1
- package/dist/component.inputs.constants-C1gOvjv8.js.map +0 -1
- package/dist/dates.utils-Dx0wDT-t.js +0 -169
- package/dist/definition-3AasZHbx.js +0 -623
- package/dist/definition-3AasZHbx.js.map +0 -1
- package/dist/theme.constants-BiBxPvNY.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"definition-DQwCxWAq.js","sources":["../src/components/charts/tables/HeatMapPro/index.tsx","../src/components/charts/tables/HeatMapPro/definition.ts"],"sourcesContent":["import { useTheme } from '@embeddable.com/react';\nimport { Theme } from '../../../../theme/theme.types';\nimport { i18nSetup } from '../../../../theme/i18n/i18n';\nimport {\n ChartCard,\n ChartCardHeaderProps,\n asChartCardHeaderProps,\n} from '../../shared/ChartCard/ChartCard';\nimport { DataResponse, Dimension, Measure } from '@embeddable.com/core';\nimport {\n getStyle,\n HeatMap,\n HeatMapPropsDimension,\n HeatMapPropsMeasure,\n} from '@embeddable.com/remarkable-ui';\nimport { getThemeFormatter } from '../../../../theme/formatter/formatter.utils';\nimport { useFillGaps } from '../../charts.fillGaps.hooks';\nimport { useGetTableSortedResults } from '../tables.hooks';\nimport { useCallback } from 'react';\nimport { getTimeRangeFromDimensionValue } from '../../../utils/dimension.utils';\nimport { HeatMapCellClickArg, HeatMapProOptionsClickArg } from './HeatMapPro.types';\n\nexport type HeatMapProProps = {\n columnDimension: Dimension;\n columnWidth?: number;\n\n displayNullAs?: string;\n firstColumnWidth?: number;\n maxColor?: string;\n maxThreshold?: string;\n measure: Measure;\n midColor?: string;\n minColor?: string;\n minThreshold?: string;\n results: DataResponse;\n rowDimension: Dimension;\n showValues?: boolean;\n onCellClicked?: (args: HeatMapProOptionsClickArg) => void;\n} & ChartCardHeaderProps;\n\nexport const getHeatMeasure = (\n props: { measure: Measure },\n theme: Theme,\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n): HeatMapPropsMeasure<any> => {\n const themeFormatter = getThemeFormatter(theme);\n\n return {\n key: props.measure.name,\n label: themeFormatter.dimensionOrMeasureTitle(props.measure),\n format: (value) => {\n return themeFormatter.data(props.measure, value);\n },\n };\n};\n\nexport const getHeatDimension = (\n props: { dimension: Dimension },\n theme: Theme,\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n): HeatMapPropsDimension<any> => {\n const themeFormatter = getThemeFormatter(theme);\n\n return {\n key: props.dimension.name,\n label: themeFormatter.dimensionOrMeasureTitle(props.dimension),\n format: (value: string) => themeFormatter.data(props.dimension, value),\n };\n};\n\nconst HeatMapPro = (props: HeatMapProProps) => {\n const theme = useTheme() as Theme;\n i18nSetup(theme);\n\n const {\n measure,\n rowDimension,\n columnDimension,\n maxColor,\n midColor,\n minColor,\n displayNullAs,\n columnWidth,\n firstColumnWidth,\n showValues,\n minThreshold,\n maxThreshold,\n onCellClicked,\n } = props;\n\n const handleCellClick = useCallback(\n ({ rowDimensionValue, columnDimensionValue }: HeatMapCellClickArg) => {\n if (!onCellClicked) return;\n onCellClicked({\n rowDimensionValue,\n rowDimensionTimeRange: getTimeRangeFromDimensionValue({\n value: rowDimensionValue,\n dimension: rowDimension,\n }),\n columnDimensionValue,\n columnDimensionTimeRange: getTimeRangeFromDimensionValue({\n value: columnDimensionValue,\n dimension: columnDimension,\n }),\n });\n },\n [onCellClicked, rowDimension, columnDimension],\n );\n\n const columnOrder = Array.from(\n new Set((props.results.data ?? []).filter(Boolean).map((d) => d[columnDimension.name])),\n );\n\n const rowOrder = Array.from(\n new Set((props.results.data ?? []).filter(Boolean).map((d) => d[rowDimension.name])),\n );\n\n // Fill gaps for the column dimension\n const resultsColumnDimensionFillGaps = useFillGaps({\n results: props.results,\n dimension: columnDimension,\n });\n\n // Fill gaps for the row dimension\n const resultsRowColumnDimensionFillGaps = useFillGaps({\n results: resultsColumnDimensionFillGaps,\n dimension: rowDimension,\n });\n\n const results = useGetTableSortedResults({\n results: resultsRowColumnDimensionFillGaps,\n columnOrder,\n rowOrder,\n columnDimension,\n rowDimension,\n measures: [measure],\n });\n\n const pivotMeasures = getHeatMeasure({ measure }, theme);\n const pivotRowDimension = getHeatDimension({ dimension: rowDimension }, theme);\n const pivotColumnDimension = getHeatDimension({ dimension: columnDimension }, theme);\n\n return (\n <ChartCard\n data={props.results}\n dimensionsAndMeasures={[rowDimension, columnDimension, measure]}\n errorMessage={props.results?.error}\n {...asChartCardHeaderProps(props)}\n >\n <HeatMap\n data={results}\n measure={pivotMeasures}\n rowDimension={pivotRowDimension}\n columnDimension={pivotColumnDimension}\n maxColor={maxColor}\n midColor={midColor ?? getStyle('--em-tablechart-heatmap-color', '#FF5400')}\n minColor={minColor}\n showValues={showValues}\n minThreshold={minThreshold}\n maxThreshold={maxThreshold}\n columnWidth={columnWidth}\n firstColumnWidth={firstColumnWidth}\n displayNullAs={displayNullAs}\n onCellClick={handleCellClick}\n />\n </ChartCard>\n );\n};\n\nexport default HeatMapPro;\n","import { DataResponse, LoadDataRequest, Value, loadData } from '@embeddable.com/core';\nimport { definePreview, EmbeddedComponentMeta, Inputs } from '@embeddable.com/react';\nimport Component from './index';\nimport { inputs } from '../../../component.inputs.constants';\nimport { previewData } from '../../../preview.data.constants';\nimport { getClientContextTimezone } from '../../../../theme/utils/clientContext.utils';\nimport { ThemeClientContext } from '../../../../theme/theme.types';\nimport { HeatMapProOptionsClickArg } from './HeatMapPro.types';\n\nconst meta = {\n name: 'HeatMapPro',\n label: 'Heat Map',\n description:\n 'Heat map of one measure over two dimensions (rows × columns). Use to spot density or correlation patterns.',\n category: 'Table Charts',\n inputs: [\n inputs.dataset,\n inputs.measure,\n {\n ...inputs.dimensionWithDateBounds,\n label: 'Row dimension',\n name: 'rowDimension',\n },\n {\n ...inputs.dimensionWithDateBounds,\n label: 'Column dimension',\n name: 'columnDimension',\n },\n inputs.title,\n inputs.description,\n inputs.tooltip,\n inputs.displayNullAs,\n {\n ...inputs.color,\n name: 'midColor',\n label: 'Mid-point color (optional)',\n },\n {\n ...inputs.color,\n name: 'maxColor',\n label: 'Max-point color (optional)',\n },\n {\n ...inputs.color,\n name: 'minColor',\n label: 'Min-point color (optional)',\n },\n {\n ...inputs.string,\n name: 'minThreshold',\n label: 'Max-point range lower limit',\n description: 'Enter a value as either a number (e.g. 20) or a percentage (e.g. 20%)',\n category: 'Component Settings',\n },\n {\n ...inputs.string,\n name: 'maxThreshold',\n label: 'Min-point range upper limit',\n description: 'Enter a value as either a number (e.g. 20) or a percentage (e.g. 20%)',\n category: 'Component Settings',\n },\n {\n ...inputs.boolean,\n name: 'showValues',\n label: 'Show values',\n defaultValue: true,\n category: 'Component Settings',\n },\n {\n ...inputs.number,\n name: 'firstColumnWidth',\n label: 'First column width',\n description: 'Set the width in px (e.g. 200)',\n category: 'Component Settings',\n },\n {\n ...inputs.number,\n name: 'columnWidth',\n label: 'Column width',\n description: 'Set the width in px (e.g. 200)',\n category: 'Component Settings',\n },\n inputs.maxResults,\n inputs.menuOptions,\n ],\n events: [\n {\n name: 'onCellClicked',\n label: 'A cell is clicked',\n properties: [\n {\n name: 'rowDimensionValue',\n label: 'Clicked row dimension value',\n type: 'string',\n },\n {\n name: 'rowDimensionTimeRange',\n label: 'Clicked row dimension time range',\n type: 'timeRange',\n },\n {\n name: 'columnDimensionValue',\n label: 'Clicked column dimension value',\n type: 'string',\n },\n {\n name: 'columnDimensionTimeRange',\n label: 'Clicked column dimension time range',\n type: 'timeRange',\n },\n ],\n },\n ],\n} as const satisfies EmbeddedComponentMeta;\n\nconst previewConfig = {\n rowDimension: previewData.dimension,\n columnDimension: previewData.dimensionGroup,\n measure: previewData.measure,\n results: previewData.results1Measure2Dimensions,\n hideMenu: true,\n};\n\nconst preview = definePreview(Component, previewConfig);\n\nconst loadDataResultsArgs = (\n inputs: Inputs<typeof meta>,\n clientContext?: ThemeClientContext,\n): LoadDataRequest => ({\n from: inputs.dataset,\n select: [inputs.rowDimension, inputs.columnDimension, inputs.measure],\n limit: inputs.maxResults,\n countRows: true,\n timezone: getClientContextTimezone(clientContext?.timezone),\n});\n\nconst loadDataResults = (\n inputs: Inputs<typeof meta>,\n clientContext?: ThemeClientContext,\n): DataResponse => loadData(loadDataResultsArgs(inputs, clientContext));\n\nconst props = (\n inputs: Inputs<typeof meta>,\n _state: unknown,\n clientContext?: ThemeClientContext,\n) => ({\n ...inputs,\n results: loadDataResults(inputs, clientContext),\n});\n\nconst events = {\n onCellClicked: (value: HeatMapProOptionsClickArg) => ({\n rowDimensionValue: value.rowDimensionValue ?? Value.noFilter(),\n rowDimensionTimeRange: value.rowDimensionTimeRange ?? Value.noFilter(),\n columnDimensionValue: value.columnDimensionValue ?? Value.noFilter(),\n columnDimensionTimeRange: value.columnDimensionTimeRange ?? Value.noFilter(),\n }),\n};\n\nexport const heatMapPro = {\n Component,\n meta,\n preview,\n previewConfig,\n config: {\n props,\n events,\n },\n results: {\n loadDataArgs: loadDataResultsArgs,\n loadData: loadDataResults,\n },\n} as const;\n"],"names":["getHeatMeasure","props","theme","themeFormatter","getThemeFormatter","value","getHeatDimension","HeatMapPro","useTheme","i18nSetup","measure","rowDimension","columnDimension","maxColor","midColor","minColor","displayNullAs","columnWidth","firstColumnWidth","showValues","minThreshold","maxThreshold","onCellClicked","handleCellClick","useCallback","rowDimensionValue","columnDimensionValue","getTimeRangeFromDimensionValue","columnOrder","d","rowOrder","resultsColumnDimensionFillGaps","useFillGaps","resultsRowColumnDimensionFillGaps","results","useGetTableSortedResults","pivotMeasures","pivotRowDimension","pivotColumnDimension","jsx","ChartCard","_a","asChartCardHeaderProps","HeatMap","getStyle","meta","inputs","previewConfig","previewData","preview","definePreview","Component","loadDataResultsArgs","clientContext","getClientContextTimezone","loadDataResults","loadData","_state","events","Value","heatMapPro"],"mappings":";;;;;;;;;;;;AAwCO,MAAMA,IAAiB,CAC5BC,GACAC,MAE6B;AAC7B,QAAMC,IAAiBC,EAAkBF,CAAK;AAE9C,SAAO;AAAA,IACL,KAAKD,EAAM,QAAQ;AAAA,IACnB,OAAOE,EAAe,wBAAwBF,EAAM,OAAO;AAAA,IAC3D,QAAQ,CAACI,MACAF,EAAe,KAAKF,EAAM,SAASI,CAAK;AAAA,EACjD;AAEJ,GAEaC,IAAmB,CAC9BL,GACAC,MAE+B;AAC/B,QAAMC,IAAiBC,EAAkBF,CAAK;AAE9C,SAAO;AAAA,IACL,KAAKD,EAAM,UAAU;AAAA,IACrB,OAAOE,EAAe,wBAAwBF,EAAM,SAAS;AAAA,IAC7D,QAAQ,CAACI,MAAkBF,EAAe,KAAKF,EAAM,WAAWI,CAAK;AAAA,EAAA;AAEzE,GAEME,IAAa,CAACN,MAA2B;;AAC7C,QAAMC,IAAQM,EAAA;AACd,EAAAC,EAAUP,CAAK;AAEf,QAAM;AAAA,IACJ,SAAAQ;AAAA,IACA,cAAAC;AAAA,IACA,iBAAAC;AAAA,IACA,UAAAC;AAAA,IACA,UAAAC;AAAA,IACA,UAAAC;AAAA,IACA,eAAAC;AAAA,IACA,aAAAC;AAAA,IACA,kBAAAC;AAAA,IACA,YAAAC;AAAA,IACA,cAAAC;AAAA,IACA,cAAAC;AAAA,IACA,eAAAC;AAAA,EAAA,IACErB,GAEEsB,IAAkBC;AAAA,IACtB,CAAC,EAAE,mBAAAC,GAAmB,sBAAAC,QAAgD;AACpE,MAAKJ,KACLA,EAAc;AAAA,QACZ,mBAAAG;AAAA,QACA,uBAAuBE,EAA+B;AAAA,UACpD,OAAOF;AAAA,UACP,WAAWd;AAAA,QAAA,CACZ;AAAA,QACD,sBAAAe;AAAA,QACA,0BAA0BC,EAA+B;AAAA,UACvD,OAAOD;AAAA,UACP,WAAWd;AAAA,QAAA,CACZ;AAAA,MAAA,CACF;AAAA,IACH;AAAA,IACA,CAACU,GAAeX,GAAcC,CAAe;AAAA,EAAA,GAGzCgB,IAAc,MAAM;AAAA,IACxB,IAAI,KAAK3B,EAAM,QAAQ,QAAQ,CAAA,GAAI,OAAO,OAAO,EAAE,IAAI,CAAC4B,MAAMA,EAAEjB,EAAgB,IAAI,CAAC,CAAC;AAAA,EAAA,GAGlFkB,IAAW,MAAM;AAAA,IACrB,IAAI,KAAK7B,EAAM,QAAQ,QAAQ,CAAA,GAAI,OAAO,OAAO,EAAE,IAAI,CAAC4B,MAAMA,EAAElB,EAAa,IAAI,CAAC,CAAC;AAAA,EAAA,GAI/EoB,IAAiCC,EAAY;AAAA,IACjD,SAAS/B,EAAM;AAAA,IACf,WAAWW;AAAA,EAAA,CACZ,GAGKqB,IAAoCD,EAAY;AAAA,IACpD,SAASD;AAAA,IACT,WAAWpB;AAAA,EAAA,CACZ,GAEKuB,IAAUC,EAAyB;AAAA,IACvC,SAASF;AAAA,IACT,aAAAL;AAAA,IACA,UAAAE;AAAA,IACA,iBAAAlB;AAAA,IACA,cAAAD;AAAA,IACA,UAAU,CAACD,CAAO;AAAA,EAAA,CACnB,GAEK0B,IAAgBpC,EAAe,EAAE,SAAAU,EAAA,GAAWR,CAAK,GACjDmC,IAAoB/B,EAAiB,EAAE,WAAWK,EAAA,GAAgBT,CAAK,GACvEoC,IAAuBhC,EAAiB,EAAE,WAAWM,EAAA,GAAmBV,CAAK;AAEnF,SACEqC,gBAAAA,EAAAA;AAAAA,IAACC;AAAA,IAAA;AAAA,MACC,MAAMvC,EAAM;AAAA,MACZ,uBAAuB,CAACU,GAAcC,GAAiBF,CAAO;AAAA,MAC9D,eAAc+B,IAAAxC,EAAM,YAAN,gBAAAwC,EAAe;AAAA,MAC5B,GAAGC,EAAuBzC,CAAK;AAAA,MAEhC,UAAAsC,gBAAAA,EAAAA;AAAAA,QAACI;AAAA,QAAA;AAAA,UACC,MAAMT;AAAA,UACN,SAASE;AAAA,UACT,cAAcC;AAAA,UACd,iBAAiBC;AAAA,UACjB,UAAAzB;AAAA,UACA,UAAUC,KAAY8B,EAAS,iCAAiC,SAAS;AAAA,UACzE,UAAA7B;AAAA,UACA,YAAAI;AAAA,UACA,cAAAC;AAAA,UACA,cAAAC;AAAA,UACA,aAAAJ;AAAA,UACA,kBAAAC;AAAA,UACA,eAAAF;AAAA,UACA,aAAaO;AAAA,QAAA;AAAA,MAAA;AAAA,IACf;AAAA,EAAA;AAGN;;;;;8CC9JMsB,IAAO;AAAA,EACX,MAAM;AAAA,EACN,OAAO;AAAA,EACP,aACE;AAAA,EACF,UAAU;AAAA,EACV,QAAQ;AAAA,IACNC,EAAO;AAAA,IACPA,EAAO;AAAA,IACP;AAAA,MACE,GAAGA,EAAO;AAAA,MACV,OAAO;AAAA,MACP,MAAM;AAAA,IAAA;AAAA,IAER;AAAA,MACE,GAAGA,EAAO;AAAA,MACV,OAAO;AAAA,MACP,MAAM;AAAA,IAAA;AAAA,IAERA,EAAO;AAAA,IACPA,EAAO;AAAA,IACPA,EAAO;AAAA,IACPA,EAAO;AAAA,IACP;AAAA,MACE,GAAGA,EAAO;AAAA,MACV,MAAM;AAAA,MACN,OAAO;AAAA,IAAA;AAAA,IAET;AAAA,MACE,GAAGA,EAAO;AAAA,MACV,MAAM;AAAA,MACN,OAAO;AAAA,IAAA;AAAA,IAET;AAAA,MACE,GAAGA,EAAO;AAAA,MACV,MAAM;AAAA,MACN,OAAO;AAAA,IAAA;AAAA,IAET;AAAA,MACE,GAAGA,EAAO;AAAA,MACV,MAAM;AAAA,MACN,OAAO;AAAA,MACP,aAAa;AAAA,MACb,UAAU;AAAA,IAAA;AAAA,IAEZ;AAAA,MACE,GAAGA,EAAO;AAAA,MACV,MAAM;AAAA,MACN,OAAO;AAAA,MACP,aAAa;AAAA,MACb,UAAU;AAAA,IAAA;AAAA,IAEZ;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,aAAa;AAAA,MACb,UAAU;AAAA,IAAA;AAAA,IAEZ;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,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,QAER;AAAA,UACE,MAAM;AAAA,UACN,OAAO;AAAA,UACP,MAAM;AAAA,QAAA;AAAA,QAER;AAAA,UACE,MAAM;AAAA,UACN,OAAO;AAAA,UACP,MAAM;AAAA,QAAA;AAAA,QAER;AAAA,UACE,MAAM;AAAA,UACN,OAAO;AAAA,UACP,MAAM;AAAA,QAAA;AAAA,MACR;AAAA,IACF;AAAA,EACF;AAEJ,GAEMC,IAAgB;AAAA,EACpB,cAAcC,EAAY;AAAA,EAC1B,iBAAiBA,EAAY;AAAA,EAC7B,SAASA,EAAY;AAAA,EACrB,SAASA,EAAY;AAAA,EACrB,UAAU;AACZ,GAEMC,IAAUC,EAAcC,GAAWJ,CAAa,GAEhDK,IAAsB,CAC1BN,GACAO,OACqB;AAAA,EACrB,MAAMP,EAAO;AAAA,EACb,QAAQ,CAACA,EAAO,cAAcA,EAAO,iBAAiBA,EAAO,OAAO;AAAA,EACpE,OAAOA,EAAO;AAAA,EACd,WAAW;AAAA,EACX,UAAUQ,EAAyBD,KAAA,gBAAAA,EAAe,QAAQ;AAC5D,IAEME,IAAkB,CACtBT,GACAO,MACiBG,EAASJ,EAAoBN,GAAQO,CAAa,CAAC,GAEhEpD,IAAQ,CACZ6C,GACAW,GACAJ,OACI;AAAA,EACJ,GAAGP;AAAAA,EACH,SAASS,EAAgBT,GAAQO,CAAa;AAChD,IAEMK,KAAS;AAAA,EACb,eAAe,CAACrD,OAAsC;AAAA,IACpD,mBAAmBA,EAAM,qBAAqBsD,EAAM,SAAA;AAAA,IACpD,uBAAuBtD,EAAM,yBAAyBsD,EAAM,SAAA;AAAA,IAC5D,sBAAsBtD,EAAM,wBAAwBsD,EAAM,SAAA;AAAA,IAC1D,0BAA0BtD,EAAM,4BAA4BsD,EAAM,SAAA;AAAA,EAAS;AAE/E,GAEaC,KAAa;AAAA,EAAA,WACxBT;AAAAA,EACA,MAAAN;AAAA,EACA,SAAAI;AAAA,EACA,eAAAF;AAAA,EACA,QAAQ;AAAA,IACN,OAAA9C;AAAA,IACA,QAAAyD;AAAA,EAAA;AAAA,EAEF,SAAS;AAAA,IACP,cAAcN;AAAA,IACd,UAAUG;AAAA,EAAA;AAEd;"}
|
|
1
|
+
{"version":3,"file":"definition-DGm0gnDo.js","sources":["../src/components/charts/tables/HeatMapPro/index.tsx","../src/components/charts/tables/HeatMapPro/definition.ts"],"sourcesContent":["import { useTheme } from '@embeddable.com/react';\nimport { Theme } from '../../../../theme/theme.types';\nimport { i18nSetup } from '../../../../theme/i18n/i18n';\nimport {\n ChartCard,\n ChartCardHeaderProps,\n asChartCardHeaderProps,\n} from '../../shared/ChartCard/ChartCard';\nimport { DataResponse, Dimension, Measure } from '@embeddable.com/core';\nimport {\n getStyle,\n HeatMap,\n HeatMapPropsDimension,\n HeatMapPropsMeasure,\n} from '@embeddable.com/remarkable-ui';\nimport { getThemeFormatter } from '../../../../theme/formatter/formatter.utils';\nimport { useFillGaps } from '../../charts.fillGaps.hooks';\nimport { useGetTableSortedResults } from '../tables.hooks';\nimport { useCallback } from 'react';\nimport { getTimeRangeFromDimensionValue } from '../../../utils/dimension.utils';\nimport { HeatMapCellClickArg, HeatMapProOptionsClickArg } from './HeatMapPro.types';\n\nexport type HeatMapProProps = {\n columnDimension: Dimension;\n columnWidth?: number;\n\n displayNullAs?: string;\n firstColumnWidth?: number;\n maxColor?: string;\n maxThreshold?: string;\n measure: Measure;\n midColor?: string;\n minColor?: string;\n minThreshold?: string;\n results: DataResponse;\n rowDimension: Dimension;\n showValues?: boolean;\n onCellClicked?: (args: HeatMapProOptionsClickArg) => void;\n} & ChartCardHeaderProps;\n\nexport const getHeatMeasure = (\n props: { measure: Measure },\n theme: Theme,\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n): HeatMapPropsMeasure<any> => {\n const themeFormatter = getThemeFormatter(theme);\n\n return {\n key: props.measure.name,\n label: themeFormatter.dimensionOrMeasureTitle(props.measure),\n format: (value) => {\n return themeFormatter.data(props.measure, value);\n },\n };\n};\n\nexport const getHeatDimension = (\n props: { dimension: Dimension },\n theme: Theme,\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n): HeatMapPropsDimension<any> => {\n const themeFormatter = getThemeFormatter(theme);\n\n return {\n key: props.dimension.name,\n label: themeFormatter.dimensionOrMeasureTitle(props.dimension),\n format: (value: string) => themeFormatter.data(props.dimension, value),\n };\n};\n\nconst HeatMapPro = (props: HeatMapProProps) => {\n const theme = useTheme() as Theme;\n i18nSetup(theme);\n\n const {\n measure,\n rowDimension,\n columnDimension,\n maxColor,\n midColor,\n minColor,\n displayNullAs,\n columnWidth,\n firstColumnWidth,\n showValues,\n minThreshold,\n maxThreshold,\n onCellClicked,\n } = props;\n\n const handleCellClick = useCallback(\n ({ rowDimensionValue, columnDimensionValue }: HeatMapCellClickArg) => {\n if (!onCellClicked) return;\n onCellClicked({\n rowDimensionValue,\n rowDimensionTimeRange: getTimeRangeFromDimensionValue({\n value: rowDimensionValue,\n dimension: rowDimension,\n }),\n columnDimensionValue,\n columnDimensionTimeRange: getTimeRangeFromDimensionValue({\n value: columnDimensionValue,\n dimension: columnDimension,\n }),\n });\n },\n [onCellClicked, rowDimension, columnDimension],\n );\n\n const columnOrder = Array.from(\n new Set((props.results.data ?? []).filter(Boolean).map((d) => d[columnDimension.name])),\n );\n\n const rowOrder = Array.from(\n new Set((props.results.data ?? []).filter(Boolean).map((d) => d[rowDimension.name])),\n );\n\n // Fill gaps for the column dimension\n const resultsColumnDimensionFillGaps = useFillGaps({\n results: props.results,\n dimension: columnDimension,\n });\n\n // Fill gaps for the row dimension\n const resultsRowColumnDimensionFillGaps = useFillGaps({\n results: resultsColumnDimensionFillGaps,\n dimension: rowDimension,\n });\n\n const results = useGetTableSortedResults({\n results: resultsRowColumnDimensionFillGaps,\n columnOrder,\n rowOrder,\n columnDimension,\n rowDimension,\n measures: [measure],\n });\n\n const pivotMeasures = getHeatMeasure({ measure }, theme);\n const pivotRowDimension = getHeatDimension({ dimension: rowDimension }, theme);\n const pivotColumnDimension = getHeatDimension({ dimension: columnDimension }, theme);\n\n return (\n <ChartCard\n data={props.results}\n dimensionsAndMeasures={[rowDimension, columnDimension, measure]}\n errorMessage={props.results?.error}\n {...asChartCardHeaderProps(props)}\n >\n <HeatMap\n data={results}\n measure={pivotMeasures}\n rowDimension={pivotRowDimension}\n columnDimension={pivotColumnDimension}\n maxColor={maxColor}\n midColor={midColor ?? getStyle('--em-tablechart-heatmap-color', '#FF5400')}\n minColor={minColor}\n showValues={showValues}\n minThreshold={minThreshold}\n maxThreshold={maxThreshold}\n columnWidth={columnWidth}\n firstColumnWidth={firstColumnWidth}\n displayNullAs={displayNullAs}\n onCellClick={handleCellClick}\n />\n </ChartCard>\n );\n};\n\nexport default HeatMapPro;\n","import { DataResponse, LoadDataRequest, Value, loadData } from '@embeddable.com/core';\nimport { definePreview, EmbeddedComponentMeta, Inputs } from '@embeddable.com/react';\nimport Component from './index';\nimport { inputs } from '../../../component.inputs.constants';\nimport { previewData } from '../../../preview.data.constants';\nimport { getClientContextTimezone } from '../../../../theme/utils/clientContext.utils';\nimport { ThemeClientContext } from '../../../../theme/theme.types';\nimport { HeatMapProOptionsClickArg } from './HeatMapPro.types';\n\nconst meta = {\n name: 'HeatMapPro',\n label: 'Heat Map',\n description:\n 'Heat map of one measure over two dimensions (rows × columns). Use to spot density or correlation patterns.',\n category: 'Table Charts',\n inputs: [\n inputs.dataset,\n inputs.measure,\n {\n ...inputs.dimensionWithDateBounds,\n label: 'Row dimension',\n name: 'rowDimension',\n },\n {\n ...inputs.dimensionWithDateBounds,\n label: 'Column dimension',\n name: 'columnDimension',\n },\n inputs.title,\n inputs.description,\n inputs.tooltip,\n inputs.displayNullAs,\n {\n ...inputs.color,\n name: 'midColor',\n label: 'Mid-point color (optional)',\n },\n {\n ...inputs.color,\n name: 'maxColor',\n label: 'Max-point color (optional)',\n },\n {\n ...inputs.color,\n name: 'minColor',\n label: 'Min-point color (optional)',\n },\n {\n ...inputs.string,\n name: 'minThreshold',\n label: 'Max-point range lower limit',\n description: 'Enter a value as either a number (e.g. 20) or a percentage (e.g. 20%)',\n category: 'Component Settings',\n },\n {\n ...inputs.string,\n name: 'maxThreshold',\n label: 'Min-point range upper limit',\n description: 'Enter a value as either a number (e.g. 20) or a percentage (e.g. 20%)',\n category: 'Component Settings',\n },\n {\n ...inputs.boolean,\n name: 'showValues',\n label: 'Show values',\n defaultValue: true,\n category: 'Component Settings',\n },\n {\n ...inputs.number,\n name: 'firstColumnWidth',\n label: 'First column width',\n description: 'Set the width in px (e.g. 200)',\n category: 'Component Settings',\n },\n {\n ...inputs.number,\n name: 'columnWidth',\n label: 'Column width',\n description: 'Set the width in px (e.g. 200)',\n category: 'Component Settings',\n },\n inputs.maxResults,\n inputs.menuOptions,\n ],\n events: [\n {\n name: 'onCellClicked',\n label: 'A cell is clicked',\n properties: [\n {\n name: 'rowDimensionValue',\n label: 'Clicked row dimension value',\n type: 'string',\n },\n {\n name: 'rowDimensionTimeRange',\n label: 'Clicked row dimension time range',\n type: 'timeRange',\n },\n {\n name: 'columnDimensionValue',\n label: 'Clicked column dimension value',\n type: 'string',\n },\n {\n name: 'columnDimensionTimeRange',\n label: 'Clicked column dimension time range',\n type: 'timeRange',\n },\n ],\n },\n ],\n} as const satisfies EmbeddedComponentMeta;\n\nconst previewConfig = {\n rowDimension: previewData.dimension,\n columnDimension: previewData.dimensionGroup,\n measure: previewData.measure,\n results: previewData.results1Measure2Dimensions,\n hideMenu: true,\n};\n\nconst preview = definePreview(Component, previewConfig);\n\nconst loadDataResultsArgs = (\n inputs: Inputs<typeof meta>,\n clientContext?: ThemeClientContext,\n): LoadDataRequest => ({\n from: inputs.dataset,\n select: [inputs.rowDimension, inputs.columnDimension, inputs.measure],\n limit: inputs.maxResults,\n countRows: true,\n timezone: getClientContextTimezone(clientContext?.timezone),\n});\n\nconst loadDataResults = (\n inputs: Inputs<typeof meta>,\n clientContext?: ThemeClientContext,\n): DataResponse => loadData(loadDataResultsArgs(inputs, clientContext));\n\nconst props = (\n inputs: Inputs<typeof meta>,\n _state: unknown,\n clientContext?: ThemeClientContext,\n) => ({\n ...inputs,\n results: loadDataResults(inputs, clientContext),\n});\n\nconst events = {\n onCellClicked: (value: HeatMapProOptionsClickArg) => ({\n rowDimensionValue: value.rowDimensionValue ?? Value.noFilter(),\n rowDimensionTimeRange: value.rowDimensionTimeRange ?? Value.noFilter(),\n columnDimensionValue: value.columnDimensionValue ?? Value.noFilter(),\n columnDimensionTimeRange: value.columnDimensionTimeRange ?? Value.noFilter(),\n }),\n};\n\nexport const heatMapPro = {\n Component,\n meta,\n preview,\n previewConfig,\n config: {\n props,\n events,\n },\n results: {\n loadDataArgs: loadDataResultsArgs,\n loadData: loadDataResults,\n },\n} as const;\n"],"names":["getHeatMeasure","props","theme","themeFormatter","getThemeFormatter","value","getHeatDimension","HeatMapPro","useTheme","i18nSetup","measure","rowDimension","columnDimension","maxColor","midColor","minColor","displayNullAs","columnWidth","firstColumnWidth","showValues","minThreshold","maxThreshold","onCellClicked","handleCellClick","useCallback","rowDimensionValue","columnDimensionValue","getTimeRangeFromDimensionValue","columnOrder","d","rowOrder","resultsColumnDimensionFillGaps","useFillGaps","resultsRowColumnDimensionFillGaps","results","useGetTableSortedResults","pivotMeasures","pivotRowDimension","pivotColumnDimension","jsx","ChartCard","_a","asChartCardHeaderProps","HeatMap","getStyle","meta","inputs","previewConfig","previewData","preview","definePreview","Component","loadDataResultsArgs","clientContext","getClientContextTimezone","loadDataResults","loadData","_state","events","Value","heatMapPro"],"mappings":"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"}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import { useTheme as w, definePreview as C } from "@embeddable.com/react";
|
|
2
|
-
import { j as p, t as P, V as f, l as M } from "./index-
|
|
3
|
-
import { g as j } from "./formatter.utils-
|
|
4
|
-
import { E as T } from "./EditorCard-
|
|
2
|
+
import { j as p, t as P, V as f, l as M } from "./index-BpJ2xsEV.js";
|
|
3
|
+
import { g as j } from "./formatter.utils-BaA4WFcv.js";
|
|
4
|
+
import { E as T } from "./EditorCard-UMHyz0mi.js";
|
|
5
5
|
import { r as _, a as q } from "./component.utils-oQMZT7TK.js";
|
|
6
|
-
import { i as a } from "./component.inputs.constants-
|
|
7
|
-
import { p as g } from "./preview.data.constants-
|
|
6
|
+
import { i as a } from "./component.inputs.constants-CJRHMXHA.js";
|
|
7
|
+
import { p as g } from "./preview.data.constants-DyU7ur6g.js";
|
|
8
8
|
const v = 200, d = (e) => {
|
|
9
9
|
var c, u;
|
|
10
10
|
const o = w(), n = j(o), { title: l, description: b, dimension: i, placeholder: D, tooltip: V } = _(e), { optionalSecondDimension: m, results: s, selectedValue: y, setSearchValue: O, onChange: r } = e, x = ((c = s.data) == null ? void 0 : c.map((t) => ({
|
|
@@ -129,4 +129,4 @@ export {
|
|
|
129
129
|
X as i,
|
|
130
130
|
G as s
|
|
131
131
|
};
|
|
132
|
-
//# sourceMappingURL=definition-
|
|
132
|
+
//# sourceMappingURL=definition-DOgO1UO1.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"definition-
|
|
1
|
+
{"version":3,"file":"definition-DOgO1UO1.js","sources":["../src/components/editors/SingleSelectFieldPro/index.tsx","../src/components/editors/SingleSelectFieldPro/definition.ts"],"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, EditorCardHeaderProps } from '../shared/EditorCard/EditorCard';\nimport { resolveI18nProps } from '../../component.utils';\nimport { i18n } from '../../../theme/i18n/i18n';\nimport { SingleSelectField } from '@embeddable.com/remarkable-ui';\n\nexport const MAX_OPTIONS = 200;\n\nexport type SingleSelectFieldProProps = {\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 | null) => void;\n} & EditorCardHeaderProps;\n\nconst SingleSelectFieldPro = (props: SingleSelectFieldProProps) => {\n const theme: Theme = useTheme() as Theme;\n const themeFormatter = getThemeFormatter(theme);\n\n const { title, description, dimension, placeholder, tooltip } = resolveI18nProps(props);\n const { optionalSecondDimension, results, selectedValue, setSearchValue, onChange } = 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} description={description} tooltip={tooltip}>\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) => onChange?.(newValue as string | null)}\n onSearch={setSearchValue}\n avoidCollisions={false}\n />\n </EditorCard>\n );\n};\n\nexport default SingleSelectFieldPro;\n","import { definePreview, EmbeddedComponentMeta, Inputs } from '@embeddable.com/react';\nimport { Value, loadData, LoadDataRequest, DataResponse } from '@embeddable.com/core';\nimport Component, { MAX_OPTIONS } from '.';\nimport { inputs } from '../../component.inputs.constants';\nimport { previewData } from '../../preview.data.constants';\n\nconst meta = {\n name: 'SingleSelectFieldPro',\n label: 'Single Select Field',\n description:\n 'Single-select dropdown of dimension values from a dataset. Pairs with a string variable; emits onChange.',\n category: 'Dropdowns - values',\n defaultWidth: 300,\n defaultHeight: 120,\n inputs: [\n inputs.dataset,\n { ...inputs.dimension, label: 'Dimension (to load Dropdown values)' },\n inputs.title,\n inputs.description,\n inputs.tooltip,\n { ...inputs.placeholder, defaultValue: 'Select value...' },\n {\n ...inputs.number,\n name: 'maxOptions',\n label: 'Maximum options',\n category: 'Component Settings',\n defaultValue: MAX_OPTIONS,\n },\n {\n ...inputs.string,\n name: 'selectedValue',\n label: 'Selected value',\n category: 'Pre-configured Variables',\n },\n {\n ...inputs.dimension,\n config: {\n dataset: 'dataset',\n },\n required: false,\n name: 'optionalSecondDimension',\n label: 'Optional secondary dimension',\n category: 'Data Mapping for Interactions',\n description: 'Send a different dimension to embeddable when the user clicks. Must be unique.',\n },\n ],\n events: [\n {\n name: 'onChange',\n label: 'Selected value updated',\n properties: [\n {\n name: 'value',\n label: 'Selected value',\n type: 'string',\n },\n ],\n },\n ],\n variables: [\n {\n name: 'single-select value',\n type: 'string',\n defaultValue: Value.noFilter(),\n inputs: ['selectedValue'],\n events: [{ name: 'onChange', property: 'value' }],\n },\n ],\n} as const satisfies EmbeddedComponentMeta;\n\nexport type SingleSelectDropdownState = {\n searchValue?: string;\n};\n\nconst preview = definePreview(Component, {\n dimension: previewData.dimension,\n results: previewData.results1Measure1Dimension,\n onChange: () => null,\n});\n\nconst loadDataResultsArgs = (\n inputs: Inputs<typeof meta>,\n state?: SingleSelectDropdownState,\n): LoadDataRequest => {\n const operator = inputs.dimension.nativeType === 'string' ? 'contains' : 'equals';\n return {\n limit: inputs.maxOptions,\n from: inputs.dataset,\n select: [inputs.dimension, inputs.optionalSecondDimension].filter(Boolean),\n filters: state?.searchValue\n ? [{ operator, property: inputs.dimension, value: state.searchValue }]\n : undefined,\n };\n};\n\nconst loadDataResults = (\n inputs: Inputs<typeof meta>,\n state?: SingleSelectDropdownState,\n): DataResponse => loadData(loadDataResultsArgs(inputs, state));\n\nconst props = (\n inputs: Inputs<typeof meta>,\n [state, setState]: [SingleSelectDropdownState, (state: SingleSelectDropdownState) => void],\n) => ({\n ...inputs,\n maxOptions: inputs.maxOptions,\n setSearchValue: (searchValue: string) => setState({ searchValue }),\n results: loadDataResults(inputs, state),\n});\n\nconst events = {\n onChange: (selectedValue: string | null) => {\n return {\n value: selectedValue ?? Value.noFilter(),\n };\n },\n};\n\nexport const singleSelectFieldPro = {\n Component,\n meta,\n preview,\n config: {\n props,\n events,\n },\n results: {\n loadDataArgs: loadDataResultsArgs,\n loadData: loadDataResults,\n },\n} as const;\n"],"names":["MAX_OPTIONS","SingleSelectFieldPro","props","theme","useTheme","themeFormatter","getThemeFormatter","title","description","dimension","placeholder","tooltip","resolveI18nProps","optionalSecondDimension","results","selectedValue","setSearchValue","onChange","options","_a","data","showNoOptionsMessage","_b","jsx","EditorCard","SingleSelectField","i18n","newValue","meta","inputs","Value","preview","definePreview","Component","previewData","loadDataResultsArgs","state","operator","loadDataResults","loadData","setState","searchValue","events","singleSelectFieldPro"],"mappings":";;;;;;;AASO,MAAMA,IAAc,KAarBC,IAAuB,CAACC,MAAqC;;AACjE,QAAMC,IAAeC,EAAA,GACfC,IAAiBC,EAAkBH,CAAK,GAExC,EAAE,OAAAI,GAAO,aAAAC,GAAa,WAAAC,GAAW,aAAAC,GAAa,SAAAC,EAAA,IAAYC,EAAiBV,CAAK,GAChF,EAAE,yBAAAW,GAAyB,SAAAC,GAAS,eAAAC,GAAe,gBAAAC,GAAgB,UAAAC,MAAaf,GAEhFgB,MACJC,IAAAL,EAAQ,SAAR,gBAAAK,EAAc,IAAI,CAACC,OACV;AAAA,IACL,OAAOP,IAA0BO,EAAKP,EAAwB,IAAI,IAAIO,EAAKX,EAAU,IAAI;AAAA,IACzF,OAAOJ,EAAe,KAAKI,GAAWW,EAAKX,EAAU,IAAI,CAAC;AAAA,EAAA,QAExD,CAAA,GAEFY,IAA+B,CAACP,EAAQ,gBAAcQ,IAAAR,EAAQ,SAAR,gBAAAQ,EAAc,WAAU,OAAO;AAE3F,SACEC,gBAAAA,EAAAA,IAACC,GAAA,EAAW,OAAAjB,GAAc,aAAAC,GAA0B,SAAAG,GAClD,UAAAY,gBAAAA,EAAAA;AAAAA,IAACE;AAAA,IAAA;AAAA,MACC,WAAS;AAAA,MACT,YAAU;AAAA,MACV,WAAWX,EAAQ;AAAA,MACnB,OAAOC;AAAA,MACP,SAAAG;AAAA,MACA,aAAAR;AAAA,MACA,kBAAkBW,IAAuBK,EAAK,EAAE,uBAAuB,IAAI;AAAA,MAC3E,UAAU,CAACC,MAAaV,KAAA,gBAAAA,EAAWU;AAAA,MACnC,UAAUX;AAAA,MACV,iBAAiB;AAAA,IAAA;AAAA,EAAA,GAErB;AAEJ;;;;8CCjDMY,IAAO;AAAA,EACX,MAAM;AAAA,EACN,OAAO;AAAA,EACP,aACE;AAAA,EACF,UAAU;AAAA,EACV,cAAc;AAAA,EACd,eAAe;AAAA,EACf,QAAQ;AAAA,IACNC,EAAO;AAAA,IACP,EAAE,GAAGA,EAAO,WAAW,OAAO,sCAAA;AAAA,IAC9BA,EAAO;AAAA,IACPA,EAAO;AAAA,IACPA,EAAO;AAAA,IACP,EAAE,GAAGA,EAAO,aAAa,cAAc,kBAAA;AAAA,IACvC;AAAA,MACE,GAAGA,EAAO;AAAA,MACV,MAAM;AAAA,MACN,OAAO;AAAA,MACP,UAAU;AAAA,MACV,cAAc7B;AAAA,IAAA;AAAA,IAEhB;AAAA,MACE,GAAG6B,EAAO;AAAA,MACV,MAAM;AAAA,MACN,OAAO;AAAA,MACP,UAAU;AAAA,IAAA;AAAA,IAEZ;AAAA,MACE,GAAGA,EAAO;AAAA,MACV,QAAQ;AAAA,QACN,SAAS;AAAA,MAAA;AAAA,MAEX,UAAU;AAAA,MACV,MAAM;AAAA,MACN,OAAO;AAAA,MACP,UAAU;AAAA,MACV,aAAa;AAAA,IAAA;AAAA,EACf;AAAA,EAEF,QAAQ;AAAA,IACN;AAAA,MACE,MAAM;AAAA,MACN,OAAO;AAAA,MACP,YAAY;AAAA,QACV;AAAA,UACE,MAAM;AAAA,UACN,OAAO;AAAA,UACP,MAAM;AAAA,QAAA;AAAA,MACR;AAAA,IACF;AAAA,EACF;AAAA,EAEF,WAAW;AAAA,IACT;AAAA,MACE,MAAM;AAAA,MACN,MAAM;AAAA,MACN,cAAcC,EAAM,SAAA;AAAA,MACpB,QAAQ,CAAC,eAAe;AAAA,MACxB,QAAQ,CAAC,EAAE,MAAM,YAAY,UAAU,SAAS;AAAA,IAAA;AAAA,EAClD;AAEJ,GAMMC,IAAUC,EAAcC,GAAW;AAAA,EACvC,WAAWC,EAAY;AAAA,EACvB,SAASA,EAAY;AAAA,EACrB,UAAU,MAAM;AAClB,CAAC,GAEKC,IAAsB,CAC1BN,GACAO,MACoB;AACpB,QAAMC,IAAWR,EAAO,UAAU,eAAe,WAAW,aAAa;AACzE,SAAO;AAAA,IACL,OAAOA,EAAO;AAAA,IACd,MAAMA,EAAO;AAAA,IACb,QAAQ,CAACA,EAAO,WAAWA,EAAO,uBAAuB,EAAE,OAAO,OAAO;AAAA,IACzE,SAASO,KAAA,QAAAA,EAAO,cACZ,CAAC,EAAE,UAAAC,GAAU,UAAUR,EAAO,WAAW,OAAOO,EAAM,YAAA,CAAa,IACnE;AAAA,EAAA;AAER,GAEME,IAAkB,CACtBT,GACAO,MACiBG,EAASJ,EAAoBN,GAAQO,CAAK,CAAC,GAExDlC,IAAQ,CACZ2B,GACA,CAACO,GAAOI,CAAQ,OACZ;AAAA,EACJ,GAAGX;AAAAA,EACH,YAAYA,EAAO;AAAA,EACnB,gBAAgB,CAACY,MAAwBD,EAAS,EAAE,aAAAC,GAAa;AAAA,EACjE,SAASH,EAAgBT,GAAQO,CAAK;AACxC,IAEMM,IAAS;AAAA,EACb,UAAU,CAAC3B,OACF;AAAA,IACL,OAAOA,KAAiBe,EAAM,SAAA;AAAA,EAAS;AAG7C,GAEaa,IAAuB;AAAA,EAAA,WAClCV;AAAAA,EACA,MAAAL;AAAA,EACA,SAAAG;AAAA,EACA,QAAQ;AAAA,IACN,OAAA7B;AAAA,IACA,QAAAwC;AAAA,EAAA;AAAA,EAEF,SAAS;AAAA,IACP,cAAcP;AAAA,IACd,UAAUG;AAAA,EAAA;AAEd;"}
|
|
@@ -1,14 +1,14 @@
|
|
|
1
|
-
import { j as d, F as N, x as B, V as L, l as X } from "./index-
|
|
1
|
+
import { j as d, F as N, x as B, V as L, l as X } from "./index-BpJ2xsEV.js";
|
|
2
2
|
import { useTheme as Y, definePreview as q } from "@embeddable.com/react";
|
|
3
3
|
import { useState as J, useEffect as Q } from "react";
|
|
4
4
|
import { i as U, r as Z } from "./component.utils-oQMZT7TK.js";
|
|
5
|
-
import { C as $, a as ee } from "./ChartCard-
|
|
6
|
-
import { u as ae } from "./charts.fillGaps.hooks-
|
|
7
|
-
import { C as se, g as re } from "./granularity.utils-
|
|
8
|
-
import { g as te, a as ie, l as f } from "./definition-
|
|
9
|
-
import { g as oe } from "./formatter.utils-
|
|
10
|
-
import { c as ne } from "./charts.utils-
|
|
11
|
-
import { p as i } from "./preview.data.constants-
|
|
5
|
+
import { C as $, a as ee } from "./ChartCard-jnVaCkEl.js";
|
|
6
|
+
import { u as ae } from "./charts.fillGaps.hooks-ImD798b-.js";
|
|
7
|
+
import { C as se, g as re } from "./granularity.utils-BXLMSveL.js";
|
|
8
|
+
import { g as te, a as ie, l as f } from "./definition-Bumjg1Nc.js";
|
|
9
|
+
import { g as oe } from "./formatter.utils-BaA4WFcv.js";
|
|
10
|
+
import { c as ne } from "./charts.utils-CM-dKk0n.js";
|
|
11
|
+
import { p as i } from "./preview.data.constants-DyU7ur6g.js";
|
|
12
12
|
import { g as le } from "./clientContext.utils-DpB5KsfX.js";
|
|
13
13
|
const x = (e) => {
|
|
14
14
|
var T;
|
|
@@ -153,4 +153,4 @@ export {
|
|
|
153
153
|
Le as i,
|
|
154
154
|
Pe as l
|
|
155
155
|
};
|
|
156
|
-
//# sourceMappingURL=definition-
|
|
156
|
+
//# sourceMappingURL=definition-DYRmzQG8.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"definition-mYoL0jkD.js","sources":["../src/components/charts/lines/LineChartWithKpiTabsPro/index.tsx","../src/components/charts/lines/LineChartWithKpiTabsPro/definition.ts"],"sourcesContent":["import { useEffect, useState } from 'react';\nimport { useTheme } from '@embeddable.com/react';\nimport { Theme } from '../../../../theme/theme.types';\nimport { DataResponse } from '@embeddable.com/core';\nimport { i18nSetup } from '../../../../theme/i18n/i18n';\nimport { resolveI18nProps } from '../../../component.utils';\nimport { ChartCard, asChartCardHeaderProps } from '../../shared/ChartCard/ChartCard';\nimport { useFillGaps } from '../../charts.fillGaps.hooks';\nimport { ChartTabs, ChartTabsProps, LineChart } from '@embeddable.com/remarkable-ui';\nimport { ChartGranularitySelectField } from '../../shared/ChartGranularitySelectField/ChartGranularitySelectField';\nimport {\n getLineChartProData,\n getLineChartProOptions,\n} from '../LineChartDefaultPro/LineChartDefaultPro.utils';\nimport { LineChartProProps } from '../LineChartDefaultPro';\nimport { getThemeFormatter } from '../../../../theme/formatter/formatter.utils';\nimport { createSimpleClickHandler } from '../../charts.utils';\n\nexport type LineChartWithKpiTabsProProps = LineChartProProps & {\n resultsKpis: DataResponse;\n};\n\nconst LineChartWithKpiTabsPro = (props: LineChartWithKpiTabsProProps) => {\n const theme: Theme = useTheme() as Theme;\n i18nSetup(theme);\n\n const resolvedI18nProps = resolveI18nProps(props);\n const { title, description, tooltip, xAxisLabel, yAxisLabel } = resolvedI18nProps;\n const {\n measures,\n xAxis,\n reverseXAxis,\n showLegend,\n showLogarithmicScale,\n showTooltips,\n showValueLabels,\n yAxisRangeMax,\n yAxisRangeMin,\n granularity,\n setGranularity,\n onLineClicked,\n resultsKpis,\n } = props;\n\n const [activeMeasureName, setActiveMeasureName] = useState(measures[0]?.name ?? '');\n const activeMeasure = measures.find((m) => m.name === activeMeasureName);\n\n useEffect(() => {\n if (measures.length === 0) return;\n if (measures.some((m) => m.name === activeMeasureName)) return;\n setActiveMeasureName(measures[0]!.name);\n }, [measures, activeMeasureName]);\n\n const results = useFillGaps({\n results: props.results,\n dimension: xAxis,\n });\n\n const data = getLineChartProData(\n {\n data: results.data,\n dimension: xAxis,\n measures: activeMeasure ? [activeMeasure] : [],\n hasMinMaxYAxisRange: Boolean(yAxisRangeMin != null || yAxisRangeMax != null),\n },\n theme,\n );\n\n const options = getLineChartProOptions(\n { data, dimension: xAxis, measures: activeMeasure ? [activeMeasure] : [] },\n theme,\n );\n\n const granularitySelectorHasMarginTop = !title && !description && !tooltip;\n\n const handleClick = createSimpleClickHandler({\n data,\n dimension: xAxis,\n granularity,\n onClicked: onLineClicked,\n });\n\n const themeFormatter = getThemeFormatter(theme);\n\n const chartTabsItems: ChartTabsProps['items'] = measures.map((measure) => ({\n id: measure.name,\n label: themeFormatter.dimensionOrMeasureTitle(measure),\n value:\n resultsKpis?.data?.[0]?.[measure.name] == null\n ? '-'\n : themeFormatter.data(measure, resultsKpis.data[0][measure.name]),\n }));\n\n return (\n <ChartCard\n data={results}\n dimensionsAndMeasures={[...measures, xAxis]}\n errorMessage={results.error}\n {...asChartCardHeaderProps(props)}\n >\n <ChartTabs items={chartTabsItems} value={activeMeasureName} onChange={setActiveMeasureName} />\n {setGranularity && (\n <ChartGranularitySelectField\n hasMarginTop={granularitySelectorHasMarginTop}\n dimension={xAxis}\n onChange={setGranularity}\n />\n )}\n <LineChart\n data={data}\n reverseXAxis={reverseXAxis}\n showLegend={showLegend}\n showLogarithmicScale={showLogarithmicScale}\n showTooltips={showTooltips}\n showValueLabels={showValueLabels}\n xAxisLabel={xAxisLabel}\n yAxisLabel={yAxisLabel}\n yAxisRangeMax={yAxisRangeMax}\n yAxisRangeMin={yAxisRangeMin}\n options={options}\n onClick={handleClick}\n />\n </ChartCard>\n );\n};\n\nexport default LineChartWithKpiTabsPro;\n","import { DataResponse, Granularity, LoadDataRequest, Value, loadData } from '@embeddable.com/core';\nimport { definePreview, EmbeddedComponentMeta, Inputs } from '@embeddable.com/react';\nimport Component from './index';\nimport { previewData } from '../../../preview.data.constants';\nimport { getDimensionWithGranularity } from '../../utils/granularity.utils';\nimport { lineChartDefaultPro, LineChartDefaultProState } from '../LineChartDefaultPro/definition';\nimport { getClientContextTimezone } from '../../../../theme/utils/clientContext.utils';\nimport { ThemeClientContext } from '../../../../theme/theme.types';\nimport { LineChartProOptionsClickArg } from '../lines.types';\n\nconst meta = {\n ...lineChartDefaultPro.meta,\n name: 'LineChartWithKpiTabsPro',\n label: 'Line Chart - With Kpi Tabs',\n description:\n 'Line chart with clickable KPI tabs above — each measure gets a tab showing its total. One time dimension and one or more measures.',\n defaultHeight: 526,\n defaultWidth: 1280,\n} as const satisfies EmbeddedComponentMeta;\n\nconst previewConfig = {\n xAxis: previewData.dimension,\n measures: [previewData.measure, previewData.measureVariant],\n results: previewData.results1Measure1Dimension,\n resultsKpis: previewData.results2Measures,\n hideMenu: true,\n};\n\nconst preview = definePreview(Component, previewConfig);\n\n// Reuse loadData and loadDataArgs from LineChartDefaultPro for main results,\nconst loadDataResultsArgs = lineChartDefaultPro.results.loadDataArgs;\nconst loadDataResults = lineChartDefaultPro.results.loadData;\n\nconst loadDataResultsKpisArgs = (\n inputs: Inputs<typeof meta>,\n clientContext?: ThemeClientContext,\n): LoadDataRequest => ({\n from: inputs.dataset,\n select: [...inputs.measures],\n timezone: getClientContextTimezone(clientContext?.timezone),\n});\n\nconst loadDataResultsKpis = (\n inputs: Inputs<typeof meta>,\n clientContext: ThemeClientContext,\n): DataResponse => loadData(loadDataResultsKpisArgs(inputs, clientContext));\n\nconst events = {\n onLineClicked: (value: LineChartProOptionsClickArg) => ({\n axisDimensionValue: value.dimensionValue ?? Value.noFilter(),\n axisDimensionTimeRange: value.dimensionTimeRange ?? Value.noFilter(),\n }),\n};\n\nconst props = (\n inputs: Inputs<typeof meta>,\n [state, setState]: [LineChartDefaultProState, (state: LineChartDefaultProState) => void],\n clientContext: ThemeClientContext,\n) => {\n const xAxisWithGranularity = getDimensionWithGranularity(inputs.xAxis, state?.granularity);\n\n return {\n ...inputs,\n xAxis: xAxisWithGranularity,\n granularity: state?.granularity,\n setGranularity: (granularity: Granularity) => setState({ granularity }),\n results: loadDataResults(inputs, xAxisWithGranularity, clientContext),\n resultsKpis: loadDataResultsKpis(inputs, clientContext),\n };\n};\n\nexport const lineChartWithKpiTabsPro = {\n Component,\n meta,\n preview,\n previewConfig,\n config: {\n props,\n events,\n },\n results: {\n loadDataArgs: loadDataResultsArgs,\n loadData: loadDataResults,\n },\n resultsKpis: {\n loadDataArgs: loadDataResultsKpisArgs,\n loadData: loadDataResultsKpis,\n },\n} as const;\n"],"names":["LineChartWithKpiTabsPro","props","theme","useTheme","i18nSetup","resolvedI18nProps","resolveI18nProps","title","description","tooltip","xAxisLabel","yAxisLabel","measures","xAxis","reverseXAxis","showLegend","showLogarithmicScale","showTooltips","showValueLabels","yAxisRangeMax","yAxisRangeMin","granularity","setGranularity","onLineClicked","resultsKpis","activeMeasureName","setActiveMeasureName","useState","_a","activeMeasure","m","useEffect","results","useFillGaps","data","getLineChartProData","options","getLineChartProOptions","granularitySelectorHasMarginTop","handleClick","createSimpleClickHandler","themeFormatter","getThemeFormatter","chartTabsItems","measure","_b","jsxs","ChartCard","asChartCardHeaderProps","jsx","ChartTabs","ChartGranularitySelectField","LineChart","meta","lineChartDefaultPro","previewConfig","previewData","preview","definePreview","Component","loadDataResultsArgs","loadDataResults","loadDataResultsKpisArgs","inputs","clientContext","getClientContextTimezone","loadDataResultsKpis","loadData","events","value","Value","state","setState","xAxisWithGranularity","getDimensionWithGranularity","lineChartWithKpiTabsPro"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"definition-DYRmzQG8.js","sources":["../src/components/charts/lines/LineChartWithKpiTabsPro/index.tsx","../src/components/charts/lines/LineChartWithKpiTabsPro/definition.ts"],"sourcesContent":["import { useEffect, useState } from 'react';\nimport { useTheme } from '@embeddable.com/react';\nimport { Theme } from '../../../../theme/theme.types';\nimport { DataResponse } from '@embeddable.com/core';\nimport { i18nSetup } from '../../../../theme/i18n/i18n';\nimport { resolveI18nProps } from '../../../component.utils';\nimport { ChartCard, asChartCardHeaderProps } from '../../shared/ChartCard/ChartCard';\nimport { useFillGaps } from '../../charts.fillGaps.hooks';\nimport { ChartTabs, ChartTabsProps, LineChart } from '@embeddable.com/remarkable-ui';\nimport { ChartGranularitySelectField } from '../../shared/ChartGranularitySelectField/ChartGranularitySelectField';\nimport {\n getLineChartProData,\n getLineChartProOptions,\n} from '../LineChartDefaultPro/LineChartDefaultPro.utils';\nimport { LineChartProProps } from '../LineChartDefaultPro';\nimport { getThemeFormatter } from '../../../../theme/formatter/formatter.utils';\nimport { createSimpleClickHandler } from '../../charts.utils';\n\nexport type LineChartWithKpiTabsProProps = LineChartProProps & {\n resultsKpis: DataResponse;\n};\n\nconst LineChartWithKpiTabsPro = (props: LineChartWithKpiTabsProProps) => {\n const theme: Theme = useTheme() as Theme;\n i18nSetup(theme);\n\n const resolvedI18nProps = resolveI18nProps(props);\n const { title, description, tooltip, xAxisLabel, yAxisLabel } = resolvedI18nProps;\n const {\n measures,\n xAxis,\n reverseXAxis,\n showLegend,\n showLogarithmicScale,\n showTooltips,\n showValueLabels,\n yAxisRangeMax,\n yAxisRangeMin,\n granularity,\n setGranularity,\n onLineClicked,\n resultsKpis,\n } = props;\n\n const [activeMeasureName, setActiveMeasureName] = useState(measures[0]?.name ?? '');\n const activeMeasure = measures.find((m) => m.name === activeMeasureName);\n\n useEffect(() => {\n if (measures.length === 0) return;\n if (measures.some((m) => m.name === activeMeasureName)) return;\n setActiveMeasureName(measures[0]!.name);\n }, [measures, activeMeasureName]);\n\n const results = useFillGaps({\n results: props.results,\n dimension: xAxis,\n });\n\n const data = getLineChartProData(\n {\n data: results.data,\n dimension: xAxis,\n measures: activeMeasure ? [activeMeasure] : [],\n hasMinMaxYAxisRange: Boolean(yAxisRangeMin != null || yAxisRangeMax != null),\n },\n theme,\n );\n\n const options = getLineChartProOptions(\n { data, dimension: xAxis, measures: activeMeasure ? [activeMeasure] : [] },\n theme,\n );\n\n const granularitySelectorHasMarginTop = !title && !description && !tooltip;\n\n const handleClick = createSimpleClickHandler({\n data,\n dimension: xAxis,\n granularity,\n onClicked: onLineClicked,\n });\n\n const themeFormatter = getThemeFormatter(theme);\n\n const chartTabsItems: ChartTabsProps['items'] = measures.map((measure) => ({\n id: measure.name,\n label: themeFormatter.dimensionOrMeasureTitle(measure),\n value:\n resultsKpis?.data?.[0]?.[measure.name] == null\n ? '-'\n : themeFormatter.data(measure, resultsKpis.data[0][measure.name]),\n }));\n\n return (\n <ChartCard\n data={results}\n dimensionsAndMeasures={[...measures, xAxis]}\n errorMessage={results.error}\n {...asChartCardHeaderProps(props)}\n >\n <ChartTabs items={chartTabsItems} value={activeMeasureName} onChange={setActiveMeasureName} />\n {setGranularity && (\n <ChartGranularitySelectField\n hasMarginTop={granularitySelectorHasMarginTop}\n dimension={xAxis}\n onChange={setGranularity}\n />\n )}\n <LineChart\n data={data}\n reverseXAxis={reverseXAxis}\n showLegend={showLegend}\n showLogarithmicScale={showLogarithmicScale}\n showTooltips={showTooltips}\n showValueLabels={showValueLabels}\n xAxisLabel={xAxisLabel}\n yAxisLabel={yAxisLabel}\n yAxisRangeMax={yAxisRangeMax}\n yAxisRangeMin={yAxisRangeMin}\n options={options}\n onClick={handleClick}\n />\n </ChartCard>\n );\n};\n\nexport default LineChartWithKpiTabsPro;\n","import { DataResponse, Granularity, LoadDataRequest, Value, loadData } from '@embeddable.com/core';\nimport { definePreview, EmbeddedComponentMeta, Inputs } from '@embeddable.com/react';\nimport Component from './index';\nimport { previewData } from '../../../preview.data.constants';\nimport { getDimensionWithGranularity } from '../../utils/granularity.utils';\nimport { lineChartDefaultPro, LineChartDefaultProState } from '../LineChartDefaultPro/definition';\nimport { getClientContextTimezone } from '../../../../theme/utils/clientContext.utils';\nimport { ThemeClientContext } from '../../../../theme/theme.types';\nimport { LineChartProOptionsClickArg } from '../lines.types';\n\nconst meta = {\n ...lineChartDefaultPro.meta,\n name: 'LineChartWithKpiTabsPro',\n label: 'Line Chart - With Kpi Tabs',\n description:\n 'Line chart with clickable KPI tabs above — each measure gets a tab showing its total. One time dimension and one or more measures.',\n defaultHeight: 526,\n defaultWidth: 1280,\n} as const satisfies EmbeddedComponentMeta;\n\nconst previewConfig = {\n xAxis: previewData.dimension,\n measures: [previewData.measure, previewData.measureVariant],\n results: previewData.results1Measure1Dimension,\n resultsKpis: previewData.results2Measures,\n hideMenu: true,\n};\n\nconst preview = definePreview(Component, previewConfig);\n\n// Reuse loadData and loadDataArgs from LineChartDefaultPro for main results,\nconst loadDataResultsArgs = lineChartDefaultPro.results.loadDataArgs;\nconst loadDataResults = lineChartDefaultPro.results.loadData;\n\nconst loadDataResultsKpisArgs = (\n inputs: Inputs<typeof meta>,\n clientContext?: ThemeClientContext,\n): LoadDataRequest => ({\n from: inputs.dataset,\n select: [...inputs.measures],\n timezone: getClientContextTimezone(clientContext?.timezone),\n});\n\nconst loadDataResultsKpis = (\n inputs: Inputs<typeof meta>,\n clientContext: ThemeClientContext,\n): DataResponse => loadData(loadDataResultsKpisArgs(inputs, clientContext));\n\nconst events = {\n onLineClicked: (value: LineChartProOptionsClickArg) => ({\n axisDimensionValue: value.dimensionValue ?? Value.noFilter(),\n axisDimensionTimeRange: value.dimensionTimeRange ?? Value.noFilter(),\n }),\n};\n\nconst props = (\n inputs: Inputs<typeof meta>,\n [state, setState]: [LineChartDefaultProState, (state: LineChartDefaultProState) => void],\n clientContext: ThemeClientContext,\n) => {\n const xAxisWithGranularity = getDimensionWithGranularity(inputs.xAxis, state?.granularity);\n\n return {\n ...inputs,\n xAxis: xAxisWithGranularity,\n granularity: state?.granularity,\n setGranularity: (granularity: Granularity) => setState({ granularity }),\n results: loadDataResults(inputs, xAxisWithGranularity, clientContext),\n resultsKpis: loadDataResultsKpis(inputs, clientContext),\n };\n};\n\nexport const lineChartWithKpiTabsPro = {\n Component,\n meta,\n preview,\n previewConfig,\n config: {\n props,\n events,\n },\n results: {\n loadDataArgs: loadDataResultsArgs,\n loadData: loadDataResults,\n },\n resultsKpis: {\n loadDataArgs: loadDataResultsKpisArgs,\n loadData: loadDataResultsKpis,\n },\n} as const;\n"],"names":["LineChartWithKpiTabsPro","props","theme","useTheme","i18nSetup","resolvedI18nProps","resolveI18nProps","title","description","tooltip","xAxisLabel","yAxisLabel","measures","xAxis","reverseXAxis","showLegend","showLogarithmicScale","showTooltips","showValueLabels","yAxisRangeMax","yAxisRangeMin","granularity","setGranularity","onLineClicked","resultsKpis","activeMeasureName","setActiveMeasureName","useState","_a","activeMeasure","m","useEffect","results","useFillGaps","data","getLineChartProData","options","getLineChartProOptions","granularitySelectorHasMarginTop","handleClick","createSimpleClickHandler","themeFormatter","getThemeFormatter","chartTabsItems","measure","_b","jsxs","ChartCard","asChartCardHeaderProps","jsx","ChartTabs","ChartGranularitySelectField","LineChart","meta","lineChartDefaultPro","previewConfig","previewData","preview","definePreview","Component","loadDataResultsArgs","loadDataResults","loadDataResultsKpisArgs","inputs","clientContext","getClientContextTimezone","loadDataResultsKpis","loadData","events","value","Value","state","setState","xAxisWithGranularity","getDimensionWithGranularity","lineChartWithKpiTabsPro"],"mappings":"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"}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import { j as o, V as s } from "./index-
|
|
1
|
+
import { j as o, V as s } from "./index-BpJ2xsEV.js";
|
|
2
2
|
import { useTheme as g, definePreview as S } from "@embeddable.com/react";
|
|
3
|
-
import { E as v } from "./EditorCard-
|
|
3
|
+
import { E as v } from "./EditorCard-UMHyz0mi.js";
|
|
4
4
|
import { i as h, r as b } from "./component.utils-oQMZT7TK.js";
|
|
5
|
-
import { D } from "./DimensionAndMeasureSingleSelectField-
|
|
6
|
-
import { i as e } from "./component.inputs.constants-
|
|
7
|
-
import { p as t } from "./preview.data.constants-
|
|
5
|
+
import { D } from "./DimensionAndMeasureSingleSelectField-_jJAx5WA.js";
|
|
6
|
+
import { i as e } from "./component.inputs.constants-CJRHMXHA.js";
|
|
7
|
+
import { p as t } from "./preview.data.constants-DyU7ur6g.js";
|
|
8
8
|
const i = (n) => {
|
|
9
9
|
const l = g();
|
|
10
10
|
h(l);
|
|
@@ -93,4 +93,4 @@ export {
|
|
|
93
93
|
T as d,
|
|
94
94
|
M as i
|
|
95
95
|
};
|
|
96
|
-
//# sourceMappingURL=definition-
|
|
96
|
+
//# sourceMappingURL=definition-QQGyselv.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"definition-
|
|
1
|
+
{"version":3,"file":"definition-QQGyselv.js","sources":["../src/components/editors/DimensionSingleSelectFieldPro/index.tsx","../src/components/editors/DimensionSingleSelectFieldPro/definition.ts"],"sourcesContent":["import { Dimension } from '@embeddable.com/core';\nimport { EditorCard } from '../shared/EditorCard/EditorCard';\nimport { resolveI18nProps } from '../../component.utils';\nimport { ChartCardHeaderProps } from '../../charts/shared/ChartCard/ChartCard';\nimport { Theme } from '../../../theme/theme.types';\nimport { useTheme } from '@embeddable.com/react';\nimport { i18nSetup } from '../../../theme/i18n/i18n';\nimport { DimensionAndMeasureSingleSelectField } from '../shared/DimensionAndMeasureSingleSelectField/DimensionAndMeasureSingleSelectField';\n\nexport type DimensionSingleSelectFieldProProps = {\n selectedDimension?: Dimension;\n dimensionOptions: Dimension[];\n placeholder?: string;\n clearable?: boolean;\n onChange: (value: Dimension | undefined) => void;\n} & ChartCardHeaderProps;\n\nconst DimensionSingleSelectFieldPro = (props: DimensionSingleSelectFieldProProps) => {\n const theme = useTheme() as Theme;\n i18nSetup(theme);\n\n const { selectedDimension, dimensionOptions, clearable, onChange } = props;\n const { title, description, tooltip, placeholder } = resolveI18nProps(props);\n\n return (\n <EditorCard title={title} description={description} tooltip={tooltip}>\n <DimensionAndMeasureSingleSelectField<Dimension>\n selectedValue={selectedDimension}\n options={dimensionOptions}\n placeholder={placeholder}\n clearable={clearable}\n onChange={onChange}\n />\n </EditorCard>\n );\n};\n\nexport default DimensionSingleSelectFieldPro;\n","import { Value } from '@embeddable.com/core';\nimport { EmbeddedComponentMeta, Inputs, definePreview } from '@embeddable.com/react';\nimport Component from './index';\nimport { inputs } from '../../component.inputs.constants';\nimport { previewData } from '../../preview.data.constants';\n\nconst meta = {\n name: 'DimensionSingleSelectFieldPro',\n label: 'Dimension Single Select Field',\n description:\n 'Dropdown for selecting a single dimension from a list. Pairs with a dimension variable; emits onChange.',\n category: 'Dropdowns - dimensions and measures',\n defaultWidth: 300,\n defaultHeight: 120,\n inputs: [\n inputs.dataset,\n inputs.title,\n inputs.description,\n inputs.tooltip,\n { ...inputs.placeholder, defaultValue: 'Select value...' },\n inputs.dimensionOptions,\n {\n ...inputs.dimension,\n name: 'selectedDimension',\n label: 'Selected dimension',\n category: 'Pre-configured variables',\n required: false,\n config: {\n dataset: 'dataset',\n },\n },\n { ...inputs.clearable, defaultValue: false },\n ],\n events: [\n {\n name: 'onChange',\n label: 'Selected dimension updated',\n properties: [\n {\n name: 'value',\n label: 'Selected dimension',\n type: 'dimension',\n },\n ],\n },\n ],\n variables: [\n {\n name: 'dimension single-select value',\n type: 'dimension',\n defaultValue: Value.noFilter(),\n inputs: ['selectedDimension'],\n events: [{ name: 'onChange', property: 'value' }],\n },\n ],\n} as const satisfies EmbeddedComponentMeta;\n\nconst preview = definePreview(Component, {\n dimensionOptions: [previewData.dimension, previewData.dimensionGroup],\n onChange: () => null,\n});\n\nconst props = (inputs: Inputs<typeof meta>) => {\n return {\n ...inputs,\n dimensionOptions: inputs.dimensionOptions ?? [],\n };\n};\n\nconst events = {\n onChange: (value: unknown) => {\n return {\n value: value ?? Value.noFilter(),\n };\n },\n};\n\nexport const dimensionSingleSelectFieldPro = {\n Component,\n meta,\n preview,\n config: {\n props,\n events,\n },\n} as const;\n"],"names":["DimensionSingleSelectFieldPro","props","theme","useTheme","i18nSetup","selectedDimension","dimensionOptions","clearable","onChange","title","description","tooltip","placeholder","resolveI18nProps","jsx","EditorCard","DimensionAndMeasureSingleSelectField","meta","inputs","Value","preview","definePreview","Component","previewData","events","value","dimensionSingleSelectFieldPro"],"mappings":";;;;;;;AAiBA,MAAMA,IAAgC,CAACC,MAA8C;AACnF,QAAMC,IAAQC,EAAA;AACd,EAAAC,EAAUF,CAAK;AAEf,QAAM,EAAE,mBAAAG,GAAmB,kBAAAC,GAAkB,WAAAC,GAAW,UAAAC,MAAaP,GAC/D,EAAE,OAAAQ,GAAO,aAAAC,GAAa,SAAAC,GAAS,aAAAC,EAAA,IAAgBC,EAAiBZ,CAAK;AAE3E,SACEa,gBAAAA,EAAAA,IAACC,GAAA,EAAW,OAAAN,GAAc,aAAAC,GAA0B,SAAAC,GAClD,UAAAG,gBAAAA,EAAAA;AAAAA,IAACE;AAAA,IAAA;AAAA,MACC,eAAeX;AAAA,MACf,SAASC;AAAA,MACT,aAAAM;AAAA,MACA,WAAAL;AAAA,MACA,UAAAC;AAAA,IAAA;AAAA,EAAA,GAEJ;AAEJ;;;8CC7BMS,IAAO;AAAA,EACX,MAAM;AAAA,EACN,OAAO;AAAA,EACP,aACE;AAAA,EACF,UAAU;AAAA,EACV,cAAc;AAAA,EACd,eAAe;AAAA,EACf,QAAQ;AAAA,IACNC,EAAO;AAAA,IACPA,EAAO;AAAA,IACPA,EAAO;AAAA,IACPA,EAAO;AAAA,IACP,EAAE,GAAGA,EAAO,aAAa,cAAc,kBAAA;AAAA,IACvCA,EAAO;AAAA,IACP;AAAA,MACE,GAAGA,EAAO;AAAA,MACV,MAAM;AAAA,MACN,OAAO;AAAA,MACP,UAAU;AAAA,MACV,UAAU;AAAA,MACV,QAAQ;AAAA,QACN,SAAS;AAAA,MAAA;AAAA,IACX;AAAA,IAEF,EAAE,GAAGA,EAAO,WAAW,cAAc,GAAA;AAAA,EAAM;AAAA,EAE7C,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,mBAAmB;AAAA,MAC5B,QAAQ,CAAC,EAAE,MAAM,YAAY,UAAU,SAAS;AAAA,IAAA;AAAA,EAClD;AAEJ,GAEMC,IAAUC,EAAcC,GAAW;AAAA,EACvC,kBAAkB,CAACC,EAAY,WAAWA,EAAY,cAAc;AAAA,EACpE,UAAU,MAAM;AAClB,CAAC,GAEKtB,IAAQ,CAACiB,OACN;AAAA,EACL,GAAGA;AAAAA,EACH,kBAAkBA,EAAO,oBAAoB,CAAA;AAAC,IAI5CM,IAAS;AAAA,EACb,UAAU,CAACC,OACF;AAAA,IACL,OAAOA,KAASN,EAAM,SAAA;AAAA,EAAS;AAGrC,GAEaO,IAAgC;AAAA,EAAA,WAC3CJ;AAAAA,EACA,MAAAL;AAAA,EACA,SAAAG;AAAA,EACA,QAAQ;AAAA,IACN,OAAAnB;AAAA,IACA,QAAAuB;AAAA,EAAA;AAEJ;"}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import { m as D, j as l, H as V, V as d, l as x } from "./index-
|
|
1
|
+
import { m as D, j as l, H as V, V as d, l as x } from "./index-BpJ2xsEV.js";
|
|
2
2
|
import { useTheme as v, definePreview as L } from "@embeddable.com/react";
|
|
3
|
-
import { g as R, a as T, c as j } from "./pies.utils-
|
|
3
|
+
import { g as R, a as T, c as j } from "./pies.utils-vf7_pmdH.js";
|
|
4
4
|
import { i as S } from "./component.utils-oQMZT7TK.js";
|
|
5
|
-
import { C as y, a as A } from "./ChartCard-
|
|
6
|
-
import { i as s, s as M } from "./component.inputs.constants-
|
|
7
|
-
import { p as i } from "./preview.data.constants-
|
|
5
|
+
import { C as y, a as A } from "./ChartCard-jnVaCkEl.js";
|
|
6
|
+
import { i as s, s as M } from "./component.inputs.constants-CJRHMXHA.js";
|
|
7
|
+
import { p as i } from "./preview.data.constants-DyU7ur6g.js";
|
|
8
8
|
const r = (e) => {
|
|
9
9
|
var m;
|
|
10
10
|
const a = v();
|
|
@@ -121,4 +121,4 @@ export {
|
|
|
121
121
|
J as i,
|
|
122
122
|
K as p
|
|
123
123
|
};
|
|
124
|
-
//# sourceMappingURL=definition-
|
|
124
|
+
//# sourceMappingURL=definition-ViiZJXzp.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"definition-
|
|
1
|
+
{"version":3,"file":"definition-ViiZJXzp.js","sources":["../src/components/charts/pies/PieChartPro/index.tsx","../src/components/charts/pies/PieChartPro/definition.ts"],"sourcesContent":["import { useTheme } from '@embeddable.com/react';\nimport { PieChart } from '@embeddable.com/remarkable-ui';\nimport { Theme } from '../../../../theme/theme.types';\nimport { getPieChartProOptions, getPieChartProData, createPieClickHandler } from '../pies.utils';\nimport { DefaultPieChartProps } from '../pies.types';\nimport { i18nSetup } from '../../../../theme/i18n/i18n';\nimport { ChartCard, asChartCardHeaderProps } from '../../shared/ChartCard/ChartCard';\nimport { mergician } from 'mergician';\nexport type PieChartProProps = DefaultPieChartProps;\n\nconst PieChartPro = (props: PieChartProProps) => {\n const theme = useTheme() as Theme;\n i18nSetup(theme);\n\n const {\n dimension,\n maxLegendItems,\n measure,\n results,\n showLegend,\n showTooltips,\n showValueLabels,\n onSegmentClick,\n } = props;\n\n const data = getPieChartProData(\n { data: results.data, dimension, measure, maxLegendItems },\n theme,\n );\n\n const options = mergician(\n getPieChartProOptions({ measure, dimension }, theme),\n theme.charts.pieChartPro?.options ?? {},\n );\n\n const handleClick = createPieClickHandler({ results, dimension, onClicked: onSegmentClick });\n\n return (\n <ChartCard\n data={results}\n dimensionsAndMeasures={[dimension, measure]}\n errorMessage={results.error}\n {...asChartCardHeaderProps(props)}\n >\n <PieChart\n data={data}\n options={options}\n showLegend={showLegend}\n showTooltips={showTooltips}\n showValueLabels={showValueLabels}\n onClick={handleClick}\n />\n </ChartCard>\n );\n};\n\nexport default PieChartPro;\n","import { DataResponse, LoadDataRequest, Value, loadData } from '@embeddable.com/core';\nimport { PieChartClickArg } from '../pies.types';\nimport { definePreview, EmbeddedComponentMeta, Inputs } from '@embeddable.com/react';\nimport Component from './index';\nimport { inputs } from '../../../component.inputs.constants';\nimport { previewData } from '../../../preview.data.constants';\nimport { subInputs } from '../../../component.subinputs.constants';\n\nconst meta = {\n name: 'PieChartPro',\n label: 'Pie Chart',\n description:\n 'Pie chart for parts-of-whole over one dimension with one measure. Prefer DonutChartPro for a modern look.',\n category: 'Pie Charts',\n defaultHeight: 442,\n defaultWidth: 630,\n inputs: [\n inputs.dataset,\n { ...inputs.measure, inputs: [...inputs.measure.inputs, subInputs.showValueAsPercentage] },\n inputs.dimension,\n inputs.title,\n inputs.description,\n inputs.tooltip,\n inputs.showLegend,\n inputs.maxLegendItems,\n inputs.showTooltips,\n inputs.showValueLabels,\n inputs.menuOptions,\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 name: 'dimensionTimeRange',\n label: 'Clicked dimension time range',\n type: 'timeRange',\n },\n ],\n },\n ],\n} as const satisfies EmbeddedComponentMeta;\n\nconst previewConfig = {\n dimension: previewData.dimension,\n measure: previewData.measure,\n results: previewData.results1Measure1Dimension,\n showValueLabels: false,\n hideMenu: true,\n};\n\nconst preview = definePreview(Component, previewConfig);\n\nconst loadDataResultsArgs = (inputs: Inputs<typeof meta>): LoadDataRequest => ({\n from: inputs.dataset,\n select: [inputs.measure, inputs.dimension],\n});\n\nconst loadDataResults = (inputs: Inputs<typeof meta>): DataResponse =>\n loadData(loadDataResultsArgs(inputs));\n\nconst events = {\n onSegmentClick: (value: PieChartClickArg) => ({\n dimensionValue: value.dimensionValue ?? Value.noFilter(),\n dimensionTimeRange: value.dimensionTimeRange ?? Value.noFilter(),\n }),\n};\n\nconst props = (inputs: Inputs<typeof meta>) => ({\n ...inputs,\n results: loadDataResults(inputs),\n});\n\nexport const pieChartPro = {\n Component,\n meta,\n preview,\n previewConfig,\n config: {\n props,\n events,\n },\n results: {\n loadDataArgs: loadDataResultsArgs,\n loadData: loadDataResults,\n },\n} as const;\n"],"names":["PieChartPro","props","theme","useTheme","i18nSetup","dimension","maxLegendItems","measure","results","showLegend","showTooltips","showValueLabels","onSegmentClick","data","getPieChartProData","options","mergician","getPieChartProOptions","_a","handleClick","createPieClickHandler","jsx","ChartCard","asChartCardHeaderProps","PieChart","meta","inputs","subInputs","previewConfig","previewData","preview","definePreview","Component","loadDataResultsArgs","loadDataResults","loadData","events","value","Value","pieChartPro"],"mappings":"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"}
|
|
@@ -1,13 +1,13 @@
|
|
|
1
|
-
import { m as z, j as u, B as F, V as x, l as O } from "./index-
|
|
1
|
+
import { m as z, j as u, B as F, V as x, l as O } from "./index-BpJ2xsEV.js";
|
|
2
2
|
import { useTheme as _, definePreview as H } from "@embeddable.com/react";
|
|
3
3
|
import { i as W, r as X } from "./component.utils-oQMZT7TK.js";
|
|
4
|
-
import { C as E, a as U } from "./ChartCard-
|
|
5
|
-
import { g as q, a as J } from "./bars.utils-
|
|
6
|
-
import { u as K } from "./charts.fillGaps.hooks-
|
|
7
|
-
import { C as N, g as Q } from "./granularity.utils-
|
|
8
|
-
import { c as Y } from "./charts.utils-
|
|
9
|
-
import { i as e, s as C } from "./component.inputs.constants-
|
|
10
|
-
import { p as c } from "./preview.data.constants-
|
|
4
|
+
import { C as E, a as U } from "./ChartCard-jnVaCkEl.js";
|
|
5
|
+
import { g as q, a as J } from "./bars.utils-BGi2vvkU.js";
|
|
6
|
+
import { u as K } from "./charts.fillGaps.hooks-ImD798b-.js";
|
|
7
|
+
import { C as N, g as Q } from "./granularity.utils-BXLMSveL.js";
|
|
8
|
+
import { c as Y } from "./charts.utils-CM-dKk0n.js";
|
|
9
|
+
import { i as e, s as C } from "./component.inputs.constants-CJRHMXHA.js";
|
|
10
|
+
import { p as c } from "./preview.data.constants-DyU7ur6g.js";
|
|
11
11
|
import { g as Z } from "./clientContext.utils-DpB5KsfX.js";
|
|
12
12
|
const d = (a) => {
|
|
13
13
|
var p, h;
|
|
@@ -176,4 +176,4 @@ export {
|
|
|
176
176
|
he as b,
|
|
177
177
|
pe as i
|
|
178
178
|
};
|
|
179
|
-
//# sourceMappingURL=definition-
|
|
179
|
+
//# sourceMappingURL=definition-WpA0B1mq.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"definition-k-ot6tpW.js","sources":["../src/components/charts/bars/BarChartDefaultPro/index.tsx","../src/components/charts/bars/BarChartDefaultPro/definition.ts"],"sourcesContent":["import { useTheme } from '@embeddable.com/react';\nimport { Theme } from '../../../../theme/theme.types';\nimport { i18nSetup } from '../../../../theme/i18n/i18n';\nimport { ChartCard, asChartCardHeaderProps } from '../../shared/ChartCard/ChartCard';\nimport { resolveI18nProps } from '../../../component.utils';\nimport { BarChart } from '@embeddable.com/remarkable-ui';\nimport { getBarChartProData, getBarChartProOptions } from '../bars.utils';\nimport { mergician } from 'mergician';\nimport { useFillGaps } from '../../charts.fillGaps.hooks';\nimport { ChartGranularitySelectField } from '../../shared/ChartGranularitySelectField/ChartGranularitySelectField';\nimport { BarChartBaseProps } from '../bars.types';\nimport { createSimpleClickHandler } from '../../charts.utils';\n\nexport type BarChartDefaultProProps = BarChartBaseProps & {\n reverseXAxis?: boolean;\n xAxisMaxItems?: number;\n yAxisRangeMin?: number;\n yAxisRangeMax?: number;\n};\n\nconst BarChartDefaultPro = (props: BarChartDefaultProProps) => {\n const theme = useTheme() as Theme;\n i18nSetup(theme);\n\n const {\n measures,\n yAxisRangeMin,\n xAxisMaxItems,\n yAxisRangeMax,\n showLegend,\n showTooltips,\n showLogarithmicScale,\n showValueLabels,\n reverseXAxis,\n dimension,\n granularity,\n setGranularity,\n onBarClicked,\n } = props;\n\n const resolvedI18nProps = resolveI18nProps(props);\n const { tooltip, description, title, xAxisLabel, yAxisLabel } = resolvedI18nProps;\n\n const results = useFillGaps({\n results: props.results,\n dimension,\n });\n\n const data = getBarChartProData(\n { data: results.data, dimension, measures, maxItems: xAxisMaxItems },\n theme,\n );\n\n const options = mergician(\n getBarChartProOptions({ measures, horizontal: false, data, dimension }, theme), // Format Y axis based on first measure\n theme.charts?.barChartDefaultPro?.options ?? {},\n );\n\n const granularitySelectorHasMarginTop = !title && !description && !tooltip;\n\n const handleClick = createSimpleClickHandler({\n data,\n dimension,\n granularity,\n onClicked: onBarClicked,\n });\n\n return (\n <ChartCard\n data={results}\n dimensionsAndMeasures={[dimension, ...measures]}\n errorMessage={results.error}\n {...asChartCardHeaderProps(props)}\n >\n {setGranularity && (\n <ChartGranularitySelectField\n hasMarginTop={granularitySelectorHasMarginTop}\n dimension={dimension}\n onChange={setGranularity}\n />\n )}\n <BarChart\n data={data}\n showLegend={showLegend}\n showTooltips={showTooltips}\n showValueLabels={showValueLabels}\n showLogarithmicScale={showLogarithmicScale}\n xAxisLabel={xAxisLabel}\n yAxisLabel={yAxisLabel}\n reverseXAxis={reverseXAxis}\n yAxisRangeMin={yAxisRangeMin}\n yAxisRangeMax={yAxisRangeMax}\n options={options}\n onClick={handleClick}\n />\n </ChartCard>\n );\n};\n\nexport default BarChartDefaultPro;\n","import {\n DataResponse,\n Dimension,\n Granularity,\n LoadDataRequest,\n Value,\n loadData,\n} from '@embeddable.com/core';\nimport { definePreview, EmbeddedComponentMeta, Inputs } from '@embeddable.com/react';\nimport Component from './index';\nimport { inputs } from '../../../component.inputs.constants';\nimport { previewData } from '../../../preview.data.constants';\nimport { getDimensionWithGranularity } from '../../utils/granularity.utils';\nimport { subInputs } from '../../../component.subinputs.constants';\nimport { getClientContextTimezone } from '../../../../theme/utils/clientContext.utils';\nimport { ThemeClientContext } from '../../../../theme/theme.types';\nimport { BarChartProOptionsClickArg } from '../bars.types';\n\nconst meta = {\n name: 'BarChartDefaultPro',\n label: 'Bar Chart - Default',\n description:\n 'Vertical bar chart with one categorical x-axis dimension and one or more measures. Use to compare values across discrete categories.',\n category: 'Bar Charts',\n inputs: [\n inputs.dataset,\n {\n ...inputs.measures,\n inputs: [...inputs.measures.inputs, subInputs.color, subInputs.showValueAsPercentage],\n },\n {\n ...inputs.dimensionWithGranularitySelectField,\n label: 'X-axis',\n },\n inputs.title,\n inputs.description,\n inputs.tooltip,\n inputs.showLegend,\n inputs.showTooltips,\n inputs.showValueLabels,\n inputs.showLogarithmicScale,\n inputs.xAxisLabel,\n inputs.yAxisLabel,\n inputs.reverseXAxis,\n inputs.yAxisRangeMin,\n inputs.yAxisRangeMax,\n inputs.xAxisMaxItems,\n inputs.maxResults,\n inputs.menuOptions,\n ],\n events: [\n {\n name: 'onBarClicked',\n label: 'A bar is clicked',\n properties: [\n {\n name: 'axisDimensionValue',\n label: 'Clicked axis dimension value',\n type: 'string',\n },\n {\n name: 'axisDimensionTimeRange',\n label: 'Clicked axis dimension time range',\n type: 'timeRange',\n },\n ],\n },\n ],\n} as const satisfies EmbeddedComponentMeta;\n\nexport type BarChartDefaultProState = {\n granularity?: Granularity;\n};\n\nconst previewConfig = {\n dimension: previewData.dimension,\n measures: [previewData.measure],\n results: previewData.results1Measure1Dimension,\n hideMenu: true,\n};\n\nconst preview = definePreview(Component, previewConfig);\n\nconst loadDataResultsArgs = (\n inputs: Inputs<typeof meta>,\n dimension?: Dimension,\n clientContext?: ThemeClientContext,\n): LoadDataRequest => ({\n limit: inputs.maxResults,\n from: inputs.dataset,\n select: [...inputs.measures, dimension ?? inputs.dimension],\n timezone: getClientContextTimezone(clientContext?.timezone),\n});\n\nconst loadDataResults = (\n inputs: Inputs<typeof meta>,\n dimension: Dimension,\n clientContext: ThemeClientContext,\n): DataResponse => loadData(loadDataResultsArgs(inputs, dimension, clientContext));\n\nconst events = {\n onBarClicked: (value: BarChartProOptionsClickArg) => ({\n axisDimensionValue: value.dimensionValue ?? Value.noFilter(),\n axisDimensionTimeRange: value.dimensionTimeRange ?? Value.noFilter(),\n }),\n};\n\nconst props = (\n inputs: Inputs<typeof meta>,\n [state, setState]: [BarChartDefaultProState, (state: BarChartDefaultProState) => void],\n clientContext: ThemeClientContext,\n) => {\n const dimensionWithGranularity = getDimensionWithGranularity(\n inputs.dimension,\n state?.granularity,\n );\n\n return {\n ...inputs,\n dimension: dimensionWithGranularity,\n granularity: state?.granularity,\n setGranularity: (granularity: Granularity) => setState({ granularity }),\n results: loadDataResults(inputs, dimensionWithGranularity, clientContext),\n };\n};\n\nexport const barChartDefaultPro = {\n Component,\n meta,\n preview,\n previewConfig,\n config: {\n props,\n events,\n },\n results: {\n loadDataArgs: loadDataResultsArgs,\n loadData: loadDataResults,\n },\n} as const;\n"],"names":["BarChartDefaultPro","props","theme","useTheme","i18nSetup","measures","yAxisRangeMin","xAxisMaxItems","yAxisRangeMax","showLegend","showTooltips","showLogarithmicScale","showValueLabels","reverseXAxis","dimension","granularity","setGranularity","onBarClicked","resolvedI18nProps","resolveI18nProps","tooltip","description","title","xAxisLabel","yAxisLabel","results","useFillGaps","data","getBarChartProData","options","mergician","getBarChartProOptions","_b","_a","granularitySelectorHasMarginTop","handleClick","createSimpleClickHandler","jsxs","ChartCard","asChartCardHeaderProps","jsx","ChartGranularitySelectField","BarChart","meta","inputs","subInputs","previewConfig","previewData","preview","definePreview","Component","loadDataResultsArgs","clientContext","getClientContextTimezone","loadDataResults","loadData","events","value","Value","state","setState","dimensionWithGranularity","getDimensionWithGranularity","barChartDefaultPro"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"definition-WpA0B1mq.js","sources":["../src/components/charts/bars/BarChartDefaultPro/index.tsx","../src/components/charts/bars/BarChartDefaultPro/definition.ts"],"sourcesContent":["import { useTheme } from '@embeddable.com/react';\nimport { Theme } from '../../../../theme/theme.types';\nimport { i18nSetup } from '../../../../theme/i18n/i18n';\nimport { ChartCard, asChartCardHeaderProps } from '../../shared/ChartCard/ChartCard';\nimport { resolveI18nProps } from '../../../component.utils';\nimport { BarChart } from '@embeddable.com/remarkable-ui';\nimport { getBarChartProData, getBarChartProOptions } from '../bars.utils';\nimport { mergician } from 'mergician';\nimport { useFillGaps } from '../../charts.fillGaps.hooks';\nimport { ChartGranularitySelectField } from '../../shared/ChartGranularitySelectField/ChartGranularitySelectField';\nimport { BarChartBaseProps } from '../bars.types';\nimport { createSimpleClickHandler } from '../../charts.utils';\n\nexport type BarChartDefaultProProps = BarChartBaseProps & {\n reverseXAxis?: boolean;\n xAxisMaxItems?: number;\n yAxisRangeMin?: number;\n yAxisRangeMax?: number;\n};\n\nconst BarChartDefaultPro = (props: BarChartDefaultProProps) => {\n const theme = useTheme() as Theme;\n i18nSetup(theme);\n\n const {\n measures,\n yAxisRangeMin,\n xAxisMaxItems,\n yAxisRangeMax,\n showLegend,\n showTooltips,\n showLogarithmicScale,\n showValueLabels,\n reverseXAxis,\n dimension,\n granularity,\n setGranularity,\n onBarClicked,\n } = props;\n\n const resolvedI18nProps = resolveI18nProps(props);\n const { tooltip, description, title, xAxisLabel, yAxisLabel } = resolvedI18nProps;\n\n const results = useFillGaps({\n results: props.results,\n dimension,\n });\n\n const data = getBarChartProData(\n { data: results.data, dimension, measures, maxItems: xAxisMaxItems },\n theme,\n );\n\n const options = mergician(\n getBarChartProOptions({ measures, horizontal: false, data, dimension }, theme), // Format Y axis based on first measure\n theme.charts?.barChartDefaultPro?.options ?? {},\n );\n\n const granularitySelectorHasMarginTop = !title && !description && !tooltip;\n\n const handleClick = createSimpleClickHandler({\n data,\n dimension,\n granularity,\n onClicked: onBarClicked,\n });\n\n return (\n <ChartCard\n data={results}\n dimensionsAndMeasures={[dimension, ...measures]}\n errorMessage={results.error}\n {...asChartCardHeaderProps(props)}\n >\n {setGranularity && (\n <ChartGranularitySelectField\n hasMarginTop={granularitySelectorHasMarginTop}\n dimension={dimension}\n onChange={setGranularity}\n />\n )}\n <BarChart\n data={data}\n showLegend={showLegend}\n showTooltips={showTooltips}\n showValueLabels={showValueLabels}\n showLogarithmicScale={showLogarithmicScale}\n xAxisLabel={xAxisLabel}\n yAxisLabel={yAxisLabel}\n reverseXAxis={reverseXAxis}\n yAxisRangeMin={yAxisRangeMin}\n yAxisRangeMax={yAxisRangeMax}\n options={options}\n onClick={handleClick}\n />\n </ChartCard>\n );\n};\n\nexport default BarChartDefaultPro;\n","import {\n DataResponse,\n Dimension,\n Granularity,\n LoadDataRequest,\n Value,\n loadData,\n} from '@embeddable.com/core';\nimport { definePreview, EmbeddedComponentMeta, Inputs } from '@embeddable.com/react';\nimport Component from './index';\nimport { inputs } from '../../../component.inputs.constants';\nimport { previewData } from '../../../preview.data.constants';\nimport { getDimensionWithGranularity } from '../../utils/granularity.utils';\nimport { subInputs } from '../../../component.subinputs.constants';\nimport { getClientContextTimezone } from '../../../../theme/utils/clientContext.utils';\nimport { ThemeClientContext } from '../../../../theme/theme.types';\nimport { BarChartProOptionsClickArg } from '../bars.types';\n\nconst meta = {\n name: 'BarChartDefaultPro',\n label: 'Bar Chart - Default',\n description:\n 'Vertical bar chart with one categorical x-axis dimension and one or more measures. Use to compare values across discrete categories.',\n category: 'Bar Charts',\n inputs: [\n inputs.dataset,\n {\n ...inputs.measures,\n inputs: [...inputs.measures.inputs, subInputs.color, subInputs.showValueAsPercentage],\n },\n {\n ...inputs.dimensionWithGranularitySelectField,\n label: 'X-axis',\n },\n inputs.title,\n inputs.description,\n inputs.tooltip,\n inputs.showLegend,\n inputs.showTooltips,\n inputs.showValueLabels,\n inputs.showLogarithmicScale,\n inputs.xAxisLabel,\n inputs.yAxisLabel,\n inputs.reverseXAxis,\n inputs.yAxisRangeMin,\n inputs.yAxisRangeMax,\n inputs.xAxisMaxItems,\n inputs.maxResults,\n inputs.menuOptions,\n ],\n events: [\n {\n name: 'onBarClicked',\n label: 'A bar is clicked',\n properties: [\n {\n name: 'axisDimensionValue',\n label: 'Clicked axis dimension value',\n type: 'string',\n },\n {\n name: 'axisDimensionTimeRange',\n label: 'Clicked axis dimension time range',\n type: 'timeRange',\n },\n ],\n },\n ],\n} as const satisfies EmbeddedComponentMeta;\n\nexport type BarChartDefaultProState = {\n granularity?: Granularity;\n};\n\nconst previewConfig = {\n dimension: previewData.dimension,\n measures: [previewData.measure],\n results: previewData.results1Measure1Dimension,\n hideMenu: true,\n};\n\nconst preview = definePreview(Component, previewConfig);\n\nconst loadDataResultsArgs = (\n inputs: Inputs<typeof meta>,\n dimension?: Dimension,\n clientContext?: ThemeClientContext,\n): LoadDataRequest => ({\n limit: inputs.maxResults,\n from: inputs.dataset,\n select: [...inputs.measures, dimension ?? inputs.dimension],\n timezone: getClientContextTimezone(clientContext?.timezone),\n});\n\nconst loadDataResults = (\n inputs: Inputs<typeof meta>,\n dimension: Dimension,\n clientContext: ThemeClientContext,\n): DataResponse => loadData(loadDataResultsArgs(inputs, dimension, clientContext));\n\nconst events = {\n onBarClicked: (value: BarChartProOptionsClickArg) => ({\n axisDimensionValue: value.dimensionValue ?? Value.noFilter(),\n axisDimensionTimeRange: value.dimensionTimeRange ?? Value.noFilter(),\n }),\n};\n\nconst props = (\n inputs: Inputs<typeof meta>,\n [state, setState]: [BarChartDefaultProState, (state: BarChartDefaultProState) => void],\n clientContext: ThemeClientContext,\n) => {\n const dimensionWithGranularity = getDimensionWithGranularity(\n inputs.dimension,\n state?.granularity,\n );\n\n return {\n ...inputs,\n dimension: dimensionWithGranularity,\n granularity: state?.granularity,\n setGranularity: (granularity: Granularity) => setState({ granularity }),\n results: loadDataResults(inputs, dimensionWithGranularity, clientContext),\n };\n};\n\nexport const barChartDefaultPro = {\n Component,\n meta,\n preview,\n previewConfig,\n config: {\n props,\n events,\n },\n results: {\n loadDataArgs: loadDataResultsArgs,\n loadData: loadDataResults,\n },\n} as const;\n"],"names":["BarChartDefaultPro","props","theme","useTheme","i18nSetup","measures","yAxisRangeMin","xAxisMaxItems","yAxisRangeMax","showLegend","showTooltips","showLogarithmicScale","showValueLabels","reverseXAxis","dimension","granularity","setGranularity","onBarClicked","resolvedI18nProps","resolveI18nProps","tooltip","description","title","xAxisLabel","yAxisLabel","results","useFillGaps","data","getBarChartProData","options","mergician","getBarChartProOptions","_b","_a","granularitySelectorHasMarginTop","handleClick","createSimpleClickHandler","jsxs","ChartCard","asChartCardHeaderProps","jsx","ChartGranularitySelectField","BarChart","meta","inputs","subInputs","previewConfig","previewData","preview","definePreview","Component","loadDataResultsArgs","clientContext","getClientContextTimezone","loadDataResults","loadData","events","value","Value","state","setState","dimensionWithGranularity","getDimensionWithGranularity","barChartDefaultPro"],"mappings":"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"}
|
|
@@ -1,13 +1,13 @@
|
|
|
1
|
-
import { m as B, v as I, j as A, x as O, V as p, l as z } from "./index-
|
|
1
|
+
import { m as B, v as I, j as A, x as O, V as p, l as z } from "./index-BpJ2xsEV.js";
|
|
2
2
|
import { useTheme as _, definePreview as H } from "@embeddable.com/react";
|
|
3
3
|
import { i as E, r as W } from "./component.utils-oQMZT7TK.js";
|
|
4
|
-
import { C as q, a as J } from "./ChartCard-
|
|
5
|
-
import { g as K, a as N, l as Q } from "./definition-
|
|
6
|
-
import { g as V } from "./dimension.utils-
|
|
4
|
+
import { C as q, a as J } from "./ChartCard-jnVaCkEl.js";
|
|
5
|
+
import { g as K, a as N, l as Q } from "./definition-BObbBhcm.js";
|
|
6
|
+
import { g as V } from "./dimension.utils-CiM7fJ79.js";
|
|
7
7
|
import { s as U } from "./color.utils-BSg_DFOh.js";
|
|
8
|
-
import { u as Z } from "./charts.fillGaps.hooks-
|
|
9
|
-
import { C as $, g as X } from "./granularity.utils-
|
|
10
|
-
import { p as f } from "./preview.data.constants-
|
|
8
|
+
import { u as Z } from "./charts.fillGaps.hooks-ImD798b-.js";
|
|
9
|
+
import { C as $, g as X } from "./granularity.utils-BXLMSveL.js";
|
|
10
|
+
import { p as f } from "./preview.data.constants-DyU7ur6g.js";
|
|
11
11
|
import { g as ee } from "./clientContext.utils-DpB5KsfX.js";
|
|
12
12
|
const ne = (e, n) => {
|
|
13
13
|
const a = K(e, n);
|
|
@@ -255,4 +255,4 @@ export {
|
|
|
255
255
|
ne as g,
|
|
256
256
|
De as i
|
|
257
257
|
};
|
|
258
|
-
//# sourceMappingURL=definition-
|
|
258
|
+
//# sourceMappingURL=definition-n2w2opqD.js.map
|