@wcardinal/wcardinal-ui 0.158.0 → 0.161.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 (290) hide show
  1. package/dist/types/wcardinal/ui/d-button-color-gradient.d.ts +4 -0
  2. package/dist/types/wcardinal/ui/d-button-color.d.ts +3 -2
  3. package/dist/types/wcardinal/ui/d-button-date.d.ts +3 -0
  4. package/dist/types/wcardinal/ui/d-button-datetime.d.ts +3 -0
  5. package/dist/types/wcardinal/ui/d-button-time.d.ts +3 -0
  6. package/dist/types/wcardinal/ui/d-image-piece-layouter-part-container.d.ts +2 -2
  7. package/dist/types/wcardinal/ui/d-image-piece-layouter.d.ts +1 -1
  8. package/dist/types/wcardinal/ui/d-table-body-cell-date.d.ts +5 -10
  9. package/dist/types/wcardinal/ui/d-table-body-cell-datetime.d.ts +5 -13
  10. package/dist/types/wcardinal/ui/d-table-body-cell-time.d.ts +5 -13
  11. package/dist/types/wcardinal/ui/index.d.ts +9 -3
  12. package/dist/types/wcardinal/ui/theme/dark/d-theme-dark-dialog.d.ts +2 -1
  13. package/dist/types/wcardinal/ui/theme/white/d-theme-white-dialog.d.ts +2 -1
  14. package/dist/wcardinal/ui/d-animation-base.js +2 -1
  15. package/dist/wcardinal/ui/d-animation-base.js.map +1 -1
  16. package/dist/wcardinal/ui/d-animation-empty.js +2 -1
  17. package/dist/wcardinal/ui/d-animation-empty.js.map +1 -1
  18. package/dist/wcardinal/ui/d-animation-fade-in.js +2 -1
  19. package/dist/wcardinal/ui/d-animation-fade-in.js.map +1 -1
  20. package/dist/wcardinal/ui/d-base.js +2 -1
  21. package/dist/wcardinal/ui/d-base.js.map +1 -1
  22. package/dist/wcardinal/ui/d-button-color-gradient.js +34 -15
  23. package/dist/wcardinal/ui/d-button-color-gradient.js.map +1 -1
  24. package/dist/wcardinal/ui/d-button-color.js +42 -27
  25. package/dist/wcardinal/ui/d-button-color.js.map +1 -1
  26. package/dist/wcardinal/ui/d-button-date.js +17 -8
  27. package/dist/wcardinal/ui/d-button-date.js.map +1 -1
  28. package/dist/wcardinal/ui/d-button-datetime.js +17 -8
  29. package/dist/wcardinal/ui/d-button-datetime.js.map +1 -1
  30. package/dist/wcardinal/ui/d-button-select.js +2 -1
  31. package/dist/wcardinal/ui/d-button-select.js.map +1 -1
  32. package/dist/wcardinal/ui/d-button-time.js +17 -8
  33. package/dist/wcardinal/ui/d-button-time.js.map +1 -1
  34. package/dist/wcardinal/ui/d-chart-selection-simple.js +2 -1
  35. package/dist/wcardinal/ui/d-chart-selection-simple.js.map +1 -1
  36. package/dist/wcardinal/ui/d-chart-selection-sub-impl.js +2 -1
  37. package/dist/wcardinal/ui/d-chart-selection-sub-impl.js.map +1 -1
  38. package/dist/wcardinal/ui/d-chart-series-line.js +2 -1
  39. package/dist/wcardinal/ui/d-chart-series-line.js.map +1 -1
  40. package/dist/wcardinal/ui/d-diagram-base.js +2 -1
  41. package/dist/wcardinal/ui/d-diagram-base.js.map +1 -1
  42. package/dist/wcardinal/ui/d-diagram.js +3 -3
  43. package/dist/wcardinal/ui/d-diagram.js.map +1 -1
  44. package/dist/wcardinal/ui/d-dialog-processing.js +2 -1
  45. package/dist/wcardinal/ui/d-dialog-processing.js.map +1 -1
  46. package/dist/wcardinal/ui/d-dialog.js +1 -1
  47. package/dist/wcardinal/ui/d-dialog.js.map +1 -1
  48. package/dist/wcardinal/ui/d-dynamic-text-style.js +1 -1
  49. package/dist/wcardinal/ui/d-dynamic-text-style.js.map +1 -1
  50. package/dist/wcardinal/ui/d-image-base.js +3 -0
  51. package/dist/wcardinal/ui/d-image-base.js.map +1 -1
  52. package/dist/wcardinal/ui/d-image-piece-layouter-part-container.js +11 -5
  53. package/dist/wcardinal/ui/d-image-piece-layouter-part-container.js.map +1 -1
  54. package/dist/wcardinal/ui/d-image-piece-layouter.js.map +1 -1
  55. package/dist/wcardinal/ui/d-map-tile-pyramids.js +5 -5
  56. package/dist/wcardinal/ui/d-map-tile-pyramids.js.map +1 -1
  57. package/dist/wcardinal/ui/d-menu-item-base.js +2 -1
  58. package/dist/wcardinal/ui/d-menu-item-base.js.map +1 -1
  59. package/dist/wcardinal/ui/d-menu-sided-selection.js +2 -1
  60. package/dist/wcardinal/ui/d-menu-sided-selection.js.map +1 -1
  61. package/dist/wcardinal/ui/d-menu-sided.js +2 -1
  62. package/dist/wcardinal/ui/d-menu-sided.js.map +1 -1
  63. package/dist/wcardinal/ui/d-menus.js +1 -1
  64. package/dist/wcardinal/ui/d-menus.js.map +1 -1
  65. package/dist/wcardinal/ui/d-pagination.js +2 -1
  66. package/dist/wcardinal/ui/d-pagination.js.map +1 -1
  67. package/dist/wcardinal/ui/d-pane.js +2 -1
  68. package/dist/wcardinal/ui/d-pane.js.map +1 -1
  69. package/dist/wcardinal/ui/d-picker-color-gradient-view.js +3 -0
  70. package/dist/wcardinal/ui/d-picker-color-gradient-view.js.map +1 -1
  71. package/dist/wcardinal/ui/d-picker-dates.js +1 -1
  72. package/dist/wcardinal/ui/d-picker-dates.js.map +1 -1
  73. package/dist/wcardinal/ui/d-picker-datetimes.js +2 -2
  74. package/dist/wcardinal/ui/d-picker-datetimes.js.map +1 -1
  75. package/dist/wcardinal/ui/d-scalar-expression.js +3 -3
  76. package/dist/wcardinal/ui/d-scalar-expression.js.map +1 -1
  77. package/dist/wcardinal/ui/d-scroll-bar.js +2 -1
  78. package/dist/wcardinal/ui/d-scroll-bar.js.map +1 -1
  79. package/dist/wcardinal/ui/d-slider.js +2 -2
  80. package/dist/wcardinal/ui/d-slider.js.map +1 -1
  81. package/dist/wcardinal/ui/d-table-body-cell-button.js +2 -1
  82. package/dist/wcardinal/ui/d-table-body-cell-button.js.map +1 -1
  83. package/dist/wcardinal/ui/d-table-body-cell-color.js +4 -1
  84. package/dist/wcardinal/ui/d-table-body-cell-color.js.map +1 -1
  85. package/dist/wcardinal/ui/d-table-body-cell-date.js +14 -45
  86. package/dist/wcardinal/ui/d-table-body-cell-date.js.map +1 -1
  87. package/dist/wcardinal/ui/d-table-body-cell-datetime.js +13 -54
  88. package/dist/wcardinal/ui/d-table-body-cell-datetime.js.map +1 -1
  89. package/dist/wcardinal/ui/d-table-body-cell-select-dialog.js +2 -1
  90. package/dist/wcardinal/ui/d-table-body-cell-select-dialog.js.map +1 -1
  91. package/dist/wcardinal/ui/d-table-body-cell-select-promise.js +2 -1
  92. package/dist/wcardinal/ui/d-table-body-cell-select-promise.js.map +1 -1
  93. package/dist/wcardinal/ui/d-table-body-cell-time.js +13 -53
  94. package/dist/wcardinal/ui/d-table-body-cell-time.js.map +1 -1
  95. package/dist/wcardinal/ui/d-table-body-cell-tree.js +2 -1
  96. package/dist/wcardinal/ui/d-table-body-cell-tree.js.map +1 -1
  97. package/dist/wcardinal/ui/d-table-body.js +2 -1
  98. package/dist/wcardinal/ui/d-table-body.js.map +1 -1
  99. package/dist/wcardinal/ui/d-table-category.js +2 -1
  100. package/dist/wcardinal/ui/d-table-category.js.map +1 -1
  101. package/dist/wcardinal/ui/d-table-data-list-selection.js +2 -1
  102. package/dist/wcardinal/ui/d-table-data-list-selection.js.map +1 -1
  103. package/dist/wcardinal/ui/d-table-data-tree-selection-impl.js +2 -1
  104. package/dist/wcardinal/ui/d-table-data-tree-selection-impl.js.map +1 -1
  105. package/dist/wcardinal/ui/d-table-header.js +2 -1
  106. package/dist/wcardinal/ui/d-table-header.js.map +1 -1
  107. package/dist/wcardinal/ui/d-table-row.js +2 -1
  108. package/dist/wcardinal/ui/d-table-row.js.map +1 -1
  109. package/dist/wcardinal/ui/d-tree-item-button.js +2 -1
  110. package/dist/wcardinal/ui/d-tree-item-button.js.map +1 -1
  111. package/dist/wcardinal/ui/index.js +9 -3
  112. package/dist/wcardinal/ui/index.js.map +1 -1
  113. package/dist/wcardinal/ui/shape/action/e-shape-action-expressions.js +4 -4
  114. package/dist/wcardinal/ui/shape/action/e-shape-action-expressions.js.map +1 -1
  115. package/dist/wcardinal/ui/shape/action/e-shape-action-runtime-transform-rotate.js +1 -1
  116. package/dist/wcardinal/ui/shape/action/e-shape-action-runtime-transform-rotate.js.map +1 -1
  117. package/dist/wcardinal/ui/shape/action/e-shape-action-value-blink.js +1 -1
  118. package/dist/wcardinal/ui/shape/action/e-shape-action-value-blink.js.map +1 -1
  119. package/dist/wcardinal/ui/shape/action/e-shape-action-value-change-color-brightness.js +1 -1
  120. package/dist/wcardinal/ui/shape/action/e-shape-action-value-change-color-brightness.js.map +1 -1
  121. package/dist/wcardinal/ui/shape/action/e-shape-action-value-change-color-code.js +1 -1
  122. package/dist/wcardinal/ui/shape/action/e-shape-action-value-change-color-code.js.map +1 -1
  123. package/dist/wcardinal/ui/shape/action/e-shape-action-value-change-color.js +1 -1
  124. package/dist/wcardinal/ui/shape/action/e-shape-action-value-change-color.js.map +1 -1
  125. package/dist/wcardinal/ui/shape/action/e-shape-action-value-change-cursor.js +1 -1
  126. package/dist/wcardinal/ui/shape/action/e-shape-action-value-change-cursor.js.map +1 -1
  127. package/dist/wcardinal/ui/shape/action/e-shape-action-value-change-text.js +1 -1
  128. package/dist/wcardinal/ui/shape/action/e-shape-action-value-change-text.js.map +1 -1
  129. package/dist/wcardinal/ui/shape/action/e-shape-action-value-emit-event.js +1 -1
  130. package/dist/wcardinal/ui/shape/action/e-shape-action-value-emit-event.js.map +1 -1
  131. package/dist/wcardinal/ui/shape/action/e-shape-action-value-misc-gesture.js +1 -1
  132. package/dist/wcardinal/ui/shape/action/e-shape-action-value-misc-gesture.js.map +1 -1
  133. package/dist/wcardinal/ui/shape/action/e-shape-action-value-misc-layer-gesture.js +1 -1
  134. package/dist/wcardinal/ui/shape/action/e-shape-action-value-misc-layer-gesture.js.map +1 -1
  135. package/dist/wcardinal/ui/shape/action/e-shape-action-value-misc-layer-show-hide.js +1 -1
  136. package/dist/wcardinal/ui/shape/action/e-shape-action-value-misc-layer-show-hide.js.map +1 -1
  137. package/dist/wcardinal/ui/shape/action/e-shape-action-value-misc.js +1 -1
  138. package/dist/wcardinal/ui/shape/action/e-shape-action-value-misc.js.map +1 -1
  139. package/dist/wcardinal/ui/shape/action/e-shape-action-value-open.js +1 -1
  140. package/dist/wcardinal/ui/shape/action/e-shape-action-value-open.js.map +1 -1
  141. package/dist/wcardinal/ui/shape/action/e-shape-action-value-show-hide.js +1 -1
  142. package/dist/wcardinal/ui/shape/action/e-shape-action-value-show-hide.js.map +1 -1
  143. package/dist/wcardinal/ui/shape/action/e-shape-action-value-transform-move.js +1 -1
  144. package/dist/wcardinal/ui/shape/action/e-shape-action-value-transform-move.js.map +1 -1
  145. package/dist/wcardinal/ui/shape/action/e-shape-action-value-transform-resize.js +1 -1
  146. package/dist/wcardinal/ui/shape/action/e-shape-action-value-transform-resize.js.map +1 -1
  147. package/dist/wcardinal/ui/shape/action/e-shape-action-value-transform-rotate.js +1 -1
  148. package/dist/wcardinal/ui/shape/action/e-shape-action-value-transform-rotate.js.map +1 -1
  149. package/dist/wcardinal/ui/shape/e-shape-connector-edge-container-impl.js +1 -1
  150. package/dist/wcardinal/ui/shape/e-shape-connector-edge-container-impl.js.map +1 -1
  151. package/dist/wcardinal/ui/shape/e-shape-connector-edge-impl.js +1 -1
  152. package/dist/wcardinal/ui/shape/e-shape-connector-edge-impl.js.map +1 -1
  153. package/dist/wcardinal/ui/shape/e-shape-points-marker-base.js +1 -1
  154. package/dist/wcardinal/ui/shape/e-shape-points-marker-base.js.map +1 -1
  155. package/dist/wcardinal/ui/shape/e-shape-points-marker-container-impl.js +1 -1
  156. package/dist/wcardinal/ui/shape/e-shape-points-marker-container-impl.js.map +1 -1
  157. package/dist/wcardinal/ui/shape/variant/e-shape-bar-points.js +1 -1
  158. package/dist/wcardinal/ui/shape/variant/e-shape-bar-points.js.map +1 -1
  159. package/dist/wcardinal/ui/shape/variant/e-shape-button.js +1 -1
  160. package/dist/wcardinal/ui/shape/variant/e-shape-button.js.map +1 -1
  161. package/dist/wcardinal/ui/shape/variant/e-shape-connector-line.js +1 -1
  162. package/dist/wcardinal/ui/shape/variant/e-shape-connector-line.js.map +1 -1
  163. package/dist/wcardinal/ui/shape/variant/e-shape-data-impl.js +2 -2
  164. package/dist/wcardinal/ui/shape/variant/e-shape-data-impl.js.map +1 -1
  165. package/dist/wcardinal/ui/shape/variant/e-shape-data-value-impl.js +1 -1
  166. package/dist/wcardinal/ui/shape/variant/e-shape-data-value-impl.js.map +1 -1
  167. package/dist/wcardinal/ui/shape/variant/e-shape-data-value-range-impl.js +1 -1
  168. package/dist/wcardinal/ui/shape/variant/e-shape-data-value-range-impl.js.map +1 -1
  169. package/dist/wcardinal/ui/shape/variant/e-shape-fill-impl.js +1 -1
  170. package/dist/wcardinal/ui/shape/variant/e-shape-fill-impl.js.map +1 -1
  171. package/dist/wcardinal/ui/shape/variant/e-shape-line-points.js +1 -1
  172. package/dist/wcardinal/ui/shape/variant/e-shape-line-points.js.map +1 -1
  173. package/dist/wcardinal/ui/shape/variant/e-shape-stroke-impl.js +1 -1
  174. package/dist/wcardinal/ui/shape/variant/e-shape-stroke-impl.js.map +1 -1
  175. package/dist/wcardinal/ui/shape/variant/e-shape-text-align-impl.js +1 -1
  176. package/dist/wcardinal/ui/shape/variant/e-shape-text-align-impl.js.map +1 -1
  177. package/dist/wcardinal/ui/shape/variant/e-shape-text-impl.js +3 -3
  178. package/dist/wcardinal/ui/shape/variant/e-shape-text-impl.js.map +1 -1
  179. package/dist/wcardinal/ui/shape/variant/e-shape-text-offset-impl.js +1 -1
  180. package/dist/wcardinal/ui/shape/variant/e-shape-text-offset-impl.js.map +1 -1
  181. package/dist/wcardinal/ui/shape/variant/e-shape-text-outline-impl.js +1 -1
  182. package/dist/wcardinal/ui/shape/variant/e-shape-text-outline-impl.js.map +1 -1
  183. package/dist/wcardinal/ui/shape/variant/to-gradient-image-url.js +2 -2
  184. package/dist/wcardinal/ui/shape/variant/to-gradient-image-url.js.map +1 -1
  185. package/dist/wcardinal/ui/shape/variant/to-gradient-serialized.js +2 -2
  186. package/dist/wcardinal/ui/shape/variant/to-gradient-serialized.js.map +1 -1
  187. package/dist/wcardinal/ui/theme/dark/d-theme-dark-base.js +3 -3
  188. package/dist/wcardinal/ui/theme/dark/d-theme-dark-base.js.map +1 -1
  189. package/dist/wcardinal/ui/theme/dark/d-theme-dark-button-color.js +1 -1
  190. package/dist/wcardinal/ui/theme/dark/d-theme-dark-button-color.js.map +1 -1
  191. package/dist/wcardinal/ui/theme/dark/d-theme-dark-dialog.js +17 -3
  192. package/dist/wcardinal/ui/theme/dark/d-theme-dark-dialog.js.map +1 -1
  193. package/dist/wcardinal/ui/theme/dark/d-theme-dark-html-element.js +14 -14
  194. package/dist/wcardinal/ui/theme/dark/d-theme-dark-html-element.js.map +1 -1
  195. package/dist/wcardinal/ui/theme/dark/d-theme-dark-input-input.js +4 -4
  196. package/dist/wcardinal/ui/theme/dark/d-theme-dark-input-input.js.map +1 -1
  197. package/dist/wcardinal/ui/theme/dark/d-theme-dark-input-text-area.js +4 -4
  198. package/dist/wcardinal/ui/theme/dark/d-theme-dark-input-text-area.js.map +1 -1
  199. package/dist/wcardinal/ui/theme/dark/d-theme-dark-picker-color.js +1 -1
  200. package/dist/wcardinal/ui/theme/dark/d-theme-dark-picker-color.js.map +1 -1
  201. package/dist/wcardinal/ui/theme/dark/d-theme-dark-picker-datetime.js +1 -1
  202. package/dist/wcardinal/ui/theme/dark/d-theme-dark-picker-datetime.js.map +1 -1
  203. package/dist/wcardinal/ui/theme/dark/d-theme-dark.js +1 -1
  204. package/dist/wcardinal/ui/theme/dark/d-theme-dark.js.map +1 -1
  205. package/dist/wcardinal/ui/theme/dark/e-theme-dark-shape-action-value.js +8 -8
  206. package/dist/wcardinal/ui/theme/dark/e-theme-dark-shape-action-value.js.map +1 -1
  207. package/dist/wcardinal/ui/theme/white/d-theme-white-base.js +3 -3
  208. package/dist/wcardinal/ui/theme/white/d-theme-white-base.js.map +1 -1
  209. package/dist/wcardinal/ui/theme/white/d-theme-white-button-color.js +1 -1
  210. package/dist/wcardinal/ui/theme/white/d-theme-white-button-color.js.map +1 -1
  211. package/dist/wcardinal/ui/theme/white/d-theme-white-dialog.js +17 -3
  212. package/dist/wcardinal/ui/theme/white/d-theme-white-dialog.js.map +1 -1
  213. package/dist/wcardinal/ui/theme/white/d-theme-white-html-element.js +14 -14
  214. package/dist/wcardinal/ui/theme/white/d-theme-white-html-element.js.map +1 -1
  215. package/dist/wcardinal/ui/theme/white/d-theme-white-input-input.js +4 -4
  216. package/dist/wcardinal/ui/theme/white/d-theme-white-input-input.js.map +1 -1
  217. package/dist/wcardinal/ui/theme/white/d-theme-white-input-text-area.js +4 -4
  218. package/dist/wcardinal/ui/theme/white/d-theme-white-input-text-area.js.map +1 -1
  219. package/dist/wcardinal/ui/theme/white/d-theme-white-menu.js +2 -1
  220. package/dist/wcardinal/ui/theme/white/d-theme-white-menu.js.map +1 -1
  221. package/dist/wcardinal/ui/theme/white/d-theme-white-picker-color.js +1 -1
  222. package/dist/wcardinal/ui/theme/white/d-theme-white-picker-color.js.map +1 -1
  223. package/dist/wcardinal/ui/theme/white/d-theme-white-picker-datetime.js +1 -1
  224. package/dist/wcardinal/ui/theme/white/d-theme-white-picker-datetime.js.map +1 -1
  225. package/dist/wcardinal/ui/theme/white/d-theme-white.js +1 -1
  226. package/dist/wcardinal/ui/theme/white/d-theme-white.js.map +1 -1
  227. package/dist/wcardinal/ui/theme/white/e-theme-white-shape-action-value.js +8 -8
  228. package/dist/wcardinal/ui/theme/white/e-theme-white-shape-action-value.js.map +1 -1
  229. package/dist/wcardinal/ui/util/dynamic-sdf-font-atlas.js +1 -1
  230. package/dist/wcardinal/ui/util/dynamic-sdf-font-atlas.js.map +1 -1
  231. package/dist/wcardinal/ui/util/dynamic-sdf-font-generator.js +2 -2
  232. package/dist/wcardinal/ui/util/dynamic-sdf-font-generator.js.map +1 -1
  233. package/dist/wcardinal/ui/util/format-node/format-node-d-small.js +1 -1
  234. package/dist/wcardinal/ui/util/format-node/format-node-d-small.js.map +1 -1
  235. package/dist/wcardinal/ui/util/format-node/format-node-fsi.js +1 -1
  236. package/dist/wcardinal/ui/util/format-node/format-node-fsi.js.map +1 -1
  237. package/dist/wcardinal/ui/util/format-node/format-node-p-large.js +1 -1
  238. package/dist/wcardinal/ui/util/format-node/format-node-p-large.js.map +1 -1
  239. package/dist/wcardinal/ui/util/format-node/format-node-p-small.js +1 -1
  240. package/dist/wcardinal/ui/util/format-node/format-node-p-small.js.map +1 -1
  241. package/dist/wcardinal/ui/util/format-node/format-node-parenthesis.js +1 -1
  242. package/dist/wcardinal/ui/util/format-node/format-node-parenthesis.js.map +1 -1
  243. package/dist/wcardinal/ui/util/format-node/format-node-plus.js +1 -1
  244. package/dist/wcardinal/ui/util/format-node/format-node-plus.js.map +1 -1
  245. package/dist/wcardinal/ui/util/format-node/format-node-rd.js +1 -1
  246. package/dist/wcardinal/ui/util/format-node/format-node-rd.js.map +1 -1
  247. package/dist/wcardinal/ui/util/format-node/format-node-rp-large.js +1 -1
  248. package/dist/wcardinal/ui/util/format-node/format-node-rp-large.js.map +1 -1
  249. package/dist/wcardinal/ui/util/format-node/format-node-rp-small.js +1 -1
  250. package/dist/wcardinal/ui/util/format-node/format-node-rp-small.js.map +1 -1
  251. package/dist/wcardinal/ui/util/format-node/format-node-sdt.js +6 -6
  252. package/dist/wcardinal/ui/util/format-node/format-node-sdt.js.map +1 -1
  253. package/dist/wcardinal/ui/util/format-node/format-node-space.js +1 -1
  254. package/dist/wcardinal/ui/util/format-node/format-node-space.js.map +1 -1
  255. package/dist/wcardinal/ui/util/format-node/format-node-z.js +1 -1
  256. package/dist/wcardinal/ui/util/format-node/format-node-z.js.map +1 -1
  257. package/dist/wcardinal/ui/util/to-svg-url.js +1 -1
  258. package/dist/wcardinal/ui/util/to-svg-url.js.map +1 -1
  259. package/dist/wcardinal/ui/util/util-input-number.js +5 -4
  260. package/dist/wcardinal/ui/util/util-input-number.js.map +1 -1
  261. package/dist/wcardinal/ui/util/util-input.js +6 -5
  262. package/dist/wcardinal/ui/util/util-input.js.map +1 -1
  263. package/dist/wcardinal/ui/util/util-name.js +2 -2
  264. package/dist/wcardinal/ui/util/util-name.js.map +1 -1
  265. package/dist/wcardinal/ui/util/util-rgb.js +1 -1
  266. package/dist/wcardinal/ui/util/util-rgb.js.map +1 -1
  267. package/dist/wcardinal/ui/util/util-rgba.js +1 -1
  268. package/dist/wcardinal/ui/util/util-rgba.js.map +1 -1
  269. package/dist/wcardinal/ui/util/util-svg-atlas-builder.js +5 -5
  270. package/dist/wcardinal/ui/util/util-svg-atlas-builder.js.map +1 -1
  271. package/dist/wcardinal-ui-theme-dark.js +56 -41
  272. package/dist/wcardinal-ui-theme-dark.min.js +2 -2
  273. package/dist/wcardinal-ui-theme-dark.min.js.map +1 -1
  274. package/dist/wcardinal-ui-theme-white.js +57 -42
  275. package/dist/wcardinal-ui-theme-white.min.js +2 -2
  276. package/dist/wcardinal-ui-theme-white.min.js.map +1 -1
  277. package/dist/wcardinal-ui.cjs.js +461 -473
  278. package/dist/wcardinal-ui.js +354 -392
  279. package/dist/wcardinal-ui.min.js +2 -2
  280. package/dist/wcardinal-ui.min.js.map +1 -1
  281. package/package.json +14 -14
  282. package/dist/types/wcardinal/ui/d-dialog-dates.d.ts +0 -5
  283. package/dist/types/wcardinal/ui/d-dialog-datetimes.d.ts +0 -5
  284. package/dist/types/wcardinal/ui/d-dialog-times.d.ts +0 -5
  285. package/dist/wcardinal/ui/d-dialog-dates.js +0 -18
  286. package/dist/wcardinal/ui/d-dialog-dates.js.map +0 -1
  287. package/dist/wcardinal/ui/d-dialog-datetimes.js +0 -18
  288. package/dist/wcardinal/ui/d-dialog-datetimes.js.map +0 -1
  289. package/dist/wcardinal/ui/d-dialog-times.js +0 -18
  290. package/dist/wcardinal/ui/d-dialog-times.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"dynamic-sdf-font-atlas.js","sourceRoot":"","sources":["../../../../src/main/typescript/wcardinal/ui/util/dynamic-sdf-font-atlas.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAC5C,OAAO,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;AAC3C,OAAO,EAAE,yBAAyB,EAAE,MAAM,gCAAgC,CAAC;AAC3E,OAAO,EAAE,6BAA6B,EAAE,MAAM,qCAAqC,CAAC;AAEpF,OAAO,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC;AACvE,OAAO,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAC;AAelE;IAaC,6BAAY,UAAkB;QAC7B,IAAI,CAAC,GAAG,GAAG,gBAAc,UAAY,CAAC;QACtC,IAAI,CAAC,UAAU,GAAG,uBAAuB,CAAC,WAAW,EAAE,CAAC,IAAI,EAAE,CAAC;QAC/D,IAAI,CAAC,OAAO,GAAG,QAAQ,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;QAChD,IAAI,CAAC,KAAK,GAAG;YACZ,MAAM,EAAE,mBAAmB,CAAC,YAAY,CAAC,UAAU,CAAC;YACpD,IAAI,EAAE,EAAE;YACR,MAAM,EAAE,KAAK;SACb,CAAC;QACF,IAAI,CAAC,WAAW,GAAG,EAAE,CAAC;QACtB,IAAI,CAAC,OAAO,GAAG,CAAC,CAAC;QACjB,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC;QAChB,IAAI,CAAC,OAAO,GAAG,CAAC,CAAC;QACjB,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;IACtB,CAAC;IAED,sBAAI,mCAAE;aAAN;YACC,OAAO,IAAI,CAAC,GAAG,CAAC;QACjB,CAAC;;;OAAA;IAED,sBAAI,qCAAI;aAAR;YACC,OAAO,IAAI,CAAC,KAAK,CAAC;QACnB,CAAC;aAED,UAAS,IAA6B;YACrC,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;YAChC,IAAI,CAAC,KAAK,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;YAC5B,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QACjC,CAAC;;;OANA;IAQD,sBAAI,sCAAK;aAAT;YACC,OAAO,IAAI,CAAC,MAAM,CAAC;QACpB,CAAC;;;OAAA;IAED,sBAAI,uCAAM;aAAV;YACC,OAAO,IAAI,CAAC,OAAO,CAAC;QACrB,CAAC;;;OAAA;IAED,sBAAI,uCAAM;aAAV;YACC,OAAO,IAAI,CAAC,OAAO,CAAC;QACrB,CAAC;;;OAAA;IAED,sBAAI,0CAAS;aAAb;YACC,OAAO,IAAI,CAAC,UAAU,CAAC;QACxB,CAAC;;;OAAA;IAED,sBAAI,2CAAU;aAAd;YACC,OAAO,IAAI,CAAC,WAAW,CAAC;QACzB,CAAC;;;OAAA;IAED,mCAAK,GAAL;QACC,IAAI,CAAC,OAAO,GAAG,CAAC,CAAC;QACjB,IAAM,UAAU,GAAG,IAAI,CAAC,WAAW,CAAC;QACpC,KAAK,IAAM,EAAE,IAAI,UAAU,EAAE;YAC5B,UAAU,CAAC,EAAE,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC;SACvB;IACF,CAAC;IAED,iCAAG,GAAH;QACC,IAAM,UAAU,GAAG,IAAI,CAAC,WAAW,CAAC;QACpC,KAAK,IAAM,EAAE,IAAI,UAAU,EAAE;YAC5B,IAAM,IAAI,GAAG,UAAU,CAAC,EAAE,CAAC,CAAC;YAC5B,IAAI,IAAI,CAAC,GAAG,IAAI,CAAC,EAAE;gBAClB,IAAI,CAAC,IAAI,IAAI,CAAC,CAAC;gBACf,IAAI,IAAI,CAAC,IAAI,IAAI,CAAC,EAAE;oBACnB,OAAO,UAAU,CAAC,EAAE,CAAC,CAAC;oBACtB,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;iBACrB;aACD;SACD;IACF,CAAC;IAED,sCAAQ,GAAR;QACC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,GAAG,EAAE,6BAA6B,CAAC,OAAO,CAAC,CAAC;QAC9D,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,6BAA6B,CAAC,OAAO,CAAC,CAAC;QAClE,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,KAAK,EAAE,6BAA6B,CAAC,UAAU,CAAC,CAAC;QACrE,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,IAAI,GAAG,gBAAgB,CAAC,MAAM,EAAE,CAAC,GAAG,IAAI,EAAE,EAAE,CAAC,EAAE;YAC9D,IAAM,IAAI,GAAG,gBAAgB,CAAC,CAAC,CAAC,CAAC;YACjC,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,EAAE,6BAA6B,CAAC,UAAU,CAAC,CAAC;SACnE;IACF,CAAC;IAED,qCAAO,GAAP,UAAQ,EAAU,EAAE,SAAiB,EAAE,IAAmC;QACzE,IAAM,UAAU,GAAG,IAAI,CAAC,WAAW,CAAC;QACpC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,EAAE;YAC/B,IAAM,IAAI,GAAG,UAAU,CAAC,EAAE,CAAC,CAAC;YAC5B,IAAI,IAAI,IAAI,IAAI,EAAE;gBACjB,IAAI,IAAI,CAAC,GAAG,IAAI,CAAC,EAAE;oBAClB,IAAI,CAAC,OAAO,IAAI,CAAC,CAAC;iBAClB;gBACD,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC;aACd;iBAAM;gBACN,UAAU,CAAC,EAAE,CAAC,GAAG,IAAI,yBAAyB,CAAC,SAAS,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,CAAC;gBACzE,IAAI,CAAC,OAAO,IAAI,CAAC,CAAC;gBAClB,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;aACrB;SACD;IACF,CAAC;IAES,uCAAS,GAAnB,UAAoB,SAAiB;QACpC,QAAQ,SAAS,EAAE;YAClB,KAAK,IAAI,EAAE,YAAY;gBACtB,OAAO,IAAI,CAAC;YACb,KAAK,IAAI,EAAE,kBAAkB;gBAC5B,OAAO,IAAI,CAAC;YACb,KAAK,IAAI,EAAE,eAAe;gBACzB,OAAO,IAAI,CAAC;YACb,KAAK,IAAI,EAAE,YAAY;gBACtB,OAAO,IAAI,CAAC;YACb,KAAK,QAAQ,EAAE,YAAY;gBAC1B,OAAO,IAAI,CAAC;SACb;QACD,OAAO,KAAK,CAAC;IACd,CAAC;IAED,iCAAG,GAAH,UACC,UAAkB,EAClB,IAA0E;QAA1E,qBAAA,EAAA,OAAsC,6BAA6B,CAAC,MAAM;QAE1E,IAAM,QAAQ,GAAG,qBAAqB,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QACxD,OAAO,QAAQ,CAAC,OAAO,EAAE,EAAE;YAC1B,IAAM,SAAS,GAAG,QAAQ,CAAC,IAAI,EAAE,CAAC;YAClC,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC;SACzC;IACF,CAAC;IAED,iCAAG,GAAH,UAAI,EAAU;QACb,OAAO,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;IAC7B,CAAC;IAED,oCAAM,GAAN;QACC,IAAI,IAAI,CAAC,QAAQ,EAAE;YAClB,IAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC;YAC5B,IAAM,SAAS,GAAG,IAAI,CAAC,UAAU,CAAC;YAClC,IAAI,MAAM,IAAI,IAAI,IAAI,SAAS,IAAI,IAAI,EAAE;gBACxC,IAAM,OAAO,GAAG,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;gBACxC,IAAI,OAAO,IAAI,IAAI,EAAE;oBACpB,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC;oBAEtB,IAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC;oBACxB,IAAM,UAAU,GAAG,IAAI,CAAC,WAAW,CAAC;oBACpC,IAAM,aAAa,GAAG,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC;oBACrC,IAAM,KAAK,GAAG,mBAAmB,CAAC,UAAU,CAC3C,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,GAAG,aAAa,CAClD,CAAC;oBACF,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;oBACpB,IAAM,SAAS,GACd,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,GAAG,KAAK,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC;oBAEpE,OAAO,CAAC,IAAI,GAAG,SAAS,CAAC;oBACzB,OAAO,CAAC,SAAS,GAAG,MAAM,CAAC;oBAC3B,OAAO,CAAC,YAAY,GAAG,QAAQ,CAAC;oBAChC,OAAO,CAAC,SAAS,GAAG,CAAC,CAAC;oBACtB,OAAO,CAAC,OAAO,GAAG,OAAO,CAAC;oBAC1B,OAAO,CAAC,QAAQ,GAAG,OAAO,CAAC;oBAC3B,OAAO,CAAC,UAAU,GAAG,CAAC,CAAC;oBACvB,OAAO,CAAC,SAAS,GAAG,SAAS,CAAC;oBAE9B,IAAM,OAAO,GAAG,CAAC,CAAC;oBAClB,IAAM,OAAO,GAAG,aAAa,IAAI,CAAC,CAAC;oBACnC,IAAI,CAAC,GAAG,CAAC,CAAC;oBACV,IAAI,CAAC,GAAG,CAAC,CAAC;oBACV,KAAK,IAAM,EAAE,IAAI,UAAU,EAAE;wBAC5B,IAAM,IAAI,GAAG,UAAU,CAAC,EAAE,CAAC,CAAC;wBAC5B,IAAM,OAAO,GAAG,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,KAAK,CAAC;wBAC1D,IAAM,cAAc,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,GAAG,OAAO,GAAG,OAAO,CAAC,CAAC;wBAC9D,IAAM,eAAe,GAAG,aAAa,CAAC;wBACtC,IAAI,KAAK,IAAI,CAAC,GAAG,cAAc,EAAE;4BAChC,CAAC,GAAG,CAAC,CAAC;4BACN,CAAC,IAAI,aAAa,CAAC;yBACnB;wBAED,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;wBACX,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;wBACX,IAAI,CAAC,KAAK,GAAG,cAAc,CAAC;wBAC5B,IAAI,CAAC,MAAM,GAAG,eAAe,CAAC;wBAC9B,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;wBACvB,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC;wBAC5B,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC;wBAE5B,CAAC,IAAI,cAAc,CAAC;qBACpB;oBACD,IAAM,MAAM,GAAG,CAAC,IAAI,CAAC,OAAO,GAAG,CAAC,GAAG,aAAa,CAAC,CAAC;oBAElD,sBAAsB;oBACtB,6CAA6C;oBAC7C,8DAA8D;oBAC9D,MAAM,CAAC,KAAK,GAAG,KAAK,CAAC;oBACrB,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC;oBACvB,OAAO,CAAC,IAAI,GAAG,SAAS,CAAC;oBACzB,OAAO,CAAC,SAAS,GAAG,MAAM,CAAC;oBAC3B,OAAO,CAAC,YAAY,GAAG,QAAQ,CAAC;oBAChC,OAAO,CAAC,SAAS,GAAG,CAAC,CAAC;oBACtB,OAAO,CAAC,OAAO,GAAG,OAAO,CAAC;oBAC1B,OAAO,CAAC,QAAQ,GAAG,OAAO,CAAC;oBAC3B,OAAO,CAAC,UAAU,GAAG,CAAC,CAAC;oBACvB,OAAO,CAAC,SAAS,GAAG,SAAS,CAAC;oBAC9B,OAAO,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;oBACvC,KAAK,IAAM,EAAE,IAAI,UAAU,EAAE;wBAC5B,IAAM,IAAI,GAAG,UAAU,CAAC,EAAE,CAAC,CAAC;wBAC5B,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;qBAC/D;oBAED,8BAA8B;oBAC9B,SAAS,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;oBAChC,SAAS,CAAC,MAAM,EAAE,CAAC;oBACnB,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;oBAEvB,OAAO,IAAI,CAAC;iBACZ;aACD;SACD;QACD,OAAO,KAAK,CAAC;IACd,CAAC;IAED,sBAAI,uCAAM;aAAV;YACC,OAAO,IAAI,CAAC,OAAO,CAAC;QACrB,CAAC;;;OAAA;IAED,oCAAM,GAAN;QACC,OAAO;YACN,KAAK,EAAE,IAAI,CAAC,MAAM;YAClB,MAAM,EAAE,IAAI,CAAC,OAAO;YACpB,IAAI,EAAE,IAAI,CAAC,KAAK;YAChB,UAAU,EAAE,IAAI,CAAC,WAAW;SAC5B,CAAC;IACH,CAAC;IAED,sCAAQ,GAAR;QACC,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;IACtC,CAAC;IAED,qCAAO,GAAP;QACC,IAAM,SAAS,GAAG,IAAI,CAAC,UAAU,CAAC;QAClC,IAAI,SAAS,IAAI,IAAI,EAAE;YACtB,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;SACvB;QAED,IAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC;QAC5B,IAAI,MAAM,IAAI,IAAI,EAAE;YACnB,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;SACpB;QAED,IAAM,UAAU,GAAG,IAAI,CAAC,WAAW,CAAC;QACpC,KAAK,IAAM,EAAE,IAAI,UAAU,EAAE;YAC5B,OAAO,UAAU,CAAC,EAAE,CAAC,CAAC;SACtB;IACF,CAAC;IAEM,gCAAY,GAAnB,UAAoB,UAAkB;QACrC,OAAO,UAAU,KAAK,MAAM,CAAC,CAAC,CAAC,mBAAmB,CAAC,iBAAiB,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC;IACrF,CAAC;IAEM,8BAAU,GAAjB,UAAkB,IAAY;QAC7B,IAAI,MAAM,GAAG,EAAE,CAAC;QAChB,OAAO,MAAM,GAAG,IAAI,EAAE;YACrB,MAAM,KAAK,CAAC,CAAC;SACb;QACD,OAAO,MAAM,CAAC;IACf,CAAC;IAEM,qCAAiB,GAAxB;QACC,IAAI,mBAAmB,CAAC,gBAAgB,IAAI,IAAI,EAAE;YACjD,mBAAmB,CAAC,gBAAgB,GAAG,OAAO,CAAC,WAAW,EAAE;iBAC1D,GAAG,CAAM,OAAO,CAAC;iBACjB,cAAc,EAAY,CAAC;SAC7B;QACD,OAAO,mBAAmB,CAAC,gBAAgB,CAAC;IAC7C,CAAC;IAxRgB,oCAAgB,GAAkB,IAAI,CAAC;IAyRzD,0BAAC;CAAA,AA1RD,IA0RC;SA1RY,mBAAmB","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { DThemes } from \"../theme/d-themes\";\nimport { ASCII_CHARACTERS } from \"./ascii\";\nimport { DynamicFontAtlasCharacter } from \"./dynamic-font-atlas-character\";\nimport { DynamicFontAtlasCharacterType } from \"./dynamic-font-atlas-character-type\";\nimport { DynamicFontAtlasCharacters } from \"./dynamic-font-atlas-characters\";\nimport { DynamicSDFFontGenerator } from \"./dynamic-sdf-font-generator\";\nimport { UtilCharacterIterator } from \"./util-character-iterator\";\n\nexport interface DynamicSDFFontAtlasFont {\n\tfamily: string;\n\tsize: number;\n\titalic: boolean;\n}\n\nexport interface DynamicSDFFontAtlasJson {\n\twidth: number;\n\theight: number;\n\tfont: DynamicSDFFontAtlasFont;\n\tcharacters: DynamicFontAtlasCharacters;\n}\n\nexport class DynamicSDFFontAtlas {\n\tprotected static FONT_FAMILY_AUTO: string | null = null;\n\n\tprotected _id: string;\n\tprotected _generator: DynamicSDFFontGenerator | null;\n\tprotected _canvas: HTMLCanvasElement | null;\n\tprotected _font: DynamicSDFFontAtlasFont;\n\tprotected _characters: DynamicFontAtlasCharacters;\n\tprotected _length: number;\n\tprotected _width: number;\n\tprotected _height: number;\n\tprotected _isDirty: boolean;\n\n\tconstructor(fontFamily: string) {\n\t\tthis._id = `font-atlas:${fontFamily}`;\n\t\tthis._generator = DynamicSDFFontGenerator.getInstance().init();\n\t\tthis._canvas = document.createElement(\"canvas\");\n\t\tthis._font = {\n\t\t\tfamily: DynamicSDFFontAtlas.toFontFamily(fontFamily),\n\t\t\tsize: 32,\n\t\t\titalic: false\n\t\t};\n\t\tthis._characters = {};\n\t\tthis._length = 0;\n\t\tthis._width = 1;\n\t\tthis._height = 1;\n\t\tthis._isDirty = true;\n\t}\n\n\tget id(): string {\n\t\treturn this._id;\n\t}\n\n\tget font(): DynamicSDFFontAtlasFont {\n\t\treturn this._font;\n\t}\n\n\tset font(font: DynamicSDFFontAtlasFont) {\n\t\tthis._font.family = font.family;\n\t\tthis._font.size = font.size;\n\t\tthis._font.italic = font.italic;\n\t}\n\n\tget width(): number {\n\t\treturn this._width;\n\t}\n\n\tget height(): number {\n\t\treturn this._height;\n\t}\n\n\tget canvas(): HTMLCanvasElement | null {\n\t\treturn this._canvas;\n\t}\n\n\tget generator(): DynamicSDFFontGenerator | null {\n\t\treturn this._generator;\n\t}\n\n\tget characters(): DynamicFontAtlasCharacters {\n\t\treturn this._characters;\n\t}\n\n\tbegin(): void {\n\t\tthis._length = 0;\n\t\tconst characters = this._characters;\n\t\tfor (const id in characters) {\n\t\t\tcharacters[id].ref = 0;\n\t\t}\n\t}\n\n\tend(): void {\n\t\tconst characters = this._characters;\n\t\tfor (const id in characters) {\n\t\t\tconst data = characters[id];\n\t\t\tif (data.ref <= 0) {\n\t\t\t\tdata.life -= 1;\n\t\t\t\tif (data.life <= 0) {\n\t\t\t\t\tdelete characters[id];\n\t\t\t\t\tthis._isDirty = true;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\taddAscii(): void {\n\t\tthis.addChar(\" \", \" \", DynamicFontAtlasCharacterType.SPACE_R);\n\t\tthis.addChar(\"\\t\", \" \", DynamicFontAtlasCharacterType.SPACE_R);\n\t\tthis.addChar(\"...\", \"...\", DynamicFontAtlasCharacterType.LETTER_RNB);\n\t\tfor (let i = 0, imax = ASCII_CHARACTERS.length; i < imax; ++i) {\n\t\t\tconst char = ASCII_CHARACTERS[i];\n\t\t\tthis.addChar(char, char, DynamicFontAtlasCharacterType.LETTER_RNB);\n\t\t}\n\t}\n\n\taddChar(id: string, character: string, type: DynamicFontAtlasCharacterType): void {\n\t\tconst characters = this._characters;\n\t\tif (!this.isIgnored(character)) {\n\t\t\tconst data = characters[id];\n\t\t\tif (data != null) {\n\t\t\t\tif (data.ref <= 0) {\n\t\t\t\t\tthis._length += 1;\n\t\t\t\t}\n\t\t\t\tdata.ref += 1;\n\t\t\t} else {\n\t\t\t\tcharacters[id] = new DynamicFontAtlasCharacter(character, 0, 1, 1, type);\n\t\t\t\tthis._length += 1;\n\t\t\t\tthis._isDirty = true;\n\t\t\t}\n\t\t}\n\t}\n\n\tprotected isIgnored(character: string): boolean {\n\t\tswitch (character) {\n\t\t\tcase \"\\n\": // Line feed\n\t\t\t\treturn true;\n\t\t\tcase \"\\r\": // Carriage return\n\t\t\t\treturn true;\n\t\t\tcase \"\\v\": // Vertical tab\n\t\t\t\treturn true;\n\t\t\tcase \"\\f\": // Form feed\n\t\t\t\treturn true;\n\t\t\tcase \"\\u0085\": // Next line\n\t\t\t\treturn true;\n\t\t}\n\t\treturn false;\n\t}\n\n\tadd(\n\t\tcharacters: string,\n\t\ttype: DynamicFontAtlasCharacterType = DynamicFontAtlasCharacterType.LETTER\n\t): void {\n\t\tconst iterator = UtilCharacterIterator.from(characters);\n\t\twhile (iterator.hasNext()) {\n\t\t\tconst character = iterator.next();\n\t\t\tthis.addChar(character, character, type);\n\t\t}\n\t}\n\n\tget(id: string): DynamicFontAtlasCharacter | undefined {\n\t\treturn this._characters[id];\n\t}\n\n\tupdate(): boolean {\n\t\tif (this._isDirty) {\n\t\t\tconst canvas = this._canvas;\n\t\t\tconst generator = this._generator;\n\t\t\tif (canvas != null && generator != null) {\n\t\t\t\tconst context = canvas.getContext(\"2d\");\n\t\t\t\tif (context != null) {\n\t\t\t\t\tthis._isDirty = false;\n\n\t\t\t\t\tconst font = this._font;\n\t\t\t\t\tconst characters = this._characters;\n\t\t\t\t\tconst characterSize = font.size + 14;\n\t\t\t\t\tconst width = DynamicSDFFontAtlas.toPowerOf2(\n\t\t\t\t\t\tMath.ceil(Math.sqrt(this._length)) * characterSize\n\t\t\t\t\t);\n\t\t\t\t\tthis._width = width;\n\t\t\t\t\tconst fontStyle =\n\t\t\t\t\t\t(font.italic ? \"italic \" : \"\") + (font.size + \"px \") + font.family;\n\n\t\t\t\t\tcontext.font = fontStyle;\n\t\t\t\t\tcontext.textAlign = \"left\";\n\t\t\t\t\tcontext.textBaseline = \"middle\";\n\t\t\t\t\tcontext.lineWidth = 0;\n\t\t\t\t\tcontext.lineCap = \"round\";\n\t\t\t\t\tcontext.lineJoin = \"miter\";\n\t\t\t\t\tcontext.miterLimit = 0;\n\t\t\t\t\tcontext.fillStyle = \"#FFFFFF\";\n\n\t\t\t\t\tconst offsetX = 7;\n\t\t\t\t\tconst offsetY = characterSize >> 1;\n\t\t\t\t\tlet x = 0;\n\t\t\t\t\tlet y = 0;\n\t\t\t\t\tfor (const id in characters) {\n\t\t\t\t\t\tconst data = characters[id];\n\t\t\t\t\t\tconst advance = context.measureText(data.character).width;\n\t\t\t\t\t\tconst characterWidth = Math.ceil(offsetX + advance + offsetX);\n\t\t\t\t\t\tconst characterHeight = characterSize;\n\t\t\t\t\t\tif (width <= x + characterWidth) {\n\t\t\t\t\t\t\tx = 0;\n\t\t\t\t\t\t\ty += characterSize;\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tdata.x = x;\n\t\t\t\t\t\tdata.y = y;\n\t\t\t\t\t\tdata.width = characterWidth;\n\t\t\t\t\t\tdata.height = characterHeight;\n\t\t\t\t\t\tdata.advance = advance;\n\t\t\t\t\t\tdata.origin.x = x + offsetX;\n\t\t\t\t\t\tdata.origin.y = y + offsetY;\n\n\t\t\t\t\t\tx += characterWidth;\n\t\t\t\t\t}\n\t\t\t\t\tconst height = (this._height = y + characterSize);\n\n\t\t\t\t\t// Make a input canvas\n\t\t\t\t\t// Here, we need to reset the context because\n\t\t\t\t\t// context settings will be lost when we set the width/height.\n\t\t\t\t\tcanvas.width = width;\n\t\t\t\t\tcanvas.height = height;\n\t\t\t\t\tcontext.font = fontStyle;\n\t\t\t\t\tcontext.textAlign = \"left\";\n\t\t\t\t\tcontext.textBaseline = \"middle\";\n\t\t\t\t\tcontext.lineWidth = 0;\n\t\t\t\t\tcontext.lineCap = \"round\";\n\t\t\t\t\tcontext.lineJoin = \"miter\";\n\t\t\t\t\tcontext.miterLimit = 4;\n\t\t\t\t\tcontext.fillStyle = \"#FFFFFF\";\n\t\t\t\t\tcontext.clearRect(0, 0, width, height);\n\t\t\t\t\tfor (const id in characters) {\n\t\t\t\t\t\tconst data = characters[id];\n\t\t\t\t\t\tcontext.fillText(data.character, data.origin.x, data.origin.y);\n\t\t\t\t\t}\n\n\t\t\t\t\t// Convert to SDF font texture\n\t\t\t\t\tgenerator.updateTexture(canvas);\n\t\t\t\t\tgenerator.render();\n\t\t\t\t\tgenerator.read(canvas);\n\n\t\t\t\t\treturn true;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\treturn false;\n\t}\n\n\tget length(): number {\n\t\treturn this._length;\n\t}\n\n\ttoJson(): DynamicSDFFontAtlasJson {\n\t\treturn {\n\t\t\twidth: this._width,\n\t\t\theight: this._height,\n\t\t\tfont: this._font,\n\t\t\tcharacters: this._characters\n\t\t};\n\t}\n\n\ttoString(): string {\n\t\treturn JSON.stringify(this.toJson());\n\t}\n\n\tdestroy(): void {\n\t\tconst generator = this._generator;\n\t\tif (generator != null) {\n\t\t\tthis._generator = null;\n\t\t}\n\n\t\tconst canvas = this._canvas;\n\t\tif (canvas != null) {\n\t\t\tthis._canvas = null;\n\t\t}\n\n\t\tconst characters = this._characters;\n\t\tfor (const id in characters) {\n\t\t\tdelete characters[id];\n\t\t}\n\t}\n\n\tstatic toFontFamily(fontFamily: string): string {\n\t\treturn fontFamily === \"auto\" ? DynamicSDFFontAtlas.getAutoFontFamily() : fontFamily;\n\t}\n\n\tstatic toPowerOf2(size: number): number {\n\t\tlet result = 32;\n\t\twhile (result < size) {\n\t\t\tresult <<= 1;\n\t\t}\n\t\treturn result;\n\t}\n\n\tstatic getAutoFontFamily(): string {\n\t\tif (DynamicSDFFontAtlas.FONT_FAMILY_AUTO == null) {\n\t\t\tDynamicSDFFontAtlas.FONT_FAMILY_AUTO = DThemes.getInstance()\n\t\t\t\t.get<any>(\"DBase\")\n\t\t\t\t.getFontFamilly() as string;\n\t\t}\n\t\treturn DynamicSDFFontAtlas.FONT_FAMILY_AUTO;\n\t}\n}\n"]}
