@wcardinal/wcardinal-ui 0.398.0 → 0.400.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 (200) hide show
  1. package/dist/types/wcardinal/ui/d-base-state-set-impl.d.ts +5 -0
  2. package/dist/types/wcardinal/ui/d-base-state-set.d.ts +4 -0
  3. package/dist/types/wcardinal/ui/d-base-state.d.ts +1 -0
  4. package/dist/types/wcardinal/ui/d-base.d.ts +13 -1
  5. package/dist/types/wcardinal/ui/d-button-color.d.ts +0 -3
  6. package/dist/types/wcardinal/ui/d-image-base-theme-wrapper-other.d.ts +19 -0
  7. package/dist/types/wcardinal/ui/d-image-base-theme-wrapper-secondary.d.ts +3 -1
  8. package/dist/types/wcardinal/ui/d-image-base-theme-wrapper-tertiary.d.ts +3 -1
  9. package/dist/types/wcardinal/ui/d-image-base.d.ts +11 -26
  10. package/dist/types/wcardinal/ui/d-image-piece-align-impl.d.ts +23 -0
  11. package/dist/types/wcardinal/ui/d-image-piece-align.d.ts +14 -0
  12. package/dist/types/wcardinal/ui/d-image-piece-container-impl.d.ts +24 -0
  13. package/dist/types/wcardinal/ui/d-image-piece-container.d.ts +12 -0
  14. package/dist/types/wcardinal/ui/d-image-piece-impl.d.ts +60 -0
  15. package/dist/types/wcardinal/ui/d-image-piece-layouter-part-bottom.d.ts +3 -0
  16. package/dist/types/wcardinal/ui/d-image-piece-layouter-part-center.d.ts +2 -1
  17. package/dist/types/wcardinal/ui/d-image-piece-layouter-part-left.d.ts +3 -0
  18. package/dist/types/wcardinal/ui/d-image-piece-layouter-part-middle.d.ts +2 -1
  19. package/dist/types/wcardinal/ui/d-image-piece-layouter-part-right.d.ts +3 -0
  20. package/dist/types/wcardinal/ui/d-image-piece-layouter-part-top.d.ts +3 -0
  21. package/dist/types/wcardinal/ui/d-image-piece-layouter-part.d.ts +4 -2
  22. package/dist/types/wcardinal/ui/d-image-piece-margin-impl.d.ts +17 -0
  23. package/dist/types/wcardinal/ui/d-image-piece-margin.d.ts +9 -0
  24. package/dist/types/wcardinal/ui/d-image-piece-tint-impl.d.ts +23 -0
  25. package/dist/types/wcardinal/ui/d-image-piece-tint.d.ts +13 -0
  26. package/dist/types/wcardinal/ui/d-image-piece.d.ts +14 -77
  27. package/dist/types/wcardinal/ui/d-indicator-processing.d.ts +69 -0
  28. package/dist/types/wcardinal/ui/index.d.ts +11 -0
  29. package/dist/types/wcardinal/ui/theme/dark/d-theme-dark-en-us-dialog-processing.d.ts +2 -0
  30. package/dist/types/wcardinal/ui/theme/dark/d-theme-dark-en-us-indicator-processing.d.ts +5 -0
  31. package/dist/types/wcardinal/ui/theme/dark/d-theme-dark-image-base.d.ts +3 -0
  32. package/dist/types/wcardinal/ui/theme/dark/d-theme-dark-indicator-processing.d.ts +13 -0
  33. package/dist/types/wcardinal/ui/theme/dark/d-theme-dark-ja-jp-dialog-processing.d.ts +2 -0
  34. package/dist/types/wcardinal/ui/theme/dark/d-theme-dark-ja-jp-indicator-processing.d.ts +5 -0
  35. package/dist/types/wcardinal/ui/theme/dark/index-en-us.d.ts +1 -0
  36. package/dist/types/wcardinal/ui/theme/dark/index-ja-jp.d.ts +1 -0
  37. package/dist/types/wcardinal/ui/theme/dark/index-zz-zz.d.ts +1 -0
  38. package/dist/types/wcardinal/ui/theme/dark/load/index-en-us.d.ts +1 -0
  39. package/dist/types/wcardinal/ui/theme/dark/load/index-ja-jp.d.ts +1 -0
  40. package/dist/types/wcardinal/ui/theme/dark/load/load-theme-dark-en-us-indicator-processing.d.ts +1 -0
  41. package/dist/types/wcardinal/ui/theme/dark/load/load-theme-dark-ja-jp-indicator-processing.d.ts +1 -0
  42. package/dist/types/wcardinal/ui/theme/white/d-theme-white-en-us-dialog-processing.d.ts +2 -0
  43. package/dist/types/wcardinal/ui/theme/white/d-theme-white-en-us-indicator-processing.d.ts +5 -0
  44. package/dist/types/wcardinal/ui/theme/white/d-theme-white-image-base.d.ts +3 -0
  45. package/dist/types/wcardinal/ui/theme/white/d-theme-white-indicator-processing.d.ts +13 -0
  46. package/dist/types/wcardinal/ui/theme/white/d-theme-white-ja-jp-dialog-processing.d.ts +2 -0
  47. package/dist/types/wcardinal/ui/theme/white/d-theme-white-ja-jp-indicator-processing.d.ts +5 -0
  48. package/dist/types/wcardinal/ui/theme/white/index-en-us.d.ts +1 -0
  49. package/dist/types/wcardinal/ui/theme/white/index-ja-jp.d.ts +1 -0
  50. package/dist/types/wcardinal/ui/theme/white/index-zz-zz.d.ts +1 -0
  51. package/dist/types/wcardinal/ui/theme/white/load/index-en-us.d.ts +1 -0
  52. package/dist/types/wcardinal/ui/theme/white/load/index-ja-jp.d.ts +1 -0
  53. package/dist/types/wcardinal/ui/theme/white/load/load-theme-white-en-us-indicator-processing.d.ts +1 -0
  54. package/dist/types/wcardinal/ui/theme/white/load/load-theme-white-ja-jp-indicator-processing.d.ts +1 -0
  55. package/dist/wcardinal/ui/d-base-state-set-impl.js +31 -0
  56. package/dist/wcardinal/ui/d-base-state-set-impl.js.map +1 -1
  57. package/dist/wcardinal/ui/d-base-state-set.js.map +1 -1
  58. package/dist/wcardinal/ui/d-base-state.js +1 -0
  59. package/dist/wcardinal/ui/d-base-state.js.map +1 -1
  60. package/dist/wcardinal/ui/d-base.js +63 -7
  61. package/dist/wcardinal/ui/d-base.js.map +1 -1
  62. package/dist/wcardinal/ui/d-button-color.js +6 -29
  63. package/dist/wcardinal/ui/d-button-color.js.map +1 -1
  64. package/dist/wcardinal/ui/d-dialog-processing.js +3 -2
  65. package/dist/wcardinal/ui/d-dialog-processing.js.map +1 -1
  66. package/dist/wcardinal/ui/d-image-base-theme-wrapper-other.js +35 -0
  67. package/dist/wcardinal/ui/d-image-base-theme-wrapper-other.js.map +1 -0
  68. package/dist/wcardinal/ui/d-image-base-theme-wrapper-secondary.js +5 -1
  69. package/dist/wcardinal/ui/d-image-base-theme-wrapper-secondary.js.map +1 -1
  70. package/dist/wcardinal/ui/d-image-base-theme-wrapper-tertiary.js +5 -1
  71. package/dist/wcardinal/ui/d-image-base-theme-wrapper-tertiary.js.map +1 -1
  72. package/dist/wcardinal/ui/d-image-base.js +22 -51
  73. package/dist/wcardinal/ui/d-image-base.js.map +1 -1
  74. package/dist/wcardinal/ui/d-image-piece-align-impl.js +89 -0
  75. package/dist/wcardinal/ui/d-image-piece-align-impl.js.map +1 -0
  76. package/dist/wcardinal/ui/d-image-piece-align.js +2 -0
  77. package/dist/wcardinal/ui/d-image-piece-align.js.map +1 -0
  78. package/dist/wcardinal/ui/d-image-piece-container-impl.js +108 -0
  79. package/dist/wcardinal/ui/d-image-piece-container-impl.js.map +1 -0
  80. package/dist/wcardinal/ui/d-image-piece-container.js +2 -0
  81. package/dist/wcardinal/ui/d-image-piece-container.js.map +1 -0
  82. package/dist/wcardinal/ui/d-image-piece-impl.js +235 -0
  83. package/dist/wcardinal/ui/d-image-piece-impl.js.map +1 -0
  84. package/dist/wcardinal/ui/d-image-piece-layouter-part-bottom.js +15 -4
  85. package/dist/wcardinal/ui/d-image-piece-layouter-part-bottom.js.map +1 -1
  86. package/dist/wcardinal/ui/d-image-piece-layouter-part-center.js +8 -5
  87. package/dist/wcardinal/ui/d-image-piece-layouter-part-center.js.map +1 -1
  88. package/dist/wcardinal/ui/d-image-piece-layouter-part-container.js +13 -17
  89. package/dist/wcardinal/ui/d-image-piece-layouter-part-container.js.map +1 -1
  90. package/dist/wcardinal/ui/d-image-piece-layouter-part-left.js +15 -4
  91. package/dist/wcardinal/ui/d-image-piece-layouter-part-left.js.map +1 -1
  92. package/dist/wcardinal/ui/d-image-piece-layouter-part-middle.js +8 -5
  93. package/dist/wcardinal/ui/d-image-piece-layouter-part-middle.js.map +1 -1
  94. package/dist/wcardinal/ui/d-image-piece-layouter-part-right.js +15 -4
  95. package/dist/wcardinal/ui/d-image-piece-layouter-part-right.js.map +1 -1
  96. package/dist/wcardinal/ui/d-image-piece-layouter-part-top.js +15 -4
  97. package/dist/wcardinal/ui/d-image-piece-layouter-part-top.js.map +1 -1
  98. package/dist/wcardinal/ui/d-image-piece-layouter-part.js +2 -6
  99. package/dist/wcardinal/ui/d-image-piece-layouter-part.js.map +1 -1
  100. package/dist/wcardinal/ui/d-image-piece-layouter.js +2 -2
  101. package/dist/wcardinal/ui/d-image-piece-layouter.js.map +1 -1
  102. package/dist/wcardinal/ui/d-image-piece-margin-impl.js +55 -0
  103. package/dist/wcardinal/ui/d-image-piece-margin-impl.js.map +1 -0
  104. package/dist/wcardinal/ui/d-image-piece-margin.js +2 -0
  105. package/dist/wcardinal/ui/d-image-piece-margin.js.map +1 -0
  106. package/dist/wcardinal/ui/d-image-piece-tint-impl.js +90 -0
  107. package/dist/wcardinal/ui/d-image-piece-tint-impl.js.map +1 -0
  108. package/dist/wcardinal/ui/d-image-piece-tint.js +2 -0
  109. package/dist/wcardinal/ui/d-image-piece-tint.js.map +1 -0
  110. package/dist/wcardinal/ui/d-image-piece.js +1 -287
  111. package/dist/wcardinal/ui/d-image-piece.js.map +1 -1
  112. package/dist/wcardinal/ui/d-indicator-processing.js +216 -0
  113. package/dist/wcardinal/ui/d-indicator-processing.js.map +1 -0
  114. package/dist/wcardinal/ui/d-table-header-cell.js +10 -5
  115. package/dist/wcardinal/ui/d-table-header-cell.js.map +1 -1
  116. package/dist/wcardinal/ui/d-text-base.js +9 -1
  117. package/dist/wcardinal/ui/d-text-base.js.map +1 -1
  118. package/dist/wcardinal/ui/index.js +11 -0
  119. package/dist/wcardinal/ui/index.js.map +1 -1
  120. package/dist/wcardinal/ui/theme/dark/d-theme-dark-en-us-dialog-processing.js +2 -2
  121. package/dist/wcardinal/ui/theme/dark/d-theme-dark-en-us-dialog-processing.js.map +1 -1
  122. package/dist/wcardinal/ui/theme/dark/d-theme-dark-en-us-indicator-processing.js +19 -0
  123. package/dist/wcardinal/ui/theme/dark/d-theme-dark-en-us-indicator-processing.js.map +1 -0
  124. package/dist/wcardinal/ui/theme/dark/d-theme-dark-image-base.js +9 -0
  125. package/dist/wcardinal/ui/theme/dark/d-theme-dark-image-base.js.map +1 -1
  126. package/dist/wcardinal/ui/theme/dark/d-theme-dark-indicator-processing.js +74 -0
  127. package/dist/wcardinal/ui/theme/dark/d-theme-dark-indicator-processing.js.map +1 -0
  128. package/dist/wcardinal/ui/theme/dark/d-theme-dark-ja-jp-dialog-processing.js +2 -2
  129. package/dist/wcardinal/ui/theme/dark/d-theme-dark-ja-jp-dialog-processing.js.map +1 -1
  130. package/dist/wcardinal/ui/theme/dark/d-theme-dark-ja-jp-indicator-processing.js +19 -0
  131. package/dist/wcardinal/ui/theme/dark/d-theme-dark-ja-jp-indicator-processing.js.map +1 -0
  132. package/dist/wcardinal/ui/theme/dark/index-en-us.js +1 -0
  133. package/dist/wcardinal/ui/theme/dark/index-en-us.js.map +1 -1
  134. package/dist/wcardinal/ui/theme/dark/index-ja-jp.js +1 -0
  135. package/dist/wcardinal/ui/theme/dark/index-ja-jp.js.map +1 -1
  136. package/dist/wcardinal/ui/theme/dark/index-zz-zz.js +1 -0
  137. package/dist/wcardinal/ui/theme/dark/index-zz-zz.js.map +1 -1
  138. package/dist/wcardinal/ui/theme/dark/load/index-en-us.js +1 -0
  139. package/dist/wcardinal/ui/theme/dark/load/index-en-us.js.map +1 -1
  140. package/dist/wcardinal/ui/theme/dark/load/index-ja-jp.js +1 -0
  141. package/dist/wcardinal/ui/theme/dark/load/index-ja-jp.js.map +1 -1
  142. package/dist/wcardinal/ui/theme/dark/load/load-theme-dark-en-us-all.js +2 -0
  143. package/dist/wcardinal/ui/theme/dark/load/load-theme-dark-en-us-all.js.map +1 -1
  144. package/dist/wcardinal/ui/theme/dark/load/load-theme-dark-en-us-indicator-processing.js +10 -0
  145. package/dist/wcardinal/ui/theme/dark/load/load-theme-dark-en-us-indicator-processing.js.map +1 -0
  146. package/dist/wcardinal/ui/theme/dark/load/load-theme-dark-ja-jp-all.js +2 -0
  147. package/dist/wcardinal/ui/theme/dark/load/load-theme-dark-ja-jp-all.js.map +1 -1
  148. package/dist/wcardinal/ui/theme/dark/load/load-theme-dark-ja-jp-indicator-processing.js +10 -0
  149. package/dist/wcardinal/ui/theme/dark/load/load-theme-dark-ja-jp-indicator-processing.js.map +1 -0
  150. package/dist/wcardinal/ui/theme/white/d-theme-white-en-us-dialog-processing.js +2 -2
  151. package/dist/wcardinal/ui/theme/white/d-theme-white-en-us-dialog-processing.js.map +1 -1
  152. package/dist/wcardinal/ui/theme/white/d-theme-white-en-us-indicator-processing.js +19 -0
  153. package/dist/wcardinal/ui/theme/white/d-theme-white-en-us-indicator-processing.js.map +1 -0
  154. package/dist/wcardinal/ui/theme/white/d-theme-white-image-base.js +9 -0
  155. package/dist/wcardinal/ui/theme/white/d-theme-white-image-base.js.map +1 -1
  156. package/dist/wcardinal/ui/theme/white/d-theme-white-indicator-processing.js +74 -0
  157. package/dist/wcardinal/ui/theme/white/d-theme-white-indicator-processing.js.map +1 -0
  158. package/dist/wcardinal/ui/theme/white/d-theme-white-ja-jp-dialog-processing.js +2 -2
  159. package/dist/wcardinal/ui/theme/white/d-theme-white-ja-jp-dialog-processing.js.map +1 -1
  160. package/dist/wcardinal/ui/theme/white/d-theme-white-ja-jp-indicator-processing.js +19 -0
  161. package/dist/wcardinal/ui/theme/white/d-theme-white-ja-jp-indicator-processing.js.map +1 -0
  162. package/dist/wcardinal/ui/theme/white/index-en-us.js +1 -0
  163. package/dist/wcardinal/ui/theme/white/index-en-us.js.map +1 -1
  164. package/dist/wcardinal/ui/theme/white/index-ja-jp.js +1 -0
  165. package/dist/wcardinal/ui/theme/white/index-ja-jp.js.map +1 -1
  166. package/dist/wcardinal/ui/theme/white/index-zz-zz.js +1 -0
  167. package/dist/wcardinal/ui/theme/white/index-zz-zz.js.map +1 -1
  168. package/dist/wcardinal/ui/theme/white/load/index-en-us.js +1 -0
  169. package/dist/wcardinal/ui/theme/white/load/index-en-us.js.map +1 -1
  170. package/dist/wcardinal/ui/theme/white/load/index-ja-jp.js +1 -0
  171. package/dist/wcardinal/ui/theme/white/load/index-ja-jp.js.map +1 -1
  172. package/dist/wcardinal/ui/theme/white/load/load-theme-white-en-us-all.js +2 -0
  173. package/dist/wcardinal/ui/theme/white/load/load-theme-white-en-us-all.js.map +1 -1
  174. package/dist/wcardinal/ui/theme/white/load/load-theme-white-en-us-indicator-processing.js +10 -0
  175. package/dist/wcardinal/ui/theme/white/load/load-theme-white-en-us-indicator-processing.js.map +1 -0
  176. package/dist/wcardinal/ui/theme/white/load/load-theme-white-ja-jp-all.js +2 -0
  177. package/dist/wcardinal/ui/theme/white/load/load-theme-white-ja-jp-all.js.map +1 -1
  178. package/dist/wcardinal/ui/theme/white/load/load-theme-white-ja-jp-indicator-processing.js +10 -0
  179. package/dist/wcardinal/ui/theme/white/load/load-theme-white-ja-jp-indicator-processing.js.map +1 -0
  180. package/dist/wcardinal-ui-theme-dark-en-us.js +112 -3
  181. package/dist/wcardinal-ui-theme-dark-en-us.min.js +2 -2
  182. package/dist/wcardinal-ui-theme-dark-en-us.min.js.map +1 -1
  183. package/dist/wcardinal-ui-theme-dark-ja-jp.js +112 -3
  184. package/dist/wcardinal-ui-theme-dark-ja-jp.min.js +2 -2
  185. package/dist/wcardinal-ui-theme-dark-ja-jp.min.js.map +1 -1
  186. package/dist/wcardinal-ui-theme-dark.js +112 -3
  187. package/dist/wcardinal-ui-theme-dark.min.js +2 -2
  188. package/dist/wcardinal-ui-theme-white-en-us.js +112 -3
  189. package/dist/wcardinal-ui-theme-white-en-us.min.js +2 -2
  190. package/dist/wcardinal-ui-theme-white-en-us.min.js.map +1 -1
  191. package/dist/wcardinal-ui-theme-white-ja-jp.js +112 -3
  192. package/dist/wcardinal-ui-theme-white-ja-jp.min.js +2 -2
  193. package/dist/wcardinal-ui-theme-white-ja-jp.min.js.map +1 -1
  194. package/dist/wcardinal-ui-theme-white.js +112 -3
  195. package/dist/wcardinal-ui-theme-white.min.js +2 -2
  196. package/dist/wcardinal-ui.cjs.js +1413 -513
  197. package/dist/wcardinal-ui.js +1127 -495
  198. package/dist/wcardinal-ui.min.js +2 -2
  199. package/dist/wcardinal-ui.min.js.map +1 -1
  200. package/package.json +1 -1
