@ai-table/grid 0.0.73 → 0.1.1
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/angular-konva/components/container.component.d.ts.map +1 -1
- package/angular-konva/components/shape.component.d.ts.map +1 -1
- package/angular-konva/components/stage.component.d.ts.map +1 -1
- package/components/cell-editors/abstract-cell-editor.component.d.ts.map +1 -1
- 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.map +1 -1
- package/components/cell-editors/link/link-editor.component.d.ts.map +1 -1
- package/components/cell-editors/number/number-editor.component.d.ts.map +1 -1
- package/components/cell-editors/select/select-editor.component.d.ts.map +1 -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/context-menu/context-menu.component.d.ts.map +1 -1
- package/components/drag/drag.component.d.ts.map +1 -1
- package/components/field-menu/field-menu.component.d.ts.map +1 -1
- package/components/field-setting/field-setting.component.d.ts.map +1 -1
- package/core/context.d.ts +2 -0
- package/core/context.d.ts.map +1 -1
- package/core/types/ai-table.d.ts.map +1 -1
- package/core/utils/field.d.ts.map +1 -1
- package/core/utils/queries.d.ts.map +1 -1
- package/core/utils/short-id.d.ts.map +1 -1
- package/dom-grid.component.d.ts.map +1 -1
- package/fesm2022/ai-table-grid.mjs +347 -317
- package/fesm2022/ai-table-grid.mjs.map +1 -1
- package/grid-base.component.d.ts +3 -1
- package/grid-base.component.d.ts.map +1 -1
- package/grid.component.d.ts +1 -1
- package/grid.component.d.ts.map +1 -1
- package/package.json +3 -5
- package/pipes/grid.pipe.d.ts.map +1 -1
- package/renderer/components/action-icon.component.d.ts.map +1 -1
- package/renderer/components/add-field-column.component.d.ts.map +1 -1
- package/renderer/components/cells/attachment.component.d.ts.map +1 -1
- package/renderer/components/cells/link.component.d.ts.map +1 -1
- package/renderer/components/cells/progress.component.d.ts.map +1 -1
- package/renderer/components/cells/rate.component.d.ts.map +1 -1
- package/renderer/components/cells/rich-text.component.d.ts.map +1 -1
- package/renderer/components/cells.component.d.ts.map +1 -1
- package/renderer/components/field-head.component.d.ts +2 -2
- package/renderer/components/field-head.component.d.ts.map +1 -1
- package/renderer/components/field-icon.component.d.ts.map +1 -1
- package/renderer/components/frozen-cells.component.d.ts.map +1 -1
- package/renderer/components/frozen-heads.component.d.ts +1 -1
- package/renderer/components/frozen-heads.component.d.ts.map +1 -1
- package/renderer/components/frozen-placeholder-cells.component.d.ts.map +1 -1
- package/renderer/components/heads.component.d.ts +1 -1
- package/renderer/components/heads.component.d.ts.map +1 -1
- package/renderer/components/hover-cell.component.d.ts.map +1 -1
- package/renderer/components/hover-row-heads.component.d.ts.map +1 -1
- package/renderer/components/icon.component.d.ts.map +1 -1
- package/renderer/components/other-rows.component.d.ts.map +1 -1
- package/renderer/components/placeholder-cells.component.d.ts.map +1 -1
- package/renderer/components/text.component.d.ts.map +1 -1
- package/renderer/creations/create-active-cell-border.d.ts.map +1 -1
- package/renderer/creations/create-cells.d.ts.map +1 -1
- package/renderer/creations/create-heads.d.ts.map +1 -1
- package/renderer/drawers/add-row-layout-drawer.d.ts +1 -1
- package/renderer/drawers/add-row-layout-drawer.d.ts.map +1 -1
- package/renderer/drawers/cell-drawer.d.ts.map +1 -1
- package/renderer/drawers/drawer.d.ts +1 -1
- package/renderer/renderer.component.d.ts +7 -4
- package/renderer/renderer.component.d.ts.map +1 -1
- package/types/cell.d.ts +2 -0
- package/types/cell.d.ts.map +1 -1
- package/types/component-config.d.ts +2 -0
- package/types/component-config.d.ts.map +1 -1
- package/types/grid.d.ts +4 -0
- package/types/grid.d.ts.map +1 -1
- package/types/row.d.ts +1 -0
- package/types/row.d.ts.map +1 -1
- package/utils/build.d.ts.map +1 -1
- package/utils/clipboard/clipboard.d.ts.map +1 -1
- package/utils/clipboard/copy.d.ts.map +1 -1
- package/utils/clipboard/paste.d.ts +5 -1
- package/utils/clipboard/paste.d.ts.map +1 -1
- package/utils/common.d.ts.map +1 -1
- package/utils/field/model/date.d.ts.map +1 -1
- package/utils/field/model/link.d.ts.map +1 -1
- package/utils/field/model/progress.d.ts.map +1 -1
- package/utils/field/model/select.d.ts +4 -1
- package/utils/field/model/select.d.ts.map +1 -1
- package/utils/field/model/text.d.ts.map +1 -1
- package/utils/get-text-width.d.ts.map +1 -1
- package/utils/i18n.d.ts +2 -0
- package/utils/i18n.d.ts.map +1 -1
- package/utils/match-keywords.d.ts.map +1 -1
- package/utils/position.d.ts.map +1 -1
- package/utils/style.d.ts.map +1 -1
- package/utils/text-measure.d.ts.map +1 -1
- package/utils/visible-range.d.ts.map +1 -1
- package/esm2022/ai-table-grid.mjs +0 -5
- package/esm2022/angular-konva/components/container.component.mjs +0 -29
- package/esm2022/angular-konva/components/container.token.mjs +0 -3
- package/esm2022/angular-konva/components/index.mjs +0 -4
- package/esm2022/angular-konva/components/shape.component.mjs +0 -142
- package/esm2022/angular-konva/components/stage.component.mjs +0 -123
- package/esm2022/angular-konva/index.mjs +0 -5
- package/esm2022/angular-konva/interfaces/component.mjs +0 -4
- package/esm2022/angular-konva/interfaces/config.mjs +0 -2
- package/esm2022/angular-konva/interfaces/event-object.mjs +0 -2
- package/esm2022/angular-konva/interfaces/index.mjs +0 -5
- package/esm2022/angular-konva/interfaces/shape.mjs +0 -42
- package/esm2022/angular-konva/utils/apply-node-props.mjs +0 -67
- package/esm2022/angular-konva/utils/common.mjs +0 -48
- package/esm2022/angular-konva/utils/index.mjs +0 -5
- package/esm2022/angular-konva/utils/types.mjs +0 -2
- package/esm2022/angular-konva/utils/update-picture.mjs +0 -7
- package/esm2022/components/cell-editors/abstract-cell-editor.component.mjs +0 -56
- package/esm2022/components/cell-editors/date/date-editor.component.mjs +0 -87
- package/esm2022/components/cell-editors/link/edit-link/edit-link.component.mjs +0 -81
- package/esm2022/components/cell-editors/link/link-editor.component.mjs +0 -122
- package/esm2022/components/cell-editors/number/number-editor.component.mjs +0 -41
- package/esm2022/components/cell-editors/select/select-editor.component.mjs +0 -74
- package/esm2022/components/cell-editors/text/text-editor.component.mjs +0 -76
- package/esm2022/components/cell-views/select/option.component.mjs +0 -28
- package/esm2022/components/context-menu/context-menu.component.mjs +0 -42
- package/esm2022/components/drag/drag.component.mjs +0 -300
- package/esm2022/components/field-menu/field-menu.component.mjs +0 -47
- package/esm2022/components/field-setting/field-setting.component.mjs +0 -142
- package/esm2022/components/index.mjs +0 -10
- package/esm2022/constants/colors.mjs +0 -19
- package/esm2022/constants/editor.mjs +0 -11
- package/esm2022/constants/file-icon.mjs +0 -342
- package/esm2022/constants/grid.mjs +0 -35
- package/esm2022/constants/icon.mjs +0 -30
- package/esm2022/constants/index.mjs +0 -7
- package/esm2022/constants/table.mjs +0 -78
- package/esm2022/constants/text.mjs +0 -23
- package/esm2022/core/constants/field.mjs +0 -107
- package/esm2022/core/context.mjs +0 -29
- package/esm2022/core/coordinate.mjs +0 -222
- package/esm2022/core/index.mjs +0 -6
- package/esm2022/core/types/ai-table.mjs +0 -57
- package/esm2022/core/types/core.mjs +0 -2
- package/esm2022/core/types/index.mjs +0 -3
- package/esm2022/core/utils/common.mjs +0 -45
- package/esm2022/core/utils/field.mjs +0 -64
- package/esm2022/core/utils/id-creator.mjs +0 -21
- package/esm2022/core/utils/index.mjs +0 -5
- package/esm2022/core/utils/queries.mjs +0 -80
- package/esm2022/core/utils/short-id.mjs +0 -53
- package/esm2022/dom-grid.component.mjs +0 -80
- package/esm2022/grid-base.component.mjs +0 -145
- package/esm2022/grid.component.mjs +0 -649
- package/esm2022/index.mjs +0 -2
- package/esm2022/pipes/grid.pipe.mjs +0 -110
- package/esm2022/pipes/index.mjs +0 -2
- package/esm2022/public-api.mjs +0 -12
- package/esm2022/renderer/components/action-icon.component.mjs +0 -117
- package/esm2022/renderer/components/add-field-column.component.mjs +0 -88
- package/esm2022/renderer/components/cells/attachment.component.mjs +0 -107
- package/esm2022/renderer/components/cells/cells.mjs +0 -6
- package/esm2022/renderer/components/cells/index.mjs +0 -7
- package/esm2022/renderer/components/cells/link.component.mjs +0 -89
- package/esm2022/renderer/components/cells/progress.component.mjs +0 -268
- package/esm2022/renderer/components/cells/rate.component.mjs +0 -153
- package/esm2022/renderer/components/cells/rich-text.component.mjs +0 -95
- package/esm2022/renderer/components/cells.component.mjs +0 -35
- package/esm2022/renderer/components/field-head.component.mjs +0 -146
- package/esm2022/renderer/components/field-icon.component.mjs +0 -72
- package/esm2022/renderer/components/frozen-cells.component.mjs +0 -36
- package/esm2022/renderer/components/frozen-heads.component.mjs +0 -214
- package/esm2022/renderer/components/frozen-placeholder-cells.component.mjs +0 -38
- package/esm2022/renderer/components/heads.component.mjs +0 -38
- package/esm2022/renderer/components/hover-cell.component.mjs +0 -104
- package/esm2022/renderer/components/hover-row-heads.component.mjs +0 -132
- package/esm2022/renderer/components/icon.component.mjs +0 -84
- package/esm2022/renderer/components/index.mjs +0 -15
- package/esm2022/renderer/components/other-rows.component.mjs +0 -68
- package/esm2022/renderer/components/placeholder-cells.component.mjs +0 -33
- package/esm2022/renderer/components/text.component.mjs +0 -67
- package/esm2022/renderer/creations/create-active-cell-border.mjs +0 -70
- package/esm2022/renderer/creations/create-cells.mjs +0 -190
- package/esm2022/renderer/creations/create-heads.mjs +0 -51
- package/esm2022/renderer/drawers/add-row-layout-drawer.mjs +0 -98
- package/esm2022/renderer/drawers/cell-drawer.mjs +0 -673
- package/esm2022/renderer/drawers/drawer.mjs +0 -947
- package/esm2022/renderer/drawers/layout-drawer.mjs +0 -64
- package/esm2022/renderer/drawers/record-row-layout-drawer.mjs +0 -131
- package/esm2022/renderer/index.mjs +0 -4
- package/esm2022/renderer/interfaces/hover-cell.mjs +0 -4
- package/esm2022/renderer/interfaces/index.mjs +0 -2
- package/esm2022/renderer/renderer.component.mjs +0 -197
- package/esm2022/services/event.service.mjs +0 -241
- package/esm2022/services/field.service.mjs +0 -56
- package/esm2022/services/index.mjs +0 -4
- package/esm2022/services/selection.service.mjs +0 -151
- package/esm2022/types/avatar.mjs +0 -27
- package/esm2022/types/canvas.mjs +0 -2
- package/esm2022/types/cell.mjs +0 -2
- package/esm2022/types/clipboard.mjs +0 -2
- package/esm2022/types/component-config.mjs +0 -7
- package/esm2022/types/field.mjs +0 -2
- package/esm2022/types/grid.mjs +0 -17
- package/esm2022/types/index.mjs +0 -10
- package/esm2022/types/layout.mjs +0 -2
- package/esm2022/types/row.mjs +0 -6
- package/esm2022/utils/build.mjs +0 -39
- package/esm2022/utils/cell.mjs +0 -80
- package/esm2022/utils/clear-cells.mjs +0 -23
- package/esm2022/utils/clipboard/clipboard.mjs +0 -88
- package/esm2022/utils/clipboard/copy.mjs +0 -99
- package/esm2022/utils/clipboard/extract.mjs +0 -38
- package/esm2022/utils/clipboard/index.mjs +0 -5
- package/esm2022/utils/clipboard/paste.mjs +0 -188
- package/esm2022/utils/common.mjs +0 -50
- package/esm2022/utils/field/field-operable.mjs +0 -2
- package/esm2022/utils/field/field.mjs +0 -20
- package/esm2022/utils/field/index.mjs +0 -4
- package/esm2022/utils/field/model/attachment.mjs +0 -56
- package/esm2022/utils/field/model/date.mjs +0 -141
- package/esm2022/utils/field/model/index.mjs +0 -12
- package/esm2022/utils/field/model/link.mjs +0 -56
- package/esm2022/utils/field/model/member.mjs +0 -81
- package/esm2022/utils/field/model/number.mjs +0 -59
- package/esm2022/utils/field/model/progress.mjs +0 -69
- package/esm2022/utils/field/model/rate.mjs +0 -58
- package/esm2022/utils/field/model/rich-text.mjs +0 -39
- package/esm2022/utils/field/model/select.mjs +0 -131
- package/esm2022/utils/field/model/text.mjs +0 -32
- package/esm2022/utils/field/operate.mjs +0 -73
- package/esm2022/utils/file.mjs +0 -116
- package/esm2022/utils/get-placeholder-cells.mjs +0 -66
- package/esm2022/utils/get-text-width.mjs +0 -30
- package/esm2022/utils/hover-cell.mjs +0 -25
- package/esm2022/utils/i18n.mjs +0 -87
- package/esm2022/utils/image-cache.mjs +0 -57
- package/esm2022/utils/index.mjs +0 -19
- package/esm2022/utils/match-keywords.mjs +0 -15
- package/esm2022/utils/os.mjs +0 -16
- package/esm2022/utils/position.mjs +0 -48
- package/esm2022/utils/style.mjs +0 -37
- package/esm2022/utils/text-measure.mjs +0 -122
- package/esm2022/utils/visible-range.mjs +0 -42
@@ -1,214 +0,0 @@
|
|
1
|
-
import { ChangeDetectionStrategy, Component, computed, input } from '@angular/core';
|
2
|
-
import { KoShape, KoContainer } from '../../angular-konva';
|
3
|
-
import { AI_TABLE_CELL_PADDING, AI_TABLE_FIELD_HEAD_SELECT_CHECKBOX, AI_TABLE_ICON_COMMON_SIZE, AI_TABLE_OFFSET, AI_TABLE_ROW_DRAG_ICON_WIDTH, Colors } from '../../constants';
|
4
|
-
import { AITableCheckType, AITableSelectAllState } from '../../types';
|
5
|
-
import { createColumnHeads } from '../creations/create-heads';
|
6
|
-
import { AITableFieldHead } from './field-head.component';
|
7
|
-
import { AITableIcon } from './icon.component';
|
8
|
-
import * as i0 from "@angular/core";
|
9
|
-
export class AITableFrozenColumnHeads {
|
10
|
-
constructor() {
|
11
|
-
this.config = input.required();
|
12
|
-
this.coordinate = computed(() => {
|
13
|
-
const config = this.config();
|
14
|
-
if (!config)
|
15
|
-
return null;
|
16
|
-
return config.coordinate;
|
17
|
-
});
|
18
|
-
this.hiddenIndexColumn = computed(() => {
|
19
|
-
const context = this.context();
|
20
|
-
if (!context)
|
21
|
-
return false;
|
22
|
-
return context?.aiFieldConfig()?.hiddenIndexColumn;
|
23
|
-
});
|
24
|
-
this.context = computed(() => {
|
25
|
-
const config = this.config();
|
26
|
-
if (!config)
|
27
|
-
return null;
|
28
|
-
return config?.aiTable.context;
|
29
|
-
});
|
30
|
-
this.isChecked = computed(() => {
|
31
|
-
const config = this.config();
|
32
|
-
if (!config)
|
33
|
-
return false;
|
34
|
-
return config.aiTable.selection().selectAllState === AITableSelectAllState.all;
|
35
|
-
});
|
36
|
-
this.fieldHeadHeight = computed(() => {
|
37
|
-
const coord = this.coordinate();
|
38
|
-
if (!coord)
|
39
|
-
return 0;
|
40
|
-
return coord.rowInitSize;
|
41
|
-
});
|
42
|
-
this.headConfigs = computed(() => {
|
43
|
-
const coord = this.coordinate();
|
44
|
-
if (!coord)
|
45
|
-
return [];
|
46
|
-
return createColumnHeads({
|
47
|
-
...this.config(),
|
48
|
-
columnStartIndex: 0,
|
49
|
-
columnStopIndex: coord.frozenColumnCount - 1
|
50
|
-
});
|
51
|
-
});
|
52
|
-
this.dragHeadBgConfig = computed(() => {
|
53
|
-
return {
|
54
|
-
x: AI_TABLE_OFFSET,
|
55
|
-
y: AI_TABLE_OFFSET,
|
56
|
-
width: AI_TABLE_ROW_DRAG_ICON_WIDTH,
|
57
|
-
height: this.fieldHeadHeight(),
|
58
|
-
fill: Colors.white,
|
59
|
-
listening: false
|
60
|
-
};
|
61
|
-
});
|
62
|
-
this.numberHeadBgConfig = computed(() => {
|
63
|
-
const ctx = this.context();
|
64
|
-
if (!ctx)
|
65
|
-
return { width: 0, height: 0 };
|
66
|
-
return {
|
67
|
-
x: AI_TABLE_OFFSET,
|
68
|
-
y: AI_TABLE_OFFSET,
|
69
|
-
width: ctx.rowHeadWidth() || 0,
|
70
|
-
height: this.fieldHeadHeight(),
|
71
|
-
fill: Colors.white,
|
72
|
-
listening: false
|
73
|
-
};
|
74
|
-
});
|
75
|
-
this.topLineConfig = computed(() => {
|
76
|
-
const ctx = this.context();
|
77
|
-
if (!ctx)
|
78
|
-
return { points: [0, 0, 0, 0] };
|
79
|
-
return {
|
80
|
-
x: AI_TABLE_OFFSET + AI_TABLE_ROW_DRAG_ICON_WIDTH,
|
81
|
-
y: AI_TABLE_OFFSET,
|
82
|
-
points: [0, 0, ctx.rowHeadWidth(), 0],
|
83
|
-
stroke: Colors.gray200,
|
84
|
-
strokeWidth: 1,
|
85
|
-
listening: false
|
86
|
-
};
|
87
|
-
});
|
88
|
-
this.bottomLineConfig = computed(() => {
|
89
|
-
const ctx = this.context();
|
90
|
-
if (!ctx)
|
91
|
-
return { points: [0, 0, 0, 0] };
|
92
|
-
return {
|
93
|
-
x: AI_TABLE_OFFSET + AI_TABLE_ROW_DRAG_ICON_WIDTH,
|
94
|
-
y: AI_TABLE_OFFSET,
|
95
|
-
points: [ctx.rowHeadWidth(), this.fieldHeadHeight(), 0, this.fieldHeadHeight()],
|
96
|
-
stroke: Colors.gray200,
|
97
|
-
strokeWidth: 1,
|
98
|
-
listening: false
|
99
|
-
};
|
100
|
-
});
|
101
|
-
this.iconConfig = computed(() => {
|
102
|
-
return {
|
103
|
-
name: AI_TABLE_FIELD_HEAD_SELECT_CHECKBOX,
|
104
|
-
x: AI_TABLE_CELL_PADDING + AI_TABLE_ROW_DRAG_ICON_WIDTH,
|
105
|
-
y: (this.fieldHeadHeight() - AI_TABLE_ICON_COMMON_SIZE) / 2,
|
106
|
-
type: this.isChecked() ? AITableCheckType.checked : AITableCheckType.unchecked,
|
107
|
-
fill: this.isChecked() || (this.config().pointPosition.targetName === AI_TABLE_FIELD_HEAD_SELECT_CHECKBOX && !this.isChecked())
|
108
|
-
? Colors.primary
|
109
|
-
: Colors.gray300
|
110
|
-
};
|
111
|
-
});
|
112
|
-
this.headBgConfig = computed(() => {
|
113
|
-
const coord = this.coordinate();
|
114
|
-
const ctx = this.context();
|
115
|
-
if (!coord || !ctx)
|
116
|
-
return { width: 0, height: 0 };
|
117
|
-
return {
|
118
|
-
x: ctx.rowHeadWidth(),
|
119
|
-
y: AI_TABLE_OFFSET,
|
120
|
-
width: coord.frozenColumnWidth + AI_TABLE_OFFSET,
|
121
|
-
height: this.fieldHeadHeight(),
|
122
|
-
stroke: Colors.gray200,
|
123
|
-
strokeWidth: this.hiddenIndexColumn() ? 0 : 1,
|
124
|
-
fill: Colors.transparent,
|
125
|
-
listening: false,
|
126
|
-
zIndex: 10
|
127
|
-
};
|
128
|
-
});
|
129
|
-
this.cellLinesConfig = computed(() => {
|
130
|
-
const coord = this.coordinate();
|
131
|
-
const ctx = this.context();
|
132
|
-
if (!coord || !ctx)
|
133
|
-
return [];
|
134
|
-
return [
|
135
|
-
{
|
136
|
-
x: ctx.rowHeadWidth(),
|
137
|
-
y: AI_TABLE_OFFSET,
|
138
|
-
points: [0, 0, coord.frozenColumnWidth + AI_TABLE_OFFSET, 0],
|
139
|
-
stroke: Colors.gray200,
|
140
|
-
strokeWidth: 1,
|
141
|
-
listening: false,
|
142
|
-
zIndex: 10
|
143
|
-
},
|
144
|
-
{
|
145
|
-
x: ctx.rowHeadWidth(),
|
146
|
-
y: AI_TABLE_OFFSET,
|
147
|
-
points: [coord.frozenColumnWidth + AI_TABLE_OFFSET, 0, coord.frozenColumnWidth + AI_TABLE_OFFSET, this.fieldHeadHeight()],
|
148
|
-
stroke: Colors.gray200,
|
149
|
-
strokeWidth: 1,
|
150
|
-
listening: false,
|
151
|
-
zIndex: 10
|
152
|
-
},
|
153
|
-
{
|
154
|
-
x: ctx.rowHeadWidth(),
|
155
|
-
y: AI_TABLE_OFFSET,
|
156
|
-
points: [0, this.fieldHeadHeight(), coord.frozenColumnWidth + AI_TABLE_OFFSET, this.fieldHeadHeight()],
|
157
|
-
stroke: Colors.gray200,
|
158
|
-
strokeWidth: 1,
|
159
|
-
listening: false,
|
160
|
-
zIndex: 10
|
161
|
-
}
|
162
|
-
];
|
163
|
-
});
|
164
|
-
}
|
165
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: AITableFrozenColumnHeads, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
166
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: AITableFrozenColumnHeads, isStandalone: true, selector: "ai-table-frozen-column-heads", inputs: { config: { classPropertyName: "config", publicName: "config", isSignal: true, isRequired: true, transformFunction: null } }, ngImport: i0, template: `
|
167
|
-
<ko-rect [config]="headBgConfig()"></ko-rect>
|
168
|
-
@if (!hiddenIndexColumn()) {
|
169
|
-
<ko-rect [config]="dragHeadBgConfig()"></ko-rect>
|
170
|
-
<ko-rect [config]="numberHeadBgConfig()"></ko-rect>
|
171
|
-
<ko-line [config]="topLineConfig()"></ko-line>
|
172
|
-
<ko-line [config]="bottomLineConfig()"></ko-line>
|
173
|
-
<ko-group>
|
174
|
-
<ai-table-icon [config]="iconConfig()"></ai-table-icon>
|
175
|
-
</ko-group>
|
176
|
-
} @else {
|
177
|
-
@for (lineConfig of cellLinesConfig(); track $index) {
|
178
|
-
<ko-line [config]="lineConfig"></ko-line>
|
179
|
-
}
|
180
|
-
}
|
181
|
-
@for (config of headConfigs(); track $index) {
|
182
|
-
<ai-table-field-head [config]="config"></ai-table-field-head>
|
183
|
-
}
|
184
|
-
`, 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"] }, { kind: "component", type: AITableFieldHead, selector: "ai-table-field-head", inputs: ["config"] }, { kind: "component", type: AITableIcon, selector: "ai-table-icon", inputs: ["config"] }, { kind: "component", type: KoContainer, selector: "ko-layer, ko-fastlayer, ko-group" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
185
|
-
}
|
186
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: AITableFrozenColumnHeads, decorators: [{
|
187
|
-
type: Component,
|
188
|
-
args: [{
|
189
|
-
selector: 'ai-table-frozen-column-heads',
|
190
|
-
template: `
|
191
|
-
<ko-rect [config]="headBgConfig()"></ko-rect>
|
192
|
-
@if (!hiddenIndexColumn()) {
|
193
|
-
<ko-rect [config]="dragHeadBgConfig()"></ko-rect>
|
194
|
-
<ko-rect [config]="numberHeadBgConfig()"></ko-rect>
|
195
|
-
<ko-line [config]="topLineConfig()"></ko-line>
|
196
|
-
<ko-line [config]="bottomLineConfig()"></ko-line>
|
197
|
-
<ko-group>
|
198
|
-
<ai-table-icon [config]="iconConfig()"></ai-table-icon>
|
199
|
-
</ko-group>
|
200
|
-
} @else {
|
201
|
-
@for (lineConfig of cellLinesConfig(); track $index) {
|
202
|
-
<ko-line [config]="lineConfig"></ko-line>
|
203
|
-
}
|
204
|
-
}
|
205
|
-
@for (config of headConfigs(); track $index) {
|
206
|
-
<ai-table-field-head [config]="config"></ai-table-field-head>
|
207
|
-
}
|
208
|
-
`,
|
209
|
-
standalone: true,
|
210
|
-
imports: [KoShape, AITableFieldHead, AITableIcon, KoContainer],
|
211
|
-
changeDetection: ChangeDetectionStrategy.OnPush
|
212
|
-
}]
|
213
|
-
}] });
|
214
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnJvemVuLWhlYWRzLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2dyaWQvc3JjL3JlbmRlcmVyL2NvbXBvbmVudHMvZnJvemVuLWhlYWRzLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLFFBQVEsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFcEYsT0FBTyxFQUFFLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUMzRCxPQUFPLEVBQ0gscUJBQXFCLEVBQ3JCLG1DQUFtQyxFQUNuQyx5QkFBeUIsRUFDekIsZUFBZSxFQUNmLDRCQUE0QixFQUM1QixNQUFNLEVBQ1QsTUFBTSxpQkFBaUIsQ0FBQztBQUN6QixPQUFPLEVBQUUsZ0JBQWdCLEVBQTRCLHFCQUFxQixFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQ2hHLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQzlELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQzFELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQzs7QUEyQi9DLE1BQU0sT0FBTyx3QkFBd0I7SUF6QnJDO1FBMEJJLFdBQU0sR0FBRyxLQUFLLENBQUMsUUFBUSxFQUE0QixDQUFDO1FBRXBELGVBQVUsR0FBRyxRQUFRLENBQUMsR0FBRyxFQUFFO1lBQ3ZCLE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztZQUM3QixJQUFJLENBQUMsTUFBTTtnQkFBRSxPQUFPLElBQUksQ0FBQztZQUN6QixPQUFPLE1BQU0sQ0FBQyxVQUFVLENBQUM7UUFDN0IsQ0FBQyxDQUFDLENBQUM7UUFFSCxzQkFBaUIsR0FBRyxRQUFRLENBQUMsR0FBRyxFQUFFO1lBQzlCLE1BQU0sT0FB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QixHQUFHLGVBQWUsRUFBRSxJQUFJLENBQUMsZUFBZSxFQUFFLENBQUM7b0JBQ3RHLE1BQU0sRUFBRSxNQUFNLENBQUMsT0FBTztvQkFDdEIsV0FBVyxFQUFFLENBQUM7b0JBQ2QsU0FBUyxFQUFFLEtBQUs7b0JBQ2hCLE1BQU0sRUFBRSxFQUFFO2lCQUNiO2FBQ0osQ0FBQztRQUNOLENBQUMsQ0FBQyxDQUFDO0tBQ047K0dBN0pZLHdCQUF3QjttR0FBeEIsd0JBQXdCLDhOQXZCdkI7Ozs7Ozs7Ozs7Ozs7Ozs7OztLQWtCVCw0REFFUyxPQUFPLCtoQkFBRSxnQkFBZ0Isb0ZBQUUsV0FBVyw4RUFBRSxXQUFXOzs0RkFHcEQsd0JBQXdCO2tCQXpCcEMsU0FBUzttQkFBQztvQkFDUCxRQUFRLEVBQUUsOEJBQThCO29CQUN4QyxRQUFRLEVBQUU7Ozs7Ozs7Ozs7Ozs7Ozs7OztLQWtCVDtvQkFDRCxVQUFVLEVBQUUsSUFBSTtvQkFDaEIsT0FBTyxFQUFFLENBQUMsT0FBTyxFQUFFLGdCQUFnQixFQUFFLFdBQVcsRUFBRSxXQUFXLENBQUM7b0JBQzlELGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNO2lCQUNsRCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIGNvbXB1dGVkLCBpbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU3RhZ2VDb25maWcgfSBmcm9tICdrb252YS9saWIvU3RhZ2UnO1xuaW1wb3J0IHsgS29TaGFwZSwgS29Db250YWluZXIgfSBmcm9tICcuLi8uLi9hbmd1bGFyLWtvbnZhJztcbmltcG9ydCB7XG4gICAgQUlfVEFCTEVfQ0VMTF9QQURESU5HLFxuICAgIEFJX1RBQkxFX0ZJRUxEX0hFQURfU0VMRUNUX0NIRUNLQk9YLFxuICAgIEFJX1RBQkxFX0lDT05fQ09NTU9OX1NJWkUsXG4gICAgQUlfVEFCTEVfT0ZGU0VULFxuICAgIEFJX1RBQkxFX1JPV19EUkFHX0lDT05fV0lEVEgsXG4gICAgQ29sb3JzXG59IGZyb20gJy4uLy4uL2NvbnN0YW50cyc7XG5pbXBvcnQgeyBBSVRhYmxlQ2hlY2tUeXBlLCBBSVRhYmxlQ29sdW1uSGVhZHNDb25maWcsIEFJVGFibGVTZWxlY3RBbGxTdGF0ZSB9IGZyb20gJy4uLy4uL3R5cGVzJztcbmltcG9ydCB7IGNyZWF0ZUNvbHVtbkhlYWRzIH0gZnJvbSAnLi4vY3JlYXRpb25zL2NyZWF0ZS1oZWFkcyc7XG5pbXBvcnQgeyBBSVRhYmxlRmllbGRIZWFkIH0gZnJvbSAnLi9maWVsZC1oZWFkLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBBSVRhYmxlSWNvbiB9IGZyb20gJy4vaWNvbi5jb21wb25lbnQnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2FpLXRhYmxlLWZyb3plbi1jb2x1bW4taGVhZHMnLFxuICAgIHRlbXBsYXRlOiBgXG4gICAgICAgIDxrby1yZWN0IFtjb25maWddPVwiaGVhZEJnQ29uZmlnKClcIj48L2tvLXJlY3Q+XG4gICAgICAgIEBpZiAoIWhpZGRlbkluZGV4Q29sdW1uKCkpIHtcbiAgICAgICAgICAgIDxrby1yZWN0IFtjb25maWddPVwiZHJhZ0hlYWRCZ0NvbmZpZygpXCI+PC9rby1yZWN0PlxuICAgICAgICAgICAgPGtvLXJlY3QgW2NvbmZpZ109XCJudW1iZXJIZWFkQmdDb25maWcoKVwiPjwva28tcmVjdD5cbiAgICAgICAgICAgIDxrby1saW5lIFtjb25maWddPVwidG9wTGluZUNvbmZpZygpXCI+PC9rby1saW5lPlxuICAgICAgICAgICAgPGtvLWxpbmUgW2NvbmZpZ109XCJib3R0b21MaW5lQ29uZmlnKClcIj48L2tvLWxpbmU+XG4gICAgICAgICAgICA8a28tZ3JvdXA+XG4gICAgICAgICAgICAgICAgPGFpLXRhYmxlLWljb24gW2NvbmZpZ109XCJpY29uQ29uZmlnKClcIj48L2FpLXRhYmxlLWljb24+XG4gICAgICAgICAgICA8L2tvLWdyb3VwPlxuICAgICAgICB9IEBlbHNlIHtcbiAgICAgICAgICAgIEBmb3IgKGxpbmVDb25maWcgb2YgY2VsbExpbmVzQ29uZmlnKCk7IHRyYWNrICRpbmRleCkge1xuICAgICAgICAgICAgICAgIDxrby1saW5lIFtjb25maWddPVwibGluZUNvbmZpZ1wiPjwva28tbGluZT5cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBAZm9yIChjb25maWcgb2YgaGVhZENvbmZpZ3MoKTsgdHJhY2sgJGluZGV4KSB7XG4gICAgICAgICAgICA8YWktdGFibGUtZmllbGQtaGVhZCBbY29uZmlnXT1cImNvbmZpZ1wiPjwvYWktdGFibGUtZmllbGQtaGVhZD5cbiAgICAgICAgfVxuICAgIGAsXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBpbXBvcnRzOiBbS29TaGFwZSwgQUlUYWJsZUZpZWxkSGVhZCwgQUlUYWJsZUljb24sIEtvQ29udGFpbmVyXSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxufSlcbmV4cG9ydCBjbGFzcyBBSVRhYmxlRnJvemVuQ29sdW1uSGVhZHMge1xuICAgIGNvbmZpZyA9IGlucHV0LnJlcXVpcmVkPEFJVGFibGVDb2x1bW5IZWFkc0NvbmZpZz4oKTtcblxuICAgIGNvb3JkaW5hdGUgPSBjb21wdXRlZCgoKSA9PiB7XG4gICAgICAgIGNvbnN0IGNvbmZpZyA9IHRoaXMuY29uZmlnKCk7XG4gICAgICAgIGlmICghY29uZmlnKSByZXR1cm4gbnVsbDtcbiAgICAgICAgcmV0dXJuIGNvbmZpZy5jb29yZGluYXRlO1xuICAgIH0pO1xuXG4gICAgaGlkZGVuSW5kZXhDb2x1bW4gPSBjb21wdXRlZCgoKSA9PiB7XG4gICAgICAgIGNvbnN0IGNvbnRleHQgPSB0aGlzLmNvbnRleHQoKTtcbiAgICAgICAgaWYgKCFjb250ZXh0KSByZXR1cm4gZmFsc2U7XG4gICAgICAgIHJldHVybiBjb250ZXh0Py5haUZpZWxkQ29uZmlnKCk/LmhpZGRlbkluZGV4Q29sdW1uO1xuICAgIH0pO1xuXG4gICAgY29udGV4dCA9IGNvbXB1dGVkKCgpID0+IHtcbiAgICAgICAgY29uc3QgY29uZmlnID0gdGhpcy5jb25maWcoKTtcbiAgICAgICAgaWYgKCFjb25maWcpIHJldHVybiBudWxsO1xuICAgICAgICByZXR1cm4gY29uZmlnPy5haVRhYmxlLmNvbnRleHQ7XG4gICAgfSk7XG5cbiAgICBpc0NoZWNrZWQgPSBjb21wdXRlZCgoKSA9PiB7XG4gICAgICAgIGNvbnN0IGNvbmZpZyA9IHRoaXMuY29uZmlnKCk7XG4gICAgICAgIGlmICghY29uZmlnKSByZXR1cm4gZmFsc2U7XG4gICAgICAgIHJldHVybiBjb25maWcuYWlUYWJsZS5zZWxlY3Rpb24oKS5zZWxlY3RBbGxTdGF0ZSA9PT0gQUlUYWJsZVNlbGVjdEFsbFN0YXRlLmFsbDtcbiAgICB9KTtcblxuICAgIGZpZWxkSGVhZEhlaWdodCA9IGNvbXB1dGVkKCgpID0+IHtcbiAgICAgICAgY29uc3QgY29vcmQgPSB0aGlzLmNvb3JkaW5hdGUoKTtcbiAgICAgICAgaWYgKCFjb29yZCkgcmV0dXJuIDA7XG4gICAgICAgIHJldHVybiBjb29yZC5yb3dJbml0U2l6ZTtcbiAgICB9KTtcblxuICAgIGhlYWRDb25maWdzID0gY29tcHV0ZWQoKCkgPT4ge1xuICAgICAgICBjb25zdCBjb29yZCA9IHRoaXMuY29vcmRpbmF0ZSgpO1xuICAgICAgICBpZiAoIWNvb3JkKSByZXR1cm4gW107XG4gICAgICAgIHJldHVybiBjcmVhdGVDb2x1bW5IZWFkcyh7XG4gICAgICAgICAgICAuLi50aGlzLmNvbmZpZygpLFxuICAgICAgICAgICAgY29sdW1uU3RhcnRJbmRleDogMCxcbiAgICAgICAgICAgIGNvbHVtblN0b3BJbmRleDogY29vcmQuZnJvemVuQ29sdW1uQ291bnQgLSAxXG4gICAgICAgIH0pO1xuICAgIH0pO1xuXG4gICAgZHJhZ0hlYWRCZ0NvbmZpZyA9IGNvbXB1dGVkPFBhcnRpYWw8U3RhZ2VDb25maWc+PigoKSA9PiB7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICB4OiBBSV9UQUJMRV9PRkZTRVQsXG4gICAgICAgICAgICB5OiBBSV9UQUJMRV9PRkZTRVQsXG4gICAgICAgICAgICB3aWR0aDogQUlfVEFCTEVfUk9XX0RSQUdfSUNPTl9XSURUSCxcbiAgICAgICAgICAgIGhlaWdodDogdGhpcy5maWVsZEhlYWRIZWlnaHQoKSxcbiAgICAgICAgICAgIGZpbGw6IENvbG9ycy53aGl0ZSxcbiAgICAgICAgICAgIGxpc3RlbmluZzogZmFsc2VcbiAgICAgICAgfTtcbiAgICB9KTtcblxuICAgIG51bWJlckhlYWRCZ0NvbmZpZyA9IGNvbXB1dGVkPFBhcnRpYWw8U3RhZ2VDb25maWc+PigoKSA9PiB7XG4gICAgICAgIGNvbnN0IGN0eCA9IHRoaXMuY29udGV4dCgpO1xuICAgICAgICBpZiAoIWN0eCkgcmV0dXJuIHsgd2lkdGg6IDAsIGhlaWdodDogMCB9O1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgeDogQUlfVEFCTEVfT0ZGU0VULFxuICAgICAgICAgICAgeTogQUlfVEFCTEVfT0ZGU0VULFxuICAgICAgICAgICAgd2lkdGg6IGN0eC5yb3dIZWFkV2lkdGgoKSB8fCAwLFxuICAgICAgICAgICAgaGVpZ2h0OiB0aGlzLmZpZWxkSGVhZEhlaWdodCgpLFxuICAgICAgICAgICAgZmlsbDogQ29sb3JzLndoaXRlLFxuICAgICAgICAgICAgbGlzdGVuaW5nOiBmYWxzZVxuICAgICAgICB9O1xuICAgIH0pO1xuXG4gICAgdG9wTGluZUNvbmZpZyA9IGNvbXB1dGVkKCgpID0+IHtcbiAgICAgICAgY29uc3QgY3R4ID0gdGhpcy5jb250ZXh0KCk7XG4gICAgICAgIGlmICghY3R4KSByZXR1cm4geyBwb2ludHM6IFswLCAwLCAwLCAwXSB9O1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgeDogQUlfVEFCTEVfT0ZGU0VUICsgQUlfVEFCTEVfUk9XX0RSQUdfSUNPTl9XSURUSCxcbiAgICAgICAgICAgIHk6IEFJX1RBQkxFX09GRlNFVCxcbiAgICAgICAgICAgIHBvaW50czogWzAsIDAsIGN0eC5yb3dIZWFkV2lkdGgoKSwgMF0sXG4gICAgICAgICAgICBzdHJva2U6IENvbG9ycy5ncmF5MjAwLFxuICAgICAgICAgICAgc3Ryb2tlV2lkdGg6IDEsXG4gICAgICAgICAgICBsaXN0ZW5pbmc6IGZhbHNlXG4gICAgICAgIH07XG4gICAgfSk7XG5cbiAgICBib3R0b21MaW5lQ29uZmlnID0gY29tcHV0ZWQoKCkgPT4ge1xuICAgICAgICBjb25zdCBjdHggPSB0aGlzLmNvbnRleHQoKTtcbiAgICAgICAgaWYgKCFjdHgpIHJldHVybiB7IHBvaW50czogWzAsIDAsIDAsIDBdIH07XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICB4OiBBSV9UQUJMRV9PRkZTRVQgKyBBSV9UQUJMRV9ST1dfRFJBR19JQ09OX1dJRFRILFxuICAgICAgICAgICAgeTogQUlfVEFCTEVfT0ZGU0VULFxuICAgICAgICAgICAgcG9pbnRzOiBbY3R4LnJvd0hlYWRXaWR0aCgpLCB0aGlzLmZpZWxkSGVhZEhlaWdodCgpLCAwLCB0aGlzLmZpZWxkSGVhZEhlaWdodCgpXSxcbiAgICAgICAgICAgIHN0cm9rZTogQ29sb3JzLmdyYXkyMDAsXG4gICAgICAgICAgICBzdHJva2VXaWR0aDogMSxcbiAgICAgICAgICAgIGxpc3RlbmluZzogZmFsc2VcbiAgICAgICAgfTtcbiAgICB9KTtcblxuICAgIGljb25Db25maWcgPSBjb21wdXRlZCgoKSA9PiB7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICBuYW1lOiBBSV9UQUJMRV9GSUVMRF9IRUFEX1NFTEVDVF9DSEVDS0JPWCxcbiAgICAgICAgICAgIHg6IEFJX1RBQkxFX0NFTExfUEFERElORyArIEFJX1RBQkxFX1JPV19EUkFHX0lDT05fV0lEVEgsXG4gICAgICAgICAgICB5OiAodGhpcy5maWVsZEhlYWRIZWlnaHQoKSAtIEFJX1RBQkxFX0lDT05fQ09NTU9OX1NJWkUpIC8gMixcbiAgICAgICAgICAgIHR5cGU6IHRoaXMuaXNDaGVja2VkKCkgPyBBSVRhYmxlQ2hlY2tUeXBlLmNoZWNrZWQgOiBBSVRhYmxlQ2hlY2tUeXBlLnVuY2hlY2tlZCxcbiAgICAgICAgICAgIGZpbGw6XG4gICAgICAgICAgICAgICAgdGhpcy5pc0NoZWNrZWQoKSB8fCAodGhpcy5jb25maWcoKS5wb2ludFBvc2l0aW9uLnRhcmdldE5hbWUgPT09IEFJX1RBQkxFX0ZJRUxEX0hFQURfU0VMRUNUX0NIRUNLQk9YICYmICF0aGlzLmlzQ2hlY2tlZCgpKVxuICAgICAgICAgICAgICAgICAgICA/IENvbG9ycy5wcmltYXJ5XG4gICAgICAgICAgICAgICAgICAgIDogQ29sb3JzLmdyYXkzMDBcbiAgICAgICAgfTtcbiAgICB9KTtcblxuICAgIGhlYWRCZ0NvbmZpZyA9IGNvbXB1dGVkKCgpID0+IHtcbiAgICAgICAgY29uc3QgY29vcmQgPSB0aGlzLmNvb3JkaW5hdGUoKTtcbiAgICAgICAgY29uc3QgY3R4ID0gdGhpcy5jb250ZXh0KCk7XG4gICAgICAgIGlmICghY29vcmQgfHwgIWN0eCkgcmV0dXJuIHsgd2lkdGg6IDAsIGhlaWdodDogMCB9O1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgeDogY3R4LnJvd0hlYWRXaWR0aCgpLFxuICAgICAgICAgICAgeTogQUlfVEFCTEVfT0ZGU0VULFxuICAgICAgICAgICAgd2lkdGg6IGNvb3JkLmZyb3plbkNvbHVtbldpZHRoICsgQUlfVEFCTEVfT0ZGU0VULFxuICAgICAgICAgICAgaGVpZ2h0OiB0aGlzLmZpZWxkSGVhZEhlaWdodCgpLFxuICAgICAgICAgICAgc3Ryb2tlOiBDb2xvcnMuZ3JheTIwMCxcbiAgICAgICAgICAgIHN0cm9rZVdpZHRoOiB0aGlzLmhpZGRlbkluZGV4Q29sdW1uKCkgPyAwIDogMSxcbiAgICAgICAgICAgIGZpbGw6IENvbG9ycy50cmFuc3BhcmVudCxcbiAgICAgICAgICAgIGxpc3RlbmluZzogZmFsc2UsXG4gICAgICAgICAgICB6SW5kZXg6IDEwXG4gICAgICAgIH07XG4gICAgfSk7XG5cbiAgICBjZWxsTGluZXNDb25maWcgPSBjb21wdXRlZCgoKSA9PiB7XG4gICAgICAgIGNvbnN0IGNvb3JkID0gdGhpcy5jb29yZGluYXRlKCk7XG4gICAgICAgIGNvbnN0IGN0eCA9IHRoaXMuY29udGV4dCgpO1xuICAgICAgICBpZiAoIWNvb3JkIHx8ICFjdHgpIHJldHVybiBbXTtcbiAgICAgICAgcmV0dXJuIFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICB4OiBjdHgucm93SGVhZFdpZHRoKCksXG4gICAgICAgICAgICAgICAgeTogQUlfVEFCTEVfT0ZGU0VULFxuICAgICAgICAgICAgICAgIHBvaW50czogWzAsIDAsIGNvb3JkLmZyb3plbkNvbHVtbldpZHRoICsgQUlfVEFCTEVfT0ZGU0VULCAwXSxcbiAgICAgICAgICAgICAgICBzdHJva2U6IENvbG9ycy5ncmF5MjAwLFxuICAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoOiAxLFxuICAgICAgICAgICAgICAgIGxpc3RlbmluZzogZmFsc2UsXG4gICAgICAgICAgICAgICAgekluZGV4OiAxMFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICB4OiBjdHgucm93SGVhZFdpZHRoKCksXG4gICAgICAgICAgICAgICAgeTogQUlfVEFCTEVfT0ZGU0VULFxuICAgICAgICAgICAgICAgIHBvaW50czogW2Nvb3JkLmZyb3plbkNvbHVtbldpZHRoICsgQUlfVEFCTEVfT0ZGU0VULCAwLCBjb29yZC5mcm96ZW5Db2x1bW5XaWR0aCArIEFJX1RBQkxFX09GRlNFVCwgdGhpcy5maWVsZEhlYWRIZWlnaHQoKV0sXG4gICAgICAgICAgICAgICAgc3Ryb2tlOiBDb2xvcnMuZ3JheTIwMCxcbiAgICAgICAgICAgICAgICBzdHJva2VXaWR0aDogMSxcbiAgICAgICAgICAgICAgICBsaXN0ZW5pbmc6IGZhbHNlLFxuICAgICAgICAgICAgICAgIHpJbmRleDogMTBcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgeDogY3R4LnJvd0hlYWRXaWR0aCgpLFxuICAgICAgICAgICAgICAgIHk6IEFJX1RBQkxFX09GRlNFVCxcbiAgICAgICAgICAgICAgICBwb2ludHM6IFswLCB0aGlzLmZpZWxkSGVhZEhlaWdodCgpLCBjb29yZC5mcm96ZW5Db2x1bW5XaWR0aCArIEFJX1RBQkxFX09GRlNFVCwgdGhpcy5maWVsZEhlYWRIZWlnaHQoKV0sXG4gICAgICAgICAgICAgICAgc3Ryb2tlOiBDb2xvcnMuZ3JheTIwMCxcbiAgICAgICAgICAgICAgICBzdHJva2VXaWR0aDogMSxcbiAgICAgICAgICAgICAgICBsaXN0ZW5pbmc6IGZhbHNlLFxuICAgICAgICAgICAgICAgIHpJbmRleDogMTBcbiAgICAgICAgICAgIH1cbiAgICAgICAgXTtcbiAgICB9KTtcbn1cbiJdfQ==
|
@@ -1,38 +0,0 @@
|
|
1
|
-
import { ChangeDetectionStrategy, Component, computed, input } from '@angular/core';
|
2
|
-
import { KoShape } from '../../angular-konva';
|
3
|
-
import { getPlaceHolderCellsConfigs } from '../../utils';
|
4
|
-
import * as i0 from "@angular/core";
|
5
|
-
export class AITableFrozenPlaceholderCells {
|
6
|
-
constructor() {
|
7
|
-
this.config = input.required();
|
8
|
-
this.frozenPlaceHolderCellsConfig = computed(() => {
|
9
|
-
const { coordinate } = this.config();
|
10
|
-
return getPlaceHolderCellsConfigs({
|
11
|
-
...this.config(),
|
12
|
-
columnStartIndex: 0,
|
13
|
-
columnStopIndex: coordinate.frozenColumnCount - 1
|
14
|
-
});
|
15
|
-
});
|
16
|
-
}
|
17
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: AITableFrozenPlaceholderCells, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
18
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: AITableFrozenPlaceholderCells, isStandalone: true, selector: "ai-table-frozen-placeholder-cells", inputs: { config: { classPropertyName: "config", publicName: "config", isSignal: true, isRequired: true, transformFunction: null } }, ngImport: i0, template: `
|
19
|
-
@for (item of frozenPlaceHolderCellsConfig(); track $index) {
|
20
|
-
<ko-rect [config]="item"></ko-rect>
|
21
|
-
}
|
22
|
-
`, 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 }); }
|
23
|
-
}
|
24
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: AITableFrozenPlaceholderCells, decorators: [{
|
25
|
-
type: Component,
|
26
|
-
args: [{
|
27
|
-
selector: 'ai-table-frozen-placeholder-cells',
|
28
|
-
template: `
|
29
|
-
@for (item of frozenPlaceHolderCellsConfig(); track $index) {
|
30
|
-
<ko-rect [config]="item"></ko-rect>
|
31
|
-
}
|
32
|
-
`,
|
33
|
-
standalone: true,
|
34
|
-
imports: [KoShape],
|
35
|
-
changeDetection: ChangeDetectionStrategy.OnPush
|
36
|
-
}]
|
37
|
-
}] });
|
38
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnJvemVuLXBsYWNlaG9sZGVyLWNlbGxzLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2dyaWQvc3JjL3JlbmRlcmVyL2NvbXBvbmVudHMvZnJvemVuLXBsYWNlaG9sZGVyLWNlbGxzLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLFFBQVEsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDcEYsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBRTlDLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLGFBQWEsQ0FBQzs7QUFhekQsTUFBTSxPQUFPLDZCQUE2QjtJQVgxQztRQVlJLFdBQU0sR0FBRyxLQUFLLENBQUMsUUFBUSxFQUFzQixDQUFDO1FBRTlDLGlDQUE0QixHQUFHLFFBQVEsQ0FBQyxHQUFHLEVBQUU7WUFDekMsTUFBTSxFQUFFLFVBQVUsRUFBRSxHQUFHLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztZQUNyQyxPQUFPLDBCQUEwQixDQUFDO2dCQUM5QixHQUFHLElBQUksQ0FBQyxNQUFNLEVBQUU7Z0JBQ2hCLGdCQUFnQixFQUFFLENBQUM7Z0JBQ25CLGVBQWUsRUFBRSxVQUFVLENBQUMsaUJBQWlCLEdBQUcsQ0FBQzthQUNwRCxDQUFDLENBQUM7UUFDUCxDQUFDLENBQUMsQ0FBQztLQUNOOytHQVhZLDZCQUE2QjttR0FBN0IsNkJBQTZCLG1PQVQ1Qjs7OztLQUlULDREQUVTLE9BQU87OzRGQUdSLDZCQUE2QjtrQkFYekMsU0FBUzttQkFBQztvQkFDUCxRQUFRLEVBQUUsbUNBQW1DO29CQUM3QyxRQUFRLEVBQUU7Ozs7S0FJVDtvQkFDRCxVQUFVLEVBQUUsSUFBSTtvQkFDaEIsT0FBTyxFQUFFLENBQUMsT0FBTyxDQUFDO29CQUNsQixlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTtpQkFDbEQiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBjb21wdXRlZCwgaW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEtvU2hhcGUgfSBmcm9tICcuLi8uLi9hbmd1bGFyLWtvbnZhJztcbmltcG9ydCB7IEFJVGFibGVDZWxsc0NvbmZpZyB9IGZyb20gJy4uLy4uL3R5cGVzJztcbmltcG9ydCB7IGdldFBsYWNlSG9sZGVyQ2VsbHNDb25maWdzIH0gZnJvbSAnLi4vLi4vdXRpbHMnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2FpLXRhYmxlLWZyb3plbi1wbGFjZWhvbGRlci1jZWxscycsXG4gICAgdGVtcGxhdGU6IGBcbiAgICAgICAgQGZvciAoaXRlbSBvZiBmcm96ZW5QbGFjZUhvbGRlckNlbGxzQ29uZmlnKCk7IHRyYWNrICRpbmRleCkge1xuICAgICAgICAgICAgPGtvLXJlY3QgW2NvbmZpZ109XCJpdGVtXCI+PC9rby1yZWN0PlxuICAgICAgICB9XG4gICAgYCxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIGltcG9ydHM6IFtLb1NoYXBlXSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxufSlcbmV4cG9ydCBjbGFzcyBBSVRhYmxlRnJvemVuUGxhY2Vob2xkZXJDZWxscyB7XG4gICAgY29uZmlnID0gaW5wdXQucmVxdWlyZWQ8QUlUYWJsZUNlbGxzQ29uZmlnPigpO1xuXG4gICAgZnJvemVuUGxhY2VIb2xkZXJDZWxsc0NvbmZpZyA9IGNvbXB1dGVkKCgpID0+IHtcbiAgICAgICAgY29uc3QgeyBjb29yZGluYXRlIH0gPSB0aGlzLmNvbmZpZygpO1xuICAgICAgICByZXR1cm4gZ2V0UGxhY2VIb2xkZXJDZWxsc0NvbmZpZ3Moe1xuICAgICAgICAgICAgLi4udGhpcy5jb25maWcoKSxcbiAgICAgICAgICAgIGNvbHVtblN0YXJ0SW5kZXg6IDAsXG4gICAgICAgICAgICBjb2x1bW5TdG9wSW5kZXg6IGNvb3JkaW5hdGUuZnJvemVuQ29sdW1uQ291bnQgLSAxXG4gICAgICAgIH0pO1xuICAgIH0pO1xufVxuIl19
|
@@ -1,38 +0,0 @@
|
|
1
|
-
import { ChangeDetectionStrategy, Component, computed, input } from '@angular/core';
|
2
|
-
import { createColumnHeads } from '../creations/create-heads';
|
3
|
-
import { AITableFieldHead } from './field-head.component';
|
4
|
-
import * as i0 from "@angular/core";
|
5
|
-
export class AITableColumnHeads {
|
6
|
-
constructor() {
|
7
|
-
this.config = input.required();
|
8
|
-
this.headConfigs = computed(() => {
|
9
|
-
const { coordinate, columnStartIndex } = this.config();
|
10
|
-
const { frozenColumnCount } = coordinate;
|
11
|
-
return createColumnHeads({
|
12
|
-
...this.config(),
|
13
|
-
columnStartIndex: Math.max(columnStartIndex, frozenColumnCount)
|
14
|
-
});
|
15
|
-
});
|
16
|
-
}
|
17
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: AITableColumnHeads, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
18
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: AITableColumnHeads, isStandalone: true, selector: "ai-table-column-heads", inputs: { config: { classPropertyName: "config", publicName: "config", isSignal: true, isRequired: true, transformFunction: null } }, ngImport: i0, template: `
|
19
|
-
@for (config of headConfigs(); track $index) {
|
20
|
-
<ai-table-field-head [config]="config"></ai-table-field-head>
|
21
|
-
}
|
22
|
-
`, isInline: true, dependencies: [{ kind: "component", type: AITableFieldHead, selector: "ai-table-field-head", inputs: ["config"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
23
|
-
}
|
24
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: AITableColumnHeads, decorators: [{
|
25
|
-
type: Component,
|
26
|
-
args: [{
|
27
|
-
selector: 'ai-table-column-heads',
|
28
|
-
template: `
|
29
|
-
@for (config of headConfigs(); track $index) {
|
30
|
-
<ai-table-field-head [config]="config"></ai-table-field-head>
|
31
|
-
}
|
32
|
-
`,
|
33
|
-
standalone: true,
|
34
|
-
imports: [AITableFieldHead],
|
35
|
-
changeDetection: ChangeDetectionStrategy.OnPush
|
36
|
-
}]
|
37
|
-
}] });
|
38
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGVhZHMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZ3JpZC9zcmMvcmVuZGVyZXIvY29tcG9uZW50cy9oZWFkcy5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRXBGLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQzlELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHdCQUF3QixDQUFDOztBQWExRCxNQUFNLE9BQU8sa0JBQWtCO0lBWC9CO1FBWUksV0FBTSxHQUFHLEtBQUssQ0FBQyxRQUFRLEVBQTRCLENBQUM7UUFFcEQsZ0JBQVcsR0FBRyxRQUFRLENBQUMsR0FBRyxFQUFFO1lBQ3hCLE1BQU0sRUFBRSxVQUFVLEVBQUUsZ0JBQWdCLEVBQUUsR0FBRyxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDdkQsTUFBTSxFQUFFLGlCQUFpQixFQUFFLEdBQUcsVUFBVSxDQUFDO1lBQ3pDLE9BQU8saUJBQWlCLENBQUM7Z0JBQ3JCLEdBQUcsSUFBSSxDQUFDLE1BQU0sRUFBRTtnQkFDaEIsZ0JBQWdCLEVBQUUsSUFBSSxDQUFDLEdBQUcsQ0FBQyxnQkFBZ0IsRUFBRSxpQkFBaUIsQ0FBQzthQUNsRSxDQUFDLENBQUM7UUFDUCxDQUFDLENBQUMsQ0FBQztLQUNOOytHQVhZLGtCQUFrQjttR0FBbEIsa0JBQWtCLHVOQVRqQjs7OztLQUlULDREQUVTLGdCQUFnQjs7NEZBR2pCLGtCQUFrQjtrQkFYOUIsU0FBUzttQkFBQztvQkFDUCxRQUFRLEVBQUUsdUJBQXVCO29CQUNqQyxRQUFRLEVBQUU7Ozs7S0FJVDtvQkFDRCxVQUFVLEVBQUUsSUFBSTtvQkFDaEIsT0FBTyxFQUFFLENBQUMsZ0JBQWdCLENBQUM7b0JBQzNCLGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNO2lCQUNsRCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIGNvbXB1dGVkLCBpbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQUlUYWJsZUNvbHVtbkhlYWRzQ29uZmlnIH0gZnJvbSAnLi4vLi4vdHlwZXMnO1xuaW1wb3J0IHsgY3JlYXRlQ29sdW1uSGVhZHMgfSBmcm9tICcuLi9jcmVhdGlvbnMvY3JlYXRlLWhlYWRzJztcbmltcG9ydCB7IEFJVGFibGVGaWVsZEhlYWQgfSBmcm9tICcuL2ZpZWxkLWhlYWQuY29tcG9uZW50JztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdhaS10YWJsZS1jb2x1bW4taGVhZHMnLFxuICAgIHRlbXBsYXRlOiBgXG4gICAgICAgIEBmb3IgKGNvbmZpZyBvZiBoZWFkQ29uZmlncygpOyB0cmFjayAkaW5kZXgpIHtcbiAgICAgICAgICAgIDxhaS10YWJsZS1maWVsZC1oZWFkIFtjb25maWddPVwiY29uZmlnXCI+PC9haS10YWJsZS1maWVsZC1oZWFkPlxuICAgICAgICB9XG4gICAgYCxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIGltcG9ydHM6IFtBSVRhYmxlRmllbGRIZWFkXSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxufSlcbmV4cG9ydCBjbGFzcyBBSVRhYmxlQ29sdW1uSGVhZHMge1xuICAgIGNvbmZpZyA9IGlucHV0LnJlcXVpcmVkPEFJVGFibGVDb2x1bW5IZWFkc0NvbmZpZz4oKTtcblxuICAgIGhlYWRDb25maWdzID0gY29tcHV0ZWQoKCkgPT4ge1xuICAgICAgICBjb25zdCB7IGNvb3JkaW5hdGUsIGNvbHVtblN0YXJ0SW5kZXggfSA9IHRoaXMuY29uZmlnKCk7XG4gICAgICAgIGNvbnN0IHsgZnJvemVuQ29sdW1uQ291bnQgfSA9IGNvb3JkaW5hdGU7XG4gICAgICAgIHJldHVybiBjcmVhdGVDb2x1bW5IZWFkcyh7XG4gICAgICAgICAgICAuLi50aGlzLmNvbmZpZygpLFxuICAgICAgICAgICAgY29sdW1uU3RhcnRJbmRleDogTWF0aC5tYXgoY29sdW1uU3RhcnRJbmRleCwgZnJvemVuQ29sdW1uQ291bnQpXG4gICAgICAgIH0pO1xuICAgIH0pO1xufVxuIl19
|
@@ -1,104 +0,0 @@
|
|
1
|
-
import { ChangeDetectionStrategy, Component, computed, input } from '@angular/core';
|
2
|
-
import { KoContainer } from '../../angular-konva';
|
3
|
-
import { CommonModule } from '@angular/common';
|
4
|
-
import { AI_TABLE_CELL_PADDING, AI_TABLE_OFFSET, DEFAULT_TEXT_ALIGN_LEFT, DEFAULT_TEXT_ALIGN_RIGHT } from '../../constants';
|
5
|
-
import { AITableQueries, FieldModelMap, getCellHorizontalPosition, getHoverCell } from '../../utils';
|
6
|
-
import { isSelectedField } from '../creations/create-cells';
|
7
|
-
import * as i0 from "@angular/core";
|
8
|
-
import * as i1 from "@angular/common";
|
9
|
-
export class AITableHoverCells {
|
10
|
-
constructor() {
|
11
|
-
this.config = input.required();
|
12
|
-
this.componentMap = {};
|
13
|
-
this.groupConfig = computed(() => {
|
14
|
-
return {
|
15
|
-
x: this.hoverCellConfig()?.x,
|
16
|
-
y: this.hoverCellConfig()?.y
|
17
|
-
};
|
18
|
-
});
|
19
|
-
this.hoverCellConfig = computed(() => {
|
20
|
-
const { aiTable, coordinate, references, readonly, actions } = this.config();
|
21
|
-
const pointPosition = aiTable.context.pointPosition();
|
22
|
-
const hoverCell = this.hoverCell();
|
23
|
-
if (!hoverCell) {
|
24
|
-
return;
|
25
|
-
}
|
26
|
-
const { field, recordId } = hoverCell;
|
27
|
-
const cellValue = AITableQueries.getFieldValue(aiTable, [recordId, field._id]);
|
28
|
-
const fieldModel = FieldModelMap[field.type];
|
29
|
-
const transformValue = fieldModel.transformCellValue(cellValue, { aiTable, field });
|
30
|
-
const { rowHeight, columnCount, rowCount } = coordinate;
|
31
|
-
const columnIndex = pointPosition.columnIndex;
|
32
|
-
const rowIndex = pointPosition.rowIndex;
|
33
|
-
const x = coordinate.getColumnOffset(columnIndex) + AI_TABLE_OFFSET;
|
34
|
-
const columnWidth = coordinate.getColumnWidth(columnIndex);
|
35
|
-
const y = coordinate.getRowOffset(rowIndex) + AI_TABLE_OFFSET;
|
36
|
-
const { width } = getCellHorizontalPosition({
|
37
|
-
columnWidth,
|
38
|
-
columnIndex,
|
39
|
-
columnCount
|
40
|
-
});
|
41
|
-
const style = {
|
42
|
-
textAlign: DEFAULT_TEXT_ALIGN_LEFT
|
43
|
-
};
|
44
|
-
const textAlign = style.textAlign;
|
45
|
-
const renderX = textAlign === DEFAULT_TEXT_ALIGN_RIGHT
|
46
|
-
? columnWidth - AI_TABLE_CELL_PADDING + AI_TABLE_OFFSET
|
47
|
-
: AI_TABLE_CELL_PADDING + AI_TABLE_OFFSET;
|
48
|
-
const renderY = 0 - AI_TABLE_OFFSET * 2;
|
49
|
-
const result = {
|
50
|
-
field,
|
51
|
-
recordId,
|
52
|
-
aiTable,
|
53
|
-
coordinate,
|
54
|
-
x,
|
55
|
-
y,
|
56
|
-
readonly,
|
57
|
-
actions,
|
58
|
-
render: {
|
59
|
-
aiTable,
|
60
|
-
recordId,
|
61
|
-
field,
|
62
|
-
isActive: isSelectedField(field._id, aiTable),
|
63
|
-
x: renderX,
|
64
|
-
y: renderY,
|
65
|
-
columnWidth: width,
|
66
|
-
rowHeight,
|
67
|
-
cellValue,
|
68
|
-
transformValue,
|
69
|
-
style,
|
70
|
-
references
|
71
|
-
}
|
72
|
-
};
|
73
|
-
return result;
|
74
|
-
});
|
75
|
-
this.hoverCell = computed(() => getHoverCell(this.config().aiTable));
|
76
|
-
}
|
77
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: AITableHoverCells, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
78
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: AITableHoverCells, isStandalone: true, selector: "ai-table-hover-cell", inputs: { config: { classPropertyName: "config", publicName: "config", isSignal: true, isRequired: true, transformFunction: null } }, ngImport: i0, template: `
|
79
|
-
@if (hoverCell()) {
|
80
|
-
<ko-group [config]="groupConfig()">
|
81
|
-
<ng-container *ngComponentOutlet="hoverCell()!.renderComponentDefinition; inputs: { config: hoverCellConfig() }">
|
82
|
-
</ng-container>
|
83
|
-
</ko-group>
|
84
|
-
}
|
85
|
-
`, isInline: true, dependencies: [{ kind: "component", type: KoContainer, selector: "ko-layer, ko-fastlayer, ko-group" }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgComponentOutlet, selector: "[ngComponentOutlet]", inputs: ["ngComponentOutlet", "ngComponentOutletInputs", "ngComponentOutletInjector", "ngComponentOutletContent", "ngComponentOutletNgModule", "ngComponentOutletNgModuleFactory"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
86
|
-
}
|
87
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: AITableHoverCells, decorators: [{
|
88
|
-
type: Component,
|
89
|
-
args: [{
|
90
|
-
selector: 'ai-table-hover-cell',
|
91
|
-
template: `
|
92
|
-
@if (hoverCell()) {
|
93
|
-
<ko-group [config]="groupConfig()">
|
94
|
-
<ng-container *ngComponentOutlet="hoverCell()!.renderComponentDefinition; inputs: { config: hoverCellConfig() }">
|
95
|
-
</ng-container>
|
96
|
-
</ko-group>
|
97
|
-
}
|
98
|
-
`,
|
99
|
-
standalone: true,
|
100
|
-
imports: [KoContainer, CommonModule],
|
101
|
-
changeDetection: ChangeDetectionStrategy.OnPush
|
102
|
-
}]
|
103
|
-
}] });
|
104
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaG92ZXItY2VsbC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9ncmlkL3NyYy9yZW5kZXJlci9jb21wb25lbnRzL2hvdmVyLWNlbGwuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNwRixPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFHbEQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxlQUFlLEVBQUUsdUJBQXVCLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUM1SCxPQUFPLEVBQUUsY0FBYyxFQUFFLGFBQWEsRUFBRSx5QkFBeUIsRUFBRSxZQUFZLEVBQXNCLE1BQU0sYUFBYSxDQUFDO0FBQ3pILE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQzs7O0FBbUI1RCxNQUFNLE9BQU8saUJBQWlCO0lBZDlCO1FBZUksV0FBTSxHQUFHLEtBQUssQ0FBQyxRQUFRLEVBQXNCLENBQUM7UUFFOUMsaUJBQVksR0FBdUUsRUFBRSxDQUFDO1FBRXRGLGdCQUFXLEdBQUcsUUFBUSxDQUFDLEdBQUcsRUFBRTtZQUN4QixPQUFPO2dCQUNILENBQUMsRUFBRSxJQUFJLENBQUMsZUFBZSxFQUFFLEVBQUUsQ0FBQztnQkFDNUIsQ0FBQyxFQUFFLElBQUksQ0FBQyxlQUFlLEVBQUUsRUFBRSxDQUFDO2FBQy9CLENBQUM7UUFDTixDQUFDLENBQUMsQ0FBQztRQUVILG9CQUFlLEdBQUcsUUFBUSxDQUFxQyxHQUFHLEVBQUU7WUFDaEUsTUFBTSxFQUFFLE9BQU8sRUFBRSxVQUFVLEVBQUUsVUFBVSxFQUFFLFFBQVEsRUFBRSxPQUFP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QUFFOzs7Ozs7O0tBT1Q7b0JBQ0QsVUFBVSxFQUFFLElBQUk7b0JBQ2hCLE9BQU8sRUFBRSxDQUFDLFdBQVcsRUFBRSxZQUFZLENBQUM7b0JBQ3BDLGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNO2lCQUNsRCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIGNvbXB1dGVkLCBpbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgS29Db250YWluZXIgfSBmcm9tICcuLi8uLi9hbmd1bGFyLWtvbnZhJztcbmltcG9ydCB7IEFJVGFibGVDZWxsc0NvbmZpZywgQUlUYWJsZUhvdmVyQ2VsbENvbmZpZyB9IGZyb20gJy4uLy4uL3R5cGVzJztcbmltcG9ydCB7IEFJVGFibGVGaWVsZFR5cGUgfSBmcm9tICdAYWktdGFibGUvdXRpbHMnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IEFJX1RBQkxFX0NFTExfUEFERElORywgQUlfVEFCTEVfT0ZGU0VULCBERUZBVUxUX1RFWFRfQUxJR05fTEVGVCwgREVGQVVMVF9URVhUX0FMSUdOX1JJR0hUIH0gZnJvbSAnLi4vLi4vY29uc3RhbnRzJztcbmltcG9ydCB7IEFJVGFibGVRdWVyaWVzLCBGaWVsZE1vZGVsTWFwLCBnZXRDZWxsSG9yaXpvbnRhbFBvc2l0aW9uLCBnZXRIb3ZlckNlbGwsIHRyYW5zZm9ybUNlbGxWYWx1ZSB9IGZyb20gJy4uLy4uL3V0aWxzJztcbmltcG9ydCB7IGlzU2VsZWN0ZWRGaWVsZCB9IGZyb20gJy4uL2NyZWF0aW9ucy9jcmVhdGUtY2VsbHMnO1xuaW1wb3J0IF8gZnJvbSAnbG9kYXNoJztcbmltcG9ydCB7IEhvdmVyQ2VsbENvbXBvbmVudCB9IGZyb20gJy4uL2ludGVyZmFjZXMnO1xuaW1wb3J0IHsgQ29uc3RydWN0b3IgfSBmcm9tICduZ3gtdGV0aHlzL2NvcmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2FpLXRhYmxlLWhvdmVyLWNlbGwnLFxuICAgIHRlbXBsYXRlOiBgXG4gICAgICAgIEBpZiAoaG92ZXJDZWxsKCkpIHtcbiAgICAgICAgICAgIDxrby1ncm91cCBbY29uZmlnXT1cImdyb3VwQ29uZmlnKClcIj5cbiAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0NvbXBvbmVudE91dGxldD1cImhvdmVyQ2VsbCgpIS5yZW5kZXJDb21wb25lbnREZWZpbml0aW9uOyBpbnB1dHM6IHsgY29uZmlnOiBob3ZlckNlbGxDb25maWcoKSB9XCI+XG4gICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICA8L2tvLWdyb3VwPlxuICAgICAgICB9XG4gICAgYCxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIGltcG9ydHM6IFtLb0NvbnRhaW5lciwgQ29tbW9uTW9kdWxlXSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxufSlcbmV4cG9ydCBjbGFzcyBBSVRhYmxlSG92ZXJDZWxscyB7XG4gICAgY29uZmlnID0gaW5wdXQucmVxdWlyZWQ8QUlUYWJsZUNlbGxzQ29uZmlnPigpO1xuXG4gICAgY29tcG9uZW50TWFwOiBQYXJ0aWFsPFJlY29yZDxBSVRhYmxlRmllbGRUeXBlLCBDb25zdHJ1Y3RvcjxIb3ZlckNlbGxDb21wb25lbnQ+Pj4gPSB7fTtcblxuICAgIGdyb3VwQ29uZmlnID0gY29tcHV0ZWQoKCkgPT4ge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgeDogdGhpcy5ob3ZlckNlbGxDb25maWcoKT8ueCxcbiAgICAgICAgICAgIHk6IHRoaXMuaG92ZXJDZWxsQ29uZmlnKCk/LnlcbiAgICAgICAgfTtcbiAgICB9KTtcblxuICAgIGhvdmVyQ2VsbENvbmZpZyA9IGNvbXB1dGVkPEFJVGFibGVIb3ZlckNlbGxDb25maWcgfCB1bmRlZmluZWQ+KCgpID0+IHtcbiAgICAgICAgY29uc3QgeyBhaVRhYmxlLCBjb29yZGluYXRlLCByZWZlcmVuY2VzLCByZWFkb25seSwgYWN0aW9ucyB9ID0gdGhpcy5jb25maWcoKTtcbiAgICAgICAgY29uc3QgcG9pbnRQb3NpdGlvbiA9IGFpVGFibGUuY29udGV4dCEucG9pbnRQb3NpdGlvbigpO1xuICAgICAgICBjb25zdCBob3ZlckNlbGwgPSB0aGlzLmhvdmVyQ2VsbCgpO1xuICAgICAgICBpZiAoIWhvdmVyQ2VsbCkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IHsgZmllbGQsIHJlY29yZElkIH0gPSBob3ZlckNlbGw7XG4gICAgICAgIGNvbnN0IGNlbGxWYWx1ZSA9IEFJVGFibGVRdWVyaWVzLmdldEZpZWxkVmFsdWUoYWlUYWJsZSwgW3JlY29yZElkLCBmaWVsZC5faWRdKTtcbiAgICAgICAgY29uc3QgZmllbGRNb2RlbCA9IEZpZWxkTW9kZWxNYXBbZmllbGQudHlwZV07XG4gICAgICAgIGNvbnN0IHRyYW5zZm9ybVZhbHVlID0gZmllbGRNb2RlbC50cmFuc2Zvcm1DZWxsVmFsdWUoY2VsbFZhbHVlLCB7IGFpVGFibGUsIGZpZWxkIH0pO1xuXG4gICAgICAgIGNvbnN0IHsgcm93SGVpZ2h0LCBjb2x1bW5Db3VudCwgcm93Q291bnQgfSA9IGNvb3JkaW5hdGU7XG4gICAgICAgIGNvbnN0IGNvbHVtbkluZGV4ID0gcG9pbnRQb3NpdGlvbi5jb2x1bW5JbmRleDtcbiAgICAgICAgY29uc3Qgcm93SW5kZXggPSBwb2ludFBvc2l0aW9uLnJvd0luZGV4O1xuXG4gICAgICAgIGNvbnN0IHggPSBjb29yZGluYXRlLmdldENvbHVtbk9mZnNldChjb2x1bW5JbmRleCkgKyBBSV9UQUJMRV9PRkZTRVQ7XG4gICAgICAgIGNvbnN0IGNvbHVtbldpZHRoID0gY29vcmRpbmF0ZS5nZXRDb2x1bW5XaWR0aChjb2x1bW5JbmRleCk7XG4gICAgICAgIGNvbnN0IHkgPSBjb29yZGluYXRlLmdldFJvd09mZnNldChyb3dJbmRleCkgKyBBSV9UQUJMRV9PRkZTRVQ7XG4gICAgICAgIGNvbnN0IHsgd2lkdGggfSA9IGdldENlbGxIb3Jpem9udGFsUG9zaXRpb24oe1xuICAgICAgICAgICAgY29sdW1uV2lkdGgsXG4gICAgICAgICAgICBjb2x1bW5JbmRleCxcbiAgICAgICAgICAgIGNvbHVtbkNvdW50XG4gICAgICAgIH0pO1xuXG4gICAgICAgIGNvbnN0IHN0eWxlID0ge1xuICAgICAgICAgICAgdGV4dEFsaWduOiBERUZBVUxUX1RFWFRfQUxJR05fTEVGVFxuICAgICAgICB9IGFzIGFueTtcbiAgICAgICAgY29uc3QgdGV4dEFsaWduID0gc3R5bGUudGV4dEFsaWduO1xuICAgICAgICBjb25zdCByZW5kZXJYID1cbiAgICAgICAgICAgIHRleHRBbGlnbiA9PT0gREVGQVVMVF9URVhUX0FMSUdOX1JJR0hUXG4gICAgICAgICAgICAgICAgPyBjb2x1bW5XaWR0aCAtIEFJX1RBQkxFX0NFTExfUEFERElORyArIEFJX1RBQkxFX09GRlNFVFxuICAgICAgICAgICAgICAgIDogQUlfVEFCTEVfQ0VMTF9QQURESU5HICsgQUlfVEFCTEVfT0ZGU0VUO1xuICAgICAgICBjb25zdCByZW5kZXJZID0gMCAtIEFJX1RBQkxFX09GRlNFVCAqIDI7XG5cbiAgICAgICAgY29uc3QgcmVzdWx0OiBBSVRhYmxlSG92ZXJDZWxsQ29uZmlnID0ge1xuICAgICAgICAgICAgZmllbGQsXG4gICAgICAgICAgICByZWNvcmRJZCxcbiAgICAgICAgICAgIGFpVGFibGUsXG4gICAgICAgICAgICBjb29yZGluYXRlLFxuICAgICAgICAgICAgeCxcbiAgICAgICAgICAgIHksXG4gICAgICAgICAgICByZWFkb25seSxcbiAgICAgICAgICAgIGFjdGlvbnMsXG4gICAgICAgICAgICByZW5kZXI6IHtcbiAgICAgICAgICAgICAgICBhaVRhYmxlLFxuICAgICAgICAgICAgICAgIHJlY29yZElkLFxuICAgICAgICAgICAgICAgIGZpZWxkLFxuICAgICAgICAgICAgICAgIGlzQWN0aXZlOiBpc1NlbGVjdGVkRmllbGQoZmllbGQuX2lkLCBhaVRhYmxlKSxcbiAgICAgICAgICAgICAgICB4OiByZW5kZXJYLFxuICAgICAgICAgICAgICAgIHk6IHJlbmRlclksXG4gICAgICAgICAgICAgICAgY29sdW1uV2lkdGg6IHdpZHRoLFxuICAgICAgICAgICAgICAgIHJvd0hlaWdodCxcbiAgICAgICAgICAgICAgICBjZWxsVmFsdWUsXG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtVmFsdWUsXG4gICAgICAgICAgICAgICAgc3R5bGUsXG4gICAgICAgICAgICAgICAgcmVmZXJlbmNlc1xuICAgICAgICAgICAgfVxuICAgICAgICB9O1xuXG4gICAgICAgIHJldHVybiByZXN1bHQ7XG4gICAgfSk7XG5cbiAgICBob3ZlckNlbGwgPSBjb21wdXRlZCgoKSA9PiBnZXRIb3ZlckNlbGwodGhpcy5jb25maWcoKS5haVRhYmxlKSk7XG59XG4iXX0=
|
@@ -1,132 +0,0 @@
|
|
1
|
-
import { ChangeDetectionStrategy, Component, computed, input } from '@angular/core';
|
2
|
-
import { KoContainer, KoShape } from '../../angular-konva';
|
3
|
-
import { AI_TABLE_CELL_PADDING, AI_TABLE_FIELD_HEAD, AI_TABLE_FIELD_HEAD_HEIGHT, AI_TABLE_ROW_DRAG, AI_TABLE_ROW_DRAG_ICON_WIDTH, AI_TABLE_ROW_HEAD, AI_TABLE_ROW_SELECT_CHECKBOX, Colors } from '../../constants';
|
4
|
-
import { AITableAreaType, AITableCheckType, AITableRowType } from '../../types';
|
5
|
-
import { generateTargetName } from '../../utils';
|
6
|
-
import { AITableIcon } from './icon.component';
|
7
|
-
import { DragType } from '@ai-table/utils';
|
8
|
-
import * as i0 from "@angular/core";
|
9
|
-
export class AITableHoverRowHeads {
|
10
|
-
constructor() {
|
11
|
-
this.config = input.required();
|
12
|
-
this.pointPosition = computed(() => {
|
13
|
-
return this.config().aiTable.context.pointPosition();
|
14
|
-
});
|
15
|
-
this.headConfigs = computed(() => {
|
16
|
-
return this.createHoverRowHeads(this.pointPosition());
|
17
|
-
});
|
18
|
-
this.readonly = computed(() => {
|
19
|
-
return this.config().readonly;
|
20
|
-
});
|
21
|
-
this.rowDragDisabled = computed(() => {
|
22
|
-
return this.config().rowDragDisabled;
|
23
|
-
});
|
24
|
-
this.createHoverRowHeads = (pointPosition) => {
|
25
|
-
const { coordinate, rowStartIndex, rowStopIndex, aiTable } = this.config();
|
26
|
-
const context = aiTable.context;
|
27
|
-
const headConfigs = [];
|
28
|
-
for (let rowIndex = rowStartIndex; rowIndex <= rowStopIndex; rowIndex++) {
|
29
|
-
if (rowIndex > coordinate.rowCount - 1) {
|
30
|
-
break;
|
31
|
-
}
|
32
|
-
const row = context.linearRows()[rowIndex];
|
33
|
-
if (row == null) {
|
34
|
-
continue;
|
35
|
-
}
|
36
|
-
const { type, _id: recordId } = row;
|
37
|
-
if (type !== AITableRowType.record || recordId == null) {
|
38
|
-
continue;
|
39
|
-
}
|
40
|
-
const isCheckedRow = aiTable.selection().selectedRecords.has(recordId);
|
41
|
-
const { areaType, rowIndex: pointRowIndex, targetName } = pointPosition;
|
42
|
-
if (!isCheckedRow && areaType === AITableAreaType.none) {
|
43
|
-
continue;
|
44
|
-
}
|
45
|
-
let isHoverRow;
|
46
|
-
if (pointRowIndex > -1 && !!context.linearRows().length && pointRowIndex < context.linearRows().length) {
|
47
|
-
const { type: pointRowType, _id: pointRecordId } = context.linearRows()[pointRowIndex];
|
48
|
-
isHoverRow = recordId === pointRecordId && pointRowType === AITableRowType.record && targetName !== AI_TABLE_FIELD_HEAD;
|
49
|
-
}
|
50
|
-
let operationGroup;
|
51
|
-
operationGroup = {
|
52
|
-
recordId,
|
53
|
-
y: coordinate.getRowOffset(rowIndex),
|
54
|
-
bgConfig: {
|
55
|
-
name: generateTargetName({ targetName: AI_TABLE_ROW_HEAD, recordId }),
|
56
|
-
width: context.rowHeadWidth() + 1,
|
57
|
-
height: coordinate.rowHeight,
|
58
|
-
fill: Colors.transparent
|
59
|
-
}
|
60
|
-
};
|
61
|
-
if (isCheckedRow || isHoverRow) {
|
62
|
-
const iconOffsetY = (AI_TABLE_FIELD_HEAD_HEIGHT - 16) / 2;
|
63
|
-
operationGroup.iconConfig = {
|
64
|
-
name: generateTargetName({
|
65
|
-
targetName: AI_TABLE_ROW_SELECT_CHECKBOX,
|
66
|
-
recordId
|
67
|
-
}),
|
68
|
-
x: AI_TABLE_CELL_PADDING + AI_TABLE_ROW_DRAG_ICON_WIDTH,
|
69
|
-
y: iconOffsetY,
|
70
|
-
type: isCheckedRow ? AITableCheckType.checked : AITableCheckType.unchecked,
|
71
|
-
fill: isCheckedRow || (targetName === AI_TABLE_ROW_SELECT_CHECKBOX && !isCheckedRow) ? Colors.primary : Colors.gray300
|
72
|
-
};
|
73
|
-
if (!this.readonly() && !this.rowDragDisabled()) {
|
74
|
-
operationGroup.dragConfig = {
|
75
|
-
name: generateTargetName({
|
76
|
-
targetName: AI_TABLE_ROW_DRAG,
|
77
|
-
recordId
|
78
|
-
}),
|
79
|
-
x: 0,
|
80
|
-
y: iconOffsetY,
|
81
|
-
type: DragType.record,
|
82
|
-
fill: Colors.gray600
|
83
|
-
};
|
84
|
-
}
|
85
|
-
headConfigs.push(operationGroup);
|
86
|
-
}
|
87
|
-
}
|
88
|
-
return headConfigs;
|
89
|
-
};
|
90
|
-
}
|
91
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: AITableHoverRowHeads, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
92
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: AITableHoverRowHeads, isStandalone: true, selector: "ai-table-hover-row-heads", inputs: { config: { classPropertyName: "config", publicName: "config", isSignal: true, isRequired: true, transformFunction: null } }, ngImport: i0, template: `
|
93
|
-
@for (config of headConfigs(); track config.recordId) {
|
94
|
-
<ko-group [config]="{ x: 0, y: config.y, name: 'hover-heads' }">
|
95
|
-
@if (config.bgConfig) {
|
96
|
-
<ko-rect [config]="config.bgConfig"></ko-rect>
|
97
|
-
}
|
98
|
-
@if (config.iconConfig) {
|
99
|
-
<ai-table-icon [config]="config.iconConfig"></ai-table-icon>
|
100
|
-
}
|
101
|
-
@if (config.dragConfig) {
|
102
|
-
<ai-table-icon [config]="config.dragConfig"></ai-table-icon>
|
103
|
-
}
|
104
|
-
</ko-group>
|
105
|
-
}
|
106
|
-
`, isInline: true, dependencies: [{ kind: "component", type: KoContainer, selector: "ko-layer, ko-fastlayer, ko-group" }, { 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: AITableIcon, selector: "ai-table-icon", inputs: ["config"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
107
|
-
}
|
108
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: AITableHoverRowHeads, decorators: [{
|
109
|
-
type: Component,
|
110
|
-
args: [{
|
111
|
-
selector: 'ai-table-hover-row-heads',
|
112
|
-
template: `
|
113
|
-
@for (config of headConfigs(); track config.recordId) {
|
114
|
-
<ko-group [config]="{ x: 0, y: config.y, name: 'hover-heads' }">
|
115
|
-
@if (config.bgConfig) {
|
116
|
-
<ko-rect [config]="config.bgConfig"></ko-rect>
|
117
|
-
}
|
118
|
-
@if (config.iconConfig) {
|
119
|
-
<ai-table-icon [config]="config.iconConfig"></ai-table-icon>
|
120
|
-
}
|
121
|
-
@if (config.dragConfig) {
|
122
|
-
<ai-table-icon [config]="config.dragConfig"></ai-table-icon>
|
123
|
-
}
|
124
|
-
</ko-group>
|
125
|
-
}
|
126
|
-
`,
|
127
|
-
standalone: true,
|
128
|
-
imports: [KoContainer, KoShape, AITableIcon],
|
129
|
-
changeDetection: ChangeDetectionStrategy.OnPush
|
130
|
-
}]
|
131
|
-
}] });
|
132
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaG92ZXItcm93LWhlYWRzLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2dyaWQvc3JjL3JlbmRlcmVyL2NvbXBvbmVudHMvaG92ZXItcm93LWhlYWRzLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLFFBQVEsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDcEYsT0FBTyxFQUFFLFdBQVcsRUFBRSxPQUFPLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUMzRCxPQUFPLEVBQ0gscUJBQXFCLEVBQ3JCLG1CQUFtQixFQUNuQiwwQkFBMEIsRUFDMUIsaUJBQWlCLEVBQ2pCLDRCQUE0QixFQUM1QixpQkFBaUIsRUFDakIsNEJBQTRCLEVBQzVCLE1BQU0sRUFDVCxNQUFNLGlCQUFpQixDQUFDO0FBRXpCLE9BQU8sRUFBRSxlQUFlLEVBQUUsZ0JBQWdCLEVBQStDLGNBQWMsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUM3SCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDakQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQzs7QUF1QjNDLE1BQU0sT0FBTyxvQkFBb0I7SUFyQmpDO1FBc0JJLFdBQU0sR0FBRyxLQUFLLENBQUMsUUFBUSxFQUF5QixDQUFDO1FBRWpELGtCQUFhLEdBQUcsUUFBUSxDQUFDLEdBQUcsRUFBRTtZQUMxQixPQUFPLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQyxPQUFPLENBQUMsT0FBUSxDQUFDLGFBQWEsRUFBRSxDQUFDO1FBQzFELENBQUMsQ0FBQyxDQUFDO1FBRUgsZ0JBQVcsR0FBRyxRQUFRLENBQUMsR0FBRyxFQUFFO1lBQ3hCLE9BQU8sSUFBSSxDQUFDLG1C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QkFBb0I7bUdBQXBCLG9CQUFvQiwwTkFuQm5COzs7Ozs7Ozs7Ozs7OztLQWNULDREQUVTLFdBQVcsNkVBQUUsT0FBTywraEJBQUUsV0FBVzs7NEZBR2xDLG9CQUFvQjtrQkFyQmhDLFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFLDBCQUEwQjtvQkFDcEMsUUFBUSxFQUFFOzs7Ozs7Ozs7Ozs7OztLQWNUO29CQUNELFVBQVUsRUFBRSxJQUFJO29CQUNoQixPQUFPLEVBQUUsQ0FBQyxXQUFXLEVBQUUsT0FBTyxFQUFFLFdBQVcsQ0FBQztvQkFDNUMsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07aUJBQ2xEIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgY29tcHV0ZWQsIGlucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBLb0NvbnRhaW5lciwgS29TaGFwZSB9IGZyb20gJy4uLy4uL2FuZ3VsYXIta29udmEnO1xuaW1wb3J0IHtcbiAgICBBSV9UQUJMRV9DRUxMX1BBRERJTkcsXG4gICAgQUlfVEFCTEVfRklFTERfSEVBRCxcbiAgICBBSV9UQUJMRV9GSUVMRF9IRUFEX0hFSUdIVCxcbiAgICBBSV9UQUJMRV9ST1dfRFJBRyxcbiAgICBBSV9UQUJMRV9ST1dfRFJBR19JQ09OX1dJRFRILFxuICAgIEFJX1RBQkxFX1JPV19IRUFELFxuICAgIEFJX1RBQkxFX1JPV19TRUxFQ1RfQ0hFQ0tCT1gsXG4gICAgQ29sb3JzXG59IGZyb20gJy4uLy4uL2NvbnN0YW50cyc7XG5pbXBvcnQgeyBSZW5kZXJlckNvbnRleHQgfSBmcm9tICcuLi8uLi9jb3JlJztcbmltcG9ydCB7IEFJVGFibGVBcmVhVHlwZSwgQUlUYWJsZUNoZWNrVHlwZSwgQUlUYWJsZVBvaW50UG9zaXRpb24sIEFJVGFibGVSb3dIZWFkc0NvbmZpZywgQUlUYWJsZVJvd1R5cGUgfSBmcm9tICcuLi8uLi90eXBlcyc7XG5pbXBvcnQgeyBnZW5lcmF0ZVRhcmdldE5hbWUgfSBmcm9tICcuLi8uLi91dGlscyc7XG5pbXBvcnQgeyBBSVRhYmxlSWNvbiB9IGZyb20gJy4vaWNvbi5jb21wb25lbnQnO1xuaW1wb3J0IHsgRHJhZ1R5cGUgfSBmcm9tICdAYWktdGFibGUvdXRpbHMnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2FpLXRhYmxlLWhvdmVyLXJvdy1oZWFkcycsXG4gICAgdGVtcGxhdGU6IGBcbiAgICAgICAgQGZvciAoY29uZmlnIG9mIGhlYWRDb25maWdzKCk7IHRyYWNrIGNvbmZpZy5yZWNvcmRJZCkge1xuICAgICAgICAgICAgPGtvLWdyb3VwIFtjb25maWddPVwieyB4OiAwLCB5OiBjb25maWcueSwgbmFtZTogJ2hvdmVyLWhlYWRzJyB9XCI+XG4gICAgICAgICAgICAgICAgQGlmIChjb25maWcuYmdDb25maWcpIHtcbiAgICAgICAgICAgICAgICAgICAgPGtvLXJlY3QgW2NvbmZpZ109XCJjb25maWcuYmdDb25maWdcIj48L2tvLXJlY3Q+XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIEBpZiAoY29uZmlnLmljb25Db25maWcpIHtcbiAgICAgICAgICAgICAgICAgICAgPGFpLXRhYmxlLWljb24gW2NvbmZpZ109XCJjb25maWcuaWNvbkNvbmZpZ1wiPjwvYWktdGFibGUtaWNvbj5cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgQGlmIChjb25maWcuZHJhZ0NvbmZpZykge1xuICAgICAgICAgICAgICAgICAgICA8YWktdGFibGUtaWNvbiBbY29uZmlnXT1cImNvbmZpZy5kcmFnQ29uZmlnXCI+PC9haS10YWJsZS1pY29uPlxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIDwva28tZ3JvdXA+XG4gICAgICAgIH1cbiAgICBgLFxuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgaW1wb3J0czogW0tvQ29udGFpbmVyLCBLb1NoYXBlLCBBSVRhYmxlSWNvbl0sXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcbn0pXG5leHBvcnQgY2xhc3MgQUlUYWJsZUhvdmVyUm93SGVhZHMge1xuICAgIGNvbmZpZyA9IGlucHV0LnJlcXVpcmVkPEFJVGFibGVSb3dIZWFkc0NvbmZpZz4oKTtcblxuICAgIHBvaW50UG9zaXRpb24gPSBjb21wdXRlZCgoKSA9PiB7XG4gICAgICAgIHJldHVybiB0aGlzLmNvbmZpZygpLmFpVGFibGUuY29udGV4dCEucG9pbnRQb3NpdGlvbigpO1xuICAgIH0pO1xuXG4gICAgaGVhZENvbmZpZ3MgPSBjb21wdXRlZCgoKSA9PiB7XG4gICAgICAgIHJldHVybiB0aGlzLmNyZWF0ZUhvdmVyUm93SGVhZHModGhpcy5wb2ludFBvc2l0aW9uKCkpO1xuICAgIH0pO1xuXG4gICAgcmVhZG9ubHkgPSBjb21wdXRlZCgoKSA9PiB7XG4gICAgICAgIHJldHVybiB0aGlzLmNvbmZpZygpLnJlYWRvbmx5O1xuICAgIH0pO1xuXG4gICAgcm93RHJhZ0Rpc2FibGVkID0gY29tcHV0ZWQoKCkgPT4ge1xuICAgICAgICByZXR1cm4gdGhpcy5jb25maWcoKS5yb3dEcmFnRGlzYWJsZWQ7XG4gICAgfSk7XG5cbiAgICBjcmVhdGVIb3ZlclJvd0hlYWRzID0gKHBvaW50UG9zaXRpb246IEFJVGFibGVQb2ludFBvc2l0aW9uKSA9PiB7XG4gICAgICAgIGNvbnN0IHsgY29vcmRpbmF0ZSwgcm93U3RhcnRJbmRleCwgcm93U3RvcEluZGV4LCBhaVRhYmxlIH0gPSB0aGlzLmNvbmZpZygpO1xuICAgICAgICBjb25zdCBjb250ZXh0ID0gYWlUYWJsZS5jb250ZXh0IGFzIFJlbmRlcmVyQ29udGV4dDtcbiAgICAgICAgY29uc3QgaGVhZENvbmZpZ3M6IGFueVtdID0gW107XG5cbiAgICAgICAgZm9yIChsZXQgcm93SW5kZXggPSByb3dTdGFydEluZGV4OyByb3dJbmRleCA8PSByb3dTdG9wSW5kZXg7IHJvd0luZGV4KyspIHtcbiAgICAgICAgICAgIGlmIChyb3dJbmRleCA+IGNvb3JkaW5hdGUucm93Q291bnQgLSAxKSB7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGNvbnN0IHJvdyA9IGNvbnRleHQubGluZWFyUm93cygpW3Jvd0luZGV4XTtcbiAgICAgICAgICAgIGlmIChyb3cgPT0gbnVsbCkge1xuICAgICAgICAgICAgICAgIGNvbnRpbnVlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBjb25zdCB7IHR5cGUsIF9pZDogcmVjb3JkSWQgfSA9IHJvdztcbiAgICAgICAgICAgIGlmICh0eXBlICE9PSBBSVRhYmxlUm93VHlwZS5yZWNvcmQgfHwgcmVjb3JkSWQgPT0gbnVsbCkge1xuICAgICAgICAgICAgICAgIGNvbnRpbnVlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBjb25zdCBpc0NoZWNrZWRSb3cgPSBhaVRhYmxlLnNlbGVjdGlvbigpLnNlbGVjdGVkUmVjb3Jkcy5oYXMocmVjb3JkSWQpO1xuICAgICAgICAgICAgY29uc3QgeyBhcmVhVHlwZSwgcm93SW5kZXg6IHBvaW50Um93SW5kZXgsIHRhcmdldE5hbWUgfSA9IHBvaW50UG9zaXRpb247XG5cbiAgICAgICAgICAgIGlmICghaXNDaGVja2VkUm93ICYmIGFyZWFUeXBlID09PSBBSVRhYmxlQXJlYVR5cGUubm9uZSkge1xuICAgICAgICAgICAgICAgIGNvbnRpbnVlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBsZXQgaXNIb3ZlclJvdztcbiAgICAgICAgICAgIGlmIChwb2ludFJvd0luZGV4ID4gLTEgJiYgISFjb250ZXh0LmxpbmVhclJvd3MoKS5sZW5ndGggJiYgcG9pbnRSb3dJbmRleCA8IGNvbnRleHQubGluZWFyUm93cygpLmxlbmd0aCkge1xuICAgICAgICAgICAgICAgIGNvbnN0IHsgdHlwZTogcG9pbnRSb3dUeXBlLCBfaWQ6IHBvaW50UmVjb3JkSWQgfSA9IGNvbnRleHQubGluZWFyUm93cygpW3BvaW50Um93SW5kZXhdO1xuICAgICAgICAgICAgICAgIGlzSG92ZXJSb3cgPSByZWNvcmRJZCA9PT0gcG9pbnRSZWNvcmRJZCAmJiBwb2ludFJvd1R5cGUgPT09IEFJVGFibGVSb3dUeXBlLnJlY29yZCAmJiB0YXJnZXROYW1lICE9PSBBSV9UQUJMRV9GSUVMRF9IRUFEO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBsZXQgb3BlcmF0aW9uR3JvdXA6IHsgcmVjb3JkSWQ6IHN0cmluZzsgeTogbnVtYmVyOyBiZ0NvbmZpZzogYW55OyBpY29uQ29uZmlnPzogYW55OyBkcmFnQ29uZmlnPzogYW55IH07XG5cbiAgICAgICAgICAgIG9wZXJhdGlvbkdyb3VwID0ge1xuICAgICAgICAgICAgICAgIHJlY29yZElkLFxuICAgICAgICAgICAgICAgIHk6IGNvb3JkaW5hdGUuZ2V0Um93T2Zmc2V0KHJvd0luZGV4KSxcbiAgICAgICAgICAgICAgICBiZ0NvbmZpZzoge1xuICAgICAgICAgICAgICAgICAgICBuYW1lOiBnZW5lcmF0ZVRhcmdldE5hbWUoeyB0YXJnZXROYW1lOiBBSV9UQUJMRV9ST1dfSEVBRCwgcmVjb3JkSWQgfSksXG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiBjb250ZXh0LnJvd0hlYWRXaWR0aCgpICsgMSxcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiBjb29yZGluYXRlLnJvd0hlaWdodCxcbiAgICAgICAgICAgICAgICAgICAgZmlsbDogQ29sb3JzLnRyYW5zcGFyZW50XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfTtcblxuICAgICAgICAgICAgaWYgKGlzQ2hlY2tlZFJvdyB8fCBpc0hvdmVyUm93KSB7XG4gICAgICAgICAgICAgICAgY29uc3QgaWNvbk9mZnNldFkgPSAoQUlfVEFCTEVfRklFTERfSEVBRF9IRUlHSFQgLSAxNikgLyAyO1xuICAgICAgICAgICAgICAgIG9wZXJhdGlvbkdyb3VwLmljb25Db25maWcgPSB7XG4gICAgICAgICAgICAgICAgICAgIG5hbWU6IGdlbmVyYXRlVGFyZ2V0TmFtZSh7XG4gICAgICAgICAgICAgICAgICAgICAgICB0YXJnZXROYW1lOiBBSV9UQUJMRV9ST1dfU0VMRUNUX0NIRUNLQk9YLFxuICAgICAgICAgICAgICAgICAgICAgICAgcmVjb3JkSWRcbiAgICAgICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICAgICAgICAgIHg6IEFJX1RBQkxFX0NFTExfUEFERElORyArIEFJX1RBQkxFX1JPV19EUkFHX0lDT05fV0lEVEgsXG4gICAgICAgICAgICAgICAgICAgIHk6IGljb25PZmZzZXRZLFxuICAgICAgICAgICAgICAgICAgICB0eXBlOiBpc0NoZWNrZWRSb3cgPyBBSVRhYmxlQ2hlY2tUeXBlLmNoZWNrZWQgOiBBSVRhYmxlQ2hlY2tUeXBlLnVuY2hlY2tlZCxcbiAgICAgICAgICAgICAgICAgICAgZmlsbDogaXNDaGVja2VkUm93IHx8ICh0YXJnZXROYW1lID09PSBBSV9UQUJMRV9ST1dfU0VMRUNUX0NIRUNLQk9YICYmICFpc0NoZWNrZWRSb3cpID8gQ29sb3JzLnByaW1hcnkgOiBDb2xvcnMuZ3JheTMwMFxuICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICAgICAgaWYgKCF0aGlzLnJlYWRvbmx5KCkgJiYgIXRoaXMucm93RHJhZ0Rpc2FibGVkKCkpIHtcbiAgICAgICAgICAgICAgICAgICAgb3BlcmF0aW9uR3JvdXAuZHJhZ0NvbmZpZyA9IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU6IGdlbmVyYXRlVGFyZ2V0TmFtZSh7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGFyZ2V0TmFtZTogQUlfVEFCTEVfUk9XX0RSQUcsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVjb3JkSWRcbiAgICAgICAgICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgICAgICAgICAgICAgeDogMCxcbiAgICAgICAgICAgICAgICAgICAgICAgIHk6IGljb25PZmZzZXRZLFxuICAgICAgICAgICAgICAgICAgICAgICAgdHlwZTogRHJhZ1R5cGUucmVjb3JkLFxuICAgICAgICAgICAgICAgICAgICAgICAgZmlsbDogQ29sb3JzLmdyYXk2MDBcbiAgICAgICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgaGVhZENvbmZpZ3MucHVzaChvcGVyYXRpb25Hcm91cCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gaGVhZENvbmZpZ3M7XG4gICAgfTtcbn1cbiJdfQ==
|