@reltio/remotes 1.4.1600 → 1.4.1602
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/1146.js +1 -1
- package/1148.js +1 -1
- package/1148.js.map +1 -1
- package/1334.js +1 -1
- package/1425.js +1 -1
- package/1425.js.map +1 -1
- package/1572.js +2 -0
- package/1572.js.map +1 -0
- package/1584.js +1 -1
- package/1584.js.map +1 -1
- package/1664.js +1 -1
- package/1707.js +1 -1
- package/1790.js +1 -1
- package/1840.js +1 -1
- package/1840.js.map +1 -1
- package/1946.js +1 -1
- package/1946.js.map +1 -1
- package/2066.js +1 -1
- package/2066.js.map +1 -1
- package/2201.js +1 -1
- package/2400.js +1 -1
- package/2463.js +1 -1
- package/2463.js.map +1 -1
- package/2579.js +1 -1
- package/2641.js +1 -1
- package/2641.js.map +1 -1
- package/2775.js +1 -1
- package/3096.js +1 -1
- package/3123.js +1 -1
- package/3348.js +1 -1
- package/3358.js +1 -1
- package/3358.js.map +1 -1
- package/3383.js +1 -1
- package/3383.js.map +1 -1
- package/3424.js +1 -1
- package/3424.js.map +1 -1
- package/3463.js +1 -1
- package/3469.js +1 -1
- package/3538.js +1 -1
- package/3538.js.map +1 -1
- package/356.js +1 -1
- package/3603.js +1 -1
- package/3603.js.map +1 -1
- package/3875.js +1 -1
- package/3875.js.map +1 -1
- package/3879.js +1 -1
- package/3902.js +1 -1
- package/3902.js.map +1 -1
- package/3926.js +1 -1
- package/3926.js.map +1 -1
- package/4212.js +1 -1
- package/4390.js +1 -1
- package/4390.js.map +1 -1
- package/4426.js +1 -1
- package/4426.js.map +1 -1
- package/4703.js +1 -1
- package/4703.js.map +1 -1
- package/4806.js +1 -1
- package/4826.js +1 -1
- package/50.js +1 -1
- package/5108.js +1 -1
- package/5108.js.map +1 -1
- package/5171.js +1 -1
- package/5225.js +2 -0
- package/5225.js.map +1 -0
- package/527.js +1 -1
- package/5617.js +1 -1
- package/584.js +1 -1
- package/6020.js +1 -1
- package/6287.js +1 -1
- package/6287.js.map +1 -1
- package/6606.js +1 -1
- package/6606.js.map +1 -1
- package/673.js +1 -1
- package/673.js.map +1 -1
- package/6799.js +1 -1
- package/68.js +1 -1
- package/6844.js +1 -1
- package/6853.js +1 -1
- package/6860.js +1 -1
- package/6903.js +1 -1
- package/7293.js +1 -1
- package/735.js +1 -1
- package/7422.js +1 -1
- package/7422.js.map +1 -1
- package/7436.js +1 -1
- package/764.js +1 -1
- package/764.js.map +1 -1
- package/7829.js +1 -1
- package/7896.js +1 -1
- package/8075.js +1 -1
- package/820.js +1 -1
- package/8207.js +1 -1
- package/8322.js +1 -1
- package/8360.js +1 -1
- package/8360.js.map +1 -1
- package/8565.js +1 -1
- package/8741.js +1 -1
- package/8741.js.map +1 -1
- package/9016.js +1 -1
- package/9251.js +1 -1
- package/9251.js.map +1 -1
- package/9283.js +1 -1
- package/9283.js.map +1 -1
- package/9309.js +1 -1
- package/9328.js +1 -1
- package/9397.js +1 -1
- package/9397.js.map +1 -1
- package/9470.js +1 -1
- package/9622.js +1 -1
- package/9622.js.map +1 -1
- package/9719.js +1 -1
- package/9736.js +1 -1
- package/9736.js.map +1 -1
- package/9854.js +1 -1
- package/9854.js.map +1 -1
- package/9861.js +1 -1
- package/987.js +1 -1
- package/9960.js +1 -1
- package/9960.js.map +1 -1
- package/main.js +1 -1
- package/package.json +1 -1
- package/remoteEntry.js +1 -1
- package/remoteEntry.js.map +1 -1
- package/7056.js +0 -2
- package/7056.js.map +0 -1
- package/9383.js +0 -2
- package/9383.js.map +0 -1
package/9283.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"9283.js","mappings":"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","sources":["webpack://@reltio/remotes/../../node_modules/@mui/x-date-pickers/AdapterMoment/AdapterMoment.js","webpack://@reltio/remotes/../components/src/components/BasicTableView/BasicTable/hooks/useDynamicRowCellHeight.ts","webpack://@reltio/remotes/../components/src/icons/Table.tsx","webpack://@reltio/remotes/../components/src/components/BasicTableView/BasicTableHeader/ColumnsSettings/ColumnsSettings.js","webpack://@reltio/remotes/../components/src/components/BasicTableView/BasicTableHeader/ColumnsSettings/styles.js","webpack://@reltio/remotes/../components/src/components/BasicTableView/BasicTableHeader/ColumnsSettings/ColumnListItem.js","webpack://@reltio/remotes/../components/src/components/BasicTableView/BasicTableHeader/ColumnsSettings/ColumnsSettingsPopup.tsx","webpack://@reltio/remotes/../components/src/components/BasicTableView/BasicTableHeader/ColumnsSettings/columnHelpers.js","webpack://@reltio/remotes/../components/src/icons/Filter.tsx","webpack://@reltio/remotes/../components/src/components/BasicTableView/BasicTableHeader/FilterButton/styles.js","webpack://@reltio/remotes/../components/src/components/BasicTableView/BasicTableHeader/FilterButton/FilterButton.js","webpack://@reltio/remotes/../components/src/components/BasicTableView/BasicTablePagination/styles.js","webpack://@reltio/remotes/../components/src/components/BasicTableView/BasicTablePagination/BasicTablePagination.js","webpack://@reltio/remotes/../components/src/components/BasicTableView/RowCellAutoSizer/RowCellAutoSizer.tsx","webpack://@reltio/remotes/../components/src/components/BasicTableView/viewState/basicTableViewState.js","webpack://@reltio/remotes/../components/src/components/BasicView/styles.ts","webpack://@reltio/remotes/../components/src/components/BasicView/BasicView.tsx","webpack://@reltio/remotes/../components/src/components/HideOnShrink/HideOnShrink.tsx","webpack://@reltio/remotes/../components/src/components/SelectorWithOnlyOptionAutoSelect/styles.js","webpack://@reltio/remotes/../components/src/components/SelectorWithOnlyOptionAutoSelect/SelectorWithOnlyOptionAutoSelect.js","webpack://@reltio/remotes/../components/src/components/Spacer/Spacer.js","webpack://@reltio/remotes/../components/src/components/VerticalDivider/VerticalDivider.js","webpack://@reltio/remotes/../components/src/components/ViewMoreToggle/styles.js","webpack://@reltio/remotes/../components/src/components/ViewMoreToggle/ViewMoreToggle.js","webpack://@reltio/remotes/../components/src/hooks/useActions.ts","webpack://@reltio/remotes/../components/src/hooks/useSavedStateForEntityType.ts","webpack://@reltio/remotes/../interactions/src/InteractionsTableView/helpers/filtersHelpers.ts","webpack://@reltio/remotes/../interactions/src/InteractionsTableView/helpers/tableHelpers.ts","webpack://@reltio/remotes/../interactions/src/InteractionsTableView/InteractionsTable/cell-renderers/styles.js","webpack://@reltio/remotes/../interactions/src/InteractionsTableView/InteractionsTable/cell-renderers/RowCellRenderer.js","webpack://@reltio/remotes/../interactions/src/InteractionsTableView/InteractionsTable/cell-renderers/HeadCellRenderer.js","webpack://@reltio/remotes/../interactions/src/InteractionsTableView/InteractionsTable/cell-renderers/ActorsRenderer.js","webpack://@reltio/remotes/../interactions/src/InteractionsTableView/InteractionsTable/cell-renderers/DefaultCellValueRenderer.js","webpack://@reltio/remotes/../interactions/src/InteractionsTableView/InteractionsTable/cell-renderers/BlobRenderer.js","webpack://@reltio/remotes/../interactions/src/InteractionsTableView/InteractionsTable/cell-renderers/LinkRenderer.js","webpack://@reltio/remotes/../interactions/src/InteractionsTableView/InteractionsTable/cell-renderers/AttributesRenderer.js","webpack://@reltio/remotes/../interactions/src/InteractionsTableView/InteractionsTable/helpers/dataHelpers.ts","webpack://@reltio/remotes/../interactions/src/InteractionsTableView/InteractionsTable/styles.ts","webpack://@reltio/remotes/../interactions/src/InteractionsTableView/InteractionsTable/InteractionsTable.tsx","webpack://@reltio/remotes/../interactions/src/InteractionsTableView/InteractionsTableHeader/styles.js","webpack://@reltio/remotes/../interactions/src/InteractionsTableView/InteractionsTableHeader/InteractionTypeSelector/InteractionTypeSelector.tsx","webpack://@reltio/remotes/../interactions/src/InteractionsTableView/InteractionsTableHeader/InteractionsTableHeader.js","webpack://@reltio/remotes/../interactions/src/InteractionsTableView/stateReducer.ts","webpack://@reltio/remotes/../interactions/src/InteractionsTableView/styles.ts","webpack://@reltio/remotes/../interactions/src/InteractionsTableView/index.tsx","webpack://@reltio/remotes/../interactions/src/InteractionsTableView/hooks/useInteractions.ts","webpack://@reltio/remotes/../interactions/src/index.tsx","webpack://@reltio/remotes/./src/interactions.ts"],"sourcesContent":["import _extends from \"@babel/runtime/helpers/esm/extends\";\n/* eslint-disable class-methods-use-this */\nimport defaultMoment from 'moment';\n// From https://momentjs.com/docs/#/displaying/format/\nconst formatTokenMap = {\n // Year\n Y: 'year',\n YY: 'year',\n YYYY: 'year',\n // Month\n M: {\n sectionType: 'month',\n contentType: 'digit',\n maxLength: 2\n },\n MM: 'month',\n MMM: {\n sectionType: 'month',\n contentType: 'letter'\n },\n MMMM: {\n sectionType: 'month',\n contentType: 'letter'\n },\n // Day of the month\n D: {\n sectionType: 'day',\n contentType: 'digit',\n maxLength: 2\n },\n DD: 'day',\n Do: {\n sectionType: 'day',\n contentType: 'digit-with-letter'\n },\n // Day of the week\n E: {\n sectionType: 'weekDay',\n contentType: 'digit',\n maxLength: 1\n },\n e: {\n sectionType: 'weekDay',\n contentType: 'digit',\n maxLength: 1\n },\n d: {\n sectionType: 'weekDay',\n contentType: 'digit',\n maxLength: 1\n },\n dd: {\n sectionType: 'weekDay',\n contentType: 'letter'\n },\n ddd: {\n sectionType: 'weekDay',\n contentType: 'letter'\n },\n dddd: {\n sectionType: 'weekDay',\n contentType: 'letter'\n },\n // Meridiem\n A: 'meridiem',\n a: 'meridiem',\n // Hours\n H: {\n sectionType: 'hours',\n contentType: 'digit',\n maxLength: 2\n },\n HH: 'hours',\n h: {\n sectionType: 'hours',\n contentType: 'digit',\n maxLength: 2\n },\n hh: 'hours',\n // Minutes\n m: {\n sectionType: 'minutes',\n contentType: 'digit',\n maxLength: 2\n },\n mm: 'minutes',\n // Seconds\n s: {\n sectionType: 'seconds',\n contentType: 'digit',\n maxLength: 2\n },\n ss: 'seconds'\n};\nconst defaultFormats = {\n year: 'YYYY',\n month: 'MMMM',\n monthShort: 'MMM',\n dayOfMonth: 'D',\n weekday: 'dddd',\n weekdayShort: 'ddd',\n hours24h: 'HH',\n hours12h: 'hh',\n meridiem: 'A',\n minutes: 'mm',\n seconds: 'ss',\n fullDate: 'll',\n fullDateWithWeekday: 'dddd, LL',\n keyboardDate: 'L',\n shortDate: 'MMM D',\n normalDate: 'D MMMM',\n normalDateWithWeekday: 'ddd, MMM D',\n monthAndYear: 'MMMM YYYY',\n monthAndDate: 'MMMM D',\n fullTime: 'LT',\n fullTime12h: 'hh:mm A',\n fullTime24h: 'HH:mm',\n fullDateTime: 'lll',\n fullDateTime12h: 'll hh:mm A',\n fullDateTime24h: 'll HH:mm',\n keyboardDateTime: 'L LT',\n keyboardDateTime12h: 'L hh:mm A',\n keyboardDateTime24h: 'L HH:mm'\n};\nconst MISSING_TIMEZONE_PLUGIN = ['Missing timezone plugin', 'To be able to use timezones, you have to pass the default export from `moment-timezone` to the `dateLibInstance` prop of `LocalizationProvider`', 'Find more information on https://mui.com/x/react-date-pickers/timezone/#moment-and-timezone'].join('\\n');\n\n/**\n * Based on `@date-io/moment`\n *\n * MIT License\n *\n * Copyright (c) 2017 Dmitriy Kovalenko\n *\n * Permission is hereby granted, free of charge, to any person obtaining a copy\n * of this software and associated documentation files (the \"Software\"), to deal\n * in the Software without restriction, including without limitation the rights\n * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n * copies of the Software, and to permit persons to whom the Software is\n * furnished to do so, subject to the following conditions:\n *\n * The above copyright notice and this permission notice shall be included in all\n * copies or substantial portions of the Software.\n *\n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\n * SOFTWARE.\n */\nexport class AdapterMoment {\n constructor({\n locale,\n formats,\n instance\n } = {}) {\n this.isMUIAdapter = true;\n this.isTimezoneCompatible = true;\n this.lib = 'moment';\n this.moment = void 0;\n this.locale = void 0;\n this.formats = void 0;\n this.escapedCharacters = {\n start: '[',\n end: ']'\n };\n this.formatTokenMap = formatTokenMap;\n this.setLocaleToValue = value => {\n const expectedLocale = this.getCurrentLocaleCode();\n if (expectedLocale === value.locale()) {\n return value;\n }\n return value.locale(expectedLocale);\n };\n this.hasTimezonePlugin = () => typeof this.moment.tz !== 'undefined';\n this.createSystemDate = value => {\n const parsedValue = this.moment(value).local();\n if (this.locale === undefined) {\n return parsedValue;\n }\n return parsedValue.locale(this.locale);\n };\n this.createUTCDate = value => {\n const parsedValue = this.moment.utc(value);\n if (this.locale === undefined) {\n return parsedValue;\n }\n return parsedValue.locale(this.locale);\n };\n this.createTZDate = (value, timezone) => {\n /* istanbul ignore next */\n if (!this.hasTimezonePlugin()) {\n throw new Error(MISSING_TIMEZONE_PLUGIN);\n }\n const parsedValue = timezone === 'default' ? this.moment(value) : this.moment.tz(value, timezone);\n if (this.locale === undefined) {\n return parsedValue;\n }\n return parsedValue.locale(this.locale);\n };\n this.date = value => {\n if (value === null) {\n return null;\n }\n const moment = this.moment(value);\n moment.locale(this.getCurrentLocaleCode());\n return moment;\n };\n this.dateWithTimezone = (value, timezone) => {\n if (value === null) {\n return null;\n }\n if (timezone === 'UTC') {\n return this.createUTCDate(value);\n }\n if (timezone === 'system' || timezone === 'default' && !this.hasTimezonePlugin()) {\n return this.createSystemDate(value);\n }\n return this.createTZDate(value, timezone);\n };\n this.getTimezone = value => {\n var _value$_z, _ref, _this$moment$defaultZ;\n if (value.isUTC()) {\n return 'UTC';\n }\n\n // @ts-ignore\n // eslint-disable-next-line no-underscore-dangle\n const zone = (_value$_z = value._z) == null ? void 0 : _value$_z.name;\n\n // @ts-ignore\n return (_ref = zone != null ? zone : (_this$moment$defaultZ = this.moment.defaultZone) == null ? void 0 : _this$moment$defaultZ.name) != null ? _ref : 'system';\n };\n this.setTimezone = (value, timezone) => {\n var _this$moment$defaultZ2, _this$moment$defaultZ3;\n if (timezone === 'UTC') {\n return value.clone().utc();\n }\n if (timezone === 'system') {\n return value.clone().local();\n }\n if (!this.hasTimezonePlugin()) {\n if (timezone === 'default') {\n return value;\n }\n\n /* istanbul ignore next */\n throw new Error(MISSING_TIMEZONE_PLUGIN);\n }\n const cleanZone = timezone === 'default' ? // @ts-ignore\n (_this$moment$defaultZ2 = (_this$moment$defaultZ3 = this.moment.defaultZone) == null ? void 0 : _this$moment$defaultZ3.name) != null ? _this$moment$defaultZ2 : 'system' : timezone;\n const newValue = value.clone();\n newValue.tz(cleanZone);\n return newValue;\n };\n this.toJsDate = value => {\n return value.toDate();\n };\n this.parseISO = isoString => {\n return this.moment(isoString, true);\n };\n this.toISO = value => {\n return value.toISOString();\n };\n this.parse = (value, format) => {\n if (value === '') {\n return null;\n }\n if (this.locale) {\n return this.moment(value, format, this.locale, true);\n }\n return this.moment(value, format, true);\n };\n this.getCurrentLocaleCode = () => {\n return this.locale || defaultMoment.locale();\n };\n this.is12HourCycleInCurrentLocale = () => {\n return /A|a/.test(defaultMoment.localeData(this.getCurrentLocaleCode()).longDateFormat('LT'));\n };\n this.expandFormat = format => {\n // @see https://github.com/moment/moment/blob/develop/src/lib/format/format.js#L6\n const localFormattingTokens = /(\\[[^[]*\\])|(\\\\)?(LTS|LT|LL?L?L?|l{1,4})|./g;\n return format.match(localFormattingTokens).map(token => {\n const firstCharacter = token[0];\n if (firstCharacter === 'L' || firstCharacter === ';') {\n return defaultMoment.localeData(this.getCurrentLocaleCode()).longDateFormat(token);\n }\n return token;\n }).join('');\n };\n this.getFormatHelperText = format => {\n return this.expandFormat(format).replace(/a/gi, '(a|p)m').toLocaleLowerCase();\n };\n this.isNull = value => {\n return value === null;\n };\n this.isValid = value => {\n return this.moment(value).isValid();\n };\n this.format = (value, formatKey) => {\n return this.formatByString(value, this.formats[formatKey]);\n };\n this.formatByString = (value, formatString) => {\n const clonedDate = value.clone();\n clonedDate.locale(this.getCurrentLocaleCode());\n return clonedDate.format(formatString);\n };\n this.formatNumber = numberToFormat => {\n return numberToFormat;\n };\n this.getDiff = (value, comparing, unit) => {\n return value.diff(comparing, unit);\n };\n this.isEqual = (value, comparing) => {\n if (value === null && comparing === null) {\n return true;\n }\n return this.moment(value).isSame(comparing);\n };\n this.isSameYear = (value, comparing) => {\n return value.isSame(comparing, 'year');\n };\n this.isSameMonth = (value, comparing) => {\n return value.isSame(comparing, 'month');\n };\n this.isSameDay = (value, comparing) => {\n return value.isSame(comparing, 'day');\n };\n this.isSameHour = (value, comparing) => {\n return value.isSame(comparing, 'hour');\n };\n this.isAfter = (value, comparing) => {\n return value.isAfter(comparing);\n };\n this.isAfterYear = (value, comparing) => {\n return value.isAfter(comparing, 'year');\n };\n this.isAfterDay = (value, comparing) => {\n return value.isAfter(comparing, 'day');\n };\n this.isBefore = (value, comparing) => {\n return value.isBefore(comparing);\n };\n this.isBeforeYear = (value, comparing) => {\n return value.isBefore(comparing, 'year');\n };\n this.isBeforeDay = (value, comparing) => {\n return value.isBefore(comparing, 'day');\n };\n this.isWithinRange = (value, [start, end]) => {\n return value.isBetween(start, end, null, '[]');\n };\n this.startOfYear = value => {\n return value.clone().startOf('year');\n };\n this.startOfMonth = value => {\n return value.clone().startOf('month');\n };\n this.startOfWeek = value => {\n return value.clone().startOf('week');\n };\n this.startOfDay = value => {\n return value.clone().startOf('day');\n };\n this.endOfYear = value => {\n return value.clone().endOf('year');\n };\n this.endOfMonth = value => {\n return value.clone().endOf('month');\n };\n this.endOfWeek = value => {\n return value.clone().endOf('week');\n };\n this.endOfDay = value => {\n return value.clone().endOf('day');\n };\n this.addYears = (value, amount) => {\n return amount < 0 ? value.clone().subtract(Math.abs(amount), 'years') : value.clone().add(amount, 'years');\n };\n this.addMonths = (value, amount) => {\n return amount < 0 ? value.clone().subtract(Math.abs(amount), 'months') : value.clone().add(amount, 'months');\n };\n this.addWeeks = (value, amount) => {\n return amount < 0 ? value.clone().subtract(Math.abs(amount), 'weeks') : value.clone().add(amount, 'weeks');\n };\n this.addDays = (value, amount) => {\n return amount < 0 ? value.clone().subtract(Math.abs(amount), 'days') : value.clone().add(amount, 'days');\n };\n this.addHours = (value, amount) => {\n return amount < 0 ? value.clone().subtract(Math.abs(amount), 'hours') : value.clone().add(amount, 'hours');\n };\n this.addMinutes = (value, amount) => {\n return amount < 0 ? value.clone().subtract(Math.abs(amount), 'minutes') : value.clone().add(amount, 'minutes');\n };\n this.addSeconds = (value, amount) => {\n return amount < 0 ? value.clone().subtract(Math.abs(amount), 'seconds') : value.clone().add(amount, 'seconds');\n };\n this.getYear = value => {\n return value.get('year');\n };\n this.getMonth = value => {\n return value.get('month');\n };\n this.getDate = value => {\n return value.get('date');\n };\n this.getHours = value => {\n return value.get('hours');\n };\n this.getMinutes = value => {\n return value.get('minutes');\n };\n this.getSeconds = value => {\n return value.get('seconds');\n };\n this.getMilliseconds = value => {\n return value.get('milliseconds');\n };\n this.setYear = (value, year) => {\n return value.clone().year(year);\n };\n this.setMonth = (value, month) => {\n return value.clone().month(month);\n };\n this.setDate = (value, date) => {\n return value.clone().date(date);\n };\n this.setHours = (value, hours) => {\n return value.clone().hours(hours);\n };\n this.setMinutes = (value, minutes) => {\n return value.clone().minutes(minutes);\n };\n this.setSeconds = (value, seconds) => {\n return value.clone().seconds(seconds);\n };\n this.setMilliseconds = (value, milliseconds) => {\n return value.clone().milliseconds(milliseconds);\n };\n this.getDaysInMonth = value => {\n return value.daysInMonth();\n };\n this.getNextMonth = value => {\n return value.clone().add(1, 'month');\n };\n this.getPreviousMonth = value => {\n return value.clone().subtract(1, 'month');\n };\n this.getMonthArray = value => {\n const firstMonth = this.startOfYear(value);\n const monthArray = [firstMonth];\n while (monthArray.length < 12) {\n const prevMonth = monthArray[monthArray.length - 1];\n monthArray.push(this.getNextMonth(prevMonth));\n }\n return monthArray;\n };\n this.mergeDateAndTime = (dateParam, timeParam) => {\n return dateParam.clone().hour(timeParam.hour()).minute(timeParam.minute()).second(timeParam.second());\n };\n this.getWeekdays = () => {\n return defaultMoment.weekdaysShort(true);\n };\n this.getWeekArray = value => {\n const cleanLocale = this.setLocaleToValue(value);\n const start = cleanLocale.clone().startOf('month').startOf('week');\n const end = cleanLocale.clone().endOf('month').endOf('week');\n let count = 0;\n let current = start;\n const nestedWeeks = [];\n while (current.isBefore(end)) {\n const weekNumber = Math.floor(count / 7);\n nestedWeeks[weekNumber] = nestedWeeks[weekNumber] || [];\n nestedWeeks[weekNumber].push(current);\n current = current.clone().add(1, 'day');\n count += 1;\n }\n return nestedWeeks;\n };\n this.getWeekNumber = value => {\n return value.week();\n };\n this.getYearRange = (start, end) => {\n const startDate = this.moment(start).startOf('year');\n const endDate = this.moment(end).endOf('year');\n const years = [];\n let current = startDate;\n while (current.isBefore(endDate)) {\n years.push(current);\n current = current.clone().add(1, 'year');\n }\n return years;\n };\n this.getMeridiemText = ampm => {\n if (this.is12HourCycleInCurrentLocale()) {\n // AM/PM translation only possible in those who have 12 hour cycle in locale.\n return defaultMoment.localeData(this.getCurrentLocaleCode()).meridiem(ampm === 'am' ? 0 : 13, 0, false);\n }\n return ampm === 'am' ? 'AM' : 'PM'; // fallback for de, ru, ...etc\n };\n this.moment = instance || defaultMoment;\n this.locale = locale;\n this.formats = _extends({}, defaultFormats, formats);\n }\n}","import {useCallback, useRef, useState} from 'react';\nimport {__, curry, identity, pipe, prop, useWith, equals} from 'ramda';\nimport {debounce} from '@reltio/mdm-sdk';\nimport {ColumnData, RowValue} from '../../types';\n\ntype GetRowCellKeyProps = {\n rowIndex: number;\n cellIndex: number;\n columnData: ColumnData;\n rowValue: RowValue;\n};\n\ntype RowCellHeightsMap = Record<string, number>;\n\nconst defaultGetRowCellKey = ({rowIndex, columnData: {id}, cellIndex}: GetRowCellKeyProps) => `${id}[${rowIndex}][${cellIndex}]`;\n\nconst useDynamicRowCellHeight = (getRowCellKey = defaultGetRowCellKey) => {\n const [rowCellHeightsMap, setRowCellHeightsMap] = useState<RowCellHeightsMap>({});\n const rowCellHeightsMapCache = useRef<RowCellHeightsMap>({});\n const batchHeightUpdate = (key: string, value: number) => {\n rowCellHeightsMapCache.current[key] = value;\n };\n const flushHeightUpdates = useCallback(\n debounce(() => {\n setRowCellHeightsMap((prev) => {\n const next = {...rowCellHeightsMapCache.current};\n return equals(prev, next) ? prev : next;\n });\n }),\n []\n );\n const clearHeightsCache = useCallback(() => {\n rowCellHeightsMapCache.current = {};\n }, []);\n\n const getDynamicRowCellHeight = useCallback(pipe(getRowCellKey, prop(__, rowCellHeightsMap)), [rowCellHeightsMap]);\n\n const changeRowCellHeight = useCallback(\n curry(useWith(pipe(batchHeightUpdate, flushHeightUpdates), [getRowCellKey, identity])),\n []\n );\n\n return {getDynamicRowCellHeight, changeRowCellHeight, clearHeightsCache};\n};\n\nexport default useDynamicRowCellHeight;\n","import React from 'react';\n\nconst SvgTable: React.FC<React.SVGProps<SVGSVGElement>> = (props) => {\n return (\n <svg width={20} height={18} viewBox=\"0 0 20 18\" xmlns=\"http://www.w3.org/2000/svg\" {...props}>\n <path\n d=\"M16 7.24V6h-4v1.24a8.417 8.417 0 00-2 .768V6H6v6h.29a8.497 8.497 0 00-.15.358l-.29.733.29.733.07.176H2c-1.1 0-2-.9-2-2V2C0 .9.9 0 2 0h14c1.1 0 2 .9 2 2v6.008a8.417 8.417 0 00-2-.768zM4 12V6H2v6h2zm0-8V2H2v2h2zm6 0V2H6v2h4zm6 0V2h-4v2h4zm-2 5a6.451 6.451 0 00-6 4.09 6.451 6.451 0 006 4.092 6.451 6.451 0 006-4.091A6.451 6.451 0 0014 9zm0 6.818a2.728 2.728 0 010-5.454 2.728 2.728 0 010 5.454zm0-4.363c-.905 0-1.636.73-1.636 1.636 0 .905.73 1.636 1.636 1.636.905 0 1.636-.73 1.636-1.636 0-.906-.73-1.636-1.636-1.636z\"\n fill=\"#000\"\n fillRule=\"nonzero\"\n stroke=\"none\"\n strokeWidth={1}\n opacity={0.54}\n />\n </svg>\n );\n};\n\nexport default SvgTable;\n","import React, {useCallback, useState} from 'react';\nimport PropTypes from 'prop-types';\nimport {ColumnsDataType} from '../../../../constants';\nimport TableIcon from '../../../../icons/Table';\nimport {SmallIconButtonWithTooltip} from '../../../SmallIconButton';\nimport {pipe, uniq, pluck, difference, concat} from 'ramda';\n\nimport {ColumnsSettingsPopup} from './ColumnsSettingsPopup';\n\nimport i18n from 'ui-i18n';\nimport {getChildColumns, isColumnSelected} from './columnHelpers';\n\nconst ColumnsSettings = ({columnsData, selectedColumns, onChangeColumns, title, tooltipTitle}) => {\n const [anchorEl, setAnchorEl] = useState(null);\n const openPopup = (event) => setAnchorEl(event.currentTarget);\n const closePopup = () => setAnchorEl(null);\n const handleColumnClick = useCallback(\n (column) => {\n const changedColumns = pipe(getChildColumns, pluck('id'))(column);\n const wasSelected = isColumnSelected(selectedColumns, column);\n onChangeColumns(\n wasSelected\n ? difference(selectedColumns, changedColumns)\n : uniq(concat(selectedColumns, changedColumns))\n );\n },\n [selectedColumns, onChangeColumns]\n );\n return (\n <>\n <SmallIconButtonWithTooltip\n tooltipTitle={tooltipTitle || i18n.text('Show/hide columns')}\n size=\"L\"\n icon={TableIcon}\n onClick={openPopup}\n />\n <ColumnsSettingsPopup\n onColumnClick={handleColumnClick}\n anchorEl={anchorEl}\n columnsData={columnsData}\n onClose={closePopup}\n title={title}\n selectedColumns={selectedColumns}\n />\n </>\n );\n};\n\nColumnsSettings.propTypes = {\n columnsData: ColumnsDataType,\n selectedColumns: PropTypes.arrayOf(PropTypes.string),\n onChangeColumns: PropTypes.func,\n title: PropTypes.string,\n tooltipTitle: PropTypes.string\n};\n\nexport default ColumnsSettings;\n","import {makeStyles} from '@mui/styles';\n\nexport const useStyles = makeStyles({\n popup: {\n minWidth: '200px'\n },\n groupItem: {\n backgroundColor: 'rgba(0,0,0,0.04)'\n }\n});\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nimport AttributeListItem from '../../../AttributeListItem/AttributeListItem';\nimport Highlighter from '../../../Highlighter/Highlighter';\n\nimport classnames from 'classnames';\nimport {useStyles} from './styles';\n\nconst ColumnListItem = ({item, onClick, checked, level, style, isFocused, isGroupItem, hideCheckBox}) => {\n const styles = useStyles();\n return (\n <AttributeListItem\n hideCheckBox={hideCheckBox}\n key={item.id}\n onClick={onClick}\n checked={checked}\n level={level}\n data={item}\n label={<Highlighter text={item.label} highlight={item.filterText} />}\n labelInText={item.label}\n style={style}\n isFocused={isFocused}\n hideIcon={isGroupItem}\n className={classnames({[styles.groupItem]: isGroupItem})}\n />\n );\n};\n\nColumnListItem.propTypes = {\n item: PropTypes.shape({\n label: PropTypes.string,\n filterText: PropTypes.string\n }),\n level: PropTypes.number,\n onClick: PropTypes.func,\n checked: PropTypes.bool,\n style: PropTypes.object,\n isGroupItem: PropTypes.bool,\n isFocused: PropTypes.bool,\n hideCheckBox: PropTypes.bool\n};\n\nexport default ColumnListItem;\n","import React, {useState, useMemo, useCallback} from 'react';\nimport i18n from 'ui-i18n';\nimport {pipe} from 'ramda';\n\nimport {getMaxItemWidth, DataTypeDefinition} from '@reltio/mdm-sdk';\n\nimport VirtualGroupedList from '../../../VirtualGroupedList/VirtualGroupedList';\nimport SelectionPopup from '../../../SelectionPopup/SelectionPopup';\nimport {buildColumnItems, isColumnSelected, isGroupColumn} from './columnHelpers';\nimport {flattenGroupedItemsData} from '../../../VirtualGroupedList/helpers';\nimport {useKeyboardNavigation} from '../../../SelectionPopup/helpers';\nimport ColumnListItem from './ColumnListItem';\n\nimport {useStyles} from './styles';\nimport {ListItemProps} from '@mui/material/ListItem';\n\ntype Column = {\n id: string;\n label: string;\n};\n\ntype GroupedColumnData =\n | {\n id: string;\n label: string;\n columns: Column[];\n }\n | Column;\n\ntype GroupedColumnList = {\n id: string;\n groupId: string;\n label: string;\n attrType: DataTypeDefinition;\n};\n\ntype Props = {\n anchorEl: HTMLElement;\n onClose: () => void;\n title?: string;\n columnsData: GroupedColumnData[];\n onColumnClick: (column: {id: string}) => void;\n selectedColumns: string[];\n hideCheckBox?: boolean;\n};\n\nconst ITEM_HEIGHT = 32;\nconst MAX_LIST_CONTAINER_HEIGHT = 300;\nconst DEFAULT_MIN_CONTAINER_WIDTH = 308;\nconst CONTAINER_HEADER_HEIGHT = 108;\nconst MIN_CONTAINER_HEIGHT = 140;\n\nexport const ColumnsSettingsPopup = ({\n anchorEl,\n onClose,\n title,\n columnsData,\n onColumnClick,\n selectedColumns,\n hideCheckBox\n}: Props) => {\n const styles = useStyles();\n const [filterText, setFilterText] = useState('');\n const clearFilter = () => setFilterText('');\n const groupedItems = useMemo(() => buildColumnItems(columnsData, filterText), [columnsData, filterText]);\n\n const items = useMemo(() => flattenGroupedItemsData(groupedItems), [groupedItems]);\n const containerWidth: number = getMaxItemWidth('label')(groupedItems) || DEFAULT_MIN_CONTAINER_WIDTH;\n\n const handleSearchOnEnter = useCallback(\n ({item}: {item: {id: string}; groupData: {item: {id: string}}}) => onColumnClick(item),\n [onColumnClick]\n );\n\n const {focusIndex, handleKeyDown} = useKeyboardNavigation({\n items,\n open: true,\n onSelectFocusedItem: handleSearchOnEnter,\n selectedItems: selectedColumns,\n onClose\n });\n const handleClose = useCallback(pipe(onClose, clearFilter), [onClose]);\n\n const renderColumnItem = (\n style: ListItemProps['style'],\n {item, level = 0}: {item: GroupedColumnList; level?: number},\n index: number\n ) => {\n return (\n <ColumnListItem\n hideCheckBox={hideCheckBox}\n style={style}\n item={item}\n level={level}\n isFocused={focusIndex === index}\n checked={isColumnSelected(selectedColumns, item)}\n isGroupItem={isGroupColumn(item)}\n onClick={hideCheckBox ? pipe(onColumnClick, handleClose) : onColumnClick}\n />\n );\n };\n\n const listHeight = Math.min(MAX_LIST_CONTAINER_HEIGHT, ITEM_HEIGHT * items.length);\n const containerHeight = Math.max(MIN_CONTAINER_HEIGHT, listHeight + CONTAINER_HEADER_HEIGHT);\n\n return (\n <SelectionPopup\n className={styles.popup}\n open={!!anchorEl}\n anchorEl={anchorEl}\n onClose={handleClose}\n onSearch={setFilterText}\n title={title || i18n.text('Show/hide columns')}\n containerWidth={containerWidth}\n containerHeight={containerHeight}\n searchInputOnKeyDown={handleKeyDown}\n >\n <VirtualGroupedList\n fixedTitle={false}\n height={listHeight}\n renderItem={renderColumnItem}\n items={items}\n getItemSize={() => ITEM_HEIGHT}\n focusIndex={focusIndex}\n />\n </SelectionPopup>\n );\n};\n","import {assoc, chain, curry, either, filter, has, pipe, propOr, reduce, when} from 'ramda';\nimport {utils} from '@reltio/mdm-sdk';\n\nconst isGroupColumn = (column) => column.id === column.groupId;\nconst isParentToColumn = curry(\n ({id, groupId}, parent) => parent.groupId === groupId && (id === parent.id || id.startsWith(`${parent.id}.`))\n);\nconst isGroupToColumn = curry(({groupId}, group) => groupId === group.id);\nconst isHideableColumn = propOr(true, 'hideable');\n\nconst getColumnRoot = (columns, column) => columns.find(either(isGroupToColumn(column), isParentToColumn(column)));\n\nconst addColumn = (columns, column) => {\n const root = getColumnRoot(columns, column);\n if (root) {\n root.children = addColumn(root.children || [], column);\n return columns;\n } else {\n return columns.concat(column);\n }\n};\n\nconst filterColumnsByLabel = curry(\n (filterText, column) =>\n utils.strings.search(column.label, filterText) || (column.children || []).some(filterColumnsByLabel(filterText))\n);\n\nconst buildColumnsTrees = reduce(\n (acc, columnData) =>\n addColumn(acc, {\n id: columnData.id,\n groupId: columnData.groupId,\n label: columnData.label,\n attrType: columnData.dataTypeDefinition\n }),\n []\n);\n\nconst buildFilteredColumnItems = curry((filterText, columns, level = 0) =>\n pipe(\n filter(filterColumnsByLabel(filterText)),\n chain((column) => {\n const item = {\n item: {...column, filterText},\n level\n };\n const childrenItems = column.children\n ? buildFilteredColumnItems(filterText, column.children, level + 1)\n : [];\n return [item, ...childrenItems];\n })\n )(columns)\n);\n\nconst isGroupedColumnsData = has('columns');\nconst flattenGroupedColumnsData = ({id, label, columns}) => [\n {id, groupId: id, label},\n ...columns.map(assoc('groupId', id))\n];\n\nconst buildColumnItems = (columnsData, filterText) => {\n return pipe(\n chain(when(isGroupedColumnsData, flattenGroupedColumnsData)),\n filter(either(isGroupColumn, isHideableColumn)),\n buildColumnsTrees,\n buildFilteredColumnItems(filterText)\n )(columnsData);\n};\n\nconst getChildColumns = (column) => (column.children ? chain(getChildColumns, column.children) : [column]);\n\nconst isColumnSelected = (selectedColumns, column) => {\n const childColumns = getChildColumns(column);\n const isColumnSelected = (column) => selectedColumns.includes(column.id);\n return isGroupColumn(column) ? childColumns.every(isColumnSelected) : childColumns.some(isColumnSelected);\n};\n\nexport {buildColumnItems, getChildColumns, isGroupColumn, isColumnSelected};\n","import React from 'react';\n\nconst SvgFilter: React.FC<React.SVGProps<SVGSVGElement>> = (props) => {\n return (\n <svg width={18} height={18} viewBox=\"0 0 18 18\" xmlns=\"http://www.w3.org/2000/svg\" {...props}>\n <path d=\"M18 2V0H0v2l7 8v8l4-2v-6z\" fill=\"currentColor\" fillRule=\"nonzero\" stroke=\"none\" strokeWidth={1} />\n </svg>\n );\n};\n\nexport default SvgFilter;\n","import {makeStyles} from '@mui/styles';\n\nexport const useStyles = makeStyles((theme) => ({\n 'filterIcon--enabled': {\n color: theme.palette.primary.main\n },\n closeIcon: {\n position: 'absolute',\n right: '3px',\n bottom: '3px',\n transform: 'scale(0.5)'\n },\n button: {\n padding: '11px'\n }\n}));\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport i18n from 'ui-i18n';\nimport IconButton from '@mui/material/IconButton';\nimport CloseIcon from '@mui/icons-material/Close';\nimport Tooltip from '@mui/material/Tooltip';\nimport FilterIcon from '../../../../icons/Filter';\nimport {useStyles} from './styles';\n\nconst FilterButton = ({enabled, onClick}) => {\n const styles = useStyles();\n\n return (\n <Tooltip title={enabled ? i18n.text('Clear all filters') : i18n.text('Filter')}>\n <IconButton onClick={onClick} classes={{root: styles.button}} size=\"large\">\n {enabled ? (\n <>\n <FilterIcon className={styles['filterIcon--enabled']} />\n <CloseIcon color=\"primary\" className={styles.closeIcon} />\n </>\n ) : (\n <FilterIcon />\n )}\n </IconButton>\n </Tooltip>\n );\n};\n\nFilterButton.propTypes = {\n enabled: PropTypes.bool,\n onClick: PropTypes.func\n};\n\nexport default FilterButton;\n","import {makeStyles} from '@mui/styles';\n\nexport const useStyles = makeStyles({\n pagination: {\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'flex-end',\n height: '56px',\n borderTop: '1px solid rgba(0,0,0,0.12)',\n boxShadow: 'none'\n },\n caption: {\n color: 'rgba(0,0,0,0.6)',\n fontSize: '12px',\n lineHeight: '16px'\n },\n selectRoot: {\n marginLeft: '5px',\n marginRight: '36px'\n },\n select: {\n color: 'rgba(0,0,0,0.6)',\n fontSize: '12px',\n lineHeight: '16px',\n textAlign: 'right'\n },\n actions: {\n marginLeft: '32px!important' //we need it, because of the more specific rule in the mui\n }\n});\n","import PropTypes from 'prop-types';\nimport React, {useCallback} from 'react';\nimport classnames from 'classnames';\nimport TablePagination from '@mui/material/TablePagination';\nimport i18n from 'ui-i18n';\nimport {getValue} from '../../../core/utils';\nimport {nthArg, pipe, pathOr, identity} from 'ramda';\nimport {useStyles} from './styles';\n\nconst BasicTablePagination = ({\n classes = {},\n count,\n rowsPerPageOptions,\n page,\n onChangePage,\n rowsPerPage,\n onChangeRowsPerPage,\n basicTableRef,\n labelRowsPerPage\n}) => {\n const labelDisplayedRows = ({from, to, count}) =>\n i18n.text('${fromRow}-${toRow} of ${countRows}', {\n fromRow: i18n.number(from, '0,0'),\n toRow: i18n.number(to, '0,0'),\n countRows: i18n.number(count, '0,0')\n });\n const styles = useStyles();\n const resetScrollbarPosition = useCallback(() => {\n pathOr(identity, ['current', 'resetScrollbarPosition'], basicTableRef)();\n }, [basicTableRef]);\n const handleChangePage = useCallback(\n (value) => {\n onChangePage(value);\n resetScrollbarPosition();\n },\n [onChangePage, resetScrollbarPosition]\n );\n const handleChangeRowsPerPage = useCallback(\n (value) => {\n onChangePage(0);\n onChangeRowsPerPage(value);\n resetScrollbarPosition();\n },\n [onChangePage, onChangeRowsPerPage, resetScrollbarPosition]\n );\n return (\n <TablePagination\n classes={{\n ...classes,\n root: classnames(styles.pagination, classes.root),\n select: classnames(styles.select, classes.select),\n selectLabel: classnames(styles.caption, classes.selectLabel),\n displayedRows: classnames(styles.caption, classes.displayedRows),\n input: classnames(styles.selectRoot, classes.selectRoot),\n actions: styles.actions\n }}\n backIconButtonProps={{size: 'large'}}\n nextIconButtonProps={{size: 'large'}}\n component=\"div\"\n labelRowsPerPage={labelRowsPerPage || i18n.text('Rows per page:')}\n labelDisplayedRows={labelDisplayedRows}\n count={count}\n rowsPerPageOptions={rowsPerPageOptions}\n page={page}\n onPageChange={pipe(nthArg(1), handleChangePage)}\n rowsPerPage={rowsPerPage}\n onRowsPerPageChange={pipe(getValue, handleChangeRowsPerPage)}\n />\n );\n};\n\nBasicTablePagination.propTypes = {\n classes: PropTypes.object,\n rowsPerPageOptions: PropTypes.arrayOf(PropTypes.number),\n count: PropTypes.number,\n page: PropTypes.number,\n onChangePage: PropTypes.func,\n rowsPerPage: PropTypes.number,\n onChangeRowsPerPage: PropTypes.func,\n basicTableRef: PropTypes.shape({current: PropTypes.object}),\n labelRowsPerPage: PropTypes.string\n};\n\nexport default React.memo(BasicTablePagination);\n","import React, {ReactNode, useRef} from 'react';\n\nimport ReactResizeDetector from 'react-resize-detector';\nimport {useDidUpdateEffect} from '../../../hooks';\nimport {ColumnData, RenderRowCellProps, RowValue} from '../types';\n\ntype OnChangeHeightProps = {\n rowIndex: number;\n cellIndex: number;\n columnData: ColumnData;\n rowValue: RowValue;\n};\n\ntype Props = {\n onChangeHeight: (props: OnChangeHeightProps) => (size: number) => void;\n children: ReactNode;\n} & RenderRowCellProps;\n\nconst RowCellAutoSizer = ({onChangeHeight, children: cell, ...cellProps}: Props) => {\n const cellRef = useRef<HTMLDivElement>();\n const {rowValue, rowIndex, columnData, cellIndex} = cellProps;\n const changeCellHeight = onChangeHeight({rowIndex, cellIndex, columnData, rowValue});\n\n const adjustCellHeight = () => cellRef.current && changeCellHeight(cellRef.current.clientHeight);\n\n useDidUpdateEffect(adjustCellHeight, [rowValue.rawValue]);\n\n return (\n <div ref={cellRef}>\n <ReactResizeDetector handleHeight onResize={adjustCellHeight} />\n {cell}\n </div>\n );\n};\n\nexport default RowCellAutoSizer;\n","import {always, assoc, difference, dissoc, evolve, keys, path, when} from 'ramda';\nimport {createStandardAction, toggleSortOrder} from '../../../core';\n\nconst CHANGE_COLUMNS = 'CHANGE_COLUMNS';\nconst TOGGLE_FILTERS = 'TOGGLE_FILTERS';\nconst CHANGE_FILTER = 'CHANGE_FILTER';\nconst TOGGLE_SORT = 'TOGGLE_SORT';\nconst CHANGE_PAGE = 'CHANGE_PAGE';\nconst CHANGE_ROWS_PER_PAGE = 'CHANGE_ROWS_PER_PAGE';\n\nexport const actions = {\n changeColumns: createStandardAction(CHANGE_COLUMNS),\n toggleFilters: createStandardAction(TOGGLE_FILTERS),\n changeFilter: createStandardAction(CHANGE_FILTER),\n toggleSort: createStandardAction(TOGGLE_SORT),\n changePage: createStandardAction(CHANGE_PAGE),\n changeRowsPerPage: createStandardAction(CHANGE_ROWS_PER_PAGE)\n};\n\nexport const changeVisibleColumns = (state, nextVisibleColumns) => {\n const removedColumns = difference(state.visibleColumns, nextVisibleColumns);\n const isRemovedColumn = (columnId) => removedColumns.includes(columnId);\n return evolve(\n {\n visibleColumns: always(nextVisibleColumns),\n sorting: when(\n (sorting = {}) => isRemovedColumn(sorting.field),\n () => {\n const [nextSortField] = nextVisibleColumns;\n return {field: nextSortField, order: 'asc'};\n }\n ),\n filters: (filters) =>\n keys(filters).reduce(\n (acc, columnId) => (isRemovedColumn(columnId) ? dissoc(columnId, acc) : acc),\n filters\n )\n },\n state\n );\n};\n\nexport const reducer = (state, action) => {\n switch (action.type) {\n case CHANGE_COLUMNS: {\n const columnIds = action.payload;\n return changeVisibleColumns(state, columnIds);\n }\n case TOGGLE_FILTERS: {\n const enableFilters = !state.filters;\n return {\n ...state,\n filters: enableFilters ? {} : null,\n page: enableFilters ? state.page : 0\n };\n }\n case CHANGE_FILTER: {\n const {columnId, filter} = action.payload;\n return evolve({filters: filter ? assoc(columnId, filter) : dissoc(columnId), page: always(0)}, state);\n }\n case TOGGLE_SORT: {\n const nextSortField = action.payload;\n const prevSortField = path(['sorting', 'field'], state);\n const prevSortOrder = path(['sorting', 'order'], state);\n return {\n ...state,\n sorting: {\n field: nextSortField,\n order: toggleSortOrder(nextSortField === prevSortField ? prevSortOrder : null)\n },\n page: 0\n };\n }\n case CHANGE_PAGE:\n return {...state, page: action.payload};\n case CHANGE_ROWS_PER_PAGE:\n return {...state, rowsPerPage: action.payload};\n default:\n return state;\n }\n};\n\nexport default {\n reducer,\n actions,\n changeVisibleColumns\n};\n","import {makeStyles} from '@mui/styles';\n\nexport const useStyles = makeStyles((theme) => ({\n basicViewPaper: {\n display: 'flex',\n flexDirection: 'column',\n ...theme.basicView\n }\n}));\n","import React, {forwardRef} from 'react';\nimport Paper, {PaperProps} from '@mui/material/Paper';\nimport {useStyles} from './styles';\n\nconst BasicView = forwardRef(\n ({children, className, ...otherProps}: PaperProps, ref: React.RefObject<HTMLDivElement>) => {\n const styles = useStyles();\n return (\n <Paper ref={ref} className={className} classes={{root: styles.basicViewPaper}} {...otherProps}>\n {children}\n </Paper>\n );\n }\n);\n\nBasicView.displayName = 'BasicView';\n\nexport default BasicView;\n","import React from 'react';\nimport ReactResizeDetector from 'react-resize-detector';\n\nconst EmptyStub = () => <div style={{display: 'none'}} />;\n\ntype Props = {\n children: React.ReactNode;\n widthToHide: number;\n};\n\nconst HideOnShrink = ({widthToHide, children}: Props) => (\n <ReactResizeDetector\n handleWidth={true}\n render={({width}) => (width > widthToHide ? <>{children}</> : <EmptyStub />)}\n />\n);\n\nexport default HideOnShrink;\n","import {makeStyles} from '@mui/styles';\n\nexport const useStyles = makeStyles({\n onlyValue: {\n color: 'rgba(0,0,0,.6)',\n fontSize: '13px',\n fontWeight: 'normal',\n whiteSpace: 'nowrap',\n textOverflow: 'ellipsis',\n overflow: 'hidden'\n },\n select: {\n fontSize: '13px',\n color: 'rgba(0,0,0,.6)',\n paddingLeft: '15px',\n '&&&': {\n paddingRight: '35px'\n }\n },\n selectMenu: {\n '& li': {\n fontSize: '13px',\n height: '32px'\n }\n },\n textField: {\n maxWidth: '100%'\n }\n});\n","import React, {useEffect} from 'react';\nimport PropTypes from 'prop-types';\n\nimport Typography from '@mui/material/Typography';\nimport {useStyles} from './styles';\nimport DropDownEditor from '../editors/DropDownEditor/DropDownEditor';\n\nconst SelectorWithOnlyOptionAutoSelect = ({value, onChange, options, classes = {}, emptyLabel}) => {\n const styles = useStyles();\n\n const [firstOption, ...moreOptions] = options;\n const hasOnlyOneOptionToSelect = moreOptions.length === 0;\n\n useEffect(() => {\n if (hasOnlyOneOptionToSelect && value !== firstOption.value) {\n onChange(firstOption.value);\n }\n }, [firstOption.value]); // eslint-disable-line\n\n const displayEmpty = !!emptyLabel;\n\n return (\n <div className={classes.root}>\n {hasOnlyOneOptionToSelect ? (\n <Typography className={classes.onlyValue || styles.onlyValue} variant={'h6'}>\n {firstOption.label}\n </Typography>\n ) : (\n <DropDownEditor\n displayEmpty={displayEmpty}\n disableUnderline={true}\n classes={{\n select: classes.select || styles.select\n }}\n TextFieldProps={{\n classes: {\n root: classes.textField || styles.textField\n }\n }}\n MenuProps={{\n classes: {\n list: classes.selectMenu || styles.selectMenu\n }\n }}\n value={value || ''}\n entries={displayEmpty ? [{value: '', label: emptyLabel}, ...options] : options}\n onChange={(value) => onChange(value || null)}\n />\n )}\n </div>\n );\n};\n\nSelectorWithOnlyOptionAutoSelect.propTypes = {\n value: PropTypes.string,\n onChange: PropTypes.func,\n options: PropTypes.arrayOf(\n PropTypes.shape({\n value: PropTypes.string,\n label: PropTypes.string\n })\n ),\n classes: PropTypes.shape({\n root: PropTypes.string,\n onlyValue: PropTypes.string,\n select: PropTypes.string,\n selectMenu: PropTypes.string,\n textField: PropTypes.string\n }),\n emptyLabel: PropTypes.string\n};\n\nexport default SelectorWithOnlyOptionAutoSelect;\n","import React from 'react';\n\nconst Spacer = () => <div style={{flex: 1}} />;\n\nexport default Spacer;\n","import PropTypes from 'prop-types';\nimport React from 'react';\n\nconst VerticalDivider = ({height, margin}) => (\n <div\n style={{\n width: '1px',\n height: `${height}px`,\n borderLeft: '1px solid rgba(0,0,0,0.38)',\n margin: `0 ${margin}px`,\n flexShrink: '0'\n }}\n />\n);\n\nVerticalDivider.propTypes = {\n height: PropTypes.number,\n margin: PropTypes.number\n};\n\nexport default VerticalDivider;\n","import {makeStyles} from '@mui/styles';\n\nexport const useStyles = makeStyles(() => ({\n viewMoreLessLink: {\n display: 'flex',\n alignItems: 'center',\n cursor: 'pointer'\n },\n\n arrow: {\n marginRight: '8px',\n marginLeft: '-2px',\n transform: 'rotate(0deg)',\n transition: 'transform 0.35s ease'\n },\n\n rotated: {\n transform: 'rotate(-180deg)'\n }\n}));\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nimport Link from '@mui/material/Link';\nimport ArrowDropDownIcon from '@mui/icons-material/ArrowDropDown';\nimport {useStyles} from './styles';\nimport classnames from 'classnames';\nimport i18n from 'ui-i18n';\n\nconst ViewMoreToggle = ({active, onClick, className}) => {\n const styles = useStyles();\n return (\n <Link className={classnames(styles.viewMoreLessLink, className)} onClick={onClick} underline=\"none\">\n <ArrowDropDownIcon className={classnames(styles.arrow, {[styles.rotated]: active})} />\n {active ? i18n.text('View less') : i18n.text('View more')}\n </Link>\n );\n};\n\nViewMoreToggle.propTypes = {\n active: PropTypes.bool,\n onClick: PropTypes.func,\n className: PropTypes.string\n};\n\nexport default ViewMoreToggle;\n","import {useMemo} from 'react';\nimport {pipe} from 'ramda';\n\ntype UseActions = ({\n actions,\n dispatch\n}: {\n actions: {\n [key: string]: <T>(payload: T) => {type: string; payload: T};\n };\n dispatch: <T>({type, payload}: {type: string; payload: T}) => void;\n}) => {\n [key in keyof typeof actions]: <T>(payload: T) => void;\n};\n\nexport const useActions: UseActions = ({actions, dispatch}) =>\n useMemo(\n () =>\n Object.entries(actions).reduce((acc, [actionName, actionCreator]) => {\n return {...acc, [actionName]: pipe(actionCreator, dispatch)};\n }, {}),\n [dispatch, actions]\n );\n","import {useCallback, useEffect, useState} from 'react';\nimport {useDidUpdateEffect} from './useDidUpdateEffect';\n\ntype SavedState<T> = {\n [entityType: string]: T;\n};\n\ntype Props<T> = {\n getSavedState: () => Promise<SavedState<T>>;\n saveState: (state: SavedState<T>) => void;\n entityTypeUri?: string;\n};\n\nexport const useSavedStateForEntityType = <T>({getSavedState, saveState, entityTypeUri}: Props<T>) => {\n const [savedState, setSavedState] = useState<SavedState<T>>({});\n const [changedState, setChangedState] = useState<SavedState<T>>(null);\n const [isLoaded, setIsLoaded] = useState(false);\n\n const saveChangesLocallyForPrevEntityType = () => {\n if (changedState) {\n setSavedState({...savedState, ...changedState});\n setChangedState(null);\n }\n };\n useDidUpdateEffect(saveChangesLocallyForPrevEntityType, [entityTypeUri]);\n\n const updateSavedState = useCallback(\n (stateToSave: T) => {\n if (!entityTypeUri) return;\n const changedState = {\n [entityTypeUri]: stateToSave\n };\n setChangedState(changedState);\n saveState({...savedState, ...changedState});\n },\n [entityTypeUri, saveState, savedState]\n );\n\n useEffect(() => {\n getSavedState()\n .then((savedState) => {\n setSavedState(savedState || {});\n })\n .then((_) => setIsLoaded(true))\n .catch((_) => setIsLoaded(true));\n }, []); // eslint-disable-line\n\n return {isLoaded: isLoaded && !!entityTypeUri, savedState: savedState[entityTypeUri], updateSavedState};\n};\n","import {FilterBuilder, Maybe} from '@reltio/mdm-sdk';\nimport {buildColumnsFilter, ColumnData, ColumnFilter} from '@reltio/components';\n\nconst createInteractionTypeFilter = (value) => `equals(type,'${value}')`;\n\nconst buildInteractionsFilter = (\n currentInteractionType: string,\n filters: Record<string, ColumnFilter>,\n columnsData: ColumnData[]\n) => {\n const currentTypeClause = Maybe.fromNull(currentInteractionType).map(createInteractionTypeFilter).orSome('');\n\n const filtersClause = buildColumnsFilter(columnsData, filters);\n\n return new FilterBuilder().addClause(currentTypeClause).addClause(filtersClause).build();\n};\n\nexport {buildInteractionsFilter};\n","import {\n attributeUriToSearchUri,\n DataTypes,\n FilterOptions,\n getAttrDataTypeDefinition,\n getInteractionAttributesFromMetadata,\n getInteractionType,\n InteractionType,\n makeCompositeFilterOption\n} from '@reltio/mdm-sdk';\nimport {adjust, assoc, chain, concat, map, pipe, pluck, prop, propEq, reject, subtract, uniqBy} from 'ramda';\nimport i18n from 'ui-i18n';\n\nconst ROWS_PER_PAGE_OPTIONS = [10, 25, 50, 100];\nconst getRowsPerPageOptions = (defaultRowsPerPage: number) =>\n ROWS_PER_PAGE_OPTIONS.filter((option) => option !== defaultRowsPerPage)\n .concat(defaultRowsPerPage)\n .sort(subtract);\n\nconst INTERACTION_TYPE_COLUMN_ID = 'type';\nconst ACTORS_COLUMN_ID = 'members';\nconst ATTRIBUTES_COLUMN_ID = 'attributes';\n\nconst MAX_ATTRIBUTES_TO_SHOW = 7;\n\nconst DEFAULT_COLUMNS_DATA = [\n {\n id: 'timestamp',\n label: 'Date',\n dataTypeDefinition: {\n type: DataTypes.TYPE_TIMESTAMP\n },\n hideable: false\n },\n {\n id: INTERACTION_TYPE_COLUMN_ID,\n label: 'Interaction type',\n sortable: false,\n filterOptions: [{value: FilterOptions.EQUALS}, {value: FilterOptions.NOT_EQUALS}]\n },\n {\n id: ACTORS_COLUMN_ID,\n label: 'Actors',\n sortable: false,\n dataTypeDefinition: {\n type: DataTypes.TYPE_STRING\n }\n },\n {\n id: ATTRIBUTES_COLUMN_ID,\n label: 'Attributes',\n sortable: false,\n filterable: false,\n maxAttrsToShow: MAX_ATTRIBUTES_TO_SHOW\n }\n];\n\nconst DEFAULT_COLUMNS = pluck('id', DEFAULT_COLUMNS_DATA);\nconst ALL_TYPES_COLUMNS = [INTERACTION_TYPE_COLUMN_ID, ATTRIBUTES_COLUMN_ID];\n\nconst getColumnsDataFromInteractionAttributes = pipe(\n map((attr) => ({\n id: attributeUriToSearchUri(attr.uri),\n label: attr.label,\n dataTypeDefinition: getAttrDataTypeDefinition(attr)\n })),\n uniqBy(prop('id'))\n);\n\nconst getInteractionColumnDataType = (interactionTypes) => ({\n type: DataTypes.TYPE_SELECT,\n options: interactionTypes.map(({uri, label}) => ({value: uri, label}))\n});\n\nconst getActorTypesOptions = pipe(\n chain(({memberTypes}) => memberTypes.map(({name, label}) => ({label, value: name}))),\n uniqBy(prop('value'))\n);\n\nconst getActorsColumnFilterOptions = (interactionTypes: Array<InteractionType>) => {\n const typeFilterDataType = {\n type: DataTypes.TYPE_SELECT,\n options: getActorTypesOptions(interactionTypes)\n };\n const makeTypeOption = makeCompositeFilterOption('types');\n return [\n {value: FilterOptions.EQUALS},\n {value: FilterOptions.NOT_EQUALS},\n {value: FilterOptions.HAS_ALL},\n {value: FilterOptions.IN_FILE},\n {value: FilterOptions.NOT_IN_FILE},\n {\n value: makeTypeOption(FilterOptions.EQUALS),\n label: i18n.text('type equals'),\n dataTypeDefinition: typeFilterDataType\n },\n {\n value: makeTypeOption(FilterOptions.NOT_EQUALS),\n label: i18n.text('type not'),\n dataTypeDefinition: typeFilterDataType\n },\n {\n value: makeTypeOption(FilterOptions.HAS_ALL),\n label: i18n.text('type has all'),\n dataTypeDefinition: typeFilterDataType\n },\n {\n value: makeTypeOption(FilterOptions.IN_FILE),\n label: i18n.text('type in file')\n },\n {\n value: makeTypeOption(FilterOptions.NOT_IN_FILE),\n label: i18n.text('type not in file')\n }\n ];\n};\n\nconst updateColumnData = (columnId, updateFn) => (columnsData) =>\n adjust(columnsData.findIndex(propEq('id', columnId)), updateFn, columnsData);\n\nconst updateInteractionTypeColumn = (interactionTypes) =>\n updateColumnData(\n INTERACTION_TYPE_COLUMN_ID,\n assoc('dataTypeDefinition', getInteractionColumnDataType(interactionTypes))\n );\n\nconst updateActorsColumn = (interactionTypes) =>\n updateColumnData(ACTORS_COLUMN_ID, assoc('filterOptions', getActorsColumnFilterOptions(interactionTypes)));\n\nconst updateAttributesColumn = (attributes) => updateColumnData(ATTRIBUTES_COLUMN_ID, assoc('attrsToShow', attributes));\n\nconst getColumnsData = (metadata, config, interactionTypes, currentInteractionType) => {\n return currentInteractionType\n ? pipe(\n getInteractionAttributesFromMetadata,\n getColumnsDataFromInteractionAttributes,\n concat(DEFAULT_COLUMNS_DATA),\n reject(({id}) => ALL_TYPES_COLUMNS.includes(id)),\n updateActorsColumn([getInteractionType(metadata, currentInteractionType)])\n )(metadata, currentInteractionType)\n : pipe(\n updateAttributesColumn(config.attributes),\n updateInteractionTypeColumn(interactionTypes),\n updateActorsColumn(metadata.interactionTypes || [])\n )(DEFAULT_COLUMNS_DATA);\n};\n\nexport {\n getRowsPerPageOptions,\n DEFAULT_COLUMNS,\n getColumnsData,\n INTERACTION_TYPE_COLUMN_ID,\n ACTORS_COLUMN_ID,\n ATTRIBUTES_COLUMN_ID,\n ALL_TYPES_COLUMNS,\n MAX_ATTRIBUTES_TO_SHOW\n};\n","import {makeStyles} from '@mui/styles';\n\nconst defaultWrapperStyles = {\n padding: '15px 25px 0 25px',\n '&:last-child': {\n paddingBottom: '15px'\n }\n};\n\nexport const useStyles = makeStyles((theme) => ({\n headCell: {\n display: 'flex',\n alignItems: 'center',\n height: '100%',\n fontSize: '12px'\n },\n rowCell: {\n fontSize: '13px',\n overflow: 'hidden',\n overflowWrap: 'break-word',\n wordWrap: 'break-word' // for IE\n },\n 'row-cell--sorted': {\n color: 'rgba(0,0,0,0.87)'\n },\n actorsWrapper: {\n paddingRight: '25px',\n paddingLeft: '15px',\n '&:last-child': {\n paddingBottom: '15px'\n }\n },\n memberWrapper: {\n display: 'flex',\n paddingTop: '15px',\n boxSizing: 'border-box',\n position: 'relative'\n },\n entityLabel: {\n fontSize: '15px',\n display: 'inline-block',\n overflowX: 'hidden',\n margin: '-2px 0 -1px 45px'\n },\n entityAvatar: {\n transform: 'scale(0.5)',\n position: 'absolute',\n left: 0,\n top: '2px'\n },\n defaultWrapper: defaultWrapperStyles,\n blobWrapper: {\n ...defaultWrapperStyles,\n whiteSpace: 'pre-wrap'\n },\n link: {\n cursor: 'pointer',\n color: theme.palette.primary.main\n },\n attributesWrapper: {\n padding: '15px 25px 10px 25px',\n color: 'rgba(0,0,0,0.87)'\n },\n viewMore: {\n marginLeft: '-5px'\n }\n}));\n","import PropTypes from 'prop-types';\nimport React from 'react';\nimport classnames from 'classnames';\nimport {useStyles} from './styles';\n\nconst RowCellRenderer = ({cell, CellValueRenderer, isSorted, ...otherProps}) => {\n const styles = useStyles();\n return (\n <div\n className={classnames(\n {\n [styles['row-cell--sorted']]: isSorted\n },\n styles.rowCell\n )}\n >\n {cell.values.map((value, index) => (\n <CellValueRenderer key={index} value={value} {...otherProps} />\n ))}\n </div>\n );\n};\n\nRowCellRenderer.propTypes = {\n rowValue: PropTypes.object,\n cell: PropTypes.object,\n CellValueRenderer: PropTypes.elementType,\n isSorted: PropTypes.bool\n};\n\nexport default RowCellRenderer;\n","import React from 'react';\n\nimport DefaultHeadCellRenderer from 'react-components/dist/Table/DefaultHeadCellRenderer/DefaultHeadCellRenderer';\nimport {withFilterAtBottom} from '@reltio/components';\nimport {useStyles} from './styles';\n\nconst HeadCellRenderer = (props) => {\n const styles = useStyles();\n return (\n <div className={styles.headCell}>\n <DefaultHeadCellRenderer {...props} />\n </div>\n );\n};\n\nexport default withFilterAtBottom(HeadCellRenderer);\n","import PropTypes from 'prop-types';\nimport React, {useContext} from 'react';\nimport mdm, {ui} from '@reltio/mdm-module';\nimport {chain, pipe, prop, uniqBy, values} from 'ramda';\nimport {useDispatch, useSelector} from 'react-redux';\nimport {useStyles} from './styles';\nimport {EntityTypeType, getEntityType, getLabel} from '@reltio/mdm-sdk';\nimport {EntityTypeIcon, ViewIdContext} from '@reltio/components';\nimport classnames from 'classnames';\n\nconst MemberItem = ({entityType, label, onClick}) => {\n const styles = useStyles();\n const labelCaption = getLabel(label);\n return (\n <div className={styles.memberWrapper}>\n <EntityTypeIcon className={styles.entityAvatar} entityType={entityType} />\n <span className={classnames(styles.entityLabel, styles.link)} onClick={onClick}>\n {labelCaption}\n </span>\n </div>\n );\n};\nMemberItem.propTypes = {\n entityType: EntityTypeType,\n label: PropTypes.string,\n onClick: PropTypes.func\n};\n\nconst getActorsMembers = pipe(values, chain(prop('members')), uniqBy(prop('objectURI')));\n\nconst ActorsRenderer = ({value}) => {\n const styles = useStyles();\n const members = getActorsMembers(value);\n const dispatch = useDispatch();\n const viewId = useContext(ViewIdContext);\n const metadata = useSelector(mdm.selectors.getMetadata);\n const openEntityWithUri = (uri) => dispatch(ui.actions.openEntity({uri, viewId}));\n\n return (\n <div className={styles.actorsWrapper}>\n {members.map(({objectURI, type, label}) => (\n <MemberItem\n key={objectURI}\n entityType={getEntityType(metadata, type)}\n label={label}\n onClick={() => openEntityWithUri(objectURI)}\n />\n ))}\n </div>\n );\n};\n\nActorsRenderer.propTypes = {\n value: PropTypes.object\n};\n\nexport default ActorsRenderer;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport {useStyles} from './styles';\nimport {DataTypeValue} from '@reltio/components';\n\nconst DefaultCellValueRenderer = ({value, columnData: {dataTypeDefinition}}) => {\n const styles = useStyles();\n return (\n <div className={styles.defaultWrapper}>\n <DataTypeValue value={value} dataTypeDefinition={dataTypeDefinition} />\n </div>\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';\nimport PropTypes from 'prop-types';\nimport {useStyles} from './styles';\n\nconst BlobRender = ({value}) => {\n const styles = useStyles();\n return <div className={styles.blobWrapper}>{value}</div>;\n};\n\nBlobRender.propTypes = {\n value: PropTypes.any\n};\n\nexport default BlobRender;\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nimport {useStyles} from './styles';\nimport Link from '@mui/material/Link';\n\nconst LinkRenderer = ({value}) => {\n const styles = useStyles();\n return (\n <div className={styles.defaultWrapper}>\n <Link className={styles.link} href={value} target=\"_blank\" underline=\"none\">\n {value}\n </Link>\n </div>\n );\n};\n\nLinkRenderer.propTypes = {\n value: PropTypes.any\n};\n\nexport default LinkRenderer;\n","import React, {useMemo, useState} from 'react';\nimport PropTypes from 'prop-types';\nimport {useSelector} from 'react-redux';\n\nimport {ReadOnlyAttributesList, ViewMoreToggle} from '@reltio/components';\nimport {useStyles} from './styles';\nimport mdmModule from '@reltio/mdm-module';\nimport {getInteractionType} from '@reltio/mdm-sdk';\nimport {pick, propEq} from 'ramda';\n\nconst AttributesRenderer = ({value, rowValue, columnData}) => {\n const styles = useStyles();\n\n const metadata = useSelector(mdmModule.selectors.getMetadata);\n const interaction = rowValue.rawValue;\n const attrTypes = useMemo(() => {\n const interactionType = getInteractionType(metadata, interaction.type);\n return interactionType.attributes;\n }, [interaction, metadata]);\n\n const [expanded, setExpanded] = useState(false);\n const toggleExpanded = () => setExpanded((expanded) => !expanded);\n\n const attributes = value;\n const attrNames = Object.keys(attributes);\n\n const visibleCountLimit = columnData.maxAttrsToShow;\n const hasExtraValuesToShow = attrNames.length > visibleCountLimit;\n const attrNamesToShow = expanded ? attrNames : attrNames.slice(0, visibleCountLimit);\n\n const attrsToShow = pick(attrNamesToShow, attributes);\n const attrTypesToShow = attrNamesToShow.map((name) => attrTypes.find(propEq('name', name)));\n\n return (\n <div className={styles.attributesWrapper}>\n <ReadOnlyAttributesList entity={{attributes: attrsToShow}} attrTypes={attrTypesToShow} drawLines={false} />\n {hasExtraValuesToShow && (\n <ViewMoreToggle active={expanded} onClick={toggleExpanded} className={styles.viewMore} />\n )}\n </div>\n );\n};\n\nAttributesRenderer.propTypes = {\n value: PropTypes.object,\n rowValue: PropTypes.object,\n columnData: PropTypes.object\n};\n\nexport default AttributesRenderer;\n","import HeadCellRenderer from '../cell-renderers/HeadCellRenderer';\nimport ActorsRenderer from '../cell-renderers/ActorsRenderer';\nimport DefaultCellValueRenderer from '../cell-renderers/DefaultCellValueRenderer';\nimport {ColumnData, defaultGetRowCellHeight} from '@reltio/components';\nimport {assoc, cond, length, map, path, pathEq, pickBy, pipe, prop, reduce, slice, split, T, values} from 'ramda';\nimport {\n DataTypes,\n getActorsForInteraction,\n getAttributeValuesByPath,\n Interaction,\n makeAttrTypeUri,\n Metadata\n} from '@reltio/mdm-sdk';\nimport {ACTORS_COLUMN_ID, ATTRIBUTES_COLUMN_ID, INTERACTION_TYPE_COLUMN_ID} from '../../helpers/tableHelpers';\nimport BlobRender from '../cell-renderers/BlobRenderer';\nimport LinkRenderer from '../cell-renderers/LinkRenderer';\nimport AttributesRenderer from '../cell-renderers/AttributesRenderer';\n\nconst getInteractionAttributeValues = (attrPath, interaction) =>\n pipe(path(['attributes']), getAttributeValuesByPath(attrPath))(interaction);\n\nconst getAttrPathFromColumnId = pipe(split('.'), slice(1, Infinity));\n\nconst getRowValueByColumn = (columnData: ColumnData, interaction: Interaction, metadata: Metadata) => {\n switch (columnData.id) {\n case ACTORS_COLUMN_ID:\n return getActorsForInteraction(metadata, interaction);\n case 'timestamp':\n return interaction.timestamp;\n case INTERACTION_TYPE_COLUMN_ID:\n return interaction.type;\n case ATTRIBUTES_COLUMN_ID: {\n const urisToShow = path(['attrsToShow', interaction.type], columnData);\n const isAttrToShow = (values, name) => urisToShow.includes(makeAttrTypeUri(interaction.type, name));\n return urisToShow ? pickBy(isAttrToShow, interaction.attributes) : interaction.attributes;\n }\n default: {\n const attrPath = getAttrPathFromColumnId(columnData.id);\n return getInteractionAttributeValues(attrPath, interaction);\n }\n }\n};\n\nconst getBasicTableRowsData = (interactions: Interaction[], columnsData: ColumnData, metadata: Metadata) =>\n interactions.map((interaction) =>\n pipe(\n reduce(\n (acc, columnData) => assoc(columnData.id, getRowValueByColumn(columnData, interaction, metadata), acc),\n {}\n ),\n assoc('rawValue', interaction)\n )(columnsData)\n );\n\nconst getNestedPathByColumnId = (columnId) => {\n if (columnId.startsWith('attributes.')) {\n const attrPath = getAttrPathFromColumnId(columnId);\n return attrPath.length > 1 ? attrPath.slice(0, -1) : null;\n } else {\n return null;\n }\n};\n\nconst getCellValueRenderer = (columnData) => {\n if (columnData.id === ACTORS_COLUMN_ID) {\n return ActorsRenderer;\n }\n if (columnData.id === ATTRIBUTES_COLUMN_ID) {\n return AttributesRenderer;\n }\n switch (columnData.dataTypeDefinition.type) {\n case DataTypes.TYPE_URL:\n case DataTypes.TYPE_BLOG_URL:\n case DataTypes.TYPE_IMAGE_URL:\n case DataTypes.TYPE_EMAIL:\n return LinkRenderer;\n case DataTypes.TYPE_BLOB:\n return BlobRender;\n default:\n return DefaultCellValueRenderer;\n }\n};\n\nconst getColumnDataByColumnId = (columnData) => ({\n sortable: true,\n ...columnData,\n resizable: true,\n nestedPath: getNestedPathByColumnId(columnData.id),\n headCellRenderer: HeadCellRenderer,\n rowCellValueRenderer: getCellValueRenderer(columnData)\n});\n\nconst getBasicTableColumnsData = map(getColumnDataByColumnId);\n\nconst getMembersCount = pipe(prop('members'), length);\nconst getMemberCellHeight = pipe(\n map(getMembersCount),\n values,\n reduce((acc, count) => acc + count * 33, 15)\n);\n\nconst calculateMembersCellHeight = pipe(\n path(['cell', 'values']),\n reduce((acc, actors) => acc + getMemberCellHeight(actors), 0)\n);\n\nconst calculateAttributesCellHeight = ({columnData, cell}) => {\n const attributesCount = pipe(path(['values', 0]), values, length)(cell);\n return attributesCount > columnData.maxAttrsToShow\n ? columnData.maxAttrsToShow * 26 + 49\n : attributesCount * 26 + 25;\n};\n\nconst getStaticRowCellHeight = cond([\n [pathEq(['columnData', 'id'], ACTORS_COLUMN_ID), calculateMembersCellHeight],\n [pathEq(['columnData', 'id'], ATTRIBUTES_COLUMN_ID), calculateAttributesCellHeight],\n [T, defaultGetRowCellHeight]\n]);\n\nexport {getBasicTableRowsData, getBasicTableColumnsData, getStaticRowCellHeight};\n","import {makeStyles} from '@mui/styles';\n\nexport const useStyles = makeStyles({\n tableContainer: {\n flex: 1,\n display: 'flex',\n fontFamily: 'Roboto',\n color: 'rgba(0,0,0,0.54)'\n },\n\n '@global div[role=tooltip]': {\n fontFamily: 'Roboto, Helvetica, Arial, sans-serif'\n },\n\n '@global div[role=presentation]': {\n fontFamily: 'Roboto, Helvetica, Arial, sans-serif'\n },\n 'row-cell__buttons-container': {\n position: 'absolute'\n },\n 'row-cell__buttons-wrapper': {\n display: 'flex',\n paddingLeft: '10px',\n '& > button': {\n marginLeft: '-10px',\n transform: 'scale(0.9)'\n }\n }\n});\n","import React, {ForwardedRef, useCallback, useLayoutEffect, useMemo} from 'react';\nimport RowCellRenderer from './cell-renderers/RowCellRenderer';\nimport {BasicTable, ColumnData, ColumnFilter, RowCellAutoSizer} from '@reltio/components';\nimport {getBasicTableColumnsData, getBasicTableRowsData, getStaticRowCellHeight} from './helpers/dataHelpers';\nimport {Interaction, Metadata, SortingField} from '@reltio/mdm-sdk';\nimport {useDynamicRowCellHeight} from '@reltio/components';\nimport {either} from 'ramda';\n\nimport {useStyles} from './styles';\n\ntype Props = {\n columnsData: ColumnData;\n interactions: Interaction[];\n metadata: Metadata;\n sorting: SortingField;\n onSort: (field: string) => void;\n filters?: Record<string, ColumnFilter>;\n onFilter: (event: {columnId: string; filter: ColumnFilter}) => void;\n basicTableRef: ForwardedRef<unknown>;\n};\nconst InteractionsTable = ({\n columnsData,\n interactions,\n metadata,\n sorting,\n onSort,\n filters,\n onFilter,\n basicTableRef\n}: Props) => {\n const tableRowsData = useMemo(\n () => getBasicTableRowsData(interactions, columnsData, metadata),\n [interactions, columnsData, metadata]\n );\n const tableColumnsData = useMemo(() => getBasicTableColumnsData(columnsData), [columnsData]);\n\n const styles = useStyles();\n\n const {getDynamicRowCellHeight, changeRowCellHeight, clearHeightsCache} = useDynamicRowCellHeight();\n\n useLayoutEffect(clearHeightsCache, [interactions]);\n\n const renderRowCell = useCallback(\n (props) => (\n <RowCellAutoSizer onChangeHeight={changeRowCellHeight} {...props}>\n <RowCellRenderer\n {...props}\n isSorted={\n !!sorting && sorting.field === props.columnData.id /* eslint-disable-line react/prop-types */\n }\n />\n </RowCellAutoSizer>\n ),\n [sorting, changeRowCellHeight]\n );\n\n const getRowCellHeight = useCallback(either(getDynamicRowCellHeight, getStaticRowCellHeight), [\n getDynamicRowCellHeight,\n getStaticRowCellHeight\n ]);\n\n return (\n <div className={styles.tableContainer}>\n <BasicTable\n columnsData={tableColumnsData}\n rowsData={tableRowsData}\n sorting={sorting}\n onSort={onSort}\n filters={filters}\n onFilter={onFilter}\n hoverStateEnabled={true}\n defaultColumnWidth={250}\n defaultColumnMinWidth={200}\n getRowCellHeight={getRowCellHeight}\n headRowHeight={56}\n renderRowCell={renderRowCell}\n classes={{\n hoveredRowRightContentWrapper: styles['row-cell__buttons-wrapper'],\n hoveredRowRightContentContainer: styles['row-cell__buttons-container']\n }}\n ref={basicTableRef}\n />\n </div>\n );\n};\n\nexport default InteractionsTable;\n","import {makeStyles} from '@mui/styles';\n\nexport const useStyles = makeStyles({\n header: {\n '& > button': {\n margin: '0 -2px'\n },\n paddingRight: '15px'\n },\n totalCaption: {\n lineHeight: 'inherit',\n fontSize: '14px',\n color: 'rgba(0,0,0,0.6)',\n flexShrink: 0,\n marginRight: '5px'\n },\n interactionTypeSelector: {\n margin: '3px 10px 0 30px',\n overflow: 'hidden'\n }\n});\n","import React from 'react';\nimport {InteractionType} from '@reltio/mdm-sdk';\nimport i18n from 'ui-i18n';\nimport {SelectorWithOnlyOptionAutoSelect} from '@reltio/components';\n\ntype Props = {\n value: string;\n onChange: (value: string) => void;\n interactionTypes: InteractionType[];\n className?: string;\n};\nconst InteractionTypeSelector = ({value, onChange, interactionTypes, className}: Props) => {\n return (\n <SelectorWithOnlyOptionAutoSelect\n classes={{\n root: className\n }}\n value={value}\n onChange={onChange}\n options={interactionTypes.map(({label, uri}) => ({label, value: uri}))}\n emptyLabel={i18n.text('All interaction types')}\n />\n );\n};\n\nexport default InteractionTypeSelector;\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nimport Typography from '@mui/material/Typography';\nimport i18n from 'ui-i18n';\nimport {\n BasicViewHeader,\n ColumnsDataType,\n ColumnsSettings,\n FilterButton,\n HideOnShrink,\n Spacer,\n VerticalDivider\n} from '@reltio/components';\nimport {useStyles} from './styles';\nimport InteractionTypeSelector from './InteractionTypeSelector/InteractionTypeSelector';\nimport {InteractionTypeType} from '@reltio/mdm-sdk';\n\nconst InteractionsTableHeader = ({\n title,\n total,\n filtersEnabled,\n onToggleFilters,\n columnsData,\n selectedColumns,\n onChangeColumns,\n interactionTypes,\n currentInteractionType,\n onInteractionTypeChange\n}) => {\n const styles = useStyles();\n\n return (\n <BasicViewHeader title={title} classes={{root: styles.header, title: styles.title}}>\n {interactionTypes.length > 0 && (\n <InteractionTypeSelector\n className={styles.interactionTypeSelector}\n value={currentInteractionType}\n onChange={onInteractionTypeChange}\n interactionTypes={interactionTypes}\n />\n )}\n <HideOnShrink widthToHide={500}>\n <VerticalDivider height={28} margin={20} />\n <Typography className={styles.totalCaption} variant=\"caption\">\n {total > 1\n ? i18n.text('${count} interactions', {count: total})\n : i18n.text('${count} interaction', {count: total})}\n </Typography>\n </HideOnShrink>\n <Spacer />\n <FilterButton enabled={filtersEnabled} onClick={onToggleFilters} />\n <VerticalDivider height={28} margin={4} />\n <ColumnsSettings\n columnsData={columnsData}\n selectedColumns={selectedColumns}\n onChangeColumns={onChangeColumns}\n />\n </BasicViewHeader>\n );\n};\n\nInteractionsTableHeader.propTypes = {\n title: PropTypes.string,\n total: PropTypes.number,\n columnsData: ColumnsDataType,\n selectedColumns: PropTypes.arrayOf(PropTypes.string),\n onChangeColumns: PropTypes.func,\n filtersEnabled: PropTypes.bool,\n onToggleFilters: PropTypes.func,\n interactionTypes: PropTypes.arrayOf(InteractionTypeType),\n currentInteractionType: PropTypes.string,\n onInteractionTypeChange: PropTypes.func\n};\n\nexport default InteractionsTableHeader;\n","import {\n always,\n assoc,\n concat,\n dissoc,\n either,\n evolve,\n ifElse,\n intersection,\n path,\n pick,\n pipe,\n prop,\n propOr,\n when,\n without,\n unless,\n isNil,\n filter\n} from 'ramda';\nimport {ACTORS_COLUMN_ID, ALL_TYPES_COLUMNS, DEFAULT_COLUMNS} from './helpers/tableHelpers';\nimport {basicTableViewState, createStandardAction, Sorting} from '@reltio/components';\nimport {SearchFilter, validateFilterValue} from '@reltio/mdm-sdk';\nimport {InteractionsSavedState} from './types';\n\nconst CHANGE_INTERACTION_TYPE = 'CHANGE_INTERACTION_TYPE';\nconst APPLY_SAVED_STATE = 'APPLY_SAVED_STATE';\nconst SAVE_CURRENT_STATE = 'SAVE_CURRENT_STATE';\n\nconst actions = {\n ...basicTableViewState.actions,\n changeInteractionType: createStandardAction(CHANGE_INTERACTION_TYPE),\n applySavedState: createStandardAction(APPLY_SAVED_STATE),\n saveCurrentState: createStandardAction(SAVE_CURRENT_STATE)\n};\n\nconst resetActorsColumnFilters = evolve({\n filters: when(prop(ACTORS_COLUMN_ID), dissoc(ACTORS_COLUMN_ID))\n});\n\nconst resetPageNumber = assoc('page', 0);\n\nconst getDefaultVisibleColumnsForCurrentInteractionType = (state) =>\n pipe(\n prop('visibleColumns'),\n ifElse(always(state.currentInteractionType), without(ALL_TYPES_COLUMNS), concat(ALL_TYPES_COLUMNS)),\n intersection(DEFAULT_COLUMNS)\n )(state);\n\nconst getSavedVisibleColumnsForCurrentInteractionType = (state) =>\n path(['visibleColumnsForInteractionTypes', `${state.currentInteractionType}`], state);\n\nconst changeVisibleColumnsForCurrentInteractionType = (state) => {\n const nextVisibleColumns = either(\n getSavedVisibleColumnsForCurrentInteractionType,\n getDefaultVisibleColumnsForCurrentInteractionType\n )(state);\n return basicTableViewState.changeVisibleColumns(state, nextVisibleColumns);\n};\n\nconst getVisibleColumnsFromSavedState = either(getSavedVisibleColumnsForCurrentInteractionType, prop('visibleColumns'));\nconst getFiltersFromSavedState = pipe(\n propOr(null, 'filters'),\n unless(\n isNil,\n filter(({filter, value}) => validateFilterValue(filter, value))\n )\n);\n\nconst saveVisibleColumnsForCurrentInteractionType = (state) => {\n const {currentInteractionType, visibleColumns} = state;\n return evolve(\n {\n visibleColumnsForInteractionTypes: assoc(`${currentInteractionType}`, visibleColumns)\n },\n state\n );\n};\n\nconst getStateToSave = pipe(\n saveVisibleColumnsForCurrentInteractionType,\n pick(['currentInteractionType', 'visibleColumnsForInteractionTypes', 'filters', 'sorting'])\n);\n\ntype InitialState = {\n currentInteractionType?: string;\n filters: SearchFilter[];\n visibleColumns: string[];\n sorting: Sorting;\n page: number;\n rowsPerPage: number;\n saveToState?: InteractionsSavedState;\n entityTypeOfAppliedSavedState?: string;\n visibleColumnsForInteractionTypes: Record<string, string[]>;\n};\n\nconst reducer = (state: InitialState, action) => {\n switch (action.type) {\n case CHANGE_INTERACTION_TYPE: {\n const nextInteractionType = action.payload;\n return pipe(\n saveVisibleColumnsForCurrentInteractionType,\n assoc('currentInteractionType', nextInteractionType),\n changeVisibleColumnsForCurrentInteractionType,\n resetActorsColumnFilters,\n resetPageNumber\n )(state);\n }\n case APPLY_SAVED_STATE: {\n const {savedState, entityType} = action.payload;\n const visibleColumns = savedState ? getVisibleColumnsFromSavedState(savedState) : state.visibleColumns;\n const filters = savedState ? getFiltersFromSavedState(savedState) : state.filters;\n return {\n ...state,\n ...savedState,\n filters,\n visibleColumns,\n entityTypeOfAppliedSavedState: entityType\n };\n }\n case SAVE_CURRENT_STATE: {\n return {\n ...state,\n stateToSave: getStateToSave(state)\n };\n }\n default:\n return basicTableViewState.reducer(state, action);\n }\n};\n\nexport {reducer as default, actions};\n","import {makeStyles} from '@mui/styles';\n\nexport const useStyles = makeStyles((_) => ({\n basicView: {\n position: 'absolute',\n top: 0,\n bottom: 0,\n left: 0,\n right: 0,\n boxShadow: 'none'\n },\n tableView: {\n position: 'relative',\n flex: 1,\n display: 'flex',\n flexDirection: 'column'\n }\n}));\n","import React, {useCallback, useEffect, useMemo, useReducer, useRef} from 'react';\nimport {useSelector} from 'react-redux';\n\nimport {\n BasicTablePagination,\n BasicView,\n LinearLoadIndicator,\n useActions,\n useDidUpdateEffect,\n useSavedStateForEntityType\n} from '@reltio/components';\nimport mdmModule from '@reltio/mdm-module';\nimport {\n Entity,\n getInteractionType,\n getInteractionTypesForEntityType,\n InteractionsPerspectiveConfig,\n Metadata\n} from '@reltio/mdm-sdk';\nimport {pipe, propEq} from 'ramda';\nimport {buildInteractionsFilter} from './helpers/filtersHelpers';\nimport {DEFAULT_COLUMNS, getColumnsData, getRowsPerPageOptions} from './helpers/tableHelpers';\nimport useInteractions from './hooks/useInteractions';\nimport InteractionsTable from './InteractionsTable/InteractionsTable';\nimport InteractionsTableHeader from './InteractionsTableHeader/InteractionsTableHeader';\nimport reducer, {actions} from './stateReducer';\nimport {InteractionsSavedState} from './types';\n\nimport {useStyles} from './styles';\n\nconst DEFAULT_ROWS_PER_PAGE = 15;\nconst DEFAULT_SORT_ORDER = 'desc';\nconst [DEFAULT_SORT_FIELD] = DEFAULT_COLUMNS;\n\ntype Props = {\n config: InteractionsPerspectiveConfig;\n saveState: (state: Record<string, InteractionsSavedState>) => void;\n getSavedState: () => Promise<Record<string, InteractionsSavedState>>;\n};\nconst InteractionsTableView = ({config, getSavedState, saveState}: Props) => {\n const entity: Entity = useSelector(mdmModule.selectors.getEntity);\n const metadata: Metadata = useSelector(mdmModule.selectors.getMetadata);\n const styles = useStyles();\n\n const initialState = {\n currentInteractionType: null,\n filters: null,\n visibleColumns: DEFAULT_COLUMNS,\n sorting: {\n order: config.sortOrder || DEFAULT_SORT_ORDER,\n field: config.sortColumn || DEFAULT_SORT_FIELD\n },\n page: 0,\n rowsPerPage: config.max || DEFAULT_ROWS_PER_PAGE,\n stateToSave: null,\n entityTypeOfAppliedSavedState: null,\n visibleColumnsForInteractionTypes: {}\n };\n\n const [state, dispatch] = useReducer(reducer, initialState);\n const {\n visibleColumns,\n filters,\n sorting,\n page,\n rowsPerPage,\n currentInteractionType,\n stateToSave,\n entityTypeOfAppliedSavedState\n } = state;\n const {\n applySavedState,\n saveCurrentState,\n toggleFilters,\n toggleSort,\n changeFilter,\n changeColumns,\n changeInteractionType,\n changePage,\n changeRowsPerPage\n } = useActions({actions, dispatch});\n\n const {uri: entityUri, type: entityType} = entity || {};\n\n const isSavedStateApplied = entityTypeOfAppliedSavedState === entityType;\n\n const {\n isLoaded: isSavedStateLoaded,\n savedState,\n updateSavedState\n } = useSavedStateForEntityType<InteractionsSavedState>({\n entityTypeUri: entityType,\n getSavedState,\n saveState\n });\n\n useEffect(() => {\n if (isSavedStateLoaded) {\n const interactionTypes = getInteractionTypesForEntityType(metadata, entityType);\n const currentInteractionType = savedState?.currentInteractionType;\n const isInteractionTypeExist =\n !currentInteractionType || getInteractionType({interactionTypes}, currentInteractionType);\n const savedStateToApply = isInteractionTypeExist ? savedState : null;\n applySavedState({savedState: savedStateToApply, entityType});\n }\n }, [isSavedStateLoaded, entityType, metadata]); // eslint-disable-line\n\n useDidUpdateEffect(() => {\n if (isSavedStateApplied) {\n updateSavedState(stateToSave);\n }\n }, [stateToSave]); // eslint-disable-line\n\n const resetPage = () => {\n changePage(0);\n };\n useDidUpdateEffect(resetPage, [entityUri]);\n\n const interactionTypes = useMemo(\n () => getInteractionTypesForEntityType(metadata, entityType),\n [entityType, metadata]\n );\n\n const allColumnsData = useMemo(\n () => getColumnsData(metadata, config, interactionTypes, currentInteractionType),\n [metadata, config, interactionTypes, currentInteractionType]\n );\n\n const visibleColumnsData = useMemo(\n () => visibleColumns.map((id) => allColumnsData.find(propEq('id', id))),\n [visibleColumns, allColumnsData]\n );\n\n const filter = useMemo(\n () => buildInteractionsFilter(currentInteractionType, filters, visibleColumnsData),\n [currentInteractionType, filters] //eslint-disable-line\n );\n\n const {\n isLoading: isInteractionsLoading,\n interactions,\n total\n } = useInteractions({\n enabled: !!entityUri && isSavedStateApplied,\n entityUri,\n filter,\n sorting,\n rowsPerPage,\n page\n });\n\n const rowsPerPageOptions = useMemo(() => getRowsPerPageOptions(initialState.rowsPerPage), []); // eslint-disable-line\n\n const isLoading = !isSavedStateApplied || isInteractionsLoading;\n\n const handleFilterChange = useCallback(pipe(changeFilter, saveCurrentState), [changeFilter, saveCurrentState]);\n\n const basicTableRef = useRef(null);\n\n return (\n <BasicView className={styles.basicView}>\n <InteractionsTableHeader\n title={config.caption}\n total={total}\n columnsData={allColumnsData}\n selectedColumns={visibleColumns}\n onChangeColumns={pipe(changeColumns, saveCurrentState)}\n filtersEnabled={!!filters}\n onToggleFilters={pipe(toggleFilters, saveCurrentState)}\n interactionTypes={interactionTypes}\n currentInteractionType={currentInteractionType}\n onInteractionTypeChange={pipe(changeInteractionType, saveCurrentState)}\n />\n <div className={styles.tableView}>\n <InteractionsTable\n columnsData={visibleColumnsData}\n interactions={interactions}\n metadata={metadata}\n filters={filters}\n onFilter={handleFilterChange}\n sorting={sorting}\n onSort={pipe(toggleSort, saveCurrentState)}\n basicTableRef={basicTableRef}\n />\n <BasicTablePagination\n count={total}\n rowsPerPageOptions={rowsPerPageOptions}\n rowsPerPage={rowsPerPage}\n onChangeRowsPerPage={changeRowsPerPage}\n page={page}\n onChangePage={changePage}\n basicTableRef={basicTableRef}\n />\n {isLoading && <LinearLoadIndicator />}\n </div>\n </BasicView>\n );\n};\n\nexport default InteractionsTableView;\n","import {useState, useEffect} from 'react';\nimport {getInteractions} from '@reltio/mdm-sdk';\nimport {Sorting, useSafePromise} from '@reltio/components';\n\ntype Props = {\n entityUri: string;\n sorting: Sorting;\n page: number;\n rowsPerPage: number;\n filter: string;\n enabled: boolean;\n};\n\nconst useInteractions = ({entityUri, filter, sorting, page, rowsPerPage, enabled}: Props) => {\n const [isLoading, setIsLoading] = useState(false);\n const [total, setTotal] = useState(0);\n const [interactions, setInteractions] = useState([]);\n const safePromise = useSafePromise();\n\n useEffect(() => {\n if (enabled) {\n setIsLoading(true);\n safePromise(\n getInteractions({\n entityUri: entityUri,\n offset: page * rowsPerPage,\n max: rowsPerPage,\n filter,\n sort: sorting.field,\n order: sorting.order\n })\n )\n .then(({totalFetched, interactions = []}) => {\n setTotal(totalFetched);\n setInteractions(interactions);\n })\n .then((_) => setIsLoading(false))\n .catch((_) => setIsLoading(false));\n }\n }, [entityUri, filter, sorting.field, sorting.order, page, rowsPerPage, enabled]); // eslint-disable-line\n\n return {isLoading, interactions, total};\n};\n\nexport default useInteractions;\n","import React, {useCallback} from 'react';\nimport {AdapterMoment} from '@mui/x-date-pickers/AdapterMoment';\nimport createGenerateClassName from '@mui/styles/createGenerateClassName';\nimport StylesProvider from '@mui/styles/StylesProvider';\nimport ReactResizeDetector from 'react-resize-detector';\nimport {Store} from 'redux';\nimport {LocalizationProvider} from '@mui/x-date-pickers/LocalizationProvider';\nimport {ErrorPopup, ViewIdContext} from '@reltio/components';\nimport {InteractionsPerspectiveConfig, promisifyCallback} from '@reltio/mdm-sdk';\nimport {identity} from 'ramda';\nimport {Provider} from 'react-redux';\nimport InteractionsTableView from './InteractionsTableView';\nimport {InteractionsSavedState} from './InteractionsTableView/types';\n\nconst generateClassName = createGenerateClassName({\n productionPrefix: 'interactionTable',\n disableGlobal: true,\n seed: 'intr'\n});\n\ntype Props = {\n config: InteractionsPerspectiveConfig;\n store: Store<unknown>;\n onResize?: (width: number, height: number) => void;\n saveState: (state: Record<string, InteractionsSavedState>) => void;\n getSavedState: () => Record<string, InteractionsSavedState>;\n};\n\nconst InteractionsView = ({config, store, onResize = identity, saveState, getSavedState}: Props) => {\n const getSavedStatePromisified: () => Promise<Record<string, InteractionsSavedState>> = useCallback(\n promisifyCallback(getSavedState),\n [getSavedState]\n );\n\n return (\n <Provider store={store}>\n <ViewIdContext.Provider value={config.id}>\n <StylesProvider generateClassName={generateClassName}>\n <LocalizationProvider dateAdapter={AdapterMoment}>\n <ReactResizeDetector\n handleHeight\n onResize={(width, height) => onResize(Math.floor(width), Math.floor(height))}\n />\n {config && (\n <InteractionsTableView\n config={config}\n saveState={saveState}\n getSavedState={getSavedStatePromisified}\n />\n )}\n <ErrorPopup />\n </LocalizationProvider>\n </StylesProvider>\n </ViewIdContext.Provider>\n </Provider>\n );\n};\n\nexport default InteractionsView;\n","import {InteractionsView} from '@reltio/interactions';\n\nexport default InteractionsView;\n"],"names":["formatTokenMap","Y","YY","YYYY","M","sectionType","contentType","maxLength","MM","MMM","MMMM","D","DD","Do","E","e","d","dd","ddd","dddd","A","a","H","HH","h","hh","m","mm","s","ss","defaultFormats","year","month","monthShort","dayOfMonth","weekday","weekdayShort","hours24h","hours12h","meridiem","minutes","seconds","fullDate","fullDateWithWeekday","keyboardDate","shortDate","normalDate","normalDateWithWeekday","monthAndYear","monthAndDate","fullTime","fullTime12h","fullTime24h","fullDateTime","fullDateTime12h","fullDateTime24h","keyboardDateTime","keyboardDateTime12h","keyboardDateTime24h","MISSING_TIMEZONE_PLUGIN","join","AdapterMoment","constructor","locale","formats","instance","this","isMUIAdapter","isTimezoneCompatible","lib","moment","escapedCharacters","start","end","setLocaleToValue","value","expectedLocale","getCurrentLocaleCode","hasTimezonePlugin","tz","createSystemDate","parsedValue","local","undefined","createUTCDate","utc","createTZDate","timezone","Error","date","dateWithTimezone","getTimezone","_value$_z","_ref","_this$moment$defaultZ","isUTC","zone","_z","name","defaultZone","setTimezone","_this$moment$defaultZ2","_this$moment$defaultZ3","clone","cleanZone","newValue","toJsDate","toDate","parseISO","isoString","toISO","toISOString","parse","format","is12HourCycleInCurrentLocale","test","longDateFormat","expandFormat","match","map","token","firstCharacter","getFormatHelperText","replace","toLocaleLowerCase","isNull","isValid","formatKey","formatByString","formatString","clonedDate","formatNumber","numberToFormat","getDiff","comparing","unit","diff","isEqual","isSame","isSameYear","isSameMonth","isSameDay","isSameHour","isAfter","isAfterYear","isAfterDay","isBefore","isBeforeYear","isBeforeDay","isWithinRange","isBetween","startOfYear","startOf","startOfMonth","startOfWeek","startOfDay","endOfYear","endOf","endOfMonth","endOfWeek","endOfDay","addYears","amount","subtract","Math","abs","add","addMonths","addWeeks","addDays","addHours","addMinutes","addSeconds","getYear","get","getMonth","getDate","getHours","getMinutes","getSeconds","getMilliseconds","setYear","setMonth","setDate","setHours","hours","setMinutes","setSeconds","setMilliseconds","milliseconds","getDaysInMonth","daysInMonth","getNextMonth","getPreviousMonth","getMonthArray","monthArray","length","prevMonth","push","mergeDateAndTime","dateParam","timeParam","hour","minute","second","getWeekdays","getWeekArray","cleanLocale","count","current","nestedWeeks","weekNumber","floor","getWeekNumber","week","getYearRange","startDate","endDate","years","getMeridiemText","ampm","defaultGetRowCellKey","rowIndex","columnData","id","cellIndex","getRowCellKey","rowCellHeightsMap","setRowCellHeightsMap","useState","rowCellHeightsMapCache","useRef","batchHeightUpdate","key","flushHeightUpdates","useCallback","debounce","prev","next","equals","clearHeightsCache","getDynamicRowCellHeight","pipe","prop","__","changeRowCellHeight","curry","useWith","identity","props","width","height","viewBox","xmlns","fill","fillRule","stroke","strokeWidth","opacity","ColumnsSettings","columnsData","selectedColumns","onChangeColumns","title","tooltipTitle","anchorEl","setAnchorEl","handleColumnClick","column","changedColumns","getChildColumns","pluck","wasSelected","isColumnSelected","difference","uniq","concat","SmallIconButton","i18n","size","icon","TableIcon","onClick","event","currentTarget","ColumnsSettingsPopup","onColumnClick","onClose","propTypes","ColumnsDataType","PropTypes","useStyles","makeStyles","popup","minWidth","groupItem","backgroundColor","ColumnListItem","item","checked","level","style","isFocused","isGroupItem","hideCheckBox","styles","AttributeListItem","data","label","Highlighter","text","highlight","filterText","labelInText","hideIcon","className","classnames","setFilterText","groupedItems","useMemo","buildColumnItems","items","flattenGroupedItemsData","containerWidth","getMaxItemWidth","handleSearchOnEnter","focusIndex","handleKeyDown","useKeyboardNavigation","open","onSelectFocusedItem","selectedItems","handleClose","listHeight","min","containerHeight","max","SelectionPopup","onSearch","searchInputOnKeyDown","VirtualGroupedList","fixedTitle","renderItem","index","isGroupColumn","getItemSize","groupId","isParentToColumn","parent","startsWith","isGroupToColumn","group","isHideableColumn","propOr","addColumn","columns","root","find","either","getColumnRoot","children","filterColumnsByLabel","utils","some","buildColumnsTrees","reduce","acc","attrType","dataTypeDefinition","buildFilteredColumnItems","filter","chain","isGroupedColumnsData","has","flattenGroupedColumnsData","assoc","when","childColumns","includes","every","theme","color","palette","primary","main","closeIcon","position","right","bottom","transform","button","padding","FilterButton","enabled","Tooltip","IconButton","classes","Filter","Close","pagination","display","alignItems","justifyContent","borderTop","boxShadow","caption","fontSize","lineHeight","selectRoot","marginLeft","marginRight","select","textAlign","actions","BasicTablePagination","rowsPerPageOptions","page","onChangePage","rowsPerPage","onChangeRowsPerPage","basicTableRef","labelRowsPerPage","resetScrollbarPosition","pathOr","handleChangePage","handleChangeRowsPerPage","TablePagination","selectLabel","displayedRows","input","backIconButtonProps","nextIconButtonProps","component","labelDisplayedRows","from","to","fromRow","toRow","countRows","onPageChange","nthArg","onRowsPerPageChange","getValue","React","onChangeHeight","cell","cellProps","cellRef","rowValue","changeCellHeight","adjustCellHeight","clientHeight","useDidUpdateEffect","rawValue","ref","handleHeight","onResize","CHANGE_COLUMNS","TOGGLE_FILTERS","CHANGE_FILTER","TOGGLE_SORT","CHANGE_PAGE","CHANGE_ROWS_PER_PAGE","changeColumns","createStandardAction","toggleFilters","changeFilter","toggleSort","changePage","changeRowsPerPage","changeVisibleColumns","state","nextVisibleColumns","removedColumns","visibleColumns","isRemovedColumn","columnId","evolve","always","sorting","field","nextSortField","order","filters","keys","dissoc","reducer","action","type","columnIds","payload","enableFilters","prevSortField","path","prevSortOrder","toggleSortOrder","basicViewPaper","flexDirection","basicView","BasicView","forwardRef","otherProps","Paper","displayName","EmptyStub","widthToHide","handleWidth","render","onlyValue","fontWeight","whiteSpace","textOverflow","overflow","paddingLeft","paddingRight","selectMenu","textField","maxWidth","SelectorWithOnlyOptionAutoSelect","onChange","options","emptyLabel","firstOption","moreOptions","hasOnlyOneOptionToSelect","useEffect","displayEmpty","Typography","variant","DropDownEditor","disableUnderline","TextFieldProps","MenuProps","list","entries","flex","VerticalDivider","margin","borderLeft","flexShrink","viewMoreLessLink","cursor","arrow","transition","rotated","ViewMoreToggle","active","Link","underline","ArrowDropDown","useActions","dispatch","Object","actionName","actionCreator","useSavedStateForEntityType","getSavedState","saveState","entityTypeUri","savedState","setSavedState","changedState","setChangedState","isLoaded","setIsLoaded","updateSavedState","stateToSave","then","_","catch","createInteractionTypeFilter","ROWS_PER_PAGE_OPTIONS","INTERACTION_TYPE_COLUMN_ID","ACTORS_COLUMN_ID","ATTRIBUTES_COLUMN_ID","DEFAULT_COLUMNS_DATA","DataTypes","hideable","sortable","filterOptions","FilterOptions","filterable","maxAttrsToShow","DEFAULT_COLUMNS","ALL_TYPES_COLUMNS","getColumnsDataFromInteractionAttributes","attr","attributeUriToSearchUri","uri","getAttrDataTypeDefinition","uniqBy","getActorTypesOptions","memberTypes","updateColumnData","updateFn","adjust","findIndex","propEq","updateActorsColumn","interactionTypes","typeFilterDataType","makeTypeOption","makeCompositeFilterOption","getActorsColumnFilterOptions","getColumnsData","metadata","config","currentInteractionType","getInteractionAttributesFromMetadata","reject","getInteractionType","attributes","getInteractionColumnDataType","updateInteractionTypeColumn","defaultWrapperStyles","paddingBottom","headCell","rowCell","overflowWrap","wordWrap","actorsWrapper","memberWrapper","paddingTop","boxSizing","entityLabel","overflowX","entityAvatar","left","top","defaultWrapper","blobWrapper","link","attributesWrapper","viewMore","RowCellRenderer","CellValueRenderer","isSorted","values","withFilterAtBottom","DefaultHeadCellRenderer","MemberItem","entityType","labelCaption","getLabel","EntityTypeIcon","EntityTypeType","getActorsMembers","ActorsRenderer","members","useDispatch","viewId","useContext","ViewIdContext","useSelector","mdm","objectURI","getEntityType","openEntityWithUri","ui","DefaultCellValueRenderer","DataTypeValue","BlobRender","LinkRenderer","href","target","AttributesRenderer","mdmModule","interaction","attrTypes","expanded","setExpanded","attrNames","visibleCountLimit","hasExtraValuesToShow","attrNamesToShow","slice","attrsToShow","pick","attrTypesToShow","entity","drawLines","getAttrPathFromColumnId","split","Infinity","getNestedPathByColumnId","attrPath","getCellValueRenderer","getBasicTableColumnsData","resizable","nestedPath","headCellRenderer","HeadCellRenderer","rowCellValueRenderer","getMembersCount","getMemberCellHeight","calculateMembersCellHeight","actors","getStaticRowCellHeight","cond","pathEq","attributesCount","T","defaultGetRowCellHeight","tableContainer","fontFamily","interactions","onSort","onFilter","tableRowsData","getActorsForInteraction","timestamp","urisToShow","isAttrToShow","makeAttrTypeUri","pickBy","getAttributeValuesByPath","getInteractionAttributeValues","getRowValueByColumn","getBasicTableRowsData","tableColumnsData","useDynamicRowCellHeight","useLayoutEffect","renderRowCell","RowCellAutoSizer","getRowCellHeight","BasicTable","rowsData","hoverStateEnabled","defaultColumnWidth","defaultColumnMinWidth","headRowHeight","hoveredRowRightContentWrapper","hoveredRowRightContentContainer","header","totalCaption","interactionTypeSelector","InteractionsTableHeader","total","filtersEnabled","onToggleFilters","onInteractionTypeChange","BasicViewHeader","HideOnShrink","Spacer","InteractionTypeType","CHANGE_INTERACTION_TYPE","APPLY_SAVED_STATE","SAVE_CURRENT_STATE","basicTableViewState","changeInteractionType","applySavedState","saveCurrentState","resetActorsColumnFilters","resetPageNumber","getDefaultVisibleColumnsForCurrentInteractionType","ifElse","without","intersection","getSavedVisibleColumnsForCurrentInteractionType","changeVisibleColumnsForCurrentInteractionType","getVisibleColumnsFromSavedState","getFiltersFromSavedState","unless","isNil","validateFilterValue","saveVisibleColumnsForCurrentInteractionType","visibleColumnsForInteractionTypes","getStateToSave","nextInteractionType","entityTypeOfAppliedSavedState","tableView","DEFAULT_SORT_FIELD","initialState","sortOrder","sortColumn","useReducer","entityUri","isSavedStateApplied","isSavedStateLoaded","getInteractionTypesForEntityType","isInteractionTypeExist","allColumnsData","visibleColumnsData","currentTypeClause","Maybe","orSome","filtersClause","buildColumnsFilter","FilterBuilder","addClause","build","buildInteractionsFilter","isLoading","isInteractionsLoading","setIsLoading","setTotal","setInteractions","safePromise","useSafePromise","getInteractions","offset","sort","totalFetched","useInteractions","getRowsPerPageOptions","defaultRowsPerPage","option","handleFilterChange","LinearLoadIndicator","generateClassName","createGenerateClassName","productionPrefix","disableGlobal","seed","store","getSavedStatePromisified","promisifyCallback","Provider","StylesProvider","LocalizationProvider","dateAdapter","ErrorPopup"],"sourceRoot":""}
|
|
1
|
+
{"version":3,"file":"9283.js","mappings":"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","sources":["webpack://@reltio/remotes/../../node_modules/@mui/x-date-pickers/AdapterMoment/AdapterMoment.js","webpack://@reltio/remotes/../components/src/components/BasicTableView/BasicTable/hooks/useDynamicRowCellHeight.ts","webpack://@reltio/remotes/../components/src/icons/Table.tsx","webpack://@reltio/remotes/../components/src/components/BasicTableView/BasicTableHeader/ColumnsSettings/ColumnsSettings.js","webpack://@reltio/remotes/../components/src/components/BasicTableView/BasicTableHeader/ColumnsSettings/styles.js","webpack://@reltio/remotes/../components/src/components/BasicTableView/BasicTableHeader/ColumnsSettings/ColumnListItem.js","webpack://@reltio/remotes/../components/src/components/BasicTableView/BasicTableHeader/ColumnsSettings/ColumnsSettingsPopup.tsx","webpack://@reltio/remotes/../components/src/components/BasicTableView/BasicTableHeader/ColumnsSettings/columnHelpers.js","webpack://@reltio/remotes/../components/src/icons/Filter.tsx","webpack://@reltio/remotes/../components/src/components/BasicTableView/BasicTableHeader/FilterButton/styles.js","webpack://@reltio/remotes/../components/src/components/BasicTableView/BasicTableHeader/FilterButton/FilterButton.js","webpack://@reltio/remotes/../components/src/components/BasicTableView/BasicTablePagination/styles.js","webpack://@reltio/remotes/../components/src/components/BasicTableView/BasicTablePagination/BasicTablePagination.js","webpack://@reltio/remotes/../components/src/components/BasicTableView/RowCellAutoSizer/RowCellAutoSizer.tsx","webpack://@reltio/remotes/../components/src/components/BasicTableView/viewState/basicTableViewState.js","webpack://@reltio/remotes/../components/src/components/BasicView/styles.ts","webpack://@reltio/remotes/../components/src/components/BasicView/BasicView.tsx","webpack://@reltio/remotes/../components/src/components/HideOnShrink/HideOnShrink.tsx","webpack://@reltio/remotes/../components/src/components/SelectorWithOnlyOptionAutoSelect/styles.js","webpack://@reltio/remotes/../components/src/components/SelectorWithOnlyOptionAutoSelect/SelectorWithOnlyOptionAutoSelect.js","webpack://@reltio/remotes/../components/src/components/Spacer/Spacer.js","webpack://@reltio/remotes/../components/src/components/VerticalDivider/VerticalDivider.js","webpack://@reltio/remotes/../components/src/components/ViewMoreToggle/styles.js","webpack://@reltio/remotes/../components/src/components/ViewMoreToggle/ViewMoreToggle.js","webpack://@reltio/remotes/../components/src/hooks/useActions.ts","webpack://@reltio/remotes/../components/src/hooks/useSavedStateForEntityType.ts","webpack://@reltio/remotes/../interactions/src/InteractionsTableView/helpers/filtersHelpers.ts","webpack://@reltio/remotes/../interactions/src/InteractionsTableView/helpers/tableHelpers.ts","webpack://@reltio/remotes/../interactions/src/InteractionsTableView/InteractionsTable/cell-renderers/styles.js","webpack://@reltio/remotes/../interactions/src/InteractionsTableView/InteractionsTable/cell-renderers/RowCellRenderer.js","webpack://@reltio/remotes/../interactions/src/InteractionsTableView/InteractionsTable/cell-renderers/HeadCellRenderer.js","webpack://@reltio/remotes/../interactions/src/InteractionsTableView/InteractionsTable/cell-renderers/ActorsRenderer.js","webpack://@reltio/remotes/../interactions/src/InteractionsTableView/InteractionsTable/cell-renderers/DefaultCellValueRenderer.js","webpack://@reltio/remotes/../interactions/src/InteractionsTableView/InteractionsTable/cell-renderers/BlobRenderer.js","webpack://@reltio/remotes/../interactions/src/InteractionsTableView/InteractionsTable/cell-renderers/LinkRenderer.js","webpack://@reltio/remotes/../interactions/src/InteractionsTableView/InteractionsTable/cell-renderers/AttributesRenderer.js","webpack://@reltio/remotes/../interactions/src/InteractionsTableView/InteractionsTable/helpers/dataHelpers.ts","webpack://@reltio/remotes/../interactions/src/InteractionsTableView/InteractionsTable/styles.ts","webpack://@reltio/remotes/../interactions/src/InteractionsTableView/InteractionsTable/InteractionsTable.tsx","webpack://@reltio/remotes/../interactions/src/InteractionsTableView/InteractionsTableHeader/styles.js","webpack://@reltio/remotes/../interactions/src/InteractionsTableView/InteractionsTableHeader/InteractionTypeSelector/InteractionTypeSelector.tsx","webpack://@reltio/remotes/../interactions/src/InteractionsTableView/InteractionsTableHeader/InteractionsTableHeader.js","webpack://@reltio/remotes/../interactions/src/InteractionsTableView/stateReducer.ts","webpack://@reltio/remotes/../interactions/src/InteractionsTableView/styles.ts","webpack://@reltio/remotes/../interactions/src/InteractionsTableView/index.tsx","webpack://@reltio/remotes/../interactions/src/InteractionsTableView/hooks/useInteractions.ts","webpack://@reltio/remotes/../interactions/src/index.tsx","webpack://@reltio/remotes/./src/interactions.ts"],"sourcesContent":["import _extends from \"@babel/runtime/helpers/esm/extends\";\n/* eslint-disable class-methods-use-this */\nimport defaultMoment from 'moment';\n// From https://momentjs.com/docs/#/displaying/format/\nconst formatTokenMap = {\n // Year\n Y: 'year',\n YY: 'year',\n YYYY: 'year',\n // Month\n M: {\n sectionType: 'month',\n contentType: 'digit',\n maxLength: 2\n },\n MM: 'month',\n MMM: {\n sectionType: 'month',\n contentType: 'letter'\n },\n MMMM: {\n sectionType: 'month',\n contentType: 'letter'\n },\n // Day of the month\n D: {\n sectionType: 'day',\n contentType: 'digit',\n maxLength: 2\n },\n DD: 'day',\n Do: {\n sectionType: 'day',\n contentType: 'digit-with-letter'\n },\n // Day of the week\n E: {\n sectionType: 'weekDay',\n contentType: 'digit',\n maxLength: 1\n },\n e: {\n sectionType: 'weekDay',\n contentType: 'digit',\n maxLength: 1\n },\n d: {\n sectionType: 'weekDay',\n contentType: 'digit',\n maxLength: 1\n },\n dd: {\n sectionType: 'weekDay',\n contentType: 'letter'\n },\n ddd: {\n sectionType: 'weekDay',\n contentType: 'letter'\n },\n dddd: {\n sectionType: 'weekDay',\n contentType: 'letter'\n },\n // Meridiem\n A: 'meridiem',\n a: 'meridiem',\n // Hours\n H: {\n sectionType: 'hours',\n contentType: 'digit',\n maxLength: 2\n },\n HH: 'hours',\n h: {\n sectionType: 'hours',\n contentType: 'digit',\n maxLength: 2\n },\n hh: 'hours',\n // Minutes\n m: {\n sectionType: 'minutes',\n contentType: 'digit',\n maxLength: 2\n },\n mm: 'minutes',\n // Seconds\n s: {\n sectionType: 'seconds',\n contentType: 'digit',\n maxLength: 2\n },\n ss: 'seconds'\n};\nconst defaultFormats = {\n year: 'YYYY',\n month: 'MMMM',\n monthShort: 'MMM',\n dayOfMonth: 'D',\n weekday: 'dddd',\n weekdayShort: 'ddd',\n hours24h: 'HH',\n hours12h: 'hh',\n meridiem: 'A',\n minutes: 'mm',\n seconds: 'ss',\n fullDate: 'll',\n fullDateWithWeekday: 'dddd, LL',\n keyboardDate: 'L',\n shortDate: 'MMM D',\n normalDate: 'D MMMM',\n normalDateWithWeekday: 'ddd, MMM D',\n monthAndYear: 'MMMM YYYY',\n monthAndDate: 'MMMM D',\n fullTime: 'LT',\n fullTime12h: 'hh:mm A',\n fullTime24h: 'HH:mm',\n fullDateTime: 'lll',\n fullDateTime12h: 'll hh:mm A',\n fullDateTime24h: 'll HH:mm',\n keyboardDateTime: 'L LT',\n keyboardDateTime12h: 'L hh:mm A',\n keyboardDateTime24h: 'L HH:mm'\n};\nconst MISSING_TIMEZONE_PLUGIN = ['Missing timezone plugin', 'To be able to use timezones, you have to pass the default export from `moment-timezone` to the `dateLibInstance` prop of `LocalizationProvider`', 'Find more information on https://mui.com/x/react-date-pickers/timezone/#moment-and-timezone'].join('\\n');\n\n/**\n * Based on `@date-io/moment`\n *\n * MIT License\n *\n * Copyright (c) 2017 Dmitriy Kovalenko\n *\n * Permission is hereby granted, free of charge, to any person obtaining a copy\n * of this software and associated documentation files (the \"Software\"), to deal\n * in the Software without restriction, including without limitation the rights\n * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n * copies of the Software, and to permit persons to whom the Software is\n * furnished to do so, subject to the following conditions:\n *\n * The above copyright notice and this permission notice shall be included in all\n * copies or substantial portions of the Software.\n *\n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\n * SOFTWARE.\n */\nexport class AdapterMoment {\n constructor({\n locale,\n formats,\n instance\n } = {}) {\n this.isMUIAdapter = true;\n this.isTimezoneCompatible = true;\n this.lib = 'moment';\n this.moment = void 0;\n this.locale = void 0;\n this.formats = void 0;\n this.escapedCharacters = {\n start: '[',\n end: ']'\n };\n this.formatTokenMap = formatTokenMap;\n this.setLocaleToValue = value => {\n const expectedLocale = this.getCurrentLocaleCode();\n if (expectedLocale === value.locale()) {\n return value;\n }\n return value.locale(expectedLocale);\n };\n this.hasTimezonePlugin = () => typeof this.moment.tz !== 'undefined';\n this.createSystemDate = value => {\n const parsedValue = this.moment(value).local();\n if (this.locale === undefined) {\n return parsedValue;\n }\n return parsedValue.locale(this.locale);\n };\n this.createUTCDate = value => {\n const parsedValue = this.moment.utc(value);\n if (this.locale === undefined) {\n return parsedValue;\n }\n return parsedValue.locale(this.locale);\n };\n this.createTZDate = (value, timezone) => {\n /* istanbul ignore next */\n if (!this.hasTimezonePlugin()) {\n throw new Error(MISSING_TIMEZONE_PLUGIN);\n }\n const parsedValue = timezone === 'default' ? this.moment(value) : this.moment.tz(value, timezone);\n if (this.locale === undefined) {\n return parsedValue;\n }\n return parsedValue.locale(this.locale);\n };\n this.date = value => {\n if (value === null) {\n return null;\n }\n const moment = this.moment(value);\n moment.locale(this.getCurrentLocaleCode());\n return moment;\n };\n this.dateWithTimezone = (value, timezone) => {\n if (value === null) {\n return null;\n }\n if (timezone === 'UTC') {\n return this.createUTCDate(value);\n }\n if (timezone === 'system' || timezone === 'default' && !this.hasTimezonePlugin()) {\n return this.createSystemDate(value);\n }\n return this.createTZDate(value, timezone);\n };\n this.getTimezone = value => {\n var _value$_z, _ref, _this$moment$defaultZ;\n if (value.isUTC()) {\n return 'UTC';\n }\n\n // @ts-ignore\n // eslint-disable-next-line no-underscore-dangle\n const zone = (_value$_z = value._z) == null ? void 0 : _value$_z.name;\n\n // @ts-ignore\n return (_ref = zone != null ? zone : (_this$moment$defaultZ = this.moment.defaultZone) == null ? void 0 : _this$moment$defaultZ.name) != null ? _ref : 'system';\n };\n this.setTimezone = (value, timezone) => {\n var _this$moment$defaultZ2, _this$moment$defaultZ3;\n if (timezone === 'UTC') {\n return value.clone().utc();\n }\n if (timezone === 'system') {\n return value.clone().local();\n }\n if (!this.hasTimezonePlugin()) {\n if (timezone === 'default') {\n return value;\n }\n\n /* istanbul ignore next */\n throw new Error(MISSING_TIMEZONE_PLUGIN);\n }\n const cleanZone = timezone === 'default' ? // @ts-ignore\n (_this$moment$defaultZ2 = (_this$moment$defaultZ3 = this.moment.defaultZone) == null ? void 0 : _this$moment$defaultZ3.name) != null ? _this$moment$defaultZ2 : 'system' : timezone;\n const newValue = value.clone();\n newValue.tz(cleanZone);\n return newValue;\n };\n this.toJsDate = value => {\n return value.toDate();\n };\n this.parseISO = isoString => {\n return this.moment(isoString, true);\n };\n this.toISO = value => {\n return value.toISOString();\n };\n this.parse = (value, format) => {\n if (value === '') {\n return null;\n }\n if (this.locale) {\n return this.moment(value, format, this.locale, true);\n }\n return this.moment(value, format, true);\n };\n this.getCurrentLocaleCode = () => {\n return this.locale || defaultMoment.locale();\n };\n this.is12HourCycleInCurrentLocale = () => {\n return /A|a/.test(defaultMoment.localeData(this.getCurrentLocaleCode()).longDateFormat('LT'));\n };\n this.expandFormat = format => {\n // @see https://github.com/moment/moment/blob/develop/src/lib/format/format.js#L6\n const localFormattingTokens = /(\\[[^[]*\\])|(\\\\)?(LTS|LT|LL?L?L?|l{1,4})|./g;\n return format.match(localFormattingTokens).map(token => {\n const firstCharacter = token[0];\n if (firstCharacter === 'L' || firstCharacter === ';') {\n return defaultMoment.localeData(this.getCurrentLocaleCode()).longDateFormat(token);\n }\n return token;\n }).join('');\n };\n this.getFormatHelperText = format => {\n return this.expandFormat(format).replace(/a/gi, '(a|p)m').toLocaleLowerCase();\n };\n this.isNull = value => {\n return value === null;\n };\n this.isValid = value => {\n return this.moment(value).isValid();\n };\n this.format = (value, formatKey) => {\n return this.formatByString(value, this.formats[formatKey]);\n };\n this.formatByString = (value, formatString) => {\n const clonedDate = value.clone();\n clonedDate.locale(this.getCurrentLocaleCode());\n return clonedDate.format(formatString);\n };\n this.formatNumber = numberToFormat => {\n return numberToFormat;\n };\n this.getDiff = (value, comparing, unit) => {\n return value.diff(comparing, unit);\n };\n this.isEqual = (value, comparing) => {\n if (value === null && comparing === null) {\n return true;\n }\n return this.moment(value).isSame(comparing);\n };\n this.isSameYear = (value, comparing) => {\n return value.isSame(comparing, 'year');\n };\n this.isSameMonth = (value, comparing) => {\n return value.isSame(comparing, 'month');\n };\n this.isSameDay = (value, comparing) => {\n return value.isSame(comparing, 'day');\n };\n this.isSameHour = (value, comparing) => {\n return value.isSame(comparing, 'hour');\n };\n this.isAfter = (value, comparing) => {\n return value.isAfter(comparing);\n };\n this.isAfterYear = (value, comparing) => {\n return value.isAfter(comparing, 'year');\n };\n this.isAfterDay = (value, comparing) => {\n return value.isAfter(comparing, 'day');\n };\n this.isBefore = (value, comparing) => {\n return value.isBefore(comparing);\n };\n this.isBeforeYear = (value, comparing) => {\n return value.isBefore(comparing, 'year');\n };\n this.isBeforeDay = (value, comparing) => {\n return value.isBefore(comparing, 'day');\n };\n this.isWithinRange = (value, [start, end]) => {\n return value.isBetween(start, end, null, '[]');\n };\n this.startOfYear = value => {\n return value.clone().startOf('year');\n };\n this.startOfMonth = value => {\n return value.clone().startOf('month');\n };\n this.startOfWeek = value => {\n return value.clone().startOf('week');\n };\n this.startOfDay = value => {\n return value.clone().startOf('day');\n };\n this.endOfYear = value => {\n return value.clone().endOf('year');\n };\n this.endOfMonth = value => {\n return value.clone().endOf('month');\n };\n this.endOfWeek = value => {\n return value.clone().endOf('week');\n };\n this.endOfDay = value => {\n return value.clone().endOf('day');\n };\n this.addYears = (value, amount) => {\n return amount < 0 ? value.clone().subtract(Math.abs(amount), 'years') : value.clone().add(amount, 'years');\n };\n this.addMonths = (value, amount) => {\n return amount < 0 ? value.clone().subtract(Math.abs(amount), 'months') : value.clone().add(amount, 'months');\n };\n this.addWeeks = (value, amount) => {\n return amount < 0 ? value.clone().subtract(Math.abs(amount), 'weeks') : value.clone().add(amount, 'weeks');\n };\n this.addDays = (value, amount) => {\n return amount < 0 ? value.clone().subtract(Math.abs(amount), 'days') : value.clone().add(amount, 'days');\n };\n this.addHours = (value, amount) => {\n return amount < 0 ? value.clone().subtract(Math.abs(amount), 'hours') : value.clone().add(amount, 'hours');\n };\n this.addMinutes = (value, amount) => {\n return amount < 0 ? value.clone().subtract(Math.abs(amount), 'minutes') : value.clone().add(amount, 'minutes');\n };\n this.addSeconds = (value, amount) => {\n return amount < 0 ? value.clone().subtract(Math.abs(amount), 'seconds') : value.clone().add(amount, 'seconds');\n };\n this.getYear = value => {\n return value.get('year');\n };\n this.getMonth = value => {\n return value.get('month');\n };\n this.getDate = value => {\n return value.get('date');\n };\n this.getHours = value => {\n return value.get('hours');\n };\n this.getMinutes = value => {\n return value.get('minutes');\n };\n this.getSeconds = value => {\n return value.get('seconds');\n };\n this.getMilliseconds = value => {\n return value.get('milliseconds');\n };\n this.setYear = (value, year) => {\n return value.clone().year(year);\n };\n this.setMonth = (value, month) => {\n return value.clone().month(month);\n };\n this.setDate = (value, date) => {\n return value.clone().date(date);\n };\n this.setHours = (value, hours) => {\n return value.clone().hours(hours);\n };\n this.setMinutes = (value, minutes) => {\n return value.clone().minutes(minutes);\n };\n this.setSeconds = (value, seconds) => {\n return value.clone().seconds(seconds);\n };\n this.setMilliseconds = (value, milliseconds) => {\n return value.clone().milliseconds(milliseconds);\n };\n this.getDaysInMonth = value => {\n return value.daysInMonth();\n };\n this.getNextMonth = value => {\n return value.clone().add(1, 'month');\n };\n this.getPreviousMonth = value => {\n return value.clone().subtract(1, 'month');\n };\n this.getMonthArray = value => {\n const firstMonth = this.startOfYear(value);\n const monthArray = [firstMonth];\n while (monthArray.length < 12) {\n const prevMonth = monthArray[monthArray.length - 1];\n monthArray.push(this.getNextMonth(prevMonth));\n }\n return monthArray;\n };\n this.mergeDateAndTime = (dateParam, timeParam) => {\n return dateParam.clone().hour(timeParam.hour()).minute(timeParam.minute()).second(timeParam.second());\n };\n this.getWeekdays = () => {\n return defaultMoment.weekdaysShort(true);\n };\n this.getWeekArray = value => {\n const cleanLocale = this.setLocaleToValue(value);\n const start = cleanLocale.clone().startOf('month').startOf('week');\n const end = cleanLocale.clone().endOf('month').endOf('week');\n let count = 0;\n let current = start;\n const nestedWeeks = [];\n while (current.isBefore(end)) {\n const weekNumber = Math.floor(count / 7);\n nestedWeeks[weekNumber] = nestedWeeks[weekNumber] || [];\n nestedWeeks[weekNumber].push(current);\n current = current.clone().add(1, 'day');\n count += 1;\n }\n return nestedWeeks;\n };\n this.getWeekNumber = value => {\n return value.week();\n };\n this.getYearRange = (start, end) => {\n const startDate = this.moment(start).startOf('year');\n const endDate = this.moment(end).endOf('year');\n const years = [];\n let current = startDate;\n while (current.isBefore(endDate)) {\n years.push(current);\n current = current.clone().add(1, 'year');\n }\n return years;\n };\n this.getMeridiemText = ampm => {\n if (this.is12HourCycleInCurrentLocale()) {\n // AM/PM translation only possible in those who have 12 hour cycle in locale.\n return defaultMoment.localeData(this.getCurrentLocaleCode()).meridiem(ampm === 'am' ? 0 : 13, 0, false);\n }\n return ampm === 'am' ? 'AM' : 'PM'; // fallback for de, ru, ...etc\n };\n this.moment = instance || defaultMoment;\n this.locale = locale;\n this.formats = _extends({}, defaultFormats, formats);\n }\n}","import {useCallback, useRef, useState} from 'react';\nimport {__, curry, identity, pipe, prop, useWith, equals} from 'ramda';\nimport {debounce} from '@reltio/mdm-sdk';\nimport {ColumnData, RowValue} from '../../types';\n\ntype GetRowCellKeyProps = {\n rowIndex: number;\n cellIndex: number;\n columnData: ColumnData;\n rowValue: RowValue;\n};\n\ntype RowCellHeightsMap = Record<string, number>;\n\nconst defaultGetRowCellKey = ({rowIndex, columnData: {id}, cellIndex}: GetRowCellKeyProps) => `${id}[${rowIndex}][${cellIndex}]`;\n\nconst useDynamicRowCellHeight = (getRowCellKey = defaultGetRowCellKey) => {\n const [rowCellHeightsMap, setRowCellHeightsMap] = useState<RowCellHeightsMap>({});\n const rowCellHeightsMapCache = useRef<RowCellHeightsMap>({});\n const batchHeightUpdate = (key: string, value: number) => {\n rowCellHeightsMapCache.current[key] = value;\n };\n const flushHeightUpdates = useCallback(\n debounce(() => {\n setRowCellHeightsMap((prev) => {\n const next = {...rowCellHeightsMapCache.current};\n return equals(prev, next) ? prev : next;\n });\n }),\n []\n );\n const clearHeightsCache = useCallback(() => {\n rowCellHeightsMapCache.current = {};\n }, []);\n\n const getDynamicRowCellHeight = useCallback(pipe(getRowCellKey, prop(__, rowCellHeightsMap)), [rowCellHeightsMap]);\n\n const changeRowCellHeight = useCallback(\n curry(useWith(pipe(batchHeightUpdate, flushHeightUpdates), [getRowCellKey, identity])),\n []\n );\n\n return {getDynamicRowCellHeight, changeRowCellHeight, clearHeightsCache};\n};\n\nexport default useDynamicRowCellHeight;\n","import React from 'react';\n\nconst SvgTable: React.FC<React.SVGProps<SVGSVGElement>> = (props) => {\n return (\n <svg width={20} height={18} viewBox=\"0 0 20 18\" xmlns=\"http://www.w3.org/2000/svg\" {...props}>\n <path\n d=\"M16 7.24V6h-4v1.24a8.417 8.417 0 00-2 .768V6H6v6h.29a8.497 8.497 0 00-.15.358l-.29.733.29.733.07.176H2c-1.1 0-2-.9-2-2V2C0 .9.9 0 2 0h14c1.1 0 2 .9 2 2v6.008a8.417 8.417 0 00-2-.768zM4 12V6H2v6h2zm0-8V2H2v2h2zm6 0V2H6v2h4zm6 0V2h-4v2h4zm-2 5a6.451 6.451 0 00-6 4.09 6.451 6.451 0 006 4.092 6.451 6.451 0 006-4.091A6.451 6.451 0 0014 9zm0 6.818a2.728 2.728 0 010-5.454 2.728 2.728 0 010 5.454zm0-4.363c-.905 0-1.636.73-1.636 1.636 0 .905.73 1.636 1.636 1.636.905 0 1.636-.73 1.636-1.636 0-.906-.73-1.636-1.636-1.636z\"\n fill=\"#000\"\n fillRule=\"nonzero\"\n stroke=\"none\"\n strokeWidth={1}\n opacity={0.54}\n />\n </svg>\n );\n};\n\nexport default SvgTable;\n","import React, {useCallback, useState} from 'react';\nimport PropTypes from 'prop-types';\nimport {ColumnsDataType} from '../../../../constants';\nimport TableIcon from '../../../../icons/Table';\nimport {SmallIconButtonWithTooltip} from '../../../SmallIconButton';\nimport {pipe, uniq, pluck, difference, concat} from 'ramda';\n\nimport {ColumnsSettingsPopup} from './ColumnsSettingsPopup';\n\nimport i18n from 'ui-i18n';\nimport {getChildColumns, isColumnSelected} from './columnHelpers';\n\nconst ColumnsSettings = ({columnsData, selectedColumns, onChangeColumns, title, tooltipTitle}) => {\n const [anchorEl, setAnchorEl] = useState(null);\n const openPopup = (event) => setAnchorEl(event.currentTarget);\n const closePopup = () => setAnchorEl(null);\n const handleColumnClick = useCallback(\n (column) => {\n const changedColumns = pipe(getChildColumns, pluck('id'))(column);\n const wasSelected = isColumnSelected(selectedColumns, column);\n onChangeColumns(\n wasSelected\n ? difference(selectedColumns, changedColumns)\n : uniq(concat(selectedColumns, changedColumns))\n );\n },\n [selectedColumns, onChangeColumns]\n );\n return (\n <>\n <SmallIconButtonWithTooltip\n tooltipTitle={tooltipTitle || i18n.text('Show/hide columns')}\n size=\"L\"\n icon={TableIcon}\n onClick={openPopup}\n />\n <ColumnsSettingsPopup\n onColumnClick={handleColumnClick}\n anchorEl={anchorEl}\n columnsData={columnsData}\n onClose={closePopup}\n title={title}\n selectedColumns={selectedColumns}\n />\n </>\n );\n};\n\nColumnsSettings.propTypes = {\n columnsData: ColumnsDataType,\n selectedColumns: PropTypes.arrayOf(PropTypes.string),\n onChangeColumns: PropTypes.func,\n title: PropTypes.string,\n tooltipTitle: PropTypes.string\n};\n\nexport default ColumnsSettings;\n","import {makeStyles} from '@mui/styles';\n\nexport const useStyles = makeStyles({\n popup: {\n minWidth: '200px'\n },\n groupItem: {\n backgroundColor: 'rgba(0,0,0,0.04)'\n }\n});\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nimport AttributeListItem from '../../../AttributeListItem/AttributeListItem';\nimport Highlighter from '../../../Highlighter/Highlighter';\n\nimport classnames from 'classnames';\nimport {useStyles} from './styles';\n\nconst ColumnListItem = ({item, onClick, checked, level, style, isFocused, isGroupItem, hideCheckBox}) => {\n const styles = useStyles();\n return (\n <AttributeListItem\n hideCheckBox={hideCheckBox}\n key={item.id}\n onClick={onClick}\n checked={checked}\n level={level}\n data={item}\n label={<Highlighter text={item.label} highlight={item.filterText} />}\n labelInText={item.label}\n style={style}\n isFocused={isFocused}\n hideIcon={isGroupItem}\n className={classnames({[styles.groupItem]: isGroupItem})}\n />\n );\n};\n\nColumnListItem.propTypes = {\n item: PropTypes.shape({\n label: PropTypes.string,\n filterText: PropTypes.string\n }),\n level: PropTypes.number,\n onClick: PropTypes.func,\n checked: PropTypes.bool,\n style: PropTypes.object,\n isGroupItem: PropTypes.bool,\n isFocused: PropTypes.bool,\n hideCheckBox: PropTypes.bool\n};\n\nexport default ColumnListItem;\n","import React, {useState, useMemo, useCallback} from 'react';\nimport i18n from 'ui-i18n';\nimport {pipe} from 'ramda';\n\nimport {getMaxItemWidth, DataTypeDefinition} from '@reltio/mdm-sdk';\n\nimport VirtualGroupedList from '../../../VirtualGroupedList/VirtualGroupedList';\nimport SelectionPopup from '../../../SelectionPopup/SelectionPopup';\nimport {buildColumnItems, isColumnSelected, isGroupColumn} from './columnHelpers';\nimport {flattenGroupedItemsData} from '../../../VirtualGroupedList/helpers';\nimport {useKeyboardNavigation} from '../../../SelectionPopup/helpers';\nimport ColumnListItem from './ColumnListItem';\n\nimport {useStyles} from './styles';\nimport {ListItemProps} from '@mui/material/ListItem';\n\ntype Column = {\n id: string;\n label: string;\n};\n\ntype GroupedColumnData =\n | {\n id: string;\n label: string;\n columns: Column[];\n }\n | Column;\n\ntype GroupedColumnList = {\n id: string;\n groupId: string;\n label: string;\n attrType: DataTypeDefinition;\n};\n\ntype Props = {\n anchorEl: HTMLElement;\n onClose: () => void;\n title?: string;\n columnsData: GroupedColumnData[];\n onColumnClick: (column: {id: string}) => void;\n selectedColumns: string[];\n hideCheckBox?: boolean;\n};\n\nconst ITEM_HEIGHT = 32;\nconst MAX_LIST_CONTAINER_HEIGHT = 300;\nconst DEFAULT_MIN_CONTAINER_WIDTH = 308;\nconst CONTAINER_HEADER_HEIGHT = 108;\nconst MIN_CONTAINER_HEIGHT = 140;\n\nexport const ColumnsSettingsPopup = ({\n anchorEl,\n onClose,\n title,\n columnsData,\n onColumnClick,\n selectedColumns,\n hideCheckBox\n}: Props) => {\n const styles = useStyles();\n const [filterText, setFilterText] = useState('');\n const clearFilter = () => setFilterText('');\n const groupedItems = useMemo(() => buildColumnItems(columnsData, filterText), [columnsData, filterText]);\n\n const items = useMemo(() => flattenGroupedItemsData(groupedItems), [groupedItems]);\n const containerWidth: number = getMaxItemWidth('label')(groupedItems) || DEFAULT_MIN_CONTAINER_WIDTH;\n\n const handleSearchOnEnter = useCallback(\n ({item}: {item: {id: string}; groupData: {item: {id: string}}}) => onColumnClick(item),\n [onColumnClick]\n );\n\n const {focusIndex, handleKeyDown} = useKeyboardNavigation({\n items,\n open: true,\n onSelectFocusedItem: handleSearchOnEnter,\n selectedItems: selectedColumns,\n onClose\n });\n const handleClose = useCallback(pipe(onClose, clearFilter), [onClose]);\n\n const renderColumnItem = (\n style: ListItemProps['style'],\n {item, level = 0}: {item: GroupedColumnList; level?: number},\n index: number\n ) => {\n return (\n <ColumnListItem\n hideCheckBox={hideCheckBox}\n style={style}\n item={item}\n level={level}\n isFocused={focusIndex === index}\n checked={isColumnSelected(selectedColumns, item)}\n isGroupItem={isGroupColumn(item)}\n onClick={hideCheckBox ? pipe(onColumnClick, handleClose) : onColumnClick}\n />\n );\n };\n\n const listHeight = Math.min(MAX_LIST_CONTAINER_HEIGHT, ITEM_HEIGHT * items.length);\n const containerHeight = Math.max(MIN_CONTAINER_HEIGHT, listHeight + CONTAINER_HEADER_HEIGHT);\n\n return (\n <SelectionPopup\n className={styles.popup}\n open={!!anchorEl}\n anchorEl={anchorEl}\n onClose={handleClose}\n onSearch={setFilterText}\n title={title || i18n.text('Show/hide columns')}\n containerWidth={containerWidth}\n containerHeight={containerHeight}\n searchInputOnKeyDown={handleKeyDown}\n >\n <VirtualGroupedList\n fixedTitle={false}\n height={listHeight}\n renderItem={renderColumnItem}\n items={items}\n getItemSize={() => ITEM_HEIGHT}\n focusIndex={focusIndex}\n />\n </SelectionPopup>\n );\n};\n","import {assoc, chain, curry, either, filter, has, pipe, propOr, reduce, when} from 'ramda';\nimport {utils} from '@reltio/mdm-sdk';\n\nconst isGroupColumn = (column) => column.id === column.groupId;\nconst isParentToColumn = curry(\n ({id, groupId}, parent) => parent.groupId === groupId && (id === parent.id || id.startsWith(`${parent.id}.`))\n);\nconst isGroupToColumn = curry(({groupId}, group) => groupId === group.id);\nconst isHideableColumn = propOr(true, 'hideable');\n\nconst getColumnRoot = (columns, column) => columns.find(either(isGroupToColumn(column), isParentToColumn(column)));\n\nconst addColumn = (columns, column) => {\n const root = getColumnRoot(columns, column);\n if (root) {\n root.children = addColumn(root.children || [], column);\n return columns;\n } else {\n return columns.concat(column);\n }\n};\n\nconst filterColumnsByLabel = curry(\n (filterText, column) =>\n utils.strings.search(column.label, filterText) || (column.children || []).some(filterColumnsByLabel(filterText))\n);\n\nconst buildColumnsTrees = reduce(\n (acc, columnData) =>\n addColumn(acc, {\n id: columnData.id,\n groupId: columnData.groupId,\n label: columnData.label,\n attrType: columnData.dataTypeDefinition\n }),\n []\n);\n\nconst buildFilteredColumnItems = curry((filterText, columns, level = 0) =>\n pipe(\n filter(filterColumnsByLabel(filterText)),\n chain((column) => {\n const item = {\n item: {...column, filterText},\n level\n };\n const childrenItems = column.children\n ? buildFilteredColumnItems(filterText, column.children, level + 1)\n : [];\n return [item, ...childrenItems];\n })\n )(columns)\n);\n\nconst isGroupedColumnsData = has('columns');\nconst flattenGroupedColumnsData = ({id, label, columns}) => [\n {id, groupId: id, label},\n ...columns.map(assoc('groupId', id))\n];\n\nconst buildColumnItems = (columnsData, filterText) => {\n return pipe(\n chain(when(isGroupedColumnsData, flattenGroupedColumnsData)),\n filter(either(isGroupColumn, isHideableColumn)),\n buildColumnsTrees,\n buildFilteredColumnItems(filterText)\n )(columnsData);\n};\n\nconst getChildColumns = (column) => (column.children ? chain(getChildColumns, column.children) : [column]);\n\nconst isColumnSelected = (selectedColumns, column) => {\n const childColumns = getChildColumns(column);\n const isColumnSelected = (column) => selectedColumns.includes(column.id);\n return isGroupColumn(column) ? childColumns.every(isColumnSelected) : childColumns.some(isColumnSelected);\n};\n\nexport {buildColumnItems, getChildColumns, isGroupColumn, isColumnSelected};\n","import React from 'react';\n\nconst SvgFilter: React.FC<React.SVGProps<SVGSVGElement>> = (props) => {\n return (\n <svg width={18} height={18} viewBox=\"0 0 18 18\" xmlns=\"http://www.w3.org/2000/svg\" {...props}>\n <path d=\"M18 2V0H0v2l7 8v8l4-2v-6z\" fill=\"currentColor\" fillRule=\"nonzero\" stroke=\"none\" strokeWidth={1} />\n </svg>\n );\n};\n\nexport default SvgFilter;\n","import {makeStyles} from '@mui/styles';\n\nexport const useStyles = makeStyles((theme) => ({\n 'filterIcon--enabled': {\n color: theme.palette.primary.main\n },\n closeIcon: {\n position: 'absolute',\n right: '3px',\n bottom: '3px',\n transform: 'scale(0.5)'\n },\n button: {\n padding: '11px'\n }\n}));\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport i18n from 'ui-i18n';\nimport IconButton from '@mui/material/IconButton';\nimport CloseIcon from '@mui/icons-material/Close';\nimport Tooltip from '@mui/material/Tooltip';\nimport FilterIcon from '../../../../icons/Filter';\nimport {useStyles} from './styles';\n\nconst FilterButton = ({enabled, onClick}) => {\n const styles = useStyles();\n\n return (\n <Tooltip title={enabled ? i18n.text('Clear all filters') : i18n.text('Filter')}>\n <IconButton onClick={onClick} classes={{root: styles.button}} size=\"large\">\n {enabled ? (\n <>\n <FilterIcon className={styles['filterIcon--enabled']} />\n <CloseIcon color=\"primary\" className={styles.closeIcon} />\n </>\n ) : (\n <FilterIcon />\n )}\n </IconButton>\n </Tooltip>\n );\n};\n\nFilterButton.propTypes = {\n enabled: PropTypes.bool,\n onClick: PropTypes.func\n};\n\nexport default FilterButton;\n","import {makeStyles} from '@mui/styles';\n\nexport const useStyles = makeStyles({\n pagination: {\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'flex-end',\n height: '56px',\n borderTop: '1px solid rgba(0,0,0,0.12)',\n boxShadow: 'none'\n },\n caption: {\n color: 'rgba(0,0,0,0.6)',\n fontSize: '12px',\n lineHeight: '16px'\n },\n selectRoot: {\n marginLeft: '5px',\n marginRight: '36px'\n },\n select: {\n color: 'rgba(0,0,0,0.6)',\n fontSize: '12px',\n lineHeight: '16px',\n textAlign: 'right'\n },\n actions: {\n marginLeft: '32px!important' //we need it, because of the more specific rule in the mui\n }\n});\n","import PropTypes from 'prop-types';\nimport React, {useCallback} from 'react';\nimport classnames from 'classnames';\nimport TablePagination from '@mui/material/TablePagination';\nimport i18n from 'ui-i18n';\nimport {getValue} from '../../../core/utils';\nimport {nthArg, pipe, pathOr, identity} from 'ramda';\nimport {useStyles} from './styles';\n\nconst BasicTablePagination = ({\n classes = {},\n count,\n rowsPerPageOptions,\n page,\n onChangePage,\n rowsPerPage,\n onChangeRowsPerPage,\n basicTableRef,\n labelRowsPerPage\n}) => {\n const labelDisplayedRows = ({from, to, count}) =>\n i18n.text('${fromRow}-${toRow} of ${countRows}', {\n fromRow: i18n.number(from, '0,0'),\n toRow: i18n.number(to, '0,0'),\n countRows: i18n.number(count, '0,0')\n });\n const styles = useStyles();\n const resetScrollbarPosition = useCallback(() => {\n pathOr(identity, ['current', 'resetScrollbarPosition'], basicTableRef)();\n }, [basicTableRef]);\n const handleChangePage = useCallback(\n (value) => {\n onChangePage(value);\n resetScrollbarPosition();\n },\n [onChangePage, resetScrollbarPosition]\n );\n const handleChangeRowsPerPage = useCallback(\n (value) => {\n onChangePage(0);\n onChangeRowsPerPage(value);\n resetScrollbarPosition();\n },\n [onChangePage, onChangeRowsPerPage, resetScrollbarPosition]\n );\n return (\n <TablePagination\n classes={{\n ...classes,\n root: classnames(styles.pagination, classes.root),\n select: classnames(styles.select, classes.select),\n selectLabel: classnames(styles.caption, classes.selectLabel),\n displayedRows: classnames(styles.caption, classes.displayedRows),\n input: classnames(styles.selectRoot, classes.selectRoot),\n actions: styles.actions\n }}\n backIconButtonProps={{size: 'large'}}\n nextIconButtonProps={{size: 'large'}}\n component=\"div\"\n labelRowsPerPage={labelRowsPerPage || i18n.text('Rows per page:')}\n labelDisplayedRows={labelDisplayedRows}\n count={count}\n rowsPerPageOptions={rowsPerPageOptions}\n page={page}\n onPageChange={pipe(nthArg(1), handleChangePage)}\n rowsPerPage={rowsPerPage}\n onRowsPerPageChange={pipe(getValue, handleChangeRowsPerPage)}\n />\n );\n};\n\nBasicTablePagination.propTypes = {\n classes: PropTypes.object,\n rowsPerPageOptions: PropTypes.arrayOf(PropTypes.number),\n count: PropTypes.number,\n page: PropTypes.number,\n onChangePage: PropTypes.func,\n rowsPerPage: PropTypes.number,\n onChangeRowsPerPage: PropTypes.func,\n basicTableRef: PropTypes.shape({current: PropTypes.object}),\n labelRowsPerPage: PropTypes.string\n};\n\nexport default React.memo(BasicTablePagination);\n","import React, {ReactNode, useRef} from 'react';\n\nimport ReactResizeDetector from 'react-resize-detector';\nimport {useDidUpdateEffect} from '../../../hooks';\nimport {ColumnData, RenderRowCellProps, RowValue} from '../types';\n\ntype OnChangeHeightProps = {\n rowIndex: number;\n cellIndex: number;\n columnData: ColumnData;\n rowValue: RowValue;\n};\n\ntype Props = {\n onChangeHeight: (props: OnChangeHeightProps) => (size: number) => void;\n children: ReactNode;\n} & RenderRowCellProps;\n\nconst RowCellAutoSizer = ({onChangeHeight, children: cell, ...cellProps}: Props) => {\n const cellRef = useRef<HTMLDivElement>();\n const {rowValue, rowIndex, columnData, cellIndex} = cellProps;\n const changeCellHeight = onChangeHeight({rowIndex, cellIndex, columnData, rowValue});\n\n const adjustCellHeight = () => cellRef.current && changeCellHeight(cellRef.current.clientHeight);\n\n useDidUpdateEffect(adjustCellHeight, [rowValue.rawValue]);\n\n return (\n <div ref={cellRef}>\n <ReactResizeDetector handleHeight onResize={adjustCellHeight} />\n {cell}\n </div>\n );\n};\n\nexport default RowCellAutoSizer;\n","import {always, assoc, difference, dissoc, evolve, keys, path, when} from 'ramda';\nimport {createStandardAction, toggleSortOrder} from '../../../core';\n\nconst CHANGE_COLUMNS = 'CHANGE_COLUMNS';\nconst TOGGLE_FILTERS = 'TOGGLE_FILTERS';\nconst CHANGE_FILTER = 'CHANGE_FILTER';\nconst TOGGLE_SORT = 'TOGGLE_SORT';\nconst CHANGE_PAGE = 'CHANGE_PAGE';\nconst CHANGE_ROWS_PER_PAGE = 'CHANGE_ROWS_PER_PAGE';\n\nexport const actions = {\n changeColumns: createStandardAction(CHANGE_COLUMNS),\n toggleFilters: createStandardAction(TOGGLE_FILTERS),\n changeFilter: createStandardAction(CHANGE_FILTER),\n toggleSort: createStandardAction(TOGGLE_SORT),\n changePage: createStandardAction(CHANGE_PAGE),\n changeRowsPerPage: createStandardAction(CHANGE_ROWS_PER_PAGE)\n};\n\nexport const changeVisibleColumns = (state, nextVisibleColumns) => {\n const removedColumns = difference(state.visibleColumns, nextVisibleColumns);\n const isRemovedColumn = (columnId) => removedColumns.includes(columnId);\n return evolve(\n {\n visibleColumns: always(nextVisibleColumns),\n sorting: when(\n (sorting = {}) => isRemovedColumn(sorting.field),\n () => {\n const [nextSortField] = nextVisibleColumns;\n return {field: nextSortField, order: 'asc'};\n }\n ),\n filters: (filters) =>\n keys(filters).reduce(\n (acc, columnId) => (isRemovedColumn(columnId) ? dissoc(columnId, acc) : acc),\n filters\n )\n },\n state\n );\n};\n\nexport const reducer = (state, action) => {\n switch (action.type) {\n case CHANGE_COLUMNS: {\n const columnIds = action.payload;\n return changeVisibleColumns(state, columnIds);\n }\n case TOGGLE_FILTERS: {\n const enableFilters = !state.filters;\n return {\n ...state,\n filters: enableFilters ? {} : null,\n page: enableFilters ? state.page : 0\n };\n }\n case CHANGE_FILTER: {\n const {columnId, filter} = action.payload;\n return evolve({filters: filter ? assoc(columnId, filter) : dissoc(columnId), page: always(0)}, state);\n }\n case TOGGLE_SORT: {\n const nextSortField = action.payload;\n const prevSortField = path(['sorting', 'field'], state);\n const prevSortOrder = path(['sorting', 'order'], state);\n return {\n ...state,\n sorting: {\n field: nextSortField,\n order: toggleSortOrder(nextSortField === prevSortField ? prevSortOrder : null)\n },\n page: 0\n };\n }\n case CHANGE_PAGE:\n return {...state, page: action.payload};\n case CHANGE_ROWS_PER_PAGE:\n return {...state, rowsPerPage: action.payload};\n default:\n return state;\n }\n};\n\nexport default {\n reducer,\n actions,\n changeVisibleColumns\n};\n","import {makeStyles} from '@mui/styles';\n\nexport const useStyles = makeStyles((theme) => ({\n basicViewPaper: {\n display: 'flex',\n flexDirection: 'column',\n ...theme.basicView\n }\n}));\n","import React, {forwardRef} from 'react';\nimport Paper, {PaperProps} from '@mui/material/Paper';\nimport {useStyles} from './styles';\n\nconst BasicView = forwardRef(\n ({children, className, ...otherProps}: PaperProps, ref: React.RefObject<HTMLDivElement>) => {\n const styles = useStyles();\n return (\n <Paper ref={ref} className={className} classes={{root: styles.basicViewPaper}} {...otherProps}>\n {children}\n </Paper>\n );\n }\n);\n\nBasicView.displayName = 'BasicView';\n\nexport default BasicView;\n","import React from 'react';\nimport ReactResizeDetector from 'react-resize-detector';\n\nconst EmptyStub = () => <div style={{display: 'none'}} />;\n\ntype Props = {\n children: React.ReactNode;\n widthToHide: number;\n};\n\nconst HideOnShrink = ({widthToHide, children}: Props) => (\n <ReactResizeDetector\n handleWidth={true}\n render={({width}) => (width > widthToHide ? <>{children}</> : <EmptyStub />)}\n />\n);\n\nexport default HideOnShrink;\n","import {makeStyles} from '@mui/styles';\n\nexport const useStyles = makeStyles({\n onlyValue: {\n color: 'rgba(0,0,0,.6)',\n fontSize: '13px',\n fontWeight: 'normal',\n whiteSpace: 'nowrap',\n textOverflow: 'ellipsis',\n overflow: 'hidden'\n },\n select: {\n fontSize: '13px',\n color: 'rgba(0,0,0,.6)',\n paddingLeft: '15px',\n '&&&': {\n paddingRight: '35px'\n }\n },\n selectMenu: {\n '& li': {\n fontSize: '13px',\n height: '32px'\n }\n },\n textField: {\n maxWidth: '100%'\n }\n});\n","import React, {useEffect} from 'react';\nimport PropTypes from 'prop-types';\n\nimport Typography from '@mui/material/Typography';\nimport {useStyles} from './styles';\nimport DropDownEditor from '../editors/DropDownEditor/DropDownEditor';\n\nconst SelectorWithOnlyOptionAutoSelect = ({value, onChange, options, classes = {}, emptyLabel}) => {\n const styles = useStyles();\n\n const [firstOption, ...moreOptions] = options;\n const hasOnlyOneOptionToSelect = moreOptions.length === 0;\n\n useEffect(() => {\n if (hasOnlyOneOptionToSelect && value !== firstOption.value) {\n onChange(firstOption.value);\n }\n }, [firstOption.value]); // eslint-disable-line\n\n const displayEmpty = !!emptyLabel;\n\n return (\n <div className={classes.root}>\n {hasOnlyOneOptionToSelect ? (\n <Typography className={classes.onlyValue || styles.onlyValue} variant={'h6'}>\n {firstOption.label}\n </Typography>\n ) : (\n <DropDownEditor\n displayEmpty={displayEmpty}\n disableUnderline={true}\n classes={{\n select: classes.select || styles.select\n }}\n TextFieldProps={{\n classes: {\n root: classes.textField || styles.textField\n }\n }}\n MenuProps={{\n classes: {\n list: classes.selectMenu || styles.selectMenu\n }\n }}\n value={value || ''}\n entries={displayEmpty ? [{value: '', label: emptyLabel}, ...options] : options}\n onChange={(value) => onChange(value || null)}\n />\n )}\n </div>\n );\n};\n\nSelectorWithOnlyOptionAutoSelect.propTypes = {\n value: PropTypes.string,\n onChange: PropTypes.func,\n options: PropTypes.arrayOf(\n PropTypes.shape({\n value: PropTypes.string,\n label: PropTypes.string\n })\n ),\n classes: PropTypes.shape({\n root: PropTypes.string,\n onlyValue: PropTypes.string,\n select: PropTypes.string,\n selectMenu: PropTypes.string,\n textField: PropTypes.string\n }),\n emptyLabel: PropTypes.string\n};\n\nexport default SelectorWithOnlyOptionAutoSelect;\n","import React from 'react';\n\nconst Spacer = () => <div style={{flex: 1}} />;\n\nexport default Spacer;\n","import PropTypes from 'prop-types';\nimport React from 'react';\n\nconst VerticalDivider = ({height, margin}) => (\n <div\n style={{\n width: '1px',\n height: `${height}px`,\n borderLeft: '1px solid rgba(0,0,0,0.38)',\n margin: `0 ${margin}px`,\n flexShrink: '0'\n }}\n />\n);\n\nVerticalDivider.propTypes = {\n height: PropTypes.number,\n margin: PropTypes.number\n};\n\nexport default VerticalDivider;\n","import {makeStyles} from '@mui/styles';\n\nexport const useStyles = makeStyles(() => ({\n viewMoreLessLink: {\n display: 'flex',\n alignItems: 'center',\n cursor: 'pointer'\n },\n\n arrow: {\n marginRight: '8px',\n marginLeft: '-2px',\n transform: 'rotate(0deg)',\n transition: 'transform 0.35s ease'\n },\n\n rotated: {\n transform: 'rotate(-180deg)'\n }\n}));\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nimport Link from '@mui/material/Link';\nimport ArrowDropDownIcon from '@mui/icons-material/ArrowDropDown';\nimport {useStyles} from './styles';\nimport classnames from 'classnames';\nimport i18n from 'ui-i18n';\n\nconst ViewMoreToggle = ({active, onClick, className}) => {\n const styles = useStyles();\n return (\n <Link className={classnames(styles.viewMoreLessLink, className)} onClick={onClick} underline=\"none\">\n <ArrowDropDownIcon className={classnames(styles.arrow, {[styles.rotated]: active})} />\n {active ? i18n.text('View less') : i18n.text('View more')}\n </Link>\n );\n};\n\nViewMoreToggle.propTypes = {\n active: PropTypes.bool,\n onClick: PropTypes.func,\n className: PropTypes.string\n};\n\nexport default ViewMoreToggle;\n","import {useMemo} from 'react';\nimport {pipe} from 'ramda';\n\ntype UseActions = ({\n actions,\n dispatch\n}: {\n actions: {\n [key: string]: <T>(payload: T) => {type: string; payload: T};\n };\n dispatch: <T>({type, payload}: {type: string; payload: T}) => void;\n}) => {\n [key in keyof typeof actions]: <T>(payload: T) => void;\n};\n\nexport const useActions: UseActions = ({actions, dispatch}) =>\n useMemo(\n () =>\n Object.entries(actions).reduce((acc, [actionName, actionCreator]) => {\n return {...acc, [actionName]: pipe(actionCreator, dispatch)};\n }, {}),\n [dispatch, actions]\n );\n","import {useCallback, useEffect, useState} from 'react';\nimport {useDidUpdateEffect} from './useDidUpdateEffect';\n\ntype SavedState<T> = {\n [entityType: string]: T;\n};\n\ntype Props<T> = {\n getSavedState: () => Promise<SavedState<T>>;\n saveState: (state: SavedState<T>) => void;\n entityTypeUri?: string;\n};\n\nexport const useSavedStateForEntityType = <T>({getSavedState, saveState, entityTypeUri}: Props<T>) => {\n const [savedState, setSavedState] = useState<SavedState<T>>({});\n const [changedState, setChangedState] = useState<SavedState<T>>(null);\n const [isLoaded, setIsLoaded] = useState(false);\n\n const saveChangesLocallyForPrevEntityType = () => {\n if (changedState) {\n setSavedState({...savedState, ...changedState});\n setChangedState(null);\n }\n };\n useDidUpdateEffect(saveChangesLocallyForPrevEntityType, [entityTypeUri]);\n\n const updateSavedState = useCallback(\n (stateToSave: T) => {\n if (!entityTypeUri) return;\n const changedState = {\n [entityTypeUri]: stateToSave\n };\n setChangedState(changedState);\n saveState({...savedState, ...changedState});\n },\n [entityTypeUri, saveState, savedState]\n );\n\n useEffect(() => {\n getSavedState()\n .then((savedState) => {\n setSavedState(savedState || {});\n })\n .then((_) => setIsLoaded(true))\n .catch((_) => setIsLoaded(true));\n }, []); // eslint-disable-line\n\n return {isLoaded: isLoaded && !!entityTypeUri, savedState: savedState[entityTypeUri], updateSavedState};\n};\n","import {FilterBuilder, Maybe} from '@reltio/mdm-sdk';\nimport {buildColumnsFilter, ColumnData, ColumnFilter} from '@reltio/components';\n\nconst createInteractionTypeFilter = (value) => `equals(type,'${value}')`;\n\nconst buildInteractionsFilter = (\n currentInteractionType: string,\n filters: Record<string, ColumnFilter>,\n columnsData: ColumnData[]\n) => {\n const currentTypeClause = Maybe.fromNull(currentInteractionType).map(createInteractionTypeFilter).orSome('');\n\n const filtersClause = buildColumnsFilter(columnsData, filters);\n\n return new FilterBuilder().addClause(currentTypeClause).addClause(filtersClause).build();\n};\n\nexport {buildInteractionsFilter};\n","import {\n attributeUriToSearchUri,\n DataTypes,\n FilterOptions,\n getAttrDataTypeDefinition,\n getInteractionAttributesFromMetadata,\n getInteractionType,\n InteractionType,\n makeCompositeFilterOption\n} from '@reltio/mdm-sdk';\nimport {adjust, assoc, chain, concat, map, pipe, pluck, prop, propEq, reject, subtract, uniqBy} from 'ramda';\nimport i18n from 'ui-i18n';\n\nconst ROWS_PER_PAGE_OPTIONS = [10, 25, 50, 100];\nconst getRowsPerPageOptions = (defaultRowsPerPage: number) =>\n ROWS_PER_PAGE_OPTIONS.filter((option) => option !== defaultRowsPerPage)\n .concat(defaultRowsPerPage)\n .sort(subtract);\n\nconst INTERACTION_TYPE_COLUMN_ID = 'type';\nconst ACTORS_COLUMN_ID = 'members';\nconst ATTRIBUTES_COLUMN_ID = 'attributes';\n\nconst MAX_ATTRIBUTES_TO_SHOW = 7;\n\nconst DEFAULT_COLUMNS_DATA = [\n {\n id: 'timestamp',\n label: 'Date',\n dataTypeDefinition: {\n type: DataTypes.TYPE_TIMESTAMP\n },\n hideable: false\n },\n {\n id: INTERACTION_TYPE_COLUMN_ID,\n label: 'Interaction type',\n sortable: false,\n filterOptions: [{value: FilterOptions.EQUALS}, {value: FilterOptions.NOT_EQUALS}]\n },\n {\n id: ACTORS_COLUMN_ID,\n label: 'Actors',\n sortable: false,\n dataTypeDefinition: {\n type: DataTypes.TYPE_STRING\n }\n },\n {\n id: ATTRIBUTES_COLUMN_ID,\n label: 'Attributes',\n sortable: false,\n filterable: false,\n maxAttrsToShow: MAX_ATTRIBUTES_TO_SHOW\n }\n];\n\nconst DEFAULT_COLUMNS = pluck('id', DEFAULT_COLUMNS_DATA);\nconst ALL_TYPES_COLUMNS = [INTERACTION_TYPE_COLUMN_ID, ATTRIBUTES_COLUMN_ID];\n\nconst getColumnsDataFromInteractionAttributes = pipe(\n map((attr) => ({\n id: attributeUriToSearchUri(attr.uri),\n label: attr.label,\n dataTypeDefinition: getAttrDataTypeDefinition(attr)\n })),\n uniqBy(prop('id'))\n);\n\nconst getInteractionColumnDataType = (interactionTypes) => ({\n type: DataTypes.TYPE_SELECT,\n options: interactionTypes.map(({uri, label}) => ({value: uri, label}))\n});\n\nconst getActorTypesOptions = pipe(\n chain(({memberTypes}) => memberTypes.map(({name, label}) => ({label, value: name}))),\n uniqBy(prop('value'))\n);\n\nconst getActorsColumnFilterOptions = (interactionTypes: Array<InteractionType>) => {\n const typeFilterDataType = {\n type: DataTypes.TYPE_SELECT,\n options: getActorTypesOptions(interactionTypes)\n };\n const makeTypeOption = makeCompositeFilterOption('types');\n return [\n {value: FilterOptions.EQUALS},\n {value: FilterOptions.NOT_EQUALS},\n {value: FilterOptions.HAS_ALL},\n {value: FilterOptions.IN_FILE},\n {value: FilterOptions.NOT_IN_FILE},\n {\n value: makeTypeOption(FilterOptions.EQUALS),\n label: i18n.text('type equals'),\n dataTypeDefinition: typeFilterDataType\n },\n {\n value: makeTypeOption(FilterOptions.NOT_EQUALS),\n label: i18n.text('type not'),\n dataTypeDefinition: typeFilterDataType\n },\n {\n value: makeTypeOption(FilterOptions.HAS_ALL),\n label: i18n.text('type has all'),\n dataTypeDefinition: typeFilterDataType\n },\n {\n value: makeTypeOption(FilterOptions.IN_FILE),\n label: i18n.text('type in file')\n },\n {\n value: makeTypeOption(FilterOptions.NOT_IN_FILE),\n label: i18n.text('type not in file')\n }\n ];\n};\n\nconst updateColumnData = (columnId, updateFn) => (columnsData) =>\n adjust(columnsData.findIndex(propEq('id', columnId)), updateFn, columnsData);\n\nconst updateInteractionTypeColumn = (interactionTypes) =>\n updateColumnData(\n INTERACTION_TYPE_COLUMN_ID,\n assoc('dataTypeDefinition', getInteractionColumnDataType(interactionTypes))\n );\n\nconst updateActorsColumn = (interactionTypes) =>\n updateColumnData(ACTORS_COLUMN_ID, assoc('filterOptions', getActorsColumnFilterOptions(interactionTypes)));\n\nconst updateAttributesColumn = (attributes) => updateColumnData(ATTRIBUTES_COLUMN_ID, assoc('attrsToShow', attributes));\n\nconst getColumnsData = (metadata, config, interactionTypes, currentInteractionType) => {\n return currentInteractionType\n ? pipe(\n getInteractionAttributesFromMetadata,\n getColumnsDataFromInteractionAttributes,\n concat(DEFAULT_COLUMNS_DATA),\n reject(({id}) => ALL_TYPES_COLUMNS.includes(id)),\n updateActorsColumn([getInteractionType(metadata, currentInteractionType)])\n )(metadata, currentInteractionType)\n : pipe(\n updateAttributesColumn(config.attributes),\n updateInteractionTypeColumn(interactionTypes),\n updateActorsColumn(metadata.interactionTypes || [])\n )(DEFAULT_COLUMNS_DATA);\n};\n\nexport {\n getRowsPerPageOptions,\n DEFAULT_COLUMNS,\n getColumnsData,\n INTERACTION_TYPE_COLUMN_ID,\n ACTORS_COLUMN_ID,\n ATTRIBUTES_COLUMN_ID,\n ALL_TYPES_COLUMNS,\n MAX_ATTRIBUTES_TO_SHOW\n};\n","import {makeStyles} from '@mui/styles';\n\nconst defaultWrapperStyles = {\n padding: '15px 25px 0 25px',\n '&:last-child': {\n paddingBottom: '15px'\n }\n};\n\nexport const useStyles = makeStyles((theme) => ({\n headCell: {\n display: 'flex',\n alignItems: 'center',\n height: '100%',\n fontSize: '12px'\n },\n rowCell: {\n fontSize: '13px',\n overflow: 'hidden',\n overflowWrap: 'break-word',\n wordWrap: 'break-word' // for IE\n },\n 'row-cell--sorted': {\n color: 'rgba(0,0,0,0.87)'\n },\n actorsWrapper: {\n paddingRight: '25px',\n paddingLeft: '15px',\n '&:last-child': {\n paddingBottom: '15px'\n }\n },\n memberWrapper: {\n display: 'flex',\n paddingTop: '15px',\n boxSizing: 'border-box',\n position: 'relative'\n },\n entityLabel: {\n fontSize: '15px',\n display: 'inline-block',\n overflowX: 'hidden',\n margin: '-2px 0 -1px 45px'\n },\n entityAvatar: {\n transform: 'scale(0.5)',\n position: 'absolute',\n left: 0,\n top: '2px'\n },\n defaultWrapper: defaultWrapperStyles,\n blobWrapper: {\n ...defaultWrapperStyles,\n whiteSpace: 'pre-wrap'\n },\n link: {\n cursor: 'pointer',\n color: theme.palette.primary.main\n },\n attributesWrapper: {\n padding: '15px 25px 10px 25px',\n color: 'rgba(0,0,0,0.87)'\n },\n viewMore: {\n marginLeft: '-5px'\n }\n}));\n","import PropTypes from 'prop-types';\nimport React from 'react';\nimport classnames from 'classnames';\nimport {useStyles} from './styles';\n\nconst RowCellRenderer = ({cell, CellValueRenderer, isSorted, ...otherProps}) => {\n const styles = useStyles();\n return (\n <div\n className={classnames(\n {\n [styles['row-cell--sorted']]: isSorted\n },\n styles.rowCell\n )}\n >\n {cell.values.map((value, index) => (\n <CellValueRenderer key={index} value={value} {...otherProps} />\n ))}\n </div>\n );\n};\n\nRowCellRenderer.propTypes = {\n rowValue: PropTypes.object,\n cell: PropTypes.object,\n CellValueRenderer: PropTypes.elementType,\n isSorted: PropTypes.bool\n};\n\nexport default RowCellRenderer;\n","import React from 'react';\n\nimport DefaultHeadCellRenderer from 'react-components/dist/Table/DefaultHeadCellRenderer/DefaultHeadCellRenderer';\nimport {withFilterAtBottom} from '@reltio/components';\nimport {useStyles} from './styles';\n\nconst HeadCellRenderer = (props) => {\n const styles = useStyles();\n return (\n <div className={styles.headCell}>\n <DefaultHeadCellRenderer {...props} />\n </div>\n );\n};\n\nexport default withFilterAtBottom(HeadCellRenderer);\n","import PropTypes from 'prop-types';\nimport React, {useContext} from 'react';\nimport mdm, {ui} from '@reltio/mdm-module';\nimport {chain, pipe, prop, uniqBy, values} from 'ramda';\nimport {useDispatch, useSelector} from 'react-redux';\nimport {useStyles} from './styles';\nimport {EntityTypeType, getEntityType, getLabel} from '@reltio/mdm-sdk';\nimport {EntityTypeIcon, ViewIdContext} from '@reltio/components';\nimport classnames from 'classnames';\n\nconst MemberItem = ({entityType, label, onClick}) => {\n const styles = useStyles();\n const labelCaption = getLabel(label);\n return (\n <div className={styles.memberWrapper}>\n <EntityTypeIcon className={styles.entityAvatar} entityType={entityType} />\n <span className={classnames(styles.entityLabel, styles.link)} onClick={onClick}>\n {labelCaption}\n </span>\n </div>\n );\n};\nMemberItem.propTypes = {\n entityType: EntityTypeType,\n label: PropTypes.string,\n onClick: PropTypes.func\n};\n\nconst getActorsMembers = pipe(values, chain(prop('members')), uniqBy(prop('objectURI')));\n\nconst ActorsRenderer = ({value}) => {\n const styles = useStyles();\n const members = getActorsMembers(value);\n const dispatch = useDispatch();\n const viewId = useContext(ViewIdContext);\n const metadata = useSelector(mdm.selectors.getMetadata);\n const openEntityWithUri = (uri) => dispatch(ui.actions.openEntity({uri, viewId}));\n\n return (\n <div className={styles.actorsWrapper}>\n {members.map(({objectURI, type, label}) => (\n <MemberItem\n key={objectURI}\n entityType={getEntityType(metadata, type)}\n label={label}\n onClick={() => openEntityWithUri(objectURI)}\n />\n ))}\n </div>\n );\n};\n\nActorsRenderer.propTypes = {\n value: PropTypes.object\n};\n\nexport default ActorsRenderer;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport {useStyles} from './styles';\nimport {DataTypeValue} from '@reltio/components';\n\nconst DefaultCellValueRenderer = ({value, columnData: {dataTypeDefinition}}) => {\n const styles = useStyles();\n return (\n <div className={styles.defaultWrapper}>\n <DataTypeValue value={value} dataTypeDefinition={dataTypeDefinition} />\n </div>\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';\nimport PropTypes from 'prop-types';\nimport {useStyles} from './styles';\n\nconst BlobRender = ({value}) => {\n const styles = useStyles();\n return <div className={styles.blobWrapper}>{value}</div>;\n};\n\nBlobRender.propTypes = {\n value: PropTypes.any\n};\n\nexport default BlobRender;\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nimport {useStyles} from './styles';\nimport Link from '@mui/material/Link';\n\nconst LinkRenderer = ({value}) => {\n const styles = useStyles();\n return (\n <div className={styles.defaultWrapper}>\n <Link className={styles.link} href={value} target=\"_blank\" underline=\"none\">\n {value}\n </Link>\n </div>\n );\n};\n\nLinkRenderer.propTypes = {\n value: PropTypes.any\n};\n\nexport default LinkRenderer;\n","import React, {useMemo, useState} from 'react';\nimport PropTypes from 'prop-types';\nimport {useSelector} from 'react-redux';\n\nimport {ReadOnlyAttributesList, ViewMoreToggle} from '@reltio/components';\nimport {useStyles} from './styles';\nimport mdmModule from '@reltio/mdm-module';\nimport {getInteractionType} from '@reltio/mdm-sdk';\nimport {pick, propEq} from 'ramda';\n\nconst AttributesRenderer = ({value, rowValue, columnData}) => {\n const styles = useStyles();\n\n const metadata = useSelector(mdmModule.selectors.getMetadata);\n const interaction = rowValue.rawValue;\n const attrTypes = useMemo(() => {\n const interactionType = getInteractionType(metadata, interaction.type);\n return interactionType.attributes;\n }, [interaction, metadata]);\n\n const [expanded, setExpanded] = useState(false);\n const toggleExpanded = () => setExpanded((expanded) => !expanded);\n\n const attributes = value;\n const attrNames = Object.keys(attributes);\n\n const visibleCountLimit = columnData.maxAttrsToShow;\n const hasExtraValuesToShow = attrNames.length > visibleCountLimit;\n const attrNamesToShow = expanded ? attrNames : attrNames.slice(0, visibleCountLimit);\n\n const attrsToShow = pick(attrNamesToShow, attributes);\n const attrTypesToShow = attrNamesToShow.map((name) => attrTypes.find(propEq('name', name)));\n\n return (\n <div className={styles.attributesWrapper}>\n <ReadOnlyAttributesList entity={{attributes: attrsToShow}} attrTypes={attrTypesToShow} drawLines={false} />\n {hasExtraValuesToShow && (\n <ViewMoreToggle active={expanded} onClick={toggleExpanded} className={styles.viewMore} />\n )}\n </div>\n );\n};\n\nAttributesRenderer.propTypes = {\n value: PropTypes.object,\n rowValue: PropTypes.object,\n columnData: PropTypes.object\n};\n\nexport default AttributesRenderer;\n","import HeadCellRenderer from '../cell-renderers/HeadCellRenderer';\nimport ActorsRenderer from '../cell-renderers/ActorsRenderer';\nimport DefaultCellValueRenderer from '../cell-renderers/DefaultCellValueRenderer';\nimport {ColumnData, defaultGetRowCellHeight} from '@reltio/components';\nimport {assoc, cond, length, map, path, pathEq, pickBy, pipe, prop, reduce, slice, split, T, values} from 'ramda';\nimport {\n DataTypes,\n getActorsForInteraction,\n getAttributeValuesByPath,\n Interaction,\n makeAttrTypeUri,\n Metadata\n} from '@reltio/mdm-sdk';\nimport {ACTORS_COLUMN_ID, ATTRIBUTES_COLUMN_ID, INTERACTION_TYPE_COLUMN_ID} from '../../helpers/tableHelpers';\nimport BlobRender from '../cell-renderers/BlobRenderer';\nimport LinkRenderer from '../cell-renderers/LinkRenderer';\nimport AttributesRenderer from '../cell-renderers/AttributesRenderer';\n\nconst getInteractionAttributeValues = (attrPath, interaction) =>\n pipe(path(['attributes']), getAttributeValuesByPath(attrPath))(interaction);\n\nconst getAttrPathFromColumnId = pipe(split('.'), slice(1, Infinity));\n\nconst getRowValueByColumn = (columnData: ColumnData, interaction: Interaction, metadata: Metadata) => {\n switch (columnData.id) {\n case ACTORS_COLUMN_ID:\n return getActorsForInteraction(metadata, interaction);\n case 'timestamp':\n return interaction.timestamp;\n case INTERACTION_TYPE_COLUMN_ID:\n return interaction.type;\n case ATTRIBUTES_COLUMN_ID: {\n const urisToShow = path(['attrsToShow', interaction.type], columnData);\n const isAttrToShow = (values, name) => urisToShow.includes(makeAttrTypeUri(interaction.type, name));\n return urisToShow ? pickBy(isAttrToShow, interaction.attributes) : interaction.attributes;\n }\n default: {\n const attrPath = getAttrPathFromColumnId(columnData.id);\n return getInteractionAttributeValues(attrPath, interaction);\n }\n }\n};\n\nconst getBasicTableRowsData = (interactions: Interaction[], columnsData: ColumnData, metadata: Metadata) =>\n interactions.map((interaction) =>\n pipe(\n reduce(\n (acc, columnData) => assoc(columnData.id, getRowValueByColumn(columnData, interaction, metadata), acc),\n {}\n ),\n assoc('rawValue', interaction)\n )(columnsData)\n );\n\nconst getNestedPathByColumnId = (columnId) => {\n if (columnId.startsWith('attributes.')) {\n const attrPath = getAttrPathFromColumnId(columnId);\n return attrPath.length > 1 ? attrPath.slice(0, -1) : null;\n } else {\n return null;\n }\n};\n\nconst getCellValueRenderer = (columnData) => {\n if (columnData.id === ACTORS_COLUMN_ID) {\n return ActorsRenderer;\n }\n if (columnData.id === ATTRIBUTES_COLUMN_ID) {\n return AttributesRenderer;\n }\n switch (columnData.dataTypeDefinition.type) {\n case DataTypes.TYPE_URL:\n case DataTypes.TYPE_BLOG_URL:\n case DataTypes.TYPE_IMAGE_URL:\n case DataTypes.TYPE_EMAIL:\n return LinkRenderer;\n case DataTypes.TYPE_BLOB:\n return BlobRender;\n default:\n return DefaultCellValueRenderer;\n }\n};\n\nconst getColumnDataByColumnId = (columnData) => ({\n sortable: true,\n ...columnData,\n resizable: true,\n nestedPath: getNestedPathByColumnId(columnData.id),\n headCellRenderer: HeadCellRenderer,\n rowCellValueRenderer: getCellValueRenderer(columnData)\n});\n\nconst getBasicTableColumnsData = map(getColumnDataByColumnId);\n\nconst getMembersCount = pipe(prop('members'), length);\nconst getMemberCellHeight = pipe(\n map(getMembersCount),\n values,\n reduce((acc, count) => acc + count * 33, 15)\n);\n\nconst calculateMembersCellHeight = pipe(\n path(['cell', 'values']),\n reduce((acc, actors) => acc + getMemberCellHeight(actors), 0)\n);\n\nconst calculateAttributesCellHeight = ({columnData, cell}) => {\n const attributesCount = pipe(path(['values', 0]), values, length)(cell);\n return attributesCount > columnData.maxAttrsToShow\n ? columnData.maxAttrsToShow * 26 + 49\n : attributesCount * 26 + 25;\n};\n\nconst getStaticRowCellHeight = cond([\n [pathEq(['columnData', 'id'], ACTORS_COLUMN_ID), calculateMembersCellHeight],\n [pathEq(['columnData', 'id'], ATTRIBUTES_COLUMN_ID), calculateAttributesCellHeight],\n [T, defaultGetRowCellHeight]\n]);\n\nexport {getBasicTableRowsData, getBasicTableColumnsData, getStaticRowCellHeight};\n","import {makeStyles} from '@mui/styles';\n\nexport const useStyles = makeStyles({\n tableContainer: {\n flex: 1,\n display: 'flex',\n fontFamily: 'Roboto',\n color: 'rgba(0,0,0,0.54)'\n },\n\n '@global div[role=tooltip]': {\n fontFamily: 'Roboto, Helvetica, Arial, sans-serif'\n },\n\n '@global div[role=presentation]': {\n fontFamily: 'Roboto, Helvetica, Arial, sans-serif'\n },\n 'row-cell__buttons-container': {\n position: 'absolute'\n },\n 'row-cell__buttons-wrapper': {\n display: 'flex',\n paddingLeft: '10px',\n '& > button': {\n marginLeft: '-10px',\n transform: 'scale(0.9)'\n }\n }\n});\n","import React, {ForwardedRef, useCallback, useLayoutEffect, useMemo} from 'react';\nimport RowCellRenderer from './cell-renderers/RowCellRenderer';\nimport {BasicTable, ColumnData, ColumnFilter, RowCellAutoSizer} from '@reltio/components';\nimport {getBasicTableColumnsData, getBasicTableRowsData, getStaticRowCellHeight} from './helpers/dataHelpers';\nimport {Interaction, Metadata, SortingField} from '@reltio/mdm-sdk';\nimport {useDynamicRowCellHeight} from '@reltio/components';\nimport {either} from 'ramda';\n\nimport {useStyles} from './styles';\n\ntype Props = {\n columnsData: ColumnData;\n interactions: Interaction[];\n metadata: Metadata;\n sorting: SortingField;\n onSort: (field: string) => void;\n filters?: Record<string, ColumnFilter>;\n onFilter: (event: {columnId: string; filter: ColumnFilter}) => void;\n basicTableRef: ForwardedRef<unknown>;\n};\nconst InteractionsTable = ({\n columnsData,\n interactions,\n metadata,\n sorting,\n onSort,\n filters,\n onFilter,\n basicTableRef\n}: Props) => {\n const tableRowsData = useMemo(\n () => getBasicTableRowsData(interactions, columnsData, metadata),\n [interactions, columnsData, metadata]\n );\n const tableColumnsData = useMemo(() => getBasicTableColumnsData(columnsData), [columnsData]);\n\n const styles = useStyles();\n\n const {getDynamicRowCellHeight, changeRowCellHeight, clearHeightsCache} = useDynamicRowCellHeight();\n\n useLayoutEffect(clearHeightsCache, [interactions]);\n\n const renderRowCell = useCallback(\n (props) => (\n <RowCellAutoSizer onChangeHeight={changeRowCellHeight} {...props}>\n <RowCellRenderer\n {...props}\n isSorted={\n !!sorting && sorting.field === props.columnData.id /* eslint-disable-line react/prop-types */\n }\n />\n </RowCellAutoSizer>\n ),\n [sorting, changeRowCellHeight]\n );\n\n const getRowCellHeight = useCallback(either(getDynamicRowCellHeight, getStaticRowCellHeight), [\n getDynamicRowCellHeight,\n getStaticRowCellHeight\n ]);\n\n return (\n <div className={styles.tableContainer}>\n <BasicTable\n columnsData={tableColumnsData}\n rowsData={tableRowsData}\n sorting={sorting}\n onSort={onSort}\n filters={filters}\n onFilter={onFilter}\n hoverStateEnabled={true}\n defaultColumnWidth={250}\n defaultColumnMinWidth={200}\n getRowCellHeight={getRowCellHeight}\n headRowHeight={56}\n renderRowCell={renderRowCell}\n classes={{\n hoveredRowRightContentWrapper: styles['row-cell__buttons-wrapper'],\n hoveredRowRightContentContainer: styles['row-cell__buttons-container']\n }}\n ref={basicTableRef}\n />\n </div>\n );\n};\n\nexport default InteractionsTable;\n","import {makeStyles} from '@mui/styles';\n\nexport const useStyles = makeStyles({\n header: {\n '& > button': {\n margin: '0 -2px'\n },\n paddingRight: '15px'\n },\n totalCaption: {\n lineHeight: 'inherit',\n fontSize: '14px',\n color: 'rgba(0,0,0,0.6)',\n flexShrink: 0,\n marginRight: '5px'\n },\n interactionTypeSelector: {\n margin: '3px 10px 0 30px',\n overflow: 'hidden'\n }\n});\n","import React from 'react';\nimport {InteractionType} from '@reltio/mdm-sdk';\nimport i18n from 'ui-i18n';\nimport {SelectorWithOnlyOptionAutoSelect} from '@reltio/components';\n\ntype Props = {\n value: string;\n onChange: (value: string) => void;\n interactionTypes: InteractionType[];\n className?: string;\n};\nconst InteractionTypeSelector = ({value, onChange, interactionTypes, className}: Props) => {\n return (\n <SelectorWithOnlyOptionAutoSelect\n classes={{\n root: className\n }}\n value={value}\n onChange={onChange}\n options={interactionTypes.map(({label, uri}) => ({label, value: uri}))}\n emptyLabel={i18n.text('All interaction types')}\n />\n );\n};\n\nexport default InteractionTypeSelector;\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nimport Typography from '@mui/material/Typography';\nimport i18n from 'ui-i18n';\nimport {\n BasicViewHeader,\n ColumnsDataType,\n ColumnsSettings,\n FilterButton,\n HideOnShrink,\n Spacer,\n VerticalDivider\n} from '@reltio/components';\nimport {useStyles} from './styles';\nimport InteractionTypeSelector from './InteractionTypeSelector/InteractionTypeSelector';\nimport {InteractionTypeType} from '@reltio/mdm-sdk';\n\nconst InteractionsTableHeader = ({\n title,\n total,\n filtersEnabled,\n onToggleFilters,\n columnsData,\n selectedColumns,\n onChangeColumns,\n interactionTypes,\n currentInteractionType,\n onInteractionTypeChange\n}) => {\n const styles = useStyles();\n\n return (\n <BasicViewHeader title={title} classes={{root: styles.header, title: styles.title}}>\n {interactionTypes.length > 0 && (\n <InteractionTypeSelector\n className={styles.interactionTypeSelector}\n value={currentInteractionType}\n onChange={onInteractionTypeChange}\n interactionTypes={interactionTypes}\n />\n )}\n <HideOnShrink widthToHide={500}>\n <VerticalDivider height={28} margin={20} />\n <Typography className={styles.totalCaption} variant=\"caption\">\n {total > 1\n ? i18n.text('${count} interactions', {count: total})\n : i18n.text('${count} interaction', {count: total})}\n </Typography>\n </HideOnShrink>\n <Spacer />\n <FilterButton enabled={filtersEnabled} onClick={onToggleFilters} />\n <VerticalDivider height={28} margin={4} />\n <ColumnsSettings\n columnsData={columnsData}\n selectedColumns={selectedColumns}\n onChangeColumns={onChangeColumns}\n />\n </BasicViewHeader>\n );\n};\n\nInteractionsTableHeader.propTypes = {\n title: PropTypes.string,\n total: PropTypes.number,\n columnsData: ColumnsDataType,\n selectedColumns: PropTypes.arrayOf(PropTypes.string),\n onChangeColumns: PropTypes.func,\n filtersEnabled: PropTypes.bool,\n onToggleFilters: PropTypes.func,\n interactionTypes: PropTypes.arrayOf(InteractionTypeType),\n currentInteractionType: PropTypes.string,\n onInteractionTypeChange: PropTypes.func\n};\n\nexport default InteractionsTableHeader;\n","import {\n always,\n assoc,\n concat,\n dissoc,\n either,\n evolve,\n ifElse,\n intersection,\n path,\n pick,\n pipe,\n prop,\n propOr,\n when,\n without,\n unless,\n isNil,\n filter\n} from 'ramda';\nimport {ACTORS_COLUMN_ID, ALL_TYPES_COLUMNS, DEFAULT_COLUMNS} from './helpers/tableHelpers';\nimport {basicTableViewState, createStandardAction, Sorting} from '@reltio/components';\nimport {SearchFilter, validateFilterValue} from '@reltio/mdm-sdk';\nimport {InteractionsSavedState} from './types';\n\nconst CHANGE_INTERACTION_TYPE = 'CHANGE_INTERACTION_TYPE';\nconst APPLY_SAVED_STATE = 'APPLY_SAVED_STATE';\nconst SAVE_CURRENT_STATE = 'SAVE_CURRENT_STATE';\n\nconst actions = {\n ...basicTableViewState.actions,\n changeInteractionType: createStandardAction(CHANGE_INTERACTION_TYPE),\n applySavedState: createStandardAction(APPLY_SAVED_STATE),\n saveCurrentState: createStandardAction(SAVE_CURRENT_STATE)\n};\n\nconst resetActorsColumnFilters = evolve({\n filters: when(prop(ACTORS_COLUMN_ID), dissoc(ACTORS_COLUMN_ID))\n});\n\nconst resetPageNumber = assoc('page', 0);\n\nconst getDefaultVisibleColumnsForCurrentInteractionType = (state) =>\n pipe(\n prop('visibleColumns'),\n ifElse(always(state.currentInteractionType), without(ALL_TYPES_COLUMNS), concat(ALL_TYPES_COLUMNS)),\n intersection(DEFAULT_COLUMNS)\n )(state);\n\nconst getSavedVisibleColumnsForCurrentInteractionType = (state) =>\n path(['visibleColumnsForInteractionTypes', `${state.currentInteractionType}`], state);\n\nconst changeVisibleColumnsForCurrentInteractionType = (state) => {\n const nextVisibleColumns = either(\n getSavedVisibleColumnsForCurrentInteractionType,\n getDefaultVisibleColumnsForCurrentInteractionType\n )(state);\n return basicTableViewState.changeVisibleColumns(state, nextVisibleColumns);\n};\n\nconst getVisibleColumnsFromSavedState = either(getSavedVisibleColumnsForCurrentInteractionType, prop('visibleColumns'));\nconst getFiltersFromSavedState = pipe(\n propOr(null, 'filters'),\n unless(\n isNil,\n filter(({filter, value}) => validateFilterValue(filter, value))\n )\n);\n\nconst saveVisibleColumnsForCurrentInteractionType = (state) => {\n const {currentInteractionType, visibleColumns} = state;\n return evolve(\n {\n visibleColumnsForInteractionTypes: assoc(`${currentInteractionType}`, visibleColumns)\n },\n state\n );\n};\n\nconst getStateToSave = pipe(\n saveVisibleColumnsForCurrentInteractionType,\n pick(['currentInteractionType', 'visibleColumnsForInteractionTypes', 'filters', 'sorting'])\n);\n\ntype InitialState = {\n currentInteractionType?: string;\n filters: SearchFilter[];\n visibleColumns: string[];\n sorting: Sorting;\n page: number;\n rowsPerPage: number;\n saveToState?: InteractionsSavedState;\n entityTypeOfAppliedSavedState?: string;\n visibleColumnsForInteractionTypes: Record<string, string[]>;\n};\n\nconst reducer = (state: InitialState, action) => {\n switch (action.type) {\n case CHANGE_INTERACTION_TYPE: {\n const nextInteractionType = action.payload;\n return pipe(\n saveVisibleColumnsForCurrentInteractionType,\n assoc('currentInteractionType', nextInteractionType),\n changeVisibleColumnsForCurrentInteractionType,\n resetActorsColumnFilters,\n resetPageNumber\n )(state);\n }\n case APPLY_SAVED_STATE: {\n const {savedState, entityType} = action.payload;\n const visibleColumns = savedState ? getVisibleColumnsFromSavedState(savedState) : state.visibleColumns;\n const filters = savedState ? getFiltersFromSavedState(savedState) : state.filters;\n return {\n ...state,\n ...savedState,\n filters,\n visibleColumns,\n entityTypeOfAppliedSavedState: entityType\n };\n }\n case SAVE_CURRENT_STATE: {\n return {\n ...state,\n stateToSave: getStateToSave(state)\n };\n }\n default:\n return basicTableViewState.reducer(state, action);\n }\n};\n\nexport {reducer as default, actions};\n","import {makeStyles} from '@mui/styles';\n\nexport const useStyles = makeStyles((_) => ({\n basicView: {\n position: 'absolute',\n top: 0,\n bottom: 0,\n left: 0,\n right: 0,\n boxShadow: 'none'\n },\n tableView: {\n position: 'relative',\n flex: 1,\n display: 'flex',\n flexDirection: 'column'\n }\n}));\n","import React, {useCallback, useEffect, useMemo, useReducer, useRef} from 'react';\nimport {useSelector} from 'react-redux';\n\nimport {\n BasicTablePagination,\n BasicView,\n LinearLoadIndicator,\n useActions,\n useDidUpdateEffect,\n useSavedStateForEntityType\n} from '@reltio/components';\nimport mdmModule from '@reltio/mdm-module';\nimport {\n Entity,\n getInteractionType,\n getInteractionTypesForEntityType,\n InteractionsPerspectiveConfig,\n Metadata\n} from '@reltio/mdm-sdk';\nimport {pipe, propEq} from 'ramda';\nimport {buildInteractionsFilter} from './helpers/filtersHelpers';\nimport {DEFAULT_COLUMNS, getColumnsData, getRowsPerPageOptions} from './helpers/tableHelpers';\nimport useInteractions from './hooks/useInteractions';\nimport InteractionsTable from './InteractionsTable/InteractionsTable';\nimport InteractionsTableHeader from './InteractionsTableHeader/InteractionsTableHeader';\nimport reducer, {actions} from './stateReducer';\nimport {InteractionsSavedState} from './types';\n\nimport {useStyles} from './styles';\n\nconst DEFAULT_ROWS_PER_PAGE = 15;\nconst DEFAULT_SORT_ORDER = 'desc';\nconst [DEFAULT_SORT_FIELD] = DEFAULT_COLUMNS;\n\ntype Props = {\n config: InteractionsPerspectiveConfig;\n saveState: (state: Record<string, InteractionsSavedState>) => void;\n getSavedState: () => Promise<Record<string, InteractionsSavedState>>;\n};\nconst InteractionsTableView = ({config, getSavedState, saveState}: Props) => {\n const entity: Entity = useSelector(mdmModule.selectors.getEntity);\n const metadata: Metadata = useSelector(mdmModule.selectors.getMetadata);\n const styles = useStyles();\n\n const initialState = {\n currentInteractionType: null,\n filters: null,\n visibleColumns: DEFAULT_COLUMNS,\n sorting: {\n order: config.sortOrder || DEFAULT_SORT_ORDER,\n field: config.sortColumn || DEFAULT_SORT_FIELD\n },\n page: 0,\n rowsPerPage: config.max || DEFAULT_ROWS_PER_PAGE,\n stateToSave: null,\n entityTypeOfAppliedSavedState: null,\n visibleColumnsForInteractionTypes: {}\n };\n\n const [state, dispatch] = useReducer(reducer, initialState);\n const {\n visibleColumns,\n filters,\n sorting,\n page,\n rowsPerPage,\n currentInteractionType,\n stateToSave,\n entityTypeOfAppliedSavedState\n } = state;\n const {\n applySavedState,\n saveCurrentState,\n toggleFilters,\n toggleSort,\n changeFilter,\n changeColumns,\n changeInteractionType,\n changePage,\n changeRowsPerPage\n } = useActions({actions, dispatch});\n\n const {uri: entityUri, type: entityType} = entity || {};\n\n const isSavedStateApplied = entityTypeOfAppliedSavedState === entityType;\n\n const {\n isLoaded: isSavedStateLoaded,\n savedState,\n updateSavedState\n } = useSavedStateForEntityType<InteractionsSavedState>({\n entityTypeUri: entityType,\n getSavedState,\n saveState\n });\n\n useEffect(() => {\n if (isSavedStateLoaded) {\n const interactionTypes = getInteractionTypesForEntityType(metadata, entityType);\n const currentInteractionType = savedState?.currentInteractionType;\n const isInteractionTypeExist =\n !currentInteractionType || getInteractionType({interactionTypes}, currentInteractionType);\n const savedStateToApply = isInteractionTypeExist ? savedState : null;\n applySavedState({savedState: savedStateToApply, entityType});\n }\n }, [isSavedStateLoaded, entityType, metadata]); // eslint-disable-line\n\n useDidUpdateEffect(() => {\n if (isSavedStateApplied) {\n updateSavedState(stateToSave);\n }\n }, [stateToSave]); // eslint-disable-line\n\n const resetPage = () => {\n changePage(0);\n };\n useDidUpdateEffect(resetPage, [entityUri]);\n\n const interactionTypes = useMemo(\n () => getInteractionTypesForEntityType(metadata, entityType),\n [entityType, metadata]\n );\n\n const allColumnsData = useMemo(\n () => getColumnsData(metadata, config, interactionTypes, currentInteractionType),\n [metadata, config, interactionTypes, currentInteractionType]\n );\n\n const visibleColumnsData = useMemo(\n () => visibleColumns.map((id) => allColumnsData.find(propEq('id', id))),\n [visibleColumns, allColumnsData]\n );\n\n const filter = useMemo(\n () => buildInteractionsFilter(currentInteractionType, filters, visibleColumnsData),\n [currentInteractionType, filters] //eslint-disable-line\n );\n\n const {\n isLoading: isInteractionsLoading,\n interactions,\n total\n } = useInteractions({\n enabled: !!entityUri && isSavedStateApplied,\n entityUri,\n filter,\n sorting,\n rowsPerPage,\n page\n });\n\n const rowsPerPageOptions = useMemo(() => getRowsPerPageOptions(initialState.rowsPerPage), []); // eslint-disable-line\n\n const isLoading = !isSavedStateApplied || isInteractionsLoading;\n\n const handleFilterChange = useCallback(pipe(changeFilter, saveCurrentState), [changeFilter, saveCurrentState]);\n\n const basicTableRef = useRef(null);\n\n return (\n <BasicView className={styles.basicView}>\n <InteractionsTableHeader\n title={config.caption}\n total={total}\n columnsData={allColumnsData}\n selectedColumns={visibleColumns}\n onChangeColumns={pipe(changeColumns, saveCurrentState)}\n filtersEnabled={!!filters}\n onToggleFilters={pipe(toggleFilters, saveCurrentState)}\n interactionTypes={interactionTypes}\n currentInteractionType={currentInteractionType}\n onInteractionTypeChange={pipe(changeInteractionType, saveCurrentState)}\n />\n <div className={styles.tableView}>\n <InteractionsTable\n columnsData={visibleColumnsData}\n interactions={interactions}\n metadata={metadata}\n filters={filters}\n onFilter={handleFilterChange}\n sorting={sorting}\n onSort={pipe(toggleSort, saveCurrentState)}\n basicTableRef={basicTableRef}\n />\n <BasicTablePagination\n count={total}\n rowsPerPageOptions={rowsPerPageOptions}\n rowsPerPage={rowsPerPage}\n onChangeRowsPerPage={changeRowsPerPage}\n page={page}\n onChangePage={changePage}\n basicTableRef={basicTableRef}\n />\n {isLoading && <LinearLoadIndicator />}\n </div>\n </BasicView>\n );\n};\n\nexport default InteractionsTableView;\n","import {useState, useEffect} from 'react';\nimport {getInteractions} from '@reltio/mdm-sdk';\nimport {Sorting, useSafePromise} from '@reltio/components';\n\ntype Props = {\n entityUri: string;\n sorting: Sorting;\n page: number;\n rowsPerPage: number;\n filter: string;\n enabled: boolean;\n};\n\nconst useInteractions = ({entityUri, filter, sorting, page, rowsPerPage, enabled}: Props) => {\n const [isLoading, setIsLoading] = useState(false);\n const [total, setTotal] = useState(0);\n const [interactions, setInteractions] = useState([]);\n const safePromise = useSafePromise();\n\n useEffect(() => {\n if (enabled) {\n setIsLoading(true);\n safePromise(\n getInteractions({\n entityUri: entityUri,\n offset: page * rowsPerPage,\n max: rowsPerPage,\n filter,\n sort: sorting.field,\n order: sorting.order\n })\n )\n .then(({totalFetched, interactions = []}) => {\n setTotal(totalFetched);\n setInteractions(interactions);\n })\n .then((_) => setIsLoading(false))\n .catch((_) => setIsLoading(false));\n }\n }, [entityUri, filter, sorting.field, sorting.order, page, rowsPerPage, enabled]); // eslint-disable-line\n\n return {isLoading, interactions, total};\n};\n\nexport default useInteractions;\n","import React, {useCallback} from 'react';\nimport {AdapterMoment} from '@mui/x-date-pickers/AdapterMoment';\nimport createGenerateClassName from '@mui/styles/createGenerateClassName';\nimport StylesProvider from '@mui/styles/StylesProvider';\nimport ReactResizeDetector from 'react-resize-detector';\nimport {Store} from 'redux';\nimport {LocalizationProvider} from '@mui/x-date-pickers/LocalizationProvider';\nimport {ErrorPopup, ViewIdContext} from '@reltio/components';\nimport {InteractionsPerspectiveConfig, promisifyCallback} from '@reltio/mdm-sdk';\nimport {identity} from 'ramda';\nimport {Provider} from 'react-redux';\nimport InteractionsTableView from './InteractionsTableView';\nimport {InteractionsSavedState} from './InteractionsTableView/types';\n\nconst generateClassName = createGenerateClassName({\n productionPrefix: 'interactionTable',\n disableGlobal: true,\n seed: 'intr'\n});\n\ntype Props = {\n config: InteractionsPerspectiveConfig;\n store: Store<unknown>;\n onResize?: (width: number, height: number) => void;\n saveState: (state: Record<string, InteractionsSavedState>) => void;\n getSavedState: () => Record<string, InteractionsSavedState>;\n};\n\nconst InteractionsView = ({config, store, onResize = identity, saveState, getSavedState}: Props) => {\n const getSavedStatePromisified: () => Promise<Record<string, InteractionsSavedState>> = useCallback(\n promisifyCallback(getSavedState),\n [getSavedState]\n );\n\n return (\n <Provider store={store}>\n <ViewIdContext.Provider value={config.id}>\n <StylesProvider generateClassName={generateClassName}>\n <LocalizationProvider dateAdapter={AdapterMoment}>\n <ReactResizeDetector\n handleHeight\n onResize={(width, height) => onResize(Math.floor(width), Math.floor(height))}\n />\n {config && (\n <InteractionsTableView\n config={config}\n saveState={saveState}\n getSavedState={getSavedStatePromisified}\n />\n )}\n <ErrorPopup />\n </LocalizationProvider>\n </StylesProvider>\n </ViewIdContext.Provider>\n </Provider>\n );\n};\n\nexport default InteractionsView;\n","import {InteractionsView} from '@reltio/interactions';\n\nexport default InteractionsView;\n"],"names":["formatTokenMap","Y","YY","YYYY","M","sectionType","contentType","maxLength","MM","MMM","MMMM","D","DD","Do","E","e","d","dd","ddd","dddd","A","a","H","HH","h","hh","m","mm","s","ss","defaultFormats","year","month","monthShort","dayOfMonth","weekday","weekdayShort","hours24h","hours12h","meridiem","minutes","seconds","fullDate","fullDateWithWeekday","keyboardDate","shortDate","normalDate","normalDateWithWeekday","monthAndYear","monthAndDate","fullTime","fullTime12h","fullTime24h","fullDateTime","fullDateTime12h","fullDateTime24h","keyboardDateTime","keyboardDateTime12h","keyboardDateTime24h","MISSING_TIMEZONE_PLUGIN","join","AdapterMoment","constructor","locale","formats","instance","this","isMUIAdapter","isTimezoneCompatible","lib","moment","escapedCharacters","start","end","setLocaleToValue","value","expectedLocale","getCurrentLocaleCode","hasTimezonePlugin","tz","createSystemDate","parsedValue","local","undefined","createUTCDate","utc","createTZDate","timezone","Error","date","dateWithTimezone","getTimezone","_value$_z","_ref","_this$moment$defaultZ","isUTC","zone","_z","name","defaultZone","setTimezone","_this$moment$defaultZ2","_this$moment$defaultZ3","clone","cleanZone","newValue","toJsDate","toDate","parseISO","isoString","toISO","toISOString","parse","format","is12HourCycleInCurrentLocale","test","longDateFormat","expandFormat","match","map","token","firstCharacter","getFormatHelperText","replace","toLocaleLowerCase","isNull","isValid","formatKey","formatByString","formatString","clonedDate","formatNumber","numberToFormat","getDiff","comparing","unit","diff","isEqual","isSame","isSameYear","isSameMonth","isSameDay","isSameHour","isAfter","isAfterYear","isAfterDay","isBefore","isBeforeYear","isBeforeDay","isWithinRange","isBetween","startOfYear","startOf","startOfMonth","startOfWeek","startOfDay","endOfYear","endOf","endOfMonth","endOfWeek","endOfDay","addYears","amount","subtract","Math","abs","add","addMonths","addWeeks","addDays","addHours","addMinutes","addSeconds","getYear","get","getMonth","getDate","getHours","getMinutes","getSeconds","getMilliseconds","setYear","setMonth","setDate","setHours","hours","setMinutes","setSeconds","setMilliseconds","milliseconds","getDaysInMonth","daysInMonth","getNextMonth","getPreviousMonth","getMonthArray","monthArray","length","prevMonth","push","mergeDateAndTime","dateParam","timeParam","hour","minute","second","getWeekdays","getWeekArray","cleanLocale","count","current","nestedWeeks","weekNumber","floor","getWeekNumber","week","getYearRange","startDate","endDate","years","getMeridiemText","ampm","defaultGetRowCellKey","rowIndex","columnData","id","cellIndex","getRowCellKey","rowCellHeightsMap","setRowCellHeightsMap","useState","rowCellHeightsMapCache","useRef","batchHeightUpdate","key","flushHeightUpdates","useCallback","debounce","prev","next","equals","clearHeightsCache","getDynamicRowCellHeight","pipe","prop","__","changeRowCellHeight","curry","useWith","identity","props","width","height","viewBox","xmlns","fill","fillRule","stroke","strokeWidth","opacity","ColumnsSettings","columnsData","selectedColumns","onChangeColumns","title","tooltipTitle","anchorEl","setAnchorEl","handleColumnClick","column","changedColumns","getChildColumns","pluck","wasSelected","isColumnSelected","difference","uniq","concat","SmallIconButton","i18n","size","icon","TableIcon","onClick","event","currentTarget","ColumnsSettingsPopup","onColumnClick","onClose","propTypes","ColumnsDataType","PropTypes","useStyles","makeStyles","popup","minWidth","groupItem","backgroundColor","ColumnListItem","item","checked","level","style","isFocused","isGroupItem","hideCheckBox","styles","AttributeListItem","data","label","Highlighter","text","highlight","filterText","labelInText","hideIcon","className","classnames","setFilterText","groupedItems","useMemo","buildColumnItems","items","flattenGroupedItemsData","containerWidth","getMaxItemWidth","handleSearchOnEnter","focusIndex","handleKeyDown","useKeyboardNavigation","open","onSelectFocusedItem","selectedItems","handleClose","listHeight","min","containerHeight","max","SelectionPopup","onSearch","searchInputOnKeyDown","VirtualGroupedList","fixedTitle","renderItem","index","isGroupColumn","getItemSize","groupId","isParentToColumn","parent","startsWith","isGroupToColumn","group","isHideableColumn","propOr","addColumn","columns","root","find","either","getColumnRoot","children","filterColumnsByLabel","utils","some","buildColumnsTrees","reduce","acc","attrType","dataTypeDefinition","buildFilteredColumnItems","filter","chain","isGroupedColumnsData","has","flattenGroupedColumnsData","assoc","when","childColumns","includes","every","theme","color","palette","primary","main","closeIcon","position","right","bottom","transform","button","padding","FilterButton","enabled","Tooltip","IconButton","classes","Filter","Close","pagination","display","alignItems","justifyContent","borderTop","boxShadow","caption","fontSize","lineHeight","selectRoot","marginLeft","marginRight","select","textAlign","actions","BasicTablePagination","rowsPerPageOptions","page","onChangePage","rowsPerPage","onChangeRowsPerPage","basicTableRef","labelRowsPerPage","resetScrollbarPosition","pathOr","handleChangePage","handleChangeRowsPerPage","TablePagination","selectLabel","displayedRows","input","backIconButtonProps","nextIconButtonProps","component","labelDisplayedRows","from","to","fromRow","toRow","countRows","onPageChange","nthArg","onRowsPerPageChange","getValue","React","onChangeHeight","cell","cellProps","cellRef","rowValue","changeCellHeight","adjustCellHeight","clientHeight","useDidUpdateEffect","rawValue","ref","handleHeight","onResize","CHANGE_COLUMNS","TOGGLE_FILTERS","CHANGE_FILTER","TOGGLE_SORT","CHANGE_PAGE","CHANGE_ROWS_PER_PAGE","changeColumns","createStandardAction","toggleFilters","changeFilter","toggleSort","changePage","changeRowsPerPage","changeVisibleColumns","state","nextVisibleColumns","removedColumns","visibleColumns","isRemovedColumn","columnId","evolve","always","sorting","field","nextSortField","order","filters","keys","dissoc","reducer","action","type","columnIds","payload","enableFilters","prevSortField","path","prevSortOrder","toggleSortOrder","basicViewPaper","flexDirection","basicView","BasicView","forwardRef","otherProps","Paper","displayName","EmptyStub","widthToHide","handleWidth","render","onlyValue","fontWeight","whiteSpace","textOverflow","overflow","paddingLeft","paddingRight","selectMenu","textField","maxWidth","SelectorWithOnlyOptionAutoSelect","onChange","options","emptyLabel","firstOption","moreOptions","hasOnlyOneOptionToSelect","useEffect","displayEmpty","Typography","variant","DropDownEditor","disableUnderline","TextFieldProps","MenuProps","list","entries","flex","VerticalDivider","margin","borderLeft","flexShrink","viewMoreLessLink","cursor","arrow","transition","rotated","ViewMoreToggle","active","Link","underline","ArrowDropDown","useActions","dispatch","Object","actionName","actionCreator","useSavedStateForEntityType","getSavedState","saveState","entityTypeUri","savedState","setSavedState","changedState","setChangedState","isLoaded","setIsLoaded","updateSavedState","stateToSave","then","_","catch","createInteractionTypeFilter","ROWS_PER_PAGE_OPTIONS","INTERACTION_TYPE_COLUMN_ID","ACTORS_COLUMN_ID","ATTRIBUTES_COLUMN_ID","DEFAULT_COLUMNS_DATA","DataTypes","hideable","sortable","filterOptions","FilterOptions","filterable","maxAttrsToShow","DEFAULT_COLUMNS","ALL_TYPES_COLUMNS","getColumnsDataFromInteractionAttributes","attr","attributeUriToSearchUri","uri","getAttrDataTypeDefinition","uniqBy","getActorTypesOptions","memberTypes","updateColumnData","updateFn","adjust","findIndex","propEq","updateActorsColumn","interactionTypes","typeFilterDataType","makeTypeOption","makeCompositeFilterOption","getActorsColumnFilterOptions","getColumnsData","metadata","config","currentInteractionType","getInteractionAttributesFromMetadata","reject","getInteractionType","attributes","getInteractionColumnDataType","updateInteractionTypeColumn","defaultWrapperStyles","paddingBottom","headCell","rowCell","overflowWrap","wordWrap","actorsWrapper","memberWrapper","paddingTop","boxSizing","entityLabel","overflowX","entityAvatar","left","top","defaultWrapper","blobWrapper","link","attributesWrapper","viewMore","RowCellRenderer","CellValueRenderer","isSorted","values","withFilterAtBottom","DefaultHeadCellRenderer","MemberItem","entityType","labelCaption","getLabel","EntityTypeIcon","EntityTypeType","getActorsMembers","ActorsRenderer","members","useDispatch","viewId","useContext","ViewIdContext","useSelector","mdm","objectURI","getEntityType","openEntityWithUri","ui","DefaultCellValueRenderer","DataTypeValue","BlobRender","LinkRenderer","href","target","AttributesRenderer","mdmModule","interaction","attrTypes","expanded","setExpanded","attrNames","visibleCountLimit","hasExtraValuesToShow","attrNamesToShow","slice","attrsToShow","pick","attrTypesToShow","entity","drawLines","getAttrPathFromColumnId","split","Infinity","getNestedPathByColumnId","attrPath","getCellValueRenderer","getBasicTableColumnsData","resizable","nestedPath","headCellRenderer","HeadCellRenderer","rowCellValueRenderer","getMembersCount","getMemberCellHeight","calculateMembersCellHeight","actors","getStaticRowCellHeight","cond","pathEq","attributesCount","T","defaultGetRowCellHeight","tableContainer","fontFamily","interactions","onSort","onFilter","tableRowsData","getActorsForInteraction","timestamp","urisToShow","isAttrToShow","makeAttrTypeUri","pickBy","getAttributeValuesByPath","getInteractionAttributeValues","getRowValueByColumn","getBasicTableRowsData","tableColumnsData","useDynamicRowCellHeight","useLayoutEffect","renderRowCell","RowCellAutoSizer","getRowCellHeight","BasicTable","rowsData","hoverStateEnabled","defaultColumnWidth","defaultColumnMinWidth","headRowHeight","hoveredRowRightContentWrapper","hoveredRowRightContentContainer","header","totalCaption","interactionTypeSelector","InteractionsTableHeader","total","filtersEnabled","onToggleFilters","onInteractionTypeChange","BasicViewHeader","HideOnShrink","Spacer","InteractionTypeType","CHANGE_INTERACTION_TYPE","APPLY_SAVED_STATE","SAVE_CURRENT_STATE","basicTableViewState","changeInteractionType","applySavedState","saveCurrentState","resetActorsColumnFilters","resetPageNumber","getDefaultVisibleColumnsForCurrentInteractionType","ifElse","without","intersection","getSavedVisibleColumnsForCurrentInteractionType","changeVisibleColumnsForCurrentInteractionType","getVisibleColumnsFromSavedState","getFiltersFromSavedState","unless","isNil","validateFilterValue","saveVisibleColumnsForCurrentInteractionType","visibleColumnsForInteractionTypes","getStateToSave","nextInteractionType","entityTypeOfAppliedSavedState","tableView","DEFAULT_SORT_FIELD","initialState","sortOrder","sortColumn","useReducer","entityUri","isSavedStateApplied","isSavedStateLoaded","getInteractionTypesForEntityType","isInteractionTypeExist","allColumnsData","visibleColumnsData","currentTypeClause","Maybe","orSome","filtersClause","buildColumnsFilter","FilterBuilder","addClause","build","buildInteractionsFilter","isLoading","isInteractionsLoading","setIsLoading","setTotal","setInteractions","safePromise","useSafePromise","getInteractions","offset","sort","totalFetched","useInteractions","getRowsPerPageOptions","defaultRowsPerPage","option","handleFilterChange","LinearLoadIndicator","generateClassName","createGenerateClassName","productionPrefix","disableGlobal","seed","store","getSavedStatePromisified","promisifyCallback","Provider","StylesProvider","LocalizationProvider","dateAdapter","ErrorPopup"],"sourceRoot":""}
|