@wcardinal/wcardinal-ui 0.394.0 → 0.396.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (53) hide show
  1. package/dist/types/wcardinal/ui/theme/dark/d-theme-dark-input-boolean-button-off.d.ts +0 -2
  2. package/dist/types/wcardinal/ui/theme/dark/d-theme-dark-input-boolean-button-on.d.ts +0 -2
  3. package/dist/types/wcardinal/ui/theme/white/d-theme-white-input-boolean-button-off.d.ts +0 -2
  4. package/dist/types/wcardinal/ui/theme/white/d-theme-white-input-boolean-button-on.d.ts +0 -2
  5. package/dist/wcardinal/ui/d-application-layer.js +7 -1
  6. package/dist/wcardinal/ui/d-application-layer.js.map +1 -1
  7. package/dist/wcardinal/ui/d-base-background-mesh-geometry.js +5 -5
  8. package/dist/wcardinal/ui/d-base-background-mesh-geometry.js.map +1 -1
  9. package/dist/wcardinal/ui/d-base-border-mesh-geometry.js +60 -37
  10. package/dist/wcardinal/ui/d-base-border-mesh-geometry.js.map +1 -1
  11. package/dist/wcardinal/ui/d-base-outline-snippet.js +1 -1
  12. package/dist/wcardinal/ui/d-base-outline-snippet.js.map +1 -1
  13. package/dist/wcardinal/ui/d-item-updater.js +1 -1
  14. package/dist/wcardinal/ui/d-item-updater.js.map +1 -1
  15. package/dist/wcardinal/ui/d-table-body.js +1 -1
  16. package/dist/wcardinal/ui/d-table-body.js.map +1 -1
  17. package/dist/wcardinal/ui/theme/dark/d-theme-dark-button-base.js +1 -1
  18. package/dist/wcardinal/ui/theme/dark/d-theme-dark-button-base.js.map +1 -1
  19. package/dist/wcardinal/ui/theme/dark/d-theme-dark-input-boolean-button-off.js +0 -4
  20. package/dist/wcardinal/ui/theme/dark/d-theme-dark-input-boolean-button-off.js.map +1 -1
  21. package/dist/wcardinal/ui/theme/dark/d-theme-dark-input-boolean-button-on.js +0 -4
  22. package/dist/wcardinal/ui/theme/dark/d-theme-dark-input-boolean-button-on.js.map +1 -1
  23. package/dist/wcardinal/ui/theme/dark/d-theme-dark-input.js +1 -1
  24. package/dist/wcardinal/ui/theme/dark/d-theme-dark-input.js.map +1 -1
  25. package/dist/wcardinal/ui/theme/white/d-theme-white-button-base.js +1 -1
  26. package/dist/wcardinal/ui/theme/white/d-theme-white-button-base.js.map +1 -1
  27. package/dist/wcardinal/ui/theme/white/d-theme-white-input-boolean-button-off.js +0 -4
  28. package/dist/wcardinal/ui/theme/white/d-theme-white-input-boolean-button-off.js.map +1 -1
  29. package/dist/wcardinal/ui/theme/white/d-theme-white-input-boolean-button-on.js +0 -4
  30. package/dist/wcardinal/ui/theme/white/d-theme-white-input-boolean-button-on.js.map +1 -1
  31. package/dist/wcardinal/ui/theme/white/d-theme-white-input.js +1 -1
  32. package/dist/wcardinal/ui/theme/white/d-theme-white-input.js.map +1 -1
  33. package/dist/wcardinal-ui-theme-dark-en-us.js +3 -9
  34. package/dist/wcardinal-ui-theme-dark-en-us.min.js +2 -2
  35. package/dist/wcardinal-ui-theme-dark-en-us.min.js.map +1 -1
  36. package/dist/wcardinal-ui-theme-dark-ja-jp.js +3 -9
  37. package/dist/wcardinal-ui-theme-dark-ja-jp.min.js +2 -2
  38. package/dist/wcardinal-ui-theme-dark-ja-jp.min.js.map +1 -1
  39. package/dist/wcardinal-ui-theme-dark.js +3 -9
  40. package/dist/wcardinal-ui-theme-dark.min.js +2 -2
  41. package/dist/wcardinal-ui-theme-white-en-us.js +3 -9
  42. package/dist/wcardinal-ui-theme-white-en-us.min.js +2 -2
  43. package/dist/wcardinal-ui-theme-white-en-us.min.js.map +1 -1
  44. package/dist/wcardinal-ui-theme-white-ja-jp.js +3 -9
  45. package/dist/wcardinal-ui-theme-white-ja-jp.min.js +2 -2
  46. package/dist/wcardinal-ui-theme-white-ja-jp.min.js.map +1 -1
  47. package/dist/wcardinal-ui-theme-white.js +3 -9
  48. package/dist/wcardinal-ui-theme-white.min.js +2 -2
  49. package/dist/wcardinal-ui.cjs.js +80 -63
  50. package/dist/wcardinal-ui.js +76 -47
  51. package/dist/wcardinal-ui.min.js +2 -2
  52. package/dist/wcardinal-ui.min.js.map +1 -1
  53. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"d-item-updater.js","sourceRoot":"","sources":["../../../src/main/typescript/wcardinal/ui/d-item-updater.ts"],"names":[],"mappings":"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","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { DApplications } from \"./d-applications\";\nimport { DBase } from \"./d-base\";\nimport { isNumber } from \"./util/is-number\";\nimport { UtilKeyboardEvent } from \"./util/util-keyboard-event\";\n\nexport interface DItemUpdaterItem<VALUE> extends DBase {\n\treadonly value?: VALUE;\n\treadonly index?: number;\n\tset(value: VALUE, index: number, forcibly?: boolean): void;\n\tunset(): void;\n}\n\nexport type DItemUpdaterNewItem<DATA, ITEM> = (data: DATA) => ITEM;\n\nexport type DItemUpdaterInitItem<DATA, ITEM> = (item: ITEM, index: number, data: DATA) => ITEM;\n\n/**\n * Item updater options.\n */\nexport interface DItemUpdaterOptions<VALUE, DATA, ITEM> {\n\t/**\n\t * Called to create items.\n\t */\n\tnewItem?: DItemUpdaterNewItem<DATA, ITEM>;\n\n\t/**\n\t * Called to initialize items.\n\t */\n\tinitItem?: DItemUpdaterInitItem<DATA, ITEM>;\n\n\t/**\n\t * True to make stripe-colored items. Defaults to true.\n\t */\n\tstripe?: boolean;\n}\n\nexport interface DItemUpdaterDataSelection<VALUE> {\n\tcontains(value: VALUE): boolean;\n}\n\nexport interface DItemUpdaterDataMapped<VALUE> {\n\tsize(): number;\n\teach(iteratee: (value: VALUE, index: number) => void | boolean, from: number, to: number): void;\n}\n\nexport interface DItemUpdaterData<VALUE> {\n\treadonly selection: DItemUpdaterDataSelection<VALUE>;\n}\n\n/**\n * The primary purpose of this class is to minimize the number of rendered items (e.g., {@link DListItem})\n * as low as possible and to update their positions and states. For this sake, the updater calculates the\n * required number of items whenever their container size changes and creates items if needed.\n */\nexport abstract class DItemUpdater<\n\tVALUE = unknown,\n\tDATA extends DItemUpdaterData<VALUE> = DItemUpdaterData<VALUE>,\n\tDATA_MAPPED extends DItemUpdaterDataMapped<VALUE> = DItemUpdaterDataMapped<VALUE>,\n\tITEM extends DItemUpdaterItem<VALUE> = DItemUpdaterItem<VALUE>,\n\tOPTIONS extends DItemUpdaterOptions<VALUE, DATA, ITEM> = DItemUpdaterOptions<VALUE, DATA, ITEM>\n> {\n\tprotected _updateItemsCount: number;\n\tprotected _isUpdateItemsCalled: boolean;\n\tprotected _isUpdateItemsCalledForcibly: boolean;\n\tprotected _itemHeight: number;\n\tprotected _itemWidth: number;\n\tprotected _multiplicity: number;\n\tprotected _itemIndexStart: number;\n\tprotected _itemIndexEnd: number;\n\tprotected _workItems: ITEM[];\n\tprotected _data: DATA;\n\tprotected _content: DBase;\n\tprotected _container: DBase;\n\tprotected _newItem: DItemUpdaterNewItem<DATA, ITEM>;\n\tprotected _initItem: DItemUpdaterInitItem<DATA, ITEM>;\n\n\tconstructor(data: DATA, content: DBase, container: DBase, options?: OPTIONS) {\n\t\tthis._updateItemsCount = 0;\n\t\tthis._isUpdateItemsCalled = false;\n\t\tthis._isUpdateItemsCalledForcibly = false;\n\t\tthis._itemHeight = -1;\n\t\tthis._itemWidth = -1;\n\t\tthis._multiplicity = 1;\n\t\tthis._itemIndexStart = 0;\n\t\tthis._itemIndexEnd = 0;\n\t\tthis._workItems = [];\n\t\tthis._data = data;\n\t\tthis._content = content;\n\t\tthis._container = container;\n\t\tthis._newItem = this.toNewItem(options);\n\t\tthis._initItem = this.toInitItem(options);\n\t}\n\n\tprotected toNewItem(\n\t\toptions?: DItemUpdaterOptions<VALUE, DATA, ITEM>\n\t): DItemUpdaterNewItem<DATA, ITEM> {\n\t\treturn options?.newItem || this.newItem;\n\t}\n\n\tprotected abstract newItem(this: undefined, data: DATA): ITEM;\n\n\tprotected toInitItem(\n\t\toptions?: DItemUpdaterOptions<VALUE, DATA, ITEM>\n\t): DItemUpdaterInitItem<DATA, ITEM> {\n\t\tif (options) {\n\t\t\tconst initItem = options.initItem;\n\t\t\tif (initItem) {\n\t\t\t\treturn initItem;\n\t\t\t}\n\t\t\tif (options.stripe !== false) {\n\t\t\t\treturn this.initItem;\n\t\t\t}\n\t\t\treturn this.initItemNoStriping;\n\t\t}\n\t\treturn this.initItem;\n\t}\n\n\tprotected initItem(this: undefined, item: ITEM, index: number, data: DATA): ITEM {\n\t\titem.state.isAlternated = index % 2 === 1;\n\t\treturn item;\n\t}\n\n\tprotected initItemNoStriping(this: undefined, item: ITEM, index: number, data: DATA): ITEM {\n\t\treturn item;\n\t}\n\n\tget multiplicity(): number {\n\t\treturn this._multiplicity;\n\t}\n\n\tlock(): void {\n\t\tthis._updateItemsCount += 1;\n\t\tif (this._updateItemsCount === 1) {\n\t\t\tthis._isUpdateItemsCalled = false;\n\t\t\tthis._isUpdateItemsCalledForcibly = false;\n\t\t}\n\t}\n\n\tunlock(callIfNeeded: boolean): void {\n\t\tthis._updateItemsCount -= 1;\n\t\tif (this._updateItemsCount === 0) {\n\t\t\tif (callIfNeeded && this._isUpdateItemsCalled) {\n\t\t\t\tthis.update(this._isUpdateItemsCalledForcibly);\n\t\t\t}\n\t\t\tthis._isUpdateItemsCalled = false;\n\t\t\tthis._isUpdateItemsCalledForcibly = false;\n\t\t}\n\t}\n\n\tupdate(forcibly?: boolean): void {\n\t\tif (0 < this._updateItemsCount) {\n\t\t\tthis._isUpdateItemsCalled = true;\n\t\t\tif (forcibly) {\n\t\t\t\tthis._isUpdateItemsCalledForcibly = true;\n\t\t\t}\n\t\t\treturn;\n\t\t}\n\t\tconst content = this._content;\n\t\tconst contentParent = content.parent;\n\t\tif (contentParent == null) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst container = this._container;\n\t\tconst items = container.children as ITEM[];\n\t\tconst height = contentParent.height;\n\n\t\tconst data = this._data;\n\t\tconst mapped = this.toMapped(data);\n\t\tconst dataSize = mapped.size();\n\n\t\tconst oldItemIndexStart = this._itemIndexStart;\n\t\tlet oldItemIndexEnd = this._itemIndexEnd;\n\t\tlet oldItemCount = oldItemIndexEnd - oldItemIndexStart;\n\n\t\tconst newItem = this._newItem;\n\t\tconst initItem = this._initItem;\n\t\tlet itemHeight = this._itemHeight;\n\t\tlet itemWidth = this._itemWidth;\n\t\tif (this._itemHeight < 0) {\n\t\t\tlet item: ITEM;\n\t\t\tif (0 < items.length) {\n\t\t\t\titem = items[0];\n\t\t\t} else {\n\t\t\t\titem = initItem(newItem(data), oldItemIndexStart, data);\n\t\t\t\tcontainer.addChild(item);\n\t\t\t\toldItemIndexEnd += 1;\n\t\t\t\toldItemCount += 1;\n\t\t\t}\n\t\t\titemHeight = Math.max(1, item.height);\n\t\t\tif (isNumber(item.getWidth())) {\n\t\t\t\titemWidth = Math.max(1, item.width);\n\t\t\t}\n\t\t\tthis._itemHeight = itemHeight;\n\t\t\tthis._itemWidth = itemWidth;\n\t\t}\n\t\tconst contentPadding = content.padding;\n\t\tconst contentPaddingTop = contentPadding.getTop();\n\t\tconst contentPaddingBottom = contentPadding.getBottom();\n\t\tconst contentPaddingLeft = contentPadding.getLeft();\n\t\tconst contentPaddingRight = contentPadding.getRight();\n\t\tconst contentWidthAvailable = Math.max(\n\t\t\t0,\n\t\t\tcontent.width - contentPaddingLeft - contentPaddingRight\n\t\t);\n\t\tconst multiplicity =\n\t\t\t0 < itemWidth ? Math.max(1, Math.floor(contentWidthAvailable / itemWidth)) : 1;\n\t\tthis._multiplicity = multiplicity;\n\n\t\tconst y = content !== container ? container.transform.position.y : contentPaddingTop;\n\t\tconst newHeight = Math.ceil(dataSize / multiplicity) * itemHeight;\n\t\tconst newContentHeight = Math.max(\n\t\t\theight,\n\t\t\tcontentPaddingTop + newHeight + contentPaddingBottom\n\t\t);\n\t\tconst newContentY = Math.max(height - newContentHeight, content.position.y);\n\n\t\tconst newItemIndexLowerBound = Math.floor(\n\t\t\t((0 - (newContentY + y)) * multiplicity) / itemHeight\n\t\t);\n\t\tconst newItemIndexUpperBound = Math.floor(\n\t\t\t((height - (newContentY + y)) * multiplicity) / itemHeight\n\t\t);\n\t\tlet newItemIndexStart = newItemIndexLowerBound - multiplicity;\n\t\tif (newItemIndexStart % 2 !== 0) {\n\t\t\tnewItemIndexStart -= 1;\n\t\t}\n\t\tlet newItemIndexEnd = newItemIndexUpperBound + multiplicity + multiplicity;\n\t\tif (newItemIndexEnd % 2 !== 0) {\n\t\t\tnewItemIndexEnd += 1;\n\t\t}\n\t\tlet newItemCount = newItemIndexEnd - newItemIndexStart;\n\t\tif (newItemCount < oldItemCount && oldItemCount - 2 <= newItemCount) {\n\t\t\tnewItemCount = oldItemCount;\n\t\t\tnewItemIndexEnd = newItemIndexStart + newItemCount;\n\t\t}\n\n\t\tif (oldItemCount < newItemCount) {\n\t\t\tfor (let i = oldItemCount; i < newItemCount; ++i) {\n\t\t\t\tconst oldItemIndex = oldItemIndexStart + i;\n\t\t\t\tconst item = initItem(newItem(data), oldItemIndex, data);\n\t\t\t\tcontainer.addChild(item);\n\t\t\t}\n\t\t\toldItemCount = newItemCount;\n\t\t\toldItemIndexEnd = oldItemIndexStart + oldItemCount;\n\t\t} else if (newItemCount < oldItemCount) {\n\t\t\tfor (let i = oldItemCount - 1; newItemCount <= i; --i) {\n\t\t\t\tcontainer.removeChild(items[i]);\n\t\t\t}\n\t\t\toldItemCount = newItemCount;\n\t\t\toldItemIndexEnd = oldItemIndexStart + oldItemCount;\n\t\t}\n\n\t\tthis._itemIndexStart = newItemIndexStart;\n\t\tthis._itemIndexEnd = newItemIndexEnd;\n\n\t\tconst itemIndexStartDelta = newItemIndexStart - oldItemIndexStart;\n\t\tconst itemIndexStartDeltaAbs = Math.abs(itemIndexStartDelta);\n\t\tconst itemsLength = items.length;\n\t\tif (0 < itemIndexStartDeltaAbs && itemIndexStartDeltaAbs < itemsLength) {\n\t\t\tconst work = this._workItems;\n\t\t\tif (0 < itemIndexStartDelta) {\n\t\t\t\tfor (let i = 0; i < itemIndexStartDeltaAbs; ++i) {\n\t\t\t\t\tconst item = items[i];\n\t\t\t\t\tthis.reset(item);\n\t\t\t\t\twork.push(item);\n\t\t\t\t}\n\t\t\t\tfor (let i = itemIndexStartDeltaAbs; i < itemsLength; ++i) {\n\t\t\t\t\titems[i - itemIndexStartDeltaAbs] = items[i];\n\t\t\t\t}\n\t\t\t\tfor (let i = 0; i < itemIndexStartDeltaAbs; ++i) {\n\t\t\t\t\titems[itemsLength - itemIndexStartDeltaAbs + i] = work[i];\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tfor (let i = 0; i < itemIndexStartDeltaAbs; ++i) {\n\t\t\t\t\tconst item = items[itemsLength - itemIndexStartDeltaAbs + i];\n\t\t\t\t\tthis.reset(item);\n\t\t\t\t\twork.push(item);\n\t\t\t\t}\n\t\t\t\tfor (let i = itemsLength - itemIndexStartDeltaAbs - 1; 0 <= i; --i) {\n\t\t\t\t\titems[i + itemIndexStartDeltaAbs] = items[i];\n\t\t\t\t}\n\t\t\t\tfor (let i = 0; i < itemIndexStartDeltaAbs; ++i) {\n\t\t\t\t\titems[i] = work[i];\n\t\t\t\t}\n\t\t\t}\n\t\t\twork.length = 0;\n\t\t}\n\n\t\tlet itemOffsetX = 0;\n\t\tlet itemOffsetY = 0;\n\t\tif (content === container) {\n\t\t\titemOffsetX = contentPaddingLeft;\n\t\t\titemOffsetY = contentPaddingTop;\n\t\t}\n\t\tmapped.each(\n\t\t\t(datum: VALUE, index: number): void | boolean => {\n\t\t\t\tconst item = items[index - newItemIndexStart];\n\t\t\t\tconst ix = index % multiplicity;\n\t\t\t\tconst iy = Math.floor(index / multiplicity);\n\t\t\t\titem.position.set(itemOffsetX + ix * itemWidth, itemOffsetY + iy * itemHeight);\n\t\t\t\tthis.set(item, datum, index, forcibly);\n\t\t\t},\n\t\t\tnewItemIndexStart,\n\t\t\tnewItemIndexStart + itemsLength\n\t\t);\n\n\t\tfor (let i = 0; newItemIndexStart + i < 0 && i < itemsLength; ++i) {\n\t\t\tconst item = items[i];\n\t\t\tconst index = newItemIndexStart + i;\n\t\t\tconst ix = index % multiplicity;\n\t\t\tconst iy = Math.floor(index / multiplicity);\n\t\t\titem.position.set(itemOffsetX + ix * itemWidth, itemOffsetY + iy * itemHeight);\n\t\t\tthis.unset(item);\n\t\t}\n\n\t\tfor (let i = itemsLength - 1; dataSize <= newItemIndexStart + i && 0 <= i; --i) {\n\t\t\tconst item = items[i];\n\t\t\tconst index = newItemIndexStart + i;\n\t\t\tconst ix = index % multiplicity;\n\t\t\tconst iy = Math.floor(index / multiplicity);\n\t\t\titem.position.set(itemOffsetX + ix * itemWidth, itemOffsetY + iy * itemHeight);\n\t\t\tthis.unset(item);\n\t\t}\n\n\t\tthis.lock();\n\t\tcontent.position.y = newContentY;\n\t\tcontent.height = newContentHeight;\n\t\tif (content !== container) {\n\t\t\tcontainer.height = newHeight;\n\t\t}\n\t\tthis.unlock(false);\n\t}\n\n\tprotected abstract toMapped(data: DATA): DATA_MAPPED;\n\n\tprotected set(item: ITEM, value: VALUE, index: number, forcibly?: boolean): void {\n\t\titem.set(value, index, forcibly);\n\t}\n\n\tprotected unset(item: ITEM): void {\n\t\titem.unset();\n\t}\n\n\tprotected reset(item: ITEM): ITEM {\n\t\titem.blur(true);\n\t\tconst cells = item.children;\n\t\tfor (let i = 0, imax = cells.length; i < imax; ++i) {\n\t\t\tconst cell = cells[i];\n\t\t\tif (cell instanceof DBase) {\n\t\t\t\tconst state = cell.state;\n\t\t\t\tstate.lock();\n\t\t\t\tstate.isPressed = false;\n\t\t\t\tstate.isHovered = false;\n\t\t\t\tstate.unlock();\n\t\t\t}\n\t\t}\n\t\titem.state.isHovered = false;\n\t\treturn item;\n\t}\n\n\tmoveFocus(\n\t\te: KeyboardEvent,\n\t\ttarget: DBase,\n\t\tmoveVertically: boolean,\n\t\tmoveHorizontally: boolean\n\t): boolean {\n\t\tif (!(moveVertically || moveHorizontally)) {\n\t\t\treturn false;\n\t\t}\n\t\tconst isUp = moveVertically && UtilKeyboardEvent.isArrowUpKey(e);\n\t\tconst isDown = moveVertically && UtilKeyboardEvent.isArrowDownKey(e);\n\t\tconst isLeft = moveHorizontally && UtilKeyboardEvent.isArrowLeftKey(e);\n\t\tconst isRight = moveHorizontally && UtilKeyboardEvent.isArrowRightKey(e);\n\t\tif (!(isUp || isDown || isLeft || isRight)) {\n\t\t\treturn false;\n\t\t}\n\t\tif (!target.state.isActionable) {\n\t\t\treturn false;\n\t\t}\n\t\tconst layer = DApplications.getLayer(target);\n\t\tif (layer == null) {\n\t\t\treturn false;\n\t\t}\n\t\tconst focusController = layer.getFocusController();\n\t\tconst focused = focusController.get();\n\t\tif (focused == null) {\n\t\t\treturn false;\n\t\t}\n\t\tconst container = this._container;\n\t\tif (focused.parent !== container) {\n\t\t\treturn false;\n\t\t}\n\t\tconst item = focused as ITEM;\n\t\tconst index = item.index;\n\t\tif (index == null) {\n\t\t\treturn false;\n\t\t}\n\t\tconst multiplicity = this._multiplicity;\n\t\tconst data = this._data;\n\t\tconst mapped = this.toMapped(data);\n\t\tconst dataSize = mapped.size();\n\t\tlet newIndex = index;\n\t\tif (isLeft || isRight) {\n\t\t\tif (isLeft) {\n\t\t\t\tif (0 <= newIndex - 1) {\n\t\t\t\t\tnewIndex -= 1;\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tif (newIndex + 1 < dataSize) {\n\t\t\t\t\tnewIndex += 1;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\tif (isUp || isDown) {\n\t\t\tif (isUp) {\n\t\t\t\tif (0 <= newIndex - multiplicity) {\n\t\t\t\t\tnewIndex -= multiplicity;\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tif (newIndex + multiplicity < dataSize) {\n\t\t\t\t\tnewIndex += multiplicity;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\tif (newIndex === index) {\n\t\t\treturn false;\n\t\t}\n\t\tconst items = container.children as ITEM[];\n\t\tconst itemIndex = items.indexOf(item);\n\t\tif (itemIndex < 0) {\n\t\t\treturn false;\n\t\t}\n\t\tconst newItemIndex = itemIndex + (newIndex - index);\n\t\tif (newItemIndex < 0 || items.length <= newItemIndex) {\n\t\t\treturn false;\n\t\t}\n\t\tconst newItem = items[newItemIndex];\n\t\tfocusController.focus(newItem);\n\t\treturn true;\n\t}\n}\n"]}
