@wcardinal/wcardinal-ui 0.444.0 → 0.446.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/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/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-table.js +2 -1
- package/dist/wcardinal/ui/d-table.js.map +1 -1
- package/dist/wcardinal/ui/shape/variant/e-shape-base.js +1 -0
- package/dist/wcardinal/ui/shape/variant/e-shape-base.js.map +1 -1
- package/dist/wcardinal-ui-theme-dark-en-us.js +1 -1
- package/dist/wcardinal-ui-theme-dark-en-us.min.js +1 -1
- package/dist/wcardinal-ui-theme-dark-ja-jp.js +1 -1
- package/dist/wcardinal-ui-theme-dark-ja-jp.min.js +1 -1
- package/dist/wcardinal-ui-theme-dark.js +1 -1
- package/dist/wcardinal-ui-theme-dark.min.js +1 -1
- package/dist/wcardinal-ui-theme-white-en-us.js +1 -1
- package/dist/wcardinal-ui-theme-white-en-us.min.js +1 -1
- package/dist/wcardinal-ui-theme-white-ja-jp.js +1 -1
- package/dist/wcardinal-ui-theme-white-ja-jp.min.js +1 -1
- package/dist/wcardinal-ui-theme-white.js +1 -1
- package/dist/wcardinal-ui-theme-white.min.js +1 -1
- package/dist/wcardinal-ui.cjs.js +13 -3
- package/dist/wcardinal-ui.js +13 -3
- package/dist/wcardinal-ui.min.js +2 -2
- package/dist/wcardinal-ui.min.js.map +1 -1
- package/package.json +1 -1
|
@@ -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;
|
|
@@ -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"]}
|
|
@@ -67,7 +67,8 @@ var DTable = /** @class */ (function (_super) {
|
|
|
67
67
|
});
|
|
68
68
|
Object.defineProperty(DTable.prototype, "category", {
|
|
69
69
|
get: function () {
|
|
70
|
-
|
|
70
|
+
var _a;
|
|
71
|
+
return ((_a = this._category) !== null && _a !== void 0 ? _a : (this._category = this.newCategory()));
|
|
71
72
|
},
|
|
72
73
|
enumerable: false,
|
|
73
74
|
configurable: true
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"d-table.js","sourceRoot":"","sources":["../../../src/main/typescript/wcardinal/ui/d-table.ts"],"names":[],"mappings":"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","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { InteractionEvent, InteractionManager, Rectangle } from \"pixi.js\";\nimport { DApplications } from \"./d-applications\";\nimport { DBase, DBaseOptions } from \"./d-base\";\nimport { DContentOptions } from \"./d-content\";\nimport { DFocusable, DFocusableContainer } from \"./d-controller-focus\";\nimport { DPane, DPaneOptions, DThemePane } from \"./d-pane\";\nimport { DTableBody, DTableBodyOptions } from \"./d-table-body\";\nimport { DTableCategory, DTableCategoryOptions } from \"./d-table-category\";\nimport { DTableColumn, DTableColumnOptions } from \"./d-table-column\";\nimport { DTableData, DTableDataOptions } from \"./d-table-data\";\nimport { DTableDataList, DTableDataListOptions } from \"./d-table-data-list\";\nimport { DTableDataSelectionType } from \"./d-table-data-selection\";\nimport { DTableHeader, DTableHeaderOptions } from \"./d-table-header\";\nimport { DTableRow } from \"./d-table-row\";\nimport { isArray } from \"./util/is-array\";\nimport { UtilKeyboardEvent } from \"./util/util-keyboard-event\";\nimport { UtilPointerEvent } from \"./util/util-pointer-event\";\nimport { DTableScrollBar } from \"./d-table-scrollbar\";\nimport { DPaneScrollBarOptions } from \"./d-pane-scrollbar\";\nimport { DTableColumnContainer } from \"./d-table-column-container\";\nimport { DTableColumnContainerImpl } from \"./d-table-column-container-impl\";\nimport { DTableCategoryContainer } from \"./d-table-category-container\";\nimport { DTableCategoryContainerImpl } from \"./d-table-category-container-impl\";\n\nexport interface DTableOptions<\n\tROW,\n\tDATA extends DTableData<ROW> = DTableDataList<ROW>,\n\tTHEME extends DThemeTable = DThemeTable,\n\tCONTENT_OPTIONS extends DBaseOptions = DContentOptions\n> extends DPaneOptions<THEME, CONTENT_OPTIONS> {\n\tcolumns: DTableColumnOptions<ROW>[];\n\tcategory?: DTableCategoryOptions;\n\theader?: DTableHeaderOptions<ROW>;\n\tbody?: DTableBodyOptions<ROW, DATA>;\n\tdata?: ROW[] | DTableDataListOptions<ROW> | DATA;\n}\n\nexport interface DThemeTable extends DThemePane {}\n\nexport class DTable<\n\tROW,\n\tDATA extends DTableData<ROW> = DTableDataList<ROW>,\n\tTHEME extends DThemeTable = DThemeTable,\n\tCONTENT_OPTIONS extends DBaseOptions = DContentOptions,\n\tOPTIONS extends DTableOptions<ROW, DATA, THEME, CONTENT_OPTIONS> = DTableOptions<\n\t\tROW,\n\t\tDATA,\n\t\tTHEME,\n\t\tCONTENT_OPTIONS\n\t>\n> extends DPane<THEME, CONTENT_OPTIONS, OPTIONS> {\n\tprotected _column?: DTableColumnContainer<ROW>;\n\tprotected _category?: DTableCategoryContainer;\n\tprotected _headerOffset?: number;\n\tprotected _header?: DTableHeader<ROW> | null;\n\tprotected _bodyOffset?: number;\n\tprotected _body?: DTableBody<ROW, DATA>;\n\n\tconstructor(options?: OPTIONS) {\n\t\tsuper(options);\n\n\t\tconst content = this.content;\n\t\tconst body = this.body;\n\t\tcontent.addChild(body);\n\t\tif (body.data.selection.type !== DTableDataSelectionType.NONE) {\n\t\t\tthis.on(UtilPointerEvent.tap, (e: InteractionEvent): void => {\n\t\t\t\tbody.onRowClick(e);\n\t\t\t});\n\t\t}\n\n\t\tconst header = this.header;\n\t\tif (header) {\n\t\t\tcontent.addChild(header);\n\t\t}\n\n\t\tconst categories = this.categories;\n\t\tfor (let i = categories.length - 1; 0 <= i; --i) {\n\t\t\tcontent.addChild(categories[i]);\n\t\t}\n\n\t\tbody.update();\n\t}\n\n\tget column(): DTableColumnContainer<ROW> {\n\t\treturn (this._column ??= this.newColumn());\n\t}\n\n\tprotected newColumn(): DTableColumnContainer<ROW> {\n\t\treturn new DTableColumnContainerImpl<ROW>(this, this._options?.columns);\n\t}\n\n\tget columns(): DTableColumn<ROW>[] {\n\t\treturn this.column.items;\n\t}\n\n\tget frozen(): number {\n\t\treturn this.column.frozen;\n\t}\n\n\tget category(): DTableCategoryContainer {\n\t\treturn (this._category = this.newCategory());\n\t}\n\n\tprotected newCategory(): DTableCategoryContainer {\n\t\tconst column = this.column;\n\t\treturn new DTableCategoryContainerImpl(\n\t\t\tcolumn.items,\n\t\t\tcolumn.frozen,\n\t\t\tthis._options?.category\n\t\t);\n\t}\n\n\tget categories(): DTableCategory[] {\n\t\treturn this.category.items;\n\t}\n\n\tprotected initContent(content: DBase): void {\n\t\tsuper.initContent(content);\n\t\tcontent.state.isFocusReverse = true;\n\t}\n\n\tprotected onContentChange(): void {\n\t\tsuper.onContentChange();\n\t\tthis.body.update();\n\t}\n\n\tonResize(newWidth: number, newHeight: number, oldWidth: number, oldHeight: number): void {\n\t\tconst scrollbar = this.scrollbar;\n\t\tscrollbar.lock();\n\n\t\tconst body = this.body;\n\t\tbody.lock();\n\t\tsuper.onResize(newWidth, newHeight, oldWidth, oldHeight);\n\t\tbody.update();\n\t\tbody.unlock(true);\n\n\t\tscrollbar.unlock(true);\n\t}\n\n\tprotected onDblClick(\n\t\te: MouseEvent | TouchEvent,\n\t\tinteractionManager: InteractionManager\n\t): boolean {\n\t\tconst result = this.body.onDblClick(e, interactionManager);\n\t\treturn super.onDblClick(e, interactionManager) || result;\n\t}\n\n\tprotected newScrollBar(options?: DPaneScrollBarOptions): DTableScrollBar {\n\t\treturn new DTableScrollBar(this, options, (isRegionVisible: boolean): void => {\n\t\t\tthis.onScrollBarUpdate(isRegionVisible);\n\t\t});\n\t}\n\n\tprotected newContent(options?: CONTENT_OPTIONS): DBase {\n\t\tconst result = super.newContent(options);\n\n\t\t// X & Width\n\t\tconst column = this.column;\n\t\tlet columnWidth = column.width;\n\t\tif (0 < columnWidth) {\n\t\t\tcolumn.on(\"resize\", () => {\n\t\t\t\tcolumnWidth = column.width;\n\t\t\t\tconst parentWidth = this.width;\n\t\t\t\tconst parentHeight = this.height;\n\t\t\t\tconst newWidth = Math.max(parentWidth, columnWidth);\n\t\t\t\tconst newXMin = parentWidth - newWidth;\n\n\t\t\t\t// The X position must be in [newXMin, 0].\n\t\t\t\tif (result.x < newXMin) {\n\t\t\t\t\tresult.x = newXMin;\n\t\t\t\t}\n\n\t\t\t\t// Force the with reevaluated\n\t\t\t\tresult.onParentResize(parentWidth, parentHeight, this.padding);\n\t\t\t});\n\t\t\tresult.setWidth((p) => {\n\t\t\t\treturn Math.max(p, columnWidth);\n\t\t\t});\n\t\t} else {\n\t\t\tresult.setWidth(\"100%\");\n\t\t}\n\n\t\t// Done\n\t\treturn result;\n\t}\n\n\tprotected getHeaderOffset(): number {\n\t\tlet result = this._headerOffset;\n\t\tif (result == null) {\n\t\t\tresult = this.newHeaderOffset();\n\t\t\tthis._headerOffset = result;\n\t\t}\n\t\treturn result;\n\t}\n\n\tprotected newHeaderOffset(): number {\n\t\tlet result = 0;\n\t\tconst categories = this.categories;\n\t\tfor (let i = 0, imax = categories.length; i < imax; ++i) {\n\t\t\tresult += categories[i].height;\n\t\t}\n\t\treturn result;\n\t}\n\n\tget header(): DTableHeader<ROW> | null {\n\t\tlet result = this._header;\n\t\tif (result === undefined) {\n\t\t\tresult = this.newHeader();\n\t\t\tthis._header = result;\n\t\t}\n\t\treturn result;\n\t}\n\n\tprotected hasHeader(options?: OPTIONS): boolean {\n\t\tif (options) {\n\t\t\tconst columns = options.columns;\n\t\t\tfor (let i = 0, imax = columns.length; i < imax; ++i) {\n\t\t\t\tif (columns[i].label != null) {\n\t\t\t\t\treturn true;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\treturn false;\n\t}\n\n\tprotected newHeader(): DTableHeader<ROW> | null {\n\t\tconst options = this._options;\n\t\tif (this.hasHeader(options)) {\n\t\t\tconst column = this.column;\n\t\t\treturn new DTableHeader<ROW>(\n\t\t\t\tthis,\n\t\t\t\tcolumn.items,\n\t\t\t\tcolumn.frozen,\n\t\t\t\tthis.getHeaderOffset(),\n\t\t\t\toptions?.header\n\t\t\t);\n\t\t}\n\t\treturn null;\n\t}\n\n\tprotected getBodyOffset(): number {\n\t\treturn (this._bodyOffset ??= this.newBodyOffset());\n\t}\n\n\tprotected newBodyOffset(): number {\n\t\treturn this.getHeaderOffset() + (this.header?.height ?? 0);\n\t}\n\n\tget body(): DTableBody<ROW, DATA> {\n\t\treturn (this._body ??= this.newBody());\n\t}\n\n\tprotected newBody(): DTableBody<ROW, DATA> {\n\t\tconst options = this._options;\n\t\tconst column = this.column;\n\t\treturn new DTableBody<ROW, DATA>(\n\t\t\tcolumn.items,\n\t\t\tcolumn.frozen,\n\t\t\tthis.getBodyOffset(),\n\t\t\tthis.toBodyOptions(options?.body, options?.data)\n\t\t);\n\t}\n\n\tprotected toBodyOptions(\n\t\toptions?: DTableBodyOptions<ROW, DATA>,\n\t\tdata?: ROW[] | DTableDataOptions<ROW> | DATA\n\t): DTableBodyOptions<ROW, DATA> {\n\t\tif (options != null) {\n\t\t\tif (options.data === undefined && data !== undefined) {\n\t\t\t\tif (isArray(data)) {\n\t\t\t\t\toptions.data = {\n\t\t\t\t\t\trows: data\n\t\t\t\t\t};\n\t\t\t\t} else {\n\t\t\t\t\toptions.data = data;\n\t\t\t\t}\n\t\t\t}\n\t\t\tif (options.height === undefined && options.weight === undefined) {\n\t\t\t\toptions.weight = 1;\n\t\t\t}\n\t\t\treturn options;\n\t\t}\n\t\tif (isArray(data)) {\n\t\t\treturn {\n\t\t\t\tdata: {\n\t\t\t\t\trows: data\n\t\t\t\t},\n\t\t\t\tweight: 1\n\t\t\t};\n\t\t} else {\n\t\t\treturn {\n\t\t\t\tdata,\n\t\t\t\tweight: 1\n\t\t\t};\n\t\t}\n\t}\n\n\tget data(): DATA {\n\t\treturn this.body.data;\n\t}\n\n\tprotected getFocusedChildClippingRect(\n\t\tfocused: DBase,\n\t\tcontentX: number,\n\t\tcontentY: number,\n\t\tcontentWidth: number,\n\t\tcontentHeight: number,\n\t\twidth: number,\n\t\theight: number,\n\t\tresult: Rectangle\n\t): Rectangle {\n\t\tsuper.getFocusedChildClippingRect(\n\t\t\tfocused,\n\t\t\tcontentX,\n\t\t\tcontentY,\n\t\t\tcontentWidth,\n\t\t\tcontentHeight,\n\t\t\twidth,\n\t\t\theight,\n\t\t\tresult\n\t\t);\n\n\t\tconst cell = this.toCell(focused);\n\t\tif (cell) {\n\t\t\t// X\n\t\t\tconst dx = contentX + this.toFrozenCellX(cell) - result.x;\n\t\t\tif (0 < dx) {\n\t\t\t\tresult.x += dx;\n\t\t\t\tresult.width -= dx;\n\t\t\t}\n\n\t\t\t// Y\n\t\t\tif (cell.parent.parent === this.body) {\n\t\t\t\tconst dy = this.getBodyOffset();\n\t\t\t\tresult.y += dy;\n\t\t\t\tresult.height -= dy;\n\t\t\t}\n\t\t}\n\n\t\t// Done\n\t\treturn result;\n\t}\n\n\tprotected toFrozenCellX(cell: DBase): number {\n\t\tconst frozen = this.frozen;\n\t\tif (0 < frozen) {\n\t\t\tconst cells = cell.parent.children as DBase[];\n\t\t\tconst cellIndex = cells.indexOf(cell);\n\t\t\tif (0 <= cellIndex) {\n\t\t\t\tconst cellsLength = cells.length;\n\t\t\t\tconst columnIndex = cellsLength - 1 - cellIndex;\n\t\t\t\tif (frozen <= columnIndex) {\n\t\t\t\t\tconst cellFrozen = cells[cellsLength - frozen];\n\t\t\t\t\treturn cellFrozen.position.x + cellFrozen.width;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\treturn 0;\n\t}\n\n\tprotected onKeyDown(e: KeyboardEvent): boolean {\n\t\tUtilKeyboardEvent.moveFocusHorizontally(e, this);\n\t\tconst isArrowUpKey = UtilKeyboardEvent.isArrowUpKey(e);\n\t\tconst isArrowDownKey = UtilKeyboardEvent.isArrowDownKey(e);\n\t\tif (isArrowUpKey || isArrowDownKey) {\n\t\t\tthis.onKeyDownArrowUpOrDown(e, isArrowDownKey);\n\t\t}\n\t\treturn super.onKeyDown(e);\n\t}\n\n\tprotected onKeyDownArrowUpOrDown(e: KeyboardEvent, isDown: boolean): boolean {\n\t\tconst layer = DApplications.getLayer(this);\n\t\tif (layer == null) {\n\t\t\treturn false;\n\t\t}\n\n\t\tconst focusController = layer.getFocusController();\n\t\tconst oldFocusable = focusController.get();\n\t\tif (oldFocusable == null) {\n\t\t\treturn false;\n\t\t}\n\n\t\tconst oldCell = this.toCell(oldFocusable);\n\t\tif (oldCell == null) {\n\t\t\treturn false;\n\t\t}\n\n\t\tconst oldRow = oldCell.parent;\n\t\tif (oldRow == null) {\n\t\t\treturn false;\n\t\t}\n\n\t\tconst newRowChild = focusController.find(oldRow, false, false, isDown, this);\n\t\tif (newRowChild == null) {\n\t\t\treturn false;\n\t\t}\n\n\t\tconst newCellSibling = this.toCell(newRowChild);\n\t\tif (newCellSibling == null) {\n\t\t\treturn false;\n\t\t}\n\n\t\tconst newRow = newCellSibling.parent;\n\t\tif (newRow == null) {\n\t\t\treturn false;\n\t\t}\n\n\t\tconst oldCellIndex = oldRow.children.indexOf(oldCell);\n\t\tif (oldCellIndex < 0) {\n\t\t\treturn false;\n\t\t}\n\n\t\tconst newCell = newRow.children[oldCellIndex];\n\t\tif (newCell == null || newCell === oldCell || !(\"state\" in newCell)) {\n\t\t\treturn false;\n\t\t}\n\n\t\tconst newFocusable = focusController.find(newCell, true, true, isDown, this);\n\t\tif (newFocusable == null) {\n\t\t\treturn false;\n\t\t}\n\n\t\tfocusController.focus(newFocusable);\n\t\treturn true;\n\t}\n\n\tprotected toCell(focused: DFocusable): DBase | null {\n\t\tlet current: DFocusable | DFocusableContainer | null = focused;\n\t\twhile (current != null) {\n\t\t\tconst parent: DFocusableContainer | null = current.parent;\n\t\t\tif (parent instanceof DTableRow) {\n\t\t\t\tif (current instanceof DBase) {\n\t\t\t\t\treturn current;\n\t\t\t\t}\n\t\t\t\treturn null;\n\t\t\t}\n\t\t\tcurrent = parent;\n\t\t}\n\t\treturn null;\n\t}\n\n\tprotected getType(): string {\n\t\treturn \"DTable\";\n\t}\n}\n"]}
|
|
1
|
+
{"version":3,"file":"d-table.js","sourceRoot":"","sources":["../../../src/main/typescript/wcardinal/ui/d-table.ts"],"names":[],"mappings":"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","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { InteractionEvent, InteractionManager, Rectangle } from \"pixi.js\";\nimport { DApplications } from \"./d-applications\";\nimport { DBase, DBaseOptions } from \"./d-base\";\nimport { DContentOptions } from \"./d-content\";\nimport { DFocusable, DFocusableContainer } from \"./d-controller-focus\";\nimport { DPane, DPaneOptions, DThemePane } from \"./d-pane\";\nimport { DTableBody, DTableBodyOptions } from \"./d-table-body\";\nimport { DTableCategory, DTableCategoryOptions } from \"./d-table-category\";\nimport { DTableColumn, DTableColumnOptions } from \"./d-table-column\";\nimport { DTableData, DTableDataOptions } from \"./d-table-data\";\nimport { DTableDataList, DTableDataListOptions } from \"./d-table-data-list\";\nimport { DTableDataSelectionType } from \"./d-table-data-selection\";\nimport { DTableHeader, DTableHeaderOptions } from \"./d-table-header\";\nimport { DTableRow } from \"./d-table-row\";\nimport { isArray } from \"./util/is-array\";\nimport { UtilKeyboardEvent } from \"./util/util-keyboard-event\";\nimport { UtilPointerEvent } from \"./util/util-pointer-event\";\nimport { DTableScrollBar } from \"./d-table-scrollbar\";\nimport { DPaneScrollBarOptions } from \"./d-pane-scrollbar\";\nimport { DTableColumnContainer } from \"./d-table-column-container\";\nimport { DTableColumnContainerImpl } from \"./d-table-column-container-impl\";\nimport { DTableCategoryContainer } from \"./d-table-category-container\";\nimport { DTableCategoryContainerImpl } from \"./d-table-category-container-impl\";\n\nexport interface DTableOptions<\n\tROW,\n\tDATA extends DTableData<ROW> = DTableDataList<ROW>,\n\tTHEME extends DThemeTable = DThemeTable,\n\tCONTENT_OPTIONS extends DBaseOptions = DContentOptions\n> extends DPaneOptions<THEME, CONTENT_OPTIONS> {\n\tcolumns: DTableColumnOptions<ROW>[];\n\tcategory?: DTableCategoryOptions;\n\theader?: DTableHeaderOptions<ROW>;\n\tbody?: DTableBodyOptions<ROW, DATA>;\n\tdata?: ROW[] | DTableDataListOptions<ROW> | DATA;\n}\n\nexport interface DThemeTable extends DThemePane {}\n\nexport class DTable<\n\tROW,\n\tDATA extends DTableData<ROW> = DTableDataList<ROW>,\n\tTHEME extends DThemeTable = DThemeTable,\n\tCONTENT_OPTIONS extends DBaseOptions = DContentOptions,\n\tOPTIONS extends DTableOptions<ROW, DATA, THEME, CONTENT_OPTIONS> = DTableOptions<\n\t\tROW,\n\t\tDATA,\n\t\tTHEME,\n\t\tCONTENT_OPTIONS\n\t>\n> extends DPane<THEME, CONTENT_OPTIONS, OPTIONS> {\n\tprotected _column?: DTableColumnContainer<ROW>;\n\tprotected _category?: DTableCategoryContainer;\n\tprotected _headerOffset?: number;\n\tprotected _header?: DTableHeader<ROW> | null;\n\tprotected _bodyOffset?: number;\n\tprotected _body?: DTableBody<ROW, DATA>;\n\n\tconstructor(options?: OPTIONS) {\n\t\tsuper(options);\n\n\t\tconst content = this.content;\n\t\tconst body = this.body;\n\t\tcontent.addChild(body);\n\t\tif (body.data.selection.type !== DTableDataSelectionType.NONE) {\n\t\t\tthis.on(UtilPointerEvent.tap, (e: InteractionEvent): void => {\n\t\t\t\tbody.onRowClick(e);\n\t\t\t});\n\t\t}\n\n\t\tconst header = this.header;\n\t\tif (header) {\n\t\t\tcontent.addChild(header);\n\t\t}\n\n\t\tconst categories = this.categories;\n\t\tfor (let i = categories.length - 1; 0 <= i; --i) {\n\t\t\tcontent.addChild(categories[i]);\n\t\t}\n\n\t\tbody.update();\n\t}\n\n\tget column(): DTableColumnContainer<ROW> {\n\t\treturn (this._column ??= this.newColumn());\n\t}\n\n\tprotected newColumn(): DTableColumnContainer<ROW> {\n\t\treturn new DTableColumnContainerImpl<ROW>(this, this._options?.columns);\n\t}\n\n\tget columns(): DTableColumn<ROW>[] {\n\t\treturn this.column.items;\n\t}\n\n\tget frozen(): number {\n\t\treturn this.column.frozen;\n\t}\n\n\tget category(): DTableCategoryContainer {\n\t\treturn (this._category ??= this.newCategory());\n\t}\n\n\tprotected newCategory(): DTableCategoryContainer {\n\t\tconst column = this.column;\n\t\treturn new DTableCategoryContainerImpl(\n\t\t\tcolumn.items,\n\t\t\tcolumn.frozen,\n\t\t\tthis._options?.category\n\t\t);\n\t}\n\n\tget categories(): DTableCategory[] {\n\t\treturn this.category.items;\n\t}\n\n\tprotected initContent(content: DBase): void {\n\t\tsuper.initContent(content);\n\t\tcontent.state.isFocusReverse = true;\n\t}\n\n\tprotected onContentChange(): void {\n\t\tsuper.onContentChange();\n\t\tthis.body.update();\n\t}\n\n\tonResize(newWidth: number, newHeight: number, oldWidth: number, oldHeight: number): void {\n\t\tconst scrollbar = this.scrollbar;\n\t\tscrollbar.lock();\n\n\t\tconst body = this.body;\n\t\tbody.lock();\n\t\tsuper.onResize(newWidth, newHeight, oldWidth, oldHeight);\n\t\tbody.update();\n\t\tbody.unlock(true);\n\n\t\tscrollbar.unlock(true);\n\t}\n\n\tprotected onDblClick(\n\t\te: MouseEvent | TouchEvent,\n\t\tinteractionManager: InteractionManager\n\t): boolean {\n\t\tconst result = this.body.onDblClick(e, interactionManager);\n\t\treturn super.onDblClick(e, interactionManager) || result;\n\t}\n\n\tprotected newScrollBar(options?: DPaneScrollBarOptions): DTableScrollBar {\n\t\treturn new DTableScrollBar(this, options, (isRegionVisible: boolean): void => {\n\t\t\tthis.onScrollBarUpdate(isRegionVisible);\n\t\t});\n\t}\n\n\tprotected newContent(options?: CONTENT_OPTIONS): DBase {\n\t\tconst result = super.newContent(options);\n\n\t\t// X & Width\n\t\tconst column = this.column;\n\t\tlet columnWidth = column.width;\n\t\tif (0 < columnWidth) {\n\t\t\tcolumn.on(\"resize\", () => {\n\t\t\t\tcolumnWidth = column.width;\n\t\t\t\tconst parentWidth = this.width;\n\t\t\t\tconst parentHeight = this.height;\n\t\t\t\tconst newWidth = Math.max(parentWidth, columnWidth);\n\t\t\t\tconst newXMin = parentWidth - newWidth;\n\n\t\t\t\t// The X position must be in [newXMin, 0].\n\t\t\t\tif (result.x < newXMin) {\n\t\t\t\t\tresult.x = newXMin;\n\t\t\t\t}\n\n\t\t\t\t// Force the with reevaluated\n\t\t\t\tresult.onParentResize(parentWidth, parentHeight, this.padding);\n\t\t\t});\n\t\t\tresult.setWidth((p) => {\n\t\t\t\treturn Math.max(p, columnWidth);\n\t\t\t});\n\t\t} else {\n\t\t\tresult.setWidth(\"100%\");\n\t\t}\n\n\t\t// Done\n\t\treturn result;\n\t}\n\n\tprotected getHeaderOffset(): number {\n\t\tlet result = this._headerOffset;\n\t\tif (result == null) {\n\t\t\tresult = this.newHeaderOffset();\n\t\t\tthis._headerOffset = result;\n\t\t}\n\t\treturn result;\n\t}\n\n\tprotected newHeaderOffset(): number {\n\t\tlet result = 0;\n\t\tconst categories = this.categories;\n\t\tfor (let i = 0, imax = categories.length; i < imax; ++i) {\n\t\t\tresult += categories[i].height;\n\t\t}\n\t\treturn result;\n\t}\n\n\tget header(): DTableHeader<ROW> | null {\n\t\tlet result = this._header;\n\t\tif (result === undefined) {\n\t\t\tresult = this.newHeader();\n\t\t\tthis._header = result;\n\t\t}\n\t\treturn result;\n\t}\n\n\tprotected hasHeader(options?: OPTIONS): boolean {\n\t\tif (options) {\n\t\t\tconst columns = options.columns;\n\t\t\tfor (let i = 0, imax = columns.length; i < imax; ++i) {\n\t\t\t\tif (columns[i].label != null) {\n\t\t\t\t\treturn true;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\treturn false;\n\t}\n\n\tprotected newHeader(): DTableHeader<ROW> | null {\n\t\tconst options = this._options;\n\t\tif (this.hasHeader(options)) {\n\t\t\tconst column = this.column;\n\t\t\treturn new DTableHeader<ROW>(\n\t\t\t\tthis,\n\t\t\t\tcolumn.items,\n\t\t\t\tcolumn.frozen,\n\t\t\t\tthis.getHeaderOffset(),\n\t\t\t\toptions?.header\n\t\t\t);\n\t\t}\n\t\treturn null;\n\t}\n\n\tprotected getBodyOffset(): number {\n\t\treturn (this._bodyOffset ??= this.newBodyOffset());\n\t}\n\n\tprotected newBodyOffset(): number {\n\t\treturn this.getHeaderOffset() + (this.header?.height ?? 0);\n\t}\n\n\tget body(): DTableBody<ROW, DATA> {\n\t\treturn (this._body ??= this.newBody());\n\t}\n\n\tprotected newBody(): DTableBody<ROW, DATA> {\n\t\tconst options = this._options;\n\t\tconst column = this.column;\n\t\treturn new DTableBody<ROW, DATA>(\n\t\t\tcolumn.items,\n\t\t\tcolumn.frozen,\n\t\t\tthis.getBodyOffset(),\n\t\t\tthis.toBodyOptions(options?.body, options?.data)\n\t\t);\n\t}\n\n\tprotected toBodyOptions(\n\t\toptions?: DTableBodyOptions<ROW, DATA>,\n\t\tdata?: ROW[] | DTableDataOptions<ROW> | DATA\n\t): DTableBodyOptions<ROW, DATA> {\n\t\tif (options != null) {\n\t\t\tif (options.data === undefined && data !== undefined) {\n\t\t\t\tif (isArray(data)) {\n\t\t\t\t\toptions.data = {\n\t\t\t\t\t\trows: data\n\t\t\t\t\t};\n\t\t\t\t} else {\n\t\t\t\t\toptions.data = data;\n\t\t\t\t}\n\t\t\t}\n\t\t\tif (options.height === undefined && options.weight === undefined) {\n\t\t\t\toptions.weight = 1;\n\t\t\t}\n\t\t\treturn options;\n\t\t}\n\t\tif (isArray(data)) {\n\t\t\treturn {\n\t\t\t\tdata: {\n\t\t\t\t\trows: data\n\t\t\t\t},\n\t\t\t\tweight: 1\n\t\t\t};\n\t\t} else {\n\t\t\treturn {\n\t\t\t\tdata,\n\t\t\t\tweight: 1\n\t\t\t};\n\t\t}\n\t}\n\n\tget data(): DATA {\n\t\treturn this.body.data;\n\t}\n\n\tprotected getFocusedChildClippingRect(\n\t\tfocused: DBase,\n\t\tcontentX: number,\n\t\tcontentY: number,\n\t\tcontentWidth: number,\n\t\tcontentHeight: number,\n\t\twidth: number,\n\t\theight: number,\n\t\tresult: Rectangle\n\t): Rectangle {\n\t\tsuper.getFocusedChildClippingRect(\n\t\t\tfocused,\n\t\t\tcontentX,\n\t\t\tcontentY,\n\t\t\tcontentWidth,\n\t\t\tcontentHeight,\n\t\t\twidth,\n\t\t\theight,\n\t\t\tresult\n\t\t);\n\n\t\tconst cell = this.toCell(focused);\n\t\tif (cell) {\n\t\t\t// X\n\t\t\tconst dx = contentX + this.toFrozenCellX(cell) - result.x;\n\t\t\tif (0 < dx) {\n\t\t\t\tresult.x += dx;\n\t\t\t\tresult.width -= dx;\n\t\t\t}\n\n\t\t\t// Y\n\t\t\tif (cell.parent.parent === this.body) {\n\t\t\t\tconst dy = this.getBodyOffset();\n\t\t\t\tresult.y += dy;\n\t\t\t\tresult.height -= dy;\n\t\t\t}\n\t\t}\n\n\t\t// Done\n\t\treturn result;\n\t}\n\n\tprotected toFrozenCellX(cell: DBase): number {\n\t\tconst frozen = this.frozen;\n\t\tif (0 < frozen) {\n\t\t\tconst cells = cell.parent.children as DBase[];\n\t\t\tconst cellIndex = cells.indexOf(cell);\n\t\t\tif (0 <= cellIndex) {\n\t\t\t\tconst cellsLength = cells.length;\n\t\t\t\tconst columnIndex = cellsLength - 1 - cellIndex;\n\t\t\t\tif (frozen <= columnIndex) {\n\t\t\t\t\tconst cellFrozen = cells[cellsLength - frozen];\n\t\t\t\t\treturn cellFrozen.position.x + cellFrozen.width;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\treturn 0;\n\t}\n\n\tprotected onKeyDown(e: KeyboardEvent): boolean {\n\t\tUtilKeyboardEvent.moveFocusHorizontally(e, this);\n\t\tconst isArrowUpKey = UtilKeyboardEvent.isArrowUpKey(e);\n\t\tconst isArrowDownKey = UtilKeyboardEvent.isArrowDownKey(e);\n\t\tif (isArrowUpKey || isArrowDownKey) {\n\t\t\tthis.onKeyDownArrowUpOrDown(e, isArrowDownKey);\n\t\t}\n\t\treturn super.onKeyDown(e);\n\t}\n\n\tprotected onKeyDownArrowUpOrDown(e: KeyboardEvent, isDown: boolean): boolean {\n\t\tconst layer = DApplications.getLayer(this);\n\t\tif (layer == null) {\n\t\t\treturn false;\n\t\t}\n\n\t\tconst focusController = layer.getFocusController();\n\t\tconst oldFocusable = focusController.get();\n\t\tif (oldFocusable == null) {\n\t\t\treturn false;\n\t\t}\n\n\t\tconst oldCell = this.toCell(oldFocusable);\n\t\tif (oldCell == null) {\n\t\t\treturn false;\n\t\t}\n\n\t\tconst oldRow = oldCell.parent;\n\t\tif (oldRow == null) {\n\t\t\treturn false;\n\t\t}\n\n\t\tconst newRowChild = focusController.find(oldRow, false, false, isDown, this);\n\t\tif (newRowChild == null) {\n\t\t\treturn false;\n\t\t}\n\n\t\tconst newCellSibling = this.toCell(newRowChild);\n\t\tif (newCellSibling == null) {\n\t\t\treturn false;\n\t\t}\n\n\t\tconst newRow = newCellSibling.parent;\n\t\tif (newRow == null) {\n\t\t\treturn false;\n\t\t}\n\n\t\tconst oldCellIndex = oldRow.children.indexOf(oldCell);\n\t\tif (oldCellIndex < 0) {\n\t\t\treturn false;\n\t\t}\n\n\t\tconst newCell = newRow.children[oldCellIndex];\n\t\tif (newCell == null || newCell === oldCell || !(\"state\" in newCell)) {\n\t\t\treturn false;\n\t\t}\n\n\t\tconst newFocusable = focusController.find(newCell, true, true, isDown, this);\n\t\tif (newFocusable == null) {\n\t\t\treturn false;\n\t\t}\n\n\t\tfocusController.focus(newFocusable);\n\t\treturn true;\n\t}\n\n\tprotected toCell(focused: DFocusable): DBase | null {\n\t\tlet current: DFocusable | DFocusableContainer | null = focused;\n\t\twhile (current != null) {\n\t\t\tconst parent: DFocusableContainer | null = current.parent;\n\t\t\tif (parent instanceof DTableRow) {\n\t\t\t\tif (current instanceof DBase) {\n\t\t\t\t\treturn current;\n\t\t\t\t}\n\t\t\t\treturn null;\n\t\t\t}\n\t\t\tcurrent = parent;\n\t\t}\n\t\treturn null;\n\t}\n\n\tprotected getType(): string {\n\t\treturn \"DTable\";\n\t}\n}\n"]}
|
|
@@ -731,6 +731,7 @@ var EShapeBase = /** @class */ (function (_super) {
|
|
|
731
731
|
if (part & EShapeCopyPart.ACTION) {
|
|
732
732
|
this.action.clearAndAddAll(source.action.values);
|
|
733
733
|
this.interactive = source.interactive;
|
|
734
|
+
this.title = source.title;
|
|
734
735
|
this.cursor = source.cursor;
|
|
735
736
|
this.shortcut = source.shortcut;
|
|
736
737
|
}
|