@ni/nimble-components 24.0.1 → 24.1.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 (596) hide show
  1. package/dist/all-components-bundle.js +110 -41
  2. package/dist/all-components-bundle.js.map +1 -1
  3. package/dist/all-components-bundle.min.js +488 -473
  4. package/dist/all-components-bundle.min.js.map +1 -1
  5. package/dist/esm/.storybook/blocks/StoryLayout.d.ts +51 -0
  6. package/dist/esm/src/all-components.d.ts +63 -0
  7. package/dist/esm/src/anchor/index.d.ts +36 -0
  8. package/dist/esm/src/anchor/styles.d.ts +1 -0
  9. package/dist/esm/src/anchor/template.d.ts +4 -0
  10. package/dist/esm/src/anchor/types.d.ts +9 -0
  11. package/dist/esm/src/anchor-base/index.d.ts +6 -0
  12. package/dist/esm/src/anchor-button/index.d.ts +37 -0
  13. package/dist/esm/src/anchor-button/styles.d.ts +1 -0
  14. package/dist/esm/src/anchor-button/template.d.ts +4 -0
  15. package/dist/esm/src/anchor-button/types.d.ts +5 -0
  16. package/dist/esm/src/anchor-menu-item/index.d.ts +36 -0
  17. package/dist/esm/src/anchor-menu-item/styles.d.ts +1 -0
  18. package/dist/esm/src/anchor-menu-item/template.d.ts +4 -0
  19. package/dist/esm/src/anchor-tab/index.d.ts +30 -0
  20. package/dist/esm/src/anchor-tab/styles.d.ts +1 -0
  21. package/dist/esm/src/anchor-tab/template.d.ts +4 -0
  22. package/dist/esm/src/anchor-tabs/index.d.ts +60 -0
  23. package/dist/esm/src/anchor-tabs/styles.d.ts +1 -0
  24. package/dist/esm/src/anchor-tabs/template.d.ts +4 -0
  25. package/dist/esm/src/anchor-tree-item/index.d.ts +57 -0
  26. package/dist/esm/src/anchor-tree-item/styles.d.ts +1 -0
  27. package/dist/esm/src/anchor-tree-item/template.d.ts +4 -0
  28. package/dist/esm/src/anchored-region/index.d.ts +12 -0
  29. package/dist/esm/src/anchored-region/styles.d.ts +1 -0
  30. package/dist/esm/src/banner/index.d.ts +47 -0
  31. package/dist/esm/src/banner/styles.d.ts +1 -0
  32. package/dist/esm/src/banner/template.d.ts +2 -0
  33. package/dist/esm/src/banner/types.d.ts +19 -0
  34. package/dist/esm/src/breadcrumb/index.d.ts +14 -0
  35. package/dist/esm/src/breadcrumb/styles.d.ts +1 -0
  36. package/dist/esm/src/breadcrumb/types.d.ts +9 -0
  37. package/dist/esm/src/breadcrumb-item/index.d.ts +12 -0
  38. package/dist/esm/src/breadcrumb-item/styles.d.ts +1 -0
  39. package/dist/esm/src/button/index.d.ts +32 -0
  40. package/dist/esm/src/button/styles.d.ts +1 -0
  41. package/dist/esm/src/button/types.d.ts +7 -0
  42. package/dist/esm/src/card/index.d.ts +12 -0
  43. package/dist/esm/src/card/styles.d.ts +1 -0
  44. package/dist/esm/src/card/template.d.ts +2 -0
  45. package/dist/esm/src/card-button/index.d.ts +18 -0
  46. package/dist/esm/src/card-button/styles.d.ts +1 -0
  47. package/dist/esm/src/checkbox/index.d.ts +12 -0
  48. package/dist/esm/src/checkbox/styles.d.ts +1 -0
  49. package/dist/esm/src/combobox/index.d.ts +82 -0
  50. package/dist/esm/src/combobox/styles.d.ts +1 -0
  51. package/dist/esm/src/combobox/template.d.ts +4 -0
  52. package/dist/esm/src/combobox/types.d.ts +2 -0
  53. package/dist/esm/src/dialog/index.d.ts +70 -0
  54. package/dist/esm/src/dialog/styles.d.ts +1 -0
  55. package/dist/esm/src/dialog/template.d.ts +2 -0
  56. package/dist/esm/src/drawer/index.d.ts +55 -0
  57. package/dist/esm/src/drawer/styles.d.ts +1 -0
  58. package/dist/esm/src/drawer/template.d.ts +2 -0
  59. package/dist/esm/src/drawer/types.d.ts +5 -0
  60. package/dist/esm/src/icon-base/index.d.ts +19 -0
  61. package/dist/esm/src/icon-base/styles.d.ts +1 -0
  62. package/dist/esm/src/icon-base/template.d.ts +2 -0
  63. package/dist/esm/src/icon-base/types.d.ts +12 -0
  64. package/dist/esm/src/icons/add.d.ts +13 -0
  65. package/dist/esm/src/icons/all-icons.d.ts +185 -0
  66. package/dist/esm/src/icons/arrow-down-right-and-arrow-up-left.d.ts +13 -0
  67. package/dist/esm/src/icons/arrow-down.d.ts +13 -0
  68. package/dist/esm/src/icons/arrow-expander-down.d.ts +13 -0
  69. package/dist/esm/src/icons/arrow-expander-left.d.ts +13 -0
  70. package/dist/esm/src/icons/arrow-expander-right.d.ts +13 -0
  71. package/dist/esm/src/icons/arrow-expander-up.d.ts +13 -0
  72. package/dist/esm/src/icons/arrow-in-circle.d.ts +13 -0
  73. package/dist/esm/src/icons/arrow-left-from-line.d.ts +13 -0
  74. package/dist/esm/src/icons/arrow-out-circle.d.ts +13 -0
  75. package/dist/esm/src/icons/arrow-partial-rotate-left.d.ts +13 -0
  76. package/dist/esm/src/icons/arrow-right-to-line.d.ts +13 -0
  77. package/dist/esm/src/icons/arrow-rotate-right.d.ts +13 -0
  78. package/dist/esm/src/icons/arrow-u-rotate-left.d.ts +13 -0
  79. package/dist/esm/src/icons/arrow-up-left-and-arrow-down-right.d.ts +13 -0
  80. package/dist/esm/src/icons/arrow-up-right-from-square.d.ts +13 -0
  81. package/dist/esm/src/icons/arrow-up.d.ts +13 -0
  82. package/dist/esm/src/icons/arrows-maximize.d.ts +13 -0
  83. package/dist/esm/src/icons/arrows-repeat.d.ts +13 -0
  84. package/dist/esm/src/icons/at.d.ts +13 -0
  85. package/dist/esm/src/icons/bars.d.ts +13 -0
  86. package/dist/esm/src/icons/bell-and-comment.d.ts +13 -0
  87. package/dist/esm/src/icons/bell-circle.d.ts +13 -0
  88. package/dist/esm/src/icons/bell-solid-circle.d.ts +13 -0
  89. package/dist/esm/src/icons/bell.d.ts +13 -0
  90. package/dist/esm/src/icons/block-with-ribbon.d.ts +13 -0
  91. package/dist/esm/src/icons/bold-b.d.ts +13 -0
  92. package/dist/esm/src/icons/book-magnifying-glass.d.ts +13 -0
  93. package/dist/esm/src/icons/calendar-check-lines.d.ts +13 -0
  94. package/dist/esm/src/icons/calendar-day.d.ts +13 -0
  95. package/dist/esm/src/icons/calendar.d.ts +13 -0
  96. package/dist/esm/src/icons/chart-diagram-child-focus.d.ts +13 -0
  97. package/dist/esm/src/icons/chart-diagram-parent-focus-two-child.d.ts +13 -0
  98. package/dist/esm/src/icons/chart-diagram-parent-focus.d.ts +13 -0
  99. package/dist/esm/src/icons/chart-diagram.d.ts +13 -0
  100. package/dist/esm/src/icons/check-dot.d.ts +13 -0
  101. package/dist/esm/src/icons/check-large.d.ts +13 -0
  102. package/dist/esm/src/icons/check.d.ts +13 -0
  103. package/dist/esm/src/icons/circle-broken.d.ts +13 -0
  104. package/dist/esm/src/icons/circle-check.d.ts +13 -0
  105. package/dist/esm/src/icons/circle-filled.d.ts +13 -0
  106. package/dist/esm/src/icons/circle-partial-broken.d.ts +13 -0
  107. package/dist/esm/src/icons/circle-slash.d.ts +13 -0
  108. package/dist/esm/src/icons/circle-x.d.ts +13 -0
  109. package/dist/esm/src/icons/circle.d.ts +13 -0
  110. package/dist/esm/src/icons/clipboard.d.ts +13 -0
  111. package/dist/esm/src/icons/clock-cog.d.ts +13 -0
  112. package/dist/esm/src/icons/clock-exclamation.d.ts +13 -0
  113. package/dist/esm/src/icons/clock-triangle.d.ts +13 -0
  114. package/dist/esm/src/icons/clock.d.ts +13 -0
  115. package/dist/esm/src/icons/clone.d.ts +13 -0
  116. package/dist/esm/src/icons/cloud-upload.d.ts +13 -0
  117. package/dist/esm/src/icons/cloud-with-arrow.d.ts +13 -0
  118. package/dist/esm/src/icons/cloud.d.ts +13 -0
  119. package/dist/esm/src/icons/cog-database-inset.d.ts +13 -0
  120. package/dist/esm/src/icons/cog-database.d.ts +13 -0
  121. package/dist/esm/src/icons/cog-small-cog.d.ts +13 -0
  122. package/dist/esm/src/icons/cog-zoomed.d.ts +13 -0
  123. package/dist/esm/src/icons/cog.d.ts +13 -0
  124. package/dist/esm/src/icons/comment.d.ts +13 -0
  125. package/dist/esm/src/icons/computer-and-monitor.d.ts +13 -0
  126. package/dist/esm/src/icons/copy-text.d.ts +13 -0
  127. package/dist/esm/src/icons/copy.d.ts +13 -0
  128. package/dist/esm/src/icons/dashboard-builder-legend.d.ts +13 -0
  129. package/dist/esm/src/icons/dashboard-builder-templates.d.ts +13 -0
  130. package/dist/esm/src/icons/dashboard-builder-tile.d.ts +13 -0
  131. package/dist/esm/src/icons/dashboard-builder.d.ts +13 -0
  132. package/dist/esm/src/icons/database-check.d.ts +13 -0
  133. package/dist/esm/src/icons/database.d.ts +13 -0
  134. package/dist/esm/src/icons/desktop.d.ts +13 -0
  135. package/dist/esm/src/icons/donut-chart.d.ts +13 -0
  136. package/dist/esm/src/icons/dot-solid-dot-stroke-measurement.d.ts +13 -0
  137. package/dist/esm/src/icons/dot-solid-dot-stroke.d.ts +13 -0
  138. package/dist/esm/src/icons/down-right-from-square.d.ts +13 -0
  139. package/dist/esm/src/icons/download.d.ts +13 -0
  140. package/dist/esm/src/icons/electronic-chip-zoomed.d.ts +13 -0
  141. package/dist/esm/src/icons/exclamation-mark.d.ts +13 -0
  142. package/dist/esm/src/icons/eye-dash.d.ts +13 -0
  143. package/dist/esm/src/icons/eye.d.ts +13 -0
  144. package/dist/esm/src/icons/fancy-a.d.ts +13 -0
  145. package/dist/esm/src/icons/file-arrow-curved-right.d.ts +13 -0
  146. package/dist/esm/src/icons/file-drawer.d.ts +13 -0
  147. package/dist/esm/src/icons/file-search.d.ts +13 -0
  148. package/dist/esm/src/icons/file.d.ts +13 -0
  149. package/dist/esm/src/icons/filter.d.ts +13 -0
  150. package/dist/esm/src/icons/floppy-disk-checkmark.d.ts +13 -0
  151. package/dist/esm/src/icons/floppy-disk-pen.d.ts +13 -0
  152. package/dist/esm/src/icons/floppy-disk-star-arrow-right.d.ts +13 -0
  153. package/dist/esm/src/icons/floppy-disk-three-dots.d.ts +13 -0
  154. package/dist/esm/src/icons/floppy-disk.d.ts +13 -0
  155. package/dist/esm/src/icons/folder-open.d.ts +13 -0
  156. package/dist/esm/src/icons/folder.d.ts +13 -0
  157. package/dist/esm/src/icons/forward-slash.d.ts +13 -0
  158. package/dist/esm/src/icons/four-dots-square.d.ts +13 -0
  159. package/dist/esm/src/icons/function.d.ts +13 -0
  160. package/dist/esm/src/icons/gauge-simple.d.ts +13 -0
  161. package/dist/esm/src/icons/grid-three-by-three.d.ts +13 -0
  162. package/dist/esm/src/icons/grid-two-by-two.d.ts +13 -0
  163. package/dist/esm/src/icons/hammer.d.ts +13 -0
  164. package/dist/esm/src/icons/hashtag.d.ts +13 -0
  165. package/dist/esm/src/icons/home.d.ts +13 -0
  166. package/dist/esm/src/icons/horizontal-triangle-outline.d.ts +13 -0
  167. package/dist/esm/src/icons/hourglass.d.ts +13 -0
  168. package/dist/esm/src/icons/indent.d.ts +13 -0
  169. package/dist/esm/src/icons/indeterminant-checkbox.d.ts +13 -0
  170. package/dist/esm/src/icons/info-circle.d.ts +13 -0
  171. package/dist/esm/src/icons/info.d.ts +13 -0
  172. package/dist/esm/src/icons/inward-squares-three.d.ts +13 -0
  173. package/dist/esm/src/icons/italic-i.d.ts +13 -0
  174. package/dist/esm/src/icons/key.d.ts +13 -0
  175. package/dist/esm/src/icons/laptop.d.ts +13 -0
  176. package/dist/esm/src/icons/layer-group.d.ts +13 -0
  177. package/dist/esm/src/icons/lightning-bolt.d.ts +13 -0
  178. package/dist/esm/src/icons/link-cancel.d.ts +13 -0
  179. package/dist/esm/src/icons/link.d.ts +13 -0
  180. package/dist/esm/src/icons/list-tree-database.d.ts +13 -0
  181. package/dist/esm/src/icons/list-tree.d.ts +13 -0
  182. package/dist/esm/src/icons/list.d.ts +13 -0
  183. package/dist/esm/src/icons/lock.d.ts +13 -0
  184. package/dist/esm/src/icons/magnifying-glass.d.ts +13 -0
  185. package/dist/esm/src/icons/markdown.d.ts +13 -0
  186. package/dist/esm/src/icons/minus-wide.d.ts +13 -0
  187. package/dist/esm/src/icons/minus.d.ts +13 -0
  188. package/dist/esm/src/icons/mobile.d.ts +13 -0
  189. package/dist/esm/src/icons/ni.d.ts +13 -0
  190. package/dist/esm/src/icons/notebook.d.ts +13 -0
  191. package/dist/esm/src/icons/number-list.d.ts +13 -0
  192. package/dist/esm/src/icons/outdent.d.ts +13 -0
  193. package/dist/esm/src/icons/outward-squares-three.d.ts +13 -0
  194. package/dist/esm/src/icons/paste.d.ts +13 -0
  195. package/dist/esm/src/icons/pause.d.ts +13 -0
  196. package/dist/esm/src/icons/pencil.d.ts +13 -0
  197. package/dist/esm/src/icons/play.d.ts +13 -0
  198. package/dist/esm/src/icons/pot-with-lid.d.ts +13 -0
  199. package/dist/esm/src/icons/question.d.ts +13 -0
  200. package/dist/esm/src/icons/rectangle-check-lines.d.ts +13 -0
  201. package/dist/esm/src/icons/running-arrow.d.ts +13 -0
  202. package/dist/esm/src/icons/screen-check-lines-calendar.d.ts +13 -0
  203. package/dist/esm/src/icons/screen-check-lines.d.ts +13 -0
  204. package/dist/esm/src/icons/server.d.ts +13 -0
  205. package/dist/esm/src/icons/share-nodes.d.ts +13 -0
  206. package/dist/esm/src/icons/shield-check.d.ts +13 -0
  207. package/dist/esm/src/icons/shield-xmark.d.ts +13 -0
  208. package/dist/esm/src/icons/signal-bars.d.ts +13 -0
  209. package/dist/esm/src/icons/sine-graph.d.ts +13 -0
  210. package/dist/esm/src/icons/skip-arrow.d.ts +13 -0
  211. package/dist/esm/src/icons/spinner.d.ts +13 -0
  212. package/dist/esm/src/icons/square-check.d.ts +13 -0
  213. package/dist/esm/src/icons/square-t.d.ts +13 -0
  214. package/dist/esm/src/icons/square-x.d.ts +13 -0
  215. package/dist/esm/src/icons/stop-square.d.ts +13 -0
  216. package/dist/esm/src/icons/systemlink.d.ts +13 -0
  217. package/dist/esm/src/icons/t.d.ts +13 -0
  218. package/dist/esm/src/icons/tablet.d.ts +13 -0
  219. package/dist/esm/src/icons/tag.d.ts +13 -0
  220. package/dist/esm/src/icons/tags.d.ts +13 -0
  221. package/dist/esm/src/icons/target-crosshairs-progress.d.ts +13 -0
  222. package/dist/esm/src/icons/target-crosshairs.d.ts +13 -0
  223. package/dist/esm/src/icons/three-circles-ascending-container.d.ts +13 -0
  224. package/dist/esm/src/icons/three-dots-line.d.ts +13 -0
  225. package/dist/esm/src/icons/three-vertical-lines.d.ts +13 -0
  226. package/dist/esm/src/icons/thumbtack.d.ts +13 -0
  227. package/dist/esm/src/icons/tile-size.d.ts +13 -0
  228. package/dist/esm/src/icons/times.d.ts +13 -0
  229. package/dist/esm/src/icons/trash.d.ts +13 -0
  230. package/dist/esm/src/icons/triangle-filled.d.ts +13 -0
  231. package/dist/esm/src/icons/triangle-two-lines-horizontal.d.ts +13 -0
  232. package/dist/esm/src/icons/triangle.d.ts +13 -0
  233. package/dist/esm/src/icons/true-false-rectangle.d.ts +13 -0
  234. package/dist/esm/src/icons/two-squares-in-brackets.d.ts +13 -0
  235. package/dist/esm/src/icons/two-triangles-between-lines.d.ts +13 -0
  236. package/dist/esm/src/icons/unlink.d.ts +13 -0
  237. package/dist/esm/src/icons/unlock.d.ts +13 -0
  238. package/dist/esm/src/icons/up-right-from-square.d.ts +13 -0
  239. package/dist/esm/src/icons/upload.d.ts +13 -0
  240. package/dist/esm/src/icons/user.d.ts +13 -0
  241. package/dist/esm/src/icons/watch.d.ts +13 -0
  242. package/dist/esm/src/icons/waveform.d.ts +13 -0
  243. package/dist/esm/src/icons/webvi-custom.d.ts +13 -0
  244. package/dist/esm/src/icons/webvi-host.d.ts +13 -0
  245. package/dist/esm/src/icons/window-code.d.ts +13 -0
  246. package/dist/esm/src/icons/window-text.d.ts +13 -0
  247. package/dist/esm/src/icons/wrench-hammer.d.ts +13 -0
  248. package/dist/esm/src/icons/xmark-check.d.ts +13 -0
  249. package/dist/esm/src/icons/xmark.d.ts +13 -0
  250. package/dist/esm/src/label-provider/base/index.d.ts +19 -0
  251. package/dist/esm/src/label-provider/core/index.d.ts +41 -0
  252. package/dist/esm/src/label-provider/core/label-token-defaults.d.ts +6 -0
  253. package/dist/esm/src/label-provider/core/label-tokens.d.ts +9 -0
  254. package/dist/esm/src/label-provider/rich-text/index.d.ts +29 -0
  255. package/dist/esm/src/label-provider/rich-text/label-token-defaults.d.ts +6 -0
  256. package/dist/esm/src/label-provider/rich-text/label-tokens.d.ts +5 -0
  257. package/dist/esm/src/label-provider/table/index.d.ts +65 -0
  258. package/dist/esm/src/label-provider/table/label-token-defaults.d.ts +6 -0
  259. package/dist/esm/src/label-provider/table/label-tokens.d.ts +17 -0
  260. package/dist/esm/src/list-option/index.d.ts +37 -0
  261. package/dist/esm/src/list-option/styles.d.ts +1 -0
  262. package/dist/esm/src/list-option/template.d.ts +8 -0
  263. package/dist/esm/src/listbox/index.d.ts +12 -0
  264. package/dist/esm/src/listbox/styles.d.ts +1 -0
  265. package/dist/esm/src/mapping/base/index.d.ts +10 -0
  266. package/dist/esm/src/mapping/base/template.d.ts +1 -0
  267. package/dist/esm/src/mapping/base/types.d.ts +3 -0
  268. package/dist/esm/src/mapping/icon/index.d.ts +27 -0
  269. package/dist/esm/src/mapping/spinner/index.d.ts +16 -0
  270. package/dist/esm/src/mapping/text/index.d.ts +16 -0
  271. package/dist/esm/src/mapping/user/index.d.ts +15 -0
  272. package/dist/esm/src/menu/index.d.ts +13 -0
  273. package/dist/esm/src/menu/styles.d.ts +1 -0
  274. package/dist/esm/src/menu-button/index.d.ts +54 -0
  275. package/dist/esm/src/menu-button/styles.d.ts +1 -0
  276. package/dist/esm/src/menu-button/template.d.ts +2 -0
  277. package/dist/esm/src/menu-button/types.d.ts +22 -0
  278. package/dist/esm/src/menu-item/index.d.ts +12 -0
  279. package/dist/esm/src/menu-item/styles.d.ts +1 -0
  280. package/dist/esm/src/number-field/index.d.ts +25 -0
  281. package/dist/esm/src/number-field/styles.d.ts +1 -0
  282. package/dist/esm/src/number-field/types.d.ts +9 -0
  283. package/dist/esm/src/patterns/button/styles.d.ts +2 -0
  284. package/dist/esm/src/patterns/button/types.d.ts +49 -0
  285. package/dist/esm/src/patterns/dialog/types.d.ts +6 -0
  286. package/dist/esm/src/patterns/dropdown/styles.d.ts +1 -0
  287. package/dist/esm/src/patterns/dropdown/types.d.ts +33 -0
  288. package/dist/esm/src/patterns/error/styles.d.ts +1 -0
  289. package/dist/esm/src/patterns/error/template.d.ts +2 -0
  290. package/dist/esm/src/patterns/error/types.d.ts +10 -0
  291. package/dist/esm/src/patterns/expand-collapse/styles.d.ts +1 -0
  292. package/dist/esm/src/radio/index.d.ts +12 -0
  293. package/dist/esm/src/radio/styles.d.ts +1 -0
  294. package/dist/esm/src/radio-group/index.d.ts +14 -0
  295. package/dist/esm/src/radio-group/styles.d.ts +1 -0
  296. package/dist/esm/src/rich-text/base/index.d.ts +49 -0
  297. package/dist/esm/src/rich-text/base/types.d.ts +5 -0
  298. package/dist/esm/src/rich-text/editor/index.d.ts +270 -0
  299. package/dist/esm/src/rich-text/editor/models/create-tiptap-editor.d.ts +5 -0
  300. package/dist/esm/src/rich-text/editor/styles.d.ts +1 -0
  301. package/dist/esm/src/rich-text/editor/template.d.ts +2 -0
  302. package/dist/esm/src/rich-text/editor/testing/rich-text-editor-utils.d.ts +6 -0
  303. package/dist/esm/src/rich-text/editor/testing/rich-text-editor.pageobject.d.ts +75 -0
  304. package/dist/esm/src/rich-text/editor/testing/types.d.ts +31 -0
  305. package/dist/esm/src/rich-text/editor/types.d.ts +27 -0
  306. package/dist/esm/src/rich-text/mention-listbox/index.d.ts +116 -0
  307. package/dist/esm/src/rich-text/mention-listbox/styles.d.ts +1 -0
  308. package/dist/esm/src/rich-text/mention-listbox/template.d.ts +2 -0
  309. package/dist/esm/src/rich-text/mention-listbox/types.d.ts +7 -0
  310. package/dist/esm/src/rich-text/models/configuration.d.ts +10 -0
  311. package/dist/esm/src/rich-text/models/editor-configuration.d.ts +10 -0
  312. package/dist/esm/src/rich-text/models/markdown-parser-mention-configuration.d.ts +14 -0
  313. package/dist/esm/src/rich-text/models/markdown-parser.d.ts +30 -0
  314. package/dist/esm/src/rich-text/models/markdown-serializer.d.ts +10 -0
  315. package/dist/esm/src/rich-text/models/mention-extension-configuration.d.ts +19 -0
  316. package/dist/esm/src/rich-text/models/rich-text-tracker.d.ts +19 -0
  317. package/dist/esm/src/rich-text/models/rich-text-validator.d.ts +15 -0
  318. package/dist/esm/src/rich-text/models/testing/markdown-parser-utils.d.ts +5 -0
  319. package/dist/esm/src/rich-text/viewer/index.d.ts +37 -0
  320. package/dist/esm/src/rich-text/viewer/styles.d.ts +1 -0
  321. package/dist/esm/src/rich-text/viewer/template.d.ts +2 -0
  322. package/dist/esm/src/rich-text/viewer/testing/rich-text-viewer.pageobject.d.ts +27 -0
  323. package/dist/esm/src/rich-text-mention/base/index.d.ts +56 -0
  324. package/dist/esm/src/rich-text-mention/base/models/mapping-config.d.ts +8 -0
  325. package/dist/esm/src/rich-text-mention/base/models/mention-internals.d.ts +45 -0
  326. package/dist/esm/src/rich-text-mention/base/models/mention-validator.d.ts +33 -0
  327. package/dist/esm/src/rich-text-mention/base/template.d.ts +2 -0
  328. package/dist/esm/src/rich-text-mention/base/types.d.ts +10 -0
  329. package/dist/esm/src/rich-text-mention/base/view/index.d.ts +20 -0
  330. package/dist/esm/src/rich-text-mention/users/index.d.ts +21 -0
  331. package/dist/esm/src/rich-text-mention/users/models/mapping-user-config.d.ts +6 -0
  332. package/dist/esm/src/rich-text-mention/users/models/rich-text-mention-users-validator.d.ts +16 -0
  333. package/dist/esm/src/rich-text-mention/users/view/index.d.ts +12 -0
  334. package/dist/esm/src/rich-text-mention/users/view/styles.d.ts +1 -0
  335. package/dist/esm/src/rich-text-mention/users/view/template.d.ts +2 -0
  336. package/dist/esm/src/rich-text-mention/users/view/testing/rich-text-mention-users-view.pageobject.d.ts +9 -0
  337. package/dist/esm/src/select/index.d.ts +281 -0
  338. package/dist/esm/src/select/models/select-form-associated.d.ts +16 -0
  339. package/dist/esm/src/select/styles.d.ts +1 -0
  340. package/dist/esm/src/select/template.d.ts +4 -0
  341. package/dist/esm/src/select/testing/select.pageobject.d.ts +39 -0
  342. package/dist/esm/src/select/types.d.ts +14 -0
  343. package/dist/esm/src/spinner/index.d.ts +20 -0
  344. package/dist/esm/src/spinner/styles.d.ts +1 -0
  345. package/dist/esm/src/spinner/template.d.ts +2 -0
  346. package/dist/esm/src/spinner/types.d.ts +9 -0
  347. package/dist/esm/src/switch/index.d.ts +12 -0
  348. package/dist/esm/src/switch/styles.d.ts +1 -0
  349. package/dist/esm/src/switch/template.d.ts +2 -0
  350. package/dist/esm/src/tab/index.d.ts +12 -0
  351. package/dist/esm/src/tab/styles.d.ts +1 -0
  352. package/dist/esm/src/tab-panel/index.d.ts +12 -0
  353. package/dist/esm/src/tab-panel/styles.d.ts +1 -0
  354. package/dist/esm/src/table/components/cell/index.d.ts +30 -0
  355. package/dist/esm/src/table/components/cell/styles.d.ts +1 -0
  356. package/dist/esm/src/table/components/cell/template.d.ts +2 -0
  357. package/dist/esm/src/table/components/group-row/index.d.ts +42 -0
  358. package/dist/esm/src/table/components/group-row/styles.d.ts +1 -0
  359. package/dist/esm/src/table/components/group-row/template.d.ts +2 -0
  360. package/dist/esm/src/table/components/header/index.d.ts +20 -0
  361. package/dist/esm/src/table/components/header/styles.d.ts +1 -0
  362. package/dist/esm/src/table/components/header/template.d.ts +2 -0
  363. package/dist/esm/src/table/components/row/index.d.ts +89 -0
  364. package/dist/esm/src/table/components/row/styles.d.ts +1 -0
  365. package/dist/esm/src/table/components/row/template.d.ts +2 -0
  366. package/dist/esm/src/table/index.d.ts +225 -0
  367. package/dist/esm/src/table/models/array-to-tree.d.ts +17 -0
  368. package/dist/esm/src/table/models/data-hierarchy-manager.d.ts +15 -0
  369. package/dist/esm/src/table/models/expansion-manager.d.ts +33 -0
  370. package/dist/esm/src/table/models/interactive-selection-manager.d.ts +18 -0
  371. package/dist/esm/src/table/models/selection-managers/disabled-selection-manager.d.ts +11 -0
  372. package/dist/esm/src/table/models/selection-managers/multi-selection-manager.d.ts +20 -0
  373. package/dist/esm/src/table/models/selection-managers/selection-manager-base.d.ts +19 -0
  374. package/dist/esm/src/table/models/selection-managers/single-selection-manager.d.ts +11 -0
  375. package/dist/esm/src/table/models/sort-operations.d.ts +7 -0
  376. package/dist/esm/src/table/models/table-layout-manager.d.ts +42 -0
  377. package/dist/esm/src/table/models/table-update-tracker.d.ts +33 -0
  378. package/dist/esm/src/table/models/table-validator.d.ts +32 -0
  379. package/dist/esm/src/table/models/virtualizer.d.ts +27 -0
  380. package/dist/esm/src/table/styles.d.ts +1 -0
  381. package/dist/esm/src/table/template.d.ts +2 -0
  382. package/dist/esm/src/table/testing/table.pageobject.d.ts +112 -0
  383. package/dist/esm/src/table/types.d.ts +186 -0
  384. package/dist/esm/src/table-column/anchor/cell-view/index.d.ts +22 -0
  385. package/dist/esm/src/table-column/anchor/cell-view/styles.d.ts +1 -0
  386. package/dist/esm/src/table-column/anchor/cell-view/template.d.ts +2 -0
  387. package/dist/esm/src/table-column/anchor/index.d.ts +77 -0
  388. package/dist/esm/src/table-column/base/cell-view/index.d.ts +22 -0
  389. package/dist/esm/src/table-column/base/cell-view/template.d.ts +3 -0
  390. package/dist/esm/src/table-column/base/group-header-view/index.d.ts +15 -0
  391. package/dist/esm/src/table-column/base/group-header-view/template.d.ts +3 -0
  392. package/dist/esm/src/table-column/base/index.d.ts +35 -0
  393. package/dist/esm/src/table-column/base/models/column-internals.d.ts +124 -0
  394. package/dist/esm/src/table-column/base/models/column-validator.d.ts +19 -0
  395. package/dist/esm/src/table-column/base/styles.d.ts +1 -0
  396. package/dist/esm/src/table-column/base/template.d.ts +2 -0
  397. package/dist/esm/src/table-column/base/types.d.ts +38 -0
  398. package/dist/esm/src/table-column/date-text/cell-view/index.d.ts +14 -0
  399. package/dist/esm/src/table-column/date-text/group-header-view/index.d.ts +15 -0
  400. package/dist/esm/src/table-column/date-text/index.d.ts +73 -0
  401. package/dist/esm/src/table-column/date-text/models/format-helper.d.ts +2 -0
  402. package/dist/esm/src/table-column/date-text/models/table-column-date-text-validator.d.ts +11 -0
  403. package/dist/esm/src/table-column/date-text/testing/table-column-date-text.pageobject.d.ts +8 -0
  404. package/dist/esm/src/table-column/date-text/types.d.ts +23 -0
  405. package/dist/esm/src/table-column/duration-text/cell-view/index.d.ts +14 -0
  406. package/dist/esm/src/table-column/duration-text/group-header-view/index.d.ts +15 -0
  407. package/dist/esm/src/table-column/duration-text/index.d.ts +26 -0
  408. package/dist/esm/src/table-column/duration-text/models/duration-formatter.d.ts +14 -0
  409. package/dist/esm/src/table-column/duration-text/testing/table-column-duration-text.pageobject.d.ts +8 -0
  410. package/dist/esm/src/table-column/enum-base/index.d.ts +50 -0
  411. package/dist/esm/src/table-column/enum-base/models/mapping-config.d.ts +7 -0
  412. package/dist/esm/src/table-column/enum-base/models/mapping-icon-config.d.ts +15 -0
  413. package/dist/esm/src/table-column/enum-base/models/mapping-key-resolver.d.ts +8 -0
  414. package/dist/esm/src/table-column/enum-base/models/mapping-spinner-config.d.ts +7 -0
  415. package/dist/esm/src/table-column/enum-base/models/mapping-text-config.d.ts +6 -0
  416. package/dist/esm/src/table-column/enum-base/models/table-column-enum-base-validator.d.ts +15 -0
  417. package/dist/esm/src/table-column/enum-base/styles.d.ts +1 -0
  418. package/dist/esm/src/table-column/enum-base/template.d.ts +3 -0
  419. package/dist/esm/src/table-column/enum-base/types.d.ts +10 -0
  420. package/dist/esm/src/table-column/enum-text/cell-view/index.d.ts +14 -0
  421. package/dist/esm/src/table-column/enum-text/group-header-view/index.d.ts +15 -0
  422. package/dist/esm/src/table-column/enum-text/index.d.ts +43 -0
  423. package/dist/esm/src/table-column/enum-text/models/table-column-enum-text-validator.d.ts +16 -0
  424. package/dist/esm/src/table-column/icon/cell-view/index.d.ts +23 -0
  425. package/dist/esm/src/table-column/icon/cell-view/template.d.ts +2 -0
  426. package/dist/esm/src/table-column/icon/group-header-view/index.d.ts +21 -0
  427. package/dist/esm/src/table-column/icon/group-header-view/styles.d.ts +1 -0
  428. package/dist/esm/src/table-column/icon/group-header-view/template.d.ts +2 -0
  429. package/dist/esm/src/table-column/icon/index.d.ts +43 -0
  430. package/dist/esm/src/table-column/icon/models/table-column-icon-validator.d.ts +19 -0
  431. package/dist/esm/src/table-column/mixins/fractional-width-column.d.ts +11 -0
  432. package/dist/esm/src/table-column/mixins/groupable-column.d.ts +11 -0
  433. package/dist/esm/src/table-column/mixins/placeholder.d.ts +9 -0
  434. package/dist/esm/src/table-column/number-text/cell-view/index.d.ts +15 -0
  435. package/dist/esm/src/table-column/number-text/group-header-view/index.d.ts +15 -0
  436. package/dist/esm/src/table-column/number-text/index.d.ts +53 -0
  437. package/dist/esm/src/table-column/number-text/models/number-text-unit-format.d.ts +23 -0
  438. package/dist/esm/src/table-column/number-text/models/table-column-number-text-validator.d.ts +16 -0
  439. package/dist/esm/src/table-column/number-text/template.d.ts +2 -0
  440. package/dist/esm/src/table-column/number-text/types.d.ts +18 -0
  441. package/dist/esm/src/table-column/testing/table-column-formatted-text.pageobject.d.ts +14 -0
  442. package/dist/esm/src/table-column/text/cell-view/index.d.ts +14 -0
  443. package/dist/esm/src/table-column/text/group-header-view/index.d.ts +15 -0
  444. package/dist/esm/src/table-column/text/index.d.ts +20 -0
  445. package/dist/esm/src/table-column/text-base/cell-view/index.d.ts +37 -0
  446. package/dist/esm/src/table-column/text-base/cell-view/styles.d.ts +1 -0
  447. package/dist/esm/src/table-column/text-base/cell-view/template.d.ts +2 -0
  448. package/dist/esm/src/table-column/text-base/cell-view/types.d.ts +8 -0
  449. package/dist/esm/src/table-column/text-base/group-header-view/index.d.ts +29 -0
  450. package/dist/esm/src/table-column/text-base/group-header-view/styles.d.ts +1 -0
  451. package/dist/esm/src/table-column/text-base/group-header-view/template.d.ts +2 -0
  452. package/dist/esm/src/table-column/text-base/index.d.ts +25 -0
  453. package/dist/esm/src/tabs/index.d.ts +13 -0
  454. package/dist/esm/src/tabs/styles.d.ts +1 -0
  455. package/dist/esm/src/tabs-toolbar/index.d.ts +12 -0
  456. package/dist/esm/src/tabs-toolbar/styles.d.ts +1 -0
  457. package/dist/esm/src/tabs-toolbar/template.d.ts +2 -0
  458. package/dist/esm/src/testing/async-helpers.d.ts +10 -0
  459. package/dist/esm/src/text-area/index.d.ts +68 -0
  460. package/dist/esm/src/text-area/styles.d.ts +1 -0
  461. package/dist/esm/src/text-area/template.d.ts +4 -0
  462. package/dist/esm/src/text-area/types.d.ts +7 -0
  463. package/dist/esm/src/text-field/index.d.ts +32 -0
  464. package/dist/esm/src/text-field/styles.d.ts +1 -0
  465. package/dist/esm/src/text-field/types.d.ts +15 -0
  466. package/dist/esm/src/theme-provider/design-token-comments.d.ts +6 -0
  467. package/dist/esm/src/theme-provider/design-token-names.d.ts +19 -0
  468. package/dist/esm/src/theme-provider/design-tokens-static.d.ts +10 -0
  469. package/dist/esm/src/theme-provider/design-tokens.d.ts +83 -0
  470. package/dist/esm/src/theme-provider/index.d.ts +30 -0
  471. package/dist/esm/src/theme-provider/styles.d.ts +1 -0
  472. package/dist/esm/src/theme-provider/template.d.ts +2 -0
  473. package/dist/esm/src/theme-provider/types.d.ts +6 -0
  474. package/dist/esm/src/toggle-button/index.d.ts +36 -0
  475. package/dist/esm/src/toggle-button/styles.d.ts +1 -0
  476. package/dist/esm/src/toggle-button/template.d.ts +4 -0
  477. package/dist/esm/src/toggle-button/types.d.ts +5 -0
  478. package/dist/esm/src/toolbar/index.d.ts +12 -0
  479. package/dist/esm/src/toolbar/styles.d.ts +1 -0
  480. package/dist/esm/src/tooltip/index.d.ts +20 -0
  481. package/dist/esm/src/tooltip/styles.d.ts +1 -0
  482. package/dist/esm/src/tooltip/template.d.ts +2 -0
  483. package/dist/esm/src/tooltip/types.d.ts +10 -0
  484. package/dist/esm/src/tree-item/index.d.ts +23 -0
  485. package/dist/esm/src/tree-item/styles.d.ts +1 -0
  486. package/dist/esm/src/tree-view/index.d.ts +29 -0
  487. package/dist/esm/src/tree-view/styles.d.ts +1 -0
  488. package/dist/esm/src/tree-view/template.d.ts +2 -0
  489. package/dist/esm/src/tree-view/types.d.ts +8 -0
  490. package/dist/esm/src/unit/base/template.d.ts +1 -0
  491. package/dist/esm/src/unit/base/unit.d.ts +9 -0
  492. package/dist/esm/src/unit/byte/index.d.ts +19 -0
  493. package/dist/esm/src/unit/volt/index.d.ts +13 -0
  494. package/dist/esm/src/utilities/directive/overflow.d.ts +36 -0
  495. package/dist/esm/src/utilities/models/converter.d.ts +2 -0
  496. package/dist/esm/src/utilities/models/document-element-lang.d.ts +9 -0
  497. package/dist/esm/src/utilities/models/string-normalizers.d.ts +5 -0
  498. package/dist/esm/src/utilities/models/tracker.d.ts +21 -0
  499. package/dist/esm/src/utilities/models/update-tracker.d.ts +7 -0
  500. package/dist/esm/src/utilities/models/validator.d.ts +11 -0
  501. package/dist/esm/src/utilities/style/accessibly-hidden.d.ts +6 -0
  502. package/dist/esm/src/utilities/style/appearance.d.ts +11 -0
  503. package/dist/esm/src/utilities/style/colors.d.ts +8 -0
  504. package/dist/esm/src/utilities/style/direction.d.ts +34 -0
  505. package/dist/esm/src/utilities/style/focus.d.ts +11 -0
  506. package/dist/esm/src/utilities/style/multivalue-property-stylesheet-behavior.d.ts +37 -0
  507. package/dist/esm/src/utilities/style/prefers-reduced-motion.d.ts +4 -0
  508. package/dist/esm/src/utilities/style/theme.d.ts +37 -0
  509. package/dist/esm/src/utilities/style/types.d.ts +5 -0
  510. package/dist/esm/src/utilities/style/user-select.d.ts +5 -0
  511. package/dist/esm/src/utilities/unit-format/decimal-unit-format.d.ts +19 -0
  512. package/dist/esm/src/utilities/unit-format/default-unit-format.d.ts +22 -0
  513. package/dist/esm/src/utilities/unit-format/scaled-unit/scaled-unit.d.ts +16 -0
  514. package/dist/esm/src/utilities/unit-format/scaled-unit-format/intl-number-format-scaled-unit-format.d.ts +11 -0
  515. package/dist/esm/src/utilities/unit-format/scaled-unit-format/manually-translated-scaled-unit-format.d.ts +43 -0
  516. package/dist/esm/src/utilities/unit-format/scaled-unit-format/scaled-unit-format.d.ts +10 -0
  517. package/dist/esm/src/utilities/unit-format/unit-format.d.ts +16 -0
  518. package/dist/esm/src/utilities/unit-format/unit-scale/byte-1024-unit-scale.d.ts +9 -0
  519. package/dist/esm/src/utilities/unit-format/unit-scale/byte-unit-scale.d.ts +9 -0
  520. package/dist/esm/src/utilities/unit-format/unit-scale/passthrough-unit-scale.d.ts +9 -0
  521. package/dist/esm/src/utilities/unit-format/unit-scale/unit-scale.d.ts +15 -0
  522. package/dist/esm/src/utilities/unit-format/unit-scale/utilities/metrix-prefixes.d.ts +1 -0
  523. package/dist/esm/src/utilities/unit-format/unit-scale/volt-unit-scale.d.ts +9 -0
  524. package/dist/esm/src/utilities/wait-until-custom-elements-defined-async.d.ts +1 -0
  525. package/dist/esm/src/wafer-map/index.d.ts +146 -0
  526. package/dist/esm/src/wafer-map/modules/computations.d.ts +39 -0
  527. package/dist/esm/src/wafer-map/modules/create-matrix-renderer.d.ts +10 -0
  528. package/dist/esm/src/wafer-map/modules/data-manager.d.ts +30 -0
  529. package/dist/esm/src/wafer-map/modules/experimental/computations.d.ts +31 -0
  530. package/dist/esm/src/wafer-map/modules/experimental/data-manager.d.ts +27 -0
  531. package/dist/esm/src/wafer-map/modules/experimental/hover-handler.d.ts +23 -0
  532. package/dist/esm/src/wafer-map/modules/experimental/worker-renderer.d.ts +12 -0
  533. package/dist/esm/src/wafer-map/modules/hover-handler.d.ts +20 -0
  534. package/dist/esm/src/wafer-map/modules/prerendering.d.ts +30 -0
  535. package/dist/esm/src/wafer-map/modules/rendering.d.ts +19 -0
  536. package/dist/esm/src/wafer-map/modules/wafer-map-update-tracker.d.ts +25 -0
  537. package/dist/esm/src/wafer-map/modules/wafer-map-validator.d.ts +16 -0
  538. package/dist/esm/src/wafer-map/modules/zoom-handler.d.ts +20 -0
  539. package/dist/esm/src/wafer-map/styles.d.ts +1 -0
  540. package/dist/esm/src/wafer-map/template.d.ts +2 -0
  541. package/dist/esm/src/wafer-map/types.d.ts +73 -0
  542. package/dist/esm/src/wafer-map/workers/matrix-renderer.d.ts +1 -0
  543. package/dist/esm/table-column/anchor/cell-view/index.d.ts +2 -0
  544. package/dist/esm/table-column/anchor/cell-view/index.js +12 -0
  545. package/dist/esm/table-column/anchor/cell-view/index.js.map +1 -1
  546. package/dist/esm/table-column/anchor/cell-view/styles.js +6 -1
  547. package/dist/esm/table-column/anchor/cell-view/styles.js.map +1 -1
  548. package/dist/esm/table-column/anchor/cell-view/template.js +1 -0
  549. package/dist/esm/table-column/anchor/cell-view/template.js.map +1 -1
  550. package/dist/esm/table-column/anchor/index.d.ts +5 -0
  551. package/dist/esm/table-column/anchor/index.js +7 -2
  552. package/dist/esm/table-column/anchor/index.js.map +1 -1
  553. package/dist/esm/table-column/date-text/cell-view/index.d.ts +1 -3
  554. package/dist/esm/table-column/date-text/cell-view/index.js +0 -6
  555. package/dist/esm/table-column/date-text/cell-view/index.js.map +1 -1
  556. package/dist/esm/table-column/date-text/index.d.ts +3 -1
  557. package/dist/esm/table-column/date-text/index.js +5 -1
  558. package/dist/esm/table-column/date-text/index.js.map +1 -1
  559. package/dist/esm/table-column/duration-text/cell-view/index.d.ts +1 -3
  560. package/dist/esm/table-column/duration-text/cell-view/index.js +0 -6
  561. package/dist/esm/table-column/duration-text/cell-view/index.js.map +1 -1
  562. package/dist/esm/table-column/duration-text/index.d.ts +3 -1
  563. package/dist/esm/table-column/duration-text/index.js +8 -9
  564. package/dist/esm/table-column/duration-text/index.js.map +1 -1
  565. package/dist/esm/table-column/enum-base/index.d.ts +2 -1
  566. package/dist/esm/table-column/enum-base/index.js.map +1 -1
  567. package/dist/esm/table-column/enum-text/cell-view/index.d.ts +1 -3
  568. package/dist/esm/table-column/enum-text/cell-view/index.js +0 -6
  569. package/dist/esm/table-column/enum-text/cell-view/index.js.map +1 -1
  570. package/dist/esm/table-column/mixins/placeholder.d.ts +9 -0
  571. package/dist/esm/table-column/mixins/placeholder.js +16 -0
  572. package/dist/esm/table-column/mixins/placeholder.js.map +1 -0
  573. package/dist/esm/table-column/number-text/cell-view/index.d.ts +2 -3
  574. package/dist/esm/table-column/number-text/cell-view/index.js +1 -4
  575. package/dist/esm/table-column/number-text/cell-view/index.js.map +1 -1
  576. package/dist/esm/table-column/number-text/index.d.ts +3 -1
  577. package/dist/esm/table-column/number-text/index.js +5 -1
  578. package/dist/esm/table-column/number-text/index.js.map +1 -1
  579. package/dist/esm/table-column/text/cell-view/index.d.ts +1 -1
  580. package/dist/esm/table-column/text/cell-view/index.js +1 -1
  581. package/dist/esm/table-column/text/cell-view/index.js.map +1 -1
  582. package/dist/esm/table-column/text/index.d.ts +3 -1
  583. package/dist/esm/table-column/text/index.js +5 -0
  584. package/dist/esm/table-column/text/index.js.map +1 -1
  585. package/dist/esm/table-column/text-base/cell-view/index.d.ts +20 -1
  586. package/dist/esm/table-column/text-base/cell-view/index.js +34 -0
  587. package/dist/esm/table-column/text-base/cell-view/index.js.map +1 -1
  588. package/dist/esm/table-column/text-base/cell-view/styles.js +6 -1
  589. package/dist/esm/table-column/text-base/cell-view/styles.js.map +1 -1
  590. package/dist/esm/table-column/text-base/cell-view/template.d.ts +1 -1
  591. package/dist/esm/table-column/text-base/cell-view/template.js +5 -3
  592. package/dist/esm/table-column/text-base/cell-view/template.js.map +1 -1
  593. package/dist/esm/table-column/text-base/index.d.ts +3 -0
  594. package/dist/esm/table-column/text-base/index.js +2 -1
  595. package/dist/esm/table-column/text-base/index.js.map +1 -1
  596. package/package.json +17 -14
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/table-column/duration-text/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,YAAY,EAEf,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AACxC,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAE5C,OAAO,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AACnD,OAAO,EAAE,wBAAwB,EAAE,MAAM,eAAe,CAAC;AACzD,OAAO,EAAE,kCAAkC,EAAE,MAAM,aAAa,CAAC;AAEjE,OAAO,EAAE,IAAI,EAAE,MAAM,sBAAsB,CAAC;AAC5C,OAAO,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AAChE,OAAO,EAAE,yCAAyC,EAAE,MAAM,qBAAqB,CAAC;AAahF;;GAEG;AACH,MAAM,OAAO,uBAAwB,SAAQ,mBAAmB;IAAhE;;QACqB,mBAAc,GAAuC;YAClE,YAAY,EAAE,GAAG,EAAE;gBACf,IAAI,CAAC,kBAAkB,EAAE,CAAC;YAC9B,CAAC;SACJ,CAAC;IAmCN,CAAC;IAjCmB,iBAAiB;QAC7B,KAAK,CAAC,iBAAiB,EAAE,CAAC;QAC1B,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,cAAc,EAAE,IAAI,CAAC,CAAC;QAC1C,IAAI,CAAC,kBAAkB,EAAE,CAAC;IAC9B,CAAC;IAEe,oBAAoB;QAChC,KAAK,CAAC,oBAAoB,EAAE,CAAC;QAC7B,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,cAAc,EAAE,IAAI,CAAC,CAAC;IAChD,CAAC;IAEkB,yBAAyB;QACxC,OAAO;YACH,oBAAoB,EAAE,CAAC,OAAO,CAAC;YAC/B,WAAW,EAAE,kCAAkC;YAC/C,kBAAkB,EAAE,yCAAyC;YAC7D,eAAe,EAAE,EAAE;YACnB,aAAa,EAAE,wBAAwB,CAAC,KAAK;SAChD,CAAC;IACN,CAAC;IAEO,kBAAkB;QACtB,MAAM,SAAS,GAAG,IAAI,iBAAiB,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC;QAEhE,IAAI,SAAS,EAAE;YACX,MAAM,YAAY,GAAwC;gBACtD,SAAS;aACZ,CAAC;YACF,IAAI,CAAC,eAAe,CAAC,YAAY,GAAG,YAAY,CAAC;SACpD;aAAM;YACH,IAAI,CAAC,eAAe,CAAC,YAAY,GAAG,SAAS,CAAC;SACjD;IACL,CAAC;CACJ;AAED,MAAM,6BAA6B,GAAG,uBAAuB,CAAC,OAAO,CAAC;IAClE,QAAQ,EAAE,4BAA4B;IACtC,QAAQ;IACR,MAAM;CACT,CAAC,CAAC;AAEH,YAAY,CAAC,WAAW,EAAE;KACrB,UAAU,CAAC,QAAQ,CAAC;KACpB,QAAQ,CAAC,6BAA6B,EAAE,CAAC,CAAC;AAC/C,MAAM,CAAC,MAAM,0BAA0B,GAAG,mCAAmC,CAAC","sourcesContent":["import {\n DesignSystem,\n DesignTokenSubscriber\n} from '@microsoft/fast-foundation';\nimport { styles } from '../base/styles';\nimport { template } from '../base/template';\nimport type { TableNumberField } from '../../table/types';\nimport { TableColumnTextBase } from '../text-base';\nimport { TableColumnSortOperation } from '../base/types';\nimport { tableColumnDurationTextCellViewTag } from './cell-view';\nimport type { ColumnInternalsOptions } from '../base/models/column-internals';\nimport { lang } from '../../theme-provider';\nimport { DurationFormatter } from './models/duration-formatter';\nimport { tableColumnDurationTextGroupHeaderViewTag } from './group-header-view';\n\nexport type TableColumnDurationTextCellRecord = TableNumberField<'value'>;\nexport interface TableColumnDurationTextColumnConfig {\n formatter: DurationFormatter;\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'nimble-table-column-duration-text': TableColumnDurationText;\n }\n}\n\n/**\n * The table column for displaying a duration value as text.\n */\nexport class TableColumnDurationText extends TableColumnTextBase {\n private readonly langSubscriber: DesignTokenSubscriber<typeof lang> = {\n handleChange: () => {\n this.updateColumnConfig();\n }\n };\n\n public override connectedCallback(): void {\n super.connectedCallback();\n lang.subscribe(this.langSubscriber, this);\n this.updateColumnConfig();\n }\n\n public override disconnectedCallback(): void {\n super.disconnectedCallback();\n lang.unsubscribe(this.langSubscriber, this);\n }\n\n protected override getColumnInternalsOptions(): ColumnInternalsOptions {\n return {\n cellRecordFieldNames: ['value'],\n cellViewTag: tableColumnDurationTextCellViewTag,\n groupHeaderViewTag: tableColumnDurationTextGroupHeaderViewTag,\n delegatedEvents: [],\n sortOperation: TableColumnSortOperation.basic\n };\n }\n\n private updateColumnConfig(): void {\n const formatter = new DurationFormatter(lang.getValueFor(this));\n\n if (formatter) {\n const columnConfig: TableColumnDurationTextColumnConfig = {\n formatter\n };\n this.columnInternals.columnConfig = columnConfig;\n } else {\n this.columnInternals.columnConfig = undefined;\n }\n }\n}\n\nconst nimbleTableColumnDurationText = TableColumnDurationText.compose({\n baseName: 'table-column-duration-text',\n template,\n styles\n});\n\nDesignSystem.getOrCreate()\n .withPrefix('nimble')\n .register(nimbleTableColumnDurationText());\nexport const tableColumnDurationTextTag = 'nimble-table-column-duration-text';\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/table-column/duration-text/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,YAAY,EAEf,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AACxC,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAE5C,OAAO,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AACnD,OAAO,EAAE,wBAAwB,EAAE,MAAM,eAAe,CAAC;AACzD,OAAO,EAAE,kCAAkC,EAAE,MAAM,aAAa,CAAC;AAEjE,OAAO,EAAE,IAAI,EAAE,MAAM,sBAAsB,CAAC;AAC5C,OAAO,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AAChE,OAAO,EAAE,yCAAyC,EAAE,MAAM,qBAAqB,CAAC;AAehF;;GAEG;AACH,MAAM,OAAO,uBAAwB,SAAQ,mBAAmB;IAAhE;;QACqB,mBAAc,GAAuC;YAClE,YAAY,EAAE,GAAG,EAAE;gBACf,IAAI,CAAC,kBAAkB,EAAE,CAAC;YAC9B,CAAC;SACJ,CAAC;IAoCN,CAAC;IAlCmB,iBAAiB;QAC7B,KAAK,CAAC,iBAAiB,EAAE,CAAC;QAC1B,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,cAAc,EAAE,IAAI,CAAC,CAAC;QAC1C,IAAI,CAAC,kBAAkB,EAAE,CAAC;IAC9B,CAAC;IAEe,oBAAoB;QAChC,KAAK,CAAC,oBAAoB,EAAE,CAAC;QAC7B,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,cAAc,EAAE,IAAI,CAAC,CAAC;IAChD,CAAC;IAEM,kBAAkB;QACrB,IAAI,CAAC,kBAAkB,EAAE,CAAC;IAC9B,CAAC;IAEkB,yBAAyB;QACxC,OAAO;YACH,oBAAoB,EAAE,CAAC,OAAO,CAAC;YAC/B,WAAW,EAAE,kCAAkC;YAC/C,kBAAkB,EAAE,yCAAyC;YAC7D,eAAe,EAAE,EAAE;YACnB,aAAa,EAAE,wBAAwB,CAAC,KAAK;SAChD,CAAC;IACN,CAAC;IAEO,kBAAkB;QACtB,MAAM,SAAS,GAAG,IAAI,iBAAiB,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC;QAEhE,MAAM,YAAY,GAAwC;YACtD,SAAS;YACT,WAAW,EAAE,IAAI,CAAC,WAAW;SAChC,CAAC;QACF,IAAI,CAAC,eAAe,CAAC,YAAY,GAAG,YAAY,CAAC;IACrD,CAAC;CACJ;AAED,MAAM,6BAA6B,GAAG,uBAAuB,CAAC,OAAO,CAAC;IAClE,QAAQ,EAAE,4BAA4B;IACtC,QAAQ;IACR,MAAM;CACT,CAAC,CAAC;AAEH,YAAY,CAAC,WAAW,EAAE;KACrB,UAAU,CAAC,QAAQ,CAAC;KACpB,QAAQ,CAAC,6BAA6B,EAAE,CAAC,CAAC;AAC/C,MAAM,CAAC,MAAM,0BAA0B,GAAG,mCAAmC,CAAC","sourcesContent":["import {\n DesignSystem,\n DesignTokenSubscriber\n} from '@microsoft/fast-foundation';\nimport { styles } from '../base/styles';\nimport { template } from '../base/template';\nimport type { TableNumberField } from '../../table/types';\nimport { TableColumnTextBase } from '../text-base';\nimport { TableColumnSortOperation } from '../base/types';\nimport { tableColumnDurationTextCellViewTag } from './cell-view';\nimport type { ColumnInternalsOptions } from '../base/models/column-internals';\nimport { lang } from '../../theme-provider';\nimport { DurationFormatter } from './models/duration-formatter';\nimport { tableColumnDurationTextGroupHeaderViewTag } from './group-header-view';\nimport type { TableColumnTextBaseColumnConfig } from '../text-base/cell-view';\n\nexport type TableColumnDurationTextCellRecord = TableNumberField<'value'>;\nexport interface TableColumnDurationTextColumnConfig\n extends TableColumnTextBaseColumnConfig {\n formatter: DurationFormatter;\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'nimble-table-column-duration-text': TableColumnDurationText;\n }\n}\n\n/**\n * The table column for displaying a duration value as text.\n */\nexport class TableColumnDurationText extends TableColumnTextBase {\n private readonly langSubscriber: DesignTokenSubscriber<typeof lang> = {\n handleChange: () => {\n this.updateColumnConfig();\n }\n };\n\n public override connectedCallback(): void {\n super.connectedCallback();\n lang.subscribe(this.langSubscriber, this);\n this.updateColumnConfig();\n }\n\n public override disconnectedCallback(): void {\n super.disconnectedCallback();\n lang.unsubscribe(this.langSubscriber, this);\n }\n\n public placeholderChanged(): void {\n this.updateColumnConfig();\n }\n\n protected override getColumnInternalsOptions(): ColumnInternalsOptions {\n return {\n cellRecordFieldNames: ['value'],\n cellViewTag: tableColumnDurationTextCellViewTag,\n groupHeaderViewTag: tableColumnDurationTextGroupHeaderViewTag,\n delegatedEvents: [],\n sortOperation: TableColumnSortOperation.basic\n };\n }\n\n private updateColumnConfig(): void {\n const formatter = new DurationFormatter(lang.getValueFor(this));\n\n const columnConfig: TableColumnDurationTextColumnConfig = {\n formatter,\n placeholder: this.placeholder\n };\n this.columnInternals.columnConfig = columnConfig;\n }\n}\n\nconst nimbleTableColumnDurationText = TableColumnDurationText.compose({\n baseName: 'table-column-duration-text',\n template,\n styles\n});\n\nDesignSystem.getOrCreate()\n .withPrefix('nimble')\n .register(nimbleTableColumnDurationText());\nexport const tableColumnDurationTextTag = 'nimble-table-column-duration-text';\n"]}
@@ -6,9 +6,10 @@ import type { MappingKeyType } from './types';
6
6
  import type { MappingConfig } from './models/mapping-config';