1
+ {"version":3,"file":"d-item-updater.js","sourceRoot":"","sources":["../../../src/main/typescript/wcardinal/ui/d-item-updater.ts"],"names":[],"mappings":"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","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { DApplications } from \"./d-applications\";\nimport { DBase } from \"./d-base\";\nimport { isNumber } from \"./util/is-number\";\nimport { UtilKeyboardEvent } from \"./util/util-keyboard-event\";\n\nexport interface DItemUpdaterItem<VALUE> extends DBase {\n\treadonly value?: VALUE;\n\treadonly index?: number;\n\tset(value: VALUE, index: number, forcibly?: boolean): void;\n\tunset(): void;\n}\n\nexport type DItemUpdaterNewItem<DATA, ITEM> = (data: DATA) => ITEM;\n\nexport type DItemUpdaterInitItem<DATA, ITEM> = (item: ITEM, index: number, data: DATA) => ITEM;\n\n/**\n * Item updater options.\n */\nexport interface DItemUpdaterOptions<VALUE, DATA, ITEM> {\n\t/**\n\t * Called to create items.\n\t */\n\tnewItem?: DItemUpdaterNewItem<DATA, ITEM>;\n\n\t/**\n\t * Called to initialize items.\n\t */\n\tinitItem?: DItemUpdaterInitItem<DATA, ITEM>;\n\n\t/**\n\t * True to make stripe-colored items. Defaults to true.\n\t */\n\tstripe?: boolean;\n}\n\nexport interface DItemUpdaterDataSelection<VALUE> {\n\tcontains(value: VALUE): boolean;\n}\n\nexport interface DItemUpdaterDataMapped<VALUE> {\n\tsize(): number;\n\teach(iteratee: (value: VALUE, index: number) => void | boolean, from: number, to: number): void;\n}\n\nexport interface DItemUpdaterData<VALUE> {\n\treadonly selection: DItemUpdaterDataSelection<VALUE>;\n}\n\n/**\n * The primary purpose of this class is to minimize the number of rendered items (e.g., {@link DListItem})\n * as low as possible and to update their positions and states. For this sake, the updater calculates the\n * required number of items whenever their container size changes and creates items if needed.\n */\nexport abstract class DItemUpdater<\n\tVALUE = unknown,\n\tDATA extends DItemUpdaterData<VALUE> = DItemUpdaterData<VALUE>,\n\tDATA_MAPPED extends DItemUpdaterDataMapped<VALUE> = DItemUpdaterDataMapped<VALUE>,\n\tITEM extends DItemUpdaterItem<VALUE> = DItemUpdaterItem<VALUE>,\n\tOPTIONS extends DItemUpdaterOptions<VALUE, DATA, ITEM> = DItemUpdaterOptions<VALUE, DATA, ITEM>\n> {\n\tprotected _updateItemsCount: number;\n\tprotected _isUpdateItemsCalled: boolean;\n\tprotected _isUpdateItemsCalledForcibly: boolean;\n\tprotected _itemHeight: number;\n\tprotected _itemWidth: number;\n\tprotected _multiplicity: number;\n\tprotected _itemIndexStart: number;\n\tprotected _itemIndexEnd: number;\n\tprotected _workItems: ITEM[];\n\tprotected _data: DATA;\n\tprotected _content: DBase;\n\tprotected _container: DBase;\n\tprotected _newItem: DItemUpdaterNewItem<DATA, ITEM>;\n\tprotected _initItem: DItemUpdaterInitItem<DATA, ITEM>;\n\n\tconstructor(data: DATA, content: DBase, container: DBase, options?: OPTIONS) {\n\t\tthis._updateItemsCount = 0;\n\t\tthis._isUpdateItemsCalled = false;\n\t\tthis._isUpdateItemsCalledForcibly = false;\n\t\tthis._itemHeight = -1;\n\t\tthis._itemWidth = -1;\n\t\tthis._multiplicity = 1;\n\t\tthis._itemIndexStart = 0;\n\t\tthis._itemIndexEnd = 0;\n\t\tthis._workItems = [];\n\t\tthis._data = data;\n\t\tthis._content = content;\n\t\tthis._container = container;\n\t\tthis._newItem = this.toNewItem(options);\n\t\tthis._initItem = this.toInitItem(options);\n\t}\n\n\tprotected toNewItem(\n\t\toptions?: DItemUpdaterOptions<VALUE, DATA, ITEM>\n\t): DItemUpdaterNewItem<DATA, ITEM> {\n\t\treturn options?.newItem || this.newItem;\n\t}\n\n\tprotected abstract newItem(this: undefined, data: DATA): ITEM;\n\n\tprotected toInitItem(\n\t\toptions?: DItemUpdaterOptions<VALUE, DATA, ITEM>\n\t): DItemUpdaterInitItem<DATA, ITEM> {\n\t\tif (options) {\n\t\t\tconst initItem = options.initItem;\n\t\t\tif (initItem) {\n\t\t\t\treturn initItem;\n\t\t\t}\n\t\t\tif (options.stripe !== false) {\n\t\t\t\treturn this.initItem;\n\t\t\t}\n\t\t\treturn this.initItemNoStriping;\n\t\t}\n\t\treturn this.initItem;\n\t}\n\n\tprotected initItem(this: undefined, item: ITEM, index: number, data: DATA): ITEM {\n\t\titem.state.isAlternated = index % 2 === 1;\n\t\treturn item;\n\t}\n\n\tprotected initItemNoStriping(this: undefined, item: ITEM, index: number, data: DATA): ITEM {\n\t\treturn item;\n\t}\n\n\tget multiplicity(): number {\n\t\treturn this._multiplicity;\n\t}\n\n\tlock(): void {\n\t\tthis._updateItemsCount += 1;\n\t\tif (this._updateItemsCount === 1) {\n\t\t\tthis._isUpdateItemsCalled = false;\n\t\t\tthis._isUpdateItemsCalledForcibly = false;\n\t\t}\n\t}\n\n\tunlock(callIfNeeded: boolean): void {\n\t\tthis._updateItemsCount -= 1;\n\t\tif (this._updateItemsCount === 0) {\n\t\t\tif (callIfNeeded && this._isUpdateItemsCalled) {\n\t\t\t\tthis.update(this._isUpdateItemsCalledForcibly);\n\t\t\t}\n\t\t\tthis._isUpdateItemsCalled = false;\n\t\t\tthis._isUpdateItemsCalledForcibly = false;\n\t\t}\n\t}\n\n\tupdate(forcibly?: boolean): void {\n\t\tif (0 < this._updateItemsCount) {\n\t\t\tthis._isUpdateItemsCalled = true;\n\t\t\tif (forcibly) {\n\t\t\t\tthis._isUpdateItemsCalledForcibly = true;\n\t\t\t}\n\t\t\treturn;\n\t\t}\n\t\tconst content = this._content;\n\t\tconst contentParent = content.parent;\n\t\tif (contentParent == null) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst container = this._container;\n\t\tconst items = container.children as ITEM[];\n\t\tconst height = contentParent.height;\n\n\t\tconst data = this._data;\n\t\tconst mapped = this.toMapped(data);\n\t\tconst dataSize = mapped.size();\n\n\t\tconst oldItemIndexStart = this._itemIndexStart;\n\t\tlet oldItemIndexEnd = this._itemIndexEnd;\n\t\tlet oldItemCount = oldItemIndexEnd - oldItemIndexStart;\n\n\t\tconst newItem = this._newItem;\n\t\tconst initItem = this._initItem;\n\t\tlet itemHeight = this._itemHeight;\n\t\tlet itemWidth = this._itemWidth;\n\t\tif (this._itemHeight < 0) {\n\t\t\tlet item: ITEM;\n\t\t\tif (0 < items.length) {\n\t\t\t\titem = items[0];\n\t\t\t} else {\n\t\t\t\titem = initItem(newItem(data), oldItemIndexStart, data);\n\t\t\t\tcontainer.addChild(item);\n\t\t\t\toldItemIndexEnd += 1;\n\t\t\t\toldItemCount += 1;\n\t\t\t}\n\t\t\titemHeight = Math.max(1, item.height);\n\t\t\tif (isNumber(item.getWidth())) {\n\t\t\t\titemWidth = Math.max(1, item.width);\n\t\t\t}\n\t\t\tthis._itemHeight = itemHeight;\n\t\t\tthis._itemWidth = itemWidth;\n\t\t}\n\t\tconst contentPadding = content.padding;\n\t\tconst contentPaddingTop = contentPadding.getTop();\n\t\tconst contentPaddingBottom = contentPadding.getBottom();\n\t\tconst contentPaddingLeft = contentPadding.getLeft();\n\t\tconst contentPaddingRight = contentPadding.getRight();\n\t\tconst contentWidthAvailable = Math.max(\n\t\t\t0,\n\t\t\tcontent.width - contentPaddingLeft - contentPaddingRight\n\t\t);\n\t\tconst multiplicity =\n\t\t\t0 < itemWidth ? Math.max(1, Math.floor(contentWidthAvailable / itemWidth)) : 1;\n\t\tthis._multiplicity = multiplicity;\n\n\t\tconst y = content !== container ? container.transform.position.y : contentPaddingTop;\n\t\tconst newHeight = Math.ceil(dataSize / multiplicity) * itemHeight;\n\t\tconst newContentHeight = Math.max(\n\t\t\theight,\n\t\t\tcontentPaddingTop + newHeight + contentPaddingBottom\n\t\t);\n\t\tconst newContentY = Math.max(height - newContentHeight, content.position.y);\n\n\t\tconst newItemIndexLowerBound = Math.floor(\n\t\t\t((0 - (newContentY + y)) * multiplicity) / itemHeight\n\t\t);\n\t\tconst newItemIndexUpperBound = Math.floor(\n\t\t\t((height - (newContentY + y)) * multiplicity) / itemHeight\n\t\t);\n\t\tlet newItemIndexStart = newItemIndexLowerBound - multiplicity;\n\t\tif (newItemIndexStart % 2 !== 0) {\n\t\t\tnewItemIndexStart -= 1;\n\t\t}\n\t\tlet newItemIndexEnd = newItemIndexUpperBound + multiplicity + multiplicity;\n\t\tif (newItemIndexEnd % 2 !== 0) {\n\t\t\tnewItemIndexEnd += 1;\n\t\t}\n\t\tlet newItemCount = newItemIndexEnd - newItemIndexStart;\n\t\tif (newItemCount < oldItemCount) {\n\t\t\tnewItemCount = oldItemCount;\n\t\t\tnewItemIndexEnd = newItemIndexStart + newItemCount;\n\t\t}\n\n\t\tif (oldItemCount < newItemCount) {\n\t\t\tfor (let i = oldItemCount; i < newItemCount; ++i) {\n\t\t\t\tconst oldItemIndex = oldItemIndexStart + i;\n\t\t\t\tconst item = initItem(newItem(data), oldItemIndex, data);\n\t\t\t\tcontainer.addChild(item);\n\t\t\t}\n\t\t\toldItemCount = newItemCount;\n\t\t\toldItemIndexEnd = oldItemIndexStart + oldItemCount;\n\t\t} else if (newItemCount < oldItemCount) {\n\t\t\tfor (let i = oldItemCount - 1; newItemCount <= i; --i) {\n\t\t\t\tcontainer.removeChild(items[i]);\n\t\t\t}\n\t\t\toldItemCount = newItemCount;\n\t\t\toldItemIndexEnd = oldItemIndexStart + oldItemCount;\n\t\t}\n\n\t\tthis._itemIndexStart = newItemIndexStart;\n\t\tthis._itemIndexEnd = newItemIndexEnd;\n\n\t\tconst itemIndexStartDelta = newItemIndexStart - oldItemIndexStart;\n\t\tconst itemIndexStartDeltaAbs = Math.abs(itemIndexStartDelta);\n\t\tconst itemsLength = items.length;\n\t\tif (0 < itemIndexStartDeltaAbs && itemIndexStartDeltaAbs < itemsLength) {\n\t\t\tconst work = this._workItems;\n\t\t\tif (0 < itemIndexStartDelta) {\n\t\t\t\tfor (let i = 0; i < itemIndexStartDeltaAbs; ++i) {\n\t\t\t\t\tconst item = items[i];\n\t\t\t\t\tthis.reset(item);\n\t\t\t\t\twork.push(item);\n\t\t\t\t}\n\t\t\t\tfor (let i = itemIndexStartDeltaAbs; i < itemsLength; ++i) {\n\t\t\t\t\titems[i - itemIndexStartDeltaAbs] = items[i];\n\t\t\t\t}\n\t\t\t\tfor (let i = 0; i < itemIndexStartDeltaAbs; ++i) {\n\t\t\t\t\titems[itemsLength - itemIndexStartDeltaAbs + i] = work[i];\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tfor (let i = 0; i < itemIndexStartDeltaAbs; ++i) {\n\t\t\t\t\tconst item = items[itemsLength - itemIndexStartDeltaAbs + i];\n\t\t\t\t\tthis.reset(item);\n\t\t\t\t\twork.push(item);\n\t\t\t\t}\n\t\t\t\tfor (let i = itemsLength - itemIndexStartDeltaAbs - 1; 0 <= i; --i) {\n\t\t\t\t\titems[i + itemIndexStartDeltaAbs] = items[i];\n\t\t\t\t}\n\t\t\t\tfor (let i = 0; i < itemIndexStartDeltaAbs; ++i) {\n\t\t\t\t\titems[i] = work[i];\n\t\t\t\t}\n\t\t\t}\n\t\t\twork.length = 0;\n\t\t}\n\n\t\tlet itemOffsetX = 0;\n\t\tlet itemOffsetY = 0;\n\t\tif (content === container) {\n\t\t\titemOffsetX = contentPaddingLeft;\n\t\t\titemOffsetY = contentPaddingTop;\n\t\t}\n\t\tmapped.each(\n\t\t\t(datum: VALUE, index: number): void | boolean => {\n\t\t\t\tconst item = items[index - newItemIndexStart];\n\t\t\t\tconst ix = index % multiplicity;\n\t\t\t\tconst iy = Math.floor(index / multiplicity);\n\t\t\t\titem.position.set(itemOffsetX + ix * itemWidth, itemOffsetY + iy * itemHeight);\n\t\t\t\tthis.set(item, datum, index, forcibly);\n\t\t\t},\n\t\t\tnewItemIndexStart,\n\t\t\tnewItemIndexStart + itemsLength\n\t\t);\n\n\t\tfor (let i = 0; newItemIndexStart + i < 0 && i < itemsLength; ++i) {\n\t\t\tconst item = items[i];\n\t\t\tconst index = newItemIndexStart + i;\n\t\t\tconst ix = index % multiplicity;\n\t\t\tconst iy = Math.floor(index / multiplicity);\n\t\t\titem.position.set(itemOffsetX + ix * itemWidth, itemOffsetY + iy * itemHeight);\n\t\t\tthis.unset(item);\n\t\t}\n\n\t\tfor (let i = itemsLength - 1; dataSize <= newItemIndexStart + i && 0 <= i; --i) {\n\t\t\tconst item = items[i];\n\t\t\tconst index = newItemIndexStart + i;\n\t\t\tconst ix = index % multiplicity;\n\t\t\tconst iy = Math.floor(index / multiplicity);\n\t\t\titem.position.set(itemOffsetX + ix * itemWidth, itemOffsetY + iy * itemHeight);\n\t\t\tthis.unset(item);\n\t\t}\n\n\t\tthis.lock();\n\t\tcontent.position.y = newContentY;\n\t\tcontent.height = newContentHeight;\n\t\tif (content !== container) {\n\t\t\tcontainer.height = newHeight;\n\t\t}\n\t\tthis.unlock(false);\n\t}\n\n\tprotected abstract toMapped(data: DATA): DATA_MAPPED;\n\n\tprotected set(item: ITEM, value: VALUE, index: number, forcibly?: boolean): void {\n\t\titem.set(value, index, forcibly);\n\t}\n\n\tprotected unset(item: ITEM): void {\n\t\titem.unset();\n\t}\n\n\tprotected reset(item: ITEM): ITEM {\n\t\titem.blur(true);\n\t\tconst cells = item.children;\n\t\tfor (let i = 0, imax = cells.length; i < imax; ++i) {\n\t\t\tconst cell = cells[i];\n\t\t\tif (cell instanceof DBase) {\n\t\t\t\tconst state = cell.state;\n\t\t\t\tstate.lock();\n\t\t\t\tstate.isPressed = false;\n\t\t\t\tstate.isHovered = false;\n\t\t\t\tstate.unlock();\n\t\t\t}\n\t\t}\n\t\titem.state.isHovered = false;\n\t\treturn item;\n\t}\n\n\tmoveFocus(\n\t\te: KeyboardEvent,\n\t\ttarget: DBase,\n\t\tmoveVertically: boolean,\n\t\tmoveHorizontally: boolean\n\t): boolean {\n\t\tif (!(moveVertically || moveHorizontally)) {\n\t\t\treturn false;\n\t\t}\n\t\tconst isUp = moveVertically && UtilKeyboardEvent.isArrowUpKey(e);\n\t\tconst isDown = moveVertically && UtilKeyboardEvent.isArrowDownKey(e);\n\t\tconst isLeft = moveHorizontally && UtilKeyboardEvent.isArrowLeftKey(e);\n\t\tconst isRight = moveHorizontally && UtilKeyboardEvent.isArrowRightKey(e);\n\t\tif (!(isUp || isDown || isLeft || isRight)) {\n\t\t\treturn false;\n\t\t}\n\t\tif (!target.state.isActionable) {\n\t\t\treturn false;\n\t\t}\n\t\tconst layer = DApplications.getLayer(target);\n\t\tif (layer == null) {\n\t\t\treturn false;\n\t\t}\n\t\tconst focusController = layer.getFocusController();\n\t\tconst focused = focusController.get();\n\t\tif (focused == null) {\n\t\t\treturn false;\n\t\t}\n\t\tconst container = this._container;\n\t\tif (focused.parent !== container) {\n\t\t\treturn false;\n\t\t}\n\t\tconst item = focused as ITEM;\n\t\tconst index = item.index;\n\t\tif (index == null) {\n\t\t\treturn false;\n\t\t}\n\t\tconst multiplicity = this._multiplicity;\n\t\tconst data = this._data;\n\t\tconst mapped = this.toMapped(data);\n\t\tconst dataSize = mapped.size();\n\t\tlet newIndex = index;\n\t\tif (isLeft || isRight) {\n\t\t\tif (isLeft) {\n\t\t\t\tif (0 <= newIndex - 1) {\n\t\t\t\t\tnewIndex -= 1;\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tif (newIndex + 1 < dataSize) {\n\t\t\t\t\tnewIndex += 1;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\tif (isUp || isDown) {\n\t\t\tif (isUp) {\n\t\t\t\tif (0 <= newIndex - multiplicity) {\n\t\t\t\t\tnewIndex -= multiplicity;\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tif (newIndex + multiplicity < dataSize) {\n\t\t\t\t\tnewIndex += multiplicity;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\tif (newIndex === index) {\n\t\t\treturn false;\n\t\t}\n\t\tconst items = container.children as ITEM[];\n\t\tconst itemIndex = items.indexOf(item);\n\t\tif (itemIndex < 0) {\n\t\t\treturn false;\n\t\t}\n\t\tconst newItemIndex = itemIndex + (newIndex - index);\n\t\tif (newItemIndex < 0 || items.length <= newItemIndex) {\n\t\t\treturn false;\n\t\t}\n\t\tconst newItem = items[newItemIndex];\n\t\tfocusController.focus(newItem);\n\t\treturn true;\n\t}\n}\n"]}
@@ -159,7 +159,7 @@ var DTableBody = /** @class */ (function (_super) {
159
159
  var newRowIndexMappedEnd = Math.floor(newRowIndexMappedUpperBound);
160
160
  newRowIndexMappedEnd += (newRowIndexMappedEnd - newRowIndexMappedStart) % 2 === 1 ? 3 : 2;
161
161
  var newRowCount = newRowIndexMappedEnd - newRowIndexMappedStart;
162
- if (newRowCount < oldRowCount && oldRowCount - 2 <= newRowCount) {
162
+ if (newRowCount < oldRowCount) {
163
163
  newRowCount = oldRowCount;
164
164
  newRowIndexMappedEnd = newRowIndexMappedStart + newRowCount;
165
165
  }
@@ -1 +1 @@
1
- {"version":3,"file":"d-table-body.js","sourceRoot":"","sources":["../../../src/main/typescript/wcardinal/ui/d-table-body.ts"],"names":[],"mappings":"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","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { interaction, Point, Rectangle } from \"pixi.js\";\nimport InteractionEvent = interaction.InteractionEvent;\nimport { DBase, DBaseEvents, DBaseOptions, DThemeBase } from \"./d-base\";\nimport { DBaseState } from \"./d-base-state\";\nimport { DTableBodyRow, DTableBodyRowOnChange, DTableBodyRowOptions } from \"./d-table-body-row\";\nimport { DTableColumn } from \"./d-table-column\";\nimport { DTableData, DTableDataOptions, DTableDataSupplimental } from \"./d-table-data\";\nimport { DTableDataList, DTableDataListOptions } from \"./d-table-data-list\";\nimport { DTableDataSelection, DTableDataSelectionType } from \"./d-table-data-selection\";\nimport { DTableBodyCell } from \"./d-table-body-cell\";\nimport { DTableState } from \"./d-table-state\";\nimport { DTableBodyCellOptions } from \"./d-table-body-cell-options\";\nimport { DOnOptions } from \"./d-on-options\";\nimport { DApplications } from \"./d-applications\";\nimport { isNumber } from \"./util/is-number\";\nimport { DTableColumnUpdate } from \"./d-table-column-update\";\n\n/**\n * {@link DTableBody} events.\n */\nexport interface DTableBodyEvents<EMITTER> extends DBaseEvents<EMITTER> {\n\t/**\n\t * Triggered when rows are updated.\n\t * The first and second parameters are an mapped index range of visible data.\n\t * Please note that these parameters are real numbers.\n\t * For instance, An index range of [0.5, 2.5] means:\n\t *\n\t * * The row at index 0 is partially visible.\n\t * * The row at index 1 is fully visible.\n\t * * The row at index 2 is partially visible.\n\t *\n\t * @param from a lowest mapped index of visible data\n\t * @param to a highest mapped index of vislble data\n\t * @param emitter an emitter\n\t */\n\tupdate(from: number, to: number, emitter: EMITTER): void;\n}\n\n/**\n * {@link DTableBody} \"on\" options.\n */\nexport interface DTableBodyOnOptions<EMITTER>\n\textends Partial<DTableBodyEvents<EMITTER>>,\n\t\tDOnOptions {}\n\nexport interface DTableBodyOptions<\n\tROW,\n\tDATA extends DTableData<ROW> = DTableDataList<ROW>,\n\tTHEME extends DThemeTableBody = DThemeTableBody,\n\tEMITTER = any\n> extends DBaseOptions<THEME, EMITTER> {\n\tcolumns?: Array<DTableColumn<ROW, unknown>>;\n\trow?: DTableBodyRowOptions<ROW>;\n\tdata?: DTableDataListOptions<ROW> | DATA;\n\toffset?: number;\n\tfrozen?: number;\n\ton?: DTableBodyOnOptions<EMITTER>;\n}\n\nexport interface DThemeTableBody extends DThemeBase {\n\tgetRowHeight(): number;\n}\n\nconst toRowOptions = <ROW, DATA extends DTableData<ROW>>(\n\ttheme: DThemeTableBody,\n\toptions: DTableBodyOptions<ROW, DATA>,\n\tselectionType: DTableDataSelectionType\n): DTableBodyRowOptions<ROW> => {\n\tconst columns = options.columns || [];\n\tlet result = options.row;\n\tif (result != null) {\n\t\tif (result.height == null) {\n\t\t\tresult.height = theme.getRowHeight();\n\t\t}\n\t\tif (result.columns === undefined) {\n\t\t\tresult.columns = columns;\n\t\t}\n\t\tif (result.frozen == null) {\n\t\t\tresult.frozen = options.frozen;\n\t\t}\n\t\tif (result.selection === undefined) {\n\t\t\tresult.selection = {\n\t\t\t\ttype: selectionType\n\t\t\t};\n\t\t} else if (result.selection.type === undefined) {\n\t\t\tresult.selection.type = selectionType;\n\t\t}\n\t} else {\n\t\tresult = {\n\t\t\tcolumns,\n\t\t\theight: theme.getRowHeight(),\n\t\t\tfrozen: options.frozen,\n\t\t\tselection: {\n\t\t\t\ttype: selectionType\n\t\t\t}\n\t\t};\n\t}\n\treturn result as DTableBodyRowOptions<ROW>;\n};\n\nexport class DTableBody<\n\tROW,\n\tDATA extends DTableData<ROW> = DTableDataList<ROW>,\n\tTHEME extends DThemeTableBody = DThemeTableBody,\n\tOPTIONS extends DTableBodyOptions<ROW, DATA, THEME> = DTableBodyOptions<ROW, DATA, THEME>\n> extends DBase<THEME, OPTIONS> {\n\tprotected static WORK_ON_CLICK = new Point();\n\n\tprotected _columns: Array<DTableColumn<ROW, unknown>>;\n\tprotected _rowHeight: number;\n\tprotected _rowIndexMappedStart: number;\n\tprotected _rowIndexMappedEnd: number;\n\tprotected _rowOptions: DTableBodyRowOptions<ROW>;\n\tprotected _updateRowsCount: number;\n\tprotected _isUpdateRowsCalled: boolean;\n\tprotected _isUpdateRowsCalledForcibly: boolean;\n\tprotected _workRows: Array<DTableBodyRow<ROW>>;\n\tprotected _onRowChangeBound: DTableBodyRowOnChange<ROW, unknown>;\n\tprotected _columnIndexToCellOptions: Map<number, DTableBodyCellOptions<ROW>>;\n\tprotected _data: DATA;\n\n\tconstructor(options: OPTIONS) {\n\t\tsuper(options);\n\n\t\tthis.transform.position.y = options.offset ?? 0;\n\t\tconst data = this.toData(options.data);\n\t\tthis._data = data;\n\t\tdata.bind(this);\n\t\tconst theme = this.theme;\n\t\tconst rowOptions = toRowOptions(theme, options, data.selection.type);\n\t\tthis._rowOptions = rowOptions;\n\t\tthis._rowHeight = rowOptions.height != null ? rowOptions.height : theme.getRowHeight();\n\t\tthis._columns = rowOptions.columns || [];\n\t\tthis._rowIndexMappedStart = 0;\n\t\tthis._rowIndexMappedEnd = 0;\n\t\tthis._updateRowsCount = 0;\n\t\tthis._isUpdateRowsCalled = false;\n\t\tthis._isUpdateRowsCalledForcibly = false;\n\t\tthis._workRows = [];\n\t\tthis._onRowChangeBound = (newValue, oldValue, row, rowIndex, columnIndex, column): void => {\n\t\t\tthis.onRowChange(newValue, oldValue, row, rowIndex, columnIndex, column);\n\t\t};\n\t\tthis._columnIndexToCellOptions = new Map<number, DTableBodyCellOptions<ROW>>();\n\t\tthis._data.emit(\"init\", this._data);\n\t}\n\n\tprotected onRowChange(\n\t\tnewValue: unknown,\n\t\toldValue: unknown,\n\t\trow: ROW,\n\t\trowIndex: number,\n\t\tcolumnIndex: number,\n\t\tcolumn: DTableColumn<ROW, unknown>\n\t): void {\n\t\tconst data = this._data;\n\t\tdata.emit(\"change\", newValue, oldValue, row, rowIndex, columnIndex, data);\n\t\tif (column.update === DTableColumnUpdate.ALL) {\n\t\t\tthis.update(true);\n\t\t}\n\t}\n\n\tprotected toData(options?: DATA | DTableDataListOptions<ROW>): DATA {\n\t\tif (this.isData(options)) {\n\t\t\treturn options;\n\t\t}\n\t\treturn new DTableDataList<ROW>(options) as any;\n\t}\n\n\tprotected isData(\n\t\ttarget?: ROW[] | DTableDataOptions<ROW> | DTableData<ROW>\n\t): target is DTableData<ROW> {\n\t\treturn target != null && \"mapped\" in target;\n\t}\n\n\tonResize(newWidth: number, newHeight: number, oldWidth: number, oldHeight: number): void {\n\t\tsuper.onResize(newWidth, newHeight, oldWidth, oldHeight);\n\t\tthis.update();\n\t}\n\n\tget selection(): DTableDataSelection<ROW> {\n\t\treturn this._data.selection;\n\t}\n\n\tlock(): void {\n\t\tthis._updateRowsCount += 1;\n\t\tif (this._updateRowsCount === 1) {\n\t\t\tthis._isUpdateRowsCalled = false;\n\t\t\tthis._isUpdateRowsCalledForcibly = false;\n\t\t}\n\t}\n\n\tunlock(callIfNeeded: boolean): void {\n\t\tthis._updateRowsCount -= 1;\n\t\tif (this._updateRowsCount === 0) {\n\t\t\tif (callIfNeeded && this._isUpdateRowsCalled) {\n\t\t\t\tthis.update(this._isUpdateRowsCalledForcibly);\n\t\t\t}\n\t\t\tthis._isUpdateRowsCalled = false;\n\t\t\tthis._isUpdateRowsCalledForcibly = false;\n\t\t}\n\t}\n\n\t/**\n\t * Updates rows. If the `forcibly` is true, some dirty checkings for\n\t * avoiding unnecessary state changes are skipped.\n\t *\n\t * @param forcibly true to update forcibly\n\t */\n\tupdate(forcibly?: boolean): void {\n\t\tif (0 < this._updateRowsCount) {\n\t\t\tthis._isUpdateRowsCalled = true;\n\t\t\tif (forcibly) {\n\t\t\t\tthis._isUpdateRowsCalledForcibly = true;\n\t\t\t}\n\t\t\treturn;\n\t\t}\n\n\t\tconst content = this.parent;\n\t\tif (content == null) {\n\t\t\treturn;\n\t\t}\n\t\tconst contentParent = content.parent;\n\t\tif (contentParent == null) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst rows = this.children as Array<DTableBodyRow<ROW>>;\n\t\tconst height = contentParent.height;\n\t\tconst rowHeight = this._rowHeight;\n\n\t\tconst data = this._data;\n\t\tconst dataMappedSize = data.mapped.size();\n\n\t\tconst oldRowIndexMappedStart = this._rowIndexMappedStart;\n\t\tlet oldRowIndexMappedEnd = this._rowIndexMappedEnd;\n\t\tlet oldRowCount = oldRowIndexMappedEnd - oldRowIndexMappedStart;\n\n\t\tconst y = this.transform.position.y;\n\t\tconst newHeight = y + dataMappedSize * rowHeight;\n\t\tconst newContentHeight = Math.max(height, newHeight);\n\t\tconst newContentY = Math.max(height - newContentHeight, content.position.y);\n\n\t\tconst newRowIndexMappedLowerBound = -newContentY / rowHeight;\n\t\tconst newRowIndexMappedUpperBound = (height - (newContentY + y)) / rowHeight;\n\t\tlet newRowIndexMappedStart = Math.floor(newRowIndexMappedLowerBound);\n\t\tnewRowIndexMappedStart -= newRowIndexMappedStart % 2 === 0 ? 2 : 1;\n\t\tlet newRowIndexMappedEnd = Math.floor(newRowIndexMappedUpperBound);\n\t\tnewRowIndexMappedEnd += (newRowIndexMappedEnd - newRowIndexMappedStart) % 2 === 1 ? 3 : 2;\n\t\tlet newRowCount = newRowIndexMappedEnd - newRowIndexMappedStart;\n\t\tif (newRowCount < oldRowCount && oldRowCount - 2 <= newRowCount) {\n\t\t\tnewRowCount = oldRowCount;\n\t\t\tnewRowIndexMappedEnd = newRowIndexMappedStart + newRowCount;\n\t\t}\n\n\t\tif (oldRowCount < newRowCount) {\n\t\t\tfor (let i = oldRowCount; i < newRowCount; ++i) {\n\t\t\t\tconst oldRowIndexMapped = oldRowIndexMappedStart + i;\n\t\t\t\tconst newRow = this.newRow(oldRowIndexMapped % 2 === 0);\n\t\t\t\tthis.addChild(newRow);\n\t\t\t}\n\t\t\toldRowCount = newRowCount;\n\t\t\toldRowIndexMappedEnd = oldRowIndexMappedStart + oldRowCount;\n\t\t} else if (newRowCount < oldRowCount) {\n\t\t\tfor (let i = oldRowCount - 1; newRowCount <= i; --i) {\n\t\t\t\tthis.removeChild(rows[i]);\n\t\t\t}\n\t\t\toldRowCount = newRowCount;\n\t\t\toldRowIndexMappedEnd = oldRowIndexMappedStart + oldRowCount;\n\t\t}\n\n\t\tthis._rowIndexMappedStart = newRowIndexMappedStart;\n\t\tthis._rowIndexMappedEnd = newRowIndexMappedEnd;\n\n\t\tconst rowIndexMappedStartDelta = newRowIndexMappedStart - oldRowIndexMappedStart;\n\t\tconst rowIndexMappedStartDeltaAbs = Math.abs(rowIndexMappedStartDelta);\n\t\tconst rowsLength = rows.length;\n\t\tif (0 < rowIndexMappedStartDeltaAbs && rowIndexMappedStartDeltaAbs < rowsLength) {\n\t\t\tconst work = this._workRows;\n\t\t\tif (0 < rowIndexMappedStartDelta) {\n\t\t\t\tfor (let i = 0; i < rowIndexMappedStartDeltaAbs; ++i) {\n\t\t\t\t\twork.push(this.resetRow(rows[i]));\n\t\t\t\t}\n\t\t\t\tfor (let i = rowIndexMappedStartDeltaAbs; i < rowsLength; ++i) {\n\t\t\t\t\trows[i - rowIndexMappedStartDeltaAbs] = rows[i];\n\t\t\t\t}\n\t\t\t\tfor (let i = 0; i < rowIndexMappedStartDeltaAbs; ++i) {\n\t\t\t\t\trows[rowsLength - rowIndexMappedStartDeltaAbs + i] = work[i];\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tfor (let i = 0; i < rowIndexMappedStartDeltaAbs; ++i) {\n\t\t\t\t\twork.push(this.resetRow(rows[rowsLength - rowIndexMappedStartDeltaAbs + i]));\n\t\t\t\t}\n\t\t\t\tfor (let i = rowsLength - rowIndexMappedStartDeltaAbs - 1; 0 <= i; --i) {\n\t\t\t\t\trows[i + rowIndexMappedStartDeltaAbs] = rows[i];\n\t\t\t\t}\n\t\t\t\tfor (let i = 0; i < rowIndexMappedStartDeltaAbs; ++i) {\n\t\t\t\t\trows[i] = work[i];\n\t\t\t\t}\n\t\t\t}\n\t\t\twork.length = 0;\n\t\t}\n\n\t\tconst selection = data.selection;\n\t\tconst isRowSelectable = selection.type !== DTableDataSelectionType.NONE;\n\t\tdata.mapped.each(\n\t\t\t(\n\t\t\t\tdatum: ROW,\n\t\t\t\tsupplimental: DTableDataSupplimental | null,\n\t\t\t\tindex: number,\n\t\t\t\tunmappedIndex: number\n\t\t\t): void | boolean => {\n\t\t\t\tconst row = rows[index - newRowIndexMappedStart];\n\n\t\t\t\t// Position\n\t\t\t\trow.position.y = index * rowHeight;\n\n\t\t\t\t// State\n\t\t\t\tconst rowState = row.state;\n\t\t\t\trowState.lock();\n\t\t\t\trowState.set(DTableState.SELECTABLE, isRowSelectable);\n\t\t\t\trowState.set(DBaseState.ACTIVE, selection.contains(unmappedIndex));\n\t\t\t\trowState.remove(DBaseState.DISABLED);\n\t\t\t\trowState.unlock();\n\n\t\t\t\t// Data\n\t\t\t\trow.set(datum, supplimental, unmappedIndex, forcibly);\n\t\t\t},\n\t\t\tnewRowIndexMappedStart,\n\t\t\tnewRowIndexMappedStart + rowsLength\n\t\t);\n\n\t\tfor (let i = 0; newRowIndexMappedStart + i < 0 && i < rowsLength; ++i) {\n\t\t\tconst row = rows[i];\n\n\t\t\t// Position\n\t\t\trow.position.y = (newRowIndexMappedStart + i) * rowHeight;\n\n\t\t\t// State\n\t\t\tconst rowState = row.state;\n\t\t\trowState.lock();\n\t\t\trowState.add(DBaseState.DISABLED);\n\t\t\trowState.removeAll(DTableState.SELECTABLE, DBaseState.ACTIVE);\n\t\t\trowState.unlock();\n\n\t\t\t// Data\n\t\t\trow.unset();\n\t\t}\n\n\t\tfor (let i = rowsLength - 1; dataMappedSize <= newRowIndexMappedStart + i && 0 <= i; --i) {\n\t\t\tconst row = rows[i];\n\n\t\t\t// Position\n\t\t\trow.position.y = (newRowIndexMappedStart + i) * rowHeight;\n\n\t\t\t// State\n\t\t\tconst rowState = row.state;\n\t\t\trowState.lock();\n\t\t\trowState.add(DBaseState.DISABLED);\n\t\t\trowState.removeAll(DTableState.SELECTABLE, DBaseState.ACTIVE);\n\t\t\trowState.unlock();\n\n\t\t\t// Data\n\t\t\trow.unset();\n\t\t}\n\n\t\tthis.lock();\n\t\tcontent.position.y = newContentY;\n\t\tcontent.height = newContentHeight;\n\t\tthis.height = newHeight;\n\t\tthis.unlock(false);\n\t\tthis.emit(\"update\", newRowIndexMappedLowerBound, newRowIndexMappedUpperBound, this);\n\t}\n\n\tprotected resetRow(row: DTableBodyRow<ROW>): DTableBodyRow<ROW> {\n\t\trow.blur(true);\n\t\tconst cells = row.children;\n\t\tfor (let i = 0, imax = cells.length; i < imax; ++i) {\n\t\t\tconst cell = cells[i];\n\t\t\tif (cell instanceof DBase) {\n\t\t\t\tcell.state.isPressed = false;\n\t\t\t}\n\t\t}\n\t\treturn row;\n\t}\n\n\tprotected newRow(isEven: boolean): DTableBodyRow<ROW> {\n\t\treturn new DTableBodyRow<ROW>(\n\t\t\tthis._onRowChangeBound,\n\t\t\tisEven,\n\t\t\tthis._columnIndexToCellOptions,\n\t\t\tthis._rowOptions\n\t\t);\n\t}\n\n\tprotected onParentMove(newX: number, newY: number, oldX: number, oldY: number): void {\n\t\tsuper.onParentMove(newX, newY, oldX, oldY);\n\t\tthis.updateFrozenCellPosition(newX);\n\t}\n\n\tprotected updateFrozenCellPosition(x: number): void {\n\t\tconst frozen = this._rowOptions.frozen;\n\t\tif (frozen != null && 0 < frozen) {\n\t\t\tconst rows = this.children as Array<DTableBodyRow<ROW>>;\n\t\t\tfor (let i = 0, imax = rows.length; i < imax; ++i) {\n\t\t\t\trows[i].updateFrozenCellPosition(x);\n\t\t\t}\n\t\t}\n\t}\n\n\tgetClippingRect(target: unknown, result: Rectangle): void {\n\t\tsuper.getClippingRect(target, result);\n\n\t\tconst parent = this.parent;\n\t\tif (parent) {\n\t\t\tconst dy = -parent.transform.position.y;\n\t\t\tresult.y += dy;\n\t\t\tresult.height -= dy;\n\t\t}\n\t}\n\n\t/**\n\t * Scroll to the given row or row index.\n\t *\n\t * @param target a row or an row index to which the body scrolls to.\n\t * @returns true if succeeded\n\t */\n\tscrollTo(target: ROW | number): boolean {\n\t\tconst parent = this.parent;\n\t\tif (parent == null) {\n\t\t\treturn false;\n\t\t}\n\t\tconst parentParent = parent.parent;\n\t\tif (parentParent == null) {\n\t\t\treturn false;\n\t\t}\n\t\tlet rowIndexMapped = -1;\n\t\tif (isNumber(target)) {\n\t\t\tif (0 <= target && target < this.data.mapped.size()) {\n\t\t\t\trowIndexMapped = target;\n\t\t\t}\n\t\t} else {\n\t\t\tthis.data.mapped.each((row: ROW, _: unknown, index: number): boolean => {\n\t\t\t\tif (row === target) {\n\t\t\t\t\trowIndexMapped = index;\n\t\t\t\t\treturn false;\n\t\t\t\t}\n\t\t\t\treturn true;\n\t\t\t});\n\t\t}\n\t\tif (rowIndexMapped < 0) {\n\t\t\treturn false;\n\t\t}\n\t\tparent.position.y = Math.max(\n\t\t\tMath.min(0, parentParent.height - parent.height),\n\t\t\t-rowIndexMapped * this._rowHeight\n\t\t);\n\t\tDApplications.update(this);\n\t\treturn true;\n\t}\n\n\t/**\n\t * Returns a mapped row index at the given local Y position or -1.\n\t *\n\t * @param localY a local Y position\n\t * @returns a mapped row index at the given local Y position or -1.\n\t */\n\ttoRowIndexMapped(localY: number): number {\n\t\tif (0 <= this.parent.position.y + localY) {\n\t\t\tconst result = Math.floor(localY / this._rowHeight);\n\t\t\tif (0 <= result && result < this._data.mapped.size()) {\n\t\t\t\treturn result;\n\t\t\t}\n\t\t}\n\t\treturn -1;\n\t}\n\n\t/**\n\t * Returns a row at the given mapped row index or null if not exits.\n\t *\n\t * @param rowIndexMapped a mapped row index\n\t * @returns a row at the given mapped row index or null if not exists.\n\t */\n\ttoRow(rowIndexMapped: number): DTableBodyRow<ROW> | null {\n\t\tconst index = rowIndexMapped - this._rowIndexMappedStart;\n\t\tconst rows = this.children as Array<DTableBodyRow<ROW>>;\n\t\tif (0 <= index && index < rows.length) {\n\t\t\treturn rows[index];\n\t\t}\n\t\treturn null;\n\t}\n\n\t/**\n\t * Returns a cell at the given local X position or null if not exits.\n\t * This method assumes the given local X position is on the given row.\n\t *\n\t * @param row a row\n\t * @param localX a local X position\n\t * @returns a cell at the given local X position or null if not exits\n\t */\n\ttoCell(row: DTableBodyRow<ROW>, localX: number): DTableBodyCell<ROW, unknown> | null {\n\t\tconst cells = row.children as Array<DTableBodyCell<ROW, unknown>>;\n\t\tconst cellsLength = cells.length;\n\t\tconst columns = this._columns;\n\t\tconst columnsLength = columns.length;\n\t\tfor (let i = 0, imax = Math.min(cellsLength, columnsLength); i < imax; ++i) {\n\t\t\tconst cell = cells[cellsLength - i - 1];\n\t\t\tconst x = localX - cell.position.x;\n\t\t\tif (0 <= x && x <= cell.width) {\n\t\t\t\treturn cell;\n\t\t\t}\n\t\t}\n\t\treturn null;\n\t}\n\n\tonRowClick(e: InteractionEvent): void {\n\t\tif (this.state.isActionable) {\n\t\t\tconst local = DTableBody.WORK_ON_CLICK;\n\t\t\tlocal.copyFrom(e.data.global);\n\t\t\tthis.toLocal(local, undefined, local, false);\n\t\t\tconst rowIndexMapped = this.toRowIndexMapped(local.y);\n\t\t\tif (0 <= rowIndexMapped) {\n\t\t\t\t// Delegate to the cell at first\n\t\t\t\tconst row = this.toRow(rowIndexMapped);\n\t\t\t\tif (row) {\n\t\t\t\t\tconst cell = this.toCell(row, local.x);\n\t\t\t\t\tif (cell && cell.onRowSelect && cell.onRowSelect(e, local)) {\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\t// Fallback to the default\n\t\t\t\tthis.onRowSelect(e, rowIndexMapped);\n\t\t\t}\n\t\t}\n\t}\n\n\tprotected onRowSelect(e: InteractionEvent, rowIndexMapped: number): void {\n\t\tconst data = this._data;\n\t\tconst selection = data.selection;\n\t\tconst isSingle = selection.type === DTableDataSelectionType.SINGLE;\n\t\tconst isNotSingle = !isSingle;\n\t\tconst rowIndex = data.mapped.unmap(rowIndexMapped);\n\t\tconst originalEvent = e.data.originalEvent;\n\t\tconst ctrlKey = originalEvent.ctrlKey;\n\t\tconst shiftKey = originalEvent.shiftKey;\n\t\tif (isSingle || selection.isEmpty() || !(isNotSingle && (ctrlKey || shiftKey))) {\n\t\t\tselection.clearAndAdd(rowIndex);\n\t\t} else if (ctrlKey) {\n\t\t\tselection.toggle(rowIndex);\n\t\t} else if (shiftKey) {\n\t\t\tconst lastRowIndex = selection.last;\n\t\t\tif (lastRowIndex != null) {\n\t\t\t\tconst sorter = data.sorter;\n\t\t\t\tconst filter = data.filter;\n\t\t\t\tconst rowIndexSorted = sorter.map(rowIndex);\n\t\t\t\tconst lastRowIndexSorted = sorter.map(lastRowIndex);\n\t\t\t\tif (rowIndexSorted != null && lastRowIndexSorted != null) {\n\t\t\t\t\tlet istart = lastRowIndexSorted + 1;\n\t\t\t\t\tlet iend = rowIndexSorted + 1;\n\t\t\t\t\tif (rowIndexSorted < lastRowIndexSorted) {\n\t\t\t\t\t\tistart = rowIndexSorted;\n\t\t\t\t\t\tiend = lastRowIndexSorted;\n\t\t\t\t\t}\n\t\t\t\t\tif (istart < iend) {\n\t\t\t\t\t\tconst rowIndices: number[] = [];\n\t\t\t\t\t\tconst indicesFiltered = filter.indices;\n\t\t\t\t\t\tconst indicesSorted = sorter.indices;\n\t\t\t\t\t\tif (indicesFiltered) {\n\t\t\t\t\t\t\tif (indicesSorted) {\n\t\t\t\t\t\t\t\tfor (let i = 0, imax = indicesFiltered.length; i < imax; ++i) {\n\t\t\t\t\t\t\t\t\tconst indexFiltered = indicesFiltered[i];\n\t\t\t\t\t\t\t\t\tif (istart <= indexFiltered && indexFiltered < iend) {\n\t\t\t\t\t\t\t\t\t\trowIndices.push(indicesSorted[indexFiltered]);\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\tfor (let i = 0, imax = indicesFiltered.length; i < imax; ++i) {\n\t\t\t\t\t\t\t\t\tconst indexFiltered = indicesFiltered[i];\n\t\t\t\t\t\t\t\t\tif (istart <= indexFiltered && indexFiltered < iend) {\n\t\t\t\t\t\t\t\t\t\trowIndices.push(indexFiltered);\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tif (indicesSorted) {\n\t\t\t\t\t\t\t\tfor (let i = istart; i < iend; ++i) {\n\t\t\t\t\t\t\t\t\trowIndices.push(indicesSorted[i]);\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\tfor (let i = istart; i < iend; ++i) {\n\t\t\t\t\t\t\t\t\trowIndices.push(i);\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t\tselection.addAll(rowIndices);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\tonDblClick(\n\t\te: MouseEvent | TouchEvent,\n\t\tinteractionManager: interaction.InteractionManager\n\t): boolean {\n\t\treturn super.onDblClick(e, interactionManager);\n\t}\n\n\tprotected getType(): string {\n\t\treturn \"DTableBody\";\n\t}\n\n\tget data(): DATA {\n\t\treturn this._data;\n\t}\n}\n"]}
1
+ {"version":3,"file":"d-table-body.js","sourceRoot":"","sources":["../../../src/main/typescript/wcardinal/ui/d-table-body.ts"],"names":[],"mappings":"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","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { interaction, Point, Rectangle } from \"pixi.js\";\nimport InteractionEvent = interaction.InteractionEvent;\nimport { DBase, DBaseEvents, DBaseOptions, DThemeBase } from \"./d-base\";\nimport { DBaseState } from \"./d-base-state\";\nimport { DTableBodyRow, DTableBodyRowOnChange, DTableBodyRowOptions } from \"./d-table-body-row\";\nimport { DTableColumn } from \"./d-table-column\";\nimport { DTableData, DTableDataOptions, DTableDataSupplimental } from \"./d-table-data\";\nimport { DTableDataList, DTableDataListOptions } from \"./d-table-data-list\";\nimport { DTableDataSelection, DTableDataSelectionType } from \"./d-table-data-selection\";\nimport { DTableBodyCell } from \"./d-table-body-cell\";\nimport { DTableState } from \"./d-table-state\";\nimport { DTableBodyCellOptions } from \"./d-table-body-cell-options\";\nimport { DOnOptions } from \"./d-on-options\";\nimport { DApplications } from \"./d-applications\";\nimport { isNumber } from \"./util/is-number\";\nimport { DTableColumnUpdate } from \"./d-table-column-update\";\n\n/**\n * {@link DTableBody} events.\n */\nexport interface DTableBodyEvents<EMITTER> extends DBaseEvents<EMITTER> {\n\t/**\n\t * Triggered when rows are updated.\n\t * The first and second parameters are an mapped index range of visible data.\n\t * Please note that these parameters are real numbers.\n\t * For instance, An index range of [0.5, 2.5] means:\n\t *\n\t * * The row at index 0 is partially visible.\n\t * * The row at index 1 is fully visible.\n\t * * The row at index 2 is partially visible.\n\t *\n\t * @param from a lowest mapped index of visible data\n\t * @param to a highest mapped index of vislble data\n\t * @param emitter an emitter\n\t */\n\tupdate(from: number, to: number, emitter: EMITTER): void;\n}\n\n/**\n * {@link DTableBody} \"on\" options.\n */\nexport interface DTableBodyOnOptions<EMITTER>\n\textends Partial<DTableBodyEvents<EMITTER>>,\n\t\tDOnOptions {}\n\nexport interface DTableBodyOptions<\n\tROW,\n\tDATA extends DTableData<ROW> = DTableDataList<ROW>,\n\tTHEME extends DThemeTableBody = DThemeTableBody,\n\tEMITTER = any\n> extends DBaseOptions<THEME, EMITTER> {\n\tcolumns?: Array<DTableColumn<ROW, unknown>>;\n\trow?: DTableBodyRowOptions<ROW>;\n\tdata?: DTableDataListOptions<ROW> | DATA;\n\toffset?: number;\n\tfrozen?: number;\n\ton?: DTableBodyOnOptions<EMITTER>;\n}\n\nexport interface DThemeTableBody extends DThemeBase {\n\tgetRowHeight(): number;\n}\n\nconst toRowOptions = <ROW, DATA extends DTableData<ROW>>(\n\ttheme: DThemeTableBody,\n\toptions: DTableBodyOptions<ROW, DATA>,\n\tselectionType: DTableDataSelectionType\n): DTableBodyRowOptions<ROW> => {\n\tconst columns = options.columns || [];\n\tlet result = options.row;\n\tif (result != null) {\n\t\tif (result.height == null) {\n\t\t\tresult.height = theme.getRowHeight();\n\t\t}\n\t\tif (result.columns === undefined) {\n\t\t\tresult.columns = columns;\n\t\t}\n\t\tif (result.frozen == null) {\n\t\t\tresult.frozen = options.frozen;\n\t\t}\n\t\tif (result.selection === undefined) {\n\t\t\tresult.selection = {\n\t\t\t\ttype: selectionType\n\t\t\t};\n\t\t} else if (result.selection.type === undefined) {\n\t\t\tresult.selection.type = selectionType;\n\t\t}\n\t} else {\n\t\tresult = {\n\t\t\tcolumns,\n\t\t\theight: theme.getRowHeight(),\n\t\t\tfrozen: options.frozen,\n\t\t\tselection: {\n\t\t\t\ttype: selectionType\n\t\t\t}\n\t\t};\n\t}\n\treturn result as DTableBodyRowOptions<ROW>;\n};\n\nexport class DTableBody<\n\tROW,\n\tDATA extends DTableData<ROW> = DTableDataList<ROW>,\n\tTHEME extends DThemeTableBody = DThemeTableBody,\n\tOPTIONS extends DTableBodyOptions<ROW, DATA, THEME> = DTableBodyOptions<ROW, DATA, THEME>\n> extends DBase<THEME, OPTIONS> {\n\tprotected static WORK_ON_CLICK = new Point();\n\n\tprotected _columns: Array<DTableColumn<ROW, unknown>>;\n\tprotected _rowHeight: number;\n\tprotected _rowIndexMappedStart: number;\n\tprotected _rowIndexMappedEnd: number;\n\tprotected _rowOptions: DTableBodyRowOptions<ROW>;\n\tprotected _updateRowsCount: number;\n\tprotected _isUpdateRowsCalled: boolean;\n\tprotected _isUpdateRowsCalledForcibly: boolean;\n\tprotected _workRows: Array<DTableBodyRow<ROW>>;\n\tprotected _onRowChangeBound: DTableBodyRowOnChange<ROW, unknown>;\n\tprotected _columnIndexToCellOptions: Map<number, DTableBodyCellOptions<ROW>>;\n\tprotected _data: DATA;\n\n\tconstructor(options: OPTIONS) {\n\t\tsuper(options);\n\n\t\tthis.transform.position.y = options.offset ?? 0;\n\t\tconst data = this.toData(options.data);\n\t\tthis._data = data;\n\t\tdata.bind(this);\n\t\tconst theme = this.theme;\n\t\tconst rowOptions = toRowOptions(theme, options, data.selection.type);\n\t\tthis._rowOptions = rowOptions;\n\t\tthis._rowHeight = rowOptions.height != null ? rowOptions.height : theme.getRowHeight();\n\t\tthis._columns = rowOptions.columns || [];\n\t\tthis._rowIndexMappedStart = 0;\n\t\tthis._rowIndexMappedEnd = 0;\n\t\tthis._updateRowsCount = 0;\n\t\tthis._isUpdateRowsCalled = false;\n\t\tthis._isUpdateRowsCalledForcibly = false;\n\t\tthis._workRows = [];\n\t\tthis._onRowChangeBound = (newValue, oldValue, row, rowIndex, columnIndex, column): void => {\n\t\t\tthis.onRowChange(newValue, oldValue, row, rowIndex, columnIndex, column);\n\t\t};\n\t\tthis._columnIndexToCellOptions = new Map<number, DTableBodyCellOptions<ROW>>();\n\t\tthis._data.emit(\"init\", this._data);\n\t}\n\n\tprotected onRowChange(\n\t\tnewValue: unknown,\n\t\toldValue: unknown,\n\t\trow: ROW,\n\t\trowIndex: number,\n\t\tcolumnIndex: number,\n\t\tcolumn: DTableColumn<ROW, unknown>\n\t): void {\n\t\tconst data = this._data;\n\t\tdata.emit(\"change\", newValue, oldValue, row, rowIndex, columnIndex, data);\n\t\tif (column.update === DTableColumnUpdate.ALL) {\n\t\t\tthis.update(true);\n\t\t}\n\t}\n\n\tprotected toData(options?: DATA | DTableDataListOptions<ROW>): DATA {\n\t\tif (this.isData(options)) {\n\t\t\treturn options;\n\t\t}\n\t\treturn new DTableDataList<ROW>(options) as any;\n\t}\n\n\tprotected isData(\n\t\ttarget?: ROW[] | DTableDataOptions<ROW> | DTableData<ROW>\n\t): target is DTableData<ROW> {\n\t\treturn target != null && \"mapped\" in target;\n\t}\n\n\tonResize(newWidth: number, newHeight: number, oldWidth: number, oldHeight: number): void {\n\t\tsuper.onResize(newWidth, newHeight, oldWidth, oldHeight);\n\t\tthis.update();\n\t}\n\n\tget selection(): DTableDataSelection<ROW> {\n\t\treturn this._data.selection;\n\t}\n\n\tlock(): void {\n\t\tthis._updateRowsCount += 1;\n\t\tif (this._updateRowsCount === 1) {\n\t\t\tthis._isUpdateRowsCalled = false;\n\t\t\tthis._isUpdateRowsCalledForcibly = false;\n\t\t}\n\t}\n\n\tunlock(callIfNeeded: boolean): void {\n\t\tthis._updateRowsCount -= 1;\n\t\tif (this._updateRowsCount === 0) {\n\t\t\tif (callIfNeeded && this._isUpdateRowsCalled) {\n\t\t\t\tthis.update(this._isUpdateRowsCalledForcibly);\n\t\t\t}\n\t\t\tthis._isUpdateRowsCalled = false;\n\t\t\tthis._isUpdateRowsCalledForcibly = false;\n\t\t}\n\t}\n\n\t/**\n\t * Updates rows. If the `forcibly` is true, some dirty checkings for\n\t * avoiding unnecessary state changes are skipped.\n\t *\n\t * @param forcibly true to update forcibly\n\t */\n\tupdate(forcibly?: boolean): void {\n\t\tif (0 < this._updateRowsCount) {\n\t\t\tthis._isUpdateRowsCalled = true;\n\t\t\tif (forcibly) {\n\t\t\t\tthis._isUpdateRowsCalledForcibly = true;\n\t\t\t}\n\t\t\treturn;\n\t\t}\n\n\t\tconst content = this.parent;\n\t\tif (content == null) {\n\t\t\treturn;\n\t\t}\n\t\tconst contentParent = content.parent;\n\t\tif (contentParent == null) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst rows = this.children as Array<DTableBodyRow<ROW>>;\n\t\tconst height = contentParent.height;\n\t\tconst rowHeight = this._rowHeight;\n\n\t\tconst data = this._data;\n\t\tconst dataMappedSize = data.mapped.size();\n\n\t\tconst oldRowIndexMappedStart = this._rowIndexMappedStart;\n\t\tlet oldRowIndexMappedEnd = this._rowIndexMappedEnd;\n\t\tlet oldRowCount = oldRowIndexMappedEnd - oldRowIndexMappedStart;\n\n\t\tconst y = this.transform.position.y;\n\t\tconst newHeight = y + dataMappedSize * rowHeight;\n\t\tconst newContentHeight = Math.max(height, newHeight);\n\t\tconst newContentY = Math.max(height - newContentHeight, content.position.y);\n\n\t\tconst newRowIndexMappedLowerBound = -newContentY / rowHeight;\n\t\tconst newRowIndexMappedUpperBound = (height - (newContentY + y)) / rowHeight;\n\t\tlet newRowIndexMappedStart = Math.floor(newRowIndexMappedLowerBound);\n\t\tnewRowIndexMappedStart -= newRowIndexMappedStart % 2 === 0 ? 2 : 1;\n\t\tlet newRowIndexMappedEnd = Math.floor(newRowIndexMappedUpperBound);\n\t\tnewRowIndexMappedEnd += (newRowIndexMappedEnd - newRowIndexMappedStart) % 2 === 1 ? 3 : 2;\n\t\tlet newRowCount = newRowIndexMappedEnd - newRowIndexMappedStart;\n\t\tif (newRowCount < oldRowCount) {\n\t\t\tnewRowCount = oldRowCount;\n\t\t\tnewRowIndexMappedEnd = newRowIndexMappedStart + newRowCount;\n\t\t}\n\n\t\tif (oldRowCount < newRowCount) {\n\t\t\tfor (let i = oldRowCount; i < newRowCount; ++i) {\n\t\t\t\tconst oldRowIndexMapped = oldRowIndexMappedStart + i;\n\t\t\t\tconst newRow = this.newRow(oldRowIndexMapped % 2 === 0);\n\t\t\t\tthis.addChild(newRow);\n\t\t\t}\n\t\t\toldRowCount = newRowCount;\n\t\t\toldRowIndexMappedEnd = oldRowIndexMappedStart + oldRowCount;\n\t\t} else if (newRowCount < oldRowCount) {\n\t\t\tfor (let i = oldRowCount - 1; newRowCount <= i; --i) {\n\t\t\t\tthis.removeChild(rows[i]);\n\t\t\t}\n\t\t\toldRowCount = newRowCount;\n\t\t\toldRowIndexMappedEnd = oldRowIndexMappedStart + oldRowCount;\n\t\t}\n\n\t\tthis._rowIndexMappedStart = newRowIndexMappedStart;\n\t\tthis._rowIndexMappedEnd = newRowIndexMappedEnd;\n\n\t\tconst rowIndexMappedStartDelta = newRowIndexMappedStart - oldRowIndexMappedStart;\n\t\tconst rowIndexMappedStartDeltaAbs = Math.abs(rowIndexMappedStartDelta);\n\t\tconst rowsLength = rows.length;\n\t\tif (0 < rowIndexMappedStartDeltaAbs && rowIndexMappedStartDeltaAbs < rowsLength) {\n\t\t\tconst work = this._workRows;\n\t\t\tif (0 < rowIndexMappedStartDelta) {\n\t\t\t\tfor (let i = 0; i < rowIndexMappedStartDeltaAbs; ++i) {\n\t\t\t\t\twork.push(this.resetRow(rows[i]));\n\t\t\t\t}\n\t\t\t\tfor (let i = rowIndexMappedStartDeltaAbs; i < rowsLength; ++i) {\n\t\t\t\t\trows[i - rowIndexMappedStartDeltaAbs] = rows[i];\n\t\t\t\t}\n\t\t\t\tfor (let i = 0; i < rowIndexMappedStartDeltaAbs; ++i) {\n\t\t\t\t\trows[rowsLength - rowIndexMappedStartDeltaAbs + i] = work[i];\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tfor (let i = 0; i < rowIndexMappedStartDeltaAbs; ++i) {\n\t\t\t\t\twork.push(this.resetRow(rows[rowsLength - rowIndexMappedStartDeltaAbs + i]));\n\t\t\t\t}\n\t\t\t\tfor (let i = rowsLength - rowIndexMappedStartDeltaAbs - 1; 0 <= i; --i) {\n\t\t\t\t\trows[i + rowIndexMappedStartDeltaAbs] = rows[i];\n\t\t\t\t}\n\t\t\t\tfor (let i = 0; i < rowIndexMappedStartDeltaAbs; ++i) {\n\t\t\t\t\trows[i] = work[i];\n\t\t\t\t}\n\t\t\t}\n\t\t\twork.length = 0;\n\t\t}\n\n\t\tconst selection = data.selection;\n\t\tconst isRowSelectable = selection.type !== DTableDataSelectionType.NONE;\n\t\tdata.mapped.each(\n\t\t\t(\n\t\t\t\tdatum: ROW,\n\t\t\t\tsupplimental: DTableDataSupplimental | null,\n\t\t\t\tindex: number,\n\t\t\t\tunmappedIndex: number\n\t\t\t): void | boolean => {\n\t\t\t\tconst row = rows[index - newRowIndexMappedStart];\n\n\t\t\t\t// Position\n\t\t\t\trow.position.y = index * rowHeight;\n\n\t\t\t\t// State\n\t\t\t\tconst rowState = row.state;\n\t\t\t\trowState.lock();\n\t\t\t\trowState.set(DTableState.SELECTABLE, isRowSelectable);\n\t\t\t\trowState.set(DBaseState.ACTIVE, selection.contains(unmappedIndex));\n\t\t\t\trowState.remove(DBaseState.DISABLED);\n\t\t\t\trowState.unlock();\n\n\t\t\t\t// Data\n\t\t\t\trow.set(datum, supplimental, unmappedIndex, forcibly);\n\t\t\t},\n\t\t\tnewRowIndexMappedStart,\n\t\t\tnewRowIndexMappedStart + rowsLength\n\t\t);\n\n\t\tfor (let i = 0; newRowIndexMappedStart + i < 0 && i < rowsLength; ++i) {\n\t\t\tconst row = rows[i];\n\n\t\t\t// Position\n\t\t\trow.position.y = (newRowIndexMappedStart + i) * rowHeight;\n\n\t\t\t// State\n\t\t\tconst rowState = row.state;\n\t\t\trowState.lock();\n\t\t\trowState.add(DBaseState.DISABLED);\n\t\t\trowState.removeAll(DTableState.SELECTABLE, DBaseState.ACTIVE);\n\t\t\trowState.unlock();\n\n\t\t\t// Data\n\t\t\trow.unset();\n\t\t}\n\n\t\tfor (let i = rowsLength - 1; dataMappedSize <= newRowIndexMappedStart + i && 0 <= i; --i) {\n\t\t\tconst row = rows[i];\n\n\t\t\t// Position\n\t\t\trow.position.y = (newRowIndexMappedStart + i) * rowHeight;\n\n\t\t\t// State\n\t\t\tconst rowState = row.state;\n\t\t\trowState.lock();\n\t\t\trowState.add(DBaseState.DISABLED);\n\t\t\trowState.removeAll(DTableState.SELECTABLE, DBaseState.ACTIVE);\n\t\t\trowState.unlock();\n\n\t\t\t// Data\n\t\t\trow.unset();\n\t\t}\n\n\t\tthis.lock();\n\t\tcontent.position.y = newContentY;\n\t\tcontent.height = newContentHeight;\n\t\tthis.height = newHeight;\n\t\tthis.unlock(false);\n\t\tthis.emit(\"update\", newRowIndexMappedLowerBound, newRowIndexMappedUpperBound, this);\n\t}\n\n\tprotected resetRow(row: DTableBodyRow<ROW>): DTableBodyRow<ROW> {\n\t\trow.blur(true);\n\t\tconst cells = row.children;\n\t\tfor (let i = 0, imax = cells.length; i < imax; ++i) {\n\t\t\tconst cell = cells[i];\n\t\t\tif (cell instanceof DBase) {\n\t\t\t\tcell.state.isPressed = false;\n\t\t\t}\n\t\t}\n\t\treturn row;\n\t}\n\n\tprotected newRow(isEven: boolean): DTableBodyRow<ROW> {\n\t\treturn new DTableBodyRow<ROW>(\n\t\t\tthis._onRowChangeBound,\n\t\t\tisEven,\n\t\t\tthis._columnIndexToCellOptions,\n\t\t\tthis._rowOptions\n\t\t);\n\t}\n\n\tprotected onParentMove(newX: number, newY: number, oldX: number, oldY: number): void {\n\t\tsuper.onParentMove(newX, newY, oldX, oldY);\n\t\tthis.updateFrozenCellPosition(newX);\n\t}\n\n\tprotected updateFrozenCellPosition(x: number): void {\n\t\tconst frozen = this._rowOptions.frozen;\n\t\tif (frozen != null && 0 < frozen) {\n\t\t\tconst rows = this.children as Array<DTableBodyRow<ROW>>;\n\t\t\tfor (let i = 0, imax = rows.length; i < imax; ++i) {\n\t\t\t\trows[i].updateFrozenCellPosition(x);\n\t\t\t}\n\t\t}\n\t}\n\n\tgetClippingRect(target: unknown, result: Rectangle): void {\n\t\tsuper.getClippingRect(target, result);\n\n\t\tconst parent = this.parent;\n\t\tif (parent) {\n\t\t\tconst dy = -parent.transform.position.y;\n\t\t\tresult.y += dy;\n\t\t\tresult.height -= dy;\n\t\t}\n\t}\n\n\t/**\n\t * Scroll to the given row or row index.\n\t *\n\t * @param target a row or an row index to which the body scrolls to.\n\t * @returns true if succeeded\n\t */\n\tscrollTo(target: ROW | number): boolean {\n\t\tconst parent = this.parent;\n\t\tif (parent == null) {\n\t\t\treturn false;\n\t\t}\n\t\tconst parentParent = parent.parent;\n\t\tif (parentParent == null) {\n\t\t\treturn false;\n\t\t}\n\t\tlet rowIndexMapped = -1;\n\t\tif (isNumber(target)) {\n\t\t\tif (0 <= target && target < this.data.mapped.size()) {\n\t\t\t\trowIndexMapped = target;\n\t\t\t}\n\t\t} else {\n\t\t\tthis.data.mapped.each((row: ROW, _: unknown, index: number): boolean => {\n\t\t\t\tif (row === target) {\n\t\t\t\t\trowIndexMapped = index;\n\t\t\t\t\treturn false;\n\t\t\t\t}\n\t\t\t\treturn true;\n\t\t\t});\n\t\t}\n\t\tif (rowIndexMapped < 0) {\n\t\t\treturn false;\n\t\t}\n\t\tparent.position.y = Math.max(\n\t\t\tMath.min(0, parentParent.height - parent.height),\n\t\t\t-rowIndexMapped * this._rowHeight\n\t\t);\n\t\tDApplications.update(this);\n\t\treturn true;\n\t}\n\n\t/**\n\t * Returns a mapped row index at the given local Y position or -1.\n\t *\n\t * @param localY a local Y position\n\t * @returns a mapped row index at the given local Y position or -1.\n\t */\n\ttoRowIndexMapped(localY: number): number {\n\t\tif (0 <= this.parent.position.y + localY) {\n\t\t\tconst result = Math.floor(localY / this._rowHeight);\n\t\t\tif (0 <= result && result < this._data.mapped.size()) {\n\t\t\t\treturn result;\n\t\t\t}\n\t\t}\n\t\treturn -1;\n\t}\n\n\t/**\n\t * Returns a row at the given mapped row index or null if not exits.\n\t *\n\t * @param rowIndexMapped a mapped row index\n\t * @returns a row at the given mapped row index or null if not exists.\n\t */\n\ttoRow(rowIndexMapped: number): DTableBodyRow<ROW> | null {\n\t\tconst index = rowIndexMapped - this._rowIndexMappedStart;\n\t\tconst rows = this.children as Array<DTableBodyRow<ROW>>;\n\t\tif (0 <= index && index < rows.length) {\n\t\t\treturn rows[index];\n\t\t}\n\t\treturn null;\n\t}\n\n\t/**\n\t * Returns a cell at the given local X position or null if not exits.\n\t * This method assumes the given local X position is on the given row.\n\t *\n\t * @param row a row\n\t * @param localX a local X position\n\t * @returns a cell at the given local X position or null if not exits\n\t */\n\ttoCell(row: DTableBodyRow<ROW>, localX: number): DTableBodyCell<ROW, unknown> | null {\n\t\tconst cells = row.children as Array<DTableBodyCell<ROW, unknown>>;\n\t\tconst cellsLength = cells.length;\n\t\tconst columns = this._columns;\n\t\tconst columnsLength = columns.length;\n\t\tfor (let i = 0, imax = Math.min(cellsLength, columnsLength); i < imax; ++i) {\n\t\t\tconst cell = cells[cellsLength - i - 1];\n\t\t\tconst x = localX - cell.position.x;\n\t\t\tif (0 <= x && x <= cell.width) {\n\t\t\t\treturn cell;\n\t\t\t}\n\t\t}\n\t\treturn null;\n\t}\n\n\tonRowClick(e: InteractionEvent): void {\n\t\tif (this.state.isActionable) {\n\t\t\tconst local = DTableBody.WORK_ON_CLICK;\n\t\t\tlocal.copyFrom(e.data.global);\n\t\t\tthis.toLocal(local, undefined, local, false);\n\t\t\tconst rowIndexMapped = this.toRowIndexMapped(local.y);\n\t\t\tif (0 <= rowIndexMapped) {\n\t\t\t\t// Delegate to the cell at first\n\t\t\t\tconst row = this.toRow(rowIndexMapped);\n\t\t\t\tif (row) {\n\t\t\t\t\tconst cell = this.toCell(row, local.x);\n\t\t\t\t\tif (cell && cell.onRowSelect && cell.onRowSelect(e, local)) {\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\t// Fallback to the default\n\t\t\t\tthis.onRowSelect(e, rowIndexMapped);\n\t\t\t}\n\t\t}\n\t}\n\n\tprotected onRowSelect(e: InteractionEvent, rowIndexMapped: number): void {\n\t\tconst data = this._data;\n\t\tconst selection = data.selection;\n\t\tconst isSingle = selection.type === DTableDataSelectionType.SINGLE;\n\t\tconst isNotSingle = !isSingle;\n\t\tconst rowIndex = data.mapped.unmap(rowIndexMapped);\n\t\tconst originalEvent = e.data.originalEvent;\n\t\tconst ctrlKey = originalEvent.ctrlKey;\n\t\tconst shiftKey = originalEvent.shiftKey;\n\t\tif (isSingle || selection.isEmpty() || !(isNotSingle && (ctrlKey || shiftKey))) {\n\t\t\tselection.clearAndAdd(rowIndex);\n\t\t} else if (ctrlKey) {\n\t\t\tselection.toggle(rowIndex);\n\t\t} else if (shiftKey) {\n\t\t\tconst lastRowIndex = selection.last;\n\t\t\tif (lastRowIndex != null) {\n\t\t\t\tconst sorter = data.sorter;\n\t\t\t\tconst filter = data.filter;\n\t\t\t\tconst rowIndexSorted = sorter.map(rowIndex);\n\t\t\t\tconst lastRowIndexSorted = sorter.map(lastRowIndex);\n\t\t\t\tif (rowIndexSorted != null && lastRowIndexSorted != null) {\n\t\t\t\t\tlet istart = lastRowIndexSorted + 1;\n\t\t\t\t\tlet iend = rowIndexSorted + 1;\n\t\t\t\t\tif (rowIndexSorted < lastRowIndexSorted) {\n\t\t\t\t\t\tistart = rowIndexSorted;\n\t\t\t\t\t\tiend = lastRowIndexSorted;\n\t\t\t\t\t}\n\t\t\t\t\tif (istart < iend) {\n\t\t\t\t\t\tconst rowIndices: number[] = [];\n\t\t\t\t\t\tconst indicesFiltered = filter.indices;\n\t\t\t\t\t\tconst indicesSorted = sorter.indices;\n\t\t\t\t\t\tif (indicesFiltered) {\n\t\t\t\t\t\t\tif (indicesSorted) {\n\t\t\t\t\t\t\t\tfor (let i = 0, imax = indicesFiltered.length; i < imax; ++i) {\n\t\t\t\t\t\t\t\t\tconst indexFiltered = indicesFiltered[i];\n\t\t\t\t\t\t\t\t\tif (istart <= indexFiltered && indexFiltered < iend) {\n\t\t\t\t\t\t\t\t\t\trowIndices.push(indicesSorted[indexFiltered]);\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\tfor (let i = 0, imax = indicesFiltered.length; i < imax; ++i) {\n\t\t\t\t\t\t\t\t\tconst indexFiltered = indicesFiltered[i];\n\t\t\t\t\t\t\t\t\tif (istart <= indexFiltered && indexFiltered < iend) {\n\t\t\t\t\t\t\t\t\t\trowIndices.push(indexFiltered);\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tif (indicesSorted) {\n\t\t\t\t\t\t\t\tfor (let i = istart; i < iend; ++i) {\n\t\t\t\t\t\t\t\t\trowIndices.push(indicesSorted[i]);\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\tfor (let i = istart; i < iend; ++i) {\n\t\t\t\t\t\t\t\t\trowIndices.push(i);\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t\tselection.addAll(rowIndices);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\tonDblClick(\n\t\te: MouseEvent | TouchEvent,\n\t\tinteractionManager: interaction.InteractionManager\n\t): boolean {\n\t\treturn super.onDblClick(e, interactionManager);\n\t}\n\n\tprotected getType(): string {\n\t\treturn \"DTableBody\";\n\t}\n\n\tget data(): DATA {\n\t\treturn this._data;\n\t}\n}\n"]}
@@ -73,7 +73,7 @@ var DThemeDarkButtonBase = /** @class */ (function (_super) {
73
73
  return this.getOutlineOffsetNonActive(state);
74
74
  };
75
75
  DThemeDarkButtonBase.prototype.getOutlineOffsetActive = function (state) {
76
- return -1.5;
76
+ return -1;
77
77
  };
78
78
  DThemeDarkButtonBase.prototype.getOutlineOffsetNonActive = function (state) {
79
79
  return _super.prototype.getOutlineOffset.call(this, state);
@@ -1 +1 @@
1
- {"version":3,"file":"d-theme-dark-button-base.js","sourceRoot":"","sources":["../../../../../src/main/typescript/wcardinal/ui/theme/dark/d-theme-dark-button-base.ts"],"names":[],"mappings":"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","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { DAlignHorizontal } from \"../../d-align-horizontal\";\nimport { DBaseStateSet } from \"../../d-base-state-set\";\nimport { DThemeButtonBase } from \"../../d-button-base\";\nimport { DButtonBaseWhen } from \"../../d-button-base-when\";\nimport { DCoordinateSize } from \"../../d-coordinate\";\nimport { UtilRgb } from \"../../util/util-rgb\";\nimport { DThemeDarkConstants } from \"./d-theme-dark-constants\";\nimport { DThemeDarkImageBase } from \"./d-theme-dark-image-base\";\n\nexport class DThemeDarkButtonBase<VALUE = unknown>\n\textends DThemeDarkImageBase<VALUE>\n\timplements DThemeButtonBase<VALUE>\n{\n\tprotected readonly BACKGROUND_COLOR: number;\n\tprotected readonly BACKGROUND_COLOR_HOVERED: number;\n\tprotected readonly BACKGROUND_COLOR_PRESSED: number;\n\n\tprotected readonly OUTLINE_COLOR: number;\n\n\tconstructor(\n\t\tbackgroundColor: number = 0x484848,\n\t\thover: number = 0.017,\n\t\tpressed: number = 0.034\n\t) {\n\t\tsuper();\n\t\tthis.BACKGROUND_COLOR = backgroundColor;\n\t\tthis.BACKGROUND_COLOR_HOVERED = UtilRgb.brighten(backgroundColor, hover);\n\t\tthis.BACKGROUND_COLOR_PRESSED = UtilRgb.brighten(backgroundColor, pressed);\n\n\t\tthis.OUTLINE_COLOR = UtilRgb.darken(backgroundColor, 0.75);\n\t}\n\n\tgetBackgroundColor(state: DBaseStateSet): number | null {\n\t\tif (state.inDisabled) {\n\t\t\treturn null;\n\t\t} else if (state.isActive) {\n\t\t\treturn DThemeDarkConstants.HIGHLIGHT_COLOR;\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 this.BACKGROUND_COLOR;\n\t\t}\n\t}\n\n\tgetColor(state: DBaseStateSet): number {\n\t\tif (state.inDisabled || !state.isActive) {\n\t\t\treturn super.getColor(state);\n\t\t} else {\n\t\t\treturn DThemeDarkConstants.ACTIVE_COLOR;\n\t\t}\n\t}\n\n\tgetBorderColor(state: DBaseStateSet): number | null {\n\t\tif (state.inDisabled) {\n\t\t\treturn DThemeDarkConstants.BORDER_COLOR;\n\t\t} else {\n\t\t\treturn null;\n\t\t}\n\t}\n\n\tgetOutlineColor(state: DBaseStateSet): number | null {\n\t\tif (state.isActive) {\n\t\t\treturn this.getOutlineColorActive(state);\n\t\t}\n\t\treturn this.getOutlineColorNonActive(state);\n\t}\n\n\tprotected getOutlineColorActive(state: DBaseStateSet): number | null {\n\t\treturn this.OUTLINE_COLOR;\n\t}\n\n\tprotected getOutlineColorNonActive(state: DBaseStateSet): number | null {\n\t\treturn super.getOutlineColor(state);\n\t}\n\n\tgetOutlineOffset(state: DBaseStateSet): number {\n\t\tif (state.isActive) {\n\t\t\treturn this.getOutlineOffsetActive(state);\n\t\t}\n\t\treturn this.getOutlineOffsetNonActive(state);\n\t}\n\n\tprotected getOutlineOffsetActive(state: DBaseStateSet): number {\n\t\treturn -1.5;\n\t}\n\n\tprotected getOutlineOffsetNonActive(state: DBaseStateSet): number {\n\t\treturn super.getOutlineOffset(state);\n\t}\n\n\tgetHeight(): DCoordinateSize {\n\t\treturn 30;\n\t}\n\n\tgetWidth(): DCoordinateSize {\n\t\treturn 100;\n\t}\n\n\tgetTextAlignHorizontal(): DAlignHorizontal {\n\t\treturn DAlignHorizontal.CENTER;\n\t}\n\n\tgetPaddingLeft(): number {\n\t\treturn 10;\n\t}\n\n\tgetPaddingRight(): number {\n\t\treturn 10;\n\t}\n\n\tisToggle(): boolean {\n\t\treturn false;\n\t}\n\n\tgetWhen(): DButtonBaseWhen {\n\t\treturn DButtonBaseWhen.CLICKED;\n\t}\n\n\tgetCursor(state: DBaseStateSet): string {\n\t\tif (!state.isActionable) {\n\t\t\treturn \"\";\n\t\t}\n\t\treturn \"pointer\";\n\t}\n}\n"]}
1
+ {"version":3,"file":"d-theme-dark-button-base.js","sourceRoot":"","sources":["../../../../../src/main/typescript/wcardinal/ui/theme/dark/d-theme-dark-button-base.ts"],"names":[],"mappings":"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","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { DAlignHorizontal } from \"../../d-align-horizontal\";\nimport { DBaseStateSet } from \"../../d-base-state-set\";\nimport { DThemeButtonBase } from \"../../d-button-base\";\nimport { DButtonBaseWhen } from \"../../d-button-base-when\";\nimport { DCoordinateSize } from \"../../d-coordinate\";\nimport { UtilRgb } from \"../../util/util-rgb\";\nimport { DThemeDarkConstants } from \"./d-theme-dark-constants\";\nimport { DThemeDarkImageBase } from \"./d-theme-dark-image-base\";\n\nexport class DThemeDarkButtonBase<VALUE = unknown>\n\textends DThemeDarkImageBase<VALUE>\n\timplements DThemeButtonBase<VALUE>\n{\n\tprotected readonly BACKGROUND_COLOR: number;\n\tprotected readonly BACKGROUND_COLOR_HOVERED: number;\n\tprotected readonly BACKGROUND_COLOR_PRESSED: number;\n\n\tprotected readonly OUTLINE_COLOR: number;\n\n\tconstructor(\n\t\tbackgroundColor: number = 0x484848,\n\t\thover: number = 0.017,\n\t\tpressed: number = 0.034\n\t) {\n\t\tsuper();\n\t\tthis.BACKGROUND_COLOR = backgroundColor;\n\t\tthis.BACKGROUND_COLOR_HOVERED = UtilRgb.brighten(backgroundColor, hover);\n\t\tthis.BACKGROUND_COLOR_PRESSED = UtilRgb.brighten(backgroundColor, pressed);\n\n\t\tthis.OUTLINE_COLOR = UtilRgb.darken(backgroundColor, 0.75);\n\t}\n\n\tgetBackgroundColor(state: DBaseStateSet): number | null {\n\t\tif (state.inDisabled) {\n\t\t\treturn null;\n\t\t} else if (state.isActive) {\n\t\t\treturn DThemeDarkConstants.HIGHLIGHT_COLOR;\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 this.BACKGROUND_COLOR;\n\t\t}\n\t}\n\n\tgetColor(state: DBaseStateSet): number {\n\t\tif (state.inDisabled || !state.isActive) {\n\t\t\treturn super.getColor(state);\n\t\t} else {\n\t\t\treturn DThemeDarkConstants.ACTIVE_COLOR;\n\t\t}\n\t}\n\n\tgetBorderColor(state: DBaseStateSet): number | null {\n\t\tif (state.inDisabled) {\n\t\t\treturn DThemeDarkConstants.BORDER_COLOR;\n\t\t} else {\n\t\t\treturn null;\n\t\t}\n\t}\n\n\tgetOutlineColor(state: DBaseStateSet): number | null {\n\t\tif (state.isActive) {\n\t\t\treturn this.getOutlineColorActive(state);\n\t\t}\n\t\treturn this.getOutlineColorNonActive(state);\n\t}\n\n\tprotected getOutlineColorActive(state: DBaseStateSet): number | null {\n\t\treturn this.OUTLINE_COLOR;\n\t}\n\n\tprotected getOutlineColorNonActive(state: DBaseStateSet): number | null {\n\t\treturn super.getOutlineColor(state);\n\t}\n\n\tgetOutlineOffset(state: DBaseStateSet): number {\n\t\tif (state.isActive) {\n\t\t\treturn this.getOutlineOffsetActive(state);\n\t\t}\n\t\treturn this.getOutlineOffsetNonActive(state);\n\t}\n\n\tprotected getOutlineOffsetActive(state: DBaseStateSet): number {\n\t\treturn -1;\n\t}\n\n\tprotected getOutlineOffsetNonActive(state: DBaseStateSet): number {\n\t\treturn super.getOutlineOffset(state);\n\t}\n\n\tgetHeight(): DCoordinateSize {\n\t\treturn 30;\n\t}\n\n\tgetWidth(): DCoordinateSize {\n\t\treturn 100;\n\t}\n\n\tgetTextAlignHorizontal(): DAlignHorizontal {\n\t\treturn DAlignHorizontal.CENTER;\n\t}\n\n\tgetPaddingLeft(): number {\n\t\treturn 10;\n\t}\n\n\tgetPaddingRight(): number {\n\t\treturn 10;\n\t}\n\n\tisToggle(): boolean {\n\t\treturn false;\n\t}\n\n\tgetWhen(): DButtonBaseWhen {\n\t\treturn DButtonBaseWhen.CLICKED;\n\t}\n\n\tgetCursor(state: DBaseStateSet): string {\n\t\tif (!state.isActionable) {\n\t\t\treturn \"\";\n\t\t}\n\t\treturn \"pointer\";\n\t}\n}\n"]}
@@ -3,16 +3,12 @@
3
3
  * SPDX-License-Identifier: Apache-2.0
4
4
  */
5
5
  import { __extends } from "tslib";
6
- import { DBorderMask } from "../../d-border-mask";
7
6
  import { DThemeDarkButton } from "./d-theme-dark-button";
8
7
  var DThemeDarkInputBooleanButtonOff = /** @class */ (function (_super) {
9
8
  __extends(DThemeDarkInputBooleanButtonOff, _super);
10
9
  function DThemeDarkInputBooleanButtonOff() {
11
10
  return _super !== null && _super.apply(this, arguments) || this;
12
11
  }
13
- DThemeDarkInputBooleanButtonOff.prototype.getBorderMask = function () {
14
- return DBorderMask.RIGHT;
15
- };
16
12
  DThemeDarkInputBooleanButtonOff.prototype.isToggle = function () {
17
13
  return true;
18
14
  };
@@ -1 +1 @@
1
- {"version":3,"file":"d-theme-dark-input-boolean-button-off.js","sourceRoot":"","sources":["../../../../../src/main/typescript/wcardinal/ui/theme/dark/d-theme-dark-input-boolean-button-off.ts"],"names":[],"mappings":"AAAA;;;GAGG;;AAEH,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAGlD,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAEzD;IACS,mDAAwB;IADjC;;IAaA,CAAC;IATA,uDAAa,GAAb;QACC,OAAO,WAAW,CAAC,KAAK,CAAC;IAC1B,CAAC;IAED,kDAAQ,GAAR;QACC,OAAO,IAAI,CAAC;IACb,CAAC;IAGF,sCAAC;AAAD,CAAC,AAbD,CACS,gBAAgB,GAYxB","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { DBorderMask } from \"../../d-border-mask\";\nimport { DThemeInputBooleanButtonOff } from \"../../d-input-boolean-button-off\";\nimport { DStateAwareOrValueMightBe } from \"../../d-state-aware\";\nimport { DThemeDarkButton } from \"./d-theme-dark-button\";\n\nexport abstract class DThemeDarkInputBooleanButtonOff\n\textends DThemeDarkButton<string>\n\timplements DThemeInputBooleanButtonOff\n{\n\tgetBorderMask(): DBorderMask {\n\t\treturn DBorderMask.RIGHT;\n\t}\n\n\tisToggle(): boolean {\n\t\treturn true;\n\t}\n\n\tabstract newTextValue(): DStateAwareOrValueMightBe<string>;\n}\n"]}
1
+ {"version":3,"file":"d-theme-dark-input-boolean-button-off.js","sourceRoot":"","sources":["../../../../../src/main/typescript/wcardinal/ui/theme/dark/d-theme-dark-input-boolean-button-off.ts"],"names":[],"mappings":"AAAA;;;GAGG;;AAIH,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAEzD;IACS,mDAAwB;IADjC;;IASA,CAAC;IALA,kDAAQ,GAAR;QACC,OAAO,IAAI,CAAC;IACb,CAAC;IAGF,sCAAC;AAAD,CAAC,AATD,CACS,gBAAgB,GAQxB","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { DThemeInputBooleanButtonOff } from \"../../d-input-boolean-button-off\";\nimport { DStateAwareOrValueMightBe } from \"../../d-state-aware\";\nimport { DThemeDarkButton } from \"./d-theme-dark-button\";\n\nexport abstract class DThemeDarkInputBooleanButtonOff\n\textends DThemeDarkButton<string>\n\timplements DThemeInputBooleanButtonOff\n{\n\tisToggle(): boolean {\n\t\treturn true;\n\t}\n\n\tabstract newTextValue(): DStateAwareOrValueMightBe<string>;\n}\n"]}
@@ -3,16 +3,12 @@
3
3
  * SPDX-License-Identifier: Apache-2.0
4
4
  */
5
5
  import { __extends } from "tslib";
6
- import { DBorderMask } from "../../d-border-mask";
7
6
  import { DThemeDarkButton } from "./d-theme-dark-button";
8
7
  var DThemeDarkInputBooleanButtonOn = /** @class */ (function (_super) {
9
8
  __extends(DThemeDarkInputBooleanButtonOn, _super);
10
9
  function DThemeDarkInputBooleanButtonOn() {
11
10
  return _super !== null && _super.apply(this, arguments) || this;
12
11
  }
13
- DThemeDarkInputBooleanButtonOn.prototype.getBorderMask = function () {
14
- return DBorderMask.LEFT;
15
- };
16
12
  DThemeDarkInputBooleanButtonOn.prototype.isToggle = function () {
17
13
  return true;
18
14
  };
@@ -1 +1 @@
1
- {"version":3,"file":"d-theme-dark-input-boolean-button-on.js","sourceRoot":"","sources":["../../../../../src/main/typescript/wcardinal/ui/theme/dark/d-theme-dark-input-boolean-button-on.ts"],"names":[],"mappings":"AAAA;;;GAGG;;AAEH,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAGlD,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAEzD;IACS,kDAAwB;IADjC;;IAaA,CAAC;IATA,sDAAa,GAAb;QACC,OAAO,WAAW,CAAC,IAAI,CAAC;IACzB,CAAC;IAED,iDAAQ,GAAR;QACC,OAAO,IAAI,CAAC;IACb,CAAC;IAGF,qCAAC;AAAD,CAAC,AAbD,CACS,gBAAgB,GAYxB","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { DBorderMask } from \"../../d-border-mask\";\nimport { DThemeInputBooleanButtonOn } from \"../../d-input-boolean-button-on\";\nimport { DStateAwareOrValueMightBe } from \"../../d-state-aware\";\nimport { DThemeDarkButton } from \"./d-theme-dark-button\";\n\nexport abstract class DThemeDarkInputBooleanButtonOn\n\textends DThemeDarkButton<string>\n\timplements DThemeInputBooleanButtonOn\n{\n\tgetBorderMask(): DBorderMask {\n\t\treturn DBorderMask.LEFT;\n\t}\n\n\tisToggle(): boolean {\n\t\treturn true;\n\t}\n\n\tabstract newTextValue(): DStateAwareOrValueMightBe<string>;\n}\n"]}
1
+ {"version":3,"file":"d-theme-dark-input-boolean-button-on.js","sourceRoot":"","sources":["../../../../../src/main/typescript/wcardinal/ui/theme/dark/d-theme-dark-input-boolean-button-on.ts"],"names":[],"mappings":"AAAA;;;GAGG;;AAIH,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAEzD;IACS,kDAAwB;IADjC;;IASA,CAAC;IALA,iDAAQ,GAAR;QACC,OAAO,IAAI,CAAC;IACb,CAAC;IAGF,qCAAC;AAAD,CAAC,AATD,CACS,gBAAgB,GAQxB","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { DThemeInputBooleanButtonOn } from \"../../d-input-boolean-button-on\";\nimport { DStateAwareOrValueMightBe } from \"../../d-state-aware\";\nimport { DThemeDarkButton } from \"./d-theme-dark-button\";\n\nexport abstract class DThemeDarkInputBooleanButtonOn\n\textends DThemeDarkButton<string>\n\timplements DThemeInputBooleanButtonOn\n{\n\tisToggle(): boolean {\n\t\treturn true;\n\t}\n\n\tabstract newTextValue(): DStateAwareOrValueMightBe<string>;\n}\n"]}
@@ -71,7 +71,7 @@ var DThemeDarkInput = /** @class */ (function (_super) {
71
71
  return true;
72
72
  };
73
73
  DThemeDarkInput.prototype.getElementStyleBorder = function (state) {
74
- return "border: 1px solid transparent; box-sizing: border-box;";
74
+ return "border: 1.5px solid transparent; box-sizing: border-box;";
75
75
  };
76
76
  return DThemeDarkInput;
77
77
  }(DThemeDarkHtmlElement));
