@embeddable.com/remarkable-pro 0.0.24 → 0.0.26
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 +36 -25
- package/dist/BarChartDefaultHorizontalPro.js.map +1 -1
- package/dist/BarChartDefaultPro.js +39 -23
- package/dist/BarChartDefaultPro.js.map +1 -1
- package/dist/BarChartGroupedHorizontalPro.js +36 -28
- package/dist/BarChartGroupedHorizontalPro.js.map +1 -1
- package/dist/BarChartGroupedPro.js +36 -28
- package/dist/BarChartGroupedPro.js.map +1 -1
- package/dist/BarChartStackedHorizontalPro.js +31 -23
- package/dist/BarChartStackedHorizontalPro.js.map +1 -1
- package/dist/BarChartStackedPro.js +31 -23
- package/dist/BarChartStackedPro.js.map +1 -1
- package/dist/{ChartCard-BHPN4_tz.js → ChartCard-C6rVK7Ux.js} +21 -21
- package/dist/{ChartCard-BHPN4_tz.js.map → ChartCard-C6rVK7Ux.js.map} +1 -1
- package/dist/ChartGranularitySelectField-BxhibpgC.js +40 -0
- package/dist/ChartGranularitySelectField-BxhibpgC.js.map +1 -0
- package/dist/{Color.type.emb-DWdIUAm5.js → Color.type.emb-De2K8PVb.js} +2067 -2042
- package/dist/{Color.type.emb-DWdIUAm5.js.map → Color.type.emb-De2K8PVb.js.map} +1 -1
- package/dist/ColorEditor.js +1 -1
- package/dist/ComparisonPeriodSelectFieldPro.js +3 -3
- package/dist/DateRangePickerCustomPro.js +4 -4
- package/dist/DateRangeSelectFieldPro.js +3 -3
- package/dist/DonutChartPro.js +4 -4
- package/dist/DonutLabelChartPro.js +4 -4
- package/dist/{EditorCard-ZXwl5-DV.js → EditorCard-DCm6Ykb8.js} +3 -3
- package/dist/{EditorCard-ZXwl5-DV.js.map → EditorCard-DCm6Ykb8.js.map} +1 -1
- package/dist/GranularitySelectField-CYq2YuAO.js +104 -0
- package/dist/GranularitySelectField-CYq2YuAO.js.map +1 -0
- package/dist/GranularitySelectFieldPro.js +43 -137
- package/dist/GranularitySelectFieldPro.js.map +1 -1
- package/dist/HeatMapPro.js +4 -4
- package/dist/{IconCalendarFilled-Bl7kPqxG.js → IconCalendarFilled-CYiLMPm9.js} +2 -2
- package/dist/{IconCalendarFilled-Bl7kPqxG.js.map → IconCalendarFilled-CYiLMPm9.js.map} +1 -1
- package/dist/KpiChartNumberComparisonPro.js +4 -4
- package/dist/KpiChartNumberPro.js +4 -4
- package/dist/LineChartComparisonDefaultPro.js +45 -40
- package/dist/LineChartComparisonDefaultPro.js.map +1 -1
- package/dist/LineChartDefaultPro.js +37 -29
- package/dist/LineChartDefaultPro.js.map +1 -1
- package/dist/LineChartGroupedPro.js +31 -23
- package/dist/LineChartGroupedPro.js.map +1 -1
- 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 +17 -17
- package/dist/bars.utils-IYtKAgtt.js +154 -0
- package/dist/bars.utils-IYtKAgtt.js.map +1 -0
- package/dist/{charts.utils-lvlkFPJk.js → charts.utils-CeGAdGVG.js} +4 -4
- package/dist/{charts.utils-lvlkFPJk.js.map → charts.utils-CeGAdGVG.js.map} +1 -1
- package/dist/{component.inputs.constants-DO_jX-yc.js → component.inputs.constants-wDyG8tFg.js} +464 -382
- package/dist/component.inputs.constants-wDyG8tFg.js.map +1 -0
- package/dist/components/charts/bars/BarChartDefaultHorizontalPro/index.d.ts +2 -1
- package/dist/components/charts/bars/BarChartDefaultHorizontalPro/index.d.ts.map +1 -1
- package/dist/components/charts/bars/BarChartDefaultPro/index.d.ts +2 -1
- package/dist/components/charts/bars/BarChartDefaultPro/index.d.ts.map +1 -1
- package/dist/components/charts/bars/BarChartGroupedHorizontalPro/index.d.ts +2 -1
- package/dist/components/charts/bars/BarChartGroupedHorizontalPro/index.d.ts.map +1 -1
- package/dist/components/charts/bars/BarChartGroupedPro/index.d.ts +2 -1
- package/dist/components/charts/bars/BarChartGroupedPro/index.d.ts.map +1 -1
- package/dist/components/charts/bars/BarChartStackedHorizontalPro/index.d.ts +2 -1
- package/dist/components/charts/bars/BarChartStackedHorizontalPro/index.d.ts.map +1 -1
- package/dist/components/charts/bars/BarChartStackedPro/index.d.ts +2 -1
- package/dist/components/charts/bars/BarChartStackedPro/index.d.ts.map +1 -1
- package/dist/components/charts/bars/bars.utils.d.ts.map +1 -1
- package/dist/components/charts/lines/LineChartComparisonDefaultPro/LineChartComparisonDefaultPro.utils.d.ts.map +1 -1
- package/dist/components/charts/lines/LineChartComparisonDefaultPro/index.d.ts +2 -1
- package/dist/components/charts/lines/LineChartComparisonDefaultPro/index.d.ts.map +1 -1
- package/dist/components/charts/lines/LineChartDefaultPro/LineChartDefaultPro.utils.d.ts.map +1 -1
- package/dist/components/charts/lines/LineChartDefaultPro/index.d.ts +2 -1
- package/dist/components/charts/lines/LineChartDefaultPro/index.d.ts.map +1 -1
- package/dist/components/charts/lines/LineChartGroupedPro/LineChartGroupedPro.utils.d.ts.map +1 -1
- package/dist/components/charts/lines/LineChartGroupedPro/index.d.ts +2 -1
- package/dist/components/charts/lines/LineChartGroupedPro/index.d.ts.map +1 -1
- package/dist/components/charts/pies/pies.utils.d.ts.map +1 -1
- package/dist/components/charts/shared/ChartGranularitySelectField/ChartGranularitySelectField.d.ts +9 -0
- package/dist/components/charts/shared/ChartGranularitySelectField/ChartGranularitySelectField.d.ts.map +1 -0
- package/dist/components/charts/tables/tables.utils.d.ts.map +1 -1
- package/dist/components/charts/utils/granularity.utils.d.ts +13 -0
- package/dist/components/charts/utils/granularity.utils.d.ts.map +1 -0
- package/dist/components/component.inputs.constants.d.ts +12 -0
- package/dist/components/component.inputs.constants.d.ts.map +1 -1
- package/dist/components/component.subinputs.constants.d.ts +18 -0
- package/dist/components/component.subinputs.constants.d.ts.map +1 -1
- package/dist/components/editors/GranularitySelectFieldPro/index.d.ts.map +1 -1
- package/dist/components/editors/shared/GranularitySelectField/GranularitySelectField.d.ts +12 -0
- package/dist/components/editors/shared/GranularitySelectField/GranularitySelectField.d.ts.map +1 -0
- package/dist/components/editors/{GranularitySelectFieldPro/GranularitySelectFieldPro.utils.d.ts → shared/GranularitySelectField/GranularitySelectField.utils.d.ts} +3 -3
- package/dist/components/editors/shared/GranularitySelectField/GranularitySelectField.utils.d.ts.map +1 -0
- package/dist/embeddable-components.json +30 -30
- package/dist/{formatter.utils-CBCUxVH8.js → formatter.utils-DlbthOXA.js} +8 -8
- package/dist/{formatter.utils-CBCUxVH8.js.map → formatter.utils-DlbthOXA.js.map} +1 -1
- package/dist/granularity.utils-CA504xa0.js +15 -0
- package/dist/granularity.utils-CA504xa0.js.map +1 -0
- package/dist/{index-Rxsr4tZ-.js → index-AqDTPWnU.js} +5 -5
- package/dist/{index-Rxsr4tZ-.js.map → index-AqDTPWnU.js.map} +1 -1
- package/dist/index-B2N9BsUK.js +92 -0
- package/dist/index-B2N9BsUK.js.map +1 -0
- package/dist/{index-DLT2A69c.js → index-BFvsuXiz.js} +5 -5
- package/dist/{index-DLT2A69c.js.map → index-BFvsuXiz.js.map} +1 -1
- package/dist/{index-BSK_5Rq3.js → index-BaboirUQ.js} +5 -5
- package/dist/{index-BSK_5Rq3.js.map → index-BaboirUQ.js.map} +1 -1
- package/dist/index-Bd4SFepB.js +93 -0
- package/dist/index-Bd4SFepB.js.map +1 -0
- package/dist/{index-CzM9TqMe.js → index-BkcQaDp8.js} +6 -6
- package/dist/{index-CzM9TqMe.js.map → index-BkcQaDp8.js.map} +1 -1
- package/dist/index-Cf96kZIH.js +82 -0
- package/dist/index-Cf96kZIH.js.map +1 -0
- package/dist/{index-Z5VzRC4L.js → index-CgVjpFNs.js} +5 -5
- package/dist/{index-Z5VzRC4L.js.map → index-CgVjpFNs.js.map} +1 -1
- package/dist/{index-s4oA7Iyp.js → index-CiO0tI86.js} +8 -8
- package/dist/{index-s4oA7Iyp.js.map → index-CiO0tI86.js.map} +1 -1
- package/dist/index-CoOz-mWY.js +90 -0
- package/dist/index-CoOz-mWY.js.map +1 -0
- package/dist/{index-CJkiIKmB.js → index-CvKdGFx3.js} +6 -6
- package/dist/{index-CJkiIKmB.js.map → index-CvKdGFx3.js.map} +1 -1
- package/dist/index-D3HMg6eu.js +177 -0
- package/dist/index-D3HMg6eu.js.map +1 -0
- package/dist/index-DCA_6rWw.js +182 -0
- package/dist/index-DCA_6rWw.js.map +1 -0
- package/dist/{index-CpUKjpYd.js → index-DHiPuxQQ.js} +4 -4
- package/dist/{index-CpUKjpYd.js.map → index-DHiPuxQQ.js.map} +1 -1
- package/dist/{index-0eDJ_Ho5.js → index-DfrwKtFA.js} +5 -5
- package/dist/{index-0eDJ_Ho5.js.map → index-DfrwKtFA.js.map} +1 -1
- package/dist/{index-BgYPax7r.js → index-DytdIFQb.js} +5 -5
- package/dist/{index-BgYPax7r.js.map → index-DytdIFQb.js.map} +1 -1
- package/dist/index-eEE2JmCK.js +346 -0
- package/dist/index-eEE2JmCK.js.map +1 -0
- package/dist/index-fcVfPVmY.js +83 -0
- package/dist/index-fcVfPVmY.js.map +1 -0
- package/dist/{index-BRX2mrGM.js → index-gnajbHE2.js} +18 -18
- package/dist/{index-BRX2mrGM.js.map → index-gnajbHE2.js.map} +1 -1
- package/dist/{index-DHHYE6GC.js → index-icM1qOGP.js} +5 -5
- package/dist/{index-DHHYE6GC.js.map → index-icM1qOGP.js.map} +1 -1
- package/dist/index-rodtTo_t.js +91 -0
- package/dist/index-rodtTo_t.js.map +1 -0
- package/dist/index.js +71 -70
- package/dist/pies.utils-XolEkyOz.js +77 -0
- package/dist/pies.utils-XolEkyOz.js.map +1 -0
- package/dist/{preview.data.constants-CXMriS2F.js → preview.data.constants-37wUPKG8.js} +2 -2
- package/dist/{preview.data.constants-CXMriS2F.js.map → preview.data.constants-37wUPKG8.js.map} +1 -1
- package/dist/remarkable-pro.css +1 -1
- package/dist/styles.utils-u6uj51UE.js +59 -0
- package/dist/styles.utils-u6uj51UE.js.map +1 -0
- package/dist/{tables.utils-Cxh-FOdo.js → tables.utils-Bb34U0u9.js} +5 -4
- package/dist/{tables.utils-Cxh-FOdo.js.map → tables.utils-Bb34U0u9.js.map} +1 -1
- package/dist/theme/defaults/defaults.GranularityOptions.constants.d.ts +1 -0
- package/dist/theme/defaults/defaults.GranularityOptions.constants.d.ts.map +1 -1
- package/dist/theme/styles/styles.utils.d.ts +12 -0
- package/dist/theme/styles/styles.utils.d.ts.map +1 -1
- package/dist/theme/theme.types.d.ts +10 -0
- package/dist/theme/theme.types.d.ts.map +1 -1
- package/dist/{timeRange.utils-C_oRVExZ.js → timeRange.utils-DdzcsFwj.js} +5 -5
- package/dist/{timeRange.utils-C_oRVExZ.js.map → timeRange.utils-DdzcsFwj.js.map} +1 -1
- package/package.json +2 -2
- package/dist/bars.utils-Buw9Xk8l.js +0 -146
- package/dist/bars.utils-Buw9Xk8l.js.map +0 -1
- package/dist/component.inputs.constants-DO_jX-yc.js.map +0 -1
- package/dist/components/editors/GranularitySelectFieldPro/GranularitySelectFieldPro.utils.d.ts.map +0 -1
- package/dist/index-0rHy8NOt.js +0 -161
- package/dist/index-0rHy8NOt.js.map +0 -1
- package/dist/index-BXQNwmFh.js +0 -84
- package/dist/index-BXQNwmFh.js.map +0 -1
- package/dist/index-CBcVtvlk.js +0 -75
- package/dist/index-CBcVtvlk.js.map +0 -1
- package/dist/index-CiAXHm8i.js +0 -83
- package/dist/index-CiAXHm8i.js.map +0 -1
- package/dist/index-D2oLkkYS.js +0 -73
- package/dist/index-D2oLkkYS.js.map +0 -1
- package/dist/index-DEsLQa4J.js +0 -166
- package/dist/index-DEsLQa4J.js.map +0 -1
- package/dist/index-DLfIAAoB.js +0 -332
- package/dist/index-DLfIAAoB.js.map +0 -1
- package/dist/index-PyqBKn-b.js +0 -83
- package/dist/index-PyqBKn-b.js.map +0 -1
- package/dist/index-z7CRXEdV.js +0 -82
- package/dist/index-z7CRXEdV.js.map +0 -1
- package/dist/object.utils-D_Zzon-H.js +0 -37
- package/dist/object.utils-D_Zzon-H.js.map +0 -1
- package/dist/pies.utils-CBJLntml.js +0 -73
- package/dist/pies.utils-CBJLntml.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BarChartStackedPro.js","sources":["../src/components/charts/bars/BarChartStackedPro/BarChartStackedPro.emb.ts"],"sourcesContent":["import { Value, loadData } from '@embeddable.com/core';\nimport {\n defineComponent,\n definePreview,\n EmbeddedComponentMeta,\n Inputs,\n} from '@embeddable.com/react';\nimport BarChartStackedPro from './index';\nimport { inputs } from '../../../component.inputs.constants';\nimport { previewData } from '../../../preview.data.constants';\n\nexport const meta = {\n name: 'BarChartStackedPro',\n label: 'Bar Chart - Stacked',\n category: 'Bar Charts',\n inputs: [\n inputs.dataset,\n inputs.measure,\n { ...inputs.
|
|
1
|
+
{"version":3,"file":"BarChartStackedPro.js","sources":["../src/components/charts/bars/BarChartStackedPro/BarChartStackedPro.emb.ts"],"sourcesContent":["import { Granularity, Value, loadData } from '@embeddable.com/core';\nimport {\n defineComponent,\n definePreview,\n EmbeddedComponentMeta,\n Inputs,\n} from '@embeddable.com/react';\nimport BarChartStackedPro from './index';\nimport { inputs } from '../../../component.inputs.constants';\nimport { previewData } from '../../../preview.data.constants';\nimport { getDimensionWithGranularity } from '../../utils/granularity.utils';\n\nexport const meta = {\n name: 'BarChartStackedPro',\n label: 'Bar Chart - Stacked',\n category: 'Bar Charts',\n inputs: [\n inputs.dataset,\n inputs.measure,\n { ...inputs.dimensionWithGranularitySelectField, name: 'xAxis', label: 'X-axis' },\n inputs.groupBy,\n inputs.title,\n inputs.description,\n inputs.maxResults,\n inputs.showLegend,\n inputs.showTooltips,\n { ...inputs.showValueLabels, defaultValue: false },\n inputs.showLogarithmicScale,\n inputs.xAxisLabel,\n inputs.yAxisLabel,\n inputs.reverseXAxis,\n inputs.yAxisRangeMin,\n inputs.yAxisRangeMax,\n inputs.showTotalLabels,\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: 'groupingDimensionValue',\n label: 'Clicked grouping dimension value',\n type: 'string',\n },\n ],\n },\n ],\n} as const satisfies EmbeddedComponentMeta;\n\nexport const preview = definePreview(BarChartStackedPro, {\n xAxis: previewData.dimension,\n groupBy: previewData.dimensionGroup,\n measure: previewData.measure,\n results: previewData.results1Measure2Dimensions,\n hideMenu: true,\n setGranularity: () => {},\n});\n\ntype BarChartStackedProState = {\n granularity?: Granularity;\n};\n\nexport default defineComponent(BarChartStackedPro, meta, {\n props: (\n inputs: Inputs<typeof meta>,\n [state, setState]: [BarChartStackedProState, (state: BarChartStackedProState) => void],\n ) => {\n const xAxisWithGranularity = getDimensionWithGranularity(inputs.xAxis, state?.granularity);\n\n return {\n ...inputs,\n xAxis: xAxisWithGranularity,\n setGranularity: (granularity) => setState({ granularity }),\n results: loadData({\n limit: inputs.maxResults,\n from: inputs.dataset,\n select: [xAxisWithGranularity, inputs.groupBy, inputs.measure],\n }),\n };\n },\n events: {\n onBarClicked: (value) => {\n return {\n axisDimensionValue: value.axisDimensionValue ?? Value.noFilter(),\n groupingDimensionValue: value.groupingDimensionValue ?? Value.noFilter(),\n };\n },\n },\n});\n"],"names":["meta","inputs","preview","definePreview","BarChartStackedPro","previewData","BarChartStackedPro_emb","defineComponent","state","setState","xAxisWithGranularity","getDimensionWithGranularity","granularity","loadData","value","Value"],"mappings":";;;;;;AAYO,MAAMA,IAAO;AAAA,EAClB,MAAM;AAAA,EACN,OAAO;AAAA,EACP,UAAU;AAAA,EACV,QAAQ;AAAA,IACNC,EAAO;AAAA,IACPA,EAAO;AAAA,IACP,EAAE,GAAGA,EAAO,qCAAqC,MAAM,SAAS,OAAO,SAAA;AAAA,IACvEA,EAAO;AAAA,IACPA,EAAO;AAAA,IACPA,EAAO;AAAA,IACPA,EAAO;AAAA,IACPA,EAAO;AAAA,IACPA,EAAO;AAAA,IACP,EAAE,GAAGA,EAAO,iBAAiB,cAAc,GAAA;AAAA,IAC3CA,EAAO;AAAA,IACPA,EAAO;AAAA,IACPA,EAAO;AAAA,IACPA,EAAO;AAAA,IACPA,EAAO;AAAA,IACPA,EAAO;AAAA,IACPA,EAAO;AAAA,EAAA;AAAA,EAET,QAAQ;AAAA,IACN;AAAA,MACE,MAAM;AAAA,MACN,OAAO;AAAA,MACP,YAAY;AAAA,QACV;AAAA,UACE,MAAM;AAAA,UACN,OAAO;AAAA,UACP,MAAM;AAAA,QAAA;AAAA,QAER;AAAA,UACE,MAAM;AAAA,UACN,OAAO;AAAA,UACP,MAAM;AAAA,QAAA;AAAA,MACR;AAAA,IACF;AAAA,EACF;AAEJ,GAEaC,IAAUC,EAAcC,GAAoB;AAAA,EACvD,OAAOC,EAAY;AAAA,EACnB,SAASA,EAAY;AAAA,EACrB,SAASA,EAAY;AAAA,EACrB,SAASA,EAAY;AAAA,EACrB,UAAU;AAAA,EACV,gBAAgB,MAAM;AAAA,EAAC;AACzB,CAAC,GAMDC,IAAeC,EAAgBH,GAAoBJ,GAAM;AAAA,EACvD,OAAO,CACLC,GACA,CAACO,GAAOC,CAAQ,MACb;AACH,UAAMC,IAAuBC,EAA4BV,EAAO,OAAOO,KAAA,gBAAAA,EAAO,WAAW;AAEzF,WAAO;AAAA,MACL,GAAGP;AAAAA,MACH,OAAOS;AAAA,MACP,gBAAgB,CAACE,MAAgBH,EAAS,EAAE,aAAAG,GAAa;AAAA,MACzD,SAASC,EAAS;AAAA,QAChB,OAAOZ,EAAO;AAAA,QACd,MAAMA,EAAO;AAAA,QACb,QAAQ,CAACS,GAAsBT,EAAO,SAASA,EAAO,OAAO;AAAA,MAAA,CAC9D;AAAA,IAAA;AAAA,EAEL;AAAA,EACA,QAAQ;AAAA,IACN,cAAc,CAACa,OACN;AAAA,MACL,oBAAoBA,EAAM,sBAAsBC,EAAM,SAAA;AAAA,MACtD,wBAAwBD,EAAM,0BAA0BC,EAAM,SAAA;AAAA,IAAS;AAAA,EAE3E;AAEJ,CAAC;"}
|
|
@@ -1,28 +1,28 @@
|
|
|
1
|
-
import { i as I, j as t,
|
|
1
|
+
import { i as I, j as t, W as N, z as S, E as L, F as k, A as D, r as M, s as F, p as _, t as H, X as b, v as f } from "./Color.type.emb-De2K8PVb.js";
|
|
2
2
|
import j, { useRef as T } from "react";
|
|
3
3
|
import { useTheme as p } from "@embeddable.com/react";
|
|
4
|
-
import { a as v, i as d, I as w } from "./component.inputs.constants-
|
|
4
|
+
import { a as v, i as d, I as w } from "./component.inputs.constants-wDyG8tFg.js";
|
|
5
5
|
/**
|
|
6
6
|
* @license @tabler/icons-react v3.36.1 - MIT
|
|
7
7
|
*
|
|
8
8
|
* This source code is licensed under the MIT license.
|
|
9
9
|
* See the LICENSE file in the root directory of this source tree.
|
|
10
10
|
*/
|
|
11
|
-
const A = [["path", { d: "M11 12a1 1 0 1 0 2 0a1 1 0 1 0 -2 0", key: "svg-0" }], ["path", { d: "M11 19a1 1 0 1 0 2 0a1 1 0 1 0 -2 0", key: "svg-1" }], ["path", { d: "M11 5a1 1 0 1 0 2 0a1 1 0 1 0 -2 0", key: "svg-2" }]], E = I("outline", "dots-vertical", "DotsVertical", A), O = "_chartCard_1c8il_1", P = "_chartCardHeader_1c8il_6",
|
|
11
|
+
const A = [["path", { d: "M11 12a1 1 0 1 0 2 0a1 1 0 1 0 -2 0", key: "svg-0" }], ["path", { d: "M11 19a1 1 0 1 0 2 0a1 1 0 1 0 -2 0", key: "svg-1" }], ["path", { d: "M11 5a1 1 0 1 0 2 0a1 1 0 1 0 -2 0", key: "svg-2" }]], E = I("outline", "dots-vertical", "DotsVertical", A), O = "_chartCard_1c8il_1", P = "_chartCardHeader_1c8il_6", V = "_hidden_1c8il_10", $ = "_chartCardRightContent_1c8il_14", i = {
|
|
12
12
|
chartCard: O,
|
|
13
13
|
chartCardHeader: P,
|
|
14
|
-
hidden:
|
|
15
|
-
chartCardRightContent:
|
|
16
|
-
},
|
|
17
|
-
loading:
|
|
18
|
-
}, y = () => /* @__PURE__ */ t.jsx(N, { className:
|
|
19
|
-
list:
|
|
14
|
+
hidden: V,
|
|
15
|
+
chartCardRightContent: $
|
|
16
|
+
}, z = "_loading_1hx4f_7", B = {
|
|
17
|
+
loading: z
|
|
18
|
+
}, y = () => /* @__PURE__ */ t.jsx(N, { className: B.loading }), K = "_list_mwshn_1", U = {
|
|
19
|
+
list: K
|
|
20
20
|
};
|
|
21
|
-
function
|
|
21
|
+
function W({ src: n, className: a, ...r }) {
|
|
22
22
|
const e = decodeURIComponent(n.replace(/^data:image\/svg\+xml,/, ""));
|
|
23
23
|
return /* @__PURE__ */ t.jsx("div", { className: a, ...r, dangerouslySetInnerHTML: { __html: e } });
|
|
24
24
|
}
|
|
25
|
-
const
|
|
25
|
+
const X = (n) => {
|
|
26
26
|
const a = p();
|
|
27
27
|
v(a);
|
|
28
28
|
const [r, e] = j.useState(!1), o = a.defaults.chartMenuOptions ?? [];
|
|
@@ -45,21 +45,21 @@ const W = (n) => {
|
|
|
45
45
|
side: "bottom",
|
|
46
46
|
align: "end",
|
|
47
47
|
triggerComponent: r ? /* @__PURE__ */ t.jsx(y, {}) : /* @__PURE__ */ t.jsx(D, { icon: E }),
|
|
48
|
-
children: /* @__PURE__ */ t.jsx(L, { className:
|
|
48
|
+
children: /* @__PURE__ */ t.jsx(L, { className: U.list, autoFocus: !0, children: o.map((s, c) => {
|
|
49
49
|
const m = d.t(s.labelKey);
|
|
50
50
|
return /* @__PURE__ */ t.jsx(
|
|
51
51
|
k,
|
|
52
52
|
{
|
|
53
53
|
label: m,
|
|
54
54
|
onClick: () => h(s.onClick),
|
|
55
|
-
startIcon: s.iconSrc ? /* @__PURE__ */ t.jsx(
|
|
55
|
+
startIcon: s.iconSrc ? /* @__PURE__ */ t.jsx(W, { src: s.iconSrc }) : void 0
|
|
56
56
|
},
|
|
57
57
|
c
|
|
58
58
|
);
|
|
59
59
|
}) })
|
|
60
60
|
}
|
|
61
61
|
);
|
|
62
|
-
},
|
|
62
|
+
}, q = j.forwardRef(
|
|
63
63
|
({
|
|
64
64
|
title: n,
|
|
65
65
|
description: a,
|
|
@@ -73,7 +73,7 @@ const W = (n) => {
|
|
|
73
73
|
var x;
|
|
74
74
|
const m = p();
|
|
75
75
|
v(m);
|
|
76
|
-
const u = T(null), g = !!(e != null && e.data && ((x = e.data) == null ? void 0 : x.length) > 0), C = !e || (e == null ? void 0 : e.isLoading), R = () => C && !g ? /* @__PURE__ */ t.jsx(
|
|
76
|
+
const u = T(null), g = !!(e != null && e.data && ((x = e.data) == null ? void 0 : x.length) > 0), C = !e || (e == null ? void 0 : e.isLoading), R = () => C && !g ? /* @__PURE__ */ t.jsx(b, {}) : o ? /* @__PURE__ */ t.jsx(
|
|
77
77
|
f,
|
|
78
78
|
{
|
|
79
79
|
variant: "error",
|
|
@@ -90,11 +90,11 @@ const W = (n) => {
|
|
|
90
90
|
);
|
|
91
91
|
return /* @__PURE__ */ t.jsxs(M, { className: i.chartCard, children: [
|
|
92
92
|
h ? null : /* @__PURE__ */ t.jsxs(t.Fragment, { children: [
|
|
93
|
-
/* @__PURE__ */ t.jsx("div", { className: i.chartCardHeader, children: /* @__PURE__ */ t.jsx(
|
|
93
|
+
/* @__PURE__ */ t.jsx("div", { className: i.chartCardHeader, children: /* @__PURE__ */ t.jsx(F, { title: n, subtitle: a }) }),
|
|
94
94
|
/* @__PURE__ */ t.jsxs("div", { className: i.chartCardRightContent, children: [
|
|
95
95
|
/* @__PURE__ */ t.jsx("div", { className: _(!C && i.hidden), children: /* @__PURE__ */ t.jsx(y, {}) }),
|
|
96
96
|
/* @__PURE__ */ t.jsx("div", { className: _(C && i.hidden), children: /* @__PURE__ */ t.jsx(
|
|
97
|
-
|
|
97
|
+
X,
|
|
98
98
|
{
|
|
99
99
|
title: n,
|
|
100
100
|
containerRef: u,
|
|
@@ -105,12 +105,12 @@ const W = (n) => {
|
|
|
105
105
|
) })
|
|
106
106
|
] })
|
|
107
107
|
] }),
|
|
108
|
-
/* @__PURE__ */ t.jsx(
|
|
108
|
+
/* @__PURE__ */ t.jsx(H, { ref: s ? c : u, children: R() })
|
|
109
109
|
] });
|
|
110
110
|
}
|
|
111
111
|
);
|
|
112
|
-
|
|
112
|
+
q.displayName = "ChartCard";
|
|
113
113
|
export {
|
|
114
|
-
|
|
114
|
+
q as C
|
|
115
115
|
};
|
|
116
|
-
//# sourceMappingURL=ChartCard-
|
|
116
|
+
//# sourceMappingURL=ChartCard-C6rVK7Ux.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ChartCard-BHPN4_tz.js","sources":["../node_modules/@tabler/icons-react/dist/esm/icons/IconDotsVertical.mjs","../src/components/charts/shared/ChartCard/ChartCardLoading/ChartCardLoading.tsx","../src/components/charts/shared/ChartCard/ChartCardMenuPro/ChartCardMenuPro.tsx","../src/components/charts/shared/ChartCard/ChartCard.tsx"],"sourcesContent":["/**\n * @license @tabler/icons-react v3.36.1 - MIT\n *\n * This source code is licensed under the MIT license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createReactComponent from '../createReactComponent.mjs';\n\nconst __iconNode = [[\"path\", { \"d\": \"M11 12a1 1 0 1 0 2 0a1 1 0 1 0 -2 0\", \"key\": \"svg-0\" }], [\"path\", { \"d\": \"M11 19a1 1 0 1 0 2 0a1 1 0 1 0 -2 0\", \"key\": \"svg-1\" }], [\"path\", { \"d\": \"M11 5a1 1 0 1 0 2 0a1 1 0 1 0 -2 0\", \"key\": \"svg-2\" }]];\nconst IconDotsVertical = createReactComponent(\"outline\", \"dots-vertical\", \"DotsVertical\", __iconNode);\n\nexport { __iconNode, IconDotsVertical as default };\n//# sourceMappingURL=IconDotsVertical.mjs.map\n","import { IconLoader2 } from '@tabler/icons-react';\nimport styles from './ChartCardLoading.module.css';\n\nexport const ChartCardLoading = () => <IconLoader2 className={styles.loading} />;\n","import { IconDotsVertical } from '@tabler/icons-react';\nimport React from 'react';\nimport { useTheme } from '@embeddable.com/react';\nimport { ChartCardLoading } from '../ChartCardLoading/ChartCardLoading';\nimport { i18n, i18nSetup } from '../../../../../theme/i18n/i18n';\nimport { Theme } from '../../../../../theme/theme.types';\nimport {\n Dropdown,\n ActionIcon,\n SelectFieldContent,\n SelectListOption,\n} from '@embeddable.com/remarkable-ui';\nimport styles from './ChartCardMenuPro.module.css';\nimport { ChartCardMenuOptionOnClickProps } from '../../../../../theme/defaults/defaults.ChartCardMenu.constants';\n\ntype InlineSvgFromDataProps = React.HTMLAttributes<HTMLSpanElement> & {\n src: string;\n};\n\nexport function InlineSvgFromData({ src, className, ...rest }: InlineSvgFromDataProps) {\n // Remove prefix and URL-decode the SVG markup\n const svgMarkup = decodeURIComponent(src.replace(/^data:image\\/svg\\+xml,/, ''));\n\n return <div className={className} {...rest} dangerouslySetInnerHTML={{ __html: svgMarkup }} />;\n}\n\ntype ChartCardMenuProProps = Omit<ChartCardMenuOptionOnClickProps, 'theme'>;\n\nexport const ChartCardMenuPro: React.FC<ChartCardMenuProProps> = (props) => {\n const theme: Theme = useTheme() as Theme;\n i18nSetup(theme);\n\n const [isLoading, setIsLoading] = React.useState(false);\n\n const options = theme.defaults.chartMenuOptions ?? [];\n\n if (options.length === 0) {\n return null;\n }\n\n const startAction = (onClick: () => void | Promise<void>) => {\n setTimeout(() => {\n Promise.resolve(onClick()).finally(() => setIsLoading(false));\n }, 100);\n };\n\n const handleExport = (onClick: (props: ChartCardMenuOptionOnClickProps) => void) => {\n setIsLoading(true);\n if (props.onCustomDownload) {\n props.onCustomDownload((args) => startAction(() => onClick(args)));\n return;\n }\n startAction(() => onClick({ ...props, theme }));\n };\n\n return (\n <Dropdown\n side=\"bottom\"\n align=\"end\"\n triggerComponent={isLoading ? <ChartCardLoading /> : <ActionIcon icon={IconDotsVertical} />}\n >\n <SelectFieldContent className={styles.list} autoFocus>\n {options.map((option, index) => {\n const label = i18n.t(option.labelKey);\n\n return (\n <SelectListOption\n key={index}\n label={label}\n onClick={() => handleExport(option.onClick)}\n startIcon={option.iconSrc ? <InlineSvgFromData src={option.iconSrc} /> : undefined}\n />\n );\n })}\n </SelectFieldContent>\n </Dropdown>\n );\n};\n","import React, { CSSProperties, useRef } from 'react';\nimport { IconAlertCircle } from '@tabler/icons-react';\nimport {\n Card,\n CardContent,\n CardFeedback,\n CardHeader,\n Skeleton,\n} from '@embeddable.com/remarkable-ui';\nimport styles from './ChartCard.module.css';\nimport { DataResponse, Dimension, Measure } from '@embeddable.com/core';\nimport { useTheme } from '@embeddable.com/react';\nimport { ChartCardLoading } from './ChartCardLoading/ChartCardLoading';\nimport { ChartCardMenuPro } from './ChartCardMenuPro/ChartCardMenuPro';\nimport { Theme } from '../../../../theme/theme.types';\nimport { i18n, i18nSetup } from '../../../../theme/i18n/i18n';\nimport clsx from 'clsx';\nimport { ChartCardMenuOptionOnClickProps } from '../../../../theme/defaults/defaults.ChartCardMenu.constants';\n\nexport type ChartCardHeaderProps = {\n title?: string;\n description?: string;\n hideMenu?: boolean;\n};\n\ntype ChartCardProps = {\n children: React.ReactNode;\n data: DataResponse;\n errorMessage?: string;\n style?: CSSProperties;\n dimensionsAndMeasures?: (Dimension | Measure)[];\n onCustomDownload?: (props: (props: ChartCardMenuOptionOnClickProps) => void) => void;\n} & ChartCardHeaderProps;\n\nexport const ChartCard = React.forwardRef<HTMLDivElement, ChartCardProps>(\n (\n {\n title,\n description,\n children,\n data,\n errorMessage,\n dimensionsAndMeasures = [],\n hideMenu = false,\n onCustomDownload,\n },\n ref,\n ) => {\n const theme: Theme = useTheme() as Theme;\n i18nSetup(theme);\n\n const chartRef = useRef<HTMLDivElement>(null);\n\n const hasData = Boolean(data?.data && data.data?.length > 0);\n\n const isLoading = !data || data?.isLoading;\n\n const getDisplay = () => {\n if (isLoading && !hasData) {\n return <Skeleton />;\n }\n\n if (errorMessage) {\n return (\n <CardFeedback\n variant=\"error\"\n icon={IconAlertCircle}\n title={i18n.t('charts.errorTitle')}\n message={errorMessage}\n />\n );\n }\n\n if (!hasData) {\n return (\n <CardFeedback\n title={i18n.t('charts.emptyTitle')}\n message={i18n.t('charts.emptyMessage')}\n />\n );\n }\n\n return children;\n };\n\n return (\n <Card className={styles.chartCard}>\n {hideMenu ? null : (\n <>\n <div className={styles.chartCardHeader}>\n <CardHeader title={title} subtitle={description} />\n </div>\n <div className={styles.chartCardRightContent}>\n <div className={clsx(!isLoading && styles.hidden)}>\n <ChartCardLoading />\n </div>\n <div className={clsx(isLoading && styles.hidden)}>\n <ChartCardMenuPro\n title={title}\n containerRef={chartRef}\n data={data?.data}\n dimensionsAndMeasures={dimensionsAndMeasures}\n onCustomDownload={onCustomDownload}\n />\n </div>\n </div>\n </>\n )}\n\n <CardContent ref={onCustomDownload ? ref : chartRef}>{getDisplay()}</CardContent>\n </Card>\n );\n },\n);\n\nChartCard.displayName = 'ChartCard';\n"],"names":["__iconNode","IconDotsVertical","createReactComponent","ChartCardLoading","jsx","IconLoader2","styles","InlineSvgFromData","src","className","rest","svgMarkup","ChartCardMenuPro","props","theme","useTheme","i18nSetup","isLoading","setIsLoading","React","options","startAction","onClick","handleExport","args","Dropdown","ActionIcon","SelectFieldContent","option","index","label","i18n","SelectListOption","ChartCard","title","description","children","data","errorMessage","dimensionsAndMeasures","hideMenu","onCustomDownload","ref","chartRef","useRef","hasData","_a","getDisplay","Skeleton","CardFeedback","IconAlertCircle","jsxs","Card","Fragment","CardHeader","clsx","CardContent"],"mappings":"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","x_google_ignoreList":[0]}
|
|
1
|
+
{"version":3,"file":"ChartCard-C6rVK7Ux.js","sources":["../node_modules/@tabler/icons-react/dist/esm/icons/IconDotsVertical.mjs","../src/components/charts/shared/ChartCard/ChartCardLoading/ChartCardLoading.tsx","../src/components/charts/shared/ChartCard/ChartCardMenuPro/ChartCardMenuPro.tsx","../src/components/charts/shared/ChartCard/ChartCard.tsx"],"sourcesContent":["/**\n * @license @tabler/icons-react v3.36.1 - MIT\n *\n * This source code is licensed under the MIT license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createReactComponent from '../createReactComponent.mjs';\n\nconst __iconNode = [[\"path\", { \"d\": \"M11 12a1 1 0 1 0 2 0a1 1 0 1 0 -2 0\", \"key\": \"svg-0\" }], [\"path\", { \"d\": \"M11 19a1 1 0 1 0 2 0a1 1 0 1 0 -2 0\", \"key\": \"svg-1\" }], [\"path\", { \"d\": \"M11 5a1 1 0 1 0 2 0a1 1 0 1 0 -2 0\", \"key\": \"svg-2\" }]];\nconst IconDotsVertical = createReactComponent(\"outline\", \"dots-vertical\", \"DotsVertical\", __iconNode);\n\nexport { __iconNode, IconDotsVertical as default };\n//# sourceMappingURL=IconDotsVertical.mjs.map\n","import { IconLoader2 } from '@tabler/icons-react';\nimport styles from './ChartCardLoading.module.css';\n\nexport const ChartCardLoading = () => <IconLoader2 className={styles.loading} />;\n","import { IconDotsVertical } from '@tabler/icons-react';\nimport React from 'react';\nimport { useTheme } from '@embeddable.com/react';\nimport { ChartCardLoading } from '../ChartCardLoading/ChartCardLoading';\nimport { i18n, i18nSetup } from '../../../../../theme/i18n/i18n';\nimport { Theme } from '../../../../../theme/theme.types';\nimport {\n Dropdown,\n ActionIcon,\n SelectFieldContent,\n SelectListOption,\n} from '@embeddable.com/remarkable-ui';\nimport styles from './ChartCardMenuPro.module.css';\nimport { ChartCardMenuOptionOnClickProps } from '../../../../../theme/defaults/defaults.ChartCardMenu.constants';\n\ntype InlineSvgFromDataProps = React.HTMLAttributes<HTMLSpanElement> & {\n src: string;\n};\n\nexport function InlineSvgFromData({ src, className, ...rest }: InlineSvgFromDataProps) {\n // Remove prefix and URL-decode the SVG markup\n const svgMarkup = decodeURIComponent(src.replace(/^data:image\\/svg\\+xml,/, ''));\n\n return <div className={className} {...rest} dangerouslySetInnerHTML={{ __html: svgMarkup }} />;\n}\n\ntype ChartCardMenuProProps = Omit<ChartCardMenuOptionOnClickProps, 'theme'>;\n\nexport const ChartCardMenuPro: React.FC<ChartCardMenuProProps> = (props) => {\n const theme: Theme = useTheme() as Theme;\n i18nSetup(theme);\n\n const [isLoading, setIsLoading] = React.useState(false);\n\n const options = theme.defaults.chartMenuOptions ?? [];\n\n if (options.length === 0) {\n return null;\n }\n\n const startAction = (onClick: () => void | Promise<void>) => {\n setTimeout(() => {\n Promise.resolve(onClick()).finally(() => setIsLoading(false));\n }, 100);\n };\n\n const handleExport = (onClick: (props: ChartCardMenuOptionOnClickProps) => void) => {\n setIsLoading(true);\n if (props.onCustomDownload) {\n props.onCustomDownload((args) => startAction(() => onClick(args)));\n return;\n }\n startAction(() => onClick({ ...props, theme }));\n };\n\n return (\n <Dropdown\n side=\"bottom\"\n align=\"end\"\n triggerComponent={isLoading ? <ChartCardLoading /> : <ActionIcon icon={IconDotsVertical} />}\n >\n <SelectFieldContent className={styles.list} autoFocus>\n {options.map((option, index) => {\n const label = i18n.t(option.labelKey);\n\n return (\n <SelectListOption\n key={index}\n label={label}\n onClick={() => handleExport(option.onClick)}\n startIcon={option.iconSrc ? <InlineSvgFromData src={option.iconSrc} /> : undefined}\n />\n );\n })}\n </SelectFieldContent>\n </Dropdown>\n );\n};\n","import React, { CSSProperties, useRef } from 'react';\nimport { IconAlertCircle } from '@tabler/icons-react';\nimport {\n Card,\n CardContent,\n CardFeedback,\n CardHeader,\n Skeleton,\n} from '@embeddable.com/remarkable-ui';\nimport styles from './ChartCard.module.css';\nimport { DataResponse, Dimension, Measure } from '@embeddable.com/core';\nimport { useTheme } from '@embeddable.com/react';\nimport { ChartCardLoading } from './ChartCardLoading/ChartCardLoading';\nimport { ChartCardMenuPro } from './ChartCardMenuPro/ChartCardMenuPro';\nimport { Theme } from '../../../../theme/theme.types';\nimport { i18n, i18nSetup } from '../../../../theme/i18n/i18n';\nimport clsx from 'clsx';\nimport { ChartCardMenuOptionOnClickProps } from '../../../../theme/defaults/defaults.ChartCardMenu.constants';\n\nexport type ChartCardHeaderProps = {\n title?: string;\n description?: string;\n hideMenu?: boolean;\n};\n\ntype ChartCardProps = {\n children: React.ReactNode;\n data: DataResponse;\n errorMessage?: string;\n style?: CSSProperties;\n dimensionsAndMeasures?: (Dimension | Measure)[];\n onCustomDownload?: (props: (props: ChartCardMenuOptionOnClickProps) => void) => void;\n} & ChartCardHeaderProps;\n\nexport const ChartCard = React.forwardRef<HTMLDivElement, ChartCardProps>(\n (\n {\n title,\n description,\n children,\n data,\n errorMessage,\n dimensionsAndMeasures = [],\n hideMenu = false,\n onCustomDownload,\n },\n ref,\n ) => {\n const theme: Theme = useTheme() as Theme;\n i18nSetup(theme);\n\n const chartRef = useRef<HTMLDivElement>(null);\n\n const hasData = Boolean(data?.data && data.data?.length > 0);\n\n const isLoading = !data || data?.isLoading;\n\n const getDisplay = () => {\n if (isLoading && !hasData) {\n return <Skeleton />;\n }\n\n if (errorMessage) {\n return (\n <CardFeedback\n variant=\"error\"\n icon={IconAlertCircle}\n title={i18n.t('charts.errorTitle')}\n message={errorMessage}\n />\n );\n }\n\n if (!hasData) {\n return (\n <CardFeedback\n title={i18n.t('charts.emptyTitle')}\n message={i18n.t('charts.emptyMessage')}\n />\n );\n }\n\n return children;\n };\n\n return (\n <Card className={styles.chartCard}>\n {hideMenu ? null : (\n <>\n <div className={styles.chartCardHeader}>\n <CardHeader title={title} subtitle={description} />\n </div>\n <div className={styles.chartCardRightContent}>\n <div className={clsx(!isLoading && styles.hidden)}>\n <ChartCardLoading />\n </div>\n <div className={clsx(isLoading && styles.hidden)}>\n <ChartCardMenuPro\n title={title}\n containerRef={chartRef}\n data={data?.data}\n dimensionsAndMeasures={dimensionsAndMeasures}\n onCustomDownload={onCustomDownload}\n />\n </div>\n </div>\n </>\n )}\n\n <CardContent ref={onCustomDownload ? ref : chartRef}>{getDisplay()}</CardContent>\n </Card>\n );\n },\n);\n\nChartCard.displayName = 'ChartCard';\n"],"names":["__iconNode","IconDotsVertical","createReactComponent","ChartCardLoading","jsx","IconLoader2","styles","InlineSvgFromData","src","className","rest","svgMarkup","ChartCardMenuPro","props","theme","useTheme","i18nSetup","isLoading","setIsLoading","React","options","startAction","onClick","handleExport","args","Dropdown","ActionIcon","SelectFieldContent","option","index","label","i18n","SelectListOption","ChartCard","title","description","children","data","errorMessage","dimensionsAndMeasures","hideMenu","onCustomDownload","ref","chartRef","useRef","hasData","_a","getDisplay","Skeleton","CardFeedback","IconAlertCircle","jsxs","Card","Fragment","CardHeader","clsx","CardContent"],"mappings":"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","x_google_ignoreList":[0]}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import { j as e, p as u } from "./Color.type.emb-De2K8PVb.js";
|
|
2
|
+
import { G as y } from "./GranularitySelectField-CYq2YuAO.js";
|
|
3
|
+
const m = "_chartGranularitySelectFieldContainer_m26zn_1", p = "_marginTop_m26zn_7", i = {
|
|
4
|
+
chartGranularitySelectFieldContainer: m,
|
|
5
|
+
marginTop: p
|
|
6
|
+
}, G = ["day", "week", "month", "quarter", "year"], S = ({
|
|
7
|
+
dimension: r,
|
|
8
|
+
hasMarginTop: l,
|
|
9
|
+
...o
|
|
10
|
+
}) => {
|
|
11
|
+
var a, t, n;
|
|
12
|
+
if (!((a = r == null ? void 0 : r.inputs) == null ? void 0 : a.showGranularityDropdown))
|
|
13
|
+
return null;
|
|
14
|
+
const s = (t = r.inputs) == null ? void 0 : t.dateBounds, c = (n = r.inputs) == null ? void 0 : n.granularity;
|
|
15
|
+
return /* @__PURE__ */ e.jsx(
|
|
16
|
+
"div",
|
|
17
|
+
{
|
|
18
|
+
className: u(
|
|
19
|
+
i.chartGranularitySelectFieldContainer,
|
|
20
|
+
l && i.marginTop
|
|
21
|
+
),
|
|
22
|
+
children: /* @__PURE__ */ e.jsx(
|
|
23
|
+
y,
|
|
24
|
+
{
|
|
25
|
+
...o,
|
|
26
|
+
primaryTimeRange: s,
|
|
27
|
+
granularity: c,
|
|
28
|
+
granularities: G,
|
|
29
|
+
variant: "ghost",
|
|
30
|
+
side: "bottom",
|
|
31
|
+
align: "end"
|
|
32
|
+
}
|
|
33
|
+
)
|
|
34
|
+
}
|
|
35
|
+
);
|
|
36
|
+
};
|
|
37
|
+
export {
|
|
38
|
+
S as C
|
|
39
|
+
};
|
|
40
|
+
//# sourceMappingURL=ChartGranularitySelectField-BxhibpgC.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ChartGranularitySelectField-BxhibpgC.js","sources":["../src/components/charts/shared/ChartGranularitySelectField/ChartGranularitySelectField.tsx"],"sourcesContent":["import { Dimension, Granularity } from '@embeddable.com/core';\nimport {\n GranularitySelectField,\n GranularitySelectFieldProps,\n} from '../../../editors/shared/GranularitySelectField/GranularitySelectField';\nimport styles from './ChartGranularitySelectField.module.css';\nimport clsx from 'clsx';\n\ntype ChartGranularitySelectFieldProps = Pick<GranularitySelectFieldProps, 'onChange'> & {\n dimension: Dimension;\n hasMarginTop?: boolean;\n};\n\nconst dimensionGranularities: Granularity[] = ['day', 'week', 'month', 'quarter', 'year'];\n\nexport const ChartGranularitySelectField = ({\n dimension,\n hasMarginTop,\n ...props\n}: ChartGranularitySelectFieldProps) => {\n const showGranularitySelector = dimension?.inputs?.showGranularityDropdown;\n\n if (!showGranularitySelector) {\n return null;\n }\n\n const dimensionTimeRange = dimension.inputs?.dateBounds;\n const dimensionGranularity = dimension.inputs?.granularity;\n\n return (\n <div\n className={clsx(\n styles.chartGranularitySelectFieldContainer,\n hasMarginTop && styles.marginTop,\n )}\n >\n <GranularitySelectField\n {...props}\n primaryTimeRange={dimensionTimeRange}\n granularity={dimensionGranularity}\n granularities={dimensionGranularities}\n variant=\"ghost\"\n side=\"bottom\"\n align=\"end\"\n />\n </div>\n );\n};\n"],"names":["dimensionGranularities","ChartGranularitySelectField","dimension","hasMarginTop","props","_a","dimensionTimeRange","_b","dimensionGranularity","_c","jsx","clsx","styles","GranularitySelectField"],"mappings":";;;;;GAaMA,IAAwC,CAAC,OAAO,QAAQ,SAAS,WAAW,MAAM,GAE3EC,IAA8B,CAAC;AAAA,EAC1C,WAAAC;AAAA,EACA,cAAAC;AAAA,EACA,GAAGC;AACL,MAAwC;;AAGtC,MAAI,GAF4BC,IAAAH,KAAA,gBAAAA,EAAW,WAAX,gBAAAG,EAAmB;AAGjD,WAAO;AAGT,QAAMC,KAAqBC,IAAAL,EAAU,WAAV,gBAAAK,EAAkB,YACvCC,KAAuBC,IAAAP,EAAU,WAAV,gBAAAO,EAAkB;AAE/C,SACEC,gBAAAA,EAAAA;AAAAA,IAAC;AAAA,IAAA;AAAA,MACC,WAAWC;AAAA,QACTC,EAAO;AAAA,QACPT,KAAgBS,EAAO;AAAA,MAAA;AAAA,MAGzB,UAAAF,gBAAAA,EAAAA;AAAAA,QAACG;AAAA,QAAA;AAAA,UACE,GAAGT;AAAA,UACJ,kBAAkBE;AAAA,UAClB,aAAaE;AAAA,UACb,eAAeR;AAAA,UACf,SAAQ;AAAA,UACR,MAAK;AAAA,UACL,OAAM;AAAA,QAAA;AAAA,MAAA;AAAA,IACR;AAAA,EAAA;AAGN;"}
|