@embeddable.com/remarkable-ui 0.1.49 → 0.1.50

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.
Files changed (91) hide show
  1. package/dist/BarChartDefaultHorizontalPro.js +3 -3
  2. package/dist/BarChartDefaultPro.js +3 -3
  3. package/dist/BarChartGroupedHorizontalPro.js +3 -3
  4. package/dist/BarChartGroupedPro.js +3 -3
  5. package/dist/BarChartStackedHorizontalPro.js +3 -3
  6. package/dist/BarChartStackedPro.js +3 -3
  7. package/dist/{ChartCard-CMgDz_bs.js → ChartCard-k190CXR0.js} +29 -29
  8. package/dist/{ChartCard-CMgDz_bs.js.map → ChartCard-k190CXR0.js.map} +1 -1
  9. package/dist/{ComparisonPeriod.type.emb-C1o3iM9L.js → ComparisonPeriod.type.emb-Dgl2VM4_.js} +2 -2
  10. package/dist/{ComparisonPeriod.type.emb-C1o3iM9L.js.map → ComparisonPeriod.type.emb-Dgl2VM4_.js.map} +1 -1
  11. package/dist/ComparisonPeriodSelectFieldPro.js +4 -4
  12. package/dist/DateRangeSelectFieldPro.js +2 -2
  13. package/dist/DonutChartPro.js +2 -2
  14. package/dist/DonutLabelChartPro.js +2 -2
  15. package/dist/{EditorCard-CJoUz4uM.js → EditorCard-BNBH4Y9F.js} +17 -17
  16. package/dist/{EditorCard-CJoUz4uM.js.map → EditorCard-BNBH4Y9F.js.map} +1 -1
  17. package/dist/HeatMap-ylrlKLQI.js +223 -0
  18. package/dist/HeatMap-ylrlKLQI.js.map +1 -0
  19. package/dist/HeatMapPro.js +138 -0
  20. package/dist/HeatMapPro.js.map +1 -0
  21. package/dist/{KpiChart-C6zepuhF.js → KpiChart-DJ5el66E.js} +16 -16
  22. package/dist/{KpiChart-C6zepuhF.js.map → KpiChart-DJ5el66E.js.map} +1 -1
  23. package/dist/KpiChartNumberComparisonPro.js +6 -6
  24. package/dist/KpiChartNumberPro.js +4 -4
  25. package/dist/LineChartComparisonDefaultPro.js +5 -5
  26. package/dist/LineChartDefaultPro.js +3 -3
  27. package/dist/LineChartGroupedPro.js +3 -3
  28. package/dist/MultiSelectFieldPro.js +2 -2
  29. package/dist/PieChartPro.js +2 -2
  30. package/dist/PivotTable-awuBNY8c.js +273 -0
  31. package/dist/PivotTable-awuBNY8c.js.map +1 -0
  32. package/dist/PivotTablePro.js +39 -39
  33. package/dist/PivotTablePro.js.map +1 -1
  34. package/dist/{SingleSelectField-CJNiLfee.js → SingleSelectField-CY0TwkyW.js} +3 -3
  35. package/dist/{SingleSelectField-CJNiLfee.js.map → SingleSelectField-CY0TwkyW.js.map} +1 -1
  36. package/dist/SingleSelectFieldPro.js +2 -2
  37. package/dist/TableChartPaginated.js +3 -3
  38. package/dist/{bars.utils-vXPRJDGQ.js → bars.utils-cZSSvRai.js} +4 -4
  39. package/dist/{bars.utils-vXPRJDGQ.js.map → bars.utils-cZSSvRai.js.map} +1 -1
  40. package/dist/{charts.utils-HfNL9dVl.js → charts.utils-LgE4AEAw.js} +4 -4
  41. package/dist/charts.utils-LgE4AEAw.js.map +1 -0
  42. package/dist/{component.constants-CFaxyNCw.js → component.constants-D0ea4CW4.js} +1363 -1357
  43. package/dist/{component.constants-CFaxyNCw.js.map → component.constants-D0ea4CW4.js.map} +1 -1
  44. package/dist/embeddable-components.json +13 -12
  45. package/dist/embeddable-theme-2b917.js +1 -1
  46. package/dist/{formatter.utils-Cu4uKJSZ.js → formatter.utils-DBUd3PfE.js} +2 -2
  47. package/dist/{formatter.utils-Cu4uKJSZ.js.map → formatter.utils-DBUd3PfE.js.map} +1 -1
  48. package/dist/{index-C4BiW71l.js → index-BGf7vP5k.js} +5 -5
  49. package/dist/{index-C4BiW71l.js.map → index-BGf7vP5k.js.map} +1 -1
  50. package/dist/{index-DW-LmiPi.js → index-BpujEeVe.js} +11 -11
  51. package/dist/{index-DW-LmiPi.js.map → index-BpujEeVe.js.map} +1 -1
  52. package/dist/{index-DvMr1tvf.js → index-C_G6mJoE.js} +4 -4
  53. package/dist/{index-DvMr1tvf.js.map → index-C_G6mJoE.js.map} +1 -1
  54. package/dist/{index-CxxeUDMD.js → index-DGb59RGF.js} +13 -13
  55. package/dist/{index-CxxeUDMD.js.map → index-DGb59RGF.js.map} +1 -1
  56. package/dist/{index-DvEWwlqq.js → index-D_TXLv5w.js} +30 -30
  57. package/dist/{index-DvEWwlqq.js.map → index-D_TXLv5w.js.map} +1 -1
  58. package/dist/{index-BAfVF5iP.js → index-DuWcnytb.js} +10 -10
  59. package/dist/{index-BAfVF5iP.js.map → index-DuWcnytb.js.map} +1 -1
  60. package/dist/index.js +94 -91
  61. package/dist/index.js.map +1 -1
  62. package/dist/{pies.utils-JpKM3rVw.js → pies.utils-DpY3U9c2.js} +4 -4
  63. package/dist/{pies.utils-JpKM3rVw.js.map → pies.utils-DpY3U9c2.js.map} +1 -1
  64. package/dist/remarkable-pro/components/charts/tables/HeatMapPro/index.d.ts +29 -0
  65. package/dist/remarkable-pro/components/charts/tables/HeatMapPro/index.d.ts.map +1 -0
  66. package/dist/remarkable-pro/components/component.constants.d.ts +7 -0
  67. package/dist/remarkable-pro/components/component.constants.d.ts.map +1 -1
  68. package/dist/remarkable-ui/charts/tables/HeatMap/HeatMap.d.ts +3 -0
  69. package/dist/remarkable-ui/charts/tables/HeatMap/HeatMap.d.ts.map +1 -0
  70. package/dist/remarkable-ui/charts/tables/HeatMap/HeatMap.stories.d.ts +9 -0
  71. package/dist/remarkable-ui/charts/tables/HeatMap/HeatMap.stories.d.ts.map +1 -0
  72. package/dist/remarkable-ui/charts/tables/HeatMap/HeatMap.types.d.ts +30 -0
  73. package/dist/remarkable-ui/charts/tables/HeatMap/HeatMap.types.d.ts.map +1 -0
  74. package/dist/remarkable-ui/charts/tables/HeatMap/HeatMap.utils.d.ts +43 -0
  75. package/dist/remarkable-ui/charts/tables/HeatMap/HeatMap.utils.d.ts.map +1 -0
  76. package/dist/remarkable-ui/charts/tables/PivotTable/PivotTable.d.ts.map +1 -1
  77. package/dist/remarkable-ui/charts/tables/PivotTable/PivotTable.types.d.ts +1 -0
  78. package/dist/remarkable-ui/charts/tables/PivotTable/PivotTable.types.d.ts.map +1 -1
  79. package/dist/remarkable-ui/charts/tables/tables.utils.d.ts +6 -0
  80. package/dist/remarkable-ui/charts/tables/tables.utils.d.ts.map +1 -0
  81. package/dist/remarkable-ui/index.d.ts +2 -0
  82. package/dist/remarkable-ui/index.d.ts.map +1 -1
  83. package/dist/remarkable-ui.css +1 -1
  84. package/dist/tables.utils-D7KXdM2S.js +9 -0
  85. package/dist/tables.utils-D7KXdM2S.js.map +1 -0
  86. package/dist/{timeRange.utils-Z2lmKTCB.js → timeRange.utils-B9kyLPq_.js} +2 -2
  87. package/dist/{timeRange.utils-Z2lmKTCB.js.map → timeRange.utils-B9kyLPq_.js.map} +1 -1
  88. package/package.json +1 -1
  89. package/dist/PivotTable-SNPquHl0.js +0 -253
  90. package/dist/PivotTable-SNPquHl0.js.map +0 -1
  91. package/dist/charts.utils-HfNL9dVl.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"index-DvEWwlqq.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.35.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\": \"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.35.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\": \"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 {...props}\n className={size === 'medium' ? styles.buttonMedium : styles.buttonSmall}\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 SelectListOptionPropsWithCategory,\n} from '../shared/SelectList/SelectListOptions/SelectListOption/SelectListOption';\nimport { SelectListCategory } from '../shared/SelectList/SelectListOptions/SelectListCategory/SelectListCategory';\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 { groupOptionsByCategory } from '../shared/SelectList/selectList.utils';\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';\nimport { FieldErrorMessage } from '../../../shared/FieldErrorMessage/FieldErrorMessage';\n\nexport type MultiSelectFieldProps = {\n disabled?: boolean;\n isClearable?: boolean;\n isLoading?: boolean;\n isSearchable?: boolean;\n noOptionsMessage?: string;\n options: (SelectListOptionProps | SelectListOptionPropsWithCategory)[];\n placeholder?: string;\n submitLabel?: string;\n values?: string[];\n onChange: (value: string[]) => void;\n onSearch?: (search: string) => void;\n error?: boolean;\n errorMessage?: string;\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 error = false,\n errorMessage,\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 groupedOptions = useMemo(() => groupOptionsByCategory(displayOptions), [displayOptions]);\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 const hasError = error || !!errorMessage;\n\n return (\n <div className={styles.selectField}>\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 error={hasError}\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 {groupedOptions\n ? Object.entries(groupedOptions).map(([category, categoryOptions]) => (\n <div key={category}>\n <SelectListCategory label={category} />\n {categoryOptions.map((option) => (\n <SelectListOption\n key={option?.value ?? option.label}\n onClick={(e) => handleSelectOption(e, option.value)}\n startIcon={\n preValues.includes(option.value!) ? (\n <IconSquareCheckFilled />\n ) : (\n <IconSquare />\n )\n }\n {...option}\n />\n ))}\n </div>\n ))\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 && displayOptions.length === 0 && (\n <SelectListOption disabled value=\"empty\" label={noOptionsMessage} />\n )}\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 {errorMessage && <FieldErrorMessage message={errorMessage} />}\n </div>\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","error","errorMessage","isOpen","setIsOpen","useState","searchValue","setSearchValue","preValues","setPreValues","selectedLabel","setSelectedLabel","searchFieldRef","useRef","useSelectSearchFocus","useEffect","selectedOptions","value","_a","o","newLabel","debouncedSearch","useMemo","debounce","displayOptions","option","groupedOptions","groupOptionsByCategory","isSubmitDisabled","preValue","handleSelectOption","newValue","v","handleSearch","newSearch","handleSave","newValues","handleClearAll","hasError","Dropdown","SelectButton","SelectList","TextField","IconSearch","SelectListOptions","category","categoryOptions","SelectListCategory","SelectListOption","e","FieldErrorMessage","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-D_TXLv5w.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.35.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\": \"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.35.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\": \"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 {...props}\n className={size === 'medium' ? styles.buttonMedium : styles.buttonSmall}\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 SelectListOptionPropsWithCategory,\n} from '../shared/SelectList/SelectListOptions/SelectListOption/SelectListOption';\nimport { SelectListCategory } from '../shared/SelectList/SelectListOptions/SelectListCategory/SelectListCategory';\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 { groupOptionsByCategory } from '../shared/SelectList/selectList.utils';\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';\nimport { FieldErrorMessage } from '../../../shared/FieldErrorMessage/FieldErrorMessage';\n\nexport type MultiSelectFieldProps = {\n disabled?: boolean;\n isClearable?: boolean;\n isLoading?: boolean;\n isSearchable?: boolean;\n noOptionsMessage?: string;\n options: (SelectListOptionProps | SelectListOptionPropsWithCategory)[];\n placeholder?: string;\n submitLabel?: string;\n values?: string[];\n onChange: (value: string[]) => void;\n onSearch?: (search: string) => void;\n error?: boolean;\n errorMessage?: string;\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 error = false,\n errorMessage,\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 groupedOptions = useMemo(() => groupOptionsByCategory(displayOptions), [displayOptions]);\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 const hasError = error || !!errorMessage;\n\n return (\n <div className={styles.selectField}>\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 error={hasError}\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 {groupedOptions\n ? Object.entries(groupedOptions).map(([category, categoryOptions]) => (\n <div key={category}>\n <SelectListCategory label={category} />\n {categoryOptions.map((option) => (\n <SelectListOption\n key={option?.value ?? option.label}\n onClick={(e) => handleSelectOption(e, option.value)}\n startIcon={\n preValues.includes(option.value!) ? (\n <IconSquareCheckFilled />\n ) : (\n <IconSquare />\n )\n }\n {...option}\n />\n ))}\n </div>\n ))\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 && displayOptions.length === 0 && (\n <SelectListOption disabled value=\"empty\" label={noOptionsMessage} />\n )}\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 {errorMessage && <FieldErrorMessage message={errorMessage} />}\n </div>\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","error","errorMessage","isOpen","setIsOpen","useState","searchValue","setSearchValue","preValues","setPreValues","selectedLabel","setSelectedLabel","searchFieldRef","useRef","useSelectSearchFocus","useEffect","selectedOptions","value","_a","o","newLabel","debouncedSearch","useMemo","debounce","displayOptions","option","groupedOptions","groupOptionsByCategory","isSubmitDisabled","preValue","handleSelectOption","newValue","v","handleSearch","newSearch","handleSave","newValues","handleClearAll","hasError","Dropdown","SelectButton","SelectList","TextField","IconSearch","SelectListOptions","category","categoryOptions","SelectListCategory","SelectListOption","e","FieldErrorMessage","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,11 +1,11 @@