@@ -1 +1 @@
1
- {"version":3,"file":"d-theme-dark-input.js","sourceRoot":"","sources":["../../../../../src/main/typescript/wcardinal/ui/theme/dark/d-theme-dark-input.ts"],"names":[],"mappings":"AAAA;;;GAGG;;AAMH,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAC9C,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC/D,OAAO,EAAE,qBAAqB,EAAE,MAAM,6BAA6B,CAAC;AAEpE,IAAM,gBAAgB,GAAG;IACxB,OAAO,IAAI,CAAC;AACb,CAAC,CAAC;AAEF,IAAM,kBAAkB,GAAG,UAAQ,IAAY;IAC9C,OAAO,IAAW,CAAC;AACpB,CAAC,CAAC;AAEF;IAMS,mCAAqC;IAN9C;QAAA,qEAmFC;QA1EmB,sBAAgB,GAAG,mBAAmB,CAAC,yBAAyB,CAAC;QACjE,8BAAwB,GAAG,OAAO,CAAC,QAAQ,CAAC,KAAI,CAAC,gBAAgB,EAAE,KAAK,CAAC,CAAC;;IAyE9F,CAAC;IAvEA,4CAAkB,GAAlB,UAAmB,KAAoB;QACtC,IAAI,KAAK,CAAC,UAAU,IAAI,KAAK,CAAC,UAAU,EAAE;YACzC,OAAO,IAAI,CAAC;SACZ;aAAM,IAAI,KAAK,CAAC,SAAS,EAAE;YAC3B,OAAO,IAAI,CAAC,wBAAwB,CAAC;SACrC;aAAM;YACN,OAAO,IAAI,CAAC,gBAAgB,CAAC;SAC7B;IACF,CAAC;IAED,wCAAc,GAAd,UAAe,KAAoB;QAClC,IAAI,KAAK,CAAC,SAAS,EAAE;YACpB,OAAO,mBAAmB,CAAC,aAAa,CAAC;SACzC;QACD,OAAO,IAAI,CAAC;IACb,CAAC;IAED,mCAAS,GAAT;QACC,OAAO,IAAI,CAAC,aAAa,EAAE,CAAC;IAC7B,CAAC;IAED,kCAAQ,GAAR;QACC,OAAO,GAAG,CAAC;IACZ,CAAC;IAED,wCAAc,GAAd;QACC,OAAO,EAAE,CAAC;IACX,CAAC;IAED,wCAAc,GAAd;QACC,OAAO,EAAE,CAAC;IACX,CAAC;IAED,yCAAe,GAAf;QACC,OAAO,EAAE,CAAC;IACX,CAAC;IAED,mCAAS,GAAT,UAAU,KAAoB;QAC7B,IAAI,CAAC,KAAK,CAAC,YAAY,EAAE;YACxB,OAAO,EAAE,CAAC;SACV;QACD,OAAO,MAAM,CAAC;IACf,CAAC;IAED,6CAAmB,GAAnB;QACC,OAAO,IAAI,CAAC,gBAAgB,EAAE,CAAC;IAChC,CAAC;IAED,+CAAqB,GAArB;QACC,OAAO,kBAAkB,CAAC;IAC3B,CAAC;IAED,6CAAmB,GAAnB;QACC,OAAO,gBAAgB,CAAC;IACzB,CAAC;IAUD,mCAAS,GAAT;QACC,OAAO,IAAI,CAAC;IACb,CAAC;IAES,+CAAqB,GAA/B,UAAgC,KAAoB;QACnD,OAAO,wDAAwD,CAAC;IACjE,CAAC;IACF,sBAAC;AAAD,CAAC,AAnFD,CAMS,qBAAqB,GA6E7B","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { DBaseStateSet } from \"../../d-base-state-set\";\nimport { DCoordinateSize } from \"../../d-coordinate\";\nimport { DThemeInput } from \"../../d-input\";\nimport { UtilHtmlElementCreator } from \"../../util/util-html-element\";\nimport { UtilRgb } from \"../../util/util-rgb\";\nimport { DThemeDarkConstants } from \"./d-theme-dark-constants\";\nimport { DThemeDarkHtmlElement } from \"./d-theme-dark-html-element\";\n\nconst editingValidator = (): string | null => {\n\treturn null;\n};\n\nconst editingUnformatter = <VALUE>(text: string): VALUE => {\n\treturn text as any;\n};\n\nexport abstract class DThemeDarkInput<\n\t\tVALUE = unknown,\n\t\tELEMENT extends HTMLInputElement | HTMLTextAreaElement =\n\t\t\t| HTMLInputElement\n\t\t\t| HTMLTextAreaElement\n\t>\n\textends DThemeDarkHtmlElement<VALUE, ELEMENT>\n\timplements DThemeInput<VALUE, ELEMENT>\n{\n\tprotected readonly BACKGROUND_COLOR = DThemeDarkConstants.BACKGROUND_COLOR_ON_BOARD;\n\tprotected readonly BACKGROUND_COLOR_HOVERED = UtilRgb.brighten(this.BACKGROUND_COLOR, 0.017);\n\n\tgetBackgroundColor(state: DBaseStateSet): number | null {\n\t\tif (state.inDisabled || state.inReadOnly) {\n\t\t\treturn null;\n\t\t} else if (state.isHovered) {\n\t\t\treturn this.BACKGROUND_COLOR_HOVERED;\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\tif (state.isInvalid) {\n\t\t\treturn DThemeDarkConstants.INVALID_COLOR;\n\t\t}\n\t\treturn null;\n\t}\n\n\tgetHeight(): DCoordinateSize {\n\t\treturn this.getLineHeight();\n\t}\n\n\tgetWidth(): DCoordinateSize {\n\t\treturn 100;\n\t}\n\n\tgetPlaceholder(): string {\n\t\treturn \"\";\n\t}\n\n\tgetPaddingLeft(): number {\n\t\treturn 10;\n\t}\n\n\tgetPaddingRight(): number {\n\t\treturn 10;\n\t}\n\n\tgetCursor(state: DBaseStateSet): string {\n\t\tif (!state.isActionable) {\n\t\t\treturn \"\";\n\t\t}\n\t\treturn \"text\";\n\t}\n\n\tgetEditingFormatter(): (value: VALUE, caller: any) => string {\n\t\treturn this.getTextFormatter();\n\t}\n\n\tgetEditingUnformatter(): (text: string, caller: any) => VALUE {\n\t\treturn editingUnformatter;\n\t}\n\n\tgetEditingValidator(): (value: VALUE, caller: any) => string | null {\n\t\treturn editingValidator;\n\t}\n\n\tabstract getElementCreator(): UtilHtmlElementCreator<ELEMENT>;\n\n\tabstract getClipperCreator(): UtilHtmlElementCreator<HTMLDivElement>;\n\n\tabstract getBeforeCreator(): UtilHtmlElementCreator<HTMLDivElement>;\n\n\tabstract getAfterCreator(): UtilHtmlElementCreator<HTMLDivElement>;\n\n\tgetSelect(): boolean {\n\t\treturn true;\n\t}\n\n\tprotected getElementStyleBorder(state: DBaseStateSet): string {\n\t\treturn `border: 1px solid transparent; box-sizing: border-box;`;\n\t}\n}\n"]}
1
+ {"version":3,"file":"d-theme-dark-input.js","sourceRoot":"","sources":["../../../../../src/main/typescript/wcardinal/ui/theme/dark/d-theme-dark-input.ts"],"names":[],"mappings":"AAAA;;;GAGG;;AAMH,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAC9C,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC/D,OAAO,EAAE,qBAAqB,EAAE,MAAM,6BAA6B,CAAC;AAEpE,IAAM,gBAAgB,GAAG;IACxB,OAAO,IAAI,CAAC;AACb,CAAC,CAAC;AAEF,IAAM,kBAAkB,GAAG,UAAQ,IAAY;IAC9C,OAAO,IAAW,CAAC;AACpB,CAAC,CAAC;AAEF;IAMS,mCAAqC;IAN9C;QAAA,qEAmFC;QA1EmB,sBAAgB,GAAG,mBAAmB,CAAC,yBAAyB,CAAC;QACjE,8BAAwB,GAAG,OAAO,CAAC,QAAQ,CAAC,KAAI,CAAC,gBAAgB,EAAE,KAAK,CAAC,CAAC;;IAyE9F,CAAC;IAvEA,4CAAkB,GAAlB,UAAmB,KAAoB;QACtC,IAAI,KAAK,CAAC,UAAU,IAAI,KAAK,CAAC,UAAU,EAAE;YACzC,OAAO,IAAI,CAAC;SACZ;aAAM,IAAI,KAAK,CAAC,SAAS,EAAE;YAC3B,OAAO,IAAI,CAAC,wBAAwB,CAAC;SACrC;aAAM;YACN,OAAO,IAAI,CAAC,gBAAgB,CAAC;SAC7B;IACF,CAAC;IAED,wCAAc,GAAd,UAAe,KAAoB;QAClC,IAAI,KAAK,CAAC,SAAS,EAAE;YACpB,OAAO,mBAAmB,CAAC,aAAa,CAAC;SACzC;QACD,OAAO,IAAI,CAAC;IACb,CAAC;IAED,mCAAS,GAAT;QACC,OAAO,IAAI,CAAC,aAAa,EAAE,CAAC;IAC7B,CAAC;IAED,kCAAQ,GAAR;QACC,OAAO,GAAG,CAAC;IACZ,CAAC;IAED,wCAAc,GAAd;QACC,OAAO,EAAE,CAAC;IACX,CAAC;IAED,wCAAc,GAAd;QACC,OAAO,EAAE,CAAC;IACX,CAAC;IAED,yCAAe,GAAf;QACC,OAAO,EAAE,CAAC;IACX,CAAC;IAED,mCAAS,GAAT,UAAU,KAAoB;QAC7B,IAAI,CAAC,KAAK,CAAC,YAAY,EAAE;YACxB,OAAO,EAAE,CAAC;SACV;QACD,OAAO,MAAM,CAAC;IACf,CAAC;IAED,6CAAmB,GAAnB;QACC,OAAO,IAAI,CAAC,gBAAgB,EAAE,CAAC;IAChC,CAAC;IAED,+CAAqB,GAArB;QACC,OAAO,kBAAkB,CAAC;IAC3B,CAAC;IAED,6CAAmB,GAAnB;QACC,OAAO,gBAAgB,CAAC;IACzB,CAAC;IAUD,mCAAS,GAAT;QACC,OAAO,IAAI,CAAC;IACb,CAAC;IAES,+CAAqB,GAA/B,UAAgC,KAAoB;QACnD,OAAO,0DAA0D,CAAC;IACnE,CAAC;IACF,sBAAC;AAAD,CAAC,AAnFD,CAMS,qBAAqB,GA6E7B","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { DBaseStateSet } from \"../../d-base-state-set\";\nimport { DCoordinateSize } from \"../../d-coordinate\";\nimport { DThemeInput } from \"../../d-input\";\nimport { UtilHtmlElementCreator } from \"../../util/util-html-element\";\nimport { UtilRgb } from \"../../util/util-rgb\";\nimport { DThemeDarkConstants } from \"./d-theme-dark-constants\";\nimport { DThemeDarkHtmlElement } from \"./d-theme-dark-html-element\";\n\nconst editingValidator = (): string | null => {\n\treturn null;\n};\n\nconst editingUnformatter = <VALUE>(text: string): VALUE => {\n\treturn text as any;\n};\n\nexport abstract class DThemeDarkInput<\n\t\tVALUE = unknown,\n\t\tELEMENT extends HTMLInputElement | HTMLTextAreaElement =\n\t\t\t| HTMLInputElement\n\t\t\t| HTMLTextAreaElement\n\t>\n\textends DThemeDarkHtmlElement<VALUE, ELEMENT>\n\timplements DThemeInput<VALUE, ELEMENT>\n{\n\tprotected readonly BACKGROUND_COLOR = DThemeDarkConstants.BACKGROUND_COLOR_ON_BOARD;\n\tprotected readonly BACKGROUND_COLOR_HOVERED = UtilRgb.brighten(this.BACKGROUND_COLOR, 0.017);\n\n\tgetBackgroundColor(state: DBaseStateSet): number | null {\n\t\tif (state.inDisabled || state.inReadOnly) {\n\t\t\treturn null;\n\t\t} else if (state.isHovered) {\n\t\t\treturn this.BACKGROUND_COLOR_HOVERED;\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\tif (state.isInvalid) {\n\t\t\treturn DThemeDarkConstants.INVALID_COLOR;\n\t\t}\n\t\treturn null;\n\t}\n\n\tgetHeight(): DCoordinateSize {\n\t\treturn this.getLineHeight();\n\t}\n\n\tgetWidth(): DCoordinateSize {\n\t\treturn 100;\n\t}\n\n\tgetPlaceholder(): string {\n\t\treturn \"\";\n\t}\n\n\tgetPaddingLeft(): number {\n\t\treturn 10;\n\t}\n\n\tgetPaddingRight(): number {\n\t\treturn 10;\n\t}\n\n\tgetCursor(state: DBaseStateSet): string {\n\t\tif (!state.isActionable) {\n\t\t\treturn \"\";\n\t\t}\n\t\treturn \"text\";\n\t}\n\n\tgetEditingFormatter(): (value: VALUE, caller: any) => string {\n\t\treturn this.getTextFormatter();\n\t}\n\n\tgetEditingUnformatter(): (text: string, caller: any) => VALUE {\n\t\treturn editingUnformatter;\n\t}\n\n\tgetEditingValidator(): (value: VALUE, caller: any) => string | null {\n\t\treturn editingValidator;\n\t}\n\n\tabstract getElementCreator(): UtilHtmlElementCreator<ELEMENT>;\n\n\tabstract getClipperCreator(): UtilHtmlElementCreator<HTMLDivElement>;\n\n\tabstract getBeforeCreator(): UtilHtmlElementCreator<HTMLDivElement>;\n\n\tabstract getAfterCreator(): UtilHtmlElementCreator<HTMLDivElement>;\n\n\tgetSelect(): boolean {\n\t\treturn true;\n\t}\n\n\tprotected getElementStyleBorder(state: DBaseStateSet): string {\n\t\treturn `border: 1.5px solid transparent; box-sizing: border-box;`;\n\t}\n}\n"]}
@@ -73,7 +73,7 @@ var DThemeWhiteButtonBase = /** @class */ (function (_super) {
73
73
  return this.getOutlineOffsetNonActive(state);
74
74
  };
75
75
  DThemeWhiteButtonBase.prototype.getOutlineOffsetActive = function (state) {
76
- return -1.5;
76
+ return -1;
77
77
  };
78
78
  DThemeWhiteButtonBase.prototype.getOutlineOffsetNonActive = function (state) {
79
79
  return _super.prototype.getOutlineOffset.call(this, state);
@@ -1 +1 @@
1
- {"version":3,"file":"d-theme-white-button-base.js","sourceRoot":"","sources":["../../../../../src/main/typescript/wcardinal/ui/theme/white/d-theme-white-button-base.ts"],"names":[],"mappings":"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","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { DAlignHorizontal } from \"../../d-align-horizontal\";\nimport { DBaseStateSet } from \"../../d-base-state-set\";\nimport { DThemeButtonBase } from \"../../d-button-base\";\nimport { DButtonBaseWhen } from \"../../d-button-base-when\";\nimport { DCoordinateSize } from \"../../d-coordinate\";\nimport { UtilRgb } from \"../../util/util-rgb\";\nimport { DThemeWhiteConstants } from \"./d-theme-white-constants\";\nimport { DThemeWhiteImageBase } from \"./d-theme-white-image-base\";\n\nexport class DThemeWhiteButtonBase<VALUE = unknown>\n\textends DThemeWhiteImageBase<VALUE>\n\timplements DThemeButtonBase<VALUE>\n{\n\tprotected readonly BACKGROUND_COLOR: number;\n\tprotected readonly BACKGROUND_COLOR_HOVERED: number;\n\tprotected readonly BACKGROUND_COLOR_PRESSED: number;\n\n\tprotected readonly OUTLINE_COLOR: number;\n\n\tconstructor(\n\t\tbackgroundColor: number = 0xffffff,\n\t\thover: number = 0.017,\n\t\tpressed: number = 0.034\n\t) {\n\t\tsuper();\n\t\tthis.BACKGROUND_COLOR = backgroundColor;\n\t\tthis.BACKGROUND_COLOR_HOVERED = UtilRgb.darken(backgroundColor, hover);\n\t\tthis.BACKGROUND_COLOR_PRESSED = UtilRgb.darken(backgroundColor, pressed);\n\n\t\tthis.OUTLINE_COLOR = UtilRgb.brighten(backgroundColor, 0.75);\n\t}\n\n\tgetBackgroundColor(state: DBaseStateSet): number | null {\n\t\tif (state.inDisabled) {\n\t\t\treturn null;\n\t\t} else if (state.isActive) {\n\t\t\treturn DThemeWhiteConstants.HIGHLIGHT_COLOR;\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 this.BACKGROUND_COLOR;\n\t\t}\n\t}\n\n\tgetColor(state: DBaseStateSet): number {\n\t\tif (state.inDisabled || !state.isActive) {\n\t\t\treturn super.getColor(state);\n\t\t} else {\n\t\t\treturn DThemeWhiteConstants.ACTIVE_COLOR;\n\t\t}\n\t}\n\n\tgetBorderColor(state: DBaseStateSet): number | null {\n\t\tif (state.inDisabled || !state.isActive) {\n\t\t\treturn DThemeWhiteConstants.BORDER_COLOR;\n\t\t} else {\n\t\t\treturn null;\n\t\t}\n\t}\n\n\tgetOutlineColor(state: DBaseStateSet): number | null {\n\t\tif (state.isActive) {\n\t\t\treturn this.getOutlineColorActive(state);\n\t\t}\n\t\treturn this.getOutlineColorNonActive(state);\n\t}\n\n\tprotected getOutlineColorActive(state: DBaseStateSet): number | null {\n\t\treturn this.OUTLINE_COLOR;\n\t}\n\n\tprotected getOutlineColorNonActive(state: DBaseStateSet): number | null {\n\t\treturn super.getOutlineColor(state);\n\t}\n\n\tgetOutlineOffset(state: DBaseStateSet): number {\n\t\tif (state.isActive) {\n\t\t\treturn this.getOutlineOffsetActive(state);\n\t\t}\n\t\treturn this.getOutlineOffsetNonActive(state);\n\t}\n\n\tprotected getOutlineOffsetActive(state: DBaseStateSet): number {\n\t\treturn -1.5;\n\t}\n\n\tprotected getOutlineOffsetNonActive(state: DBaseStateSet): number {\n\t\treturn super.getOutlineOffset(state);\n\t}\n\n\tgetHeight(): DCoordinateSize {\n\t\treturn 30;\n\t}\n\n\tgetWidth(): DCoordinateSize {\n\t\treturn 100;\n\t}\n\n\tgetTextAlignHorizontal(): DAlignHorizontal {\n\t\treturn DAlignHorizontal.CENTER;\n\t}\n\n\tgetPaddingLeft(): number {\n\t\treturn 10;\n\t}\n\n\tgetPaddingRight(): number {\n\t\treturn 10;\n\t}\n\n\tisToggle(): boolean {\n\t\treturn false;\n\t}\n\n\tgetWhen(): DButtonBaseWhen {\n\t\treturn DButtonBaseWhen.CLICKED;\n\t}\n\n\tgetCursor(state: DBaseStateSet): string {\n\t\tif (!state.isActionable) {\n\t\t\treturn \"\";\n\t\t}\n\t\treturn \"pointer\";\n\t}\n}\n"]}
1
+ {"version":3,"file":"d-theme-white-button-base.js","sourceRoot":"","sources":["../../../../../src/main/typescript/wcardinal/ui/theme/white/d-theme-white-button-base.ts"],"names":[],"mappings":"AAAA;;;GAGG;;AAEH,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAG5D,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAE3D,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAC9C,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAC;AAElE;IACS,yCAA2B;IASnC,+BACC,eAAkC,EAClC,KAAqB,EACrB,OAAuB;QAFvB,gCAAA,EAAA,0BAAkC;QAClC,sBAAA,EAAA,aAAqB;QACrB,wBAAA,EAAA,eAAuB;QAHxB,YAKC,iBAAO,SAMP;QALA,KAAI,CAAC,gBAAgB,GAAG,eAAe,CAAC;QACxC,KAAI,CAAC,wBAAwB,GAAG,OAAO,CAAC,MAAM,CAAC,eAAe,EAAE,KAAK,CAAC,CAAC;QACvE,KAAI,CAAC,wBAAwB,GAAG,OAAO,CAAC,MAAM,CAAC,eAAe,EAAE,OAAO,CAAC,CAAC;QAEzE,KAAI,CAAC,aAAa,GAAG,OAAO,CAAC,QAAQ,CAAC,eAAe,EAAE,IAAI,CAAC,CAAC;;IAC9D,CAAC;IAED,kDAAkB,GAAlB,UAAmB,KAAoB;QACtC,IAAI,KAAK,CAAC,UAAU,EAAE;YACrB,OAAO,IAAI,CAAC;SACZ;aAAM,IAAI,KAAK,CAAC,QAAQ,EAAE;YAC1B,OAAO,oBAAoB,CAAC,eAAe,CAAC;SAC5C;aAAM,IAAI,KAAK,CAAC,SAAS,EAAE;YAC3B,OAAO,IAAI,CAAC,wBAAwB,CAAC;SACrC;aAAM,IAAI,KAAK,CAAC,SAAS,EAAE;YAC3B,OAAO,IAAI,CAAC,wBAAwB,CAAC;SACrC;aAAM;YACN,OAAO,IAAI,CAAC,gBAAgB,CAAC;SAC7B;IACF,CAAC;IAED,wCAAQ,GAAR,UAAS,KAAoB;QAC5B,IAAI,KAAK,CAAC,UAAU,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE;YACxC,OAAO,iBAAM,QAAQ,YAAC,KAAK,CAAC,CAAC;SAC7B;aAAM;YACN,OAAO,oBAAoB,CAAC,YAAY,CAAC;SACzC;IACF,CAAC;IAED,8CAAc,GAAd,UAAe,KAAoB;QAClC,IAAI,KAAK,CAAC,UAAU,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE;YACxC,OAAO,oBAAoB,CAAC,YAAY,CAAC;SACzC;aAAM;YACN,OAAO,IAAI,CAAC;SACZ;IACF,CAAC;IAED,+CAAe,GAAf,UAAgB,KAAoB;QACnC,IAAI,KAAK,CAAC,QAAQ,EAAE;YACnB,OAAO,IAAI,CAAC,qBAAqB,CAAC,KAAK,CAAC,CAAC;SACzC;QACD,OAAO,IAAI,CAAC,wBAAwB,CAAC,KAAK,CAAC,CAAC;IAC7C,CAAC;IAES,qDAAqB,GAA/B,UAAgC,KAAoB;QACnD,OAAO,IAAI,CAAC,aAAa,CAAC;IAC3B,CAAC;IAES,wDAAwB,GAAlC,UAAmC,KAAoB;QACtD,OAAO,iBAAM,eAAe,YAAC,KAAK,CAAC,CAAC;IACrC,CAAC;IAED,gDAAgB,GAAhB,UAAiB,KAAoB;QACpC,IAAI,KAAK,CAAC,QAAQ,EAAE;YACnB,OAAO,IAAI,CAAC,sBAAsB,CAAC,KAAK,CAAC,CAAC;SAC1C;QACD,OAAO,IAAI,CAAC,yBAAyB,CAAC,KAAK,CAAC,CAAC;IAC9C,CAAC;IAES,sDAAsB,GAAhC,UAAiC,KAAoB;QACpD,OAAO,CAAC,CAAC,CAAC;IACX,CAAC;IAES,yDAAyB,GAAnC,UAAoC,KAAoB;QACvD,OAAO,iBAAM,gBAAgB,YAAC,KAAK,CAAC,CAAC;IACtC,CAAC;IAED,yCAAS,GAAT;QACC,OAAO,EAAE,CAAC;IACX,CAAC;IAED,wCAAQ,GAAR;QACC,OAAO,GAAG,CAAC;IACZ,CAAC;IAED,sDAAsB,GAAtB;QACC,OAAO,gBAAgB,CAAC,MAAM,CAAC;IAChC,CAAC;IAED,8CAAc,GAAd;QACC,OAAO,EAAE,CAAC;IACX,CAAC;IAED,+CAAe,GAAf;QACC,OAAO,EAAE,CAAC;IACX,CAAC;IAED,wCAAQ,GAAR;QACC,OAAO,KAAK,CAAC;IACd,CAAC;IAED,uCAAO,GAAP;QACC,OAAO,eAAe,CAAC,OAAO,CAAC;IAChC,CAAC;IAED,yCAAS,GAAT,UAAU,KAAoB;QAC7B,IAAI,CAAC,KAAK,CAAC,YAAY,EAAE;YACxB,OAAO,EAAE,CAAC;SACV;QACD,OAAO,SAAS,CAAC;IAClB,CAAC;IACF,4BAAC;AAAD,CAAC,AArHD,CACS,oBAAoB,GAoH5B","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { DAlignHorizontal } from \"../../d-align-horizontal\";\nimport { DBaseStateSet } from \"../../d-base-state-set\";\nimport { DThemeButtonBase } from \"../../d-button-base\";\nimport { DButtonBaseWhen } from \"../../d-button-base-when\";\nimport { DCoordinateSize } from \"../../d-coordinate\";\nimport { UtilRgb } from \"../../util/util-rgb\";\nimport { DThemeWhiteConstants } from \"./d-theme-white-constants\";\nimport { DThemeWhiteImageBase } from \"./d-theme-white-image-base\";\n\nexport class DThemeWhiteButtonBase<VALUE = unknown>\n\textends DThemeWhiteImageBase<VALUE>\n\timplements DThemeButtonBase<VALUE>\n{\n\tprotected readonly BACKGROUND_COLOR: number;\n\tprotected readonly BACKGROUND_COLOR_HOVERED: number;\n\tprotected readonly BACKGROUND_COLOR_PRESSED: number;\n\n\tprotected readonly OUTLINE_COLOR: number;\n\n\tconstructor(\n\t\tbackgroundColor: number = 0xffffff,\n\t\thover: number = 0.017,\n\t\tpressed: number = 0.034\n\t) {\n\t\tsuper();\n\t\tthis.BACKGROUND_COLOR = backgroundColor;\n\t\tthis.BACKGROUND_COLOR_HOVERED = UtilRgb.darken(backgroundColor, hover);\n\t\tthis.BACKGROUND_COLOR_PRESSED = UtilRgb.darken(backgroundColor, pressed);\n\n\t\tthis.OUTLINE_COLOR = UtilRgb.brighten(backgroundColor, 0.75);\n\t}\n\n\tgetBackgroundColor(state: DBaseStateSet): number | null {\n\t\tif (state.inDisabled) {\n\t\t\treturn null;\n\t\t} else if (state.isActive) {\n\t\t\treturn DThemeWhiteConstants.HIGHLIGHT_COLOR;\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 this.BACKGROUND_COLOR;\n\t\t}\n\t}\n\n\tgetColor(state: DBaseStateSet): number {\n\t\tif (state.inDisabled || !state.isActive) {\n\t\t\treturn super.getColor(state);\n\t\t} else {\n\t\t\treturn DThemeWhiteConstants.ACTIVE_COLOR;\n\t\t}\n\t}\n\n\tgetBorderColor(state: DBaseStateSet): number | null {\n\t\tif (state.inDisabled || !state.isActive) {\n\t\t\treturn DThemeWhiteConstants.BORDER_COLOR;\n\t\t} else {\n\t\t\treturn null;\n\t\t}\n\t}\n\n\tgetOutlineColor(state: DBaseStateSet): number | null {\n\t\tif (state.isActive) {\n\t\t\treturn this.getOutlineColorActive(state);\n\t\t}\n\t\treturn this.getOutlineColorNonActive(state);\n\t}\n\n\tprotected getOutlineColorActive(state: DBaseStateSet): number | null {\n\t\treturn this.OUTLINE_COLOR;\n\t}\n\n\tprotected getOutlineColorNonActive(state: DBaseStateSet): number | null {\n\t\treturn super.getOutlineColor(state);\n\t}\n\n\tgetOutlineOffset(state: DBaseStateSet): number {\n\t\tif (state.isActive) {\n\t\t\treturn this.getOutlineOffsetActive(state);\n\t\t}\n\t\treturn this.getOutlineOffsetNonActive(state);\n\t}\n\n\tprotected getOutlineOffsetActive(state: DBaseStateSet): number {\n\t\treturn -1;\n\t}\n\n\tprotected getOutlineOffsetNonActive(state: DBaseStateSet): number {\n\t\treturn super.getOutlineOffset(state);\n\t}\n\n\tgetHeight(): DCoordinateSize {\n\t\treturn 30;\n\t}\n\n\tgetWidth(): DCoordinateSize {\n\t\treturn 100;\n\t}\n\n\tgetTextAlignHorizontal(): DAlignHorizontal {\n\t\treturn DAlignHorizontal.CENTER;\n\t}\n\n\tgetPaddingLeft(): number {\n\t\treturn 10;\n\t}\n\n\tgetPaddingRight(): number {\n\t\treturn 10;\n\t}\n\n\tisToggle(): boolean {\n\t\treturn false;\n\t}\n\n\tgetWhen(): DButtonBaseWhen {\n\t\treturn DButtonBaseWhen.CLICKED;\n\t}\n\n\tgetCursor(state: DBaseStateSet): string {\n\t\tif (!state.isActionable) {\n\t\t\treturn \"\";\n\t\t}\n\t\treturn \"pointer\";\n\t}\n}\n"]}
@@ -3,16 +3,12 @@
3
3
  * SPDX-License-Identifier: Apache-2.0
