@ai-table/grid 0.0.28 → 0.0.30

Sign up to get free protection for your applications and to get access to all the features.
Files changed (112) hide show
  1. package/components/context-menu/context-menu.component.d.ts.map +1 -1
  2. package/constants/table.d.ts +1 -1
  3. package/constants/table.d.ts.map +1 -1
  4. package/core/types/ai-table.d.ts +7 -15
  5. package/core/types/ai-table.d.ts.map +1 -1
  6. package/core/types/core.d.ts +3 -3
  7. package/core/types/core.d.ts.map +1 -1
  8. package/core/utils/common.d.ts.map +1 -1
  9. package/core/utils/queries.d.ts +2 -2
  10. package/core/utils/queries.d.ts.map +1 -1
  11. package/esm2022/components/context-menu/context-menu.component.mjs +4 -11
  12. package/esm2022/constants/table.mjs +2 -2
  13. package/esm2022/core/types/ai-table.mjs +22 -16
  14. package/esm2022/core/types/core.mjs +1 -1
  15. package/esm2022/core/utils/common.mjs +6 -5
  16. package/esm2022/core/utils/queries.mjs +1 -1
  17. package/esm2022/dom-grid.component.mjs +3 -3
  18. package/esm2022/grid-base.component.mjs +1 -4
  19. package/esm2022/grid.component.mjs +46 -10
  20. package/esm2022/renderer/creations/create-active-cell-border.mjs +6 -3
  21. package/esm2022/renderer/creations/create-cells.mjs +55 -25
  22. package/esm2022/renderer/renderer.component.mjs +7 -3
  23. package/esm2022/services/event.service.mjs +3 -2
  24. package/esm2022/services/index.mjs +1 -2
  25. package/esm2022/services/selection.service.mjs +41 -16
  26. package/esm2022/types/grid.mjs +1 -1
  27. package/esm2022/types/index.mjs +2 -1
  28. package/esm2022/types/view.mjs +18 -0
  29. package/esm2022/utils/field/model/date.mjs +64 -0
  30. package/esm2022/utils/field/model/field.mjs +38 -0
  31. package/esm2022/utils/field/model/index.mjs +25 -0
  32. package/esm2022/utils/field/model/link.mjs +33 -0
  33. package/esm2022/utils/field/model/member.mjs +57 -0
  34. package/esm2022/utils/field/model/number.mjs +32 -0
  35. package/esm2022/utils/field/model/progress.mjs +38 -0
  36. package/esm2022/utils/field/model/rate.mjs +26 -0
  37. package/esm2022/utils/field/model/select.mjs +56 -0
  38. package/esm2022/utils/field/model/text.mjs +27 -0
  39. package/esm2022/utils/field/operate.mjs +47 -0
  40. package/esm2022/utils/index.mjs +4 -2
  41. package/esm2022/utils/match-keywords.mjs +11 -0
  42. package/fesm2022/ai-table-grid.mjs +546 -146
  43. package/fesm2022/ai-table-grid.mjs.map +1 -1
  44. package/grid-base.component.d.ts +0 -2
  45. package/grid-base.component.d.ts.map +1 -1
  46. package/grid.component.d.ts +5 -0
  47. package/grid.component.d.ts.map +1 -1
  48. package/package.json +1 -1
  49. package/renderer/creations/create-active-cell-border.d.ts.map +1 -1
  50. package/renderer/creations/create-cells.d.ts.map +1 -1
  51. package/renderer/renderer.component.d.ts +5 -3
  52. package/renderer/renderer.component.d.ts.map +1 -1
  53. package/services/event.service.d.ts.map +1 -1
  54. package/services/index.d.ts +0 -1
  55. package/services/index.d.ts.map +1 -1
  56. package/services/selection.service.d.ts +3 -2
  57. package/services/selection.service.d.ts.map +1 -1
  58. package/types/grid.d.ts +6 -5
  59. package/types/grid.d.ts.map +1 -1
  60. package/types/index.d.ts +1 -0
  61. package/types/index.d.ts.map +1 -1
  62. package/types/view.d.ts +23 -0
  63. package/types/view.d.ts.map +1 -0
  64. package/utils/field/model/date.d.ts +9 -0
  65. package/utils/field/model/date.d.ts.map +1 -0
  66. package/utils/field/model/field.d.ts +9 -0
  67. package/utils/field/model/field.d.ts.map +1 -0
  68. package/utils/field/{index.d.ts → model/index.d.ts} +1 -1
  69. package/utils/field/model/index.d.ts.map +1 -0
  70. package/utils/field/model/link.d.ts +9 -0
  71. package/utils/field/model/link.d.ts.map +1 -0
  72. package/utils/field/model/member.d.ts +9 -0
  73. package/utils/field/model/member.d.ts.map +1 -0
  74. package/utils/field/model/number.d.ts +8 -0
  75. package/utils/field/model/number.d.ts.map +1 -0
  76. package/utils/field/model/progress.d.ts +9 -0
  77. package/utils/field/model/progress.d.ts.map +1 -0
  78. package/utils/field/model/rate.d.ts +8 -0
  79. package/utils/field/model/rate.d.ts.map +1 -0
  80. package/utils/field/model/select.d.ts +9 -0
  81. package/utils/field/model/select.d.ts.map +1 -0
  82. package/utils/field/model/text.d.ts +8 -0
  83. package/utils/field/model/text.d.ts.map +1 -0
  84. package/utils/field/operate.d.ts +9 -0
  85. package/utils/field/operate.d.ts.map +1 -0
  86. package/utils/index.d.ts +3 -1
  87. package/utils/index.d.ts.map +1 -1
  88. package/utils/match-keywords.d.ts +4 -0
  89. package/utils/match-keywords.d.ts.map +1 -0
  90. package/esm2022/services/match-cell.service.mjs +0 -45
  91. package/esm2022/utils/field/field.mjs +0 -3
  92. package/esm2022/utils/field/index.mjs +0 -22
  93. package/esm2022/utils/field/link.mjs +0 -12
  94. package/esm2022/utils/field/member.mjs +0 -19
  95. package/esm2022/utils/field/progress.mjs +0 -12
  96. package/esm2022/utils/field/select.mjs +0 -16
  97. package/esm2022/utils/field/text.mjs +0 -12
  98. package/services/match-cell.service.d.ts +0 -13
  99. package/services/match-cell.service.d.ts.map +0 -1
  100. package/utils/field/field.d.ts +0 -5
  101. package/utils/field/field.d.ts.map +0 -1
  102. package/utils/field/index.d.ts.map +0 -1
  103. package/utils/field/link.d.ts +0 -6
  104. package/utils/field/link.d.ts.map +0 -1
  105. package/utils/field/member.d.ts +0 -6
  106. package/utils/field/member.d.ts.map +0 -1
  107. package/utils/field/progress.d.ts +0 -6
  108. package/utils/field/progress.d.ts.map +0 -1
  109. package/utils/field/select.d.ts +0 -6
  110. package/utils/field/select.d.ts.map +0 -1
  111. package/utils/field/text.d.ts +0 -6
  112. package/utils/field/text.d.ts.map +0 -1
