@ai-table/grid 0.1.25 → 0.1.27
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/constants/table.d.ts +1 -1
- package/constants/table.d.ts.map +1 -1
- package/fesm2022/ai-table-grid.mjs +128 -28
- package/fesm2022/ai-table-grid.mjs.map +1 -1
- package/grid.component.d.ts.map +1 -1
- package/package.json +1 -1
- package/renderer/components/field-stat/stat.component.d.ts +4 -14
- package/renderer/components/field-stat/stat.component.d.ts.map +1 -1
- package/renderer/components/frozen-field-shadow.component.d.ts +14 -0
- package/renderer/components/frozen-field-shadow.component.d.ts.map +1 -0
- package/renderer/components/index.d.ts +1 -0
- package/renderer/components/index.d.ts.map +1 -1
- package/renderer/creations/create-stats.d.ts.map +1 -1
- package/renderer/renderer.component.d.ts +1 -0
- package/renderer/renderer.component.d.ts.map +1 -1
- package/utils/drag-fill/drag-fill.d.ts +1 -0
- package/utils/drag-fill/drag-fill.d.ts.map +1 -1
- package/utils/i18n.d.ts +7 -1
- package/utils/i18n.d.ts.map +1 -1
package/constants/table.d.ts
CHANGED
@@ -84,7 +84,7 @@ export declare const AI_TABLE_AUTO_SCROLL_LEFT_THRESHOLD = 40;
|
|
84
84
|
export declare const AI_TABLE_AUTO_SCROLL_RIGHT_THRESHOLD = 40;
|
85
85
|
export declare const AI_TABLE_AUTO_SCROLL_TOP_THRESHOLD: number;
|
86
86
|
export declare const AI_TABLE_AUTO_SCROLL_BOTTOM_THRESHOLD: number;
|
87
|
-
export declare const
|
87
|
+
export declare const AI_TABLE_FIELD_STAT_INNER_HEIGHT = 47;
|
88
88
|
export declare const AI_TABLE_TEXT_LINE_HEIGHT = 1.84;
|
89
89
|
export declare const AI_TABLE_FIELD_STAT_CONTAINER_HEIGHT: number;
|
90
90
|
//# sourceMappingURL=table.d.ts.map
|
package/constants/table.d.ts.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"table.d.ts","sourceRoot":"","sources":["../../../packages/grid/src/constants/table.ts"],"names":[],"mappings":"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
|
1
|
+
{"version":3,"file":"table.d.ts","sourceRoot":"","sources":["../../../packages/grid/src/constants/table.ts"],"names":[],"mappings":"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"}
|
@@ -542,6 +542,9 @@ var AITableGridI18nKey;
|
|
542
542
|
AITableGridI18nKey["dateRangeOfDaysResult"] = "dateRangeOfDaysResult";
|
543
543
|
AITableGridI18nKey["dateRangeOfMonths"] = "dateRangeOfMonths";
|
544
544
|
AITableGridI18nKey["dateRangeOfMonthsResult"] = "dateRangeOfMonthsResult";
|
545
|
+
AITableGridI18nKey["selectedRecordsCount"] = "selectedRecordsCount";
|
546
|
+
AITableGridI18nKey["selectedCellsCount"] = "selectedCellsCount";
|
547
|
+
AITableGridI18nKey["stat"] = "stat";
|
545
548
|
})(AITableGridI18nKey || (AITableGridI18nKey = {}));
|
546
549
|
const AITableGridI18nText = {
|
547
550
|
[AITableGridI18nKey.dataPickerPlaceholder]: '选择日期',
|
@@ -590,7 +593,10 @@ const AITableGridI18nText = {
|
|
590
593
|
[AITableGridI18nKey.dateRangeOfDays]: '时间范围(日)',
|
591
594
|
[AITableGridI18nKey.dateRangeOfDaysResult]: '时间范围 {{statValue}} 天',
|
592
595
|
[AITableGridI18nKey.dateRangeOfMonths]: '时间范围(月)',
|
593
|
-
[AITableGridI18nKey.dateRangeOfMonthsResult]: '时间范围 {{statValue}} 月'
|
596
|
+
[AITableGridI18nKey.dateRangeOfMonthsResult]: '时间范围 {{statValue}} 月',
|
597
|
+
[AITableGridI18nKey.selectedRecordsCount]: '已经选择 {count} 条记录',
|
598
|
+
[AITableGridI18nKey.selectedCellsCount]: '已经选择 {count} 个单元格',
|
599
|
+
[AITableGridI18nKey.stat]: '统计'
|
594
600
|
};
|
595
601
|
const getDefaultI18nTextByKey = (key) => {
|
596
602
|
return AITableGridI18nText[key] || key;
|
@@ -897,9 +903,9 @@ const AI_TABLE_AUTO_SCROLL_LEFT_THRESHOLD = 40;
|
|
897
903
|
const AI_TABLE_AUTO_SCROLL_RIGHT_THRESHOLD = 40;
|
898
904
|
const AI_TABLE_AUTO_SCROLL_TOP_THRESHOLD = AI_TABLE_FIELD_HEAD_HEIGHT / 2;
|
899
905
|
const AI_TABLE_AUTO_SCROLL_BOTTOM_THRESHOLD = AI_TABLE_FIELD_HEAD_HEIGHT / 2;
|
900
|
-
const
|
906
|
+
const AI_TABLE_FIELD_STAT_INNER_HEIGHT = 47; // 字段统计内部高度
|
901
907
|
const AI_TABLE_TEXT_LINE_HEIGHT = 1.84; // 默认文本行高
|
902
|
-
const AI_TABLE_FIELD_STAT_CONTAINER_HEIGHT =
|
908
|
+
const AI_TABLE_FIELD_STAT_CONTAINER_HEIGHT = AI_TABLE_FIELD_STAT_INNER_HEIGHT + AI_TABLE_OFFSET * 2; // 统计容器高度
|
903
909
|
|
904
910
|
const MIN_COLUMN_WIDTH = 80;
|
905
911
|
const DBL_CLICK_EDIT_TYPE = [
|
@@ -1032,7 +1038,7 @@ class Coordinate {
|
|
1032
1038
|
*/
|
1033
1039
|
get totalHeight() {
|
1034
1040
|
const { offset, size } = this.getCellMetaData(this.rowCount - 1, AITableRowColumnType.row);
|
1035
|
-
return offset + size +
|
1041
|
+
return offset + size + AI_TABLE_FIELD_STAT_CONTAINER_HEIGHT;
|
1036
1042
|
}
|
1037
1043
|
/**
|
1038
1044
|
* 根据 rowIndex 获取对应行高
|
@@ -8264,6 +8270,51 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.10", ngImpo
|
|
8264
8270
|
}]
|
8265
8271
|
}] });
|
8266
8272
|
|
8273
|
+
class AITableFrozenFieldShadow {
|
8274
|
+
constructor() {
|
8275
|
+
this.config = input.required();
|
8276
|
+
this.position = input('table');
|
8277
|
+
this.coordinate = computed(() => {
|
8278
|
+
return this.config().coordinate;
|
8279
|
+
});
|
8280
|
+
this.scrollState = computed(() => {
|
8281
|
+
return this.config().aiTable.context.scrollState();
|
8282
|
+
});
|
8283
|
+
this.frozenAreaWidth = computed(() => {
|
8284
|
+
return this.config().aiTable.context.rowHeadWidth() + this.config().coordinate.frozenColumnWidth;
|
8285
|
+
});
|
8286
|
+
this.frozenShadowConfig = computed(() => {
|
8287
|
+
const { aiTable } = this.config();
|
8288
|
+
const coordinate = this.coordinate();
|
8289
|
+
const rowCount = aiTable.gridData().records.length;
|
8290
|
+
const height = this.position() !== 'fieldStats'
|
8291
|
+
? rowCount * coordinate.rowHeight + AI_TABLE_FIELD_HEAD_HEIGHT
|
8292
|
+
: this.config().height;
|
8293
|
+
return {
|
8294
|
+
visible: this.scrollState().scrollLeft > 0,
|
8295
|
+
x: this.frozenAreaWidth() + 1, // 偏移1,避免和边框重叠导致颜色太深
|
8296
|
+
y: 0,
|
8297
|
+
width: 8,
|
8298
|
+
height,
|
8299
|
+
fillLinearGradientStartPoint: { x: 0, y: 0 },
|
8300
|
+
fillLinearGradientEndPoint: { x: 8, y: 0 },
|
8301
|
+
fillLinearGradientColorStops: [0, 'rgba(0,0,0,0.05)', 1, Colors.transparent]
|
8302
|
+
};
|
8303
|
+
});
|
8304
|
+
}
|
8305
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.10", ngImport: i0, type: AITableFrozenFieldShadow, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
8306
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "19.2.10", type: AITableFrozenFieldShadow, isStandalone: true, selector: "ai-table-frozen-field-shadow", inputs: { config: { classPropertyName: "config", publicName: "config", isSignal: true, isRequired: true, transformFunction: null }, position: { classPropertyName: "position", publicName: "position", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: `<ko-rect [config]="frozenShadowConfig()"></ko-rect>`, isInline: true, dependencies: [{ kind: "component", type: KoShape, selector: "ko-shape, ko-circle, ko-label, ko-rect, ko-ellipse, ko-wedge, ko-line, ko-sprite, ko-image, ko-text, ko-text-path, ko-star, ko-ring, ko-arc, ko-tag, ko-path, ko-regular-polygon, ko-arrow, ko-transformer", inputs: ["config"], outputs: ["koMouseover", "koMousemove", "koMouseout", "koMouseenter", "koMouseleave", "koMousedown", "koMouseup", "koWheel", "koContextmenu", "koClick", "koDblclick", "koTouchstart", "koTouchmove", "koTouchend", "koTap", "koDbltap", "koDragstart", "koDragmove", "koDragend"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
8307
|
+
}
|
8308
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.10", ngImport: i0, type: AITableFrozenFieldShadow, decorators: [{
|
8309
|
+
type: Component,
|
8310
|
+
args: [{
|
8311
|
+
selector: 'ai-table-frozen-field-shadow',
|
8312
|
+
template: `<ko-rect [config]="frozenShadowConfig()"></ko-rect>`,
|
8313
|
+
imports: [KoShape],
|
8314
|
+
changeDetection: ChangeDetectionStrategy.OnPush
|
8315
|
+
}]
|
8316
|
+
}] });
|
8317
|
+
|
8267
8318
|
class AITableFillHandle {
|
8268
8319
|
constructor() {
|
8269
8320
|
this.config = input.required();
|
@@ -8453,7 +8504,7 @@ const createFieldStats = (config) => {
|
|
8453
8504
|
x,
|
8454
8505
|
y,
|
8455
8506
|
width: columnWidth,
|
8456
|
-
height:
|
8507
|
+
height: AI_TABLE_FIELD_STAT_INNER_HEIGHT,
|
8457
8508
|
field,
|
8458
8509
|
stroke: columnIndex === 0 ? colors.transparent : undefined,
|
8459
8510
|
isHoverStatContainer: isHoverStatContainer,
|
@@ -8495,6 +8546,7 @@ class AITableFieldStat {
|
|
8495
8546
|
this.config = input.required();
|
8496
8547
|
this.hover = output();
|
8497
8548
|
this.isActive = signal(false);
|
8549
|
+
this.isHover = signal(false);
|
8498
8550
|
this.availableTextWidth = computed(() => {
|
8499
8551
|
const { width } = this.config();
|
8500
8552
|
return width - AI_TABLE_ACTION_COMMON_SIZE - AI_TABLE_CELL_PADDING;
|
@@ -8520,8 +8572,9 @@ class AITableFieldStat {
|
|
8520
8572
|
};
|
8521
8573
|
});
|
8522
8574
|
this.bgConfig = computed(() => {
|
8523
|
-
const { field, width, height, coordinate, readonly } = this.config();
|
8524
|
-
|
8575
|
+
const { field, width, height, coordinate, readonly, aiTable } = this.config();
|
8576
|
+
const rowHeadWidth = aiTable.context.rowHeadWidth();
|
8577
|
+
const config = {
|
8525
8578
|
coordinate,
|
8526
8579
|
x: 0,
|
8527
8580
|
y: 0,
|
@@ -8530,13 +8583,29 @@ class AITableFieldStat {
|
|
8530
8583
|
fieldId: field._id,
|
8531
8584
|
mouseStyle: 'pointer'
|
8532
8585
|
}),
|
8533
|
-
width: width,
|
8586
|
+
width: this.isFirstColumn() ? width + AI_TABLE_OFFSET : width,
|
8534
8587
|
height: height,
|
8535
8588
|
fill: Colors.white,
|
8536
8589
|
hoverFill: Colors.gray100,
|
8537
8590
|
opacity: 1,
|
8538
8591
|
listening: !readonly
|
8539
8592
|
};
|
8593
|
+
if (this.renderText()) {
|
8594
|
+
config.borders = [false, true, false, true];
|
8595
|
+
config.stroke = Colors.gray200;
|
8596
|
+
config.strokeWidth = AI_TABLE_CELL_LINE_BORDER;
|
8597
|
+
}
|
8598
|
+
if (this.isFirstColumn()) {
|
8599
|
+
if (rowHeadWidth === 0) {
|
8600
|
+
config.borders = [false, true, false, false];
|
8601
|
+
}
|
8602
|
+
else {
|
8603
|
+
config.borders = [false, true, false, true];
|
8604
|
+
}
|
8605
|
+
config.stroke = Colors.gray200;
|
8606
|
+
config.strokeWidth = AI_TABLE_CELL_LINE_BORDER;
|
8607
|
+
}
|
8608
|
+
return config;
|
8540
8609
|
});
|
8541
8610
|
this.field = computed(() => {
|
8542
8611
|
const { field } = this.config();
|
@@ -8561,7 +8630,9 @@ class AITableFieldStat {
|
|
8561
8630
|
aiTable
|
8562
8631
|
};
|
8563
8632
|
});
|
8564
|
-
this.
|
8633
|
+
this.isActiveOrHover = computed(() => {
|
8634
|
+
return this.isActive() || this.isHover();
|
8635
|
+
});
|
8565
8636
|
this.renderText = computed(() => {
|
8566
8637
|
const field = this.field();
|
8567
8638
|
const records = this.records();
|
@@ -8569,16 +8640,18 @@ class AITableFieldStat {
|
|
8569
8640
|
const selectedInfo = this.selectedInfo();
|
8570
8641
|
if (this.isFirstColumn() && selectedInfo.isSelected) {
|
8571
8642
|
if (selectedInfo.selectedType === 'records') {
|
8572
|
-
|
8643
|
+
const result = getI18nTextByKey(this.aiTable(), AITableGridI18nKey.selectedRecordsCount);
|
8644
|
+
return result.replace('{count}', selectedInfo.selectedCount.toString());
|
8573
8645
|
}
|
8574
8646
|
else {
|
8575
|
-
|
8647
|
+
const result = getI18nTextByKey(this.aiTable(), AITableGridI18nKey.selectedCellsCount);
|
8648
|
+
return result.replace('{count}', selectedInfo.selectedCount.toString());
|
8576
8649
|
}
|
8577
8650
|
}
|
8578
8651
|
else {
|
8579
|
-
|
8580
|
-
if (!result && this.
|
8581
|
-
|
8652
|
+
let result = fieldModel.getStatFormatValue(records, this.options());
|
8653
|
+
if (!result && this.isActiveOrHover()) {
|
8654
|
+
result = getI18nTextByKey(this.aiTable(), AITableGridI18nKey.stat);
|
8582
8655
|
}
|
8583
8656
|
return result;
|
8584
8657
|
}
|
@@ -8648,6 +8721,7 @@ class AITableFieldStat {
|
|
8648
8721
|
});
|
8649
8722
|
}
|
8650
8723
|
onHoverChange(isHover) {
|
8724
|
+
this.isHover.set(isHover);
|
8651
8725
|
this.hover.emit(this.isActive() || isHover);
|
8652
8726
|
}
|
8653
8727
|
clickStat(e) {
|
@@ -8847,7 +8921,7 @@ class AITableRenderer {
|
|
8847
8921
|
this.statGroupConfig = computed(() => {
|
8848
8922
|
return {
|
8849
8923
|
x: 0,
|
8850
|
-
y: this.containerHeight() - AI_TABLE_FIELD_STAT_CONTAINER_HEIGHT
|
8924
|
+
y: this.containerHeight() - AI_TABLE_FIELD_STAT_CONTAINER_HEIGHT,
|
8851
8925
|
width: this.containerWidth(),
|
8852
8926
|
height: AI_TABLE_FIELD_STAT_CONTAINER_HEIGHT
|
8853
8927
|
};
|
@@ -8860,6 +8934,15 @@ class AITableRenderer {
|
|
8860
8934
|
clipHeight: this.gridContainerHeight()
|
8861
8935
|
};
|
8862
8936
|
});
|
8937
|
+
this.statCommonGroupConfig = computed(() => {
|
8938
|
+
return {
|
8939
|
+
x: AI_TABLE_OFFSET,
|
8940
|
+
clipX: this.frozenAreaWidth() + 1,
|
8941
|
+
clipY: 0,
|
8942
|
+
clipWidth: this.cellGroupClipWidth(),
|
8943
|
+
clipHeight: this.gridContainerHeight()
|
8944
|
+
};
|
8945
|
+
});
|
8863
8946
|
this.attachGroupConfig = computed(() => {
|
8864
8947
|
return {
|
8865
8948
|
clipX: this.frozenAreaWidth() - 1,
|
@@ -8942,8 +9025,8 @@ class AITableRenderer {
|
|
8942
9025
|
...this.columnHeadFieldConfig(),
|
8943
9026
|
width: this.cellGroupClipWidth(),
|
8944
9027
|
x: this.frozenAreaWidth(),
|
8945
|
-
y:
|
8946
|
-
height:
|
9028
|
+
y: AI_TABLE_OFFSET,
|
9029
|
+
height: AI_TABLE_FIELD_STAT_CONTAINER_HEIGHT,
|
8947
9030
|
isHoverStatContainer: this.isHoverStatContainer()
|
8948
9031
|
};
|
8949
9032
|
});
|
@@ -8952,7 +9035,7 @@ class AITableRenderer {
|
|
8952
9035
|
x: 0,
|
8953
9036
|
y: 0,
|
8954
9037
|
width: this.containerWidth(),
|
8955
|
-
height:
|
9038
|
+
height: AI_TABLE_FIELD_STAT_CONTAINER_HEIGHT,
|
8956
9039
|
fill: Colors.white,
|
8957
9040
|
stroke: Colors.gray200,
|
8958
9041
|
strokeWidth: AI_TABLE_CELL_LINE_BORDER,
|
@@ -8967,10 +9050,10 @@ class AITableRenderer {
|
|
8967
9050
|
...this.columnHeadFieldConfig(),
|
8968
9051
|
width: this.frozenAreaWidth(),
|
8969
9052
|
x: 0,
|
8970
|
-
y:
|
9053
|
+
y: AI_TABLE_OFFSET,
|
8971
9054
|
columnStartIndex: 0,
|
8972
9055
|
columnStopIndex: this.coordinate().frozenColumnCount - 1,
|
8973
|
-
height:
|
9056
|
+
height: AI_TABLE_FIELD_STAT_CONTAINER_HEIGHT,
|
8974
9057
|
isHoverStatContainer: this.isHoverStatContainer()
|
8975
9058
|
};
|
8976
9059
|
});
|
@@ -9056,7 +9139,7 @@ class AITableRenderer {
|
|
9056
9139
|
this.isHoverStatContainer.set(isHover);
|
9057
9140
|
}
|
9058
9141
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.10", ngImport: i0, type: AITableRenderer, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
9059
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.10", type: AITableRenderer, isStandalone: true, selector: "ai-table-renderer", inputs: { config: { classPropertyName: "config", publicName: "config", isSignal: true, isRequired: true, transformFunction: null } }, outputs: { koMousemove: "koMousemove", koMousedown: "koMousedown", koMouseup: "koMouseup", koContextmenu: "koContextmenu", koWheel: "koWheel", koClick: "koClick", koDblclick: "koDblclick", koMouseleave: "koMouseleave" }, ngImport: i0, template: "<ko-stage\n [config]=\"stageConfig()\"\n (koMousemove)=\"stageMousemove($event)\"\n (koMousedown)=\"stageMousedown($event)\"\n (koMouseup)=\"stageMouseup($event)\"\n (koContextmenu)=\"stageContextmenu($event)\"\n (koClick)=\"stageClick($event)\"\n (koDblclick)=\"stageDblclick($event)\"\n (koMouseleave)=\"stageMouseleave($event)\"\n>\n <ko-layer>\n <ko-group [config]=\"gridGroupConfig()\">\n <ko-group [config]=\"offsetYConfig()\">\n <ai-table-frozen-cells [config]=\"cellsConfig()\"></ai-table-frozen-cells>\n <ai-table-other-rows [config]=\"cellsConfig()\"></ai-table-other-rows>\n @if (!hiddenIndexColumn()) {\n <ai-table-hover-row-heads [config]=\"cellsConfig()\"></ai-table-hover-row-heads>\n }\n <ai-table-frozen-placeholder-cells [config]=\"cellsConfig()\"></ai-table-frozen-placeholder-cells>\n </ko-group>\n\n <ko-group>\n <ai-table-frozen-column-heads [config]=\"columnFrozenHeadFieldConfig()\"></ai-table-frozen-column-heads>\n </ko-group>\n
|
9142
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.10", type: AITableRenderer, isStandalone: true, selector: "ai-table-renderer", inputs: { config: { classPropertyName: "config", publicName: "config", isSignal: true, isRequired: true, transformFunction: null } }, outputs: { koMousemove: "koMousemove", koMousedown: "koMousedown", koMouseup: "koMouseup", koContextmenu: "koContextmenu", koWheel: "koWheel", koClick: "koClick", koDblclick: "koDblclick", koMouseleave: "koMouseleave" }, ngImport: i0, template: "<ko-stage\n [config]=\"stageConfig()\"\n (koMousemove)=\"stageMousemove($event)\"\n (koMousedown)=\"stageMousedown($event)\"\n (koMouseup)=\"stageMouseup($event)\"\n (koContextmenu)=\"stageContextmenu($event)\"\n (koClick)=\"stageClick($event)\"\n (koDblclick)=\"stageDblclick($event)\"\n (koMouseleave)=\"stageMouseleave($event)\"\n>\n <ko-layer>\n <ko-group [config]=\"gridGroupConfig()\">\n <ko-group [config]=\"offsetYConfig()\">\n <ai-table-frozen-cells [config]=\"cellsConfig()\"></ai-table-frozen-cells>\n <ai-table-other-rows [config]=\"cellsConfig()\"></ai-table-other-rows>\n @if (!hiddenIndexColumn()) {\n <ai-table-hover-row-heads [config]=\"cellsConfig()\"></ai-table-hover-row-heads>\n }\n <ai-table-frozen-placeholder-cells [config]=\"cellsConfig()\"></ai-table-frozen-placeholder-cells>\n </ko-group>\n\n <ko-group>\n <ai-table-frozen-column-heads [config]=\"columnFrozenHeadFieldConfig()\"></ai-table-frozen-column-heads>\n </ko-group>\n <ko-group [config]=\"commonGroupConfig()\">\n <ko-group [config]=\"offsetConfig()\">\n <ai-table-cells [config]=\"cellsConfig()\"></ai-table-cells>\n <ai-table-placeholder-cells [config]=\"cellsConfig()\"></ai-table-placeholder-cells>\n <ai-table-cover-cell [config]=\"cellsConfig()\"></ai-table-cover-cell>\n </ko-group>\n\n <ko-group [config]=\"offsetXConfig()\">\n <ai-table-column-heads [config]=\"columnHeadFieldConfig()\"></ai-table-column-heads>\n <ai-table-add-field [config]=\"columnHeadFieldConfig()\"></ai-table-add-field>\n </ko-group>\n </ko-group>\n\n <ko-group [config]=\"offsetYConfig()\">\n <ai-table-frozen-field-shadow [config]=\"config()\"></ai-table-frozen-field-shadow>\n </ko-group>\n\n <ko-group [config]=\"attachGroupConfig()\">\n <ko-group [config]=\"offsetConfig()\">\n @if (activeCellBorderConfig().activeCellBorder) {\n <ko-rect [config]=\"activeCellBorderConfig().activeCellBorder!\"></ko-rect>\n }\n @if (showExpandCellBorder().expandCellBorder) {\n <ai-table-cover-cell [config]=\"cellsConfig()\" [onlyDisplayBorder]=\"true\"></ai-table-cover-cell>\n }\n @if (!isLastSelectedCellInFrozenColumn()) {\n <ai-table-fill-handle [config]=\"fillHandleConfig()\"></ai-table-fill-handle>\n }\n </ko-group>\n </ko-group>\n <ko-group [config]=\"frozenCoverAttachGroupConfig()\">\n <ko-group [config]=\"offsetYConfig()\">\n <ai-table-cover-cell [config]=\"cellsConfig()\"></ai-table-cover-cell>\n </ko-group>\n </ko-group>\n\n <ko-group [config]=\"frozenAttachGroupConfig()\">\n <ko-group [config]=\"offsetYConfig()\">\n @if (activeCellBorderConfig().frozenActiveCellBorder) {\n <ko-rect [config]=\"activeCellBorderConfig().frozenActiveCellBorder!\"></ko-rect>\n }\n @if (showExpandCellBorder().frozenExpandCellBorder) {\n <ai-table-cover-cell [config]=\"cellsConfig()\" [onlyDisplayBorder]=\"true\"></ai-table-cover-cell>\n }\n @if (isLastSelectedCellInFrozenColumn()) {\n <ai-table-fill-handle [config]=\"fillHandleConfig()\"></ai-table-fill-handle>\n }\n </ko-group>\n </ko-group>\n </ko-group>\n\n <ko-group [config]=\"statGroupConfig()\">\n <ai-table-background [config]=\"columnFieldStatsBgConfig()\"></ai-table-background>\n <ko-group>\n <ai-table-column-stats\n [config]=\"columnFrozenFieldStatsConfig()\"\n (hover)=\"onStatContainerHover($event)\"\n ></ai-table-column-stats>\n </ko-group>\n <ko-group [config]=\"statCommonGroupConfig()\">\n <ko-group [config]=\"offsetXConfig()\">\n <ai-table-column-stats\n [config]=\"columnFieldStatsConfig()\"\n (hover)=\"onStatContainerHover($event)\"\n ></ai-table-column-stats>\n </ko-group>\n </ko-group>\n <ko-group>\n <ai-table-frozen-field-shadow [config]=\"columnFieldStatsConfig()\" position=\"fieldStats\"></ai-table-frozen-field-shadow>\n </ko-group>\n </ko-group>\n </ko-layer>\n</ko-stage>\n\n<ng-content></ng-content>\n", dependencies: [{ kind: "component", type: KoContainer, selector: "ko-layer, ko-fastlayer, ko-group" }, { kind: "component", type: KoStage, selector: "ko-stage", inputs: ["config"], outputs: ["koMouseover", "koMousemove", "koMouseout", "koMouseenter", "koMouseleave", "koMousedown", "koMouseup", "koWheel", "koContextmenu", "koClick", "koDblclick", "koTouchstart", "koTouchmove", "koTouchend", "koTap", "koDbltap", "koDragstart", "koDragmove", "koDragend"] }, { kind: "component", type: KoShape, selector: "ko-shape, ko-circle, ko-label, ko-rect, ko-ellipse, ko-wedge, ko-line, ko-sprite, ko-image, ko-text, ko-text-path, ko-star, ko-ring, ko-arc, ko-tag, ko-path, ko-regular-polygon, ko-arrow, ko-transformer", inputs: ["config"], outputs: ["koMouseover", "koMousemove", "koMouseout", "koMouseenter", "koMouseleave", "koMousedown", "koMouseup", "koWheel", "koContextmenu", "koClick", "koDblclick", "koTouchstart", "koTouchmove", "koTouchend", "koTap", "koDbltap", "koDragstart", "koDragmove", "koDragend"] }, { kind: "component", type: AITableColumnHeads, selector: "ai-table-column-heads", inputs: ["config"] }, { kind: "component", type: AITableFrozenColumnHeads, selector: "ai-table-frozen-column-heads", inputs: ["config"] }, { kind: "component", type: AITableCells, selector: "ai-table-cells", inputs: ["config"] }, { kind: "component", type: AITableFrozenCells, selector: "ai-table-frozen-cells", inputs: ["config"] }, { kind: "component", type: AITableFrozenPlaceholderCells, selector: "ai-table-frozen-placeholder-cells", inputs: ["config"] }, { kind: "component", type: AITableCoverCells, selector: "ai-table-cover-cell", inputs: ["config", "onlyDisplayBorder"] }, { kind: "component", type: AITablePlaceholderCells, selector: "ai-table-placeholder-cells", inputs: ["config"] }, { kind: "component", type: AITableAddField, selector: "ai-table-add-field", inputs: ["config"] }, { kind: "component", type: AITableHoverRowHeads, selector: "ai-table-hover-row-heads", inputs: ["config"] }, { kind: "component", type: AITableOtherRows, selector: "ai-table-other-rows", inputs: ["config"] }, { kind: "component", type: AITableFillHandle, selector: "ai-table-fill-handle", inputs: ["config"] }, { kind: "component", type: AITableFieldStats, selector: "ai-table-column-stats", inputs: ["config"], outputs: ["hover"] }, { kind: "component", type: AITableBackground, selector: "ai-table-background", inputs: ["config", "isActive", "isHover"], outputs: ["koClick", "hover", "koMouseenter", "koMouseleave", "isHoverChange"] }, { kind: "component", type: AITableFrozenFieldShadow, selector: "ai-table-frozen-field-shadow", inputs: ["config", "position"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
9060
9143
|
}
|
9061
9144
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.10", ngImport: i0, type: AITableRenderer, decorators: [{
|
9062
9145
|
type: Component,
|
@@ -9076,8 +9159,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.10", ngImpo
|
|
9076
9159
|
AITableOtherRows,
|
9077
9160
|
AITableFillHandle,
|
9078
9161
|
AITableFieldStats,
|
9079
|
-
AITableBackground
|
9080
|
-
|
9162
|
+
AITableBackground,
|
9163
|
+
AITableFrozenFieldShadow
|
9164
|
+
], changeDetection: ChangeDetectionStrategy.OnPush, template: "<ko-stage\n [config]=\"stageConfig()\"\n (koMousemove)=\"stageMousemove($event)\"\n (koMousedown)=\"stageMousedown($event)\"\n (koMouseup)=\"stageMouseup($event)\"\n (koContextmenu)=\"stageContextmenu($event)\"\n (koClick)=\"stageClick($event)\"\n (koDblclick)=\"stageDblclick($event)\"\n (koMouseleave)=\"stageMouseleave($event)\"\n>\n <ko-layer>\n <ko-group [config]=\"gridGroupConfig()\">\n <ko-group [config]=\"offsetYConfig()\">\n <ai-table-frozen-cells [config]=\"cellsConfig()\"></ai-table-frozen-cells>\n <ai-table-other-rows [config]=\"cellsConfig()\"></ai-table-other-rows>\n @if (!hiddenIndexColumn()) {\n <ai-table-hover-row-heads [config]=\"cellsConfig()\"></ai-table-hover-row-heads>\n }\n <ai-table-frozen-placeholder-cells [config]=\"cellsConfig()\"></ai-table-frozen-placeholder-cells>\n </ko-group>\n\n <ko-group>\n <ai-table-frozen-column-heads [config]=\"columnFrozenHeadFieldConfig()\"></ai-table-frozen-column-heads>\n </ko-group>\n <ko-group [config]=\"commonGroupConfig()\">\n <ko-group [config]=\"offsetConfig()\">\n <ai-table-cells [config]=\"cellsConfig()\"></ai-table-cells>\n <ai-table-placeholder-cells [config]=\"cellsConfig()\"></ai-table-placeholder-cells>\n <ai-table-cover-cell [config]=\"cellsConfig()\"></ai-table-cover-cell>\n </ko-group>\n\n <ko-group [config]=\"offsetXConfig()\">\n <ai-table-column-heads [config]=\"columnHeadFieldConfig()\"></ai-table-column-heads>\n <ai-table-add-field [config]=\"columnHeadFieldConfig()\"></ai-table-add-field>\n </ko-group>\n </ko-group>\n\n <ko-group [config]=\"offsetYConfig()\">\n <ai-table-frozen-field-shadow [config]=\"config()\"></ai-table-frozen-field-shadow>\n </ko-group>\n\n <ko-group [config]=\"attachGroupConfig()\">\n <ko-group [config]=\"offsetConfig()\">\n @if (activeCellBorderConfig().activeCellBorder) {\n <ko-rect [config]=\"activeCellBorderConfig().activeCellBorder!\"></ko-rect>\n }\n @if (showExpandCellBorder().expandCellBorder) {\n <ai-table-cover-cell [config]=\"cellsConfig()\" [onlyDisplayBorder]=\"true\"></ai-table-cover-cell>\n }\n @if (!isLastSelectedCellInFrozenColumn()) {\n <ai-table-fill-handle [config]=\"fillHandleConfig()\"></ai-table-fill-handle>\n }\n </ko-group>\n </ko-group>\n <ko-group [config]=\"frozenCoverAttachGroupConfig()\">\n <ko-group [config]=\"offsetYConfig()\">\n <ai-table-cover-cell [config]=\"cellsConfig()\"></ai-table-cover-cell>\n </ko-group>\n </ko-group>\n\n <ko-group [config]=\"frozenAttachGroupConfig()\">\n <ko-group [config]=\"offsetYConfig()\">\n @if (activeCellBorderConfig().frozenActiveCellBorder) {\n <ko-rect [config]=\"activeCellBorderConfig().frozenActiveCellBorder!\"></ko-rect>\n }\n @if (showExpandCellBorder().frozenExpandCellBorder) {\n <ai-table-cover-cell [config]=\"cellsConfig()\" [onlyDisplayBorder]=\"true\"></ai-table-cover-cell>\n }\n @if (isLastSelectedCellInFrozenColumn()) {\n <ai-table-fill-handle [config]=\"fillHandleConfig()\"></ai-table-fill-handle>\n }\n </ko-group>\n </ko-group>\n </ko-group>\n\n <ko-group [config]=\"statGroupConfig()\">\n <ai-table-background [config]=\"columnFieldStatsBgConfig()\"></ai-table-background>\n <ko-group>\n <ai-table-column-stats\n [config]=\"columnFrozenFieldStatsConfig()\"\n (hover)=\"onStatContainerHover($event)\"\n ></ai-table-column-stats>\n </ko-group>\n <ko-group [config]=\"statCommonGroupConfig()\">\n <ko-group [config]=\"offsetXConfig()\">\n <ai-table-column-stats\n [config]=\"columnFieldStatsConfig()\"\n (hover)=\"onStatContainerHover($event)\"\n ></ai-table-column-stats>\n </ko-group>\n </ko-group>\n <ko-group>\n <ai-table-frozen-field-shadow [config]=\"columnFieldStatsConfig()\" position=\"fieldStats\"></ai-table-frozen-field-shadow>\n </ko-group>\n </ko-group>\n </ko-layer>\n</ko-stage>\n\n<ng-content></ng-content>\n" }]
|
9081
9165
|
}] });
|
9082
9166
|
|
9083
9167
|
class AITableCellRate extends CoverCellComponent {
|
@@ -11227,6 +11311,7 @@ class AITableGrid extends AITableGridBase {
|
|
11227
11311
|
};
|
11228
11312
|
this.dragFillState = {
|
11229
11313
|
isDragging: false,
|
11314
|
+
activeCell: null,
|
11230
11315
|
sourceCells: new Set()
|
11231
11316
|
};
|
11232
11317
|
this.notifyService = inject(ThyNotifyService);
|
@@ -11525,7 +11610,7 @@ class AITableGrid extends AITableGridBase {
|
|
11525
11610
|
if (this.dragFillState.isDragging) {
|
11526
11611
|
setMouseStyle('crosshair', this.containerElement());
|
11527
11612
|
const { highlightStartCell, highlightEndCell } = dragFillHighlightArea(this.aiTable, this.dragFillState.sourceCells, recordId);
|
11528
|
-
activeCell = this.
|
11613
|
+
activeCell = this.dragFillState.activeCell;
|
11529
11614
|
startCell = highlightStartCell;
|
11530
11615
|
endCell = highlightEndCell;
|
11531
11616
|
}
|
@@ -11580,6 +11665,7 @@ class AITableGrid extends AITableGridBase {
|
|
11580
11665
|
return;
|
11581
11666
|
this.updateDragFillState({
|
11582
11667
|
isDragging: true,
|
11668
|
+
activeCell: this.aiTable.selection().activeCell,
|
11583
11669
|
sourceCells: this.aiTable.selection().selectedCells
|
11584
11670
|
});
|
11585
11671
|
return;
|
@@ -11619,7 +11705,7 @@ class AITableGrid extends AITableGridBase {
|
|
11619
11705
|
const gridStage = e.event.currentTarget.getStage();
|
11620
11706
|
const pos = gridStage?.getPointerPosition();
|
11621
11707
|
if (pos == null) {
|
11622
|
-
this.updateDragFillState({ isDragging: false, sourceCells: new Set() });
|
11708
|
+
this.updateDragFillState({ isDragging: false, activeCell: null, sourceCells: new Set() });
|
11623
11709
|
return;
|
11624
11710
|
}
|
11625
11711
|
const { context } = this.aiTable;
|
@@ -11629,7 +11715,7 @@ class AITableGrid extends AITableGridBase {
|
|
11629
11715
|
if (recordId) {
|
11630
11716
|
performFill(this.aiTable, this.dragFillState.sourceCells, recordId, this.actions);
|
11631
11717
|
}
|
11632
|
-
this.updateDragFillState({ isDragging: false, sourceCells: new Set() });
|
11718
|
+
this.updateDragFillState({ isDragging: false, activeCell: null, sourceCells: new Set() });
|
11633
11719
|
}
|
11634
11720
|
stageMouseleave(e) {
|
11635
11721
|
if (!this.isDragSelectionAutoScrolling) {
|
@@ -12044,7 +12130,21 @@ class AITableGrid extends AITableGridBase {
|
|
12044
12130
|
const nextField = gridData.fields[!isHorizontalScroll || scrollLeft > 0 ? nextCellIndex : nextCellIndex + 1];
|
12045
12131
|
const nextRecord = gridData.records[nextRowIndex];
|
12046
12132
|
if (nextField && nextRecord) {
|
12047
|
-
|
12133
|
+
let newStartCell = null;
|
12134
|
+
let newEndCell = null;
|
12135
|
+
let newActiveCell = null;
|
12136
|
+
if (this.dragFillState.isDragging) {
|
12137
|
+
const { highlightStartCell, highlightEndCell } = dragFillHighlightArea(this.aiTable, this.dragFillState.sourceCells, nextRecord._id);
|
12138
|
+
newStartCell = highlightStartCell;
|
12139
|
+
newEndCell = highlightEndCell;
|
12140
|
+
newActiveCell = this.dragFillState.activeCell;
|
12141
|
+
}
|
12142
|
+
else {
|
12143
|
+
newStartCell = [startCell[0], startCell[1]];
|
12144
|
+
newEndCell = [nextRecord._id, nextField._id];
|
12145
|
+
newActiveCell = null;
|
12146
|
+
}
|
12147
|
+
this.aiTableGridSelectionService.selectCells(newStartCell, newEndCell, newActiveCell);
|
12048
12148
|
}
|
12049
12149
|
}
|
12050
12150
|
},
|
@@ -12068,5 +12168,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.10", ngImpo
|
|
12068
12168
|
* Generated bundle index. Do not edit.
|
12069
12169
|
*/
|
12070
12170
|
|
12071
|
-
export { AITable, AITableActionIcon, AITableAddField, AITableAreaType, AITableAvatarSize, AITableAvatarType, AITableBackground, AITableCellAttachment, AITableCellLink, AITableCellProgress, AITableCellRate, AITableCellRichText, AITableCells, AITableCheckType, AITableColumnHeads, AITableContextMenu, AITableDomGrid, AITableFieldHead, AITableFieldIcon, AITableFieldIsSameOptionPipe, AITableFieldSetting, AITableFrozenCells, AITableFrozenColumnHeads, AITableFrozenPlaceholderCells, AITableGrid, AITableGridEventService, AITableGridFieldService, AITableGridI18nKey, AITableGridI18nText, AITableGridSelectionService, AITableHoverRowHeads, AITableIcon, AITableMemberType, AITableMouseDownType, AITableOtherRows, AITablePlaceholderCells, AITableQueries, AITableRenderer, AITableRowType, AITableSelectAllState, AITableTextComponent, AI_TABLE_ACTION_COMMON_RADIUS, AI_TABLE_ACTION_COMMON_RIGHT_PADDING, AI_TABLE_ACTION_COMMON_SIZE, AI_TABLE_AUTO_SCROLL_BOTTOM_THRESHOLD, AI_TABLE_AUTO_SCROLL_LEFT_THRESHOLD, AI_TABLE_AUTO_SCROLL_RIGHT_THRESHOLD, AI_TABLE_AUTO_SCROLL_TOP_THRESHOLD, AI_TABLE_BLANK, AI_TABLE_CELL, AI_TABLE_CELL_ACTIVE_BORDER_WIDTH, AI_TABLE_CELL_ADD_ITEM_BUTTON_SIZE, AI_TABLE_CELL_ATTACHMENT_ADD, AI_TABLE_CELL_ATTACHMENT_FILE, AI_TABLE_CELL_BORDER, AI_TABLE_CELL_DELETE_ITEM_BUTTON_SIZE, AI_TABLE_CELL_DELETE_ITEM_BUTTON_SIZE_OFFSET, AI_TABLE_CELL_EDIT, AI_TABLE_CELL_EMOJI_PADDING, AI_TABLE_CELL_EMOJI_SIZE, AI_TABLE_CELL_FIELD_ITEM_HEIGHT, AI_TABLE_CELL_LINE_BORDER, AI_TABLE_CELL_MAX_ROW_COUNT, AI_TABLE_CELL_MEMBER_ITEM_HEIGHT, AI_TABLE_CELL_MEMBER_ITEM_PADDING, AI_TABLE_CELL_MEMBER_MAX_HEIGHT, AI_TABLE_CELL_MULTI_DOT_RADIUS, AI_TABLE_CELL_MULTI_ITEM_MARGIN_LEFT, AI_TABLE_CELL_MULTI_ITEM_MARGIN_TOP, AI_TABLE_CELL_MULTI_ITEM_MIN_WIDTH, AI_TABLE_CELL_MULTI_PADDING_LEFT, AI_TABLE_CELL_MULTI_PADDING_TOP, AI_TABLE_CELL_PADDING, AI_TABLE_COMMON_FONT_SIZE, AI_TABLE_DEFAULT_COLUMN_WIDTH, AI_TABLE_DOT_RADIUS, AI_TABLE_FIELD_ADD_BUTTON, AI_TABLE_FIELD_ADD_BUTTON_WIDTH, AI_TABLE_FIELD_HEAD, AI_TABLE_FIELD_HEAD_HEIGHT, AI_TABLE_FIELD_HEAD_ICON_GAP_SIZE, AI_TABLE_FIELD_HEAD_MORE, AI_TABLE_FIELD_HEAD_OPACITY_LINE, AI_TABLE_FIELD_HEAD_SELECT_CHECKBOX, AI_TABLE_FIELD_HEAD_TEXT_MIN_WIDTH, AI_TABLE_FIELD_ITEM_MARGIN_RIGHT, AI_TABLE_FIELD_MAX_WIDTH, AI_TABLE_FIELD_MIDDLE_WIDTH, AI_TABLE_FIELD_MINI_WIDTH, AI_TABLE_FIELD_MIN_WIDTH, AI_TABLE_FIELD_STAT_BG, AI_TABLE_FIELD_STAT_CONTAINER_HEIGHT,
|
12171
|
+
export { AITable, AITableActionIcon, AITableAddField, AITableAreaType, AITableAvatarSize, AITableAvatarType, AITableBackground, AITableCellAttachment, AITableCellLink, AITableCellProgress, AITableCellRate, AITableCellRichText, AITableCells, AITableCheckType, AITableColumnHeads, AITableContextMenu, AITableDomGrid, AITableFieldHead, AITableFieldIcon, AITableFieldIsSameOptionPipe, AITableFieldSetting, AITableFrozenCells, AITableFrozenColumnHeads, AITableFrozenFieldShadow, AITableFrozenPlaceholderCells, AITableGrid, AITableGridEventService, AITableGridFieldService, AITableGridI18nKey, AITableGridI18nText, AITableGridSelectionService, AITableHoverRowHeads, AITableIcon, AITableMemberType, AITableMouseDownType, AITableOtherRows, AITablePlaceholderCells, AITableQueries, AITableRenderer, AITableRowType, AITableSelectAllState, AITableTextComponent, AI_TABLE_ACTION_COMMON_RADIUS, AI_TABLE_ACTION_COMMON_RIGHT_PADDING, AI_TABLE_ACTION_COMMON_SIZE, AI_TABLE_AUTO_SCROLL_BOTTOM_THRESHOLD, AI_TABLE_AUTO_SCROLL_LEFT_THRESHOLD, AI_TABLE_AUTO_SCROLL_RIGHT_THRESHOLD, AI_TABLE_AUTO_SCROLL_TOP_THRESHOLD, AI_TABLE_BLANK, AI_TABLE_CELL, AI_TABLE_CELL_ACTIVE_BORDER_WIDTH, AI_TABLE_CELL_ADD_ITEM_BUTTON_SIZE, AI_TABLE_CELL_ATTACHMENT_ADD, AI_TABLE_CELL_ATTACHMENT_FILE, AI_TABLE_CELL_BORDER, AI_TABLE_CELL_DELETE_ITEM_BUTTON_SIZE, AI_TABLE_CELL_DELETE_ITEM_BUTTON_SIZE_OFFSET, AI_TABLE_CELL_EDIT, AI_TABLE_CELL_EMOJI_PADDING, AI_TABLE_CELL_EMOJI_SIZE, AI_TABLE_CELL_FIELD_ITEM_HEIGHT, AI_TABLE_CELL_LINE_BORDER, AI_TABLE_CELL_MAX_ROW_COUNT, AI_TABLE_CELL_MEMBER_ITEM_HEIGHT, AI_TABLE_CELL_MEMBER_ITEM_PADDING, AI_TABLE_CELL_MEMBER_MAX_HEIGHT, AI_TABLE_CELL_MULTI_DOT_RADIUS, AI_TABLE_CELL_MULTI_ITEM_MARGIN_LEFT, AI_TABLE_CELL_MULTI_ITEM_MARGIN_TOP, AI_TABLE_CELL_MULTI_ITEM_MIN_WIDTH, AI_TABLE_CELL_MULTI_PADDING_LEFT, AI_TABLE_CELL_MULTI_PADDING_TOP, AI_TABLE_CELL_PADDING, AI_TABLE_COMMON_FONT_SIZE, AI_TABLE_DEFAULT_COLUMN_WIDTH, AI_TABLE_DOT_RADIUS, AI_TABLE_FIELD_ADD_BUTTON, AI_TABLE_FIELD_ADD_BUTTON_WIDTH, AI_TABLE_FIELD_HEAD, AI_TABLE_FIELD_HEAD_HEIGHT, AI_TABLE_FIELD_HEAD_ICON_GAP_SIZE, AI_TABLE_FIELD_HEAD_MORE, AI_TABLE_FIELD_HEAD_OPACITY_LINE, AI_TABLE_FIELD_HEAD_SELECT_CHECKBOX, AI_TABLE_FIELD_HEAD_TEXT_MIN_WIDTH, AI_TABLE_FIELD_ITEM_MARGIN_RIGHT, AI_TABLE_FIELD_MAX_WIDTH, AI_TABLE_FIELD_MIDDLE_WIDTH, AI_TABLE_FIELD_MINI_WIDTH, AI_TABLE_FIELD_MIN_WIDTH, AI_TABLE_FIELD_STAT_BG, AI_TABLE_FIELD_STAT_CONTAINER_HEIGHT, AI_TABLE_FIELD_STAT_INNER_HEIGHT, AI_TABLE_FILE_ICON_ITEM_HEIGHT, AI_TABLE_FILE_ICON_SIZE, AI_TABLE_FILL_HANDLE, AI_TABLE_GRID_FIELD_SERVICE_MAP, AI_TABLE_ICON_COMMON_SIZE, AI_TABLE_INDEX_FIELD_TEXT, AI_TABLE_MEMBER_AVATAR_SIZE, AI_TABLE_MEMBER_ITEM_AVATAR_MARGIN_RIGHT, AI_TABLE_MEMBER_ITEM_PADDING_RIGHT, AI_TABLE_MIN_TEXT_WIDTH, AI_TABLE_OFFSET, AI_TABLE_OPTION_ITEM_FONT_SIZE, AI_TABLE_OPTION_ITEM_HEIGHT, AI_TABLE_OPTION_ITEM_PADDING, AI_TABLE_OPTION_ITEM_RADIUS, AI_TABLE_OPTION_MULTI_ITEM_FONT_SIZE, AI_TABLE_PIECE_RADIUS, AI_TABLE_PIECE_WIDTH, AI_TABLE_POPOVER_LEFT_OFFSET, AI_TABLE_PREVENT_CLEAR_SELECTION_CLASS, AI_TABLE_PROGRESS_BAR_HEIGHT, AI_TABLE_PROGRESS_BAR_POINTER_HEIGHT, AI_TABLE_PROGRESS_BAR_POINTER_WIDTH, AI_TABLE_PROGRESS_BAR_RADIUS, AI_TABLE_PROGRESS_TEXT_WIDTH, AI_TABLE_RATE_MAX, AI_TABLE_ROW_ADD_BUTTON, AI_TABLE_ROW_BLANK_HEIGHT, AI_TABLE_ROW_DRAG, AI_TABLE_ROW_DRAG_ICON_WIDTH, AI_TABLE_ROW_HEAD, AI_TABLE_ROW_HEAD_SIZE, AI_TABLE_ROW_HEAD_WIDTH, AI_TABLE_ROW_HEAD_WIDTH_AND_DRAG_ICON_WIDTH, AI_TABLE_ROW_HEIGHT, AI_TABLE_ROW_SELECT_CHECKBOX, AI_TABLE_SCROLL_BAR_PADDING, AI_TABLE_SCROLL_BAR_SIZE, AI_TABLE_TAG_FONT_SIZE, AI_TABLE_TAG_PADDING, AI_TABLE_TEXT_GAP, AI_TABLE_TEXT_LINE_HEIGHT, AbstractEditCellEditor, AddOutlinedPath, AngleDownPath, AttachmentField, AttachmentPath, CellDrawer, Check, Colors, ColumnCalendarFilledPath, ColumnLinkOutlinedPath, ColumnMemberFilledPath, ColumnMultipleFillPath, ColumnNumberFilledPath, ColumnProgressFilledPath, ColumnRatingFilledPath, ColumnRichTextFilledPath, ColumnSelectFilledPath, ColumnTextFilledPath, Coordinate, CoverCellComponent, DBL_CLICK_EDIT_TYPE, DEFAULT_FONT_FAMILY, DEFAULT_FONT_SIZE, DEFAULT_FONT_STYLE, DEFAULT_FONT_WEIGHT, DEFAULT_ICON_SHAPE, DEFAULT_ICON_SIZE, DEFAULT_POINT_POSITION, DEFAULT_SCROLL_STATE, DEFAULT_TEXT_ALIGN_CENTER, DEFAULT_TEXT_ALIGN_LEFT, DEFAULT_TEXT_ALIGN_RIGHT, DEFAULT_TEXT_DECORATION, DEFAULT_TEXT_ELLIPSIS, DEFAULT_TEXT_FILL, DEFAULT_TEXT_LINE_HEIGHT, DEFAULT_TEXT_LISTENING, DEFAULT_TEXT_MAX_CACHE, DEFAULT_TEXT_MAX_HEIGHT, DEFAULT_TEXT_SCALE, DEFAULT_TEXT_TRANSFORMS_ENABLED, DEFAULT_TEXT_VERTICAL_ALIGN_MIDDLE, DEFAULT_TEXT_VERTICAL_ALIGN_TOP, DEFAULT_TEXT_WRAP, DEFAULT_WRAP_TEXT_MAX_ROW, DateCellEditorComponent, DateField, DepartmentOutlinedPath, Drawer, EditPath, FONT_SIZE_SM, FieldModelMap, IconPathMap, IsSelectRecordPipe, KO_CONTAINER_TOKEN, KoComponent, KoContainer, KoShape, KoShapeTypes, KoStage, LinkCellEditorComponent, LinkField, MIN_COLUMN_WIDTH, MemberField, MemberSettingPipe, MoreStandOutlinedPath, NumberCellEditorComponent, NumberField, ProgressField, RateField, RendererContext, RichTextField, RowDragPath, RowHeight, SelectCellEditorComponent, SelectField, SelectOptionComponent, SelectOptionPipe, SelectOptionsPipe, SelectSettingPipe, StarFill, TextCellEditorComponent, TextField, TextMeasure, Unchecked, UserPipe, WebOutlinedPath, aiTableFragmentAttribute, aiTableImageConfigToKonvaConfig, aiTableRectConfigToKonvaConfig, aiTableTextConfigToKonvaConfig, applyNodeProps, buildClipboardData, buildGridData, buildGridLinearRows, castToString, cellDrawer, clearCells, compareNumber, compareOption, compareString, createAITable, createActiveCellBorder, createCells, createDefaultField, createDefaultFieldName, createListener, dragFillHighlightArea, drawer, expandCell, extractLinkUrl, extractText, generateNewName, generateTargetName, getAvatarBgColor, getAvatarShortName, getCellEditorBorderSpace, getCellHorizontalPosition, getColumnIndicesSizeMap, getCoverCell, getDateFieldValues, getDefaultFieldOptions, getDefaultFieldValue, getDefaultI18nTextByKey, getDetailByTargetName, getEditorBoxOffset, getEditorSpace, getFieldOptionByField, getFieldOptionMap, getFieldOptions, getFieldValue, getFileThumbnailSvgString, getFillDirection, getHoverEditorBoxOffset, getHoverEditorSpace, getI18nTextByKey, getMousePosition, getName, getOptionsByFieldAndRecords, getPlaceHolderCellsConfigs, getStartAndEndCell, getSystemFieldValue, getTargetName, getTextWidth, getVisibleRangeInfo, graphemeSplitter, handleMouseStyle, hasIntersect, idCreator, idsCreator, imageCache, isActiveCell, isArrayField, isCellMatchKeywords, isClipboardReadSupported, isClipboardReadTextSupported, isClipboardWriteSupported, isClipboardWriteTextSupported, isDateFiled, isEmptyOrNot, isMac, isMeetFilter, isNumberFiled, isSameFieldOption, isSelectedField, isSystemField, isVirtualKey, isWindows, isWindowsOS, isWithinFrozenColumnBoundary, performFill, processPastedValueForSelect, readFromClipboard, scrollMax, setMouseStyle, shortIdCreator, shortIdsCreator, statDateRangeOfDays, statDateRangeOfMonths, statEarliestTime, statLatestTime, stringInclude, textDataCache, toAttachmentFieldValue, toDateFieldValue, toLinkFieldValue, toMemberFieldValue, toNumberFieldValue, toProgressFieldValue, toRateFieldValue, toRichTextFieldValue, toSelectFieldValue, toTextFieldValue, transformToCellText, updatePicture, writeToAITable, writeToClipboard, zhIntlCollator };
|
12072
12172
|
//# sourceMappingURL=ai-table-grid.mjs.map
|