@pega/lists-core 10.0.0-build.5.25 → 10.0.0-build.5.26
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/lib/src/core/generators/ViewGenerator.d.ts.map +1 -1
- package/lib/src/core/generators/ViewGenerator.js +4 -0
- package/lib/src/core/generators/ViewGenerator.js.map +1 -1
- package/lib/src/core/generators/ViewGenerator.types.d.ts +2 -0
- package/lib/src/core/generators/ViewGenerator.types.d.ts.map +1 -1
- package/lib/src/core/generators/ViewGenerator.types.js.map +1 -1
- package/lib/src/core/reducers/error.d.ts +1 -0
- package/lib/src/core/reducers/error.d.ts.map +1 -1
- package/lib/src/core/reducers/index.d.ts +1 -0
- package/lib/src/core/reducers/index.d.ts.map +1 -1
- package/lib/src/core/reducers/resize.d.ts.map +1 -1
- package/lib/src/core/reducers/resize.js +2 -1
- package/lib/src/core/reducers/resize.js.map +1 -1
- package/lib/types/State.types.d.ts +2 -0
- package/lib/types/State.types.d.ts.map +1 -1
- package/lib/types/State.types.js.map +1 -1
- package/package.json +3 -3
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ViewGenerator.d.ts","sourceRoot":"","sources":["../../../../src/core/generators/ViewGenerator.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"ViewGenerator.d.ts","sourceRoot":"","sources":["../../../../src/core/generators/ViewGenerator.ts"],"names":[],"mappings":"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"}
|
|
@@ -209,6 +209,7 @@ export default class View {
|
|
|
209
209
|
visibleColumns: state?.visibleColumns,
|
|
210
210
|
freezeColumns: state?.freezeColumns,
|
|
211
211
|
columnWidths: state?.columnWidths,
|
|
212
|
+
columnWidthsVersion: state?.columnWidthsVersion,
|
|
212
213
|
customFields: state?.customFields,
|
|
213
214
|
selectedHeightOption: state?.selectedHeightOption,
|
|
214
215
|
paginationOptions: state?.paginationOptions,
|
|
@@ -355,6 +356,9 @@ export default class View {
|
|
|
355
356
|
const navigationHelpKey = `${isMacOs ? 'Command' : 'Control'} /`;
|
|
356
357
|
return {
|
|
357
358
|
role: 'grid',
|
|
359
|
+
...(this.state.columnWidthsVersion !== undefined && {
|
|
360
|
+
'data-column-widths-version': this.state.columnWidthsVersion
|
|
361
|
+
}),
|
|
358
362
|
'aria-rowcount': (this.totalItemCount ?? 0) + 1, // include header row as well in total row count announcement
|
|
359
363
|
'aria-colcount': this.getVisibleColumns(true).length, // include action columns as well for total column count announcement
|
|
360
364
|
'aria-label': this.#rsStore.translate('view_navigation_instructions', [
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ViewGenerator.js","sourceRoot":"","sources":["../../../../src/core/generators/ViewGenerator.ts"],"names":[],"mappings":"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","sourcesContent":["import { navigatorIsAvailable, type OmitStrict } from '@pega/cosmos-react-core';\n\nimport { FieldType, type FieldDef, type Meta } from '../../../types/Meta.types';\n// eslint-disable-next-line @typescript-eslint/no-unused-vars\nimport type { State } from '../../../types/State.types';\nimport {\n defaultPresetIdIndex,\n rowDensityClasses,\n rowSelectColumnMeta,\n rowActionColumnMeta,\n rowDragDropColumnMeta,\n SELECTION_MODES,\n TEMPLATES\n} from '../constants';\nimport * as actions from '../actions/actions';\nimport { getExternalStateKeys, normalizeFieldDef } from '../utils/util';\nimport defaultConfig from '../config/config';\nimport type RsStore from '../RsStore';\nimport type RsInternal from '../RsInternal';\nimport type RsProps from '../RsProps';\nimport type StateResolver from '../StateResolver';\n// eslint-disable-next-line @typescript-eslint/no-unused-vars\nimport type ActionTypes from '../actions/actionConstants';\n\nimport type { UtilityFunctions } from './viewUtilityMethods';\nimport Column from './ColumnGenerator';\nimport type Row from './RowGenerator';\nimport type {\n ConfirmationActionDetails,\n DebugInfo,\n FormatterFunction,\n FreezeLine,\n RefreshNotification,\n RequiredDefinition,\n UIProps,\n ViewConfig,\n ViewContext,\n ViewState,\n VirtualizeElement,\n WarningDetail\n} from './ViewGenerator.types';\nimport type { RowData } from './RowGenerator.types';\nimport type { ColumnConfig } from './ColumnGenerator.types';\nimport type GroupGenerator from './GroupGenerator';\n\n/** Module-level Set of action column IDs for O(1) membership checks. */\nconst ACTION_COLUMN_IDS = new Set([\n rowSelectColumnMeta.field.id,\n rowDragDropColumnMeta.field.id,\n rowActionColumnMeta.field.id\n]);\n\n/** A view model blueprint that represents the whole view of a repeating structure component. */\nexport default class View {\n /** A dispatcher function to dispatch actions to RsCore. */\n #dispatch: StateResolver['dispatch'];\n /** Rs store object */\n #rsStore: RsStore;\n /** Unique id for the current view */\n #viewID: string;\n /** Rs internal object reference. */\n #rsInternal: RsInternal;\n /** used to pass the latest view to rsInternal. */\n #updateView!: RsInternal['updateView'];\n /** Value of unique key to identify the single selected row. */\n #singleSelectionRowKey?: string;\n /** Render factory reference from {@link RsProps} */\n renderFactory: RsProps['renderFactory'];\n /** A unique id to identify the current repeating structure. */\n rsID: string;\n /** Current data for the view. */\n data?: RowData[];\n /** Current visible {@link Column columns} for the view. */\n columns?: Column[];\n /** Current {@link Row rows} for the view. */\n rows?: Row[];\n /** Current group headers for the view. */\n groupHeaders?: GroupGenerator[];\n /** Indicates the visible records count for the current view after applying any type of filter operation. */\n resultsCount?: number;\n /** Indicates whether to show the overall count on view or not. */\n showCount?: boolean;\n /** Indicates if the view has more records. */\n hasMoreResults?: boolean;\n /** Indicates the total record count of the view including group headers.\n */\n totalItemCount?: number;\n /** Indicates the total selected records count. */\n selectedRecordsCount?: number;\n /** Indicates the total height of the view. */\n viewHeight?: number;\n /** Indicates the current height of the container that contains data records like rows. */\n bodyHeight?: number | string;\n /** Indicates max height of the current parent container. */\n bodyMaxHeight?: number;\n /** Indicates the current height of each data row. It does not include group header row. */\n rowHeight?: number;\n /** Indicates the class name of the current selected row density. */\n rowHeightClass?: string;\n /** Indicates if the filter is applied for the current view. */\n isFilterApplied?: boolean;\n /** Indicates if the view is in loading state and not ready. It is used to show loaders in case of api calls. */\n isLoading?: boolean;\n /** Styles for the freeze line to be shown when freezing is applied. */\n freezeLine?: FreezeLine;\n /** Meta of the repeating structures. */\n meta: Meta;\n /** A list of customised the toolbar actions to be displayed at the top of a repeating structure, apart from ootb toolbar actions. */\n toolBarOptions?: RsProps['toolBarOptions'];\n /** An object of formatter functions which formats the raw value. */\n formatters?: RsProps['formatters'];\n /** A collection of style formats that can be applied for styling the data. */\n styleFormats?: RsProps['styleFormats'];\n /** A map of formatters that will be displayed to consumer to format a fieldDef in repeating structure. */\n renderFormatterTypeMap?: RsProps['renderFormatterTypeMap'];\n /** Reference to the top level Html element of repeating structures. */\n domContainer?: HTMLElement;\n /** Reference to the scroller element of repeating structures */\n scrollerNode?: HTMLElement;\n /** Reference to the header element of repeating structures. */\n itemElement?: HTMLElement;\n /** Reference to the virtualizer instance of the repeating structures. */\n virtualizeElements: VirtualizeElement;\n /** Indicates if hierarchical grouping is enabled. */\n hierarchicalGroupEnabled?: boolean;\n /** The details of the confirmation action modal triggered from consumer of repeating structures. */\n confirmationActionDetails?: ConfirmationActionDetails;\n /** Indicates if a count update is required. E.g. after applying filter a reset of count is required. */\n isCountUpdateRequired?: boolean;\n /** Indicates if count is generated internally. Used for RS core internal purpose. */\n countGeneratedInternally?: boolean;\n /** The state shared with the view after completion of one render cycle. */\n state: ViewState;\n /** The details of the debug information shared by the consumer of repeating structures.\n * It is displayed as one of the toolbar actions to debug the {@link ApiContext api context methods} latency. */\n debugInfo?: DebugInfo[];\n /** The definition of a required view. It has a boolean flag to indicate if the current repeating structures view\n * is required and a validation message to be displayed in case of required validation failure.\n * This definition is passed by consumer of repeating structures. */\n requiredDef?: RequiredDefinition;\n /** A set of {@link State.externalState external state} valid keys derived from meta.\n * E.g. value of {@link Meta.externalFilters external filters in meta} is a valid external state key. */\n externalStateKeys?: string[];\n /** Stores all the view related utility functions */\n type!: UtilityFunctions;\n /** Indicates if the current view object is generated via instantRender. */\n isInstantRender?: boolean;\n /** Config to show refreshNotification. This will be set upon receiving {@link ActionTypes.NOTIFY_DATA_REFRESH NOTIFY_DATA_REFRESH} action. */\n refreshNotification?: RefreshNotification;\n\n /**\n Overrides the default count announcement behavior for screen readers.\n * true: Always announce the row count, including on first render.\n * false: Never announce the row count.\n * undefined: Use default behavior (skip first count announcement, announce on subsequent count updates).\n */\n announceCount?: boolean;\n /** Indicates if global search is enabled.\n * If a view does not contain any visible columns which are searchable, then this will be false.\n * @default true\n */\n enableGlobalSearch: boolean;\n /** Array of warning details from API responses to display at top of table */\n warningMessages?: WarningDetail[];\n /**\n * The Table ↔ Gallery toggle is only surfaced on small screens, and only when the authored template (`meta.template`) is Table\n * Currently active template for the view. Defaults to `meta.template` but can be\n * overridden at runtime (e.g. when the user toggles between Table and Gallery).\n *\n * Renderers and toolbar code should read this property — not `meta.template` — so\n * that runtime template switches take effect without altering the persisted preset.\n */\n template?: Meta['template'];\n /**\n * Creates a view instance that represents the whole view of repeating structures.\n * It has properties like rows, columns, data to build a repeating structures view.\n * @param options An options object to create a view instance. If passed the view is created with this set of options.\n * @param rsInternal The {@link RsInternal} object.\n */\n constructor(config: ViewConfig, rsInternal: RsInternal) {\n const {\n data,\n columns,\n rows = [],\n groupHeaders,\n resultsCount,\n hasMoreResults,\n totalItemCount,\n showCount,\n viewHeight,\n selectedRecordsCount,\n bodyHeight,\n bodyMaxHeight,\n rowHeight,\n rowHeightClass,\n isFilterApplied,\n isLoading,\n freezeLine,\n state,\n domContainer,\n scrollerNode,\n meta,\n itemElement,\n virtualizeElements,\n debugInfo = [] as DebugInfo[],\n requiredDef,\n hierarchicalGroupEnabled,\n singleSelectionRowKey,\n confirmationActionDetails,\n externalStateKeys,\n isCountUpdateRequired,\n countGeneratedInternally,\n isInstantRender,\n refreshNotification,\n announceCount,\n enableGlobalSearch,\n warningMessages,\n template\n } = config;\n const { getRsStore, getRsProps, getRsStateResolver } = rsInternal;\n this.#rsInternal = rsInternal;\n this.#rsStore = getRsStore();\n const rsProps = getRsProps();\n const rsStateResolver = getRsStateResolver();\n\n this.#dispatch = rsStateResolver.dispatch;\n this.#viewID = crypto.randomUUID();\n\n // TODO: temporary solution until renderFactory is moved out of core library\n this.renderFactory = rsProps.renderFactory;\n this.rsID = rsInternal.getRsID();\n\n this.data = data;\n this.columns = columns!;\n this.rows = rows;\n this.groupHeaders = groupHeaders;\n this.resultsCount = resultsCount;\n this.hasMoreResults = hasMoreResults;\n this.showCount = meta.showCount ? showCount : false;\n this.totalItemCount = totalItemCount;\n this.selectedRecordsCount = selectedRecordsCount;\n this.viewHeight = viewHeight;\n this.bodyHeight = bodyHeight;\n this.bodyMaxHeight = bodyMaxHeight;\n this.rowHeight = rowHeight;\n this.rowHeightClass = rowHeightClass;\n this.isFilterApplied = isFilterApplied;\n this.isLoading = isLoading;\n this.freezeLine = freezeLine;\n this.meta = meta;\n this.toolBarOptions = rsProps.toolBarOptions;\n this.formatters = rsProps.formatters;\n this.styleFormats = rsProps.styleFormats;\n this.renderFormatterTypeMap = rsProps.renderFormatterTypeMap;\n this.#singleSelectionRowKey = singleSelectionRowKey;\n\n this.domContainer = domContainer;\n this.scrollerNode = scrollerNode;\n this.itemElement = itemElement;\n this.virtualizeElements = virtualizeElements || {};\n this.hierarchicalGroupEnabled = hierarchicalGroupEnabled;\n this.confirmationActionDetails = {\n ...confirmationActionDetails!,\n showConfirmationAction: state?.showConfirmationAction!\n };\n this.isCountUpdateRequired = isCountUpdateRequired;\n this.countGeneratedInternally = countGeneratedInternally;\n this.debugInfo = debugInfo;\n this.requiredDef = requiredDef;\n this.externalStateKeys = externalStateKeys || getExternalStateKeys(this.meta);\n this.isInstantRender = isInstantRender;\n this.refreshNotification = refreshNotification;\n this.announceCount = announceCount;\n this.enableGlobalSearch = enableGlobalSearch ?? true;\n this.warningMessages = warningMessages;\n this.template = template ?? meta.template;\n // FIXME: keep the state on view in sync with the emitted stated from StateResolver\n this.state = {\n searchText: state?.search?.query || '',\n galleryLayout: state?.galleryLayout,\n personalization: state?.personalization,\n filterExpression: state?.filterExpression,\n clearColFilter: state?.clearColFilter,\n sortingOrder: state?.sortingOrder,\n groups: state?.groups,\n allGroupsExpanded: state?.allGroupsExpanded,\n groupToggle: state?.groupToggle,\n showHeaderIcons: state?.showHeaderIcons,\n colOrder: state?.colOrder,\n hiddenColumns: state?.hiddenColumns,\n visibleColumns: state?.visibleColumns,\n freezeColumns: state?.freezeColumns,\n columnWidths: state?.columnWidths,\n customFields: state?.customFields,\n selectedHeightOption: state?.selectedHeightOption,\n paginationOptions: state?.paginationOptions,\n notifications: state?.notifications,\n rowSelectionChangeSet: state?.rowSelectionChangeSet,\n selectedRows: state?.selectedRows,\n bootstrap: state?.bootstrap,\n refresh: state?.refresh,\n externalState: state?.externalState,\n columnAlias: state?.columnAlias,\n aggregationInfo: state?.aggregationInfo,\n errors: state?.errors,\n responsive: state?.responsive, // stores the responsive behavior of DOM container w.r.t. various breakpoints.\n conditionalStyleFormats: state?.conditionalStyleFormats\n };\n\n /** IMP: For generator methods use traditional function syntax\n * rather than arrow function for memory efficiency\n * and bind 'this' to the methods which requires 'this' context. */\n this.getRenderingEnginePropsById = this.getRenderingEnginePropsById.bind(this);\n this.getFormatterByKey = this.getFormatterByKey.bind(this);\n this.getContext = this.getContext.bind(this);\n this.setProp = this.setProp.bind(this);\n this.addColumnAtIndex = this.addColumnAtIndex.bind(this);\n this.getRowDensity = this.getRowDensity.bind(this);\n this.setDomContainer = this.setDomContainer.bind(this);\n this.setItemElement = this.setItemElement.bind(this);\n this.shouldDisplayFeature = this.shouldDisplayFeature.bind(this);\n this.setScrollNode = this.setScrollNode.bind(this);\n this.putVirtualizeElement = this.putVirtualizeElement.bind(this);\n this.getDomContainer = this.getDomContainer.bind(this);\n this.getItemElement = this.getItemElement.bind(this);\n this.getScrollNode = this.getScrollNode.bind(this);\n this.getVirtualizeElement = this.getVirtualizeElement.bind(this);\n this.applyColumnsAutoSize = this.applyColumnsAutoSize.bind(this);\n this.addColumn = this.addColumn.bind(this);\n this.getUIProps = this.getUIProps.bind(this);\n this.getVisibleColumns = this.getVisibleColumns.bind(this);\n }\n\n // Used by setProp for mutation\n /**\n * Retruns the View properties that is used by setProp while creating new view.\n */\n #get(): ViewConfig & Pick<RsProps, 'toolBarOptions' | 'formatters' | 'renderFormatterTypeMap'> {\n return {\n data: this.data,\n singleSelectionRowKey: this.#singleSelectionRowKey,\n columns: this.columns,\n rows: this.rows,\n groupHeaders: this.groupHeaders,\n resultsCount: this.resultsCount,\n showCount: this.showCount,\n hasMoreResults: this.hasMoreResults,\n totalItemCount: this.totalItemCount,\n selectedRecordsCount: this.selectedRecordsCount,\n viewHeight: this.viewHeight,\n bodyHeight: this.bodyHeight,\n bodyMaxHeight: this.bodyMaxHeight,\n rowHeight: this.rowHeight,\n rowHeightClass: this.rowHeightClass,\n isFilterApplied: this.isFilterApplied,\n isLoading: this.isLoading,\n freezeLine: this.freezeLine,\n meta: this.meta,\n toolBarOptions: this.toolBarOptions,\n formatters: this.formatters,\n renderFormatterTypeMap: this.renderFormatterTypeMap,\n state: this.state,\n domContainer: this.domContainer,\n scrollerNode: this.scrollerNode,\n itemElement: this.itemElement,\n virtualizeElements: this.virtualizeElements,\n debugInfo: this.debugInfo,\n requiredDef: this.requiredDef,\n hierarchicalGroupEnabled: this.hierarchicalGroupEnabled,\n confirmationActionDetails: this.confirmationActionDetails,\n externalStateKeys: this.externalStateKeys,\n isCountUpdateRequired: this.isCountUpdateRequired,\n countGeneratedInternally: this.countGeneratedInternally,\n isInstantRender: this.isInstantRender,\n refreshNotification: this.refreshNotification,\n announceCount: this.announceCount,\n enableGlobalSearch: this.enableGlobalSearch,\n warningMessages: this.warningMessages,\n template: this.template\n };\n }\n\n /** Returns the warning messages array */\n getWarningMessages(): ViewConfig['warningMessages'] {\n return this.warningMessages;\n }\n\n /**\n * Attach utility functions of view to {@link type} property.\n * @param functions\n * @returns void\n */\n addUtilityFunctions(functions: UtilityFunctions) {\n this.type = functions;\n }\n\n /**\n * Sets the {@link updateView} callback function.\n * @param updateViewCallback\n * @returns void\n */\n setViewUpdateCallback(updateViewCallback: RsInternal['updateView']) {\n this.#updateView = updateViewCallback;\n }\n\n // TODO: evaluate if comparing old/new before setProp helps\n /**\n * This is used to create immutable objects of {@link View} instance. Always call setProp if updating any properties of View to make it immutable.\n * @param prop Either partial of {@link ViewConfig} or individual properties of {@link ViewConfig}.\n * @param value An optional parameter to provide value for {@link prop} in case prop is not of type {@link ViewConfig}\n */\n setProp(prop: Partial<ViewConfig> | keyof ViewConfig, value?: ViewConfig[keyof ViewConfig]) {\n const { getView } = this.#rsInternal;\n if (getView().#viewID !== this.#viewID) {\n // eslint-disable-next-line no-console\n console.warn('Doing setProp on a stale view. This might cause bugs.');\n }\n const pObject = typeof prop === 'object' ? prop : { [prop]: value };\n\n const clonedView = new View({ ...this.#get(), ...(pObject as ViewConfig) }, this.#rsInternal);\n\n if (!Object.hasOwn(pObject, 'state')) {\n clonedView.state = this.state;\n }\n\n this.#updateView(clonedView);\n\n return clonedView;\n }\n\n // FIXME: add tranlsations back\n /**\n * Returns the ui props for the {@link View} used for accessibility.\n */\n getUIProps(): UIProps {\n const activeView = this.state.personalization?.active!;\n const personalizations = this.state.personalization?.allPersonalizations;\n let ariaLabel =\n personalizations && Object.keys(personalizations).length > 1\n ? `${this.meta.title}: ${personalizations[activeView]?.name}`\n : this.meta.title!;\n\n ariaLabel += this.requiredDef?.validatemessage\n ? ` ${this.#rsStore.translate('Error')} ${this.requiredDef.validatemessage}`\n : '';\n\n if (this.requiredDef?.required ?? this.meta?.requiredOnLoad) {\n ariaLabel += ` ${this.#rsStore.translate('required')}`;\n }\n\n const isMacOs =\n navigatorIsAvailable && navigator.userAgent.match(/(Windows|Macintosh)/)?.[0] === 'Macintosh';\n\n const navigationHelpKey = `${isMacOs ? 'Command' : 'Control'} /`;\n return {\n role: 'grid',\n 'aria-rowcount': (this.totalItemCount ?? 0) + 1, // include header row as well in total row count announcement\n 'aria-colcount': this.getVisibleColumns(true).length, // include action columns as well for total column count announcement\n 'aria-label': this.#rsStore.translate('view_navigation_instructions', [\n ariaLabel,\n navigationHelpKey\n ])\n };\n }\n\n /** Returns the default(preset at 0th index in {@link RsStore.presets presets} array) preset id. */\n get defaultPresetId(): string | undefined {\n return this.#rsStore.presets?.[defaultPresetIdIndex].id;\n }\n\n /** Indicates if the view is ready.(means the RS component is mounted). */\n get isReady() {\n return this.state.bootstrap;\n }\n\n get galleryLayout() {\n return this.state?.galleryLayout;\n }\n\n /** Indicates if {@link Meta.selectionMode selection mode} is ON */\n get isInSelectionMode(): boolean {\n return !!(this.meta?.selectionMode && SELECTION_MODES[this.meta.selectionMode]);\n }\n\n /** Indicates if the Group Expand all functionality should be shown on UI. */\n get showGroupingExpandCollapseAll(): boolean {\n return !!this.#rsStore.groupingInfo?.length;\n }\n\n /** A set of props that can be used to configure Group Expand all Header cell. */\n get groupingHeaderCellProps() {\n if (!this.showGroupingExpandCollapseAll) return {};\n return {\n isExpanded: this.state.allGroupsExpanded,\n handleChange: (isExpanded: boolean): void =>\n this.#dispatch(actions.actionGroupingExpandCollapseAll(isExpanded)),\n enable: this.showGroupingExpandCollapseAll\n };\n }\n\n /** Indicates if there are no records in the view. */\n get hasNoRecords() {\n return !Number.isNaN(this.resultsCount) && this.resultsCount === 0;\n }\n\n /** Indicates if there are any frozen columns in the view. */\n get hasNoFrozenColumns() {\n return (this.columns?.filter(c => c.frozen && !c.hidden).length ?? 0) === 0;\n }\n\n /** Indicates to hide the freeze line if selection column is the only frozen column in the view. */\n get bHideFreezeLine() {\n const frozenColumns = this.columns?.filter(col => col.frozen && !col.hidden) ?? [];\n return frozenColumns.length === 1 && frozenColumns[0].field.id === rowSelectColumnMeta.field.id;\n }\n\n /** Return the predefined CSS classes for a view. */\n get className(): string {\n if (this.template !== TEMPLATES.TABLE) return '';\n // if every visible column has a width defined in field def, no need to hide the columns and wait for width calculation\n if (this.getVisibleColumns().every(col => !!col?.field?.width)) return '';\n if (!this.#rsStore.columnSizingTriggerdOnRowsAvailable) return 'hide-rows-till-ready';\n return '';\n }\n\n /**\n * Adds a column to the {@link columns Columns} of the view\n * @param field The {@link Column.field field} for the column.\n * @param option Extra options.\n * @returns the new column or existing column if it already exists.\n */\n addColumn(field: Column['field'], option: OmitStrict<ColumnConfig, 'field'>): Column {\n // Check if any column with new field exists, don't add it and show warnings.\n const existingColumn = this.columns?.find(c => c.field.id === field.id);\n\n if (!existingColumn) {\n normalizeFieldDef(field, defaultConfig.defaultFieldDef, this.template);\n const column = new Column({ field, ...option }, this.#rsInternal);\n\n // Do not include action fields in fieldDefsMap to avoid showing them in actions menu.\n if (!(field.type === FieldType.ACTION_FIELD_TYPE)) {\n this.#rsStore.fieldDefsMap.set(field.id, field);\n }\n\n const cloned = [...(this.columns ?? [])];\n cloned.push(column);\n this.columns = cloned;\n return column;\n }\n return existingColumn;\n }\n\n /**\n * Adds a column at a specified index in the {@link columns Columns} of the view.\n * @param field The {@link Column.field field} for the column.\n * @param option Extra options.\n * @param index The index at which the column needs to be inserted in the {@link columns Columns} array of view.\n * @returns void\n */\n addColumnAtIndex(\n field: Column['field'],\n option: OmitStrict<ColumnConfig, 'field'>,\n index: number\n ): Column {\n // Check if any column with new field exists, don't add it and show warnings.\n const existingColumn = this.columns?.find(col => col.field.id === field.id);\n if (!existingColumn) {\n // Full blow the meta\n normalizeFieldDef(field, defaultConfig.defaultFieldDef, this.template);\n const column = new Column({ field, ...option }, this.#rsInternal);\n\n const cloned = [...(this.columns ?? [])];\n cloned.splice(index, 0, column);\n this.columns = cloned;\n return column;\n }\n return existingColumn;\n }\n\n /**\n * Remove a column from the {@link columns Columns} array of the view.\n * @param fieldId The {@link Column.field.id fieldId} of the column to be removed.\n * @returns boolean - Indicates if the column is successfully removed from the view.\n */\n removeColumn(fieldId: string) {\n // Check if column exists, delete it and show warnings if not exists.\n const existingColumn = this.columns?.find(c => c.field.id === fieldId);\n if (existingColumn) {\n this.columns = this.columns?.filter(c => c.field.id !== fieldId);\n this.#rsStore.fieldDefsMap.delete(fieldId);\n this.meta.fieldDefs = this.meta.fieldDefs.filter(fd => fd.id !== fieldId);\n return true;\n }\n // eslint-disable-next-line no-console\n console.warn(`Column with id ${fieldId} not found.`);\n\n return false;\n }\n\n /**\n * Return the rendering engine props of a given column\n * @param id The {@link Column.field.id id} of the column for which rendering engine props are required.\n */\n getRenderingEnginePropsById(id: string) {\n const column = this.columns?.find(c => c.field.id === id);\n return column?.getRenderingEngineProps();\n }\n\n /** Fetches the distinct values for a given field via {@link ApiContext.fetchUniqueColValues fetchUniqueColValues}. */\n async getUniqueValues(fieldId: string) {\n return (\n this.#rsInternal\n .getRsProps()\n .apiContext.fetchUniqueColValues?.(this.state, this.meta, fieldId, {\n ...(this.#rsStore.refreshInProgress && {\n invalidateCache: true,\n invalidateCacheToken: this.#rsStore.refreshToken\n })\n }) || Promise.resolve([])\n );\n }\n\n /**\n * Returns the row density id for a given {@link rowHeightClass}.\n */\n getRowDensity(): string {\n return Object.values(rowDensityClasses).find(obj => obj.className === this.rowHeightClass)!.id;\n }\n\n /** Returns the current view context. While building a RS view,\n * pass getContext to the consumers of RS to access the view related information.\n *\n * @public\n * */\n getContext(): ViewContext {\n return {\n getMeta: () => this.meta,\n getState: () => this.state,\n getColumns: () => this.columns,\n getRenderingEnginePropsById: this.getRenderingEnginePropsById,\n selectedRecordsCount: this.selectedRecordsCount,\n resultsCount: this.resultsCount,\n hasMoreResults: this.hasMoreResults,\n getRequiredDef: () => this.requiredDef,\n getRowDensity: this.getRowDensity,\n getVisibleColumns: this.getVisibleColumns,\n template: this.template,\n getUniqueValues: this.getUniqueValues.bind(this)\n };\n }\n\n /**\n * It returns the formatter function available for a given formatterName from {@link RsProps.formatters formatters} passed to RS Core.\n * @param formatterName\n */\n getFormatterByKey(formatterName: string): FormatterFunction | undefined {\n return this.formatters?.[formatterName];\n }\n\n /**\n * This sets the parent dom container in RS core. RS Core utilizes this dom container for DOM related features.\n * Set this as part of initialization of Repeating structures.\n *\n * Refer `Initialization section` in [README.md](../../../README.md)\n * @param n - the parent container of the whole Repeating structures.\n */\n setDomContainer(n: HTMLElement): void {\n this.domContainer = n;\n }\n\n /**\n * This sets the the header element in RS core. RS Core utilizes this header element for DOM related features e.g. animation.\n * Pass Html header element of the repeating structures to this method as part of initialization of Repeating structures.\n *\n * Refer `Initialization section` in [README.md](../../../README.md)\n * @param n The header element\n */\n setItemElement(n: HTMLElement): void {\n this.itemElement = n;\n }\n\n /**\n * This sets the scroller element(the element used in virtualizer as a scrollable area, e.g. a buffer container) of repeating structures into RS core. RS Core utilizes this scroller element for scrolling related features.\n * Pass Html scrollable area element of the repeating structures to this method as part of initialization of Repeating structures.\n * @param n The scroller element\n */\n setScrollNode(n: HTMLElement): void {\n this.scrollerNode = n;\n }\n\n /**\n * This sets the virtualizer instance in the RS core.\n * @param name unique id of the virtualizer\n * @param element the instance of the virtualizer\n */\n putVirtualizeElement(\n name: string,\n virtualizerInstance: VirtualizeElement[keyof VirtualizeElement[number]]\n ) {\n this.virtualizeElements[name] = virtualizerInstance;\n }\n\n /**\n * @returns The parent dom container HTML element.\n */\n getDomContainer() {\n return this.domContainer;\n }\n\n /**\n * @returns The scroller element(the element used in virtualizer as a scrollable area.)\n */\n getScrollNode() {\n return this.scrollerNode;\n }\n\n /**\n * @returns Returns the header row of the Repeating structures view.\n */\n getItemElement() {\n return this.itemElement;\n }\n\n /**\n * Indicates if the given {@link feature} should be displayed on the Repeating structures UI or not.\n * This flag can be derived for a given {@link column} too apart from the whole view.\n * This flag is just to hide the user interaction items from the UI for the respective features. It will not stop running the respective features.\n * @param feature The feature name\n * @param column an optional column parameter if you want to check if the feature is available for the given column.\n */\n shouldDisplayFeature(feature: 'filter' | 'sort' | 'grouping', column?: Column): boolean {\n const viewDisplayFeatureFlag = this.meta?.displayFeatures![feature];\n return !!(column ? !!column.field[feature] && viewDisplayFeatureFlag : viewDisplayFeatureFlag);\n }\n\n /**\n * Returns virtualizer instance for a given virtualizer name.\n * @param name unique id of the virtualizer\n */\n getVirtualizeElement(\n name: string\n ): VirtualizeElement[keyof VirtualizeElement[number]] | undefined {\n return this.virtualizeElements[name];\n }\n\n /**\n * It triggers the autosize of columns.\n * @param reset An optional flag to reset the column widths to its default configured width.\n */\n applyColumnsAutoSize(reset = true) {\n this.#dispatch(actions.actionColumnsAutoSize(this.columns!, this.getDomContainer()!, reset));\n }\n\n /** Returns value of unique key to identify the single selected row */\n getSingleSelectionRowKey() {\n return this.#singleSelectionRowKey;\n }\n\n /** Sets the value of unique key to identify the single selected row */\n setSingleSelectionRowKey(key: string) {\n this.#singleSelectionRowKey = key;\n }\n\n /**\n * Returns the array of visible columns.\n * @param includeActionColumns - include action columns (rowSelect, rowDragDrop, rowActionColumn). Default is `false`.\n * @returns array of visible columns with/without action columns.\n */\n getVisibleColumns(includeActionColumns = false) {\n const visibleIds = new Set(this.state.visibleColumns);\n return (\n this.columns?.filter(\n col =>\n visibleIds.has(col.field.id) &&\n (includeActionColumns || !ACTION_COLUMN_IDS.has(col.field.id))\n ) ?? []\n );\n }\n\n /**\n * Returns the array of visible column IDs.\n * @param includeActionColumns - include action column IDs (rowSelect, rowDragDrop, rowActionColumn). Default is `false`.\n * @returns array of visible column IDs with/without action columns.\n */\n getVisibleColumnIds(includeActionColumns = false): string[] {\n if (includeActionColumns) {\n return this.state.visibleColumns ?? [];\n }\n return this.state.visibleColumns?.filter(id => !ACTION_COLUMN_IDS.has(id)) ?? [];\n }\n\n /**\n * Returns the {@link FieldDef fieldDefs} from {@link meta} for the current view.\n * This reflects the latest state of fieldDefs including any additions or removals made after initialization.\n * @returns array of {@link FieldDef fieldDefs} from {@link meta}.\n */\n getFieldDefs(): FieldDef[] {\n return this.meta.fieldDefs;\n }\n}\n"]}
|
|
1
|
+
{"version":3,"file":"ViewGenerator.js","sourceRoot":"","sources":["../../../../src/core/generators/ViewGenerator.ts"],"names":[],"mappings":"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","sourcesContent":["import { navigatorIsAvailable, type OmitStrict } from '@pega/cosmos-react-core';\n\nimport { FieldType, type FieldDef, type Meta } from '../../../types/Meta.types';\n// eslint-disable-next-line @typescript-eslint/no-unused-vars\nimport type { State } from '../../../types/State.types';\nimport {\n defaultPresetIdIndex,\n rowDensityClasses,\n rowSelectColumnMeta,\n rowActionColumnMeta,\n rowDragDropColumnMeta,\n SELECTION_MODES,\n TEMPLATES\n} from '../constants';\nimport * as actions from '../actions/actions';\nimport { getExternalStateKeys, normalizeFieldDef } from '../utils/util';\nimport defaultConfig from '../config/config';\nimport type RsStore from '../RsStore';\nimport type RsInternal from '../RsInternal';\nimport type RsProps from '../RsProps';\nimport type StateResolver from '../StateResolver';\n// eslint-disable-next-line @typescript-eslint/no-unused-vars\nimport type ActionTypes from '../actions/actionConstants';\n\nimport type { UtilityFunctions } from './viewUtilityMethods';\nimport Column from './ColumnGenerator';\nimport type Row from './RowGenerator';\nimport type {\n ConfirmationActionDetails,\n DebugInfo,\n FormatterFunction,\n FreezeLine,\n RefreshNotification,\n RequiredDefinition,\n UIProps,\n ViewConfig,\n ViewContext,\n ViewState,\n VirtualizeElement,\n WarningDetail\n} from './ViewGenerator.types';\nimport type { RowData } from './RowGenerator.types';\nimport type { ColumnConfig } from './ColumnGenerator.types';\nimport type GroupGenerator from './GroupGenerator';\n\n/** Module-level Set of action column IDs for O(1) membership checks. */\nconst ACTION_COLUMN_IDS = new Set([\n rowSelectColumnMeta.field.id,\n rowDragDropColumnMeta.field.id,\n rowActionColumnMeta.field.id\n]);\n\n/** A view model blueprint that represents the whole view of a repeating structure component. */\nexport default class View {\n /** A dispatcher function to dispatch actions to RsCore. */\n #dispatch: StateResolver['dispatch'];\n /** Rs store object */\n #rsStore: RsStore;\n /** Unique id for the current view */\n #viewID: string;\n /** Rs internal object reference. */\n #rsInternal: RsInternal;\n /** used to pass the latest view to rsInternal. */\n #updateView!: RsInternal['updateView'];\n /** Value of unique key to identify the single selected row. */\n #singleSelectionRowKey?: string;\n /** Render factory reference from {@link RsProps} */\n renderFactory: RsProps['renderFactory'];\n /** A unique id to identify the current repeating structure. */\n rsID: string;\n /** Current data for the view. */\n data?: RowData[];\n /** Current visible {@link Column columns} for the view. */\n columns?: Column[];\n /** Current {@link Row rows} for the view. */\n rows?: Row[];\n /** Current group headers for the view. */\n groupHeaders?: GroupGenerator[];\n /** Indicates the visible records count for the current view after applying any type of filter operation. */\n resultsCount?: number;\n /** Indicates whether to show the overall count on view or not. */\n showCount?: boolean;\n /** Indicates if the view has more records. */\n hasMoreResults?: boolean;\n /** Indicates the total record count of the view including group headers.\n */\n totalItemCount?: number;\n /** Indicates the total selected records count. */\n selectedRecordsCount?: number;\n /** Indicates the total height of the view. */\n viewHeight?: number;\n /** Indicates the current height of the container that contains data records like rows. */\n bodyHeight?: number | string;\n /** Indicates max height of the current parent container. */\n bodyMaxHeight?: number;\n /** Indicates the current height of each data row. It does not include group header row. */\n rowHeight?: number;\n /** Indicates the class name of the current selected row density. */\n rowHeightClass?: string;\n /** Indicates if the filter is applied for the current view. */\n isFilterApplied?: boolean;\n /** Indicates if the view is in loading state and not ready. It is used to show loaders in case of api calls. */\n isLoading?: boolean;\n /** Styles for the freeze line to be shown when freezing is applied. */\n freezeLine?: FreezeLine;\n /** Meta of the repeating structures. */\n meta: Meta;\n /** A list of customised the toolbar actions to be displayed at the top of a repeating structure, apart from ootb toolbar actions. */\n toolBarOptions?: RsProps['toolBarOptions'];\n /** An object of formatter functions which formats the raw value. */\n formatters?: RsProps['formatters'];\n /** A collection of style formats that can be applied for styling the data. */\n styleFormats?: RsProps['styleFormats'];\n /** A map of formatters that will be displayed to consumer to format a fieldDef in repeating structure. */\n renderFormatterTypeMap?: RsProps['renderFormatterTypeMap'];\n /** Reference to the top level Html element of repeating structures. */\n domContainer?: HTMLElement;\n /** Reference to the scroller element of repeating structures */\n scrollerNode?: HTMLElement;\n /** Reference to the header element of repeating structures. */\n itemElement?: HTMLElement;\n /** Reference to the virtualizer instance of the repeating structures. */\n virtualizeElements: VirtualizeElement;\n /** Indicates if hierarchical grouping is enabled. */\n hierarchicalGroupEnabled?: boolean;\n /** The details of the confirmation action modal triggered from consumer of repeating structures. */\n confirmationActionDetails?: ConfirmationActionDetails;\n /** Indicates if a count update is required. E.g. after applying filter a reset of count is required. */\n isCountUpdateRequired?: boolean;\n /** Indicates if count is generated internally. Used for RS core internal purpose. */\n countGeneratedInternally?: boolean;\n /** The state shared with the view after completion of one render cycle. */\n state: ViewState;\n /** The details of the debug information shared by the consumer of repeating structures.\n * It is displayed as one of the toolbar actions to debug the {@link ApiContext api context methods} latency. */\n debugInfo?: DebugInfo[];\n /** The definition of a required view. It has a boolean flag to indicate if the current repeating structures view\n * is required and a validation message to be displayed in case of required validation failure.\n * This definition is passed by consumer of repeating structures. */\n requiredDef?: RequiredDefinition;\n /** A set of {@link State.externalState external state} valid keys derived from meta.\n * E.g. value of {@link Meta.externalFilters external filters in meta} is a valid external state key. */\n externalStateKeys?: string[];\n /** Stores all the view related utility functions */\n type!: UtilityFunctions;\n /** Indicates if the current view object is generated via instantRender. */\n isInstantRender?: boolean;\n /** Config to show refreshNotification. This will be set upon receiving {@link ActionTypes.NOTIFY_DATA_REFRESH NOTIFY_DATA_REFRESH} action. */\n refreshNotification?: RefreshNotification;\n\n /**\n Overrides the default count announcement behavior for screen readers.\n * true: Always announce the row count, including on first render.\n * false: Never announce the row count.\n * undefined: Use default behavior (skip first count announcement, announce on subsequent count updates).\n */\n announceCount?: boolean;\n /** Indicates if global search is enabled.\n * If a view does not contain any visible columns which are searchable, then this will be false.\n * @default true\n */\n enableGlobalSearch: boolean;\n /** Array of warning details from API responses to display at top of table */\n warningMessages?: WarningDetail[];\n /**\n * The Table ↔ Gallery toggle is only surfaced on small screens, and only when the authored template (`meta.template`) is Table\n * Currently active template for the view. Defaults to `meta.template` but can be\n * overridden at runtime (e.g. when the user toggles between Table and Gallery).\n *\n * Renderers and toolbar code should read this property — not `meta.template` — so\n * that runtime template switches take effect without altering the persisted preset.\n */\n template?: Meta['template'];\n /**\n * Creates a view instance that represents the whole view of repeating structures.\n * It has properties like rows, columns, data to build a repeating structures view.\n * @param options An options object to create a view instance. If passed the view is created with this set of options.\n * @param rsInternal The {@link RsInternal} object.\n */\n constructor(config: ViewConfig, rsInternal: RsInternal) {\n const {\n data,\n columns,\n rows = [],\n groupHeaders,\n resultsCount,\n hasMoreResults,\n totalItemCount,\n showCount,\n viewHeight,\n selectedRecordsCount,\n bodyHeight,\n bodyMaxHeight,\n rowHeight,\n rowHeightClass,\n isFilterApplied,\n isLoading,\n freezeLine,\n state,\n domContainer,\n scrollerNode,\n meta,\n itemElement,\n virtualizeElements,\n debugInfo = [] as DebugInfo[],\n requiredDef,\n hierarchicalGroupEnabled,\n singleSelectionRowKey,\n confirmationActionDetails,\n externalStateKeys,\n isCountUpdateRequired,\n countGeneratedInternally,\n isInstantRender,\n refreshNotification,\n announceCount,\n enableGlobalSearch,\n warningMessages,\n template\n } = config;\n const { getRsStore, getRsProps, getRsStateResolver } = rsInternal;\n this.#rsInternal = rsInternal;\n this.#rsStore = getRsStore();\n const rsProps = getRsProps();\n const rsStateResolver = getRsStateResolver();\n\n this.#dispatch = rsStateResolver.dispatch;\n this.#viewID = crypto.randomUUID();\n\n // TODO: temporary solution until renderFactory is moved out of core library\n this.renderFactory = rsProps.renderFactory;\n this.rsID = rsInternal.getRsID();\n\n this.data = data;\n this.columns = columns!;\n this.rows = rows;\n this.groupHeaders = groupHeaders;\n this.resultsCount = resultsCount;\n this.hasMoreResults = hasMoreResults;\n this.showCount = meta.showCount ? showCount : false;\n this.totalItemCount = totalItemCount;\n this.selectedRecordsCount = selectedRecordsCount;\n this.viewHeight = viewHeight;\n this.bodyHeight = bodyHeight;\n this.bodyMaxHeight = bodyMaxHeight;\n this.rowHeight = rowHeight;\n this.rowHeightClass = rowHeightClass;\n this.isFilterApplied = isFilterApplied;\n this.isLoading = isLoading;\n this.freezeLine = freezeLine;\n this.meta = meta;\n this.toolBarOptions = rsProps.toolBarOptions;\n this.formatters = rsProps.formatters;\n this.styleFormats = rsProps.styleFormats;\n this.renderFormatterTypeMap = rsProps.renderFormatterTypeMap;\n this.#singleSelectionRowKey = singleSelectionRowKey;\n\n this.domContainer = domContainer;\n this.scrollerNode = scrollerNode;\n this.itemElement = itemElement;\n this.virtualizeElements = virtualizeElements || {};\n this.hierarchicalGroupEnabled = hierarchicalGroupEnabled;\n this.confirmationActionDetails = {\n ...confirmationActionDetails!,\n showConfirmationAction: state?.showConfirmationAction!\n };\n this.isCountUpdateRequired = isCountUpdateRequired;\n this.countGeneratedInternally = countGeneratedInternally;\n this.debugInfo = debugInfo;\n this.requiredDef = requiredDef;\n this.externalStateKeys = externalStateKeys || getExternalStateKeys(this.meta);\n this.isInstantRender = isInstantRender;\n this.refreshNotification = refreshNotification;\n this.announceCount = announceCount;\n this.enableGlobalSearch = enableGlobalSearch ?? true;\n this.warningMessages = warningMessages;\n this.template = template ?? meta.template;\n // FIXME: keep the state on view in sync with the emitted stated from StateResolver\n this.state = {\n searchText: state?.search?.query || '',\n galleryLayout: state?.galleryLayout,\n personalization: state?.personalization,\n filterExpression: state?.filterExpression,\n clearColFilter: state?.clearColFilter,\n sortingOrder: state?.sortingOrder,\n groups: state?.groups,\n allGroupsExpanded: state?.allGroupsExpanded,\n groupToggle: state?.groupToggle,\n showHeaderIcons: state?.showHeaderIcons,\n colOrder: state?.colOrder,\n hiddenColumns: state?.hiddenColumns,\n visibleColumns: state?.visibleColumns,\n freezeColumns: state?.freezeColumns,\n columnWidths: state?.columnWidths,\n columnWidthsVersion: state?.columnWidthsVersion,\n customFields: state?.customFields,\n selectedHeightOption: state?.selectedHeightOption,\n paginationOptions: state?.paginationOptions,\n notifications: state?.notifications,\n rowSelectionChangeSet: state?.rowSelectionChangeSet,\n selectedRows: state?.selectedRows,\n bootstrap: state?.bootstrap,\n refresh: state?.refresh,\n externalState: state?.externalState,\n columnAlias: state?.columnAlias,\n aggregationInfo: state?.aggregationInfo,\n errors: state?.errors,\n responsive: state?.responsive, // stores the responsive behavior of DOM container w.r.t. various breakpoints.\n conditionalStyleFormats: state?.conditionalStyleFormats\n };\n\n /** IMP: For generator methods use traditional function syntax\n * rather than arrow function for memory efficiency\n * and bind 'this' to the methods which requires 'this' context. */\n this.getRenderingEnginePropsById = this.getRenderingEnginePropsById.bind(this);\n this.getFormatterByKey = this.getFormatterByKey.bind(this);\n this.getContext = this.getContext.bind(this);\n this.setProp = this.setProp.bind(this);\n this.addColumnAtIndex = this.addColumnAtIndex.bind(this);\n this.getRowDensity = this.getRowDensity.bind(this);\n this.setDomContainer = this.setDomContainer.bind(this);\n this.setItemElement = this.setItemElement.bind(this);\n this.shouldDisplayFeature = this.shouldDisplayFeature.bind(this);\n this.setScrollNode = this.setScrollNode.bind(this);\n this.putVirtualizeElement = this.putVirtualizeElement.bind(this);\n this.getDomContainer = this.getDomContainer.bind(this);\n this.getItemElement = this.getItemElement.bind(this);\n this.getScrollNode = this.getScrollNode.bind(this);\n this.getVirtualizeElement = this.getVirtualizeElement.bind(this);\n this.applyColumnsAutoSize = this.applyColumnsAutoSize.bind(this);\n this.addColumn = this.addColumn.bind(this);\n this.getUIProps = this.getUIProps.bind(this);\n this.getVisibleColumns = this.getVisibleColumns.bind(this);\n }\n\n // Used by setProp for mutation\n /**\n * Retruns the View properties that is used by setProp while creating new view.\n */\n #get(): ViewConfig & Pick<RsProps, 'toolBarOptions' | 'formatters' | 'renderFormatterTypeMap'> {\n return {\n data: this.data,\n singleSelectionRowKey: this.#singleSelectionRowKey,\n columns: this.columns,\n rows: this.rows,\n groupHeaders: this.groupHeaders,\n resultsCount: this.resultsCount,\n showCount: this.showCount,\n hasMoreResults: this.hasMoreResults,\n totalItemCount: this.totalItemCount,\n selectedRecordsCount: this.selectedRecordsCount,\n viewHeight: this.viewHeight,\n bodyHeight: this.bodyHeight,\n bodyMaxHeight: this.bodyMaxHeight,\n rowHeight: this.rowHeight,\n rowHeightClass: this.rowHeightClass,\n isFilterApplied: this.isFilterApplied,\n isLoading: this.isLoading,\n freezeLine: this.freezeLine,\n meta: this.meta,\n toolBarOptions: this.toolBarOptions,\n formatters: this.formatters,\n renderFormatterTypeMap: this.renderFormatterTypeMap,\n state: this.state,\n domContainer: this.domContainer,\n scrollerNode: this.scrollerNode,\n itemElement: this.itemElement,\n virtualizeElements: this.virtualizeElements,\n debugInfo: this.debugInfo,\n requiredDef: this.requiredDef,\n hierarchicalGroupEnabled: this.hierarchicalGroupEnabled,\n confirmationActionDetails: this.confirmationActionDetails,\n externalStateKeys: this.externalStateKeys,\n isCountUpdateRequired: this.isCountUpdateRequired,\n countGeneratedInternally: this.countGeneratedInternally,\n isInstantRender: this.isInstantRender,\n refreshNotification: this.refreshNotification,\n announceCount: this.announceCount,\n enableGlobalSearch: this.enableGlobalSearch,\n warningMessages: this.warningMessages,\n template: this.template\n };\n }\n\n /** Returns the warning messages array */\n getWarningMessages(): ViewConfig['warningMessages'] {\n return this.warningMessages;\n }\n\n /**\n * Attach utility functions of view to {@link type} property.\n * @param functions\n * @returns void\n */\n addUtilityFunctions(functions: UtilityFunctions) {\n this.type = functions;\n }\n\n /**\n * Sets the {@link updateView} callback function.\n * @param updateViewCallback\n * @returns void\n */\n setViewUpdateCallback(updateViewCallback: RsInternal['updateView']) {\n this.#updateView = updateViewCallback;\n }\n\n // TODO: evaluate if comparing old/new before setProp helps\n /**\n * This is used to create immutable objects of {@link View} instance. Always call setProp if updating any properties of View to make it immutable.\n * @param prop Either partial of {@link ViewConfig} or individual properties of {@link ViewConfig}.\n * @param value An optional parameter to provide value for {@link prop} in case prop is not of type {@link ViewConfig}\n */\n setProp(prop: Partial<ViewConfig> | keyof ViewConfig, value?: ViewConfig[keyof ViewConfig]) {\n const { getView } = this.#rsInternal;\n if (getView().#viewID !== this.#viewID) {\n // eslint-disable-next-line no-console\n console.warn('Doing setProp on a stale view. This might cause bugs.');\n }\n const pObject = typeof prop === 'object' ? prop : { [prop]: value };\n\n const clonedView = new View({ ...this.#get(), ...(pObject as ViewConfig) }, this.#rsInternal);\n\n if (!Object.hasOwn(pObject, 'state')) {\n clonedView.state = this.state;\n }\n\n this.#updateView(clonedView);\n\n return clonedView;\n }\n\n // FIXME: add tranlsations back\n /**\n * Returns the ui props for the {@link View} used for accessibility.\n */\n getUIProps(): UIProps {\n const activeView = this.state.personalization?.active!;\n const personalizations = this.state.personalization?.allPersonalizations;\n let ariaLabel =\n personalizations && Object.keys(personalizations).length > 1\n ? `${this.meta.title}: ${personalizations[activeView]?.name}`\n : this.meta.title!;\n\n ariaLabel += this.requiredDef?.validatemessage\n ? ` ${this.#rsStore.translate('Error')} ${this.requiredDef.validatemessage}`\n : '';\n\n if (this.requiredDef?.required ?? this.meta?.requiredOnLoad) {\n ariaLabel += ` ${this.#rsStore.translate('required')}`;\n }\n\n const isMacOs =\n navigatorIsAvailable && navigator.userAgent.match(/(Windows|Macintosh)/)?.[0] === 'Macintosh';\n\n const navigationHelpKey = `${isMacOs ? 'Command' : 'Control'} /`;\n return {\n role: 'grid',\n ...(this.state.columnWidthsVersion !== undefined && {\n 'data-column-widths-version': this.state.columnWidthsVersion\n }),\n 'aria-rowcount': (this.totalItemCount ?? 0) + 1, // include header row as well in total row count announcement\n 'aria-colcount': this.getVisibleColumns(true).length, // include action columns as well for total column count announcement\n 'aria-label': this.#rsStore.translate('view_navigation_instructions', [\n ariaLabel,\n navigationHelpKey\n ])\n };\n }\n\n /** Returns the default(preset at 0th index in {@link RsStore.presets presets} array) preset id. */\n get defaultPresetId(): string | undefined {\n return this.#rsStore.presets?.[defaultPresetIdIndex].id;\n }\n\n /** Indicates if the view is ready.(means the RS component is mounted). */\n get isReady() {\n return this.state.bootstrap;\n }\n\n get galleryLayout() {\n return this.state?.galleryLayout;\n }\n\n /** Indicates if {@link Meta.selectionMode selection mode} is ON */\n get isInSelectionMode(): boolean {\n return !!(this.meta?.selectionMode && SELECTION_MODES[this.meta.selectionMode]);\n }\n\n /** Indicates if the Group Expand all functionality should be shown on UI. */\n get showGroupingExpandCollapseAll(): boolean {\n return !!this.#rsStore.groupingInfo?.length;\n }\n\n /** A set of props that can be used to configure Group Expand all Header cell. */\n get groupingHeaderCellProps() {\n if (!this.showGroupingExpandCollapseAll) return {};\n return {\n isExpanded: this.state.allGroupsExpanded,\n handleChange: (isExpanded: boolean): void =>\n this.#dispatch(actions.actionGroupingExpandCollapseAll(isExpanded)),\n enable: this.showGroupingExpandCollapseAll\n };\n }\n\n /** Indicates if there are no records in the view. */\n get hasNoRecords() {\n return !Number.isNaN(this.resultsCount) && this.resultsCount === 0;\n }\n\n /** Indicates if there are any frozen columns in the view. */\n get hasNoFrozenColumns() {\n return (this.columns?.filter(c => c.frozen && !c.hidden).length ?? 0) === 0;\n }\n\n /** Indicates to hide the freeze line if selection column is the only frozen column in the view. */\n get bHideFreezeLine() {\n const frozenColumns = this.columns?.filter(col => col.frozen && !col.hidden) ?? [];\n return frozenColumns.length === 1 && frozenColumns[0].field.id === rowSelectColumnMeta.field.id;\n }\n\n /** Return the predefined CSS classes for a view. */\n get className(): string {\n if (this.template !== TEMPLATES.TABLE) return '';\n // if every visible column has a width defined in field def, no need to hide the columns and wait for width calculation\n if (this.getVisibleColumns().every(col => !!col?.field?.width)) return '';\n if (!this.#rsStore.columnSizingTriggerdOnRowsAvailable) return 'hide-rows-till-ready';\n return '';\n }\n\n /**\n * Adds a column to the {@link columns Columns} of the view\n * @param field The {@link Column.field field} for the column.\n * @param option Extra options.\n * @returns the new column or existing column if it already exists.\n */\n addColumn(field: Column['field'], option: OmitStrict<ColumnConfig, 'field'>): Column {\n // Check if any column with new field exists, don't add it and show warnings.\n const existingColumn = this.columns?.find(c => c.field.id === field.id);\n\n if (!existingColumn) {\n normalizeFieldDef(field, defaultConfig.defaultFieldDef, this.template);\n const column = new Column({ field, ...option }, this.#rsInternal);\n\n // Do not include action fields in fieldDefsMap to avoid showing them in actions menu.\n if (!(field.type === FieldType.ACTION_FIELD_TYPE)) {\n this.#rsStore.fieldDefsMap.set(field.id, field);\n }\n\n const cloned = [...(this.columns ?? [])];\n cloned.push(column);\n this.columns = cloned;\n return column;\n }\n return existingColumn;\n }\n\n /**\n * Adds a column at a specified index in the {@link columns Columns} of the view.\n * @param field The {@link Column.field field} for the column.\n * @param option Extra options.\n * @param index The index at which the column needs to be inserted in the {@link columns Columns} array of view.\n * @returns void\n */\n addColumnAtIndex(\n field: Column['field'],\n option: OmitStrict<ColumnConfig, 'field'>,\n index: number\n ): Column {\n // Check if any column with new field exists, don't add it and show warnings.\n const existingColumn = this.columns?.find(col => col.field.id === field.id);\n if (!existingColumn) {\n // Full blow the meta\n normalizeFieldDef(field, defaultConfig.defaultFieldDef, this.template);\n const column = new Column({ field, ...option }, this.#rsInternal);\n\n const cloned = [...(this.columns ?? [])];\n cloned.splice(index, 0, column);\n this.columns = cloned;\n return column;\n }\n return existingColumn;\n }\n\n /**\n * Remove a column from the {@link columns Columns} array of the view.\n * @param fieldId The {@link Column.field.id fieldId} of the column to be removed.\n * @returns boolean - Indicates if the column is successfully removed from the view.\n */\n removeColumn(fieldId: string) {\n // Check if column exists, delete it and show warnings if not exists.\n const existingColumn = this.columns?.find(c => c.field.id === fieldId);\n if (existingColumn) {\n this.columns = this.columns?.filter(c => c.field.id !== fieldId);\n this.#rsStore.fieldDefsMap.delete(fieldId);\n this.meta.fieldDefs = this.meta.fieldDefs.filter(fd => fd.id !== fieldId);\n return true;\n }\n // eslint-disable-next-line no-console\n console.warn(`Column with id ${fieldId} not found.`);\n\n return false;\n }\n\n /**\n * Return the rendering engine props of a given column\n * @param id The {@link Column.field.id id} of the column for which rendering engine props are required.\n */\n getRenderingEnginePropsById(id: string) {\n const column = this.columns?.find(c => c.field.id === id);\n return column?.getRenderingEngineProps();\n }\n\n /** Fetches the distinct values for a given field via {@link ApiContext.fetchUniqueColValues fetchUniqueColValues}. */\n async getUniqueValues(fieldId: string) {\n return (\n this.#rsInternal\n .getRsProps()\n .apiContext.fetchUniqueColValues?.(this.state, this.meta, fieldId, {\n ...(this.#rsStore.refreshInProgress && {\n invalidateCache: true,\n invalidateCacheToken: this.#rsStore.refreshToken\n })\n }) || Promise.resolve([])\n );\n }\n\n /**\n * Returns the row density id for a given {@link rowHeightClass}.\n */\n getRowDensity(): string {\n return Object.values(rowDensityClasses).find(obj => obj.className === this.rowHeightClass)!.id;\n }\n\n /** Returns the current view context. While building a RS view,\n * pass getContext to the consumers of RS to access the view related information.\n *\n * @public\n * */\n getContext(): ViewContext {\n return {\n getMeta: () => this.meta,\n getState: () => this.state,\n getColumns: () => this.columns,\n getRenderingEnginePropsById: this.getRenderingEnginePropsById,\n selectedRecordsCount: this.selectedRecordsCount,\n resultsCount: this.resultsCount,\n hasMoreResults: this.hasMoreResults,\n getRequiredDef: () => this.requiredDef,\n getRowDensity: this.getRowDensity,\n getVisibleColumns: this.getVisibleColumns,\n template: this.template,\n getUniqueValues: this.getUniqueValues.bind(this)\n };\n }\n\n /**\n * It returns the formatter function available for a given formatterName from {@link RsProps.formatters formatters} passed to RS Core.\n * @param formatterName\n */\n getFormatterByKey(formatterName: string): FormatterFunction | undefined {\n return this.formatters?.[formatterName];\n }\n\n /**\n * This sets the parent dom container in RS core. RS Core utilizes this dom container for DOM related features.\n * Set this as part of initialization of Repeating structures.\n *\n * Refer `Initialization section` in [README.md](../../../README.md)\n * @param n - the parent container of the whole Repeating structures.\n */\n setDomContainer(n: HTMLElement): void {\n this.domContainer = n;\n }\n\n /**\n * This sets the the header element in RS core. RS Core utilizes this header element for DOM related features e.g. animation.\n * Pass Html header element of the repeating structures to this method as part of initialization of Repeating structures.\n *\n * Refer `Initialization section` in [README.md](../../../README.md)\n * @param n The header element\n */\n setItemElement(n: HTMLElement): void {\n this.itemElement = n;\n }\n\n /**\n * This sets the scroller element(the element used in virtualizer as a scrollable area, e.g. a buffer container) of repeating structures into RS core. RS Core utilizes this scroller element for scrolling related features.\n * Pass Html scrollable area element of the repeating structures to this method as part of initialization of Repeating structures.\n * @param n The scroller element\n */\n setScrollNode(n: HTMLElement): void {\n this.scrollerNode = n;\n }\n\n /**\n * This sets the virtualizer instance in the RS core.\n * @param name unique id of the virtualizer\n * @param element the instance of the virtualizer\n */\n putVirtualizeElement(\n name: string,\n virtualizerInstance: VirtualizeElement[keyof VirtualizeElement[number]]\n ) {\n this.virtualizeElements[name] = virtualizerInstance;\n }\n\n /**\n * @returns The parent dom container HTML element.\n */\n getDomContainer() {\n return this.domContainer;\n }\n\n /**\n * @returns The scroller element(the element used in virtualizer as a scrollable area.)\n */\n getScrollNode() {\n return this.scrollerNode;\n }\n\n /**\n * @returns Returns the header row of the Repeating structures view.\n */\n getItemElement() {\n return this.itemElement;\n }\n\n /**\n * Indicates if the given {@link feature} should be displayed on the Repeating structures UI or not.\n * This flag can be derived for a given {@link column} too apart from the whole view.\n * This flag is just to hide the user interaction items from the UI for the respective features. It will not stop running the respective features.\n * @param feature The feature name\n * @param column an optional column parameter if you want to check if the feature is available for the given column.\n */\n shouldDisplayFeature(feature: 'filter' | 'sort' | 'grouping', column?: Column): boolean {\n const viewDisplayFeatureFlag = this.meta?.displayFeatures![feature];\n return !!(column ? !!column.field[feature] && viewDisplayFeatureFlag : viewDisplayFeatureFlag);\n }\n\n /**\n * Returns virtualizer instance for a given virtualizer name.\n * @param name unique id of the virtualizer\n */\n getVirtualizeElement(\n name: string\n ): VirtualizeElement[keyof VirtualizeElement[number]] | undefined {\n return this.virtualizeElements[name];\n }\n\n /**\n * It triggers the autosize of columns.\n * @param reset An optional flag to reset the column widths to its default configured width.\n */\n applyColumnsAutoSize(reset = true) {\n this.#dispatch(actions.actionColumnsAutoSize(this.columns!, this.getDomContainer()!, reset));\n }\n\n /** Returns value of unique key to identify the single selected row */\n getSingleSelectionRowKey() {\n return this.#singleSelectionRowKey;\n }\n\n /** Sets the value of unique key to identify the single selected row */\n setSingleSelectionRowKey(key: string) {\n this.#singleSelectionRowKey = key;\n }\n\n /**\n * Returns the array of visible columns.\n * @param includeActionColumns - include action columns (rowSelect, rowDragDrop, rowActionColumn). Default is `false`.\n * @returns array of visible columns with/without action columns.\n */\n getVisibleColumns(includeActionColumns = false) {\n const visibleIds = new Set(this.state.visibleColumns);\n return (\n this.columns?.filter(\n col =>\n visibleIds.has(col.field.id) &&\n (includeActionColumns || !ACTION_COLUMN_IDS.has(col.field.id))\n ) ?? []\n );\n }\n\n /**\n * Returns the array of visible column IDs.\n * @param includeActionColumns - include action column IDs (rowSelect, rowDragDrop, rowActionColumn). Default is `false`.\n * @returns array of visible column IDs with/without action columns.\n */\n getVisibleColumnIds(includeActionColumns = false): string[] {\n if (includeActionColumns) {\n return this.state.visibleColumns ?? [];\n }\n return this.state.visibleColumns?.filter(id => !ACTION_COLUMN_IDS.has(id)) ?? [];\n }\n\n /**\n * Returns the {@link FieldDef fieldDefs} from {@link meta} for the current view.\n * This reflects the latest state of fieldDefs including any additions or removals made after initialization.\n * @returns array of {@link FieldDef fieldDefs} from {@link meta}.\n */\n getFieldDefs(): FieldDef[] {\n return this.meta.fieldDefs;\n }\n}\n"]}
|
|
@@ -124,6 +124,8 @@ export interface WarningDetail {
|
|
|
124
124
|
}
|
|
125
125
|
/** UI props to be set on the view for A11Y purpose */
|
|
126
126
|
export interface UIProps {
|
|
127
|
+
/** Runtime-only marker for the latest committed column-width update. */
|
|
128
|
+
'data-column-widths-version'?: number;
|
|
127
129
|
/** This attribute conveys the number of columns in the repeating structures to screen readers. */
|
|
128
130
|
'aria-colcount': number;
|
|
129
131
|
/** This attribute conveys the label of the repeating structures to screen readers. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ViewGenerator.types.d.ts","sourceRoot":"","sources":["../../../../src/core/generators/ViewGenerator.types.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ViewGenerator.types.d.ts","sourceRoot":"","sources":["../../../../src/core/generators/ViewGenerator.types.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ViewGenerator.types.js","sourceRoot":"","sources":["../../../../src/core/generators/ViewGenerator.types.ts"],"names":[],"mappings":"","sourcesContent":["import type { OmitStrict } from '@pega/cosmos-react-core';\n\nimport type { State } from '../../../types/State.types';\nimport type { FieldDef } from '../../../types/Meta.types';\nimport type { Formatters } from '../../../types/RsCoreBootArgs.types';\n\nimport type View from './ViewGenerator';\n\n// @ts-check findout which are the mandatory properties in View options.\nexport type ViewConfig = Partial<\n Pick<\n View,\n | 'data'\n | 'columns'\n | 'rows'\n | 'groupHeaders'\n | 'resultsCount'\n | 'hasMoreResults'\n | 'showCount'\n | 'totalItemCount'\n | 'selectedRecordsCount'\n | 'bodyHeight'\n | 'bodyMaxHeight'\n | 'rowHeight'\n | 'rowHeightClass'\n | 'isFilterApplied'\n | 'isLoading'\n | 'freezeLine'\n | 'state'\n | 'domContainer'\n | 'scrollerNode'\n | 'itemElement'\n | 'virtualizeElements'\n | 'debugInfo'\n | 'requiredDef'\n | 'hierarchicalGroupEnabled'\n | 'confirmationActionDetails'\n | 'externalStateKeys'\n | 'isCountUpdateRequired'\n | 'countGeneratedInternally'\n | 'isInstantRender'\n | 'viewHeight'\n | 'refreshNotification'\n | 'announceCount'\n | 'enableGlobalSearch'\n | 'warningMessages'\n | 'template'\n >\n> &\n Pick<View, 'meta'> & { singleSelectionRowKey?: string };\nexport type ViewContext = {\n /** Returns the {@link View.meta meta} */\n getMeta: () => View['meta'];\n /** Returns the {@link View.state state} */\n getState: () => View['state'];\n /** Returns the {@link View.columns columns} */\n getColumns: () => View['columns'];\n /** Returns the {@link View.getRenderingEnginePropsById getRenderingEnginePropsById} */\n getRenderingEnginePropsById: View['getRenderingEnginePropsById'];\n /** Returns the {@link View.selectedRecordsCount selectedRecordsCount} */\n selectedRecordsCount: View['selectedRecordsCount'];\n /** Returns the {@link View.resultsCount resultsCount} */\n resultsCount: View['resultsCount'];\n /** Returns the {@link View.hasMoreResults hasMoreResults} */\n hasMoreResults: View['hasMoreResults'];\n /** Returns the {@link View.requiredDef requiredDef} */\n getRequiredDef: () => View['requiredDef'];\n /** Returns the {@link View.getRowDensity getRowDensity} */\n getRowDensity: View['getRowDensity'];\n /** Returns the {@link View.getVisibleColumns getVisibleColumns} */\n getVisibleColumns: View['getVisibleColumns'];\n /** Returns the {@link View.template template} */\n template: View['template'];\n /** Fetches the distinct values for a given field — see {@link View.getUniqueValues}. */\n getUniqueValues: View['getUniqueValues'];\n};\n\n/** Interface exposed for confirmation dialogue */\nexport interface ConfirmationActionDetails {\n /** Labels for the confirmation dialogue */\n labels: {\n /** Header of the confirmation dialogue pop up */\n heading: string;\n\n /** Description of the confirmation dialogue pop up */\n description: string;\n\n /** Label of the submit button inside confirmation dialogue pop up */\n submitButtonLabel: string;\n\n /** Label of the cancel button inside confirmation dialogue pop up */\n cancelButtonLabel: string;\n };\n\n /** Boolean to toggle the show/visibility */\n showConfirmationAction: boolean;\n\n /** Function to be executed upon submission of the concerned modal */\n onSubmit: (value?: any) => void;\n\n /** Function to be executed upon cancellation of the concerned modal */\n onCancel: (reason?: any) => void;\n}\n\n/** Interface for displaying API stats on the view */\nexport interface DebugInfo {\n /** Class name of the data page */\n className: string;\n\n /** Name of the data page */\n dataPage: string;\n\n /** Source of the data page */\n dataSource?: string;\n\n /** Unique identifier for the insight */\n insightId?: string;\n\n /** Time taken by the API */\n timeTaken?: string;\n}\n\n/** Style interface for freezeline */\nexport interface FreezeLine {\n styles: {\n left: string;\n };\n}\n\n/** An interface used for group headers, consisting of grouping and hierarchical grouping properties */\nexport interface GroupHeader {\n /** Applied aggregation to be displayed in group header */\n aggregation: { [key: FieldDef['name']]: { [key: string]: number } };\n\n /** Count to be displayed in group header */\n count: number;\n\n /** Data */\n data: object;\n\n /** End index of the rows in a particular group */\n endIndex: number;\n\n /** group-key: Computed using getGroupKey utility */\n groupBy: string;\n\n /** String array denoting hierarchy */\n hierarchy: string[];\n\n /** Hierarchical grouping info object */\n info: object;\n\n /** Indicates expanded state */\n isExpanded: boolean;\n\n /** Indicates if its hierarchical grouping */\n isHierarchical: boolean;\n\n /** Indicates if it is a leaf node. */\n isLeafNode: boolean;\n\n /** Indicates visibility */\n isVisible: boolean;\n\n /** Label of the group header to be displayed on UI */\n label: string;\n\n /** Level denoting the nesting level of a group header */\n level: number;\n\n /** Name attribute on a group header */\n name: string;\n\n /** Boolean to toggle displaying the hierarchical footer */\n showHierarchicalFooter: boolean;\n\n /** End index of the rows in a particular group */\n startIndex: number;\n}\n\nexport interface RequiredDefinition {\n required: boolean;\n validatemessage: string;\n}\n\n/**\n * Warning detail structure from DX API responses.\n * Contains message information that can be localized and displayed to users.\n */\nexport interface WarningDetail {\n /** Localized Message */\n message?: string;\n}\n\n/** UI props to be set on the view for A11Y purpose */\nexport interface UIProps {\n /** This attribute conveys the number of columns in the repeating structures to screen readers. */\n 'aria-colcount': number;\n\n /** This attribute conveys the label of the repeating structures to screen readers. */\n 'aria-label': string;\n\n /** This attribute conveys the number of rows in the repeating structures to screen readers. */\n 'aria-rowcount': number;\n\n /** HTML role attribute for the view.\n * @default 'grid'\n */\n role: string;\n}\n\nexport type ViewState = OmitStrict<\n State,\n | 'groupFilters'\n | 'forceUpdateFeatures'\n | 'template'\n | 'presetId'\n | 'version'\n | 'renderFormatter'\n | 'hierarchicalGroup'\n> & { searchText?: string };\n\n/** Personalization information object */\ninterface PersonalizationInfo {\n /** Coordinates of current row index. */\n existingItemBoundingBox: DOMRect;\n\n /** Common visible item in view before and after paint (previous and next paint) */\n currentRowIndex: number;\n\n /** Possible index on view top */\n topRowIndex: number;\n\n /** Buffer coordinates while pagination. */\n bufferOldCords: DOMRect;\n\n /** Buffer coordinates while pagination is in progress and user scroll. */\n bufferNewCords: DOMRect;\n\n /** View object containing start index and end index */\n view: {\n startIndex: number;\n endIndex: number;\n };\n}\n\n/** Interface structure for virtualizer instance */\ninterface VirtualizeInstance {\n /** DOM element for body container */\n bContainer: HTMLElement;\n\n /** Multiplier to be used when calculating the buffer rows to be loaded, bufferRows = bufferMultiplier * totalrows */\n bufferMultiplier: number;\n\n /** Number denoting the row height */\n itemHeight: number;\n\n /** DOM element for parent container */\n pContainer: HTMLElement;\n\n /** Virtualizer specific information */\n pInfo: PersonalizationInfo;\n\n /** DOM element for row container */\n rContainer: HTMLElement;\n}\n\n/**\n * Attributes of the virtualizer being used\n */\nexport interface RootVirtualizer {\n /**\n * Returns the parent container pContainer set on the virtualizer\n * @returns div with id pContainer\n */\n getParentContainer: () => HTMLElement;\n\n /** Unique identifier of the virtualizer */\n id: string;\n\n /** Function to execute to scroll the virtualizer to top */\n scrollToTop: () => void;\n\n /** Additional information set on the virtualizer instance */\n vi: VirtualizeInstance;\n}\n\nexport interface VirtualizeElement {\n [key: string]: RootVirtualizer;\n}\n\nexport type FormatterFunction = Formatters[keyof Formatters];\n\nexport interface RefreshNotification {\n /** A unique identifier for a refresh notification published by consumer of RS. */\n id: number;\n /** The message that needs to be displayed as refresh notification */\n message: string;\n /** The label for the refresh action button. */\n refreshActionLabel: string;\n}\n"]}
|
|
1
|
+
{"version":3,"file":"ViewGenerator.types.js","sourceRoot":"","sources":["../../../../src/core/generators/ViewGenerator.types.ts"],"names":[],"mappings":"","sourcesContent":["import type { OmitStrict } from '@pega/cosmos-react-core';\n\nimport type { State } from '../../../types/State.types';\nimport type { FieldDef } from '../../../types/Meta.types';\nimport type { Formatters } from '../../../types/RsCoreBootArgs.types';\n\nimport type View from './ViewGenerator';\n\n// @ts-check findout which are the mandatory properties in View options.\nexport type ViewConfig = Partial<\n Pick<\n View,\n | 'data'\n | 'columns'\n | 'rows'\n | 'groupHeaders'\n | 'resultsCount'\n | 'hasMoreResults'\n | 'showCount'\n | 'totalItemCount'\n | 'selectedRecordsCount'\n | 'bodyHeight'\n | 'bodyMaxHeight'\n | 'rowHeight'\n | 'rowHeightClass'\n | 'isFilterApplied'\n | 'isLoading'\n | 'freezeLine'\n | 'state'\n | 'domContainer'\n | 'scrollerNode'\n | 'itemElement'\n | 'virtualizeElements'\n | 'debugInfo'\n | 'requiredDef'\n | 'hierarchicalGroupEnabled'\n | 'confirmationActionDetails'\n | 'externalStateKeys'\n | 'isCountUpdateRequired'\n | 'countGeneratedInternally'\n | 'isInstantRender'\n | 'viewHeight'\n | 'refreshNotification'\n | 'announceCount'\n | 'enableGlobalSearch'\n | 'warningMessages'\n | 'template'\n >\n> &\n Pick<View, 'meta'> & { singleSelectionRowKey?: string };\nexport type ViewContext = {\n /** Returns the {@link View.meta meta} */\n getMeta: () => View['meta'];\n /** Returns the {@link View.state state} */\n getState: () => View['state'];\n /** Returns the {@link View.columns columns} */\n getColumns: () => View['columns'];\n /** Returns the {@link View.getRenderingEnginePropsById getRenderingEnginePropsById} */\n getRenderingEnginePropsById: View['getRenderingEnginePropsById'];\n /** Returns the {@link View.selectedRecordsCount selectedRecordsCount} */\n selectedRecordsCount: View['selectedRecordsCount'];\n /** Returns the {@link View.resultsCount resultsCount} */\n resultsCount: View['resultsCount'];\n /** Returns the {@link View.hasMoreResults hasMoreResults} */\n hasMoreResults: View['hasMoreResults'];\n /** Returns the {@link View.requiredDef requiredDef} */\n getRequiredDef: () => View['requiredDef'];\n /** Returns the {@link View.getRowDensity getRowDensity} */\n getRowDensity: View['getRowDensity'];\n /** Returns the {@link View.getVisibleColumns getVisibleColumns} */\n getVisibleColumns: View['getVisibleColumns'];\n /** Returns the {@link View.template template} */\n template: View['template'];\n /** Fetches the distinct values for a given field — see {@link View.getUniqueValues}. */\n getUniqueValues: View['getUniqueValues'];\n};\n\n/** Interface exposed for confirmation dialogue */\nexport interface ConfirmationActionDetails {\n /** Labels for the confirmation dialogue */\n labels: {\n /** Header of the confirmation dialogue pop up */\n heading: string;\n\n /** Description of the confirmation dialogue pop up */\n description: string;\n\n /** Label of the submit button inside confirmation dialogue pop up */\n submitButtonLabel: string;\n\n /** Label of the cancel button inside confirmation dialogue pop up */\n cancelButtonLabel: string;\n };\n\n /** Boolean to toggle the show/visibility */\n showConfirmationAction: boolean;\n\n /** Function to be executed upon submission of the concerned modal */\n onSubmit: (value?: any) => void;\n\n /** Function to be executed upon cancellation of the concerned modal */\n onCancel: (reason?: any) => void;\n}\n\n/** Interface for displaying API stats on the view */\nexport interface DebugInfo {\n /** Class name of the data page */\n className: string;\n\n /** Name of the data page */\n dataPage: string;\n\n /** Source of the data page */\n dataSource?: string;\n\n /** Unique identifier for the insight */\n insightId?: string;\n\n /** Time taken by the API */\n timeTaken?: string;\n}\n\n/** Style interface for freezeline */\nexport interface FreezeLine {\n styles: {\n left: string;\n };\n}\n\n/** An interface used for group headers, consisting of grouping and hierarchical grouping properties */\nexport interface GroupHeader {\n /** Applied aggregation to be displayed in group header */\n aggregation: { [key: FieldDef['name']]: { [key: string]: number } };\n\n /** Count to be displayed in group header */\n count: number;\n\n /** Data */\n data: object;\n\n /** End index of the rows in a particular group */\n endIndex: number;\n\n /** group-key: Computed using getGroupKey utility */\n groupBy: string;\n\n /** String array denoting hierarchy */\n hierarchy: string[];\n\n /** Hierarchical grouping info object */\n info: object;\n\n /** Indicates expanded state */\n isExpanded: boolean;\n\n /** Indicates if its hierarchical grouping */\n isHierarchical: boolean;\n\n /** Indicates if it is a leaf node. */\n isLeafNode: boolean;\n\n /** Indicates visibility */\n isVisible: boolean;\n\n /** Label of the group header to be displayed on UI */\n label: string;\n\n /** Level denoting the nesting level of a group header */\n level: number;\n\n /** Name attribute on a group header */\n name: string;\n\n /** Boolean to toggle displaying the hierarchical footer */\n showHierarchicalFooter: boolean;\n\n /** End index of the rows in a particular group */\n startIndex: number;\n}\n\nexport interface RequiredDefinition {\n required: boolean;\n validatemessage: string;\n}\n\n/**\n * Warning detail structure from DX API responses.\n * Contains message information that can be localized and displayed to users.\n */\nexport interface WarningDetail {\n /** Localized Message */\n message?: string;\n}\n\n/** UI props to be set on the view for A11Y purpose */\nexport interface UIProps {\n /** Runtime-only marker for the latest committed column-width update. */\n 'data-column-widths-version'?: number;\n\n /** This attribute conveys the number of columns in the repeating structures to screen readers. */\n 'aria-colcount': number;\n\n /** This attribute conveys the label of the repeating structures to screen readers. */\n 'aria-label': string;\n\n /** This attribute conveys the number of rows in the repeating structures to screen readers. */\n 'aria-rowcount': number;\n\n /** HTML role attribute for the view.\n * @default 'grid'\n */\n role: string;\n}\n\nexport type ViewState = OmitStrict<\n State,\n | 'groupFilters'\n | 'forceUpdateFeatures'\n | 'template'\n | 'presetId'\n | 'version'\n | 'renderFormatter'\n | 'hierarchicalGroup'\n> & { searchText?: string };\n\n/** Personalization information object */\ninterface PersonalizationInfo {\n /** Coordinates of current row index. */\n existingItemBoundingBox: DOMRect;\n\n /** Common visible item in view before and after paint (previous and next paint) */\n currentRowIndex: number;\n\n /** Possible index on view top */\n topRowIndex: number;\n\n /** Buffer coordinates while pagination. */\n bufferOldCords: DOMRect;\n\n /** Buffer coordinates while pagination is in progress and user scroll. */\n bufferNewCords: DOMRect;\n\n /** View object containing start index and end index */\n view: {\n startIndex: number;\n endIndex: number;\n };\n}\n\n/** Interface structure for virtualizer instance */\ninterface VirtualizeInstance {\n /** DOM element for body container */\n bContainer: HTMLElement;\n\n /** Multiplier to be used when calculating the buffer rows to be loaded, bufferRows = bufferMultiplier * totalrows */\n bufferMultiplier: number;\n\n /** Number denoting the row height */\n itemHeight: number;\n\n /** DOM element for parent container */\n pContainer: HTMLElement;\n\n /** Virtualizer specific information */\n pInfo: PersonalizationInfo;\n\n /** DOM element for row container */\n rContainer: HTMLElement;\n}\n\n/**\n * Attributes of the virtualizer being used\n */\nexport interface RootVirtualizer {\n /**\n * Returns the parent container pContainer set on the virtualizer\n * @returns div with id pContainer\n */\n getParentContainer: () => HTMLElement;\n\n /** Unique identifier of the virtualizer */\n id: string;\n\n /** Function to execute to scroll the virtualizer to top */\n scrollToTop: () => void;\n\n /** Additional information set on the virtualizer instance */\n vi: VirtualizeInstance;\n}\n\nexport interface VirtualizeElement {\n [key: string]: RootVirtualizer;\n}\n\nexport type FormatterFunction = Formatters[keyof Formatters];\n\nexport interface RefreshNotification {\n /** A unique identifier for a refresh notification published by consumer of RS. */\n id: number;\n /** The message that needs to be displayed as refresh notification */\n message: string;\n /** The label for the refresh action button. */\n refreshActionLabel: string;\n}\n"]}
|
|
@@ -6,6 +6,7 @@ declare const _default: (state: State, action: Action) => State | {
|
|
|
6
6
|
columnWidths?: {
|
|
7
7
|
[key: string]: number;
|
|
8
8
|
};
|
|
9
|
+
columnWidthsVersion?: number;
|
|
9
10
|
freezeColumns?: string[];
|
|
10
11
|
hiddenColumns?: string[];
|
|
11
12
|
selectedHeightOption?: typeof import("../../..").ROW_DENSITY[keyof typeof import("../../..").ROW_DENSITY];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"error.d.ts","sourceRoot":"","sources":["../../../../src/core/reducers/error.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,4BAA4B,CAAC;AAExD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAC;yBAEvC,OAAO,KAAK,EAAE,QAAQ,MAAM
|
|
1
|
+
{"version":3,"file":"error.d.ts","sourceRoot":"","sources":["../../../../src/core/reducers/error.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,4BAA4B,CAAC;AAExD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAC;yBAEvC,OAAO,KAAK,EAAE,QAAQ,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;4BAmBg0U,CAAC;+BAAkI,CAAC;0BAAmJ,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAnBpoV,wBAkBE"}
|
|
@@ -7,6 +7,7 @@ export default function initializeReducers({ getRsProps }: RsInternal): (state:
|
|
|
7
7
|
columnWidths?: {
|
|
8
8
|
[key: string]: number;
|
|
9
9
|
};
|
|
10
|
+
columnWidthsVersion?: number;
|
|
10
11
|
freezeColumns?: string[];
|
|
11
12
|
hiddenColumns?: string[];
|
|
12
13
|
selectedHeightOption?: typeof import("../../..").ROW_DENSITY[keyof typeof import("../../..").ROW_DENSITY];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/core/reducers/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,UAAU,MAAM,eAAe,CAAC;AAC5C,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAC;AACvD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,4BAA4B,CAAC;AAkExD,MAAM,CAAC,OAAO,UAAU,kBAAkB,CAAC,EAAE,UAAU,EAAE,EAAE,UAAU,IAC3D,OAAO,KAAK,EAAE,QAAQ,MAAM,EAAE,YAAY,UAAU
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/core/reducers/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,UAAU,MAAM,eAAe,CAAC;AAC5C,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAC;AACvD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,4BAA4B,CAAC;AAkExD,MAAM,CAAC,OAAO,UAAU,kBAAkB,CAAC,EAAE,UAAU,EAAE,EAAE,UAAU,IAC3D,OAAO,KAAK,EAAE,QAAQ,MAAM,EAAE,YAAY,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;4BAem6Q,CAAC;+BAAkI,CAAC;0BAAmJ,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EADxvR"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resize.d.ts","sourceRoot":"","sources":["../../../../src/core/reducers/resize.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,4BAA4B,CAAC;AAExD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAC;yBAEvC,OAAO,KAAK,EAAE,QAAQ,MAAM;AAA5C,
|
|
1
|
+
{"version":3,"file":"resize.d.ts","sourceRoot":"","sources":["../../../../src/core/reducers/resize.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,4BAA4B,CAAC;AAExD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAC;yBAEvC,OAAO,KAAK,EAAE,QAAQ,MAAM;AAA5C,wBAkCE"}
|
|
@@ -14,7 +14,8 @@ export default (state, action) => {
|
|
|
14
14
|
const { data = {} } = payload;
|
|
15
15
|
return {
|
|
16
16
|
...state,
|
|
17
|
-
columnWidths: { ...state.columnWidths, ...data }
|
|
17
|
+
columnWidths: { ...state.columnWidths, ...data },
|
|
18
|
+
columnWidthsVersion: (state.columnWidthsVersion ?? 0) + 1
|
|
18
19
|
};
|
|
19
20
|
}
|
|
20
21
|
case ActionTypes.UPDATE_TABLE_HEIGHT: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resize.js","sourceRoot":"","sources":["../../../../src/core/reducers/resize.ts"],"names":[],"mappings":"AACA,OAAO,WAAW,MAAM,4BAA4B,CAAC;AAGrD,eAAe,CAAC,KAAY,EAAE,MAAc,EAAE,EAAE;IAC9C,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,CAAC;IAExB,QAAQ,IAAI,EAAE,CAAC;QACb,KAAK,WAAW,CAAC,iBAAiB,CAAC,CAAC,CAAC;YACnC,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,CAAC;YAC3B,OAAO;gBACL,GAAG,KAAK;gBACR,oBAAoB,EAAE,OAAO;aAC9B,CAAC;QACJ,CAAC;QAED,KAAK,WAAW,CAAC,aAAa,CAAC,CAAC,CAAC;YAC/B,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,CAAC;YAC3B,MAAM,EAAE,IAAI,GAAG,EAAE,EAAE,GAAG,OAAO,CAAC;YAC9B,OAAO;gBACL,GAAG,KAAK;gBACR,YAAY,EAAE,EAAE,GAAG,KAAK,CAAC,YAAY,EAAE,GAAG,IAAI,EAAE;
|
|
1
|
+
{"version":3,"file":"resize.js","sourceRoot":"","sources":["../../../../src/core/reducers/resize.ts"],"names":[],"mappings":"AACA,OAAO,WAAW,MAAM,4BAA4B,CAAC;AAGrD,eAAe,CAAC,KAAY,EAAE,MAAc,EAAE,EAAE;IAC9C,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,CAAC;IAExB,QAAQ,IAAI,EAAE,CAAC;QACb,KAAK,WAAW,CAAC,iBAAiB,CAAC,CAAC,CAAC;YACnC,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,CAAC;YAC3B,OAAO;gBACL,GAAG,KAAK;gBACR,oBAAoB,EAAE,OAAO;aAC9B,CAAC;QACJ,CAAC;QAED,KAAK,WAAW,CAAC,aAAa,CAAC,CAAC,CAAC;YAC/B,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,CAAC;YAC3B,MAAM,EAAE,IAAI,GAAG,EAAE,EAAE,GAAG,OAAO,CAAC;YAC9B,OAAO;gBACL,GAAG,KAAK;gBACR,YAAY,EAAE,EAAE,GAAG,KAAK,CAAC,YAAY,EAAE,GAAG,IAAI,EAAE;gBAChD,mBAAmB,EAAE,CAAC,KAAK,CAAC,mBAAmB,IAAI,CAAC,CAAC,GAAG,CAAC;aAC1D,CAAC;QACJ,CAAC;QAED,KAAK,WAAW,CAAC,mBAAmB,CAAC,CAAC,CAAC;YACrC,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,CAAC;YAC3B,OAAO;gBACL,GAAG,KAAK;gBACR,WAAW,EAAE,OAAO;aACrB,CAAC;QACJ,CAAC;QAED,OAAO,CAAC,CAAC,CAAC;YACR,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;AACH,CAAC,CAAC","sourcesContent":["import type { State } from '../../../types/State.types';\nimport ActionTypes from '../actions/actionConstants';\nimport type { Action } from '../actions/actions.types';\n\nexport default (state: State, action: Action) => {\n const { type } = action;\n\n switch (type) {\n case ActionTypes.ROW_HEIGHT_CHANGE: {\n const { payload } = action;\n return {\n ...state,\n selectedHeightOption: payload\n };\n }\n\n case ActionTypes.COLUMN_RESIZE: {\n const { payload } = action;\n const { data = {} } = payload;\n return {\n ...state,\n columnWidths: { ...state.columnWidths, ...data },\n columnWidthsVersion: (state.columnWidthsVersion ?? 0) + 1\n };\n }\n\n case ActionTypes.UPDATE_TABLE_HEIGHT: {\n const { payload } = action;\n return {\n ...state,\n tableHeight: payload\n };\n }\n\n default: {\n return state;\n }\n }\n};\n"]}
|
|
@@ -249,6 +249,8 @@ export interface State {
|
|
|
249
249
|
columnWidths?: {
|
|
250
250
|
[key: string]: number;
|
|
251
251
|
};
|
|
252
|
+
/** Runtime-only version incremented when column widths are committed. */
|
|
253
|
+
columnWidthsVersion?: number;
|
|
252
254
|
/** Current frozen columns represented by array of fieldDef id */
|
|
253
255
|
freezeColumns?: string[];
|
|
254
256
|
/** Current hidden columns represented by array of fieldDef id */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"State.types.d.ts","sourceRoot":"","sources":["../../types/State.types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACzE,OAAO,KAAK,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,sCAAsC,CAAC;AACrF,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,iFAAiF,CAAC;AAEpH,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,6CAA6C,CAAC;AACxF,OAAO,KAAK,EAAE,OAAO,EAAE,aAAa,EAAE,MAAM,2CAA2C,CAAC;AAIxF,OAAO,KAAK,EACV,WAAW,EACX,aAAa,EACb,gBAAgB,EAEhB,QAAQ,EACR,IAAI,EAGJ,sBAAsB,EACvB,MAAM,cAAc,CAAC;AAGtB,sCAAsC;AACtC,KAAK,SAAS,GACV;IACE;;;OAGG;IACH,IAAI,EAAE,WAAW,CAAC;IAClB,yBAAyB;IACzB,KAAK,EAAE,MAAM,CAAC;CACf,GACD;IACE,2CAA2C;IAC3C,IAAI,EAAE,SAAS,CAAC;CACjB,CAAC;AAEN,oCAAoC;AACpC,MAAM,MAAM,eAAe,GACvB,oBAAoB,GACpB,oBAAoB,GACpB,cAAc,GACd,cAAc,CAAC;AAEnB,wDAAwD;AACxD,UAAU,gBAAgB,CAAC,CAAC,SAAS,MAAM,GAAG,MAAM;IAClD,GAAG,EACC;QACE,KAAK,EAAE,CAAC,CAAC;KACV,GACD;QACE,KAAK,EAAE,CAAC,CAAC;QACT,GAAG,EAAE,CAAC,CAAC;QACP,UAAU,EAAE,eAAe,CAAC;KAC7B,CAAC;CACP;AAED,iDAAiD;AACjD,KAAK,0BAA0B,CAAC,CAAC,SAAS,MAAM,GAAG,MAAM,IAAI,UAAU,CAAC,aAAa,EAAE,KAAK,CAAC,GAC3F,gBAAgB,CAAC,CAAC,CAAC,CAAC;AAEtB,wBAAwB;AACxB,MAAM,MAAM,eAAe,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,CAAC;AAC5D,qCAAqC;AACrC,MAAM,MAAM,WAAW,GAAG;IACxB,gBAAgB;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,uBAAuB;IACvB,IAAI,EAAE,eAAe,CAAC;CACvB,CAAC;AAEF,4BAA4B;AAC5B,MAAM,MAAM,eAAe,GAAG,eAAe,GAAG,gBAAgB,CAAC;AAEjE,qDAAqD;AACrD,MAAM,MAAM,YAAY,GAAG;IACzB,2BAA2B;IAC3B,IAAI,EAAE,eAAe,CAAC;IACtB,0FAA0F;IAC1F,EAAE,EAAE,MAAM,CAAC;IACX,gCAAgC;IAChC,MAAM,EAAE;QACN,kBAAkB;QAClB,KAAK,EAAE,MAAM,CAAC;QACd,sBAAsB;QACtB,SAAS,EAAE,aAAa,CAAC;KAC1B,EAAE,CAAC;IACJ,4BAA4B;IAC5B,SAAS,EAAE,SAAS,CAAC;CACtB,CAAC;AAEF,sDAAsD;AACtD,MAAM,MAAM,aAAa,GAAG;IAC1B,2BAA2B;IAC3B,IAAI,EAAE,gBAAgB,CAAC;IACvB,0FAA0F;IAC1F,EAAE,EAAE,MAAM,CAAC;IACX,gCAAgC;IAChC,MAAM,EAAE;QACN,kBAAkB;QAClB,KAAK,EAAE,MAAM,CAAC;QACd,sBAAsB;QACtB,SAAS,EAAE,0BAA0B,CAAC,MAAM,CAAC,CAAC;KAC/C,EAAE,CAAC;IACJ,4BAA4B;IAC5B,SAAS,EAAE,SAAS,CAAC;CACtB,CAAC;AAEF,yDAAyD;AACzD,MAAM,MAAM,gBAAgB,GAAG;IAC7B,2BAA2B;IAC3B,IAAI,EAAE,mBAAmB,CAAC;IAC1B,0FAA0F;IAC1F,EAAE,EAAE,MAAM,CAAC;IACX,eAAe;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,iBAAiB;IACjB,UAAU,EAAE,oBAAoB,GAAG,oBAAoB,CAAC;CACzD,CAAC;AAEF,eAAO,MAAM,aAAa;;;CAGhB,CAAC;AAEX,eAAO,MAAM,kBAAkB;IAE7B,8DAA8D;;;;CAEtD,CAAC;AAEX,MAAM,MAAM,wBAAwB,GAAG;IACrC,qFAAqF;IACrF,EAAE,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC;IACnB,8GAA8G;IAC9G,YAAY,CAAC,EAAE,aAAa,CAAC,YAAY,EAAE,SAAS,CAAC,CAAC;CACvD,CAAC;AAEF,MAAM,MAAM,0BAA0B,GAAG;IACvC,qFAAqF;IACrF,EAAE,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC;IACnB,6EAA6E;IAC7E,WAAW,CAAC,EAAE,aAAa,CAAC,eAAe,EAAE,KAAK,CAAC,CAAC;CACrD,CAAC;AAEF,6CAA6C;AAC7C,MAAM,MAAM,oBAAoB,GAC5B;IACE,qFAAqF;IACrF,EAAE,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC;CACpB,GACD,wBAAwB,GACxB,0BAA0B,CAAC;AAE/B,yCAAyC;AACzC,MAAM,WAAW,KAAK;IACpB,gBAAgB;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,+CAA+C;IAC/C,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5B,uDAAuD;IACvD,cAAc,CAAC,EAAE,YAAY,GAAG,aAAa,GAAG,gBAAgB,CAAC;IACjE;;;;OAIG;IACH,KAAK,EAAE,CAAC,OAAO,kBAAkB,CAAC,CAAC,MAAM,OAAO,kBAAkB,CAAC,CAAC;IACpE,oEAAoE;IACpE,KAAK,EAAE,MAAM,CAAC;IACd,qDAAqD;IACrD,gBAAgB,CAAC,EAAE,oBAAoB,EAAE,CAAC;CAC3C;AAED,wCAAwC;AACxC,MAAM,WAAW,IAAI;IACnB,gBAAgB;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,iBAAiB;IACjB,KAAK,EAAE,CAAC,OAAO,aAAa,CAAC,CAAC,MAAM,OAAO,aAAa,CAAC,CAAC;IAC1D,kDAAkD;IAClD,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,wCAAwC;AACxC,MAAM,WAAW,WAAW;IAC1B,sCAAsC;IACtC,SAAS,EAAE,MAAM,CAAC;IAClB,oCAAoC;IACpC,OAAO,EAAE,MAAM,CAAC;IAChB;;;;;;OAMG;IACH,OAAO,EAAE;QACP,CAAC,OAAO,EAAE,MAAM,GAAG,aAAa,CAAC;KAClC,CAAC;CACH;AAED,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,MAAM,CAAC;IACb,oBAAoB,EAAE,KAAK,CAAC;IAC5B,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB;AACD,MAAM,WAAW,eAAe;IAC9B,mBAAmB,EAAE;QACnB,CAAC,kBAAkB,EAAE,MAAM,GAAG,mBAAmB,CAAC;KACnD,CAAC;IACF,sBAAsB,EAAE,MAAM,CAAC;IAC/B,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,8BAA8B,CAAC,EAAE,MAAM,CAAC;IACxC,0BAA0B,CAAC,EAAE,mBAAmB,CAAC;CAClD;AACD,MAAM,WAAW,KAAM,SAAQ,WAAW;IACxC,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,QAAQ,EAAE,KAAK,EAAE,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;CACtB;AACD,iHAAiH;AACjH,UAAU,cAAc;IACtB,QAAQ,CAAC,EAAE,KAAK,EAAE,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AACD,MAAM,MAAM,WAAW,GAAG;IACxB;;;;;;;OAOG;IACH,UAAU,EAAE,CAAC,MAAM,GAAG,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC;IAClC,iFAAiF;IACjF,EAAE,EAAE,MAAM,CAAC;IACX,+BAA+B;IAC/B,KAAK,EAAE,MAAM,CAAC;IACd,mGAAmG;IACnG,eAAe,EAAE,MAAM,CAAC;CACzB,GAAG,cAAc,CAAC;AAEnB,MAAM,WAAW,SAAS;IACxB,wCAAwC;IACxC,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM,GAAG;QAC/B,gCAAgC;QAChC,OAAO,EAAE,MAAM,CAAC;KACjB,CAAC;CACH;AACD,MAAM,WAAW,MAAM;IACrB,iCAAiC;IACjC,UAAU,EAAE,SAAS,CAAC;CACvB;AAED,MAAM,MAAM,oBAAoB,GAAG;KAChC,UAAU,IAAI,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC,CAAC,EAAE,OAAO;CAC3D,CAAC;AAEF,MAAM,WAAW,YAAY;IAC3B,OAAO,EAAE,MAAM,CAAC;IAChB,EAAE,CAAC,EAAE,MAAM,CAAC;CACb;AAED;;;;;;;;;;GAUG;AACH,MAAM,WAAW,WAAW;IAC1B,CAAC,OAAO,EAAE,MAAM,GAAG,CAAC,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC;CAC3D;AAED,MAAM,WAAW,qBAAqB;IACpC,CAAC,GAAG,EAAE,MAAM,GAAG;QAAE,IAAI,EAAE,OAAO,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,OAAO,CAAA;KAAE,CAAC;CACrE;AAED,MAAM,WAAW,KAAK;IACpB,2FAA2F;IAC3F,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,8FAA8F;IAC9F,YAAY,CAAC,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,CAAC;IACzC,iEAAiE;IACjE,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;IACzB,iEAAiE;IACjE,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;IACzB,qEAAqE;IACrE,oBAAoB,CAAC,EAAE,CAAC,OAAO,WAAW,CAAC,CAAC,MAAM,OAAO,WAAW,CAAC,CAAC;IACtE,oDAAoD;IACpD,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B,0DAA0D;IAC1D,gBAAgB,CAAC,EAAE,SAAS,CAAC;IAC7B,gCAAgC;IAChC,eAAe,CAAC,EAAE,WAAW,EAAE,CAAC;IAChC,6BAA6B;IAC7B,MAAM,CAAC,EAAE,KAAK,EAAE,CAAC;IACjB;;;;;;;OAOG;IACH,eAAe,CAAC,EAAE,KAAK,EAAE,CAAC;IAC1B,4BAA4B;IAC5B,YAAY,CAAC,EAAE,IAAI,EAAE,CAAC;IACtB,2BAA2B;IAC3B,MAAM,CAAC,EAAE;QACP,kBAAkB;QAClB,KAAK,EAAE,MAAM,CAAC;QACd;;WAEG;QACH,MAAM,EAAE,MAAM,EAAE,CAAC;KAClB,CAAC;IACF,oDAAoD;IACpD,YAAY,CAAC,EAAE,WAAW,EAAE,CAAC;IAC7B,iDAAiD;IACjD,iBAAiB,CAAC,EAAE;QAClB,CAAC,aAAa,EAAE,MAAM,GAAG;YACvB,UAAU,EAAE,MAAM,CAAC;YACnB,QAAQ,EAAE,MAAM,CAAC;SAClB,CAAC;KACH,CAAC;IACF,8GAA8G;IAC9G,mBAAmB,CAAC,EAAE;QACpB,gEAAgE;QAChE,oBAAoB,CAAC,EAAE,OAAO,CAAC;QAC/B,uFAAuF;QACvF,uBAAuB,CAAC,EAAE,OAAO,CAAC;QAClC,6GAA6G;QAC7G,kBAAkB,CAAC,EAAE,MAAM,CAAC;KAC7B,CAAC;IACF,kGAAkG;IAClG,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IACxB,0DAA0D;IAC1D,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;;;OAIG;IACH,eAAe,CAAC,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;IACnC;;;OAGG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,2BAA2B;IAC3B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,mDAAmD;IACnD,eAAe,CAAC,EAAE,eAAe,CAAC;IAClC,oEAAoE;IACpE,YAAY,CAAC,EAAE,WAAW,EAAE,CAAC;IAC7B;;;OAGG;IACH,aAAa,CAAC,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,CAAC;IAC1C;;;;OAIG;IACH,eAAe,CAAC,EAAE;QAChB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG;YAAE,IAAI,EAAE,MAAM,CAAC;YAAC,MAAM,EAAE,OAAO,CAAA;SAAE,CAAC;KAC3D,CAAC;IACF,uIAAuI;IACvI,WAAW,CAAC,EAAE;QACZ,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAC;KACvB,CAAC;IACF,+BAA+B;IAC/B,iBAAiB,CAAC,EAAE,gBAAgB,CAAC;IACrC,qCAAqC;IACrC,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAE5B,wBAAwB;IACxB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,mFAAmF;IACnF,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B;;;;;;;;OAQG;IACH,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,uEAAuE;IACvE,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,gEAAgE;IAChE,aAAa,CAAC,EAAE,YAAY,EAAE,CAAC;IAC/B,gLAAgL;IAChL,qBAAqB,CAAC,EAAE,qBAAqB,CAAC;IAC9C,yDAAyD;IACzD,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,gDAAgD;IAChD,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,qEAAqE;IACrE,sBAAsB,CAAC,EAAE,OAAO,CAAC;IACjC,kFAAkF;IAClF,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,iGAAiG;IACjG,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,8EAA8E;IAC9E,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;IAC3B,mDAAmD;IACnD,WAAW,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAC9B,yDAAyD;IACzD,UAAU,CAAC,EAAE,oBAAoB,CAAC;IAClC;;;;;;;;;OASG;IACH,uBAAuB,CAAC,EAAE,sBAAsB,EAAE,CAAC;IAEnD,kEAAkE;IAClE,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;CAC3B;AAED,MAAM,WAAW,iBAAkB,SAAQ,IAAI,CAAC,KAAK,EAAE,CAAC,OAAO,oBAAoB,CAAC,CAAC,MAAM,CAAC,CAAC;CAAG"}
|
|
1
|
+
{"version":3,"file":"State.types.d.ts","sourceRoot":"","sources":["../../types/State.types.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"State.types.js","sourceRoot":"","sources":["../../types/State.types.ts"],"names":[],"mappings":"AAyHA,MAAM,CAAC,MAAM,aAAa,GAAG;IAC3B,GAAG,EAAE,KAAK;IACV,IAAI,EAAE,MAAM;CACJ,CAAC;AAEX,MAAM,CAAC,MAAM,kBAAkB,GAAG;IAChC,GAAG,aAAa;IAChB,8DAA8D;IAC9D,MAAM,EAAE,QAAQ;CACR,CAAC","sourcesContent":["import type { ExcludeStrict, OmitStrict } from '@pega/cosmos-react-core';\nimport type { Condition, LeafCondition } from '@pega/cosmos-react-condition-builder';\nimport type { DateFunction } from '@pega/cosmos-react-condition-builder/lib/components/ConditionBuilder/core/types';\n\nimport type { personalizationProps } from '../src/core/reducers/personalizationReducer';\nimport type { RowData, ScalarRowData } from '../src/core/generators/RowGenerator.types';\n\n// eslint-disable-next-line @typescript-eslint/no-unused-vars\nimport type RsCoreBootArgs from './RsCoreBootArgs.types';\nimport type {\n ROW_DENSITY,\n GalleryLayout,\n HierarchicalInfo,\n /* eslint-disable @typescript-eslint/no-unused-vars */\n FieldDef,\n Meta,\n FieldType,\n /* eslint-enable @typescript-eslint/no-unused-vars */\n ConditionalStyleFormat\n} from './Meta.types';\n// eslint-disable-next-line @typescript-eslint/no-unused-vars\nimport type { ApiContext, RsApi } from './ApiContext.types';\n/** Custom functions ungrouped type */\ntype Ungrouped =\n | {\n /**\n * Ungrouped mode\n * 'aggregate' - Aggregate remaining groups as others group\n */\n mode: 'aggregate';\n /** Others group label */\n label: string;\n }\n | {\n /** 'exclude' - Exclude remaining values */\n mode: 'exclude';\n };\n\n/** Boundaries for range grouping */\nexport type RangeBoundaries =\n | 'include-lower-only'\n | 'include-upper-only'\n | 'include-both'\n | 'exclude-both';\n\n/** Rhs type for range grouping to support boundaries */\ninterface RangeGroupingRhs<T extends number | string> {\n rhs:\n | {\n value: T;\n }\n | {\n start: T;\n end: T;\n boundaries: RangeBoundaries;\n };\n}\n\n/** Modified leaf condition for Range grouping */\ntype RangeGroupingLeafCondition<T extends number | string> = OmitStrict<LeafCondition, 'rhs'> &\n RangeGroupingRhs<T>;\n\n/** Aggregation types */\nexport type AggregationType = 'Sum' | 'Min' | 'Max' | 'Avg';\n/** Aggregation state on the Table */\nexport type Aggregation = {\n /** Column ID */\n columnId: string;\n /** Aggregation type */\n type: AggregationType;\n};\n\n/** Custom grouping types */\nexport type CustomFunctions = 'TEXT_GROUPING' | 'RANGE_GROUPING';\n\n/** Custom text grouping details applied on column */\nexport type TextGrouping = {\n /** Custom function name */\n type: 'TEXT_GROUPING';\n /** Randomly generated unique id to distinguish separate custom functions on same field */\n id: string;\n /** Custom groups information */\n groups: {\n /** Group label */\n label: string;\n /** Group condition */\n condition: LeafCondition;\n }[];\n /** Ungrouped information */\n ungrouped: Ungrouped;\n};\n\n/** Custom range grouping details applied on column */\nexport type RangeGrouping = {\n /** Custom function name */\n type: 'RANGE_GROUPING';\n /** Randomly generated unique id to distinguish separate custom functions on same field */\n id: string;\n /** Custom groups information */\n groups: {\n /** Group label */\n label: string;\n /** Group condition */\n condition: RangeGroupingLeafCondition<number>;\n }[];\n /** Ungrouped information */\n ungrouped: Ungrouped;\n};\n\n/** Custom interval grouping details applied on column */\nexport type IntervalGrouping = {\n /** Custom function name */\n type: 'INTERVAL_GROUPING';\n /** Randomly generated unique id to distinguish separate custom functions on same field */\n id: string;\n /** interval */\n interval: number;\n /** boundaries */\n boundaries: 'include-lower-only' | 'include-upper-only';\n};\n\nexport const SortDirection = {\n ASC: 'asc',\n DESC: 'desc'\n} as const;\n\nexport const GroupSortDirection = {\n ...SortDirection,\n /** For custom grouping, the group order can be custom too. */\n CUSTOM: 'custom'\n} as const;\n\nexport type DateGroupAdditionalField = {\n /** Additional field id reference as mentioned in {@link FieldDef.id fieldDef id}. */\n id: FieldDef['id'];\n /** Optional date function for {@link FieldType.DATE 'date'}/ {@link FieldType.DATE_TIME 'dateTime'} field. */\n dateFunction?: ExcludeStrict<DateFunction, 'SECONDS'>;\n};\n\nexport type NumberGroupAdditionalField = {\n /** Additional field id reference as mentioned in {@link FieldDef.id fieldDef id}. */\n id: FieldDef['id'];\n /** Optional aggregation for {@link FieldType.NUMBER 'number'} type field. */\n aggregation?: ExcludeStrict<AggregationType, 'Avg'>;\n};\n\n/** Additional fields data for Group info. */\nexport type GroupAdditionalField =\n | {\n /** Additional field id reference as mentioned in {@link FieldDef.id fieldDef id}. */\n id: FieldDef['id'];\n }\n | DateGroupAdditionalField\n | NumberGroupAdditionalField;\n\n/** Group configuration on Table state */\nexport interface Group {\n /** Column ID */\n columnId: string;\n /** Date function if grouping by a date part */\n dateFunction?: DateFunction;\n /** Custom function if applied on Text/Number column */\n customFunction?: TextGrouping | RangeGrouping | IntervalGrouping;\n /** Sort order of the grouped column.\n * - asc - ascending\n * - desc - descending\n * - custom - user defined custom sorting. This is applicable in case of custom grouping.\n */\n order: (typeof GroupSortDirection)[keyof typeof GroupSortDirection];\n /** Current group level, starts with 0 for 1st level of grouping. */\n level: number;\n /** Additional field config for current group node */\n additionalFields?: GroupAdditionalField[];\n}\n\n/** Sort configuration on Table state */\nexport interface Sort {\n /** Column ID */\n columnId: string;\n /** Sort order */\n order: (typeof SortDirection)[keyof typeof SortDirection];\n /** Used to indicate the sequence in multi-sort */\n sequence: number;\n}\n\n/** Group filter from the Table state */\nexport interface GroupFilter {\n /** Start-index used for pagination */\n groupFrom: number;\n /** End-index used for pagination */\n groupTo: number;\n /**\n * List of filters in the current branch of groupFilters.\n * Each entry in the object corresponds to a single node in the given group's hierarchy\n * groupBy can be in one of three patterns - `${columnId}`, `${columnId}||${dateFunction}`,\n * `${columnId}||${customFunction.type}||${customFunction.id}`.\n * Use getGroupFromKey from lists to safely split it.\n */\n filters: {\n [groupBy: string]: ScalarRowData;\n };\n}\n\nexport interface PersonalizationInfo {\n name: string;\n personalizationState: State;\n isDefaultPreset?: boolean;\n isPreset?: boolean;\n title?: string;\n template?: string;\n markAsDefault?: boolean;\n}\nexport interface Personalization {\n allPersonalizations: {\n [personalizationkey: string]: PersonalizationInfo;\n };\n defaultPersonalization: string;\n active: string;\n dirty?: boolean;\n previousDefaultPersonalization?: string;\n lastDeletedPersonalization?: PersonalizationInfo;\n}\nexport interface Child extends CustomField {\n fieldIds: string[];\n children: Child[];\n templateName: string;\n}\n/** This interface is the old implementation of custom fields which is required for state versioning reducer. */\ninterface OldCustomField {\n children?: Child[];\n templateName?: string;\n}\nexport type CustomField = {\n /**\n * An array which contains the 2 join column id details and merge template details(a tuple of length 1 and type string) for those 2 columns\n * Column Merge templates:\n * - comma\n * - space\n * - multiline\n * - forwardslash\n */\n expression: (string | [string])[];\n /** A unique id to identify the new column resulted from merging of 2 columns. */\n id: string;\n /** Label for the new column */\n label: string;\n /** Primary column id which is used to derive the {@link FieldDef FieldDefinition} of new column */\n primaryColumnId: string;\n} & OldCustomField;\n\nexport interface DataError {\n /** itemKey of the row that has error */\n [itemKeyValue: string | number]: {\n /** error message for the row */\n message: string;\n };\n}\nexport interface Errors {\n /** errors related to row data */\n dataErrors: DataError;\n}\n\nexport type ResponsiveBreakpoint = {\n [breakpoint in 'xs' | 'sm' | 'md' | 'lg' | 'xl']?: boolean;\n};\n\nexport interface Notification {\n content: string;\n id?: string;\n}\n\n/**\n * groupBy - field id of the column on which group is toggled.\n * value(2D array) - The path of the group which is toggled.\n * @example - Consider 3 columns Priority, Severity, Status and all are grouped.\n * Expanding the first and second nested group header fully starting from Priority -> Severity -> Status will result in:\n * {\n * 'Priority': [['85 P'], ['95P']],\n * 'Severity': [['85P', 'Low severity'], ['95P', 'Low severity']],\n * 'Status': [['85P', 'Low severity', 'Pending'],['95P', 'Low severity', 'Pending']]\n * }\n */\nexport interface GroupToggle {\n [groupBy: string]: (string | number | boolean | Date)[][];\n}\n\nexport interface RowSelectionChangeSet {\n [key: string]: { data: RowData; status: string; selected: boolean };\n}\n\nexport interface State {\n /** Current order of the columns in the form of array of {@link FieldDef.id fieldDef id} */\n colOrder?: string[];\n /** Current widths of the columns in the form of array of fieldDef id and its current width */\n columnWidths?: { [key: string]: number };\n /** Current frozen columns represented by array of fieldDef id */\n freezeColumns?: string[];\n /** Current hidden columns represented by array of fieldDef id */\n hiddenColumns?: string[];\n /** id value from displayDensity table meta configuration property */\n selectedHeightOption?: (typeof ROW_DENSITY)[keyof typeof ROW_DENSITY];\n /** Current gallery layout mode for gallery views */\n galleryLayout?: GalleryLayout;\n /** Filter configuration in the ConditionBuilder format */\n filterExpression?: Condition;\n /** Aggregation configuration */\n aggregationInfo?: Aggregation[];\n /** Grouping configuration */\n groups?: Group[];\n /**\n * Internal/transient snapshot of {@link groups} captured when switching to a template\n * that does not support grouping (e.g. Gallery), so the configuration can be restored\n * when the user switches back to a grouping-capable template.\n *\n * Prefixed with underscore to denote this is private to the `changeTemplate` feature\n * and must not be consumed by other features or external code.\n */\n _groupsSnapshot?: Group[];\n /** Sorting configuration */\n sortingOrder?: Sort[];\n /** Search configuration */\n search?: {\n /** Search text */\n query: string;\n /** Fields to search in\n * @deprecated - This is no longer used. The {@link FieldDef.searchable searchable} property in FieldDef is used to determine the fields included in global search.\n */\n fields: string[];\n };\n /** Group filters applied when fetching data-rows */\n groupFilters?: GroupFilter[];\n /** Pagination applied when fetching data-rows */\n paginationOptions?: {\n [virtualizerId: string]: {\n startIndex: number;\n endIndex: number;\n };\n };\n /** An object of features that needs to be forced triggered on next dispatch cycle of Repeating structures. */\n forceUpdateFeatures?: {\n /** Force re-render the Repeating structures on next dispatch */\n forceRenderOnNextRun?: boolean;\n /** Force re-calculate width of fields of the Repeating structures on next dispatch. */\n forceCalculateAutoWidth?: boolean;\n /** Force re-fetch selectedRows by calling {@link ApiContext.getSelectedRows getSelectedRows} apiContext. */\n updateSelectedRows?: number;\n };\n /** An array of selected rows identified by value of {@link Meta.itemKey itemkey} for that rows */\n selectedRows?: string[];\n /** Repeating Structure {@link Meta.template templates} */\n template?: string;\n /**\n * Runtime-only override of the active {@link Meta.template template} (e.g. when the user\n * toggles between Table and Gallery from the toolbar). Independent of {@link template},\n * which is bound to the current personalization preset.\n */\n currentTemplate?: Meta['template'];\n /**\n * Preset identifier through which the current preset/personalized view is derived.\n * For default preset or personalization dervied from default preset the value is equal to 'nonPersonalizationViewKey'\n */\n presetId?: string;\n /** Version of the state */\n version?: string;\n /** Personalization state of repeating structure */\n personalization?: Personalization;\n /** An array of custom fields generated using joining the columns */\n customFields?: CustomField[];\n /**\n * This key holds the state of the external component within RS state.\n * This state is never manipulated by Repeating structures. This key is personalizable. Currently it contains state related to {@link Meta.externalFilters}\n */\n externalState?: { [key: string]: object };\n /**\n * This holds formatter info for a given column id.\n * key - {@link FieldDef.id columnId}\n * value - Formatter name\n */\n renderFormatter?: {\n [key: string]: string | { type: string; config: unknown };\n };\n /** It contains the alias for the column. Key is {@link FieldDef.id id} of the column, value is the alias name given to that column. */\n columnAlias?: {\n [key: string]: string;\n };\n /** Hierarchical groups info */\n hierarchicalGroup?: HierarchicalInfo;\n /** Groups are expanded or closed. */\n allGroupsExpanded?: boolean;\n\n /** Stores the errors */\n errors?: Errors;\n /** {@link FieldDef.id Id} of the field for which filter is going to be deleted. */\n clearColFilter?: string | null;\n /** A 2D array that contains the expand/collapse info of groups\n * * @example - Consider 3 columns Priority, Severity, Status and all are grouped.\n * Expanding the first and second nested group header fully starting from Priority -> Severity -> Status will result in:\n * {\n * 'Priority': [['85 P'], ['95P']],\n * 'Severity': [['85P', 'Low severity'], ['95P', 'Low severity']],\n * 'Status': [['85P', 'Low severity', 'Pending'],['95P', 'Low severity', 'Pending']]\n * }\n */\n groupToggle?: GroupToggle;\n /** Indicates if the header icon needs to be shown for header cells. */\n showHeaderIcons?: boolean;\n /** The current set of notifications on repeating structures. */\n notifications?: Notification[];\n /** Temporary change set for the selection of rows till the time the selected rows are not communicated to ApiContext via {@link ApiContext.setSelectedRows setSelectedRows}. */\n rowSelectionChangeSet?: RowSelectionChangeSet;\n /** Indicates the repeating structures is bootstraped. */\n bootstrap?: boolean;\n /** Triggers refresh on repeating structures. */\n refresh?: number;\n /** Indicates to show confirmation action in repeating structures. */\n showConfirmationAction?: boolean;\n /** Stores the itemkey of the row which is being moved in drag drop operations. */\n sourceKey?: string;\n /** Stores the itemkey of the row on which the dragged row is dropped in drag drop operations. */\n destinationKey?: string;\n /** Set of features which should be skipped when running the queued action. */\n featuresToAvoid?: string[];\n /** Stores the repeating structures body height. */\n tableHeight?: number | string;\n /** Stores the responsive breakpoints of DOM container */\n responsive?: ResponsiveBreakpoint;\n /**\n * Array of conditional style formats.\n *\n * When set, make sure the following conditions must be met:\n * - The available {@link RsCoreBootArgs.styleFormats styleFormats} must be passed to repeating structures as a prop.\n * - The `styleFormatId` referenced in conditional style formats within {@link State.conditionalStyleFormats state} must belong to one of the {@link RsCoreBootArgs.styleFormats styleFormats}.\n * - The {@link ApiContext.evaluateCondition evaluateCondition} API is optional. If the RS consumer wants to evaluate the condition itself, this API should be provided; otherwise, it is optional.\n *\n * **Note**: *For a given fieldName, if the data satisfies multiple conditional style formats, the first matching conditional format will be used.*\n */\n conditionalStyleFormats?: ConditionalStyleFormat[];\n\n /** Current visible columns represented by array of fieldDef id */\n visibleColumns?: string[];\n}\n\nexport interface PersonalizedState extends Pick<State, (typeof personalizationProps)[number]> {}\n"]}
|
|
1
|
+
{"version":3,"file":"State.types.js","sourceRoot":"","sources":["../../types/State.types.ts"],"names":[],"mappings":"AAyHA,MAAM,CAAC,MAAM,aAAa,GAAG;IAC3B,GAAG,EAAE,KAAK;IACV,IAAI,EAAE,MAAM;CACJ,CAAC;AAEX,MAAM,CAAC,MAAM,kBAAkB,GAAG;IAChC,GAAG,aAAa;IAChB,8DAA8D;IAC9D,MAAM,EAAE,QAAQ;CACR,CAAC","sourcesContent":["import type { ExcludeStrict, OmitStrict } from '@pega/cosmos-react-core';\nimport type { Condition, LeafCondition } from '@pega/cosmos-react-condition-builder';\nimport type { DateFunction } from '@pega/cosmos-react-condition-builder/lib/components/ConditionBuilder/core/types';\n\nimport type { personalizationProps } from '../src/core/reducers/personalizationReducer';\nimport type { RowData, ScalarRowData } from '../src/core/generators/RowGenerator.types';\n\n// eslint-disable-next-line @typescript-eslint/no-unused-vars\nimport type RsCoreBootArgs from './RsCoreBootArgs.types';\nimport type {\n ROW_DENSITY,\n GalleryLayout,\n HierarchicalInfo,\n /* eslint-disable @typescript-eslint/no-unused-vars */\n FieldDef,\n Meta,\n FieldType,\n /* eslint-enable @typescript-eslint/no-unused-vars */\n ConditionalStyleFormat\n} from './Meta.types';\n// eslint-disable-next-line @typescript-eslint/no-unused-vars\nimport type { ApiContext, RsApi } from './ApiContext.types';\n/** Custom functions ungrouped type */\ntype Ungrouped =\n | {\n /**\n * Ungrouped mode\n * 'aggregate' - Aggregate remaining groups as others group\n */\n mode: 'aggregate';\n /** Others group label */\n label: string;\n }\n | {\n /** 'exclude' - Exclude remaining values */\n mode: 'exclude';\n };\n\n/** Boundaries for range grouping */\nexport type RangeBoundaries =\n | 'include-lower-only'\n | 'include-upper-only'\n | 'include-both'\n | 'exclude-both';\n\n/** Rhs type for range grouping to support boundaries */\ninterface RangeGroupingRhs<T extends number | string> {\n rhs:\n | {\n value: T;\n }\n | {\n start: T;\n end: T;\n boundaries: RangeBoundaries;\n };\n}\n\n/** Modified leaf condition for Range grouping */\ntype RangeGroupingLeafCondition<T extends number | string> = OmitStrict<LeafCondition, 'rhs'> &\n RangeGroupingRhs<T>;\n\n/** Aggregation types */\nexport type AggregationType = 'Sum' | 'Min' | 'Max' | 'Avg';\n/** Aggregation state on the Table */\nexport type Aggregation = {\n /** Column ID */\n columnId: string;\n /** Aggregation type */\n type: AggregationType;\n};\n\n/** Custom grouping types */\nexport type CustomFunctions = 'TEXT_GROUPING' | 'RANGE_GROUPING';\n\n/** Custom text grouping details applied on column */\nexport type TextGrouping = {\n /** Custom function name */\n type: 'TEXT_GROUPING';\n /** Randomly generated unique id to distinguish separate custom functions on same field */\n id: string;\n /** Custom groups information */\n groups: {\n /** Group label */\n label: string;\n /** Group condition */\n condition: LeafCondition;\n }[];\n /** Ungrouped information */\n ungrouped: Ungrouped;\n};\n\n/** Custom range grouping details applied on column */\nexport type RangeGrouping = {\n /** Custom function name */\n type: 'RANGE_GROUPING';\n /** Randomly generated unique id to distinguish separate custom functions on same field */\n id: string;\n /** Custom groups information */\n groups: {\n /** Group label */\n label: string;\n /** Group condition */\n condition: RangeGroupingLeafCondition<number>;\n }[];\n /** Ungrouped information */\n ungrouped: Ungrouped;\n};\n\n/** Custom interval grouping details applied on column */\nexport type IntervalGrouping = {\n /** Custom function name */\n type: 'INTERVAL_GROUPING';\n /** Randomly generated unique id to distinguish separate custom functions on same field */\n id: string;\n /** interval */\n interval: number;\n /** boundaries */\n boundaries: 'include-lower-only' | 'include-upper-only';\n};\n\nexport const SortDirection = {\n ASC: 'asc',\n DESC: 'desc'\n} as const;\n\nexport const GroupSortDirection = {\n ...SortDirection,\n /** For custom grouping, the group order can be custom too. */\n CUSTOM: 'custom'\n} as const;\n\nexport type DateGroupAdditionalField = {\n /** Additional field id reference as mentioned in {@link FieldDef.id fieldDef id}. */\n id: FieldDef['id'];\n /** Optional date function for {@link FieldType.DATE 'date'}/ {@link FieldType.DATE_TIME 'dateTime'} field. */\n dateFunction?: ExcludeStrict<DateFunction, 'SECONDS'>;\n};\n\nexport type NumberGroupAdditionalField = {\n /** Additional field id reference as mentioned in {@link FieldDef.id fieldDef id}. */\n id: FieldDef['id'];\n /** Optional aggregation for {@link FieldType.NUMBER 'number'} type field. */\n aggregation?: ExcludeStrict<AggregationType, 'Avg'>;\n};\n\n/** Additional fields data for Group info. */\nexport type GroupAdditionalField =\n | {\n /** Additional field id reference as mentioned in {@link FieldDef.id fieldDef id}. */\n id: FieldDef['id'];\n }\n | DateGroupAdditionalField\n | NumberGroupAdditionalField;\n\n/** Group configuration on Table state */\nexport interface Group {\n /** Column ID */\n columnId: string;\n /** Date function if grouping by a date part */\n dateFunction?: DateFunction;\n /** Custom function if applied on Text/Number column */\n customFunction?: TextGrouping | RangeGrouping | IntervalGrouping;\n /** Sort order of the grouped column.\n * - asc - ascending\n * - desc - descending\n * - custom - user defined custom sorting. This is applicable in case of custom grouping.\n */\n order: (typeof GroupSortDirection)[keyof typeof GroupSortDirection];\n /** Current group level, starts with 0 for 1st level of grouping. */\n level: number;\n /** Additional field config for current group node */\n additionalFields?: GroupAdditionalField[];\n}\n\n/** Sort configuration on Table state */\nexport interface Sort {\n /** Column ID */\n columnId: string;\n /** Sort order */\n order: (typeof SortDirection)[keyof typeof SortDirection];\n /** Used to indicate the sequence in multi-sort */\n sequence: number;\n}\n\n/** Group filter from the Table state */\nexport interface GroupFilter {\n /** Start-index used for pagination */\n groupFrom: number;\n /** End-index used for pagination */\n groupTo: number;\n /**\n * List of filters in the current branch of groupFilters.\n * Each entry in the object corresponds to a single node in the given group's hierarchy\n * groupBy can be in one of three patterns - `${columnId}`, `${columnId}||${dateFunction}`,\n * `${columnId}||${customFunction.type}||${customFunction.id}`.\n * Use getGroupFromKey from lists to safely split it.\n */\n filters: {\n [groupBy: string]: ScalarRowData;\n };\n}\n\nexport interface PersonalizationInfo {\n name: string;\n personalizationState: State;\n isDefaultPreset?: boolean;\n isPreset?: boolean;\n title?: string;\n template?: string;\n markAsDefault?: boolean;\n}\nexport interface Personalization {\n allPersonalizations: {\n [personalizationkey: string]: PersonalizationInfo;\n };\n defaultPersonalization: string;\n active: string;\n dirty?: boolean;\n previousDefaultPersonalization?: string;\n lastDeletedPersonalization?: PersonalizationInfo;\n}\nexport interface Child extends CustomField {\n fieldIds: string[];\n children: Child[];\n templateName: string;\n}\n/** This interface is the old implementation of custom fields which is required for state versioning reducer. */\ninterface OldCustomField {\n children?: Child[];\n templateName?: string;\n}\nexport type CustomField = {\n /**\n * An array which contains the 2 join column id details and merge template details(a tuple of length 1 and type string) for those 2 columns\n * Column Merge templates:\n * - comma\n * - space\n * - multiline\n * - forwardslash\n */\n expression: (string | [string])[];\n /** A unique id to identify the new column resulted from merging of 2 columns. */\n id: string;\n /** Label for the new column */\n label: string;\n /** Primary column id which is used to derive the {@link FieldDef FieldDefinition} of new column */\n primaryColumnId: string;\n} & OldCustomField;\n\nexport interface DataError {\n /** itemKey of the row that has error */\n [itemKeyValue: string | number]: {\n /** error message for the row */\n message: string;\n };\n}\nexport interface Errors {\n /** errors related to row data */\n dataErrors: DataError;\n}\n\nexport type ResponsiveBreakpoint = {\n [breakpoint in 'xs' | 'sm' | 'md' | 'lg' | 'xl']?: boolean;\n};\n\nexport interface Notification {\n content: string;\n id?: string;\n}\n\n/**\n * groupBy - field id of the column on which group is toggled.\n * value(2D array) - The path of the group which is toggled.\n * @example - Consider 3 columns Priority, Severity, Status and all are grouped.\n * Expanding the first and second nested group header fully starting from Priority -> Severity -> Status will result in:\n * {\n * 'Priority': [['85 P'], ['95P']],\n * 'Severity': [['85P', 'Low severity'], ['95P', 'Low severity']],\n * 'Status': [['85P', 'Low severity', 'Pending'],['95P', 'Low severity', 'Pending']]\n * }\n */\nexport interface GroupToggle {\n [groupBy: string]: (string | number | boolean | Date)[][];\n}\n\nexport interface RowSelectionChangeSet {\n [key: string]: { data: RowData; status: string; selected: boolean };\n}\n\nexport interface State {\n /** Current order of the columns in the form of array of {@link FieldDef.id fieldDef id} */\n colOrder?: string[];\n /** Current widths of the columns in the form of array of fieldDef id and its current width */\n columnWidths?: { [key: string]: number };\n /** Runtime-only version incremented when column widths are committed. */\n columnWidthsVersion?: number;\n /** Current frozen columns represented by array of fieldDef id */\n freezeColumns?: string[];\n /** Current hidden columns represented by array of fieldDef id */\n hiddenColumns?: string[];\n /** id value from displayDensity table meta configuration property */\n selectedHeightOption?: (typeof ROW_DENSITY)[keyof typeof ROW_DENSITY];\n /** Current gallery layout mode for gallery views */\n galleryLayout?: GalleryLayout;\n /** Filter configuration in the ConditionBuilder format */\n filterExpression?: Condition;\n /** Aggregation configuration */\n aggregationInfo?: Aggregation[];\n /** Grouping configuration */\n groups?: Group[];\n /**\n * Internal/transient snapshot of {@link groups} captured when switching to a template\n * that does not support grouping (e.g. Gallery), so the configuration can be restored\n * when the user switches back to a grouping-capable template.\n *\n * Prefixed with underscore to denote this is private to the `changeTemplate` feature\n * and must not be consumed by other features or external code.\n */\n _groupsSnapshot?: Group[];\n /** Sorting configuration */\n sortingOrder?: Sort[];\n /** Search configuration */\n search?: {\n /** Search text */\n query: string;\n /** Fields to search in\n * @deprecated - This is no longer used. The {@link FieldDef.searchable searchable} property in FieldDef is used to determine the fields included in global search.\n */\n fields: string[];\n };\n /** Group filters applied when fetching data-rows */\n groupFilters?: GroupFilter[];\n /** Pagination applied when fetching data-rows */\n paginationOptions?: {\n [virtualizerId: string]: {\n startIndex: number;\n endIndex: number;\n };\n };\n /** An object of features that needs to be forced triggered on next dispatch cycle of Repeating structures. */\n forceUpdateFeatures?: {\n /** Force re-render the Repeating structures on next dispatch */\n forceRenderOnNextRun?: boolean;\n /** Force re-calculate width of fields of the Repeating structures on next dispatch. */\n forceCalculateAutoWidth?: boolean;\n /** Force re-fetch selectedRows by calling {@link ApiContext.getSelectedRows getSelectedRows} apiContext. */\n updateSelectedRows?: number;\n };\n /** An array of selected rows identified by value of {@link Meta.itemKey itemkey} for that rows */\n selectedRows?: string[];\n /** Repeating Structure {@link Meta.template templates} */\n template?: string;\n /**\n * Runtime-only override of the active {@link Meta.template template} (e.g. when the user\n * toggles between Table and Gallery from the toolbar). Independent of {@link template},\n * which is bound to the current personalization preset.\n */\n currentTemplate?: Meta['template'];\n /**\n * Preset identifier through which the current preset/personalized view is derived.\n * For default preset or personalization dervied from default preset the value is equal to 'nonPersonalizationViewKey'\n */\n presetId?: string;\n /** Version of the state */\n version?: string;\n /** Personalization state of repeating structure */\n personalization?: Personalization;\n /** An array of custom fields generated using joining the columns */\n customFields?: CustomField[];\n /**\n * This key holds the state of the external component within RS state.\n * This state is never manipulated by Repeating structures. This key is personalizable. Currently it contains state related to {@link Meta.externalFilters}\n */\n externalState?: { [key: string]: object };\n /**\n * This holds formatter info for a given column id.\n * key - {@link FieldDef.id columnId}\n * value - Formatter name\n */\n renderFormatter?: {\n [key: string]: string | { type: string; config: unknown };\n };\n /** It contains the alias for the column. Key is {@link FieldDef.id id} of the column, value is the alias name given to that column. */\n columnAlias?: {\n [key: string]: string;\n };\n /** Hierarchical groups info */\n hierarchicalGroup?: HierarchicalInfo;\n /** Groups are expanded or closed. */\n allGroupsExpanded?: boolean;\n\n /** Stores the errors */\n errors?: Errors;\n /** {@link FieldDef.id Id} of the field for which filter is going to be deleted. */\n clearColFilter?: string | null;\n /** A 2D array that contains the expand/collapse info of groups\n * * @example - Consider 3 columns Priority, Severity, Status and all are grouped.\n * Expanding the first and second nested group header fully starting from Priority -> Severity -> Status will result in:\n * {\n * 'Priority': [['85 P'], ['95P']],\n * 'Severity': [['85P', 'Low severity'], ['95P', 'Low severity']],\n * 'Status': [['85P', 'Low severity', 'Pending'],['95P', 'Low severity', 'Pending']]\n * }\n */\n groupToggle?: GroupToggle;\n /** Indicates if the header icon needs to be shown for header cells. */\n showHeaderIcons?: boolean;\n /** The current set of notifications on repeating structures. */\n notifications?: Notification[];\n /** Temporary change set for the selection of rows till the time the selected rows are not communicated to ApiContext via {@link ApiContext.setSelectedRows setSelectedRows}. */\n rowSelectionChangeSet?: RowSelectionChangeSet;\n /** Indicates the repeating structures is bootstraped. */\n bootstrap?: boolean;\n /** Triggers refresh on repeating structures. */\n refresh?: number;\n /** Indicates to show confirmation action in repeating structures. */\n showConfirmationAction?: boolean;\n /** Stores the itemkey of the row which is being moved in drag drop operations. */\n sourceKey?: string;\n /** Stores the itemkey of the row on which the dragged row is dropped in drag drop operations. */\n destinationKey?: string;\n /** Set of features which should be skipped when running the queued action. */\n featuresToAvoid?: string[];\n /** Stores the repeating structures body height. */\n tableHeight?: number | string;\n /** Stores the responsive breakpoints of DOM container */\n responsive?: ResponsiveBreakpoint;\n /**\n * Array of conditional style formats.\n *\n * When set, make sure the following conditions must be met:\n * - The available {@link RsCoreBootArgs.styleFormats styleFormats} must be passed to repeating structures as a prop.\n * - The `styleFormatId` referenced in conditional style formats within {@link State.conditionalStyleFormats state} must belong to one of the {@link RsCoreBootArgs.styleFormats styleFormats}.\n * - The {@link ApiContext.evaluateCondition evaluateCondition} API is optional. If the RS consumer wants to evaluate the condition itself, this API should be provided; otherwise, it is optional.\n *\n * **Note**: *For a given fieldName, if the data satisfies multiple conditional style formats, the first matching conditional format will be used.*\n */\n conditionalStyleFormats?: ConditionalStyleFormat[];\n\n /** Current visible columns represented by array of fieldDef id */\n visibleColumns?: string[];\n}\n\nexport interface PersonalizedState extends Pick<State, (typeof personalizationProps)[number]> {}\n"]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@pega/lists-core",
|
|
3
|
-
"version": "10.0.0-build.5.
|
|
3
|
+
"version": "10.0.0-build.5.26",
|
|
4
4
|
"description": "Core headless UI library that the users can use to write their own UI and create repeating structures like table, gallery, timeline etc.",
|
|
5
5
|
"license": "SEE LICENSE IN LICENSE",
|
|
6
6
|
"author": "Pegasystems",
|
|
@@ -14,8 +14,8 @@
|
|
|
14
14
|
"build": "tsc -b tsconfig.build.json"
|
|
15
15
|
},
|
|
16
16
|
"dependencies": {
|
|
17
|
-
"@pega/cosmos-react-condition-builder": "10.0.0-build.5.
|
|
18
|
-
"@pega/cosmos-react-core": "10.0.0-build.5.
|
|
17
|
+
"@pega/cosmos-react-condition-builder": "10.0.0-build.5.26",
|
|
18
|
+
"@pega/cosmos-react-core": "10.0.0-build.5.26",
|
|
19
19
|
"@types/lodash-es": "^4.17.12",
|
|
20
20
|
"dayjs": "^1.11.13",
|
|
21
21
|
"fast-deep-equal": "^3.1.3",
|