@@ -0,0 +1,69 @@
1
+ import { DisplayObject, Texture } from "pixi.js";
2
+ import { DStateAwareOrValueMightBe } from "./d-state-aware";
3
+ import { DImageBase } from "./d-image-base";
4
+ export interface DIndicatorProcessingDelayOptions {
5
+ done?: number;
6
+ close?: number | null;
7
+ }
8
+ export interface DIndicatorProcessingTextOptions<VALUE> {
9
+ enabled?: boolean;
10
+ value?: DStateAwareOrValueMightBe<VALUE>;
11
+ }
12
+ export interface DIndicatorProcessingImageOptions {
13
+ enabled?: boolean;
14
+ index?: number;
15
+ source?: DStateAwareOrValueMightBe<Texture | DisplayObject | null>;
16
+ rotation?: DStateAwareOrValueMightBe<number>;
17
+ }
18
+ export interface DIndicatorProcessingOptions<VALUE> {
19
+ delay?: DIndicatorProcessingDelayOptions;
20
+ text?: DIndicatorProcessingTextOptions<VALUE>;
21
+ image?: DIndicatorProcessingImageOptions;
22
+ }
23
+ export interface DThemeIndicatorProcessing<VALUE = unknown> {
24
+ getProcessDoneDelay(): number;
25
+ getProcessCloseDelay(): number | null;
26
+ isProcessTextEnabled(): boolean;
27
+ newProcessTextValue(): DStateAwareOrValueMightBe<VALUE>;
28
+ isProcessImageEnabled(): boolean;
29
+ getProcessImageIndex(): number;
30
+ newProcessImageSource(): DStateAwareOrValueMightBe<Texture | DisplayObject | null>;
31
+ newProcessImageRotation(): DStateAwareOrValueMightBe<number>;
32
+ }
33
+ declare const STATE_INITIAL = 0;
34
+ declare const STATE_STARTED = 1;
35
+ declare const STATE_RESOLVED = 2;
36
+ declare const STATE_REJECTED = 3;
37
+ type STATE = typeof STATE_INITIAL | typeof STATE_STARTED | typeof STATE_RESOLVED | typeof STATE_REJECTED;
38
+ export declare class DIndicatorProcessing<VALUE> {
39
+ protected _parent: DImageBase<VALUE>;
40
+ protected _state: STATE;
41
+ protected _startTime: number;
42
+ protected _delayDone: number;
43
+ protected _delayClose: number | null;
44
+ protected _timeoutId?: number;
45
+ protected _closeTimeoutId?: number;
46
+ protected _isTextEnabled: boolean;
47
+ protected _textValue: DStateAwareOrValueMightBe<VALUE>;
48
+ protected _textValueBackup?: DStateAwareOrValueMightBe<VALUE>;
49
+ protected _isImageEnabled: boolean;
50
+ protected _imageIndex: number;
51
+ protected _imageSource: DStateAwareOrValueMightBe<Texture | DisplayObject | null>;
52
+ protected _imageRotation: DStateAwareOrValueMightBe<number>;
53
+ protected _imageSourceBackup?: DStateAwareOrValueMightBe<Texture | DisplayObject | null>;
54
+ protected _imageRotationBackup?: DStateAwareOrValueMightBe<number>;
55
+ protected _wasReadOnly: boolean;
56
+ constructor(parent: DImageBase<VALUE>, options?: DIndicatorProcessingOptions<VALUE>);
57
+ start(): this;
58
+ protected onBegin(): void;
59
+ end(): this;
60
+ protected onEnd(): void;
61
+ resolve(message?: DStateAwareOrValueMightBe<VALUE>): void;
62
+ protected onResolved(message?: DStateAwareOrValueMightBe<VALUE>): void;
63
+ reject(message?: DStateAwareOrValueMightBe<VALUE>): void;
64
+ protected onRejected(message?: DStateAwareOrValueMightBe<VALUE>): void;
65
+ protected onDone(delay: number | null): void;
66
+ protected getType(): string;
67
+ get theme(): DThemeIndicatorProcessing<VALUE>;
68
+ }
69
+ export {};
@@ -315,9 +315,15 @@ export * from "./d-expandable";
315
315
  export * from "./d-font";
316
316
  export * from "./d-html-element-state";
317
317
  export * from "./d-html-element";
318
+ export * from "./d-image-base-theme-wrapper-other";
318
319
  export * from "./d-image-base-theme-wrapper-secondary";
319
320
  export * from "./d-image-base-theme-wrapper-tertiary";
320
321
  export * from "./d-image-base";
322
+ export * from "./d-image-piece-align-impl";
323
+ export * from "./d-image-piece-align";
324
+ export * from "./d-image-piece-container-impl";
325
+ export * from "./d-image-piece-container";
326
+ export * from "./d-image-piece-impl";
321
327
  export * from "./d-image-piece-layouter-part-bottom";
322
328
  export * from "./d-image-piece-layouter-part-center";
323
329
  export * from "./d-image-piece-layouter-part-container";
@@ -327,8 +333,13 @@ export * from "./d-image-piece-layouter-part-right";
327
333
  export * from "./d-image-piece-layouter-part-top";
328
334
  export * from "./d-image-piece-layouter-part";
329
335
  export * from "./d-image-piece-layouter";
336
+ export * from "./d-image-piece-margin-impl";
337
+ export * from "./d-image-piece-margin";
338
+ export * from "./d-image-piece-tint-impl";
339
+ export * from "./d-image-piece-tint";
330
340
  export * from "./d-image-piece";
331
341
  export * from "./d-image";
342
+ export * from "./d-indicator-processing";
332
343
  export * from "./d-input-and-label";
333
344
  export * from "./d-input-boolean-button-off";
334
345
  export * from "./d-input-boolean-button-on";
@@ -1,6 +1,8 @@
1
+ import { DBaseStateSet } from "../../d-base-state-set";
1
2
  import { DDialogLayeredFooterOptions } from "../../d-dialog-layered-footer";
