@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.
Files changed (98) hide show
  1. package/dist/types/wcardinal/ui/d-indicator-processing.d.ts +8 -7
  2. package/dist/types/wcardinal/ui/d-pagination.d.ts +5 -5
  3. package/dist/types/wcardinal/ui/d-table-body-cell.d.ts +2 -2
  4. package/dist/types/wcardinal/ui/d-table-body-row.d.ts +9 -9
  5. package/dist/types/wcardinal/ui/d-table-body.d.ts +5 -7
  6. package/dist/types/wcardinal/ui/d-table-category-cell.d.ts +37 -0
  7. package/dist/types/wcardinal/ui/d-table-category-column-impl.d.ts +24 -0
  8. package/dist/types/wcardinal/ui/d-table-category-column.d.ts +10 -0
  9. package/dist/types/wcardinal/ui/d-table-category-container-impl.d.ts +12 -0
  10. package/dist/types/wcardinal/ui/d-table-category-container.d.ts +4 -0
  11. package/dist/types/wcardinal/ui/d-table-category.d.ts +13 -12
  12. package/dist/types/wcardinal/ui/d-table-column-container-impl.d.ts +25 -0
  13. package/dist/types/wcardinal/ui/d-table-column-container.d.ts +12 -0
  14. package/dist/types/wcardinal/ui/d-table-column-impl.d.ts +44 -0
  15. package/dist/types/wcardinal/ui/d-table-column.d.ts +22 -19
  16. package/dist/types/wcardinal/ui/d-table-header-cell-check.d.ts +1 -1
  17. package/dist/types/wcardinal/ui/d-table-header-cell.d.ts +34 -12
  18. package/dist/types/wcardinal/ui/d-table-header.d.ts +8 -9
  19. package/dist/types/wcardinal/ui/d-table-row.d.ts +8 -9
  20. package/dist/types/wcardinal/ui/d-table-state.d.ts +8 -0
  21. package/dist/types/wcardinal/ui/d-table.d.ts +15 -18
  22. package/dist/types/wcardinal/ui/index.d.ts +7 -0
  23. package/dist/types/wcardinal/ui/theme/dark/d-theme-dark-table-header-cell.d.ts +1 -0
  24. package/dist/types/wcardinal/ui/theme/dark/d-theme-dark-table-header.d.ts +1 -0
  25. package/dist/types/wcardinal/ui/theme/white/d-theme-white-table-header-cell.d.ts +1 -0
  26. package/dist/types/wcardinal/ui/theme/white/d-theme-white-table-header.d.ts +1 -0
  27. package/dist/wcardinal/ui/d-base.js +2 -2
  28. package/dist/wcardinal/ui/d-base.js.map +1 -1
  29. package/dist/wcardinal/ui/d-indicator-processing.js +20 -15
  30. package/dist/wcardinal/ui/d-indicator-processing.js.map +1 -1
  31. package/dist/wcardinal/ui/d-pagination.js +5 -5
  32. package/dist/wcardinal/ui/d-pagination.js.map +1 -1
  33. package/dist/wcardinal/ui/d-table-body-cell.js.map +1 -1
  34. package/dist/wcardinal/ui/d-table-body-row.js +4 -4
  35. package/dist/wcardinal/ui/d-table-body-row.js.map +1 -1
  36. package/dist/wcardinal/ui/d-table-body.js +6 -15
  37. package/dist/wcardinal/ui/d-table-body.js.map +1 -1
  38. package/dist/wcardinal/ui/d-table-category-cell.js +244 -2
  39. package/dist/wcardinal/ui/d-table-category-cell.js.map +1 -1
  40. package/dist/wcardinal/ui/d-table-category-column-impl.js +222 -0
  41. package/dist/wcardinal/ui/d-table-category-column-impl.js.map +1 -0
  42. package/dist/wcardinal/ui/d-table-category-column.js +6 -0
  43. package/dist/wcardinal/ui/d-table-category-column.js.map +1 -0
  44. package/dist/wcardinal/ui/d-table-category-container-impl.js +149 -0
  45. package/dist/wcardinal/ui/d-table-category-container-impl.js.map +1 -0
  46. package/dist/wcardinal/ui/d-table-category-container.js +2 -0
  47. package/dist/wcardinal/ui/d-table-category-container.js.map +1 -0
  48. package/dist/wcardinal/ui/d-table-category.js +49 -7
  49. package/dist/wcardinal/ui/d-table-category.js.map +1 -1
  50. package/dist/wcardinal/ui/d-table-column-container-impl.js +126 -0
  51. package/dist/wcardinal/ui/d-table-column-container-impl.js.map +1 -0
  52. package/dist/wcardinal/ui/d-table-column-container.js +2 -0
  53. package/dist/wcardinal/ui/d-table-column-container.js.map +1 -0
  54. package/dist/wcardinal/ui/d-table-column-impl.js +375 -0
  55. package/dist/wcardinal/ui/d-table-column-impl.js.map +1 -0
  56. package/dist/wcardinal/ui/d-table-column.js.map +1 -1
  57. package/dist/wcardinal/ui/d-table-header-cell-check.js.map +1 -1
  58. package/dist/wcardinal/ui/d-table-header-cell.js +245 -48
  59. package/dist/wcardinal/ui/d-table-header-cell.js.map +1 -1
  60. package/dist/wcardinal/ui/d-table-header.js +8 -22
  61. package/dist/wcardinal/ui/d-table-header.js.map +1 -1
  62. package/dist/wcardinal/ui/d-table-row.js +7 -5
  63. package/dist/wcardinal/ui/d-table-row.js.map +1 -1
  64. package/dist/wcardinal/ui/d-table-state.js +9 -1
  65. package/dist/wcardinal/ui/d-table-state.js.map +1 -1
  66. package/dist/wcardinal/ui/d-table.js +69 -631
  67. package/dist/wcardinal/ui/d-table.js.map +1 -1
  68. package/dist/wcardinal/ui/index.js +7 -0
  69. package/dist/wcardinal/ui/index.js.map +1 -1
  70. package/dist/wcardinal/ui/theme/dark/d-theme-dark-table-header-cell.js +7 -1
  71. package/dist/wcardinal/ui/theme/dark/d-theme-dark-table-header-cell.js.map +1 -1
  72. package/dist/wcardinal/ui/theme/dark/d-theme-dark-table-header.js +7 -0
  73. package/dist/wcardinal/ui/theme/dark/d-theme-dark-table-header.js.map +1 -1
  74. package/dist/wcardinal/ui/theme/white/d-theme-white-table-header-cell.js +7 -1
  75. package/dist/wcardinal/ui/theme/white/d-theme-white-table-header-cell.js.map +1 -1
  76. package/dist/wcardinal/ui/theme/white/d-theme-white-table-header.js +7 -0
  77. package/dist/wcardinal/ui/theme/white/d-theme-white-table-header.js.map +1 -1
  78. package/dist/wcardinal-ui-theme-dark-en-us.js +14 -2
  79. package/dist/wcardinal-ui-theme-dark-en-us.min.js +2 -2
  80. package/dist/wcardinal-ui-theme-dark-en-us.min.js.map +1 -1
  81. package/dist/wcardinal-ui-theme-dark-ja-jp.js +14 -2
  82. package/dist/wcardinal-ui-theme-dark-ja-jp.min.js +2 -2
  83. package/dist/wcardinal-ui-theme-dark-ja-jp.min.js.map +1 -1
  84. package/dist/wcardinal-ui-theme-dark.js +14 -2
  85. package/dist/wcardinal-ui-theme-dark.min.js +2 -2
  86. package/dist/wcardinal-ui-theme-white-en-us.js +14 -2
  87. package/dist/wcardinal-ui-theme-white-en-us.min.js +2 -2
  88. package/dist/wcardinal-ui-theme-white-en-us.min.js.map +1 -1
  89. package/dist/wcardinal-ui-theme-white-ja-jp.js +14 -2
  90. package/dist/wcardinal-ui-theme-white-ja-jp.min.js +2 -2
  91. package/dist/wcardinal-ui-theme-white-ja-jp.min.js.map +1 -1
  92. package/dist/wcardinal-ui-theme-white.js +14 -2
  93. package/dist/wcardinal-ui-theme-white.min.js +2 -2
  94. package/dist/wcardinal-ui.cjs.js +1545 -753
  95. package/dist/wcardinal-ui.js +1882 -1114
  96. package/dist/wcardinal-ui.min.js +2 -2
  97. package/dist/wcardinal-ui.min.js.map +1 -1
  98. 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,6 @@
