@wcardinal/wcardinal-ui 0.383.0 → 0.385.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 (322) hide show
  1. package/dist/types/wcardinal/ui/d-align-horizontal.d.ts +1 -1
  2. package/dist/types/wcardinal/ui/d-align-vertical.d.ts +1 -1
  3. package/dist/types/wcardinal/ui/d-align-with.d.ts +1 -1
  4. package/dist/types/wcardinal/ui/d-button-base-when.d.ts +1 -1
  5. package/dist/types/wcardinal/ui/d-chart-axis-position.d.ts +1 -1
  6. package/dist/types/wcardinal/ui/d-chart-axis-tick-position.d.ts +1 -1
  7. package/dist/types/wcardinal/ui/d-chart-coordinate-direction.d.ts +1 -1
  8. package/dist/types/wcardinal/ui/d-chart-selection.d.ts +1 -1
  9. package/dist/types/wcardinal/ui/d-color-type.d.ts +1 -1
  10. package/dist/types/wcardinal/ui/d-dialog-gesture-mode.d.ts +1 -1
  11. package/dist/types/wcardinal/ui/d-dialog-mode.d.ts +1 -1
  12. package/dist/types/wcardinal/ui/d-dynamic-text-style-word-wrap.d.ts +1 -1
  13. package/dist/types/wcardinal/ui/d-layout-direction.d.ts +1 -1
  14. package/dist/types/wcardinal/ui/d-link-menu-item-id.d.ts +1 -1
  15. package/dist/types/wcardinal/ui/d-link-target.d.ts +1 -1
  16. package/dist/types/wcardinal/ui/d-list-data-selection.d.ts +1 -1
  17. package/dist/types/wcardinal/ui/d-menu-sided-selection.d.ts +1 -1
  18. package/dist/types/wcardinal/ui/d-picker-color.d.ts +1 -0
  19. package/dist/types/wcardinal/ui/d-scalar-expression.d.ts +1 -1
  20. package/dist/types/wcardinal/ui/d-table-column-type.d.ts +1 -1
  21. package/dist/types/wcardinal/ui/d-table-column-update.d.ts +1 -1
  22. package/dist/types/wcardinal/ui/d-table-data-selection.d.ts +1 -1
  23. package/dist/types/wcardinal/ui/d-table-data-sorter.d.ts +1 -1
  24. package/dist/types/wcardinal/ui/d-tree-data-selection.d.ts +1 -1
  25. package/dist/types/wcardinal/ui/shape/action/e-shape-action-value-blink-type.d.ts +1 -1
  26. package/dist/types/wcardinal/ui/shape/action/e-shape-action-value-change-color-target.d.ts +1 -1
  27. package/dist/types/wcardinal/ui/shape/action/e-shape-action-value-change-color-type-legacy.d.ts +1 -1
  28. package/dist/types/wcardinal/ui/shape/action/e-shape-action-value-change-text-type.d.ts +1 -1
  29. package/dist/types/wcardinal/ui/shape/action/e-shape-action-value-gesture-type.d.ts +1 -1
  30. package/dist/types/wcardinal/ui/shape/action/e-shape-action-value-misc-type.d.ts +1 -1
  31. package/dist/types/wcardinal/ui/shape/action/e-shape-action-value-on-input-action.d.ts +1 -1
  32. package/dist/types/wcardinal/ui/shape/action/e-shape-action-value-show-hide-type.d.ts +1 -1
  33. package/dist/types/wcardinal/ui/shape/action/e-shape-action-value-transform-move-type.d.ts +1 -1
  34. package/dist/types/wcardinal/ui/shape/action/e-shape-action-value-transform-resize-type.d.ts +1 -1
  35. package/dist/types/wcardinal/ui/shape/action/e-shape-action-value-transform-rotate-type.d.ts +1 -1
  36. package/dist/types/wcardinal/ui/shape/action/e-shape-action-value-transform-type.d.ts +1 -1
  37. package/dist/types/wcardinal/ui/shape/e-shape-acceptor-edge-side.d.ts +1 -1
  38. package/dist/types/wcardinal/ui/shape/e-shape-acceptor-edge-type.d.ts +1 -1
  39. package/dist/types/wcardinal/ui/shape/e-shape-acceptor-type.d.ts +1 -1
  40. package/dist/types/wcardinal/ui/shape/e-shape-data-value-order.d.ts +1 -1
  41. package/dist/types/wcardinal/ui/shape/e-shape-data-value-scope.d.ts +1 -1
  42. package/dist/types/wcardinal/ui/shape/e-shape-points-marker-type.d.ts +1 -1
  43. package/dist/types/wcardinal/ui/shape/e-shape-resource-manager-deserialization-mode.d.ts +1 -1
  44. package/dist/types/wcardinal/ui/shape/e-shape-runtime-reset.d.ts +1 -1
  45. package/dist/types/wcardinal/ui/shape/e-shape-stroke-side.d.ts +1 -1
  46. package/dist/types/wcardinal/ui/shape/e-shape-text-align-horizontal.d.ts +1 -1
  47. package/dist/types/wcardinal/ui/shape/e-shape-text-align-vertical.d.ts +1 -1
  48. package/dist/types/wcardinal/ui/shape/e-shape-text-direction.d.ts +1 -1
  49. package/dist/types/wcardinal/ui/shape/e-shape-text.d.ts +2 -2
  50. package/dist/types/wcardinal/ui/shape/variant/e-shape-bar-position.d.ts +1 -1
  51. package/dist/types/wcardinal/ui/shape/variant/e-shape-line-base-hit-part.d.ts +1 -1
  52. package/dist/types/wcardinal/ui/snapper/e-snapper-target-value.d.ts +1 -1
  53. package/dist/types/wcardinal/ui/snapper/e-snapper.d.ts +1 -1
  54. package/dist/types/wcardinal/ui/theme/dark/d-theme-dark-en-us-picker-color.d.ts +5 -0
  55. package/dist/types/wcardinal/ui/theme/dark/d-theme-dark-ja-jp-picker-color.d.ts +5 -0
  56. package/dist/types/wcardinal/ui/theme/dark/d-theme-dark-picker-color.d.ts +3 -1
  57. package/dist/types/wcardinal/ui/theme/dark/index-en-us.d.ts +1 -0
  58. package/dist/types/wcardinal/ui/theme/dark/index-ja-jp.d.ts +1 -0
  59. package/dist/types/wcardinal/ui/theme/dark/load/index-en-us.d.ts +6 -0
  60. package/dist/types/wcardinal/ui/theme/dark/load/index-ja-jp.d.ts +6 -0
  61. package/dist/types/wcardinal/ui/theme/dark/load/index-zz-zz.d.ts +0 -6
  62. package/dist/types/wcardinal/ui/theme/dark/load/load-theme-dark-en-us-button-color-gradient.d.ts +1 -0
  63. package/dist/types/wcardinal/ui/theme/dark/load/load-theme-dark-en-us-button-color.d.ts +1 -0
  64. package/dist/types/wcardinal/ui/theme/dark/load/load-theme-dark-en-us-dialog-color-gradient.d.ts +1 -0
  65. package/dist/types/wcardinal/ui/theme/dark/load/load-theme-dark-en-us-dialog-color.d.ts +1 -0
  66. package/dist/types/wcardinal/ui/theme/dark/load/load-theme-dark-en-us-picker-color-gradient.d.ts +1 -0
  67. package/dist/types/wcardinal/ui/theme/dark/load/load-theme-dark-en-us-picker-color.d.ts +1 -0
  68. package/dist/types/wcardinal/ui/theme/dark/load/load-theme-dark-ja-jp-button-color-gradient.d.ts +1 -0
  69. package/dist/types/wcardinal/ui/theme/dark/load/load-theme-dark-ja-jp-button-color.d.ts +1 -0
  70. package/dist/types/wcardinal/ui/theme/dark/load/load-theme-dark-ja-jp-dialog-color-gradient.d.ts +1 -0
  71. package/dist/types/wcardinal/ui/theme/dark/load/load-theme-dark-ja-jp-dialog-color.d.ts +1 -0
  72. package/dist/types/wcardinal/ui/theme/dark/load/load-theme-dark-ja-jp-picker-color-gradient.d.ts +1 -0
  73. package/dist/types/wcardinal/ui/theme/dark/load/load-theme-dark-ja-jp-picker-color.d.ts +1 -0
  74. package/dist/types/wcardinal/ui/theme/white/d-theme-white-en-us-picker-color.d.ts +5 -0
  75. package/dist/types/wcardinal/ui/theme/white/d-theme-white-ja-jp-picker-color.d.ts +5 -0
  76. package/dist/types/wcardinal/ui/theme/white/d-theme-white-picker-color.d.ts +3 -1
  77. package/dist/types/wcardinal/ui/theme/white/index-en-us.d.ts +1 -0
  78. package/dist/types/wcardinal/ui/theme/white/index-ja-jp.d.ts +1 -0
  79. package/dist/types/wcardinal/ui/theme/white/load/index-en-us.d.ts +6 -0
  80. package/dist/types/wcardinal/ui/theme/white/load/index-ja-jp.d.ts +6 -0
  81. package/dist/types/wcardinal/ui/theme/white/load/index-zz-zz.d.ts +0 -6
  82. package/dist/types/wcardinal/ui/theme/white/load/load-theme-white-en-us-button-color-gradient.d.ts +1 -0
  83. package/dist/types/wcardinal/ui/theme/white/load/load-theme-white-en-us-button-color.d.ts +1 -0
  84. package/dist/types/wcardinal/ui/theme/white/load/load-theme-white-en-us-dialog-color-gradient.d.ts +1 -0
  85. package/dist/types/wcardinal/ui/theme/white/load/load-theme-white-en-us-dialog-color.d.ts +1 -0
  86. package/dist/types/wcardinal/ui/theme/white/load/load-theme-white-en-us-picker-color-gradient.d.ts +1 -0
  87. package/dist/types/wcardinal/ui/theme/white/load/load-theme-white-en-us-picker-color.d.ts +1 -0
  88. package/dist/types/wcardinal/ui/theme/white/load/load-theme-white-ja-jp-button-color-gradient.d.ts +1 -0
  89. package/dist/types/wcardinal/ui/theme/white/load/load-theme-white-ja-jp-button-color.d.ts +1 -0
  90. package/dist/types/wcardinal/ui/theme/white/load/load-theme-white-ja-jp-dialog-color-gradient.d.ts +1 -0
  91. package/dist/types/wcardinal/ui/theme/white/load/load-theme-white-ja-jp-dialog-color.d.ts +1 -0
  92. package/dist/types/wcardinal/ui/theme/white/load/load-theme-white-ja-jp-picker-color-gradient.d.ts +1 -0
  93. package/dist/types/wcardinal/ui/theme/white/load/load-theme-white-ja-jp-picker-color.d.ts +1 -0
  94. package/dist/types/wcardinal/ui/util/util-attach.d.ts +1 -1
  95. package/dist/types/wcardinal/ui/util/util-file-opener.d.ts +1 -1
  96. package/dist/types/wcardinal/ui/util/util-gesture-mode.d.ts +1 -1
  97. package/dist/types/wcardinal/ui/util/util-html-element-when.d.ts +1 -1
  98. package/dist/wcardinal/ui/d-align-horizontal.js.map +1 -1
  99. package/dist/wcardinal/ui/d-align-vertical.js.map +1 -1
  100. package/dist/wcardinal/ui/d-align-with.js.map +1 -1
  101. package/dist/wcardinal/ui/d-button-base-when.js.map +1 -1
  102. package/dist/wcardinal/ui/d-chart-axis-position.js.map +1 -1
  103. package/dist/wcardinal/ui/d-chart-axis-tick-position.js.map +1 -1
  104. package/dist/wcardinal/ui/d-chart-coordinate-direction.js.map +1 -1
  105. package/dist/wcardinal/ui/d-chart-selection.js.map +1 -1
  106. package/dist/wcardinal/ui/d-color-type.js.map +1 -1
  107. package/dist/wcardinal/ui/d-diagram-canvas-tile.js.map +1 -1
  108. package/dist/wcardinal/ui/d-dialog-gesture-mode.js.map +1 -1
  109. package/dist/wcardinal/ui/d-dialog-layered-header-button-close.js.map +1 -1
  110. package/dist/wcardinal/ui/d-dialog-layered-header-separator.js.map +1 -1
  111. package/dist/wcardinal/ui/d-dialog-mode.js.map +1 -1
  112. package/dist/wcardinal/ui/d-dynamic-text-style-word-wrap.js.map +1 -1
  113. package/dist/wcardinal/ui/d-layout-direction.js.map +1 -1
  114. package/dist/wcardinal/ui/d-link-menu-item-id.js.map +1 -1
  115. package/dist/wcardinal/ui/d-link-target.js.map +1 -1
  116. package/dist/wcardinal/ui/d-list-data-selection.js.map +1 -1
  117. package/dist/wcardinal/ui/d-menu-sided-selection.js.map +1 -1
  118. package/dist/wcardinal/ui/d-pagination-button-previous.js.map +1 -1
  119. package/dist/wcardinal/ui/d-picker-color.js +2 -2
  120. package/dist/wcardinal/ui/d-picker-color.js.map +1 -1
  121. package/dist/wcardinal/ui/d-scalar-expression.js.map +1 -1
  122. package/dist/wcardinal/ui/d-table-body-cell-input-tree-input.js.map +1 -1
  123. package/dist/wcardinal/ui/d-table-body-cell-input-tree-marker.js.map +1 -1
  124. package/dist/wcardinal/ui/d-table-body-cell-select-dialog.js.map +1 -1
  125. package/dist/wcardinal/ui/d-table-body-cell-select-multiple.js.map +1 -1
  126. package/dist/wcardinal/ui/d-table-body-cell-select-promise.js.map +1 -1
  127. package/dist/wcardinal/ui/d-table-column-type.js.map +1 -1
  128. package/dist/wcardinal/ui/d-table-column-update.js.map +1 -1
  129. package/dist/wcardinal/ui/d-table-column.js.map +1 -1
  130. package/dist/wcardinal/ui/d-table-data-selection.js.map +1 -1
  131. package/dist/wcardinal/ui/d-table-data-sorter.js.map +1 -1
  132. package/dist/wcardinal/ui/d-tree-data-selection.js.map +1 -1
  133. package/dist/wcardinal/ui/shape/action/e-shape-action-value-blink-type.js.map +1 -1
  134. package/dist/wcardinal/ui/shape/action/e-shape-action-value-change-color-target.js.map +1 -1
  135. package/dist/wcardinal/ui/shape/action/e-shape-action-value-change-color-type-legacy.js.map +1 -1
  136. package/dist/wcardinal/ui/shape/action/e-shape-action-value-change-text-type.js.map +1 -1
  137. package/dist/wcardinal/ui/shape/action/e-shape-action-value-gesture-type.js.map +1 -1
  138. package/dist/wcardinal/ui/shape/action/e-shape-action-value-misc-type.js.map +1 -1
  139. package/dist/wcardinal/ui/shape/action/e-shape-action-value-on-input-action.js.map +1 -1
  140. package/dist/wcardinal/ui/shape/action/e-shape-action-value-show-hide-type.js.map +1 -1
  141. package/dist/wcardinal/ui/shape/action/e-shape-action-value-transform-move-type.js.map +1 -1
  142. package/dist/wcardinal/ui/shape/action/e-shape-action-value-transform-resize-type.js.map +1 -1
  143. package/dist/wcardinal/ui/shape/action/e-shape-action-value-transform-rotate-type.js.map +1 -1
  144. package/dist/wcardinal/ui/shape/action/e-shape-action-value-transform-type.js.map +1 -1
  145. package/dist/wcardinal/ui/shape/e-shape-acceptor-edge-side.js.map +1 -1
  146. package/dist/wcardinal/ui/shape/e-shape-acceptor-edge-type.js.map +1 -1
  147. package/dist/wcardinal/ui/shape/e-shape-acceptor-type.js.map +1 -1
  148. package/dist/wcardinal/ui/shape/e-shape-data-value-order.js.map +1 -1
  149. package/dist/wcardinal/ui/shape/e-shape-data-value-scope.js.map +1 -1
  150. package/dist/wcardinal/ui/shape/e-shape-points-marker-type.js.map +1 -1
  151. package/dist/wcardinal/ui/shape/e-shape-resource-manager-deserialization-mode.js.map +1 -1
  152. package/dist/wcardinal/ui/shape/e-shape-runtime-reset.js.map +1 -1
  153. package/dist/wcardinal/ui/shape/e-shape-stroke-side.js.map +1 -1
  154. package/dist/wcardinal/ui/shape/e-shape-text-align-horizontal.js.map +1 -1
  155. package/dist/wcardinal/ui/shape/e-shape-text-align-vertical.js.map +1 -1
  156. package/dist/wcardinal/ui/shape/e-shape-text-direction.js.map +1 -1
  157. package/dist/wcardinal/ui/shape/e-shape-text.js.map +1 -1
  158. package/dist/wcardinal/ui/shape/variant/e-shape-bar-position.js.map +1 -1
  159. package/dist/wcardinal/ui/shape/variant/e-shape-line-base-hit-part.js.map +1 -1
  160. package/dist/wcardinal/ui/snapper/e-snapper-target-value.js.map +1 -1
  161. package/dist/wcardinal/ui/snapper/e-snapper.js.map +1 -1
  162. package/dist/wcardinal/ui/theme/dark/d-theme-dark-en-us-picker-color.js +24 -0
  163. package/dist/wcardinal/ui/theme/dark/d-theme-dark-en-us-picker-color.js.map +1 -0
  164. package/dist/wcardinal/ui/theme/dark/d-theme-dark-ja-jp-picker-color.js +24 -0
  165. package/dist/wcardinal/ui/theme/dark/d-theme-dark-ja-jp-picker-color.js.map +1 -0
  166. package/dist/wcardinal/ui/theme/dark/d-theme-dark-picker-color.js.map +1 -1
  167. package/dist/wcardinal/ui/theme/dark/index-en-us.js +1 -0
  168. package/dist/wcardinal/ui/theme/dark/index-en-us.js.map +1 -1
  169. package/dist/wcardinal/ui/theme/dark/index-ja-jp.js +1 -0
  170. package/dist/wcardinal/ui/theme/dark/index-ja-jp.js.map +1 -1
  171. package/dist/wcardinal/ui/theme/dark/load/index-en-us.js +6 -0
  172. package/dist/wcardinal/ui/theme/dark/load/index-en-us.js.map +1 -1
  173. package/dist/wcardinal/ui/theme/dark/load/index-ja-jp.js +6 -0
  174. package/dist/wcardinal/ui/theme/dark/load/index-ja-jp.js.map +1 -1
  175. package/dist/wcardinal/ui/theme/dark/load/index-zz-zz.js +0 -6
  176. package/dist/wcardinal/ui/theme/dark/load/index-zz-zz.js.map +1 -1
  177. package/dist/wcardinal/ui/theme/dark/load/load-theme-dark-en-us-all.js +4 -4
  178. package/dist/wcardinal/ui/theme/dark/load/load-theme-dark-en-us-all.js.map +1 -1
  179. package/dist/wcardinal/ui/theme/dark/load/load-theme-dark-en-us-button-all.js +4 -4
  180. package/dist/wcardinal/ui/theme/dark/load/load-theme-dark-en-us-button-all.js.map +1 -1
  181. package/dist/wcardinal/ui/theme/dark/load/{load-theme-dark-button-color-gradient.js → load-theme-dark-en-us-button-color-gradient.js} +4 -4
  182. package/dist/wcardinal/ui/theme/dark/load/load-theme-dark-en-us-button-color-gradient.js.map +1 -0
  183. package/dist/wcardinal/ui/theme/dark/load/{load-theme-dark-button-color.js → load-theme-dark-en-us-button-color.js} +4 -4
  184. package/dist/wcardinal/ui/theme/dark/load/load-theme-dark-en-us-button-color.js.map +1 -0
  185. package/dist/wcardinal/ui/theme/dark/load/load-theme-dark-en-us-dialog-all.js +4 -4
  186. package/dist/wcardinal/ui/theme/dark/load/load-theme-dark-en-us-dialog-all.js.map +1 -1
  187. package/dist/wcardinal/ui/theme/dark/load/{load-theme-dark-dialog-color-gradient.js → load-theme-dark-en-us-dialog-color-gradient.js} +4 -4
  188. package/dist/wcardinal/ui/theme/dark/load/load-theme-dark-en-us-dialog-color-gradient.js.map +1 -0
  189. package/dist/wcardinal/ui/theme/dark/load/{load-theme-dark-dialog-color.js → load-theme-dark-en-us-dialog-color.js} +4 -4
  190. package/dist/wcardinal/ui/theme/dark/load/load-theme-dark-en-us-dialog-color.js.map +1 -0
  191. package/dist/wcardinal/ui/theme/dark/load/{load-theme-dark-picker-color-gradient.js → load-theme-dark-en-us-picker-color-gradient.js} +4 -4
  192. package/dist/wcardinal/ui/theme/dark/load/load-theme-dark-en-us-picker-color-gradient.js.map +1 -0
  193. package/dist/wcardinal/ui/theme/dark/load/load-theme-dark-en-us-picker-color.js +10 -0
  194. package/dist/wcardinal/ui/theme/dark/load/load-theme-dark-en-us-picker-color.js.map +1 -0
  195. package/dist/wcardinal/ui/theme/dark/load/load-theme-dark-en-us-table.js +2 -2
  196. package/dist/wcardinal/ui/theme/dark/load/load-theme-dark-en-us-table.js.map +1 -1
  197. package/dist/wcardinal/ui/theme/dark/load/load-theme-dark-ja-jp-all.js +4 -4
  198. package/dist/wcardinal/ui/theme/dark/load/load-theme-dark-ja-jp-all.js.map +1 -1
  199. package/dist/wcardinal/ui/theme/dark/load/load-theme-dark-ja-jp-button-all.js +4 -4
  200. package/dist/wcardinal/ui/theme/dark/load/load-theme-dark-ja-jp-button-all.js.map +1 -1
  201. package/dist/wcardinal/ui/theme/dark/load/load-theme-dark-ja-jp-button-color-gradient.js +12 -0
  202. package/dist/wcardinal/ui/theme/dark/load/load-theme-dark-ja-jp-button-color-gradient.js.map +1 -0
  203. package/dist/wcardinal/ui/theme/dark/load/load-theme-dark-ja-jp-button-color.js +12 -0
  204. package/dist/wcardinal/ui/theme/dark/load/load-theme-dark-ja-jp-button-color.js.map +1 -0
  205. package/dist/wcardinal/ui/theme/dark/load/load-theme-dark-ja-jp-dialog-all.js +4 -4
  206. package/dist/wcardinal/ui/theme/dark/load/load-theme-dark-ja-jp-dialog-all.js.map +1 -1
  207. package/dist/wcardinal/ui/theme/dark/load/load-theme-dark-ja-jp-dialog-color-gradient.js +12 -0
  208. package/dist/wcardinal/ui/theme/dark/load/load-theme-dark-ja-jp-dialog-color-gradient.js.map +1 -0
  209. package/dist/wcardinal/ui/theme/dark/load/load-theme-dark-ja-jp-dialog-color.js +12 -0
  210. package/dist/wcardinal/ui/theme/dark/load/load-theme-dark-ja-jp-dialog-color.js.map +1 -0
  211. package/dist/wcardinal/ui/theme/dark/load/load-theme-dark-ja-jp-picker-color-gradient.js +12 -0
  212. package/dist/wcardinal/ui/theme/dark/load/load-theme-dark-ja-jp-picker-color-gradient.js.map +1 -0
  213. package/dist/wcardinal/ui/theme/dark/load/load-theme-dark-ja-jp-picker-color.js +10 -0
  214. package/dist/wcardinal/ui/theme/dark/load/load-theme-dark-ja-jp-picker-color.js.map +1 -0
  215. package/dist/wcardinal/ui/theme/dark/load/load-theme-dark-ja-jp-table.js +2 -2
  216. package/dist/wcardinal/ui/theme/dark/load/load-theme-dark-ja-jp-table.js.map +1 -1
  217. package/dist/wcardinal/ui/theme/white/d-theme-white-en-us-picker-color.js +24 -0
  218. package/dist/wcardinal/ui/theme/white/d-theme-white-en-us-picker-color.js.map +1 -0
  219. package/dist/wcardinal/ui/theme/white/d-theme-white-ja-jp-picker-color.js +24 -0
  220. package/dist/wcardinal/ui/theme/white/d-theme-white-ja-jp-picker-color.js.map +1 -0
  221. package/dist/wcardinal/ui/theme/white/d-theme-white-picker-color.js.map +1 -1
  222. package/dist/wcardinal/ui/theme/white/index-en-us.js +1 -0
  223. package/dist/wcardinal/ui/theme/white/index-en-us.js.map +1 -1
  224. package/dist/wcardinal/ui/theme/white/index-ja-jp.js +1 -0
  225. package/dist/wcardinal/ui/theme/white/index-ja-jp.js.map +1 -1
  226. package/dist/wcardinal/ui/theme/white/load/index-en-us.js +6 -0
  227. package/dist/wcardinal/ui/theme/white/load/index-en-us.js.map +1 -1
  228. package/dist/wcardinal/ui/theme/white/load/index-ja-jp.js +6 -0
  229. package/dist/wcardinal/ui/theme/white/load/index-ja-jp.js.map +1 -1
  230. package/dist/wcardinal/ui/theme/white/load/index-zz-zz.js +0 -6
  231. package/dist/wcardinal/ui/theme/white/load/index-zz-zz.js.map +1 -1
  232. package/dist/wcardinal/ui/theme/white/load/load-theme-white-en-us-all.js +4 -4
  233. package/dist/wcardinal/ui/theme/white/load/load-theme-white-en-us-all.js.map +1 -1
  234. package/dist/wcardinal/ui/theme/white/load/load-theme-white-en-us-button-all.js +4 -4
  235. package/dist/wcardinal/ui/theme/white/load/load-theme-white-en-us-button-all.js.map +1 -1
  236. package/dist/wcardinal/ui/theme/white/load/{load-theme-white-button-color-gradient.js → load-theme-white-en-us-button-color-gradient.js} +4 -4
  237. package/dist/wcardinal/ui/theme/white/load/load-theme-white-en-us-button-color-gradient.js.map +1 -0
  238. package/dist/wcardinal/ui/theme/white/load/{load-theme-white-button-color.js → load-theme-white-en-us-button-color.js} +4 -4
  239. package/dist/wcardinal/ui/theme/white/load/load-theme-white-en-us-button-color.js.map +1 -0
  240. package/dist/wcardinal/ui/theme/white/load/load-theme-white-en-us-dialog-all.js +4 -4
  241. package/dist/wcardinal/ui/theme/white/load/load-theme-white-en-us-dialog-all.js.map +1 -1
  242. package/dist/wcardinal/ui/theme/white/load/{load-theme-white-dialog-color-gradient.js → load-theme-white-en-us-dialog-color-gradient.js} +4 -4
  243. package/dist/wcardinal/ui/theme/white/load/load-theme-white-en-us-dialog-color-gradient.js.map +1 -0
  244. package/dist/wcardinal/ui/theme/white/load/{load-theme-white-dialog-color.js → load-theme-white-en-us-dialog-color.js} +4 -4
  245. package/dist/wcardinal/ui/theme/white/load/load-theme-white-en-us-dialog-color.js.map +1 -0
  246. package/dist/wcardinal/ui/theme/white/load/{load-theme-white-picker-color-gradient.js → load-theme-white-en-us-picker-color-gradient.js} +4 -4
  247. package/dist/wcardinal/ui/theme/white/load/load-theme-white-en-us-picker-color-gradient.js.map +1 -0
  248. package/dist/wcardinal/ui/theme/white/load/load-theme-white-en-us-picker-color.js +10 -0
  249. package/dist/wcardinal/ui/theme/white/load/load-theme-white-en-us-picker-color.js.map +1 -0
  250. package/dist/wcardinal/ui/theme/white/load/load-theme-white-en-us-table.js +2 -2
  251. package/dist/wcardinal/ui/theme/white/load/load-theme-white-en-us-table.js.map +1 -1
  252. package/dist/wcardinal/ui/theme/white/load/load-theme-white-ja-jp-all.js +4 -4
  253. package/dist/wcardinal/ui/theme/white/load/load-theme-white-ja-jp-all.js.map +1 -1
  254. package/dist/wcardinal/ui/theme/white/load/load-theme-white-ja-jp-button-all.js +4 -4
  255. package/dist/wcardinal/ui/theme/white/load/load-theme-white-ja-jp-button-all.js.map +1 -1
  256. package/dist/wcardinal/ui/theme/white/load/load-theme-white-ja-jp-button-color-gradient.js +12 -0
  257. package/dist/wcardinal/ui/theme/white/load/load-theme-white-ja-jp-button-color-gradient.js.map +1 -0
  258. package/dist/wcardinal/ui/theme/white/load/load-theme-white-ja-jp-button-color.js +12 -0
  259. package/dist/wcardinal/ui/theme/white/load/load-theme-white-ja-jp-button-color.js.map +1 -0
  260. package/dist/wcardinal/ui/theme/white/load/load-theme-white-ja-jp-dialog-all.js +4 -4
  261. package/dist/wcardinal/ui/theme/white/load/load-theme-white-ja-jp-dialog-all.js.map +1 -1
  262. package/dist/wcardinal/ui/theme/white/load/load-theme-white-ja-jp-dialog-color-gradient.js +12 -0
  263. package/dist/wcardinal/ui/theme/white/load/load-theme-white-ja-jp-dialog-color-gradient.js.map +1 -0
  264. package/dist/wcardinal/ui/theme/white/load/load-theme-white-ja-jp-dialog-color.js +12 -0
  265. package/dist/wcardinal/ui/theme/white/load/load-theme-white-ja-jp-dialog-color.js.map +1 -0
  266. package/dist/wcardinal/ui/theme/white/load/load-theme-white-ja-jp-picker-color-gradient.js +12 -0
  267. package/dist/wcardinal/ui/theme/white/load/load-theme-white-ja-jp-picker-color-gradient.js.map +1 -0
  268. package/dist/wcardinal/ui/theme/white/load/load-theme-white-ja-jp-picker-color.js +10 -0
  269. package/dist/wcardinal/ui/theme/white/load/load-theme-white-ja-jp-picker-color.js.map +1 -0
  270. package/dist/wcardinal/ui/theme/white/load/load-theme-white-ja-jp-table.js +2 -2
  271. package/dist/wcardinal/ui/theme/white/load/load-theme-white-ja-jp-table.js.map +1 -1
  272. package/dist/wcardinal/ui/util/util-attach.js.map +1 -1
  273. package/dist/wcardinal/ui/util/util-file-opener.js.map +1 -1
  274. package/dist/wcardinal/ui/util/util-gesture-mode.js.map +1 -1
  275. package/dist/wcardinal/ui/util/util-html-element-when.js.map +1 -1
  276. package/dist/wcardinal-ui-theme-dark-en-us.js +1464 -1441
  277. package/dist/wcardinal-ui-theme-dark-en-us.min.js +2 -2
  278. package/dist/wcardinal-ui-theme-dark-en-us.min.js.map +1 -1
  279. package/dist/wcardinal-ui-theme-dark-ja-jp.js +1464 -1441
  280. package/dist/wcardinal-ui-theme-dark-ja-jp.min.js +2 -2
  281. package/dist/wcardinal-ui-theme-dark-ja-jp.min.js.map +1 -1
  282. package/dist/wcardinal-ui-theme-dark.js +1464 -1441
  283. package/dist/wcardinal-ui-theme-dark.min.js +2 -2
  284. package/dist/wcardinal-ui-theme-white-en-us.js +1361 -1338
  285. package/dist/wcardinal-ui-theme-white-en-us.min.js +2 -2
  286. package/dist/wcardinal-ui-theme-white-en-us.min.js.map +1 -1
  287. package/dist/wcardinal-ui-theme-white-ja-jp.js +1361 -1338
  288. package/dist/wcardinal-ui-theme-white-ja-jp.min.js +2 -2
  289. package/dist/wcardinal-ui-theme-white-ja-jp.min.js.map +1 -1
  290. package/dist/wcardinal-ui-theme-white.js +1361 -1338
  291. package/dist/wcardinal-ui-theme-white.min.js +2 -2
  292. package/dist/wcardinal-ui.cjs.js +2863 -2661
  293. package/dist/wcardinal-ui.js +3 -3
  294. package/dist/wcardinal-ui.min.js +2 -2
  295. package/dist/wcardinal-ui.min.js.map +1 -1
  296. package/package.json +1 -1
  297. package/dist/types/wcardinal/ui/theme/dark/load/load-theme-dark-button-color-gradient.d.ts +0 -1
  298. package/dist/types/wcardinal/ui/theme/dark/load/load-theme-dark-button-color.d.ts +0 -1
  299. package/dist/types/wcardinal/ui/theme/dark/load/load-theme-dark-dialog-color-gradient.d.ts +0 -1
  300. package/dist/types/wcardinal/ui/theme/dark/load/load-theme-dark-dialog-color.d.ts +0 -1
  301. package/dist/types/wcardinal/ui/theme/dark/load/load-theme-dark-picker-color-gradient.d.ts +0 -1
  302. package/dist/types/wcardinal/ui/theme/dark/load/load-theme-dark-picker-color.d.ts +0 -1
  303. package/dist/types/wcardinal/ui/theme/white/load/load-theme-white-button-color-gradient.d.ts +0 -1
  304. package/dist/types/wcardinal/ui/theme/white/load/load-theme-white-button-color.d.ts +0 -1
  305. package/dist/types/wcardinal/ui/theme/white/load/load-theme-white-dialog-color-gradient.d.ts +0 -1
  306. package/dist/types/wcardinal/ui/theme/white/load/load-theme-white-dialog-color.d.ts +0 -1
  307. package/dist/types/wcardinal/ui/theme/white/load/load-theme-white-picker-color-gradient.d.ts +0 -1
  308. package/dist/types/wcardinal/ui/theme/white/load/load-theme-white-picker-color.d.ts +0 -1
  309. package/dist/wcardinal/ui/theme/dark/load/load-theme-dark-button-color-gradient.js.map +0 -1
  310. package/dist/wcardinal/ui/theme/dark/load/load-theme-dark-button-color.js.map +0 -1
  311. package/dist/wcardinal/ui/theme/dark/load/load-theme-dark-dialog-color-gradient.js.map +0 -1
  312. package/dist/wcardinal/ui/theme/dark/load/load-theme-dark-dialog-color.js.map +0 -1
  313. package/dist/wcardinal/ui/theme/dark/load/load-theme-dark-picker-color-gradient.js.map +0 -1
  314. package/dist/wcardinal/ui/theme/dark/load/load-theme-dark-picker-color.js +0 -10
  315. package/dist/wcardinal/ui/theme/dark/load/load-theme-dark-picker-color.js.map +0 -1
  316. package/dist/wcardinal/ui/theme/white/load/load-theme-white-button-color-gradient.js.map +0 -1
  317. package/dist/wcardinal/ui/theme/white/load/load-theme-white-button-color.js.map +0 -1
  318. package/dist/wcardinal/ui/theme/white/load/load-theme-white-dialog-color-gradient.js.map +0 -1
  319. package/dist/wcardinal/ui/theme/white/load/load-theme-white-dialog-color.js.map +0 -1
  320. package/dist/wcardinal/ui/theme/white/load/load-theme-white-picker-color-gradient.js.map +0 -1
  321. package/dist/wcardinal/ui/theme/white/load/load-theme-white-picker-color.js +0 -10
  322. package/dist/wcardinal/ui/theme/white/load/load-theme-white-picker-color.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"d-picker-color.js","sourceRoot":"","sources":["../../../src/main/typescript/wcardinal/ui/d-picker-color.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, Sprite, Texture } from \"pixi.js\";\nimport InteractionEvent = interaction.InteractionEvent;\nimport { DApplications } from \"./d-applications\";\nimport { DBase, DBaseOptions, DThemeBase } from \"./d-base\";\nimport { DColorAndAlpha } from \"./d-color-and-alpha\";\nimport { DInputRealAndLabel } from \"./d-input-real-and-label\";\nimport { DInputTextAndLabel } from \"./d-input-text-and-label\";\nimport { DPickerColorAndAlpha } from \"./d-picker-color-and-alpha\";\nimport { DColorRecent } from \"./d-color-recent\";\nimport { UtilHsv } from \"./util/util-hsv\";\nimport { UtilPointerEvent } from \"./util/util-pointer-event\";\nimport { UtilRgb } from \"./util/util-rgb\";\nimport { DBaseInteractive } from \"./d-base-interactive\";\nimport { DColorStandard } from \"./d-color-standard\";\nimport { DSelect } from \"./d-select\";\nimport { DLayoutHorizontal } from \"./d-layout-horizontal\";\nimport { DColorType } from \"./d-color-type\";\nimport { DColorStandards } from \"./d-color-standards\";\nimport { DColorRecents } from \"./d-color-recents\";\n\nexport interface DPickerColorOptions<THEME extends DThemePickerColor = DThemePickerColor>\n\textends DBaseOptions<THEME> {}\n\nexport interface DThemePickerColor extends DThemeBase {\n\tgetMainWidth(): number;\n\tgetMainHeight(): number;\n\tgetMainTexture(): Texture;\n\tgetMainBaseTexture(): Texture;\n\tgetMainPointerTexture(): Texture;\n\tgetMainPointerColor(): number;\n\tgetMainPointerAlpha(): number;\n\n\tgetBaseHeight(): number;\n\tgetBaseMargin(): number;\n\tgetBaseTexture(): Texture;\n\tgetBasePointerTexture(): Texture;\n\tgetBasePointerColor(): number;\n\tgetBasePointerAlpha(): number;\n\n\tgetAlphaHeight(): number;\n\tgetAlphaMargin(): number;\n\tgetAlphaTexture(): Texture;\n\tgetAlphaCheckerboardTexture(): Texture;\n\tgetAlphaPointerTexture(): Texture;\n\tgetAlphaPointerColor(): number;\n\tgetAlphaPointerAlpha(): number;\n\n\tgetRecentMargin(): number;\n\tgetRecentColorMargin(): number;\n\tgetRecentColorWidth(): number;\n\tgetRecentColorHeight(): number;\n\tgetRecentColorCount(): number;\n\tgetRecentCheckerboardTexture(): Texture;\n\tgetRecentTexture(): Texture;\n\n\tgetInputMargin(): number;\n\tgetInputLabelWidth(): number;\n\n\tgetSampleCheckerboardOldTexture(): Texture;\n\tgetSampleCheckerboardNewTexture(): Texture;\n\tgetSampleOldTexture(): Texture;\n\tgetSampleNewTexture(): Texture;\n\n\tgetStandardColorCount(): number;\n\tgetStandardColorWidth(): number;\n\tgetStandardColorHeight(): number;\n\tgetStandardColorMargin(): number;\n\tgetStandardTexture(): Texture;\n}\n\nexport class DPickerColor<\n\tTHEME extends DThemePickerColor = DThemePickerColor,\n\tOPTIONS extends DPickerColorOptions<THEME> = DPickerColorOptions<THEME>\n> extends DBase<THEME, OPTIONS> {\n\tprotected _mainBaseSprite!: Sprite;\n\tprotected _mainSprite!: Sprite;\n\tprotected _mainPointerSprite!: Sprite;\n\tprotected _pointerPoint!: Point;\n\tprotected _mainStandardColor!: DLayoutHorizontal;\n\tprotected _onMainMoveBound!: (e: InteractionEvent) => void;\n\tprotected _onMainUpBound!: (e: InteractionEvent) => void;\n\n\tprotected _standardColorSprites!: Sprite[];\n\tprotected _standard!: DColorStandard;\n\n\tprotected _baseSprite!: Sprite;\n\tprotected _basePointerSprite!: Sprite;\n\tprotected _onBaseMoveBound!: (e: InteractionEvent) => void;\n\tprotected _onBaseUpBound!: (e: InteractionEvent) => void;\n\n\tprotected _alphaCheckerboardSprite!: Sprite;\n\tprotected _alphaSprite!: Sprite;\n\tprotected _alphaPointerSprite!: Sprite;\n\tprotected _onAlphaMoveBound!: (e: InteractionEvent) => void;\n\tprotected _onAlphaUpBound!: (e: InteractionEvent) => void;\n\n\tprotected _recentColorSprites!: Sprite[];\n\tprotected _recent!: DColorRecent;\n\n\tprotected _inputAndLabelColor!: DInputTextAndLabel;\n\tprotected _inputAndLabelAlpha!: DInputRealAndLabel;\n\n\tprotected _sampleCurrentCheckerboardSprite!: Sprite;\n\tprotected _sampleCurrentSprite!: Sprite;\n\tprotected _sampleNewCheckerboardSprite!: Sprite;\n\tprotected _sampleNewSprite!: Sprite;\n\n\tprotected _current!: DColorAndAlpha;\n\tprotected _currentPicker!: DPickerColorAndAlpha;\n\tprotected _base!: number;\n\tprotected _new!: DColorAndAlpha;\n\tprotected _newPicker!: DPickerColorAndAlpha;\n\n\tprotected _typeSelector!: DSelect<DColorType>;\n\n\tget current(): DColorAndAlpha {\n\t\treturn this._currentPicker;\n\t}\n\n\tget new(): DColorAndAlpha {\n\t\treturn this._newPicker;\n\t}\n\n\tget recent(): DColorRecent {\n\t\treturn this._recent;\n\t}\n\n\tget standard(): DColorStandard {\n\t\treturn this._standard;\n\t}\n\n\tprotected init(options?: OPTIONS): void {\n\t\tsuper.init(options);\n\n\t\tthis._base = 0xff0000;\n\t\tthis._new = { color: 0xffffff, alpha: 1 };\n\t\tthis._newPicker = new DPickerColorAndAlpha(\n\t\t\tthis._new,\n\t\t\t(color) => {\n\t\t\t\tthis.setColorNew(color);\n\t\t\t},\n\t\t\t(alpha: number) => {\n\t\t\t\tthis.setAlphaNew(alpha);\n\t\t\t}\n\t\t);\n\t\tthis._current = { color: 0xffffff, alpha: 1 };\n\t\tthis._currentPicker = new DPickerColorAndAlpha(\n\t\t\tthis._current,\n\t\t\t(color) => {\n\t\t\t\tthis.setColorCurrent(color);\n\t\t\t},\n\t\t\t(alpha: number) => {\n\t\t\t\tthis.setAlphaCurrent(alpha);\n\t\t\t}\n\t\t);\n\n\t\tconst theme = this.theme;\n\t\tconst padding = this._padding;\n\t\tconst paddingTop = padding.getTop();\n\t\tconst paddingRight = padding.getRight();\n\t\tconst paddingBottom = padding.getBottom();\n\t\tconst paddingLeft = padding.getLeft();\n\t\tthis._pointerPoint = new Point();\n\t\tconst mainWidth = theme.getMainWidth();\n\t\tconst mainHeight = theme.getMainHeight();\n\n\t\tconst typeSelector = new DSelect<DColorType>({\n\t\t\tparent: this,\n\t\t\tvalue: DColorType.STANDARD,\n\t\t\tmenu: {\n\t\t\t\titems: [\n\t\t\t\t\t{\n\t\t\t\t\t\tvalue: DColorType.STANDARD,\n\t\t\t\t\t\ttext: {\n\t\t\t\t\t\t\tvalue: \"Standard\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tvalue: DColorType.CUSTOM,\n\t\t\t\t\t\ttext: {\n\t\t\t\t\t\t\tvalue: \"Custom\"\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t]\n\t\t\t},\n\t\t\ton: {\n\t\t\t\tchange: (value: DColorType): void => {\n\t\t\t\t\tthis.onTypeChange(value);\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\t\tthis._typeSelector = typeSelector;\n\t\ttypeSelector.x = paddingLeft;\n\t\ttypeSelector.y = paddingTop;\n\t\ttypeSelector.width = mainWidth;\n\t\ttypeSelector.interactive = true;\n\t\tthis.addChild(typeSelector);\n\n\t\t// Main\n\t\tconst mainBaseSprite = new Sprite(theme.getMainBaseTexture());\n\t\tthis._mainBaseSprite = mainBaseSprite;\n\t\tmainBaseSprite.x = paddingLeft;\n\t\tmainBaseSprite.y = typeSelector.y + typeSelector.height + theme.getBaseMargin();\n\t\tmainBaseSprite.width = mainWidth;\n\t\tmainBaseSprite.height = mainHeight;\n\t\tmainBaseSprite.interactive = true;\n\t\tmainBaseSprite.visible = false;\n\t\tthis.addChild(mainBaseSprite);\n\n\t\tconst mainSprite = new Sprite(theme.getMainTexture());\n\t\tthis._mainSprite = mainSprite;\n\t\tmainSprite.x = paddingLeft;\n\t\tmainSprite.y = typeSelector.y + typeSelector.height + theme.getBaseMargin();\n\t\tmainSprite.tint = this._base;\n\t\tmainSprite.interactive = false;\n\t\tmainSprite.visible = false;\n\t\tthis.addChild(mainSprite);\n\n\t\t// Main event handling\n\t\tthis._onMainMoveBound = (e: InteractionEvent): void => {\n\t\t\tthis.onMainMove(e);\n\t\t};\n\t\tthis._onMainUpBound = (e: InteractionEvent): void => {\n\t\t\tthis.onMainUp(e);\n\t\t};\n\t\tmainBaseSprite.on(UtilPointerEvent.down, (e: InteractionEvent) => {\n\t\t\tthis.onMainDown(e);\n\t\t});\n\n\t\t// Base color picker\n\t\tconst baseSprite = new Sprite(theme.getBaseTexture());\n\t\tthis._baseSprite = baseSprite;\n\t\tbaseSprite.x = paddingLeft;\n\t\tbaseSprite.y = mainBaseSprite.y + mainBaseSprite.height + theme.getBaseMargin();\n\t\tbaseSprite.interactive = true;\n\t\tbaseSprite.visible = false;\n\t\tthis.addChild(baseSprite);\n\n\t\t// Base event\n\t\tthis._onBaseMoveBound = (e: InteractionEvent): void => {\n\t\t\tthis.onBaseMove(e);\n\t\t};\n\t\tthis._onBaseUpBound = (e: InteractionEvent): void => {\n\t\t\tthis.onBaseUp(e);\n\t\t};\n\t\tbaseSprite.on(UtilPointerEvent.down, (e: InteractionEvent) => {\n\t\t\tthis.onBaseDown(e);\n\t\t});\n\n\t\t// Standard main color\n\t\tthis._standardColorSprites = [];\n\t\tconst standardColorSprites = this._standardColorSprites;\n\t\tconst standardColorCount = theme.getStandardColorCount();\n\t\tconst standardColorWidth = theme.getStandardColorWidth();\n\t\tconst standardColorHeight = theme.getStandardColorHeight();\n\t\tconst standardColorMargin = theme.getStandardColorMargin();\n\t\tconst standardColorY = typeSelector.y + typeSelector.height + theme.getBaseMargin();\n\t\tconst standardTexture = theme.getStandardTexture();\n\t\tconst standard = (this._standard = DColorStandards.getInstance());\n\t\tstandard.on(\"change\", () => {\n\t\t\tthis.onStandardChange();\n\t\t});\n\t\tconst onStandardClick = (e: InteractionEvent) => {\n\t\t\tconst sprite = e.currentTarget;\n\t\t\tif (sprite instanceof Sprite) {\n\t\t\t\tthis.setColorNew(sprite.tint);\n\t\t\t}\n\t\t};\n\t\tfor (let i = 0; i < standardColorCount; ++i) {\n\t\t\tconst x = paddingLeft + (i % 10) * (standardColorWidth + standardColorMargin);\n\t\t\tconst y =\n\t\t\t\tstandardColorY + Math.floor(i / 10) * (standardColorHeight + standardColorMargin);\n\n\t\t\tconst sprite = new Sprite(standardTexture);\n\t\t\tconst standardColor = standard.get(i);\n\t\t\tif (standardColor != null) {\n\t\t\t\tsprite.tint = standardColor;\n\t\t\t\tsprite.alpha = 1;\n\t\t\t} else {\n\t\t\t\tsprite.tint = 0xffffff;\n\t\t\t\tsprite.alpha = 1;\n\t\t\t}\n\t\t\tsprite.x = x;\n\t\t\tsprite.y = y;\n\t\t\tsprite.buttonMode = true;\n\t\t\tsprite.interactive = true;\n\t\t\tsprite.on(UtilPointerEvent.tap, onStandardClick);\n\t\t\tstandardColorSprites.push(sprite);\n\t\t}\n\t\tconst mainStandardColor = new DLayoutHorizontal({\n\t\t\twidth: \"auto\",\n\t\t\theight: \"auto\",\n\t\t\trow: 8,\n\t\t\tchildren: standardColorSprites\n\t\t});\n\t\tthis._mainStandardColor = mainStandardColor;\n\t\tmainStandardColor.visible = true;\n\t\tthis.addChild(mainStandardColor);\n\n\t\t// Alpha picker\n\t\tconst alphaCheckerboardSprite = new Sprite(theme.getAlphaCheckerboardTexture());\n\t\tthis._alphaCheckerboardSprite = alphaCheckerboardSprite;\n\t\talphaCheckerboardSprite.x = padding.getLeft();\n\t\talphaCheckerboardSprite.y = baseSprite.y + theme.getBaseHeight() + theme.getBaseMargin();\n\t\talphaCheckerboardSprite.interactive = false;\n\t\tthis.addChild(alphaCheckerboardSprite);\n\n\t\tconst alphaSprite = new Sprite(theme.getAlphaTexture());\n\t\talphaSprite.tint = this._new.color;\n\t\talphaSprite.interactive = true;\n\t\talphaCheckerboardSprite.addChild(alphaSprite);\n\n\t\t// Alpha event\n\t\tthis._onAlphaMoveBound = (e: InteractionEvent): void => {\n\t\t\tthis.onAlphaMove(e);\n\t\t};\n\t\tthis._onAlphaUpBound = (e: InteractionEvent): void => {\n\t\t\tthis.onAlphaUp(e);\n\t\t};\n\t\talphaSprite.on(UtilPointerEvent.down, (e: InteractionEvent) => {\n\t\t\tthis.onAlphaDown(e);\n\t\t});\n\n\t\t// Pointers\n\t\tconst mainPointerSprite = new Sprite(theme.getMainPointerTexture());\n\t\tthis._mainPointerSprite = mainPointerSprite;\n\t\tmainPointerSprite.x = paddingLeft;\n\t\tmainPointerSprite.y = typeSelector.y + typeSelector.height + theme.getBaseMargin();\n\t\tmainPointerSprite.anchor.x = 0.5;\n\t\tmainPointerSprite.anchor.y = 0.5;\n\t\tmainPointerSprite.tint = theme.getMainPointerColor();\n\t\tmainPointerSprite.alpha = theme.getMainPointerAlpha();\n\t\tmainPointerSprite.interactive = false;\n\t\tmainPointerSprite.visible = false;\n\t\tthis.addChild(mainPointerSprite);\n\n\t\tconst alphaPointerSprite = new Sprite(theme.getAlphaPointerTexture());\n\t\tthis._alphaPointerSprite = alphaPointerSprite;\n\t\talphaPointerSprite.x = mainWidth;\n\t\talphaPointerSprite.y = alphaCheckerboardSprite.height * 0.5;\n\t\talphaPointerSprite.tint = theme.getAlphaPointerColor();\n\t\talphaPointerSprite.alpha = theme.getAlphaPointerAlpha();\n\t\talphaPointerSprite.anchor.set(0.5, 0.5);\n\t\talphaPointerSprite.interactive = false;\n\t\talphaCheckerboardSprite.addChild(alphaPointerSprite);\n\n\t\tconst basePointerSprite = new Sprite(theme.getBasePointerTexture());\n\t\tthis._basePointerSprite = basePointerSprite;\n\t\tbasePointerSprite.x = 0;\n\t\tbasePointerSprite.y = baseSprite.height * 0.5;\n\t\tbasePointerSprite.tint = theme.getBasePointerColor();\n\t\tbasePointerSprite.alpha = theme.getBasePointerAlpha();\n\t\tbasePointerSprite.anchor.set(0.5, 0.5);\n\t\tbasePointerSprite.interactive = false;\n\t\tbaseSprite.addChild(basePointerSprite);\n\n\t\t// Recently used\n\t\tthis._recentColorSprites = [];\n\t\tconst recentColorSprites = this._recentColorSprites;\n\t\tconst recentColorCount = theme.getRecentColorCount();\n\t\tconst recentColorWidth = theme.getRecentColorWidth();\n\t\tconst recentColorHeight = theme.getRecentColorHeight();\n\t\tconst recentColorMargin = theme.getRecentColorMargin();\n\t\tconst recentColorY =\n\t\t\talphaCheckerboardSprite.y + theme.getAlphaHeight() + theme.getRecentMargin();\n\t\tconst recentCheckerboardTexture = theme.getRecentCheckerboardTexture();\n\t\tconst recentTexture = theme.getRecentTexture();\n\t\tconst recent = (this._recent = DColorRecents.getInstance());\n\t\trecent.on(\"change\", () => {\n\t\t\tthis.onRecentChange();\n\t\t});\n\t\tconst onRecentClick = (e: InteractionEvent) => {\n\t\t\tconst sprite = e.currentTarget;\n\t\t\tif (sprite instanceof Sprite) {\n\t\t\t\tthis.setColorNew(sprite.tint);\n\t\t\t\tthis.setAlphaNew(sprite.alpha);\n\t\t\t}\n\t\t};\n\t\tfor (let i = 0; i < recentColorCount; ++i) {\n\t\t\tconst x = paddingLeft + i * (recentColorWidth + recentColorMargin);\n\t\t\tconst y = recentColorY;\n\n\t\t\tconst checkerboardSprite = new Sprite(recentCheckerboardTexture);\n\t\t\tcheckerboardSprite.x = x;\n\t\t\tcheckerboardSprite.y = y;\n\t\t\tcheckerboardSprite.interactive = false;\n\t\t\tthis.addChild(checkerboardSprite);\n\n\t\t\tconst sprite = new Sprite(recentTexture);\n\t\t\tconst recentColorAndAlpha = recent.get(i);\n\t\t\tif (recentColorAndAlpha != null) {\n\t\t\t\tsprite.tint = recentColorAndAlpha.color;\n\t\t\t\tsprite.alpha = recentColorAndAlpha.alpha;\n\t\t\t} else {\n\t\t\t\tsprite.tint = 0xffffff;\n\t\t\t\tsprite.alpha = 0;\n\t\t\t}\n\t\t\tsprite.x = x;\n\t\t\tsprite.y = y;\n\t\t\tsprite.buttonMode = true;\n\t\t\tsprite.interactive = true;\n\t\t\tsprite.on(UtilPointerEvent.tap, onRecentClick);\n\t\t\tthis.addChild(sprite);\n\t\t\trecentColorSprites.push(sprite);\n\t\t}\n\n\t\t// Input color\n\t\tconst inputMargin = theme.getInputMargin();\n\t\tconst inputLabelWidth = theme.getInputLabelWidth();\n\t\tconst inputY = recentColorY + recentColorHeight + inputMargin;\n\t\tconst inputWidth = (mainWidth - inputMargin) * 0.5;\n\t\tconst inputAndLabelColor = new DInputTextAndLabel({\n\t\t\tparent: this,\n\t\t\tx: paddingLeft,\n\t\t\ty: inputY,\n\t\t\twidth: inputWidth,\n\t\t\tlabel: {\n\t\t\t\twidth: inputLabelWidth,\n\t\t\t\ttext: {\n\t\t\t\t\tvalue: \"#\"\n\t\t\t\t},\n\t\t\t\tinteractive: DBaseInteractive.NONE\n\t\t\t},\n\t\t\tinput: {\n\t\t\t\tweight: 1,\n\t\t\t\ttext: {\n\t\t\t\t\tvalue: \"FFFFFF\"\n\t\t\t\t},\n\t\t\t\ton: {\n\t\t\t\t\tinput: (code: string): void => {\n\t\t\t\t\t\tconst color = UtilRgb.fromCode(code);\n\t\t\t\t\t\tif (color != null) {\n\t\t\t\t\t\t\tthis.setColorNew(color);\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\t\tthis._inputAndLabelColor = inputAndLabelColor;\n\t\tconst inputHeight = inputAndLabelColor.height;\n\n\t\tconst inputAndLabelAlpha = new DInputRealAndLabel({\n\t\t\tparent: this,\n\t\t\tx: paddingLeft,\n\t\t\ty: inputY + inputHeight + inputMargin,\n\t\t\twidth: inputWidth,\n\t\t\tlabel: {\n\t\t\t\twidth: inputLabelWidth,\n\t\t\t\ttext: {\n\t\t\t\t\tvalue: \"A\"\n\t\t\t\t},\n\t\t\t\tinteractive: DBaseInteractive.NONE\n\t\t\t},\n\t\t\tinput: {\n\t\t\t\tweight: 1,\n\t\t\t\ttext: {\n\t\t\t\t\tvalue: 1\n\t\t\t\t},\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\ton: {\n\t\t\t\t\tinput: (value: number) => {\n\t\t\t\t\t\tthis.setAlphaNew(value);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\t\tthis._inputAndLabelAlpha = inputAndLabelAlpha;\n\n\t\t// Samples\n\t\tconst sampleWidth = (inputWidth - inputLabelWidth - inputMargin) * 0.5;\n\t\tconst sampleHeight = inputHeight + inputMargin + inputHeight;\n\t\tconst sampleX = paddingLeft + (mainWidth - inputMargin) * 0.5 + inputMargin;\n\t\tconst sampleY =\n\t\t\tinputY + (inputHeight + inputMargin + inputAndLabelAlpha.height - sampleHeight) * 0.5;\n\n\t\tconst sampleCurrentCheckerboardSprite = new Sprite(theme.getSampleCheckerboardOldTexture());\n\t\tthis._sampleCurrentCheckerboardSprite = sampleCurrentCheckerboardSprite;\n\t\tsampleCurrentCheckerboardSprite.x = sampleX;\n\t\tsampleCurrentCheckerboardSprite.y = sampleY;\n\t\tsampleCurrentCheckerboardSprite.width = sampleWidth;\n\t\tsampleCurrentCheckerboardSprite.height = sampleHeight;\n\t\tsampleCurrentCheckerboardSprite.interactive = false;\n\t\tthis.addChild(sampleCurrentCheckerboardSprite);\n\n\t\tconst current = this._current;\n\t\tconst sampleCurrentSprite = new Sprite(theme.getSampleOldTexture());\n\t\tthis._sampleCurrentSprite = sampleCurrentSprite;\n\t\tsampleCurrentSprite.x = sampleX;\n\t\tsampleCurrentSprite.y = sampleY;\n\t\tsampleCurrentSprite.tint = current.color;\n\t\tsampleCurrentSprite.alpha = current.alpha;\n\t\tsampleCurrentSprite.width = sampleWidth;\n\t\tsampleCurrentSprite.height = sampleHeight;\n\t\tsampleCurrentSprite.interactive = true;\n\t\tsampleCurrentSprite.buttonMode = true;\n\t\tsampleCurrentSprite.on(UtilPointerEvent.tap, (): void => {\n\t\t\tthis.setColorNew(current.color);\n\t\t\tthis.setAlphaNew(current.alpha);\n\t\t});\n\t\tthis.addChild(sampleCurrentSprite);\n\n\t\tconst sampleNewCheckerboardSprite = new Sprite(theme.getSampleCheckerboardNewTexture());\n\t\tthis._sampleNewCheckerboardSprite = sampleNewCheckerboardSprite;\n\t\tsampleNewCheckerboardSprite.x = sampleX + sampleWidth;\n\t\tsampleNewCheckerboardSprite.y = sampleY;\n\t\tsampleNewCheckerboardSprite.width = sampleWidth;\n\t\tsampleNewCheckerboardSprite.height = sampleHeight;\n\t\tsampleNewCheckerboardSprite.interactive = false;\n\t\tthis.addChild(sampleNewCheckerboardSprite);\n\n\t\tconst sampleNewSprite = new Sprite(theme.getSampleNewTexture());\n\t\tthis._sampleNewSprite = sampleNewSprite;\n\t\tsampleNewSprite.x = sampleX + sampleWidth;\n\t\tsampleNewSprite.y = sampleY;\n\t\tsampleNewSprite.tint = this._new.color;\n\t\tsampleNewSprite.alpha = this._new.alpha;\n\t\tsampleNewSprite.width = sampleWidth;\n\t\tsampleNewSprite.height = sampleHeight;\n\t\tsampleNewSprite.interactive = false;\n\t\tthis.addChild(sampleNewSprite);\n\n\t\t// Width\n\t\tif (options == null || options.width == null) {\n\t\t\tthis.width = paddingLeft + mainWidth + paddingRight;\n\t\t}\n\n\t\t// Height\n\t\tif (options == null || options.height == null) {\n\t\t\tthis.height =\n\t\t\t\tinputY +\n\t\t\t\tinputAndLabelColor.height +\n\t\t\t\tinputMargin +\n\t\t\t\tinputAndLabelAlpha.height +\n\t\t\t\tpaddingBottom;\n\t\t}\n\t}\n\n\tprotected onMainDown(e: InteractionEvent): void {\n\t\tthis.onMainPick(e.data.global);\n\n\t\tconst layer = DApplications.getLayer(this);\n\t\tif (layer) {\n\t\t\tconst stage = layer.stage;\n\t\t\tstage.on(UtilPointerEvent.move, this._onMainMoveBound);\n\t\t\tstage.on(UtilPointerEvent.up, this._onMainUpBound);\n\t\t\tstage.on(UtilPointerEvent.upoutside, this._onMainUpBound);\n\t\t}\n\t}\n\n\tprotected onMainMove(e: InteractionEvent): void {\n\t\tthis.onMainPick(e.data.global);\n\t}\n\n\tprotected onMainUp(e: InteractionEvent): void {\n\t\tconst layer = DApplications.getLayer(this);\n\t\tif (layer) {\n\t\t\tconst stage = layer.stage;\n\t\t\tstage.off(UtilPointerEvent.move, this._onMainMoveBound);\n\t\t\tstage.off(UtilPointerEvent.up, this._onMainUpBound);\n\t\t}\n\t}\n\n\tprotected toMainHex(b: number, w0: number, w1: number, shift: number): number {\n\t\treturn Math.max(0, Math.min(255, w0 * 255 + w1 * ((b >> shift) & 0xff))) << shift;\n\t}\n\n\tprotected toMainColor(\n\t\tbase: number,\n\t\ttx: number,\n\t\tty: number,\n\t\twidth: number,\n\t\theight: number\n\t): number {\n\t\tconst hw = width * 0.5;\n\t\tconst ux = Math.max(0, Math.min(1, ((tx - hw) * (1 - ty / height) + hw) / width));\n\t\tconst uy = Math.max(0, Math.min(1, ty / height));\n\t\tconst w1 = Math.abs(0.5 * uy - ux);\n\t\tconst w0 = 1 - w1 - uy;\n\t\tconst r = this.toMainHex(base, w0, w1, 16);\n\t\tconst g = this.toMainHex(base, w0, w1, 8);\n\t\tconst b = this.toMainHex(base, w0, w1, 0);\n\t\treturn r | g | b;\n\t}\n\n\tprotected onMainPick(global: Point): void {\n\t\tconst mainBaseSprite = this._mainBaseSprite;\n\t\tconst point = this._pointerPoint;\n\t\tconst theme = this.theme;\n\t\tconst mainWidth = theme.getMainWidth();\n\t\tconst mainHeight = theme.getMainHeight();\n\t\tthis.toLocal(global, undefined, point);\n\t\tconst x = Math.max(0, Math.min(mainWidth, point.x - mainBaseSprite.x));\n\t\tconst y = Math.max(0, Math.min(mainHeight, point.y - mainBaseSprite.y));\n\t\tconst mainPointerSprite = this._mainPointerSprite;\n\t\tmainPointerSprite.position.set(mainBaseSprite.x + x, mainBaseSprite.y + y);\n\t\tthis.onColorNew(this.toMainColor(this._base, x, y, mainWidth, mainHeight));\n\t}\n\n\tprotected setColorCurrent(color: number): void {\n\t\tthis._sampleCurrentSprite.tint = this._current.color = color;\n\t}\n\n\tprotected setAlphaCurrent(alpha: number): void {\n\t\tthis._sampleCurrentSprite.alpha = this._current.alpha = alpha;\n\t}\n\n\tprotected setColorNew(color: number): void {\n\t\tconst theme = this.theme;\n\t\tconst mainWidth = theme.getMainWidth();\n\t\tconst mainHeight = theme.getMainHeight();\n\t\tconst mainBaseSprite = this._mainBaseSprite;\n\n\t\t// Base color\n\t\tconst hsv = UtilHsv.fromRgb(color);\n\t\tthis._mainSprite.tint = this._base = UtilHsv.toRgb(hsv[0], 255, 255);\n\n\t\t// Move the base pointer\n\t\tconst basePointerSprite = this._basePointerSprite;\n\t\tbasePointerSprite.x = Math.max(0, Math.min(1, hsv[0] / 360)) * mainWidth;\n\n\t\t// Move the main pointer\n\t\tconst ns = Math.max(0, Math.min(1, hsv[1] / 255));\n\t\tconst nv = Math.max(0, Math.min(1, 1 - hsv[2] / 255));\n\t\tconst mainPointerSprite = this._mainPointerSprite;\n\t\tmainPointerSprite.tint = nv < 0.45 ? theme.getMainPointerColor() : 0xffffff;\n\t\tmainPointerSprite.position.set(\n\t\t\tmainBaseSprite.x + ns * mainWidth,\n\t\t\tmainBaseSprite.y + nv * mainHeight\n\t\t);\n\n\t\t// New color\n\t\tthis.onColorNew(color);\n\t}\n\n\tprotected onColorNew(color: number): void {\n\t\tconst layer = DApplications.getLayer(this);\n\t\tif (layer) {\n\t\t\tlayer.lock();\n\t\t}\n\t\tthis._sampleNewSprite.tint = this._new.color = color;\n\t\tthis._inputAndLabelColor.input.value = UtilRgb.toCode(color);\n\t\tthis.emit(\"newcolorchange\", color, this);\n\t\tif (layer) {\n\t\t\tlayer.unlock();\n\t\t\tlayer.update();\n\t\t}\n\t}\n\n\tprotected onBaseDown(e: InteractionEvent): void {\n\t\tthis.onBasePick(e.data.global);\n\n\t\tconst layer = DApplications.getLayer(this);\n\t\tif (layer) {\n\t\t\tconst stage = layer.stage;\n\t\t\tstage.on(UtilPointerEvent.move, this._onBaseMoveBound);\n\t\t\tstage.on(UtilPointerEvent.up, this._onBaseUpBound);\n\t\t}\n\t}\n\n\tprotected onBaseMove(e: InteractionEvent): void {\n\t\tthis.onBasePick(e.data.global);\n\t}\n\n\tprotected onBaseUp(e: InteractionEvent): void {\n\t\tconst layer = DApplications.getLayer(this);\n\t\tif (layer) {\n\t\t\tconst stage = layer.stage;\n\t\t\tstage.off(UtilPointerEvent.move, this._onBaseMoveBound);\n\t\t\tstage.off(UtilPointerEvent.up, this._onBaseUpBound);\n\t\t}\n\t}\n\n\tprotected toBaseHex(t: number, shift: number): number {\n\t\treturn Math.max(0, Math.min(255, t * 6 * 255)) << shift;\n\t}\n\n\tprotected toBaseColor(t: number): number {\n\t\tif (t <= 0.167) {\n\t\t\treturn 0xff0000 + this.toBaseHex(t, 8);\n\t\t} else if (t <= 0.333) {\n\t\t\tt = 0.333 - t;\n\t\t\treturn 0x00ff00 + this.toBaseHex(t, 16);\n\t\t} else if (t <= 0.5) {\n\t\t\tt -= 0.333;\n\t\t\treturn 0x00ff00 + this.toBaseHex(t, 0);\n\t\t} else if (t < 0.667) {\n\t\t\tt = 0.667 - t;\n\t\t\treturn 0x0000ff + this.toBaseHex(t, 8);\n\t\t} else if (t < 0.883) {\n\t\t\tt -= 0.667;\n\t\t\treturn 0x0000ff + this.toBaseHex(t, 16);\n\t\t} else {\n\t\t\tt = 0.883 - t;\n\t\t\treturn 0xff0000 + this.toBaseHex(t, 0);\n\t\t}\n\t}\n\n\tprotected onBasePick(global: Point): void {\n\t\tconst point = this._pointerPoint;\n\t\tconst padding = this._padding;\n\t\tconst theme = this.theme;\n\t\tconst mainWidth = theme.getMainWidth();\n\t\tthis.toLocal(global, undefined, point);\n\t\tconst x = Math.max(0, Math.min(mainWidth, point.x - padding.getLeft()));\n\t\tconst basePointerSprite = this._basePointerSprite;\n\t\tbasePointerSprite.x = x;\n\t\tthis.onColorBase(this.toBaseColor(x / mainWidth));\n\t}\n\n\tprotected setColorBase(h: number): void {\n\t\tconst theme = this.theme;\n\t\tconst mainWidth = theme.getMainWidth();\n\t\tconst basePointerSprite = this._basePointerSprite;\n\t\tbasePointerSprite.x = Math.max(0, Math.min(1, h / 360)) * mainWidth;\n\t\tthis.onColorBase(UtilHsv.toRgb(h, 255, 255));\n\t}\n\n\tprotected onColorBase(color: number): void {\n\t\tthis._mainSprite.tint = this._base = color;\n\n\t\tconst mainPointerSprite = this._mainPointerSprite;\n\t\tconst theme = this.theme;\n\t\tconst mainWidth = theme.getMainWidth();\n\t\tconst mainHeight = theme.getMainHeight();\n\t\tconst padding = this._padding;\n\t\tthis.onColorNew(\n\t\t\tthis.toMainColor(\n\t\t\t\tthis._base,\n\t\t\t\tmainPointerSprite.x - padding.getLeft(),\n\t\t\t\tmainPointerSprite.y - padding.getTop(),\n\t\t\t\tmainWidth,\n\t\t\t\tmainHeight\n\t\t\t)\n\t\t);\n\t}\n\n\tprotected onAlphaDown(e: InteractionEvent): void {\n\t\tthis.onAlphaPick(e.data.global);\n\n\t\tconst layer = DApplications.getLayer(this);\n\t\tif (layer) {\n\t\t\tconst stage = layer.stage;\n\t\t\tstage.on(UtilPointerEvent.move, this._onAlphaMoveBound);\n\t\t\tstage.on(UtilPointerEvent.up, this._onAlphaUpBound);\n\t\t}\n\t}\n\n\tprotected onAlphaMove(e: InteractionEvent): void {\n\t\tthis.onAlphaPick(e.data.global);\n\t}\n\n\tprotected onAlphaUp(e: InteractionEvent): void {\n\t\tconst layer = DApplications.getLayer(this);\n\t\tif (layer) {\n\t\t\tconst stage = layer.stage;\n\t\t\tstage.off(UtilPointerEvent.move, this._onAlphaMoveBound);\n\t\t\tstage.off(UtilPointerEvent.up, this._onAlphaUpBound);\n\t\t}\n\t}\n\n\tprotected onAlphaPick(global: Point): void {\n\t\tconst point = this._pointerPoint;\n\t\tconst padding = this._padding;\n\t\tconst theme = this.theme;\n\t\tconst mainWidth = theme.getMainWidth();\n\t\tthis.toLocal(global, undefined, point);\n\t\tconst x = Math.max(0, Math.min(mainWidth, point.x - padding.getLeft()));\n\t\tthis._alphaPointerSprite.x = x;\n\t\tthis.onAlphaNew(x / mainWidth);\n\t}\n\n\tprotected setAlphaNew(alpha: number): void {\n\t\tconst theme = this.theme;\n\t\tconst mainWidth = theme.getMainWidth();\n\t\tthis._alphaPointerSprite.x = Math.max(0, Math.min(1, alpha)) * mainWidth;\n\t\tthis.onAlphaNew(alpha);\n\t}\n\n\tprotected onAlphaNew(alpha: number): void {\n\t\tconst layer = DApplications.getLayer(this);\n\t\tif (layer) {\n\t\t\tlayer.lock();\n\t\t}\n\t\tthis._sampleNewSprite.alpha = this._new.alpha = alpha;\n\t\tthis._inputAndLabelAlpha.input.value = Number(alpha.toFixed(2));\n\t\tthis.emit(\"newalphachange\", alpha, this);\n\t\tif (layer) {\n\t\t\tlayer.unlock();\n\t\t\tlayer.update();\n\t\t}\n\t}\n\n\tprotected onRecentChange(): void {\n\t\tconst sprites = this._recentColorSprites;\n\t\tconst recent = this._recent;\n\t\tfor (let i = 0, imax = sprites.length; i < imax; ++i) {\n\t\t\tconst sprite = sprites[i];\n\t\t\tconst colorAndAlpha = recent.get(i);\n\t\t\tif (colorAndAlpha != null) {\n\t\t\t\tsprite.tint = colorAndAlpha.color;\n\t\t\t\tsprite.alpha = colorAndAlpha.alpha;\n\t\t\t} else {\n\t\t\t\tsprite.tint = 0xffffff;\n\t\t\t\tsprite.alpha = 0;\n\t\t\t}\n\t\t}\n\t}\n\n\tprotected onStandardChange(): void {\n\t\tconst sprites = this._standardColorSprites;\n\t\tconst standard = this._standard;\n\t\tfor (let i = 0, imax = sprites.length; i < imax; ++i) {\n\t\t\tconst sprite = sprites[i];\n\t\t\tconst color = standard.get(i);\n\t\t\tif (color != null) {\n\t\t\t\tsprite.tint = color;\n\t\t\t\tsprite.alpha = 1;\n\t\t\t} else {\n\t\t\t\tsprite.tint = 0xffffff;\n\t\t\t\tsprite.alpha = 1;\n\t\t\t}\n\t\t}\n\t}\n\n\tprotected onTypeChange(type: DColorType): void {\n\t\tswitch (type) {\n\t\t\tcase DColorType.CUSTOM:\n\t\t\t\tthis._mainBaseSprite.visible = true;\n\t\t\t\tthis._mainSprite.visible = true;\n\t\t\t\tthis._mainPointerSprite.visible = true;\n\t\t\t\tthis._baseSprite.visible = true;\n\t\t\t\tthis._mainStandardColor.visible = false;\n\t\t\t\tbreak;\n\t\t\tcase DColorType.STANDARD:\n\t\t\t\tthis._mainBaseSprite.visible = false;\n\t\t\t\tthis._mainSprite.visible = false;\n\t\t\t\tthis._mainPointerSprite.visible = false;\n\t\t\t\tthis._baseSprite.visible = false;\n\t\t\t\tthis._mainStandardColor.visible = true;\n\t\t\t\tbreak;\n\t\t\tdefault:\n\t\t\t\treturn;\n\t\t}\n\t}\n\n\tprotected getType(): string {\n\t\treturn \"DPickerColor\";\n\t}\n}\n"]}
