@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
@@ -62,6 +62,7 @@ export declare abstract class DDiagramBase<CANVAS extends DDiagramCanvasBase = D
62
62
  get controller(): CONTROLLER | null;
63
63
  set(serialized: null): Promise<null>;
64
64
  set(serialized: DDiagramSerialized): Promise<CANVAS>;
65
+ set(serialized: DDiagramSerialized | null): Promise<CANVAS | null>;
65
66
  protected onSet(serialized: DDiagramSerialized, canvas: CANVAS): void;
66
67
  protected abstract isEditMode(): boolean;
67
68
  protected newLayer(serialized: DDiagramSerialized, canvas: CANVAS, isEditMode: boolean, pieces?: string[], pieceData?: Map<string, EShapeEmbeddedDatum | null>): Promise<CANVAS>;
@@ -1,6 +1,7 @@
1
1
  import { DDiagramCanvasData } from "./d-diagram-canvas-data";
2
2
  import { EShapeDataScoped } from "./shape/e-shape-data-scoped";
3
3
  import { EShapeDataValue } from "./shape/e-shape-data-value";
4
+ import { EShapeDataValueState } from "./shape/e-shape-data-value-state";
4
5
  export declare class DDiagramCanvasDataImpl implements DDiagramCanvasData {
5
6
  protected _data?: Map<string, EShapeDataValue[]>;
6
7
  protected _private?: EShapeDataScoped;
@@ -15,13 +16,15 @@ export declare class DDiagramCanvasDataImpl implements DDiagramCanvasData {
15
16
  get ids(): string[];
16
17
  each(iteratee: (id: string) => boolean | void): string | null;
17
18
  add(id: string, value: EShapeDataValue): void;
18
- set(id: string, value: unknown, time?: number, from?: number | null, to?: number | null): boolean;
19
+ set(id: string, value: unknown, time?: number, state?: EShapeDataValueState, from?: number | null, to?: number | null): boolean;
19
20
  clear(id: string): boolean;
20
21
  toDirty(id: string): boolean;
21
- setAll(id: string, values: unknown[], times?: number[], from?: number | null, to?: number | null): boolean;
22
- setValue(id: string, value: unknown, time?: number): boolean;
23
- setValues(id: string, values: unknown[], times?: number[]): boolean;
22
+ setAll(id: string, values: unknown[], times?: number[], states?: EShapeDataValueState[], from?: number | null, to?: number | null): boolean;
23
+ setValue(id: string, value: unknown): boolean;
24
+ setValues(id: string, values: unknown[]): boolean;
24
25
  setTime(id: string, time: number): boolean;
25
26
  setTimes(id: string, times: number[]): boolean;
27
+ setState(id: string, state: EShapeDataValueState): boolean;
28
+ setStates(id: string, states: EShapeDataValueState[]): boolean;
26
29
  setRange(id: string, from?: number | null, to?: number | null): boolean;
27
30
  }
@@ -1,5 +1,6 @@
1
1
  import { EShapeDataScoped } from "./shape/e-shape-data-scoped";
2
2
  import { EShapeDataValue } from "./shape/e-shape-data-value";
3
+ import { EShapeDataValueState } from "./shape/e-shape-data-value-state";
3
4
  export interface DDiagramCanvasData {
4
5
  readonly private: EShapeDataScoped;
5
6
  readonly protected: EShapeDataScoped;
@@ -7,13 +8,15 @@ export interface DDiagramCanvasData {
7
8
  readonly ids: string[];
8
9
  each(iteratee: (id: string) => boolean | void): string | null;
9
10
  add(id: string, value: EShapeDataValue): void;
10
- set(id: string, value: unknown, time?: number, from?: number | null, to?: number | null): boolean;
11
+ set(id: string, value: unknown, time?: number, state?: EShapeDataValueState, from?: number | null, to?: number | null): boolean;
11
12
  clear(id: string): boolean;
12
13
  toDirty(id: string): boolean;
13
- setAll(id: string, values: unknown[], times?: number[], from?: number | null, to?: number | null): boolean;
14
- setValue(id: string, value: unknown, time?: number): boolean;
15
- setValues(id: string, values: unknown[], times?: number[]): boolean;
14
+ setAll(id: string, values: unknown[], times?: number[], states?: EShapeDataValueState[], from?: number | null, to?: number | null): boolean;
15
+ setValue(id: string, value: unknown): boolean;
16
+ setValues(id: string, values: unknown[]): boolean;
16
17
  setTime(id: string, time: number): boolean;
17
18
  setTimes(id: string, times: number[]): boolean;
19
+ setState(id: string, state: EShapeDataValueState): boolean;
20
+ setStates(id: string, states: EShapeDataValueState[]): boolean;
18
21
  setRange(id: string, from?: number | null, to?: number | null): boolean;
19
22
  }
@@ -1,10 +1,11 @@
1
1
  import { DDiagramDataDiagram } from "./d-diagram-data";
2
2
  import { DDiagramDataScoped } from "./d-diagram-data-scoped";
3
+ import { EShapeDataValueState } from "./shape/e-shape-data-value-state";
3
4
  export declare class DDiagramDataExtendedImpl implements DDiagramDataScoped {
4
5
  protected _diagram: DDiagramDataDiagram;
5
6
  constructor(diagram: DDiagramDataDiagram);
6
7
  get ids(): string[];
7
- set(id: string, value: unknown, time?: number, from?: number | null, to?: number | null): boolean;
8
+ set(id: string, value: unknown, time?: number, state?: EShapeDataValueState, from?: number | null, to?: number | null): boolean;
8
9
  toDirty(id: string): boolean;
9
10
  each(iteratee: (id: string) => boolean | void): string | null;
10
11
  }
@@ -2,6 +2,7 @@ import { DDiagramData, DDiagramDataDiagram, DDiagramDataOptions } from "./d-diag
2
2
  import { DDiagramDataMapper } from "./d-diagram-data-mapper";
3
3
  import { DDiagramDataScoped } from "./d-diagram-data-scoped";
4
4
  import { DDiagramDataRemote } from "./d-diagram-data-remote";
5
+ import { EShapeDataValueState } from "./shape/e-shape-data-value-state";
5
6
  /**
6
7
  * A data helper class for diagrams.
7
8
  */
@@ -22,13 +23,15 @@ export declare class DDiagramDataImpl implements DDiagramData {
22
23
  get extended(): DDiagramDataScoped;
23
24
  get ids(): string[];
24
25
  each(iteratee: (id: string) => boolean | void): string | null;
25
- set(id: string, value: unknown, time?: number, from?: number | null, to?: number | null): boolean;
26
+ set(id: string, value: unknown, time?: number, state?: EShapeDataValueState, from?: number | null, to?: number | null): boolean;
26
27
  clear(id: string): boolean;
27
28
  toDirty(id: string): boolean;
28
- setAll(id: string, values: unknown[], times?: number[], from?: number | null, to?: number | null): boolean;
29
- setValue(id: string, value: unknown, time?: number): boolean;
30
- setValues(id: string, values: unknown[], times?: number[]): boolean;
29
+ setAll(id: string, values: unknown[], times?: number[], states?: EShapeDataValueState[], from?: number | null, to?: number | null): boolean;
30
+ setValue(id: string, value: unknown): boolean;
31
+ setValues(id: string, values: unknown[]): boolean;
31
32
  setTime(id: string, time: number): boolean;
32
33
  setTimes(id: string, times: number[]): boolean;
34
+ setState(id: string, state: EShapeDataValueState): boolean;
35
+ setStates(id: string, states: EShapeDataValueState[]): boolean;
33
36
  setRange(id: string, from?: number | null, to?: number | null): boolean;
34
37
  }
@@ -1,10 +1,11 @@
1
1
  import { DDiagramDataDiagram } from "./d-diagram-data";
2
2
  import { DDiagramDataScoped } from "./d-diagram-data-scoped";
3
+ import { EShapeDataValueState } from "./shape/e-shape-data-value-state";
3
4
  export declare class DDiagramDataPrivateImpl implements DDiagramDataScoped {
4
5
  protected _diagram: DDiagramDataDiagram;
5
6
  constructor(diagram: DDiagramDataDiagram);
6
7
  get ids(): string[];
7
- set(id: string, value: unknown, time?: number, from?: number | null, to?: number | null): boolean;
8
+ set(id: string, value: unknown, time?: number, state?: EShapeDataValueState, from?: number | null, to?: number | null): boolean;
8
9
  toDirty(id: string): boolean;
9
10
  each(iteratee: (id: string) => boolean | void): string | null;
10
11
  }
@@ -1,10 +1,11 @@
1
1
  import { DDiagramDataDiagram } from "./d-diagram-data";
2
2
  import { DDiagramDataScoped } from "./d-diagram-data-scoped";
3
+ import { EShapeDataValueState } from "./shape/e-shape-data-value-state";
3
4
  export declare class DDiagramDataProtectedImpl implements DDiagramDataScoped {
4
5
  protected _diagram: DDiagramDataDiagram;
5
6
  constructor(diagram: DDiagramDataDiagram);
6
7
  get ids(): string[];
7
- set(id: string, value: unknown, time?: number, from?: number | null, to?: number | null): boolean;
8
+ set(id: string, value: unknown, time?: number, state?: EShapeDataValueState, from?: number | null, to?: number | null): boolean;
8
9
  toDirty(id: string): boolean;
9
10
  each(iteratee: (id: string) => boolean | void): string | null;
10
11
  }
@@ -2,5 +2,5 @@ import { DDiagramDataRemote, DDiagramDataRemoteController, DDiagramDataRemoteOpt
2
2
  export declare class DDiagramDataRemoteImpl implements DDiagramDataRemote {
3
3
  protected _controller?: DDiagramDataRemoteController;
4
4
  constructor(options?: DDiagramDataRemoteOptions);
5
- set(id: string, value: unknown, time: number): boolean;
5
+ set(id: string, value: unknown): boolean;
6
6
  }
@@ -5,5 +5,5 @@ export interface DDiagramDataRemoteOptions {
5
5
  controller?: DDiagramDataRemoteController;
6
6
  }
7
7
  export interface DDiagramDataRemote {
8
- set(id: string, value: unknown, time: number): boolean;
8
+ set(id: string, value: unknown): boolean;
9
9
  }
@@ -1,6 +1,7 @@
1
+ import { EShapeDataValueState } from "./shape/e-shape-data-value-state";
1
2
  export interface DDiagramDataScoped {
2
3
  readonly ids: string[];
3
- set(id: string, value: unknown, time?: number, from?: number | null, to?: number | null): boolean;
4
+ set(id: string, value: unknown, time?: number, state?: EShapeDataValueState, from?: number | null, to?: number | null): boolean;
4
5
  toDirty(id: string): boolean;
5
6
  each(iteratee: (id: string) => boolean | void): string | null;
6
7
  }
@@ -3,6 +3,7 @@ import { DDiagramDataMapper } from "./d-diagram-data-mapper";
3
3
  import { DDiagramDataScoped } from "./d-diagram-data-scoped";
4
4
  import { DDiagramDataRemote } from "./d-diagram-data-remote";
5
5
  import { DDiagramDataRemoteOptions } from "./d-diagram-data-remote";
6
+ import { EShapeDataValueState } from "./shape/e-shape-data-value-state";
6
7
  export interface DDiagramDataCanvas {
7
8
  data: DDiagramCanvasData;
8
9
  }
@@ -30,14 +31,16 @@ export interface DDiagramData {
30
31
  readonly ids: string[];
31
32
  mapper: DDiagramDataMapper | null;
32
33
  each(iteratee: (id: string) => boolean | void): string | null;
33
- set(id: string, value: unknown, time?: number, from?: number | null, to?: number | null): boolean;
34
+ set(id: string, value: unknown, time?: number, state?: EShapeDataValueState, from?: number | null, to?: number | null): boolean;
34
35
  clear(id: string): boolean;
35
36
  toDirty(id: string): boolean;
36
- setAll(id: string, values: unknown[], times?: number[], from?: number | null, to?: number | null): boolean;
37
+ setAll(id: string, values: unknown[], times?: number[], states?: EShapeDataValueState[], from?: number | null, to?: number | null): boolean;
37
38
  setValue(id: string, value: unknown, time?: number): boolean;
38
39
  setValues(id: string, values: unknown[], times?: number[]): boolean;
39
40
  setTime(id: string, time: number): boolean;
40
41
  setTimes(id: string, times: number[]): boolean;
42
+ setState(id: string, state: unknown): boolean;
43
+ setStates(id: string, states: unknown[]): boolean;
41
44
  setRange(id: string, from?: number | null, to?: number | null): boolean;
42
45
  update(): void;
43
46
  }
@@ -60,6 +60,10 @@ export interface DDiagramSerializedDataValue {
60
60
  * A scope.
61
61
  */
62
62
  [7]: EShapeDataValueScope | undefined;
63
+ /**
64
+ * A resource index number of an alias.
65
+ */
66
+ [8]: number | undefined;
63
67
  }
64
68
  /**
65
69
  * A serialized data mapping.
@@ -18,7 +18,7 @@ export declare class DTableBodyCellColor<ROW = unknown, THEME extends DThemeTabl
18
18
  get rowIndex(): number;
19
19
  get columnIndex(): number;
20
20
  get column(): DTableColumn<ROW, DColorAndAlpha>;
21
- set(newValue: unknown, row: ROW, supplimental: unknown, rowIndex: number, columnIndex: number, forcibly?: boolean): void;
21
+ set(value: unknown, row: ROW, supplimental: unknown, rowIndex: number, columnIndex: number, forcibly?: boolean): void;
22
22
  unset(): void;
23
23
  protected getType(): string;
24
24
  }
@@ -0,0 +1,18 @@
1
+ import { DTableBodyCellButtonOptions } from "./d-table-body-cell-button";
2
+ import { DTableBodyCellCheckOptions } from "./d-table-body-cell-check";
3
+ import { DTableBodyCellColorOptions } from "./d-table-body-cell-color";
4
+ import { DTableBodyCellDateOptions } from "./d-table-body-cell-date";
5
+ import { DTableBodyCellDatetimeOptions } from "./d-table-body-cell-datetime";
6
+ import { DTableBodyCellIndexOptions } from "./d-table-body-cell-index";
7
+ import { DTableBodyCellInputIntegerOptions } from "./d-table-body-cell-input-integer";
8
+ import { DTableBodyCellInputRealOptions } from "./d-table-body-cell-input-real";
9
+ import { DTableBodyCellInputTextOptions } from "./d-table-body-cell-input-text";
10
+ import { DTableBodyCellLinkOptions } from "./d-table-body-cell-link";
11
+ import { DTableBodyCellSelectDialogOptions } from "./d-table-body-cell-select-dialog";
12
+ import { DTableBodyCellSelectMenuOptions } from "./d-table-body-cell-select-menu";
13
+ import { DTableBodyCellSelectMultipleOptions } from "./d-table-body-cell-select-multiple";
14
+ import { DTableBodyCellSelectPromiseOptions } from "./d-table-body-cell-select-promise";
15
+ import { DTableBodyCellTextOptions } from "./d-table-body-cell-text";
16
+ import { DTableBodyCellTimeOptions } from "./d-table-body-cell-time";
17
+ import { DTableBodyCellTreeOptions } from "./d-table-body-cell-tree";
18
+ export declare type DTableBodyCellOptions<ROW_VALUE> = DTableBodyCellTextOptions<ROW_VALUE> | DTableBodyCellInputTextOptions<ROW_VALUE> | DTableBodyCellInputIntegerOptions<ROW_VALUE> | DTableBodyCellInputRealOptions<ROW_VALUE> | DTableBodyCellIndexOptions<ROW_VALUE> | DTableBodyCellColorOptions<ROW_VALUE> | DTableBodyCellCheckOptions<ROW_VALUE> | DTableBodyCellSelectDialogOptions<ROW_VALUE> | DTableBodyCellSelectPromiseOptions<ROW_VALUE> | DTableBodyCellSelectMenuOptions<ROW_VALUE> | DTableBodyCellDateOptions<ROW_VALUE> | DTableBodyCellDatetimeOptions<ROW_VALUE> | DTableBodyCellTimeOptions<ROW_VALUE> | DTableBodyCellButtonOptions<ROW_VALUE> | DTableBodyCellLinkOptions<ROW_VALUE> | DTableBodyCellSelectMultipleOptions<ROW_VALUE> | DTableBodyCellTreeOptions<ROW_VALUE>;
@@ -27,7 +27,7 @@ export declare class DTableBodyCellSelectDialog<ROW = unknown, VALUE = unknown,
27
27
  get column(): DTableColumn<ROW, VALUE | null>;
28
28
  get value(): VALUE | null;
29
29
  set value(value: VALUE | null);
30
- set(value: VALUE | null, row: ROW, supplimental: unknown, rowIndex: number, columnIndex: number, forcibly?: boolean): void;
30
+ set(value: unknown, row: ROW, supplimental: unknown, rowIndex: number, columnIndex: number, forcibly?: boolean): void;
31
31
  unset(): void;
32
32
  protected getType(): string;
33
33
  }
@@ -27,7 +27,7 @@ export declare class DTableBodyCellSelectPromise<ROW = unknown, VALUE = unknown,
27
27
  get column(): DTableColumn<ROW, VALUE | null>;
28
28
  get value(): VALUE | null;
29
29
  set value(value: VALUE | null);
30
- set(value: VALUE | null, row: ROW, supplimental: unknown, rowIndex: number, columnIndex: number, forcibly?: boolean): void;
30
+ set(value: unknown, row: ROW, supplimental: unknown, rowIndex: number, columnIndex: number, forcibly?: boolean): void;
31
31
  unset(): void;
32
32
  protected getType(): string;
33
33
  }
@@ -17,7 +17,7 @@ export declare class DTableBodyCellTime<ROW = unknown, THEME extends DThemeTable
17
17
  get rowIndex(): number;
18
18
  get columnIndex(): number;
19
19
  get column(): DTableColumn<ROW, Date>;
20
- set(value: Date, row: ROW, supplimental: unknown, rowIndex: number, columnIndex: number, forcibly?: boolean): void;
20
+ set(value: unknown, row: ROW, supplimental: unknown, rowIndex: number, columnIndex: number, forcibly?: boolean): void;
21
21
  unset(): void;
22
22
  protected getType(): string;
23
23
  }
@@ -1,19 +1,21 @@
1
1
  import { DBaseStateSet } from "./d-base-state-set";
2
- import { DTableEditable, DTableRenderable } from "./d-table-column";
2
+ import { DTableColumnEditable } from "./d-table-column-editing";
3
+ import { DTableColumnRenderable } from "./d-table-column-renderable";
4
+ import { DTableColumnState } from "./d-table-column-state";
3
5
  export interface DTableBodyCellsColumnEditing<ROW> {
4
- enable: boolean | DTableEditable<ROW>;
6
+ enable: boolean | DTableColumnEditable<ROW>;
5
7
  }
6
8
  export interface DTableBodyCellsColumn<ROW> {
7
9
  editing: DTableBodyCellsColumnEditing<ROW>;
8
- renderable: boolean | DTableRenderable<ROW>;
10
+ renderable: boolean | DTableColumnRenderable<ROW>;
11
+ state: DTableColumnState<ROW>;
9
12
  }
10
13
  export interface DTableBodyCellsTarget {
11
14
  renderable: boolean;
12
15
  state: DBaseStateSet;
13
16
  }
14
17
  export declare class DTableBodyCells {
15
- static setReadOnly<ROW>(target: DTableBodyCellsTarget, row: ROW, columnIndex: number, column: DTableBodyCellsColumn<ROW>): void;
16
- static setRenderable<ROW>(target: DTableBodyCellsTarget, row: ROW, columnIndex: number, column: DTableBodyCellsColumn<ROW>): void;
18
+ static set<ROW>(target: DTableBodyCellsTarget, row: ROW, columnIndex: number, column: DTableBodyCellsColumn<ROW>, readOnly?: boolean): void;
17
19
  static toReadOnly<ROW>(row: ROW, columnIndex: number, column: DTableBodyCellsColumn<ROW>): boolean;
18
20
  static toRenderable<ROW>(row: ROW, columnIndex: number, column: DTableBodyCellsColumn<ROW>): boolean;
19
21
  }
@@ -1,6 +1,7 @@
1
1
  import { DBase } from "./d-base";
2
2
  import { DTableBodyCell, DTableBodyCellOnChange } from "./d-table-body-cell";
3
- import { DTableBodyCellOptionsUnion, DTableColumn } from "./d-table-column";
3
+ import { DTableBodyCellOptions } from "./d-table-body-cell-options";
4
+ import { DTableColumn } from "./d-table-column";
4
5
  import { DTableDataSelectionType } from "./d-table-data-selection";
5
6
  import { DTableRow, DTableRowOptions, DThemeTableRow } from "./d-table-row";
6
7
  export interface DTableBodyRowSelectionOptions {
@@ -8,7 +9,7 @@ export interface DTableBodyRowSelectionOptions {
8
9
  }
9
10
  export interface DTableBodyRowOptions<ROW, THEME extends DThemeTableBodyRow = DThemeTableBodyRow> extends DTableRowOptions<ROW, DTableColumn<ROW, unknown>, THEME> {
10
11
  height?: number;
11
- cell?: DTableBodyCellOptionsUnion<ROW>;
12
+ cell?: DTableBodyCellOptions<ROW>;
12
13
  selection?: DTableBodyRowSelectionOptions;
13
14
  }
14
15
  export interface DThemeTableBodyRow extends DThemeTableRow {
@@ -18,13 +19,14 @@ export declare class DTableBodyRow<ROW, THEME extends DThemeTableBodyRow = DThem
18
19
  protected _value?: ROW;
19
20
  protected _index: number;
20
21
  protected _onCellChangeBound: DTableBodyCellOnChange<ROW, unknown>;
21
- constructor(onChange: DTableBodyRowOnChange<ROW, unknown>, isEven: boolean, options: OPTIONS);
22
+ protected _columnIndexToCellOptions: Map<number, DTableBodyCellOptions<ROW>>;
23
+ constructor(onChange: DTableBodyRowOnChange<ROW, unknown>, isEven: boolean, columnIndexToCellOptions: Map<number, DTableBodyCellOptions<ROW>>, options: OPTIONS);
22
24
  protected newCell(columnIndex: number, column: DTableColumn<ROW, unknown>, columns: Array<DTableColumn<ROW, unknown>>, options: OPTIONS): DBase;
23
25
  protected newCellEditable(columnIndex: number, column: DTableColumn<ROW, any>, onChange: DTableBodyCellOnChange<ROW, unknown>, options: any): DBase;
24
26
  protected newCellUnediable(columnIndex: number, column: DTableColumn<ROW, any>, onChange: DTableBodyCellOnChange<ROW, unknown>, options: any): DBase;
25
27
  protected newCellSelect(columnIndex: number, column: DTableColumn<ROW, any>, onChange: DTableBodyCellOnChange<ROW, unknown>, options: any): DBase;
26
28
  protected newCellAction(columnIndex: number, column: DTableColumn<ROW, any>, onChange: DTableBodyCellOnChange<ROW, unknown>, options: any): DBase;
27
- protected toCellOptions(columnIndex: number, column: DTableColumn<ROW, unknown>, options: OPTIONS): DTableBodyCellOptionsUnion<ROW>;
29
+ protected toCellOptions(columnIndex: number, column: DTableColumn<ROW, unknown>, options: OPTIONS): DTableBodyCellOptions<ROW>;
28
30
  protected getType(): string;
29
31
  /**
30
32
  * Returns a row data if exists.
@@ -7,6 +7,7 @@ import { DTableData, DTableDataOptions } from "./d-table-data";
7
7
  import { DTableDataList, DTableDataListOptions } from "./d-table-data-list";
8
8
  import { DTableDataSelection } from "./d-table-data-selection";
9
9
  import { DTableBodyCell } from "./d-table-body-cell";
10
+ import { DTableBodyCellOptions } from "./d-table-body-cell-options";
10
11
  export interface DTableBodyOptions<ROW, DATA extends DTableData<ROW> = DTableDataList<ROW>, THEME extends DThemeTableBody = DThemeTableBody> extends DBaseOptions<THEME> {
11
12
  columns?: Array<DTableColumn<ROW, unknown>>;
12
13
  row?: DTableBodyRowOptions<ROW>;
@@ -29,6 +30,7 @@ export declare class DTableBody<ROW, DATA extends DTableData<ROW> = DTableDataLi
29
30
  protected _isUpdateRowsCalledForcibly: boolean;
30
31
  protected _workRows: Array<DTableBodyRow<ROW>>;
31
32
  protected _onRowChangeBound: DTableBodyRowOnChange<ROW, unknown>;
33
+ protected _columnIndexToCellOptions: Map<number, DTableBodyCellOptions<ROW>>;
32
34
  protected _data: DATA;
33
35
  constructor(options: OPTIONS);
34
36
  protected toData(options?: DATA | DTableDataListOptions<ROW>): DATA;
@@ -0,0 +1,16 @@
1
+ export declare type DTableColumnEditingFormatter<CELL_VALUE> = (cell: CELL_VALUE) => string;
2
+ export declare type DTableColumnEditingUnformatter<CELL_VALUE> = (formatted: string) => CELL_VALUE;
3
+ export declare type DTableColumnEditingValidator<CELL_VALUE> = (cell: CELL_VALUE) => string | null;
4
+ export declare type DTableColumnEditable<ROW_VALUE> = (row: ROW_VALUE, columnIndex: number) => boolean;
5
+ export interface DTableColumnEditingOptions<ROW_VALUE, CELL_VALUE> {
6
+ enable?: boolean | DTableColumnEditable<ROW_VALUE> | "auto" | "AUTO";
7
+ formatter?: DTableColumnEditingFormatter<CELL_VALUE>;
8
+ unformatter?: DTableColumnEditingUnformatter<CELL_VALUE>;
9
+ validator?: DTableColumnEditingValidator<CELL_VALUE>;
10
+ }
11
+ export interface DTableColumnEditing<ROW_VALUE, CELL_VALUE> {
12
+ enable: boolean | DTableColumnEditable<ROW_VALUE>;
13
+ formatter?: DTableColumnEditingFormatter<CELL_VALUE>;
14
+ unformatter?: DTableColumnEditingUnformatter<CELL_VALUE>;
15
+ validator?: DTableColumnEditingValidator<CELL_VALUE>;
16
+ }
@@ -0,0 +1 @@
1
+ export declare type DTableColumnFormatter<CELL_VALUE, EMITTER = any> = (cell: CELL_VALUE, emitter: EMITTER) => string;
@@ -0,0 +1 @@
1
+ export declare type DTableColumnGetter<ROW_VALUE, CELL_VALUE> = (row: ROW_VALUE, columnIndex: number) => CELL_VALUE;
@@ -0,0 +1 @@
1
+ export declare type DTableColumnRenderable<ROW_VALUE> = (row: ROW_VALUE, columnIndex: number) => boolean;
@@ -0,0 +1,25 @@
1
+ import { DDialogOpener } from "./d-dialog";
2
+ import { DDialogSelectOptions } from "./d-dialog-select";
3
+ import { DMenu, DMenuOptions } from "./d-menu";
4
+ export declare type DTableColumnSelectingGetter<CELL_VALUE, DIALOG> = (dialog: DIALOG) => CELL_VALUE;
5
+ export declare type DTableColumnSelectingSetter<CELL_VALUE, DIALOG> = (dialog: DIALOG, cell: CELL_VALUE) => void;
6
+ export interface DTableColumnSelectingDialog<DIALOG_VALUE> {
7
+ readonly value: DIALOG_VALUE;
8
+ open(owner?: DDialogOpener): Promise<DIALOG_VALUE>;
9
+ }
10
+ export interface DTableColumnSelectingOptions<CELL_VALUE, DIALOG_VALUE, DIALOG extends DTableColumnSelectingDialog<DIALOG_VALUE>> {
11
+ getter?: DTableColumnSelectingGetter<CELL_VALUE, DIALOG>;
12
+ setter?: DTableColumnSelectingSetter<CELL_VALUE, DIALOG>;
13
+ menu?: DMenuOptions<CELL_VALUE> | DMenu<CELL_VALUE>;
14
+ multiple?: DMenuOptions<CELL_VALUE> | DMenu<CELL_VALUE>;
15
+ dialog?: DDialogSelectOptions<DIALOG_VALUE> | DIALOG;
16
+ promise?: () => Promise<CELL_VALUE>;
17
+ }
18
+ export interface DTableColumnSelecting<CELL_VALUE, DIALOG_VALUE, DIALOG extends DTableColumnSelectingDialog<DIALOG_VALUE>> {
19
+ getter: DTableColumnSelectingGetter<CELL_VALUE, DIALOG>;
20
+ setter: DTableColumnSelectingSetter<CELL_VALUE, DIALOG>;
21
+ menu?: DMenu<CELL_VALUE>;
22
+ multiple?: DMenu<CELL_VALUE>;
23
+ dialog?: DIALOG;
24
+ promise?: () => Promise<CELL_VALUE>;
25
+ }
@@ -0,0 +1 @@
1
+ export declare type DTableColumnSetter<ROW_VALUE, CELL_VALUE> = (row: ROW_VALUE, columnIndex: number, cell: CELL_VALUE) => void;
@@ -0,0 +1,9 @@
1
+ import { DTableDataComparator } from "./d-table-data-sorter";
2
+ export interface DTableColumnSortingOptions<ROW_VALUE> {
3
+ enable?: boolean;
4
+ comparator?: DTableDataComparator<ROW_VALUE>;
5
+ }
6
+ export interface DTableColumnSorting<ROW_VALUE> {
7
+ enable: boolean;
8
+ comparator?: DTableDataComparator<ROW_VALUE>;
9
+ }
@@ -0,0 +1,11 @@
1
+ import { DBaseStateSet } from "./d-base-state-set";
2
+ /**
3
+ * {@link DTable} column state modifier.
4
+ * This function is called on every cells of a column when the cell data is changed.
5
+ * The state given at the third parameter is a state of a cell.
6
+ */
7
+ export declare type DTableColumnStateModifier<ROW_VALUE> = (row: ROW_VALUE, columnIndex: number, state: DBaseStateSet) => void;
8
+ export interface DTableColumnState<ROW_VALUE> {
9
+ initial?: string | string[];
10
+ modifier?: DTableColumnStateModifier<ROW_VALUE>;
11
+ }
@@ -0,0 +1,18 @@
1
+ export declare const DTableColumnType: {
2
+ readonly INDEX: 0;
3
+ readonly TEXT: 1;
4
+ readonly INTEGER: 2;
5
+ readonly REAL: 3;
6
+ readonly CHECK: 4;
7
+ readonly CHECK_SINGLE: 5;
8
+ readonly COLOR: 6;
9
+ readonly BUTTON: 7;
10
+ readonly SELECT: 8;
11
+ readonly DATE: 9;
12
+ readonly DATETIME: 10;
13
+ readonly TIME: 11;
14
+ readonly ACTION: 12;
15
+ readonly LINK: 13;
16
+ readonly TREE: 14;
17
+ };
18
+ export declare type DTableColumnType = typeof DTableColumnType[keyof typeof DTableColumnType];
@@ -1,106 +1,37 @@
1
1
  import { DAlignHorizontal } from "./d-align-horizontal";
2
- import { DDialogOpener } from "./d-dialog";
3
- import { DDialogSelectOptions } from "./d-dialog-select";
4
- import { DMenu, DMenuOptions } from "./d-menu";
5
- import { DTableBodyCellButtonOptions } from "./d-table-body-cell-button";
6
- import { DTableBodyCellCheckOptions } from "./d-table-body-cell-check";
7
- import { DTableBodyCellColorOptions } from "./d-table-body-cell-color";
8
- import { DTableBodyCellDateOptions } from "./d-table-body-cell-date";
9
- import { DTableBodyCellDatetimeOptions } from "./d-table-body-cell-datetime";
10
- import { DTableBodyCellIndexOptions } from "./d-table-body-cell-index";
11
- import { DTableBodyCellInputIntegerOptions } from "./d-table-body-cell-input-integer";
12
- import { DTableBodyCellInputRealOptions } from "./d-table-body-cell-input-real";
13
- import { DTableBodyCellInputTextOptions } from "./d-table-body-cell-input-text";
14
- import { DTableBodyCellLinkLinkOptions, DTableBodyCellLinkOptions } from "./d-table-body-cell-link";
15
- import { DTableBodyCellSelectDialogOptions } from "./d-table-body-cell-select-dialog";
16
- import { DTableBodyCellSelectMenuOptions } from "./d-table-body-cell-select-menu";
17
- import { DTableBodyCellSelectMultipleOptions } from "./d-table-body-cell-select-multiple";
18
- import { DTableBodyCellSelectPromiseOptions } from "./d-table-body-cell-select-promise";
19
- import { DTableBodyCellTextOptions } from "./d-table-body-cell-text";
20
- import { DTableBodyCellTimeOptions } from "./d-table-body-cell-time";
21
- import { DTableBodyCellTreeOptions } from "./d-table-body-cell-tree";
22
- import { DTableDataComparator } from "./d-table-data-sorter";
2
+ import { DTableBodyCellLinkLinkOptions } from "./d-table-body-cell-link";
3
+ import { DTableBodyCellOptions } from "./d-table-body-cell-options";
4
+ import { DTableColumnEditing, DTableColumnEditingOptions, DTableColumnEditable } from "./d-table-column-editing";
5
+ import { DTableColumnFormatter } from "./d-table-column-formatter";
6
+ import { DTableColumnGetter } from "./d-table-column-getter";
7
+ import { DTableColumnRenderable } from "./d-table-column-renderable";
8
+ import { DTableColumnSelecting, DTableColumnSelectingDialog, DTableColumnSelectingOptions } from "./d-table-column-selecting";
9
+ import { DTableColumnSetter } from "./d-table-column-setter";
10
+ import { DTableColumnSorting, DTableColumnSortingOptions } from "./d-table-column-sorting";
11
+ import { DTableColumnState, DTableColumnStateModifier } from "./d-table-column-state";
12
+ import { DTableColumnType } from "./d-table-column-type";
23
13
  import { DTableHeaderCellOptions } from "./d-table-header-cell";
24
- export declare const DTableColumnType: {
25
- readonly INDEX: 0;
26
- readonly TEXT: 1;
27
- readonly INTEGER: 2;
28
- readonly REAL: 3;
29
- readonly CHECK: 4;
30
- readonly CHECK_SINGLE: 5;
31
- readonly COLOR: 6;
32
- readonly BUTTON: 7;
33
- readonly SELECT: 8;
34
- readonly DATE: 9;
35
- readonly DATETIME: 10;
36
- readonly TIME: 11;
37
- readonly ACTION: 12;
38
- readonly LINK: 13;
39
- readonly TREE: 14;
40
- };
41
- export declare type DTableColumnType = typeof DTableColumnType[keyof typeof DTableColumnType];
42
- export declare type DTableGetter<ROW_VALUE, CELL_VALUE> = (row: ROW_VALUE, columnIndex: number) => CELL_VALUE;
43
- export declare type DTableSetter<ROW_VALUE, CELL_VALUE> = (row: ROW_VALUE, columnIndex: number, cell: CELL_VALUE) => void;
44
- export declare type DTableFormatter<CELL_VALUE> = (cell: CELL_VALUE) => string;
45
- export declare type DTableEditingFormatter<CELL_VALUE> = (cell: CELL_VALUE) => string;
46
- export declare type DTableEditingUnformatter<CELL_VALUE> = (formatted: string) => CELL_VALUE;
47
- export declare type DTableEditingValidator<CELL_VALUE> = (cell: CELL_VALUE) => string | null;
48
- export declare type DTableSelectingGetter<CELL_VALUE, DIALOG> = (dialog: DIALOG) => CELL_VALUE;
49
- export declare type DTableSelectingSetter<CELL_VALUE, DIALOG> = (dialog: DIALOG, cell: CELL_VALUE) => void;
50
- export declare type DTableEditable<ROW_VALUE> = (row: ROW_VALUE, columnIndex: number) => boolean;
51
- export declare type DTableRenderable<ROW_VALUE> = (row: ROW_VALUE, columnIndex: number) => boolean;
52
- export declare type DTableBodyCellOptionsUnion<ROW_VALUE> = DTableBodyCellTextOptions<ROW_VALUE> | DTableBodyCellInputTextOptions<ROW_VALUE> | DTableBodyCellInputIntegerOptions<ROW_VALUE> | DTableBodyCellInputRealOptions<ROW_VALUE> | DTableBodyCellIndexOptions<ROW_VALUE> | DTableBodyCellColorOptions<ROW_VALUE> | DTableBodyCellCheckOptions<ROW_VALUE> | DTableBodyCellSelectDialogOptions<ROW_VALUE> | DTableBodyCellSelectPromiseOptions<ROW_VALUE> | DTableBodyCellSelectMenuOptions<ROW_VALUE> | DTableBodyCellDateOptions<ROW_VALUE> | DTableBodyCellDatetimeOptions<ROW_VALUE> | DTableBodyCellTimeOptions<ROW_VALUE> | DTableBodyCellButtonOptions<ROW_VALUE> | DTableBodyCellLinkOptions<ROW_VALUE> | DTableBodyCellSelectMultipleOptions<ROW_VALUE> | DTableBodyCellTreeOptions<ROW_VALUE>;
53
- export interface DTableColumnEditingOptions<ROW_VALUE, CELL_VALUE> {
54
- enable?: boolean | DTableEditable<ROW_VALUE> | "auto" | "AUTO";
55
- formatter?: DTableEditingFormatter<CELL_VALUE>;
56
- unformatter?: DTableEditingUnformatter<CELL_VALUE>;
57
- validator?: DTableEditingValidator<CELL_VALUE>;
58
- }
59
- export interface DTableColumnEditing<ROW_VALUE, CELL_VALUE> {
60
- enable: boolean | DTableEditable<ROW_VALUE>;
61
- formatter?: DTableEditingFormatter<CELL_VALUE>;
62
- unformatter?: DTableEditingUnformatter<CELL_VALUE>;
63
- validator?: DTableEditingValidator<CELL_VALUE>;
64
- }
65
- export interface DTableColumnSortingOptions<ROW_VALUE> {
66
- enable?: boolean;
67
- comparator?: DTableDataComparator<ROW_VALUE>;
68
- }
69
- export interface DTableColumnSorting<ROW_VALUE> {
70
- enable: boolean;
71
- comparator?: DTableDataComparator<ROW_VALUE>;
72
- }
73
- export interface DTableColumnSelectingDialog<DIALOG_VALUE> {
74
- readonly value: DIALOG_VALUE;
75
- open(owner?: DDialogOpener): Promise<DIALOG_VALUE>;
76
- }
77
- export interface DTableColumnSelectingOptions<CELL_VALUE, DIALOG_VALUE, DIALOG extends DTableColumnSelectingDialog<DIALOG_VALUE>> {
78
- getter?: DTableSelectingGetter<CELL_VALUE, DIALOG>;
79
- setter?: DTableSelectingSetter<CELL_VALUE, DIALOG>;
80
- menu?: DMenuOptions<CELL_VALUE> | DMenu<CELL_VALUE>;
81
- multiple?: DMenuOptions<CELL_VALUE> | DMenu<CELL_VALUE>;
82
- dialog?: DDialogSelectOptions<DIALOG_VALUE> | DIALOG;
83
- promise?: () => Promise<CELL_VALUE>;
84
- }
85
- export interface DTableColumnSelecting<CELL_VALUE, DIALOG_VALUE, DIALOG extends DTableColumnSelectingDialog<DIALOG_VALUE>> {
86
- getter: DTableSelectingGetter<CELL_VALUE, DIALOG>;
87
- setter: DTableSelectingSetter<CELL_VALUE, DIALOG>;
88
- menu?: DMenu<CELL_VALUE>;
89
- multiple?: DMenu<CELL_VALUE>;
90
- dialog?: DIALOG;
91
- promise?: () => Promise<CELL_VALUE>;
92
- }
93
14
  export interface DTableColumnOptions<ROW_VALUE, CELL_VALUE = any, DIALOG_VALUE = any, DIALOG extends DTableColumnSelectingDialog<DIALOG_VALUE> = any> {
94
15
  weight?: number;
95
16
  width?: number;
96
17
  type?: keyof typeof DTableColumnType | DTableColumnType;
97
18
  label?: string;
98
- getter?: DTableGetter<ROW_VALUE, CELL_VALUE>;
99
- setter?: DTableSetter<ROW_VALUE, CELL_VALUE>;
19
+ getter?: DTableColumnGetter<ROW_VALUE, CELL_VALUE>;
20
+ setter?: DTableColumnSetter<ROW_VALUE, CELL_VALUE>;
100
21
  path?: string;
101
22
  default?: CELL_VALUE;
102
- formatter?: DTableFormatter<CELL_VALUE>;
23
+ /**
24
+ * A shortcut of body#text#formatter.
25
+ */
26
+ formatter?: DTableColumnFormatter<CELL_VALUE>;
27
+ /**
28
+ * A shortcut of body#text#align#horizontal.
29
+ */
103
30
  align?: keyof typeof DAlignHorizontal | DAlignHorizontal;
31
+ /**
32
+ * A state option.
33
+ */
34
+ state?: string | string[] | DTableColumnStateModifier<ROW_VALUE>;
104
35
  /**
105
36
  * If the renderable is
106
37
  *
@@ -109,7 +40,7 @@ export interface DTableColumnOptions<ROW_VALUE, CELL_VALUE = any, DIALOG_VALUE =
109
40
  * * a function, cells get rendered only when that function returns true.
110
41
  * * "AUTO", cells get rendered only when the cell data exit.
111
42
  */
112
- renderable?: boolean | DTableRenderable<ROW_VALUE> | "auto" | "AUTO";
43
+ renderable?: boolean | DTableColumnRenderable<ROW_VALUE> | "auto" | "AUTO";
113
44
  /**
114
45
  * If the editable is
115
46
  *
@@ -118,12 +49,12 @@ export interface DTableColumnOptions<ROW_VALUE, CELL_VALUE = any, DIALOG_VALUE =
118
49
  * * a function, cells are editable only when that function returns true.
119
50
  * * "AUTO", cells are editable only when the cell data exist.
120
51
  */
121
- editable?: boolean | DTableEditable<ROW_VALUE> | "auto" | "AUTO";
52
+ editable?: boolean | DTableColumnEditable<ROW_VALUE> | "auto" | "AUTO";
122
53
  editing?: DTableColumnEditingOptions<ROW_VALUE, CELL_VALUE>;
123
54
  sortable?: boolean;
124
55
  sorting?: DTableColumnSortingOptions<ROW_VALUE>;
125
56
  header?: DTableHeaderCellOptions<ROW_VALUE>;
126
- body?: DTableBodyCellOptionsUnion<ROW_VALUE>;
57
+ body?: DTableBodyCellOptions<ROW_VALUE>;
127
58
  selecting?: DTableColumnSelectingOptions<CELL_VALUE, DIALOG_VALUE, DIALOG>;
128
59
  category?: string | string[];
129
60
  frozen?: boolean;
@@ -134,15 +65,16 @@ export interface DTableColumn<ROW_VALUE, CELL_VALUE, DIALOG_VALUE = CELL_VALUE,
134
65
  width: number | undefined;
135
66
  type: DTableColumnType;
136
67
  label: string;
137
- getter: DTableGetter<ROW_VALUE, CELL_VALUE>;
138
- setter: DTableSetter<ROW_VALUE, CELL_VALUE>;
139
- formatter?: DTableFormatter<CELL_VALUE>;
68
+ getter: DTableColumnGetter<ROW_VALUE, CELL_VALUE>;
69
+ setter: DTableColumnSetter<ROW_VALUE, CELL_VALUE>;
70
+ formatter?: DTableColumnFormatter<CELL_VALUE>;
140
71
  align: DAlignHorizontal;
141
- renderable: boolean | DTableRenderable<ROW_VALUE>;
72
+ state: DTableColumnState<ROW_VALUE>;
73
+ renderable: boolean | DTableColumnRenderable<ROW_VALUE>;
142
74
  editing: DTableColumnEditing<ROW_VALUE, CELL_VALUE>;
143
75
  sorting: DTableColumnSorting<ROW_VALUE>;
144
76
  header?: DTableHeaderCellOptions<ROW_VALUE>;
145
- body?: DTableBodyCellOptionsUnion<ROW_VALUE>;
77
+ body?: DTableBodyCellOptions<ROW_VALUE>;
146
78
  selecting: DTableColumnSelecting<CELL_VALUE, DIALOG_VALUE, DIALOG>;
147
79
  category?: string | string[];
148
80
  frozen?: boolean;