@wcardinal/wcardinal-ui 0.410.0 → 0.412.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.d.ts +1 -0
- package/dist/types/wcardinal/ui/d-dialog-gesture-impl.d.ts +2 -2
- package/dist/types/wcardinal/ui/d-table-body-cell.d.ts +2 -2
- package/dist/types/wcardinal/ui/d-table-body-row.d.ts +9 -9
- package/dist/types/wcardinal/ui/d-table-body.d.ts +5 -7
- package/dist/types/wcardinal/ui/d-table-category-cell.d.ts +37 -0
- package/dist/types/wcardinal/ui/d-table-category-column-impl.d.ts +24 -0
- package/dist/types/wcardinal/ui/d-table-category-column.d.ts +10 -0
- package/dist/types/wcardinal/ui/d-table-category-container-impl.d.ts +12 -0
- package/dist/types/wcardinal/ui/d-table-category-container.d.ts +4 -0
- package/dist/types/wcardinal/ui/d-table-category.d.ts +13 -12
- package/dist/types/wcardinal/ui/d-table-column-container-impl.d.ts +25 -0
- package/dist/types/wcardinal/ui/d-table-column-container.d.ts +12 -0
- package/dist/types/wcardinal/ui/d-table-column-impl.d.ts +44 -0
- package/dist/types/wcardinal/ui/d-table-column.d.ts +22 -19
- package/dist/types/wcardinal/ui/d-table-header-cell-check.d.ts +1 -1
- package/dist/types/wcardinal/ui/d-table-header-cell.d.ts +34 -12
- package/dist/types/wcardinal/ui/d-table-header.d.ts +8 -9
- package/dist/types/wcardinal/ui/d-table-row.d.ts +8 -9
- package/dist/types/wcardinal/ui/d-table-state.d.ts +8 -0
- package/dist/types/wcardinal/ui/d-table.d.ts +15 -18
- package/dist/types/wcardinal/ui/theme/dark/d-theme-dark-table-header-cell.d.ts +1 -0
- package/dist/types/wcardinal/ui/theme/dark/d-theme-dark-table-header.d.ts +1 -0
- package/dist/types/wcardinal/ui/theme/white/d-theme-white-table-header-cell.d.ts +1 -0
- package/dist/types/wcardinal/ui/theme/white/d-theme-white-table-header.d.ts +1 -0
- package/dist/types/wcardinal/ui/util/util-gesture-easing.d.ts +1 -0
- package/dist/wcardinal/ui/d-base.js +9 -2
- package/dist/wcardinal/ui/d-base.js.map +1 -1
- package/dist/wcardinal/ui/d-dialog-gesture-impl.js.map +1 -1
- package/dist/wcardinal/ui/d-table-body-cell.js.map +1 -1
- package/dist/wcardinal/ui/d-table-body-row.js +4 -4
- package/dist/wcardinal/ui/d-table-body-row.js.map +1 -1
- package/dist/wcardinal/ui/d-table-body.js +6 -15
- package/dist/wcardinal/ui/d-table-body.js.map +1 -1
- package/dist/wcardinal/ui/d-table-category-cell.js +244 -2
- package/dist/wcardinal/ui/d-table-category-cell.js.map +1 -1
- package/dist/wcardinal/ui/d-table-category-column-impl.js +222 -0
- package/dist/wcardinal/ui/d-table-category-column-impl.js.map +1 -0
- package/dist/wcardinal/ui/d-table-category-column.js +6 -0
- package/dist/wcardinal/ui/d-table-category-column.js.map +1 -0
- package/dist/wcardinal/ui/d-table-category-container-impl.js +149 -0
- package/dist/wcardinal/ui/d-table-category-container-impl.js.map +1 -0
- package/dist/wcardinal/ui/d-table-category-container.js +2 -0
- package/dist/wcardinal/ui/d-table-category-container.js.map +1 -0
- package/dist/wcardinal/ui/d-table-category.js +49 -7
- package/dist/wcardinal/ui/d-table-category.js.map +1 -1
- package/dist/wcardinal/ui/d-table-column-container-impl.js +126 -0
- package/dist/wcardinal/ui/d-table-column-container-impl.js.map +1 -0
- package/dist/wcardinal/ui/d-table-column-container.js +2 -0
- package/dist/wcardinal/ui/d-table-column-container.js.map +1 -0
- package/dist/wcardinal/ui/d-table-column-impl.js +375 -0
- package/dist/wcardinal/ui/d-table-column-impl.js.map +1 -0
- package/dist/wcardinal/ui/d-table-column.js.map +1 -1
- package/dist/wcardinal/ui/d-table-header-cell-check.js.map +1 -1
- package/dist/wcardinal/ui/d-table-header-cell.js +245 -48
- package/dist/wcardinal/ui/d-table-header-cell.js.map +1 -1
- package/dist/wcardinal/ui/d-table-header.js +8 -22
- package/dist/wcardinal/ui/d-table-header.js.map +1 -1
- package/dist/wcardinal/ui/d-table-row.js +7 -5
- package/dist/wcardinal/ui/d-table-row.js.map +1 -1
- package/dist/wcardinal/ui/d-table-state.js +9 -1
- package/dist/wcardinal/ui/d-table-state.js.map +1 -1
- package/dist/wcardinal/ui/d-table.js +69 -631
- package/dist/wcardinal/ui/d-table.js.map +1 -1
- package/dist/wcardinal/ui/theme/dark/d-theme-dark-table-header-cell.js +7 -1
- package/dist/wcardinal/ui/theme/dark/d-theme-dark-table-header-cell.js.map +1 -1
- package/dist/wcardinal/ui/theme/dark/d-theme-dark-table-header.js +7 -0
- package/dist/wcardinal/ui/theme/dark/d-theme-dark-table-header.js.map +1 -1
- package/dist/wcardinal/ui/theme/white/d-theme-white-table-header-cell.js +7 -1
- package/dist/wcardinal/ui/theme/white/d-theme-white-table-header-cell.js.map +1 -1
- package/dist/wcardinal/ui/theme/white/d-theme-white-table-header.js +7 -0
- package/dist/wcardinal/ui/theme/white/d-theme-white-table-header.js.map +1 -1
- package/dist/wcardinal/ui/util/util-gesture-easing.js +16 -5
- package/dist/wcardinal/ui/util/util-gesture-easing.js.map +1 -1
- package/dist/wcardinal/ui/util/util-gesture.js +2 -1
- package/dist/wcardinal/ui/util/util-gesture.js.map +1 -1
- package/dist/wcardinal-ui-theme-dark-en-us.js +14 -2
- package/dist/wcardinal-ui-theme-dark-en-us.min.js +2 -2
- package/dist/wcardinal-ui-theme-dark-en-us.min.js.map +1 -1
- package/dist/wcardinal-ui-theme-dark-ja-jp.js +14 -2
- package/dist/wcardinal-ui-theme-dark-ja-jp.min.js +2 -2
- package/dist/wcardinal-ui-theme-dark-ja-jp.min.js.map +1 -1
- package/dist/wcardinal-ui-theme-dark.js +14 -2
- package/dist/wcardinal-ui-theme-dark.min.js +2 -2
- package/dist/wcardinal-ui-theme-white-en-us.js +14 -2
- package/dist/wcardinal-ui-theme-white-en-us.min.js +2 -2
- package/dist/wcardinal-ui-theme-white-en-us.min.js.map +1 -1
- package/dist/wcardinal-ui-theme-white-ja-jp.js +14 -2
- package/dist/wcardinal-ui-theme-white-ja-jp.min.js +2 -2
- package/dist/wcardinal-ui-theme-white-ja-jp.min.js.map +1 -1
- package/dist/wcardinal-ui-theme-white.js +14 -2
- package/dist/wcardinal-ui-theme-white.min.js +2 -2
- package/dist/wcardinal-ui.cjs.js +1178 -377
- package/dist/wcardinal-ui.js +1152 -375
- 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.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 { DDialogSelectOptions } from \"../ui/d-dialog-select\";\nimport { DAlignHorizontal } from \"./d-align-horizontal\";\nimport { DApplications } from \"./d-applications\";\nimport { DBase, DBaseOptions } from \"./d-base\";\nimport { DContentOptions } from \"./d-content\";\nimport { DFocusable, DFocusableContainer } from \"./d-controller-focus\";\nimport { DCoordinateSize } from \"./d-coordinate\";\nimport { DDialogSelect } from \"./d-dialog-select\";\nimport { DMenu, DMenuOptions } from \"./d-menu\";\nimport { DPane, DPaneOptions, DThemePane } from \"./d-pane\";\nimport { DTableBody, DTableBodyOptions } from \"./d-table-body\";\nimport { DTableCategory, DTableCategoryColumn, 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 { DTableDataComparatorFunction } from \"./d-table-data-sorter\";\nimport { DTableHeader, DTableHeaderOptions } from \"./d-table-header\";\nimport { DTableRow } from \"./d-table-row\";\nimport { isArray } from \"./util/is-array\";\nimport { isString } from \"./util/is-string\";\nimport { toEnum } from \"./util/to-enum\";\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 { DTableColumnType } from \"./d-table-column-type\";\nimport { DTableColumnEditing, DTableColumnEditable } from \"./d-table-column-editing\";\nimport { DTableColumnSorting } from \"./d-table-column-sorting\";\nimport {\n\tDTableColumnSelecting,\n\tDTableColumnSelectingDialog,\n\tDTableColumnSelectingOptions\n} from \"./d-table-column-selecting\";\nimport { DTableColumnGetter } from \"./d-table-column-getter\";\nimport { DTableColumnSetter } from \"./d-table-column-setter\";\nimport { DTableColumnRenderable } from \"./d-table-column-renderable\";\nimport { DTableColumnState } from \"./d-table-column-state\";\nimport { DTableColumnUpdate } from \"./d-table-column-update\";\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: Array<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\nconst defaultGetter = <ROW, CELL>(row: ROW, columnIndex: number): CELL => {\n\treturn (row as any)[columnIndex];\n};\n\nconst defaultSetter = <ROW, CELL>(row: ROW, columnIndex: number, cell: CELL): void => {\n\t(row as any)[columnIndex] = cell;\n};\n\nconst defaultGetterEmpty = <CELL>(): CELL => \"\" as any;\n\nconst defaultSetterEmpty = (): void => {\n\t// DO NOTHING\n};\n\nconst toPathGetter = <ROW, CELL>(path: string[], def?: CELL): DTableColumnGetter<ROW, CELL> => {\n\tif (path.length <= 1) {\n\t\tconst key = path[0];\n\t\tif (def === undefined) {\n\t\t\treturn (row: ROW): CELL => {\n\t\t\t\treturn (row as any)[key];\n\t\t\t};\n\t\t} else {\n\t\t\treturn (row: ROW): CELL => {\n\t\t\t\treturn Object.prototype.hasOwnProperty.call(row, key) ? (row as any)[key] : def;\n\t\t\t};\n\t\t}\n\t} else {\n\t\tif (def === undefined) {\n\t\t\treturn (row: ROW): CELL => {\n\t\t\t\tfor (let i = 0, imax = path.length - 1; i < imax; ++i) {\n\t\t\t\t\trow = (row as any)[path[i]];\n\t\t\t\t}\n\t\t\t\treturn (row as any)[path[path.length - 1]];\n\t\t\t};\n\t\t} else {\n\t\t\treturn (row: ROW): CELL => {\n\t\t\t\tfor (let i = 0, imax = path.length - 1; i < imax; ++i) {\n\t\t\t\t\trow = (row as any)[path[i]];\n\t\t\t\t}\n\t\t\t\tconst key = path[path.length - 1];\n\t\t\t\treturn Object.prototype.hasOwnProperty.call(row, key) ? (row as any)[key] : def;\n\t\t\t};\n\t\t}\n\t}\n};\n\nconst toPathSetter = <ROW, CELL>(path: string[]): DTableColumnSetter<ROW, CELL> => {\n\tif (path.length <= 1) {\n\t\tconst key = path[0];\n\t\treturn (row: ROW, columnIndex: number, cell: CELL): void => {\n\t\t\t(row as any)[key] = cell;\n\t\t};\n\t} else {\n\t\treturn (row: ROW, columnIndex: number, cell: CELL): void => {\n\t\t\tfor (let i = 0, imax = path.length - 1; i < imax; ++i) {\n\t\t\t\trow = (row as any)[path[i]] || {};\n\t\t\t}\n\t\t\t(row as any)[path[path.length - 1]] = cell;\n\t\t};\n\t}\n};\n\nconst toColumnAlign = <ROW, CELL>(\n\toptions: DTableColumnOptions<ROW, CELL>,\n\ttype: DTableColumnType\n): DAlignHorizontal => {\n\tconst align = options.align;\n\tif (align != null) {\n\t\tif (isString(align)) {\n\t\t\treturn DAlignHorizontal[align];\n\t\t} else {\n\t\t\treturn align;\n\t\t}\n\t}\n\tswitch (type) {\n\t\tcase DTableColumnType.TEXT:\n\t\tcase DTableColumnType.TEXT_AREA:\n\t\t\treturn DAlignHorizontal.LEFT;\n\t\tcase DTableColumnType.REAL:\n\t\tcase DTableColumnType.INTEGER:\n\t\t\treturn DAlignHorizontal.RIGHT;\n\t\tcase DTableColumnType.BUTTON:\n\t\tcase DTableColumnType.INDEX:\n\t\tcase DTableColumnType.SELECT:\n\t\tcase DTableColumnType.ACTION:\n\t\tcase DTableColumnType.LINK:\n\t\tcase DTableColumnType.CHECK:\n\t\tcase DTableColumnType.CHECK_SINGLE:\n\t\tcase DTableColumnType.COLOR:\n\t\t\treturn DAlignHorizontal.CENTER;\n\t\tdefault:\n\t\t\treturn DAlignHorizontal.LEFT;\n\t}\n};\n\nconst toColumnDataChecker = <ROW>(path: string[] | null): DTableColumnEditable<ROW> => {\n\tif (path != null) {\n\t\tconst pathLength = path.length;\n\t\tif (pathLength <= 1) {\n\t\t\tconst key = path[0];\n\t\t\treturn (row: ROW): boolean => {\n\t\t\t\treturn Object.prototype.hasOwnProperty.call(row, key);\n\t\t\t};\n\t\t} else {\n\t\t\treturn (row: any): boolean => {\n\t\t\t\tfor (let i = 0; i < pathLength; ++i) {\n\t\t\t\t\tconst part: string = path[i];\n\t\t\t\t\tif (part in row) {\n\t\t\t\t\t\trow = row[part];\n\t\t\t\t\t} else {\n\t\t\t\t\t\treturn false;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\treturn true;\n\t\t\t};\n\t\t}\n\t}\n\treturn (row: any, columnIndex: number): boolean => {\n\t\treturn columnIndex < row.length;\n\t};\n};\n\nconst toColumnEditingEnable = <ROW>(\n\tenable: boolean | DTableColumnEditable<ROW> | \"auto\" | \"AUTO\" | undefined,\n\tpath: string[] | null\n): boolean | DTableColumnEditable<ROW> => {\n\tif (isString(enable)) {\n\t\treturn toColumnDataChecker(path);\n\t} else if (enable != null) {\n\t\treturn enable;\n\t} else {\n\t\treturn false;\n\t}\n};\n\nconst toColumnEditing = <ROW, CELL>(\n\toptions: DTableColumnOptions<ROW, CELL>,\n\tpath: string[] | null\n): DTableColumnEditing<ROW, CELL> => {\n\tconst editing = options.editing;\n\tconst editable = options.editable;\n\tif (editing) {\n\t\treturn {\n\t\t\tenable: toColumnEditingEnable(editing.enable ?? editable, path),\n\t\t\tformatter: editing.formatter,\n\t\t\tunformatter: editing.unformatter,\n\t\t\tvalidator: editing.validator\n\t\t};\n\t}\n\treturn {\n\t\tenable: toColumnEditingEnable(editable, path)\n\t};\n};\n\nconst toComparator = <ROW, CELL>(\n\tgetter: DTableColumnGetter<ROW, CELL>,\n\tindex: number\n): DTableDataComparatorFunction<ROW> => {\n\treturn (rowA: ROW, rowB: ROW): number => {\n\t\tconst valueA = getter(rowA, index) as any;\n\t\tconst valueB = getter(rowB, index) as any;\n\t\treturn valueA < valueB ? -1 : valueB < valueA ? +1 : 0;\n\t};\n};\n\nconst toColumnSorting = <ROW, CELL>(\n\tgetter: DTableColumnGetter<ROW, CELL>,\n\tindex: number,\n\toptions: DTableColumnOptions<ROW, CELL>\n): DTableColumnSorting<ROW> => {\n\tconst sorting = options.sorting;\n\tconst sortable = options.sortable;\n\tif (sorting) {\n\t\tif (sorting.enable || sortable) {\n\t\t\treturn {\n\t\t\t\tenable: true,\n\t\t\t\tcomparator: sorting.comparator || toComparator(getter, index)\n\t\t\t};\n\t\t}\n\t\treturn {\n\t\t\tenable: false\n\t\t};\n\t}\n\tif (sortable) {\n\t\treturn {\n\t\t\tenable: true,\n\t\t\tcomparator: toComparator(getter, index)\n\t\t};\n\t}\n\treturn {\n\t\tenable: false\n\t};\n};\n\nconst toColumnMenu = (\n\toptions?: DMenuOptions<unknown> | DMenu<unknown>\n): DMenu<unknown> | undefined => {\n\tif (options == null) {\n\t\treturn undefined;\n\t} else if (options instanceof DMenu) {\n\t\treturn options;\n\t} else {\n\t\treturn new DMenu(options);\n\t}\n};\n\nconst toColumnDialog = (\n\toptions?: DDialogSelectOptions<unknown> | DTableColumnSelectingDialog<unknown>\n): DTableColumnSelectingDialog<unknown> | undefined => {\n\tif (options == null) {\n\t\treturn undefined;\n\t} else if (\"open\" in options) {\n\t\treturn options;\n\t} else {\n\t\treturn new DDialogSelect(options);\n\t}\n};\n\nconst defaultSelectingGetter = (dialog: DTableColumnSelectingDialog<unknown>): unknown => {\n\treturn dialog.value;\n};\n\nconst defaultSelectingSetter = (): void => {\n\t// DO NOTHING\n};\n\nconst toColumnSelecting = (\n\toptions: DTableColumnSelectingOptions<any, any, any> | undefined\n): DTableColumnSelecting<any, any, any> => {\n\tif (options) {\n\t\treturn {\n\t\t\tgetter: options.getter || defaultSelectingGetter,\n\t\t\tsetter: options.setter || defaultSelectingSetter,\n\t\t\tmenu: toColumnMenu(options.menu),\n\t\t\tmultiple: toColumnMenu(options.multiple),\n\t\t\tdialog: toColumnDialog(options.dialog),\n\t\t\tpromise: options.promise\n\t\t};\n\t}\n\treturn {\n\t\tgetter: defaultSelectingGetter,\n\t\tsetter: defaultSelectingSetter\n\t};\n};\n\nconst toColumnGetter = <ROW, CELL>(\n\toptions: DTableColumnOptions<ROW, CELL>,\n\ttype: DTableColumnType,\n\tparts: string[] | null\n): DTableColumnGetter<ROW, CELL> => {\n\tconst getter = options.getter;\n\tif (getter) {\n\t\treturn getter;\n\t}\n\tswitch (type) {\n\t\tcase DTableColumnType.ACTION:\n\t\tcase DTableColumnType.LINK:\n\t\t\treturn defaultGetterEmpty;\n\t\tdefault:\n\t\t\tif (parts == null) {\n\t\t\t\treturn defaultGetter;\n\t\t\t} else {\n\t\t\t\treturn toPathGetter(parts, options.default);\n\t\t\t}\n\t}\n};\n\nconst toColumnSetter = <ROW, CELL>(\n\toptions: DTableColumnOptions<ROW, CELL>,\n\ttype: DTableColumnType,\n\tpath: string[] | null\n): DTableColumnSetter<ROW, CELL> => {\n\tconst setter = options.setter;\n\tif (setter) {\n\t\treturn setter;\n\t}\n\tswitch (type) {\n\t\tcase DTableColumnType.BUTTON:\n\t\tcase DTableColumnType.ACTION:\n\t\tcase DTableColumnType.LINK:\n\t\t\treturn defaultSetterEmpty;\n\t\tdefault:\n\t\t\tif (path == null) {\n\t\t\t\treturn defaultSetter;\n\t\t\t} else {\n\t\t\t\treturn toPathSetter(path);\n\t\t\t}\n\t}\n};\n\nconst toColumnState = <ROW, CELL>(\n\toptions: DTableColumnOptions<ROW, CELL>\n): DTableColumnState<ROW> => {\n\tconst state = options.state;\n\tif (state != null) {\n\t\tif (isString(state) || isArray(state)) {\n\t\t\treturn {\n\t\t\t\tinitial: state,\n\t\t\t\tmodifier: undefined\n\t\t\t};\n\t\t} else {\n\t\t\treturn {\n\t\t\t\tinitial: undefined,\n\t\t\t\tmodifier: state\n\t\t\t};\n\t\t}\n\t}\n\treturn {\n\t\tinitial: undefined,\n\t\tmodifier: undefined\n\t};\n};\n\nconst toColumnPath = <ROW, CELL>(options: DTableColumnOptions<ROW, CELL>): string[] | null => {\n\treturn options.path != null ? options.path.split(\".\") : null;\n};\n\nconst toColumnRenderable = <ROW, CELL>(\n\toptions: DTableColumnOptions<ROW, CELL>,\n\tpath: string[] | null\n): boolean | DTableColumnRenderable<ROW> => {\n\tconst renderable = options.renderable;\n\tif (isString(renderable)) {\n\t\treturn toColumnDataChecker(path);\n\t} else if (renderable != null) {\n\t\treturn renderable;\n\t}\n\treturn true;\n};\n\nconst toColumn = <ROW, CELL>(\n\tindex: number,\n\toptions: DTableColumnOptions<ROW, CELL>\n): DTableColumn<ROW, CELL> => {\n\tlet weight = options.weight;\n\tlet width = options.width;\n\tif (weight != null) {\n\t\tif (width != null) {\n\t\t\twidth = undefined;\n\t\t}\n\t} else if (width == null) {\n\t\tweight = 1;\n\t}\n\tconst type = toEnum(options.type ?? DTableColumnType.TEXT, DTableColumnType);\n\tconst align = toColumnAlign(options, type);\n\tconst label = options.label || \"\";\n\tconst path = toColumnPath(options);\n\tconst getter = toColumnGetter(options, type, path);\n\tconst setter = toColumnSetter(options, type, path);\n\treturn {\n\t\tweight,\n\t\twidth,\n\t\ttype,\n\t\tlabel,\n\t\tgetter,\n\t\tsetter,\n\t\tformatter: options.formatter,\n\t\trenderable: toColumnRenderable(options, path),\n\t\talign,\n\t\tstate: toColumnState(options),\n\n\t\tediting: toColumnEditing(options, path),\n\t\tsorting: toColumnSorting(getter, index, options),\n\n\t\theader: options.header,\n\t\tbody: options.body,\n\n\t\tselecting: toColumnSelecting(options.selecting),\n\n\t\tcategory: options.category,\n\t\tfrozen: options.frozen,\n\t\toffset: 0.0,\n\n\t\tlink: options.link,\n\n\t\tupdate: toEnum(options.update ?? DTableColumnUpdate.CELL, DTableColumnUpdate)\n\t};\n};\n\nconst toColumns = <ROW, CELL>(\n\toptions: Array<DTableColumnOptions<ROW, CELL>>\n): Array<DTableColumn<ROW, CELL>> => {\n\tconst result = [];\n\tfor (let i = 0, imax = options.length; i < imax; ++i) {\n\t\tresult.push(toColumn(i, options[i]));\n\t}\n\treturn result;\n};\n\nconst toFrozen = <ROW, CELL>(columns: Array<DTableColumn<ROW, CELL>>): number => {\n\tfor (let i = columns.length - 1; 0 <= i; --i) {\n\t\tif (columns[i].frozen === true) {\n\t\t\treturn i + 1;\n\t\t}\n\t}\n\treturn 0;\n};\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 _columns?: Array<DTableColumn<ROW, unknown>>;\n\tprotected _frozen?: number;\n\tprotected _categories?: DTableCategory[];\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\tcontent.setWidth(this.toContentWidth(options));\n\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 columns(): Array<DTableColumn<ROW, unknown>> {\n\t\tlet result = this._columns;\n\t\tif (result == null) {\n\t\t\tconst options = this._options;\n\t\t\tresult = options ? toColumns(options.columns) : [];\n\t\t\tthis._columns = result;\n\t\t}\n\t\treturn result;\n\t}\n\n\tget frozen(): number {\n\t\tlet result = this._frozen;\n\t\tif (result == null) {\n\t\t\tresult = toFrozen(this.columns);\n\t\t\tthis._frozen = result;\n\t\t}\n\t\treturn result;\n\t}\n\n\tget categories(): DTableCategory[] {\n\t\tlet result = this._categories;\n\t\tif (result == null) {\n\t\t\tresult = this.newCategories(this._options, this.columns, this.frozen);\n\t\t\tthis._categories = result;\n\t\t}\n\t\treturn result;\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 getCategoryCount(columns: Array<DTableColumn<ROW, unknown>>): number {\n\t\tlet result = 0;\n\t\tfor (let i = 0, imax = columns.length; i < imax; ++i) {\n\t\t\tconst category = columns[i].category;\n\t\t\tif (category != null) {\n\t\t\t\tconst count = isString(category) ? 1 : category.length;\n\t\t\t\tresult = Math.max(result, count);\n\t\t\t}\n\t\t}\n\t\treturn result;\n\t}\n\n\tprotected toCategoryLabel(\n\t\tindex: number,\n\t\tcategory: string | string[] | undefined\n\t): string | undefined {\n\t\tif (category) {\n\t\t\tif (isString(category)) {\n\t\t\t\tif (index === 0) {\n\t\t\t\t\treturn category;\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tif (index < category.length) {\n\t\t\t\t\treturn category[index];\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\treturn undefined;\n\t}\n\n\tprotected isSameCategory(\n\t\tindex: number,\n\t\ta: string | string[] | undefined,\n\t\tb: string | string[] | undefined\n\t): boolean {\n\t\tif (a != null) {\n\t\t\tif (b != null) {\n\t\t\t\tif (isString(a)) {\n\t\t\t\t\tif (isString(b)) {\n\t\t\t\t\t\tif (0 < index) {\n\t\t\t\t\t\t\treturn true;\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\treturn a === b;\n\t\t\t\t\t\t}\n\t\t\t\t\t} else {\n\t\t\t\t\t\tif (0 < index) {\n\t\t\t\t\t\t\treturn b.length <= index;\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\treturn b.length === 1 && a === b[0];\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\tif (isString(b)) {\n\t\t\t\t\t\tif (0 < index) {\n\t\t\t\t\t\t\treturn a.length <= index;\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\treturn a.length === 1 && a[0] === b;\n\t\t\t\t\t\t}\n\t\t\t\t\t} else {\n\t\t\t\t\t\tif (a.length <= index && b.length <= index) {\n\t\t\t\t\t\t\treturn true;\n\t\t\t\t\t\t} else if (b.length === a.length) {\n\t\t\t\t\t\t\tfor (let i = index, imax = a.length; i < imax; ++i) {\n\t\t\t\t\t\t\t\tif (a[i] !== b[i]) {\n\t\t\t\t\t\t\t\t\treturn false;\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\treturn true;\n\t\t\t\t\t\t}\n\t\t\t\t\t\treturn false;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tif (isString(a)) {\n\t\t\t\t\tif (0 < index) {\n\t\t\t\t\t\treturn true;\n\t\t\t\t\t} else {\n\t\t\t\t\t\treturn false;\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\tif (a.length <= index) {\n\t\t\t\t\t\treturn true;\n\t\t\t\t\t} else {\n\t\t\t\t\t\treturn false;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t} else {\n\t\t\tif (b != null) {\n\t\t\t\tif (isString(b)) {\n\t\t\t\t\tif (0 < index) {\n\t\t\t\t\t\treturn true;\n\t\t\t\t\t} else {\n\t\t\t\t\t\treturn false;\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\tif (b.length <= index) {\n\t\t\t\t\t\treturn true;\n\t\t\t\t\t} else {\n\t\t\t\t\t\treturn false;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\treturn true;\n\t\t\t}\n\t\t}\n\t}\n\n\tprotected toCategoryColumns(\n\t\tindex: number,\n\t\tcolumns: Array<DTableColumn<ROW, unknown>>,\n\t\tfrozen: number\n\t): DTableCategoryColumn[] {\n\t\tconst result: DTableCategoryColumn[] = [];\n\t\tlet tcolumn: DTableColumn<ROW, unknown> | null = null;\n\t\tlet ccolumn: DTableCategoryColumn | null = null;\n\t\tfor (let i = 0, imax = columns.length; i < imax; ++i) {\n\t\t\tconst column = columns[i];\n\t\t\tif (\n\t\t\t\ti !== frozen &&\n\t\t\t\tccolumn &&\n\t\t\t\ttcolumn &&\n\t\t\t\tthis.isSameCategory(index, tcolumn.category, column.category)\n\t\t\t) {\n\t\t\t\tif (ccolumn.weight != null && column.weight != null) {\n\t\t\t\t\tccolumn.weight += column.weight;\n\t\t\t\t} else if (ccolumn.width != null && column.width != null) {\n\t\t\t\t\tccolumn.width += column.width;\n\t\t\t\t} else {\n\t\t\t\t\ttcolumn = column;\n\t\t\t\t\tccolumn = {\n\t\t\t\t\t\tlabel: this.toCategoryLabel(index, column.category),\n\t\t\t\t\t\tweight: column.weight,\n\t\t\t\t\t\twidth: column.width,\n\t\t\t\t\t\toffset: 0.0\n\t\t\t\t\t};\n\t\t\t\t\tresult.push(ccolumn);\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\ttcolumn = column;\n\t\t\t\tccolumn = {\n\t\t\t\t\tlabel: this.toCategoryLabel(index, column.category),\n\t\t\t\t\tweight: column.weight,\n\t\t\t\t\twidth: column.width,\n\t\t\t\t\toffset: 0.0\n\t\t\t\t};\n\t\t\t\tresult.push(ccolumn);\n\t\t\t}\n\t\t}\n\t\treturn result;\n\t}\n\n\tprotected toCategoryOptions(\n\t\tindex: number,\n\t\toptions: DTableCategoryOptions | undefined,\n\t\tcolumns: Array<DTableColumn<ROW, unknown>>,\n\t\tfrozen: number,\n\t\toffset: number\n\t): DTableCategoryOptions {\n\t\tif (options) {\n\t\t\tif (options.columns === undefined) {\n\t\t\t\toptions.columns = this.toCategoryColumns(index, columns, frozen);\n\t\t\t}\n\t\t\tif (options.frozen == null) {\n\t\t\t\toptions.frozen = frozen;\n\t\t\t}\n\t\t\tif (options.offset == null) {\n\t\t\t\toptions.offset = offset;\n\t\t\t}\n\t\t\treturn options;\n\t\t}\n\t\treturn {\n\t\t\tcolumns: this.toCategoryColumns(index, columns, frozen),\n\t\t\tfrozen,\n\t\t\toffset\n\t\t};\n\t}\n\n\tprotected newCategories(\n\t\toptions: OPTIONS | undefined,\n\t\tcolumns: Array<DTableColumn<ROW, unknown>>,\n\t\tfrozen: number\n\t): DTableCategory[] {\n\t\tconst count = this.getCategoryCount(columns);\n\t\tconst result: DTableCategory[] = [];\n\t\tlet offset: number = 0;\n\t\tfor (let i = count - 1; 0 <= i; --i) {\n\t\t\tconst category = new DTableCategory(\n\t\t\t\tthis.toCategoryOptions(i, options?.category, columns, frozen, offset)\n\t\t\t);\n\t\t\tresult.push(category);\n\t\t\toffset += category.height;\n\t\t}\n\t\treturn result;\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 toContentWidth(options?: OPTIONS): DCoordinateSize {\n\t\tlet columnWidthTotal = 0;\n\t\tconst columns = options?.columns;\n\t\tif (columns) {\n\t\t\tfor (let i = 0, imax = columns.length; i < imax; ++i) {\n\t\t\t\tconst column = columns[i];\n\t\t\t\tconst columnWidth = column.width;\n\t\t\t\tif (columnWidth != null) {\n\t\t\t\t\tcolumnWidthTotal += columnWidth;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\tif (0 < columnWidthTotal) {\n\t\t\treturn (p: number): number => {\n\t\t\t\treturn Math.max(p, columnWidthTotal);\n\t\t\t};\n\t\t}\n\t\treturn \"100%\";\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\t\tthis._options,\n\t\t\t\tthis.columns,\n\t\t\t\tthis.frozen,\n\t\t\t\tthis.getHeaderOffset()\n\t\t\t);\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(\n\t\toptions: OPTIONS | undefined,\n\t\tcolumns: Array<DTableColumn<ROW, unknown>>,\n\t\tfrozen: number,\n\t\toffset: number\n\t): DTableHeader<ROW> | null {\n\t\tif (this.hasHeader(options)) {\n\t\t\treturn new DTableHeader<ROW>(\n\t\t\t\tthis.toHeaderOptions(options?.header, columns, frozen, offset)\n\t\t\t);\n\t\t}\n\t\treturn null;\n\t}\n\n\tprotected toHeaderOptions(\n\t\toptions: DTableHeaderOptions<ROW> | undefined,\n\t\tcolumns: Array<DTableColumn<ROW, unknown>>,\n\t\tfrozen: number,\n\t\toffset: number\n\t): DTableHeaderOptions<ROW> {\n\t\tif (options) {\n\t\t\tif (options.columns === undefined) {\n\t\t\t\toptions.columns = columns;\n\t\t\t}\n\t\t\tif (options.frozen == null) {\n\t\t\t\toptions.frozen = frozen;\n\t\t\t}\n\t\t\tif (options.offset === undefined) {\n\t\t\t\toptions.offset = offset;\n\t\t\t}\n\t\t\tif (options.table === undefined) {\n\t\t\t\toptions.table = this;\n\t\t\t}\n\t\t\treturn options;\n\t\t}\n\t\treturn {\n\t\t\tcolumns,\n\t\t\tfrozen,\n\t\t\toffset,\n\t\t\ttable: this\n\t\t};\n\t}\n\n\tprotected getBodyOffset(): number {\n\t\tlet result = this._bodyOffset;\n\t\tif (result == null) {\n\t\t\tresult = this.newBodyOffset();\n\t\t\tthis._bodyOffset = result;\n\t\t}\n\t\treturn result;\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\tlet result = this._body;\n\t\tif (result == null) {\n\t\t\tresult = this.newBody(this._options, this.columns, this.frozen, this.getBodyOffset());\n\t\t\tthis._body = result;\n\t\t}\n\t\treturn result;\n\t}\n\n\tprotected newBody(\n\t\toptions: OPTIONS | undefined,\n\t\tcolumns: Array<DTableColumn<ROW, unknown>>,\n\t\tfrozen: number,\n\t\toffset: number\n\t): DTableBody<ROW, DATA> {\n\t\treturn new DTableBody<ROW, DATA>(\n\t\t\tthis.toBodyOptions(options?.body, columns, frozen, offset, options?.data)\n\t\t);\n\t}\n\n\tprotected toBodyOptions(\n\t\toptions: DTableBodyOptions<ROW, DATA> | undefined,\n\t\tcolumns: Array<DTableColumn<ROW, unknown>>,\n\t\tfrozen: number,\n\t\toffset: number,\n\t\tdata: ROW[] | DTableDataOptions<ROW> | DATA | undefined\n\t): DTableBodyOptions<ROW, DATA> {\n\t\tif (options != null) {\n\t\t\tif (options.columns === undefined) {\n\t\t\t\toptions.columns = columns;\n\t\t\t}\n\t\t\tif (options.frozen == null) {\n\t\t\t\toptions.frozen = frozen;\n\t\t\t}\n\t\t\tif (options.offset === undefined) {\n\t\t\t\toptions.offset = offset;\n\t\t\t}\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\tcolumns,\n\t\t\t\tfrozen,\n\t\t\t\toffset,\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\tcolumns,\n\t\t\t\tfrozen,\n\t\t\t\toffset,\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":"AAAA;;;GAGG;;AAGH,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,KAAK,EAAgB,MAAM,UAAU,CAAC;AAG/C,OAAO,EAAE,KAAK,EAA4B,MAAM,UAAU,CAAC;AAC3D,OAAO,EAAE,UAAU,EAAqB,MAAM,gBAAgB,CAAC;AAK/D,OAAO,EAAE,uBAAuB,EAAE,MAAM,0BAA0B,CAAC;AACnE,OAAO,EAAE,YAAY,EAAuB,MAAM,kBAAkB,CAAC;AACrE,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAC1C,OAAO,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAC1C,OAAO,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAC/D,OAAO,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAC7D,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAGtD,OAAO,EAAE,yBAAyB,EAAE,MAAM,iCAAiC,CAAC;AAE5E,OAAO,EAAE,2BAA2B,EAAE,MAAM,mCAAmC,CAAC;AAiBhF;IAWU,0BAAsC;IAQ/C,gBAAY,OAAiB;QAA7B,YACC,kBAAM,OAAO,CAAC,SAsBd;QApBA,IAAM,OAAO,GAAG,KAAI,CAAC,OAAO,CAAC;QAC7B,IAAM,IAAI,GAAG,KAAI,CAAC,IAAI,CAAC;QACvB,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QACvB,IAAI,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,KAAK,uBAAuB,CAAC,IAAI,EAAE;YAC9D,KAAI,CAAC,EAAE,CAAC,gBAAgB,CAAC,GAAG,EAAE,UAAC,CAAmB;gBACjD,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;YACpB,CAAC,CAAC,CAAC;SACH;QAED,IAAM,MAAM,GAAG,KAAI,CAAC,MAAM,CAAC;QAC3B,IAAI,MAAM,EAAE;YACX,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;SACzB;QAED,IAAM,UAAU,GAAG,KAAI,CAAC,UAAU,CAAC;QACnC,KAAK,IAAI,CAAC,GAAG,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,EAAE;YAChD,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;SAChC;QAED,IAAI,CAAC,MAAM,EAAE,CAAC;;IACf,CAAC;IAED,sBAAI,0BAAM;aAAV;;YACC,OAAO,OAAC,IAAI,CAAC,OAAO,oCAAZ,IAAI,CAAC,OAAO,GAAK,IAAI,CAAC,SAAS,EAAE,EAAC,CAAC;QAC5C,CAAC;;;OAAA;IAES,0BAAS,GAAnB;;QACC,OAAO,IAAI,yBAAyB,CAAM,IAAI,EAAE,MAAA,IAAI,CAAC,QAAQ,0CAAE,OAAO,CAAC,CAAC;IACzE,CAAC;IAED,sBAAI,2BAAO;aAAX;YACC,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC;QAC1B,CAAC;;;OAAA;IAED,sBAAI,0BAAM;aAAV;YACC,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC;QAC3B,CAAC;;;OAAA;IAED,sBAAI,4BAAQ;aAAZ;YACC,OAAO,CAAC,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC;QAC9C,CAAC;;;OAAA;IAES,4BAAW,GAArB;;QACC,IAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAC3B,OAAO,IAAI,2BAA2B,CACrC,MAAM,CAAC,KAAK,EACZ,MAAM,CAAC,MAAM,EACb,MAAA,IAAI,CAAC,QAAQ,0CAAE,QAAQ,CACvB,CAAC;IACH,CAAC;IAED,sBAAI,8BAAU;aAAd;YACC,OAAO,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC;QAC5B,CAAC;;;OAAA;IAES,4BAAW,GAArB,UAAsB,OAAc;QACnC,iBAAM,WAAW,YAAC,OAAO,CAAC,CAAC;QAC3B,OAAO,CAAC,KAAK,CAAC,cAAc,GAAG,IAAI,CAAC;IACrC,CAAC;IAES,gCAAe,GAAzB;QACC,iBAAM,eAAe,WAAE,CAAC;QACxB,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;IACpB,CAAC;IAED,yBAAQ,GAAR,UAAS,QAAgB,EAAE,SAAiB,EAAE,QAAgB,EAAE,SAAiB;QAChF,IAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;QACjC,SAAS,CAAC,IAAI,EAAE,CAAC;QAEjB,IAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;QACvB,IAAI,CAAC,IAAI,EAAE,CAAC;QACZ,iBAAM,QAAQ,YAAC,QAAQ,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAC;QACzD,IAAI,CAAC,MAAM,EAAE,CAAC;QACd,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAElB,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IACxB,CAAC;IAES,2BAAU,GAApB,UACC,CAA0B,EAC1B,kBAAsC;QAEtC,IAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,EAAE,kBAAkB,CAAC,CAAC;QAC3D,OAAO,iBAAM,UAAU,YAAC,CAAC,EAAE,kBAAkB,CAAC,IAAI,MAAM,CAAC;IAC1D,CAAC;IAES,6BAAY,GAAtB,UAAuB,OAA+B;QAAtD,iBAIC;QAHA,OAAO,IAAI,eAAe,CAAC,IAAI,EAAE,OAAO,EAAE,UAAC,eAAwB;YAClE,KAAI,CAAC,iBAAiB,CAAC,eAAe,CAAC,CAAC;QACzC,CAAC,CAAC,CAAC;IACJ,CAAC;IAES,2BAAU,GAApB,UAAqB,OAAyB;QAA9C,iBA+BC;QA9BA,IAAM,MAAM,GAAG,iBAAM,UAAU,YAAC,OAAO,CAAC,CAAC;QAEzC,YAAY;QACZ,IAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAC3B,IAAI,WAAW,GAAG,MAAM,CAAC,KAAK,CAAC;QAC/B,IAAI,CAAC,GAAG,WAAW,EAAE;YACpB,MAAM,CAAC,EAAE,CAAC,QAAQ,EAAE;gBACnB,WAAW,GAAG,MAAM,CAAC,KAAK,CAAC;gBAC3B,IAAM,WAAW,GAAG,KAAI,CAAC,KAAK,CAAC;gBAC/B,IAAM,YAAY,GAAG,KAAI,CAAC,MAAM,CAAC;gBACjC,IAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;gBACpD,IAAM,OAAO,GAAG,WAAW,GAAG,QAAQ,CAAC;gBAEvC,0CAA0C;gBAC1C,IAAI,MAAM,CAAC,CAAC,GAAG,OAAO,EAAE;oBACvB,MAAM,CAAC,CAAC,GAAG,OAAO,CAAC;iBACnB;gBAED,6BAA6B;gBAC7B,MAAM,CAAC,cAAc,CAAC,WAAW,EAAE,YAAY,EAAE,KAAI,CAAC,OAAO,CAAC,CAAC;YAChE,CAAC,CAAC,CAAC;YACH,MAAM,CAAC,QAAQ,CAAC,UAAC,CAAC;gBACjB,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,WAAW,CAAC,CAAC;YACjC,CAAC,CAAC,CAAC;SACH;aAAM;YACN,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;SACxB;QAED,OAAO;QACP,OAAO,MAAM,CAAC;IACf,CAAC;IAES,gCAAe,GAAzB;QACC,IAAI,MAAM,GAAG,IAAI,CAAC,aAAa,CAAC;QAChC,IAAI,MAAM,IAAI,IAAI,EAAE;YACnB,MAAM,GAAG,IAAI,CAAC,eAAe,EAAE,CAAC;YAChC,IAAI,CAAC,aAAa,GAAG,MAAM,CAAC;SAC5B;QACD,OAAO,MAAM,CAAC;IACf,CAAC;IAES,gCAAe,GAAzB;QACC,IAAI,MAAM,GAAG,CAAC,CAAC;QACf,IAAM,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC;QACnC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,IAAI,GAAG,UAAU,CAAC,MAAM,EAAE,CAAC,GAAG,IAAI,EAAE,EAAE,CAAC,EAAE;YACxD,MAAM,IAAI,UAAU,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;SAC/B;QACD,OAAO,MAAM,CAAC;IACf,CAAC;IAED,sBAAI,0BAAM;aAAV;YACC,IAAI,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC;YAC1B,IAAI,MAAM,KAAK,SAAS,EAAE;gBACzB,MAAM,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC;gBAC1B,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;aACtB;YACD,OAAO,MAAM,CAAC;QACf,CAAC;;;OAAA;IAES,0BAAS,GAAnB,UAAoB,OAAiB;QACpC,IAAI,OAAO,EAAE;YACZ,IAAM,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;YAChC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,IAAI,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,GAAG,IAAI,EAAE,EAAE,CAAC,EAAE;gBACrD,IAAI,OAAO,CAAC,CAAC,CAAC,CAAC,KAAK,IAAI,IAAI,EAAE;oBAC7B,OAAO,IAAI,CAAC;iBACZ;aACD;SACD;QACD,OAAO,KAAK,CAAC;IACd,CAAC;IAES,0BAAS,GAAnB;QACC,IAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC;QAC9B,IAAI,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE;YAC5B,IAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;YAC3B,OAAO,IAAI,YAAY,CACtB,IAAI,EACJ,MAAM,CAAC,KAAK,EACZ,MAAM,CAAC,MAAM,EACb,IAAI,CAAC,eAAe,EAAE,EACtB,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,MAAM,CACf,CAAC;SACF;QACD,OAAO,IAAI,CAAC;IACb,CAAC;IAES,8BAAa,GAAvB;;QACC,OAAO,OAAC,IAAI,CAAC,WAAW,oCAAhB,IAAI,CAAC,WAAW,GAAK,IAAI,CAAC,aAAa,EAAE,EAAC,CAAC;IACpD,CAAC;IAES,8BAAa,GAAvB;;QACC,OAAO,IAAI,CAAC,eAAe,EAAE,GAAG,CAAC,MAAA,MAAA,IAAI,CAAC,MAAM,0CAAE,MAAM,mCAAI,CAAC,CAAC,CAAC;IAC5D,CAAC;IAED,sBAAI,wBAAI;aAAR;;YACC,OAAO,OAAC,IAAI,CAAC,KAAK,oCAAV,IAAI,CAAC,KAAK,GAAK,IAAI,CAAC,OAAO,EAAE,EAAC,CAAC;QACxC,CAAC;;;OAAA;IAES,wBAAO,GAAjB;QACC,IAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC;QAC9B,IAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAC3B,OAAO,IAAI,UAAU,CACpB,MAAM,CAAC,KAAK,EACZ,MAAM,CAAC,MAAM,EACb,IAAI,CAAC,aAAa,EAAE,EACpB,IAAI,CAAC,aAAa,CAAC,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,IAAI,EAAE,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,IAAI,CAAC,CAChD,CAAC;IACH,CAAC;IAES,8BAAa,GAAvB,UACC,OAAsC,EACtC,IAA4C;QAE5C,IAAI,OAAO,IAAI,IAAI,EAAE;YACpB,IAAI,OAAO,CAAC,IAAI,KAAK,SAAS,IAAI,IAAI,KAAK,SAAS,EAAE;gBACrD,IAAI,OAAO,CAAC,IAAI,CAAC,EAAE;oBAClB,OAAO,CAAC,IAAI,GAAG;wBACd,IAAI,EAAE,IAAI;qBACV,CAAC;iBACF;qBAAM;oBACN,OAAO,CAAC,IAAI,GAAG,IAAI,CAAC;iBACpB;aACD;YACD,IAAI,OAAO,CAAC,MAAM,KAAK,SAAS,IAAI,OAAO,CAAC,MAAM,KAAK,SAAS,EAAE;gBACjE,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC;aACnB;YACD,OAAO,OAAO,CAAC;SACf;QACD,IAAI,OAAO,CAAC,IAAI,CAAC,EAAE;YAClB,OAAO;gBACN,IAAI,EAAE;oBACL,IAAI,EAAE,IAAI;iBACV;gBACD,MAAM,EAAE,CAAC;aACT,CAAC;SACF;aAAM;YACN,OAAO;gBACN,IAAI,MAAA;gBACJ,MAAM,EAAE,CAAC;aACT,CAAC;SACF;IACF,CAAC;IAED,sBAAI,wBAAI;aAAR;YACC,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;QACvB,CAAC;;;OAAA;IAES,4CAA2B,GAArC,UACC,OAAc,EACd,QAAgB,EAChB,QAAgB,EAChB,YAAoB,EACpB,aAAqB,EACrB,KAAa,EACb,MAAc,EACd,MAAiB;QAEjB,iBAAM,2BAA2B,YAChC,OAAO,EACP,QAAQ,EACR,QAAQ,EACR,YAAY,EACZ,aAAa,EACb,KAAK,EACL,MAAM,EACN,MAAM,CACN,CAAC;QAEF,IAAM,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QAClC,IAAI,IAAI,EAAE;YACT,IAAI;YACJ,IAAM,EAAE,GAAG,QAAQ,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC;YAC1D,IAAI,CAAC,GAAG,EAAE,EAAE;gBACX,MAAM,CAAC,CAAC,IAAI,EAAE,CAAC;gBACf,MAAM,CAAC,KAAK,IAAI,EAAE,CAAC;aACnB;YAED,IAAI;YACJ,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,KAAK,IAAI,CAAC,IAAI,EAAE;gBACrC,IAAM,EAAE,GAAG,IAAI,CAAC,aAAa,EAAE,CAAC;gBAChC,MAAM,CAAC,CAAC,IAAI,EAAE,CAAC;gBACf,MAAM,CAAC,MAAM,IAAI,EAAE,CAAC;aACpB;SACD;QAED,OAAO;QACP,OAAO,MAAM,CAAC;IACf,CAAC;IAES,8BAAa,GAAvB,UAAwB,IAAW;QAClC,IAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAC3B,IAAI,CAAC,GAAG,MAAM,EAAE;YACf,IAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,QAAmB,CAAC;YAC9C,IAAM,SAAS,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;YACtC,IAAI,CAAC,IAAI,SAAS,EAAE;gBACnB,IAAM,WAAW,GAAG,KAAK,CAAC,MAAM,CAAC;gBACjC,IAAM,WAAW,GAAG,WAAW,GAAG,CAAC,GAAG,SAAS,CAAC;gBAChD,IAAI,MAAM,IAAI,WAAW,EAAE;oBAC1B,IAAM,UAAU,GAAG,KAAK,CAAC,WAAW,GAAG,MAAM,CAAC,CAAC;oBAC/C,OAAO,UAAU,CAAC,QAAQ,CAAC,CAAC,GAAG,UAAU,CAAC,KAAK,CAAC;iBAChD;aACD;SACD;QACD,OAAO,CAAC,CAAC;IACV,CAAC;IAES,0BAAS,GAAnB,UAAoB,CAAgB;QACnC,iBAAiB,CAAC,qBAAqB,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;QACjD,IAAM,YAAY,GAAG,iBAAiB,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;QACvD,IAAM,cAAc,GAAG,iBAAiB,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC;QAC3D,IAAI,YAAY,IAAI,cAAc,EAAE;YACnC,IAAI,CAAC,sBAAsB,CAAC,CAAC,EAAE,cAAc,CAAC,CAAC;SAC/C;QACD,OAAO,iBAAM,SAAS,YAAC,CAAC,CAAC,CAAC;IAC3B,CAAC;IAES,uCAAsB,GAAhC,UAAiC,CAAgB,EAAE,MAAe;QACjE,IAAM,KAAK,GAAG,aAAa,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QAC3C,IAAI,KAAK,IAAI,IAAI,EAAE;YAClB,OAAO,KAAK,CAAC;SACb;QAED,IAAM,eAAe,GAAG,KAAK,CAAC,kBAAkB,EAAE,CAAC;QACnD,IAAM,YAAY,GAAG,eAAe,CAAC,GAAG,EAAE,CAAC;QAC3C,IAAI,YAAY,IAAI,IAAI,EAAE;YACzB,OAAO,KAAK,CAAC;SACb;QAED,IAAM,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;QAC1C,IAAI,OAAO,IAAI,IAAI,EAAE;YACpB,OAAO,KAAK,CAAC;SACb;QAED,IAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;QAC9B,IAAI,MAAM,IAAI,IAAI,EAAE;YACnB,OAAO,KAAK,CAAC;SACb;QAED,IAAM,WAAW,GAAG,eAAe,CAAC,IAAI,CAAC,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;QAC7E,IAAI,WAAW,IAAI,IAAI,EAAE;YACxB,OAAO,KAAK,CAAC;SACb;QAED,IAAM,cAAc,GAAG,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;QAChD,IAAI,cAAc,IAAI,IAAI,EAAE;YAC3B,OAAO,KAAK,CAAC;SACb;QAED,IAAM,MAAM,GAAG,cAAc,CAAC,MAAM,CAAC;QACrC,IAAI,MAAM,IAAI,IAAI,EAAE;YACnB,OAAO,KAAK,CAAC;SACb;QAED,IAAM,YAAY,GAAG,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QACtD,IAAI,YAAY,GAAG,CAAC,EAAE;YACrB,OAAO,KAAK,CAAC;SACb;QAED,IAAM,OAAO,GAAG,MAAM,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC;QAC9C,IAAI,OAAO,IAAI,IAAI,IAAI,OAAO,KAAK,OAAO,IAAI,CAAC,CAAC,OAAO,IAAI,OAAO,CAAC,EAAE;YACpE,OAAO,KAAK,CAAC;SACb;QAED,IAAM,YAAY,GAAG,eAAe,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;QAC7E,IAAI,YAAY,IAAI,IAAI,EAAE;YACzB,OAAO,KAAK,CAAC;SACb;QAED,eAAe,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;QACpC,OAAO,IAAI,CAAC;IACb,CAAC;IAES,uBAAM,GAAhB,UAAiB,OAAmB;QACnC,IAAI,OAAO,GAA4C,OAAO,CAAC;QAC/D,OAAO,OAAO,IAAI,IAAI,EAAE;YACvB,IAAM,QAAM,GAA+B,OAAO,CAAC,MAAM,CAAC;YAC1D,IAAI,QAAM,YAAY,SAAS,EAAE;gBAChC,IAAI,OAAO,YAAY,KAAK,EAAE;oBAC7B,OAAO,OAAO,CAAC;iBACf;gBACD,OAAO,IAAI,CAAC;aACZ;YACD,OAAO,GAAG,QAAM,CAAC;SACjB;QACD,OAAO,IAAI,CAAC;IACb,CAAC;IAES,wBAAO,GAAjB;QACC,OAAO,QAAQ,CAAC;IACjB,CAAC;IACF,aAAC;AAAD,CAAC,AArZD,CAWU,KAAK,GA0Yd","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"]}
|
|
@@ -37,7 +37,7 @@ var DThemeDarkTableHeaderCell = /** @class */ (function (_super) {
|
|
|
37
37
|
return _this;
|
|
38
38
|
}
|
|
39
39
|
DThemeDarkTableHeaderCell.prototype.getBackgroundColor = function (state) {
|
|
40
|
-
if (state.inDisabled) {
|
|
40
|
+
if (state.inDisabled || state.on(DTableState.RESIZING)) {
|
|
41
41
|
return state.is(DTableState.FROZEN) ? this.BACKGROUND_COLOR_FROZEN : null;
|
|
42
42
|
}
|
|
43
43
|
else if (state.isPressed) {
|
|
@@ -138,11 +138,17 @@ var DThemeDarkTableHeaderCell = /** @class */ (function (_super) {
|
|
|
138
138
|
if (!state.isActionable) {
|
|
139
139
|
return "";
|
|
140
140
|
}
|
|
141
|
+
if (state.is(DTableState.HOVERED_ON_EDGE) || state.on(DTableState.RESIZING)) {
|
|
142
|
+
return "col-resize";
|
|
143
|
+
}
|
|
141
144
|
if (state.is(DTableState.CHECKABLE) || state.is(DTableState.SORTABLE)) {
|
|
142
145
|
return "pointer";
|
|
143
146
|
}
|
|
144
147
|
return "";
|
|
145
148
|
};
|
|
149
|
+
DThemeDarkTableHeaderCell.prototype.getEdgeWidth = function () {
|
|
150
|
+
return 10;
|
|
151
|
+
};
|
|
146
152
|
return DThemeDarkTableHeaderCell;
|
|
147
153
|
}(DThemeDarkImage));
|
|
148
154
|
export { DThemeDarkTableHeaderCell };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"d-theme-dark-table-header-cell.js","sourceRoot":"","sources":["../../../../../src/main/typescript/wcardinal/ui/theme/dark/d-theme-dark-table-header-cell.ts"],"names":[],"mappings":"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","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { DisplayObject, Texture } from \"pixi.js\";\nimport { DAlignHorizontal } from \"../../d-align-horizontal\";\nimport { DAlignVertical } from \"../../d-align-vertical\";\nimport { DAlignWith } from \"../../d-align-with\";\nimport { DBaseStateSet } from \"../../d-base-state-set\";\nimport { DBorderMask } from \"../../d-border-mask\";\nimport { DCoordinateSize } from \"../../d-coordinate\";\nimport { DCornerMask } from \"../../d-corner-mask\";\nimport { DStateAwareOrValueMightBe } from \"../../d-state-aware\";\nimport { DTableState } from \"../../d-table-state\";\nimport { DThemeTableHeaderCell } from \"../../d-table-header-cell\";\nimport { UtilRgb } from \"../../util/util-rgb\";\nimport { DThemeDarkAtlas } from \"./d-theme-dark-atlas\";\nimport { DThemeDarkButtonChecks } from \"./d-theme-dark-button-checks\";\nimport { DThemeDarkConstants } from \"./d-theme-dark-constants\";\nimport { DThemeDarkImage } from \"./d-theme-dark-image\";\n\n// Material Design icons by Google.\n// Apache license version 2.0.\n/* eslint-disable prettier/prettier */\nDThemeDarkAtlas.add(\"sorted_descending\", 16, 16,\n\t`<g transform=\"scale(0.875,0.875)\">` +\n\t\t`<path d=\"M3 12l5-5 5 5H3z\" fill=\"#fff\"/>` +\n\t`</g>`\n);\n\nDThemeDarkAtlas.add(\"sorted_ascending\", 16, 16,\n\t`<g transform=\"scale(0.875,0.875)\">` +\n\t\t`<path d=\"M3 8l5 5 5-5H3z\" fill=\"#fff\"/>` +\n\t`</g>`\n);\n/* eslint-enable prettier/prettier */\n\nexport class DThemeDarkTableHeaderCell\n\textends DThemeDarkImage<string | null>\n\timplements DThemeTableHeaderCell\n{\n\tprotected readonly BACKGROUND_COLOR = UtilRgb.brighten(\n\t\tDThemeDarkConstants.BACKGROUND_COLOR_ON_BOARD,\n\t\t0.03\n\t);\n\tprotected readonly BACKGROUND_COLOR_HOVERED = UtilRgb.brighten(this.BACKGROUND_COLOR, 0.08);\n\tprotected readonly BACKGROUND_COLOR_PRESSED = UtilRgb.brighten(this.BACKGROUND_COLOR, 0.32);\n\tprotected readonly BACKGROUND_COLOR_FROZEN = UtilRgb.brighten(this.BACKGROUND_COLOR, 0.02);\n\tprotected readonly BORDER_COLOR = UtilRgb.darken(\n\t\tDThemeDarkConstants.BACKGROUND_COLOR_ON_BOARD,\n\t\t0.05\n\t);\n\tprotected readonly BORDER_COLOR_FROZEN = UtilRgb.darken(this.BORDER_COLOR, 0.05);\n\n\tgetBackgroundColor(state: DBaseStateSet): number | null {\n\t\tif (state.inDisabled) {\n\t\t\treturn state.is(DTableState.FROZEN) ? this.BACKGROUND_COLOR_FROZEN : null;\n\t\t} else if (state.isPressed) {\n\t\t\treturn this.BACKGROUND_COLOR_PRESSED;\n\t\t} else if (state.isHovered) {\n\t\t\treturn this.BACKGROUND_COLOR_HOVERED;\n\t\t} else {\n\t\t\treturn state.is(DTableState.FROZEN) ? this.BACKGROUND_COLOR_FROZEN : null;\n\t\t}\n\t}\n\n\tgetBackgroundAlpha(state: DBaseStateSet): number {\n\t\treturn 1;\n\t}\n\n\tgetBorderColor(state: DBaseStateSet): number | null {\n\t\tif (state.is(DTableState.FROZEN_END)) {\n\t\t\treturn this.BORDER_COLOR_FROZEN;\n\t\t}\n\t\treturn this.BORDER_COLOR;\n\t}\n\n\tgetBorderMask(state: DBaseStateSet): DBorderMask {\n\t\tif (state.is(DTableState.END)) {\n\t\t\treturn DBorderMask.ALL;\n\t\t} else {\n\t\t\treturn DBorderMask.NOT_RIGHT;\n\t\t}\n\t}\n\n\tgetTextAlignHorizontal(): DAlignHorizontal {\n\t\treturn DAlignHorizontal.CENTER;\n\t}\n\n\tgetCornerMask(): DCornerMask {\n\t\treturn DCornerMask.ALL;\n\t}\n\n\tgetHeight(): DCoordinateSize {\n\t\treturn \"padding\";\n\t}\n\n\tgetPaddingLeft(): number {\n\t\treturn 10;\n\t}\n\n\tgetPaddingRight(): number {\n\t\treturn 10;\n\t}\n\n\tnewTextValue(): DStateAwareOrValueMightBe<string | null> {\n\t\treturn null;\n\t}\n\n\tgetImageTintColor(state: DBaseStateSet, isActive?: boolean): number | null {\n\t\tif (state.inDisabled || state.inReadOnly || !(state.isActive || isActive)) {\n\t\t\treturn DThemeDarkConstants.WEAK_HIGHLIGHT_COLOR;\n\t\t} else {\n\t\t\treturn DThemeDarkConstants.HIGHLIGHT_COLOR;\n\t\t}\n\t}\n\n\tgetSecondaryImageTintColor(state: DBaseStateSet): number | null {\n\t\tif (state.is(DTableState.CHECKABLE)) {\n\t\t\treturn DThemeDarkButtonChecks.getImageTintColor(state);\n\t\t}\n\t\treturn super.getSecondaryImageTintColor(state);\n\t}\n\n\tgetSecondaryImageSource(state: DBaseStateSet): Texture | DisplayObject | null {\n\t\tif (state.is(DTableState.CHECKABLE)) {\n\t\t\treturn DThemeDarkButtonChecks.getImageSource(state);\n\t\t}\n\t\treturn null;\n\t}\n\n\tgetSecondaryImageAlignHorizontal(): DAlignHorizontal {\n\t\treturn DAlignHorizontal.LEFT;\n\t}\n\n\tgetSecondaryImageAlignVertical(): DAlignVertical {\n\t\treturn DAlignVertical.MIDDLE;\n\t}\n\n\tgetSecondaryImageAlignWith(): DAlignWith {\n\t\treturn DAlignWith.TEXT;\n\t}\n\n\tgetTertiaryImageSource(state: DBaseStateSet): Texture | DisplayObject | null {\n\t\tif (state.is(DTableState.SORTED_ASCENDING)) {\n\t\t\treturn DThemeDarkAtlas.mappings.sorted_ascending;\n\t\t} else if (state.is(DTableState.SORTED_DESCENDING)) {\n\t\t\treturn DThemeDarkAtlas.mappings.sorted_descending;\n\t\t} else {\n\t\t\treturn null;\n\t\t}\n\t}\n\n\tgetTertiaryImageTintColor(state: DBaseStateSet): number | null {\n\t\treturn super.getImageTintColor(state);\n\t}\n\n\tgetTertiaryImageAlignHorizontal(): DAlignHorizontal {\n\t\treturn DAlignHorizontal.RIGHT;\n\t}\n\n\tgetTertiaryImageAlignWith(): DAlignWith {\n\t\treturn DAlignWith.BORDER;\n\t}\n\n\tgetCursor(state: DBaseStateSet): string {\n\t\tif (!state.isActionable) {\n\t\t\treturn \"\";\n\t\t}\n\t\tif (state.is(DTableState.CHECKABLE) || state.is(DTableState.SORTABLE)) {\n\t\t\treturn \"pointer\";\n\t\t}\n\t\treturn \"\";\n\t}\n}\n"]}
|
|
1
|
+
{"version":3,"file":"d-theme-dark-table-header-cell.js","sourceRoot":"","sources":["../../../../../src/main/typescript/wcardinal/ui/theme/dark/d-theme-dark-table-header-cell.ts"],"names":[],"mappings":"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","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { DisplayObject, Texture } from \"pixi.js\";\nimport { DAlignHorizontal } from \"../../d-align-horizontal\";\nimport { DAlignVertical } from \"../../d-align-vertical\";\nimport { DAlignWith } from \"../../d-align-with\";\nimport { DBaseStateSet } from \"../../d-base-state-set\";\nimport { DBorderMask } from \"../../d-border-mask\";\nimport { DCoordinateSize } from \"../../d-coordinate\";\nimport { DCornerMask } from \"../../d-corner-mask\";\nimport { DStateAwareOrValueMightBe } from \"../../d-state-aware\";\nimport { DTableState } from \"../../d-table-state\";\nimport { DThemeTableHeaderCell } from \"../../d-table-header-cell\";\nimport { UtilRgb } from \"../../util/util-rgb\";\nimport { DThemeDarkAtlas } from \"./d-theme-dark-atlas\";\nimport { DThemeDarkButtonChecks } from \"./d-theme-dark-button-checks\";\nimport { DThemeDarkConstants } from \"./d-theme-dark-constants\";\nimport { DThemeDarkImage } from \"./d-theme-dark-image\";\n\n// Material Design icons by Google.\n// Apache license version 2.0.\n/* eslint-disable prettier/prettier */\nDThemeDarkAtlas.add(\"sorted_descending\", 16, 16,\n\t`<g transform=\"scale(0.875,0.875)\">` +\n\t\t`<path d=\"M3 12l5-5 5 5H3z\" fill=\"#fff\"/>` +\n\t`</g>`\n);\n\nDThemeDarkAtlas.add(\"sorted_ascending\", 16, 16,\n\t`<g transform=\"scale(0.875,0.875)\">` +\n\t\t`<path d=\"M3 8l5 5 5-5H3z\" fill=\"#fff\"/>` +\n\t`</g>`\n);\n/* eslint-enable prettier/prettier */\n\nexport class DThemeDarkTableHeaderCell\n\textends DThemeDarkImage<string | null>\n\timplements DThemeTableHeaderCell\n{\n\tprotected readonly BACKGROUND_COLOR = UtilRgb.brighten(\n\t\tDThemeDarkConstants.BACKGROUND_COLOR_ON_BOARD,\n\t\t0.03\n\t);\n\tprotected readonly BACKGROUND_COLOR_HOVERED = UtilRgb.brighten(this.BACKGROUND_COLOR, 0.08);\n\tprotected readonly BACKGROUND_COLOR_PRESSED = UtilRgb.brighten(this.BACKGROUND_COLOR, 0.32);\n\tprotected readonly BACKGROUND_COLOR_FROZEN = UtilRgb.brighten(this.BACKGROUND_COLOR, 0.02);\n\tprotected readonly BORDER_COLOR = UtilRgb.darken(\n\t\tDThemeDarkConstants.BACKGROUND_COLOR_ON_BOARD,\n\t\t0.05\n\t);\n\tprotected readonly BORDER_COLOR_FROZEN = UtilRgb.darken(this.BORDER_COLOR, 0.05);\n\n\tgetBackgroundColor(state: DBaseStateSet): number | null {\n\t\tif (state.inDisabled || state.on(DTableState.RESIZING)) {\n\t\t\treturn state.is(DTableState.FROZEN) ? this.BACKGROUND_COLOR_FROZEN : null;\n\t\t} else if (state.isPressed) {\n\t\t\treturn this.BACKGROUND_COLOR_PRESSED;\n\t\t} else if (state.isHovered) {\n\t\t\treturn this.BACKGROUND_COLOR_HOVERED;\n\t\t} else {\n\t\t\treturn state.is(DTableState.FROZEN) ? this.BACKGROUND_COLOR_FROZEN : null;\n\t\t}\n\t}\n\n\tgetBackgroundAlpha(state: DBaseStateSet): number {\n\t\treturn 1;\n\t}\n\n\tgetBorderColor(state: DBaseStateSet): number | null {\n\t\tif (state.is(DTableState.FROZEN_END)) {\n\t\t\treturn this.BORDER_COLOR_FROZEN;\n\t\t}\n\t\treturn this.BORDER_COLOR;\n\t}\n\n\tgetBorderMask(state: DBaseStateSet): DBorderMask {\n\t\tif (state.is(DTableState.END)) {\n\t\t\treturn DBorderMask.ALL;\n\t\t} else {\n\t\t\treturn DBorderMask.NOT_RIGHT;\n\t\t}\n\t}\n\n\tgetTextAlignHorizontal(): DAlignHorizontal {\n\t\treturn DAlignHorizontal.CENTER;\n\t}\n\n\tgetCornerMask(): DCornerMask {\n\t\treturn DCornerMask.ALL;\n\t}\n\n\tgetHeight(): DCoordinateSize {\n\t\treturn \"padding\";\n\t}\n\n\tgetPaddingLeft(): number {\n\t\treturn 10;\n\t}\n\n\tgetPaddingRight(): number {\n\t\treturn 10;\n\t}\n\n\tnewTextValue(): DStateAwareOrValueMightBe<string | null> {\n\t\treturn null;\n\t}\n\n\tgetImageTintColor(state: DBaseStateSet, isActive?: boolean): number | null {\n\t\tif (state.inDisabled || state.inReadOnly || !(state.isActive || isActive)) {\n\t\t\treturn DThemeDarkConstants.WEAK_HIGHLIGHT_COLOR;\n\t\t} else {\n\t\t\treturn DThemeDarkConstants.HIGHLIGHT_COLOR;\n\t\t}\n\t}\n\n\tgetSecondaryImageTintColor(state: DBaseStateSet): number | null {\n\t\tif (state.is(DTableState.CHECKABLE)) {\n\t\t\treturn DThemeDarkButtonChecks.getImageTintColor(state);\n\t\t}\n\t\treturn super.getSecondaryImageTintColor(state);\n\t}\n\n\tgetSecondaryImageSource(state: DBaseStateSet): Texture | DisplayObject | null {\n\t\tif (state.is(DTableState.CHECKABLE)) {\n\t\t\treturn DThemeDarkButtonChecks.getImageSource(state);\n\t\t}\n\t\treturn null;\n\t}\n\n\tgetSecondaryImageAlignHorizontal(): DAlignHorizontal {\n\t\treturn DAlignHorizontal.LEFT;\n\t}\n\n\tgetSecondaryImageAlignVertical(): DAlignVertical {\n\t\treturn DAlignVertical.MIDDLE;\n\t}\n\n\tgetSecondaryImageAlignWith(): DAlignWith {\n\t\treturn DAlignWith.TEXT;\n\t}\n\n\tgetTertiaryImageSource(state: DBaseStateSet): Texture | DisplayObject | null {\n\t\tif (state.is(DTableState.SORTED_ASCENDING)) {\n\t\t\treturn DThemeDarkAtlas.mappings.sorted_ascending;\n\t\t} else if (state.is(DTableState.SORTED_DESCENDING)) {\n\t\t\treturn DThemeDarkAtlas.mappings.sorted_descending;\n\t\t} else {\n\t\t\treturn null;\n\t\t}\n\t}\n\n\tgetTertiaryImageTintColor(state: DBaseStateSet): number | null {\n\t\treturn super.getImageTintColor(state);\n\t}\n\n\tgetTertiaryImageAlignHorizontal(): DAlignHorizontal {\n\t\treturn DAlignHorizontal.RIGHT;\n\t}\n\n\tgetTertiaryImageAlignWith(): DAlignWith {\n\t\treturn DAlignWith.BORDER;\n\t}\n\n\tgetCursor(state: DBaseStateSet): string {\n\t\tif (!state.isActionable) {\n\t\t\treturn \"\";\n\t\t}\n\t\tif (state.is(DTableState.HOVERED_ON_EDGE) || state.on(DTableState.RESIZING)) {\n\t\t\treturn \"col-resize\";\n\t\t}\n\t\tif (state.is(DTableState.CHECKABLE) || state.is(DTableState.SORTABLE)) {\n\t\t\treturn \"pointer\";\n\t\t}\n\t\treturn \"\";\n\t}\n\n\tgetEdgeWidth(): number {\n\t\treturn 10;\n\t}\n}\n"]}
|
|
@@ -4,6 +4,7 @@
|
|
|
4
4
|
*/
|
|
5
5
|
import { __extends } from "tslib";
|
|
6
6
|
import { DBorderMask } from "../../d-border-mask";
|
|
7
|
+
import { DTableState } from "../../d-table-state";
|
|
7
8
|
import { UtilRgb } from "../../util/util-rgb";
|
|
8
9
|
import { DThemeDarkConstants } from "./d-theme-dark-constants";
|
|
9
10
|
import { DThemeDarkTableRow } from "./d-theme-dark-table-row";
|
|
@@ -35,6 +36,12 @@ var DThemeDarkTableHeader = /** @class */ (function (_super) {
|
|
|
35
36
|
DThemeDarkTableHeader.prototype.getHeight = function () {
|
|
36
37
|
return 30;
|
|
37
38
|
};
|
|
39
|
+
DThemeDarkTableHeader.prototype.getCursor = function (state) {
|
|
40
|
+
if (state.is(DTableState.RESIZING)) {
|
|
41
|
+
return "col-resize";
|
|
42
|
+
}
|
|
43
|
+
return _super.prototype.getCursor.call(this, state);
|
|
44
|
+
};
|
|
38
45
|
return DThemeDarkTableHeader;
|
|
39
46
|
}(DThemeDarkTableRow));
|
|
40
47
|
export { DThemeDarkTableHeader };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"d-theme-dark-table-header.js","sourceRoot":"","sources":["../../../../../src/main/typescript/wcardinal/ui/theme/dark/d-theme-dark-table-header.ts"],"names":[],"mappings":"AAAA;;;GAGG;;AAGH,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAGlD,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAC9C,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC/D,OAAO,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAE9D;IAA2C,yCAAkB;IAA7D;QAAA,
|
|
1
|
+
{"version":3,"file":"d-theme-dark-table-header.js","sourceRoot":"","sources":["../../../../../src/main/typescript/wcardinal/ui/theme/dark/d-theme-dark-table-header.ts"],"names":[],"mappings":"AAAA;;;GAGG;;AAGH,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAGlD,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAC9C,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC/D,OAAO,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAE9D;IAA2C,yCAAkB;IAA7D;QAAA,qEAwCC;QAvCmB,sBAAgB,GAAG,OAAO,CAAC,QAAQ,CACrD,mBAAmB,CAAC,yBAAyB,EAC7C,IAAI,CACJ,CAAC;QACiB,kBAAY,GAAG,OAAO,CAAC,MAAM,CAC/C,mBAAmB,CAAC,yBAAyB,EAC7C,IAAI,CACJ,CAAC;;IAgCH,CAAC;IA9BA,kDAAkB,GAAlB,UAAmB,KAAoB;QACtC,IAAI,KAAK,CAAC,UAAU,EAAE;YACrB,OAAO,IAAI,CAAC;SACZ;aAAM;YACN,OAAO,IAAI,CAAC,gBAAgB,CAAC;SAC7B;IACF,CAAC;IAED,8CAAc,GAAd,UAAe,KAAoB;QAClC,OAAO,IAAI,CAAC,YAAY,CAAC;IAC1B,CAAC;IAED,6CAAa,GAAb,UAAc,KAAoB;QACjC,OAAO,WAAW,CAAC,UAAU,CAAC;IAC/B,CAAC;IAED,wCAAQ,GAAR;QACC,OAAO,MAAM,CAAC;IACf,CAAC;IAED,yCAAS,GAAT;QACC,OAAO,EAAE,CAAC;IACX,CAAC;IAED,yCAAS,GAAT,UAAU,KAAoB;QAC7B,IAAI,KAAK,CAAC,EAAE,CAAC,WAAW,CAAC,QAAQ,CAAC,EAAE;YACnC,OAAO,YAAY,CAAC;SACpB;QACD,OAAO,iBAAM,SAAS,YAAC,KAAK,CAAC,CAAC;IAC/B,CAAC;IACF,4BAAC;AAAD,CAAC,AAxCD,CAA2C,kBAAkB,GAwC5D","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { DBaseStateSet } from \"../../d-base-state-set\";\nimport { DBorderMask } from \"../../d-border-mask\";\nimport { DCoordinateSize } from \"../../d-coordinate\";\nimport { DThemeTableHeader } from \"../../d-table-header\";\nimport { DTableState } from \"../../d-table-state\";\nimport { UtilRgb } from \"../../util/util-rgb\";\nimport { DThemeDarkConstants } from \"./d-theme-dark-constants\";\nimport { DThemeDarkTableRow } from \"./d-theme-dark-table-row\";\n\nexport class DThemeDarkTableHeader extends DThemeDarkTableRow implements DThemeTableHeader {\n\tprotected readonly BACKGROUND_COLOR = UtilRgb.brighten(\n\t\tDThemeDarkConstants.BACKGROUND_COLOR_ON_BOARD,\n\t\t0.03\n\t);\n\tprotected readonly BORDER_COLOR = UtilRgb.darken(\n\t\tDThemeDarkConstants.BACKGROUND_COLOR_ON_BOARD,\n\t\t0.05\n\t);\n\n\tgetBackgroundColor(state: DBaseStateSet): number | null {\n\t\tif (state.inDisabled) {\n\t\t\treturn null;\n\t\t} else {\n\t\t\treturn this.BACKGROUND_COLOR;\n\t\t}\n\t}\n\n\tgetBorderColor(state: DBaseStateSet): number | null {\n\t\treturn this.BORDER_COLOR;\n\t}\n\n\tgetBorderMask(state: DBaseStateSet): DBorderMask {\n\t\treturn DBorderMask.NOT_BOTTOM;\n\t}\n\n\tgetWidth(): DCoordinateSize {\n\t\treturn \"100%\";\n\t}\n\n\tgetHeight(): DCoordinateSize {\n\t\treturn 30;\n\t}\n\n\tgetCursor(state: DBaseStateSet): string {\n\t\tif (state.is(DTableState.RESIZING)) {\n\t\t\treturn \"col-resize\";\n\t\t}\n\t\treturn super.getCursor(state);\n\t}\n}\n"]}
|
|
@@ -37,7 +37,7 @@ var DThemeWhiteTableHeaderCell = /** @class */ (function (_super) {
|
|
|
37
37
|
return _this;
|
|
38
38
|
}
|
|
39
39
|
DThemeWhiteTableHeaderCell.prototype.getBackgroundColor = function (state) {
|
|
40
|
-
if (state.inDisabled) {
|
|
40
|
+
if (state.inDisabled || state.on(DTableState.RESIZING)) {
|
|
41
41
|
return state.is(DTableState.FROZEN) ? this.BACKGROUND_COLOR_FROZEN : null;
|
|
42
42
|
}
|
|
43
43
|
else if (state.isPressed) {
|
|
@@ -138,11 +138,17 @@ var DThemeWhiteTableHeaderCell = /** @class */ (function (_super) {
|
|
|
138
138
|
if (!state.isActionable) {
|
|
139
139
|
return "";
|
|
140
140
|
}
|
|
141
|
+
if (state.is(DTableState.HOVERED_ON_EDGE) || state.on(DTableState.RESIZING)) {
|
|
142
|
+
return "col-resize";
|
|
143
|
+
}
|
|
141
144
|
if (state.is(DTableState.CHECKABLE) || state.is(DTableState.SORTABLE)) {
|
|
142
145
|
return "pointer";
|
|
143
146
|
}
|
|
144
147
|
return "";
|
|
145
148
|
};
|
|
149
|
+
DThemeWhiteTableHeaderCell.prototype.getEdgeWidth = function () {
|
|
150
|
+
return 10;
|
|
151
|
+
};
|
|
146
152
|
return DThemeWhiteTableHeaderCell;
|
|
147
153
|
}(DThemeWhiteImage));
|
|
148
154
|
export { DThemeWhiteTableHeaderCell };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"d-theme-white-table-header-cell.js","sourceRoot":"","sources":["../../../../../src/main/typescript/wcardinal/ui/theme/white/d-theme-white-table-header-cell.ts"],"names":[],"mappings":"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","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { DisplayObject, Texture } from \"pixi.js\";\nimport { DAlignHorizontal } from \"../../d-align-horizontal\";\nimport { DAlignVertical } from \"../../d-align-vertical\";\nimport { DAlignWith } from \"../../d-align-with\";\nimport { DBaseStateSet } from \"../../d-base-state-set\";\nimport { DBorderMask } from \"../../d-border-mask\";\nimport { DCoordinateSize } from \"../../d-coordinate\";\nimport { DCornerMask } from \"../../d-corner-mask\";\nimport { DStateAwareOrValueMightBe } from \"../../d-state-aware\";\nimport { DTableState } from \"../../d-table-state\";\nimport { DThemeTableHeaderCell } from \"../../d-table-header-cell\";\nimport { UtilRgb } from \"../../util/util-rgb\";\nimport { DThemeWhiteAtlas } from \"./d-theme-white-atlas\";\nimport { DThemeWhiteButtonChecks } from \"./d-theme-white-button-checks\";\nimport { DThemeWhiteConstants } from \"./d-theme-white-constants\";\nimport { DThemeWhiteImage } from \"./d-theme-white-image\";\n\n// Material Design icons by Google.\n// Apache license version 2.0.\n/* eslint-disable prettier/prettier */\nDThemeWhiteAtlas.add(\"sorted_descending\", 16, 16,\n\t`<g transform=\"scale(0.875,0.875)\">` +\n\t\t`<path d=\"M3 12l5-5 5 5H3z\" fill=\"#fff\"/>` +\n\t`</g>`\n);\n\nDThemeWhiteAtlas.add(\"sorted_ascending\", 16, 16,\n\t`<g transform=\"scale(0.875,0.875)\">` +\n\t\t`<path d=\"M3 8l5 5 5-5H3z\" fill=\"#fff\"/>` +\n\t`</g>`\n);\n/* eslint-enable prettier/prettier */\n\nexport class DThemeWhiteTableHeaderCell\n\textends DThemeWhiteImage<string | null>\n\timplements DThemeTableHeaderCell\n{\n\tprotected readonly BACKGROUND_COLOR = UtilRgb.darken(\n\t\tDThemeWhiteConstants.BACKGROUND_COLOR_ON_BOARD,\n\t\t0.03\n\t);\n\tprotected readonly BACKGROUND_COLOR_HOVERED = UtilRgb.darken(this.BACKGROUND_COLOR, 0.017);\n\tprotected readonly BACKGROUND_COLOR_PRESSED = UtilRgb.darken(this.BACKGROUND_COLOR, 0.034);\n\tprotected readonly BACKGROUND_COLOR_FROZEN = UtilRgb.darken(this.BACKGROUND_COLOR, 0.02);\n\tprotected readonly BORDER_COLOR = UtilRgb.darken(\n\t\tDThemeWhiteConstants.BACKGROUND_COLOR_ON_BOARD,\n\t\t0.055\n\t);\n\tprotected readonly BORDER_COLOR_FROZEN = UtilRgb.darken(this.BORDER_COLOR, 0.055);\n\n\tgetBackgroundColor(state: DBaseStateSet): number | null {\n\t\tif (state.inDisabled) {\n\t\t\treturn state.is(DTableState.FROZEN) ? this.BACKGROUND_COLOR_FROZEN : null;\n\t\t} else if (state.isPressed) {\n\t\t\treturn this.BACKGROUND_COLOR_PRESSED;\n\t\t} else if (state.isHovered) {\n\t\t\treturn this.BACKGROUND_COLOR_HOVERED;\n\t\t} else {\n\t\t\treturn state.is(DTableState.FROZEN) ? this.BACKGROUND_COLOR_FROZEN : null;\n\t\t}\n\t}\n\n\tgetBackgroundAlpha(state: DBaseStateSet): number {\n\t\treturn 1;\n\t}\n\n\tgetBorderColor(state: DBaseStateSet): number | null {\n\t\tif (state.is(DTableState.FROZEN_END)) {\n\t\t\treturn this.BORDER_COLOR_FROZEN;\n\t\t}\n\t\treturn this.BORDER_COLOR;\n\t}\n\n\tgetBorderMask(state: DBaseStateSet): DBorderMask {\n\t\tif (state.is(DTableState.END)) {\n\t\t\treturn DBorderMask.ALL;\n\t\t} else {\n\t\t\treturn DBorderMask.NOT_RIGHT;\n\t\t}\n\t}\n\n\tgetTextAlignHorizontal(): DAlignHorizontal {\n\t\treturn DAlignHorizontal.CENTER;\n\t}\n\n\tgetCornerMask(): DCornerMask {\n\t\treturn DCornerMask.ALL;\n\t}\n\n\tgetHeight(): DCoordinateSize {\n\t\treturn \"padding\";\n\t}\n\n\tgetPaddingLeft(): number {\n\t\treturn 10;\n\t}\n\n\tgetPaddingRight(): number {\n\t\treturn 10;\n\t}\n\n\tnewTextValue(): DStateAwareOrValueMightBe<string | null> {\n\t\treturn null;\n\t}\n\n\tgetImageTintColor(state: DBaseStateSet, isActive?: boolean): number | null {\n\t\tif (state.inDisabled || state.inReadOnly || !(state.isActive || isActive)) {\n\t\t\treturn DThemeWhiteConstants.WEAK_HIGHLIGHT_COLOR;\n\t\t} else {\n\t\t\treturn DThemeWhiteConstants.HIGHLIGHT_COLOR;\n\t\t}\n\t}\n\n\tgetSecondaryImageTintColor(state: DBaseStateSet): number | null {\n\t\tif (state.is(DTableState.CHECKABLE)) {\n\t\t\treturn DThemeWhiteButtonChecks.getImageTintColor(state);\n\t\t}\n\t\treturn super.getSecondaryImageTintColor(state);\n\t}\n\n\tgetSecondaryImageSource(state: DBaseStateSet): Texture | DisplayObject | null {\n\t\tif (state.is(DTableState.CHECKABLE)) {\n\t\t\treturn DThemeWhiteButtonChecks.getImageSource(state);\n\t\t}\n\t\treturn null;\n\t}\n\n\tgetSecondaryImageAlignHorizontal(): DAlignHorizontal {\n\t\treturn DAlignHorizontal.LEFT;\n\t}\n\n\tgetSecondaryImageAlignVertical(): DAlignVertical {\n\t\treturn DAlignVertical.MIDDLE;\n\t}\n\n\tgetSecondaryImageAlignWith(): DAlignWith {\n\t\treturn DAlignWith.TEXT;\n\t}\n\n\tgetTertiaryImageSource(state: DBaseStateSet): Texture | DisplayObject | null {\n\t\tif (state.is(DTableState.SORTED_ASCENDING)) {\n\t\t\treturn DThemeWhiteAtlas.mappings.sorted_ascending;\n\t\t} else if (state.is(DTableState.SORTED_DESCENDING)) {\n\t\t\treturn DThemeWhiteAtlas.mappings.sorted_descending;\n\t\t} else {\n\t\t\treturn null;\n\t\t}\n\t}\n\n\tgetTertiaryImageTintColor(state: DBaseStateSet): number | null {\n\t\treturn super.getImageTintColor(state);\n\t}\n\n\tgetTertiaryImageAlignHorizontal(): DAlignHorizontal {\n\t\treturn DAlignHorizontal.RIGHT;\n\t}\n\n\tgetTertiaryImageAlignWith(): DAlignWith {\n\t\treturn DAlignWith.BORDER;\n\t}\n\n\tgetCursor(state: DBaseStateSet): string {\n\t\tif (!state.isActionable) {\n\t\t\treturn \"\";\n\t\t}\n\t\tif (state.is(DTableState.CHECKABLE) || state.is(DTableState.SORTABLE)) {\n\t\t\treturn \"pointer\";\n\t\t}\n\t\treturn \"\";\n\t}\n}\n"]}
|
|
1
|
+
{"version":3,"file":"d-theme-white-table-header-cell.js","sourceRoot":"","sources":["../../../../../src/main/typescript/wcardinal/ui/theme/white/d-theme-white-table-header-cell.ts"],"names":[],"mappings":"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","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { DisplayObject, Texture } from \"pixi.js\";\nimport { DAlignHorizontal } from \"../../d-align-horizontal\";\nimport { DAlignVertical } from \"../../d-align-vertical\";\nimport { DAlignWith } from \"../../d-align-with\";\nimport { DBaseStateSet } from \"../../d-base-state-set\";\nimport { DBorderMask } from \"../../d-border-mask\";\nimport { DCoordinateSize } from \"../../d-coordinate\";\nimport { DCornerMask } from \"../../d-corner-mask\";\nimport { DStateAwareOrValueMightBe } from \"../../d-state-aware\";\nimport { DTableState } from \"../../d-table-state\";\nimport { DThemeTableHeaderCell } from \"../../d-table-header-cell\";\nimport { UtilRgb } from \"../../util/util-rgb\";\nimport { DThemeWhiteAtlas } from \"./d-theme-white-atlas\";\nimport { DThemeWhiteButtonChecks } from \"./d-theme-white-button-checks\";\nimport { DThemeWhiteConstants } from \"./d-theme-white-constants\";\nimport { DThemeWhiteImage } from \"./d-theme-white-image\";\n\n// Material Design icons by Google.\n// Apache license version 2.0.\n/* eslint-disable prettier/prettier */\nDThemeWhiteAtlas.add(\"sorted_descending\", 16, 16,\n\t`<g transform=\"scale(0.875,0.875)\">` +\n\t\t`<path d=\"M3 12l5-5 5 5H3z\" fill=\"#fff\"/>` +\n\t`</g>`\n);\n\nDThemeWhiteAtlas.add(\"sorted_ascending\", 16, 16,\n\t`<g transform=\"scale(0.875,0.875)\">` +\n\t\t`<path d=\"M3 8l5 5 5-5H3z\" fill=\"#fff\"/>` +\n\t`</g>`\n);\n/* eslint-enable prettier/prettier */\n\nexport class DThemeWhiteTableHeaderCell\n\textends DThemeWhiteImage<string | null>\n\timplements DThemeTableHeaderCell\n{\n\tprotected readonly BACKGROUND_COLOR = UtilRgb.darken(\n\t\tDThemeWhiteConstants.BACKGROUND_COLOR_ON_BOARD,\n\t\t0.03\n\t);\n\tprotected readonly BACKGROUND_COLOR_HOVERED = UtilRgb.darken(this.BACKGROUND_COLOR, 0.017);\n\tprotected readonly BACKGROUND_COLOR_PRESSED = UtilRgb.darken(this.BACKGROUND_COLOR, 0.034);\n\tprotected readonly BACKGROUND_COLOR_FROZEN = UtilRgb.darken(this.BACKGROUND_COLOR, 0.02);\n\tprotected readonly BORDER_COLOR = UtilRgb.darken(\n\t\tDThemeWhiteConstants.BACKGROUND_COLOR_ON_BOARD,\n\t\t0.055\n\t);\n\tprotected readonly BORDER_COLOR_FROZEN = UtilRgb.darken(this.BORDER_COLOR, 0.055);\n\n\tgetBackgroundColor(state: DBaseStateSet): number | null {\n\t\tif (state.inDisabled || state.on(DTableState.RESIZING)) {\n\t\t\treturn state.is(DTableState.FROZEN) ? this.BACKGROUND_COLOR_FROZEN : null;\n\t\t} else if (state.isPressed) {\n\t\t\treturn this.BACKGROUND_COLOR_PRESSED;\n\t\t} else if (state.isHovered) {\n\t\t\treturn this.BACKGROUND_COLOR_HOVERED;\n\t\t} else {\n\t\t\treturn state.is(DTableState.FROZEN) ? this.BACKGROUND_COLOR_FROZEN : null;\n\t\t}\n\t}\n\n\tgetBackgroundAlpha(state: DBaseStateSet): number {\n\t\treturn 1;\n\t}\n\n\tgetBorderColor(state: DBaseStateSet): number | null {\n\t\tif (state.is(DTableState.FROZEN_END)) {\n\t\t\treturn this.BORDER_COLOR_FROZEN;\n\t\t}\n\t\treturn this.BORDER_COLOR;\n\t}\n\n\tgetBorderMask(state: DBaseStateSet): DBorderMask {\n\t\tif (state.is(DTableState.END)) {\n\t\t\treturn DBorderMask.ALL;\n\t\t} else {\n\t\t\treturn DBorderMask.NOT_RIGHT;\n\t\t}\n\t}\n\n\tgetTextAlignHorizontal(): DAlignHorizontal {\n\t\treturn DAlignHorizontal.CENTER;\n\t}\n\n\tgetCornerMask(): DCornerMask {\n\t\treturn DCornerMask.ALL;\n\t}\n\n\tgetHeight(): DCoordinateSize {\n\t\treturn \"padding\";\n\t}\n\n\tgetPaddingLeft(): number {\n\t\treturn 10;\n\t}\n\n\tgetPaddingRight(): number {\n\t\treturn 10;\n\t}\n\n\tnewTextValue(): DStateAwareOrValueMightBe<string | null> {\n\t\treturn null;\n\t}\n\n\tgetImageTintColor(state: DBaseStateSet, isActive?: boolean): number | null {\n\t\tif (state.inDisabled || state.inReadOnly || !(state.isActive || isActive)) {\n\t\t\treturn DThemeWhiteConstants.WEAK_HIGHLIGHT_COLOR;\n\t\t} else {\n\t\t\treturn DThemeWhiteConstants.HIGHLIGHT_COLOR;\n\t\t}\n\t}\n\n\tgetSecondaryImageTintColor(state: DBaseStateSet): number | null {\n\t\tif (state.is(DTableState.CHECKABLE)) {\n\t\t\treturn DThemeWhiteButtonChecks.getImageTintColor(state);\n\t\t}\n\t\treturn super.getSecondaryImageTintColor(state);\n\t}\n\n\tgetSecondaryImageSource(state: DBaseStateSet): Texture | DisplayObject | null {\n\t\tif (state.is(DTableState.CHECKABLE)) {\n\t\t\treturn DThemeWhiteButtonChecks.getImageSource(state);\n\t\t}\n\t\treturn null;\n\t}\n\n\tgetSecondaryImageAlignHorizontal(): DAlignHorizontal {\n\t\treturn DAlignHorizontal.LEFT;\n\t}\n\n\tgetSecondaryImageAlignVertical(): DAlignVertical {\n\t\treturn DAlignVertical.MIDDLE;\n\t}\n\n\tgetSecondaryImageAlignWith(): DAlignWith {\n\t\treturn DAlignWith.TEXT;\n\t}\n\n\tgetTertiaryImageSource(state: DBaseStateSet): Texture | DisplayObject | null {\n\t\tif (state.is(DTableState.SORTED_ASCENDING)) {\n\t\t\treturn DThemeWhiteAtlas.mappings.sorted_ascending;\n\t\t} else if (state.is(DTableState.SORTED_DESCENDING)) {\n\t\t\treturn DThemeWhiteAtlas.mappings.sorted_descending;\n\t\t} else {\n\t\t\treturn null;\n\t\t}\n\t}\n\n\tgetTertiaryImageTintColor(state: DBaseStateSet): number | null {\n\t\treturn super.getImageTintColor(state);\n\t}\n\n\tgetTertiaryImageAlignHorizontal(): DAlignHorizontal {\n\t\treturn DAlignHorizontal.RIGHT;\n\t}\n\n\tgetTertiaryImageAlignWith(): DAlignWith {\n\t\treturn DAlignWith.BORDER;\n\t}\n\n\tgetCursor(state: DBaseStateSet): string {\n\t\tif (!state.isActionable) {\n\t\t\treturn \"\";\n\t\t}\n\t\tif (state.is(DTableState.HOVERED_ON_EDGE) || state.on(DTableState.RESIZING)) {\n\t\t\treturn \"col-resize\";\n\t\t}\n\t\tif (state.is(DTableState.CHECKABLE) || state.is(DTableState.SORTABLE)) {\n\t\t\treturn \"pointer\";\n\t\t}\n\t\treturn \"\";\n\t}\n\n\tgetEdgeWidth(): number {\n\t\treturn 10;\n\t}\n}\n"]}
|
|
@@ -4,6 +4,7 @@
|
|
|
4
4
|
*/
|
|
5
5
|
import { __extends } from "tslib";
|
|
6
6
|
import { DBorderMask } from "../../d-border-mask";
|
|
7
|
+
import { DTableState } from "../../d-table-state";
|
|
7
8
|
import { UtilRgb } from "../../util/util-rgb";
|
|
8
9
|
import { DThemeWhiteConstants } from "./d-theme-white-constants";
|
|
9
10
|
import { DThemeWhiteTableRow } from "./d-theme-white-table-row";
|
|
@@ -35,6 +36,12 @@ var DThemeWhiteTableHeader = /** @class */ (function (_super) {
|
|
|
35
36
|
DThemeWhiteTableHeader.prototype.getHeight = function () {
|
|
36
37
|
return 30;
|
|
37
38
|
};
|
|
39
|
+
DThemeWhiteTableHeader.prototype.getCursor = function (state) {
|
|
40
|
+
if (state.is(DTableState.RESIZING)) {
|
|
41
|
+
return "col-resize";
|
|
42
|
+
}
|
|
43
|
+
return _super.prototype.getCursor.call(this, state);
|
|
44
|
+
};
|
|
38
45
|
return DThemeWhiteTableHeader;
|
|
39
46
|
}(DThemeWhiteTableRow));
|
|
40
47
|
export { DThemeWhiteTableHeader };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"d-theme-white-table-header.js","sourceRoot":"","sources":["../../../../../src/main/typescript/wcardinal/ui/theme/white/d-theme-white-table-header.ts"],"names":[],"mappings":"AAAA;;;GAGG;;AAGH,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAGlD,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAC9C,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAEhE;IAA4C,0CAAmB;IAA/D;QAAA,
|
|
1
|
+
{"version":3,"file":"d-theme-white-table-header.js","sourceRoot":"","sources":["../../../../../src/main/typescript/wcardinal/ui/theme/white/d-theme-white-table-header.ts"],"names":[],"mappings":"AAAA;;;GAGG;;AAGH,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAGlD,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAC9C,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAEhE;IAA4C,0CAAmB;IAA/D;QAAA,qEAwCC;QAvCmB,sBAAgB,GAAG,OAAO,CAAC,MAAM,CACnD,oBAAoB,CAAC,yBAAyB,EAC9C,IAAI,CACJ,CAAC;QACiB,kBAAY,GAAG,OAAO,CAAC,MAAM,CAC/C,oBAAoB,CAAC,yBAAyB,EAC9C,KAAK,CACL,CAAC;;IAgCH,CAAC;IA9BA,mDAAkB,GAAlB,UAAmB,KAAoB;QACtC,IAAI,KAAK,CAAC,UAAU,EAAE;YACrB,OAAO,IAAI,CAAC;SACZ;aAAM;YACN,OAAO,IAAI,CAAC,gBAAgB,CAAC;SAC7B;IACF,CAAC;IAED,+CAAc,GAAd,UAAe,KAAoB;QAClC,OAAO,IAAI,CAAC,YAAY,CAAC;IAC1B,CAAC;IAED,8CAAa,GAAb,UAAc,KAAoB;QACjC,OAAO,WAAW,CAAC,UAAU,CAAC;IAC/B,CAAC;IAED,yCAAQ,GAAR;QACC,OAAO,MAAM,CAAC;IACf,CAAC;IAED,0CAAS,GAAT;QACC,OAAO,EAAE,CAAC;IACX,CAAC;IAED,0CAAS,GAAT,UAAU,KAAoB;QAC7B,IAAI,KAAK,CAAC,EAAE,CAAC,WAAW,CAAC,QAAQ,CAAC,EAAE;YACnC,OAAO,YAAY,CAAC;SACpB;QACD,OAAO,iBAAM,SAAS,YAAC,KAAK,CAAC,CAAC;IAC/B,CAAC;IACF,6BAAC;AAAD,CAAC,AAxCD,CAA4C,mBAAmB,GAwC9D","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { DBaseStateSet } from \"../../d-base-state-set\";\nimport { DBorderMask } from \"../../d-border-mask\";\nimport { DCoordinateSize } from \"../../d-coordinate\";\nimport { DThemeTableHeader } from \"../../d-table-header\";\nimport { DTableState } from \"../../d-table-state\";\nimport { UtilRgb } from \"../../util/util-rgb\";\nimport { DThemeWhiteConstants } from \"./d-theme-white-constants\";\nimport { DThemeWhiteTableRow } from \"./d-theme-white-table-row\";\n\nexport class DThemeWhiteTableHeader extends DThemeWhiteTableRow implements DThemeTableHeader {\n\tprotected readonly BACKGROUND_COLOR = UtilRgb.darken(\n\t\tDThemeWhiteConstants.BACKGROUND_COLOR_ON_BOARD,\n\t\t0.03\n\t);\n\tprotected readonly BORDER_COLOR = UtilRgb.darken(\n\t\tDThemeWhiteConstants.BACKGROUND_COLOR_ON_BOARD,\n\t\t0.055\n\t);\n\n\tgetBackgroundColor(state: DBaseStateSet): number | null {\n\t\tif (state.inDisabled) {\n\t\t\treturn null;\n\t\t} else {\n\t\t\treturn this.BACKGROUND_COLOR;\n\t\t}\n\t}\n\n\tgetBorderColor(state: DBaseStateSet): number | null {\n\t\treturn this.BORDER_COLOR;\n\t}\n\n\tgetBorderMask(state: DBaseStateSet): DBorderMask {\n\t\treturn DBorderMask.NOT_BOTTOM;\n\t}\n\n\tgetWidth(): DCoordinateSize {\n\t\treturn \"100%\";\n\t}\n\n\tgetHeight(): DCoordinateSize {\n\t\treturn 30;\n\t}\n\n\tgetCursor(state: DBaseStateSet): string {\n\t\tif (state.is(DTableState.RESIZING)) {\n\t\t\treturn \"col-resize\";\n\t\t}\n\t\treturn super.getCursor(state);\n\t}\n}\n"]}
|
|
@@ -19,6 +19,7 @@ var UtilGestureEasing = /** @class */ (function () {
|
|
|
19
19
|
this._dt = 0;
|
|
20
20
|
this._dtw = 0;
|
|
21
21
|
this._t = 0;
|
|
22
|
+
this._duration = 333 * ((_a = options === null || options === void 0 ? void 0 : options.duration) !== null && _a !== void 0 ? _a : 1);
|
|
22
23
|
this._animation = new DAnimationBase({
|
|
23
24
|
onTime: function (t) {
|
|
24
25
|
_this.onEase(t);
|
|
@@ -27,7 +28,7 @@ var UtilGestureEasing = /** @class */ (function () {
|
|
|
27
28
|
_this.onEaseEnd();
|
|
28
29
|
},
|
|
29
30
|
timing: DAnimationTimings.LINEAR,
|
|
30
|
-
duration:
|
|
31
|
+
duration: this._duration
|
|
31
32
|
});
|
|
32
33
|
this._onMove = onMove;
|
|
33
34
|
this._onEnd = onEnd;
|
|
@@ -108,6 +109,11 @@ var UtilGestureEasing = /** @class */ (function () {
|
|
|
108
109
|
}
|
|
109
110
|
};
|
|
110
111
|
UtilGestureEasing.prototype.onEnd = function (ldt) {
|
|
112
|
+
var d0 = this._duration;
|
|
113
|
+
var d = d0 - ldt;
|
|
114
|
+
if (d <= 0) {
|
|
115
|
+
return this.onEaseEnd();
|
|
116
|
+
}
|
|
111
117
|
this.updateHistoriesSorted(ldt);
|
|
112
118
|
var sorted = this._historiesSorted;
|
|
113
119
|
var sortedLength = sorted.length;
|
|
@@ -132,22 +138,27 @@ var UtilGestureEasing = /** @class */ (function () {
|
|
|
132
138
|
dx *= w;
|
|
133
139
|
dy *= w;
|
|
134
140
|
ds *= w;
|
|
135
|
-
dt *= w;
|
|
141
|
+
dt *= w * (d0 / d); // Effectively, this lowers the velocity (dx, dy, ds) by d / d0.
|
|
136
142
|
this._dx = dx;
|
|
137
143
|
this._dy = dy;
|
|
138
144
|
this._ds = ds;
|
|
139
145
|
this._dt = dt;
|
|
140
146
|
// Start animation
|
|
141
147
|
var animation = this._animation;
|
|
142
|
-
|
|
143
|
-
this._t =
|
|
148
|
+
animation.duration = d;
|
|
149
|
+
this._t = 0;
|
|
144
150
|
this._dtw = d / dt;
|
|
145
151
|
animation.start();
|
|
146
152
|
};
|
|
147
153
|
UtilGestureEasing.prototype.onEase = function (t) {
|
|
148
154
|
var ot = this._t;
|
|
149
155
|
this._t = t;
|
|
150
|
-
// Note:
|
|
156
|
+
// Note: Integral_{x=ot...t} (1-x) dx
|
|
157
|
+
// = [x (1 - 0.5 x)]_{x=ot...t}
|
|
158
|
+
// = t (1 - 0.5 t) - ot (1 - 0.5 ot)
|
|
159
|
+
// = t - ot - 0.5 t t + 0.5 ot ot
|
|
160
|
+
// = (t - ot) - 0.5 (t + ot) (t - ot)
|
|
161
|
+
// = (1 - 0.5 (t + ot)) * (t - ot)
|
|
151
162
|
var w = (1 - 0.5 * (t + ot)) * (t - ot) * this._dtw;
|
|
152
163
|
this._onMove(this._dx * w, this._dy * w, 1 + (this._ds - 1) * w, t);
|
|
153
164
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"util-gesture-easing.js","sourceRoot":"","sources":["../../../../src/main/typescript/wcardinal/ui/util/util-gesture-easing.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,EAAE,wBAAwB,EAAE,MAAM,+BAA+B,CAAC;AASzE;IAgBC,2BACC,MAA+B,EAC/B,KAA6B,EAC7B,OAAkC;QAHnC,iBA2BC;;QAtBA,IAAI,CAAC,UAAU,GAAG,EAAE,CAAC;QACrB,IAAI,CAAC,gBAAgB,GAAG,EAAE,CAAC;QAC3B,IAAI,CAAC,aAAa,GAAG,CAAC,CAAC;QACvB,IAAI,CAAC,WAAW,GAAG,CAAC,CAAC,CAAC;QACtB,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC;QACb,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC;QACb,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC;QACb,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC;QACb,IAAI,CAAC,IAAI,GAAG,CAAC,CAAC;QACd,IAAI,CAAC,EAAE,GAAG,CAAC,CAAC;QACZ,IAAI,CAAC,UAAU,GAAG,IAAI,cAAc,CAAC;YACpC,MAAM,EAAE,UAAC,CAAS;gBACjB,KAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;YAChB,CAAC;YACD,KAAK,EAAE;gBACN,KAAI,CAAC,SAAS,EAAE,CAAC;YAClB,CAAC;YACD,MAAM,EAAE,iBAAiB,CAAC,MAAM;YAChC,QAAQ,EAAE,GAAG,GAAG,CAAC,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,QAAQ,mCAAI,CAAC,CAAC;SACxC,CAAC,CAAC;QACH,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;QACtB,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;IACrB,CAAC;IAED,mCAAO,GAAP;QACC,UAAU;QACV,IAAM,SAAS,GAAG,IAAI,CAAC,UAAU,CAAC;QAClC,KAAK,IAAI,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,IAAI,GAAG,iBAAiB,CAAC,gBAAgB,EAAE,CAAC,GAAG,IAAI,EAAE,EAAE,CAAC,EAAE;YACxF,SAAS,CAAC,IAAI,CAAC,IAAI,wBAAwB,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;SACzD;QACD,IAAI,CAAC,aAAa,GAAG,CAAC,CAAC;QACvB,IAAI,CAAC,WAAW,GAAG,CAAC,CAAC,CAAC;QAEtB,iBAAiB;QACjB,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC;IACxB,CAAC;IAED,kCAAM,GAAN,UAAO,EAAU,EAAE,EAAU,EAAE,EAAU,EAAE,EAAU;QACpD,IAAM,QAAQ,GAAG,iBAAiB,CAAC,gBAAgB,CAAC;QAEpD,IAAM,aAAa,GAAG,IAAI,CAAC,WAAW,CAAC;QACvC,IAAM,aAAa,GAAG,CAAC,aAAa,GAAG,CAAC,CAAC,GAAG,QAAQ,CAAC;QACrD,IAAI,CAAC,WAAW,GAAG,aAAa,CAAC;QAEjC,IAAM,eAAe,GAAG,IAAI,CAAC,aAAa,CAAC;QAC3C,IACC,aAAa,GAAG,aAAa;YAC7B,CAAC,CAAC,IAAI,aAAa,IAAI,aAAa,GAAG,eAAe,CAAC,EACtD;YACD,IAAI,CAAC,aAAa,GAAG,CAAC,eAAe,GAAG,CAAC,CAAC,GAAG,QAAQ,CAAC;SACtD;QAED,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC,GAAG,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;IACpD,CAAC;IAES,iDAAqB,GAA/B,UAAgC,EAAU;QACzC,IAAM,QAAQ,GAAG,IAAI,CAAC,UAAU,CAAC;QACjC,IAAM,MAAM,GAAG,IAAI,CAAC,gBAAgB,CAAC;QACrC,IAAM,KAAK,GAAG,IAAI,CAAC,aAAa,CAAC;QACjC,IAAM,GAAG,GAAG,IAAI,CAAC,WAAW,CAAC;QAC7B,IAAM,MAAM,GAAG,QAAQ,CAAC,MAAM,CAAC;QAC/B,IAAM,SAAS,GAAG,GAAG,CAAC;QACtB,IAAI,GAAG,GAAG,CAAC,EAAE;YACZ,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC;YAClB,OAAO,EAAE,CAAC;SACV;aAAM,IAAI,GAAG,GAAG,KAAK,EAAE;YACvB,IAAI,KAAK,GAAG,EAAE,CAAC;YACf,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC;YAClB,KAAK,IAAI,CAAC,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,EAAE;gBAC9B,IAAM,SAAO,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;gBAC5B,IAAI,KAAK,GAAG,SAAO,CAAC,EAAE,GAAG,SAAS,EAAE;oBACnC,KAAK,IAAI,SAAO,CAAC,EAAE,CAAC;oBACpB,MAAM,CAAC,IAAI,CAAC,SAAO,CAAC,CAAC;iBACrB;qBAAM;oBACN,OAAO,KAAK,CAAC;iBACb;aACD;YAED,KAAK,IAAI,CAAC,GAAG,MAAM,GAAG,CAAC,EAAE,KAAK,IAAI,CAAC,EAAE,EAAE,CAAC,EAAE;gBACzC,IAAM,SAAO,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;gBAC5B,IAAI,KAAK,GAAG,SAAO,CAAC,EAAE,GAAG,SAAS,EAAE;oBACnC,KAAK,IAAI,SAAO,CAAC,EAAE,CAAC;oBACpB,MAAM,CAAC,IAAI,CAAC,SAAO,CAAC,CAAC;iBACrB;qBAAM;oBACN,OAAO,KAAK,CAAC;iBACb;aACD;YACD,OAAO,KAAK,CAAC;SACb;aAAM;YACN,IAAI,KAAK,GAAG,EAAE,CAAC;YACf,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC;YAClB,KAAK,IAAI,CAAC,GAAG,GAAG,EAAE,KAAK,IAAI,CAAC,EAAE,EAAE,CAAC,EAAE;gBAClC,IAAM,SAAO,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;gBAC5B,IAAI,KAAK,GAAG,SAAO,CAAC,EAAE,GAAG,SAAS,EAAE;oBACnC,KAAK,IAAI,SAAO,CAAC,EAAE,CAAC;oBACpB,MAAM,CAAC,IAAI,CAAC,SAAO,CAAC,CAAC;iBACrB;qBAAM;oBACN,OAAO,KAAK,CAAC;iBACb;aACD;YACD,OAAO,KAAK,CAAC;SACb;IACF,CAAC;IAED,iCAAK,GAAL,UAAM,GAAW;QAChB,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,CAAC;QAChC,IAAM,MAAM,GAAG,IAAI,CAAC,gBAAgB,CAAC;QACrC,IAAM,YAAY,GAAG,MAAM,CAAC,MAAM,CAAC;QACnC,IAAI,YAAY,IAAI,CAAC,EAAE;YACtB,OAAO,IAAI,CAAC,SAAS,EAAE,CAAC;SACxB;QAED,IAAI,EAAE,GAAG,CAAC,CAAC;QACX,IAAI,EAAE,GAAG,CAAC,CAAC;QACX,IAAI,EAAE,GAAG,CAAC,CAAC;QACX,IAAI,EAAE,GAAG,CAAC,CAAC;QACX,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,YAAY,EAAE,EAAE,CAAC,EAAE;YACtC,IAAM,SAAO,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;YAC1B,EAAE,IAAI,SAAO,CAAC,EAAE,CAAC;YACjB,EAAE,IAAI,SAAO,CAAC,EAAE,CAAC;YACjB,EAAE,IAAI,SAAO,CAAC,EAAE,CAAC;YACjB,EAAE,IAAI,SAAO,CAAC,EAAE,CAAC;SACjB;QACD,IAAI,EAAE,IAAI,CAAC,EAAE;YACZ,OAAO,IAAI,CAAC,SAAS,EAAE,CAAC;SACxB;QAED,IAAM,CAAC,GAAG,CAAC,GAAG,YAAY,CAAC;QAC3B,EAAE,IAAI,CAAC,CAAC;QACR,EAAE,IAAI,CAAC,CAAC;QACR,EAAE,IAAI,CAAC,CAAC;QACR,EAAE,IAAI,CAAC,CAAC;QACR,IAAI,CAAC,GAAG,GAAG,EAAE,CAAC;QACd,IAAI,CAAC,GAAG,GAAG,EAAE,CAAC;QACd,IAAI,CAAC,GAAG,GAAG,EAAE,CAAC;QACd,IAAI,CAAC,GAAG,GAAG,EAAE,CAAC;QAEd,kBAAkB;QAClB,IAAM,SAAS,GAAG,IAAI,CAAC,UAAU,CAAC;QAClC,IAAM,CAAC,GAAG,SAAS,CAAC,QAAQ,CAAC;QAC7B,IAAI,CAAC,EAAE,GAAG,CAAC,GAAG,GAAG,CAAC,CAAC;QACnB,IAAI,CAAC,IAAI,GAAG,CAAC,GAAG,EAAE,CAAC;QACnB,SAAS,CAAC,KAAK,EAAE,CAAC;IACnB,CAAC;IAES,kCAAM,GAAhB,UAAiB,CAAS;QACzB,IAAM,EAAE,GAAG,IAAI,CAAC,EAAE,CAAC;QACnB,IAAI,CAAC,EAAE,GAAG,CAAC,CAAC;QACZ,gDAAgD;QAChD,IAAM,CAAC,GAAG,CAAC,CAAC,GAAG,GAAG,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC;QACtD,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,GAAG,CAAC,EAAE,IAAI,CAAC,GAAG,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;IACrE,CAAC;IAES,qCAAS,GAAnB;QACC,IAAI,CAAC,MAAM,EAAE,CAAC;IACf,CAAC;IAED,gCAAI,GAAJ;QACC,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC;IACxB,CAAC;IAnLgB,kCAAgB,GAAG,CAAC,CAAC;IAoLvC,wBAAC;CAAA,AArLD,IAqLC;SArLY,iBAAiB","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { DAnimation } from \"../d-animation\";\nimport { DAnimationBase } from \"../d-animation-base\";\nimport { DAnimationTimings } from \"../d-animation-timings\";\nimport { UtilGestureEasingHistory } from \"./util-gesture-easing-history\";\n\nexport type UtilGestureEasingOnMove = (dx: number, dy: number, ds: number, time: number) => void;\nexport type UtilGestureEasingOnEnd = () => void;\n\nexport interface UtilGestureEasingOptions {\n\tduration?: number;\n}\n\nexport class UtilGestureEasing {\n\tprotected static HISTORY_CAPACITY = 5;\n\tprotected _histories: UtilGestureEasingHistory[];\n\tprotected _historiesSorted: UtilGestureEasingHistory[];\n\tprotected _historyBegin: number;\n\tprotected _historyEnd: number;\n\tprotected _animation: DAnimation;\n\tprotected _dx: number;\n\tprotected _dy: number;\n\tprotected _ds: number;\n\tprotected _dt: number;\n\tprotected _dtw: number;\n\tprotected _t: number;\n\tprotected _onMove: UtilGestureEasingOnMove;\n\tprotected _onEnd: UtilGestureEasingOnEnd;\n\n\tconstructor(\n\t\tonMove: UtilGestureEasingOnMove,\n\t\tonEnd: UtilGestureEasingOnEnd,\n\t\toptions?: UtilGestureEasingOptions\n\t) {\n\t\tthis._histories = [];\n\t\tthis._historiesSorted = [];\n\t\tthis._historyBegin = 0;\n\t\tthis._historyEnd = -1;\n\t\tthis._dx = 0;\n\t\tthis._dy = 0;\n\t\tthis._ds = 0;\n\t\tthis._dt = 0;\n\t\tthis._dtw = 0;\n\t\tthis._t = 0;\n\t\tthis._animation = new DAnimationBase({\n\t\t\tonTime: (t: number): void => {\n\t\t\t\tthis.onEase(t);\n\t\t\t},\n\t\t\tonEnd: (): void => {\n\t\t\t\tthis.onEaseEnd();\n\t\t\t},\n\t\t\ttiming: DAnimationTimings.LINEAR,\n\t\t\tduration: 333 * (options?.duration ?? 1)\n\t\t});\n\t\tthis._onMove = onMove;\n\t\tthis._onEnd = onEnd;\n\t}\n\n\tonStart(): void {\n\t\t// History\n\t\tconst histories = this._histories;\n\t\tfor (let i = histories.length, imax = UtilGestureEasing.HISTORY_CAPACITY; i < imax; ++i) {\n\t\t\thistories.push(new UtilGestureEasingHistory(0, 0, 1, 0));\n\t\t}\n\t\tthis._historyBegin = 0;\n\t\tthis._historyEnd = -1;\n\n\t\t// Stop animation\n\t\tthis._animation.stop();\n\t}\n\n\tonMove(dx: number, dy: number, ds: number, dt: number): void {\n\t\tconst capacity = UtilGestureEasing.HISTORY_CAPACITY;\n\n\t\tconst oldHistoryEnd = this._historyEnd;\n\t\tconst newHistoryEnd = (oldHistoryEnd + 1) % capacity;\n\t\tthis._historyEnd = newHistoryEnd;\n\n\t\tconst oldHistoryBegin = this._historyBegin;\n\t\tif (\n\t\t\tnewHistoryEnd < oldHistoryEnd ||\n\t\t\t(0 <= oldHistoryEnd && oldHistoryEnd < oldHistoryBegin)\n\t\t) {\n\t\t\tthis._historyBegin = (oldHistoryBegin + 1) % capacity;\n\t\t}\n\n\t\tthis._histories[newHistoryEnd].set(dx, dy, ds, dt);\n\t}\n\n\tprotected updateHistoriesSorted(dt: number): number {\n\t\tconst unsorted = this._histories;\n\t\tconst sorted = this._historiesSorted;\n\t\tconst begin = this._historyBegin;\n\t\tconst end = this._historyEnd;\n\t\tconst length = unsorted.length;\n\t\tconst threshold = 160;\n\t\tif (end < 0) {\n\t\t\tsorted.length = 0;\n\t\t\treturn dt;\n\t\t} else if (end < begin) {\n\t\t\tlet total = dt;\n\t\t\tsorted.length = 0;\n\t\t\tfor (let i = end; 0 <= i; --i) {\n\t\t\t\tconst history = unsorted[i];\n\t\t\t\tif (total + history.dt < threshold) {\n\t\t\t\t\ttotal += history.dt;\n\t\t\t\t\tsorted.push(history);\n\t\t\t\t} else {\n\t\t\t\t\treturn total;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tfor (let i = length - 1; begin <= i; --i) {\n\t\t\t\tconst history = unsorted[i];\n\t\t\t\tif (total + history.dt < threshold) {\n\t\t\t\t\ttotal += history.dt;\n\t\t\t\t\tsorted.push(history);\n\t\t\t\t} else {\n\t\t\t\t\treturn total;\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn total;\n\t\t} else {\n\t\t\tlet total = dt;\n\t\t\tsorted.length = 0;\n\t\t\tfor (let i = end; begin <= i; --i) {\n\t\t\t\tconst history = unsorted[i];\n\t\t\t\tif (total + history.dt < threshold) {\n\t\t\t\t\ttotal += history.dt;\n\t\t\t\t\tsorted.push(history);\n\t\t\t\t} else {\n\t\t\t\t\treturn total;\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn total;\n\t\t}\n\t}\n\n\tonEnd(ldt: number): void {\n\t\tthis.updateHistoriesSorted(ldt);\n\t\tconst sorted = this._historiesSorted;\n\t\tconst sortedLength = sorted.length;\n\t\tif (sortedLength <= 0) {\n\t\t\treturn this.onEaseEnd();\n\t\t}\n\n\t\tlet dx = 0;\n\t\tlet dy = 0;\n\t\tlet ds = 0;\n\t\tlet dt = 0;\n\t\tfor (let i = 0; i < sortedLength; ++i) {\n\t\t\tconst history = sorted[i];\n\t\t\tdx += history.dx;\n\t\t\tdy += history.dy;\n\t\t\tds += history.ds;\n\t\t\tdt += history.dt;\n\t\t}\n\t\tif (dt <= 0) {\n\t\t\treturn this.onEaseEnd();\n\t\t}\n\n\t\tconst w = 1 / sortedLength;\n\t\tdx *= w;\n\t\tdy *= w;\n\t\tds *= w;\n\t\tdt *= w;\n\t\tthis._dx = dx;\n\t\tthis._dy = dy;\n\t\tthis._ds = ds;\n\t\tthis._dt = dt;\n\n\t\t// Start animation\n\t\tconst animation = this._animation;\n\t\tconst d = animation.duration;\n\t\tthis._t = -ldt / d;\n\t\tthis._dtw = d / dt;\n\t\tanimation.start();\n\t}\n\n\tprotected onEase(t: number): void {\n\t\tconst ot = this._t;\n\t\tthis._t = t;\n\t\t// Note: Integral of (1-x) is x (1 - 0.5 x) + c.\n\t\tconst w = (1 - 0.5 * (t + ot)) * (t - ot) * this._dtw;\n\t\tthis._onMove(this._dx * w, this._dy * w, 1 + (this._ds - 1) * w, t);\n\t}\n\n\tprotected onEaseEnd(): void {\n\t\tthis._onEnd();\n\t}\n\n\tstop(): void {\n\t\tthis._animation.stop();\n\t}\n}\n"]}
|
|
1
|
+
{"version":3,"file":"util-gesture-easing.js","sourceRoot":"","sources":["../../../../src/main/typescript/wcardinal/ui/util/util-gesture-easing.ts"],"names":[],"mappings":"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","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { DAnimation } from \"../d-animation\";\nimport { DAnimationBase } from \"../d-animation-base\";\nimport { DAnimationTimings } from \"../d-animation-timings\";\nimport { UtilGestureEasingHistory } from \"./util-gesture-easing-history\";\n\nexport type UtilGestureEasingOnMove = (dx: number, dy: number, ds: number, time: number) => void;\nexport type UtilGestureEasingOnEnd = () => void;\n\nexport interface UtilGestureEasingOptions {\n\tduration?: number;\n}\n\nexport class UtilGestureEasing {\n\tprotected static HISTORY_CAPACITY = 5;\n\tprotected _histories: UtilGestureEasingHistory[];\n\tprotected _historiesSorted: UtilGestureEasingHistory[];\n\tprotected _historyBegin: number;\n\tprotected _historyEnd: number;\n\tprotected _animation: DAnimation;\n\tprotected _dx: number;\n\tprotected _dy: number;\n\tprotected _ds: number;\n\tprotected _dt: number;\n\tprotected _dtw: number;\n\tprotected _t: number;\n\tprotected _onMove: UtilGestureEasingOnMove;\n\tprotected _onEnd: UtilGestureEasingOnEnd;\n\tprotected _duration: number;\n\n\tconstructor(\n\t\tonMove: UtilGestureEasingOnMove,\n\t\tonEnd: UtilGestureEasingOnEnd,\n\t\toptions?: UtilGestureEasingOptions\n\t) {\n\t\tthis._histories = [];\n\t\tthis._historiesSorted = [];\n\t\tthis._historyBegin = 0;\n\t\tthis._historyEnd = -1;\n\t\tthis._dx = 0;\n\t\tthis._dy = 0;\n\t\tthis._ds = 0;\n\t\tthis._dt = 0;\n\t\tthis._dtw = 0;\n\t\tthis._t = 0;\n\t\tthis._duration = 333 * (options?.duration ?? 1);\n\t\tthis._animation = new DAnimationBase({\n\t\t\tonTime: (t: number): void => {\n\t\t\t\tthis.onEase(t);\n\t\t\t},\n\t\t\tonEnd: (): void => {\n\t\t\t\tthis.onEaseEnd();\n\t\t\t},\n\t\t\ttiming: DAnimationTimings.LINEAR,\n\t\t\tduration: this._duration\n\t\t});\n\t\tthis._onMove = onMove;\n\t\tthis._onEnd = onEnd;\n\t}\n\n\tonStart(): void {\n\t\t// History\n\t\tconst histories = this._histories;\n\t\tfor (let i = histories.length, imax = UtilGestureEasing.HISTORY_CAPACITY; i < imax; ++i) {\n\t\t\thistories.push(new UtilGestureEasingHistory(0, 0, 1, 0));\n\t\t}\n\t\tthis._historyBegin = 0;\n\t\tthis._historyEnd = -1;\n\n\t\t// Stop animation\n\t\tthis._animation.stop();\n\t}\n\n\tonMove(dx: number, dy: number, ds: number, dt: number): void {\n\t\tconst capacity = UtilGestureEasing.HISTORY_CAPACITY;\n\n\t\tconst oldHistoryEnd = this._historyEnd;\n\t\tconst newHistoryEnd = (oldHistoryEnd + 1) % capacity;\n\t\tthis._historyEnd = newHistoryEnd;\n\n\t\tconst oldHistoryBegin = this._historyBegin;\n\t\tif (\n\t\t\tnewHistoryEnd < oldHistoryEnd ||\n\t\t\t(0 <= oldHistoryEnd && oldHistoryEnd < oldHistoryBegin)\n\t\t) {\n\t\t\tthis._historyBegin = (oldHistoryBegin + 1) % capacity;\n\t\t}\n\n\t\tthis._histories[newHistoryEnd].set(dx, dy, ds, dt);\n\t}\n\n\tprotected updateHistoriesSorted(dt: number): number {\n\t\tconst unsorted = this._histories;\n\t\tconst sorted = this._historiesSorted;\n\t\tconst begin = this._historyBegin;\n\t\tconst end = this._historyEnd;\n\t\tconst length = unsorted.length;\n\t\tconst threshold = 160;\n\t\tif (end < 0) {\n\t\t\tsorted.length = 0;\n\t\t\treturn dt;\n\t\t} else if (end < begin) {\n\t\t\tlet total = dt;\n\t\t\tsorted.length = 0;\n\t\t\tfor (let i = end; 0 <= i; --i) {\n\t\t\t\tconst history = unsorted[i];\n\t\t\t\tif (total + history.dt < threshold) {\n\t\t\t\t\ttotal += history.dt;\n\t\t\t\t\tsorted.push(history);\n\t\t\t\t} else {\n\t\t\t\t\treturn total;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tfor (let i = length - 1; begin <= i; --i) {\n\t\t\t\tconst history = unsorted[i];\n\t\t\t\tif (total + history.dt < threshold) {\n\t\t\t\t\ttotal += history.dt;\n\t\t\t\t\tsorted.push(history);\n\t\t\t\t} else {\n\t\t\t\t\treturn total;\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn total;\n\t\t} else {\n\t\t\tlet total = dt;\n\t\t\tsorted.length = 0;\n\t\t\tfor (let i = end; begin <= i; --i) {\n\t\t\t\tconst history = unsorted[i];\n\t\t\t\tif (total + history.dt < threshold) {\n\t\t\t\t\ttotal += history.dt;\n\t\t\t\t\tsorted.push(history);\n\t\t\t\t} else {\n\t\t\t\t\treturn total;\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn total;\n\t\t}\n\t}\n\n\tonEnd(ldt: number): void {\n\t\tconst d0 = this._duration;\n\t\tconst d = d0 - ldt;\n\t\tif (d <= 0) {\n\t\t\treturn this.onEaseEnd();\n\t\t}\n\n\t\tthis.updateHistoriesSorted(ldt);\n\t\tconst sorted = this._historiesSorted;\n\t\tconst sortedLength = sorted.length;\n\t\tif (sortedLength <= 0) {\n\t\t\treturn this.onEaseEnd();\n\t\t}\n\n\t\tlet dx = 0;\n\t\tlet dy = 0;\n\t\tlet ds = 0;\n\t\tlet dt = 0;\n\t\tfor (let i = 0; i < sortedLength; ++i) {\n\t\t\tconst history = sorted[i];\n\t\t\tdx += history.dx;\n\t\t\tdy += history.dy;\n\t\t\tds += history.ds;\n\t\t\tdt += history.dt;\n\t\t}\n\t\tif (dt <= 0) {\n\t\t\treturn this.onEaseEnd();\n\t\t}\n\n\t\tconst w = 1 / sortedLength;\n\t\tdx *= w;\n\t\tdy *= w;\n\t\tds *= w;\n\t\tdt *= w * (d0 / d); // Effectively, this lowers the velocity (dx, dy, ds) by d / d0.\n\t\tthis._dx = dx;\n\t\tthis._dy = dy;\n\t\tthis._ds = ds;\n\t\tthis._dt = dt;\n\n\t\t// Start animation\n\t\tconst animation = this._animation;\n\t\tanimation.duration = d;\n\t\tthis._t = 0;\n\t\tthis._dtw = d / dt;\n\t\tanimation.start();\n\t}\n\n\tprotected onEase(t: number): void {\n\t\tconst ot = this._t;\n\t\tthis._t = t;\n\t\t// Note: Integral_{x=ot...t} (1-x) dx\n\t\t// = [x (1 - 0.5 x)]_{x=ot...t}\n\t\t// = t (1 - 0.5 t) - ot (1 - 0.5 ot)\n\t\t// = t - ot - 0.5 t t + 0.5 ot ot\n\t\t// = (t - ot) - 0.5 (t + ot) (t - ot)\n\t\t// = (1 - 0.5 (t + ot)) * (t - ot)\n\t\tconst w = (1 - 0.5 * (t + ot)) * (t - ot) * this._dtw;\n\t\tthis._onMove(this._dx * w, this._dy * w, 1 + (this._ds - 1) * w, t);\n\t}\n\n\tprotected onEaseEnd(): void {\n\t\tthis._onEnd();\n\t}\n\n\tstop(): void {\n\t\tthis._animation.stop();\n\t}\n}\n"]}
|
|
@@ -195,6 +195,7 @@ var UtilGesture = /** @class */ (function () {
|
|
|
195
195
|
if (target == null || !target.state.isGesturing) {
|
|
196
196
|
return;
|
|
197
197
|
}
|
|
198
|
+
var oldTime = data.time;
|
|
198
199
|
if (!data.end(e)) {
|
|
199
200
|
return;
|
|
200
201
|
}
|
|
@@ -226,7 +227,7 @@ var UtilGesture = /** @class */ (function () {
|
|
|
226
227
|
}
|
|
227
228
|
var easing = data.easing;
|
|
228
229
|
if (easing) {
|
|
229
|
-
easing.onEnd(
|
|
230
|
+
easing.onEnd(data.time - oldTime);
|
|
230
231
|
}
|
|
231
232
|
else {
|
|
232
233
|
this.deleteData(data);
|