1
+ {"version":3,"file":"dynamic-sdf-font-atlas.js","sourceRoot":"","sources":["../../../../src/main/typescript/wcardinal/ui/util/dynamic-sdf-font-atlas.ts"],"names":[],"mappings":"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","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { DThemes } from \"../theme/d-themes\";\nimport { ASCII_CHARACTERS } from \"./ascii\";\nimport { DynamicFontAtlasCharacter } from \"./dynamic-font-atlas-character\";\nimport { DynamicFontAtlasCharacterType } from \"./dynamic-font-atlas-character-type\";\nimport { DynamicFontAtlasCharacters } from \"./dynamic-font-atlas-characters\";\nimport { DynamicSDFFontGenerator } from \"./dynamic-sdf-font-generator\";\nimport { UtilCharacterIterator } from \"./util-character-iterator\";\n\nexport interface DynamicSDFFontAtlasFont {\n\tfamily: string;\n\tsize: number;\n\titalic: boolean;\n}\n\nexport interface DynamicSDFFontAtlasJson {\n\twidth: number;\n\theight: number;\n\tfont: DynamicSDFFontAtlasFont;\n\tcharacters: DynamicFontAtlasCharacters;\n}\n\nexport class DynamicSDFFontAtlas {\n\tprotected static FONT_FAMILY_AUTO: string | null = null;\n\n\tprotected _id: string;\n\tprotected _generator: DynamicSDFFontGenerator | null;\n\tprotected _canvas: HTMLCanvasElement | null;\n\tprotected _font: DynamicSDFFontAtlasFont;\n\tprotected _characters: DynamicFontAtlasCharacters;\n\tprotected _length: number;\n\tprotected _width: number;\n\tprotected _height: number;\n\tprotected _isDirty: boolean;\n\n\tconstructor(fontFamily: string) {\n\t\tthis._id = `font-atlas:${fontFamily}`;\n\t\tthis._generator = DynamicSDFFontGenerator.getInstance().init();\n\t\tthis._canvas = document.createElement(\"canvas\");\n\t\tthis._font = {\n\t\t\tfamily: DynamicSDFFontAtlas.toFontFamily(fontFamily),\n\t\t\tsize: 32,\n\t\t\titalic: false\n\t\t};\n\t\tthis._characters = {};\n\t\tthis._length = 0;\n\t\tthis._width = 1;\n\t\tthis._height = 1;\n\t\tthis._isDirty = true;\n\t}\n\n\tget id(): string {\n\t\treturn this._id;\n\t}\n\n\tget font(): DynamicSDFFontAtlasFont {\n\t\treturn this._font;\n\t}\n\n\tset font(font: DynamicSDFFontAtlasFont) {\n\t\tthis._font.family = font.family;\n\t\tthis._font.size = font.size;\n\t\tthis._font.italic = font.italic;\n\t}\n\n\tget width(): number {\n\t\treturn this._width;\n\t}\n\n\tget height(): number {\n\t\treturn this._height;\n\t}\n\n\tget canvas(): HTMLCanvasElement | null {\n\t\treturn this._canvas;\n\t}\n\n\tget generator(): DynamicSDFFontGenerator | null {\n\t\treturn this._generator;\n\t}\n\n\tget characters(): DynamicFontAtlasCharacters {\n\t\treturn this._characters;\n\t}\n\n\tbegin(): void {\n\t\tthis._length = 0;\n\t\tconst characters = this._characters;\n\t\tfor (const id in characters) {\n\t\t\tcharacters[id].ref = 0;\n\t\t}\n\t}\n\n\tend(): void {\n\t\tconst characters = this._characters;\n\t\tfor (const id in characters) {\n\t\t\tconst data = characters[id];\n\t\t\tif (data.ref <= 0) {\n\t\t\t\tdata.life -= 1;\n\t\t\t\tif (data.life <= 0) {\n\t\t\t\t\tdelete characters[id];\n\t\t\t\t\tthis._isDirty = true;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\taddAscii(): void {\n\t\tthis.addChar(\" \", \" \", DynamicFontAtlasCharacterType.SPACE_R);\n\t\tthis.addChar(\"\\t\", \" \", DynamicFontAtlasCharacterType.SPACE_R);\n\t\tthis.addChar(\"...\", \"...\", DynamicFontAtlasCharacterType.LETTER_RNB);\n\t\tfor (let i = 0, imax = ASCII_CHARACTERS.length; i < imax; ++i) {\n\t\t\tconst char = ASCII_CHARACTERS[i];\n\t\t\tthis.addChar(char, char, DynamicFontAtlasCharacterType.LETTER_RNB);\n\t\t}\n\t}\n\n\taddChar(id: string, character: string, type: DynamicFontAtlasCharacterType): void {\n\t\tconst characters = this._characters;\n\t\tif (!this.isIgnored(character)) {\n\t\t\tconst data = characters[id];\n\t\t\tif (data != null) {\n\t\t\t\tif (data.ref <= 0) {\n\t\t\t\t\tthis._length += 1;\n\t\t\t\t}\n\t\t\t\tdata.ref += 1;\n\t\t\t} else {\n\t\t\t\tcharacters[id] = new DynamicFontAtlasCharacter(character, 0, 1, 1, type);\n\t\t\t\tthis._length += 1;\n\t\t\t\tthis._isDirty = true;\n\t\t\t}\n\t\t}\n\t}\n\n\tprotected isIgnored(character: string): boolean {\n\t\tswitch (character) {\n\t\t\tcase \"\\n\": // Line feed\n\t\t\t\treturn true;\n\t\t\tcase \"\\r\": // Carriage return\n\t\t\t\treturn true;\n\t\t\tcase \"\\v\": // Vertical tab\n\t\t\t\treturn true;\n\t\t\tcase \"\\f\": // Form feed\n\t\t\t\treturn true;\n\t\t\tcase \"\\u0085\": // Next line\n\t\t\t\treturn true;\n\t\t}\n\t\treturn false;\n\t}\n\n\tadd(\n\t\tcharacters: string,\n\t\ttype: DynamicFontAtlasCharacterType = DynamicFontAtlasCharacterType.LETTER\n\t): void {\n\t\tconst iterator = UtilCharacterIterator.from(characters);\n\t\twhile (iterator.hasNext()) {\n\t\t\tconst character = iterator.next();\n\t\t\tthis.addChar(character, character, type);\n\t\t}\n\t}\n\n\tget(id: string): DynamicFontAtlasCharacter | undefined {\n\t\treturn this._characters[id];\n\t}\n\n\tupdate(): boolean {\n\t\tif (this._isDirty) {\n\t\t\tconst canvas = this._canvas;\n\t\t\tconst generator = this._generator;\n\t\t\tif (canvas != null && generator != null) {\n\t\t\t\tconst context = canvas.getContext(\"2d\");\n\t\t\t\tif (context != null) {\n\t\t\t\t\tthis._isDirty = false;\n\n\t\t\t\t\tconst font = this._font;\n\t\t\t\t\tconst characters = this._characters;\n\t\t\t\t\tconst characterSize = font.size + 14;\n\t\t\t\t\tconst width = DynamicSDFFontAtlas.toPowerOf2(\n\t\t\t\t\t\tMath.ceil(Math.sqrt(this._length)) * characterSize\n\t\t\t\t\t);\n\t\t\t\t\tthis._width = width;\n\t\t\t\t\tconst fontStyle =\n\t\t\t\t\t\t(font.italic ? \"italic \" : \"\") + (font.size + \"px \") + font.family;\n\n\t\t\t\t\tcontext.font = fontStyle;\n\t\t\t\t\tcontext.textAlign = \"left\";\n\t\t\t\t\tcontext.textBaseline = \"middle\";\n\t\t\t\t\tcontext.lineWidth = 0;\n\t\t\t\t\tcontext.lineCap = \"round\";\n\t\t\t\t\tcontext.lineJoin = \"miter\";\n\t\t\t\t\tcontext.miterLimit = 0;\n\t\t\t\t\tcontext.fillStyle = \"#FFFFFF\";\n\n\t\t\t\t\tconst offsetX = 7;\n\t\t\t\t\tconst offsetY = characterSize >> 1;\n\t\t\t\t\tlet x = 0;\n\t\t\t\t\tlet y = 0;\n\t\t\t\t\tfor (const id in characters) {\n\t\t\t\t\t\tconst data = characters[id];\n\t\t\t\t\t\tconst advance = context.measureText(data.character).width;\n\t\t\t\t\t\tconst characterWidth = Math.ceil(offsetX + advance + offsetX);\n\t\t\t\t\t\tconst characterHeight = characterSize;\n\t\t\t\t\t\tif (width <= x + characterWidth) {\n\t\t\t\t\t\t\tx = 0;\n\t\t\t\t\t\t\ty += characterSize;\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tdata.x = x;\n\t\t\t\t\t\tdata.y = y;\n\t\t\t\t\t\tdata.width = characterWidth;\n\t\t\t\t\t\tdata.height = characterHeight;\n\t\t\t\t\t\tdata.advance = advance;\n\t\t\t\t\t\tdata.origin.x = x + offsetX;\n\t\t\t\t\t\tdata.origin.y = y + offsetY;\n\n\t\t\t\t\t\tx += characterWidth;\n\t\t\t\t\t}\n\t\t\t\t\tconst height = (this._height = y + characterSize);\n\n\t\t\t\t\t// Make a input canvas\n\t\t\t\t\t// Here, we need to reset the context because\n\t\t\t\t\t// context settings will be lost when we set the width/height.\n\t\t\t\t\tcanvas.width = width;\n\t\t\t\t\tcanvas.height = height;\n\t\t\t\t\tcontext.font = fontStyle;\n\t\t\t\t\tcontext.textAlign = \"left\";\n\t\t\t\t\tcontext.textBaseline = \"middle\";\n\t\t\t\t\tcontext.lineWidth = 0;\n\t\t\t\t\tcontext.lineCap = \"round\";\n\t\t\t\t\tcontext.lineJoin = \"miter\";\n\t\t\t\t\tcontext.miterLimit = 4;\n\t\t\t\t\tcontext.fillStyle = \"#FFFFFF\";\n\t\t\t\t\tcontext.clearRect(0, 0, width, height);\n\t\t\t\t\tfor (const id in characters) {\n\t\t\t\t\t\tconst data = characters[id];\n\t\t\t\t\t\tcontext.fillText(data.character, data.origin.x, data.origin.y);\n\t\t\t\t\t}\n\n\t\t\t\t\t// Convert to SDF font texture\n\t\t\t\t\tgenerator.updateTexture(canvas);\n\t\t\t\t\tgenerator.render();\n\t\t\t\t\tgenerator.read(canvas);\n\n\t\t\t\t\treturn true;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\treturn false;\n\t}\n\n\tget length(): number {\n\t\treturn this._length;\n\t}\n\n\ttoJson(): DynamicSDFFontAtlasJson {\n\t\treturn {\n\t\t\twidth: this._width,\n\t\t\theight: this._height,\n\t\t\tfont: this._font,\n\t\t\tcharacters: this._characters\n\t\t};\n\t}\n\n\ttoString(): string {\n\t\treturn JSON.stringify(this.toJson());\n\t}\n\n\tdestroy(): void {\n\t\tconst generator = this._generator;\n\t\tif (generator != null) {\n\t\t\tthis._generator = null;\n\t\t}\n\n\t\tconst canvas = this._canvas;\n\t\tif (canvas != null) {\n\t\t\tthis._canvas = null;\n\t\t}\n\n\t\tconst characters = this._characters;\n\t\tfor (const id in characters) {\n\t\t\tdelete characters[id];\n\t\t}\n\t}\n\n\tstatic toFontFamily(fontFamily: string): string {\n\t\treturn fontFamily === \"auto\" ? DynamicSDFFontAtlas.getAutoFontFamily() : fontFamily;\n\t}\n\n\tstatic toPowerOf2(size: number): number {\n\t\tlet result = 32;\n\t\twhile (result < size) {\n\t\t\tresult <<= 1;\n\t\t}\n\t\treturn result;\n\t}\n\n\tstatic getAutoFontFamily(): string {\n\t\tif (DynamicSDFFontAtlas.FONT_FAMILY_AUTO == null) {\n\t\t\tDynamicSDFFontAtlas.FONT_FAMILY_AUTO = DThemes.getInstance()\n\t\t\t\t.get<any>(\"DBase\")\n\t\t\t\t.getFontFamilly() as string;\n\t\t}\n\t\treturn DynamicSDFFontAtlas.FONT_FAMILY_AUTO;\n\t}\n}\n"]}
@@ -70,7 +70,7 @@ var DynamicSDFFontGenerator = /** @class */ (function () {
70
70
  gl.compileShader(shader);
71
71
  if (!gl.getShaderParameter(shader, gl.COMPILE_STATUS)) {
72
72
  console &&
73
- console.error("Failed to compile the shader: " + gl.getShaderInfoLog(shader));
73
+ console.error("Failed to compile the shader: ".concat(gl.getShaderInfoLog(shader)));
74
74
  return null;
75
75
  }
76
76
  }
@@ -90,7 +90,7 @@ var DynamicSDFFontGenerator = /** @class */ (function () {
90
90
  gl.linkProgram(shaderProgram);
91
91
  if (!gl.getProgramParameter(shaderProgram, gl.LINK_STATUS)) {
92
92
  console &&
93
- console.error("Failed to link the program: " + gl.getError());
93
+ console.error("Failed to link the program: ".concat(gl.getError()));
94
94
  gl.deleteShader(vertexShader);
95
95
  gl.deleteShader(fragmentShader);
96
96
  return null;
@@ -1 +1 @@
1
- {"version":3,"file":"dynamic-sdf-font-generator.js","sourceRoot":"","sources":["../../../../src/main/typescript/wcardinal/ui/util/dynamic-sdf-font-generator.ts"],"names":[],"mappings":"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","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nconst VERTEX_SHADER = `\nattribute vec2 aVertexPosition;\nattribute vec2 aTextureCoord;\nvarying mediump vec2 vTextureCoord;\nvoid main(void) {\n\tgl_Position = vec4(aVertexPosition, 0.0, 1.0);\n\tvTextureCoord = aTextureCoord;\n}\n`;\n\nconst FRAGMENT_SHADER = `\nprecision mediump float;\n\nvarying mediump vec2 vTextureCoord;\nuniform sampler2D uSampler;\nuniform vec2 uSize;\n\nfloat calcDistance( float x, float y, float dx, float dy ) {\n\tfloat xd = x + dx;\n\tfloat yd = y + dy;\n\tfloat u = xd / uSize.x;\n\tfloat v = yd / uSize.y;\n\tfloat ul = (xd - 1.0) / uSize.x;\n\tfloat vt = (yd - 1.0) / uSize.y;\n\n\tfloat m = texture2D(uSampler, vec2(u , v )).a;\n\tfloat l = texture2D(uSampler, vec2(ul, v )).a;\n\tfloat t = texture2D(uSampler, vec2(u , vt)).a;\n\n\tfloat xl = mix( xd - 1.0, xd, (0.5 - l) / (m - l) );\n\tfloat yt = mix( yd - 1.0, yd, (0.5 - t) / (m - t) );\n\n\tbool bl = ( min(l, m) < 0.5 && 0.5 <= max(l, m) );\n\tbool bt = ( min(t, m) < 0.5 && 0.5 <= max(t, m) );\n\n\tfloat ll = (bl ? length( vec2( xl - x, yd - y ) ) : 100.0);\n\tfloat lt = (bt ? length( vec2( xd - x, yt - y ) ) : 100.0);\n\n\treturn min( ll, lt );\n}\n\nfloat calcDistancesY( float x, float y, float dx ) {\n\tfloat d = 100.0;\n\tfor( float dy=-6.0; dy<6.5; dy++ ) {\n\t\td = min( d, calcDistance( x, y, dx, dy ) );\n\t}\n\treturn d;\n}\n\nfloat calcDistances( float x, float y ) {\n\tfloat d = 100.0;\n\tfor( float dx=-6.0; dx<6.5; dx++ ) {\n\t\td = min( d, calcDistancesY( x, y, dx ) );\n\t}\n\treturn d;\n}\n\nvoid main(void) {\n\tfloat t = texture2D(uSampler, vTextureCoord).a;\n\tfloat x = vTextureCoord.x * uSize.x;\n\tfloat y = vTextureCoord.y * uSize.y;\n\tfloat d = min( 6.0, calcDistances( x, y ) ) / 12.0;\n\td = clamp( mix( 0.5 - d, 0.5 + d, step( 0.5, t ) ), 0.0, 1.0 );\n\tgl_FragColor = vec4(1.0, 1.0, 1.0, d);\n}\n`;\n\nexport class DynamicSDFFontGenerator {\n\tprotected static _INSTANCE: DynamicSDFFontGenerator | null = null;\n\n\tprotected _canvas: HTMLCanvasElement | null;\n\tprotected _onLostBound: EventListener;\n\tprotected _onRestoreBound: EventListener;\n\tprotected _onUnloadBound: EventListener;\n\tprotected _gl: WebGLRenderingContext | null;\n\tprotected _texture: WebGLTexture | null;\n\tprotected _shaderProgram: WebGLProgram | null;\n\tprotected _vertexPositionAttribute: number;\n\tprotected _textureCoordAttribute: number;\n\tprotected _samplerUniform: WebGLUniformLocation | null;\n\tprotected _sizeUniform: WebGLUniformLocation | null;\n\tprotected _vb: WebGLBuffer | null;\n\tprotected _uvb: WebGLBuffer | null;\n\n\tconstructor() {\n\t\tthis._gl = null;\n\t\tthis._texture = null;\n\t\tthis._shaderProgram = null;\n\t\tthis._vertexPositionAttribute = NaN;\n\t\tthis._textureCoordAttribute = NaN;\n\t\tthis._samplerUniform = NaN;\n\t\tthis._sizeUniform = NaN;\n\t\tthis._vb = null;\n\t\tthis._uvb = null;\n\n\t\tconst canvas = (this._canvas = document.createElement(\"canvas\"));\n\t\tcanvas.width = 64;\n\t\tcanvas.height = 64;\n\t\tthis._onLostBound = (e: Event): void => {\n\t\t\te.preventDefault();\n\t\t};\n\t\tthis._onRestoreBound = (): void => {\n\t\t\tthis.restore();\n\t\t};\n\t\tthis._onUnloadBound = (): void => {\n\t\t\tthis.destroy();\n\t\t};\n\t\tcanvas.addEventListener(\"webglcontextlost\", this._onLostBound, false);\n\t\tcanvas.addEventListener(\"webglcontextrestored\", this._onRestoreBound, false);\n\t\twindow.addEventListener(\"unload\", this._onUnloadBound, false);\n\t}\n\n\tinit(): this {\n\t\tconst canvas = this._canvas;\n\t\tif (canvas != null && (this._gl == null || this._gl.isContextLost())) {\n\t\t\tconst config: WebGLContextAttributes = {\n\t\t\t\talpha: true,\n\t\t\t\tantialias: false,\n\t\t\t\tdepth: false,\n\t\t\t\tstencil: false,\n\t\t\t\tpremultipliedAlpha: false\n\t\t\t};\n\t\t\tconst gl =\n\t\t\t\tcanvas.getContext(\"webgl\", config) ||\n\t\t\t\t(canvas.getContext(\"experimental-webgl\", config) as WebGLRenderingContext | null);\n\t\t\tthis._gl = gl;\n\t\t\tif (gl != null) {\n\t\t\t\tgl.clearColor(1.0, 1.0, 1.0, 0.0);\n\t\t\t\tthis.makeVertexBuffer();\n\t\t\t\tthis.makeUvBuffer();\n\t\t\t\tthis.makeShaders();\n\t\t\t\tthis._texture = null;\n\t\t\t}\n\t\t}\n\t\treturn this;\n\t}\n\n\trestore(): void {\n\t\tthis.init();\n\t}\n\n\tgetCanvas(): HTMLCanvasElement | null {\n\t\treturn this._canvas;\n\t}\n\n\tgetShader(gl: WebGLRenderingContext, code: string, type: boolean): WebGLShader | null {\n\t\tconst shader = type\n\t\t\t? gl.createShader(gl.FRAGMENT_SHADER)\n\t\t\t: gl.createShader(gl.VERTEX_SHADER);\n\t\tif (shader != null) {\n\t\t\tgl.shaderSource(shader, code);\n\t\t\tgl.compileShader(shader);\n\t\t\tif (!gl.getShaderParameter(shader, gl.COMPILE_STATUS)) {\n\t\t\t\tconsole &&\n\t\t\t\t\tconsole.error(`Failed to compile the shader: ${gl.getShaderInfoLog(shader)}`);\n\t\t\t\treturn null;\n\t\t\t}\n\t\t}\n\t\treturn shader;\n\t}\n\n\tmakeShaders(): WebGLShader | null {\n\t\tconst gl = this._gl;\n\t\tif (gl != null && gl.isContextLost() !== true) {\n\t\t\tconst vertexShader = this.getShader(gl, VERTEX_SHADER, false);\n\t\t\tif (vertexShader != null) {\n\t\t\t\tconst fragmentShader = this.getShader(gl, FRAGMENT_SHADER, true);\n\t\t\t\tif (fragmentShader != null) {\n\t\t\t\t\tconst shaderProgram = (this._shaderProgram = gl.createProgram());\n\t\t\t\t\tif (shaderProgram != null) {\n\t\t\t\t\t\tgl.attachShader(shaderProgram, vertexShader);\n\t\t\t\t\t\tgl.attachShader(shaderProgram, fragmentShader);\n\t\t\t\t\t\tgl.linkProgram(shaderProgram);\n\t\t\t\t\t\tif (!gl.getProgramParameter(shaderProgram, gl.LINK_STATUS)) {\n\t\t\t\t\t\t\tconsole &&\n\t\t\t\t\t\t\t\tconsole.error(`Failed to link the program: ${gl.getError()}`);\n\t\t\t\t\t\t\tgl.deleteShader(vertexShader);\n\t\t\t\t\t\t\tgl.deleteShader(fragmentShader);\n\t\t\t\t\t\t\treturn null;\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tgl.deleteShader(vertexShader);\n\t\t\t\t\t\t\tgl.deleteShader(fragmentShader);\n\n\t\t\t\t\t\t\tgl.useProgram(shaderProgram);\n\t\t\t\t\t\t\tthis._vertexPositionAttribute = gl.getAttribLocation(\n\t\t\t\t\t\t\t\tshaderProgram,\n\t\t\t\t\t\t\t\t\"aVertexPosition\"\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\tthis._textureCoordAttribute = gl.getAttribLocation(\n\t\t\t\t\t\t\t\tshaderProgram,\n\t\t\t\t\t\t\t\t\"aTextureCoord\"\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\tthis._samplerUniform = gl.getUniformLocation(shaderProgram, \"uSampler\");\n\t\t\t\t\t\t\tthis._sizeUniform = gl.getUniformLocation(shaderProgram, \"uSize\");\n\t\t\t\t\t\t\tgl.useProgram(null);\n\t\t\t\t\t\t\treturn shaderProgram;\n\t\t\t\t\t\t}\n\t\t\t\t\t} else {\n\t\t\t\t\t\tgl.deleteShader(vertexShader);\n\t\t\t\t\t\tgl.deleteShader(fragmentShader);\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\tgl.deleteShader(vertexShader);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\treturn null;\n\t}\n\n\tdestroyShaders(): void {\n\t\tconst gl = this._gl;\n\t\tif (gl != null && gl.isContextLost() !== true) {\n\t\t\tconst shaderProgram = this._shaderProgram;\n\t\t\tif (shaderProgram != null) {\n\t\t\t\tthis._shaderProgram = null;\n\t\t\t\tgl.useProgram(null);\n\t\t\t\tgl.deleteProgram(shaderProgram);\n\t\t\t}\n\t\t}\n\t}\n\n\tupdateTexture(source: TexImageSource): WebGLTexture | null {\n\t\tconst gl = this._gl;\n\t\tconst canvas = this._canvas;\n\t\tif (gl != null && gl.isContextLost() !== true && canvas != null) {\n\t\t\tconst width = source.width;\n\t\t\tconst height = source.height;\n\t\t\tif (canvas.width !== width || canvas.height !== height) {\n\t\t\t\tcanvas.width = width;\n\t\t\t\tcanvas.height = height;\n\t\t\t\tgl.viewport(0, 0, width, height);\n\t\t\t}\n\n\t\t\tlet texture = this._texture;\n\t\t\tif (texture == null) {\n\t\t\t\ttexture = this._texture = gl.createTexture();\n\t\t\t\tgl.bindTexture(gl.TEXTURE_2D, texture);\n\t\t\t\tgl.texImage2D(gl.TEXTURE_2D, 0, gl.RGBA, gl.RGBA, gl.UNSIGNED_BYTE, source);\n\t\t\t\tgl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_S, gl.CLAMP_TO_EDGE);\n\t\t\t\tgl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_T, gl.CLAMP_TO_EDGE);\n\t\t\t\tgl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_MAG_FILTER, gl.NEAREST);\n\t\t\t\tgl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_MIN_FILTER, gl.NEAREST);\n\t\t\t\tgl.bindTexture(gl.TEXTURE_2D, null);\n\t\t\t} else {\n\t\t\t\tgl.bindTexture(gl.TEXTURE_2D, texture);\n\t\t\t\tgl.texImage2D(gl.TEXTURE_2D, 0, gl.RGBA, gl.RGBA, gl.UNSIGNED_BYTE, source);\n\t\t\t\tgl.bindTexture(gl.TEXTURE_2D, null);\n\t\t\t}\n\t\t\treturn texture;\n\t\t}\n\t\treturn null;\n\t}\n\n\tdestroyTexture(): void {\n\t\tconst gl = this._gl;\n\t\tconst texture = this._texture;\n\t\tif (gl != null && gl.isContextLost() !== true && texture != null) {\n\t\t\tthis._texture = null;\n\t\t\tgl.bindTexture(gl.TEXTURE_2D, null);\n\t\t\tgl.deleteTexture(texture);\n\t\t}\n\t}\n\n\tmakeVertexBuffer(): WebGLBuffer | null {\n\t\tconst gl = this._gl;\n\t\tif (gl != null && gl.isContextLost() !== true) {\n\t\t\tconst vb = (this._vb = gl.createBuffer());\n\t\t\tgl.bindBuffer(gl.ARRAY_BUFFER, vb);\n\n\t\t\tconst vertices = [-1.0, +1.0, +1.0, +1.0, -1.0, -1.0, +1.0, -1.0];\n\n\t\t\tgl.bufferData(gl.ARRAY_BUFFER, new Float32Array(vertices), gl.STATIC_DRAW);\n\t\t\treturn vb;\n\t\t}\n\t\treturn null;\n\t}\n\n\tdestroyVertexBuffer(): void {\n\t\tconst gl = this._gl;\n\t\tconst vb = this._vb;\n\t\tif (gl != null && gl.isContextLost() !== true && vb != null) {\n\t\t\tthis._vb = null;\n\t\t\tgl.bindBuffer(gl.ARRAY_BUFFER, null);\n\t\t\tgl.deleteBuffer(vb);\n\t\t}\n\t}\n\n\tmakeUvBuffer(): WebGLBuffer | null {\n\t\tconst gl = this._gl;\n\t\tif (gl != null && gl.isContextLost() !== true) {\n\t\t\tconst uvb = (this._uvb = gl.createBuffer());\n\t\t\tgl.bindBuffer(gl.ARRAY_BUFFER, uvb);\n\n\t\t\tconst uvs = [0.0, 0.0, 1.0, 0.0, 0.0, 1.0, 1.0, 1.0];\n\n\t\t\tgl.bufferData(gl.ARRAY_BUFFER, new Float32Array(uvs), gl.STATIC_DRAW);\n\t\t\treturn uvb;\n\t\t}\n\t\treturn null;\n\t}\n\n\tdestroyUvBuffer(): void {\n\t\tconst gl = this._gl;\n\t\tconst uvb = this._uvb;\n\t\tif (gl != null && gl.isContextLost() !== true && uvb != null) {\n\t\t\tthis._uvb = null;\n\t\t\tgl.bindBuffer(gl.ARRAY_BUFFER, null);\n\t\t\tgl.deleteBuffer(uvb);\n\t\t}\n\t}\n\n\trender(): void {\n\t\tconst gl = this._gl;\n\t\tconst canvas = this._canvas;\n\t\tconst shaderProgram = this._shaderProgram;\n\t\tconst vb = this._vb;\n\t\tconst uvb = this._uvb;\n\t\tconst texture = this._texture;\n\t\tif (\n\t\t\tgl != null &&\n\t\t\tgl.isContextLost() !== true &&\n\t\t\tcanvas != null &&\n\t\t\tshaderProgram != null &&\n\t\t\tvb != null &&\n\t\t\tuvb != null &&\n\t\t\ttexture != null\n\t\t) {\n\t\t\tgl.clear(gl.COLOR_BUFFER_BIT);\n\n\t\t\tgl.useProgram(shaderProgram);\n\n\t\t\tgl.bindBuffer(gl.ARRAY_BUFFER, vb);\n\t\t\tconst vertexPositionAttribute = this._vertexPositionAttribute;\n\t\t\tgl.enableVertexAttribArray(vertexPositionAttribute);\n\t\t\tgl.vertexAttribPointer(vertexPositionAttribute, 2, gl.FLOAT, false, 0, 0);\n\n\t\t\tgl.bindBuffer(gl.ARRAY_BUFFER, uvb);\n\t\t\tconst textureCoordAttribute = this._textureCoordAttribute;\n\t\t\tgl.enableVertexAttribArray(textureCoordAttribute);\n\t\t\tgl.vertexAttribPointer(textureCoordAttribute, 2, gl.FLOAT, false, 0, 0);\n\n\t\t\tgl.activeTexture(gl.TEXTURE0);\n\t\t\tgl.bindTexture(gl.TEXTURE_2D, texture);\n\t\t\tgl.uniform1i(this._samplerUniform, 0);\n\t\t\tgl.uniform2f(this._sizeUniform, canvas.width, canvas.height);\n\n\t\t\tgl.drawArrays(gl.TRIANGLE_STRIP, 0, 4);\n\n\t\t\tgl.bindTexture(gl.TEXTURE_2D, null);\n\t\t\tgl.bindBuffer(gl.ARRAY_BUFFER, null);\n\t\t\tgl.useProgram(null);\n\t\t}\n\t}\n\n\tread(copyCanvas: HTMLCanvasElement): void {\n\t\tconst gl = this._gl;\n\t\tconst canvas = this._canvas;\n\t\tif (gl != null && gl.isContextLost() !== true && canvas != null) {\n\t\t\tconst width = canvas.width;\n\t\t\tconst height = canvas.height;\n\t\t\tcopyCanvas.width = width;\n\t\t\tcopyCanvas.height = height;\n\t\t\tconst copyContext = copyCanvas.getContext(\"2d\");\n\t\t\tif (copyContext != null) {\n\t\t\t\tcopyContext.drawImage(canvas, 0, 0);\n\t\t\t}\n\t\t}\n\t}\n\n\tdestroy(): void {\n\t\tthis.destroyVertexBuffer();\n\t\tthis.destroyUvBuffer();\n\t\tthis.destroyShaders();\n\n\t\tconst canvas = this._canvas;\n\t\tif (canvas != null) {\n\t\t\tthis._canvas = null;\n\t\t\tcanvas.removeEventListener(\"webglcontextlost\", this._onLostBound, false);\n\t\t\tcanvas.removeEventListener(\"webglcontextrestored\", this._onRestoreBound, false);\n\t\t\twindow.removeEventListener(\"unload\", this._onUnloadBound, false);\n\t\t}\n\n\t\tconst gl = this._gl;\n\t\tif (gl != null) {\n\t\t\tthis._gl = null;\n\t\t\tconst WebGLLoseContext = gl.getExtension(\"WEBGL_lose_context\");\n\t\t\tif (WebGLLoseContext != null) {\n\t\t\t\tWebGLLoseContext.loseContext();\n\t\t\t}\n\t\t}\n\t}\n\n\tstatic getInstance(): DynamicSDFFontGenerator {\n\t\tif (DynamicSDFFontGenerator._INSTANCE == null) {\n\t\t\tDynamicSDFFontGenerator._INSTANCE = new DynamicSDFFontGenerator();\n\t\t}\n\t\treturn DynamicSDFFontGenerator._INSTANCE;\n\t}\n}\n"]}
1
+ {"version":3,"file":"dynamic-sdf-font-generator.js","sourceRoot":"","sources":["../../../../src/main/typescript/wcardinal/ui/util/dynamic-sdf-font-generator.ts"],"names":[],"mappings":"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","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nconst VERTEX_SHADER = `\nattribute vec2 aVertexPosition;\nattribute vec2 aTextureCoord;\nvarying mediump vec2 vTextureCoord;\nvoid main(void) {\n\tgl_Position = vec4(aVertexPosition, 0.0, 1.0);\n\tvTextureCoord = aTextureCoord;\n}\n`;\n\nconst FRAGMENT_SHADER = `\nprecision mediump float;\n\nvarying mediump vec2 vTextureCoord;\nuniform sampler2D uSampler;\nuniform vec2 uSize;\n\nfloat calcDistance( float x, float y, float dx, float dy ) {\n\tfloat xd = x + dx;\n\tfloat yd = y + dy;\n\tfloat u = xd / uSize.x;\n\tfloat v = yd / uSize.y;\n\tfloat ul = (xd - 1.0) / uSize.x;\n\tfloat vt = (yd - 1.0) / uSize.y;\n\n\tfloat m = texture2D(uSampler, vec2(u , v )).a;\n\tfloat l = texture2D(uSampler, vec2(ul, v )).a;\n\tfloat t = texture2D(uSampler, vec2(u , vt)).a;\n\n\tfloat xl = mix( xd - 1.0, xd, (0.5 - l) / (m - l) );\n\tfloat yt = mix( yd - 1.0, yd, (0.5 - t) / (m - t) );\n\n\tbool bl = ( min(l, m) < 0.5 && 0.5 <= max(l, m) );\n\tbool bt = ( min(t, m) < 0.5 && 0.5 <= max(t, m) );\n\n\tfloat ll = (bl ? length( vec2( xl - x, yd - y ) ) : 100.0);\n\tfloat lt = (bt ? length( vec2( xd - x, yt - y ) ) : 100.0);\n\n\treturn min( ll, lt );\n}\n\nfloat calcDistancesY( float x, float y, float dx ) {\n\tfloat d = 100.0;\n\tfor( float dy=-6.0; dy<6.5; dy++ ) {\n\t\td = min( d, calcDistance( x, y, dx, dy ) );\n\t}\n\treturn d;\n}\n\nfloat calcDistances( float x, float y ) {\n\tfloat d = 100.0;\n\tfor( float dx=-6.0; dx<6.5; dx++ ) {\n\t\td = min( d, calcDistancesY( x, y, dx ) );\n\t}\n\treturn d;\n}\n\nvoid main(void) {\n\tfloat t = texture2D(uSampler, vTextureCoord).a;\n\tfloat x = vTextureCoord.x * uSize.x;\n\tfloat y = vTextureCoord.y * uSize.y;\n\tfloat d = min( 6.0, calcDistances( x, y ) ) / 12.0;\n\td = clamp( mix( 0.5 - d, 0.5 + d, step( 0.5, t ) ), 0.0, 1.0 );\n\tgl_FragColor = vec4(1.0, 1.0, 1.0, d);\n}\n`;\n\nexport class DynamicSDFFontGenerator {\n\tprotected static _INSTANCE: DynamicSDFFontGenerator | null = null;\n\n\tprotected _canvas: HTMLCanvasElement | null;\n\tprotected _onLostBound: EventListener;\n\tprotected _onRestoreBound: EventListener;\n\tprotected _onUnloadBound: EventListener;\n\tprotected _gl: WebGLRenderingContext | null;\n\tprotected _texture: WebGLTexture | null;\n\tprotected _shaderProgram: WebGLProgram | null;\n\tprotected _vertexPositionAttribute: number;\n\tprotected _textureCoordAttribute: number;\n\tprotected _samplerUniform: WebGLUniformLocation | null;\n\tprotected _sizeUniform: WebGLUniformLocation | null;\n\tprotected _vb: WebGLBuffer | null;\n\tprotected _uvb: WebGLBuffer | null;\n\n\tconstructor() {\n\t\tthis._gl = null;\n\t\tthis._texture = null;\n\t\tthis._shaderProgram = null;\n\t\tthis._vertexPositionAttribute = NaN;\n\t\tthis._textureCoordAttribute = NaN;\n\t\tthis._samplerUniform = NaN;\n\t\tthis._sizeUniform = NaN;\n\t\tthis._vb = null;\n\t\tthis._uvb = null;\n\n\t\tconst canvas = (this._canvas = document.createElement(\"canvas\"));\n\t\tcanvas.width = 64;\n\t\tcanvas.height = 64;\n\t\tthis._onLostBound = (e: Event): void => {\n\t\t\te.preventDefault();\n\t\t};\n\t\tthis._onRestoreBound = (): void => {\n\t\t\tthis.restore();\n\t\t};\n\t\tthis._onUnloadBound = (): void => {\n\t\t\tthis.destroy();\n\t\t};\n\t\tcanvas.addEventListener(\"webglcontextlost\", this._onLostBound, false);\n\t\tcanvas.addEventListener(\"webglcontextrestored\", this._onRestoreBound, false);\n\t\twindow.addEventListener(\"unload\", this._onUnloadBound, false);\n\t}\n\n\tinit(): this {\n\t\tconst canvas = this._canvas;\n\t\tif (canvas != null && (this._gl == null || this._gl.isContextLost())) {\n\t\t\tconst config: WebGLContextAttributes = {\n\t\t\t\talpha: true,\n\t\t\t\tantialias: false,\n\t\t\t\tdepth: false,\n\t\t\t\tstencil: false,\n\t\t\t\tpremultipliedAlpha: false\n\t\t\t};\n\t\t\tconst gl =\n\t\t\t\tcanvas.getContext(\"webgl\", config) ||\n\t\t\t\t(canvas.getContext(\"experimental-webgl\", config) as WebGLRenderingContext | null);\n\t\t\tthis._gl = gl;\n\t\t\tif (gl != null) {\n\t\t\t\tgl.clearColor(1.0, 1.0, 1.0, 0.0);\n\t\t\t\tthis.makeVertexBuffer();\n\t\t\t\tthis.makeUvBuffer();\n\t\t\t\tthis.makeShaders();\n\t\t\t\tthis._texture = null;\n\t\t\t}\n\t\t}\n\t\treturn this;\n\t}\n\n\trestore(): void {\n\t\tthis.init();\n\t}\n\n\tgetCanvas(): HTMLCanvasElement | null {\n\t\treturn this._canvas;\n\t}\n\n\tgetShader(gl: WebGLRenderingContext, code: string, type: boolean): WebGLShader | null {\n\t\tconst shader = type\n\t\t\t? gl.createShader(gl.FRAGMENT_SHADER)\n\t\t\t: gl.createShader(gl.VERTEX_SHADER);\n\t\tif (shader != null) {\n\t\t\tgl.shaderSource(shader, code);\n\t\t\tgl.compileShader(shader);\n\t\t\tif (!gl.getShaderParameter(shader, gl.COMPILE_STATUS)) {\n\t\t\t\tconsole &&\n\t\t\t\t\tconsole.error(`Failed to compile the shader: ${gl.getShaderInfoLog(shader)}`);\n\t\t\t\treturn null;\n\t\t\t}\n\t\t}\n\t\treturn shader;\n\t}\n\n\tmakeShaders(): WebGLShader | null {\n\t\tconst gl = this._gl;\n\t\tif (gl != null && gl.isContextLost() !== true) {\n\t\t\tconst vertexShader = this.getShader(gl, VERTEX_SHADER, false);\n\t\t\tif (vertexShader != null) {\n\t\t\t\tconst fragmentShader = this.getShader(gl, FRAGMENT_SHADER, true);\n\t\t\t\tif (fragmentShader != null) {\n\t\t\t\t\tconst shaderProgram = (this._shaderProgram = gl.createProgram());\n\t\t\t\t\tif (shaderProgram != null) {\n\t\t\t\t\t\tgl.attachShader(shaderProgram, vertexShader);\n\t\t\t\t\t\tgl.attachShader(shaderProgram, fragmentShader);\n\t\t\t\t\t\tgl.linkProgram(shaderProgram);\n\t\t\t\t\t\tif (!gl.getProgramParameter(shaderProgram, gl.LINK_STATUS)) {\n\t\t\t\t\t\t\tconsole &&\n\t\t\t\t\t\t\t\tconsole.error(`Failed to link the program: ${gl.getError()}`);\n\t\t\t\t\t\t\tgl.deleteShader(vertexShader);\n\t\t\t\t\t\t\tgl.deleteShader(fragmentShader);\n\t\t\t\t\t\t\treturn null;\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tgl.deleteShader(vertexShader);\n\t\t\t\t\t\t\tgl.deleteShader(fragmentShader);\n\n\t\t\t\t\t\t\tgl.useProgram(shaderProgram);\n\t\t\t\t\t\t\tthis._vertexPositionAttribute = gl.getAttribLocation(\n\t\t\t\t\t\t\t\tshaderProgram,\n\t\t\t\t\t\t\t\t\"aVertexPosition\"\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\tthis._textureCoordAttribute = gl.getAttribLocation(\n\t\t\t\t\t\t\t\tshaderProgram,\n\t\t\t\t\t\t\t\t\"aTextureCoord\"\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\tthis._samplerUniform = gl.getUniformLocation(shaderProgram, \"uSampler\");\n\t\t\t\t\t\t\tthis._sizeUniform = gl.getUniformLocation(shaderProgram, \"uSize\");\n\t\t\t\t\t\t\tgl.useProgram(null);\n\t\t\t\t\t\t\treturn shaderProgram;\n\t\t\t\t\t\t}\n\t\t\t\t\t} else {\n\t\t\t\t\t\tgl.deleteShader(vertexShader);\n\t\t\t\t\t\tgl.deleteShader(fragmentShader);\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\tgl.deleteShader(vertexShader);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\treturn null;\n\t}\n\n\tdestroyShaders(): void {\n\t\tconst gl = this._gl;\n\t\tif (gl != null && gl.isContextLost() !== true) {\n\t\t\tconst shaderProgram = this._shaderProgram;\n\t\t\tif (shaderProgram != null) {\n\t\t\t\tthis._shaderProgram = null;\n\t\t\t\tgl.useProgram(null);\n\t\t\t\tgl.deleteProgram(shaderProgram);\n\t\t\t}\n\t\t}\n\t}\n\n\tupdateTexture(source: TexImageSource): WebGLTexture | null {\n\t\tconst gl = this._gl;\n\t\tconst canvas = this._canvas;\n\t\tif (gl != null && gl.isContextLost() !== true && canvas != null) {\n\t\t\tconst width = source.width;\n\t\t\tconst height = source.height;\n\t\t\tif (canvas.width !== width || canvas.height !== height) {\n\t\t\t\tcanvas.width = width;\n\t\t\t\tcanvas.height = height;\n\t\t\t\tgl.viewport(0, 0, width, height);\n\t\t\t}\n\n\t\t\tlet texture = this._texture;\n\t\t\tif (texture == null) {\n\t\t\t\ttexture = this._texture = gl.createTexture();\n\t\t\t\tgl.bindTexture(gl.TEXTURE_2D, texture);\n\t\t\t\tgl.texImage2D(gl.TEXTURE_2D, 0, gl.RGBA, gl.RGBA, gl.UNSIGNED_BYTE, source);\n\t\t\t\tgl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_S, gl.CLAMP_TO_EDGE);\n\t\t\t\tgl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_T, gl.CLAMP_TO_EDGE);\n\t\t\t\tgl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_MAG_FILTER, gl.NEAREST);\n\t\t\t\tgl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_MIN_FILTER, gl.NEAREST);\n\t\t\t\tgl.bindTexture(gl.TEXTURE_2D, null);\n\t\t\t} else {\n\t\t\t\tgl.bindTexture(gl.TEXTURE_2D, texture);\n\t\t\t\tgl.texImage2D(gl.TEXTURE_2D, 0, gl.RGBA, gl.RGBA, gl.UNSIGNED_BYTE, source);\n\t\t\t\tgl.bindTexture(gl.TEXTURE_2D, null);\n\t\t\t}\n\t\t\treturn texture;\n\t\t}\n\t\treturn null;\n\t}\n\n\tdestroyTexture(): void {\n\t\tconst gl = this._gl;\n\t\tconst texture = this._texture;\n\t\tif (gl != null && gl.isContextLost() !== true && texture != null) {\n\t\t\tthis._texture = null;\n\t\t\tgl.bindTexture(gl.TEXTURE_2D, null);\n\t\t\tgl.deleteTexture(texture);\n\t\t}\n\t}\n\n\tmakeVertexBuffer(): WebGLBuffer | null {\n\t\tconst gl = this._gl;\n\t\tif (gl != null && gl.isContextLost() !== true) {\n\t\t\tconst vb = (this._vb = gl.createBuffer());\n\t\t\tgl.bindBuffer(gl.ARRAY_BUFFER, vb);\n\n\t\t\tconst vertices = [-1.0, +1.0, +1.0, +1.0, -1.0, -1.0, +1.0, -1.0];\n\n\t\t\tgl.bufferData(gl.ARRAY_BUFFER, new Float32Array(vertices), gl.STATIC_DRAW);\n\t\t\treturn vb;\n\t\t}\n\t\treturn null;\n\t}\n\n\tdestroyVertexBuffer(): void {\n\t\tconst gl = this._gl;\n\t\tconst vb = this._vb;\n\t\tif (gl != null && gl.isContextLost() !== true && vb != null) {\n\t\t\tthis._vb = null;\n\t\t\tgl.bindBuffer(gl.ARRAY_BUFFER, null);\n\t\t\tgl.deleteBuffer(vb);\n\t\t}\n\t}\n\n\tmakeUvBuffer(): WebGLBuffer | null {\n\t\tconst gl = this._gl;\n\t\tif (gl != null && gl.isContextLost() !== true) {\n\t\t\tconst uvb = (this._uvb = gl.createBuffer());\n\t\t\tgl.bindBuffer(gl.ARRAY_BUFFER, uvb);\n\n\t\t\tconst uvs = [0.0, 0.0, 1.0, 0.0, 0.0, 1.0, 1.0, 1.0];\n\n\t\t\tgl.bufferData(gl.ARRAY_BUFFER, new Float32Array(uvs), gl.STATIC_DRAW);\n\t\t\treturn uvb;\n\t\t}\n\t\treturn null;\n\t}\n\n\tdestroyUvBuffer(): void {\n\t\tconst gl = this._gl;\n\t\tconst uvb = this._uvb;\n\t\tif (gl != null && gl.isContextLost() !== true && uvb != null) {\n\t\t\tthis._uvb = null;\n\t\t\tgl.bindBuffer(gl.ARRAY_BUFFER, null);\n\t\t\tgl.deleteBuffer(uvb);\n\t\t}\n\t}\n\n\trender(): void {\n\t\tconst gl = this._gl;\n\t\tconst canvas = this._canvas;\n\t\tconst shaderProgram = this._shaderProgram;\n\t\tconst vb = this._vb;\n\t\tconst uvb = this._uvb;\n\t\tconst texture = this._texture;\n\t\tif (\n\t\t\tgl != null &&\n\t\t\tgl.isContextLost() !== true &&\n\t\t\tcanvas != null &&\n\t\t\tshaderProgram != null &&\n\t\t\tvb != null &&\n\t\t\tuvb != null &&\n\t\t\ttexture != null\n\t\t) {\n\t\t\tgl.clear(gl.COLOR_BUFFER_BIT);\n\n\t\t\tgl.useProgram(shaderProgram);\n\n\t\t\tgl.bindBuffer(gl.ARRAY_BUFFER, vb);\n\t\t\tconst vertexPositionAttribute = this._vertexPositionAttribute;\n\t\t\tgl.enableVertexAttribArray(vertexPositionAttribute);\n\t\t\tgl.vertexAttribPointer(vertexPositionAttribute, 2, gl.FLOAT, false, 0, 0);\n\n\t\t\tgl.bindBuffer(gl.ARRAY_BUFFER, uvb);\n\t\t\tconst textureCoordAttribute = this._textureCoordAttribute;\n\t\t\tgl.enableVertexAttribArray(textureCoordAttribute);\n\t\t\tgl.vertexAttribPointer(textureCoordAttribute, 2, gl.FLOAT, false, 0, 0);\n\n\t\t\tgl.activeTexture(gl.TEXTURE0);\n\t\t\tgl.bindTexture(gl.TEXTURE_2D, texture);\n\t\t\tgl.uniform1i(this._samplerUniform, 0);\n\t\t\tgl.uniform2f(this._sizeUniform, canvas.width, canvas.height);\n\n\t\t\tgl.drawArrays(gl.TRIANGLE_STRIP, 0, 4);\n\n\t\t\tgl.bindTexture(gl.TEXTURE_2D, null);\n\t\t\tgl.bindBuffer(gl.ARRAY_BUFFER, null);\n\t\t\tgl.useProgram(null);\n\t\t}\n\t}\n\n\tread(copyCanvas: HTMLCanvasElement): void {\n\t\tconst gl = this._gl;\n\t\tconst canvas = this._canvas;\n\t\tif (gl != null && gl.isContextLost() !== true && canvas != null) {\n\t\t\tconst width = canvas.width;\n\t\t\tconst height = canvas.height;\n\t\t\tcopyCanvas.width = width;\n\t\t\tcopyCanvas.height = height;\n\t\t\tconst copyContext = copyCanvas.getContext(\"2d\");\n\t\t\tif (copyContext != null) {\n\t\t\t\tcopyContext.drawImage(canvas, 0, 0);\n\t\t\t}\n\t\t}\n\t}\n\n\tdestroy(): void {\n\t\tthis.destroyVertexBuffer();\n\t\tthis.destroyUvBuffer();\n\t\tthis.destroyShaders();\n\n\t\tconst canvas = this._canvas;\n\t\tif (canvas != null) {\n\t\t\tthis._canvas = null;\n\t\t\tcanvas.removeEventListener(\"webglcontextlost\", this._onLostBound, false);\n\t\t\tcanvas.removeEventListener(\"webglcontextrestored\", this._onRestoreBound, false);\n\t\t\twindow.removeEventListener(\"unload\", this._onUnloadBound, false);\n\t\t}\n\n\t\tconst gl = this._gl;\n\t\tif (gl != null) {\n\t\t\tthis._gl = null;\n\t\t\tconst WebGLLoseContext = gl.getExtension(\"WEBGL_lose_context\");\n\t\t\tif (WebGLLoseContext != null) {\n\t\t\t\tWebGLLoseContext.loseContext();\n\t\t\t}\n\t\t}\n\t}\n\n\tstatic getInstance(): DynamicSDFFontGenerator {\n\t\tif (DynamicSDFFontGenerator._INSTANCE == null) {\n\t\t\tDynamicSDFFontGenerator._INSTANCE = new DynamicSDFFontGenerator();\n\t\t}\n\t\treturn DynamicSDFFontGenerator._INSTANCE;\n\t}\n}\n"]}
@@ -6,7 +6,7 @@ var FormatNoded = /** @class */ (function () {
6
6
  function FormatNoded() {
7
7
  }
8
8
  FormatNoded.prototype.format = function (target, step, date) {
9
- return "" + (target | 0);
9
+ return "".concat(target | 0);
10
10
  };
11
11
  return FormatNoded;
12
12
  }());
@@ -1 +1 @@
1
- {"version":3,"file":"format-node-d-small.js","sourceRoot":"","sources":["../../../../../src/main/typescript/wcardinal/ui/util/format-node/format-node-d-small.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH;IAAA;IAIA,CAAC;IAHA,4BAAM,GAAN,UAAO,MAAc,EAAE,IAAY,EAAE,IAAU;QAC9C,OAAO,MAAG,MAAM,GAAG,CAAC,CAAE,CAAC;IACxB,CAAC;IACF,kBAAC;AAAD,CAAC,AAJD,IAIC","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { FormatNode } from \"./format-node\";\n\nexport class FormatNoded implements FormatNode {\n\tformat(target: number, step: number, date: Date): string {\n\t\treturn `${target | 0}`;\n\t}\n}\n"]}
1
+ {"version":3,"file":"format-node-d-small.js","sourceRoot":"","sources":["../../../../../src/main/typescript/wcardinal/ui/util/format-node/format-node-d-small.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH;IAAA;IAIA,CAAC;IAHA,4BAAM,GAAN,UAAO,MAAc,EAAE,IAAY,EAAE,IAAU;QAC9C,OAAO,UAAG,MAAM,GAAG,CAAC,CAAE,CAAC;IACxB,CAAC;IACF,kBAAC;AAAD,CAAC,AAJD,IAIC","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { FormatNode } from \"./format-node\";\n\nexport class FormatNoded implements FormatNode {\n\tformat(target: number, step: number, date: Date): string {\n\t\treturn `${target | 0}`;\n\t}\n}\n"]}
@@ -71,7 +71,7 @@ var FormatNodefsi = /** @class */ (function (_super) {
71
71
  };
72
72
  FormatNodefsi.prototype.format_ = function (target, unitInverse, postfix) {
73
73
  var value = target * unitInverse;
74
- return "" + value.toFixed(this.precision) + postfix;
74
+ return "".concat(value.toFixed(this.precision)).concat(postfix);
75
75
  };
76
76
  return FormatNodefsi;
77
77
  }(FormatNodePrecision));
@@ -1 +1 @@
1
- {"version":3,"file":"format-node-fsi.js","sourceRoot":"","sources":["../../../../../src/main/typescript/wcardinal/ui/util/format-node/format-node-fsi.ts"],"names":[],"mappings":"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","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { FormatNodePrecision } from \"./format-node-precision\";\n\nexport class FormatNodefsi extends FormatNodePrecision {\n\tformat(target: number, step: number, date: Date): string {\n\t\tconst abs = this.toAbs(target, step, date);\n\t\tif (abs < 1e-24) {\n\t\t\treturn this.format_(target, 1, \"\");\n\t\t} else if (abs < 1e-21) {\n\t\t\treturn this.format_(target, 1e24, \"y\");\n\t\t} else if (abs < 1e-18) {\n\t\t\treturn this.format_(target, 1e21, \"z\");\n\t\t} else if (abs < 1e-15) {\n\t\t\treturn this.format_(target, 1e18, \"a\");\n\t\t} else if (abs < 1e-12) {\n\t\t\treturn this.format_(target, 1e15, \"f\");\n\t\t} else if (abs < 1e-9) {\n\t\t\treturn this.format_(target, 1e12, \"p\");\n\t\t} else if (abs < 1e-6) {\n\t\t\treturn this.format_(target, 1e9, \"n\");\n\t\t} else if (abs < 1e-3) {\n\t\t\treturn this.format_(target, 1e6, \"μ\");\n\t\t} else if (abs < 1) {\n\t\t\treturn this.format_(target, 1e3, \"m\");\n\t\t} else if (abs < 1e3) {\n\t\t\treturn this.format_(target, 1, \"\");\n\t\t} else if (abs < 1e6) {\n\t\t\treturn this.format_(target, 1e-3, \"k\");\n\t\t} else if (abs < 1e9) {\n\t\t\treturn this.format_(target, 1e-6, \"M\");\n\t\t} else if (abs < 1e12) {\n\t\t\treturn this.format_(target, 1e-9, \"G\");\n\t\t} else if (abs < 1e15) {\n\t\t\treturn this.format_(target, 1e-12, \"T\");\n\t\t} else if (abs < 1e18) {\n\t\t\treturn this.format_(target, 1e-15, \"P\");\n\t\t} else if (abs < 1e21) {\n\t\t\treturn this.format_(target, 1e-18, \"E\");\n\t\t} else if (abs < 1e24) {\n\t\t\treturn this.format_(target, 1e-21, \"Z\");\n\t\t} else {\n\t\t\treturn this.format_(target, 1e-24, \"Y\");\n\t\t}\n\t}\n\n\tprotected toAbs(target: number, step: number, date: Date): number {\n\t\treturn Math.abs(target);\n\t}\n\n\tprotected format_(target: number, unitInverse: number, postfix: string): string {\n\t\tconst value = target * unitInverse;\n\t\treturn `${value.toFixed(this.precision)}${postfix}`;\n\t}\n}\n"]}
1
+ {"version":3,"file":"format-node-fsi.js","sourceRoot":"","sources":["../../../../../src/main/typescript/wcardinal/ui/util/format-node/format-node-fsi.ts"],"names":[],"mappings":"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","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { FormatNodePrecision } from \"./format-node-precision\";\n\nexport class FormatNodefsi extends FormatNodePrecision {\n\tformat(target: number, step: number, date: Date): string {\n\t\tconst abs = this.toAbs(target, step, date);\n\t\tif (abs < 1e-24) {\n\t\t\treturn this.format_(target, 1, \"\");\n\t\t} else if (abs < 1e-21) {\n\t\t\treturn this.format_(target, 1e24, \"y\");\n\t\t} else if (abs < 1e-18) {\n\t\t\treturn this.format_(target, 1e21, \"z\");\n\t\t} else if (abs < 1e-15) {\n\t\t\treturn this.format_(target, 1e18, \"a\");\n\t\t} else if (abs < 1e-12) {\n\t\t\treturn this.format_(target, 1e15, \"f\");\n\t\t} else if (abs < 1e-9) {\n\t\t\treturn this.format_(target, 1e12, \"p\");\n\t\t} else if (abs < 1e-6) {\n\t\t\treturn this.format_(target, 1e9, \"n\");\n\t\t} else if (abs < 1e-3) {\n\t\t\treturn this.format_(target, 1e6, \"μ\");\n\t\t} else if (abs < 1) {\n\t\t\treturn this.format_(target, 1e3, \"m\");\n\t\t} else if (abs < 1e3) {\n\t\t\treturn this.format_(target, 1, \"\");\n\t\t} else if (abs < 1e6) {\n\t\t\treturn this.format_(target, 1e-3, \"k\");\n\t\t} else if (abs < 1e9) {\n\t\t\treturn this.format_(target, 1e-6, \"M\");\n\t\t} else if (abs < 1e12) {\n\t\t\treturn this.format_(target, 1e-9, \"G\");\n\t\t} else if (abs < 1e15) {\n\t\t\treturn this.format_(target, 1e-12, \"T\");\n\t\t} else if (abs < 1e18) {\n\t\t\treturn this.format_(target, 1e-15, \"P\");\n\t\t} else if (abs < 1e21) {\n\t\t\treturn this.format_(target, 1e-18, \"E\");\n\t\t} else if (abs < 1e24) {\n\t\t\treturn this.format_(target, 1e-21, \"Z\");\n\t\t} else {\n\t\t\treturn this.format_(target, 1e-24, \"Y\");\n\t\t}\n\t}\n\n\tprotected toAbs(target: number, step: number, date: Date): number {\n\t\treturn Math.abs(target);\n\t}\n\n\tprotected format_(target: number, unitInverse: number, postfix: string): string {\n\t\tconst value = target * unitInverse;\n\t\treturn `${value.toFixed(this.precision)}${postfix}`;\n\t}\n}\n"]}
@@ -6,7 +6,7 @@ var FormatNodeP = /** @class */ (function () {
6
6
  function FormatNodeP() {
7
7
  }
8
8
  FormatNodeP.prototype.format = function (target, step, date) {
9
- return ((target * 100) | 0) + "%";
9
+ return "".concat((target * 100) | 0, "%");
10
10
  };
11
11
  return FormatNodeP;
12
12
  }());
