@talxis/base-controls 1.2504.1 → 1.2504.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/components/DatasetControl/DatasetControl.js +6 -10
- package/dist/components/DatasetControl/DatasetControl.js.map +1 -1
- package/dist/components/DatasetControl/QuickFind/QuickFind.js +8 -2
- package/dist/components/DatasetControl/QuickFind/QuickFind.js.map +1 -1
- package/dist/components/DatasetControl/QuickFind/styles.d.ts +8 -0
- package/dist/components/DatasetControl/QuickFind/styles.js +15 -0
- package/dist/components/DatasetControl/QuickFind/styles.js.map +1 -0
- package/dist/components/DatasetControl/interfaces.d.ts +2 -1
- package/dist/components/DatasetControl/styles.d.ts +3 -0
- package/dist/components/DatasetControl/styles.js +3 -0
- package/dist/components/DatasetControl/styles.js.map +1 -1
- package/dist/components/Grid/Grid.js +1 -1
- package/dist/components/Grid/Grid.js.map +1 -1
- package/dist/components/Grid/core/components/AgGrid/AgGrid.d.ts +2 -1
- package/dist/components/Grid/core/components/AgGrid/AgGrid.js +94 -58
- package/dist/components/Grid/core/components/AgGrid/AgGrid.js.map +1 -1
- package/dist/components/Grid/core/components/AgGrid/model/AgGrid.d.ts +3 -1
- package/dist/components/Grid/core/components/AgGrid/model/AgGrid.js +68 -57
- package/dist/components/Grid/core/components/AgGrid/model/AgGrid.js.map +1 -1
- package/dist/components/Grid/core/components/AgGrid/styles.d.ts +3 -3
- package/dist/components/Grid/core/components/AgGrid/styles.js +3 -9
- package/dist/components/Grid/core/components/AgGrid/styles.js.map +1 -1
- package/dist/components/Grid/core/components/Cell/Cell.js +5 -13
- package/dist/components/Grid/core/components/Cell/Cell.js.map +1 -1
- package/dist/components/Grid/core/components/Cell/CellContent/CellContent.js +14 -2
- package/dist/components/Grid/core/components/Cell/CellContent/CellContent.js.map +1 -1
- package/dist/components/Grid/core/components/ColumnHeader/components/GlobalCheckbox/GlobalCheckbox.js +9 -9
- package/dist/components/Grid/core/components/ColumnHeader/components/GlobalCheckbox/GlobalCheckbox.js.map +1 -1
- package/dist/components/Grid/core/components/Save/components/ChangeEditor/components/ChangeGrid/ChangeGrid.js +16 -0
- package/dist/components/Grid/core/components/Save/components/ChangeEditor/components/ChangeGrid/ChangeGrid.js.map +1 -1
- package/dist/components/Grid/core/model/Grid.d.ts +8 -4
- package/dist/components/Grid/core/model/Grid.js +32 -25
- package/dist/components/Grid/core/model/Grid.js.map +1 -1
- package/dist/components/Grid/filtering/model/Condition.d.ts +0 -1
- package/dist/components/Grid/filtering/model/Condition.js +5 -4
- package/dist/components/Grid/filtering/model/Condition.js.map +1 -1
- package/dist/components/Grid/interfaces.d.ts +9 -1
- package/dist/components/Grid/paging/components/Paging/Paging.js +2 -2
- package/dist/components/Grid/paging/components/Paging/Paging.js.map +1 -1
- package/dist/components/Grid/sorting/Sorting.d.ts +1 -0
- package/dist/components/Grid/sorting/Sorting.js +5 -6
- package/dist/components/Grid/sorting/Sorting.js.map +1 -1
- package/dist/components/Grid/sorting/components/SortingContextualMenu/SortingContextualMenu.js +12 -0
- package/dist/components/Grid/sorting/components/SortingContextualMenu/SortingContextualMenu.js.map +1 -1
- package/dist/components/Grid/sorting/controllers/useColumnSortingController.d.ts +1 -0
- package/dist/components/Grid/sorting/controllers/useColumnSortingController.js +2 -1
- package/dist/components/Grid/sorting/controllers/useColumnSortingController.js.map +1 -1
- package/dist/components/Grid/translations.d.ts +4 -0
- package/dist/components/Grid/translations.js +1 -0
- package/dist/components/Grid/translations.js.map +1 -1
- package/dist/components/GridCellRenderer/GridCellRenderer.js +4 -2
- package/dist/components/GridCellRenderer/GridCellRenderer.js.map +1 -1
- package/dist/components/GridCellRenderer/OptionSet/OptionSet.js +8 -2
- package/dist/components/GridCellRenderer/OptionSet/OptionSet.js.map +1 -1
- package/dist/components/GridCellRenderer/interfaces.d.ts +1 -0
- package/dist/components/Lookup/Lookup.js +1 -1
- package/dist/components/Lookup/Lookup.js.map +1 -1
- package/dist/components/Lookup/hooks/useLookup.js +2 -1
- package/dist/components/Lookup/hooks/useLookup.js.map +1 -1
- package/dist/components/Lookup/interfaces.d.ts +8 -0
- package/dist/index.d.ts +24 -2
- package/package.json +4 -3
- package/dist/components/DatasetControl/ErrorBoundary.js +0 -33
- package/dist/components/DatasetControl/ErrorBoundary.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Condition.js","sources":["../../../../../src/components/Grid/filtering/model/Condition.ts"],"sourcesContent":["import { Attribute, MemoryDataProvider } from \"@talxis/client-libraries\";\nimport { DatasetConditionOperator } from \"../../core/enums/ConditionOperator\";\nimport { DataType } from \"../../core/enums/DataType\";\nimport { IGridColumn } from \"../../core/interfaces/IGridColumn\";\nimport { Grid } from \"../../core/model/Grid\";\nimport { GridDependency } from \"../../core/model/GridDependency\";\nimport { FilteringUtils } from \"../utils/FilteringUtilts\";\n\nexport class Condition extends GridDependency {\n private _column: IGridColumn;\n private _isAppliedToDataset: boolean = false;\n private _conditionExpression: ComponentFramework.PropertyHelper.DataSetApi.ConditionExpression = {} as any;\n private _isRemoved?: boolean;\n private _conditionUtils = FilteringUtils.condition();\n private _isValid: boolean = true;\n private _inicializationPromise: Promise<boolean> | undefined;\n private _initialized: boolean = false;\n\n constructor(grid: Grid, column: IGridColumn) {\n super(grid);\n this._column = {...column};\n switch(this._column.dataType) {\n //this will skip regex validation since it is not desirable during filtering (we have contains and stuff)\n case DataType.SINGLE_LINE_EMAIL:\n case DataType.SINGLE_LINE_URL: {\n this._column.dataType = DataType.SINGLE_LINE_TEXT;\n }\n }\n return new Proxy(this, {\n get: (target, prop) => {\n if(prop !== 'init') {\n if(!target._initialized) {\n throw new Error('Condition has not been initialized. Make sure to call the init() method on the condition object before any operations.')\n }\n }\n //@ts-ignore\n if (typeof target[prop] === 'function') {\n //@ts-ignore\n return target[prop].bind(target);\n }\n //@ts-ignore\n return target[prop];\n }\n })\n }\n public async init() {\n if (!this._inicializationPromise) {\n this._inicializationPromise = new Promise(async (resolve) => {\n const [map, key] = await this._getConditionFromFilterExpression();\n if(!key) {\n this._conditionExpression = this._getDefault();\n }\n else {\n this._isAppliedToDataset = true;\n this._conditionExpression = map.get(key)!;\n }\n this._conditionExpression.conditionOperator = this._operatorDecorator(this._conditionExpression.conditionOperator, this._conditionExpression.value, true) as any;\n this._conditionExpression.value = this._valueDecorator(this._conditionExpression.conditionOperator, this._conditionExpression.value, true);\n this._conditionExpression.attributeName = await this._attributeNameDecorator(this._conditionExpression.conditionOperator, this._conditionExpression.attributeName, true);\n resolve(true);\n this._initialized = true;\n })\n }\n return this._inicializationPromise;\n }\n public get isRemoved() {\n return this._isRemoved;\n }\n\n public get column() {\n return this._column;\n }\n\n public get isAppliedToDataset() {\n return this._isAppliedToDataset;\n }\n\n public get isValid() {\n return this._isValid;\n }\n\n public async getExpression() {\n const result = { ...this._conditionExpression };\n result.conditionOperator = this._operatorDecorator(this._conditionExpression.conditionOperator, this._conditionExpression.value) as any;\n result.value = this._valueDecorator(this._conditionExpression.conditionOperator, this._conditionExpression.value);\n result.attributeName = await this._attributeNameDecorator(this._conditionExpression.conditionOperator, this._conditionExpression.attributeName);\n return result;\n\n }\n public async save(): Promise<boolean> {\n if (!await this.value.isValid()) {\n this._isValid = false;\n this._triggerRefreshCallbacks();\n return false;\n }\n const filterExpression = this._filterExpression;\n if (this._isAppliedToDataset || this._isRemoved) {\n const [map, key] = await this._getConditionFromFilterExpression();\n map.delete(key);\n filterExpression.conditions = [...map.values()];\n }\n if (!this._isRemoved) {\n filterExpression.conditions.push(await this.getExpression());\n }\n this._dataset.filtering.setFilter(filterExpression);\n return true;\n\n }\n public remove() {\n this._isRemoved = true;\n }\n public clear() {\n this._inicializationPromise = undefined;\n }\n public get operator() {\n return {\n get: () => this._get('operator') as DatasetConditionOperator,\n set: (conditionOperator: DatasetConditionOperator) => {\n const previousOperator = this._conditionExpression.conditionOperator\n this._set(\"operator\", conditionOperator, null);\n const isCurrentEditable = this._conditionUtils.value(conditionOperator).isManuallyEditable;\n const isPreviousEditable = this._conditionUtils.value(previousOperator).isManuallyEditable;\n\n if (isCurrentEditable !== isPreviousEditable) {\n // we are transitioning between editable and non-editable operators and the value of these data types needs to be set to null\n // to prevent type incompability\n switch (this._column.dataType) {\n case DataType.MULTI_SELECT_OPTIONSET:\n case DataType.OPTIONSET:\n case DataType.TWO_OPTIONS:\n case DataType.LOOKUP_SIMPLE:\n case DataType.LOOKUP_OWNER:\n case DataType.LOOKUP_CUSTOMER:\n case DataType.DATE_AND_TIME_DATE_AND_TIME:\n case DataType.DATE_AND_TIME_DATE_ONLY: {\n this._conditionExpression!.value = \"\"\n break;\n }\n }\n }\n },\n }\n }\n\n public get value() {\n return {\n get: () => this._get('value') as any,\n set: (value: any) => this._set(\"value\", undefined, value),\n isValid: async () => {\n if(this._conditionUtils.operator(this.operator.get()).doesNotAllowValue) {\n return true;\n }\n const memoryProvider = new MemoryDataProvider([{\n id: 'id',\n [this._column.name]: await this.value.get() ?? undefined\n }], {PrimaryIdAttribute: \"id\"})\n memoryProvider.setColumns([{...this._column, metadata: {...this._column.metadata as any, RequiredLevel: 0}}, {\n name: 'id',\n displayName: '',\n dataType: DataType.SINGLE_LINE_TEXT,\n alias: 'id',\n order: 0,\n visualSizeFactor: 0\n }]);\n const record = memoryProvider.refreshSync()[0];\n record.expressions?.setRequiredLevelExpression(this._column.name, () => 'required');\n return !record.getColumnInfo(this._column.name).error\n }\n }\n }\n private _get(type: 'operator' | 'value'): DatasetConditionOperator | any {\n if (type === 'operator') {\n return this._conditionExpression.conditionOperator;\n }\n return this._conditionExpression.value;\n }\n private _set(type: 'operator' | 'value', conditionOperator?: DatasetConditionOperator, value?: any) {\n this._isValid = true;\n if (type === 'operator') {\n this._conditionExpression.conditionOperator = conditionOperator as any;\n }\n else {\n this._conditionExpression.value = value;\n }\n this._triggerRefreshCallbacks();\n }\n\n private async _attributeNameDecorator(conditionOperator: DatasetConditionOperator, attributeName: string, undecorate?: boolean) {\n if (!this._conditionUtils.value(conditionOperator).isManuallyEditable) {\n return attributeName;\n }\n switch (this._column.dataType) {\n case DataType.OPTIONSET:\n case DataType.TWO_OPTIONS:\n case DataType.LOOKUP_OWNER:\n case DataType.LOOKUP_SIMPLE:\n case DataType.LOOKUP_CUSTOMER: {\n if (undecorate) {\n if (attributeName.endsWith('name')) {\n return attributeName.slice(0, -4);\n }\n return attributeName;\n }\n if (attributeName.endsWith('name')) {\n return attributeName;\n }\n return `${attributeName}name`\n }\n default: {\n return attributeName;\n }\n }\n }\n private _valueDecorator(conditionOperator: DatasetConditionOperator, value: any, undecorate?: boolean) {\n switch (conditionOperator) {\n case DatasetConditionOperator.BeginWith:\n case DatasetConditionOperator.DoesNotBeginWith: {\n if (undecorate) {\n return value.slice(0, -1);\n }\n return `${value}%`;\n }\n case DatasetConditionOperator.EndsWith:\n case DatasetConditionOperator.DoesNotEndWith: {\n if (undecorate) {\n return value.slice(1)\n }\n return `%${value}`;\n }\n case DatasetConditionOperator.Like:\n case DatasetConditionOperator.NotLike: {\n if (undecorate) {\n return value.slice(1, -1)\n }\n return `%${value}%`;\n }\n default: {\n return value;\n }\n }\n }\n\n private _operatorDecorator(conditionOperator: DatasetConditionOperator, value: any, undecorate?: boolean): DatasetConditionOperator {\n switch (this._column.dataType) {\n case DataType.MULTI_SELECT_OPTIONSET:\n case DataType.OPTIONSET:\n case DataType.TWO_OPTIONS:\n case DataType.LOOKUP_OWNER:\n case DataType.LOOKUP_SIMPLE:\n case DataType.LOOKUP_CUSTOMER: {\n //we need to switch the operators based on the number of selected options\n if (typeof value !== 'string') {\n if(undecorate) {\n switch(conditionOperator) {\n case DatasetConditionOperator.In: {\n return DatasetConditionOperator.Equal\n }\n case DatasetConditionOperator.NotIn: {\n return DatasetConditionOperator.NotEqual;\n }\n }\n }\n switch (conditionOperator) {\n case DatasetConditionOperator.Equal: {\n return DatasetConditionOperator.In;\n }\n case DatasetConditionOperator.NotEqual: {\n return DatasetConditionOperator.NotIn;\n }\n }\n }\n else {\n switch (conditionOperator) {\n case DatasetConditionOperator.In: {\n return DatasetConditionOperator.Equal;\n }\n case DatasetConditionOperator.NotIn: {\n return DatasetConditionOperator.NotEqual;\n }\n }\n }\n }\n }\n return conditionOperator;\n }\n\n private _getDefault(): ComponentFramework.PropertyHelper.DataSetApi.ConditionExpression {\n const entityAliasName = Attribute.GetLinkedEntityAlias(this._column.name);\n const attributeName = Attribute.GetNameFromAlias(this._column.name);\n const cond: ComponentFramework.PropertyHelper.DataSetApi.ConditionExpression = {\n attributeName: attributeName,\n conditionOperator: DatasetConditionOperator.Equal,\n entityAliasName: entityAliasName ?? \"\",\n value: \"\"\n }\n switch (this._column.dataType) {\n case DataType.DATE_AND_TIME_DATE_AND_TIME:\n case DataType.DATE_AND_TIME_DATE_ONLY: {\n cond.conditionOperator = DatasetConditionOperator.On;\n break;\n }\n case DataType.IMAGE:\n case DataType.FILE: {\n cond.conditionOperator = DatasetConditionOperator.NotNull as any;\n break;\n }\n }\n return cond;\n }\n private get _filterExpression() {\n return structuredClone(this._dataset.filtering.getFilter()) ?? {\n conditions: [],\n filterOperator: 0\n }\n }\n private async _getConditionFromFilterExpression(): Promise<[Map<string, ComponentFramework.PropertyHelper.DataSetApi.ConditionExpression>, string]> {\n const map = new Map<string, ComponentFramework.PropertyHelper.DataSetApi.ConditionExpression>(this._filterExpression.conditions.map(x => [x.attributeName, x]));\n const attributeName = Attribute.GetNameFromAlias(this._column.name);\n for (const cond of map.values()) {\n const conditionAttributeName = await this._attributeNameDecorator(cond.conditionOperator, cond.attributeName, true);\n if(conditionAttributeName === attributeName) {\n return [map, cond.attributeName]\n }\n }\n return [map, \"\"];\n }\n}"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Condition.js","sources":["../../../../../src/components/Grid/filtering/model/Condition.ts"],"sourcesContent":["import { Attribute, MemoryDataProvider } from \"@talxis/client-libraries\";\nimport { DatasetConditionOperator } from \"../../core/enums/ConditionOperator\";\nimport { DataType } from \"../../core/enums/DataType\";\nimport { IGridColumn } from \"../../core/interfaces/IGridColumn\";\nimport { Grid } from \"../../core/model/Grid\";\nimport { GridDependency } from \"../../core/model/GridDependency\";\nimport { FilteringUtils } from \"../utils/FilteringUtilts\";\n\nexport class Condition extends GridDependency {\n private _column: IGridColumn;\n private _conditionExpression: ComponentFramework.PropertyHelper.DataSetApi.ConditionExpression = {} as any;\n private _isRemoved?: boolean;\n private _conditionUtils = FilteringUtils.condition();\n private _isValid: boolean = true;\n private _inicializationPromise: Promise<boolean> | undefined;\n private _initialized: boolean = false;\n\n constructor(grid: Grid, column: IGridColumn) {\n super(grid);\n this._column = {...column};\n switch(this._column.dataType) {\n //this will skip regex validation since it is not desirable during filtering (we have contains and stuff)\n case DataType.SINGLE_LINE_EMAIL:\n case DataType.SINGLE_LINE_URL: {\n this._column.dataType = DataType.SINGLE_LINE_TEXT;\n }\n }\n return new Proxy(this, {\n get: (target, prop) => {\n if(prop !== 'init') {\n if(!target._initialized) {\n throw new Error('Condition has not been initialized. Make sure to call the init() method on the condition object before any operations.')\n }\n }\n //@ts-ignore\n if (typeof target[prop] === 'function') {\n //@ts-ignore\n return target[prop].bind(target);\n }\n //@ts-ignore\n return target[prop];\n }\n })\n }\n public async init() {\n if (!this._inicializationPromise) {\n this._inicializationPromise = new Promise(async (resolve) => {\n const [map, key] = await this._getConditionFromFilterExpression();\n if(!key) {\n this._conditionExpression = this._getDefault();\n }\n else {\n this._conditionExpression = map.get(key)!;\n }\n this._conditionExpression.conditionOperator = this._operatorDecorator(this._conditionExpression.conditionOperator, this._conditionExpression.value, true) as any;\n this._conditionExpression.value = this._valueDecorator(this._conditionExpression.conditionOperator, this._conditionExpression.value, true);\n this._conditionExpression.attributeName = await this._attributeNameDecorator(this._conditionExpression.conditionOperator, this._conditionExpression.attributeName, true);\n resolve(true);\n this._initialized = true;\n })\n }\n return this._inicializationPromise;\n }\n public get isRemoved() {\n return this._isRemoved;\n }\n\n public get column() {\n return this._column;\n }\n\n public get isAppliedToDataset() {\n return !!this._dataset.filtering.getFilter()?.conditions.find(cond => {\n const attributeName = cond.entityAliasName ? `${cond.entityAliasName}.${cond.attributeName}` : cond.attributeName;\n return attributeName === this._column.name\n })\n }\n\n public get isValid() {\n return this._isValid;\n }\n\n public async getExpression() {\n const result = { ...this._conditionExpression };\n result.conditionOperator = this._operatorDecorator(this._conditionExpression.conditionOperator, this._conditionExpression.value) as any;\n result.value = this._valueDecorator(this._conditionExpression.conditionOperator, this._conditionExpression.value);\n result.attributeName = await this._attributeNameDecorator(this._conditionExpression.conditionOperator, this._conditionExpression.attributeName);\n return result;\n\n }\n public async save(): Promise<boolean> {\n if (!await this.value.isValid()) {\n this._isValid = false;\n this._triggerRefreshCallbacks();\n return false;\n }\n const filterExpression = this._filterExpression;\n if (this.isAppliedToDataset || this._isRemoved) {\n const [map, key] = await this._getConditionFromFilterExpression();\n map.delete(key);\n filterExpression.conditions = [...map.values()];\n }\n if (!this._isRemoved) {\n filterExpression.conditions.push(await this.getExpression());\n }\n this._dataset.filtering.setFilter(filterExpression);\n return true;\n\n }\n public remove() {\n this._isRemoved = true;\n }\n public clear() {\n this._inicializationPromise = undefined;\n }\n public get operator() {\n return {\n get: () => this._get('operator') as DatasetConditionOperator,\n set: (conditionOperator: DatasetConditionOperator) => {\n const previousOperator = this._conditionExpression.conditionOperator\n this._set(\"operator\", conditionOperator, null);\n const isCurrentEditable = this._conditionUtils.value(conditionOperator).isManuallyEditable;\n const isPreviousEditable = this._conditionUtils.value(previousOperator).isManuallyEditable;\n\n if (isCurrentEditable !== isPreviousEditable) {\n // we are transitioning between editable and non-editable operators and the value of these data types needs to be set to null\n // to prevent type incompability\n switch (this._column.dataType) {\n case DataType.MULTI_SELECT_OPTIONSET:\n case DataType.OPTIONSET:\n case DataType.TWO_OPTIONS:\n case DataType.LOOKUP_SIMPLE:\n case DataType.LOOKUP_OWNER:\n case DataType.LOOKUP_CUSTOMER:\n case DataType.DATE_AND_TIME_DATE_AND_TIME:\n case DataType.DATE_AND_TIME_DATE_ONLY: {\n this._conditionExpression!.value = \"\"\n break;\n }\n }\n }\n },\n }\n }\n\n public get value() {\n return {\n get: () => this._get('value') as any,\n set: (value: any) => this._set(\"value\", undefined, value),\n isValid: async () => {\n if(this._conditionUtils.operator(this.operator.get()).doesNotAllowValue) {\n return true;\n }\n const memoryProvider = new MemoryDataProvider([{\n id: 'id',\n [this._column.name]: await this.value.get() ?? undefined\n }], {PrimaryIdAttribute: \"id\"})\n memoryProvider.setColumns([{...this._column, metadata: {...this._column.metadata as any, RequiredLevel: 0}}, {\n name: 'id',\n displayName: '',\n dataType: DataType.SINGLE_LINE_TEXT,\n alias: 'id',\n order: 0,\n visualSizeFactor: 0\n }]);\n const record = memoryProvider.refreshSync()[0];\n record.expressions?.setRequiredLevelExpression(this._column.name, () => 'required');\n return !record.getColumnInfo(this._column.name).error\n }\n }\n }\n private _get(type: 'operator' | 'value'): DatasetConditionOperator | any {\n if (type === 'operator') {\n return this._conditionExpression.conditionOperator;\n }\n return this._conditionExpression.value;\n }\n private _set(type: 'operator' | 'value', conditionOperator?: DatasetConditionOperator, value?: any) {\n this._isValid = true;\n if (type === 'operator') {\n this._conditionExpression.conditionOperator = conditionOperator as any;\n }\n else {\n this._conditionExpression.value = value;\n }\n this._triggerRefreshCallbacks();\n }\n\n private async _attributeNameDecorator(conditionOperator: DatasetConditionOperator, attributeName: string, undecorate?: boolean) {\n if (!this._conditionUtils.value(conditionOperator).isManuallyEditable) {\n return attributeName;\n }\n switch (this._column.dataType) {\n case DataType.OPTIONSET:\n case DataType.TWO_OPTIONS:\n case DataType.LOOKUP_OWNER:\n case DataType.LOOKUP_SIMPLE:\n case DataType.LOOKUP_CUSTOMER: {\n if (undecorate) {\n if (attributeName.endsWith('name')) {\n return attributeName.slice(0, -4);\n }\n return attributeName;\n }\n if (attributeName.endsWith('name')) {\n return attributeName;\n }\n return `${attributeName}name`\n }\n default: {\n return attributeName;\n }\n }\n }\n private _valueDecorator(conditionOperator: DatasetConditionOperator, value: any, undecorate?: boolean) {\n switch (conditionOperator) {\n case DatasetConditionOperator.BeginWith:\n case DatasetConditionOperator.DoesNotBeginWith: {\n if (undecorate) {\n return value.slice(0, -1);\n }\n return `${value}%`;\n }\n case DatasetConditionOperator.EndsWith:\n case DatasetConditionOperator.DoesNotEndWith: {\n if (undecorate) {\n return value.slice(1)\n }\n return `%${value}`;\n }\n case DatasetConditionOperator.Like:\n case DatasetConditionOperator.NotLike: {\n if (undecorate) {\n return value.slice(1, -1)\n }\n return `%${value}%`;\n }\n default: {\n return value;\n }\n }\n }\n\n private _operatorDecorator(conditionOperator: DatasetConditionOperator, value: any, undecorate?: boolean): DatasetConditionOperator {\n switch (this._column.dataType) {\n case DataType.MULTI_SELECT_OPTIONSET:\n case DataType.OPTIONSET:\n case DataType.TWO_OPTIONS:\n case DataType.LOOKUP_OWNER:\n case DataType.LOOKUP_SIMPLE:\n case DataType.LOOKUP_CUSTOMER: {\n //we need to switch the operators based on the number of selected options\n if (typeof value !== 'string') {\n if(undecorate) {\n switch(conditionOperator) {\n case DatasetConditionOperator.In: {\n return DatasetConditionOperator.Equal\n }\n case DatasetConditionOperator.NotIn: {\n return DatasetConditionOperator.NotEqual;\n }\n }\n }\n switch (conditionOperator) {\n case DatasetConditionOperator.Equal: {\n return DatasetConditionOperator.In;\n }\n case DatasetConditionOperator.NotEqual: {\n return DatasetConditionOperator.NotIn;\n }\n }\n }\n else {\n switch (conditionOperator) {\n case DatasetConditionOperator.In: {\n return DatasetConditionOperator.Equal;\n }\n case DatasetConditionOperator.NotIn: {\n return DatasetConditionOperator.NotEqual;\n }\n }\n }\n }\n }\n return conditionOperator;\n }\n\n private _getDefault(): ComponentFramework.PropertyHelper.DataSetApi.ConditionExpression {\n const entityAliasName = Attribute.GetLinkedEntityAlias(this._column.name);\n const attributeName = Attribute.GetNameFromAlias(this._column.name);\n const cond: ComponentFramework.PropertyHelper.DataSetApi.ConditionExpression = {\n attributeName: attributeName,\n conditionOperator: DatasetConditionOperator.Equal,\n entityAliasName: entityAliasName ?? \"\",\n value: \"\"\n }\n switch (this._column.dataType) {\n case DataType.DATE_AND_TIME_DATE_AND_TIME:\n case DataType.DATE_AND_TIME_DATE_ONLY: {\n cond.conditionOperator = DatasetConditionOperator.On;\n break;\n }\n case DataType.IMAGE:\n case DataType.FILE: {\n cond.conditionOperator = DatasetConditionOperator.NotNull as any;\n break;\n }\n }\n return cond;\n }\n private get _filterExpression() {\n return structuredClone(this._dataset.filtering.getFilter()) ?? {\n conditions: [],\n filterOperator: 0\n }\n }\n private async _getConditionFromFilterExpression(): Promise<[Map<string, ComponentFramework.PropertyHelper.DataSetApi.ConditionExpression>, string]> {\n const map = new Map<string, ComponentFramework.PropertyHelper.DataSetApi.ConditionExpression>(this._filterExpression.conditions.map(x => [x.attributeName, x]));\n const attributeName = Attribute.GetNameFromAlias(this._column.name);\n for (const cond of map.values()) {\n const conditionAttributeName = await this._attributeNameDecorator(cond.conditionOperator, cond.attributeName, true);\n if(conditionAttributeName === attributeName) {\n return [map, cond.attributeName]\n }\n }\n return [map, \"\"];\n }\n}"],"names":[],"mappings":"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"}
|
|
@@ -5,7 +5,13 @@ import { IParameters, IStringProperty, ITwoOptionsProperty, IWholeNumberProperty
|
|
|
5
5
|
import { IControl, IOutputs } from "../../interfaces/context";
|
|
6
6
|
import { gridTranslations } from "./translations";
|
|
7
7
|
import { IDataset } from "@talxis/client-libraries";
|
|
8
|
-
export interface
|
|
8
|
+
export interface IGridComponentProps {
|
|
9
|
+
agGrid: AgGridReactProps;
|
|
10
|
+
registerRowGroupingModule: boolean;
|
|
11
|
+
container: any;
|
|
12
|
+
pagingProps: any;
|
|
13
|
+
}
|
|
14
|
+
export interface IGrid extends IControl<IGridParameters, IGridOutputs, Partial<ITranslation<typeof gridTranslations>>, IGridComponentProps> {
|
|
9
15
|
}
|
|
10
16
|
export interface IGridParameters extends IParameters {
|
|
11
17
|
EnableEditing?: Omit<ITwoOptionsProperty, 'attributes'>;
|
|
@@ -16,7 +22,9 @@ export interface IGridParameters extends IParameters {
|
|
|
16
22
|
EnableOptionSetColors?: Omit<ITwoOptionsProperty, 'attributes'>;
|
|
17
23
|
EnableChangeEditor?: Omit<ITwoOptionsProperty, 'attributes'>;
|
|
18
24
|
EnableMultiEdit?: Omit<ITwoOptionsProperty, 'attributes'>;
|
|
25
|
+
EnableZebra?: Omit<ITwoOptionsProperty, 'attributes'>;
|
|
19
26
|
RowHeight?: Omit<IWholeNumberProperty, 'attributes'>;
|
|
27
|
+
EnablePageSizeSwitcher?: Omit<ITwoOptionsProperty, 'attributes'>;
|
|
20
28
|
Height?: IStringProperty;
|
|
21
29
|
InlineRibbonButtonIds?: IStringProperty;
|
|
22
30
|
SelectableRows?: Omit<ComponentFramework.PropertyTypes.EnumProperty<"none" | "single" | "multiple">, 'type'>;
|
|
@@ -27,7 +27,7 @@ const Paging = () => {
|
|
|
27
27
|
}
|
|
28
28
|
return `${labels['paging-pages']({ start: paging.pageFirstRecordOrder, end: paging.pageLastRecordOrder })} ${labels['paging-pages-totalcount']({ recordcount: paging.formattedTotalResultCount })}`;
|
|
29
29
|
};
|
|
30
|
-
return (jsxs("div", { className: styles.root, children: [jsx("div", { className: styles.pageSizeBtnWrapper, children: jsx(CommandBarButton, { disabled: grid.dataset.loading || !grid.paging.isEnabled, text: getPagingLabel(), menuProps: {
|
|
30
|
+
return (jsxs("div", { className: styles.root, children: [jsx("div", { className: styles.pageSizeBtnWrapper, children: jsx(CommandBarButton, { disabled: grid.dataset.loading || !grid.paging.isEnabled, text: getPagingLabel(), menuProps: grid.parameters.EnablePageSizeSwitcher?.raw !== false ? {
|
|
31
31
|
items: [
|
|
32
32
|
{
|
|
33
33
|
key: 'header',
|
|
@@ -40,7 +40,7 @@ const Paging = () => {
|
|
|
40
40
|
},
|
|
41
41
|
...getPageSizeOptions()
|
|
42
42
|
]
|
|
43
|
-
} }) }), grid.paging.isEnabled &&
|
|
43
|
+
} : undefined }) }), grid.paging.isEnabled &&
|
|
44
44
|
jsx(CommandBar, { className: styles.pagination, items: [], farItems: [{
|
|
45
45
|
key: 'FirstPage',
|
|
46
46
|
iconOnly: true,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Paging.js","sources":["../../../../../../src/components/Grid/paging/components/Paging/Paging.tsx"],"sourcesContent":["import { ComboBox, CommandBarButton, ContextualMenuItemType, IComboBoxOption, IContextualMenuItem, useTheme } from '@fluentui/react';\nimport { CommandBar } from '@fluentui/react';\nimport React from 'react';\nimport { useGridInstance } from '../../../core/hooks/useGridInstance';\nimport { usePagingController } from '../../controllers/usePagingController';\nimport { getPagingStyles } from './styles';\n\nexport const Paging = () => {\n const grid = useGridInstance();\n const labels = grid.labels;\n const paging = usePagingController();\n const styles = getPagingStyles(useTheme());\n\n const getPageSizeOptions = (): IContextualMenuItem[] => {\n const sizes = ['25', '50', '75', '100', '250'];\n return sizes.map(size => {\n return {\n key: size,\n text: size,\n checked: parseInt(size) === paging.pageSize,\n className: styles.pageSizeOption,\n onClick: () => paging.setPageSize(parseInt(size))\n }\n })\n }\n const getPagingLabel = () => {\n if (paging.totalResultCount === undefined) {\n return labels['paging-pages']({ start: paging.pageFirstRecordOrder, end: paging.pageLastRecordOrder })\n }\n return `${labels['paging-pages']({ start: paging.pageFirstRecordOrder, end: paging.pageLastRecordOrder })} ${labels['paging-pages-totalcount']({ recordcount: paging.formattedTotalResultCount })}`\n }\n return (\n <div className={styles.root}>\n <div className={styles.pageSizeBtnWrapper}>\n <CommandBarButton\n disabled={grid.dataset.loading || !grid.paging.isEnabled}\n text={getPagingLabel()}\n menuProps={{\n items: [\n {\n key: 'header',\n itemType: ContextualMenuItemType.Header,\n text: 'Počet záznamů na stránce',\n },\n {\n key: 'divider',\n itemType: ContextualMenuItemType.Divider,\n },\n ...getPageSizeOptions()\n ]\n }}\n />\n </div>\n {grid.paging.isEnabled &&\n <CommandBar\n className={styles.pagination}\n items={[]}\n farItems={[{\n key: 'FirstPage',\n iconOnly: true,\n iconProps: { iconName: 'DoubleChevronLeft' },\n disabled: !paging.hasPreviousPage || grid.dataset.loading,\n onClick: () => paging.reset()\n }, {\n key: 'PreviousPage',\n iconOnly: true,\n iconProps: { iconName: 'Back' },\n disabled: !paging.hasPreviousPage || grid.dataset.loading,\n onClick: () => paging.loadPreviousPage()\n }, {\n key: 'CurrentPage',\n text: `${labels['paging-page']()} ${paging.pageNumber.toString()}`,\n className: styles.currentPageBtn,\n disabled: true,\n }, {\n key: 'NextPage',\n iconOnly: true,\n iconProps: { iconName: 'Forward' },\n disabled: !paging.hasNextPage || grid.dataset.loading,\n onClick: () => paging.loadNextPage()\n }]}\n />\n }\n </div>\n )\n}"],"names":["_jsxs","_jsx"],"mappings":";;;;;;AAOO,MAAM,MAAM,GAAG,MAAK;AACvB,IAAA,MAAM,IAAI,GAAG,eAAe,EAAE,CAAC;AAC/B,IAAA,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;AAC3B,IAAA,MAAM,MAAM,GAAG,mBAAmB,EAAE,CAAC;AACrC,IAAA,MAAM,MAAM,GAAG,eAAe,CAAC,QAAQ,EAAE,CAAC,CAAC;IAE3C,MAAM,kBAAkB,GAAG,MAA4B;AACnD,QAAA,MAAM,KAAK,GAAG,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;AAC/C,QAAA,OAAO,KAAK,CAAC,GAAG,CAAC,IAAI,IAAG;YACpB,OAAO;AACH,gBAAA,GAAG,EAAE,IAAI;AACT,gBAAA,IAAI,EAAE,IAAI;gBACV,OAAO,EAAE,QAAQ,CAAC,IAAI,CAAC,KAAK,MAAM,CAAC,QAAQ;gBAC3C,SAAS,EAAE,MAAM,CAAC,cAAc;AAChC,gBAAA,OAAO,EAAE,MAAM,MAAM,CAAC,WAAW,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;aACpD,CAAA;AACL,SAAC,CAAC,CAAA;AACN,KAAC,CAAA;IACD,MAAM,cAAc,GAAG,MAAK;AACxB,QAAA,IAAI,MAAM,CAAC,gBAAgB,KAAK,SAAS,EAAE;AACvC,YAAA,OAAO,MAAM,CAAC,cAAc,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,oBAAoB,EAAE,GAAG,EAAE,MAAM,CAAC,mBAAmB,EAAE,CAAC,CAAA;AACzG,SAAA;AACD,QAAA,OAAO,CAAG,EAAA,MAAM,CAAC,cAAc,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,oBAAoB,EAAE,GAAG,EAAE,MAAM,CAAC,mBAAmB,EAAE,CAAC,CAAI,CAAA,EAAA,MAAM,CAAC,yBAAyB,CAAC,CAAC,EAAE,WAAW,EAAE,MAAM,CAAC,yBAAyB,EAAE,CAAC,EAAE,CAAA;AACvM,KAAC,CAAA;
|
|
1
|
+
{"version":3,"file":"Paging.js","sources":["../../../../../../src/components/Grid/paging/components/Paging/Paging.tsx"],"sourcesContent":["import { ComboBox, CommandBarButton, ContextualMenuItemType, IComboBoxOption, IContextualMenuItem, useTheme } from '@fluentui/react';\nimport { CommandBar } from '@fluentui/react';\nimport React from 'react';\nimport { useGridInstance } from '../../../core/hooks/useGridInstance';\nimport { usePagingController } from '../../controllers/usePagingController';\nimport { getPagingStyles } from './styles';\n\nexport const Paging = () => {\n const grid = useGridInstance();\n const labels = grid.labels;\n const paging = usePagingController();\n const styles = getPagingStyles(useTheme());\n\n const getPageSizeOptions = (): IContextualMenuItem[] => {\n const sizes = ['25', '50', '75', '100', '250'];\n return sizes.map(size => {\n return {\n key: size,\n text: size,\n checked: parseInt(size) === paging.pageSize,\n className: styles.pageSizeOption,\n onClick: () => paging.setPageSize(parseInt(size))\n }\n })\n }\n const getPagingLabel = () => {\n if (paging.totalResultCount === undefined) {\n return labels['paging-pages']({ start: paging.pageFirstRecordOrder, end: paging.pageLastRecordOrder })\n }\n return `${labels['paging-pages']({ start: paging.pageFirstRecordOrder, end: paging.pageLastRecordOrder })} ${labels['paging-pages-totalcount']({ recordcount: paging.formattedTotalResultCount })}`\n }\n return (\n <div className={styles.root}>\n <div className={styles.pageSizeBtnWrapper}>\n <CommandBarButton\n disabled={grid.dataset.loading || !grid.paging.isEnabled}\n text={getPagingLabel()}\n menuProps={grid.parameters.EnablePageSizeSwitcher?.raw !== false ? {\n items: [\n {\n key: 'header',\n itemType: ContextualMenuItemType.Header,\n text: 'Počet záznamů na stránce',\n },\n {\n key: 'divider',\n itemType: ContextualMenuItemType.Divider,\n },\n ...getPageSizeOptions()\n ]\n } : undefined}\n />\n </div>\n {grid.paging.isEnabled &&\n <CommandBar\n className={styles.pagination}\n items={[]}\n farItems={[{\n key: 'FirstPage',\n iconOnly: true,\n iconProps: { iconName: 'DoubleChevronLeft' },\n disabled: !paging.hasPreviousPage || grid.dataset.loading,\n onClick: () => paging.reset()\n }, {\n key: 'PreviousPage',\n iconOnly: true,\n iconProps: { iconName: 'Back' },\n disabled: !paging.hasPreviousPage || grid.dataset.loading,\n onClick: () => paging.loadPreviousPage()\n }, {\n key: 'CurrentPage',\n text: `${labels['paging-page']()} ${paging.pageNumber.toString()}`,\n className: styles.currentPageBtn,\n disabled: true,\n }, {\n key: 'NextPage',\n iconOnly: true,\n iconProps: { iconName: 'Forward' },\n disabled: !paging.hasNextPage || grid.dataset.loading,\n onClick: () => paging.loadNextPage()\n }]}\n />\n }\n </div>\n )\n}"],"names":["_jsxs","_jsx"],"mappings":"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"}
|
|
@@ -5,5 +5,6 @@ export declare class Sorting extends GridDependency {
|
|
|
5
5
|
get(column: IGridColumn): {
|
|
6
6
|
value: ComponentFramework.PropertyHelper.DataSetApi.SortStatus | undefined;
|
|
7
7
|
sort: (direction: ComponentFramework.PropertyHelper.DataSetApi.Types.SortDirection) => void;
|
|
8
|
+
clear: () => void;
|
|
8
9
|
};
|
|
9
10
|
}
|
|
@@ -16,12 +16,11 @@ class Sorting extends GridDependency {
|
|
|
16
16
|
});
|
|
17
17
|
//Power Apps only allows setting of sorting like this - https://stackoverflow.com/questions/1232040/how-do-i-empty-an-array-in-javascript
|
|
18
18
|
//this is so stupid
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
}
|
|
19
|
+
this._dataset.sorting = [...sortMap.values()];
|
|
20
|
+
this._dataset.refresh();
|
|
21
|
+
},
|
|
22
|
+
clear: () => {
|
|
23
|
+
this._dataset.sorting = this._dataset.sorting.filter(x => x.name !== column.name);
|
|
25
24
|
this._dataset.refresh();
|
|
26
25
|
}
|
|
27
26
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Sorting.js","sources":["../../../../src/components/Grid/sorting/Sorting.ts"],"sourcesContent":["import { IGridColumn } from \"../core/interfaces/IGridColumn\";\nimport { GridDependency } from \"../core/model/GridDependency\";\nexport class Sorting extends GridDependency {\n public get(column: IGridColumn) {\n return {\n value: this._dataset.sorting.find(x => x.name === column.name),\n sort: (direction: ComponentFramework.PropertyHelper.DataSetApi.Types.SortDirection) => {\n const sortMap: Map<string, ComponentFramework.PropertyHelper.DataSetApi.SortStatus> = new Map(this._dataset.sorting.map(x => [x.name, x]));\n //TODO: have explicit parameter to always do multisort?\n if(this._grid.keyHoldListener.getHeldKey() !== 'Shift') {\n sortMap.clear();\n }\n sortMap.set(column.name, {\n name: column.name,\n sortDirection: direction\n })\n //Power Apps only allows setting of sorting like this - https://stackoverflow.com/questions/1232040/how-do-i-empty-an-array-in-javascript\n //this is so stupid\n
|
|
1
|
+
{"version":3,"file":"Sorting.js","sources":["../../../../src/components/Grid/sorting/Sorting.ts"],"sourcesContent":["import { IGridColumn } from \"../core/interfaces/IGridColumn\";\nimport { GridDependency } from \"../core/model/GridDependency\";\nexport class Sorting extends GridDependency {\n public get(column: IGridColumn) {\n return {\n value: this._dataset.sorting.find(x => x.name === column.name),\n sort: (direction: ComponentFramework.PropertyHelper.DataSetApi.Types.SortDirection) => {\n const sortMap: Map<string, ComponentFramework.PropertyHelper.DataSetApi.SortStatus> = new Map(this._dataset.sorting.map(x => [x.name, x]));\n //TODO: have explicit parameter to always do multisort?\n if(this._grid.keyHoldListener.getHeldKey() !== 'Shift') {\n sortMap.clear();\n }\n sortMap.set(column.name, {\n name: column.name,\n sortDirection: direction\n })\n //Power Apps only allows setting of sorting like this - https://stackoverflow.com/questions/1232040/how-do-i-empty-an-array-in-javascript\n //this is so stupid\n this._dataset.sorting = [...sortMap.values()];\n this._dataset.refresh();\n },\n clear: () => {\n this._dataset.sorting = this._dataset.sorting.filter(x => x.name !== column.name);\n this._dataset.refresh();\n }\n }\n }\n}"],"names":[],"mappings":";;AAEM,MAAO,OAAQ,SAAQ,cAAc,CAAA;AAChC,IAAA,GAAG,CAAC,MAAmB,EAAA;QAC1B,OAAO;YACH,KAAK,EAAE,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC,IAAI,CAAC;AAC9D,YAAA,IAAI,EAAE,CAAC,SAA2E,KAAI;gBAClF,MAAM,OAAO,GAAyE,IAAI,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;;gBAE3I,IAAG,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,UAAU,EAAE,KAAK,OAAO,EAAE;oBACpD,OAAO,CAAC,KAAK,EAAE,CAAC;AACnB,iBAAA;AACD,gBAAA,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE;oBACrB,IAAI,EAAE,MAAM,CAAC,IAAI;AACjB,oBAAA,aAAa,EAAE,SAAS;AAC3B,iBAAA,CAAC,CAAA;;;AAGF,gBAAA,IAAI,CAAC,QAAQ,CAAC,OAAO,GAAG,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;AAC9C,gBAAA,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC;aAC3B;YACD,KAAK,EAAE,MAAK;gBACR,IAAI,CAAC,QAAQ,CAAC,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC,IAAI,CAAC,CAAC;AAClF,gBAAA,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC;aAC3B;SACJ,CAAA;KACJ;AACJ;;;;"}
|
package/dist/components/Grid/sorting/components/SortingContextualMenu/SortingContextualMenu.js
CHANGED
|
@@ -112,6 +112,18 @@ const SortingContextualMenu = (props) => {
|
|
|
112
112
|
}
|
|
113
113
|
});
|
|
114
114
|
}
|
|
115
|
+
if (grid.dataset.sorting.find(x => x.name === column.name)) {
|
|
116
|
+
items.push({
|
|
117
|
+
key: 'clear',
|
|
118
|
+
text: labels['filtersortmenu-clearsorting'](),
|
|
119
|
+
iconProps: {
|
|
120
|
+
iconName: 'Cancel'
|
|
121
|
+
},
|
|
122
|
+
onClick: () => {
|
|
123
|
+
sorting.clear();
|
|
124
|
+
}
|
|
125
|
+
});
|
|
126
|
+
}
|
|
115
127
|
return items;
|
|
116
128
|
};
|
|
117
129
|
return jsx(ContextualMenu, { ...props, items: items });
|
package/dist/components/Grid/sorting/components/SortingContextualMenu/SortingContextualMenu.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SortingContextualMenu.js","sources":["../../../../../../src/components/Grid/sorting/components/SortingContextualMenu/SortingContextualMenu.tsx"],"sourcesContent":["import React, { useEffect, useState } from 'react';\nimport { ContextualMenu, ContextualMenuItemType, IContextualMenuItem, IContextualMenuProps, useTheme } from '@fluentui/react';\nimport { IGridColumn } from '../../../core/interfaces/IGridColumn';\nimport { DataType } from '../../../core/enums/DataType';\nimport { getColumnHeaderContextualMenuStyles } from './styles';\nimport { useGridInstance } from '../../../core/hooks/useGridInstance';\nimport { useColumnSortingController } from '../../controllers/useColumnSortingController';\nimport { useColumnFilterConditionController } from '../../../filtering/controller/useColumnFilterConditionController';\n\nexport interface ISortingContextualMenu extends Omit<IContextualMenuProps, 'items'> {\n column: IGridColumn;\n onDismiss: (e?: Event | React.MouseEvent<Element, MouseEvent> | React.KeyboardEvent<Element>, dismissAll?: boolean, showFilterCallout?: boolean) => void;\n}\n\nexport const SortingContextualMenu = (props: ISortingContextualMenu) => {\n const grid = useGridInstance();\n const labels = grid.labels;\n const styles = getColumnHeaderContextualMenuStyles(useTheme());\n const {column, onDismiss} = {...props};\n const sorting = useColumnSortingController(column);\n const condition = useColumnFilterConditionController(column);\n const [items, setItems] = useState<IContextualMenuItem[]>([]);\n\n useEffect(() => {\n (async() => {\n setItems(await getItems())\n })();\n }, [condition]);\n\n const getTwoOptionsSortLabel = async (isDesc?: boolean) => {\n const options = column.metadata?.OptionSet ?? [];\n if(!isDesc) {\n return `${options[0].Label} ${labels['filtersortmenu-sorttwooption-joint']()} ${options[1].Label}`\n }\n return `${options[1].Label} ${labels['filtersortmenu-sorttwooption-joint']()} ${options[0].Label}`\n }\n const getLabel = async (isDesc?: boolean) => {\n switch (column.dataType) {\n case DataType.WHOLE_NONE:\n case DataType.DECIMAL:\n case DataType.WHOLE_DURATION:\n case DataType.FP:\n case DataType.CURRENCY: {\n if (!isDesc) {\n return labels['filtersortmenu-sortnumber-a-z']()\n }\n return labels['filtersortmenu-sortnumber-z-a']()\n }\n case DataType.DATE_AND_TIME_DATE_AND_TIME:\n case DataType.DATE_AND_TIME_DATE_ONLY: {\n if (!isDesc) {\n return labels['filtersortmenu-sortdate-a-z']()\n }\n return labels['filtersortmenu-sortdate-z-a']()\n }\n case DataType.TWO_OPTIONS: {\n return getTwoOptionsSortLabel(isDesc);\n }\n default: {\n if (!isDesc) {\n return labels['filtersortmenu-sorttext-a-z']()\n }\n return labels['filtersortmenu-sorttext-z-a']()\n }\n }\n }\n\n const getItems = async (): Promise<IContextualMenuItem[]> => {\n if(!condition) {\n return []\n }\n const items: IContextualMenuItem[] = [\n {\n key: 'sort_asc',\n checked: column.isSorted && !column.isSortedDescending,\n disabled: column.disableSorting || column.dataType === DataType.MULTI_SELECT_OPTIONSET,\n text: await getLabel(),\n className: styles.item,\n iconProps: {\n iconName: 'SortUp'\n },\n onClick: () => sorting.sort(0)\n },\n {\n key: 'sort_desc',\n checked: column.isSorted && column.isSortedDescending,\n disabled: column.disableSorting || column.dataType === DataType.MULTI_SELECT_OPTIONSET,\n text: await getLabel(true),\n className: styles.item,\n iconProps: {\n iconName: 'SortDown'\n },\n onClick: () => sorting.sort(1)\n },\n {\n key: 'divider',\n itemType: ContextualMenuItemType.Divider\n },\n {\n key: 'filter',\n className: styles.item,\n disabled: !column.isFilterable,\n text: labels['filtermenu-filterby'](),\n iconProps: {\n iconName: 'Filter'\n },\n onClick: (e) => onDismiss(e, false, true)\n }\n ];\n if (condition.isAppliedToDataset) {\n items.push({\n key: 'clearFilter',\n text: labels['filtersortmenu-clearfilter'](),\n iconProps: {\n iconName: 'ClearFilter'\n },\n onClick: () => {\n condition.remove();\n condition.save();\n }\n });\n }\n return items\n }\n return <ContextualMenu {...props} items={items} />;\n};"],"names":["_jsx"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"SortingContextualMenu.js","sources":["../../../../../../src/components/Grid/sorting/components/SortingContextualMenu/SortingContextualMenu.tsx"],"sourcesContent":["import React, { useEffect, useState } from 'react';\nimport { ContextualMenu, ContextualMenuItemType, IContextualMenuItem, IContextualMenuProps, useTheme } from '@fluentui/react';\nimport { IGridColumn } from '../../../core/interfaces/IGridColumn';\nimport { DataType } from '../../../core/enums/DataType';\nimport { getColumnHeaderContextualMenuStyles } from './styles';\nimport { useGridInstance } from '../../../core/hooks/useGridInstance';\nimport { useColumnSortingController } from '../../controllers/useColumnSortingController';\nimport { useColumnFilterConditionController } from '../../../filtering/controller/useColumnFilterConditionController';\n\nexport interface ISortingContextualMenu extends Omit<IContextualMenuProps, 'items'> {\n column: IGridColumn;\n onDismiss: (e?: Event | React.MouseEvent<Element, MouseEvent> | React.KeyboardEvent<Element>, dismissAll?: boolean, showFilterCallout?: boolean) => void;\n}\n\nexport const SortingContextualMenu = (props: ISortingContextualMenu) => {\n const grid = useGridInstance();\n const labels = grid.labels;\n const styles = getColumnHeaderContextualMenuStyles(useTheme());\n const {column, onDismiss} = {...props};\n const sorting = useColumnSortingController(column);\n const condition = useColumnFilterConditionController(column);\n const [items, setItems] = useState<IContextualMenuItem[]>([]);\n\n useEffect(() => {\n (async() => {\n setItems(await getItems())\n })();\n }, [condition]);\n\n const getTwoOptionsSortLabel = async (isDesc?: boolean) => {\n const options = column.metadata?.OptionSet ?? [];\n if(!isDesc) {\n return `${options[0].Label} ${labels['filtersortmenu-sorttwooption-joint']()} ${options[1].Label}`\n }\n return `${options[1].Label} ${labels['filtersortmenu-sorttwooption-joint']()} ${options[0].Label}`\n }\n const getLabel = async (isDesc?: boolean) => {\n switch (column.dataType) {\n case DataType.WHOLE_NONE:\n case DataType.DECIMAL:\n case DataType.WHOLE_DURATION:\n case DataType.FP:\n case DataType.CURRENCY: {\n if (!isDesc) {\n return labels['filtersortmenu-sortnumber-a-z']()\n }\n return labels['filtersortmenu-sortnumber-z-a']()\n }\n case DataType.DATE_AND_TIME_DATE_AND_TIME:\n case DataType.DATE_AND_TIME_DATE_ONLY: {\n if (!isDesc) {\n return labels['filtersortmenu-sortdate-a-z']()\n }\n return labels['filtersortmenu-sortdate-z-a']()\n }\n case DataType.TWO_OPTIONS: {\n return getTwoOptionsSortLabel(isDesc);\n }\n default: {\n if (!isDesc) {\n return labels['filtersortmenu-sorttext-a-z']()\n }\n return labels['filtersortmenu-sorttext-z-a']()\n }\n }\n }\n\n const getItems = async (): Promise<IContextualMenuItem[]> => {\n if(!condition) {\n return []\n }\n const items: IContextualMenuItem[] = [\n {\n key: 'sort_asc',\n checked: column.isSorted && !column.isSortedDescending,\n disabled: column.disableSorting || column.dataType === DataType.MULTI_SELECT_OPTIONSET,\n text: await getLabel(),\n className: styles.item,\n iconProps: {\n iconName: 'SortUp'\n },\n onClick: () => sorting.sort(0)\n },\n {\n key: 'sort_desc',\n checked: column.isSorted && column.isSortedDescending,\n disabled: column.disableSorting || column.dataType === DataType.MULTI_SELECT_OPTIONSET,\n text: await getLabel(true),\n className: styles.item,\n iconProps: {\n iconName: 'SortDown'\n },\n onClick: () => sorting.sort(1)\n },\n {\n key: 'divider',\n itemType: ContextualMenuItemType.Divider\n },\n {\n key: 'filter',\n className: styles.item,\n disabled: !column.isFilterable,\n text: labels['filtermenu-filterby'](),\n iconProps: {\n iconName: 'Filter'\n },\n onClick: (e) => onDismiss(e, false, true)\n }\n ];\n if (condition.isAppliedToDataset) {\n items.push({\n key: 'clearFilter',\n text: labels['filtersortmenu-clearfilter'](),\n iconProps: {\n iconName: 'ClearFilter'\n },\n onClick: () => {\n condition.remove();\n condition.save();\n }\n });\n }\n if(grid.dataset.sorting.find(x => x.name === column.name)) {\n items.push({\n key: 'clear',\n text: labels['filtersortmenu-clearsorting'](),\n iconProps: {\n iconName: 'Cancel'\n },\n onClick: () => {\n sorting.clear();\n }\n\n })\n }\n return items\n }\n return <ContextualMenu {...props} items={items} />;\n};"],"names":["_jsx"],"mappings":"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"}
|
|
@@ -3,6 +3,7 @@ import { IGridColumn } from "../../core/interfaces/IGridColumn";
|
|
|
3
3
|
interface ISortingController {
|
|
4
4
|
value: ComponentFramework.PropertyHelper.DataSetApi.SortStatus | undefined;
|
|
5
5
|
sort: (sortDirection: ComponentFramework.PropertyHelper.DataSetApi.Types.SortDirection) => void;
|
|
6
|
+
clear: () => void;
|
|
6
7
|
}
|
|
7
8
|
export declare const useColumnSortingController: (column: IGridColumn) => ISortingController;
|
|
8
9
|
export {};
|
|
@@ -7,7 +7,8 @@ const useColumnSortingController = (column) => {
|
|
|
7
7
|
const getController = () => {
|
|
8
8
|
return {
|
|
9
9
|
value: sorting.value,
|
|
10
|
-
sort: (direction) => sorting.sort(direction)
|
|
10
|
+
sort: (direction) => sorting.sort(direction),
|
|
11
|
+
clear: () => sorting.clear()
|
|
11
12
|
};
|
|
12
13
|
};
|
|
13
14
|
const [controller, setController] = useState(() => getController());
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useColumnSortingController.js","sources":["../../../../../src/components/Grid/sorting/controllers/useColumnSortingController.ts"],"sourcesContent":["import { useEffect, useState } from \"react\";\nimport { useGridInstance } from \"../../core/hooks/useGridInstance\";\nimport { IGridColumn } from \"../../core/interfaces/IGridColumn\";\n\ninterface ISortingController {\n value: ComponentFramework.PropertyHelper.DataSetApi.SortStatus | undefined;\n sort: (sortDirection: ComponentFramework.PropertyHelper.DataSetApi.Types.SortDirection) => void;\n}\n\nexport const useColumnSortingController = (column: IGridColumn): ISortingController => {\n const grid = useGridInstance();\n const sorting = grid.sorting.get(column);\n\n const getController = (): ISortingController => {\n return {\n value: sorting.value,\n sort: (direction) => sorting.sort(direction)\n }\n }\n const [controller, setController] = useState<ISortingController>(() => getController())\n\n useEffect(() => {\n setController(getController())\n }, [sorting.value]);\n return controller;\n}\n"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"useColumnSortingController.js","sources":["../../../../../src/components/Grid/sorting/controllers/useColumnSortingController.ts"],"sourcesContent":["import { useEffect, useState } from \"react\";\nimport { useGridInstance } from \"../../core/hooks/useGridInstance\";\nimport { IGridColumn } from \"../../core/interfaces/IGridColumn\";\n\ninterface ISortingController {\n value: ComponentFramework.PropertyHelper.DataSetApi.SortStatus | undefined;\n sort: (sortDirection: ComponentFramework.PropertyHelper.DataSetApi.Types.SortDirection) => void;\n clear: () => void;\n}\n\nexport const useColumnSortingController = (column: IGridColumn): ISortingController => {\n const grid = useGridInstance();\n const sorting = grid.sorting.get(column);\n\n const getController = (): ISortingController => {\n return {\n value: sorting.value,\n sort: (direction) => sorting.sort(direction),\n clear: () => sorting.clear()\n }\n }\n const [controller, setController] = useState<ISortingController>(() => getController())\n\n useEffect(() => {\n setController(getController())\n }, [sorting.value]);\n return controller;\n}\n"],"names":[],"mappings":";;;AAUa,MAAA,0BAA0B,GAAG,CAAC,MAAmB,KAAwB;AAClF,IAAA,MAAM,IAAI,GAAG,eAAe,EAAE,CAAC;IAC/B,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IAEzC,MAAM,aAAa,GAAG,MAAyB;QAC3C,OAAO;YACH,KAAK,EAAE,OAAO,CAAC,KAAK;YACpB,IAAI,EAAE,CAAC,SAAS,KAAK,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC;AAC5C,YAAA,KAAK,EAAE,MAAM,OAAO,CAAC,KAAK,EAAE;SAC/B,CAAA;AACL,KAAC,CAAA;AACD,IAAA,MAAM,CAAC,UAAU,EAAE,aAAa,CAAC,GAAG,QAAQ,CAAqB,MAAM,aAAa,EAAE,CAAC,CAAA;IAEvF,SAAS,CAAC,MAAK;AACX,QAAA,aAAa,CAAC,aAAa,EAAE,CAAC,CAAA;AAClC,KAAC,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC;AACpB,IAAA,OAAO,UAAU,CAAC;AACtB;;;;"}
|
|
@@ -55,6 +55,7 @@ const gridTranslations = {
|
|
|
55
55
|
"filtersortmenu-sorttwooption-joint": { 1029: "až", 1033: "to" },
|
|
56
56
|
"filtersortmenu-filterby": { 1029: "Filtrovat podle", 1033: "Filter by" },
|
|
57
57
|
"filtersortmenu-clearfilter": { 1029: "Vymazat filtr", 1033: "Clear filter" },
|
|
58
|
+
"filtersortmenu-clearsorting": { 1029: "Vymazat řazení", 1033: "Clear sorting" },
|
|
58
59
|
"paging-of": { 1029: "z", 1033: "of" },
|
|
59
60
|
"paging-firstpage": { 1029: "První strana", 1033: "First page" },
|
|
60
61
|
"paging-previouspage": { 1029: "Předchozí", 1033: "Previous" },
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"translations.js","sources":["../../../src/components/Grid/translations.ts"],"sourcesContent":["export const gridTranslations = {\n \"condition-none\": { 1029: \"Žádná\", 1033: \"None\" },\n \"condition-equal\": { 1029: \"Je rovno\", 1033: \"Equals\" },\n \"condition-notequal\": { 1029: \"Není rovno\", 1033: \"Does not equal\" },\n \"condition-greaterthan\": { 1029: \"Větší než\", 1033: \"Greater than\" },\n \"condition-lessthan\": { 1029: \"Menší než\", 1033: \"Less than\" },\n \"condition-greaterequal\": { 1029: \"Větší než nebo rovno\", 1033: \"Greater than or equal to\" },\n \"condition-lessequal\": { 1029: \"Menší než nebo rovno\", 1033: \"Less than or equal to\" },\n \"condition-like\": { 1029: \"Obsahuje\", 1033: \"Contains\" },\n \"condition-notlike\": { 1029: \"Neobsahuje\", 1033: \"Does not contain\" },\n \"condition-null\": { 1029: \"Neobsahuje data\", 1033: \"Does not contain data\" },\n \"condition-notnull\": { 1029: \"Obsahuje data\", 1033: \"Contains data\" },\n \"condition-beginwith\": { 1029: \"Začíná na\", 1033: \"Begins with\" },\n \"condition-doesnotbeginwith\": { 1029: \"Nezačíná na\", 1033: \"Does not begin with\" },\n \"condition-endswith\": { 1029: \"Končí na\", 1033: \"Ends with\" },\n \"condition-doesnotendwith\": { 1029: \"Nekončí na\", 1033: \"Does not end with\" },\n \"condition-yesterday\": { 1029: \"Včera\", 1033: \"Yesterday\" },\n \"condition-today\": { 1029: \"Dneska\", 1033: \"Today\" },\n \"condition-tomorrow\": { 1029: \"Zítra\", 1033: \"Tomorrow\" },\n \"condition-last7days\": { 1029: \"Posledních 7 dnů\", 1033: \"Last 7 days\" },\n \"condition-next7days\": { 1029: \"Příštích 7 dnů\", 1033: \"Next 7 days\" },\n \"condition-lastweek\": { 1029: \"Minulý týden\", 1033: \"Last week\" },\n \"condition-thisweek\": { 1029: \"Tento týden\", 1033: \"This week\" },\n \"condition-lastmonth\": { 1029: \"Minulý měsíc\", 1033: \"Last month\" },\n \"condition-thismonth\": { 1029: \"Tento měsíc\", 1033: \"This month\" },\n \"condition-on\": { 1029: \"V den\", 1033: \"On\" },\n \"condition-onorbefore\": { 1029: \"Před dnem (včetně)\", 1033: \"On or before\" },\n \"condition-onorafter\": { 1029: \"Po dni (včetně)\", 1033: \"On or after\" },\n \"condition-lastyear\": { 1029: \"Poslední rok\", 1033: \"Last year\" },\n \"condition-thisyear\": { 1029: \"Tento rok\", 1033: \"This year\" },\n \"condition-lastxdays\": { 1029: \"Posledních X dnů\", 1033: \"Last X days\" },\n \"condition-nextxdays\": { 1029: \"Příštích X dnů\", 1033: \"Next X days\" },\n \"condition-lastxmonths\": { 1029: \"Posledních X měsíců\", 1033: \"Last X months\" },\n \"condition-nextxmonths\": { 1029: \"Příštích X měsíců\", 1033: \"Next X months\" },\n \"condition-contains\": { 1029: \"Obsahuje\", 1033: \"Contains\" },\n \"condition-infiscalperiodandyear\": { 1029: \"Toto fiskální období a rok\", 1033: \"In fiscal period and year\" },\n \"condition-above\": { 1029: \"Nad\", 1033: \"Above\" },\n \"condition-under\": { 1029: \"Pod\", 1033: \"Under\" },\n \"condition-notunder\": { 1029: \"Není pod\", 1033: \"Not under\" },\n \"condition-aboveorequal\": { 1029: \"Je nad nebo se rovná\", 1033: \"Above or equal\" },\n \"condition-underorequal\": { 1029: \"Je pod nebo se rovná\", 1033: \"Under or equal\" },\n \"condition-containvalues\": { 1029: \"Obsahuje hodnoty\", 1033: \"Contain values\" },\n \"condition-doesnotcontainvalues\": { 1029: \"Neobsahuje hodnoty\", 1033: \"Does not contain values\" },\n \"filtermenu-filterby\": { 1029: \"Filtrovat podle\", 1033: \"Filter By\" },\n \"filtermenu-applybutton\": { 1029: \"Použít\", 1033: \"Apply\" },\n \"filtermenu-clearbutton\": { 1029: \"Vymazat\", 1033: \"Clear\" },\n \"filtersortmenu-sorttext-a-z\": { 1029: \"Seřadit od A do Z\", 1033: \"Sort A to Z\" },\n \"filtersortmenu-sorttext-z-a\": { 1029: \"Seřadit od Z do A\", 1033: \"Sort Z to A\" },\n \"filtersortmenu-sortdate-a-z\": { 1029: \"Seřadit od nejstarších\", 1033: \"Sort older to newer\" },\n \"filtersortmenu-sortdate-z-a\": { 1029: \"Seřadit od nejnovějších\", 1033: \"Sort newer to older\" },\n \"filtersortmenu-sortnumber-a-z\": { 1029: \"Seřadit od nejmenších\", 1033: \"Sort smaller to larger\" },\n \"filtersortmenu-sortnumber-z-a\": { 1029: \"Seřadit od největších\", 1033: \"Sort larger to smaller\" },\n \"filtersortmenu-sorttwooption-a-z\": { 1029: \"Seřadit od nejmenších\", 1033: \"No to Yes\" },\n \"filtersortmenu-sorttwooption-z-a\": { 1029: \"Seřadit od největších\", 1033: \"Yes to No\" },\n \"filtersortmenu-sorttwooption-joint\": { 1029: \"až\", 1033: \"to\" },\n \"filtersortmenu-filterby\": { 1029: \"Filtrovat podle\", 1033: \"Filter by\" },\n \"filtersortmenu-clearfilter\": { 1029: \"Vymazat filtr\", 1033: \"Clear filter\" },\n \"paging-of\": { 1029: \"z\", 1033: \"of\" },\n \"paging-firstpage\": { 1029: \"První strana\", 1033: \"First page\" },\n \"paging-previouspage\": { 1029: \"Předchozí\", 1033: \"Previous\" },\n \"paging-page\": { 1029: \"Strana\", 1033: \"Page\" },\n \"paging-nextpage\": { 1029: \"Další\", 1033: \"Next\" },\n \"paging-lastpage\": { 1029: \"Poslední strana\", 1033: \"Last page\" },\n \"paging-pages\": { 1029: \"{{start}} - {{end}}\", 1033: \"{{start}} - {{end}}\" },\n \"paging-pages-totalcount\": { 1029: \"z {{recordcount}}\", 1033: \"of {{recordcount}}\" },\n \"norecordsfound\": { 1029: 'Nenašli jsme nic, co by se zde dalo zobrazit.', 1033: 'No records found.' },\n \"saving-changenotification\": { 1029: \"Počet upravených záznamů: <b>{{numOfChanges}}</b>.\", 1033: \"Number of updated records: <b>{{numOfChanges}}</b>.\" },\n \"saving-clickreview\": {1029: \"Klikněte <u>zde</u> pro jejich zobrazení.\", 1033: \"Click <u>here</u> to review\"},\n \"saving-save\": { 1029: \"Uložit\", 1033: \"Save\" },\n \"saving-saving\": { 1029: \"Ukládání...\", 1033: \"Saving...\" },\n \"saving-changepreview-title\": { 1033: 'Number of updated rows: {{numOfChanges}}', 1029: 'Počet upravených záznamů: {{numOfChanges}}' },\n \"saving-validation-error\": { 1029: 'Pro uložení záznamu je nutné opravit chybové hodnoty následujících sloupců: <b>{{columnDisplayNames}}</b>', 1033: 'Folowing columns have validation errors: <b>{{columnDisplayNames}}</b>' },\n \"saving-save-all\": { 1029: \"Uložit všechny změny\", 1033: \"Save All Changes\" },\n \"saving-discard-all\": { 1029: \"Zrušit všechny změny\", 1033: \"Discard All Changes\" },\n \"saving-discard\": { 1029: \"Zrušit změnu\", 1033: \"Discard Change\" },\n \"saving-discard-changes\": { 1029: \"Zrušit změny\", 1033: \"Discard Changes\" },\n \"saving-save-changes\": { 1029: \"Uložit změny\", 1033: \"Save Changes\" },\n \"saving-discard-all-confirmation\": { 1029: \"Opravdu si přejete zrušit všechny provedené změny? Tuto akci není možné vrátit.\", 1033: \"Are you sure you want to discard all changes? This action cannot be reversed.\" },\n \"validation-input-value\": { 1029: 'Zadejte hodnotu', 1033: 'Please enter value.' },\n \"validation-email\": { 1029: 'Neplatný formát emailové adresy.', 1033: 'Invalid Email address format.' },\n \"validation-url\": { 1029: 'Neplatný formát webové adresy.', 1033: 'Invalid URL format.' },\n \"validation-date\": { 1029: 'Neplatný formát datumu.', 1033: 'Invalid Date format.' },\n \"validation-number\": { 1029: 'Neplatný formát čísla.', 1033: 'Invalid Number format.' },\n \"no-name\": { 1029: '(Bez názvu)', 1033: '(No Name)' },\n \"download\": { 1029: 'Stáhnout', 1033: 'Download' },\n \"value-not-editable\": { 1029: 'Tuto hodnotu nelze upravit.', 1033: 'This value cannot be edited.' },\n \"original-value\": { 1029: 'Původní hodnota', 1033: 'Previous value' },\n \"new-value\": { 1029: 'Nová hodnota', 1033: 'New value' }\n};\n\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"translations.js","sources":["../../../src/components/Grid/translations.ts"],"sourcesContent":["export const gridTranslations = {\n \"condition-none\": { 1029: \"Žádná\", 1033: \"None\" },\n \"condition-equal\": { 1029: \"Je rovno\", 1033: \"Equals\" },\n \"condition-notequal\": { 1029: \"Není rovno\", 1033: \"Does not equal\" },\n \"condition-greaterthan\": { 1029: \"Větší než\", 1033: \"Greater than\" },\n \"condition-lessthan\": { 1029: \"Menší než\", 1033: \"Less than\" },\n \"condition-greaterequal\": { 1029: \"Větší než nebo rovno\", 1033: \"Greater than or equal to\" },\n \"condition-lessequal\": { 1029: \"Menší než nebo rovno\", 1033: \"Less than or equal to\" },\n \"condition-like\": { 1029: \"Obsahuje\", 1033: \"Contains\" },\n \"condition-notlike\": { 1029: \"Neobsahuje\", 1033: \"Does not contain\" },\n \"condition-null\": { 1029: \"Neobsahuje data\", 1033: \"Does not contain data\" },\n \"condition-notnull\": { 1029: \"Obsahuje data\", 1033: \"Contains data\" },\n \"condition-beginwith\": { 1029: \"Začíná na\", 1033: \"Begins with\" },\n \"condition-doesnotbeginwith\": { 1029: \"Nezačíná na\", 1033: \"Does not begin with\" },\n \"condition-endswith\": { 1029: \"Končí na\", 1033: \"Ends with\" },\n \"condition-doesnotendwith\": { 1029: \"Nekončí na\", 1033: \"Does not end with\" },\n \"condition-yesterday\": { 1029: \"Včera\", 1033: \"Yesterday\" },\n \"condition-today\": { 1029: \"Dneska\", 1033: \"Today\" },\n \"condition-tomorrow\": { 1029: \"Zítra\", 1033: \"Tomorrow\" },\n \"condition-last7days\": { 1029: \"Posledních 7 dnů\", 1033: \"Last 7 days\" },\n \"condition-next7days\": { 1029: \"Příštích 7 dnů\", 1033: \"Next 7 days\" },\n \"condition-lastweek\": { 1029: \"Minulý týden\", 1033: \"Last week\" },\n \"condition-thisweek\": { 1029: \"Tento týden\", 1033: \"This week\" },\n \"condition-lastmonth\": { 1029: \"Minulý měsíc\", 1033: \"Last month\" },\n \"condition-thismonth\": { 1029: \"Tento měsíc\", 1033: \"This month\" },\n \"condition-on\": { 1029: \"V den\", 1033: \"On\" },\n \"condition-onorbefore\": { 1029: \"Před dnem (včetně)\", 1033: \"On or before\" },\n \"condition-onorafter\": { 1029: \"Po dni (včetně)\", 1033: \"On or after\" },\n \"condition-lastyear\": { 1029: \"Poslední rok\", 1033: \"Last year\" },\n \"condition-thisyear\": { 1029: \"Tento rok\", 1033: \"This year\" },\n \"condition-lastxdays\": { 1029: \"Posledních X dnů\", 1033: \"Last X days\" },\n \"condition-nextxdays\": { 1029: \"Příštích X dnů\", 1033: \"Next X days\" },\n \"condition-lastxmonths\": { 1029: \"Posledních X měsíců\", 1033: \"Last X months\" },\n \"condition-nextxmonths\": { 1029: \"Příštích X měsíců\", 1033: \"Next X months\" },\n \"condition-contains\": { 1029: \"Obsahuje\", 1033: \"Contains\" },\n \"condition-infiscalperiodandyear\": { 1029: \"Toto fiskální období a rok\", 1033: \"In fiscal period and year\" },\n \"condition-above\": { 1029: \"Nad\", 1033: \"Above\" },\n \"condition-under\": { 1029: \"Pod\", 1033: \"Under\" },\n \"condition-notunder\": { 1029: \"Není pod\", 1033: \"Not under\" },\n \"condition-aboveorequal\": { 1029: \"Je nad nebo se rovná\", 1033: \"Above or equal\" },\n \"condition-underorequal\": { 1029: \"Je pod nebo se rovná\", 1033: \"Under or equal\" },\n \"condition-containvalues\": { 1029: \"Obsahuje hodnoty\", 1033: \"Contain values\" },\n \"condition-doesnotcontainvalues\": { 1029: \"Neobsahuje hodnoty\", 1033: \"Does not contain values\" },\n \"filtermenu-filterby\": { 1029: \"Filtrovat podle\", 1033: \"Filter By\" },\n \"filtermenu-applybutton\": { 1029: \"Použít\", 1033: \"Apply\" },\n \"filtermenu-clearbutton\": { 1029: \"Vymazat\", 1033: \"Clear\" },\n \"filtersortmenu-sorttext-a-z\": { 1029: \"Seřadit od A do Z\", 1033: \"Sort A to Z\" },\n \"filtersortmenu-sorttext-z-a\": { 1029: \"Seřadit od Z do A\", 1033: \"Sort Z to A\" },\n \"filtersortmenu-sortdate-a-z\": { 1029: \"Seřadit od nejstarších\", 1033: \"Sort older to newer\" },\n \"filtersortmenu-sortdate-z-a\": { 1029: \"Seřadit od nejnovějších\", 1033: \"Sort newer to older\" },\n \"filtersortmenu-sortnumber-a-z\": { 1029: \"Seřadit od nejmenších\", 1033: \"Sort smaller to larger\" },\n \"filtersortmenu-sortnumber-z-a\": { 1029: \"Seřadit od největších\", 1033: \"Sort larger to smaller\" },\n \"filtersortmenu-sorttwooption-a-z\": { 1029: \"Seřadit od nejmenších\", 1033: \"No to Yes\" },\n \"filtersortmenu-sorttwooption-z-a\": { 1029: \"Seřadit od největších\", 1033: \"Yes to No\" },\n \"filtersortmenu-sorttwooption-joint\": { 1029: \"až\", 1033: \"to\" },\n \"filtersortmenu-filterby\": { 1029: \"Filtrovat podle\", 1033: \"Filter by\" },\n \"filtersortmenu-clearfilter\": { 1029: \"Vymazat filtr\", 1033: \"Clear filter\" },\n \"filtersortmenu-clearsorting\": { 1029: \"Vymazat řazení\", 1033: \"Clear sorting\" },\n \"paging-of\": { 1029: \"z\", 1033: \"of\" },\n \"paging-firstpage\": { 1029: \"První strana\", 1033: \"First page\" },\n \"paging-previouspage\": { 1029: \"Předchozí\", 1033: \"Previous\" },\n \"paging-page\": { 1029: \"Strana\", 1033: \"Page\" },\n \"paging-nextpage\": { 1029: \"Další\", 1033: \"Next\" },\n \"paging-lastpage\": { 1029: \"Poslední strana\", 1033: \"Last page\" },\n \"paging-pages\": { 1029: \"{{start}} - {{end}}\", 1033: \"{{start}} - {{end}}\" },\n \"paging-pages-totalcount\": { 1029: \"z {{recordcount}}\", 1033: \"of {{recordcount}}\" },\n \"norecordsfound\": { 1029: 'Nenašli jsme nic, co by se zde dalo zobrazit.', 1033: 'No records found.' },\n \"saving-changenotification\": { 1029: \"Počet upravených záznamů: <b>{{numOfChanges}}</b>.\", 1033: \"Number of updated records: <b>{{numOfChanges}}</b>.\" },\n \"saving-clickreview\": {1029: \"Klikněte <u>zde</u> pro jejich zobrazení.\", 1033: \"Click <u>here</u> to review\"},\n \"saving-save\": { 1029: \"Uložit\", 1033: \"Save\" },\n \"saving-saving\": { 1029: \"Ukládání...\", 1033: \"Saving...\" },\n \"saving-changepreview-title\": { 1033: 'Number of updated rows: {{numOfChanges}}', 1029: 'Počet upravených záznamů: {{numOfChanges}}' },\n \"saving-validation-error\": { 1029: 'Pro uložení záznamu je nutné opravit chybové hodnoty následujících sloupců: <b>{{columnDisplayNames}}</b>', 1033: 'Folowing columns have validation errors: <b>{{columnDisplayNames}}</b>' },\n \"saving-save-all\": { 1029: \"Uložit všechny změny\", 1033: \"Save All Changes\" },\n \"saving-discard-all\": { 1029: \"Zrušit všechny změny\", 1033: \"Discard All Changes\" },\n \"saving-discard\": { 1029: \"Zrušit změnu\", 1033: \"Discard Change\" },\n \"saving-discard-changes\": { 1029: \"Zrušit změny\", 1033: \"Discard Changes\" },\n \"saving-save-changes\": { 1029: \"Uložit změny\", 1033: \"Save Changes\" },\n \"saving-discard-all-confirmation\": { 1029: \"Opravdu si přejete zrušit všechny provedené změny? Tuto akci není možné vrátit.\", 1033: \"Are you sure you want to discard all changes? This action cannot be reversed.\" },\n \"validation-input-value\": { 1029: 'Zadejte hodnotu', 1033: 'Please enter value.' },\n \"validation-email\": { 1029: 'Neplatný formát emailové adresy.', 1033: 'Invalid Email address format.' },\n \"validation-url\": { 1029: 'Neplatný formát webové adresy.', 1033: 'Invalid URL format.' },\n \"validation-date\": { 1029: 'Neplatný formát datumu.', 1033: 'Invalid Date format.' },\n \"validation-number\": { 1029: 'Neplatný formát čísla.', 1033: 'Invalid Number format.' },\n \"no-name\": { 1029: '(Bez názvu)', 1033: '(No Name)' },\n \"download\": { 1029: 'Stáhnout', 1033: 'Download' },\n \"value-not-editable\": { 1029: 'Tuto hodnotu nelze upravit.', 1033: 'This value cannot be edited.' },\n \"original-value\": { 1029: 'Původní hodnota', 1033: 'Previous value' },\n \"new-value\": { 1029: 'Nová hodnota', 1033: 'New value' }\n};\n\n"],"names":[],"mappings":"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"}
|
|
@@ -121,7 +121,8 @@ const GridCellRenderer = (props) => {
|
|
|
121
121
|
return jsx(DefaultContentRenderer, {});
|
|
122
122
|
}
|
|
123
123
|
if (column.isPrimary && isNavigationEnabled) {
|
|
124
|
-
|
|
124
|
+
const linkProps = componentProps.onGetLinkProps(getLinkProps());
|
|
125
|
+
return jsx(Link, { ...linkProps, children: linkProps.children });
|
|
125
126
|
}
|
|
126
127
|
switch (dataType) {
|
|
127
128
|
case DataTypes.SingleLineEmail:
|
|
@@ -204,6 +205,7 @@ const GridCellRenderer = (props) => {
|
|
|
204
205
|
const componentProps = onOverrideComponentProps({
|
|
205
206
|
onGetLinkProps: (props) => props,
|
|
206
207
|
onGetOptionSetProps: (props) => props,
|
|
208
|
+
onRenderContent: (defaultRenderer) => defaultRenderer(),
|
|
207
209
|
rootContainerProps: {
|
|
208
210
|
theme: theme,
|
|
209
211
|
className: styles.root
|
|
@@ -248,7 +250,7 @@ const GridCellRenderer = (props) => {
|
|
|
248
250
|
//it can cover a lot of cases where otherwise custom PCF would be needed
|
|
249
251
|
const prefixIconProps = getIconProps(prefixIcon);
|
|
250
252
|
const suffixIconProps = getIconProps(suffixIcon);
|
|
251
|
-
return jsx(ThemeProvider, { ...componentProps.rootContainerProps, children: jsxs(ComponentPropsContext.Provider, { value: componentPropsProviderValue, children: [prefixIconProps && jsx(Icon, { ...prefixIconProps, className: getClassNames([prefixIconProps.className, styles.icon]) }), jsx("div", { ...componentProps.contentWrapperProps, children: componentProps.
|
|
253
|
+
return jsx(ThemeProvider, { ...componentProps.rootContainerProps, children: jsxs(ComponentPropsContext.Provider, { value: componentPropsProviderValue, children: [prefixIconProps && jsx(Icon, { ...prefixIconProps, className: getClassNames([prefixIconProps.className, styles.icon]) }), jsx("div", { ...componentProps.contentWrapperProps, children: componentProps.onRenderContent(() => renderContent()) }), suffixIconProps && jsx(Icon, { ...suffixIconProps, className: getClassNames([suffixIconProps.className, styles.icon]) })] }) });
|
|
252
254
|
};
|
|
253
255
|
|
|
254
256
|
export { GridCellRenderer };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GridCellRenderer.js","sources":["../../../src/components/GridCellRenderer/GridCellRenderer.tsx"],"sourcesContent":["import { Icon, IIconProps, ILinkProps, Image, Link, SpinnerSize, ThemeProvider } from \"@fluentui/react\";\nimport { useControl } from \"../../hooks\";\nimport { useMemo, useState } from \"react\";\nimport { getDefaultContentRendererStyles, getGridCellLabelStyles } from \"./styles\";\nimport { Attribute, Client, DataType, DataTypes, FetchXmlDataProvider, FileAttribute, IRecord, Sanitizer } from \"@talxis/client-libraries\";\nimport { OptionSet } from './OptionSet';\nimport { IGridCellRenderer } from \"./interfaces\";\nimport { getDefaultGridRendererTranslations } from \"./translations\";\nimport { ComponentPropsContext } from \"./useComponentProps\";\nimport { DefaultContentRenderer } from \"./DefaultContentRenderer\";\nimport { getClassNames, Spinner } from \"@talxis/react-components\";\n\nconst client = new Client();\n\nexport const GridCellRenderer = (props: IGridCellRenderer) => {\n const dataset = props.parameters.Dataset.raw;\n const context = props.context;\n const record: IRecord = props.parameters.Record.raw;\n const column = props.parameters.Column.raw;\n const columnAlignment = props.parameters.ColumnAlignment.raw;\n const dataType: DataType = props.parameters.value.type as DataType;\n const { theme, sizing } = useControl('GridCellLabel', props, getDefaultGridRendererTranslations());\n const styles = useMemo(() => getGridCellLabelStyles(columnAlignment ?? 'left', dataType, sizing.height!, theme), [columnAlignment, dataType, sizing.height, theme]);\n const defaultContentRendererStyles = useMemo(() => getDefaultContentRendererStyles(theme, dataType, sizing.height!), [theme, dataType, sizing.height]);\n const value = props.parameters.value.raw;\n const formattedValue: string = props.parameters.value.formatted;\n const isNavigationEnabled = props.parameters.EnableNavigation.raw;\n const prefixIcon = props.parameters.PrefixIcon?.raw\n const suffixIcon = props.parameters.SuffixIcon?.raw;\n const onOverrideComponentProps = props.onOverrideComponentProps ?? ((props) => props);\n const [downloadInProgress, setIsDownloadInProgress] = useState(false);\n\n const getLinkProps = (): ILinkProps => {\n const props: ILinkProps = {\n title: formattedValue,\n className: styles.link,\n rel: 'noopener noreferrer',\n children: formattedValue,\n disabled: downloadInProgress\n }\n switch (dataType) {\n case DataTypes.SingleLineEmail: {\n props.href = `mailto:${value}`;\n break;\n }\n case DataTypes.SingleLinePhone: {\n props.href = `tel:${value}`;\n break;\n }\n case DataTypes.SingleLineUrl: {\n props.href = value;\n props.target = '_blank';\n break;\n }\n case DataTypes.Image:\n case DataTypes.File: {\n props.href = value.fileUrl;\n props.download = value.fileName;\n if (dataType === 'Image') {\n props.title = value.fileName;\n props.children = value.fileName;\n }\n if (shouldUsePortalDownload()) {\n props.onClick = (e) => downloadPortalFile(e);\n }\n break;\n }\n case DataTypes.LookupCustomer:\n case DataTypes.LookupOwner:\n case DataTypes.LookupSimple:\n case DataTypes.LookupRegarding: {\n props.onClick = () => {\n dataset.openDatasetItem(Sanitizer.Lookup.getEntityReference(value[0]))\n }\n break;\n }\n //primary navigation link\n default: {\n props.onClick = () => {\n dataset.openDatasetItem(record.getNamedReference());\n }\n }\n }\n return props;\n }\n\n\n //matching could be improved\n const getIconNameForMimeType = (mimeType?: string) => {\n if (!mimeType) {\n return 'Attach';\n }\n const icon_classes: any = {\n image: \"Photo2\",\n audio: \"MusicNote\",\n video: \"Video\",\n \"application/pdf\": \"PDF\",\n \"application/msword\": \"WordDocument\",\n \"application/vnd.ms-word\": \"WordDocument\",\n \"application/vnd.oasis.opendocument.text\": \"WordDocument\",\n \"application/vnd.openxmlformats-officedocument.wordprocessingml\": \"WordDocument\",\n \"application/vnd.ms-excel\": \"ExcelDocument\",\n \"application/vnd.openxmlformats-officedocument.spreadsheetml\": \"ExcelDocument\",\n \"application/vnd.oasis.opendocument.spreadsheet\": \"ExcelDocument\",\n \"application/vnd.ms-powerpoint\": \"PowerPointDocument\",\n \"application/vnd.openxmlformats-officedocument.presentationml\": \"PowerPointDocument\",\n \"application/vnd.oasis.opendocument.presentation\": \"PowerPointDocument\",\n \"text/plain\": \"TextDocument\",\n \"text/html\": \"FileCode\",\n \"application/json\": \"FileCode\",\n // Archives\n \"application/gzip\": \"ZipFolder\",\n \"application/zip\": \"ZipFolder\"\n };\n\n if (icon_classes[mimeType]) {\n return icon_classes[mimeType];\n }\n else if (icon_classes[mimeType.split(\"/\")[0]]) {\n return icon_classes[mimeType.split(\"/\")[0]];\n }\n return 'Attach';\n }\n\n const renderContent = () => {\n if (!formattedValue) {\n return <DefaultContentRenderer />\n }\n if (column.isPrimary && isNavigationEnabled) {\n return <Link {...componentProps.onGetLinkProps(getLinkProps())}>{formattedValue}</Link>\n }\n switch (dataType) {\n case DataTypes.SingleLineEmail:\n case DataTypes.SingleLinePhone:\n case DataTypes.SingleLineUrl:\n case DataTypes.LookupCustomer:\n case DataTypes.LookupOwner:\n case DataTypes.LookupSimple:\n case DataTypes.LookupRegarding: {\n if(isNavigationEnabled) {\n const linkProps = componentProps.onGetLinkProps(getLinkProps());\n return <Link {...linkProps}>{linkProps.children}</Link>\n }\n return <DefaultContentRenderer />\n }\n case DataTypes.OptionSet:\n case DataTypes.MultiSelectOptionSet:\n case DataTypes.TwoOptions: {\n return <OptionSet context={props.context} parameters={{ ...props.parameters }} />\n }\n case DataTypes.File:\n case DataTypes.Image: {\n return renderFileLink(dataType === 'Image');\n }\n }\n return <DefaultContentRenderer />\n }\n\n const shouldUsePortalDownload = () => {\n const isFetchXmlDataProvider = dataset.getDataProvider() instanceof FetchXmlDataProvider;\n //only use portal download if within portal, uses fetch xml provider and is not virtual column\n if(client.isTalxisPortal() && isFetchXmlDataProvider && !column.name.endsWith('__virtual')) {\n return true;\n }\n return false;\n }\n\n const renderFileLink = (isImage?: boolean) => {\n const linkProps = componentProps.onGetLinkProps(getLinkProps());\n return (<div {...componentProps.fileProps.containerProps}>\n {!downloadInProgress &&\n <>\n {!isImage &&\n <Icon {...componentProps.fileProps.iconProps} iconName={componentProps.fileProps.iconProps.onGetIconName(getIconNameForMimeType(value.mimeType))} />\n }\n {isImage &&\n <Image {...componentProps.fileProps.imageProps} src={getThumbnailUrl()} />\n }\n </>\n }\n {downloadInProgress &&\n <Spinner {...componentProps.fileProps.loadingProps.spinnerProps} />\n }\n <Link {...linkProps}>{linkProps.children}</Link>\n </div>);\n }\n\n const getIconProps = (json?: string | null): IIconProps | undefined => {\n if (!json) {\n return undefined;\n }\n return JSON.parse(json);\n }\n\n const getThumbnailUrl = () => {\n let src = value.thumbnailUrl;\n if (client.isTalxisPortal()) {\n src = `data:${value.mimeType};base64,${value.fileContent}`\n }\n return componentProps.fileProps.imageProps.onGetSrc(src);\n }\n\n const downloadPortalFile = async (e: React.MouseEvent<HTMLAnchorElement | HTMLElement | HTMLButtonElement, MouseEvent>) => {\n e.preventDefault();\n setIsDownloadInProgress(true);\n const storage = new FileAttribute(context.webAPI);\n let entityName = dataset.getTargetEntityType();\n let recordId = record.getRecordId();\n let attributeName = Attribute.GetNameFromAlias(column.name);\n const entityAliasName = Attribute.GetLinkedEntityAlias(column.name);\n\n if (entityAliasName) {\n entityName = dataset.linking.getLinkedEntities().find(x => x.alias === entityAliasName)!.name;\n const entityMetadata = await context.utils.getEntityMetadata(entityName, []);\n recordId = record.getRawData()![`${entityAliasName}.${entityMetadata.PrimaryIdAttribute}`];\n }\n await storage.downloadFileFromAttribute({\n entityName: entityName,\n recordId: recordId,\n fileAttribute: attributeName\n }, true, undefined, {\n fileName: value.fileName,\n fileSizeInBytes: value.fileSize\n })\n setIsDownloadInProgress(false);\n }\n\n const componentProps = onOverrideComponentProps({\n onGetLinkProps: (props) => props,\n onGetOptionSetProps: (props) => props,\n rootContainerProps: {\n theme: theme,\n className: styles.root\n },\n contentWrapperProps: {\n className: styles.contentWrapper,\n },\n textProps: {\n className: getClassNames([defaultContentRendererStyles.content, !formattedValue ? defaultContentRendererStyles.placeholder : undefined]),\n title: formattedValue,\n children: column.type === 'action' ? '' : (formattedValue || '---')\n },\n fileProps: {\n containerProps: {\n className: styles.fileWrapper\n },\n iconProps: {\n className: styles.fileIcon,\n onGetIconName: (iconName) => iconName\n },\n imageProps: {\n className: styles.fileImage,\n onGetSrc: (src) => src\n },\n loadingProps: {\n spinnerProps: {\n size: SpinnerSize.small,\n styles: {\n circle: styles.loadingSpinnerCircle\n }\n }\n }\n }\n });\n\n const componentPropsProviderValue = useMemo(() => {\n return {\n current: componentProps\n }\n }, []);\n componentPropsProviderValue.current = componentProps;\n\n //this allows to add prefix/sufix icon without the need of cell customizer\n //it can cover a lot of cases where otherwise custom PCF would be needed\n const prefixIconProps = getIconProps(prefixIcon);\n const suffixIconProps = getIconProps(suffixIcon)\n\n return <ThemeProvider {...componentProps.rootContainerProps}>\n <ComponentPropsContext.Provider value={componentPropsProviderValue}>\n {prefixIconProps && <Icon {...prefixIconProps} className={getClassNames([prefixIconProps.className, styles.icon])} />}\n <div {...componentProps.contentWrapperProps}>\n {componentProps.contentWrapperProps.children ?? renderContent()}\n </div>\n {suffixIconProps && <Icon {...suffixIconProps} className={getClassNames([suffixIconProps.className, styles.icon])} />}\n </ComponentPropsContext.Provider>\n </ThemeProvider>\n}\n\n\n"],"names":["_jsx","_jsxs","_Fragment"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"GridCellRenderer.js","sources":["../../../src/components/GridCellRenderer/GridCellRenderer.tsx"],"sourcesContent":["import { Icon, IIconProps, ILinkProps, Image, Link, SpinnerSize, ThemeProvider } from \"@fluentui/react\";\nimport { useControl } from \"../../hooks\";\nimport { useMemo, useState } from \"react\";\nimport { getDefaultContentRendererStyles, getGridCellLabelStyles } from \"./styles\";\nimport { Attribute, Client, DataType, DataTypes, FetchXmlDataProvider, FileAttribute, IRecord, Sanitizer } from \"@talxis/client-libraries\";\nimport { OptionSet } from './OptionSet';\nimport { IGridCellRenderer } from \"./interfaces\";\nimport { getDefaultGridRendererTranslations } from \"./translations\";\nimport { ComponentPropsContext } from \"./useComponentProps\";\nimport { DefaultContentRenderer } from \"./DefaultContentRenderer\";\nimport { getClassNames, Spinner } from \"@talxis/react-components\";\n\nconst client = new Client();\n\nexport const GridCellRenderer = (props: IGridCellRenderer) => {\n const dataset = props.parameters.Dataset.raw;\n const context = props.context;\n const record: IRecord = props.parameters.Record.raw;\n const column = props.parameters.Column.raw;\n const columnAlignment = props.parameters.ColumnAlignment.raw;\n const dataType: DataType = props.parameters.value.type as DataType;\n const { theme, sizing } = useControl('GridCellLabel', props, getDefaultGridRendererTranslations());\n const styles = useMemo(() => getGridCellLabelStyles(columnAlignment ?? 'left', dataType, sizing.height!, theme), [columnAlignment, dataType, sizing.height, theme]);\n const defaultContentRendererStyles = useMemo(() => getDefaultContentRendererStyles(theme, dataType, sizing.height!), [theme, dataType, sizing.height]);\n const value = props.parameters.value.raw;\n const formattedValue: string = props.parameters.value.formatted;\n const isNavigationEnabled = props.parameters.EnableNavigation.raw;\n const prefixIcon = props.parameters.PrefixIcon?.raw\n const suffixIcon = props.parameters.SuffixIcon?.raw;\n const onOverrideComponentProps = props.onOverrideComponentProps ?? ((props) => props);\n const [downloadInProgress, setIsDownloadInProgress] = useState(false);\n\n const getLinkProps = (): ILinkProps => {\n const props: ILinkProps = {\n title: formattedValue,\n className: styles.link,\n rel: 'noopener noreferrer',\n children: formattedValue,\n disabled: downloadInProgress\n }\n switch (dataType) {\n case DataTypes.SingleLineEmail: {\n props.href = `mailto:${value}`;\n break;\n }\n case DataTypes.SingleLinePhone: {\n props.href = `tel:${value}`;\n break;\n }\n case DataTypes.SingleLineUrl: {\n props.href = value;\n props.target = '_blank';\n break;\n }\n case DataTypes.Image:\n case DataTypes.File: {\n props.href = value.fileUrl;\n props.download = value.fileName;\n if (dataType === 'Image') {\n props.title = value.fileName;\n props.children = value.fileName;\n }\n if (shouldUsePortalDownload()) {\n props.onClick = (e) => downloadPortalFile(e);\n }\n break;\n }\n case DataTypes.LookupCustomer:\n case DataTypes.LookupOwner:\n case DataTypes.LookupSimple:\n case DataTypes.LookupRegarding: {\n props.onClick = () => {\n dataset.openDatasetItem(Sanitizer.Lookup.getEntityReference(value[0]))\n }\n break;\n }\n //primary navigation link\n default: {\n props.onClick = () => {\n dataset.openDatasetItem(record.getNamedReference());\n }\n }\n }\n return props;\n }\n\n\n //matching could be improved\n const getIconNameForMimeType = (mimeType?: string) => {\n if (!mimeType) {\n return 'Attach';\n }\n const icon_classes: any = {\n image: \"Photo2\",\n audio: \"MusicNote\",\n video: \"Video\",\n \"application/pdf\": \"PDF\",\n \"application/msword\": \"WordDocument\",\n \"application/vnd.ms-word\": \"WordDocument\",\n \"application/vnd.oasis.opendocument.text\": \"WordDocument\",\n \"application/vnd.openxmlformats-officedocument.wordprocessingml\": \"WordDocument\",\n \"application/vnd.ms-excel\": \"ExcelDocument\",\n \"application/vnd.openxmlformats-officedocument.spreadsheetml\": \"ExcelDocument\",\n \"application/vnd.oasis.opendocument.spreadsheet\": \"ExcelDocument\",\n \"application/vnd.ms-powerpoint\": \"PowerPointDocument\",\n \"application/vnd.openxmlformats-officedocument.presentationml\": \"PowerPointDocument\",\n \"application/vnd.oasis.opendocument.presentation\": \"PowerPointDocument\",\n \"text/plain\": \"TextDocument\",\n \"text/html\": \"FileCode\",\n \"application/json\": \"FileCode\",\n // Archives\n \"application/gzip\": \"ZipFolder\",\n \"application/zip\": \"ZipFolder\"\n };\n\n if (icon_classes[mimeType]) {\n return icon_classes[mimeType];\n }\n else if (icon_classes[mimeType.split(\"/\")[0]]) {\n return icon_classes[mimeType.split(\"/\")[0]];\n }\n return 'Attach';\n }\n\n const renderContent = () => {\n if (!formattedValue) {\n return <DefaultContentRenderer />\n }\n if (column.isPrimary && isNavigationEnabled) {\n const linkProps = componentProps.onGetLinkProps(getLinkProps());\n return <Link {...linkProps}>{linkProps.children}</Link>\n }\n switch (dataType) {\n case DataTypes.SingleLineEmail:\n case DataTypes.SingleLinePhone:\n case DataTypes.SingleLineUrl:\n case DataTypes.LookupCustomer:\n case DataTypes.LookupOwner:\n case DataTypes.LookupSimple:\n case DataTypes.LookupRegarding: {\n if(isNavigationEnabled) {\n const linkProps = componentProps.onGetLinkProps(getLinkProps());\n return <Link {...linkProps}>{linkProps.children}</Link>\n }\n return <DefaultContentRenderer />\n }\n case DataTypes.OptionSet:\n case DataTypes.MultiSelectOptionSet:\n case DataTypes.TwoOptions: {\n return <OptionSet context={props.context} parameters={{ ...props.parameters }} />\n }\n case DataTypes.File:\n case DataTypes.Image: {\n return renderFileLink(dataType === 'Image');\n }\n }\n return <DefaultContentRenderer />\n }\n\n const shouldUsePortalDownload = () => {\n const isFetchXmlDataProvider = dataset.getDataProvider() instanceof FetchXmlDataProvider;\n //only use portal download if within portal, uses fetch xml provider and is not virtual column\n if(client.isTalxisPortal() && isFetchXmlDataProvider && !column.name.endsWith('__virtual')) {\n return true;\n }\n return false;\n }\n\n const renderFileLink = (isImage?: boolean) => {\n const linkProps = componentProps.onGetLinkProps(getLinkProps());\n return (<div {...componentProps.fileProps.containerProps}>\n {!downloadInProgress &&\n <>\n {!isImage &&\n <Icon {...componentProps.fileProps.iconProps} iconName={componentProps.fileProps.iconProps.onGetIconName(getIconNameForMimeType(value.mimeType))} />\n }\n {isImage &&\n <Image {...componentProps.fileProps.imageProps} src={getThumbnailUrl()} />\n }\n </>\n }\n {downloadInProgress &&\n <Spinner {...componentProps.fileProps.loadingProps.spinnerProps} />\n }\n <Link {...linkProps}>{linkProps.children}</Link>\n </div>);\n }\n\n const getIconProps = (json?: string | null): IIconProps | undefined => {\n if (!json) {\n return undefined;\n }\n return JSON.parse(json);\n }\n\n const getThumbnailUrl = () => {\n let src = value.thumbnailUrl;\n if (client.isTalxisPortal()) {\n src = `data:${value.mimeType};base64,${value.fileContent}`\n }\n return componentProps.fileProps.imageProps.onGetSrc(src);\n }\n\n const downloadPortalFile = async (e: React.MouseEvent<HTMLAnchorElement | HTMLElement | HTMLButtonElement, MouseEvent>) => {\n e.preventDefault();\n setIsDownloadInProgress(true);\n const storage = new FileAttribute(context.webAPI);\n let entityName = dataset.getTargetEntityType();\n let recordId = record.getRecordId();\n let attributeName = Attribute.GetNameFromAlias(column.name);\n const entityAliasName = Attribute.GetLinkedEntityAlias(column.name);\n\n if (entityAliasName) {\n entityName = dataset.linking.getLinkedEntities().find(x => x.alias === entityAliasName)!.name;\n const entityMetadata = await context.utils.getEntityMetadata(entityName, []);\n recordId = record.getRawData()![`${entityAliasName}.${entityMetadata.PrimaryIdAttribute}`];\n }\n await storage.downloadFileFromAttribute({\n entityName: entityName,\n recordId: recordId,\n fileAttribute: attributeName\n }, true, undefined, {\n fileName: value.fileName,\n fileSizeInBytes: value.fileSize\n })\n setIsDownloadInProgress(false);\n }\n\n const componentProps = onOverrideComponentProps({\n onGetLinkProps: (props) => props,\n onGetOptionSetProps: (props) => props,\n onRenderContent: (defaultRenderer) => defaultRenderer(),\n rootContainerProps: {\n theme: theme,\n className: styles.root\n },\n contentWrapperProps: {\n className: styles.contentWrapper,\n },\n textProps: {\n className: getClassNames([defaultContentRendererStyles.content, !formattedValue ? defaultContentRendererStyles.placeholder : undefined]),\n title: formattedValue,\n children: column.type === 'action' ? '' : (formattedValue || '---')\n },\n fileProps: {\n containerProps: {\n className: styles.fileWrapper\n },\n iconProps: {\n className: styles.fileIcon,\n onGetIconName: (iconName) => iconName\n },\n imageProps: {\n className: styles.fileImage,\n onGetSrc: (src) => src\n },\n loadingProps: {\n spinnerProps: {\n size: SpinnerSize.small,\n styles: {\n circle: styles.loadingSpinnerCircle\n }\n }\n }\n }\n });\n\n const componentPropsProviderValue = useMemo(() => {\n return {\n current: componentProps\n }\n }, []);\n componentPropsProviderValue.current = componentProps;\n\n //this allows to add prefix/sufix icon without the need of cell customizer\n //it can cover a lot of cases where otherwise custom PCF would be needed\n const prefixIconProps = getIconProps(prefixIcon);\n const suffixIconProps = getIconProps(suffixIcon)\n\n return <ThemeProvider {...componentProps.rootContainerProps}>\n <ComponentPropsContext.Provider value={componentPropsProviderValue}>\n {prefixIconProps && <Icon {...prefixIconProps} className={getClassNames([prefixIconProps.className, styles.icon])} />}\n <div {...componentProps.contentWrapperProps}>\n {componentProps.onRenderContent(() => renderContent())}\n </div>\n {suffixIconProps && <Icon {...suffixIconProps} className={getClassNames([suffixIconProps.className, styles.icon])} />}\n </ComponentPropsContext.Provider>\n </ThemeProvider>\n}\n\n\n"],"names":["_jsx","_jsxs","_Fragment"],"mappings":"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"}
|