@wcardinal/wcardinal-ui 0.368.0 → 0.370.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-application-layer-options.d.ts +26 -0
- package/dist/types/wcardinal/ui/d-table-data-list.d.ts +2 -2
- package/dist/types/wcardinal/ui/d-table-data-tree.d.ts +2 -0
- package/dist/types/wcardinal/ui/d-table-data.d.ts +5 -0
- package/dist/types/wcardinal/ui/util/util-attach.d.ts +1 -0
- package/dist/wcardinal/ui/d-application-layer-options.js +36 -0
- package/dist/wcardinal/ui/d-application-layer-options.js.map +1 -1
- package/dist/wcardinal/ui/d-application-layer.js +20 -9
- package/dist/wcardinal/ui/d-application-layer.js.map +1 -1
- package/dist/wcardinal/ui/d-dialog.js +3 -0
- package/dist/wcardinal/ui/d-dialog.js.map +1 -1
- package/dist/wcardinal/ui/d-table-data-list.js +22 -14
- package/dist/wcardinal/ui/d-table-data-list.js.map +1 -1
- package/dist/wcardinal/ui/d-table-data-tree.js +12 -0
- package/dist/wcardinal/ui/d-table-data-tree.js.map +1 -1
- package/dist/wcardinal/ui/d-table-data.js.map +1 -1
- package/dist/wcardinal/ui/util/util-attach.js +5 -1
- package/dist/wcardinal/ui/util/util-attach.js.map +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.js +1 -1
- package/dist/wcardinal-ui-theme-white.min.js +1 -1
- package/dist/wcardinal-ui.cjs.js +99 -25
- package/dist/wcardinal-ui.js +99 -25
- package/dist/wcardinal-ui.min.js +2 -2
- package/dist/wcardinal-ui.min.js.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"d-table-data-list.js","sourceRoot":"","sources":["../../../src/main/typescript/wcardinal/ui/d-table-data-list.ts"],"names":[],"mappings":"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","sourcesContent":["import { utils } from \"pixi.js\";\nimport { DTableData, DTableDataMapped, DTableDataOptions, DTableDataParent } from \"./d-table-data\";\nimport { DTableDataFilter } from \"./d-table-data-filter\";\nimport { DTableDataListFilter } from \"./d-table-data-list-filter\";\nimport { DTableDataListMapped } from \"./d-table-data-list-mapped\";\nimport {\n\tDTableDataSelection,\n\tDTableDataSelectionCreator,\n\tDTableDataSelectionOptions\n} from \"./d-table-data-selection\";\nimport { DTableDataListSelection } from \"./d-table-data-list-selection\";\nimport { DTableDataSorter } from \"./d-table-data-sorter\";\nimport { DTableDataListSorter } from \"./d-table-data-list-sorter\";\nimport { isFunction } from \"./util/is-function\";\n\nexport interface DTableDataListOptions<ROW> extends DTableDataOptions<ROW> {\n\trows?: ROW[];\n}\n\nexport class DTableDataList<ROW> extends utils.EventEmitter implements DTableData<ROW> {\n\tprotected _parent: DTableDataParent | null;\n\tprotected _rows: ROW[];\n\tprotected _filter: DTableDataListFilter<ROW>;\n\tprotected _sorter: DTableDataListSorter<ROW>;\n\tprotected _selection: DTableDataSelection<ROW>;\n\tprotected _mapped: DTableDataMapped<ROW>;\n\n\tconstructor(options?: DTableDataListOptions<ROW>) {\n\t\tsuper();\n\n\t\tthis._parent = null;\n\t\tthis._rows = this.toRows(options?.rows);\n\t\tthis._mapped = new DTableDataListMapped<ROW>(this);\n\t\tthis._selection = this.toSelection(options?.selection);\n\t\tthis._filter = new DTableDataListFilter<ROW>(this);\n\t\tthis._sorter = new DTableDataListSorter<ROW>(this);\n\t\tif (options) {\n\t\t\t// Filter\n\t\t\tconst filter = options.filter;\n\t\t\tif (filter) {\n\t\t\t\tthis._filter.set(filter);\n\t\t\t}\n\n\t\t\t// Comparator\n\t\t\tconst comparator = options.comparator;\n\t\t\tif (comparator) {\n\t\t\t\tthis._sorter.set(comparator);\n\t\t\t}\n\n\t\t\t// Events\n\t\t\tconst on = options.on;\n\t\t\tif (on) {\n\t\t\t\tfor (const name in on) {\n\t\t\t\t\tconst handler = on[name];\n\t\t\t\t\tif (handler) {\n\t\t\t\t\t\tthis.on(name, handler);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\tprotected toSelection(\n\t\toptions?:\n\t\t\t| DTableDataSelection<ROW>\n\t\t\t| DTableDataSelectionCreator<ROW>\n\t\t\t| DTableDataSelectionOptions\n\t): DTableDataSelection<ROW> {\n\t\tif (options instanceof utils.EventEmitter) {\n\t\t\treturn options;\n\t\t} else if (isFunction(options)) {\n\t\t\treturn options(this);\n\t\t}\n\t\treturn this.newSelection(options);\n\t}\n\n\tprotected newSelection(options?: DTableDataSelectionOptions): DTableDataSelection<ROW> {\n\t\treturn new DTableDataListSelection(this, options);\n\t}\n\n\tbind(parent: DTableDataParent): void {\n\t\tthis._parent = parent;\n\t}\n\n\tprotected toRows(row?: ROW[]): ROW[] {\n\t\tconst result: ROW[] = [];\n\t\tif (row != null) {\n\t\t\tfor (let i = 0, imax = row.length; i < imax; ++i) {\n\t\t\t\tresult.push(row[i]);\n\t\t\t}\n\t\t}\n\t\treturn result;\n\t}\n\n\tget rows(): ROW[] {\n\t\treturn this._rows;\n\t}\n\n\tupdate(): void {\n\t\tconst parent = this._parent;\n\t\tif (parent) {\n\t\t\tparent.update();\n\t\t}\n\t}\n\n\tlock(): void {\n\t\tconst parent = this._parent;\n\t\tif (parent) {\n\t\t\tparent.lock();\n\t\t}\n\t}\n\n\tunlock(): void {\n\t\tconst parent = this._parent;\n\t\tif (parent) {\n\t\t\tparent.unlock(false);\n\t\t\tparent.update();\n\t\t}\n\t}\n\n\tsize(): number {\n\t\treturn this._rows.length;\n\t}\n\n\tclear(): void {\n\t\tconst rows = this._rows;\n\t\tif (0 < rows.length) {\n\t\t\trows.length = 0;\n\t\t\tthis.lock();\n\t\t\tthis._selection.clear();\n\t\t\tthis._sorter.toDirty();\n\t\t\tthis._filter.toDirty();\n\t\t\tthis.unlock();\n\t\t}\n\t}\n\n\tclearAndAdd(row: ROW): void {\n\t\tconst rows = this._rows;\n\t\trows.length = 0;\n\t\trows.push(row);\n\t\tthis.lock();\n\t\tthis._selection.clear();\n\t\tthis._sorter.toDirty();\n\t\tthis._filter.toDirty();\n\t\tthis.unlock();\n\t}\n\n\tclearAndAddAll(newRows: ROW[]): void {\n\t\tconst rows = this._rows;\n\t\trows.length = 0;\n\t\tfor (let i = 0, imax = newRows.length; i < imax; ++i) {\n\t\t\trows.push(newRows[i]);\n\t\t}\n\t\tthis.lock();\n\t\tthis._selection.clear();\n\t\tthis._sorter.toDirty();\n\t\tthis._filter.toDirty();\n\t\tthis.unlock();\n\t}\n\n\tadd(row: ROW, index?: number): void {\n\t\tconst rows = this._rows;\n\t\tconst selection = this._selection;\n\t\tconst sorter = this._sorter;\n\t\tconst filter = this._filter;\n\t\tif (index == null) {\n\t\t\trows.push(row);\n\t\t\tthis.lock();\n\t\t\tsorter.toDirty();\n\t\t\tfilter.toDirty();\n\t\t\tthis.unlock();\n\t\t} else if (0 <= index && index < rows.length) {\n\t\t\trows.splice(index, 0, row);\n\t\t\tthis.lock();\n\t\t\tselection.shift(index, 1);\n\t\t\tsorter.toDirty();\n\t\t\tfilter.toDirty();\n\t\t\tthis.unlock();\n\t\t}\n\t}\n\n\taddAll(newRows: ROW[], index?: number): void {\n\t\tconst rows = this._rows;\n\t\tconst rowsLength = rows.length;\n\t\tconst selection = this._selection;\n\t\tconst sorter = this._sorter;\n\t\tconst filter = this._filter;\n\t\tif (index == null) {\n\t\t\tconst newRowsLength = newRows.length;\n\t\t\tfor (let i = 0, imax = newRowsLength; i < imax; ++i) {\n\t\t\t\trows.push(newRows[i]);\n\t\t\t}\n\t\t\tthis.lock();\n\t\t\tsorter.toDirty();\n\t\t\tfilter.toDirty();\n\t\t\tthis.unlock();\n\t\t} else if (0 <= index && index < rowsLength) {\n\t\t\tconst newRowsLength = newRows.length;\n\t\t\tfor (let i = 0; i < newRowsLength; ++i) {\n\t\t\t\trows.splice(index + i, 0, newRows[i]);\n\t\t\t}\n\t\t\tthis.lock();\n\t\t\tselection.shift(index, newRowsLength);\n\t\t\tsorter.toDirty();\n\t\t\tfilter.toDirty();\n\t\t\tthis.unlock();\n\t\t}\n\t}\n\n\tget(index: number): ROW | null {\n\t\tconst rows = this._rows;\n\t\tif (0 <= index && index < rows.length) {\n\t\t\treturn rows[index];\n\t\t}\n\t\treturn null;\n\t}\n\n\tset(index: number, row: ROW): ROW | null {\n\t\tconst rows = this._rows;\n\t\tif (0 <= index && index < rows.length) {\n\t\t\tconst result = rows[index];\n\t\t\trows[index] = row;\n\t\t\tthis.lock();\n\t\t\tthis._sorter.toDirty();\n\t\t\tthis._filter.toDirty();\n\t\t\tthis.unlock();\n\t\t\treturn result;\n\t\t}\n\t\treturn null;\n\t}\n\n\tremove(index: number): ROW | null {\n\t\tconst rows = this._rows;\n\t\tif (0 <= index && index < rows.length) {\n\t\t\tconst result = rows.splice(index, 1)[0];\n\t\t\tthis.lock();\n\t\t\tthis._selection.remove(index);\n\t\t\tthis._sorter.toDirty();\n\t\t\tthis._filter.toDirty();\n\t\t\tthis.unlock();\n\t\t\treturn result;\n\t\t}\n\t\treturn null;\n\t}\n\n\teach(\n\t\titeratee: (row: ROW, index: number) => boolean | void,\n\t\tifrom?: number,\n\t\tito?: number\n\t): void {\n\t\tconst rows = this._rows;\n\t\tifrom = ifrom != null ? Math.max(0, ifrom) : 0;\n\t\tito = ito != null ? Math.min(rows.length, ito) : rows.length;\n\t\tfor (let i = ifrom; i < ito; ++i) {\n\t\t\tconst row = rows[i];\n\t\t\tif (iteratee(row, i) === false) {\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t}\n\n\tget selection(): DTableDataSelection<ROW> {\n\t\treturn this._selection;\n\t}\n\n\tget filter(): DTableDataFilter<ROW> {\n\t\treturn this._filter;\n\t}\n\n\tget sorter(): DTableDataSorter<ROW> {\n\t\treturn this._sorter;\n\t}\n\n\tget mapped(): DTableDataMapped<ROW> {\n\t\treturn this._mapped;\n\t}\n}\n"]}
|
|
1
|
+
{"version":3,"file":"d-table-data-list.js","sourceRoot":"","sources":["../../../src/main/typescript/wcardinal/ui/d-table-data-list.ts"],"names":[],"mappings":"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","sourcesContent":["import { utils } from \"pixi.js\";\nimport { DTableData, DTableDataMapped, DTableDataOptions, DTableDataParent } from \"./d-table-data\";\nimport { DTableDataFilter } from \"./d-table-data-filter\";\nimport { DTableDataListFilter } from \"./d-table-data-list-filter\";\nimport { DTableDataListMapped } from \"./d-table-data-list-mapped\";\nimport {\n\tDTableDataSelection,\n\tDTableDataSelectionCreator,\n\tDTableDataSelectionOptions\n} from \"./d-table-data-selection\";\nimport { DTableDataListSelection } from \"./d-table-data-list-selection\";\nimport { DTableDataSorter } from \"./d-table-data-sorter\";\nimport { DTableDataListSorter } from \"./d-table-data-list-sorter\";\nimport { isFunction } from \"./util/is-function\";\n\nexport interface DTableDataListOptions<ROW> extends DTableDataOptions<ROW> {\n\trows?: ROW[];\n}\n\nexport class DTableDataList<ROW> extends utils.EventEmitter implements DTableData<ROW> {\n\tprotected _parent: DTableDataParent | null;\n\tprotected _rows: ROW[];\n\tprotected _filter: DTableDataListFilter<ROW>;\n\tprotected _sorter: DTableDataListSorter<ROW>;\n\tprotected _selection: DTableDataSelection<ROW>;\n\tprotected _mapped: DTableDataMapped<ROW>;\n\n\tconstructor(options?: DTableDataListOptions<ROW>) {\n\t\tsuper();\n\n\t\tthis._parent = null;\n\t\tthis._rows = this.toRows(options?.rows);\n\t\tthis._mapped = new DTableDataListMapped<ROW>(this);\n\t\tthis._selection = this.toSelection(options?.selection);\n\t\tthis._filter = new DTableDataListFilter<ROW>(this);\n\t\tthis._sorter = new DTableDataListSorter<ROW>(this);\n\t\tif (options) {\n\t\t\t// Filter\n\t\t\tconst filter = options.filter;\n\t\t\tif (filter) {\n\t\t\t\tthis._filter.set(filter);\n\t\t\t}\n\n\t\t\t// Comparator\n\t\t\tconst comparator = options.comparator;\n\t\t\tif (comparator) {\n\t\t\t\tthis._sorter.set(comparator);\n\t\t\t}\n\n\t\t\t// Events\n\t\t\tconst on = options.on;\n\t\t\tif (on) {\n\t\t\t\tfor (const name in on) {\n\t\t\t\t\tconst handler = on[name];\n\t\t\t\t\tif (handler) {\n\t\t\t\t\t\tthis.on(name, handler);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\tprotected toSelection(\n\t\toptions?:\n\t\t\t| DTableDataSelection<ROW>\n\t\t\t| DTableDataSelectionCreator<ROW>\n\t\t\t| DTableDataSelectionOptions\n\t): DTableDataSelection<ROW> {\n\t\tif (options instanceof utils.EventEmitter) {\n\t\t\treturn options;\n\t\t} else if (isFunction(options)) {\n\t\t\treturn options(this);\n\t\t}\n\t\treturn this.newSelection(options);\n\t}\n\n\tprotected newSelection(options?: DTableDataSelectionOptions): DTableDataSelection<ROW> {\n\t\treturn new DTableDataListSelection(this, options);\n\t}\n\n\tbind(parent: DTableDataParent): void {\n\t\tthis._parent = parent;\n\t}\n\n\tprotected toRows(row?: ROW[]): ROW[] {\n\t\tconst result: ROW[] = [];\n\t\tif (row != null) {\n\t\t\tfor (let i = 0, imax = row.length; i < imax; ++i) {\n\t\t\t\tresult.push(row[i]);\n\t\t\t}\n\t\t}\n\t\treturn result;\n\t}\n\n\tget rows(): ROW[] {\n\t\treturn this._rows;\n\t}\n\n\tupdate(forcibly?: boolean): void {\n\t\tconst parent = this._parent;\n\t\tif (parent) {\n\t\t\tparent.update(forcibly);\n\t\t}\n\t}\n\n\tlock(): void {\n\t\tconst parent = this._parent;\n\t\tif (parent) {\n\t\t\tparent.lock();\n\t\t}\n\t}\n\n\tunlock(callIfNeeded: boolean): void {\n\t\tconst parent = this._parent;\n\t\tif (parent) {\n\t\t\tparent.unlock(callIfNeeded);\n\t\t}\n\t}\n\n\tsize(): number {\n\t\treturn this._rows.length;\n\t}\n\n\tclear(): void {\n\t\tconst rows = this._rows;\n\t\tif (0 < rows.length) {\n\t\t\trows.length = 0;\n\t\t\tthis.lock();\n\t\t\tthis._selection.clear();\n\t\t\tthis._sorter.toDirty();\n\t\t\tthis._filter.toDirty();\n\t\t\tthis.update();\n\t\t\tthis.unlock(true);\n\t\t}\n\t}\n\n\tclearAndAdd(row: ROW): void {\n\t\tconst rows = this._rows;\n\t\trows.length = 0;\n\t\trows.push(row);\n\t\tthis.lock();\n\t\tthis._selection.clear();\n\t\tthis._sorter.toDirty();\n\t\tthis._filter.toDirty();\n\t\tthis.update();\n\t\tthis.unlock(true);\n\t}\n\n\tclearAndAddAll(newRows: ROW[]): void {\n\t\tconst rows = this._rows;\n\t\trows.length = 0;\n\t\tfor (let i = 0, imax = newRows.length; i < imax; ++i) {\n\t\t\trows.push(newRows[i]);\n\t\t}\n\t\tthis.lock();\n\t\tthis._selection.clear();\n\t\tthis._sorter.toDirty();\n\t\tthis._filter.toDirty();\n\t\tthis.update();\n\t\tthis.unlock(true);\n\t}\n\n\tadd(row: ROW, index?: number): void {\n\t\tconst rows = this._rows;\n\t\tconst selection = this._selection;\n\t\tconst sorter = this._sorter;\n\t\tconst filter = this._filter;\n\t\tif (index == null) {\n\t\t\trows.push(row);\n\t\t\tthis.lock();\n\t\t\tsorter.toDirty();\n\t\t\tfilter.toDirty();\n\t\t\tthis.update();\n\t\t\tthis.unlock(true);\n\t\t} else if (0 <= index && index < rows.length) {\n\t\t\trows.splice(index, 0, row);\n\t\t\tthis.lock();\n\t\t\tselection.shift(index, 1);\n\t\t\tsorter.toDirty();\n\t\t\tfilter.toDirty();\n\t\t\tthis.update();\n\t\t\tthis.unlock(true);\n\t\t}\n\t}\n\n\taddAll(newRows: ROW[], index?: number): void {\n\t\tconst rows = this._rows;\n\t\tconst rowsLength = rows.length;\n\t\tconst selection = this._selection;\n\t\tconst sorter = this._sorter;\n\t\tconst filter = this._filter;\n\t\tif (index == null) {\n\t\t\tconst newRowsLength = newRows.length;\n\t\t\tfor (let i = 0, imax = newRowsLength; i < imax; ++i) {\n\t\t\t\trows.push(newRows[i]);\n\t\t\t}\n\t\t\tthis.lock();\n\t\t\tsorter.toDirty();\n\t\t\tfilter.toDirty();\n\t\t\tthis.update();\n\t\t\tthis.unlock(true);\n\t\t} else if (0 <= index && index < rowsLength) {\n\t\t\tconst newRowsLength = newRows.length;\n\t\t\tfor (let i = 0; i < newRowsLength; ++i) {\n\t\t\t\trows.splice(index + i, 0, newRows[i]);\n\t\t\t}\n\t\t\tthis.lock();\n\t\t\tselection.shift(index, newRowsLength);\n\t\t\tsorter.toDirty();\n\t\t\tfilter.toDirty();\n\t\t\tthis.update();\n\t\t\tthis.unlock(true);\n\t\t}\n\t}\n\n\tget(index: number): ROW | null {\n\t\tconst rows = this._rows;\n\t\tif (0 <= index && index < rows.length) {\n\t\t\treturn rows[index];\n\t\t}\n\t\treturn null;\n\t}\n\n\tset(index: number, row: ROW): ROW | null {\n\t\tconst rows = this._rows;\n\t\tif (0 <= index && index < rows.length) {\n\t\t\tconst result = rows[index];\n\t\t\trows[index] = row;\n\t\t\tthis.lock();\n\t\t\tthis._sorter.toDirty();\n\t\t\tthis._filter.toDirty();\n\t\t\tthis.update();\n\t\t\tthis.unlock(true);\n\t\t\treturn result;\n\t\t}\n\t\treturn null;\n\t}\n\n\tremove(index: number): ROW | null {\n\t\tconst rows = this._rows;\n\t\tif (0 <= index && index < rows.length) {\n\t\t\tconst result = rows.splice(index, 1)[0];\n\t\t\tthis.lock();\n\t\t\tthis._selection.remove(index);\n\t\t\tthis._sorter.toDirty();\n\t\t\tthis._filter.toDirty();\n\t\t\tthis.update();\n\t\t\tthis.unlock(true);\n\t\t\treturn result;\n\t\t}\n\t\treturn null;\n\t}\n\n\teach(\n\t\titeratee: (row: ROW, index: number) => boolean | void,\n\t\tifrom?: number,\n\t\tito?: number\n\t): void {\n\t\tconst rows = this._rows;\n\t\tifrom = ifrom != null ? Math.max(0, ifrom) : 0;\n\t\tito = ito != null ? Math.min(rows.length, ito) : rows.length;\n\t\tfor (let i = ifrom; i < ito; ++i) {\n\t\t\tconst row = rows[i];\n\t\t\tif (iteratee(row, i) === false) {\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t}\n\n\tget selection(): DTableDataSelection<ROW> {\n\t\treturn this._selection;\n\t}\n\n\tget filter(): DTableDataFilter<ROW> {\n\t\treturn this._filter;\n\t}\n\n\tget sorter(): DTableDataSorter<ROW> {\n\t\treturn this._sorter;\n\t}\n\n\tget mapped(): DTableDataMapped<ROW> {\n\t\treturn this._mapped;\n\t}\n}\n"]}
|
|
@@ -156,6 +156,18 @@ var DTableDataTree = /** @class */ (function (_super) {
|
|
|
156
156
|
parent.update(forcibly);
|
|
157
157
|
}
|
|
158
158
|
};
|
|
159
|
+
DTableDataTree.prototype.lock = function () {
|
|
160
|
+
var parent = this._parent;
|
|
161
|
+
if (parent) {
|
|
162
|
+
parent.lock();
|
|
163
|
+
}
|
|
164
|
+
};
|
|
165
|
+
DTableDataTree.prototype.unlock = function (callIfNeeded) {
|
|
166
|
+
var parent = this._parent;
|
|
167
|
+
if (parent) {
|
|
168
|
+
parent.unlock(callIfNeeded);
|
|
169
|
+
}
|
|
170
|
+
};
|
|
159
171
|
DTableDataTree.prototype.size = function () {
|
|
160
172
|
return this.rows.length;
|
|
161
173
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"d-table-data-tree.js","sourceRoot":"","sources":["../../../src/main/typescript/wcardinal/ui/d-table-data-tree.ts"],"names":[],"mappings":"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","sourcesContent":["/*\n * Copyright (C) 2021 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { utils } from \"pixi.js\";\nimport {\n\tDTableData,\n\tDTableDataMapped,\n\tDTableDataParent,\n\tDTableDataSupplimental\n} from \"./d-table-data\";\nimport { DTableDataFilter, DTableDataFilterer } from \"./d-table-data-filter\";\nimport { DTableDataTreeFilter } from \"./d-table-data-tree-filter\";\nimport { DTableDataListMapped } from \"./d-table-data-list-mapped\";\nimport { DTableDataSelection } from \"./d-table-data-selection\";\nimport { DTableDataComparator, DTableDataSorter } from \"./d-table-data-sorter\";\nimport { DTableDataTreeSorter } from \"./d-table-data-tree-sorter\";\nimport { DTableDataTreeNode } from \"./d-table-data-tree-item\";\nimport {\n\tDTableDataTreeItemAccessor,\n\tDTableDataTreeItemAccessorHasChildren,\n\tDTableDataTreeItemAccessorOptions,\n\tDTableDataTreeItemAccessorToChildren\n} from \"./d-table-data-tree-item-accessor\";\nimport {\n\tDTableDataTreeSelection,\n\tDTableDataTreeSelectionCreator,\n\tDTableDataTreeSelectionOptions\n} from \"./d-table-data-tree-selection\";\nimport { DTableDataTreeSelectionImpl } from \"./d-table-data-tree-selection-impl\";\nimport { isFunction } from \"./util/is-function\";\nimport { DBaseEvents } from \"./d-base\";\nimport { DOnOptions } from \"./d-on-options\";\n\n/**\n * {@link DTableDataTree} events.\n */\nexport interface DTableDataTreeEvents<NODE, EMITTER> extends DBaseEvents<EMITTER> {\n\t/**\n\t * Triggered when a node is expanded.\n\t *\n\t * @param node a node\n\t * @param emitter an emitter\n\t */\n\texpand(node: NODE, emitter: EMITTER): void;\n\n\t/**\n\t * Triggered when a node is collapsed.\n\t *\n\t * @param node a node\n\t * @param emitter an emitter\n\t */\n\tcollapse(node: NODE, emitter: EMITTER): void;\n}\n\n/**\n * {@link DTableDataTree} \"on\" options.\n */\nexport interface DTableDataTreeOnOptions<NODE, EMITTER>\n\textends Partial<DTableDataTreeEvents<NODE, EMITTER>>,\n\t\tDOnOptions {}\n\n/**\n * {@link DTableDataTree} options.\n */\nexport interface DTableDataTreeOptions<NODE, EMITTER = any>\n\textends DTableDataTreeItemAccessorOptions<NODE> {\n\tnodes?: NODE[];\n\n\t/**\n\t * Selection options.\n\t */\n\tselection?:\n\t\t| DTableDataTreeSelection<NODE>\n\t\t| DTableDataTreeSelectionCreator<NODE>\n\t\t| DTableDataTreeSelectionOptions;\n\n\t/**\n\t * A filter.\n\t */\n\tfilter?: DTableDataFilterer<NODE>;\n\n\t/**\n\t * A comparator.\n\t */\n\tcomparator?: DTableDataComparator<NODE>;\n\n\t/**\n\t * True to list up nodes in the given node array in the reverse order.\n\t */\n\treverse?: boolean;\n\n\t/**\n\t * Mappings of event names and event handlers.\n\t */\n\ton?: DTableDataTreeOnOptions<NODE, EMITTER>;\n}\n\n/**\n * Please note that this data class does not support the sorter.\n */\nexport class DTableDataTree<NODE extends DTableDataTreeNode<NODE, NODE>>\n\textends utils.EventEmitter\n\timplements DTableData<NODE>\n{\n\tprotected _parent: DTableDataParent | null;\n\tprotected _nodes?: NODE[];\n\tprotected _rows: NODE[];\n\tprotected _isRowsDirty: boolean;\n\tprotected _supplimentals: DTableDataSupplimental[];\n\tprotected _flags: WeakMap<NODE, number>;\n\tprotected _filter: DTableDataTreeFilter<NODE>;\n\tprotected _sorter: DTableDataTreeSorter<NODE>;\n\tprotected _selection: DTableDataTreeSelection<NODE>;\n\tprotected _mapped: DTableDataMapped<NODE>;\n\tprotected _accessor: DTableDataTreeItemAccessor<NODE>;\n\tprotected _reverse: boolean;\n\n\tconstructor(options?: DTableDataTreeOptions<NODE>) {\n\t\tsuper();\n\n\t\tthis._parent = null;\n\t\tthis._accessor = this.toAccessor(options);\n\t\tthis._mapped = new DTableDataListMapped<NODE>(this);\n\t\tthis._rows = [];\n\t\tthis._isRowsDirty = false;\n\t\tthis._supplimentals = [];\n\t\tthis._flags = new WeakMap<NODE, number>();\n\t\tthis._reverse = !!options?.reverse;\n\t\tthis._selection = this.toSelection(options?.selection);\n\t\tthis._filter = new DTableDataTreeFilter<NODE>(this);\n\t\tthis._sorter = new DTableDataTreeSorter<NODE>();\n\n\t\tif (options) {\n\t\t\t// Filter\n\t\t\tconst filter = options.filter;\n\t\t\tif (filter) {\n\t\t\t\tthis._filter.set(filter);\n\t\t\t}\n\n\t\t\t// Events\n\t\t\tconst on = options.on;\n\t\t\tif (on) {\n\t\t\t\tfor (const name in on) {\n\t\t\t\t\tconst handler = on[name];\n\t\t\t\t\tif (handler) {\n\t\t\t\t\t\tthis.on(name, handler);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\t// Update rows\n\t\tthis.nodes = options?.nodes;\n\t}\n\n\tprotected toSelection(\n\t\toptions?:\n\t\t\t| DTableDataTreeSelection<NODE>\n\t\t\t| DTableDataTreeSelectionCreator<NODE>\n\t\t\t| DTableDataTreeSelectionOptions\n\t): DTableDataTreeSelection<NODE> {\n\t\tif (options instanceof utils.EventEmitter) {\n\t\t\treturn options;\n\t\t} else if (isFunction(options)) {\n\t\t\treturn options(this);\n\t\t}\n\t\treturn this.newSelection(options);\n\t}\n\n\tprotected newSelection(\n\t\toptions?: DTableDataTreeSelectionOptions\n\t): DTableDataTreeSelection<NODE> {\n\t\treturn new DTableDataTreeSelectionImpl(this, options);\n\t}\n\n\tprotected toAccessor(options?: DTableDataTreeOptions<NODE>): DTableDataTreeItemAccessor<NODE> {\n\t\treturn new DTableDataTreeItemAccessor(options);\n\t}\n\n\tbind(parent: DTableDataParent): void {\n\t\tthis._parent = parent;\n\t}\n\n\tget nodes(): NODE[] | undefined {\n\t\treturn this._nodes;\n\t}\n\n\tset nodes(nodes: NODE[] | undefined) {\n\t\tthis._nodes = nodes;\n\t\tthis._isRowsDirty = true;\n\t\tthis._selection.onNodeChange(nodes);\n\t\tthis._filter.toDirty();\n\t\tthis.update(true);\n\t}\n\n\tget rows(): NODE[] {\n\t\tif (this._isRowsDirty) {\n\t\t\tthis._isRowsDirty = false;\n\t\t\tthis.updateRows(this._nodes);\n\t\t}\n\t\treturn this._rows;\n\t}\n\n\tget supplimentals(): DTableDataSupplimental[] {\n\t\treturn this._supplimentals;\n\t}\n\n\tget accessor(): DTableDataTreeItemAccessor<NODE> {\n\t\treturn this._accessor;\n\t}\n\n\tprotected updateRows(nodes: NODE[] | undefined): void {\n\t\tconst rows = this._rows;\n\t\tconst supplimentals = this._supplimentals;\n\t\tconst flags = this._flags;\n\t\tif (nodes != null) {\n\t\t\tconst accessor = this._accessor;\n\t\t\tconst irows = this.newRows(\n\t\t\t\tnodes,\n\t\t\t\t0,\n\t\t\t\t0,\n\t\t\t\trows,\n\t\t\t\tsupplimentals,\n\t\t\t\tflags,\n\t\t\t\tthis._reverse,\n\t\t\t\taccessor.toChildren,\n\t\t\t\taccessor.hasChildren\n\t\t\t);\n\t\t\tif (irows !== rows.length) {\n\t\t\t\trows.length = irows;\n\t\t\t\tsupplimentals.length = irows;\n\t\t\t}\n\t\t} else {\n\t\t\trows.length = 0;\n\t\t\tsupplimentals.length = 0;\n\t\t}\n\t}\n\n\tprotected toSupplimental(\n\t\tilevel: number,\n\t\thasChildren: boolean,\n\t\tisOpened: boolean\n\t): DTableDataSupplimental {\n\t\treturn (ilevel << 2) | (hasChildren ? 2 : 0) | (isOpened ? 1 : 0);\n\t}\n\n\tprotected newRows(\n\t\tnodes: NODE[],\n\t\tirows: number,\n\t\tilevel: number,\n\t\trows: NODE[],\n\t\tsupplimentals: DTableDataSupplimental[],\n\t\tflags: WeakMap<NODE, number>,\n\t\treverse: boolean,\n\t\ttoChildren: DTableDataTreeItemAccessorToChildren<NODE>,\n\t\thasChildren: DTableDataTreeItemAccessorHasChildren<NODE>\n\t): number {\n\t\tconst nodesLength = nodes.length;\n\t\tconst istart = reverse ? nodesLength - 1 : 0;\n\t\tconst idelta = reverse ? -1 : +1;\n\t\tfor (let i = istart; 0 <= i && i < nodesLength; i += idelta) {\n\t\t\tconst node = nodes[i];\n\t\t\tconst children = toChildren(node);\n\t\t\tconst isOpened = flags.has(node);\n\t\t\tconst supplimental = this.toSupplimental(ilevel, hasChildren(node, children), isOpened);\n\t\t\tif (irows < rows.length) {\n\t\t\t\trows[irows] = node;\n\t\t\t\tsupplimentals[irows] = supplimental;\n\t\t\t} else {\n\t\t\t\trows.push(node);\n\t\t\t\tsupplimentals.push(supplimental);\n\t\t\t}\n\t\t\tirows += 1;\n\n\t\t\tif (isOpened && children) {\n\t\t\t\tirows = this.newRows(\n\t\t\t\t\tchildren,\n\t\t\t\t\tirows,\n\t\t\t\t\tilevel + 1,\n\t\t\t\t\trows,\n\t\t\t\t\tsupplimentals,\n\t\t\t\t\tflags,\n\t\t\t\t\treverse,\n\t\t\t\t\ttoChildren,\n\t\t\t\t\thasChildren\n\t\t\t\t);\n\t\t\t}\n\t\t}\n\t\treturn irows;\n\t}\n\n\tupdate(forcibly?: boolean): void {\n\t\tconst parent = this._parent;\n\t\tif (parent) {\n\t\t\tparent.update(forcibly);\n\t\t}\n\t}\n\n\tsize(): number {\n\t\treturn this.rows.length;\n\t}\n\n\tget(index: number): NODE | null {\n\t\tconst rows = this.rows;\n\t\tif (0 <= index && index < rows.length) {\n\t\t\treturn rows[index];\n\t\t}\n\t\treturn null;\n\t}\n\n\texpand(node: NODE): boolean {\n\t\tconst flags = this._flags;\n\t\tif (!flags.has(node)) {\n\t\t\tflags.set(node, 1);\n\t\t\tthis._isRowsDirty = true;\n\t\t\tthis._filter.toDirty();\n\t\t\tthis.update(true);\n\t\t\treturn true;\n\t\t}\n\t\treturn false;\n\t}\n\n\tcollapse(node: NODE): boolean {\n\t\tconst flags = this._flags;\n\t\tif (flags.has(node)) {\n\t\t\tflags.delete(node);\n\t\t\tthis._isRowsDirty = true;\n\t\t\tthis._filter.toDirty();\n\t\t\tthis.update(true);\n\t\t\treturn true;\n\t\t}\n\t\treturn false;\n\t}\n\n\tisCollapsed(node: NODE): boolean {\n\t\treturn !this._flags.has(node);\n\t}\n\n\tisExpanded(node: NODE): boolean {\n\t\treturn this._flags.has(node);\n\t}\n\n\ttoggle(node: NODE): boolean {\n\t\tif (this.isExpanded(node)) {\n\t\t\treturn this.collapse(node);\n\t\t} else {\n\t\t\treturn this.expand(node);\n\t\t}\n\t}\n\n\t/** @deprecated in favor of {@link expand}. */\n\topen(node: NODE): boolean {\n\t\treturn this.expand(node);\n\t}\n\n\t/** @deprecated in favor of {@link collapse}. */\n\tclose(node: NODE): boolean {\n\t\treturn this.collapse(node);\n\t}\n\n\t/** @deprecated in favor of {@link isExpanded}. */\n\tisOpened(node: NODE): boolean {\n\t\treturn this.isExpanded(node);\n\t}\n\n\teach(\n\t\titeratee: (node: NODE, index: number) => boolean | void,\n\t\tifrom?: number,\n\t\tito?: number\n\t): void {\n\t\tconst rows = this.rows;\n\t\tifrom = ifrom != null ? Math.max(0, ifrom) : 0;\n\t\tito = ito != null ? Math.min(rows.length, ito) : rows.length;\n\t\tfor (let i = ifrom; i < ito; ++i) {\n\t\t\tconst row = rows[i];\n\t\t\tif (iteratee(row, i) === false) {\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t}\n\n\tget selection(): DTableDataSelection<NODE> {\n\t\treturn this._selection;\n\t}\n\n\tget filter(): DTableDataFilter<NODE> {\n\t\treturn this._filter;\n\t}\n\n\tget sorter(): DTableDataSorter<NODE> {\n\t\treturn this._sorter;\n\t}\n\n\tget mapped(): DTableDataMapped<NODE> {\n\t\treturn this._mapped;\n\t}\n}\n"]}
|
|
1
|
+
{"version":3,"file":"d-table-data-tree.js","sourceRoot":"","sources":["../../../src/main/typescript/wcardinal/ui/d-table-data-tree.ts"],"names":[],"mappings":"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","sourcesContent":["/*\n * Copyright (C) 2021 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { utils } from \"pixi.js\";\nimport {\n\tDTableData,\n\tDTableDataMapped,\n\tDTableDataParent,\n\tDTableDataSupplimental\n} from \"./d-table-data\";\nimport { DTableDataFilter, DTableDataFilterer } from \"./d-table-data-filter\";\nimport { DTableDataTreeFilter } from \"./d-table-data-tree-filter\";\nimport { DTableDataListMapped } from \"./d-table-data-list-mapped\";\nimport { DTableDataSelection } from \"./d-table-data-selection\";\nimport { DTableDataComparator, DTableDataSorter } from \"./d-table-data-sorter\";\nimport { DTableDataTreeSorter } from \"./d-table-data-tree-sorter\";\nimport { DTableDataTreeNode } from \"./d-table-data-tree-item\";\nimport {\n\tDTableDataTreeItemAccessor,\n\tDTableDataTreeItemAccessorHasChildren,\n\tDTableDataTreeItemAccessorOptions,\n\tDTableDataTreeItemAccessorToChildren\n} from \"./d-table-data-tree-item-accessor\";\nimport {\n\tDTableDataTreeSelection,\n\tDTableDataTreeSelectionCreator,\n\tDTableDataTreeSelectionOptions\n} from \"./d-table-data-tree-selection\";\nimport { DTableDataTreeSelectionImpl } from \"./d-table-data-tree-selection-impl\";\nimport { isFunction } from \"./util/is-function\";\nimport { DBaseEvents } from \"./d-base\";\nimport { DOnOptions } from \"./d-on-options\";\n\n/**\n * {@link DTableDataTree} events.\n */\nexport interface DTableDataTreeEvents<NODE, EMITTER> extends DBaseEvents<EMITTER> {\n\t/**\n\t * Triggered when a node is expanded.\n\t *\n\t * @param node a node\n\t * @param emitter an emitter\n\t */\n\texpand(node: NODE, emitter: EMITTER): void;\n\n\t/**\n\t * Triggered when a node is collapsed.\n\t *\n\t * @param node a node\n\t * @param emitter an emitter\n\t */\n\tcollapse(node: NODE, emitter: EMITTER): void;\n}\n\n/**\n * {@link DTableDataTree} \"on\" options.\n */\nexport interface DTableDataTreeOnOptions<NODE, EMITTER>\n\textends Partial<DTableDataTreeEvents<NODE, EMITTER>>,\n\t\tDOnOptions {}\n\n/**\n * {@link DTableDataTree} options.\n */\nexport interface DTableDataTreeOptions<NODE, EMITTER = any>\n\textends DTableDataTreeItemAccessorOptions<NODE> {\n\tnodes?: NODE[];\n\n\t/**\n\t * Selection options.\n\t */\n\tselection?:\n\t\t| DTableDataTreeSelection<NODE>\n\t\t| DTableDataTreeSelectionCreator<NODE>\n\t\t| DTableDataTreeSelectionOptions;\n\n\t/**\n\t * A filter.\n\t */\n\tfilter?: DTableDataFilterer<NODE>;\n\n\t/**\n\t * A comparator.\n\t */\n\tcomparator?: DTableDataComparator<NODE>;\n\n\t/**\n\t * True to list up nodes in the given node array in the reverse order.\n\t */\n\treverse?: boolean;\n\n\t/**\n\t * Mappings of event names and event handlers.\n\t */\n\ton?: DTableDataTreeOnOptions<NODE, EMITTER>;\n}\n\n/**\n * Please note that this data class does not support the sorter.\n */\nexport class DTableDataTree<NODE extends DTableDataTreeNode<NODE, NODE>>\n\textends utils.EventEmitter\n\timplements DTableData<NODE>\n{\n\tprotected _parent: DTableDataParent | null;\n\tprotected _nodes?: NODE[];\n\tprotected _rows: NODE[];\n\tprotected _isRowsDirty: boolean;\n\tprotected _supplimentals: DTableDataSupplimental[];\n\tprotected _flags: WeakMap<NODE, number>;\n\tprotected _filter: DTableDataTreeFilter<NODE>;\n\tprotected _sorter: DTableDataTreeSorter<NODE>;\n\tprotected _selection: DTableDataTreeSelection<NODE>;\n\tprotected _mapped: DTableDataMapped<NODE>;\n\tprotected _accessor: DTableDataTreeItemAccessor<NODE>;\n\tprotected _reverse: boolean;\n\n\tconstructor(options?: DTableDataTreeOptions<NODE>) {\n\t\tsuper();\n\n\t\tthis._parent = null;\n\t\tthis._accessor = this.toAccessor(options);\n\t\tthis._mapped = new DTableDataListMapped<NODE>(this);\n\t\tthis._rows = [];\n\t\tthis._isRowsDirty = false;\n\t\tthis._supplimentals = [];\n\t\tthis._flags = new WeakMap<NODE, number>();\n\t\tthis._reverse = !!options?.reverse;\n\t\tthis._selection = this.toSelection(options?.selection);\n\t\tthis._filter = new DTableDataTreeFilter<NODE>(this);\n\t\tthis._sorter = new DTableDataTreeSorter<NODE>();\n\n\t\tif (options) {\n\t\t\t// Filter\n\t\t\tconst filter = options.filter;\n\t\t\tif (filter) {\n\t\t\t\tthis._filter.set(filter);\n\t\t\t}\n\n\t\t\t// Events\n\t\t\tconst on = options.on;\n\t\t\tif (on) {\n\t\t\t\tfor (const name in on) {\n\t\t\t\t\tconst handler = on[name];\n\t\t\t\t\tif (handler) {\n\t\t\t\t\t\tthis.on(name, handler);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\t// Update rows\n\t\tthis.nodes = options?.nodes;\n\t}\n\n\tprotected toSelection(\n\t\toptions?:\n\t\t\t| DTableDataTreeSelection<NODE>\n\t\t\t| DTableDataTreeSelectionCreator<NODE>\n\t\t\t| DTableDataTreeSelectionOptions\n\t): DTableDataTreeSelection<NODE> {\n\t\tif (options instanceof utils.EventEmitter) {\n\t\t\treturn options;\n\t\t} else if (isFunction(options)) {\n\t\t\treturn options(this);\n\t\t}\n\t\treturn this.newSelection(options);\n\t}\n\n\tprotected newSelection(\n\t\toptions?: DTableDataTreeSelectionOptions\n\t): DTableDataTreeSelection<NODE> {\n\t\treturn new DTableDataTreeSelectionImpl(this, options);\n\t}\n\n\tprotected toAccessor(options?: DTableDataTreeOptions<NODE>): DTableDataTreeItemAccessor<NODE> {\n\t\treturn new DTableDataTreeItemAccessor(options);\n\t}\n\n\tbind(parent: DTableDataParent): void {\n\t\tthis._parent = parent;\n\t}\n\n\tget nodes(): NODE[] | undefined {\n\t\treturn this._nodes;\n\t}\n\n\tset nodes(nodes: NODE[] | undefined) {\n\t\tthis._nodes = nodes;\n\t\tthis._isRowsDirty = true;\n\t\tthis._selection.onNodeChange(nodes);\n\t\tthis._filter.toDirty();\n\t\tthis.update(true);\n\t}\n\n\tget rows(): NODE[] {\n\t\tif (this._isRowsDirty) {\n\t\t\tthis._isRowsDirty = false;\n\t\t\tthis.updateRows(this._nodes);\n\t\t}\n\t\treturn this._rows;\n\t}\n\n\tget supplimentals(): DTableDataSupplimental[] {\n\t\treturn this._supplimentals;\n\t}\n\n\tget accessor(): DTableDataTreeItemAccessor<NODE> {\n\t\treturn this._accessor;\n\t}\n\n\tprotected updateRows(nodes: NODE[] | undefined): void {\n\t\tconst rows = this._rows;\n\t\tconst supplimentals = this._supplimentals;\n\t\tconst flags = this._flags;\n\t\tif (nodes != null) {\n\t\t\tconst accessor = this._accessor;\n\t\t\tconst irows = this.newRows(\n\t\t\t\tnodes,\n\t\t\t\t0,\n\t\t\t\t0,\n\t\t\t\trows,\n\t\t\t\tsupplimentals,\n\t\t\t\tflags,\n\t\t\t\tthis._reverse,\n\t\t\t\taccessor.toChildren,\n\t\t\t\taccessor.hasChildren\n\t\t\t);\n\t\t\tif (irows !== rows.length) {\n\t\t\t\trows.length = irows;\n\t\t\t\tsupplimentals.length = irows;\n\t\t\t}\n\t\t} else {\n\t\t\trows.length = 0;\n\t\t\tsupplimentals.length = 0;\n\t\t}\n\t}\n\n\tprotected toSupplimental(\n\t\tilevel: number,\n\t\thasChildren: boolean,\n\t\tisOpened: boolean\n\t): DTableDataSupplimental {\n\t\treturn (ilevel << 2) | (hasChildren ? 2 : 0) | (isOpened ? 1 : 0);\n\t}\n\n\tprotected newRows(\n\t\tnodes: NODE[],\n\t\tirows: number,\n\t\tilevel: number,\n\t\trows: NODE[],\n\t\tsupplimentals: DTableDataSupplimental[],\n\t\tflags: WeakMap<NODE, number>,\n\t\treverse: boolean,\n\t\ttoChildren: DTableDataTreeItemAccessorToChildren<NODE>,\n\t\thasChildren: DTableDataTreeItemAccessorHasChildren<NODE>\n\t): number {\n\t\tconst nodesLength = nodes.length;\n\t\tconst istart = reverse ? nodesLength - 1 : 0;\n\t\tconst idelta = reverse ? -1 : +1;\n\t\tfor (let i = istart; 0 <= i && i < nodesLength; i += idelta) {\n\t\t\tconst node = nodes[i];\n\t\t\tconst children = toChildren(node);\n\t\t\tconst isOpened = flags.has(node);\n\t\t\tconst supplimental = this.toSupplimental(ilevel, hasChildren(node, children), isOpened);\n\t\t\tif (irows < rows.length) {\n\t\t\t\trows[irows] = node;\n\t\t\t\tsupplimentals[irows] = supplimental;\n\t\t\t} else {\n\t\t\t\trows.push(node);\n\t\t\t\tsupplimentals.push(supplimental);\n\t\t\t}\n\t\t\tirows += 1;\n\n\t\t\tif (isOpened && children) {\n\t\t\t\tirows = this.newRows(\n\t\t\t\t\tchildren,\n\t\t\t\t\tirows,\n\t\t\t\t\tilevel + 1,\n\t\t\t\t\trows,\n\t\t\t\t\tsupplimentals,\n\t\t\t\t\tflags,\n\t\t\t\t\treverse,\n\t\t\t\t\ttoChildren,\n\t\t\t\t\thasChildren\n\t\t\t\t);\n\t\t\t}\n\t\t}\n\t\treturn irows;\n\t}\n\n\tupdate(forcibly?: boolean): void {\n\t\tconst parent = this._parent;\n\t\tif (parent) {\n\t\t\tparent.update(forcibly);\n\t\t}\n\t}\n\n\tlock(): void {\n\t\tconst parent = this._parent;\n\t\tif (parent) {\n\t\t\tparent.lock();\n\t\t}\n\t}\n\n\tunlock(callIfNeeded: boolean): void {\n\t\tconst parent = this._parent;\n\t\tif (parent) {\n\t\t\tparent.unlock(callIfNeeded);\n\t\t}\n\t}\n\n\tsize(): number {\n\t\treturn this.rows.length;\n\t}\n\n\tget(index: number): NODE | null {\n\t\tconst rows = this.rows;\n\t\tif (0 <= index && index < rows.length) {\n\t\t\treturn rows[index];\n\t\t}\n\t\treturn null;\n\t}\n\n\texpand(node: NODE): boolean {\n\t\tconst flags = this._flags;\n\t\tif (!flags.has(node)) {\n\t\t\tflags.set(node, 1);\n\t\t\tthis._isRowsDirty = true;\n\t\t\tthis._filter.toDirty();\n\t\t\tthis.update(true);\n\t\t\treturn true;\n\t\t}\n\t\treturn false;\n\t}\n\n\tcollapse(node: NODE): boolean {\n\t\tconst flags = this._flags;\n\t\tif (flags.has(node)) {\n\t\t\tflags.delete(node);\n\t\t\tthis._isRowsDirty = true;\n\t\t\tthis._filter.toDirty();\n\t\t\tthis.update(true);\n\t\t\treturn true;\n\t\t}\n\t\treturn false;\n\t}\n\n\tisCollapsed(node: NODE): boolean {\n\t\treturn !this._flags.has(node);\n\t}\n\n\tisExpanded(node: NODE): boolean {\n\t\treturn this._flags.has(node);\n\t}\n\n\ttoggle(node: NODE): boolean {\n\t\tif (this.isExpanded(node)) {\n\t\t\treturn this.collapse(node);\n\t\t} else {\n\t\t\treturn this.expand(node);\n\t\t}\n\t}\n\n\t/** @deprecated in favor of {@link expand}. */\n\topen(node: NODE): boolean {\n\t\treturn this.expand(node);\n\t}\n\n\t/** @deprecated in favor of {@link collapse}. */\n\tclose(node: NODE): boolean {\n\t\treturn this.collapse(node);\n\t}\n\n\t/** @deprecated in favor of {@link isExpanded}. */\n\tisOpened(node: NODE): boolean {\n\t\treturn this.isExpanded(node);\n\t}\n\n\teach(\n\t\titeratee: (node: NODE, index: number) => boolean | void,\n\t\tifrom?: number,\n\t\tito?: number\n\t): void {\n\t\tconst rows = this.rows;\n\t\tifrom = ifrom != null ? Math.max(0, ifrom) : 0;\n\t\tito = ito != null ? Math.min(rows.length, ito) : rows.length;\n\t\tfor (let i = ifrom; i < ito; ++i) {\n\t\t\tconst row = rows[i];\n\t\t\tif (iteratee(row, i) === false) {\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t}\n\n\tget selection(): DTableDataSelection<NODE> {\n\t\treturn this._selection;\n\t}\n\n\tget filter(): DTableDataFilter<NODE> {\n\t\treturn this._filter;\n\t}\n\n\tget sorter(): DTableDataSorter<NODE> {\n\t\treturn this._sorter;\n\t}\n\n\tget mapped(): DTableDataMapped<NODE> {\n\t\treturn this._mapped;\n\t}\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"d-table-data.js","sourceRoot":"","sources":["../../../src/main/typescript/wcardinal/ui/d-table-data.ts"],"names":[],"mappings":"","sourcesContent":["import { utils } from \"pixi.js\";\nimport { DBaseOnOptions } from \"./d-base\";\nimport { DTableDataFilter, DTableDataFilterer } from \"./d-table-data-filter\";\nimport {\n\tDTableDataSelection,\n\tDTableDataSelectionCreator,\n\tDTableDataSelectionOptions\n} from \"./d-table-data-selection\";\nimport { DTableDataComparator, DTableDataSorter } from \"./d-table-data-sorter\";\n\nexport type DTableDataSupplimental = number;\n\nexport type DTableDataMappedEachIteratee<ROW> = (\n\trow: ROW,\n\tsupplimental: DTableDataSupplimental | null,\n\tindex: number,\n\tunmappedIndex: number\n) => void | boolean;\n\nexport interface DTableDataMapped<ROW> {\n\t/**\n\t * Mapped rows.\n\t */\n\treadonly rows: ROW[];\n\n\t/**\n\t * Returns an mapped index of the specified unmapped index.\n\t * A mapped index is an index on rows filters and sorters are applied.\n\t *\n\t * @param unmappedIndex a unmapped index\n\t */\n\tmap(unmappedIndex: number): number | null;\n\n\t/**\n\t * Returns an unmapped index of the specified mapped index.\n\t * A mapped index is an index on rows filters and sorters are applied.\n\t *\n\t * @param index a mapped index\n\t */\n\tunmap(index: number): number;\n\n\t/**\n\t * Returns a size of rows.\n\t */\n\tsize(): number;\n\n\t/**\n\t * Returns a row data at the specified index.\n\t * The index is an index on rows filters and sorters are applied.\n\t *\n\t * @param index a mapped index\n\t */\n\tget(index: number): ROW | null;\n\n\t/**\n\t * Calls the specified iteratee on each mapped datum of the specified index range.\n\t * If called iteratee explicitly returns false, stops an iteration.\n\t *\n\t * @param iteratee an function called on each mapped datum\n\t * @param ifrom an index to start an iteration\n\t * @param ito an index before which an interation stops\n\t */\n\teach(iteratee: DTableDataMappedEachIteratee<ROW>, ifrom?: number, iend?: number): void;\n}\n\nexport type DTableDataEachIteratee<ROW> = (row: ROW, index: number) => void | boolean;\n\nexport interface DTableDataOptions<ROW, EMITTER = any> {\n\t/**\n\t * Selection options.\n\t */\n\tselection?:\n\t\t| DTableDataSelection<ROW>\n\t\t| DTableDataSelectionCreator<ROW>\n\t\t| DTableDataSelectionOptions;\n\n\t/**\n\t * A filter.\n\t */\n\tfilter?: DTableDataFilterer<ROW>;\n\n\t/**\n\t * A comparator.\n\t */\n\tcomparator?: DTableDataComparator<ROW>;\n\n\t/**\n\t * Mappings of event names and event handlers.\n\t */\n\ton?: DBaseOnOptions<EMITTER>;\n}\n\nexport interface DTableDataParent {\n\tlock(): void;\n\tunlock(callIfNeeded: boolean): void;\n\tupdate(forcibly?: boolean): void;\n}\n\nexport interface DTableData<ROW> extends utils.EventEmitter {\n\t/**\n\t * A data selection.\n\t */\n\treadonly selection: DTableDataSelection<ROW>;\n\n\t/**\n\t * A data filter.\n\t */\n\treadonly filter: DTableDataFilter<ROW>;\n\n\t/**\n\t * A data sorter.\n\t */\n\treadonly sorter: DTableDataSorter<ROW>;\n\n\t/**\n\t * Sorted and filtered data.\n\t */\n\treadonly mapped: DTableDataMapped<ROW>;\n\n\tbind(parent: DTableDataParent): void;\n\n\t/**\n\t * Returns a size of rows.\n\t */\n\tsize(): number;\n\n\t/**\n\t * Returns a row data at the specified index.\n\t * The index is an index on rows filters and sorters are not applied.\n\t *\n\t * @param index an index on rows filters and sorters are not applied\n\t */\n\tget(index: number): ROW | null;\n\n\t/**\n\t * Calls the specified iteratee on each datum of the specified index range.\n\t * If called iteratee explicitly returns false, stops an iteration.\n\t *\n\t * @param iteratee an function called on each datum\n\t * @param ifrom an index to start an iteration\n\t * @param ito an index before which an interation stops\n\t */\n\teach(iteratee: DTableDataEachIteratee<ROW>, ifrom?: number, ito?: number): void;\n}\n"]}
|
|
1
|
+
{"version":3,"file":"d-table-data.js","sourceRoot":"","sources":["../../../src/main/typescript/wcardinal/ui/d-table-data.ts"],"names":[],"mappings":"","sourcesContent":["import { utils } from \"pixi.js\";\nimport { DBaseOnOptions } from \"./d-base\";\nimport { DTableDataFilter, DTableDataFilterer } from \"./d-table-data-filter\";\nimport {\n\tDTableDataSelection,\n\tDTableDataSelectionCreator,\n\tDTableDataSelectionOptions\n} from \"./d-table-data-selection\";\nimport { DTableDataComparator, DTableDataSorter } from \"./d-table-data-sorter\";\n\nexport type DTableDataSupplimental = number;\n\nexport type DTableDataMappedEachIteratee<ROW> = (\n\trow: ROW,\n\tsupplimental: DTableDataSupplimental | null,\n\tindex: number,\n\tunmappedIndex: number\n) => void | boolean;\n\nexport interface DTableDataMapped<ROW> {\n\t/**\n\t * Mapped rows.\n\t */\n\treadonly rows: ROW[];\n\n\t/**\n\t * Returns an mapped index of the specified unmapped index.\n\t * A mapped index is an index on rows filters and sorters are applied.\n\t *\n\t * @param unmappedIndex a unmapped index\n\t */\n\tmap(unmappedIndex: number): number | null;\n\n\t/**\n\t * Returns an unmapped index of the specified mapped index.\n\t * A mapped index is an index on rows filters and sorters are applied.\n\t *\n\t * @param index a mapped index\n\t */\n\tunmap(index: number): number;\n\n\t/**\n\t * Returns a size of rows.\n\t */\n\tsize(): number;\n\n\t/**\n\t * Returns a row data at the specified index.\n\t * The index is an index on rows filters and sorters are applied.\n\t *\n\t * @param index a mapped index\n\t */\n\tget(index: number): ROW | null;\n\n\t/**\n\t * Calls the specified iteratee on each mapped datum of the specified index range.\n\t * If called iteratee explicitly returns false, stops an iteration.\n\t *\n\t * @param iteratee an function called on each mapped datum\n\t * @param ifrom an index to start an iteration\n\t * @param ito an index before which an interation stops\n\t */\n\teach(iteratee: DTableDataMappedEachIteratee<ROW>, ifrom?: number, iend?: number): void;\n}\n\nexport type DTableDataEachIteratee<ROW> = (row: ROW, index: number) => void | boolean;\n\nexport interface DTableDataOptions<ROW, EMITTER = any> {\n\t/**\n\t * Selection options.\n\t */\n\tselection?:\n\t\t| DTableDataSelection<ROW>\n\t\t| DTableDataSelectionCreator<ROW>\n\t\t| DTableDataSelectionOptions;\n\n\t/**\n\t * A filter.\n\t */\n\tfilter?: DTableDataFilterer<ROW>;\n\n\t/**\n\t * A comparator.\n\t */\n\tcomparator?: DTableDataComparator<ROW>;\n\n\t/**\n\t * Mappings of event names and event handlers.\n\t */\n\ton?: DBaseOnOptions<EMITTER>;\n}\n\nexport interface DTableDataParent {\n\tlock(): void;\n\tunlock(callIfNeeded: boolean): void;\n\tupdate(forcibly?: boolean): void;\n}\n\nexport interface DTableData<ROW> extends utils.EventEmitter {\n\t/**\n\t * A data selection.\n\t */\n\treadonly selection: DTableDataSelection<ROW>;\n\n\t/**\n\t * A data filter.\n\t */\n\treadonly filter: DTableDataFilter<ROW>;\n\n\t/**\n\t * A data sorter.\n\t */\n\treadonly sorter: DTableDataSorter<ROW>;\n\n\t/**\n\t * Sorted and filtered data.\n\t */\n\treadonly mapped: DTableDataMapped<ROW>;\n\n\t/** A list of rows. */\n\treadonly rows: ROW[];\n\n\tbind(parent: DTableDataParent): void;\n\n\tupdate(forcibly?: boolean): void;\n\n\tlock(): void;\n\n\tunlock(callIfNeeded: boolean): void;\n\n\t/**\n\t * Returns a size of rows.\n\t */\n\tsize(): number;\n\n\t/**\n\t * Returns a row data at the specified index.\n\t * The index is an index on rows filters and sorters are not applied.\n\t *\n\t * @param index an index on rows filters and sorters are not applied\n\t */\n\tget(index: number): ROW | null;\n\n\t/**\n\t * Calls the specified iteratee on each datum of the specified index range.\n\t * If called iteratee explicitly returns false, stops an iteration.\n\t *\n\t * @param iteratee an function called on each datum\n\t * @param ifrom an index to start an iteration\n\t * @param ito an index before which an interation stops\n\t */\n\teach(iteratee: DTableDataEachIteratee<ROW>, ifrom?: number, ito?: number): void;\n}\n"]}
|
|
@@ -19,12 +19,16 @@ export var UtilAttachAlign = {
|
|
|
19
19
|
BOTTOM_LEFT: 13,
|
|
20
20
|
BOTTOM_CENTER: 14,
|
|
21
21
|
BOTTOM_RIGHT: 15,
|
|
22
|
-
OVER: 16
|
|
22
|
+
OVER: 16,
|
|
23
|
+
NONE: 17
|
|
23
24
|
};
|
|
24
25
|
var UtilAttach = /** @class */ (function () {
|
|
25
26
|
function UtilAttach() {
|
|
26
27
|
}
|
|
27
28
|
UtilAttach.attach = function (target, bounds, offsetX, offsetY, clippingWidth, clippingHeight, align) {
|
|
29
|
+
if (align === UtilAttachAlign.NONE) {
|
|
30
|
+
return;
|
|
31
|
+
}
|
|
28
32
|
var width = target.width;
|
|
29
33
|
var height = target.height;
|
|
30
34
|
var x = 0;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"util-attach.js","sourceRoot":"","sources":["../../../../src/main/typescript/wcardinal/ui/util/util-attach.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAUH,MAAM,CAAC,IAAM,eAAe,GAAG;IAC9B,GAAG,EAAE,CAAC;IACN,QAAQ,EAAE,CAAC;IACX,UAAU,EAAE,CAAC;IACb,SAAS,EAAE,CAAC;IAEZ,IAAI,EAAE,CAAC;IACP,QAAQ,EAAE,CAAC;IACX,WAAW,EAAE,CAAC;IACd,WAAW,EAAE,CAAC;IAEd,KAAK,EAAE,CAAC;IACR,SAAS,EAAE,CAAC;IACZ,YAAY,EAAE,EAAE;IAChB,YAAY,EAAE,EAAE;IAEhB,MAAM,EAAE,EAAE;IACV,WAAW,EAAE,EAAE;IACf,aAAa,EAAE,EAAE;IACjB,YAAY,EAAE,EAAE;IAEhB,IAAI,EAAE,EAAE;CACC,CAAC;AAIX;IAAA;
|
|
1
|
+
{"version":3,"file":"util-attach.js","sourceRoot":"","sources":["../../../../src/main/typescript/wcardinal/ui/util/util-attach.ts"],"names":[],"mappings":"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","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { IPoint, Rectangle } from \"pixi.js\";\n\nexport interface UtilAttachTarget {\n\treadonly width: number;\n\treadonly height: number;\n\treadonly position: IPoint;\n}\n\nexport const UtilAttachAlign = {\n\tTOP: 0,\n\tTOP_LEFT: 1,\n\tTOP_CENTER: 2,\n\tTOP_RIGHT: 3,\n\n\tLEFT: 4,\n\tLEFT_TOP: 5,\n\tLEFT_MIDDLE: 6,\n\tLEFT_BOTTOM: 7,\n\n\tRIGHT: 8,\n\tRIGHT_TOP: 9,\n\tRIGHT_MIDDLE: 10,\n\tRIGHT_BOTTOM: 11,\n\n\tBOTTOM: 12,\n\tBOTTOM_LEFT: 13,\n\tBOTTOM_CENTER: 14,\n\tBOTTOM_RIGHT: 15,\n\n\tOVER: 16,\n\n\tNONE: 17\n} as const;\n\nexport type UtilAttachAlign = typeof UtilAttachAlign[keyof typeof UtilAttachAlign];\n\nexport class UtilAttach {\n\tstatic attach(\n\t\ttarget: UtilAttachTarget,\n\t\tbounds: Rectangle,\n\t\toffsetX: number,\n\t\toffsetY: number,\n\t\tclippingWidth: number,\n\t\tclippingHeight: number,\n\t\talign: UtilAttachAlign\n\t): void {\n\t\tif (align === UtilAttachAlign.NONE) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst width = target.width;\n\t\tconst height = target.height;\n\n\t\tlet x = 0;\n\t\tswitch (align) {\n\t\t\tcase UtilAttachAlign.LEFT:\n\t\t\tcase UtilAttachAlign.LEFT_TOP:\n\t\t\tcase UtilAttachAlign.LEFT_MIDDLE:\n\t\t\tcase UtilAttachAlign.LEFT_BOTTOM:\n\t\t\t\tx = bounds.left - width - offsetX;\n\t\t\t\tif (x < offsetX) {\n\t\t\t\t\tx = bounds.right + offsetX;\n\t\t\t\t\tif (clippingWidth - offsetX < x + width) {\n\t\t\t\t\t\tx = offsetX;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tbreak;\n\t\t\tcase UtilAttachAlign.RIGHT:\n\t\t\tcase UtilAttachAlign.RIGHT_TOP:\n\t\t\tcase UtilAttachAlign.RIGHT_MIDDLE:\n\t\t\tcase UtilAttachAlign.RIGHT_BOTTOM:\n\t\t\t\tx = bounds.right + offsetX;\n\t\t\t\tif (clippingWidth - offsetX < x + width) {\n\t\t\t\t\tx = bounds.left - width - offsetX;\n\t\t\t\t\tif (x < offsetX) {\n\t\t\t\t\t\tx = clippingWidth - width - offsetX;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tbreak;\n\t\t\tcase UtilAttachAlign.TOP:\n\t\t\tcase UtilAttachAlign.TOP_LEFT:\n\t\t\tcase UtilAttachAlign.BOTTOM:\n\t\t\tcase UtilAttachAlign.BOTTOM_LEFT:\n\t\t\t\tx = this.adjust(bounds.left, width, offsetX, clippingWidth);\n\t\t\t\tbreak;\n\t\t\tcase UtilAttachAlign.TOP_RIGHT:\n\t\t\tcase UtilAttachAlign.BOTTOM_RIGHT:\n\t\t\t\tx = this.adjust(bounds.right - width, width, offsetX, clippingWidth);\n\t\t\t\tbreak;\n\t\t\tcase UtilAttachAlign.TOP_CENTER:\n\t\t\tcase UtilAttachAlign.BOTTOM_CENTER:\n\t\t\tcase UtilAttachAlign.OVER:\n\t\t\t\tx = this.adjust(\n\t\t\t\t\t(bounds.left + bounds.right - width) * 0.5,\n\t\t\t\t\twidth,\n\t\t\t\t\toffsetX,\n\t\t\t\t\tclippingWidth\n\t\t\t\t);\n\t\t\t\tbreak;\n\t\t}\n\n\t\tlet y = 0;\n\t\tswitch (align) {\n\t\t\tcase UtilAttachAlign.LEFT:\n\t\t\tcase UtilAttachAlign.LEFT_TOP:\n\t\t\tcase UtilAttachAlign.RIGHT:\n\t\t\tcase UtilAttachAlign.RIGHT_TOP:\n\t\t\t\ty = this.adjust(bounds.top, height, offsetY, clippingHeight);\n\t\t\t\tbreak;\n\t\t\tcase UtilAttachAlign.LEFT_MIDDLE:\n\t\t\tcase UtilAttachAlign.RIGHT_MIDDLE:\n\t\t\tcase UtilAttachAlign.OVER:\n\t\t\t\ty = this.adjust(\n\t\t\t\t\t(bounds.top + bounds.bottom - height) * 0.5,\n\t\t\t\t\theight,\n\t\t\t\t\toffsetY,\n\t\t\t\t\tclippingHeight\n\t\t\t\t);\n\t\t\t\tbreak;\n\t\t\tcase UtilAttachAlign.LEFT_BOTTOM:\n\t\t\tcase UtilAttachAlign.RIGHT_BOTTOM:\n\t\t\t\ty = this.adjust(bounds.bottom, height, offsetY, clippingHeight);\n\t\t\t\tbreak;\n\t\t\tcase UtilAttachAlign.TOP:\n\t\t\tcase UtilAttachAlign.TOP_LEFT:\n\t\t\tcase UtilAttachAlign.TOP_RIGHT:\n\t\t\tcase UtilAttachAlign.TOP_CENTER:\n\t\t\t\ty = bounds.top - height - offsetY;\n\t\t\t\tif (y < offsetY) {\n\t\t\t\t\ty = bounds.bottom + offsetY;\n\t\t\t\t\tif (clippingHeight < y + height) {\n\t\t\t\t\t\ty = offsetY;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tbreak;\n\t\t\tcase UtilAttachAlign.BOTTOM:\n\t\t\tcase UtilAttachAlign.BOTTOM_LEFT:\n\t\t\tcase UtilAttachAlign.BOTTOM_RIGHT:\n\t\t\tcase UtilAttachAlign.BOTTOM_CENTER:\n\t\t\t\ty = bounds.bottom + offsetY;\n\t\t\t\tif (clippingHeight - offsetY < y + height) {\n\t\t\t\t\ty = bounds.top - height - offsetY;\n\t\t\t\t\tif (y < offsetY) {\n\t\t\t\t\t\ty = clippingHeight - height - offsetY;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tbreak;\n\t\t}\n\n\t\ttarget.position.set(x, y);\n\t}\n\n\tstatic adjust(position: number, size: number, offset: number, clippingSize: number): number {\n\t\tif (position < offset) {\n\t\t\tif (clippingSize - offset < position + size) {\n\t\t\t\treturn (clippingSize - size) * 0.5;\n\t\t\t} else {\n\t\t\t\treturn offset;\n\t\t\t}\n\t\t} else if (clippingSize - offset < position + size) {\n\t\t\tif (clippingSize < size) {\n\t\t\t\treturn (clippingSize - size) * 0.5;\n\t\t\t} else {\n\t\t\t\treturn clippingSize - size - offset;\n\t\t\t}\n\t\t}\n\t\treturn position;\n\t}\n}\n"]}
|
package/dist/wcardinal-ui.cjs.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*
|
|
2
|
-
Winter Cardinal UI v0.
|
|
2
|
+
Winter Cardinal UI v0.370.0
|
|
3
3
|
Copyright (C) 2019 Toshiba Corporation
|
|
4
4
|
SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
|
|
@@ -25935,12 +25935,16 @@ var UtilAttachAlign = {
|
|
|
25935
25935
|
BOTTOM_LEFT: 13,
|
|
25936
25936
|
BOTTOM_CENTER: 14,
|
|
25937
25937
|
BOTTOM_RIGHT: 15,
|
|
25938
|
-
OVER: 16
|
|
25938
|
+
OVER: 16,
|
|
25939
|
+
NONE: 17
|
|
25939
25940
|
};
|
|
25940
25941
|
var UtilAttach = /** @class */ (function () {
|
|
25941
25942
|
function UtilAttach() {
|
|
25942
25943
|
}
|
|
25943
25944
|
UtilAttach.attach = function (target, bounds, offsetX, offsetY, clippingWidth, clippingHeight, align) {
|
|
25945
|
+
if (align === UtilAttachAlign.NONE) {
|
|
25946
|
+
return;
|
|
25947
|
+
}
|
|
25944
25948
|
var width = target.width;
|
|
25945
25949
|
var height = target.height;
|
|
25946
25950
|
var x = 0;
|
|
@@ -26556,6 +26560,9 @@ var DDialog = /** @class */ (function (_super) {
|
|
|
26556
26560
|
return;
|
|
26557
26561
|
}
|
|
26558
26562
|
var align = this._align;
|
|
26563
|
+
if (align === UtilAttachAlign.NONE) {
|
|
26564
|
+
return;
|
|
26565
|
+
}
|
|
26559
26566
|
var opener = this._opener;
|
|
26560
26567
|
if (align != null && opener != null) {
|
|
26561
26568
|
var mode = this._mode;
|
|
@@ -67617,6 +67624,8 @@ var DApplicationLayerOptions = /** @class */ (function () {
|
|
|
67617
67624
|
width = bbox.width;
|
|
67618
67625
|
height = bbox.height;
|
|
67619
67626
|
}
|
|
67627
|
+
this._isWidthFixed = options.width != null;
|
|
67628
|
+
this._isHeightFixed = options.height != null;
|
|
67620
67629
|
// Background color
|
|
67621
67630
|
var background = options === null || options === void 0 ? void 0 : options.background;
|
|
67622
67631
|
var backgroundColor = 0;
|
|
@@ -67685,6 +67694,23 @@ var DApplicationLayerOptions = /** @class */ (function () {
|
|
|
67685
67694
|
this._pixi.width = width;
|
|
67686
67695
|
return this;
|
|
67687
67696
|
};
|
|
67697
|
+
/**
|
|
67698
|
+
* Returns true if the width is fixed.
|
|
67699
|
+
*
|
|
67700
|
+
* @returns true if the width is fixed.
|
|
67701
|
+
*/
|
|
67702
|
+
DApplicationLayerOptions.prototype.isWidthFixed = function () {
|
|
67703
|
+
return this._isWidthFixed;
|
|
67704
|
+
};
|
|
67705
|
+
/**
|
|
67706
|
+
* Makes the canvas width fixed.
|
|
67707
|
+
*
|
|
67708
|
+
* @param fixed true to make the canvas width fixed
|
|
67709
|
+
*/
|
|
67710
|
+
DApplicationLayerOptions.prototype.setWidthFixed = function (fixed) {
|
|
67711
|
+
this._isWidthFixed = fixed;
|
|
67712
|
+
return this;
|
|
67713
|
+
};
|
|
67688
67714
|
/**
|
|
67689
67715
|
* Returns a canvas height.
|
|
67690
67716
|
*/
|
|
@@ -67700,6 +67726,23 @@ var DApplicationLayerOptions = /** @class */ (function () {
|
|
|
67700
67726
|
this._pixi.height = height;
|
|
67701
67727
|
return this;
|
|
67702
67728
|
};
|
|
67729
|
+
/**
|
|
67730
|
+
* Returns true if the height is fixed.
|
|
67731
|
+
*
|
|
67732
|
+
* @returns true if the height is fixed.
|
|
67733
|
+
*/
|
|
67734
|
+
DApplicationLayerOptions.prototype.isHeightFixed = function () {
|
|
67735
|
+
return this._isHeightFixed;
|
|
67736
|
+
};
|
|
67737
|
+
/**
|
|
67738
|
+
* Makes the canvas height fixed.
|
|
67739
|
+
*
|
|
67740
|
+
* @param fixed true to make the canvas height fixed
|
|
67741
|
+
*/
|
|
67742
|
+
DApplicationLayerOptions.prototype.setHeightFixed = function (fixed) {
|
|
67743
|
+
this._isHeightFixed = fixed;
|
|
67744
|
+
return this;
|
|
67745
|
+
};
|
|
67703
67746
|
/**
|
|
67704
67747
|
* Returns padding sizes.
|
|
67705
67748
|
* The default padding size is 6.
|
|
@@ -68221,23 +68264,34 @@ var DApplicationLayer = /** @class */ (function (_super) {
|
|
|
68221
68264
|
};
|
|
68222
68265
|
DApplicationLayer.prototype.initResizeHandling = function () {
|
|
68223
68266
|
var _this = this;
|
|
68224
|
-
var
|
|
68225
|
-
|
|
68226
|
-
|
|
68227
|
-
|
|
68228
|
-
|
|
68267
|
+
var options = this._options;
|
|
68268
|
+
var isWidthFixed = options.isWidthFixed();
|
|
68269
|
+
var isHeightFixed = options.isHeightFixed();
|
|
68270
|
+
if (!isWidthFixed || !isHeightFixed) {
|
|
68271
|
+
var onResizeBound = function () {
|
|
68272
|
+
_this.onResize();
|
|
68273
|
+
};
|
|
68274
|
+
if (window.ResizeObserver != null) {
|
|
68275
|
+
new ResizeObserver(onResizeBound).observe(this._rootElement);
|
|
68276
|
+
}
|
|
68277
|
+
else {
|
|
68278
|
+
window.addEventListener("resize", onResizeBound);
|
|
68279
|
+
window.addEventListener("orientationchange", onResizeBound);
|
|
68280
|
+
}
|
|
68281
|
+
}
|
|
68229
68282
|
};
|
|
68230
68283
|
DApplicationLayer.prototype.onResize = function () {
|
|
68284
|
+
var options = this._options;
|
|
68231
68285
|
var bbox = this._rootElement.getBoundingClientRect();
|
|
68232
|
-
var
|
|
68233
|
-
var
|
|
68234
|
-
this.renderer.resize(
|
|
68286
|
+
var newWidth = options.isWidthFixed() ? options.getWidth() : bbox.width;
|
|
68287
|
+
var newHeight = options.isHeightFixed() ? options.getHeight() : bbox.height;
|
|
68288
|
+
this.renderer.resize(newWidth, newHeight);
|
|
68235
68289
|
var padding = this._padding;
|
|
68236
68290
|
var children = this.stage.children;
|
|
68237
68291
|
for (var i = 0, imax = children.length; i < imax; ++i) {
|
|
68238
68292
|
var child = children[i];
|
|
68239
68293
|
if (child instanceof DBase) {
|
|
68240
|
-
child.onParentResize(
|
|
68294
|
+
child.onParentResize(newWidth, newHeight, padding);
|
|
68241
68295
|
}
|
|
68242
68296
|
}
|
|
68243
68297
|
this.update();
|
|
@@ -90161,10 +90215,10 @@ var DTableDataList = /** @class */ (function (_super) {
|
|
|
90161
90215
|
enumerable: false,
|
|
90162
90216
|
configurable: true
|
|
90163
90217
|
});
|
|
90164
|
-
DTableDataList.prototype.update = function () {
|
|
90218
|
+
DTableDataList.prototype.update = function (forcibly) {
|
|
90165
90219
|
var parent = this._parent;
|
|
90166
90220
|
if (parent) {
|
|
90167
|
-
parent.update();
|
|
90221
|
+
parent.update(forcibly);
|
|
90168
90222
|
}
|
|
90169
90223
|
};
|
|
90170
90224
|
DTableDataList.prototype.lock = function () {
|
|
@@ -90173,11 +90227,10 @@ var DTableDataList = /** @class */ (function (_super) {
|
|
|
90173
90227
|
parent.lock();
|
|
90174
90228
|
}
|
|
90175
90229
|
};
|
|
90176
|
-
DTableDataList.prototype.unlock = function () {
|
|
90230
|
+
DTableDataList.prototype.unlock = function (callIfNeeded) {
|
|
90177
90231
|
var parent = this._parent;
|
|
90178
90232
|
if (parent) {
|
|
90179
|
-
parent.unlock(
|
|
90180
|
-
parent.update();
|
|
90233
|
+
parent.unlock(callIfNeeded);
|
|
90181
90234
|
}
|
|
90182
90235
|
};
|
|
90183
90236
|
DTableDataList.prototype.size = function () {
|
|
@@ -90191,7 +90244,8 @@ var DTableDataList = /** @class */ (function (_super) {
|
|
|
90191
90244
|
this._selection.clear();
|
|
90192
90245
|
this._sorter.toDirty();
|
|
90193
90246
|
this._filter.toDirty();
|
|
90194
|
-
this.
|
|
90247
|
+
this.update();
|
|
90248
|
+
this.unlock(true);
|
|
90195
90249
|
}
|
|
90196
90250
|
};
|
|
90197
90251
|
DTableDataList.prototype.clearAndAdd = function (row) {
|
|
@@ -90202,7 +90256,8 @@ var DTableDataList = /** @class */ (function (_super) {
|
|
|
90202
90256
|
this._selection.clear();
|
|
90203
90257
|
this._sorter.toDirty();
|
|
90204
90258
|
this._filter.toDirty();
|
|
90205
|
-
this.
|
|
90259
|
+
this.update();
|
|
90260
|
+
this.unlock(true);
|
|
90206
90261
|
};
|
|
90207
90262
|
DTableDataList.prototype.clearAndAddAll = function (newRows) {
|
|
90208
90263
|
var rows = this._rows;
|
|
@@ -90214,7 +90269,8 @@ var DTableDataList = /** @class */ (function (_super) {
|
|
|
90214
90269
|
this._selection.clear();
|
|
90215
90270
|
this._sorter.toDirty();
|
|
90216
90271
|
this._filter.toDirty();
|
|
90217
|
-
this.
|
|
90272
|
+
this.update();
|
|
90273
|
+
this.unlock(true);
|
|
90218
90274
|
};
|
|
90219
90275
|
DTableDataList.prototype.add = function (row, index) {
|
|
90220
90276
|
var rows = this._rows;
|
|
@@ -90226,7 +90282,8 @@ var DTableDataList = /** @class */ (function (_super) {
|
|
|
90226
90282
|
this.lock();
|
|
90227
90283
|
sorter.toDirty();
|
|
90228
90284
|
filter.toDirty();
|
|
90229
|
-
this.
|
|
90285
|
+
this.update();
|
|
90286
|
+
this.unlock(true);
|
|
90230
90287
|
}
|
|
90231
90288
|
else if (0 <= index && index < rows.length) {
|
|
90232
90289
|
rows.splice(index, 0, row);
|
|
@@ -90234,7 +90291,8 @@ var DTableDataList = /** @class */ (function (_super) {
|
|
|
90234
90291
|
selection.shift(index, 1);
|
|
90235
90292
|
sorter.toDirty();
|
|
90236
90293
|
filter.toDirty();
|
|
90237
|
-
this.
|
|
90294
|
+
this.update();
|
|
90295
|
+
this.unlock(true);
|
|
90238
90296
|
}
|
|
90239
90297
|
};
|
|
90240
90298
|
DTableDataList.prototype.addAll = function (newRows, index) {
|
|
@@ -90251,7 +90309,8 @@ var DTableDataList = /** @class */ (function (_super) {
|
|
|
90251
90309
|
this.lock();
|
|
90252
90310
|
sorter.toDirty();
|
|
90253
90311
|
filter.toDirty();
|
|
90254
|
-
this.
|
|
90312
|
+
this.update();
|
|
90313
|
+
this.unlock(true);
|
|
90255
90314
|
}
|
|
90256
90315
|
else if (0 <= index && index < rowsLength) {
|
|
90257
90316
|
var newRowsLength = newRows.length;
|
|
@@ -90262,7 +90321,8 @@ var DTableDataList = /** @class */ (function (_super) {
|
|
|
90262
90321
|
selection.shift(index, newRowsLength);
|
|
90263
90322
|
sorter.toDirty();
|
|
90264
90323
|
filter.toDirty();
|
|
90265
|
-
this.
|
|
90324
|
+
this.update();
|
|
90325
|
+
this.unlock(true);
|
|
90266
90326
|
}
|
|
90267
90327
|
};
|
|
90268
90328
|
DTableDataList.prototype.get = function (index) {
|
|
@@ -90280,7 +90340,8 @@ var DTableDataList = /** @class */ (function (_super) {
|
|
|
90280
90340
|
this.lock();
|
|
90281
90341
|
this._sorter.toDirty();
|
|
90282
90342
|
this._filter.toDirty();
|
|
90283
|
-
this.
|
|
90343
|
+
this.update();
|
|
90344
|
+
this.unlock(true);
|
|
90284
90345
|
return result;
|
|
90285
90346
|
}
|
|
90286
90347
|
return null;
|
|
@@ -90293,7 +90354,8 @@ var DTableDataList = /** @class */ (function (_super) {
|
|
|
90293
90354
|
this._selection.remove(index);
|
|
90294
90355
|
this._sorter.toDirty();
|
|
90295
90356
|
this._filter.toDirty();
|
|
90296
|
-
this.
|
|
90357
|
+
this.update();
|
|
90358
|
+
this.unlock(true);
|
|
90297
90359
|
return result;
|
|
90298
90360
|
}
|
|
90299
90361
|
return null;
|
|
@@ -91631,6 +91693,18 @@ var DTableDataTree = /** @class */ (function (_super) {
|
|
|
91631
91693
|
parent.update(forcibly);
|
|
91632
91694
|
}
|
|
91633
91695
|
};
|
|
91696
|
+
DTableDataTree.prototype.lock = function () {
|
|
91697
|
+
var parent = this._parent;
|
|
91698
|
+
if (parent) {
|
|
91699
|
+
parent.lock();
|
|
91700
|
+
}
|
|
91701
|
+
};
|
|
91702
|
+
DTableDataTree.prototype.unlock = function (callIfNeeded) {
|
|
91703
|
+
var parent = this._parent;
|
|
91704
|
+
if (parent) {
|
|
91705
|
+
parent.unlock(callIfNeeded);
|
|
91706
|
+
}
|
|
91707
|
+
};
|
|
91634
91708
|
DTableDataTree.prototype.size = function () {
|
|
91635
91709
|
return this.rows.length;
|
|
91636
91710
|
};
|