@@ -1 +1 @@
1
- {"version":3,"file":"format-node-p-large.js","sourceRoot":"","sources":["../../../../../src/main/typescript/wcardinal/ui/util/format-node/format-node-p-large.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH;IAAA;IAIA,CAAC;IAHA,4BAAM,GAAN,UAAO,MAAc,EAAE,IAAY,EAAE,IAAU;QAC9C,OAAO,CAAG,CAAC,MAAM,GAAG,GAAG,CAAC,GAAG,CAAC,OAAG,CAAC;IACjC,CAAC;IACF,kBAAC;AAAD,CAAC,AAJD,IAIC","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { FormatNode } from \"./format-node\";\n\nexport class FormatNodeP implements FormatNode {\n\tformat(target: number, step: number, date: Date): string {\n\t\treturn `${(target * 100) | 0}%`;\n\t}\n}\n"]}
1
+ {"version":3,"file":"format-node-p-large.js","sourceRoot":"","sources":["../../../../../src/main/typescript/wcardinal/ui/util/format-node/format-node-p-large.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH;IAAA;IAIA,CAAC;IAHA,4BAAM,GAAN,UAAO,MAAc,EAAE,IAAY,EAAE,IAAU;QAC9C,OAAO,UAAG,CAAC,MAAM,GAAG,GAAG,CAAC,GAAG,CAAC,MAAG,CAAC;IACjC,CAAC;IACF,kBAAC;AAAD,CAAC,AAJD,IAIC","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { FormatNode } from \"./format-node\";\n\nexport class FormatNodeP implements FormatNode {\n\tformat(target: number, step: number, date: Date): string {\n\t\treturn `${(target * 100) | 0}%`;\n\t}\n}\n"]}
@@ -6,7 +6,7 @@ var FormatNodep = /** @class */ (function () {
6
6
  function FormatNodep() {
7
7
  }
8
8
  FormatNodep.prototype.format = function (target, step, date) {
9
- return (target | 0) + "%";
9
+ return "".concat(target | 0, "%");
10
10
  };
11
11
  return FormatNodep;
12
12
  }());