1
+ {"version":3,"file":"d-picker-color.js","sourceRoot":"","sources":["../../../src/main/typescript/wcardinal/ui/d-picker-color.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, Sprite, Texture } from \"pixi.js\";\nimport InteractionEvent = interaction.InteractionEvent;\nimport { DApplications } from \"./d-applications\";\nimport { DBase, DBaseOptions, DThemeBase } from \"./d-base\";\nimport { DColorAndAlpha } from \"./d-color-and-alpha\";\nimport { DInputRealAndLabel } from \"./d-input-real-and-label\";\nimport { DInputTextAndLabel } from \"./d-input-text-and-label\";\nimport { DPickerColorAndAlpha } from \"./d-picker-color-and-alpha\";\nimport { DColorRecent } from \"./d-color-recent\";\nimport { UtilHsv } from \"./util/util-hsv\";\nimport { UtilPointerEvent } from \"./util/util-pointer-event\";\nimport { UtilRgb } from \"./util/util-rgb\";\nimport { DBaseInteractive } from \"./d-base-interactive\";\nimport { DColorStandard } from \"./d-color-standard\";\nimport { DSelect } from \"./d-select\";\nimport { DLayoutHorizontal } from \"./d-layout-horizontal\";\nimport { DColorType } from \"./d-color-type\";\nimport { DColorStandards } from \"./d-color-standards\";\nimport { DColorRecents } from \"./d-color-recents\";\n\nexport interface DPickerColorOptions<THEME extends DThemePickerColor = DThemePickerColor>\n\textends DBaseOptions<THEME> {}\n\nexport interface DThemePickerColor extends DThemeBase {\n\tgetMainWidth(): number;\n\tgetMainHeight(): number;\n\tgetMainTexture(): Texture;\n\tgetMainBaseTexture(): Texture;\n\tgetMainPointerTexture(): Texture;\n\tgetMainPointerColor(): number;\n\tgetMainPointerAlpha(): number;\n\n\tgetBaseHeight(): number;\n\tgetBaseMargin(): number;\n\tgetBaseTexture(): Texture;\n\tgetBasePointerTexture(): Texture;\n\tgetBasePointerColor(): number;\n\tgetBasePointerAlpha(): number;\n\n\tgetAlphaHeight(): number;\n\tgetAlphaMargin(): number;\n\tgetAlphaTexture(): Texture;\n\tgetAlphaCheckerboardTexture(): Texture;\n\tgetAlphaPointerTexture(): Texture;\n\tgetAlphaPointerColor(): number;\n\tgetAlphaPointerAlpha(): number;\n\n\tgetRecentMargin(): number;\n\tgetRecentColorMargin(): number;\n\tgetRecentColorWidth(): number;\n\tgetRecentColorHeight(): number;\n\tgetRecentColorCount(): number;\n\tgetRecentCheckerboardTexture(): Texture;\n\tgetRecentTexture(): Texture;\n\n\tgetInputMargin(): number;\n\tgetInputLabelWidth(): number;\n\n\tgetSampleCheckerboardOldTexture(): Texture;\n\tgetSampleCheckerboardNewTexture(): Texture;\n\tgetSampleOldTexture(): Texture;\n\tgetSampleNewTexture(): Texture;\n\n\tgetStandardColorCount(): number;\n\tgetStandardColorWidth(): number;\n\tgetStandardColorHeight(): number;\n\tgetStandardColorMargin(): number;\n\tgetStandardTexture(): Texture;\n\n\ttoColorTypeLabel(type: DColorType): string;\n}\n\nexport class DPickerColor<\n\tTHEME extends DThemePickerColor = DThemePickerColor,\n\tOPTIONS extends DPickerColorOptions<THEME> = DPickerColorOptions<THEME>\n> extends DBase<THEME, OPTIONS> {\n\tprotected _mainBaseSprite!: Sprite;\n\tprotected _mainSprite!: Sprite;\n\tprotected _mainPointerSprite!: Sprite;\n\tprotected _pointerPoint!: Point;\n\tprotected _mainStandardColor!: DLayoutHorizontal;\n\tprotected _onMainMoveBound!: (e: InteractionEvent) => void;\n\tprotected _onMainUpBound!: (e: InteractionEvent) => void;\n\n\tprotected _standardColorSprites!: Sprite[];\n\tprotected _standard!: DColorStandard;\n\n\tprotected _baseSprite!: Sprite;\n\tprotected _basePointerSprite!: Sprite;\n\tprotected _onBaseMoveBound!: (e: InteractionEvent) => void;\n\tprotected _onBaseUpBound!: (e: InteractionEvent) => void;\n\n\tprotected _alphaCheckerboardSprite!: Sprite;\n\tprotected _alphaSprite!: Sprite;\n\tprotected _alphaPointerSprite!: Sprite;\n\tprotected _onAlphaMoveBound!: (e: InteractionEvent) => void;\n\tprotected _onAlphaUpBound!: (e: InteractionEvent) => void;\n\n\tprotected _recentColorSprites!: Sprite[];\n\tprotected _recent!: DColorRecent;\n\n\tprotected _inputAndLabelColor!: DInputTextAndLabel;\n\tprotected _inputAndLabelAlpha!: DInputRealAndLabel;\n\n\tprotected _sampleCurrentCheckerboardSprite!: Sprite;\n\tprotected _sampleCurrentSprite!: Sprite;\n\tprotected _sampleNewCheckerboardSprite!: Sprite;\n\tprotected _sampleNewSprite!: Sprite;\n\n\tprotected _current!: DColorAndAlpha;\n\tprotected _currentPicker!: DPickerColorAndAlpha;\n\tprotected _base!: number;\n\tprotected _new!: DColorAndAlpha;\n\tprotected _newPicker!: DPickerColorAndAlpha;\n\n\tprotected _typeSelector!: DSelect<DColorType>;\n\n\tget current(): DColorAndAlpha {\n\t\treturn this._currentPicker;\n\t}\n\n\tget new(): DColorAndAlpha {\n\t\treturn this._newPicker;\n\t}\n\n\tget recent(): DColorRecent {\n\t\treturn this._recent;\n\t}\n\n\tget standard(): DColorStandard {\n\t\treturn this._standard;\n\t}\n\n\tprotected init(options?: OPTIONS): void {\n\t\tsuper.init(options);\n\n\t\tthis._base = 0xff0000;\n\t\tthis._new = { color: 0xffffff, alpha: 1 };\n\t\tthis._newPicker = new DPickerColorAndAlpha(\n\t\t\tthis._new,\n\t\t\t(color) => {\n\t\t\t\tthis.setColorNew(color);\n\t\t\t},\n\t\t\t(alpha: number) => {\n\t\t\t\tthis.setAlphaNew(alpha);\n\t\t\t}\n\t\t);\n\t\tthis._current = { color: 0xffffff, alpha: 1 };\n\t\tthis._currentPicker = new DPickerColorAndAlpha(\n\t\t\tthis._current,\n\t\t\t(color) => {\n\t\t\t\tthis.setColorCurrent(color);\n\t\t\t},\n\t\t\t(alpha: number) => {\n\t\t\t\tthis.setAlphaCurrent(alpha);\n\t\t\t}\n\t\t);\n\n\t\tconst theme = this.theme;\n\t\tconst padding = this._padding;\n\t\tconst paddingTop = padding.getTop();\n\t\tconst paddingRight = padding.getRight();\n\t\tconst paddingBottom = padding.getBottom();\n\t\tconst paddingLeft = padding.getLeft();\n\t\tthis._pointerPoint = new Point();\n\t\tconst mainWidth = theme.getMainWidth();\n\t\tconst mainHeight = theme.getMainHeight();\n\n\t\tconst typeSelector = new DSelect<DColorType>({\n\t\t\tparent: this,\n\t\t\tvalue: DColorType.STANDARD,\n\t\t\tmenu: {\n\t\t\t\titems: [\n\t\t\t\t\t{\n\t\t\t\t\t\tvalue: DColorType.STANDARD,\n\t\t\t\t\t\ttext: {\n\t\t\t\t\t\t\tvalue: theme.toColorTypeLabel(DColorType.STANDARD)\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tvalue: DColorType.CUSTOM,\n\t\t\t\t\t\ttext: {\n\t\t\t\t\t\t\tvalue: theme.toColorTypeLabel(DColorType.CUSTOM)\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t]\n\t\t\t},\n\t\t\ton: {\n\t\t\t\tchange: (value: DColorType): void => {\n\t\t\t\t\tthis.onTypeChange(value);\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\t\tthis._typeSelector = typeSelector;\n\t\ttypeSelector.x = paddingLeft;\n\t\ttypeSelector.y = paddingTop;\n\t\ttypeSelector.width = mainWidth;\n\t\ttypeSelector.interactive = true;\n\t\tthis.addChild(typeSelector);\n\n\t\t// Main\n\t\tconst mainBaseSprite = new Sprite(theme.getMainBaseTexture());\n\t\tthis._mainBaseSprite = mainBaseSprite;\n\t\tmainBaseSprite.x = paddingLeft;\n\t\tmainBaseSprite.y = typeSelector.y + typeSelector.height + theme.getBaseMargin();\n\t\tmainBaseSprite.width = mainWidth;\n\t\tmainBaseSprite.height = mainHeight;\n\t\tmainBaseSprite.interactive = true;\n\t\tmainBaseSprite.visible = false;\n\t\tthis.addChild(mainBaseSprite);\n\n\t\tconst mainSprite = new Sprite(theme.getMainTexture());\n\t\tthis._mainSprite = mainSprite;\n\t\tmainSprite.x = paddingLeft;\n\t\tmainSprite.y = typeSelector.y + typeSelector.height + theme.getBaseMargin();\n\t\tmainSprite.tint = this._base;\n\t\tmainSprite.interactive = false;\n\t\tmainSprite.visible = false;\n\t\tthis.addChild(mainSprite);\n\n\t\t// Main event handling\n\t\tthis._onMainMoveBound = (e: InteractionEvent): void => {\n\t\t\tthis.onMainMove(e);\n\t\t};\n\t\tthis._onMainUpBound = (e: InteractionEvent): void => {\n\t\t\tthis.onMainUp(e);\n\t\t};\n\t\tmainBaseSprite.on(UtilPointerEvent.down, (e: InteractionEvent) => {\n\t\t\tthis.onMainDown(e);\n\t\t});\n\n\t\t// Base color picker\n\t\tconst baseSprite = new Sprite(theme.getBaseTexture());\n\t\tthis._baseSprite = baseSprite;\n\t\tbaseSprite.x = paddingLeft;\n\t\tbaseSprite.y = mainBaseSprite.y + mainBaseSprite.height + theme.getBaseMargin();\n\t\tbaseSprite.interactive = true;\n\t\tbaseSprite.visible = false;\n\t\tthis.addChild(baseSprite);\n\n\t\t// Base event\n\t\tthis._onBaseMoveBound = (e: InteractionEvent): void => {\n\t\t\tthis.onBaseMove(e);\n\t\t};\n\t\tthis._onBaseUpBound = (e: InteractionEvent): void => {\n\t\t\tthis.onBaseUp(e);\n\t\t};\n\t\tbaseSprite.on(UtilPointerEvent.down, (e: InteractionEvent) => {\n\t\t\tthis.onBaseDown(e);\n\t\t});\n\n\t\t// Standard main color\n\t\tthis._standardColorSprites = [];\n\t\tconst standardColorSprites = this._standardColorSprites;\n\t\tconst standardColorCount = theme.getStandardColorCount();\n\t\tconst standardColorWidth = theme.getStandardColorWidth();\n\t\tconst standardColorHeight = theme.getStandardColorHeight();\n\t\tconst standardColorMargin = theme.getStandardColorMargin();\n\t\tconst standardColorY = typeSelector.y + typeSelector.height + theme.getBaseMargin();\n\t\tconst standardTexture = theme.getStandardTexture();\n\t\tconst standard = (this._standard = DColorStandards.getInstance());\n\t\tstandard.on(\"change\", () => {\n\t\t\tthis.onStandardChange();\n\t\t});\n\t\tconst onStandardClick = (e: InteractionEvent) => {\n\t\t\tconst sprite = e.currentTarget;\n\t\t\tif (sprite instanceof Sprite) {\n\t\t\t\tthis.setColorNew(sprite.tint);\n\t\t\t}\n\t\t};\n\t\tfor (let i = 0; i < standardColorCount; ++i) {\n\t\t\tconst x = paddingLeft + (i % 10) * (standardColorWidth + standardColorMargin);\n\t\t\tconst y =\n\t\t\t\tstandardColorY + Math.floor(i / 10) * (standardColorHeight + standardColorMargin);\n\n\t\t\tconst sprite = new Sprite(standardTexture);\n\t\t\tconst standardColor = standard.get(i);\n\t\t\tif (standardColor != null) {\n\t\t\t\tsprite.tint = standardColor;\n\t\t\t\tsprite.alpha = 1;\n\t\t\t} else {\n\t\t\t\tsprite.tint = 0xffffff;\n\t\t\t\tsprite.alpha = 1;\n\t\t\t}\n\t\t\tsprite.x = x;\n\t\t\tsprite.y = y;\n\t\t\tsprite.buttonMode = true;\n\t\t\tsprite.interactive = true;\n\t\t\tsprite.on(UtilPointerEvent.tap, onStandardClick);\n\t\t\tstandardColorSprites.push(sprite);\n\t\t}\n\t\tconst mainStandardColor = new DLayoutHorizontal({\n\t\t\twidth: \"auto\",\n\t\t\theight: \"auto\",\n\t\t\trow: 8,\n\t\t\tchildren: standardColorSprites\n\t\t});\n\t\tthis._mainStandardColor = mainStandardColor;\n\t\tmainStandardColor.visible = true;\n\t\tthis.addChild(mainStandardColor);\n\n\t\t// Alpha picker\n\t\tconst alphaCheckerboardSprite = new Sprite(theme.getAlphaCheckerboardTexture());\n\t\tthis._alphaCheckerboardSprite = alphaCheckerboardSprite;\n\t\talphaCheckerboardSprite.x = padding.getLeft();\n\t\talphaCheckerboardSprite.y = baseSprite.y + theme.getBaseHeight() + theme.getBaseMargin();\n\t\talphaCheckerboardSprite.interactive = false;\n\t\tthis.addChild(alphaCheckerboardSprite);\n\n\t\tconst alphaSprite = new Sprite(theme.getAlphaTexture());\n\t\talphaSprite.tint = this._new.color;\n\t\talphaSprite.interactive = true;\n\t\talphaCheckerboardSprite.addChild(alphaSprite);\n\n\t\t// Alpha event\n\t\tthis._onAlphaMoveBound = (e: InteractionEvent): void => {\n\t\t\tthis.onAlphaMove(e);\n\t\t};\n\t\tthis._onAlphaUpBound = (e: InteractionEvent): void => {\n\t\t\tthis.onAlphaUp(e);\n\t\t};\n\t\talphaSprite.on(UtilPointerEvent.down, (e: InteractionEvent) => {\n\t\t\tthis.onAlphaDown(e);\n\t\t});\n\n\t\t// Pointers\n\t\tconst mainPointerSprite = new Sprite(theme.getMainPointerTexture());\n\t\tthis._mainPointerSprite = mainPointerSprite;\n\t\tmainPointerSprite.x = paddingLeft;\n\t\tmainPointerSprite.y = typeSelector.y + typeSelector.height + theme.getBaseMargin();\n\t\tmainPointerSprite.anchor.x = 0.5;\n\t\tmainPointerSprite.anchor.y = 0.5;\n\t\tmainPointerSprite.tint = theme.getMainPointerColor();\n\t\tmainPointerSprite.alpha = theme.getMainPointerAlpha();\n\t\tmainPointerSprite.interactive = false;\n\t\tmainPointerSprite.visible = false;\n\t\tthis.addChild(mainPointerSprite);\n\n\t\tconst alphaPointerSprite = new Sprite(theme.getAlphaPointerTexture());\n\t\tthis._alphaPointerSprite = alphaPointerSprite;\n\t\talphaPointerSprite.x = mainWidth;\n\t\talphaPointerSprite.y = alphaCheckerboardSprite.height * 0.5;\n\t\talphaPointerSprite.tint = theme.getAlphaPointerColor();\n\t\talphaPointerSprite.alpha = theme.getAlphaPointerAlpha();\n\t\talphaPointerSprite.anchor.set(0.5, 0.5);\n\t\talphaPointerSprite.interactive = false;\n\t\talphaCheckerboardSprite.addChild(alphaPointerSprite);\n\n\t\tconst basePointerSprite = new Sprite(theme.getBasePointerTexture());\n\t\tthis._basePointerSprite = basePointerSprite;\n\t\tbasePointerSprite.x = 0;\n\t\tbasePointerSprite.y = baseSprite.height * 0.5;\n\t\tbasePointerSprite.tint = theme.getBasePointerColor();\n\t\tbasePointerSprite.alpha = theme.getBasePointerAlpha();\n\t\tbasePointerSprite.anchor.set(0.5, 0.5);\n\t\tbasePointerSprite.interactive = false;\n\t\tbaseSprite.addChild(basePointerSprite);\n\n\t\t// Recently used\n\t\tthis._recentColorSprites = [];\n\t\tconst recentColorSprites = this._recentColorSprites;\n\t\tconst recentColorCount = theme.getRecentColorCount();\n\t\tconst recentColorWidth = theme.getRecentColorWidth();\n\t\tconst recentColorHeight = theme.getRecentColorHeight();\n\t\tconst recentColorMargin = theme.getRecentColorMargin();\n\t\tconst recentColorY =\n\t\t\talphaCheckerboardSprite.y + theme.getAlphaHeight() + theme.getRecentMargin();\n\t\tconst recentCheckerboardTexture = theme.getRecentCheckerboardTexture();\n\t\tconst recentTexture = theme.getRecentTexture();\n\t\tconst recent = (this._recent = DColorRecents.getInstance());\n\t\trecent.on(\"change\", () => {\n\t\t\tthis.onRecentChange();\n\t\t});\n\t\tconst onRecentClick = (e: InteractionEvent) => {\n\t\t\tconst sprite = e.currentTarget;\n\t\t\tif (sprite instanceof Sprite) {\n\t\t\t\tthis.setColorNew(sprite.tint);\n\t\t\t\tthis.setAlphaNew(sprite.alpha);\n\t\t\t}\n\t\t};\n\t\tfor (let i = 0; i < recentColorCount; ++i) {\n\t\t\tconst x = paddingLeft + i * (recentColorWidth + recentColorMargin);\n\t\t\tconst y = recentColorY;\n\n\t\t\tconst checkerboardSprite = new Sprite(recentCheckerboardTexture);\n\t\t\tcheckerboardSprite.x = x;\n\t\t\tcheckerboardSprite.y = y;\n\t\t\tcheckerboardSprite.interactive = false;\n\t\t\tthis.addChild(checkerboardSprite);\n\n\t\t\tconst sprite = new Sprite(recentTexture);\n\t\t\tconst recentColorAndAlpha = recent.get(i);\n\t\t\tif (recentColorAndAlpha != null) {\n\t\t\t\tsprite.tint = recentColorAndAlpha.color;\n\t\t\t\tsprite.alpha = recentColorAndAlpha.alpha;\n\t\t\t} else {\n\t\t\t\tsprite.tint = 0xffffff;\n\t\t\t\tsprite.alpha = 0;\n\t\t\t}\n\t\t\tsprite.x = x;\n\t\t\tsprite.y = y;\n\t\t\tsprite.buttonMode = true;\n\t\t\tsprite.interactive = true;\n\t\t\tsprite.on(UtilPointerEvent.tap, onRecentClick);\n\t\t\tthis.addChild(sprite);\n\t\t\trecentColorSprites.push(sprite);\n\t\t}\n\n\t\t// Input color\n\t\tconst inputMargin = theme.getInputMargin();\n\t\tconst inputLabelWidth = theme.getInputLabelWidth();\n\t\tconst inputY = recentColorY + recentColorHeight + inputMargin;\n\t\tconst inputWidth = (mainWidth - inputMargin) * 0.5;\n\t\tconst inputAndLabelColor = new DInputTextAndLabel({\n\t\t\tparent: this,\n\t\t\tx: paddingLeft,\n\t\t\ty: inputY,\n\t\t\twidth: inputWidth,\n\t\t\tlabel: {\n\t\t\t\twidth: inputLabelWidth,\n\t\t\t\ttext: {\n\t\t\t\t\tvalue: \"#\"\n\t\t\t\t},\n\t\t\t\tinteractive: DBaseInteractive.NONE\n\t\t\t},\n\t\t\tinput: {\n\t\t\t\tweight: 1,\n\t\t\t\ttext: {\n\t\t\t\t\tvalue: \"FFFFFF\"\n\t\t\t\t},\n\t\t\t\ton: {\n\t\t\t\t\tinput: (code: string): void => {\n\t\t\t\t\t\tconst color = UtilRgb.fromCode(code);\n\t\t\t\t\t\tif (color != null) {\n\t\t\t\t\t\t\tthis.setColorNew(color);\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\t\tthis._inputAndLabelColor = inputAndLabelColor;\n\t\tconst inputHeight = inputAndLabelColor.height;\n\n\t\tconst inputAndLabelAlpha = new DInputRealAndLabel({\n\t\t\tparent: this,\n\t\t\tx: paddingLeft,\n\t\t\ty: inputY + inputHeight + inputMargin,\n\t\t\twidth: inputWidth,\n\t\t\tlabel: {\n\t\t\t\twidth: inputLabelWidth,\n\t\t\t\ttext: {\n\t\t\t\t\tvalue: \"A\"\n\t\t\t\t},\n\t\t\t\tinteractive: DBaseInteractive.NONE\n\t\t\t},\n\t\t\tinput: {\n\t\t\t\tweight: 1,\n\t\t\t\ttext: {\n\t\t\t\t\tvalue: 1\n\t\t\t\t},\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\ton: {\n\t\t\t\t\tinput: (value: number) => {\n\t\t\t\t\t\tthis.setAlphaNew(value);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\t\tthis._inputAndLabelAlpha = inputAndLabelAlpha;\n\n\t\t// Samples\n\t\tconst sampleWidth = (inputWidth - inputLabelWidth - inputMargin) * 0.5;\n\t\tconst sampleHeight = inputHeight + inputMargin + inputHeight;\n\t\tconst sampleX = paddingLeft + (mainWidth - inputMargin) * 0.5 + inputMargin;\n\t\tconst sampleY =\n\t\t\tinputY + (inputHeight + inputMargin + inputAndLabelAlpha.height - sampleHeight) * 0.5;\n\n\t\tconst sampleCurrentCheckerboardSprite = new Sprite(theme.getSampleCheckerboardOldTexture());\n\t\tthis._sampleCurrentCheckerboardSprite = sampleCurrentCheckerboardSprite;\n\t\tsampleCurrentCheckerboardSprite.x = sampleX;\n\t\tsampleCurrentCheckerboardSprite.y = sampleY;\n\t\tsampleCurrentCheckerboardSprite.width = sampleWidth;\n\t\tsampleCurrentCheckerboardSprite.height = sampleHeight;\n\t\tsampleCurrentCheckerboardSprite.interactive = false;\n\t\tthis.addChild(sampleCurrentCheckerboardSprite);\n\n\t\tconst current = this._current;\n\t\tconst sampleCurrentSprite = new Sprite(theme.getSampleOldTexture());\n\t\tthis._sampleCurrentSprite = sampleCurrentSprite;\n\t\tsampleCurrentSprite.x = sampleX;\n\t\tsampleCurrentSprite.y = sampleY;\n\t\tsampleCurrentSprite.tint = current.color;\n\t\tsampleCurrentSprite.alpha = current.alpha;\n\t\tsampleCurrentSprite.width = sampleWidth;\n\t\tsampleCurrentSprite.height = sampleHeight;\n\t\tsampleCurrentSprite.interactive = true;\n\t\tsampleCurrentSprite.buttonMode = true;\n\t\tsampleCurrentSprite.on(UtilPointerEvent.tap, (): void => {\n\t\t\tthis.setColorNew(current.color);\n\t\t\tthis.setAlphaNew(current.alpha);\n\t\t});\n\t\tthis.addChild(sampleCurrentSprite);\n\n\t\tconst sampleNewCheckerboardSprite = new Sprite(theme.getSampleCheckerboardNewTexture());\n\t\tthis._sampleNewCheckerboardSprite = sampleNewCheckerboardSprite;\n\t\tsampleNewCheckerboardSprite.x = sampleX + sampleWidth;\n\t\tsampleNewCheckerboardSprite.y = sampleY;\n\t\tsampleNewCheckerboardSprite.width = sampleWidth;\n\t\tsampleNewCheckerboardSprite.height = sampleHeight;\n\t\tsampleNewCheckerboardSprite.interactive = false;\n\t\tthis.addChild(sampleNewCheckerboardSprite);\n\n\t\tconst sampleNewSprite = new Sprite(theme.getSampleNewTexture());\n\t\tthis._sampleNewSprite = sampleNewSprite;\n\t\tsampleNewSprite.x = sampleX + sampleWidth;\n\t\tsampleNewSprite.y = sampleY;\n\t\tsampleNewSprite.tint = this._new.color;\n\t\tsampleNewSprite.alpha = this._new.alpha;\n\t\tsampleNewSprite.width = sampleWidth;\n\t\tsampleNewSprite.height = sampleHeight;\n\t\tsampleNewSprite.interactive = false;\n\t\tthis.addChild(sampleNewSprite);\n\n\t\t// Width\n\t\tif (options == null || options.width == null) {\n\t\t\tthis.width = paddingLeft + mainWidth + paddingRight;\n\t\t}\n\n\t\t// Height\n\t\tif (options == null || options.height == null) {\n\t\t\tthis.height =\n\t\t\t\tinputY +\n\t\t\t\tinputAndLabelColor.height +\n\t\t\t\tinputMargin +\n\t\t\t\tinputAndLabelAlpha.height +\n\t\t\t\tpaddingBottom;\n\t\t}\n\t}\n\n\tprotected onMainDown(e: InteractionEvent): void {\n\t\tthis.onMainPick(e.data.global);\n\n\t\tconst layer = DApplications.getLayer(this);\n\t\tif (layer) {\n\t\t\tconst stage = layer.stage;\n\t\t\tstage.on(UtilPointerEvent.move, this._onMainMoveBound);\n\t\t\tstage.on(UtilPointerEvent.up, this._onMainUpBound);\n\t\t\tstage.on(UtilPointerEvent.upoutside, this._onMainUpBound);\n\t\t}\n\t}\n\n\tprotected onMainMove(e: InteractionEvent): void {\n\t\tthis.onMainPick(e.data.global);\n\t}\n\n\tprotected onMainUp(e: InteractionEvent): void {\n\t\tconst layer = DApplications.getLayer(this);\n\t\tif (layer) {\n\t\t\tconst stage = layer.stage;\n\t\t\tstage.off(UtilPointerEvent.move, this._onMainMoveBound);\n\t\t\tstage.off(UtilPointerEvent.up, this._onMainUpBound);\n\t\t}\n\t}\n\n\tprotected toMainHex(b: number, w0: number, w1: number, shift: number): number {\n\t\treturn Math.max(0, Math.min(255, w0 * 255 + w1 * ((b >> shift) & 0xff))) << shift;\n\t}\n\n\tprotected toMainColor(\n\t\tbase: number,\n\t\ttx: number,\n\t\tty: number,\n\t\twidth: number,\n\t\theight: number\n\t): number {\n\t\tconst hw = width * 0.5;\n\t\tconst ux = Math.max(0, Math.min(1, ((tx - hw) * (1 - ty / height) + hw) / width));\n\t\tconst uy = Math.max(0, Math.min(1, ty / height));\n\t\tconst w1 = Math.abs(0.5 * uy - ux);\n\t\tconst w0 = 1 - w1 - uy;\n\t\tconst r = this.toMainHex(base, w0, w1, 16);\n\t\tconst g = this.toMainHex(base, w0, w1, 8);\n\t\tconst b = this.toMainHex(base, w0, w1, 0);\n\t\treturn r | g | b;\n\t}\n\n\tprotected onMainPick(global: Point): void {\n\t\tconst mainBaseSprite = this._mainBaseSprite;\n\t\tconst point = this._pointerPoint;\n\t\tconst theme = this.theme;\n\t\tconst mainWidth = theme.getMainWidth();\n\t\tconst mainHeight = theme.getMainHeight();\n\t\tthis.toLocal(global, undefined, point);\n\t\tconst x = Math.max(0, Math.min(mainWidth, point.x - mainBaseSprite.x));\n\t\tconst y = Math.max(0, Math.min(mainHeight, point.y - mainBaseSprite.y));\n\t\tconst mainPointerSprite = this._mainPointerSprite;\n\t\tmainPointerSprite.position.set(mainBaseSprite.x + x, mainBaseSprite.y + y);\n\t\tthis.onColorNew(this.toMainColor(this._base, x, y, mainWidth, mainHeight));\n\t}\n\n\tprotected setColorCurrent(color: number): void {\n\t\tthis._sampleCurrentSprite.tint = this._current.color = color;\n\t}\n\n\tprotected setAlphaCurrent(alpha: number): void {\n\t\tthis._sampleCurrentSprite.alpha = this._current.alpha = alpha;\n\t}\n\n\tprotected setColorNew(color: number): void {\n\t\tconst theme = this.theme;\n\t\tconst mainWidth = theme.getMainWidth();\n\t\tconst mainHeight = theme.getMainHeight();\n\t\tconst mainBaseSprite = this._mainBaseSprite;\n\n\t\t// Base color\n\t\tconst hsv = UtilHsv.fromRgb(color);\n\t\tthis._mainSprite.tint = this._base = UtilHsv.toRgb(hsv[0], 255, 255);\n\n\t\t// Move the base pointer\n\t\tconst basePointerSprite = this._basePointerSprite;\n\t\tbasePointerSprite.x = Math.max(0, Math.min(1, hsv[0] / 360)) * mainWidth;\n\n\t\t// Move the main pointer\n\t\tconst ns = Math.max(0, Math.min(1, hsv[1] / 255));\n\t\tconst nv = Math.max(0, Math.min(1, 1 - hsv[2] / 255));\n\t\tconst mainPointerSprite = this._mainPointerSprite;\n\t\tmainPointerSprite.tint = nv < 0.45 ? theme.getMainPointerColor() : 0xffffff;\n\t\tmainPointerSprite.position.set(\n\t\t\tmainBaseSprite.x + ns * mainWidth,\n\t\t\tmainBaseSprite.y + nv * mainHeight\n\t\t);\n\n\t\t// New color\n\t\tthis.onColorNew(color);\n\t}\n\n\tprotected onColorNew(color: number): void {\n\t\tconst layer = DApplications.getLayer(this);\n\t\tif (layer) {\n\t\t\tlayer.lock();\n\t\t}\n\t\tthis._sampleNewSprite.tint = this._new.color = color;\n\t\tthis._inputAndLabelColor.input.value = UtilRgb.toCode(color);\n\t\tthis.emit(\"newcolorchange\", color, this);\n\t\tif (layer) {\n\t\t\tlayer.unlock();\n\t\t\tlayer.update();\n\t\t}\n\t}\n\n\tprotected onBaseDown(e: InteractionEvent): void {\n\t\tthis.onBasePick(e.data.global);\n\n\t\tconst layer = DApplications.getLayer(this);\n\t\tif (layer) {\n\t\t\tconst stage = layer.stage;\n\t\t\tstage.on(UtilPointerEvent.move, this._onBaseMoveBound);\n\t\t\tstage.on(UtilPointerEvent.up, this._onBaseUpBound);\n\t\t}\n\t}\n\n\tprotected onBaseMove(e: InteractionEvent): void {\n\t\tthis.onBasePick(e.data.global);\n\t}\n\n\tprotected onBaseUp(e: InteractionEvent): void {\n\t\tconst layer = DApplications.getLayer(this);\n\t\tif (layer) {\n\t\t\tconst stage = layer.stage;\n\t\t\tstage.off(UtilPointerEvent.move, this._onBaseMoveBound);\n\t\t\tstage.off(UtilPointerEvent.up, this._onBaseUpBound);\n\t\t}\n\t}\n\n\tprotected toBaseHex(t: number, shift: number): number {\n\t\treturn Math.max(0, Math.min(255, t * 6 * 255)) << shift;\n\t}\n\n\tprotected toBaseColor(t: number): number {\n\t\tif (t <= 0.167) {\n\t\t\treturn 0xff0000 + this.toBaseHex(t, 8);\n\t\t} else if (t <= 0.333) {\n\t\t\tt = 0.333 - t;\n\t\t\treturn 0x00ff00 + this.toBaseHex(t, 16);\n\t\t} else if (t <= 0.5) {\n\t\t\tt -= 0.333;\n\t\t\treturn 0x00ff00 + this.toBaseHex(t, 0);\n\t\t} else if (t < 0.667) {\n\t\t\tt = 0.667 - t;\n\t\t\treturn 0x0000ff + this.toBaseHex(t, 8);\n\t\t} else if (t < 0.883) {\n\t\t\tt -= 0.667;\n\t\t\treturn 0x0000ff + this.toBaseHex(t, 16);\n\t\t} else {\n\t\t\tt = 0.883 - t;\n\t\t\treturn 0xff0000 + this.toBaseHex(t, 0);\n\t\t}\n\t}\n\n\tprotected onBasePick(global: Point): void {\n\t\tconst point = this._pointerPoint;\n\t\tconst padding = this._padding;\n\t\tconst theme = this.theme;\n\t\tconst mainWidth = theme.getMainWidth();\n\t\tthis.toLocal(global, undefined, point);\n\t\tconst x = Math.max(0, Math.min(mainWidth, point.x - padding.getLeft()));\n\t\tconst basePointerSprite = this._basePointerSprite;\n\t\tbasePointerSprite.x = x;\n\t\tthis.onColorBase(this.toBaseColor(x / mainWidth));\n\t}\n\n\tprotected setColorBase(h: number): void {\n\t\tconst theme = this.theme;\n\t\tconst mainWidth = theme.getMainWidth();\n\t\tconst basePointerSprite = this._basePointerSprite;\n\t\tbasePointerSprite.x = Math.max(0, Math.min(1, h / 360)) * mainWidth;\n\t\tthis.onColorBase(UtilHsv.toRgb(h, 255, 255));\n\t}\n\n\tprotected onColorBase(color: number): void {\n\t\tthis._mainSprite.tint = this._base = color;\n\n\t\tconst mainPointerSprite = this._mainPointerSprite;\n\t\tconst theme = this.theme;\n\t\tconst mainWidth = theme.getMainWidth();\n\t\tconst mainHeight = theme.getMainHeight();\n\t\tconst padding = this._padding;\n\t\tthis.onColorNew(\n\t\t\tthis.toMainColor(\n\t\t\t\tthis._base,\n\t\t\t\tmainPointerSprite.x - padding.getLeft(),\n\t\t\t\tmainPointerSprite.y - padding.getTop(),\n\t\t\t\tmainWidth,\n\t\t\t\tmainHeight\n\t\t\t)\n\t\t);\n\t}\n\n\tprotected onAlphaDown(e: InteractionEvent): void {\n\t\tthis.onAlphaPick(e.data.global);\n\n\t\tconst layer = DApplications.getLayer(this);\n\t\tif (layer) {\n\t\t\tconst stage = layer.stage;\n\t\t\tstage.on(UtilPointerEvent.move, this._onAlphaMoveBound);\n\t\t\tstage.on(UtilPointerEvent.up, this._onAlphaUpBound);\n\t\t}\n\t}\n\n\tprotected onAlphaMove(e: InteractionEvent): void {\n\t\tthis.onAlphaPick(e.data.global);\n\t}\n\n\tprotected onAlphaUp(e: InteractionEvent): void {\n\t\tconst layer = DApplications.getLayer(this);\n\t\tif (layer) {\n\t\t\tconst stage = layer.stage;\n\t\t\tstage.off(UtilPointerEvent.move, this._onAlphaMoveBound);\n\t\t\tstage.off(UtilPointerEvent.up, this._onAlphaUpBound);\n\t\t}\n\t}\n\n\tprotected onAlphaPick(global: Point): void {\n\t\tconst point = this._pointerPoint;\n\t\tconst padding = this._padding;\n\t\tconst theme = this.theme;\n\t\tconst mainWidth = theme.getMainWidth();\n\t\tthis.toLocal(global, undefined, point);\n\t\tconst x = Math.max(0, Math.min(mainWidth, point.x - padding.getLeft()));\n\t\tthis._alphaPointerSprite.x = x;\n\t\tthis.onAlphaNew(x / mainWidth);\n\t}\n\n\tprotected setAlphaNew(alpha: number): void {\n\t\tconst theme = this.theme;\n\t\tconst mainWidth = theme.getMainWidth();\n\t\tthis._alphaPointerSprite.x = Math.max(0, Math.min(1, alpha)) * mainWidth;\n\t\tthis.onAlphaNew(alpha);\n\t}\n\n\tprotected onAlphaNew(alpha: number): void {\n\t\tconst layer = DApplications.getLayer(this);\n\t\tif (layer) {\n\t\t\tlayer.lock();\n\t\t}\n\t\tthis._sampleNewSprite.alpha = this._new.alpha = alpha;\n\t\tthis._inputAndLabelAlpha.input.value = Number(alpha.toFixed(2));\n\t\tthis.emit(\"newalphachange\", alpha, this);\n\t\tif (layer) {\n\t\t\tlayer.unlock();\n\t\t\tlayer.update();\n\t\t}\n\t}\n\n\tprotected onRecentChange(): void {\n\t\tconst sprites = this._recentColorSprites;\n\t\tconst recent = this._recent;\n\t\tfor (let i = 0, imax = sprites.length; i < imax; ++i) {\n\t\t\tconst sprite = sprites[i];\n\t\t\tconst colorAndAlpha = recent.get(i);\n\t\t\tif (colorAndAlpha != null) {\n\t\t\t\tsprite.tint = colorAndAlpha.color;\n\t\t\t\tsprite.alpha = colorAndAlpha.alpha;\n\t\t\t} else {\n\t\t\t\tsprite.tint = 0xffffff;\n\t\t\t\tsprite.alpha = 0;\n\t\t\t}\n\t\t}\n\t}\n\n\tprotected onStandardChange(): void {\n\t\tconst sprites = this._standardColorSprites;\n\t\tconst standard = this._standard;\n\t\tfor (let i = 0, imax = sprites.length; i < imax; ++i) {\n\t\t\tconst sprite = sprites[i];\n\t\t\tconst color = standard.get(i);\n\t\t\tif (color != null) {\n\t\t\t\tsprite.tint = color;\n\t\t\t\tsprite.alpha = 1;\n\t\t\t} else {\n\t\t\t\tsprite.tint = 0xffffff;\n\t\t\t\tsprite.alpha = 1;\n\t\t\t}\n\t\t}\n\t}\n\n\tprotected onTypeChange(type: DColorType): void {\n\t\tswitch (type) {\n\t\t\tcase DColorType.CUSTOM:\n\t\t\t\tthis._mainBaseSprite.visible = true;\n\t\t\t\tthis._mainSprite.visible = true;\n\t\t\t\tthis._mainPointerSprite.visible = true;\n\t\t\t\tthis._baseSprite.visible = true;\n\t\t\t\tthis._mainStandardColor.visible = false;\n\t\t\t\tbreak;\n\t\t\tcase DColorType.STANDARD:\n\t\t\t\tthis._mainBaseSprite.visible = false;\n\t\t\t\tthis._mainSprite.visible = false;\n\t\t\t\tthis._mainPointerSprite.visible = false;\n\t\t\t\tthis._baseSprite.visible = false;\n\t\t\t\tthis._mainStandardColor.visible = true;\n\t\t\t\tbreak;\n\t\t\tdefault:\n\t\t\t\treturn;\n\t\t}\n\t}\n\n\tprotected getType(): string {\n\t\treturn \"DPickerColor\";\n\t}\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"d-scalar-expression.js","sourceRoot":"","sources":["../../../src/main/typescript/wcardinal/ui/d-scalar-expression.ts"],"names":[],"mappings":"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","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { DScalar } from \"./d-scalar\";\nimport { isNumber } from \"./util/is-number\";\n\nexport const DScalarExpressionNodeType = {\n\t// Parensesis\n\tOPEN: 0,\n\tCLOSE: 1,\n\tPARENSESIS: 2,\n\n\t// Operations\n\tADD_OR_PLUS: 3,\n\tSUB_OR_MINUS: 4,\n\n\tPLUS: 5,\n\tMINUS: 6,\n\n\tADD: 7,\n\tSUB: 8,\n\tMUL: 9,\n\tDIV: 10,\n\n\t// Functions\n\tMIN: 11,\n\tMAX: 12,\n\tCOMMA: 13,\n\n\t// Literals\n\tPARENT: 14,\n\tSELF: 15,\n\tPADDING: 16,\n\tCURRENT: 17,\n\tNUMBER: 18\n} as const;\n\nexport type DScalarExpressionNodeType =\n\ttypeof DScalarExpressionNodeType[keyof typeof DScalarExpressionNodeType];\n\nexport type DScalarExpressionNodeTypeOperator =\n\t| typeof DScalarExpressionNodeType.SUB_OR_MINUS\n\t| typeof DScalarExpressionNodeType.ADD_OR_PLUS\n\t| typeof DScalarExpressionNodeType.SUB\n\t| typeof DScalarExpressionNodeType.ADD\n\t| typeof DScalarExpressionNodeType.MUL\n\t| typeof DScalarExpressionNodeType.DIV\n\t| typeof DScalarExpressionNodeType.OPEN\n\t| typeof DScalarExpressionNodeType.CLOSE\n\t| typeof DScalarExpressionNodeType.MIN\n\t| typeof DScalarExpressionNodeType.MAX\n\t| typeof DScalarExpressionNodeType.COMMA;\n\nexport type DScalarExpressionNodeTypeLiteral =\n\t| typeof DScalarExpressionNodeType.NUMBER\n\t| typeof DScalarExpressionNodeType.PARENT\n\t| typeof DScalarExpressionNodeType.SELF\n\t| typeof DScalarExpressionNodeType.PADDING\n\t| typeof DScalarExpressionNodeType.CURRENT;\n\nexport type DScalarExpressionToken =\n\t| DScalarExpressionNodeTypeOperator\n\t| [DScalarExpressionNodeTypeLiteral, number];\n\nexport interface DScalarExpressionNodeOrTokenParensesis {\n\t[0]: typeof DScalarExpressionNodeType.PARENSESIS;\n\t[1]: DScalarExpressionNodeOrToken[];\n}\n\nexport interface DScalarExpressionNodeOrTokenUnary {\n\t[0]: typeof DScalarExpressionNodeType.PLUS | typeof DScalarExpressionNodeType.MINUS;\n\t[1]: DScalarExpressionNodeOrToken;\n}\n\nexport type DScalarExpressionNodeArithmeticOperator =\n\t| typeof DScalarExpressionNodeType.SUB\n\t| typeof DScalarExpressionNodeType.ADD\n\t| typeof DScalarExpressionNodeType.MUL\n\t| typeof DScalarExpressionNodeType.DIV;\n\nexport interface DScalarExpressionNodeOrTokenArithmetic {\n\t[0]: DScalarExpressionNodeArithmeticOperator;\n\t[1]: DScalarExpressionNodeOrToken;\n\t[2]: DScalarExpressionNodeOrToken;\n}\n\nexport interface DScalarExpressionNodeOrTokenFunction {\n\t[0]: typeof DScalarExpressionNodeType.MIN | typeof DScalarExpressionNodeType.MAX;\n\t[1]: DScalarExpressionNodeOrToken[];\n}\n\nexport type DScalarExpressionNodeOrToken =\n\t| DScalarExpressionToken\n\t| DScalarExpressionNodeOrTokenParensesis\n\t| DScalarExpressionNodeOrTokenUnary\n\t| DScalarExpressionNodeOrTokenArithmetic\n\t| DScalarExpressionNodeOrTokenFunction;\n\nexport interface DScalarExpressionNodeLiteral {\n\t[0]: DScalarExpressionNodeTypeLiteral;\n\t[1]: number;\n}\n\nexport interface DScalarExpressionNodeParensesis {\n\t[0]: typeof DScalarExpressionNodeType.PARENSESIS;\n\t[1]: DScalarExpressionNode[];\n}\n\nexport interface DScalarExpressionNodeUnary {\n\t[0]: typeof DScalarExpressionNodeType.PLUS | typeof DScalarExpressionNodeType.MINUS;\n\t[1]: DScalarExpressionNode;\n}\n\nexport interface DScalarExpressionNodeArithmetic {\n\t[0]: DScalarExpressionNodeArithmeticOperator;\n\t[1]: DScalarExpressionNode;\n\t[2]: DScalarExpressionNode;\n}\n\nexport interface DScalarExpressionNodeFunction {\n\t[0]: typeof DScalarExpressionNodeType.MIN | typeof DScalarExpressionNodeType.MAX;\n\t[1]: DScalarExpressionNode[];\n}\n\nexport type DScalarExpressionNode =\n\t| DScalarExpressionNodeParensesis\n\t| DScalarExpressionNodeUnary\n\t| DScalarExpressionNodeArithmetic\n\t| DScalarExpressionNodeFunction\n\t| DScalarExpressionNodeLiteral;\n\n/**\n * Parser and evaluator of the scalar expressions like `100% - 50s`.\n *\n * Literals\n *\n * * x%: 0.01 * x * parent value\n * * xs: 0.01 * x * self value\n * * xp: 0.01 * x * padding value\n * * xc: 0.01 * x * current value\n *\n * Operators\n *\n * * `+`\n * * `-`\n * * `*`\n * * `/`\n * * `(` and `)`\n *\n * Functions\n *\n * * min( a, b, ... )\n * * max( a, b, ... )\n *\n * Examples\n *\n * * `90%`: 0.9 * parent value\n * * `50s`: 0.5 * self value\n * * `90% - 50s`: 0.9 * parent value - 0.5 * self value\n * * `90% - (50s + 100) * 2`: 0.9 * parent value - ( 0.5 * self value + 100 ) * 2\n */\nexport class DScalarExpression implements DScalar {\n\tprotected static TOKEN_REGEX = /(?:\\+|-|\\*|\\/|\\(|\\)|min|max|,|(?:\\d+(?:\\.\\d*)?[%psc]?))/g;\n\tprotected _node: DScalarExpressionNode;\n\n\tconstructor(expression: string) {\n\t\tconst nodes: DScalarExpressionNodeOrToken[] = this.toToken(expression);\n\t\tlet i = 0;\n\t\tdo {\n\t\t\ti = this.toParensesis(nodes, i);\n\t\t} while (i < nodes.length);\n\t\tthis.toUnary(nodes);\n\t\tthis.toArithmetic(nodes, DScalarExpressionNodeType.MUL, DScalarExpressionNodeType.DIV);\n\t\tthis.toArithmetic(nodes, DScalarExpressionNodeType.ADD, DScalarExpressionNodeType.SUB);\n\t\tif (nodes.length === 1) {\n\t\t\tconst node = nodes[0];\n\t\t\tif (!isNumber(node)) {\n\t\t\t\tthis._node = node as any;\n\t\t\t\treturn;\n\t\t\t}\n\t\t}\n\t\tthrow new Error(`Failed to parse '${expression}'`);\n\t}\n\n\ttoParensesis(nodes: DScalarExpressionNodeOrToken[], ifrom: number): number {\n\t\tlet ito = nodes.length;\n\t\tfor (let i = ifrom; i < ito; ++i) {\n\t\t\tconst inode = nodes[i];\n\t\t\tif (inode === DScalarExpressionNodeType.OPEN) {\n\t\t\t\tlet istart = i;\n\t\t\t\tlet nodeType: DScalarExpressionNodeType = DScalarExpressionNodeType.PARENSESIS;\n\t\t\t\tif (0 < i) {\n\t\t\t\t\tconst nodeTypePrev = nodes[i - 1];\n\t\t\t\t\tif (\n\t\t\t\t\t\tnodeTypePrev === DScalarExpressionNodeType.MIN ||\n\t\t\t\t\t\tnodeTypePrev === DScalarExpressionNodeType.MAX\n\t\t\t\t\t) {\n\t\t\t\t\t\tistart -= 1;\n\t\t\t\t\t\tnodeType = nodeTypePrev;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tfor (let j = i + 1; j < ito; ++j) {\n\t\t\t\t\tconst jnode = nodes[j];\n\t\t\t\t\tif (jnode === DScalarExpressionNodeType.CLOSE) {\n\t\t\t\t\t\tnodes[istart] = [nodeType, this.toComma(nodes, i + 1, j)];\n\t\t\t\t\t\tnodes.splice(istart + 1, j - istart);\n\t\t\t\t\t\treturn istart + 1;\n\t\t\t\t\t} else if (jnode === DScalarExpressionNodeType.OPEN) {\n\t\t\t\t\t\tj = this.toParensesis(nodes, j) - 1;\n\t\t\t\t\t\tito = nodes.length;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tthrow new Error(`Malformed parensesis`);\n\t\t\t}\n\t\t}\n\t\treturn ito;\n\t}\n\n\ttoCommaOf(\n\t\tnodes: DScalarExpressionNodeOrToken[],\n\t\tifrom: number,\n\t\tito: number\n\t): DScalarExpressionNodeOrToken {\n\t\tconst l = ito - ifrom;\n\t\tif (l <= 0) {\n\t\t\treturn [DScalarExpressionNodeType.NUMBER, 0];\n\t\t} else if (l <= 1) {\n\t\t\treturn nodes[ifrom];\n\t\t} else {\n\t\t\tconst operand: DScalarExpressionNodeOrToken[] = [];\n\t\t\tfor (let j = ifrom; j < ito; ++j) {\n\t\t\t\toperand.push(nodes[j]);\n\t\t\t}\n\t\t\treturn [DScalarExpressionNodeType.PARENSESIS, operand];\n\t\t}\n\t}\n\n\ttoComma(\n\t\tnodes: DScalarExpressionNodeOrToken[],\n\t\tifrom: number,\n\t\tito: number\n\t): DScalarExpressionNodeOrToken[] {\n\t\tlet result: DScalarExpressionNodeOrToken[] | null = null;\n\t\tlet iprev = ifrom;\n\t\tfor (let i = ifrom; i < ito; ++i) {\n\t\t\tconst node = nodes[i];\n\t\t\tif (node === DScalarExpressionNodeType.COMMA) {\n\t\t\t\tresult = result || [];\n\t\t\t\tresult.push(this.toCommaOf(nodes, iprev, i));\n\t\t\t\tiprev = i + 1;\n\t\t\t}\n\t\t}\n\t\tif (iprev < ito) {\n\t\t\tif (result == null) {\n\t\t\t\tconst operand: DScalarExpressionNodeOrToken[] = [];\n\t\t\t\tfor (let i = iprev; i < ito; ++i) {\n\t\t\t\t\toperand.push(nodes[i]);\n\t\t\t\t}\n\t\t\t\treturn operand;\n\t\t\t} else {\n\t\t\t\tresult.push(this.toCommaOf(nodes, iprev, ito));\n\t\t\t}\n\t\t}\n\t\treturn result || [];\n\t}\n\n\ttoUnaryNode(node: DScalarExpressionNodeOrToken): void {\n\t\tif (!isNumber(node)) {\n\t\t\tif (\n\t\t\t\tnode[0] === DScalarExpressionNodeType.PARENSESIS ||\n\t\t\t\tnode[0] === DScalarExpressionNodeType.MIN ||\n\t\t\t\tnode[0] === DScalarExpressionNodeType.MAX\n\t\t\t) {\n\t\t\t\tthis.toUnary(node[1]);\n\t\t\t}\n\t\t}\n\t}\n\n\ttoUnary(nodes: DScalarExpressionNodeOrToken[]): void {\n\t\tfor (let i = 0, imax = nodes.length; i < imax; ++i) {\n\t\t\tconst node = nodes[i];\n\t\t\tif (\n\t\t\t\tnode === DScalarExpressionNodeType.ADD_OR_PLUS ||\n\t\t\t\tnode === DScalarExpressionNodeType.SUB_OR_MINUS\n\t\t\t) {\n\t\t\t\tif (i <= 0 || isNumber(nodes[i - 1])) {\n\t\t\t\t\tif (i + 1 < imax && !isNumber(nodes[i + 1])) {\n\t\t\t\t\t\tconst operand = nodes.splice(i + 1, 1)[0];\n\t\t\t\t\t\tconst type =\n\t\t\t\t\t\t\tnode === DScalarExpressionNodeType.ADD_OR_PLUS\n\t\t\t\t\t\t\t\t? DScalarExpressionNodeType.PLUS\n\t\t\t\t\t\t\t\t: DScalarExpressionNodeType.MINUS;\n\t\t\t\t\t\tnodes[i] = [type, operand];\n\t\t\t\t\t\timax = nodes.length;\n\t\t\t\t\t\tthis.toUnaryNode(operand);\n\t\t\t\t\t} else {\n\t\t\t\t\t\tthrow new Error(\"Malformed unary operator\");\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\tconst type =\n\t\t\t\t\t\tnode === DScalarExpressionNodeType.ADD_OR_PLUS\n\t\t\t\t\t\t\t? DScalarExpressionNodeType.ADD\n\t\t\t\t\t\t\t: DScalarExpressionNodeType.SUB;\n\t\t\t\t\tnodes[i] = type;\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tthis.toUnaryNode(node);\n\t\t\t\timax = nodes.length;\n\t\t\t}\n\t\t}\n\t}\n\n\ttoArithmeticNode(\n\t\tnode: DScalarExpressionNodeOrToken,\n\t\toperatorA: DScalarExpressionNodeArithmeticOperator,\n\t\toperatorB: DScalarExpressionNodeArithmeticOperator\n\t): void {\n\t\tif (!isNumber(node)) {\n\t\t\tif (\n\t\t\t\tnode[0] === DScalarExpressionNodeType.PARENSESIS ||\n\t\t\t\tnode[0] === DScalarExpressionNodeType.MIN ||\n\t\t\t\tnode[0] === DScalarExpressionNodeType.MAX\n\t\t\t) {\n\t\t\t\tthis.toArithmetic(node[1], operatorA, operatorB);\n\t\t\t} else if (\n\t\t\t\tnode[0] === DScalarExpressionNodeType.PLUS ||\n\t\t\t\tnode[0] === DScalarExpressionNodeType.MINUS\n\t\t\t) {\n\t\t\t\tthis.toArithmeticNode(node[1], operatorA, operatorB);\n\t\t\t} else if (\n\t\t\t\tnode[0] === DScalarExpressionNodeType.ADD ||\n\t\t\t\tnode[0] === DScalarExpressionNodeType.SUB ||\n\t\t\t\tnode[0] === DScalarExpressionNodeType.MUL ||\n\t\t\t\tnode[0] === DScalarExpressionNodeType.DIV\n\t\t\t) {\n\t\t\t\tthis.toArithmeticNode(node[1], operatorA, operatorB);\n\t\t\t\tthis.toArithmeticNode(node[2], operatorA, operatorB);\n\t\t\t}\n\t\t}\n\t}\n\n\ttoArithmetic(\n\t\tnodes: DScalarExpressionNodeOrToken[],\n\t\toperatorA: DScalarExpressionNodeArithmeticOperator,\n\t\toperatorB: DScalarExpressionNodeArithmeticOperator\n\t): void {\n\t\tfor (let i = 0, imax = nodes.length; i < imax; ++i) {\n\t\t\tconst node = nodes[i];\n\t\t\tif (node === operatorA || node === operatorB) {\n\t\t\t\tif (0 < i && i + 1 < imax) {\n\t\t\t\t\tconst left = nodes[i - 1];\n\t\t\t\t\tconst right = nodes[i + 1];\n\t\t\t\t\tif (!isNumber(left) && !isNumber(right)) {\n\t\t\t\t\t\tnodes.splice(i, 2);\n\t\t\t\t\t\tnodes[i - 1] = [node, left, right];\n\t\t\t\t\t\ti -= 1;\n\t\t\t\t\t\timax = nodes.length;\n\t\t\t\t\t\tthis.toArithmeticNode(left, operatorA, operatorB);\n\t\t\t\t\t\tthis.toArithmeticNode(right, operatorA, operatorB);\n\t\t\t\t\t\tcontinue;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tthrow new Error(`Malformed operands for the operator ${node}`);\n\t\t\t} else {\n\t\t\t\tthis.toArithmeticNode(node, operatorA, operatorB);\n\t\t\t\timax = nodes.length;\n\t\t\t}\n\t\t}\n\t}\n\n\ttoToken(expression: string): DScalarExpressionToken[] {\n\t\tconst tokens: DScalarExpressionToken[] = [];\n\t\twhile (true) {\n\t\t\tconst matched = DScalarExpression.TOKEN_REGEX.exec(expression);\n\t\t\tif (matched != null) {\n\t\t\t\tconst token = matched[0];\n\t\t\t\tconst tokenTypeOperator = this.toTokenOperator(token);\n\t\t\t\tif (tokenTypeOperator != null) {\n\t\t\t\t\ttokens.push(tokenTypeOperator);\n\t\t\t\t} else {\n\t\t\t\t\tconst parsedToken = parseFloat(token);\n\t\t\t\t\tif (parsedToken !== parsedToken) {\n\t\t\t\t\t\tthrow new Error(\n\t\t\t\t\t\t\t`Unexpected token '${token}' at ${matched.index} in '${expression}'`\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\n\t\t\t\t\tconst tokenTypeLiteral = this.toTokenLiteral(token);\n\t\t\t\t\tif (tokenTypeLiteral != null) {\n\t\t\t\t\t\ttokens.push([tokenTypeLiteral, parsedToken * 0.01]);\n\t\t\t\t\t} else {\n\t\t\t\t\t\ttokens.push([DScalarExpressionNodeType.NUMBER, parsedToken]);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t\treturn tokens;\n\t}\n\n\ttoTokenOperator(token: string): DScalarExpressionNodeTypeOperator | null {\n\t\tswitch (token) {\n\t\t\tcase \"+\":\n\t\t\t\treturn DScalarExpressionNodeType.ADD_OR_PLUS;\n\t\t\tcase \"-\":\n\t\t\t\treturn DScalarExpressionNodeType.SUB_OR_MINUS;\n\t\t\tcase \"*\":\n\t\t\t\treturn DScalarExpressionNodeType.MUL;\n\t\t\tcase \"/\":\n\t\t\t\treturn DScalarExpressionNodeType.DIV;\n\t\t\tcase \"(\":\n\t\t\t\treturn DScalarExpressionNodeType.OPEN;\n\t\t\tcase \")\":\n\t\t\t\treturn DScalarExpressionNodeType.CLOSE;\n\t\t\tcase \",\":\n\t\t\t\treturn DScalarExpressionNodeType.COMMA;\n\t\t\tcase \"min\":\n\t\t\t\treturn DScalarExpressionNodeType.MIN;\n\t\t\tcase \"max\":\n\t\t\t\treturn DScalarExpressionNodeType.MAX;\n\t\t}\n\t\treturn null;\n\t}\n\n\ttoTokenLiteral(token: string): DScalarExpressionNodeTypeLiteral | null {\n\t\tconst tokenLength = token.length;\n\t\tif (0 < tokenLength) {\n\t\t\tswitch (token[tokenLength - 1]) {\n\t\t\t\tcase \"%\":\n\t\t\t\t\treturn DScalarExpressionNodeType.PARENT;\n\t\t\t\tcase \"s\":\n\t\t\t\t\treturn DScalarExpressionNodeType.SELF;\n\t\t\t\tcase \"p\":\n\t\t\t\t\treturn DScalarExpressionNodeType.PADDING;\n\t\t\t\tcase \"c\":\n\t\t\t\t\treturn DScalarExpressionNodeType.CURRENT;\n\t\t\t}\n\t\t}\n\t\treturn null;\n\t}\n\n\tprotected evaluate(\n\t\tnode: DScalarExpressionNode,\n\t\tparent: number,\n\t\tself: number,\n\t\tpadding: number,\n\t\tcurrent: number\n\t): number {\n\t\tswitch (node[0]) {\n\t\t\tcase DScalarExpressionNodeType.PARENSESIS:\n\t\t\t\tconst nodes = node[1];\n\t\t\t\treturn this.evaluate(nodes[nodes.length - 1], parent, self, padding, current);\n\n\t\t\t// Unary operators\n\t\t\tcase DScalarExpressionNodeType.PLUS:\n\t\t\t\treturn +this.evaluate(node[1], parent, self, padding, current);\n\n\t\t\tcase DScalarExpressionNodeType.MINUS:\n\t\t\t\treturn -this.evaluate(node[1], parent, self, padding, current);\n\n\t\t\t// Four arithmetic operators\n\t\t\tcase DScalarExpressionNodeType.ADD:\n\t\t\t\treturn (\n\t\t\t\t\tthis.evaluate(node[1], parent, self, padding, current) +\n\t\t\t\t\tthis.evaluate(node[2], parent, self, padding, current)\n\t\t\t\t);\n\t\t\tcase DScalarExpressionNodeType.SUB:\n\t\t\t\treturn (\n\t\t\t\t\tthis.evaluate(node[1], parent, self, padding, current) -\n\t\t\t\t\tthis.evaluate(node[2], parent, self, padding, current)\n\t\t\t\t);\n\t\t\tcase DScalarExpressionNodeType.MUL:\n\t\t\t\treturn (\n\t\t\t\t\tthis.evaluate(node[1], parent, self, padding, current) *\n\t\t\t\t\tthis.evaluate(node[2], parent, self, padding, current)\n\t\t\t\t);\n\t\t\tcase DScalarExpressionNodeType.DIV:\n\t\t\t\treturn (\n\t\t\t\t\tthis.evaluate(node[1], parent, self, padding, current) /\n\t\t\t\t\tthis.evaluate(node[2], parent, self, padding, current)\n\t\t\t\t);\n\n\t\t\t// Functions\n\t\t\tcase DScalarExpressionNodeType.MIN:\n\t\t\t\tif (0 < node[1].length) {\n\t\t\t\t\tconst args = node[1];\n\t\t\t\t\tlet result = this.evaluate(args[0], parent, self, padding, current);\n\t\t\t\t\tfor (let i = 1, imax = args.length; i < imax; ++i) {\n\t\t\t\t\t\tresult = Math.min(\n\t\t\t\t\t\t\tresult,\n\t\t\t\t\t\t\tthis.evaluate(args[i], parent, self, padding, current)\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\t\t\t\t\treturn result;\n\t\t\t\t}\n\t\t\t\treturn 0;\n\t\t\tcase DScalarExpressionNodeType.MAX:\n\t\t\t\tif (0 < node[1].length) {\n\t\t\t\t\tconst args = node[1];\n\t\t\t\t\tlet result = this.evaluate(args[0], parent, self, padding, current);\n\t\t\t\t\tfor (let i = 1, imax = args.length; i < imax; ++i) {\n\t\t\t\t\t\tresult = Math.max(\n\t\t\t\t\t\t\tresult,\n\t\t\t\t\t\t\tthis.evaluate(args[i], parent, self, padding, current)\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\t\t\t\t\treturn result;\n\t\t\t\t}\n\t\t\t\treturn 0;\n\n\t\t\t// Literals\n\t\t\tcase DScalarExpressionNodeType.PARENT:\n\t\t\t\treturn node[1] * parent;\n\t\t\tcase DScalarExpressionNodeType.SELF:\n\t\t\t\treturn node[1] * self;\n\t\t\tcase DScalarExpressionNodeType.PADDING:\n\t\t\t\treturn node[1] * padding;\n\t\t\tcase DScalarExpressionNodeType.CURRENT:\n\t\t\t\treturn node[1] * current;\n\t\t\tcase DScalarExpressionNodeType.NUMBER:\n\t\t\t\treturn node[1];\n\t\t}\n\n\t\treturn 0;\n\t}\n\n\tcalculate(parent: number, self: number, padding: number, current: number): number {\n\t\treturn this.evaluate(this._node, parent, self, padding, current);\n\t}\n}\n"]}
1
+ {"version":3,"file":"d-scalar-expression.js","sourceRoot":"","sources":["../../../src/main/typescript/wcardinal/ui/d-scalar-expression.ts"],"names":[],"mappings":"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","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { DScalar } from \"./d-scalar\";\nimport { isNumber } from \"./util/is-number\";\n\nexport const DScalarExpressionNodeType = {\n\t// Parensesis\n\tOPEN: 0,\n\tCLOSE: 1,\n\tPARENSESIS: 2,\n\n\t// Operations\n\tADD_OR_PLUS: 3,\n\tSUB_OR_MINUS: 4,\n\n\tPLUS: 5,\n\tMINUS: 6,\n\n\tADD: 7,\n\tSUB: 8,\n\tMUL: 9,\n\tDIV: 10,\n\n\t// Functions\n\tMIN: 11,\n\tMAX: 12,\n\tCOMMA: 13,\n\n\t// Literals\n\tPARENT: 14,\n\tSELF: 15,\n\tPADDING: 16,\n\tCURRENT: 17,\n\tNUMBER: 18\n} as const;\n\nexport type DScalarExpressionNodeType =\n\t(typeof DScalarExpressionNodeType)[keyof typeof DScalarExpressionNodeType];\n\nexport type DScalarExpressionNodeTypeOperator =\n\t| typeof DScalarExpressionNodeType.SUB_OR_MINUS\n\t| typeof DScalarExpressionNodeType.ADD_OR_PLUS\n\t| typeof DScalarExpressionNodeType.SUB\n\t| typeof DScalarExpressionNodeType.ADD\n\t| typeof DScalarExpressionNodeType.MUL\n\t| typeof DScalarExpressionNodeType.DIV\n\t| typeof DScalarExpressionNodeType.OPEN\n\t| typeof DScalarExpressionNodeType.CLOSE\n\t| typeof DScalarExpressionNodeType.MIN\n\t| typeof DScalarExpressionNodeType.MAX\n\t| typeof DScalarExpressionNodeType.COMMA;\n\nexport type DScalarExpressionNodeTypeLiteral =\n\t| typeof DScalarExpressionNodeType.NUMBER\n\t| typeof DScalarExpressionNodeType.PARENT\n\t| typeof DScalarExpressionNodeType.SELF\n\t| typeof DScalarExpressionNodeType.PADDING\n\t| typeof DScalarExpressionNodeType.CURRENT;\n\nexport type DScalarExpressionToken =\n\t| DScalarExpressionNodeTypeOperator\n\t| [DScalarExpressionNodeTypeLiteral, number];\n\nexport interface DScalarExpressionNodeOrTokenParensesis {\n\t[0]: typeof DScalarExpressionNodeType.PARENSESIS;\n\t[1]: DScalarExpressionNodeOrToken[];\n}\n\nexport interface DScalarExpressionNodeOrTokenUnary {\n\t[0]: typeof DScalarExpressionNodeType.PLUS | typeof DScalarExpressionNodeType.MINUS;\n\t[1]: DScalarExpressionNodeOrToken;\n}\n\nexport type DScalarExpressionNodeArithmeticOperator =\n\t| typeof DScalarExpressionNodeType.SUB\n\t| typeof DScalarExpressionNodeType.ADD\n\t| typeof DScalarExpressionNodeType.MUL\n\t| typeof DScalarExpressionNodeType.DIV;\n\nexport interface DScalarExpressionNodeOrTokenArithmetic {\n\t[0]: DScalarExpressionNodeArithmeticOperator;\n\t[1]: DScalarExpressionNodeOrToken;\n\t[2]: DScalarExpressionNodeOrToken;\n}\n\nexport interface DScalarExpressionNodeOrTokenFunction {\n\t[0]: typeof DScalarExpressionNodeType.MIN | typeof DScalarExpressionNodeType.MAX;\n\t[1]: DScalarExpressionNodeOrToken[];\n}\n\nexport type DScalarExpressionNodeOrToken =\n\t| DScalarExpressionToken\n\t| DScalarExpressionNodeOrTokenParensesis\n\t| DScalarExpressionNodeOrTokenUnary\n\t| DScalarExpressionNodeOrTokenArithmetic\n\t| DScalarExpressionNodeOrTokenFunction;\n\nexport interface DScalarExpressionNodeLiteral {\n\t[0]: DScalarExpressionNodeTypeLiteral;\n\t[1]: number;\n}\n\nexport interface DScalarExpressionNodeParensesis {\n\t[0]: typeof DScalarExpressionNodeType.PARENSESIS;\n\t[1]: DScalarExpressionNode[];\n}\n\nexport interface DScalarExpressionNodeUnary {\n\t[0]: typeof DScalarExpressionNodeType.PLUS | typeof DScalarExpressionNodeType.MINUS;\n\t[1]: DScalarExpressionNode;\n}\n\nexport interface DScalarExpressionNodeArithmetic {\n\t[0]: DScalarExpressionNodeArithmeticOperator;\n\t[1]: DScalarExpressionNode;\n\t[2]: DScalarExpressionNode;\n}\n\nexport interface DScalarExpressionNodeFunction {\n\t[0]: typeof DScalarExpressionNodeType.MIN | typeof DScalarExpressionNodeType.MAX;\n\t[1]: DScalarExpressionNode[];\n}\n\nexport type DScalarExpressionNode =\n\t| DScalarExpressionNodeParensesis\n\t| DScalarExpressionNodeUnary\n\t| DScalarExpressionNodeArithmetic\n\t| DScalarExpressionNodeFunction\n\t| DScalarExpressionNodeLiteral;\n\n/**\n * Parser and evaluator of the scalar expressions like `100% - 50s`.\n *\n * Literals\n *\n * * x%: 0.01 * x * parent value\n * * xs: 0.01 * x * self value\n * * xp: 0.01 * x * padding value\n * * xc: 0.01 * x * current value\n *\n * Operators\n *\n * * `+`\n * * `-`\n * * `*`\n * * `/`\n * * `(` and `)`\n *\n * Functions\n *\n * * min( a, b, ... )\n * * max( a, b, ... )\n *\n * Examples\n *\n * * `90%`: 0.9 * parent value\n * * `50s`: 0.5 * self value\n * * `90% - 50s`: 0.9 * parent value - 0.5 * self value\n * * `90% - (50s + 100) * 2`: 0.9 * parent value - ( 0.5 * self value + 100 ) * 2\n */\nexport class DScalarExpression implements DScalar {\n\tprotected static TOKEN_REGEX = /(?:\\+|-|\\*|\\/|\\(|\\)|min|max|,|(?:\\d+(?:\\.\\d*)?[%psc]?))/g;\n\tprotected _node: DScalarExpressionNode;\n\n\tconstructor(expression: string) {\n\t\tconst nodes: DScalarExpressionNodeOrToken[] = this.toToken(expression);\n\t\tlet i = 0;\n\t\tdo {\n\t\t\ti = this.toParensesis(nodes, i);\n\t\t} while (i < nodes.length);\n\t\tthis.toUnary(nodes);\n\t\tthis.toArithmetic(nodes, DScalarExpressionNodeType.MUL, DScalarExpressionNodeType.DIV);\n\t\tthis.toArithmetic(nodes, DScalarExpressionNodeType.ADD, DScalarExpressionNodeType.SUB);\n\t\tif (nodes.length === 1) {\n\t\t\tconst node = nodes[0];\n\t\t\tif (!isNumber(node)) {\n\t\t\t\tthis._node = node as any;\n\t\t\t\treturn;\n\t\t\t}\n\t\t}\n\t\tthrow new Error(`Failed to parse '${expression}'`);\n\t}\n\n\ttoParensesis(nodes: DScalarExpressionNodeOrToken[], ifrom: number): number {\n\t\tlet ito = nodes.length;\n\t\tfor (let i = ifrom; i < ito; ++i) {\n\t\t\tconst inode = nodes[i];\n\t\t\tif (inode === DScalarExpressionNodeType.OPEN) {\n\t\t\t\tlet istart = i;\n\t\t\t\tlet nodeType: DScalarExpressionNodeType = DScalarExpressionNodeType.PARENSESIS;\n\t\t\t\tif (0 < i) {\n\t\t\t\t\tconst nodeTypePrev = nodes[i - 1];\n\t\t\t\t\tif (\n\t\t\t\t\t\tnodeTypePrev === DScalarExpressionNodeType.MIN ||\n\t\t\t\t\t\tnodeTypePrev === DScalarExpressionNodeType.MAX\n\t\t\t\t\t) {\n\t\t\t\t\t\tistart -= 1;\n\t\t\t\t\t\tnodeType = nodeTypePrev;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tfor (let j = i + 1; j < ito; ++j) {\n\t\t\t\t\tconst jnode = nodes[j];\n\t\t\t\t\tif (jnode === DScalarExpressionNodeType.CLOSE) {\n\t\t\t\t\t\tnodes[istart] = [nodeType, this.toComma(nodes, i + 1, j)];\n\t\t\t\t\t\tnodes.splice(istart + 1, j - istart);\n\t\t\t\t\t\treturn istart + 1;\n\t\t\t\t\t} else if (jnode === DScalarExpressionNodeType.OPEN) {\n\t\t\t\t\t\tj = this.toParensesis(nodes, j) - 1;\n\t\t\t\t\t\tito = nodes.length;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tthrow new Error(`Malformed parensesis`);\n\t\t\t}\n\t\t}\n\t\treturn ito;\n\t}\n\n\ttoCommaOf(\n\t\tnodes: DScalarExpressionNodeOrToken[],\n\t\tifrom: number,\n\t\tito: number\n\t): DScalarExpressionNodeOrToken {\n\t\tconst l = ito - ifrom;\n\t\tif (l <= 0) {\n\t\t\treturn [DScalarExpressionNodeType.NUMBER, 0];\n\t\t} else if (l <= 1) {\n\t\t\treturn nodes[ifrom];\n\t\t} else {\n\t\t\tconst operand: DScalarExpressionNodeOrToken[] = [];\n\t\t\tfor (let j = ifrom; j < ito; ++j) {\n\t\t\t\toperand.push(nodes[j]);\n\t\t\t}\n\t\t\treturn [DScalarExpressionNodeType.PARENSESIS, operand];\n\t\t}\n\t}\n\n\ttoComma(\n\t\tnodes: DScalarExpressionNodeOrToken[],\n\t\tifrom: number,\n\t\tito: number\n\t): DScalarExpressionNodeOrToken[] {\n\t\tlet result: DScalarExpressionNodeOrToken[] | null = null;\n\t\tlet iprev = ifrom;\n\t\tfor (let i = ifrom; i < ito; ++i) {\n\t\t\tconst node = nodes[i];\n\t\t\tif (node === DScalarExpressionNodeType.COMMA) {\n\t\t\t\tresult = result || [];\n\t\t\t\tresult.push(this.toCommaOf(nodes, iprev, i));\n\t\t\t\tiprev = i + 1;\n\t\t\t}\n\t\t}\n\t\tif (iprev < ito) {\n\t\t\tif (result == null) {\n\t\t\t\tconst operand: DScalarExpressionNodeOrToken[] = [];\n\t\t\t\tfor (let i = iprev; i < ito; ++i) {\n\t\t\t\t\toperand.push(nodes[i]);\n\t\t\t\t}\n\t\t\t\treturn operand;\n\t\t\t} else {\n\t\t\t\tresult.push(this.toCommaOf(nodes, iprev, ito));\n\t\t\t}\n\t\t}\n\t\treturn result || [];\n\t}\n\n\ttoUnaryNode(node: DScalarExpressionNodeOrToken): void {\n\t\tif (!isNumber(node)) {\n\t\t\tif (\n\t\t\t\tnode[0] === DScalarExpressionNodeType.PARENSESIS ||\n\t\t\t\tnode[0] === DScalarExpressionNodeType.MIN ||\n\t\t\t\tnode[0] === DScalarExpressionNodeType.MAX\n\t\t\t) {\n\t\t\t\tthis.toUnary(node[1]);\n\t\t\t}\n\t\t}\n\t}\n\n\ttoUnary(nodes: DScalarExpressionNodeOrToken[]): void {\n\t\tfor (let i = 0, imax = nodes.length; i < imax; ++i) {\n\t\t\tconst node = nodes[i];\n\t\t\tif (\n\t\t\t\tnode === DScalarExpressionNodeType.ADD_OR_PLUS ||\n\t\t\t\tnode === DScalarExpressionNodeType.SUB_OR_MINUS\n\t\t\t) {\n\t\t\t\tif (i <= 0 || isNumber(nodes[i - 1])) {\n\t\t\t\t\tif (i + 1 < imax && !isNumber(nodes[i + 1])) {\n\t\t\t\t\t\tconst operand = nodes.splice(i + 1, 1)[0];\n\t\t\t\t\t\tconst type =\n\t\t\t\t\t\t\tnode === DScalarExpressionNodeType.ADD_OR_PLUS\n\t\t\t\t\t\t\t\t? DScalarExpressionNodeType.PLUS\n\t\t\t\t\t\t\t\t: DScalarExpressionNodeType.MINUS;\n\t\t\t\t\t\tnodes[i] = [type, operand];\n\t\t\t\t\t\timax = nodes.length;\n\t\t\t\t\t\tthis.toUnaryNode(operand);\n\t\t\t\t\t} else {\n\t\t\t\t\t\tthrow new Error(\"Malformed unary operator\");\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\tconst type =\n\t\t\t\t\t\tnode === DScalarExpressionNodeType.ADD_OR_PLUS\n\t\t\t\t\t\t\t? DScalarExpressionNodeType.ADD\n\t\t\t\t\t\t\t: DScalarExpressionNodeType.SUB;\n\t\t\t\t\tnodes[i] = type;\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tthis.toUnaryNode(node);\n\t\t\t\timax = nodes.length;\n\t\t\t}\n\t\t}\n\t}\n\n\ttoArithmeticNode(\n\t\tnode: DScalarExpressionNodeOrToken,\n\t\toperatorA: DScalarExpressionNodeArithmeticOperator,\n\t\toperatorB: DScalarExpressionNodeArithmeticOperator\n\t): void {\n\t\tif (!isNumber(node)) {\n\t\t\tif (\n\t\t\t\tnode[0] === DScalarExpressionNodeType.PARENSESIS ||\n\t\t\t\tnode[0] === DScalarExpressionNodeType.MIN ||\n\t\t\t\tnode[0] === DScalarExpressionNodeType.MAX\n\t\t\t) {\n\t\t\t\tthis.toArithmetic(node[1], operatorA, operatorB);\n\t\t\t} else if (\n\t\t\t\tnode[0] === DScalarExpressionNodeType.PLUS ||\n\t\t\t\tnode[0] === DScalarExpressionNodeType.MINUS\n\t\t\t) {\n\t\t\t\tthis.toArithmeticNode(node[1], operatorA, operatorB);\n\t\t\t} else if (\n\t\t\t\tnode[0] === DScalarExpressionNodeType.ADD ||\n\t\t\t\tnode[0] === DScalarExpressionNodeType.SUB ||\n\t\t\t\tnode[0] === DScalarExpressionNodeType.MUL ||\n\t\t\t\tnode[0] === DScalarExpressionNodeType.DIV\n\t\t\t) {\n\t\t\t\tthis.toArithmeticNode(node[1], operatorA, operatorB);\n\t\t\t\tthis.toArithmeticNode(node[2], operatorA, operatorB);\n\t\t\t}\n\t\t}\n\t}\n\n\ttoArithmetic(\n\t\tnodes: DScalarExpressionNodeOrToken[],\n\t\toperatorA: DScalarExpressionNodeArithmeticOperator,\n\t\toperatorB: DScalarExpressionNodeArithmeticOperator\n\t): void {\n\t\tfor (let i = 0, imax = nodes.length; i < imax; ++i) {\n\t\t\tconst node = nodes[i];\n\t\t\tif (node === operatorA || node === operatorB) {\n\t\t\t\tif (0 < i && i + 1 < imax) {\n\t\t\t\t\tconst left = nodes[i - 1];\n\t\t\t\t\tconst right = nodes[i + 1];\n\t\t\t\t\tif (!isNumber(left) && !isNumber(right)) {\n\t\t\t\t\t\tnodes.splice(i, 2);\n\t\t\t\t\t\tnodes[i - 1] = [node, left, right];\n\t\t\t\t\t\ti -= 1;\n\t\t\t\t\t\timax = nodes.length;\n\t\t\t\t\t\tthis.toArithmeticNode(left, operatorA, operatorB);\n\t\t\t\t\t\tthis.toArithmeticNode(right, operatorA, operatorB);\n\t\t\t\t\t\tcontinue;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tthrow new Error(`Malformed operands for the operator ${node}`);\n\t\t\t} else {\n\t\t\t\tthis.toArithmeticNode(node, operatorA, operatorB);\n\t\t\t\timax = nodes.length;\n\t\t\t}\n\t\t}\n\t}\n\n\ttoToken(expression: string): DScalarExpressionToken[] {\n\t\tconst tokens: DScalarExpressionToken[] = [];\n\t\twhile (true) {\n\t\t\tconst matched = DScalarExpression.TOKEN_REGEX.exec(expression);\n\t\t\tif (matched != null) {\n\t\t\t\tconst token = matched[0];\n\t\t\t\tconst tokenTypeOperator = this.toTokenOperator(token);\n\t\t\t\tif (tokenTypeOperator != null) {\n\t\t\t\t\ttokens.push(tokenTypeOperator);\n\t\t\t\t} else {\n\t\t\t\t\tconst parsedToken = parseFloat(token);\n\t\t\t\t\tif (parsedToken !== parsedToken) {\n\t\t\t\t\t\tthrow new Error(\n\t\t\t\t\t\t\t`Unexpected token '${token}' at ${matched.index} in '${expression}'`\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\n\t\t\t\t\tconst tokenTypeLiteral = this.toTokenLiteral(token);\n\t\t\t\t\tif (tokenTypeLiteral != null) {\n\t\t\t\t\t\ttokens.push([tokenTypeLiteral, parsedToken * 0.01]);\n\t\t\t\t\t} else {\n\t\t\t\t\t\ttokens.push([DScalarExpressionNodeType.NUMBER, parsedToken]);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t\treturn tokens;\n\t}\n\n\ttoTokenOperator(token: string): DScalarExpressionNodeTypeOperator | null {\n\t\tswitch (token) {\n\t\t\tcase \"+\":\n\t\t\t\treturn DScalarExpressionNodeType.ADD_OR_PLUS;\n\t\t\tcase \"-\":\n\t\t\t\treturn DScalarExpressionNodeType.SUB_OR_MINUS;\n\t\t\tcase \"*\":\n\t\t\t\treturn DScalarExpressionNodeType.MUL;\n\t\t\tcase \"/\":\n\t\t\t\treturn DScalarExpressionNodeType.DIV;\n\t\t\tcase \"(\":\n\t\t\t\treturn DScalarExpressionNodeType.OPEN;\n\t\t\tcase \")\":\n\t\t\t\treturn DScalarExpressionNodeType.CLOSE;\n\t\t\tcase \",\":\n\t\t\t\treturn DScalarExpressionNodeType.COMMA;\n\t\t\tcase \"min\":\n\t\t\t\treturn DScalarExpressionNodeType.MIN;\n\t\t\tcase \"max\":\n\t\t\t\treturn DScalarExpressionNodeType.MAX;\n\t\t}\n\t\treturn null;\n\t}\n\n\ttoTokenLiteral(token: string): DScalarExpressionNodeTypeLiteral | null {\n\t\tconst tokenLength = token.length;\n\t\tif (0 < tokenLength) {\n\t\t\tswitch (token[tokenLength - 1]) {\n\t\t\t\tcase \"%\":\n\t\t\t\t\treturn DScalarExpressionNodeType.PARENT;\n\t\t\t\tcase \"s\":\n\t\t\t\t\treturn DScalarExpressionNodeType.SELF;\n\t\t\t\tcase \"p\":\n\t\t\t\t\treturn DScalarExpressionNodeType.PADDING;\n\t\t\t\tcase \"c\":\n\t\t\t\t\treturn DScalarExpressionNodeType.CURRENT;\n\t\t\t}\n\t\t}\n\t\treturn null;\n\t}\n\n\tprotected evaluate(\n\t\tnode: DScalarExpressionNode,\n\t\tparent: number,\n\t\tself: number,\n\t\tpadding: number,\n\t\tcurrent: number\n\t): number {\n\t\tswitch (node[0]) {\n\t\t\tcase DScalarExpressionNodeType.PARENSESIS:\n\t\t\t\tconst nodes = node[1];\n\t\t\t\treturn this.evaluate(nodes[nodes.length - 1], parent, self, padding, current);\n\n\t\t\t// Unary operators\n\t\t\tcase DScalarExpressionNodeType.PLUS:\n\t\t\t\treturn +this.evaluate(node[1], parent, self, padding, current);\n\n\t\t\tcase DScalarExpressionNodeType.MINUS:\n\t\t\t\treturn -this.evaluate(node[1], parent, self, padding, current);\n\n\t\t\t// Four arithmetic operators\n\t\t\tcase DScalarExpressionNodeType.ADD:\n\t\t\t\treturn (\n\t\t\t\t\tthis.evaluate(node[1], parent, self, padding, current) +\n\t\t\t\t\tthis.evaluate(node[2], parent, self, padding, current)\n\t\t\t\t);\n\t\t\tcase DScalarExpressionNodeType.SUB:\n\t\t\t\treturn (\n\t\t\t\t\tthis.evaluate(node[1], parent, self, padding, current) -\n\t\t\t\t\tthis.evaluate(node[2], parent, self, padding, current)\n\t\t\t\t);\n\t\t\tcase DScalarExpressionNodeType.MUL:\n\t\t\t\treturn (\n\t\t\t\t\tthis.evaluate(node[1], parent, self, padding, current) *\n\t\t\t\t\tthis.evaluate(node[2], parent, self, padding, current)\n\t\t\t\t);\n\t\t\tcase DScalarExpressionNodeType.DIV:\n\t\t\t\treturn (\n\t\t\t\t\tthis.evaluate(node[1], parent, self, padding, current) /\n\t\t\t\t\tthis.evaluate(node[2], parent, self, padding, current)\n\t\t\t\t);\n\n\t\t\t// Functions\n\t\t\tcase DScalarExpressionNodeType.MIN:\n\t\t\t\tif (0 < node[1].length) {\n\t\t\t\t\tconst args = node[1];\n\t\t\t\t\tlet result = this.evaluate(args[0], parent, self, padding, current);\n\t\t\t\t\tfor (let i = 1, imax = args.length; i < imax; ++i) {\n\t\t\t\t\t\tresult = Math.min(\n\t\t\t\t\t\t\tresult,\n\t\t\t\t\t\t\tthis.evaluate(args[i], parent, self, padding, current)\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\t\t\t\t\treturn result;\n\t\t\t\t}\n\t\t\t\treturn 0;\n\t\t\tcase DScalarExpressionNodeType.MAX:\n\t\t\t\tif (0 < node[1].length) {\n\t\t\t\t\tconst args = node[1];\n\t\t\t\t\tlet result = this.evaluate(args[0], parent, self, padding, current);\n\t\t\t\t\tfor (let i = 1, imax = args.length; i < imax; ++i) {\n\t\t\t\t\t\tresult = Math.max(\n\t\t\t\t\t\t\tresult,\n\t\t\t\t\t\t\tthis.evaluate(args[i], parent, self, padding, current)\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\t\t\t\t\treturn result;\n\t\t\t\t}\n\t\t\t\treturn 0;\n\n\t\t\t// Literals\n\t\t\tcase DScalarExpressionNodeType.PARENT:\n\t\t\t\treturn node[1] * parent;\n\t\t\tcase DScalarExpressionNodeType.SELF:\n\t\t\t\treturn node[1] * self;\n\t\t\tcase DScalarExpressionNodeType.PADDING:\n\t\t\t\treturn node[1] * padding;\n\t\t\tcase DScalarExpressionNodeType.CURRENT:\n\t\t\t\treturn node[1] * current;\n\t\t\tcase DScalarExpressionNodeType.NUMBER:\n\t\t\t\treturn node[1];\n\t\t}\n\n\t\treturn 0;\n\t}\n\n\tcalculate(parent: number, self: number, padding: number, current: number): number {\n\t\treturn this.evaluate(this._node, parent, self, padding, current);\n\t}\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"d-table-body-cell-input-tree-input.js","sourceRoot":"","sources":["../../../src/main/typescript/wcardinal/ui/d-table-body-cell-input-tree-input.ts"],"names":[],"mappings":"AAAA;;;GAGG;;AAEH,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AACrE,OAAO,EAAE,UAAU,EAAsC,MAAM,gBAAgB,CAAC;AAQhF;IAGU,gDAA0B;IAHpC;;IAqBA,CAAC;IAfmB,iDAAU,GAA7B,UACC,KAAY,EACZ,OAAiB,EACjB,QAAqB;QAErB,OAAO,IAAI,sBAAsB,CAAC,KAAK,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC;IAC7D,CAAC;IAED,sBAAI,iDAAO;aAAX;YACC,OAAO,IAAI,CAAC,QAAQ,CAAC;QACtB,CAAC;;;OAAA;IAES,8CAAO,GAAjB;QACC,OAAO,8BAA8B,CAAC;IACvC,CAAC;IACF,mCAAC;AAAD,CAAC,AArBD,CAGU,UAAU,GAkBnB","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { DBasePaddingAdjustable } from \"./d-base-padding-adjustable\";\nimport { DInputText, DInputTextOptions, DThemeInputText } from \"./d-input-text\";\n\nexport interface DTableBodyCellInputTreeInputOptions<\n\tTHEME extends DThemeTableBodyCellInputTreeInput = DThemeTableBodyCellInputTreeInput\n> extends DInputTextOptions<THEME> {}\n\nexport interface DThemeTableBodyCellInputTreeInput extends DThemeInputText {}\n\nexport class DTableBodyCellInputTreeInput<\n\tTHEME extends DThemeTableBodyCellInputTreeInput = DThemeTableBodyCellInputTreeInput,\n\tOPTIONS extends DTableBodyCellInputTreeInputOptions<THEME> = DTableBodyCellInputTreeInputOptions<THEME>\n> extends DInputText<THEME, OPTIONS> {\n\tprotected _padding!: DBasePaddingAdjustable;\n\n\tprotected override newPadding(\n\t\ttheme: THEME,\n\t\toptions?: OPTIONS,\n\t\tcallback?: () => void\n\t): DBasePaddingAdjustable {\n\t\treturn new DBasePaddingAdjustable(theme, options, callback);\n\t}\n\n\tget padding(): DBasePaddingAdjustable {\n\t\treturn this._padding;\n\t}\n\n\tprotected getType(): string {\n\t\treturn \"DTableBodyCellInputTreeInput\";\n\t}\n}\n"]}
1
+ {"version":3,"file":"d-table-body-cell-input-tree-input.js","sourceRoot":"","sources":["../../../src/main/typescript/wcardinal/ui/d-table-body-cell-input-tree-input.ts"],"names":[],"mappings":"AAAA;;;GAGG;;AAEH,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AACrE,OAAO,EAAE,UAAU,EAAsC,MAAM,gBAAgB,CAAC;AAQhF;IAIU,gDAA0B;IAJpC;;IAsBA,CAAC;IAfmB,iDAAU,GAA7B,UACC,KAAY,EACZ,OAAiB,EACjB,QAAqB;QAErB,OAAO,IAAI,sBAAsB,CAAC,KAAK,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC;IAC7D,CAAC;IAED,sBAAI,iDAAO;aAAX;YACC,OAAO,IAAI,CAAC,QAAQ,CAAC;QACtB,CAAC;;;OAAA;IAES,8CAAO,GAAjB;QACC,OAAO,8BAA8B,CAAC;IACvC,CAAC;IACF,mCAAC;AAAD,CAAC,AAtBD,CAIU,UAAU,GAkBnB","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { DBasePaddingAdjustable } from \"./d-base-padding-adjustable\";\nimport { DInputText, DInputTextOptions, DThemeInputText } from \"./d-input-text\";\n\nexport interface DTableBodyCellInputTreeInputOptions<\n\tTHEME extends DThemeTableBodyCellInputTreeInput = DThemeTableBodyCellInputTreeInput\n> extends DInputTextOptions<THEME> {}\n\nexport interface DThemeTableBodyCellInputTreeInput extends DThemeInputText {}\n\nexport class DTableBodyCellInputTreeInput<\n\tTHEME extends DThemeTableBodyCellInputTreeInput = DThemeTableBodyCellInputTreeInput,\n\tOPTIONS extends\n\t\tDTableBodyCellInputTreeInputOptions<THEME> = DTableBodyCellInputTreeInputOptions<THEME>\n> extends DInputText<THEME, OPTIONS> {\n\tprotected _padding!: DBasePaddingAdjustable;\n\n\tprotected override newPadding(\n\t\ttheme: THEME,\n\t\toptions?: OPTIONS,\n\t\tcallback?: () => void\n\t): DBasePaddingAdjustable {\n\t\treturn new DBasePaddingAdjustable(theme, options, callback);\n\t}\n\n\tget padding(): DBasePaddingAdjustable {\n\t\treturn this._padding;\n\t}\n\n\tprotected getType(): string {\n\t\treturn \"DTableBodyCellInputTreeInput\";\n\t}\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"d-table-body-cell-input-tree-marker.js","sourceRoot":"","sources":["../../../src/main/typescript/wcardinal/ui/d-table-body-cell-input-tree-marker.ts"],"names":[],"mappings":"AAAA;;;GAGG;;AAEH,OAAO,EAAE,WAAW,EAAwC,MAAM,iBAAiB,CAAC;AAUpF;IAOU,iDAAkC;IAP5C;;IAWA,CAAC;IAHU,+CAAO,GAAjB;QACC,OAAO,+BAA+B,CAAC;IACxC,CAAC;IACF,oCAAC;AAAD,CAAC,AAXD,CAOU,WAAW,GAIpB","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { DButtonBase, DButtonBaseOptions, DThemeButtonBase } from \"./d-button-base\";\n\nexport interface DTableBodyCellInputTreeMarkerOptions<\n\tVALUE = unknown,\n\tTHEME extends DThemeTableBodyCellInputTreeMarker<VALUE> = DThemeTableBodyCellInputTreeMarker<VALUE>\n> extends DButtonBaseOptions<VALUE, THEME> {}\n\nexport interface DThemeTableBodyCellInputTreeMarker<VALUE = unknown>\n\textends DThemeButtonBase<VALUE> {}\n\nexport class DTableBodyCellInputTreeMarker<\n\tVALUE = unknown,\n\tTHEME extends DThemeTableBodyCellInputTreeMarker<VALUE> = DThemeTableBodyCellInputTreeMarker<VALUE>,\n\tOPTIONS extends DTableBodyCellInputTreeMarkerOptions<\n\t\tVALUE,\n\t\tTHEME\n\t> = DTableBodyCellInputTreeMarkerOptions<VALUE, THEME>\n> extends DButtonBase<VALUE, THEME, OPTIONS> {\n\tprotected getType(): string {\n\t\treturn \"DTableBodyCellInputTreeMarker\";\n\t}\n}\n"]}
1
+ {"version":3,"file":"d-table-body-cell-input-tree-marker.js","sourceRoot":"","sources":["../../../src/main/typescript/wcardinal/ui/d-table-body-cell-input-tree-marker.ts"],"names":[],"mappings":"AAAA;;;GAGG;;AAEH,OAAO,EAAE,WAAW,EAAwC,MAAM,iBAAiB,CAAC;AAWpF;IAQU,iDAAkC;IAR5C;;IAYA,CAAC;IAHU,+CAAO,GAAjB;QACC,OAAO,+BAA+B,CAAC;IACxC,CAAC;IACF,oCAAC;AAAD,CAAC,AAZD,CAQU,WAAW,GAIpB","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { DButtonBase, DButtonBaseOptions, DThemeButtonBase } from \"./d-button-base\";\n\nexport interface DTableBodyCellInputTreeMarkerOptions<\n\tVALUE = unknown,\n\tTHEME extends\n\t\tDThemeTableBodyCellInputTreeMarker<VALUE> = DThemeTableBodyCellInputTreeMarker<VALUE>\n> extends DButtonBaseOptions<VALUE, THEME> {}\n\nexport interface DThemeTableBodyCellInputTreeMarker<VALUE = unknown>\n\textends DThemeButtonBase<VALUE> {}\n\nexport class DTableBodyCellInputTreeMarker<\n\tVALUE = unknown,\n\tTHEME extends\n\t\tDThemeTableBodyCellInputTreeMarker<VALUE> = DThemeTableBodyCellInputTreeMarker<VALUE>,\n\tOPTIONS extends DTableBodyCellInputTreeMarkerOptions<\n\t\tVALUE,\n\t\tTHEME\n\t> = DTableBodyCellInputTreeMarkerOptions<VALUE, THEME>\n> extends DButtonBase<VALUE, THEME, OPTIONS> {\n\tprotected getType(): string {\n\t\treturn \"DTableBodyCellInputTreeMarker\";\n\t}\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"d-table-body-cell-select-dialog.js","sourceRoot":"","sources":["../../../src/main/typescript/wcardinal/ui/d-table-body-cell-select-dialog.ts"],"names":[],"mappings":"AAAA;;;GAGG;;AAGH,OAAO,EAAE,OAAO,EAAgC,MAAM,YAAY,CAAC;AAEnE,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAoBvD;IAUS,8CAAqC;IAU7C,oCACC,WAAmB,EACnB,MAAuC,EACvC,QAAmD,EACnD,OAAiB;;QAJlB,YAMC,kBAAM,OAAO,CAAC,SAOd;QALA,KAAI,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC;QACpB,KAAI,CAAC,YAAY,GAAG,WAAW,CAAC;QAChC,KAAI,CAAC,OAAO,GAAG,MAAM,CAAC;QACtB,KAAI,CAAC,SAAS,GAAG,QAAQ,CAAC;QAC1B,KAAI,CAAC,cAAc,GAAG,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,IAAI,mCAAI,KAAI,CAAC,KAAK,CAAC,aAAa,EAAE,CAAC;;IACnE,CAAC;IAES,+CAAU,GAApB,UACC,CAA0E;QAD3E,iBAqBC;;QAlBA,iBAAM,UAAU,YAAC,CAAC,CAAC,CAAC;QACpB,IAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC;QACzC,IAAM,MAAM,GAAG,SAAS,CAAC,MAAM,CAAC;QAChC,IAAI,MAAM,EAAE;YACX,IAAM,UAAQ,GAAG,MAAA,IAAI,CAAC,kBAAkB,mCAAI,IAAI,CAAC;YACjD,SAAS,CAAC,MAAM,CAAC,MAAM,EAAE,UAAQ,CAAC,CAAC;YACnC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC;gBACtB,IAAM,QAAQ,GAAG,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;gBAC1C,IAAI,KAAI,CAAC,cAAc,EAAE;oBACxB,IAAI,QAAQ,KAAK,UAAQ,EAAE;wBAC1B,KAAI,CAAC,IAAI,GAAG,QAAQ,CAAC;wBACrB,KAAI,CAAC,aAAa,CAAC,QAAQ,EAAE,UAAQ,CAAC,CAAC;qBACvC;iBACD;qBAAM;oBACN,KAAI,CAAC,aAAa,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;iBACnC;YACF,CAAC,CAAC,CAAC;SACH;IACF,CAAC;IAES,kDAAa,GAAvB,UAAwB,QAAsB,EAAE,QAAsB;QACrE,IAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC;QACtB,IAAI,GAAG,KAAK,SAAS,EAAE;YACtB,IAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC;YAChC,IAAM,WAAW,GAAG,IAAI,CAAC,YAAY,CAAC;YACtC,IAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC;YAC5B,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,WAAW,EAAE,QAAQ,CAAC,CAAC;YAC1C,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAC;YAC9C,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,QAAQ,EAAE,GAAG,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;SAC7E;IACF,CAAC;IAED,sBAAI,2CAAG;aAAP;YACC,OAAO,IAAI,CAAC,IAAI,CAAC;QAClB,CAAC;;;OAAA;IAED,sBAAI,gDAAQ;aAAZ;YACC,OAAO,IAAI,CAAC,SAAS,CAAC;QACvB,CAAC;;;OAAA;IAED,sBAAI,mDAAW;aAAf;YACC,OAAO,IAAI,CAAC,YAAY,CAAC;QAC1B,CAAC;;;OAAA;IAED,sBAAI,8CAAM;aAAV;YACC,OAAO,IAAI,CAAC,OAAO,CAAC;QACrB,CAAC;;;OAAA;IAED,sBAAI,6CAAK;aAAT;YACC,IAAM,iBAAiB,GAAG,IAAI,CAAC,kBAAkB,CAAC;YAClD,IAAI,iBAAiB,KAAK,SAAS,EAAE;gBACpC,OAAO,iBAAiB,CAAC;aACzB;YACD,OAAO,IAAI,CAAC;QACb,CAAC;aAED,UAAU,KAAmB;YAC5B,IAAI,CAAC,IAAI,GAAG,KAAK,CAAC;QACnB,CAAC;;;OAJA;IAMD,wCAAG,GAAH,UACC,KAAc,EACd,GAAQ,EACR,YAA2C,EAC3C,QAAgB,EAChB,WAAmB,EACnB,QAAkB;QAElB,IAAI,CAAC,IAAI,GAAG,GAAG,CAAC;QAChB,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC;QAC1B,IAAI,QAAQ,EAAE;YACb,IAAI,CAAC,UAAU,GAAG,KAAqB,CAAC;YACxC,IAAI,CAAC,kBAAkB,GAAG,KAAqB,CAAC;YAChD,IAAI,CAAC,YAAY,EAAE,CAAC;YACpB,IAAI,CAAC,kBAAkB,EAAE,CAAC;SAC1B;aAAM;YACN,IAAI,CAAC,IAAI,GAAG,KAAqB,CAAC;SAClC;QAED,eAAe,CAAC,GAAG,CAAC,IAAI,EAAE,GAAG,EAAE,WAAW,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;IAC3D,CAAC;IAED,0CAAK,GAAL;QACC,IAAI,CAAC,IAAI,GAAG,SAAS,CAAC;QACtB,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC;IACrB,CAAC;IAES,4CAAO,GAAjB;QACC,OAAO,4BAA4B,CAAC;IACrC,CAAC;IACF,iCAAC;AAAD,CAAC,AAhID,CAUS,OAAO,GAsHf","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { interaction } from \"pixi.js\";\nimport { DButton, DButtonOptions, DThemeButton } from \"./d-button\";\nimport { DTableBodyCell, DTableBodyCellOnChange } from \"./d-table-body-cell\";\nimport { DTableBodyCells } from \"./d-table-body-cells\";\nimport { DTableColumn } from \"./d-table-column\";\nimport { DTableDataSupplimental } from \"./d-table-data\";\n\nexport interface DTableBodyCellSelectDialogOptions<\n\tROW = unknown,\n\tVALUE = unknown,\n\tTHEME extends DThemeTableBodyCellSelectDialog<VALUE> = DThemeTableBodyCellSelectDialog<VALUE>\n> extends DButtonOptions<VALUE | null, THEME> {\n\t/**\n\t * False to stop synchronization of the selected value and the text.\n\t */\n\tsync?: boolean;\n}\n\nexport interface DThemeTableBodyCellSelectDialog<VALUE = unknown>\n\textends DThemeButton<VALUE | null> {\n\tisSyncEnabled(): boolean;\n}\n\nexport class DTableBodyCellSelectDialog<\n\t\tROW = unknown,\n\t\tVALUE = unknown,\n\t\tTHEME extends DThemeTableBodyCellSelectDialog<VALUE> = DThemeTableBodyCellSelectDialog<VALUE>,\n\t\tOPTIONS extends DTableBodyCellSelectDialogOptions<\n\t\t\tROW,\n\t\t\tVALUE,\n\t\t\tTHEME\n\t\t> = DTableBodyCellSelectDialogOptions<ROW, VALUE, THEME>\n\t>\n\textends DButton<VALUE | null, THEME, OPTIONS>\n\timplements DTableBodyCell<ROW, VALUE | null>\n{\n\tprotected _row?: ROW;\n\tprotected _rowIndex: number;\n\tprotected _columnIndex: number;\n\tprotected _column: DTableColumn<ROW, VALUE | null>;\n\tprotected _onChange: DTableBodyCellOnChange<ROW, VALUE | null>;\n\tprotected _isSyncEnabled: boolean;\n\n\tconstructor(\n\t\tcolumnIndex: number,\n\t\tcolumn: DTableColumn<ROW, VALUE | null>,\n\t\tonChange: DTableBodyCellOnChange<ROW, VALUE | null>,\n\t\toptions?: OPTIONS\n\t) {\n\t\tsuper(options);\n\n\t\tthis._rowIndex = -1;\n\t\tthis._columnIndex = columnIndex;\n\t\tthis._column = column;\n\t\tthis._onChange = onChange;\n\t\tthis._isSyncEnabled = options?.sync ?? this.theme.isSyncEnabled();\n\t}\n\n\tprotected onActivate(\n\t\te?: interaction.InteractionEvent | KeyboardEvent | MouseEvent | TouchEvent\n\t): void {\n\t\tsuper.onActivate(e);\n\t\tconst selecting = this._column.selecting;\n\t\tconst dialog = selecting.dialog;\n\t\tif (dialog) {\n\t\t\tconst oldValue = this._textValueComputed ?? null;\n\t\t\tselecting.setter(dialog, oldValue);\n\t\t\tdialog.open(this).then((): void => {\n\t\t\t\tconst newValue = selecting.getter(dialog);\n\t\t\t\tif (this._isSyncEnabled) {\n\t\t\t\t\tif (newValue !== oldValue) {\n\t\t\t\t\t\tthis.text = newValue;\n\t\t\t\t\t\tthis.onValueChange(newValue, oldValue);\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\tthis.onValueChange(newValue, null);\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\t}\n\n\tprotected onValueChange(newValue: VALUE | null, oldValue: VALUE | null): void {\n\t\tconst row = this._row;\n\t\tif (row !== undefined) {\n\t\t\tconst rowIndex = this._rowIndex;\n\t\t\tconst columnIndex = this._columnIndex;\n\t\t\tconst column = this._column;\n\t\t\tcolumn.setter(row, columnIndex, newValue);\n\t\t\tthis.emit(\"change\", newValue, oldValue, this);\n\t\t\tthis._onChange(newValue, oldValue, row, rowIndex, columnIndex, column, this);\n\t\t}\n\t}\n\n\tget row(): ROW | undefined {\n\t\treturn this._row;\n\t}\n\n\tget rowIndex(): number {\n\t\treturn this._rowIndex;\n\t}\n\n\tget columnIndex(): number {\n\t\treturn this._columnIndex;\n\t}\n\n\tget column(): DTableColumn<ROW, VALUE | null> {\n\t\treturn this._column;\n\t}\n\n\tget value(): VALUE | null {\n\t\tconst textValueComputed = this._textValueComputed;\n\t\tif (textValueComputed !== undefined) {\n\t\t\treturn textValueComputed;\n\t\t}\n\t\treturn null;\n\t}\n\n\tset value(value: VALUE | null) {\n\t\tthis.text = value;\n\t}\n\n\tset(\n\t\tvalue: unknown,\n\t\trow: ROW,\n\t\tsupplimental: DTableDataSupplimental | null,\n\t\trowIndex: number,\n\t\tcolumnIndex: number,\n\t\tforcibly?: boolean\n\t): void {\n\t\tthis._row = row;\n\t\tthis._rowIndex = rowIndex;\n\t\tif (forcibly) {\n\t\t\tthis._textValue = value as VALUE | null;\n\t\t\tthis._textValueComputed = value as VALUE | null;\n\t\t\tthis.onTextChange();\n\t\t\tthis.createOrUpdateText();\n\t\t} else {\n\t\t\tthis.text = value as VALUE | null;\n\t\t}\n\n\t\tDTableBodyCells.set(this, row, columnIndex, this._column);\n\t}\n\n\tunset(): void {\n\t\tthis._row = undefined;\n\t\tthis._rowIndex = -1;\n\t}\n\n\tprotected getType(): string {\n\t\treturn \"DTableBodyCellSelectDialog\";\n\t}\n}\n"]}
1
+ {"version":3,"file":"d-table-body-cell-select-dialog.js","sourceRoot":"","sources":["../../../src/main/typescript/wcardinal/ui/d-table-body-cell-select-dialog.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 } from \"pixi.js\";\nimport { DButton, DButtonOptions, DThemeButton } from \"./d-button\";\nimport { DTableBodyCell, DTableBodyCellOnChange } from \"./d-table-body-cell\";\nimport { DTableBodyCells } from \"./d-table-body-cells\";\nimport { DTableColumn } from \"./d-table-column\";\nimport { DTableDataSupplimental } from \"./d-table-data\";\n\nexport interface DTableBodyCellSelectDialogOptions<\n\tROW = unknown,\n\tVALUE = unknown,\n\tTHEME extends DThemeTableBodyCellSelectDialog<VALUE> = DThemeTableBodyCellSelectDialog<VALUE>\n> extends DButtonOptions<VALUE | null, THEME> {\n\t/**\n\t * False to stop synchronization of the selected value and the text.\n\t */\n\tsync?: boolean;\n}\n\nexport interface DThemeTableBodyCellSelectDialog<VALUE = unknown>\n\textends DThemeButton<VALUE | null> {\n\tisSyncEnabled(): boolean;\n}\n\nexport class DTableBodyCellSelectDialog<\n\t\tROW = unknown,\n\t\tVALUE = unknown,\n\t\tTHEME extends\n\t\t\tDThemeTableBodyCellSelectDialog<VALUE> = DThemeTableBodyCellSelectDialog<VALUE>,\n\t\tOPTIONS extends DTableBodyCellSelectDialogOptions<\n\t\t\tROW,\n\t\t\tVALUE,\n\t\t\tTHEME\n\t\t> = DTableBodyCellSelectDialogOptions<ROW, VALUE, THEME>\n\t>\n\textends DButton<VALUE | null, THEME, OPTIONS>\n\timplements DTableBodyCell<ROW, VALUE | null>\n{\n\tprotected _row?: ROW;\n\tprotected _rowIndex: number;\n\tprotected _columnIndex: number;\n\tprotected _column: DTableColumn<ROW, VALUE | null>;\n\tprotected _onChange: DTableBodyCellOnChange<ROW, VALUE | null>;\n\tprotected _isSyncEnabled: boolean;\n\n\tconstructor(\n\t\tcolumnIndex: number,\n\t\tcolumn: DTableColumn<ROW, VALUE | null>,\n\t\tonChange: DTableBodyCellOnChange<ROW, VALUE | null>,\n\t\toptions?: OPTIONS\n\t) {\n\t\tsuper(options);\n\n\t\tthis._rowIndex = -1;\n\t\tthis._columnIndex = columnIndex;\n\t\tthis._column = column;\n\t\tthis._onChange = onChange;\n\t\tthis._isSyncEnabled = options?.sync ?? this.theme.isSyncEnabled();\n\t}\n\n\tprotected onActivate(\n\t\te?: interaction.InteractionEvent | KeyboardEvent | MouseEvent | TouchEvent\n\t): void {\n\t\tsuper.onActivate(e);\n\t\tconst selecting = this._column.selecting;\n\t\tconst dialog = selecting.dialog;\n\t\tif (dialog) {\n\t\t\tconst oldValue = this._textValueComputed ?? null;\n\t\t\tselecting.setter(dialog, oldValue);\n\t\t\tdialog.open(this).then((): void => {\n\t\t\t\tconst newValue = selecting.getter(dialog);\n\t\t\t\tif (this._isSyncEnabled) {\n\t\t\t\t\tif (newValue !== oldValue) {\n\t\t\t\t\t\tthis.text = newValue;\n\t\t\t\t\t\tthis.onValueChange(newValue, oldValue);\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\tthis.onValueChange(newValue, null);\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\t}\n\n\tprotected onValueChange(newValue: VALUE | null, oldValue: VALUE | null): void {\n\t\tconst row = this._row;\n\t\tif (row !== undefined) {\n\t\t\tconst rowIndex = this._rowIndex;\n\t\t\tconst columnIndex = this._columnIndex;\n\t\t\tconst column = this._column;\n\t\t\tcolumn.setter(row, columnIndex, newValue);\n\t\t\tthis.emit(\"change\", newValue, oldValue, this);\n\t\t\tthis._onChange(newValue, oldValue, row, rowIndex, columnIndex, column, this);\n\t\t}\n\t}\n\n\tget row(): ROW | undefined {\n\t\treturn this._row;\n\t}\n\n\tget rowIndex(): number {\n\t\treturn this._rowIndex;\n\t}\n\n\tget columnIndex(): number {\n\t\treturn this._columnIndex;\n\t}\n\n\tget column(): DTableColumn<ROW, VALUE | null> {\n\t\treturn this._column;\n\t}\n\n\tget value(): VALUE | null {\n\t\tconst textValueComputed = this._textValueComputed;\n\t\tif (textValueComputed !== undefined) {\n\t\t\treturn textValueComputed;\n\t\t}\n\t\treturn null;\n\t}\n\n\tset value(value: VALUE | null) {\n\t\tthis.text = value;\n\t}\n\n\tset(\n\t\tvalue: unknown,\n\t\trow: ROW,\n\t\tsupplimental: DTableDataSupplimental | null,\n\t\trowIndex: number,\n\t\tcolumnIndex: number,\n\t\tforcibly?: boolean\n\t): void {\n\t\tthis._row = row;\n\t\tthis._rowIndex = rowIndex;\n\t\tif (forcibly) {\n\t\t\tthis._textValue = value as VALUE | null;\n\t\t\tthis._textValueComputed = value as VALUE | null;\n\t\t\tthis.onTextChange();\n\t\t\tthis.createOrUpdateText();\n\t\t} else {\n\t\t\tthis.text = value as VALUE | null;\n\t\t}\n\n\t\tDTableBodyCells.set(this, row, columnIndex, this._column);\n\t}\n\n\tunset(): void {\n\t\tthis._row = undefined;\n\t\tthis._rowIndex = -1;\n\t}\n\n\tprotected getType(): string {\n\t\treturn \"DTableBodyCellSelectDialog\";\n\t}\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"d-table-body-cell-select-multiple.js","sourceRoot":"","sources":["../../../src/main/typescript/wcardinal/ui/d-table-body-cell-select-multiple.ts"],"names":[],"mappings":"AAAA;;;GAGG;;AAGH,OAAO,EAAE,eAAe,EAAgD,MAAM,qBAAqB,CAAC;AAEpG,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAavD;IAUS,gDAAsC;IAS9C,sCACC,WAAmB,EACnB,MAAkC,EAClC,QAA8C,EAC9C,OAAiB;QAJlB,YAMC,kBAAM,OAAO,CAAC,SAMd;QAJA,KAAI,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC;QACpB,KAAI,CAAC,YAAY,GAAG,WAAW,CAAC;QAChC,KAAI,CAAC,OAAO,GAAG,MAAM,CAAC;QACtB,KAAI,CAAC,SAAS,GAAG,QAAQ,CAAC;;IAC3B,CAAC;IAES,oDAAa,GAAvB,UACC,SAAkB,EAClB,SAAkB,EAClB,KAA8B;QAE9B,IAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC;QACtB,IAAI,GAAG,KAAK,SAAS,EAAE;YACtB,IAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC;YAChC,IAAM,WAAW,GAAG,IAAI,CAAC,YAAY,CAAC;YACtC,IAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC;YAC5B,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,WAAW,EAAE,SAAS,CAAC,CAAC;YAC3C,iBAAM,aAAa,YAAC,SAAS,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;YACjD,IAAI,CAAC,SAAS,CAAC,SAAS,EAAE,SAAS,EAAE,GAAG,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;SAC/E;IACF,CAAC;IAES,yDAAkB,GAA5B,UAA6B,CAAgB;QAC5C,OAAO,KAAK,CAAC;IACd,CAAC;IAED,sBAAI,6CAAG;aAAP;YACC,OAAO,IAAI,CAAC,IAAI,CAAC;QAClB,CAAC;;;OAAA;IAED,sBAAI,kDAAQ;aAAZ;YACC,OAAO,IAAI,CAAC,SAAS,CAAC;QACvB,CAAC;;;OAAA;IAED,sBAAI,qDAAW;aAAf;YACC,OAAO,IAAI,CAAC,YAAY,CAAC;QAC1B,CAAC;;;OAAA;IAED,sBAAI,gDAAM;aAAV;YACC,OAAO,IAAI,CAAC,OAAO,CAAC;QACrB,CAAC;;;OAAA;IAED,0CAAG,GAAH,UACC,KAAc,EACd,GAAQ,EACR,YAA2C,EAC3C,QAAgB,EAChB,WAAmB,EACnB,QAAkB;QAElB,IAAI,CAAC,IAAI,GAAG,GAAG,CAAC;QAChB,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC;QAC1B,IAAI,CAAC,MAAM,GAAG,KAAgB,CAAC;QAE/B,eAAe,CAAC,GAAG,CAAC,IAAI,EAAE,GAAG,EAAE,WAAW,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;IAC3D,CAAC;IAED,4CAAK,GAAL;QACC,IAAI,CAAC,IAAI,GAAG,SAAS,CAAC;QACtB,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC;IACrB,CAAC;IAES,8CAAO,GAAjB;QACC,OAAO,8BAA8B,CAAC;IACvC,CAAC;IACF,mCAAC;AAAD,CAAC,AA5FD,CAUS,eAAe,GAkFvB","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { DMenuItem } from \"./d-menu-item\";\nimport { DSelectMultiple, DSelectMultipleOptions, DThemeSelectMultiple } from \"./d-select-multiple\";\nimport { DTableBodyCell, DTableBodyCellOnChange } from \"./d-table-body-cell\";\nimport { DTableBodyCells } from \"./d-table-body-cells\";\nimport { DTableColumn } from \"./d-table-column\";\nimport { DTableDataSupplimental } from \"./d-table-data\";\n\nexport interface DTableBodyCellSelectMultipleOptions<\n\tROW = unknown,\n\tVALUE = unknown,\n\tTHEME extends DThemeTableBodyCellSelectMultiple<VALUE> = DThemeTableBodyCellSelectMultiple<VALUE>\n> extends DSelectMultipleOptions<VALUE, THEME> {}\n\nexport interface DThemeTableBodyCellSelectMultiple<VALUE = unknown>\n\textends DThemeSelectMultiple<VALUE> {}\n\nexport class DTableBodyCellSelectMultiple<\n\t\tROW = unknown,\n\t\tVALUE = unknown,\n\t\tTHEME extends DThemeTableBodyCellSelectMultiple<VALUE> = DThemeTableBodyCellSelectMultiple<VALUE>,\n\t\tOPTIONS extends DTableBodyCellSelectMultipleOptions<\n\t\t\tROW,\n\t\t\tVALUE,\n\t\t\tTHEME\n\t\t> = DTableBodyCellSelectMultipleOptions<ROW, VALUE, THEME>\n\t>\n\textends DSelectMultiple<VALUE, THEME, OPTIONS>\n\timplements DTableBodyCell<ROW, VALUE[]>\n{\n\tprotected _row?: ROW;\n\tprotected _rowIndex: number;\n\tprotected _columnIndex: number;\n\tprotected _column: DTableColumn<ROW, VALUE[]>;\n\tprotected _onChange: DTableBodyCellOnChange<ROW, VALUE[]>;\n\n\tconstructor(\n\t\tcolumnIndex: number,\n\t\tcolumn: DTableColumn<ROW, VALUE[]>,\n\t\tonChange: DTableBodyCellOnChange<ROW, VALUE[]>,\n\t\toptions?: OPTIONS\n\t) {\n\t\tsuper(options);\n\n\t\tthis._rowIndex = -1;\n\t\tthis._columnIndex = columnIndex;\n\t\tthis._column = column;\n\t\tthis._onChange = onChange;\n\t}\n\n\tprotected onValueChange(\n\t\tnewValues: VALUE[],\n\t\toldValues: VALUE[],\n\t\titems: Array<DMenuItem<VALUE>>\n\t): void {\n\t\tconst row = this._row;\n\t\tif (row !== undefined) {\n\t\t\tconst rowIndex = this._rowIndex;\n\t\t\tconst columnIndex = this._columnIndex;\n\t\t\tconst column = this._column;\n\t\t\tcolumn.setter(row, columnIndex, newValues);\n\t\t\tsuper.onValueChange(newValues, oldValues, items);\n\t\t\tthis._onChange(newValues, oldValues, row, rowIndex, columnIndex, column, this);\n\t\t}\n\t}\n\n\tprotected onKeyDownArrowDown(e: KeyboardEvent): boolean {\n\t\treturn false;\n\t}\n\n\tget row(): ROW | undefined {\n\t\treturn this._row;\n\t}\n\n\tget rowIndex(): number {\n\t\treturn this._rowIndex;\n\t}\n\n\tget columnIndex(): number {\n\t\treturn this._columnIndex;\n\t}\n\n\tget column(): DTableColumn<ROW, VALUE[]> {\n\t\treturn this._column;\n\t}\n\n\tset(\n\t\tvalue: unknown,\n\t\trow: ROW,\n\t\tsupplimental: DTableDataSupplimental | null,\n\t\trowIndex: number,\n\t\tcolumnIndex: number,\n\t\tforcibly?: boolean\n\t): void {\n\t\tthis._row = row;\n\t\tthis._rowIndex = rowIndex;\n\t\tthis.values = value as VALUE[];\n\n\t\tDTableBodyCells.set(this, row, columnIndex, this._column);\n\t}\n\n\tunset(): void {\n\t\tthis._row = undefined;\n\t\tthis._rowIndex = -1;\n\t}\n\n\tprotected getType(): string {\n\t\treturn \"DTableBodyCellSelectMultiple\";\n\t}\n}\n"]}
1
+ {"version":3,"file":"d-table-body-cell-select-multiple.js","sourceRoot":"","sources":["../../../src/main/typescript/wcardinal/ui/d-table-body-cell-select-multiple.ts"],"names":[],"mappings":"AAAA;;;GAGG;;AAGH,OAAO,EAAE,eAAe,EAAgD,MAAM,qBAAqB,CAAC;AAEpG,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAcvD;IAWS,gDAAsC;IAS9C,sCACC,WAAmB,EACnB,MAAkC,EAClC,QAA8C,EAC9C,OAAiB;QAJlB,YAMC,kBAAM,OAAO,CAAC,SAMd;QAJA,KAAI,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC;QACpB,KAAI,CAAC,YAAY,GAAG,WAAW,CAAC;QAChC,KAAI,CAAC,OAAO,GAAG,MAAM,CAAC;QACtB,KAAI,CAAC,SAAS,GAAG,QAAQ,CAAC;;IAC3B,CAAC;IAES,oDAAa,GAAvB,UACC,SAAkB,EAClB,SAAkB,EAClB,KAA8B;QAE9B,IAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC;QACtB,IAAI,GAAG,KAAK,SAAS,EAAE;YACtB,IAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC;YAChC,IAAM,WAAW,GAAG,IAAI,CAAC,YAAY,CAAC;YACtC,IAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC;YAC5B,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,WAAW,EAAE,SAAS,CAAC,CAAC;YAC3C,iBAAM,aAAa,YAAC,SAAS,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;YACjD,IAAI,CAAC,SAAS,CAAC,SAAS,EAAE,SAAS,EAAE,GAAG,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;SAC/E;IACF,CAAC;IAES,yDAAkB,GAA5B,UAA6B,CAAgB;QAC5C,OAAO,KAAK,CAAC;IACd,CAAC;IAED,sBAAI,6CAAG;aAAP;YACC,OAAO,IAAI,CAAC,IAAI,CAAC;QAClB,CAAC;;;OAAA;IAED,sBAAI,kDAAQ;aAAZ;YACC,OAAO,IAAI,CAAC,SAAS,CAAC;QACvB,CAAC;;;OAAA;IAED,sBAAI,qDAAW;aAAf;YACC,OAAO,IAAI,CAAC,YAAY,CAAC;QAC1B,CAAC;;;OAAA;IAED,sBAAI,gDAAM;aAAV;YACC,OAAO,IAAI,CAAC,OAAO,CAAC;QACrB,CAAC;;;OAAA;IAED,0CAAG,GAAH,UACC,KAAc,EACd,GAAQ,EACR,YAA2C,EAC3C,QAAgB,EAChB,WAAmB,EACnB,QAAkB;QAElB,IAAI,CAAC,IAAI,GAAG,GAAG,CAAC;QAChB,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC;QAC1B,IAAI,CAAC,MAAM,GAAG,KAAgB,CAAC;QAE/B,eAAe,CAAC,GAAG,CAAC,IAAI,EAAE,GAAG,EAAE,WAAW,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;IAC3D,CAAC;IAED,4CAAK,GAAL;QACC,IAAI,CAAC,IAAI,GAAG,SAAS,CAAC;QACtB,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC;IACrB,CAAC;IAES,8CAAO,GAAjB;QACC,OAAO,8BAA8B,CAAC;IACvC,CAAC;IACF,mCAAC;AAAD,CAAC,AA7FD,CAWS,eAAe,GAkFvB","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { DMenuItem } from \"./d-menu-item\";\nimport { DSelectMultiple, DSelectMultipleOptions, DThemeSelectMultiple } from \"./d-select-multiple\";\nimport { DTableBodyCell, DTableBodyCellOnChange } from \"./d-table-body-cell\";\nimport { DTableBodyCells } from \"./d-table-body-cells\";\nimport { DTableColumn } from \"./d-table-column\";\nimport { DTableDataSupplimental } from \"./d-table-data\";\n\nexport interface DTableBodyCellSelectMultipleOptions<\n\tROW = unknown,\n\tVALUE = unknown,\n\tTHEME extends\n\t\tDThemeTableBodyCellSelectMultiple<VALUE> = DThemeTableBodyCellSelectMultiple<VALUE>\n> extends DSelectMultipleOptions<VALUE, THEME> {}\n\nexport interface DThemeTableBodyCellSelectMultiple<VALUE = unknown>\n\textends DThemeSelectMultiple<VALUE> {}\n\nexport class DTableBodyCellSelectMultiple<\n\t\tROW = unknown,\n\t\tVALUE = unknown,\n\t\tTHEME extends\n\t\t\tDThemeTableBodyCellSelectMultiple<VALUE> = DThemeTableBodyCellSelectMultiple<VALUE>,\n\t\tOPTIONS extends DTableBodyCellSelectMultipleOptions<\n\t\t\tROW,\n\t\t\tVALUE,\n\t\t\tTHEME\n\t\t> = DTableBodyCellSelectMultipleOptions<ROW, VALUE, THEME>\n\t>\n\textends DSelectMultiple<VALUE, THEME, OPTIONS>\n\timplements DTableBodyCell<ROW, VALUE[]>\n{\n\tprotected _row?: ROW;\n\tprotected _rowIndex: number;\n\tprotected _columnIndex: number;\n\tprotected _column: DTableColumn<ROW, VALUE[]>;\n\tprotected _onChange: DTableBodyCellOnChange<ROW, VALUE[]>;\n\n\tconstructor(\n\t\tcolumnIndex: number,\n\t\tcolumn: DTableColumn<ROW, VALUE[]>,\n\t\tonChange: DTableBodyCellOnChange<ROW, VALUE[]>,\n\t\toptions?: OPTIONS\n\t) {\n\t\tsuper(options);\n\n\t\tthis._rowIndex = -1;\n\t\tthis._columnIndex = columnIndex;\n\t\tthis._column = column;\n\t\tthis._onChange = onChange;\n\t}\n\n\tprotected onValueChange(\n\t\tnewValues: VALUE[],\n\t\toldValues: VALUE[],\n\t\titems: Array<DMenuItem<VALUE>>\n\t): void {\n\t\tconst row = this._row;\n\t\tif (row !== undefined) {\n\t\t\tconst rowIndex = this._rowIndex;\n\t\t\tconst columnIndex = this._columnIndex;\n\t\t\tconst column = this._column;\n\t\t\tcolumn.setter(row, columnIndex, newValues);\n\t\t\tsuper.onValueChange(newValues, oldValues, items);\n\t\t\tthis._onChange(newValues, oldValues, row, rowIndex, columnIndex, column, this);\n\t\t}\n\t}\n\n\tprotected onKeyDownArrowDown(e: KeyboardEvent): boolean {\n\t\treturn false;\n\t}\n\n\tget row(): ROW | undefined {\n\t\treturn this._row;\n\t}\n\n\tget rowIndex(): number {\n\t\treturn this._rowIndex;\n\t}\n\n\tget columnIndex(): number {\n\t\treturn this._columnIndex;\n\t}\n\n\tget column(): DTableColumn<ROW, VALUE[]> {\n\t\treturn this._column;\n\t}\n\n\tset(\n\t\tvalue: unknown,\n\t\trow: ROW,\n\t\tsupplimental: DTableDataSupplimental | null,\n\t\trowIndex: number,\n\t\tcolumnIndex: number,\n\t\tforcibly?: boolean\n\t): void {\n\t\tthis._row = row;\n\t\tthis._rowIndex = rowIndex;\n\t\tthis.values = value as VALUE[];\n\n\t\tDTableBodyCells.set(this, row, columnIndex, this._column);\n\t}\n\n\tunset(): void {\n\t\tthis._row = undefined;\n\t\tthis._rowIndex = -1;\n\t}\n\n\tprotected getType(): string {\n\t\treturn \"DTableBodyCellSelectMultiple\";\n\t}\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"d-table-body-cell-select-promise.js","sourceRoot":"","sources":["../../../src/main/typescript/wcardinal/ui/d-table-body-cell-select-promise.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 } from \"pixi.js\";\nimport { DButton, DButtonOptions, DThemeButton } from \"./d-button\";\nimport { DTableBodyCell, DTableBodyCellOnChange } from \"./d-table-body-cell\";\nimport { DTableBodyCells } from \"./d-table-body-cells\";\nimport { DTableColumn } from \"./d-table-column\";\nimport { DTableDataSupplimental } from \"./d-table-data\";\n\nexport interface DTableBodyCellSelectPromiseOptions<\n\tROW = unknown,\n\tVALUE = unknown,\n\tTHEME extends DThemeTableBodyCellSelectPromise<VALUE> = DThemeTableBodyCellSelectPromise<VALUE>\n> extends DButtonOptions<VALUE | null, THEME> {\n\t/**\n\t * False to stop synchronizing the resolved value and the text.\n\t */\n\tsync?: boolean;\n}\n\nexport interface DThemeTableBodyCellSelectPromise<VALUE = unknown>\n\textends DThemeButton<VALUE | null> {\n\tisSyncEnabled(): boolean;\n}\n\nexport class DTableBodyCellSelectPromise<\n\t\tROW = unknown,\n\t\tVALUE = unknown,\n\t\tTHEME extends DThemeTableBodyCellSelectPromise<VALUE> = DThemeTableBodyCellSelectPromise<VALUE>,\n\t\tOPTIONS extends DTableBodyCellSelectPromiseOptions<\n\t\t\tROW,\n\t\t\tVALUE,\n\t\t\tTHEME\n\t\t> = DTableBodyCellSelectPromiseOptions<ROW, VALUE, THEME>\n\t>\n\textends DButton<VALUE | null, THEME, OPTIONS>\n\timplements DTableBodyCell<ROW, VALUE | null>\n{\n\tprotected _row?: ROW;\n\tprotected _rowIndex: number;\n\tprotected _columnIndex: number;\n\tprotected _column: DTableColumn<ROW, VALUE | null>;\n\tprotected _onChange: DTableBodyCellOnChange<ROW, VALUE | null>;\n\tprotected _isSyncEnabled: boolean;\n\n\tconstructor(\n\t\tcolumnIndex: number,\n\t\tcolumn: DTableColumn<ROW, VALUE | null>,\n\t\tonChange: DTableBodyCellOnChange<ROW, VALUE | null>,\n\t\toptions?: OPTIONS\n\t) {\n\t\tsuper(options);\n\n\t\tthis._rowIndex = -1;\n\t\tthis._columnIndex = columnIndex;\n\t\tthis._column = column;\n\t\tthis._onChange = onChange;\n\t\tthis._isSyncEnabled = options?.sync ?? this.theme.isSyncEnabled();\n\t}\n\n\tprotected onActivate(\n\t\te?: interaction.InteractionEvent | KeyboardEvent | MouseEvent | TouchEvent\n\t): void {\n\t\tsuper.onActivate(e);\n\t\tconst selecting = this._column.selecting;\n\t\tconst promise = selecting.promise;\n\t\tif (promise) {\n\t\t\tpromise().then((newValue: VALUE | null): void => {\n\t\t\t\tif (this._isSyncEnabled) {\n\t\t\t\t\tconst oldValue = this._textValueComputed ?? null;\n\t\t\t\t\tif (newValue !== oldValue) {\n\t\t\t\t\t\tthis.text = newValue;\n\t\t\t\t\t\tthis.onValueChange(newValue, oldValue);\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\tthis.onValueChange(newValue, null);\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\t}\n\n\tprotected onValueChange(newValue: VALUE | null, oldValue: VALUE | null): void {\n\t\tconst row = this._row;\n\t\tif (row !== undefined) {\n\t\t\tconst rowIndex = this._rowIndex;\n\t\t\tconst columnIndex = this._columnIndex;\n\t\t\tconst column = this._column;\n\t\t\tcolumn.setter(row, columnIndex, newValue);\n\t\t\tthis.emit(\"change\", newValue, oldValue, this);\n\t\t\tthis._onChange(newValue, oldValue, row, rowIndex, columnIndex, column, this);\n\t\t}\n\t}\n\n\tget row(): ROW | undefined {\n\t\treturn this._row;\n\t}\n\n\tget rowIndex(): number {\n\t\treturn this._rowIndex;\n\t}\n\n\tget columnIndex(): number {\n\t\treturn this._columnIndex;\n\t}\n\n\tget column(): DTableColumn<ROW, VALUE | null> {\n\t\treturn this._column;\n\t}\n\n\tget value(): VALUE | null {\n\t\tconst textValueComputed = this._textValueComputed;\n\t\tif (textValueComputed !== undefined) {\n\t\t\treturn textValueComputed;\n\t\t}\n\t\treturn null;\n\t}\n\n\tset value(value: VALUE | null) {\n\t\tthis.text = value;\n\t}\n\n\tset(\n\t\tvalue: unknown,\n\t\trow: ROW,\n\t\tsupplimental: DTableDataSupplimental | null,\n\t\trowIndex: number,\n\t\tcolumnIndex: number,\n\t\tforcibly?: boolean\n\t): void {\n\t\tthis._row = row;\n\t\tthis._rowIndex = rowIndex;\n\t\tif (forcibly) {\n\t\t\tthis._textValue = value as VALUE | null;\n\t\t\tthis._textValueComputed = value as VALUE | null;\n\t\t\tthis.onTextChange();\n\t\t\tthis.createOrUpdateText();\n\t\t} else {\n\t\t\tthis.text = value as VALUE | null;\n\t\t}\n\n\t\tDTableBodyCells.set(this, row, columnIndex, this._column);\n\t}\n\n\tunset(): void {\n\t\tthis._row = undefined;\n\t\tthis._rowIndex = -1;\n\t}\n\n\tprotected getType(): string {\n\t\treturn \"DTableBodyCellSelectPromise\";\n\t}\n}\n"]}
1
+ {"version":3,"file":"d-table-body-cell-select-promise.js","sourceRoot":"","sources":["../../../src/main/typescript/wcardinal/ui/d-table-body-cell-select-promise.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 } from \"pixi.js\";\nimport { DButton, DButtonOptions, DThemeButton } from \"./d-button\";\nimport { DTableBodyCell, DTableBodyCellOnChange } from \"./d-table-body-cell\";\nimport { DTableBodyCells } from \"./d-table-body-cells\";\nimport { DTableColumn } from \"./d-table-column\";\nimport { DTableDataSupplimental } from \"./d-table-data\";\n\nexport interface DTableBodyCellSelectPromiseOptions<\n\tROW = unknown,\n\tVALUE = unknown,\n\tTHEME extends DThemeTableBodyCellSelectPromise<VALUE> = DThemeTableBodyCellSelectPromise<VALUE>\n> extends DButtonOptions<VALUE | null, THEME> {\n\t/**\n\t * False to stop synchronizing the resolved value and the text.\n\t */\n\tsync?: boolean;\n}\n\nexport interface DThemeTableBodyCellSelectPromise<VALUE = unknown>\n\textends DThemeButton<VALUE | null> {\n\tisSyncEnabled(): boolean;\n}\n\nexport class DTableBodyCellSelectPromise<\n\t\tROW = unknown,\n\t\tVALUE = unknown,\n\t\tTHEME extends\n\t\t\tDThemeTableBodyCellSelectPromise<VALUE> = DThemeTableBodyCellSelectPromise<VALUE>,\n\t\tOPTIONS extends DTableBodyCellSelectPromiseOptions<\n\t\t\tROW,\n\t\t\tVALUE,\n\t\t\tTHEME\n\t\t> = DTableBodyCellSelectPromiseOptions<ROW, VALUE, THEME>\n\t>\n\textends DButton<VALUE | null, THEME, OPTIONS>\n\timplements DTableBodyCell<ROW, VALUE | null>\n{\n\tprotected _row?: ROW;\n\tprotected _rowIndex: number;\n\tprotected _columnIndex: number;\n\tprotected _column: DTableColumn<ROW, VALUE | null>;\n\tprotected _onChange: DTableBodyCellOnChange<ROW, VALUE | null>;\n\tprotected _isSyncEnabled: boolean;\n\n\tconstructor(\n\t\tcolumnIndex: number,\n\t\tcolumn: DTableColumn<ROW, VALUE | null>,\n\t\tonChange: DTableBodyCellOnChange<ROW, VALUE | null>,\n\t\toptions?: OPTIONS\n\t) {\n\t\tsuper(options);\n\n\t\tthis._rowIndex = -1;\n\t\tthis._columnIndex = columnIndex;\n\t\tthis._column = column;\n\t\tthis._onChange = onChange;\n\t\tthis._isSyncEnabled = options?.sync ?? this.theme.isSyncEnabled();\n\t}\n\n\tprotected onActivate(\n\t\te?: interaction.InteractionEvent | KeyboardEvent | MouseEvent | TouchEvent\n\t): void {\n\t\tsuper.onActivate(e);\n\t\tconst selecting = this._column.selecting;\n\t\tconst promise = selecting.promise;\n\t\tif (promise) {\n\t\t\tpromise().then((newValue: VALUE | null): void => {\n\t\t\t\tif (this._isSyncEnabled) {\n\t\t\t\t\tconst oldValue = this._textValueComputed ?? null;\n\t\t\t\t\tif (newValue !== oldValue) {\n\t\t\t\t\t\tthis.text = newValue;\n\t\t\t\t\t\tthis.onValueChange(newValue, oldValue);\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\tthis.onValueChange(newValue, null);\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\t}\n\n\tprotected onValueChange(newValue: VALUE | null, oldValue: VALUE | null): void {\n\t\tconst row = this._row;\n\t\tif (row !== undefined) {\n\t\t\tconst rowIndex = this._rowIndex;\n\t\t\tconst columnIndex = this._columnIndex;\n\t\t\tconst column = this._column;\n\t\t\tcolumn.setter(row, columnIndex, newValue);\n\t\t\tthis.emit(\"change\", newValue, oldValue, this);\n\t\t\tthis._onChange(newValue, oldValue, row, rowIndex, columnIndex, column, this);\n\t\t}\n\t}\n\n\tget row(): ROW | undefined {\n\t\treturn this._row;\n\t}\n\n\tget rowIndex(): number {\n\t\treturn this._rowIndex;\n\t}\n\n\tget columnIndex(): number {\n\t\treturn this._columnIndex;\n\t}\n\n\tget column(): DTableColumn<ROW, VALUE | null> {\n\t\treturn this._column;\n\t}\n\n\tget value(): VALUE | null {\n\t\tconst textValueComputed = this._textValueComputed;\n\t\tif (textValueComputed !== undefined) {\n\t\t\treturn textValueComputed;\n\t\t}\n\t\treturn null;\n\t}\n\n\tset value(value: VALUE | null) {\n\t\tthis.text = value;\n\t}\n\n\tset(\n\t\tvalue: unknown,\n\t\trow: ROW,\n\t\tsupplimental: DTableDataSupplimental | null,\n\t\trowIndex: number,\n\t\tcolumnIndex: number,\n\t\tforcibly?: boolean\n\t): void {\n\t\tthis._row = row;\n\t\tthis._rowIndex = rowIndex;\n\t\tif (forcibly) {\n\t\t\tthis._textValue = value as VALUE | null;\n\t\t\tthis._textValueComputed = value as VALUE | null;\n\t\t\tthis.onTextChange();\n\t\t\tthis.createOrUpdateText();\n\t\t} else {\n\t\t\tthis.text = value as VALUE | null;\n\t\t}\n\n\t\tDTableBodyCells.set(this, row, columnIndex, this._column);\n\t}\n\n\tunset(): void {\n\t\tthis._row = undefined;\n\t\tthis._rowIndex = -1;\n\t}\n\n\tprotected getType(): string {\n\t\treturn \"DTableBodyCellSelectPromise\";\n\t}\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"d-table-column-type.js","sourceRoot":"","sources":["../../../src/main/typescript/wcardinal/ui/d-table-column-type.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,MAAM,CAAC,IAAM,gBAAgB,GAAG;IAC/B,KAAK,EAAE,CAAC;IACR,IAAI,EAAE,CAAC;IACP,OAAO,EAAE,CAAC;IACV,IAAI,EAAE,CAAC;IACP,KAAK,EAAE,CAAC;IACR,YAAY,EAAE,CAAC;IACf,KAAK,EAAE,CAAC;IACR,MAAM,EAAE,CAAC;IACT,MAAM,EAAE,CAAC;IACT,IAAI,EAAE,CAAC;IACP,QAAQ,EAAE,EAAE;IACZ,IAAI,EAAE,EAAE;IACR,MAAM,EAAE,EAAE;IACV,IAAI,EAAE,EAAE;IACR,IAAI,EAAE,EAAE;IACR,SAAS,EAAE,EAAE;CACJ,CAAC","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nexport const DTableColumnType = {\n\tINDEX: 0,\n\tTEXT: 1,\n\tINTEGER: 2,\n\tREAL: 3,\n\tCHECK: 4,\n\tCHECK_SINGLE: 5,\n\tCOLOR: 6,\n\tBUTTON: 7,\n\tSELECT: 8,\n\tDATE: 9,\n\tDATETIME: 10,\n\tTIME: 11,\n\tACTION: 12,\n\tLINK: 13,\n\tTREE: 14,\n\tTEXT_AREA: 15\n} as const;\n\nexport type DTableColumnType = typeof DTableColumnType[keyof typeof DTableColumnType];\n"]}
1
+ {"version":3,"file":"d-table-column-type.js","sourceRoot":"","sources":["../../../src/main/typescript/wcardinal/ui/d-table-column-type.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,MAAM,CAAC,IAAM,gBAAgB,GAAG;IAC/B,KAAK,EAAE,CAAC;IACR,IAAI,EAAE,CAAC;IACP,OAAO,EAAE,CAAC;IACV,IAAI,EAAE,CAAC;IACP,KAAK,EAAE,CAAC;IACR,YAAY,EAAE,CAAC;IACf,KAAK,EAAE,CAAC;IACR,MAAM,EAAE,CAAC;IACT,MAAM,EAAE,CAAC;IACT,IAAI,EAAE,CAAC;IACP,QAAQ,EAAE,EAAE;IACZ,IAAI,EAAE,EAAE;IACR,MAAM,EAAE,EAAE;IACV,IAAI,EAAE,EAAE;IACR,IAAI,EAAE,EAAE;IACR,SAAS,EAAE,EAAE;CACJ,CAAC","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nexport const DTableColumnType = {\n\tINDEX: 0,\n\tTEXT: 1,\n\tINTEGER: 2,\n\tREAL: 3,\n\tCHECK: 4,\n\tCHECK_SINGLE: 5,\n\tCOLOR: 6,\n\tBUTTON: 7,\n\tSELECT: 8,\n\tDATE: 9,\n\tDATETIME: 10,\n\tTIME: 11,\n\tACTION: 12,\n\tLINK: 13,\n\tTREE: 14,\n\tTEXT_AREA: 15\n} as const;\n\nexport type DTableColumnType = (typeof DTableColumnType)[keyof typeof DTableColumnType];\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"d-table-column-update.js","sourceRoot":"","sources":["../../../src/main/typescript/wcardinal/ui/d-table-column-update.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,MAAM,CAAC,IAAM,kBAAkB,GAAG;IACjC,IAAI,EAAE,CAAC;IACP,GAAG,EAAE,CAAC;IACN,GAAG,EAAE,CAAC;CACG,CAAC","sourcesContent":["/**\n * An update region when table cells get edited.\n *\n * * CELL: Edited cells (Default).\n * * ROW: Rows that edited cells belongs to.\n * * ALL: All the rows.\n */\nexport const DTableColumnUpdate = {\n\tCELL: 0,\n\tROW: 1,\n\tALL: 2\n} as const;\n\nexport type DTableColumnUpdate = typeof DTableColumnUpdate[keyof typeof DTableColumnUpdate];\n"]}
1
+ {"version":3,"file":"d-table-column-update.js","sourceRoot":"","sources":["../../../src/main/typescript/wcardinal/ui/d-table-column-update.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,MAAM,CAAC,IAAM,kBAAkB,GAAG;IACjC,IAAI,EAAE,CAAC;IACP,GAAG,EAAE,CAAC;IACN,GAAG,EAAE,CAAC;CACG,CAAC","sourcesContent":["/**\n * An update region when table cells get edited.\n *\n * * CELL: Edited cells (Default).\n * * ROW: Rows that edited cells belongs to.\n * * ALL: All the rows.\n */\nexport const DTableColumnUpdate = {\n\tCELL: 0,\n\tROW: 1,\n\tALL: 2\n} as const;\n\nexport type DTableColumnUpdate = (typeof DTableColumnUpdate)[keyof typeof DTableColumnUpdate];\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"d-table-column.js","sourceRoot":"","sources":["../../../src/main/typescript/wcardinal/ui/d-table-column.ts"],"names":[],"mappings":"AAAA;;;GAGG","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { DAlignHorizontal } from \"./d-align-horizontal\";\nimport { DTableBodyCellLinkLinkOptions } from \"./d-table-body-cell-link\";\nimport { DTableBodyCellOptions } from \"./d-table-body-cell-options\";\nimport {\n\tDTableColumnEditing,\n\tDTableColumnEditingOptions,\n\tDTableColumnEditable\n} from \"./d-table-column-editing\";\nimport { DTableColumnFormatter } from \"./d-table-column-formatter\";\nimport { DTableColumnGetter } from \"./d-table-column-getter\";\nimport { DTableColumnRenderable } from \"./d-table-column-renderable\";\nimport {\n\tDTableColumnSelecting,\n\tDTableColumnSelectingDialog,\n\tDTableColumnSelectingOptions\n} from \"./d-table-column-selecting\";\nimport { DTableColumnSetter } from \"./d-table-column-setter\";\nimport { DTableColumnSorting, DTableColumnSortingOptions } from \"./d-table-column-sorting\";\nimport { DTableColumnState, DTableColumnStateModifier } from \"./d-table-column-state\";\nimport { DTableColumnType } from \"./d-table-column-type\";\nimport { DTableColumnUpdate } from \"./d-table-column-update\";\nimport { DTableHeaderCellOptions } from \"./d-table-header-cell\";\n\nexport interface DTableColumnOptions<\n\tROW_VALUE,\n\tCELL_VALUE = any,\n\tDIALOG_VALUE = any,\n\tDIALOG extends DTableColumnSelectingDialog<DIALOG_VALUE> = any\n> {\n\tweight?: number;\n\twidth?: number;\n\n\ttype?: keyof typeof DTableColumnType | DTableColumnType;\n\tlabel?: string;\n\tgetter?: DTableColumnGetter<ROW_VALUE, CELL_VALUE>;\n\tsetter?: DTableColumnSetter<ROW_VALUE, CELL_VALUE>;\n\tpath?: string;\n\tdefault?: CELL_VALUE;\n\n\t/**\n\t * A shortcut of body#text#formatter.\n\t */\n\tformatter?: DTableColumnFormatter<CELL_VALUE>;\n\n\t/**\n\t * A shortcut of body#text#align#horizontal.\n\t */\n\talign?: keyof typeof DAlignHorizontal | DAlignHorizontal;\n\n\t/**\n\t * A state option.\n\t */\n\tstate?: string | string[] | DTableColumnStateModifier<ROW_VALUE>;\n\n\t/**\n\t * If the renderable is\n\t *\n\t * * true, cells get rendered.\n\t * * false, cells do not get rendered.\n\t * * a function, cells get rendered only when that function returns true.\n\t * * \"AUTO\", cells get rendered only when the cell data exit.\n\t */\n\trenderable?: boolean | DTableColumnRenderable<ROW_VALUE> | \"auto\" | \"AUTO\";\n\n\t/**\n\t * If the editable is\n\t *\n\t * * true, cells get editable.\n\t * * false, cells do not get editable.\n\t * * a function, cells are editable only when that function returns true.\n\t * * \"AUTO\", cells are editable only when the cell data exist.\n\t */\n\teditable?: boolean | DTableColumnEditable<ROW_VALUE> | \"auto\" | \"AUTO\";\n\tediting?: DTableColumnEditingOptions<ROW_VALUE, CELL_VALUE>;\n\n\tsortable?: boolean;\n\tsorting?: DTableColumnSortingOptions<ROW_VALUE>;\n\n\theader?: DTableHeaderCellOptions<ROW_VALUE>;\n\tbody?: DTableBodyCellOptions<ROW_VALUE>;\n\n\tselecting?: DTableColumnSelectingOptions<CELL_VALUE, DIALOG_VALUE, DIALOG>;\n\n\tcategory?: string | string[];\n\tfrozen?: boolean;\n\n\tlink?: DTableBodyCellLinkLinkOptions<ROW_VALUE, CELL_VALUE>;\n\n\t/**\n\t * An update region when cells get edited.\n\t *\n\t * * CELL: Edited cells (Default).\n\t * * ROW: Rows that edited cells belongs to.\n\t * * ALL: All the rows.\n\t */\n\tupdate?: keyof typeof DTableColumnUpdate | DTableColumnUpdate;\n}\n\nexport interface DTableColumn<\n\tROW_VALUE,\n\tCELL_VALUE,\n\tDIALOG_VALUE = CELL_VALUE,\n\tDIALOG extends DTableColumnSelectingDialog<DIALOG_VALUE> = DTableColumnSelectingDialog<DIALOG_VALUE>\n> {\n\tweight: number | undefined;\n\twidth: number | undefined;\n\n\ttype: DTableColumnType;\n\tlabel: string;\n\tgetter: DTableColumnGetter<ROW_VALUE, CELL_VALUE>;\n\tsetter: DTableColumnSetter<ROW_VALUE, CELL_VALUE>;\n\tformatter?: DTableColumnFormatter<CELL_VALUE>;\n\talign: DAlignHorizontal;\n\tstate: DTableColumnState<ROW_VALUE>;\n\trenderable: boolean | DTableColumnRenderable<ROW_VALUE>;\n\n\tediting: DTableColumnEditing<ROW_VALUE, CELL_VALUE>;\n\tsorting: DTableColumnSorting<ROW_VALUE>;\n\n\theader?: DTableHeaderCellOptions<ROW_VALUE>;\n\tbody?: DTableBodyCellOptions<ROW_VALUE>;\n\n\tselecting: DTableColumnSelecting<CELL_VALUE, DIALOG_VALUE, DIALOG>;\n\n\tcategory?: string | string[];\n\tfrozen?: boolean;\n\toffset: number;\n\n\tlink?: DTableBodyCellLinkLinkOptions<ROW_VALUE, CELL_VALUE>;\n\n\tupdate: DTableColumnUpdate;\n}\n"]}
1
+ {"version":3,"file":"d-table-column.js","sourceRoot":"","sources":["../../../src/main/typescript/wcardinal/ui/d-table-column.ts"],"names":[],"mappings":"AAAA;;;GAGG","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { DAlignHorizontal } from \"./d-align-horizontal\";\nimport { DTableBodyCellLinkLinkOptions } from \"./d-table-body-cell-link\";\nimport { DTableBodyCellOptions } from \"./d-table-body-cell-options\";\nimport {\n\tDTableColumnEditing,\n\tDTableColumnEditingOptions,\n\tDTableColumnEditable\n} from \"./d-table-column-editing\";\nimport { DTableColumnFormatter } from \"./d-table-column-formatter\";\nimport { DTableColumnGetter } from \"./d-table-column-getter\";\nimport { DTableColumnRenderable } from \"./d-table-column-renderable\";\nimport {\n\tDTableColumnSelecting,\n\tDTableColumnSelectingDialog,\n\tDTableColumnSelectingOptions\n} from \"./d-table-column-selecting\";\nimport { DTableColumnSetter } from \"./d-table-column-setter\";\nimport { DTableColumnSorting, DTableColumnSortingOptions } from \"./d-table-column-sorting\";\nimport { DTableColumnState, DTableColumnStateModifier } from \"./d-table-column-state\";\nimport { DTableColumnType } from \"./d-table-column-type\";\nimport { DTableColumnUpdate } from \"./d-table-column-update\";\nimport { DTableHeaderCellOptions } from \"./d-table-header-cell\";\n\nexport interface DTableColumnOptions<\n\tROW_VALUE,\n\tCELL_VALUE = any,\n\tDIALOG_VALUE = any,\n\tDIALOG extends DTableColumnSelectingDialog<DIALOG_VALUE> = any\n> {\n\tweight?: number;\n\twidth?: number;\n\n\ttype?: keyof typeof DTableColumnType | DTableColumnType;\n\tlabel?: string;\n\tgetter?: DTableColumnGetter<ROW_VALUE, CELL_VALUE>;\n\tsetter?: DTableColumnSetter<ROW_VALUE, CELL_VALUE>;\n\tpath?: string;\n\tdefault?: CELL_VALUE;\n\n\t/**\n\t * A shortcut of body#text#formatter.\n\t */\n\tformatter?: DTableColumnFormatter<CELL_VALUE>;\n\n\t/**\n\t * A shortcut of body#text#align#horizontal.\n\t */\n\talign?: keyof typeof DAlignHorizontal | DAlignHorizontal;\n\n\t/**\n\t * A state option.\n\t */\n\tstate?: string | string[] | DTableColumnStateModifier<ROW_VALUE>;\n\n\t/**\n\t * If the renderable is\n\t *\n\t * * true, cells get rendered.\n\t * * false, cells do not get rendered.\n\t * * a function, cells get rendered only when that function returns true.\n\t * * \"AUTO\", cells get rendered only when the cell data exit.\n\t */\n\trenderable?: boolean | DTableColumnRenderable<ROW_VALUE> | \"auto\" | \"AUTO\";\n\n\t/**\n\t * If the editable is\n\t *\n\t * * true, cells get editable.\n\t * * false, cells do not get editable.\n\t * * a function, cells are editable only when that function returns true.\n\t * * \"AUTO\", cells are editable only when the cell data exist.\n\t */\n\teditable?: boolean | DTableColumnEditable<ROW_VALUE> | \"auto\" | \"AUTO\";\n\tediting?: DTableColumnEditingOptions<ROW_VALUE, CELL_VALUE>;\n\n\tsortable?: boolean;\n\tsorting?: DTableColumnSortingOptions<ROW_VALUE>;\n\n\theader?: DTableHeaderCellOptions<ROW_VALUE>;\n\tbody?: DTableBodyCellOptions<ROW_VALUE>;\n\n\tselecting?: DTableColumnSelectingOptions<CELL_VALUE, DIALOG_VALUE, DIALOG>;\n\n\tcategory?: string | string[];\n\tfrozen?: boolean;\n\n\tlink?: DTableBodyCellLinkLinkOptions<ROW_VALUE, CELL_VALUE>;\n\n\t/**\n\t * An update region when cells get edited.\n\t *\n\t * * CELL: Edited cells (Default).\n\t * * ROW: Rows that edited cells belongs to.\n\t * * ALL: All the rows.\n\t */\n\tupdate?: keyof typeof DTableColumnUpdate | DTableColumnUpdate;\n}\n\nexport interface DTableColumn<\n\tROW_VALUE,\n\tCELL_VALUE,\n\tDIALOG_VALUE = CELL_VALUE,\n\tDIALOG extends\n\t\tDTableColumnSelectingDialog<DIALOG_VALUE> = DTableColumnSelectingDialog<DIALOG_VALUE>\n> {\n\tweight: number | undefined;\n\twidth: number | undefined;\n\n\ttype: DTableColumnType;\n\tlabel: string;\n\tgetter: DTableColumnGetter<ROW_VALUE, CELL_VALUE>;\n\tsetter: DTableColumnSetter<ROW_VALUE, CELL_VALUE>;\n\tformatter?: DTableColumnFormatter<CELL_VALUE>;\n\talign: DAlignHorizontal;\n\tstate: DTableColumnState<ROW_VALUE>;\n\trenderable: boolean | DTableColumnRenderable<ROW_VALUE>;\n\n\tediting: DTableColumnEditing<ROW_VALUE, CELL_VALUE>;\n\tsorting: DTableColumnSorting<ROW_VALUE>;\n\n\theader?: DTableHeaderCellOptions<ROW_VALUE>;\n\tbody?: DTableBodyCellOptions<ROW_VALUE>;\n\n\tselecting: DTableColumnSelecting<CELL_VALUE, DIALOG_VALUE, DIALOG>;\n\n\tcategory?: string | string[];\n\tfrozen?: boolean;\n\toffset: number;\n\n\tlink?: DTableBodyCellLinkLinkOptions<ROW_VALUE, CELL_VALUE>;\n\n\tupdate: DTableColumnUpdate;\n}\n"]}