@refinitiv-ui/efx-grid 0.0.0-dev.12023565035.1

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 (864) hide show
  1. package/LICENSE +17 -0
  2. package/README.md +61 -0
  3. package/lib/column-dragging/es6/ColumnDragging.d.ts +51 -0
  4. package/lib/column-dragging/es6/ColumnDragging.js +968 -0
  5. package/lib/column-dragging/es6/index.d.ts +1 -0
  6. package/lib/column-dragging/es6/index.js +1 -0
  7. package/lib/column-format-dialog/index.d.ts +2 -0
  8. package/lib/column-format-dialog/index.js +2 -0
  9. package/lib/column-format-dialog/lib/column-format-dialog.d.ts +77 -0
  10. package/lib/column-format-dialog/lib/column-format-dialog.js +2688 -0
  11. package/lib/column-format-dialog/lib/locale/translation-de.d.ts +7 -0
  12. package/lib/column-format-dialog/lib/locale/translation-de.js +94 -0
  13. package/lib/column-format-dialog/lib/locale/translation-en.d.ts +7 -0
  14. package/lib/column-format-dialog/lib/locale/translation-en.js +94 -0
  15. package/lib/column-format-dialog/lib/locale/translation-ja.d.ts +7 -0
  16. package/lib/column-format-dialog/lib/locale/translation-ja.js +94 -0
  17. package/lib/column-format-dialog/lib/locale/translation-zh-hant.d.ts +7 -0
  18. package/lib/column-format-dialog/lib/locale/translation-zh-hant.js +94 -0
  19. package/lib/column-format-dialog/lib/locale/translation-zh.d.ts +7 -0
  20. package/lib/column-format-dialog/lib/locale/translation-zh.js +94 -0
  21. package/lib/column-format-dialog/lib/locale/translation.d.ts +11 -0
  22. package/lib/column-format-dialog/lib/locale/translation.js +18 -0
  23. package/lib/column-format-dialog/lib/preview-table.d.ts +151 -0
  24. package/lib/column-format-dialog/lib/preview-table.js +982 -0
  25. package/lib/column-format-dialog/themes/base.less +429 -0
  26. package/lib/column-format-dialog/themes/elemental/column-format-dialog.less +1 -0
  27. package/lib/column-format-dialog/themes/elemental/dark/column-format-dialog.js +4 -0
  28. package/lib/column-format-dialog/themes/elemental/dark/css/native-elements.css +0 -0
  29. package/lib/column-format-dialog/themes/elemental/dark/es5/all-elements.js +2 -0
  30. package/lib/column-format-dialog/themes/elemental/dark/imports/all-elements.js +1 -0
  31. package/lib/column-format-dialog/themes/elemental/dark/imports/custom-elements.js +1 -0
  32. package/lib/column-format-dialog/themes/elemental/dark/imports/native-elements.js +0 -0
  33. package/lib/column-format-dialog/themes/elemental/dark.js +16 -0
  34. package/lib/column-format-dialog/themes/elemental/defaults.less +1 -0
  35. package/lib/column-format-dialog/themes/elemental/index.less +5 -0
  36. package/lib/column-format-dialog/themes/elemental/light/column-format-dialog.js +4 -0
  37. package/lib/column-format-dialog/themes/elemental/light/css/native-elements.css +0 -0
  38. package/lib/column-format-dialog/themes/elemental/light/es5/all-elements.js +2 -0
  39. package/lib/column-format-dialog/themes/elemental/light/imports/all-elements.js +1 -0
  40. package/lib/column-format-dialog/themes/elemental/light/imports/custom-elements.js +1 -0
  41. package/lib/column-format-dialog/themes/elemental/light/imports/native-elements.js +0 -0
  42. package/lib/column-format-dialog/themes/elemental/light.js +16 -0
  43. package/lib/column-format-dialog/themes/halo/column-format-dialog.less +6 -0
  44. package/lib/column-format-dialog/themes/halo/dark/column-format-dialog.js +4 -0
  45. package/lib/column-format-dialog/themes/halo/dark/css/native-elements.css +0 -0
  46. package/lib/column-format-dialog/themes/halo/dark/es5/all-elements.js +2 -0
  47. package/lib/column-format-dialog/themes/halo/dark/imports/all-elements.js +1 -0
  48. package/lib/column-format-dialog/themes/halo/dark/imports/custom-elements.js +1 -0
  49. package/lib/column-format-dialog/themes/halo/dark/imports/native-elements.js +0 -0
  50. package/lib/column-format-dialog/themes/halo/dark.js +16 -0
  51. package/lib/column-format-dialog/themes/halo/defaults.less +1 -0
  52. package/lib/column-format-dialog/themes/halo/index.less +5 -0
  53. package/lib/column-format-dialog/themes/halo/light/column-format-dialog.js +4 -0
  54. package/lib/column-format-dialog/themes/halo/light/css/native-elements.css +0 -0
  55. package/lib/column-format-dialog/themes/halo/light/es5/all-elements.js +2 -0
  56. package/lib/column-format-dialog/themes/halo/light/imports/all-elements.js +1 -0
  57. package/lib/column-format-dialog/themes/halo/light/imports/custom-elements.js +1 -0
  58. package/lib/column-format-dialog/themes/halo/light/imports/native-elements.js +0 -0
  59. package/lib/column-format-dialog/themes/halo/light.js +16 -0
  60. package/lib/column-format-dialog/themes/luna/column-format-dialog.less +1 -0
  61. package/lib/column-format-dialog/themes/luna/default/column-format-dialog.js +4 -0
  62. package/lib/column-format-dialog/themes/luna/default/css/native-elements.css +0 -0
  63. package/lib/column-format-dialog/themes/luna/default/es5/all-elements.js +2 -0
  64. package/lib/column-format-dialog/themes/luna/default/imports/all-elements.js +1 -0
  65. package/lib/column-format-dialog/themes/luna/default/imports/custom-elements.js +1 -0
  66. package/lib/column-format-dialog/themes/luna/default/imports/native-elements.js +0 -0
  67. package/lib/column-format-dialog/themes/luna/defaults.less +1 -0
  68. package/lib/column-format-dialog/themes/luna/index.less +5 -0
  69. package/lib/column-format-dialog/themes/solar/charcoal/column-format-dialog.js +4 -0
  70. package/lib/column-format-dialog/themes/solar/charcoal/css/native-elements.css +0 -0
  71. package/lib/column-format-dialog/themes/solar/charcoal/es5/all-elements.js +2 -0
  72. package/lib/column-format-dialog/themes/solar/charcoal/imports/all-elements.js +1 -0
  73. package/lib/column-format-dialog/themes/solar/charcoal/imports/custom-elements.js +1 -0
  74. package/lib/column-format-dialog/themes/solar/charcoal/imports/native-elements.js +0 -0
  75. package/lib/column-format-dialog/themes/solar/charcoal.js +16 -0
  76. package/lib/column-format-dialog/themes/solar/column-format-dialog.less +6 -0
  77. package/lib/column-format-dialog/themes/solar/defaults.less +1 -0
  78. package/lib/column-format-dialog/themes/solar/index.less +5 -0
  79. package/lib/column-format-dialog/themes/solar/pearl/column-format-dialog.js +4 -0
  80. package/lib/column-format-dialog/themes/solar/pearl/css/native-elements.css +0 -0
  81. package/lib/column-format-dialog/themes/solar/pearl/es5/all-elements.js +2 -0
  82. package/lib/column-format-dialog/themes/solar/pearl/imports/all-elements.js +1 -0
  83. package/lib/column-format-dialog/themes/solar/pearl/imports/custom-elements.js +1 -0
  84. package/lib/column-format-dialog/themes/solar/pearl/imports/native-elements.js +0 -0
  85. package/lib/column-format-dialog/themes/solar/pearl.js +16 -0
  86. package/lib/column-selection-dialog/index.d.ts +2 -0
  87. package/lib/column-selection-dialog/index.js +2 -0
  88. package/lib/column-selection-dialog/lib/column-selection-dialog.d.ts +66 -0
  89. package/lib/column-selection-dialog/lib/column-selection-dialog.js +2034 -0
  90. package/lib/column-selection-dialog/lib/locale/translation-de.d.ts +7 -0
  91. package/lib/column-selection-dialog/lib/locale/translation-de.js +20 -0
  92. package/lib/column-selection-dialog/lib/locale/translation-en.d.ts +7 -0
  93. package/lib/column-selection-dialog/lib/locale/translation-en.js +20 -0
  94. package/lib/column-selection-dialog/lib/locale/translation-ja.d.ts +7 -0
  95. package/lib/column-selection-dialog/lib/locale/translation-ja.js +20 -0
  96. package/lib/column-selection-dialog/lib/locale/translation-zh-hant.d.ts +7 -0
  97. package/lib/column-selection-dialog/lib/locale/translation-zh-hant.js +20 -0
  98. package/lib/column-selection-dialog/lib/locale/translation-zh.d.ts +7 -0
  99. package/lib/column-selection-dialog/lib/locale/translation-zh.js +20 -0
  100. package/lib/column-selection-dialog/lib/locale/translation.d.ts +11 -0
  101. package/lib/column-selection-dialog/lib/locale/translation.js +18 -0
  102. package/lib/column-selection-dialog/themes/base.less +258 -0
  103. package/lib/column-selection-dialog/themes/elemental/column-selection-dialog.less +1 -0
  104. package/lib/column-selection-dialog/themes/elemental/dark/column-selection-dialog.js +4 -0
  105. package/lib/column-selection-dialog/themes/elemental/dark/css/native-elements.css +0 -0
  106. package/lib/column-selection-dialog/themes/elemental/dark/es5/all-elements.js +2 -0
  107. package/lib/column-selection-dialog/themes/elemental/dark/imports/all-elements.js +1 -0
  108. package/lib/column-selection-dialog/themes/elemental/dark/imports/custom-elements.js +1 -0
  109. package/lib/column-selection-dialog/themes/elemental/dark/imports/native-elements.js +0 -0
  110. package/lib/column-selection-dialog/themes/elemental/dark.js +8 -0
  111. package/lib/column-selection-dialog/themes/elemental/defaults.less +1 -0
  112. package/lib/column-selection-dialog/themes/elemental/index.less +5 -0
  113. package/lib/column-selection-dialog/themes/elemental/light/column-selection-dialog.js +4 -0
  114. package/lib/column-selection-dialog/themes/elemental/light/css/native-elements.css +0 -0
  115. package/lib/column-selection-dialog/themes/elemental/light/es5/all-elements.js +2 -0
  116. package/lib/column-selection-dialog/themes/elemental/light/imports/all-elements.js +1 -0
  117. package/lib/column-selection-dialog/themes/elemental/light/imports/custom-elements.js +1 -0
  118. package/lib/column-selection-dialog/themes/elemental/light/imports/native-elements.js +0 -0
  119. package/lib/column-selection-dialog/themes/elemental/light.js +8 -0
  120. package/lib/column-selection-dialog/themes/halo/column-selection-dialog.less +25 -0
  121. package/lib/column-selection-dialog/themes/halo/dark/column-selection-dialog.js +4 -0
  122. package/lib/column-selection-dialog/themes/halo/dark/css/native-elements.css +0 -0
  123. package/lib/column-selection-dialog/themes/halo/dark/es5/all-elements.js +2 -0
  124. package/lib/column-selection-dialog/themes/halo/dark/imports/all-elements.js +1 -0
  125. package/lib/column-selection-dialog/themes/halo/dark/imports/custom-elements.js +1 -0
  126. package/lib/column-selection-dialog/themes/halo/dark/imports/native-elements.js +0 -0
  127. package/lib/column-selection-dialog/themes/halo/dark.js +8 -0
  128. package/lib/column-selection-dialog/themes/halo/defaults.less +1 -0
  129. package/lib/column-selection-dialog/themes/halo/index.less +6 -0
  130. package/lib/column-selection-dialog/themes/halo/light/column-selection-dialog.js +4 -0
  131. package/lib/column-selection-dialog/themes/halo/light/css/native-elements.css +0 -0
  132. package/lib/column-selection-dialog/themes/halo/light/es5/all-elements.js +2 -0
  133. package/lib/column-selection-dialog/themes/halo/light/imports/all-elements.js +1 -0
  134. package/lib/column-selection-dialog/themes/halo/light/imports/custom-elements.js +1 -0
  135. package/lib/column-selection-dialog/themes/halo/light/imports/native-elements.js +0 -0
  136. package/lib/column-selection-dialog/themes/halo/light.js +8 -0
  137. package/lib/column-selection-dialog/themes/solar/charcoal/column-selection-dialog.js +4 -0
  138. package/lib/column-selection-dialog/themes/solar/charcoal/css/native-elements.css +0 -0
  139. package/lib/column-selection-dialog/themes/solar/charcoal/es5/all-elements.js +2 -0
  140. package/lib/column-selection-dialog/themes/solar/charcoal/imports/all-elements.js +1 -0
  141. package/lib/column-selection-dialog/themes/solar/charcoal/imports/custom-elements.js +1 -0
  142. package/lib/column-selection-dialog/themes/solar/charcoal/imports/native-elements.js +0 -0
  143. package/lib/column-selection-dialog/themes/solar/charcoal.js +8 -0
  144. package/lib/column-selection-dialog/themes/solar/column-selection-dialog.less +5 -0
  145. package/lib/column-selection-dialog/themes/solar/defaults.less +1 -0
  146. package/lib/column-selection-dialog/themes/solar/index.less +6 -0
  147. package/lib/column-selection-dialog/themes/solar/pearl/column-selection-dialog.js +4 -0
  148. package/lib/column-selection-dialog/themes/solar/pearl/css/native-elements.css +0 -0
  149. package/lib/column-selection-dialog/themes/solar/pearl/es5/all-elements.js +2 -0
  150. package/lib/column-selection-dialog/themes/solar/pearl/imports/all-elements.js +1 -0
  151. package/lib/column-selection-dialog/themes/solar/pearl/imports/custom-elements.js +1 -0
  152. package/lib/column-selection-dialog/themes/solar/pearl/imports/native-elements.js +0 -0
  153. package/lib/column-selection-dialog/themes/solar/pearl.js +8 -0
  154. package/lib/core/dist/core.css +1 -0
  155. package/lib/core/dist/core.js +33910 -0
  156. package/lib/core/dist/core.min.js +1 -0
  157. package/lib/core/es6/data/ColumnStats.d.ts +42 -0
  158. package/lib/core/es6/data/ColumnStats.js +428 -0
  159. package/lib/core/es6/data/DataCache.d.ts +43 -0
  160. package/lib/core/es6/data/DataCache.js +597 -0
  161. package/lib/core/es6/data/DataTable.d.ts +156 -0
  162. package/lib/core/es6/data/DataTable.js +2206 -0
  163. package/lib/core/es6/data/DataView.d.ts +332 -0
  164. package/lib/core/es6/data/DataView.js +4144 -0
  165. package/lib/core/es6/data/Segment.d.ts +91 -0
  166. package/lib/core/es6/data/Segment.js +1001 -0
  167. package/lib/core/es6/data/SegmentCollection.d.ts +84 -0
  168. package/lib/core/es6/data/SegmentCollection.js +713 -0
  169. package/lib/core/es6/data/WrappedView.d.ts +290 -0
  170. package/lib/core/es6/data/WrappedView.js +1320 -0
  171. package/lib/core/es6/grid/Core.d.ts +455 -0
  172. package/lib/core/es6/grid/Core.js +6196 -0
  173. package/lib/core/es6/grid/ILayoutGrid.d.ts +212 -0
  174. package/lib/core/es6/grid/ILayoutGrid.js +706 -0
  175. package/lib/core/es6/grid/LayoutGrid.d.ts +37 -0
  176. package/lib/core/es6/grid/LayoutGrid.js +2975 -0
  177. package/lib/core/es6/grid/VirtualizedLayoutGrid.d.ts +28 -0
  178. package/lib/core/es6/grid/VirtualizedLayoutGrid.js +1241 -0
  179. package/lib/core/es6/grid/components/Cell.d.ts +52 -0
  180. package/lib/core/es6/grid/components/Cell.js +826 -0
  181. package/lib/core/es6/grid/components/CellFloatingPanel.d.ts +21 -0
  182. package/lib/core/es6/grid/components/CellFloatingPanel.js +130 -0
  183. package/lib/core/es6/grid/components/CellSpan.d.ts +18 -0
  184. package/lib/core/es6/grid/components/CellSpan.js +99 -0
  185. package/lib/core/es6/grid/components/CellSpans.d.ts +40 -0
  186. package/lib/core/es6/grid/components/CellSpans.js +368 -0
  187. package/lib/core/es6/grid/components/Column.d.ts +22 -0
  188. package/lib/core/es6/grid/components/Column.js +618 -0
  189. package/lib/core/es6/grid/components/ElementWrapper.d.ts +127 -0
  190. package/lib/core/es6/grid/components/ElementWrapper.js +718 -0
  191. package/lib/core/es6/grid/components/HScrollbar.d.ts +28 -0
  192. package/lib/core/es6/grid/components/HScrollbar.js +241 -0
  193. package/lib/core/es6/grid/components/Scrollbar.d.ts +63 -0
  194. package/lib/core/es6/grid/components/Scrollbar.js +1413 -0
  195. package/lib/core/es6/grid/components/StretchedCells.d.ts +17 -0
  196. package/lib/core/es6/grid/components/StretchedCells.js +342 -0
  197. package/lib/core/es6/grid/components/VScrollbar.d.ts +18 -0
  198. package/lib/core/es6/grid/components/VScrollbar.js +139 -0
  199. package/lib/core/es6/grid/components/VirtualItems.d.ts +12 -0
  200. package/lib/core/es6/grid/components/VirtualItems.js +51 -0
  201. package/lib/core/es6/grid/event/EventDispatcher.d.ts +16 -0
  202. package/lib/core/es6/grid/event/EventDispatcher.js +138 -0
  203. package/lib/core/es6/grid/event/EventListeners.d.ts +34 -0
  204. package/lib/core/es6/grid/event/EventListeners.js +166 -0
  205. package/lib/core/es6/grid/plugins/SortableTitlePlugin.d.ts +155 -0
  206. package/lib/core/es6/grid/plugins/SortableTitlePlugin.js +1977 -0
  207. package/lib/core/es6/grid/util/CellBoundPainter.d.ts +16 -0
  208. package/lib/core/es6/grid/util/CellBoundPainter.js +171 -0
  209. package/lib/core/es6/grid/util/Conflator.d.ts +32 -0
  210. package/lib/core/es6/grid/util/Conflator.js +191 -0
  211. package/lib/core/es6/grid/util/Reverter.d.ts +14 -0
  212. package/lib/core/es6/grid/util/Reverter.js +79 -0
  213. package/lib/core/es6/grid/util/SectionSettings.d.ts +79 -0
  214. package/lib/core/es6/grid/util/SectionSettings.js +679 -0
  215. package/lib/core/es6/grid/util/SelectionList.d.ts +54 -0
  216. package/lib/core/es6/grid/util/SelectionList.js +491 -0
  217. package/lib/core/es6/grid/util/TrackLayout.d.ts +92 -0
  218. package/lib/core/es6/grid/util/TrackLayout.js +902 -0
  219. package/lib/core/es6/grid/util/Virtualizer.d.ts +40 -0
  220. package/lib/core/es6/grid/util/Virtualizer.js +340 -0
  221. package/lib/core/es6/grid/util/util.d.ts +20 -0
  222. package/lib/core/es6/grid/util/util.js +391 -0
  223. package/lib/core/es6/index.d.ts +79 -0
  224. package/lib/core/es6/index.js +125 -0
  225. package/lib/core/es6/tr-grid-theme.d.ts +5 -0
  226. package/lib/core/es6/tr-grid-theme.js +5 -0
  227. package/lib/filter-dialog/index.d.ts +2 -0
  228. package/lib/filter-dialog/index.js +2 -0
  229. package/lib/filter-dialog/lib/checkbox-list.d.ts +52 -0
  230. package/lib/filter-dialog/lib/checkbox-list.js +444 -0
  231. package/lib/filter-dialog/lib/filter-dialog.d.ts +75 -0
  232. package/lib/filter-dialog/lib/filter-dialog.js +1160 -0
  233. package/lib/filter-dialog/lib/locale/translation-de.d.ts +7 -0
  234. package/lib/filter-dialog/lib/locale/translation-de.js +40 -0
  235. package/lib/filter-dialog/lib/locale/translation-en.d.ts +7 -0
  236. package/lib/filter-dialog/lib/locale/translation-en.js +40 -0
  237. package/lib/filter-dialog/lib/locale/translation-ja.d.ts +7 -0
  238. package/lib/filter-dialog/lib/locale/translation-ja.js +40 -0
  239. package/lib/filter-dialog/lib/locale/translation-zh-hant.d.ts +7 -0
  240. package/lib/filter-dialog/lib/locale/translation-zh-hant.js +40 -0
  241. package/lib/filter-dialog/lib/locale/translation-zh.d.ts +7 -0
  242. package/lib/filter-dialog/lib/locale/translation-zh.js +40 -0
  243. package/lib/filter-dialog/lib/locale/translation.d.ts +11 -0
  244. package/lib/filter-dialog/lib/locale/translation.js +18 -0
  245. package/lib/filter-dialog/themes/base-checkbox.less +42 -0
  246. package/lib/filter-dialog/themes/base.less +191 -0
  247. package/lib/filter-dialog/themes/elemental/checkbox-list.less +3 -0
  248. package/lib/filter-dialog/themes/elemental/dark/checkbox-list.js +4 -0
  249. package/lib/filter-dialog/themes/elemental/dark/css/native-elements.css +0 -0
  250. package/lib/filter-dialog/themes/elemental/dark/es5/all-elements.js +4 -0
  251. package/lib/filter-dialog/themes/elemental/dark/filter-dialog.js +5 -0
  252. package/lib/filter-dialog/themes/elemental/dark/imports/all-elements.js +2 -0
  253. package/lib/filter-dialog/themes/elemental/dark/imports/custom-elements.js +2 -0
  254. package/lib/filter-dialog/themes/elemental/dark/imports/native-elements.js +0 -0
  255. package/lib/filter-dialog/themes/elemental/dark.js +11 -0
  256. package/lib/filter-dialog/themes/elemental/defaults.less +3 -0
  257. package/lib/filter-dialog/themes/elemental/filter-dialog.less +1 -0
  258. package/lib/filter-dialog/themes/elemental/index.less +6 -0
  259. package/lib/filter-dialog/themes/elemental/light/checkbox-list.js +4 -0
  260. package/lib/filter-dialog/themes/elemental/light/css/native-elements.css +0 -0
  261. package/lib/filter-dialog/themes/elemental/light/es5/all-elements.js +4 -0
  262. package/lib/filter-dialog/themes/elemental/light/filter-dialog.js +5 -0
  263. package/lib/filter-dialog/themes/elemental/light/imports/all-elements.js +2 -0
  264. package/lib/filter-dialog/themes/elemental/light/imports/custom-elements.js +2 -0
  265. package/lib/filter-dialog/themes/elemental/light/imports/native-elements.js +0 -0
  266. package/lib/filter-dialog/themes/elemental/light.js +11 -0
  267. package/lib/filter-dialog/themes/halo/checkbox-list.less +3 -0
  268. package/lib/filter-dialog/themes/halo/dark/checkbox-list.js +4 -0
  269. package/lib/filter-dialog/themes/halo/dark/css/native-elements.css +0 -0
  270. package/lib/filter-dialog/themes/halo/dark/es5/all-elements.js +4 -0
  271. package/lib/filter-dialog/themes/halo/dark/filter-dialog.js +5 -0
  272. package/lib/filter-dialog/themes/halo/dark/imports/all-elements.js +2 -0
  273. package/lib/filter-dialog/themes/halo/dark/imports/custom-elements.js +2 -0
  274. package/lib/filter-dialog/themes/halo/dark/imports/native-elements.js +0 -0
  275. package/lib/filter-dialog/themes/halo/dark.js +11 -0
  276. package/lib/filter-dialog/themes/halo/defaults.less +3 -0
  277. package/lib/filter-dialog/themes/halo/filter-dialog.less +15 -0
  278. package/lib/filter-dialog/themes/halo/index.less +6 -0
  279. package/lib/filter-dialog/themes/halo/light/checkbox-list.js +4 -0
  280. package/lib/filter-dialog/themes/halo/light/css/native-elements.css +0 -0
  281. package/lib/filter-dialog/themes/halo/light/es5/all-elements.js +4 -0
  282. package/lib/filter-dialog/themes/halo/light/filter-dialog.js +5 -0
  283. package/lib/filter-dialog/themes/halo/light/imports/all-elements.js +2 -0
  284. package/lib/filter-dialog/themes/halo/light/imports/custom-elements.js +2 -0
  285. package/lib/filter-dialog/themes/halo/light/imports/native-elements.js +0 -0
  286. package/lib/filter-dialog/themes/halo/light.js +11 -0
  287. package/lib/filter-dialog/themes/solar/charcoal/checkbox-list.js +4 -0
  288. package/lib/filter-dialog/themes/solar/charcoal/css/native-elements.css +0 -0
  289. package/lib/filter-dialog/themes/solar/charcoal/es5/all-elements.js +4 -0
  290. package/lib/filter-dialog/themes/solar/charcoal/filter-dialog.js +5 -0
  291. package/lib/filter-dialog/themes/solar/charcoal/imports/all-elements.js +2 -0
  292. package/lib/filter-dialog/themes/solar/charcoal/imports/custom-elements.js +2 -0
  293. package/lib/filter-dialog/themes/solar/charcoal/imports/native-elements.js +0 -0
  294. package/lib/filter-dialog/themes/solar/charcoal.js +11 -0
  295. package/lib/filter-dialog/themes/solar/checkbox-list.less +3 -0
  296. package/lib/filter-dialog/themes/solar/defaults.less +3 -0
  297. package/lib/filter-dialog/themes/solar/filter-dialog.less +5 -0
  298. package/lib/filter-dialog/themes/solar/index.less +6 -0
  299. package/lib/filter-dialog/themes/solar/pearl/checkbox-list.js +4 -0
  300. package/lib/filter-dialog/themes/solar/pearl/css/native-elements.css +0 -0
  301. package/lib/filter-dialog/themes/solar/pearl/es5/all-elements.js +4 -0
  302. package/lib/filter-dialog/themes/solar/pearl/filter-dialog.js +5 -0
  303. package/lib/filter-dialog/themes/solar/pearl/imports/all-elements.js +2 -0
  304. package/lib/filter-dialog/themes/solar/pearl/imports/custom-elements.js +2 -0
  305. package/lib/filter-dialog/themes/solar/pearl/imports/native-elements.js +0 -0
  306. package/lib/filter-dialog/themes/solar/pearl.js +11 -0
  307. package/lib/formatters/es6/CoralButtonFormatter.d.ts +20 -0
  308. package/lib/formatters/es6/CoralButtonFormatter.js +45 -0
  309. package/lib/formatters/es6/CoralCheckboxFormatter.d.ts +12 -0
  310. package/lib/formatters/es6/CoralCheckboxFormatter.js +50 -0
  311. package/lib/formatters/es6/CoralComboBoxFormatter.d.ts +23 -0
  312. package/lib/formatters/es6/CoralComboBoxFormatter.js +103 -0
  313. package/lib/formatters/es6/CoralIconFormatter.d.ts +21 -0
  314. package/lib/formatters/es6/CoralIconFormatter.js +50 -0
  315. package/lib/formatters/es6/CoralInputFormatter.d.ts +12 -0
  316. package/lib/formatters/es6/CoralInputFormatter.js +45 -0
  317. package/lib/formatters/es6/CoralRadioButtonFormatter.d.ts +20 -0
  318. package/lib/formatters/es6/CoralRadioButtonFormatter.js +85 -0
  319. package/lib/formatters/es6/CoralSelectFormatter.d.ts +23 -0
  320. package/lib/formatters/es6/CoralSelectFormatter.js +71 -0
  321. package/lib/formatters/es6/CoralToggleFormatter.d.ts +12 -0
  322. package/lib/formatters/es6/CoralToggleFormatter.js +47 -0
  323. package/lib/formatters/es6/DuplexEmeraldDateTimePickerFormatter.d.ts +14 -0
  324. package/lib/formatters/es6/DuplexEmeraldDateTimePickerFormatter.js +119 -0
  325. package/lib/formatters/es6/EFButtonFormatter.d.ts +20 -0
  326. package/lib/formatters/es6/EFButtonFormatter.js +45 -0
  327. package/lib/formatters/es6/EFCheckboxFormatter.d.ts +12 -0
  328. package/lib/formatters/es6/EFCheckboxFormatter.js +50 -0
  329. package/lib/formatters/es6/EFComboBoxFormatter.d.ts +23 -0
  330. package/lib/formatters/es6/EFComboBoxFormatter.js +78 -0
  331. package/lib/formatters/es6/EFDateTimePickerFormatter.d.ts +13 -0
  332. package/lib/formatters/es6/EFDateTimePickerFormatter.js +60 -0
  333. package/lib/formatters/es6/EFIconFormatter.d.ts +21 -0
  334. package/lib/formatters/es6/EFIconFormatter.js +50 -0
  335. package/lib/formatters/es6/EFNumberFieldFormatter.d.ts +12 -0
  336. package/lib/formatters/es6/EFNumberFieldFormatter.js +45 -0
  337. package/lib/formatters/es6/EFRadioButtonFormatter.d.ts +20 -0
  338. package/lib/formatters/es6/EFRadioButtonFormatter.js +132 -0
  339. package/lib/formatters/es6/EFSelectFormatter.d.ts +23 -0
  340. package/lib/formatters/es6/EFSelectFormatter.js +76 -0
  341. package/lib/formatters/es6/EFTextFieldFormatter.d.ts +12 -0
  342. package/lib/formatters/es6/EFTextFieldFormatter.js +40 -0
  343. package/lib/formatters/es6/EFToggleFormatter.d.ts +12 -0
  344. package/lib/formatters/es6/EFToggleFormatter.js +47 -0
  345. package/lib/formatters/es6/EmeraldDateTimePickerFormatter.d.ts +13 -0
  346. package/lib/formatters/es6/EmeraldDateTimePickerFormatter.js +55 -0
  347. package/lib/formatters/es6/FormatterBuilder.d.ts +26 -0
  348. package/lib/formatters/es6/FormatterBuilder.js +493 -0
  349. package/lib/formatters/es6/NumericInputFormatter.d.ts +13 -0
  350. package/lib/formatters/es6/NumericInputFormatter.js +64 -0
  351. package/lib/formatters/es6/PercentBarFormatter.d.ts +25 -0
  352. package/lib/formatters/es6/PercentBarFormatter.js +62 -0
  353. package/lib/formatters/es6/SimpleImageFormatter.d.ts +21 -0
  354. package/lib/formatters/es6/SimpleImageFormatter.js +64 -0
  355. package/lib/formatters/es6/SimpleInputFormatter.d.ts +12 -0
  356. package/lib/formatters/es6/SimpleInputFormatter.js +40 -0
  357. package/lib/formatters/es6/SimpleLinkFormatter.d.ts +21 -0
  358. package/lib/formatters/es6/SimpleLinkFormatter.js +48 -0
  359. package/lib/formatters/es6/SimpleTickerFormatter.d.ts +23 -0
  360. package/lib/formatters/es6/SimpleTickerFormatter.js +66 -0
  361. package/lib/formatters/es6/SimpleToggleFormatter.d.ts +22 -0
  362. package/lib/formatters/es6/SimpleToggleFormatter.js +132 -0
  363. package/lib/formatters/es6/TextFormatter.d.ts +12 -0
  364. package/lib/formatters/es6/TextFormatter.js +35 -0
  365. package/lib/formatters/es6/index.d.ts +64 -0
  366. package/lib/formatters/es6/index.js +88 -0
  367. package/lib/grid/index.d.ts +2 -0
  368. package/lib/grid/index.js +3 -0
  369. package/lib/grid/lib/efx-grid.d.ts +53 -0
  370. package/lib/grid/lib/efx-grid.js +444 -0
  371. package/lib/grid/themes/base.less +137 -0
  372. package/lib/grid/themes/ds/dark/css/native-elements.css +0 -0
  373. package/lib/grid/themes/ds/dark/efx-grid.js +4 -0
  374. package/lib/grid/themes/ds/dark/es5/all-elements.js +2 -0
  375. package/lib/grid/themes/ds/dark/imports/all-elements.js +1 -0
  376. package/lib/grid/themes/ds/dark/imports/custom-elements.js +1 -0
  377. package/lib/grid/themes/ds/dark/imports/native-elements.js +0 -0
  378. package/lib/grid/themes/ds/dark.js +3 -0
  379. package/lib/grid/themes/ds/efx-grid.less +207 -0
  380. package/lib/grid/themes/ds/index.less +3 -0
  381. package/lib/grid/themes/ds/light/css/native-elements.css +0 -0
  382. package/lib/grid/themes/ds/light/efx-grid.js +4 -0
  383. package/lib/grid/themes/ds/light/es5/all-elements.js +2 -0
  384. package/lib/grid/themes/ds/light/imports/all-elements.js +1 -0
  385. package/lib/grid/themes/ds/light/imports/custom-elements.js +1 -0
  386. package/lib/grid/themes/ds/light/imports/native-elements.js +0 -0
  387. package/lib/grid/themes/ds/light.js +3 -0
  388. package/lib/grid/themes/halo/dark/css/native-elements.css +0 -0
  389. package/lib/grid/themes/halo/dark/efx-grid.js +4 -0
  390. package/lib/grid/themes/halo/dark/es5/all-elements.js +2 -0
  391. package/lib/grid/themes/halo/dark/imports/all-elements.js +1 -0
  392. package/lib/grid/themes/halo/dark/imports/custom-elements.js +1 -0
  393. package/lib/grid/themes/halo/dark/imports/native-elements.js +0 -0
  394. package/lib/grid/themes/halo/dark.js +3 -0
  395. package/lib/grid/themes/halo/efx-grid.less +127 -0
  396. package/lib/grid/themes/halo/index.less +3 -0
  397. package/lib/grid/themes/halo/light/css/native-elements.css +0 -0
  398. package/lib/grid/themes/halo/light/efx-grid.js +4 -0
  399. package/lib/grid/themes/halo/light/es5/all-elements.js +2 -0
  400. package/lib/grid/themes/halo/light/imports/all-elements.js +1 -0
  401. package/lib/grid/themes/halo/light/imports/custom-elements.js +1 -0
  402. package/lib/grid/themes/halo/light/imports/native-elements.js +0 -0
  403. package/lib/grid/themes/halo/light.js +3 -0
  404. package/lib/grid/themes/solar/charcoal/css/native-elements.css +0 -0
  405. package/lib/grid/themes/solar/charcoal/efx-grid.js +4 -0
  406. package/lib/grid/themes/solar/charcoal/es5/all-elements.js +2 -0
  407. package/lib/grid/themes/solar/charcoal/imports/all-elements.js +1 -0
  408. package/lib/grid/themes/solar/charcoal/imports/custom-elements.js +1 -0
  409. package/lib/grid/themes/solar/charcoal/imports/native-elements.js +0 -0
  410. package/lib/grid/themes/solar/charcoal.js +3 -0
  411. package/lib/grid/themes/solar/efx-grid.less +27 -0
  412. package/lib/grid/themes/solar/index.less +3 -0
  413. package/lib/grid/themes/solar/pearl/css/native-elements.css +0 -0
  414. package/lib/grid/themes/solar/pearl/efx-grid.js +4 -0
  415. package/lib/grid/themes/solar/pearl/es5/all-elements.js +2 -0
  416. package/lib/grid/themes/solar/pearl/imports/all-elements.js +1 -0
  417. package/lib/grid/themes/solar/pearl/imports/custom-elements.js +1 -0
  418. package/lib/grid/themes/solar/pearl/imports/native-elements.js +0 -0
  419. package/lib/grid/themes/solar/pearl.js +3 -0
  420. package/lib/index.d.ts +100 -0
  421. package/lib/index.js +100 -0
  422. package/lib/row-segmenting/es6/RowSegmenting.d.ts +115 -0
  423. package/lib/row-segmenting/es6/RowSegmenting.js +1182 -0
  424. package/lib/row-segmenting/es6/index.d.ts +1 -0
  425. package/lib/row-segmenting/es6/index.js +1 -0
  426. package/lib/rt-grid/dist/rt-grid.js +54547 -0
  427. package/lib/rt-grid/dist/rt-grid.min.js +1 -0
  428. package/lib/rt-grid/es6/ColumnDefinition.d.ts +174 -0
  429. package/lib/rt-grid/es6/ColumnDefinition.js +1203 -0
  430. package/lib/rt-grid/es6/DataConnector.d.ts +43 -0
  431. package/lib/rt-grid/es6/DataConnector.js +290 -0
  432. package/lib/rt-grid/es6/FieldDefinition.d.ts +40 -0
  433. package/lib/rt-grid/es6/FieldDefinition.js +560 -0
  434. package/lib/rt-grid/es6/Grid.d.ts +376 -0
  435. package/lib/rt-grid/es6/Grid.js +4653 -0
  436. package/lib/rt-grid/es6/PredefinedFormula.d.ts +16 -0
  437. package/lib/rt-grid/es6/PredefinedFormula.js +33 -0
  438. package/lib/rt-grid/es6/ReferenceCounter.d.ts +40 -0
  439. package/lib/rt-grid/es6/ReferenceCounter.js +251 -0
  440. package/lib/rt-grid/es6/RowDefSorter.d.ts +19 -0
  441. package/lib/rt-grid/es6/RowDefSorter.js +231 -0
  442. package/lib/rt-grid/es6/RowDefinition.d.ts +156 -0
  443. package/lib/rt-grid/es6/RowDefinition.js +1478 -0
  444. package/lib/rt-grid/es6/SnapshotFiller.d.ts +36 -0
  445. package/lib/rt-grid/es6/SnapshotFiller.js +537 -0
  446. package/lib/rt-grid/es6/StyleLoader.d.ts +17 -0
  447. package/lib/rt-grid/es6/StyleLoader.js +47 -0
  448. package/lib/rt-grid/es6/index.d.ts +8 -0
  449. package/lib/rt-grid/es6/index.js +43 -0
  450. package/lib/statistics-row/es6/StatisticsRow.d.ts +68 -0
  451. package/lib/statistics-row/es6/StatisticsRow.js +807 -0
  452. package/lib/statistics-row/es6/index.d.ts +1 -0
  453. package/lib/statistics-row/es6/index.js +1 -0
  454. package/lib/tr-grid-auto-tooltip/es6/AutoTooltip.d.ts +46 -0
  455. package/lib/tr-grid-auto-tooltip/es6/AutoTooltip.js +617 -0
  456. package/lib/tr-grid-auto-tooltip/es6/index.d.ts +1 -0
  457. package/lib/tr-grid-auto-tooltip/es6/index.js +1 -0
  458. package/lib/tr-grid-cell-selection/es6/CellSelection.d.ts +70 -0
  459. package/lib/tr-grid-cell-selection/es6/CellSelection.js +1695 -0
  460. package/lib/tr-grid-cell-selection/es6/index.d.ts +1 -0
  461. package/lib/tr-grid-cell-selection/es6/index.js +1 -0
  462. package/lib/tr-grid-checkbox/es6/Checkbox.d.ts +82 -0
  463. package/lib/tr-grid-checkbox/es6/Checkbox.js +1704 -0
  464. package/lib/tr-grid-checkbox/es6/index.d.ts +1 -0
  465. package/lib/tr-grid-checkbox/es6/index.js +1 -0
  466. package/lib/tr-grid-column-fitter/es6/ColumnFitter.d.ts +56 -0
  467. package/lib/tr-grid-column-fitter/es6/ColumnFitter.js +817 -0
  468. package/lib/tr-grid-column-fitter/es6/index.d.ts +1 -0
  469. package/lib/tr-grid-column-fitter/es6/index.js +1 -0
  470. package/lib/tr-grid-column-formatting/es6/ColumnFormatting.d.ts +91 -0
  471. package/lib/tr-grid-column-formatting/es6/ColumnFormatting.js +617 -0
  472. package/lib/tr-grid-column-formatting/es6/index.d.ts +1 -0
  473. package/lib/tr-grid-column-formatting/es6/index.js +1 -0
  474. package/lib/tr-grid-column-grouping/es6/ColumnGrouping.d.ts +110 -0
  475. package/lib/tr-grid-column-grouping/es6/ColumnGrouping.js +2028 -0
  476. package/lib/tr-grid-column-grouping/es6/index.d.ts +1 -0
  477. package/lib/tr-grid-column-grouping/es6/index.js +1 -0
  478. package/lib/tr-grid-column-resizing/es6/ColumnResizing.d.ts +68 -0
  479. package/lib/tr-grid-column-resizing/es6/ColumnResizing.js +1010 -0
  480. package/lib/tr-grid-column-resizing/es6/index.d.ts +1 -0
  481. package/lib/tr-grid-column-resizing/es6/index.js +1 -0
  482. package/lib/tr-grid-column-selection/es6/ColumnSelection.d.ts +77 -0
  483. package/lib/tr-grid-column-selection/es6/ColumnSelection.js +1405 -0
  484. package/lib/tr-grid-column-selection/es6/index.d.ts +1 -0
  485. package/lib/tr-grid-column-selection/es6/index.js +1 -0
  486. package/lib/tr-grid-column-stack/es6/ColumnStack.d.ts +160 -0
  487. package/lib/tr-grid-column-stack/es6/ColumnStack.js +2155 -0
  488. package/lib/tr-grid-column-stack/es6/index.d.ts +1 -0
  489. package/lib/tr-grid-column-stack/es6/index.js +1 -0
  490. package/lib/tr-grid-conditional-coloring/es6/ConditionalColoring.d.ts +100 -0
  491. package/lib/tr-grid-conditional-coloring/es6/ConditionalColoring.js +1513 -0
  492. package/lib/tr-grid-conditional-coloring/es6/index.d.ts +1 -0
  493. package/lib/tr-grid-conditional-coloring/es6/index.js +1 -0
  494. package/lib/tr-grid-content-wrap/es6/ContentWrap.d.ts +43 -0
  495. package/lib/tr-grid-content-wrap/es6/ContentWrap.js +519 -0
  496. package/lib/tr-grid-content-wrap/es6/index.d.ts +1 -0
  497. package/lib/tr-grid-content-wrap/es6/index.js +1 -0
  498. package/lib/tr-grid-contextmenu/es6/ContextMenu.d.ts +83 -0
  499. package/lib/tr-grid-contextmenu/es6/ContextMenu.js +453 -0
  500. package/lib/tr-grid-contextmenu/es6/MenuEventAPI.d.ts +22 -0
  501. package/lib/tr-grid-contextmenu/es6/MenuEventAPI.js +138 -0
  502. package/lib/tr-grid-contextmenu/es6/MenuItem.d.ts +41 -0
  503. package/lib/tr-grid-contextmenu/es6/MenuItem.js +285 -0
  504. package/lib/tr-grid-contextmenu/es6/PopupMenu.d.ts +33 -0
  505. package/lib/tr-grid-contextmenu/es6/PopupMenu.js +303 -0
  506. package/lib/tr-grid-contextmenu/es6/index.d.ts +1 -0
  507. package/lib/tr-grid-contextmenu/es6/index.js +1 -0
  508. package/lib/tr-grid-filter-input/es6/FilterInput.d.ts +64 -0
  509. package/lib/tr-grid-filter-input/es6/FilterInput.js +1027 -0
  510. package/lib/tr-grid-filter-input/es6/index.d.ts +1 -0
  511. package/lib/tr-grid-filter-input/es6/index.js +1 -0
  512. package/lib/tr-grid-heat-map/es6/HeatMap.d.ts +45 -0
  513. package/lib/tr-grid-heat-map/es6/HeatMap.js +401 -0
  514. package/lib/tr-grid-heat-map/es6/index.d.ts +1 -0
  515. package/lib/tr-grid-heat-map/es6/index.js +1 -0
  516. package/lib/tr-grid-in-cell-editing/es6/InCellEditing.d.ts +148 -0
  517. package/lib/tr-grid-in-cell-editing/es6/InCellEditing.js +2671 -0
  518. package/lib/tr-grid-in-cell-editing/es6/index.d.ts +1 -0
  519. package/lib/tr-grid-in-cell-editing/es6/index.js +1 -0
  520. package/lib/tr-grid-pagination/es6/Pagination.d.ts +58 -0
  521. package/lib/tr-grid-pagination/es6/Pagination.js +433 -0
  522. package/lib/tr-grid-pagination/es6/index.d.ts +1 -0
  523. package/lib/tr-grid-pagination/es6/index.js +1 -0
  524. package/lib/tr-grid-percent-bar/es6/PercentBar.d.ts +60 -0
  525. package/lib/tr-grid-percent-bar/es6/PercentBar.js +804 -0
  526. package/lib/tr-grid-percent-bar/es6/index.d.ts +1 -0
  527. package/lib/tr-grid-percent-bar/es6/index.js +1 -0
  528. package/lib/tr-grid-printer/es6/CellWriter.d.ts +50 -0
  529. package/lib/tr-grid-printer/es6/CellWriter.js +234 -0
  530. package/lib/tr-grid-printer/es6/ColumnWriter.d.ts +13 -0
  531. package/lib/tr-grid-printer/es6/ColumnWriter.js +23 -0
  532. package/lib/tr-grid-printer/es6/GridPrinter.d.ts +33 -0
  533. package/lib/tr-grid-printer/es6/GridPrinter.js +794 -0
  534. package/lib/tr-grid-printer/es6/PrintTrait.d.ts +39 -0
  535. package/lib/tr-grid-printer/es6/PrintTrait.js +494 -0
  536. package/lib/tr-grid-printer/es6/SectionWriter.d.ts +57 -0
  537. package/lib/tr-grid-printer/es6/SectionWriter.js +238 -0
  538. package/lib/tr-grid-printer/es6/index.d.ts +1 -0
  539. package/lib/tr-grid-printer/es6/index.js +1 -0
  540. package/lib/tr-grid-range-bar/es6/LEDGuage.d.ts +39 -0
  541. package/lib/tr-grid-range-bar/es6/LEDGuage.js +261 -0
  542. package/lib/tr-grid-range-bar/es6/RangeBar.d.ts +56 -0
  543. package/lib/tr-grid-range-bar/es6/RangeBar.js +514 -0
  544. package/lib/tr-grid-range-bar/es6/index.d.ts +1 -0
  545. package/lib/tr-grid-range-bar/es6/index.js +1 -0
  546. package/lib/tr-grid-row-dragging/es6/RowDragging.d.ts +81 -0
  547. package/lib/tr-grid-row-dragging/es6/RowDragging.js +1479 -0
  548. package/lib/tr-grid-row-dragging/es6/index.d.ts +1 -0
  549. package/lib/tr-grid-row-dragging/es6/index.js +1 -0
  550. package/lib/tr-grid-row-filtering/es6/RowFiltering.d.ts +159 -0
  551. package/lib/tr-grid-row-filtering/es6/RowFiltering.js +2568 -0
  552. package/lib/tr-grid-row-filtering/es6/index.d.ts +1 -0
  553. package/lib/tr-grid-row-filtering/es6/index.js +1 -0
  554. package/lib/tr-grid-row-grouping/es6/RowGrouping.d.ts +123 -0
  555. package/lib/tr-grid-row-grouping/es6/RowGrouping.js +1728 -0
  556. package/lib/tr-grid-row-grouping/es6/index.d.ts +1 -0
  557. package/lib/tr-grid-row-grouping/es6/index.js +1 -0
  558. package/lib/tr-grid-row-selection/es6/RowSelection.d.ts +75 -0
  559. package/lib/tr-grid-row-selection/es6/RowSelection.js +1447 -0
  560. package/lib/tr-grid-row-selection/es6/index.d.ts +1 -0
  561. package/lib/tr-grid-row-selection/es6/index.js +1 -0
  562. package/lib/tr-grid-rowcoloring/es6/RowColoring.d.ts +64 -0
  563. package/lib/tr-grid-rowcoloring/es6/RowColoring.js +615 -0
  564. package/lib/tr-grid-rowcoloring/es6/index.d.ts +1 -0
  565. package/lib/tr-grid-rowcoloring/es6/index.js +1 -0
  566. package/lib/tr-grid-textformatting/es6/TextFormatting.d.ts +72 -0
  567. package/lib/tr-grid-textformatting/es6/TextFormatting.js +543 -0
  568. package/lib/tr-grid-textformatting/es6/index.d.ts +1 -0
  569. package/lib/tr-grid-textformatting/es6/index.js +1 -0
  570. package/lib/tr-grid-titlewrap/es6/TitleWrap.d.ts +27 -0
  571. package/lib/tr-grid-titlewrap/es6/TitleWrap.js +431 -0
  572. package/lib/tr-grid-titlewrap/es6/index.d.ts +1 -0
  573. package/lib/tr-grid-titlewrap/es6/index.js +1 -0
  574. package/lib/tr-grid-util/es6/CellPainter.d.ts +142 -0
  575. package/lib/tr-grid-util/es6/CellPainter.js +1183 -0
  576. package/lib/tr-grid-util/es6/Color.d.ts +40 -0
  577. package/lib/tr-grid-util/es6/Color.js +210 -0
  578. package/lib/tr-grid-util/es6/Conflator.d.ts +34 -0
  579. package/lib/tr-grid-util/es6/Conflator.js +193 -0
  580. package/lib/tr-grid-util/es6/CoralItems.d.ts +10 -0
  581. package/lib/tr-grid-util/es6/CoralItems.js +42 -0
  582. package/lib/tr-grid-util/es6/DateTime.d.ts +57 -0
  583. package/lib/tr-grid-util/es6/DateTime.js +508 -0
  584. package/lib/tr-grid-util/es6/Deferred.d.ts +16 -0
  585. package/lib/tr-grid-util/es6/Deferred.js +108 -0
  586. package/lib/tr-grid-util/es6/Delay.d.ts +20 -0
  587. package/lib/tr-grid-util/es6/Delay.js +96 -0
  588. package/lib/tr-grid-util/es6/Dom.d.ts +32 -0
  589. package/lib/tr-grid-util/es6/Dom.js +350 -0
  590. package/lib/tr-grid-util/es6/DragUI.d.ts +20 -0
  591. package/lib/tr-grid-util/es6/DragUI.js +263 -0
  592. package/lib/tr-grid-util/es6/ElementObserver.d.ts +12 -0
  593. package/lib/tr-grid-util/es6/ElementObserver.js +134 -0
  594. package/lib/tr-grid-util/es6/ElementWrapper.d.ts +23 -0
  595. package/lib/tr-grid-util/es6/ElementWrapper.js +84 -0
  596. package/lib/tr-grid-util/es6/ElfDate.d.ts +26 -0
  597. package/lib/tr-grid-util/es6/ElfDate.js +164 -0
  598. package/lib/tr-grid-util/es6/ElfUtil.d.ts +46 -0
  599. package/lib/tr-grid-util/es6/ElfUtil.js +637 -0
  600. package/lib/tr-grid-util/es6/EventDispatcher.d.ts +26 -0
  601. package/lib/tr-grid-util/es6/EventDispatcher.js +161 -0
  602. package/lib/tr-grid-util/es6/ExpanderIcon.d.ts +24 -0
  603. package/lib/tr-grid-util/es6/ExpanderIcon.js +120 -0
  604. package/lib/tr-grid-util/es6/ExpressionParser.d.ts +10 -0
  605. package/lib/tr-grid-util/es6/ExpressionParser.js +408 -0
  606. package/lib/tr-grid-util/es6/Ext.d.ts +10 -0
  607. package/lib/tr-grid-util/es6/Ext.js +52 -0
  608. package/lib/tr-grid-util/es6/FieldFormatter.d.ts +55 -0
  609. package/lib/tr-grid-util/es6/FieldFormatter.js +440 -0
  610. package/lib/tr-grid-util/es6/FilterBuilder.d.ts +54 -0
  611. package/lib/tr-grid-util/es6/FilterBuilder.js +580 -0
  612. package/lib/tr-grid-util/es6/FilterOperators.d.ts +56 -0
  613. package/lib/tr-grid-util/es6/FilterOperators.js +255 -0
  614. package/lib/tr-grid-util/es6/GridPlugin.d.ts +86 -0
  615. package/lib/tr-grid-util/es6/GridPlugin.js +1055 -0
  616. package/lib/tr-grid-util/es6/GroupDefinitions.d.ts +74 -0
  617. package/lib/tr-grid-util/es6/GroupDefinitions.js +642 -0
  618. package/lib/tr-grid-util/es6/Icon.d.ts +14 -0
  619. package/lib/tr-grid-util/es6/Icon.js +62 -0
  620. package/lib/tr-grid-util/es6/MouseDownTrait.d.ts +42 -0
  621. package/lib/tr-grid-util/es6/MouseDownTrait.js +250 -0
  622. package/lib/tr-grid-util/es6/MultiTableManager.d.ts +40 -0
  623. package/lib/tr-grid-util/es6/MultiTableManager.js +611 -0
  624. package/lib/tr-grid-util/es6/NumberFormatter.d.ts +85 -0
  625. package/lib/tr-grid-util/es6/NumberFormatter.js +528 -0
  626. package/lib/tr-grid-util/es6/PercentBar.d.ts +71 -0
  627. package/lib/tr-grid-util/es6/PercentBar.js +600 -0
  628. package/lib/tr-grid-util/es6/Perf.d.ts +32 -0
  629. package/lib/tr-grid-util/es6/Perf.js +163 -0
  630. package/lib/tr-grid-util/es6/Popup.d.ts +98 -0
  631. package/lib/tr-grid-util/es6/Popup.js +991 -0
  632. package/lib/tr-grid-util/es6/RangeBar.d.ts +33 -0
  633. package/lib/tr-grid-util/es6/RangeBar.js +260 -0
  634. package/lib/tr-grid-util/es6/RequestQueue.d.ts +30 -0
  635. package/lib/tr-grid-util/es6/RequestQueue.js +228 -0
  636. package/lib/tr-grid-util/es6/RowPainter.d.ts +60 -0
  637. package/lib/tr-grid-util/es6/RowPainter.js +448 -0
  638. package/lib/tr-grid-util/es6/SubTable.d.ts +78 -0
  639. package/lib/tr-grid-util/es6/SubTable.js +642 -0
  640. package/lib/tr-grid-util/es6/Table.d.ts +146 -0
  641. package/lib/tr-grid-util/es6/Table.js +832 -0
  642. package/lib/tr-grid-util/es6/TextHighlighter.d.ts +16 -0
  643. package/lib/tr-grid-util/es6/TextHighlighter.js +268 -0
  644. package/lib/tr-grid-util/es6/TickCodes.d.ts +8 -0
  645. package/lib/tr-grid-util/es6/TickCodes.js +33 -0
  646. package/lib/tr-grid-util/es6/Timer.d.ts +16 -0
  647. package/lib/tr-grid-util/es6/Timer.js +49 -0
  648. package/lib/tr-grid-util/es6/TouchProxy.d.ts +46 -0
  649. package/lib/tr-grid-util/es6/TouchProxy.js +212 -0
  650. package/lib/tr-grid-util/es6/Util.d.ts +66 -0
  651. package/lib/tr-grid-util/es6/Util.js +508 -0
  652. package/lib/tr-grid-util/es6/formula/ADCService.d.ts +11 -0
  653. package/lib/tr-grid-util/es6/formula/ADCService.js +72 -0
  654. package/lib/tr-grid-util/es6/formula/ADCSubscription.d.ts +17 -0
  655. package/lib/tr-grid-util/es6/formula/ADCSubscription.js +317 -0
  656. package/lib/tr-grid-util/es6/formula/AdFinService.d.ts +12 -0
  657. package/lib/tr-grid-util/es6/formula/AdFinService.js +61 -0
  658. package/lib/tr-grid-util/es6/formula/AdFinSubscription.d.ts +19 -0
  659. package/lib/tr-grid-util/es6/formula/AdFinSubscription.js +310 -0
  660. package/lib/tr-grid-util/es6/formula/Engine.d.ts +56 -0
  661. package/lib/tr-grid-util/es6/formula/Engine.js +592 -0
  662. package/lib/tr-grid-util/es6/formula/Formula.d.ts +68 -0
  663. package/lib/tr-grid-util/es6/formula/Formula.js +890 -0
  664. package/lib/tr-grid-util/es6/formula/IntervalSubscription.d.ts +16 -0
  665. package/lib/tr-grid-util/es6/formula/IntervalSubscription.js +165 -0
  666. package/lib/tr-grid-util/es6/formula/Realtime.d.ts +18 -0
  667. package/lib/tr-grid-util/es6/formula/Realtime.js +279 -0
  668. package/lib/tr-grid-util/es6/formula/RealtimeService.d.ts +18 -0
  669. package/lib/tr-grid-util/es6/formula/RealtimeService.js +203 -0
  670. package/lib/tr-grid-util/es6/formula/TSIService.d.ts +11 -0
  671. package/lib/tr-grid-util/es6/formula/TSIService.js +51 -0
  672. package/lib/tr-grid-util/es6/formula/TSISubscription.d.ts +18 -0
  673. package/lib/tr-grid-util/es6/formula/TSISubscription.js +1015 -0
  674. package/lib/tr-grid-util/es6/formula/VariableToken.d.ts +30 -0
  675. package/lib/tr-grid-util/es6/formula/VariableToken.js +314 -0
  676. package/lib/tr-grid-util/es6/formula/functions/AdFin.d.ts +9 -0
  677. package/lib/tr-grid-util/es6/formula/functions/AdFin.js +1778 -0
  678. package/lib/tr-grid-util/es6/formula/functions/Excel.d.ts +8 -0
  679. package/lib/tr-grid-util/es6/formula/functions/Excel.js +21 -0
  680. package/lib/tr-grid-util/es6/formula/functions/Info.d.ts +8 -0
  681. package/lib/tr-grid-util/es6/formula/functions/Info.js +192 -0
  682. package/lib/tr-grid-util/es6/formula/functions/Internal.d.ts +8 -0
  683. package/lib/tr-grid-util/es6/formula/functions/Internal.js +90 -0
  684. package/lib/tr-grid-util/es6/formula/functions/Logic.d.ts +12 -0
  685. package/lib/tr-grid-util/es6/formula/functions/Logic.js +176 -0
  686. package/lib/tr-grid-util/es6/formula/functions/Math.d.ts +18 -0
  687. package/lib/tr-grid-util/es6/formula/functions/Math.js +1624 -0
  688. package/lib/tr-grid-util/es6/formula/functions/Statistics.d.ts +18 -0
  689. package/lib/tr-grid-util/es6/formula/functions/Statistics.js +234 -0
  690. package/lib/tr-grid-util/es6/formula/functions/Text.d.ts +10 -0
  691. package/lib/tr-grid-util/es6/formula/functions/Text.js +676 -0
  692. package/lib/tr-grid-util/es6/index.d.ts +65 -0
  693. package/lib/tr-grid-util/es6/index.js +102 -0
  694. package/lib/tr-grid-util/es6/jet/Adc.d.ts +9 -0
  695. package/lib/tr-grid-util/es6/jet/Adc.js +268 -0
  696. package/lib/tr-grid-util/es6/jet/CollectionDict.d.ts +28 -0
  697. package/lib/tr-grid-util/es6/jet/CollectionDict.js +151 -0
  698. package/lib/tr-grid-util/es6/jet/DataGenerator.d.ts +136 -0
  699. package/lib/tr-grid-util/es6/jet/DataGenerator.js +860 -0
  700. package/lib/tr-grid-util/es6/jet/DataSet.d.ts +8 -0
  701. package/lib/tr-grid-util/es6/jet/DataSet.js +392 -0
  702. package/lib/tr-grid-util/es6/jet/MockArchive.d.ts +21 -0
  703. package/lib/tr-grid-util/es6/jet/MockArchive.js +56 -0
  704. package/lib/tr-grid-util/es6/jet/MockJET.d.ts +25 -0
  705. package/lib/tr-grid-util/es6/jet/MockJET.js +71 -0
  706. package/lib/tr-grid-util/es6/jet/MockQuotes.d.ts +37 -0
  707. package/lib/tr-grid-util/es6/jet/MockQuotes.js +199 -0
  708. package/lib/tr-grid-util/es6/jet/MockQuotes2.d.ts +82 -0
  709. package/lib/tr-grid-util/es6/jet/MockQuotes2.js +890 -0
  710. package/lib/tr-grid-util/es6/jet/MockRTK.d.ts +48 -0
  711. package/lib/tr-grid-util/es6/jet/MockRTK.js +82 -0
  712. package/lib/tr-grid-util/es6/jet/MockUtil.d.ts +7 -0
  713. package/lib/tr-grid-util/es6/jet/MockUtil.js +25 -0
  714. package/lib/tr-grid-util/es6/jet/index.d.ts +9 -0
  715. package/lib/tr-grid-util/es6/jet/index.js +18 -0
  716. package/lib/tr-grid-util/es6/jet/mockDataAPI.d.ts +11 -0
  717. package/lib/tr-grid-util/es6/jet/mockDataAPI.js +111 -0
  718. package/lib/tr-grid-util/es6/jsx.d.ts +223 -0
  719. package/lib/tr-grid-util/es6/locale/translation-de.d.ts +7 -0
  720. package/lib/tr-grid-util/es6/locale/translation-de.js +51 -0
  721. package/lib/tr-grid-util/es6/locale/translation-en.d.ts +7 -0
  722. package/lib/tr-grid-util/es6/locale/translation-en.js +51 -0
  723. package/lib/tr-grid-util/es6/locale/translation-ja.d.ts +7 -0
  724. package/lib/tr-grid-util/es6/locale/translation-ja.js +51 -0
  725. package/lib/tr-grid-util/es6/locale/translation-zh-hant.d.ts +7 -0
  726. package/lib/tr-grid-util/es6/locale/translation-zh-hant.js +51 -0
  727. package/lib/tr-grid-util/es6/locale/translation-zh.d.ts +7 -0
  728. package/lib/tr-grid-util/es6/locale/translation-zh.js +51 -0
  729. package/lib/tr-grid-util/es6/locale/translation.d.ts +11 -0
  730. package/lib/tr-grid-util/es6/locale/translation.js +18 -0
  731. package/lib/types/es6/AutoTooltip.d.ts +46 -0
  732. package/lib/types/es6/CellSelection.d.ts +70 -0
  733. package/lib/types/es6/Checkbox.d.ts +82 -0
  734. package/lib/types/es6/ColumnDragging.d.ts +51 -0
  735. package/lib/types/es6/ColumnFitter.d.ts +56 -0
  736. package/lib/types/es6/ColumnFormatting.d.ts +92 -0
  737. package/lib/types/es6/ColumnGrouping.d.ts +107 -0
  738. package/lib/types/es6/ColumnResizing.d.ts +68 -0
  739. package/lib/types/es6/ColumnSelection.d.ts +77 -0
  740. package/lib/types/es6/ColumnStack.d.ts +160 -0
  741. package/lib/types/es6/CompositeGrid/CollapsibleHeaderPlugin.d.ts +11 -0
  742. package/lib/types/es6/CompositeGrid/ColumnSelectionPlugin.d.ts +41 -0
  743. package/lib/types/es6/CompositeGrid/ColumnWidthAdjustingPlugin.d.ts +45 -0
  744. package/lib/types/es6/CompositeGrid/CompositeGrid.d.ts +289 -0
  745. package/lib/types/es6/CompositeGrid/DragAndDropTitlePlugin.d.ts +23 -0
  746. package/lib/types/es6/CompositeGrid/DraggableContentPlugin.d.ts +41 -0
  747. package/lib/types/es6/CompositeGrid/Plugin.d.ts +30 -0
  748. package/lib/types/es6/CompositeGrid/ResizableTitlePlugin.d.ts +32 -0
  749. package/lib/types/es6/CompositeGrid/RowSelectionPlugin.d.ts +44 -0
  750. package/lib/types/es6/CompositeGrid/TextWidthCalculator.d.ts +24 -0
  751. package/lib/types/es6/CompositeGrid/TreeIndentingPlugin.d.ts +46 -0
  752. package/lib/types/es6/CompositeGrid/index.d.ts +9 -0
  753. package/lib/types/es6/ConditionalColoring.d.ts +100 -0
  754. package/lib/types/es6/ContentWrap.d.ts +43 -0
  755. package/lib/types/es6/ContextMenu.d.ts +83 -0
  756. package/lib/types/es6/CoralButtonFormatter.d.ts +20 -0
  757. package/lib/types/es6/CoralCheckboxFormatter.d.ts +12 -0
  758. package/lib/types/es6/CoralComboBoxFormatter.d.ts +23 -0
  759. package/lib/types/es6/CoralIconFormatter.d.ts +21 -0
  760. package/lib/types/es6/CoralInputFormatter.d.ts +12 -0
  761. package/lib/types/es6/CoralRadioButtonFormatter.d.ts +20 -0
  762. package/lib/types/es6/CoralSelectFormatter.d.ts +23 -0
  763. package/lib/types/es6/CoralToggleFormatter.d.ts +12 -0
  764. package/lib/types/es6/Core/data/ColumnStats.d.ts +42 -0
  765. package/lib/types/es6/Core/data/DataCache.d.ts +43 -0
  766. package/lib/types/es6/Core/data/DataTable.d.ts +156 -0
  767. package/lib/types/es6/Core/data/DataView.d.ts +332 -0
  768. package/lib/types/es6/Core/data/Segment.d.ts +91 -0
  769. package/lib/types/es6/Core/data/SegmentCollection.d.ts +84 -0
  770. package/lib/types/es6/Core/data/WrappedView.d.ts +290 -0
  771. package/lib/types/es6/Core/grid/Core.d.ts +455 -0
  772. package/lib/types/es6/Core/grid/ILayoutGrid.d.ts +212 -0
  773. package/lib/types/es6/Core/grid/LayoutGrid.d.ts +37 -0
  774. package/lib/types/es6/Core/grid/VirtualizedLayoutGrid.d.ts +28 -0
  775. package/lib/types/es6/Core/grid/components/Cell.d.ts +52 -0
  776. package/lib/types/es6/Core/grid/components/CellFloatingPanel.d.ts +21 -0
  777. package/lib/types/es6/Core/grid/components/CellSpan.d.ts +18 -0
  778. package/lib/types/es6/Core/grid/components/CellSpans.d.ts +40 -0
  779. package/lib/types/es6/Core/grid/components/Column.d.ts +22 -0
  780. package/lib/types/es6/Core/grid/components/ElementWrapper.d.ts +127 -0
  781. package/lib/types/es6/Core/grid/components/HScrollbar.d.ts +28 -0
  782. package/lib/types/es6/Core/grid/components/Scrollbar.d.ts +63 -0
  783. package/lib/types/es6/Core/grid/components/StretchedCells.d.ts +17 -0
  784. package/lib/types/es6/Core/grid/components/VScrollbar.d.ts +18 -0
  785. package/lib/types/es6/Core/grid/components/VirtualItems.d.ts +12 -0
  786. package/lib/types/es6/Core/grid/event/EventDispatcher.d.ts +16 -0
  787. package/lib/types/es6/Core/grid/event/EventListeners.d.ts +34 -0
  788. package/lib/types/es6/Core/grid/plugins/SortableTitlePlugin.d.ts +155 -0
  789. package/lib/types/es6/Core/grid/util/CellBoundPainter.d.ts +16 -0
  790. package/lib/types/es6/Core/grid/util/Conflator.d.ts +32 -0
  791. package/lib/types/es6/Core/grid/util/Reverter.d.ts +14 -0
  792. package/lib/types/es6/Core/grid/util/SectionSettings.d.ts +79 -0
  793. package/lib/types/es6/Core/grid/util/SelectionList.d.ts +54 -0
  794. package/lib/types/es6/Core/grid/util/TrackLayout.d.ts +92 -0
  795. package/lib/types/es6/Core/grid/util/Virtualizer.d.ts +40 -0
  796. package/lib/types/es6/Core/grid/util/util.d.ts +20 -0
  797. package/lib/types/es6/Core/index.d.ts +79 -0
  798. package/lib/types/es6/Core/tr-grid-theme.d.ts +5 -0
  799. package/lib/types/es6/DuplexEmeraldDateTimePickerFormatter.d.ts +14 -0
  800. package/lib/types/es6/EFButtonFormatter.d.ts +20 -0
  801. package/lib/types/es6/EFCheckboxFormatter.d.ts +12 -0
  802. package/lib/types/es6/EFComboBoxFormatter.d.ts +23 -0
  803. package/lib/types/es6/EFDateTimePickerFormatter.d.ts +13 -0
  804. package/lib/types/es6/EFIconFormatter.d.ts +21 -0
  805. package/lib/types/es6/EFNumberFieldFormatter.d.ts +12 -0
  806. package/lib/types/es6/EFRadioButtonFormatter.d.ts +20 -0
  807. package/lib/types/es6/EFSelectFormatter.d.ts +23 -0
  808. package/lib/types/es6/EFTextFieldFormatter.d.ts +12 -0
  809. package/lib/types/es6/EFToggleFormatter.d.ts +12 -0
  810. package/lib/types/es6/EmeraldDateTimePickerFormatter.d.ts +13 -0
  811. package/lib/types/es6/ExtensionColumnOptions.d.ts +41 -0
  812. package/lib/types/es6/ExtensionOptions.d.ts +58 -0
  813. package/lib/types/es6/Extensions.d.ts +63 -0
  814. package/lib/types/es6/FilterInput.d.ts +64 -0
  815. package/lib/types/es6/FormatterBuilder.d.ts +26 -0
  816. package/lib/types/es6/GridFormatter.d.ts +63 -0
  817. package/lib/types/es6/HeatMap.d.ts +45 -0
  818. package/lib/types/es6/InCellEditing.d.ts +148 -0
  819. package/lib/types/es6/MenuEventAPI.d.ts +22 -0
  820. package/lib/types/es6/MenuItem.d.ts +41 -0
  821. package/lib/types/es6/NumericInputFormatter.d.ts +13 -0
  822. package/lib/types/es6/Pagination.d.ts +58 -0
  823. package/lib/types/es6/PercentBar.d.ts +60 -0
  824. package/lib/types/es6/PercentBarFormatter.d.ts +25 -0
  825. package/lib/types/es6/PopupMenu.d.ts +33 -0
  826. package/lib/types/es6/RangeBar.d.ts +39 -0
  827. package/lib/types/es6/RealtimeGrid/ColumnDefinition.d.ts +176 -0
  828. package/lib/types/es6/RealtimeGrid/DataConnector.d.ts +43 -0
  829. package/lib/types/es6/RealtimeGrid/FieldDefinition.d.ts +40 -0
  830. package/lib/types/es6/RealtimeGrid/Grid.d.ts +413 -0
  831. package/lib/types/es6/RealtimeGrid/PredefinedFormula.d.ts +16 -0
  832. package/lib/types/es6/RealtimeGrid/ReferenceCounter.d.ts +40 -0
  833. package/lib/types/es6/RealtimeGrid/RowDefSorter.d.ts +19 -0
  834. package/lib/types/es6/RealtimeGrid/RowDefinition.d.ts +156 -0
  835. package/lib/types/es6/RealtimeGrid/SnapshotFiller.d.ts +36 -0
  836. package/lib/types/es6/RealtimeGrid/StyleLoader.d.ts +17 -0
  837. package/lib/types/es6/RealtimeGrid/index.d.ts +8 -0
  838. package/lib/types/es6/RowColoring.d.ts +64 -0
  839. package/lib/types/es6/RowDragging.d.ts +81 -0
  840. package/lib/types/es6/RowFiltering.d.ts +159 -0
  841. package/lib/types/es6/RowGrouping.d.ts +123 -0
  842. package/lib/types/es6/RowSegmenting.d.ts +109 -0
  843. package/lib/types/es6/RowSelection.d.ts +75 -0
  844. package/lib/types/es6/SimpleImageFormatter.d.ts +21 -0
  845. package/lib/types/es6/SimpleInputFormatter.d.ts +12 -0
  846. package/lib/types/es6/SimpleLinkFormatter.d.ts +21 -0
  847. package/lib/types/es6/SimpleTickerFormatter.d.ts +23 -0
  848. package/lib/types/es6/SimpleToggleFormatter.d.ts +22 -0
  849. package/lib/types/es6/StatisticsRow.d.ts +68 -0
  850. package/lib/types/es6/TextFormatter.d.ts +12 -0
  851. package/lib/types/es6/TextFormatting.d.ts +72 -0
  852. package/lib/types/es6/TitleWrap.d.ts +27 -0
  853. package/lib/types/es6/Zoom.d.ts +52 -0
  854. package/lib/types/es6/index.d.ts +80 -0
  855. package/lib/types/index.d.ts +1 -0
  856. package/lib/utils/index.d.ts +7 -0
  857. package/lib/utils/index.js +7 -0
  858. package/lib/versions.json +37 -0
  859. package/lib/window-exporter.js +18 -0
  860. package/lib/zoom/es6/Zoom.d.ts +52 -0
  861. package/lib/zoom/es6/Zoom.js +438 -0
  862. package/lib/zoom/es6/index.d.ts +1 -0
  863. package/lib/zoom/es6/index.js +1 -0
  864. package/package.json +69 -0
