@ai-table/grid 0.0.11 → 0.0.13
Sign up to get free protection for your applications and to get access to all the features.
- package/angular-konva/components/container.component.d.ts +7 -0
- package/angular-konva/components/container.component.d.ts.map +1 -0
- package/angular-konva/components/container.token.d.ts +3 -0
- package/angular-konva/components/container.token.d.ts.map +1 -0
- package/angular-konva/components/index.d.ts +4 -0
- package/angular-konva/components/index.d.ts.map +1 -0
- package/angular-konva/components/shape.component.d.ts +61 -0
- package/angular-konva/components/shape.component.d.ts.map +1 -0
- package/angular-konva/components/stage.component.d.ts +40 -0
- package/angular-konva/components/stage.component.d.ts.map +1 -0
- package/angular-konva/index.d.ts +5 -0
- package/angular-konva/index.d.ts.map +1 -0
- package/angular-konva/interfaces/component.d.ts +49 -0
- package/angular-konva/interfaces/component.d.ts.map +1 -0
- package/angular-konva/interfaces/config.d.ts +26 -0
- package/angular-konva/interfaces/config.d.ts.map +1 -0
- package/angular-konva/interfaces/event-object.d.ts +7 -0
- package/angular-konva/interfaces/event-object.d.ts.map +1 -0
- package/angular-konva/interfaces/index.d.ts +5 -0
- package/angular-konva/interfaces/index.d.ts.map +1 -0
- package/angular-konva/interfaces/shape.d.ts +42 -0
- package/angular-konva/interfaces/shape.d.ts.map +1 -0
- package/angular-konva/utils/apply-node-props.d.ts +4 -0
- package/angular-konva/utils/apply-node-props.d.ts.map +1 -0
- package/angular-konva/utils/common.d.ts +8 -0
- package/angular-konva/utils/common.d.ts.map +1 -0
- package/angular-konva/utils/index.d.ts +5 -0
- package/angular-konva/utils/index.d.ts.map +1 -0
- package/angular-konva/utils/types.d.ts +4 -0
- package/angular-konva/utils/types.d.ts.map +1 -0
- package/angular-konva/utils/update-picture.d.ts +4 -0
- package/angular-konva/utils/update-picture.d.ts.map +1 -0
- package/components/cell-editors/abstract-cell-editor.component.d.ts +7 -5
- package/components/cell-editors/abstract-cell-editor.component.d.ts.map +1 -1
- package/components/cell-editors/cell-editor.scss +38 -25
- package/components/cell-editors/cell-editor.variables.scss +5 -0
- package/components/cell-editors/date/date-editor.component.d.ts.map +1 -1
- package/components/cell-editors/link/edit-link/edit-link.component.d.ts +33 -0
- package/components/cell-editors/link/edit-link/edit-link.component.d.ts.map +1 -0
- package/components/cell-editors/link/link-editor.component.d.ts +36 -0
- package/components/cell-editors/link/link-editor.component.d.ts.map +1 -0
- package/components/cell-editors/link/link-editor.component.scss +21 -0
- package/components/cell-editors/progress/progress-editor.component.d.ts +0 -1
- package/components/cell-editors/progress/progress-editor.component.d.ts.map +1 -1
- package/components/cell-editors/progress/progress-editor.component.scss +12 -4
- package/components/cell-editors/rating/rating-editor.component.d.ts +0 -1
- package/components/cell-editors/rating/rating-editor.component.d.ts.map +1 -1
- package/components/cell-editors/rating/rating-editor.component.scss +10 -0
- package/components/cell-editors/select/select-editor.component.d.ts +1 -3
- package/components/cell-editors/select/select-editor.component.d.ts.map +1 -1
- package/components/cell-editors/text/text-editor.component.d.ts +0 -1
- package/components/cell-editors/text/text-editor.component.d.ts.map +1 -1
- package/components/cell-views/select/option.component.d.ts.map +1 -1
- package/components/cell-views/select/option.scss +10 -0
- package/components/field-menu/field-menu.component.d.ts +8 -3
- package/components/field-menu/field-menu.component.d.ts.map +1 -1
- package/components/field-property-editor/field-property-editor.component.d.ts +4 -2
- package/components/field-property-editor/field-property-editor.component.d.ts.map +1 -1
- package/components/index.d.ts +3 -1
- package/components/index.d.ts.map +1 -1
- package/constants/colors.d.ts +18 -0
- package/constants/colors.d.ts.map +1 -0
- package/constants/grid.d.ts +17 -1
- package/constants/grid.d.ts.map +1 -1
- package/constants/icon.d.ts +19 -0
- package/constants/icon.d.ts.map +1 -0
- package/constants/index.d.ts +5 -1
- package/constants/index.d.ts.map +1 -1
- package/constants/table.d.ts +60 -0
- package/constants/table.d.ts.map +1 -0
- package/constants/text.d.ts +22 -0
- package/constants/text.d.ts.map +1 -0
- package/core/context.d.ts +14 -0
- package/core/context.d.ts.map +1 -0
- package/core/coordinate.d.ts +96 -0
- package/core/coordinate.d.ts.map +1 -0
- package/core/index.d.ts +3 -2
- package/core/index.d.ts.map +1 -1
- package/core/types/ai-table.d.ts +56 -0
- package/core/types/ai-table.d.ts.map +1 -0
- package/core/types/core.d.ts +29 -23
- package/core/types/core.d.ts.map +1 -1
- package/core/types/index.d.ts +1 -1
- package/core/types/index.d.ts.map +1 -1
- package/core/utils/common.d.ts +1 -2
- package/core/utils/common.d.ts.map +1 -1
- package/core/utils/field.d.ts +1 -1
- package/core/utils/field.d.ts.map +1 -1
- package/core/utils/index.d.ts +0 -1
- package/core/utils/index.d.ts.map +1 -1
- package/core/utils/queries.d.ts +5 -5
- package/core/utils/queries.d.ts.map +1 -1
- package/dom-grid.component.d.ts +11 -0
- package/dom-grid.component.d.ts.map +1 -0
- package/esm2022/angular-konva/components/container.component.mjs +29 -0
- package/esm2022/angular-konva/components/container.token.mjs +3 -0
- package/esm2022/angular-konva/components/index.mjs +4 -0
- package/esm2022/angular-konva/components/shape.component.mjs +142 -0
- package/esm2022/angular-konva/components/stage.component.mjs +123 -0
- package/esm2022/angular-konva/index.mjs +5 -0
- package/esm2022/angular-konva/interfaces/component.mjs +4 -0
- package/esm2022/angular-konva/interfaces/config.mjs +2 -0
- package/esm2022/angular-konva/interfaces/event-object.mjs +2 -0
- package/esm2022/angular-konva/interfaces/index.mjs +5 -0
- package/esm2022/angular-konva/interfaces/shape.mjs +42 -0
- package/esm2022/angular-konva/utils/apply-node-props.mjs +67 -0
- package/esm2022/angular-konva/utils/common.mjs +48 -0
- package/esm2022/angular-konva/utils/index.mjs +5 -0
- package/esm2022/angular-konva/utils/types.mjs +2 -0
- package/esm2022/angular-konva/utils/update-picture.mjs +7 -0
- package/esm2022/components/cell-editors/abstract-cell-editor.component.mjs +12 -7
- package/esm2022/components/cell-editors/date/date-editor.component.mjs +6 -3
- package/esm2022/components/cell-editors/link/edit-link/edit-link.component.mjs +66 -0
- package/esm2022/components/cell-editors/link/link-editor.component.mjs +117 -0
- package/esm2022/components/cell-editors/number/number-editor.component.mjs +2 -2
- package/esm2022/components/cell-editors/progress/progress-editor.component.mjs +3 -6
- package/esm2022/components/cell-editors/rating/rating-editor.component.mjs +4 -7
- package/esm2022/components/cell-editors/select/select-editor.component.mjs +11 -16
- package/esm2022/components/cell-editors/text/text-editor.component.mjs +10 -11
- package/esm2022/components/cell-views/select/option.component.mjs +6 -5
- package/esm2022/components/field-menu/field-menu.component.mjs +11 -8
- package/esm2022/components/field-property-editor/field-property-editor.component.mjs +17 -12
- package/esm2022/components/index.mjs +4 -2
- package/esm2022/constants/colors.mjs +18 -0
- package/esm2022/constants/editor.mjs +2 -3
- package/esm2022/constants/grid.mjs +22 -4
- package/esm2022/constants/icon.mjs +26 -0
- package/esm2022/constants/index.mjs +6 -2
- package/esm2022/constants/table.mjs +62 -0
- package/esm2022/constants/text.mjs +23 -0
- package/esm2022/core/context.mjs +25 -0
- package/esm2022/core/coordinate.mjs +222 -0
- package/esm2022/core/index.mjs +4 -3
- package/esm2022/core/types/ai-table.mjs +44 -0
- package/esm2022/core/types/core.mjs +6 -1
- package/esm2022/core/types/index.mjs +2 -2
- package/esm2022/core/utils/common.mjs +3 -20
- package/esm2022/core/utils/field.mjs +9 -5
- package/esm2022/core/utils/index.mjs +1 -2
- package/esm2022/core/utils/queries.mjs +4 -4
- package/esm2022/dom-grid.component.mjs +82 -0
- package/esm2022/grid-base.component.mjs +154 -0
- package/esm2022/grid.component.mjs +336 -160
- package/esm2022/public-api.mjs +9 -5
- package/esm2022/renderer/components/add-field-column.component.mjs +68 -0
- package/esm2022/renderer/components/cells.component.mjs +35 -0
- package/esm2022/renderer/components/field-head.component.mjs +130 -0
- package/esm2022/renderer/components/field-icon.component.mjs +66 -0
- package/esm2022/renderer/components/frozen-cells.component.mjs +36 -0
- package/esm2022/renderer/components/frozen-heads.component.mjs +117 -0
- package/esm2022/renderer/components/frozen-placeholder-cells.component.mjs +38 -0
- package/esm2022/renderer/components/heads.component.mjs +38 -0
- package/esm2022/renderer/components/hover-row-heads.component.mjs +107 -0
- package/esm2022/renderer/components/icon.component.mjs +80 -0
- package/esm2022/renderer/components/index.mjs +14 -0
- package/esm2022/renderer/components/other-rows.component.mjs +68 -0
- package/esm2022/renderer/components/placeholder-cells.component.mjs +33 -0
- package/esm2022/renderer/components/text.component.mjs +45 -0
- package/esm2022/renderer/creations/create-active-cell-border.mjs +68 -0
- package/esm2022/renderer/creations/create-cells.mjs +135 -0
- package/esm2022/renderer/creations/create-heads.mjs +45 -0
- package/esm2022/renderer/drawers/add-row-layout-drawer.mjs +97 -0
- package/esm2022/renderer/drawers/cell-drawer.mjs +586 -0
- package/esm2022/renderer/drawers/drawer.mjs +936 -0
- package/esm2022/renderer/drawers/layout-drawer.mjs +58 -0
- package/esm2022/renderer/drawers/record-row-layout-drawer.mjs +101 -0
- package/esm2022/renderer/index.mjs +4 -0
- package/esm2022/renderer/renderer.component.mjs +174 -0
- package/esm2022/services/event.service.mjs +115 -11
- package/esm2022/services/field.service.mjs +28 -5
- package/esm2022/services/index.mjs +4 -0
- package/esm2022/services/selection.service.mjs +8 -1
- package/esm2022/types/avatar.mjs +27 -0
- package/esm2022/types/canvas.mjs +2 -0
- package/esm2022/types/cell.mjs +2 -0
- package/esm2022/types/component-config.mjs +7 -0
- package/esm2022/types/field.mjs +1 -1
- package/esm2022/types/grid.mjs +16 -2
- package/esm2022/types/index.mjs +8 -2
- package/esm2022/types/layout.mjs +2 -0
- package/esm2022/types/row.mjs +6 -0
- package/esm2022/utils/build.mjs +39 -0
- package/esm2022/utils/cell.mjs +71 -0
- package/esm2022/utils/common.mjs +49 -0
- package/esm2022/utils/get-placeholder-cells.mjs +66 -0
- package/esm2022/utils/get-text-width.mjs +30 -0
- package/esm2022/utils/image-cache.mjs +57 -0
- package/esm2022/utils/index.mjs +12 -0
- package/esm2022/utils/os.mjs +16 -0
- package/esm2022/utils/position.mjs +48 -0
- package/esm2022/utils/style.mjs +25 -0
- package/esm2022/utils/text-measure.mjs +122 -0
- package/esm2022/utils/visible-range.mjs +38 -0
- package/fesm2022/ai-table-grid.mjs +5526 -693
- package/fesm2022/ai-table-grid.mjs.map +1 -1
- package/grid-base.component.d.ts +52 -0
- package/grid-base.component.d.ts.map +1 -0
- package/grid.component.d.ts +43 -40
- package/grid.component.d.ts.map +1 -1
- package/package.json +5 -2
- package/public-api.d.ts +8 -4
- package/public-api.d.ts.map +1 -1
- package/renderer/components/add-field-column.component.d.ts +16 -0
- package/renderer/components/add-field-column.component.d.ts.map +1 -0
- package/renderer/components/cells.component.d.ts +14 -0
- package/renderer/components/cells.component.d.ts.map +1 -0
- package/renderer/components/field-head.component.d.ts +73 -0
- package/renderer/components/field-head.component.d.ts.map +1 -0
- package/renderer/components/field-icon.component.d.ts +17 -0
- package/renderer/components/field-icon.component.d.ts.map +1 -0
- package/renderer/components/frozen-cells.component.d.ts +14 -0
- package/renderer/components/frozen-cells.component.d.ts.map +1 -0
- package/renderer/components/frozen-heads.component.d.ts +47 -0
- package/renderer/components/frozen-heads.component.d.ts.map +1 -0
- package/renderer/components/frozen-placeholder-cells.component.d.ts +22 -0
- package/renderer/components/frozen-placeholder-cells.component.d.ts.map +1 -0
- package/renderer/components/heads.component.d.ts +9 -0
- package/renderer/components/heads.component.d.ts.map +1 -0
- package/renderer/components/hover-row-heads.component.d.ts +11 -0
- package/renderer/components/hover-row-heads.component.d.ts.map +1 -0
- package/renderer/components/icon.component.d.ts +37 -0
- package/renderer/components/icon.component.d.ts.map +1 -0
- package/renderer/components/index.d.ts +14 -0
- package/renderer/components/index.d.ts.map +1 -0
- package/renderer/components/other-rows.component.d.ts +31 -0
- package/renderer/components/other-rows.component.d.ts.map +1 -0
- package/renderer/components/placeholder-cells.component.d.ts +22 -0
- package/renderer/components/placeholder-cells.component.d.ts.map +1 -0
- package/renderer/components/text.component.d.ts +99 -0
- package/renderer/components/text.component.d.ts.map +1 -0
- package/renderer/creations/create-active-cell-border.d.ts +7 -0
- package/renderer/creations/create-active-cell-border.d.ts.map +1 -0
- package/renderer/creations/create-cells.d.ts +8 -0
- package/renderer/creations/create-cells.d.ts.map +1 -0
- package/renderer/creations/create-heads.d.ts +3 -0
- package/renderer/creations/create-heads.d.ts.map +1 -0
- package/renderer/drawers/add-row-layout-drawer.d.ts +12 -0
- package/renderer/drawers/add-row-layout-drawer.d.ts.map +1 -0
- package/renderer/drawers/cell-drawer.d.ts +22 -0
- package/renderer/drawers/cell-drawer.d.ts.map +1 -0
- package/renderer/drawers/drawer.d.ts +136 -0
- package/renderer/drawers/drawer.d.ts.map +1 -0
- package/renderer/drawers/layout-drawer.d.ts +22 -0
- package/renderer/drawers/layout-drawer.d.ts.map +1 -0
- package/renderer/drawers/record-row-layout-drawer.d.ts +14 -0
- package/renderer/drawers/record-row-layout-drawer.d.ts.map +1 -0
- package/renderer/index.d.ts +4 -0
- package/renderer/index.d.ts.map +1 -0
- package/renderer/renderer.component.d.ts +64 -0
- package/renderer/renderer.component.d.ts.map +1 -0
- package/services/event.service.d.ts +17 -3
- package/services/event.service.d.ts.map +1 -1
- package/services/field.service.d.ts +5 -4
- package/services/field.service.d.ts.map +1 -1
- package/services/index.d.ts +4 -0
- package/services/index.d.ts.map +1 -0
- package/services/selection.service.d.ts.map +1 -1
- package/styles/styles.scss +71 -11
- package/types/avatar.d.ts +24 -0
- package/types/avatar.d.ts.map +1 -0
- package/types/canvas.d.ts +83 -0
- package/types/canvas.d.ts.map +1 -0
- package/types/cell.d.ts +43 -0
- package/types/cell.d.ts.map +1 -0
- package/types/component-config.d.ts +50 -0
- package/types/component-config.d.ts.map +1 -0
- package/types/field.d.ts +27 -1
- package/types/field.d.ts.map +1 -1
- package/types/grid.d.ts +80 -2
- package/types/grid.d.ts.map +1 -1
- package/types/index.d.ts +7 -1
- package/types/index.d.ts.map +1 -1
- package/types/layout.d.ts +11 -0
- package/types/layout.d.ts.map +1 -0
- package/types/row.d.ts +27 -0
- package/types/row.d.ts.map +1 -0
- package/utils/build.d.ts +5 -0
- package/utils/build.d.ts.map +1 -0
- package/utils/cell.d.ts +19 -0
- package/utils/cell.d.ts.map +1 -0
- package/utils/common.d.ts +20 -0
- package/utils/common.d.ts.map +1 -0
- package/utils/get-placeholder-cells.d.ts +16 -0
- package/utils/get-placeholder-cells.d.ts.map +1 -0
- package/utils/get-text-width.d.ts +9 -0
- package/utils/get-text-width.d.ts.map +1 -0
- package/utils/image-cache.d.ts +16 -0
- package/utils/image-cache.d.ts.map +1 -0
- package/utils/index.d.ts +12 -0
- package/utils/index.d.ts.map +1 -0
- package/utils/os.d.ts +4 -0
- package/utils/os.d.ts.map +1 -0
- package/utils/position.d.ts +20 -0
- package/utils/position.d.ts.map +1 -0
- package/utils/style.d.ts +4 -0
- package/utils/style.d.ts.map +1 -0
- package/utils/text-measure.d.ts +32 -0
- package/utils/text-measure.d.ts.map +1 -0
- package/utils/visible-range.d.ts +13 -0
- package/utils/visible-range.d.ts.map +1 -0
- package/components/cell-editors/link/number-editor.component.d.ts +0 -8
- package/components/cell-editors/link/number-editor.component.d.ts.map +0 -1
- package/constants/field.d.ts +0 -20
- package/constants/field.d.ts.map +0 -1
- package/core/action/field.d.ts +0 -12
- package/core/action/field.d.ts.map +0 -1
- package/core/action/general.d.ts +0 -5
- package/core/action/general.d.ts.map +0 -1
- package/core/action/index.d.ts +0 -12
- package/core/action/index.d.ts.map +0 -1
- package/core/action/record.d.ts +0 -12
- package/core/action/record.d.ts.map +0 -1
- package/core/types/action.d.ts +0 -64
- package/core/types/action.d.ts.map +0 -1
- package/core/utils/weak-map.d.ts +0 -3
- package/core/utils/weak-map.d.ts.map +0 -1
- package/esm2022/components/cell-editors/link/number-editor.component.mjs +0 -25
- package/esm2022/constants/field.mjs +0 -25
- package/esm2022/core/action/field.mjs +0 -57
- package/esm2022/core/action/general.mjs +0 -116
- package/esm2022/core/action/index.mjs +0 -9
- package/esm2022/core/action/record.mjs +0 -44
- package/esm2022/core/types/action.mjs +0 -18
- package/esm2022/core/utils/weak-map.mjs +0 -2
@@ -0,0 +1,222 @@
|
|
1
|
+
import { AITableRowColumnType } from '../types';
|
2
|
+
/**
|
3
|
+
* 用于构建 Canvas 基础坐标系,后续的绘制工作以此为基础
|
4
|
+
*/
|
5
|
+
export class Coordinate {
|
6
|
+
constructor({ rowHeight, rowCount, columnCount, container, rowIndicesMap = {}, columnIndicesMap = {}, rowInitSize = 0, columnInitSize = 0, frozenColumnCount = 0 }) {
|
7
|
+
// 用 index 映射 每一行的 高度
|
8
|
+
this.rowIndicesMap = {};
|
9
|
+
// 用 index 映射 每一列 的 宽度
|
10
|
+
this.columnIndicesMap = {};
|
11
|
+
// 行坐标集中最后一行的索引
|
12
|
+
this.lastRowIndex = -1;
|
13
|
+
// 列坐标集中最后一列的索引
|
14
|
+
this.lastColumnIndex = -1;
|
15
|
+
this.rowMetaDataMap = {};
|
16
|
+
this.columnMetaDataMap = {};
|
17
|
+
this._rowHeight = rowHeight;
|
18
|
+
this.rowCount = rowCount;
|
19
|
+
this.columnCount = columnCount;
|
20
|
+
this.rowInitSize = rowInitSize;
|
21
|
+
this.columnInitSize = columnInitSize;
|
22
|
+
this.containerWidth = container.offsetWidth;
|
23
|
+
this.rowIndicesMap = rowIndicesMap;
|
24
|
+
this.columnIndicesMap = columnIndicesMap;
|
25
|
+
this.containerHeight = container.offsetHeight;
|
26
|
+
this.frozenColumnCount = frozenColumnCount;
|
27
|
+
this.container = container;
|
28
|
+
}
|
29
|
+
get rowHeight() {
|
30
|
+
return this._rowHeight;
|
31
|
+
}
|
32
|
+
set rowHeight(height) {
|
33
|
+
this._rowHeight = height;
|
34
|
+
}
|
35
|
+
/**
|
36
|
+
* 总宽度
|
37
|
+
*/
|
38
|
+
get totalWidth() {
|
39
|
+
const { offset, size } = this.getCellMetaData(this.columnCount - 1, AITableRowColumnType.column);
|
40
|
+
return offset + size;
|
41
|
+
}
|
42
|
+
/**
|
43
|
+
* 总高度
|
44
|
+
*/
|
45
|
+
get totalHeight() {
|
46
|
+
const { offset, size } = this.getCellMetaData(this.rowCount - 1, AITableRowColumnType.row);
|
47
|
+
return offset + size;
|
48
|
+
}
|
49
|
+
/**
|
50
|
+
* 根据 rowIndex 获取对应行高
|
51
|
+
*/
|
52
|
+
getRowHeight(index) {
|
53
|
+
return this.rowIndicesMap[index] ?? this.rowHeight;
|
54
|
+
}
|
55
|
+
/**
|
56
|
+
* 根据 columnIndex 获取对应列宽
|
57
|
+
*/
|
58
|
+
getColumnWidth(index) {
|
59
|
+
return this.columnIndicesMap[index];
|
60
|
+
}
|
61
|
+
/**
|
62
|
+
* 获取每个 cell 垂直/水平方向的坐标信息
|
63
|
+
*/
|
64
|
+
getCellMetaData(index, itemType) {
|
65
|
+
let cellMetadataMap, lastMeasuredIndex, offset;
|
66
|
+
const isColumnType = itemType === AITableRowColumnType.column;
|
67
|
+
if (isColumnType) {
|
68
|
+
offset = this.columnInitSize;
|
69
|
+
lastMeasuredIndex = this.lastColumnIndex;
|
70
|
+
cellMetadataMap = this.columnMetaDataMap;
|
71
|
+
}
|
72
|
+
else {
|
73
|
+
offset = this.rowInitSize;
|
74
|
+
lastMeasuredIndex = this.lastRowIndex;
|
75
|
+
cellMetadataMap = this.rowMetaDataMap;
|
76
|
+
}
|
77
|
+
if (index > lastMeasuredIndex) {
|
78
|
+
if (lastMeasuredIndex >= 0) {
|
79
|
+
const itemMetadata = cellMetadataMap[lastMeasuredIndex];
|
80
|
+
offset = itemMetadata.offset + itemMetadata.size;
|
81
|
+
}
|
82
|
+
for (let i = lastMeasuredIndex + 1; i <= index; i++) {
|
83
|
+
const size = isColumnType ? this.columnIndicesMap[i] : this.rowIndicesMap[i] ?? this.rowHeight;
|
84
|
+
cellMetadataMap[i] = {
|
85
|
+
offset,
|
86
|
+
size
|
87
|
+
};
|
88
|
+
offset += size;
|
89
|
+
}
|
90
|
+
if (isColumnType) {
|
91
|
+
this.lastColumnIndex = index;
|
92
|
+
}
|
93
|
+
else {
|
94
|
+
this.lastRowIndex = index;
|
95
|
+
}
|
96
|
+
}
|
97
|
+
return cellMetadataMap[index] || { size: 0, offset: 0 };
|
98
|
+
}
|
99
|
+
/**
|
100
|
+
* 查找最近的单元格索引
|
101
|
+
* 性能较差,但无论如何都可以找到
|
102
|
+
*/
|
103
|
+
_findNearestCellIndex(index, offset, itemType) {
|
104
|
+
const itemCount = itemType === AITableRowColumnType.column ? this.columnCount : this.rowCount;
|
105
|
+
let interval = 1;
|
106
|
+
while (index < itemCount && this.getCellMetaData(index, itemType).offset < offset) {
|
107
|
+
index += interval;
|
108
|
+
interval *= 2;
|
109
|
+
}
|
110
|
+
return this._findNearestCellIndexByBinary(offset, Math.floor(index / 2), Math.min(index, itemCount - 1), itemType);
|
111
|
+
}
|
112
|
+
/**
|
113
|
+
* 二分法查找最近的单元格索引
|
114
|
+
* 性能更佳,但需要加载数据
|
115
|
+
*/
|
116
|
+
_findNearestCellIndexByBinary(offset, low, high, itemType) {
|
117
|
+
while (low <= high) {
|
118
|
+
const middle = low + Math.floor((high - low) / 2);
|
119
|
+
const currentOffset = this.getCellMetaData(middle, itemType).offset;
|
120
|
+
if (currentOffset === offset) {
|
121
|
+
return middle;
|
122
|
+
}
|
123
|
+
else if (currentOffset < offset) {
|
124
|
+
low = middle + 1;
|
125
|
+
}
|
126
|
+
else if (currentOffset > offset) {
|
127
|
+
high = middle - 1;
|
128
|
+
}
|
129
|
+
}
|
130
|
+
return low > -1 ? low - 1 : 0;
|
131
|
+
}
|
132
|
+
/**
|
133
|
+
* 根据偏移量查找最近的单元格索引
|
134
|
+
*/
|
135
|
+
findNearestCellIndex(offset, itemType) {
|
136
|
+
let lastIndex;
|
137
|
+
if (itemType === AITableRowColumnType.column) {
|
138
|
+
lastIndex = this.lastColumnIndex;
|
139
|
+
}
|
140
|
+
else {
|
141
|
+
lastIndex = this.lastRowIndex;
|
142
|
+
}
|
143
|
+
const cellOffset = this.getCellMetaData(lastIndex, itemType).offset;
|
144
|
+
const lastMeasuredItemOffset = lastIndex > 0 ? cellOffset : 0;
|
145
|
+
if (lastMeasuredItemOffset >= offset) {
|
146
|
+
return this._findNearestCellIndexByBinary(offset, 0, lastIndex, itemType);
|
147
|
+
}
|
148
|
+
return this._findNearestCellIndex(Math.max(0, lastIndex), offset, itemType);
|
149
|
+
}
|
150
|
+
/**
|
151
|
+
* 根据垂直偏移量找到起始单元格的索引
|
152
|
+
*/
|
153
|
+
getRowStartIndex(offset) {
|
154
|
+
return this.findNearestCellIndex(offset, AITableRowColumnType.row);
|
155
|
+
}
|
156
|
+
/**
|
157
|
+
* 根据垂直起始单元格的索引查找结束单元格的索引
|
158
|
+
*/
|
159
|
+
getRowStopIndex(startIndex, scrollTop) {
|
160
|
+
const itemMetadata = this.getCellMetaData(startIndex, AITableRowColumnType.row);
|
161
|
+
const maxOffset = scrollTop + this.containerHeight;
|
162
|
+
let offset = itemMetadata.offset + itemMetadata.size;
|
163
|
+
let stopIndex = startIndex;
|
164
|
+
while (stopIndex < this.rowCount - 1 && offset < maxOffset) {
|
165
|
+
stopIndex++;
|
166
|
+
offset += this.getCellMetaData(stopIndex, AITableRowColumnType.row).size;
|
167
|
+
}
|
168
|
+
return stopIndex;
|
169
|
+
}
|
170
|
+
/**
|
171
|
+
* 根据水平偏移量找到起始单元格的索引
|
172
|
+
*/
|
173
|
+
getColumnStartIndex(offset) {
|
174
|
+
return this.findNearestCellIndex(offset, AITableRowColumnType.column);
|
175
|
+
}
|
176
|
+
/**
|
177
|
+
* 根据水平起始单元格的索引查找结束单元格的索引
|
178
|
+
*/
|
179
|
+
getColumnStopIndex(startIndex, scrollLeft) {
|
180
|
+
const itemMetadata = this.getCellMetaData(startIndex, AITableRowColumnType.column);
|
181
|
+
const maxOffset = scrollLeft + this.containerWidth;
|
182
|
+
let offset = itemMetadata.offset + itemMetadata.size;
|
183
|
+
let stopIndex = startIndex;
|
184
|
+
while (stopIndex < this.columnCount - 1 && offset < maxOffset) {
|
185
|
+
stopIndex++;
|
186
|
+
offset += this.getCellMetaData(stopIndex, AITableRowColumnType.column).size;
|
187
|
+
}
|
188
|
+
return stopIndex;
|
189
|
+
}
|
190
|
+
/**
|
191
|
+
* 根据 rowIndex 获取垂直偏移量
|
192
|
+
*/
|
193
|
+
getRowOffset(rowIndex) {
|
194
|
+
return this.getCellMetaData(rowIndex, AITableRowColumnType.row).offset;
|
195
|
+
}
|
196
|
+
/**
|
197
|
+
* 根据 columnIndex 获取水平偏移量
|
198
|
+
*/
|
199
|
+
getColumnOffset(columnIndex) {
|
200
|
+
return this.getCellMetaData(columnIndex, AITableRowColumnType.column).offset;
|
201
|
+
}
|
202
|
+
/**
|
203
|
+
* 冻结区域宽度
|
204
|
+
*/
|
205
|
+
get frozenColumnWidth() {
|
206
|
+
return this.getColumnOffset(this.frozenColumnCount) - this.columnInitSize;
|
207
|
+
}
|
208
|
+
/**
|
209
|
+
* 根据 rowIndex, columnIndex 获取单元格坐标信息
|
210
|
+
*/
|
211
|
+
getCellRect(rowIndex, columnIndex) {
|
212
|
+
const { size: height, offset: y } = this.getCellMetaData(rowIndex, AITableRowColumnType.row);
|
213
|
+
const { size: width, offset: x } = this.getCellMetaData(columnIndex, AITableRowColumnType.column);
|
214
|
+
return {
|
215
|
+
x,
|
216
|
+
y,
|
217
|
+
width,
|
218
|
+
height
|
219
|
+
};
|
220
|
+
}
|
221
|
+
}
|
222
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29vcmRpbmF0ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL2dyaWQvc3JjL2NvcmUvY29vcmRpbmF0ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQTBDLG9CQUFvQixFQUFrQixNQUFNLFVBQVUsQ0FBQztBQUV4Rzs7R0FFRztBQUNILE1BQU0sT0FBTyxVQUFVO0lBdUJuQixZQUFZLEVBQ1IsU0FBUyxFQUNULFFBQVEsRUFDUixXQUFXLEVBQ1gsU0FBUyxFQUNULGFBQWEsR0FBRyxFQUFFLEVBQ2xCLGdCQUFnQixHQUFHLEVBQUUsRUFDckIsV0FBVyxHQUFHLENBQUMsRUFDZixjQUFjLEdBQUcsQ0FBQyxFQUNsQixpQkFBaUIsR0FBRyxDQUFDLEVBQ0w7UUExQnBCLHFCQUFxQjtRQUNkLGtCQUFhLEdBQW1CLEVBQUUsQ0FBQztRQUMxQyxzQkFBc0I7UUFDZixxQkFBZ0IsR0FBbUIsRUFBRSxDQUFDO1FBSzdDLGVBQWU7UUFDUixpQkFBWSxHQUFHLENBQUMsQ0FBQyxDQUFDO1FBQ3pCLGVBQWU7UUFDUixvQkFBZSxHQUFHLENBQUMsQ0FBQyxDQUFDO1FBQ3JCLG1CQUFjLEdBQXdDLEVBQUUsQ0FBQztRQUN6RCxzQkFBaUIsR0FBd0MsRUFBRSxDQUFDO1FBYy9ELElBQUksQ0FBQyxVQUFVLEdBQUcsU0FBUyxDQUFDO1FBQzVCLElBQUksQ0FBQyxRQUFRLEdBQUcsUUFBUSxDQUFDO1FBQ3pCLElBQUksQ0FBQyxXQUFXLEdBQUcsV0FBVyxDQUFDO1FBQy9CLElBQUksQ0FBQyxXQUFXLEdBQUcsV0FBVyxDQUFDO1FBQy9CLElBQUksQ0FBQyxjQUFjLEdBQUcsY0FBYyxDQUFDO1FBQ3JDLElBQUksQ0FBQyxjQUFjLEdBQUcsU0FBUyxDQUFDLFdBQVcsQ0FBQztRQUM1QyxJQUFJLENBQUMsYUFBYSxHQUFHLGFBQWEsQ0FBQztRQUNuQyxJQUFJLENBQUMsZ0JBQWdCLEdBQUcsZ0JBQWdCLENB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LE1BQU0sRUFBRSxNQUFNLEVBQUUsQ0FBQyxFQUFFLEdBQUcsSUFBSSxDQUFDLGVBQWUsQ0FBQyxRQUFRLEVBQUUsb0JBQW9CLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDN0YsTUFBTSxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLENBQUMsRUFBRSxHQUFHLElBQUksQ0FBQyxlQUFlLENBQUMsV0FBVyxFQUFFLG9CQUFvQixDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ2xHLE9BQU87WUFDSCxDQUFDO1lBQ0QsQ0FBQztZQUNELEtBQUs7WUFDTCxNQUFNO1NBQ1QsQ0FBQztJQUNOLENBQUM7Q0FDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFJVGFibGVDZWxsTWV0YURhdGEsIEFJVGFibGVDb29yZGluYXRlLCBBSVRhYmxlUm93Q29sdW1uVHlwZSwgQUlUYWJsZVNpemVNYXAgfSBmcm9tICcuLi90eXBlcyc7XG5cbi8qKlxuICog55So5LqO5p6E5bu6IENhbnZhcyDln7rnoYDlnZDmoIfns7vvvIzlkI7nu63nmoTnu5jliLblt6XkvZzku6XmraTkuLrln7rnoYBcbiAqL1xuZXhwb3J0IGNsYXNzIENvb3JkaW5hdGUge1xuICAgIHByb3RlY3RlZCBfcm93SGVpZ2h0OiBudW1iZXI7XG4gICAgcHVibGljIHJvd0NvdW50OiBudW1iZXI7XG4gICAgcHVibGljIGNvbHVtbkNvdW50OiBudW1iZXI7XG4gICAgcHVibGljIGNvbnRhaW5lcjogSFRNTERpdkVsZW1lbnQ7XG4gICAgcHVibGljIGNvbnRhaW5lcldpZHRoOiBudW1iZXI7XG4gICAgcHVibGljIGNvbnRhaW5lckhlaWdodDogbnVtYmVyO1xuICAgIC8vIOeUqCBpbmRleCDmmKDlsIQg5q+P5LiA6KGM55qEIOmrmOW6plxuICAgIHB1YmxpYyByb3dJbmRpY2VzTWFwOiBBSVRhYmxlU2l6ZU1hcCA9IHt9O1xuICAgIC8vIOeUqCBpbmRleCDmmKDlsIQg5q+P5LiA5YiXIOeahCDlrr3luqZcbiAgICBwdWJsaWMgY29sdW1uSW5kaWNlc01hcDogQUlUYWJsZVNpemVNYXAgPSB7fTtcbiAgICAvLyDpmaTljrvooajlpLTlkoznvJblj7fliJfnnJ/mraPljZXlhYPmoLznu5jliLbnmoTliJ3lp4vlgLwgeFxuICAgIHB1YmxpYyByb3dJbml0U2l6ZTogbnVtYmVyO1xuICAgIC8vIOmZpOWOu+ihqOWktOWSjOe8luWPt+WIl+ecn+ato+WNleWFg+agvOe7mOWItueahOWIneWni+WAvCB5XG4gICAgcHVibGljIGNvbHVtbkluaXRTaXplOiBudW1iZXI7XG4gICAgLy8g6KGM5Z2Q5qCH6ZuG5Lit5pyA5ZCO5LiA6KGM55qE57Si5byVXG4gICAgcHVibGljIGxhc3RSb3dJbmRleCA9IC0xO1xuICAgIC8vIOWIl+WdkOagh+mbhuS4reacgOWQjuS4gOWIl+eahOe0ouW8lVxuICAgIHB1YmxpYyBsYXN0Q29sdW1uSW5kZXggPSAtMTtcbiAgICBwdWJsaWMgcm93TWV0YURhdGFNYXA6IFJlY29yZDxudW1iZXIsIEFJVGFibGVDZWxsTWV0YURhdGE+ID0ge307XG4gICAgcHVibGljIGNvbHVtbk1ldGFEYXRhTWFwOiBSZWNvcmQ8bnVtYmVyLCBBSVRhYmxlQ2VsbE1ldGFEYXRhPiA9IHt9O1xuICAgIHB1YmxpYyBmcm96ZW5Db2x1bW5Db3VudDogbnVtYmVyO1xuXG4gICAgY29uc3RydWN0b3Ioe1xuICAgICAgICByb3dIZWlnaHQsXG4gICAgICAgIHJvd0NvdW50LFxuICAgICAgICBjb2x1bW5Db3VudCxcbiAgICAgICAgY29udGFpbmVyLFxuICAgICAgICByb3dJbmRpY2VzTWFwID0ge30sXG4gICAgICAgIGNvbHVtbkluZGljZXNNYXAgPSB7fSxcbiAgICAgICAgcm93SW5pdFNpemUgPSAwLFxuICAgICAgICBjb2x1bW5Jbml0U2l6ZSA9IDAsXG4gICAgICAgIGZyb3plbkNvbHVtbkNvdW50ID0gMFxuICAgIH06IEFJVGFibGVDb29yZGluYXRlKSB7XG4gICAgICAgIHRoaXMuX3Jvd0hlaWdodCA9IHJvd0hlaWdodDtcbiAgICAgICAgdGhpcy5yb3dDb3VudCA9IHJvd0NvdW50O1xuICAgICAgICB0aGlzLmNvbHVtbkNvdW50ID0gY29sdW1uQ291bnQ7XG4gICAgICAgIHRoaXMucm93SW5pdFNpemUgPSByb3dJbml0U2l6ZTtcbiAgICAgICAgdGhpcy5jb2x1bW5Jbml0U2l6ZSA9IGNvbHVtbkluaXRTaXplO1xuICAgICAgICB0aGlzLmNvbnRhaW5lcldpZHRoID0gY29udGFpbmVyLm9mZnNldFdpZHRoO1xuICAgICAgICB0aGlzLnJvd0luZGljZXNNYXAgPSByb3dJbmRpY2VzTWFwO1xuICAgICAgICB0aGlzLmNvbHVtbkluZGljZXNNYXAgPSBjb2x1bW5JbmRpY2VzTWFwO1xuICAgICAgICB0aGlzLmNvbnRhaW5lckhlaWdodCA9IGNvbnRhaW5lci5vZmZzZXRIZWlnaHQ7XG4gICAgICAgIHRoaXMuZnJvemVuQ29sdW1uQ291bnQgPSBmcm96ZW5Db2x1bW5Db3VudDtcbiAgICAgICAgdGhpcy5jb250YWluZXIgPSBjb250YWluZXI7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCByb3dIZWlnaHQoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLl9yb3dIZWlnaHQ7XG4gICAgfVxuXG4gICAgcHVibGljIHNldCByb3dIZWlnaHQoaGVpZ2h0OiBudW1iZXIpIHtcbiAgICAgICAgdGhpcy5fcm93SGVpZ2h0ID0gaGVpZ2h0O1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIOaAu+WuveW6plxuICAgICAqL1xuICAgIHB1YmxpYyBnZXQgdG90YWxXaWR0aCgpIHtcbiAgICAgICAgY29uc3QgeyBvZmZzZXQsIHNpemUgfSA9IHRoaXMuZ2V0Q2VsbE1ldGFEYXRhKHRoaXMuY29sdW1uQ291bnQgLSAxLCBBSVRhYmxlUm93Q29sdW1uVHlwZS5jb2x1bW4pO1xuICAgICAgICByZXR1cm4gb2Zmc2V0ICsgc2l6ZTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiDmgLvpq5jluqZcbiAgICAgKi9cbiAgICBwdWJsaWMgZ2V0IHRvdGFsSGVpZ2h0KCkge1xuICAgICAgICBjb25zdCB7IG9mZnNldCwgc2l6ZSB9ID0gdGhpcy5nZXRDZWxsTWV0YURhdGEodGhpcy5yb3dDb3VudCAtIDEsIEFJVGFibGVSb3dDb2x1bW5UeXBlLnJvdyk7XG4gICAgICAgIHJldHVybiBvZmZzZXQgKyBzaXplO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIOagueaNriByb3dJbmRleCDojrflj5blr7nlupTooYzpq5hcbiAgICAgKi9cbiAgICBwdWJsaWMgZ2V0Um93SGVpZ2h0KGluZGV4OiBudW1iZXIpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMucm93SW5kaWNlc01hcFtpbmRleF0gPz8gdGhpcy5yb3dIZWlnaHQ7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICog5qC55o2uIGNvbHVtbkluZGV4IOiOt+WPluWvueW6lOWIl+WuvVxuICAgICAqL1xuICAgIHB1YmxpYyBnZXRDb2x1bW5XaWR0aChpbmRleDogbnVtYmVyKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmNvbHVtbkluZGljZXNNYXBbaW5kZXhdO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIOiOt+WPluavj+S4qiBjZWxsIOWeguebtC/msLTlubPmlrnlkJHnmoTlnZDmoIfkv6Hmga9cbiAgICAgKi9cbiAgICBwcm90ZWN0ZWQgZ2V0Q2VsbE1ldGFEYXRhKGluZGV4OiBudW1iZXIsIGl0ZW1UeXBlOiBBSVRhYmxlUm93Q29sdW1uVHlwZSk6IEFJVGFibGVDZWxsTWV0YURhdGEge1xuICAgICAgICBsZXQgY2VsbE1ldGFkYXRhTWFwLCBsYXN0TWVhc3VyZWRJbmRleCwgb2Zmc2V0O1xuICAgICAgICBjb25zdCBpc0NvbHVtblR5cGUgPSBpdGVtVHlwZSA9PT0gQUlUYWJsZVJvd0NvbHVtblR5cGUuY29sdW1uO1xuICAgICAgICBpZiAoaXNDb2x1bW5UeXBlKSB7XG4gICAgICAgICAgICBvZmZzZXQgPSB0aGlzLmNvbHVtbkluaXRTaXplO1xuICAgICAgICAgICAgbGFzdE1lYXN1cmVkSW5kZXggPSB0aGlzLmxhc3RDb2x1bW5JbmRleDtcbiAgICAgICAgICAgIGNlbGxNZXRhZGF0YU1hcCA9IHRoaXMuY29sdW1uTWV0YURhdGFNYXA7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBvZmZzZXQgPSB0aGlzLnJvd0luaXRTaXplO1xuICAgICAgICAgICAgbGFzdE1lYXN1cmVkSW5kZXggPSB0aGlzLmxhc3RSb3dJbmRleDtcbiAgICAgICAgICAgIGNlbGxNZXRhZGF0YU1hcCA9IHRoaXMucm93TWV0YURhdGFNYXA7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKGluZGV4ID4gbGFzdE1lYXN1cmVkSW5kZXgpIHtcbiAgICAgICAgICAgIGlmIChsYXN0TWVhc3VyZWRJbmRleCA+PSAwKSB7XG4gICAgICAgICAgICAgICAgY29uc3QgaXRlbU1ldGFkYXRhID0gY2VsbE1ldGFkYXRhTWFwW2xhc3RNZWFzdXJlZEluZGV4XTtcbiAgICAgICAgICAgICAgICBvZmZzZXQgPSBpdGVtTWV0YWRhdGEub2Zmc2V0ICsgaXRlbU1ldGFkYXRhLnNpemU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGZvciAobGV0IGkgPSBsYXN0TWVhc3VyZWRJbmRleCArIDE7IGkgPD0gaW5kZXg7IGkrKykge1xuICAgICAgICAgICAgICAgIGNvbnN0IHNpemUgPSBpc0NvbHVtblR5cGUgPyB0aGlzLmNvbHVtbkluZGljZXNNYXBbaV0gOiB0aGlzLnJvd0luZGljZXNNYXBbaV0gPz8gdGhpcy5yb3dIZWlnaHQ7XG5cbiAgICAgICAgICAgICAgICBjZWxsTWV0YWRhdGFNYXBbaV0gPSB7XG4gICAgICAgICAgICAgICAgICAgIG9mZnNldCxcbiAgICAgICAgICAgICAgICAgICAgc2l6ZVxuICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICAgICAgb2Zmc2V0ICs9IHNpemU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAoaXNDb2x1bW5UeXBlKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5sYXN0Q29sdW1uSW5kZXggPSBpbmRleDtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgdGhpcy5sYXN0Um93SW5kZXggPSBpbmRleDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gY2VsbE1ldGFkYXRhTWFwW2luZGV4XSB8fCB7IHNpemU6IDAsIG9mZnNldDogMCB9O1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIOafpeaJvuacgOi/keeahOWNleWFg+agvOe0ouW8lVxuICAgICAqIOaAp+iDvei+g+W3ru+8jOS9huaXoOiuuuWmguS9lemDveWPr+S7peaJvuWIsFxuICAgICAqL1xuICAgIHByaXZhdGUgX2ZpbmROZWFyZXN0Q2VsbEluZGV4KGluZGV4OiBudW1iZXIsIG9mZnNldDogbnVtYmVyLCBpdGVtVHlwZTogQUlUYWJsZVJvd0NvbHVtblR5cGUpIHtcbiAgICAgICAgY29uc3QgaXRlbUNvdW50ID0gaXRlbVR5cGUgPT09IEFJVGFibGVSb3dDb2x1bW5UeXBlLmNvbHVtbiA/IHRoaXMuY29sdW1uQ291bnQgOiB0aGlzLnJvd0NvdW50O1xuICAgICAgICBsZXQgaW50ZXJ2YWwgPSAxO1xuXG4gICAgICAgIHdoaWxlIChpbmRleCA8IGl0ZW1Db3VudCAmJiB0aGlzLmdldENlbGxNZXRhRGF0YShpbmRleCwgaXRlbVR5cGUpLm9mZnNldCA8IG9mZnNldCkge1xuICAgICAgICAgICAgaW5kZXggKz0gaW50ZXJ2YWw7XG4gICAgICAgICAgICBpbnRlcnZhbCAqPSAyO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIHRoaXMuX2ZpbmROZWFyZXN0Q2VsbEluZGV4QnlCaW5hcnkob2Zmc2V0LCBNYXRoLmZsb29yKGluZGV4IC8gMiksIE1hdGgubWluKGluZGV4LCBpdGVtQ291bnQgLSAxKSwgaXRlbVR5cGUpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIOS6jOWIhuazleafpeaJvuacgOi/keeahOWNleWFg+agvOe0ouW8lVxuICAgICAqIOaAp+iDveabtOS9s++8jOS9humcgOimgeWKoOi9veaVsOaNrlxuICAgICAqL1xuICAgIHByaXZhdGUgX2ZpbmROZWFyZXN0Q2VsbEluZGV4QnlCaW5hcnkob2Zmc2V0OiBudW1iZXIsIGxvdzogbnVtYmVyLCBoaWdoOiBudW1iZXIsIGl0ZW1UeXBlOiBBSVRhYmxlUm93Q29sdW1uVHlwZSkge1xuICAgICAgICB3aGlsZSAobG93IDw9IGhpZ2gpIHtcbiAgICAgICAgICAgIGNvbnN0IG1pZGRsZSA9IGxvdyArIE1hdGguZmxvb3IoKGhpZ2ggLSBsb3cpIC8gMik7XG4gICAgICAgICAgICBjb25zdCBjdXJyZW50T2Zmc2V0ID0gdGhpcy5nZXRDZWxsTWV0YURhdGEobWlkZGxlLCBpdGVtVHlwZSkub2Zmc2V0O1xuXG4gICAgICAgICAgICBpZiAoY3VycmVudE9mZnNldCA9PT0gb2Zmc2V0KSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIG1pZGRsZTtcbiAgICAgICAgICAgIH0gZWxzZSBpZiAoY3VycmVudE9mZnNldCA8IG9mZnNldCkge1xuICAgICAgICAgICAgICAgIGxvdyA9IG1pZGRsZSArIDE7XG4gICAgICAgICAgICB9IGVsc2UgaWYgKGN1cnJlbnRPZmZzZXQgPiBvZmZzZXQpIHtcbiAgICAgICAgICAgICAgICBoaWdoID0gbWlkZGxlIC0gMTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gbG93ID4gLTEgPyBsb3cgLSAxIDogMDtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiDmoLnmja7lgY/np7vph4/mn6Xmib7mnIDov5HnmoTljZXlhYPmoLzntKLlvJVcbiAgICAgKi9cbiAgICBwdWJsaWMgZmluZE5lYXJlc3RDZWxsSW5kZXgob2Zmc2V0OiBudW1iZXIsIGl0ZW1UeXBlOiBBSVRhYmxlUm93Q29sdW1uVHlwZSkge1xuICAgICAgICBsZXQgbGFzdEluZGV4O1xuICAgICAgICBpZiAoaXRlbVR5cGUgPT09IEFJVGFibGVSb3dDb2x1bW5UeXBlLmNvbHVtbikge1xuICAgICAgICAgICAgbGFzdEluZGV4ID0gdGhpcy5sYXN0Q29sdW1uSW5kZXg7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBsYXN0SW5kZXggPSB0aGlzLmxhc3RSb3dJbmRleDtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCBjZWxsT2Zmc2V0ID0gdGhpcy5nZXRDZWxsTWV0YURhdGEobGFzdEluZGV4LCBpdGVtVHlwZSkub2Zmc2V0O1xuICAgICAgICBjb25zdCBsYXN0TWVhc3VyZWRJdGVtT2Zmc2V0ID0gbGFzdEluZGV4ID4gMCA/IGNlbGxPZmZzZXQgOiAwO1xuXG4gICAgICAgIGlmIChsYXN0TWVhc3VyZWRJdGVtT2Zmc2V0ID49IG9mZnNldCkge1xuICAgICAgICAgICAgcmV0dXJuIHRoaXMuX2ZpbmROZWFyZXN0Q2VsbEluZGV4QnlCaW5hcnkob2Zmc2V0LCAwLCBsYXN0SW5kZXgsIGl0ZW1UeXBlKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gdGhpcy5fZmluZE5lYXJlc3RDZWxsSW5kZXgoTWF0aC5tYXgoMCwgbGFzdEluZGV4KSwgb2Zmc2V0LCBpdGVtVHlwZSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICog5qC55o2u5Z6C55u05YGP56e76YeP5om+5Yiw6LW35aeL5Y2V5YWD5qC855qE57Si5byVXG4gICAgICovXG4gICAgcHVibGljIGdldFJvd1N0YXJ0SW5kZXgob2Zmc2V0OiBudW1iZXIpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZmluZE5lYXJlc3RDZWxsSW5kZXgob2Zmc2V0LCBBSVRhYmxlUm93Q29sdW1uVHlwZS5yb3cpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIOagueaNruWeguebtOi1t+Wni+WNleWFg+agvOeahOe0ouW8leafpeaJvue7k+adn+WNleWFg+agvOeahOe0ouW8lVxuICAgICAqL1xuICAgIHB1YmxpYyBnZXRSb3dTdG9wSW5kZXgoc3RhcnRJbmRleDogbnVtYmVyLCBzY3JvbGxUb3A6IG51bWJlcikge1xuICAgICAgICBjb25zdCBpdGVtTWV0YWRhdGEgPSB0aGlzLmdldENlbGxNZXRhRGF0YShzdGFydEluZGV4LCBBSVRhYmxlUm93Q29sdW1uVHlwZS5yb3cpO1xuICAgICAgICBjb25zdCBtYXhPZmZzZXQgPSBzY3JvbGxUb3AgKyB0aGlzLmNvbnRhaW5lckhlaWdodDtcbiAgICAgICAgbGV0IG9mZnNldCA9IGl0ZW1NZXRhZGF0YS5vZmZzZXQgKyBpdGVtTWV0YWRhdGEuc2l6ZTtcbiAgICAgICAgbGV0IHN0b3BJbmRleCA9IHN0YXJ0SW5kZXg7XG5cbiAgICAgICAgd2hpbGUgKHN0b3BJbmRleCA8IHRoaXMucm93Q291bnQgLSAxICYmIG9mZnNldCA8IG1heE9mZnNldCkge1xuICAgICAgICAgICAgc3RvcEluZGV4Kys7XG4gICAgICAgICAgICBvZmZzZXQgKz0gdGhpcy5nZXRDZWxsTWV0YURhdGEoc3RvcEluZGV4LCBBSVRhYmxlUm93Q29sdW1uVHlwZS5yb3cpLnNpemU7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHN0b3BJbmRleDtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiDmoLnmja7msLTlubPlgY/np7vph4/mib7liLDotbflp4vljZXlhYPmoLznmoTntKLlvJVcbiAgICAgKi9cbiAgICBwdWJsaWMgZ2V0Q29sdW1uU3RhcnRJbmRleChvZmZzZXQ6IG51bWJlcikge1xuICAgICAgICByZXR1cm4gdGhpcy5maW5kTmVhcmVzdENlbGxJbmRleChvZmZzZXQsIEFJVGFibGVSb3dDb2x1bW5UeXBlLmNvbHVtbik7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICog5qC55o2u5rC05bmz6LW35aeL5Y2V5YWD5qC855qE57Si5byV5p+l5om+57uT5p2f5Y2V5YWD5qC855qE57Si5byVXG4gICAgICovXG4gICAgcHVibGljIGdldENvbHVtblN0b3BJbmRleChzdGFydEluZGV4OiBudW1iZXIsIHNjcm9sbExlZnQ6IG51bWJlcikge1xuICAgICAgICBjb25zdCBpdGVtTWV0YWRhdGEgPSB0aGlzLmdldENlbGxNZXRhRGF0YShzdGFydEluZGV4LCBBSVRhYmxlUm93Q29sdW1uVHlwZS5jb2x1bW4pO1xuICAgICAgICBjb25zdCBtYXhPZmZzZXQgPSBzY3JvbGxMZWZ0ICsgdGhpcy5jb250YWluZXJXaWR0aDtcbiAgICAgICAgbGV0IG9mZnNldCA9IGl0ZW1NZXRhZGF0YS5vZmZzZXQgKyBpdGVtTWV0YWRhdGEuc2l6ZTtcbiAgICAgICAgbGV0IHN0b3BJbmRleCA9IHN0YXJ0SW5kZXg7XG5cbiAgICAgICAgd2hpbGUgKHN0b3BJbmRleCA8IHRoaXMuY29sdW1uQ291bnQgLSAxICYmIG9mZnNldCA8IG1heE9mZnNldCkge1xuICAgICAgICAgICAgc3RvcEluZGV4Kys7XG4gICAgICAgICAgICBvZmZzZXQgKz0gdGhpcy5nZXRDZWxsTWV0YURhdGEoc3RvcEluZGV4LCBBSVRhYmxlUm93Q29sdW1uVHlwZS5jb2x1bW4pLnNpemU7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHN0b3BJbmRleDtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiDmoLnmja4gcm93SW5kZXgg6I635Y+W5Z6C55u05YGP56e76YePXG4gICAgICovXG4gICAgcHVibGljIGdldFJvd09mZnNldChyb3dJbmRleDogbnVtYmVyKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmdldENlbGxNZXRhRGF0YShyb3dJbmRleCwgQUlUYWJsZVJvd0NvbHVtblR5cGUucm93KS5vZmZzZXQ7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICog5qC55o2uIGNvbHVtbkluZGV4IOiOt+WPluawtOW5s+WBj+enu+mHj1xuICAgICAqL1xuICAgIHB1YmxpYyBnZXRDb2x1bW5PZmZzZXQoY29sdW1uSW5kZXg6IG51bWJlcikge1xuICAgICAgICByZXR1cm4gdGhpcy5nZXRDZWxsTWV0YURhdGEoY29sdW1uSW5kZXgsIEFJVGFibGVSb3dDb2x1bW5UeXBlLmNvbHVtbikub2Zmc2V0O1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIOWGu+e7k+WMuuWfn+WuveW6plxuICAgICAqL1xuICAgIGdldCBmcm96ZW5Db2x1bW5XaWR0aCgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZ2V0Q29sdW1uT2Zmc2V0KHRoaXMuZnJvemVuQ29sdW1uQ291bnQpIC0gdGhpcy5jb2x1bW5Jbml0U2l6ZTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiDmoLnmja4gcm93SW5kZXgsIGNvbHVtbkluZGV4IOiOt+WPluWNleWFg+agvOWdkOagh+S/oeaBr1xuICAgICAqL1xuICAgIHB1YmxpYyBnZXRDZWxsUmVjdChyb3dJbmRleDogbnVtYmVyLCBjb2x1bW5JbmRleDogbnVtYmVyKSB7XG4gICAgICAgIGNvbnN0IHsgc2l6ZTogaGVpZ2h0LCBvZmZzZXQ6IHkgfSA9IHRoaXMuZ2V0Q2VsbE1ldGFEYXRhKHJvd0luZGV4LCBBSVRhYmxlUm93Q29sdW1uVHlwZS5yb3cpO1xuICAgICAgICBjb25zdCB7IHNpemU6IHdpZHRoLCBvZmZzZXQ6IHggfSA9IHRoaXMuZ2V0Q2VsbE1ldGFEYXRhKGNvbHVtbkluZGV4LCBBSVRhYmxlUm93Q29sdW1uVHlwZS5jb2x1bW4pO1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgeCxcbiAgICAgICAgICAgIHksXG4gICAgICAgICAgICB3aWR0aCxcbiAgICAgICAgICAgIGhlaWdodFxuICAgICAgICB9O1xuICAgIH1cbn1cbiJdfQ==
|
package/esm2022/core/index.mjs
CHANGED
@@ -1,5 +1,6 @@
|
|
1
|
+
export * from './constants/field';
|
2
|
+
export * from './coordinate';
|
1
3
|
export * from './types';
|
2
|
-
export * from './action';
|
3
4
|
export * from './utils';
|
4
|
-
export * from './
|
5
|
-
//# sourceMappingURL=data:application/json;base64,
|
5
|
+
export * from './context';
|
6
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wYWNrYWdlcy9ncmlkL3NyYy9jb3JlL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsbUJBQW1CLENBQUM7QUFDbEMsY0FBYyxjQUFjLENBQUM7QUFDN0IsY0FBYyxTQUFTLENBQUM7QUFDeEIsY0FBYyxTQUFTLENBQUM7QUFDeEIsY0FBYyxXQUFXLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2NvbnN0YW50cy9maWVsZCc7XG5leHBvcnQgKiBmcm9tICcuL2Nvb3JkaW5hdGUnO1xuZXhwb3J0ICogZnJvbSAnLi90eXBlcyc7XG5leHBvcnQgKiBmcm9tICcuL3V0aWxzJztcbmV4cG9ydCAqIGZyb20gJy4vY29udGV4dCc7XG4iXX0=
|
@@ -0,0 +1,44 @@
|
|
1
|
+
import { Colors } from '../../constants/colors';
|
2
|
+
export const AITable = {
|
3
|
+
getColors() {
|
4
|
+
return Colors;
|
5
|
+
},
|
6
|
+
getVisibleFields(aiTable) {
|
7
|
+
return aiTable.fields().filter((field) => !field.hidden);
|
8
|
+
},
|
9
|
+
getVisibleRows(aiTable) {
|
10
|
+
return aiTable.records();
|
11
|
+
},
|
12
|
+
getActiveCell(aiTable) {
|
13
|
+
const selection = aiTable.selection();
|
14
|
+
let selectedCells = [];
|
15
|
+
for (let [recordId, fieldIds] of selection.selectedCells.entries()) {
|
16
|
+
for (let fieldId of Object.keys(fieldIds)) {
|
17
|
+
if (fieldIds[fieldId]) {
|
18
|
+
selectedCells.push({
|
19
|
+
recordId,
|
20
|
+
fieldId
|
21
|
+
});
|
22
|
+
}
|
23
|
+
}
|
24
|
+
}
|
25
|
+
return selectedCells ? selectedCells[0] : null;
|
26
|
+
},
|
27
|
+
isCellVisible(aiTable, cell) {
|
28
|
+
const visibleRowIndexMap = aiTable.context.visibleRowsIndexMap();
|
29
|
+
const visibleColumnIndexMap = aiTable.context.visibleColumnsMap();
|
30
|
+
return visibleRowIndexMap.has(cell.recordId) && visibleColumnIndexMap.has(cell.fieldId);
|
31
|
+
},
|
32
|
+
getCellIndex(aiTable, cell) {
|
33
|
+
const visibleRowIndexMap = aiTable.context.visibleRowsIndexMap();
|
34
|
+
const visibleColumnIndexMap = aiTable.context.visibleColumnsMap();
|
35
|
+
if (AITable.isCellVisible(aiTable, cell)) {
|
36
|
+
return {
|
37
|
+
rowIndex: visibleRowIndexMap.get(cell.recordId),
|
38
|
+
columnIndex: visibleColumnIndexMap.get(cell.fieldId)
|
39
|
+
};
|
40
|
+
}
|
41
|
+
return null;
|
42
|
+
}
|
43
|
+
};
|
44
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWktdGFibGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9ncmlkL3NyYy9jb3JlL3R5cGVzL2FpLXRhYmxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQWtCaEQsTUFBTSxDQUFDLE1BQU0sT0FBTyxHQUFHO0lBQ25CLFNBQVM7UUFDTCxPQUFPLE1BQU0sQ0FBQztJQUNsQixDQUFDO0lBQ0QsZ0JBQWdCLENBQUMsT0FBZ0I7UUFDN0IsT0FBTyxPQUFPLENBQUMsTUFBTSxFQUFFLENBQUMsTUFBTSxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUM3RCxDQUFDO0lBQ0QsY0FBYyxDQUFDLE9BQWdCO1FBQzNCLE9BQU8sT0FBTyxDQUFDLE9BQU8sRUFBRSxDQUFDO0lBQzdCLENBQUM7SUFDRCxhQUFhLENBQUMsT0FBZ0I7UUFDMUIsTUFBTSxTQUFTLEdBQUcsT0FBTyxDQUFDLFNBQVMsRUFBRSxDQUFDO1FBQ3RDLElBQUksYUFBYSxHQUFHLEVBQUUsQ0FBQztRQUN2QixLQUFLLElBQUksQ0FBQyxRQUFRLEVBQUUsUUFBUSxDQUFDLElBQUksU0FBUyxDQUFDLGFBQWEsQ0FBQyxPQUFPLEVBQUUsRUFBRSxDQUFDO1lBQ2pFLEtBQUssSUFBSSxPQUFPLElBQUksTUFBTSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDO2dCQUN4QyxJQUFLLFFBQXVDLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQztvQkFDcEQsYUFBYSxDQUFDLElBQUksQ0FBQzt3QkFDZixRQUFRO3dCQUNSLE9BQU87cUJBQ1YsQ0FBQyxDQUFDO2dCQUNQLENBQUM7WUFDTCxDQUFDO1FBQ0wsQ0FBQztRQUNELE9BQU8sYUFBYSxDQUFDLENBQUMsQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQztJQUNuRCxDQUFDO0lBQ0QsYUFBYSxDQUFDLE9BQWdCLEVBQUUsSUFBMkM7UUFDdkUsTUFBTSxrQkFBa0IsR0FBRyxPQUFPLENBQUMsT0FBUSxDQUFDLG1CQUFtQixFQUFFLENBQUM7UUFDbEUsTUFBTSxxQkFBcUIsR0FBRyxPQUFPLENBQUMsT0FBUSxDQUFDLGlCQUFpQixFQUFFLENBQUM7UUFDbkUsT0FBTyxrQkFBbUIsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLHFCQUFxQixDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDN0YsQ0FBQztJQUNELFlBQVksQ0FBQyxPQUFnQixFQUFFLElBQTJDO1FBQ3RFLE1BQU0sa0JBQWtCLEdBQUcsT0FBTyxDQUFDLE9BQVEsQ0FBQyxtQkFBbUIsRUFBRSxDQUFDO1FBQ2xFLE1BQU0scUJBQXFCLEdBQUcsT0FBTyxDQUFDLE9BQVEsQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO1FBQ25FLElBQUksT0FBTyxDQUFDLGFBQWEsQ0FBQyxPQUFPLEVBQUUsSUFBSSxDQUFDLEVBQUUsQ0FBQztZQUN2QyxPQUFPO2dCQUNILFFBQVEsRUFBRSxrQkFBbUIsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBRTtnQkFDakQsV0FBVyxFQUFFLHFCQUFxQixDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFFO2FBQ3hELENBQUM7UUFDTixDQUFDO1FBQ0QsT0FBTyxJQUFJLENBQUM7SUFDaEIsQ0FBQztDQUNKLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBTaWduYWwsIFdyaXRhYmxlU2lnbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb2xvcnMgfSBmcm9tICcuLi8uLi9jb25zdGFudHMvY29sb3JzJztcbmltcG9ydCB7IEFJVGFibGVTZWxlY3Rpb24gfSBmcm9tICcuLi8uLi90eXBlcyc7XG5pbXBvcnQgeyBSZW5kZXJlckNvbnRleHQgfSBmcm9tICcuLi9jb250ZXh0JztcbmltcG9ydCB7IEFJVGFibGVGaWVsZCwgQUlUYWJsZUZpZWxkcywgQUlUYWJsZVJlY29yZCwgQUlUYWJsZVJlY29yZHMgfSBmcm9tICcuL2NvcmUnO1xuXG5leHBvcnQgaW50ZXJmYWNlIEFJVGFibGUge1xuICAgIHJlY29yZHM6IFdyaXRhYmxlU2lnbmFsPEFJVGFibGVSZWNvcmRzPjtcbiAgICBmaWVsZHM6IFdyaXRhYmxlU2lnbmFsPEFJVGFibGVGaWVsZHM+O1xuICAgIGNvbnRleHQ/OiBSZW5kZXJlckNvbnRleHQ7XG4gICAgc2VsZWN0aW9uOiBXcml0YWJsZVNpZ25hbDxBSVRhYmxlU2VsZWN0aW9uPjtcbiAgICByZWNvcmRzTWFwOiBTaWduYWw8eyBba2F5OiBzdHJpbmddOiBBSVRhYmxlUmVjb3JkIH0+O1xuICAgIGZpZWxkc01hcDogU2lnbmFsPHsgW2theTogc3RyaW5nXTogQUlUYWJsZUZpZWxkIH0+O1xuICAgIHJlY29yZHNXaWxsSGlkZGVuOiBXcml0YWJsZVNpZ25hbDxzdHJpbmdbXT47XG4gICAgcmVjb3Jkc1dpbGxNb3ZlOiBXcml0YWJsZVNpZ25hbDxzdHJpbmdbXT5cbn1cblxuZXhwb3J0IHR5cGUgQUlQbHVnaW4gPSAoYWlUYWJsZTogQUlUYWJsZSkgPT4gQUlUYWJsZTtcblxuZXhwb3J0IGNvbnN0IEFJVGFibGUgPSB7XG4gICAgZ2V0Q29sb3JzKCkge1xuICAgICAgICByZXR1cm4gQ29sb3JzO1xuICAgIH0sXG4gICAgZ2V0VmlzaWJsZUZpZWxkcyhhaVRhYmxlOiBBSVRhYmxlKSB7XG4gICAgICAgIHJldHVybiBhaVRhYmxlLmZpZWxkcygpLmZpbHRlcigoZmllbGQpID0+ICFmaWVsZC5oaWRkZW4pO1xuICAgIH0sXG4gICAgZ2V0VmlzaWJsZVJvd3MoYWlUYWJsZTogQUlUYWJsZSkge1xuICAgICAgICByZXR1cm4gYWlUYWJsZS5yZWNvcmRzKCk7XG4gICAgfSxcbiAgICBnZXRBY3RpdmVDZWxsKGFpVGFibGU6IEFJVGFibGUpOiB7IHJlY29yZElkOiBzdHJpbmc7IGZpZWxkSWQ6IHN0cmluZyB9IHwgbnVsbCB7XG4gICAgICAgIGNvbnN0IHNlbGVjdGlvbiA9IGFpVGFibGUuc2VsZWN0aW9uKCk7XG4gICAgICAgIGxldCBzZWxlY3RlZENlbGxzID0gW107XG4gICAgICAgIGZvciAobGV0IFtyZWNvcmRJZCwgZmllbGRJZHNdIG9mIHNlbGVjdGlvbi5zZWxlY3RlZENlbGxzLmVudHJpZXMoKSkge1xuICAgICAgICAgICAgZm9yIChsZXQgZmllbGRJZCBvZiBPYmplY3Qua2V5cyhmaWVsZElkcykpIHtcbiAgICAgICAgICAgICAgICBpZiAoKGZpZWxkSWRzIGFzIHsgW2tleTogc3RyaW5nXTogYm9vbGVhbiB9KVtmaWVsZElkXSkge1xuICAgICAgICAgICAgICAgICAgICBzZWxlY3RlZENlbGxzLnB1c2goe1xuICAgICAgICAgICAgICAgICAgICAgICAgcmVjb3JkSWQsXG4gICAgICAgICAgICAgICAgICAgICAgICBmaWVsZElkXG4gICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gc2VsZWN0ZWRDZWxscyA/IHNlbGVjdGVkQ2VsbHNbMF0gOiBudWxsO1xuICAgIH0sXG4gICAgaXNDZWxsVmlzaWJsZShhaVRhYmxlOiBBSVRhYmxlLCBjZWxsOiB7IHJlY29yZElkOiBzdHJpbmc7IGZpZWxkSWQ6IHN0cmluZyB9KSB7XG4gICAgICAgIGNvbnN0IHZpc2libGVSb3dJbmRleE1hcCA9IGFpVGFibGUuY29udGV4dCEudmlzaWJsZVJvd3NJbmRleE1hcCgpO1xuICAgICAgICBjb25zdCB2aXNpYmxlQ29sdW1uSW5kZXhNYXAgPSBhaVRhYmxlLmNvbnRleHQhLnZpc2libGVDb2x1bW5zTWFwKCk7XG4gICAgICAgIHJldHVybiB2aXNpYmxlUm93SW5kZXhNYXAhLmhhcyhjZWxsLnJlY29yZElkKSAmJiB2aXNpYmxlQ29sdW1uSW5kZXhNYXAuaGFzKGNlbGwuZmllbGRJZCk7XG4gICAgfSxcbiAgICBnZXRDZWxsSW5kZXgoYWlUYWJsZTogQUlUYWJsZSwgY2VsbDogeyByZWNvcmRJZDogc3RyaW5nOyBmaWVsZElkOiBzdHJpbmcgfSk6IHsgcm93SW5kZXg6IG51bWJlcjsgY29sdW1uSW5kZXg6IG51bWJlciB9IHwgbnVsbCB7XG4gICAgICAgIGNvbnN0IHZpc2libGVSb3dJbmRleE1hcCA9IGFpVGFibGUuY29udGV4dCEudmlzaWJsZVJvd3NJbmRleE1hcCgpO1xuICAgICAgICBjb25zdCB2aXNpYmxlQ29sdW1uSW5kZXhNYXAgPSBhaVRhYmxlLmNvbnRleHQhLnZpc2libGVDb2x1bW5zTWFwKCk7XG4gICAgICAgIGlmIChBSVRhYmxlLmlzQ2VsbFZpc2libGUoYWlUYWJsZSwgY2VsbCkpIHtcbiAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgcm93SW5kZXg6IHZpc2libGVSb3dJbmRleE1hcCEuZ2V0KGNlbGwucmVjb3JkSWQpISxcbiAgICAgICAgICAgICAgICBjb2x1bW5JbmRleDogdmlzaWJsZUNvbHVtbkluZGV4TWFwLmdldChjZWxsLmZpZWxkSWQpIVxuICAgICAgICAgICAgfTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG59O1xuIl19
|
@@ -43,4 +43,9 @@ export var AITableSelectOptionStyle;
|
|
43
43
|
AITableSelectOptionStyle[AITableSelectOptionStyle["dot"] = 3] = "dot";
|
44
44
|
AITableSelectOptionStyle[AITableSelectOptionStyle["piece"] = 4] = "piece";
|
45
45
|
})(AITableSelectOptionStyle || (AITableSelectOptionStyle = {}));
|
46
|
-
|
46
|
+
export var Direction;
|
47
|
+
(function (Direction) {
|
48
|
+
Direction["before"] = "before";
|
49
|
+
Direction["after"] = "after";
|
50
|
+
})(Direction || (Direction = {}));
|
51
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29yZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2dyaWQvc3JjL2NvcmUvdHlwZXMvY29yZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxNQUFNLENBQU4sSUFBWSxnQkFlWDtBQWZELFdBQVksZ0JBQWdCO0lBQ3hCLGlDQUFhLENBQUE7SUFDYiwwQ0FBc0IsQ0FBQTtJQUN0QixxQ0FBaUIsQ0FBQTtJQUNqQixxQ0FBaUIsQ0FBQTtJQUNqQixpQ0FBYSxDQUFBO0lBQ2IscUNBQWlCLENBQUE7SUFDakIsMkRBQTJEO0lBQzNELHlDQUFxQixDQUFBO0lBQ3JCLGlDQUFhLENBQUE7SUFDYixpQ0FBYSxDQUFBO0lBQ2IsNENBQXdCLENBQUE7SUFDeEIsNENBQXdCLENBQUE7SUFDeEIsNENBQXdCLENBQUE7SUFDeEIsNENBQXdCLENBQUE7QUFDNUIsQ0FBQyxFQWZXLGdCQUFnQixLQUFoQixnQkFBZ0IsUUFlM0I7QUFFRCxNQUFNLENBQU4sSUFBWSxlQW1CWDtBQW5CRCxXQUFZLGVBQWU7SUFDdkIscURBQVEsQ0FBQTtJQUNSLDZEQUFZLENBQUE7SUFDWix1REFBUyxDQUFBO0lBQ1QseURBQVUsQ0FBQTtJQUNWLHlEQUFVLENBQUE7SUFDVixxRUFBZ0IsQ0FBQTtJQUNoQix1RUFBaUIsQ0FBQTtJQUNqQix1RUFBaUIsQ0FBQTtJQUNqQixtREFBTyxDQUFBO0lBQ1AsMkRBQVcsQ0FBQTtJQUNYLG9EQUFRLENBQUE7SUFDUixvREFBUSxDQUFBO0lBQ1IsNEVBQW9CLENBQUE7SUFDcEIsZ0ZBQXNCLENBQUE7SUFDdEIsNERBQVksQ0FBQTtJQUNaLGdFQUFjLENBQUE7SUFDZCwwRUFBbUIsQ0FBQTtJQUNuQiw4RUFBcUIsQ0FBQTtBQUN6QixDQUFDLEVBbkJXLGVBQWUsS0FBZixlQUFlLFFBbUIxQjtBQStDRCxNQUFNLENBQU4sSUFBWSx3QkFLWDtBQUxELFdBQVksd0JBQXdCO0lBQ2hDLHVFQUFRLENBQUE7SUFDUixxRUFBTyxDQUFBO0lBQ1AscUVBQU8sQ0FBQTtJQUNQLHlFQUFTLENBQUE7QUFDYixDQUFDLEVBTFcsd0JBQXdCLEtBQXhCLHdCQUF3QixRQUtuQztBQXdDRCxNQUFNLENBQU4sSUFBWSxTQUdYO0FBSEQsV0FBWSxTQUFTO0lBQ2pCLDhCQUFpQixDQUFBO0lBQ2pCLDRCQUFlLENBQUE7QUFDbkIsQ0FBQyxFQUhXLFNBQVMsS0FBVCxTQUFTLFFBR3BCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSWQgfSBmcm9tICduZ3gtdGV0aHlzL3R5cGVzJztcblxuZXhwb3J0IGVudW0gQUlUYWJsZUZpZWxkVHlwZSB7XG4gICAgdGV4dCA9ICd0ZXh0JywgLy8g5YyF5ZCr5aSa6KGM5paH5pysXG4gICAgcmljaFRleHQgPSAncmljaF90ZXh0JywgLy8g5YyF5ZCr5aSa6KGM5paH5pysXG4gICAgc2VsZWN0ID0gJ3NlbGVjdCcsIC8vIOWMheWQq+WNlemAieWSjOWkmumAiVxuICAgIG51bWJlciA9ICdudW1iZXInLFxuICAgIGRhdGUgPSAnZGF0ZScsXG4gICAgbWVtYmVyID0gJ21lbWJlcicsIC8vIOWMheWQq+WNleS4quWSjOWkmuS4qlxuICAgIC8vIGNhc2NhZGVTZWxlY3QgPSAnY2FzY2FkZV9zZWxlY3QnLCAvLyDljIXlkKvljZXpgInlkozlpJrpgInvvIzlj4LmlbDlpI3mnYLlkI7nu63lho3ov5vooYzorr7orqFcbiAgICBwcm9ncmVzcyA9ICdwcm9ncmVzcycsXG4gICAgcmF0ZSA9ICdyYXRlJyxcbiAgICBsaW5rID0gJ2xpbmsnLFxuICAgIGNyZWF0ZWRBdCA9ICdjcmVhdGVkX2F0JyxcbiAgICB1cGRhdGVkQXQgPSAndXBkYXRlZF9hdCcsXG4gICAgY3JlYXRlZEJ5ID0gJ2NyZWF0ZWRfYnknLFxuICAgIHVwZGF0ZWRCeSA9ICd1cGRhdGVkX2J5J1xufVxuXG5leHBvcnQgZW51bSBBSVRhYmxlU3RhdFR5cGUge1xuICAgIE5vbmUgPSAwLFxuICAgIENvdW50QWxsID0gMSxcbiAgICBFbXB0eSA9IDIsXG4gICAgRmlsbGVkID0gMyxcbiAgICBVbmlxdWUgPSA0LFxuICAgIFBlcmNlbnRFbXB0eSA9IDUsXG4gICAgUGVyY2VudEZpbGxlZCA9IDYsXG4gICAgUGVyY2VudFVuaXF1ZSA9IDcsXG4gICAgU3VtID0gOCxcbiAgICBBdmVyYWdlID0gOSxcbiAgICBNYXggPSAxMCxcbiAgICBNaW4gPSAxMSxcbiAgICBEYXRlUmFuZ2VPZkRheXMgPSAxMixcbiAgICBEYXRlUmFuZ2VPZk1vbnRocyA9IDEzLFxuICAgIENoZWNrZWQgPSAxNCxcbiAgICBVbkNoZWNrZWQgPSAxNSxcbiAgICBQZXJjZW50Q2hlY2tlZCA9IDE2LFxuICAgIFBlcmNlbnRVbkNoZWNrZWQgPSAxN1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEFJVGFibGVGaWVsZE9wdGlvbiB7XG4gICAgbmFtZTogc3RyaW5nO1xuICAgIHR5cGU6IEFJVGFibGVGaWVsZFR5cGU7XG4gICAgaWNvbjogc3RyaW5nO1xuICAgIHdpZHRoOiBudW1iZXI7XG4gICAgc2V0dGluZ3M/OiBBSVRhYmxlRmllbGRTZXR0aW5ncztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBBSVRhYmxlRmllbGQge1xuICAgIF9pZDogc3RyaW5nO1xuICAgIG5hbWU6IHN0cmluZztcbiAgICB0eXBlOiBBSVRhYmxlRmllbGRUeXBlO1xuICAgIGljb24/OiBzdHJpbmc7XG4gICAgd2lkdGg/OiBudW1iZXI7XG4gICAgaGlkZGVuPzogYm9vbGVhbjtcbiAgICBmcm96ZW4/OiBib29sZWFuO1xuICAgIHN0YXRfdHlwZT86IEFJVGFibGVTdGF0VHlwZTtcbiAgICBzZXR0aW5ncz86IEFJVGFibGVGaWVsZFNldHRpbmdzO1xufVxuXG5leHBvcnQgdHlwZSBBSVRhYmxlRmllbGRTZXR0aW5ncyA9IFRleHRTZXR0aW5ncyB8IFJpY2hUZXh0U2V0dGluZ3MgfCBTZWxlY3RTZXR0aW5ncyB8IE1lbWJlclNldHRpbmdzO1xuXG5leHBvcnQgaW50ZXJmYWNlIFRleHRTZXR0aW5ncyB7fVxuXG5leHBvcnQgaW50ZXJmYWNlIFJpY2hUZXh0U2V0dGluZ3Mge31cblxuZXhwb3J0IGludGVyZmFjZSBTZWxlY3RTZXR0aW5ncyBleHRlbmRzIElzTXVsdGlwbGUge1xuICAgIG9wdGlvbl9zdHlsZT86IEFJVGFibGVTZWxlY3RPcHRpb25TdHlsZTtcbiAgICBvcHRpb25zOiBBSVRhYmxlU2VsZWN0T3B0aW9uW107XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgTWVtYmVyU2V0dGluZ3MgZXh0ZW5kcyBJc011bHRpcGxlIHt9XG5cbmV4cG9ydCBpbnRlcmZhY2UgSXNNdWx0aXBsZSB7XG4gICAgaXNfbXVsdGlwbGU/OiBib29sZWFuO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEFJVGFibGVTZWxlY3RPcHRpb24ge1xuICAgIF9pZDogc3RyaW5nO1xuICAgIHRleHQ6IHN0cmluZztcbiAgICBpY29uPzogc3RyaW5nO1xuICAgIGNvbG9yPzogc3RyaW5nO1xuICAgIGJnX2NvbG9yPzogc3RyaW5nO1xufVxuXG5leHBvcnQgZW51bSBBSVRhYmxlU2VsZWN0T3B0aW9uU3R5bGUge1xuICAgIHRleHQgPSAxLFxuICAgIHRhZyA9IDIsXG4gICAgZG90ID0gMyxcbiAgICBwaWVjZSA9IDRcbn1cblxuZXhwb3J0IHR5cGUgVGV4dEZpZWxkVmFsdWUgPSBzdHJpbmc7XG5cbmV4cG9ydCB0eXBlIFNlbGVjdEZpZWxkVmFsdWUgPSBJZFtdOyAvLyDmlbDlrZdcblxuZXhwb3J0IHR5cGUgTnVtYmVyRmllbGRWYWx1ZSA9IG51bWJlcjtcblxuZXhwb3J0IHR5cGUgRGF0ZUZpZWxkVmFsdWUgPSB7IHRpbWVzdGFtcDogbnVtYmVyIH07IC8vIOaXtumXtOaIs1xuXG5leHBvcnQgdHlwZSBNZW1iZXJGaWVsZFZhbHVlID0gSWRbXTtcblxuZXhwb3J0IHR5cGUgUHJvZ3Jlc3NGaWVsZFZhbHVlID0gbnVtYmVyOyAvLyBbMCwxXVxuXG5leHBvcnQgdHlwZSBSYXRlRmllbGRWYWx1ZSA9IDEgfCAyIHwgMyB8IDQgfCA1O1xuXG5leHBvcnQgdHlwZSBGaWVsZFZhbHVlID1cbiAgICB8IFRleHRGaWVsZFZhbHVlXG4gICAgfCBTZWxlY3RGaWVsZFZhbHVlXG4gICAgfCBOdW1iZXJGaWVsZFZhbHVlXG4gICAgfCBEYXRlRmllbGRWYWx1ZVxuICAgIHwgTWVtYmVyRmllbGRWYWx1ZVxuICAgIHwgUHJvZ3Jlc3NGaWVsZFZhbHVlXG4gICAgfCBSYXRlRmllbGRWYWx1ZVxuICAgIHwgYW55O1xuXG5leHBvcnQgaW50ZXJmYWNlIEFJVGFibGVSZWNvcmQge1xuICAgIF9pZDogc3RyaW5nO1xuICAgIHZhbHVlczogUmVjb3JkPHN0cmluZywgRmllbGRWYWx1ZT47XG59XG5cbmV4cG9ydCB0eXBlIEFJVGFibGVSZWNvcmRzID0gQUlUYWJsZVJlY29yZFtdO1xuXG5leHBvcnQgdHlwZSBBSVRhYmxlRmllbGRzID0gQUlUYWJsZUZpZWxkW107XG5cbmV4cG9ydCBpbnRlcmZhY2UgQUlUYWJsZVZhbHVlIHtcbiAgICByZWNvcmRzOiBBSVRhYmxlUmVjb3JkcztcbiAgICBmaWVsZHM6IEFJVGFibGVGaWVsZHM7XG59XG5cbmV4cG9ydCBlbnVtIERpcmVjdGlvbiB7XG4gICAgYmVmb3JlID0gJ2JlZm9yZScsXG4gICAgYWZ0ZXIgPSAnYWZ0ZXInXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQWRkUmVjb3JkT3B0aW9ucyB7XG4gICAgb3JpZ2luSWQ6IHN0cmluZztcbiAgICBkaXJlY3Rpb24/OiBEaXJlY3Rpb247XG4gICAgaXNEdXBsaWNhdGU/OiBib29sZWFuO1xuICAgIGNvdW50PzogbnVtYmVyO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEFkZEZpZWxkT3B0aW9ucyB7XG4gICAgb3JpZ2luSWQ6IHN0cmluZztcbiAgICBkZWZhdWx0VmFsdWU6IFBhcnRpYWw8QUlUYWJsZUZpZWxkPjtcbiAgICBkaXJlY3Rpb24/OiBEaXJlY3Rpb247XG4gICAgaXNEdXBsaWNhdGU/OiBib29sZWFuO1xuICAgIGNvdW50PzogbnVtYmVyO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFVwZGF0ZUZpZWxkVmFsdWVPcHRpb25zPFQgPSB1bmtub3duPiB7XG4gICAgdmFsdWU6IFQ7XG4gICAgcGF0aDogQUlGaWVsZFZhbHVlSWRQYXRoO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFNldEZpZWxkT3B0aW9uczxUID0gdW5rbm93bj4ge1xuICAgIGZpZWxkOiBBSVRhYmxlRmllbGQ7XG4gICAgcGF0aDogSWRQYXRoO1xufVxuXG5leHBvcnQgdHlwZSBOdW1iZXJQYXRoID0gW251bWJlcl07XG5cbmV4cG9ydCB0eXBlIElkUGF0aCA9IFtzdHJpbmddO1xuXG5leHBvcnQgdHlwZSBBSUZpZWxkVmFsdWVJZFBhdGggPSBbc3RyaW5nLCBzdHJpbmddO1xuXG5leHBvcnQgdHlwZSBQYXRoID0gTnVtYmVyUGF0aCB8IElkUGF0aCB8IEFJRmllbGRWYWx1ZUlkUGF0aDtcbiJdfQ==
|
@@ -1,3 +1,3 @@
|
|
1
|
+
export * from './ai-table';
|
1
2
|
export * from './core';
|
2
|
-
|
3
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9ncmlkL3NyYy9jb3JlL3R5cGVzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsUUFBUSxDQUFDO0FBQ3ZCLGNBQWMsVUFBVSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9jb3JlJztcbmV4cG9ydCAqIGZyb20gJy4vYWN0aW9uJzsiXX0=
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9ncmlkL3NyYy9jb3JlL3R5cGVzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsWUFBWSxDQUFDO0FBQzNCLGNBQWMsUUFBUSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9haS10YWJsZSc7XG5leHBvcnQgKiBmcm9tICcuL2NvcmUnO1xuIl19
|
@@ -1,11 +1,8 @@
|
|
1
|
-
import { Actions } from '../action';
|
2
|
-
import { FLUSHING } from './weak-map';
|
3
1
|
import { computed, signal } from '@angular/core';
|
4
2
|
export function createAITable(records, fields) {
|
5
3
|
const aiTable = {
|
6
4
|
records,
|
7
5
|
fields,
|
8
|
-
actions: [],
|
9
6
|
selection: signal({
|
10
7
|
selectedRecords: new Map(),
|
11
8
|
selectedFields: new Map(),
|
@@ -23,23 +20,9 @@ export function createAITable(records, fields) {
|
|
23
20
|
return object;
|
24
21
|
}, {});
|
25
22
|
}),
|
26
|
-
|
27
|
-
|
28
|
-
aiTable.actions.push(action);
|
29
|
-
Actions.transform(aiTable, action);
|
30
|
-
if (!FLUSHING.get(aiTable)) {
|
31
|
-
FLUSHING.set(aiTable, true);
|
32
|
-
Promise.resolve().then(() => {
|
33
|
-
FLUSHING.set(aiTable, false);
|
34
|
-
aiTable.onChange();
|
35
|
-
aiTable.actions = [];
|
36
|
-
});
|
37
|
-
}
|
38
|
-
}
|
23
|
+
recordsWillHidden: signal([]),
|
24
|
+
recordsWillMove: signal([])
|
39
25
|
};
|
40
26
|
return aiTable;
|
41
27
|
}
|
42
|
-
|
43
|
-
return path.length === another.length && path.every((n, i) => n === another[i]);
|
44
|
-
}
|
45
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tbW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZ3JpZC9zcmMvY29yZS91dGlscy9jb21tb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUVwQyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sWUFBWSxDQUFDO0FBQ3RDLE9BQU8sRUFBa0IsUUFBUSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUVqRSxNQUFNLFVBQVUsYUFBYSxDQUFDLE9BQXVDLEVBQUUsTUFBcUM7SUFDeEcsTUFBTSxPQUFPLEdBQVk7UUFDckIsT0FBTztRQUNQLE1BQU07UUFDTixPQUFPLEVBQUUsRUFBRTtRQUNYLFNBQVMsRUFBRSxNQUFNLENBQUM7WUFDZCxlQUFlLEVBQUUsSUFBSSxHQUFHLEVBQUU7WUFDMUIsY0FBYyxFQUFFLElBQUksR0FBRyxFQUFFO1lBQ3pCLGFBQWEsRUFBRSxJQUFJLEdBQUcsRUFBRTtTQUMzQixDQUFDO1FBQ0YsVUFBVSxFQUFFLFFBQVEsQ0FBQyxHQUFHLEVBQUU7WUFDdEIsT0FBTyxPQUFPLEVBQUUsQ0FBQyxNQUFNLENBQ25CLENBQUMsTUFBTSxFQUFFLElBQUksRUFBRSxFQUFFO2dCQUNiLE1BQU0sQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsSUFBSSxDQUFDO2dCQUN4QixPQUFPLE1BQU0sQ0FBQztZQUNsQixDQUFDLEVBQ0QsRUFBc0MsQ0FDekMsQ0FBQztRQUNOLENBQUMsQ0FBQztRQUNGLFNBQVMsRUFBRSxRQUFRLENBQUMsR0FBRyxFQUFFO1lBQ3JCLE9BQU8sTUFBTSxFQUFFLENBQUMsTUFBTSxDQUNsQixDQUFDLE1BQU0sRUFBRSxJQUFJLEVBQUUsRUFBRTtnQkFDYixNQUFNLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLElBQUksQ0FBQztnQkFDeEIsT0FBTyxNQUFNLENBQUM7WUFDbEIsQ0FBQyxFQUNELEVBQXFDLENBQ3hDLENBQUM7UUFDTixDQUFDLENBQUM7UUFDRixRQUFRLEVBQUUsR0FBRyxFQUFFLEdBQUUsQ0FBQztRQUNsQixLQUFLLEVBQUUsQ0FBQyxNQUFxQixFQUFFLEVBQUU7WUFDN0IsT0FBTyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7WUFDN0IsT0FBTyxDQUFDLFNBQVMsQ0FBQyxPQUFPLEVBQUUsTUFBTSxDQUFDLENBQUM7WUFFbkMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQztnQkFDekIsUUFBUSxDQUFDLEdBQUcsQ0FBQyxPQUFPLEVBQUUsSUFBSSxDQUFDLENBQUM7Z0JBQzVCLE9BQU8sQ0FBQyxPQUFPLEVBQUUsQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFO29CQUN4QixRQUFRLENBQUMsR0FBRyxDQUFDLE9BQU8sRUFBRSxLQUFLLENBQUMsQ0FBQztvQkFDN0IsT0FBTyxDQUFDLFFBQVEsRUFBRSxDQUFDO29CQUNuQixPQUFPLENBQUMsT0FBTyxHQUFHLEVBQUUsQ0FBQztnQkFDekIsQ0FBQyxDQUFDLENBQUM7WUFDUCxDQUFDO1FBQ0wsQ0FBQztLQUNKLENBQUM7SUFDRixPQUFPLE9BQU8sQ0FBQztBQUNuQixDQUFDO0FBRUQsTUFBTSxVQUFVLFdBQVcsQ0FBQyxJQUFVLEVBQUUsT0FBYTtJQUNqRCxPQUFPLElBQUksQ0FBQyxNQUFNLEtBQUssT0FBTyxDQUFDLE1BQU0sSUFBSSxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxLQUFLLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0FBQ3BGLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBY3Rpb25zIH0gZnJvbSAnLi4vYWN0aW9uJztcbmltcG9ydCB7IEFJVGFibGUsIEFJVGFibGVBY3Rpb24sIEFJVGFibGVGaWVsZCwgQUlUYWJsZUZpZWxkcywgQUlUYWJsZVJlY29yZCwgQUlUYWJsZVJlY29yZHMsIFBhdGggfSBmcm9tICcuLi90eXBlcyc7XG5pbXBvcnQgeyBGTFVTSElORyB9IGZyb20gJy4vd2Vhay1tYXAnO1xuaW1wb3J0IHsgV3JpdGFibGVTaWduYWwsIGNvbXB1dGVkLCBzaWduYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuZXhwb3J0IGZ1bmN0aW9uIGNyZWF0ZUFJVGFibGUocmVjb3JkczogV3JpdGFibGVTaWduYWw8QUlUYWJsZVJlY29yZHM+LCBmaWVsZHM6IFdyaXRhYmxlU2lnbmFsPEFJVGFibGVGaWVsZHM+KTogQUlUYWJsZSB7XG4gICAgY29uc3QgYWlUYWJsZTogQUlUYWJsZSA9IHtcbiAgICAgICAgcmVjb3JkcyxcbiAgICAgICAgZmllbGRzLFxuICAgICAgICBhY3Rpb25zOiBbXSxcbiAgICAgICAgc2VsZWN0aW9uOiBzaWduYWwoe1xuICAgICAgICAgICAgc2VsZWN0ZWRSZWNvcmRzOiBuZXcgTWFwKCksXG4gICAgICAgICAgICBzZWxlY3RlZEZpZWxkczogbmV3IE1hcCgpLFxuICAgICAgICAgICAgc2VsZWN0ZWRDZWxsczogbmV3IE1hcCgpXG4gICAgICAgIH0pLFxuICAgICAgICByZWNvcmRzTWFwOiBjb21wdXRlZCgoKSA9PiB7XG4gICAgICAgICAgICByZXR1cm4gcmVjb3JkcygpLnJlZHVjZShcbiAgICAgICAgICAgICAgICAob2JqZWN0LCBpdGVtKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIG9iamVjdFtpdGVtLl9pZF0gPSBpdGVtO1xuICAgICAgICAgICAgICAgICAgICByZXR1cm4gb2JqZWN0O1xuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAge30gYXMgeyBba2F5OiBzdHJpbmddOiBBSVRhYmxlUmVjb3JkIH1cbiAgICAgICAgICAgICk7XG4gICAgICAgIH0pLFxuICAgICAgICBmaWVsZHNNYXA6IGNvbXB1dGVkKCgpID0+IHtcbiAgICAgICAgICAgIHJldHVybiBmaWVsZHMoKS5yZWR1Y2UoXG4gICAgICAgICAgICAgICAgKG9iamVjdCwgaXRlbSkgPT4ge1xuICAgICAgICAgICAgICAgICAgICBvYmplY3RbaXRlbS5faWRdID0gaXRlbTtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIG9iamVjdDtcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIHt9IGFzIHsgW2theTogc3RyaW5nXTogQUlUYWJsZUZpZWxkIH1cbiAgICAgICAgICAgICk7XG4gICAgICAgIH0pLFxuICAgICAgICBvbkNoYW5nZTogKCkgPT4ge30sXG4gICAgICAgIGFwcGx5OiAoYWN0aW9uOiBBSVRhYmxlQWN0aW9uKSA9PiB7XG4gICAgICAgICAgICBhaVRhYmxlLmFjdGlvbnMucHVzaChhY3Rpb24pO1xuICAgICAgICAgICAgQWN0aW9ucy50cmFuc2Zvcm0oYWlUYWJsZSwgYWN0aW9uKTtcblxuICAgICAgICAgICAgaWYgKCFGTFVTSElORy5nZXQoYWlUYWJsZSkpIHtcbiAgICAgICAgICAgICAgICBGTFVTSElORy5zZXQoYWlUYWJsZSwgdHJ1ZSk7XG4gICAgICAgICAgICAgICAgUHJvbWlzZS5yZXNvbHZlKCkudGhlbigoKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIEZMVVNISU5HLnNldChhaVRhYmxlLCBmYWxzZSk7XG4gICAgICAgICAgICAgICAgICAgIGFpVGFibGUub25DaGFuZ2UoKTtcbiAgICAgICAgICAgICAgICAgICAgYWlUYWJsZS5hY3Rpb25zID0gW107XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9O1xuICAgIHJldHVybiBhaVRhYmxlO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gaXNQYXRoRXF1YWwocGF0aDogUGF0aCwgYW5vdGhlcjogUGF0aCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiBwYXRoLmxlbmd0aCA9PT0gYW5vdGhlci5sZW5ndGggJiYgcGF0aC5ldmVyeSgobiwgaSkgPT4gbiA9PT0gYW5vdGhlcltpXSk7XG59Il19
|
28
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tbW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZ3JpZC9zcmMvY29yZS91dGlscy9jb21tb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFrQixRQUFRLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBR2pFLE1BQU0sVUFBVSxhQUFhLENBQUMsT0FBdUMsRUFBRSxNQUFxQztJQUN4RyxNQUFNLE9BQU8sR0FBWTtRQUNyQixPQUFPO1FBQ1AsTUFBTTtRQUNOLFNBQVMsRUFBRSxNQUFNLENBQUM7WUFDZCxlQUFlLEVBQUUsSUFBSSxHQUFHLEVBQUU7WUFDMUIsY0FBYyxFQUFFLElBQUksR0FBRyxFQUFFO1lBQ3pCLGFBQWEsRUFBRSxJQUFJLEdBQUcsRUFBRTtTQUMzQixDQUFDO1FBQ0YsVUFBVSxFQUFFLFFBQVEsQ0FBQyxHQUFHLEVBQUU7WUFDdEIsT0FBTyxPQUFPLEVBQUUsQ0FBQyxNQUFNLENBQ25CLENBQUMsTUFBTSxFQUFFLElBQUksRUFBRSxFQUFFO2dCQUNiLE1BQU0sQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsSUFBSSxDQUFDO2dCQUN4QixPQUFPLE1BQU0sQ0FBQztZQUNsQixDQUFDLEVBQ0QsRUFBc0MsQ0FDekMsQ0FBQztRQUNOLENBQUMsQ0FBQztRQUNGLFNBQVMsRUFBRSxRQUFRLENBQUMsR0FBRyxFQUFFO1lBQ3JCLE9BQU8sTUFBTSxFQUFFLENBQUMsTUFBTSxDQUNsQixDQUFDLE1BQU0sRUFBRSxJQUFJLEVBQUUsRUFBRTtnQkFDYixNQUFNLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLElBQUksQ0FBQztnQkFDeEIsT0FBTyxNQUFNLENBQUM7WUFDbEIsQ0FBQyxFQUNELEVBQXFDLENBQ3hDLENBQUM7UUFDTixDQUFDLENBQUM7UUFDRixpQkFBaUIsRUFBRSxNQUFNLENBQUMsRUFBRSxDQUFDO1FBQzdCLGVBQWUsRUFBRSxNQUFNLENBQUMsRUFBRSxDQUFDO0tBQzlCLENBQUM7SUFDRixPQUFPLE9BQU8sQ0FBQztBQUNuQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgV3JpdGFibGVTaWduYWwsIGNvbXB1dGVkLCBzaWduYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFJVGFibGUsIEFJVGFibGVGaWVsZCwgQUlUYWJsZUZpZWxkcywgQUlUYWJsZVJlY29yZCwgQUlUYWJsZVJlY29yZHMgfSBmcm9tICcuLi90eXBlcyc7XG5cbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVBSVRhYmxlKHJlY29yZHM6IFdyaXRhYmxlU2lnbmFsPEFJVGFibGVSZWNvcmRzPiwgZmllbGRzOiBXcml0YWJsZVNpZ25hbDxBSVRhYmxlRmllbGRzPik6IEFJVGFibGUge1xuICAgIGNvbnN0IGFpVGFibGU6IEFJVGFibGUgPSB7XG4gICAgICAgIHJlY29yZHMsXG4gICAgICAgIGZpZWxkcyxcbiAgICAgICAgc2VsZWN0aW9uOiBzaWduYWwoe1xuICAgICAgICAgICAgc2VsZWN0ZWRSZWNvcmRzOiBuZXcgTWFwKCksXG4gICAgICAgICAgICBzZWxlY3RlZEZpZWxkczogbmV3IE1hcCgpLFxuICAgICAgICAgICAgc2VsZWN0ZWRDZWxsczogbmV3IE1hcCgpXG4gICAgICAgIH0pLFxuICAgICAgICByZWNvcmRzTWFwOiBjb21wdXRlZCgoKSA9PiB7XG4gICAgICAgICAgICByZXR1cm4gcmVjb3JkcygpLnJlZHVjZShcbiAgICAgICAgICAgICAgICAob2JqZWN0LCBpdGVtKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIG9iamVjdFtpdGVtLl9pZF0gPSBpdGVtO1xuICAgICAgICAgICAgICAgICAgICByZXR1cm4gb2JqZWN0O1xuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAge30gYXMgeyBba2F5OiBzdHJpbmddOiBBSVRhYmxlUmVjb3JkIH1cbiAgICAgICAgICAgICk7XG4gICAgICAgIH0pLFxuICAgICAgICBmaWVsZHNNYXA6IGNvbXB1dGVkKCgpID0+IHtcbiAgICAgICAgICAgIHJldHVybiBmaWVsZHMoKS5yZWR1Y2UoXG4gICAgICAgICAgICAgICAgKG9iamVjdCwgaXRlbSkgPT4ge1xuICAgICAgICAgICAgICAgICAgICBvYmplY3RbaXRlbS5faWRdID0gaXRlbTtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIG9iamVjdDtcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIHt9IGFzIHsgW2theTogc3RyaW5nXTogQUlUYWJsZUZpZWxkIH1cbiAgICAgICAgICAgICk7XG4gICAgICAgIH0pLFxuICAgICAgICByZWNvcmRzV2lsbEhpZGRlbjogc2lnbmFsKFtdKSxcbiAgICAgICAgcmVjb3Jkc1dpbGxNb3ZlOiBzaWduYWwoW10pXG4gICAgfTtcbiAgICByZXR1cm4gYWlUYWJsZTtcbn1cbiJdfQ==
|
@@ -2,7 +2,8 @@ import { FieldOptions } from '../constants/field';
|
|
2
2
|
import { AITableFieldType } from '../types';
|
3
3
|
import { idCreator } from './id-creator';
|
4
4
|
export function getDefaultFieldValue(field) {
|
5
|
-
if ([AITableFieldType.
|
5
|
+
if ([AITableFieldType.member, AITableFieldType.createdBy, AITableFieldType.updatedBy].includes(field.type) ||
|
6
|
+
(AITableFieldType.select === field.type && field.settings.is_multiple)) {
|
6
7
|
return [];
|
7
8
|
}
|
8
9
|
return '';
|
@@ -18,13 +19,16 @@ export function createDefaultFieldName(aiTable, field) {
|
|
18
19
|
return FieldOptions[0].name;
|
19
20
|
}
|
20
21
|
export function getFieldOptionByField(field) {
|
21
|
-
return FieldOptions.find(item => isSameFieldOption(item, field));
|
22
|
+
return FieldOptions.find((item) => isSameFieldOption(item, field));
|
22
23
|
}
|
23
24
|
export function isSameFieldOption(fieldOption, field) {
|
24
|
-
return fieldOption.type === field.type &&
|
25
|
+
return (fieldOption.type === field.type &&
|
26
|
+
(fieldOption.type === AITableFieldType.select
|
27
|
+
? !!fieldOption.settings?.is_multiple === !!field.settings?.is_multiple
|
28
|
+
: true));
|
25
29
|
}
|
26
30
|
export function createDefaultField(aiTable, type = AITableFieldType.text) {
|
27
|
-
const fieldOption = FieldOptions.find(item => item.type === type);
|
31
|
+
const fieldOption = FieldOptions.find((item) => item.type === type);
|
28
32
|
return { _id: idCreator(), type, name: createDefaultFieldName(aiTable, fieldOption) };
|
29
33
|
}
|
30
|
-
//# sourceMappingURL=data:application/json;base64,
|
34
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmllbGQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9ncmlkL3NyYy9jb3JlL3V0aWxzL2ZpZWxkLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUNsRCxPQUFPLEVBQTZDLGdCQUFnQixFQUFjLE1BQU0sVUFBVSxDQUFDO0FBQ25HLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFFekMsTUFBTSxVQUFVLG9CQUFvQixDQUFDLEtBQW1CO0lBQ3BELElBQ0ksQ0FBQyxnQkFBZ0IsQ0FBQyxNQUFNLEVBQUUsZ0JBQWdCLENBQUMsU0FBUyxFQUFFLGdCQUFnQixDQUFDLFNBQVMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDO1FBQ3RHLENBQUMsZ0JBQWdCLENBQUMsTUFBTSxLQUFLLEtBQUssQ0FBQyxJQUFJLElBQUssS0FBSyxDQUFDLFFBQXVCLENBQUMsV0FBVyxDQUFDLEVBQ3hGLENBQUM7UUFDQyxPQUFPLEVBQUUsQ0FBQztJQUNkLENBQUM7SUFDRCxPQUFPLEVBQUUsQ0FBQztBQUNkLENBQUM7QUFFRCxNQUFNLFVBQVUsc0JBQXNCLENBQUMsT0FBZ0IsRUFBRSxLQUF5QjtJQUM5RSxNQUFNLFdBQVcsR0FBRyxxQkFBcUIsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNqRCxJQUFJLFdBQVcsRUFBRSxDQUFDO1FBQ2QsTUFBTSxLQUFLLEdBQUcsT0FBTyxDQUFDLE1BQU0sRUFBRSxDQUFDLE1BQU0sQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFO1lBQzNDLE9BQU8saUJBQWlCLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxDQUFDO1FBQzFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQztRQUNWLE9BQU8sS0FBSyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsV0FBVyxDQUFDLElBQUksR0FBRyxHQUFHLEdBQUcsS0FBSyxDQUFDO0lBQzNFLENBQUM7SUFDRCxPQUFPLFlBQVksQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7QUFDaEMsQ0FBQztBQUVELE1BQU0sVUFBVSxxQkFBcUIsQ0FBQyxLQUE0QjtJQUM5RCxPQUFPLFlBQVksQ0FBQyxJQUFJLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLGlCQUFpQixDQUFDLElBQUksRUFBRSxLQUFLLENBQUMsQ0FBQyxDQUFDO0FBQ3ZFLENBQUM7QUFFRCxNQUFNLFVBQVUsaUJBQWlCLENBQUMsV0FBK0IsRUFBRSxLQUE0QjtJQUMzRixPQUFPLENBQ0gsV0FBVyxDQUFDLElBQUksS0FBSyxLQUFLLENBQUMsSUFBSTtRQUMvQixDQUFDLFdBQVcsQ0FBQyxJQUFJLEtBQUssZ0JBQWdCLENBQUMsTUFBTTtZQUN6QyxDQUFDLENBQUMsQ0FBQyxDQUFFLFdBQVcsQ0FBQyxRQUF1QixFQUFFLFdBQVcsS0FBSyxDQUFDLENBQUUsS0FBSyxDQUFDLFFBQXVCLEVBQUUsV0FBVztZQUN2RyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQ2QsQ0FBQztBQUNOLENBQUM7QUFFRCxNQUFNLFVBQVUsa0JBQWtCLENBQUMsT0FBZ0IsRUFBRSxPQUF5QixnQkFBZ0IsQ0FBQyxJQUFJO0lBQy9GLE1BQU0sV0FBVyxHQUFHLFlBQVksQ0FBQyxJQUFJLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxJQUFJLEtBQUssSUFBSSxDQUFFLENBQUM7SUFDckUsT0FBTyxFQUFFLEdBQUcsRUFBRSxTQUFTLEVBQUUsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLHNCQUFzQixDQUFDLE9BQU8sRUFBRSxXQUFXLENBQUMsRUFBRSxDQUFDO0FBQzFGLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBGaWVsZE9wdGlvbnMgfSBmcm9tICcuLi9jb25zdGFudHMvZmllbGQnO1xuaW1wb3J0IHsgQUlUYWJsZSwgQUlUYWJsZUZpZWxkLCBBSVRhYmxlRmllbGRPcHRpb24sIEFJVGFibGVGaWVsZFR5cGUsIElzTXVsdGlwbGUgfSBmcm9tICcuLi90eXBlcyc7XG5pbXBvcnQgeyBpZENyZWF0b3IgfSBmcm9tICcuL2lkLWNyZWF0b3InO1xuXG5leHBvcnQgZnVuY3Rpb24gZ2V0RGVmYXVsdEZpZWxkVmFsdWUoZmllbGQ6IEFJVGFibGVGaWVsZCkge1xuICAgIGlmIChcbiAgICAgICAgW0FJVGFibGVGaWVsZFR5cGUubWVtYmVyLCBBSVRhYmxlRmllbGRUeXBlLmNyZWF0ZWRCeSwgQUlUYWJsZUZpZWxkVHlwZS51cGRhdGVkQnldLmluY2x1ZGVzKGZpZWxkLnR5cGUpIHx8XG4gICAgICAgIChBSVRhYmxlRmllbGRUeXBlLnNlbGVjdCA9PT0gZmllbGQudHlwZSAmJiAoZmllbGQuc2V0dGluZ3MgYXMgSXNNdWx0aXBsZSkuaXNfbXVsdGlwbGUpXG4gICAgKSB7XG4gICAgICAgIHJldHVybiBbXTtcbiAgICB9XG4gICAgcmV0dXJuICcnO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gY3JlYXRlRGVmYXVsdEZpZWxkTmFtZShhaVRhYmxlOiBBSVRhYmxlLCBmaWVsZDogQUlUYWJsZUZpZWxkT3B0aW9uKSB7XG4gICAgY29uc3QgZmllbGRPcHRpb24gPSBnZXRGaWVsZE9wdGlvbkJ5RmllbGQoZmllbGQpO1xuICAgIGlmIChmaWVsZE9wdGlvbikge1xuICAgICAgICBjb25zdCBjb3VudCA9IGFpVGFibGUuZmllbGRzKCkuZmlsdGVyKChpdGVtKSA9PiB7XG4gICAgICAgICAgICByZXR1cm4gaXNTYW1lRmllbGRPcHRpb24oZmllbGQsIGl0ZW0pO1xuICAgICAgICB9KS5sZW5ndGg7XG4gICAgICAgIHJldHVybiBjb3VudCA9PT0gMCA/IGZpZWxkT3B0aW9uLm5hbWUgOiBmaWVsZE9wdGlvbi5uYW1lICsgJyAnICsgY291bnQ7XG4gICAgfVxuICAgIHJldHVybiBGaWVsZE9wdGlvbnNbMF0ubmFtZTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldEZpZWxkT3B0aW9uQnlGaWVsZChmaWVsZDogUGFydGlhbDxBSVRhYmxlRmllbGQ+KSB7XG4gICAgcmV0dXJuIEZpZWxkT3B0aW9ucy5maW5kKChpdGVtKSA9PiBpc1NhbWVGaWVsZE9wdGlvbihpdGVtLCBmaWVsZCkpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gaXNTYW1lRmllbGRPcHRpb24oZmllbGRPcHRpb246IEFJVGFibGVGaWVsZE9wdGlvbiwgZmllbGQ6IFBhcnRpYWw8QUlUYWJsZUZpZWxkPik6IGJvb2xlYW4ge1xuICAgIHJldHVybiAoXG4gICAgICAgIGZpZWxkT3B0aW9uLnR5cGUgPT09IGZpZWxkLnR5cGUgJiZcbiAgICAgICAgKGZpZWxkT3B0aW9uLnR5cGUgPT09IEFJVGFibGVGaWVsZFR5cGUuc2VsZWN0XG4gICAgICAgICAgICA/ICEhKGZpZWxkT3B0aW9uLnNldHRpbmdzIGFzIElzTXVsdGlwbGUpPy5pc19tdWx0aXBsZSA9PT0gISEoZmllbGQuc2V0dGluZ3MgYXMgSXNNdWx0aXBsZSk/LmlzX211bHRpcGxlXG4gICAgICAgICAgICA6IHRydWUpXG4gICAgKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGNyZWF0ZURlZmF1bHRGaWVsZChhaVRhYmxlOiBBSVRhYmxlLCB0eXBlOiBBSVRhYmxlRmllbGRUeXBlID0gQUlUYWJsZUZpZWxkVHlwZS50ZXh0KSB7XG4gICAgY29uc3QgZmllbGRPcHRpb24gPSBGaWVsZE9wdGlvbnMuZmluZCgoaXRlbSkgPT4gaXRlbS50eXBlID09PSB0eXBlKSE7XG4gICAgcmV0dXJuIHsgX2lkOiBpZENyZWF0b3IoKSwgdHlwZSwgbmFtZTogY3JlYXRlRGVmYXVsdEZpZWxkTmFtZShhaVRhYmxlLCBmaWVsZE9wdGlvbikgfTtcbn1cbiJdfQ==
|
@@ -1,7 +1,6 @@
|
|
1
1
|
export * from './id-creator';
|
2
2
|
export * from './field';
|
3
3
|
export * from './common';
|
4
|
-
export * from './weak-map';
|
5
4
|
export * from './record';
|
6
5
|
export * from './queries';
|
7
|
-
//# sourceMappingURL=data:application/json;base64,
|
6
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9ncmlkL3NyYy9jb3JlL3V0aWxzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsY0FBYyxDQUFBO0FBQzVCLGNBQWMsU0FBUyxDQUFBO0FBQ3ZCLGNBQWMsVUFBVSxDQUFBO0FBQ3hCLGNBQWMsVUFBVSxDQUFBO0FBQ3hCLGNBQWMsV0FBVyxDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9pZC1jcmVhdG9yJ1xuZXhwb3J0ICogZnJvbSAnLi9maWVsZCdcbmV4cG9ydCAqIGZyb20gJy4vY29tbW9uJ1xuZXhwb3J0ICogZnJvbSAnLi9yZWNvcmQnXG5leHBvcnQgKiBmcm9tICcuL3F1ZXJpZXMnIl19
|
@@ -27,11 +27,11 @@ export const AITableQueries = {
|
|
27
27
|
if (!path) {
|
28
28
|
throw new Error(`path does not exist as path [${path}]`);
|
29
29
|
}
|
30
|
-
const
|
31
|
-
if (
|
30
|
+
const record = aiTable.recordsMap()[path[0]];
|
31
|
+
if (!record) {
|
32
32
|
throw new Error(`can not find record at path [${path}]`);
|
33
33
|
}
|
34
|
-
return
|
34
|
+
return record.values[path[1]];
|
35
35
|
},
|
36
36
|
getField(aiTable, path) {
|
37
37
|
if (!aiTable) {
|
@@ -52,4 +52,4 @@ export const AITableQueries = {
|
|
52
52
|
return aiTable.records()[path[0]];
|
53
53
|
}
|
54
54
|
};
|
55
|
-
//# sourceMappingURL=data:application/json;base64,
|
55
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicXVlcmllcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2dyaWQvc3JjL2NvcmUvdXRpbHMvcXVlcmllcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUdwRCxNQUFNLENBQUMsTUFBTSxjQUFjLEdBQUc7SUFDMUIsY0FBYyxDQUFDLE9BQWdCLEVBQUUsTUFBcUI7UUFDbEQsTUFBTSxXQUFXLEdBQUcsTUFBTSxJQUFJLE9BQU8sQ0FBQyxPQUFPLEVBQUUsQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDaEUsSUFBSSxDQUFDLGlCQUFpQixDQUFDLFdBQVcsQ0FBQyxJQUFJLFdBQVcsR0FBRyxDQUFDLENBQUMsRUFBRSxDQUFDO1lBQ3RELE9BQU8sQ0FBQyxXQUFXLENBQWUsQ0FBQztRQUN2QyxDQUFDO1FBQ0QsTUFBTSxJQUFJLEtBQUssQ0FBQyxpQ0FBaUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxNQUFNLElBQUksRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUM5RixDQUFDO0lBQ0QsYUFBYSxDQUFDLE9BQWdCLEVBQUUsS0FBbUI7UUFDL0MsTUFBTSxVQUFVLEdBQUcsS0FBSyxJQUFJLE9BQU8sQ0FBQyxNQUFNLEVBQUUsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDNUQsSUFBSSxDQUFDLGlCQUFpQixDQUFDLFVBQVUsQ0FBQyxJQUFJLFVBQVUsR0FBRyxDQUFDLENBQUMsRUFBRSxDQUFDO1lBQ3BELE9BQU8sQ0FBQyxVQUFVLENBQWUsQ0FBQztRQUN0QyxDQUFDO1FBQ0QsTUFBTSxJQUFJLEtBQUssQ0FBQyxnQ0FBZ0MsSUFBSSxDQUFDLFNBQVMsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxLQUFLLElBQUksRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUM1RixDQUFDO0lBQ0QsYUFBYSxDQUFDLE9BQWdCLEVBQUUsSUFBd0I7UUFDcEQsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQ1gsTUFBTSxJQUFJLEtBQUssQ0FBQyx3QkFBd0IsQ0FBQyxDQUFDO1FBQzlDLENBQUM7UUFDRCxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sRUFBRSxFQUFFLENBQUM7WUFDckIsTUFBTSxJQUFJLEtBQUssQ0FBQyx3QkFBd0IsQ0FBQyxDQUFDO1FBQzlDLENBQUM7UUFDRCxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sRUFBRSxFQUFFLENBQUM7WUFDcEIsTUFBTSxJQUFJLEtBQUssQ0FBQyx1QkFBdUIsQ0FBQyxDQUFDO1FBQzdDLENBQUM7UUFDRCxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7WUFDUixNQUFNLElBQUksS0FBSyxDQUFDLGdDQUFnQyxJQUFJLEdBQUcsQ0FBQyxDQUFDO1FBQzdELENBQUM7UUFDRCxNQUFNLE1BQU0sR0FBRyxPQUFPLENBQUMsVUFBVSxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDN0MsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDO1lBQ1YsTUFBTSxJQUFJLEtBQUssQ0FBQyxnQ0FBZ0MsSUFBSSxHQUFHLENBQUMsQ0FBQztRQUM3RCxDQUFDO1FBQ0QsT0FBTyxNQUFNLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ2xDLENBQUM7SUFFRCxRQUFRLENBQUMsT0FBZ0IsRUFBRSxJQUFZO1FBQ25DLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztZQUNYLE1BQU0sSUFBSSxLQUFLLENBQUMsd0JBQXdCLENBQUMsQ0FBQztRQUM5QyxDQUFDO1FBQ0QsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO1lBQ1IsTUFBTSxJQUFJLEtBQUssQ0FBQyxnQ0FBZ0MsSUFBSSxHQUFHLENBQUMsQ0FBQztRQUM3RCxDQUFDO1FBQ0QsT0FBTyxPQUFPLENBQUMsTUFBTSxFQUFFLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQSxFQUFFLENBQUMsSUFBSSxDQUFDLEdBQUcsS0FBSyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUM5RCxDQUFDO0lBRUQsU0FBUyxDQUFDLE9BQWdCLEVBQUUsSUFBZ0I7UUFDeEMsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQ1gsTUFBTSxJQUFJLEtBQUssQ0FBQyx3QkFBd0IsQ0FBQyxDQUFDO1FBQzlDLENBQUM7UUFDRCxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7WUFDUixNQUFNLElBQUksS0FBSyxDQUFDLGdDQUFnQyxJQUFJLEdBQUcsQ0FBQyxDQUFDO1FBQzdELENBQUM7UUFDRCxPQUFPLE9BQU8sQ0FBQyxPQUFPLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUN0QyxDQUFDO0NBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGlzVW5kZWZpbmVkT3JOdWxsIH0gZnJvbSAnbmd4LXRldGh5cy91dGlsJztcbmltcG9ydCB7IEFJVGFibGUsIEFJVGFibGVGaWVsZCwgQUlUYWJsZVJlY29yZCwgQUlGaWVsZFZhbHVlSWRQYXRoLCBJZFBhdGgsIE51bWJlclBhdGggfSBmcm9tICcuLi90eXBlcyc7XG5cbmV4cG9ydCBjb25zdCBBSVRhYmxlUXVlcmllcyA9IHtcbiAgICBmaW5kUmVjb3JkUGF0aChhaVRhYmxlOiBBSVRhYmxlLCByZWNvcmQ6IEFJVGFibGVSZWNvcmQpIHtcbiAgICAgICAgY29uc3QgcmVjb3JkSW5kZXggPSByZWNvcmQgJiYgYWlUYWJsZS5yZWNvcmRzKCkuaW5kZXhPZihyZWNvcmQpO1xuICAgICAgICBpZiAoIWlzVW5kZWZpbmVkT3JOdWxsKHJlY29yZEluZGV4KSAmJiByZWNvcmRJbmRleCA+IC0xKSB7XG4gICAgICAgICAgICByZXR1cm4gW3JlY29yZEluZGV4XSBhcyBOdW1iZXJQYXRoO1xuICAgICAgICB9XG4gICAgICAgIHRocm93IG5ldyBFcnJvcihgY2FuIG5vdCBmaW5kIHRoZSByZWNvcmQgcGF0aDogJHtKU09OLnN0cmluZ2lmeSh7IC4uLihyZWNvcmQgfHwge30pIH0pfWApO1xuICAgIH0sXG4gICAgZmluZEZpZWxkUGF0aChhaVRhYmxlOiBBSVRhYmxlLCBmaWVsZDogQUlUYWJsZUZpZWxkKSB7XG4gICAgICAgIGNvbnN0IGZpZWxkSW5kZXggPSBmaWVsZCAmJiBhaVRhYmxlLmZpZWxkcygpLmluZGV4T2YoZmllbGQpO1xuICAgICAgICBpZiAoIWlzVW5kZWZpbmVkT3JOdWxsKGZpZWxkSW5kZXgpICYmIGZpZWxkSW5kZXggPiAtMSkge1xuICAgICAgICAgICAgcmV0dXJuIFtmaWVsZEluZGV4XSBhcyBOdW1iZXJQYXRoO1xuICAgICAgICB9XG4gICAgICAgIHRocm93IG5ldyBFcnJvcihgY2FuIG5vdCBmaW5kIHRoZSBmaWVsZCBwYXRoOiAke0pTT04uc3RyaW5naWZ5KHsgLi4uKGZpZWxkIHx8IHt9KSB9KX1gKTtcbiAgICB9LFxuICAgIGdldEZpZWxkVmFsdWUoYWlUYWJsZTogQUlUYWJsZSwgcGF0aDogQUlGaWVsZFZhbHVlSWRQYXRoKTogYW55IHtcbiAgICAgICAgaWYgKCFhaVRhYmxlKSB7XG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYGFpVGFibGUgZG9lcyBub3QgZXhpc3RgKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAoIWFpVGFibGUucmVjb3JkcygpKSB7XG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYGFpVGFibGUgaGFzIG5vIHJlY29yZHNgKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAoIWFpVGFibGUuZmllbGRzKCkpIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgYWlUYWJsZSBoYXMgbm8gZmllbGRzYCk7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKCFwYXRoKSB7XG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYHBhdGggZG9lcyBub3QgZXhpc3QgYXMgcGF0aCBbJHtwYXRofV1gKTtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCByZWNvcmQgPSBhaVRhYmxlLnJlY29yZHNNYXAoKVtwYXRoWzBdXTtcbiAgICAgICAgaWYgKCFyZWNvcmQpIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgY2FuIG5vdCBmaW5kIHJlY29yZCBhdCBwYXRoIFske3BhdGh9XWApO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiByZWNvcmQudmFsdWVzW3BhdGhbMV1dO1xuICAgIH0sXG5cbiAgICBnZXRGaWVsZChhaVRhYmxlOiBBSVRhYmxlLCBwYXRoOiBJZFBhdGgpOiBBSVRhYmxlRmllbGQgfCB1bmRlZmluZWQge1xuICAgICAgICBpZiAoIWFpVGFibGUpIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgYWlUYWJsZSBkb2VzIG5vdCBleGlzdGApO1xuICAgICAgICB9XG4gICAgICAgIGlmICghcGF0aCkge1xuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBwYXRoIGRvZXMgbm90IGV4aXN0IGFzIHBhdGggWyR7cGF0aH1dYCk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIGFpVGFibGUuZmllbGRzKCkuZmluZChpdGVtPT4gaXRlbS5faWQgPT09IHBhdGhbMF0pO1xuICAgIH0sXG5cbiAgICBnZXRSZWNvcmQoYWlUYWJsZTogQUlUYWJsZSwgcGF0aDogTnVtYmVyUGF0aCk6IEFJVGFibGVSZWNvcmQge1xuICAgICAgICBpZiAoIWFpVGFibGUpIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgYWlUYWJsZSBkb2VzIG5vdCBleGlzdGApO1xuICAgICAgICB9XG4gICAgICAgIGlmICghcGF0aCkge1xuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBwYXRoIGRvZXMgbm90IGV4aXN0IGFzIHBhdGggWyR7cGF0aH1dYCk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIGFpVGFibGUucmVjb3JkcygpW3BhdGhbMF1dO1xuICAgIH1cbn07XG4iXX0=
|