@embeddable.com/remarkable-pro 0.0.14 → 0.0.15
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 +24 -24
- package/dist/BarChartDefaultHorizontalPro.js.map +1 -1
- package/dist/BarChartDefaultPro.js +24 -24
- package/dist/BarChartDefaultPro.js.map +1 -1
- package/dist/BarChartGroupedHorizontalPro.js +27 -27
- package/dist/BarChartGroupedHorizontalPro.js.map +1 -1
- package/dist/BarChartGroupedPro.js +33 -33
- package/dist/BarChartGroupedPro.js.map +1 -1
- package/dist/BarChartStackedHorizontalPro.js +28 -28
- package/dist/BarChartStackedHorizontalPro.js.map +1 -1
- package/dist/BarChartStackedPro.js +27 -27
- package/dist/BarChartStackedPro.js.map +1 -1
- package/dist/{ChartCard-DaUtlchs.js → ChartCard-BEIVgW77.js} +3 -3
- package/dist/{ChartCard-DaUtlchs.js.map → ChartCard-BEIVgW77.js.map} +1 -1
- package/dist/{index-BIiign0L.js → Color.type.emb-ByiNbaI7.js} +7355 -7348
- package/dist/Color.type.emb-ByiNbaI7.js.map +1 -0
- package/dist/ColorEditor.js +10 -11
- package/dist/ColorEditor.js.map +1 -1
- package/dist/ComparisonPeriodSelectFieldPro.js +19 -22
- package/dist/ComparisonPeriodSelectFieldPro.js.map +1 -1
- package/dist/DateRangePickerCustomPro.js +29 -28
- package/dist/DateRangePickerCustomPro.js.map +1 -1
- package/dist/DateRangeSelectFieldPro.js +23 -21
- package/dist/DateRangeSelectFieldPro.js.map +1 -1
- package/dist/DonutChartPro.js +24 -24
- package/dist/DonutChartPro.js.map +1 -1
- package/dist/DonutLabelChartPro.js +29 -30
- package/dist/DonutLabelChartPro.js.map +1 -1
- package/dist/{EditorCard-DXQeyo3r.js → EditorCard-NEIuygkP.js} +10 -10
- package/dist/{EditorCard-DXQeyo3r.js.map → EditorCard-NEIuygkP.js.map} +1 -1
- package/dist/HeatMapPro.js +46 -45
- package/dist/HeatMapPro.js.map +1 -1
- package/dist/KpiChartNumberComparisonPro.js +32 -31
- package/dist/KpiChartNumberComparisonPro.js.map +1 -1
- package/dist/KpiChartNumberPro.js +14 -20
- package/dist/KpiChartNumberPro.js.map +1 -1
- package/dist/LineChartComparisonDefaultPro.js +61 -60
- package/dist/LineChartComparisonDefaultPro.js.map +1 -1
- package/dist/LineChartDefaultPro.js +46 -38
- package/dist/LineChartDefaultPro.js.map +1 -1
- package/dist/LineChartGroupedPro.js +47 -36
- package/dist/LineChartGroupedPro.js.map +1 -1
- package/dist/MultiSelectFieldPro.js +24 -27
- package/dist/MultiSelectFieldPro.js.map +1 -1
- package/dist/PieChartPro.js +24 -24
- package/dist/PieChartPro.js.map +1 -1
- package/dist/PivotTablePro.js +31 -29
- package/dist/PivotTablePro.js.map +1 -1
- package/dist/SingleSelectFieldPro.js +24 -24
- package/dist/SingleSelectFieldPro.js.map +1 -1
- package/dist/TableChartPaginated.js +43 -37
- package/dist/TableChartPaginated.js.map +1 -1
- package/dist/{bars.utils-BOaMUmRC.js → bars.utils-D12lq8bm.js} +4 -4
- package/dist/{bars.utils-BOaMUmRC.js.map → bars.utils-D12lq8bm.js.map} +1 -1
- package/dist/{charts.utils-QEdmPKTi.js → charts.utils-Bq6c6ccK.js} +4 -4
- package/dist/{charts.utils-QEdmPKTi.js.map → charts.utils-Bq6c6ccK.js.map} +1 -1
- package/dist/{component.constants-DJqBv0qe.js → component.inputs.constants-FaX3B1CO.js} +416 -403
- package/dist/component.inputs.constants-FaX3B1CO.js.map +1 -0
- package/dist/components/charts/tables/HeatMapPro/index.d.ts +2 -2
- package/dist/components/charts/tables/HeatMapPro/index.d.ts.map +1 -1
- package/dist/components/component.inputs.constants.d.ts +309 -0
- package/dist/components/component.inputs.constants.d.ts.map +1 -0
- package/dist/components/component.subinputs.constants.d.ts +95 -0
- package/dist/components/component.subinputs.constants.d.ts.map +1 -0
- package/dist/embeddable-components.json +16 -16
- package/dist/{formatter.utils-BRMB8qAc.js → formatter.utils-IGbSBsIu.js} +2 -2
- package/dist/{formatter.utils-BRMB8qAc.js.map → formatter.utils-IGbSBsIu.js.map} +1 -1
- package/dist/{index-DD28i12d.js → index-B15C4kTf.js} +5 -5
- package/dist/{index-DD28i12d.js.map → index-B15C4kTf.js.map} +1 -1
- package/dist/{index-DlkwNVQ_.js → index-BDPQ_c46.js} +5 -5
- package/dist/{index-DlkwNVQ_.js.map → index-BDPQ_c46.js.map} +1 -1
- package/dist/{index-CnbSiVWn.js → index-BKcWHLSf.js} +5 -5
- package/dist/{index-CnbSiVWn.js.map → index-BKcWHLSf.js.map} +1 -1
- package/dist/{index-CrFZJTR2.js → index-BNFqHQr3.js} +6 -6
- package/dist/{index-CrFZJTR2.js.map → index-BNFqHQr3.js.map} +1 -1
- package/dist/{index-BqgkyNm8.js → index-BiTSd5Wd.js} +5 -5
- package/dist/index-BiTSd5Wd.js.map +1 -0
- package/dist/{index-QLS7PLnH.js → index-BjaJdNzu.js} +5 -5
- package/dist/{index-QLS7PLnH.js.map → index-BjaJdNzu.js.map} +1 -1
- package/dist/{index-BbypzboN.js → index-BzF8GFHy.js} +5 -5
- package/dist/{index-BbypzboN.js.map → index-BzF8GFHy.js.map} +1 -1
- package/dist/{index-CfpIN_sB.js → index-CQZhGtUT.js} +6 -6
- package/dist/{index-CfpIN_sB.js.map → index-CQZhGtUT.js.map} +1 -1
- package/dist/{index-BvAMg9p7.js → index-CR69kGQc.js} +5 -5
- package/dist/{index-BvAMg9p7.js.map → index-CR69kGQc.js.map} +1 -1
- package/dist/{index-BcipgJ0R.js → index-CdjbmThq.js} +5 -5
- package/dist/{index-BcipgJ0R.js.map → index-CdjbmThq.js.map} +1 -1
- package/dist/{index-Drxp0RBw.js → index-CwiND2Ct.js} +16 -16
- package/dist/{index-Drxp0RBw.js.map → index-CwiND2Ct.js.map} +1 -1
- package/dist/{index-DD5t0omh.js → index-DLCspqkx.js} +5 -5
- package/dist/{index-DD5t0omh.js.map → index-DLCspqkx.js.map} +1 -1
- package/dist/{index-fHVbX-W0.js → index-DNXqnRoE.js} +5 -5
- package/dist/{index-fHVbX-W0.js.map → index-DNXqnRoE.js.map} +1 -1
- package/dist/{index-9xeta4is.js → index-DRIH3L5J.js} +5 -5
- package/dist/{index-9xeta4is.js.map → index-DRIH3L5J.js.map} +1 -1
- package/dist/{index-BpTn16mw.js → index-DdeFtB5C.js} +22 -22
- package/dist/{index-BpTn16mw.js.map → index-DdeFtB5C.js.map} +1 -1
- package/dist/{index-DkbXF0dN.js → index-Dhj9KjfQ.js} +5 -5
- package/dist/{index-DkbXF0dN.js.map → index-Dhj9KjfQ.js.map} +1 -1
- package/dist/{index-CYfKRRhL.js → index-EAQjfjEJ.js} +16 -16
- package/dist/{index-CYfKRRhL.js.map → index-EAQjfjEJ.js.map} +1 -1
- package/dist/{index-CVv-xIyp.js → index-RHaWI3AH.js} +5 -5
- package/dist/{index-CVv-xIyp.js.map → index-RHaWI3AH.js.map} +1 -1
- package/dist/{index-Ba6ziHiQ.js → index-_fEx7Sbh.js} +4 -4
- package/dist/{index-Ba6ziHiQ.js.map → index-_fEx7Sbh.js.map} +1 -1
- package/dist/{index-DBFwmzJQ.js → index-hHVOyy6e.js} +11 -11
- package/dist/{index-DBFwmzJQ.js.map → index-hHVOyy6e.js.map} +1 -1
- package/dist/{index-Bege60LS.js → index-oK1pn0Vk.js} +5 -5
- package/dist/{index-Bege60LS.js.map → index-oK1pn0Vk.js.map} +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +81 -131
- package/dist/index.js.map +1 -1
- package/dist/{pies.utils-P0szT8UT.js → pies.utils-C5DxeS68.js} +5 -5
- package/dist/{pies.utils-P0szT8UT.js.map → pies.utils-C5DxeS68.js.map} +1 -1
- package/dist/remarkable-pro.css +1 -1
- package/dist/{timeRange.utils-CgLgHA94.js → timeRange.utils-CTEHTF97.js} +2 -2
- package/dist/{timeRange.utils-CgLgHA94.js.map → timeRange.utils-CTEHTF97.js.map} +1 -1
- package/package.json +2 -2
- package/dist/Color.type.emb-DFhAaPXz.js +0 -9
- package/dist/Color.type.emb-DFhAaPXz.js.map +0 -1
- package/dist/ComparisonPeriod.type.emb-C-YdNTEB.js +0 -14
- package/dist/ComparisonPeriod.type.emb-C-YdNTEB.js.map +0 -1
- package/dist/component.constants-DJqBv0qe.js.map +0 -1
- package/dist/components/component.constants.d.ts +0 -324
- package/dist/components/component.constants.d.ts.map +0 -1
- package/dist/index-BIiign0L.js.map +0 -1
- package/dist/index-BqgkyNm8.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ChartCard-DaUtlchs.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.0 - MIT\n *\n * This source code is licensed under the MIT license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createReactComponent from '../createReactComponent.mjs';\n\nconst __iconNode = [[\"path\", { \"d\": \"M12 12m-1 0a1 1 0 1 0 2 0a1 1 0 1 0 -2 0\", \"key\": \"svg-0\" }], [\"path\", { \"d\": \"M12 19m-1 0a1 1 0 1 0 2 0a1 1 0 1 0 -2 0\", \"key\": \"svg-1\" }], [\"path\", { \"d\": \"M12 5m-1 0a1 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\ntype ChartCardProps = {\n title: string;\n subtitle?: string;\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};\n\nexport const ChartCard = React.forwardRef<HTMLDivElement, ChartCardProps>(\n (\n { title, subtitle, children, data, errorMessage, dimensionsAndMeasures = [], onCustomDownload },\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 <CardHeader\n title={title}\n subtitle={subtitle}\n rightContent={\n <div className={styles.chartCardRightContent}>\n <div\n className={clsx(styles.fixedContent, isLoading ? styles.loading : styles.hidden)}\n >\n <ChartCardLoading />\n </div>\n <div\n className={clsx(styles.fixedContent, isLoading ? styles.hidden : styles.visible)}\n >\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","subtitle","children","data","errorMessage","dimensionsAndMeasures","onCustomDownload","ref","chartRef","useRef","hasData","_a","getDisplay","Skeleton","CardFeedback","IconAlertCircle","jsxs","Card","CardHeader","clsx","CardContent"],"mappings":"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","x_google_ignoreList":[0]}
|
|
1
|
+
{"version":3,"file":"ChartCard-BEIVgW77.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.0 - MIT\n *\n * This source code is licensed under the MIT license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createReactComponent from '../createReactComponent.mjs';\n\nconst __iconNode = [[\"path\", { \"d\": \"M12 12m-1 0a1 1 0 1 0 2 0a1 1 0 1 0 -2 0\", \"key\": \"svg-0\" }], [\"path\", { \"d\": \"M12 19m-1 0a1 1 0 1 0 2 0a1 1 0 1 0 -2 0\", \"key\": \"svg-1\" }], [\"path\", { \"d\": \"M12 5m-1 0a1 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\ntype ChartCardProps = {\n title: string;\n subtitle?: string;\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};\n\nexport const ChartCard = React.forwardRef<HTMLDivElement, ChartCardProps>(\n (\n { title, subtitle, children, data, errorMessage, dimensionsAndMeasures = [], onCustomDownload },\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 <CardHeader\n title={title}\n subtitle={subtitle}\n rightContent={\n <div className={styles.chartCardRightContent}>\n <div\n className={clsx(styles.fixedContent, isLoading ? styles.loading : styles.hidden)}\n >\n <ChartCardLoading />\n </div>\n <div\n className={clsx(styles.fixedContent, isLoading ? styles.hidden : styles.visible)}\n >\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","subtitle","children","data","errorMessage","dimensionsAndMeasures","onCustomDownload","ref","chartRef","useRef","hasData","_a","getDisplay","Skeleton","CardFeedback","IconAlertCircle","jsxs","Card","CardHeader","clsx","CardContent"],"mappings":"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","x_google_ignoreList":[0]}
|