4
4
  */
5
5
  import { __extends } from "tslib";
6
- import { DBorderMask } from "../../d-border-mask";
7
6
  import { DThemeWhiteButton } from "./d-theme-white-button";
8
7
  var DThemeWhiteInputBooleanButtonOff = /** @class */ (function (_super) {
9
8
  __extends(DThemeWhiteInputBooleanButtonOff, _super);
10
9
  function DThemeWhiteInputBooleanButtonOff() {
11
10
  return _super !== null && _super.apply(this, arguments) || this;
12
11
  }
13
- DThemeWhiteInputBooleanButtonOff.prototype.getBorderMask = function () {
14
- return DBorderMask.RIGHT;
15
- };
16
12
  DThemeWhiteInputBooleanButtonOff.prototype.isToggle = function () {
17
13
  return true;
18
14
  };
@@ -1 +1 @@
1
- {"version":3,"file":"d-theme-white-input-boolean-button-off.js","sourceRoot":"","sources":["../../../../../src/main/typescript/wcardinal/ui/theme/white/d-theme-white-input-boolean-button-off.ts"],"names":[],"mappings":"AAAA;;;GAGG;;AAEH,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAGlD,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAE3D;IACS,oDAAyB;IADlC;;IAaA,CAAC;IATA,wDAAa,GAAb;QACC,OAAO,WAAW,CAAC,KAAK,CAAC;IAC1B,CAAC;IAED,mDAAQ,GAAR;QACC,OAAO,IAAI,CAAC;IACb,CAAC;IAGF,uCAAC;AAAD,CAAC,AAbD,CACS,iBAAiB,GAYzB","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { DBorderMask } from \"../../d-border-mask\";\nimport { DThemeInputBooleanButtonOff } from \"../../d-input-boolean-button-off\";\nimport { DStateAwareOrValueMightBe } from \"../../d-state-aware\";\nimport { DThemeWhiteButton } from \"./d-theme-white-button\";\n\nexport abstract class DThemeWhiteInputBooleanButtonOff\n\textends DThemeWhiteButton<string>\n\timplements DThemeInputBooleanButtonOff\n{\n\tgetBorderMask(): DBorderMask {\n\t\treturn DBorderMask.RIGHT;\n\t}\n\n\tisToggle(): boolean {\n\t\treturn true;\n\t}\n\n\tabstract newTextValue(): DStateAwareOrValueMightBe<string>;\n}\n"]}
1
+ {"version":3,"file":"d-theme-white-input-boolean-button-off.js","sourceRoot":"","sources":["../../../../../src/main/typescript/wcardinal/ui/theme/white/d-theme-white-input-boolean-button-off.ts"],"names":[],"mappings":"AAAA;;;GAGG;;AAIH,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAE3D;IACS,oDAAyB;IADlC;;IASA,CAAC;IALA,mDAAQ,GAAR;QACC,OAAO,IAAI,CAAC;IACb,CAAC;IAGF,uCAAC;AAAD,CAAC,AATD,CACS,iBAAiB,GAQzB","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { DThemeInputBooleanButtonOff } from \"../../d-input-boolean-button-off\";\nimport { DStateAwareOrValueMightBe } from \"../../d-state-aware\";\nimport { DThemeWhiteButton } from \"./d-theme-white-button\";\n\nexport abstract class DThemeWhiteInputBooleanButtonOff\n\textends DThemeWhiteButton<string>\n\timplements DThemeInputBooleanButtonOff\n{\n\tisToggle(): boolean {\n\t\treturn true;\n\t}\n\n\tabstract newTextValue(): DStateAwareOrValueMightBe<string>;\n}\n"]}
@@ -3,16 +3,12 @@
3
3
  * SPDX-License-Identifier: Apache-2.0