1
- import { i as P, r as S, m as b, j as m, av as v } from "./component.constants-CFaxyNCw.js";
2
- import { useTheme as D } from "@embeddable.com/react";
3
- import { g as _, a as k } from "./pies.utils-JpKM3rVw.js";
4
- import { C as w } from "./ChartCard-CMgDz_bs.js";
1
+ import { i as P, r as S, m as b, j as m, aw as D } from "./component.constants-D0ea4CW4.js";
2
+ import { useTheme as v } from "@embeddable.com/react";
3
+ import { g as w, a as _ } from "./pies.utils-DpY3U9c2.js";
4
+ import { C as k } from "./ChartCard-k190CXR0.js";
5
5
  import "react";
6
6
  const L = (d) => {
7
7
  var a;
8
- const e = D();
8
+ const e = v();
9
9
  P(e);
10
10
  const {
11
11
  description: l,
@@ -18,8 +18,8 @@ const L = (d) => {
18
18
  showValueLabels: h,
19
19
  title: g,
20
20
  onSegmentClick: C
21
- } = S(d), f = _({ data: t.data, dimension: o, measure: s, maxLegendItems: u }, e), j = b(
22
- k(
21
+ } = S(d), f = w({ data: t.data, dimension: o, measure: s, maxLegendItems: u }, e), j = b(
22
+ _(
23
23
  {
24
24
  measure: s,
25
25
  showTooltips: p,
@@ -36,14 +36,14 @@ const L = (d) => {
36
36
  });
37
37
  };
38
38
  return /* @__PURE__ */ m.jsx(
39
- w,
39
+ k,
40
40
  {
41
41
  data: t,
42
42
  dimensionsAndMeasures: [o, s],
43
43
  errorMessage: t.error,
44
44
  subtitle: l,
45
45
  title: g,
46
- children: /* @__PURE__ */ m.jsx(v, { data: f, options: j, onSegmentClick: x })
46
+ children: /* @__PURE__ */ m.jsx(D, { data: f, options: j, onSegmentClick: x })
47
47
  }
48
48
  );
49
49
  }, V = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
@@ -54,4 +54,4 @@ export {
54
54
  L as D,
55
55
  V as i
56
56
  };
57
- //# sourceMappingURL=index-BAfVF5iP.js.map
57
+ //# sourceMappingURL=index-DuWcnytb.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index-BAfVF5iP.js","sources":["../src/remarkable-pro/components/charts/pies/DonutChartPro/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 { 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 DonutChartProProps = DefaultPieChartProps;\n\nconst DonutChartPro = (props: DonutChartProProps) => {\n const theme = useTheme() as Theme;\n i18nSetup(theme);\n\n const {\n description,\n dimension,\n maxLegendItems,\n measure,\n results,\n showLegend,\n showTooltips,\n showValueLabels,\n title,\n onSegmentClick,\n } = resolveI18nProps(props);\n\n const data = getPieChartData({ data: results.data, dimension, measure, maxLegendItems }, theme);\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.donutChartPro?.options ?? {},\n );\n\n const handleSegmentClick = (index: number | undefined) => {\n onSegmentClick({\n dimensionValue: index === undefined ? undefined : results.data?.[index]?.[dimension.name],\n });\n };\n\n return (\n <ChartCard\n data={results}\n dimensionsAndMeasures={[dimension, measure]}\n errorMessage={results.error}\n subtitle={description}\n title={title}\n >\n <DonutChart data={data} options={options} onSegmentClick={handleSegmentClick} />\n </ChartCard>\n );\n};\n\nexport default DonutChartPro;\n"],"names":["DonutChartPro","props","theme","useTheme","i18nSetup","description","dimension","maxLegendItems","measure","results","showLegend","showTooltips","showValueLabels","title","onSegmentClick","resolveI18nProps","data","getPieChartData","options","mergician","getDefaultPieChartOptions","_a","handleSegmentClick","index","_b","jsx","ChartCard","DonutChart"],"mappings":";;;;;AAYA,MAAMA,IAAgB,CAACC,MAA8B;;AACnD,QAAMC,IAAQC,EAAA;AACd,EAAAC,EAAUF,CAAK;AAEf,QAAM;AAAA,IACJ,aAAAG;AAAA,IACA,WAAAC;AAAA,IACA,gBAAAC;AAAA,IACA,SAAAC;AAAA,IACA,SAAAC;AAAA,IACA,YAAAC;AAAA,IACA,cAAAC;AAAA,IACA,iBAAAC;AAAA,IACA,OAAAC;AAAA,IACA,gBAAAC;AAAA,EAAA,IACEC,EAAiBd,CAAK,GAEpBe,IAAOC,EAAgB,EAAE,MAAMR,EAAQ,MAAM,WAAAH,GAAW,SAAAE,GAAS,gBAAAD,EAAA,GAAkBL,CAAK,GAExFgB,IAAUC;AAAA,IACdC;AAAA,MACE;AAAA,QACE,SAAAZ;AAAA,QACA,cAAAG;AAAA,QACA,YAAAD;AAAA,QACA,iBAAAE;AAAA,MAAA;AAAA,MAEFV;AAAA,IAAA;AAAA,MAEFmB,IAAAnB,EAAM,OAAO,kBAAb,gBAAAmB,EAA4B,YAAW,CAAA;AAAA,EAAC,GAGpCC,IAAqB,CAACC,MAA8B;;AACxD,IAAAT,EAAe;AAAA,MACb,gBAAgBS,MAAU,WAAwBC,KAAAH,IAAAZ,EAAQ,SAAR,gBAAAY,EAAeE,OAAf,OAAZ,SAAYC,EAAwBlB,EAAU;AAAA,IAAI,CACzF;AAAA,EACH;AAEA,SACEmB,gBAAAA,EAAAA;AAAAA,IAACC;AAAA,IAAA;AAAA,MACC,MAAMjB;AAAA,MACN,uBAAuB,CAACH,GAAWE,CAAO;AAAA,MAC1C,cAAcC,EAAQ;AAAA,MACtB,UAAUJ;AAAA,MACV,OAAAQ;AAAA,MAEA,UAAAY,gBAAAA,EAAAA,IAACE,GAAA,EAAW,MAAAX,GAAY,SAAAE,GAAkB,gBAAgBI,EAAA,CAAoB;AAAA,IAAA;AAAA,EAAA;AAGpF;;;;"}
1
+ {"version":3,"file":"index-DuWcnytb.js","sources":["../src/remarkable-pro/components/charts/pies/DonutChartPro/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 { 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 DonutChartProProps = DefaultPieChartProps;\n\nconst DonutChartPro = (props: DonutChartProProps) => {\n const theme = useTheme() as Theme;\n i18nSetup(theme);\n\n const {\n description,\n dimension,\n maxLegendItems,\n measure,\n results,\n showLegend,\n showTooltips,\n showValueLabels,\n title,\n onSegmentClick,\n } = resolveI18nProps(props);\n\n const data = getPieChartData({ data: results.data, dimension, measure, maxLegendItems }, theme);\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.donutChartPro?.options ?? {},\n );\n\n const handleSegmentClick = (index: number | undefined) => {\n onSegmentClick({\n dimensionValue: index === undefined ? undefined : results.data?.[index]?.[dimension.name],\n });\n };\n\n return (\n <ChartCard\n data={results}\n dimensionsAndMeasures={[dimension, measure]}\n errorMessage={results.error}\n subtitle={description}\n title={title}\n >\n <DonutChart data={data} options={options} onSegmentClick={handleSegmentClick} />\n </ChartCard>\n );\n};\n\nexport default DonutChartPro;\n"],"names":["DonutChartPro","props","theme","useTheme","i18nSetup","description","dimension","maxLegendItems","measure","results","showLegend","showTooltips","showValueLabels","title","onSegmentClick","resolveI18nProps","data","getPieChartData","options","mergician","getDefaultPieChartOptions","_a","handleSegmentClick","index","_b","jsx","ChartCard","DonutChart"],"mappings":";;;;;AAYA,MAAMA,IAAgB,CAACC,MAA8B;;AACnD,QAAMC,IAAQC,EAAA;AACd,EAAAC,EAAUF,CAAK;AAEf,QAAM;AAAA,IACJ,aAAAG;AAAA,IACA,WAAAC;AAAA,IACA,gBAAAC;AAAA,IACA,SAAAC;AAAA,IACA,SAAAC;AAAA,IACA,YAAAC;AAAA,IACA,cAAAC;AAAA,IACA,iBAAAC;AAAA,IACA,OAAAC;AAAA,IACA,gBAAAC;AAAA,EAAA,IACEC,EAAiBd,CAAK,GAEpBe,IAAOC,EAAgB,EAAE,MAAMR,EAAQ,MAAM,WAAAH,GAAW,SAAAE,GAAS,gBAAAD,EAAA,GAAkBL,CAAK,GAExFgB,IAAUC;AAAA,IACdC;AAAA,MACE;AAAA,QACE,SAAAZ;AAAA,QACA,cAAAG;AAAA,QACA,YAAAD;AAAA,QACA,iBAAAE;AAAA,MAAA;AAAA,MAEFV;AAAA,IAAA;AAAA,MAEFmB,IAAAnB,EAAM,OAAO,kBAAb,gBAAAmB,EAA4B,YAAW,CAAA;AAAA,EAAC,GAGpCC,IAAqB,CAACC,MAA8B;;AACxD,IAAAT,EAAe;AAAA,MACb,gBAAgBS,MAAU,WAAwBC,KAAAH,IAAAZ,EAAQ,SAAR,gBAAAY,EAAeE,OAAf,OAAZ,SAAYC,EAAwBlB,EAAU;AAAA,IAAI,CACzF;AAAA,EACH;AAEA,SACEmB,gBAAAA,EAAAA;AAAAA,IAACC;AAAA,IAAA;AAAA,MACC,MAAMjB;AAAA,MACN,uBAAuB,CAACH,GAAWE,CAAO;AAAA,MAC1C,cAAcC,EAAQ;AAAA,MACtB,UAAUJ;AAAA,MACV,OAAAQ;AAAA,MAEA,UAAAY,gBAAAA,EAAAA,IAACE,GAAA,EAAW,MAAAX,GAAY,SAAAE,GAAkB,gBAAgBI,EAAA,CAAoB;AAAA,IAAA;AAAA,EAAA;AAGpF;;;;"}
package/dist/index.js CHANGED
@@ -1,24 +1,25 @@
1
- import { C as xs, S as bs } from "./ChartCard-CMgDz_bs.js";
2
- import { j as s, af as w, ag as u, ah as _, ai as I, aj as S, ak as N, al as T, am as P } from "./component.constants-CFaxyNCw.js";
3
- import { an as _s, av as fs, ap as Cs, ao as gs, a0 as ys, au as js, aw as vs, ar as ws, as as Is, aq as Ss, a6 as Ns, a7 as Ts, ay as Ps, at as $s, T as ks, d as As, ax as Bs, c as Ls, z as Ms, aL as Ds, ac as Fs, W as Rs, b as zs, aK as Os, a9 as Ws, aM as Es, Y as Gs, Z as Ks, a5 as qs, X as Hs, F as Vs, C as Xs, a8 as Us, U as Ys, i as Js, a3 as Zs, A as Qs, w as sa, a as aa, ae as ea, r as ta, p as oa, h as na, s as ra, g as ia, e as ca, aN as la, B as ua, f as ma, aG as ha, ab as da, a1 as xa, aF as ba, aH as pa, aE as _a, aB as fa, a4 as Ca, aC as ga, aI as ya, aD as ja, az as va, aA as wa, aa as Ia, aJ as Sa, t as Na, x as Ta, v as Pa, l as $a, k as ka, y as Aa, n as Ba, u as La, q as Ma } from "./component.constants-CFaxyNCw.js";
1
+ import { C as xs, S as bs } from "./ChartCard-k190CXR0.js";
2
+ import { j as s, ag as w, ah as u, ai as _, aj as I, ak as S, al as N, am as T, an as P } from "./component.constants-D0ea4CW4.js";
3
+ import { ao as _s, aw as fs, aq as Cs, ap as gs, a0 as ys, av as js, ax as vs, as as ws, at as Is, ar as Ss, a7 as Ns, a8 as Ts, az as Ps, au as $s, T as ks, d as As, ay as Bs, c as Ls, z as Ms, aM as Ds, ad as Fs, W as Rs, b as Os, aL as zs, aa as Ws, aN as Es, Y as Gs, Z as Hs, a4 as Ks, X as qs, F as Vs, C as Xs, a9 as Us, U as Ys, i as Js, a5 as Zs, a3 as Qs, A as sa, w as aa, a as ea, af as ta, r as oa, p as na, h as ra, s as ia, g as ca, e as la, aO as ua, B as ma, f as ha, aH as da, ac as xa, a1 as ba, aG as pa, aI as _a, aF as fa, aC as Ca, a6 as ga, aD as ya, aJ as ja, aE as va, aA as wa, aB as Ia, ab as Sa, aK as Na, t as Ta, x as Pa, v as $a, l as ka, k as Aa, y as Ba, n as La, u as Ma, q as Da } from "./component.constants-D0ea4CW4.js";
4
4
  import { useRef as $, useState as k, useEffect as A } from "react";
5
- import { E as Fa, S as Ra } from "./EditorCard-CJoUz4uM.js";
6
- import { B as g } from "./index-DvEWwlqq.js";
7
- import { b as Oa, i as Wa } from "./index-DvEWwlqq.js";
8
- import { S as Ga } from "./SingleSelectField-CJNiLfee.js";
9
- import { K as qa } from "./KpiChart-C6zepuhF.js";
10
- import { P as Va } from "./PivotTable-SNPquHl0.js";
11
- import { r as Ua, s as Ya } from "./charts.utils-HfNL9dVl.js";
12
- import { g as Za } from "./object.utils-D_Zzon-H.js";
13
- import { g as se } from "./formatter.utils-Cu4uKJSZ.js";
14
- import { a as ee, g as te } from "./pies.utils-JpKM3rVw.js";
15
- import { i as ne } from "./index-DW-LmiPi.js";
16
- import { i as ie } from "./index-BAfVF5iP.js";
17
- import { i as le } from "./index-CxxeUDMD.js";
18
- import { i as me } from "./index-C4BiW71l.js";
19
- import { i as de } from "./index-DvMr1tvf.js";
20
- import { C as be } from "./ComparisonPeriod.type.emb-C1o3iM9L.js";
21
- import { i as _e, s as fe } from "./color.utils-CVyp-fGP.js";
5
+ import { E as Ra, S as Oa } from "./EditorCard-BNBH4Y9F.js";
6
+ import { B as g } from "./index-D_TXLv5w.js";
7
+ import { b as Wa, i as Ea } from "./index-D_TXLv5w.js";
8
+ import { S as Ha } from "./SingleSelectField-CY0TwkyW.js";
9
+ import { K as qa } from "./KpiChart-DJ5el66E.js";
10
+ import { P as Xa } from "./PivotTable-awuBNY8c.js";
11
+ import { H as Ya } from "./HeatMap-ylrlKLQI.js";
12
+ import { r as Za, s as Qa } from "./charts.utils-LgE4AEAw.js";
13
+ import { g as ae } from "./object.utils-D_Zzon-H.js";
14
+ import { g as te } from "./formatter.utils-DBUd3PfE.js";
15
+ import { a as ne, g as re } from "./pies.utils-DpY3U9c2.js";
16
+ import { i as ce } from "./index-BpujEeVe.js";
17
+ import { i as ue } from "./index-DuWcnytb.js";
18
+ import { i as he } from "./index-DGb59RGF.js";
19
+ import { i as xe } from "./index-BGf7vP5k.js";
20
+ import { i as pe } from "./index-C_G6mJoE.js";
21
+ import { C as fe } from "./ComparisonPeriod.type.emb-Dgl2VM4_.js";
22
+ import { i as ge, s as ye } from "./color.utils-CVyp-fGP.js";
22
23
  const B = "_container_436fl_1", L = "_column_436fl_10", M = "_box_436fl_20", D = "_short_436fl_26", F = "_tall_436fl_34", e = {
23
24
  container: B,
24
25
  column: L,
@@ -53,10 +54,10 @@ const B = "_container_436fl_1", L = "_column_436fl_10", M = "_box_436fl_20", D =
53
54
  ] }) }, n);
