@ai-table/state 0.0.12 → 0.0.13
Sign up to get free protection for your applications and to get access to all the features.
- package/action/field.d.ts +14 -0
- package/action/field.d.ts.map +1 -0
- package/action/general.d.ts +5 -0
- package/action/general.d.ts.map +1 -0
- package/action/index.d.ts +17 -0
- package/action/index.d.ts.map +1 -0
- package/action/position.d.ts +9 -0
- package/action/position.d.ts.map +1 -0
- package/action/record.d.ts +13 -0
- package/action/record.d.ts.map +1 -0
- package/{view/action → action}/view.d.ts +1 -1
- package/action/view.d.ts.map +1 -0
- package/constants/field-menu-item.d.ts +22 -0
- package/constants/field-menu-item.d.ts.map +1 -0
- package/constants/index.d.ts +3 -0
- package/constants/index.d.ts.map +1 -0
- package/constants/view.d.ts +3 -0
- package/constants/view.d.ts.map +1 -0
- package/esm2022/action/field.mjs +57 -0
- package/esm2022/action/general.mjs +179 -0
- package/esm2022/action/index.mjs +13 -0
- package/esm2022/action/position.mjs +21 -0
- package/esm2022/action/record.mjs +44 -0
- package/esm2022/action/view.mjs +47 -0
- package/esm2022/constants/field-menu-item.mjs +39 -0
- package/esm2022/constants/index.mjs +3 -0
- package/esm2022/constants/view.mjs +3 -0
- package/esm2022/plugins/state.plugin.mjs +20 -0
- package/esm2022/public-api.mjs +4 -4
- package/esm2022/shared/to-table/array-event.mjs +9 -9
- package/esm2022/shared/to-table/index.mjs +2 -2
- package/esm2022/shared/to-table/map-event.mjs +3 -4
- package/esm2022/shared/to-yjs/add-node.mjs +5 -5
- package/esm2022/shared/to-yjs/index.mjs +1 -1
- package/esm2022/shared/to-yjs/remove-node.mjs +4 -5
- package/esm2022/shared/to-yjs/set-node.mjs +3 -4
- package/esm2022/shared/to-yjs/update-field-value.mjs +1 -1
- package/esm2022/shared/utils/init-shared.mjs +1 -1
- package/esm2022/types/action.mjs +23 -0
- package/esm2022/types/ai-table.mjs +2 -0
- package/esm2022/types/index.mjs +4 -1
- package/esm2022/types/view.mjs +1 -12
- package/esm2022/utils/build.mjs +7 -7
- package/esm2022/utils/common.mjs +21 -1
- package/esm2022/utils/field/add-fields.mjs +19 -0
- package/esm2022/utils/field/model/date.mjs +74 -0
- package/esm2022/utils/field/model/field.mjs +63 -0
- package/esm2022/utils/field/model/index.mjs +22 -0
- package/esm2022/utils/field/model/number.mjs +46 -0
- package/esm2022/utils/field/model/rate.mjs +38 -0
- package/esm2022/utils/field/model/select.mjs +55 -0
- package/esm2022/utils/field/model/text.mjs +27 -0
- package/esm2022/utils/field/sort-fields.mjs +5 -0
- package/esm2022/utils/index.mjs +9 -3
- package/esm2022/utils/record/add-records.mjs +48 -0
- package/esm2022/utils/record/filter.mjs +65 -0
- package/esm2022/utils/record/sort.mjs +34 -0
- package/esm2022/utils/record/update-field-value.mjs +5 -0
- package/esm2022/utils/view.mjs +6 -11
- package/esm2022/utils/weak-map.mjs +2 -0
- package/fesm2022/ai-table-state.mjs +710 -437
- package/fesm2022/ai-table-state.mjs.map +1 -1
- package/package.json +1 -1
- package/plugins/state.plugin.d.ts +3 -0
- package/plugins/state.plugin.d.ts.map +1 -0
- package/public-api.d.ts +3 -3
- package/public-api.d.ts.map +1 -1
- package/shared/to-table/array-event.d.ts +2 -3
- package/shared/to-table/array-event.d.ts.map +1 -1
- package/shared/to-table/index.d.ts +2 -2
- package/shared/to-table/index.d.ts.map +1 -1
- package/shared/to-table/map-event.d.ts +2 -2
- package/shared/to-table/map-event.d.ts.map +1 -1
- package/shared/to-yjs/add-node.d.ts +1 -2
- package/shared/to-yjs/add-node.d.ts.map +1 -1
- package/shared/to-yjs/index.d.ts +2 -2
- package/shared/to-yjs/index.d.ts.map +1 -1
- package/shared/to-yjs/remove-node.d.ts +1 -2
- package/shared/to-yjs/remove-node.d.ts.map +1 -1
- package/shared/to-yjs/set-node.d.ts +1 -2
- package/shared/to-yjs/set-node.d.ts.map +1 -1
- package/shared/to-yjs/update-field-value.d.ts +1 -2
- package/shared/to-yjs/update-field-value.d.ts.map +1 -1
- package/shared/utils/init-shared.d.ts.map +1 -1
- package/types/action.d.ts +90 -0
- package/types/action.d.ts.map +1 -0
- package/types/ai-table.d.ts +15 -0
- package/types/ai-table.d.ts.map +1 -0
- package/types/index.d.ts +3 -0
- package/types/index.d.ts.map +1 -1
- package/types/view.d.ts +1 -47
- package/types/view.d.ts.map +1 -1
- package/utils/build.d.ts +3 -4
- package/utils/build.d.ts.map +1 -1
- package/utils/common.d.ts +5 -0
- package/utils/common.d.ts.map +1 -1
- package/utils/field/add-fields.d.ts +4 -0
- package/utils/field/add-fields.d.ts.map +1 -0
- package/utils/field/{date.d.ts → model/date.d.ts} +1 -1
- package/utils/field/model/date.d.ts.map +1 -0
- package/utils/field/{field.d.ts → model/field.d.ts} +1 -1
- package/utils/field/model/field.d.ts.map +1 -0
- package/utils/field/model/index.d.ts.map +1 -0
- package/utils/field/{number.d.ts → model/number.d.ts} +1 -1
- package/utils/field/model/number.d.ts.map +1 -0
- package/utils/field/{rate.d.ts → model/rate.d.ts} +1 -1
- package/utils/field/model/rate.d.ts.map +1 -0
- package/utils/field/{select.d.ts → model/select.d.ts} +1 -1
- package/utils/field/model/select.d.ts.map +1 -0
- package/utils/field/{text.d.ts → model/text.d.ts} +1 -1
- package/utils/field/model/text.d.ts.map +1 -0
- package/utils/field/sort-fields.d.ts +4 -0
- package/utils/field/sort-fields.d.ts.map +1 -0
- package/utils/index.d.ts +8 -2
- package/utils/index.d.ts.map +1 -1
- package/utils/record/add-records.d.ts +5 -0
- package/utils/record/add-records.d.ts.map +1 -0
- package/utils/record/filter.d.ts +6 -0
- package/utils/record/filter.d.ts.map +1 -0
- package/utils/record/sort.d.ts +5 -0
- package/utils/record/sort.d.ts.map +1 -0
- package/utils/record/update-field-value.d.ts +4 -0
- package/utils/record/update-field-value.d.ts.map +1 -0
- package/utils/view.d.ts +1 -2
- package/utils/view.d.ts.map +1 -1
- package/utils/weak-map.d.ts +3 -0
- package/utils/weak-map.d.ts.map +1 -0
- package/esm2022/utils/field/date.mjs +0 -74
- package/esm2022/utils/field/field.mjs +0 -63
- package/esm2022/utils/field/index.mjs +0 -22
- package/esm2022/utils/field/number.mjs +0 -46
- package/esm2022/utils/field/rate.mjs +0 -38
- package/esm2022/utils/field/select.mjs +0 -55
- package/esm2022/utils/field/text.mjs +0 -27
- package/esm2022/utils/filter-records.mjs +0 -52
- package/esm2022/utils/sort-records.mjs +0 -34
- package/esm2022/view/action/general.mjs +0 -137
- package/esm2022/view/action/index.mjs +0 -4
- package/esm2022/view/action/position.mjs +0 -21
- package/esm2022/view/action/view.mjs +0 -47
- package/esm2022/view/constants/view.mjs +0 -4
- package/esm2022/view/plugins/view.plugin.mjs +0 -34
- package/utils/field/date.d.ts.map +0 -1
- package/utils/field/field.d.ts.map +0 -1
- package/utils/field/index.d.ts.map +0 -1
- package/utils/field/number.d.ts.map +0 -1
- package/utils/field/rate.d.ts.map +0 -1
- package/utils/field/select.d.ts.map +0 -1
- package/utils/field/text.d.ts.map +0 -1
- package/utils/filter-records.d.ts +0 -5
- package/utils/filter-records.d.ts.map +0 -1
- package/utils/sort-records.d.ts +0 -5
- package/utils/sort-records.d.ts.map +0 -1
- package/view/action/general.d.ts +0 -14
- package/view/action/general.d.ts.map +0 -1
- package/view/action/index.d.ts +0 -4
- package/view/action/index.d.ts.map +0 -1
- package/view/action/position.d.ts +0 -8
- package/view/action/position.d.ts.map +0 -1
- package/view/action/view.d.ts.map +0 -1
- package/view/constants/view.d.ts +0 -4
- package/view/constants/view.d.ts.map +0 -1
- package/view/plugins/view.plugin.d.ts +0 -3
- package/view/plugins/view.plugin.d.ts.map +0 -1
- /package/utils/field/{index.d.ts → model/index.d.ts} +0 -0
@@ -1,74 +0,0 @@
|
|
1
|
-
import { Field } from './field';
|
2
|
-
import { fromUnixTime, subDays } from 'date-fns';
|
3
|
-
import { isArray, TinyDate } from 'ngx-tethys/util';
|
4
|
-
import { AITableFilterOperation } from '../../types';
|
5
|
-
import { isEmpty } from '../common';
|
6
|
-
export class DateField extends Field {
|
7
|
-
isMeetFilter(condition, cellValue) {
|
8
|
-
const [left, right] = this.getTimeRange(condition.value);
|
9
|
-
switch (condition.operation) {
|
10
|
-
case AITableFilterOperation.empty:
|
11
|
-
return isEmpty(cellValue.timestamp) || cellValue.timestamp === 0;
|
12
|
-
case AITableFilterOperation.exists:
|
13
|
-
return !isEmpty(cellValue.timestamp) && cellValue.timestamp !== 0;
|
14
|
-
case AITableFilterOperation.eq:
|
15
|
-
return left <= cellValue.timestamp && cellValue.timestamp < right;
|
16
|
-
case AITableFilterOperation.gt:
|
17
|
-
return cellValue.timestamp > right;
|
18
|
-
case AITableFilterOperation.lt:
|
19
|
-
return cellValue.timestamp < left;
|
20
|
-
case AITableFilterOperation.between:
|
21
|
-
return left <= cellValue.timestamp && cellValue.timestamp < right;
|
22
|
-
default:
|
23
|
-
return super.isMeetFilter(condition, cellValue);
|
24
|
-
}
|
25
|
-
}
|
26
|
-
getTimeRange(value) {
|
27
|
-
switch (value) {
|
28
|
-
case 'today':
|
29
|
-
return [new TinyDate(new Date()).startOfDay().getUnixTime(), new TinyDate(new Date()).endOfDay().getUnixTime()];
|
30
|
-
case 'current_week':
|
31
|
-
return [
|
32
|
-
new TinyDate().startOfWeek({ weekStartsOn: 1 }).getUnixTime(),
|
33
|
-
new TinyDate().endOfWeek({ weekStartsOn: 1 }).getUnixTime()
|
34
|
-
];
|
35
|
-
case 'yesterday':
|
36
|
-
return [
|
37
|
-
new TinyDate(subDays(new Date(), 1)).startOfDay().getUnixTime(),
|
38
|
-
new TinyDate(subDays(new Date(), 1)).endOfDay().getUnixTime()
|
39
|
-
];
|
40
|
-
case 'current_month':
|
41
|
-
return [new TinyDate().startOfMonth().getUnixTime(), new TinyDate().endOfMonth().getUnixTime()];
|
42
|
-
default:
|
43
|
-
if (isArray(value)) {
|
44
|
-
return [
|
45
|
-
new TinyDate(fromUnixTime(value[0])).startOfDay().getUnixTime(),
|
46
|
-
new TinyDate(fromUnixTime(value[1])).endOfDay().getUnixTime()
|
47
|
-
];
|
48
|
-
}
|
49
|
-
return [
|
50
|
-
new TinyDate(fromUnixTime(value)).startOfDay().getUnixTime(),
|
51
|
-
new TinyDate(fromUnixTime(value)).endOfDay().getUnixTime()
|
52
|
-
];
|
53
|
-
}
|
54
|
-
}
|
55
|
-
cellValueToString(_cellValue) {
|
56
|
-
return null;
|
57
|
-
}
|
58
|
-
static _compare(cellValue1, cellValue2) {
|
59
|
-
if (isEmpty(cellValue1?.timestamp) && isEmpty(cellValue2?.timestamp)) {
|
60
|
-
return 0;
|
61
|
-
}
|
62
|
-
if (isEmpty(cellValue1?.timestamp)) {
|
63
|
-
return -1;
|
64
|
-
}
|
65
|
-
if (isEmpty(cellValue2?.timestamp)) {
|
66
|
-
return 1;
|
67
|
-
}
|
68
|
-
return cellValue1.timestamp === cellValue2.timestamp ? 0 : cellValue1.timestamp > cellValue2.timestamp ? 1 : -1;
|
69
|
-
}
|
70
|
-
compare(cellValue1, cellValue2) {
|
71
|
-
return DateField._compare(cellValue1, cellValue2);
|
72
|
-
}
|
73
|
-
}
|
74
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL3N0YXRlL3NyYy91dGlscy9maWVsZC9kYXRlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxTQUFTLENBQUM7QUFFaEMsT0FBTyxFQUFFLFlBQVksRUFBRSxPQUFPLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFDakQsT0FBTyxFQUFFLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNwRCxPQUFPLEVBQTBCLHNCQUFzQixFQUFFLE1BQU0sYUFBYSxDQUFBO0FBQzVFLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFFcEMsTUFBTSxPQUFPLFNBQVUsU0FBUSxLQUFLO0lBQ3ZCLFlBQVksQ0FBQyxTQUF5QyxFQUFFLFNBQXlCO1FBQ3RGLE1BQU0sQ0FBQyxJQUFJLEVBQUUsS0FBSyxDQUFDLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDekQsUUFBUSxTQUFTLENBQUMsU0FBUyxFQUFFLENBQUM7WUFDMUIsS0FBSyxzQkFBc0IsQ0FBQyxLQUFLO2dCQUM3QixPQUFPLE9BQU8sQ0FBQyxTQUFTLENBQUMsU0FBUyxDQUFDLElBQUksU0FBUyxDQUFDLFNBQVMsS0FBSyxDQUFDLENBQUM7WUFDckUsS0FBSyxzQkFBc0IsQ0FBQyxNQUFNO2dCQUM5QixPQUFPLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxTQUFTLENBQUMsSUFBSSxTQUFTLENBQUMsU0FBUyxLQUFLLENBQUMsQ0FBQztZQUN0RSxLQUFLLHNCQUFzQixDQUFDLEVBQUU7Z0JBQzFCLE9BQU8sSUFBSSxJQUFJLFNBQVMsQ0FBQyxTQUFTLElBQUksU0FBUyxDQUFDLFNBQVMsR0FBRyxLQUFLLENBQUM7WUFDdEUsS0FBSyxzQkFBc0IsQ0FBQyxFQUFFO2dCQUMxQixPQUFPLFNBQVMsQ0FBQyxTQUFTLEdBQUcsS0FBSyxDQUFDO1lBQ3ZDLEtBQUssc0JBQXNCLENBQUMsRUFBRTtnQkFDMUIsT0FBTyxTQUFTLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQztZQUN0QyxLQUFLLHNCQUFzQixDQUFDLE9BQU87Z0JBQy9CLE9BQU8sSUFBSSxJQUFJLFNBQVMsQ0FBQyxTQUFTLElBQUksU0FBUyxDQUFDLFNBQVMsR0FBRyxLQUFLLENBQUM7WUFDdEU7Z0JBQ0ksT0FBTyxLQUFLLENBQUMsWUFBWSxDQUFDLFNBQVMsRUFBRSxTQUFTLENBQUMsQ0FBQztRQUN4RCxDQUFDO0lBQ0wsQ0FBQztJQUVELFlBQVksQ0FBQyxLQUFpQztRQUMxQyxRQUFRLEtBQUssRUFBRSxDQUFDO1lBQ1osS0FBSyxPQUFPO2dCQUNSLE9BQU8sQ0FBQyxJQUFJLFFBQVEsQ0FBQyxJQUFJLElBQUksRUFBRSxDQUFDLENBQUMsVUFBVSxFQUFFLENBQUMsV0FBVyxFQUFFLEVBQUUsSUFBSSxRQUFRLENBQUMsSUFBSSxJQUFJLEVBQUUsQ0FBQyxDQUFDLFFBQVEsRUFBRSxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUM7WUFDcEgsS0FBSyxjQUFjO2dCQUNmLE9BQU87b0JBQ0gsSUFBSSxRQUFRLEVBQUUsQ0FBQyxXQUFXLENBQUMsRUFBRSxZQUFZLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxXQUFXLEVBQUU7b0JBQzdELElBQUksUUFBUSxFQUFFLENBQUMsU0FBUyxDQUFDLEVBQUUsWUFBWSxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsV0FBVyxFQUFFO2lCQUM5RCxDQUFDO1lBQ04sS0FBSyxXQUFXO2dCQUNaLE9BQU87b0JBQ0gsSUFBSSxRQUFRLENBQUMsT0FBTyxDQUFDLElBQUksSUFBSSxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxVQUFVLEVBQUUsQ0FBQyxXQUFXLEVBQUU7b0JBQy9ELElBQUksUUFBUSxDQUFDLE9BQU8sQ0FBQyxJQUFJLElBQUksRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsUUFBUSxFQUFFLENBQUMsV0FBVyxFQUFFO2lCQUNoRSxDQUFDO1lBQ04sS0FBSyxlQUFlO2dCQUNoQixPQUFPLENBQUMsSUFBSSxRQUFRLEVBQUUsQ0FBQyxZQUFZLEVBQUUsQ0FBQyxXQUFXLEVBQUUsRUFBRSxJQUFJLFFBQVEsRUFBRSxDQUFDLFVBQVUsRUFBRSxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUM7WUFDcEc7Z0JBQ0ksSUFBSSxPQUFPLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQztvQkFDakIsT0FBTzt3QkFDSCxJQUFJLFFBQVEsQ0FBQyxZQUFZLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBVyxDQUFDLENBQUMsQ0FBQyxVQUFVLEVBQUUsQ0FBQyxXQUFXLEVBQUU7d0JBQ3pFLElBQUksUUFBUSxDQUFDLFlBQVksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFXLENBQUMsQ0FBQyxDQUFDLFFBQVEsRUFBRSxDQUFDLFdBQVcsRUFBRTtxQkFDMUUsQ0FBQztnQkFDTixDQUFDO2dCQUNELE9BQU87b0JBQ0gsSUFBSSxRQUFRLENBQUMsWUFBWSxDQUFDLEtBQWUsQ0FBQyxDQUFDLENBQUMsVUFBVSxFQUFFLENBQUMsV0FBVyxFQUFFO29CQUN0RSxJQUFJLFFBQVEsQ0FBQyxZQUFZLENBQUMsS0FBZSxDQUFDLENBQUMsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxXQUFXLEVBQUU7aUJBQ3ZFLENBQUM7UUFDVixDQUFDO0lBQ0wsQ0FBQztJQUVELGlCQUFpQixDQUFDLFVBQTBCO1FBQ3hDLE9BQU8sSUFBSSxDQUFDO0lBQ2hCLENBQUM7SUFFRCxNQUFNLENBQUMsUUFBUSxDQUFDLFVBQTBCLEVBQUUsVUFBMEI7UUFDbEUsSUFBSSxPQUFPLENBQUMsVUFBVSxFQUFFLFNBQVMsQ0FBQyxJQUFJLE9BQU8sQ0FBQyxVQUFVLEVBQUUsU0FBUyxDQUFDLEVBQUUsQ0FBQztZQUNuRSxPQUFPLENBQUMsQ0FBQztRQUNiLENBQUM7UUFDRCxJQUFJLE9BQU8sQ0FBQyxVQUFVLEVBQUUsU0FBUyxDQUFDLEVBQUUsQ0FBQztZQUNqQyxPQUFPLENBQUMsQ0FBQyxDQUFDO1FBQ2QsQ0FBQztRQUNELElBQUksT0FBTyxDQUFDLFVBQVUsRUFBRSxTQUFTLENBQUMsRUFBRSxDQUFDO1lBQ2pDLE9BQU8sQ0FBQyxDQUFDO1FBQ2IsQ0FBQztRQUVELE9BQU8sVUFBVSxDQUFDLFNBQVMsS0FBSyxVQUFVLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxTQUFTLEdBQUcsVUFBVSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUNwSCxDQUFDO0lBRVEsT0FBTyxDQUFDLFVBQTBCLEVBQUUsVUFBMEI7UUFDbkUsT0FBTyxTQUFTLENBQUMsUUFBUSxDQUFDLFVBQVUsRUFBRSxVQUFVLENBQUMsQ0FBQztJQUN0RCxDQUFDO0NBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBGaWVsZCB9IGZyb20gJy4vZmllbGQnO1xuaW1wb3J0IHsgRGF0ZUZpZWxkVmFsdWUgfSBmcm9tICdAYWktdGFibGUvZ3JpZCc7XG5pbXBvcnQgeyBmcm9tVW5peFRpbWUsIHN1YkRheXMgfSBmcm9tICdkYXRlLWZucyc7XG5pbXBvcnQgeyBpc0FycmF5LCBUaW55RGF0ZSB9IGZyb20gJ25neC10ZXRoeXMvdXRpbCc7XG5pbXBvcnQgeyBBSVRhYmxlRmlsdGVyQ29uZGl0aW9uLCBBSVRhYmxlRmlsdGVyT3BlcmF0aW9uIH0gZnJvbSAnLi4vLi4vdHlwZXMnXG5pbXBvcnQgeyBpc0VtcHR5IH0gZnJvbSAnLi4vY29tbW9uJztcblxuZXhwb3J0IGNsYXNzIERhdGVGaWVsZCBleHRlbmRzIEZpZWxkIHtcbiAgICBvdmVycmlkZSBpc01lZXRGaWx0ZXIoY29uZGl0aW9uOiBBSVRhYmxlRmlsdGVyQ29uZGl0aW9uPHN0cmluZz4sIGNlbGxWYWx1ZTogRGF0ZUZpZWxkVmFsdWUpIHtcbiAgICAgICAgY29uc3QgW2xlZnQsIHJpZ2h0XSA9IHRoaXMuZ2V0VGltZVJhbmdlKGNvbmRpdGlvbi52YWx1ZSk7XG4gICAgICAgIHN3aXRjaCAoY29uZGl0aW9uLm9wZXJhdGlvbikge1xuICAgICAgICAgICAgY2FzZSBBSVRhYmxlRmlsdGVyT3BlcmF0aW9uLmVtcHR5OlxuICAgICAgICAgICAgICAgIHJldHVybiBpc0VtcHR5KGNlbGxWYWx1ZS50aW1lc3RhbXApIHx8IGNlbGxWYWx1ZS50aW1lc3RhbXAgPT09IDA7XG4gICAgICAgICAgICBjYXNlIEFJVGFibGVGaWx0ZXJPcGVyYXRpb24uZXhpc3RzOlxuICAgICAgICAgICAgICAgIHJldHVybiAhaXNFbXB0eShjZWxsVmFsdWUudGltZXN0YW1wKSAmJiBjZWxsVmFsdWUudGltZXN0YW1wICE9PSAwO1xuICAgICAgICAgICAgY2FzZSBBSVRhYmxlRmlsdGVyT3BlcmF0aW9uLmVxOlxuICAgICAgICAgICAgICAgIHJldHVybiBsZWZ0IDw9IGNlbGxWYWx1ZS50aW1lc3RhbXAgJiYgY2VsbFZhbHVlLnRpbWVzdGFtcCA8IHJpZ2h0O1xuICAgICAgICAgICAgY2FzZSBBSVRhYmxlRmlsdGVyT3BlcmF0aW9uLmd0OlxuICAgICAgICAgICAgICAgIHJldHVybiBjZWxsVmFsdWUudGltZXN0YW1wID4gcmlnaHQ7XG4gICAgICAgICAgICBjYXNlIEFJVGFibGVGaWx0ZXJPcGVyYXRpb24ubHQ6XG4gICAgICAgICAgICAgICAgcmV0dXJuIGNlbGxWYWx1ZS50aW1lc3RhbXAgPCBsZWZ0O1xuICAgICAgICAgICAgY2FzZSBBSVRhYmxlRmlsdGVyT3BlcmF0aW9uLmJldHdlZW46XG4gICAgICAgICAgICAgICAgcmV0dXJuIGxlZnQgPD0gY2VsbFZhbHVlLnRpbWVzdGFtcCAmJiBjZWxsVmFsdWUudGltZXN0YW1wIDwgcmlnaHQ7XG4gICAgICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgICAgIHJldHVybiBzdXBlci5pc01lZXRGaWx0ZXIoY29uZGl0aW9uLCBjZWxsVmFsdWUpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgZ2V0VGltZVJhbmdlKHZhbHVlOiBzdHJpbmcgfCBudW1iZXIgfCBudW1iZXJbXSkge1xuICAgICAgICBzd2l0Y2ggKHZhbHVlKSB7XG4gICAgICAgICAgICBjYXNlICd0b2RheSc6XG4gICAgICAgICAgICAgICAgcmV0dXJuIFtuZXcgVGlueURhdGUobmV3IERhdGUoKSkuc3RhcnRPZkRheSgpLmdldFVuaXhUaW1lKCksIG5ldyBUaW55RGF0ZShuZXcgRGF0ZSgpKS5lbmRPZkRheSgpLmdldFVuaXhUaW1lKCldO1xuICAgICAgICAgICAgY2FzZSAnY3VycmVudF93ZWVrJzpcbiAgICAgICAgICAgICAgICByZXR1cm4gW1xuICAgICAgICAgICAgICAgICAgICBuZXcgVGlueURhdGUoKS5zdGFydE9mV2Vlayh7IHdlZWtTdGFydHNPbjogMSB9KS5nZXRVbml4VGltZSgpLFxuICAgICAgICAgICAgICAgICAgICBuZXcgVGlueURhdGUoKS5lbmRPZldlZWsoeyB3ZWVrU3RhcnRzT246IDEgfSkuZ2V0VW5peFRpbWUoKVxuICAgICAgICAgICAgICAgIF07XG4gICAgICAgICAgICBjYXNlICd5ZXN0ZXJkYXknOlxuICAgICAgICAgICAgICAgIHJldHVybiBbXG4gICAgICAgICAgICAgICAgICAgIG5ldyBUaW55RGF0ZShzdWJEYXlzKG5ldyBEYXRlKCksIDEpKS5zdGFydE9mRGF5KCkuZ2V0VW5peFRpbWUoKSxcbiAgICAgICAgICAgICAgICAgICAgbmV3IFRpbnlEYXRlKHN1YkRheXMobmV3IERhdGUoKSwgMSkpLmVuZE9mRGF5KCkuZ2V0VW5peFRpbWUoKVxuICAgICAgICAgICAgICAgIF07XG4gICAgICAgICAgICBjYXNlICdjdXJyZW50X21vbnRoJzpcbiAgICAgICAgICAgICAgICByZXR1cm4gW25ldyBUaW55RGF0ZSgpLnN0YXJ0T2ZNb250aCgpLmdldFVuaXhUaW1lKCksIG5ldyBUaW55RGF0ZSgpLmVuZE9mTW9udGgoKS5nZXRVbml4VGltZSgpXTtcbiAgICAgICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgICAgICAgaWYgKGlzQXJyYXkodmFsdWUpKSB7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBbXG4gICAgICAgICAgICAgICAgICAgICAgICBuZXcgVGlueURhdGUoZnJvbVVuaXhUaW1lKHZhbHVlWzBdIGFzIG51bWJlcikpLnN0YXJ0T2ZEYXkoKS5nZXRVbml4VGltZSgpLFxuICAgICAgICAgICAgICAgICAgICAgICAgbmV3IFRpbnlEYXRlKGZyb21Vbml4VGltZSh2YWx1ZVsxXSBhcyBudW1iZXIpKS5lbmRPZkRheSgpLmdldFVuaXhUaW1lKClcbiAgICAgICAgICAgICAgICAgICAgXTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgcmV0dXJuIFtcbiAgICAgICAgICAgICAgICAgICAgbmV3IFRpbnlEYXRlKGZyb21Vbml4VGltZSh2YWx1ZSBhcyBudW1iZXIpKS5zdGFydE9mRGF5KCkuZ2V0VW5peFRpbWUoKSxcbiAgICAgICAgICAgICAgICAgICAgbmV3IFRpbnlEYXRlKGZyb21Vbml4VGltZSh2YWx1ZSBhcyBudW1iZXIpKS5lbmRPZkRheSgpLmdldFVuaXhUaW1lKClcbiAgICAgICAgICAgICAgICBdO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgY2VsbFZhbHVlVG9TdHJpbmcoX2NlbGxWYWx1ZTogRGF0ZUZpZWxkVmFsdWUpOiBzdHJpbmcgfCBudWxsIHtcbiAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuXG4gICAgc3RhdGljIF9jb21wYXJlKGNlbGxWYWx1ZTE6IERhdGVGaWVsZFZhbHVlLCBjZWxsVmFsdWUyOiBEYXRlRmllbGRWYWx1ZSk6IG51bWJlciB7XG4gICAgICAgIGlmIChpc0VtcHR5KGNlbGxWYWx1ZTE/LnRpbWVzdGFtcCkgJiYgaXNFbXB0eShjZWxsVmFsdWUyPy50aW1lc3RhbXApKSB7XG4gICAgICAgICAgICByZXR1cm4gMDtcbiAgICAgICAgfVxuICAgICAgICBpZiAoaXNFbXB0eShjZWxsVmFsdWUxPy50aW1lc3RhbXApKSB7XG4gICAgICAgICAgICByZXR1cm4gLTE7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKGlzRW1wdHkoY2VsbFZhbHVlMj8udGltZXN0YW1wKSkge1xuICAgICAgICAgICAgcmV0dXJuIDE7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gY2VsbFZhbHVlMS50aW1lc3RhbXAgPT09IGNlbGxWYWx1ZTIudGltZXN0YW1wID8gMCA6IGNlbGxWYWx1ZTEudGltZXN0YW1wID4gY2VsbFZhbHVlMi50aW1lc3RhbXAgPyAxIDogLTE7XG4gICAgfVxuXG4gICAgb3ZlcnJpZGUgY29tcGFyZShjZWxsVmFsdWUxOiBEYXRlRmllbGRWYWx1ZSwgY2VsbFZhbHVlMjogRGF0ZUZpZWxkVmFsdWUpOiBudW1iZXIge1xuICAgICAgICByZXR1cm4gRGF0ZUZpZWxkLl9jb21wYXJlKGNlbGxWYWx1ZTEsIGNlbGxWYWx1ZTIpO1xuICAgIH1cbn1cbiJdfQ==
|
@@ -1,63 +0,0 @@
|
|
1
|
-
import { AITableFilterOperation } from '../../types';
|
2
|
-
import { isEmpty } from '../common';
|
3
|
-
import { isEqual } from 'lodash';
|
4
|
-
export const zhIntlCollator = typeof Intl !== 'undefined' ? new Intl.Collator('zh-CN') : undefined;
|
5
|
-
export class Field {
|
6
|
-
stringInclude(str, searchStr) {
|
7
|
-
return str.toLowerCase().includes(searchStr.trim().toLowerCase());
|
8
|
-
}
|
9
|
-
isMeetFilter(condition, cellValue) {
|
10
|
-
switch (condition.operation) {
|
11
|
-
case AITableFilterOperation.empty:
|
12
|
-
case AITableFilterOperation.exists: {
|
13
|
-
return this.isEmptyOrNot(condition.operation, cellValue);
|
14
|
-
}
|
15
|
-
default: {
|
16
|
-
return true;
|
17
|
-
}
|
18
|
-
}
|
19
|
-
}
|
20
|
-
isEmptyOrNot(operation, cellValue) {
|
21
|
-
switch (operation) {
|
22
|
-
case AITableFilterOperation.empty: {
|
23
|
-
return isEmpty(cellValue);
|
24
|
-
}
|
25
|
-
case AITableFilterOperation.exists: {
|
26
|
-
return !isEmpty(cellValue);
|
27
|
-
}
|
28
|
-
default: {
|
29
|
-
throw new Error('compare operator type error');
|
30
|
-
}
|
31
|
-
}
|
32
|
-
}
|
33
|
-
eq(cv1, cv2) {
|
34
|
-
return isEqual(cv1, cv2);
|
35
|
-
}
|
36
|
-
compare(cellValue1, cellValue2, field) {
|
37
|
-
if (this.eq(cellValue1, cellValue2)) {
|
38
|
-
return 0;
|
39
|
-
}
|
40
|
-
if (cellValue1 == null) {
|
41
|
-
return -1;
|
42
|
-
}
|
43
|
-
if (cellValue2 == null) {
|
44
|
-
return 1;
|
45
|
-
}
|
46
|
-
let str1 = this.cellValueToString(cellValue1, field);
|
47
|
-
let str2 = this.cellValueToString(cellValue2, field);
|
48
|
-
if (str1 === str2) {
|
49
|
-
return 0;
|
50
|
-
}
|
51
|
-
if (str1 == null) {
|
52
|
-
return -1;
|
53
|
-
}
|
54
|
-
if (str2 == null) {
|
55
|
-
return 1;
|
56
|
-
}
|
57
|
-
str1 = str1.trim();
|
58
|
-
str2 = str2.trim();
|
59
|
-
// test pinyin sort
|
60
|
-
return str1 === str2 ? 0 : zhIntlCollator ? zhIntlCollator.compare(str1, str2) : str1.localeCompare(str2, 'zh-CN') > 0 ? 1 : -1;
|
61
|
-
}
|
62
|
-
}
|
63
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmllbGQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9zdGF0ZS9zcmMvdXRpbHMvZmllbGQvZmllbGQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUEwQixzQkFBc0IsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUM3RSxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBQ3BDLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxRQUFRLENBQUM7QUFFakMsTUFBTSxDQUFDLE1BQU0sY0FBYyxHQUFHLE9BQU8sSUFBSSxLQUFLLFdBQVcsQ0FBQyxDQUFDLENBQUMsSUFBSSxJQUFJLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUM7QUFFbkcsTUFBTSxPQUFnQixLQUFLO0lBQ2IsYUFBYSxDQUFDLEdBQVcsRUFBRSxTQUFpQjtRQUNsRCxPQUFPLEdBQUcsQ0FBQyxXQUFXLEVBQUUsQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLElBQUksRUFBRSxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUM7SUFDdEUsQ0FBQztJQUlELFlBQVksQ0FBQyxTQUFpQyxFQUFFLFNBQXFCO1FBQ2pFLFFBQVEsU0FBUyxDQUFDLFNBQVMsRUFBRSxDQUFDO1lBQzFCLEtBQUssc0JBQXNCLENBQUMsS0FBSyxDQUFDO1lBQ2xDLEtBQUssc0JBQXNCLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQztnQkFDakMsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDLFNBQVMsQ0FBQyxTQUFTLEVBQUUsU0FBUyxDQUFDLENBQUM7WUFDN0QsQ0FBQztZQUNELE9BQU8sQ0FBQyxDQUFDLENBQUM7Z0JBQ04sT0FBTyxJQUFJLENBQUM7WUFDaEIsQ0FBQztRQUNMLENBQUM7SUFDTCxDQUFDO0lBRUQsWUFBWSxDQUFDLFNBQXVFLEVBQUUsU0FBcUI7UUFDdkcsUUFBUSxTQUFTLEVBQUUsQ0FBQztZQUNoQixLQUFLLHNCQUFzQixDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7Z0JBQ2hDLE9BQU8sT0FBTyxDQUFDLFNBQVMsQ0FBQyxDQUFDO1lBQzlCLENBQUM7WUFDRCxLQUFLLHNCQUFzQixDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUM7Z0JBQ2pDLE9BQU8sQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLENBQUM7WUFDL0IsQ0FBQztZQUNELE9BQU8sQ0FBQyxDQUFDLENBQUM7Z0JBQ04sTUFBTSxJQUFJLEtBQUssQ0FBQyw2QkFBNkIsQ0FBQyxDQUFDO1lBQ25ELENBQUM7UUFDTCxDQUFDO0lBQ0wsQ0FBQztJQUVELEVBQUUsQ0FBQyxHQUFlLEVBQUUsR0FBZTtRQUMvQixPQUFPLE9BQU8sQ0FBQyxHQUFHLEVBQUUsR0FBRyxDQUFDLENBQUM7SUFDN0IsQ0FBQztJQUVELE9BQU8sQ0FBQyxVQUFzQixFQUFFLFVBQXNCLEVBQUUsS0FBbUI7UUFDdkUsSUFBSSxJQUFJLENBQUMsRUFBRSxDQUFDLFVBQVUsRUFBRSxVQUFVLENBQUMsRUFBRSxDQUFDO1lBQ2xDLE9BQU8sQ0FBQyxDQUFDO1FBQ2IsQ0FBQztRQUNELElBQUksVUFBVSxJQUFJLElBQUksRUFBRSxDQUFDO1lBQ3JCLE9BQU8sQ0FBQyxDQUFDLENBQUM7UUFDZCxDQUFDO1FBQ0QsSUFBSSxVQUFVLElBQUksSUFBSSxFQUFFLENBQUM7WUFDckIsT0FBTyxDQUFDLENBQUM7UUFDYixDQUFDO1FBRUQsSUFBSSxJQUFJLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixDQUFDLFVBQVUsRUFBRSxLQUFLLENBQUMsQ0FBQztRQUNyRCxJQUFJLElBQUksR0FBRyxJQUFJLENBQUMsaUJBQWlCLENBQUMsVUFBVSxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBRXJELElBQUksSUFBSSxLQUFLLElBQUksRUFBRSxDQUFDO1lBQ2hCLE9BQU8sQ0FBQyxDQUFDO1FBQ2IsQ0FBQztRQUNELElBQUksSUFBSSxJQUFJLElBQUksRUFBRSxDQUFDO1lBQ2YsT0FBTyxDQUFDLENBQUMsQ0FBQztRQUNkLENBQUM7UUFDRCxJQUFJLElBQUksSUFBSSxJQUFJLEVBQUUsQ0FBQztZQUNmLE9BQU8sQ0FBQyxDQUFDO1FBQ2IsQ0FBQztRQUVELElBQUksR0FBRyxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDbkIsSUFBSSxHQUFHLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUVuQixtQkFBbUI7UUFDbkIsT0FBTyxJQUFJLEtBQUssSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLGNBQWMsQ0FBQyxDQUFDLENBQUMsY0FBYyxDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxFQUFFLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUNwSSxDQUFDO0NBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBSVRhYmxlRmllbGQsIEZpZWxkVmFsdWUgfSBmcm9tICdAYWktdGFibGUvZ3JpZCc7XG5pbXBvcnQgeyBBSVRhYmxlRmlsdGVyQ29uZGl0aW9uLCBBSVRhYmxlRmlsdGVyT3BlcmF0aW9uIH0gZnJvbSAnLi4vLi4vdHlwZXMnO1xuaW1wb3J0IHsgaXNFbXB0eSB9IGZyb20gJy4uL2NvbW1vbic7XG5pbXBvcnQgeyBpc0VxdWFsIH0gZnJvbSAnbG9kYXNoJztcblxuZXhwb3J0IGNvbnN0IHpoSW50bENvbGxhdG9yID0gdHlwZW9mIEludGwgIT09ICd1bmRlZmluZWQnID8gbmV3IEludGwuQ29sbGF0b3IoJ3poLUNOJykgOiB1bmRlZmluZWQ7XG5cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBGaWVsZCB7XG4gICAgcHJvdGVjdGVkIHN0cmluZ0luY2x1ZGUoc3RyOiBzdHJpbmcsIHNlYXJjaFN0cjogc3RyaW5nKSB7XG4gICAgICAgIHJldHVybiBzdHIudG9Mb3dlckNhc2UoKS5pbmNsdWRlcyhzZWFyY2hTdHIudHJpbSgpLnRvTG93ZXJDYXNlKCkpO1xuICAgIH1cblxuICAgIGFic3RyYWN0IGNlbGxWYWx1ZVRvU3RyaW5nKGNlbGxWYWx1ZTogRmllbGRWYWx1ZSwgZmllbGQ6IEFJVGFibGVGaWVsZCk6IHN0cmluZyB8IG51bGw7XG5cbiAgICBpc01lZXRGaWx0ZXIoY29uZGl0aW9uOiBBSVRhYmxlRmlsdGVyQ29uZGl0aW9uLCBjZWxsVmFsdWU6IEZpZWxkVmFsdWUpIHtcbiAgICAgICAgc3dpdGNoIChjb25kaXRpb24ub3BlcmF0aW9uKSB7XG4gICAgICAgICAgICBjYXNlIEFJVGFibGVGaWx0ZXJPcGVyYXRpb24uZW1wdHk6XG4gICAgICAgICAgICBjYXNlIEFJVGFibGVGaWx0ZXJPcGVyYXRpb24uZXhpc3RzOiB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMuaXNFbXB0eU9yTm90KGNvbmRpdGlvbi5vcGVyYXRpb24sIGNlbGxWYWx1ZSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBkZWZhdWx0OiB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBpc0VtcHR5T3JOb3Qob3BlcmF0aW9uOiBBSVRhYmxlRmlsdGVyT3BlcmF0aW9uLmVtcHR5IHwgQUlUYWJsZUZpbHRlck9wZXJhdGlvbi5leGlzdHMsIGNlbGxWYWx1ZTogRmllbGRWYWx1ZSkge1xuICAgICAgICBzd2l0Y2ggKG9wZXJhdGlvbikge1xuICAgICAgICAgICAgY2FzZSBBSVRhYmxlRmlsdGVyT3BlcmF0aW9uLmVtcHR5OiB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIGlzRW1wdHkoY2VsbFZhbHVlKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGNhc2UgQUlUYWJsZUZpbHRlck9wZXJhdGlvbi5leGlzdHM6IHtcbiAgICAgICAgICAgICAgICByZXR1cm4gIWlzRW1wdHkoY2VsbFZhbHVlKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGRlZmF1bHQ6IHtcbiAgICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ2NvbXBhcmUgb3BlcmF0b3IgdHlwZSBlcnJvcicpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgZXEoY3YxOiBGaWVsZFZhbHVlLCBjdjI6IEZpZWxkVmFsdWUpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIGlzRXF1YWwoY3YxLCBjdjIpO1xuICAgIH1cblxuICAgIGNvbXBhcmUoY2VsbFZhbHVlMTogRmllbGRWYWx1ZSwgY2VsbFZhbHVlMjogRmllbGRWYWx1ZSwgZmllbGQ6IEFJVGFibGVGaWVsZCk6IG51bWJlciB7XG4gICAgICAgIGlmICh0aGlzLmVxKGNlbGxWYWx1ZTEsIGNlbGxWYWx1ZTIpKSB7XG4gICAgICAgICAgICByZXR1cm4gMDtcbiAgICAgICAgfVxuICAgICAgICBpZiAoY2VsbFZhbHVlMSA9PSBudWxsKSB7XG4gICAgICAgICAgICByZXR1cm4gLTE7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKGNlbGxWYWx1ZTIgPT0gbnVsbCkge1xuICAgICAgICAgICAgcmV0dXJuIDE7XG4gICAgICAgIH1cblxuICAgICAgICBsZXQgc3RyMSA9IHRoaXMuY2VsbFZhbHVlVG9TdHJpbmcoY2VsbFZhbHVlMSwgZmllbGQpO1xuICAgICAgICBsZXQgc3RyMiA9IHRoaXMuY2VsbFZhbHVlVG9TdHJpbmcoY2VsbFZhbHVlMiwgZmllbGQpO1xuXG4gICAgICAgIGlmIChzdHIxID09PSBzdHIyKSB7XG4gICAgICAgICAgICByZXR1cm4gMDtcbiAgICAgICAgfVxuICAgICAgICBpZiAoc3RyMSA9PSBudWxsKSB7XG4gICAgICAgICAgICByZXR1cm4gLTE7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHN0cjIgPT0gbnVsbCkge1xuICAgICAgICAgICAgcmV0dXJuIDE7XG4gICAgICAgIH1cblxuICAgICAgICBzdHIxID0gc3RyMS50cmltKCk7XG4gICAgICAgIHN0cjIgPSBzdHIyLnRyaW0oKTtcblxuICAgICAgICAvLyB0ZXN0IHBpbnlpbiBzb3J0XG4gICAgICAgIHJldHVybiBzdHIxID09PSBzdHIyID8gMCA6IHpoSW50bENvbGxhdG9yID8gemhJbnRsQ29sbGF0b3IuY29tcGFyZShzdHIxLCBzdHIyKSA6IHN0cjEubG9jYWxlQ29tcGFyZShzdHIyLCAnemgtQ04nKSA+IDAgPyAxIDogLTE7XG4gICAgfVxufVxuIl19
|
@@ -1,22 +0,0 @@
|
|
1
|
-
import { AITableFieldType } from '@ai-table/grid';
|
2
|
-
import { TextField } from './text';
|
3
|
-
import { SelectField } from './select';
|
4
|
-
import { DateField } from './date';
|
5
|
-
import { NumberField } from './number';
|
6
|
-
import { RateField } from './rate';
|
7
|
-
export const ViewOperationMap = {
|
8
|
-
[AITableFieldType.text]: new TextField(),
|
9
|
-
[AITableFieldType.richText]: new TextField(),
|
10
|
-
[AITableFieldType.select]: new SelectField(),
|
11
|
-
[AITableFieldType.date]: new DateField(),
|
12
|
-
[AITableFieldType.createdAt]: new DateField(),
|
13
|
-
[AITableFieldType.updatedAt]: new DateField(),
|
14
|
-
[AITableFieldType.number]: new NumberField(),
|
15
|
-
[AITableFieldType.rate]: new RateField(),
|
16
|
-
[AITableFieldType.link]: new TextField(),
|
17
|
-
[AITableFieldType.member]: new SelectField(),
|
18
|
-
[AITableFieldType.progress]: new NumberField(),
|
19
|
-
[AITableFieldType.createdBy]: new SelectField(),
|
20
|
-
[AITableFieldType.updatedBy]: new SelectField()
|
21
|
-
};
|
22
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9zdGF0ZS9zcmMvdXRpbHMvZmllbGQvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFbEQsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLFFBQVEsQ0FBQztBQUNuQyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sVUFBVSxDQUFDO0FBQ3ZDLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxRQUFRLENBQUM7QUFDbkMsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUN2QyxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sUUFBUSxDQUFDO0FBRW5DLE1BQU0sQ0FBQyxNQUFNLGdCQUFnQixHQUFvQztJQUM3RCxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxFQUFFLElBQUksU0FBUyxFQUFFO0lBQ3hDLENBQUMsZ0JBQWdCLENBQUMsUUFBUSxDQUFDLEVBQUUsSUFBSSxTQUFTLEVBQUU7SUFDNUMsQ0FBQyxnQkFBZ0IsQ0FBQyxNQUFNLENBQUMsRUFBRSxJQUFJLFdBQVcsRUFBRTtJQUM1QyxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxFQUFFLElBQUksU0FBUyxFQUFFO0lBQ3hDLENBQUMsZ0JBQWdCLENBQUMsU0FBUyxDQUFDLEVBQUUsSUFBSSxTQUFTLEVBQUU7SUFDN0MsQ0FBQyxnQkFBZ0IsQ0FBQyxTQUFTLENBQUMsRUFBRSxJQUFJLFNBQVMsRUFBRTtJQUM3QyxDQUFDLGdCQUFnQixDQUFDLE1BQU0sQ0FBQyxFQUFFLElBQUksV0FBVyxFQUFFO0lBQzVDLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLEVBQUUsSUFBSSxTQUFTLEVBQUU7SUFDeEMsQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsRUFBRSxJQUFJLFNBQVMsRUFBRTtJQUN4QyxDQUFDLGdCQUFnQixDQUFDLE1BQU0sQ0FBQyxFQUFFLElBQUksV0FBVyxFQUFFO0lBQzVDLENBQUMsZ0JBQWdCLENBQUMsUUFBUSxDQUFDLEVBQUUsSUFBSSxXQUFXLEVBQUU7SUFDOUMsQ0FBQyxnQkFBZ0IsQ0FBQyxTQUFTLENBQUMsRUFBRSxJQUFJLFdBQVcsRUFBRTtJQUMvQyxDQUFDLGdCQUFnQixDQUFDLFNBQVMsQ0FBQyxFQUFFLElBQUksV0FBVyxFQUFFO0NBQ2xELENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBSVRhYmxlRmllbGRUeXBlIH0gZnJvbSAnQGFpLXRhYmxlL2dyaWQnO1xuaW1wb3J0IHsgRmllbGQgfSBmcm9tICcuL2ZpZWxkJztcbmltcG9ydCB7IFRleHRGaWVsZCB9IGZyb20gJy4vdGV4dCc7XG5pbXBvcnQgeyBTZWxlY3RGaWVsZCB9IGZyb20gJy4vc2VsZWN0JztcbmltcG9ydCB7IERhdGVGaWVsZCB9IGZyb20gJy4vZGF0ZSc7XG5pbXBvcnQgeyBOdW1iZXJGaWVsZCB9IGZyb20gJy4vbnVtYmVyJztcbmltcG9ydCB7IFJhdGVGaWVsZCB9IGZyb20gJy4vcmF0ZSc7XG5cbmV4cG9ydCBjb25zdCBWaWV3T3BlcmF0aW9uTWFwOiBSZWNvcmQ8QUlUYWJsZUZpZWxkVHlwZSwgRmllbGQ+ID0ge1xuICAgIFtBSVRhYmxlRmllbGRUeXBlLnRleHRdOiBuZXcgVGV4dEZpZWxkKCksXG4gICAgW0FJVGFibGVGaWVsZFR5cGUucmljaFRleHRdOiBuZXcgVGV4dEZpZWxkKCksXG4gICAgW0FJVGFibGVGaWVsZFR5cGUuc2VsZWN0XTogbmV3IFNlbGVjdEZpZWxkKCksXG4gICAgW0FJVGFibGVGaWVsZFR5cGUuZGF0ZV06IG5ldyBEYXRlRmllbGQoKSxcbiAgICBbQUlUYWJsZUZpZWxkVHlwZS5jcmVhdGVkQXRdOiBuZXcgRGF0ZUZpZWxkKCksXG4gICAgW0FJVGFibGVGaWVsZFR5cGUudXBkYXRlZEF0XTogbmV3IERhdGVGaWVsZCgpLFxuICAgIFtBSVRhYmxlRmllbGRUeXBlLm51bWJlcl06IG5ldyBOdW1iZXJGaWVsZCgpLFxuICAgIFtBSVRhYmxlRmllbGRUeXBlLnJhdGVdOiBuZXcgUmF0ZUZpZWxkKCksXG4gICAgW0FJVGFibGVGaWVsZFR5cGUubGlua106IG5ldyBUZXh0RmllbGQoKSxcbiAgICBbQUlUYWJsZUZpZWxkVHlwZS5tZW1iZXJdOiBuZXcgU2VsZWN0RmllbGQoKSxcbiAgICBbQUlUYWJsZUZpZWxkVHlwZS5wcm9ncmVzc106IG5ldyBOdW1iZXJGaWVsZCgpLFxuICAgIFtBSVRhYmxlRmllbGRUeXBlLmNyZWF0ZWRCeV06IG5ldyBTZWxlY3RGaWVsZCgpLFxuICAgIFtBSVRhYmxlRmllbGRUeXBlLnVwZGF0ZWRCeV06IG5ldyBTZWxlY3RGaWVsZCgpXG59O1xuIl19
|
@@ -1,46 +0,0 @@
|
|
1
|
-
import { AITableFilterOperation } from '../../types';
|
2
|
-
import { Field } from './field';
|
3
|
-
import { isEmpty } from '../common';
|
4
|
-
export class NumberField extends Field {
|
5
|
-
isMeetFilter(condition, cellValue) {
|
6
|
-
switch (condition.operation) {
|
7
|
-
case AITableFilterOperation.empty:
|
8
|
-
return isEmpty(cellValue);
|
9
|
-
case AITableFilterOperation.exists:
|
10
|
-
return !isEmpty(cellValue);
|
11
|
-
case AITableFilterOperation.eq:
|
12
|
-
return !Number.isNaN(condition.value) && cellValue != null && cellValue !== '' && condition.value === cellValue;
|
13
|
-
case AITableFilterOperation.gte:
|
14
|
-
return cellValue != null && cellValue !== '' && cellValue >= condition.value;
|
15
|
-
case AITableFilterOperation.lte:
|
16
|
-
return cellValue != null && cellValue !== '' && cellValue <= condition.value;
|
17
|
-
case AITableFilterOperation.gt:
|
18
|
-
return cellValue != null && cellValue !== '' && cellValue > condition.value;
|
19
|
-
case AITableFilterOperation.lt:
|
20
|
-
return cellValue != null && cellValue !== '' && cellValue < condition.value;
|
21
|
-
case AITableFilterOperation.ne:
|
22
|
-
return cellValue == null || cellValue == '' || Number.isNaN(condition.value) || cellValue !== condition.value;
|
23
|
-
default:
|
24
|
-
return super.isMeetFilter(condition, cellValue);
|
25
|
-
}
|
26
|
-
}
|
27
|
-
cellValueToString(_cellValue) {
|
28
|
-
return null;
|
29
|
-
}
|
30
|
-
static _compare(cellValue1, cellValue2) {
|
31
|
-
if (isEmpty(cellValue1) && isEmpty(cellValue2)) {
|
32
|
-
return 0;
|
33
|
-
}
|
34
|
-
if (isEmpty(cellValue1)) {
|
35
|
-
return -1;
|
36
|
-
}
|
37
|
-
if (isEmpty(cellValue2)) {
|
38
|
-
return 1;
|
39
|
-
}
|
40
|
-
return cellValue1 === cellValue2 ? 0 : cellValue1 > cellValue2 ? 1 : -1;
|
41
|
-
}
|
42
|
-
compare(cellValue1, cellValue2) {
|
43
|
-
return NumberField._compare(cellValue1, cellValue2);
|
44
|
-
}
|
45
|
-
}
|
46
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibnVtYmVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvc3RhdGUvc3JjL3V0aWxzL2ZpZWxkL251bWJlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQTBCLHNCQUFzQixFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQzdFLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxTQUFTLENBQUM7QUFFaEMsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUVwQyxNQUFNLE9BQU8sV0FBWSxTQUFRLEtBQUs7SUFDekIsWUFBWSxDQUFDLFNBQXlDLEVBQUUsU0FBcUI7UUFDbEYsUUFBUSxTQUFTLENBQUMsU0FBUyxFQUFFLENBQUM7WUFDMUIsS0FBSyxzQkFBc0IsQ0FBQyxLQUFLO2dCQUM3QixPQUFPLE9BQU8sQ0FBQyxTQUFTLENBQUMsQ0FBQztZQUM5QixLQUFLLHNCQUFzQixDQUFDLE1BQU07Z0JBQzlCLE9BQU8sQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLENBQUM7WUFDL0IsS0FBSyxzQkFBc0IsQ0FBQyxFQUFFO2dCQUMxQixPQUFPLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLElBQUksU0FBUyxJQUFJLElBQUksSUFBSSxTQUFTLEtBQUssRUFBRSxJQUFJLFNBQVMsQ0FBQyxLQUFLLEtBQUssU0FBUyxDQUFDO1lBQ3BILEtBQUssc0JBQXNCLENBQUMsR0FBRztnQkFDM0IsT0FBTyxTQUFTLElBQUksSUFBSSxJQUFJLFNBQVMsS0FBSyxFQUFFLElBQUksU0FBUyxJQUFJLFNBQVMsQ0FBQyxLQUFLLENBQUM7WUFDakYsS0FBSyxzQkFBc0IsQ0FBQyxHQUFHO2dCQUMzQixPQUFPLFNBQVMsSUFBSSxJQUFJLElBQUksU0FBUyxLQUFLLEVBQUUsSUFBSSxTQUFTLElBQUksU0FBUyxDQUFDLEtBQUssQ0FBQztZQUNqRixLQUFLLHNCQUFzQixDQUFDLEVBQUU7Z0JBQzFCLE9BQU8sU0FBUyxJQUFJLElBQUksSUFBSSxTQUFTLEtBQUssRUFBRSxJQUFJLFNBQVMsR0FBRyxTQUFTLENBQUMsS0FBSyxDQUFDO1lBQ2hGLEtBQUssc0JBQXNCLENBQUMsRUFBRTtnQkFDMUIsT0FBTyxTQUFTLElBQUksSUFBSSxJQUFJLFNBQVMsS0FBSyxFQUFFLElBQUksU0FBUyxHQUFHLFNBQVMsQ0FBQyxLQUFLLENBQUM7WUFDaEYsS0FBSyxzQkFBc0IsQ0FBQyxFQUFFO2dCQUMxQixPQUFPLFNBQVMsSUFBSSxJQUFJLElBQUksU0FBUyxJQUFJLEVBQUUsSUFBSSxNQUFNLENBQUMsS0FBSyxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsSUFBSSxTQUFTLEtBQUssU0FBUyxDQUFDLEtBQUssQ0FBQztZQUNsSDtnQkFDSSxPQUFPLEtBQUssQ0FBQyxZQUFZLENBQUMsU0FBUyxFQUFFLFNBQVMsQ0FBQyxDQUFDO1FBQ3hELENBQUM7SUFDTCxDQUFDO0lBRUQsaUJBQWlCLENBQUMsVUFBc0I7UUFDcEMsT0FBTyxJQUFJLENBQUM7SUFDaEIsQ0FBQztJQUVELE1BQU0sQ0FBQyxRQUFRLENBQUMsVUFBa0IsRUFBRSxVQUFrQjtRQUNsRCxJQUFJLE9BQU8sQ0FBQyxVQUFVLENBQUMsSUFBSSxPQUFPLENBQUMsVUFBVSxDQUFDLEVBQUUsQ0FBQztZQUM3QyxPQUFPLENBQUMsQ0FBQztRQUNiLENBQUM7UUFDRCxJQUFJLE9BQU8sQ0FBQyxVQUFVLENBQUMsRUFBRSxDQUFDO1lBQ3RCLE9BQU8sQ0FBQyxDQUFDLENBQUM7UUFDZCxDQUFDO1FBQ0QsSUFBSSxPQUFPLENBQUMsVUFBVSxDQUFDLEVBQUUsQ0FBQztZQUN0QixPQUFPLENBQUMsQ0FBQztRQUNiLENBQUM7UUFDRCxPQUFPLFVBQVUsS0FBSyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsVUFBVSxHQUFHLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUM1RSxDQUFDO0lBRVEsT0FBTyxDQUFDLFVBQWtCLEVBQUUsVUFBa0I7UUFDbkQsT0FBTyxXQUFXLENBQUMsUUFBUSxDQUFDLFVBQVUsRUFBRSxVQUFVLENBQUMsQ0FBQztJQUN4RCxDQUFDO0NBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBSVRhYmxlRmlsdGVyQ29uZGl0aW9uLCBBSVRhYmxlRmlsdGVyT3BlcmF0aW9uIH0gZnJvbSAnLi4vLi4vdHlwZXMnO1xuaW1wb3J0IHsgRmllbGQgfSBmcm9tICcuL2ZpZWxkJztcbmltcG9ydCB7IEZpZWxkVmFsdWUgfSBmcm9tICdAYWktdGFibGUvZ3JpZCc7XG5pbXBvcnQgeyBpc0VtcHR5IH0gZnJvbSAnLi4vY29tbW9uJztcblxuZXhwb3J0IGNsYXNzIE51bWJlckZpZWxkIGV4dGVuZHMgRmllbGQge1xuICAgIG92ZXJyaWRlIGlzTWVldEZpbHRlcihjb25kaXRpb246IEFJVGFibGVGaWx0ZXJDb25kaXRpb248bnVtYmVyPiwgY2VsbFZhbHVlOiBGaWVsZFZhbHVlKSB7XG4gICAgICAgIHN3aXRjaCAoY29uZGl0aW9uLm9wZXJhdGlvbikge1xuICAgICAgICAgICAgY2FzZSBBSVRhYmxlRmlsdGVyT3BlcmF0aW9uLmVtcHR5OlxuICAgICAgICAgICAgICAgIHJldHVybiBpc0VtcHR5KGNlbGxWYWx1ZSk7XG4gICAgICAgICAgICBjYXNlIEFJVGFibGVGaWx0ZXJPcGVyYXRpb24uZXhpc3RzOlxuICAgICAgICAgICAgICAgIHJldHVybiAhaXNFbXB0eShjZWxsVmFsdWUpO1xuICAgICAgICAgICAgY2FzZSBBSVRhYmxlRmlsdGVyT3BlcmF0aW9uLmVxOlxuICAgICAgICAgICAgICAgIHJldHVybiAhTnVtYmVyLmlzTmFOKGNvbmRpdGlvbi52YWx1ZSkgJiYgY2VsbFZhbHVlICE9IG51bGwgJiYgY2VsbFZhbHVlICE9PSAnJyAmJiBjb25kaXRpb24udmFsdWUgPT09IGNlbGxWYWx1ZTtcbiAgICAgICAgICAgIGNhc2UgQUlUYWJsZUZpbHRlck9wZXJhdGlvbi5ndGU6XG4gICAgICAgICAgICAgICAgcmV0dXJuIGNlbGxWYWx1ZSAhPSBudWxsICYmIGNlbGxWYWx1ZSAhPT0gJycgJiYgY2VsbFZhbHVlID49IGNvbmRpdGlvbi52YWx1ZTtcbiAgICAgICAgICAgIGNhc2UgQUlUYWJsZUZpbHRlck9wZXJhdGlvbi5sdGU6XG4gICAgICAgICAgICAgICAgcmV0dXJuIGNlbGxWYWx1ZSAhPSBudWxsICYmIGNlbGxWYWx1ZSAhPT0gJycgJiYgY2VsbFZhbHVlIDw9IGNvbmRpdGlvbi52YWx1ZTtcbiAgICAgICAgICAgIGNhc2UgQUlUYWJsZUZpbHRlck9wZXJhdGlvbi5ndDpcbiAgICAgICAgICAgICAgICByZXR1cm4gY2VsbFZhbHVlICE9IG51bGwgJiYgY2VsbFZhbHVlICE9PSAnJyAmJiBjZWxsVmFsdWUgPiBjb25kaXRpb24udmFsdWU7XG4gICAgICAgICAgICBjYXNlIEFJVGFibGVGaWx0ZXJPcGVyYXRpb24ubHQ6XG4gICAgICAgICAgICAgICAgcmV0dXJuIGNlbGxWYWx1ZSAhPSBudWxsICYmIGNlbGxWYWx1ZSAhPT0gJycgJiYgY2VsbFZhbHVlIDwgY29uZGl0aW9uLnZhbHVlO1xuICAgICAgICAgICAgY2FzZSBBSVRhYmxlRmlsdGVyT3BlcmF0aW9uLm5lOlxuICAgICAgICAgICAgICAgIHJldHVybiBjZWxsVmFsdWUgPT0gbnVsbCB8fCBjZWxsVmFsdWUgPT0gJycgfHwgTnVtYmVyLmlzTmFOKGNvbmRpdGlvbi52YWx1ZSkgfHwgY2VsbFZhbHVlICE9PSBjb25kaXRpb24udmFsdWU7XG4gICAgICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgICAgIHJldHVybiBzdXBlci5pc01lZXRGaWx0ZXIoY29uZGl0aW9uLCBjZWxsVmFsdWUpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgY2VsbFZhbHVlVG9TdHJpbmcoX2NlbGxWYWx1ZTogRmllbGRWYWx1ZSk6IHN0cmluZyB8IG51bGwge1xuICAgICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG5cbiAgICBzdGF0aWMgX2NvbXBhcmUoY2VsbFZhbHVlMTogbnVtYmVyLCBjZWxsVmFsdWUyOiBudW1iZXIpOiBudW1iZXIge1xuICAgICAgICBpZiAoaXNFbXB0eShjZWxsVmFsdWUxKSAmJiBpc0VtcHR5KGNlbGxWYWx1ZTIpKSB7XG4gICAgICAgICAgICByZXR1cm4gMDtcbiAgICAgICAgfVxuICAgICAgICBpZiAoaXNFbXB0eShjZWxsVmFsdWUxKSkge1xuICAgICAgICAgICAgcmV0dXJuIC0xO1xuICAgICAgICB9XG4gICAgICAgIGlmIChpc0VtcHR5KGNlbGxWYWx1ZTIpKSB7XG4gICAgICAgICAgICByZXR1cm4gMTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gY2VsbFZhbHVlMSA9PT0gY2VsbFZhbHVlMiA/IDAgOiBjZWxsVmFsdWUxID4gY2VsbFZhbHVlMiA/IDEgOiAtMTtcbiAgICB9XG5cbiAgICBvdmVycmlkZSBjb21wYXJlKGNlbGxWYWx1ZTE6IG51bWJlciwgY2VsbFZhbHVlMjogbnVtYmVyKTogbnVtYmVyIHtcbiAgICAgICAgcmV0dXJuIE51bWJlckZpZWxkLl9jb21wYXJlKGNlbGxWYWx1ZTEsIGNlbGxWYWx1ZTIpO1xuICAgIH1cbn1cbiJdfQ==
|
@@ -1,38 +0,0 @@
|
|
1
|
-
import { isEmpty } from '../common';
|
2
|
-
import { AITableFilterOperation } from '../../types';
|
3
|
-
import { Field } from './field';
|
4
|
-
export class RateField extends Field {
|
5
|
-
isMeetFilter(condition, cellValue) {
|
6
|
-
switch (condition.operation) {
|
7
|
-
case AITableFilterOperation.empty:
|
8
|
-
return isEmpty(cellValue);
|
9
|
-
case AITableFilterOperation.exists:
|
10
|
-
return !isEmpty(cellValue);
|
11
|
-
case AITableFilterOperation.in:
|
12
|
-
return !isEmpty(cellValue) && condition.value.includes(cellValue.toString());
|
13
|
-
case AITableFilterOperation.nin:
|
14
|
-
return isEmpty(cellValue) || !condition.value.includes(cellValue.toString());
|
15
|
-
default:
|
16
|
-
return super.isMeetFilter(condition, cellValue);
|
17
|
-
}
|
18
|
-
}
|
19
|
-
cellValueToString(_cellValue) {
|
20
|
-
return null;
|
21
|
-
}
|
22
|
-
static _compare(cellValue1, cellValue2) {
|
23
|
-
if (isEmpty(cellValue1) && isEmpty(cellValue2)) {
|
24
|
-
return 0;
|
25
|
-
}
|
26
|
-
if (isEmpty(cellValue1)) {
|
27
|
-
return -1;
|
28
|
-
}
|
29
|
-
if (isEmpty(cellValue2)) {
|
30
|
-
return 1;
|
31
|
-
}
|
32
|
-
return cellValue1 === cellValue2 ? 0 : cellValue1 > cellValue2 ? 1 : -1;
|
33
|
-
}
|
34
|
-
compare(cellValue1, cellValue2) {
|
35
|
-
return RateField._compare(cellValue1, cellValue2);
|
36
|
-
}
|
37
|
-
}
|
38
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmF0ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL3N0YXRlL3NyYy91dGlscy9maWVsZC9yYXRlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFDcEMsT0FBTyxFQUEwQixzQkFBc0IsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUM3RSxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sU0FBUyxDQUFDO0FBR2hDLE1BQU0sT0FBTyxTQUFVLFNBQVEsS0FBSztJQUN2QixZQUFZLENBQUMsU0FBMkMsRUFBRSxTQUFrQztRQUNqRyxRQUFRLFNBQVMsQ0FBQyxTQUFTLEVBQUUsQ0FBQztZQUMxQixLQUFLLHNCQUFzQixDQUFDLEtBQUs7Z0JBQzdCLE9BQU8sT0FBTyxDQUFDLFNBQVMsQ0FBQyxDQUFDO1lBQzlCLEtBQUssc0JBQXNCLENBQUMsTUFBTTtnQkFDOUIsT0FBTyxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsQ0FBQztZQUMvQixLQUFLLHNCQUFzQixDQUFDLEVBQUU7Z0JBQzFCLE9BQU8sQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLElBQUksU0FBUyxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUM7WUFDakYsS0FBSyxzQkFBc0IsQ0FBQyxHQUFHO2dCQUMzQixPQUFPLE9BQU8sQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLFNBQVMsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDO1lBQ2pGO2dCQUNJLE9BQU8sS0FBSyxDQUFDLFlBQVksQ0FBQyxTQUFTLEVBQUUsU0FBUyxDQUFDLENBQUM7UUFDeEQsQ0FBQztJQUNMLENBQUM7SUFFRCxpQkFBaUIsQ0FBQyxVQUEwQjtRQUN4QyxPQUFPLElBQUksQ0FBQztJQUNoQixDQUFDO0lBRUQsTUFBTSxDQUFDLFFBQVEsQ0FBQyxVQUFrQixFQUFFLFVBQWtCO1FBQ2xELElBQUksT0FBTyxDQUFDLFVBQVUsQ0FBQyxJQUFJLE9BQU8sQ0FBQyxVQUFVLENBQUMsRUFBRSxDQUFDO1lBQzdDLE9BQU8sQ0FBQyxDQUFDO1FBQ2IsQ0FBQztRQUNELElBQUksT0FBTyxDQUFDLFVBQVUsQ0FBQyxFQUFFLENBQUM7WUFDdEIsT0FBTyxDQUFDLENBQUMsQ0FBQztRQUNkLENBQUM7UUFDRCxJQUFJLE9BQU8sQ0FBQyxVQUFVLENBQUMsRUFBRSxDQUFDO1lBQ3RCLE9BQU8sQ0FBQyxDQUFDO1FBQ2IsQ0FBQztRQUNELE9BQU8sVUFBVSxLQUFLLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxVQUFVLEdBQUcsVUFBVSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQzVFLENBQUM7SUFFUSxPQUFPLENBQUMsVUFBa0IsRUFBRSxVQUFrQjtRQUNuRCxPQUFPLFNBQVMsQ0FBQyxRQUFRLENBQUMsVUFBVSxFQUFFLFVBQVUsQ0FBQyxDQUFDO0lBQ3RELENBQUM7Q0FDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGlzRW1wdHkgfSBmcm9tICcuLi9jb21tb24nO1xuaW1wb3J0IHsgQUlUYWJsZUZpbHRlckNvbmRpdGlvbiwgQUlUYWJsZUZpbHRlck9wZXJhdGlvbiB9IGZyb20gJy4uLy4uL3R5cGVzJztcbmltcG9ydCB7IEZpZWxkIH0gZnJvbSAnLi9maWVsZCc7XG5pbXBvcnQgeyBSYXRlRmllbGRWYWx1ZSB9IGZyb20gJ0BhaS10YWJsZS9ncmlkJztcblxuZXhwb3J0IGNsYXNzIFJhdGVGaWVsZCBleHRlbmRzIEZpZWxkIHtcbiAgICBvdmVycmlkZSBpc01lZXRGaWx0ZXIoY29uZGl0aW9uOiBBSVRhYmxlRmlsdGVyQ29uZGl0aW9uPHN0cmluZ1tdPiwgY2VsbFZhbHVlOiBSYXRlRmllbGRWYWx1ZSB8IHN0cmluZykge1xuICAgICAgICBzd2l0Y2ggKGNvbmRpdGlvbi5vcGVyYXRpb24pIHtcbiAgICAgICAgICAgIGNhc2UgQUlUYWJsZUZpbHRlck9wZXJhdGlvbi5lbXB0eTpcbiAgICAgICAgICAgICAgICByZXR1cm4gaXNFbXB0eShjZWxsVmFsdWUpO1xuICAgICAgICAgICAgY2FzZSBBSVRhYmxlRmlsdGVyT3BlcmF0aW9uLmV4aXN0czpcbiAgICAgICAgICAgICAgICByZXR1cm4gIWlzRW1wdHkoY2VsbFZhbHVlKTtcbiAgICAgICAgICAgIGNhc2UgQUlUYWJsZUZpbHRlck9wZXJhdGlvbi5pbjpcbiAgICAgICAgICAgICAgICByZXR1cm4gIWlzRW1wdHkoY2VsbFZhbHVlKSAmJiBjb25kaXRpb24udmFsdWUuaW5jbHVkZXMoY2VsbFZhbHVlLnRvU3RyaW5nKCkpO1xuICAgICAgICAgICAgY2FzZSBBSVRhYmxlRmlsdGVyT3BlcmF0aW9uLm5pbjpcbiAgICAgICAgICAgICAgICByZXR1cm4gaXNFbXB0eShjZWxsVmFsdWUpIHx8ICFjb25kaXRpb24udmFsdWUuaW5jbHVkZXMoY2VsbFZhbHVlLnRvU3RyaW5nKCkpO1xuICAgICAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICAgICAgICByZXR1cm4gc3VwZXIuaXNNZWV0RmlsdGVyKGNvbmRpdGlvbiwgY2VsbFZhbHVlKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGNlbGxWYWx1ZVRvU3RyaW5nKF9jZWxsVmFsdWU6IFJhdGVGaWVsZFZhbHVlKTogc3RyaW5nIHwgbnVsbCB7XG4gICAgICAgIHJldHVybiBudWxsO1xuICAgIH1cblxuICAgIHN0YXRpYyBfY29tcGFyZShjZWxsVmFsdWUxOiBudW1iZXIsIGNlbGxWYWx1ZTI6IG51bWJlcik6IG51bWJlciB7XG4gICAgICAgIGlmIChpc0VtcHR5KGNlbGxWYWx1ZTEpICYmIGlzRW1wdHkoY2VsbFZhbHVlMikpIHtcbiAgICAgICAgICAgIHJldHVybiAwO1xuICAgICAgICB9XG4gICAgICAgIGlmIChpc0VtcHR5KGNlbGxWYWx1ZTEpKSB7XG4gICAgICAgICAgICByZXR1cm4gLTE7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKGlzRW1wdHkoY2VsbFZhbHVlMikpIHtcbiAgICAgICAgICAgIHJldHVybiAxO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBjZWxsVmFsdWUxID09PSBjZWxsVmFsdWUyID8gMCA6IGNlbGxWYWx1ZTEgPiBjZWxsVmFsdWUyID8gMSA6IC0xO1xuICAgIH1cblxuICAgIG92ZXJyaWRlIGNvbXBhcmUoY2VsbFZhbHVlMTogbnVtYmVyLCBjZWxsVmFsdWUyOiBudW1iZXIpOiBudW1iZXIge1xuICAgICAgICByZXR1cm4gUmF0ZUZpZWxkLl9jb21wYXJlKGNlbGxWYWx1ZTEsIGNlbGxWYWx1ZTIpO1xuICAgIH1cbn1cbiJdfQ==
|
@@ -1,55 +0,0 @@
|
|
1
|
-
import { isEmpty } from '../common';
|
2
|
-
import { AITableFilterOperation } from '../../types';
|
3
|
-
import { Field } from './field';
|
4
|
-
export class SelectField extends Field {
|
5
|
-
isMeetFilter(condition, cellValue) {
|
6
|
-
switch (condition.operation) {
|
7
|
-
case AITableFilterOperation.empty:
|
8
|
-
return isEmpty(cellValue);
|
9
|
-
case AITableFilterOperation.exists:
|
10
|
-
return !isEmpty(cellValue);
|
11
|
-
case AITableFilterOperation.in:
|
12
|
-
return Array.isArray(condition.value) && hasIntersect(cellValue, condition.value);
|
13
|
-
case AITableFilterOperation.nin:
|
14
|
-
return Array.isArray(condition.value) && !hasIntersect(cellValue, condition.value);
|
15
|
-
default:
|
16
|
-
return super.isMeetFilter(condition, cellValue);
|
17
|
-
}
|
18
|
-
}
|
19
|
-
cellValueToString(cellValue, field) {
|
20
|
-
return this.arrayValueToString(this.cellValueToArray(cellValue, field));
|
21
|
-
}
|
22
|
-
cellValueToArray(cellValue, field) {
|
23
|
-
if (!cellValue) {
|
24
|
-
return null;
|
25
|
-
}
|
26
|
-
const result = [];
|
27
|
-
for (let i = 0, l = cellValue.length; i < l; i++) {
|
28
|
-
const option = this.findOptionById(field, cellValue[i]);
|
29
|
-
if (option) {
|
30
|
-
result.push(option.text);
|
31
|
-
}
|
32
|
-
}
|
33
|
-
return result;
|
34
|
-
}
|
35
|
-
findOptionById(field, id) {
|
36
|
-
return field.settings.options.find(option => option._id === id) || null;
|
37
|
-
}
|
38
|
-
arrayValueToString(cellValues) {
|
39
|
-
return cellValues && cellValues.length ? cellValues.join(', ') : null;
|
40
|
-
}
|
41
|
-
}
|
42
|
-
function hasIntersect(array1, array2) {
|
43
|
-
if (!Array.isArray(array1) || !Array.isArray(array2)) {
|
44
|
-
return false;
|
45
|
-
}
|
46
|
-
const set1 = new Set(array1);
|
47
|
-
const set2 = new Set(array2);
|
48
|
-
for (const ele of set1) {
|
49
|
-
if (set2.has(ele)) {
|
50
|
-
return true;
|
51
|
-
}
|
52
|
-
}
|
53
|
-
return false;
|
54
|
-
}
|
55
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvc3RhdGUvc3JjL3V0aWxzL2ZpZWxkL3NlbGVjdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBQ3BDLE9BQU8sRUFBMEIsc0JBQXNCLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDN0UsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLFNBQVMsQ0FBQztBQUloQyxNQUFNLE9BQU8sV0FBWSxTQUFRLEtBQUs7SUFDekIsWUFBWSxDQUFDLFNBQXlDLEVBQUUsU0FBMkI7UUFDeEYsUUFBUSxTQUFTLENBQUMsU0FBUyxFQUFFLENBQUM7WUFDMUIsS0FBSyxzQkFBc0IsQ0FBQyxLQUFLO2dCQUM3QixPQUFPLE9BQU8sQ0FBQyxTQUFTLENBQUMsQ0FBQztZQUM5QixLQUFLLHNCQUFzQixDQUFDLE1BQU07Z0JBQzlCLE9BQU8sQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLENBQUM7WUFDL0IsS0FBSyxzQkFBc0IsQ0FBQyxFQUFFO2dCQUMxQixPQUFPLEtBQUssQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxJQUFJLFlBQVksQ0FBQyxTQUFTLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQ3RGLEtBQUssc0JBQXNCLENBQUMsR0FBRztnQkFDM0IsT0FBTyxLQUFLLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxTQUFTLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQ3ZGO2dCQUNJLE9BQU8sS0FBSyxDQUFDLFlBQVksQ0FBQyxTQUFTLEVBQUUsU0FBUyxDQUFDLENBQUM7UUFDeEQsQ0FBQztJQUNMLENBQUM7SUFFRCxpQkFBaUIsQ0FBQyxTQUEyQixFQUFFLEtBQW1CO1FBQzlELE9BQU8sSUFBSSxDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxTQUFTLEVBQUUsS0FBSyxDQUFDLENBQUMsQ0FBQztJQUM1RSxDQUFDO0lBRUQsZ0JBQWdCLENBQUMsU0FBMkIsRUFBRSxLQUFtQjtRQUM3RCxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7WUFDYixPQUFPLElBQUksQ0FBQztRQUNoQixDQUFDO1FBQ0QsTUFBTSxNQUFNLEdBQWEsRUFBRSxDQUFDO1FBQzVCLEtBQUssSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxTQUFTLENBQUMsTUFBTSxFQUFFLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQztZQUMvQyxNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLEtBQUssRUFBRSxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUN4RCxJQUFJLE1BQU0sRUFBRSxDQUFDO2dCQUNULE1BQU0sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDO1lBQzdCLENBQUM7UUFDTCxDQUFDO1FBQ0QsT0FBTyxNQUFNLENBQUM7SUFDbEIsQ0FBQztJQUVELGNBQWMsQ0FBQyxLQUFtQixFQUFFLEVBQU07UUFDdEMsT0FBUSxLQUFLLENBQUMsUUFBMkIsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsTUFBTSxDQUFDLEdBQUcsS0FBSyxFQUFFLENBQUMsSUFBSSxJQUFJLENBQUM7SUFDaEcsQ0FBQztJQUVELGtCQUFrQixDQUFDLFVBQTJCO1FBQzFDLE9BQU8sVUFBVSxJQUFJLFVBQVUsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQztJQUMxRSxDQUFDO0NBQ0o7QUFFRCxTQUFTLFlBQVksQ0FBNEIsTUFBVyxFQUFFLE1BQVc7SUFDckUsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUM7UUFDbkQsT0FBTyxLQUFLLENBQUM7SUFDakIsQ0FBQztJQUNELE1BQU0sSUFBSSxHQUFHLElBQUksR0FBRyxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQzdCLE1BQU0sSUFBSSxHQUFHLElBQUksR0FBRyxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQzdCLEtBQUssTUFBTSxHQUFHLElBQUksSUFBSSxFQUFFLENBQUM7UUFDckIsSUFBSSxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUM7WUFDaEIsT0FBTyxJQUFJLENBQUM7UUFDaEIsQ0FBQztJQUNMLENBQUM7SUFDRCxPQUFPLEtBQUssQ0FBQztBQUNqQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgaXNFbXB0eSB9IGZyb20gJy4uL2NvbW1vbic7XG5pbXBvcnQgeyBBSVRhYmxlRmlsdGVyQ29uZGl0aW9uLCBBSVRhYmxlRmlsdGVyT3BlcmF0aW9uIH0gZnJvbSAnLi4vLi4vdHlwZXMnO1xuaW1wb3J0IHsgRmllbGQgfSBmcm9tICcuL2ZpZWxkJztcbmltcG9ydCB7IEFJVGFibGVGaWVsZCwgQUlUYWJsZVNlbGVjdE9wdGlvbiwgU2VsZWN0RmllbGRWYWx1ZSwgU2VsZWN0U2V0dGluZ3MgfSBmcm9tICdAYWktdGFibGUvZ3JpZCc7XG5pbXBvcnQgeyBJZCB9IGZyb20gJ25neC10ZXRoeXMvdHlwZXMnO1xuXG5leHBvcnQgY2xhc3MgU2VsZWN0RmllbGQgZXh0ZW5kcyBGaWVsZCB7XG4gICAgb3ZlcnJpZGUgaXNNZWV0RmlsdGVyKGNvbmRpdGlvbjogQUlUYWJsZUZpbHRlckNvbmRpdGlvbjxzdHJpbmc+LCBjZWxsVmFsdWU6IFNlbGVjdEZpZWxkVmFsdWUpIHtcbiAgICAgICAgc3dpdGNoIChjb25kaXRpb24ub3BlcmF0aW9uKSB7XG4gICAgICAgICAgICBjYXNlIEFJVGFibGVGaWx0ZXJPcGVyYXRpb24uZW1wdHk6XG4gICAgICAgICAgICAgICAgcmV0dXJuIGlzRW1wdHkoY2VsbFZhbHVlKTtcbiAgICAgICAgICAgIGNhc2UgQUlUYWJsZUZpbHRlck9wZXJhdGlvbi5leGlzdHM6XG4gICAgICAgICAgICAgICAgcmV0dXJuICFpc0VtcHR5KGNlbGxWYWx1ZSk7XG4gICAgICAgICAgICBjYXNlIEFJVGFibGVGaWx0ZXJPcGVyYXRpb24uaW46XG4gICAgICAgICAgICAgICAgcmV0dXJuIEFycmF5LmlzQXJyYXkoY29uZGl0aW9uLnZhbHVlKSAmJiBoYXNJbnRlcnNlY3QoY2VsbFZhbHVlLCBjb25kaXRpb24udmFsdWUpO1xuICAgICAgICAgICAgY2FzZSBBSVRhYmxlRmlsdGVyT3BlcmF0aW9uLm5pbjpcbiAgICAgICAgICAgICAgICByZXR1cm4gQXJyYXkuaXNBcnJheShjb25kaXRpb24udmFsdWUpICYmICFoYXNJbnRlcnNlY3QoY2VsbFZhbHVlLCBjb25kaXRpb24udmFsdWUpO1xuICAgICAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICAgICAgICByZXR1cm4gc3VwZXIuaXNNZWV0RmlsdGVyKGNvbmRpdGlvbiwgY2VsbFZhbHVlKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGNlbGxWYWx1ZVRvU3RyaW5nKGNlbGxWYWx1ZTogU2VsZWN0RmllbGRWYWx1ZSwgZmllbGQ6IEFJVGFibGVGaWVsZCk6IHN0cmluZyB8IG51bGwge1xuICAgICAgICByZXR1cm4gdGhpcy5hcnJheVZhbHVlVG9TdHJpbmcodGhpcy5jZWxsVmFsdWVUb0FycmF5KGNlbGxWYWx1ZSwgZmllbGQpKTtcbiAgICB9XG5cbiAgICBjZWxsVmFsdWVUb0FycmF5KGNlbGxWYWx1ZTogU2VsZWN0RmllbGRWYWx1ZSwgZmllbGQ6IEFJVGFibGVGaWVsZCk6IHN0cmluZ1tdIHwgbnVsbCB7XG4gICAgICAgIGlmICghY2VsbFZhbHVlKSB7XG4gICAgICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCByZXN1bHQ6IHN0cmluZ1tdID0gW107XG4gICAgICAgIGZvciAobGV0IGkgPSAwLCBsID0gY2VsbFZhbHVlLmxlbmd0aDsgaSA8IGw7IGkrKykge1xuICAgICAgICAgICAgY29uc3Qgb3B0aW9uID0gdGhpcy5maW5kT3B0aW9uQnlJZChmaWVsZCwgY2VsbFZhbHVlW2ldKTtcbiAgICAgICAgICAgIGlmIChvcHRpb24pIHtcbiAgICAgICAgICAgICAgICByZXN1bHQucHVzaChvcHRpb24udGV4dCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHJlc3VsdDtcbiAgICB9XG5cbiAgICBmaW5kT3B0aW9uQnlJZChmaWVsZDogQUlUYWJsZUZpZWxkLCBpZDogSWQpOiBBSVRhYmxlU2VsZWN0T3B0aW9uIHwgbnVsbCB7XG4gICAgICAgIHJldHVybiAoZmllbGQuc2V0dGluZ3MgYXMgU2VsZWN0U2V0dGluZ3MpLm9wdGlvbnMuZmluZChvcHRpb24gPT4gb3B0aW9uLl9pZCA9PT0gaWQpIHx8IG51bGw7XG4gICAgfVxuXG4gICAgYXJyYXlWYWx1ZVRvU3RyaW5nKGNlbGxWYWx1ZXM6IHN0cmluZ1tdIHwgbnVsbCk6IHN0cmluZyB8IG51bGwge1xuICAgICAgICByZXR1cm4gY2VsbFZhbHVlcyAmJiBjZWxsVmFsdWVzLmxlbmd0aCA/IGNlbGxWYWx1ZXMuam9pbignLCAnKSA6IG51bGw7XG4gICAgfVxufVxuXG5mdW5jdGlvbiBoYXNJbnRlcnNlY3Q8VCBleHRlbmRzIG51bWJlciB8IHN0cmluZz4oYXJyYXkxOiBUW10sIGFycmF5MjogVFtdKSB7XG4gICAgaWYgKCFBcnJheS5pc0FycmF5KGFycmF5MSkgfHwgIUFycmF5LmlzQXJyYXkoYXJyYXkyKSkge1xuICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuICAgIGNvbnN0IHNldDEgPSBuZXcgU2V0KGFycmF5MSk7XG4gICAgY29uc3Qgc2V0MiA9IG5ldyBTZXQoYXJyYXkyKTtcbiAgICBmb3IgKGNvbnN0IGVsZSBvZiBzZXQxKSB7XG4gICAgICAgIGlmIChzZXQyLmhhcyhlbGUpKSB7XG4gICAgICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gZmFsc2U7XG59XG4iXX0=
|
@@ -1,27 +0,0 @@
|
|
1
|
-
import { isEmpty } from '../common';
|
2
|
-
import { AITableFilterOperation } from '../../types';
|
3
|
-
import { Field } from './field';
|
4
|
-
export class TextField extends Field {
|
5
|
-
isMeetFilter(condition, cellValue) {
|
6
|
-
switch (condition.operation) {
|
7
|
-
case AITableFilterOperation.empty:
|
8
|
-
return isEmpty(cellValue);
|
9
|
-
case AITableFilterOperation.exists:
|
10
|
-
return !isEmpty(cellValue);
|
11
|
-
case AITableFilterOperation.contain:
|
12
|
-
return !isEmpty(cellValue) && this.stringInclude(cellValue, condition.value);
|
13
|
-
default:
|
14
|
-
return super.isMeetFilter(condition, cellValue);
|
15
|
-
}
|
16
|
-
}
|
17
|
-
static stringInclude(str, searchStr) {
|
18
|
-
return str.toLowerCase().includes(searchStr.trim().toLowerCase());
|
19
|
-
}
|
20
|
-
eq(cv1, cv2) {
|
21
|
-
return this.cellValueToString(cv1) === this.cellValueToString(cv2);
|
22
|
-
}
|
23
|
-
cellValueToString(cellValue) {
|
24
|
-
return cellValue;
|
25
|
-
}
|
26
|
-
}
|
27
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL3N0YXRlL3NyYy91dGlscy9maWVsZC90ZXh0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFDcEMsT0FBTyxFQUEwQixzQkFBc0IsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUM3RSxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sU0FBUyxDQUFDO0FBR2hDLE1BQU0sT0FBTyxTQUFVLFNBQVEsS0FBSztJQUN2QixZQUFZLENBQUMsU0FBeUMsRUFBRSxTQUFxQjtRQUNsRixRQUFRLFNBQVMsQ0FBQyxTQUFTLEVBQUUsQ0FBQztZQUMxQixLQUFLLHNCQUFzQixDQUFDLEtBQUs7Z0JBQzdCLE9BQU8sT0FBTyxDQUFDLFNBQVMsQ0FBQyxDQUFDO1lBQzlCLEtBQUssc0JBQXNCLENBQUMsTUFBTTtnQkFDOUIsT0FBTyxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsQ0FBQztZQUMvQixLQUFLLHNCQUFzQixDQUFDLE9BQU87Z0JBQy9CLE9BQU8sQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLElBQUksSUFBSSxDQUFDLGFBQWEsQ0FBQyxTQUFTLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQ2pGO2dCQUNJLE9BQU8sS0FBSyxDQUFDLFlBQVksQ0FBQyxTQUFTLEVBQUUsU0FBUyxDQUFDLENBQUM7UUFDeEQsQ0FBQztJQUNMLENBQUM7SUFFRCxNQUFNLENBQUMsYUFBYSxDQUFDLEdBQVcsRUFBRSxTQUFpQjtRQUMvQyxPQUFPLEdBQUcsQ0FBQyxXQUFXLEVBQUUsQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLElBQUksRUFBRSxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUM7SUFDdEUsQ0FBQztJQUVRLEVBQUUsQ0FBQyxHQUFrQixFQUFFLEdBQWtCO1FBQzlDLE9BQU8sSUFBSSxDQUFDLGlCQUFpQixDQUFDLEdBQUcsQ0FBQyxLQUFLLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUN2RSxDQUFDO0lBRUQsaUJBQWlCLENBQUMsU0FBd0I7UUFDdEMsT0FBTyxTQUFTLENBQUM7SUFDckIsQ0FBQztDQUNKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgaXNFbXB0eSB9IGZyb20gJy4uL2NvbW1vbic7XG5pbXBvcnQgeyBBSVRhYmxlRmlsdGVyQ29uZGl0aW9uLCBBSVRhYmxlRmlsdGVyT3BlcmF0aW9uIH0gZnJvbSAnLi4vLi4vdHlwZXMnO1xuaW1wb3J0IHsgRmllbGQgfSBmcm9tICcuL2ZpZWxkJztcbmltcG9ydCB7IEZpZWxkVmFsdWUgfSBmcm9tICdAYWktdGFibGUvZ3JpZCc7XG5cbmV4cG9ydCBjbGFzcyBUZXh0RmllbGQgZXh0ZW5kcyBGaWVsZCB7XG4gICAgb3ZlcnJpZGUgaXNNZWV0RmlsdGVyKGNvbmRpdGlvbjogQUlUYWJsZUZpbHRlckNvbmRpdGlvbjxzdHJpbmc+LCBjZWxsVmFsdWU6IEZpZWxkVmFsdWUpIHtcbiAgICAgICAgc3dpdGNoIChjb25kaXRpb24ub3BlcmF0aW9uKSB7XG4gICAgICAgICAgICBjYXNlIEFJVGFibGVGaWx0ZXJPcGVyYXRpb24uZW1wdHk6XG4gICAgICAgICAgICAgICAgcmV0dXJuIGlzRW1wdHkoY2VsbFZhbHVlKTtcbiAgICAgICAgICAgIGNhc2UgQUlUYWJsZUZpbHRlck9wZXJhdGlvbi5leGlzdHM6XG4gICAgICAgICAgICAgICAgcmV0dXJuICFpc0VtcHR5KGNlbGxWYWx1ZSk7XG4gICAgICAgICAgICBjYXNlIEFJVGFibGVGaWx0ZXJPcGVyYXRpb24uY29udGFpbjpcbiAgICAgICAgICAgICAgICByZXR1cm4gIWlzRW1wdHkoY2VsbFZhbHVlKSAmJiB0aGlzLnN0cmluZ0luY2x1ZGUoY2VsbFZhbHVlLCBjb25kaXRpb24udmFsdWUpO1xuICAgICAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICAgICAgICByZXR1cm4gc3VwZXIuaXNNZWV0RmlsdGVyKGNvbmRpdGlvbiwgY2VsbFZhbHVlKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHN0YXRpYyBzdHJpbmdJbmNsdWRlKHN0cjogc3RyaW5nLCBzZWFyY2hTdHI6IHN0cmluZykge1xuICAgICAgICByZXR1cm4gc3RyLnRvTG93ZXJDYXNlKCkuaW5jbHVkZXMoc2VhcmNoU3RyLnRyaW0oKS50b0xvd2VyQ2FzZSgpKTtcbiAgICB9XG5cbiAgICBvdmVycmlkZSBlcShjdjE6IHN0cmluZyB8IG51bGwsIGN2Mjogc3RyaW5nIHwgbnVsbCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5jZWxsVmFsdWVUb1N0cmluZyhjdjEpID09PSB0aGlzLmNlbGxWYWx1ZVRvU3RyaW5nKGN2Mik7XG4gICAgfVxuXG4gICAgY2VsbFZhbHVlVG9TdHJpbmcoY2VsbFZhbHVlOiBzdHJpbmcgfCBudWxsKTogc3RyaW5nIHwgbnVsbCB7XG4gICAgICAgIHJldHVybiBjZWxsVmFsdWU7XG4gICAgfVxufVxuIl19
|
@@ -1,52 +0,0 @@
|
|
1
|
-
import { ViewOperationMap } from './field';
|
2
|
-
import { AITableFilterLogical, AITableFilterOperation } from '../types';
|
3
|
-
import { isEmpty } from './common';
|
4
|
-
export function getFilteredRecords(records, fields, activeView) {
|
5
|
-
const { conditions, condition_logical } = activeView.settings || {};
|
6
|
-
if (!conditions) {
|
7
|
-
return records;
|
8
|
-
}
|
9
|
-
const illegalConditions = conditions.filter((item) => item.operation) || [];
|
10
|
-
if (!illegalConditions.length) {
|
11
|
-
return records;
|
12
|
-
}
|
13
|
-
return records.filter((record) => {
|
14
|
-
return checkConditions(fields, record, { conditions: illegalConditions, condition_logical });
|
15
|
-
});
|
16
|
-
}
|
17
|
-
function checkConditions(fields, record, filterConditions) {
|
18
|
-
if (!record) {
|
19
|
-
return false;
|
20
|
-
}
|
21
|
-
if (!filterConditions?.conditions) {
|
22
|
-
return true;
|
23
|
-
}
|
24
|
-
const { condition_logical, conditions } = filterConditions;
|
25
|
-
if (condition_logical === AITableFilterLogical.and) {
|
26
|
-
return conditions.every((condition) => doFilterOperations(fields, record, condition));
|
27
|
-
}
|
28
|
-
if (!condition_logical || condition_logical === AITableFilterLogical.or) {
|
29
|
-
return conditions.some((condition) => doFilterOperations(fields, record, condition));
|
30
|
-
}
|
31
|
-
return false;
|
32
|
-
}
|
33
|
-
function doFilterOperations(fields, record, condition) {
|
34
|
-
const field = fields.find((item) => item._id === condition.field_id);
|
35
|
-
const cellValue = record.values[condition.field_id];
|
36
|
-
try {
|
37
|
-
return field && doFilter(condition, field, cellValue);
|
38
|
-
}
|
39
|
-
catch (error) {
|
40
|
-
return false;
|
41
|
-
}
|
42
|
-
}
|
43
|
-
export function doFilter(condition, field, cellValue) {
|
44
|
-
if (condition.operation === AITableFilterOperation.empty) {
|
45
|
-
return isEmpty(cellValue);
|
46
|
-
}
|
47
|
-
if (condition.operation === AITableFilterOperation.exists) {
|
48
|
-
return !isEmpty(cellValue);
|
49
|
-
}
|
50
|
-
return ViewOperationMap[field.type].isMeetFilter(condition, cellValue);
|
51
|
-
}
|
52
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsdGVyLXJlY29yZHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wYWNrYWdlcy9zdGF0ZS9zcmMvdXRpbHMvZmlsdGVyLXJlY29yZHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sU0FBUyxDQUFDO0FBQzNDLE9BQU8sRUFHSCxvQkFBb0IsRUFDcEIsc0JBQXNCLEVBS3pCLE1BQU0sVUFBVSxDQUFDO0FBQ2xCLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFFbkMsTUFBTSxVQUFVLGtCQUFrQixDQUFDLE9BQTJCLEVBQUUsTUFBeUIsRUFBRSxVQUF1QjtJQUM5RyxNQUFNLEVBQUUsVUFBVSxFQUFFLGlCQUFpQixFQUFFLEdBQUcsVUFBVSxDQUFDLFFBQVEsSUFBSSxFQUFFLENBQUM7SUFDcEUsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO1FBQ2QsT0FBTyxPQUFPLENBQUM7SUFDbkIsQ0FBQztJQUNELE1BQU0saUJBQWlCLEdBQUcsVUFBVSxDQUFDLE1BQU0sQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUM1RSxJQUFJLENBQUMsaUJBQWlCLENBQUMsTUFBTSxFQUFFLENBQUM7UUFDNUIsT0FBTyxPQUFPLENBQUM7SUFDbkIsQ0FBQztJQUNELE9BQU8sT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFO1FBQzdCLE9BQU8sZUFBZSxDQUFDLE1BQU0sRUFBRSxNQUFNLEVBQUUsRUFBRSxVQUFVLEVBQUUsaUJBQWlCLEVBQUUsaUJBQWlCLEVBQUUsQ0FBQyxDQUFDO0lBQ2pHLENBQUMsQ0FBQyxDQUFDO0FBQ1AsQ0FBQztBQUVELFNBQVMsZUFBZSxDQUFDLE1BQXlCLEVBQUUsTUFBcUIsRUFBRSxnQkFBeUM7SUFDaEgsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDO1FBQ1YsT0FBTyxLQUFLLENBQUM7SUFDakIsQ0FBQztJQUNELElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxVQUFVLEVBQUUsQ0FBQztRQUNoQyxPQUFPLElBQUksQ0FBQztJQUNoQixDQUFDO0lBQ0QsTUFBTSxFQUFFLGlCQUFpQixFQUFFLFVBQVUsRUFBRSxHQUFHLGdCQUFnQixDQUFDO0lBQzNELElBQUksaUJBQWlCLEtBQUssb0JBQW9CLENBQUMsR0FBRyxFQUFFLENBQUM7UUFDakQsT0FBTyxVQUFVLENBQUMsS0FBSyxDQUFDLENBQUMsU0FBUyxFQUFFLEVBQUUsQ0FBQyxrQkFBa0IsQ0FBQyxNQUFNLEVBQUUsTUFBTSxFQUFFLFNBQVMsQ0FBQyxDQUFDLENBQUM7SUFDMUYsQ0FBQztJQUNELElBQUksQ0FBQyxpQkFBaUIsSUFBSSxpQkFBaUIsS0FBSyxvQkFBb0IsQ0FBQyxFQUFFLEVBQUUsQ0FBQztRQUN0RSxPQUFPLFVBQVUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxTQUFTLEVBQUUsRUFBRSxDQUFDLGtCQUFrQixDQUFDLE1BQU0sRUFBRSxNQUFNLEVBQUUsU0FBUyxDQUFDLENBQUMsQ0FBQztJQUN6RixDQUFDO0lBQ0QsT0FBTyxLQUFLLENBQUM7QUFDakIsQ0FBQztBQUVELFNBQVMsa0JBQWtCLENBQUMsTUFBeUIsRUFBRSxNQUFxQixFQUFFLFNBQWlDO0lBQzNHLE1BQU0sS0FBSyxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxHQUFHLEtBQUssU0FBUyxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQ3JFLE1BQU0sU0FBUyxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQ3BELElBQUksQ0FBQztRQUNELE9BQU8sS0FBSyxJQUFJLFFBQVEsQ0FBQyxTQUFTLEVBQUUsS0FBSyxFQUFFLFNBQVMsQ0FBQyxDQUFDO0lBQzFELENBQUM7SUFBQyxPQUFPLEtBQUssRUFBRSxDQUFDO1FBQ2IsT0FBTyxLQUFLLENBQUM7SUFDakIsQ0FBQztBQUNMLENBQUM7QUFFRCxNQUFNLFVBQVUsUUFBUSxDQUFDLFNBQWlDLEVBQUUsS0FBdUIsRUFBRSxTQUFxQjtJQUN0RyxJQUFJLFNBQVMsQ0FBQyxTQUFTLEtBQUssc0JBQXNCLENBQUMsS0FBSyxFQUFFLENBQUM7UUFDdkQsT0FBTyxPQUFPLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDOUIsQ0FBQztJQUNELElBQUksU0FBUyxDQUFDLFNBQVMsS0FBSyxzQkFBc0IsQ0FBQyxNQUFNLEVBQUUsQ0FBQztRQUN4RCxPQUFPLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQy9CLENBQUM7SUFFRCxPQUFPLGdCQUFnQixDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQyxZQUFZLENBQUMsU0FBUyxFQUFFLFNBQVMsQ0FBQyxDQUFDO0FBQzNFLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBSVRhYmxlUmVjb3JkLCBGaWVsZFZhbHVlIH0gZnJvbSAnQGFpLXRhYmxlL2dyaWQnO1xuaW1wb3J0IHsgVmlld09wZXJhdGlvbk1hcCB9IGZyb20gJy4vZmllbGQnO1xuaW1wb3J0IHtcbiAgICBBSVRhYmxlRmlsdGVyQ29uZGl0aW9uLFxuICAgIEFJVGFibGVGaWx0ZXJDb25kaXRpb25zLFxuICAgIEFJVGFibGVGaWx0ZXJMb2dpY2FsLFxuICAgIEFJVGFibGVGaWx0ZXJPcGVyYXRpb24sXG4gICAgQUlUYWJsZVZpZXcsXG4gICAgQUlUYWJsZVZpZXdGaWVsZCxcbiAgICBBSVRhYmxlVmlld0ZpZWxkcyxcbiAgICBBSVRhYmxlVmlld1JlY29yZHNcbn0gZnJvbSAnLi4vdHlwZXMnO1xuaW1wb3J0IHsgaXNFbXB0eSB9IGZyb20gJy4vY29tbW9uJztcblxuZXhwb3J0IGZ1bmN0aW9uIGdldEZpbHRlcmVkUmVjb3JkcyhyZWNvcmRzOiBBSVRhYmxlVmlld1JlY29yZHMsIGZpZWxkczogQUlUYWJsZVZpZXdGaWVsZHMsIGFjdGl2ZVZpZXc6IEFJVGFibGVWaWV3KSB7XG4gICAgY29uc3QgeyBjb25kaXRpb25zLCBjb25kaXRpb25fbG9naWNhbCB9ID0gYWN0aXZlVmlldy5zZXR0aW5ncyB8fCB7fTtcbiAgICBpZiAoIWNvbmRpdGlvbnMpIHtcbiAgICAgICAgcmV0dXJuIHJlY29yZHM7XG4gICAgfVxuICAgIGNvbnN0IGlsbGVnYWxDb25kaXRpb25zID0gY29uZGl0aW9ucy5maWx0ZXIoKGl0ZW0pID0+IGl0ZW0ub3BlcmF0aW9uKSB8fCBbXTtcbiAgICBpZiAoIWlsbGVnYWxDb25kaXRpb25zLmxlbmd0aCkge1xuICAgICAgICByZXR1cm4gcmVjb3JkcztcbiAgICB9XG4gICAgcmV0dXJuIHJlY29yZHMuZmlsdGVyKChyZWNvcmQpID0+IHtcbiAgICAgICAgcmV0dXJuIGNoZWNrQ29uZGl0aW9ucyhmaWVsZHMsIHJlY29yZCwgeyBjb25kaXRpb25zOiBpbGxlZ2FsQ29uZGl0aW9ucywgY29uZGl0aW9uX2xvZ2ljYWwgfSk7XG4gICAgfSk7XG59XG5cbmZ1bmN0aW9uIGNoZWNrQ29uZGl0aW9ucyhmaWVsZHM6IEFJVGFibGVWaWV3RmllbGRzLCByZWNvcmQ6IEFJVGFibGVSZWNvcmQsIGZpbHRlckNvbmRpdGlvbnM6IEFJVGFibGVGaWx0ZXJDb25kaXRpb25zKSB7XG4gICAgaWYgKCFyZWNvcmQpIHtcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cbiAgICBpZiAoIWZpbHRlckNvbmRpdGlvbnM/LmNvbmRpdGlvbnMpIHtcbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxuICAgIGNvbnN0IHsgY29uZGl0aW9uX2xvZ2ljYWwsIGNvbmRpdGlvbnMgfSA9IGZpbHRlckNvbmRpdGlvbnM7XG4gICAgaWYgKGNvbmRpdGlvbl9sb2dpY2FsID09PSBBSVRhYmxlRmlsdGVyTG9naWNhbC5hbmQpIHtcbiAgICAgICAgcmV0dXJuIGNvbmRpdGlvbnMuZXZlcnkoKGNvbmRpdGlvbikgPT4gZG9GaWx0ZXJPcGVyYXRpb25zKGZpZWxkcywgcmVjb3JkLCBjb25kaXRpb24pKTtcbiAgICB9XG4gICAgaWYgKCFjb25kaXRpb25fbG9naWNhbCB8fCBjb25kaXRpb25fbG9naWNhbCA9PT0gQUlUYWJsZUZpbHRlckxvZ2ljYWwub3IpIHtcbiAgICAgICAgcmV0dXJuIGNvbmRpdGlvbnMuc29tZSgoY29uZGl0aW9uKSA9PiBkb0ZpbHRlck9wZXJhdGlvbnMoZmllbGRzLCByZWNvcmQsIGNvbmRpdGlvbikpO1xuICAgIH1cbiAgICByZXR1cm4gZmFsc2U7XG59XG5cbmZ1bmN0aW9uIGRvRmlsdGVyT3BlcmF0aW9ucyhmaWVsZHM6IEFJVGFibGVWaWV3RmllbGRzLCByZWNvcmQ6IEFJVGFibGVSZWNvcmQsIGNvbmRpdGlvbjogQUlUYWJsZUZpbHRlckNvbmRpdGlvbikge1xuICAgIGNvbnN0IGZpZWxkID0gZmllbGRzLmZpbmQoKGl0ZW0pID0+IGl0ZW0uX2lkID09PSBjb25kaXRpb24uZmllbGRfaWQpO1xuICAgIGNvbnN0IGNlbGxWYWx1ZSA9IHJlY29yZC52YWx1ZXNbY29uZGl0aW9uLmZpZWxkX2lkXTtcbiAgICB0cnkge1xuICAgICAgICByZXR1cm4gZmllbGQgJiYgZG9GaWx0ZXIoY29uZGl0aW9uLCBmaWVsZCwgY2VsbFZhbHVlKTtcbiAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gZG9GaWx0ZXIoY29uZGl0aW9uOiBBSVRhYmxlRmlsdGVyQ29uZGl0aW9uLCBmaWVsZDogQUlUYWJsZVZpZXdGaWVsZCwgY2VsbFZhbHVlOiBGaWVsZFZhbHVlKSB7XG4gICAgaWYgKGNvbmRpdGlvbi5vcGVyYXRpb24gPT09IEFJVGFibGVGaWx0ZXJPcGVyYXRpb24uZW1wdHkpIHtcbiAgICAgICAgcmV0dXJuIGlzRW1wdHkoY2VsbFZhbHVlKTtcbiAgICB9XG4gICAgaWYgKGNvbmRpdGlvbi5vcGVyYXRpb24gPT09IEFJVGFibGVGaWx0ZXJPcGVyYXRpb24uZXhpc3RzKSB7XG4gICAgICAgIHJldHVybiAhaXNFbXB0eShjZWxsVmFsdWUpO1xuICAgIH1cblxuICAgIHJldHVybiBWaWV3T3BlcmF0aW9uTWFwW2ZpZWxkLnR5cGVdLmlzTWVldEZpbHRlcihjb25kaXRpb24sIGNlbGxWYWx1ZSk7XG59Il19
|
@@ -1,34 +0,0 @@
|
|
1
|
-
import { AITableQueries } from '@ai-table/grid';
|
2
|
-
import { ViewOperationMap } from './field';
|
3
|
-
import { sortByViewPosition } from './view';
|
4
|
-
export function getSortRecords(aiTable, records, activeView) {
|
5
|
-
if (!activeView?.settings || !activeView.settings.sorts?.length) {
|
6
|
-
return records;
|
7
|
-
}
|
8
|
-
const { is_keep_sort, sorts } = activeView.settings;
|
9
|
-
if (is_keep_sort && sorts?.length) {
|
10
|
-
return sortRecordsBySortInfo(aiTable, records, activeView);
|
11
|
-
}
|
12
|
-
return sortByViewPosition(records, activeView);
|
13
|
-
}
|
14
|
-
export function sortRecordsBySortInfo(aiTable, records, activeView) {
|
15
|
-
const shallowRows = [...records];
|
16
|
-
if (activeView.settings?.sorts?.length) {
|
17
|
-
shallowRows.sort((prev, current) => {
|
18
|
-
return activeView.settings.sorts.reduce((acc, rule) => {
|
19
|
-
const field = aiTable.fieldsMap()[rule.sort_by];
|
20
|
-
if (!field || acc !== 0) {
|
21
|
-
return acc;
|
22
|
-
}
|
23
|
-
const fieldMethod = ViewOperationMap[field.type];
|
24
|
-
const cellValue1 = AITableQueries.getFieldValue(aiTable, [prev._id, field._id]);
|
25
|
-
const cellValue2 = AITableQueries.getFieldValue(aiTable, [current._id, field._id]);
|
26
|
-
const res = fieldMethod.compare(cellValue1, cellValue2, field);
|
27
|
-
return res * rule.direction;
|
28
|
-
}, 0);
|
29
|
-
});
|
30
|
-
return shallowRows;
|
31
|
-
}
|
32
|
-
return shallowRows;
|
33
|
-
}
|
34
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic29ydC1yZWNvcmRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcGFja2FnZXMvc3RhdGUvc3JjL3V0aWxzL3NvcnQtcmVjb3Jkcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQVcsY0FBYyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDekQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sU0FBUyxDQUFDO0FBRTNDLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLFFBQVEsQ0FBQztBQUU1QyxNQUFNLFVBQVUsY0FBYyxDQUFDLE9BQWdCLEVBQUUsT0FBMkIsRUFBRSxVQUF1QjtJQUNqRyxJQUFJLENBQUMsVUFBVSxFQUFFLFFBQVEsSUFBSSxDQUFDLFVBQVUsQ0FBQyxRQUFRLENBQUMsS0FBSyxFQUFFLE1BQU0sRUFBRSxDQUFDO1FBQzlELE9BQU8sT0FBTyxDQUFDO0lBQ25CLENBQUM7SUFDRCxNQUFNLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxHQUFHLFVBQVUsQ0FBQyxRQUFRLENBQUM7SUFDcEQsSUFBSSxZQUFZLElBQUksS0FBSyxFQUFFLE1BQU0sRUFBRSxDQUFDO1FBQ2hDLE9BQU8scUJBQXFCLENBQUMsT0FBTyxFQUFFLE9BQU8sRUFBRSxVQUFVLENBQUMsQ0FBQztJQUMvRCxDQUFDO0lBQ0QsT0FBTyxrQkFBa0IsQ0FBQyxPQUFPLEVBQUUsVUFBVSxDQUFDLENBQUM7QUFDbkQsQ0FBQztBQUVELE1BQU0sVUFBVSxxQkFBcUIsQ0FBQyxPQUFnQixFQUFFLE9BQTJCLEVBQUUsVUFBdUI7SUFDeEcsTUFBTSxXQUFXLEdBQUcsQ0FBQyxHQUFHLE9BQU8sQ0FBQyxDQUFDO0lBQ2pDLElBQUksVUFBVSxDQUFDLFFBQVEsRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLENBQUM7UUFDckMsV0FBVyxDQUFDLElBQUksQ0FBQyxDQUFDLElBQUksRUFBRSxPQUFPLEVBQUUsRUFBRTtZQUMvQixPQUFPLFVBQVUsQ0FBQyxRQUFTLENBQUMsS0FBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDLEdBQUcsRUFBRSxJQUFJLEVBQUUsRUFBRTtnQkFDcEQsTUFBTSxLQUFLLEdBQUcsT0FBTyxDQUFDLFNBQVMsRUFBRSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztnQkFDaEQsSUFBSSxDQUFDLEtBQUssSUFBSSxHQUFHLEtBQUssQ0FBQyxFQUFFLENBQUM7b0JBQ3RCLE9BQU8sR0FBRyxDQUFDO2dCQUNmLENBQUM7Z0JBQ0QsTUFBTSxXQUFXLEdBQUcsZ0JBQWdCLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDO2dCQUVqRCxNQUFNLFVBQVUsR0FBRyxjQUFjLENBQUMsYUFBYSxDQUFDLE9BQU8sRUFBRSxDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUUsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7Z0JBQ2hGLE1BQU0sVUFBVSxHQUFHLGNBQWMsQ0FBQyxhQUFhLENBQUMsT0FBTyxFQUFFLENBQUMsT0FBTyxDQUFDLEdBQUcsRUFBRSxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztnQkFDbkYsTUFBTSxHQUFHLEdBQUcsV0FBVyxDQUFDLE9BQU8sQ0FBQyxVQUFVLEVBQUUsVUFBVSxFQUFFLEtBQUssQ0FBQyxDQUFDO2dCQUMvRCxPQUFPLEdBQUcsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDO1lBQ2hDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztRQUNWLENBQUMsQ0FBQyxDQUFDO1FBQ0gsT0FBTyxXQUFXLENBQUM7SUFDdkIsQ0FBQztJQUNELE9BQU8sV0FBVyxDQUFDO0FBQ3ZCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBSVRhYmxlLCBBSVRhYmxlUXVlcmllcyB9IGZyb20gJ0BhaS10YWJsZS9ncmlkJztcbmltcG9ydCB7IFZpZXdPcGVyYXRpb25NYXAgfSBmcm9tICcuL2ZpZWxkJztcbmltcG9ydCB7IEFJVGFibGVWaWV3LCBBSVRhYmxlVmlld1JlY29yZHMgfSBmcm9tICcuLi90eXBlcyc7XG5pbXBvcnQgeyBzb3J0QnlWaWV3UG9zaXRpb24gfSBmcm9tICcuL3ZpZXcnO1xuXG5leHBvcnQgZnVuY3Rpb24gZ2V0U29ydFJlY29yZHMoYWlUYWJsZTogQUlUYWJsZSwgcmVjb3JkczogQUlUYWJsZVZpZXdSZWNvcmRzLCBhY3RpdmVWaWV3OiBBSVRhYmxlVmlldykge1xuICAgIGlmICghYWN0aXZlVmlldz8uc2V0dGluZ3MgfHwgIWFjdGl2ZVZpZXcuc2V0dGluZ3Muc29ydHM/Lmxlbmd0aCkge1xuICAgICAgICByZXR1cm4gcmVjb3JkcztcbiAgICB9XG4gICAgY29uc3QgeyBpc19rZWVwX3NvcnQsIHNvcnRzIH0gPSBhY3RpdmVWaWV3LnNldHRpbmdzO1xuICAgIGlmIChpc19rZWVwX3NvcnQgJiYgc29ydHM/Lmxlbmd0aCkge1xuICAgICAgICByZXR1cm4gc29ydFJlY29yZHNCeVNvcnRJbmZvKGFpVGFibGUsIHJlY29yZHMsIGFjdGl2ZVZpZXcpO1xuICAgIH1cbiAgICByZXR1cm4gc29ydEJ5Vmlld1Bvc2l0aW9uKHJlY29yZHMsIGFjdGl2ZVZpZXcpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gc29ydFJlY29yZHNCeVNvcnRJbmZvKGFpVGFibGU6IEFJVGFibGUsIHJlY29yZHM6IEFJVGFibGVWaWV3UmVjb3JkcywgYWN0aXZlVmlldzogQUlUYWJsZVZpZXcpIHtcbiAgICBjb25zdCBzaGFsbG93Um93cyA9IFsuLi5yZWNvcmRzXTtcbiAgICBpZiAoYWN0aXZlVmlldy5zZXR0aW5ncz8uc29ydHM/Lmxlbmd0aCkge1xuICAgICAgICBzaGFsbG93Um93cy5zb3J0KChwcmV2LCBjdXJyZW50KSA9PiB7XG4gICAgICAgICAgICByZXR1cm4gYWN0aXZlVmlldy5zZXR0aW5ncyEuc29ydHMhLnJlZHVjZSgoYWNjLCBydWxlKSA9PiB7XG4gICAgICAgICAgICAgICAgY29uc3QgZmllbGQgPSBhaVRhYmxlLmZpZWxkc01hcCgpW3J1bGUuc29ydF9ieV07XG4gICAgICAgICAgICAgICAgaWYgKCFmaWVsZCB8fCBhY2MgIT09IDApIHtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGFjYztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgY29uc3QgZmllbGRNZXRob2QgPSBWaWV3T3BlcmF0aW9uTWFwW2ZpZWxkLnR5cGVdO1xuXG4gICAgICAgICAgICAgICAgY29uc3QgY2VsbFZhbHVlMSA9IEFJVGFibGVRdWVyaWVzLmdldEZpZWxkVmFsdWUoYWlUYWJsZSwgW3ByZXYuX2lkLCBmaWVsZC5faWRdKTtcbiAgICAgICAgICAgICAgICBjb25zdCBjZWxsVmFsdWUyID0gQUlUYWJsZVF1ZXJpZXMuZ2V0RmllbGRWYWx1ZShhaVRhYmxlLCBbY3VycmVudC5faWQsIGZpZWxkLl9pZF0pO1xuICAgICAgICAgICAgICAgIGNvbnN0IHJlcyA9IGZpZWxkTWV0aG9kLmNvbXBhcmUoY2VsbFZhbHVlMSwgY2VsbFZhbHVlMiwgZmllbGQpO1xuICAgICAgICAgICAgICAgIHJldHVybiByZXMgKiBydWxlLmRpcmVjdGlvbjtcbiAgICAgICAgICAgIH0sIDApO1xuICAgICAgICB9KTtcbiAgICAgICAgcmV0dXJuIHNoYWxsb3dSb3dzO1xuICAgIH1cbiAgICByZXR1cm4gc2hhbGxvd1Jvd3M7XG59XG4iXX0=
|