7
7
  import type { MappingKey } from '../../mapping/base/types';
8
8
  import type { TableColumnEnumBaseValidator } from './models/table-column-enum-base-validator';
9
+ import type { TableColumnTextBaseColumnConfig } from '../text-base/cell-view';
9
10
  export type TableColumnEnumCellRecord = TableStringField<'value'> | TableBooleanField<'value'> | TableNumberField<'value'>;
10
11
  export type MappingConfigs = Map<MappingKey, MappingConfig>;
11
- export interface TableColumnEnumColumnConfig {
12
+ export interface TableColumnEnumColumnConfig extends TableColumnTextBaseColumnConfig {
12
13
  mappingConfigs: MappingConfigs;
13
14
  }
14
15
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/table-column/enum-base/index.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n attr,\n Notifier,\n Observable,\n observable,\n Subscriber\n} from '@microsoft/fast-element';\nimport type {\n TableStringField,\n TableBooleanField,\n TableNumberField\n} from '../../table/types';\nimport { TableColumn } from '../base';\nimport { Mapping } from '../../mapping/base';\nimport type { MappingKeyType } from './types';\nimport type { MappingConfig } from './models/mapping-config';\nimport type { MappingKey } from '../../mapping/base/types';\nimport { resolveKeyWithType } from './models/mapping-key-resolver';\nimport type { TableColumnEnumBaseValidator } from './models/table-column-enum-base-validator';\n\nexport type TableColumnEnumCellRecord =\n | TableStringField<'value'>\n | TableBooleanField<'value'>\n | TableNumberField<'value'>;\nexport type MappingConfigs = Map<MappingKey, MappingConfig>;\nexport interface TableColumnEnumColumnConfig {\n mappingConfigs: MappingConfigs;\n}\n\n/**\n * Base class for table columns that map values to content (e.g. nimble-table-column-enum-text and nimble-table-column-icon)\n */\nexport abstract class TableColumnEnumBase<\n TColumnConfig extends TableColumnEnumColumnConfig,\n TEnumValidator extends TableColumnEnumBaseValidator<[]>\n>\n extends TableColumn<TColumnConfig>\n implements Subscriber {\n // To ensure the validator is available when other properties get initialized\n // (which can trigger validation), declare the validator first.\n /** @internal */\n public validator = this.createValidator();\n\n /** @internal */\n public mappingNotifiers: Notifier[] = [];\n\n /** @internal */\n @observable\n public mappings: Mapping<unknown>[] = [];\n\n @attr({ attribute: 'field-name' })\n public fieldName?: string;\n\n @attr({ attribute: 'key-type' })\n public keyType: MappingKeyType = 'string';\n\n /**\n * @internal\n *\n * Triggers a request to update the columnConfig when any observable property on\n * a mapping is updated.\n */\n public handleChange(source: unknown, args: unknown): void {\n if (source instanceof Mapping && typeof args === 'string') {\n this.updateColumnConfig();\n }\n }\n\n public abstract createValidator(): TEnumValidator;\n\n /**\n * Implementations should throw an error if an invalid Mapping is passed.\n */\n protected abstract createMappingConfig(\n mapping: Mapping<unknown>\n ): MappingConfig;\n\n protected abstract createColumnConfig(\n mappingConfigs: MappingConfigs\n ): TColumnConfig;\n\n /**\n * Called when any Mapping related state has changed.\n */\n private updateColumnConfig(): void {\n this.validator.validate(this.mappings, this.keyType);\n this.columnInternals.columnConfig = this.validator.isValid()\n ? this.createColumnConfig(this.getMappingConfigs())\n : undefined;\n }\n\n private getMappingConfigs(): MappingConfigs {\n const mappingConfigs = new Map<MappingKey, MappingConfig>();\n this.mappings.forEach(mapping => {\n const key = resolveKeyWithType(mapping.key, this.keyType);\n if (key === undefined) {\n throw Error(\n 'Key was invalid for type. Validation should have prevented this.'\n );\n }\n const mappingConfig = this.createMappingConfig(mapping);\n mappingConfigs.set(key, mappingConfig);\n });\n return mappingConfigs;\n }\n\n private fieldNameChanged(): void {\n this.columnInternals.dataRecordFieldNames = [this.fieldName];\n this.columnInternals.operandDataRecordFieldName = this.fieldName;\n }\n\n private mappingsChanged(): void {\n this.updateColumnConfig();\n this.observeMappings();\n }\n\n private keyTypeChanged(): void {\n this.updateColumnConfig();\n }\n\n private removeMappingObservers(): void {\n this.mappingNotifiers.forEach(notifier => {\n notifier.unsubscribe(this);\n });\n this.mappingNotifiers = [];\n }\n\n private observeMappings(): void {\n this.removeMappingObservers();\n\n for (const mapping of this.mappings) {\n const notifier = Observable.getNotifier(mapping);\n notifier.subscribe(this);\n this.mappingNotifiers.push(notifier);\n }\n }\n}\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/table-column/enum-base/index.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n attr,\n Notifier,\n Observable,\n observable,\n Subscriber\n} from '@microsoft/fast-element';\nimport type {\n TableStringField,\n TableBooleanField,\n TableNumberField\n} from '../../table/types';\nimport { TableColumn } from '../base';\nimport { Mapping } from '../../mapping/base';\nimport type { MappingKeyType } from './types';\nimport type { MappingConfig } from './models/mapping-config';\nimport type { MappingKey } from '../../mapping/base/types';\nimport { resolveKeyWithType } from './models/mapping-key-resolver';\nimport type { TableColumnEnumBaseValidator } from './models/table-column-enum-base-validator';\nimport type { TableColumnTextBaseColumnConfig } from '../text-base/cell-view';\n\nexport type TableColumnEnumCellRecord =\n | TableStringField<'value'>\n | TableBooleanField<'value'>\n | TableNumberField<'value'>;\nexport type MappingConfigs = Map<MappingKey, MappingConfig>;\nexport interface TableColumnEnumColumnConfig\n extends TableColumnTextBaseColumnConfig {\n mappingConfigs: MappingConfigs;\n}\n\n/**\n * Base class for table columns that map values to content (e.g. nimble-table-column-enum-text and nimble-table-column-icon)\n */\nexport abstract class TableColumnEnumBase<\n TColumnConfig extends TableColumnEnumColumnConfig,\n TEnumValidator extends TableColumnEnumBaseValidator<[]>\n>\n extends TableColumn<TColumnConfig>\n implements Subscriber {\n // To ensure the validator is available when other properties get initialized\n // (which can trigger validation), declare the validator first.\n /** @internal */\n public validator = this.createValidator();\n\n /** @internal */\n public mappingNotifiers: Notifier[] = [];\n\n /** @internal */\n @observable\n public mappings: Mapping<unknown>[] = [];\n\n @attr({ attribute: 'field-name' })\n public fieldName?: string;\n\n @attr({ attribute: 'key-type' })\n public keyType: MappingKeyType = 'string';\n\n /**\n * @internal\n *\n * Triggers a request to update the columnConfig when any observable property on\n * a mapping is updated.\n */\n public handleChange(source: unknown, args: unknown): void {\n if (source instanceof Mapping && typeof args === 'string') {\n this.updateColumnConfig();\n }\n }\n\n public abstract createValidator(): TEnumValidator;\n\n /**\n * Implementations should throw an error if an invalid Mapping is passed.\n */\n protected abstract createMappingConfig(\n mapping: Mapping<unknown>\n ): MappingConfig;\n\n protected abstract createColumnConfig(\n mappingConfigs: MappingConfigs\n ): TColumnConfig;\n\n /**\n * Called when any Mapping related state has changed.\n */\n private updateColumnConfig(): void {\n this.validator.validate(this.mappings, this.keyType);\n this.columnInternals.columnConfig = this.validator.isValid()\n ? this.createColumnConfig(this.getMappingConfigs())\n : undefined;\n }\n\n private getMappingConfigs(): MappingConfigs {\n const mappingConfigs = new Map<MappingKey, MappingConfig>();\n this.mappings.forEach(mapping => {\n const key = resolveKeyWithType(mapping.key, this.keyType);\n if (key === undefined) {\n throw Error(\n 'Key was invalid for type. Validation should have prevented this.'\n );\n }\n const mappingConfig = this.createMappingConfig(mapping);\n mappingConfigs.set(key, mappingConfig);\n });\n return mappingConfigs;\n }\n\n private fieldNameChanged(): void {\n this.columnInternals.dataRecordFieldNames = [this.fieldName];\n this.columnInternals.operandDataRecordFieldName = this.fieldName;\n }\n\n private mappingsChanged(): void {\n this.updateColumnConfig();\n this.observeMappings();\n }\n\n private keyTypeChanged(): void {\n this.updateColumnConfig();\n }\n\n private removeMappingObservers(): void {\n this.mappingNotifiers.forEach(notifier => {\n notifier.unsubscribe(this);\n });\n this.mappingNotifiers = [];\n }\n\n private observeMappings(): void {\n this.removeMappingObservers();\n\n for (const mapping of this.mappings) {\n const notifier = Observable.getNotifier(mapping);\n notifier.subscribe(this);\n this.mappingNotifiers.push(notifier);\n }\n }\n}\n"]}
@@ -9,8 +9,6 @@ declare global {
9
9
  * A cell view for displaying mapped text
10
10
  */
11
11
  export declare class TableColumnEnumTextCellView extends TableColumnTextCellViewBase<TableColumnEnumCellRecord, TableColumnEnumColumnConfig> {
12
- private columnConfigChanged;
13
- private cellRecordChanged;
14
- private updateText;
12
+ protected updateText(): void;
15
13
  }
16
14
  export declare const tableColumnEnumTextCellViewTag = "nimble-table-column-enum-text-cell-view";
@@ -7,12 +7,6 @@ import { MappingTextConfig } from '../../enum-base/models/mapping-text-config';
7
7
  * A cell view for displaying mapped text
8
8
  */
9
9
  export class TableColumnEnumTextCellView extends TableColumnTextCellViewBase {
10
- columnConfigChanged() {
11
- this.updateText();
12
- }
13
- cellRecordChanged() {
14
- this.updateText();
15
- }
16
10
  updateText() {
17
11
  const value = this.cellRecord?.value;
18
12
  if (value === undefined || value === null) {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/table-column/enum-text/cell-view/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAC1D,OAAO,EAAE,MAAM,EAAE,MAAM,kCAAkC,CAAC;AAC1D,OAAO,EAAE,QAAQ,EAAE,MAAM,oCAAoC,CAAC;AAK9D,OAAO,EAAE,2BAA2B,EAAE,MAAM,2BAA2B,CAAC;AACxE,OAAO,EAAE,iBAAiB,EAAE,MAAM,4CAA4C,CAAC;AAQ/E;;GAEG;AACH,MAAM,OAAO,2BAA4B,SAAQ,2BAGhD;IACW,mBAAmB;QACvB,IAAI,CAAC,UAAU,EAAE,CAAC;IACtB,CAAC;IAEO,iBAAiB;QACrB,IAAI,CAAC,UAAU,EAAE,CAAC;IACtB,CAAC;IAEO,UAAU;QACd,MAAM,KAAK,GAAG,IAAI,CAAC,UAAU,EAAE,KAAK,CAAC;QACrC,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI,EAAE;YACvC,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC;YACf,OAAO;SACV;QAED,MAAM,MAAM,GAAG,IAAI,CAAC,YAAY,EAAE,cAAc,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QAC5D,IAAI,CAAC,IAAI,GAAG,MAAM,YAAY,iBAAiB,IAAI,MAAM,CAAC,IAAI;YAC1D,CAAC,CAAC,MAAM,CAAC,IAAI;YACb,CAAC,CAAC,EAAE,CAAC;IACb,CAAC;CACJ;AAED,MAAM,gBAAgB,GAAG,2BAA2B,CAAC,OAAO,CAAC;IACzD,QAAQ,EAAE,kCAAkC;IAC5C,QAAQ;IACR,MAAM;CACT,CAAC,CAAC;AACH,YAAY,CAAC,WAAW,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,gBAAgB,EAAE,CAAC,CAAC;AAC7E,MAAM,CAAC,MAAM,8BAA8B,GAAG,yCAAyC,CAAC","sourcesContent":["import { DesignSystem } from '@microsoft/fast-foundation';\nimport { styles } from '../../text-base/cell-view/styles';\nimport { template } from '../../text-base/cell-view/template';\nimport type {\n TableColumnEnumCellRecord,\n TableColumnEnumColumnConfig\n} from '../../enum-base';\nimport { TableColumnTextCellViewBase } from '../../text-base/cell-view';\nimport { MappingTextConfig } from '../../enum-base/models/mapping-text-config';\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'nimble-table-column-enum-text-cell-view': TableColumnEnumTextCellView;\n }\n}\n\n/**\n * A cell view for displaying mapped text\n */\nexport class TableColumnEnumTextCellView extends TableColumnTextCellViewBase<\nTableColumnEnumCellRecord,\nTableColumnEnumColumnConfig\n> {\n private columnConfigChanged(): void {\n this.updateText();\n }\n\n private cellRecordChanged(): void {\n this.updateText();\n }\n\n private updateText(): void {\n const value = this.cellRecord?.value;\n if (value === undefined || value === null) {\n this.text = '';\n return;\n }\n\n const config = this.columnConfig?.mappingConfigs.get(value);\n this.text = config instanceof MappingTextConfig && config.text\n ? config.text\n : '';\n }\n}\n\nconst enumTextCellView = TableColumnEnumTextCellView.compose({\n baseName: 'table-column-enum-text-cell-view',\n template,\n styles\n});\nDesignSystem.getOrCreate().withPrefix('nimble').register(enumTextCellView());\nexport const tableColumnEnumTextCellViewTag = 'nimble-table-column-enum-text-cell-view';\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/table-column/enum-text/cell-view/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAC1D,OAAO,EAAE,MAAM,EAAE,MAAM,kCAAkC,CAAC;AAC1D,OAAO,EAAE,QAAQ,EAAE,MAAM,oCAAoC,CAAC;AAK9D,OAAO,EAAE,2BAA2B,EAAE,MAAM,2BAA2B,CAAC;AACxE,OAAO,EAAE,iBAAiB,EAAE,MAAM,4CAA4C,CAAC;AAQ/E;;GAEG;AACH,MAAM,OAAO,2BAA4B,SAAQ,2BAGhD;IACa,UAAU;QAChB,MAAM,KAAK,GAAG,IAAI,CAAC,UAAU,EAAE,KAAK,CAAC;QACrC,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI,EAAE;YACvC,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC;YACf,OAAO;SACV;QAED,MAAM,MAAM,GAAG,IAAI,CAAC,YAAY,EAAE,cAAc,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QAC5D,IAAI,CAAC,IAAI,GAAG,MAAM,YAAY,iBAAiB,IAAI,MAAM,CAAC,IAAI;YAC1D,CAAC,CAAC,MAAM,CAAC,IAAI;YACb,CAAC,CAAC,EAAE,CAAC;IACb,CAAC;CACJ;AAED,MAAM,gBAAgB,GAAG,2BAA2B,CAAC,OAAO,CAAC;IACzD,QAAQ,EAAE,kCAAkC;IAC5C,QAAQ;IACR,MAAM;CACT,CAAC,CAAC;AACH,YAAY,CAAC,WAAW,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,gBAAgB,EAAE,CAAC,CAAC;AAC7E,MAAM,CAAC,MAAM,8BAA8B,GAAG,yCAAyC,CAAC","sourcesContent":["import { DesignSystem } from '@microsoft/fast-foundation';\nimport { styles } from '../../text-base/cell-view/styles';\nimport { template } from '../../text-base/cell-view/template';\nimport type {\n TableColumnEnumCellRecord,\n TableColumnEnumColumnConfig\n} from '../../enum-base';\nimport { TableColumnTextCellViewBase } from '../../text-base/cell-view';\nimport { MappingTextConfig } from '../../enum-base/models/mapping-text-config';\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'nimble-table-column-enum-text-cell-view': TableColumnEnumTextCellView;\n }\n}\n\n/**\n * A cell view for displaying mapped text\n */\nexport class TableColumnEnumTextCellView extends TableColumnTextCellViewBase<\nTableColumnEnumCellRecord,\nTableColumnEnumColumnConfig\n> {\n protected updateText(): void {\n const value = this.cellRecord?.value;\n if (value === undefined || value === null) {\n this.text = '';\n return;\n }\n\n const config = this.columnConfig?.mappingConfigs.get(value);\n this.text = config instanceof MappingTextConfig && config.text\n ? config.text\n : '';\n }\n}\n\nconst enumTextCellView = TableColumnEnumTextCellView.compose({\n baseName: 'table-column-enum-text-cell-view',\n template,\n styles\n});\nDesignSystem.getOrCreate().withPrefix('nimble').register(enumTextCellView());\nexport const tableColumnEnumTextCellViewTag = 'nimble-table-column-enum-text-cell-view';\n"]}
@@ -0,0 +1,9 @@
1
+ import type { TableColumn } from '../base';
2
+ type TableColumnWithPlaceholder = Pick<TableColumn, never>;
3
+ type TableColumnWithPlaceholderConstructor = abstract new (...args: any[]) => TableColumnWithPlaceholder;
4
+ export declare function mixinColumnWithPlaceholderAPI<TBase extends TableColumnWithPlaceholderConstructor>(base: TBase): (abstract new (...args: any[]) => {
5
+ placeholder?: string | undefined;
6
+ /** @internal */
7
+ placeholderChanged(): void;
8
+ }) & TBase;
9
+ export {};
@@ -0,0 +1,16 @@
1
+ import { attr } from '@microsoft/fast-element';
2
+ // As the returned class is internal to the function, we can't write a signature that uses it directly, so rely on inference
3
+ // eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types, @typescript-eslint/explicit-function-return-type
4
+ export function mixinColumnWithPlaceholderAPI(base) {
5
+ /**
6
+ * The Mixin that provides a concrete column with the API to allow grouping
7
+ * by the values in that column.
8
+ */
9
+ class ColumnWithPlaceholder extends base {
10
+ }
11
+ attr({ attribute: 'placeholder' })(
12
+ // eslint-disable-next-line @typescript-eslint/no-unsafe-argument
13
+ ColumnWithPlaceholder.prototype, 'placeholder');
14
+ return ColumnWithPlaceholder;
15
+ }
16
+ //# sourceMappingURL=placeholder.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"placeholder.js","sourceRoot":"","sources":["../../../../src/table-column/mixins/placeholder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,yBAAyB,CAAC;AAU/C,4HAA4H;AAC5H,+HAA+H;AAC/H,MAAM,UAAU,6BAA6B,CAE3C,IAAW;IACT;;;OAGG;IACH,MAAe,qBAAsB,SAAQ,IAAI;KAKhD;IACD,IAAI,CAAC,EAAE,SAAS,EAAE,aAAa,EAAE,CAAC;IAC9B,iEAAiE;IACjE,qBAAqB,CAAC,SAAS,EAC/B,aAAa,CAChB,CAAC;IAEF,OAAO,qBAAqB,CAAC;AACjC,CAAC","sourcesContent":["import { attr } from '@microsoft/fast-element';\nimport type { TableColumn } from '../base';\n\n// Pick just the relevant properties the mixin depends on (typescript complains if the mixin declares private / protected base exports)\n// Because the 'placeholder' mixin doesn't depend on any properties of the TableColumn, there are no properties to pick.\ntype TableColumnWithPlaceholder = Pick<TableColumn, never>;\n// prettier-ignore\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\ntype TableColumnWithPlaceholderConstructor = abstract new (...args: any[]) => TableColumnWithPlaceholder;\n\n// As the returned class is internal to the function, we can't write a signature that uses it directly, so rely on inference\n// eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types, @typescript-eslint/explicit-function-return-type\nexport function mixinColumnWithPlaceholderAPI<\n TBase extends TableColumnWithPlaceholderConstructor\n>(base: TBase) {\n /**\n * The Mixin that provides a concrete column with the API to allow grouping\n * by the values in that column.\n */\n abstract class ColumnWithPlaceholder extends base {\n public placeholder?: string;\n\n /** @internal */\n public abstract placeholderChanged(): void;\n }\n attr({ attribute: 'placeholder' })(\n // eslint-disable-next-line @typescript-eslint/no-unsafe-argument\n ColumnWithPlaceholder.prototype,\n 'placeholder'\n );\n\n return ColumnWithPlaceholder;\n}\n"]}
@@ -9,8 +9,7 @@ declare global {
9
9
  * A cell view for displaying number fields as text
10
10
  */
11
11
  export declare class TableColumnNumberTextCellView extends TableColumnTextCellViewBase<TableColumnNumberTextCellRecord, TableColumnNumberTextColumnConfig> {
12
- private columnConfigChanged;
13
- private cellRecordChanged;
14
- private updateText;
12
+ protected columnConfigChanged(): void;
13
+ protected updateText(): void;
15
14
  }
16
15
  export declare const tableColumnNumberTextCellViewTag = "nimble-table-column-number-text-cell-view";
@@ -8,12 +8,9 @@ import { TextCellViewBaseAlignment } from '../../text-base/cell-view/types';
8
8
  */
9
9
  export class TableColumnNumberTextCellView extends TableColumnTextCellViewBase {
10
10
  columnConfigChanged() {
11
- this.updateText();
11
+ super.columnConfigChanged();
12
12
  this.alignment = this.columnConfig?.alignment ?? TextCellViewBaseAlignment.left;
13
13
  }
14
- cellRecordChanged() {
15
- this.updateText();
16
- }
17
14
  updateText() {
18
15
  this.text = this.columnConfig?.formatter?.format(this.cellRecord?.value) ?? '';
19
16
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/table-column/number-text/cell-view/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAC1D,OAAO,EAAE,QAAQ,EAAE,MAAM,oCAAoC,CAAC;AAK9D,OAAO,EAAE,MAAM,EAAE,MAAM,kCAAkC,CAAC;AAC1D,OAAO,EAAE,2BAA2B,EAAE,MAAM,2BAA2B,CAAC;AACxE,OAAO,EAAE,yBAAyB,EAAE,MAAM,iCAAiC,CAAC;AAQ5E;;GAEG;AACH,MAAM,OAAO,6BAA8B,SAAQ,2BAGlD;IACW,mBAAmB;QACvB,IAAI,CAAC,UAAU,EAAE,CAAC;QAClB,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,YAAY,EAAE,SAAS,IAAI,yBAAyB,CAAC,IAAI,CAAC;IACpF,CAAC;IAEO,iBAAiB;QACrB,IAAI,CAAC,UAAU,EAAE,CAAC;IACtB,CAAC;IAEO,UAAU;QACd,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,YAAY,EAAE,SAAS,EAAE,MAAM,CAAC,IAAI,CAAC,UAAU,EAAE,KAAK,CAAC,IAAI,EAAE,CAAC;IACnF,CAAC;CACJ;AAED,MAAM,kBAAkB,GAAG,6BAA6B,CAAC,OAAO,CAAC;IAC7D,QAAQ,EAAE,oCAAoC;IAC9C,QAAQ;IACR,MAAM;CACT,CAAC,CAAC;AACH,YAAY,CAAC,WAAW,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,kBAAkB,EAAE,CAAC,CAAC;AAC/E,MAAM,CAAC,MAAM,gCAAgC,GAAG,2CAA2C,CAAC","sourcesContent":["import { DesignSystem } from '@microsoft/fast-foundation';\nimport { template } from '../../text-base/cell-view/template';\nimport type {\n TableColumnNumberTextCellRecord,\n TableColumnNumberTextColumnConfig\n} from '..';\nimport { styles } from '../../text-base/cell-view/styles';\nimport { TableColumnTextCellViewBase } from '../../text-base/cell-view';\nimport { TextCellViewBaseAlignment } from '../../text-base/cell-view/types';\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'nimble-table-column-number-text-cell-view': TableColumnNumberTextCellView;\n }\n}\n\n/**\n * A cell view for displaying number fields as text\n */\nexport class TableColumnNumberTextCellView extends TableColumnTextCellViewBase<\nTableColumnNumberTextCellRecord,\nTableColumnNumberTextColumnConfig\n> {\n private columnConfigChanged(): void {\n this.updateText();\n this.alignment = this.columnConfig?.alignment ?? TextCellViewBaseAlignment.left;\n }\n\n private cellRecordChanged(): void {\n this.updateText();\n }\n\n private updateText(): void {\n this.text = this.columnConfig?.formatter?.format(this.cellRecord?.value) ?? '';\n }\n}\n\nconst numberTextCellView = TableColumnNumberTextCellView.compose({\n baseName: 'table-column-number-text-cell-view',\n template,\n styles\n});\nDesignSystem.getOrCreate().withPrefix('nimble').register(numberTextCellView());\nexport const tableColumnNumberTextCellViewTag = 'nimble-table-column-number-text-cell-view';\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/table-column/number-text/cell-view/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAC1D,OAAO,EAAE,QAAQ,EAAE,MAAM,oCAAoC,CAAC;AAK9D,OAAO,EAAE,MAAM,EAAE,MAAM,kCAAkC,CAAC;AAC1D,OAAO,EAAE,2BAA2B,EAAE,MAAM,2BAA2B,CAAC;AACxE,OAAO,EAAE,yBAAyB,EAAE,MAAM,iCAAiC,CAAC;AAQ5E;;GAEG;AACH,MAAM,OAAO,6BAA8B,SAAQ,2BAGlD;IACsB,mBAAmB;QAClC,KAAK,CAAC,mBAAmB,EAAE,CAAC;QAC5B,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,YAAY,EAAE,SAAS,IAAI,yBAAyB,CAAC,IAAI,CAAC;IACpF,CAAC;IAES,UAAU;QAChB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,YAAY,EAAE,SAAS,EAAE,MAAM,CAAC,IAAI,CAAC,UAAU,EAAE,KAAK,CAAC,IAAI,EAAE,CAAC;IACnF,CAAC;CACJ;AAED,MAAM,kBAAkB,GAAG,6BAA6B,CAAC,OAAO,CAAC;IAC7D,QAAQ,EAAE,oCAAoC;IAC9C,QAAQ;IACR,MAAM;CACT,CAAC,CAAC;AACH,YAAY,CAAC,WAAW,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,kBAAkB,EAAE,CAAC,CAAC;AAC/E,MAAM,CAAC,MAAM,gCAAgC,GAAG,2CAA2C,CAAC","sourcesContent":["import { DesignSystem } from '@microsoft/fast-foundation';\nimport { template } from '../../text-base/cell-view/template';\nimport type {\n TableColumnNumberTextCellRecord,\n TableColumnNumberTextColumnConfig\n} from '..';\nimport { styles } from '../../text-base/cell-view/styles';\nimport { TableColumnTextCellViewBase } from '../../text-base/cell-view';\nimport { TextCellViewBaseAlignment } from '../../text-base/cell-view/types';\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'nimble-table-column-number-text-cell-view': TableColumnNumberTextCellView;\n }\n}\n\n/**\n * A cell view for displaying number fields as text\n */\nexport class TableColumnNumberTextCellView extends TableColumnTextCellViewBase<\nTableColumnNumberTextCellRecord,\nTableColumnNumberTextColumnConfig\n> {\n protected override columnConfigChanged(): void {\n super.columnConfigChanged();\n this.alignment = this.columnConfig?.alignment ?? TextCellViewBaseAlignment.left;\n }\n\n protected updateText(): void {\n this.text = this.columnConfig?.formatter?.format(this.cellRecord?.value) ?? '';\n }\n}\n\nconst numberTextCellView = TableColumnNumberTextCellView.compose({\n baseName: 'table-column-number-text-cell-view',\n template,\n styles\n});\nDesignSystem.getOrCreate().withPrefix('nimble').register(numberTextCellView());\nexport const tableColumnNumberTextCellViewTag = 'nimble-table-column-number-text-cell-view';\n"]}
@@ -6,8 +6,9 @@ import { NumberTextAlignment, NumberTextFormat } from './types';
6
6
  import type { UnitFormat } from '../../utilities/unit-format/unit-format';
