@talxis/base-controls 1.2410.6 → 1.2411.2
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 +5 -3
- package/dist/components/DatasetControl/DatasetControl.js.map +1 -1
- package/dist/components/Grid/Grid.js.map +1 -1
- package/dist/components/Grid/core/components/AgGrid/AgGrid.d.ts +2 -0
- package/dist/components/Grid/core/components/AgGrid/AgGrid.js +141 -27
- package/dist/components/Grid/core/components/AgGrid/AgGrid.js.map +1 -1
- package/dist/components/Grid/core/components/AgGrid/components/LoadingOverlay/LoadingOverlay.js +3 -4
- package/dist/components/Grid/core/components/AgGrid/components/LoadingOverlay/LoadingOverlay.js.map +1 -1
- package/dist/components/Grid/core/components/AgGrid/model/AgGrid.js +19 -7
- package/dist/components/Grid/core/components/AgGrid/model/AgGrid.js.map +1 -1
- package/dist/components/Grid/core/components/Cell/EditableCell/EditableCell.d.ts +3 -3
- package/dist/components/Grid/core/components/Cell/EditableCell/EditableCell.js +32 -96
- package/dist/components/Grid/core/components/Cell/EditableCell/EditableCell.js.map +1 -1
- package/dist/components/Grid/core/components/Cell/ReadOnlyCell/Notifications/Notifications.js +23 -22
- package/dist/components/Grid/core/components/Cell/ReadOnlyCell/Notifications/Notifications.js.map +1 -1
- package/dist/components/Grid/core/components/Cell/ReadOnlyCell/ReadOnlyCell.js +41 -36
- package/dist/components/Grid/core/components/Cell/ReadOnlyCell/ReadOnlyCell.js.map +1 -1
- package/dist/components/Grid/core/components/Cell/ReadOnlyCell/styles.d.ts +5 -0
- package/dist/components/Grid/core/components/Cell/ReadOnlyCell/styles.js +21 -3
- package/dist/components/Grid/core/components/Cell/ReadOnlyCell/styles.js.map +1 -1
- package/dist/components/Grid/core/components/Component/Component.d.ts +2 -2
- package/dist/components/Grid/core/components/Component/Component.js.map +1 -1
- package/dist/components/Grid/core/components/Component/model/Component.d.ts +1 -0
- package/dist/components/Grid/core/components/Component/model/Component.js +57 -20
- package/dist/components/Grid/core/components/Component/model/Component.js.map +1 -1
- package/dist/components/Grid/core/components/Save/Save.js +33 -20
- package/dist/components/Grid/core/components/Save/Save.js.map +1 -1
- package/dist/components/Grid/core/components/Save/components/ChangeEditor/ChangeEditor.d.ts +5 -1
- package/dist/components/Grid/core/components/Save/components/ChangeEditor/ChangeEditor.js +46 -15
- package/dist/components/Grid/core/components/Save/components/ChangeEditor/ChangeEditor.js.map +1 -1
- package/dist/components/Grid/core/components/Save/components/ChangeEditor/components/ChangeGrid/ChangeGrid.d.ts +10 -0
- package/dist/components/Grid/core/components/Save/components/ChangeEditor/components/ChangeGrid/ChangeGrid.js +187 -0
- package/dist/components/Grid/core/components/Save/components/ChangeEditor/components/ChangeGrid/ChangeGrid.js.map +1 -0
- package/dist/components/Grid/core/components/Save/components/ChangeEditor/components/ChangeGrid/styles.d.ts +39 -0
- package/dist/components/Grid/core/components/Save/components/ChangeEditor/components/ChangeGrid/styles.js +45 -0
- package/dist/components/Grid/core/components/Save/components/ChangeEditor/components/ChangeGrid/styles.js.map +1 -0
- package/dist/components/Grid/core/components/Save/styles.d.ts +2 -4
- package/dist/components/Grid/core/components/Save/styles.js +2 -4
- package/dist/components/Grid/core/components/Save/styles.js.map +1 -1
- package/dist/components/Grid/core/model/Grid.d.ts +1 -2
- package/dist/components/Grid/core/model/Grid.js +11 -9
- package/dist/components/Grid/core/model/Grid.js.map +1 -1
- package/dist/components/Grid/core/services/KeyListener.d.ts +2 -0
- package/dist/components/Grid/core/services/KeyListener.js +6 -0
- package/dist/components/Grid/core/services/KeyListener.js.map +1 -1
- package/dist/components/Grid/filtering/components/FilterCallout/components/ConditionOperator/ConditionOperator.js +0 -2
- package/dist/components/Grid/filtering/components/FilterCallout/components/ConditionOperator/ConditionOperator.js.map +1 -1
- package/dist/components/Grid/filtering/components/FilterCallout/components/ConditionValue/ConditionValue.js +45 -1
- package/dist/components/Grid/filtering/components/FilterCallout/components/ConditionValue/ConditionValue.js.map +1 -1
- package/dist/components/Grid/filtering/components/FilterCallout/components/ConditionValue/model/ConditionComponentValue.js +4 -1
- package/dist/components/Grid/filtering/components/FilterCallout/components/ConditionValue/model/ConditionComponentValue.js.map +1 -1
- package/dist/components/Grid/filtering/model/Condition.js +19 -4
- package/dist/components/Grid/filtering/model/Condition.js.map +1 -1
- package/dist/components/Grid/interfaces.d.ts +4 -1
- package/dist/components/Grid/paging/components/Paging/Paging.js +6 -5
- package/dist/components/Grid/paging/components/Paging/Paging.js.map +1 -1
- package/dist/components/Grid/translations.d.ts +36 -0
- package/dist/components/Grid/translations.js +11 -2
- package/dist/components/Grid/translations.js.map +1 -1
- package/dist/components/TextField/TextField.js +14 -5
- package/dist/components/TextField/TextField.js.map +1 -1
- package/dist/hooks/useControl.js +3 -2
- package/dist/hooks/useControl.js.map +1 -1
- package/dist/hooks/useRerender.js.map +1 -0
- package/dist/index.d.ts +39 -0
- package/package.json +4 -4
- package/dist/components/DatasetControl/hooks/useRerender.js.map +0 -1
- package/dist/components/Grid/core/components/AgGrid/components/LoadingOverlay/styles.d.ts +0 -44
- package/dist/components/Grid/core/components/AgGrid/components/LoadingOverlay/styles.js +0 -82
- package/dist/components/Grid/core/components/AgGrid/components/LoadingOverlay/styles.js.map +0 -1
- package/dist/components/Grid/core/components/AgGrid/controllers/useAgGridController.d.ts +0 -20
- package/dist/components/Grid/core/components/AgGrid/controllers/useAgGridController.js +0 -173
- package/dist/components/Grid/core/components/AgGrid/controllers/useAgGridController.js.map +0 -1
- package/dist/components/Grid/core/components/Save/components/ChangeEditor/components/RecordGrids/RecordGrids.d.ts +0 -7
- package/dist/components/Grid/core/components/Save/components/ChangeEditor/components/RecordGrids/RecordGrids.js +0 -144
- package/dist/components/Grid/core/components/Save/components/ChangeEditor/components/RecordGrids/RecordGrids.js.map +0 -1
- package/dist/components/Grid/core/components/Save/components/ChangeEditor/components/RecordGrids/styles.d.ts +0 -48
- package/dist/components/Grid/core/components/Save/components/ChangeEditor/components/RecordGrids/styles.js +0 -54
- package/dist/components/Grid/core/components/Save/components/ChangeEditor/components/RecordGrids/styles.js.map +0 -1
- package/dist/components/Grid/core/components/Save/hooks/useSave.d.ts +0 -12
- package/dist/components/Grid/core/components/Save/hooks/useSave.js +0 -45
- package/dist/components/Grid/core/components/Save/hooks/useSave.js.map +0 -1
- package/dist/components/Grid/core/constants.d.ts +0 -1
- package/dist/components/Grid/core/constants.js +0 -4
- package/dist/components/Grid/core/constants.js.map +0 -1
- package/dist/components/Grid/core/hooks/useRerender.d.ts +0 -1
- package/dist/components/Grid/core/services/RecordUpdateService/controllers/useRecordUpdateServiceController.d.ts +0 -14
- package/dist/components/Grid/core/services/RecordUpdateService/controllers/useRecordUpdateServiceController.js +0 -25
- package/dist/components/Grid/core/services/RecordUpdateService/controllers/useRecordUpdateServiceController.js.map +0 -1
- package/dist/components/Grid/core/services/RecordUpdateService/model/RecordUpdateService.d.ts +0 -30
- package/dist/components/Grid/core/services/RecordUpdateService/model/RecordUpdateService.js +0 -186
- package/dist/components/Grid/core/services/RecordUpdateService/model/RecordUpdateService.js.map +0 -1
- package/dist/components/Grid/validation/controllers/useRecordValidationController.d.ts +0 -8
- package/dist/components/Grid/validation/controllers/useRecordValidationController.js +0 -25
- package/dist/components/Grid/validation/controllers/useRecordValidationController.js.map +0 -1
- package/dist/components/Grid/validation/model/ColumnValidation.d.ts +0 -11
- package/dist/components/Grid/validation/model/ColumnValidation.js +0 -90
- package/dist/components/Grid/validation/model/ColumnValidation.js.map +0 -1
- /package/dist/{components/DatasetControl/hooks → hooks}/useRerender.d.ts +0 -0
- /package/dist/{components/DatasetControl/hooks → hooks}/useRerender.js +0 -0
package/dist/components/Grid/core/services/RecordUpdateService/model/RecordUpdateService.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"RecordUpdateService.js","sources":["../../../../../../../src/components/Grid/core/services/RecordUpdateService/model/RecordUpdateService.ts"],"sourcesContent":["import equal from \"fast-deep-equal/es6\";\nimport { cloneDeep } from \"lodash\";\nimport numeral from \"numeral\";\nimport { ColumnValidation } from \"../../../../validation/model/ColumnValidation\";\nimport { DataType } from \"../../../enums/DataType\";\nimport { Grid } from \"../../../model/Grid\";\nimport { GridDependency } from \"../../../model/GridDependency\";\nimport { IColumn, IRecord, Numeral } from \"@talxis/client-libraries\";\n\nexport interface IUpdatedRecord extends Omit<IRecord, 'save'> {\n columns: Map<string, IColumn>,\n isValid: (columnName: string) => boolean,\n getOriginalValue: (columnName: string) => any;\n getOriginalFormattedValue: (columnName: string) => any;\n getOriginalFormattedPrimaryNameValue: () => any;\n save: () => Promise<boolean>,\n clear: () => void;\n}\n\nexport class RecordUpdateService extends GridDependency {\n private _updatedRecords: Map<string, IUpdatedRecord> = new Map();\n private _internalRecordMap: Map<string, IRecord> = new Map();\n\n constructor(grid: Grid) {\n super(grid);\n const updatedRecordsFromState: IUpdatedRecord[] | undefined = this._grid.state?.['__updatedRecords'];\n //@ts-ignore - getRecordId could be undefined if it comes from serialized state\n if(updatedRecordsFromState && updatedRecordsFromState?.length > 0 && updatedRecordsFromState[0].getRecordId) {\n this._updatedRecords = new Map(updatedRecordsFromState.map(x => {\n const originalClear = x.clear;\n const originalSetValue = x.setValue;\n const originalSave = x.save;\n x.clear = () => {\n this._updatedRecords.delete(x.getRecordId());\n originalClear();\n this._pcfContext.factory.requestRender();\n }\n x.save = async () => {\n const result = await originalSave();\n if(result) {\n this._updatedRecords.delete(x.getRecordId());\n }\n [...x.columns.values()].map(col => {\n this._internalRecordMap.get(x.getRecordId())?.setValue(col.name, x.getValue(col.name));\n })\n return result;\n }\n x.setValue = (columnName: string, value: any) => {\n originalSetValue(columnName, value);\n this._pcfContext.factory.requestRender();\n }\n return [x.getRecordId(), x]\n }))\n }\n }\n\n public get updatedRecords() {\n if (this._isReadOnlyChangeEditor() && this._updatedRecords.size === 0) {\n const record = this._grid.records[0];\n for (const column of this._grid.columns) {\n this.record(record.getRecordId()).setValue(column.name, record.getValue(column.name), true);\n }\n }\n return [...this._updatedRecords.values()];\n }\n\n public get isDirty() {\n return this._updatedRecords.size > 0;\n }\n\n public get hasInvalidRecords() {\n return [...this._updatedRecords.values()].find(x => {\n for(const column of x.columns.values()) {\n if(!x.isValid(column.name)) {\n return true;\n }\n }\n return false;\n }) ? true : false;\n }\n\n public record(recordId: string) {\n return {\n get: () => this._updatedRecords.get(recordId),\n setValue: (columnName: string, value: any, doNotPropagateToDatasetRecord?: boolean) => {\n if(!doNotPropagateToDatasetRecord && this._isEqual(columnName, this._internalRecordMap.get(recordId)!.getValue(columnName), value)) {\n return;\n }\n const updatedRecord = this._updatedRecords.get(recordId);\n if (!updatedRecord) {\n const deepCopiedRecord = cloneDeep(this._internalRecordMap.get(recordId)!);\n this._updatedRecords.set(recordId, {\n columns: new Map([[columnName, this._getColumnByName(columnName)]]),\n getRecordId: () => recordId,\n getValue: (columnName: string) => this._internalRecordMap.get(recordId)?.getValue(columnName)!,\n getFormattedValue: (columnName: string) => this._internalRecordMap.get(recordId)?.getFormattedValue(columnName)!,\n getNamedReference: () => deepCopiedRecord.getNamedReference(),\n getOriginalValue: (columnName: string) => deepCopiedRecord.getValue(columnName),\n getOriginalFormattedValue: (columnName: string) => deepCopiedRecord.getFormattedValue(columnName),\n getOriginalFormattedPrimaryNameValue: () => {\n let primaryColumn = this._dataset.columns.find(x => x.isPrimary);\n if(!primaryColumn) {\n primaryColumn = this._dataset.columns[0];\n }\n let value = deepCopiedRecord.getFormattedValue(primaryColumn.name);\n if(!value) {\n value = this._grid.labels[\"no-name\"]();\n }\n return value;\n },\n setValue: (columnName: string, value: any) => {\n this._internalRecordMap.get(recordId)?.setValue(columnName, value);\n this._pcfContext.factory.requestRender()\n },\n isValid: (columnName: string) => {\n const column = this._grid.columns.find(x => x.name === columnName);\n if(!column) {\n return true;\n }\n const [result, message] = new ColumnValidation(this._grid, column).validate(this._internalRecordMap.get(recordId)?.getValue(columnName)!)\n return result;\n },\n clear: () => {\n const updatedRecord = this._updatedRecords.get(recordId);\n const columns = [...updatedRecord!.columns.values()];\n this._updatedRecords.delete(recordId);\n for(const column of columns) {\n this._internalRecordMap.get(recordId)?.setValue(column.name, deepCopiedRecord.getValue(column.name));\n }\n },\n save: async () => {\n try {\n await this._internalRecordMap.get(recordId)?.save();\n this._updatedRecords.delete(recordId);\n }\n catch (err) {\n this._grid.pcfContext.navigation.openErrorDialog({\n message: 'An error occurred during saving. Some of you changes might now have been saved.',\n //@ts-ignore\n details: err.message\n })\n return false;\n }\n return true;\n }\n } as any)\n }\n else {\n updatedRecord.columns.set(columnName, this._getColumnByName(columnName))\n }\n if (!doNotPropagateToDatasetRecord) {\n const updatedRecord = this._updatedRecords.get(recordId);\n updatedRecord?.setValue(columnName, value);\n }\n }\n }\n }\n\n public async saveAll(): Promise<boolean> {\n const savePromises: Promise<boolean>[] = [];\n for (const record of this._updatedRecords.values()) {\n savePromises.push(record.save());\n }\n const result = await Promise.all(savePromises);\n return !result.find(x => x === false)\n }\n public async clearAll() {\n for (const record of this._updatedRecords.values()) {\n record.clear();\n }\n this._pcfContext.factory.requestRender();\n }\n\n public onDependenciesUpdated(): void {\n for (const [recordId, record] of Object.entries(this._grid.dataset.records)) {\n this._internalRecordMap.set(recordId, record);\n }\n }\n private _getColumnByName(columnName: string) {\n return this._grid.columns.find(x => x.name === columnName)!;\n }\n private _isReadOnlyChangeEditor() {\n return this._grid.props.parameters.ChangeEditorMode?.raw === 'read';\n }\n private _isEqual(columnName: string, oldValue: any, newValue: any) {\n const column = this._grid.columns.find(x => x.name === columnName);\n //skip in special case for currency\n //PCF has no info about the currency, which sometimes make it to ouput change\n if(column?.dataType === DataType.CURRENCY) {\n Numeral.currency(this._grid.pcfContext.userSettings.numberFormattingInfo);\n newValue = numeral(newValue).value();\n if(newValue === oldValue) {\n return true\n }\n\n }\n if(oldValue == newValue) {\n return true;\n }\n return equal(oldValue, newValue);\n }\n}"],"names":[],"mappings":"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"}
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
import { IGridColumn } from "../../core/interfaces/IGridColumn";
|
|
2
|
-
import { IRecord } from "@talxis/client-libraries";
|
|
3
|
-
interface IRecordValidation {
|
|
4
|
-
column: IGridColumn;
|
|
5
|
-
record: IRecord;
|
|
6
|
-
}
|
|
7
|
-
export declare const useColumnValidationController: (props: IRecordValidation) => [boolean, string];
|
|
8
|
-
export {};
|
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
import { useMemo, useState, useEffect } from 'react';
|
|
2
|
-
import { useGridInstance } from '../../core/hooks/useGridInstance.js';
|
|
3
|
-
import { ColumnValidation } from '../model/ColumnValidation.js';
|
|
4
|
-
|
|
5
|
-
const useColumnValidationController = (props) => {
|
|
6
|
-
const grid = useGridInstance();
|
|
7
|
-
const column = props.column;
|
|
8
|
-
const record = props.record;
|
|
9
|
-
const columnValidation = useMemo(() => { return new ColumnValidation(grid, column); }, []);
|
|
10
|
-
const [isValid, setIsValid] = useState(true);
|
|
11
|
-
const [errorMessage, setErrorMessage] = useState("");
|
|
12
|
-
useEffect(() => {
|
|
13
|
-
if (!column.isEditable) {
|
|
14
|
-
//we are not doing validation for non-editable columns
|
|
15
|
-
return;
|
|
16
|
-
}
|
|
17
|
-
const [isValid, errorMessage] = columnValidation.validate(record.getValue(column.name));
|
|
18
|
-
setIsValid(isValid);
|
|
19
|
-
setErrorMessage(errorMessage);
|
|
20
|
-
}, [record.getValue(column.name)]);
|
|
21
|
-
return [isValid, errorMessage];
|
|
22
|
-
};
|
|
23
|
-
|
|
24
|
-
export { useColumnValidationController };
|
|
25
|
-
//# sourceMappingURL=useRecordValidationController.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"useRecordValidationController.js","sources":["../../../../../src/components/Grid/validation/controllers/useRecordValidationController.ts"],"sourcesContent":["import { useEffect, useMemo, useState } from \"react\";\nimport { useGridInstance } from \"../../core/hooks/useGridInstance\";\nimport { IGridColumn } from \"../../core/interfaces/IGridColumn\";\nimport { ColumnValidation } from \"../model/ColumnValidation\";\nimport { IRecord } from \"@talxis/client-libraries\";\n\ninterface IRecordValidation {\n column: IGridColumn;\n record: IRecord;\n}\n\nexport const useColumnValidationController = (props: IRecordValidation): [boolean, string] => {\n const grid = useGridInstance();\n const column = props.column;\n const record = props.record;\n const columnValidation = useMemo(() => {return new ColumnValidation(grid, column)}, []);\n\n const [isValid, setIsValid] = useState<boolean>(true);\n const [errorMessage, setErrorMessage] = useState<string>(\"\");\n\n useEffect(() => {\n if(!column.isEditable) {\n //we are not doing validation for non-editable columns\n return;\n }\n const [isValid, errorMessage] = columnValidation.validate(record.getValue(column.name));\n setIsValid(isValid);\n setErrorMessage(errorMessage);\n }, [record.getValue(column.name)]);\n\n return [isValid, errorMessage];\n}"],"names":[],"mappings":";;;;AAWa,MAAA,6BAA6B,GAAG,CAAC,KAAwB,KAAuB;AACzF,IAAA,MAAM,IAAI,GAAG,eAAe,EAAE,CAAC;AAC/B,IAAA,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC;AAC5B,IAAA,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC;IAC5B,MAAM,gBAAgB,GAAG,OAAO,CAAC,MAAK,EAAE,OAAO,IAAI,gBAAgB,CAAC,IAAI,EAAE,MAAM,CAAC,CAAA,EAAC,EAAE,EAAE,CAAC,CAAC;IAExF,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,QAAQ,CAAU,IAAI,CAAC,CAAC;IACtD,MAAM,CAAC,YAAY,EAAE,eAAe,CAAC,GAAG,QAAQ,CAAS,EAAE,CAAC,CAAC;IAE7D,SAAS,CAAC,MAAK;AACX,QAAA,IAAG,CAAC,MAAM,CAAC,UAAU,EAAE;;YAEnB,OAAO;AACV,SAAA;AACD,QAAA,MAAM,CAAC,OAAO,EAAE,YAAY,CAAC,GAAG,gBAAgB,CAAC,QAAQ,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;QACxF,UAAU,CAAC,OAAO,CAAC,CAAC;QACpB,eAAe,CAAC,YAAY,CAAC,CAAC;AAClC,KAAC,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAEnC,IAAA,OAAO,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC;AACnC;;;;"}
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
import { IGridColumn } from "../../core/interfaces/IGridColumn";
|
|
2
|
-
import { GridDependency } from "../../core/model/GridDependency";
|
|
3
|
-
import { Grid } from "../../core/model/Grid";
|
|
4
|
-
export declare class ColumnValidation extends GridDependency {
|
|
5
|
-
private _column;
|
|
6
|
-
private _forceNullCheck;
|
|
7
|
-
constructor(grid: Grid, column: IGridColumn, forceNullCheck?: boolean);
|
|
8
|
-
validate(value: any): [boolean, string];
|
|
9
|
-
private _isNull;
|
|
10
|
-
private get _labels();
|
|
11
|
-
}
|
|
@@ -1,90 +0,0 @@
|
|
|
1
|
-
import isEmail from 'validator/es/lib/isEmail';
|
|
2
|
-
import isURL from 'validator/es/lib/isURL';
|
|
3
|
-
import dayjs from 'dayjs';
|
|
4
|
-
import { DataType } from '../../core/enums/DataType.js';
|
|
5
|
-
import { GridDependency } from '../../core/model/GridDependency.js';
|
|
6
|
-
|
|
7
|
-
class ColumnValidation extends GridDependency {
|
|
8
|
-
constructor(grid, column, forceNullCheck) {
|
|
9
|
-
super(grid);
|
|
10
|
-
this._column = column;
|
|
11
|
-
this._forceNullCheck = forceNullCheck ?? false;
|
|
12
|
-
}
|
|
13
|
-
validate(value) {
|
|
14
|
-
const isNull = this._isNull(value);
|
|
15
|
-
if ((this._column.isRequired || this._forceNullCheck)) {
|
|
16
|
-
if (isNull) {
|
|
17
|
-
return [false, this._labels["validation-input-value"]()];
|
|
18
|
-
}
|
|
19
|
-
}
|
|
20
|
-
//can be null
|
|
21
|
-
else if (isNull) {
|
|
22
|
-
return [true, ""];
|
|
23
|
-
}
|
|
24
|
-
switch (this._column.dataType) {
|
|
25
|
-
case DataType.WHOLE_NONE:
|
|
26
|
-
case DataType.DECIMAL:
|
|
27
|
-
case DataType.CURRENCY:
|
|
28
|
-
case DataType.WHOLE_DURATION: {
|
|
29
|
-
if (typeof value === 'string') {
|
|
30
|
-
return [false, this._labels["validation-number"]()];
|
|
31
|
-
}
|
|
32
|
-
break;
|
|
33
|
-
}
|
|
34
|
-
case DataType.SINGLE_LINE_EMAIL: {
|
|
35
|
-
value = `${value}`;
|
|
36
|
-
if (!isEmail(value)) {
|
|
37
|
-
return [false, this._labels["validation-email"]()];
|
|
38
|
-
}
|
|
39
|
-
break;
|
|
40
|
-
}
|
|
41
|
-
case DataType.OPTIONSET: {
|
|
42
|
-
if (typeof value === 'number') {
|
|
43
|
-
return [true, ""];
|
|
44
|
-
}
|
|
45
|
-
break;
|
|
46
|
-
}
|
|
47
|
-
case DataType.SINGLE_LINE_URL: {
|
|
48
|
-
value = `${value}`;
|
|
49
|
-
if (!isURL(value)) {
|
|
50
|
-
return [false, this._labels["validation-url"]()];
|
|
51
|
-
}
|
|
52
|
-
break;
|
|
53
|
-
}
|
|
54
|
-
case DataType.DATE_AND_TIME_DATE_AND_TIME:
|
|
55
|
-
case DataType.DATE_AND_TIME_DATE_ONLY: {
|
|
56
|
-
const date = dayjs(value);
|
|
57
|
-
if (!date.isValid()) {
|
|
58
|
-
return [false, this._labels["validation-date"]()];
|
|
59
|
-
}
|
|
60
|
-
break;
|
|
61
|
-
}
|
|
62
|
-
default: {
|
|
63
|
-
if (!value) {
|
|
64
|
-
return [false, this._labels["validation-input-value"]()];
|
|
65
|
-
}
|
|
66
|
-
}
|
|
67
|
-
}
|
|
68
|
-
return [true, ""];
|
|
69
|
-
}
|
|
70
|
-
_isNull(value) {
|
|
71
|
-
if (value === undefined) {
|
|
72
|
-
return true;
|
|
73
|
-
}
|
|
74
|
-
if (value === null) {
|
|
75
|
-
return true;
|
|
76
|
-
}
|
|
77
|
-
if (value === "") {
|
|
78
|
-
return true;
|
|
79
|
-
}
|
|
80
|
-
if (value?.length === 0) {
|
|
81
|
-
return true;
|
|
82
|
-
}
|
|
83
|
-
}
|
|
84
|
-
get _labels() {
|
|
85
|
-
return this._grid.labels;
|
|
86
|
-
}
|
|
87
|
-
}
|
|
88
|
-
|
|
89
|
-
export { ColumnValidation };
|
|
90
|
-
//# sourceMappingURL=ColumnValidation.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ColumnValidation.js","sources":["../../../../../src/components/Grid/validation/model/ColumnValidation.ts"],"sourcesContent":["import isEmail from \"validator/es/lib/isEmail\";\nimport isURL from \"validator/es/lib/isURL\";\nimport dayjs from \"dayjs\";\nimport { DataType } from \"../../core/enums/DataType\";\nimport { IGridColumn } from \"../../core/interfaces/IGridColumn\";\nimport { GridDependency } from \"../../core/model/GridDependency\";\nimport { Grid } from \"../../core/model/Grid\";\n\nexport class ColumnValidation extends GridDependency {\n private _column: IGridColumn;\n private _forceNullCheck: boolean;\n\n constructor(grid: Grid, column: IGridColumn, forceNullCheck?: boolean) {\n super(grid);\n this._column = column;\n this._forceNullCheck = forceNullCheck ?? false;\n }\n public validate(value: any): [boolean, string] {\n const isNull = this._isNull(value);\n if ((this._column.isRequired || this._forceNullCheck)) {\n if (isNull) {\n return [false, this._labels[\"validation-input-value\"]()]\n }\n }\n //can be null\n else if (isNull) {\n return [true, \"\"]\n }\n switch (this._column.dataType) {\n case DataType.WHOLE_NONE:\n case DataType.DECIMAL:\n case DataType.CURRENCY:\n case DataType.WHOLE_DURATION: {\n if (typeof value === 'string') {\n return [false, this._labels[\"validation-number\"]()]\n }\n break;\n }\n case DataType.SINGLE_LINE_EMAIL: {\n value = `${value}`;\n if (!isEmail(value)) {\n return [false, this._labels[\"validation-email\"]()]\n }\n break;\n }\n case DataType.OPTIONSET: {\n if(typeof value === 'number') {\n return [true, \"\"];\n }\n break;\n }\n case DataType.SINGLE_LINE_URL: {\n value = `${value}`;\n if (!isURL(value)) {\n return [false, this._labels[\"validation-url\"]()]\n }\n break;\n }\n case DataType.DATE_AND_TIME_DATE_AND_TIME:\n case DataType.DATE_AND_TIME_DATE_ONLY: {\n const date = dayjs(value);\n if (!date.isValid()) {\n return [false, this._labels[\"validation-date\"]()]\n }\n break;\n }\n default: {\n if (!value) {\n return [false, this._labels[\"validation-input-value\"]()]\n }\n }\n }\n return [true, \"\"];\n }\n private _isNull(value: any) {\n if(value === undefined) {\n return true;\n }\n if (value === null) {\n return true;\n }\n if(value === \"\") {\n return true;\n }\n if(value?.length === 0) {\n return true;\n }\n }\n private get _labels() {\n return this._grid.labels;\n }\n}"],"names":[],"mappings":";;;;;;AAQM,MAAO,gBAAiB,SAAQ,cAAc,CAAA;AAIhD,IAAA,WAAA,CAAY,IAAU,EAAE,MAAmB,EAAE,cAAwB,EAAA;QACjE,KAAK,CAAC,IAAI,CAAC,CAAC;AACZ,QAAA,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;AACtB,QAAA,IAAI,CAAC,eAAe,GAAG,cAAc,IAAI,KAAK,CAAC;KAClD;AACM,IAAA,QAAQ,CAAC,KAAU,EAAA;QACtB,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QACnC,KAAK,IAAI,CAAC,OAAO,CAAC,UAAU,IAAI,IAAI,CAAC,eAAe,GAAG;AACnD,YAAA,IAAI,MAAM,EAAE;gBACR,OAAO,CAAC,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,wBAAwB,CAAC,EAAE,CAAC,CAAA;AAC3D,aAAA;AACJ,SAAA;;AAEI,aAAA,IAAI,MAAM,EAAE;AACb,YAAA,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAA;AACpB,SAAA;AACD,QAAA,QAAQ,IAAI,CAAC,OAAO,CAAC,QAAQ;YACzB,KAAK,QAAQ,CAAC,UAAU,CAAC;YACzB,KAAK,QAAQ,CAAC,OAAO,CAAC;YACtB,KAAK,QAAQ,CAAC,QAAQ,CAAC;AACvB,YAAA,KAAK,QAAQ,CAAC,cAAc,EAAE;AAC1B,gBAAA,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;oBAC3B,OAAO,CAAC,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,mBAAmB,CAAC,EAAE,CAAC,CAAA;AACtD,iBAAA;gBACD,MAAM;AACT,aAAA;AACD,YAAA,KAAK,QAAQ,CAAC,iBAAiB,EAAE;AAC7B,gBAAA,KAAK,GAAG,CAAA,EAAG,KAAK,CAAA,CAAE,CAAC;AACnB,gBAAA,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;oBACjB,OAAO,CAAC,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,kBAAkB,CAAC,EAAE,CAAC,CAAA;AACrD,iBAAA;gBACD,MAAM;AACT,aAAA;AACD,YAAA,KAAK,QAAQ,CAAC,SAAS,EAAE;AACrB,gBAAA,IAAG,OAAO,KAAK,KAAK,QAAQ,EAAE;AAC1B,oBAAA,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;AACrB,iBAAA;gBACD,MAAM;AACT,aAAA;AACD,YAAA,KAAK,QAAQ,CAAC,eAAe,EAAE;AAC3B,gBAAA,KAAK,GAAG,CAAA,EAAG,KAAK,CAAA,CAAE,CAAC;AACnB,gBAAA,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE;oBACf,OAAO,CAAC,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,EAAE,CAAC,CAAA;AACnD,iBAAA;gBACD,MAAM;AACT,aAAA;YACD,KAAK,QAAQ,CAAC,2BAA2B,CAAC;AAC1C,YAAA,KAAK,QAAQ,CAAC,uBAAuB,EAAE;AACnC,gBAAA,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC;AAC1B,gBAAA,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE;oBACjB,OAAO,CAAC,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,EAAE,CAAC,CAAA;AACpD,iBAAA;gBACD,MAAM;AACT,aAAA;AACD,YAAA,SAAS;gBACL,IAAI,CAAC,KAAK,EAAE;oBACR,OAAO,CAAC,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,wBAAwB,CAAC,EAAE,CAAC,CAAA;AAC3D,iBAAA;AACJ,aAAA;AACJ,SAAA;AACD,QAAA,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;KACrB;AACO,IAAA,OAAO,CAAC,KAAU,EAAA;QACtB,IAAG,KAAK,KAAK,SAAS,EAAE;AACpB,YAAA,OAAO,IAAI,CAAC;AACf,SAAA;QACD,IAAI,KAAK,KAAK,IAAI,EAAE;AAChB,YAAA,OAAO,IAAI,CAAC;AACf,SAAA;QACD,IAAG,KAAK,KAAK,EAAE,EAAE;AACb,YAAA,OAAO,IAAI,CAAC;AACf,SAAA;AACD,QAAA,IAAG,KAAK,EAAE,MAAM,KAAK,CAAC,EAAE;AACpB,YAAA,OAAO,IAAI,CAAC;AACf,SAAA;KACJ;AACD,IAAA,IAAY,OAAO,GAAA;AACf,QAAA,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC;KAC5B;AACJ;;;;"}
|
|
File without changes
|
|
File without changes
|