54
55
  };
55
56
  return /* @__PURE__ */ s.jsx("div", { ref: a, className: `${e.container} ${t || ""}`, children: Array.from({ length: o }, (n, r) => c(r)) });
56
- }, R = "_icon_bk4b5_1", z = "_iconPrimary_bk4b5_6", O = "_iconSecondary_bk4b5_9", W = "_buttonIcon_bk4b5_12", p = {
57
+ }, R = "_icon_bk4b5_1", O = "_iconPrimary_bk4b5_6", z = "_iconSecondary_bk4b5_9", W = "_buttonIcon_bk4b5_12", p = {
57
58
  icon: R,
58
- iconPrimary: z,
59
- iconSecondary: O,
59
+ iconPrimary: O,
60
+ iconSecondary: z,
60
61
  buttonIcon: W
61
62
  }, cs = ({
62
63
  icon: t,
@@ -70,10 +71,10 @@ const B = "_container_436fl_1", L = "_column_436fl_10", M = "_box_436fl_20", D =
70
71
  p[`icon${a.charAt(0).toUpperCase() + a.slice(1)}`]
71
72
  )
72
73
  }
73
- ) }), E = "_ghostButton_1cvh9_1", G = "_icon_1cvh9_38", K = "_label_1cvh9_42", h = {
74
+ ) }), E = "_ghostButton_1cvh9_1", G = "_icon_1cvh9_38", H = "_label_1cvh9_42", h = {
74
75
  ghostButton: E,
75
76
  icon: G,
76
- label: K
77
+ label: H
77
78
  }, ls = ({
78
79
  startIcon: t,
79
80
  endIcon: a,
@@ -84,9 +85,9 @@ const B = "_container_436fl_1", L = "_column_436fl_10", M = "_box_436fl_20", D =
84
85
  t && /* @__PURE__ */ s.jsx(t, { className: h.icon }),
85
86
  /* @__PURE__ */ s.jsx(_, { className: h.label, children: o }),
86
87
  a && /* @__PURE__ */ s.jsx(a, { className: h.icon })
87
- ] }), q = "_overlay_1wzuc_1", H = {
88
- overlay: q
89
- }, V = ({ className: t, children: a }) => /* @__PURE__ */ s.jsx("div", { className: u(H.overlay, t), children: a }), X = "_actions_pvzr9_1", U = {
88
+ ] }), K = "_overlay_1wzuc_1", q = {
89
+ overlay: K
90
+ }, V = ({ className: t, children: a }) => /* @__PURE__ */ s.jsx("div", { className: u(q.overlay, t), children: a }), X = "_actions_pvzr9_1", U = {
90
91
  actions: X
91
92
  }, us = ({
92
93
  title: t,
@@ -160,33 +161,34 @@ export {
160
161
  _s as CardContentInfo,
161
162
  S as CardHeader,
162
163
  xs as ChartCard,
163
- be as ComparisonPeriodType,
164
+ fe as ComparisonPeriodType,
164
165
  us as ConfirmCancelModal,
165
- de as DateRangeSelectFieldPro,
166
+ pe as DateRangeSelectFieldPro,
166
167
  fs as DonutChart,
167
- ie as DonutChartPro,
168
- le as DonutLabelChartPro,
168
+ ue as DonutChartPro,
169
+ he as DonutLabelChartPro,
169
170
  Cs as Dropdown,
170
- Fa as EditorCard,
171
+ Ra as EditorCard,
171
172
  is as EmptyStateSkeleton,
172
173
  gs as FieldErrorMessage,
173
174
  ls as GhostButton,
175
+ Ya as HeatMap,
174
176
  N as IconButton,
175
177
  qa as KpiChart,
176
178
  ys as LineChart,
177
- Oa as MultiSelectField,
178
- Wa as MultiSelectFieldPro,
179
+ Wa as MultiSelectField,
180
+ Ea as MultiSelectFieldPro,
179
181
  js as NumberField,
180
182
  V as PageOverlay,
181
183
  vs as PieChart,
182
- ne as PieChartPro,
183
- Va as PivotTable,
184
+ ce as PieChartPro,
185
+ Xa as PivotTable,
184
186
  ws as SelectButton,
185
187
  Is as SelectList,
186
188
  Ss as SelectListOption,
187
- Ra as SelectListOptions,
188
- Ga as SingleSelectField,
189
- me as SingleSelectFieldPro,
189
+ Oa as SelectListOptions,
190
+ Ha as SingleSelectField,
191
+ xe as SingleSelectFieldPro,
190
192
  bs as Skeleton,
191
193
  ms as Switch,
192
194
  Ns as TableHeaderAlign,
@@ -202,64 +204,65 @@ export {
202
204
  Ds as dimensionOrMeasure,
203
205
  Fs as dimensionSimple,
204
206
  Rs as dimensionTime,
205
- zs as dimensionWithDateBounds,
206
- Os as dimensions,
207
+ Os as dimensionWithDateBounds,
208
+ zs as dimensions,
207
209
  Ws as dimensionsAndMeasures,
208
210
  Es as displayPercentages,
209
211
  Gs as genericBoolean,
210
- Ks as genericNumber,
211
- qs as genericString,
212
- Hs as genericTimeRange,
213
- ee as getDefaultPieChartOptions,
214
- Za as getObjectStableKey,
215
- te as getPieChartData,
212
+ Hs as genericNumber,
213
+ Ks as genericString,
214
+ qs as genericTimeRange,
215
+ ne as getDefaultPieChartOptions,
216
+ ae as getObjectStableKey,
217
+ re as getPieChartData,
216
218
  Vs as getStyle,
217
219
  Xs as getStyleNumber,
218
220
  Us as getTableTotalPages,
219
- se as getThemeFormatter,
221
+ te as getThemeFormatter,
220
222
  Ys as i18n,
221
223
  Js as i18nSetup,
222
- _e as isColorValid,
223
- Zs as maxLegendItems,
224
- Qs as maxResults,
225
- sa as measure,
226
- aa as measures,
227
- ea as placeholder,
228
- Ua as remarkableTheme,
229
- ta as resolveI18nProps,
230
- oa as reverseXAxis,
231
- na as reverseYAxis,
232
- fe as setColorAlpha,
233
- ra as showLegend,
234
- ia as showLogarithmicScale,
235
- ca as showTooltips,
236
- la as showTopItems,
237
- ua as showTotalLabels,
238
- ma as showValueLabels,
239
- Ya as styles,
240
- ha as subInputAbbreviateLargeNumber,
241
- da as subInputAlign,
242
- xa as subInputColor,
243
- ba as subInputCurrency,
244
- pa as subInputDateBounds,
245
- _a as subInputDecimalPlaces,
246
- fa as subInputDisplayName,
247
- Ca as subInputGenericBoolean,
248
- ga as subInputGenericNumber,
249
- ya as subInputGranularity,
250
- ja as subInputMaxCharacters,
251
- va as subInputPrefix,
252
- wa as subInputSuffix,
253
- Ia as subInputWidth,
254
- Sa as timeDimensionSubInputs,
255
- Na as title,
256
- Ta as xAxisLabel,
257
- Pa as xAxisMaxItems,
258
- $a as xAxisRangeMax,
259
- ka as xAxisRangeMin,
260
- Aa as yAxisLabel,
261
- Ba as yAxisMaxItems,
262
- La as yAxisRangeMax,
263
- Ma as yAxisRangeMin
224
+ Zs as inputColor,
225
+ ge as isColorValid,
226
+ Qs as maxLegendItems,
227
+ sa as maxResults,
228
+ aa as measure,
229
+ ea as measures,
230
+ ta as placeholder,
231
+ Za as remarkableTheme,
232
+ oa as resolveI18nProps,
233
+ na as reverseXAxis,
234
+ ra as reverseYAxis,
235
+ ye as setColorAlpha,
236
+ ia as showLegend,
237
+ ca as showLogarithmicScale,
238
+ la as showTooltips,
239
+ ua as showTopItems,
240
+ ma as showTotalLabels,
241
+ ha as showValueLabels,
242
+ Qa as styles,
243
+ da as subInputAbbreviateLargeNumber,
244
+ xa as subInputAlign,
245
+ ba as subInputColor,
246
+ pa as subInputCurrency,
247
+ _a as subInputDateBounds,
248
+ fa as subInputDecimalPlaces,
249
+ Ca as subInputDisplayName,
250
+ ga as subInputGenericBoolean,
251
+ ya as subInputGenericNumber,
252
+ ja as subInputGranularity,
253
+ va as subInputMaxCharacters,
254
+ wa as subInputPrefix,
255
+ Ia as subInputSuffix,
256
+ Sa as subInputWidth,
257
+ Na as timeDimensionSubInputs,
258
+ Ta as title,
259
+ Pa as xAxisLabel,
260
+ $a as xAxisMaxItems,
261
+ ka as xAxisRangeMax,
262
+ Aa as xAxisRangeMin,
263
+ Ba as yAxisLabel,
264
+ La as yAxisMaxItems,
265
+ Ma as yAxisRangeMax,
266
+ Da as yAxisRangeMin
264
267
  };
265
268
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../src/remarkable-ui/shared/EmptyStateSkeleton/EmptyStateSkeleton.tsx","../src/remarkable-ui/shared/ButtonIcon/ButtonIcon.tsx","../src/remarkable-ui/shared/GhostButton/GhostButton.tsx","../src/remarkable-ui/shared/PageOverlay/PageOverlay.tsx","../src/remarkable-ui/shared/ConfirmCancelModal/ConfirmCancelModal.tsx","../src/remarkable-ui/shared/Switch/Switch.tsx"],"sourcesContent":["import React, { useState, useEffect, useRef } from 'react';\nimport styles from './EmptyStateSkeleton.module.css';\n\ninterface EmptyStateSkeletonProps {\n className?: string;\n}\n\nexport const EmptyStateSkeleton: React.FC<EmptyStateSkeletonProps> = ({ className }) => {\n const containerRef = useRef<HTMLDivElement>(null);\n const [visibleColumns, setVisibleColumns] = useState(2);\n\n useEffect(() => {\n const calculateColumns = () => {\n if (!containerRef.current) return;\n\n const containerWidth = containerRef.current.offsetWidth;\n const padding = 32; // 2rem total padding (1rem each side)\n const gap = 16; // 1rem gap between columns\n const minColumnWidth = 128; // 8rem\n const maxColumnWidth = 256; // 16rem\n\n const availableWidth = containerWidth - padding;\n\n // Calculate how many columns can fit at minimum width\n const maxPossibleColumns = Math.floor((availableWidth + gap) / (minColumnWidth + gap));\n\n // Calculate actual column width if we use maxPossibleColumns\n const actualColumnWidth =\n (availableWidth - (maxPossibleColumns - 1) * gap) / maxPossibleColumns;\n\n // If columns would be wider than max width, reduce column count\n let finalColumns = maxPossibleColumns;\n if (actualColumnWidth > maxColumnWidth) {\n finalColumns = Math.floor((availableWidth + gap) / (maxColumnWidth + gap));\n }\n\n setVisibleColumns(Math.max(2, finalColumns)); // Minimum 2 columns\n };\n\n calculateColumns();\n\n const resizeObserver = new ResizeObserver(calculateColumns);\n if (containerRef.current) {\n resizeObserver.observe(containerRef.current);\n }\n\n return () => resizeObserver.disconnect();\n }, []);\n\n const renderColumn = (index: number) => {\n const isEvenColumn = index % 2 === 0;\n return (\n <div key={index} className={styles.column}>\n {isEvenColumn ? (\n <>\n <div className={`${styles.box} ${styles.short}`}></div>\n <div className={`${styles.box} ${styles.tall}`}></div>\n <div className={`${styles.box} ${styles.short}`}></div>\n <div className={`${styles.box} ${styles.tall}`}></div>\n </>\n ) : (\n <>\n <div className={`${styles.box} ${styles.tall}`}></div>\n <div className={`${styles.box} ${styles.short}`}></div>\n <div className={`${styles.box} ${styles.tall}`}></div>\n <div className={`${styles.box} ${styles.short}`}></div>\n </>\n )}\n </div>\n );\n };\n\n return (\n <div ref={containerRef} className={`${styles.container} ${className || ''}`}>\n {Array.from({ length: visibleColumns }, (_, index) => renderColumn(index))}\n </div>\n );\n};\n","import React from 'react';\nimport clsx from 'clsx';\nimport styles from './ButtonIcon.module.css';\nimport { BaseButton, type BaseButtonProps } from '../BaseButton';\nimport { TablerIcon } from '@tabler/icons-react';\n\ntype ButtonIconProps = Omit<BaseButtonProps, 'size'> & {\n icon: TablerIcon;\n};\n\nexport const ButtonIcon: React.FC<ButtonIconProps> = ({\n icon: Icon,\n variant = 'primary',\n ...props\n}) => {\n return (\n <BaseButton variant={variant} size=\"medium\" className={styles.buttonIcon} {...props}>\n <Icon\n className={clsx(\n styles.icon,\n styles[`icon${variant.charAt(0).toUpperCase() + variant.slice(1)}`],\n )}\n />\n </BaseButton>\n );\n};\n","import React from 'react';\nimport { Icon } from '@tabler/icons-react';\nimport clsx from 'clsx';\nimport styles from './GhostButton.module.css';\nimport { Typography } from '../Typography/Typography';\n\ntype GhostButtonProps = {\n startIcon?: Icon;\n endIcon?: Icon;\n} & React.ButtonHTMLAttributes<HTMLButtonElement>;\n\nexport const GhostButton: React.FC<GhostButtonProps> = ({\n startIcon: StartIcon,\n endIcon: EndIcon,\n children,\n className,\n ...props\n}) => {\n return (\n <button className={clsx(styles.ghostButton, className)} {...props}>\n {StartIcon && <StartIcon className={styles.icon} />}\n <Typography className={styles.label}>{children}</Typography>\n {EndIcon && <EndIcon className={styles.icon} />}\n </button>\n );\n};\n","import clsx from 'clsx';\nimport styles from './PageOverlay.module.css';\nimport type { PageOverlayProps } from './PageOverlay.types';\n\nexport const PageOverlay: React.FC<PageOverlayProps> = ({ className, children }) => {\n return <div className={clsx(styles.overlay, className)}>{children}</div>;\n};\n","import React from 'react';\nimport { Card, CardHeader, CardContent } from '../Card/Card';\nimport { Button } from '../Button/Button';\nimport { Typography } from '../Typography/Typography';\nimport styles from './ConfirmCancelModal.module.css';\nimport type { ConfirmCancelModalProps } from './ConfirmCancelModal.types';\nimport { PageOverlay } from '../PageOverlay';\nimport { IconX } from '@tabler/icons-react';\nimport { IconButton } from '../IconButton/IconButton';\n\nexport const ConfirmCancelModal: React.FC<ConfirmCancelModalProps> = ({\n title,\n message,\n confirmLabel = 'Confirm',\n cancelLabel = 'Cancel',\n onConfirm,\n onCancel,\n className,\n}) => {\n return (\n <PageOverlay>\n <Card className={className}>\n <CardHeader title={title} rightContent={<IconButton icon={IconX} onClick={onCancel} />} />\n <CardContent>\n <Typography as=\"span\">{message}</Typography>\n <div className={styles.actions}>\n <Button variant=\"secondary\" size=\"medium\" onClick={onCancel}>\n {cancelLabel}\n </Button>\n <Button variant=\"primary\" size=\"medium\" onClick={onConfirm}>\n {confirmLabel}\n </Button>\n </div>\n </CardContent>\n </Card>\n </PageOverlay>\n );\n};\n","import React from 'react';\nimport clsx from 'clsx';\nimport styles from './Switch.module.css';\nimport { Typography } from '../Typography/Typography';\n\ntype SwitchProps = Omit<React.InputHTMLAttributes<HTMLInputElement>, 'onChange'> & {\n onChange?: (checked: boolean) => void;\n disabled?: boolean;\n className?: string;\n label?: string;\n};\n\nexport const Switch: React.FC<SwitchProps> = ({\n checked,\n onChange,\n disabled = false,\n className,\n label,\n ...props\n}) => {\n const handleChange = (event: React.ChangeEvent<HTMLInputElement>) => {\n if (!disabled && onChange) {\n onChange(event.target.checked);\n }\n };\n\n // Ensure accessibility: either aria-label must be provided\n if (!props['aria-label']) {\n console.warn(\n 'Switch component requires either a label prop or aria-label prop for accessibility',\n );\n }\n\n return (\n <div className={clsx(styles.switchContainer, className)}>\n <label\n className={clsx(styles.switchLabel, checked && styles.checked, disabled && styles.disabled)}\n >\n <input\n type=\"checkbox\"\n checked={checked}\n onChange={handleChange}\n disabled={disabled}\n className={styles.switchInput}\n role=\"switch\"\n aria-checked={checked}\n aria-disabled={disabled}\n {...props}\n />\n <span className={styles.switchTrack} aria-hidden=\"true\">\n <span className={styles.switchThumb} aria-hidden=\"true\" />\n </span>\n {label && (\n <Typography as=\"span\" className={clsx(styles.labelText, disabled && styles.disabled)}>\n {label}\n </Typography>\n )}\n </label>\n </div>\n );\n};\n"],"names":["EmptyStateSkeleton","className","containerRef","useRef","visibleColumns","setVisibleColumns","useState","useEffect","calculateColumns","containerWidth","padding","gap","minColumnWidth","maxColumnWidth","availableWidth","maxPossibleColumns","actualColumnWidth","finalColumns","resizeObserver","renderColumn","index","isEvenColumn","styles","jsxs","Fragment","jsx","_","ButtonIcon","Icon","variant","props","BaseButton","clsx","GhostButton","StartIcon","EndIcon","children","Typography","PageOverlay","ConfirmCancelModal","title","message","confirmLabel","cancelLabel","onConfirm","onCancel","Card","CardHeader","IconButton","IconX","CardContent","Button","Switch","checked","onChange","disabled","label","handleChange","event"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sources":["../src/remarkable-ui/shared/EmptyStateSkeleton/EmptyStateSkeleton.tsx","../src/remarkable-ui/shared/ButtonIcon/ButtonIcon.tsx","../src/remarkable-ui/shared/GhostButton/GhostButton.tsx","../src/remarkable-ui/shared/PageOverlay/PageOverlay.tsx","../src/remarkable-ui/shared/ConfirmCancelModal/ConfirmCancelModal.tsx","../src/remarkable-ui/shared/Switch/Switch.tsx"],"sourcesContent":["import React, { useState, useEffect, useRef } from 'react';\nimport styles from './EmptyStateSkeleton.module.css';\n\ninterface EmptyStateSkeletonProps {\n className?: string;\n}\n\nexport const EmptyStateSkeleton: React.FC<EmptyStateSkeletonProps> = ({ className }) => {\n const containerRef = useRef<HTMLDivElement>(null);\n const [visibleColumns, setVisibleColumns] = useState(2);\n\n useEffect(() => {\n const calculateColumns = () => {\n if (!containerRef.current) return;\n\n const containerWidth = containerRef.current.offsetWidth;\n const padding = 32; // 2rem total padding (1rem each side)\n const gap = 16; // 1rem gap between columns\n const minColumnWidth = 128; // 8rem\n const maxColumnWidth = 256; // 16rem\n\n const availableWidth = containerWidth - padding;\n\n // Calculate how many columns can fit at minimum width\n const maxPossibleColumns = Math.floor((availableWidth + gap) / (minColumnWidth + gap));\n\n // Calculate actual column width if we use maxPossibleColumns\n const actualColumnWidth =\n (availableWidth - (maxPossibleColumns - 1) * gap) / maxPossibleColumns;\n\n // If columns would be wider than max width, reduce column count\n let finalColumns = maxPossibleColumns;\n if (actualColumnWidth > maxColumnWidth) {\n finalColumns = Math.floor((availableWidth + gap) / (maxColumnWidth + gap));\n }\n\n setVisibleColumns(Math.max(2, finalColumns)); // Minimum 2 columns\n };\n\n calculateColumns();\n\n const resizeObserver = new ResizeObserver(calculateColumns);\n if (containerRef.current) {\n resizeObserver.observe(containerRef.current);\n }\n\n return () => resizeObserver.disconnect();\n }, []);\n\n const renderColumn = (index: number) => {\n const isEvenColumn = index % 2 === 0;\n return (\n <div key={index} className={styles.column}>\n {isEvenColumn ? (\n <>\n <div className={`${styles.box} ${styles.short}`}></div>\n <div className={`${styles.box} ${styles.tall}`}></div>\n <div className={`${styles.box} ${styles.short}`}></div>\n <div className={`${styles.box} ${styles.tall}`}></div>\n </>\n ) : (\n <>\n <div className={`${styles.box} ${styles.tall}`}></div>\n <div className={`${styles.box} ${styles.short}`}></div>\n <div className={`${styles.box} ${styles.tall}`}></div>\n <div className={`${styles.box} ${styles.short}`}></div>\n </>\n )}\n </div>\n );\n };\n\n return (\n <div ref={containerRef} className={`${styles.container} ${className || ''}`}>\n {Array.from({ length: visibleColumns }, (_, index) => renderColumn(index))}\n </div>\n );\n};\n","import React from 'react';\nimport clsx from 'clsx';\nimport styles from './ButtonIcon.module.css';\nimport { BaseButton, type BaseButtonProps } from '../BaseButton';\nimport { TablerIcon } from '@tabler/icons-react';\n\ntype ButtonIconProps = Omit<BaseButtonProps, 'size'> & {\n icon: TablerIcon;\n};\n\nexport const ButtonIcon: React.FC<ButtonIconProps> = ({\n icon: Icon,\n variant = 'primary',\n ...props\n}) => {\n return (\n <BaseButton variant={variant} size=\"medium\" className={styles.buttonIcon} {...props}>\n <Icon\n className={clsx(\n styles.icon,\n styles[`icon${variant.charAt(0).toUpperCase() + variant.slice(1)}`],\n )}\n />\n </BaseButton>\n );\n};\n","import React from 'react';\nimport { Icon } from '@tabler/icons-react';\nimport clsx from 'clsx';\nimport styles from './GhostButton.module.css';\nimport { Typography } from '../Typography/Typography';\n\ntype GhostButtonProps = {\n startIcon?: Icon;\n endIcon?: Icon;\n} & React.ButtonHTMLAttributes<HTMLButtonElement>;\n\nexport const GhostButton: React.FC<GhostButtonProps> = ({\n startIcon: StartIcon,\n endIcon: EndIcon,\n children,\n className,\n ...props\n}) => {\n return (\n <button className={clsx(styles.ghostButton, className)} {...props}>\n {StartIcon && <StartIcon className={styles.icon} />}\n <Typography className={styles.label}>{children}</Typography>\n {EndIcon && <EndIcon className={styles.icon} />}\n </button>\n );\n};\n","import clsx from 'clsx';\nimport styles from './PageOverlay.module.css';\nimport type { PageOverlayProps } from './PageOverlay.types';\n\nexport const PageOverlay: React.FC<PageOverlayProps> = ({ className, children }) => {\n return <div className={clsx(styles.overlay, className)}>{children}</div>;\n};\n","import React from 'react';\nimport { Card, CardHeader, CardContent } from '../Card/Card';\nimport { Button } from '../Button/Button';\nimport { Typography } from '../Typography/Typography';\nimport styles from './ConfirmCancelModal.module.css';\nimport type { ConfirmCancelModalProps } from './ConfirmCancelModal.types';\nimport { PageOverlay } from '../PageOverlay';\nimport { IconX } from '@tabler/icons-react';\nimport { IconButton } from '../IconButton/IconButton';\n\nexport const ConfirmCancelModal: React.FC<ConfirmCancelModalProps> = ({\n title,\n message,\n confirmLabel = 'Confirm',\n cancelLabel = 'Cancel',\n onConfirm,\n onCancel,\n className,\n}) => {\n return (\n <PageOverlay>\n <Card className={className}>\n <CardHeader title={title} rightContent={<IconButton icon={IconX} onClick={onCancel} />} />\n <CardContent>\n <Typography as=\"span\">{message}</Typography>\n <div className={styles.actions}>\n <Button variant=\"secondary\" size=\"medium\" onClick={onCancel}>\n {cancelLabel}\n </Button>\n <Button variant=\"primary\" size=\"medium\" onClick={onConfirm}>\n {confirmLabel}\n </Button>\n </div>\n </CardContent>\n </Card>\n </PageOverlay>\n );\n};\n","import React from 'react';\nimport clsx from 'clsx';\nimport styles from './Switch.module.css';\nimport { Typography } from '../Typography/Typography';\n\ntype SwitchProps = Omit<React.InputHTMLAttributes<HTMLInputElement>, 'onChange'> & {\n onChange?: (checked: boolean) => void;\n disabled?: boolean;\n className?: string;\n label?: string;\n};\n\nexport const Switch: React.FC<SwitchProps> = ({\n checked,\n onChange,\n disabled = false,\n className,\n label,\n ...props\n}) => {\n const handleChange = (event: React.ChangeEvent<HTMLInputElement>) => {\n if (!disabled && onChange) {\n onChange(event.target.checked);\n }\n };\n\n // Ensure accessibility: either aria-label must be provided\n if (!props['aria-label']) {\n console.warn(\n 'Switch component requires either a label prop or aria-label prop for accessibility',\n );\n }\n\n return (\n <div className={clsx(styles.switchContainer, className)}>\n <label\n className={clsx(styles.switchLabel, checked && styles.checked, disabled && styles.disabled)}\n >\n <input\n type=\"checkbox\"\n checked={checked}\n onChange={handleChange}\n disabled={disabled}\n className={styles.switchInput}\n role=\"switch\"\n aria-checked={checked}\n aria-disabled={disabled}\n {...props}\n />\n <span className={styles.switchTrack} aria-hidden=\"true\">\n <span className={styles.switchThumb} aria-hidden=\"true\" />\n </span>\n {label && (\n <Typography as=\"span\" className={clsx(styles.labelText, disabled && styles.disabled)}>\n {label}\n </Typography>\n )}\n </label>\n </div>\n );\n};\n"],"names":["EmptyStateSkeleton","className","containerRef","useRef","visibleColumns","setVisibleColumns","useState","useEffect","calculateColumns","containerWidth","padding","gap","minColumnWidth","maxColumnWidth","availableWidth","maxPossibleColumns","actualColumnWidth","finalColumns","resizeObserver","renderColumn","index","isEvenColumn","styles","jsxs","Fragment","jsx","_","ButtonIcon","Icon","variant","props","BaseButton","clsx","GhostButton","StartIcon","EndIcon","children","Typography","PageOverlay","ConfirmCancelModal","title","message","confirmLabel","cancelLabel","onConfirm","onCancel","Card","CardHeader","IconButton","IconX","CardContent","Button","Switch","checked","onChange","disabled","label","handleChange","event"],"mappings":"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"}
@@ -1,7 +1,7 @@
1
- import { r as u, g as b } from "./charts.utils-HfNL9dVl.js";
2
- import { g } from "./formatter.utils-Cu4uKJSZ.js";
1
+ import { r as u, g as b } from "./charts.utils-LgE4AEAw.js";
2
+ import { g } from "./formatter.utils-DBUd3PfE.js";
3
3
  import { g as h, a as i } from "./object.utils-D_Zzon-H.js";
4
- import { T as c, U as f } from "./component.constants-CFaxyNCw.js";
4
+ import { T as c, U as f } from "./component.constants-D0ea4CW4.js";
5
5
  import "react";
6
6
  const y = (a, o = u) => {
7
7
  const n = g(o);
@@ -72,4 +72,4 @@ export {
72
72
  F as a,
73
73
  y as g
74
74
  };
75
- //# sourceMappingURL=pies.utils-JpKM3rVw.js.map
75
+ //# sourceMappingURL=pies.utils-DpY3U9c2.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"pies.utils-JpKM3rVw.js","sources":["../src/remarkable-pro/components/charts/pies/pies.utils.ts"],"sourcesContent":["import { DataResponse, Dimension, Measure } from '@embeddable.com/core';\nimport { ChartData, ChartOptions } from 'chart.js';\nimport { groupTailAsOther } from '../charts.utils';\nimport { Theme } from '../../../theme/theme.types';\nimport { remarkableTheme } from '../../../theme/theme.constants';\nimport { getThemeFormatter } from '../../../theme/formatter/formatter.utils';\nimport { getColor } from '../../../theme/styles/styles.utils';\nimport { chartColors } from '../../../../remarkable-ui';\nimport { i18n } from '../../../theme/i18n/i18n';\nimport { getObjectStableKey } from '../../../utils.ts/object.utils';\n\nexport const getPieChartData = (\n props: {\n data: DataResponse['data'];\n dimension: Dimension;\n measure: Measure;\n maxLegendItems?: number;\n },\n theme: Theme = remarkableTheme,\n): ChartData<'pie'> => {\n const themeFormatter = getThemeFormatter(theme);\n\n if (!props.data)\n return {\n labels: [],\n datasets: [{ data: [] }],\n };\n\n const groupedData = groupTailAsOther(\n props.data,\n props.dimension,\n [props.measure],\n props.maxLegendItems,\n );\n\n const themeKey = getObjectStableKey(theme);\n\n const backgroundColor = groupedData.map((item, i) =>\n getColor(\n `${themeKey}.charts.backgroundColors`,\n `${props.dimension.name}.${item[props.dimension.name]}`,\n theme.charts.backgroundColors ?? chartColors,\n i,\n ),\n );\n\n const borderColor = groupedData.map((item, i) =>\n getColor(\n `${themeKey}.charts.borderColors`,\n `${props.dimension.name}.${item[props.dimension.name]}`,\n theme.charts.borderColors ?? chartColors,\n i,\n ),\n );\n\n return {\n labels: groupedData.map((item) => {\n const value = item[props.dimension.name];\n const formattedValue = themeFormatter.data(props.dimension, value);\n\n // If formatter did not work, try i18n translation\n if (value === formattedValue) {\n return i18n.t(value);\n }\n return formattedValue;\n }),\n datasets: [\n {\n data: groupedData.map((item) => item[props.measure.name]),\n backgroundColor,\n borderColor,\n },\n ],\n };\n};\n\nexport type DefaultPieChartOptions = {\n measure: Measure;\n showTooltips: boolean;\n showLegend: boolean;\n showValueLabels: boolean;\n};\n\nexport const getDefaultPieChartOptions = (\n options: DefaultPieChartOptions,\n theme: Theme = remarkableTheme,\n): Partial<ChartOptions<'pie'>> => {\n const themeFormatter = getThemeFormatter(theme);\n\n return {\n plugins: {\n legend: { display: options.showLegend, position: theme.charts.legendPosition ?? 'bottom' },\n datalabels: {\n display: options.showValueLabels ? 'auto' : false,\n formatter: (value: string | number) => themeFormatter.data(options.measure, value),\n },\n tooltip: {\n enabled: options.showTooltips,\n callbacks: {\n label(context) {\n const raw = context.raw as number;\n const total = context.dataset.data.reduce(\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n (sum: number, v: any) => sum + parseFloat(v),\n 0,\n );\n const pct = Math.round((raw / total) * 100);\n return `${themeFormatter.data(options.measure, raw)} (${pct}%)`;\n },\n },\n },\n },\n };\n};\n"],"names":["getPieChartData","props","theme","remarkableTheme","themeFormatter","getThemeFormatter","groupedData","groupTailAsOther","themeKey","getObjectStableKey","backgroundColor","item","i","getColor","chartColors","borderColor","value","formattedValue","i18n","getDefaultPieChartOptions","options","context","raw","total","sum","v","pct"],"mappings":";;;;;AAWO,MAAMA,IAAkB,CAC7BC,GAMAC,IAAeC,MACM;AACrB,QAAMC,IAAiBC,EAAkBH,CAAK;AAE9C,MAAI,CAACD,EAAM;AACT,WAAO;AAAA,MACL,QAAQ,CAAA;AAAA,MACR,UAAU,CAAC,EAAE,MAAM,IAAI;AAAA,IAAA;AAG3B,QAAMK,IAAcC;AAAA,IAClBN,EAAM;AAAA,IACNA,EAAM;AAAA,IACN,CAACA,EAAM,OAAO;AAAA,IACdA,EAAM;AAAA,EAAA,GAGFO,IAAWC,EAAmBP,CAAK,GAEnCQ,IAAkBJ,EAAY;AAAA,IAAI,CAACK,GAAMC,MAC7CC;AAAA,MACE,GAAGL,CAAQ;AAAA,MACX,GAAGP,EAAM,UAAU,IAAI,IAAIU,EAAKV,EAAM,UAAU,IAAI,CAAC;AAAA,MACrDC,EAAM,OAAO,oBAAoBY;AAAA,MACjCF;AAAA,IAAA;AAAA,EACF,GAGIG,IAAcT,EAAY;AAAA,IAAI,CAACK,GAAMC,MACzCC;AAAA,MACE,GAAGL,CAAQ;AAAA,MACX,GAAGP,EAAM,UAAU,IAAI,IAAIU,EAAKV,EAAM,UAAU,IAAI,CAAC;AAAA,MACrDC,EAAM,OAAO,gBAAgBY;AAAA,MAC7BF;AAAA,IAAA;AAAA,EACF;AAGF,SAAO;AAAA,IACL,QAAQN,EAAY,IAAI,CAACK,MAAS;AAChC,YAAMK,IAAQL,EAAKV,EAAM,UAAU,IAAI,GACjCgB,IAAiBb,EAAe,KAAKH,EAAM,WAAWe,CAAK;AAGjE,aAAIA,MAAUC,IACLC,EAAK,EAAEF,CAAK,IAEdC;AAAA,IACT,CAAC;AAAA,IACD,UAAU;AAAA,MACR;AAAA,QACE,MAAMX,EAAY,IAAI,CAACK,MAASA,EAAKV,EAAM,QAAQ,IAAI,CAAC;AAAA,QACxD,iBAAAS;AAAA,QACA,aAAAK;AAAA,MAAA;AAAA,IACF;AAAA,EACF;AAEJ,GASaI,IAA4B,CACvCC,GACAlB,IAAeC,MACkB;AACjC,QAAMC,IAAiBC,EAAkBH,CAAK;AAE9C,SAAO;AAAA,IACL,SAAS;AAAA,MACP,QAAQ,EAAE,SAASkB,EAAQ,YAAY,UAAUlB,EAAM,OAAO,kBAAkB,SAAA;AAAA,MAChF,YAAY;AAAA,QACV,SAASkB,EAAQ,kBAAkB,SAAS;AAAA,QAC5C,WAAW,CAACJ,MAA2BZ,EAAe,KAAKgB,EAAQ,SAASJ,CAAK;AAAA,MAAA;AAAA,MAEnF,SAAS;AAAA,QACP,SAASI,EAAQ;AAAA,QACjB,WAAW;AAAA,UACT,MAAMC,GAAS;AACb,kBAAMC,IAAMD,EAAQ,KACdE,IAAQF,EAAQ,QAAQ,KAAK;AAAA;AAAA,cAEjC,CAACG,GAAaC,MAAWD,IAAM,WAAWC,CAAC;AAAA,cAC3C;AAAA,YAAA,GAEIC,IAAM,KAAK,MAAOJ,IAAMC,IAAS,GAAG;AAC1C,mBAAO,GAAGnB,EAAe,KAAKgB,EAAQ,SAASE,CAAG,CAAC,KAAKI,CAAG;AAAA,UAC7D;AAAA,QAAA;AAAA,MACF;AAAA,IACF;AAAA,EACF;AAEJ;"}
1
+ {"version":3,"file":"pies.utils-DpY3U9c2.js","sources":["../src/remarkable-pro/components/charts/pies/pies.utils.ts"],"sourcesContent":["import { DataResponse, Dimension, Measure } from '@embeddable.com/core';\nimport { ChartData, ChartOptions } from 'chart.js';\nimport { groupTailAsOther } from '../charts.utils';\nimport { Theme } from '../../../theme/theme.types';\nimport { remarkableTheme } from '../../../theme/theme.constants';\nimport { getThemeFormatter } from '../../../theme/formatter/formatter.utils';\nimport { getColor } from '../../../theme/styles/styles.utils';\nimport { chartColors } from '../../../../remarkable-ui';\nimport { i18n } from '../../../theme/i18n/i18n';\nimport { getObjectStableKey } from '../../../utils.ts/object.utils';\n\nexport const getPieChartData = (\n props: {\n data: DataResponse['data'];\n dimension: Dimension;\n measure: Measure;\n maxLegendItems?: number;\n },\n theme: Theme = remarkableTheme,\n): ChartData<'pie'> => {\n const themeFormatter = getThemeFormatter(theme);\n\n if (!props.data)\n return {\n labels: [],\n datasets: [{ data: [] }],\n };\n\n const groupedData = groupTailAsOther(\n props.data,\n props.dimension,\n [props.measure],\n props.maxLegendItems,\n );\n\n const themeKey = getObjectStableKey(theme);\n\n const backgroundColor = groupedData.map((item, i) =>\n getColor(\n `${themeKey}.charts.backgroundColors`,\n `${props.dimension.name}.${item[props.dimension.name]}`,\n theme.charts.backgroundColors ?? chartColors,\n i,\n ),\n );\n\n const borderColor = groupedData.map((item, i) =>\n getColor(\n `${themeKey}.charts.borderColors`,\n `${props.dimension.name}.${item[props.dimension.name]}`,\n theme.charts.borderColors ?? chartColors,\n i,\n ),\n );\n\n return {\n labels: groupedData.map((item) => {\n const value = item[props.dimension.name];\n const formattedValue = themeFormatter.data(props.dimension, value);\n\n // If formatter did not work, try i18n translation\n if (value === formattedValue) {\n return i18n.t(value);\n }\n return formattedValue;\n }),\n datasets: [\n {\n data: groupedData.map((item) => item[props.measure.name]),\n backgroundColor,\n borderColor,\n },\n ],\n };\n};\n\nexport type DefaultPieChartOptions = {\n measure: Measure;\n showTooltips: boolean;\n showLegend: boolean;\n showValueLabels: boolean;\n};\n\nexport const getDefaultPieChartOptions = (\n options: DefaultPieChartOptions,\n theme: Theme = remarkableTheme,\n): Partial<ChartOptions<'pie'>> => {\n const themeFormatter = getThemeFormatter(theme);\n\n return {\n plugins: {\n legend: { display: options.showLegend, position: theme.charts.legendPosition ?? 'bottom' },\n datalabels: {\n display: options.showValueLabels ? 'auto' : false,\n formatter: (value: string | number) => themeFormatter.data(options.measure, value),\n },\n tooltip: {\n enabled: options.showTooltips,\n callbacks: {\n label(context) {\n const raw = context.raw as number;\n const total = context.dataset.data.reduce(\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n (sum: number, v: any) => sum + parseFloat(v),\n 0,\n );\n const pct = Math.round((raw / total) * 100);\n return `${themeFormatter.data(options.measure, raw)} (${pct}%)`;\n },\n },\n },\n },\n };\n};\n"],"names":["getPieChartData","props","theme","remarkableTheme","themeFormatter","getThemeFormatter","groupedData","groupTailAsOther","themeKey","getObjectStableKey","backgroundColor","item","i","getColor","chartColors","borderColor","value","formattedValue","i18n","getDefaultPieChartOptions","options","context","raw","total","sum","v","pct"],"mappings":";;;;;AAWO,MAAMA,IAAkB,CAC7BC,GAMAC,IAAeC,MACM;AACrB,QAAMC,IAAiBC,EAAkBH,CAAK;AAE9C,MAAI,CAACD,EAAM;AACT,WAAO;AAAA,MACL,QAAQ,CAAA;AAAA,MACR,UAAU,CAAC,EAAE,MAAM,IAAI;AAAA,IAAA;AAG3B,QAAMK,IAAcC;AAAA,IAClBN,EAAM;AAAA,IACNA,EAAM;AAAA,IACN,CAACA,EAAM,OAAO;AAAA,IACdA,EAAM;AAAA,EAAA,GAGFO,IAAWC,EAAmBP,CAAK,GAEnCQ,IAAkBJ,EAAY;AAAA,IAAI,CAACK,GAAMC,MAC7CC;AAAA,MACE,GAAGL,CAAQ;AAAA,MACX,GAAGP,EAAM,UAAU,IAAI,IAAIU,EAAKV,EAAM,UAAU,IAAI,CAAC;AAAA,MACrDC,EAAM,OAAO,oBAAoBY;AAAA,MACjCF;AAAA,IAAA;AAAA,EACF,GAGIG,IAAcT,EAAY;AAAA,IAAI,CAACK,GAAMC,MACzCC;AAAA,MACE,GAAGL,CAAQ;AAAA,MACX,GAAGP,EAAM,UAAU,IAAI,IAAIU,EAAKV,EAAM,UAAU,IAAI,CAAC;AAAA,MACrDC,EAAM,OAAO,gBAAgBY;AAAA,MAC7BF;AAAA,IAAA;AAAA,EACF;AAGF,SAAO;AAAA,IACL,QAAQN,EAAY,IAAI,CAACK,MAAS;AAChC,YAAMK,IAAQL,EAAKV,EAAM,UAAU,IAAI,GACjCgB,IAAiBb,EAAe,KAAKH,EAAM,WAAWe,CAAK;AAGjE,aAAIA,MAAUC,IACLC,EAAK,EAAEF,CAAK,IAEdC;AAAA,IACT,CAAC;AAAA,IACD,UAAU;AAAA,MACR;AAAA,QACE,MAAMX,EAAY,IAAI,CAACK,MAASA,EAAKV,EAAM,QAAQ,IAAI,CAAC;AAAA,QACxD,iBAAAS;AAAA,QACA,aAAAK;AAAA,MAAA;AAAA,IACF;AAAA,EACF;AAEJ,GASaI,IAA4B,CACvCC,GACAlB,IAAeC,MACkB;AACjC,QAAMC,IAAiBC,EAAkBH,CAAK;AAE9C,SAAO;AAAA,IACL,SAAS;AAAA,MACP,QAAQ,EAAE,SAASkB,EAAQ,YAAY,UAAUlB,EAAM,OAAO,kBAAkB,SAAA;AAAA,MAChF,YAAY;AAAA,QACV,SAASkB,EAAQ,kBAAkB,SAAS;AAAA,QAC5C,WAAW,CAACJ,MAA2BZ,EAAe,KAAKgB,EAAQ,SAASJ,CAAK;AAAA,MAAA;AAAA,MAEnF,SAAS;AAAA,QACP,SAASI,EAAQ;AAAA,QACjB,WAAW;AAAA,UACT,MAAMC,GAAS;AACb,kBAAMC,IAAMD,EAAQ,KACdE,IAAQF,EAAQ,QAAQ,KAAK;AAAA;AAAA,cAEjC,CAACG,GAAaC,MAAWD,IAAM,WAAWC,CAAC;AAAA,cAC3C;AAAA,YAAA,GAEIC,IAAM,KAAK,MAAOJ,IAAMC,IAAS,GAAG;AAC1C,mBAAO,GAAGnB,EAAe,KAAKgB,EAAQ,SAASE,CAAG,CAAC,KAAKI,CAAG;AAAA,UAC7D;AAAA,QAAA;AAAA,MACF;AAAA,IACF;AAAA,EACF;AAEJ;"}
@@ -0,0 +1,29 @@
1
+ import { Theme } from '../../../../theme/theme.types';
2
+ import { DataResponse, Dimension, Measure } from '@embeddable.com/core';
3
+ import { HeatMapPropsDimension, HeatMapPropsMeasure } from '../../../../../remarkable-ui';
4
+ type HeatMapProProps = {
5
+ columnDimension: Dimension;
6
+ columnWidth?: number;
7
+ description: string;
8
+ displayNullAs?: string;
9
+ firstColumnWidth?: number;
10
+ maxColor: string;
11
+ maxThreshold?: string;
12
+ measure: Measure;
13
+ midColor: string;
14
+ minColor: string;
15
+ minThreshold?: string;
16
+ results: DataResponse;
17
+ rowDimension: Dimension;
18
+ showValues?: boolean;
19
+ title: string;
20
+ };
21
+ export declare const getHeatMeasure: (props: {
22
+ measure: Measure;
23
+ }, theme: Theme) => HeatMapPropsMeasure<any>;
24
+ export declare const getHeatDimension: (props: {
25
+ dimension: Dimension;
26
+ }, theme: Theme) => HeatMapPropsDimension<any>;
27
+ declare const HeatMapPro: (props: HeatMapProProps) => import("react/jsx-runtime").JSX.Element;
28
+ export default HeatMapPro;
29
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/remarkable-pro/components/charts/tables/HeatMapPro/index.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,EAAE,MAAM,+BAA+B,CAAC;AAItD,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AACxE,OAAO,EAAW,qBAAqB,EAAE,mBAAmB,EAAE,MAAM,8BAA8B,CAAC;AAInG,KAAK,eAAe,GAAG;IACrB,eAAe,EAAE,SAAS,CAAC;IAC3B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,OAAO,EAAE,OAAO,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,OAAO,EAAE,YAAY,CAAC;IACtB,YAAY,EAAE,SAAS,CAAC;IACxB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,eAAO,MAAM,cAAc,GACzB,OAAO;IAAE,OAAO,EAAE,OAAO,CAAA;CAAE,EAC3B,OAAO,KAAK,KAEX,mBAAmB,CAAC,GAAG,CAUzB,CAAC;AAEF,eAAO,MAAM,gBAAgB,GAC3B,OAAO;IAAE,SAAS,EAAE,SAAS,CAAA;CAAE,EAC/B,OAAO,KAAK,KAEX,qBAAqB,CAAC,GAAG,CAQ3B,CAAC;AAEF,QAAA,MAAM,UAAU,GAAI,OAAO,eAAe,4CA6DzC,CAAC;AAEF,eAAe,UAAU,CAAC"}
@@ -42,6 +42,13 @@ export declare const subInputColor: {
42
42
  type: "string";
43
43
  category: "Component Settings";
44
44
  };
45
+ export declare const inputColor: {
46
+ name: string;
47
+ label: string;
48
+ description: string;
49
+ type: "string";
50
+ category: "Component Settings";
51
+ };
45
52
  export declare const subInputPrefix: {
46
53
  readonly name: "prefix";
47
54
  readonly type: "string";
@@ -1 +1 @@
1
- {"version":3,"file":"component.constants.d.ts","sourceRoot":"","sources":["../../../src/remarkable-pro/components/component.constants.ts"],"names":[],"mappings":"AAKA,eAAO,MAAM,cAAc;;;;;CAKjB,CAAC;AAEX,eAAO,MAAM,gBAAgB;;;;;CAKnB,CAAC;AAEX,eAAO,MAAM,aAAa;;;;;CAKhB,CAAC;AAEX,eAAO,MAAM,aAAa;;;;;CAKhB,CAAC;AAEX,eAAO,MAAM,aAAa;;;;;;CAKzB,CAAC;AAEF,eAAO,MAAM,aAAa;;;;;CAKzB,CAAC;AAEF,eAAO,MAAM,aAAa;;;;;;CAMzB,CAAC;AACF,eAAO,MAAM,cAAc;;;;;CAKjB,CAAC;AAEX,eAAO,MAAM,cAAc;;;;;CAKjB,CAAC;AAEX,eAAO,MAAM,mBAAmB;;;;CAItB,CAAC;AAEX,eAAO,MAAM,sBAAsB;;;;;CAKzB,CAAC;AAEX,eAAO,MAAM,qBAAqB;;;;CAIxB,CAAC;AAIX,eAAO,MAAM,qBAAqB,EAAE,GAK1B,CAAC;AAIX,eAAO,MAAM,qBAAqB,EAAE,GAK1B,CAAC;AAIX,eAAO,MAAM,gBAAgB,EAAE,GAMrB,CAAC;AAIX,eAAO,MAAM,6BAA6B,EAAE,GAKlC,CAAC;AAIX,eAAO,MAAM,kBAAkB,EAAE,GAMvB,CAAC;AAIX,eAAO,MAAM,mBAAmB,EAAE,GAKxB,CAAC;AAYX,eAAO,MAAM,sBAAsB,OAUlC,CAAC;AAEF,eAAO,MAAM,OAAO;;;;;;CAMV,CAAC;AAEX,eAAO,MAAM,SAAS;;;;;;;;;;CAUZ,CAAC;AAEX,eAAO,MAAM,eAAe;;;;;;;;;;CAUlB,CAAC;AAEX,eAAO,MAAM,aAAa;;;;;;;;;;;CAWhB,CAAC;AAEX,eAAO,MAAM,uBAAuB;;;;;;;;;;CAU1B,CAAC;AAEX,eAAO,MAAM,UAAU;;;;;;;;;;CAUb,CAAC;AAEX,eAAO,MAAM,kBAAkB;;;;;;;;;CASrB,CAAC;AAEX,eAAO,MAAM,qBAAqB;;;;;;;;;;;CAWxB,CAAC;AAEX,eAAO,MAAM,OAAO;;;;;;;;;;CAUV,CAAC;AAEX,eAAO,MAAM,QAAQ;;;;;;;;;;;CAWX,CAAC;AAEX,eAAO,MAAM,KAAK;;;;;CAKR,CAAC;AAEX,eAAO,MAAM,WAAW;;;;;CAKd,CAAC;AAEX,eAAO,MAAM,UAAU;;;;;;CAMb,CAAC;AAEX,eAAO,MAAM,UAAU;;;;;;CAMb,CAAC;AAEX,eAAO,MAAM,YAAY;;;;;;CAMf,CAAC;AAEX,eAAO,MAAM,eAAe;;;;;;CAMlB,CAAC;AAEX,eAAO,MAAM,eAAe;;;;;;CAMlB,CAAC;AAEX,eAAO,MAAM,oBAAoB;;;;;;CAMvB,CAAC;AAEX,eAAO,MAAM,UAAU;;;;;CAKb,CAAC;AAEX,eAAO,MAAM,UAAU;;;;;CAKb,CAAC;AAEX,eAAO,MAAM,YAAY;;;;;;CAMf,CAAC;AAEX,eAAO,MAAM,kBAAkB;;;;;;CAMrB,CAAC;AAEX,eAAO,MAAM,YAAY;;;;;;CAMf,CAAC;AAEX,eAAO,MAAM,aAAa;;;;;CAKhB,CAAC;AAEX,eAAO,MAAM,aAAa;;;;;CAKhB,CAAC;AAEX,eAAO,MAAM,aAAa;;;;;CAKhB,CAAC;AAEX,eAAO,MAAM,aAAa;;;;;CAKhB,CAAC;AAGX,eAAO,MAAM,aAAa;;;;;CAKhB,CAAC;AAEX,eAAO,MAAM,aAAa;;;;;CAKhB,CAAC;AAEX,eAAO,MAAM,YAAY;;;;;;CAMf,CAAC;AAEX,eAAO,MAAM,cAAc;;;;;;CAMjB,CAAC;AAEX,eAAO,MAAM,WAAW;;;;;CAKd,CAAC"}
1
+ {"version":3,"file":"component.constants.d.ts","sourceRoot":"","sources":["../../../src/remarkable-pro/components/component.constants.ts"],"names":[],"mappings":"AAKA,eAAO,MAAM,cAAc;;;;;CAKjB,CAAC;AAEX,eAAO,MAAM,gBAAgB;;;;;CAKnB,CAAC;AAEX,eAAO,MAAM,aAAa;;;;;CAKhB,CAAC;AAEX,eAAO,MAAM,aAAa;;;;;CAKhB,CAAC;AAEX,eAAO,MAAM,aAAa;;;;;;CAKzB,CAAC;AAEF,eAAO,MAAM,aAAa;;;;;CAKzB,CAAC;AAEF,eAAO,MAAM,aAAa;;;;;;CAMzB,CAAC;AAEF,eAAO,MAAM,UAAU;;;;;;CAMtB,CAAC;AAEF,eAAO,MAAM,cAAc;;;;;CAKjB,CAAC;AAEX,eAAO,MAAM,cAAc;;;;;CAKjB,CAAC;AAEX,eAAO,MAAM,mBAAmB;;;;CAItB,CAAC;AAEX,eAAO,MAAM,sBAAsB;;;;;CAKzB,CAAC;AAEX,eAAO,MAAM,qBAAqB;;;;CAIxB,CAAC;AAIX,eAAO,MAAM,qBAAqB,EAAE,GAK1B,CAAC;AAIX,eAAO,MAAM,qBAAqB,EAAE,GAK1B,CAAC;AAIX,eAAO,MAAM,gBAAgB,EAAE,GAMrB,CAAC;AAIX,eAAO,MAAM,6BAA6B,EAAE,GAKlC,CAAC;AAIX,eAAO,MAAM,kBAAkB,EAAE,GAMvB,CAAC;AAIX,eAAO,MAAM,mBAAmB,EAAE,GAKxB,CAAC;AAYX,eAAO,MAAM,sBAAsB,OAUlC,CAAC;AAEF,eAAO,MAAM,OAAO;;;;;;CAMV,CAAC;AAEX,eAAO,MAAM,SAAS;;;;;;;;;;CAUZ,CAAC;AAEX,eAAO,MAAM,eAAe;;;;;;;;;;CAUlB,CAAC;AAEX,eAAO,MAAM,aAAa;;;;;;;;;;;CAWhB,CAAC;AAEX,eAAO,MAAM,uBAAuB;;;;;;;;;;CAU1B,CAAC;AAEX,eAAO,MAAM,UAAU;;;;;;;;;;CAUb,CAAC;AAEX,eAAO,MAAM,kBAAkB;;;;;;;;;CASrB,CAAC;AAEX,eAAO,MAAM,qBAAqB;;;;;;;;;;;CAWxB,CAAC;AAEX,eAAO,MAAM,OAAO;;;;;;;;;;CAUV,CAAC;AAEX,eAAO,MAAM,QAAQ;;;;;;;;;;;CAWX,CAAC;AAEX,eAAO,MAAM,KAAK;;;;;CAKR,CAAC;AAEX,eAAO,MAAM,WAAW;;;;;CAKd,CAAC;AAEX,eAAO,MAAM,UAAU;;;;;;CAMb,CAAC;AAEX,eAAO,MAAM,UAAU;;;;;;CAMb,CAAC;AAEX,eAAO,MAAM,YAAY;;;;;;CAMf,CAAC;AAEX,eAAO,MAAM,eAAe;;;;;;CAMlB,CAAC;AAEX,eAAO,MAAM,eAAe;;;;;;CAMlB,CAAC;AAEX,eAAO,MAAM,oBAAoB;;;;;;CAMvB,CAAC;AAEX,eAAO,MAAM,UAAU;;;;;CAKb,CAAC;AAEX,eAAO,MAAM,UAAU;;;;;CAKb,CAAC;AAEX,eAAO,MAAM,YAAY;;;;;;CAMf,CAAC;AAEX,eAAO,MAAM,kBAAkB;;;;;;CAMrB,CAAC;AAEX,eAAO,MAAM,YAAY;;;;;;CAMf,CAAC;AAEX,eAAO,MAAM,aAAa;;;;;CAKhB,CAAC;AAEX,eAAO,MAAM,aAAa;;;;;CAKhB,CAAC;AAEX,eAAO,MAAM,aAAa;;;;;CAKhB,CAAC;AAEX,eAAO,MAAM,aAAa;;;;;CAKhB,CAAC;AAGX,eAAO,MAAM,aAAa;;;;;CAKhB,CAAC;AAEX,eAAO,MAAM,aAAa;;;;;CAKhB,CAAC;AAEX,eAAO,MAAM,YAAY;;;;;;CAMf,CAAC;AAEX,eAAO,MAAM,cAAc;;;;;;CAMjB,CAAC;AAEX,eAAO,MAAM,WAAW;;;;;CAKd,CAAC"}