@reltio/remotes 1.4.1647 → 1.4.1649
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/1039.js +1 -1
- package/1088.js +1 -1
- package/1146.js +1 -1
- package/1148.js +1 -1
- package/1334.js +1 -1
- package/1425.js +1 -1
- package/1488.js +2 -0
- package/1488.js.map +1 -0
- package/1572.js +1 -1
- package/1664.js +1 -1
- package/1707.js +1 -1
- package/1790.js +5 -5
- package/1790.js.map +1 -1
- package/1840.js +2 -0
- package/1840.js.map +1 -0
- package/1984.js +1 -1
- package/2066.js +1 -1
- package/2400.js +1 -1
- package/281.js +2 -0
- package/281.js.map +1 -0
- package/2966.js +1 -1
- package/3096.js +1 -1
- package/3348.js +1 -1
- package/3358.js +1 -1
- package/3373.js +1 -1
- package/3381.js +1 -1
- package/3383.js +1 -1
- package/3463.js +1 -1
- package/3469.js +1 -1
- package/3538.js +1 -1
- package/356.js +1 -1
- package/3854.js +1 -1
- package/3902.js +1 -1
- package/3902.js.map +1 -1
- package/3912.js +1 -1
- package/3926.js +1 -1
- package/415.js +1 -1
- package/4212.js +1 -1
- package/{829.css → 4390.css} +1 -1
- package/4390.css.map +1 -0
- package/4390.js +2 -0
- package/4390.js.map +1 -0
- package/4481.js +1 -1
- package/4609.js +1 -1
- package/4610.js +1 -1
- package/4703.js +1 -1
- package/4780.js +2 -0
- package/4780.js.map +1 -0
- package/4806.js +1 -1
- package/4838.js +1 -1
- package/50.js +1 -1
- package/5039.js +1 -1
- package/5039.js.map +1 -1
- package/5053.js +1 -1
- package/5053.js.map +1 -1
- package/5108.js +1 -1
- package/5108.js.map +1 -1
- package/5163.js +1 -1
- package/5163.js.map +1 -1
- package/5292.js +1 -1
- package/5383.js +1 -1
- package/5617.js +1 -1
- package/6020.js +1 -1
- package/6287.js +1 -1
- package/636.js +1 -1
- package/6606.js +1 -1
- package/6606.js.map +1 -1
- package/6799.js +1 -1
- package/6844.js +1 -1
- package/6860.js +3 -0
- package/6860.js.map +1 -0
- package/6903.js +1 -1
- package/7128.js +1 -1
- package/7340.js +1 -1
- package/735.js +1 -1
- package/7422.js +1 -1
- package/{7303.css → 7605.css} +1 -1
- package/{7303.css.map → 7605.css.map} +1 -1
- package/7605.js +2 -0
- package/7605.js.map +1 -0
- package/7626.js +29 -0
- package/7626.js.map +1 -0
- package/{446.js → 764.js} +2 -2
- package/764.js.map +1 -0
- package/7744.js +1 -1
- package/7744.js.map +1 -1
- package/7896.js +1 -1
- package/820.js +1 -1
- package/8207.js +1 -1
- package/8565.js +1 -1
- package/870.css +635 -0
- package/870.css.map +1 -0
- package/870.js +2 -0
- package/870.js.map +1 -0
- package/8741.js +1 -1
- package/9016.js +1 -1
- package/9050.js +1 -1
- package/9283.js +1 -1
- package/9309.js +1 -1
- package/9328.js +1 -1
- package/9387.js +1 -1
- package/9464.js +1 -1
- package/9719.js +1 -1
- package/9736.js +1 -1
- package/9861.js +1 -1
- package/987.js +1 -1
- package/99.js +29 -0
- package/99.js.map +1 -0
- package/9952.js +1 -1
- package/9960.js +1 -1
- package/main.js +1 -1
- package/main.js.map +1 -1
- package/package.json +1 -1
- package/remoteEntry.js +1 -1
- package/remoteEntry.js.map +1 -1
- package/3785.js +0 -2
- package/3785.js.map +0 -1
- package/3880.js +0 -2
- package/3880.js.map +0 -1
- package/446.js.map +0 -1
- package/672.js +0 -2
- package/672.js.map +0 -1
- package/7303.js +0 -2
- package/7303.js.map +0 -1
- package/7963.js +0 -3
- package/7963.js.map +0 -1
- package/829.css.map +0 -1
- package/829.js +0 -2
- package/829.js.map +0 -1
- package/8344.js +0 -29
- package/8344.js.map +0 -1
- package/9109.js +0 -2
- package/9109.js.map +0 -1
- package/938.js +0 -29
- package/938.js.map +0 -1
- /package/{7963.js.LICENSE.txt → 6860.js.LICENSE.txt} +0 -0
package/5108.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"5108.js","mappings":"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","sources":["webpack://@reltio/remotes/../components/src/HOCs/withDateRangeSelector/helpers.ts","webpack://@reltio/remotes/../components/src/HOCs/withDateRangeSelector/styles.ts","webpack://@reltio/remotes/../components/src/HOCs/withDateRangeSelector/withDateRangeSelector.tsx","webpack://@reltio/remotes/../components/src/components/BasicTableView/BasicTable/BasicTable.js","webpack://@reltio/remotes/../components/src/components/BasicTableView/BasicTable/HOCs/withFilterAtBottom.js","webpack://@reltio/remotes/../components/src/components/BasicTableView/BasicTable/cell-value-renderers/styles.js","webpack://@reltio/remotes/../components/src/components/BasicTableView/BasicTable/cell-value-renderers/BlobRenderer.js","webpack://@reltio/remotes/../components/src/components/BasicTableView/BasicTable/cell-value-renderers/DefaultCellValueRenderer.js","webpack://@reltio/remotes/../components/src/components/BasicTableView/BasicTable/contexts/RowCollapseContext.js","webpack://@reltio/remotes/../components/src/components/BasicTableView/BasicTable/contexts/TableContext.js","webpack://@reltio/remotes/../components/src/components/BasicTableView/ColumnFilter/FilterChip/styles.js","webpack://@reltio/remotes/../components/src/components/BasicTableView/ColumnFilter/FilterChip/FilterChip.tsx","webpack://@reltio/remotes/../components/src/components/editors/FilterEditor/styles.ts","webpack://@reltio/remotes/../components/src/components/editors/FilterEditor/FilterEditor.js","webpack://@reltio/remotes/../components/src/components/BasicTableView/ColumnFilter/ColumnFilter.js","webpack://@reltio/remotes/../components/src/components/BasicTableView/BasicTable/HOCs/withFilter.js","webpack://@reltio/remotes/../components/src/components/BasicTableView/BasicTable/helpers/nestedHelpers.js","webpack://@reltio/remotes/../components/src/components/BasicTableView/BasicTable/helpers/dataHelpers.js","webpack://@reltio/remotes/../components/src/components/BasicTableView/BasicTable/helpers/defaultGetRowCellHeight.js","webpack://@reltio/remotes/../components/src/components/BasicTableView/BasicTable/helpers/defaultRenderRowCell.js","webpack://@reltio/remotes/../components/src/components/BasicTableView/BasicTable/hooks/useCollapsibleTableRows.ts","webpack://@reltio/remotes/../components/src/components/BasicTableView/ColumnFilter/helpers.ts","webpack://@reltio/remotes/../components/src/components/BasicTableView/ColumnFilter/styles.js","webpack://@reltio/remotes/../components/src/components/DateRangePicker/styles.ts","webpack://@reltio/remotes/../components/src/components/DateRangePicker/DateRangePicker.tsx","webpack://@reltio/remotes/../components/src/components/commonReactSelectComponents/DropdownIndicatorWithIconButton.js","webpack://@reltio/remotes/../components/src/components/editors/DateRangeEditor/styles.ts","webpack://@reltio/remotes/../components/src/components/editors/DateRangeEditor/DateRangeEditor.tsx","webpack://@reltio/remotes/../components/src/components/editors/RangeDataTypeValueEditor/styles.js","webpack://@reltio/remotes/../components/src/components/editors/RangeDataTypeValueEditor/RangeDataTypeValueEditor.js","webpack://@reltio/remotes/../components/src/components/editors/FilterEditor/FilterValueEditor.js","webpack://@reltio/remotes/../components/src/hooks/usePrevious.ts"],"sourcesContent":["import {always, cond, defaultTo, is, isNil, map, pipe, propEq} from 'ramda';\nimport {DataTypeDefinition, DatePeriod, formatDataTypeValue, getDateRangeByValue, isEmptyValue} from '@reltio/mdm-sdk';\n\nexport type Option = {\n value: string;\n label: string;\n};\n\nconst formatValue = (value: Date, dataTypeDefinition: DataTypeDefinition, dateTimeMask: string) =>\n isNil(value) ? `${dateTimeMask}` : `${formatDataTypeValue({dataTypeDefinition, dateTimeMask}, value)}`;\n\nconst getEditorLabel = (\n placeholder: string,\n dataTypeDefinition: DataTypeDefinition,\n value: DatePeriod | string,\n options: Option[]\n) =>\n cond([\n [isEmptyValue, always('')],\n [\n is(Array),\n (value) => value.map((value) => formatValue(value, dataTypeDefinition, placeholder)).join(' \\u2014 ')\n ],\n [is(String), (value) => options.find(propEq('value', value))?.label]\n ])(value);\n\nconst convertValuesToDate = pipe(\n getDateRangeByValue,\n defaultTo([]),\n map((value) => value && new Date(value))\n);\n\nexport {getEditorLabel, convertValuesToDate};\n","import {makeStyles} from '@mui/styles';\n\nexport const useStyles = makeStyles((theme) => ({\n paper: {\n minWidth: '112px'\n },\n menuItem: {\n minHeight: '32px'\n },\n menuText: {\n color: theme.palette.text.primary,\n fontSize: '13px',\n lineHeight: '15px',\n letterSpacing: 0\n }\n}));\n","import React, {ComponentType, useMemo, useRef, useState, useCallback} from 'react';\nimport moment from 'moment';\nimport {identity, prop} from 'ramda';\nimport {\n DataTypeDefinition,\n DataTypes,\n AllDateRangeValues,\n getRangeOptionLabel,\n getLocaleFormat,\n DatePeriod\n} from '@reltio/mdm-sdk';\nimport MenuItem from '@mui/material/MenuItem';\nimport Popover from '@mui/material/Popover';\nimport Typography from '@mui/material/Typography';\nimport Menu, {MenuProps as MuiMaterialProps} from '@mui/material/Menu';\nimport DateRangePicker from '../../components/DateRangePicker/DateRangePicker';\nimport {convertValuesToDate, getEditorLabel, Option} from './helpers';\n\nimport {useStyles} from './styles';\n\ntype DateRangeMenuProps = {\n values?: DatePeriod | string;\n options?: Option[];\n dataTypeDefinition?: DataTypeDefinition;\n getValuesDateRange?: (value: DatePeriod | string) => [Date, Date];\n onChange?: (value: DatePeriod | string) => void;\n DateRangePickerProps?: Partial<React.ComponentProps<typeof DateRangePicker>>;\n MenuProps?: Partial<MuiMaterialProps>;\n};\n\nconst dateFormat = moment.localeData().longDateFormat('L');\n\nconst withDateRangeSelector = <T extends DateRangeMenuProps>(Component: ComponentType<T>) => {\n const WithDateRangeSelector = (props: T & DateRangeMenuProps) => {\n const {\n values,\n options,\n getValuesDateRange = convertValuesToDate,\n onChange,\n dataTypeDefinition = {type: DataTypes.TYPE_DATE},\n DateRangePickerProps,\n MenuProps,\n ...componentProps\n } = props;\n const rangeOptions = useMemo(\n () =>\n options ||\n Object.values(AllDateRangeValues).map((option) => ({\n value: option,\n label: getRangeOptionLabel(option)\n })),\n [options]\n );\n\n const inputRef = useRef(null);\n const [isPickingDate, setIsPickingDate] = useState(false);\n const [open, setOpen] = useState(false);\n const styles = useStyles();\n\n const onItemClick = (value) => {\n if (value === AllDateRangeValues.PICK_DATE) {\n setIsPickingDate(true);\n } else {\n setOpen(false);\n setIsPickingDate(false);\n onChange(value);\n }\n };\n\n const handleToggle = useCallback(() => setOpen((open) => !open), []);\n\n const onCancel = () => {\n setIsPickingDate(false);\n setOpen(false);\n };\n\n const isTimestamp = dataTypeDefinition.type === DataTypes.TYPE_TIMESTAMP;\n const enhancePlaceHolder = isTimestamp ? (timeFormat) => timeFormat.replace(/^[hH]:/, 'HH:') : identity;\n const format = isTimestamp ? getLocaleFormat() : dateFormat;\n const editorPlaceholder = `${enhancePlaceHolder(format)} \\u2014 ${enhancePlaceHolder(format)}`.toUpperCase();\n\n const editorLabel = isPickingDate\n ? getRangeOptionLabel(AllDateRangeValues.PICK_DATE)\n : getEditorLabel(format, dataTypeDefinition, values, rangeOptions);\n\n const {\n anchorOrigin = {vertical: 'bottom', horizontal: 'left'},\n transformOrigin = {vertical: 'top', horizontal: 'left'}\n } = MenuProps || {};\n\n return (\n <>\n <Component\n {...(componentProps as T)}\n ref={inputRef}\n editorLabel={editorLabel}\n editorPlaceholder={editorPlaceholder}\n onMenuToggle={handleToggle}\n isMenuOpen={open}\n isPickingDate={isPickingDate}\n />\n {isPickingDate ? (\n <Popover\n open={open}\n anchorEl={inputRef.current}\n onClose={onCancel}\n transformOrigin={transformOrigin}\n anchorOrigin={anchorOrigin}\n elevation={2}\n {...MenuProps}\n >\n <DateRangePicker\n values={getValuesDateRange(values)}\n onApply={onItemClick}\n type={dataTypeDefinition.type}\n {...DateRangePickerProps}\n />\n </Popover>\n ) : (\n <Menu\n variant=\"menu\"\n open={open}\n autoFocus={false}\n classes={{paper: styles.paper}}\n anchorEl={inputRef.current}\n onClose={onCancel}\n anchorOrigin={anchorOrigin}\n transformOrigin={transformOrigin}\n elevation={2}\n MenuListProps={{\n autoFocusItem: open,\n style: {\n width: prop('clientWidth', inputRef.current)\n }\n }}\n {...MenuProps}\n >\n {rangeOptions.map((option) => (\n <MenuItem\n key={option.value}\n value={option.value}\n onClick={() => onItemClick(option.value)}\n className={styles.menuItem}\n >\n <Typography classes={{root: styles.menuText}}>{option.label}</Typography>\n </MenuItem>\n ))}\n </Menu>\n )}\n </>\n );\n };\n\n WithDateRangeSelector.displayName = 'WithDateRangeSelector';\n return WithDateRangeSelector;\n};\n\nexport default withDateRangeSelector;\n","import React, {useMemo, forwardRef, useCallback} from 'react';\nimport PropTypes from 'prop-types';\n\nimport Table from 'react-components/dist/Table/Table';\nimport defaultGetRowCellHeight from './helpers/defaultGetRowCellHeight';\nimport defaultRenderRowCell from './helpers/defaultRenderRowCell';\nimport {COLUMN_FILTER_HEIGHT} from '../ColumnFilter/styles';\nimport {ColumnDataType, ColumnFilterType, SortingType} from '../../../constants/prop-types';\nimport {getTableHeadData} from './helpers/dataHelpers';\nimport {TableContext} from './contexts/TableContext';\nimport {RowCollapseContext} from './contexts/RowCollapseContext';\nimport {prop} from 'ramda';\nimport useCollapsibleTableRows from './hooks/useCollapsibleTableRows';\n\nconst BasicTable = forwardRef(\n (\n {\n columnsData,\n rowsData,\n context,\n sorting,\n onSort,\n renderRowCell = defaultRenderRowCell,\n getRowCellHeight = defaultGetRowCellHeight,\n filters,\n onFilter,\n headRowHeight,\n maxRowValuesCount = Infinity,\n autosizing,\n maxHeight,\n getIdFromRowValue,\n ...otherProps\n },\n ref\n ) => {\n const tableHeadData = useMemo(\n () => getTableHeadData(columnsData, filters, onFilter),\n [columnsData, filters, onFilter]\n );\n\n const {tableRowsData, collapseContextValue} = useCollapsibleTableRows({\n rowsData,\n columnsData,\n renderRowCell,\n getRowCellHeight,\n maxRowValuesCount,\n getIdFromRowValue\n });\n\n const {toggleRowCollapse, getIsRowCollapsed} = collapseContextValue;\n\n const onStartDragRow = useCallback(() => {\n setTimeout(() => {\n tableRowsData.forEach((_, index) => {\n if (!getIsRowCollapsed(index)) {\n toggleRowCollapse(index);\n }\n });\n }, 0);\n }, [getIsRowCollapsed, toggleRowCollapse, tableRowsData]);\n\n if (!tableHeadData.length) {\n return null;\n }\n\n return (\n <RowCollapseContext.Provider value={collapseContextValue}>\n <TableContext.Provider value={context}>\n <Table\n autosizing={autosizing}\n maxHeight={maxHeight}\n defaultRowHeight={48}\n onStartDragRow={onStartDragRow}\n {...otherProps}\n fixHead={tableRowsData.length > 0}\n headData={tableHeadData}\n rowsData={tableRowsData}\n sortField={prop('field', sorting)}\n sortOrder={prop('order', sorting)}\n onSort={onSort}\n headRowHeight={filters ? headRowHeight + COLUMN_FILTER_HEIGHT : headRowHeight}\n ref={ref}\n />\n </TableContext.Provider>\n </RowCollapseContext.Provider>\n );\n }\n);\n\nexport const BasicTableType = {\n columnsData: PropTypes.arrayOf(ColumnDataType).isRequired,\n rowsData: PropTypes.arrayOf(PropTypes.object).isRequired,\n context: PropTypes.object,\n sorting: SortingType,\n onSort: PropTypes.func,\n filters: PropTypes.objectOf(ColumnFilterType),\n onFilter: PropTypes.func,\n renderRowCell: PropTypes.func,\n getRowCellHeight: PropTypes.func,\n headRowHeight: PropTypes.number,\n maxRowValuesCount: PropTypes.number,\n defaultColumnWidth: PropTypes.number,\n defaultColumnMinWidth: PropTypes.number,\n classes: PropTypes.shape({\n highlightRow: PropTypes.string,\n cellBorder: PropTypes.string,\n dragColumnBody: PropTypes.string,\n dragColumnHead: PropTypes.string,\n draggableHeadCell: PropTypes.string,\n cellWrapper: PropTypes.string,\n cellContentWrapper: PropTypes.string,\n hoveredRowRightContentContainer: PropTypes.string,\n hoveredRowRightContentWrapper: PropTypes.string\n })\n};\n\nBasicTable.propTypes = BasicTableType;\n\nBasicTable.displayName = 'BasicTable';\n\nexport default BasicTable;\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nconst withFilterAtBottom = (HeadCellRenderer) => {\n const HeadCellRendererWithFilterAtBottom = ({columnFilter, ...otherProps}) => {\n return (\n <div style={{display: 'flex', flexDirection: 'column', height: '100%'}}>\n <div style={{display: 'flex', flex: 1}}>\n <HeadCellRenderer {...otherProps} />\n </div>\n {columnFilter}\n </div>\n );\n };\n HeadCellRendererWithFilterAtBottom.propTypes = {\n columnFilter: PropTypes.node\n };\n\n return HeadCellRendererWithFilterAtBottom;\n};\n\nexport default withFilterAtBottom;\n","import {makeStyles} from '@mui/styles';\n\nexport const BLOB_HEIGHT = 100;\n\nexport const useStyles = makeStyles({\n defaultWrapper: {\n whiteSpace: 'nowrap',\n overflow: 'hidden',\n textOverflow: 'ellipsis',\n padding: '15px 25px 0 25px'\n },\n blobWrapper: {\n position: 'relative',\n overflowY: 'auto',\n overflowX: 'hidden',\n whiteSpace: 'pre',\n maxHeight: `${BLOB_HEIGHT}px`,\n boxSizing: 'border-box',\n padding: '15px 25px 0 25px'\n }\n});\n","import PropTypes from 'prop-types';\nimport React from 'react';\nimport {useStyles} from './styles';\n\nconst stopPropagation = (event) => {\n event.stopPropagation();\n};\n\nconst BlobRenderer = ({value}) => {\n const styles = useStyles();\n return (\n <div className={styles.blobWrapper} onScroll={stopPropagation}>\n {value}\n </div>\n );\n};\n\nBlobRenderer.propTypes = {\n value: PropTypes.node\n};\n\nexport default BlobRenderer;\n","import BlobRenderer from './BlobRenderer';\nimport DataTypeValue from '../../../DataTypeValue/DataTypeValue';\nimport PropTypes from 'prop-types';\nimport React from 'react';\nimport {DataTypes} from '@reltio/mdm-sdk';\nimport {useStyles} from './styles';\nimport ExpandedValueTooltip from '../../../ExpandedValueTooltip/ExpandedValueTooltip';\n\nconst DefaultCellValueRenderer = (props) => {\n const styles = useStyles();\n const {\n value,\n columnData: {dataTypeDefinition}\n } = props;\n switch (dataTypeDefinition.type) {\n case DataTypes.TYPE_BLOB:\n return <BlobRenderer {...props} />;\n default: {\n const dataTypeValue = <DataTypeValue value={value} dataTypeDefinition={dataTypeDefinition} />;\n return (\n <ExpandedValueTooltip value={dataTypeValue}>\n <div className={styles.defaultWrapper}>{dataTypeValue}</div>\n </ExpandedValueTooltip>\n );\n }\n }\n};\n\nDefaultCellValueRenderer.propTypes = {\n value: PropTypes.any,\n columnData: PropTypes.shape({\n dataTypeDefinition: PropTypes.object\n })\n};\n\nexport default DefaultCellValueRenderer;\n","import React from 'react';\n\nexport const RowCollapseContext = React.createContext(null);\n\nRowCollapseContext.displayName = 'RowCollapseContext';\n","import React from 'react';\n\nexport const TableContext = React.createContext(null);\n\nTableContext.displayName = 'TableContext';\n","import {makeStyles} from '@mui/styles';\n\nexport const COLUMN_FILTER_HEIGHT = 40;\n\nexport const useStyles = makeStyles({\n 'filter-chip': {\n flex: 1,\n maxWidth: '100%',\n overflow: 'hidden',\n justifyContent: 'flex-start',\n marginRight: '-8px',\n '&, &:focus': {\n backgroundColor: 'rgba(0,0,0,0)'\n }\n },\n 'filter-chip__label': {\n color: 'rgba(0,0,0,0.87)',\n flex: 1,\n overflow: 'hidden',\n whiteSpace: 'nowrap',\n textOverflow: 'ellipsis'\n },\n 'filter-chip__option-label': {\n color: 'rgba(0,0,0,0.54)'\n }\n});\n","import Chip from '@mui/material/Chip';\nimport React from 'react';\nimport {\n checkIfOptionHasValues,\n DataTypeDefinition,\n formatDataTypeValue,\n getFilterValueLabel,\n mapFilterValue,\n PrimitiveValue,\n SimpleAttributeValue\n} from '@reltio/mdm-sdk';\nimport ExpandedValueTooltip from '../../../ExpandedValueTooltip/ExpandedValueTooltip';\nimport {useMdmAttributePresentations, useMdmDateMask, useMdmDateTimeMask} from '../../../../contexts';\nimport {useStyles} from './styles';\n\ntype FilterValue = SimpleAttributeValue | PrimitiveValue;\n\ntype Props = {\n filterOption: {\n value: string;\n label: string;\n };\n filterValue: FilterValue | FilterValue[];\n onDelete: () => void;\n dataTypeDefinition: DataTypeDefinition;\n};\n\nconst FilterChip = ({filterOption, filterValue, onDelete, dataTypeDefinition}: Props) => {\n const styles = useStyles();\n\n const attributePresentations = useMdmAttributePresentations();\n const dateMask = useMdmDateMask();\n const dateTimeMask = useMdmDateTimeMask();\n\n const canFilterAcceptValues = checkIfOptionHasValues(filterOption.value);\n const optionLabel = filterOption.label + (canFilterAcceptValues ? ': ' : '');\n const formatValue = formatDataTypeValue({attributePresentations, dataTypeDefinition, dateMask, dateTimeMask});\n const convertedValue = mapFilterValue(formatValue, filterValue);\n const filterLabel = canFilterAcceptValues ? getFilterValueLabel(filterOption.value, convertedValue) : '';\n\n return (\n <Chip\n label={\n <ExpandedValueTooltip value={optionLabel + filterLabel}>\n <div className={styles['filter-chip__label']}>\n <span className={styles['filter-chip__option-label']}>{optionLabel}</span>\n {filterLabel}\n </div>\n </ExpandedValueTooltip>\n }\n classes={{\n root: styles['filter-chip'],\n label: styles['filter-chip__label']\n }}\n onDelete={onDelete}\n />\n );\n};\n\nexport default FilterChip;\n","import {makeStyles} from '@mui/styles';\n\nexport const useStyles = makeStyles({\n dropDownEditor: {\n marginTop: '8px',\n marginBottom: '4px'\n },\n selectorRoot: {\n paddingTop: '11.5px',\n paddingBottom: '12.5px',\n lineHeight: '16px'\n }\n});\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport classnames from 'classnames';\nimport {__, assoc, pipe} from 'ramda';\nimport {checkIfOptionHasValues, FilterType} from '@reltio/mdm-sdk';\nimport DropDownEditor from '../DropDownEditor/DropDownEditor';\nimport FilterValueEditor from './FilterValueEditor';\nimport {commonTextFieldProps, useSelectStyles} from '../constants';\nimport {useStyles} from './styles';\n\nconst FilterEditor = ({value, onChange, filterOptions, dataTypeDefinition, classes, valueEditorProps}) => {\n const selectStyles = useSelectStyles();\n const styles = useStyles();\n const [firstOption] = filterOptions;\n const filterOption = value.filter || firstOption.value;\n const filter = {...value, filter: filterOption};\n const canFilterAcceptValues = checkIfOptionHasValues(filterOption);\n return (\n <>\n <DropDownEditor\n TextFieldProps={commonTextFieldProps}\n className={classnames(classes.option, styles.dropDownEditor)}\n value={filterOption}\n entries={filterOptions}\n onChange={pipe(assoc('filter', __, filter), assoc('values', []), onChange)}\n classes={{root: classnames(selectStyles.root, styles.selectorRoot), icon: selectStyles.icon}}\n />\n {canFilterAcceptValues && (\n <FilterValueEditor\n filter={filter}\n onChange={pipe(assoc('values', __, filter), onChange)}\n dataTypeDefinition={dataTypeDefinition}\n {...valueEditorProps}\n />\n )}\n </>\n );\n};\n\nFilterEditor.propTypes = {\n value: FilterType,\n onChange: PropTypes.func,\n filterOptions: PropTypes.arrayOf(\n PropTypes.shape({\n value: PropTypes.string,\n label: PropTypes.string\n })\n ),\n dataTypeDefinition: PropTypes.object,\n classes: PropTypes.object,\n valueEditorProps: PropTypes.object\n};\n\nexport default FilterEditor;\n","import ArrowDropDownIcon from '@mui/icons-material/ArrowDropDown';\nimport FilterChip from './FilterChip/FilterChip';\nimport FilterEditor from '../../editors/FilterEditor/FilterEditor';\nimport IconButton from '@mui/material/IconButton';\nimport Popover from '@mui/material/Popover';\nimport PropTypes from 'prop-types';\nimport React, {useRef, useState} from 'react';\nimport {ColumnFilterType} from '../../../constants';\nimport {defaultTo, pipe, pluck, prop, propEq} from 'ramda';\nimport {useStyles} from './styles';\nimport {\n getDataTypeDefinitionForFilterValue,\n getFilterOptionLabel,\n getFilterOptionsForDataTypeDefinition,\n Maybe,\n validateFilter\n} from '@reltio/mdm-sdk';\nimport {columnFilterToMdmFilter, mdmFilterToColumnFilter} from './helpers';\n\nconst ColumnFilter = ({columnId, dataTypeDefinition, filter, filterOptionsData, onFilter}) => {\n const styles = useStyles();\n\n const [anchorEl, setAnchorEl] = useState(null);\n const openFilterPopup = (event) => setAnchorEl(event.currentTarget);\n const closeFilterPopup = () => setAnchorEl(null);\n\n const [columnFilter, setColumnFilter] = useState(filter);\n const initColumnFilter = () => setColumnFilter(filter);\n\n const containerRef = useRef(null);\n const mdmFilter = columnFilterToMdmFilter({id: columnId, dataTypeDefinition}, columnFilter);\n const applyFilterChange = (newFilter) => {\n if (newFilter !== filter) {\n onFilter({columnId, filter: newFilter});\n }\n };\n const clearFilter = () => applyFilterChange();\n const applyChangesAndClose = () => {\n const isValidFilter = validateFilter(mdmFilter);\n isValidFilter ? applyFilterChange(columnFilter) : clearFilter();\n closeFilterPopup();\n };\n\n const handleValueEditorKeyPress = (event) => {\n if (event.key !== 'Enter') return;\n\n event.stopPropagation();\n event.preventDefault();\n applyChangesAndClose();\n };\n\n const getFilterOptionData = (filterOption) =>\n filterOptionsData && filterOptionsData.find(propEq('value', filterOption));\n\n const getFilterLabel = (filterOption) =>\n pipe(getFilterOptionData, prop('label'), defaultTo(getFilterOptionLabel(filterOption)))(filterOption);\n\n const getFilterDataTypeDefinition = (filterOption) =>\n pipe(\n getFilterOptionData,\n prop('dataTypeDefinition'),\n defaultTo(getDataTypeDefinitionForFilterValue(dataTypeDefinition, filterOption))\n )(filterOption);\n\n const filterOptions = Maybe.fromNull(filterOptionsData)\n .map(pluck('value'))\n .orSome(getFilterOptionsForDataTypeDefinition(dataTypeDefinition))\n .map((value) => ({\n value,\n label: getFilterLabel(value)\n }));\n\n return (\n <div ref={containerRef} className={styles.columnFilter}>\n {filter && (\n <FilterChip\n filterValue={filter.value}\n filterOption={filterOptions.find(propEq('value', filter.filter))}\n onDelete={clearFilter}\n dataTypeDefinition={getFilterDataTypeDefinition(filter.filter)}\n />\n )}\n <IconButton className={styles.dropDownButton} onClick={openFilterPopup} disableFocusRipple size=\"large\">\n <ArrowDropDownIcon />\n </IconButton>\n <Popover\n PaperProps={{\n style: {\n width: `${containerRef.current ? containerRef.current.getBoundingClientRect().width : 0}px`\n }\n }}\n open={!!anchorEl}\n anchorEl={anchorEl}\n anchorOrigin={{\n vertical: 'bottom',\n horizontal: 'right'\n }}\n transformOrigin={{\n vertical: 'top',\n horizontal: 'right'\n }}\n classes={{paper: styles.filterMenu}}\n onClose={applyChangesAndClose}\n TransitionProps={{\n onEnter: initColumnFilter\n }}\n >\n <FilterEditor\n classes={{option: styles['filter-editor__option']}}\n value={mdmFilter}\n onChange={pipe(mdmFilterToColumnFilter, setColumnFilter)}\n filterOptions={filterOptions}\n dataTypeDefinition={getFilterDataTypeDefinition(mdmFilter.filter)}\n valueEditorProps={{\n TextFieldProps: {\n onKeyPress: handleValueEditorKeyPress\n },\n fullWidth: true\n }}\n />\n </Popover>\n </div>\n );\n};\n\nColumnFilter.propTypes = {\n columnId: PropTypes.string,\n dataTypeDefinition: PropTypes.object,\n filter: ColumnFilterType,\n onFilter: PropTypes.func,\n filterOptionsData: PropTypes.arrayOf(\n PropTypes.shape({\n value: PropTypes.string,\n label: PropTypes.string,\n dataTypeDefinition: PropTypes.object\n })\n )\n};\n\nexport default ColumnFilter;\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nimport ColumnFilter from '../../ColumnFilter/ColumnFilter';\nimport {useStyles as useColumnFilterStyles} from '../../ColumnFilter/styles';\n\nconst withFilter = ({filter, onFilter, filterable, filterOptions, dataTypeDefinition}) => (HeadCellRenderer) => {\n const HeadCellRendererWithFilter = (props) => {\n const {\n headCellData: {id: columnId}\n } = props;\n const styles = useColumnFilterStyles();\n const columnFilter = filterable ? (\n <ColumnFilter\n columnId={columnId}\n dataTypeDefinition={dataTypeDefinition}\n filter={filter}\n filterOptionsData={filterOptions}\n onFilter={onFilter}\n />\n ) : (\n <div className={styles.columnFilter} />\n );\n return <HeadCellRenderer {...props} columnFilter={columnFilter} />;\n };\n HeadCellRendererWithFilter.propTypes = {\n headCellData: PropTypes.shape({\n id: PropTypes.string\n })\n };\n return HeadCellRendererWithFilter;\n};\n\nexport default withFilter;\n","import {\n __,\n addIndex,\n always,\n assoc,\n chain,\n curry,\n dropLast,\n groupBy,\n join,\n keys,\n length,\n omit,\n pickBy,\n pipe,\n propOr,\n reduce,\n split,\n sortBy,\n identity,\n sum,\n toPairs,\n unless,\n unnest,\n values,\n zip\n} from 'ramda';\n\nconst TOTAL_ROW_SPAN_KEY = 'total';\nconst NESTED_KEY_DELIMITER = '.';\n\nconst getSiblingSubRowsKeyBySubRowKey = pipe(split(NESTED_KEY_DELIMITER), dropLast(1), join(NESTED_KEY_DELIMITER));\n\nconst getParentRowKeyBySiblingsSubRowsKey = pipe(\n split(NESTED_KEY_DELIMITER),\n dropLast(1),\n join(NESTED_KEY_DELIMITER),\n unless(length, always(TOTAL_ROW_SPAN_KEY))\n);\n\nconst getParentRowKeyBySubRowKey = pipe(getSiblingSubRowsKeyBySubRowKey, getParentRowKeyBySiblingsSubRowsKey);\n\nconst countParentSpanByAllSubRows = (rowSpanData, siblingSubRowsKey) =>\n pipe(\n pickBy((_val, key) => getSiblingSubRowsKeyBySubRowKey(key) === siblingSubRowsKey),\n values,\n sum\n )(rowSpanData);\n\nconst calcParentRowSpan = (rowSpanData, subRowKey) => {\n const parentKey = getParentRowKeyBySubRowKey(subRowKey);\n const currentParentSpan = propOr(0, parentKey, rowSpanData);\n const actualParentSpan = countParentSpanByAllSubRows(rowSpanData, getSiblingSubRowsKeyBySubRowKey(subRowKey));\n\n if (actualParentSpan > currentParentSpan) {\n const nextRowSpanData = assoc(parentKey, actualParentSpan, rowSpanData);\n return parentKey === TOTAL_ROW_SPAN_KEY ? nextRowSpanData : calcParentRowSpan(nextRowSpanData, parentKey);\n } else {\n return rowSpanData;\n }\n};\n\nconst addNestedKey = (rowSpanData, nestedKey) => calcParentRowSpan({...rowSpanData, [nestedKey]: 1}, nestedKey);\n\nconst validateParentRowSpan = (rowSpanData, [siblingSubRowsKey, subRowsKeys]) => {\n const parentKey = getParentRowKeyBySiblingsSubRowsKey(siblingSubRowsKey);\n const currentParentSpan = propOr(0, parentKey, rowSpanData);\n const actualParentSpan = countParentSpanByAllSubRows(rowSpanData, siblingSubRowsKey);\n const spanDiff = currentParentSpan - actualParentSpan;\n\n if (spanDiff > 0) {\n const lowestSubRowKey = `${siblingSubRowsKey}${NESTED_KEY_DELIMITER}${subRowsKeys.length - 1}`;\n const lowestSubRowSpan = rowSpanData[lowestSubRowKey];\n return assoc(lowestSubRowKey, lowestSubRowSpan + spanDiff, rowSpanData);\n } else {\n return rowSpanData;\n }\n};\n\nconst validateRowSpanData = (rowSpanData) =>\n pipe(\n omit([TOTAL_ROW_SPAN_KEY]),\n keys,\n sortBy(identity),\n groupBy(getSiblingSubRowsKeyBySubRowKey),\n toPairs,\n reduce(validateParentRowSpan, rowSpanData)\n )(rowSpanData);\n\nconst calcRowSpansForNestedKeys = pipe(reduce(addNestedKey, {}), validateRowSpanData);\n\nconst chainWithIndex = addIndex(chain);\nconst flattenNestedColumnValues = (values, indexPath = []) => {\n const [head] = values;\n return Array.isArray(head)\n ? chainWithIndex((value, index) => flattenNestedColumnValues(value, [...indexPath, index]), values)\n : {indexPath, values};\n};\n\nconst getNestedKeyForNestedColumnCell = curry((columnNestedPath, cell) =>\n pipe(zip(__, cell.indexPath), unnest, join(NESTED_KEY_DELIMITER))(columnNestedPath)\n);\n\nexport {\n calcRowSpansForNestedKeys,\n validateRowSpanData,\n TOTAL_ROW_SPAN_KEY,\n flattenNestedColumnValues,\n getSiblingSubRowsKeyBySubRowKey,\n getParentRowKeyBySiblingsSubRowsKey,\n getNestedKeyForNestedColumnCell\n};\n","import DefaultCellValueRenderer from '../cell-value-renderers/DefaultCellValueRenderer';\nimport withFilter from '../HOCs/withFilter';\nimport {\n calcRowSpansForNestedKeys,\n flattenNestedColumnValues,\n getNestedKeyForNestedColumnCell,\n TOTAL_ROW_SPAN_KEY\n} from './nestedHelpers';\nimport {\n add,\n always,\n assoc,\n chain,\n evolve,\n isEmpty,\n isNil,\n map,\n mapObjIndexed,\n max,\n pipe,\n pluck,\n prop,\n propEq,\n propOr,\n reduce,\n reject,\n slice,\n uniq,\n unless,\n values\n} from 'ramda';\nimport {wrapInArrayIfNeeded} from '@reltio/mdm-sdk';\nimport DefaultHeadCellRenderer from 'react-components/dist/Table/DefaultHeadCellRenderer/DefaultHeadCellRenderer';\nimport withFilterAtBottom from '../HOCs/withFilterAtBottom';\n\nconst applyCellRendererToColumnCells = (columnsData, renderRowCell, rowIndex, rowValue) => (cells, columnId) => {\n const columnIndex = columnsData.findIndex(propEq('id', columnId));\n const columnData = columnsData[columnIndex];\n const {rowCellValueRenderer: CellValueRenderer = DefaultCellValueRenderer} = columnsData[columnIndex];\n return cells.map((cell, cellIndex) => ({\n ...cell,\n values: renderRowCell({\n columnIndex,\n columnData,\n rowIndex,\n rowValue,\n cellIndex,\n cell,\n CellValueRenderer\n })\n }));\n};\n\nconst applyCellRenderer = pipe(applyCellRendererToColumnCells, mapObjIndexed);\n\nconst calcHeightForColumnCells = (columnsData, getRowCellHeight, rowIndex, rowValue) => (cells, columnId) => {\n const columnIndex = columnsData.findIndex(propEq('id', columnId));\n const columnData = columnsData[columnIndex];\n return cells.map((cell, cellIndex) => ({\n ...cell,\n height: getRowCellHeight({columnIndex, columnData, rowIndex, rowValue, cellIndex, cell})\n }));\n};\n\nconst calcHeights = (columnsData, getRowCellHeight, rowIndex, rowValue) => (rowData) =>\n getRowCellHeight\n ? mapObjIndexed(calcHeightForColumnCells(columnsData, getRowCellHeight, rowIndex, rowValue), rowData)\n : rowData;\n\nconst addRowSpansToColumnCells = (rowSpansData) =>\n map((cell) => ({...cell, rowSpan: rowSpansData[cell.nestedKey || TOTAL_ROW_SPAN_KEY]}));\n\nconst getNestedKeysFromRowCells = pipe(chain(pluck('nestedKey')), reject(isNil), uniq);\n\nconst calcRowSpansData = pipe(values, getNestedKeysFromRowCells, calcRowSpansForNestedKeys);\n\nconst calcRowSpans = (rowData) => {\n const rowSpansData = calcRowSpansData(rowData);\n return isEmpty(rowSpansData) ? rowData : map(addRowSpansToColumnCells(rowSpansData), rowData);\n};\n\nconst calcNestedKeys = (columnNestedPath) =>\n map((cell) => ({\n ...cell,\n nestedKey: getNestedKeyForNestedColumnCell(columnNestedPath, cell)\n }));\n\nconst parseNestedColumnValues = (columnNestedPath, nestedValues) =>\n pipe(flattenNestedColumnValues, calcNestedKeys(columnNestedPath))(nestedValues);\n\nconst getCellValues = (columnNestedPath, columnValues) =>\n columnNestedPath && !isEmpty(columnValues)\n ? parseNestedColumnValues(columnNestedPath, columnValues)\n : [{values: wrapInArrayIfNeeded(columnValues)}];\n\nconst buildRowValues = (rowValue) =>\n reduce((acc, {id, nestedPath}) => assoc(id, getCellValues(nestedPath, rowValue[id]), acc), {});\n\nconst applyValuesCountConstraint = (maxValuesCount) =>\n unless(\n () => maxValuesCount === Infinity,\n map(\n pipe(\n reject(({indexPath}) => indexPath && indexPath.some((index) => index > maxValuesCount - 1)),\n map(\n evolve({\n values: slice(0, maxValuesCount)\n })\n )\n )\n )\n );\n\nconst defaultGetIdFromRowValue = (_, rowIndex) => rowIndex;\n\nconst getTableRowsData = (\n rowValues,\n columnsData,\n renderRowCell,\n getRowCellHeight,\n getRowMaxValuesCount = always(Infinity),\n getIdFromRowValue = defaultGetIdFromRowValue\n) =>\n rowValues.map((rowValue, rowIndex) =>\n pipe(\n buildRowValues(rowValue),\n applyValuesCountConstraint(getRowMaxValuesCount(rowIndex)),\n calcRowSpans,\n calcHeights(columnsData, getRowCellHeight, rowIndex, rowValue),\n applyCellRenderer(columnsData, renderRowCell, rowIndex, rowValue),\n (val) => ({data: val, id: getIdFromRowValue(rowValue, rowIndex)})\n )(columnsData)\n );\n\nconst getTableHeadData = (columnsData, filters, onFilter) =>\n columnsData.map(\n ({\n id,\n label,\n description,\n sortable,\n filterable = true,\n resizable,\n draggable,\n autoResize = true,\n initialWidth,\n minWidth,\n dataTypeDefinition,\n filterOptions,\n headCellRenderer = withFilterAtBottom(DefaultHeadCellRenderer)\n }) => ({\n id,\n label,\n description,\n sortable,\n resizable,\n draggable,\n initialWidth,\n minWidth,\n autoResize,\n renderer: unless(\n () => isNil(filters),\n withFilter({\n dataTypeDefinition,\n filterable,\n filter: prop(id, filters),\n filterOptions,\n onFilter\n })\n )(headCellRenderer)\n })\n );\n\nconst calcMaxValuesCount = reduce((maxCount, cellValues) => {\n const maxSubNestedValuesCount = pipe(chain(propOr([], 'indexPath')), map(add(1)), reduce(max, 0))(cellValues);\n const maxPlainValuesCount = pipe(pluck('values'), pluck('length'), reduce(max, 0))(cellValues);\n return Math.max(maxCount, maxSubNestedValuesCount, maxPlainValuesCount);\n}, 0);\n\nconst getMaxRowValuesCount = (columnsData, rowValue) => {\n return pipe(buildRowValues(rowValue, Infinity), values, calcMaxValuesCount)(columnsData);\n};\n\nexport {getTableRowsData, getTableHeadData, getMaxRowValuesCount};\n","import {DataTypes} from '@reltio/mdm-sdk';\n\nconst BLOB_HEIGHT = 100;\nconst IMAGE_HEIGHT = 64;\nconst PADDING = 15;\n\nconst defaultGetRowCellHeight = ({columnData, cell}) => {\n const valuesCount = cell.values.length;\n switch (columnData?.dataTypeDefinition?.type) {\n case DataTypes.TYPE_BLOB:\n return BLOB_HEIGHT * valuesCount;\n case DataTypes.TYPE_IMAGE:\n return (PADDING + IMAGE_HEIGHT) * valuesCount + PADDING;\n case DataTypes.TYPE_REFERENCE:\n return 48 * Math.max(valuesCount, 1);\n default:\n return 33 * Math.max(valuesCount, 1) + PADDING;\n }\n};\n\nexport default defaultGetRowCellHeight;\n","import React from 'react';\n\nconst defaultRenderRowCell = ({cell, CellValueRenderer, ...otherProps}) =>\n cell.values.map((value, index) => <CellValueRenderer key={index} value={value} {...otherProps} />);\n\nexport default defaultRenderRowCell;\n","import {useCallback, useMemo, useState} from 'react';\n\nimport {equals, filter, remove} from 'ramda';\nimport {getTableRowsData, getMaxRowValuesCount} from '../helpers/dataHelpers';\nimport {useDidUpdateEffect, usePrevious} from '../../../../hooks';\nimport {\n ColumnData,\n ElementsRowsData,\n GetRowCellHeight,\n RenderRowCell,\n RowValue,\n TableRowsData,\n RowId\n} from '../../types';\n\ntype Props = {\n rowsData: ElementsRowsData;\n columnsData: ColumnData[];\n renderRowCell: RenderRowCell;\n getRowCellHeight: GetRowCellHeight;\n maxRowValuesCount: number;\n getIdFromRowValue?: (rowValue: RowValue, rowIndex: number) => RowId;\n};\n\nconst useCollapsibleTableRows = ({\n rowsData,\n columnsData,\n renderRowCell,\n getRowCellHeight,\n maxRowValuesCount,\n getIdFromRowValue\n}: Props) => {\n const [expandedIndexes, setExpandedIndexes] = useState<Array<number>>([]);\n\n const getRowMaxValuesCount = useCallback(\n (rowIndex) => {\n return expandedIndexes.includes(rowIndex) ? Infinity : maxRowValuesCount;\n },\n [expandedIndexes, maxRowValuesCount]\n );\n\n const tableRowsData: TableRowsData = useMemo(\n () =>\n getTableRowsData(\n rowsData,\n columnsData,\n renderRowCell,\n getRowCellHeight,\n getRowMaxValuesCount,\n getIdFromRowValue\n ),\n [rowsData, columnsData, renderRowCell, getRowCellHeight, getRowMaxValuesCount, getIdFromRowValue]\n );\n\n const toggleRowCollapse = useCallback((rowIndex: number) => {\n setExpandedIndexes((expandedIndexes) => {\n const index = expandedIndexes.findIndex(equals(rowIndex));\n return index === -1 ? expandedIndexes.concat(rowIndex) : remove(index, 1, expandedIndexes);\n });\n }, []);\n\n const getIsRowCollapsible = useCallback(\n (rowValue: Record<string, unknown>) => {\n return getMaxRowValuesCount(columnsData, rowValue) > maxRowValuesCount;\n },\n [maxRowValuesCount, columnsData]\n );\n\n const getIsRowCollapsed = useCallback(\n (rowIndex: number) => {\n return !expandedIndexes.includes(rowIndex);\n },\n [expandedIndexes]\n );\n\n const collapseContextValue = useMemo(\n () => ({\n maxRowValuesCount,\n toggleRowCollapse,\n getIsRowCollapsible,\n getIsRowCollapsed\n }),\n [maxRowValuesCount, toggleRowCollapse, getIsRowCollapsible, getIsRowCollapsed]\n );\n\n const prevRowsData = usePrevious(rowsData);\n useDidUpdateEffect(() => {\n if (expandedIndexes.length > 0) {\n setExpandedIndexes(\n filter((index) => {\n const rowValue = rowsData[index] ?? ({} as RowValue);\n const prevRowValue = prevRowsData[index] ?? ({} as RowValue);\n return rowValue.rawValue === prevRowValue.rawValue && getIsRowCollapsible(rowValue);\n })\n );\n }\n }, [rowsData]);\n\n return {tableRowsData, collapseContextValue};\n};\n\nexport default useCollapsibleTableRows;\n","import {buildFilterQueryString, Maybe} from '@reltio/mdm-sdk';\nimport {propEq} from 'ramda';\nimport {ColumnData, ColumnFilter} from '../types';\n\nconst columnFilterToMdmFilter = (\n columnData: ColumnData,\n columnFilter: ColumnFilter = {} as unknown as ColumnFilter\n) => ({\n fieldName: columnData.id,\n filter: columnFilter.filter,\n values: [columnFilter.value],\n type: columnData.dataTypeDefinition.type\n});\n\nconst mdmFilterToColumnFilter = ({filter, values}) => ({filter, value: values[0]});\n\nconst buildColumnsFilter = (columnsData: ColumnData[], filters?: Record<string, ColumnFilter>): string =>\n Maybe.fromNull(filters)\n .map((filters) =>\n Object.entries(filters).map(([columnId, columnFilter]) => {\n const columnData = columnsData.find(propEq('id', columnId));\n return columnFilterToMdmFilter(columnData, columnFilter);\n })\n )\n .map<string>(buildFilterQueryString())\n .orSome('');\n\nexport {buildColumnsFilter, columnFilterToMdmFilter, mdmFilterToColumnFilter};\n","import {makeStyles} from '@mui/styles';\n\nexport const COLUMN_FILTER_HEIGHT = 40;\n\nexport const useStyles = makeStyles({\n columnFilter: {\n backgroundColor: 'rgba(0,0,0,0.03)',\n display: 'flex',\n height: `${COLUMN_FILTER_HEIGHT}px`,\n alignItems: 'center'\n },\n dropDownButton: {\n marginLeft: 'auto',\n padding: '6px'\n },\n filterMenu: {\n marginTop: '3px',\n borderRadius: '2px',\n padding: '15px 20px',\n boxSizing: 'border-box',\n display: 'flex',\n flexDirection: 'column',\n minWidth: '454px'\n },\n 'filter-editor__option': {\n fontSize: '13px',\n color: 'rgba(0,0,0,0.54)'\n }\n});\n","import {makeStyles} from '@mui/styles';\n\nexport const useStyles = makeStyles({\n container: {\n display: 'flex',\n flexDirection: 'column',\n minHeight: '182px'\n },\n dateRangeContainer: {\n padding: '0px 16px'\n },\n dateInput: {\n margin: '0 7px'\n }\n});\n","import React, {forwardRef, useRef, useState} from 'react';\nimport i18n from 'ui-i18n';\nimport {nanoid} from 'nanoid';\nimport {pathOr} from 'ramda';\nimport {DataTypes} from '@reltio/mdm-sdk';\nimport Button from '@mui/material/Button';\nimport DialogTitle from '@mui/material/DialogTitle';\nimport DialogContent from '@mui/material/DialogContent';\nimport DialogActions from '@mui/material/DialogActions';\nimport TimestampEditor from '../editors/TimestampEditor/TimestampEditor';\nimport DateEditor from '../editors/DateEditor/DateEditor';\n\nimport {useStyles} from './styles';\n\nconst START_DATE = 0;\nconst END_DATE = 1;\n\nconst getDate = (values: Values, index: number) => pathOr(null, [index], values);\n\ntype Values = [Date, Date];\ntype Props = {\n onApply: ([startDate, endDate]: Values) => void;\n values?: Values;\n type?: string;\n minDate?: Date;\n maxDate?: Date;\n};\n\nconst DateRangePicker = forwardRef<HTMLDivElement, Props>(({onApply, values, type, minDate, maxDate}: Props, ref) => {\n const styles = useStyles();\n\n const editorFromId = useRef(nanoid());\n const editorToId = useRef(nanoid());\n\n const [startDate, setStartDate] = useState<Date>(null);\n const [endDate, setEndDate] = useState<Date>(null);\n\n React.useEffect(() => {\n setStartDate(getDate(values, START_DATE));\n setEndDate(getDate(values, END_DATE));\n }, [values]);\n\n const ComponentEditor = type === DataTypes.TYPE_TIMESTAMP ? TimestampEditor : DateEditor;\n\n const headerTitle = type === DataTypes.TYPE_TIMESTAMP ? i18n.text('Pick date and time') : i18n.text('Pick date');\n\n const selectStartDateHandler = (value: Date) => {\n setStartDate(value);\n };\n\n const selectEndDateHandler = (value: Date) => {\n setEndDate(value);\n };\n\n const onUpdate = () => {\n if (startDate && endDate && startDate > endDate) {\n onApply([endDate, startDate]);\n } else {\n onApply([startDate, endDate]);\n }\n };\n\n const onTabStopPropagation = (e) => e.key === 'Tab' && e.stopPropagation();\n\n return (\n <div className={styles.container} ref={ref} onKeyDown={onTabStopPropagation}>\n <DialogTitle>{headerTitle}</DialogTitle>\n <DialogContent className={styles.dateRangeContainer}>\n <ComponentEditor\n slotProps={{\n textField: {\n id: editorFromId.current,\n variant: 'filled',\n size: 'small',\n className: styles.dateInput\n }\n }}\n label={i18n.text('From')}\n value={startDate}\n onChange={selectStartDateHandler}\n minDate={minDate}\n maxDate={maxDate}\n />\n <ComponentEditor\n slotProps={{\n textField: {\n id: editorToId.current,\n variant: 'filled',\n size: 'small',\n className: styles.dateInput\n }\n }}\n label={i18n.text('To')}\n value={endDate}\n onChange={selectEndDateHandler}\n minDate={minDate}\n maxDate={maxDate}\n />\n </DialogContent>\n <DialogActions>\n <Button color=\"primary\" onClick={onUpdate}>\n {i18n.text('Update')}\n </Button>\n </DialogActions>\n </div>\n );\n});\n\nDateRangePicker.displayName = 'DateRangePicker';\n\nexport default DateRangePicker;\n","import PropTypes from 'prop-types';\nimport React from 'react';\nimport classnames from 'classnames';\nimport {useArrowIndicatorStyles} from './arrowIndicatorStyles';\nimport ArrowDropDownIcon from '@mui/icons-material/ArrowDropDown';\nimport SmallIconButton from '../SmallIconButton/SmallIconButton';\n\nconst DropdownIndicatorWithIconButton = (props) => {\n const {\n selectProps: {classes, menuIsOpen},\n innerProps\n } = props;\n\n const styles = useArrowIndicatorStyles();\n\n return (\n <SmallIconButton\n {...innerProps}\n icon={ArrowDropDownIcon}\n className={classes.dropdownIndicator}\n size=\"L\"\n iconClassName={classnames({[styles.expanded]: menuIsOpen})}\n />\n );\n};\n\nDropdownIndicatorWithIconButton.propTypes = {\n innerProps: PropTypes.object.isRequired,\n selectProps: PropTypes.shape({\n classes: PropTypes.shape({\n dropdownIndicator: PropTypes.string\n }).isRequired,\n menuIsOpen: PropTypes.bool.isRequired\n }).isRequired\n};\n\nexport default DropdownIndicatorWithIconButton;\n","import {makeStyles} from '@mui/styles';\n\nexport const useStyles = makeStyles((theme) => ({\n dropdownIndicator: {\n transition: 'transform .15s ease',\n cursor: 'pointer',\n color: 'rgba(0, 0, 0, 0.54)'\n },\n underline: {\n '&:after': {\n transform: 'scaleX(1)'\n }\n },\n inputLabel: {\n color: theme.palette.primary.main\n },\n adornedEnd: {\n paddingRight: 4\n },\n uppercase: {\n '& > input': {\n textTransform: 'uppercase'\n }\n },\n inputRoot: {\n fontSize: '14px',\n letterSpacing: 0,\n lineHeight: '16px'\n }\n}));\n","import React, {forwardRef} from 'react';\nimport classnames from 'classnames';\nimport {isNil} from 'ramda';\nimport {DatePeriod} from '@reltio/mdm-sdk';\nimport TextField, {TextFieldProps} from '@mui/material/TextField';\nimport DropdownIndicatorWithIconButton from '../../commonReactSelectComponents/DropdownIndicatorWithIconButton';\nimport withDateRangeSelector from '../../../HOCs/withDateRangeSelector/withDateRangeSelector';\n\nimport {useStyles} from './styles';\n\nexport type DateRangeEditorProps = {\n label?: string;\n values?: DatePeriod | string;\n editorLabel?: string;\n editorPlaceholder?: string;\n TextFieldProps?: TextFieldProps;\n classes?: {\n dropdownIndicator?: string;\n root?: string;\n };\n className?: string;\n isPickingDate?: boolean;\n isMenuOpen?: boolean;\n onMenuToggle?: () => void;\n};\n\nconst DateRangeEditor = forwardRef(\n (\n {\n label,\n editorLabel,\n editorPlaceholder,\n values,\n TextFieldProps,\n isPickingDate,\n isMenuOpen,\n onMenuToggle,\n ...otherProps\n }: DateRangeEditorProps,\n ref: React.Ref<HTMLDivElement>\n ) => {\n const styles = useStyles();\n const {classes} = otherProps;\n\n return (\n <TextField\n {...TextFieldProps}\n {...otherProps}\n ref={ref}\n label={label}\n value={TextFieldProps?.value || editorLabel}\n onClick={onMenuToggle}\n variant=\"filled\"\n size=\"small\"\n InputProps={{\n endAdornment: (\n <DropdownIndicatorWithIconButton\n selectProps={{\n classes: {\n dropdownIndicator: classnames(styles.dropdownIndicator, classes?.dropdownIndicator)\n },\n menuIsOpen: isMenuOpen\n }}\n innerProps={{}}\n />\n ),\n classes: {\n root: classnames(styles.inputRoot, {\n [styles.uppercase]: !isPickingDate && Array.isArray(values)\n }),\n underline: classnames({[styles.underline]: isMenuOpen}),\n adornedEnd: styles.adornedEnd\n },\n disableUnderline: isNil(values),\n readOnly: true,\n ...TextFieldProps?.InputProps\n }}\n InputLabelProps={{\n classes: {\n root: isMenuOpen ? styles.inputLabel : undefined\n },\n shrink: !isNil(label)\n }}\n placeholder={editorPlaceholder}\n />\n );\n }\n);\n\nDateRangeEditor.displayName = 'DateRangeEditor';\n\nexport default withDateRangeSelector(DateRangeEditor);\n","import {makeStyles} from '@mui/styles';\n\nexport const useStyles = makeStyles({\n 'range-editor': {\n width: '100%'\n },\n 'range-editor__control': {\n marginTop: '10px',\n paddingTop: '15px',\n '& > label + *': {\n marginTop: 0\n }\n },\n 'range-inline-editor': {\n display: 'flex',\n alignItems: 'center',\n flexGrow: 1\n },\n 'range-editor__dash': {\n padding: '0 5px'\n }\n});\n","import React, {useRef} from 'react';\nimport PropTypes from 'prop-types';\nimport {nanoid} from 'nanoid';\nimport FormControl from '@mui/material/FormControl';\nimport InputLabel from '@mui/material/InputLabel';\nimport DataTypeValueEditor from '../DataTypeValueEditor/DataTypeValueEditor';\nimport {__, pipe, update} from 'ramda';\nimport {useStyles} from './styles';\nimport i18n from 'ui-i18n';\n\nconst RangeDataTypeValueEditor = ({value = new Array(2), onChange, orientation = 'vertical', ...otherProps}) => {\n const styles = useStyles();\n const rangeEditorFromId = useRef(nanoid());\n const rangeEditorToId = useRef(nanoid());\n\n const fromEditor = (\n <DataTypeValueEditor\n id={rangeEditorFromId.current}\n value={value[0]}\n onChange={pipe(update(0, __, value), onChange)}\n {...otherProps}\n />\n );\n\n const toEditor = (\n <DataTypeValueEditor\n id={rangeEditorToId.current}\n value={value[1]}\n onChange={pipe(update(1, __, value), onChange)}\n {...otherProps}\n />\n );\n\n if (orientation === 'horizontal') {\n return (\n <div className={styles['range-inline-editor']}>\n {fromEditor}\n <div className={styles['range-editor__dash']}>{'—'}</div>\n {toEditor}\n </div>\n );\n } else {\n return (\n <div className={styles['range-editor']}>\n <FormControl variant=\"standard\" fullWidth={true} className={styles['range-editor__control']}>\n <InputLabel htmlFor={rangeEditorFromId.current} shrink={true}>\n {i18n.text('From')}\n </InputLabel>\n {fromEditor}\n </FormControl>\n <FormControl variant=\"standard\" fullWidth={true} className={styles['range-editor__control']}>\n <InputLabel htmlFor={rangeEditorToId.current} shrink={true}>\n {i18n.text('To')}\n </InputLabel>\n {toEditor}\n </FormControl>\n </div>\n );\n }\n};\n\nRangeDataTypeValueEditor.propTypes = {\n value: PropTypes.arrayOf(PropTypes.any),\n onChange: PropTypes.func,\n fieldName: PropTypes.string,\n orientation: PropTypes.oneOf(['horizontal', 'vertical']),\n dataTypeDefinition: PropTypes.object,\n classes: PropTypes.object\n};\n\nexport default RangeDataTypeValueEditor;\n","import DataTypeValueEditor from '../DataTypeValueEditor/DataTypeValueEditor';\nimport PropTypes from 'prop-types';\nimport React from 'react';\nimport i18n from 'ui-i18n';\nimport {\n DataTypes,\n FilterType,\n isDateRangeFilterOption,\n isDateRangeValue,\n isMultiValueOption,\n isRangeFilterOption,\n mapFilterValue,\n utils,\n wrapInArray\n} from '@reltio/mdm-sdk';\nimport {pipe} from 'ramda';\nimport RangeDataTypeValueEditor from '../RangeDataTypeValueEditor/RangeDataTypeValueEditor';\nimport DateRangeEditor from '../DateRangeEditor/DateRangeEditor';\n\nconst toEditorValue = (dataType) => (value) => {\n switch (dataType) {\n case DataTypes.TYPE_DATE:\n return isDateRangeValue(value) ? value : utils.dates.toLocalDate(value);\n case DataTypes.TYPE_LOCAL_DATE:\n case DataTypes.TYPE_TIMESTAMP:\n case DataTypes.TYPE_ACTIVENESS_DATE:\n return isDateRangeValue(value) ? value : new Date(value);\n default:\n return value;\n }\n};\n\nconst fromEditorValue = (dataType) => (value) => {\n switch (dataType) {\n case DataTypes.TYPE_DATE:\n return isDateRangeValue(value) ? value : Date.UTC(value.getFullYear(), value.getMonth(), value.getDate());\n case DataTypes.TYPE_LOCAL_DATE:\n case DataTypes.TYPE_ACTIVENESS_DATE:\n case DataTypes.TYPE_TIMESTAMP:\n return isDateRangeValue(value) ? value : value.valueOf();\n default:\n return value;\n }\n};\n\nconst FilterValueEditor = ({\n filter: {values = [], fieldName, filter},\n onChange,\n dataTypeDefinition,\n orientation,\n TextFieldProps,\n ...otherProps\n}) => {\n const {type: dataType} = dataTypeDefinition;\n\n const value = mapFilterValue(toEditorValue(dataType))(values[0]);\n const handleChange = pipe(mapFilterValue(fromEditorValue(dataType)), wrapInArray, onChange);\n\n if (isDateRangeFilterOption(filter)) {\n return (\n <DateRangeEditor\n {...otherProps}\n values={value}\n onChange={handleChange}\n dataTypeDefinition={dataTypeDefinition}\n label={i18n.text('Date Range')}\n />\n );\n } else if (isRangeFilterOption(filter)) {\n return (\n <RangeDataTypeValueEditor\n {...otherProps}\n value={value}\n onChange={handleChange}\n fieldName={fieldName}\n dataTypeDefinition={dataTypeDefinition}\n orientation={orientation}\n TextFieldProps={TextFieldProps}\n />\n );\n } else {\n const multipleProp = isMultiValueOption(filter) ? {multiple: true} : {};\n return (\n <DataTypeValueEditor\n {...otherProps}\n {...multipleProp}\n fieldName={fieldName}\n value={value}\n onChange={handleChange}\n dataTypeDefinition={dataTypeDefinition}\n TextFieldProps={TextFieldProps}\n />\n );\n }\n};\n\nFilterValueEditor.propTypes = {\n filter: FilterType,\n orientation: PropTypes.oneOf(['horizontal', 'vertical']),\n onChange: PropTypes.func,\n dataTypeDefinition: PropTypes.object,\n classes: PropTypes.object,\n TextFieldProps: PropTypes.object\n};\n\nexport default FilterValueEditor;\n","import {useEffect, useRef} from 'react';\n\nexport const usePrevious = <T>(value: T): T | undefined => {\n const valueHolderRef = useRef<T>();\n useEffect(() => {\n valueHolderRef.current = value;\n }, [value]);\n return valueHolderRef.current;\n};\n"],"names":["convertValuesToDate","pipe","getDateRangeByValue","defaultTo","map","value","Date","useStyles","makeStyles","theme","paper","minWidth","menuItem","minHeight","menuText","color","palette","text","primary","fontSize","lineHeight","letterSpacing","dateFormat","moment","longDateFormat","Component","WithDateRangeSelector","props","values","options","getValuesDateRange","onChange","dataTypeDefinition","type","DataTypes","DateRangePickerProps","MenuProps","componentProps","rangeOptions","useMemo","Object","AllDateRangeValues","option","label","getRangeOptionLabel","inputRef","useRef","isPickingDate","setIsPickingDate","useState","open","setOpen","styles","onItemClick","handleToggle","useCallback","onCancel","isTimestamp","enhancePlaceHolder","timeFormat","replace","identity","format","getLocaleFormat","editorPlaceholder","toUpperCase","editorLabel","placeholder","cond","isEmptyValue","always","is","Array","dateTimeMask","isNil","formatDataTypeValue","formatValue","join","String","find","propEq","getEditorLabel","anchorOrigin","vertical","horizontal","transformOrigin","ref","onMenuToggle","isMenuOpen","Popover","anchorEl","current","onClose","elevation","DateRangePicker","onApply","Menu","variant","autoFocus","classes","MenuListProps","autoFocusItem","style","width","prop","MenuItem","key","onClick","className","Typography","root","displayName","BasicTable","forwardRef","columnsData","rowsData","context","sorting","onSort","renderRowCell","defaultRenderRowCell","getRowCellHeight","defaultGetRowCellHeight","filters","onFilter","headRowHeight","maxRowValuesCount","Infinity","autosizing","maxHeight","getIdFromRowValue","otherProps","tableHeadData","getTableHeadData","tableRowsData","collapseContextValue","useCollapsibleTableRows","toggleRowCollapse","getIsRowCollapsed","onStartDragRow","setTimeout","forEach","_","index","length","defaultRowHeight","fixHead","headData","sortField","sortOrder","COLUMN_FILTER_HEIGHT","BasicTableType","PropTypes","ColumnDataType","isRequired","SortingType","ColumnFilterType","defaultColumnWidth","defaultColumnMinWidth","highlightRow","cellBorder","dragColumnBody","dragColumnHead","draggableHeadCell","cellWrapper","cellContentWrapper","hoveredRowRightContentContainer","hoveredRowRightContentWrapper","propTypes","HeadCellRenderer","HeadCellRendererWithFilterAtBottom","columnFilter","display","flexDirection","height","flex","defaultWrapper","whiteSpace","overflow","textOverflow","padding","blobWrapper","position","overflowY","overflowX","boxSizing","stopPropagation","event","BlobRenderer","onScroll","DefaultCellValueRenderer","columnData","dataTypeValue","DataTypeValue","ExpandedValueTooltip","RowCollapseContext","React","TableContext","maxWidth","justifyContent","marginRight","backgroundColor","filterOption","filterValue","onDelete","attributePresentations","useMdmAttributePresentations","dateMask","useMdmDateMask","useMdmDateTimeMask","canFilterAcceptValues","checkIfOptionHasValues","optionLabel","convertedValue","mapFilterValue","filterLabel","getFilterValueLabel","Chip","dropDownEditor","marginTop","marginBottom","selectorRoot","paddingTop","paddingBottom","FilterEditor","filterOptions","valueEditorProps","selectStyles","useSelectStyles","firstOption","filter","DropDownEditor","TextFieldProps","commonTextFieldProps","classnames","entries","assoc","__","icon","FilterValueEditor","FilterType","ColumnFilter","columnId","filterOptionsData","setAnchorEl","setColumnFilter","containerRef","mdmFilter","columnFilterToMdmFilter","id","applyFilterChange","newFilter","clearFilter","applyChangesAndClose","validateFilter","getFilterOptionData","getFilterDataTypeDefinition","getDataTypeDefinitionForFilterValue","Maybe","pluck","orSome","getFilterOptionsForDataTypeDefinition","getFilterOptionLabel","IconButton","dropDownButton","currentTarget","disableFocusRipple","size","ArrowDropDown","PaperProps","getBoundingClientRect","filterMenu","TransitionProps","onEnter","mdmFilterToColumnFilter","onKeyPress","preventDefault","fullWidth","filterable","HeadCellRendererWithFilter","headCellData","useColumnFilterStyles","TOTAL_ROW_SPAN_KEY","NESTED_KEY_DELIMITER","getSiblingSubRowsKeyBySubRowKey","split","dropLast","getParentRowKeyBySiblingsSubRowsKey","unless","getParentRowKeyBySubRowKey","countParentSpanByAllSubRows","rowSpanData","siblingSubRowsKey","pickBy","_val","sum","calcParentRowSpan","subRowKey","parentKey","currentParentSpan","propOr","actualParentSpan","nextRowSpanData","validateParentRowSpan","subRowsKeys","spanDiff","lowestSubRowKey","lowestSubRowSpan","calcRowSpansForNestedKeys","reduce","nestedKey","omit","keys","sortBy","groupBy","toPairs","chainWithIndex","addIndex","chain","flattenNestedColumnValues","indexPath","head","isArray","getNestedKeyForNestedColumnCell","curry","columnNestedPath","cell","zip","unnest","applyCellRenderer","rowIndex","rowValue","cells","columnIndex","findIndex","rowCellValueRenderer","CellValueRenderer","cellIndex","mapObjIndexed","calcHeights","rowData","calcHeightForColumnCells","getNestedKeysFromRowCells","reject","uniq","calcRowSpansData","calcRowSpans","rowSpansData","isEmpty","rowSpan","addRowSpansToColumnCells","buildRowValues","acc","nestedPath","columnValues","nestedValues","calcNestedKeys","parseNestedColumnValues","wrapInArrayIfNeeded","applyValuesCountConstraint","maxValuesCount","some","evolve","slice","defaultGetIdFromRowValue","getTableRowsData","rowValues","getRowMaxValuesCount","val","data","description","sortable","resizable","draggable","autoResize","initialWidth","headCellRenderer","withFilterAtBottom","DefaultHeadCellRenderer","renderer","withFilter","calcMaxValuesCount","maxCount","cellValues","maxSubNestedValuesCount","add","max","maxPlainValuesCount","Math","getMaxRowValuesCount","valuesCount","expandedIndexes","setExpandedIndexes","includes","equals","concat","remove","getIsRowCollapsible","prevRowsData","usePrevious","useDidUpdateEffect","prevRowValue","rawValue","fieldName","buildColumnsFilter","buildFilterQueryString","alignItems","marginLeft","borderRadius","container","dateRangeContainer","dateInput","margin","getDate","pathOr","minDate","maxDate","editorFromId","nanoid","editorToId","startDate","setStartDate","endDate","setEndDate","ComponentEditor","TimestampEditor","DateEditor","headerTitle","i18n","onKeyDown","e","DialogTitle","DialogContent","slotProps","textField","DialogActions","Button","DropdownIndicatorWithIconButton","selectProps","menuIsOpen","innerProps","useArrowIndicatorStyles","ArrowDropDownIcon","dropdownIndicator","iconClassName","expanded","transition","cursor","underline","transform","inputLabel","main","adornedEnd","paddingRight","uppercase","textTransform","inputRoot","DateRangeEditor","TextField","InputProps","endAdornment","disableUnderline","readOnly","InputLabelProps","undefined","shrink","withDateRangeSelector","flexGrow","RangeDataTypeValueEditor","orientation","rangeEditorFromId","rangeEditorToId","fromEditor","DataTypeValueEditor","update","toEditor","FormControl","InputLabel","htmlFor","dataType","isDateRangeValue","utils","toEditorValue","handleChange","UTC","getFullYear","getMonth","valueOf","fromEditorValue","wrapInArray","isDateRangeFilterOption","isRangeFilterOption","multipleProp","isMultiValueOption","multiple","valueHolderRef","useEffect"],"sourceRoot":""}
|
|
1
|
+
{"version":3,"file":"5108.js","mappings":"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","sources":["webpack://@reltio/remotes/../components/src/HOCs/withDateRangeSelector/helpers.ts","webpack://@reltio/remotes/../components/src/HOCs/withDateRangeSelector/styles.ts","webpack://@reltio/remotes/../components/src/HOCs/withDateRangeSelector/withDateRangeSelector.tsx","webpack://@reltio/remotes/../components/src/components/BasicTableView/BasicTable/BasicTable.js","webpack://@reltio/remotes/../components/src/components/BasicTableView/BasicTable/HOCs/withFilterAtBottom.js","webpack://@reltio/remotes/../components/src/components/BasicTableView/BasicTable/cell-value-renderers/styles.js","webpack://@reltio/remotes/../components/src/components/BasicTableView/BasicTable/cell-value-renderers/BlobRenderer.js","webpack://@reltio/remotes/../components/src/components/BasicTableView/BasicTable/cell-value-renderers/DefaultCellValueRenderer.js","webpack://@reltio/remotes/../components/src/components/BasicTableView/BasicTable/contexts/RowCollapseContext.js","webpack://@reltio/remotes/../components/src/components/BasicTableView/BasicTable/contexts/TableContext.js","webpack://@reltio/remotes/../components/src/components/BasicTableView/ColumnFilter/FilterChip/styles.js","webpack://@reltio/remotes/../components/src/components/BasicTableView/ColumnFilter/FilterChip/FilterChip.tsx","webpack://@reltio/remotes/../components/src/components/editors/FilterEditor/styles.ts","webpack://@reltio/remotes/../components/src/components/editors/FilterEditor/FilterEditor.js","webpack://@reltio/remotes/../components/src/components/BasicTableView/ColumnFilter/ColumnFilter.js","webpack://@reltio/remotes/../components/src/components/BasicTableView/BasicTable/HOCs/withFilter.js","webpack://@reltio/remotes/../components/src/components/BasicTableView/BasicTable/helpers/nestedHelpers.js","webpack://@reltio/remotes/../components/src/components/BasicTableView/BasicTable/helpers/dataHelpers.js","webpack://@reltio/remotes/../components/src/components/BasicTableView/BasicTable/helpers/defaultGetRowCellHeight.js","webpack://@reltio/remotes/../components/src/components/BasicTableView/BasicTable/helpers/defaultRenderRowCell.js","webpack://@reltio/remotes/../components/src/components/BasicTableView/BasicTable/hooks/useCollapsibleTableRows.ts","webpack://@reltio/remotes/../components/src/components/BasicTableView/ColumnFilter/helpers.ts","webpack://@reltio/remotes/../components/src/components/BasicTableView/ColumnFilter/styles.js","webpack://@reltio/remotes/../components/src/components/DateRangePicker/styles.ts","webpack://@reltio/remotes/../components/src/components/DateRangePicker/DateRangePicker.tsx","webpack://@reltio/remotes/../components/src/components/commonReactSelectComponents/DropdownIndicatorWithIconButton.js","webpack://@reltio/remotes/../components/src/components/editors/DateRangeEditor/styles.ts","webpack://@reltio/remotes/../components/src/components/editors/DateRangeEditor/DateRangeEditor.tsx","webpack://@reltio/remotes/../components/src/components/editors/RangeDataTypeValueEditor/styles.js","webpack://@reltio/remotes/../components/src/components/editors/RangeDataTypeValueEditor/RangeDataTypeValueEditor.js","webpack://@reltio/remotes/../components/src/components/editors/FilterEditor/FilterValueEditor.js"],"sourcesContent":["import {always, cond, defaultTo, is, isNil, map, pipe, propEq} from 'ramda';\nimport {DataTypeDefinition, DatePeriod, formatDataTypeValue, getDateRangeByValue, isEmptyValue} from '@reltio/mdm-sdk';\n\nexport type Option = {\n value: string;\n label: string;\n};\n\nconst formatValue = (value: Date, dataTypeDefinition: DataTypeDefinition, dateTimeMask: string) =>\n isNil(value) ? `${dateTimeMask}` : `${formatDataTypeValue({dataTypeDefinition, dateTimeMask}, value)}`;\n\nconst getEditorLabel = (\n placeholder: string,\n dataTypeDefinition: DataTypeDefinition,\n value: DatePeriod | string,\n options: Option[]\n) =>\n cond([\n [isEmptyValue, always('')],\n [\n is(Array),\n (value) => value.map((value) => formatValue(value, dataTypeDefinition, placeholder)).join(' \\u2014 ')\n ],\n [is(String), (value) => options.find(propEq('value', value))?.label]\n ])(value);\n\nconst convertValuesToDate = pipe(\n getDateRangeByValue,\n defaultTo([]),\n map((value) => value && new Date(value))\n);\n\nexport {getEditorLabel, convertValuesToDate};\n","import {makeStyles} from '@mui/styles';\n\nexport const useStyles = makeStyles((theme) => ({\n paper: {\n minWidth: '112px'\n },\n menuItem: {\n minHeight: '32px'\n },\n menuText: {\n color: theme.palette.text.primary,\n fontSize: '13px',\n lineHeight: '15px',\n letterSpacing: 0\n }\n}));\n","import React, {ComponentType, useMemo, useRef, useState, useCallback} from 'react';\nimport moment from 'moment';\nimport {identity, prop} from 'ramda';\nimport {\n DataTypeDefinition,\n DataTypes,\n AllDateRangeValues,\n getRangeOptionLabel,\n getLocaleFormat,\n DatePeriod\n} from '@reltio/mdm-sdk';\nimport MenuItem from '@mui/material/MenuItem';\nimport Popover from '@mui/material/Popover';\nimport Typography from '@mui/material/Typography';\nimport Menu, {MenuProps as MuiMaterialProps} from '@mui/material/Menu';\nimport DateRangePicker from '../../components/DateRangePicker/DateRangePicker';\nimport {convertValuesToDate, getEditorLabel, Option} from './helpers';\n\nimport {useStyles} from './styles';\n\ntype DateRangeMenuProps = {\n values?: DatePeriod | string;\n options?: Option[];\n dataTypeDefinition?: DataTypeDefinition;\n getValuesDateRange?: (value: DatePeriod | string) => [Date, Date];\n onChange?: (value: DatePeriod | string) => void;\n DateRangePickerProps?: Partial<React.ComponentProps<typeof DateRangePicker>>;\n MenuProps?: Partial<MuiMaterialProps>;\n};\n\nconst dateFormat = moment.localeData().longDateFormat('L');\n\nconst withDateRangeSelector = <T extends DateRangeMenuProps>(Component: ComponentType<T>) => {\n const WithDateRangeSelector = (props: T & DateRangeMenuProps) => {\n const {\n values,\n options,\n getValuesDateRange = convertValuesToDate,\n onChange,\n dataTypeDefinition = {type: DataTypes.TYPE_DATE},\n DateRangePickerProps,\n MenuProps,\n ...componentProps\n } = props;\n const rangeOptions = useMemo(\n () =>\n options ||\n Object.values(AllDateRangeValues).map((option) => ({\n value: option,\n label: getRangeOptionLabel(option)\n })),\n [options]\n );\n\n const inputRef = useRef(null);\n const [isPickingDate, setIsPickingDate] = useState(false);\n const [open, setOpen] = useState(false);\n const styles = useStyles();\n\n const onItemClick = (value) => {\n if (value === AllDateRangeValues.PICK_DATE) {\n setIsPickingDate(true);\n } else {\n setOpen(false);\n setIsPickingDate(false);\n onChange(value);\n }\n };\n\n const handleToggle = useCallback(() => setOpen((open) => !open), []);\n\n const onCancel = () => {\n setIsPickingDate(false);\n setOpen(false);\n };\n\n const isTimestamp = dataTypeDefinition.type === DataTypes.TYPE_TIMESTAMP;\n const enhancePlaceHolder = isTimestamp ? (timeFormat) => timeFormat.replace(/^[hH]:/, 'HH:') : identity;\n const format = isTimestamp ? getLocaleFormat() : dateFormat;\n const editorPlaceholder = `${enhancePlaceHolder(format)} \\u2014 ${enhancePlaceHolder(format)}`.toUpperCase();\n\n const editorLabel = isPickingDate\n ? getRangeOptionLabel(AllDateRangeValues.PICK_DATE)\n : getEditorLabel(format, dataTypeDefinition, values, rangeOptions);\n\n const {\n anchorOrigin = {vertical: 'bottom', horizontal: 'left'},\n transformOrigin = {vertical: 'top', horizontal: 'left'}\n } = MenuProps || {};\n\n return (\n <>\n <Component\n {...(componentProps as T)}\n ref={inputRef}\n editorLabel={editorLabel}\n editorPlaceholder={editorPlaceholder}\n onMenuToggle={handleToggle}\n isMenuOpen={open}\n isPickingDate={isPickingDate}\n />\n {isPickingDate ? (\n <Popover\n open={open}\n anchorEl={inputRef.current}\n onClose={onCancel}\n transformOrigin={transformOrigin}\n anchorOrigin={anchorOrigin}\n elevation={2}\n {...MenuProps}\n >\n <DateRangePicker\n values={getValuesDateRange(values)}\n onApply={onItemClick}\n type={dataTypeDefinition.type}\n {...DateRangePickerProps}\n />\n </Popover>\n ) : (\n <Menu\n variant=\"menu\"\n open={open}\n autoFocus={false}\n classes={{paper: styles.paper}}\n anchorEl={inputRef.current}\n onClose={onCancel}\n anchorOrigin={anchorOrigin}\n transformOrigin={transformOrigin}\n elevation={2}\n MenuListProps={{\n autoFocusItem: open,\n style: {\n width: prop('clientWidth', inputRef.current)\n }\n }}\n {...MenuProps}\n >\n {rangeOptions.map((option) => (\n <MenuItem\n key={option.value}\n value={option.value}\n onClick={() => onItemClick(option.value)}\n className={styles.menuItem}\n >\n <Typography classes={{root: styles.menuText}}>{option.label}</Typography>\n </MenuItem>\n ))}\n </Menu>\n )}\n </>\n );\n };\n\n WithDateRangeSelector.displayName = 'WithDateRangeSelector';\n return WithDateRangeSelector;\n};\n\nexport default withDateRangeSelector;\n","import React, {useMemo, forwardRef, useCallback} from 'react';\nimport PropTypes from 'prop-types';\n\nimport Table from 'react-components/dist/Table/Table';\nimport defaultGetRowCellHeight from './helpers/defaultGetRowCellHeight';\nimport defaultRenderRowCell from './helpers/defaultRenderRowCell';\nimport {COLUMN_FILTER_HEIGHT} from '../ColumnFilter/styles';\nimport {ColumnDataType, ColumnFilterType, SortingType} from '../../../constants/prop-types';\nimport {getTableHeadData} from './helpers/dataHelpers';\nimport {TableContext} from './contexts/TableContext';\nimport {RowCollapseContext} from './contexts/RowCollapseContext';\nimport {prop} from 'ramda';\nimport useCollapsibleTableRows from './hooks/useCollapsibleTableRows';\n\nconst BasicTable = forwardRef(\n (\n {\n columnsData,\n rowsData,\n context,\n sorting,\n onSort,\n renderRowCell = defaultRenderRowCell,\n getRowCellHeight = defaultGetRowCellHeight,\n filters,\n onFilter,\n headRowHeight,\n maxRowValuesCount = Infinity,\n autosizing,\n maxHeight,\n getIdFromRowValue,\n ...otherProps\n },\n ref\n ) => {\n const tableHeadData = useMemo(\n () => getTableHeadData(columnsData, filters, onFilter),\n [columnsData, filters, onFilter]\n );\n\n const {tableRowsData, collapseContextValue} = useCollapsibleTableRows({\n rowsData,\n columnsData,\n renderRowCell,\n getRowCellHeight,\n maxRowValuesCount,\n getIdFromRowValue\n });\n\n const {toggleRowCollapse, getIsRowCollapsed} = collapseContextValue;\n\n const onStartDragRow = useCallback(() => {\n setTimeout(() => {\n tableRowsData.forEach((_, index) => {\n if (!getIsRowCollapsed(index)) {\n toggleRowCollapse(index);\n }\n });\n }, 0);\n }, [getIsRowCollapsed, toggleRowCollapse, tableRowsData]);\n\n if (!tableHeadData.length) {\n return null;\n }\n\n return (\n <RowCollapseContext.Provider value={collapseContextValue}>\n <TableContext.Provider value={context}>\n <Table\n autosizing={autosizing}\n maxHeight={maxHeight}\n defaultRowHeight={48}\n onStartDragRow={onStartDragRow}\n {...otherProps}\n fixHead={tableRowsData.length > 0}\n headData={tableHeadData}\n rowsData={tableRowsData}\n sortField={prop('field', sorting)}\n sortOrder={prop('order', sorting)}\n onSort={onSort}\n headRowHeight={filters ? headRowHeight + COLUMN_FILTER_HEIGHT : headRowHeight}\n ref={ref}\n />\n </TableContext.Provider>\n </RowCollapseContext.Provider>\n );\n }\n);\n\nexport const BasicTableType = {\n columnsData: PropTypes.arrayOf(ColumnDataType).isRequired,\n rowsData: PropTypes.arrayOf(PropTypes.object).isRequired,\n context: PropTypes.object,\n sorting: SortingType,\n onSort: PropTypes.func,\n filters: PropTypes.objectOf(ColumnFilterType),\n onFilter: PropTypes.func,\n renderRowCell: PropTypes.func,\n getRowCellHeight: PropTypes.func,\n headRowHeight: PropTypes.number,\n maxRowValuesCount: PropTypes.number,\n defaultColumnWidth: PropTypes.number,\n defaultColumnMinWidth: PropTypes.number,\n classes: PropTypes.shape({\n highlightRow: PropTypes.string,\n cellBorder: PropTypes.string,\n dragColumnBody: PropTypes.string,\n dragColumnHead: PropTypes.string,\n draggableHeadCell: PropTypes.string,\n cellWrapper: PropTypes.string,\n cellContentWrapper: PropTypes.string,\n hoveredRowRightContentContainer: PropTypes.string,\n hoveredRowRightContentWrapper: PropTypes.string\n })\n};\n\nBasicTable.propTypes = BasicTableType;\n\nBasicTable.displayName = 'BasicTable';\n\nexport default BasicTable;\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nconst withFilterAtBottom = (HeadCellRenderer) => {\n const HeadCellRendererWithFilterAtBottom = ({columnFilter, ...otherProps}) => {\n return (\n <div style={{display: 'flex', flexDirection: 'column', height: '100%'}}>\n <div style={{display: 'flex', flex: 1}}>\n <HeadCellRenderer {...otherProps} />\n </div>\n {columnFilter}\n </div>\n );\n };\n HeadCellRendererWithFilterAtBottom.propTypes = {\n columnFilter: PropTypes.node\n };\n\n return HeadCellRendererWithFilterAtBottom;\n};\n\nexport default withFilterAtBottom;\n","import {makeStyles} from '@mui/styles';\n\nexport const BLOB_HEIGHT = 100;\n\nexport const useStyles = makeStyles({\n defaultWrapper: {\n whiteSpace: 'nowrap',\n overflow: 'hidden',\n textOverflow: 'ellipsis',\n padding: '15px 25px 0 25px'\n },\n blobWrapper: {\n position: 'relative',\n overflowY: 'auto',\n overflowX: 'hidden',\n whiteSpace: 'pre',\n maxHeight: `${BLOB_HEIGHT}px`,\n boxSizing: 'border-box',\n padding: '15px 25px 0 25px'\n }\n});\n","import PropTypes from 'prop-types';\nimport React from 'react';\nimport {useStyles} from './styles';\n\nconst stopPropagation = (event) => {\n event.stopPropagation();\n};\n\nconst BlobRenderer = ({value}) => {\n const styles = useStyles();\n return (\n <div className={styles.blobWrapper} onScroll={stopPropagation}>\n {value}\n </div>\n );\n};\n\nBlobRenderer.propTypes = {\n value: PropTypes.node\n};\n\nexport default BlobRenderer;\n","import BlobRenderer from './BlobRenderer';\nimport DataTypeValue from '../../../DataTypeValue/DataTypeValue';\nimport PropTypes from 'prop-types';\nimport React from 'react';\nimport {DataTypes} from '@reltio/mdm-sdk';\nimport {useStyles} from './styles';\nimport ExpandedValueTooltip from '../../../ExpandedValueTooltip/ExpandedValueTooltip';\n\nconst DefaultCellValueRenderer = (props) => {\n const styles = useStyles();\n const {\n value,\n columnData: {dataTypeDefinition}\n } = props;\n switch (dataTypeDefinition.type) {\n case DataTypes.TYPE_BLOB:\n return <BlobRenderer {...props} />;\n default: {\n const dataTypeValue = <DataTypeValue value={value} dataTypeDefinition={dataTypeDefinition} />;\n return (\n <ExpandedValueTooltip value={dataTypeValue}>\n <div className={styles.defaultWrapper}>{dataTypeValue}</div>\n </ExpandedValueTooltip>\n );\n }\n }\n};\n\nDefaultCellValueRenderer.propTypes = {\n value: PropTypes.any,\n columnData: PropTypes.shape({\n dataTypeDefinition: PropTypes.object\n })\n};\n\nexport default DefaultCellValueRenderer;\n","import React from 'react';\n\nexport const RowCollapseContext = React.createContext(null);\n\nRowCollapseContext.displayName = 'RowCollapseContext';\n","import React from 'react';\n\nexport const TableContext = React.createContext(null);\n\nTableContext.displayName = 'TableContext';\n","import {makeStyles} from '@mui/styles';\n\nexport const COLUMN_FILTER_HEIGHT = 40;\n\nexport const useStyles = makeStyles({\n 'filter-chip': {\n flex: 1,\n maxWidth: '100%',\n overflow: 'hidden',\n justifyContent: 'flex-start',\n marginRight: '-8px',\n '&, &:focus': {\n backgroundColor: 'rgba(0,0,0,0)'\n }\n },\n 'filter-chip__label': {\n color: 'rgba(0,0,0,0.87)',\n flex: 1,\n overflow: 'hidden',\n whiteSpace: 'nowrap',\n textOverflow: 'ellipsis'\n },\n 'filter-chip__option-label': {\n color: 'rgba(0,0,0,0.54)'\n }\n});\n","import Chip from '@mui/material/Chip';\nimport React from 'react';\nimport {\n checkIfOptionHasValues,\n DataTypeDefinition,\n formatDataTypeValue,\n getFilterValueLabel,\n mapFilterValue,\n PrimitiveValue,\n SimpleAttributeValue\n} from '@reltio/mdm-sdk';\nimport ExpandedValueTooltip from '../../../ExpandedValueTooltip/ExpandedValueTooltip';\nimport {useMdmAttributePresentations, useMdmDateMask, useMdmDateTimeMask} from '../../../../contexts';\nimport {useStyles} from './styles';\n\ntype FilterValue = SimpleAttributeValue | PrimitiveValue;\n\ntype Props = {\n filterOption: {\n value: string;\n label: string;\n };\n filterValue: FilterValue | FilterValue[];\n onDelete: () => void;\n dataTypeDefinition: DataTypeDefinition;\n};\n\nconst FilterChip = ({filterOption, filterValue, onDelete, dataTypeDefinition}: Props) => {\n const styles = useStyles();\n\n const attributePresentations = useMdmAttributePresentations();\n const dateMask = useMdmDateMask();\n const dateTimeMask = useMdmDateTimeMask();\n\n const canFilterAcceptValues = checkIfOptionHasValues(filterOption.value);\n const optionLabel = filterOption.label + (canFilterAcceptValues ? ': ' : '');\n const formatValue = formatDataTypeValue({attributePresentations, dataTypeDefinition, dateMask, dateTimeMask});\n const convertedValue = mapFilterValue(formatValue, filterValue);\n const filterLabel = canFilterAcceptValues ? getFilterValueLabel(filterOption.value, convertedValue) : '';\n\n return (\n <Chip\n label={\n <ExpandedValueTooltip value={optionLabel + filterLabel}>\n <div className={styles['filter-chip__label']}>\n <span className={styles['filter-chip__option-label']}>{optionLabel}</span>\n {filterLabel}\n </div>\n </ExpandedValueTooltip>\n }\n classes={{\n root: styles['filter-chip'],\n label: styles['filter-chip__label']\n }}\n onDelete={onDelete}\n />\n );\n};\n\nexport default FilterChip;\n","import {makeStyles} from '@mui/styles';\n\nexport const useStyles = makeStyles({\n dropDownEditor: {\n marginTop: '8px',\n marginBottom: '4px'\n },\n selectorRoot: {\n paddingTop: '11.5px',\n paddingBottom: '12.5px',\n lineHeight: '16px'\n }\n});\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport classnames from 'classnames';\nimport {__, assoc, pipe} from 'ramda';\nimport {checkIfOptionHasValues, FilterType} from '@reltio/mdm-sdk';\nimport DropDownEditor from '../DropDownEditor/DropDownEditor';\nimport FilterValueEditor from './FilterValueEditor';\nimport {commonTextFieldProps, useSelectStyles} from '../constants';\nimport {useStyles} from './styles';\n\nconst FilterEditor = ({value, onChange, filterOptions, dataTypeDefinition, classes, valueEditorProps}) => {\n const selectStyles = useSelectStyles();\n const styles = useStyles();\n const [firstOption] = filterOptions;\n const filterOption = value.filter || firstOption.value;\n const filter = {...value, filter: filterOption};\n const canFilterAcceptValues = checkIfOptionHasValues(filterOption);\n return (\n <>\n <DropDownEditor\n TextFieldProps={commonTextFieldProps}\n className={classnames(classes.option, styles.dropDownEditor)}\n value={filterOption}\n entries={filterOptions}\n onChange={pipe(assoc('filter', __, filter), assoc('values', []), onChange)}\n classes={{root: classnames(selectStyles.root, styles.selectorRoot), icon: selectStyles.icon}}\n />\n {canFilterAcceptValues && (\n <FilterValueEditor\n filter={filter}\n onChange={pipe(assoc('values', __, filter), onChange)}\n dataTypeDefinition={dataTypeDefinition}\n {...valueEditorProps}\n />\n )}\n </>\n );\n};\n\nFilterEditor.propTypes = {\n value: FilterType,\n onChange: PropTypes.func,\n filterOptions: PropTypes.arrayOf(\n PropTypes.shape({\n value: PropTypes.string,\n label: PropTypes.string\n })\n ),\n dataTypeDefinition: PropTypes.object,\n classes: PropTypes.object,\n valueEditorProps: PropTypes.object\n};\n\nexport default FilterEditor;\n","import ArrowDropDownIcon from '@mui/icons-material/ArrowDropDown';\nimport FilterChip from './FilterChip/FilterChip';\nimport FilterEditor from '../../editors/FilterEditor/FilterEditor';\nimport IconButton from '@mui/material/IconButton';\nimport Popover from '@mui/material/Popover';\nimport PropTypes from 'prop-types';\nimport React, {useRef, useState} from 'react';\nimport {ColumnFilterType} from '../../../constants';\nimport {defaultTo, pipe, pluck, prop, propEq} from 'ramda';\nimport {useStyles} from './styles';\nimport {\n getDataTypeDefinitionForFilterValue,\n getFilterOptionLabel,\n getFilterOptionsForDataTypeDefinition,\n Maybe,\n validateFilter\n} from '@reltio/mdm-sdk';\nimport {columnFilterToMdmFilter, mdmFilterToColumnFilter} from './helpers';\n\nconst ColumnFilter = ({columnId, dataTypeDefinition, filter, filterOptionsData, onFilter}) => {\n const styles = useStyles();\n\n const [anchorEl, setAnchorEl] = useState(null);\n const openFilterPopup = (event) => setAnchorEl(event.currentTarget);\n const closeFilterPopup = () => setAnchorEl(null);\n\n const [columnFilter, setColumnFilter] = useState(filter);\n const initColumnFilter = () => setColumnFilter(filter);\n\n const containerRef = useRef(null);\n const mdmFilter = columnFilterToMdmFilter({id: columnId, dataTypeDefinition}, columnFilter);\n const applyFilterChange = (newFilter) => {\n if (newFilter !== filter) {\n onFilter({columnId, filter: newFilter});\n }\n };\n const clearFilter = () => applyFilterChange();\n const applyChangesAndClose = () => {\n const isValidFilter = validateFilter(mdmFilter);\n isValidFilter ? applyFilterChange(columnFilter) : clearFilter();\n closeFilterPopup();\n };\n\n const handleValueEditorKeyPress = (event) => {\n if (event.key !== 'Enter') return;\n\n event.stopPropagation();\n event.preventDefault();\n applyChangesAndClose();\n };\n\n const getFilterOptionData = (filterOption) =>\n filterOptionsData && filterOptionsData.find(propEq('value', filterOption));\n\n const getFilterLabel = (filterOption) =>\n pipe(getFilterOptionData, prop('label'), defaultTo(getFilterOptionLabel(filterOption)))(filterOption);\n\n const getFilterDataTypeDefinition = (filterOption) =>\n pipe(\n getFilterOptionData,\n prop('dataTypeDefinition'),\n defaultTo(getDataTypeDefinitionForFilterValue(dataTypeDefinition, filterOption))\n )(filterOption);\n\n const filterOptions = Maybe.fromNull(filterOptionsData)\n .map(pluck('value'))\n .orSome(getFilterOptionsForDataTypeDefinition(dataTypeDefinition))\n .map((value) => ({\n value,\n label: getFilterLabel(value)\n }));\n\n return (\n <div ref={containerRef} className={styles.columnFilter}>\n {filter && (\n <FilterChip\n filterValue={filter.value}\n filterOption={filterOptions.find(propEq('value', filter.filter))}\n onDelete={clearFilter}\n dataTypeDefinition={getFilterDataTypeDefinition(filter.filter)}\n />\n )}\n <IconButton className={styles.dropDownButton} onClick={openFilterPopup} disableFocusRipple size=\"large\">\n <ArrowDropDownIcon />\n </IconButton>\n <Popover\n PaperProps={{\n style: {\n width: `${containerRef.current ? containerRef.current.getBoundingClientRect().width : 0}px`\n }\n }}\n open={!!anchorEl}\n anchorEl={anchorEl}\n anchorOrigin={{\n vertical: 'bottom',\n horizontal: 'right'\n }}\n transformOrigin={{\n vertical: 'top',\n horizontal: 'right'\n }}\n classes={{paper: styles.filterMenu}}\n onClose={applyChangesAndClose}\n TransitionProps={{\n onEnter: initColumnFilter\n }}\n >\n <FilterEditor\n classes={{option: styles['filter-editor__option']}}\n value={mdmFilter}\n onChange={pipe(mdmFilterToColumnFilter, setColumnFilter)}\n filterOptions={filterOptions}\n dataTypeDefinition={getFilterDataTypeDefinition(mdmFilter.filter)}\n valueEditorProps={{\n TextFieldProps: {\n onKeyPress: handleValueEditorKeyPress\n },\n fullWidth: true\n }}\n />\n </Popover>\n </div>\n );\n};\n\nColumnFilter.propTypes = {\n columnId: PropTypes.string,\n dataTypeDefinition: PropTypes.object,\n filter: ColumnFilterType,\n onFilter: PropTypes.func,\n filterOptionsData: PropTypes.arrayOf(\n PropTypes.shape({\n value: PropTypes.string,\n label: PropTypes.string,\n dataTypeDefinition: PropTypes.object\n })\n )\n};\n\nexport default ColumnFilter;\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nimport ColumnFilter from '../../ColumnFilter/ColumnFilter';\nimport {useStyles as useColumnFilterStyles} from '../../ColumnFilter/styles';\n\nconst withFilter = ({filter, onFilter, filterable, filterOptions, dataTypeDefinition}) => (HeadCellRenderer) => {\n const HeadCellRendererWithFilter = (props) => {\n const {\n headCellData: {id: columnId}\n } = props;\n const styles = useColumnFilterStyles();\n const columnFilter = filterable ? (\n <ColumnFilter\n columnId={columnId}\n dataTypeDefinition={dataTypeDefinition}\n filter={filter}\n filterOptionsData={filterOptions}\n onFilter={onFilter}\n />\n ) : (\n <div className={styles.columnFilter} />\n );\n return <HeadCellRenderer {...props} columnFilter={columnFilter} />;\n };\n HeadCellRendererWithFilter.propTypes = {\n headCellData: PropTypes.shape({\n id: PropTypes.string\n })\n };\n return HeadCellRendererWithFilter;\n};\n\nexport default withFilter;\n","import {\n __,\n addIndex,\n always,\n assoc,\n chain,\n curry,\n dropLast,\n groupBy,\n join,\n keys,\n length,\n omit,\n pickBy,\n pipe,\n propOr,\n reduce,\n split,\n sortBy,\n identity,\n sum,\n toPairs,\n unless,\n unnest,\n values,\n zip\n} from 'ramda';\n\nconst TOTAL_ROW_SPAN_KEY = 'total';\nconst NESTED_KEY_DELIMITER = '.';\n\nconst getSiblingSubRowsKeyBySubRowKey = pipe(split(NESTED_KEY_DELIMITER), dropLast(1), join(NESTED_KEY_DELIMITER));\n\nconst getParentRowKeyBySiblingsSubRowsKey = pipe(\n split(NESTED_KEY_DELIMITER),\n dropLast(1),\n join(NESTED_KEY_DELIMITER),\n unless(length, always(TOTAL_ROW_SPAN_KEY))\n);\n\nconst getParentRowKeyBySubRowKey = pipe(getSiblingSubRowsKeyBySubRowKey, getParentRowKeyBySiblingsSubRowsKey);\n\nconst countParentSpanByAllSubRows = (rowSpanData, siblingSubRowsKey) =>\n pipe(\n pickBy((_val, key) => getSiblingSubRowsKeyBySubRowKey(key) === siblingSubRowsKey),\n values,\n sum\n )(rowSpanData);\n\nconst calcParentRowSpan = (rowSpanData, subRowKey) => {\n const parentKey = getParentRowKeyBySubRowKey(subRowKey);\n const currentParentSpan = propOr(0, parentKey, rowSpanData);\n const actualParentSpan = countParentSpanByAllSubRows(rowSpanData, getSiblingSubRowsKeyBySubRowKey(subRowKey));\n\n if (actualParentSpan > currentParentSpan) {\n const nextRowSpanData = assoc(parentKey, actualParentSpan, rowSpanData);\n return parentKey === TOTAL_ROW_SPAN_KEY ? nextRowSpanData : calcParentRowSpan(nextRowSpanData, parentKey);\n } else {\n return rowSpanData;\n }\n};\n\nconst addNestedKey = (rowSpanData, nestedKey) => calcParentRowSpan({...rowSpanData, [nestedKey]: 1}, nestedKey);\n\nconst validateParentRowSpan = (rowSpanData, [siblingSubRowsKey, subRowsKeys]) => {\n const parentKey = getParentRowKeyBySiblingsSubRowsKey(siblingSubRowsKey);\n const currentParentSpan = propOr(0, parentKey, rowSpanData);\n const actualParentSpan = countParentSpanByAllSubRows(rowSpanData, siblingSubRowsKey);\n const spanDiff = currentParentSpan - actualParentSpan;\n\n if (spanDiff > 0) {\n const lowestSubRowKey = `${siblingSubRowsKey}${NESTED_KEY_DELIMITER}${subRowsKeys.length - 1}`;\n const lowestSubRowSpan = rowSpanData[lowestSubRowKey];\n return assoc(lowestSubRowKey, lowestSubRowSpan + spanDiff, rowSpanData);\n } else {\n return rowSpanData;\n }\n};\n\nconst validateRowSpanData = (rowSpanData) =>\n pipe(\n omit([TOTAL_ROW_SPAN_KEY]),\n keys,\n sortBy(identity),\n groupBy(getSiblingSubRowsKeyBySubRowKey),\n toPairs,\n reduce(validateParentRowSpan, rowSpanData)\n )(rowSpanData);\n\nconst calcRowSpansForNestedKeys = pipe(reduce(addNestedKey, {}), validateRowSpanData);\n\nconst chainWithIndex = addIndex(chain);\nconst flattenNestedColumnValues = (values, indexPath = []) => {\n const [head] = values;\n return Array.isArray(head)\n ? chainWithIndex((value, index) => flattenNestedColumnValues(value, [...indexPath, index]), values)\n : {indexPath, values};\n};\n\nconst getNestedKeyForNestedColumnCell = curry((columnNestedPath, cell) =>\n pipe(zip(__, cell.indexPath), unnest, join(NESTED_KEY_DELIMITER))(columnNestedPath)\n);\n\nexport {\n calcRowSpansForNestedKeys,\n validateRowSpanData,\n TOTAL_ROW_SPAN_KEY,\n flattenNestedColumnValues,\n getSiblingSubRowsKeyBySubRowKey,\n getParentRowKeyBySiblingsSubRowsKey,\n getNestedKeyForNestedColumnCell\n};\n","import DefaultCellValueRenderer from '../cell-value-renderers/DefaultCellValueRenderer';\nimport withFilter from '../HOCs/withFilter';\nimport {\n calcRowSpansForNestedKeys,\n flattenNestedColumnValues,\n getNestedKeyForNestedColumnCell,\n TOTAL_ROW_SPAN_KEY\n} from './nestedHelpers';\nimport {\n add,\n always,\n assoc,\n chain,\n evolve,\n isEmpty,\n isNil,\n map,\n mapObjIndexed,\n max,\n pipe,\n pluck,\n prop,\n propEq,\n propOr,\n reduce,\n reject,\n slice,\n uniq,\n unless,\n values\n} from 'ramda';\nimport {wrapInArrayIfNeeded} from '@reltio/mdm-sdk';\nimport DefaultHeadCellRenderer from 'react-components/dist/Table/DefaultHeadCellRenderer/DefaultHeadCellRenderer';\nimport withFilterAtBottom from '../HOCs/withFilterAtBottom';\n\nconst applyCellRendererToColumnCells = (columnsData, renderRowCell, rowIndex, rowValue) => (cells, columnId) => {\n const columnIndex = columnsData.findIndex(propEq('id', columnId));\n const columnData = columnsData[columnIndex];\n const {rowCellValueRenderer: CellValueRenderer = DefaultCellValueRenderer} = columnsData[columnIndex];\n return cells.map((cell, cellIndex) => ({\n ...cell,\n values: renderRowCell({\n columnIndex,\n columnData,\n rowIndex,\n rowValue,\n cellIndex,\n cell,\n CellValueRenderer\n })\n }));\n};\n\nconst applyCellRenderer = pipe(applyCellRendererToColumnCells, mapObjIndexed);\n\nconst calcHeightForColumnCells = (columnsData, getRowCellHeight, rowIndex, rowValue) => (cells, columnId) => {\n const columnIndex = columnsData.findIndex(propEq('id', columnId));\n const columnData = columnsData[columnIndex];\n return cells.map((cell, cellIndex) => ({\n ...cell,\n height: getRowCellHeight({columnIndex, columnData, rowIndex, rowValue, cellIndex, cell})\n }));\n};\n\nconst calcHeights = (columnsData, getRowCellHeight, rowIndex, rowValue) => (rowData) =>\n getRowCellHeight\n ? mapObjIndexed(calcHeightForColumnCells(columnsData, getRowCellHeight, rowIndex, rowValue), rowData)\n : rowData;\n\nconst addRowSpansToColumnCells = (rowSpansData) =>\n map((cell) => ({...cell, rowSpan: rowSpansData[cell.nestedKey || TOTAL_ROW_SPAN_KEY]}));\n\nconst getNestedKeysFromRowCells = pipe(chain(pluck('nestedKey')), reject(isNil), uniq);\n\nconst calcRowSpansData = pipe(values, getNestedKeysFromRowCells, calcRowSpansForNestedKeys);\n\nconst calcRowSpans = (rowData) => {\n const rowSpansData = calcRowSpansData(rowData);\n return isEmpty(rowSpansData) ? rowData : map(addRowSpansToColumnCells(rowSpansData), rowData);\n};\n\nconst calcNestedKeys = (columnNestedPath) =>\n map((cell) => ({\n ...cell,\n nestedKey: getNestedKeyForNestedColumnCell(columnNestedPath, cell)\n }));\n\nconst parseNestedColumnValues = (columnNestedPath, nestedValues) =>\n pipe(flattenNestedColumnValues, calcNestedKeys(columnNestedPath))(nestedValues);\n\nconst getCellValues = (columnNestedPath, columnValues) =>\n columnNestedPath && !isEmpty(columnValues)\n ? parseNestedColumnValues(columnNestedPath, columnValues)\n : [{values: wrapInArrayIfNeeded(columnValues)}];\n\nconst buildRowValues = (rowValue) =>\n reduce((acc, {id, nestedPath}) => assoc(id, getCellValues(nestedPath, rowValue[id]), acc), {});\n\nconst applyValuesCountConstraint = (maxValuesCount) =>\n unless(\n () => maxValuesCount === Infinity,\n map(\n pipe(\n reject(({indexPath}) => indexPath && indexPath.some((index) => index > maxValuesCount - 1)),\n map(\n evolve({\n values: slice(0, maxValuesCount)\n })\n )\n )\n )\n );\n\nconst defaultGetIdFromRowValue = (_, rowIndex) => rowIndex;\n\nconst getTableRowsData = (\n rowValues,\n columnsData,\n renderRowCell,\n getRowCellHeight,\n getRowMaxValuesCount = always(Infinity),\n getIdFromRowValue = defaultGetIdFromRowValue\n) =>\n rowValues.map((rowValue, rowIndex) =>\n pipe(\n buildRowValues(rowValue),\n applyValuesCountConstraint(getRowMaxValuesCount(rowIndex)),\n calcRowSpans,\n calcHeights(columnsData, getRowCellHeight, rowIndex, rowValue),\n applyCellRenderer(columnsData, renderRowCell, rowIndex, rowValue),\n (val) => ({data: val, id: getIdFromRowValue(rowValue, rowIndex)})\n )(columnsData)\n );\n\nconst getTableHeadData = (columnsData, filters, onFilter) =>\n columnsData.map(\n ({\n id,\n label,\n description,\n sortable,\n filterable = true,\n resizable,\n draggable,\n autoResize = true,\n initialWidth,\n minWidth,\n dataTypeDefinition,\n filterOptions,\n headCellRenderer = withFilterAtBottom(DefaultHeadCellRenderer)\n }) => ({\n id,\n label,\n description,\n sortable,\n resizable,\n draggable,\n initialWidth,\n minWidth,\n autoResize,\n renderer: unless(\n () => isNil(filters),\n withFilter({\n dataTypeDefinition,\n filterable,\n filter: prop(id, filters),\n filterOptions,\n onFilter\n })\n )(headCellRenderer)\n })\n );\n\nconst calcMaxValuesCount = reduce((maxCount, cellValues) => {\n const maxSubNestedValuesCount = pipe(chain(propOr([], 'indexPath')), map(add(1)), reduce(max, 0))(cellValues);\n const maxPlainValuesCount = pipe(pluck('values'), pluck('length'), reduce(max, 0))(cellValues);\n return Math.max(maxCount, maxSubNestedValuesCount, maxPlainValuesCount);\n}, 0);\n\nconst getMaxRowValuesCount = (columnsData, rowValue) => {\n return pipe(buildRowValues(rowValue, Infinity), values, calcMaxValuesCount)(columnsData);\n};\n\nexport {getTableRowsData, getTableHeadData, getMaxRowValuesCount};\n","import {DataTypes} from '@reltio/mdm-sdk';\n\nconst BLOB_HEIGHT = 100;\nconst IMAGE_HEIGHT = 64;\nconst PADDING = 15;\n\nconst defaultGetRowCellHeight = ({columnData, cell}) => {\n const valuesCount = cell.values.length;\n switch (columnData?.dataTypeDefinition?.type) {\n case DataTypes.TYPE_BLOB:\n return BLOB_HEIGHT * valuesCount;\n case DataTypes.TYPE_IMAGE:\n return (PADDING + IMAGE_HEIGHT) * valuesCount + PADDING;\n case DataTypes.TYPE_REFERENCE:\n return 48 * Math.max(valuesCount, 1);\n default:\n return 33 * Math.max(valuesCount, 1) + PADDING;\n }\n};\n\nexport default defaultGetRowCellHeight;\n","import React from 'react';\n\nconst defaultRenderRowCell = ({cell, CellValueRenderer, ...otherProps}) =>\n cell.values.map((value, index) => <CellValueRenderer key={index} value={value} {...otherProps} />);\n\nexport default defaultRenderRowCell;\n","import {useCallback, useMemo, useState} from 'react';\n\nimport {equals, filter, remove} from 'ramda';\nimport {getTableRowsData, getMaxRowValuesCount} from '../helpers/dataHelpers';\nimport {useDidUpdateEffect, usePrevious} from '../../../../hooks';\nimport {\n ColumnData,\n ElementsRowsData,\n GetRowCellHeight,\n RenderRowCell,\n RowValue,\n TableRowsData,\n RowId\n} from '../../types';\n\ntype Props = {\n rowsData: ElementsRowsData;\n columnsData: ColumnData[];\n renderRowCell: RenderRowCell;\n getRowCellHeight: GetRowCellHeight;\n maxRowValuesCount: number;\n getIdFromRowValue?: (rowValue: RowValue, rowIndex: number) => RowId;\n};\n\nconst useCollapsibleTableRows = ({\n rowsData,\n columnsData,\n renderRowCell,\n getRowCellHeight,\n maxRowValuesCount,\n getIdFromRowValue\n}: Props) => {\n const [expandedIndexes, setExpandedIndexes] = useState<Array<number>>([]);\n\n const getRowMaxValuesCount = useCallback(\n (rowIndex) => {\n return expandedIndexes.includes(rowIndex) ? Infinity : maxRowValuesCount;\n },\n [expandedIndexes, maxRowValuesCount]\n );\n\n const tableRowsData: TableRowsData = useMemo(\n () =>\n getTableRowsData(\n rowsData,\n columnsData,\n renderRowCell,\n getRowCellHeight,\n getRowMaxValuesCount,\n getIdFromRowValue\n ),\n [rowsData, columnsData, renderRowCell, getRowCellHeight, getRowMaxValuesCount, getIdFromRowValue]\n );\n\n const toggleRowCollapse = useCallback((rowIndex: number) => {\n setExpandedIndexes((expandedIndexes) => {\n const index = expandedIndexes.findIndex(equals(rowIndex));\n return index === -1 ? expandedIndexes.concat(rowIndex) : remove(index, 1, expandedIndexes);\n });\n }, []);\n\n const getIsRowCollapsible = useCallback(\n (rowValue: Record<string, unknown>) => {\n return getMaxRowValuesCount(columnsData, rowValue) > maxRowValuesCount;\n },\n [maxRowValuesCount, columnsData]\n );\n\n const getIsRowCollapsed = useCallback(\n (rowIndex: number) => {\n return !expandedIndexes.includes(rowIndex);\n },\n [expandedIndexes]\n );\n\n const collapseContextValue = useMemo(\n () => ({\n maxRowValuesCount,\n toggleRowCollapse,\n getIsRowCollapsible,\n getIsRowCollapsed\n }),\n [maxRowValuesCount, toggleRowCollapse, getIsRowCollapsible, getIsRowCollapsed]\n );\n\n const prevRowsData = usePrevious(rowsData);\n useDidUpdateEffect(() => {\n if (expandedIndexes.length > 0) {\n setExpandedIndexes(\n filter((index) => {\n const rowValue = rowsData[index] ?? ({} as RowValue);\n const prevRowValue = prevRowsData[index] ?? ({} as RowValue);\n return rowValue.rawValue === prevRowValue.rawValue && getIsRowCollapsible(rowValue);\n })\n );\n }\n }, [rowsData]);\n\n return {tableRowsData, collapseContextValue};\n};\n\nexport default useCollapsibleTableRows;\n","import {buildFilterQueryString, Maybe} from '@reltio/mdm-sdk';\nimport {propEq} from 'ramda';\nimport {ColumnData, ColumnFilter} from '../types';\n\nconst columnFilterToMdmFilter = (\n columnData: ColumnData,\n columnFilter: ColumnFilter = {} as unknown as ColumnFilter\n) => ({\n fieldName: columnData.id,\n filter: columnFilter.filter,\n values: [columnFilter.value],\n type: columnData.dataTypeDefinition.type\n});\n\nconst mdmFilterToColumnFilter = ({filter, values}) => ({filter, value: values[0]});\n\nconst buildColumnsFilter = (columnsData: ColumnData[], filters?: Record<string, ColumnFilter>): string =>\n Maybe.fromNull(filters)\n .map((filters) =>\n Object.entries(filters).map(([columnId, columnFilter]) => {\n const columnData = columnsData.find(propEq('id', columnId));\n return columnFilterToMdmFilter(columnData, columnFilter);\n })\n )\n .map<string>(buildFilterQueryString())\n .orSome('');\n\nexport {buildColumnsFilter, columnFilterToMdmFilter, mdmFilterToColumnFilter};\n","import {makeStyles} from '@mui/styles';\n\nexport const COLUMN_FILTER_HEIGHT = 40;\n\nexport const useStyles = makeStyles({\n columnFilter: {\n backgroundColor: 'rgba(0,0,0,0.03)',\n display: 'flex',\n height: `${COLUMN_FILTER_HEIGHT}px`,\n alignItems: 'center'\n },\n dropDownButton: {\n marginLeft: 'auto',\n padding: '6px'\n },\n filterMenu: {\n marginTop: '3px',\n borderRadius: '2px',\n padding: '15px 20px',\n boxSizing: 'border-box',\n display: 'flex',\n flexDirection: 'column',\n minWidth: '454px'\n },\n 'filter-editor__option': {\n fontSize: '13px',\n color: 'rgba(0,0,0,0.54)'\n }\n});\n","import {makeStyles} from '@mui/styles';\n\nexport const useStyles = makeStyles({\n container: {\n display: 'flex',\n flexDirection: 'column',\n minHeight: '182px'\n },\n dateRangeContainer: {\n padding: '0px 16px'\n },\n dateInput: {\n margin: '0 7px'\n }\n});\n","import React, {forwardRef, useRef, useState} from 'react';\nimport i18n from 'ui-i18n';\nimport {nanoid} from 'nanoid';\nimport {pathOr} from 'ramda';\nimport {DataTypes} from '@reltio/mdm-sdk';\nimport Button from '@mui/material/Button';\nimport DialogTitle from '@mui/material/DialogTitle';\nimport DialogContent from '@mui/material/DialogContent';\nimport DialogActions from '@mui/material/DialogActions';\nimport TimestampEditor from '../editors/TimestampEditor/TimestampEditor';\nimport DateEditor from '../editors/DateEditor/DateEditor';\n\nimport {useStyles} from './styles';\n\nconst START_DATE = 0;\nconst END_DATE = 1;\n\nconst getDate = (values: Values, index: number) => pathOr(null, [index], values);\n\ntype Values = [Date, Date];\ntype Props = {\n onApply: ([startDate, endDate]: Values) => void;\n values?: Values;\n type?: string;\n minDate?: Date;\n maxDate?: Date;\n};\n\nconst DateRangePicker = forwardRef<HTMLDivElement, Props>(({onApply, values, type, minDate, maxDate}: Props, ref) => {\n const styles = useStyles();\n\n const editorFromId = useRef(nanoid());\n const editorToId = useRef(nanoid());\n\n const [startDate, setStartDate] = useState<Date>(null);\n const [endDate, setEndDate] = useState<Date>(null);\n\n React.useEffect(() => {\n setStartDate(getDate(values, START_DATE));\n setEndDate(getDate(values, END_DATE));\n }, [values]);\n\n const ComponentEditor = type === DataTypes.TYPE_TIMESTAMP ? TimestampEditor : DateEditor;\n\n const headerTitle = type === DataTypes.TYPE_TIMESTAMP ? i18n.text('Pick date and time') : i18n.text('Pick date');\n\n const selectStartDateHandler = (value: Date) => {\n setStartDate(value);\n };\n\n const selectEndDateHandler = (value: Date) => {\n setEndDate(value);\n };\n\n const onUpdate = () => {\n if (startDate && endDate && startDate > endDate) {\n onApply([endDate, startDate]);\n } else {\n onApply([startDate, endDate]);\n }\n };\n\n const onTabStopPropagation = (e) => e.key === 'Tab' && e.stopPropagation();\n\n return (\n <div className={styles.container} ref={ref} onKeyDown={onTabStopPropagation}>\n <DialogTitle>{headerTitle}</DialogTitle>\n <DialogContent className={styles.dateRangeContainer}>\n <ComponentEditor\n slotProps={{\n textField: {\n id: editorFromId.current,\n variant: 'filled',\n size: 'small',\n className: styles.dateInput\n }\n }}\n label={i18n.text('From')}\n value={startDate}\n onChange={selectStartDateHandler}\n minDate={minDate}\n maxDate={maxDate}\n />\n <ComponentEditor\n slotProps={{\n textField: {\n id: editorToId.current,\n variant: 'filled',\n size: 'small',\n className: styles.dateInput\n }\n }}\n label={i18n.text('To')}\n value={endDate}\n onChange={selectEndDateHandler}\n minDate={minDate}\n maxDate={maxDate}\n />\n </DialogContent>\n <DialogActions>\n <Button color=\"primary\" onClick={onUpdate}>\n {i18n.text('Update')}\n </Button>\n </DialogActions>\n </div>\n );\n});\n\nDateRangePicker.displayName = 'DateRangePicker';\n\nexport default DateRangePicker;\n","import PropTypes from 'prop-types';\nimport React from 'react';\nimport classnames from 'classnames';\nimport {useArrowIndicatorStyles} from './arrowIndicatorStyles';\nimport ArrowDropDownIcon from '@mui/icons-material/ArrowDropDown';\nimport SmallIconButton from '../SmallIconButton/SmallIconButton';\n\nconst DropdownIndicatorWithIconButton = (props) => {\n const {\n selectProps: {classes, menuIsOpen},\n innerProps\n } = props;\n\n const styles = useArrowIndicatorStyles();\n\n return (\n <SmallIconButton\n {...innerProps}\n icon={ArrowDropDownIcon}\n className={classes.dropdownIndicator}\n size=\"L\"\n iconClassName={classnames({[styles.expanded]: menuIsOpen})}\n />\n );\n};\n\nDropdownIndicatorWithIconButton.propTypes = {\n innerProps: PropTypes.object.isRequired,\n selectProps: PropTypes.shape({\n classes: PropTypes.shape({\n dropdownIndicator: PropTypes.string\n }).isRequired,\n menuIsOpen: PropTypes.bool.isRequired\n }).isRequired\n};\n\nexport default DropdownIndicatorWithIconButton;\n","import {makeStyles} from '@mui/styles';\n\nexport const useStyles = makeStyles((theme) => ({\n dropdownIndicator: {\n transition: 'transform .15s ease',\n cursor: 'pointer',\n color: 'rgba(0, 0, 0, 0.54)'\n },\n underline: {\n '&:after': {\n transform: 'scaleX(1)'\n }\n },\n inputLabel: {\n color: theme.palette.primary.main\n },\n adornedEnd: {\n paddingRight: 4\n },\n uppercase: {\n '& > input': {\n textTransform: 'uppercase'\n }\n },\n inputRoot: {\n fontSize: '14px',\n letterSpacing: 0,\n lineHeight: '16px'\n }\n}));\n","import React, {forwardRef} from 'react';\nimport classnames from 'classnames';\nimport {isNil} from 'ramda';\nimport {DatePeriod} from '@reltio/mdm-sdk';\nimport TextField, {TextFieldProps} from '@mui/material/TextField';\nimport DropdownIndicatorWithIconButton from '../../commonReactSelectComponents/DropdownIndicatorWithIconButton';\nimport withDateRangeSelector from '../../../HOCs/withDateRangeSelector/withDateRangeSelector';\n\nimport {useStyles} from './styles';\n\nexport type DateRangeEditorProps = {\n label?: string;\n values?: DatePeriod | string;\n editorLabel?: string;\n editorPlaceholder?: string;\n TextFieldProps?: TextFieldProps;\n classes?: {\n dropdownIndicator?: string;\n root?: string;\n };\n className?: string;\n isPickingDate?: boolean;\n isMenuOpen?: boolean;\n onMenuToggle?: () => void;\n};\n\nconst DateRangeEditor = forwardRef(\n (\n {\n label,\n editorLabel,\n editorPlaceholder,\n values,\n TextFieldProps,\n isPickingDate,\n isMenuOpen,\n onMenuToggle,\n ...otherProps\n }: DateRangeEditorProps,\n ref: React.Ref<HTMLDivElement>\n ) => {\n const styles = useStyles();\n const {classes} = otherProps;\n\n return (\n <TextField\n {...TextFieldProps}\n {...otherProps}\n ref={ref}\n label={label}\n value={TextFieldProps?.value || editorLabel}\n onClick={onMenuToggle}\n variant=\"filled\"\n size=\"small\"\n InputProps={{\n endAdornment: (\n <DropdownIndicatorWithIconButton\n selectProps={{\n classes: {\n dropdownIndicator: classnames(styles.dropdownIndicator, classes?.dropdownIndicator)\n },\n menuIsOpen: isMenuOpen\n }}\n innerProps={{}}\n />\n ),\n classes: {\n root: classnames(styles.inputRoot, {\n [styles.uppercase]: !isPickingDate && Array.isArray(values)\n }),\n underline: classnames({[styles.underline]: isMenuOpen}),\n adornedEnd: styles.adornedEnd\n },\n disableUnderline: isNil(values),\n readOnly: true,\n ...TextFieldProps?.InputProps\n }}\n InputLabelProps={{\n classes: {\n root: isMenuOpen ? styles.inputLabel : undefined\n },\n shrink: !isNil(label)\n }}\n placeholder={editorPlaceholder}\n />\n );\n }\n);\n\nDateRangeEditor.displayName = 'DateRangeEditor';\n\nexport default withDateRangeSelector(DateRangeEditor);\n","import {makeStyles} from '@mui/styles';\n\nexport const useStyles = makeStyles({\n 'range-editor': {\n width: '100%'\n },\n 'range-editor__control': {\n marginTop: '10px',\n paddingTop: '15px',\n '& > label + *': {\n marginTop: 0\n }\n },\n 'range-inline-editor': {\n display: 'flex',\n alignItems: 'center',\n flexGrow: 1\n },\n 'range-editor__dash': {\n padding: '0 5px'\n }\n});\n","import React, {useRef} from 'react';\nimport PropTypes from 'prop-types';\nimport {nanoid} from 'nanoid';\nimport FormControl from '@mui/material/FormControl';\nimport InputLabel from '@mui/material/InputLabel';\nimport DataTypeValueEditor from '../DataTypeValueEditor/DataTypeValueEditor';\nimport {__, pipe, update} from 'ramda';\nimport {useStyles} from './styles';\nimport i18n from 'ui-i18n';\n\nconst RangeDataTypeValueEditor = ({value = new Array(2), onChange, orientation = 'vertical', ...otherProps}) => {\n const styles = useStyles();\n const rangeEditorFromId = useRef(nanoid());\n const rangeEditorToId = useRef(nanoid());\n\n const fromEditor = (\n <DataTypeValueEditor\n id={rangeEditorFromId.current}\n value={value[0]}\n onChange={pipe(update(0, __, value), onChange)}\n {...otherProps}\n />\n );\n\n const toEditor = (\n <DataTypeValueEditor\n id={rangeEditorToId.current}\n value={value[1]}\n onChange={pipe(update(1, __, value), onChange)}\n {...otherProps}\n />\n );\n\n if (orientation === 'horizontal') {\n return (\n <div className={styles['range-inline-editor']}>\n {fromEditor}\n <div className={styles['range-editor__dash']}>{'—'}</div>\n {toEditor}\n </div>\n );\n } else {\n return (\n <div className={styles['range-editor']}>\n <FormControl variant=\"standard\" fullWidth={true} className={styles['range-editor__control']}>\n <InputLabel htmlFor={rangeEditorFromId.current} shrink={true}>\n {i18n.text('From')}\n </InputLabel>\n {fromEditor}\n </FormControl>\n <FormControl variant=\"standard\" fullWidth={true} className={styles['range-editor__control']}>\n <InputLabel htmlFor={rangeEditorToId.current} shrink={true}>\n {i18n.text('To')}\n </InputLabel>\n {toEditor}\n </FormControl>\n </div>\n );\n }\n};\n\nRangeDataTypeValueEditor.propTypes = {\n value: PropTypes.arrayOf(PropTypes.any),\n onChange: PropTypes.func,\n fieldName: PropTypes.string,\n orientation: PropTypes.oneOf(['horizontal', 'vertical']),\n dataTypeDefinition: PropTypes.object,\n classes: PropTypes.object\n};\n\nexport default RangeDataTypeValueEditor;\n","import DataTypeValueEditor from '../DataTypeValueEditor/DataTypeValueEditor';\nimport PropTypes from 'prop-types';\nimport React from 'react';\nimport i18n from 'ui-i18n';\nimport {\n DataTypes,\n FilterType,\n isDateRangeFilterOption,\n isDateRangeValue,\n isMultiValueOption,\n isRangeFilterOption,\n mapFilterValue,\n utils,\n wrapInArray\n} from '@reltio/mdm-sdk';\nimport {pipe} from 'ramda';\nimport RangeDataTypeValueEditor from '../RangeDataTypeValueEditor/RangeDataTypeValueEditor';\nimport DateRangeEditor from '../DateRangeEditor/DateRangeEditor';\n\nconst toEditorValue = (dataType) => (value) => {\n switch (dataType) {\n case DataTypes.TYPE_DATE:\n return isDateRangeValue(value) ? value : utils.dates.toLocalDate(value);\n case DataTypes.TYPE_LOCAL_DATE:\n case DataTypes.TYPE_TIMESTAMP:\n case DataTypes.TYPE_ACTIVENESS_DATE:\n return isDateRangeValue(value) ? value : new Date(value);\n default:\n return value;\n }\n};\n\nconst fromEditorValue = (dataType) => (value) => {\n switch (dataType) {\n case DataTypes.TYPE_DATE:\n return isDateRangeValue(value) ? value : Date.UTC(value.getFullYear(), value.getMonth(), value.getDate());\n case DataTypes.TYPE_LOCAL_DATE:\n case DataTypes.TYPE_ACTIVENESS_DATE:\n case DataTypes.TYPE_TIMESTAMP:\n return isDateRangeValue(value) ? value : value.valueOf();\n default:\n return value;\n }\n};\n\nconst FilterValueEditor = ({\n filter: {values = [], fieldName, filter},\n onChange,\n dataTypeDefinition,\n orientation,\n TextFieldProps,\n ...otherProps\n}) => {\n const {type: dataType} = dataTypeDefinition;\n\n const value = mapFilterValue(toEditorValue(dataType))(values[0]);\n const handleChange = pipe(mapFilterValue(fromEditorValue(dataType)), wrapInArray, onChange);\n\n if (isDateRangeFilterOption(filter)) {\n return (\n <DateRangeEditor\n {...otherProps}\n values={value}\n onChange={handleChange}\n dataTypeDefinition={dataTypeDefinition}\n label={i18n.text('Date Range')}\n />\n );\n } else if (isRangeFilterOption(filter)) {\n return (\n <RangeDataTypeValueEditor\n {...otherProps}\n value={value}\n onChange={handleChange}\n fieldName={fieldName}\n dataTypeDefinition={dataTypeDefinition}\n orientation={orientation}\n TextFieldProps={TextFieldProps}\n />\n );\n } else {\n const multipleProp = isMultiValueOption(filter) ? {multiple: true} : {};\n return (\n <DataTypeValueEditor\n {...otherProps}\n {...multipleProp}\n fieldName={fieldName}\n value={value}\n onChange={handleChange}\n dataTypeDefinition={dataTypeDefinition}\n TextFieldProps={TextFieldProps}\n />\n );\n }\n};\n\nFilterValueEditor.propTypes = {\n filter: FilterType,\n orientation: PropTypes.oneOf(['horizontal', 'vertical']),\n onChange: PropTypes.func,\n dataTypeDefinition: PropTypes.object,\n classes: PropTypes.object,\n TextFieldProps: PropTypes.object\n};\n\nexport default FilterValueEditor;\n"],"names":["convertValuesToDate","pipe","getDateRangeByValue","defaultTo","map","value","Date","useStyles","makeStyles","theme","paper","minWidth","menuItem","minHeight","menuText","color","palette","text","primary","fontSize","lineHeight","letterSpacing","dateFormat","moment","longDateFormat","Component","WithDateRangeSelector","props","values","options","getValuesDateRange","onChange","dataTypeDefinition","type","DataTypes","DateRangePickerProps","MenuProps","componentProps","rangeOptions","useMemo","Object","AllDateRangeValues","option","label","getRangeOptionLabel","inputRef","useRef","isPickingDate","setIsPickingDate","useState","open","setOpen","styles","onItemClick","handleToggle","useCallback","onCancel","isTimestamp","enhancePlaceHolder","timeFormat","replace","identity","format","getLocaleFormat","editorPlaceholder","toUpperCase","editorLabel","placeholder","cond","isEmptyValue","always","is","Array","dateTimeMask","isNil","formatDataTypeValue","formatValue","join","String","find","propEq","getEditorLabel","anchorOrigin","vertical","horizontal","transformOrigin","ref","onMenuToggle","isMenuOpen","Popover","anchorEl","current","onClose","elevation","DateRangePicker","onApply","Menu","variant","autoFocus","classes","MenuListProps","autoFocusItem","style","width","prop","MenuItem","key","onClick","className","Typography","root","displayName","BasicTable","forwardRef","columnsData","rowsData","context","sorting","onSort","renderRowCell","defaultRenderRowCell","getRowCellHeight","defaultGetRowCellHeight","filters","onFilter","headRowHeight","maxRowValuesCount","Infinity","autosizing","maxHeight","getIdFromRowValue","otherProps","tableHeadData","getTableHeadData","tableRowsData","collapseContextValue","useCollapsibleTableRows","toggleRowCollapse","getIsRowCollapsed","onStartDragRow","setTimeout","forEach","_","index","length","defaultRowHeight","fixHead","headData","sortField","sortOrder","COLUMN_FILTER_HEIGHT","BasicTableType","PropTypes","ColumnDataType","isRequired","SortingType","ColumnFilterType","defaultColumnWidth","defaultColumnMinWidth","highlightRow","cellBorder","dragColumnBody","dragColumnHead","draggableHeadCell","cellWrapper","cellContentWrapper","hoveredRowRightContentContainer","hoveredRowRightContentWrapper","propTypes","HeadCellRenderer","HeadCellRendererWithFilterAtBottom","columnFilter","display","flexDirection","height","flex","defaultWrapper","whiteSpace","overflow","textOverflow","padding","blobWrapper","position","overflowY","overflowX","boxSizing","stopPropagation","event","BlobRenderer","onScroll","DefaultCellValueRenderer","columnData","dataTypeValue","DataTypeValue","ExpandedValueTooltip","RowCollapseContext","React","TableContext","maxWidth","justifyContent","marginRight","backgroundColor","filterOption","filterValue","onDelete","attributePresentations","useMdmAttributePresentations","dateMask","useMdmDateMask","useMdmDateTimeMask","canFilterAcceptValues","checkIfOptionHasValues","optionLabel","convertedValue","mapFilterValue","filterLabel","getFilterValueLabel","Chip","dropDownEditor","marginTop","marginBottom","selectorRoot","paddingTop","paddingBottom","FilterEditor","filterOptions","valueEditorProps","selectStyles","useSelectStyles","firstOption","filter","DropDownEditor","TextFieldProps","commonTextFieldProps","classnames","entries","assoc","__","icon","FilterValueEditor","FilterType","ColumnFilter","columnId","filterOptionsData","setAnchorEl","setColumnFilter","containerRef","mdmFilter","columnFilterToMdmFilter","id","applyFilterChange","newFilter","clearFilter","applyChangesAndClose","validateFilter","getFilterOptionData","getFilterDataTypeDefinition","getDataTypeDefinitionForFilterValue","Maybe","pluck","orSome","getFilterOptionsForDataTypeDefinition","getFilterOptionLabel","IconButton","dropDownButton","currentTarget","disableFocusRipple","size","ArrowDropDown","PaperProps","getBoundingClientRect","filterMenu","TransitionProps","onEnter","mdmFilterToColumnFilter","onKeyPress","preventDefault","fullWidth","filterable","HeadCellRendererWithFilter","headCellData","useColumnFilterStyles","TOTAL_ROW_SPAN_KEY","NESTED_KEY_DELIMITER","getSiblingSubRowsKeyBySubRowKey","split","dropLast","getParentRowKeyBySiblingsSubRowsKey","unless","getParentRowKeyBySubRowKey","countParentSpanByAllSubRows","rowSpanData","siblingSubRowsKey","pickBy","_val","sum","calcParentRowSpan","subRowKey","parentKey","currentParentSpan","propOr","actualParentSpan","nextRowSpanData","validateParentRowSpan","subRowsKeys","spanDiff","lowestSubRowKey","lowestSubRowSpan","calcRowSpansForNestedKeys","reduce","nestedKey","omit","keys","sortBy","groupBy","toPairs","chainWithIndex","addIndex","chain","flattenNestedColumnValues","indexPath","head","isArray","getNestedKeyForNestedColumnCell","curry","columnNestedPath","cell","zip","unnest","applyCellRenderer","rowIndex","rowValue","cells","columnIndex","findIndex","rowCellValueRenderer","CellValueRenderer","cellIndex","mapObjIndexed","calcHeights","rowData","calcHeightForColumnCells","getNestedKeysFromRowCells","reject","uniq","calcRowSpansData","calcRowSpans","rowSpansData","isEmpty","rowSpan","addRowSpansToColumnCells","buildRowValues","acc","nestedPath","columnValues","nestedValues","calcNestedKeys","parseNestedColumnValues","wrapInArrayIfNeeded","applyValuesCountConstraint","maxValuesCount","some","evolve","slice","defaultGetIdFromRowValue","getTableRowsData","rowValues","getRowMaxValuesCount","val","data","description","sortable","resizable","draggable","autoResize","initialWidth","headCellRenderer","withFilterAtBottom","DefaultHeadCellRenderer","renderer","withFilter","calcMaxValuesCount","maxCount","cellValues","maxSubNestedValuesCount","add","max","maxPlainValuesCount","Math","getMaxRowValuesCount","valuesCount","expandedIndexes","setExpandedIndexes","includes","equals","concat","remove","getIsRowCollapsible","prevRowsData","usePrevious","useDidUpdateEffect","prevRowValue","rawValue","fieldName","buildColumnsFilter","buildFilterQueryString","alignItems","marginLeft","borderRadius","container","dateRangeContainer","dateInput","margin","getDate","pathOr","minDate","maxDate","editorFromId","nanoid","editorToId","startDate","setStartDate","endDate","setEndDate","ComponentEditor","TimestampEditor","DateEditor","headerTitle","i18n","onKeyDown","e","DialogTitle","DialogContent","slotProps","textField","DialogActions","Button","DropdownIndicatorWithIconButton","selectProps","menuIsOpen","innerProps","useArrowIndicatorStyles","ArrowDropDownIcon","dropdownIndicator","iconClassName","expanded","transition","cursor","underline","transform","inputLabel","main","adornedEnd","paddingRight","uppercase","textTransform","inputRoot","DateRangeEditor","TextField","InputProps","endAdornment","disableUnderline","readOnly","InputLabelProps","undefined","shrink","withDateRangeSelector","flexGrow","RangeDataTypeValueEditor","orientation","rangeEditorFromId","rangeEditorToId","fromEditor","DataTypeValueEditor","update","toEditor","FormControl","InputLabel","htmlFor","dataType","isDateRangeValue","utils","toEditorValue","handleChange","UTC","getFullYear","getMonth","valueOf","fromEditorValue","wrapInArray","isDateRangeFilterOption","isRangeFilterOption","multipleProp","isMultiValueOption","multiple"],"sourceRoot":""}
|