2
3
  import { DStateAwareOrValue } from "../../d-state-aware";
3
4
  import { DThemeDarkDialogProcessing } from "./d-theme-dark-dialog-processing";
5
+ export declare const dThemeDarkEnUsDialogProcessingMessage: (state: DBaseStateSet) => string;
4
6
  export declare class DThemeDarkEnUsDialogProcessing extends DThemeDarkDialogProcessing {
5
7
  getFooter(): DDialogLayeredFooterOptions | undefined | null;
6
8
  getMessage(): DStateAwareOrValue<string>;
@@ -0,0 +1,5 @@
1
+ import type { DStateAwareOrValueMightBe } from "../../d-state-aware";
2
+ import { DThemeDarkIndicatorProcess } from "./d-theme-dark-indicator-processing";
3
+ export declare class DThemeDarkEnUsIndicatorProcessing<VALUE = unknown> extends DThemeDarkIndicatorProcess<VALUE> {
4
+ newProcessTextValue(): DStateAwareOrValueMightBe<VALUE>;
5
+ }
@@ -13,6 +13,7 @@ export declare class DThemeDarkImageBase<VALUE = unknown> extends DThemeDarkText
13
13
  getImageMarginVertial(): number;
14
14
  getImageTintColor(state: DBaseStateSet): number | null;
15
15
  getImageTintAlpha(state: DBaseStateSet): number;
16
+ getImageRotation(state: DBaseStateSet): number;
16
17
  getImageSource(state: DBaseStateSet): Texture | DisplayObject | null;
17
18
  getSecondaryImageAlignHorizontal(): DAlignHorizontal;
18
19
  getSecondaryImageAlignVertical(): DAlignVertical;
@@ -21,6 +22,7 @@ export declare class DThemeDarkImageBase<VALUE = unknown> extends DThemeDarkText
21
22
  getSecondaryImageMarginVertial(): number;
22
23
  getSecondaryImageTintColor(state: DBaseStateSet): number | null;
23
24
  getSecondaryImageTintAlpha(state: DBaseStateSet): number;
25
+ getSecondaryImageRotation(state: DBaseStateSet): number;
24
26
  getTertiaryImageAlignHorizontal(): DAlignHorizontal;
25
27
  getTertiaryImageAlignVertical(): DAlignVertical;
26
28
  getTertiaryImageAlignWith(): DAlignWith;
@@ -28,4 +30,5 @@ export declare class DThemeDarkImageBase<VALUE = unknown> extends DThemeDarkText
28
30
  getTertiaryImageMarginVertial(): number;
29
31
  getTertiaryImageTintColor(state: DBaseStateSet): number | null;
30
32
  getTertiaryImageTintAlpha(state: DBaseStateSet): number;
33
+ getTertiaryImageRotation(state: DBaseStateSet): number;
31
34
  }
@@ -0,0 +1,13 @@
1
+ import type { DisplayObject, Texture } from "pixi.js";
2
+ import type { DThemeIndicatorProcessing } from "../../d-indicator-processing";
3
+ import type { DStateAwareOrValueMightBe } from "../../d-state-aware";
4
+ export declare abstract class DThemeDarkIndicatorProcess<VALUE = unknown> implements DThemeIndicatorProcessing<VALUE> {
5
+ getProcessDoneDelay(): number;
6
+ getProcessCloseDelay(): number | null;
7
+ isProcessTextEnabled(): boolean;
8
+ abstract newProcessTextValue(): DStateAwareOrValueMightBe<VALUE>;
9
+ isProcessImageEnabled(): boolean;
10
+ getProcessImageIndex(): number;
11
+ newProcessImageSource(): DStateAwareOrValueMightBe<Texture | DisplayObject | null>;
12
+ newProcessImageRotation(): DStateAwareOrValueMightBe<number>;
13
+ }
@@ -1,6 +1,8 @@
1
+ import { DBaseStateSet } from "../../d-base-state-set";
1
2
  import { DDialogLayeredFooterOptions } from "../../d-dialog-layered-footer";
2
3
  import { DStateAwareOrValue } from "../../d-state-aware";
3
4
  import { DThemeDarkDialogProcessing } from "./d-theme-dark-dialog-processing";
