@wcardinal/wcardinal-ui 0.445.0 → 0.447.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +24 -28
- package/dist/types/wcardinal/ui/d-base-state-set-impl.d.ts +3 -1
- package/dist/types/wcardinal/ui/d-base-state-set.d.ts +3 -1
- package/dist/types/wcardinal/ui/d-dialog.d.ts +9 -1
- package/dist/types/wcardinal/ui/theme/dark/d-theme-dark-dialog.d.ts +1 -0
- package/dist/types/wcardinal/ui/theme/white/d-theme-white-dialog.d.ts +1 -0
- package/dist/wcardinal/ui/d-base-state-set-impl.js +9 -1
- package/dist/wcardinal/ui/d-base-state-set-impl.js.map +1 -1
- package/dist/wcardinal/ui/d-base-state-set.js.map +1 -1
- package/dist/wcardinal/ui/d-dialog.js +48 -2
- package/dist/wcardinal/ui/d-dialog.js.map +1 -1
- package/dist/wcardinal/ui/d-table.js +2 -1
- package/dist/wcardinal/ui/d-table.js.map +1 -1
- package/dist/wcardinal/ui/theme/dark/d-theme-dark-dialog.js +3 -0
- package/dist/wcardinal/ui/theme/dark/d-theme-dark-dialog.js.map +1 -1
- package/dist/wcardinal/ui/theme/white/d-theme-white-dialog.js +3 -0
- package/dist/wcardinal/ui/theme/white/d-theme-white-dialog.js.map +1 -1
- package/dist/wcardinal-ui-theme-dark-en-us.js +4 -1
- package/dist/wcardinal-ui-theme-dark-en-us.min.js +2 -2
- package/dist/wcardinal-ui-theme-dark-en-us.min.js.map +1 -1
- package/dist/wcardinal-ui-theme-dark-ja-jp.js +4 -1
- package/dist/wcardinal-ui-theme-dark-ja-jp.min.js +2 -2
- package/dist/wcardinal-ui-theme-dark-ja-jp.min.js.map +1 -1
- package/dist/wcardinal-ui-theme-dark.js +4 -1
- package/dist/wcardinal-ui-theme-dark.min.js +2 -2
- package/dist/wcardinal-ui-theme-white-en-us.js +4 -1
- package/dist/wcardinal-ui-theme-white-en-us.min.js +2 -2
- package/dist/wcardinal-ui-theme-white-en-us.min.js.map +1 -1
- package/dist/wcardinal-ui-theme-white-ja-jp.js +4 -1
- package/dist/wcardinal-ui-theme-white-ja-jp.min.js +2 -2
- package/dist/wcardinal-ui-theme-white-ja-jp.min.js.map +1 -1
- package/dist/wcardinal-ui-theme-white.js +4 -1
- package/dist/wcardinal-ui-theme-white.min.js +2 -2
- package/dist/wcardinal-ui.cjs.js +66 -5
- package/dist/wcardinal-ui.js +60 -5
- package/dist/wcardinal-ui.min.js +2 -2
- package/dist/wcardinal-ui.min.js.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
###
|
|
1
|
+
### WinterCardinal UI
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
WebGL-based UI library
|
|
4
4
|
|
|
5
5
|
### Installation
|
|
6
6
|
|
|
@@ -13,12 +13,12 @@ npm i @wcardinal/wcardinal-ui
|
|
|
13
13
|
Please note that this package has no default exports.
|
|
14
14
|
|
|
15
15
|
```javascript
|
|
16
|
-
import { loadAll,
|
|
16
|
+
import { loadAll, loadThemeWhiteEnUsAll, DApplication, DButtonCheck } from "@wcardinal/wcardinal-ui";
|
|
17
17
|
|
|
18
18
|
// Loads all the optional modules and the white theme.
|
|
19
|
-
// This is required for the tree shaking
|
|
19
|
+
// This is required for the tree shaking.
|
|
20
20
|
loadAll();
|
|
21
|
-
|
|
21
|
+
loadThemeWhiteEnUsAll();
|
|
22
22
|
|
|
23
23
|
// Make a new application
|
|
24
24
|
const application = new DApplication();
|
|
@@ -35,30 +35,30 @@ new DButtonCheck({
|
|
|
35
35
|
#### CDN
|
|
36
36
|
|
|
37
37
|
```html
|
|
38
|
-
<script src="https://cdn.jsdelivr.net/npm/pixi.js/dist/pixi.min.js"></script>
|
|
38
|
+
<script src="https://cdn.jsdelivr.net/npm/pixi.js@5.3.12/dist/pixi.min.js"></script>
|
|
39
39
|
<script src="https://cdn.jsdelivr.net/npm/@wcardinal/wcardinal-ui/dist/wcardinal-ui.min.js"></script>
|
|
40
40
|
<script src="https://cdn.jsdelivr.net/npm/@wcardinal/wcardinal-ui/dist/wcardinal-ui-theme-white.min.js"></script>
|
|
41
41
|
<script>
|
|
42
|
-
(
|
|
43
|
-
|
|
42
|
+
(() => {
|
|
43
|
+
"use strict";
|
|
44
44
|
|
|
45
45
|
// Make a new application
|
|
46
|
-
|
|
46
|
+
const application = new wcardinal.ui.DApplication();
|
|
47
47
|
|
|
48
48
|
// Make a new check button
|
|
49
49
|
new wcardinal.ui.DButtonCheck({
|
|
50
50
|
parent: application.stage,
|
|
51
51
|
text: {
|
|
52
|
-
value:
|
|
52
|
+
value: "Check"
|
|
53
53
|
}
|
|
54
54
|
});
|
|
55
|
-
}()
|
|
55
|
+
})();
|
|
56
56
|
</script>
|
|
57
57
|
```
|
|
58
58
|
|
|
59
59
|
All the classes are in `wcardinal.ui`.
|
|
60
|
-
Please note that `loadAll` and `
|
|
61
|
-
Prebuild files `wcardinal-ui.min.js` and `wcardinal-ui-theme-white.min.js` call `loadAll` and `
|
|
60
|
+
Please note that `loadAll` and `loadThemeWhiteEnUsAll` is not required in this case.
|
|
61
|
+
Prebuild files `wcardinal-ui.min.js` and `wcardinal-ui-theme-white.min.js` call `loadAll` and `loadThemeWhiteEnUsAll` for you.
|
|
62
62
|
|
|
63
63
|
See [sample/cdn](https://winter-cardinal.github.io/winter-cardinal-ui/sample/white/other/cdn.html) for a complete example.
|
|
64
64
|
|
|
@@ -69,15 +69,15 @@ because all the UI classes and their themes are included.
|
|
|
69
69
|
This is why the tree shaking is important for this library.
|
|
70
70
|
|
|
71
71
|
`loadAll` loads all the optional modules (e.g., `DMenuItemCheck`).
|
|
72
|
-
And `
|
|
72
|
+
And `loadThemeWhiteEnUsAll` loads the white theme (e.g., `DThemeWhite`).
|
|
73
73
|
To remove unnecessary modules from your build, pick `load*` functions you need.
|
|
74
74
|
|
|
75
75
|
```javascript
|
|
76
|
-
import {
|
|
76
|
+
import { loadThemeWhiteEnUsAll } from "@wcardinal/wcardinal-ui";
|
|
77
77
|
|
|
78
78
|
// Loads the white theme only.
|
|
79
79
|
// `DMenuItemCheck` will not be in your compiled package, for instance.
|
|
80
|
-
|
|
80
|
+
loadThemeWhiteEnUsAll();
|
|
81
81
|
```
|
|
82
82
|
|
|
83
83
|
### Documentation
|
|
@@ -86,6 +86,7 @@ loadThemeWhiteAll();
|
|
|
86
86
|
* Samples
|
|
87
87
|
* [White theme](https://winter-cardinal.github.io/winter-cardinal-ui/sample/white/)
|
|
88
88
|
* [Dark theme](https://winter-cardinal.github.io/winter-cardinal-ui/sample/dark/)
|
|
89
|
+
* [Starter](https://github.com/winter-cardinal/winter-cardinal-starter)
|
|
89
90
|
|
|
90
91
|
### Requirements
|
|
91
92
|
|
|
@@ -96,17 +97,17 @@ loadThemeWhiteAll();
|
|
|
96
97
|
* Not required if your theme doesn't use it
|
|
97
98
|
* Stencil support
|
|
98
99
|
|
|
99
|
-
### How to
|
|
100
|
+
### How to Build
|
|
100
101
|
|
|
101
102
|
The following commands are for building `@wcardinal/wcardinal-ui` itself.
|
|
102
103
|
|
|
103
|
-
#### JS for
|
|
104
|
+
#### JS for Release
|
|
104
105
|
|
|
105
106
|
```shell
|
|
106
107
|
npm run build
|
|
107
108
|
```
|
|
108
109
|
|
|
109
|
-
#### JS for
|
|
110
|
+
#### JS for Development
|
|
110
111
|
|
|
111
112
|
```shell
|
|
112
113
|
npm run watch:ts
|
|
@@ -118,13 +119,13 @@ and then in an another terminal
|
|
|
118
119
|
npm run watch:rollup
|
|
119
120
|
```
|
|
120
121
|
|
|
121
|
-
#### Development
|
|
122
|
+
#### Development Server
|
|
122
123
|
|
|
123
124
|
```shell
|
|
124
125
|
npm start
|
|
125
126
|
```
|
|
126
127
|
|
|
127
|
-
#### API
|
|
128
|
+
#### API Document
|
|
128
129
|
|
|
129
130
|
Update `gitRevision` in `typedoc.json` and then do
|
|
130
131
|
|
|
@@ -132,7 +133,7 @@ Update `gitRevision` in `typedoc.json` and then do
|
|
|
132
133
|
npm run build:api
|
|
133
134
|
```
|
|
134
135
|
|
|
135
|
-
#### Sample
|
|
136
|
+
#### Sample Index Page
|
|
136
137
|
|
|
137
138
|
```shell
|
|
138
139
|
npm run build:sample:index
|
|
@@ -145,7 +146,7 @@ npm run build:sample:index
|
|
|
145
146
|
npm run build:sample:dark
|
|
146
147
|
```
|
|
147
148
|
|
|
148
|
-
#### Samples for GitHub
|
|
149
|
+
#### Samples for GitHub Pages
|
|
149
150
|
|
|
150
151
|
```shell
|
|
151
152
|
npm run build
|
|
@@ -165,11 +166,6 @@ To fix all the auto-fixable lint errors, do the following:
|
|
|
165
166
|
npm run lint:fix
|
|
166
167
|
```
|
|
167
168
|
|
|
168
|
-
### TODO
|
|
169
|
-
|
|
170
|
-
* DTable select / action arguments.
|
|
171
|
-
* Provides DText text style accessors.
|
|
172
|
-
|
|
173
169
|
### License
|
|
174
170
|
|
|
175
171
|
Apache License Version 2.0.
|
|
@@ -64,7 +64,9 @@ export declare class DBaseStateSetImpl implements DBaseStateSet {
|
|
|
64
64
|
protected setAllString(addeds: string[], removeds: string[]): this;
|
|
65
65
|
protected setAllObject(addeds: DBaseStateAndValue[], removeds: string[]): this;
|
|
66
66
|
clear(): this;
|
|
67
|
-
valueOf(state: string
|
|
67
|
+
valueOf(state: string): number | null | undefined;
|
|
68
|
+
valueOf(state: string, def: number): number;
|
|
69
|
+
valueOf(state: string, def: number | null): number | null;
|
|
68
70
|
each(iteratee: (state: string, value: number | null) => void): this;
|
|
69
71
|
size(): number;
|
|
70
72
|
copy(other: DBaseStateSet): this;
|
|
@@ -162,7 +162,9 @@ export interface DBaseStateSet {
|
|
|
162
162
|
setAll(addeds: DBaseStateAndValue[] | null, removeds: string[] | null): this;
|
|
163
163
|
setAll(addeds: string[] | DBaseStateAndValue[] | null, removeds: string[] | null): this;
|
|
164
164
|
clear(): this;
|
|
165
|
-
valueOf(state: string
|
|
165
|
+
valueOf(state: string): number | null | undefined;
|
|
166
|
+
valueOf(state: string, def: number): number;
|
|
167
|
+
valueOf(state: string, def: number | null): number | null;
|
|
166
168
|
each(iteratee: (state: string, value: number | null) => void): this;
|
|
167
169
|
size(): number;
|
|
168
170
|
copy(state: DBaseStateSet): this;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Point, Rectangle } from "pixi.js";
|
|
1
|
+
import { DisplayObject, Point, Rectangle } from "pixi.js";
|
|
2
2
|
import { DAnimation } from "./d-animation";
|
|
3
3
|
import { DApplicationLayerLike } from "./d-application-layer-like";
|
|
4
4
|
import { DBase, DBaseEvents, DBaseOptions, DThemeBase } from "./d-base";
|
|
@@ -44,6 +44,7 @@ export interface DDialogOptions<THEME extends DThemeDialog = DThemeDialog, EMITT
|
|
|
44
44
|
* A dialog mode.
|
|
45
45
|
*/
|
|
46
46
|
mode?: DDialogMode | keyof typeof DDialogMode;
|
|
47
|
+
alwaysOnTop?: boolean;
|
|
47
48
|
sticky?: boolean;
|
|
48
49
|
gesture?: boolean | DDialogGestureOptions;
|
|
49
50
|
align?: DDialogAlign | null | keyof typeof DDialogAlign;
|
|
@@ -59,6 +60,7 @@ export interface DThemeDialog extends DThemeBase {
|
|
|
59
60
|
getMode(): DDialogMode;
|
|
60
61
|
closeOn(mode: DDialogMode): DDialogCloseOn;
|
|
61
62
|
isSticky(mode: DDialogMode): boolean;
|
|
63
|
+
isAlwaysOnTop(): boolean;
|
|
62
64
|
isGestureEnabled(mode: DDialogMode): boolean;
|
|
63
65
|
getGestureMode(mode: DDialogMode): DDialogGestureMode;
|
|
64
66
|
getOffsetX(mode: DDialogMode): number;
|
|
@@ -90,6 +92,8 @@ export declare class DDialog<VALUE = void, THEME extends DThemeDialog = DThemeDi
|
|
|
90
92
|
protected _focused?: DFocusable | null;
|
|
91
93
|
protected _overlay: UtilOverlay;
|
|
92
94
|
protected _mode: DDialogMode;
|
|
95
|
+
protected _alwaysOnTop: boolean;
|
|
96
|
+
protected _onParentChildAddedBound?: () => void;
|
|
93
97
|
protected _sticky: boolean;
|
|
94
98
|
protected _onPrerenderBound: () => void;
|
|
95
99
|
protected _align: DDialogAlign | null;
|
|
@@ -102,6 +106,8 @@ export declare class DDialog<VALUE = void, THEME extends DThemeDialog = DThemeDi
|
|
|
102
106
|
get mode(): DDialogMode;
|
|
103
107
|
get align(): DDialogAlign | null;
|
|
104
108
|
set algin(align: DDialogAlign | null);
|
|
109
|
+
get alwaysOnTop(): boolean;
|
|
110
|
+
set alwaysOnTop(alwaysOnTop: boolean);
|
|
105
111
|
get gesture(): DDialogGesture<this>;
|
|
106
112
|
get layer(): DApplicationLayerLike | null;
|
|
107
113
|
protected toGestureOptions(mode: DDialogMode, theme: THEME, options?: OPTIONS): DDialogGestureOptions;
|
|
@@ -119,6 +125,8 @@ export declare class DDialog<VALUE = void, THEME extends DThemeDialog = DThemeDi
|
|
|
119
125
|
* @returns a value of this dialog
|
|
120
126
|
*/
|
|
121
127
|
open(opener?: DDialogOpener): Promise<VALUE>;
|
|
128
|
+
protected onParentChildAdded(): void;
|
|
129
|
+
protected compareAlwaysOnTop(this: unknown, a: DisplayObject, b: DisplayObject): number;
|
|
122
130
|
protected onPrerender(): void;
|
|
123
131
|
protected onOpen(): void;
|
|
124
132
|
isOpened(): boolean;
|
|
@@ -14,6 +14,7 @@ export declare class DThemeDarkDialog extends DThemeDarkBase implements DThemeDi
|
|
|
14
14
|
getMode(): DDialogMode;
|
|
15
15
|
closeOn(mode: DDialogMode): DDialogCloseOn;
|
|
16
16
|
isSticky(mode: DDialogMode): boolean;
|
|
17
|
+
isAlwaysOnTop(): boolean;
|
|
17
18
|
isGestureEnabled(mode: DDialogMode): boolean;
|
|
18
19
|
getGestureMode(mode: DDialogMode): DDialogGestureMode;
|
|
19
20
|
getOffsetX(mode: DDialogMode): number;
|
|
@@ -14,6 +14,7 @@ export declare class DThemeWhiteDialog extends DThemeWhiteBase implements DTheme
|
|
|
14
14
|
getMode(): DDialogMode;
|
|
15
15
|
closeOn(mode: DDialogMode): DDialogCloseOn;
|
|
16
16
|
isSticky(mode: DDialogMode): boolean;
|
|
17
|
+
isAlwaysOnTop(): boolean;
|
|
17
18
|
isGestureEnabled(mode: DDialogMode): boolean;
|
|
18
19
|
getGestureMode(mode: DDialogMode): DDialogGestureMode;
|
|
19
20
|
getOffsetX(mode: DDialogMode): number;
|
|
@@ -389,11 +389,19 @@ var DBaseStateSetImpl = /** @class */ (function () {
|
|
|
389
389
|
DBaseStateSetImpl.prototype.valueOf = function (state, def) {
|
|
390
390
|
var result = this._local.get(state);
|
|
391
391
|
if (result !== undefined) {
|
|
392
|
+
if (result == null && def !== undefined) {
|
|
393
|
+
return def;
|
|
394
|
+
}
|
|
392
395
|
return result;
|
|
393
396
|
}
|
|
394
397
|
var parent = this._parent;
|
|
395
398
|
if (parent != null) {
|
|
396
|
-
|
|
399
|
+
if (def !== undefined) {
|
|
400
|
+
return parent.valueOf(state, def);
|
|
401
|
+
}
|
|
402
|
+
else {
|
|
403
|
+
return parent.valueOf(state);
|
|
404
|
+
}
|
|
397
405
|
}
|
|
398
406
|
return def;
|
|
399
407
|
};
|
|
@@ -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 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"]}
|
|
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): number | null | undefined;\n\tvalueOf(state: string, def: number): number;\n\tvalueOf(state: string, def: number | null): number | null;\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\tif (result == null && def !== undefined) {\n\t\t\t\treturn def;\n\t\t\t}\n\t\t\treturn result;\n\t\t}\n\t\tconst parent = this._parent;\n\t\tif (parent != null) {\n\t\t\tif (def !== undefined) {\n\t\t\t\treturn parent.valueOf(state, def);\n\t\t\t} else {\n\t\t\t\treturn parent.valueOf(state);\n\t\t\t}\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"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"d-base-state-set.js","sourceRoot":"","sources":["../../../src/main/typescript/wcardinal/ui/d-base-state-set.ts"],"names":[],"mappings":"AAAA;;;GAGG","sourcesContent":["/*\n * Copyright (C) 2020 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { DBaseStateAndValue } from \"./d-base-state-and-value\";\nimport { DBaseStateSetBlinker } from \"./d-base-state-set-blinker\";\nimport { DBaseStateSetLike } from \"./d-base-state-set-like\";\nimport { DBaseStateSetTicker } from \"./d-base-state-set-ticker\";\n\nexport interface DBaseStateSet {\n\tparent: DBaseStateSet | null;\n\treadonly blinker: DBaseStateSetBlinker;\n\treadonly ticker: DBaseStateSetTicker;\n\n\tisHovered: boolean;\n\treadonly inHovered: boolean;\n\treadonly onHovered: boolean;\n\treadonly underHovered: boolean;\n\tisActive: boolean;\n\treadonly inActive: boolean;\n\treadonly onActive: boolean;\n\treadonly underActive: boolean;\n\tisPressed: boolean;\n\treadonly inPressed: boolean;\n\treadonly onPressed: boolean;\n\treadonly underPressed: boolean;\n\tisReadOnly: boolean;\n\treadonly inReadOnly: boolean;\n\treadonly onReadOnly: boolean;\n\treadonly underReadOnly: boolean;\n\tisEnabled: boolean;\n\treadonly inEnabled: boolean;\n\treadonly onEnabled: boolean;\n\treadonly underEnabled: boolean;\n\tisDisabled: boolean;\n\treadonly inDisabled: boolean;\n\treadonly onDisabled: boolean;\n\treadonly underDisabled: boolean;\n\tisActionable: boolean;\n\tisGesturing: boolean;\n\treadonly inGesturing: boolean;\n\treadonly onGesturing: boolean;\n\treadonly underGesturing: boolean;\n\tisFocused: boolean;\n\treadonly inFocused: boolean;\n\treadonly onFocused: boolean;\n\treadonly underFocused: boolean;\n\tisFocusable: boolean;\n\treadonly inFocusable: boolean;\n\treadonly onFocusable: boolean;\n\treadonly underFocusable: boolean;\n\tisUnfocusable: boolean;\n\treadonly inUnfocusable: boolean;\n\treadonly onUnfocusable: boolean;\n\treadonly underUnfocusable: boolean;\n\tisFocusRoot: boolean;\n\treadonly inFocusRoot: boolean;\n\treadonly onFocusRoot: boolean;\n\treadonly underFocusRoot: boolean;\n\tisFocusReverse: boolean;\n\treadonly inFocusReverse: boolean;\n\treadonly onFocusReverse: boolean;\n\treadonly underFocusReverse: boolean;\n\tisInvalid: boolean;\n\treadonly inInvalid: boolean;\n\treadonly onInvalid: boolean;\n\treadonly underInvalid: boolean;\n\tisProcessing: boolean;\n\treadonly inProcessing: boolean;\n\treadonly onProcessing: boolean;\n\treadonly underProcessing: boolean;\n\tisSucceeded: boolean;\n\treadonly inSucceeded: boolean;\n\treadonly onSucceeded: boolean;\n\treadonly underSucceeded: boolean;\n\tisFailed: boolean;\n\treadonly inFailed: boolean;\n\treadonly onFailed: boolean;\n\treadonly underFailed: boolean;\n\tisWarned: boolean;\n\treadonly inWarned: boolean;\n\treadonly onWarned: boolean;\n\treadonly underWarned: boolean;\n\tisChanged: boolean;\n\treadonly inChanged: boolean;\n\treadonly onChanged: boolean;\n\treadonly underChanged: boolean;\n\tisAlternated: boolean;\n\treadonly inAlternated: boolean;\n\treadonly onAlternated: boolean;\n\treadonly underAlternated: boolean;\n\n\t/**\n\t * Returns true if the given state is on.\n\t * If the given value is undefined, values assigned to states are ignored.\n\t * If the given value is not undefined, values assigned to states are taken into account.\n\t *\n\t * @param state a state\n\t * @param value a state value\n\t * @return true if the given state is on\n\t */\n\tis(state: string, value?: number | null): boolean;\n\n\t/**\n\t * Returns true if the given state is on or if one of the parents has the given state.\n\t * If the given value is undefined, values assigned to states are ignored.\n\t * If the given value is not undefined, values assigned to states are taken into account.\n\t *\n\t * @param state a state\n\t * @param value a state value\n\t * @return true if the given state is on or if one of the parents has the given state.\n\t */\n\tin(state: string, value?: number | null): boolean;\n\n\t/**\n\t * Returns true if the direct parent has the given state.\n\t * If the given value is undefined, values assigned to states are ignored.\n\t * If the given value is not undefined, values assigned to states are taken into account.\n\t *\n\t * @param state a state\n\t * @param value a state value\n\t * @return true if the direct parent has the given state.\n\t */\n\ton(state: string, value?: number | null): boolean;\n\n\t/**\n\t * Returns true if one of the parents has the given state.\n\t * If the given value is undefined, values assigned to states are ignored.\n\t * If the given value is not undefined, values assigned to states are taken into account.\n\t *\n\t * @param state a state\n\t * @param value a state value\n\t * @return true if one of the parents has the given state.\n\t */\n\tunder(state: string, value?: number | null): boolean;\n\n\t/**\n\t * Locks this state set.\n\t * The locked state set delays calling the change event handler.\n\t *\n\t * @param callOnChange false to stop calling the change event handler when unlocked\n\t * @return this\n\t */\n\tlock(callOnChange?: boolean): this;\n\n\t/**\n\t * Unlocks this state set and calls the change event handler if this state set has changed.\n\t * However, if this state set is locked with the `callOnChange` of false, the change event handler is not called.\n\t *\n\t * @return this\n\t */\n\tunlock(): this;\n\n\tadd(state: string, value?: number | null): this;\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\tremove(state: string): this;\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: (state: string) => void | boolean): this;\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\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\tclear(): this;\n\n\tvalueOf(state: string, def
|
|
1
|
+
{"version":3,"file":"d-base-state-set.js","sourceRoot":"","sources":["../../../src/main/typescript/wcardinal/ui/d-base-state-set.ts"],"names":[],"mappings":"AAAA;;;GAGG","sourcesContent":["/*\n * Copyright (C) 2020 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { DBaseStateAndValue } from \"./d-base-state-and-value\";\nimport { DBaseStateSetBlinker } from \"./d-base-state-set-blinker\";\nimport { DBaseStateSetLike } from \"./d-base-state-set-like\";\nimport { DBaseStateSetTicker } from \"./d-base-state-set-ticker\";\n\nexport interface DBaseStateSet {\n\tparent: DBaseStateSet | null;\n\treadonly blinker: DBaseStateSetBlinker;\n\treadonly ticker: DBaseStateSetTicker;\n\n\tisHovered: boolean;\n\treadonly inHovered: boolean;\n\treadonly onHovered: boolean;\n\treadonly underHovered: boolean;\n\tisActive: boolean;\n\treadonly inActive: boolean;\n\treadonly onActive: boolean;\n\treadonly underActive: boolean;\n\tisPressed: boolean;\n\treadonly inPressed: boolean;\n\treadonly onPressed: boolean;\n\treadonly underPressed: boolean;\n\tisReadOnly: boolean;\n\treadonly inReadOnly: boolean;\n\treadonly onReadOnly: boolean;\n\treadonly underReadOnly: boolean;\n\tisEnabled: boolean;\n\treadonly inEnabled: boolean;\n\treadonly onEnabled: boolean;\n\treadonly underEnabled: boolean;\n\tisDisabled: boolean;\n\treadonly inDisabled: boolean;\n\treadonly onDisabled: boolean;\n\treadonly underDisabled: boolean;\n\tisActionable: boolean;\n\tisGesturing: boolean;\n\treadonly inGesturing: boolean;\n\treadonly onGesturing: boolean;\n\treadonly underGesturing: boolean;\n\tisFocused: boolean;\n\treadonly inFocused: boolean;\n\treadonly onFocused: boolean;\n\treadonly underFocused: boolean;\n\tisFocusable: boolean;\n\treadonly inFocusable: boolean;\n\treadonly onFocusable: boolean;\n\treadonly underFocusable: boolean;\n\tisUnfocusable: boolean;\n\treadonly inUnfocusable: boolean;\n\treadonly onUnfocusable: boolean;\n\treadonly underUnfocusable: boolean;\n\tisFocusRoot: boolean;\n\treadonly inFocusRoot: boolean;\n\treadonly onFocusRoot: boolean;\n\treadonly underFocusRoot: boolean;\n\tisFocusReverse: boolean;\n\treadonly inFocusReverse: boolean;\n\treadonly onFocusReverse: boolean;\n\treadonly underFocusReverse: boolean;\n\tisInvalid: boolean;\n\treadonly inInvalid: boolean;\n\treadonly onInvalid: boolean;\n\treadonly underInvalid: boolean;\n\tisProcessing: boolean;\n\treadonly inProcessing: boolean;\n\treadonly onProcessing: boolean;\n\treadonly underProcessing: boolean;\n\tisSucceeded: boolean;\n\treadonly inSucceeded: boolean;\n\treadonly onSucceeded: boolean;\n\treadonly underSucceeded: boolean;\n\tisFailed: boolean;\n\treadonly inFailed: boolean;\n\treadonly onFailed: boolean;\n\treadonly underFailed: boolean;\n\tisWarned: boolean;\n\treadonly inWarned: boolean;\n\treadonly onWarned: boolean;\n\treadonly underWarned: boolean;\n\tisChanged: boolean;\n\treadonly inChanged: boolean;\n\treadonly onChanged: boolean;\n\treadonly underChanged: boolean;\n\tisAlternated: boolean;\n\treadonly inAlternated: boolean;\n\treadonly onAlternated: boolean;\n\treadonly underAlternated: boolean;\n\n\t/**\n\t * Returns true if the given state is on.\n\t * If the given value is undefined, values assigned to states are ignored.\n\t * If the given value is not undefined, values assigned to states are taken into account.\n\t *\n\t * @param state a state\n\t * @param value a state value\n\t * @return true if the given state is on\n\t */\n\tis(state: string, value?: number | null): boolean;\n\n\t/**\n\t * Returns true if the given state is on or if one of the parents has the given state.\n\t * If the given value is undefined, values assigned to states are ignored.\n\t * If the given value is not undefined, values assigned to states are taken into account.\n\t *\n\t * @param state a state\n\t * @param value a state value\n\t * @return true if the given state is on or if one of the parents has the given state.\n\t */\n\tin(state: string, value?: number | null): boolean;\n\n\t/**\n\t * Returns true if the direct parent has the given state.\n\t * If the given value is undefined, values assigned to states are ignored.\n\t * If the given value is not undefined, values assigned to states are taken into account.\n\t *\n\t * @param state a state\n\t * @param value a state value\n\t * @return true if the direct parent has the given state.\n\t */\n\ton(state: string, value?: number | null): boolean;\n\n\t/**\n\t * Returns true if one of the parents has the given state.\n\t * If the given value is undefined, values assigned to states are ignored.\n\t * If the given value is not undefined, values assigned to states are taken into account.\n\t *\n\t * @param state a state\n\t * @param value a state value\n\t * @return true if one of the parents has the given state.\n\t */\n\tunder(state: string, value?: number | null): boolean;\n\n\t/**\n\t * Locks this state set.\n\t * The locked state set delays calling the change event handler.\n\t *\n\t * @param callOnChange false to stop calling the change event handler when unlocked\n\t * @return this\n\t */\n\tlock(callOnChange?: boolean): this;\n\n\t/**\n\t * Unlocks this state set and calls the change event handler if this state set has changed.\n\t * However, if this state set is locked with the `callOnChange` of false, the change event handler is not called.\n\t *\n\t * @return this\n\t */\n\tunlock(): this;\n\n\tadd(state: string, value?: number | null): this;\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\tremove(state: string): this;\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: (state: string) => void | boolean): this;\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\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\tclear(): this;\n\n\tvalueOf(state: string): number | null | undefined;\n\tvalueOf(state: string, def: number): number;\n\tvalueOf(state: string, def: number | null): number | null;\n\n\teach(iteratee: (state: string, value: number | null) => void): this;\n\tsize(): number;\n\tcopy(state: DBaseStateSet): this;\n\n\tonParentChange(newState: DBaseStateSet, oldState: DBaseStateSet): void;\n\n\ttoObject(): DBaseStateSetLike;\n\ttoString(): string;\n}\n"]}
|
|
@@ -38,7 +38,7 @@ var DDialog = /** @class */ (function (_super) {
|
|
|
38
38
|
}
|
|
39
39
|
DDialog.prototype.init = function (options) {
|
|
40
40
|
var _this = this;
|
|
41
|
-
var _a, _b;
|
|
41
|
+
var _a, _b, _c;
|
|
42
42
|
_super.prototype.init.call(this, options);
|
|
43
43
|
this._onPrerenderBound = function () {
|
|
44
44
|
_this.onPrerender();
|
|
@@ -48,8 +48,10 @@ var DDialog = /** @class */ (function (_super) {
|
|
|
48
48
|
var theme = this.theme;
|
|
49
49
|
var mode = toEnum((_a = options === null || options === void 0 ? void 0 : options.mode) !== null && _a !== void 0 ? _a : theme.getMode(), DDialogMode);
|
|
50
50
|
this._mode = mode;
|
|
51
|
+
// Always On Top
|
|
52
|
+
this._alwaysOnTop = (_b = options === null || options === void 0 ? void 0 : options.alwaysOnTop) !== null && _b !== void 0 ? _b : theme.isAlwaysOnTop();
|
|
51
53
|
// Sticky
|
|
52
|
-
this._sticky = (
|
|
54
|
+
this._sticky = (_c = options === null || options === void 0 ? void 0 : options.sticky) !== null && _c !== void 0 ? _c : theme.isSticky(mode);
|
|
53
55
|
// Close On
|
|
54
56
|
var closeOn = this.toCloseOn(mode, theme, options);
|
|
55
57
|
this._closeOn = closeOn;
|
|
@@ -130,6 +132,16 @@ var DDialog = /** @class */ (function (_super) {
|
|
|
130
132
|
enumerable: false,
|
|
131
133
|
configurable: true
|
|
132
134
|
});
|
|
135
|
+
Object.defineProperty(DDialog.prototype, "alwaysOnTop", {
|
|
136
|
+
get: function () {
|
|
137
|
+
return this._alwaysOnTop;
|
|
138
|
+
},
|
|
139
|
+
set: function (alwaysOnTop) {
|
|
140
|
+
this._alwaysOnTop = alwaysOnTop;
|
|
141
|
+
},
|
|
142
|
+
enumerable: false,
|
|
143
|
+
configurable: true
|
|
144
|
+
});
|
|
133
145
|
Object.defineProperty(DDialog.prototype, "gesture", {
|
|
134
146
|
get: function () {
|
|
135
147
|
return this._gesture;
|
|
@@ -236,6 +248,7 @@ var DDialog = /** @class */ (function (_super) {
|
|
|
236
248
|
*/
|
|
237
249
|
DDialog.prototype.open = function (opener) {
|
|
238
250
|
var _this = this;
|
|
251
|
+
var _a;
|
|
239
252
|
var result = this._promise;
|
|
240
253
|
if (result == null) {
|
|
241
254
|
result = new Promise(function (resolve, reject) {
|
|
@@ -279,11 +292,37 @@ var DDialog = /** @class */ (function (_super) {
|
|
|
279
292
|
gesture.constraint(this, layer, position.x, position.y);
|
|
280
293
|
}
|
|
281
294
|
}
|
|
295
|
+
// Always On Top
|
|
296
|
+
if (this._alwaysOnTop) {
|
|
297
|
+
var parent_2 = this.parent;
|
|
298
|
+
if (parent_2 != null) {
|
|
299
|
+
parent_2.on("childAdded", ((_a = this._onParentChildAddedBound) !== null && _a !== void 0 ? _a : (this._onParentChildAddedBound = function () {
|
|
300
|
+
_this.onParentChildAdded();
|
|
301
|
+
})));
|
|
302
|
+
this.onParentChildAdded();
|
|
303
|
+
}
|
|
304
|
+
}
|
|
282
305
|
// Done
|
|
283
306
|
this.onOpen();
|
|
284
307
|
}
|
|
285
308
|
return result;
|
|
286
309
|
};
|
|
310
|
+
DDialog.prototype.onParentChildAdded = function () {
|
|
311
|
+
var parent = this.parent;
|
|
312
|
+
if (parent != null) {
|
|
313
|
+
parent.children.sort(this.compareAlwaysOnTop);
|
|
314
|
+
}
|
|
315
|
+
};
|
|
316
|
+
DDialog.prototype.compareAlwaysOnTop = function (a, b) {
|
|
317
|
+
var at = a instanceof DDialog && a.alwaysOnTop;
|
|
318
|
+
var bt = b instanceof DDialog && b.alwaysOnTop;
|
|
319
|
+
if (at) {
|
|
320
|
+
return bt ? 0 : +1;
|
|
321
|
+
}
|
|
322
|
+
else {
|
|
323
|
+
return bt ? -1 : 0;
|
|
324
|
+
}
|
|
325
|
+
};
|
|
287
326
|
DDialog.prototype.onPrerender = function () {
|
|
288
327
|
var _a;
|
|
289
328
|
var layer = this._layer;
|
|
@@ -379,6 +418,13 @@ var DDialog = /** @class */ (function (_super) {
|
|
|
379
418
|
this.visible = false;
|
|
380
419
|
this.onAnimationEnd(true);
|
|
381
420
|
}
|
|
421
|
+
// Always On Top
|
|
422
|
+
if (this._alwaysOnTop) {
|
|
423
|
+
var parent_3 = this.parent;
|
|
424
|
+
if (parent_3 != null) {
|
|
425
|
+
parent_3.off("childAdded", this._onParentChildAddedBound);
|
|
426
|
+
}
|
|
427
|
+
}
|
|
382
428
|
this.emit("close", this);
|
|
383
429
|
};
|
|
384
430
|
DDialog.prototype.onKeyDown = function (e) {
|