@@ -0,0 +1,56 @@
1
+ import { helpers } from 'ngx-tethys/util';
2
+ import { Field } from './field';
3
+ import { AITableFilterOperation } from '../../../types';
4
+ import { isEmpty } from '../../common';
5
+ import { compareString, hasIntersect } from '../operate';
6
+ export class SelectField extends Field {
7
+ isMeetFilter(condition, cellValue) {
8
+ switch (condition.operation) {
9
+ case AITableFilterOperation.empty:
10
+ return isEmpty(cellValue);
11
+ case AITableFilterOperation.exists:
12
+ return !isEmpty(cellValue);
13
+ case AITableFilterOperation.in:
14
+ return Array.isArray(condition.value) && hasIntersect(cellValue, condition.value);
15
+ case AITableFilterOperation.nin:
16
+ return Array.isArray(condition.value) && !hasIntersect(cellValue, condition.value);
17
+ default:
18
+ return super.isMeetFilter(condition, cellValue);
19
+ }
20
+ }
21
+ compare(cellValue1, cellValue2, field) {
22
+ const value1 = cellValueToSortValue(cellValue1, field);
23
+ const value2 = cellValueToSortValue(cellValue2, field);
24
+ return compareString(value1, value2);
25
+ }
26
+ cellFullText(transformValue, field) {
27
+ let fullText = [];
28
+ const optionsMap = helpers.keyBy(field.settings.options || [], '_id');
29
+ if (transformValue && Array.isArray(transformValue) && transformValue.length) {
30
+ transformValue.forEach((optionId) => {
31
+ const option = optionsMap[optionId];
32
+ if (option && option.text) {
33
+ fullText.push(option.text);
34
+ }
35
+ });
36
+ }
37
+ return fullText;
38
+ }
39
+ }
40
+ function cellValueToSortValue(cellValue, field) {
41
+ if (!cellValue) {
42
+ return null;
43
+ }
44
+ const texts = [];
45
+ const optionsMap = helpers.keyBy(field.settings.options || [], '_id');
46
+ if (cellValue && Array.isArray(cellValue) && cellValue.length) {
47
+ cellValue.forEach((optionId) => {
48
+ const option = optionsMap[optionId];
49
+ if (option && option.text) {
50
+ texts.push(option.text);
51
+ }
52
+ });
53
+ }
54
+ return texts && texts.length ? texts.join(',') : null;
55
+ }
56
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZ3JpZC9zcmMvdXRpbHMvZmllbGQvbW9kZWwvc2VsZWN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMxQyxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sU0FBUyxDQUFDO0FBQ2hDLE9BQU8sRUFBMEIsc0JBQXNCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUVoRixPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQ3ZDLE9BQU8sRUFBRSxhQUFhLEVBQUUsWUFBWSxFQUFFLE1BQU0sWUFBWSxDQUFDO0FBRXpELE1BQU0sT0FBTyxXQUFZLFNBQVEsS0FBSztJQUN6QixZQUFZLENBQUMsU0FBeUMsRUFBRSxTQUEyQjtRQUN4RixRQUFRLFNBQVMsQ0FBQyxTQUFTLEVBQUUsQ0FBQztZQUMxQixLQUFLLHNCQUFzQixDQUFDLEtBQUs7Z0JBQzdCLE9BQU8sT0FBTyxDQUFDLFNBQVMsQ0FBQyxDQUFDO1lBQzlCLEtBQUssc0JBQXNCLENBQUMsTUFBTTtnQkFDOUIsT0FBTyxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsQ0FBQztZQUMvQixLQUFLLHNCQUFzQixDQUFDLEVBQUU7Z0JBQzFCLE9BQU8sS0FBSyxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLElBQUksWUFBWSxDQUFDLFNBQVMsRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDdEYsS0FBSyxzQkFBc0IsQ0FBQyxHQUFHO2dCQUMzQixPQUFPLEtBQUssQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLFNBQVMsRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDdkY7Z0JBQ0ksT0FBTyxLQUFLLENBQUMsWUFBWSxDQUFDLFNBQVMsRUFBRSxTQUFTLENBQUMsQ0FBQztRQUN4RCxDQUFDO0lBQ0wsQ0FBQztJQUVRLE9BQU8sQ0FBQyxVQUFzQixFQUFFLFVBQXNCLEVBQUUsS0FBbUI7UUFDaEYsTUFBTSxNQUFNLEdBQUcsb0JBQW9CLENBQUMsVUFBVSxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQ3ZELE1BQU0sTUFBTSxHQUFHLG9CQUFvQixDQUFDLFVBQVUsRUFBRSxLQUFLLENBQUMsQ0FBQztRQUN2RCxPQUFPLGFBQWEsQ0FBQyxNQUFNLEVBQUUsTUFBTSxDQUFDLENBQUM7SUFDekMsQ0FBQztJQUVRLFlBQVksQ0FBQyxjQUF3QixFQUFFLEtBQW1CO1FBQy9ELElBQUksUUFBUSxHQUFhLEVBQUUsQ0FBQztRQUM1QixNQUFNLFVBQVUsR0FBRyxPQUFPLENBQUMsS0FBSyxDQUFFLEtBQUssQ0FBQyxRQUEyQixDQUFDLE9BQU8sSUFBSSxFQUFFLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFDMUYsSUFBSSxjQUFjLElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxjQUFjLENBQUMsSUFBSSxjQUFjLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDM0UsY0FBYyxDQUFDLE9BQU8sQ0FBQyxDQUFDLFFBQVEsRUFBRSxFQUFFO2dCQUNoQyxNQUFNLE1BQU0sR0FBRyxVQUFVLENBQUMsUUFBUSxDQUFDLENBQUM7Z0JBQ3BDLElBQUksTUFBTSxJQUFJLE1BQU0sQ0FBQyxJQUFJLEVBQUUsQ0FBQztvQkFDeEIsUUFBUSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUM7Z0JBQy9CLENBQUM7WUFDTCxDQUFDLENBQUMsQ0FBQztRQUNQLENBQUM7UUFDRCxPQUFPLFFBQVEsQ0FBQztJQUNwQixDQUFDO0NBQ0o7QUFFRCxTQUFTLG9CQUFvQixDQUFDLFNBQTJCLEVBQUUsS0FBbUI7SUFDMUUsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO1FBQ2IsT0FBTyxJQUFJLENBQUM7SUFDaEIsQ0FBQztJQUNELE1BQU0sS0FBSyxHQUFhLEVBQUUsQ0FBQztJQUMzQixNQUFNLFVBQVUsR0FBRyxPQUFPLENBQUMsS0FBSyxDQUFFLEtBQUssQ0FBQyxRQUEyQixDQUFDLE9BQU8sSUFBSSxFQUFFLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFDMUYsSUFBSSxTQUFTLElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsSUFBSSxTQUFTLENBQUMsTUFBTSxFQUFFLENBQUM7UUFDNUQsU0FBUyxDQUFDLE9BQU8sQ0FBQyxDQUFDLFFBQVEsRUFBRSxFQUFFO1lBQzNCLE1BQU0sTUFBTSxHQUFHLFVBQVUsQ0FBQyxRQUFRLENBQUMsQ0FBQztZQUNwQyxJQUFJLE1BQU0sSUFBSSxNQUFNLENBQUMsSUFBSSxFQUFFLENBQUM7Z0JBQ3hCLEtBQUssQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDO1lBQzVCLENBQUM7UUFDTCxDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7SUFDRCxPQUFPLEtBQUssSUFBSSxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7QUFDMUQsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGhlbHBlcnMgfSBmcm9tICduZ3gtdGV0aHlzL3V0aWwnO1xuaW1wb3J0IHsgRmllbGQgfSBmcm9tICcuL2ZpZWxkJztcbmltcG9ydCB7IEFJVGFibGVGaWx0ZXJDb25kaXRpb24sIEFJVGFibGVGaWx0ZXJPcGVyYXRpb24gfSBmcm9tICcuLi8uLi8uLi90eXBlcyc7XG5pbXBvcnQgeyBBSVRhYmxlRmllbGQsIEZpZWxkVmFsdWUsIFNlbGVjdEZpZWxkVmFsdWUsIFNlbGVjdFNldHRpbmdzIH0gZnJvbSAnLi4vLi4vLi4vY29yZSc7XG5pbXBvcnQgeyBpc0VtcHR5IH0gZnJvbSAnLi4vLi4vY29tbW9uJztcbmltcG9ydCB7IGNvbXBhcmVTdHJpbmcsIGhhc0ludGVyc2VjdCB9IGZyb20gJy4uL29wZXJhdGUnO1xuXG5leHBvcnQgY2xhc3MgU2VsZWN0RmllbGQgZXh0ZW5kcyBGaWVsZCB7XG4gICAgb3ZlcnJpZGUgaXNNZWV0RmlsdGVyKGNvbmRpdGlvbjogQUlUYWJsZUZpbHRlckNvbmRpdGlvbjxzdHJpbmc+LCBjZWxsVmFsdWU6IFNlbGVjdEZpZWxkVmFsdWUpIHtcbiAgICAgICAgc3dpdGNoIChjb25kaXRpb24ub3BlcmF0aW9uKSB7XG4gICAgICAgICAgICBjYXNlIEFJVGFibGVGaWx0ZXJPcGVyYXRpb24uZW1wdHk6XG4gICAgICAgICAgICAgICAgcmV0dXJuIGlzRW1wdHkoY2VsbFZhbHVlKTtcbiAgICAgICAgICAgIGNhc2UgQUlUYWJsZUZpbHRlck9wZXJhdGlvbi5leGlzdHM6XG4gICAgICAgICAgICAgICAgcmV0dXJuICFpc0VtcHR5KGNlbGxWYWx1ZSk7XG4gICAgICAgICAgICBjYXNlIEFJVGFibGVGaWx0ZXJPcGVyYXRpb24uaW46XG4gICAgICAgICAgICAgICAgcmV0dXJuIEFycmF5LmlzQXJyYXkoY29uZGl0aW9uLnZhbHVlKSAmJiBoYXNJbnRlcnNlY3QoY2VsbFZhbHVlLCBjb25kaXRpb24udmFsdWUpO1xuICAgICAgICAgICAgY2FzZSBBSVRhYmxlRmlsdGVyT3BlcmF0aW9uLm5pbjpcbiAgICAgICAgICAgICAgICByZXR1cm4gQXJyYXkuaXNBcnJheShjb25kaXRpb24udmFsdWUpICYmICFoYXNJbnRlcnNlY3QoY2VsbFZhbHVlLCBjb25kaXRpb24udmFsdWUpO1xuICAgICAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICAgICAgICByZXR1cm4gc3VwZXIuaXNNZWV0RmlsdGVyKGNvbmRpdGlvbiwgY2VsbFZhbHVlKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIG92ZXJyaWRlIGNvbXBhcmUoY2VsbFZhbHVlMTogRmllbGRWYWx1ZSwgY2VsbFZhbHVlMjogRmllbGRWYWx1ZSwgZmllbGQ6IEFJVGFibGVGaWVsZCk6IG51bWJlciB7XG4gICAgICAgIGNvbnN0IHZhbHVlMSA9IGNlbGxWYWx1ZVRvU29ydFZhbHVlKGNlbGxWYWx1ZTEsIGZpZWxkKTtcbiAgICAgICAgY29uc3QgdmFsdWUyID0gY2VsbFZhbHVlVG9Tb3J0VmFsdWUoY2VsbFZhbHVlMiwgZmllbGQpO1xuICAgICAgICByZXR1cm4gY29tcGFyZVN0cmluZyh2YWx1ZTEsIHZhbHVlMik7XG4gICAgfVxuXG4gICAgb3ZlcnJpZGUgY2VsbEZ1bGxUZXh0KHRyYW5zZm9ybVZhbHVlOiBzdHJpbmdbXSwgZmllbGQ6IEFJVGFibGVGaWVsZCk6IHN0cmluZ1tdIHtcbiAgICAgICAgbGV0IGZ1bGxUZXh0OiBzdHJpbmdbXSA9IFtdO1xuICAgICAgICBjb25zdCBvcHRpb25zTWFwID0gaGVscGVycy5rZXlCeSgoZmllbGQuc2V0dGluZ3MgYXMgU2VsZWN0U2V0dGluZ3MpLm9wdGlvbnMgfHwgW10sICdfaWQnKTtcbiAgICAgICAgaWYgKHRyYW5zZm9ybVZhbHVlICYmIEFycmF5LmlzQXJyYXkodHJhbnNmb3JtVmFsdWUpICYmIHRyYW5zZm9ybVZhbHVlLmxlbmd0aCkge1xuICAgICAgICAgICAgdHJhbnNmb3JtVmFsdWUuZm9yRWFjaCgob3B0aW9uSWQpID0+IHtcbiAgICAgICAgICAgICAgICBjb25zdCBvcHRpb24gPSBvcHRpb25zTWFwW29wdGlvbklkXTtcbiAgICAgICAgICAgICAgICBpZiAob3B0aW9uICYmIG9wdGlvbi50ZXh0KSB7XG4gICAgICAgICAgICAgICAgICAgIGZ1bGxUZXh0LnB1c2gob3B0aW9uLnRleHQpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBmdWxsVGV4dDtcbiAgICB9XG59XG5cbmZ1bmN0aW9uIGNlbGxWYWx1ZVRvU29ydFZhbHVlKGNlbGxWYWx1ZTogU2VsZWN0RmllbGRWYWx1ZSwgZmllbGQ6IEFJVGFibGVGaWVsZCk6IHN0cmluZyB8IG51bGwge1xuICAgIGlmICghY2VsbFZhbHVlKSB7XG4gICAgICAgIHJldHVybiBudWxsO1xuICAgIH1cbiAgICBjb25zdCB0ZXh0czogc3RyaW5nW10gPSBbXTtcbiAgICBjb25zdCBvcHRpb25zTWFwID0gaGVscGVycy5rZXlCeSgoZmllbGQuc2V0dGluZ3MgYXMgU2VsZWN0U2V0dGluZ3MpLm9wdGlvbnMgfHwgW10sICdfaWQnKTtcbiAgICBpZiAoY2VsbFZhbHVlICYmIEFycmF5LmlzQXJyYXkoY2VsbFZhbHVlKSAmJiBjZWxsVmFsdWUubGVuZ3RoKSB7XG4gICAgICAgIGNlbGxWYWx1ZS5mb3JFYWNoKChvcHRpb25JZCkgPT4ge1xuICAgICAgICAgICAgY29uc3Qgb3B0aW9uID0gb3B0aW9uc01hcFtvcHRpb25JZF07XG4gICAgICAgICAgICBpZiAob3B0aW9uICYmIG9wdGlvbi50ZXh0KSB7XG4gICAgICAgICAgICAgICAgdGV4dHMucHVzaChvcHRpb24udGV4dCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgIH1cbiAgICByZXR1cm4gdGV4dHMgJiYgdGV4dHMubGVuZ3RoID8gdGV4dHMuam9pbignLCcpIDogbnVsbDtcbn1cbiJdfQ==
@@ -0,0 +1,27 @@
1
+ import { AITableFilterOperation } from '../../../types';
2
+ import { isEmpty } from '../../common';
3
+ import { compareString, stringInclude } from '../operate';
4
+ import { Field } from './field';
5
+ export class TextField extends Field {
6
+ isMeetFilter(condition, cellValue) {
7
+ switch (condition.operation) {
8
+ case AITableFilterOperation.empty:
9
+ return isEmpty(cellValue);
10
+ case AITableFilterOperation.exists:
11
+ return !isEmpty(cellValue);
12
+ case AITableFilterOperation.contain:
13
+ return !isEmpty(cellValue) && stringInclude(cellValue, condition.value);
14
+ default:
15
+ return super.isMeetFilter(condition, cellValue);
16
+ }
17
+ }
18
+ compare(cellValue1, cellValue2) {
19
+ const value1 = cellValueToSortValue(cellValue1);
20
+ const value2 = cellValueToSortValue(cellValue2);
21
+ return compareString(value1, value2);
22
+ }
23
+ }
24
+ function cellValueToSortValue(cellValue) {
25
+ return (cellValue && cellValue.trim()) || null;
26
+ }
27
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2dyaWQvc3JjL3V0aWxzL2ZpZWxkL21vZGVsL3RleHQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUEwQixzQkFBc0IsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ2hGLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDdkMsT0FBTyxFQUFFLGFBQWEsRUFBRSxhQUFhLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFDMUQsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLFNBQVMsQ0FBQztBQUVoQyxNQUFNLE9BQU8sU0FBVSxTQUFRLEtBQUs7SUFDdkIsWUFBWSxDQUFDLFNBQXlDLEVBQUUsU0FBcUI7UUFDbEYsUUFBUSxTQUFTLENBQUMsU0FBUyxFQUFFLENBQUM7WUFDMUIsS0FBSyxzQkFBc0IsQ0FBQyxLQUFLO2dCQUM3QixPQUFPLE9BQU8sQ0FBQyxTQUFTLENBQUMsQ0FBQztZQUM5QixLQUFLLHNCQUFzQixDQUFDLE1BQU07Z0JBQzlCLE9BQU8sQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLENBQUM7WUFDL0IsS0FBSyxzQkFBc0IsQ0FBQyxPQUFPO2dCQUMvQixPQUFPLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxJQUFJLGFBQWEsQ0FBQyxTQUFTLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQzVFO2dCQUNJLE9BQU8sS0FBSyxDQUFDLFlBQVksQ0FBQyxTQUFTLEVBQUUsU0FBUyxDQUFDLENBQUM7UUFDeEQsQ0FBQztJQUNMLENBQUM7SUFFUSxPQUFPLENBQUMsVUFBc0IsRUFBRSxVQUFzQjtRQUMzRCxNQUFNLE1BQU0sR0FBRyxvQkFBb0IsQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUNoRCxNQUFNLE1BQU0sR0FBRyxvQkFBb0IsQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUNoRCxPQUFPLGFBQWEsQ0FBQyxNQUFNLEVBQUUsTUFBTSxDQUFDLENBQUM7SUFDekMsQ0FBQztDQUNKO0FBRUQsU0FBUyxvQkFBb0IsQ0FBQyxTQUFxQjtJQUMvQyxPQUFPLENBQUMsU0FBUyxJQUFJLFNBQVMsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxJQUFJLElBQUksQ0FBQztBQUNuRCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRmllbGRWYWx1ZSB9IGZyb20gJy4uLy4uLy4uL2NvcmUnO1xuaW1wb3J0IHsgQUlUYWJsZUZpbHRlckNvbmRpdGlvbiwgQUlUYWJsZUZpbHRlck9wZXJhdGlvbiB9IGZyb20gJy4uLy4uLy4uL3R5cGVzJztcbmltcG9ydCB7IGlzRW1wdHkgfSBmcm9tICcuLi8uLi9jb21tb24nO1xuaW1wb3J0IHsgY29tcGFyZVN0cmluZywgc3RyaW5nSW5jbHVkZSB9IGZyb20gJy4uL29wZXJhdGUnO1xuaW1wb3J0IHsgRmllbGQgfSBmcm9tICcuL2ZpZWxkJztcblxuZXhwb3J0IGNsYXNzIFRleHRGaWVsZCBleHRlbmRzIEZpZWxkIHtcbiAgICBvdmVycmlkZSBpc01lZXRGaWx0ZXIoY29uZGl0aW9uOiBBSVRhYmxlRmlsdGVyQ29uZGl0aW9uPHN0cmluZz4sIGNlbGxWYWx1ZTogRmllbGRWYWx1ZSkge1xuICAgICAgICBzd2l0Y2ggKGNvbmRpdGlvbi5vcGVyYXRpb24pIHtcbiAgICAgICAgICAgIGNhc2UgQUlUYWJsZUZpbHRlck9wZXJhdGlvbi5lbXB0eTpcbiAgICAgICAgICAgICAgICByZXR1cm4gaXNFbXB0eShjZWxsVmFsdWUpO1xuICAgICAgICAgICAgY2FzZSBBSVRhYmxlRmlsdGVyT3BlcmF0aW9uLmV4aXN0czpcbiAgICAgICAgICAgICAgICByZXR1cm4gIWlzRW1wdHkoY2VsbFZhbHVlKTtcbiAgICAgICAgICAgIGNhc2UgQUlUYWJsZUZpbHRlck9wZXJhdGlvbi5jb250YWluOlxuICAgICAgICAgICAgICAgIHJldHVybiAhaXNFbXB0eShjZWxsVmFsdWUpICYmIHN0cmluZ0luY2x1ZGUoY2VsbFZhbHVlLCBjb25kaXRpb24udmFsdWUpO1xuICAgICAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICAgICAgICByZXR1cm4gc3VwZXIuaXNNZWV0RmlsdGVyKGNvbmRpdGlvbiwgY2VsbFZhbHVlKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIG92ZXJyaWRlIGNvbXBhcmUoY2VsbFZhbHVlMTogRmllbGRWYWx1ZSwgY2VsbFZhbHVlMjogRmllbGRWYWx1ZSk6IG51bWJlciB7XG4gICAgICAgIGNvbnN0IHZhbHVlMSA9IGNlbGxWYWx1ZVRvU29ydFZhbHVlKGNlbGxWYWx1ZTEpO1xuICAgICAgICBjb25zdCB2YWx1ZTIgPSBjZWxsVmFsdWVUb1NvcnRWYWx1ZShjZWxsVmFsdWUyKTtcbiAgICAgICAgcmV0dXJuIGNvbXBhcmVTdHJpbmcodmFsdWUxLCB2YWx1ZTIpO1xuICAgIH1cbn1cblxuZnVuY3Rpb24gY2VsbFZhbHVlVG9Tb3J0VmFsdWUoY2VsbFZhbHVlOiBGaWVsZFZhbHVlKTogc3RyaW5nIHwgbnVsbCB7XG4gICAgcmV0dXJuIChjZWxsVmFsdWUgJiYgY2VsbFZhbHVlLnRyaW0oKSkgfHwgbnVsbDtcbn1cbiJdfQ==
@@ -0,0 +1,47 @@
1
+ import { isEmpty } from '../common';
2
+ export const zhIntlCollator = typeof Intl !== 'undefined' ? new Intl.Collator('zh-CN') : undefined;
3
+ export function compareNumber(a, b) {
4
+ if (isEmpty(a) && isEmpty(b)) {
5
+ return 0;
6
+ }
7
+ if (isEmpty(a)) {
8
+ return -1;
9
+ }
10
+ if (isEmpty(b)) {
11
+ return 1;
12
+ }
13
+ return a === b ? 0 : a > b ? 1 : -1;
14
+ }
15
+ export function compareString(a, b) {
16
+ if (a === b) {
17
+ return 0;
18
+ }
19
+ if (a == null) {
20
+ return -1;
21
+ }
22
+ if (b == null) {
23
+ return 1;
24
+ }
25
+ // pinyin sort
26
+ return a === b ? 0 : zhIntlCollator ? zhIntlCollator.compare(a, b) : a.localeCompare(b, 'zh-CN') > 0 ? 1 : -1;
27
+ }
28
+ export function stringInclude(str, searchStr) {
29
+ return str.toLowerCase().includes(searchStr.trim().toLowerCase());
30
+ }
31
+ /**
32
+ * 两数组是否有交集
33
+ */
34
+ export function hasIntersect(array1, array2) {
35
+ if (!Array.isArray(array1) || !Array.isArray(array2)) {
36
+ return false;
37
+ }
38
+ const set1 = new Set(array1);
39
+ const set2 = new Set(array2);
40
+ for (const element of set1) {
41
+ if (set2.has(element)) {
42
+ return true;
43
+ }
44
+ }
45
+ return false;
46
+ }
47
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3BlcmF0ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2dyaWQvc3JjL3V0aWxzL2ZpZWxkL29wZXJhdGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUVwQyxNQUFNLENBQUMsTUFBTSxjQUFjLEdBQUcsT0FBTyxJQUFJLEtBQUssV0FBVyxDQUFDLENBQUMsQ0FBQyxJQUFJLElBQUksQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQztBQUVuRyxNQUFNLFVBQVUsYUFBYSxDQUFDLENBQVMsRUFBRSxDQUFTO0lBQzlDLElBQUksT0FBTyxDQUFDLENBQUMsQ0FBQyxJQUFJLE9BQU8sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO1FBQzNCLE9BQU8sQ0FBQyxDQUFDO0lBQ2IsQ0FBQztJQUNELElBQUksT0FBTyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7UUFDYixPQUFPLENBQUMsQ0FBQyxDQUFDO0lBQ2QsQ0FBQztJQUNELElBQUksT0FBTyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7UUFDYixPQUFPLENBQUMsQ0FBQztJQUNiLENBQUM7SUFDRCxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztBQUN4QyxDQUFDO0FBRUQsTUFBTSxVQUFVLGFBQWEsQ0FBQyxDQUFnQixFQUFFLENBQWdCO0lBQzVELElBQUksQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDO1FBQ1YsT0FBTyxDQUFDLENBQUM7SUFDYixDQUFDO0lBQ0QsSUFBSSxDQUFDLElBQUksSUFBSSxFQUFFLENBQUM7UUFDWixPQUFPLENBQUMsQ0FBQyxDQUFDO0lBQ2QsQ0FBQztJQUNELElBQUksQ0FBQyxJQUFJLElBQUksRUFBRSxDQUFDO1FBQ1osT0FBTyxDQUFDLENBQUM7SUFDYixDQUFDO0lBRUQsZUFBZTtJQUNmLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxjQUFjLENBQUMsQ0FBQyxDQUFDLGNBQWMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsYUFBYSxDQUFDLENBQUMsRUFBRSxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7QUFDbEgsQ0FBQztBQUVELE1BQU0sVUFBVSxhQUFhLENBQUMsR0FBVyxFQUFFLFNBQWlCO0lBQ3hELE9BQU8sR0FBRyxDQUFDLFdBQVcsRUFBRSxDQUFDLFFBQVEsQ0FBQyxTQUFTLENBQUMsSUFBSSxFQUFFLENBQUMsV0FBVyxFQUFFLENBQUMsQ0FBQztBQUN0RSxDQUFDO0FBRUQ7O0dBRUc7QUFDSCxNQUFNLFVBQVUsWUFBWSxDQUE0QixNQUFXLEVBQUUsTUFBVztJQUM1RSxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQztRQUNuRCxPQUFPLEtBQUssQ0FBQztJQUNqQixDQUFDO0lBQ0QsTUFBTSxJQUFJLEdBQUcsSUFBSSxHQUFHLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDN0IsTUFBTSxJQUFJLEdBQUcsSUFBSSxHQUFHLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDN0IsS0FBSyxNQUFNLE9BQU8sSUFBSSxJQUFJLEVBQUUsQ0FBQztRQUN6QixJQUFJLElBQUksQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQztZQUNwQixPQUFPLElBQUksQ0FBQztRQUNoQixDQUFDO0lBQ0wsQ0FBQztJQUNELE9BQU8sS0FBSyxDQUFDO0FBQ2pCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBpc0VtcHR5IH0gZnJvbSAnLi4vY29tbW9uJztcblxuZXhwb3J0IGNvbnN0IHpoSW50bENvbGxhdG9yID0gdHlwZW9mIEludGwgIT09ICd1bmRlZmluZWQnID8gbmV3IEludGwuQ29sbGF0b3IoJ3poLUNOJykgOiB1bmRlZmluZWQ7XG5cbmV4cG9ydCBmdW5jdGlvbiBjb21wYXJlTnVtYmVyKGE6IG51bWJlciwgYjogbnVtYmVyKTogbnVtYmVyIHtcbiAgICBpZiAoaXNFbXB0eShhKSAmJiBpc0VtcHR5KGIpKSB7XG4gICAgICAgIHJldHVybiAwO1xuICAgIH1cbiAgICBpZiAoaXNFbXB0eShhKSkge1xuICAgICAgICByZXR1cm4gLTE7XG4gICAgfVxuICAgIGlmIChpc0VtcHR5KGIpKSB7XG4gICAgICAgIHJldHVybiAxO1xuICAgIH1cbiAgICByZXR1cm4gYSA9PT0gYiA/IDAgOiBhID4gYiA/IDEgOiAtMTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGNvbXBhcmVTdHJpbmcoYTogc3RyaW5nIHwgbnVsbCwgYjogc3RyaW5nIHwgbnVsbCk6IG51bWJlciB7XG4gICAgaWYgKGEgPT09IGIpIHtcbiAgICAgICAgcmV0dXJuIDA7XG4gICAgfVxuICAgIGlmIChhID09IG51bGwpIHtcbiAgICAgICAgcmV0dXJuIC0xO1xuICAgIH1cbiAgICBpZiAoYiA9PSBudWxsKSB7XG4gICAgICAgIHJldHVybiAxO1xuICAgIH1cblxuICAgIC8vICBwaW55aW4gc29ydFxuICAgIHJldHVybiBhID09PSBiID8gMCA6IHpoSW50bENvbGxhdG9yID8gemhJbnRsQ29sbGF0b3IuY29tcGFyZShhLCBiKSA6IGEubG9jYWxlQ29tcGFyZShiLCAnemgtQ04nKSA+IDAgPyAxIDogLTE7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBzdHJpbmdJbmNsdWRlKHN0cjogc3RyaW5nLCBzZWFyY2hTdHI6IHN0cmluZykge1xuICAgIHJldHVybiBzdHIudG9Mb3dlckNhc2UoKS5pbmNsdWRlcyhzZWFyY2hTdHIudHJpbSgpLnRvTG93ZXJDYXNlKCkpO1xufVxuXG4vKipcbiAqIOS4pOaVsOe7hOaYr+WQpuacieS6pOmbhlxuICovXG5leHBvcnQgZnVuY3Rpb24gaGFzSW50ZXJzZWN0PFQgZXh0ZW5kcyBudW1iZXIgfCBzdHJpbmc+KGFycmF5MTogVFtdLCBhcnJheTI6IFRbXSkge1xuICAgIGlmICghQXJyYXkuaXNBcnJheShhcnJheTEpIHx8ICFBcnJheS5pc0FycmF5KGFycmF5MikpIHtcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cbiAgICBjb25zdCBzZXQxID0gbmV3IFNldChhcnJheTEpO1xuICAgIGNvbnN0IHNldDIgPSBuZXcgU2V0KGFycmF5Mik7XG4gICAgZm9yIChjb25zdCBlbGVtZW50IG9mIHNldDEpIHtcbiAgICAgICAgaWYgKHNldDIuaGFzKGVsZW1lbnQpKSB7XG4gICAgICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gZmFsc2U7XG59XG4iXX0=
@@ -9,5 +9,7 @@ export * from './position';
9
9
  export * from './style';