7
7
  import { TableColumnNumberTextValidator } from './models/table-column-number-text-validator';
8
8
  import { TextCellViewBaseAlignment } from '../text-base/cell-view/types';
9
+ import type { TableColumnTextBaseColumnConfig } from '../text-base/cell-view';
9
10
  export type TableColumnNumberTextCellRecord = TableNumberField<'value'>;
10
- export interface TableColumnNumberTextColumnConfig {
11
+ export interface TableColumnNumberTextColumnConfig extends TableColumnTextBaseColumnConfig {
11
12
  formatter: UnitFormat;
12
13
  alignment: TextCellViewBaseAlignment;
13
14
  }
@@ -35,6 +36,7 @@ export declare class TableColumnNumberText extends TableColumnTextBase {
35
36
  connectedCallback(): void;
36
37
  disconnectedCallback(): void;
37
38
  get validity(): TableColumnValidity;
39
+ placeholderChanged(): void;
38
40
  protected getColumnInternalsOptions(): ColumnInternalsOptions;
39
41
  private updateUnitNotifier;
40
42
  private formatChanged;
@@ -45,6 +45,9 @@ export class TableColumnNumberText extends TableColumnTextBase {
45
45
  get validity() {
46
46
  return this.validator.getValidity();
47
47
  }
48
+ placeholderChanged() {
49
+ this.updateColumnConfig();
50
+ }
48
51
  getColumnInternalsOptions() {
49
52
  return {
50
53
  cellRecordFieldNames: ['value'],
@@ -99,7 +102,8 @@ export class TableColumnNumberText extends TableColumnTextBase {
99
102
  if (this.validator.isValid()) {
100
103
  const columnConfig = {
101
104
  formatter: this.createFormatter(),
102
- alignment: this.determineCellContentAlignment()
105
+ alignment: this.determineCellContentAlignment(),
106
+ placeholder: this.placeholder
103
107
  };
104
108
  this.columnInternals.columnConfig = columnConfig;
105
109
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/table-column/number-text/index.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n DesignSystem,\n DesignTokenSubscriber\n} from '@microsoft/fast-foundation';\nimport {\n attr,\n Notifier,\n nullableNumberConverter,\n Observable,\n observable,\n Subscriber\n} from '@microsoft/fast-element';\nimport { styles } from '../base/styles';\nimport { template } from './template';\nimport type { TableNumberField } from '../../table/types';\nimport { TableColumnTextBase } from '../text-base';\nimport { TableColumnSortOperation, TableColumnValidity } from '../base/types';\nimport { tableColumnNumberTextGroupHeaderTag } from './group-header-view';\nimport { tableColumnNumberTextCellViewTag } from './cell-view';\nimport type { ColumnInternalsOptions } from '../base/models/column-internals';\nimport { NumberTextAlignment, NumberTextFormat } from './types';\nimport type { UnitFormat } from '../../utilities/unit-format/unit-format';\nimport { NumberTextUnitFormat } from './models/number-text-unit-format';\nimport { TableColumnNumberTextValidator } from './models/table-column-number-text-validator';\nimport { TextCellViewBaseAlignment } from '../text-base/cell-view/types';\nimport { lang } from '../../theme-provider';\nimport { Unit } from '../../unit/base/unit';\nimport { waitUntilCustomElementsDefinedAsync } from '../../utilities/wait-until-custom-elements-defined-async';\n\nexport type TableColumnNumberTextCellRecord = TableNumberField<'value'>;\nexport interface TableColumnNumberTextColumnConfig {\n formatter: UnitFormat;\n alignment: TextCellViewBaseAlignment;\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'nimble-table-column-number-text': TableColumnNumberText;\n }\n}\n\n/**\n * The table column for displaying numbers as text.\n */\nexport class TableColumnNumberText extends TableColumnTextBase {\n /** @internal */\n public validator = new TableColumnNumberTextValidator(this.columnInternals);\n\n @attr\n public format: NumberTextFormat;\n\n @attr\n public alignment: NumberTextAlignment;\n\n @attr({ attribute: 'decimal-digits', converter: nullableNumberConverter })\n public decimalDigits?: number;\n\n @attr({\n attribute: 'decimal-maximum-digits',\n converter: nullableNumberConverter\n })\n public decimalMaximumDigits?: number;\n\n /** @internal */\n @observable\n public unitElements?: Element[];\n\n @observable\n private unit?: Unit;\n\n private unitNotifier?: Notifier;\n\n private readonly langSubscriber: DesignTokenSubscriber<typeof lang> = {\n handleChange: () => {\n this.updateColumnConfig();\n }\n };\n\n private readonly unitSubscriber: Subscriber = {\n handleChange: () => {\n this.updateColumnConfig();\n }\n };\n\n public override connectedCallback(): void {\n super.connectedCallback();\n lang.subscribe(this.langSubscriber, this);\n this.updateColumnConfig();\n }\n\n public override disconnectedCallback(): void {\n super.disconnectedCallback();\n lang.unsubscribe(this.langSubscriber, this);\n }\n\n public override get validity(): TableColumnValidity {\n return this.validator.getValidity();\n }\n\n protected override getColumnInternalsOptions(): ColumnInternalsOptions {\n return {\n cellRecordFieldNames: ['value'],\n cellViewTag: tableColumnNumberTextCellViewTag,\n groupHeaderViewTag: tableColumnNumberTextGroupHeaderTag,\n delegatedEvents: [],\n sortOperation: TableColumnSortOperation.basic\n };\n }\n\n private updateUnitNotifier(): void {\n if (this.unitNotifier) {\n this.unitNotifier.unsubscribe(this.unitSubscriber);\n this.unitNotifier = undefined;\n }\n\n if (this.unit) {\n const notifier = Observable.getNotifier(this.unit);\n notifier.subscribe(this.unitSubscriber, 'resolvedUnitScale');\n this.unitNotifier = notifier;\n }\n }\n\n private formatChanged(): void {\n this.updateColumnConfig();\n }\n\n private alignmentChanged(): void {\n this.updateColumnConfig();\n }\n\n private decimalDigitsChanged(): void {\n this.updateColumnConfig();\n }\n\n private decimalMaximumDigitsChanged(): void {\n this.updateColumnConfig();\n }\n\n private unitElementsChanged(): void {\n void this.updateUnit();\n }\n\n private async updateUnit(): Promise<void> {\n this.unit = undefined;\n if (this.unitElements) {\n await waitUntilCustomElementsDefinedAsync(this.unitElements);\n this.unit = this.unitElements.find(\n (x): x is Unit => x instanceof Unit\n );\n }\n this.updateUnitNotifier();\n }\n\n private unitChanged(): void {\n this.updateColumnConfig();\n }\n\n private updateColumnConfig(): void {\n this.validator.validateDecimalDigits(this.format, this.decimalDigits);\n this.validator.validateDecimalMaximumDigits(\n this.format,\n this.decimalMaximumDigits\n );\n this.validator.validateNoMutuallyExclusiveProperties(\n this.format,\n this.decimalDigits,\n this.decimalMaximumDigits\n );\n this.validator.validateAtMostOneUnit(this.unitElements ?? []);\n\n if (this.validator.isValid()) {\n const columnConfig: TableColumnNumberTextColumnConfig = {\n formatter: this.createFormatter(),\n alignment: this.determineCellContentAlignment()\n };\n this.columnInternals.columnConfig = columnConfig;\n } else {\n this.columnInternals.columnConfig = undefined;\n }\n }\n\n private createFormatter(): UnitFormat {\n const unitScale = this.unit?.resolvedUnitScale;\n return new NumberTextUnitFormat(lang.getValueFor(this), {\n // Attribute values sometimes resolve to either null or undefined\n // See https://github.com/microsoft/fast/issues/6630\n numberTextFormat: this.format ?? undefined,\n decimalDigits: this.decimalDigits ?? undefined,\n decimalMaximumDigits: this.decimalMaximumDigits ?? undefined,\n unitScale\n });\n }\n\n private determineCellContentAlignment(): TextCellViewBaseAlignment {\n if (this.alignment === NumberTextAlignment.left) {\n return TextCellViewBaseAlignment.left;\n }\n\n if (this.alignment === NumberTextAlignment.right) {\n return TextCellViewBaseAlignment.right;\n }\n\n // Look at format and decimal max digits and unit to determine the default alignment\n if (\n this.format === NumberTextFormat.decimal\n && typeof this.decimalMaximumDigits !== 'number'\n && !this.unit\n ) {\n return TextCellViewBaseAlignment.right;\n }\n return TextCellViewBaseAlignment.left;\n }\n}\n\nconst nimbleTableColumnNumberText = TableColumnNumberText.compose({\n baseName: 'table-column-number-text',\n template,\n styles\n});\n\nDesignSystem.getOrCreate()\n .withPrefix('nimble')\n .register(nimbleTableColumnNumberText());\nexport const tableColumnNumberTextTag = 'nimble-table-column-number-text';\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/table-column/number-text/index.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n DesignSystem,\n DesignTokenSubscriber\n} from '@microsoft/fast-foundation';\nimport {\n attr,\n Notifier,\n nullableNumberConverter,\n Observable,\n observable,\n Subscriber\n} from '@microsoft/fast-element';\nimport { styles } from '../base/styles';\nimport { template } from './template';\nimport type { TableNumberField } from '../../table/types';\nimport { TableColumnTextBase } from '../text-base';\nimport { TableColumnSortOperation, TableColumnValidity } from '../base/types';\nimport { tableColumnNumberTextGroupHeaderTag } from './group-header-view';\nimport { tableColumnNumberTextCellViewTag } from './cell-view';\nimport type { ColumnInternalsOptions } from '../base/models/column-internals';\nimport { NumberTextAlignment, NumberTextFormat } from './types';\nimport type { UnitFormat } from '../../utilities/unit-format/unit-format';\nimport { NumberTextUnitFormat } from './models/number-text-unit-format';\nimport { TableColumnNumberTextValidator } from './models/table-column-number-text-validator';\nimport { TextCellViewBaseAlignment } from '../text-base/cell-view/types';\nimport { lang } from '../../theme-provider';\nimport { Unit } from '../../unit/base/unit';\nimport { waitUntilCustomElementsDefinedAsync } from '../../utilities/wait-until-custom-elements-defined-async';\nimport type { TableColumnTextBaseColumnConfig } from '../text-base/cell-view';\n\nexport type TableColumnNumberTextCellRecord = TableNumberField<'value'>;\nexport interface TableColumnNumberTextColumnConfig\n extends TableColumnTextBaseColumnConfig {\n formatter: UnitFormat;\n alignment: TextCellViewBaseAlignment;\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'nimble-table-column-number-text': TableColumnNumberText;\n }\n}\n\n/**\n * The table column for displaying numbers as text.\n */\nexport class TableColumnNumberText extends TableColumnTextBase {\n /** @internal */\n public validator = new TableColumnNumberTextValidator(this.columnInternals);\n\n @attr\n public format: NumberTextFormat;\n\n @attr\n public alignment: NumberTextAlignment;\n\n @attr({ attribute: 'decimal-digits', converter: nullableNumberConverter })\n public decimalDigits?: number;\n\n @attr({\n attribute: 'decimal-maximum-digits',\n converter: nullableNumberConverter\n })\n public decimalMaximumDigits?: number;\n\n /** @internal */\n @observable\n public unitElements?: Element[];\n\n @observable\n private unit?: Unit;\n\n private unitNotifier?: Notifier;\n\n private readonly langSubscriber: DesignTokenSubscriber<typeof lang> = {\n handleChange: () => {\n this.updateColumnConfig();\n }\n };\n\n private readonly unitSubscriber: Subscriber = {\n handleChange: () => {\n this.updateColumnConfig();\n }\n };\n\n public override connectedCallback(): void {\n super.connectedCallback();\n lang.subscribe(this.langSubscriber, this);\n this.updateColumnConfig();\n }\n\n public override disconnectedCallback(): void {\n super.disconnectedCallback();\n lang.unsubscribe(this.langSubscriber, this);\n }\n\n public override get validity(): TableColumnValidity {\n return this.validator.getValidity();\n }\n\n public placeholderChanged(): void {\n this.updateColumnConfig();\n }\n\n protected override getColumnInternalsOptions(): ColumnInternalsOptions {\n return {\n cellRecordFieldNames: ['value'],\n cellViewTag: tableColumnNumberTextCellViewTag,\n groupHeaderViewTag: tableColumnNumberTextGroupHeaderTag,\n delegatedEvents: [],\n sortOperation: TableColumnSortOperation.basic\n };\n }\n\n private updateUnitNotifier(): void {\n if (this.unitNotifier) {\n this.unitNotifier.unsubscribe(this.unitSubscriber);\n this.unitNotifier = undefined;\n }\n\n if (this.unit) {\n const notifier = Observable.getNotifier(this.unit);\n notifier.subscribe(this.unitSubscriber, 'resolvedUnitScale');\n this.unitNotifier = notifier;\n }\n }\n\n private formatChanged(): void {\n this.updateColumnConfig();\n }\n\n private alignmentChanged(): void {\n this.updateColumnConfig();\n }\n\n private decimalDigitsChanged(): void {\n this.updateColumnConfig();\n }\n\n private decimalMaximumDigitsChanged(): void {\n this.updateColumnConfig();\n }\n\n private unitElementsChanged(): void {\n void this.updateUnit();\n }\n\n private async updateUnit(): Promise<void> {\n this.unit = undefined;\n if (this.unitElements) {\n await waitUntilCustomElementsDefinedAsync(this.unitElements);\n this.unit = this.unitElements.find(\n (x): x is Unit => x instanceof Unit\n );\n }\n this.updateUnitNotifier();\n }\n\n private unitChanged(): void {\n this.updateColumnConfig();\n }\n\n private updateColumnConfig(): void {\n this.validator.validateDecimalDigits(this.format, this.decimalDigits);\n this.validator.validateDecimalMaximumDigits(\n this.format,\n this.decimalMaximumDigits\n );\n this.validator.validateNoMutuallyExclusiveProperties(\n this.format,\n this.decimalDigits,\n this.decimalMaximumDigits\n );\n this.validator.validateAtMostOneUnit(this.unitElements ?? []);\n\n if (this.validator.isValid()) {\n const columnConfig: TableColumnNumberTextColumnConfig = {\n formatter: this.createFormatter(),\n alignment: this.determineCellContentAlignment(),\n placeholder: this.placeholder\n };\n this.columnInternals.columnConfig = columnConfig;\n } else {\n this.columnInternals.columnConfig = undefined;\n }\n }\n\n private createFormatter(): UnitFormat {\n const unitScale = this.unit?.resolvedUnitScale;\n return new NumberTextUnitFormat(lang.getValueFor(this), {\n // Attribute values sometimes resolve to either null or undefined\n // See https://github.com/microsoft/fast/issues/6630\n numberTextFormat: this.format ?? undefined,\n decimalDigits: this.decimalDigits ?? undefined,\n decimalMaximumDigits: this.decimalMaximumDigits ?? undefined,\n unitScale\n });\n }\n\n private determineCellContentAlignment(): TextCellViewBaseAlignment {\n if (this.alignment === NumberTextAlignment.left) {\n return TextCellViewBaseAlignment.left;\n }\n\n if (this.alignment === NumberTextAlignment.right) {\n return TextCellViewBaseAlignment.right;\n }\n\n // Look at format and decimal max digits and unit to determine the default alignment\n if (\n this.format === NumberTextFormat.decimal\n && typeof this.decimalMaximumDigits !== 'number'\n && !this.unit\n ) {\n return TextCellViewBaseAlignment.right;\n }\n return TextCellViewBaseAlignment.left;\n }\n}\n\nconst nimbleTableColumnNumberText = TableColumnNumberText.compose({\n baseName: 'table-column-number-text',\n template,\n styles\n});\n\nDesignSystem.getOrCreate()\n .withPrefix('nimble')\n .register(nimbleTableColumnNumberText());\nexport const tableColumnNumberTextTag = 'nimble-table-column-number-text';\n"]}
@@ -9,6 +9,6 @@ declare global {
9
9
  * A cell view for displaying string fields as text
10
10
  */
11
11
  export declare class TableColumnTextCellView extends TableColumnTextCellViewBase<TableColumnTextCellRecord, TableColumnTextColumnConfig> {
12
- private cellRecordChanged;
12
+ protected updateText(): void;
13
13
  }
14
14
  export declare const tableColumnTextCellViewTag = "nimble-table-column-text-cell-view";
@@ -6,7 +6,7 @@ import { TableColumnTextCellViewBase } from '../../text-base/cell-view';
6
6
  * A cell view for displaying string fields as text
7
7
  */
8
8
  export class TableColumnTextCellView extends TableColumnTextCellViewBase {
9
- cellRecordChanged() {
9
+ updateText() {
10
10
  this.text = typeof this.cellRecord?.value === 'string'
11
11
  ? this.cellRecord.value
12
12
  : '';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/table-column/text/cell-view/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAC1D,OAAO,EAAE,QAAQ,EAAE,MAAM,oCAAoC,CAAC;AAK9D,OAAO,EAAE,MAAM,EAAE,MAAM,kCAAkC,CAAC;AAC1D,OAAO,EAAE,2BAA2B,EAAE,MAAM,2BAA2B,CAAC;AAQxE;;GAEG;AACH,MAAM,OAAO,uBAAwB,SAAQ,2BAG5C;IACW,iBAAiB;QACrB,IAAI,CAAC,IAAI,GAAG,OAAO,IAAI,CAAC,UAAU,EAAE,KAAK,KAAK,QAAQ;YAClD,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK;YACvB,CAAC,CAAC,EAAE,CAAC;IACb,CAAC;CACJ;AAED,MAAM,YAAY,GAAG,uBAAuB,CAAC,OAAO,CAAC;IACjD,QAAQ,EAAE,6BAA6B;IACvC,QAAQ;IACR,MAAM;CACT,CAAC,CAAC;AACH,YAAY,CAAC,WAAW,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,YAAY,EAAE,CAAC,CAAC;AACzE,MAAM,CAAC,MAAM,0BAA0B,GAAG,oCAAoC,CAAC","sourcesContent":["import { DesignSystem } from '@microsoft/fast-foundation';\nimport { template } from '../../text-base/cell-view/template';\nimport type {\n TableColumnTextCellRecord,\n TableColumnTextColumnConfig\n} from '..';\nimport { styles } from '../../text-base/cell-view/styles';\nimport { TableColumnTextCellViewBase } from '../../text-base/cell-view';\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'nimble-table-column-text-cell-view': TableColumnTextCellView;\n }\n}\n\n/**\n * A cell view for displaying string fields as text\n */\nexport class TableColumnTextCellView extends TableColumnTextCellViewBase<\nTableColumnTextCellRecord,\nTableColumnTextColumnConfig\n> {\n private cellRecordChanged(): void {\n this.text = typeof this.cellRecord?.value === 'string'\n ? this.cellRecord.value\n : '';\n }\n}\n\nconst textCellView = TableColumnTextCellView.compose({\n baseName: 'table-column-text-cell-view',\n template,\n styles\n});\nDesignSystem.getOrCreate().withPrefix('nimble').register(textCellView());\nexport const tableColumnTextCellViewTag = 'nimble-table-column-text-cell-view';\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/table-column/text/cell-view/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAC1D,OAAO,EAAE,QAAQ,EAAE,MAAM,oCAAoC,CAAC;AAK9D,OAAO,EAAE,MAAM,EAAE,MAAM,kCAAkC,CAAC;AAC1D,OAAO,EAAE,2BAA2B,EAAE,MAAM,2BAA2B,CAAC;AAQxE;;GAEG;AACH,MAAM,OAAO,uBAAwB,SAAQ,2BAG5C;IACa,UAAU;QAChB,IAAI,CAAC,IAAI,GAAG,OAAO,IAAI,CAAC,UAAU,EAAE,KAAK,KAAK,QAAQ;YAClD,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK;YACvB,CAAC,CAAC,EAAE,CAAC;IACb,CAAC;CACJ;AAED,MAAM,YAAY,GAAG,uBAAuB,CAAC,OAAO,CAAC;IACjD,QAAQ,EAAE,6BAA6B;IACvC,QAAQ;IACR,MAAM;CACT,CAAC,CAAC;AACH,YAAY,CAAC,WAAW,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,YAAY,EAAE,CAAC,CAAC;AACzE,MAAM,CAAC,MAAM,0BAA0B,GAAG,oCAAoC,CAAC","sourcesContent":["import { DesignSystem } from '@microsoft/fast-foundation';\nimport { template } from '../../text-base/cell-view/template';\nimport type {\n TableColumnTextCellRecord,\n TableColumnTextColumnConfig\n} from '..';\nimport { styles } from '../../text-base/cell-view/styles';\nimport { TableColumnTextCellViewBase } from '../../text-base/cell-view';\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'nimble-table-column-text-cell-view': TableColumnTextCellView;\n }\n}\n\n/**\n * A cell view for displaying string fields as text\n */\nexport class TableColumnTextCellView extends TableColumnTextCellViewBase<\nTableColumnTextCellRecord,\nTableColumnTextColumnConfig\n> {\n protected updateText(): void {\n this.text = typeof this.cellRecord?.value === 'string'\n ? this.cellRecord.value\n : '';\n }\n}\n\nconst textCellView = TableColumnTextCellView.compose({\n baseName: 'table-column-text-cell-view',\n template,\n styles\n});\nDesignSystem.getOrCreate().withPrefix('nimble').register(textCellView());\nexport const tableColumnTextCellViewTag = 'nimble-table-column-text-cell-view';\n"]}
@@ -1,8 +1,9 @@
1
1
  import type { TableStringField } from '../../table/types';
2
2
  import { TableColumnTextBase } from '../text-base';
3
3
  import type { ColumnInternalsOptions } from '../base/models/column-internals';
4
+ import type { TableColumnTextBaseColumnConfig } from '../text-base/cell-view';
4
5
  export type TableColumnTextCellRecord = TableStringField<'value'>;
5
- export interface TableColumnTextColumnConfig {
6
+ export interface TableColumnTextColumnConfig extends TableColumnTextBaseColumnConfig {
6
7
  }
7
8
  declare global {
8
9
  interface HTMLElementTagNameMap {
@@ -13,6 +14,7 @@ declare global {
13
14
  * The table column for displaying string fields as text.
14
15
  */
15
16
  export declare class TableColumnText extends TableColumnTextBase {
17
+ placeholderChanged(): void;
16
18
  protected getColumnInternalsOptions(): ColumnInternalsOptions;
17
19
  }
18
20
  export declare const tableColumnTextTag = "nimble-table-column-text";
@@ -9,6 +9,11 @@ import { tableColumnTextCellViewTag } from './cell-view';
9
9
  * The table column for displaying string fields as text.
10
10
  */
11
11
  export class TableColumnText extends TableColumnTextBase {
12
+ placeholderChanged() {
13
+ this.columnInternals.columnConfig = {
14
+ placeholder: this.placeholder
15
+ };
16
+ }
12
17
  getColumnInternalsOptions() {
13
18
  return {
14
19
  cellRecordFieldNames: ['value'],
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/table-column/text/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAC1D,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AACxC,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAE5C,OAAO,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AACnD,OAAO,EAAE,wBAAwB,EAAE,MAAM,eAAe,CAAC;AACzD,OAAO,EAAE,iCAAiC,EAAE,MAAM,qBAAqB,CAAC;AACxE,OAAO,EAAE,0BAA0B,EAAE,MAAM,aAAa,CAAC;AAazD;;GAEG;AACH,MAAM,OAAO,eAAgB,SAAQ,mBAAmB;IACjC,yBAAyB;QACxC,OAAO;YACH,oBAAoB,EAAE,CAAC,OAAO,CAAC;YAC/B,WAAW,EAAE,0BAA0B;YACvC,kBAAkB,EAAE,iCAAiC;YACrD,eAAe,EAAE,EAAE;YACnB,aAAa,EAAE,wBAAwB,CAAC,wBAAwB;SACnE,CAAC;IACN,CAAC;CACJ;AAED,MAAM,qBAAqB,GAAG,eAAe,CAAC,OAAO,CAAC;IAClD,QAAQ,EAAE,mBAAmB;IAC7B,QAAQ;IACR,MAAM;CACT,CAAC,CAAC;AAEH,YAAY,CAAC,WAAW,EAAE;KACrB,UAAU,CAAC,QAAQ,CAAC;KACpB,QAAQ,CAAC,qBAAqB,EAAE,CAAC,CAAC;AACvC,MAAM,CAAC,MAAM,kBAAkB,GAAG,0BAA0B,CAAC","sourcesContent":["import { DesignSystem } from '@microsoft/fast-foundation';\nimport { styles } from '../base/styles';\nimport { template } from '../base/template';\nimport type { TableStringField } from '../../table/types';\nimport { TableColumnTextBase } from '../text-base';\nimport { TableColumnSortOperation } from '../base/types';\nimport { tableColumnTextGroupHeaderViewTag } from './group-header-view';\nimport { tableColumnTextCellViewTag } from './cell-view';\nimport type { ColumnInternalsOptions } from '../base/models/column-internals';\n\nexport type TableColumnTextCellRecord = TableStringField<'value'>;\n// eslint-disable-next-line @typescript-eslint/no-empty-interface\nexport interface TableColumnTextColumnConfig {}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'nimble-table-column-text': TableColumnText;\n }\n}\n\n/**\n * The table column for displaying string fields as text.\n */\nexport class TableColumnText extends TableColumnTextBase {\n protected override getColumnInternalsOptions(): ColumnInternalsOptions {\n return {\n cellRecordFieldNames: ['value'],\n cellViewTag: tableColumnTextCellViewTag,\n groupHeaderViewTag: tableColumnTextGroupHeaderViewTag,\n delegatedEvents: [],\n sortOperation: TableColumnSortOperation.localeAwareCaseSensitive\n };\n }\n}\n\nconst nimbleTableColumnText = TableColumnText.compose({\n baseName: 'table-column-text',\n template,\n styles\n});\n\nDesignSystem.getOrCreate()\n .withPrefix('nimble')\n .register(nimbleTableColumnText());\nexport const tableColumnTextTag = 'nimble-table-column-text';\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/table-column/text/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAC1D,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AACxC,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAE5C,OAAO,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AACnD,OAAO,EAAE,wBAAwB,EAAE,MAAM,eAAe,CAAC;AACzD,OAAO,EAAE,iCAAiC,EAAE,MAAM,qBAAqB,CAAC;AACxE,OAAO,EAAE,0BAA0B,EAAE,MAAM,aAAa,CAAC;AAgBzD;;GAEG;AACH,MAAM,OAAO,eAAgB,SAAQ,mBAAmB;IAC7C,kBAAkB;QACrB,IAAI,CAAC,eAAe,CAAC,YAAY,GAAG;YAChC,WAAW,EAAE,IAAI,CAAC,WAAW;SAChC,CAAC;IACN,CAAC;IAEkB,yBAAyB;QACxC,OAAO;YACH,oBAAoB,EAAE,CAAC,OAAO,CAAC;YAC/B,WAAW,EAAE,0BAA0B;YACvC,kBAAkB,EAAE,iCAAiC;YACrD,eAAe,EAAE,EAAE;YACnB,aAAa,EAAE,wBAAwB,CAAC,wBAAwB;SACnE,CAAC;IACN,CAAC;CACJ;AAED,MAAM,qBAAqB,GAAG,eAAe,CAAC,OAAO,CAAC;IAClD,QAAQ,EAAE,mBAAmB;IAC7B,QAAQ;IACR,MAAM;CACT,CAAC,CAAC;AAEH,YAAY,CAAC,WAAW,EAAE;KACrB,UAAU,CAAC,QAAQ,CAAC;KACpB,QAAQ,CAAC,qBAAqB,EAAE,CAAC,CAAC;AACvC,MAAM,CAAC,MAAM,kBAAkB,GAAG,0BAA0B,CAAC","sourcesContent":["import { DesignSystem } from '@microsoft/fast-foundation';\nimport { styles } from '../base/styles';\nimport { template } from '../base/template';\nimport type { TableStringField } from '../../table/types';\nimport { TableColumnTextBase } from '../text-base';\nimport { TableColumnSortOperation } from '../base/types';\nimport { tableColumnTextGroupHeaderViewTag } from './group-header-view';\nimport { tableColumnTextCellViewTag } from './cell-view';\nimport type { ColumnInternalsOptions } from '../base/models/column-internals';\nimport type { TableColumnTextBaseColumnConfig } from '../text-base/cell-view';\n\nexport type TableColumnTextCellRecord = TableStringField<'value'>;\n\n// eslint-disable-next-line @typescript-eslint/no-empty-interface\nexport interface TableColumnTextColumnConfig\n extends TableColumnTextBaseColumnConfig {}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'nimble-table-column-text': TableColumnText;\n }\n}\n\n/**\n * The table column for displaying string fields as text.\n */\nexport class TableColumnText extends TableColumnTextBase {\n public placeholderChanged(): void {\n this.columnInternals.columnConfig = {\n placeholder: this.placeholder\n };\n }\n\n protected override getColumnInternalsOptions(): ColumnInternalsOptions {\n return {\n cellRecordFieldNames: ['value'],\n cellViewTag: tableColumnTextCellViewTag,\n groupHeaderViewTag: tableColumnTextGroupHeaderViewTag,\n delegatedEvents: [],\n sortOperation: TableColumnSortOperation.localeAwareCaseSensitive\n };\n }\n}\n\nconst nimbleTableColumnText = TableColumnText.compose({\n baseName: 'table-column-text',\n template,\n styles\n});\n\nDesignSystem.getOrCreate()\n .withPrefix('nimble')\n .register(nimbleTableColumnText());\nexport const tableColumnTextTag = 'nimble-table-column-text';\n"]}
@@ -1,10 +1,17 @@
1
1
  import { TableCellView } from '../../base/cell-view';
2
2
  import type { TableCellRecord } from '../../base/types';
3
3
  import { TextCellViewBaseAlignment } from './types';
4
+ import type { TableFieldValue } from '../../../table/types';
5
+ export interface TableColumnTextBaseCellRecord extends TableCellRecord {
6
+ value: TableFieldValue;
7
+ }
8
+ export interface TableColumnTextBaseColumnConfig {
9
+ placeholder?: string;
10
+ }
4
11
  /**
5
12
  * The cell view base class for displaying fields of any type as text.
6
13
  */
7
- export declare abstract class TableColumnTextCellViewBase<TCellRecord extends TableCellRecord = TableCellRecord, TColumnConfig = unknown> extends TableCellView<TCellRecord, TColumnConfig> {
14
+ export declare abstract class TableColumnTextCellViewBase<TCellRecord extends TableColumnTextBaseCellRecord = TableColumnTextBaseCellRecord, TColumnConfig extends TableColumnTextBaseColumnConfig = TableColumnTextBaseColumnConfig> extends TableCellView<TCellRecord, TColumnConfig> {
8
15
  /** @internal */
9
16
  hasOverflow: boolean;
10
17
  /**
@@ -15,4 +22,16 @@ export declare abstract class TableColumnTextCellViewBase<TCellRecord extends Ta
15
22
  * The alignment of the text within the cell.
16
23
  */
17
24
  alignment: TextCellViewBaseAlignment;
25
+ /**
26
+ * Whether or not the text being displayed in the cell view is a placeholder.
27
+ */
28
+ isPlaceholder: boolean;
29
+ protected abstract updateText(): void;
30
+ protected columnConfigChanged(): void;
31
+ private cellRecordChanged;
32
+ /**
33
+ * Sets `this.text` to the appropriate placeholder if `cellValue` warrants it.
34
+ * @returns `true` if `this.text` was set to a placeholder, `false` otherwise.
35
+ */
36
+ private applyPlaceholderTextIfNeeded;
18
37
  }
@@ -18,6 +18,37 @@ export class TableColumnTextCellViewBase extends TableCellView {
18
18
  * The alignment of the text within the cell.
19
19
  */
20
20
  this.alignment = TextCellViewBaseAlignment.left;
21
+ /**
22
+ * Whether or not the text being displayed in the cell view is a placeholder.
23
+ */
24
+ this.isPlaceholder = false;
25
+ }
26
+ columnConfigChanged() {
27
+ if (!this.applyPlaceholderTextIfNeeded()) {
28
+ this.updateText();
29
+ }
30
+ }
31
+ cellRecordChanged() {
32
+ if (!this.applyPlaceholderTextIfNeeded()) {
33
+ this.updateText();
34
+ }
35
+ }
36
+ /**
37
+ * Sets `this.text` to the appropriate placeholder if `cellValue` warrants it.
38
+ * @returns `true` if `this.text` was set to a placeholder, `false` otherwise.
39
+ */
40
+ applyPlaceholderTextIfNeeded() {
41
+ const cellValue = this.cellRecord?.value;
42
+ const placeholder = this.columnConfig?.placeholder;
43
+ if (typeof placeholder === 'string'
44
+ && (cellValue === null || cellValue === undefined)) {
45
+ this.text = placeholder;
46
+ this.isPlaceholder = true;
47
+ }
48
+ else {
49
+ this.isPlaceholder = false;
50
+ }
51
+ return this.isPlaceholder;
21
52
  }
22
53
  }
23
54
  __decorate([
@@ -29,4 +60,7 @@ __decorate([
29
60
  __decorate([
30
61
  observable
31
62
  ], TableColumnTextCellViewBase.prototype, "alignment", void 0);
63
+ __decorate([
64
+ observable
65
+ ], TableColumnTextCellViewBase.prototype, "isPlaceholder", void 0);
32
66
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/table-column/text-base/cell-view/index.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACrD,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAErD,OAAO,EAAE,yBAAyB,EAAE,MAAM,SAAS,CAAC;AAEpD;;GAEG;AACH,MAAM,OAAgB,2BAGpB,SAAQ,aAAyC;IAHnD;;QAII,gBAAgB;QAET,gBAAW,GAAG,KAAK,CAAC;QAE3B;;WAEG;QAEI,SAAI,GAAG,EAAE,CAAC;QAEjB;;WAEG;QAEI,cAAS,GAA8B,yBAAyB,CAAC,IAAI,CAAC;IACjF,CAAC;CAAA;AAbG;IADC,UAAU;gEACgB;AAM3B;IADC,UAAU;yDACM;AAMjB;IADC,UAAU;8DACkE","sourcesContent":["import { observable } from '@microsoft/fast-element';\nimport { TableCellView } from '../../base/cell-view';\nimport type { TableCellRecord } from '../../base/types';\nimport { TextCellViewBaseAlignment } from './types';\n\n/**\n * The cell view base class for displaying fields of any type as text.\n */\nexport abstract class TableColumnTextCellViewBase<\n TCellRecord extends TableCellRecord = TableCellRecord,\n TColumnConfig = unknown\n> extends TableCellView<TCellRecord, TColumnConfig> {\n /** @internal */\n @observable\n public hasOverflow = false;\n\n /**\n * Text to render in the cell.\n */\n @observable\n public text = '';\n\n /**\n * The alignment of the text within the cell.\n */\n @observable\n public alignment: TextCellViewBaseAlignment = TextCellViewBaseAlignment.left;\n}\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/table-column/text-base/cell-view/index.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACrD,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAErD,OAAO,EAAE,yBAAyB,EAAE,MAAM,SAAS,CAAC;AAWpD;;GAEG;AACH,MAAM,OAAgB,2BAKpB,SAAQ,aAAyC;IALnD;;QAMI,gBAAgB;QAET,gBAAW,GAAG,KAAK,CAAC;QAE3B;;WAEG;QAEI,SAAI,GAAG,EAAE,CAAC;QAEjB;;WAEG;QAEI,cAAS,GAA8B,yBAAyB,CAAC,IAAI,CAAC;QAE7E;;WAEG;QAEI,kBAAa,GAAG,KAAK,CAAC;IAmCjC,CAAC;IA/Ba,mBAAmB;QACzB,IAAI,CAAC,IAAI,CAAC,4BAA4B,EAAE,EAAE;YACtC,IAAI,CAAC,UAAU,EAAE,CAAC;SACrB;IACL,CAAC;IAEO,iBAAiB;QACrB,IAAI,CAAC,IAAI,CAAC,4BAA4B,EAAE,EAAE;YACtC,IAAI,CAAC,UAAU,EAAE,CAAC;SACrB;IACL,CAAC;IAED;;;OAGG;IACK,4BAA4B;QAChC,MAAM,SAAS,GAAG,IAAI,CAAC,UAAU,EAAE,KAAK,CAAC;QACzC,MAAM,WAAW,GAAG,IAAI,CAAC,YAAY,EAAE,WAAW,CAAC;QACnD,IACI,OAAO,WAAW,KAAK,QAAQ;eAC5B,CAAC,SAAS,KAAK,IAAI,IAAI,SAAS,KAAK,SAAS,CAAC,EACpD;YACE,IAAI,CAAC,IAAI,GAAG,WAAW,CAAC;YACxB,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;SAC7B;aAAM;YACH,IAAI,CAAC,aAAa,GAAG,KAAK,CAAC;SAC9B;QAED,OAAO,IAAI,CAAC,aAAa,CAAC;IAC9B,CAAC;CACJ;AArDG;IADC,UAAU;gEACgB;AAM3B;IADC,UAAU;yDACM;AAMjB;IADC,UAAU;8DACkE;AAM7E;IADC,UAAU;kEACkB","sourcesContent":["import { observable } from '@microsoft/fast-element';\nimport { TableCellView } from '../../base/cell-view';\nimport type { TableCellRecord } from '../../base/types';\nimport { TextCellViewBaseAlignment } from './types';\nimport type { TableFieldValue } from '../../../table/types';\n\nexport interface TableColumnTextBaseCellRecord extends TableCellRecord {\n value: TableFieldValue;\n}\n\nexport interface TableColumnTextBaseColumnConfig {\n placeholder?: string;\n}\n\n/**\n * The cell view base class for displaying fields of any type as text.\n */\nexport abstract class TableColumnTextCellViewBase<\n TCellRecord extends\n TableColumnTextBaseCellRecord = TableColumnTextBaseCellRecord,\n TColumnConfig extends\n TableColumnTextBaseColumnConfig = TableColumnTextBaseColumnConfig\n> extends TableCellView<TCellRecord, TColumnConfig> {\n /** @internal */\n @observable\n public hasOverflow = false;\n\n /**\n * Text to render in the cell.\n */\n @observable\n public text = '';\n\n /**\n * The alignment of the text within the cell.\n */\n @observable\n public alignment: TextCellViewBaseAlignment = TextCellViewBaseAlignment.left;\n\n /**\n * Whether or not the text being displayed in the cell view is a placeholder.\n */\n @observable\n public isPlaceholder = false;\n\n protected abstract updateText(): void;\n\n protected columnConfigChanged(): void {\n if (!this.applyPlaceholderTextIfNeeded()) {\n this.updateText();\n }\n }\n\n private cellRecordChanged(): void {\n if (!this.applyPlaceholderTextIfNeeded()) {\n this.updateText();\n }\n }\n\n /**\n * Sets `this.text` to the appropriate placeholder if `cellValue` warrants it.\n * @returns `true` if `this.text` was set to a placeholder, `false` otherwise.\n */\n private applyPlaceholderTextIfNeeded(): boolean {\n const cellValue = this.cellRecord?.value;\n const placeholder = this.columnConfig?.placeholder;\n if (\n typeof placeholder === 'string'\n && (cellValue === null || cellValue === undefined)\n ) {\n this.text = placeholder;\n this.isPlaceholder = true;\n } else {\n this.isPlaceholder = false;\n }\n\n return this.isPlaceholder;\n }\n}\n"]}
@@ -1,5 +1,5 @@
1
1
  import { css } from '@microsoft/fast-element';
2
- import { bodyFont, bodyFontColor } from '../../../theme-provider/design-tokens';
2
+ import { bodyFont, bodyFontColor, placeholderFont, placeholderFontColor } from '../../../theme-provider/design-tokens';
3
3
  export const styles = css `
4
4
  :host(.right-align) {
5
5
  margin-left: auto;
@@ -12,5 +12,10 @@ export const styles = css `
12
12
  overflow: hidden;
13
13
  text-overflow: ellipsis;
14
14
  }
15
+
16
+ :host(.placeholder) span {
17
+ font: ${placeholderFont};
18
+ color: ${placeholderFontColor};
19
+ }
15
20
  `;
16
21
  //# sourceMappingURL=styles.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"styles.js","sourceRoot":"","sources":["../../../../../src/table-column/text-base/cell-view/styles.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,yBAAyB,CAAC;AAC9C,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,uCAAuC,CAAC;AAEhF,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA;;;;;;gBAMT,QAAQ;iBACP,aAAa;;;;;CAK7B,CAAC","sourcesContent":["import { css } from '@microsoft/fast-element';\nimport { bodyFont, bodyFontColor } from '../../../theme-provider/design-tokens';\n\nexport const styles = css`\n :host(.right-align) {\n margin-left: auto;\n }\n\n span {\n font: ${bodyFont};\n color: ${bodyFontColor};\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n }\n`;\n"]}
1
+ {"version":3,"file":"styles.js","sourceRoot":"","sources":["../../../../../src/table-column/text-base/cell-view/styles.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,yBAAyB,CAAC;AAC9C,OAAO,EACH,QAAQ,EACR,aAAa,EACb,eAAe,EACf,oBAAoB,EACvB,MAAM,uCAAuC,CAAC;AAE/C,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA;;;;;;gBAMT,QAAQ;iBACP,aAAa;;;;;;;gBAOd,eAAe;iBACd,oBAAoB;;CAEpC,CAAC","sourcesContent":["import { css } from '@microsoft/fast-element';\nimport {\n bodyFont,\n bodyFontColor,\n placeholderFont,\n placeholderFontColor\n} from '../../../theme-provider/design-tokens';\n\nexport const styles = css`\n :host(.right-align) {\n margin-left: auto;\n }\n\n span {\n font: ${bodyFont};\n color: ${bodyFontColor};\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n }\n\n :host(.placeholder) span {\n font: ${placeholderFont};\n color: ${placeholderFontColor};\n }\n`;\n"]}
@@ -1,2 +1,2 @@
1
1
  import type { TableColumnTextCellViewBase } from '.';
2
- export declare const template: import("@microsoft/fast-element").ViewTemplate<TableColumnTextCellViewBase<import("../../base/types").TableCellRecord, unknown>, any>;
2
+ export declare const template: import("@microsoft/fast-element").ViewTemplate<TableColumnTextCellViewBase<import(".").TableColumnTextBaseCellRecord, import(".").TableColumnTextBaseColumnConfig>, any>;
@@ -1,11 +1,13 @@
1
1
  import { html } from '@microsoft/fast-element';
2
2
  import { overflow } from '../../../utilities/directive/overflow';
3
3
  import { TextCellViewBaseAlignment } from './types';
4
+ // prettier-ignore
4
5
  export const template = html `
5
6
  <template
6
- class="${x => (x.alignment === TextCellViewBaseAlignment.right
7
- ? 'right-align'
8
- : '')}"
7
+ class="
8
+ ${x => (x.alignment === TextCellViewBaseAlignment.right ? 'right-align' : '')}
9
+ ${x => (x.isPlaceholder ? 'placeholder' : '')}
10
+ "
9
11
  >
10
12
  <span
11
13
  ${overflow('hasOverflow')}
@@ -1 +1 @@
1
- {"version":3,"file":"template.js","sourceRoot":"","sources":["../../../../../src/table-column/text-base/cell-view/template.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,yBAAyB,CAAC;AAG/C,OAAO,EAAE,QAAQ,EAAE,MAAM,uCAAuC,CAAC;AACjE,OAAO,EAAE,yBAAyB,EAAE,MAAM,SAAS,CAAC;AAEpD,MAAM,CAAC,MAAM,QAAQ,GAAG,IAAI,CAA6B;;iBAExC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,KAAK,yBAAyB,CAAC,KAAK;IAC9D,CAAC,CAAC,aAAa;IACf,CAAC,CAAC,EAAE,CAAC;;;cAGC,QAAQ,CAAC,aAAa,CAAC;oBACjB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,WAAW,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC;;cAEpD,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI;;;CAGxB,CAAC","sourcesContent":["import { html } from '@microsoft/fast-element';\n\nimport type { TableColumnTextCellViewBase } from '.';\nimport { overflow } from '../../../utilities/directive/overflow';\nimport { TextCellViewBaseAlignment } from './types';\n\nexport const template = html<TableColumnTextCellViewBase>`\n <template\n class=\"${x => (x.alignment === TextCellViewBaseAlignment.right\n ? 'right-align'\n : '')}\"\n >\n <span\n ${overflow('hasOverflow')}\n title=${x => (x.hasOverflow && x.text ? x.text : null)}\n >\n ${x => x.text}\n </span>\n </template>\n`;\n"]}
1
+ {"version":3,"file":"template.js","sourceRoot":"","sources":["../../../../../src/table-column/text-base/cell-view/template.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,yBAAyB,CAAC;AAG/C,OAAO,EAAE,QAAQ,EAAE,MAAM,uCAAuC,CAAC;AACjE,OAAO,EAAE,yBAAyB,EAAE,MAAM,SAAS,CAAC;AAEpD,kBAAkB;AAClB,MAAM,CAAC,MAAM,QAAQ,GAAG,IAAI,CAA6B;;;cAG3C,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,KAAK,yBAAyB,CAAC,KAAK,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,CAAC;cAC3E,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,CAAC;;;;cAI3C,QAAQ,CAAC,aAAa,CAAC;oBACjB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,WAAW,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC;;cAEpD,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI;;;CAGxB,CAAC","sourcesContent":["import { html } from '@microsoft/fast-element';\n\nimport type { TableColumnTextCellViewBase } from '.';\nimport { overflow } from '../../../utilities/directive/overflow';\nimport { TextCellViewBaseAlignment } from './types';\n\n// prettier-ignore\nexport const template = html<TableColumnTextCellViewBase>`\n <template\n class=\"\n ${x => (x.alignment === TextCellViewBaseAlignment.right ? 'right-align' : '')}\n ${x => (x.isPlaceholder ? 'placeholder' : '')}\n \"\n >\n <span\n ${overflow('hasOverflow')}\n title=${x => (x.hasOverflow && x.text ? x.text : null)}\n >\n ${x => x.text}\n </span>\n </template>\n`;\n"]}
@@ -11,6 +11,9 @@ declare const TableColumnTextBase_base: (abstract new (...args: any[]) => {
11
11
  fractionalWidthChanged(): void;
12
12
  minPixelWidthChanged(): void;
13
13
  readonly columnInternals: import("../base/models/column-internals").ColumnInternals<unknown>;
14
+ }) & (abstract new (...args: any[]) => {
15
+ placeholder?: string | undefined;
16
+ placeholderChanged(): void;
14
17
  }) & typeof TableColumn;
15
18
  /**
16
19
  * The base class for table columns that display fields of any type as text.
@@ -3,10 +3,11 @@ import { attr } from '@microsoft/fast-element';
3
3
  import { mixinFractionalWidthColumnAPI } from '../mixins/fractional-width-column';
4
4
  import { TableColumn } from '../base';
5
5
  import { mixinGroupableColumnAPI } from '../mixins/groupable-column';
6
+ import { mixinColumnWithPlaceholderAPI } from '../mixins/placeholder';
6
7
  /**
7
8
  * The base class for table columns that display fields of any type as text.
8
9
  */
9
- export class TableColumnTextBase extends mixinGroupableColumnAPI(mixinFractionalWidthColumnAPI(TableColumn)) {
10
+ export class TableColumnTextBase extends mixinGroupableColumnAPI(mixinFractionalWidthColumnAPI(mixinColumnWithPlaceholderAPI(TableColumn))) {
10
11
  fieldNameChanged() {
11
12
  this.columnInternals.dataRecordFieldNames = [this.fieldName];
12
13
  this.columnInternals.operandDataRecordFieldName = this.fieldName;
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/table-column/text-base/index.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,yBAAyB,CAAC;AAC/C,OAAO,EAAE,6BAA6B,EAAE,MAAM,mCAAmC,CAAC;AAClF,OAAO,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AACtC,OAAO,EAAE,uBAAuB,EAAE,MAAM,4BAA4B,CAAC;AAErE;;GAEG;AACH,MAAM,OAAgB,mBAAoB,SAAQ,uBAAuB,CACrE,6BAA6B,CAAC,WAAW,CAAC,CAC7C;IAIa,gBAAgB;QACtB,IAAI,CAAC,eAAe,CAAC,oBAAoB,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAC7D,IAAI,CAAC,eAAe,CAAC,0BAA0B,GAAG,IAAI,CAAC,SAAS,CAAC;IACrE,CAAC;CACJ;AANG;IADC,IAAI,CAAC,EAAE,SAAS,EAAE,YAAY,EAAE,CAAC;sDACR","sourcesContent":["import { attr } from '@microsoft/fast-element';\nimport { mixinFractionalWidthColumnAPI } from '../mixins/fractional-width-column';\nimport { TableColumn } from '../base';\nimport { mixinGroupableColumnAPI } from '../mixins/groupable-column';\n\n/**\n * The base class for table columns that display fields of any type as text.\n */\nexport abstract class TableColumnTextBase extends mixinGroupableColumnAPI(\n mixinFractionalWidthColumnAPI(TableColumn)\n) {\n @attr({ attribute: 'field-name' })\n public fieldName?: string;\n\n protected fieldNameChanged(): void {\n this.columnInternals.dataRecordFieldNames = [this.fieldName];\n this.columnInternals.operandDataRecordFieldName = this.fieldName;\n }\n}\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/table-column/text-base/index.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,yBAAyB,CAAC;AAC/C,OAAO,EAAE,6BAA6B,EAAE,MAAM,mCAAmC,CAAC;AAClF,OAAO,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AACtC,OAAO,EAAE,uBAAuB,EAAE,MAAM,4BAA4B,CAAC;AACrE,OAAO,EAAE,6BAA6B,EAAE,MAAM,uBAAuB,CAAC;AAEtE;;GAEG;AACH,MAAM,OAAgB,mBAAoB,SAAQ,uBAAuB,CACrE,6BAA6B,CAAC,6BAA6B,CAAC,WAAW,CAAC,CAAC,CAC5E;IAIa,gBAAgB;QACtB,IAAI,CAAC,eAAe,CAAC,oBAAoB,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAC7D,IAAI,CAAC,eAAe,CAAC,0BAA0B,GAAG,IAAI,CAAC,SAAS,CAAC;IACrE,CAAC;CACJ;AANG;IADC,IAAI,CAAC,EAAE,SAAS,EAAE,YAAY,EAAE,CAAC;sDACR","sourcesContent":["import { attr } from '@microsoft/fast-element';\nimport { mixinFractionalWidthColumnAPI } from '../mixins/fractional-width-column';\nimport { TableColumn } from '../base';\nimport { mixinGroupableColumnAPI } from '../mixins/groupable-column';\nimport { mixinColumnWithPlaceholderAPI } from '../mixins/placeholder';\n\n/**\n * The base class for table columns that display fields of any type as text.\n */\nexport abstract class TableColumnTextBase extends mixinGroupableColumnAPI(\n mixinFractionalWidthColumnAPI(mixinColumnWithPlaceholderAPI(TableColumn))\n) {\n @attr({ attribute: 'field-name' })\n public fieldName?: string;\n\n protected fieldNameChanged(): void {\n this.columnInternals.dataRecordFieldNames = [this.fieldName];\n this.columnInternals.operandDataRecordFieldName = this.fieldName;\n }\n}\n"]}