@@ -1 +1 @@
1
- {"version":3,"file":"format-node-p-small.js","sourceRoot":"","sources":["../../../../../src/main/typescript/wcardinal/ui/util/format-node/format-node-p-small.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH;IAAA;IAIA,CAAC;IAHA,4BAAM,GAAN,UAAO,MAAc,EAAE,IAAY,EAAE,IAAU;QAC9C,OAAO,CAAG,MAAM,GAAG,CAAC,OAAG,CAAC;IACzB,CAAC;IACF,kBAAC;AAAD,CAAC,AAJD,IAIC","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { FormatNode } from \"./format-node\";\n\nexport class FormatNodep implements FormatNode {\n\tformat(target: number, step: number, date: Date): string {\n\t\treturn `${target | 0}%`;\n\t}\n}\n"]}
1
+ {"version":3,"file":"format-node-p-small.js","sourceRoot":"","sources":["../../../../../src/main/typescript/wcardinal/ui/util/format-node/format-node-p-small.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH;IAAA;IAIA,CAAC;IAHA,4BAAM,GAAN,UAAO,MAAc,EAAE,IAAY,EAAE,IAAU;QAC9C,OAAO,UAAG,MAAM,GAAG,CAAC,MAAG,CAAC;IACzB,CAAC;IACF,kBAAC;AAAD,CAAC,AAJD,IAIC","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { FormatNode } from \"./format-node\";\n\nexport class FormatNodep implements FormatNode {\n\tformat(target: number, step: number, date: Date): string {\n\t\treturn `${target | 0}%`;\n\t}\n}\n"]}
@@ -9,7 +9,7 @@ var FormatNodeParenthesis = /** @class */ (function () {
9
9
  FormatNodeParenthesis.prototype.format = function (target, step, date) {
10
10
  var result = this.node.format(target, step, date);
11
11
  if (0 < result.length && result[0] === "-") {
12
- return "(" + result.substring(1, result.length) + ")";
12
+ return "(".concat(result.substring(1, result.length), ")");
13
13
  }
14
14
  return result;
15
15
  };
@@ -1 +1 @@
1
- {"version":3,"file":"format-node-parenthesis.js","sourceRoot":"","sources":["../../../../../src/main/typescript/wcardinal/ui/util/format-node/format-node-parenthesis.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH;IAGC,+BAAY,IAAgB;QAC3B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IAClB,CAAC;IAED,sCAAM,GAAN,UAAO,MAAc,EAAE,IAAY,EAAE,IAAU;QAC9C,IAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;QACpD,IAAI,CAAC,GAAG,MAAM,CAAC,MAAM,IAAI,MAAM,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE;YAC3C,OAAO,MAAI,MAAM,CAAC,SAAS,CAAC,CAAC,EAAE,MAAM,CAAC,MAAM,CAAC,MAAG,CAAC;SACjD;QACD,OAAO,MAAM,CAAC;IACf,CAAC;IACF,4BAAC;AAAD,CAAC,AAdD,IAcC","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { FormatNode } from \"./format-node\";\n\nexport class FormatNodeParenthesis {\n\tprotected node: FormatNode;\n\n\tconstructor(node: FormatNode) {\n\t\tthis.node = node;\n\t}\n\n\tformat(target: number, step: number, date: Date): string {\n\t\tconst result = this.node.format(target, step, date);\n\t\tif (0 < result.length && result[0] === \"-\") {\n\t\t\treturn `(${result.substring(1, result.length)})`;\n\t\t}\n\t\treturn result;\n\t}\n}\n"]}
1
+ {"version":3,"file":"format-node-parenthesis.js","sourceRoot":"","sources":["../../../../../src/main/typescript/wcardinal/ui/util/format-node/format-node-parenthesis.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH;IAGC,+BAAY,IAAgB;QAC3B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IAClB,CAAC;IAED,sCAAM,GAAN,UAAO,MAAc,EAAE,IAAY,EAAE,IAAU;QAC9C,IAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;QACpD,IAAI,CAAC,GAAG,MAAM,CAAC,MAAM,IAAI,MAAM,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE;YAC3C,OAAO,WAAI,MAAM,CAAC,SAAS,CAAC,CAAC,EAAE,MAAM,CAAC,MAAM,CAAC,MAAG,CAAC;SACjD;QACD,OAAO,MAAM,CAAC;IACf,CAAC;IACF,4BAAC;AAAD,CAAC,AAdD,IAcC","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { FormatNode } from \"./format-node\";\n\nexport class FormatNodeParenthesis {\n\tprotected node: FormatNode;\n\n\tconstructor(node: FormatNode) {\n\t\tthis.node = node;\n\t}\n\n\tformat(target: number, step: number, date: Date): string {\n\t\tconst result = this.node.format(target, step, date);\n\t\tif (0 < result.length && result[0] === \"-\") {\n\t\t\treturn `(${result.substring(1, result.length)})`;\n\t\t}\n\t\treturn result;\n\t}\n}\n"]}
@@ -9,7 +9,7 @@ var FormatNodePlus = /** @class */ (function () {
9
9
  FormatNodePlus.prototype.format = function (target, step, date) {
10
10
  var result = this.node.format(target, step, date);
11
11
  if (0 < result.length && result[0] !== "-") {
12
- return "+" + result;
12
+ return "+".concat(result);
13
13
  }
14
14
  return result;
15
15
  };
@@ -1 +1 @@
1
- {"version":3,"file":"format-node-plus.js","sourceRoot":"","sources":["../../../../../src/main/typescript/wcardinal/ui/util/format-node/format-node-plus.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH;IAGC,wBAAY,IAAgB;QAC3B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IAClB,CAAC;IAED,+BAAM,GAAN,UAAO,MAAc,EAAE,IAAY,EAAE,IAAU;QAC9C,IAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;QACpD,IAAI,CAAC,GAAG,MAAM,CAAC,MAAM,IAAI,MAAM,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE;YAC3C,OAAO,MAAI,MAAQ,CAAC;SACpB;QACD,OAAO,MAAM,CAAC;IACf,CAAC;IACF,qBAAC;AAAD,CAAC,AAdD,IAcC","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { FormatNode } from \"./format-node\";\n\nexport class FormatNodePlus implements FormatNode {\n\tprotected node: FormatNode;\n\n\tconstructor(node: FormatNode) {\n\t\tthis.node = node;\n\t}\n\n\tformat(target: number, step: number, date: Date): string {\n\t\tconst result = this.node.format(target, step, date);\n\t\tif (0 < result.length && result[0] !== \"-\") {\n\t\t\treturn `+${result}`;\n\t\t}\n\t\treturn result;\n\t}\n}\n"]}
1
+ {"version":3,"file":"format-node-plus.js","sourceRoot":"","sources":["../../../../../src/main/typescript/wcardinal/ui/util/format-node/format-node-plus.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH;IAGC,wBAAY,IAAgB;QAC3B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IAClB,CAAC;IAED,+BAAM,GAAN,UAAO,MAAc,EAAE,IAAY,EAAE,IAAU;QAC9C,IAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;QACpD,IAAI,CAAC,GAAG,MAAM,CAAC,MAAM,IAAI,MAAM,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE;YAC3C,OAAO,WAAI,MAAM,CAAE,CAAC;SACpB;QACD,OAAO,MAAM,CAAC;IACf,CAAC;IACF,qBAAC;AAAD,CAAC,AAdD,IAcC","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { FormatNode } from \"./format-node\";\n\nexport class FormatNodePlus implements FormatNode {\n\tprotected node: FormatNode;\n\n\tconstructor(node: FormatNode) {\n\t\tthis.node = node;\n\t}\n\n\tformat(target: number, step: number, date: Date): string {\n\t\tconst result = this.node.format(target, step, date);\n\t\tif (0 < result.length && result[0] !== \"-\") {\n\t\t\treturn `+${result}`;\n\t\t}\n\t\treturn result;\n\t}\n}\n"]}
@@ -6,7 +6,7 @@ var FormatNoderd = /** @class */ (function () {
6
6
  function FormatNoderd() {
7
7
  }
8
8
  FormatNoderd.prototype.format = function (target, step, date) {
9
- return "" + Math.round(target);
9
+ return "".concat(Math.round(target));
10
10
  };
11
11
  return FormatNoderd;
12
12
  }());
@@ -1 +1 @@
1
- {"version":3,"file":"format-node-rd.js","sourceRoot":"","sources":["../../../../../src/main/typescript/wcardinal/ui/util/format-node/format-node-rd.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH;IAAA;IAIA,CAAC;IAHA,6BAAM,GAAN,UAAO,MAAc,EAAE,IAAY,EAAE,IAAU;QAC9C,OAAO,KAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAG,CAAC;IAChC,CAAC;IACF,mBAAC;AAAD,CAAC,AAJD,IAIC","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { FormatNode } from \"./format-node\";\n\nexport class FormatNoderd implements FormatNode {\n\tformat(target: number, step: number, date: Date): string {\n\t\treturn `${Math.round(target)}`;\n\t}\n}\n"]}
1
+ {"version":3,"file":"format-node-rd.js","sourceRoot":"","sources":["../../../../../src/main/typescript/wcardinal/ui/util/format-node/format-node-rd.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH;IAAA;IAIA,CAAC;IAHA,6BAAM,GAAN,UAAO,MAAc,EAAE,IAAY,EAAE,IAAU;QAC9C,OAAO,UAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAE,CAAC;IAChC,CAAC;IACF,mBAAC;AAAD,CAAC,AAJD,IAIC","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { FormatNode } from \"./format-node\";\n\nexport class FormatNoderd implements FormatNode {\n\tformat(target: number, step: number, date: Date): string {\n\t\treturn `${Math.round(target)}`;\n\t}\n}\n"]}
@@ -6,7 +6,7 @@ var FormatNodeRP = /** @class */ (function () {
6
6
  function FormatNodeRP() {
7
7
  }
8
8
  FormatNodeRP.prototype.format = function (target, step, date) {
9
- return Math.round(target * 100) + "%";
9
+ return "".concat(Math.round(target * 100), "%");
10
10
  };
11
11
  return FormatNodeRP;
12
12
  }());
@@ -1 +1 @@
1
- {"version":3,"file":"format-node-rp-large.js","sourceRoot":"","sources":["../../../../../src/main/typescript/wcardinal/ui/util/format-node/format-node-rp-large.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH;IAAA;IAIA,CAAC;IAHA,6BAAM,GAAN,UAAO,MAAc,EAAE,IAAY,EAAE,IAAU;QAC9C,OAAU,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,GAAG,CAAC,MAAG,CAAC;IACvC,CAAC;IACF,mBAAC;AAAD,CAAC,AAJD,IAIC","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { FormatNode } from \"./format-node\";\n\nexport class FormatNodeRP implements FormatNode {\n\tformat(target: number, step: number, date: Date): string {\n\t\treturn `${Math.round(target * 100)}%`;\n\t}\n}\n"]}
1
+ {"version":3,"file":"format-node-rp-large.js","sourceRoot":"","sources":["../../../../../src/main/typescript/wcardinal/ui/util/format-node/format-node-rp-large.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH;IAAA;IAIA,CAAC;IAHA,6BAAM,GAAN,UAAO,MAAc,EAAE,IAAY,EAAE,IAAU;QAC9C,OAAO,UAAG,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,GAAG,CAAC,MAAG,CAAC;IACvC,CAAC;IACF,mBAAC;AAAD,CAAC,AAJD,IAIC","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { FormatNode } from \"./format-node\";\n\nexport class FormatNodeRP implements FormatNode {\n\tformat(target: number, step: number, date: Date): string {\n\t\treturn `${Math.round(target * 100)}%`;\n\t}\n}\n"]}
@@ -6,7 +6,7 @@ var FormatNoderp = /** @class */ (function () {
6
6
  function FormatNoderp() {
7
7
  }
8
8
  FormatNoderp.prototype.format = function (target, step, date) {
9
- return Math.round(target) + "%";
9
+ return "".concat(Math.round(target), "%");
10
10
  };
11
11
  return FormatNoderp;
12
12
  }());
@@ -1 +1 @@
1
- {"version":3,"file":"format-node-rp-small.js","sourceRoot":"","sources":["../../../../../src/main/typescript/wcardinal/ui/util/format-node/format-node-rp-small.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH;IAAA;IAIA,CAAC;IAHA,6BAAM,GAAN,UAAO,MAAc,EAAE,IAAY,EAAE,IAAU;QAC9C,OAAU,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,MAAG,CAAC;IACjC,CAAC;IACF,mBAAC;AAAD,CAAC,AAJD,IAIC","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { FormatNode } from \"./format-node\";\n\nexport class FormatNoderp implements FormatNode {\n\tformat(target: number, step: number, date: Date): string {\n\t\treturn `${Math.round(target)}%`;\n\t}\n}\n"]}
1
+ {"version":3,"file":"format-node-rp-small.js","sourceRoot":"","sources":["../../../../../src/main/typescript/wcardinal/ui/util/format-node/format-node-rp-small.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH;IAAA;IAIA,CAAC;IAHA,6BAAM,GAAN,UAAO,MAAc,EAAE,IAAY,EAAE,IAAU;QAC9C,OAAO,UAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,MAAG,CAAC;IACjC,CAAC;IACF,mBAAC;AAAD,CAAC,AAJD,IAIC","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { FormatNode } from \"./format-node\";\n\nexport class FormatNoderp implements FormatNode {\n\tformat(target: number, step: number, date: Date): string {\n\t\treturn `${Math.round(target)}%`;\n\t}\n}\n"]}
@@ -14,24 +14,24 @@ var FormatNodesdt = /** @class */ (function () {
14
14
  }
15
15
  FormatNodesdt.prototype.format = function (target, step, date) {
16
16
  if (step < 1000) {
17
- return this.s.format(target, step, date) + "." + this.mi.format(target, step, date);
17
+ return "".concat(this.s.format(target, step, date), ".").concat(this.mi.format(target, step, date));
18
18
  }
19
19
  else if (step < 60000) {
20
- return this.m.format(target, step, date) + ":" + this.s.format(target, step, date);
20
+ return "".concat(this.m.format(target, step, date), ":").concat(this.s.format(target, step, date));
21
21
  }
22
22
  else if (step < 3600000) {
23
- return this.H.format(target, step, date) + ":" + this.m.format(target, step, date);
23
+ return "".concat(this.H.format(target, step, date), ":").concat(this.m.format(target, step, date));
24
24
  }
25
25
  else if (step < 86400000) {
26
26
  var M = this.M.format(target, step, date);
27
27
  var D = this.D.format(target, step, date);
28
- return M + "/" + D + " " + this.H.format(target, step, date);
28
+ return "".concat(M, "/").concat(D, " ").concat(this.H.format(target, step, date));
29
29
  }
30
30
  else if (step < 2592000000) {
31
- return this.M.format(target, step, date) + "/" + this.D.format(target, step, date);
31
+ return "".concat(this.M.format(target, step, date), "/").concat(this.D.format(target, step, date));
32
32
  }
33
33
  else {
34
- return this.Y.format(target, step, date) + "/" + this.M.format(target, step, date);
34
+ return "".concat(this.Y.format(target, step, date), "/").concat(this.M.format(target, step, date));
35
35
  }
36
36
  };
37
37
  return FormatNodesdt;
@@ -1 +1 @@
1
- {"version":3,"file":"format-node-sdt.js","sourceRoot":"","sources":["../../../../../src/main/typescript/wcardinal/ui/util/format-node/format-node-sdt.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH;IASC,uBACC,CAAa,EACb,CAAa,EACb,CAAa,EACb,CAAa,EACb,CAAa,EACb,CAAa,EACb,EAAc;QAEd,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;QACX,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;QACX,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;QACX,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;QACX,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;QACX,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;QACX,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC;IACd,CAAC;IAED,8BAAM,GAAN,UAAO,MAAc,EAAE,IAAY,EAAE,IAAU;QAC9C,IAAI,IAAI,GAAG,IAAI,EAAE;YAChB,OAAU,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAI,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,CAAG,CAAC;SACpF;aAAM,IAAI,IAAI,GAAG,KAAK,EAAE;YACxB,OAAU,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAI,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,CAAG,CAAC;SACnF;aAAM,IAAI,IAAI,GAAG,OAAO,EAAE;YAC1B,OAAU,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAI,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,CAAG,CAAC;SACnF;aAAM,IAAI,IAAI,GAAG,QAAQ,EAAE;YAC3B,IAAM,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;YAC5C,IAAM,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;YAC5C,OAAU,CAAC,SAAI,CAAC,SAAI,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,CAAG,CAAC;SACxD;aAAM,IAAI,IAAI,GAAG,UAAU,EAAE;YAC7B,OAAU,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAI,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,CAAG,CAAC;SACnF;aAAM;YACN,OAAU,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAI,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,CAAG,CAAC;SACnF;IACF,CAAC;IACF,oBAAC;AAAD,CAAC,AA5CD,IA4CC","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { FormatNode } from \"./format-node\";\n\nexport class FormatNodesdt implements FormatNode {\n\tprotected Y: FormatNode;\n\tprotected M: FormatNode;\n\tprotected D: FormatNode;\n\tprotected H: FormatNode;\n\tprotected m: FormatNode;\n\tprotected s: FormatNode;\n\tprotected mi: FormatNode;\n\n\tconstructor(\n\t\tY: FormatNode,\n\t\tM: FormatNode,\n\t\tD: FormatNode,\n\t\tH: FormatNode,\n\t\tm: FormatNode,\n\t\ts: FormatNode,\n\t\tmi: FormatNode\n\t) {\n\t\tthis.Y = Y;\n\t\tthis.M = M;\n\t\tthis.D = D;\n\t\tthis.H = H;\n\t\tthis.m = m;\n\t\tthis.s = s;\n\t\tthis.mi = mi;\n\t}\n\n\tformat(target: number, step: number, date: Date): string {\n\t\tif (step < 1000) {\n\t\t\treturn `${this.s.format(target, step, date)}.${this.mi.format(target, step, date)}`;\n\t\t} else if (step < 60000) {\n\t\t\treturn `${this.m.format(target, step, date)}:${this.s.format(target, step, date)}`;\n\t\t} else if (step < 3600000) {\n\t\t\treturn `${this.H.format(target, step, date)}:${this.m.format(target, step, date)}`;\n\t\t} else if (step < 86400000) {\n\t\t\tconst M = this.M.format(target, step, date);\n\t\t\tconst D = this.D.format(target, step, date);\n\t\t\treturn `${M}/${D} ${this.H.format(target, step, date)}`;\n\t\t} else if (step < 2592000000) {\n\t\t\treturn `${this.M.format(target, step, date)}/${this.D.format(target, step, date)}`;\n\t\t} else {\n\t\t\treturn `${this.Y.format(target, step, date)}/${this.M.format(target, step, date)}`;\n\t\t}\n\t}\n}\n"]}
1
+ {"version":3,"file":"format-node-sdt.js","sourceRoot":"","sources":["../../../../../src/main/typescript/wcardinal/ui/util/format-node/format-node-sdt.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH;IASC,uBACC,CAAa,EACb,CAAa,EACb,CAAa,EACb,CAAa,EACb,CAAa,EACb,CAAa,EACb,EAAc;QAEd,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;QACX,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;QACX,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;QACX,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;QACX,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;QACX,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;QACX,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC;IACd,CAAC;IAED,8BAAM,GAAN,UAAO,MAAc,EAAE,IAAY,EAAE,IAAU;QAC9C,IAAI,IAAI,GAAG,IAAI,EAAE;YAChB,OAAO,UAAG,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,cAAI,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,CAAE,CAAC;SACpF;aAAM,IAAI,IAAI,GAAG,KAAK,EAAE;YACxB,OAAO,UAAG,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,cAAI,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,CAAE,CAAC;SACnF;aAAM,IAAI,IAAI,GAAG,OAAO,EAAE;YAC1B,OAAO,UAAG,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,cAAI,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,CAAE,CAAC;SACnF;aAAM,IAAI,IAAI,GAAG,QAAQ,EAAE;YAC3B,IAAM,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;YAC5C,IAAM,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;YAC5C,OAAO,UAAG,CAAC,cAAI,CAAC,cAAI,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,CAAE,CAAC;SACxD;aAAM,IAAI,IAAI,GAAG,UAAU,EAAE;YAC7B,OAAO,UAAG,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,cAAI,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,CAAE,CAAC;SACnF;aAAM;YACN,OAAO,UAAG,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,cAAI,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,CAAE,CAAC;SACnF;IACF,CAAC;IACF,oBAAC;AAAD,CAAC,AA5CD,IA4CC","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { FormatNode } from \"./format-node\";\n\nexport class FormatNodesdt implements FormatNode {\n\tprotected Y: FormatNode;\n\tprotected M: FormatNode;\n\tprotected D: FormatNode;\n\tprotected H: FormatNode;\n\tprotected m: FormatNode;\n\tprotected s: FormatNode;\n\tprotected mi: FormatNode;\n\n\tconstructor(\n\t\tY: FormatNode,\n\t\tM: FormatNode,\n\t\tD: FormatNode,\n\t\tH: FormatNode,\n\t\tm: FormatNode,\n\t\ts: FormatNode,\n\t\tmi: FormatNode\n\t) {\n\t\tthis.Y = Y;\n\t\tthis.M = M;\n\t\tthis.D = D;\n\t\tthis.H = H;\n\t\tthis.m = m;\n\t\tthis.s = s;\n\t\tthis.mi = mi;\n\t}\n\n\tformat(target: number, step: number, date: Date): string {\n\t\tif (step < 1000) {\n\t\t\treturn `${this.s.format(target, step, date)}.${this.mi.format(target, step, date)}`;\n\t\t} else if (step < 60000) {\n\t\t\treturn `${this.m.format(target, step, date)}:${this.s.format(target, step, date)}`;\n\t\t} else if (step < 3600000) {\n\t\t\treturn `${this.H.format(target, step, date)}:${this.m.format(target, step, date)}`;\n\t\t} else if (step < 86400000) {\n\t\t\tconst M = this.M.format(target, step, date);\n\t\t\tconst D = this.D.format(target, step, date);\n\t\t\treturn `${M}/${D} ${this.H.format(target, step, date)}`;\n\t\t} else if (step < 2592000000) {\n\t\t\treturn `${this.M.format(target, step, date)}/${this.D.format(target, step, date)}`;\n\t\t} else {\n\t\t\treturn `${this.Y.format(target, step, date)}/${this.M.format(target, step, date)}`;\n\t\t}\n\t}\n}\n"]}
@@ -9,7 +9,7 @@ var FormatNodeSpace = /** @class */ (function () {
9
9
  FormatNodeSpace.prototype.format = function (target, step, date) {
10
10
  var result = this.node.format(target, step, date);
11
11
  if (0 < result.length && result[0] !== "-") {
12
- return " " + result;
12
+ return " ".concat(result);
13
13
  }
14
14
  return result;
15
15
  };
@@ -1 +1 @@
1
- {"version":3,"file":"format-node-space.js","sourceRoot":"","sources":["../../../../../src/main/typescript/wcardinal/ui/util/format-node/format-node-space.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH;IAGC,yBAAY,IAAgB;QAC3B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IAClB,CAAC;IAED,gCAAM,GAAN,UAAO,MAAc,EAAE,IAAY,EAAE,IAAU;QAC9C,IAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;QACpD,IAAI,CAAC,GAAG,MAAM,CAAC,MAAM,IAAI,MAAM,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE;YAC3C,OAAO,MAAI,MAAQ,CAAC;SACpB;QACD,OAAO,MAAM,CAAC;IACf,CAAC;IACF,sBAAC;AAAD,CAAC,AAdD,IAcC","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { FormatNode } from \"./format-node\";\n\nexport class FormatNodeSpace {\n\tprotected node: FormatNode;\n\n\tconstructor(node: FormatNode) {\n\t\tthis.node = node;\n\t}\n\n\tformat(target: number, step: number, date: Date): string {\n\t\tconst result = this.node.format(target, step, date);\n\t\tif (0 < result.length && result[0] !== \"-\") {\n\t\t\treturn ` ${result}`;\n\t\t}\n\t\treturn result;\n\t}\n}\n"]}
1
+ {"version":3,"file":"format-node-space.js","sourceRoot":"","sources":["../../../../../src/main/typescript/wcardinal/ui/util/format-node/format-node-space.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH;IAGC,yBAAY,IAAgB;QAC3B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IAClB,CAAC;IAED,gCAAM,GAAN,UAAO,MAAc,EAAE,IAAY,EAAE,IAAU;QAC9C,IAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;QACpD,IAAI,CAAC,GAAG,MAAM,CAAC,MAAM,IAAI,MAAM,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE;YAC3C,OAAO,WAAI,MAAM,CAAE,CAAC;SACpB;QACD,OAAO,MAAM,CAAC;IACf,CAAC;IACF,sBAAC;AAAD,CAAC,AAdD,IAcC","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { FormatNode } from \"./format-node\";\n\nexport class FormatNodeSpace {\n\tprotected node: FormatNode;\n\n\tconstructor(node: FormatNode) {\n\t\tthis.node = node;\n\t}\n\n\tformat(target: number, step: number, date: Date): string {\n\t\tconst result = this.node.format(target, step, date);\n\t\tif (0 < result.length && result[0] !== \"-\") {\n\t\t\treturn ` ${result}`;\n\t\t}\n\t\treturn result;\n\t}\n}\n"]}
@@ -11,7 +11,7 @@ var FormatNodez = /** @class */ (function () {
11
11
  var tzs = z <= 0 ? "+" : "-";
12
12
  var tzh = toPadded(String(Math.floor(Math.abs(z) / 60)), 2, "0");
13
13
  var tzm = toPadded(String(Math.floor(Math.abs(z) % 60)), 2, "0");
14
- return "" + tzs + tzh + ":" + tzm;
14
+ return "".concat(tzs).concat(tzh, ":").concat(tzm);
15
15
  };
16
16
  return FormatNodez;
17
17
  }());
@@ -1 +1 @@
1
- {"version":3,"file":"format-node-z.js","sourceRoot":"","sources":["../../../../../src/main/typescript/wcardinal/ui/util/format-node/format-node-z.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAGxC;IAAA;IAQA,CAAC;IAPA,4BAAM,GAAN,UAAO,MAAc,EAAE,IAAY,EAAE,IAAU;QAC9C,IAAM,CAAC,GAAG,IAAI,CAAC,iBAAiB,EAAE,CAAC;QACnC,IAAM,GAAG,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;QAC/B,IAAM,GAAG,GAAG,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,CAAC;QACnE,IAAM,GAAG,GAAG,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,CAAC;QACnE,OAAO,KAAG,GAAG,GAAG,GAAG,SAAI,GAAK,CAAC;IAC9B,CAAC;IACF,kBAAC;AAAD,CAAC,AARD,IAQC","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { toPadded } from \"../to-padded\";\nimport { FormatNode } from \"./format-node\";\n\nexport class FormatNodez implements FormatNode {\n\tformat(target: number, step: number, date: Date): string {\n\t\tconst z = date.getTimezoneOffset();\n\t\tconst tzs = z <= 0 ? \"+\" : \"-\";\n\t\tconst tzh = toPadded(String(Math.floor(Math.abs(z) / 60)), 2, \"0\");\n\t\tconst tzm = toPadded(String(Math.floor(Math.abs(z) % 60)), 2, \"0\");\n\t\treturn `${tzs}${tzh}:${tzm}`;\n\t}\n}\n"]}
1
+ {"version":3,"file":"format-node-z.js","sourceRoot":"","sources":["../../../../../src/main/typescript/wcardinal/ui/util/format-node/format-node-z.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAGxC;IAAA;IAQA,CAAC;IAPA,4BAAM,GAAN,UAAO,MAAc,EAAE,IAAY,EAAE,IAAU;QAC9C,IAAM,CAAC,GAAG,IAAI,CAAC,iBAAiB,EAAE,CAAC;QACnC,IAAM,GAAG,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;QAC/B,IAAM,GAAG,GAAG,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,CAAC;QACnE,IAAM,GAAG,GAAG,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,CAAC;QACnE,OAAO,UAAG,GAAG,SAAG,GAAG,cAAI,GAAG,CAAE,CAAC;IAC9B,CAAC;IACF,kBAAC;AAAD,CAAC,AARD,IAQC","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { toPadded } from \"../to-padded\";\nimport { FormatNode } from \"./format-node\";\n\nexport class FormatNodez implements FormatNode {\n\tformat(target: number, step: number, date: Date): string {\n\t\tconst z = date.getTimezoneOffset();\n\t\tconst tzs = z <= 0 ? \"+\" : \"-\";\n\t\tconst tzh = toPadded(String(Math.floor(Math.abs(z) / 60)), 2, \"0\");\n\t\tconst tzm = toPadded(String(Math.floor(Math.abs(z) % 60)), 2, \"0\");\n\t\treturn `${tzs}${tzh}:${tzm}`;\n\t}\n}\n"]}
@@ -3,6 +3,6 @@
3
3
  * SPDX-License-Identifier: Apache-2.0
4
4
  */
5
5
  export var toSvgUrl = function (svg) {
6
- return "data:image/svg+xml;base64," + btoa(svg);
6
+ return "data:image/svg+xml;base64,".concat(btoa(svg));
7
7
  };
8
8
  //# sourceMappingURL=to-svg-url.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"to-svg-url.js","sourceRoot":"","sources":["../../../../src/main/typescript/wcardinal/ui/util/to-svg-url.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,MAAM,CAAC,IAAM,QAAQ,GAAG,UAAC,GAAW;IACnC,OAAO,+BAA6B,IAAI,CAAC,GAAG,CAAG,CAAC;AACjD,CAAC,CAAC","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nexport const toSvgUrl = (svg: string): string => {\n\treturn `data:image/svg+xml;base64,${btoa(svg)}`;\n};\n"]}
1
+ {"version":3,"file":"to-svg-url.js","sourceRoot":"","sources":["../../../../src/main/typescript/wcardinal/ui/util/to-svg-url.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,MAAM,CAAC,IAAM,QAAQ,GAAG,UAAC,GAAW;IACnC,OAAO,oCAA6B,IAAI,CAAC,GAAG,CAAC,CAAE,CAAC;AACjD,CAAC,CAAC","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nexport const toSvgUrl = (svg: string): string => {\n\treturn `data:image/svg+xml;base64,${btoa(svg)}`;\n};\n"]}
@@ -7,8 +7,9 @@ import { UtilInputInput } from "./util-input-input";
7
7
  var UtilInputNumber = /** @class */ (function (_super) {
8
8
  __extends(UtilInputNumber, _super);
9
9
  function UtilInputNumber(target, operation, theme, options) {
10
+ var _this = this;
10
11
  var _a, _b, _c;
11
- var _this = _super.call(this, target, operation, theme, options) || this;
12
+ _this = _super.call(this, target, operation, theme, options) || this;
12
13
  _this._step = (_a = options === null || options === void 0 ? void 0 : options.step) !== null && _a !== void 0 ? _a : theme.getStep();
13
14
  _this._min = (_b = options === null || options === void 0 ? void 0 : options.min) !== null && _b !== void 0 ? _b : theme.getMin();
14
15
  _this._max = (_c = options === null || options === void 0 ? void 0 : options.max) !== null && _c !== void 0 ? _c : theme.getMax();
@@ -101,7 +102,7 @@ var UtilInputNumber = /** @class */ (function (_super) {
101
102
  UtilInputNumber.prototype.updateStep = function (input) {
102
103
  var step = this.step;
103
104
  if (step != null) {
104
- input.step = "" + step;
105
+ input.step = "".concat(step);
105
106
  }
106
107
  else {
107
108
  input.step = "any";
@@ -110,7 +111,7 @@ var UtilInputNumber = /** @class */ (function (_super) {
110
111
  UtilInputNumber.prototype.updateMin = function (input) {
111
112
  var min = this.min;
112
113
  if (min != null) {
113
- input.min = "" + min;
114
+ input.min = "".concat(min);
114
115
  }
115
116
  else {
116
117
  input.removeAttribute("min");
@@ -119,7 +120,7 @@ var UtilInputNumber = /** @class */ (function (_super) {
119
120
  UtilInputNumber.prototype.updateMax = function (input) {
120
121
  var max = this.max;
121
122
  if (max != null) {
122
- input.max = "" + max;
123
+ input.max = "".concat(max);
123
124
  }
124
125
  else {
125
126
  input.removeAttribute("max");
@@ -1 +1 @@
1
- {"version":3,"file":"util-input-number.js","sourceRoot":"","sources":["../../../../src/main/typescript/wcardinal/ui/util/util-input-number.ts"],"names":[],"mappings":"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","sourcesContent":["/*\n * Copyright (C) 2021 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport {\n\tUtilInputInput,\n\tUtilInputInputOperation,\n\tUtilInputInputOptions,\n\tUtilInputInputTarget,\n\tUtilThemeInputInput\n} from \"./util-input-input\";\n\nexport interface UtilInputNumberTarget extends UtilInputInputTarget {}\n\nexport interface UtilInputNumberOperation extends UtilInputInputOperation<number> {}\n\nexport interface UtilInputNumberOptions extends UtilInputInputOptions<number> {\n\tstep?: number | null;\n\tmin?: number | null;\n\tmax?: number | null;\n}\n\nexport interface UtilThemeInputNumber extends UtilThemeInputInput<number> {\n\tgetStep(): number | null;\n\tgetMin(): number | null;\n\tgetMax(): number | null;\n}\n\nexport class UtilInputNumber<\n\tTARGET extends UtilInputNumberTarget = UtilInputNumberTarget,\n\tOPERATION extends UtilInputNumberOperation = UtilInputNumberOperation,\n\tTHEME extends UtilThemeInputNumber = UtilThemeInputNumber,\n\tOPTIONS extends UtilInputNumberOptions = UtilInputNumberOptions\n> extends UtilInputInput<number, TARGET, OPERATION, THEME, OPTIONS> {\n\tprotected _step: number | null;\n\tprotected _min: number | null;\n\tprotected _max: number | null;\n\n\tconstructor(target: TARGET, operation: OPERATION, theme: THEME, options?: OPTIONS) {\n\t\tsuper(target, operation, theme, options);\n\n\t\tthis._step = options?.step ?? theme.getStep();\n\t\tthis._min = options?.min ?? theme.getMin();\n\t\tthis._max = options?.max ?? theme.getMax();\n\t}\n\n\tget step(): number | null {\n\t\treturn this._step;\n\t}\n\n\tset step(step: number | null) {\n\t\tif (this._step !== step) {\n\t\t\tthis._step = step;\n\t\t\tthis.onStepChange();\n\t\t}\n\t}\n\n\tget min(): number | null {\n\t\treturn this._min;\n\t}\n\n\tset min(min: number | null) {\n\t\tif (this._min !== min) {\n\t\t\tthis._min = min;\n\t\t\tthis.onMinChange();\n\t\t}\n\t}\n\n\tget max(): number | null {\n\t\treturn this._max;\n\t}\n\n\tset max(max: number | null) {\n\t\tif (this._max !== max) {\n\t\t\tthis._max = max;\n\t\t\tthis.onMaxChange();\n\t\t}\n\t}\n\n\ttoValue(valueAsString: string): number {\n\t\tconst result = super.toValue(valueAsString);\n\t\tif (result === result /* NaN Check */) {\n\t\t\tconst min = this._min;\n\t\t\tif (min != null && result < min) {\n\t\t\t\treturn min;\n\t\t\t}\n\t\t\tconst max = this._max;\n\t\t\tif (max != null && max < result) {\n\t\t\t\treturn max;\n\t\t\t}\n\t\t\treturn result;\n\t\t}\n\t\treturn 0;\n\t}\n\n\tfromValue(value: number | undefined): string {\n\t\tif (value !== undefined) {\n\t\t\treturn this._editingFormatter(value, this);\n\t\t}\n\t\treturn \"0\";\n\t}\n\n\tprotected onStepChange(): void {\n\t\tif (this.isShown()) {\n\t\t\tconst element = this.element;\n\t\t\tif (element) {\n\t\t\t\tthis.updateStep(element);\n\t\t\t}\n\t\t}\n\t}\n\n\tprotected onMinChange(): void {\n\t\tif (this.isShown()) {\n\t\t\tconst element = this.element;\n\t\t\tif (element) {\n\t\t\t\tthis.updateMin(element);\n\t\t\t}\n\t\t}\n\t}\n\n\tprotected onMaxChange(): void {\n\t\tif (this.isShown()) {\n\t\t\tconst element = this.element;\n\t\t\tif (element) {\n\t\t\t\tthis.updateMax(element);\n\t\t\t}\n\t\t}\n\t}\n\n\tprotected updateStep(input: HTMLInputElement): void {\n\t\tconst step = this.step;\n\t\tif (step != null) {\n\t\t\tinput.step = `${step}`;\n\t\t} else {\n\t\t\tinput.step = \"any\";\n\t\t}\n\t}\n\n\tprotected updateMin(input: HTMLInputElement): void {\n\t\tconst min = this.min;\n\t\tif (min != null) {\n\t\t\tinput.min = `${min}`;\n\t\t} else {\n\t\t\tinput.removeAttribute(\"min\");\n\t\t}\n\t}\n\n\tprotected updateMax(input: HTMLInputElement): void {\n\t\tconst max = this.max;\n\t\tif (max != null) {\n\t\t\tinput.max = `${max}`;\n\t\t} else {\n\t\t\tinput.removeAttribute(\"max\");\n\t\t}\n\t}\n\n\tprotected onElementAttached(\n\t\telement: HTMLInputElement,\n\t\tbefore?: HTMLDivElement | null,\n\t\tafter?: HTMLDivElement | null\n\t): void {\n\t\telement.type = \"number\";\n\t\tsuper.onElementAttached(element, before, after);\n\t\tthis.updateStep(element);\n\t\tthis.updateMin(element);\n\t\tthis.updateMax(element);\n\t}\n}\n"]}
1
+ {"version":3,"file":"util-input-number.js","sourceRoot":"","sources":["../../../../src/main/typescript/wcardinal/ui/util/util-input-number.ts"],"names":[],"mappings":"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","sourcesContent":["/*\n * Copyright (C) 2021 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport {\n\tUtilInputInput,\n\tUtilInputInputOperation,\n\tUtilInputInputOptions,\n\tUtilInputInputTarget,\n\tUtilThemeInputInput\n} from \"./util-input-input\";\n\nexport interface UtilInputNumberTarget extends UtilInputInputTarget {}\n\nexport interface UtilInputNumberOperation extends UtilInputInputOperation<number> {}\n\nexport interface UtilInputNumberOptions extends UtilInputInputOptions<number> {\n\tstep?: number | null;\n\tmin?: number | null;\n\tmax?: number | null;\n}\n\nexport interface UtilThemeInputNumber extends UtilThemeInputInput<number> {\n\tgetStep(): number | null;\n\tgetMin(): number | null;\n\tgetMax(): number | null;\n}\n\nexport class UtilInputNumber<\n\tTARGET extends UtilInputNumberTarget = UtilInputNumberTarget,\n\tOPERATION extends UtilInputNumberOperation = UtilInputNumberOperation,\n\tTHEME extends UtilThemeInputNumber = UtilThemeInputNumber,\n\tOPTIONS extends UtilInputNumberOptions = UtilInputNumberOptions\n> extends UtilInputInput<number, TARGET, OPERATION, THEME, OPTIONS> {\n\tprotected _step: number | null;\n\tprotected _min: number | null;\n\tprotected _max: number | null;\n\n\tconstructor(target: TARGET, operation: OPERATION, theme: THEME, options?: OPTIONS) {\n\t\tsuper(target, operation, theme, options);\n\n\t\tthis._step = options?.step ?? theme.getStep();\n\t\tthis._min = options?.min ?? theme.getMin();\n\t\tthis._max = options?.max ?? theme.getMax();\n\t}\n\n\tget step(): number | null {\n\t\treturn this._step;\n\t}\n\n\tset step(step: number | null) {\n\t\tif (this._step !== step) {\n\t\t\tthis._step = step;\n\t\t\tthis.onStepChange();\n\t\t}\n\t}\n\n\tget min(): number | null {\n\t\treturn this._min;\n\t}\n\n\tset min(min: number | null) {\n\t\tif (this._min !== min) {\n\t\t\tthis._min = min;\n\t\t\tthis.onMinChange();\n\t\t}\n\t}\n\n\tget max(): number | null {\n\t\treturn this._max;\n\t}\n\n\tset max(max: number | null) {\n\t\tif (this._max !== max) {\n\t\t\tthis._max = max;\n\t\t\tthis.onMaxChange();\n\t\t}\n\t}\n\n\ttoValue(valueAsString: string): number {\n\t\tconst result = super.toValue(valueAsString);\n\t\tif (result === result /* NaN Check */) {\n\t\t\tconst min = this._min;\n\t\t\tif (min != null && result < min) {\n\t\t\t\treturn min;\n\t\t\t}\n\t\t\tconst max = this._max;\n\t\t\tif (max != null && max < result) {\n\t\t\t\treturn max;\n\t\t\t}\n\t\t\treturn result;\n\t\t}\n\t\treturn 0;\n\t}\n\n\tfromValue(value: number | undefined): string {\n\t\tif (value !== undefined) {\n\t\t\treturn this._editingFormatter(value, this);\n\t\t}\n\t\treturn \"0\";\n\t}\n\n\tprotected onStepChange(): void {\n\t\tif (this.isShown()) {\n\t\t\tconst element = this.element;\n\t\t\tif (element) {\n\t\t\t\tthis.updateStep(element);\n\t\t\t}\n\t\t}\n\t}\n\n\tprotected onMinChange(): void {\n\t\tif (this.isShown()) {\n\t\t\tconst element = this.element;\n\t\t\tif (element) {\n\t\t\t\tthis.updateMin(element);\n\t\t\t}\n\t\t}\n\t}\n\n\tprotected onMaxChange(): void {\n\t\tif (this.isShown()) {\n\t\t\tconst element = this.element;\n\t\t\tif (element) {\n\t\t\t\tthis.updateMax(element);\n\t\t\t}\n\t\t}\n\t}\n\n\tprotected updateStep(input: HTMLInputElement): void {\n\t\tconst step = this.step;\n\t\tif (step != null) {\n\t\t\tinput.step = `${step}`;\n\t\t} else {\n\t\t\tinput.step = \"any\";\n\t\t}\n\t}\n\n\tprotected updateMin(input: HTMLInputElement): void {\n\t\tconst min = this.min;\n\t\tif (min != null) {\n\t\t\tinput.min = `${min}`;\n\t\t} else {\n\t\t\tinput.removeAttribute(\"min\");\n\t\t}\n\t}\n\n\tprotected updateMax(input: HTMLInputElement): void {\n\t\tconst max = this.max;\n\t\tif (max != null) {\n\t\t\tinput.max = `${max}`;\n\t\t} else {\n\t\t\tinput.removeAttribute(\"max\");\n\t\t}\n\t}\n\n\tprotected onElementAttached(\n\t\telement: HTMLInputElement,\n\t\tbefore?: HTMLDivElement | null,\n\t\tafter?: HTMLDivElement | null\n\t): void {\n\t\telement.type = \"number\";\n\t\tsuper.onElementAttached(element, before, after);\n\t\tthis.updateStep(element);\n\t\tthis.updateMin(element);\n\t\tthis.updateMax(element);\n\t}\n}\n"]}