@wcardinal/wcardinal-ui 0.405.0 → 0.407.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 (185) hide show
  1. package/dist/types/wcardinal/ui/d-base-background-snippet.d.ts +2 -1
  2. package/dist/types/wcardinal/ui/d-base-border-snippet.d.ts +2 -1
  3. package/dist/types/wcardinal/ui/d-base-outline-snippet.d.ts +2 -1
  4. package/dist/types/wcardinal/ui/d-button-color.d.ts +0 -1
  5. package/dist/types/wcardinal/ui/d-dialog.d.ts +1 -1
  6. package/dist/types/wcardinal/ui/d-dynamic-text-style.d.ts +17 -11
  7. package/dist/types/wcardinal/ui/d-dynamic-text.d.ts +3 -2
  8. package/dist/types/wcardinal/ui/d-image-base.d.ts +1 -4
  9. package/dist/types/wcardinal/ui/d-image-piece-align.d.ts +4 -4
  10. package/dist/types/wcardinal/ui/d-image-piece-container-impl.d.ts +14 -1
  11. package/dist/types/wcardinal/ui/d-image-piece-container.d.ts +11 -0
  12. package/dist/types/wcardinal/ui/d-image-piece-layouter-part-container.d.ts +2 -2
  13. package/dist/types/wcardinal/ui/d-image-piece-layouter.d.ts +2 -2
  14. package/dist/types/wcardinal/ui/d-input.d.ts +2 -1
  15. package/dist/types/wcardinal/ui/d-menu-item-text.d.ts +3 -2
  16. package/dist/types/wcardinal/ui/d-scroll-bar.d.ts +2 -1
  17. package/dist/types/wcardinal/ui/d-text-base.d.ts +15 -74
  18. package/dist/types/wcardinal/ui/d-text-piece-align-impl.d.ts +20 -0
  19. package/dist/types/wcardinal/ui/d-text-piece-align.d.ts +7 -0
  20. package/dist/types/wcardinal/ui/d-text-piece-impl.d.ts +63 -0
  21. package/dist/types/wcardinal/ui/d-text-piece-style-impl.d.ts +29 -0
  22. package/dist/types/wcardinal/ui/d-text-piece-style.d.ts +16 -0
  23. package/dist/types/wcardinal/ui/d-text-piece.d.ts +61 -0
  24. package/dist/types/wcardinal/ui/index.d.ts +6 -0
  25. package/dist/types/wcardinal/ui/shape/e-shape-image-like.d.ts +6 -0
  26. package/dist/types/wcardinal/ui/shape/e-shape.d.ts +2 -2
  27. package/dist/types/wcardinal/ui/shape/index.d.ts +1 -0
  28. package/dist/types/wcardinal/ui/shape/variant/e-shape-base.d.ts +4 -6
  29. package/dist/types/wcardinal/ui/shape/variant/e-shape-group-viewer.d.ts +6 -2
  30. package/dist/types/wcardinal/ui/shape/variant/e-shape-group.d.ts +6 -2
  31. package/dist/types/wcardinal/ui/shape/variant/e-shape-image-sdf.d.ts +2 -1
  32. package/dist/types/wcardinal/ui/shape/variant/e-shape-image.d.ts +2 -1
  33. package/dist/types/wcardinal/ui/shape/variant/e-shape-primitive.d.ts +7 -3
  34. package/dist/types/wcardinal/ui/shape/variant/to-image-element.d.ts +2 -1
  35. package/dist/types/wcardinal/ui/theme/dark/d-theme-dark-input.d.ts +1 -0
  36. package/dist/types/wcardinal/ui/theme/dark/d-theme-dark-pagination-button-last.d.ts +5 -4
  37. package/dist/types/wcardinal/ui/theme/dark/d-theme-dark-pagination-button-next.d.ts +5 -4
  38. package/dist/types/wcardinal/ui/theme/dark/d-theme-dark-pagination-button-previous.d.ts +5 -4
  39. package/dist/types/wcardinal/ui/theme/dark/d-theme-dark-pagination-button-top.d.ts +5 -4
  40. package/dist/types/wcardinal/ui/theme/dark/d-theme-dark-pagination-dots.d.ts +5 -4
  41. package/dist/types/wcardinal/ui/theme/white/d-theme-white-input.d.ts +1 -0
  42. package/dist/types/wcardinal/ui/theme/white/d-theme-white-pagination-button-last.d.ts +5 -4
  43. package/dist/types/wcardinal/ui/theme/white/d-theme-white-pagination-button-next.d.ts +5 -4
  44. package/dist/types/wcardinal/ui/theme/white/d-theme-white-pagination-button-previous.d.ts +5 -4
  45. package/dist/types/wcardinal/ui/theme/white/d-theme-white-pagination-button-top.d.ts +5 -4
  46. package/dist/types/wcardinal/ui/theme/white/d-theme-white-pagination-dots.d.ts +5 -4
  47. package/dist/types/wcardinal/ui/util/dynamic-atlas-item-image.d.ts +2 -2
  48. package/dist/types/wcardinal/ui/util/dynamic-sdf-font-generator.d.ts +1 -1
  49. package/dist/wcardinal/ui/d-base-background-snippet.js.map +1 -1
  50. package/dist/wcardinal/ui/d-base-border-snippet.js.map +1 -1
  51. package/dist/wcardinal/ui/d-base-outline-snippet.js.map +1 -1
  52. package/dist/wcardinal/ui/d-button-color-gradient.js +10 -13
  53. package/dist/wcardinal/ui/d-button-color-gradient.js.map +1 -1
  54. package/dist/wcardinal/ui/d-button-color.js +20 -23
  55. package/dist/wcardinal/ui/d-button-color.js.map +1 -1
  56. package/dist/wcardinal/ui/d-button-date.js +4 -4
  57. package/dist/wcardinal/ui/d-button-date.js.map +1 -1
  58. package/dist/wcardinal/ui/d-button-datetime.js +4 -4
  59. package/dist/wcardinal/ui/d-button-datetime.js.map +1 -1
  60. package/dist/wcardinal/ui/d-button-select.js +2 -2
  61. package/dist/wcardinal/ui/d-button-select.js.map +1 -1
  62. package/dist/wcardinal/ui/d-button-time.js +4 -4
  63. package/dist/wcardinal/ui/d-button-time.js.map +1 -1
  64. package/dist/wcardinal/ui/d-dialog-processing.js +1 -1
  65. package/dist/wcardinal/ui/d-dialog-processing.js.map +1 -1
  66. package/dist/wcardinal/ui/d-dialog.js.map +1 -1
  67. package/dist/wcardinal/ui/d-dynamic-text-style.js +39 -65
  68. package/dist/wcardinal/ui/d-dynamic-text-style.js.map +1 -1
  69. package/dist/wcardinal/ui/d-dynamic-text.js +11 -8
  70. package/dist/wcardinal/ui/d-dynamic-text.js.map +1 -1
  71. package/dist/wcardinal/ui/d-image-base.js +6 -18
  72. package/dist/wcardinal/ui/d-image-base.js.map +1 -1
  73. package/dist/wcardinal/ui/d-image-piece-align.js.map +1 -1
  74. package/dist/wcardinal/ui/d-image-piece-container-impl.js +49 -1
  75. package/dist/wcardinal/ui/d-image-piece-container-impl.js.map +1 -1
  76. package/dist/wcardinal/ui/d-image-piece-container.js.map +1 -1
  77. package/dist/wcardinal/ui/d-image-piece-layouter-part-container.js.map +1 -1
  78. package/dist/wcardinal/ui/d-image-piece-layouter.js.map +1 -1
  79. package/dist/wcardinal/ui/d-indicator-processing.js +1 -1
  80. package/dist/wcardinal/ui/d-indicator-processing.js.map +1 -1
  81. package/dist/wcardinal/ui/d-input.js +11 -7
  82. package/dist/wcardinal/ui/d-input.js.map +1 -1
  83. package/dist/wcardinal/ui/d-menu-item-text.js +12 -6
  84. package/dist/wcardinal/ui/d-menu-item-text.js.map +1 -1
  85. package/dist/wcardinal/ui/d-scroll-bar.js.map +1 -1
  86. package/dist/wcardinal/ui/d-table-body-cell-date.js +7 -10
  87. package/dist/wcardinal/ui/d-table-body-cell-date.js.map +1 -1
  88. package/dist/wcardinal/ui/d-table-body-cell-datetime.js +7 -10
  89. package/dist/wcardinal/ui/d-table-body-cell-datetime.js.map +1 -1
  90. package/dist/wcardinal/ui/d-table-body-cell-select-dialog.js +4 -10
  91. package/dist/wcardinal/ui/d-table-body-cell-select-dialog.js.map +1 -1
  92. package/dist/wcardinal/ui/d-table-body-cell-select-promise.js +4 -10
  93. package/dist/wcardinal/ui/d-table-body-cell-select-promise.js.map +1 -1
  94. package/dist/wcardinal/ui/d-table-body-cell-time.js +7 -10
  95. package/dist/wcardinal/ui/d-table-body-cell-time.js.map +1 -1
  96. package/dist/wcardinal/ui/d-text-base.js +55 -247
  97. package/dist/wcardinal/ui/d-text-base.js.map +1 -1
  98. package/dist/wcardinal/ui/d-text-piece-align-impl.js +69 -0
  99. package/dist/wcardinal/ui/d-text-piece-align-impl.js.map +1 -0
  100. package/dist/wcardinal/ui/d-text-piece-align.js +2 -0
  101. package/dist/wcardinal/ui/d-text-piece-align.js.map +1 -0
  102. package/dist/wcardinal/ui/d-text-piece-impl.js +299 -0
  103. package/dist/wcardinal/ui/d-text-piece-impl.js.map +1 -0
  104. package/dist/wcardinal/ui/d-text-piece-style-impl.js +146 -0
  105. package/dist/wcardinal/ui/d-text-piece-style-impl.js.map +1 -0
  106. package/dist/wcardinal/ui/d-text-piece-style.js +2 -0
  107. package/dist/wcardinal/ui/d-text-piece-style.js.map +1 -0
  108. package/dist/wcardinal/ui/d-text-piece.js +2 -0
  109. package/dist/wcardinal/ui/d-text-piece.js.map +1 -0
  110. package/dist/wcardinal/ui/index.js +6 -0
  111. package/dist/wcardinal/ui/index.js.map +1 -1
  112. package/dist/wcardinal/ui/shape/e-shape-container.js +1 -1
  113. package/dist/wcardinal/ui/shape/e-shape-container.js.map +1 -1
  114. package/dist/wcardinal/ui/shape/e-shape-image-like.js +2 -0
  115. package/dist/wcardinal/ui/shape/e-shape-image-like.js.map +1 -0
  116. package/dist/wcardinal/ui/shape/e-shape-renderer.js +7 -13
  117. package/dist/wcardinal/ui/shape/e-shape-renderer.js.map +1 -1
  118. package/dist/wcardinal/ui/shape/e-shape.js.map +1 -1
  119. package/dist/wcardinal/ui/shape/index.js +1 -0
  120. package/dist/wcardinal/ui/shape/index.js.map +1 -1
  121. package/dist/wcardinal/ui/shape/variant/create-image-sdf.js +4 -4
  122. package/dist/wcardinal/ui/shape/variant/create-image-sdf.js.map +1 -1
  123. package/dist/wcardinal/ui/shape/variant/create-image.js +2 -2
  124. package/dist/wcardinal/ui/shape/variant/create-image.js.map +1 -1
  125. package/dist/wcardinal/ui/shape/variant/e-shape-base.js +0 -25
  126. package/dist/wcardinal/ui/shape/variant/e-shape-base.js.map +1 -1
  127. package/dist/wcardinal/ui/shape/variant/e-shape-group-viewer.js +6 -0
  128. package/dist/wcardinal/ui/shape/variant/e-shape-group-viewer.js.map +1 -1
  129. package/dist/wcardinal/ui/shape/variant/e-shape-group.js +6 -0
  130. package/dist/wcardinal/ui/shape/variant/e-shape-group.js.map +1 -1
  131. package/dist/wcardinal/ui/shape/variant/e-shape-image-sdf.js.map +1 -1
  132. package/dist/wcardinal/ui/shape/variant/e-shape-image.js.map +1 -1
  133. package/dist/wcardinal/ui/shape/variant/e-shape-primitive.js +15 -2
  134. package/dist/wcardinal/ui/shape/variant/e-shape-primitive.js.map +1 -1
  135. package/dist/wcardinal/ui/shape/variant/to-image-element.js +9 -3
  136. package/dist/wcardinal/ui/shape/variant/to-image-element.js.map +1 -1
  137. package/dist/wcardinal/ui/theme/dark/d-theme-dark-input.js +6 -0
  138. package/dist/wcardinal/ui/theme/dark/d-theme-dark-input.js.map +1 -1
  139. package/dist/wcardinal/ui/theme/dark/d-theme-dark-pagination-button-last.js.map +1 -1
  140. package/dist/wcardinal/ui/theme/dark/d-theme-dark-pagination-button-next.js.map +1 -1
  141. package/dist/wcardinal/ui/theme/dark/d-theme-dark-pagination-button-previous.js.map +1 -1
  142. package/dist/wcardinal/ui/theme/dark/d-theme-dark-pagination-button-top.js.map +1 -1
  143. package/dist/wcardinal/ui/theme/dark/d-theme-dark-pagination-dots.js.map +1 -1
  144. package/dist/wcardinal/ui/theme/dark/d-theme-dark-select-multiple.js +9 -9
  145. package/dist/wcardinal/ui/theme/dark/d-theme-dark-select-multiple.js.map +1 -1
  146. package/dist/wcardinal/ui/theme/dark/d-theme-dark-select.js +7 -7
  147. package/dist/wcardinal/ui/theme/dark/d-theme-dark-select.js.map +1 -1
  148. package/dist/wcardinal/ui/theme/white/d-theme-white-input.js +6 -0
  149. package/dist/wcardinal/ui/theme/white/d-theme-white-input.js.map +1 -1
  150. package/dist/wcardinal/ui/theme/white/d-theme-white-pagination-button-last.js.map +1 -1
  151. package/dist/wcardinal/ui/theme/white/d-theme-white-pagination-button-next.js.map +1 -1
  152. package/dist/wcardinal/ui/theme/white/d-theme-white-pagination-button-previous.js.map +1 -1
  153. package/dist/wcardinal/ui/theme/white/d-theme-white-pagination-button-top.js.map +1 -1
  154. package/dist/wcardinal/ui/theme/white/d-theme-white-pagination-dots.js.map +1 -1
  155. package/dist/wcardinal/ui/theme/white/d-theme-white-select-multiple.js +9 -9
  156. package/dist/wcardinal/ui/theme/white/d-theme-white-select-multiple.js.map +1 -1
  157. package/dist/wcardinal/ui/theme/white/d-theme-white-select.js +7 -7
  158. package/dist/wcardinal/ui/theme/white/d-theme-white-select.js.map +1 -1
  159. package/dist/wcardinal/ui/util/dynamic-atlas-item-image.js +18 -9
  160. package/dist/wcardinal/ui/util/dynamic-atlas-item-image.js.map +1 -1
  161. package/dist/wcardinal/ui/util/dynamic-sdf-font-atlas.js +1 -1
  162. package/dist/wcardinal/ui/util/dynamic-sdf-font-atlas.js.map +1 -1
  163. package/dist/wcardinal/ui/util/dynamic-sdf-font-generator.js +1 -3
  164. package/dist/wcardinal/ui/util/dynamic-sdf-font-generator.js.map +1 -1
  165. package/dist/wcardinal-ui-theme-dark-en-us.js +23 -17
  166. package/dist/wcardinal-ui-theme-dark-en-us.min.js +2 -2
  167. package/dist/wcardinal-ui-theme-dark-en-us.min.js.map +1 -1
  168. package/dist/wcardinal-ui-theme-dark-ja-jp.js +23 -17
  169. package/dist/wcardinal-ui-theme-dark-ja-jp.min.js +2 -2
  170. package/dist/wcardinal-ui-theme-dark-ja-jp.min.js.map +1 -1
  171. package/dist/wcardinal-ui-theme-dark.js +23 -17
  172. package/dist/wcardinal-ui-theme-dark.min.js +2 -2
  173. package/dist/wcardinal-ui-theme-white-en-us.js +23 -17
  174. package/dist/wcardinal-ui-theme-white-en-us.min.js +2 -2
  175. package/dist/wcardinal-ui-theme-white-en-us.min.js.map +1 -1
  176. package/dist/wcardinal-ui-theme-white-ja-jp.js +23 -17
  177. package/dist/wcardinal-ui-theme-white-ja-jp.min.js +2 -2
  178. package/dist/wcardinal-ui-theme-white-ja-jp.min.js.map +1 -1
  179. package/dist/wcardinal-ui-theme-white.js +23 -17
  180. package/dist/wcardinal-ui-theme-white.min.js +2 -2
  181. package/dist/wcardinal-ui.cjs.js +1113 -787
  182. package/dist/wcardinal-ui.js +1068 -754
  183. package/dist/wcardinal-ui.min.js +2 -2
  184. package/dist/wcardinal-ui.min.js.map +1 -1
  185. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"d-table-body-cell-select-promise.js","sourceRoot":"","sources":["../../../src/main/typescript/wcardinal/ui/d-table-body-cell-select-promise.ts"],"names":[],"mappings":"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","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { InteractionEvent } from \"pixi.js\";\nimport { DButton, DButtonOptions, DThemeButton } from \"./d-button\";\nimport { DTableBodyCell, DTableBodyCellOnChange } from \"./d-table-body-cell\";\nimport { DTableBodyCells } from \"./d-table-body-cells\";\nimport { DTableColumn } from \"./d-table-column\";\nimport { DTableDataSupplimental } from \"./d-table-data\";\n\nexport interface DTableBodyCellSelectPromiseOptions<\n\tROW = unknown,\n\tVALUE = unknown,\n\tTHEME extends DThemeTableBodyCellSelectPromise<VALUE> = DThemeTableBodyCellSelectPromise<VALUE>\n> extends DButtonOptions<VALUE | null, THEME> {\n\t/**\n\t * False to stop synchronizing the resolved value and the text.\n\t */\n\tsync?: boolean;\n}\n\nexport interface DThemeTableBodyCellSelectPromise<VALUE = unknown>\n\textends DThemeButton<VALUE | null> {\n\tisSyncEnabled(): boolean;\n}\n\nexport class DTableBodyCellSelectPromise<\n\t\tROW = unknown,\n\t\tVALUE = unknown,\n\t\tTHEME extends\n\t\t\tDThemeTableBodyCellSelectPromise<VALUE> = DThemeTableBodyCellSelectPromise<VALUE>,\n\t\tOPTIONS extends DTableBodyCellSelectPromiseOptions<\n\t\t\tROW,\n\t\t\tVALUE,\n\t\t\tTHEME\n\t\t> = DTableBodyCellSelectPromiseOptions<ROW, VALUE, THEME>\n\t>\n\textends DButton<VALUE | null, THEME, OPTIONS>\n\timplements DTableBodyCell<ROW, VALUE | null>\n{\n\tprotected _row?: ROW;\n\tprotected _rowIndex: number;\n\tprotected _columnIndex: number;\n\tprotected _column: DTableColumn<ROW, VALUE | null>;\n\tprotected _onChange: DTableBodyCellOnChange<ROW, VALUE | null>;\n\tprotected _isSyncEnabled: boolean;\n\n\tconstructor(\n\t\tcolumnIndex: number,\n\t\tcolumn: DTableColumn<ROW, VALUE | null>,\n\t\tonChange: DTableBodyCellOnChange<ROW, VALUE | null>,\n\t\toptions?: OPTIONS\n\t) {\n\t\tsuper(options);\n\n\t\tthis._rowIndex = -1;\n\t\tthis._columnIndex = columnIndex;\n\t\tthis._column = column;\n\t\tthis._onChange = onChange;\n\t\tthis._isSyncEnabled = options?.sync ?? this.theme.isSyncEnabled();\n\t}\n\n\tprotected onActivate(e?: InteractionEvent | KeyboardEvent | MouseEvent | TouchEvent): void {\n\t\tsuper.onActivate(e);\n\t\tconst selecting = this._column.selecting;\n\t\tconst promise = selecting.promise;\n\t\tif (promise) {\n\t\t\tpromise().then((newValue: VALUE | null): void => {\n\t\t\t\tif (this._isSyncEnabled) {\n\t\t\t\t\tconst oldValue = this._textValueComputed ?? null;\n\t\t\t\t\tif (newValue !== oldValue) {\n\t\t\t\t\t\tthis.text = newValue;\n\t\t\t\t\t\tthis.onValueChange(newValue, oldValue);\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\tthis.onValueChange(newValue, null);\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\t}\n\n\tprotected onValueChange(newValue: VALUE | null, oldValue: VALUE | null): void {\n\t\tconst row = this._row;\n\t\tif (row !== undefined) {\n\t\t\tconst rowIndex = this._rowIndex;\n\t\t\tconst columnIndex = this._columnIndex;\n\t\t\tconst column = this._column;\n\t\t\tcolumn.setter(row, columnIndex, newValue);\n\t\t\tthis.emit(\"change\", newValue, oldValue, this);\n\t\t\tthis._onChange(newValue, oldValue, row, rowIndex, columnIndex, column, this);\n\t\t}\n\t}\n\n\tget row(): ROW | undefined {\n\t\treturn this._row;\n\t}\n\n\tget rowIndex(): number {\n\t\treturn this._rowIndex;\n\t}\n\n\tget columnIndex(): number {\n\t\treturn this._columnIndex;\n\t}\n\n\tget column(): DTableColumn<ROW, VALUE | null> {\n\t\treturn this._column;\n\t}\n\n\tget value(): VALUE | null {\n\t\tconst textValueComputed = this._textValueComputed;\n\t\tif (textValueComputed !== undefined) {\n\t\t\treturn textValueComputed;\n\t\t}\n\t\treturn null;\n\t}\n\n\tset value(value: VALUE | null) {\n\t\tthis.text = value;\n\t}\n\n\tset(\n\t\tvalue: unknown,\n\t\trow: ROW,\n\t\tsupplimental: DTableDataSupplimental | null,\n\t\trowIndex: number,\n\t\tcolumnIndex: number,\n\t\tforcibly?: boolean\n\t): void {\n\t\tthis._row = row;\n\t\tthis._rowIndex = rowIndex;\n\t\tif (forcibly) {\n\t\t\tthis._textValue = value as VALUE | null;\n\t\t\tthis._textValueComputed = value as VALUE | null;\n\t\t\tthis.onTextChange();\n\t\t\tthis.createOrUpdateText();\n\t\t} else {\n\t\t\tthis.text = value as VALUE | null;\n\t\t}\n\n\t\tDTableBodyCells.set(this, row, columnIndex, this._column);\n\t}\n\n\tunset(): void {\n\t\tthis._row = undefined;\n\t\tthis._rowIndex = -1;\n\t}\n\n\tprotected getType(): string {\n\t\treturn \"DTableBodyCellSelectPromise\";\n\t}\n}\n"]}