10
10
  export * from './text-measure';
11
11
  export * from './visible-range';
12
- export * from './field';
13
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wYWNrYWdlcy9ncmlkL3NyYy91dGlscy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLFNBQVMsQ0FBQztBQUN4QixjQUFjLFFBQVEsQ0FBQztBQUN2QixjQUFjLFVBQVUsQ0FBQztBQUN6QixjQUFjLHlCQUF5QixDQUFDO0FBQ3hDLGNBQWMsa0JBQWtCLENBQUM7QUFDakMsY0FBYyxlQUFlLENBQUM7QUFDOUIsY0FBYyxNQUFNLENBQUM7QUFDckIsY0FBYyxZQUFZLENBQUM7QUFDM0IsY0FBYyxTQUFTLENBQUM7QUFDeEIsY0FBYyxnQkFBZ0IsQ0FBQztBQUMvQixjQUFjLGlCQUFpQixDQUFDO0FBQ2hDLGNBQWMsU0FBUyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9idWlsZCc7XG5leHBvcnQgKiBmcm9tICcuL2NlbGwnO1xuZXhwb3J0ICogZnJvbSAnLi9jb21tb24nO1xuZXhwb3J0ICogZnJvbSAnLi9nZXQtcGxhY2Vob2xkZXItY2VsbHMnO1xuZXhwb3J0ICogZnJvbSAnLi9nZXQtdGV4dC13aWR0aCc7XG5leHBvcnQgKiBmcm9tICcuL2ltYWdlLWNhY2hlJztcbmV4cG9ydCAqIGZyb20gJy4vb3MnO1xuZXhwb3J0ICogZnJvbSAnLi9wb3NpdGlvbic7XG5leHBvcnQgKiBmcm9tICcuL3N0eWxlJztcbmV4cG9ydCAqIGZyb20gJy4vdGV4dC1tZWFzdXJlJztcbmV4cG9ydCAqIGZyb20gJy4vdmlzaWJsZS1yYW5nZSc7XG5leHBvcnQgKiBmcm9tICcuL2ZpZWxkJztcbiJdfQ==
12
+ export * from './field/model';
13
+ export * from './field/operate';
14
+ export * from './match-keywords';
15
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wYWNrYWdlcy9ncmlkL3NyYy91dGlscy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLFNBQVMsQ0FBQztBQUN4QixjQUFjLFFBQVEsQ0FBQztBQUN2QixjQUFjLFVBQVUsQ0FBQztBQUN6QixjQUFjLHlCQUF5QixDQUFDO0FBQ3hDLGNBQWMsa0JBQWtCLENBQUM7QUFDakMsY0FBYyxlQUFlLENBQUM7QUFDOUIsY0FBYyxNQUFNLENBQUM7QUFDckIsY0FBYyxZQUFZLENBQUM7QUFDM0IsY0FBYyxTQUFTLENBQUM7QUFDeEIsY0FBYyxnQkFBZ0IsQ0FBQztBQUMvQixjQUFjLGlCQUFpQixDQUFDO0FBQ2hDLGNBQWMsZUFBZSxDQUFDO0FBQzlCLGNBQWMsaUJBQWlCLENBQUM7QUFDaEMsY0FBYyxrQkFBa0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vYnVpbGQnO1xuZXhwb3J0ICogZnJvbSAnLi9jZWxsJztcbmV4cG9ydCAqIGZyb20gJy4vY29tbW9uJztcbmV4cG9ydCAqIGZyb20gJy4vZ2V0LXBsYWNlaG9sZGVyLWNlbGxzJztcbmV4cG9ydCAqIGZyb20gJy4vZ2V0LXRleHQtd2lkdGgnO1xuZXhwb3J0ICogZnJvbSAnLi9pbWFnZS1jYWNoZSc7XG5leHBvcnQgKiBmcm9tICcuL29zJztcbmV4cG9ydCAqIGZyb20gJy4vcG9zaXRpb24nO1xuZXhwb3J0ICogZnJvbSAnLi9zdHlsZSc7XG5leHBvcnQgKiBmcm9tICcuL3RleHQtbWVhc3VyZSc7XG5leHBvcnQgKiBmcm9tICcuL3Zpc2libGUtcmFuZ2UnO1xuZXhwb3J0ICogZnJvbSAnLi9maWVsZC9tb2RlbCc7XG5leHBvcnQgKiBmcm9tICcuL2ZpZWxkL29wZXJhdGUnO1xuZXhwb3J0ICogZnJvbSAnLi9tYXRjaC1rZXl3b3Jkcyc7XG4iXX0=
@@ -0,0 +1,11 @@
1
+ import { AITableQueries } from '../core';
2
+ import { transformCellValue } from './cell';
3
+ import { ViewOperationMap } from './field/model';
4
+ export const isCellMatchKeywords = (aiTable, field, recordId, keywords, references) => {
5
+ const cellValue = AITableQueries.getFieldValue(aiTable, [recordId, field._id]);
6
+ const transformValue = transformCellValue(aiTable, field, cellValue);
7
+ const fieldMethod = ViewOperationMap[field.type];
8
+ let cellFullText = fieldMethod.cellFullText(transformValue, field, references);
9
+ return keywords && cellFullText.length && cellFullText.some((text) => text.toLowerCase().includes(keywords.toLowerCase()));
10
+ };
11
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWF0Y2gta2V5d29yZHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wYWNrYWdlcy9ncmlkL3NyYy91dGlscy9tYXRjaC1rZXl3b3Jkcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQXlCLGNBQWMsRUFBRSxNQUFNLFNBQVMsQ0FBQztBQUVoRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxRQUFRLENBQUM7QUFDNUMsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRWpELE1BQU0sQ0FBQyxNQUFNLG1CQUFtQixHQUFHLENBQy9CLE9BQWdCLEVBQ2hCLEtBQW1CLEVBQ25CLFFBQWdCLEVBQ2hCLFFBQWdCLEVBQ2hCLFVBQTZCLEVBQy9CLEVBQUU7SUFDQSxNQUFNLFNBQVMsR0FBRyxjQUFjLENBQUMsYUFBYSxDQUFDLE9BQU8sRUFBRSxDQUFDLFFBQVEsRUFBRSxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztJQUMvRSxNQUFNLGNBQWMsR0FBRyxrQkFBa0IsQ0FBQyxPQUFPLEVBQUUsS0FBSyxFQUFFLFNBQVMsQ0FBQyxDQUFDO0lBQ3JFLE1BQU0sV0FBVyxHQUFHLGdCQUFnQixDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNqRCxJQUFJLFlBQVksR0FBYSxXQUFXLENBQUMsWUFBWSxDQUFDLGNBQWMsRUFBRSxLQUFLLEVBQUUsVUFBVSxDQUFDLENBQUM7SUFDekYsT0FBTyxRQUFRLElBQUksWUFBWSxDQUFDLE1BQU0sSUFBSSxZQUFZLENBQUMsSUFBSSxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxXQUFXLEVBQUUsQ0FBQyxDQUFDLENBQUM7QUFDL0gsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQUlUYWJsZSwgQUlUYWJsZUZpZWxkLCBBSVRhYmxlUXVlcmllcyB9IGZyb20gJy4uL2NvcmUnO1xuaW1wb3J0IHsgQUlUYWJsZVJlZmVyZW5jZXMgfSBmcm9tICcuLi90eXBlcyc7XG5pbXBvcnQgeyB0cmFuc2Zvcm1DZWxsVmFsdWUgfSBmcm9tICcuL2NlbGwnO1xuaW1wb3J0IHsgVmlld09wZXJhdGlvbk1hcCB9IGZyb20gJy4vZmllbGQvbW9kZWwnO1xuXG5leHBvcnQgY29uc3QgaXNDZWxsTWF0Y2hLZXl3b3JkcyA9IChcbiAgICBhaVRhYmxlOiBBSVRhYmxlLFxuICAgIGZpZWxkOiBBSVRhYmxlRmllbGQsXG4gICAgcmVjb3JkSWQ6IHN0cmluZyxcbiAgICBrZXl3b3Jkczogc3RyaW5nLFxuICAgIHJlZmVyZW5jZXM6IEFJVGFibGVSZWZlcmVuY2VzXG4pID0+IHtcbiAgICBjb25zdCBjZWxsVmFsdWUgPSBBSVRhYmxlUXVlcmllcy5nZXRGaWVsZFZhbHVlKGFpVGFibGUsIFtyZWNvcmRJZCwgZmllbGQuX2lkXSk7XG4gICAgY29uc3QgdHJhbnNmb3JtVmFsdWUgPSB0cmFuc2Zvcm1DZWxsVmFsdWUoYWlUYWJsZSwgZmllbGQsIGNlbGxWYWx1ZSk7XG4gICAgY29uc3QgZmllbGRNZXRob2QgPSBWaWV3T3BlcmF0aW9uTWFwW2ZpZWxkLnR5cGVdO1xuICAgIGxldCBjZWxsRnVsbFRleHQ6IHN0cmluZ1tdID0gZmllbGRNZXRob2QuY2VsbEZ1bGxUZXh0KHRyYW5zZm9ybVZhbHVlLCBmaWVsZCwgcmVmZXJlbmNlcyk7XG4gICAgcmV0dXJuIGtleXdvcmRzICYmIGNlbGxGdWxsVGV4dC5sZW5ndGggJiYgY2VsbEZ1bGxUZXh0LnNvbWUoKHRleHQpID0+IHRleHQudG9Mb3dlckNhc2UoKS5pbmNsdWRlcyhrZXl3b3Jkcy50b0xvd2VyQ2FzZSgpKSk7XG59O1xuIl19