@embeddable.com/remarkable-pro 0.1.9 → 0.1.12
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/BarChartDefaultHorizontalPro.js +8 -8
- package/dist/BarChartDefaultPro.js +5 -5
- package/dist/BarChartGroupedHorizontalPro.js +5 -5
- package/dist/BarChartGroupedPro.js +5 -5
- package/dist/BarChartStackedHorizontalPro.js +5 -5
- package/dist/BarChartStackedPro.js +5 -5
- package/dist/{ChartCard-Bu-80NJh.js → ChartCard-BO7MZwqM.js} +10 -10
- package/dist/{ChartCard-Bu-80NJh.js.map → ChartCard-BO7MZwqM.js.map} +1 -1
- package/dist/{Color.type.emb-JBTB4VAn.js → Color.type.emb-Bon3x9VC.js} +7792 -7779
- package/dist/{Color.type.emb-JBTB4VAn.js.map → Color.type.emb-Bon3x9VC.js.map} +1 -1
- package/dist/ColorEditor.js +2 -2
- package/dist/ComparisonPeriodSelectFieldPro.js +3 -3
- package/dist/DateRangePickerCustomPro.js +3 -3
- package/dist/DateRangeSelectFieldPro.js +3 -3
- package/dist/{DimensionAndMeasureSingleSelectField-C5B9m3hv.js → DimensionAndMeasureSingleSelectField-QEeHTJvQ.js} +3 -3
- package/dist/{DimensionAndMeasureSingleSelectField-C5B9m3hv.js.map → DimensionAndMeasureSingleSelectField-QEeHTJvQ.js.map} +1 -1
- package/dist/DimensionSingleSelectFieldPro.js +4 -4
- package/dist/DonutChartPro.js +7 -7
- package/dist/DonutLabelChartPro.js +4 -4
- package/dist/{EditorCard-DlwWVuY3.js → EditorCard-BxYVJiPi.js} +3 -3
- package/dist/{EditorCard-DlwWVuY3.js.map → EditorCard-BxYVJiPi.js.map} +1 -1
- package/dist/{GranularitySelectField-DpCZ47f8.js → GranularitySelectField-D8f7LLe4.js} +24 -23
- package/dist/{GranularitySelectField-DpCZ47f8.js.map → GranularitySelectField-D8f7LLe4.js.map} +1 -1
- package/dist/GranularitySelectFieldPro.js +6 -6
- package/dist/HeatMapPro.js +4 -4
- package/dist/HorizontalDividerPro.js +34 -0
- package/dist/HorizontalDividerPro.js.map +1 -0
- package/dist/{IconCalendarFilled-DPibPYqC.js → IconCalendarFilled-D8K6d94f.js} +2 -2
- package/dist/{IconCalendarFilled-DPibPYqC.js.map → IconCalendarFilled-D8K6d94f.js.map} +1 -1
- package/dist/KpiChartNumberComparisonPro.js +4 -4
- package/dist/KpiChartNumberPro.js +6 -6
- package/dist/LineChartComparisonDefaultPro.js +5 -5
- package/dist/LineChartDefaultPro.js +5 -5
- package/dist/LineChartGroupedPro.js +5 -5
- package/dist/MeasureSingleSelectFieldPro.js +4 -4
- package/dist/MultiSelectFieldPro.js +4 -4
- package/dist/PieChartPro.js +4 -4
- package/dist/PivotTablePro.js +4 -4
- package/dist/SingleSelectFieldPro.js +4 -4
- package/dist/TableChartPaginated.js +4 -4
- package/dist/TableScrollable.js +4 -4
- package/dist/{bars.utils-DZf4BZCu.js → bars.utils-Cg5WRRVr.js} +4 -4
- package/dist/{bars.utils-DZf4BZCu.js.map → bars.utils-Cg5WRRVr.js.map} +1 -1
- package/dist/{charts.utils-MNXWiXfk.js → charts.utils-rBg2kZLJ.js} +4 -4
- package/dist/{charts.utils-MNXWiXfk.js.map → charts.utils-rBg2kZLJ.js.map} +1 -1
- package/dist/component.inputs.constants-DX8nFR6c.js +564 -0
- package/dist/component.inputs.constants-DX8nFR6c.js.map +1 -0
- package/dist/{component.inputs.constants-Cj-atN8w.js → component.utils-DubLDCwF.js} +332 -889
- package/dist/component.utils-DubLDCwF.js.map +1 -0
- package/dist/components/charts/bars/BarChartDefaultHorizontalPro/BarChartDefaultHorizontalPro.emb.d.ts +136 -0
- package/dist/components/charts/bars/BarChartDefaultHorizontalPro/BarChartDefaultHorizontalPro.emb.d.ts.map +1 -0
- package/dist/components/charts/bars/BarChartDefaultPro/BarChartDefaultPro.emb.d.ts +142 -0
- package/dist/components/charts/bars/BarChartDefaultPro/BarChartDefaultPro.emb.d.ts.map +1 -0
- package/dist/components/charts/bars/BarChartGroupedHorizontalPro/BarChartGroupedHorizontalPro.emb.d.ts +145 -0
- package/dist/components/charts/bars/BarChartGroupedHorizontalPro/BarChartGroupedHorizontalPro.emb.d.ts.map +1 -0
- package/dist/components/charts/bars/BarChartGroupedPro/BarChartGroupedPro.emb.d.ts +145 -0
- package/dist/components/charts/bars/BarChartGroupedPro/BarChartGroupedPro.emb.d.ts.map +1 -0
- package/dist/components/charts/bars/BarChartStackedHorizontalPro/BarChartStackedHorizontalPro.emb.d.ts +151 -0
- package/dist/components/charts/bars/BarChartStackedHorizontalPro/BarChartStackedHorizontalPro.emb.d.ts.map +1 -0
- package/dist/components/charts/bars/BarChartStackedPro/BarChartStackedPro.emb.d.ts +151 -0
- package/dist/components/charts/bars/BarChartStackedPro/BarChartStackedPro.emb.d.ts.map +1 -0
- package/dist/components/charts/kpis/KpiChartNumberComparisonPro/KpiChartNumberComparisonPro.emb.d.ts +112 -0
- package/dist/components/charts/kpis/KpiChartNumberComparisonPro/KpiChartNumberComparisonPro.emb.d.ts.map +1 -0
- package/dist/components/charts/kpis/KpiChartNumberPro/KpiChartNumberPro.emb.d.ts +66 -0
- package/dist/components/charts/kpis/KpiChartNumberPro/KpiChartNumberPro.emb.d.ts.map +1 -0
- package/dist/components/charts/lines/LineChartComparisonDefaultPro/LineChartComparisonDefaultPro.emb.d.ts +191 -0
- package/dist/components/charts/lines/LineChartComparisonDefaultPro/LineChartComparisonDefaultPro.emb.d.ts.map +1 -0
- package/dist/components/charts/lines/LineChartDefaultPro/LineChartDefaultPro.emb.d.ts +150 -0
- package/dist/components/charts/lines/LineChartDefaultPro/LineChartDefaultPro.emb.d.ts.map +1 -0
- package/dist/components/charts/lines/LineChartGroupedPro/LineChartGroupedPro.emb.d.ts +156 -0
- package/dist/components/charts/lines/LineChartGroupedPro/LineChartGroupedPro.emb.d.ts.map +1 -0
- package/dist/components/charts/pies/DonutChartPro/DonutChartPro.emb.d.ts +99 -0
- package/dist/components/charts/pies/DonutChartPro/DonutChartPro.emb.d.ts.map +1 -0
- package/dist/components/charts/pies/DonutLabelChartPro/DonutLabelChartPro.emb.d.ts +115 -0
- package/dist/components/charts/pies/DonutLabelChartPro/DonutLabelChartPro.emb.d.ts.map +1 -0
- package/dist/components/charts/pies/PieChartPro/PieChartPro.emb.d.ts +99 -0
- package/dist/components/charts/pies/PieChartPro/PieChartPro.emb.d.ts.map +1 -0
- package/dist/components/charts/shared/ChartCard/ChartCard.d.ts +1 -1
- package/dist/components/charts/shared/ChartCard/ChartCardMenuPro/ChartCardMenuPro.d.ts +1 -1
- package/dist/components/charts/tables/HeatMapPro/HeatMapPro.emb.d.ts +134 -0
- package/dist/components/charts/tables/HeatMapPro/HeatMapPro.emb.d.ts.map +1 -0
- package/dist/components/charts/tables/PivotTablePro/PivotTablePro.emb.d.ts +128 -0
- package/dist/components/charts/tables/PivotTablePro/PivotTablePro.emb.d.ts.map +1 -0
- package/dist/components/charts/tables/TableChartPaginated/TableChartPaginated.emb.d.ts +106 -0
- package/dist/components/charts/tables/TableChartPaginated/TableChartPaginated.emb.d.ts.map +1 -0
- package/dist/components/charts/tables/TableScrollable/TableScrollable.emb.d.ts +110 -0
- package/dist/components/charts/tables/TableScrollable/TableScrollable.emb.d.ts.map +1 -0
- package/dist/components/charts/tables/tables.utils.d.ts +2 -1
- package/dist/components/charts/utils/granularity.utils.d.ts +2 -2
- package/dist/components/component.inputs.constants.d.ts +2 -2
- package/dist/components/component.subinputs.constants.d.ts +4 -4
- package/dist/components/editors/ComparisonPeriodSelectFieldPro/ComparisonPeriodSelectFieldPro.emb.d.ts +82 -0
- package/dist/components/editors/ComparisonPeriodSelectFieldPro/ComparisonPeriodSelectFieldPro.emb.d.ts.map +1 -0
- package/dist/components/editors/DimensionSingleSelectFieldPro/DimensionSingleSelectFieldPro.emb.d.ts +108 -0
- package/dist/components/editors/DimensionSingleSelectFieldPro/DimensionSingleSelectFieldPro.emb.d.ts.map +1 -0
- package/dist/components/editors/GranularitySelectFieldPro/GranularitySelectFieldPro.emb.d.ts +91 -0
- package/dist/components/editors/GranularitySelectFieldPro/GranularitySelectFieldPro.emb.d.ts.map +1 -0
- package/dist/components/editors/MeasureSingleSelectFieldPro/MeasureSingleSelectFieldPro.emb.d.ts +108 -0
- package/dist/components/editors/MeasureSingleSelectFieldPro/MeasureSingleSelectFieldPro.emb.d.ts.map +1 -0
- package/dist/components/editors/MultiSelectFieldPro/MultiSelectFieldPro.emb.d.ts +112 -0
- package/dist/components/editors/MultiSelectFieldPro/MultiSelectFieldPro.emb.d.ts.map +1 -0
- package/dist/components/editors/SingleSelectFieldPro/SingleSelectFieldPro.emb.d.ts +109 -0
- package/dist/components/editors/SingleSelectFieldPro/SingleSelectFieldPro.emb.d.ts.map +1 -0
- package/dist/components/editors/dates/DateRangePickerCustomPro/DateRangePickerCustomPro.emb.d.ts +88 -0
- package/dist/components/editors/dates/DateRangePickerCustomPro/DateRangePickerCustomPro.emb.d.ts.map +1 -0
- package/dist/components/editors/dates/DateRangePickerPresetsPro/DateRangeSelectFieldPro.emb.d.ts +94 -0
- package/dist/components/editors/dates/DateRangePickerPresetsPro/DateRangeSelectFieldPro.emb.d.ts.map +1 -0
- package/dist/components/preview.data.constants.d.ts +10 -10
- package/dist/components/shared/EmptyContainerPro/EmptyBlockPro.emb.d.ts +26 -0
- package/dist/components/shared/EmptyContainerPro/EmptyBlockPro.emb.d.ts.map +1 -0
- package/dist/components/shared/HorizontalDividerPro/HorizontalDividerPro.emb.d.ts +39 -0
- package/dist/components/shared/HorizontalDividerPro/HorizontalDividerPro.emb.d.ts.map +1 -0
- package/dist/components/shared/HorizontalDividerPro/index.d.ts +7 -0
- package/dist/components/shared/HorizontalDividerPro/index.d.ts.map +1 -0
- package/dist/components/types/Align.type.emb.d.ts +3 -0
- package/dist/components/types/Align.type.emb.d.ts.map +1 -0
- package/dist/components/types/ComparisonPeriod.type.emb.d.ts +3 -0
- package/dist/components/types/ComparisonPeriod.type.emb.d.ts.map +1 -0
- package/dist/components/types/DisplayFormat.type.emb.d.ts +7 -0
- package/dist/components/types/DisplayFormat.type.emb.d.ts.map +1 -0
- package/dist/components/types/TableCellStyle.type.emb.d.ts +3 -0
- package/dist/components/types/TableCellStyle.type.emb.d.ts.map +1 -0
- package/dist/editors/ColorEditor/Color.type.emb.d.ts +3 -0
- package/dist/editors/ColorEditor/Color.type.emb.d.ts.map +1 -0
- package/dist/editors/ColorEditor/ColorEditor.emb.d.ts +11 -0
- package/dist/editors/ColorEditor/ColorEditor.emb.d.ts.map +1 -0
- package/dist/embeddable-components.json +30 -28
- package/dist/embeddable-theme-0137e.js +1397 -1395
- package/dist/{granularity.utils-COYhEZ3f.js → granularity.utils-B0IaQ58A.js} +3 -3
- package/dist/{granularity.utils-COYhEZ3f.js.map → granularity.utils-B0IaQ58A.js.map} +1 -1
- package/dist/{index-1LMAV7gp.js → index-B329Sipk.js} +5 -5
- package/dist/{index-1LMAV7gp.js.map → index-B329Sipk.js.map} +1 -1
- package/dist/{index-DA8SRHFS.js → index-BM3-McL7.js} +16 -16
- package/dist/{index-DA8SRHFS.js.map → index-BM3-McL7.js.map} +1 -1
- package/dist/{index-CKM7Eu4P.js → index-Bfe6zioU.js} +8 -8
- package/dist/{index-CKM7Eu4P.js.map → index-Bfe6zioU.js.map} +1 -1
- package/dist/{index-BIYe6Mxp.js → index-BkTScvL1.js} +16 -16
- package/dist/{index-BIYe6Mxp.js.map → index-BkTScvL1.js.map} +1 -1
- package/dist/{index-CwEdsnOz.js → index-Bsc-5ZTL.js} +10 -10
- package/dist/{index-CwEdsnOz.js.map → index-Bsc-5ZTL.js.map} +1 -1
- package/dist/{index-CfSyZuh4.js → index-C2Wozewk.js} +20 -20
- package/dist/{index-CfSyZuh4.js.map → index-C2Wozewk.js.map} +1 -1
- package/dist/{index-D65Rq3k-.js → index-C3xLwJI6.js} +6 -6
- package/dist/{index-D65Rq3k-.js.map → index-C3xLwJI6.js.map} +1 -1
- package/dist/{index-BfrhwVwQ.js → index-C7J2Se__.js} +2 -2
- package/dist/{index-BfrhwVwQ.js.map → index-C7J2Se__.js.map} +1 -1
- package/dist/{index-DKN0VZXM.js → index-C7hq6COa.js} +13 -13
- package/dist/{index-DKN0VZXM.js.map → index-C7hq6COa.js.map} +1 -1
- package/dist/{index-CWAfLnlR.js → index-C9QX77-Q.js} +11 -11
- package/dist/{index-CWAfLnlR.js.map → index-C9QX77-Q.js.map} +1 -1
- package/dist/{index-Ci4fIfj8.js → index-CGKzl5qD.js} +4 -4
- package/dist/{index-Ci4fIfj8.js.map → index-CGKzl5qD.js.map} +1 -1
- package/dist/{index-DILo_r4-.js → index-CH7FDkJO.js} +8 -8
- package/dist/{index-DILo_r4-.js.map → index-CH7FDkJO.js.map} +1 -1
- package/dist/{index-DK0M5jbC.js → index-CMhOFWvJ.js} +10 -10
- package/dist/{index-DK0M5jbC.js.map → index-CMhOFWvJ.js.map} +1 -1
- package/dist/{index-BwwtBJde.js → index-CphG-wyR.js} +9 -9
- package/dist/{index-BwwtBJde.js.map → index-CphG-wyR.js.map} +1 -1
- package/dist/{index-BownhTSN.js → index-CsyJsqlo.js} +10 -10
- package/dist/{index-BownhTSN.js.map → index-CsyJsqlo.js.map} +1 -1
- package/dist/{index-BLtSOe_I.js → index-CtfhLdt0.js} +7 -7
- package/dist/{index-BLtSOe_I.js.map → index-CtfhLdt0.js.map} +1 -1
- package/dist/{index-B0Z1wHFa.js → index-CweUFcf6.js} +5 -5
- package/dist/{index-B0Z1wHFa.js.map → index-CweUFcf6.js.map} +1 -1
- package/dist/{index-d6y81S-C.js → index-D3pwHgeL.js} +15 -15
- package/dist/{index-d6y81S-C.js.map → index-D3pwHgeL.js.map} +1 -1
- package/dist/{index-DN5C1NTk.js → index-D9JaX9ut.js} +5 -5
- package/dist/{index-DN5C1NTk.js.map → index-D9JaX9ut.js.map} +1 -1
- package/dist/{index-5qsLc5gK.js → index-DEMHcox3.js} +5 -5
- package/dist/{index-5qsLc5gK.js.map → index-DEMHcox3.js.map} +1 -1
- package/dist/{index-77C7AtLU.js → index-DRlAqfj6.js} +5 -5
- package/dist/{index-77C7AtLU.js.map → index-DRlAqfj6.js.map} +1 -1
- package/dist/{index-CDfc3oko.js → index-Dvi2ZFRq.js} +7 -7
- package/dist/{index-CDfc3oko.js.map → index-Dvi2ZFRq.js.map} +1 -1
- package/dist/{index-CWoNbj8I.js → index-IhFKORj0.js} +5 -5
- package/dist/{index-CWoNbj8I.js.map → index-IhFKORj0.js.map} +1 -1
- package/dist/{index-r9MBmJ_q.js → index-JCUdzaRx.js} +5 -5
- package/dist/{index-r9MBmJ_q.js.map → index-JCUdzaRx.js.map} +1 -1
- package/dist/{index-ChBjG9Oi.js → index-U8AIqj5k.js} +11 -11
- package/dist/{index-ChBjG9Oi.js.map → index-U8AIqj5k.js.map} +1 -1
- package/dist/{index-C6YdlImA.js → index-bk9MWwoH.js} +10 -10
- package/dist/{index-C6YdlImA.js.map → index-bk9MWwoH.js.map} +1 -1
- package/dist/{index-s6HzicAx.js → index-zogGkOng.js} +20 -20
- package/dist/{index-s6HzicAx.js.map → index-zogGkOng.js.map} +1 -1
- package/dist/index.js +126 -125
- package/dist/index.js.map +1 -1
- package/dist/{pies.utils-CxJtBPWG.js → pies.utils-vTQtc_xP.js} +5 -5
- package/dist/{pies.utils-CxJtBPWG.js.map → pies.utils-vTQtc_xP.js.map} +1 -1
- package/dist/{preview.data.constants-DWqfMVjy.js → preview.data.constants-BeVHkWI3.js} +6 -5
- package/dist/{preview.data.constants-DWqfMVjy.js.map → preview.data.constants-BeVHkWI3.js.map} +1 -1
- package/dist/remarkable-pro.css +1 -1
- package/dist/{tables.utils-D4RGHDWw.js → tables.utils-DS3rr8kb.js} +4 -4
- package/dist/{tables.utils-D4RGHDWw.js.map → tables.utils-DS3rr8kb.js.map} +1 -1
- package/dist/theme/i18n/i18n.d.ts +1 -1
- package/dist/theme/styles/styles.constants.d.ts +1 -1
- package/dist/{timeRange.utils-D8kYnjqp.js → timeRange.utils-BVZuW4V9.js} +5 -5
- package/dist/{timeRange.utils-D8kYnjqp.js.map → timeRange.utils-BVZuW4V9.js.map} +1 -1
- package/package.json +6 -6
- package/dist/component.inputs.constants-Cj-atN8w.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index-
|
|
1
|
+
{"version":3,"file":"index-CH7FDkJO.js","sources":["../src/components/charts/pies/DonutChartPro/index.tsx"],"sourcesContent":["import { useTheme } from '@embeddable.com/react';\nimport { Theme } from '../../../../theme/theme.types';\nimport { getPieChartProOptions, getPieChartProData } from '../pies.utils';\nimport { DefaultPieChartProps } from '../pies.types';\nimport { i18nSetup } from '../../../../theme/i18n/i18n';\nimport { ChartCard } from '../../shared/ChartCard/ChartCard';\nimport { DonutChart } from '@embeddable.com/remarkable-ui';\nimport { mergician } from 'mergician';\nimport { resolveI18nProps } from '../../../component.utils';\n\nexport type DonutChartProProps = DefaultPieChartProps;\n\nconst DonutChartPro = (props: DonutChartProProps) => {\n const theme = useTheme() as Theme;\n i18nSetup(theme);\n\n const {\n description,\n dimension,\n maxLegendItems,\n measure,\n results,\n showLegend,\n showTooltips,\n showValueLabels,\n title,\n onSegmentClick,\n } = resolveI18nProps(props);\n\n const { hideMenu } = props;\n\n const data = getPieChartProData(\n { data: results.data, dimension, measure, maxLegendItems },\n theme,\n );\n\n const options = mergician(\n getPieChartProOptions(measure, theme),\n theme.charts.donutChartPro?.options ?? {},\n );\n\n const handleSegmentClick = (index: number | undefined) => {\n if (!onSegmentClick) return;\n onSegmentClick({\n dimensionValue: index === undefined ? undefined : results.data?.[index]?.[dimension.name],\n });\n };\n\n return (\n <ChartCard\n data={results}\n dimensionsAndMeasures={[dimension, measure]}\n errorMessage={results.error}\n description={description}\n title={title}\n hideMenu={hideMenu}\n >\n <DonutChart\n data={data}\n options={options}\n showLegend={showLegend}\n showTooltips={showTooltips}\n showValueLabels={showValueLabels}\n onSegmentClick={handleSegmentClick}\n />\n </ChartCard>\n );\n};\n\nexport default DonutChartPro;\n"],"names":["DonutChartPro","props","theme","useTheme","i18nSetup","description","dimension","maxLegendItems","measure","results","showLegend","showTooltips","showValueLabels","title","onSegmentClick","resolveI18nProps","hideMenu","data","getPieChartProData","options","mergician","getPieChartProOptions","_a","handleSegmentClick","index","_b","jsx","ChartCard","DonutChart"],"mappings":";;;;;AAYA,MAAMA,IAAgB,CAACC,MAA8B;;AACnD,QAAMC,IAAQC,EAAA;AACd,EAAAC,EAAUF,CAAK;AAEf,QAAM;AAAA,IACJ,aAAAG;AAAA,IACA,WAAAC;AAAA,IACA,gBAAAC;AAAA,IACA,SAAAC;AAAA,IACA,SAAAC;AAAA,IACA,YAAAC;AAAA,IACA,cAAAC;AAAA,IACA,iBAAAC;AAAA,IACA,OAAAC;AAAA,IACA,gBAAAC;AAAA,EAAA,IACEC,EAAiBd,CAAK,GAEpB,EAAE,UAAAe,MAAaf,GAEfgB,IAAOC;AAAA,IACX,EAAE,MAAMT,EAAQ,MAAM,WAAAH,GAAW,SAAAE,GAAS,gBAAAD,EAAA;AAAA,IAC1CL;AAAA,EAAA,GAGIiB,IAAUC;AAAA,IACdC,EAAsBb,GAASN,CAAK;AAAA,MACpCoB,IAAApB,EAAM,OAAO,kBAAb,gBAAAoB,EAA4B,YAAW,CAAA;AAAA,EAAC,GAGpCC,IAAqB,CAACC,MAA8B;;AACxD,IAAKV,KACLA,EAAe;AAAA,MACb,gBAAgBU,MAAU,WAAwBC,KAAAH,IAAAb,EAAQ,SAAR,gBAAAa,EAAeE,OAAf,OAAZ,SAAYC,EAAwBnB,EAAU;AAAA,IAAI,CACzF;AAAA,EACH;AAEA,SACEoB,gBAAAA,EAAAA;AAAAA,IAACC;AAAA,IAAA;AAAA,MACC,MAAMlB;AAAA,MACN,uBAAuB,CAACH,GAAWE,CAAO;AAAA,MAC1C,cAAcC,EAAQ;AAAA,MACtB,aAAAJ;AAAA,MACA,OAAAQ;AAAA,MACA,UAAAG;AAAA,MAEA,UAAAU,gBAAAA,EAAAA;AAAAA,QAACE;AAAA,QAAA;AAAA,UACC,MAAAX;AAAA,UACA,SAAAE;AAAA,UACA,YAAAT;AAAA,UACA,cAAAC;AAAA,UACA,iBAAAC;AAAA,UACA,gBAAgBW;AAAA,QAAA;AAAA,MAAA;AAAA,IAClB;AAAA,EAAA;AAGN;;;;"}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import { m as _, j as p, D as k } from "./Color.type.emb-
|
|
1
|
+
import { m as _, j as p, D as k } from "./Color.type.emb-Bon3x9VC.js";
|
|
2
2
|
import { useTheme as w } from "@embeddable.com/react";
|
|
3
|
-
import { g as O, a as y } from "./pies.utils-
|
|
4
|
-
import { g as F } from "./preview.data.constants-
|
|
5
|
-
import {
|
|
6
|
-
import { C as A } from "./ChartCard-
|
|
3
|
+
import { g as O, a as y } from "./pies.utils-vTQtc_xP.js";
|
|
4
|
+
import { g as F } from "./preview.data.constants-BeVHkWI3.js";
|
|
5
|
+
import { a as V, r as z } from "./component.utils-DubLDCwF.js";
|
|
6
|
+
import { C as A } from "./ChartCard-BO7MZwqM.js";
|
|
7
7
|
const E = (s) => {
|
|
8
8
|
var m, d, l;
|
|
9
9
|
const e = w(), g = F(e);
|
|
@@ -11,10 +11,10 @@ const E = (s) => {
|
|
|
11
11
|
const {
|
|
12
12
|
description: C,
|
|
13
13
|
dimension: o,
|
|
14
|
-
maxLegendItems:
|
|
14
|
+
maxLegendItems: f,
|
|
15
15
|
measure: a,
|
|
16
16
|
results: t,
|
|
17
|
-
showLegend:
|
|
17
|
+
showLegend: b,
|
|
18
18
|
showTooltips: P,
|
|
19
19
|
showValueLabels: x,
|
|
20
20
|
title: j,
|
|
@@ -23,7 +23,7 @@ const E = (s) => {
|
|
|
23
23
|
innerLabelText: L,
|
|
24
24
|
onSegmentClick: i
|
|
25
25
|
} = z(s), { hideMenu: S } = s, D = O(
|
|
26
|
-
{ data: t.data, dimension: o, measure: a, maxLegendItems:
|
|
26
|
+
{ data: t.data, dimension: o, measure: a, maxLegendItems: f },
|
|
27
27
|
e
|
|
28
28
|
), M = (c) => {
|
|
29
29
|
var u, h;
|
|
@@ -53,7 +53,7 @@ const E = (s) => {
|
|
|
53
53
|
subLabel: L,
|
|
54
54
|
data: D,
|
|
55
55
|
options: v,
|
|
56
|
-
showLegend:
|
|
56
|
+
showLegend: b,
|
|
57
57
|
showTooltips: P,
|
|
58
58
|
showValueLabels: x,
|
|
59
59
|
onSegmentClick: M
|
|
@@ -69,4 +69,4 @@ export {
|
|
|
69
69
|
E as D,
|
|
70
70
|
J as i
|
|
71
71
|
};
|
|
72
|
-
//# sourceMappingURL=index-
|
|
72
|
+
//# sourceMappingURL=index-CMhOFWvJ.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index-
|
|
1
|
+
{"version":3,"file":"index-CMhOFWvJ.js","sources":["../src/components/charts/pies/DonutLabelChartPro/index.tsx"],"sourcesContent":["import { useTheme } from '@embeddable.com/react';\nimport { Theme } from '../../../../theme/theme.types';\nimport { getPieChartProOptions, getPieChartProData } from '../pies.utils';\nimport { DefaultPieChartProps } from '../pies.types';\nimport { DataResponse, Measure } from '@embeddable.com/core';\nimport { getThemeFormatter } from '../../../../theme/formatter/formatter.utils';\nimport { i18nSetup } from '../../../../theme/i18n/i18n';\nimport { ChartCard } from '../../shared/ChartCard/ChartCard';\nimport { DonutChart } from '@embeddable.com/remarkable-ui';\nimport { mergician } from 'mergician';\nimport { resolveI18nProps } from '../../../component.utils';\n\nexport type DonutLabelChartProProps = DefaultPieChartProps & {\n innerLabelMeasure: Measure;\n innerLabelText?: string;\n resultsInnerLabel: DataResponse;\n};\n\nconst DonutChartPro = (props: DonutLabelChartProProps) => {\n const theme = useTheme() as Theme;\n const themeFormatter = getThemeFormatter(theme);\n i18nSetup(theme);\n\n const {\n description,\n dimension,\n maxLegendItems,\n measure,\n results,\n showLegend,\n showTooltips,\n showValueLabels,\n title,\n innerLabelMeasure,\n resultsInnerLabel,\n innerLabelText,\n onSegmentClick,\n } = resolveI18nProps(props);\n\n const { hideMenu } = props;\n\n const data = getPieChartProData(\n { data: results.data, dimension, measure, maxLegendItems },\n theme,\n );\n\n const handleSegmentClick = (index: number | undefined) => {\n if (!onSegmentClick) return;\n\n onSegmentClick({\n dimensionValue: index === undefined ? undefined : results.data?.[index]?.[dimension.name],\n });\n };\n\n const label = themeFormatter.data(\n innerLabelMeasure,\n resultsInnerLabel?.data?.[0]?.[innerLabelMeasure.name],\n );\n\n const options = mergician(\n getPieChartProOptions(measure, theme),\n theme.charts.donutLabelChartPro?.options ?? {},\n );\n\n return (\n <ChartCard\n data={results}\n dimensionsAndMeasures={[dimension, measure]}\n errorMessage={results.error}\n description={description}\n title={title}\n hideMenu={hideMenu}\n >\n <DonutChart\n label={label}\n subLabel={innerLabelText}\n data={data}\n options={options}\n showLegend={showLegend}\n showTooltips={showTooltips}\n showValueLabels={showValueLabels}\n onSegmentClick={handleSegmentClick}\n />\n </ChartCard>\n );\n};\n\nexport default DonutChartPro;\n"],"names":["DonutChartPro","props","theme","useTheme","themeFormatter","getThemeFormatter","i18nSetup","description","dimension","maxLegendItems","measure","results","showLegend","showTooltips","showValueLabels","title","innerLabelMeasure","resultsInnerLabel","innerLabelText","onSegmentClick","resolveI18nProps","hideMenu","data","getPieChartProData","handleSegmentClick","index","_b","_a","label","options","mergician","getPieChartProOptions","_c","jsx","ChartCard","DonutChart"],"mappings":";;;;;;AAkBA,MAAMA,IAAgB,CAACC,MAAmC;;AACxD,QAAMC,IAAQC,EAAA,GACRC,IAAiBC,EAAkBH,CAAK;AAC9C,EAAAI,EAAUJ,CAAK;AAEf,QAAM;AAAA,IACJ,aAAAK;AAAA,IACA,WAAAC;AAAA,IACA,gBAAAC;AAAA,IACA,SAAAC;AAAA,IACA,SAAAC;AAAA,IACA,YAAAC;AAAA,IACA,cAAAC;AAAA,IACA,iBAAAC;AAAA,IACA,OAAAC;AAAA,IACA,mBAAAC;AAAA,IACA,mBAAAC;AAAA,IACA,gBAAAC;AAAA,IACA,gBAAAC;AAAA,EAAA,IACEC,EAAiBnB,CAAK,GAEpB,EAAE,UAAAoB,MAAapB,GAEfqB,IAAOC;AAAA,IACX,EAAE,MAAMZ,EAAQ,MAAM,WAAAH,GAAW,SAAAE,GAAS,gBAAAD,EAAA;AAAA,IAC1CP;AAAA,EAAA,GAGIsB,IAAqB,CAACC,MAA8B;;AACxD,IAAKN,KAELA,EAAe;AAAA,MACb,gBAAgBM,MAAU,WAAwBC,KAAAC,IAAAhB,EAAQ,SAAR,gBAAAgB,EAAeF,OAAf,OAAZ,SAAYC,EAAwBlB,EAAU;AAAA,IAAI,CACzF;AAAA,EACH,GAEMoB,IAAQxB,EAAe;AAAA,IAC3BY;AAAA,KACAU,KAAAC,IAAAV,KAAA,gBAAAA,EAAmB,SAAnB,gBAAAU,EAA0B,OAA1B,gBAAAD,EAA+BV,EAAkB;AAAA,EAAI,GAGjDa,IAAUC;AAAA,IACdC,EAAsBrB,GAASR,CAAK;AAAA,MACpC8B,IAAA9B,EAAM,OAAO,uBAAb,gBAAA8B,EAAiC,YAAW,CAAA;AAAA,EAAC;AAG/C,SACEC,gBAAAA,EAAAA;AAAAA,IAACC;AAAA,IAAA;AAAA,MACC,MAAMvB;AAAA,MACN,uBAAuB,CAACH,GAAWE,CAAO;AAAA,MAC1C,cAAcC,EAAQ;AAAA,MACtB,aAAAJ;AAAA,MACA,OAAAQ;AAAA,MACA,UAAAM;AAAA,MAEA,UAAAY,gBAAAA,EAAAA;AAAAA,QAACE;AAAA,QAAA;AAAA,UACC,OAAAP;AAAA,UACA,UAAUV;AAAA,UACV,MAAAI;AAAA,UACA,SAAAO;AAAA,UACA,YAAAjB;AAAA,UACA,cAAAC;AAAA,UACA,iBAAAC;AAAA,UACA,gBAAgBU;AAAA,QAAA;AAAA,MAAA;AAAA,IAClB;AAAA,EAAA;AAGN;;;;"}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { w as z, x as N, j as t, y as q, z as B, E as d, F as G, G as J, J as Q, N as A, O as H, Q as K } from "./Color.type.emb-Bon3x9VC.js";
|
|
2
2
|
import { useTheme as U } from "@embeddable.com/react";
|
|
3
3
|
import { c as P, u as W, g as X, b as v, a as Y } from "./dates.utils-D13NY0HZ.js";
|
|
4
|
-
import {
|
|
5
|
-
import { E as ee } from "./EditorCard-
|
|
4
|
+
import { b as Z, a as $, r as V, i as m } from "./component.utils-DubLDCwF.js";
|
|
5
|
+
import { E as ee } from "./EditorCard-BxYVJiPi.js";
|
|
6
6
|
import { useState as R, useEffect as ae } from "react";
|
|
7
|
-
import { I as te } from "./IconCalendarFilled-
|
|
7
|
+
import { I as te } from "./IconCalendarFilled-D8K6d94f.js";
|
|
8
8
|
const ne = (o) => o.map((n) => ({
|
|
9
9
|
rightLabel: P(n.getRange(), n.dateFormat),
|
|
10
10
|
value: n.value,
|
|
@@ -50,7 +50,7 @@ const ne = (o) => o.map((n) => ({
|
|
|
50
50
|
onOpenChange: p,
|
|
51
51
|
avoidCollisions: !1,
|
|
52
52
|
triggerComponent: /* @__PURE__ */ t.jsx(
|
|
53
|
-
|
|
53
|
+
K,
|
|
54
54
|
{
|
|
55
55
|
startIcon: te,
|
|
56
56
|
"aria-label": C,
|
|
@@ -81,7 +81,7 @@ const ne = (o) => o.map((n) => ({
|
|
|
81
81
|
}
|
|
82
82
|
),
|
|
83
83
|
/* @__PURE__ */ t.jsx(
|
|
84
|
-
|
|
84
|
+
Q,
|
|
85
85
|
{
|
|
86
86
|
size: "small",
|
|
87
87
|
disabled: E,
|
|
@@ -89,7 +89,7 @@ const ne = (o) => o.map((n) => ({
|
|
|
89
89
|
children: m.t("editors.dateRangePicker.apply")
|
|
90
90
|
}
|
|
91
91
|
)
|
|
92
|
-
] }) : /* @__PURE__ */ t.jsxs(
|
|
92
|
+
] }) : /* @__PURE__ */ t.jsxs(A, { children: [
|
|
93
93
|
/* @__PURE__ */ t.jsx(
|
|
94
94
|
d,
|
|
95
95
|
{
|
|
@@ -97,7 +97,7 @@ const ne = (o) => o.map((n) => ({
|
|
|
97
97
|
onClick: (a) => {
|
|
98
98
|
a.preventDefault(), f(!0);
|
|
99
99
|
},
|
|
100
|
-
endIcon: /* @__PURE__ */ t.jsx(
|
|
100
|
+
endIcon: /* @__PURE__ */ t.jsx(H, {})
|
|
101
101
|
}
|
|
102
102
|
),
|
|
103
103
|
h.map((a) => /* @__PURE__ */ t.jsx(
|
|
@@ -121,4 +121,4 @@ export {
|
|
|
121
121
|
ne as g,
|
|
122
122
|
fe as i
|
|
123
123
|
};
|
|
124
|
-
//# sourceMappingURL=index-
|
|
124
|
+
//# sourceMappingURL=index-CphG-wyR.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index-BwwtBJde.js","sources":["../src/components/editors/dates/DateRangePickerPresetsPro/DateRangePickerPresetsPro.utils.ts","../src/components/editors/dates/DateRangePickerPresetsPro/index.tsx"],"sourcesContent":["import { DateRangeSelectFieldProOption } from './DateRangePickerPresetsPro.types';\nimport { SelectListOptionProps } from '@embeddable.com/remarkable-ui';\nimport { resolveI18nString } from '../../../component.utils';\nimport { getTimeRangeLabel } from '../dates.utils';\n\nexport const getDateRangeSelectFieldProOptions = (\n dateRangeSelectFieldProOptions: DateRangeSelectFieldProOption[],\n): SelectListOptionProps[] => {\n return dateRangeSelectFieldProOptions.map((option) => {\n return {\n rightLabel: getTimeRangeLabel(option.getRange(), option.dateFormat),\n value: option.value,\n label: resolveI18nString(option.label),\n };\n });\n};\n","import { useTheme } from '@embeddable.com/react';\nimport {\n Button,\n DateRangePicker,\n Dropdown,\n SelectFieldContent,\n SelectFieldContentList,\n SelectListOption,\n DateRange,\n SelectFieldTrigger,\n isSameDateRange,\n shallowEqual,\n} from '@embeddable.com/remarkable-ui';\nimport { Theme } from '../../../../theme/theme.types';\nimport { useLoadDayjsLocale } from '../../../../utils/date.utils';\nimport { getDateRangeSelectFieldProOptions } from './DateRangePickerPresetsPro.utils';\nimport { TimeRange } from '@embeddable.com/core';\nimport { resolveI18nProps } from '../../../component.utils';\nimport { EditorCard, EditorCardHeaderProps } from '../../shared/EditorCard/EditorCard';\nimport { IconCalendarFilled, IconChevronLeft, IconChevronRight } from '@tabler/icons-react';\nimport { i18n, i18nSetup } from '../../../../theme/i18n/i18n';\nimport { useEffect, useState } from 'react';\nimport styles from './DateRangePickerPresetsPro.module.css';\nimport {\n getDateRangeFromTimeRange,\n getTimeRangeFromDateRange,\n getTimeRangeFromPresets,\n getTimeRangeLabel,\n} from '../dates.utils';\n\nexport type DateRangePickerPresetsProps = {\n onChange: (newDateRange: TimeRange) => void;\n placeholder?: string;\n selectedValue?: TimeRange;\n\n clearable?: boolean;\n showCustomRangeOptions?: boolean;\n showTwoMonths?: boolean;\n} & EditorCardHeaderProps;\n\nconst DateRangePickerPresets = (props: DateRangePickerPresetsProps) => {\n const theme: Theme = useTheme() as Theme;\n i18nSetup(theme);\n const { dayjsLocaleReady } = useLoadDayjsLocale();\n const { onChange, clearable, selectedValue, showCustomRangeOptions, showTwoMonths } = props;\n const onlyDateRangePicker = !showCustomRangeOptions;\n const [showDateRangePicker, setShowDateRangePicker] = useState(onlyDateRangePicker);\n\n const [isOpen, setIsOpen] = useState(false);\n const [dateRange, setDateRange] = useState<DateRange | undefined>(\n getDateRangeFromTimeRange(selectedValue),\n );\n\n const dateRangeOptions = theme.defaults.dateRangesOptions;\n\n useEffect(() => {\n if (!dayjsLocaleReady) {\n return;\n }\n // Step 1: Convert relativeTimeString to actual time range (from/to)\n const newTimeRange = getTimeRangeFromPresets(selectedValue, dateRangeOptions);\n\n if (!shallowEqual(newTimeRange, selectedValue)) {\n onChange(newTimeRange);\n }\n }, [selectedValue, dayjsLocaleReady, onChange, dateRangeOptions]);\n\n if (!dayjsLocaleReady) {\n return null;\n }\n\n const { description, placeholder, title, tooltip } = resolveI18nProps(props);\n\n const options = getDateRangeSelectFieldProOptions(dateRangeOptions);\n\n const handleOptionChange = (newValue: string | undefined) => {\n const newTimeRange = getTimeRangeFromPresets(\n { relativeTimeString: newValue } as TimeRange,\n dateRangeOptions,\n );\n\n onChange(newTimeRange);\n setDateRange(undefined);\n };\n\n const handleDateRangeChange = (newDateRange: DateRange | undefined) => {\n onChange(getTimeRangeFromDateRange(newDateRange));\n setIsOpen(false);\n };\n\n const handleClear = () => {\n setDateRange(undefined);\n onChange(undefined);\n };\n\n const getValueLabel = () => {\n if (selectedValue?.relativeTimeString) {\n const option = options.find((option) => option.value === selectedValue.relativeTimeString);\n if (option) {\n return option.label;\n }\n }\n\n if (selectedValue?.from && selectedValue?.to) {\n return getTimeRangeLabel(selectedValue, 'MMM DD');\n }\n\n return '';\n };\n\n const valueLabel = getValueLabel();\n\n const locale = theme.i18n.language ?? theme.formatter.locale;\n const isSubmitDisabled = isSameDateRange(dateRange, selectedValue);\n const numberOfMonths = showTwoMonths ? 2 : 1;\n\n return (\n <EditorCard title={title} description={description} tooltip={tooltip}>\n <Dropdown\n open={isOpen}\n onOpenChange={setIsOpen}\n avoidCollisions={false}\n triggerComponent={\n <SelectFieldTrigger\n startIcon={IconCalendarFilled}\n aria-label={placeholder}\n placeholder={placeholder}\n valueLabel={valueLabel}\n onClear={handleClear}\n isClearable={clearable}\n />\n }\n >\n <SelectFieldContent fitContent className={styles.dateRangePickerContent}>\n {showDateRangePicker ? (\n <div className={styles.dateRangePickerContainer}>\n {!onlyDateRangePicker && (\n <SelectListOption\n label={i18n.t('editors.dateRangePicker.backToPresets')}\n onClick={(e) => {\n e.preventDefault();\n setShowDateRangePicker(false);\n }}\n startIcon={<IconChevronLeft />}\n />\n )}\n <DateRangePicker\n locale={locale}\n numberOfMonths={numberOfMonths}\n value={dateRange}\n onChange={setDateRange}\n />\n <Button\n size=\"small\"\n disabled={isSubmitDisabled}\n onClick={() => handleDateRangeChange(dateRange)}\n >\n {i18n.t('editors.dateRangePicker.apply')}\n </Button>\n </div>\n ) : (\n <SelectFieldContentList>\n <SelectListOption\n label={i18n.t('editors.dateRangePicker.custom')}\n onClick={(e) => {\n e.preventDefault();\n setShowDateRangePicker(true);\n }}\n endIcon={<IconChevronRight />}\n />\n {options.map((option) => (\n <SelectListOption\n key={option.value}\n {...option}\n isSelected={selectedValue?.relativeTimeString === option.value}\n onClick={() => handleOptionChange(option.value)}\n />\n ))}\n </SelectFieldContentList>\n )}\n </SelectFieldContent>\n </Dropdown>\n </EditorCard>\n );\n};\n\nexport default DateRangePickerPresets;\n"],"names":["getDateRangeSelectFieldProOptions","dateRangeSelectFieldProOptions","option","getTimeRangeLabel","resolveI18nString","DateRangePickerPresets","props","theme","useTheme","i18nSetup","dayjsLocaleReady","useLoadDayjsLocale","onChange","clearable","selectedValue","showCustomRangeOptions","showTwoMonths","onlyDateRangePicker","showDateRangePicker","setShowDateRangePicker","useState","isOpen","setIsOpen","dateRange","setDateRange","getDateRangeFromTimeRange","dateRangeOptions","useEffect","newTimeRange","getTimeRangeFromPresets","shallowEqual","description","placeholder","title","tooltip","resolveI18nProps","options","handleOptionChange","newValue","handleDateRangeChange","newDateRange","getTimeRangeFromDateRange","handleClear","valueLabel","locale","isSubmitDisabled","isSameDateRange","numberOfMonths","jsx","EditorCard","Dropdown","SelectFieldTrigger","IconCalendarFilled","SelectFieldContent","styles","jsxs","SelectListOption","i18n","e","IconChevronLeft","DateRangePicker","Button","SelectFieldContentList","IconChevronRight"],"mappings":";;;;;;;AAKO,MAAMA,KAAoC,CAC/CC,MAEOA,EAA+B,IAAI,CAACC,OAClC;AAAA,EACL,YAAYC,EAAkBD,EAAO,SAAA,GAAYA,EAAO,UAAU;AAAA,EAClE,OAAOA,EAAO;AAAA,EACd,OAAOE,EAAkBF,EAAO,KAAK;AAAA,EAExC;;;GC0BGG,KAAyB,CAACC,MAAuC;AACrE,QAAMC,IAAeC,EAAA;AACrB,EAAAC,EAAUF,CAAK;AACf,QAAM,EAAE,kBAAAG,EAAA,IAAqBC,EAAA,GACvB,EAAE,UAAAC,GAAU,WAAAC,GAAW,eAAAC,GAAe,wBAAAC,GAAwB,eAAAC,MAAkBV,GAChFW,IAAsB,CAACF,GACvB,CAACG,GAAqBC,CAAsB,IAAIC,EAASH,CAAmB,GAE5E,CAACI,GAAQC,CAAS,IAAIF,EAAS,EAAK,GACpC,CAACG,GAAWC,CAAY,IAAIJ;AAAA,IAChCK,EAA0BX,CAAa;AAAA,EAAA,GAGnCY,IAAmBnB,EAAM,SAAS;AAcxC,MAZAoB,GAAU,MAAM;AACd,QAAI,CAACjB;AACH;AAGF,UAAMkB,IAAeC,EAAwBf,GAAeY,CAAgB;AAE5E,IAAKI,EAAaF,GAAcd,CAAa,KAC3CF,EAASgB,CAAY;AAAA,EAEzB,GAAG,CAACd,GAAeJ,GAAkBE,GAAUc,CAAgB,CAAC,GAE5D,CAAChB;AACH,WAAO;AAGT,QAAM,EAAE,aAAAqB,GAAa,aAAAC,GAAa,OAAAC,GAAO,SAAAC,EAAA,IAAYC,EAAiB7B,CAAK,GAErE8B,IAAUpC,GAAkC0B,CAAgB,GAE5DW,IAAqB,CAACC,MAAiC;AAC3D,UAAMV,IAAeC;AAAA,MACnB,EAAE,oBAAoBS,EAAA;AAAA,MACtBZ;AAAA,IAAA;AAGF,IAAAd,EAASgB,CAAY,GACrBJ,EAAa,MAAS;AAAA,EACxB,GAEMe,IAAwB,CAACC,MAAwC;AACrE,IAAA5B,EAAS6B,EAA0BD,CAAY,CAAC,GAChDlB,EAAU,EAAK;AAAA,EACjB,GAEMoB,IAAc,MAAM;AACxB,IAAAlB,EAAa,MAAS,GACtBZ,EAAS,MAAS;AAAA,EACpB,GAiBM+B,KAfgB,MAAM;AAC1B,QAAI7B,KAAA,QAAAA,EAAe,oBAAoB;AACrC,YAAMZ,IAASkC,EAAQ,KAAK,CAAClC,MAAWA,EAAO,UAAUY,EAAc,kBAAkB;AACzF,UAAIZ;AACF,eAAOA,EAAO;AAAA,IAElB;AAEA,WAAIY,KAAA,QAAAA,EAAe,SAAQA,KAAA,QAAAA,EAAe,MACjCX,EAAkBW,GAAe,QAAQ,IAG3C;AAAA,EACT,GAEmB,GAEb8B,IAASrC,EAAM,KAAK,YAAYA,EAAM,UAAU,QAChDsC,IAAmBC,EAAgBvB,GAAWT,CAAa,GAC3DiC,IAAiB/B,IAAgB,IAAI;AAE3C,SACEgC,gBAAAA,EAAAA,IAACC,IAAA,EAAW,OAAAhB,GAAc,aAAAF,GAA0B,SAAAG,GAClD,UAAAc,gBAAAA,EAAAA;AAAAA,IAACE;AAAA,IAAA;AAAA,MACC,MAAM7B;AAAA,MACN,cAAcC;AAAA,MACd,iBAAiB;AAAA,MACjB,kBACE0B,gBAAAA,EAAAA;AAAAA,QAACG;AAAA,QAAA;AAAA,UACC,WAAWC;AAAA,UACX,cAAYpB;AAAA,UACZ,aAAAA;AAAA,UACA,YAAAW;AAAA,UACA,SAASD;AAAA,UACT,aAAa7B;AAAA,QAAA;AAAA,MAAA;AAAA,MAIjB,UAAAmC,gBAAAA,EAAAA,IAACK,GAAA,EAAmB,YAAU,IAAC,WAAWC,EAAO,wBAC9C,UAAApC,IACCqC,gBAAAA,EAAAA,KAAC,OAAA,EAAI,WAAWD,EAAO,0BACpB,UAAA;AAAA,QAAA,CAACrC,KACA+B,gBAAAA,EAAAA;AAAAA,UAACQ;AAAA,UAAA;AAAA,YACC,OAAOC,EAAK,EAAE,uCAAuC;AAAA,YACrD,SAAS,CAACC,MAAM;AACd,cAAAA,EAAE,eAAA,GACFvC,EAAuB,EAAK;AAAA,YAC9B;AAAA,YACA,iCAAYwC,GAAA,CAAA,CAAgB;AAAA,UAAA;AAAA,QAAA;AAAA,QAGhCX,gBAAAA,EAAAA;AAAAA,UAACY;AAAA,UAAA;AAAA,YACC,QAAAhB;AAAA,YACA,gBAAAG;AAAA,YACA,OAAOxB;AAAA,YACP,UAAUC;AAAA,UAAA;AAAA,QAAA;AAAA,QAEZwB,gBAAAA,EAAAA;AAAAA,UAACa;AAAA,UAAA;AAAA,YACC,MAAK;AAAA,YACL,UAAUhB;AAAA,YACV,SAAS,MAAMN,EAAsBhB,CAAS;AAAA,YAE7C,UAAAkC,EAAK,EAAE,+BAA+B;AAAA,UAAA;AAAA,QAAA;AAAA,MACzC,EAAA,CACF,2BAECK,GAAA,EACC,UAAA;AAAA,QAAAd,gBAAAA,EAAAA;AAAAA,UAACQ;AAAA,UAAA;AAAA,YACC,OAAOC,EAAK,EAAE,gCAAgC;AAAA,YAC9C,SAAS,CAACC,MAAM;AACd,cAAAA,EAAE,eAAA,GACFvC,EAAuB,EAAI;AAAA,YAC7B;AAAA,YACA,+BAAU4C,GAAA,CAAA,CAAiB;AAAA,UAAA;AAAA,QAAA;AAAA,QAE5B3B,EAAQ,IAAI,CAAClC,MACZ8C,gBAAAA,EAAAA;AAAAA,UAACQ;AAAA,UAAA;AAAA,YAEE,GAAGtD;AAAA,YACJ,aAAYY,KAAA,gBAAAA,EAAe,wBAAuBZ,EAAO;AAAA,YACzD,SAAS,MAAMmC,EAAmBnC,EAAO,KAAK;AAAA,UAAA;AAAA,UAHzCA,EAAO;AAAA,QAAA,CAKf;AAAA,MAAA,EAAA,CACH,EAAA,CAEJ;AAAA,IAAA;AAAA,EAAA,GAEJ;AAEJ;;;;"}
|
|
1
|
+
{"version":3,"file":"index-CphG-wyR.js","sources":["../src/components/editors/dates/DateRangePickerPresetsPro/DateRangePickerPresetsPro.utils.ts","../src/components/editors/dates/DateRangePickerPresetsPro/index.tsx"],"sourcesContent":["import { DateRangeSelectFieldProOption } from './DateRangePickerPresetsPro.types';\nimport { SelectListOptionProps } from '@embeddable.com/remarkable-ui';\nimport { resolveI18nString } from '../../../component.utils';\nimport { getTimeRangeLabel } from '../dates.utils';\n\nexport const getDateRangeSelectFieldProOptions = (\n dateRangeSelectFieldProOptions: DateRangeSelectFieldProOption[],\n): SelectListOptionProps[] => {\n return dateRangeSelectFieldProOptions.map((option) => {\n return {\n rightLabel: getTimeRangeLabel(option.getRange(), option.dateFormat),\n value: option.value,\n label: resolveI18nString(option.label),\n };\n });\n};\n","import { useTheme } from '@embeddable.com/react';\nimport {\n Button,\n DateRangePicker,\n Dropdown,\n SelectFieldContent,\n SelectFieldContentList,\n SelectListOption,\n DateRange,\n SelectFieldTrigger,\n isSameDateRange,\n shallowEqual,\n} from '@embeddable.com/remarkable-ui';\nimport { Theme } from '../../../../theme/theme.types';\nimport { useLoadDayjsLocale } from '../../../../utils/date.utils';\nimport { getDateRangeSelectFieldProOptions } from './DateRangePickerPresetsPro.utils';\nimport { TimeRange } from '@embeddable.com/core';\nimport { resolveI18nProps } from '../../../component.utils';\nimport { EditorCard, EditorCardHeaderProps } from '../../shared/EditorCard/EditorCard';\nimport { IconCalendarFilled, IconChevronLeft, IconChevronRight } from '@tabler/icons-react';\nimport { i18n, i18nSetup } from '../../../../theme/i18n/i18n';\nimport { useEffect, useState } from 'react';\nimport styles from './DateRangePickerPresetsPro.module.css';\nimport {\n getDateRangeFromTimeRange,\n getTimeRangeFromDateRange,\n getTimeRangeFromPresets,\n getTimeRangeLabel,\n} from '../dates.utils';\n\nexport type DateRangePickerPresetsProps = {\n onChange: (newDateRange: TimeRange) => void;\n placeholder?: string;\n selectedValue?: TimeRange;\n\n clearable?: boolean;\n showCustomRangeOptions?: boolean;\n showTwoMonths?: boolean;\n} & EditorCardHeaderProps;\n\nconst DateRangePickerPresets = (props: DateRangePickerPresetsProps) => {\n const theme: Theme = useTheme() as Theme;\n i18nSetup(theme);\n const { dayjsLocaleReady } = useLoadDayjsLocale();\n const { onChange, clearable, selectedValue, showCustomRangeOptions, showTwoMonths } = props;\n const onlyDateRangePicker = !showCustomRangeOptions;\n const [showDateRangePicker, setShowDateRangePicker] = useState(onlyDateRangePicker);\n\n const [isOpen, setIsOpen] = useState(false);\n const [dateRange, setDateRange] = useState<DateRange | undefined>(\n getDateRangeFromTimeRange(selectedValue),\n );\n\n const dateRangeOptions = theme.defaults.dateRangesOptions;\n\n useEffect(() => {\n if (!dayjsLocaleReady) {\n return;\n }\n // Step 1: Convert relativeTimeString to actual time range (from/to)\n const newTimeRange = getTimeRangeFromPresets(selectedValue, dateRangeOptions);\n\n if (!shallowEqual(newTimeRange, selectedValue)) {\n onChange(newTimeRange);\n }\n }, [selectedValue, dayjsLocaleReady, onChange, dateRangeOptions]);\n\n if (!dayjsLocaleReady) {\n return null;\n }\n\n const { description, placeholder, title, tooltip } = resolveI18nProps(props);\n\n const options = getDateRangeSelectFieldProOptions(dateRangeOptions);\n\n const handleOptionChange = (newValue: string | undefined) => {\n const newTimeRange = getTimeRangeFromPresets(\n { relativeTimeString: newValue } as TimeRange,\n dateRangeOptions,\n );\n\n onChange(newTimeRange);\n setDateRange(undefined);\n };\n\n const handleDateRangeChange = (newDateRange: DateRange | undefined) => {\n onChange(getTimeRangeFromDateRange(newDateRange));\n setIsOpen(false);\n };\n\n const handleClear = () => {\n setDateRange(undefined);\n onChange(undefined);\n };\n\n const getValueLabel = () => {\n if (selectedValue?.relativeTimeString) {\n const option = options.find((option) => option.value === selectedValue.relativeTimeString);\n if (option) {\n return option.label;\n }\n }\n\n if (selectedValue?.from && selectedValue?.to) {\n return getTimeRangeLabel(selectedValue, 'MMM DD');\n }\n\n return '';\n };\n\n const valueLabel = getValueLabel();\n\n const locale = theme.i18n.language ?? theme.formatter.locale;\n const isSubmitDisabled = isSameDateRange(dateRange, selectedValue);\n const numberOfMonths = showTwoMonths ? 2 : 1;\n\n return (\n <EditorCard title={title} description={description} tooltip={tooltip}>\n <Dropdown\n open={isOpen}\n onOpenChange={setIsOpen}\n avoidCollisions={false}\n triggerComponent={\n <SelectFieldTrigger\n startIcon={IconCalendarFilled}\n aria-label={placeholder}\n placeholder={placeholder}\n valueLabel={valueLabel}\n onClear={handleClear}\n isClearable={clearable}\n />\n }\n >\n <SelectFieldContent fitContent className={styles.dateRangePickerContent}>\n {showDateRangePicker ? (\n <div className={styles.dateRangePickerContainer}>\n {!onlyDateRangePicker && (\n <SelectListOption\n label={i18n.t('editors.dateRangePicker.backToPresets')}\n onClick={(e) => {\n e.preventDefault();\n setShowDateRangePicker(false);\n }}\n startIcon={<IconChevronLeft />}\n />\n )}\n <DateRangePicker\n locale={locale}\n numberOfMonths={numberOfMonths}\n value={dateRange}\n onChange={setDateRange}\n />\n <Button\n size=\"small\"\n disabled={isSubmitDisabled}\n onClick={() => handleDateRangeChange(dateRange)}\n >\n {i18n.t('editors.dateRangePicker.apply')}\n </Button>\n </div>\n ) : (\n <SelectFieldContentList>\n <SelectListOption\n label={i18n.t('editors.dateRangePicker.custom')}\n onClick={(e) => {\n e.preventDefault();\n setShowDateRangePicker(true);\n }}\n endIcon={<IconChevronRight />}\n />\n {options.map((option) => (\n <SelectListOption\n key={option.value}\n {...option}\n isSelected={selectedValue?.relativeTimeString === option.value}\n onClick={() => handleOptionChange(option.value)}\n />\n ))}\n </SelectFieldContentList>\n )}\n </SelectFieldContent>\n </Dropdown>\n </EditorCard>\n );\n};\n\nexport default DateRangePickerPresets;\n"],"names":["getDateRangeSelectFieldProOptions","dateRangeSelectFieldProOptions","option","getTimeRangeLabel","resolveI18nString","DateRangePickerPresets","props","theme","useTheme","i18nSetup","dayjsLocaleReady","useLoadDayjsLocale","onChange","clearable","selectedValue","showCustomRangeOptions","showTwoMonths","onlyDateRangePicker","showDateRangePicker","setShowDateRangePicker","useState","isOpen","setIsOpen","dateRange","setDateRange","getDateRangeFromTimeRange","dateRangeOptions","useEffect","newTimeRange","getTimeRangeFromPresets","shallowEqual","description","placeholder","title","tooltip","resolveI18nProps","options","handleOptionChange","newValue","handleDateRangeChange","newDateRange","getTimeRangeFromDateRange","handleClear","valueLabel","locale","isSubmitDisabled","isSameDateRange","numberOfMonths","jsx","EditorCard","Dropdown","SelectFieldTrigger","IconCalendarFilled","SelectFieldContent","styles","jsxs","SelectListOption","i18n","e","IconChevronLeft","DateRangePicker","Button","SelectFieldContentList","IconChevronRight"],"mappings":"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"}
|
|
@@ -1,16 +1,16 @@
|
|
|
1
|
-
import { j as i, K as x } from "./Color.type.emb-
|
|
2
|
-
import { useTheme as
|
|
3
|
-
import {
|
|
4
|
-
import { C as
|
|
5
|
-
import { g as
|
|
1
|
+
import { j as i, K as x } from "./Color.type.emb-Bon3x9VC.js";
|
|
2
|
+
import { useTheme as v } from "@embeddable.com/react";
|
|
3
|
+
import { a as C, r as K } from "./component.utils-DubLDCwF.js";
|
|
4
|
+
import { C as S } from "./ChartCard-BO7MZwqM.js";
|
|
5
|
+
import { g as b } from "./preview.data.constants-BeVHkWI3.js";
|
|
6
6
|
import { g as F } from "./kpis.utils-DsZ2GzuB.js";
|
|
7
7
|
const M = (r) => {
|
|
8
8
|
var a, n;
|
|
9
|
-
const o =
|
|
10
|
-
|
|
11
|
-
const { title: m, description: l, tooltip: u, displayNullAs: s } =
|
|
9
|
+
const o = v();
|
|
10
|
+
C(o);
|
|
11
|
+
const { title: m, description: l, tooltip: u, displayNullAs: s } = K(r), { measure: e, fontSize: d, hideMenu: p, results: t } = r, c = (n = (a = t.data) == null ? void 0 : a[0]) == null ? void 0 : n[e.name], f = b(o), h = (j) => f.data(e, j), g = F(t, e, !!s);
|
|
12
12
|
return /* @__PURE__ */ i.jsx(
|
|
13
|
-
|
|
13
|
+
S,
|
|
14
14
|
{
|
|
15
15
|
data: g,
|
|
16
16
|
dimensionsAndMeasures: [e],
|
|
@@ -38,4 +38,4 @@ export {
|
|
|
38
38
|
M as K,
|
|
39
39
|
A as i
|
|
40
40
|
};
|
|
41
|
-
//# sourceMappingURL=index-
|
|
41
|
+
//# sourceMappingURL=index-CsyJsqlo.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index-
|
|
1
|
+
{"version":3,"file":"index-CsyJsqlo.js","sources":["../src/components/charts/kpis/KpiChartNumberPro/index.tsx"],"sourcesContent":["import { useTheme } from '@embeddable.com/react';\nimport { Theme } from '../../../../theme/theme.types';\nimport { DataResponse, Measure } from '@embeddable.com/core';\nimport { i18nSetup } from '../../../../theme/i18n/i18n';\nimport { resolveI18nProps } from '../../../component.utils';\nimport { ChartCard, ChartCardHeaderProps } from '../../shared/ChartCard/ChartCard';\nimport { KpiChart } from '@embeddable.com/remarkable-ui';\nimport { getThemeFormatter } from '../../../../theme/formatter/formatter.utils';\nimport { getKpiResults } from '../kpis.utils';\n\nexport type KpiChartNumberProProp = {\n results: DataResponse;\n measure: Measure;\n fontSize?: number;\n displayNullAs?: string;\n} & ChartCardHeaderProps;\n\nconst KpiChartNumberPro = (props: KpiChartNumberProProp) => {\n const theme: Theme = useTheme() as Theme;\n i18nSetup(theme);\n\n const { title, description, tooltip, displayNullAs } = resolveI18nProps(props);\n const { measure, fontSize, hideMenu, results } = props;\n\n const value = results.data?.[0]?.[measure.name];\n\n const themeFormatter = getThemeFormatter(theme);\n const valueFormatter = (valueToFormat: number) => themeFormatter.data(measure, valueToFormat);\n\n const resultsWithNullsHandled = getKpiResults(results, measure, Boolean(displayNullAs));\n\n return (\n <ChartCard\n data={resultsWithNullsHandled}\n dimensionsAndMeasures={[measure]}\n errorMessage={results.error}\n description={description}\n title={title}\n tooltip={tooltip}\n hideMenu={hideMenu}\n >\n <KpiChart\n displayNullAs={displayNullAs}\n value={value}\n valueFormatter={valueFormatter}\n valueFontSize={fontSize}\n />\n </ChartCard>\n );\n};\n\nexport default KpiChartNumberPro;\n"],"names":["KpiChartNumberPro","props","theme","useTheme","i18nSetup","title","description","tooltip","displayNullAs","resolveI18nProps","measure","fontSize","hideMenu","results","value","_b","_a","themeFormatter","getThemeFormatter","valueFormatter","valueToFormat","resultsWithNullsHandled","getKpiResults","jsx","ChartCard","KpiChart"],"mappings":";;;;;;AAiBA,MAAMA,IAAoB,CAACC,MAAiC;;AAC1D,QAAMC,IAAeC,EAAA;AACrB,EAAAC,EAAUF,CAAK;AAEf,QAAM,EAAE,OAAAG,GAAO,aAAAC,GAAa,SAAAC,GAAS,eAAAC,EAAA,IAAkBC,EAAiBR,CAAK,GACvE,EAAE,SAAAS,GAAS,UAAAC,GAAU,UAAAC,GAAU,SAAAC,MAAYZ,GAE3Ca,KAAQC,KAAAC,IAAAH,EAAQ,SAAR,gBAAAG,EAAe,OAAf,gBAAAD,EAAoBL,EAAQ,OAEpCO,IAAiBC,EAAkBhB,CAAK,GACxCiB,IAAiB,CAACC,MAA0BH,EAAe,KAAKP,GAASU,CAAa,GAEtFC,IAA0BC,EAAcT,GAASH,GAAS,EAAQF,CAAc;AAEtF,SACEe,gBAAAA,EAAAA;AAAAA,IAACC;AAAA,IAAA;AAAA,MACC,MAAMH;AAAA,MACN,uBAAuB,CAACX,CAAO;AAAA,MAC/B,cAAcG,EAAQ;AAAA,MACtB,aAAAP;AAAA,MACA,OAAAD;AAAA,MACA,SAAAE;AAAA,MACA,UAAAK;AAAA,MAEA,UAAAW,gBAAAA,EAAAA;AAAAA,QAACE;AAAA,QAAA;AAAA,UACC,eAAAjB;AAAA,UACA,OAAAM;AAAA,UACA,gBAAAK;AAAA,UACA,eAAeR;AAAA,QAAA;AAAA,MAAA;AAAA,IACjB;AAAA,EAAA;AAGN;;;;"}
|
|
@@ -1,13 +1,13 @@
|
|
|
1
|
-
import { j as o } from "./Color.type.emb-
|
|
2
|
-
import { E as d } from "./EditorCard-
|
|
3
|
-
import {
|
|
1
|
+
import { j as o } from "./Color.type.emb-Bon3x9VC.js";
|
|
2
|
+
import { E as d } from "./EditorCard-BxYVJiPi.js";
|
|
3
|
+
import { a as p, r as u } from "./component.utils-DubLDCwF.js";
|
|
4
4
|
import { useTheme as f } from "@embeddable.com/react";
|
|
5
|
-
import { D as S } from "./DimensionAndMeasureSingleSelectField-
|
|
5
|
+
import { D as S } from "./DimensionAndMeasureSingleSelectField-QEeHTJvQ.js";
|
|
6
6
|
const j = (e) => {
|
|
7
7
|
const t = f();
|
|
8
8
|
p(t);
|
|
9
|
-
const { selectedDimension: i, dimensionOptions: n, clearable: r, onChange: s } = e, { title: l, description:
|
|
10
|
-
return /* @__PURE__ */ o.jsx(d, { title: l, description:
|
|
9
|
+
const { selectedDimension: i, dimensionOptions: n, clearable: r, onChange: s } = e, { title: l, description: a, tooltip: m, placeholder: c } = u(e);
|
|
10
|
+
return /* @__PURE__ */ o.jsx(d, { title: l, description: a, tooltip: m, children: /* @__PURE__ */ o.jsx(
|
|
11
11
|
S,
|
|
12
12
|
{
|
|
13
13
|
selectedValue: i,
|
|
@@ -25,4 +25,4 @@ export {
|
|
|
25
25
|
j as D,
|
|
26
26
|
_ as i
|
|
27
27
|
};
|
|
28
|
-
//# sourceMappingURL=index-
|
|
28
|
+
//# sourceMappingURL=index-CtfhLdt0.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index-
|
|
1
|
+
{"version":3,"file":"index-CtfhLdt0.js","sources":["../src/components/editors/DimensionSingleSelectFieldPro/index.tsx"],"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"],"names":["DimensionSingleSelectFieldPro","props","theme","useTheme","i18nSetup","selectedDimension","dimensionOptions","clearable","onChange","title","description","tooltip","placeholder","resolveI18nProps","jsx","EditorCard","DimensionAndMeasureSingleSelectField"],"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;;;;"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { j as l, S as b } from "./Color.type.emb-
|
|
2
|
-
import { g as j } from "./preview.data.constants-
|
|
1
|
+
import { j as l, S as b } from "./Color.type.emb-Bon3x9VC.js";
|
|
2
|
+
import { g as j } from "./preview.data.constants-BeVHkWI3.js";
|
|
3
3
|
import { useTheme as v } from "@embeddable.com/react";
|
|
4
|
-
import { E as x } from "./EditorCard-
|
|
5
|
-
import { r as F, i as M } from "./component.
|
|
4
|
+
import { E as x } from "./EditorCard-BxYVJiPi.js";
|
|
5
|
+
import { r as F, i as M } from "./component.utils-DubLDCwF.js";
|
|
6
6
|
const _ = 200, P = (n) => {
|
|
7
7
|
var i, r;
|
|
8
8
|
const m = v(), c = j(m), { title: d, description: p, dimension: t, placeholder: u, tooltip: g } = F(n), { optionalSecondDimension: a, results: o, selectedValue: S, setSearchValue: h, onChange: s } = n, f = ((i = o.data) == null ? void 0 : i.map((e) => ({
|
|
@@ -34,4 +34,4 @@ export {
|
|
|
34
34
|
P as S,
|
|
35
35
|
I as i
|
|
36
36
|
};
|
|
37
|
-
//# sourceMappingURL=index-
|
|
37
|
+
//# sourceMappingURL=index-CweUFcf6.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index-
|
|
1
|
+
{"version":3,"file":"index-CweUFcf6.js","sources":["../src/components/editors/SingleSelectFieldPro/index.tsx"],"sourcesContent":["import { DataResponse, Dimension } from '@embeddable.com/core';\nimport { getThemeFormatter } from '../../../theme/formatter/formatter.utils';\nimport { useTheme } from '@embeddable.com/react';\nimport { Theme } from '../../../theme/theme.types';\nimport { EditorCard, 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) => 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: string) => onChange?.(newValue)}\n onSearch={setSearchValue}\n avoidCollisions={false}\n />\n </EditorCard>\n );\n};\n\nexport default SingleSelectFieldPro;\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"],"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,MAAqBV,KAAA,gBAAAA,EAAWU;AAAA,MAC3C,UAAUX;AAAA,MACV,iBAAiB;AAAA,IAAA;AAAA,EAAA,GAErB;AAEJ;;;;;"}
|
|
@@ -1,16 +1,16 @@
|
|
|
1
|
-
import { a as S, m as j, j as k, L as v } from "./Color.type.emb-
|
|
1
|
+
import { a as S, m as j, j as k, L as v } from "./Color.type.emb-Bon3x9VC.js";
|
|
2
2
|
import { useTheme as y } from "@embeddable.com/react";
|
|
3
|
-
import {
|
|
4
|
-
import { C as $ } from "./ChartCard-
|
|
5
|
-
import { g as w } from "./preview.data.constants-
|
|
3
|
+
import { a as P, r as T } from "./component.utils-DubLDCwF.js";
|
|
4
|
+
import { C as $ } from "./ChartCard-BO7MZwqM.js";
|
|
5
|
+
import { g as w } from "./preview.data.constants-BeVHkWI3.js";
|
|
6
6
|
import { a as A } from "./styles.utils-BfpH_m_W.js";
|
|
7
7
|
import { s as F } from "./color.utils-BSg_DFOh.js";
|
|
8
8
|
import { g as R } from "./lines.utils-CEGfmIHB.js";
|
|
9
9
|
import { u as D } from "./charts.fillGaps.hooks-C7KsWcZb.js";
|
|
10
|
-
import { C as _ } from "./granularity.utils-
|
|
10
|
+
import { C as _ } from "./granularity.utils-B0IaQ58A.js";
|
|
11
11
|
const Y = (u, r) => {
|
|
12
12
|
const m = w(r), { data: s = [], dimension: n, groupDimension: t, measure: o, hasMinMaxYAxisRange: p } = u, i = [...new Set(s.map((a) => a[n.name]).filter((a) => a != null))].sort(), l = [...new Set(s.map((a) => a[t.name]))].filter((a) => a != null), e = S(), c = l.map((a, C) => {
|
|
13
|
-
var
|
|
13
|
+
var g;
|
|
14
14
|
const x = A({
|
|
15
15
|
dimensionOrMeasure: t,
|
|
16
16
|
theme: r,
|
|
@@ -32,14 +32,14 @@ const Y = (u, r) => {
|
|
|
32
32
|
rawLabel: a,
|
|
33
33
|
backgroundColor: F(x, 0.5),
|
|
34
34
|
pointBackgroundColor: x,
|
|
35
|
-
fill: (
|
|
35
|
+
fill: (g = o.inputs) == null ? void 0 : g.fillUnderLine,
|
|
36
36
|
borderColor: f,
|
|
37
37
|
data: i.map((M) => {
|
|
38
38
|
var d;
|
|
39
|
-
const
|
|
39
|
+
const b = s.find(
|
|
40
40
|
(h) => h[t.name] === a && h[n.name] === M
|
|
41
41
|
);
|
|
42
|
-
return (
|
|
42
|
+
return (b == null ? void 0 : b[o.name]) ?? ((d = o.inputs) != null && d.connectGaps ? 0 : null);
|
|
43
43
|
})
|
|
44
44
|
};
|
|
45
45
|
});
|
|
@@ -108,9 +108,9 @@ const Y = (u, r) => {
|
|
|
108
108
|
showTooltips: x,
|
|
109
109
|
showValueLabels: f,
|
|
110
110
|
yAxisRangeMax: L,
|
|
111
|
-
yAxisRangeMin:
|
|
111
|
+
yAxisRangeMin: g,
|
|
112
112
|
setGranularity: M,
|
|
113
|
-
onLineClicked:
|
|
113
|
+
onLineClicked: b
|
|
114
114
|
} = u, d = D({
|
|
115
115
|
results: u.results,
|
|
116
116
|
dimension: u.xAxis
|
|
@@ -120,11 +120,11 @@ const Y = (u, r) => {
|
|
|
120
120
|
dimension: l,
|
|
121
121
|
groupDimension: e,
|
|
122
122
|
measure: i,
|
|
123
|
-
hasMinMaxYAxisRange:
|
|
123
|
+
hasMinMaxYAxisRange: g != null || L != null
|
|
124
124
|
},
|
|
125
125
|
r
|
|
126
126
|
), G = z(
|
|
127
|
-
{ data: h, dimension: l, measure: i, onLineClicked:
|
|
127
|
+
{ data: h, dimension: l, measure: i, onLineClicked: b },
|
|
128
128
|
r
|
|
129
129
|
), O = !m && !s && !n;
|
|
130
130
|
return /* @__PURE__ */ k.jsxs(
|
|
@@ -158,7 +158,7 @@ const Y = (u, r) => {
|
|
|
158
158
|
xAxisLabel: t,
|
|
159
159
|
yAxisLabel: o,
|
|
160
160
|
yAxisRangeMax: L,
|
|
161
|
-
yAxisRangeMin:
|
|
161
|
+
yAxisRangeMin: g,
|
|
162
162
|
options: G
|
|
163
163
|
}
|
|
164
164
|
)
|
|
@@ -175,4 +175,4 @@ export {
|
|
|
175
175
|
Y as g,
|
|
176
176
|
W as i
|
|
177
177
|
};
|
|
178
|
-
//# sourceMappingURL=index-
|
|
178
|
+
//# sourceMappingURL=index-D3pwHgeL.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index-d6y81S-C.js","sources":["../src/components/charts/lines/LineChartGroupedPro/LineChartGroupedPro.utils.ts","../src/components/charts/lines/LineChartGroupedPro/index.tsx"],"sourcesContent":["import { DataResponse, Dimension, Measure } from '@embeddable.com/core';\nimport { Theme } from '../../../../theme/theme.types';\nimport { ChartData, ChartOptions } from 'chart.js';\nimport { getThemeFormatter } from '../../../../theme/formatter/formatter.utils';\nimport { mergician } from 'mergician';\nimport { getDimensionMeasureColor } from '../../../../theme/styles/styles.utils';\nimport { setColorAlpha } from '../../../../utils/color.utils';\nimport { getChartColors } from '@embeddable.com/remarkable-ui';\nimport { getLineChartProOptionsOnClick, LineChartProOptionsClick } from '../lines.utils';\n\nexport const getLineChartGroupedProData = (\n props: {\n data: DataResponse['data'];\n dimension: Dimension;\n groupDimension: Dimension;\n measure: Measure;\n hasMinMaxYAxisRange: boolean;\n },\n theme: Theme,\n): ChartData<'line'> => {\n const themeFormatter = getThemeFormatter(theme);\n const { data = [], dimension, groupDimension, measure, hasMinMaxYAxisRange } = props;\n\n const axis = [...new Set(data.map((d) => d[dimension.name]).filter((d) => d != null))].sort();\n const groupBy = [...new Set(data.map((d) => d[groupDimension.name]))].filter((d) => d != null);\n\n const chartColors = getChartColors();\n const datasets: ChartData<'line'>['datasets'] = groupBy.map((groupByItem, index) => {\n const backgroundColor = getDimensionMeasureColor({\n dimensionOrMeasure: groupDimension,\n theme,\n color: 'background',\n value: `${groupDimension.name}.${groupByItem}`,\n chartColors,\n index,\n });\n\n const borderColor = getDimensionMeasureColor({\n dimensionOrMeasure: groupDimension,\n theme,\n color: 'border',\n value: `${groupDimension.name}.${groupByItem}`,\n chartColors,\n index,\n });\n\n const dataset = {\n clip: hasMinMaxYAxisRange,\n label: themeFormatter.data(groupDimension, groupByItem),\n rawLabel: groupByItem,\n backgroundColor: setColorAlpha(backgroundColor, 0.5),\n pointBackgroundColor: backgroundColor,\n fill: measure.inputs?.['fillUnderLine'],\n borderColor,\n data: axis.map((axisItem) => {\n const record = data.find(\n (d) => d[groupDimension.name] === groupByItem && d[dimension.name] === axisItem,\n );\n return record?.[measure.name] ?? (measure.inputs?.['connectGaps'] ? 0 : null);\n }),\n } as ChartData<'line'>['datasets'][number];\n\n return dataset;\n });\n\n return {\n labels: axis,\n datasets,\n };\n};\n\nexport const getLineChartGroupedProOptions = (\n options: {\n dimension: Dimension;\n measure: Measure;\n data: ChartData<'line'>;\n onLineClicked?: LineChartProOptionsClick;\n },\n theme: Theme,\n): ChartOptions<'line'> => {\n const { dimension, data, measure, onLineClicked } = options;\n const themeFormatter = getThemeFormatter(theme);\n\n const lineChartOptions: ChartOptions<'line'> = {\n plugins: {\n datalabels: {\n labels: {\n value: {\n formatter: (value: string | number) => {\n return themeFormatter.data(measure, value);\n },\n },\n },\n },\n tooltip: {\n callbacks: {\n title: (context) => {\n const label = context[0]?.label;\n return themeFormatter.data(dimension, label);\n },\n label: (context) => {\n const raw = context.raw as number;\n return `${context.dataset.label}: ${themeFormatter.data(measure, raw)}`;\n },\n },\n },\n },\n scales: {\n x: {\n ticks: {\n callback: (value) => {\n if (!data || !data.labels) return undefined;\n\n const label = data.labels[Number(value)] as string;\n return themeFormatter.data(dimension, label);\n },\n },\n },\n y: {\n ticks: {\n callback: (value) => {\n return themeFormatter.data(measure, value);\n },\n },\n },\n },\n };\n\n return mergician(\n getLineChartProOptionsOnClick({ onLineClicked }),\n lineChartOptions,\n theme.charts?.lineChartGroupedPro?.options || {},\n );\n};\n","import { useTheme } from '@embeddable.com/react';\nimport { Theme } from '../../../../theme/theme.types';\nimport { DataResponse, Dimension, Granularity, Measure } from '@embeddable.com/core';\nimport { i18nSetup } from '../../../../theme/i18n/i18n';\nimport { resolveI18nProps } from '../../../component.utils';\nimport { ChartCard, ChartCardHeaderProps } from '../../shared/ChartCard/ChartCard';\nimport {\n getLineChartGroupedProData,\n getLineChartGroupedProOptions,\n} from './LineChartGroupedPro.utils';\nimport { useFillGaps } from '../../charts.fillGaps.hooks';\nimport { LineChartProOptionsClick } from '../lines.utils';\nimport { LineChart } from '@embeddable.com/remarkable-ui';\nimport { ChartGranularitySelectField } from '../../shared/ChartGranularitySelectField/ChartGranularitySelectField';\n\nexport type LineChartGroupedProPropsOnLineClicked = {\n axisDimensionValue: string | null;\n groupingDimensionValue: string | null;\n};\n\nexport type LineChartGroupedProProp = {\n xAxis: Dimension;\n groupBy: Dimension;\n measure: Measure;\n results: DataResponse;\n reverseXAxis?: boolean;\n showLegend?: boolean;\n showLogarithmicScale?: boolean;\n showTooltips?: boolean;\n showValueLabels?: boolean;\n xAxisLabel?: string;\n yAxisLabel?: string;\n yAxisRangeMax?: number;\n yAxisRangeMin?: number;\n setGranularity: (granularity: Granularity) => void;\n onLineClicked?: LineChartProOptionsClick;\n} & ChartCardHeaderProps;\n\nconst LineChartGroupedPro = (props: LineChartGroupedProProp) => {\n const theme: Theme = useTheme() as Theme;\n i18nSetup(theme);\n\n const { title, description, tooltip, xAxisLabel, yAxisLabel } = resolveI18nProps(props);\n const {\n hideMenu,\n measure,\n xAxis,\n groupBy,\n reverseXAxis,\n showLegend,\n showLogarithmicScale,\n showTooltips,\n showValueLabels,\n yAxisRangeMax,\n yAxisRangeMin,\n setGranularity,\n onLineClicked,\n } = props;\n\n const results = useFillGaps({\n results: props.results,\n dimension: props.xAxis,\n });\n\n const data = getLineChartGroupedProData(\n {\n data: results.data,\n dimension: xAxis,\n groupDimension: groupBy,\n measure,\n hasMinMaxYAxisRange: Boolean(yAxisRangeMin != null || yAxisRangeMax != null),\n },\n theme,\n );\n const options = getLineChartGroupedProOptions(\n { data, dimension: xAxis, measure, onLineClicked },\n theme,\n );\n\n const granularitySelectorHasMarginTop = !title && !description && !tooltip;\n\n return (\n <ChartCard\n data={results}\n dimensionsAndMeasures={[measure, xAxis, groupBy]}\n errorMessage={results.error}\n description={description}\n title={title}\n tooltip={tooltip}\n hideMenu={hideMenu}\n >\n <ChartGranularitySelectField\n hasMarginTop={granularitySelectorHasMarginTop}\n dimension={xAxis}\n onChange={setGranularity}\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 />\n </ChartCard>\n );\n};\n\nexport default LineChartGroupedPro;\n"],"names":["getLineChartGroupedProData","props","theme","themeFormatter","getThemeFormatter","data","dimension","groupDimension","measure","hasMinMaxYAxisRange","axis","d","groupBy","chartColors","getChartColors","datasets","groupByItem","index","backgroundColor","getDimensionMeasureColor","borderColor","setColorAlpha","_a","axisItem","record","getLineChartGroupedProOptions","options","onLineClicked","lineChartOptions","value","context","label","raw","mergician","getLineChartProOptionsOnClick","_b","LineChartGroupedPro","useTheme","i18nSetup","title","description","tooltip","xAxisLabel","yAxisLabel","resolveI18nProps","hideMenu","xAxis","reverseXAxis","showLegend","showLogarithmicScale","showTooltips","showValueLabels","yAxisRangeMax","yAxisRangeMin","setGranularity","results","useFillGaps","granularitySelectorHasMarginTop","jsxs","ChartCard","jsx","ChartGranularitySelectField","LineChart"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index-D3pwHgeL.js","sources":["../src/components/charts/lines/LineChartGroupedPro/LineChartGroupedPro.utils.ts","../src/components/charts/lines/LineChartGroupedPro/index.tsx"],"sourcesContent":["import { DataResponse, Dimension, Measure } from '@embeddable.com/core';\nimport { Theme } from '../../../../theme/theme.types';\nimport { ChartData, ChartOptions } from 'chart.js';\nimport { getThemeFormatter } from '../../../../theme/formatter/formatter.utils';\nimport { mergician } from 'mergician';\nimport { getDimensionMeasureColor } from '../../../../theme/styles/styles.utils';\nimport { setColorAlpha } from '../../../../utils/color.utils';\nimport { getChartColors } from '@embeddable.com/remarkable-ui';\nimport { getLineChartProOptionsOnClick, LineChartProOptionsClick } from '../lines.utils';\n\nexport const getLineChartGroupedProData = (\n props: {\n data: DataResponse['data'];\n dimension: Dimension;\n groupDimension: Dimension;\n measure: Measure;\n hasMinMaxYAxisRange: boolean;\n },\n theme: Theme,\n): ChartData<'line'> => {\n const themeFormatter = getThemeFormatter(theme);\n const { data = [], dimension, groupDimension, measure, hasMinMaxYAxisRange } = props;\n\n const axis = [...new Set(data.map((d) => d[dimension.name]).filter((d) => d != null))].sort();\n const groupBy = [...new Set(data.map((d) => d[groupDimension.name]))].filter((d) => d != null);\n\n const chartColors = getChartColors();\n const datasets: ChartData<'line'>['datasets'] = groupBy.map((groupByItem, index) => {\n const backgroundColor = getDimensionMeasureColor({\n dimensionOrMeasure: groupDimension,\n theme,\n color: 'background',\n value: `${groupDimension.name}.${groupByItem}`,\n chartColors,\n index,\n });\n\n const borderColor = getDimensionMeasureColor({\n dimensionOrMeasure: groupDimension,\n theme,\n color: 'border',\n value: `${groupDimension.name}.${groupByItem}`,\n chartColors,\n index,\n });\n\n const dataset = {\n clip: hasMinMaxYAxisRange,\n label: themeFormatter.data(groupDimension, groupByItem),\n rawLabel: groupByItem,\n backgroundColor: setColorAlpha(backgroundColor, 0.5),\n pointBackgroundColor: backgroundColor,\n fill: measure.inputs?.['fillUnderLine'],\n borderColor,\n data: axis.map((axisItem) => {\n const record = data.find(\n (d) => d[groupDimension.name] === groupByItem && d[dimension.name] === axisItem,\n );\n return record?.[measure.name] ?? (measure.inputs?.['connectGaps'] ? 0 : null);\n }),\n } as ChartData<'line'>['datasets'][number];\n\n return dataset;\n });\n\n return {\n labels: axis,\n datasets,\n };\n};\n\nexport const getLineChartGroupedProOptions = (\n options: {\n dimension: Dimension;\n measure: Measure;\n data: ChartData<'line'>;\n onLineClicked?: LineChartProOptionsClick;\n },\n theme: Theme,\n): ChartOptions<'line'> => {\n const { dimension, data, measure, onLineClicked } = options;\n const themeFormatter = getThemeFormatter(theme);\n\n const lineChartOptions: ChartOptions<'line'> = {\n plugins: {\n datalabels: {\n labels: {\n value: {\n formatter: (value: string | number) => {\n return themeFormatter.data(measure, value);\n },\n },\n },\n },\n tooltip: {\n callbacks: {\n title: (context) => {\n const label = context[0]?.label;\n return themeFormatter.data(dimension, label);\n },\n label: (context) => {\n const raw = context.raw as number;\n return `${context.dataset.label}: ${themeFormatter.data(measure, raw)}`;\n },\n },\n },\n },\n scales: {\n x: {\n ticks: {\n callback: (value) => {\n if (!data || !data.labels) return undefined;\n\n const label = data.labels[Number(value)] as string;\n return themeFormatter.data(dimension, label);\n },\n },\n },\n y: {\n ticks: {\n callback: (value) => {\n return themeFormatter.data(measure, value);\n },\n },\n },\n },\n };\n\n return mergician(\n getLineChartProOptionsOnClick({ onLineClicked }),\n lineChartOptions,\n theme.charts?.lineChartGroupedPro?.options || {},\n );\n};\n","import { useTheme } from '@embeddable.com/react';\nimport { Theme } from '../../../../theme/theme.types';\nimport { DataResponse, Dimension, Granularity, Measure } from '@embeddable.com/core';\nimport { i18nSetup } from '../../../../theme/i18n/i18n';\nimport { resolveI18nProps } from '../../../component.utils';\nimport { ChartCard, ChartCardHeaderProps } from '../../shared/ChartCard/ChartCard';\nimport {\n getLineChartGroupedProData,\n getLineChartGroupedProOptions,\n} from './LineChartGroupedPro.utils';\nimport { useFillGaps } from '../../charts.fillGaps.hooks';\nimport { LineChartProOptionsClick } from '../lines.utils';\nimport { LineChart } from '@embeddable.com/remarkable-ui';\nimport { ChartGranularitySelectField } from '../../shared/ChartGranularitySelectField/ChartGranularitySelectField';\n\nexport type LineChartGroupedProPropsOnLineClicked = {\n axisDimensionValue: string | null;\n groupingDimensionValue: string | null;\n};\n\nexport type LineChartGroupedProProp = {\n xAxis: Dimension;\n groupBy: Dimension;\n measure: Measure;\n results: DataResponse;\n reverseXAxis?: boolean;\n showLegend?: boolean;\n showLogarithmicScale?: boolean;\n showTooltips?: boolean;\n showValueLabels?: boolean;\n xAxisLabel?: string;\n yAxisLabel?: string;\n yAxisRangeMax?: number;\n yAxisRangeMin?: number;\n setGranularity: (granularity: Granularity) => void;\n onLineClicked?: LineChartProOptionsClick;\n} & ChartCardHeaderProps;\n\nconst LineChartGroupedPro = (props: LineChartGroupedProProp) => {\n const theme: Theme = useTheme() as Theme;\n i18nSetup(theme);\n\n const { title, description, tooltip, xAxisLabel, yAxisLabel } = resolveI18nProps(props);\n const {\n hideMenu,\n measure,\n xAxis,\n groupBy,\n reverseXAxis,\n showLegend,\n showLogarithmicScale,\n showTooltips,\n showValueLabels,\n yAxisRangeMax,\n yAxisRangeMin,\n setGranularity,\n onLineClicked,\n } = props;\n\n const results = useFillGaps({\n results: props.results,\n dimension: props.xAxis,\n });\n\n const data = getLineChartGroupedProData(\n {\n data: results.data,\n dimension: xAxis,\n groupDimension: groupBy,\n measure,\n hasMinMaxYAxisRange: Boolean(yAxisRangeMin != null || yAxisRangeMax != null),\n },\n theme,\n );\n const options = getLineChartGroupedProOptions(\n { data, dimension: xAxis, measure, onLineClicked },\n theme,\n );\n\n const granularitySelectorHasMarginTop = !title && !description && !tooltip;\n\n return (\n <ChartCard\n data={results}\n dimensionsAndMeasures={[measure, xAxis, groupBy]}\n errorMessage={results.error}\n description={description}\n title={title}\n tooltip={tooltip}\n hideMenu={hideMenu}\n >\n <ChartGranularitySelectField\n hasMarginTop={granularitySelectorHasMarginTop}\n dimension={xAxis}\n onChange={setGranularity}\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 />\n </ChartCard>\n );\n};\n\nexport default LineChartGroupedPro;\n"],"names":["getLineChartGroupedProData","props","theme","themeFormatter","getThemeFormatter","data","dimension","groupDimension","measure","hasMinMaxYAxisRange","axis","d","groupBy","chartColors","getChartColors","datasets","groupByItem","index","backgroundColor","getDimensionMeasureColor","borderColor","setColorAlpha","_a","axisItem","record","getLineChartGroupedProOptions","options","onLineClicked","lineChartOptions","value","context","label","raw","mergician","getLineChartProOptionsOnClick","_b","LineChartGroupedPro","useTheme","i18nSetup","title","description","tooltip","xAxisLabel","yAxisLabel","resolveI18nProps","hideMenu","xAxis","reverseXAxis","showLegend","showLogarithmicScale","showTooltips","showValueLabels","yAxisRangeMax","yAxisRangeMin","setGranularity","results","useFillGaps","granularitySelectorHasMarginTop","jsxs","ChartCard","jsx","ChartGranularitySelectField","LineChart"],"mappings":"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"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { j as l, M as O } from "./Color.type.emb-
|
|
2
|
-
import { g as b } from "./preview.data.constants-
|
|
1
|
+
import { j as l, M as O } from "./Color.type.emb-Bon3x9VC.js";
|
|
2
|
+
import { g as b } from "./preview.data.constants-BeVHkWI3.js";
|
|
3
3
|
import { useTheme as j } from "@embeddable.com/react";
|
|
4
|
-
import { E as v } from "./EditorCard-
|
|
5
|
-
import { r as x, i as F } from "./component.
|
|
4
|
+
import { E as v } from "./EditorCard-BxYVJiPi.js";
|
|
5
|
+
import { r as x, i as F } from "./component.utils-DubLDCwF.js";
|
|
6
6
|
const _ = 200, P = (n) => {
|
|
7
7
|
var i, r;
|
|
8
8
|
const m = j(), c = b(m), { tooltip: d, title: u, description: p, placeholder: h } = x(n), { dimension: t, optionalSecondDimension: a, results: o, selectedValues: g, setSearchValue: f, onChange: s } = n, S = ((i = o.data) == null ? void 0 : i.map((e) => ({
|
|
@@ -34,4 +34,4 @@ export {
|
|
|
34
34
|
P as a,
|
|
35
35
|
I as i
|
|
36
36
|
};
|
|
37
|
-
//# sourceMappingURL=index-
|
|
37
|
+
//# sourceMappingURL=index-D9JaX9ut.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index-
|
|
1
|
+
{"version":3,"file":"index-D9JaX9ut.js","sources":["../src/components/editors/MultiSelectFieldPro/index.tsx"],"sourcesContent":["import { DataResponse, Dimension } from '@embeddable.com/core';\nimport { getThemeFormatter } from '../../../theme/formatter/formatter.utils';\nimport { useTheme } from '@embeddable.com/react';\nimport { Theme } from '../../../theme/theme.types';\nimport { EditorCard, EditorCardHeaderProps } from '../shared/EditorCard/EditorCard';\nimport { resolveI18nProps } from '../../component.utils';\nimport { i18n } from '../../../theme/i18n/i18n';\nimport { MultiSelectField } from '@embeddable.com/remarkable-ui';\n\nexport const MAX_OPTIONS = 200;\n\nexport type MultiSelectFieldProProps = {\n dimension: Dimension;\n optionalSecondDimension?: Dimension;\n placeholder?: string;\n results: DataResponse;\n selectedValues?: string[];\n maxOptions?: number;\n setSearchValue?: (search: string) => void;\n onChange?: (newValues: string[]) => void;\n} & EditorCardHeaderProps;\n\nconst MultiSelectFieldPro = (props: MultiSelectFieldProProps) => {\n const theme: Theme = useTheme() as Theme;\n const themeFormatter = getThemeFormatter(theme);\n\n const { tooltip, title, description, placeholder } = resolveI18nProps(props);\n const { dimension, optionalSecondDimension, results, selectedValues, setSearchValue, onChange } =\n 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 <MultiSelectField\n isClearable\n isSearchable\n isLoading={results.isLoading}\n values={selectedValues ?? []}\n options={options}\n placeholder={placeholder}\n noOptionsMessage={showNoOptionsMessage ? i18n.t('common.noOptionsFound') : undefined}\n onChange={(newValues) => onChange?.(newValues)}\n onSearch={setSearchValue}\n avoidCollisions={false}\n />\n </EditorCard>\n );\n};\n\nexport default MultiSelectFieldPro;\n"],"names":["MAX_OPTIONS","MultiSelectFieldPro","props","theme","useTheme","themeFormatter","getThemeFormatter","tooltip","title","description","placeholder","resolveI18nProps","dimension","optionalSecondDimension","results","selectedValues","setSearchValue","onChange","options","_a","data","showNoOptionsMessage","_b","jsx","EditorCard","MultiSelectField","i18n","newValues"],"mappings":";;;;;AASO,MAAMA,IAAc,KAarBC,IAAsB,CAACC,MAAoC;;AAC/D,QAAMC,IAAeC,EAAA,GACfC,IAAiBC,EAAkBH,CAAK,GAExC,EAAE,SAAAI,GAAS,OAAAC,GAAO,aAAAC,GAAa,aAAAC,EAAA,IAAgBC,EAAiBT,CAAK,GACrE,EAAE,WAAAU,GAAW,yBAAAC,GAAyB,SAAAC,GAAS,gBAAAC,GAAgB,gBAAAC,GAAgB,UAAAC,MACnFf,GAEIgB,MACJC,IAAAL,EAAQ,SAAR,gBAAAK,EAAc,IAAI,CAACC,OACV;AAAA,IACL,OAAOP,IAA0BO,EAAKP,EAAwB,IAAI,IAAIO,EAAKR,EAAU,IAAI;AAAA,IACzF,OAAOP,EAAe,KAAKO,GAAWQ,EAAKR,EAAU,IAAI,CAAC;AAAA,EAAA,QAExD,CAAA,GAEFS,IAA+B,CAACP,EAAQ,gBAAcQ,IAAAR,EAAQ,SAAR,gBAAAQ,EAAc,WAAU,OAAO;AAE3F,SACEC,gBAAAA,EAAAA,IAACC,GAAA,EAAW,OAAAhB,GAAc,aAAAC,GAA0B,SAAAF,GAClD,UAAAgB,gBAAAA,EAAAA;AAAAA,IAACE;AAAA,IAAA;AAAA,MACC,aAAW;AAAA,MACX,cAAY;AAAA,MACZ,WAAWX,EAAQ;AAAA,MACnB,QAAQC,KAAkB,CAAA;AAAA,MAC1B,SAAAG;AAAA,MACA,aAAAR;AAAA,MACA,kBAAkBW,IAAuBK,EAAK,EAAE,uBAAuB,IAAI;AAAA,MAC3E,UAAU,CAACC,MAAcV,KAAA,gBAAAA,EAAWU;AAAA,MACpC,UAAUX;AAAA,MACV,iBAAiB;AAAA,IAAA;AAAA,EAAA,GAErB;AAEJ;;;;;"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { j as o } from "./Color.type.emb-
|
|
2
|
-
import { E as d } from "./EditorCard-
|
|
3
|
-
import {
|
|
1
|
+
import { j as o } from "./Color.type.emb-Bon3x9VC.js";
|
|
2
|
+
import { E as d } from "./EditorCard-BxYVJiPi.js";
|
|
3
|
+
import { a as p, r as u } from "./component.utils-DubLDCwF.js";
|
|
4
4
|
import { useTheme as f } from "@embeddable.com/react";
|
|
5
|
-
import { D as S } from "./DimensionAndMeasureSingleSelectField-
|
|
5
|
+
import { D as S } from "./DimensionAndMeasureSingleSelectField-QEeHTJvQ.js";
|
|
6
6
|
const j = (e) => {
|
|
7
7
|
const t = f();
|
|
8
8
|
p(t);
|
|
@@ -25,4 +25,4 @@ export {
|
|
|
25
25
|
j as M,
|
|
26
26
|
_ as i
|
|
27
27
|
};
|
|
28
|
-
//# sourceMappingURL=index-
|
|
28
|
+
//# sourceMappingURL=index-DEMHcox3.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index-
|
|
1
|
+
{"version":3,"file":"index-DEMHcox3.js","sources":["../src/components/editors/MeasureSingleSelectFieldPro/index.tsx"],"sourcesContent":["import { Measure } 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 MeasureSingleSelectFieldProProps = {\n selectedMeasure?: Measure;\n measureOptions: Measure[];\n placeholder?: string;\n clearable?: boolean;\n onChange: (value: Measure | undefined) => void;\n} & ChartCardHeaderProps;\n\nconst MeasureSingleSelectFieldPro = (props: MeasureSingleSelectFieldProProps) => {\n const theme = useTheme() as Theme;\n i18nSetup(theme);\n\n const { selectedMeasure, measureOptions, clearable, onChange } = props;\n const { title, description, tooltip, placeholder } = resolveI18nProps(props);\n\n return (\n <EditorCard title={title} description={description} tooltip={tooltip}>\n <DimensionAndMeasureSingleSelectField<Measure>\n selectedValue={selectedMeasure}\n options={measureOptions}\n placeholder={placeholder}\n clearable={clearable}\n onChange={onChange}\n />\n </EditorCard>\n );\n};\n\nexport default MeasureSingleSelectFieldPro;\n"],"names":["MeasureSingleSelectFieldPro","props","theme","useTheme","i18nSetup","selectedMeasure","measureOptions","clearable","onChange","title","description","tooltip","placeholder","resolveI18nProps","jsx","EditorCard","DimensionAndMeasureSingleSelectField"],"mappings":";;;;;AAiBA,MAAMA,IAA8B,CAACC,MAA4C;AAC/E,QAAMC,IAAQC,EAAA;AACd,EAAAC,EAAUF,CAAK;AAEf,QAAM,EAAE,iBAAAG,GAAiB,gBAAAC,GAAgB,WAAAC,GAAW,UAAAC,MAAaP,GAC3D,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;;;;"}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import { c as f, u as E, d as O, j as x, T as A, e as N } from "./Color.type.emb-
|
|
1
|
+
import { c as f, u as E, d as O, j as x, T as A, e as N } from "./Color.type.emb-Bon3x9VC.js";
|
|
2
2
|
import { useTheme as G } from "@embeddable.com/react";
|
|
3
|
-
import {
|
|
4
|
-
import { C as B } from "./ChartCard-
|
|
3
|
+
import { a as U, r as V, i as q } from "./component.utils-DubLDCwF.js";
|
|
4
|
+
import { C as B } from "./ChartCard-BO7MZwqM.js";
|
|
5
5
|
import { useState as F, useRef as J, useCallback as K, useEffect as d } from "react";
|
|
6
|
-
import { b as Q, c as W } from "./tables.utils-
|
|
6
|
+
import { b as Q, c as W } from "./tables.utils-DS3rr8kb.js";
|
|
7
7
|
const X = f("--em-tablechart-cell-height", "2.5rem"), Y = f("--em-tablechart-cell-height", "2.5rem"), Z = f("--em-tablechart-pagination-height", "3rem");
|
|
8
8
|
let R;
|
|
9
9
|
const $ = (u) => {
|
|
@@ -111,4 +111,4 @@ export {
|
|
|
111
111
|
$ as T,
|
|
112
112
|
re as i
|
|
113
113
|
};
|
|
114
|
-
//# sourceMappingURL=index-
|
|
114
|
+
//# sourceMappingURL=index-DRlAqfj6.js.map
|