@ai-table/state 0.0.21 → 0.0.23
Sign up to get free protection for your applications and to get access to all the features.
- package/esm2022/types/view.mjs +1 -1
- package/esm2022/utils/common.mjs +2 -2
- package/esm2022/utils/field/model/index.mjs +3 -2
- package/esm2022/utils/field/model/link.mjs +37 -0
- package/esm2022/utils/field/model/rate.mjs +5 -3
- package/esm2022/utils/index.mjs +4 -4
- package/esm2022/utils/record/filter.mjs +23 -11
- package/fesm2022/ai-table-state.mjs +62 -15
- package/fesm2022/ai-table-state.mjs.map +1 -1
- package/package.json +1 -1
- package/types/view.d.ts +4 -1
- package/types/view.d.ts.map +1 -1
- package/utils/field/model/index.d.ts.map +1 -1
- package/utils/field/model/link.d.ts +10 -0
- package/utils/field/model/link.d.ts.map +1 -0
- package/utils/field/model/rate.d.ts.map +1 -1
- package/utils/index.d.ts +3 -3
- package/utils/index.d.ts.map +1 -1
- package/utils/record/filter.d.ts +5 -1
- package/utils/record/filter.d.ts.map +1 -1
package/esm2022/types/view.mjs
CHANGED
@@ -30,4 +30,4 @@ export var AITableFilterOperation;
|
|
30
30
|
AITableFilterOperation["exists"] = "exists";
|
31
31
|
AITableFilterOperation["notContain"] = "not_contain";
|
32
32
|
})(AITableFilterOperation || (AITableFilterOperation = {}));
|
33
|
-
//# sourceMappingURL=data:application/json;base64,
|
33
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmlldy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL3N0YXRlL3NyYy90eXBlcy92aWV3LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUdBLE1BQU0sT0FBTyxTQUFTO0NBRXJCO0FBRUQsTUFBTSxPQUFPLGVBQWU7Q0FFM0I7QUFjRCxNQUFNLENBQU4sSUFBWSxTQUlYO0FBSkQsV0FBWSxTQUFTO0lBQ2pCLCtDQUFXLENBQUE7SUFDWCxtREFBYSxDQUFBO0lBQ2Isc0RBQWUsQ0FBQTtBQUNuQixDQUFDLEVBSlcsU0FBUyxLQUFULFNBQVMsUUFJcEI7QUFFRCxNQUFNLENBQU4sSUFBWSxvQkFHWDtBQUhELFdBQVksb0JBQW9CO0lBQzVCLG1DQUFXLENBQUE7SUFDWCxpQ0FBUyxDQUFBO0FBQ2IsQ0FBQyxFQUhXLG9CQUFvQixLQUFwQixvQkFBb0IsUUFHL0I7QUFFRCxNQUFNLENBQU4sSUFBWSxzQkFlWDtBQWZELFdBQVksc0JBQXNCO0lBQzlCLG1DQUFTLENBQUE7SUFDVCxxQ0FBVyxDQUFBO0lBQ1gscUNBQVcsQ0FBQTtJQUNYLG1DQUFTLENBQUE7SUFDVCxtQ0FBUyxDQUFBO0lBQ1QsbUNBQVMsQ0FBQTtJQUNULDZDQUFtQixDQUFBO0lBQ25CLG1DQUFTLENBQUE7SUFDVCxxQ0FBVyxDQUFBO0lBQ1gsNkNBQW1CLENBQUE7SUFDbkIsNkNBQW1CLENBQUE7SUFDbkIseUNBQWUsQ0FBQTtJQUNmLDJDQUFpQixDQUFBO0lBQ2pCLG9EQUEwQixDQUFBO0FBQzlCLENBQUMsRUFmVyxzQkFBc0IsS0FBdEIsc0JBQXNCLFFBZWpDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQUlUYWJsZUZpZWxkLCBBSVRhYmxlUmVjb3JkIH0gZnJvbSAnQGFpLXRhYmxlL2dyaWQnO1xuaW1wb3J0IHsgSWQgfSBmcm9tICduZ3gtdGV0aHlzL3R5cGVzJztcblxuZXhwb3J0IGNsYXNzIFBvc2l0aW9ucyB7XG4gICAgW3ZpZXdfaWQ6IHN0cmluZ106IG51bWJlcjtcbn1cblxuZXhwb3J0IGNsYXNzIFJlbW92ZVBvc2l0aW9ucyB7XG4gICAgW3ZpZXdfaWQ6IHN0cmluZ106IHVuZGVmaW5lZDtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBBSVRhYmxlVmlld1JlY29yZCBleHRlbmRzIEFJVGFibGVSZWNvcmQge1xuICAgIHBvc2l0aW9uczogUG9zaXRpb25zO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEFJVGFibGVWaWV3RmllbGQgZXh0ZW5kcyBBSVRhYmxlRmllbGQge1xuICAgIHBvc2l0aW9uczogUG9zaXRpb25zO1xufVxuXG5leHBvcnQgdHlwZSBBSVRhYmxlVmlld1JlY29yZHMgPSBBSVRhYmxlVmlld1JlY29yZFtdO1xuXG5leHBvcnQgdHlwZSBBSVRhYmxlVmlld0ZpZWxkcyA9IEFJVGFibGVWaWV3RmllbGRbXTtcblxuZXhwb3J0IGVudW0gRGlyZWN0aW9uIHtcbiAgICBkZWZhdWx0ID0gMCxcbiAgICBhc2NlbmRpbmcgPSAxLFxuICAgIGRlc2NlbmRpbmcgPSAtMVxufVxuXG5leHBvcnQgZW51bSBBSVRhYmxlRmlsdGVyTG9naWNhbCB7XG4gICAgYW5kID0gJ2FuZCcsXG4gICAgb3IgPSAnb3InXG59XG5cbmV4cG9ydCBlbnVtIEFJVGFibGVGaWx0ZXJPcGVyYXRpb24ge1xuICAgIGVxID0gJ2VxJyxcbiAgICBndGUgPSAnZ3RlJyxcbiAgICBsdGUgPSAnbHRlJyxcbiAgICBndCA9ICdndCcsXG4gICAgbHQgPSAnbHQnLFxuICAgIGluID0gJ2luJyxcbiAgICBjb250YWluID0gJ2NvbnRhaW4nLFxuICAgIG5lID0gJ25lJyxcbiAgICBuaW4gPSAnbmluJyxcbiAgICBiZXR3ZWVuID0gJ2JldHdlZW4nLFxuICAgIGJlc2lkZXMgPSAnYmVzaWRlcycsXG4gICAgZW1wdHkgPSAnZW1wdHknLFxuICAgIGV4aXN0cyA9ICdleGlzdHMnLFxuICAgIG5vdENvbnRhaW4gPSAnbm90X2NvbnRhaW4nXG59XG5cbmV4cG9ydCB0eXBlIFZpZXdTZXR0aW5ncyA9IEFJVGFibGVTZWFyY2hPcHRpb25zICYgQUlUYWJsZUZpbHRlckNvbmRpdGlvbnMgJiBBSVRhYmxlU29ydE9wdGlvbnM7XG5cbmV4cG9ydCBpbnRlcmZhY2UgQUlUYWJsZVZpZXcge1xuICAgIF9pZDogc3RyaW5nO1xuICAgIHNob3J0X2lkOiBzdHJpbmc7XG4gICAgbmFtZTogc3RyaW5nO1xuICAgIGVtb2ppX2ljb24/OiBzdHJpbmc7XG4gICAgc2V0dGluZ3M/OiBWaWV3U2V0dGluZ3M7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQUlUYWJsZUZpbHRlckNvbmRpdGlvbjxUVmFsdWUgPSB1bmtub3duPiB7XG4gICAgZmllbGRfaWQ6IElkO1xuICAgIG9wZXJhdGlvbjogQUlUYWJsZUZpbHRlck9wZXJhdGlvbjtcbiAgICB2YWx1ZTogVFZhbHVlO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEFJVGFibGVGaWx0ZXJDb25kaXRpb25zPFRWYWx1ZSA9IHVua25vd24+IHtcbiAgICBjb25kaXRpb25fbG9naWNhbD86IEFJVGFibGVGaWx0ZXJMb2dpY2FsO1xuICAgIGNvbmRpdGlvbnM/OiBBSVRhYmxlRmlsdGVyQ29uZGl0aW9uPFRWYWx1ZT5bXTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBBSVRhYmxlU29ydE9wdGlvbnMge1xuICAgIGlzX2tlZXBfc29ydD86IGJvb2xlYW47XG4gICAgc29ydHM/OiB7XG4gICAgICAgIHNvcnRfYnk6IElkO1xuICAgICAgICBkaXJlY3Rpb246IERpcmVjdGlvbjtcbiAgICB9W107XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQUlUYWJsZVNlYXJjaE9wdGlvbnMge1xuICAgIGtleXdvcmRzPzogc3RyaW5nO1xufVxuXG5leHBvcnQgdHlwZSBBSVRhYmxlVmlld3MgPSBBSVRhYmxlVmlld1tdO1xuIl19
|
package/esm2022/utils/common.mjs
CHANGED
@@ -6,7 +6,7 @@ export function isEmpty(value) {
|
|
6
6
|
if (isObject(value)) {
|
7
7
|
return Reflect.ownKeys(value).length === 0;
|
8
8
|
}
|
9
|
-
return isUndefinedOrNull(value) || value
|
9
|
+
return isUndefinedOrNull(value) || value === '';
|
10
10
|
}
|
11
11
|
export function isPathEqual(path, another) {
|
12
12
|
return path.length === another.length && path.every((n, i) => n === another[i]);
|
@@ -18,4 +18,4 @@ export function sortByViewPosition(data, activeView) {
|
|
18
18
|
}
|
19
19
|
return data;
|
20
20
|
}
|
21
|
-
//# sourceMappingURL=data:application/json;base64,
|
21
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tbW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcGFja2FnZXMvc3RhdGUvc3JjL3V0aWxzL2NvbW1vbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsT0FBTyxJQUFJLFlBQVksRUFBRSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFHaEcsTUFBTSxVQUFVLE9BQU8sQ0FBQyxLQUFVO0lBQzlCLElBQUksT0FBTyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUM7UUFDakIsT0FBTyxZQUFZLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDL0IsQ0FBQztJQUVELElBQUksUUFBUSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUM7UUFDbEIsT0FBTyxPQUFPLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDLE1BQU0sS0FBSyxDQUFDLENBQUM7SUFDL0MsQ0FBQztJQUVELE9BQU8saUJBQWlCLENBQUMsS0FBSyxDQUFDLElBQUksS0FBSyxLQUFLLEVBQUUsQ0FBQztBQUNwRCxDQUFDO0FBRUQsTUFBTSxVQUFVLFdBQVcsQ0FBQyxJQUFVLEVBQUUsT0FBYTtJQUNqRCxPQUFPLElBQUksQ0FBQyxNQUFNLEtBQUssT0FBTyxDQUFDLE1BQU0sSUFBSSxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxLQUFLLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0FBQ3BGLENBQUM7QUFFRCxNQUFNLFVBQVUsa0JBQWtCLENBQUMsSUFBNEMsRUFBRSxVQUF1QjtJQUNwRyxNQUFNLFlBQVksR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsU0FBUyxJQUFJLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUM1RSxJQUFJLFlBQVksRUFBRSxDQUFDO1FBQ2YsT0FBTyxDQUFDLEdBQUcsSUFBSSxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztJQUMvRixDQUFDO0lBQ0QsT0FBTyxJQUFJLENBQUM7QUFDaEIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFBhdGggfSBmcm9tICdAYWktdGFibGUvZ3JpZCc7XG5pbXBvcnQgeyBpc1VuZGVmaW5lZE9yTnVsbCwgaXNFbXB0eSBhcyBpc0FycmF5RW1wdHksIGlzQXJyYXksIGlzT2JqZWN0IH0gZnJvbSAnbmd4LXRldGh5cy91dGlsJztcbmltcG9ydCB7IEFJVGFibGVWaWV3LCBBSVRhYmxlVmlld0ZpZWxkcywgQUlUYWJsZVZpZXdSZWNvcmRzIH0gZnJvbSAnLi4vdHlwZXMnO1xuXG5leHBvcnQgZnVuY3Rpb24gaXNFbXB0eSh2YWx1ZTogYW55KSB7XG4gICAgaWYgKGlzQXJyYXkodmFsdWUpKSB7XG4gICAgICAgIHJldHVybiBpc0FycmF5RW1wdHkodmFsdWUpO1xuICAgIH1cblxuICAgIGlmIChpc09iamVjdCh2YWx1ZSkpIHtcbiAgICAgICAgcmV0dXJuIFJlZmxlY3Qub3duS2V5cyh2YWx1ZSkubGVuZ3RoID09PSAwO1xuICAgIH1cblxuICAgIHJldHVybiBpc1VuZGVmaW5lZE9yTnVsbCh2YWx1ZSkgfHwgdmFsdWUgPT09ICcnO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gaXNQYXRoRXF1YWwocGF0aDogUGF0aCwgYW5vdGhlcjogUGF0aCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiBwYXRoLmxlbmd0aCA9PT0gYW5vdGhlci5sZW5ndGggJiYgcGF0aC5ldmVyeSgobiwgaSkgPT4gbiA9PT0gYW5vdGhlcltpXSk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBzb3J0QnlWaWV3UG9zaXRpb24oZGF0YTogQUlUYWJsZVZpZXdSZWNvcmRzIHwgQUlUYWJsZVZpZXdGaWVsZHMsIGFjdGl2ZVZpZXc6IEFJVGFibGVWaWV3KSB7XG4gICAgY29uc3QgaGFzUG9zaXRpb25zID0gZGF0YS5ldmVyeSgoaXRlbSkgPT4gaXRlbS5wb3NpdGlvbnMgJiYgaXRlbS5wb3NpdGlvbnMpO1xuICAgIGlmIChoYXNQb3NpdGlvbnMpIHtcbiAgICAgICAgcmV0dXJuIFsuLi5kYXRhXS5zb3J0KChhLCBiKSA9PiBhLnBvc2l0aW9uc1thY3RpdmVWaWV3Ll9pZF0gLSBiLnBvc2l0aW9uc1thY3RpdmVWaWV3Ll9pZF0pO1xuICAgIH1cbiAgICByZXR1cm4gZGF0YTtcbn1cbiJdfQ==
|
@@ -4,6 +4,7 @@ import { SelectField } from './select';
|
|
4
4
|
import { DateField } from './date';
|
5
5
|
import { NumberField } from './number';
|
6
6
|
import { RateField } from './rate';
|
7
|
+
import { LinkField } from './link';
|
7
8
|
export const ViewOperationMap = {
|
8
9
|
[AITableFieldType.text]: new TextField(),
|
9
10
|
[AITableFieldType.richText]: new TextField(),
|
@@ -13,10 +14,10 @@ export const ViewOperationMap = {
|
|
13
14
|
[AITableFieldType.updatedAt]: new DateField(),
|
14
15
|
[AITableFieldType.number]: new NumberField(),
|
15
16
|
[AITableFieldType.rate]: new RateField(),
|
16
|
-
[AITableFieldType.link]: new
|
17
|
+
[AITableFieldType.link]: new LinkField(),
|
17
18
|
[AITableFieldType.member]: new SelectField(),
|
18
19
|
[AITableFieldType.progress]: new NumberField(),
|
19
20
|
[AITableFieldType.createdBy]: new SelectField(),
|
20
21
|
[AITableFieldType.updatedBy]: new SelectField()
|
21
22
|
};
|
22
|
-
//# sourceMappingURL=data:application/json;base64,
|
23
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9zdGF0ZS9zcmMvdXRpbHMvZmllbGQvbW9kZWwvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFbEQsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLFFBQVEsQ0FBQztBQUNuQyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sVUFBVSxDQUFDO0FBQ3ZDLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxRQUFRLENBQUM7QUFDbkMsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUN2QyxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sUUFBUSxDQUFDO0FBQ25DLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxRQUFRLENBQUM7QUFFbkMsTUFBTSxDQUFDLE1BQU0sZ0JBQWdCLEdBQW9DO0lBQzdELENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLEVBQUUsSUFBSSxTQUFTLEVBQUU7SUFDeEMsQ0FBQyxnQkFBZ0IsQ0FBQyxRQUFRLENBQUMsRUFBRSxJQUFJLFNBQVMsRUFBRTtJQUM1QyxDQUFDLGdCQUFnQixDQUFDLE1BQU0sQ0FBQyxFQUFFLElBQUksV0FBVyxFQUFFO0lBQzVDLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLEVBQUUsSUFBSSxTQUFTLEVBQUU7SUFDeEMsQ0FBQyxnQkFBZ0IsQ0FBQyxTQUFTLENBQUMsRUFBRSxJQUFJLFNBQVMsRUFBRTtJQUM3QyxDQUFDLGdCQUFnQixDQUFDLFNBQVMsQ0FBQyxFQUFFLElBQUksU0FBUyxFQUFFO0lBQzdDLENBQUMsZ0JBQWdCLENBQUMsTUFBTSxDQUFDLEVBQUUsSUFBSSxXQUFXLEVBQUU7SUFDNUMsQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsRUFBRSxJQUFJLFNBQVMsRUFBRTtJQUN4QyxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxFQUFFLElBQUksU0FBUyxFQUFFO0lBQ3hDLENBQUMsZ0JBQWdCLENBQUMsTUFBTSxDQUFDLEVBQUUsSUFBSSxXQUFXLEVBQUU7SUFDNUMsQ0FBQyxnQkFBZ0IsQ0FBQyxRQUFRLENBQUMsRUFBRSxJQUFJLFdBQVcsRUFBRTtJQUM5QyxDQUFDLGdCQUFnQixDQUFDLFNBQVMsQ0FBQyxFQUFFLElBQUksV0FBVyxFQUFFO0lBQy9DLENBQUMsZ0JBQWdCLENBQUMsU0FBUyxDQUFDLEVBQUUsSUFBSSxXQUFXLEVBQUU7Q0FDbEQsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFJVGFibGVGaWVsZFR5cGUgfSBmcm9tICdAYWktdGFibGUvZ3JpZCc7XG5pbXBvcnQgeyBGaWVsZCB9IGZyb20gJy4vZmllbGQnO1xuaW1wb3J0IHsgVGV4dEZpZWxkIH0gZnJvbSAnLi90ZXh0JztcbmltcG9ydCB7IFNlbGVjdEZpZWxkIH0gZnJvbSAnLi9zZWxlY3QnO1xuaW1wb3J0IHsgRGF0ZUZpZWxkIH0gZnJvbSAnLi9kYXRlJztcbmltcG9ydCB7IE51bWJlckZpZWxkIH0gZnJvbSAnLi9udW1iZXInO1xuaW1wb3J0IHsgUmF0ZUZpZWxkIH0gZnJvbSAnLi9yYXRlJztcbmltcG9ydCB7IExpbmtGaWVsZCB9IGZyb20gJy4vbGluayc7XG5cbmV4cG9ydCBjb25zdCBWaWV3T3BlcmF0aW9uTWFwOiBSZWNvcmQ8QUlUYWJsZUZpZWxkVHlwZSwgRmllbGQ+ID0ge1xuICAgIFtBSVRhYmxlRmllbGRUeXBlLnRleHRdOiBuZXcgVGV4dEZpZWxkKCksXG4gICAgW0FJVGFibGVGaWVsZFR5cGUucmljaFRleHRdOiBuZXcgVGV4dEZpZWxkKCksXG4gICAgW0FJVGFibGVGaWVsZFR5cGUuc2VsZWN0XTogbmV3IFNlbGVjdEZpZWxkKCksXG4gICAgW0FJVGFibGVGaWVsZFR5cGUuZGF0ZV06IG5ldyBEYXRlRmllbGQoKSxcbiAgICBbQUlUYWJsZUZpZWxkVHlwZS5jcmVhdGVkQXRdOiBuZXcgRGF0ZUZpZWxkKCksXG4gICAgW0FJVGFibGVGaWVsZFR5cGUudXBkYXRlZEF0XTogbmV3IERhdGVGaWVsZCgpLFxuICAgIFtBSVRhYmxlRmllbGRUeXBlLm51bWJlcl06IG5ldyBOdW1iZXJGaWVsZCgpLFxuICAgIFtBSVRhYmxlRmllbGRUeXBlLnJhdGVdOiBuZXcgUmF0ZUZpZWxkKCksXG4gICAgW0FJVGFibGVGaWVsZFR5cGUubGlua106IG5ldyBMaW5rRmllbGQoKSxcbiAgICBbQUlUYWJsZUZpZWxkVHlwZS5tZW1iZXJdOiBuZXcgU2VsZWN0RmllbGQoKSxcbiAgICBbQUlUYWJsZUZpZWxkVHlwZS5wcm9ncmVzc106IG5ldyBOdW1iZXJGaWVsZCgpLFxuICAgIFtBSVRhYmxlRmllbGRUeXBlLmNyZWF0ZWRCeV06IG5ldyBTZWxlY3RGaWVsZCgpLFxuICAgIFtBSVRhYmxlRmllbGRUeXBlLnVwZGF0ZWRCeV06IG5ldyBTZWxlY3RGaWVsZCgpXG59O1xuIl19
|
@@ -0,0 +1,37 @@
|
|
1
|
+
import { isEmpty } from '../../common';
|
2
|
+
import { AITableFilterOperation } from '../../../types';
|
3
|
+
import { Field } from './field';
|
4
|
+
import { isObject, isString } from 'ngx-tethys/util';
|
5
|
+
export class LinkField extends Field {
|
6
|
+
isMeetFilter(condition, cellValue) {
|
7
|
+
const cellTextValue = this.cellValueToString(cellValue);
|
8
|
+
switch (condition.operation) {
|
9
|
+
case AITableFilterOperation.empty:
|
10
|
+
return isEmpty(cellTextValue);
|
11
|
+
case AITableFilterOperation.exists:
|
12
|
+
return !isEmpty(cellTextValue);
|
13
|
+
case AITableFilterOperation.contain:
|
14
|
+
return !isEmpty(cellTextValue) && this.stringInclude(cellTextValue, condition.value);
|
15
|
+
default:
|
16
|
+
return super.isMeetFilter(condition, cellTextValue);
|
17
|
+
}
|
18
|
+
}
|
19
|
+
eq(cv1, cv2) {
|
20
|
+
return this.cellValueToString(cv1) === this.cellValueToString(cv2);
|
21
|
+
}
|
22
|
+
compare(cellValue1, cellValue2, field) {
|
23
|
+
const cellTextValue1 = this.cellValueToString(cellValue1);
|
24
|
+
const cellTextValue2 = this.cellValueToString(cellValue2);
|
25
|
+
return super.compare(cellTextValue1, cellTextValue2, field);
|
26
|
+
}
|
27
|
+
cellValueToString(cellValue) {
|
28
|
+
if (isString(cellValue)) {
|
29
|
+
return cellValue;
|
30
|
+
}
|
31
|
+
if (isObject(cellValue)) {
|
32
|
+
return cellValue.text;
|
33
|
+
}
|
34
|
+
return '';
|
35
|
+
}
|
36
|
+
}
|
37
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGluay5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL3N0YXRlL3NyYy91dGlscy9maWVsZC9tb2RlbC9saW5rLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDdkMsT0FBTyxFQUEwQixzQkFBc0IsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ2hGLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxTQUFTLENBQUM7QUFFaEMsT0FBTyxFQUFFLFFBQVEsRUFBRSxRQUFRLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUVyRCxNQUFNLE9BQU8sU0FBVSxTQUFRLEtBQUs7SUFDdkIsWUFBWSxDQUFDLFNBQXlDLEVBQUUsU0FBcUI7UUFDbEYsTUFBTSxhQUFhLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQ3hELFFBQVEsU0FBUyxDQUFDLFNBQVMsRUFBRSxDQUFDO1lBQzFCLEtBQUssc0JBQXNCLENBQUMsS0FBSztnQkFDN0IsT0FBTyxPQUFPLENBQUMsYUFBYSxDQUFDLENBQUM7WUFDbEMsS0FBSyxzQkFBc0IsQ0FBQyxNQUFNO2dCQUM5QixPQUFPLENBQUMsT0FBTyxDQUFDLGFBQWEsQ0FBQyxDQUFDO1lBQ25DLEtBQUssc0JBQXNCLENBQUMsT0FBTztnQkFDL0IsT0FBTyxDQUFDLE9BQU8sQ0FBQyxhQUFhLENBQUMsSUFBSSxJQUFJLENBQUMsYUFBYSxDQUFDLGFBQWEsRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDekY7Z0JBQ0ksT0FBTyxLQUFLLENBQUMsWUFBWSxDQUFDLFNBQVMsRUFBRSxhQUFhLENBQUMsQ0FBQztRQUM1RCxDQUFDO0lBQ0wsQ0FBQztJQUVRLEVBQUUsQ0FBQyxHQUFtQyxFQUFFLEdBQW1DO1FBQ2hGLE9BQU8sSUFBSSxDQUFDLGlCQUFpQixDQUFDLEdBQUcsQ0FBQyxLQUFLLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUN2RSxDQUFDO0lBRVEsT0FBTyxDQUFDLFVBQXNCLEVBQUUsVUFBc0IsRUFBRSxLQUFtQjtRQUNoRixNQUFNLGNBQWMsR0FBRyxJQUFJLENBQUMsaUJBQWlCLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDMUQsTUFBTSxjQUFjLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBRTFELE9BQU8sS0FBSyxDQUFDLE9BQU8sQ0FBQyxjQUFjLEVBQUUsY0FBYyxFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQ2hFLENBQUM7SUFFRCxpQkFBaUIsQ0FBQyxTQUF5QztRQUN2RCxJQUFJLFFBQVEsQ0FBQyxTQUFTLENBQUMsRUFBRSxDQUFDO1lBQ3RCLE9BQU8sU0FBUyxDQUFDO1FBQ3JCLENBQUM7UUFDRCxJQUFJLFFBQVEsQ0FBQyxTQUFTLENBQUMsRUFBRSxDQUFDO1lBQ3RCLE9BQU8sU0FBUyxDQUFDLElBQUksQ0FBQztRQUMxQixDQUFDO1FBQ0QsT0FBTyxFQUFFLENBQUM7SUFDZCxDQUFDO0NBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBpc0VtcHR5IH0gZnJvbSAnLi4vLi4vY29tbW9uJztcbmltcG9ydCB7IEFJVGFibGVGaWx0ZXJDb25kaXRpb24sIEFJVGFibGVGaWx0ZXJPcGVyYXRpb24gfSBmcm9tICcuLi8uLi8uLi90eXBlcyc7XG5pbXBvcnQgeyBGaWVsZCB9IGZyb20gJy4vZmllbGQnO1xuaW1wb3J0IHsgQUlUYWJsZUZpZWxkLCBGaWVsZFZhbHVlLCBMaW5rRmllbGRWYWx1ZSB9IGZyb20gJ0BhaS10YWJsZS9ncmlkJztcbmltcG9ydCB7IGlzT2JqZWN0LCBpc1N0cmluZyB9IGZyb20gJ25neC10ZXRoeXMvdXRpbCc7XG5cbmV4cG9ydCBjbGFzcyBMaW5rRmllbGQgZXh0ZW5kcyBGaWVsZCB7XG4gICAgb3ZlcnJpZGUgaXNNZWV0RmlsdGVyKGNvbmRpdGlvbjogQUlUYWJsZUZpbHRlckNvbmRpdGlvbjxzdHJpbmc+LCBjZWxsVmFsdWU6IEZpZWxkVmFsdWUpIHtcbiAgICAgICAgY29uc3QgY2VsbFRleHRWYWx1ZSA9IHRoaXMuY2VsbFZhbHVlVG9TdHJpbmcoY2VsbFZhbHVlKTtcbiAgICAgICAgc3dpdGNoIChjb25kaXRpb24ub3BlcmF0aW9uKSB7XG4gICAgICAgICAgICBjYXNlIEFJVGFibGVGaWx0ZXJPcGVyYXRpb24uZW1wdHk6XG4gICAgICAgICAgICAgICAgcmV0dXJuIGlzRW1wdHkoY2VsbFRleHRWYWx1ZSk7XG4gICAgICAgICAgICBjYXNlIEFJVGFibGVGaWx0ZXJPcGVyYXRpb24uZXhpc3RzOlxuICAgICAgICAgICAgICAgIHJldHVybiAhaXNFbXB0eShjZWxsVGV4dFZhbHVlKTtcbiAgICAgICAgICAgIGNhc2UgQUlUYWJsZUZpbHRlck9wZXJhdGlvbi5jb250YWluOlxuICAgICAgICAgICAgICAgIHJldHVybiAhaXNFbXB0eShjZWxsVGV4dFZhbHVlKSAmJiB0aGlzLnN0cmluZ0luY2x1ZGUoY2VsbFRleHRWYWx1ZSwgY29uZGl0aW9uLnZhbHVlKTtcbiAgICAgICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgICAgICAgcmV0dXJuIHN1cGVyLmlzTWVldEZpbHRlcihjb25kaXRpb24sIGNlbGxUZXh0VmFsdWUpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgb3ZlcnJpZGUgZXEoY3YxOiBMaW5rRmllbGRWYWx1ZSB8IHN0cmluZyB8IG51bGwsIGN2MjogTGlua0ZpZWxkVmFsdWUgfCBzdHJpbmcgfCBudWxsKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLmNlbGxWYWx1ZVRvU3RyaW5nKGN2MSkgPT09IHRoaXMuY2VsbFZhbHVlVG9TdHJpbmcoY3YyKTtcbiAgICB9XG5cbiAgICBvdmVycmlkZSBjb21wYXJlKGNlbGxWYWx1ZTE6IEZpZWxkVmFsdWUsIGNlbGxWYWx1ZTI6IEZpZWxkVmFsdWUsIGZpZWxkOiBBSVRhYmxlRmllbGQpOiBudW1iZXIge1xuICAgICAgICBjb25zdCBjZWxsVGV4dFZhbHVlMSA9IHRoaXMuY2VsbFZhbHVlVG9TdHJpbmcoY2VsbFZhbHVlMSk7XG4gICAgICAgIGNvbnN0IGNlbGxUZXh0VmFsdWUyID0gdGhpcy5jZWxsVmFsdWVUb1N0cmluZyhjZWxsVmFsdWUyKTtcblxuICAgICAgICByZXR1cm4gc3VwZXIuY29tcGFyZShjZWxsVGV4dFZhbHVlMSwgY2VsbFRleHRWYWx1ZTIsIGZpZWxkKTtcbiAgICB9XG5cbiAgICBjZWxsVmFsdWVUb1N0cmluZyhjZWxsVmFsdWU6IExpbmtGaWVsZFZhbHVlIHwgc3RyaW5nIHwgbnVsbCk6IHN0cmluZyB7XG4gICAgICAgIGlmIChpc1N0cmluZyhjZWxsVmFsdWUpKSB7XG4gICAgICAgICAgICByZXR1cm4gY2VsbFZhbHVlO1xuICAgICAgICB9XG4gICAgICAgIGlmIChpc09iamVjdChjZWxsVmFsdWUpKSB7XG4gICAgICAgICAgICByZXR1cm4gY2VsbFZhbHVlLnRleHQ7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuICcnO1xuICAgIH1cbn1cbiJdfQ==
|
@@ -9,9 +9,11 @@ export class RateField extends Field {
|
|
9
9
|
case AITableFilterOperation.exists:
|
10
10
|
return !isEmpty(cellValue);
|
11
11
|
case AITableFilterOperation.in:
|
12
|
-
|
12
|
+
const isContain = condition.value.some((item) => String(item) === String(cellValue));
|
13
|
+
return !isEmpty(cellValue) && isContain;
|
13
14
|
case AITableFilterOperation.nin:
|
14
|
-
|
15
|
+
const noContain = condition.value.every((item) => String(item) !== String(cellValue));
|
16
|
+
return isEmpty(cellValue) || noContain;
|
15
17
|
default:
|
16
18
|
return super.isMeetFilter(condition, cellValue);
|
17
19
|
}
|
@@ -35,4 +37,4 @@ export class RateField extends Field {
|
|
35
37
|
return RateField._compare(cellValue1, cellValue2);
|
36
38
|
}
|
37
39
|
}
|
38
|
-
//# sourceMappingURL=data:application/json;base64,
|
40
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmF0ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL3N0YXRlL3NyYy91dGlscy9maWVsZC9tb2RlbC9yYXRlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDdkMsT0FBTyxFQUEwQixzQkFBc0IsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ2hGLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxTQUFTLENBQUM7QUFHaEMsTUFBTSxPQUFPLFNBQVUsU0FBUSxLQUFLO0lBQ3ZCLFlBQVksQ0FBQyxTQUEyQyxFQUFFLFNBQWtDO1FBQ2pHLFFBQVEsU0FBUyxDQUFDLFNBQVMsRUFBRSxDQUFDO1lBQzFCLEtBQUssc0JBQXNCLENBQUMsS0FBSztnQkFDN0IsT0FBTyxPQUFPLENBQUMsU0FBUyxDQUFDLENBQUM7WUFDOUIsS0FBSyxzQkFBc0IsQ0FBQyxNQUFNO2dCQUM5QixPQUFPLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxDQUFDO1lBQy9CLEtBQUssc0JBQXNCLENBQUMsRUFBRTtnQkFDMUIsTUFBTSxTQUFTLEdBQUcsU0FBUyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsS0FBSyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQztnQkFDckYsT0FBTyxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsSUFBSSxTQUFTLENBQUM7WUFDNUMsS0FBSyxzQkFBc0IsQ0FBQyxHQUFHO2dCQUMzQixNQUFNLFNBQVMsR0FBRyxTQUFTLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxLQUFLLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDO2dCQUN0RixPQUFPLE9BQU8sQ0FBQyxTQUFTLENBQUMsSUFBSSxTQUFTLENBQUM7WUFDM0M7Z0JBQ0ksT0FBTyxLQUFLLENBQUMsWUFBWSxDQUFDLFNBQVMsRUFBRSxTQUFTLENBQUMsQ0FBQztRQUN4RCxDQUFDO0lBQ0wsQ0FBQztJQUVELGlCQUFpQixDQUFDLFVBQTBCO1FBQ3hDLE9BQU8sSUFBSSxDQUFDO0lBQ2hCLENBQUM7SUFFRCxNQUFNLENBQUMsUUFBUSxDQUFDLFVBQWtCLEVBQUUsVUFBa0I7UUFDbEQsSUFBSSxPQUFPLENBQUMsVUFBVSxDQUFDLElBQUksT0FBTyxDQUFDLFVBQVUsQ0FBQyxFQUFFLENBQUM7WUFDN0MsT0FBTyxDQUFDLENBQUM7UUFDYixDQUFDO1FBQ0QsSUFBSSxPQUFPLENBQUMsVUFBVSxDQUFDLEVBQUUsQ0FBQztZQUN0QixPQUFPLENBQUMsQ0FBQyxDQUFDO1FBQ2QsQ0FBQztRQUNELElBQUksT0FBTyxDQUFDLFVBQVUsQ0FBQyxFQUFFLENBQUM7WUFDdEIsT0FBTyxDQUFDLENBQUM7UUFDYixDQUFDO1FBQ0QsT0FBTyxVQUFVLEtBQUssVUFBVSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLFVBQVUsR0FBRyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDNUUsQ0FBQztJQUVRLE9BQU8sQ0FBQyxVQUFrQixFQUFFLFVBQWtCO1FBQ25ELE9BQU8sU0FBUyxDQUFDLFFBQVEsQ0FBQyxVQUFVLEVBQUUsVUFBVSxDQUFDLENBQUM7SUFDdEQsQ0FBQztDQUNKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgaXNFbXB0eSB9IGZyb20gJy4uLy4uL2NvbW1vbic7XG5pbXBvcnQgeyBBSVRhYmxlRmlsdGVyQ29uZGl0aW9uLCBBSVRhYmxlRmlsdGVyT3BlcmF0aW9uIH0gZnJvbSAnLi4vLi4vLi4vdHlwZXMnO1xuaW1wb3J0IHsgRmllbGQgfSBmcm9tICcuL2ZpZWxkJztcbmltcG9ydCB7IFJhdGVGaWVsZFZhbHVlIH0gZnJvbSAnQGFpLXRhYmxlL2dyaWQnO1xuXG5leHBvcnQgY2xhc3MgUmF0ZUZpZWxkIGV4dGVuZHMgRmllbGQge1xuICAgIG92ZXJyaWRlIGlzTWVldEZpbHRlcihjb25kaXRpb246IEFJVGFibGVGaWx0ZXJDb25kaXRpb248c3RyaW5nW10+LCBjZWxsVmFsdWU6IFJhdGVGaWVsZFZhbHVlIHwgc3RyaW5nKSB7XG4gICAgICAgIHN3aXRjaCAoY29uZGl0aW9uLm9wZXJhdGlvbikge1xuICAgICAgICAgICAgY2FzZSBBSVRhYmxlRmlsdGVyT3BlcmF0aW9uLmVtcHR5OlxuICAgICAgICAgICAgICAgIHJldHVybiBpc0VtcHR5KGNlbGxWYWx1ZSk7XG4gICAgICAgICAgICBjYXNlIEFJVGFibGVGaWx0ZXJPcGVyYXRpb24uZXhpc3RzOlxuICAgICAgICAgICAgICAgIHJldHVybiAhaXNFbXB0eShjZWxsVmFsdWUpO1xuICAgICAgICAgICAgY2FzZSBBSVRhYmxlRmlsdGVyT3BlcmF0aW9uLmluOlxuICAgICAgICAgICAgICAgIGNvbnN0IGlzQ29udGFpbiA9IGNvbmRpdGlvbi52YWx1ZS5zb21lKChpdGVtKSA9PiBTdHJpbmcoaXRlbSkgPT09IFN0cmluZyhjZWxsVmFsdWUpKTtcbiAgICAgICAgICAgICAgICByZXR1cm4gIWlzRW1wdHkoY2VsbFZhbHVlKSAmJiBpc0NvbnRhaW47XG4gICAgICAgICAgICBjYXNlIEFJVGFibGVGaWx0ZXJPcGVyYXRpb24ubmluOlxuICAgICAgICAgICAgICAgIGNvbnN0IG5vQ29udGFpbiA9IGNvbmRpdGlvbi52YWx1ZS5ldmVyeSgoaXRlbSkgPT4gU3RyaW5nKGl0ZW0pICE9PSBTdHJpbmcoY2VsbFZhbHVlKSk7XG4gICAgICAgICAgICAgICAgcmV0dXJuIGlzRW1wdHkoY2VsbFZhbHVlKSB8fCBub0NvbnRhaW47XG4gICAgICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgICAgIHJldHVybiBzdXBlci5pc01lZXRGaWx0ZXIoY29uZGl0aW9uLCBjZWxsVmFsdWUpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgY2VsbFZhbHVlVG9TdHJpbmcoX2NlbGxWYWx1ZTogUmF0ZUZpZWxkVmFsdWUpOiBzdHJpbmcgfCBudWxsIHtcbiAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuXG4gICAgc3RhdGljIF9jb21wYXJlKGNlbGxWYWx1ZTE6IG51bWJlciwgY2VsbFZhbHVlMjogbnVtYmVyKTogbnVtYmVyIHtcbiAgICAgICAgaWYgKGlzRW1wdHkoY2VsbFZhbHVlMSkgJiYgaXNFbXB0eShjZWxsVmFsdWUyKSkge1xuICAgICAgICAgICAgcmV0dXJuIDA7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKGlzRW1wdHkoY2VsbFZhbHVlMSkpIHtcbiAgICAgICAgICAgIHJldHVybiAtMTtcbiAgICAgICAgfVxuICAgICAgICBpZiAoaXNFbXB0eShjZWxsVmFsdWUyKSkge1xuICAgICAgICAgICAgcmV0dXJuIDE7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIGNlbGxWYWx1ZTEgPT09IGNlbGxWYWx1ZTIgPyAwIDogY2VsbFZhbHVlMSA+IGNlbGxWYWx1ZTIgPyAxIDogLTE7XG4gICAgfVxuXG4gICAgb3ZlcnJpZGUgY29tcGFyZShjZWxsVmFsdWUxOiBudW1iZXIsIGNlbGxWYWx1ZTI6IG51bWJlcik6IG51bWJlciB7XG4gICAgICAgIHJldHVybiBSYXRlRmllbGQuX2NvbXBhcmUoY2VsbFZhbHVlMSwgY2VsbFZhbHVlMik7XG4gICAgfVxufVxuIl19
|
package/esm2022/utils/index.mjs
CHANGED
@@ -1,8 +1,8 @@
|
|
1
1
|
export * from './build';
|
2
2
|
export * from './field/model';
|
3
|
-
export * from '
|
4
|
-
export * from '
|
5
|
-
export * from '
|
3
|
+
export * from './field/add-fields';
|
4
|
+
export * from './field/remove-field';
|
5
|
+
export * from './field/sort-fields';
|
6
6
|
export * from './view';
|
7
7
|
export * from './common';
|
8
8
|
export * from './record/add-records';
|
@@ -11,4 +11,4 @@ export * from './record/filter';
|
|
11
11
|
export * from './record/update-field-value';
|
12
12
|
export * from './record/update-system-field-value';
|
13
13
|
export * from './weak-map';
|
14
|
-
//# sourceMappingURL=data:application/json;base64,
|
14
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wYWNrYWdlcy9zdGF0ZS9zcmMvdXRpbHMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxTQUFTLENBQUM7QUFDeEIsY0FBYyxlQUFlLENBQUM7QUFDOUIsY0FBYyxvQkFBb0IsQ0FBQztBQUNuQyxjQUFjLHNCQUFzQixDQUFDO0FBQ3JDLGNBQWMscUJBQXFCLENBQUM7QUFDcEMsY0FBYyxRQUFRLENBQUM7QUFDdkIsY0FBYyxVQUFVLENBQUM7QUFDekIsY0FBYyxzQkFBc0IsQ0FBQztBQUNyQyxjQUFjLGVBQWUsQ0FBQztBQUM5QixjQUFjLGlCQUFpQixDQUFDO0FBQ2hDLGNBQWMsNkJBQTZCLENBQUM7QUFDNUMsY0FBYyxvQ0FBb0MsQ0FBQztBQUNuRCxjQUFjLFlBQVksQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vYnVpbGQnO1xuZXhwb3J0ICogZnJvbSAnLi9maWVsZC9tb2RlbCc7XG5leHBvcnQgKiBmcm9tICcuL2ZpZWxkL2FkZC1maWVsZHMnO1xuZXhwb3J0ICogZnJvbSAnLi9maWVsZC9yZW1vdmUtZmllbGQnO1xuZXhwb3J0ICogZnJvbSAnLi9maWVsZC9zb3J0LWZpZWxkcyc7XG5leHBvcnQgKiBmcm9tICcuL3ZpZXcnO1xuZXhwb3J0ICogZnJvbSAnLi9jb21tb24nO1xuZXhwb3J0ICogZnJvbSAnLi9yZWNvcmQvYWRkLXJlY29yZHMnO1xuZXhwb3J0ICogZnJvbSAnLi9yZWNvcmQvc29ydCc7XG5leHBvcnQgKiBmcm9tICcuL3JlY29yZC9maWx0ZXInO1xuZXhwb3J0ICogZnJvbSAnLi9yZWNvcmQvdXBkYXRlLWZpZWxkLXZhbHVlJztcbmV4cG9ydCAqIGZyb20gJy4vcmVjb3JkL3VwZGF0ZS1zeXN0ZW0tZmllbGQtdmFsdWUnO1xuZXhwb3J0ICogZnJvbSAnLi93ZWFrLW1hcCc7XG4iXX0=
|
@@ -1,6 +1,6 @@
|
|
1
|
-
import {
|
1
|
+
import { AITableFieldType, isSystemField } from '@ai-table/grid';
|
2
|
+
import { AITableFilterLogical } from '../../types';
|
2
3
|
import { ViewOperationMap } from '../field/model';
|
3
|
-
import { isEmpty } from '../common';
|
4
4
|
export function getFilteredRecords(aiTable, records, fields, activeView) {
|
5
5
|
const { conditions, condition_logical } = activeView.settings || {};
|
6
6
|
if (!conditions) {
|
@@ -35,8 +35,7 @@ function checkConditions(fields, record, filterConditions) {
|
|
35
35
|
return false;
|
36
36
|
}
|
37
37
|
function doFilterOperations(fields, record, condition) {
|
38
|
-
const field = fields
|
39
|
-
const cellValue = record.values[condition.field_id];
|
38
|
+
const { field, cellValue } = getFilterValue(fields, record, condition);
|
40
39
|
try {
|
41
40
|
return field && doFilter(condition, field, cellValue);
|
42
41
|
}
|
@@ -45,12 +44,6 @@ function doFilterOperations(fields, record, condition) {
|
|
45
44
|
}
|
46
45
|
}
|
47
46
|
export function doFilter(condition, field, cellValue) {
|
48
|
-
if (condition.operation === AITableFilterOperation.empty) {
|
49
|
-
return isEmpty(cellValue);
|
50
|
-
}
|
51
|
-
if (condition.operation === AITableFilterOperation.exists) {
|
52
|
-
return !isEmpty(cellValue);
|
53
|
-
}
|
54
47
|
return ViewOperationMap[field.type].isMeetFilter(condition, cellValue);
|
55
48
|
}
|
56
49
|
export function getDefaultRecordDataByFilter(recordValues, conditions, conditionLogical) {
|
@@ -62,4 +55,23 @@ export function getDefaultRecordDataByFilter(recordValues, conditions, condition
|
|
62
55
|
}
|
63
56
|
return recordValues;
|
64
57
|
}
|
65
|
-
|
58
|
+
export function getFilterValue(fields, record, condition) {
|
59
|
+
const field = fields.find((item) => item._id === condition.field_id);
|
60
|
+
let cellValue = null;
|
61
|
+
if (field && isSystemField(field)) {
|
62
|
+
if ([AITableFieldType.createdAt, AITableFieldType.updatedAt].includes(field.type)) {
|
63
|
+
cellValue = { timestamp: record[field.type] };
|
64
|
+
}
|
65
|
+
else {
|
66
|
+
cellValue = record[field.type];
|
67
|
+
}
|
68
|
+
}
|
69
|
+
else {
|
70
|
+
cellValue = record.values[condition.field_id];
|
71
|
+
}
|
72
|
+
return {
|
73
|
+
field,
|
74
|
+
cellValue
|
75
|
+
};
|
76
|
+
}
|
77
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsdGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvc3RhdGUvc3JjL3V0aWxzL3JlY29yZC9maWx0ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGdCQUFnQixFQUE2QixhQUFhLEVBQW9CLE1BQU0sZ0JBQWdCLENBQUM7QUFDOUcsT0FBTyxFQUdILG9CQUFvQixFQU12QixNQUFNLGFBQWEsQ0FBQztBQUNyQixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUVsRCxNQUFNLFVBQVUsa0JBQWtCLENBQUMsT0FBb0IsRUFBRSxPQUEyQixFQUFFLE1BQXlCLEVBQUUsVUFBdUI7SUFDcEksTUFBTSxFQUFFLFVBQVUsRUFBRSxpQkFBaUIsRUFBRSxHQUFHLFVBQVUsQ0FBQyxRQUFRLElBQUksRUFBRSxDQUFDO0lBQ3BFLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztRQUNkLE9BQU8sT0FBTyxDQUFDO0lBQ25CLENBQUM7SUFDRCxNQUFNLGlCQUFpQixHQUFHLFVBQVUsQ0FBQyxNQUFNLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDNUUsSUFBSSxDQUFDLGlCQUFpQixDQUFDLE1BQU0sRUFBRSxDQUFDO1FBQzVCLE9BQU8sT0FBTyxDQUFDO0lBQ25CLENBQUM7SUFDRCxNQUFNLGlCQUFpQixHQUFHLE9BQU8sQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO0lBQ3RELE9BQU8sT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFO1FBQzdCLElBQUksaUJBQWlCLElBQUksaUJBQWlCLENBQUMsTUFBTSxJQUFJLGlCQUFpQixDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQztZQUMxRixPQUFPLElBQUksQ0FBQztRQUNoQixDQUFDO1FBQ0QsT0FBTyxlQUFlLENBQUMsTUFBTSxFQUFFLE1BQU0sRUFBRSxFQUFFLFVBQVUsRUFBRSxpQkFBaUIsRUFBRSxpQkFBaUIsRUFBRSxDQUFDLENBQUM7SUFDakcsQ0FBQyxDQUFDLENBQUM7QUFDUCxDQUFDO0FBRUQsU0FBUyxlQUFlLENBQUMsTUFBeUIsRUFBRSxNQUFxQixFQUFFLGdCQUF5QztJQUNoSCxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7UUFDVixPQUFPLEtBQUssQ0FBQztJQUNqQixDQUFDO0lBQ0QsSUFBSSxDQUFDLGdCQUFnQixFQUFFLFVBQVUsRUFBRSxDQUFDO1FBQ2hDLE9BQU8sSUFBSSxDQUFDO0lBQ2hCLENBQUM7SUFDRCxNQUFNLEVBQUUsaUJBQWlCLEVBQUUsVUFBVSxFQUFFLEdBQUcsZ0JBQWdCLENBQUM7SUFDM0QsSUFBSSxpQkFBaUIsS0FBSyxvQkFBb0IsQ0FBQyxHQUFHLEVBQUUsQ0FBQztRQUNqRCxPQUFPLFVBQVUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxTQUFTLEVBQUUsRUFBRSxDQUFDLGtCQUFrQixDQUFDLE1BQU0sRUFBRSxNQUFNLEVBQUUsU0FBUyxDQUFDLENBQUMsQ0FBQztJQUMxRixDQUFDO0lBQ0QsSUFBSSxDQUFDLGlCQUFpQixJQUFJLGlCQUFpQixLQUFLLG9CQUFvQixDQUFDLEVBQUUsRUFBRSxDQUFDO1FBQ3RFLE9BQU8sVUFBVSxDQUFDLElBQUksQ0FBQyxDQUFDLFNBQVMsRUFBRSxFQUFFLENBQUMsa0JBQWtCLENBQUMsTUFBTSxFQUFFLE1BQU0sRUFBRSxTQUFTLENBQUMsQ0FBQyxDQUFDO0lBQ3pGLENBQUM7SUFDRCxPQUFPLEtBQUssQ0FBQztBQUNqQixDQUFDO0FBRUQsU0FBUyxrQkFBa0IsQ0FBQyxNQUF5QixFQUFFLE1BQXFCLEVBQUUsU0FBaUM7SUFDM0csTUFBTSxFQUFFLEtBQUssRUFBRSxTQUFTLEVBQUUsR0FBRyxjQUFjLENBQUMsTUFBTSxFQUFFLE1BQU0sRUFBRSxTQUFTLENBQUMsQ0FBQztJQUV2RSxJQUFJLENBQUM7UUFDRCxPQUFPLEtBQUssSUFBSSxRQUFRLENBQUMsU0FBUyxFQUFFLEtBQUssRUFBRSxTQUFTLENBQUMsQ0FBQztJQUMxRCxDQUFDO0lBQUMsT0FBTyxLQUFLLEVBQUUsQ0FBQztRQUNiLE9BQU8sS0FBSyxDQUFDO0lBQ2pCLENBQUM7QUFDTCxDQUFDO0FBRUQsTUFBTSxVQUFVLFFBQVEsQ0FBQyxTQUFpQyxFQUFFLEtBQXVCLEVBQUUsU0FBcUI7SUFDdEcsT0FBTyxnQkFBZ0IsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUMsWUFBWSxDQUFDLFNBQVMsRUFBRSxTQUFTLENBQUMsQ0FBQztBQUMzRSxDQUFDO0FBRUQsTUFBTSxVQUFVLDRCQUE0QixDQUN4QyxZQUF3QyxFQUN4QyxVQUFvQyxFQUNwQyxnQkFBdUM7SUFFdkMsSUFBSSxVQUFVLENBQUMsTUFBTSxLQUFLLENBQUMsRUFBRSxDQUFDO1FBQzFCLDhEQUE4RDtJQUNsRSxDQUFDO1NBQU0sQ0FBQztRQUNKLEtBQUs7SUFDVCxDQUFDO0lBQ0QsT0FBTyxZQUFZLENBQUM7QUFDeEIsQ0FBQztBQUVELE1BQU0sVUFBVSxjQUFjLENBQUMsTUFBeUIsRUFBRSxNQUFxQixFQUFFLFNBQWlDO0lBQzlHLE1BQU0sS0FBSyxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxHQUFHLEtBQUssU0FBUyxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQ3JFLElBQUksU0FBUyxHQUFHLElBQUksQ0FBQztJQUNyQixJQUFJLEtBQUssSUFBSSxhQUFhLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQztRQUNoQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsU0FBUyxFQUFFLGdCQUFnQixDQUFDLFNBQVMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQztZQUNoRixTQUFTLEdBQUcsRUFBRSxTQUFTLEVBQUUsTUFBTSxDQUFDLEtBQUssQ0FBQyxJQUF3QixDQUFDLEVBQUUsQ0FBQztRQUN0RSxDQUFDO2FBQU0sQ0FBQztZQUNKLFNBQVMsR0FBRyxNQUFNLENBQUMsS0FBSyxDQUFDLElBQXdCLENBQUMsQ0FBQztRQUN2RCxDQUFDO0lBQ0wsQ0FBQztTQUFNLENBQUM7UUFDSixTQUFTLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDbEQsQ0FBQztJQUVELE9BQU87UUFDSCxLQUFLO1FBQ0wsU0FBUztLQUNaLENBQUM7QUFDTixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQUlUYWJsZUZpZWxkVHlwZSwgQUlUYWJsZVJlY29yZCwgRmllbGRWYWx1ZSwgaXNTeXN0ZW1GaWVsZCwgU3lzdGVtRmllbGRUeXBlcyB9IGZyb20gJ0BhaS10YWJsZS9ncmlkJztcbmltcG9ydCB7XG4gICAgQUlUYWJsZUZpbHRlckNvbmRpdGlvbixcbiAgICBBSVRhYmxlRmlsdGVyQ29uZGl0aW9ucyxcbiAgICBBSVRhYmxlRmlsdGVyTG9naWNhbCxcbiAgICBBSVRhYmxlVmlldyxcbiAgICBBSVRhYmxlVmlld0ZpZWxkLFxuICAgIEFJVGFibGVWaWV3RmllbGRzLFxuICAgIEFJVGFibGVWaWV3UmVjb3JkcyxcbiAgICBBSVZpZXdUYWJsZVxufSBmcm9tICcuLi8uLi90eXBlcyc7XG5pbXBvcnQgeyBWaWV3T3BlcmF0aW9uTWFwIH0gZnJvbSAnLi4vZmllbGQvbW9kZWwnO1xuXG5leHBvcnQgZnVuY3Rpb24gZ2V0RmlsdGVyZWRSZWNvcmRzKGFpVGFibGU6IEFJVmlld1RhYmxlLCByZWNvcmRzOiBBSVRhYmxlVmlld1JlY29yZHMsIGZpZWxkczogQUlUYWJsZVZpZXdGaWVsZHMsIGFjdGl2ZVZpZXc6IEFJVGFibGVWaWV3KSB7XG4gICAgY29uc3QgeyBjb25kaXRpb25zLCBjb25kaXRpb25fbG9naWNhbCB9ID0gYWN0aXZlVmlldy5zZXR0aW5ncyB8fCB7fTtcbiAgICBpZiAoIWNvbmRpdGlvbnMpIHtcbiAgICAgICAgcmV0dXJuIHJlY29yZHM7XG4gICAgfVxuICAgIGNvbnN0IGlsbGVnYWxDb25kaXRpb25zID0gY29uZGl0aW9ucy5maWx0ZXIoKGl0ZW0pID0+IGl0ZW0ub3BlcmF0aW9uKSB8fCBbXTtcbiAgICBpZiAoIWlsbGVnYWxDb25kaXRpb25zLmxlbmd0aCkge1xuICAgICAgICByZXR1cm4gcmVjb3JkcztcbiAgICB9XG4gICAgY29uc3QgcmVjb3Jkc1dpbGxIaWRkZW4gPSBhaVRhYmxlLnJlY29yZHNXaWxsSGlkZGVuKCk7XG4gICAgcmV0dXJuIHJlY29yZHMuZmlsdGVyKChyZWNvcmQpID0+IHtcbiAgICAgICAgaWYgKHJlY29yZHNXaWxsSGlkZGVuICYmIHJlY29yZHNXaWxsSGlkZGVuLmxlbmd0aCAmJiByZWNvcmRzV2lsbEhpZGRlbi5pbmNsdWRlcyhyZWNvcmQuX2lkKSkge1xuICAgICAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIGNoZWNrQ29uZGl0aW9ucyhmaWVsZHMsIHJlY29yZCwgeyBjb25kaXRpb25zOiBpbGxlZ2FsQ29uZGl0aW9ucywgY29uZGl0aW9uX2xvZ2ljYWwgfSk7XG4gICAgfSk7XG59XG5cbmZ1bmN0aW9uIGNoZWNrQ29uZGl0aW9ucyhmaWVsZHM6IEFJVGFibGVWaWV3RmllbGRzLCByZWNvcmQ6IEFJVGFibGVSZWNvcmQsIGZpbHRlckNvbmRpdGlvbnM6IEFJVGFibGVGaWx0ZXJDb25kaXRpb25zKSB7XG4gICAgaWYgKCFyZWNvcmQpIHtcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cbiAgICBpZiAoIWZpbHRlckNvbmRpdGlvbnM/LmNvbmRpdGlvbnMpIHtcbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxuICAgIGNvbnN0IHsgY29uZGl0aW9uX2xvZ2ljYWwsIGNvbmRpdGlvbnMgfSA9IGZpbHRlckNvbmRpdGlvbnM7XG4gICAgaWYgKGNvbmRpdGlvbl9sb2dpY2FsID09PSBBSVRhYmxlRmlsdGVyTG9naWNhbC5hbmQpIHtcbiAgICAgICAgcmV0dXJuIGNvbmRpdGlvbnMuZXZlcnkoKGNvbmRpdGlvbikgPT4gZG9GaWx0ZXJPcGVyYXRpb25zKGZpZWxkcywgcmVjb3JkLCBjb25kaXRpb24pKTtcbiAgICB9XG4gICAgaWYgKCFjb25kaXRpb25fbG9naWNhbCB8fCBjb25kaXRpb25fbG9naWNhbCA9PT0gQUlUYWJsZUZpbHRlckxvZ2ljYWwub3IpIHtcbiAgICAgICAgcmV0dXJuIGNvbmRpdGlvbnMuc29tZSgoY29uZGl0aW9uKSA9PiBkb0ZpbHRlck9wZXJhdGlvbnMoZmllbGRzLCByZWNvcmQsIGNvbmRpdGlvbikpO1xuICAgIH1cbiAgICByZXR1cm4gZmFsc2U7XG59XG5cbmZ1bmN0aW9uIGRvRmlsdGVyT3BlcmF0aW9ucyhmaWVsZHM6IEFJVGFibGVWaWV3RmllbGRzLCByZWNvcmQ6IEFJVGFibGVSZWNvcmQsIGNvbmRpdGlvbjogQUlUYWJsZUZpbHRlckNvbmRpdGlvbikge1xuICAgIGNvbnN0IHsgZmllbGQsIGNlbGxWYWx1ZSB9ID0gZ2V0RmlsdGVyVmFsdWUoZmllbGRzLCByZWNvcmQsIGNvbmRpdGlvbik7XG5cbiAgICB0cnkge1xuICAgICAgICByZXR1cm4gZmllbGQgJiYgZG9GaWx0ZXIoY29uZGl0aW9uLCBmaWVsZCwgY2VsbFZhbHVlKTtcbiAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gZG9GaWx0ZXIoY29uZGl0aW9uOiBBSVRhYmxlRmlsdGVyQ29uZGl0aW9uLCBmaWVsZDogQUlUYWJsZVZpZXdGaWVsZCwgY2VsbFZhbHVlOiBGaWVsZFZhbHVlKSB7XG4gICAgcmV0dXJuIFZpZXdPcGVyYXRpb25NYXBbZmllbGQudHlwZV0uaXNNZWV0RmlsdGVyKGNvbmRpdGlvbiwgY2VsbFZhbHVlKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldERlZmF1bHRSZWNvcmREYXRhQnlGaWx0ZXIoXG4gICAgcmVjb3JkVmFsdWVzOiBSZWNvcmQ8c3RyaW5nLCBGaWVsZFZhbHVlPixcbiAgICBjb25kaXRpb25zOiBBSVRhYmxlRmlsdGVyQ29uZGl0aW9uW10sXG4gICAgY29uZGl0aW9uTG9naWNhbD86IEFJVGFibGVGaWx0ZXJMb2dpY2FsXG4pIHtcbiAgICBpZiAoY29uZGl0aW9ucy5sZW5ndGggPT09IDEpIHtcbiAgICAgICAgLy8gcmVjb3JkVmFsdWVzW2NvbmRpdGlvbnNbMF0uZmllbGRfaWRdID0gY29uZGl0aW9uc1swXS52YWx1ZTtcbiAgICB9IGVsc2Uge1xuICAgICAgICAvLy4uLlxuICAgIH1cbiAgICByZXR1cm4gcmVjb3JkVmFsdWVzO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0RmlsdGVyVmFsdWUoZmllbGRzOiBBSVRhYmxlVmlld0ZpZWxkcywgcmVjb3JkOiBBSVRhYmxlUmVjb3JkLCBjb25kaXRpb246IEFJVGFibGVGaWx0ZXJDb25kaXRpb24pIHtcbiAgICBjb25zdCBmaWVsZCA9IGZpZWxkcy5maW5kKChpdGVtKSA9PiBpdGVtLl9pZCA9PT0gY29uZGl0aW9uLmZpZWxkX2lkKTtcbiAgICBsZXQgY2VsbFZhbHVlID0gbnVsbDtcbiAgICBpZiAoZmllbGQgJiYgaXNTeXN0ZW1GaWVsZChmaWVsZCkpIHtcbiAgICAgICAgaWYgKFtBSVRhYmxlRmllbGRUeXBlLmNyZWF0ZWRBdCwgQUlUYWJsZUZpZWxkVHlwZS51cGRhdGVkQXRdLmluY2x1ZGVzKGZpZWxkLnR5cGUpKSB7XG4gICAgICAgICAgICBjZWxsVmFsdWUgPSB7IHRpbWVzdGFtcDogcmVjb3JkW2ZpZWxkLnR5cGUgYXMgU3lzdGVtRmllbGRUeXBlc10gfTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGNlbGxWYWx1ZSA9IHJlY29yZFtmaWVsZC50eXBlIGFzIFN5c3RlbUZpZWxkVHlwZXNdO1xuICAgICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgICAgY2VsbFZhbHVlID0gcmVjb3JkLnZhbHVlc1tjb25kaXRpb24uZmllbGRfaWRdO1xuICAgIH1cblxuICAgIHJldHVybiB7XG4gICAgICAgIGZpZWxkLFxuICAgICAgICBjZWxsVmFsdWVcbiAgICB9O1xufVxuIl19
|
@@ -1,6 +1,6 @@
|
|
1
1
|
import * as Y from 'yjs';
|
2
|
-
import { isArray, isEmpty as isEmpty$1, isObject, isUndefinedOrNull, TinyDate } from 'ngx-tethys/util';
|
3
|
-
import { AITableQueries, AITableFieldType, getDefaultFieldValue, Direction as Direction$1, idsCreator, idCreator, shortIdCreator, shortIdsCreator, AI_TABLE_GRID_FIELD_SERVICE_MAP, getDetailByTargetName } from '@ai-table/grid';
|
2
|
+
import { isArray, isEmpty as isEmpty$1, isObject, isUndefinedOrNull, TinyDate, isString } from 'ngx-tethys/util';
|
3
|
+
import { AITableQueries, AITableFieldType, isSystemField, getDefaultFieldValue, Direction as Direction$1, idsCreator, idCreator, shortIdCreator, shortIdsCreator, AI_TABLE_GRID_FIELD_SERVICE_MAP, getDetailByTargetName } from '@ai-table/grid';
|
4
4
|
import * as _ from 'lodash';
|
5
5
|
import ___default, { isEqual } from 'lodash';
|
6
6
|
import { fromUnixTime, subDays } from 'date-fns';
|
@@ -713,7 +713,7 @@ function isEmpty(value) {
|
|
713
713
|
if (isObject(value)) {
|
714
714
|
return Reflect.ownKeys(value).length === 0;
|
715
715
|
}
|
716
|
-
return isUndefinedOrNull(value) || value
|
716
|
+
return isUndefinedOrNull(value) || value === '';
|
717
717
|
}
|
718
718
|
function isPathEqual(path, another) {
|
719
719
|
return path.length === another.length && path.every((n, i) => n === another[i]);
|
@@ -982,9 +982,11 @@ class RateField extends Field {
|
|
982
982
|
case AITableFilterOperation.exists:
|
983
983
|
return !isEmpty(cellValue);
|
984
984
|
case AITableFilterOperation.in:
|
985
|
-
|
985
|
+
const isContain = condition.value.some((item) => String(item) === String(cellValue));
|
986
|
+
return !isEmpty(cellValue) && isContain;
|
986
987
|
case AITableFilterOperation.nin:
|
987
|
-
|
988
|
+
const noContain = condition.value.every((item) => String(item) !== String(cellValue));
|
989
|
+
return isEmpty(cellValue) || noContain;
|
988
990
|
default:
|
989
991
|
return super.isMeetFilter(condition, cellValue);
|
990
992
|
}
|
@@ -1009,6 +1011,39 @@ class RateField extends Field {
|
|
1009
1011
|
}
|
1010
1012
|
}
|
1011
1013
|
|
1014
|
+
class LinkField extends Field {
|
1015
|
+
isMeetFilter(condition, cellValue) {
|
1016
|
+
const cellTextValue = this.cellValueToString(cellValue);
|
1017
|
+
switch (condition.operation) {
|
1018
|
+
case AITableFilterOperation.empty:
|
1019
|
+
return isEmpty(cellTextValue);
|
1020
|
+
case AITableFilterOperation.exists:
|
1021
|
+
return !isEmpty(cellTextValue);
|
1022
|
+
case AITableFilterOperation.contain:
|
1023
|
+
return !isEmpty(cellTextValue) && this.stringInclude(cellTextValue, condition.value);
|
1024
|
+
default:
|
1025
|
+
return super.isMeetFilter(condition, cellTextValue);
|
1026
|
+
}
|
1027
|
+
}
|
1028
|
+
eq(cv1, cv2) {
|
1029
|
+
return this.cellValueToString(cv1) === this.cellValueToString(cv2);
|
1030
|
+
}
|
1031
|
+
compare(cellValue1, cellValue2, field) {
|
1032
|
+
const cellTextValue1 = this.cellValueToString(cellValue1);
|
1033
|
+
const cellTextValue2 = this.cellValueToString(cellValue2);
|
1034
|
+
return super.compare(cellTextValue1, cellTextValue2, field);
|
1035
|
+
}
|
1036
|
+
cellValueToString(cellValue) {
|
1037
|
+
if (isString(cellValue)) {
|
1038
|
+
return cellValue;
|
1039
|
+
}
|
1040
|
+
if (isObject(cellValue)) {
|
1041
|
+
return cellValue.text;
|
1042
|
+
}
|
1043
|
+
return '';
|
1044
|
+
}
|
1045
|
+
}
|
1046
|
+
|
1012
1047
|
const ViewOperationMap = {
|
1013
1048
|
[AITableFieldType.text]: new TextField(),
|
1014
1049
|
[AITableFieldType.richText]: new TextField(),
|
@@ -1018,7 +1053,7 @@ const ViewOperationMap = {
|
|
1018
1053
|
[AITableFieldType.updatedAt]: new DateField(),
|
1019
1054
|
[AITableFieldType.number]: new NumberField(),
|
1020
1055
|
[AITableFieldType.rate]: new RateField(),
|
1021
|
-
[AITableFieldType.link]: new
|
1056
|
+
[AITableFieldType.link]: new LinkField(),
|
1022
1057
|
[AITableFieldType.member]: new SelectField(),
|
1023
1058
|
[AITableFieldType.progress]: new NumberField(),
|
1024
1059
|
[AITableFieldType.createdBy]: new SelectField(),
|
@@ -1090,8 +1125,7 @@ function checkConditions(fields, record, filterConditions) {
|
|
1090
1125
|
return false;
|
1091
1126
|
}
|
1092
1127
|
function doFilterOperations(fields, record, condition) {
|
1093
|
-
const field = fields
|
1094
|
-
const cellValue = record.values[condition.field_id];
|
1128
|
+
const { field, cellValue } = getFilterValue(fields, record, condition);
|
1095
1129
|
try {
|
1096
1130
|
return field && doFilter(condition, field, cellValue);
|
1097
1131
|
}
|
@@ -1100,12 +1134,6 @@ function doFilterOperations(fields, record, condition) {
|
|
1100
1134
|
}
|
1101
1135
|
}
|
1102
1136
|
function doFilter(condition, field, cellValue) {
|
1103
|
-
if (condition.operation === AITableFilterOperation.empty) {
|
1104
|
-
return isEmpty(cellValue);
|
1105
|
-
}
|
1106
|
-
if (condition.operation === AITableFilterOperation.exists) {
|
1107
|
-
return !isEmpty(cellValue);
|
1108
|
-
}
|
1109
1137
|
return ViewOperationMap[field.type].isMeetFilter(condition, cellValue);
|
1110
1138
|
}
|
1111
1139
|
function getDefaultRecordDataByFilter(recordValues, conditions, conditionLogical) {
|
@@ -1117,6 +1145,25 @@ function getDefaultRecordDataByFilter(recordValues, conditions, conditionLogical
|
|
1117
1145
|
}
|
1118
1146
|
return recordValues;
|
1119
1147
|
}
|
1148
|
+
function getFilterValue(fields, record, condition) {
|
1149
|
+
const field = fields.find((item) => item._id === condition.field_id);
|
1150
|
+
let cellValue = null;
|
1151
|
+
if (field && isSystemField(field)) {
|
1152
|
+
if ([AITableFieldType.createdAt, AITableFieldType.updatedAt].includes(field.type)) {
|
1153
|
+
cellValue = { timestamp: record[field.type] };
|
1154
|
+
}
|
1155
|
+
else {
|
1156
|
+
cellValue = record[field.type];
|
1157
|
+
}
|
1158
|
+
}
|
1159
|
+
else {
|
1160
|
+
cellValue = record.values[condition.field_id];
|
1161
|
+
}
|
1162
|
+
return {
|
1163
|
+
field,
|
1164
|
+
cellValue
|
1165
|
+
};
|
1166
|
+
}
|
1120
1167
|
|
1121
1168
|
function getSortFields(aiTable, fields, activeView) {
|
1122
1169
|
return sortByViewPosition(fields, activeView);
|
@@ -1714,5 +1761,5 @@ const VIEW_ACTIONS = [ActionName.SetView, ActionName.AddView, ActionName.RemoveV
|
|
1714
1761
|
* Generated bundle index. Do not edit.
|
1715
1762
|
*/
|
1716
1763
|
|
1717
|
-
export { AITableFilterLogical, AITableFilterOperation, AI_TABLE_CONTENT_FIELD_NAME, ActionName, Actions, Direction, DividerMenuItem, EditFieldPropertyItem, ExecuteType, FLUSHING, Positions, RemovePositions, RemoveRecordsItem, SystemFieldIndex, VIEW_ACTIONS, ViewOperationMap, YjsAITable, actionMappers, addFields, addRecords, addView, applyActionOps, applyEvents, applyYjsEvents, buildFieldsByView, buildRecordsByView, buildRemoveFieldItem, createDefaultPositions, createSharedType, doFilter, getCustomFieldValues, getDataBySharedType, getDefaultRecordDataByFilter, getDefaultRecordValues, getFilteredRecords, getIdBySystemFieldValues, getIdBySystemFieldValuesType, getPosition, getPositionsByRecordSyncElement, getPositionsBySystemFieldValues, getRecordsBySharedJson, getShareTypeNumberPath, getSharedMapValueId, getSharedMapValueIndex, getSharedRecord, getSharedRecordId, getSharedRecordIndex, getSharedTypeByData, getShortIdBySystemFieldValues, getSortFields, getSortRecords, getSystemFieldValues, getTrackableEntityBySystemFieldValues, getValuesByCustomFieldValues, isEmpty, isPathEqual, removeView, setRecordPositions$1 as setRecordPositions, setRecordUpdatedInfo, sortByViewPosition, sortRecordsBySortInfo, toRecordSyncElement, toSharedType, toSyncElement, translatePositionToPath, translateYjsEvent, updateFieldValue, updateRecordsUpdatedInfo, withState };
|
1764
|
+
export { AITableFilterLogical, AITableFilterOperation, AI_TABLE_CONTENT_FIELD_NAME, ActionName, Actions, Direction, DividerMenuItem, EditFieldPropertyItem, ExecuteType, FLUSHING, Positions, RemovePositions, RemoveRecordsItem, SystemFieldIndex, VIEW_ACTIONS, ViewOperationMap, YjsAITable, actionMappers, addFields, addRecords, addView, applyActionOps, applyEvents, applyYjsEvents, buildFieldsByView, buildRecordsByView, buildRemoveFieldItem, createDefaultPositions, createSharedType, doFilter, getCustomFieldValues, getDataBySharedType, getDefaultRecordDataByFilter, getDefaultRecordValues, getFilterValue, getFilteredRecords, getIdBySystemFieldValues, getIdBySystemFieldValuesType, getPosition, getPositionsByRecordSyncElement, getPositionsBySystemFieldValues, getRecordsBySharedJson, getShareTypeNumberPath, getSharedMapValueId, getSharedMapValueIndex, getSharedRecord, getSharedRecordId, getSharedRecordIndex, getSharedTypeByData, getShortIdBySystemFieldValues, getSortFields, getSortRecords, getSystemFieldValues, getTrackableEntityBySystemFieldValues, getValuesByCustomFieldValues, isEmpty, isPathEqual, removeView, setRecordPositions$1 as setRecordPositions, setRecordUpdatedInfo, sortByViewPosition, sortRecordsBySortInfo, toRecordSyncElement, toSharedType, toSyncElement, translatePositionToPath, translateYjsEvent, updateFieldValue, updateRecordsUpdatedInfo, withState };
|
1718
1765
|
//# sourceMappingURL=ai-table-state.mjs.map
|