4
4
  */
5
5
  import { __extends } from "tslib";
6
- import { DBorderMask } from "../../d-border-mask";
7
6
  import { DThemeWhiteButton } from "./d-theme-white-button";
8
7
  var DThemeWhiteInputBooleanButtonOn = /** @class */ (function (_super) {
9
8
  __extends(DThemeWhiteInputBooleanButtonOn, _super);
10
9
  function DThemeWhiteInputBooleanButtonOn() {
11
10
  return _super !== null && _super.apply(this, arguments) || this;
12
11
  }
13
- DThemeWhiteInputBooleanButtonOn.prototype.getBorderMask = function () {
14
- return DBorderMask.LEFT;
15
- };
16
12
  DThemeWhiteInputBooleanButtonOn.prototype.isToggle = function () {
17
13
  return true;
18
14
  };
@@ -1 +1 @@
1
- {"version":3,"file":"d-theme-white-input-boolean-button-on.js","sourceRoot":"","sources":["../../../../../src/main/typescript/wcardinal/ui/theme/white/d-theme-white-input-boolean-button-on.ts"],"names":[],"mappings":"AAAA;;;GAGG;;AAEH,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAGlD,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAE3D;IACS,mDAAyB;IADlC;;IAaA,CAAC;IATA,uDAAa,GAAb;QACC,OAAO,WAAW,CAAC,IAAI,CAAC;IACzB,CAAC;IAED,kDAAQ,GAAR;QACC,OAAO,IAAI,CAAC;IACb,CAAC;IAGF,sCAAC;AAAD,CAAC,AAbD,CACS,iBAAiB,GAYzB","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { DBorderMask } from \"../../d-border-mask\";\nimport { DThemeInputBooleanButtonOn } from \"../../d-input-boolean-button-on\";\nimport { DStateAwareOrValueMightBe } from \"../../d-state-aware\";\nimport { DThemeWhiteButton } from \"./d-theme-white-button\";\n\nexport abstract class DThemeWhiteInputBooleanButtonOn\n\textends DThemeWhiteButton<string>\n\timplements DThemeInputBooleanButtonOn\n{\n\tgetBorderMask(): DBorderMask {\n\t\treturn DBorderMask.LEFT;\n\t}\n\n\tisToggle(): boolean {\n\t\treturn true;\n\t}\n\n\tabstract newTextValue(): DStateAwareOrValueMightBe<string>;\n}\n"]}
1
+ {"version":3,"file":"d-theme-white-input-boolean-button-on.js","sourceRoot":"","sources":["../../../../../src/main/typescript/wcardinal/ui/theme/white/d-theme-white-input-boolean-button-on.ts"],"names":[],"mappings":"AAAA;;;GAGG;;AAIH,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAE3D;IACS,mDAAyB;IADlC;;IASA,CAAC;IALA,kDAAQ,GAAR;QACC,OAAO,IAAI,CAAC;IACb,CAAC;IAGF,sCAAC;AAAD,CAAC,AATD,CACS,iBAAiB,GAQzB","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { DThemeInputBooleanButtonOn } from \"../../d-input-boolean-button-on\";\nimport { DStateAwareOrValueMightBe } from \"../../d-state-aware\";\nimport { DThemeWhiteButton } from \"./d-theme-white-button\";\n\nexport abstract class DThemeWhiteInputBooleanButtonOn\n\textends DThemeWhiteButton<string>\n\timplements DThemeInputBooleanButtonOn\n{\n\tisToggle(): boolean {\n\t\treturn true;\n\t}\n\n\tabstract newTextValue(): DStateAwareOrValueMightBe<string>;\n}\n"]}
@@ -71,7 +71,7 @@ var DThemeWhiteInput = /** @class */ (function (_super) {
71
71
  return true;
72
72
  };
73
73
  DThemeWhiteInput.prototype.getElementStyleBorder = function (state) {
74
- return "border: 1px solid transparent; box-sizing: border-box;";
74
+ return "border: 1.5px solid transparent; box-sizing: border-box;";
75
75
  };
76
76
  return DThemeWhiteInput;
77
77
  }(DThemeWhiteHtmlElement));
