@embeddable.com/remarkable-ui 0.1.15 → 0.1.17
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 +43 -40
- package/dist/BarChartDefaultHorizontalPro.js.map +1 -1
- package/dist/BarChartDefaultPro.js +43 -40
- package/dist/BarChartDefaultPro.js.map +1 -1
- package/dist/BarChartGroupedHorizontalPro.js +48 -46
- package/dist/BarChartGroupedHorizontalPro.js.map +1 -1
- package/dist/BarChartGroupedPro.js +44 -41
- package/dist/BarChartGroupedPro.js.map +1 -1
- package/dist/BarChartStackedHorizontalPro.js +46 -43
- package/dist/BarChartStackedHorizontalPro.js.map +1 -1
- package/dist/BarChartStackedPro.js +48 -45
- package/dist/BarChartStackedPro.js.map +1 -1
- package/dist/{BaseButton-BJ_6r0uk.js → BaseButton-BKojrsLP.js} +2 -2
- package/dist/{BaseButton-BJ_6r0uk.js.map → BaseButton-BKojrsLP.js.map} +1 -1
- package/dist/{ChartCard-Cb0QE9kP.js → ChartCard-DLb6o61U.js} +11 -11
- package/dist/{ChartCard-Cb0QE9kP.js.map → ChartCard-DLb6o61U.js.map} +1 -1
- package/dist/ComparisonPeriod.type.emb-BK3kHVRE.js +14 -0
- package/dist/ComparisonPeriod.type.emb-BK3kHVRE.js.map +1 -0
- package/dist/ComparisonPeriodSelectFieldPro.js +6 -6
- package/dist/DateRangeSelectFieldPro.js +2 -2
- package/dist/DonutChartPro.js +2 -2
- package/dist/DonutLabelChartPro.js +2 -2
- package/dist/{EditorCard-DWz8Bm-e.js → EditorCard-COw7ouX6.js} +8 -8
- package/dist/{EditorCard-DWz8Bm-e.js.map → EditorCard-COw7ouX6.js.map} +1 -1
- package/dist/KpiChart-DhPJaw1n.js +79 -0
- package/dist/KpiChart-DhPJaw1n.js.map +1 -0
- package/dist/KpiChartNumberComparisonPro.js +56 -48
- package/dist/KpiChartNumberComparisonPro.js.map +1 -1
- package/dist/KpiChartNumberPro.js +4 -4
- package/dist/MultiSelectFieldPro.js +2 -2
- package/dist/PieChartPro.js +2 -2
- package/dist/{SingleSelectField-BJnoOYrw.js → SingleSelectField-BaBjHlCf.js} +3 -3
- package/dist/{SingleSelectField-BJnoOYrw.js.map → SingleSelectField-BaBjHlCf.js.map} +1 -1
- package/dist/SingleSelectFieldPro.js +2 -2
- package/dist/{charts.fillGaps.hooks-BFmuMVNT.js → charts.fillGaps.hooks-BwlVpKVy.js} +217 -189
- package/dist/charts.fillGaps.hooks-BwlVpKVy.js.map +1 -0
- package/dist/{component.constants-Bn9l4N1t.js → component.constants-DuGM1FcK.js} +9 -9
- package/dist/{component.constants-Bn9l4N1t.js.map → component.constants-DuGM1FcK.js.map} +1 -1
- package/dist/embeddable-components.json +10 -10
- package/dist/embeddable-theme-2b917.js +6 -5
- package/dist/embeddable-types-4ace4.js +4 -5
- package/dist/embeddable-types.js.map +1 -1
- package/dist/{formatter.utils-Ba_5cIcm.js → formatter.utils-C_jDZCA9.js} +2 -2
- package/dist/{formatter.utils-Ba_5cIcm.js.map → formatter.utils-C_jDZCA9.js.map} +1 -1
- package/dist/{index-CobXKlOi.js → index-0JzvLdB-.js} +4 -4
- package/dist/{index-CobXKlOi.js.map → index-0JzvLdB-.js.map} +1 -1
- package/dist/{index-DEzAFKmN.js → index-1ZIedoXi.js} +4 -4
- package/dist/{index-DEzAFKmN.js.map → index-1ZIedoXi.js.map} +1 -1
- package/dist/{index-6ilf5W1J.js → index-CIbTA8lC.js} +5 -5
- package/dist/{index-6ilf5W1J.js.map → index-CIbTA8lC.js.map} +1 -1
- package/dist/{index-Dwb4Z6Hd.js → index-CXq36TbG.js} +4 -4
- package/dist/{index-Dwb4Z6Hd.js.map → index-CXq36TbG.js.map} +1 -1
- package/dist/{index-DYBt2TuY.js → index-CmclYpTi.js} +14 -14
- package/dist/{index-DYBt2TuY.js.map → index-CmclYpTi.js.map} +1 -1
- package/dist/{index-BhW48cz5.js → index-DleI2gEG.js} +5 -5
- package/dist/{index-BhW48cz5.js.map → index-DleI2gEG.js.map} +1 -1
- package/dist/index.js +44 -44
- package/dist/{object.utils-C6JIOYmv.js → object.utils-BlUnrtY3.js} +466 -465
- package/dist/object.utils-BlUnrtY3.js.map +1 -0
- package/dist/{pies.utils-CSx7w1mv.js → pies.utils-cOIEuHyS.js} +4 -4
- package/dist/{pies.utils-CSx7w1mv.js.map → pies.utils-cOIEuHyS.js.map} +1 -1
- package/dist/remarkable-pro/components/charts/bars/BarChartDefaultHorizontalPro/index.d.ts.map +1 -1
- package/dist/remarkable-pro/components/charts/bars/BarChartDefaultPro/index.d.ts.map +1 -1
- package/dist/remarkable-pro/components/charts/bars/BarChartGroupedHorizontalPro/index.d.ts.map +1 -1
- package/dist/remarkable-pro/components/charts/bars/BarChartGroupedPro/index.d.ts.map +1 -1
- package/dist/remarkable-pro/components/charts/bars/BarChartStackedHorizontalPro/index.d.ts.map +1 -1
- package/dist/remarkable-pro/components/charts/bars/BarChartStackedPro/index.d.ts.map +1 -1
- package/dist/remarkable-pro/components/charts/bars/bars.utils.d.ts +2 -0
- package/dist/remarkable-pro/components/charts/bars/bars.utils.d.ts.map +1 -1
- package/dist/remarkable-pro/components/charts/kpis/KpiChartNumberComparisonPro/index.d.ts +1 -0
- package/dist/remarkable-pro/components/charts/kpis/KpiChartNumberComparisonPro/index.d.ts.map +1 -1
- package/dist/remarkable-pro/theme/formatter/formatter.constants.d.ts.map +1 -1
- package/dist/remarkable-pro/theme/styles/styles.utils.d.ts.map +1 -1
- package/dist/remarkable-ui/charts/kpis/KpiChart.d.ts.map +1 -1
- package/dist/remarkable-ui/charts/kpis/KpiChart.types.d.ts +1 -0
- package/dist/remarkable-ui/charts/kpis/KpiChart.types.d.ts.map +1 -1
- package/package.json +1 -1
- package/dist/ComparisonPeriod.type.emb-61HEPz26.js +0 -15
- package/dist/ComparisonPeriod.type.emb-61HEPz26.js.map +0 -1
- package/dist/KpiChart-CzUK0Dgw.js +0 -77
- package/dist/KpiChart-CzUK0Dgw.js.map +0 -1
- package/dist/charts.fillGaps.hooks-BFmuMVNT.js.map +0 -1
- package/dist/object.utils-C6JIOYmv.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index-DYBt2TuY.js","sources":["../node_modules/@tabler/icons-react/dist/esm/icons/IconSquare.mjs","../node_modules/@tabler/icons-react/dist/esm/icons/IconSquareCheckFilled.mjs","../src/remarkable-ui/shared/Button/Button.tsx","../src/remarkable-ui/editors/select/MultiSelectField/MultiSelectField.tsx","../src/remarkable-pro/components/editors/MultiSelectFieldPro/index.tsx"],"sourcesContent":["/**\n * @license @tabler/icons-react v3.34.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\": \"M3 3m0 2a2 2 0 0 1 2 -2h14a2 2 0 0 1 2 2v14a2 2 0 0 1 -2 2h-14a2 2 0 0 1 -2 -2z\", \"key\": \"svg-0\" }]];\nconst IconSquare = createReactComponent(\"outline\", \"square\", \"Square\", __iconNode);\n\nexport { __iconNode, IconSquare as default };\n//# sourceMappingURL=IconSquare.mjs.map\n","/**\n * @license @tabler/icons-react v3.34.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\": \"M18.333 2c1.96 0 3.56 1.537 3.662 3.472l.005 .195v12.666c0 1.96 -1.537 3.56 -3.472 3.662l-.195 .005h-12.666a3.667 3.667 0 0 1 -3.662 -3.472l-.005 -.195v-12.666c0 -1.96 1.537 -3.56 3.472 -3.662l.195 -.005h12.666zm-2.626 7.293a1 1 0 0 0 -1.414 0l-3.293 3.292l-1.293 -1.292l-.094 -.083a1 1 0 0 0 -1.32 1.497l2 2l.094 .083a1 1 0 0 0 1.32 -.083l4 -4l.083 -.094a1 1 0 0 0 -.083 -1.32z\", \"key\": \"svg-0\" }]];\nconst IconSquareCheckFilled = createReactComponent(\"filled\", \"square-check-filled\", \"SquareCheckFilled\", __iconNode);\n\nexport { __iconNode, IconSquareCheckFilled as default };\n//# sourceMappingURL=IconSquareCheckFilled.mjs.map\n","import { TablerIcon } from '@tabler/icons-react';\nimport styles from './Button.module.css';\nimport { BaseButton, type BaseButtonProps } from '../BaseButton';\nimport { Typography } from '../Typography/Typography';\nimport clsx from 'clsx';\n\ntype ButtonProps = BaseButtonProps & {\n startIcon?: TablerIcon;\n endIcon?: TablerIcon;\n children: string;\n size: 'small' | 'medium';\n};\n\nexport const Button: React.FC<ButtonProps> = ({\n variant,\n startIcon: StartIcon,\n endIcon: EndIcon,\n children,\n size,\n ...props\n}) => {\n return (\n <BaseButton\n variant={variant}\n className={size === 'medium' ? styles.buttonMedium : styles.buttonSmall}\n {...props}\n size={size}\n >\n {StartIcon && <StartIcon className={styles.icon} />}\n <Typography\n as=\"span\"\n className={clsx(\n styles.buttonText,\n styles[`buttonText${size.charAt(0).toUpperCase() + size.slice(1)}`],\n )}\n >\n {children}\n </Typography>\n {EndIcon && <EndIcon className={styles.icon} />}\n </BaseButton>\n );\n};\n","import { FC, useEffect, useMemo, useRef, useState } from 'react';\nimport {\n SelectListOption,\n SelectListOptionProps,\n} from '../shared/SelectList/SelectListOptions/SelectListOption/SelectListOption';\nimport { debounce } from '../../../utils/debounce.utils';\nimport { Dropdown } from '../../../shared/Dropdown/Dropdown';\nimport { SelectButton } from '../shared/SelectButton/SelectButton';\nimport { SelectList } from '../shared/SelectList/SelectList';\nimport { TextField } from '../../TextField/TextField';\nimport { SelectListOptions } from '../shared/SelectList/SelectListOptions/SelectListOptions';\nimport { IconSearch, IconSquare, IconSquareCheckFilled } from '@tabler/icons-react';\nimport { Button } from '../../../shared/Button/Button';\nimport styles from './MultiSelectField.module.css';\nimport { useSelectSearchFocus } from '../shared/useSelectSearchFocus.hook';\n\nexport type MultiSelectFieldProps = {\n disabled?: boolean;\n isClearable?: boolean;\n isLoading?: boolean;\n isSearchable?: boolean;\n noOptionsMessage?: string;\n options: SelectListOptionProps[];\n placeholder?: string;\n submitLabel?: string;\n values?: string[];\n onChange: (value: string[]) => void;\n onSearch?: (search: string) => void;\n};\n\nexport const MultiSelectField: FC<MultiSelectFieldProps> = ({\n disabled,\n isClearable,\n isLoading,\n isSearchable,\n noOptionsMessage,\n options,\n placeholder,\n submitLabel = 'Apply',\n values = [],\n onChange,\n onSearch,\n}) => {\n const [isOpen, setIsOpen] = useState(false);\n const [searchValue, setSearchValue] = useState<string>('');\n const [preValues, setPreValues] = useState<string[]>(values);\n const [selectedLabel, setSelectedLabel] = useState<string>('');\n\n const searchFieldRef = useRef<HTMLInputElement>(null);\n useSelectSearchFocus(isOpen, searchFieldRef);\n\n useEffect(() => {\n setPreValues(values);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [JSON.stringify(values)]);\n\n useEffect(() => {\n if (isLoading) {\n return;\n }\n\n if (!values || values.length === 0) {\n setSelectedLabel('');\n return;\n }\n const selectedOptions = values.map(\n (value) => options.find((o) => o.value === value)?.label ?? value,\n );\n\n if (selectedOptions.length > 0) {\n const newLabel = selectedOptions.join(', ');\n setSelectedLabel(`(${selectedOptions.length}) ${newLabel}`);\n }\n }, [values, options, isLoading]);\n\n const debouncedSearch = useMemo(() => (onSearch ? debounce(onSearch) : undefined), [onSearch]);\n\n const displayOptions =\n isSearchable && !onSearch\n ? options.filter((option) => option.label.toLowerCase().includes(searchValue.toLowerCase()))\n : options;\n\n const isSubmitDisabled =\n preValues.every((preValue) => values.includes(preValue)) &&\n values.every((value) => preValues.includes(value));\n\n const handleSelectOption = (\n e: React.MouseEvent<HTMLDivElement, MouseEvent>,\n newValue?: string,\n ) => {\n e.preventDefault();\n\n if (!newValue) return;\n\n if (preValues.includes(newValue)) {\n setPreValues(preValues.filter((v) => v !== newValue));\n } else {\n setPreValues([...preValues, newValue]);\n }\n };\n\n const handleSearch = (newSearch: string) => {\n setSearchValue(newSearch);\n debouncedSearch?.(newSearch);\n };\n\n const handleSave = (newValues: string[]) => {\n onChange(newValues);\n setIsOpen(false);\n setSearchValue('');\n onSearch?.('');\n };\n\n const handleClearAll = () => {\n setSearchValue('');\n onSearch?.('');\n onChange([]);\n };\n\n return (\n <Dropdown\n open={isOpen}\n onOpenChange={setIsOpen}\n disabled={disabled}\n triggerComponent={\n <SelectButton\n aria-label=\"Select options\"\n placeholder={placeholder}\n disabled={disabled}\n valueLabel={selectedLabel}\n onClear={handleClearAll}\n isClearable={isClearable}\n isLoading={isLoading}\n />\n }\n >\n <SelectList>\n {isSearchable && (\n <TextField\n ref={searchFieldRef}\n startIcon={IconSearch}\n aria-label=\"Search options\"\n placeholder=\"Search…\"\n role=\"searchbox\"\n value={searchValue}\n onKeyDown={(e) => e.stopPropagation()}\n onChange={handleSearch}\n />\n )}\n <SelectListOptions disabled={isLoading}>\n {displayOptions.map((option) => (\n <SelectListOption\n key={option?.value ?? option.label}\n onClick={(e) => handleSelectOption(e, option.value)}\n startIcon={\n preValues.includes(option.value!) ? <IconSquareCheckFilled /> : <IconSquare />\n }\n {...option}\n />\n ))}\n {noOptionsMessage && <SelectListOption disabled value=\"empty\" label={noOptionsMessage} />}\n </SelectListOptions>\n <Button\n className={styles.submitButton}\n disabled={isSubmitDisabled || isLoading}\n variant=\"primary\"\n size=\"medium\"\n onClick={() => handleSave(preValues)}\n role=\"button\"\n >\n {submitLabel}\n </Button>\n </SelectList>\n </Dropdown>\n );\n};\n","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 } from '../shared/EditorCard/EditorCard';\nimport { resolveI18nProps } from '../../component.utils';\nimport { i18n } from '../../../theme/i18n/i18n';\nimport { MultiSelectField } from '../../../../remarkable-ui';\n\nexport const MAX_OPTIONS = 200;\n\ntype MultiSelectFieldProProps = {\n title?: string;\n description?: string;\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};\n\nconst MultiSelectFieldPro = (props: MultiSelectFieldProProps) => {\n const theme: Theme = useTheme() as Theme;\n const themeFormatter = getThemeFormatter(theme);\n const {\n title,\n description,\n dimension,\n optionalSecondDimension,\n placeholder,\n results,\n selectedValues,\n setSearchValue,\n onChange,\n } = resolveI18nProps(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} subtitle={description}>\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 />\n </EditorCard>\n );\n};\n\nexport default MultiSelectFieldPro;\n"],"names":["__iconNode","IconSquare","createReactComponent","IconSquareCheckFilled","Button","variant","StartIcon","EndIcon","children","size","props","jsxs","BaseButton","styles","jsx","Typography","clsx","MultiSelectField","disabled","isClearable","isLoading","isSearchable","noOptionsMessage","options","placeholder","submitLabel","values","onChange","onSearch","isOpen","setIsOpen","useState","searchValue","setSearchValue","preValues","setPreValues","selectedLabel","setSelectedLabel","searchFieldRef","useRef","useSelectSearchFocus","useEffect","selectedOptions","value","_a","o","newLabel","debouncedSearch","useMemo","debounce","displayOptions","option","isSubmitDisabled","preValue","handleSelectOption","newValue","v","handleSearch","newSearch","handleSave","newValues","handleClearAll","Dropdown","SelectButton","SelectList","TextField","IconSearch","SelectListOptions","SelectListOption","e","MAX_OPTIONS","MultiSelectFieldPro","theme","useTheme","themeFormatter","getThemeFormatter","title","description","dimension","optionalSecondDimension","results","selectedValues","resolveI18nProps","data","showNoOptionsMessage","_b","EditorCard","i18n"],"mappings":"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","x_google_ignoreList":[0,1]}
|
|
1
|
+
{"version":3,"file":"index-CmclYpTi.js","sources":["../node_modules/@tabler/icons-react/dist/esm/icons/IconSquare.mjs","../node_modules/@tabler/icons-react/dist/esm/icons/IconSquareCheckFilled.mjs","../src/remarkable-ui/shared/Button/Button.tsx","../src/remarkable-ui/editors/select/MultiSelectField/MultiSelectField.tsx","../src/remarkable-pro/components/editors/MultiSelectFieldPro/index.tsx"],"sourcesContent":["/**\n * @license @tabler/icons-react v3.34.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\": \"M3 3m0 2a2 2 0 0 1 2 -2h14a2 2 0 0 1 2 2v14a2 2 0 0 1 -2 2h-14a2 2 0 0 1 -2 -2z\", \"key\": \"svg-0\" }]];\nconst IconSquare = createReactComponent(\"outline\", \"square\", \"Square\", __iconNode);\n\nexport { __iconNode, IconSquare as default };\n//# sourceMappingURL=IconSquare.mjs.map\n","/**\n * @license @tabler/icons-react v3.34.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\": \"M18.333 2c1.96 0 3.56 1.537 3.662 3.472l.005 .195v12.666c0 1.96 -1.537 3.56 -3.472 3.662l-.195 .005h-12.666a3.667 3.667 0 0 1 -3.662 -3.472l-.005 -.195v-12.666c0 -1.96 1.537 -3.56 3.472 -3.662l.195 -.005h12.666zm-2.626 7.293a1 1 0 0 0 -1.414 0l-3.293 3.292l-1.293 -1.292l-.094 -.083a1 1 0 0 0 -1.32 1.497l2 2l.094 .083a1 1 0 0 0 1.32 -.083l4 -4l.083 -.094a1 1 0 0 0 -.083 -1.32z\", \"key\": \"svg-0\" }]];\nconst IconSquareCheckFilled = createReactComponent(\"filled\", \"square-check-filled\", \"SquareCheckFilled\", __iconNode);\n\nexport { __iconNode, IconSquareCheckFilled as default };\n//# sourceMappingURL=IconSquareCheckFilled.mjs.map\n","import { TablerIcon } from '@tabler/icons-react';\nimport styles from './Button.module.css';\nimport { BaseButton, type BaseButtonProps } from '../BaseButton';\nimport { Typography } from '../Typography/Typography';\nimport clsx from 'clsx';\n\ntype ButtonProps = BaseButtonProps & {\n startIcon?: TablerIcon;\n endIcon?: TablerIcon;\n children: string;\n size: 'small' | 'medium';\n};\n\nexport const Button: React.FC<ButtonProps> = ({\n variant,\n startIcon: StartIcon,\n endIcon: EndIcon,\n children,\n size,\n ...props\n}) => {\n return (\n <BaseButton\n variant={variant}\n className={size === 'medium' ? styles.buttonMedium : styles.buttonSmall}\n {...props}\n size={size}\n >\n {StartIcon && <StartIcon className={styles.icon} />}\n <Typography\n as=\"span\"\n className={clsx(\n styles.buttonText,\n styles[`buttonText${size.charAt(0).toUpperCase() + size.slice(1)}`],\n )}\n >\n {children}\n </Typography>\n {EndIcon && <EndIcon className={styles.icon} />}\n </BaseButton>\n );\n};\n","import { FC, useEffect, useMemo, useRef, useState } from 'react';\nimport {\n SelectListOption,\n SelectListOptionProps,\n} from '../shared/SelectList/SelectListOptions/SelectListOption/SelectListOption';\nimport { debounce } from '../../../utils/debounce.utils';\nimport { Dropdown } from '../../../shared/Dropdown/Dropdown';\nimport { SelectButton } from '../shared/SelectButton/SelectButton';\nimport { SelectList } from '../shared/SelectList/SelectList';\nimport { TextField } from '../../TextField/TextField';\nimport { SelectListOptions } from '../shared/SelectList/SelectListOptions/SelectListOptions';\nimport { IconSearch, IconSquare, IconSquareCheckFilled } from '@tabler/icons-react';\nimport { Button } from '../../../shared/Button/Button';\nimport styles from './MultiSelectField.module.css';\nimport { useSelectSearchFocus } from '../shared/useSelectSearchFocus.hook';\n\nexport type MultiSelectFieldProps = {\n disabled?: boolean;\n isClearable?: boolean;\n isLoading?: boolean;\n isSearchable?: boolean;\n noOptionsMessage?: string;\n options: SelectListOptionProps[];\n placeholder?: string;\n submitLabel?: string;\n values?: string[];\n onChange: (value: string[]) => void;\n onSearch?: (search: string) => void;\n};\n\nexport const MultiSelectField: FC<MultiSelectFieldProps> = ({\n disabled,\n isClearable,\n isLoading,\n isSearchable,\n noOptionsMessage,\n options,\n placeholder,\n submitLabel = 'Apply',\n values = [],\n onChange,\n onSearch,\n}) => {\n const [isOpen, setIsOpen] = useState(false);\n const [searchValue, setSearchValue] = useState<string>('');\n const [preValues, setPreValues] = useState<string[]>(values);\n const [selectedLabel, setSelectedLabel] = useState<string>('');\n\n const searchFieldRef = useRef<HTMLInputElement>(null);\n useSelectSearchFocus(isOpen, searchFieldRef);\n\n useEffect(() => {\n setPreValues(values);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [JSON.stringify(values)]);\n\n useEffect(() => {\n if (isLoading) {\n return;\n }\n\n if (!values || values.length === 0) {\n setSelectedLabel('');\n return;\n }\n const selectedOptions = values.map(\n (value) => options.find((o) => o.value === value)?.label ?? value,\n );\n\n if (selectedOptions.length > 0) {\n const newLabel = selectedOptions.join(', ');\n setSelectedLabel(`(${selectedOptions.length}) ${newLabel}`);\n }\n }, [values, options, isLoading]);\n\n const debouncedSearch = useMemo(() => (onSearch ? debounce(onSearch) : undefined), [onSearch]);\n\n const displayOptions =\n isSearchable && !onSearch\n ? options.filter((option) => option.label.toLowerCase().includes(searchValue.toLowerCase()))\n : options;\n\n const isSubmitDisabled =\n preValues.every((preValue) => values.includes(preValue)) &&\n values.every((value) => preValues.includes(value));\n\n const handleSelectOption = (\n e: React.MouseEvent<HTMLDivElement, MouseEvent>,\n newValue?: string,\n ) => {\n e.preventDefault();\n\n if (!newValue) return;\n\n if (preValues.includes(newValue)) {\n setPreValues(preValues.filter((v) => v !== newValue));\n } else {\n setPreValues([...preValues, newValue]);\n }\n };\n\n const handleSearch = (newSearch: string) => {\n setSearchValue(newSearch);\n debouncedSearch?.(newSearch);\n };\n\n const handleSave = (newValues: string[]) => {\n onChange(newValues);\n setIsOpen(false);\n setSearchValue('');\n onSearch?.('');\n };\n\n const handleClearAll = () => {\n setSearchValue('');\n onSearch?.('');\n onChange([]);\n };\n\n return (\n <Dropdown\n open={isOpen}\n onOpenChange={setIsOpen}\n disabled={disabled}\n triggerComponent={\n <SelectButton\n aria-label=\"Select options\"\n placeholder={placeholder}\n disabled={disabled}\n valueLabel={selectedLabel}\n onClear={handleClearAll}\n isClearable={isClearable}\n isLoading={isLoading}\n />\n }\n >\n <SelectList>\n {isSearchable && (\n <TextField\n ref={searchFieldRef}\n startIcon={IconSearch}\n aria-label=\"Search options\"\n placeholder=\"Search…\"\n role=\"searchbox\"\n value={searchValue}\n onKeyDown={(e) => e.stopPropagation()}\n onChange={handleSearch}\n />\n )}\n <SelectListOptions disabled={isLoading}>\n {displayOptions.map((option) => (\n <SelectListOption\n key={option?.value ?? option.label}\n onClick={(e) => handleSelectOption(e, option.value)}\n startIcon={\n preValues.includes(option.value!) ? <IconSquareCheckFilled /> : <IconSquare />\n }\n {...option}\n />\n ))}\n {noOptionsMessage && <SelectListOption disabled value=\"empty\" label={noOptionsMessage} />}\n </SelectListOptions>\n <Button\n className={styles.submitButton}\n disabled={isSubmitDisabled || isLoading}\n variant=\"primary\"\n size=\"medium\"\n onClick={() => handleSave(preValues)}\n role=\"button\"\n >\n {submitLabel}\n </Button>\n </SelectList>\n </Dropdown>\n );\n};\n","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 } from '../shared/EditorCard/EditorCard';\nimport { resolveI18nProps } from '../../component.utils';\nimport { i18n } from '../../../theme/i18n/i18n';\nimport { MultiSelectField } from '../../../../remarkable-ui';\n\nexport const MAX_OPTIONS = 200;\n\ntype MultiSelectFieldProProps = {\n title?: string;\n description?: string;\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};\n\nconst MultiSelectFieldPro = (props: MultiSelectFieldProProps) => {\n const theme: Theme = useTheme() as Theme;\n const themeFormatter = getThemeFormatter(theme);\n const {\n title,\n description,\n dimension,\n optionalSecondDimension,\n placeholder,\n results,\n selectedValues,\n setSearchValue,\n onChange,\n } = resolveI18nProps(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} subtitle={description}>\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 />\n </EditorCard>\n );\n};\n\nexport default MultiSelectFieldPro;\n"],"names":["__iconNode","IconSquare","createReactComponent","IconSquareCheckFilled","Button","variant","StartIcon","EndIcon","children","size","props","jsxs","BaseButton","styles","jsx","Typography","clsx","MultiSelectField","disabled","isClearable","isLoading","isSearchable","noOptionsMessage","options","placeholder","submitLabel","values","onChange","onSearch","isOpen","setIsOpen","useState","searchValue","setSearchValue","preValues","setPreValues","selectedLabel","setSelectedLabel","searchFieldRef","useRef","useSelectSearchFocus","useEffect","selectedOptions","value","_a","o","newLabel","debouncedSearch","useMemo","debounce","displayOptions","option","isSubmitDisabled","preValue","handleSelectOption","newValue","v","handleSearch","newSearch","handleSave","newValues","handleClearAll","Dropdown","SelectButton","SelectList","TextField","IconSearch","SelectListOptions","SelectListOption","e","MAX_OPTIONS","MultiSelectFieldPro","theme","useTheme","themeFormatter","getThemeFormatter","title","description","dimension","optionalSecondDimension","results","selectedValues","resolveI18nProps","data","showNoOptionsMessage","_b","EditorCard","i18n"],"mappings":";;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AASA,MAAMA,KAAa,CAAC,CAAC,QAAQ,EAAE,GAAK,mFAAmF,KAAO,QAAO,CAAE,CAAC,GAClIC,KAAaC,EAAqB,WAAW,UAAU,UAAUF,EAAU;ACVjF;AAAA;AAAA;AAAA;AAAA;AAAA;AASA,MAAMA,KAAa,CAAC,CAAC,QAAQ,EAAE,GAAK,8XAA8X,KAAO,QAAO,CAAE,CAAC,GAC7aG,KAAwBD,EAAqB,UAAU,uBAAuB,qBAAqBF,EAAU;;;;;;;GCGtGI,KAAgC,CAAC;AAAA,EAC5C,SAAAC;AAAA,EACA,WAAWC;AAAA,EACX,SAASC;AAAA,EACT,UAAAC;AAAA,EACA,MAAAC;AAAA,EACA,GAAGC;AACL,MAEIC,gBAAAA,EAAAA;AAAAA,EAACC;AAAA,EAAA;AAAA,IACC,SAAAP;AAAA,IACA,WAAWI,MAAS,WAAWI,EAAO,eAAeA,EAAO;AAAA,IAC3D,GAAGH;AAAA,IACJ,MAAAD;AAAA,IAEC,UAAA;AAAA,MAAAH,KAAaQ,gBAAAA,EAAAA,IAACR,GAAA,EAAU,WAAWO,EAAO,MAAM;AAAA,MACjDC,gBAAAA,EAAAA;AAAAA,QAACC;AAAA,QAAA;AAAA,UACC,IAAG;AAAA,UACH,WAAWC;AAAA,YACTH,EAAO;AAAA,YACPA,EAAO,aAAaJ,EAAK,OAAO,CAAC,EAAE,YAAA,IAAgBA,EAAK,MAAM,CAAC,CAAC,EAAE;AAAA,UAAA;AAAA,UAGnE,UAAAD;AAAA,QAAA;AAAA,MAAA;AAAA,MAEFD,KAAWO,gBAAAA,EAAAA,IAACP,GAAA,EAAQ,WAAWM,EAAO,KAAA,CAAM;AAAA,IAAA;AAAA,EAAA;AAAA;;GCRtCI,KAA8C,CAAC;AAAA,EAC1D,UAAAC;AAAA,EACA,aAAAC;AAAA,EACA,WAAAC;AAAA,EACA,cAAAC;AAAA,EACA,kBAAAC;AAAA,EACA,SAAAC;AAAA,EACA,aAAAC;AAAA,EACA,aAAAC,IAAc;AAAA,EACd,QAAAC,IAAS,CAAA;AAAA,EACT,UAAAC;AAAA,EACA,UAAAC;AACF,MAAM;AACJ,QAAM,CAACC,GAAQC,CAAS,IAAIC,EAAS,EAAK,GACpC,CAACC,GAAaC,CAAc,IAAIF,EAAiB,EAAE,GACnD,CAACG,GAAWC,CAAY,IAAIJ,EAAmBL,CAAM,GACrD,CAACU,GAAeC,CAAgB,IAAIN,EAAiB,EAAE,GAEvDO,IAAiBC,EAAyB,IAAI;AACpD,EAAAC,EAAqBX,GAAQS,CAAc,GAE3CG,EAAU,MAAM;AACd,IAAAN,EAAaT,CAAM;AAAA,EAErB,GAAG,CAAC,KAAK,UAAUA,CAAM,CAAC,CAAC,GAE3Be,EAAU,MAAM;AACd,QAAIrB;AACF;AAGF,QAAI,CAACM,KAAUA,EAAO,WAAW,GAAG;AAClC,MAAAW,EAAiB,EAAE;AACnB;AAAA,IACF;AACA,UAAMK,IAAkBhB,EAAO;AAAA,MAC7B,CAACiB,MAAA;;AAAU,iBAAAC,IAAArB,EAAQ,KAAK,CAACsB,MAAMA,EAAE,UAAUF,CAAK,MAArC,gBAAAC,EAAwC,UAASD;AAAA;AAAA,IAAA;AAG9D,QAAID,EAAgB,SAAS,GAAG;AAC9B,YAAMI,IAAWJ,EAAgB,KAAK,IAAI;AAC1C,MAAAL,EAAiB,IAAIK,EAAgB,MAAM,KAAKI,CAAQ,EAAE;AAAA,IAC5D;AAAA,EACF,GAAG,CAACpB,GAAQH,GAASH,CAAS,CAAC;AAE/B,QAAM2B,IAAkBC,EAAQ,MAAOpB,IAAWqB,EAASrB,CAAQ,IAAI,QAAY,CAACA,CAAQ,CAAC,GAEvFsB,IACJ7B,KAAgB,CAACO,IACbL,EAAQ,OAAO,CAAC4B,MAAWA,EAAO,MAAM,cAAc,SAASnB,EAAY,YAAA,CAAa,CAAC,IACzFT,GAEA6B,IACJlB,EAAU,MAAM,CAACmB,MAAa3B,EAAO,SAAS2B,CAAQ,CAAC,KACvD3B,EAAO,MAAM,CAACiB,MAAUT,EAAU,SAASS,CAAK,CAAC,GAE7CW,IAAqB,CACzB,GACAC,MACG;AAGH,IAFA,EAAE,eAAA,GAEGA,MAEDrB,EAAU,SAASqB,CAAQ,IAC7BpB,EAAaD,EAAU,OAAO,CAACsB,MAAMA,MAAMD,CAAQ,CAAC,IAEpDpB,EAAa,CAAC,GAAGD,GAAWqB,CAAQ,CAAC;AAAA,EAEzC,GAEME,IAAe,CAACC,MAAsB;AAC1C,IAAAzB,EAAeyB,CAAS,GACxBX,KAAA,QAAAA,EAAkBW;AAAA,EACpB,GAEMC,IAAa,CAACC,MAAwB;AAC1C,IAAAjC,EAASiC,CAAS,GAClB9B,EAAU,EAAK,GACfG,EAAe,EAAE,GACjBL,KAAA,QAAAA,EAAW;AAAA,EACb,GAEMiC,IAAiB,MAAM;AAC3B,IAAA5B,EAAe,EAAE,GACjBL,KAAA,QAAAA,EAAW,KACXD,EAAS,CAAA,CAAE;AAAA,EACb;AAEA,SACEb,gBAAAA,EAAAA;AAAAA,IAACgD;AAAA,IAAA;AAAA,MACC,MAAMjC;AAAA,MACN,cAAcC;AAAA,MACd,UAAAZ;AAAA,MACA,kBACEJ,gBAAAA,EAAAA;AAAAA,QAACiD;AAAA,QAAA;AAAA,UACC,cAAW;AAAA,UACX,aAAAvC;AAAA,UACA,UAAAN;AAAA,UACA,YAAYkB;AAAA,UACZ,SAASyB;AAAA,UACT,aAAA1C;AAAA,UACA,WAAAC;AAAA,QAAA;AAAA,MAAA;AAAA,MAIJ,iCAAC4C,GAAA,EACE,UAAA;AAAA,QAAA3C,KACCP,gBAAAA,EAAAA;AAAAA,UAACmD;AAAA,UAAA;AAAA,YACC,KAAK3B;AAAA,YACL,WAAW4B;AAAA,YACX,cAAW;AAAA,YACX,aAAY;AAAA,YACZ,MAAK;AAAA,YACL,OAAOlC;AAAA,YACP,WAAW,CAAC,MAAM,EAAE,gBAAA;AAAA,YACpB,UAAUyB;AAAA,UAAA;AAAA,QAAA;AAAA,QAGd9C,gBAAAA,EAAAA,KAACwD,GAAA,EAAkB,UAAU/C,GAC1B,UAAA;AAAA,UAAA8B,EAAe,IAAI,CAACC,MACnBrC,gBAAAA,EAAAA;AAAAA,YAACsD;AAAA,YAAA;AAAA,cAEC,SAAS,CAACC,MAAMf,EAAmBe,GAAGlB,EAAO,KAAK;AAAA,cAClD,WACEjB,EAAU,SAASiB,EAAO,KAAM,IAAIrC,gBAAAA,MAACX,IAAA,CAAA,CAAsB,IAAKW,gBAAAA,MAACb,IAAA,CAAA,CAAW;AAAA,cAE7E,GAAGkD;AAAA,YAAA;AAAA,aALCA,KAAA,gBAAAA,EAAQ,UAASA,EAAO;AAAA,UAAA,CAOhC;AAAA,UACA7B,2BAAqB8C,GAAA,EAAiB,UAAQ,IAAC,OAAM,SAAQ,OAAO9C,EAAA,CAAkB;AAAA,QAAA,GACzF;AAAA,QACAR,gBAAAA,EAAAA;AAAAA,UAACV;AAAA,UAAA;AAAA,YACC,WAAWS,GAAO;AAAA,YAClB,UAAUuC,KAAoBhC;AAAA,YAC9B,SAAQ;AAAA,YACR,MAAK;AAAA,YACL,SAAS,MAAMuC,EAAWzB,CAAS;AAAA,YACnC,MAAK;AAAA,YAEJ,UAAAT;AAAA,UAAA;AAAA,QAAA;AAAA,MACH,EAAA,CACF;AAAA,IAAA;AAAA,EAAA;AAGN,GCtKa6C,KAAc,KAerBC,KAAsB,CAAC7D,MAAoC;;AAC/D,QAAM8D,IAAeC,EAAA,GACfC,IAAiBC,EAAkBH,CAAK,GACxC;AAAA,IACJ,OAAAI;AAAA,IACA,aAAAC;AAAA,IACA,WAAAC;AAAA,IACA,yBAAAC;AAAA,IACA,aAAAvD;AAAA,IACA,SAAAwD;AAAA,IACA,gBAAAC;AAAA,IACA,gBAAAhD;AAAA,IACA,UAAAN;AAAA,EAAA,IACEuD,EAAiBxE,CAAK,GAEpBa,MACJqB,IAAAoC,EAAQ,SAAR,gBAAApC,EAAc,IAAI,CAACuC,OACV;AAAA,IACL,OAAOJ,IAA0BI,EAAKJ,EAAwB,IAAI,IAAII,EAAKL,EAAU,IAAI;AAAA,IACzF,OAAOJ,EAAe,KAAKI,GAAWK,EAAKL,EAAU,IAAI,CAAC;AAAA,EAAA,QAExD,CAAA,GAEFM,IAA+B,CAACJ,EAAQ,gBAAcK,IAAAL,EAAQ,SAAR,gBAAAK,EAAc,WAAU,OAAO;AAE3F,SACEvE,gBAAAA,EAAAA,IAACwE,GAAA,EAAW,OAAAV,GAAc,UAAUC,GAClC,UAAA/D,gBAAAA,EAAAA;AAAAA,IAACG;AAAA,IAAA;AAAA,MACC,aAAW;AAAA,MACX,cAAY;AAAA,MACZ,WAAW+D,EAAQ;AAAA,MACnB,QAAQC,KAAkB,CAAA;AAAA,MAC1B,SAAA1D;AAAA,MACA,aAAAC;AAAA,MACA,kBAAkB4D,IAAuBG,EAAK,EAAE,uBAAuB,IAAI;AAAA,MAC3E,UAAU,CAAC3B,MAAcjC,KAAA,gBAAAA,EAAWiC;AAAA,MACpC,UAAU3B;AAAA,IAAA;AAAA,EAAA,GAEd;AAEJ;;;;;","x_google_ignoreList":[0,1]}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { i as M, r as _, m as k, j as c, ae as w } from "./component.constants-
|
|
1
|
+
import { i as M, r as _, m as k, j as c, ae as w } from "./component.constants-DuGM1FcK.js";
|
|
2
2
|
import { useTheme as O } from "@embeddable.com/react";
|
|
3
|
-
import { g as y, a as F } from "./pies.utils-
|
|
4
|
-
import { g as V } from "./formatter.utils-
|
|
5
|
-
import { C as z } from "./ChartCard-
|
|
3
|
+
import { g as y, a as F } from "./pies.utils-cOIEuHyS.js";
|
|
4
|
+
import { g as V } from "./formatter.utils-C_jDZCA9.js";
|
|
5
|
+
import { C as z } from "./ChartCard-DLb6o61U.js";
|
|
6
6
|
import "react";
|
|
7
7
|
const A = (p) => {
|
|
8
8
|
var n, i, m;
|
|
@@ -70,4 +70,4 @@ export {
|
|
|
70
70
|
A as D,
|
|
71
71
|
H as i
|
|
72
72
|
};
|
|
73
|
-
//# sourceMappingURL=index-
|
|
73
|
+
//# sourceMappingURL=index-DleI2gEG.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index-
|
|
1
|
+
{"version":3,"file":"index-DleI2gEG.js","sources":["../src/remarkable-pro/components/charts/pies/DonutLabelChartPro/index.tsx"],"sourcesContent":["import { useTheme } from '@embeddable.com/react';\nimport { Theme } from '../../../../theme/theme.types';\nimport { DefaultPieChartOptions, getDefaultPieChartOptions, getPieChartData } 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 '../../../../../remarkable-ui';\nimport { mergician } from 'mergician';\nimport { resolveI18nProps } from '../../../component.utils';\n\ntype 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 data = getPieChartData({ data: results.data, dimension, measure, maxLegendItems }, theme);\n\n const handleSegmentClick = (index: number | undefined) => {\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 getDefaultPieChartOptions(\n {\n measure,\n showTooltips,\n showLegend,\n showValueLabels,\n } as DefaultPieChartOptions,\n theme,\n ),\n theme.charts.donutLabelChartPro?.options ?? {},\n );\n\n return (\n <ChartCard\n data={results}\n dimensionsAndMeasures={[dimension, measure]}\n errorMessage={results.error}\n subtitle={description}\n title={title}\n >\n <DonutChart\n label={label}\n subLabel={innerLabelText}\n data={data}\n options={options}\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","data","getPieChartData","handleSegmentClick","index","_b","_a","label","options","mergician","getDefaultPieChartOptions","_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,GAEpBoB,IAAOC,EAAgB,EAAE,MAAMX,EAAQ,MAAM,WAAAH,GAAW,SAAAE,GAAS,gBAAAD,EAAA,GAAkBP,CAAK,GAExFqB,IAAqB,CAACC,MAA8B;;AACxD,IAAAL,EAAe;AAAA,MACb,gBAAgBK,MAAU,WAAwBC,KAAAC,IAAAf,EAAQ,SAAR,gBAAAe,EAAeF,OAAf,OAAZ,SAAYC,EAAwBjB,EAAU;AAAA,IAAI,CACzF;AAAA,EACH,GAEMmB,IAAQvB,EAAe;AAAA,IAC3BY;AAAA,KACAS,KAAAC,IAAAT,KAAA,gBAAAA,EAAmB,SAAnB,gBAAAS,EAA0B,OAA1B,gBAAAD,EAA+BT,EAAkB;AAAA,EAAI,GAGjDY,IAAUC;AAAA,IACdC;AAAA,MACE;AAAA,QACE,SAAApB;AAAA,QACA,cAAAG;AAAA,QACA,YAAAD;AAAA,QACA,iBAAAE;AAAA,MAAA;AAAA,MAEFZ;AAAA,IAAA;AAAA,MAEF6B,IAAA7B,EAAM,OAAO,uBAAb,gBAAA6B,EAAiC,YAAW,CAAA;AAAA,EAAC;AAG/C,SACEC,gBAAAA,EAAAA;AAAAA,IAACC;AAAA,IAAA;AAAA,MACC,MAAMtB;AAAA,MACN,uBAAuB,CAACH,GAAWE,CAAO;AAAA,MAC1C,cAAcC,EAAQ;AAAA,MACtB,UAAUJ;AAAA,MACV,OAAAQ;AAAA,MAEA,UAAAiB,gBAAAA,EAAAA;AAAAA,QAACE;AAAA,QAAA;AAAA,UACC,OAAAP;AAAA,UACA,UAAUT;AAAA,UACV,MAAAG;AAAA,UACA,SAAAO;AAAA,UACA,gBAAgBL;AAAA,QAAA;AAAA,MAAA;AAAA,IAClB;AAAA,EAAA;AAGN;;;;"}
|
package/dist/index.js
CHANGED
|
@@ -1,22 +1,22 @@
|
|
|
1
|
-
import { I as w } from "./ChartCard-
|
|
2
|
-
import { C as us, S as hs } from "./ChartCard-
|
|
3
|
-
import { j as s, a1 as u, a2 as
|
|
4
|
-
import { a7 as xs, ae as ps, a8 as bs, ad as fs, af as _s, aa as Cs, ab as gs, a9 as ys, ac as js, Q as ws, d as
|
|
1
|
+
import { I as w } from "./ChartCard-DLb6o61U.js";
|
|
2
|
+
import { C as us, S as hs } from "./ChartCard-DLb6o61U.js";
|
|
3
|
+
import { j as s, a1 as u, a2 as S, a3 as v, a4 as I, a5 as N, a6 as C } from "./component.constants-DuGM1FcK.js";
|
|
4
|
+
import { a7 as xs, ae as ps, a8 as bs, ad as fs, af as _s, aa as Cs, ab as gs, a9 as ys, ac as js, Q as ws, d as Ss, ag as vs, c as Is, z as Ns, S as $s, b as Ts, aq as ks, as as Ps, U as Ls, W as As, ar as Ms, T as Bs, C as Ds, B as Fs, Z as Rs, i as zs, X as Os, w as Ws, a as Es, _ as qs, r as Ks, p as Xs, h as Us, s as Vs, g as Gs, e as Hs, at as Qs, A as Ys, f as Zs, an as Js, am as sa, ao as aa, al as ea, aj as ta, ap as na, ak as oa, ah as ra, ai as ia, t as ca, x as la, v as ma, l as ua, k as ha, y as da, n as xa, u as pa, q as ba } from "./component.constants-DuGM1FcK.js";
|
|
5
5
|
import { useRef as $, useState as T, useEffect as k } from "react";
|
|
6
|
-
import { B as P } from "./BaseButton-
|
|
7
|
-
import { E as _a, S as Ca } from "./EditorCard-
|
|
8
|
-
import { B as _ } from "./index-
|
|
9
|
-
import { b as ya, i as ja } from "./index-
|
|
10
|
-
import { S as
|
|
11
|
-
import { K as Ia } from "./KpiChart-
|
|
12
|
-
import { g as $a, r as Ta, s as ka } from "./object.utils-
|
|
13
|
-
import { g as La } from "./formatter.utils-
|
|
14
|
-
import { a as Ma, g as Ba } from "./pies.utils-
|
|
15
|
-
import { i as
|
|
16
|
-
import { i as za } from "./index-
|
|
17
|
-
import { i as Wa } from "./index-
|
|
18
|
-
import { i as qa } from "./index-
|
|
19
|
-
import { i as Xa } from "./index-
|
|
6
|
+
import { B as P } from "./BaseButton-BKojrsLP.js";
|
|
7
|
+
import { E as _a, S as Ca } from "./EditorCard-COw7ouX6.js";
|
|
8
|
+
import { B as _ } from "./index-CmclYpTi.js";
|
|
9
|
+
import { b as ya, i as ja } from "./index-CmclYpTi.js";
|
|
10
|
+
import { S as Sa } from "./SingleSelectField-BaBjHlCf.js";
|
|
11
|
+
import { K as Ia } from "./KpiChart-DhPJaw1n.js";
|
|
12
|
+
import { g as $a, r as Ta, s as ka } from "./object.utils-BlUnrtY3.js";
|
|
13
|
+
import { g as La } from "./formatter.utils-C_jDZCA9.js";
|
|
14
|
+
import { a as Ma, g as Ba } from "./pies.utils-cOIEuHyS.js";
|
|
15
|
+
import { i as Fa } from "./index-CXq36TbG.js";
|
|
16
|
+
import { i as za } from "./index-1ZIedoXi.js";
|
|
17
|
+
import { i as Wa } from "./index-DleI2gEG.js";
|
|
18
|
+
import { i as qa } from "./index-CIbTA8lC.js";
|
|
19
|
+
import { i as Xa } from "./index-0JzvLdB-.js";
|
|
20
20
|
const L = "_container_436fl_1", A = "_column_436fl_10", M = "_box_436fl_20", B = "_short_436fl_26", D = "_tall_436fl_34", a = {
|
|
21
21
|
container: L,
|
|
22
22
|
column: A,
|
|
@@ -51,9 +51,9 @@ const L = "_container_436fl_1", A = "_column_436fl_10", M = "_box_436fl_20", B =
|
|
|
51
51
|
] }) }, t);
|
|
52
52
|
};
|
|
53
53
|
return /* @__PURE__ */ s.jsx("div", { ref: e, className: `${a.container} ${n || ""}`, children: Array.from({ length: o }, (t, r) => c(r)) });
|
|
54
|
-
},
|
|
55
|
-
icon:
|
|
56
|
-
iconPrimary:
|
|
54
|
+
}, F = "_icon_bk4b5_1", R = "_iconPrimary_bk4b5_6", z = "_iconSecondary_bk4b5_9", O = "_buttonIcon_bk4b5_12", p = {
|
|
55
|
+
icon: F,
|
|
56
|
+
iconPrimary: R,
|
|
57
57
|
iconSecondary: z,
|
|
58
58
|
buttonIcon: O
|
|
59
59
|
}, rs = ({
|
|
@@ -80,8 +80,8 @@ const L = "_container_436fl_1", A = "_column_436fl_10", M = "_box_436fl_20", B =
|
|
|
80
80
|
onConfirm: c,
|
|
81
81
|
onCancel: t,
|
|
82
82
|
className: r
|
|
83
|
-
}) => /* @__PURE__ */ s.jsx(q, { children: /* @__PURE__ */ s.jsxs(
|
|
84
|
-
/* @__PURE__ */ s.jsx(
|
|
83
|
+
}) => /* @__PURE__ */ s.jsx(q, { children: /* @__PURE__ */ s.jsxs(S, { className: r, children: [
|
|
84
|
+
/* @__PURE__ */ s.jsx(v, { title: n, rightContent: /* @__PURE__ */ s.jsx(w, { icon: I, onClick: t }) }),
|
|
85
85
|
/* @__PURE__ */ s.jsxs(N, { children: [
|
|
86
86
|
/* @__PURE__ */ s.jsx(C, { as: "span", children: e }),
|
|
87
87
|
/* @__PURE__ */ s.jsxs("div", { className: X.actions, children: [
|
|
@@ -89,15 +89,15 @@ const L = "_container_436fl_1", A = "_column_436fl_10", M = "_box_436fl_20", B =
|
|
|
89
89
|
/* @__PURE__ */ s.jsx(_, { variant: "primary", size: "medium", onClick: c, children: o })
|
|
90
90
|
] })
|
|
91
91
|
] })
|
|
92
|
-
] }) }), U = "_switchContainer_nupfs_1", V = "_switchLabel_nupfs_8",
|
|
92
|
+
] }) }), U = "_switchContainer_nupfs_1", V = "_switchLabel_nupfs_8", G = "_switchInput_nupfs_14", H = "_switchTrack_nupfs_21", Q = "_switchThumb_nupfs_51", Y = "_checked_nupfs_66", Z = "_disabled_nupfs_78", J = "_labelText_nupfs_100", i = {
|
|
93
93
|
switchContainer: U,
|
|
94
94
|
switchLabel: V,
|
|
95
|
-
switchInput:
|
|
96
|
-
switchTrack:
|
|
97
|
-
switchThumb:
|
|
98
|
-
checked:
|
|
99
|
-
disabled:
|
|
100
|
-
labelText:
|
|
95
|
+
switchInput: G,
|
|
96
|
+
switchTrack: H,
|
|
97
|
+
switchThumb: Q,
|
|
98
|
+
checked: Y,
|
|
99
|
+
disabled: Z,
|
|
100
|
+
labelText: J
|
|
101
101
|
}, cs = ({
|
|
102
102
|
checked: n,
|
|
103
103
|
onChange: e,
|
|
@@ -139,10 +139,10 @@ const L = "_container_436fl_1", A = "_column_436fl_10", M = "_box_436fl_20", B =
|
|
|
139
139
|
export {
|
|
140
140
|
_ as Button,
|
|
141
141
|
rs as ButtonIcon,
|
|
142
|
-
|
|
142
|
+
S as Card,
|
|
143
143
|
N as CardContent,
|
|
144
144
|
xs as CardContentInfo,
|
|
145
|
-
|
|
145
|
+
v as CardHeader,
|
|
146
146
|
us as ChartCard,
|
|
147
147
|
is as ConfirmCancelModal,
|
|
148
148
|
Xa as DateRangeSelectFieldPro,
|
|
@@ -159,20 +159,20 @@ export {
|
|
|
159
159
|
fs as NumberField,
|
|
160
160
|
q as PageOverlay,
|
|
161
161
|
_s as PieChart,
|
|
162
|
-
|
|
162
|
+
Fa as PieChartPro,
|
|
163
163
|
Cs as SelectButton,
|
|
164
164
|
gs as SelectList,
|
|
165
165
|
ys as SelectListOption,
|
|
166
166
|
Ca as SelectListOptions,
|
|
167
|
-
|
|
167
|
+
Sa as SingleSelectField,
|
|
168
168
|
qa as SingleSelectFieldPro,
|
|
169
169
|
hs as Skeleton,
|
|
170
170
|
cs as Switch,
|
|
171
171
|
js as TextField,
|
|
172
172
|
C as Typography,
|
|
173
173
|
ws as chartColors,
|
|
174
|
-
|
|
175
|
-
|
|
174
|
+
Ss as dataset,
|
|
175
|
+
vs as defaultPieChartOptions,
|
|
176
176
|
Is as description,
|
|
177
177
|
Ns as dimension,
|
|
178
178
|
$s as dimensionTime,
|
|
@@ -187,9 +187,9 @@ export {
|
|
|
187
187
|
$a as getObjectStableKey,
|
|
188
188
|
Ba as getPieChartData,
|
|
189
189
|
Ds as getStyle,
|
|
190
|
-
|
|
190
|
+
Fs as getStyleNumber,
|
|
191
191
|
La as getThemeFormatter,
|
|
192
|
-
|
|
192
|
+
Rs as i18n,
|
|
193
193
|
zs as i18nSetup,
|
|
194
194
|
Os as maxLegendItems,
|
|
195
195
|
Ws as measure,
|
|
@@ -200,13 +200,13 @@ export {
|
|
|
200
200
|
Xs as reverseXAxis,
|
|
201
201
|
Us as reverseYAxis,
|
|
202
202
|
Vs as showLegend,
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
203
|
+
Gs as showLogarithmicScale,
|
|
204
|
+
Hs as showTooltips,
|
|
205
|
+
Qs as showTopItems,
|
|
206
|
+
Ys as showTotalLabels,
|
|
207
|
+
Zs as showValueLabels,
|
|
208
208
|
ka as styles,
|
|
209
|
-
|
|
209
|
+
Js as subInputAbbreviateLargeNumber,
|
|
210
210
|
sa as subInputCurrency,
|
|
211
211
|
aa as subInputDateBounds,
|
|
212
212
|
ea as subInputDecimalPlaces,
|