1
+ {"version":3,"file":"d-table-body-cell-select-promise.js","sourceRoot":"","sources":["../../../src/main/typescript/wcardinal/ui/d-table-body-cell-select-promise.ts"],"names":[],"mappings":"AAAA;;;GAGG;;AAGH,OAAO,EAAE,OAAO,EAAgC,MAAM,YAAY,CAAC;AAEnE,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAoBvD;IAWS,+CAAqC;IAU7C,qCACC,WAAmB,EACnB,MAAuC,EACvC,QAAmD,EACnD,OAAiB;;QAJlB,YAMC,kBAAM,OAAO,CAAC,SAOd;QALA,KAAI,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC;QACpB,KAAI,CAAC,YAAY,GAAG,WAAW,CAAC;QAChC,KAAI,CAAC,OAAO,GAAG,MAAM,CAAC;QACtB,KAAI,CAAC,SAAS,GAAG,QAAQ,CAAC;QAC1B,KAAI,CAAC,cAAc,GAAG,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,IAAI,mCAAI,KAAI,CAAC,KAAK,CAAC,aAAa,EAAE,CAAC;;IACnE,CAAC;IAES,gDAAU,GAApB,UAAqB,CAA8D;QAAnF,iBAiBC;QAhBA,iBAAM,UAAU,YAAC,CAAC,CAAC,CAAC;QACpB,IAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC;QACzC,IAAM,OAAO,GAAG,SAAS,CAAC,OAAO,CAAC;QAClC,IAAI,OAAO,EAAE;YACZ,OAAO,EAAE,CAAC,IAAI,CAAC,UAAC,QAAsB;;gBACrC,IAAI,KAAI,CAAC,cAAc,EAAE;oBACxB,IAAM,QAAQ,GAAG,MAAA,KAAI,CAAC,IAAI,CAAC,QAAQ,mCAAI,IAAI,CAAC;oBAC5C,IAAI,QAAQ,KAAK,QAAQ,EAAE;wBAC1B,KAAI,CAAC,IAAI,GAAG,QAAQ,CAAC;wBACrB,KAAI,CAAC,aAAa,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;qBACvC;iBACD;qBAAM;oBACN,KAAI,CAAC,aAAa,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;iBACnC;YACF,CAAC,CAAC,CAAC;SACH;IACF,CAAC;IAES,mDAAa,GAAvB,UAAwB,QAAsB,EAAE,QAAsB;QACrE,IAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC;QACtB,IAAI,GAAG,KAAK,SAAS,EAAE;YACtB,IAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC;YAChC,IAAM,WAAW,GAAG,IAAI,CAAC,YAAY,CAAC;YACtC,IAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC;YAC5B,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,WAAW,EAAE,QAAQ,CAAC,CAAC;YAC1C,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAC;YAC9C,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,QAAQ,EAAE,GAAG,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;SAC7E;IACF,CAAC;IAED,sBAAI,4CAAG;aAAP;YACC,OAAO,IAAI,CAAC,IAAI,CAAC;QAClB,CAAC;;;OAAA;IAED,sBAAI,iDAAQ;aAAZ;YACC,OAAO,IAAI,CAAC,SAAS,CAAC;QACvB,CAAC;;;OAAA;IAED,sBAAI,oDAAW;aAAf;YACC,OAAO,IAAI,CAAC,YAAY,CAAC;QAC1B,CAAC;;;OAAA;IAED,sBAAI,+CAAM;aAAV;YACC,OAAO,IAAI,CAAC,OAAO,CAAC;QACrB,CAAC;;;OAAA;IAED,sBAAI,8CAAK;aAAT;;YACC,OAAO,MAAA,IAAI,CAAC,IAAI,CAAC,QAAQ,mCAAI,IAAI,CAAC;QACnC,CAAC;aAED,UAAU,KAAmB;YAC5B,IAAI,CAAC,IAAI,GAAG,KAAK,CAAC;QACnB,CAAC;;;OAJA;IAMD,yCAAG,GAAH,UACC,KAAc,EACd,GAAQ,EACR,YAA2C,EAC3C,QAAgB,EAChB,WAAmB,EACnB,QAAkB;QAElB,IAAI,CAAC,IAAI,GAAG,GAAG,CAAC;QAChB,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC;QAC1B,IAAI,QAAQ,EAAE;YACb,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAqB,EAAE,IAAI,CAAC,CAAC;SAChD;aAAM;YACN,IAAI,CAAC,IAAI,GAAG,KAAqB,CAAC;SAClC;QAED,eAAe,CAAC,GAAG,CAAC,IAAI,EAAE,GAAG,EAAE,WAAW,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;IAC3D,CAAC;IAED,2CAAK,GAAL;QACC,IAAI,CAAC,IAAI,GAAG,SAAS,CAAC;QACtB,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC;IACrB,CAAC;IAES,6CAAO,GAAjB;QACC,OAAO,6BAA6B,CAAC;IACtC,CAAC;IACF,kCAAC;AAAD,CAAC,AAtHD,CAWS,OAAO,GA2Gf","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { InteractionEvent } from \"pixi.js\";\nimport { DButton, DButtonOptions, DThemeButton } from \"./d-button\";\nimport { DTableBodyCell, DTableBodyCellOnChange } from \"./d-table-body-cell\";\nimport { DTableBodyCells } from \"./d-table-body-cells\";\nimport { DTableColumn } from \"./d-table-column\";\nimport { DTableDataSupplimental } from \"./d-table-data\";\n\nexport interface DTableBodyCellSelectPromiseOptions<\n\tROW = unknown,\n\tVALUE = unknown,\n\tTHEME extends DThemeTableBodyCellSelectPromise<VALUE> = DThemeTableBodyCellSelectPromise<VALUE>\n> extends DButtonOptions<VALUE | null, THEME> {\n\t/**\n\t * False to stop synchronizing the resolved value and the text.\n\t */\n\tsync?: boolean;\n}\n\nexport interface DThemeTableBodyCellSelectPromise<VALUE = unknown>\n\textends DThemeButton<VALUE | null> {\n\tisSyncEnabled(): boolean;\n}\n\nexport class DTableBodyCellSelectPromise<\n\t\tROW = unknown,\n\t\tVALUE = unknown,\n\t\tTHEME extends\n\t\t\tDThemeTableBodyCellSelectPromise<VALUE> = DThemeTableBodyCellSelectPromise<VALUE>,\n\t\tOPTIONS extends DTableBodyCellSelectPromiseOptions<\n\t\t\tROW,\n\t\t\tVALUE,\n\t\t\tTHEME\n\t\t> = DTableBodyCellSelectPromiseOptions<ROW, VALUE, THEME>\n\t>\n\textends DButton<VALUE | null, THEME, OPTIONS>\n\timplements DTableBodyCell<ROW, VALUE | null>\n{\n\tprotected _row?: ROW;\n\tprotected _rowIndex: number;\n\tprotected _columnIndex: number;\n\tprotected _column: DTableColumn<ROW, VALUE | null>;\n\tprotected _onChange: DTableBodyCellOnChange<ROW, VALUE | null>;\n\tprotected _isSyncEnabled: boolean;\n\n\tconstructor(\n\t\tcolumnIndex: number,\n\t\tcolumn: DTableColumn<ROW, VALUE | null>,\n\t\tonChange: DTableBodyCellOnChange<ROW, VALUE | null>,\n\t\toptions?: OPTIONS\n\t) {\n\t\tsuper(options);\n\n\t\tthis._rowIndex = -1;\n\t\tthis._columnIndex = columnIndex;\n\t\tthis._column = column;\n\t\tthis._onChange = onChange;\n\t\tthis._isSyncEnabled = options?.sync ?? this.theme.isSyncEnabled();\n\t}\n\n\tprotected onActivate(e?: InteractionEvent | KeyboardEvent | MouseEvent | TouchEvent): void {\n\t\tsuper.onActivate(e);\n\t\tconst selecting = this._column.selecting;\n\t\tconst promise = selecting.promise;\n\t\tif (promise) {\n\t\t\tpromise().then((newValue: VALUE | null): void => {\n\t\t\t\tif (this._isSyncEnabled) {\n\t\t\t\t\tconst oldValue = this.text.computed ?? null;\n\t\t\t\t\tif (newValue !== oldValue) {\n\t\t\t\t\t\tthis.text = newValue;\n\t\t\t\t\t\tthis.onValueChange(newValue, oldValue);\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\tthis.onValueChange(newValue, null);\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\t}\n\n\tprotected onValueChange(newValue: VALUE | null, oldValue: VALUE | null): void {\n\t\tconst row = this._row;\n\t\tif (row !== undefined) {\n\t\t\tconst rowIndex = this._rowIndex;\n\t\t\tconst columnIndex = this._columnIndex;\n\t\t\tconst column = this._column;\n\t\t\tcolumn.setter(row, columnIndex, newValue);\n\t\t\tthis.emit(\"change\", newValue, oldValue, this);\n\t\t\tthis._onChange(newValue, oldValue, row, rowIndex, columnIndex, column, this);\n\t\t}\n\t}\n\n\tget row(): ROW | undefined {\n\t\treturn this._row;\n\t}\n\n\tget rowIndex(): number {\n\t\treturn this._rowIndex;\n\t}\n\n\tget columnIndex(): number {\n\t\treturn this._columnIndex;\n\t}\n\n\tget column(): DTableColumn<ROW, VALUE | null> {\n\t\treturn this._column;\n\t}\n\n\tget value(): VALUE | null {\n\t\treturn this.text.computed ?? null;\n\t}\n\n\tset value(value: VALUE | null) {\n\t\tthis.text = value;\n\t}\n\n\tset(\n\t\tvalue: unknown,\n\t\trow: ROW,\n\t\tsupplimental: DTableDataSupplimental | null,\n\t\trowIndex: number,\n\t\tcolumnIndex: number,\n\t\tforcibly?: boolean\n\t): void {\n\t\tthis._row = row;\n\t\tthis._rowIndex = rowIndex;\n\t\tif (forcibly) {\n\t\t\tthis.text.setValue(value as VALUE | null, true);\n\t\t} else {\n\t\t\tthis.text = value as VALUE | null;\n\t\t}\n\n\t\tDTableBodyCells.set(this, row, columnIndex, this._column);\n\t}\n\n\tunset(): void {\n\t\tthis._row = undefined;\n\t\tthis._rowIndex = -1;\n\t}\n\n\tprotected getType(): string {\n\t\treturn \"DTableBodyCellSelectPromise\";\n\t}\n}\n"]}
@@ -63,24 +63,21 @@ var DTableBodyCellTime = /** @class */ (function (_super) {
63
63
  this._rowIndex = rowIndex;
64
64
  if (value instanceof Date) {
65
65
  if (forcibly) {
66
- this._textValue = value;
67
- this._textValueComputed = value;
68
- this.onTextChange();
69
- this.createOrUpdateText();
66
+ this.text.setValue(value, true);
70
67
  }
71
68
  else {
72
69
  this.text = value;
73
70
  }
74
71
  }
75
72
  else if (isNumber(value)) {
76
- var textValueComputed = this._textValueComputed;
77
- if (textValueComputed == null) {
73
+ var text = this.text;
74
+ var computed = text.computed;
75
+ if (computed == null) {
78
76
  this.text = new Date(value);
79
77
  }
80
- else if (textValueComputed.getTime() !== value) {
81
- textValueComputed.setTime(value);
82
- this.onTextChange();
83
- this.createOrUpdateText();
78
+ else if (computed.getTime() !== value) {
79
+ computed.setTime(value);
80
+ text.compute(true);
84
81
  }
85
82
  }
86
83
  DTableBodyCells.set(this, row, columnIndex, this._column);
@@ -1 +1 @@
1
- {"version":3,"file":"d-table-body-cell-time.js","sourceRoot":"","sources":["../../../src/main/typescript/wcardinal/ui/d-table-body-cell-time.ts"],"names":[],"mappings":"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","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { DButtonTime, DButtonTimeOptions, DThemeButtonTime } from \"./d-button-time\";\nimport { DTableBodyCell, DTableBodyCellOnChange } from \"./d-table-body-cell\";\nimport { DTableBodyCells } from \"./d-table-body-cells\";\nimport { DTableColumn } from \"./d-table-column\";\nimport { DTableDataSupplimental } from \"./d-table-data\";\nimport { isNumber } from \"./util/is-number\";\n\nexport interface DTableBodyCellTimeOptions<\n\tROW = unknown,\n\tTHEME extends DThemeTableBodyCellTime = DThemeTableBodyCellTime\n> extends DButtonTimeOptions<THEME> {}\n\nexport interface DThemeTableBodyCellTime extends DThemeButtonTime {}\n\nexport class DTableBodyCellTime<\n\t\tROW = unknown,\n\t\tTHEME extends DThemeTableBodyCellTime = DThemeTableBodyCellTime,\n\t\tOPTIONS extends DTableBodyCellTimeOptions<ROW, THEME> = DTableBodyCellTimeOptions<\n\t\t\tROW,\n\t\t\tTHEME\n\t\t>\n\t>\n\textends DButtonTime<THEME, OPTIONS>\n\timplements DTableBodyCell<ROW, Date>\n{\n\tprotected _row?: ROW;\n\tprotected _rowIndex: number;\n\tprotected _columnIndex: number;\n\tprotected _column: DTableColumn<ROW, Date>;\n\tprotected _onChange: DTableBodyCellOnChange<ROW, Date>;\n\n\tconstructor(\n\t\tcolumnIndex: number,\n\t\tcolumn: DTableColumn<ROW, Date>,\n\t\tonChange: DTableBodyCellOnChange<ROW, Date>,\n\t\toptions?: OPTIONS\n\t) {\n\t\tsuper(options);\n\n\t\tthis._rowIndex = -1;\n\t\tthis._columnIndex = columnIndex;\n\t\tthis._column = column;\n\t\tthis._onChange = onChange;\n\t}\n\n\tprotected onValueChange(newValue: Date, oldValue: Date): void {\n\t\tconst row = this._row;\n\t\tif (row !== undefined) {\n\t\t\tconst rowIndex = this._rowIndex;\n\t\t\tconst columnIndex = this._columnIndex;\n\t\t\tconst column = this._column;\n\t\t\tcolumn.setter(row, columnIndex, newValue);\n\t\t\tsuper.onValueChange(newValue, oldValue);\n\t\t\tthis._onChange(newValue, oldValue, row, rowIndex, columnIndex, column, this);\n\t\t} else {\n\t\t\tsuper.onValueChange(newValue, oldValue);\n\t\t}\n\t}\n\n\tget row(): ROW | undefined {\n\t\treturn this._row;\n\t}\n\n\tget rowIndex(): number {\n\t\treturn this._rowIndex;\n\t}\n\n\tget columnIndex(): number {\n\t\treturn this._columnIndex;\n\t}\n\n\tget column(): DTableColumn<ROW, Date> {\n\t\treturn this._column;\n\t}\n\n\tset(\n\t\tvalue: unknown,\n\t\trow: ROW,\n\t\tsupplimental: DTableDataSupplimental | null,\n\t\trowIndex: number,\n\t\tcolumnIndex: number,\n\t\tforcibly?: boolean\n\t): void {\n\t\tthis._row = row;\n\t\tthis._rowIndex = rowIndex;\n\t\tif (value instanceof Date) {\n\t\t\tif (forcibly) {\n\t\t\t\tthis._textValue = value;\n\t\t\t\tthis._textValueComputed = value;\n\t\t\t\tthis.onTextChange();\n\t\t\t\tthis.createOrUpdateText();\n\t\t\t} else {\n\t\t\t\tthis.text = value;\n\t\t\t}\n\t\t} else if (isNumber(value)) {\n\t\t\tconst textValueComputed = this._textValueComputed;\n\t\t\tif (textValueComputed == null) {\n\t\t\t\tthis.text = new Date(value);\n\t\t\t} else if (textValueComputed.getTime() !== value) {\n\t\t\t\ttextValueComputed.setTime(value);\n\t\t\t\tthis.onTextChange();\n\t\t\t\tthis.createOrUpdateText();\n\t\t\t}\n\t\t}\n\n\t\tDTableBodyCells.set(this, row, columnIndex, this._column);\n\t}\n\n\tunset(): void {\n\t\tthis._row = undefined;\n\t\tthis._rowIndex = -1;\n\t}\n\n\tprotected getType(): string {\n\t\treturn \"DTableBodyCellTime\";\n\t}\n}\n"]}
1
+ {"version":3,"file":"d-table-body-cell-time.js","sourceRoot":"","sources":["../../../src/main/typescript/wcardinal/ui/d-table-body-cell-time.ts"],"names":[],"mappings":"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","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { DButtonTime, DButtonTimeOptions, DThemeButtonTime } from \"./d-button-time\";\nimport { DTableBodyCell, DTableBodyCellOnChange } from \"./d-table-body-cell\";\nimport { DTableBodyCells } from \"./d-table-body-cells\";\nimport { DTableColumn } from \"./d-table-column\";\nimport { DTableDataSupplimental } from \"./d-table-data\";\nimport { isNumber } from \"./util/is-number\";\n\nexport interface DTableBodyCellTimeOptions<\n\tROW = unknown,\n\tTHEME extends DThemeTableBodyCellTime = DThemeTableBodyCellTime\n> extends DButtonTimeOptions<THEME> {}\n\nexport interface DThemeTableBodyCellTime extends DThemeButtonTime {}\n\nexport class DTableBodyCellTime<\n\t\tROW = unknown,\n\t\tTHEME extends DThemeTableBodyCellTime = DThemeTableBodyCellTime,\n\t\tOPTIONS extends DTableBodyCellTimeOptions<ROW, THEME> = DTableBodyCellTimeOptions<\n\t\t\tROW,\n\t\t\tTHEME\n\t\t>\n\t>\n\textends DButtonTime<THEME, OPTIONS>\n\timplements DTableBodyCell<ROW, Date>\n{\n\tprotected _row?: ROW;\n\tprotected _rowIndex: number;\n\tprotected _columnIndex: number;\n\tprotected _column: DTableColumn<ROW, Date>;\n\tprotected _onChange: DTableBodyCellOnChange<ROW, Date>;\n\n\tconstructor(\n\t\tcolumnIndex: number,\n\t\tcolumn: DTableColumn<ROW, Date>,\n\t\tonChange: DTableBodyCellOnChange<ROW, Date>,\n\t\toptions?: OPTIONS\n\t) {\n\t\tsuper(options);\n\n\t\tthis._rowIndex = -1;\n\t\tthis._columnIndex = columnIndex;\n\t\tthis._column = column;\n\t\tthis._onChange = onChange;\n\t}\n\n\tprotected onValueChange(newValue: Date, oldValue: Date): void {\n\t\tconst row = this._row;\n\t\tif (row !== undefined) {\n\t\t\tconst rowIndex = this._rowIndex;\n\t\t\tconst columnIndex = this._columnIndex;\n\t\t\tconst column = this._column;\n\t\t\tcolumn.setter(row, columnIndex, newValue);\n\t\t\tsuper.onValueChange(newValue, oldValue);\n\t\t\tthis._onChange(newValue, oldValue, row, rowIndex, columnIndex, column, this);\n\t\t} else {\n\t\t\tsuper.onValueChange(newValue, oldValue);\n\t\t}\n\t}\n\n\tget row(): ROW | undefined {\n\t\treturn this._row;\n\t}\n\n\tget rowIndex(): number {\n\t\treturn this._rowIndex;\n\t}\n\n\tget columnIndex(): number {\n\t\treturn this._columnIndex;\n\t}\n\n\tget column(): DTableColumn<ROW, Date> {\n\t\treturn this._column;\n\t}\n\n\tset(\n\t\tvalue: unknown,\n\t\trow: ROW,\n\t\tsupplimental: DTableDataSupplimental | null,\n\t\trowIndex: number,\n\t\tcolumnIndex: number,\n\t\tforcibly?: boolean\n\t): void {\n\t\tthis._row = row;\n\t\tthis._rowIndex = rowIndex;\n\t\tif (value instanceof Date) {\n\t\t\tif (forcibly) {\n\t\t\t\tthis.text.setValue(value, true);\n\t\t\t} else {\n\t\t\t\tthis.text = value;\n\t\t\t}\n\t\t} else if (isNumber(value)) {\n\t\t\tconst text = this.text;\n\t\t\tconst computed = text.computed;\n\t\t\tif (computed == null) {\n\t\t\t\tthis.text = new Date(value);\n\t\t\t} else if (computed.getTime() !== value) {\n\t\t\t\tcomputed.setTime(value);\n\t\t\t\ttext.compute(true);\n\t\t\t}\n\t\t}\n\n\t\tDTableBodyCells.set(this, row, columnIndex, this._column);\n\t}\n\n\tunset(): void {\n\t\tthis._row = undefined;\n\t\tthis._rowIndex = -1;\n\t}\n\n\tprotected getType(): string {\n\t\treturn \"DTableBodyCellTime\";\n\t}\n}\n"]}
@@ -3,62 +3,11 @@
3
3
  * SPDX-License-Identifier: Apache-2.0
4
4
  */
5
5
  import { __extends } from "tslib";
6
- import { DAlignHorizontal } from "./d-align-horizontal";
7
- import { DAlignVertical } from "./d-align-vertical";
8
6
  import { DApplications } from "./d-applications";
9
7
  import { DBase } from "./d-base";
8
+ import { DImagePieceLayouter } from "./d-image-piece-layouter";
10
9
  import { DBaseOverflowMaskSimple } from "./d-base-overflow-mask-simple";
11
- import { DDynamicText } from "./d-dynamic-text";
12
- import { isFunction } from "./util/is-function";
13
- import { toEnum } from "./util/to-enum";
14
- var toTextStyle = function (theme, options, state) {
15
- var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l;
16
- var style = (_a = options === null || options === void 0 ? void 0 : options.text) === null || _a === void 0 ? void 0 : _a.style;
17
- if (style != null) {
18
- var fill = (_b = style.fill) !== null && _b !== void 0 ? _b : theme.getColor(state);
19
- var fontSize = (_c = style.fontSize) !== null && _c !== void 0 ? _c : theme.getFontSize();
20
- var fontFamily = (_d = style.fontFamily) !== null && _d !== void 0 ? _d : theme.getFontFamilly();
21
- var fontWeight = (_e = style.fontWeight) !== null && _e !== void 0 ? _e : theme.getFontWeight();
22
- var fontStyle = (_f = style.fontStyle) !== null && _f !== void 0 ? _f : theme.getFontStyle();
23
- var fontVariant = (_g = style.fontVariant) !== null && _g !== void 0 ? _g : theme.getFontVariant();
24
- var clipping = (_h = style.clipping) !== null && _h !== void 0 ? _h : theme.getTextStyleClipping();
25
- var fitting = (_j = style.fitting) !== null && _j !== void 0 ? _j : theme.getTextStyleFitting();
26
- var wordWrap = (_k = style.wordWrap) !== null && _k !== void 0 ? _k : theme.getTextStyleWordWrap();
27
- var lineHeight = (_l = style.lineHeight) !== null && _l !== void 0 ? _l : theme.getLineHeight();
28
- return {
29
- fill: fill,
30
- fontSize: fontSize,
31
- fontFamily: fontFamily,
32
- fontWeight: fontWeight,
33
- fontStyle: fontStyle,
34
- fontVariant: fontVariant,
35
- clipping: clipping,
36
- fitting: fitting,
37
- wordWrap: wordWrap,
38
- lineHeight: lineHeight
39
- };
40
- }
41
- return {
42
- fill: theme.getColor(state),
43
- fontSize: theme.getFontSize(),
44
- fontFamily: theme.getFontFamilly(),
45
- fontWeight: theme.getFontWeight(),
46
- fontStyle: theme.getFontStyle(),
47
- fontVariant: theme.getFontVariant(),
48
- clipping: theme.getTextStyleClipping(),
49
- fitting: theme.getTextStyleFitting(),
50
- wordWrap: theme.getTextStyleWordWrap(),
51
- lineHeight: theme.getLineHeight()
52
- };
53
- };
54
- var toTextAlign = function (theme, options) {
55
- var _a, _b, _c;
56
- var align = (_a = options === null || options === void 0 ? void 0 : options.text) === null || _a === void 0 ? void 0 : _a.align;
57
- return {
58
- vertical: toEnum((_b = align === null || align === void 0 ? void 0 : align.vertical) !== null && _b !== void 0 ? _b : theme.getTextAlignVertical(), DAlignVertical),
59
- horizontal: toEnum((_c = align === null || align === void 0 ? void 0 : align.horizontal) !== null && _c !== void 0 ? _c : theme.getTextAlignHorizontal(), DAlignHorizontal)
60
- };
61
- };
10
+ import { DTextPieceImpl } from "./d-text-piece-impl";
62
11
  /**
63
12
  * A base class for UI classes with a text support.
64
13
  * See {@link DTextBaseEvents} for event defaults.
@@ -69,222 +18,82 @@ var DTextBase = /** @class */ (function (_super) {
69
18
  return _super !== null && _super.apply(this, arguments) || this;
70
19
  }
71
20
  DTextBase.prototype.init = function (options) {
72
- var _a, _b, _c, _d;
73
21
  _super.prototype.init.call(this, options);
74
- var theme = this.theme;
75
- this._textValue = (_b = (_a = options === null || options === void 0 ? void 0 : options.text) === null || _a === void 0 ? void 0 : _a.value) !== null && _b !== void 0 ? _b : theme.newTextValue();
76
- this._textValueComputed = this.computeTextValue();
77
- var text = options === null || options === void 0 ? void 0 : options.text;
78
- this._textColor = text === null || text === void 0 ? void 0 : text.color;
79
- this._textAlpha = text === null || text === void 0 ? void 0 : text.alpha;
80
- this._textStyle = toTextStyle(theme, options, this.state);
81
- this._textAlign = toTextAlign(theme, options);
82
- this._textFormatter = (_c = text === null || text === void 0 ? void 0 : text.formatter) !== null && _c !== void 0 ? _c : theme.getTextFormatter();
83
- this._isTextVisible = true;
84
- this._isOverflowMaskEnabled = (_d = options === null || options === void 0 ? void 0 : options.mask) !== null && _d !== void 0 ? _d : theme.isOverflowMaskEnabled();
85
- this.onTextChange();
86
- this.createOrUpdateText();
22
+ this.getText();
23
+ };
24
+ DTextBase.prototype.getOverflowMask = function () {
25
+ var result = this._overflowMask;
26
+ if (result === undefined) {
27
+ result = this.newOverflowMask();
28
+ this._overflowMask = result;
29
+ }
30
+ return null;
31
+ };
32
+ DTextBase.prototype.newOverflowMask = function () {
33
+ var _a, _b;
34
+ if ((_b = (_a = this._options) === null || _a === void 0 ? void 0 : _a.mask) !== null && _b !== void 0 ? _b : this.theme.isOverflowMaskEnabled()) {
35
+ var result = new DBaseOverflowMaskSimple(this);
36
+ this._reflowable.add(result);
37
+ this.toDirty();
38
+ return result;
39
+ }
40
+ else {
41
+ return null;
42
+ }
87
43
  };
88
44
  Object.defineProperty(DTextBase.prototype, "text", {
89
45
  get: function () {
90
- return this._textValue;
46
+ var _a;
47
+ return ((_a = this._text) !== null && _a !== void 0 ? _a : (this._text = this.newText()));
91
48
  },
92
49
  set: function (text) {
93
- if (this._textValue !== text) {
94
- this._textValue = text;
95
- this.updateTextValue();
96
- }
50
+ this.text.value = text;
97
51
  },
98
52
  enumerable: false,
99
53
  configurable: true
100
54
  });
101
- DTextBase.prototype.onTextChange = function () {
102
- // DO NOTHING
103
- };
104
- DTextBase.prototype.computeTextValue = function () {
105
- var textValue = this._textValue;
106
- if (textValue !== undefined) {
107
- if (isFunction(textValue)) {
108
- var result = textValue(this.state);
109
- if (result !== undefined) {
110
- return result;
111
- }
112
- }
113
- else {
114
- return textValue;
115
- }
116
- }
117
- return this.theme.getTextValue(this.state);
118
- };
119
- DTextBase.prototype.createOrUpdateText = function () {
120
- var textValueComputed = this._textValueComputed;
121
- if (textValueComputed !== undefined) {
122
- var formatted = this._textFormatter(textValueComputed, this);
123
- var text = this._text;
124
- if (text == null) {
125
- if (0 < formatted.length) {
126
- var newText = this.newText();
127
- newText.visible = this._isTextVisible;
128
- this._text = newText;
129
- this.addChild(newText);
130
- this.updateTextPosition(newText);
131
- var overflowMask = this.getOverflowMask();
132
- if (overflowMask) {
133
- newText.mask = overflowMask;
134
- }
135
- newText.text = formatted;
136
- this.toDirty();
137
- DApplications.update(this);
138
- }
139
- }
140
- else if (text.text !== formatted) {
141
- text.text = formatted;
142
- this.toDirty();
143
- DApplications.update(this);
144
- }
145
- }
146
- else {
147
- var text = this._text;
148
- if (text != null && text.text !== "") {
149
- text.text = "";
150
- this.toDirty();
151
- DApplications.update(this);
152
- }
153
- }
55
+ DTextBase.prototype.getText = function () {
56
+ var _a;
57
+ return ((_a = this._text) !== null && _a !== void 0 ? _a : (this._text = this.newText()));
154
58
  };
155
59
  DTextBase.prototype.newText = function () {
156
- return new DDynamicText(this._textStyle);
60
+ var _a;
61
+ return new DTextPieceImpl(this, this.theme, (_a = this._options) === null || _a === void 0 ? void 0 : _a.text);
157
62
  };
158
- DTextBase.prototype.getOverflowMask = function () {
159
- if (this._isOverflowMaskEnabled) {
160
- if (this._overflowMask == null) {
161
- this._overflowMask = new DBaseOverflowMaskSimple(this);
162
- this._reflowable.add(this._overflowMask);
163
- this.toDirty();
164
- }
165
- return this._overflowMask;
166
- }
167
- return null;
63
+ DTextBase.prototype.onReflow = function () {
64
+ _super.prototype.onReflow.call(this);
65
+ this.onReflowTextAndImage();
168
66
  };
169
- DTextBase.prototype.updateTextPosition = function (text) {
170
- var align = this._textAlign;
171
- var padding = this._padding;
67
+ DTextBase.prototype.getLayouter = function () {
68
+ var _a;
69
+ return ((_a = DTextBase.LAYOUTER) !== null && _a !== void 0 ? _a : (DTextBase.LAYOUTER = new DImagePieceLayouter()));
70
+ };
71
+ DTextBase.prototype.onReflowTextAndImage = function () {
72
+ var layouter = this.getLayouter();
73
+ var text = this.getText();
74
+ text.update(layouter);
172
75
  var auto = this._auto;
173
- var textX = 0;
174
- var pleft = padding.getLeft();
175
- var alignHorizontal = align.horizontal;
176
- if (auto.width.isOn || alignHorizontal === DAlignHorizontal.LEFT) {
177
- textX = pleft;
178
- }
179
- else {
180
- var width = this.width;
181
- var textWidth = text.width;
182
- var pright = padding.getRight();
183
- if (alignHorizontal === DAlignHorizontal.CENTER) {
184
- textX = pleft + (width - pleft - pright - textWidth) * 0.5;
185
- }
186
- else {
187
- textX = width - textWidth - pright;
188
- }
189
- }
190
- var textY = 0;
191
- var ptop = padding.getTop();
192
- var alignVertical = align.vertical;
193
- if (auto.height.isOn || alignVertical === DAlignVertical.TOP) {
194
- textY = ptop;
195
- }
196
- else {
197
- var height = this.height;
198
- var textHeight = text.height;
199
- var pbottom = padding.getBottom();
200
- if (alignVertical === DAlignVertical.MIDDLE) {
201
- textY = ptop + (height - ptop - pbottom - textHeight) * 0.5;
202
- }
203
- else {
204
- textY = height - textHeight - pbottom;
205
- }
206
- }
207
- text.position.set(textX, textY);
76
+ layouter.execute(this._padding, text.align, auto.width.isOn ? null : this.width, auto.height.isOn ? null : this.height);
77
+ layouter.clear();
208
78
  };
209
- DTextBase.prototype.getTextColor = function (theme, state) {
210
- var color = this._textColor;
211
- if (color !== undefined) {
212
- if (isFunction(color)) {
213
- var result = color(state);
214
- if (result !== undefined) {
215
- return result;
216
- }
217
- }
218
- else {
219
- return color;
220
- }
79
+ DTextBase.prototype.isRefitable = function (target) {
80
+ if (_super.prototype.isRefitable.call(this, target)) {
81
+ return true;
221
82
  }
222
- return theme.getColor(state);
223
- };
224
- DTextBase.prototype.getTextAlpha = function (theme, state) {
225
- var alpha = this._textAlpha;
226
- if (alpha !== undefined) {
227
- if (isFunction(alpha)) {
228
- var result = alpha(state);
229
- if (result !== undefined) {
230
- return result;
231
- }
232
- }
233
- else {
234
- return alpha;
83
+ if (target != null) {
84
+ var text = this._text;
85
+ if (text != null && target === text.object) {
86
+ return true;
235
87
  }
236
88
  }
237
- return theme.getAlpha(state);
238
- };
239
- DTextBase.prototype.updateTextColor = function (text) {
240
- var theme = this.theme;
241
- var state = this.state;
242
- text.style.fill = this.getTextColor(theme, state);
243
- text.alpha = this.getTextAlpha(theme, state);
244
- };
245
- DTextBase.prototype.updateTextValue = function () {
246
- var newTextValueComputed = this.computeTextValue();
247
- if (this._textValueComputed !== newTextValueComputed) {
248
- this._textValueComputed = newTextValueComputed;
249
- this.onTextChange();
250
- this.createOrUpdateText();
251
- }
252
- };
253
- DTextBase.prototype.updateText = function () {
254
- var text = this._text;
255
- if (text) {
256
- this.updateTextValue();
257
- this.updateTextPosition(text);
258
- this.updateTextColor(text);
259
- }
260
- };
261
- DTextBase.prototype.showText = function () {
262
- var text = this._text;
263
- if (text) {
264
- text.visible = true;
265
- }
266
- this._isTextVisible = true;
267
- };
268
- DTextBase.prototype.hideText = function () {
269
- var text = this._text;
270
- if (text) {
271
- text.visible = false;
272
- }
273
- this._isTextVisible = false;
274
- };
275
- DTextBase.prototype.onReflow = function () {
276
- _super.prototype.onReflow.call(this);
277
- this.updateText();
278
- };
279
- DTextBase.prototype.isRefitable = function (target) {
280
- return _super.prototype.isRefitable.call(this, target) || (target != null && target === this._text);
89
+ return false;
281
90
  };
282
91
  DTextBase.prototype.applyTitle = function () {
283
- var text = this._text;
284
- if (this._title.length <= 0 && text && "clipped" in text && text.clipped) {
92
+ var object = this.text.object;
93
+ if (this._title.length <= 0 && object != null && object.clipped) {
285
94
  var layer = DApplications.getLayer(this);
286
95
  if (layer) {
287
- layer.view.title = text.text;
96
+ layer.view.title = object.text;
288
97
  }
289
98
  }
290
99
  else {
@@ -298,7 +107,6 @@ var DTextBase = /** @class */ (function (_super) {
298
107
  // Text
299
108
  var text = this._text;
300
109
  if (text) {
301
- this._text = null;
302
110
  text.destroy();
303
111
  }
304
112
  // Overflow mask
@@ -1 +1 @@
1
- {"version":3,"file":"d-text-base.js","sourceRoot":"","sources":["../../../src/main/typescript/wcardinal/ui/d-text-base.ts"],"names":[],"mappings":"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","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { Graphics } from \"pixi.js\";\nimport { DAlignHorizontal } from \"./d-align-horizontal\";\nimport { DAlignVertical } from \"./d-align-vertical\";\nimport { DApplications } from \"./d-applications\";\nimport { DBase, DBaseEvents, DBaseOptions, DRefitable, DThemeBase } from \"./d-base\";\nimport { DBaseOverflowMaskSimple } from \"./d-base-overflow-mask-simple\";\nimport { DBaseStateSet } from \"./d-base-state-set\";\nimport { DDynamicText } from \"./d-dynamic-text\";\nimport { DDynamicTextStyleOptions } from \"./d-dynamic-text-style\";\nimport { DDynamicTextStyleWordWrap } from \"./d-dynamic-text-style-word-wrap\";\nimport { DOnOptions } from \"./d-on-options\";\nimport { DStateAwareOrValueMightBe } from \"./d-state-aware\";\nimport { isFunction } from \"./util/is-function\";\nimport { toEnum } from \"./util/to-enum\";\n\n/**\n * {@link DTextBase} text align options.\n */\nexport interface DTextBaseTextAlignOptions {\n\tvertical?: keyof typeof DAlignVertical | DAlignVertical;\n\thorizontal?: keyof typeof DAlignHorizontal | DAlignHorizontal;\n}\n\n/**\n * {@link DTextBase} text options.\n */\nexport interface DTextBaseTextOptions<VALUE = unknown> {\n\tvalue?: DStateAwareOrValueMightBe<VALUE>;\n\tcolor?: DStateAwareOrValueMightBe<number>;\n\talpha?: DStateAwareOrValueMightBe<number>;\n\tstyle?: DDynamicTextStyleOptions;\n\talign?: DTextBaseTextAlignOptions;\n\tformatter?: (value: VALUE, caller: any) => string;\n}\n\n/**\n * {@link DTextBase} events.\n */\nexport interface DTextBaseEvents<VALUE, EMITTER> extends DBaseEvents<EMITTER> {}\n\n/**\n * {@link DTextBase} \"on\" options.\n */\nexport interface DTextBaseOnOptions<VALUE, EMITTER>\n\textends Partial<DTextBaseEvents<VALUE, EMITTER>>,\n\t\tDOnOptions {}\n\n/**\n * {@link DTextBase} options.\n */\nexport interface DTextBaseOptions<\n\tVALUE = unknown,\n\tTHEME extends DThemeTextBase<VALUE> = DThemeTextBase<VALUE>,\n\tEMITTER = any\n> extends DBaseOptions<THEME, EMITTER> {\n\ttext?: DTextBaseTextOptions<VALUE>;\n\tmask?: boolean;\n\ton?: DTextBaseOnOptions<VALUE, EMITTER>;\n}\n\n/**\n * {@link DTextBase} theme.\n */\nexport interface DThemeTextBase<VALUE = unknown> extends DThemeBase {\n\tgetTextFormatter(): (value: VALUE, caller: any) => string;\n\n\t/**\n\t * Returns a new text value.\n\t * Called to initialize a text value if a text value is not given.\n\t */\n\tnewTextValue(): DStateAwareOrValueMightBe<VALUE>;\n\n\t/**\n\t * Returns a text value.\n\t * Called to get a text vale if there is no text value.\n\t *\n\t * @param state a state\n\t */\n\tgetTextValue(state: DBaseStateSet): VALUE | undefined;\n\n\tgetTextAlignVertical(): DAlignVertical;\n\tgetTextAlignHorizontal(): DAlignHorizontal;\n\tgetTextStyleClipping(): boolean;\n\tgetTextStyleFitting(): boolean;\n\tgetTextStyleWordWrap(): DDynamicTextStyleWordWrap;\n\tisOverflowMaskEnabled(): boolean;\n}\n\nexport interface DTextBaseAlign {\n\tvertical: DAlignVertical;\n\thorizontal: DAlignHorizontal;\n}\n\nconst toTextStyle = <VALUE, THEME extends DThemeTextBase<VALUE>>(\n\ttheme: THEME,\n\toptions: DTextBaseOptions<VALUE, THEME> | undefined,\n\tstate: DBaseStateSet\n): DDynamicTextStyleOptions => {\n\tconst style = options?.text?.style;\n\tif (style != null) {\n\t\tconst fill = style.fill ?? theme.getColor(state);\n\t\tconst fontSize = style.fontSize ?? theme.getFontSize();\n\t\tconst fontFamily = style.fontFamily ?? theme.getFontFamilly();\n\t\tconst fontWeight = style.fontWeight ?? theme.getFontWeight();\n\t\tconst fontStyle = style.fontStyle ?? theme.getFontStyle();\n\t\tconst fontVariant = style.fontVariant ?? theme.getFontVariant();\n\t\tconst clipping = style.clipping ?? theme.getTextStyleClipping();\n\t\tconst fitting = style.fitting ?? theme.getTextStyleFitting();\n\t\tconst wordWrap = style.wordWrap ?? theme.getTextStyleWordWrap();\n\t\tconst lineHeight = style.lineHeight ?? theme.getLineHeight();\n\t\treturn {\n\t\t\tfill,\n\t\t\tfontSize,\n\t\t\tfontFamily,\n\t\t\tfontWeight,\n\t\t\tfontStyle,\n\t\t\tfontVariant,\n\t\t\tclipping,\n\t\t\tfitting,\n\t\t\twordWrap,\n\t\t\tlineHeight\n\t\t};\n\t}\n\n\treturn {\n\t\tfill: theme.getColor(state),\n\t\tfontSize: theme.getFontSize(),\n\t\tfontFamily: theme.getFontFamilly(),\n\t\tfontWeight: theme.getFontWeight(),\n\t\tfontStyle: theme.getFontStyle(),\n\t\tfontVariant: theme.getFontVariant(),\n\t\tclipping: theme.getTextStyleClipping(),\n\t\tfitting: theme.getTextStyleFitting(),\n\t\twordWrap: theme.getTextStyleWordWrap(),\n\t\tlineHeight: theme.getLineHeight()\n\t};\n};\n\nconst toTextAlign = <VALUE, THEME extends DThemeTextBase<VALUE>>(\n\ttheme: THEME,\n\toptions?: DTextBaseOptions<VALUE, THEME>\n): DTextBaseAlign => {\n\tconst align = options?.text?.align;\n\treturn {\n\t\tvertical: toEnum(align?.vertical ?? theme.getTextAlignVertical(), DAlignVertical),\n\t\thorizontal: toEnum(align?.horizontal ?? theme.getTextAlignHorizontal(), DAlignHorizontal)\n\t};\n};\n\n/**\n * A base class for UI classes with a text support.\n * See {@link DTextBaseEvents} for event defaults.\n */\nexport class DTextBase<\n\tVALUE = unknown,\n\tTHEME extends DThemeTextBase<VALUE> = DThemeTextBase<VALUE>,\n\tOPTIONS extends DTextBaseOptions<VALUE, THEME> = DTextBaseOptions<VALUE, THEME>\n> extends DBase<THEME, OPTIONS> {\n\tprotected _text?: DDynamicText | null;\n\tprotected _textValue?: DStateAwareOrValueMightBe<VALUE>;\n\tprotected _textValueComputed?: VALUE;\n\tprotected _textColor!: DStateAwareOrValueMightBe<number>;\n\tprotected _textAlpha!: DStateAwareOrValueMightBe<number>;\n\tprotected _textStyle!: DDynamicTextStyleOptions;\n\tprotected _textAlign!: DTextBaseAlign;\n\tprotected _textFormatter!: (value: VALUE, caller: any) => string;\n\tprotected _isOverflowMaskEnabled!: boolean;\n\tprotected _overflowMask?: DBaseOverflowMaskSimple | null;\n\tprotected _isTextVisible!: boolean;\n\n\tprotected init(options?: OPTIONS): void {\n\t\tsuper.init(options);\n\n\t\tconst theme = this.theme;\n\t\tthis._textValue = options?.text?.value ?? theme.newTextValue();\n\t\tthis._textValueComputed = this.computeTextValue();\n\t\tconst text = options?.text;\n\t\tthis._textColor = text?.color;\n\t\tthis._textAlpha = text?.alpha;\n\t\tthis._textStyle = toTextStyle(theme, options, this.state);\n\t\tthis._textAlign = toTextAlign(theme, options);\n\t\tthis._textFormatter = text?.formatter ?? theme.getTextFormatter();\n\t\tthis._isTextVisible = true;\n\t\tthis._isOverflowMaskEnabled = options?.mask ?? theme.isOverflowMaskEnabled();\n\t\tthis.onTextChange();\n\t\tthis.createOrUpdateText();\n\t}\n\n\tset text(text: DStateAwareOrValueMightBe<VALUE>) {\n\t\tif (this._textValue !== text) {\n\t\t\tthis._textValue = text;\n\t\t\tthis.updateTextValue();\n\t\t}\n\t}\n\n\tget text(): DStateAwareOrValueMightBe<VALUE> {\n\t\treturn this._textValue;\n\t}\n\n\tprotected onTextChange(): void {\n\t\t// DO NOTHING\n\t}\n\n\tprotected computeTextValue(): VALUE | undefined {\n\t\tconst textValue = this._textValue;\n\t\tif (textValue !== undefined) {\n\t\t\tif (isFunction(textValue)) {\n\t\t\t\tconst result = textValue(this.state);\n\t\t\t\tif (result !== undefined) {\n\t\t\t\t\treturn result;\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\treturn textValue;\n\t\t\t}\n\t\t}\n\t\treturn this.theme.getTextValue(this.state);\n\t}\n\n\tprotected createOrUpdateText(): void {\n\t\tconst textValueComputed = this._textValueComputed;\n\t\tif (textValueComputed !== undefined) {\n\t\t\tconst formatted = this._textFormatter(textValueComputed, this);\n\t\t\tconst text = this._text;\n\t\t\tif (text == null) {\n\t\t\t\tif (0 < formatted.length) {\n\t\t\t\t\tconst newText = this.newText();\n\t\t\t\t\tnewText.visible = this._isTextVisible;\n\t\t\t\t\tthis._text = newText;\n\t\t\t\t\tthis.addChild(newText);\n\t\t\t\t\tthis.updateTextPosition(newText);\n\t\t\t\t\tconst overflowMask = this.getOverflowMask();\n\t\t\t\t\tif (overflowMask) {\n\t\t\t\t\t\tnewText.mask = overflowMask;\n\t\t\t\t\t}\n\t\t\t\t\tnewText.text = formatted;\n\t\t\t\t\tthis.toDirty();\n\t\t\t\t\tDApplications.update(this);\n\t\t\t\t}\n\t\t\t} else if (text.text !== formatted) {\n\t\t\t\ttext.text = formatted;\n\t\t\t\tthis.toDirty();\n\t\t\t\tDApplications.update(this);\n\t\t\t}\n\t\t} else {\n\t\t\tconst text = this._text;\n\t\t\tif (text != null && text.text !== \"\") {\n\t\t\t\ttext.text = \"\";\n\t\t\t\tthis.toDirty();\n\t\t\t\tDApplications.update(this);\n\t\t\t}\n\t\t}\n\t}\n\n\tprotected newText(): DDynamicText {\n\t\treturn new DDynamicText(this._textStyle);\n\t}\n\n\tgetOverflowMask(): Graphics | null {\n\t\tif (this._isOverflowMaskEnabled) {\n\t\t\tif (this._overflowMask == null) {\n\t\t\t\tthis._overflowMask = new DBaseOverflowMaskSimple(this);\n\t\t\t\tthis._reflowable.add(this._overflowMask);\n\t\t\t\tthis.toDirty();\n\t\t\t}\n\t\t\treturn this._overflowMask;\n\t\t}\n\t\treturn null;\n\t}\n\n\tprotected updateTextPosition(text: DDynamicText): void {\n\t\tconst align = this._textAlign;\n\t\tconst padding = this._padding;\n\t\tconst auto = this._auto;\n\n\t\tlet textX = 0;\n\t\tconst pleft = padding.getLeft();\n\t\tconst alignHorizontal = align.horizontal;\n\t\tif (auto.width.isOn || alignHorizontal === DAlignHorizontal.LEFT) {\n\t\t\ttextX = pleft;\n\t\t} else {\n\t\t\tconst width = this.width;\n\t\t\tconst textWidth = text.width;\n\t\t\tconst pright = padding.getRight();\n\t\t\tif (alignHorizontal === DAlignHorizontal.CENTER) {\n\t\t\t\ttextX = pleft + (width - pleft - pright - textWidth) * 0.5;\n\t\t\t} else {\n\t\t\t\ttextX = width - textWidth - pright;\n\t\t\t}\n\t\t}\n\n\t\tlet textY = 0;\n\t\tconst ptop = padding.getTop();\n\t\tconst alignVertical = align.vertical;\n\t\tif (auto.height.isOn || alignVertical === DAlignVertical.TOP) {\n\t\t\ttextY = ptop;\n\t\t} else {\n\t\t\tconst height = this.height;\n\t\t\tconst textHeight = text.height;\n\t\t\tconst pbottom = padding.getBottom();\n\t\t\tif (alignVertical === DAlignVertical.MIDDLE) {\n\t\t\t\ttextY = ptop + (height - ptop - pbottom - textHeight) * 0.5;\n\t\t\t} else {\n\t\t\t\ttextY = height - textHeight - pbottom;\n\t\t\t}\n\t\t}\n\n\t\ttext.position.set(textX, textY);\n\t}\n\n\tprotected getTextColor(theme: THEME, state: DBaseStateSet): number {\n\t\tconst color = this._textColor;\n\t\tif (color !== undefined) {\n\t\t\tif (isFunction(color)) {\n\t\t\t\tconst result = color(state);\n\t\t\t\tif (result !== undefined) {\n\t\t\t\t\treturn result;\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\treturn color;\n\t\t\t}\n\t\t}\n\t\treturn theme.getColor(state);\n\t}\n\n\tprotected getTextAlpha(theme: THEME, state: DBaseStateSet): number {\n\t\tconst alpha = this._textAlpha;\n\t\tif (alpha !== undefined) {\n\t\t\tif (isFunction(alpha)) {\n\t\t\t\tconst result = alpha(state);\n\t\t\t\tif (result !== undefined) {\n\t\t\t\t\treturn result;\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\treturn alpha;\n\t\t\t}\n\t\t}\n\t\treturn theme.getAlpha(state);\n\t}\n\n\tprotected updateTextColor(text: DDynamicText): void {\n\t\tconst theme = this.theme;\n\t\tconst state = this.state;\n\t\ttext.style.fill = this.getTextColor(theme, state);\n\t\ttext.alpha = this.getTextAlpha(theme, state);\n\t}\n\n\tprotected updateTextValue(): void {\n\t\tconst newTextValueComputed = this.computeTextValue();\n\t\tif (this._textValueComputed !== newTextValueComputed) {\n\t\t\tthis._textValueComputed = newTextValueComputed;\n\t\t\tthis.onTextChange();\n\t\t\tthis.createOrUpdateText();\n\t\t}\n\t}\n\n\tprotected updateText(): void {\n\t\tconst text = this._text;\n\t\tif (text) {\n\t\t\tthis.updateTextValue();\n\t\t\tthis.updateTextPosition(text);\n\t\t\tthis.updateTextColor(text);\n\t\t}\n\t}\n\n\tprotected showText(): void {\n\t\tconst text = this._text;\n\t\tif (text) {\n\t\t\ttext.visible = true;\n\t\t}\n\t\tthis._isTextVisible = true;\n\t}\n\n\tprotected hideText(): void {\n\t\tconst text = this._text;\n\t\tif (text) {\n\t\t\ttext.visible = false;\n\t\t}\n\t\tthis._isTextVisible = false;\n\t}\n\n\tprotected onReflow(): void {\n\t\tsuper.onReflow();\n\t\tthis.updateText();\n\t}\n\n\tprotected isRefitable(target: any): target is DRefitable {\n\t\treturn super.isRefitable(target) || (target != null && target === this._text);\n\t}\n\n\tprotected applyTitle(): void {\n\t\tconst text = this._text;\n\t\tif (this._title.length <= 0 && text && \"clipped\" in text && text.clipped) {\n\t\t\tconst layer = DApplications.getLayer(this);\n\t\t\tif (layer) {\n\t\t\t\tlayer.view.title = text.text;\n\t\t\t}\n\t\t} else {\n\t\t\tsuper.applyTitle();\n\t\t}\n\t}\n\n\tprotected getType(): string {\n\t\treturn \"DTextBase\";\n\t}\n\n\tdestroy(): void {\n\t\t// Text\n\t\tconst text = this._text;\n\t\tif (text) {\n\t\t\tthis._text = null;\n\t\t\ttext.destroy();\n\t\t}\n\n\t\t// Overflow mask\n\t\tconst overflowMask = this._overflowMask;\n\t\tif (overflowMask) {\n\t\t\tthis._overflowMask = null;\n\t\t\toverflowMask.destroy();\n\t\t}\n\n\t\tsuper.destroy();\n\t}\n}\n"]}
1
+ {"version":3,"file":"d-text-base.js","sourceRoot":"","sources":["../../../src/main/typescript/wcardinal/ui/d-text-base.ts"],"names":[],"mappings":"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","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { Graphics } from \"pixi.js\";\nimport { DApplications } from \"./d-applications\";\nimport { DBase, DBaseEvents, DBaseOptions, DRefitable, DThemeBase } from \"./d-base\";\nimport { DImagePieceLayouter } from \"./d-image-piece-layouter\";\nimport { DOnOptions } from \"./d-on-options\";\nimport { DStateAwareOrValueMightBe } from \"./d-state-aware\";\nimport { DTextPiece, DTextPieceOptions, DThemeTextPiece } from \"./d-text-piece\";\nimport { DBaseOverflowMaskSimple } from \"./d-base-overflow-mask-simple\";\nimport { DTextPieceImpl } from \"./d-text-piece-impl\";\n\n/**\n * {@link DTextBase} events.\n */\nexport interface DTextBaseEvents<VALUE, EMITTER> extends DBaseEvents<EMITTER> {}\n\n/**\n * {@link DTextBase} \"on\" options.\n */\nexport interface DTextBaseOnOptions<VALUE, EMITTER>\n\textends Partial<DTextBaseEvents<VALUE, EMITTER>>,\n\t\tDOnOptions {}\n\n/**\n * {@link DTextBase} options.\n */\nexport interface DTextBaseOptions<\n\tVALUE = unknown,\n\tTHEME extends DThemeTextBase<VALUE> = DThemeTextBase<VALUE>,\n\tEMITTER = any\n> extends DBaseOptions<THEME, EMITTER> {\n\ttext?: DTextPieceOptions<VALUE>;\n\tmask?: boolean;\n\ton?: DTextBaseOnOptions<VALUE, EMITTER>;\n}\n\n/**\n * {@link DTextBase} theme.\n */\nexport interface DThemeTextBase<VALUE = unknown> extends DThemeBase, DThemeTextPiece<VALUE> {}\n\n/**\n * A base class for UI classes with a text support.\n * See {@link DTextBaseEvents} for event defaults.\n */\nexport class DTextBase<\n\tVALUE = unknown,\n\tTHEME extends DThemeTextBase<VALUE> = DThemeTextBase<VALUE>,\n\tOPTIONS extends DTextBaseOptions<VALUE, THEME> = DTextBaseOptions<VALUE, THEME>\n> extends DBase<THEME, OPTIONS> {\n\tprotected static LAYOUTER?: DImagePieceLayouter;\n\tprotected _text?: DTextPieceImpl<VALUE>;\n\tprotected _overflowMask?: DBaseOverflowMaskSimple | null;\n\n\tprotected init(options?: OPTIONS): void {\n\t\tsuper.init(options);\n\t\tthis.getText();\n\t}\n\n\tgetOverflowMask(): Graphics | null {\n\t\tlet result = this._overflowMask;\n\t\tif (result === undefined) {\n\t\t\tresult = this.newOverflowMask();\n\t\t\tthis._overflowMask = result;\n\t\t}\n\t\treturn null;\n\t}\n\n\tprotected newOverflowMask(): DBaseOverflowMaskSimple | null {\n\t\tif (this._options?.mask ?? this.theme.isOverflowMaskEnabled()) {\n\t\t\tconst result = new DBaseOverflowMaskSimple(this);\n\t\t\tthis._reflowable.add(result);\n\t\t\tthis.toDirty();\n\t\t\treturn result;\n\t\t} else {\n\t\t\treturn null;\n\t\t}\n\t}\n\n\tget text(): DTextPiece<VALUE> {\n\t\treturn (this._text ??= this.newText());\n\t}\n\n\tprotected getText(): DTextPieceImpl<VALUE> {\n\t\treturn (this._text ??= this.newText());\n\t}\n\n\tprotected newText(): DTextPieceImpl<VALUE> {\n\t\treturn new DTextPieceImpl(this, this.theme, this._options?.text);\n\t}\n\n\tset text(text: DStateAwareOrValueMightBe<VALUE>) {\n\t\tthis.text.value = text;\n\t}\n\n\tprotected onReflow(): void {\n\t\tsuper.onReflow();\n\t\tthis.onReflowTextAndImage();\n\t}\n\n\tprotected getLayouter(): DImagePieceLayouter {\n\t\treturn (DTextBase.LAYOUTER ??= new DImagePieceLayouter());\n\t}\n\n\tprotected onReflowTextAndImage(): void {\n\t\tconst layouter = this.getLayouter();\n\t\tconst text = this.getText();\n\t\ttext.update(layouter);\n\t\tconst auto = this._auto;\n\t\tlayouter.execute(\n\t\t\tthis._padding,\n\t\t\ttext.align,\n\t\t\tauto.width.isOn ? null : this.width,\n\t\t\tauto.height.isOn ? null : this.height\n\t\t);\n\t\tlayouter.clear();\n\t}\n\n\tprotected isRefitable(target: any): target is DRefitable {\n\t\tif (super.isRefitable(target)) {\n\t\t\treturn true;\n\t\t}\n\t\tif (target != null) {\n\t\t\tconst text = this._text;\n\t\t\tif (text != null && target === text.object) {\n\t\t\t\treturn true;\n\t\t\t}\n\t\t}\n\t\treturn false;\n\t}\n\n\tprotected applyTitle(): void {\n\t\tconst object = this.text.object;\n\t\tif (this._title.length <= 0 && object != null && object.clipped) {\n\t\t\tconst layer = DApplications.getLayer(this);\n\t\t\tif (layer) {\n\t\t\t\tlayer.view.title = object.text;\n\t\t\t}\n\t\t} else {\n\t\t\tsuper.applyTitle();\n\t\t}\n\t}\n\n\tprotected getType(): string {\n\t\treturn \"DTextBase\";\n\t}\n\n\tdestroy(): void {\n\t\t// Text\n\t\tconst text = this._text;\n\t\tif (text) {\n\t\t\ttext.destroy();\n\t\t}\n\n\t\t// Overflow mask\n\t\tconst overflowMask = this._overflowMask;\n\t\tif (overflowMask) {\n\t\t\tthis._overflowMask = null;\n\t\t\toverflowMask.destroy();\n\t\t}\n\n\t\tsuper.destroy();\n\t}\n}\n"]}
@@ -0,0 +1,69 @@
1
+ import { DAlignHorizontal } from "./d-align-horizontal";
2
+ import { DAlignVertical } from "./d-align-vertical";
3
+ import { DApplications } from "./d-applications";
4
+ import { toEnum } from "./util/to-enum";
5
+ var DTextPieceAlignImpl = /** @class */ (function () {
6
+ function DTextPieceAlignImpl(parent, theme, options) {
7
+ var _a, _b;
8
+ this._parent = parent;
9
+ this._vertical = toEnum((_a = options === null || options === void 0 ? void 0 : options.vertical) !== null && _a !== void 0 ? _a : theme.getTextAlignVertical(), DAlignVertical);
10
+ this._horizontal = toEnum((_b = options === null || options === void 0 ? void 0 : options.horizontal) !== null && _b !== void 0 ? _b : theme.getTextAlignHorizontal(), DAlignHorizontal);
11
+ }
12
+ Object.defineProperty(DTextPieceAlignImpl.prototype, "vertical", {
13
+ get: function () {
14
+ return this._vertical;
15
+ },
16
+ set: function (vertical) {
17
+ vertical = toEnum(vertical, DAlignVertical);
18
+ if (this._vertical !== vertical) {
19
+ this._vertical = vertical;
20
+ this.onChange();
21
+ }
22
+ },
23
+ enumerable: false,
24
+ configurable: true
25
+ });
26
+ Object.defineProperty(DTextPieceAlignImpl.prototype, "horizontal", {
27
+ get: function () {
28
+ return this._horizontal;
29
+ },
30
+ set: function (horizontal) {
31
+ horizontal = toEnum(horizontal, DAlignHorizontal);
32
+ if (this._horizontal !== horizontal) {
33
+ this._horizontal = horizontal;
34
+ this.onChange();
35
+ }
36
+ },
37
+ enumerable: false,
38
+ configurable: true
39
+ });
40
+ DTextPieceAlignImpl.prototype.set = function (vertical, horizontal) {
41
+ var isChanged = false;
42
+ if (vertical != null) {
43
+ vertical = toEnum(vertical, DAlignVertical);
44
+ if (this._vertical !== vertical) {
45
+ this._vertical = vertical;
46
+ isChanged = true;
47
+ }
48
+ }
49
+ if (horizontal != null) {
50
+ horizontal = toEnum(horizontal, DAlignHorizontal);
51
+ if (this._horizontal !== horizontal) {
52
+ this._horizontal = horizontal;
53
+ isChanged = true;
54
+ }
55
+ }
56
+ if (isChanged) {
57
+ this.onChange();
58
+ }
59
+ return this;
60
+ };
61
+ DTextPieceAlignImpl.prototype.onChange = function () {
62
+ var parent = this._parent;
63
+ parent.toDirty();
64
+ DApplications.update(parent);
65
+ };
66
+ return DTextPieceAlignImpl;
67
+ }());
68
+ export { DTextPieceAlignImpl };
69
+ //# sourceMappingURL=d-text-piece-align-impl.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"d-text-piece-align-impl.js","sourceRoot":"","sources":["../../../src/main/typescript/wcardinal/ui/d-text-piece-align-impl.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AACxD,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAEpD,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAGjD,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AAMxC;IAKC,6BACC,MAAiC,EACjC,KAA6B,EAC7B,OAAoC;;QAEpC,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;QACtB,IAAI,CAAC,SAAS,GAAG,MAAM,CAAC,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,QAAQ,mCAAI,KAAK,CAAC,oBAAoB,EAAE,EAAE,cAAc,CAAC,CAAC;QAC3F,IAAI,CAAC,WAAW,GAAG,MAAM,CACxB,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,UAAU,mCAAI,KAAK,CAAC,sBAAsB,EAAE,EACrD,gBAAgB,CAChB,CAAC;IACH,CAAC;IAED,sBAAI,yCAAQ;aAAZ;YACC,OAAO,IAAI,CAAC,SAAS,CAAC;QACvB,CAAC;aAED,UAAa,QAAsD;YAClE,QAAQ,GAAG,MAAM,CAAC,QAAQ,EAAE,cAAc,CAAC,CAAC;YAC5C,IAAI,IAAI,CAAC,SAAS,KAAK,QAAQ,EAAE;gBAChC,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC;gBAC1B,IAAI,CAAC,QAAQ,EAAE,CAAC;aAChB;QACF,CAAC;;;OARA;IAUD,sBAAI,2CAAU;aAAd;YACC,OAAO,IAAI,CAAC,WAAW,CAAC;QACzB,CAAC;aAED,UAAe,UAA4D;YAC1E,UAAU,GAAG,MAAM,CAAC,UAAU,EAAE,gBAAgB,CAAC,CAAC;YAClD,IAAI,IAAI,CAAC,WAAW,KAAK,UAAU,EAAE;gBACpC,IAAI,CAAC,WAAW,GAAG,UAAU,CAAC;gBAC9B,IAAI,CAAC,QAAQ,EAAE,CAAC;aAChB;QACF,CAAC;;;OARA;IAUD,iCAAG,GAAH,UACC,QAAuD,EACvD,UAA6D;QAE7D,IAAI,SAAS,GAAG,KAAK,CAAC;QAEtB,IAAI,QAAQ,IAAI,IAAI,EAAE;YACrB,QAAQ,GAAG,MAAM,CAAC,QAAQ,EAAE,cAAc,CAAC,CAAC;YAC5C,IAAI,IAAI,CAAC,SAAS,KAAK,QAAQ,EAAE;gBAChC,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC;gBAC1B,SAAS,GAAG,IAAI,CAAC;aACjB;SACD;QAED,IAAI,UAAU,IAAI,IAAI,EAAE;YACvB,UAAU,GAAG,MAAM,CAAC,UAAU,EAAE,gBAAgB,CAAC,CAAC;YAClD,IAAI,IAAI,CAAC,WAAW,KAAK,UAAU,EAAE;gBACpC,IAAI,CAAC,WAAW,GAAG,UAAU,CAAC;gBAC9B,SAAS,GAAG,IAAI,CAAC;aACjB;SACD;QAED,IAAI,SAAS,EAAE;YACd,IAAI,CAAC,QAAQ,EAAE,CAAC;SAChB;QACD,OAAO,IAAI,CAAC;IACb,CAAC;IAES,sCAAQ,GAAlB;QACC,IAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC;QAC5B,MAAM,CAAC,OAAO,EAAE,CAAC;QACjB,aAAa,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IAC9B,CAAC;IACF,0BAAC;AAAD,CAAC,AA3ED,IA2EC","sourcesContent":["import { DAlignHorizontal } from \"./d-align-horizontal\";\nimport { DAlignVertical } from \"./d-align-vertical\";\nimport { DApplicationTarget } from \"./d-application-like\";\nimport { DApplications } from \"./d-applications\";\nimport { DTextPieceTextAlignOptions, DThemeTextPiece } from \"./d-text-piece\";\nimport { DTextPieceAlign } from \"./d-text-piece-align\";\nimport { toEnum } from \"./util/to-enum\";\n\nexport interface DTextPieceAlignImplParent extends DApplicationTarget {\n\ttoDirty(): void;\n}\n\nexport class DTextPieceAlignImpl<VALUE> implements DTextPieceAlign {\n\tprotected _parent: DTextPieceAlignImplParent;\n\tprotected _vertical: DAlignVertical;\n\tprotected _horizontal: DAlignHorizontal;\n\n\tconstructor(\n\t\tparent: DTextPieceAlignImplParent,\n\t\ttheme: DThemeTextPiece<VALUE>,\n\t\toptions?: DTextPieceTextAlignOptions\n\t) {\n\t\tthis._parent = parent;\n\t\tthis._vertical = toEnum(options?.vertical ?? theme.getTextAlignVertical(), DAlignVertical);\n\t\tthis._horizontal = toEnum(\n\t\t\toptions?.horizontal ?? theme.getTextAlignHorizontal(),\n\t\t\tDAlignHorizontal\n\t\t);\n\t}\n\n\tget vertical(): DAlignVertical {\n\t\treturn this._vertical;\n\t}\n\n\tset vertical(vertical: keyof typeof DAlignVertical | DAlignVertical) {\n\t\tvertical = toEnum(vertical, DAlignVertical);\n\t\tif (this._vertical !== vertical) {\n\t\t\tthis._vertical = vertical;\n\t\t\tthis.onChange();\n\t\t}\n\t}\n\n\tget horizontal(): DAlignHorizontal {\n\t\treturn this._horizontal;\n\t}\n\n\tset horizontal(horizontal: keyof typeof DAlignHorizontal | DAlignHorizontal) {\n\t\thorizontal = toEnum(horizontal, DAlignHorizontal);\n\t\tif (this._horizontal !== horizontal) {\n\t\t\tthis._horizontal = horizontal;\n\t\t\tthis.onChange();\n\t\t}\n\t}\n\n\tset(\n\t\tvertical?: keyof typeof DAlignVertical | DAlignVertical,\n\t\thorizontal?: keyof typeof DAlignHorizontal | DAlignHorizontal\n\t): this {\n\t\tlet isChanged = false;\n\n\t\tif (vertical != null) {\n\t\t\tvertical = toEnum(vertical, DAlignVertical);\n\t\t\tif (this._vertical !== vertical) {\n\t\t\t\tthis._vertical = vertical;\n\t\t\t\tisChanged = true;\n\t\t\t}\n\t\t}\n\n\t\tif (horizontal != null) {\n\t\t\thorizontal = toEnum(horizontal, DAlignHorizontal);\n\t\t\tif (this._horizontal !== horizontal) {\n\t\t\t\tthis._horizontal = horizontal;\n\t\t\t\tisChanged = true;\n\t\t\t}\n\t\t}\n\n\t\tif (isChanged) {\n\t\t\tthis.onChange();\n\t\t}\n\t\treturn this;\n\t}\n\n\tprotected onChange(): void {\n\t\tconst parent = this._parent;\n\t\tparent.toDirty();\n\t\tDApplications.update(parent);\n\t}\n}\n"]}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=d-text-piece-align.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"d-text-piece-align.js","sourceRoot":"","sources":["../../../src/main/typescript/wcardinal/ui/d-text-piece-align.ts"],"names":[],"mappings":"","sourcesContent":["import { DAlignHorizontal } from \"./d-align-horizontal\";\nimport { DAlignVertical } from \"./d-align-vertical\";\n\nexport interface DTextPieceAlign {\n\tvertical: keyof typeof DAlignVertical | DAlignVertical;\n\thorizontal: keyof typeof DAlignHorizontal | DAlignHorizontal;\n\n\tset(\n\t\tvertical?: keyof typeof DAlignVertical | DAlignVertical,\n\t\thorizontal?: keyof typeof DAlignHorizontal | DAlignHorizontal\n\t): this;\n}\n"]}