@wcardinal/wcardinal-ui 0.201.0 → 0.202.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 (208) hide show
  1. package/dist/types/wcardinal/ui/d-diagram-base.d.ts +1 -0
  2. package/dist/types/wcardinal/ui/d-diagram-canvas-data-impl.d.ts +7 -4
  3. package/dist/types/wcardinal/ui/d-diagram-canvas-data.d.ts +7 -4
  4. package/dist/types/wcardinal/ui/d-diagram-data-extended-impl.d.ts +2 -1
  5. package/dist/types/wcardinal/ui/d-diagram-data-impl.d.ts +7 -4
  6. package/dist/types/wcardinal/ui/d-diagram-data-private-impl.d.ts +2 -1
  7. package/dist/types/wcardinal/ui/d-diagram-data-protected-impl.d.ts +2 -1
  8. package/dist/types/wcardinal/ui/d-diagram-data-remote-impl.d.ts +1 -1
  9. package/dist/types/wcardinal/ui/d-diagram-data-remote.d.ts +1 -1
  10. package/dist/types/wcardinal/ui/d-diagram-data-scoped.d.ts +2 -1
  11. package/dist/types/wcardinal/ui/d-diagram-data.d.ts +5 -2
  12. package/dist/types/wcardinal/ui/d-diagram-serialized.d.ts +4 -0
  13. package/dist/types/wcardinal/ui/d-table-body-cell-color.d.ts +1 -1
  14. package/dist/types/wcardinal/ui/d-table-body-cell-options.d.ts +18 -0
  15. package/dist/types/wcardinal/ui/d-table-body-cell-select-dialog.d.ts +1 -1
  16. package/dist/types/wcardinal/ui/d-table-body-cell-select-promise.d.ts +1 -1
  17. package/dist/types/wcardinal/ui/d-table-body-cell-time.d.ts +1 -1
  18. package/dist/types/wcardinal/ui/d-table-body-cells.d.ts +7 -5
  19. package/dist/types/wcardinal/ui/d-table-body-row.d.ts +6 -4
  20. package/dist/types/wcardinal/ui/d-table-body.d.ts +2 -0
  21. package/dist/types/wcardinal/ui/d-table-column-editing.d.ts +16 -0
  22. package/dist/types/wcardinal/ui/d-table-column-formatter.d.ts +1 -0
  23. package/dist/types/wcardinal/ui/d-table-column-getter.d.ts +1 -0
  24. package/dist/types/wcardinal/ui/d-table-column-renderable.d.ts +1 -0
  25. package/dist/types/wcardinal/ui/d-table-column-selecting.d.ts +25 -0
  26. package/dist/types/wcardinal/ui/d-table-column-setter.d.ts +1 -0
  27. package/dist/types/wcardinal/ui/d-table-column-sorting.d.ts +9 -0
  28. package/dist/types/wcardinal/ui/d-table-column-state.d.ts +11 -0
  29. package/dist/types/wcardinal/ui/d-table-column-type.d.ts +18 -0
  30. package/dist/types/wcardinal/ui/d-table-column.d.ts +33 -101
  31. package/dist/types/wcardinal/ui/index.d.ts +10 -0
  32. package/dist/types/wcardinal/ui/shape/action/e-shape-action-runtimes.d.ts +7 -15
  33. package/dist/types/wcardinal/ui/shape/e-shape-data-impl.d.ts +7 -0
  34. package/dist/types/wcardinal/ui/shape/e-shape-data-scoped-impl.d.ts +2 -1
  35. package/dist/types/wcardinal/ui/shape/e-shape-data-scoped.d.ts +2 -1
  36. package/dist/types/wcardinal/ui/shape/e-shape-data-value-formatter.d.ts +1 -0
  37. package/dist/types/wcardinal/ui/shape/e-shape-data-value-impl.d.ts +10 -1
  38. package/dist/types/wcardinal/ui/shape/e-shape-data-value-state.d.ts +32 -0
  39. package/dist/types/wcardinal/ui/shape/e-shape-data-value.d.ts +6 -1
  40. package/dist/types/wcardinal/ui/shape/e-shape-data.d.ts +4 -0
  41. package/dist/types/wcardinal/ui/shape/index.d.ts +2 -0
  42. package/dist/types/wcardinal/ui/shape/variant/build-text.d.ts +2 -1
  43. package/dist/types/wcardinal/ui/shape/variant/builder-text.d.ts +2 -0
  44. package/dist/types/wcardinal/ui/shape/variant/e-shape-embedded-layer.d.ts +1 -1
  45. package/dist/types/wcardinal/ui/shape/variant/e-shape-embedded.d.ts +1 -1
  46. package/dist/types/wcardinal/ui/shape/variant/e-shape-group-viewer.d.ts +2 -4
  47. package/dist/types/wcardinal/ui/theme/dark/d-theme-dark-table-header-cell.d.ts +2 -0
  48. package/dist/types/wcardinal/ui/theme/white/d-theme-white-table-header-cell.d.ts +2 -0
  49. package/dist/types/wcardinal/ui/util/index.d.ts +3 -0
  50. package/dist/types/wcardinal/ui/util/is-object.d.ts +1 -0
  51. package/dist/types/wcardinal/ui/util/to-cloned.d.ts +1 -0
  52. package/dist/types/wcardinal/ui/util/to-merged.d.ts +1 -0
  53. package/dist/wcardinal/ui/d-controller-focus-impl.js +0 -2
  54. package/dist/wcardinal/ui/d-controller-focus-impl.js.map +1 -1
  55. package/dist/wcardinal/ui/d-diagram-base.js.map +1 -1
  56. package/dist/wcardinal/ui/d-diagram-canvas-data-impl.js +50 -16
  57. package/dist/wcardinal/ui/d-diagram-canvas-data-impl.js.map +1 -1
  58. package/dist/wcardinal/ui/d-diagram-canvas-data.js.map +1 -1
  59. package/dist/wcardinal/ui/d-diagram-data-extended-impl.js +2 -2
  60. package/dist/wcardinal/ui/d-diagram-data-extended-impl.js.map +1 -1
  61. package/dist/wcardinal/ui/d-diagram-data-impl.js +22 -8
  62. package/dist/wcardinal/ui/d-diagram-data-impl.js.map +1 -1
  63. package/dist/wcardinal/ui/d-diagram-data-private-impl.js +2 -2
  64. package/dist/wcardinal/ui/d-diagram-data-private-impl.js.map +1 -1
  65. package/dist/wcardinal/ui/d-diagram-data-protected-impl.js +2 -2
  66. package/dist/wcardinal/ui/d-diagram-data-protected-impl.js.map +1 -1
  67. package/dist/wcardinal/ui/d-diagram-data-remote-impl.js +1 -1
  68. package/dist/wcardinal/ui/d-diagram-data-remote-impl.js.map +1 -1
  69. package/dist/wcardinal/ui/d-diagram-data-remote.js.map +1 -1
  70. package/dist/wcardinal/ui/d-diagram-data-scoped.js.map +1 -1
  71. package/dist/wcardinal/ui/d-diagram-data.js.map +1 -1
  72. package/dist/wcardinal/ui/d-diagram-serialized.js.map +1 -1
  73. package/dist/wcardinal/ui/d-table-body-cell-action-menu.js +1 -3
  74. package/dist/wcardinal/ui/d-table-body-cell-action-menu.js.map +1 -1
  75. package/dist/wcardinal/ui/d-table-body-cell-check.js +2 -4
  76. package/dist/wcardinal/ui/d-table-body-cell-check.js.map +1 -1
  77. package/dist/wcardinal/ui/d-table-body-cell-color.js +17 -19
  78. package/dist/wcardinal/ui/d-table-body-cell-color.js.map +1 -1
  79. package/dist/wcardinal/ui/d-table-body-cell-date.js +1 -3
  80. package/dist/wcardinal/ui/d-table-body-cell-date.js.map +1 -1
  81. package/dist/wcardinal/ui/d-table-body-cell-datetime.js +2 -4
  82. package/dist/wcardinal/ui/d-table-body-cell-datetime.js.map +1 -1
  83. package/dist/wcardinal/ui/d-table-body-cell-index.js +1 -3
  84. package/dist/wcardinal/ui/d-table-body-cell-index.js.map +1 -1
  85. package/dist/wcardinal/ui/d-table-body-cell-input-integer.js +1 -3
  86. package/dist/wcardinal/ui/d-table-body-cell-input-integer.js.map +1 -1
  87. package/dist/wcardinal/ui/d-table-body-cell-input-real.js +1 -3
  88. package/dist/wcardinal/ui/d-table-body-cell-input-real.js.map +1 -1
  89. package/dist/wcardinal/ui/d-table-body-cell-input-text.js +1 -3
  90. package/dist/wcardinal/ui/d-table-body-cell-input-text.js.map +1 -1
  91. package/dist/wcardinal/ui/d-table-body-cell-input-tree.js +1 -3
  92. package/dist/wcardinal/ui/d-table-body-cell-input-tree.js.map +1 -1
  93. package/dist/wcardinal/ui/d-table-body-cell-options.js +6 -0
  94. package/dist/wcardinal/ui/d-table-body-cell-options.js.map +1 -0
  95. package/dist/wcardinal/ui/d-table-body-cell-select-dialog.js +1 -3
  96. package/dist/wcardinal/ui/d-table-body-cell-select-dialog.js.map +1 -1
  97. package/dist/wcardinal/ui/d-table-body-cell-select-menu.js +1 -3
  98. package/dist/wcardinal/ui/d-table-body-cell-select-menu.js.map +1 -1
  99. package/dist/wcardinal/ui/d-table-body-cell-select-multiple.js +1 -3
  100. package/dist/wcardinal/ui/d-table-body-cell-select-multiple.js.map +1 -1
  101. package/dist/wcardinal/ui/d-table-body-cell-select-promise.js +1 -3
  102. package/dist/wcardinal/ui/d-table-body-cell-select-promise.js.map +1 -1
  103. package/dist/wcardinal/ui/d-table-body-cell-text.js +1 -3
  104. package/dist/wcardinal/ui/d-table-body-cell-text.js.map +1 -1
  105. package/dist/wcardinal/ui/d-table-body-cell-time.js +1 -3
  106. package/dist/wcardinal/ui/d-table-body-cell-time.js.map +1 -1
  107. package/dist/wcardinal/ui/d-table-body-cell-tree.js +1 -2
  108. package/dist/wcardinal/ui/d-table-body-cell-tree.js.map +1 -1
  109. package/dist/wcardinal/ui/d-table-body-cells.js +13 -5
  110. package/dist/wcardinal/ui/d-table-body-cells.js.map +1 -1
  111. package/dist/wcardinal/ui/d-table-body-row.js +43 -39
  112. package/dist/wcardinal/ui/d-table-body-row.js.map +1 -1
  113. package/dist/wcardinal/ui/d-table-body.js +2 -1
  114. package/dist/wcardinal/ui/d-table-body.js.map +1 -1
  115. package/dist/wcardinal/ui/d-table-column-editing.js +6 -0
  116. package/dist/wcardinal/ui/d-table-column-editing.js.map +1 -0
  117. package/dist/wcardinal/ui/d-table-column-formatter.js +6 -0
  118. package/dist/wcardinal/ui/d-table-column-formatter.js.map +1 -0
  119. package/dist/wcardinal/ui/d-table-column-getter.js +6 -0
  120. package/dist/wcardinal/ui/d-table-column-getter.js.map +1 -0
  121. package/dist/wcardinal/ui/d-table-column-renderable.js +6 -0
  122. package/dist/wcardinal/ui/d-table-column-renderable.js.map +1 -0
  123. package/dist/wcardinal/ui/d-table-column-selecting.js +6 -0
  124. package/dist/wcardinal/ui/d-table-column-selecting.js.map +1 -0
  125. package/dist/wcardinal/ui/d-table-column-setter.js +6 -0
  126. package/dist/wcardinal/ui/d-table-column-setter.js.map +1 -0
  127. package/dist/wcardinal/ui/d-table-column-sorting.js +6 -0
  128. package/dist/wcardinal/ui/d-table-column-sorting.js.map +1 -0
  129. package/dist/wcardinal/ui/d-table-column-state.js +6 -0
  130. package/dist/wcardinal/ui/d-table-column-state.js.map +1 -0
  131. package/dist/wcardinal/ui/d-table-column-type.js +22 -0
  132. package/dist/wcardinal/ui/d-table-column-type.js.map +1 -0
  133. package/dist/wcardinal/ui/d-table-column.js +1 -17
  134. package/dist/wcardinal/ui/d-table-column.js.map +1 -1
  135. package/dist/wcardinal/ui/d-table.js +23 -1
  136. package/dist/wcardinal/ui/d-table.js.map +1 -1
  137. package/dist/wcardinal/ui/index.js +10 -0
  138. package/dist/wcardinal/ui/index.js.map +1 -1
  139. package/dist/wcardinal/ui/shape/action/e-shape-action-expressions.js +2 -0
  140. package/dist/wcardinal/ui/shape/action/e-shape-action-expressions.js.map +1 -1
  141. package/dist/wcardinal/ui/shape/action/e-shape-action-runtime-misc-write-both.js +2 -2
  142. package/dist/wcardinal/ui/shape/action/e-shape-action-runtime-misc-write-both.js.map +1 -1
  143. package/dist/wcardinal/ui/shape/action/e-shape-action-runtime-misc-write-local.js +1 -1
  144. package/dist/wcardinal/ui/shape/action/e-shape-action-runtime-misc-write-local.js.map +1 -1
  145. package/dist/wcardinal/ui/shape/action/e-shape-action-runtime-misc-write-remote.js +1 -1
  146. package/dist/wcardinal/ui/shape/action/e-shape-action-runtime-misc-write-remote.js.map +1 -1
  147. package/dist/wcardinal/ui/shape/action/e-shape-action-runtimes.js +30 -29
  148. package/dist/wcardinal/ui/shape/action/e-shape-action-runtimes.js.map +1 -1
  149. package/dist/wcardinal/ui/shape/action/e-shape-action-value-on-input-actions.js +4 -4
  150. package/dist/wcardinal/ui/shape/action/e-shape-action-value-on-input-actions.js.map +1 -1
  151. package/dist/wcardinal/ui/shape/e-shape-data-impl.js +57 -0
  152. package/dist/wcardinal/ui/shape/e-shape-data-impl.js.map +1 -1
  153. package/dist/wcardinal/ui/shape/e-shape-data-scoped-impl.js +5 -1
  154. package/dist/wcardinal/ui/shape/e-shape-data-scoped-impl.js.map +1 -1
  155. package/dist/wcardinal/ui/shape/e-shape-data-scoped.js.map +1 -1
  156. package/dist/wcardinal/ui/shape/e-shape-data-value-formatter.js +6 -0
  157. package/dist/wcardinal/ui/shape/e-shape-data-value-formatter.js.map +1 -0
  158. package/dist/wcardinal/ui/shape/e-shape-data-value-impl.js +211 -56
  159. package/dist/wcardinal/ui/shape/e-shape-data-value-impl.js.map +1 -1
  160. package/dist/wcardinal/ui/shape/e-shape-data-value-state.js +36 -0
  161. package/dist/wcardinal/ui/shape/e-shape-data-value-state.js.map +1 -0
  162. package/dist/wcardinal/ui/shape/e-shape-data-value.js.map +1 -1
  163. package/dist/wcardinal/ui/shape/e-shape-data.js.map +1 -1
  164. package/dist/wcardinal/ui/shape/index.js +2 -0
  165. package/dist/wcardinal/ui/shape/index.js.map +1 -1
  166. package/dist/wcardinal/ui/shape/variant/build-text.js +84 -63
  167. package/dist/wcardinal/ui/shape/variant/build-text.js.map +1 -1
  168. package/dist/wcardinal/ui/shape/variant/builder-text.js +18 -3
  169. package/dist/wcardinal/ui/shape/variant/builder-text.js.map +1 -1
  170. package/dist/wcardinal/ui/shape/variant/deserialize-embedded-layer.js +2 -3
  171. package/dist/wcardinal/ui/shape/variant/deserialize-embedded-layer.js.map +1 -1
  172. package/dist/wcardinal/ui/shape/variant/deserialize-embedded.js +4 -3
  173. package/dist/wcardinal/ui/shape/variant/deserialize-embedded.js.map +1 -1
  174. package/dist/wcardinal/ui/shape/variant/e-shape-base.js +3 -1
  175. package/dist/wcardinal/ui/shape/variant/e-shape-base.js.map +1 -1
  176. package/dist/wcardinal/ui/shape/variant/e-shape-embedded-layer.js +3 -3
  177. package/dist/wcardinal/ui/shape/variant/e-shape-embedded-layer.js.map +1 -1
  178. package/dist/wcardinal/ui/shape/variant/e-shape-embedded.js +3 -3
  179. package/dist/wcardinal/ui/shape/variant/e-shape-embedded.js.map +1 -1
  180. package/dist/wcardinal/ui/shape/variant/e-shape-embeddeds.js +1 -1
  181. package/dist/wcardinal/ui/shape/variant/e-shape-embeddeds.js.map +1 -1
  182. package/dist/wcardinal/ui/shape/variant/e-shape-group-viewer.js +4 -18
  183. package/dist/wcardinal/ui/shape/variant/e-shape-group-viewer.js.map +1 -1
  184. package/dist/wcardinal/ui/theme/dark/d-theme-dark-table-header-cell.js +11 -0
  185. package/dist/wcardinal/ui/theme/dark/d-theme-dark-table-header-cell.js.map +1 -1
  186. package/dist/wcardinal/ui/theme/white/d-theme-white-table-header-cell.js +11 -0
  187. package/dist/wcardinal/ui/theme/white/d-theme-white-table-header-cell.js.map +1 -1
  188. package/dist/wcardinal/ui/util/dynamic-sdf-font-generator.js +1 -1
  189. package/dist/wcardinal/ui/util/dynamic-sdf-font-generator.js.map +1 -1
  190. package/dist/wcardinal/ui/util/index.js +3 -0
  191. package/dist/wcardinal/ui/util/index.js.map +1 -1
  192. package/dist/wcardinal/ui/util/is-object.js +13 -0
  193. package/dist/wcardinal/ui/util/is-object.js.map +1 -0
  194. package/dist/wcardinal/ui/util/to-cloned.js +32 -0
  195. package/dist/wcardinal/ui/util/to-cloned.js.map +1 -0
  196. package/dist/wcardinal/ui/util/to-merged.js +45 -0
  197. package/dist/wcardinal/ui/util/to-merged.js.map +1 -0
  198. package/dist/wcardinal-ui-theme-dark.js +12 -1
  199. package/dist/wcardinal-ui-theme-dark.min.js +2 -2
  200. package/dist/wcardinal-ui-theme-dark.min.js.map +1 -1
  201. package/dist/wcardinal-ui-theme-white.js +12 -1
  202. package/dist/wcardinal-ui-theme-white.min.js +2 -2
  203. package/dist/wcardinal-ui-theme-white.min.js.map +1 -1
  204. package/dist/wcardinal-ui.cjs.js +1390 -954
  205. package/dist/wcardinal-ui.js +1596 -1182
  206. package/dist/wcardinal-ui.min.js +2 -2
  207. package/dist/wcardinal-ui.min.js.map +1 -1
  208. package/package.json +1 -1