@@ -1 +1 @@
1
- {"version":3,"file":"d-theme-white-input.js","sourceRoot":"","sources":["../../../../../src/main/typescript/wcardinal/ui/theme/white/d-theme-white-input.ts"],"names":[],"mappings":"AAAA;;;GAGG;;AAMH,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAC9C,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,EAAE,sBAAsB,EAAE,MAAM,8BAA8B,CAAC;AAEtE,IAAM,gBAAgB,GAAG;IACxB,OAAO,IAAI,CAAC;AACb,CAAC,CAAC;AAEF,IAAM,kBAAkB,GAAG,UAAQ,IAAY;IAC9C,OAAO,IAAW,CAAC;AACpB,CAAC,CAAC;AAEF;IAMS,oCAAsC;IAN/C;QAAA,qEAmFC;QA1EmB,sBAAgB,GAAG,oBAAoB,CAAC,yBAAyB,CAAC;QAClE,8BAAwB,GAAG,OAAO,CAAC,MAAM,CAAC,KAAI,CAAC,gBAAgB,EAAE,KAAK,CAAC,CAAC;;IAyE5F,CAAC;IAvEA,6CAAkB,GAAlB,UAAmB,KAAoB;QACtC,IAAI,KAAK,CAAC,UAAU,IAAI,KAAK,CAAC,UAAU,EAAE;YACzC,OAAO,IAAI,CAAC;SACZ;aAAM,IAAI,KAAK,CAAC,SAAS,EAAE;YAC3B,OAAO,IAAI,CAAC,wBAAwB,CAAC;SACrC;aAAM;YACN,OAAO,IAAI,CAAC,gBAAgB,CAAC;SAC7B;IACF,CAAC;IAED,yCAAc,GAAd,UAAe,KAAoB;QAClC,IAAI,KAAK,CAAC,SAAS,EAAE;YACpB,OAAO,oBAAoB,CAAC,aAAa,CAAC;SAC1C;QACD,OAAO,oBAAoB,CAAC,YAAY,CAAC;IAC1C,CAAC;IAED,oCAAS,GAAT;QACC,OAAO,IAAI,CAAC,aAAa,EAAE,CAAC;IAC7B,CAAC;IAED,mCAAQ,GAAR;QACC,OAAO,GAAG,CAAC;IACZ,CAAC;IAED,yCAAc,GAAd;QACC,OAAO,EAAE,CAAC;IACX,CAAC;IAED,yCAAc,GAAd;QACC,OAAO,EAAE,CAAC;IACX,CAAC;IAED,0CAAe,GAAf;QACC,OAAO,EAAE,CAAC;IACX,CAAC;IAED,oCAAS,GAAT,UAAU,KAAoB;QAC7B,IAAI,CAAC,KAAK,CAAC,YAAY,EAAE;YACxB,OAAO,EAAE,CAAC;SACV;QACD,OAAO,MAAM,CAAC;IACf,CAAC;IAED,8CAAmB,GAAnB;QACC,OAAO,IAAI,CAAC,gBAAgB,EAAE,CAAC;IAChC,CAAC;IAED,gDAAqB,GAArB;QACC,OAAO,kBAAkB,CAAC;IAC3B,CAAC;IAED,8CAAmB,GAAnB;QACC,OAAO,gBAAgB,CAAC;IACzB,CAAC;IAUD,oCAAS,GAAT;QACC,OAAO,IAAI,CAAC;IACb,CAAC;IAES,gDAAqB,GAA/B,UAAgC,KAAoB;QACnD,OAAO,wDAAwD,CAAC;IACjE,CAAC;IACF,uBAAC;AAAD,CAAC,AAnFD,CAMS,sBAAsB,GA6E9B","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { DBaseStateSet } from \"../../d-base-state-set\";\nimport { DCoordinateSize } from \"../../d-coordinate\";\nimport { DThemeInput } from \"../../d-input\";\nimport { UtilHtmlElementCreator } from \"../../util/util-html-element\";\nimport { UtilRgb } from \"../../util/util-rgb\";\nimport { DThemeWhiteConstants } from \"./d-theme-white-constants\";\nimport { DThemeWhiteHtmlElement } from \"./d-theme-white-html-element\";\n\nconst editingValidator = (): string | null => {\n\treturn null;\n};\n\nconst editingUnformatter = <VALUE>(text: string): VALUE => {\n\treturn text as any;\n};\n\nexport abstract class DThemeWhiteInput<\n\t\tVALUE = unknown,\n\t\tELEMENT extends HTMLInputElement | HTMLTextAreaElement =\n\t\t\t| HTMLInputElement\n\t\t\t| HTMLTextAreaElement\n\t>\n\textends DThemeWhiteHtmlElement<VALUE, ELEMENT>\n\timplements DThemeInput<VALUE, ELEMENT>\n{\n\tprotected readonly BACKGROUND_COLOR = DThemeWhiteConstants.BACKGROUND_COLOR_ON_BOARD;\n\tprotected readonly BACKGROUND_COLOR_HOVERED = UtilRgb.darken(this.BACKGROUND_COLOR, 0.017);\n\n\tgetBackgroundColor(state: DBaseStateSet): number | null {\n\t\tif (state.inDisabled || state.inReadOnly) {\n\t\t\treturn null;\n\t\t} else if (state.isHovered) {\n\t\t\treturn this.BACKGROUND_COLOR_HOVERED;\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\tif (state.isInvalid) {\n\t\t\treturn DThemeWhiteConstants.INVALID_COLOR;\n\t\t}\n\t\treturn DThemeWhiteConstants.BORDER_COLOR;\n\t}\n\n\tgetHeight(): DCoordinateSize {\n\t\treturn this.getLineHeight();\n\t}\n\n\tgetWidth(): DCoordinateSize {\n\t\treturn 100;\n\t}\n\n\tgetPlaceholder(): string {\n\t\treturn \"\";\n\t}\n\n\tgetPaddingLeft(): number {\n\t\treturn 10;\n\t}\n\n\tgetPaddingRight(): number {\n\t\treturn 10;\n\t}\n\n\tgetCursor(state: DBaseStateSet): string {\n\t\tif (!state.isActionable) {\n\t\t\treturn \"\";\n\t\t}\n\t\treturn \"text\";\n\t}\n\n\tgetEditingFormatter(): (value: VALUE, caller: any) => string {\n\t\treturn this.getTextFormatter();\n\t}\n\n\tgetEditingUnformatter(): (text: string, caller: any) => VALUE {\n\t\treturn editingUnformatter;\n\t}\n\n\tgetEditingValidator(): (value: VALUE, caller: any) => string | null {\n\t\treturn editingValidator;\n\t}\n\n\tabstract getElementCreator(): UtilHtmlElementCreator<ELEMENT>;\n\n\tabstract getClipperCreator(): UtilHtmlElementCreator<HTMLDivElement>;\n\n\tabstract getBeforeCreator(): UtilHtmlElementCreator<HTMLDivElement>;\n\n\tabstract getAfterCreator(): UtilHtmlElementCreator<HTMLDivElement>;\n\n\tgetSelect(): boolean {\n\t\treturn true;\n\t}\n\n\tprotected getElementStyleBorder(state: DBaseStateSet): string {\n\t\treturn `border: 1px solid transparent; box-sizing: border-box;`;\n\t}\n}\n"]}
1
+ {"version":3,"file":"d-theme-white-input.js","sourceRoot":"","sources":["../../../../../src/main/typescript/wcardinal/ui/theme/white/d-theme-white-input.ts"],"names":[],"mappings":"AAAA;;;GAGG;;AAMH,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAC9C,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,EAAE,sBAAsB,EAAE,MAAM,8BAA8B,CAAC;AAEtE,IAAM,gBAAgB,GAAG;IACxB,OAAO,IAAI,CAAC;AACb,CAAC,CAAC;AAEF,IAAM,kBAAkB,GAAG,UAAQ,IAAY;IAC9C,OAAO,IAAW,CAAC;AACpB,CAAC,CAAC;AAEF;IAMS,oCAAsC;IAN/C;QAAA,qEAmFC;QA1EmB,sBAAgB,GAAG,oBAAoB,CAAC,yBAAyB,CAAC;QAClE,8BAAwB,GAAG,OAAO,CAAC,MAAM,CAAC,KAAI,CAAC,gBAAgB,EAAE,KAAK,CAAC,CAAC;;IAyE5F,CAAC;IAvEA,6CAAkB,GAAlB,UAAmB,KAAoB;QACtC,IAAI,KAAK,CAAC,UAAU,IAAI,KAAK,CAAC,UAAU,EAAE;YACzC,OAAO,IAAI,CAAC;SACZ;aAAM,IAAI,KAAK,CAAC,SAAS,EAAE;YAC3B,OAAO,IAAI,CAAC,wBAAwB,CAAC;SACrC;aAAM;YACN,OAAO,IAAI,CAAC,gBAAgB,CAAC;SAC7B;IACF,CAAC;IAED,yCAAc,GAAd,UAAe,KAAoB;QAClC,IAAI,KAAK,CAAC,SAAS,EAAE;YACpB,OAAO,oBAAoB,CAAC,aAAa,CAAC;SAC1C;QACD,OAAO,oBAAoB,CAAC,YAAY,CAAC;IAC1C,CAAC;IAED,oCAAS,GAAT;QACC,OAAO,IAAI,CAAC,aAAa,EAAE,CAAC;IAC7B,CAAC;IAED,mCAAQ,GAAR;QACC,OAAO,GAAG,CAAC;IACZ,CAAC;IAED,yCAAc,GAAd;QACC,OAAO,EAAE,CAAC;IACX,CAAC;IAED,yCAAc,GAAd;QACC,OAAO,EAAE,CAAC;IACX,CAAC;IAED,0CAAe,GAAf;QACC,OAAO,EAAE,CAAC;IACX,CAAC;IAED,oCAAS,GAAT,UAAU,KAAoB;QAC7B,IAAI,CAAC,KAAK,CAAC,YAAY,EAAE;YACxB,OAAO,EAAE,CAAC;SACV;QACD,OAAO,MAAM,CAAC;IACf,CAAC;IAED,8CAAmB,GAAnB;QACC,OAAO,IAAI,CAAC,gBAAgB,EAAE,CAAC;IAChC,CAAC;IAED,gDAAqB,GAArB;QACC,OAAO,kBAAkB,CAAC;IAC3B,CAAC;IAED,8CAAmB,GAAnB;QACC,OAAO,gBAAgB,CAAC;IACzB,CAAC;IAUD,oCAAS,GAAT;QACC,OAAO,IAAI,CAAC;IACb,CAAC;IAES,gDAAqB,GAA/B,UAAgC,KAAoB;QACnD,OAAO,0DAA0D,CAAC;IACnE,CAAC;IACF,uBAAC;AAAD,CAAC,AAnFD,CAMS,sBAAsB,GA6E9B","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { DBaseStateSet } from \"../../d-base-state-set\";\nimport { DCoordinateSize } from \"../../d-coordinate\";\nimport { DThemeInput } from \"../../d-input\";\nimport { UtilHtmlElementCreator } from \"../../util/util-html-element\";\nimport { UtilRgb } from \"../../util/util-rgb\";\nimport { DThemeWhiteConstants } from \"./d-theme-white-constants\";\nimport { DThemeWhiteHtmlElement } from \"./d-theme-white-html-element\";\n\nconst editingValidator = (): string | null => {\n\treturn null;\n};\n\nconst editingUnformatter = <VALUE>(text: string): VALUE => {\n\treturn text as any;\n};\n\nexport abstract class DThemeWhiteInput<\n\t\tVALUE = unknown,\n\t\tELEMENT extends HTMLInputElement | HTMLTextAreaElement =\n\t\t\t| HTMLInputElement\n\t\t\t| HTMLTextAreaElement\n\t>\n\textends DThemeWhiteHtmlElement<VALUE, ELEMENT>\n\timplements DThemeInput<VALUE, ELEMENT>\n{\n\tprotected readonly BACKGROUND_COLOR = DThemeWhiteConstants.BACKGROUND_COLOR_ON_BOARD;\n\tprotected readonly BACKGROUND_COLOR_HOVERED = UtilRgb.darken(this.BACKGROUND_COLOR, 0.017);\n\n\tgetBackgroundColor(state: DBaseStateSet): number | null {\n\t\tif (state.inDisabled || state.inReadOnly) {\n\t\t\treturn null;\n\t\t} else if (state.isHovered) {\n\t\t\treturn this.BACKGROUND_COLOR_HOVERED;\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\tif (state.isInvalid) {\n\t\t\treturn DThemeWhiteConstants.INVALID_COLOR;\n\t\t}\n\t\treturn DThemeWhiteConstants.BORDER_COLOR;\n\t}\n\n\tgetHeight(): DCoordinateSize {\n\t\treturn this.getLineHeight();\n\t}\n\n\tgetWidth(): DCoordinateSize {\n\t\treturn 100;\n\t}\n\n\tgetPlaceholder(): string {\n\t\treturn \"\";\n\t}\n\n\tgetPaddingLeft(): number {\n\t\treturn 10;\n\t}\n\n\tgetPaddingRight(): number {\n\t\treturn 10;\n\t}\n\n\tgetCursor(state: DBaseStateSet): string {\n\t\tif (!state.isActionable) {\n\t\t\treturn \"\";\n\t\t}\n\t\treturn \"text\";\n\t}\n\n\tgetEditingFormatter(): (value: VALUE, caller: any) => string {\n\t\treturn this.getTextFormatter();\n\t}\n\n\tgetEditingUnformatter(): (text: string, caller: any) => VALUE {\n\t\treturn editingUnformatter;\n\t}\n\n\tgetEditingValidator(): (value: VALUE, caller: any) => string | null {\n\t\treturn editingValidator;\n\t}\n\n\tabstract getElementCreator(): UtilHtmlElementCreator<ELEMENT>;\n\n\tabstract getClipperCreator(): UtilHtmlElementCreator<HTMLDivElement>;\n\n\tabstract getBeforeCreator(): UtilHtmlElementCreator<HTMLDivElement>;\n\n\tabstract getAfterCreator(): UtilHtmlElementCreator<HTMLDivElement>;\n\n\tgetSelect(): boolean {\n\t\treturn true;\n\t}\n\n\tprotected getElementStyleBorder(state: DBaseStateSet): string {\n\t\treturn `border: 1.5px solid transparent; box-sizing: border-box;`;\n\t}\n}\n"]}