@@ -0,0 +1,1203 @@
1
+ /* eslint-disable */
2
+ import FieldDefinition from "./FieldDefinition.js";
3
+ import PredefinedFormula from "./PredefinedFormula.js";
4
+ import Formula from "../../tr-grid-util/es6/formula/Formula.js";
5
+ import Engine from "../../tr-grid-util/es6/formula/Engine.js";
6
+ /* eslint-enable */
7
+
8
+ /** @callback ColumnDefinition~SortLogic
9
+ * @param {*} valA Data or RowDefinition object, depending on rowSorting flag, used for comparison
10
+ * @param {*} valB Data or RowDefinition object, depending on rowSorting flag, used for comparison
11
+ * @param {number} order Order code. 1 means ascending order and -1 means descending order
12
+ * @param {Object} ctx Context Object of the current sorting operation
13
+ */
14
+
15
+ /** @typedef {Object} ColumnDefinition~Options
16
+ * @description ColumnDefinition options
17
+ * @property {string=} field="" Field for real-time, ADC, formula sources
18
+ * @property {string=} dataType="" data type eg. string, datetime, number
19
+ * @property {string=} formulaReference=""
20
+ * @property {Array.<string>=} require=null Extra fields required by this column will be requested for real-time data.
21
+ * @property {string=} name="" Label of the column
22
+ * @property {boolean=} notRealTimeField=false If enabled, the `field` will not be requested for real-time data. By enabling this, `rowSorting` will also be disabled, if not specified.
23
+ * @property {(boolean|string|null)=} tooltip=null Show tooltip in header section
24
+ * @property {Function=} headerBinding=null Method for custom header rendering.
25
+ * @property {Function=} headerRenderer=null Alias to `headerBinding`
26
+ * @property {Function=} binding=null Method for custom rendering. It will be executed on each data update and scrolling
27
+ * @property {Function=} renderer=null Alias to `binding`
28
+ * @property {ColumnDefinition~SortLogic=} sortLogic=null
29
+ * @property {ColumnDefinition~SortLogic=} sortingLogic=null Alias to `sortLogic`
30
+ * @property {ColumnDefinition~SortLogic=} sorter=null Alias to `sortLogic`
31
+ * @property {boolean=} rowSorting=null If set to true, RowDefinition object will be used for sorting comparison. If set to false, data from the given `field` will be used for sorting comparison.
32
+ * @property {boolean=} sortable=true If disabled, the column cannot be sorted by user click
33
+ * @property {string=} sort="" Deprecated Alias to `sortOrder`
34
+ * @property {string=} sortOrder="" The column can be sorted in ascending and descending order by specifying the order "a", "d". This option will sort the column when it is initialized or inserted at runtime.
35
+ * @property {Object=} styles=null Key/value pair Object specifying CSS styles
36
+ * @property {number=} width=NaN If specified, column will have a fixed width in pixel
37
+ * @property {number=} minWidth=NaN If specified, column will have a minimum width in pixel
38
+ * @property {boolean=} scalable=true Column scalability forces column to be scaled and filled the grid. `width` property will be used as a weight/ratio
39
+ * @property {string=} className=""
40
+ * @property {string=} class="" Alias to `className`
41
+ * @property {string=} textAlign="" Text alignment for content and column header. Available values are: left|center|right
42
+ * @property {string=} alignment="" Alias to `textAlign`
43
+ * @property {string=} headerAlignment="" Text alignment for column header. This will override `textAlign` option for column header.
44
+ * @property {string=} titleAlignment="" Alias to `headerAlignment`
45
+ * @property {boolean=} hidden=false
46
+ * @property {string=} id A unique identifier for the column
47
+ * @property {boolean=} textSelect=false If enabled, user can select text in this column
48
+ * @property {boolean=} keepModel If enabled, initial column's options will be kept
49
+ * @property {boolean=} stationary=false If enabled, the column order cannot be changed (i.e., this column and any column to its left cannot be moved)
50
+ * @property {boolean=} leftPinned=false If enabled, the column will not be part of the scrollable area and is pinned to the left side
51
+ * @property {boolean=} rightPinned=false If enabled, the column will not be part of the scrollable area and is pinned to the right side
52
+ * @property {Object=} info=null For storing any additional information to the column
53
+ * @property {boolean=} focusable=false If enabled, the column will be used to find focusable element when pressing tab key
54
+ * @property {string=} backgroundColor CSS color value
55
+ */
56
+
57
+ /** mapping of field type to javascript type
58
+ * @type {Object.<string, string>}
59
+ * @private
60
+ */
61
+ const TYPE_MAPPING = {
62
+ STRING: "string",
63
+ BOOLEAN: "boolean",
64
+ NUMBER: "number",
65
+
66
+ DATE: "datetime",
67
+ DATETIME: "datetime",
68
+ TIME: "datetime",
69
+
70
+ ENUMERATED: "string",
71
+ ALPHANUMERIC: "string",
72
+ PERCENT: "string",
73
+
74
+ PRICE: "number",
75
+ DOUBLE: "number",
76
+ MONEY: "number",
77
+
78
+ INTEGER: "number",
79
+ FLOAT: "number",
80
+ SCORE: "number"
81
+ };
82
+
83
+ /** @type {string}
84
+ * @public
85
+ * @const
86
+ */
87
+ const COL_DEF = "COL_DEF";
88
+
89
+ /** @private
90
+ * @param {string} str
91
+ * @return {string}
92
+ */
93
+ let _toAlignment = function(str) {
94
+ if(str) {
95
+ let ch = str.charAt(0).toLowerCase();
96
+ if(ch === "l") {
97
+ return "left";
98
+ }
99
+ if(ch === "r") {
100
+ return "right";
101
+ }
102
+ if(ch === "c") {
103
+ return "center";
104
+ }
105
+ }
106
+ return "";
107
+ };
108
+
109
+ /** @constructor
110
+ * @param {ColumnDefinition~Options=} columnOption
111
+ * @param {*=} hostGrid
112
+ */
113
+ let ColumnDefinition = function(columnOption, hostGrid) {
114
+ this._defaultRenderer = this._defaultRenderer.bind(this);
115
+ this._customRenderer = this._customRenderer.bind(this);
116
+
117
+ this._internalRenderer = this._defaultRenderer;
118
+ this._internalSorter = this._defaultSorter;
119
+
120
+ this._eventArg = {"colDef": this}; // WARNING: Circular reference
121
+ if(hostGrid) {
122
+ this._updateContext("grid", hostGrid);
123
+ this._updateContext("core", hostGrid["getCoreGrid"]()); // TODO: Handle multiple core grids
124
+ }
125
+
126
+ this._classes = [];
127
+ this._requiredFields = [];
128
+ this._children = [];
129
+
130
+ if(columnOption) {
131
+ if(columnOption["parent"]) { // WARNING: This assume time series child, when have a parent
132
+ this._initializeTimeSeriesChild(columnOption);
133
+ } else {
134
+ this.initialize(columnOption);
135
+ }
136
+ }
137
+
138
+ };
139
+ //#region Private Members
140
+ /** This is used as a cache for better performance. The actual field is stored in the core
141
+ * @type {string}
142
+ * @private
143
+ */
144
+ ColumnDefinition.prototype._field = "";
145
+ /** @type {string}
146
+ * @private
147
+ */
148
+ ColumnDefinition.prototype._dataType = "";
149
+ /** @type {string}
150
+ * @private
151
+ */
152
+ ColumnDefinition.prototype._name = "";
153
+ /** @type {boolean}
154
+ * @private
155
+ */
156
+ ColumnDefinition.prototype._defaultName = true;
157
+ /** @type {boolean}
158
+ * @private
159
+ */
160
+ ColumnDefinition.prototype._defaultField = true;
161
+ /** @type {string|null}
162
+ * @private
163
+ */
164
+ ColumnDefinition.prototype._tooltip = null;
165
+ /** @type {!Array.<string>}
166
+ * @private
167
+ */
168
+ ColumnDefinition.prototype._requiredFields;
169
+ /** @type {Function}
170
+ * @private
171
+ */
172
+ ColumnDefinition.prototype._headerRenderer = null;
173
+ /** @type {string}
174
+ * @private
175
+ */
176
+ ColumnDefinition.prototype._headerAlignment = "";
177
+ /** @type {!Function}
178
+ * @private
179
+ */
180
+ ColumnDefinition.prototype._internalRenderer;
181
+ /** @type {Array.<Function>}
182
+ * @private
183
+ */
184
+ ColumnDefinition.prototype._userRenderers = null;
185
+ /** @type {Function}
186
+ * @private
187
+ */
188
+ ColumnDefinition.prototype._activatedRenderer = null;
189
+ /** @type {Object.<string, Function>}
190
+ * @private
191
+ */
192
+ ColumnDefinition.prototype._rendererMap = null;
193
+ /** @type {Function}
194
+ * @private
195
+ */
196
+ ColumnDefinition.prototype._userSorter = null;
197
+ /** @type {boolean}
198
+ * @private
199
+ */
200
+ ColumnDefinition.prototype._sortable = true;
201
+
202
+ /** @type {!Object}
203
+ * @private
204
+ */
205
+ ColumnDefinition.prototype._eventArg;
206
+ /** @type {boolean}
207
+ * @private
208
+ */
209
+ ColumnDefinition.prototype._autoGenerated = false;
210
+
211
+ /** @type {!Array.<string>}
212
+ * @private
213
+ */
214
+ ColumnDefinition.prototype._classes;
215
+
216
+ /** @type {Engine}
217
+ * @private
218
+ */
219
+ ColumnDefinition.prototype._fnEngine = null;
220
+ /** @type {Formula}
221
+ * @private
222
+ */
223
+ ColumnDefinition.prototype._formula = null;
224
+ /** @type {string}
225
+ * @private
226
+ */
227
+ ColumnDefinition.prototype._formulaRef = "";
228
+ /** @type {string}
229
+ * @deprecated
230
+ * @private
231
+ */
232
+ ColumnDefinition.prototype._initialOrder = "";
233
+ /** @type {boolean|null}
234
+ * @private
235
+ */
236
+ ColumnDefinition.prototype._rowSorting = null;
237
+ /** @type {boolean}
238
+ * @private
239
+ */
240
+ ColumnDefinition.prototype._textSelect = false;
241
+
242
+ /** @type {Object}
243
+ * @private
244
+ */
245
+ ColumnDefinition.prototype._userModel = null;
246
+
247
+ /** @type {Grid~ColumnDefinition}
248
+ * @private
249
+ */
250
+ ColumnDefinition.prototype._parent = null;
251
+ /** @type {Array<ColumnDefinition>}
252
+ * @private
253
+ */
254
+ ColumnDefinition.prototype._children = null;
255
+ /** @type {Object}
256
+ * @private
257
+ */
258
+ ColumnDefinition.prototype._info = null;
259
+ /** @type {Object}
260
+ * @private
261
+ */
262
+ ColumnDefinition.prototype._coreColDef = null;
263
+ /** @type {boolean}
264
+ * @private
265
+ */
266
+ ColumnDefinition.prototype._focusable = false;
267
+ //#endregion Private Members
268
+
269
+
270
+ /** @public
271
+ */
272
+ ColumnDefinition.prototype.dispose = function() {
273
+ this._eventArg = {}; // Clear all references
274
+ this._coreColDef = null;
275
+ this._activatedRenderer = this._rendererMap = null;
276
+ this.setRenderer(null); // this._userRenderers are removed
277
+ this.setSorter(null);
278
+ this._userModel = null;
279
+ this._parent = null;
280
+ this._children = null;
281
+ // TODO: Remove any related reference from this._fnEngine
282
+ };
283
+
284
+ /** @private
285
+ * @param {ColumnDefinition~Options|string=} columnOption
286
+ */
287
+ ColumnDefinition.prototype._initializeTimeSeriesChild = function(columnOption) {
288
+ this._autoGenerated = true;
289
+ let parentDef = /** @type{ColumnDefinition} */(columnOption["parent"]);
290
+ this._setParent(parentDef);
291
+ this.initialize(columnOption);
292
+ };
293
+ /** @public
294
+ * @param {ColumnDefinition~Options=} columnOption
295
+ */
296
+ ColumnDefinition.prototype.initialize = function(columnOption) {
297
+ if(!columnOption) {
298
+ return;
299
+ }
300
+
301
+ let i, len, key, val;
302
+ //#region Apply pre-defined option
303
+ let field = columnOption["field"]; // Field could be null or undefined here
304
+ let defaultOption = FieldDefinition.get(field);
305
+ if(defaultOption && defaultOption !== columnOption) { // The column match the default field list
306
+ // WARNING: This changes reference of the user object. Any new property added won't affect anything outside of this method
307
+ let userOption = columnOption;
308
+ columnOption = {}; // Create a new object for cloning process
309
+
310
+ for(key in defaultOption) {
311
+ columnOption[key] = defaultOption[key];
312
+ }
313
+
314
+ for(key in userOption) {
315
+ columnOption[key] = userOption[key]; // User option will override default option with the same key
316
+ }
317
+ }
318
+ //#endregion Apply pre-defined option
319
+
320
+ val = columnOption["formulaEngine"];
321
+ if(val && val["addFormula"]) {
322
+ this._fnEngine = /** @type{Engine} */(val);
323
+ }
324
+ val = columnOption["formulaReference"];
325
+ if(val) {
326
+ this._formulaRef = val + "";
327
+ }
328
+
329
+ val = columnOption["require"] || columnOption["requiredFields"];
330
+ if(val != null) { // Empty string is allowed
331
+ if(typeof val === "string") {
332
+ this._requiredFields = val.split(" ");
333
+ } else if(Array.isArray(val)) {
334
+ this._requiredFields = val.slice();
335
+ }
336
+ }
337
+
338
+ this._setField(field, columnOption); // Perform some field manipulation
339
+
340
+ val = columnOption["name"];
341
+ if(val == null) {
342
+ val = columnOption["title"]; // For backward compatability
343
+ }
344
+ if(val != null) { // Name can be empty string
345
+ this._name = (typeof val === "string") ? val : (val + "");
346
+ this._defaultName = false;
347
+ }
348
+
349
+ val = columnOption["dataType"];
350
+ if(val != null) {
351
+ this._dataType = val;
352
+ }
353
+
354
+ val = columnOption["notRealTimeField"];
355
+ if(val != null) {
356
+ FieldDefinition.setFieldProperty(field, "IsRealtimeField", !val);
357
+ }
358
+
359
+ val = columnOption["tooltip"];
360
+ if(val != null) { // Tooltip can be empty string
361
+ this._tooltip = val;
362
+ }
363
+
364
+ val = columnOption["headerAlignment"] || columnOption["titleAlignment"];
365
+ if(val != null) {
366
+ this._headerAlignment = _toAlignment(val);
367
+ }
368
+
369
+ val = columnOption["headerBinding"] || columnOption["headerRenderer"];
370
+ // eslint-disable-next-line no-undefined
371
+ if(val !== undefined) { // null is allowed for headerBinding
372
+ this._headerRenderer = val;
373
+ }
374
+
375
+ val = columnOption["binding"] || columnOption["renderer"];
376
+ if(!val) {
377
+ val = columnOption["formatter"]; // Migrate from Composite Grid
378
+ }
379
+ // eslint-disable-next-line no-undefined
380
+ if(val !== undefined) { // null is allowed for renderer
381
+ if(val instanceof Array) {
382
+ len = val.length;
383
+ for(i = 0; i < len; ++i) {
384
+ this.addRenderer(/** @type{Function} */(val[i]));
385
+ }
386
+ } else if(val) {
387
+ if(typeof val === "function") {
388
+ this.setRenderer(val);
389
+ } else if(val["binding"]) {
390
+ this.setRenderer(val["binding"]);
391
+ }
392
+ } else {
393
+ this.setRenderer(null);
394
+ }
395
+ }
396
+
397
+ val = columnOption["rowSorting"];
398
+ if(val != null) {
399
+ this._rowSorting = val ? true : false;
400
+ }
401
+
402
+ val = columnOption["sortLogic"] || columnOption["sortingLogic"] || columnOption["sorter"];
403
+ // eslint-disable-next-line no-undefined
404
+ if(val !== undefined) { // null is allowed for sorter
405
+ this.setSorter(/** @type{Function} */(val));
406
+ }
407
+
408
+ // Deprecate
409
+ val = columnOption["sortable"];
410
+ if(val != null) {
411
+ this._sortable = val ? true : false;
412
+ }
413
+
414
+ val = columnOption["focusable"];
415
+ if(val != null) {
416
+ this._focusable = val ? true : false;
417
+ }
418
+
419
+ val = columnOption["className"] || columnOption["class"];
420
+ if(typeof val === "string") {
421
+ this._classes = val.split(" ");
422
+ }
423
+
424
+ // Deprecate
425
+ val = columnOption["sortOrder"] || columnOption["sort"];
426
+ if(val) {
427
+ this._initialOrder = val;
428
+ }
429
+
430
+ val = columnOption["textSelect"];
431
+ if(val) {
432
+ this._textSelect = val;
433
+ }
434
+
435
+ val = columnOption["info"];
436
+ if(val) {
437
+ this._info = val;
438
+ }
439
+
440
+ this._userModel = columnOption; // WARNING: This may not actually the user object
441
+ };
442
+
443
+ /** @public
444
+ * @return {string}
445
+ */
446
+ ColumnDefinition.prototype.getId = function() {
447
+ if(this._coreColDef) {
448
+ return this._coreColDef["id"] || "";
449
+ }
450
+ return "";
451
+ };
452
+ /** @public
453
+ * @return {!Array.<string>}
454
+ */
455
+ ColumnDefinition.prototype.getRequireFields = function() {
456
+ // TODO: Validate the fields
457
+ return this._requiredFields;
458
+ };
459
+ /** @public
460
+ * @function
461
+ * @return {!Array.<string>}
462
+ */
463
+ ColumnDefinition.prototype.getRequiredFields = ColumnDefinition.prototype.getRequireFields;
464
+ /** @public
465
+ * @return {!Function}
466
+ */
467
+ ColumnDefinition.prototype.getRenderer = function() {
468
+ return this._internalRenderer;
469
+ };
470
+ /** @public
471
+ * @return {Function}
472
+ */
473
+ ColumnDefinition.prototype.getHeaderRenderer = function() {
474
+ return this._headerRenderer;
475
+ };
476
+
477
+ /** @public
478
+ * @return {string}
479
+ */
480
+ ColumnDefinition.prototype.getName = function() {
481
+ if(this._defaultName) {
482
+ if(this._defaultField) {
483
+ return "Column " + this.getId();
484
+ }
485
+ return this.getField();
486
+ }
487
+ return this._name;
488
+ };
489
+ /** @public
490
+ * @return {boolean}
491
+ */
492
+ ColumnDefinition.prototype.isDefaultName = function() {
493
+ return this._defaultName;
494
+ };
495
+ /** @public
496
+ * @return {string}
497
+ */
498
+ ColumnDefinition.prototype.getFieldDefinition = function () {
499
+ return FieldDefinition.get(this.getField());
500
+ };
501
+ /** get realtime field data type
502
+ * @public
503
+ * @return {string}
504
+ */
505
+ ColumnDefinition.prototype.getFieldDataType = function () {
506
+ let fieldDef = this.getFieldDefinition();
507
+ if(fieldDef && fieldDef.fieldDataType) {
508
+ return fieldDef.fieldDataType;
509
+ }
510
+ return "";
511
+ };
512
+ /** get data type
513
+ * @public
514
+ * @return {string}
515
+ */
516
+ ColumnDefinition.prototype.getDataType = function () {
517
+ if(this._dataType) return this._dataType;
518
+
519
+ let fieldDataType = this.getFieldDataType();
520
+ if(fieldDataType) {
521
+ return TYPE_MAPPING[fieldDataType.toUpperCase()];
522
+ }
523
+ return "";
524
+ };
525
+ /** set data type
526
+ * @public
527
+ * @param {string} dataType
528
+ */
529
+ ColumnDefinition.prototype.setDataType = function (dataType) {
530
+ let val = TYPE_MAPPING[dataType.toUpperCase()];
531
+ if(val) {
532
+ dataType = val;
533
+ }
534
+ this._dataType = dataType;
535
+ };
536
+ /** get data type
537
+ * @public
538
+ * @param {string} field
539
+ * @return {string}
540
+ */
541
+ ColumnDefinition.getDataType = function(field) {
542
+ let fieldDef = FieldDefinition.get(field);
543
+ if(fieldDef) {
544
+ let fieldDataType = fieldDef.fieldDataType ? fieldDef.fieldDataType.toUpperCase() : null;
545
+ return TYPE_MAPPING[fieldDataType] ? TYPE_MAPPING[fieldDataType] : "";
546
+ }
547
+ return "";
548
+ };
549
+ /** @public
550
+ * @ignore
551
+ * @return {boolean|string|null}
552
+ */
553
+ ColumnDefinition.prototype.getTooltipValue = function() {
554
+ return this._tooltip;
555
+ };
556
+ /** @public
557
+ * @return {string}
558
+ */
559
+ ColumnDefinition.prototype.getTooltip = function() {
560
+ if(this._tooltip != null) {
561
+ if(typeof this._tooltip === "string") {
562
+ return this._tooltip; // There is a custom tooltip
563
+ } else if(!this._tooltip) {
564
+ return "";
565
+ }
566
+ }
567
+
568
+ let name = this.getName();
569
+ if(name) {
570
+ return name;
571
+ }
572
+
573
+ let field = this.getField();
574
+ if(field) {
575
+ return field;
576
+ }
577
+
578
+ return "";
579
+ };
580
+ /** @public
581
+ * @return {string}
582
+ */
583
+ ColumnDefinition.prototype.getField = function() {
584
+ if(this._coreColDef) {
585
+ return this._coreColDef["field"] || "";
586
+ }
587
+ return "";
588
+ };
589
+ /** @public
590
+ * @return {!Array.<string>}
591
+ */
592
+ ColumnDefinition.prototype.getAllFields = function() {
593
+ let field = this.getField();
594
+ if(field) {
595
+ return this._requiredFields.concat(field);
596
+ }
597
+ return this._requiredFields.slice();
598
+ };
599
+ /** @public
600
+ * @return {boolean}
601
+ */
602
+ ColumnDefinition.prototype.isRealTimeField = function() {
603
+ return FieldDefinition.isRealTimeField(this.getField() || this._field);
604
+ };
605
+ /** @public
606
+ * @return {boolean}
607
+ */
608
+ ColumnDefinition.prototype.isTimeSeries = function() {
609
+ return FieldDefinition.isTimeSeries(this.getField());
610
+ };
611
+ /** @public
612
+ * @return {boolean}
613
+ */
614
+ ColumnDefinition.prototype.isTimeSeriesChild = function() {
615
+ return FieldDefinition.isTimeSeriesChild(this.getField());
616
+ };
617
+ /** @public
618
+ * @return {boolean}
619
+ */
620
+ ColumnDefinition.prototype.isFormulaField = function() {
621
+ return this._formula ? true : false;
622
+ };
623
+ /** @public
624
+ * @param {string} field
625
+ * @return {boolean}
626
+ */
627
+ ColumnDefinition.isFormulaField = function(field) {
628
+ return FieldDefinition.isFormula(field);
629
+ };
630
+ /** @public
631
+ * @param {string} field
632
+ * @return {boolean}
633
+ */
634
+ ColumnDefinition.isAdcField = function(field) {
635
+ return FieldDefinition.isAdc(field);
636
+ };
637
+ /** @public
638
+ * @param {string} field
639
+ * @return {boolean}
640
+ */
641
+ ColumnDefinition.isRealTimeField = function(field) {
642
+ return FieldDefinition.isRealTimeField(field);
643
+ };
644
+ /** @public
645
+ * @function
646
+ * @param {Array.<string>} fields To be used by Array.reduce method
647
+ * @param {ColumnDefinition} colDef
648
+ * @return {!Array.<string>}
649
+ */
650
+ ColumnDefinition.getRealTimeFields = function(fields, colDef) {
651
+ if(colDef.isRealTimeField()) {
652
+ fields.push(colDef.getField());
653
+ }
654
+
655
+ // TODO: Exclude any formula references from requesting real-time field
656
+ let reqFields = colDef.getRequiredFields();
657
+ let len = reqFields.length;
658
+ for(let i = 0; i < len; ++i) {
659
+ let field = reqFields[i];
660
+ if(ColumnDefinition.isRealTimeField(field)) {
661
+ fields.push(field);
662
+ }
663
+ }
664
+ return fields;
665
+ };
666
+ /** @public
667
+ * @deprecated
668
+ * @return {boolean}
669
+ */
670
+ ColumnDefinition.prototype.isSortable = function() {
671
+ return this._sortable;
672
+ };
673
+ /** @public
674
+ * @return {boolean}
675
+ */
676
+ ColumnDefinition.prototype.isScalable = function() {
677
+ let core = this._eventArg["core"];
678
+ let grid = this._eventArg["grid"];
679
+ let colIndex = grid.getColumnIndex(this);
680
+ return core.getColumnScalability(colIndex);
681
+ };
682
+ /** Deprecated, this function will be return initial sort order of this column, The current sort state may be different from initial sort state.
683
+ * @public
684
+ * @deprecated
685
+ * @return {string}
686
+ */
687
+ ColumnDefinition.prototype.getInitialSortOrder = function() {
688
+ // WARNING: This state is different from `sortOrder`, it is the state when grid is initialized.
689
+ return this._initialOrder;
690
+ };
691
+ /** @public
692
+ * @return {number}
693
+ */
694
+ ColumnDefinition.prototype.getWidth = function() {
695
+ let core = this._eventArg["core"];
696
+ let grid = this._eventArg["grid"];
697
+ let colIndex = grid.getColumnIndex(this);
698
+ return core.getColumnWidth(colIndex);
699
+ };
700
+ /** @public
701
+ * @return {number}
702
+ */
703
+ ColumnDefinition.prototype.getMinWidth = function() {
704
+ let core = this._eventArg["core"];
705
+ let grid = this._eventArg["grid"];
706
+ let colIndex = grid.getColumnIndex(this);
707
+ return core.getMinimumColumnWidth(colIndex);
708
+ };
709
+ /** @public
710
+ * @return {string}
711
+ */
712
+ ColumnDefinition.prototype.getTextAlign = function() {
713
+ let core = this._eventArg["core"];
714
+ let grid = this._eventArg["grid"];
715
+ let colIndex = grid.getColumnIndex(this);
716
+ return core.getColumnAlignment(colIndex);
717
+ };
718
+ /** @public
719
+ * @return {boolean}
720
+ */
721
+ ColumnDefinition.prototype.isFieldEmpty = function() {
722
+ return !this.getField();
723
+ };
724
+
725
+ /** @public
726
+ * @return {string}
727
+ */
728
+ ColumnDefinition.prototype.getHeaderAlignment = function() {
729
+ return this._headerAlignment || "";
730
+ };
731
+ /** @public
732
+ * @return {!Array.<string>}
733
+ */
734
+ ColumnDefinition.prototype.getClasses = function() {
735
+ return this._classes;
736
+ };
737
+ /** @public
738
+ * @param {Object=} colOptions
739
+ * @return {!Object}
740
+ */
741
+ ColumnDefinition.prototype.getConfigObject = function(colOptions) {
742
+ let obj = colOptions || {};
743
+
744
+ if(this._info){
745
+ obj["info"] = this._info;
746
+ }
747
+
748
+ if(obj["field"] == null) {
749
+ if(!this._defaultField) {
750
+ let field = this.getField();
751
+ if(field) {
752
+ obj["field"] = field;
753
+ }
754
+ }
755
+ }
756
+
757
+ let value = this.getDataType();
758
+ if(value) {
759
+ obj["dataType"] = value;
760
+ }
761
+
762
+ if(this._formulaRef) {
763
+ obj["formulaReference"] = this._formulaRef;
764
+ }
765
+
766
+ if(this._requiredFields && this._requiredFields.length) {
767
+ obj["require"] = this._requiredFields;
768
+ }
769
+
770
+ if(!this._defaultName) {
771
+ obj["name"] = this.getName();
772
+ }
773
+
774
+ // The 'IsRealtimeField' property will only be set if the user sets 'notRealTimeField' in the column options. It will be returned if the user has this option enabled, otherwise it will not be returned
775
+ value = FieldDefinition.getFieldProperty(this.getField(), "IsRealtimeField") === false;
776
+ if(value) {
777
+ obj["notRealTimeField"] = value;
778
+ }
779
+
780
+ if(this._tooltip != null) {
781
+ obj["tooltip"] = this._tooltip;
782
+ }
783
+
784
+ if(this._rowSorting != null) {
785
+ obj["rowSorting"] = this._rowSorting;
786
+ }
787
+
788
+ if(!this._sortable) {
789
+ obj["sortable"] = false;
790
+ }
791
+
792
+ let classes = this._classes;
793
+ if(classes && classes.length > 0) {
794
+ obj["className"] = classes.join(" ");
795
+ }
796
+
797
+ if(this._textSelect) {
798
+ obj["textSelect"] = this._textSelect;
799
+ }
800
+
801
+ if(this._headerAlignment) {
802
+ obj["headerAlignment"] = this._headerAlignment;
803
+ }
804
+
805
+ if(this._autoGenerated) {
806
+ obj["autoGenerated"] = this._autoGenerated;
807
+ }
808
+
809
+ if(this._focusable) {
810
+ obj["focusable"] = true;
811
+ }
812
+
813
+ let core = this._eventArg["core"];
814
+ let grid = this._eventArg["grid"];
815
+ let colIndex = grid.getColumnIndex(this);
816
+
817
+ // The scalable, width and minWidth cannot be shifted into core as getConfigObject is accessible from colDef.
818
+ let scalable = core.getColumnScalability(colIndex);
819
+ let width = core.getColumnCustomLaneSize(colIndex);
820
+
821
+ if (scalable !== true || width !== 1) {
822
+ obj["scalable"] = scalable;
823
+ obj["width"] = width;
824
+ }
825
+
826
+ value = core.getMinimumColumnWidth(colIndex);
827
+ if(value > 0) {
828
+ obj["minWidth"] = value;
829
+ }
830
+
831
+ // If "hidden" property already available from core/extensions, don't override this property
832
+ if(obj["hidden"] == null) {
833
+ if(!core.getColumnVisibility(colIndex, 0)) {
834
+ obj["hidden"] = true;
835
+ }
836
+ }
837
+
838
+ value = core.getColumnAlignment(colIndex);
839
+ if(value !== "default") {
840
+ obj["textAlign"] = value;
841
+ }
842
+
843
+ return obj;
844
+ };
845
+ /** @public
846
+ * @return {boolean}
847
+ */
848
+ ColumnDefinition.prototype.isHidden = function() {
849
+ let core = this._eventArg["core"];
850
+ let grid = this._eventArg["grid"];
851
+ let colIndex = grid.getColumnIndex(this);
852
+ return !core.isColumnVisible(colIndex);
853
+ };
854
+ /** @public
855
+ * @return {boolean}
856
+ */
857
+ ColumnDefinition.prototype.isTextSelect = function () {
858
+ return this._textSelect;
859
+ };
860
+ /** @public
861
+ * @param {boolean=} bool
862
+ */
863
+ ColumnDefinition.prototype.hide = function(bool) {
864
+ let core = this._eventArg["core"];
865
+ let grid = this._eventArg["grid"];
866
+ let colIndex = grid.getColumnIndex(this);
867
+ core.hideColumn(colIndex, bool !== false);
868
+ };
869
+ /** This will clear all previously stored renderers and set a new one.
870
+ * @public
871
+ * @param {Function} func
872
+ */
873
+ ColumnDefinition.prototype.setHeaderRenderer = function(func) {
874
+ this._headerRenderer = func;
875
+ };
876
+ /** This will clear all previously stored renderers and set a new one.
877
+ * @public
878
+ * @param {Function} func
879
+ */
880
+ ColumnDefinition.prototype.setRenderer = function(func) {
881
+ if(typeof func === "function") {
882
+ this._internalRenderer = this._customRenderer;
883
+ if(this._activatedRenderer !== func) {
884
+ if(this._userRenderers) {
885
+ this._userRenderers.length = 0;
886
+ } else {
887
+ this._userRenderers = [];
888
+ }
889
+ this._userRenderers.push(func);
890
+ }
891
+ } else {
892
+ this._internalRenderer = this._defaultRenderer;
893
+ this._userRenderers = null;
894
+ }
895
+ };
896
+
897
+
898
+ /** @public
899
+ * @return {ColumnDefinition}
900
+ */
901
+ ColumnDefinition.prototype.getParent = function() {
902
+ return this._parent;
903
+ };
904
+ /**
905
+ * @private
906
+ * @param {ColumnDefinition} parentDef
907
+ * @return {boolean}=true if have any change
908
+ */
909
+ ColumnDefinition.prototype._setParent = function(parentDef) {
910
+ if(this._parent === parentDef || parentDef === this) { // The same parent is given
911
+ return false;
912
+ }
913
+
914
+ if(parentDef) {
915
+ this._parent = parentDef;
916
+ this._parent._addChild(this); // sync child and parent
917
+ }
918
+ return false;
919
+ };
920
+ /**
921
+ * @public
922
+ * @return {Array.<ColumnDefinition>}
923
+ */
924
+ ColumnDefinition.prototype.getChildren = function() {
925
+ return this._children;
926
+ };
927
+ /**
928
+ * @private
929
+ * @param {ColumnDefinition} colDef Child column definition
930
+ */
931
+ ColumnDefinition.prototype._addChild = function(colDef) {
932
+ if(this === colDef || this._children.indexOf(colDef) > -1) {
933
+ return;
934
+ }
935
+ this._children.push(colDef);
936
+ };
937
+
938
+ /** Add more renderer to the existing list
939
+ * @public
940
+ * @param {Function} func
941
+ */
942
+ ColumnDefinition.prototype.addRenderer = function(func) {
943
+ if(func) {
944
+ if(this._userRenderers) {
945
+ this._userRenderers.push(func);
946
+ } else {
947
+ this.setRenderer(func);
948
+ }
949
+ }
950
+ };
951
+ /** Make the given renderer the first priority, overriding any existing renderer. The method still maintain existing renderers for restoring back to original state.
952
+ * @public
953
+ * @param {string=} id ID for renderer mapping. If not specified the default renderer will be picked up
954
+ * @param {Function=} func If not specified the renderer which corresponded id from mapping will be picked up. If false is given, the corresponding id will be cleared.
955
+ * @return {boolean} Current activation state after the call
956
+ */
957
+ ColumnDefinition.prototype.activateRenderer = function(id, func) {
958
+ let renderer = null;
959
+ if (id != null) {
960
+ let rendererMap = this._rendererMap;
961
+ if (!rendererMap) {
962
+ rendererMap = this._rendererMap = {};
963
+ }
964
+
965
+ if (typeof func === "function") {
966
+ renderer = rendererMap[id] = func;
967
+ } else if(func == null) { // Use cached method if null or undefined value is given
968
+ renderer = rendererMap[id];
969
+ } else if(!func) { // Empty string, zero, or false value
970
+ renderer = rendererMap[id] = null;
971
+ }
972
+ }
973
+
974
+ this._activatedRenderer = renderer || null;
975
+ if(!renderer) { // Restore back existing user renderers if there is no activated renderer
976
+ renderer = this._userRenderers ? this._userRenderers[0] : null;
977
+ }
978
+ this.setRenderer(renderer);
979
+ return this._activatedRenderer ? true : false;
980
+ };
981
+
982
+ /** @public
983
+ * @return {Function}
984
+ */
985
+ ColumnDefinition.prototype.getSorter = function() {
986
+ return this._userSorter;
987
+ };
988
+ /** @public
989
+ * @param {ColumnDefinition~SortLogic=} func
990
+ */
991
+ ColumnDefinition.prototype.setSorter = function(func) {
992
+ this._userSorter = (typeof func === "function") ? func : null;
993
+ };
994
+ /** @public
995
+ * @return {boolean}
996
+ */
997
+ ColumnDefinition.prototype.isRowSorting = function() {
998
+ if(this._rowSorting == null) {
999
+ return !FieldDefinition.getFieldProperty(this.getField(), "IsRealtimeField");
1000
+ }
1001
+ return this._rowSorting ? true : false;
1002
+ };
1003
+
1004
+ /** @public
1005
+ * @return {boolean}
1006
+ */
1007
+ ColumnDefinition.prototype.isAutoGenerated = function() {
1008
+ return this._autoGenerated;
1009
+ };
1010
+
1011
+ /** To allow user change column name in run-time (language change or localization)
1012
+ * @public
1013
+ * @param {string} str
1014
+ */
1015
+ ColumnDefinition.prototype.setName = function(str) {
1016
+ this._name = str;
1017
+ this._defaultName = false;
1018
+ };
1019
+
1020
+ /** @private
1021
+ * @param {string|null=} field
1022
+ * @param {ColumnDefinition~Options=} columnOption
1023
+ */
1024
+ ColumnDefinition.prototype._setField = function(field, columnOption) {
1025
+ this._defaultField = (field == null); // undefined or null
1026
+ if(!field) {
1027
+ field = "";
1028
+ }
1029
+ field = field.trim();
1030
+
1031
+ let formulaStr = columnOption ? columnOption["formula"] : "";
1032
+ if(this._fnEngine) {
1033
+ let uppercasedF = field.toUpperCase(); // For comparison only
1034
+ let predefinedF = formulaStr || PredefinedFormula.get(uppercasedF);
1035
+ if(predefinedF || ColumnDefinition.isFormulaField(field)) {
1036
+ field = Formula.toUpperCase(field);
1037
+ this._formula = this._fnEngine.addFormula(predefinedF || field); // Always a success
1038
+ if(predefinedF) {
1039
+ this._formula.setAlias(field); // This field is used for retrieving data for dependent fields
1040
+ this._fnEngine.addReference(this._formula, field); // Add reference name for dependencies calculation
1041
+ }
1042
+
1043
+ this._retrieveNestedFields(this._formula.getFieldNames());
1044
+ }
1045
+ if(this._formulaRef) { // Allow user input to be used as a shorthand of the field
1046
+ // WARNING: Formula Reference must be unique, or else it will be changed
1047
+ this._formulaRef = this._fnEngine.addReference(this._formula || field, this._formulaRef);
1048
+ }
1049
+ }
1050
+
1051
+ this._field = field; // WARNING: This could be out of sync with core. It is used as a cache for better performance
1052
+
1053
+ // We need to cache time series in field definition for improve performance of checking methond
1054
+ FieldDefinition.setFieldProperty(field, "timeSeries", FieldDefinition.isTimeSeries(field) ? true : false);
1055
+
1056
+ let parentColDef = columnOption["parent"];
1057
+ if(columnOption && parentColDef) {
1058
+ FieldDefinition.setFieldProperty(field, "timeSeriesParent", parentColDef.getField());
1059
+ }
1060
+
1061
+ this._updateContext("field", field);
1062
+ if(this.isRealTimeField()) { // Only realtime field will have a formatted field
1063
+ this._updateContext("formattedField", field + "_FORMATTED");
1064
+ }
1065
+ };
1066
+ /** @private
1067
+ * @param {Array.<string>} fields
1068
+ */
1069
+ ColumnDefinition.prototype._retrieveNestedFields = function(fields) {
1070
+ if(!fields) {
1071
+ return;
1072
+ }
1073
+ for(let i = fields.length; --i >= 0;) {
1074
+ let field = fields[i];
1075
+ let uppercasedF = field.toUpperCase();
1076
+ let predefinedF = PredefinedFormula.get(uppercasedF);
1077
+ if(predefinedF) { // Predefined formula
1078
+ let f = this._fnEngine.getFormula(field); // Get formula by reference name
1079
+ if(f) {
1080
+ f.addFormulaCount(); // Add reference count
1081
+ } else {
1082
+ f = this._fnEngine.addFormula(predefinedF);
1083
+ f.setAlias(field); // This field is used for retrieving data for dependent fields
1084
+ this._fnEngine.addReference(f, field); // Add reference name for dependencies calculation
1085
+ }
1086
+ this._retrieveNestedFields(f.getFieldNames()); // Recursion
1087
+ } else { // Any field that is not a predefined formula will be sent for requesting real-time data
1088
+ this._requiredFields.push(field); // TODO: Exclude column reference
1089
+ }
1090
+ }
1091
+ };
1092
+ /** @private
1093
+ * @param {Object} e
1094
+ */
1095
+ ColumnDefinition.prototype._defaultRenderer = function(e) {
1096
+ let rowDef = /** @type{RowDefinition} */(e["dataValue"]);
1097
+ e["cell"].setContent(rowDef ? rowDef.getData(this._field) : null);
1098
+ };
1099
+ /** @private
1100
+ * @param {Object} e
1101
+ */
1102
+ ColumnDefinition.prototype._customRenderer = function(e) {
1103
+ let rowDef = /** @type{RowDefinition} */(e["dataValue"]);
1104
+
1105
+ let arg = this._eventArg; // Reuse the same object
1106
+ if(rowDef) {
1107
+ let rowData = rowDef.getRowData();
1108
+ arg["rowDef"] = rowDef;
1109
+ arg["rowData"] = rowData;
1110
+ arg["rowIndex"] = e["rowIndex"];
1111
+ if(rowData) {
1112
+ arg["data"] = rowData[this._field];
1113
+ } else {
1114
+ arg["data"] = null;
1115
+ }
1116
+ } else {
1117
+ arg["data"] = null;
1118
+ }
1119
+ arg["colIndex"] = e["colIndex"];
1120
+ arg["cell"] = e["cell"];
1121
+ arg["section"] = e["section"];
1122
+
1123
+ if(this._activatedRenderer) {
1124
+ this._activatedRenderer(arg);
1125
+ } else {
1126
+ let urs = this._userRenderers;
1127
+ let len = urs.length;
1128
+ for(let i = 0; i < len; ++i) {
1129
+ urs[i](arg);
1130
+ }
1131
+ }
1132
+ };
1133
+
1134
+ /** @private
1135
+ * @param {string} propName
1136
+ * @param {*} val
1137
+ */
1138
+ ColumnDefinition.prototype._updateContext = function(propName, val) {
1139
+ this._eventArg[propName] = val;
1140
+ };
1141
+
1142
+ /** @public
1143
+ * @return {Object}
1144
+ */
1145
+ ColumnDefinition.prototype.getUserModel = function() {
1146
+ return this._userModel;
1147
+ };
1148
+
1149
+ /** @public
1150
+ */
1151
+ ColumnDefinition.prototype.clearUserModel = function() {
1152
+ this._userModel = null;
1153
+ };
1154
+
1155
+ /** @public
1156
+ * @param {Object} obj
1157
+ */
1158
+ ColumnDefinition.prototype.setColumnInfo = function(obj) {
1159
+ this._info = obj;
1160
+ };
1161
+
1162
+ /** @public
1163
+ * @return {Object}
1164
+ */
1165
+ ColumnDefinition.prototype.getColumnInfo = function() {
1166
+ return this._info;
1167
+ };
1168
+
1169
+ /** @public
1170
+ * @ignore
1171
+ * @param {Object} obj
1172
+ */
1173
+ ColumnDefinition.prototype._setCoreColumnDef = function(obj) {
1174
+ this._coreColDef = obj || null;
1175
+ };
1176
+
1177
+ /** @public
1178
+ * @return {boolean}
1179
+ */
1180
+ ColumnDefinition.prototype.isFocusable = function() {
1181
+ return this._focusable;
1182
+ };
1183
+ /** @public
1184
+ * @return {string}
1185
+ */
1186
+ ColumnDefinition.prototype.getBackgroundColor = function() {
1187
+ let core = this._eventArg["core"];
1188
+ let grid = this._eventArg["grid"];
1189
+ let colIndex = grid.getColumnIndex(this);
1190
+ return core.getColumnBackgroundColor(colIndex);
1191
+ };
1192
+ /** @public
1193
+ * @param {string} color
1194
+ */
1195
+ ColumnDefinition.prototype.setBackgroundColor = function(color) {
1196
+ let core = this._eventArg["core"];
1197
+ let grid = this._eventArg["grid"];
1198
+ let colIndex = grid.getColumnIndex(this);
1199
+ core.setColumnBackgroundColor(colIndex, color);
1200
+ };
1201
+
1202
+ export {ColumnDefinition, COL_DEF};
1203
+ export default ColumnDefinition;