@@ -6,12 +6,14 @@ import { EShapeDataValueRangeImpl } from "./e-shape-data-value-range-impl";
6
6
  import { EShapeDataValueOrder } from "./e-shape-data-value-order";
7
7
  import { EShapeDataValueType } from "./e-shape-data-value-type";
8
8
  import { EShapeDataValueScope } from "./e-shape-data-value-scope";
9
+ import { EShapeDataValueState } from "./e-shape-data-value-state";
9
10
  var INDEX_COMPARATOR = function (a, b) {
10
11
  return a - b;
11
12
  };
12
13
  var EShapeDataValueImpl = /** @class */ (function () {
13
14
  function EShapeDataValueImpl() {
14
15
  this.id = "";
16
+ this.as = "";
15
17
  this.type = EShapeDataValueType.NUMBER;
16
18
  this.scope = EShapeDataValueScope.PUBLIC;
17
19
  this.initial = "";
@@ -19,6 +21,7 @@ var EShapeDataValueImpl = /** @class */ (function () {
19
21
  this.range = new EShapeDataValueRangeImpl();
20
22
  this._value = 0;
21
23
  this._time = 0;
24
+ this._state = EShapeDataValueState.UNKOWN;
22
25
  this._capacity = 0;
23
26
  this._order = EShapeDataValueOrder.ASCENDING;
24
27
  }
@@ -109,10 +112,11 @@ var EShapeDataValueImpl = /** @class */ (function () {
109
112
  return result;
110
113
  },
111
114
  set: function (newValues) {
112
- if (0 < newValues.length) {
115
+ var newValuesLength = newValues.length;
116
+ if (0 < newValuesLength) {
113
117
  var capacity = this._capacity;
114
118
  if (capacity <= 0) {
115
- var newValue = newValues[newValues.length - 1];
119
+ var newValue = newValues[newValuesLength - 1];
116
120
  var formatter = this.formatter;
117
121
  if (formatter != null) {
118
122
  newValue = formatter(newValue);
@@ -135,30 +139,30 @@ var EShapeDataValueImpl = /** @class */ (function () {
135
139
  var formatter = this.formatter;
136
140
  if (formatter != null) {
137
141
  // Update the value
138
- this._value = formatter(newValues[newValues.length - 1]);
142
+ this._value = formatter(newValues[newValuesLength - 1]);
139
143
  // Update the values
140
144
  if (order === EShapeDataValueOrder.ASCENDING) {
141
- for (var i = 0, imax = newValues.length; i < imax; ++i) {
145
+ for (var i = 0; i < newValuesLength; ++i) {
142
146
  values.push(formatter(newValues[i]));
143
147
  }
144
148
  }
145
149
  else {
146
- for (var i = 0, imax = newValues.length; i < imax; ++i) {
150
+ for (var i = 0; i < newValuesLength; ++i) {
147
151
  values.unshift(formatter(newValues[i]));
148
152
  }
149
153
  }
150
154
  }
151
155
  else {
152
156
  // Update the value
153
- this._value = newValues[newValues.length - 1];
157
+ this._value = newValues[newValuesLength - 1];
154
158
  // Update the values
155
159
  if (order === EShapeDataValueOrder.ASCENDING) {
156
- for (var i = 0, imax = newValues.length; i < imax; ++i) {
160
+ for (var i = 0; i < newValuesLength; ++i) {
157
161
  values.push(newValues[i]);
158
162
  }
159
163
  }
160
164
  else {
161
- for (var i = 0, imax = newValues.length; i < imax; ++i) {
165
+ for (var i = 0; i < newValuesLength; ++i) {
162
166
  values.unshift(newValues[i]);
163
167
  }
164
168
  }
@@ -250,10 +254,11 @@ var EShapeDataValueImpl = /** @class */ (function () {
250
254
  return result;
251
255
  },
252
256
  set: function (newTimes) {
253
- if (0 < newTimes.length) {
257
+ var newTimesLength = newTimes.length;
258
+ if (0 < newTimesLength) {
254
259
  var capacity = this._capacity;
255
260
  if (capacity <= 0) {
256
- var newTime = newTimes[newTimes.length - 1];
261
+ var newTime = newTimes[newTimesLength - 1];
257
262
  if (this._time !== newTime) {
258
263
  this._time = newTime;
259
264
  var parent_7 = this.parent;
@@ -270,16 +275,16 @@ var EShapeDataValueImpl = /** @class */ (function () {
270
275
  this._times = times;
271
276
  }
272
277
  // Update the value
273
- this._time = newTimes[newTimes.length - 1];
278
+ this._time = newTimes[newTimesLength - 1];
274
279
  //
275
280
  var order = this._order;
276
281
  if (order === EShapeDataValueOrder.ASCENDING) {
277
- for (var i = 0, imax = newTimes.length; i < imax; ++i) {
282
+ for (var i = 0; i < newTimesLength; ++i) {
278
283
  times.push(newTimes[i]);
279
284
  }
280
285
  }
281
286
  else {
282
- for (var i = 0, imax = newTimes.length; i < imax; ++i) {
287
+ for (var i = 0; i < newTimesLength; ++i) {
283
288
  times.unshift(newTimes[i]);
284
289
  }
285
290
  }
@@ -306,6 +311,127 @@ var EShapeDataValueImpl = /** @class */ (function () {
306
311
  enumerable: false,
307
312
  configurable: true
308
313
  });
314
+ Object.defineProperty(EShapeDataValueImpl.prototype, "state", {
315
+ get: function () {
316
+ return this._state;
317
+ },
318
+ set: function (newState) {
319
+ var capacity = this._capacity;
320
+ if (capacity <= 0) {
321
+ if (this._state !== newState) {
322
+ this._state = newState;
323
+ var parent_9 = this.parent;
324
+ if (parent_9 != null) {
325
+ parent_9.isChanged = true;
326
+ }
327
+ }
328
+ }
329
+ else {
330
+ // Update the states
331
+ var states = this._states;
332
+ if (states == null) {
333
+ states = [];
334
+ this._states = states;
335
+ }
336
+ // Update the state
337
+ this._state = newState;
338
+ // Update the states
339
+ var order = this._order;
340
+ if (order === EShapeDataValueOrder.ASCENDING) {
341
+ states.push(newState);
342
+ }
343
+ else {
344
+ states.unshift(newState);
345
+ }
346
+ // Remove the unnecessary states
347
+ var count = states.length - capacity;
348
+ if (0 < count) {
349
+ if (order === EShapeDataValueOrder.ASCENDING) {
350
+ for (var i = 0; i < count; ++i) {
351
+ states.shift();
352
+ }
353
+ }
354
+ else {
355
+ states.length = capacity;
356
+ }
357
+ }
358
+ // Tell the parent it's changed
359
+ var parent_10 = this.parent;
360
+ if (parent_10 != null) {
361
+ parent_10.isChanged = true;
362
+ }
363
+ }
364
+ },
365
+ enumerable: false,
366
+ configurable: true
367
+ });
368
+ Object.defineProperty(EShapeDataValueImpl.prototype, "states", {
369
+ get: function () {
370
+ var result = this._states;
371
+ if (result == null) {
372
+ result = [];
373
+ this._states = result;
374
+ }
375
+ return result;
376
+ },
377
+ set: function (newStates) {
378
+ var newStatesLength = newStates.length;
379
+ if (0 < newStatesLength) {
380
+ var capacity = this._capacity;
381
+ if (capacity <= 0) {
382
+ var newState = newStates[newStatesLength - 1];
383
+ if (this._state !== newState) {
384
+ this._state = newState;
385
+ var parent_11 = this.parent;
386
+ if (parent_11 != null) {
387
+ parent_11.isChanged = true;
388
+ }
389
+ }
390
+ }
391
+ else {
392
+ // Update the states
393
+ var states = this._states;
394
+ if (states == null) {
395
+ states = [];
396
+ this._states = states;
397
+ }
398
+ // Update the value
399
+ this._state = newStates[newStatesLength - 1];
400
+ //
401
+ var order = this._order;
402
+ if (order === EShapeDataValueOrder.ASCENDING) {
403
+ for (var i = 0; i < newStatesLength; ++i) {
404
+ states.push(newStates[i]);
405
+ }
406
+ }
407
+ else {
408
+ for (var i = 0; i < newStatesLength; ++i) {
409
+ states.unshift(newStates[i]);
410
+ }
411
+ }
412
+ //
413
+ var count = states.length - capacity;
414
+ if (0 < count) {
415
+ if (order === EShapeDataValueOrder.ASCENDING) {
416
+ for (var i = 0; i < count; ++i) {
417
+ states.shift();
418
+ }
419
+ }
420
+ else {
421
+ states.length = capacity;
422
+ }
423
+ }
424
+ // Tell the parent it's changed
425
+ var parent_12 = this.parent;
426
+ if (parent_12 != null) {
427
+ parent_12.isChanged = true;
428
+ }
429
+ }
430
+ }
431
+ },
432
+ enumerable: false,
433
+ configurable: true
434
+ });
309
435
  Object.defineProperty(EShapeDataValueImpl.prototype, "capacity", {
310
436
  get: function () {
311
437
  return this._capacity;
@@ -350,10 +476,26 @@ var EShapeDataValueImpl = /** @class */ (function () {
350
476
  isChanged = true;
351
477
  }
352
478
  }
479
+ // States
480
+ var states = this._states;
481
+ if (states != null) {
482
+ var count = states.length - capacity;
483
+ if (0 < count) {
484
+ if (order === EShapeDataValueOrder.ASCENDING) {
485
+ for (var i = 0; i < count; ++i) {
486
+ states.shift();
487
+ }
488
+ }
489
+ else {
490
+ states.length = capacity;
491
+ }
492
+ isChanged = true;
493
+ }
494
+ }
353
495
  if (isChanged) {
354
- var parent_9 = this.parent;
355
- if (parent_9 != null) {
356
- parent_9.isChanged = true;
496
+ var parent_13 = this.parent;
497
+ if (parent_13 != null) {
498
+ parent_13.isChanged = true;
357
499
  }
358
500
  }
359
501
  }
@@ -389,59 +531,62 @@ var EShapeDataValueImpl = /** @class */ (function () {
389
531
  isChanged = true;
390
532
  }
391
533
  }
534
+ // States
535
+ var states = this._states;
536
+ if (states != null) {
537
+ if (0 <= index && index < states.length) {
538
+ states.splice(index, 1);
539
+ isChanged = true;
540
+ }
541
+ }
392
542
  if (isChanged) {
393
- var parent_10 = this.parent;
394
- if (parent_10 != null) {
395
- parent_10.isChanged = true;
543
+ var parent_14 = this.parent;
544
+ if (parent_14 != null) {
545
+ parent_14.isChanged = true;
396
546
  }
397
547
  }
398
548
  };
399
549
  EShapeDataValueImpl.prototype.removeAll = function (indices) {
400
550
  var isChanged = false;
401
- var values = this._values;
402
- var times = this._times;
403
551
  var sorted = indices.slice(0).sort(INDEX_COMPARATOR);
552
+ var sortedLength = sorted.length;
553
+ // Values
554
+ var values = this._values;
404
555
  if (values != null) {
405
- if (times != null) {
406
- for (var i = sorted.length - 1; 0 <= i; --i) {
407
- var index = sorted[i];
408
- if (0 <= index) {
409
- if (index < values.length) {
410
- values.splice(index, 1);
411
- isChanged = true;
412
- }
413
- if (index < times.length) {
414
- times.splice(index, 1);
415
- isChanged = true;
416
- }
417
- }
556
+ for (var i = sortedLength - 1; 0 <= i; --i) {
557
+ var index = sorted[i];
558
+ if (0 <= index && index < values.length) {
559
+ values.splice(index, 1);
560
+ isChanged = true;
418
561
  }
419
562
  }
420
- else {
421
- for (var i = sorted.length - 1; 0 <= i; --i) {
422
- var index = sorted[i];
423
- if (0 <= index && index < values.length) {
424
- values.splice(index, 1);
425
- isChanged = true;
426
- }
563
+ }
564
+ // Times
565
+ var times = this._times;
566
+ if (times != null) {
567
+ for (var i = sortedLength - 1; 0 <= i; --i) {
568
+ var index = sorted[i];
569
+ if (0 <= index && index < times.length) {
570
+ times.splice(index, 1);
571
+ isChanged = true;
427
572
  }
428
573
  }
429
574
  }
430
- else {
431
- if (times != null) {
432
- for (var i = sorted.length - 1; 0 <= i; --i) {
433
- var index = sorted[i];
434
- if (0 <= index && index < times.length) {
435
- times.splice(index, 1);
436
- isChanged = true;
437
- }
575
+ // States
576
+ var states = this._states;
577
+ if (states != null) {
578
+ for (var i = sortedLength - 1; 0 <= i; --i) {
579
+ var index = sorted[i];
580
+ if (0 <= index && index < states.length) {
581
+ states.splice(index, 1);
582
+ isChanged = true;
438
583
  }
439
584
  }
440
585
  }
441
586
  if (isChanged) {
442
- var parent_11 = this.parent;
443
- if (parent_11 != null) {
444
- parent_11.isChanged = true;
587
+ var parent_15 = this.parent;
588
+ if (parent_15 != null) {
589
+ parent_15.isChanged = true;
445
590
  }
446
591
  }
447
592
  };
@@ -459,11 +604,17 @@ var EShapeDataValueImpl = /** @class */ (function () {
459
604
  times.length = 0;
460
605
  isChanged = true;
461
606
  }
607
+ // States
608
+ var states = this._states;
609
+ if (states != null) {
610
+ states.length = 0;
611
+ isChanged = true;
612
+ }
462
613
  // Change flag
463
614
  if (isChanged) {
464
- var parent_12 = this.parent;
465
- if (parent_12 != null) {
466
- parent_12.isChanged = true;
615
+ var parent_16 = this.parent;
616
+ if (parent_16 != null) {
617
+ parent_16.isChanged = true;
467
618
  }
468
619
  }
469
620
  };
@@ -488,6 +639,7 @@ var EShapeDataValueImpl = /** @class */ (function () {
488
639
  this.range.copy(target.range);
489
640
  this._value = target.value;
490
641
  this._time = target.time;
642
+ this._state = target.state;
491
643
  this._capacity = target.capacity;
492
644
  return this;
493
645
  };
@@ -504,7 +656,8 @@ var EShapeDataValueImpl = /** @class */ (function () {
504
656
  var initial = manager.addResource(this.initial);
505
657
  var format = manager.addResource(this.format.trim());
506
658
  var range = this.range.serialize(manager);
507
- return manager.addResource("[".concat(id, ",").concat(initial, ",").concat(format, ",").concat(range, ",").concat(this._capacity, ",").concat(this._order, ",").concat(this.type, ",").concat(this.scope, "]"));
659
+ var as = manager.addResource(this.as);
660
+ return manager.addResource("[".concat(id, ",").concat(initial, ",").concat(format, ",").concat(range, ",").concat(this._capacity, ",").concat(this._order, ",").concat(this.type, ",").concat(this.scope, ",").concat(as, "]"));
508
661
  };
509
662
  EShapeDataValueImpl.prototype.deserialize = function (target, manager) {
510
663
  var _a, _b;
@@ -516,6 +669,8 @@ var EShapeDataValueImpl = /** @class */ (function () {
516
669
  manager.setDataValue(target, parsed);
517
670
  }
518
671
  this.id = manager.data[parsed[0]] || "";
672
+ var as = parsed[8];
673
+ this.as = as != null ? resources[as] || "" : "";
519
674
  this.type = (_a = parsed[6]) !== null && _a !== void 0 ? _a : EShapeDataValueType.NUMBER;
520
675
  this.scope = (_b = parsed[7]) !== null && _b !== void 0 ? _b : EShapeDataValueScope.PUBLIC;
521
676
  this.initial = resources[parsed[1]] || "";
@@ -1 +1 @@
1
- {"version":3,"file":"e-shape-data-value-impl.js","sourceRoot":"","sources":["../../../../src/main/typescript/wcardinal/ui/shape/e-shape-data-value-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 { DDiagramSerializedDataValue } from \"../d-diagram-serialized\";\nimport { EShapeResourceManagerDeserialization } from \"./e-shape-resource-manager-deserialization\";\nimport { EShapeResourceManagerSerialization } from \"./e-shape-resource-manager-serialization\";\nimport { EShapeDataValue, EShapeDataValueParent } from \"./e-shape-data-value\";\nimport { EShapeDataValueRange } from \"./e-shape-data-value-range\";\nimport { EShapeDataValueRangeImpl } from \"./e-shape-data-value-range-impl\";\nimport { EShapeDataValueOrder } from \"./e-shape-data-value-order\";\nimport { EShapeDataValueType } from \"./e-shape-data-value-type\";\nimport { EShapeDataValueScope } from \"./e-shape-data-value-scope\";\n\nconst INDEX_COMPARATOR = (a: number, b: number): number => {\n\treturn a - b;\n};\n\nexport class EShapeDataValueImpl implements EShapeDataValue {\n\tid: string;\n\ttype: EShapeDataValueType;\n\tscope: EShapeDataValueScope;\n\tinitial: string;\n\tformat: string;\n\trange: EShapeDataValueRange;\n\tprotected _value: unknown;\n\tprotected _time: number;\n\n\tprotected _values: unknown[] | undefined;\n\tprotected _times: number[] | undefined;\n\tprotected _capacity: number;\n\tprotected _order: EShapeDataValueOrder;\n\n\tprotected _parent?: EShapeDataValueParent;\n\n\tformatter?: (value: unknown) => unknown;\n\n\tconstructor() {\n\t\tthis.id = \"\";\n\t\tthis.type = EShapeDataValueType.NUMBER;\n\t\tthis.scope = EShapeDataValueScope.PUBLIC;\n\t\tthis.initial = \"\";\n\t\tthis.format = \"\";\n\t\tthis.range = new EShapeDataValueRangeImpl();\n\t\tthis._value = 0;\n\t\tthis._time = 0;\n\t\tthis._capacity = 0;\n\t\tthis._order = EShapeDataValueOrder.ASCENDING;\n\t}\n\n\tget parent(): EShapeDataValueParent | undefined {\n\t\treturn this._parent;\n\t}\n\n\tset parent(parent: EShapeDataValueParent | undefined) {\n\t\tif (this._parent !== parent) {\n\t\t\tthis._parent = parent;\n\t\t\tthis.range.parent = parent;\n\t\t}\n\t}\n\n\tget value(): unknown {\n\t\treturn this._value;\n\t}\n\n\tset value(newValue: unknown) {\n\t\tconst formatter = this.formatter;\n\t\tif (formatter != null) {\n\t\t\tnewValue = formatter(newValue);\n\t\t}\n\n\t\tconst capacity = this._capacity;\n\t\tif (capacity <= 0) {\n\t\t\tif (this._value !== newValue) {\n\t\t\t\tthis._value = newValue;\n\t\t\t\tconst parent = this.parent;\n\t\t\t\tif (parent != null) {\n\t\t\t\t\tparent.isChanged = true;\n\t\t\t\t}\n\t\t\t}\n\t\t} else {\n\t\t\tlet values = this._values;\n\t\t\tif (values == null) {\n\t\t\t\tvalues = [];\n\t\t\t\tthis._values = values;\n\t\t\t}\n\n\t\t\t// Update the value\n\t\t\tthis._value = newValue;\n\n\t\t\t// Update the values\n\t\t\tconst order = this._order;\n\t\t\tif (order === EShapeDataValueOrder.ASCENDING) {\n\t\t\t\tvalues.push(newValue);\n\t\t\t} else {\n\t\t\t\tvalues.unshift(newValue);\n\t\t\t}\n\n\t\t\t// Remove the unnecessary values\n\t\t\tconst count = values.length - capacity;\n\t\t\tif (0 < count) {\n\t\t\t\tif (order === EShapeDataValueOrder.ASCENDING) {\n\t\t\t\t\tfor (let i = 0; i < count; ++i) {\n\t\t\t\t\t\tvalues.shift();\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\tvalues.length = capacity;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// Tell the parent it's changed\n\t\t\tconst parent = this.parent;\n\t\t\tif (parent != null) {\n\t\t\t\tparent.isChanged = true;\n\t\t\t}\n\t\t}\n\t}\n\n\tget nvalue(): number {\n\t\treturn this.range.normalize(this._value as number);\n\t}\n\n\tget values(): unknown[] {\n\t\tlet result = this._values;\n\t\tif (result == null) {\n\t\t\tresult = [];\n\t\t\tthis._values = result;\n\t\t}\n\t\treturn result;\n\t}\n\n\tset values(newValues: unknown[]) {\n\t\tif (0 < newValues.length) {\n\t\t\tconst capacity = this._capacity;\n\t\t\tif (capacity <= 0) {\n\t\t\t\tlet newValue = newValues[newValues.length - 1];\n\t\t\t\tconst formatter = this.formatter;\n\t\t\t\tif (formatter != null) {\n\t\t\t\t\tnewValue = formatter(newValue);\n\t\t\t\t}\n\t\t\t\tif (this._value !== newValue) {\n\t\t\t\t\tthis._value = newValue;\n\t\t\t\t\tconst parent = this.parent;\n\t\t\t\t\tif (parent != null) {\n\t\t\t\t\t\tparent.isChanged = true;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tlet values = this._values;\n\t\t\t\tif (values == null) {\n\t\t\t\t\tvalues = [];\n\t\t\t\t\tthis._values = values;\n\t\t\t\t}\n\n\t\t\t\tconst order = this._order;\n\t\t\t\tconst formatter = this.formatter;\n\t\t\t\tif (formatter != null) {\n\t\t\t\t\t// Update the value\n\t\t\t\t\tthis._value = formatter(newValues[newValues.length - 1]);\n\n\t\t\t\t\t// Update the values\n\t\t\t\t\tif (order === EShapeDataValueOrder.ASCENDING) {\n\t\t\t\t\t\tfor (let i = 0, imax = newValues.length; i < imax; ++i) {\n\t\t\t\t\t\t\tvalues.push(formatter(newValues[i]));\n\t\t\t\t\t\t}\n\t\t\t\t\t} else {\n\t\t\t\t\t\tfor (let i = 0, imax = newValues.length; i < imax; ++i) {\n\t\t\t\t\t\t\tvalues.unshift(formatter(newValues[i]));\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\t// Update the value\n\t\t\t\t\tthis._value = newValues[newValues.length - 1];\n\n\t\t\t\t\t// Update the values\n\t\t\t\t\tif (order === EShapeDataValueOrder.ASCENDING) {\n\t\t\t\t\t\tfor (let i = 0, imax = newValues.length; i < imax; ++i) {\n\t\t\t\t\t\t\tvalues.push(newValues[i]);\n\t\t\t\t\t\t}\n\t\t\t\t\t} else {\n\t\t\t\t\t\tfor (let i = 0, imax = newValues.length; i < imax; ++i) {\n\t\t\t\t\t\t\tvalues.unshift(newValues[i]);\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\t// Remove the unnecessary values\n\t\t\t\tconst count = values.length - capacity;\n\t\t\t\tif (0 < count) {\n\t\t\t\t\tif (order === EShapeDataValueOrder.ASCENDING) {\n\t\t\t\t\t\tfor (let i = 0; i < count; ++i) {\n\t\t\t\t\t\t\tvalues.shift();\n\t\t\t\t\t\t}\n\t\t\t\t\t} else {\n\t\t\t\t\t\tvalues.length = capacity;\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\t// Tell the parent it's changed\n\t\t\t\tconst parent = this.parent;\n\t\t\t\tif (parent != null) {\n\t\t\t\t\tparent.isChanged = true;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\tget time(): number {\n\t\treturn this._time;\n\t}\n\n\tset time(newTime: number) {\n\t\tconst capacity = this._capacity;\n\t\tif (capacity <= 0) {\n\t\t\tif (this._time !== newTime) {\n\t\t\t\tthis._time = newTime;\n\t\t\t\tconst parent = this.parent;\n\t\t\t\tif (parent != null) {\n\t\t\t\t\tparent.isChanged = true;\n\t\t\t\t}\n\t\t\t}\n\t\t} else {\n\t\t\t// Update the times\n\t\t\tlet times = this._times;\n\t\t\tif (times == null) {\n\t\t\t\ttimes = [];\n\t\t\t\tthis._times = times;\n\t\t\t}\n\n\t\t\t// Update the time\n\t\t\tthis._time = newTime;\n\n\t\t\t// Update the times\n\t\t\tconst order = this._order;\n\t\t\tif (order === EShapeDataValueOrder.ASCENDING) {\n\t\t\t\ttimes.push(newTime);\n\t\t\t} else {\n\t\t\t\ttimes.unshift(newTime);\n\t\t\t}\n\n\t\t\t// Remove the unnecessary times\n\t\t\tconst count = times.length - capacity;\n\t\t\tif (0 < count) {\n\t\t\t\tif (order === EShapeDataValueOrder.ASCENDING) {\n\t\t\t\t\tfor (let i = 0; i < count; ++i) {\n\t\t\t\t\t\ttimes.shift();\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\ttimes.length = capacity;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// Tell the parent it's changed\n\t\t\tconst parent = this.parent;\n\t\t\tif (parent != null) {\n\t\t\t\tparent.isChanged = true;\n\t\t\t}\n\t\t}\n\t}\n\n\tget times(): number[] {\n\t\tlet result = this._times;\n\t\tif (result == null) {\n\t\t\tresult = [];\n\t\t\tthis._times = result;\n\t\t}\n\t\treturn result;\n\t}\n\n\tset times(newTimes: number[]) {\n\t\tif (0 < newTimes.length) {\n\t\t\tconst capacity = this._capacity;\n\t\t\tif (capacity <= 0) {\n\t\t\t\tconst newTime = newTimes[newTimes.length - 1];\n\t\t\t\tif (this._time !== newTime) {\n\t\t\t\t\tthis._time = newTime;\n\t\t\t\t\tconst parent = this.parent;\n\t\t\t\t\tif (parent != null) {\n\t\t\t\t\t\tparent.isChanged = true;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\t// Update the times\n\t\t\t\tlet times = this._times;\n\t\t\t\tif (times == null) {\n\t\t\t\t\ttimes = [];\n\t\t\t\t\tthis._times = times;\n\t\t\t\t}\n\n\t\t\t\t// Update the value\n\t\t\t\tthis._time = newTimes[newTimes.length - 1];\n\n\t\t\t\t//\n\t\t\t\tconst order = this._order;\n\t\t\t\tif (order === EShapeDataValueOrder.ASCENDING) {\n\t\t\t\t\tfor (let i = 0, imax = newTimes.length; i < imax; ++i) {\n\t\t\t\t\t\ttimes.push(newTimes[i]);\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\tfor (let i = 0, imax = newTimes.length; i < imax; ++i) {\n\t\t\t\t\t\ttimes.unshift(newTimes[i]);\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\t//\n\t\t\t\tconst count = times.length - capacity;\n\t\t\t\tif (0 < count) {\n\t\t\t\t\tif (order === EShapeDataValueOrder.ASCENDING) {\n\t\t\t\t\t\tfor (let i = 0; i < count; ++i) {\n\t\t\t\t\t\t\ttimes.shift();\n\t\t\t\t\t\t}\n\t\t\t\t\t} else {\n\t\t\t\t\t\ttimes.length = capacity;\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\t// Tell the parent it's changed\n\t\t\t\tconst parent = this.parent;\n\t\t\t\tif (parent != null) {\n\t\t\t\t\tparent.isChanged = true;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\tget capacity(): number {\n\t\treturn this._capacity;\n\t}\n\n\tset capacity(capacity: number) {\n\t\tif (this._capacity < capacity) {\n\t\t\tthis._capacity = capacity;\n\t\t} else if (capacity < this._capacity) {\n\t\t\tthis._capacity = capacity;\n\n\t\t\tlet isChanged = false;\n\n\t\t\t// Values\n\t\t\tconst order = this._order;\n\t\t\tconst values = this._values;\n\t\t\tif (values != null) {\n\t\t\t\tconst count = values.length - capacity;\n\t\t\t\tif (0 < count) {\n\t\t\t\t\tif (order === EShapeDataValueOrder.ASCENDING) {\n\t\t\t\t\t\tfor (let i = 0; i < count; ++i) {\n\t\t\t\t\t\t\tvalues.shift();\n\t\t\t\t\t\t}\n\t\t\t\t\t} else {\n\t\t\t\t\t\tvalues.length = capacity;\n\t\t\t\t\t}\n\t\t\t\t\tisChanged = true;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// Times\n\t\t\tconst times = this._times;\n\t\t\tif (times != null) {\n\t\t\t\tconst count = times.length - capacity;\n\t\t\t\tif (0 < count) {\n\t\t\t\t\tif (order === EShapeDataValueOrder.ASCENDING) {\n\t\t\t\t\t\tfor (let i = 0; i < count; ++i) {\n\t\t\t\t\t\t\ttimes.shift();\n\t\t\t\t\t\t}\n\t\t\t\t\t} else {\n\t\t\t\t\t\ttimes.length = capacity;\n\t\t\t\t\t}\n\t\t\t\t\tisChanged = true;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif (isChanged) {\n\t\t\t\tconst parent = this.parent;\n\t\t\t\tif (parent != null) {\n\t\t\t\t\tparent.isChanged = true;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\tget order(): EShapeDataValueOrder {\n\t\treturn this._order;\n\t}\n\n\tset order(order: EShapeDataValueOrder) {\n\t\tthis._order = order;\n\t}\n\n\tremove(index: number): void {\n\t\tlet isChanged = false;\n\n\t\t// Values\n\t\tconst values = this._values;\n\t\tif (values != null) {\n\t\t\tif (0 <= index && index < values.length) {\n\t\t\t\tvalues.splice(index, 1);\n\t\t\t\tisChanged = true;\n\t\t\t}\n\t\t}\n\n\t\t// Times\n\t\tconst times = this._times;\n\t\tif (times != null) {\n\t\t\tif (0 <= index && index < times.length) {\n\t\t\t\ttimes.splice(index, 1);\n\t\t\t\tisChanged = true;\n\t\t\t}\n\t\t}\n\n\t\tif (isChanged) {\n\t\t\tconst parent = this.parent;\n\t\t\tif (parent != null) {\n\t\t\t\tparent.isChanged = true;\n\t\t\t}\n\t\t}\n\t}\n\n\tremoveAll(indices: number[]): void {\n\t\tlet isChanged = false;\n\n\t\tconst values = this._values;\n\t\tconst times = this._times;\n\t\tconst sorted = indices.slice(0).sort(INDEX_COMPARATOR);\n\t\tif (values != null) {\n\t\t\tif (times != null) {\n\t\t\t\tfor (let i = sorted.length - 1; 0 <= i; --i) {\n\t\t\t\t\tconst index = sorted[i];\n\t\t\t\t\tif (0 <= index) {\n\t\t\t\t\t\tif (index < values.length) {\n\t\t\t\t\t\t\tvalues.splice(index, 1);\n\t\t\t\t\t\t\tisChanged = true;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif (index < times.length) {\n\t\t\t\t\t\t\ttimes.splice(index, 1);\n\t\t\t\t\t\t\tisChanged = true;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tfor (let i = sorted.length - 1; 0 <= i; --i) {\n\t\t\t\t\tconst index = sorted[i];\n\t\t\t\t\tif (0 <= index && index < values.length) {\n\t\t\t\t\t\tvalues.splice(index, 1);\n\t\t\t\t\t\tisChanged = true;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t} else {\n\t\t\tif (times != null) {\n\t\t\t\tfor (let i = sorted.length - 1; 0 <= i; --i) {\n\t\t\t\t\tconst index = sorted[i];\n\t\t\t\t\tif (0 <= index && index < times.length) {\n\t\t\t\t\t\ttimes.splice(index, 1);\n\t\t\t\t\t\tisChanged = true;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\tif (isChanged) {\n\t\t\tconst parent = this.parent;\n\t\t\tif (parent != null) {\n\t\t\t\tparent.isChanged = true;\n\t\t\t}\n\t\t}\n\t}\n\n\tclear(): void {\n\t\tlet isChanged = false;\n\n\t\t// Values\n\t\tconst values = this._values;\n\t\tif (values != null) {\n\t\t\tvalues.length = 0;\n\t\t\tisChanged = true;\n\t\t}\n\n\t\t// Times\n\t\tconst times = this._times;\n\t\tif (times != null) {\n\t\t\ttimes.length = 0;\n\t\t\tisChanged = true;\n\t\t}\n\n\t\t// Change flag\n\t\tif (isChanged) {\n\t\t\tconst parent = this.parent;\n\t\t\tif (parent != null) {\n\t\t\t\tparent.isChanged = true;\n\t\t\t}\n\t\t}\n\t}\n\n\ttoDirty(): void {\n\t\tconst parent = this.parent;\n\t\tif (parent != null) {\n\t\t\tparent.isChanged = true;\n\t\t}\n\t}\n\n\t/**\n\t * This method does not copy the `#values` and `#times` for the performance.\n\t *\n\t * @param target a copy target\n\t */\n\tcopy(target: EShapeDataValue): this {\n\t\tthis.id = target.id;\n\t\tthis.type = target.type;\n\t\tthis.scope = target.scope;\n\t\tthis.initial = target.initial;\n\t\tthis.format = target.format;\n\t\tthis.formatter = target.formatter;\n\t\tthis.range.copy(target.range);\n\t\tthis._value = target.value;\n\t\tthis._time = target.time;\n\t\tthis._capacity = target.capacity;\n\t\treturn this;\n\t}\n\n\tisEquals(target: EShapeDataValue): boolean {\n\t\treturn (\n\t\t\tthis.id === target.id &&\n\t\t\tthis.type === target.type &&\n\t\t\tthis.scope === target.scope &&\n\t\t\tthis.initial === target.initial &&\n\t\t\tthis.formatter === target.formatter &&\n\t\t\tthis.range.isEquals(target.range)\n\t\t);\n\t}\n\n\tserialize(manager: EShapeResourceManagerSerialization): number {\n\t\tconst id = manager.addData(this.id);\n\t\tconst initial = manager.addResource(this.initial);\n\t\tconst format = manager.addResource(this.format.trim());\n\t\tconst range = this.range.serialize(manager);\n\t\treturn manager.addResource(\n\t\t\t`[${id},${initial},${format},${range},${this._capacity},${this._order},${this.type},${this.scope}]`\n\t\t);\n\t}\n\n\tdeserialize(target: number, manager: EShapeResourceManagerDeserialization): this {\n\t\tconst resources = manager.resources;\n\t\tif (0 <= target && target < resources.length) {\n\t\t\tlet parsed = manager.getDataValue(target);\n\t\t\tif (parsed == null) {\n\t\t\t\tparsed = JSON.parse(resources[target]) as DDiagramSerializedDataValue;\n\t\t\t\tmanager.setDataValue(target, parsed);\n\t\t\t}\n\t\t\tthis.id = manager.data[parsed[0]] || \"\";\n\t\t\tthis.type = parsed[6] ?? EShapeDataValueType.NUMBER;\n\t\t\tthis.scope = parsed[7] ?? EShapeDataValueScope.PUBLIC;\n\t\t\tthis.initial = resources[parsed[1]] || \"\";\n\t\t\tthis.format = resources[parsed[2]] || \"\";\n\t\t\tthis.range.deserialize(parsed[3], manager);\n\t\t\tthis._capacity = parsed[4];\n\t\t\tthis._order = parsed[5];\n\t\t}\n\n\t\treturn this;\n\t}\n}\n"]}
1
+ {"version":3,"file":"e-shape-data-value-impl.js","sourceRoot":"","sources":["../../../../src/main/typescript/wcardinal/ui/shape/e-shape-data-value-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 { DDiagramSerializedDataValue } from \"../d-diagram-serialized\";\nimport { EShapeResourceManagerDeserialization } from \"./e-shape-resource-manager-deserialization\";\nimport { EShapeResourceManagerSerialization } from \"./e-shape-resource-manager-serialization\";\nimport { EShapeDataValue, EShapeDataValueParent } from \"./e-shape-data-value\";\nimport { EShapeDataValueRange } from \"./e-shape-data-value-range\";\nimport { EShapeDataValueRangeImpl } from \"./e-shape-data-value-range-impl\";\nimport { EShapeDataValueOrder } from \"./e-shape-data-value-order\";\nimport { EShapeDataValueType } from \"./e-shape-data-value-type\";\nimport { EShapeDataValueScope } from \"./e-shape-data-value-scope\";\nimport { EShapeDataValueFormatter } from \"./e-shape-data-value-formatter\";\nimport { EShapeDataValueState } from \"./e-shape-data-value-state\";\n\nconst INDEX_COMPARATOR = (a: number, b: number): number => {\n\treturn a - b;\n};\n\nexport class EShapeDataValueImpl implements EShapeDataValue {\n\tid: string;\n\tas: string;\n\ttype: EShapeDataValueType;\n\tscope: EShapeDataValueScope;\n\tinitial: string;\n\tformat: string;\n\trange: EShapeDataValueRange;\n\n\tprotected _value: unknown;\n\tprotected _time: number;\n\tprotected _state: EShapeDataValueState;\n\n\tprotected _values: unknown[] | undefined;\n\tprotected _times: number[] | undefined;\n\tprotected _states: EShapeDataValueState[] | undefined;\n\n\tprotected _capacity: number;\n\tprotected _order: EShapeDataValueOrder;\n\n\tprotected _parent?: EShapeDataValueParent;\n\n\tformatter?: EShapeDataValueFormatter;\n\n\tconstructor() {\n\t\tthis.id = \"\";\n\t\tthis.as = \"\";\n\t\tthis.type = EShapeDataValueType.NUMBER;\n\t\tthis.scope = EShapeDataValueScope.PUBLIC;\n\t\tthis.initial = \"\";\n\t\tthis.format = \"\";\n\t\tthis.range = new EShapeDataValueRangeImpl();\n\t\tthis._value = 0;\n\t\tthis._time = 0;\n\t\tthis._state = EShapeDataValueState.UNKOWN;\n\t\tthis._capacity = 0;\n\t\tthis._order = EShapeDataValueOrder.ASCENDING;\n\t}\n\n\tget parent(): EShapeDataValueParent | undefined {\n\t\treturn this._parent;\n\t}\n\n\tset parent(parent: EShapeDataValueParent | undefined) {\n\t\tif (this._parent !== parent) {\n\t\t\tthis._parent = parent;\n\t\t\tthis.range.parent = parent;\n\t\t}\n\t}\n\n\tget value(): unknown {\n\t\treturn this._value;\n\t}\n\n\tset value(newValue: unknown) {\n\t\tconst formatter = this.formatter;\n\t\tif (formatter != null) {\n\t\t\tnewValue = formatter(newValue);\n\t\t}\n\n\t\tconst capacity = this._capacity;\n\t\tif (capacity <= 0) {\n\t\t\tif (this._value !== newValue) {\n\t\t\t\tthis._value = newValue;\n\t\t\t\tconst parent = this.parent;\n\t\t\t\tif (parent != null) {\n\t\t\t\t\tparent.isChanged = true;\n\t\t\t\t}\n\t\t\t}\n\t\t} else {\n\t\t\tlet values = this._values;\n\t\t\tif (values == null) {\n\t\t\t\tvalues = [];\n\t\t\t\tthis._values = values;\n\t\t\t}\n\n\t\t\t// Update the value\n\t\t\tthis._value = newValue;\n\n\t\t\t// Update the values\n\t\t\tconst order = this._order;\n\t\t\tif (order === EShapeDataValueOrder.ASCENDING) {\n\t\t\t\tvalues.push(newValue);\n\t\t\t} else {\n\t\t\t\tvalues.unshift(newValue);\n\t\t\t}\n\n\t\t\t// Remove the unnecessary values\n\t\t\tconst count = values.length - capacity;\n\t\t\tif (0 < count) {\n\t\t\t\tif (order === EShapeDataValueOrder.ASCENDING) {\n\t\t\t\t\tfor (let i = 0; i < count; ++i) {\n\t\t\t\t\t\tvalues.shift();\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\tvalues.length = capacity;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// Tell the parent it's changed\n\t\t\tconst parent = this.parent;\n\t\t\tif (parent != null) {\n\t\t\t\tparent.isChanged = true;\n\t\t\t}\n\t\t}\n\t}\n\n\tget nvalue(): number {\n\t\treturn this.range.normalize(this._value as number);\n\t}\n\n\tget values(): unknown[] {\n\t\tlet result = this._values;\n\t\tif (result == null) {\n\t\t\tresult = [];\n\t\t\tthis._values = result;\n\t\t}\n\t\treturn result;\n\t}\n\n\tset values(newValues: unknown[]) {\n\t\tconst newValuesLength = newValues.length;\n\t\tif (0 < newValuesLength) {\n\t\t\tconst capacity = this._capacity;\n\t\t\tif (capacity <= 0) {\n\t\t\t\tlet newValue = newValues[newValuesLength - 1];\n\t\t\t\tconst formatter = this.formatter;\n\t\t\t\tif (formatter != null) {\n\t\t\t\t\tnewValue = formatter(newValue);\n\t\t\t\t}\n\t\t\t\tif (this._value !== newValue) {\n\t\t\t\t\tthis._value = newValue;\n\t\t\t\t\tconst parent = this.parent;\n\t\t\t\t\tif (parent != null) {\n\t\t\t\t\t\tparent.isChanged = true;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tlet values = this._values;\n\t\t\t\tif (values == null) {\n\t\t\t\t\tvalues = [];\n\t\t\t\t\tthis._values = values;\n\t\t\t\t}\n\n\t\t\t\tconst order = this._order;\n\t\t\t\tconst formatter = this.formatter;\n\t\t\t\tif (formatter != null) {\n\t\t\t\t\t// Update the value\n\t\t\t\t\tthis._value = formatter(newValues[newValuesLength - 1]);\n\n\t\t\t\t\t// Update the values\n\t\t\t\t\tif (order === EShapeDataValueOrder.ASCENDING) {\n\t\t\t\t\t\tfor (let i = 0; i < newValuesLength; ++i) {\n\t\t\t\t\t\t\tvalues.push(formatter(newValues[i]));\n\t\t\t\t\t\t}\n\t\t\t\t\t} else {\n\t\t\t\t\t\tfor (let i = 0; i < newValuesLength; ++i) {\n\t\t\t\t\t\t\tvalues.unshift(formatter(newValues[i]));\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\t// Update the value\n\t\t\t\t\tthis._value = newValues[newValuesLength - 1];\n\n\t\t\t\t\t// Update the values\n\t\t\t\t\tif (order === EShapeDataValueOrder.ASCENDING) {\n\t\t\t\t\t\tfor (let i = 0; i < newValuesLength; ++i) {\n\t\t\t\t\t\t\tvalues.push(newValues[i]);\n\t\t\t\t\t\t}\n\t\t\t\t\t} else {\n\t\t\t\t\t\tfor (let i = 0; i < newValuesLength; ++i) {\n\t\t\t\t\t\t\tvalues.unshift(newValues[i]);\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\t// Remove the unnecessary values\n\t\t\t\tconst count = values.length - capacity;\n\t\t\t\tif (0 < count) {\n\t\t\t\t\tif (order === EShapeDataValueOrder.ASCENDING) {\n\t\t\t\t\t\tfor (let i = 0; i < count; ++i) {\n\t\t\t\t\t\t\tvalues.shift();\n\t\t\t\t\t\t}\n\t\t\t\t\t} else {\n\t\t\t\t\t\tvalues.length = capacity;\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\t// Tell the parent it's changed\n\t\t\t\tconst parent = this.parent;\n\t\t\t\tif (parent != null) {\n\t\t\t\t\tparent.isChanged = true;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\tget time(): number {\n\t\treturn this._time;\n\t}\n\n\tset time(newTime: number) {\n\t\tconst capacity = this._capacity;\n\t\tif (capacity <= 0) {\n\t\t\tif (this._time !== newTime) {\n\t\t\t\tthis._time = newTime;\n\t\t\t\tconst parent = this.parent;\n\t\t\t\tif (parent != null) {\n\t\t\t\t\tparent.isChanged = true;\n\t\t\t\t}\n\t\t\t}\n\t\t} else {\n\t\t\t// Update the times\n\t\t\tlet times = this._times;\n\t\t\tif (times == null) {\n\t\t\t\ttimes = [];\n\t\t\t\tthis._times = times;\n\t\t\t}\n\n\t\t\t// Update the time\n\t\t\tthis._time = newTime;\n\n\t\t\t// Update the times\n\t\t\tconst order = this._order;\n\t\t\tif (order === EShapeDataValueOrder.ASCENDING) {\n\t\t\t\ttimes.push(newTime);\n\t\t\t} else {\n\t\t\t\ttimes.unshift(newTime);\n\t\t\t}\n\n\t\t\t// Remove the unnecessary times\n\t\t\tconst count = times.length - capacity;\n\t\t\tif (0 < count) {\n\t\t\t\tif (order === EShapeDataValueOrder.ASCENDING) {\n\t\t\t\t\tfor (let i = 0; i < count; ++i) {\n\t\t\t\t\t\ttimes.shift();\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\ttimes.length = capacity;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// Tell the parent it's changed\n\t\t\tconst parent = this.parent;\n\t\t\tif (parent != null) {\n\t\t\t\tparent.isChanged = true;\n\t\t\t}\n\t\t}\n\t}\n\n\tget times(): number[] {\n\t\tlet result = this._times;\n\t\tif (result == null) {\n\t\t\tresult = [];\n\t\t\tthis._times = result;\n\t\t}\n\t\treturn result;\n\t}\n\n\tset times(newTimes: number[]) {\n\t\tconst newTimesLength = newTimes.length;\n\t\tif (0 < newTimesLength) {\n\t\t\tconst capacity = this._capacity;\n\t\t\tif (capacity <= 0) {\n\t\t\t\tconst newTime = newTimes[newTimesLength - 1];\n\t\t\t\tif (this._time !== newTime) {\n\t\t\t\t\tthis._time = newTime;\n\t\t\t\t\tconst parent = this.parent;\n\t\t\t\t\tif (parent != null) {\n\t\t\t\t\t\tparent.isChanged = true;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\t// Update the times\n\t\t\t\tlet times = this._times;\n\t\t\t\tif (times == null) {\n\t\t\t\t\ttimes = [];\n\t\t\t\t\tthis._times = times;\n\t\t\t\t}\n\n\t\t\t\t// Update the value\n\t\t\t\tthis._time = newTimes[newTimesLength - 1];\n\n\t\t\t\t//\n\t\t\t\tconst order = this._order;\n\t\t\t\tif (order === EShapeDataValueOrder.ASCENDING) {\n\t\t\t\t\tfor (let i = 0; i < newTimesLength; ++i) {\n\t\t\t\t\t\ttimes.push(newTimes[i]);\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\tfor (let i = 0; i < newTimesLength; ++i) {\n\t\t\t\t\t\ttimes.unshift(newTimes[i]);\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\t//\n\t\t\t\tconst count = times.length - capacity;\n\t\t\t\tif (0 < count) {\n\t\t\t\t\tif (order === EShapeDataValueOrder.ASCENDING) {\n\t\t\t\t\t\tfor (let i = 0; i < count; ++i) {\n\t\t\t\t\t\t\ttimes.shift();\n\t\t\t\t\t\t}\n\t\t\t\t\t} else {\n\t\t\t\t\t\ttimes.length = capacity;\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\t// Tell the parent it's changed\n\t\t\t\tconst parent = this.parent;\n\t\t\t\tif (parent != null) {\n\t\t\t\t\tparent.isChanged = true;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\tget state(): EShapeDataValueState {\n\t\treturn this._state;\n\t}\n\n\tset state(newState: number) {\n\t\tconst capacity = this._capacity;\n\t\tif (capacity <= 0) {\n\t\t\tif (this._state !== newState) {\n\t\t\t\tthis._state = newState;\n\t\t\t\tconst parent = this.parent;\n\t\t\t\tif (parent != null) {\n\t\t\t\t\tparent.isChanged = true;\n\t\t\t\t}\n\t\t\t}\n\t\t} else {\n\t\t\t// Update the states\n\t\t\tlet states = this._states;\n\t\t\tif (states == null) {\n\t\t\t\tstates = [];\n\t\t\t\tthis._states = states;\n\t\t\t}\n\n\t\t\t// Update the state\n\t\t\tthis._state = newState;\n\n\t\t\t// Update the states\n\t\t\tconst order = this._order;\n\t\t\tif (order === EShapeDataValueOrder.ASCENDING) {\n\t\t\t\tstates.push(newState);\n\t\t\t} else {\n\t\t\t\tstates.unshift(newState);\n\t\t\t}\n\n\t\t\t// Remove the unnecessary states\n\t\t\tconst count = states.length - capacity;\n\t\t\tif (0 < count) {\n\t\t\t\tif (order === EShapeDataValueOrder.ASCENDING) {\n\t\t\t\t\tfor (let i = 0; i < count; ++i) {\n\t\t\t\t\t\tstates.shift();\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\tstates.length = capacity;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// Tell the parent it's changed\n\t\t\tconst parent = this.parent;\n\t\t\tif (parent != null) {\n\t\t\t\tparent.isChanged = true;\n\t\t\t}\n\t\t}\n\t}\n\n\tget states(): EShapeDataValueState[] {\n\t\tlet result = this._states;\n\t\tif (result == null) {\n\t\t\tresult = [];\n\t\t\tthis._states = result;\n\t\t}\n\t\treturn result;\n\t}\n\n\tset states(newStates: number[]) {\n\t\tconst newStatesLength = newStates.length;\n\t\tif (0 < newStatesLength) {\n\t\t\tconst capacity = this._capacity;\n\t\t\tif (capacity <= 0) {\n\t\t\t\tconst newState = newStates[newStatesLength - 1];\n\t\t\t\tif (this._state !== newState) {\n\t\t\t\t\tthis._state = newState;\n\t\t\t\t\tconst parent = this.parent;\n\t\t\t\t\tif (parent != null) {\n\t\t\t\t\t\tparent.isChanged = true;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\t// Update the states\n\t\t\t\tlet states = this._states;\n\t\t\t\tif (states == null) {\n\t\t\t\t\tstates = [];\n\t\t\t\t\tthis._states = states;\n\t\t\t\t}\n\n\t\t\t\t// Update the value\n\t\t\t\tthis._state = newStates[newStatesLength - 1];\n\n\t\t\t\t//\n\t\t\t\tconst order = this._order;\n\t\t\t\tif (order === EShapeDataValueOrder.ASCENDING) {\n\t\t\t\t\tfor (let i = 0; i < newStatesLength; ++i) {\n\t\t\t\t\t\tstates.push(newStates[i]);\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\tfor (let i = 0; i < newStatesLength; ++i) {\n\t\t\t\t\t\tstates.unshift(newStates[i]);\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\t//\n\t\t\t\tconst count = states.length - capacity;\n\t\t\t\tif (0 < count) {\n\t\t\t\t\tif (order === EShapeDataValueOrder.ASCENDING) {\n\t\t\t\t\t\tfor (let i = 0; i < count; ++i) {\n\t\t\t\t\t\t\tstates.shift();\n\t\t\t\t\t\t}\n\t\t\t\t\t} else {\n\t\t\t\t\t\tstates.length = capacity;\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\t// Tell the parent it's changed\n\t\t\t\tconst parent = this.parent;\n\t\t\t\tif (parent != null) {\n\t\t\t\t\tparent.isChanged = true;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\tget capacity(): number {\n\t\treturn this._capacity;\n\t}\n\n\tset capacity(capacity: number) {\n\t\tif (this._capacity < capacity) {\n\t\t\tthis._capacity = capacity;\n\t\t} else if (capacity < this._capacity) {\n\t\t\tthis._capacity = capacity;\n\n\t\t\tlet isChanged = false;\n\n\t\t\t// Values\n\t\t\tconst order = this._order;\n\t\t\tconst values = this._values;\n\t\t\tif (values != null) {\n\t\t\t\tconst count = values.length - capacity;\n\t\t\t\tif (0 < count) {\n\t\t\t\t\tif (order === EShapeDataValueOrder.ASCENDING) {\n\t\t\t\t\t\tfor (let i = 0; i < count; ++i) {\n\t\t\t\t\t\t\tvalues.shift();\n\t\t\t\t\t\t}\n\t\t\t\t\t} else {\n\t\t\t\t\t\tvalues.length = capacity;\n\t\t\t\t\t}\n\t\t\t\t\tisChanged = true;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// Times\n\t\t\tconst times = this._times;\n\t\t\tif (times != null) {\n\t\t\t\tconst count = times.length - capacity;\n\t\t\t\tif (0 < count) {\n\t\t\t\t\tif (order === EShapeDataValueOrder.ASCENDING) {\n\t\t\t\t\t\tfor (let i = 0; i < count; ++i) {\n\t\t\t\t\t\t\ttimes.shift();\n\t\t\t\t\t\t}\n\t\t\t\t\t} else {\n\t\t\t\t\t\ttimes.length = capacity;\n\t\t\t\t\t}\n\t\t\t\t\tisChanged = true;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// States\n\t\t\tconst states = this._states;\n\t\t\tif (states != null) {\n\t\t\t\tconst count = states.length - capacity;\n\t\t\t\tif (0 < count) {\n\t\t\t\t\tif (order === EShapeDataValueOrder.ASCENDING) {\n\t\t\t\t\t\tfor (let i = 0; i < count; ++i) {\n\t\t\t\t\t\t\tstates.shift();\n\t\t\t\t\t\t}\n\t\t\t\t\t} else {\n\t\t\t\t\t\tstates.length = capacity;\n\t\t\t\t\t}\n\t\t\t\t\tisChanged = true;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif (isChanged) {\n\t\t\t\tconst parent = this.parent;\n\t\t\t\tif (parent != null) {\n\t\t\t\t\tparent.isChanged = true;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\tget order(): EShapeDataValueOrder {\n\t\treturn this._order;\n\t}\n\n\tset order(order: EShapeDataValueOrder) {\n\t\tthis._order = order;\n\t}\n\n\tremove(index: number): void {\n\t\tlet isChanged = false;\n\n\t\t// Values\n\t\tconst values = this._values;\n\t\tif (values != null) {\n\t\t\tif (0 <= index && index < values.length) {\n\t\t\t\tvalues.splice(index, 1);\n\t\t\t\tisChanged = true;\n\t\t\t}\n\t\t}\n\n\t\t// Times\n\t\tconst times = this._times;\n\t\tif (times != null) {\n\t\t\tif (0 <= index && index < times.length) {\n\t\t\t\ttimes.splice(index, 1);\n\t\t\t\tisChanged = true;\n\t\t\t}\n\t\t}\n\n\t\t// States\n\t\tconst states = this._states;\n\t\tif (states != null) {\n\t\t\tif (0 <= index && index < states.length) {\n\t\t\t\tstates.splice(index, 1);\n\t\t\t\tisChanged = true;\n\t\t\t}\n\t\t}\n\n\t\tif (isChanged) {\n\t\t\tconst parent = this.parent;\n\t\t\tif (parent != null) {\n\t\t\t\tparent.isChanged = true;\n\t\t\t}\n\t\t}\n\t}\n\n\tremoveAll(indices: number[]): void {\n\t\tlet isChanged = false;\n\n\t\tconst sorted = indices.slice(0).sort(INDEX_COMPARATOR);\n\t\tconst sortedLength = sorted.length;\n\n\t\t// Values\n\t\tconst values = this._values;\n\t\tif (values != null) {\n\t\t\tfor (let i = sortedLength - 1; 0 <= i; --i) {\n\t\t\t\tconst index = sorted[i];\n\t\t\t\tif (0 <= index && index < values.length) {\n\t\t\t\t\tvalues.splice(index, 1);\n\t\t\t\t\tisChanged = true;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\t// Times\n\t\tconst times = this._times;\n\t\tif (times != null) {\n\t\t\tfor (let i = sortedLength - 1; 0 <= i; --i) {\n\t\t\t\tconst index = sorted[i];\n\t\t\t\tif (0 <= index && index < times.length) {\n\t\t\t\t\ttimes.splice(index, 1);\n\t\t\t\t\tisChanged = true;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\t// States\n\t\tconst states = this._states;\n\t\tif (states != null) {\n\t\t\tfor (let i = sortedLength - 1; 0 <= i; --i) {\n\t\t\t\tconst index = sorted[i];\n\t\t\t\tif (0 <= index && index < states.length) {\n\t\t\t\t\tstates.splice(index, 1);\n\t\t\t\t\tisChanged = true;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\tif (isChanged) {\n\t\t\tconst parent = this.parent;\n\t\t\tif (parent != null) {\n\t\t\t\tparent.isChanged = true;\n\t\t\t}\n\t\t}\n\t}\n\n\tclear(): void {\n\t\tlet isChanged = false;\n\n\t\t// Values\n\t\tconst values = this._values;\n\t\tif (values != null) {\n\t\t\tvalues.length = 0;\n\t\t\tisChanged = true;\n\t\t}\n\n\t\t// Times\n\t\tconst times = this._times;\n\t\tif (times != null) {\n\t\t\ttimes.length = 0;\n\t\t\tisChanged = true;\n\t\t}\n\n\t\t// States\n\t\tconst states = this._states;\n\t\tif (states != null) {\n\t\t\tstates.length = 0;\n\t\t\tisChanged = true;\n\t\t}\n\n\t\t// Change flag\n\t\tif (isChanged) {\n\t\t\tconst parent = this.parent;\n\t\t\tif (parent != null) {\n\t\t\t\tparent.isChanged = true;\n\t\t\t}\n\t\t}\n\t}\n\n\ttoDirty(): void {\n\t\tconst parent = this.parent;\n\t\tif (parent != null) {\n\t\t\tparent.isChanged = true;\n\t\t}\n\t}\n\n\t/**\n\t * This method does not copy the `#values` and `#times` for the performance.\n\t *\n\t * @param target a copy target\n\t */\n\tcopy(target: EShapeDataValue): this {\n\t\tthis.id = target.id;\n\t\tthis.type = target.type;\n\t\tthis.scope = target.scope;\n\t\tthis.initial = target.initial;\n\t\tthis.format = target.format;\n\t\tthis.formatter = target.formatter;\n\t\tthis.range.copy(target.range);\n\t\tthis._value = target.value;\n\t\tthis._time = target.time;\n\t\tthis._state = target.state;\n\t\tthis._capacity = target.capacity;\n\t\treturn this;\n\t}\n\n\tisEquals(target: EShapeDataValue): boolean {\n\t\treturn (\n\t\t\tthis.id === target.id &&\n\t\t\tthis.type === target.type &&\n\t\t\tthis.scope === target.scope &&\n\t\t\tthis.initial === target.initial &&\n\t\t\tthis.formatter === target.formatter &&\n\t\t\tthis.range.isEquals(target.range)\n\t\t);\n\t}\n\n\tserialize(manager: EShapeResourceManagerSerialization): number {\n\t\tconst id = manager.addData(this.id);\n\t\tconst initial = manager.addResource(this.initial);\n\t\tconst format = manager.addResource(this.format.trim());\n\t\tconst range = this.range.serialize(manager);\n\t\tconst as = manager.addResource(this.as);\n\t\treturn manager.addResource(\n\t\t\t`[${id},${initial},${format},${range},${this._capacity},${this._order},${this.type},${this.scope},${as}]`\n\t\t);\n\t}\n\n\tdeserialize(target: number, manager: EShapeResourceManagerDeserialization): this {\n\t\tconst resources = manager.resources;\n\t\tif (0 <= target && target < resources.length) {\n\t\t\tlet parsed = manager.getDataValue(target);\n\t\t\tif (parsed == null) {\n\t\t\t\tparsed = JSON.parse(resources[target]) as DDiagramSerializedDataValue;\n\t\t\t\tmanager.setDataValue(target, parsed);\n\t\t\t}\n\t\t\tthis.id = manager.data[parsed[0]] || \"\";\n\t\t\tconst as = parsed[8];\n\t\t\tthis.as = as != null ? resources[as] || \"\" : \"\";\n\t\t\tthis.type = parsed[6] ?? EShapeDataValueType.NUMBER;\n\t\t\tthis.scope = parsed[7] ?? EShapeDataValueScope.PUBLIC;\n\t\t\tthis.initial = resources[parsed[1]] || \"\";\n\t\t\tthis.format = resources[parsed[2]] || \"\";\n\t\t\tthis.range.deserialize(parsed[3], manager);\n\t\t\tthis._capacity = parsed[4];\n\t\t\tthis._order = parsed[5];\n\t\t}\n\n\t\treturn this;\n\t}\n}\n"]}
@@ -0,0 +1,36 @@
1
+ /*
2
+ * Copyright (C) 2019 Toshiba Corporation
3
+ * SPDX-License-Identifier: Apache-2.0
4
+ */
5
+ export var EShapeDataValueState = {
6
+ /**
7
+ * The data status is not known.
8
+ * This is the default state.
9
+ */
10
+ UNKOWN: -1,
11
+ /**
12
+ * The request succeeded.
13
+ */
14
+ FOUND: 0,
15
+ /**
16
+ * The server can not find the requested data.
17
+ */
18
+ NOT_FOUND: 1,
19
+ /**
20
+ * The settings or something provided by clients are considered incorrect.
21
+ */
22
+ BAD_REQUEST: 2,
23
+ /**
24
+ * The server has encountered unknown errors.
25
+ */
26
+ SERVER_ERROR: 3,
27
+ /**
28
+ * The server is not ready to handle the request.
29
+ */
30
+ SERVICE_UNAVAILABLE: 4,
31
+ /**
32
+ * A client is not allowed to access this data.
33
+ */
34
+ FORBIDDEN: 5
35
+ };
36
+ //# sourceMappingURL=e-shape-data-value-state.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"e-shape-data-value-state.js","sourceRoot":"","sources":["../../../../src/main/typescript/wcardinal/ui/shape/e-shape-data-value-state.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,MAAM,CAAC,IAAM,oBAAoB,GAAG;IACnC;;;OAGG;IACH,MAAM,EAAE,CAAC,CAAC;IAEV;;OAEG;IACH,KAAK,EAAE,CAAC;IAER;;OAEG;IACH,SAAS,EAAE,CAAC;IAEZ;;OAEG;IACH,WAAW,EAAE,CAAC;IAEd;;OAEG;IACH,YAAY,EAAE,CAAC;IAEf;;OAEG;IACH,mBAAmB,EAAE,CAAC;IAEtB;;OAEG;IACH,SAAS,EAAE,CAAC;CACH,CAAC","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nexport const EShapeDataValueState = {\n\t/**\n\t * The data status is not known.\n\t * This is the default state.\n\t */\n\tUNKOWN: -1,\n\n\t/**\n\t * The request succeeded.\n\t */\n\tFOUND: 0,\n\n\t/**\n\t * The server can not find the requested data.\n\t */\n\tNOT_FOUND: 1,\n\n\t/**\n\t * The settings or something provided by clients are considered incorrect.\n\t */\n\tBAD_REQUEST: 2,\n\n\t/**\n\t * The server has encountered unknown errors.\n\t */\n\tSERVER_ERROR: 3,\n\n\t/**\n\t * The server is not ready to handle the request.\n\t */\n\tSERVICE_UNAVAILABLE: 4,\n\n\t/**\n\t * A client is not allowed to access this data.\n\t */\n\tFORBIDDEN: 5\n} as const;\n\nexport type EShapeDataValueState = number;\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"e-shape-data-value.js","sourceRoot":"","sources":["../../../../src/main/typescript/wcardinal/ui/shape/e-shape-data-value.ts"],"names":[],"mappings":"AAAA;;;GAGG","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { EShapeResourceManagerDeserialization } from \"./e-shape-resource-manager-deserialization\";\nimport { EShapeResourceManagerSerialization } from \"./e-shape-resource-manager-serialization\";\nimport { EShapeDataValueRange, EShapeDataValueRangeLike } from \"./e-shape-data-value-range\";\nimport { EShapeDataValueOrder } from \"./e-shape-data-value-order\";\nimport { EShapeDataValueScope } from \"./e-shape-data-value-scope\";\nimport { EShapeDataValueType } from \"./e-shape-data-value-type\";\n\nexport interface EShapeDataValueLike {\n\tid: string;\n\ttype: EShapeDataValueType;\n\tscope: EShapeDataValueScope;\n\tinitial: string;\n\tformat: string;\n\trange: EShapeDataValueRangeLike;\n\tcapacity: number;\n\torder: EShapeDataValueOrder;\n}\n\nexport interface EShapeDataValueParent {\n\tisChanged: boolean;\n}\n\nexport interface EShapeDataValue extends EShapeDataValueLike {\n\tvalue: unknown;\n\treadonly nvalue: number;\n\ttime: number;\n\n\tvalues: unknown[];\n\ttimes: number[];\n\n\trange: EShapeDataValueRange;\n\tparent?: EShapeDataValueParent;\n\n\tformatter?: (value: unknown) => unknown;\n\n\tclear(): void;\n\ttoDirty(): void;\n\tremove(index: number): void;\n\tremoveAll(indices: number[]): void;\n\tcopy(target: EShapeDataValue): void;\n\tisEquals(target: EShapeDataValue): boolean;\n\tserialize(manager: EShapeResourceManagerSerialization): number;\n\tdeserialize(target: number, manager: EShapeResourceManagerDeserialization): void;\n}\n"]}
1
+ {"version":3,"file":"e-shape-data-value.js","sourceRoot":"","sources":["../../../../src/main/typescript/wcardinal/ui/shape/e-shape-data-value.ts"],"names":[],"mappings":"AAAA;;;GAGG","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { EShapeResourceManagerDeserialization } from \"./e-shape-resource-manager-deserialization\";\nimport { EShapeResourceManagerSerialization } from \"./e-shape-resource-manager-serialization\";\nimport { EShapeDataValueRange, EShapeDataValueRangeLike } from \"./e-shape-data-value-range\";\nimport { EShapeDataValueOrder } from \"./e-shape-data-value-order\";\nimport { EShapeDataValueScope } from \"./e-shape-data-value-scope\";\nimport { EShapeDataValueType } from \"./e-shape-data-value-type\";\nimport { EShapeDataValueState } from \"./e-shape-data-value-state\";\nimport { EShapeDataValueFormatter } from \"./e-shape-data-value-formatter\";\n\nexport interface EShapeDataValueLike {\n\tid: string;\n\tas: string;\n\ttype: EShapeDataValueType;\n\tscope: EShapeDataValueScope;\n\tinitial: string;\n\tformat: string;\n\trange: EShapeDataValueRangeLike;\n\tcapacity: number;\n\torder: EShapeDataValueOrder;\n}\n\nexport interface EShapeDataValueParent {\n\tisChanged: boolean;\n}\n\nexport interface EShapeDataValue extends EShapeDataValueLike {\n\tvalue: unknown;\n\treadonly nvalue: number;\n\ttime: number;\n\tstate: EShapeDataValueState;\n\n\tvalues: unknown[];\n\ttimes: number[];\n\tstates: EShapeDataValueState[];\n\n\trange: EShapeDataValueRange;\n\tparent?: EShapeDataValueParent;\n\n\tformatter?: EShapeDataValueFormatter;\n\n\tclear(): void;\n\ttoDirty(): void;\n\tremove(index: number): void;\n\tremoveAll(indices: number[]): void;\n\tcopy(target: EShapeDataValue): void;\n\tisEquals(target: EShapeDataValue): boolean;\n\tserialize(manager: EShapeResourceManagerSerialization): number;\n\tdeserialize(target: number, manager: EShapeResourceManagerDeserialization): void;\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"e-shape-data.js","sourceRoot":"","sources":["../../../../src/main/typescript/wcardinal/ui/shape/e-shape-data.ts"],"names":[],"mappings":"AAAA;;;GAGG","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { EShapeResourceManagerDeserialization } from \"./e-shape-resource-manager-deserialization\";\nimport { EShapeResourceManagerSerialization } from \"./e-shape-resource-manager-serialization\";\nimport { EShapeDataValue } from \"./e-shape-data-value\";\nimport { EShapeDataValueRange } from \"./e-shape-data-value-range\";\nimport { EShapeDataMapping } from \"./e-shape-data-mapping\";\nimport { EShapeDataValueType } from \"./e-shape-data-value-type\";\nimport { EShapeDataValueScope } from \"./e-shape-data-value-scope\";\nimport { EShapeDataScoped } from \"./e-shape-data-scoped\";\n\nexport interface EShapeData {\n\treadonly values: EShapeDataValue[];\n\tisChanged: boolean;\n\n\t// Shortcuts\n\treadonly id: string;\n\treadonly type: EShapeDataValueType;\n\treadonly scope: EShapeDataValueScope;\n\treadonly initial: string;\n\treadonly format: string;\n\treadonly range: EShapeDataValueRange;\n\tvalue: unknown;\n\treadonly nvalue: number;\n\ttime: number;\n\tcapacity: number;\n\n\t// Mapping\n\treadonly mapping: EShapeDataMapping;\n\tgetMapping(): EShapeDataMapping | undefined;\n\n\t// Private\n\treadonly private: EShapeDataScoped;\n\tgetPrivate(): EShapeDataScoped | undefined;\n\n\t// Methods\n\tadd(value: EShapeDataValue, index?: number): void;\n\tset(index: number, value: EShapeDataValue): EShapeDataValue | null;\n\tindexOf(target: EShapeDataValue): number;\n\tget(index: number): EShapeDataValue | null;\n\tremove(index: number): void;\n\tsize(): number;\n\tswap(indexA: number, indexB: number): void;\n\n\tcopy(target: EShapeData): this;\n\tserialize(manager: EShapeResourceManagerSerialization): number;\n\tdeserialize(target: number, manager: EShapeResourceManagerDeserialization): void;\n}\n"]}
1
+ {"version":3,"file":"e-shape-data.js","sourceRoot":"","sources":["../../../../src/main/typescript/wcardinal/ui/shape/e-shape-data.ts"],"names":[],"mappings":"AAAA;;;GAGG","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { EShapeResourceManagerDeserialization } from \"./e-shape-resource-manager-deserialization\";\nimport { EShapeResourceManagerSerialization } from \"./e-shape-resource-manager-serialization\";\nimport { EShapeDataValue } from \"./e-shape-data-value\";\nimport { EShapeDataValueRange } from \"./e-shape-data-value-range\";\nimport { EShapeDataMapping } from \"./e-shape-data-mapping\";\nimport { EShapeDataValueType } from \"./e-shape-data-value-type\";\nimport { EShapeDataValueScope } from \"./e-shape-data-value-scope\";\nimport { EShapeDataScoped } from \"./e-shape-data-scoped\";\nimport { EShapeDataValueState } from \"./e-shape-data-value-state\";\n\nexport interface EShapeData {\n\treadonly values: EShapeDataValue[];\n\tisChanged: boolean;\n\n\t// Shortcuts\n\treadonly id: string;\n\treadonly as: string;\n\treadonly type: EShapeDataValueType;\n\treadonly scope: EShapeDataValueScope;\n\treadonly initial: string;\n\treadonly format: string;\n\treadonly range: EShapeDataValueRange;\n\tvalue: unknown;\n\treadonly nvalue: number;\n\ttime: number;\n\tstate: EShapeDataValueState;\n\tcapacity: number;\n\n\t// Alias\n\treadonly alias: Record<string, EShapeDataValue>;\n\n\t// Mapping\n\treadonly mapping: EShapeDataMapping;\n\tgetMapping(): EShapeDataMapping | undefined;\n\n\t// Private\n\treadonly private: EShapeDataScoped;\n\tgetPrivate(): EShapeDataScoped | undefined;\n\n\t// Methods\n\tadd(value: EShapeDataValue, index?: number): void;\n\tset(index: number, value: EShapeDataValue): EShapeDataValue | null;\n\tindexOf(target: EShapeDataValue): number;\n\tget(index: number): EShapeDataValue | null;\n\tremove(index: number): void;\n\tsize(): number;\n\tswap(indexA: number, indexB: number): void;\n\n\tcopy(target: EShapeData): this;\n\tserialize(manager: EShapeResourceManagerSerialization): number;\n\tdeserialize(target: number, manager: EShapeResourceManagerDeserialization): void;\n}\n"]}