5
+ export declare const dThemeDarkJaJpDialogProcessingMessage: (state: DBaseStateSet) => string;
4
6
  export declare class DThemeDarkJaJpDialogProcessing extends DThemeDarkDialogProcessing {
5
7
  getFooter(): DDialogLayeredFooterOptions | undefined | null;
6
8
  getMessage(): DStateAwareOrValue<string>;
@@ -0,0 +1,5 @@
1
+ import type { DStateAwareOrValueMightBe } from "../../d-state-aware";
2
+ import { DThemeDarkIndicatorProcess } from "./d-theme-dark-indicator-processing";
3
+ export declare class DThemeDarkJaJpIndicatorProcessing<VALUE = unknown> extends DThemeDarkIndicatorProcess<VALUE> {
4
+ newProcessTextValue(): DStateAwareOrValueMightBe<VALUE>;
5
+ }
@@ -9,6 +9,7 @@ export * from "./d-theme-dark-en-us-dialog-message";
9
9
  export * from "./d-theme-dark-en-us-dialog-processing";
10
10
  export * from "./d-theme-dark-en-us-dialog-save-as";
11
11
  export * from "./d-theme-dark-en-us-dialog-select";
12
+ export * from "./d-theme-dark-en-us-indicator-processing";
12
13
  export * from "./d-theme-dark-en-us-input-boolean-button-off";
13
14
  export * from "./d-theme-dark-en-us-input-boolean-button-on";
14
15
  export * from "./d-theme-dark-en-us-link";
@@ -9,6 +9,7 @@ export * from "./d-theme-dark-ja-jp-dialog-message";
9
9
  export * from "./d-theme-dark-ja-jp-dialog-processing";
10
10
  export * from "./d-theme-dark-ja-jp-dialog-save-as";
11
11
  export * from "./d-theme-dark-ja-jp-dialog-select";
12
+ export * from "./d-theme-dark-ja-jp-indicator-processing";
12
13
  export * from "./d-theme-dark-ja-jp-input-boolean-button-off";
13
14
  export * from "./d-theme-dark-ja-jp-input-boolean-button-on";
14
15
  export * from "./d-theme-dark-ja-jp-link";
@@ -86,6 +86,7 @@ export * from "./d-theme-dark-font";
86
86
  export * from "./d-theme-dark-html-element";
87
87
  export * from "./d-theme-dark-image-base";
88
88
  export * from "./d-theme-dark-image";
89
+ export * from "./d-theme-dark-indicator-processing";
89
90
  export * from "./d-theme-dark-input-and-label";
90
91
  export * from "./d-theme-dark-input-boolean-button-off";
91
92
  export * from "./d-theme-dark-input-boolean-button-on";
@@ -23,6 +23,7 @@ export * from "./load-theme-dark-en-us-dialog-processing";
23
23
  export * from "./load-theme-dark-en-us-dialog-save-as";
24
24
  export * from "./load-theme-dark-en-us-dialog-select";
25
25
  export * from "./load-theme-dark-en-us-dialog-time";
26
+ export * from "./load-theme-dark-en-us-indicator-processing";
26
27
  export * from "./load-theme-dark-en-us-input-all";
27
28
  export * from "./load-theme-dark-en-us-input-boolean";
28
29
  export * from "./load-theme-dark-en-us-link";
@@ -23,6 +23,7 @@ export * from "./load-theme-dark-ja-jp-dialog-processing";
23
23
  export * from "./load-theme-dark-ja-jp-dialog-save-as";
24
24
  export * from "./load-theme-dark-ja-jp-dialog-select";
25
25
  export * from "./load-theme-dark-ja-jp-dialog-time";
26
+ export * from "./load-theme-dark-ja-jp-indicator-processing";
26
27
  export * from "./load-theme-dark-ja-jp-input-all";
27
28
  export * from "./load-theme-dark-ja-jp-input-boolean";
28
29
  export * from "./load-theme-dark-ja-jp-link";
@@ -0,0 +1 @@
1
+ export declare const loadThemeDarkEnUsIndicatorProcessing: () => void;
@@ -0,0 +1 @@
1
+ export declare const loadThemeDarkJaJpIndicatorProcessing: () => void;
@@ -1,6 +1,8 @@
1
+ import { DBaseStateSet } from "../../d-base-state-set";
1
2
  import { DDialogLayeredFooterOptions } from "../../d-dialog-layered-footer";
2
3
  import { DStateAwareOrValue } from "../../d-state-aware";
3
4
  import { DThemeWhiteDialogProcessing } from "./d-theme-white-dialog-processing";
5
+ export declare const dThemeWhiteEnUsDialogProcessingMessage: (state: DBaseStateSet) => string;
4
6
  export declare class DThemeWhiteEnUsDialogProcessing extends DThemeWhiteDialogProcessing {
5
7
  getFooter(): DDialogLayeredFooterOptions | undefined | null;
6
8
  getMessage(): DStateAwareOrValue<string>;
@@ -0,0 +1,5 @@
1
+ import type { DStateAwareOrValueMightBe } from "../../d-state-aware";
2
+ import { DThemeWhiteIndicatorProcess } from "./d-theme-white-indicator-processing";
3
+ export declare class DThemeWhiteEnUsIndicatorProcessing<VALUE = unknown> extends DThemeWhiteIndicatorProcess<VALUE> {
4
+ newProcessTextValue(): DStateAwareOrValueMightBe<VALUE>;
5
+ }
@@ -13,6 +13,7 @@ export declare class DThemeWhiteImageBase<VALUE = unknown> extends DThemeWhiteTe
13
13
  getImageMarginVertial(): number;
14
14
  getImageTintColor(state: DBaseStateSet): number | null;
15
15
  getImageTintAlpha(state: DBaseStateSet): number;
16
+ getImageRotation(state: DBaseStateSet): number;
16
17
  getImageSource(state: DBaseStateSet): Texture | DisplayObject | null;
17
18
  getSecondaryImageAlignHorizontal(): DAlignHorizontal;
18
19
  getSecondaryImageAlignVertical(): DAlignVertical;
@@ -21,6 +22,7 @@ export declare class DThemeWhiteImageBase<VALUE = unknown> extends DThemeWhiteTe
21
22
  getSecondaryImageMarginVertial(): number;
22
23
  getSecondaryImageTintColor(state: DBaseStateSet): number | null;
23
24
  getSecondaryImageTintAlpha(state: DBaseStateSet): number;
25
+ getSecondaryImageRotation(state: DBaseStateSet): number;
24
26
  getTertiaryImageAlignHorizontal(): DAlignHorizontal;
25
27
  getTertiaryImageAlignVertical(): DAlignVertical;
26
28
  getTertiaryImageAlignWith(): DAlignWith;
@@ -28,4 +30,5 @@ export declare class DThemeWhiteImageBase<VALUE = unknown> extends DThemeWhiteTe
28
30
  getTertiaryImageMarginVertial(): number;
29
31
  getTertiaryImageTintColor(state: DBaseStateSet): number | null;
30
32
  getTertiaryImageTintAlpha(state: DBaseStateSet): number;
33
+ getTertiaryImageRotation(state: DBaseStateSet): number;
31
34
  }
@@ -0,0 +1,13 @@
1
+ import type { DisplayObject, Texture } from "pixi.js";
2
+ import type { DThemeIndicatorProcessing } from "../../d-indicator-processing";
3
+ import type { DStateAwareOrValueMightBe } from "../../d-state-aware";
4
+ export declare abstract class DThemeWhiteIndicatorProcess<VALUE = unknown> implements DThemeIndicatorProcessing<VALUE> {
5
+ getProcessDoneDelay(): number;
6
+ getProcessCloseDelay(): number | null;
7
+ isProcessTextEnabled(): boolean;
8
+ abstract newProcessTextValue(): DStateAwareOrValueMightBe<VALUE>;
9
+ isProcessImageEnabled(): boolean;
10
+ getProcessImageIndex(): number;
11
+ newProcessImageSource(): DStateAwareOrValueMightBe<Texture | DisplayObject | null>;
12
+ newProcessImageRotation(): DStateAwareOrValueMightBe<number>;
13
+ }
@@ -1,6 +1,8 @@
1
+ import { DBaseStateSet } from "../../d-base-state-set";
1
2
  import { DDialogLayeredFooterOptions } from "../../d-dialog-layered-footer";
2
3
  import { DStateAwareOrValue } from "../../d-state-aware";
3
4
  import { DThemeWhiteDialogProcessing } from "./d-theme-white-dialog-processing";
5
+ export declare const dThemeWhiteJaJpDialogProcessingMessage: (state: DBaseStateSet) => string;
4
6
  export declare class DThemeWhiteJaJpDialogProcessing extends DThemeWhiteDialogProcessing {
5
7
  getFooter(): DDialogLayeredFooterOptions | undefined | null;
6
8
  getMessage(): DStateAwareOrValue<string>;
@@ -0,0 +1,5 @@
1
+ import type { DStateAwareOrValueMightBe } from "../../d-state-aware";
2
+ import { DThemeWhiteIndicatorProcess } from "./d-theme-white-indicator-processing";
3
+ export declare class DThemeWhiteJaJpIndicatorProcessing<VALUE = unknown> extends DThemeWhiteIndicatorProcess<VALUE> {
4
+ newProcessTextValue(): DStateAwareOrValueMightBe<VALUE>;
5
+ }
@@ -9,6 +9,7 @@ export * from "./d-theme-white-en-us-dialog-message";
9
9
  export * from "./d-theme-white-en-us-dialog-processing";
10
10
  export * from "./d-theme-white-en-us-dialog-save-as";
11
11
  export * from "./d-theme-white-en-us-dialog-select";
12
+ export * from "./d-theme-white-en-us-indicator-processing";
12
13
  export * from "./d-theme-white-en-us-input-boolean-button-off";
13
14
  export * from "./d-theme-white-en-us-input-boolean-button-on";
14
15
  export * from "./d-theme-white-en-us-link";
@@ -9,6 +9,7 @@ export * from "./d-theme-white-ja-jp-dialog-message";
9
9
  export * from "./d-theme-white-ja-jp-dialog-processing";
10
10
  export * from "./d-theme-white-ja-jp-dialog-save-as";
11
11
  export * from "./d-theme-white-ja-jp-dialog-select";
12
+ export * from "./d-theme-white-ja-jp-indicator-processing";
12
13
  export * from "./d-theme-white-ja-jp-input-boolean-button-off";
13
14
  export * from "./d-theme-white-ja-jp-input-boolean-button-on";
14
15
  export * from "./d-theme-white-ja-jp-link";
@@ -86,6 +86,7 @@ export * from "./d-theme-white-font";
86
86
  export * from "./d-theme-white-html-element";
87
87
  export * from "./d-theme-white-image-base";
88
88
  export * from "./d-theme-white-image";
89
+ export * from "./d-theme-white-indicator-processing";
89
90
  export * from "./d-theme-white-input-and-label";
90
91
  export * from "./d-theme-white-input-boolean-button-off";
91
92
  export * from "./d-theme-white-input-boolean-button-on";
@@ -23,6 +23,7 @@ export * from "./load-theme-white-en-us-dialog-processing";
23
23
  export * from "./load-theme-white-en-us-dialog-save-as";
24
24
  export * from "./load-theme-white-en-us-dialog-select";
25
25
  export * from "./load-theme-white-en-us-dialog-time";
26
+ export * from "./load-theme-white-en-us-indicator-processing";
26
27
  export * from "./load-theme-white-en-us-input-all";
27
28
  export * from "./load-theme-white-en-us-input-boolean";
28
29
  export * from "./load-theme-white-en-us-link";
@@ -23,6 +23,7 @@ export * from "./load-theme-white-ja-jp-dialog-processing";
23
23
  export * from "./load-theme-white-ja-jp-dialog-save-as";
24
24
  export * from "./load-theme-white-ja-jp-dialog-select";
25
25
  export * from "./load-theme-white-ja-jp-dialog-time";
26
+ export * from "./load-theme-white-ja-jp-indicator-processing";
26
27
  export * from "./load-theme-white-ja-jp-input-all";
27
28
  export * from "./load-theme-white-ja-jp-input-boolean";
28
29
  export * from "./load-theme-white-ja-jp-link";
@@ -0,0 +1 @@
1
+ export declare const loadThemeWhiteEnUsIndicatorProcessing: () => void;
@@ -0,0 +1 @@
1
+ export declare const loadThemeWhiteJaJpIndicatorProcessing: () => void;
@@ -829,6 +829,37 @@ var DBaseStateSetImpl = /** @class */ (function () {
829
829
  enumerable: false,
830
830
  configurable: true
831
831
  });
832
+ Object.defineProperty(DBaseStateSetImpl.prototype, "isProcessing", {
833
+ get: function () {
834
+ return this.is(DBaseState.PROCESSING);
835
+ },
836
+ set: function (processing) {
837
+ this.set(DBaseState.PROCESSING, processing);
838
+ },
839
+ enumerable: false,
840
+ configurable: true
841
+ });
842
+ Object.defineProperty(DBaseStateSetImpl.prototype, "inProcessing", {
843
+ get: function () {
844
+ return this.in(DBaseState.PROCESSING);
845
+ },
846
+ enumerable: false,
847
+ configurable: true
848
+ });
849
+ Object.defineProperty(DBaseStateSetImpl.prototype, "onProcessing", {
850
+ get: function () {
851
+ return this.on(DBaseState.PROCESSING);
852
+ },
853
+ enumerable: false,
854
+ configurable: true
855
+ });
856
+ Object.defineProperty(DBaseStateSetImpl.prototype, "underProcessing", {
857
+ get: function () {
858
+ return this.under(DBaseState.PROCESSING);
859
+ },
860
+ enumerable: false,
861
+ configurable: true
862
+ });
832
863
  Object.defineProperty(DBaseStateSetImpl.prototype, "isSucceeded", {
833
864
  get: function () {
834
865
  return this.is(DBaseState.SUCCEEDED);
@@ -1 +1 @@
1
- {"version":3,"file":"d-base-state-set-impl.js","sourceRoot":"","sources":["../../../src/main/typescript/wcardinal/ui/d-base-state-set-impl.ts"],"names":[],"mappings":"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","sourcesContent":["/*\n * Copyright (C) 2020 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { DBaseState } from \"./d-base-state\";\nimport { DBaseStateAndValue } from \"./d-base-state-and-value\";\nimport { DBaseStateMatcher } from \"./d-base-state-matcher\";\nimport { DBaseStateSet } from \"./d-base-state-set\";\nimport { DBaseStateSetBlinker } from \"./d-base-state-set-blinker\";\nimport { DBaseStateSetBlinkerImpl } from \"./d-base-state-set-blinker-impl\";\nimport { DBaseStateSetLike } from \"./d-base-state-set-like\";\nimport { DBaseStateSetTicker } from \"./d-base-state-set-ticker\";\nimport { DBaseStateSetTickerImpl } from \"./d-base-state-set-ticker-impl\";\nimport { isArray } from \"./util/is-array\";\nimport { isFunction } from \"./util/is-function\";\nimport { isNumber } from \"./util/is-number\";\nimport { isString } from \"./util/is-string\";\n\nexport class DBaseStateSetImpl implements DBaseStateSet {\n\tprotected _local: Map<string, number | null>;\n\tprotected _parent: DBaseStateSet | null;\n\tprotected _blinker?: DBaseStateSetBlinker;\n\tprotected _ticker?: DBaseStateSetTicker;\n\n\tconstructor() {\n\t\tthis._local = new Map<string, number | null>();\n\t\tthis._parent = null;\n\t}\n\n\tget local(): Map<string, number | null> {\n\t\treturn this._local;\n\t}\n\n\tget parent(): DBaseStateSet | null {\n\t\treturn this._parent;\n\t}\n\n\tset parent(parent: DBaseStateSet | null) {\n\t\tif (this._parent !== parent) {\n\t\t\tthis.begin();\n\t\t\tthis._parent = parent;\n\t\t\tthis.end();\n\t\t}\n\t}\n\n\tonParentChange(newState: DBaseStateSet, oldState: DBaseStateSet): void {\n\t\tthis._parent = oldState;\n\t\tthis.begin();\n\t\tthis._parent = newState;\n\t\tthis.end();\n\t}\n\n\tget blinker(): DBaseStateSetBlinker {\n\t\tlet result = this._blinker;\n\t\tif (result == null) {\n\t\t\tresult = this.newBlinker();\n\t\t\tthis._blinker = result;\n\t\t}\n\t\treturn result;\n\t}\n\n\tprotected newBlinker(): DBaseStateSetBlinker {\n\t\treturn new DBaseStateSetBlinkerImpl(this);\n\t}\n\n\tget ticker(): DBaseStateSetTicker {\n\t\tlet result = this._ticker;\n\t\tif (result == null) {\n\t\t\tresult = this.newTicker();\n\t\t\tthis._ticker = result;\n\t\t}\n\t\treturn result;\n\t}\n\n\tprotected newTicker(): DBaseStateSetTicker {\n\t\treturn new DBaseStateSetTickerImpl(this);\n\t}\n\n\tis(state: string, value?: number | null): boolean {\n\t\tconst v = this._local.get(state);\n\t\treturn v !== undefined && (value === undefined || value === v);\n\t}\n\n\tin(state: string, value?: number | null): boolean {\n\t\treturn this.is(state, value) || this.under(state, value);\n\t}\n\n\ton(state: string, value?: number | null): boolean {\n\t\tconst parent = this._parent;\n\t\treturn parent != null && parent.is(state, value);\n\t}\n\n\tunder(state: string, value?: number | null): boolean {\n\t\tconst parent = this._parent;\n\t\treturn parent != null && parent.in(state, value);\n\t}\n\n\tlock(callOnChange?: boolean): this {\n\t\treturn this;\n\t}\n\n\tunlock(): this {\n\t\treturn this;\n\t}\n\n\tprotected begin(): this {\n\t\treturn this;\n\t}\n\n\tprotected end(): this {\n\t\treturn this;\n\t}\n\n\tprotected checkAdded(added: string, value: number | null): boolean {\n\t\tconst v = this._local.get(added);\n\t\treturn v === undefined || v !== value;\n\t}\n\n\tadd(state: string, value: number | null = null): this {\n\t\tif (this.checkAdded(state, value)) {\n\t\t\tthis.begin();\n\t\t\tthis._local.set(state, value);\n\t\t\tthis.end();\n\t\t}\n\t\treturn this;\n\t}\n\n\tprotected checkAddedsString(states: string[]): boolean {\n\t\tconst local = this._local;\n\t\tfor (let i = 0, imax = states.length; i < imax; ++i) {\n\t\t\tconst v = local.get(states[i]);\n\t\t\tif (v === undefined || v !== null) {\n\t\t\t\treturn true;\n\t\t\t}\n\t\t}\n\t\treturn false;\n\t}\n\n\tprotected checkAddedsObject(states: DBaseStateAndValue[]): boolean {\n\t\tconst local = this._local;\n\t\tfor (let i = 0, imax = states.length; i < imax; ++i) {\n\t\t\tconst state = states[i];\n\t\t\tconst v = local.get(state.state);\n\t\t\tif (v === undefined || v !== state.value) {\n\t\t\t\treturn true;\n\t\t\t}\n\t\t}\n\t\treturn false;\n\t}\n\n\taddAll(states: string[]): this;\n\taddAll(states: DBaseStateAndValue[]): this;\n\taddAll(states: string[] | DBaseStateAndValue[]): this;\n\n\taddAll(...states: string[]): this;\n\taddAll(...states: DBaseStateAndValue[]): this;\n\n\taddAll(first: string | string[] | DBaseStateAndValue | DBaseStateAndValue[]): this {\n\t\tif (isString(first)) {\n\t\t\treturn this.addAllString(arguments as any as string[]); // eslint-disable-line prefer-rest-params\n\t\t} else if (isArray(first)) {\n\t\t\tif (0 < first.length) {\n\t\t\t\tconst element = first[0];\n\t\t\t\tif (isString(element)) {\n\t\t\t\t\treturn this.addAllString(first as string[]);\n\t\t\t\t} else {\n\t\t\t\t\treturn this.addAllObject(first as DBaseStateAndValue[]);\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn this;\n\t\t} else {\n\t\t\treturn this.addAllObject(arguments as any as DBaseStateAndValue[]); // eslint-disable-line prefer-rest-params\n\t\t}\n\t}\n\n\tprotected addAllString(states: string[]): this {\n\t\tif (this.checkAddedsString(states)) {\n\t\t\tthis.begin();\n\t\t\tconst local = this._local;\n\t\t\tfor (let i = 0, imax = states.length; i < imax; ++i) {\n\t\t\t\tlocal.set(states[i], null);\n\t\t\t}\n\t\t\tthis.end();\n\t\t}\n\t\treturn this;\n\t}\n\n\tprotected addAllObject(states: DBaseStateAndValue[]): this {\n\t\tif (this.checkAddedsObject(states)) {\n\t\t\tthis.begin();\n\t\t\tconst local = this._local;\n\t\t\tfor (let i = 0, imax = states.length; i < imax; ++i) {\n\t\t\t\tconst state = states[i];\n\t\t\t\tlocal.set(state.state, state.value);\n\t\t\t}\n\t\t\tthis.end();\n\t\t}\n\t\treturn this;\n\t}\n\n\tprotected checkRemoved(removed: string): boolean {\n\t\treturn this._local.has(removed);\n\t}\n\n\tremove(state: string): this {\n\t\tif (this.checkRemoved(state)) {\n\t\t\tthis.begin();\n\t\t\tthis._local.delete(state);\n\t\t\tthis.end();\n\t\t}\n\t\treturn this;\n\t}\n\n\tprotected checkRemovedsString(states: string[]): boolean {\n\t\tconst local = this._local;\n\t\tfor (let i = 0, imax = states.length; i < imax; ++i) {\n\t\t\tif (local.has(states[i])) {\n\t\t\t\treturn true;\n\t\t\t}\n\t\t}\n\t\treturn false;\n\t}\n\n\tprotected checkRemovedsObject(states: DBaseStateAndValue[]): boolean {\n\t\tconst local = this._local;\n\t\tfor (let i = 0, imax = states.length; i < imax; ++i) {\n\t\t\tif (local.has(states[i].state)) {\n\t\t\t\treturn true;\n\t\t\t}\n\t\t}\n\t\treturn false;\n\t}\n\n\tremoveAll(states: string[]): this;\n\tremoveAll(states: DBaseStateAndValue[]): this;\n\tremoveAll(states: string[] | DBaseStateAndValue[]): this;\n\n\tremoveAll(...states: string[]): this;\n\tremoveAll(...states: DBaseStateAndValue[]): this;\n\n\tremoveAll(matcher: DBaseStateMatcher): this;\n\n\tremoveAll(\n\t\tfirst: string | string[] | DBaseStateAndValue | DBaseStateAndValue[] | DBaseStateMatcher\n\t): this {\n\t\tif (isFunction(first)) {\n\t\t\treturn this.removeAllMatcher(first);\n\t\t} else if (isString(first)) {\n\t\t\treturn this.removeAllString(arguments as any as string[]); // eslint-disable-line prefer-rest-params\n\t\t} else if (isArray(first)) {\n\t\t\tif (0 < first.length) {\n\t\t\t\tconst element = first[0];\n\t\t\t\tif (isString(element)) {\n\t\t\t\t\treturn this.removeAllString(first as string[]);\n\t\t\t\t} else {\n\t\t\t\t\treturn this.removeAllObject(first as DBaseStateAndValue[]);\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn this;\n\t\t} else {\n\t\t\treturn this.removeAllObject(arguments as any as DBaseStateAndValue[]); // eslint-disable-line prefer-rest-params\n\t\t}\n\t}\n\n\tprotected removeAllMatcher(matcher: DBaseStateMatcher): this {\n\t\tlet isDirty = false;\n\t\tconst local = this._local;\n\t\tlocal.forEach((value, state): void => {\n\t\t\tif (matcher(state)) {\n\t\t\t\tif (!isDirty) {\n\t\t\t\t\tisDirty = true;\n\t\t\t\t\tthis.begin();\n\t\t\t\t}\n\t\t\t\tlocal.delete(state);\n\t\t\t}\n\t\t});\n\t\tif (isDirty) {\n\t\t\tthis.end();\n\t\t}\n\t\treturn this;\n\t}\n\n\tprotected removeAllString(states: string[]): this {\n\t\tif (this.checkRemovedsString(states)) {\n\t\t\tthis.begin();\n\t\t\tconst local = this._local;\n\t\t\tfor (let i = 0, imax = states.length; i < imax; ++i) {\n\t\t\t\tlocal.delete(states[i]);\n\t\t\t}\n\t\t\tthis.end();\n\t\t}\n\t\treturn this;\n\t}\n\n\tprotected removeAllObject(states: DBaseStateAndValue[]): this {\n\t\tif (this.checkRemovedsObject(states)) {\n\t\t\tthis.begin();\n\t\t\tconst local = this._local;\n\t\t\tfor (let i = 0, imax = states.length; i < imax; ++i) {\n\t\t\t\tlocal.delete(states[i].state);\n\t\t\t}\n\t\t\tthis.end();\n\t\t}\n\t\treturn this;\n\t}\n\n\tset(state: string, on: boolean): this;\n\tset(state: string, value: number | null, on: boolean): this;\n\n\tset(added: string | null, removed: string | null): this;\n\tset(added: string | null, value: number | null, removed: string | null): this;\n\n\tset(\n\t\tfirst: string | null,\n\t\tsecond: string | number | boolean | null,\n\t\tthird?: string | boolean | null\n\t): this {\n\t\tif (second === true) {\n\t\t\tif (first != null) {\n\t\t\t\tthis.add(first);\n\t\t\t}\n\t\t} else if (second === false) {\n\t\t\tif (first != null) {\n\t\t\t\tthis.remove(first);\n\t\t\t}\n\t\t} else if (second == null || isNumber(second)) {\n\t\t\tif (third === true) {\n\t\t\t\tif (first != null) {\n\t\t\t\t\tthis.add(first, second);\n\t\t\t\t}\n\t\t\t} else if (third === false) {\n\t\t\t\tif (first != null) {\n\t\t\t\t\tthis.remove(first);\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\treturn this.doSet(first, second, third);\n\t\t\t}\n\t\t} else {\n\t\t\treturn this.doSet(first, null, second);\n\t\t}\n\t\treturn this;\n\t}\n\n\tprotected doSet(added: string | null, value: number | null, removed?: string | null): this {\n\t\tif (added != null) {\n\t\t\tif (removed != null) {\n\t\t\t\tif (this.checkAdded(added, value) || this.checkRemoved(removed)) {\n\t\t\t\t\tthis.begin();\n\t\t\t\t\tthis._local.set(added, value).delete(removed);\n\t\t\t\t\tthis.end();\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tthis.add(added, value);\n\t\t\t}\n\t\t} else if (removed != null) {\n\t\t\tthis.remove(removed);\n\t\t}\n\t\treturn this;\n\t}\n\n\tsetAll(states: string[], on: boolean): this;\n\tsetAll(states: DBaseStateAndValue[], on: boolean): this;\n\tsetAll(states: string[] | DBaseStateAndValue[], on: boolean): this;\n\n\tsetAll(addeds: string[] | null, removeds: string[] | null): this;\n\tsetAll(addeds: DBaseStateAndValue[] | null, removeds: string[] | null): this;\n\tsetAll(addeds: string[] | DBaseStateAndValue[] | null, removeds: string[] | null): this;\n\n\tsetAll(first: string[] | DBaseStateAndValue[] | null, second: string[] | null | boolean): this {\n\t\tif (second === true) {\n\t\t\tif (first != null) {\n\t\t\t\tthis.addAll(first);\n\t\t\t}\n\t\t} else if (second === false) {\n\t\t\tif (first != null) {\n\t\t\t\tthis.removeAll(first);\n\t\t\t}\n\t\t} else {\n\t\t\tif (first != null && 0 < first.length) {\n\t\t\t\tif (second != null && 0 < second.length) {\n\t\t\t\t\tconst added = first[0];\n\t\t\t\t\tif (isString(added)) {\n\t\t\t\t\t\treturn this.setAllString(first as string[], second);\n\t\t\t\t\t} else {\n\t\t\t\t\t\treturn this.setAllObject(first as DBaseStateAndValue[], second);\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\tthis.addAll(first);\n\t\t\t\t}\n\t\t\t} else if (second != null) {\n\t\t\t\tthis.removeAll(second);\n\t\t\t}\n\t\t}\n\t\treturn this;\n\t}\n\n\tprotected setAllString(addeds: string[], removeds: string[]): this {\n\t\tif (this.checkAddedsString(addeds) || this.checkRemovedsString(removeds)) {\n\t\t\tthis.begin();\n\t\t\tconst local = this._local;\n\t\t\tfor (let i = 0, imax = addeds.length; i < imax; ++i) {\n\t\t\t\tlocal.set(addeds[i], null);\n\t\t\t}\n\t\t\tfor (let i = 0, imax = removeds.length; i < imax; ++i) {\n\t\t\t\tlocal.delete(removeds[i]);\n\t\t\t}\n\t\t\tthis.end();\n\t\t}\n\t\treturn this;\n\t}\n\n\tprotected setAllObject(addeds: DBaseStateAndValue[], removeds: string[]): this {\n\t\tif (this.checkAddedsObject(addeds) || this.checkRemovedsString(removeds)) {\n\t\t\tthis.begin();\n\t\t\tconst local = this._local;\n\t\t\tfor (let i = 0, imax = addeds.length; i < imax; ++i) {\n\t\t\t\tconst added = addeds[i];\n\t\t\t\tlocal.set(added.state, added.value);\n\t\t\t}\n\t\t\tfor (let i = 0, imax = removeds.length; i < imax; ++i) {\n\t\t\t\tlocal.delete(removeds[i]);\n\t\t\t}\n\t\t\tthis.end();\n\t\t}\n\t\treturn this;\n\t}\n\n\tclear(): this {\n\t\tconst local = this._local;\n\t\tif (0 < local.size) {\n\t\t\tthis.begin();\n\t\t\tlocal.clear();\n\t\t\tthis.end();\n\t\t}\n\t\treturn this;\n\t}\n\n\tvalueOf(state: string, def?: number | null): number | null | undefined {\n\t\tconst result = this._local.get(state);\n\t\tif (result !== undefined) {\n\t\t\treturn result;\n\t\t}\n\t\tconst parent = this._parent;\n\t\tif (parent != null) {\n\t\t\treturn parent.valueOf(state, def);\n\t\t}\n\t\treturn def;\n\t}\n\n\teach(iteratee: (state: string, value: number | null) => void): this {\n\t\tthis._local.forEach((value: number | null, state: string): void => {\n\t\t\titeratee(state, value);\n\t\t});\n\t\treturn this;\n\t}\n\n\tsize(): number {\n\t\treturn this._local.size;\n\t}\n\n\tcopy(other: DBaseStateSet): this {\n\t\tif (other instanceof DBaseStateSetImpl) {\n\t\t\tthis.begin();\n\t\t\tconst local = this._local;\n\t\t\tlocal.clear();\n\t\t\tother.local.forEach((value: number | null, state: string): void => {\n\t\t\t\tlocal.set(state, value);\n\t\t\t});\n\t\t\tthis._parent = other.parent;\n\t\t\tthis.end();\n\t\t}\n\t\treturn this;\n\t}\n\n\tget isHovered(): boolean {\n\t\treturn this.is(DBaseState.HOVERED);\n\t}\n\n\tset isHovered(isHovered: boolean) {\n\t\tthis.set(DBaseState.HOVERED, isHovered);\n\t}\n\n\tget inHovered(): boolean {\n\t\treturn this.in(DBaseState.HOVERED);\n\t}\n\n\tget onHovered(): boolean {\n\t\treturn this.on(DBaseState.HOVERED);\n\t}\n\n\tget underHovered(): boolean {\n\t\treturn this.under(DBaseState.HOVERED);\n\t}\n\n\tget isActive(): boolean {\n\t\treturn this.is(DBaseState.ACTIVE);\n\t}\n\n\tset isActive(isActive: boolean) {\n\t\tthis.set(DBaseState.ACTIVE, isActive);\n\t}\n\n\tget inActive(): boolean {\n\t\treturn this.in(DBaseState.ACTIVE);\n\t}\n\n\tget onActive(): boolean {\n\t\treturn this.on(DBaseState.ACTIVE);\n\t}\n\n\tget underActive(): boolean {\n\t\treturn this.under(DBaseState.ACTIVE);\n\t}\n\n\tget isPressed(): boolean {\n\t\treturn this.is(DBaseState.PRESSED);\n\t}\n\n\tset isPressed(isPressed: boolean) {\n\t\tthis.set(DBaseState.PRESSED, isPressed);\n\t}\n\n\tget inPressed(): boolean {\n\t\treturn this.in(DBaseState.PRESSED);\n\t}\n\n\tget onPressed(): boolean {\n\t\treturn this.on(DBaseState.PRESSED);\n\t}\n\n\tget underPressed(): boolean {\n\t\treturn this.under(DBaseState.PRESSED);\n\t}\n\n\tget isReadOnly(): boolean {\n\t\treturn this.is(DBaseState.READ_ONLY);\n\t}\n\n\tset isReadOnly(isReadOnly: boolean) {\n\t\tthis.set(DBaseState.READ_ONLY, isReadOnly);\n\t}\n\n\tget inReadOnly(): boolean {\n\t\treturn this.in(DBaseState.READ_ONLY);\n\t}\n\n\tget onReadOnly(): boolean {\n\t\treturn this.on(DBaseState.READ_ONLY);\n\t}\n\n\tget underReadOnly(): boolean {\n\t\treturn this.under(DBaseState.READ_ONLY);\n\t}\n\n\tget isEnabled(): boolean {\n\t\treturn !this.is(DBaseState.DISABLED);\n\t}\n\n\tset isEnabled(isEnabled: boolean) {\n\t\tthis.set(DBaseState.DISABLED, !isEnabled);\n\t}\n\n\tget inEnabled(): boolean {\n\t\treturn !this.in(DBaseState.DISABLED);\n\t}\n\n\tget onEnabled(): boolean {\n\t\treturn !this.on(DBaseState.DISABLED);\n\t}\n\n\tget underEnabled(): boolean {\n\t\treturn !this.under(DBaseState.DISABLED);\n\t}\n\n\tget isDisabled(): boolean {\n\t\treturn this.is(DBaseState.DISABLED);\n\t}\n\n\tset isDisabled(isDisabled: boolean) {\n\t\tthis.set(DBaseState.DISABLED, isDisabled);\n\t}\n\n\tget inDisabled(): boolean {\n\t\treturn this.in(DBaseState.DISABLED);\n\t}\n\n\tget onDisabled(): boolean {\n\t\treturn this.on(DBaseState.DISABLED);\n\t}\n\n\tget underDisabled(): boolean {\n\t\treturn this.under(DBaseState.DISABLED);\n\t}\n\n\tget isActionable(): boolean {\n\t\treturn !this.in(DBaseState.DISABLED) && !this.in(DBaseState.READ_ONLY);\n\t}\n\n\tget isGesturing(): boolean {\n\t\treturn this.is(DBaseState.GESTURING);\n\t}\n\n\tset isGesturing(isGesturing: boolean) {\n\t\tthis.set(DBaseState.GESTURING, isGesturing);\n\t}\n\n\tget inGesturing(): boolean {\n\t\treturn this.in(DBaseState.GESTURING);\n\t}\n\n\tget onGesturing(): boolean {\n\t\treturn this.on(DBaseState.GESTURING);\n\t}\n\n\tget underGesturing(): boolean {\n\t\treturn this.under(DBaseState.GESTURING);\n\t}\n\n\tget isFocused(): boolean {\n\t\treturn this.is(DBaseState.FOCUSED);\n\t}\n\n\tset isFocused(isFocused: boolean) {\n\t\tthis.set(DBaseState.FOCUSED, isFocused);\n\t}\n\n\tget inFocused(): boolean {\n\t\treturn this.in(DBaseState.FOCUSED);\n\t}\n\n\tget onFocused(): boolean {\n\t\treturn this.on(DBaseState.FOCUSED);\n\t}\n\n\tget underFocused(): boolean {\n\t\treturn this.under(DBaseState.FOCUSED);\n\t}\n\n\tget isFocusRoot(): boolean {\n\t\treturn this.is(DBaseState.FOCUS_ROOT);\n\t}\n\n\tset isFocusRoot(isFocusRoot: boolean) {\n\t\tthis.set(DBaseState.FOCUS_ROOT, isFocusRoot);\n\t}\n\n\tget inFocusRoot(): boolean {\n\t\treturn this.in(DBaseState.FOCUS_ROOT);\n\t}\n\n\tget onFocusRoot(): boolean {\n\t\treturn this.on(DBaseState.FOCUS_ROOT);\n\t}\n\n\tget underFocusRoot(): boolean {\n\t\treturn this.under(DBaseState.FOCUS_ROOT);\n\t}\n\n\tget isFocusReverse(): boolean {\n\t\treturn this.is(DBaseState.FOCUS_REVERSE);\n\t}\n\n\tset isFocusReverse(isFocusReverse: boolean) {\n\t\tthis.set(DBaseState.FOCUS_REVERSE, isFocusReverse);\n\t}\n\n\tget inFocusReverse(): boolean {\n\t\treturn this.in(DBaseState.FOCUS_REVERSE);\n\t}\n\n\tget onFocusReverse(): boolean {\n\t\treturn this.on(DBaseState.FOCUS_REVERSE);\n\t}\n\n\tget underFocusReverse(): boolean {\n\t\treturn this.under(DBaseState.FOCUS_REVERSE);\n\t}\n\n\tget isFocusable(): boolean {\n\t\treturn !this.is(DBaseState.UNFOCUSABLE);\n\t}\n\n\tset isFocusable(isFocusable: boolean) {\n\t\tthis.set(DBaseState.UNFOCUSABLE, !isFocusable);\n\t}\n\n\tget inFocusable(): boolean {\n\t\treturn !this.in(DBaseState.UNFOCUSABLE);\n\t}\n\n\tget onFocusable(): boolean {\n\t\treturn !this.on(DBaseState.UNFOCUSABLE);\n\t}\n\n\tget underFocusable(): boolean {\n\t\treturn !this.under(DBaseState.UNFOCUSABLE);\n\t}\n\n\tget isUnfocusable(): boolean {\n\t\treturn this.is(DBaseState.UNFOCUSABLE);\n\t}\n\n\tset isUnfocusable(unfocusable: boolean) {\n\t\tthis.set(DBaseState.UNFOCUSABLE, unfocusable);\n\t}\n\n\tget inUnfocusable(): boolean {\n\t\treturn this.in(DBaseState.UNFOCUSABLE);\n\t}\n\n\tget onUnfocusable(): boolean {\n\t\treturn this.on(DBaseState.UNFOCUSABLE);\n\t}\n\n\tget underUnfocusable(): boolean {\n\t\treturn this.under(DBaseState.UNFOCUSABLE);\n\t}\n\n\tget isInvalid(): boolean {\n\t\treturn this.is(DBaseState.INVALID);\n\t}\n\n\tset isInvalid(invalid: boolean) {\n\t\tthis.set(DBaseState.INVALID, invalid);\n\t}\n\n\tget inInvalid(): boolean {\n\t\treturn this.in(DBaseState.INVALID);\n\t}\n\n\tget onInvalid(): boolean {\n\t\treturn this.on(DBaseState.INVALID);\n\t}\n\n\tget underInvalid(): boolean {\n\t\treturn this.on(DBaseState.INVALID);\n\t}\n\n\tget isSucceeded(): boolean {\n\t\treturn this.is(DBaseState.SUCCEEDED);\n\t}\n\n\tset isSucceeded(succeeded: boolean) {\n\t\tthis.set(DBaseState.SUCCEEDED, succeeded);\n\t}\n\n\tget inSucceeded(): boolean {\n\t\treturn this.in(DBaseState.SUCCEEDED);\n\t}\n\n\tget onSucceeded(): boolean {\n\t\treturn this.on(DBaseState.SUCCEEDED);\n\t}\n\n\tget underSucceeded(): boolean {\n\t\treturn this.under(DBaseState.SUCCEEDED);\n\t}\n\n\tget isFailed(): boolean {\n\t\treturn this.is(DBaseState.FAILED);\n\t}\n\n\tset isFailed(failed: boolean) {\n\t\tthis.set(DBaseState.FAILED, failed);\n\t}\n\n\tget inFailed(): boolean {\n\t\treturn this.in(DBaseState.FAILED);\n\t}\n\n\tget onFailed(): boolean {\n\t\treturn this.on(DBaseState.FAILED);\n\t}\n\n\tget underFailed(): boolean {\n\t\treturn this.under(DBaseState.FAILED);\n\t}\n\n\tget isWarned(): boolean {\n\t\treturn this.is(DBaseState.WARNED);\n\t}\n\n\tset isWarned(isWarned: boolean) {\n\t\tthis.set(DBaseState.WARNED, isWarned);\n\t}\n\n\tget inWarned(): boolean {\n\t\treturn this.in(DBaseState.WARNED);\n\t}\n\n\tget onWarned(): boolean {\n\t\treturn this.on(DBaseState.WARNED);\n\t}\n\n\tget underWarned(): boolean {\n\t\treturn this.on(DBaseState.WARNED);\n\t}\n\n\tget isChanged(): boolean {\n\t\treturn this.is(DBaseState.CHANGED);\n\t}\n\n\tset isChanged(isChanged: boolean) {\n\t\tthis.set(DBaseState.CHANGED, isChanged);\n\t}\n\n\tget inChanged(): boolean {\n\t\treturn this.in(DBaseState.CHANGED);\n\t}\n\n\tget onChanged(): boolean {\n\t\treturn this.on(DBaseState.CHANGED);\n\t}\n\n\tget underChanged(): boolean {\n\t\treturn this.on(DBaseState.CHANGED);\n\t}\n\n\tget isAlternated(): boolean {\n\t\treturn this.is(DBaseState.ALTERNATED);\n\t}\n\n\tset isAlternated(isAlternated: boolean) {\n\t\tthis.set(DBaseState.ALTERNATED, isAlternated);\n\t}\n\n\tget inAlternated(): boolean {\n\t\treturn this.in(DBaseState.ALTERNATED);\n\t}\n\n\tget onAlternated(): boolean {\n\t\treturn this.on(DBaseState.ALTERNATED);\n\t}\n\n\tget underAlternated(): boolean {\n\t\treturn this.on(DBaseState.ALTERNATED);\n\t}\n\n\ttoObject(): DBaseStateSetLike {\n\t\tconst states: string[] = [];\n\t\tthis._local.forEach((value: number | null, state: string): void => {\n\t\t\tstates.push(state);\n\t\t});\n\t\treturn {\n\t\t\tlocal: states\n\t\t};\n\t}\n\n\ttoString(): string {\n\t\treturn JSON.stringify(this.toObject());\n\t}\n}\n"]}
1
+ {"version":3,"file":"d-base-state-set-impl.js","sourceRoot":"","sources":["../../../src/main/typescript/wcardinal/ui/d-base-state-set-impl.ts"],"names":[],"mappings":"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","sourcesContent":["/*\n * Copyright (C) 2020 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { DBaseState } from \"./d-base-state\";\nimport { DBaseStateAndValue } from \"./d-base-state-and-value\";\nimport { DBaseStateMatcher } from \"./d-base-state-matcher\";\nimport { DBaseStateSet } from \"./d-base-state-set\";\nimport { DBaseStateSetBlinker } from \"./d-base-state-set-blinker\";\nimport { DBaseStateSetBlinkerImpl } from \"./d-base-state-set-blinker-impl\";\nimport { DBaseStateSetLike } from \"./d-base-state-set-like\";\nimport { DBaseStateSetTicker } from \"./d-base-state-set-ticker\";\nimport { DBaseStateSetTickerImpl } from \"./d-base-state-set-ticker-impl\";\nimport { isArray } from \"./util/is-array\";\nimport { isFunction } from \"./util/is-function\";\nimport { isNumber } from \"./util/is-number\";\nimport { isString } from \"./util/is-string\";\n\nexport class DBaseStateSetImpl implements DBaseStateSet {\n\tprotected _local: Map<string, number | null>;\n\tprotected _parent: DBaseStateSet | null;\n\tprotected _blinker?: DBaseStateSetBlinker;\n\tprotected _ticker?: DBaseStateSetTicker;\n\n\tconstructor() {\n\t\tthis._local = new Map<string, number | null>();\n\t\tthis._parent = null;\n\t}\n\n\tget local(): Map<string, number | null> {\n\t\treturn this._local;\n\t}\n\n\tget parent(): DBaseStateSet | null {\n\t\treturn this._parent;\n\t}\n\n\tset parent(parent: DBaseStateSet | null) {\n\t\tif (this._parent !== parent) {\n\t\t\tthis.begin();\n\t\t\tthis._parent = parent;\n\t\t\tthis.end();\n\t\t}\n\t}\n\n\tonParentChange(newState: DBaseStateSet, oldState: DBaseStateSet): void {\n\t\tthis._parent = oldState;\n\t\tthis.begin();\n\t\tthis._parent = newState;\n\t\tthis.end();\n\t}\n\n\tget blinker(): DBaseStateSetBlinker {\n\t\tlet result = this._blinker;\n\t\tif (result == null) {\n\t\t\tresult = this.newBlinker();\n\t\t\tthis._blinker = result;\n\t\t}\n\t\treturn result;\n\t}\n\n\tprotected newBlinker(): DBaseStateSetBlinker {\n\t\treturn new DBaseStateSetBlinkerImpl(this);\n\t}\n\n\tget ticker(): DBaseStateSetTicker {\n\t\tlet result = this._ticker;\n\t\tif (result == null) {\n\t\t\tresult = this.newTicker();\n\t\t\tthis._ticker = result;\n\t\t}\n\t\treturn result;\n\t}\n\n\tprotected newTicker(): DBaseStateSetTicker {\n\t\treturn new DBaseStateSetTickerImpl(this);\n\t}\n\n\tis(state: string, value?: number | null): boolean {\n\t\tconst v = this._local.get(state);\n\t\treturn v !== undefined && (value === undefined || value === v);\n\t}\n\n\tin(state: string, value?: number | null): boolean {\n\t\treturn this.is(state, value) || this.under(state, value);\n\t}\n\n\ton(state: string, value?: number | null): boolean {\n\t\tconst parent = this._parent;\n\t\treturn parent != null && parent.is(state, value);\n\t}\n\n\tunder(state: string, value?: number | null): boolean {\n\t\tconst parent = this._parent;\n\t\treturn parent != null && parent.in(state, value);\n\t}\n\n\tlock(callOnChange?: boolean): this {\n\t\treturn this;\n\t}\n\n\tunlock(): this {\n\t\treturn this;\n\t}\n\n\tprotected begin(): this {\n\t\treturn this;\n\t}\n\n\tprotected end(): this {\n\t\treturn this;\n\t}\n\n\tprotected checkAdded(added: string, value: number | null): boolean {\n\t\tconst v = this._local.get(added);\n\t\treturn v === undefined || v !== value;\n\t}\n\n\tadd(state: string, value: number | null = null): this {\n\t\tif (this.checkAdded(state, value)) {\n\t\t\tthis.begin();\n\t\t\tthis._local.set(state, value);\n\t\t\tthis.end();\n\t\t}\n\t\treturn this;\n\t}\n\n\tprotected checkAddedsString(states: string[]): boolean {\n\t\tconst local = this._local;\n\t\tfor (let i = 0, imax = states.length; i < imax; ++i) {\n\t\t\tconst v = local.get(states[i]);\n\t\t\tif (v === undefined || v !== null) {\n\t\t\t\treturn true;\n\t\t\t}\n\t\t}\n\t\treturn false;\n\t}\n\n\tprotected checkAddedsObject(states: DBaseStateAndValue[]): boolean {\n\t\tconst local = this._local;\n\t\tfor (let i = 0, imax = states.length; i < imax; ++i) {\n\t\t\tconst state = states[i];\n\t\t\tconst v = local.get(state.state);\n\t\t\tif (v === undefined || v !== state.value) {\n\t\t\t\treturn true;\n\t\t\t}\n\t\t}\n\t\treturn false;\n\t}\n\n\taddAll(states: string[]): this;\n\taddAll(states: DBaseStateAndValue[]): this;\n\taddAll(states: string[] | DBaseStateAndValue[]): this;\n\n\taddAll(...states: string[]): this;\n\taddAll(...states: DBaseStateAndValue[]): this;\n\n\taddAll(first: string | string[] | DBaseStateAndValue | DBaseStateAndValue[]): this {\n\t\tif (isString(first)) {\n\t\t\treturn this.addAllString(arguments as any as string[]); // eslint-disable-line prefer-rest-params\n\t\t} else if (isArray(first)) {\n\t\t\tif (0 < first.length) {\n\t\t\t\tconst element = first[0];\n\t\t\t\tif (isString(element)) {\n\t\t\t\t\treturn this.addAllString(first as string[]);\n\t\t\t\t} else {\n\t\t\t\t\treturn this.addAllObject(first as DBaseStateAndValue[]);\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn this;\n\t\t} else {\n\t\t\treturn this.addAllObject(arguments as any as DBaseStateAndValue[]); // eslint-disable-line prefer-rest-params\n\t\t}\n\t}\n\n\tprotected addAllString(states: string[]): this {\n\t\tif (this.checkAddedsString(states)) {\n\t\t\tthis.begin();\n\t\t\tconst local = this._local;\n\t\t\tfor (let i = 0, imax = states.length; i < imax; ++i) {\n\t\t\t\tlocal.set(states[i], null);\n\t\t\t}\n\t\t\tthis.end();\n\t\t}\n\t\treturn this;\n\t}\n\n\tprotected addAllObject(states: DBaseStateAndValue[]): this {\n\t\tif (this.checkAddedsObject(states)) {\n\t\t\tthis.begin();\n\t\t\tconst local = this._local;\n\t\t\tfor (let i = 0, imax = states.length; i < imax; ++i) {\n\t\t\t\tconst state = states[i];\n\t\t\t\tlocal.set(state.state, state.value);\n\t\t\t}\n\t\t\tthis.end();\n\t\t}\n\t\treturn this;\n\t}\n\n\tprotected checkRemoved(removed: string): boolean {\n\t\treturn this._local.has(removed);\n\t}\n\n\tremove(state: string): this {\n\t\tif (this.checkRemoved(state)) {\n\t\t\tthis.begin();\n\t\t\tthis._local.delete(state);\n\t\t\tthis.end();\n\t\t}\n\t\treturn this;\n\t}\n\n\tprotected checkRemovedsString(states: string[]): boolean {\n\t\tconst local = this._local;\n\t\tfor (let i = 0, imax = states.length; i < imax; ++i) {\n\t\t\tif (local.has(states[i])) {\n\t\t\t\treturn true;\n\t\t\t}\n\t\t}\n\t\treturn false;\n\t}\n\n\tprotected checkRemovedsObject(states: DBaseStateAndValue[]): boolean {\n\t\tconst local = this._local;\n\t\tfor (let i = 0, imax = states.length; i < imax; ++i) {\n\t\t\tif (local.has(states[i].state)) {\n\t\t\t\treturn true;\n\t\t\t}\n\t\t}\n\t\treturn false;\n\t}\n\n\tremoveAll(states: string[]): this;\n\tremoveAll(states: DBaseStateAndValue[]): this;\n\tremoveAll(states: string[] | DBaseStateAndValue[]): this;\n\n\tremoveAll(...states: string[]): this;\n\tremoveAll(...states: DBaseStateAndValue[]): this;\n\n\tremoveAll(matcher: DBaseStateMatcher): this;\n\n\tremoveAll(\n\t\tfirst: string | string[] | DBaseStateAndValue | DBaseStateAndValue[] | DBaseStateMatcher\n\t): this {\n\t\tif (isFunction(first)) {\n\t\t\treturn this.removeAllMatcher(first);\n\t\t} else if (isString(first)) {\n\t\t\treturn this.removeAllString(arguments as any as string[]); // eslint-disable-line prefer-rest-params\n\t\t} else if (isArray(first)) {\n\t\t\tif (0 < first.length) {\n\t\t\t\tconst element = first[0];\n\t\t\t\tif (isString(element)) {\n\t\t\t\t\treturn this.removeAllString(first as string[]);\n\t\t\t\t} else {\n\t\t\t\t\treturn this.removeAllObject(first as DBaseStateAndValue[]);\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn this;\n\t\t} else {\n\t\t\treturn this.removeAllObject(arguments as any as DBaseStateAndValue[]); // eslint-disable-line prefer-rest-params\n\t\t}\n\t}\n\n\tprotected removeAllMatcher(matcher: DBaseStateMatcher): this {\n\t\tlet isDirty = false;\n\t\tconst local = this._local;\n\t\tlocal.forEach((value, state): void => {\n\t\t\tif (matcher(state)) {\n\t\t\t\tif (!isDirty) {\n\t\t\t\t\tisDirty = true;\n\t\t\t\t\tthis.begin();\n\t\t\t\t}\n\t\t\t\tlocal.delete(state);\n\t\t\t}\n\t\t});\n\t\tif (isDirty) {\n\t\t\tthis.end();\n\t\t}\n\t\treturn this;\n\t}\n\n\tprotected removeAllString(states: string[]): this {\n\t\tif (this.checkRemovedsString(states)) {\n\t\t\tthis.begin();\n\t\t\tconst local = this._local;\n\t\t\tfor (let i = 0, imax = states.length; i < imax; ++i) {\n\t\t\t\tlocal.delete(states[i]);\n\t\t\t}\n\t\t\tthis.end();\n\t\t}\n\t\treturn this;\n\t}\n\n\tprotected removeAllObject(states: DBaseStateAndValue[]): this {\n\t\tif (this.checkRemovedsObject(states)) {\n\t\t\tthis.begin();\n\t\t\tconst local = this._local;\n\t\t\tfor (let i = 0, imax = states.length; i < imax; ++i) {\n\t\t\t\tlocal.delete(states[i].state);\n\t\t\t}\n\t\t\tthis.end();\n\t\t}\n\t\treturn this;\n\t}\n\n\tset(state: string, on: boolean): this;\n\tset(state: string, value: number | null, on: boolean): this;\n\n\tset(added: string | null, removed: string | null): this;\n\tset(added: string | null, value: number | null, removed: string | null): this;\n\n\tset(\n\t\tfirst: string | null,\n\t\tsecond: string | number | boolean | null,\n\t\tthird?: string | boolean | null\n\t): this {\n\t\tif (second === true) {\n\t\t\tif (first != null) {\n\t\t\t\tthis.add(first);\n\t\t\t}\n\t\t} else if (second === false) {\n\t\t\tif (first != null) {\n\t\t\t\tthis.remove(first);\n\t\t\t}\n\t\t} else if (second == null || isNumber(second)) {\n\t\t\tif (third === true) {\n\t\t\t\tif (first != null) {\n\t\t\t\t\tthis.add(first, second);\n\t\t\t\t}\n\t\t\t} else if (third === false) {\n\t\t\t\tif (first != null) {\n\t\t\t\t\tthis.remove(first);\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\treturn this.doSet(first, second, third);\n\t\t\t}\n\t\t} else {\n\t\t\treturn this.doSet(first, null, second);\n\t\t}\n\t\treturn this;\n\t}\n\n\tprotected doSet(added: string | null, value: number | null, removed?: string | null): this {\n\t\tif (added != null) {\n\t\t\tif (removed != null) {\n\t\t\t\tif (this.checkAdded(added, value) || this.checkRemoved(removed)) {\n\t\t\t\t\tthis.begin();\n\t\t\t\t\tthis._local.set(added, value).delete(removed);\n\t\t\t\t\tthis.end();\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tthis.add(added, value);\n\t\t\t}\n\t\t} else if (removed != null) {\n\t\t\tthis.remove(removed);\n\t\t}\n\t\treturn this;\n\t}\n\n\tsetAll(states: string[], on: boolean): this;\n\tsetAll(states: DBaseStateAndValue[], on: boolean): this;\n\tsetAll(states: string[] | DBaseStateAndValue[], on: boolean): this;\n\n\tsetAll(addeds: string[] | null, removeds: string[] | null): this;\n\tsetAll(addeds: DBaseStateAndValue[] | null, removeds: string[] | null): this;\n\tsetAll(addeds: string[] | DBaseStateAndValue[] | null, removeds: string[] | null): this;\n\n\tsetAll(first: string[] | DBaseStateAndValue[] | null, second: string[] | null | boolean): this {\n\t\tif (second === true) {\n\t\t\tif (first != null) {\n\t\t\t\tthis.addAll(first);\n\t\t\t}\n\t\t} else if (second === false) {\n\t\t\tif (first != null) {\n\t\t\t\tthis.removeAll(first);\n\t\t\t}\n\t\t} else {\n\t\t\tif (first != null && 0 < first.length) {\n\t\t\t\tif (second != null && 0 < second.length) {\n\t\t\t\t\tconst added = first[0];\n\t\t\t\t\tif (isString(added)) {\n\t\t\t\t\t\treturn this.setAllString(first as string[], second);\n\t\t\t\t\t} else {\n\t\t\t\t\t\treturn this.setAllObject(first as DBaseStateAndValue[], second);\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\tthis.addAll(first);\n\t\t\t\t}\n\t\t\t} else if (second != null) {\n\t\t\t\tthis.removeAll(second);\n\t\t\t}\n\t\t}\n\t\treturn this;\n\t}\n\n\tprotected setAllString(addeds: string[], removeds: string[]): this {\n\t\tif (this.checkAddedsString(addeds) || this.checkRemovedsString(removeds)) {\n\t\t\tthis.begin();\n\t\t\tconst local = this._local;\n\t\t\tfor (let i = 0, imax = addeds.length; i < imax; ++i) {\n\t\t\t\tlocal.set(addeds[i], null);\n\t\t\t}\n\t\t\tfor (let i = 0, imax = removeds.length; i < imax; ++i) {\n\t\t\t\tlocal.delete(removeds[i]);\n\t\t\t}\n\t\t\tthis.end();\n\t\t}\n\t\treturn this;\n\t}\n\n\tprotected setAllObject(addeds: DBaseStateAndValue[], removeds: string[]): this {\n\t\tif (this.checkAddedsObject(addeds) || this.checkRemovedsString(removeds)) {\n\t\t\tthis.begin();\n\t\t\tconst local = this._local;\n\t\t\tfor (let i = 0, imax = addeds.length; i < imax; ++i) {\n\t\t\t\tconst added = addeds[i];\n\t\t\t\tlocal.set(added.state, added.value);\n\t\t\t}\n\t\t\tfor (let i = 0, imax = removeds.length; i < imax; ++i) {\n\t\t\t\tlocal.delete(removeds[i]);\n\t\t\t}\n\t\t\tthis.end();\n\t\t}\n\t\treturn this;\n\t}\n\n\tclear(): this {\n\t\tconst local = this._local;\n\t\tif (0 < local.size) {\n\t\t\tthis.begin();\n\t\t\tlocal.clear();\n\t\t\tthis.end();\n\t\t}\n\t\treturn this;\n\t}\n\n\tvalueOf(state: string, def?: number | null): number | null | undefined {\n\t\tconst result = this._local.get(state);\n\t\tif (result !== undefined) {\n\t\t\treturn result;\n\t\t}\n\t\tconst parent = this._parent;\n\t\tif (parent != null) {\n\t\t\treturn parent.valueOf(state, def);\n\t\t}\n\t\treturn def;\n\t}\n\n\teach(iteratee: (state: string, value: number | null) => void): this {\n\t\tthis._local.forEach((value: number | null, state: string): void => {\n\t\t\titeratee(state, value);\n\t\t});\n\t\treturn this;\n\t}\n\n\tsize(): number {\n\t\treturn this._local.size;\n\t}\n\n\tcopy(other: DBaseStateSet): this {\n\t\tif (other instanceof DBaseStateSetImpl) {\n\t\t\tthis.begin();\n\t\t\tconst local = this._local;\n\t\t\tlocal.clear();\n\t\t\tother.local.forEach((value: number | null, state: string): void => {\n\t\t\t\tlocal.set(state, value);\n\t\t\t});\n\t\t\tthis._parent = other.parent;\n\t\t\tthis.end();\n\t\t}\n\t\treturn this;\n\t}\n\n\tget isHovered(): boolean {\n\t\treturn this.is(DBaseState.HOVERED);\n\t}\n\n\tset isHovered(isHovered: boolean) {\n\t\tthis.set(DBaseState.HOVERED, isHovered);\n\t}\n\n\tget inHovered(): boolean {\n\t\treturn this.in(DBaseState.HOVERED);\n\t}\n\n\tget onHovered(): boolean {\n\t\treturn this.on(DBaseState.HOVERED);\n\t}\n\n\tget underHovered(): boolean {\n\t\treturn this.under(DBaseState.HOVERED);\n\t}\n\n\tget isActive(): boolean {\n\t\treturn this.is(DBaseState.ACTIVE);\n\t}\n\n\tset isActive(isActive: boolean) {\n\t\tthis.set(DBaseState.ACTIVE, isActive);\n\t}\n\n\tget inActive(): boolean {\n\t\treturn this.in(DBaseState.ACTIVE);\n\t}\n\n\tget onActive(): boolean {\n\t\treturn this.on(DBaseState.ACTIVE);\n\t}\n\n\tget underActive(): boolean {\n\t\treturn this.under(DBaseState.ACTIVE);\n\t}\n\n\tget isPressed(): boolean {\n\t\treturn this.is(DBaseState.PRESSED);\n\t}\n\n\tset isPressed(isPressed: boolean) {\n\t\tthis.set(DBaseState.PRESSED, isPressed);\n\t}\n\n\tget inPressed(): boolean {\n\t\treturn this.in(DBaseState.PRESSED);\n\t}\n\n\tget onPressed(): boolean {\n\t\treturn this.on(DBaseState.PRESSED);\n\t}\n\n\tget underPressed(): boolean {\n\t\treturn this.under(DBaseState.PRESSED);\n\t}\n\n\tget isReadOnly(): boolean {\n\t\treturn this.is(DBaseState.READ_ONLY);\n\t}\n\n\tset isReadOnly(isReadOnly: boolean) {\n\t\tthis.set(DBaseState.READ_ONLY, isReadOnly);\n\t}\n\n\tget inReadOnly(): boolean {\n\t\treturn this.in(DBaseState.READ_ONLY);\n\t}\n\n\tget onReadOnly(): boolean {\n\t\treturn this.on(DBaseState.READ_ONLY);\n\t}\n\n\tget underReadOnly(): boolean {\n\t\treturn this.under(DBaseState.READ_ONLY);\n\t}\n\n\tget isEnabled(): boolean {\n\t\treturn !this.is(DBaseState.DISABLED);\n\t}\n\n\tset isEnabled(isEnabled: boolean) {\n\t\tthis.set(DBaseState.DISABLED, !isEnabled);\n\t}\n\n\tget inEnabled(): boolean {\n\t\treturn !this.in(DBaseState.DISABLED);\n\t}\n\n\tget onEnabled(): boolean {\n\t\treturn !this.on(DBaseState.DISABLED);\n\t}\n\n\tget underEnabled(): boolean {\n\t\treturn !this.under(DBaseState.DISABLED);\n\t}\n\n\tget isDisabled(): boolean {\n\t\treturn this.is(DBaseState.DISABLED);\n\t}\n\n\tset isDisabled(isDisabled: boolean) {\n\t\tthis.set(DBaseState.DISABLED, isDisabled);\n\t}\n\n\tget inDisabled(): boolean {\n\t\treturn this.in(DBaseState.DISABLED);\n\t}\n\n\tget onDisabled(): boolean {\n\t\treturn this.on(DBaseState.DISABLED);\n\t}\n\n\tget underDisabled(): boolean {\n\t\treturn this.under(DBaseState.DISABLED);\n\t}\n\n\tget isActionable(): boolean {\n\t\treturn !this.in(DBaseState.DISABLED) && !this.in(DBaseState.READ_ONLY);\n\t}\n\n\tget isGesturing(): boolean {\n\t\treturn this.is(DBaseState.GESTURING);\n\t}\n\n\tset isGesturing(isGesturing: boolean) {\n\t\tthis.set(DBaseState.GESTURING, isGesturing);\n\t}\n\n\tget inGesturing(): boolean {\n\t\treturn this.in(DBaseState.GESTURING);\n\t}\n\n\tget onGesturing(): boolean {\n\t\treturn this.on(DBaseState.GESTURING);\n\t}\n\n\tget underGesturing(): boolean {\n\t\treturn this.under(DBaseState.GESTURING);\n\t}\n\n\tget isFocused(): boolean {\n\t\treturn this.is(DBaseState.FOCUSED);\n\t}\n\n\tset isFocused(isFocused: boolean) {\n\t\tthis.set(DBaseState.FOCUSED, isFocused);\n\t}\n\n\tget inFocused(): boolean {\n\t\treturn this.in(DBaseState.FOCUSED);\n\t}\n\n\tget onFocused(): boolean {\n\t\treturn this.on(DBaseState.FOCUSED);\n\t}\n\n\tget underFocused(): boolean {\n\t\treturn this.under(DBaseState.FOCUSED);\n\t}\n\n\tget isFocusRoot(): boolean {\n\t\treturn this.is(DBaseState.FOCUS_ROOT);\n\t}\n\n\tset isFocusRoot(isFocusRoot: boolean) {\n\t\tthis.set(DBaseState.FOCUS_ROOT, isFocusRoot);\n\t}\n\n\tget inFocusRoot(): boolean {\n\t\treturn this.in(DBaseState.FOCUS_ROOT);\n\t}\n\n\tget onFocusRoot(): boolean {\n\t\treturn this.on(DBaseState.FOCUS_ROOT);\n\t}\n\n\tget underFocusRoot(): boolean {\n\t\treturn this.under(DBaseState.FOCUS_ROOT);\n\t}\n\n\tget isFocusReverse(): boolean {\n\t\treturn this.is(DBaseState.FOCUS_REVERSE);\n\t}\n\n\tset isFocusReverse(isFocusReverse: boolean) {\n\t\tthis.set(DBaseState.FOCUS_REVERSE, isFocusReverse);\n\t}\n\n\tget inFocusReverse(): boolean {\n\t\treturn this.in(DBaseState.FOCUS_REVERSE);\n\t}\n\n\tget onFocusReverse(): boolean {\n\t\treturn this.on(DBaseState.FOCUS_REVERSE);\n\t}\n\n\tget underFocusReverse(): boolean {\n\t\treturn this.under(DBaseState.FOCUS_REVERSE);\n\t}\n\n\tget isFocusable(): boolean {\n\t\treturn !this.is(DBaseState.UNFOCUSABLE);\n\t}\n\n\tset isFocusable(isFocusable: boolean) {\n\t\tthis.set(DBaseState.UNFOCUSABLE, !isFocusable);\n\t}\n\n\tget inFocusable(): boolean {\n\t\treturn !this.in(DBaseState.UNFOCUSABLE);\n\t}\n\n\tget onFocusable(): boolean {\n\t\treturn !this.on(DBaseState.UNFOCUSABLE);\n\t}\n\n\tget underFocusable(): boolean {\n\t\treturn !this.under(DBaseState.UNFOCUSABLE);\n\t}\n\n\tget isUnfocusable(): boolean {\n\t\treturn this.is(DBaseState.UNFOCUSABLE);\n\t}\n\n\tset isUnfocusable(unfocusable: boolean) {\n\t\tthis.set(DBaseState.UNFOCUSABLE, unfocusable);\n\t}\n\n\tget inUnfocusable(): boolean {\n\t\treturn this.in(DBaseState.UNFOCUSABLE);\n\t}\n\n\tget onUnfocusable(): boolean {\n\t\treturn this.on(DBaseState.UNFOCUSABLE);\n\t}\n\n\tget underUnfocusable(): boolean {\n\t\treturn this.under(DBaseState.UNFOCUSABLE);\n\t}\n\n\tget isInvalid(): boolean {\n\t\treturn this.is(DBaseState.INVALID);\n\t}\n\n\tset isInvalid(invalid: boolean) {\n\t\tthis.set(DBaseState.INVALID, invalid);\n\t}\n\n\tget inInvalid(): boolean {\n\t\treturn this.in(DBaseState.INVALID);\n\t}\n\n\tget onInvalid(): boolean {\n\t\treturn this.on(DBaseState.INVALID);\n\t}\n\n\tget underInvalid(): boolean {\n\t\treturn this.on(DBaseState.INVALID);\n\t}\n\n\tget isProcessing(): boolean {\n\t\treturn this.is(DBaseState.PROCESSING);\n\t}\n\n\tset isProcessing(processing: boolean) {\n\t\tthis.set(DBaseState.PROCESSING, processing);\n\t}\n\n\tget inProcessing(): boolean {\n\t\treturn this.in(DBaseState.PROCESSING);\n\t}\n\n\tget onProcessing(): boolean {\n\t\treturn this.on(DBaseState.PROCESSING);\n\t}\n\n\tget underProcessing(): boolean {\n\t\treturn this.under(DBaseState.PROCESSING);\n\t}\n\n\tget isSucceeded(): boolean {\n\t\treturn this.is(DBaseState.SUCCEEDED);\n\t}\n\n\tset isSucceeded(succeeded: boolean) {\n\t\tthis.set(DBaseState.SUCCEEDED, succeeded);\n\t}\n\n\tget inSucceeded(): boolean {\n\t\treturn this.in(DBaseState.SUCCEEDED);\n\t}\n\n\tget onSucceeded(): boolean {\n\t\treturn this.on(DBaseState.SUCCEEDED);\n\t}\n\n\tget underSucceeded(): boolean {\n\t\treturn this.under(DBaseState.SUCCEEDED);\n\t}\n\n\tget isFailed(): boolean {\n\t\treturn this.is(DBaseState.FAILED);\n\t}\n\n\tset isFailed(failed: boolean) {\n\t\tthis.set(DBaseState.FAILED, failed);\n\t}\n\n\tget inFailed(): boolean {\n\t\treturn this.in(DBaseState.FAILED);\n\t}\n\n\tget onFailed(): boolean {\n\t\treturn this.on(DBaseState.FAILED);\n\t}\n\n\tget underFailed(): boolean {\n\t\treturn this.under(DBaseState.FAILED);\n\t}\n\n\tget isWarned(): boolean {\n\t\treturn this.is(DBaseState.WARNED);\n\t}\n\n\tset isWarned(isWarned: boolean) {\n\t\tthis.set(DBaseState.WARNED, isWarned);\n\t}\n\n\tget inWarned(): boolean {\n\t\treturn this.in(DBaseState.WARNED);\n\t}\n\n\tget onWarned(): boolean {\n\t\treturn this.on(DBaseState.WARNED);\n\t}\n\n\tget underWarned(): boolean {\n\t\treturn this.on(DBaseState.WARNED);\n\t}\n\n\tget isChanged(): boolean {\n\t\treturn this.is(DBaseState.CHANGED);\n\t}\n\n\tset isChanged(isChanged: boolean) {\n\t\tthis.set(DBaseState.CHANGED, isChanged);\n\t}\n\n\tget inChanged(): boolean {\n\t\treturn this.in(DBaseState.CHANGED);\n\t}\n\n\tget onChanged(): boolean {\n\t\treturn this.on(DBaseState.CHANGED);\n\t}\n\n\tget underChanged(): boolean {\n\t\treturn this.on(DBaseState.CHANGED);\n\t}\n\n\tget isAlternated(): boolean {\n\t\treturn this.is(DBaseState.ALTERNATED);\n\t}\n\n\tset isAlternated(isAlternated: boolean) {\n\t\tthis.set(DBaseState.ALTERNATED, isAlternated);\n\t}\n\n\tget inAlternated(): boolean {\n\t\treturn this.in(DBaseState.ALTERNATED);\n\t}\n\n\tget onAlternated(): boolean {\n\t\treturn this.on(DBaseState.ALTERNATED);\n\t}\n\n\tget underAlternated(): boolean {\n\t\treturn this.on(DBaseState.ALTERNATED);\n\t}\n\n\ttoObject(): DBaseStateSetLike {\n\t\tconst states: string[] = [];\n\t\tthis._local.forEach((value: number | null, state: string): void => {\n\t\t\tstates.push(state);\n\t\t});\n\t\treturn {\n\t\t\tlocal: states\n\t\t};\n\t}\n\n\ttoString(): string {\n\t\treturn JSON.stringify(this.toObject());\n\t}\n}\n"]}