@wcardinal/wcardinal-ui 0.411.0 → 0.413.0
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/dist/types/wcardinal/ui/d-indicator-processing.d.ts +8 -7
- package/dist/types/wcardinal/ui/d-pagination.d.ts +5 -5
- package/dist/types/wcardinal/ui/d-table-body-cell.d.ts +2 -2
- package/dist/types/wcardinal/ui/d-table-body-row.d.ts +9 -9
- package/dist/types/wcardinal/ui/d-table-body.d.ts +5 -7
- package/dist/types/wcardinal/ui/d-table-category-cell.d.ts +37 -0
- package/dist/types/wcardinal/ui/d-table-category-column-impl.d.ts +24 -0
- package/dist/types/wcardinal/ui/d-table-category-column.d.ts +10 -0
- package/dist/types/wcardinal/ui/d-table-category-container-impl.d.ts +12 -0
- package/dist/types/wcardinal/ui/d-table-category-container.d.ts +4 -0
- package/dist/types/wcardinal/ui/d-table-category.d.ts +13 -12
- package/dist/types/wcardinal/ui/d-table-column-container-impl.d.ts +25 -0
- package/dist/types/wcardinal/ui/d-table-column-container.d.ts +12 -0
- package/dist/types/wcardinal/ui/d-table-column-impl.d.ts +44 -0
- package/dist/types/wcardinal/ui/d-table-column.d.ts +22 -19
- package/dist/types/wcardinal/ui/d-table-header-cell-check.d.ts +1 -1
- package/dist/types/wcardinal/ui/d-table-header-cell.d.ts +34 -12
- package/dist/types/wcardinal/ui/d-table-header.d.ts +8 -9
- package/dist/types/wcardinal/ui/d-table-row.d.ts +8 -9
- package/dist/types/wcardinal/ui/d-table-state.d.ts +8 -0
- package/dist/types/wcardinal/ui/d-table.d.ts +15 -18
- package/dist/types/wcardinal/ui/index.d.ts +7 -0
- package/dist/types/wcardinal/ui/theme/dark/d-theme-dark-table-header-cell.d.ts +1 -0
- package/dist/types/wcardinal/ui/theme/dark/d-theme-dark-table-header.d.ts +1 -0
- package/dist/types/wcardinal/ui/theme/white/d-theme-white-table-header-cell.d.ts +1 -0
- package/dist/types/wcardinal/ui/theme/white/d-theme-white-table-header.d.ts +1 -0
- package/dist/wcardinal/ui/d-base.js +2 -2
- package/dist/wcardinal/ui/d-base.js.map +1 -1
- package/dist/wcardinal/ui/d-indicator-processing.js +20 -15
- package/dist/wcardinal/ui/d-indicator-processing.js.map +1 -1
- package/dist/wcardinal/ui/d-pagination.js +5 -5
- package/dist/wcardinal/ui/d-pagination.js.map +1 -1
- package/dist/wcardinal/ui/d-table-body-cell.js.map +1 -1
- package/dist/wcardinal/ui/d-table-body-row.js +4 -4
- package/dist/wcardinal/ui/d-table-body-row.js.map +1 -1
- package/dist/wcardinal/ui/d-table-body.js +6 -15
- package/dist/wcardinal/ui/d-table-body.js.map +1 -1
- package/dist/wcardinal/ui/d-table-category-cell.js +244 -2
- package/dist/wcardinal/ui/d-table-category-cell.js.map +1 -1
- package/dist/wcardinal/ui/d-table-category-column-impl.js +222 -0
- package/dist/wcardinal/ui/d-table-category-column-impl.js.map +1 -0
- package/dist/wcardinal/ui/d-table-category-column.js +6 -0
- package/dist/wcardinal/ui/d-table-category-column.js.map +1 -0
- package/dist/wcardinal/ui/d-table-category-container-impl.js +149 -0
- package/dist/wcardinal/ui/d-table-category-container-impl.js.map +1 -0
- package/dist/wcardinal/ui/d-table-category-container.js +2 -0
- package/dist/wcardinal/ui/d-table-category-container.js.map +1 -0
- package/dist/wcardinal/ui/d-table-category.js +49 -7
- package/dist/wcardinal/ui/d-table-category.js.map +1 -1
- package/dist/wcardinal/ui/d-table-column-container-impl.js +126 -0
- package/dist/wcardinal/ui/d-table-column-container-impl.js.map +1 -0
- package/dist/wcardinal/ui/d-table-column-container.js +2 -0
- package/dist/wcardinal/ui/d-table-column-container.js.map +1 -0
- package/dist/wcardinal/ui/d-table-column-impl.js +375 -0
- package/dist/wcardinal/ui/d-table-column-impl.js.map +1 -0
- package/dist/wcardinal/ui/d-table-column.js.map +1 -1
- package/dist/wcardinal/ui/d-table-header-cell-check.js.map +1 -1
- package/dist/wcardinal/ui/d-table-header-cell.js +245 -48
- package/dist/wcardinal/ui/d-table-header-cell.js.map +1 -1
- package/dist/wcardinal/ui/d-table-header.js +8 -22
- package/dist/wcardinal/ui/d-table-header.js.map +1 -1
- package/dist/wcardinal/ui/d-table-row.js +7 -5
- package/dist/wcardinal/ui/d-table-row.js.map +1 -1
- package/dist/wcardinal/ui/d-table-state.js +9 -1
- package/dist/wcardinal/ui/d-table-state.js.map +1 -1
- package/dist/wcardinal/ui/d-table.js +69 -631
- package/dist/wcardinal/ui/d-table.js.map +1 -1
- package/dist/wcardinal/ui/index.js +7 -0
- package/dist/wcardinal/ui/index.js.map +1 -1
- package/dist/wcardinal/ui/theme/dark/d-theme-dark-table-header-cell.js +7 -1
- package/dist/wcardinal/ui/theme/dark/d-theme-dark-table-header-cell.js.map +1 -1
- package/dist/wcardinal/ui/theme/dark/d-theme-dark-table-header.js +7 -0
- package/dist/wcardinal/ui/theme/dark/d-theme-dark-table-header.js.map +1 -1
- package/dist/wcardinal/ui/theme/white/d-theme-white-table-header-cell.js +7 -1
- package/dist/wcardinal/ui/theme/white/d-theme-white-table-header-cell.js.map +1 -1
- package/dist/wcardinal/ui/theme/white/d-theme-white-table-header.js +7 -0
- package/dist/wcardinal/ui/theme/white/d-theme-white-table-header.js.map +1 -1
- package/dist/wcardinal-ui-theme-dark-en-us.js +14 -2
- package/dist/wcardinal-ui-theme-dark-en-us.min.js +2 -2
- package/dist/wcardinal-ui-theme-dark-en-us.min.js.map +1 -1
- package/dist/wcardinal-ui-theme-dark-ja-jp.js +14 -2
- package/dist/wcardinal-ui-theme-dark-ja-jp.min.js +2 -2
- package/dist/wcardinal-ui-theme-dark-ja-jp.min.js.map +1 -1
- package/dist/wcardinal-ui-theme-dark.js +14 -2
- package/dist/wcardinal-ui-theme-dark.min.js +2 -2
- package/dist/wcardinal-ui-theme-white-en-us.js +14 -2
- package/dist/wcardinal-ui-theme-white-en-us.min.js +2 -2
- package/dist/wcardinal-ui-theme-white-en-us.min.js.map +1 -1
- package/dist/wcardinal-ui-theme-white-ja-jp.js +14 -2
- package/dist/wcardinal-ui-theme-white-ja-jp.min.js +2 -2
- package/dist/wcardinal-ui-theme-white-ja-jp.min.js.map +1 -1
- package/dist/wcardinal-ui-theme-white.js +14 -2
- package/dist/wcardinal-ui-theme-white.min.js +2 -2
- package/dist/wcardinal-ui.cjs.js +1545 -753
- package/dist/wcardinal-ui.js +1882 -1114
- package/dist/wcardinal-ui.min.js +2 -2
- package/dist/wcardinal-ui.min.js.map +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,222 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright (C) 2019 Toshiba Corporation
|
|
3
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
4
|
+
*/
|
|
5
|
+
import { __extends } from "tslib";
|
|
6
|
+
import { utils } from "pixi.js";
|
|
7
|
+
import { isString } from "./util/is-string";
|
|
8
|
+
var DTableCategoryColumnImpl = /** @class */ (function (_super) {
|
|
9
|
+
__extends(DTableCategoryColumnImpl, _super);
|
|
10
|
+
function DTableCategoryColumnImpl(index, column) {
|
|
11
|
+
var _this = _super.call(this) || this;
|
|
12
|
+
// Label
|
|
13
|
+
var category = column.category;
|
|
14
|
+
if (category) {
|
|
15
|
+
if (isString(category)) {
|
|
16
|
+
if (index === 0) {
|
|
17
|
+
_this.label = category;
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
else {
|
|
21
|
+
if (index < category.length) {
|
|
22
|
+
_this.label = category[index];
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
_this._weight = column.weight;
|
|
27
|
+
_this._width = column.width;
|
|
28
|
+
_this._isLocked = false;
|
|
29
|
+
_this.offset = 0.0;
|
|
30
|
+
_this._columns = [column];
|
|
31
|
+
_this._nresizable = column.resizable ? 1 : 0;
|
|
32
|
+
var onResizeBound = function () {
|
|
33
|
+
_this.onResize();
|
|
34
|
+
};
|
|
35
|
+
_this._onResizeBound = onResizeBound;
|
|
36
|
+
column.on("resize", onResizeBound);
|
|
37
|
+
return _this;
|
|
38
|
+
}
|
|
39
|
+
DTableCategoryColumnImpl.prototype.onResize = function () {
|
|
40
|
+
if (this._isLocked) {
|
|
41
|
+
return;
|
|
42
|
+
}
|
|
43
|
+
var columns = this._columns;
|
|
44
|
+
if (this._weight != null) {
|
|
45
|
+
var newWeight = 0;
|
|
46
|
+
for (var i = 0, imax = columns.length; i < imax; ++i) {
|
|
47
|
+
var weight = columns[i].weight;
|
|
48
|
+
if (weight != null) {
|
|
49
|
+
newWeight += weight;
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
if (this._weight !== newWeight) {
|
|
53
|
+
this._weight = newWeight;
|
|
54
|
+
this.emit("resize", this);
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
else {
|
|
58
|
+
var newWidth = 0;
|
|
59
|
+
for (var i = 0, imax = columns.length; i < imax; ++i) {
|
|
60
|
+
var width = columns[i].width;
|
|
61
|
+
if (width != null) {
|
|
62
|
+
newWidth += width;
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
if (this._width !== newWidth) {
|
|
66
|
+
this._width = newWidth;
|
|
67
|
+
this.emit("resize", this);
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
};
|
|
71
|
+
Object.defineProperty(DTableCategoryColumnImpl.prototype, "resizable", {
|
|
72
|
+
get: function () {
|
|
73
|
+
return 0 < this._nresizable;
|
|
74
|
+
},
|
|
75
|
+
enumerable: false,
|
|
76
|
+
configurable: true
|
|
77
|
+
});
|
|
78
|
+
Object.defineProperty(DTableCategoryColumnImpl.prototype, "weight", {
|
|
79
|
+
get: function () {
|
|
80
|
+
return this._weight;
|
|
81
|
+
},
|
|
82
|
+
set: function (weight) {
|
|
83
|
+
var oldWeight = this._weight;
|
|
84
|
+
var nresizable = this._nresizable;
|
|
85
|
+
if (0 < nresizable && oldWeight != null && oldWeight !== weight) {
|
|
86
|
+
var columns = this._columns;
|
|
87
|
+
var columnsLength = columns.length;
|
|
88
|
+
var minWeight = this.minWeight;
|
|
89
|
+
var newWeight = Math.max(minWeight, weight);
|
|
90
|
+
if (this._weight !== newWeight) {
|
|
91
|
+
this._isLocked = true;
|
|
92
|
+
if (minWeight < oldWeight) {
|
|
93
|
+
var columnWeightRatio = (newWeight - minWeight) / (oldWeight - minWeight);
|
|
94
|
+
for (var i = 0; i < columnsLength; ++i) {
|
|
95
|
+
var column = columns[i];
|
|
96
|
+
var columnWeight = column.weight;
|
|
97
|
+
if (column.resizable && columnWeight != null) {
|
|
98
|
+
column.weight = columnWeight * columnWeightRatio;
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
}
|
|
102
|
+
else {
|
|
103
|
+
var newColumnWeight = (newWeight - minWeight) / this._nresizable;
|
|
104
|
+
for (var i = 0; i < columnsLength; ++i) {
|
|
105
|
+
var column = columns[i];
|
|
106
|
+
var columnWeight = column.weight;
|
|
107
|
+
if (column.resizable && columnWeight != null) {
|
|
108
|
+
column.weight = newColumnWeight;
|
|
109
|
+
}
|
|
110
|
+
}
|
|
111
|
+
}
|
|
112
|
+
this._isLocked = false;
|
|
113
|
+
this.onResize();
|
|
114
|
+
}
|
|
115
|
+
}
|
|
116
|
+
},
|
|
117
|
+
enumerable: false,
|
|
118
|
+
configurable: true
|
|
119
|
+
});
|
|
120
|
+
Object.defineProperty(DTableCategoryColumnImpl.prototype, "minWeight", {
|
|
121
|
+
get: function () {
|
|
122
|
+
var result = 0;
|
|
123
|
+
var columns = this._columns;
|
|
124
|
+
var columnsLength = columns.length;
|
|
125
|
+
for (var i = 0; i < columnsLength; ++i) {
|
|
126
|
+
var column = columns[i];
|
|
127
|
+
var columnWeight = column.weight;
|
|
128
|
+
if (!column.resizable && columnWeight != null) {
|
|
129
|
+
result += columnWeight;
|
|
130
|
+
}
|
|
131
|
+
}
|
|
132
|
+
return result;
|
|
133
|
+
},
|
|
134
|
+
enumerable: false,
|
|
135
|
+
configurable: true
|
|
136
|
+
});
|
|
137
|
+
Object.defineProperty(DTableCategoryColumnImpl.prototype, "width", {
|
|
138
|
+
get: function () {
|
|
139
|
+
return this._width;
|
|
140
|
+
},
|
|
141
|
+
set: function (width) {
|
|
142
|
+
var oldWidth = this._width;
|
|
143
|
+
var nresizable = this._nresizable;
|
|
144
|
+
if (0 < nresizable && oldWidth != null && oldWidth !== width) {
|
|
145
|
+
var columns = this._columns;
|
|
146
|
+
var columnsLength = columns.length;
|
|
147
|
+
var minWidth = this.minWidth;
|
|
148
|
+
var newWidth = Math.max(minWidth, width);
|
|
149
|
+
if (oldWidth !== newWidth) {
|
|
150
|
+
this._isLocked = true;
|
|
151
|
+
if (minWidth < oldWidth) {
|
|
152
|
+
var columnWidthRatio = (newWidth - minWidth) / (oldWidth - minWidth);
|
|
153
|
+
for (var i = 0; i < columnsLength; ++i) {
|
|
154
|
+
var column = columns[i];
|
|
155
|
+
var columnWidth = column.width;
|
|
156
|
+
if (column.resizable && columnWidth != null) {
|
|
157
|
+
column.width = columnWidth * columnWidthRatio;
|
|
158
|
+
}
|
|
159
|
+
}
|
|
160
|
+
}
|
|
161
|
+
else {
|
|
162
|
+
var newColumnWidth = (newWidth - minWidth) / this._nresizable;
|
|
163
|
+
for (var i = 0; i < columnsLength; ++i) {
|
|
164
|
+
var column = columns[i];
|
|
165
|
+
var columnWidth = column.width;
|
|
166
|
+
if (column.resizable && columnWidth != null) {
|
|
167
|
+
column.width = newColumnWidth;
|
|
168
|
+
}
|
|
169
|
+
}
|
|
170
|
+
}
|
|
171
|
+
this._isLocked = false;
|
|
172
|
+
this.onResize();
|
|
173
|
+
}
|
|
174
|
+
}
|
|
175
|
+
},
|
|
176
|
+
enumerable: false,
|
|
177
|
+
configurable: true
|
|
178
|
+
});
|
|
179
|
+
Object.defineProperty(DTableCategoryColumnImpl.prototype, "minWidth", {
|
|
180
|
+
get: function () {
|
|
181
|
+
var result = 0;
|
|
182
|
+
var columns = this._columns;
|
|
183
|
+
var columnsLength = columns.length;
|
|
184
|
+
for (var i = 0; i < columnsLength; ++i) {
|
|
185
|
+
var column = columns[i];
|
|
186
|
+
var columnWidth = column.width;
|
|
187
|
+
if (!column.resizable && columnWidth != null) {
|
|
188
|
+
result += columnWidth;
|
|
189
|
+
}
|
|
190
|
+
}
|
|
191
|
+
return result;
|
|
192
|
+
},
|
|
193
|
+
enumerable: false,
|
|
194
|
+
configurable: true
|
|
195
|
+
});
|
|
196
|
+
DTableCategoryColumnImpl.prototype.add = function (column) {
|
|
197
|
+
this._columns.push(column);
|
|
198
|
+
if (this._weight != null) {
|
|
199
|
+
var weight = column.weight;
|
|
200
|
+
if (weight != null) {
|
|
201
|
+
this._weight += weight;
|
|
202
|
+
if (column.resizable) {
|
|
203
|
+
this._nresizable += 1;
|
|
204
|
+
}
|
|
205
|
+
column.on("resize", this._onResizeBound);
|
|
206
|
+
}
|
|
207
|
+
}
|
|
208
|
+
else if (this._width != null) {
|
|
209
|
+
var width = column.width;
|
|
210
|
+
if (width != null) {
|
|
211
|
+
this._width += width;
|
|
212
|
+
if (column.resizable) {
|
|
213
|
+
this._nresizable += 1;
|
|
214
|
+
}
|
|
215
|
+
column.on("resize", this._onResizeBound);
|
|
216
|
+
}
|
|
217
|
+
}
|
|
218
|
+
};
|
|
219
|
+
return DTableCategoryColumnImpl;
|
|
220
|
+
}(utils.EventEmitter));
|
|
221
|
+
export { DTableCategoryColumnImpl };
|
|
222
|
+
//# sourceMappingURL=d-table-category-column-impl.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"d-table-category-column-impl.js","sourceRoot":"","sources":["../../../src/main/typescript/wcardinal/ui/d-table-category-column-impl.ts"],"names":[],"mappings":"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","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { utils } from \"pixi.js\";\nimport { DTableCategoryColumn } from \"./d-table-category-column\";\nimport { DTableColumn } from \"./d-table-column\";\nimport { isString } from \"./util/is-string\";\nimport { DTableColumnSelectingDialog } from \"./d-table-column-selecting\";\n\nexport class DTableCategoryColumnImpl<\n\t\tROW_VALUE,\n\t\tCELL_VALUE,\n\t\tDIALOG_VALUE = CELL_VALUE,\n\t\tDIALOG extends\n\t\t\tDTableColumnSelectingDialog<DIALOG_VALUE> = DTableColumnSelectingDialog<DIALOG_VALUE>\n\t>\n\textends utils.EventEmitter\n\timplements DTableCategoryColumn\n{\n\tlabel: string | undefined;\n\tprotected _weight: number | undefined;\n\tprotected _width: number | undefined;\n\tprotected _isLocked: boolean;\n\toffset: number;\n\tprotected _columns: DTableColumn<ROW_VALUE, CELL_VALUE, DIALOG_VALUE, DIALOG>[];\n\tprotected _nresizable: number;\n\n\tprotected _onResizeBound: (\n\t\tcolumn: DTableColumn<ROW_VALUE, CELL_VALUE, DIALOG_VALUE, DIALOG>\n\t) => void;\n\n\tconstructor(index: number, column: DTableColumn<ROW_VALUE, CELL_VALUE, DIALOG_VALUE, DIALOG>) {\n\t\tsuper();\n\n\t\t// Label\n\t\tconst category = column.category;\n\t\tif (category) {\n\t\t\tif (isString(category)) {\n\t\t\t\tif (index === 0) {\n\t\t\t\t\tthis.label = category;\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tif (index < category.length) {\n\t\t\t\t\tthis.label = category[index];\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\tthis._weight = column.weight;\n\t\tthis._width = column.width;\n\t\tthis._isLocked = false;\n\t\tthis.offset = 0.0;\n\t\tthis._columns = [column];\n\t\tthis._nresizable = column.resizable ? 1 : 0;\n\n\t\tconst onResizeBound = (): void => {\n\t\t\tthis.onResize();\n\t\t};\n\t\tthis._onResizeBound = onResizeBound;\n\t\tcolumn.on(\"resize\", onResizeBound);\n\t}\n\n\tprotected onResize(): void {\n\t\tif (this._isLocked) {\n\t\t\treturn;\n\t\t}\n\t\tconst columns = this._columns;\n\t\tif (this._weight != null) {\n\t\t\tlet newWeight = 0;\n\t\t\tfor (let i = 0, imax = columns.length; i < imax; ++i) {\n\t\t\t\tconst weight = columns[i].weight;\n\t\t\t\tif (weight != null) {\n\t\t\t\t\tnewWeight += weight;\n\t\t\t\t}\n\t\t\t}\n\t\t\tif (this._weight !== newWeight) {\n\t\t\t\tthis._weight = newWeight;\n\t\t\t\tthis.emit(\"resize\", this);\n\t\t\t}\n\t\t} else {\n\t\t\tlet newWidth = 0;\n\t\t\tfor (let i = 0, imax = columns.length; i < imax; ++i) {\n\t\t\t\tconst width = columns[i].width;\n\t\t\t\tif (width != null) {\n\t\t\t\t\tnewWidth += width;\n\t\t\t\t}\n\t\t\t}\n\t\t\tif (this._width !== newWidth) {\n\t\t\t\tthis._width = newWidth;\n\t\t\t\tthis.emit(\"resize\", this);\n\t\t\t}\n\t\t}\n\t}\n\n\tget resizable(): boolean {\n\t\treturn 0 < this._nresizable;\n\t}\n\n\tget weight(): number | undefined {\n\t\treturn this._weight;\n\t}\n\n\tset weight(weight: number) {\n\t\tconst oldWeight = this._weight;\n\t\tconst nresizable = this._nresizable;\n\t\tif (0 < nresizable && oldWeight != null && oldWeight !== weight) {\n\t\t\tconst columns = this._columns;\n\t\t\tconst columnsLength = columns.length;\n\t\t\tconst minWeight = this.minWeight;\n\t\t\tconst newWeight = Math.max(minWeight, weight);\n\t\t\tif (this._weight !== newWeight) {\n\t\t\t\tthis._isLocked = true;\n\t\t\t\tif (minWeight < oldWeight) {\n\t\t\t\t\tconst columnWeightRatio = (newWeight - minWeight) / (oldWeight - minWeight);\n\t\t\t\t\tfor (let i = 0; i < columnsLength; ++i) {\n\t\t\t\t\t\tconst column = columns[i];\n\t\t\t\t\t\tconst columnWeight = column.weight;\n\t\t\t\t\t\tif (column.resizable && columnWeight != null) {\n\t\t\t\t\t\t\tcolumn.weight = columnWeight * columnWeightRatio;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\tconst newColumnWeight = (newWeight - minWeight) / this._nresizable;\n\t\t\t\t\tfor (let i = 0; i < columnsLength; ++i) {\n\t\t\t\t\t\tconst column = columns[i];\n\t\t\t\t\t\tconst columnWeight = column.weight;\n\t\t\t\t\t\tif (column.resizable && columnWeight != null) {\n\t\t\t\t\t\t\tcolumn.weight = newColumnWeight;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tthis._isLocked = false;\n\t\t\t\tthis.onResize();\n\t\t\t}\n\t\t}\n\t}\n\n\tget minWeight(): number {\n\t\tlet result = 0;\n\t\tconst columns = this._columns;\n\t\tconst columnsLength = columns.length;\n\t\tfor (let i = 0; i < columnsLength; ++i) {\n\t\t\tconst column = columns[i];\n\t\t\tconst columnWeight = column.weight;\n\t\t\tif (!column.resizable && columnWeight != null) {\n\t\t\t\tresult += columnWeight;\n\t\t\t}\n\t\t}\n\t\treturn result;\n\t}\n\n\tget width(): number | undefined {\n\t\treturn this._width;\n\t}\n\n\tset width(width: number) {\n\t\tconst oldWidth = this._width;\n\t\tconst nresizable = this._nresizable;\n\t\tif (0 < nresizable && oldWidth != null && oldWidth !== width) {\n\t\t\tconst columns = this._columns;\n\t\t\tconst columnsLength = columns.length;\n\t\t\tconst minWidth = this.minWidth;\n\t\t\tconst newWidth = Math.max(minWidth, width);\n\t\t\tif (oldWidth !== newWidth) {\n\t\t\t\tthis._isLocked = true;\n\t\t\t\tif (minWidth < oldWidth) {\n\t\t\t\t\tconst columnWidthRatio = (newWidth - minWidth) / (oldWidth - minWidth);\n\t\t\t\t\tfor (let i = 0; i < columnsLength; ++i) {\n\t\t\t\t\t\tconst column = columns[i];\n\t\t\t\t\t\tconst columnWidth = column.width;\n\t\t\t\t\t\tif (column.resizable && columnWidth != null) {\n\t\t\t\t\t\t\tcolumn.width = columnWidth * columnWidthRatio;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\tconst newColumnWidth = (newWidth - minWidth) / this._nresizable;\n\t\t\t\t\tfor (let i = 0; i < columnsLength; ++i) {\n\t\t\t\t\t\tconst column = columns[i];\n\t\t\t\t\t\tconst columnWidth = column.width;\n\t\t\t\t\t\tif (column.resizable && columnWidth != null) {\n\t\t\t\t\t\t\tcolumn.width = newColumnWidth;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tthis._isLocked = false;\n\t\t\t\tthis.onResize();\n\t\t\t}\n\t\t}\n\t}\n\n\tget minWidth(): number {\n\t\tlet result = 0;\n\t\tconst columns = this._columns;\n\t\tconst columnsLength = columns.length;\n\t\tfor (let i = 0; i < columnsLength; ++i) {\n\t\t\tconst column = columns[i];\n\t\t\tconst columnWidth = column.width;\n\t\t\tif (!column.resizable && columnWidth != null) {\n\t\t\t\tresult += columnWidth;\n\t\t\t}\n\t\t}\n\t\treturn result;\n\t}\n\n\tadd(column: DTableColumn<ROW_VALUE, CELL_VALUE, DIALOG_VALUE, DIALOG>): void {\n\t\tthis._columns.push(column);\n\t\tif (this._weight != null) {\n\t\t\tconst weight = column.weight;\n\t\t\tif (weight != null) {\n\t\t\t\tthis._weight += weight;\n\t\t\t\tif (column.resizable) {\n\t\t\t\t\tthis._nresizable += 1;\n\t\t\t\t}\n\t\t\t\tcolumn.on(\"resize\", this._onResizeBound);\n\t\t\t}\n\t\t} else if (this._width != null) {\n\t\t\tconst width = column.width;\n\t\t\tif (width != null) {\n\t\t\t\tthis._width += width;\n\t\t\t\tif (column.resizable) {\n\t\t\t\t\tthis._nresizable += 1;\n\t\t\t\t}\n\t\t\t\tcolumn.on(\"resize\", this._onResizeBound);\n\t\t\t}\n\t\t}\n\t}\n}\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"d-table-category-column.js","sourceRoot":"","sources":["../../../src/main/typescript/wcardinal/ui/d-table-category-column.ts"],"names":[],"mappings":"AAAA;;;GAGG","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { utils } from \"pixi.js\";\n\nexport interface DTableCategoryColumn extends utils.EventEmitter {\n\treadonly label?: string;\n\tweight?: number;\n\treadonly minWeight: number;\n\twidth?: number;\n\treadonly minWidth: number;\n\toffset: number;\n\treadonly resizable: boolean;\n}\n"]}
|
|
@@ -0,0 +1,149 @@
|
|
|
1
|
+
import { DTableCategory } from "./d-table-category";
|
|
2
|
+
import { DTableCategoryColumnImpl } from "./d-table-category-column-impl";
|
|
3
|
+
import { isString } from "./util/is-string";
|
|
4
|
+
var DTableCategoryContainerImpl = /** @class */ (function () {
|
|
5
|
+
function DTableCategoryContainerImpl(columns, frozen, options) {
|
|
6
|
+
var count = this.toCount(columns);
|
|
7
|
+
var items = [];
|
|
8
|
+
var offset = 0;
|
|
9
|
+
for (var i = count - 1; 0 <= i; --i) {
|
|
10
|
+
var item = new DTableCategory(this.toColumns(i, columns, frozen), frozen, offset, options);
|
|
11
|
+
items.push(item);
|
|
12
|
+
offset += item.height;
|
|
13
|
+
}
|
|
14
|
+
this.items = items;
|
|
15
|
+
}
|
|
16
|
+
DTableCategoryContainerImpl.prototype.toCount = function (columns) {
|
|
17
|
+
var result = 0;
|
|
18
|
+
for (var i = 0, imax = columns.length; i < imax; ++i) {
|
|
19
|
+
var category = columns[i].category;
|
|
20
|
+
if (category != null) {
|
|
21
|
+
var count = isString(category) ? 1 : category.length;
|
|
22
|
+
result = Math.max(result, count);
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
return result;
|
|
26
|
+
};
|
|
27
|
+
DTableCategoryContainerImpl.prototype.isCategory = function (index, a, b) {
|
|
28
|
+
if (a != null) {
|
|
29
|
+
if (b != null) {
|
|
30
|
+
if (isString(a)) {
|
|
31
|
+
if (isString(b)) {
|
|
32
|
+
if (0 < index) {
|
|
33
|
+
return true;
|
|
34
|
+
}
|
|
35
|
+
else {
|
|
36
|
+
return a === b;
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
else {
|
|
40
|
+
if (0 < index) {
|
|
41
|
+
return b.length <= index;
|
|
42
|
+
}
|
|
43
|
+
else {
|
|
44
|
+
return b.length === 1 && a === b[0];
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
else {
|
|
49
|
+
if (isString(b)) {
|
|
50
|
+
if (0 < index) {
|
|
51
|
+
return a.length <= index;
|
|
52
|
+
}
|
|
53
|
+
else {
|
|
54
|
+
return a.length === 1 && a[0] === b;
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
else {
|
|
58
|
+
if (a.length <= index && b.length <= index) {
|
|
59
|
+
return true;
|
|
60
|
+
}
|
|
61
|
+
else if (b.length === a.length) {
|
|
62
|
+
for (var i = index, imax = a.length; i < imax; ++i) {
|
|
63
|
+
if (a[i] !== b[i]) {
|
|
64
|
+
return false;
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
return true;
|
|
68
|
+
}
|
|
69
|
+
return false;
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
else {
|
|
74
|
+
if (isString(a)) {
|
|
75
|
+
if (0 < index) {
|
|
76
|
+
return true;
|
|
77
|
+
}
|
|
78
|
+
else {
|
|
79
|
+
return false;
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
else {
|
|
83
|
+
if (a.length <= index) {
|
|
84
|
+
return true;
|
|
85
|
+
}
|
|
86
|
+
else {
|
|
87
|
+
return false;
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
else {
|
|
93
|
+
if (b != null) {
|
|
94
|
+
if (isString(b)) {
|
|
95
|
+
if (0 < index) {
|
|
96
|
+
return true;
|
|
97
|
+
}
|
|
98
|
+
else {
|
|
99
|
+
return false;
|
|
100
|
+
}
|
|
101
|
+
}
|
|
102
|
+
else {
|
|
103
|
+
if (b.length <= index) {
|
|
104
|
+
return true;
|
|
105
|
+
}
|
|
106
|
+
else {
|
|
107
|
+
return false;
|
|
108
|
+
}
|
|
109
|
+
}
|
|
110
|
+
}
|
|
111
|
+
else {
|
|
112
|
+
return true;
|
|
113
|
+
}
|
|
114
|
+
}
|
|
115
|
+
};
|
|
116
|
+
DTableCategoryContainerImpl.prototype.toColumns = function (index, columns, frozen) {
|
|
117
|
+
var result = [];
|
|
118
|
+
var tcolumn = null;
|
|
119
|
+
var ccolumn = null;
|
|
120
|
+
for (var i = 0, imax = columns.length; i < imax; ++i) {
|
|
121
|
+
var column = columns[i];
|
|
122
|
+
if (i !== frozen &&
|
|
123
|
+
ccolumn &&
|
|
124
|
+
tcolumn &&
|
|
125
|
+
this.isCategory(index, tcolumn.category, column.category)) {
|
|
126
|
+
if (ccolumn.weight != null && column.weight != null) {
|
|
127
|
+
ccolumn.add(column);
|
|
128
|
+
}
|
|
129
|
+
else if (ccolumn.width != null && column.width != null) {
|
|
130
|
+
ccolumn.add(column);
|
|
131
|
+
}
|
|
132
|
+
else {
|
|
133
|
+
tcolumn = column;
|
|
134
|
+
ccolumn = new DTableCategoryColumnImpl(index, column);
|
|
135
|
+
result.push(ccolumn);
|
|
136
|
+
}
|
|
137
|
+
}
|
|
138
|
+
else {
|
|
139
|
+
tcolumn = column;
|
|
140
|
+
ccolumn = new DTableCategoryColumnImpl(index, column);
|
|
141
|
+
result.push(ccolumn);
|
|
142
|
+
}
|
|
143
|
+
}
|
|
144
|
+
return result;
|
|
145
|
+
};
|
|
146
|
+
return DTableCategoryContainerImpl;
|
|
147
|
+
}());
|
|
148
|
+
export { DTableCategoryContainerImpl };
|
|
149
|
+
//# sourceMappingURL=d-table-category-container-impl.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"d-table-category-container-impl.js","sourceRoot":"","sources":["../../../src/main/typescript/wcardinal/ui/d-table-category-container-impl.ts"],"names":[],"mappings":"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","sourcesContent":["import { DTableCategory, DTableCategoryOptions } from \"./d-table-category\";\nimport { DTableCategoryColumn } from \"./d-table-category-column\";\nimport { DTableCategoryColumnImpl } from \"./d-table-category-column-impl\";\nimport { DTableCategoryContainer } from \"./d-table-category-container\";\nimport { DTableColumn } from \"./d-table-column\";\nimport { DTableColumnSelectingDialog } from \"./d-table-column-selecting\";\nimport { isString } from \"./util/is-string\";\n\nexport class DTableCategoryContainerImpl<\n\tROW_VALUE,\n\tCELL_VALUE,\n\tDIALOG_VALUE = CELL_VALUE,\n\tDIALOG extends\n\t\tDTableColumnSelectingDialog<DIALOG_VALUE> = DTableColumnSelectingDialog<DIALOG_VALUE>\n> implements DTableCategoryContainer\n{\n\treadonly items: DTableCategory[];\n\n\tconstructor(\n\t\tcolumns: DTableColumn<ROW_VALUE, CELL_VALUE, DIALOG_VALUE, DIALOG>[],\n\t\tfrozen: number,\n\t\toptions?: DTableCategoryOptions\n\t) {\n\t\tconst count = this.toCount(columns);\n\t\tconst items: DTableCategory[] = [];\n\t\tlet offset: number = 0;\n\t\tfor (let i = count - 1; 0 <= i; --i) {\n\t\t\tconst item = new DTableCategory(\n\t\t\t\tthis.toColumns(i, columns, frozen),\n\t\t\t\tfrozen,\n\t\t\t\toffset,\n\t\t\t\toptions\n\t\t\t);\n\t\t\titems.push(item);\n\t\t\toffset += item.height;\n\t\t}\n\t\tthis.items = items;\n\t}\n\n\tprotected toCount(\n\t\tcolumns: DTableColumn<ROW_VALUE, CELL_VALUE, DIALOG_VALUE, DIALOG>[]\n\t): number {\n\t\tlet result = 0;\n\t\tfor (let i = 0, imax = columns.length; i < imax; ++i) {\n\t\t\tconst category = columns[i].category;\n\t\t\tif (category != null) {\n\t\t\t\tconst count = isString(category) ? 1 : category.length;\n\t\t\t\tresult = Math.max(result, count);\n\t\t\t}\n\t\t}\n\t\treturn result;\n\t}\n\n\tprotected isCategory(\n\t\tindex: number,\n\t\ta: string | string[] | undefined,\n\t\tb: string | string[] | undefined\n\t): boolean {\n\t\tif (a != null) {\n\t\t\tif (b != null) {\n\t\t\t\tif (isString(a)) {\n\t\t\t\t\tif (isString(b)) {\n\t\t\t\t\t\tif (0 < index) {\n\t\t\t\t\t\t\treturn true;\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\treturn a === b;\n\t\t\t\t\t\t}\n\t\t\t\t\t} else {\n\t\t\t\t\t\tif (0 < index) {\n\t\t\t\t\t\t\treturn b.length <= index;\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\treturn b.length === 1 && a === b[0];\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\tif (isString(b)) {\n\t\t\t\t\t\tif (0 < index) {\n\t\t\t\t\t\t\treturn a.length <= index;\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\treturn a.length === 1 && a[0] === b;\n\t\t\t\t\t\t}\n\t\t\t\t\t} else {\n\t\t\t\t\t\tif (a.length <= index && b.length <= index) {\n\t\t\t\t\t\t\treturn true;\n\t\t\t\t\t\t} else if (b.length === a.length) {\n\t\t\t\t\t\t\tfor (let i = index, imax = a.length; i < imax; ++i) {\n\t\t\t\t\t\t\t\tif (a[i] !== b[i]) {\n\t\t\t\t\t\t\t\t\treturn false;\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\treturn true;\n\t\t\t\t\t\t}\n\t\t\t\t\t\treturn false;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tif (isString(a)) {\n\t\t\t\t\tif (0 < index) {\n\t\t\t\t\t\treturn true;\n\t\t\t\t\t} else {\n\t\t\t\t\t\treturn false;\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\tif (a.length <= index) {\n\t\t\t\t\t\treturn true;\n\t\t\t\t\t} else {\n\t\t\t\t\t\treturn false;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t} else {\n\t\t\tif (b != null) {\n\t\t\t\tif (isString(b)) {\n\t\t\t\t\tif (0 < index) {\n\t\t\t\t\t\treturn true;\n\t\t\t\t\t} else {\n\t\t\t\t\t\treturn false;\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\tif (b.length <= index) {\n\t\t\t\t\t\treturn true;\n\t\t\t\t\t} else {\n\t\t\t\t\t\treturn false;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\treturn true;\n\t\t\t}\n\t\t}\n\t}\n\n\tprotected toColumns(\n\t\tindex: number,\n\t\tcolumns: DTableColumn<ROW_VALUE, CELL_VALUE, DIALOG_VALUE, DIALOG>[],\n\t\tfrozen: number\n\t): DTableCategoryColumn[] {\n\t\tconst result: DTableCategoryColumn[] = [];\n\t\tlet tcolumn: DTableColumn<ROW_VALUE, CELL_VALUE, DIALOG_VALUE, DIALOG> | null = null;\n\t\tlet ccolumn: DTableCategoryColumnImpl<ROW_VALUE, CELL_VALUE, DIALOG_VALUE, DIALOG> | null =\n\t\t\tnull;\n\t\tfor (let i = 0, imax = columns.length; i < imax; ++i) {\n\t\t\tconst column = columns[i];\n\t\t\tif (\n\t\t\t\ti !== frozen &&\n\t\t\t\tccolumn &&\n\t\t\t\ttcolumn &&\n\t\t\t\tthis.isCategory(index, tcolumn.category, column.category)\n\t\t\t) {\n\t\t\t\tif (ccolumn.weight != null && column.weight != null) {\n\t\t\t\t\tccolumn.add(column);\n\t\t\t\t} else if (ccolumn.width != null && column.width != null) {\n\t\t\t\t\tccolumn.add(column);\n\t\t\t\t} else {\n\t\t\t\t\ttcolumn = column;\n\t\t\t\t\tccolumn = new DTableCategoryColumnImpl(index, column);\n\t\t\t\t\tresult.push(ccolumn);\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\ttcolumn = column;\n\t\t\t\tccolumn = new DTableCategoryColumnImpl(index, column);\n\t\t\t\tresult.push(ccolumn);\n\t\t\t}\n\t\t}\n\t\treturn result;\n\t}\n}\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"d-table-category-container.js","sourceRoot":"","sources":["../../../src/main/typescript/wcardinal/ui/d-table-category-container.ts"],"names":[],"mappings":"","sourcesContent":["import { DTableCategory } from \"./d-table-category\";\n\nexport interface DTableCategoryContainer {\n\treadonly items: DTableCategory[];\n}\n"]}
|
|
@@ -7,15 +7,53 @@ import { DTableCategoryCell } from "./d-table-category-cell";
|
|
|
7
7
|
import { DTableRow } from "./d-table-row";
|
|
8
8
|
var DTableCategory = /** @class */ (function (_super) {
|
|
9
9
|
__extends(DTableCategory, _super);
|
|
10
|
-
function DTableCategory(options) {
|
|
11
|
-
var
|
|
12
|
-
|
|
13
|
-
|
|
10
|
+
function DTableCategory(columns, frozen, offset, options) {
|
|
11
|
+
var _this = _super.call(this, columns, frozen, options) || this;
|
|
12
|
+
_this._columns = columns;
|
|
13
|
+
_this._frozen = frozen;
|
|
14
14
|
_this._offset = offset;
|
|
15
15
|
_this.transform.position.y = offset;
|
|
16
|
-
_this.initCells(
|
|
16
|
+
_this.initCells();
|
|
17
|
+
for (var i = 0, imax = columns.length; i < imax; ++i) {
|
|
18
|
+
var column = columns[i];
|
|
19
|
+
column.on("resize", _this.newOnColumnResize(i, column));
|
|
20
|
+
}
|
|
17
21
|
return _this;
|
|
18
22
|
}
|
|
23
|
+
DTableCategory.prototype.newOnColumnResize = function (index, column) {
|
|
24
|
+
var _this = this;
|
|
25
|
+
return function () {
|
|
26
|
+
_this.onColumnResize(index, column);
|
|
27
|
+
};
|
|
28
|
+
};
|
|
29
|
+
DTableCategory.prototype.onColumnResize = function (index, column) {
|
|
30
|
+
var columnWeight = column.weight;
|
|
31
|
+
if (columnWeight != null) {
|
|
32
|
+
this.onColumnResizeWeight(this, index, columnWeight);
|
|
33
|
+
}
|
|
34
|
+
else {
|
|
35
|
+
var columnWidth = column.width;
|
|
36
|
+
if (columnWidth != null) {
|
|
37
|
+
this.onColumnResizeWidth(this, index, columnWidth);
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
};
|
|
41
|
+
DTableCategory.prototype.onColumnResizeWeight = function (row, index, columnWeight) {
|
|
42
|
+
var cells = row.children;
|
|
43
|
+
var cellsLength = cells.length;
|
|
44
|
+
var cellsIndex = cellsLength - index - 1;
|
|
45
|
+
if (0 <= cellsIndex && cellsIndex < cellsLength) {
|
|
46
|
+
cells[cellsIndex].weight = columnWeight;
|
|
47
|
+
}
|
|
48
|
+
};
|
|
49
|
+
DTableCategory.prototype.onColumnResizeWidth = function (row, index, columnWidth) {
|
|
50
|
+
var cells = row.children;
|
|
51
|
+
var cellsLength = cells.length;
|
|
52
|
+
var cellsIndex = cellsLength - index - 1;
|
|
53
|
+
if (0 <= cellsIndex && cellsIndex < cellsLength) {
|
|
54
|
+
cells[cellsIndex].width = columnWidth;
|
|
55
|
+
}
|
|
56
|
+
};
|
|
19
57
|
DTableCategory.prototype.onParentMove = function (newX, newY, oldX, oldY) {
|
|
20
58
|
_super.prototype.onParentMove.call(this, newX, newY, oldX, oldY);
|
|
21
59
|
this.transform.position.y = -newY + this._offset;
|
|
@@ -29,16 +67,20 @@ var DTableCategory = /** @class */ (function (_super) {
|
|
|
29
67
|
return 0;
|
|
30
68
|
};
|
|
31
69
|
DTableCategory.prototype.newCell = function (columnIndex, column, columns, options) {
|
|
32
|
-
return new DTableCategoryCell(this.toCellOptions(columnIndex, column, options));
|
|
70
|
+
return new DTableCategoryCell(this, columnIndex, column, this.toCellOptions(columnIndex, column, options));
|
|
33
71
|
};
|
|
34
72
|
DTableCategory.prototype.toCellOptions = function (columnIndex, column, options) {
|
|
35
|
-
var result = options.cell;
|
|
73
|
+
var result = options === null || options === void 0 ? void 0 : options.cell;
|
|
36
74
|
if (result) {
|
|
75
|
+
// Weight
|
|
37
76
|
result.weight = column.weight;
|
|
77
|
+
// Width
|
|
38
78
|
result.width = column.width;
|
|
79
|
+
// Label
|
|
39
80
|
var text = result.text || {};
|
|
40
81
|
result.text = text;
|
|
41
82
|
text.value = text.value || column.label;
|
|
83
|
+
// Done
|
|
42
84
|
return result;
|
|
43
85
|
}
|
|
44
86
|
else {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"d-table-category.js","sourceRoot":"","sources":["../../../src/main/typescript/wcardinal/ui/d-table-category.ts"],"names":[],"mappings":"AAAA;;;GAGG;;AAGH,OAAO,EAAE,kBAAkB,EAA6B,MAAM,yBAAyB,CAAC;
|
|
1
|
+
{"version":3,"file":"d-table-category.js","sourceRoot":"","sources":["../../../src/main/typescript/wcardinal/ui/d-table-category.ts"],"names":[],"mappings":"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","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { DBase } from \"./d-base\";\nimport { DTableCategoryCell, DTableCategoryCellOptions } from \"./d-table-category-cell\";\nimport { DTableCategoryColumn } from \"./d-table-category-column\";\nimport { DTableRow, DTableRowOptions, DThemeTableRow } from \"./d-table-row\";\n\nexport interface DTableCategoryOptions<THEME extends DThemeTableCategory = DThemeTableCategory>\n\textends DTableRowOptions<THEME> {\n\tcell?: DTableCategoryCellOptions;\n}\n\nexport interface DThemeTableCategory extends DThemeTableRow {}\n\nexport class DTableCategory<\n\tTHEME extends DThemeTableCategory = DThemeTableCategory,\n\tOPTIONS extends DTableCategoryOptions<THEME> = DTableCategoryOptions<THEME>\n> extends DTableRow<unknown, DTableCategoryColumn, THEME, OPTIONS> {\n\tprotected _columns: DTableCategoryColumn[];\n\tprotected _frozen: number;\n\tprotected _offset: number;\n\tdeclare children: DTableCategoryCell[];\n\n\tconstructor(\n\t\tcolumns: DTableCategoryColumn[],\n\t\tfrozen: number,\n\t\toffset: number,\n\t\toptions?: OPTIONS\n\t) {\n\t\tsuper(columns, frozen, options);\n\n\t\tthis._columns = columns;\n\t\tthis._frozen = frozen;\n\t\tthis._offset = offset;\n\t\tthis.transform.position.y = offset;\n\n\t\tthis.initCells();\n\n\t\tfor (let i = 0, imax = columns.length; i < imax; ++i) {\n\t\t\tconst column = columns[i];\n\t\t\tcolumn.on(\"resize\", this.newOnColumnResize(i, column));\n\t\t}\n\t}\n\n\tprotected newOnColumnResize(index: number, column: DTableCategoryColumn): () => void {\n\t\treturn (): void => {\n\t\t\tthis.onColumnResize(index, column);\n\t\t};\n\t}\n\n\tprotected onColumnResize(index: number, column: DTableCategoryColumn): void {\n\t\tconst columnWeight = column.weight;\n\t\tif (columnWeight != null) {\n\t\t\tthis.onColumnResizeWeight(this, index, columnWeight);\n\t\t} else {\n\t\t\tconst columnWidth = column.width;\n\t\t\tif (columnWidth != null) {\n\t\t\t\tthis.onColumnResizeWidth(this, index, columnWidth);\n\t\t\t}\n\t\t}\n\t}\n\n\tprotected onColumnResizeWeight(row: DBase, index: number, columnWeight: number): void {\n\t\tconst cells = row.children as DBase[];\n\t\tconst cellsLength = cells.length;\n\t\tconst cellsIndex = cellsLength - index - 1;\n\t\tif (0 <= cellsIndex && cellsIndex < cellsLength) {\n\t\t\tcells[cellsIndex].weight = columnWeight;\n\t\t}\n\t}\n\n\tprotected onColumnResizeWidth(row: DBase, index: number, columnWidth: number): void {\n\t\tconst cells = row.children as DBase[];\n\t\tconst cellsLength = cells.length;\n\t\tconst cellsIndex = cellsLength - index - 1;\n\t\tif (0 <= cellsIndex && cellsIndex < cellsLength) {\n\t\t\tcells[cellsIndex].width = columnWidth;\n\t\t}\n\t}\n\n\tprotected onParentMove(newX: number, newY: number, oldX: number, oldY: number): void {\n\t\tsuper.onParentMove(newX, newY, oldX, oldY);\n\t\tthis.transform.position.y = -newY + this._offset;\n\t\tthis.updateFrozenCellPosition(newX);\n\t}\n\n\tprotected getContentPositionX(): number {\n\t\tconst content = this.parent;\n\t\tif (content) {\n\t\t\treturn content.position.x;\n\t\t}\n\t\treturn 0;\n\t}\n\n\tprotected newCell(\n\t\tcolumnIndex: number,\n\t\tcolumn: DTableCategoryColumn,\n\t\tcolumns: DTableCategoryColumn[],\n\t\toptions?: OPTIONS\n\t): DBase {\n\t\treturn new DTableCategoryCell(\n\t\t\tthis,\n\t\t\tcolumnIndex,\n\t\t\tcolumn,\n\t\t\tthis.toCellOptions(columnIndex, column, options)\n\t\t);\n\t}\n\n\tprotected toCellOptions(\n\t\tcolumnIndex: number,\n\t\tcolumn: DTableCategoryColumn,\n\t\toptions?: OPTIONS\n\t): DTableCategoryCellOptions {\n\t\tconst result = options?.cell;\n\t\tif (result) {\n\t\t\t// Weight\n\t\t\tresult.weight = column.weight;\n\n\t\t\t// Width\n\t\t\tresult.width = column.width;\n\n\t\t\t// Label\n\t\t\tconst text = result.text || {};\n\t\t\tresult.text = text;\n\t\t\ttext.value = text.value || column.label;\n\n\t\t\t// Done\n\t\t\treturn result;\n\t\t} else {\n\t\t\treturn {\n\t\t\t\tweight: column.weight,\n\t\t\t\twidth: column.width,\n\t\t\t\ttext: {\n\t\t\t\t\tvalue: column.label\n\t\t\t\t}\n\t\t\t};\n\t\t}\n\t}\n\n\tprotected getType(): string {\n\t\treturn \"DTableCategory\";\n\t}\n}\n"]}
|