1
+ /*
2
+ * Copyright (C) 2019 Toshiba Corporation
3
+ * SPDX-License-Identifier: Apache-2.0
4
+ */
5
+ export {};
6
+ //# sourceMappingURL=d-table-category-column.js.map
@@ -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,2 @@
1
+ export {};
2
+ //# sourceMappingURL=d-table-category-container.js.map
@@ -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 _a;
12
- var _this = _super.call(this, options) || this;
13
- var offset = (_a = options.offset) !== null && _a !== void 0 ? _a : 0;
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(options, _this._columns, _this._frozen);
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;AACxF,OAAO,EAAE,SAAS,EAAoC,MAAM,eAAe,CAAC;AAiB5E;IAGU,kCAAwD;IAGjE,wBAAY,OAAgB;;QAA5B,YACC,kBAAM,OAAO,CAAC,SAOd;QALA,IAAM,MAAM,GAAG,MAAA,OAAO,CAAC,MAAM,mCAAI,CAAC,CAAC;QACnC,KAAI,CAAC,OAAO,GAAG,MAAM,CAAC;QACtB,KAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,GAAG,MAAM,CAAC;QAEnC,KAAI,CAAC,SAAS,CAAC,OAAO,EAAE,KAAI,CAAC,QAAQ,EAAE,KAAI,CAAC,OAAO,CAAC,CAAC;;IACtD,CAAC;IAES,qCAAY,GAAtB,UAAuB,IAAY,EAAE,IAAY,EAAE,IAAY,EAAE,IAAY;QAC5E,iBAAM,YAAY,YAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;QAC3C,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC;QACjD,IAAI,CAAC,wBAAwB,CAAC,IAAI,CAAC,CAAC;IACrC,CAAC;IAES,4CAAmB,GAA7B;QACC,IAAM,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC;QAC5B,IAAI,OAAO,EAAE;YACZ,OAAO,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC;SAC1B;QACD,OAAO,CAAC,CAAC;IACV,CAAC;IAES,gCAAO,GAAjB,UACC,WAAmB,EACnB,MAA4B,EAC5B,OAA+B,EAC/B,OAAgB;QAEhB,OAAO,IAAI,kBAAkB,CAAC,IAAI,CAAC,aAAa,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;IACjF,CAAC;IAES,sCAAa,GAAvB,UACC,WAAmB,EACnB,MAA4B,EAC5B,OAAgB;QAEhB,IAAM,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;QAC5B,IAAI,MAAM,EAAE;YACX,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;YAC9B,MAAM,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;YAC5B,IAAM,IAAI,GAAG,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC;YAC/B,MAAM,CAAC,IAAI,GAAG,IAAI,CAAC;YACnB,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,IAAI,MAAM,CAAC,KAAK,CAAC;YACxC,OAAO,MAAM,CAAC;SACd;aAAM;YACN,OAAO;gBACN,MAAM,EAAE,MAAM,CAAC,MAAM;gBACrB,KAAK,EAAE,MAAM,CAAC,KAAK;gBACnB,IAAI,EAAE;oBACL,KAAK,EAAE,MAAM,CAAC,KAAK;iBACnB;aACD,CAAC;SACF;IACF,CAAC;IAES,gCAAO,GAAjB;QACC,OAAO,gBAAgB,CAAC;IACzB,CAAC;IACF,qBAAC;AAAD,CAAC,AAlED,CAGU,SAAS,GA+DlB","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 { DTableRow, DTableRowOptions, DThemeTableRow } from \"./d-table-row\";\n\nexport interface DTableCategoryColumn {\n\tlabel?: string;\n\tweight?: number;\n\twidth?: number;\n\toffset: number;\n}\n\nexport interface DTableCategoryOptions<THEME extends DThemeTableCategory = DThemeTableCategory>\n\textends DTableRowOptions<unknown, DTableCategoryColumn, THEME> {\n\toffset?: number;\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 _offset: number;\n\n\tconstructor(options: OPTIONS) {\n\t\tsuper(options);\n\n\t\tconst offset = options.offset ?? 0;\n\t\tthis._offset = offset;\n\t\tthis.transform.position.y = offset;\n\n\t\tthis.initCells(options, this._columns, this._frozen);\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(this.toCellOptions(columnIndex, column, options));\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\tresult.weight = column.weight;\n\t\t\tresult.width = column.width;\n\t\t\tconst text = result.text || {};\n\t\t\tresult.text = text;\n\t\t\ttext.value = text.value || column.label;\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"]}
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"]}