@talxis/base-controls 1.2509.1-alpha.6 → 1.2509.2

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 (469) hide show
  1. package/LICENSE.md +49 -0
  2. package/README.md +3 -40
  3. package/dist/components/DatasetControl/DatasetControl.js +55 -59
  4. package/dist/components/DatasetControl/DatasetControl.js.map +1 -1
  5. package/dist/components/DatasetControl/Paging/DatasetPaging.d.ts +3 -0
  6. package/dist/components/DatasetControl/Paging/DatasetPaging.js +69 -0
  7. package/dist/components/DatasetControl/Paging/DatasetPaging.js.map +1 -0
  8. package/dist/components/DatasetControl/Paging/Paging.d.ts +26 -0
  9. package/dist/components/DatasetControl/Paging/Paging.js +80 -0
  10. package/dist/components/DatasetControl/Paging/Paging.js.map +1 -0
  11. package/dist/components/DatasetControl/Paging/index.d.ts +3 -0
  12. package/dist/components/DatasetControl/Paging/index.js +3 -0
  13. package/dist/components/DatasetControl/Paging/index.js.map +1 -0
  14. package/dist/components/DatasetControl/Paging/interfaces.d.ts +16 -0
  15. package/dist/components/DatasetControl/Paging/styles.d.ts +35 -0
  16. package/dist/components/DatasetControl/Paging/styles.js +41 -0
  17. package/dist/components/DatasetControl/Paging/styles.js.map +1 -0
  18. package/dist/components/DatasetControl/Paging/translations.d.ts +38 -0
  19. package/dist/components/DatasetControl/Paging/translations.js +14 -0
  20. package/dist/components/DatasetControl/Paging/translations.js.map +1 -0
  21. package/dist/components/DatasetControl/QuickFind/QuickFind.d.ts +12 -4
  22. package/dist/components/DatasetControl/QuickFind/QuickFind.js +32 -36
  23. package/dist/components/DatasetControl/QuickFind/QuickFind.js.map +1 -1
  24. package/dist/components/DatasetControl/QuickFind/styles.d.ts +1 -1
  25. package/dist/components/DatasetControl/QuickFind/styles.js +2 -2
  26. package/dist/components/DatasetControl/QuickFind/styles.js.map +1 -1
  27. package/dist/components/DatasetControl/index.d.ts +1 -0
  28. package/dist/components/DatasetControl/index.js +2 -0
  29. package/dist/components/DatasetControl/index.js.map +1 -1
  30. package/dist/components/DatasetControl/interfaces.d.ts +20 -54
  31. package/dist/components/DatasetControl/styles.d.ts +11 -4
  32. package/dist/components/DatasetControl/styles.js +11 -5
  33. package/dist/components/DatasetControl/styles.js.map +1 -1
  34. package/dist/components/DatasetControl/translations.d.ts +0 -44
  35. package/dist/components/DatasetControl/translations.js +1 -15
  36. package/dist/components/DatasetControl/translations.js.map +1 -1
  37. package/dist/components/Grid/Grid.d.ts +3 -0
  38. package/dist/components/Grid/Grid.js +37 -0
  39. package/dist/components/Grid/Grid.js.map +1 -0
  40. package/dist/components/Grid/GridContext.d.ts +3 -0
  41. package/dist/components/Grid/GridContext.js.map +1 -0
  42. package/dist/components/Grid/aggregation/Aggregation.d.ts +18 -0
  43. package/dist/components/Grid/aggregation/Aggregation.js +129 -0
  44. package/dist/components/Grid/aggregation/Aggregation.js.map +1 -0
  45. package/dist/components/Grid/{grid/Grid.d.ts → core/components/AgGrid/AgGrid.d.ts} +2 -2
  46. package/dist/components/Grid/core/components/AgGrid/AgGrid.js +203 -0
  47. package/dist/components/Grid/core/components/AgGrid/AgGrid.js.map +1 -0
  48. package/dist/components/Grid/core/components/AgGrid/components/EmptyRecordsOverlay/EmptyRecords.js +12 -0
  49. package/dist/components/Grid/core/components/AgGrid/components/EmptyRecordsOverlay/EmptyRecords.js.map +1 -0
  50. package/dist/components/Grid/{overlays/empty-records → core/components/AgGrid/components/EmptyRecordsOverlay}/styles.d.ts +1 -1
  51. package/dist/components/Grid/{overlays/empty-records → core/components/AgGrid/components/EmptyRecordsOverlay}/styles.js +1 -1
  52. package/dist/components/Grid/core/components/AgGrid/components/EmptyRecordsOverlay/styles.js.map +1 -0
  53. package/dist/components/Grid/core/components/AgGrid/components/LoadingOverlay/LoadingOverlay.js.map +1 -0
  54. package/dist/components/Grid/{grid/ag-grid/AgGridContext.d.ts → core/components/AgGrid/context.d.ts} +2 -2
  55. package/dist/components/Grid/{grid/ag-grid/AgGridContext.js → core/components/AgGrid/context.js} +1 -1
  56. package/dist/components/Grid/core/components/AgGrid/context.js.map +1 -0
  57. package/dist/components/Grid/core/components/AgGrid/model/AgGrid.d.ts +52 -0
  58. package/dist/components/Grid/core/components/AgGrid/model/AgGrid.js +343 -0
  59. package/dist/components/Grid/core/components/AgGrid/model/AgGrid.js.map +1 -0
  60. package/dist/components/Grid/{grid/ValueComparator.d.ts → core/components/AgGrid/model/Comparator.d.ts} +1 -1
  61. package/dist/components/Grid/{grid/ValueComparator.js → core/components/AgGrid/model/Comparator.js} +1 -7
  62. package/dist/components/Grid/core/components/AgGrid/model/Comparator.js.map +1 -0
  63. package/dist/components/Grid/{grid → core/components/AgGrid}/styles.d.ts +4 -24
  64. package/dist/components/Grid/{grid → core/components/AgGrid}/styles.js +6 -37
  65. package/dist/components/Grid/core/components/AgGrid/styles.js.map +1 -0
  66. package/dist/components/Grid/{cells/cell → core/components/Cell}/Cell.d.ts +3 -3
  67. package/dist/components/Grid/core/components/Cell/Cell.js +158 -0
  68. package/dist/components/Grid/core/components/Cell/Cell.js.map +1 -0
  69. package/dist/components/Grid/{cells/cell/content → core/components/Cell/CellContent}/CellContent.d.ts +2 -2
  70. package/dist/components/Grid/{cells/cell/content → core/components/Cell/CellContent}/CellContent.js +31 -40
  71. package/dist/components/Grid/core/components/Cell/CellContent/CellContent.js.map +1 -0
  72. package/dist/components/Grid/core/components/Cell/CellContent/styles.js.map +1 -0
  73. package/dist/components/Grid/{cells/cell/notifications → core/components/Cell/Notifications}/Notifications.d.ts +1 -1
  74. package/dist/components/Grid/{cells/cell/notifications → core/components/Cell/Notifications}/Notifications.js +5 -5
  75. package/dist/components/Grid/core/components/Cell/Notifications/Notifications.js.map +1 -0
  76. package/dist/components/Grid/{cells/cell/notifications → core/components/Cell/Notifications}/styles.js +1 -1
  77. package/dist/components/Grid/core/components/Cell/Notifications/styles.js.map +1 -0
  78. package/dist/components/Grid/{cells/cell → core/components/Cell}/styles.d.ts +3 -34
  79. package/dist/components/Grid/core/components/Cell/styles.js +59 -0
  80. package/dist/components/Grid/core/components/Cell/styles.js.map +1 -0
  81. package/dist/components/Grid/{column-headers/column-header → core/components/ColumnHeader}/ColumnHeader.d.ts +1 -1
  82. package/dist/components/Grid/core/components/ColumnHeader/ColumnHeader.js +61 -0
  83. package/dist/components/Grid/core/components/ColumnHeader/ColumnHeader.js.map +1 -0
  84. package/dist/components/Grid/core/components/ColumnHeader/components/GlobalCheckbox/GlobalCheckbox.d.ts +2 -0
  85. package/dist/components/Grid/core/components/ColumnHeader/components/GlobalCheckbox/GlobalCheckbox.js +50 -0
  86. package/dist/components/Grid/core/components/ColumnHeader/components/GlobalCheckbox/GlobalCheckbox.js.map +1 -0
  87. package/dist/components/Grid/core/components/ColumnHeader/components/GlobalCheckbox/styles.js.map +1 -0
  88. package/dist/components/Grid/core/components/ColumnHeader/styles.d.ts +42 -0
  89. package/dist/components/Grid/core/components/ColumnHeader/styles.js +48 -0
  90. package/dist/components/Grid/core/components/ColumnHeader/styles.js.map +1 -0
  91. package/dist/components/Grid/core/components/Dialog/Constants.d.ts +2 -0
  92. package/dist/components/Grid/core/components/Dialog/Constants.js +9 -0
  93. package/dist/components/Grid/core/components/Dialog/Constants.js.map +1 -0
  94. package/dist/components/Grid/core/components/Dialog/Styles.d.ts +2 -0
  95. package/dist/components/Grid/core/components/Dialog/Styles.js +61 -0
  96. package/dist/components/Grid/core/components/Dialog/Styles.js.map +1 -0
  97. package/dist/components/Grid/core/components/Dialog/index.d.ts +4 -0
  98. package/dist/components/Grid/core/components/Dialog/index.js +16 -0
  99. package/dist/components/Grid/core/components/Dialog/index.js.map +1 -0
  100. package/dist/components/Grid/core/components/Dialog/interfaces/index.d.ts +6 -0
  101. package/dist/components/Grid/core/components/Dialog/interfaces/index.js +2 -0
  102. package/dist/components/Grid/core/components/Dialog/interfaces/index.js.map +1 -0
  103. package/dist/components/Grid/core/components/Save/Save.d.ts +2 -0
  104. package/dist/components/Grid/core/components/Save/Save.js +59 -0
  105. package/dist/components/Grid/core/components/Save/Save.js.map +1 -0
  106. package/dist/components/Grid/core/components/Save/components/ChangeEditor/ChangeEditor.d.ts +7 -0
  107. package/dist/components/Grid/core/components/Save/components/ChangeEditor/ChangeEditor.js +73 -0
  108. package/dist/components/Grid/core/components/Save/components/ChangeEditor/ChangeEditor.js.map +1 -0
  109. package/dist/components/Grid/core/components/Save/components/ChangeEditor/components/ChangeGrid/ChangeGrid.d.ts +11 -0
  110. package/dist/components/Grid/core/components/Save/components/ChangeEditor/components/ChangeGrid/ChangeGrid.js +231 -0
  111. package/dist/components/Grid/core/components/Save/components/ChangeEditor/components/ChangeGrid/ChangeGrid.js.map +1 -0
  112. package/dist/components/Grid/core/components/Save/components/ChangeEditor/components/ChangeGrid/styles.d.ts +39 -0
  113. package/dist/components/Grid/core/components/Save/components/ChangeEditor/components/ChangeGrid/styles.js +45 -0
  114. package/dist/components/Grid/core/components/Save/components/ChangeEditor/components/ChangeGrid/styles.js.map +1 -0
  115. package/dist/components/Grid/core/components/Save/components/ChangeEditor/styles.d.ts +31 -0
  116. package/dist/components/Grid/core/components/Save/components/ChangeEditor/styles.js +37 -0
  117. package/dist/components/Grid/core/components/Save/components/ChangeEditor/styles.js.map +1 -0
  118. package/dist/components/Grid/core/components/Save/styles.d.ts +35 -0
  119. package/dist/components/Grid/core/components/Save/styles.js +42 -0
  120. package/dist/components/Grid/core/components/Save/styles.js.map +1 -0
  121. package/dist/components/Grid/core/controllers/useGridController.d.ts +7 -0
  122. package/dist/components/Grid/core/controllers/useGridController.js +29 -0
  123. package/dist/components/Grid/core/controllers/useGridController.js.map +1 -0
  124. package/dist/components/Grid/core/enums/ConditionOperator.d.ts +48 -0
  125. package/dist/components/Grid/core/enums/ConditionOperator.js +52 -0
  126. package/dist/components/Grid/core/enums/ConditionOperator.js.map +1 -0
  127. package/dist/components/Grid/core/enums/DataType.d.ts +25 -0
  128. package/dist/components/Grid/core/enums/DataType.js +30 -0
  129. package/dist/components/Grid/core/enums/DataType.js.map +1 -0
  130. package/dist/components/Grid/core/hooks/useGridInstance.d.ts +2 -0
  131. package/dist/components/Grid/{grid → core/hooks}/useGridInstance.js +2 -2
  132. package/dist/components/Grid/core/hooks/useGridInstance.js.map +1 -0
  133. package/dist/components/Grid/core/hooks/useRefreshCallback.d.ts +2 -0
  134. package/dist/components/Grid/core/hooks/useRefreshCallback.js +20 -0
  135. package/dist/components/Grid/core/hooks/useRefreshCallback.js.map +1 -0
  136. package/dist/components/Grid/core/interfaces/IGridColumn.d.ts +13 -0
  137. package/dist/components/Grid/core/interfaces/IGridContext.d.ts +4 -0
  138. package/dist/components/Grid/core/model/Grid.d.ts +83 -0
  139. package/dist/components/Grid/core/model/Grid.js +528 -0
  140. package/dist/components/Grid/core/model/Grid.js.map +1 -0
  141. package/dist/components/Grid/core/model/GridDependency.d.ts +13 -0
  142. package/dist/components/Grid/core/model/GridDependency.js +28 -0
  143. package/dist/components/Grid/core/model/GridDependency.js.map +1 -0
  144. package/dist/components/Grid/core/services/KeyListener.d.ts +12 -0
  145. package/dist/components/Grid/core/services/KeyListener.js +31 -0
  146. package/dist/components/Grid/core/services/KeyListener.js.map +1 -0
  147. package/dist/components/Grid/{column-headers/column-header → filtering/components/FilterCallout}/FilterCallout.d.ts +1 -1
  148. package/dist/components/Grid/filtering/components/FilterCallout/FilterCallout.js +59 -0
  149. package/dist/components/Grid/filtering/components/FilterCallout/FilterCallout.js.map +1 -0
  150. package/dist/components/Grid/filtering/components/FilterCallout/components/ConditionOperator/ConditionOperator.d.ts +7 -0
  151. package/dist/components/Grid/filtering/components/FilterCallout/components/ConditionOperator/ConditionOperator.js +56 -0
  152. package/dist/components/Grid/filtering/components/FilterCallout/components/ConditionOperator/ConditionOperator.js.map +1 -0
  153. package/dist/components/Grid/filtering/components/FilterCallout/components/ConditionValue/ConditionValue.d.ts +7 -0
  154. package/dist/components/Grid/filtering/components/FilterCallout/components/ConditionValue/ConditionValue.js +73 -0
  155. package/dist/components/Grid/filtering/components/FilterCallout/components/ConditionValue/ConditionValue.js.map +1 -0
  156. package/dist/components/Grid/filtering/components/FilterCallout/components/ConditionValue/ConditionValueBetween.d.ts +7 -0
  157. package/dist/components/Grid/filtering/components/FilterCallout/components/ConditionValue/ConditionValueBetween.js +90 -0
  158. package/dist/components/Grid/filtering/components/FilterCallout/components/ConditionValue/ConditionValueBetween.js.map +1 -0
  159. package/dist/components/Grid/filtering/components/FilterCallout/components/ConditionValue/model/ConditionComponentValue.d.ts +48 -0
  160. package/dist/components/Grid/filtering/components/FilterCallout/components/ConditionValue/model/ConditionComponentValue.js +146 -0
  161. package/dist/components/Grid/filtering/components/FilterCallout/components/ConditionValue/model/ConditionComponentValue.js.map +1 -0
  162. package/dist/components/Grid/filtering/components/FilterCallout/components/LegacyControlRendering/Component.d.ts +11 -0
  163. package/dist/components/Grid/filtering/components/FilterCallout/components/LegacyControlRendering/Component.js +53 -0
  164. package/dist/components/Grid/filtering/components/FilterCallout/components/LegacyControlRendering/Component.js.map +1 -0
  165. package/dist/components/Grid/filtering/components/FilterCallout/components/LegacyControlRendering/controller/useComponentController.d.ts +9 -0
  166. package/dist/components/Grid/filtering/components/FilterCallout/components/LegacyControlRendering/controller/useComponentController.js +31 -0
  167. package/dist/components/Grid/filtering/components/FilterCallout/components/LegacyControlRendering/controller/useComponentController.js.map +1 -0
  168. package/dist/components/Grid/filtering/components/FilterCallout/components/LegacyControlRendering/model/Component.d.ts +10 -0
  169. package/dist/components/Grid/filtering/components/FilterCallout/components/LegacyControlRendering/model/Component.js +294 -0
  170. package/dist/components/Grid/filtering/components/FilterCallout/components/LegacyControlRendering/model/Component.js.map +1 -0
  171. package/dist/components/Grid/filtering/components/FilterCallout/styles.d.ts +35 -0
  172. package/dist/components/Grid/{column-headers/column-header → filtering/components/FilterCallout}/styles.js +11 -20
  173. package/dist/components/Grid/filtering/components/FilterCallout/styles.js.map +1 -0
  174. package/dist/components/Grid/filtering/constants.d.ts +5 -0
  175. package/dist/components/Grid/filtering/constants.js +53 -0
  176. package/dist/components/Grid/filtering/constants.js.map +1 -0
  177. package/dist/components/Grid/filtering/controller/useColumnFilterConditionController.d.ts +21 -0
  178. package/dist/components/Grid/filtering/controller/useColumnFilterConditionController.js +44 -0
  179. package/dist/components/Grid/filtering/controller/useColumnFilterConditionController.js.map +1 -0
  180. package/dist/components/Grid/filtering/model/Condition.d.ts +49 -0
  181. package/dist/components/Grid/filtering/model/Condition.js +347 -0
  182. package/dist/components/Grid/filtering/model/Condition.js.map +1 -0
  183. package/dist/components/Grid/filtering/model/Filtering.d.ts +11 -0
  184. package/dist/components/Grid/filtering/model/Filtering.js +78 -0
  185. package/dist/components/Grid/filtering/model/Filtering.js.map +1 -0
  186. package/dist/components/Grid/filtering/utils/FilteringUtilts.d.ts +34 -0
  187. package/dist/components/Grid/filtering/utils/FilteringUtilts.js +195 -0
  188. package/dist/components/Grid/filtering/utils/FilteringUtilts.js.map +1 -0
  189. package/dist/components/Grid/index.d.ts +1 -1
  190. package/dist/components/Grid/index.js +1 -1
  191. package/dist/components/Grid/interfaces.d.ts +0 -9
  192. package/dist/components/Grid/selection/model/Selection.d.ts +12 -0
  193. package/dist/components/Grid/selection/model/Selection.js +55 -0
  194. package/dist/components/Grid/selection/model/Selection.js.map +1 -0
  195. package/dist/components/Grid/sorting/Sorting.d.ts +10 -0
  196. package/dist/components/Grid/sorting/Sorting.js +31 -0
  197. package/dist/components/Grid/sorting/Sorting.js.map +1 -0
  198. package/dist/components/Grid/{column-headers/column-header/ColumnHeaderContextualMenu.d.ts → sorting/components/SortingContextualMenu/SortingContextualMenu.d.ts} +3 -3
  199. package/dist/components/Grid/sorting/components/SortingContextualMenu/SortingContextualMenu.js +157 -0
  200. package/dist/components/Grid/sorting/components/SortingContextualMenu/SortingContextualMenu.js.map +1 -0
  201. package/dist/components/Grid/sorting/components/SortingContextualMenu/styles.d.ts +9 -0
  202. package/dist/components/Grid/sorting/components/SortingContextualMenu/styles.js +15 -0
  203. package/dist/components/Grid/sorting/components/SortingContextualMenu/styles.js.map +1 -0
  204. package/dist/components/Grid/sorting/controllers/useColumnSortingController.d.ts +9 -0
  205. package/dist/components/Grid/sorting/controllers/useColumnSortingController.js +22 -0
  206. package/dist/components/Grid/sorting/controllers/useColumnSortingController.js.map +1 -0
  207. package/dist/components/Grid/translations.d.ts +180 -20
  208. package/dist/components/Grid/translations.js +48 -5
  209. package/dist/components/Grid/translations.js.map +1 -1
  210. package/dist/components/GridCellRenderer/DefaultContentRenderer/DefaultContentRenderer.d.ts +2 -0
  211. package/dist/components/GridCellRenderer/DefaultContentRenderer/DefaultContentRenderer.js +11 -0
  212. package/dist/components/GridCellRenderer/DefaultContentRenderer/DefaultContentRenderer.js.map +1 -0
  213. package/dist/components/GridCellRenderer/DefaultContentRenderer/index.d.ts +1 -0
  214. package/dist/components/GridCellRenderer/DefaultContentRenderer/index.js +2 -0
  215. package/dist/components/GridCellRenderer/DefaultContentRenderer/index.js.map +1 -0
  216. package/dist/components/GridCellRenderer/GridCellRenderer.js +282 -99
  217. package/dist/components/GridCellRenderer/GridCellRenderer.js.map +1 -1
  218. package/dist/components/GridCellRenderer/OptionSet/OptionSet.d.ts +5 -0
  219. package/dist/components/GridCellRenderer/OptionSet/OptionSet.js +75 -0
  220. package/dist/components/GridCellRenderer/OptionSet/OptionSet.js.map +1 -0
  221. package/dist/components/GridCellRenderer/OptionSet/index.d.ts +1 -0
  222. package/dist/components/GridCellRenderer/OptionSet/index.js +2 -0
  223. package/dist/components/GridCellRenderer/OptionSet/index.js.map +1 -0
  224. package/dist/components/GridCellRenderer/OptionSet/styles.d.ts +20 -0
  225. package/dist/components/GridCellRenderer/OptionSet/styles.js +29 -0
  226. package/dist/components/GridCellRenderer/OptionSet/styles.js.map +1 -0
  227. package/dist/components/GridCellRenderer/RecordCommands/Icon.d.ts +7 -0
  228. package/dist/components/GridCellRenderer/RecordCommands/Icon.js +32 -0
  229. package/dist/components/GridCellRenderer/RecordCommands/Icon.js.map +1 -0
  230. package/dist/components/GridCellRenderer/RecordCommands/RecordCommands.d.ts +13 -0
  231. package/dist/components/GridCellRenderer/RecordCommands/RecordCommands.js +103 -0
  232. package/dist/components/GridCellRenderer/RecordCommands/RecordCommands.js.map +1 -0
  233. package/dist/components/GridCellRenderer/RecordCommands/styles.d.ts +13 -0
  234. package/dist/components/GridCellRenderer/RecordCommands/styles.js +32 -0
  235. package/dist/components/GridCellRenderer/RecordCommands/styles.js.map +1 -0
  236. package/dist/components/GridCellRenderer/interfaces.d.ts +42 -53
  237. package/dist/components/GridCellRenderer/styles.d.ts +60 -34
  238. package/dist/components/GridCellRenderer/styles.js +77 -69
  239. package/dist/components/GridCellRenderer/styles.js.map +1 -1
  240. package/dist/components/GridCellRenderer/translations.d.ts +1 -1
  241. package/dist/components/GridCellRenderer/translations.js +32 -30
  242. package/dist/components/GridCellRenderer/translations.js.map +1 -1
  243. package/dist/components/GridCellRenderer/useComponentProps.d.ts +6 -0
  244. package/dist/components/GridCellRenderer/useComponentProps.js +10 -0
  245. package/dist/components/GridCellRenderer/useComponentProps.js.map +1 -0
  246. package/dist/components/Lookup/Lookup.js +1 -1
  247. package/dist/components/Lookup/Lookup.js.map +1 -1
  248. package/dist/components/Lookup/hooks/useLookup.js +2 -2
  249. package/dist/components/Lookup/hooks/useLookup.js.map +1 -1
  250. package/dist/components/MultiSelectOptionSet/MultiSelectOptionSet.js +2 -2
  251. package/dist/components/MultiSelectOptionSet/MultiSelectOptionSet.js.map +1 -1
  252. package/dist/components/NestedControlRenderer/NestedControl.d.ts +0 -2
  253. package/dist/components/NestedControlRenderer/NestedControl.js +2 -5
  254. package/dist/components/NestedControlRenderer/NestedControl.js.map +1 -1
  255. package/dist/components/NestedControlRenderer/NestedControlRenderer.js +6 -11
  256. package/dist/components/NestedControlRenderer/NestedControlRenderer.js.map +1 -1
  257. package/dist/components/NestedControlRenderer/interfaces.d.ts +0 -4
  258. package/dist/components/NestedControlRenderer/properties/FileProperty.js +1 -1
  259. package/dist/components/NestedControlRenderer/properties/FileProperty.js.map +1 -1
  260. package/dist/components/OptionSet/OptionSet.js +4 -5
  261. package/dist/components/OptionSet/OptionSet.js.map +1 -1
  262. package/dist/components/TextField/TextField.js +1 -1
  263. package/dist/components/TextField/TextField.js.map +1 -1
  264. package/dist/components/index.js +3 -1
  265. package/dist/components/index.js.map +1 -1
  266. package/dist/hooks/useControl.d.ts +0 -1
  267. package/dist/hooks/useControl.js +0 -1
  268. package/dist/hooks/useControl.js.map +1 -1
  269. package/dist/hooks/useInputBasedControl.js +1 -2
  270. package/dist/hooks/useInputBasedControl.js.map +1 -1
  271. package/dist/index.d.ts +299 -162
  272. package/dist/index.js +3 -1
  273. package/dist/index.js.map +1 -1
  274. package/dist/interfaces/property.d.ts +1 -1
  275. package/dist/utils/BaseControls.d.ts +1 -2
  276. package/dist/utils/BaseControls.js +1 -5
  277. package/dist/utils/BaseControls.js.map +1 -1
  278. package/dist/utils/dataset/adapters/VirtualDatasetAdapter.d.ts +16 -12
  279. package/dist/utils/dataset/adapters/VirtualDatasetAdapter.js +72 -27
  280. package/dist/utils/dataset/adapters/VirtualDatasetAdapter.js.map +1 -1
  281. package/dist/utils/theme/components/ThemeWrapper.d.ts +1 -1
  282. package/dist/utils/theme/components/ThemeWrapper.js.map +1 -1
  283. package/dist/utils/theme/hooks/useControlTheme.js +1 -2
  284. package/dist/utils/theme/hooks/useControlTheme.js.map +1 -1
  285. package/package.json +5 -9
  286. package/dist/components/DatasetControl/DatasetControlModel.d.ts +0 -37
  287. package/dist/components/DatasetControl/DatasetControlModel.js +0 -110
  288. package/dist/components/DatasetControl/DatasetControlModel.js.map +0 -1
  289. package/dist/components/DatasetControl/Filtering/DatasetColumnFiltering.d.ts +0 -3
  290. package/dist/components/DatasetControl/Filtering/DatasetColumnFiltering.js +0 -166
  291. package/dist/components/DatasetControl/Filtering/DatasetColumnFiltering.js.map +0 -1
  292. package/dist/components/DatasetControl/Filtering/DatasetColumnFilteringModel.d.ts +0 -15
  293. package/dist/components/DatasetControl/Filtering/DatasetColumnFilteringModel.js +0 -59
  294. package/dist/components/DatasetControl/Filtering/DatasetColumnFilteringModel.js.map +0 -1
  295. package/dist/components/DatasetControl/Filtering/interfaces.d.ts +0 -31
  296. package/dist/components/DatasetControl/Filtering/styles.d.ts +0 -16
  297. package/dist/components/DatasetControl/Filtering/styles.js +0 -23
  298. package/dist/components/DatasetControl/Filtering/styles.js.map +0 -1
  299. package/dist/components/DatasetControl/Filtering/translations.d.ts +0 -154
  300. package/dist/components/DatasetControl/Filtering/translations.js +0 -43
  301. package/dist/components/DatasetControl/Filtering/translations.js.map +0 -1
  302. package/dist/components/DatasetControl/Header/Header.d.ts +0 -5
  303. package/dist/components/DatasetControl/Header/Header.js +0 -89
  304. package/dist/components/DatasetControl/Header/Header.js.map +0 -1
  305. package/dist/components/DatasetControl/Header/styles.d.ts +0 -22
  306. package/dist/components/DatasetControl/Header/styles.js +0 -29
  307. package/dist/components/DatasetControl/Header/styles.js.map +0 -1
  308. package/dist/components/DatasetControl/Pagination/Pagination.d.ts +0 -5
  309. package/dist/components/DatasetControl/Pagination/Pagination.js +0 -91
  310. package/dist/components/DatasetControl/Pagination/Pagination.js.map +0 -1
  311. package/dist/components/DatasetControl/Pagination/PaginationModel.d.ts +0 -10
  312. package/dist/components/DatasetControl/Pagination/PaginationModel.js +0 -45
  313. package/dist/components/DatasetControl/Pagination/PaginationModel.js.map +0 -1
  314. package/dist/components/DatasetControl/Pagination/styles.d.ts +0 -23
  315. package/dist/components/DatasetControl/Pagination/styles.js +0 -29
  316. package/dist/components/DatasetControl/Pagination/styles.js.map +0 -1
  317. package/dist/components/DatasetControl/useModel.d.ts +0 -4
  318. package/dist/components/DatasetControl/useModel.js +0 -9
  319. package/dist/components/DatasetControl/useModel.js.map +0 -1
  320. package/dist/components/Grid/cells/cell/Cell.js +0 -302
  321. package/dist/components/Grid/cells/cell/Cell.js.map +0 -1
  322. package/dist/components/Grid/cells/cell/content/CellContent.js.map +0 -1
  323. package/dist/components/Grid/cells/cell/content/styles.js.map +0 -1
  324. package/dist/components/Grid/cells/cell/notifications/Notifications.js.map +0 -1
  325. package/dist/components/Grid/cells/cell/notifications/styles.js.map +0 -1
  326. package/dist/components/Grid/cells/cell/styles.js +0 -78
  327. package/dist/components/Grid/cells/cell/styles.js.map +0 -1
  328. package/dist/components/Grid/column-headers/column-header/ColumnHeader.js +0 -83
  329. package/dist/components/Grid/column-headers/column-header/ColumnHeader.js.map +0 -1
  330. package/dist/components/Grid/column-headers/column-header/ColumnHeaderContextualMenu.js +0 -115
  331. package/dist/components/Grid/column-headers/column-header/ColumnHeaderContextualMenu.js.map +0 -1
  332. package/dist/components/Grid/column-headers/column-header/FilterCallout.js +0 -103
  333. package/dist/components/Grid/column-headers/column-header/FilterCallout.js.map +0 -1
  334. package/dist/components/Grid/column-headers/column-header/styles.d.ts +0 -84
  335. package/dist/components/Grid/column-headers/column-header/styles.js.map +0 -1
  336. package/dist/components/Grid/column-headers/record-selection-checkbox/RecordSelectionCheckbox.d.ts +0 -2
  337. package/dist/components/Grid/column-headers/record-selection-checkbox/RecordSelectionCheckbox.js +0 -50
  338. package/dist/components/Grid/column-headers/record-selection-checkbox/RecordSelectionCheckbox.js.map +0 -1
  339. package/dist/components/Grid/column-headers/record-selection-checkbox/styles.js.map +0 -1
  340. package/dist/components/Grid/errors/FullWidthCellRendererError/FullWidthCellRendererError.d.ts +0 -6
  341. package/dist/components/Grid/errors/FullWidthCellRendererError/FullWidthCellRendererError.js +0 -15
  342. package/dist/components/Grid/errors/FullWidthCellRendererError/FullWidthCellRendererError.js.map +0 -1
  343. package/dist/components/Grid/errors/FullWidthCellRendererError/styles.d.ts +0 -6
  344. package/dist/components/Grid/errors/FullWidthCellRendererError/styles.js +0 -13
  345. package/dist/components/Grid/errors/FullWidthCellRendererError/styles.js.map +0 -1
  346. package/dist/components/Grid/grid/Grid.js +0 -64
  347. package/dist/components/Grid/grid/Grid.js.map +0 -1
  348. package/dist/components/Grid/grid/GridContext.d.ts +0 -3
  349. package/dist/components/Grid/grid/GridContext.js.map +0 -1
  350. package/dist/components/Grid/grid/GridModel.d.ts +0 -117
  351. package/dist/components/Grid/grid/GridModel.js +0 -787
  352. package/dist/components/Grid/grid/GridModel.js.map +0 -1
  353. package/dist/components/Grid/grid/ValueComparator.js.map +0 -1
  354. package/dist/components/Grid/grid/ag-grid/AgGridContext.js.map +0 -1
  355. package/dist/components/Grid/grid/ag-grid/AgGridModel.d.ts +0 -88
  356. package/dist/components/Grid/grid/ag-grid/AgGridModel.js +0 -565
  357. package/dist/components/Grid/grid/ag-grid/AgGridModel.js.map +0 -1
  358. package/dist/components/Grid/grid/ag-grid/ServerSideDatasource.d.ts +0 -7
  359. package/dist/components/Grid/grid/ag-grid/ServerSideDatasource.js +0 -38
  360. package/dist/components/Grid/grid/ag-grid/ServerSideDatasource.js.map +0 -1
  361. package/dist/components/Grid/grid/ag-grid/useAgGridInstance.d.ts +0 -2
  362. package/dist/components/Grid/grid/ag-grid/useAgGridInstance.js +0 -9
  363. package/dist/components/Grid/grid/ag-grid/useAgGridInstance.js.map +0 -1
  364. package/dist/components/Grid/grid/styles.js.map +0 -1
  365. package/dist/components/Grid/grid/useGridInstance.d.ts +0 -2
  366. package/dist/components/Grid/grid/useGridInstance.js.map +0 -1
  367. package/dist/components/Grid/loading/full-row/FullRowLoading.d.ts +0 -3
  368. package/dist/components/Grid/loading/full-row/FullRowLoading.js +0 -33
  369. package/dist/components/Grid/loading/full-row/FullRowLoading.js.map +0 -1
  370. package/dist/components/Grid/loading/full-row/styles.d.ts +0 -9
  371. package/dist/components/Grid/loading/full-row/styles.js +0 -16
  372. package/dist/components/Grid/loading/full-row/styles.js.map +0 -1
  373. package/dist/components/Grid/overlays/empty-records/EmptyRecordsOverlay.js +0 -13
  374. package/dist/components/Grid/overlays/empty-records/EmptyRecordsOverlay.js.map +0 -1
  375. package/dist/components/Grid/overlays/empty-records/styles.js.map +0 -1
  376. package/dist/components/Grid/overlays/loading/LoadingOverlay.js.map +0 -1
  377. package/dist/components/GridCellRenderer/GridCellRendererModel.d.ts +0 -51
  378. package/dist/components/GridCellRenderer/GridCellRendererModel.js +0 -211
  379. package/dist/components/GridCellRenderer/GridCellRendererModel.js.map +0 -1
  380. package/dist/components/GridCellRenderer/ValueRenderer/ColorfulOptionSetValueRenderer/ColorfulOptionSetValueRenderer.d.ts +0 -9
  381. package/dist/components/GridCellRenderer/ValueRenderer/ColorfulOptionSetValueRenderer/ColorfulOptionSetValueRenderer.js +0 -53
  382. package/dist/components/GridCellRenderer/ValueRenderer/ColorfulOptionSetValueRenderer/ColorfulOptionSetValueRenderer.js.map +0 -1
  383. package/dist/components/GridCellRenderer/ValueRenderer/ColorfulOptionSetValueRenderer/styles.d.ts +0 -20
  384. package/dist/components/GridCellRenderer/ValueRenderer/ColorfulOptionSetValueRenderer/styles.js +0 -29
  385. package/dist/components/GridCellRenderer/ValueRenderer/ColorfulOptionSetValueRenderer/styles.js.map +0 -1
  386. package/dist/components/GridCellRenderer/ValueRenderer/FileRenderer/FileRenderer.d.ts +0 -7
  387. package/dist/components/GridCellRenderer/ValueRenderer/FileRenderer/FileRenderer.js +0 -76
  388. package/dist/components/GridCellRenderer/ValueRenderer/FileRenderer/FileRenderer.js.map +0 -1
  389. package/dist/components/GridCellRenderer/ValueRenderer/FileRenderer/styles.d.ts +0 -18
  390. package/dist/components/GridCellRenderer/ValueRenderer/FileRenderer/styles.js +0 -25
  391. package/dist/components/GridCellRenderer/ValueRenderer/FileRenderer/styles.js.map +0 -1
  392. package/dist/components/GridCellRenderer/ValueRenderer/ValueRenderer.d.ts +0 -3
  393. package/dist/components/GridCellRenderer/ValueRenderer/ValueRenderer.js +0 -52
  394. package/dist/components/GridCellRenderer/ValueRenderer/ValueRenderer.js.map +0 -1
  395. package/dist/components/GridCellRenderer/ValueRenderer/styles.d.ts +0 -1666
  396. package/dist/components/GridCellRenderer/ValueRenderer/styles.js +0 -31
  397. package/dist/components/GridCellRenderer/ValueRenderer/styles.js.map +0 -1
  398. package/dist/components/GridCellRenderer/properties/Email.d.ts +0 -5
  399. package/dist/components/GridCellRenderer/properties/Email.js +0 -15
  400. package/dist/components/GridCellRenderer/properties/Email.js.map +0 -1
  401. package/dist/components/GridCellRenderer/properties/File.d.ts +0 -19
  402. package/dist/components/GridCellRenderer/properties/File.js +0 -99
  403. package/dist/components/GridCellRenderer/properties/File.js.map +0 -1
  404. package/dist/components/GridCellRenderer/properties/Image.d.ts +0 -4
  405. package/dist/components/GridCellRenderer/properties/Image.js +0 -15
  406. package/dist/components/GridCellRenderer/properties/Image.js.map +0 -1
  407. package/dist/components/GridCellRenderer/properties/Lookup.d.ts +0 -6
  408. package/dist/components/GridCellRenderer/properties/Lookup.js +0 -19
  409. package/dist/components/GridCellRenderer/properties/Lookup.js.map +0 -1
  410. package/dist/components/GridCellRenderer/properties/MultiSelectOptionSet.d.ts +0 -5
  411. package/dist/components/GridCellRenderer/properties/MultiSelectOptionSet.js +0 -11
  412. package/dist/components/GridCellRenderer/properties/MultiSelectOptionSet.js.map +0 -1
  413. package/dist/components/GridCellRenderer/properties/MultilineText.d.ts +0 -4
  414. package/dist/components/GridCellRenderer/properties/MultilineText.js +0 -10
  415. package/dist/components/GridCellRenderer/properties/MultilineText.js.map +0 -1
  416. package/dist/components/GridCellRenderer/properties/OptionSet.d.ts +0 -5
  417. package/dist/components/GridCellRenderer/properties/OptionSet.js +0 -11
  418. package/dist/components/GridCellRenderer/properties/OptionSet.js.map +0 -1
  419. package/dist/components/GridCellRenderer/properties/OptionSetBase.d.ts +0 -7
  420. package/dist/components/GridCellRenderer/properties/OptionSetBase.js +0 -19
  421. package/dist/components/GridCellRenderer/properties/OptionSetBase.js.map +0 -1
  422. package/dist/components/GridCellRenderer/properties/Phone.d.ts +0 -9
  423. package/dist/components/GridCellRenderer/properties/Phone.js +0 -15
  424. package/dist/components/GridCellRenderer/properties/Phone.js.map +0 -1
  425. package/dist/components/GridCellRenderer/properties/Property.d.ts +0 -19
  426. package/dist/components/GridCellRenderer/properties/Property.js +0 -54
  427. package/dist/components/GridCellRenderer/properties/Property.js.map +0 -1
  428. package/dist/components/GridCellRenderer/properties/TwoOptions.d.ts +0 -5
  429. package/dist/components/GridCellRenderer/properties/TwoOptions.js +0 -11
  430. package/dist/components/GridCellRenderer/properties/TwoOptions.js.map +0 -1
  431. package/dist/components/GridCellRenderer/properties/Url.d.ts +0 -5
  432. package/dist/components/GridCellRenderer/properties/Url.js +0 -15
  433. package/dist/components/GridCellRenderer/properties/Url.js.map +0 -1
  434. package/dist/components/GridCellRenderer/useModel.d.ts +0 -4
  435. package/dist/components/GridCellRenderer/useModel.js +0 -9
  436. package/dist/components/GridCellRenderer/useModel.js.map +0 -1
  437. package/dist/components/GridColumnHeader/GridColumnHeader.d.ts +0 -3
  438. package/dist/components/GridColumnHeader/GridColumnHeader.js +0 -134
  439. package/dist/components/GridColumnHeader/GridColumnHeader.js.map +0 -1
  440. package/dist/components/GridColumnHeader/GridColumnHeaderModel.d.ts +0 -26
  441. package/dist/components/GridColumnHeader/GridColumnHeaderModel.js +0 -87
  442. package/dist/components/GridColumnHeader/GridColumnHeaderModel.js.map +0 -1
  443. package/dist/components/GridColumnHeader/interfaces.d.ts +0 -45
  444. package/dist/components/GridColumnHeader/styles.d.ts +0 -37
  445. package/dist/components/GridColumnHeader/styles.js +0 -55
  446. package/dist/components/GridColumnHeader/styles.js.map +0 -1
  447. package/dist/components/GridColumnHeader/translations.d.ts +0 -26
  448. package/dist/components/GridColumnHeader/translations.js +0 -29
  449. package/dist/components/GridColumnHeader/translations.js.map +0 -1
  450. package/dist/components/Ribbon/Ribbon.d.ts +0 -3
  451. package/dist/components/Ribbon/Ribbon.js +0 -97
  452. package/dist/components/Ribbon/Ribbon.js.map +0 -1
  453. package/dist/components/Ribbon/RibbonModel.d.ts +0 -4
  454. package/dist/components/Ribbon/interfaces.d.ts +0 -19
  455. package/dist/components/Ribbon/styles.d.ts +0 -11
  456. package/dist/components/Ribbon/styles.js +0 -18
  457. package/dist/components/Ribbon/styles.js.map +0 -1
  458. package/dist/hooks/useEventEmitter.d.ts +0 -2
  459. package/dist/hooks/useEventEmitter.js +0 -18
  460. package/dist/hooks/useEventEmitter.js.map +0 -1
  461. /package/dist/components/Grid/{grid/GridContext.js → GridContext.js} +0 -0
  462. /package/dist/components/Grid/{overlays/empty-records/EmptyRecordsOverlay.d.ts → core/components/AgGrid/components/EmptyRecordsOverlay/EmptyRecords.d.ts} +0 -0
  463. /package/dist/components/Grid/{overlays/loading → core/components/AgGrid/components/LoadingOverlay}/LoadingOverlay.d.ts +0 -0
  464. /package/dist/components/Grid/{overlays/loading → core/components/AgGrid/components/LoadingOverlay}/LoadingOverlay.js +0 -0
  465. /package/dist/components/Grid/{cells/cell/content → core/components/Cell/CellContent}/styles.d.ts +0 -0
  466. /package/dist/components/Grid/{cells/cell/content → core/components/Cell/CellContent}/styles.js +0 -0
  467. /package/dist/components/Grid/{cells/cell/notifications → core/components/Cell/Notifications}/styles.d.ts +0 -0
  468. /package/dist/components/Grid/{column-headers/record-selection-checkbox → core/components/ColumnHeader/components/GlobalCheckbox}/styles.d.ts +0 -0
  469. /package/dist/components/Grid/{column-headers/record-selection-checkbox → core/components/ColumnHeader/components/GlobalCheckbox}/styles.js +0 -0
@@ -1,787 +0,0 @@
1
- import { Sorting, TotalRow, Filtering, FieldValue, Grouping, DataTypes, Sanitizer, DataProvider, Type } from '@talxis/client-libraries';
2
- import { merge } from 'merge-anything';
3
- import { Theming } from '@talxis/react-components';
4
- import { getTheme } from '@fluentui/react';
5
- import deepEqual from 'fast-deep-equal';
6
- import { CHECKBOX_COLUMN_KEY } from '../constants.js';
7
- import hotkeys from 'hotkeys-js';
8
- import { BaseControls } from '../../../utils/BaseControls.js';
9
-
10
- const DEFAULT_ROW_HEIGHT = 42;
11
- class GridModel {
12
- constructor({ onGetProps, labels, theme }) {
13
- this._cachedColumns = [];
14
- this._cachedColumnsMap = new Map();
15
- this._hasFirstDataBeenLoaded = false;
16
- this._getProps = onGetProps;
17
- this._labels = labels;
18
- this._theme = theme ?? getTheme();
19
- this.oddRowCellTheme = Theming.GenerateThemeV8(this._theme.palette.themePrimary, this._theme.palette.neutralLighterAlt, this._theme.semanticColors.bodyText);
20
- this.evenRowCellTheme = Theming.GenerateThemeV8(this._theme.palette.themePrimary, this._theme.palette.white, this._theme.semanticColors.bodyText);
21
- this._registerEventListeners();
22
- hotkeys('*', (event, handler) => {
23
- });
24
- }
25
- init() {
26
- if (this._hasFirstDataBeenLoaded) {
27
- return;
28
- }
29
- this._hasFirstDataBeenLoaded = true;
30
- this.__sorting = new Sorting(() => this.getDataset().getDataProvider());
31
- this.__totalRow = new TotalRow({
32
- onGetDataProvider: () => this.getDataset().getDataProvider(),
33
- });
34
- this.__filtering = new Filtering(() => this.getDataset().getDataProvider(), FieldValue);
35
- this.__grouping = new Grouping(() => this.getDataset().getDataProvider());
36
- }
37
- getDataset() {
38
- return this._getProps().parameters.Grid;
39
- }
40
- getPcfContext() {
41
- return this._getProps().context;
42
- }
43
- getParameters() {
44
- return this._getProps().parameters;
45
- }
46
- getLabels() {
47
- return this._labels;
48
- }
49
- isZebraEnabled() {
50
- return this._getProps().parameters.EnableZebra?.raw !== false;
51
- }
52
- isNavigationEnabled() {
53
- return this.getParameters().EnableNavigation?.raw !== false;
54
- }
55
- isAutoSaveEnabled() {
56
- return this.getParameters().EnableAutoSave?.raw === true;
57
- }
58
- isGroupedColumnsPinnedEnabled() {
59
- return this.getParameters().EnableGroupedColumnsPinning?.raw !== false;
60
- }
61
- isEditingEnabled() {
62
- return this.getParameters().EnableEditing?.raw === true;
63
- }
64
- getGroupType() {
65
- return this.getParameters().GroupType?.raw ?? 'nested';
66
- }
67
- optionSetColorsEnabled() {
68
- return this.getParameters().EnableOptionSetColors?.raw === true;
69
- }
70
- getDefaultExpandedGroupLevel() {
71
- return this.getParameters().DefaultExpandedGroupLevel?.raw ?? -1;
72
- }
73
- getLicenseKey() {
74
- return this.getParameters().LicenseKey?.raw ?? null;
75
- }
76
- getDefaultRowHeight() {
77
- const height = this.getParameters().RowHeight?.raw;
78
- if (height) {
79
- return height;
80
- }
81
- return DEFAULT_ROW_HEIGHT;
82
- }
83
- getSelectionType() {
84
- switch (this.getParameters().SelectableRows?.raw) {
85
- case undefined:
86
- case null: {
87
- return 'multiple';
88
- }
89
- }
90
- return this.getParameters().SelectableRows.raw;
91
- }
92
- getControl(column, record, editing) {
93
- editing = record.getSummarizationType() === 'aggregation' ? false : editing;
94
- //file and image currently do not support editor, always force cell renderers
95
- switch (column.dataType) {
96
- case 'File':
97
- case 'Image': {
98
- return {
99
- name: 'GridCellRenderer',
100
- appliesTo: 'both',
101
- bindings: {}
102
- };
103
- }
104
- }
105
- const defaultControl = {
106
- name: editing ? BaseControls.GetControlNameForDataType(column.dataType) : 'GridCellRenderer',
107
- appliesTo: 'both',
108
- bindings: {}
109
- };
110
- const customControls = record.getColumnInfo(column.name).ui.getCustomControls([defaultControl]);
111
- const appliesToValue = editing ? 'editor' : 'renderer';
112
- const customControl = customControls.find(control => control.appliesTo === 'both' || control.appliesTo === appliesToValue);
113
- if (customControl) {
114
- return merge(defaultControl, customControl);
115
- }
116
- return defaultControl;
117
- }
118
- getBindings(record, column, control) {
119
- const columnInfo = record.getColumnInfo(column.name);
120
- const bindings = {
121
- 'value': {
122
- isStatic: false,
123
- type: column.dataType,
124
- value: this.getControlValue(record, column),
125
- formattedValue: this.getRecordFormattedValue(record, column).value,
126
- error: columnInfo.error,
127
- errorMessage: columnInfo.errorMessage,
128
- onNotifyOutputChanged: () => { },
129
- metadata: {
130
- onOverrideMetadata: () => column.metadata
131
- }
132
- },
133
- 'IsCellCustomizer': {
134
- isStatic: true,
135
- type: DataTypes.TwoOptions,
136
- value: true
137
- }
138
- };
139
- if (control.bindings) {
140
- Object.entries(control.bindings).map(([name, binding]) => {
141
- bindings[name] = {
142
- isStatic: true,
143
- type: binding.type,
144
- value: binding.value
145
- };
146
- });
147
- }
148
- return bindings;
149
- }
150
- getFieldBindingParameters(record, column, editing, recordCommands) {
151
- //make sure we have IColumn, not IGridColumn
152
- column = record.getDataProvider().getColumnsMap()[column.name];
153
- const summarizationType = record.getDataProvider().getSummarizationType();
154
- const value = this.getRecordValue(record, column);
155
- const formattedValue = this.getRecordFormattedValue(record, column);
156
- const aggregationColumn = record.getDataProvider().getColumnsMap()[column.aggregation?.alias];
157
- const parameters = {
158
- Dataset: {
159
- raw: this.getDataset(),
160
- type: DataTypes.Object
161
- },
162
- Record: {
163
- raw: record,
164
- type: DataTypes.Object
165
- },
166
- Column: {
167
- raw: column,
168
- type: DataTypes.Object
169
- }
170
- };
171
- parameters.AggregatedValue = {
172
- raw: value.aggregatedValue,
173
- formatted: formattedValue.aggregatedValue,
174
- type: aggregationColumn?.dataType ?? DataTypes.Decimal
175
- };
176
- parameters.EnableNavigation = {
177
- raw: (() => {
178
- if (!this.isNavigationEnabled()) {
179
- return false;
180
- }
181
- if (summarizationType === 'aggregation') {
182
- return false;
183
- }
184
- else if (summarizationType === 'grouping') {
185
- switch (column.dataType) {
186
- case DataTypes.LookupCustomer:
187
- case DataTypes.LookupRegarding:
188
- case DataTypes.LookupOwner:
189
- case DataTypes.LookupSimple:
190
- case DataTypes.File:
191
- case DataTypes.Image:
192
- case DataTypes.SingleLineEmail:
193
- case DataTypes.SingleLineUrl:
194
- case DataTypes.SingleLinePhone: {
195
- return true;
196
- }
197
- default: {
198
- return false;
199
- }
200
- }
201
- }
202
- else {
203
- return true;
204
- }
205
- })(),
206
- type: DataTypes.TwoOptions
207
- };
208
- parameters.ColumnAlignment = {
209
- raw: column.alignment,
210
- type: DataTypes.SingleLineText
211
- };
212
- parameters.IsPrimaryColumn = {
213
- raw: column.isPrimary,
214
- type: DataTypes.TwoOptions
215
- };
216
- parameters.ShowErrorMessage = {
217
- raw: false,
218
- type: DataTypes.TwoOptions
219
- };
220
- parameters.CellType = {
221
- raw: editing ? 'editor' : 'renderer',
222
- type: DataTypes.SingleLineText
223
- };
224
- parameters.AutoFocus = {
225
- raw: editing,
226
- type: DataTypes.TwoOptions
227
- };
228
- parameters.AggregationFunction = {
229
- raw: summarizationType === 'aggregation' ? aggregationColumn?.aggregation?.aggregationFunction : null,
230
- type: DataTypes.SingleLineText
231
- };
232
- parameters.PrefixIcon = {
233
- raw: null,
234
- type: DataTypes.SingleLineText
235
- };
236
- parameters.SuffixIcon = {
237
- raw: null,
238
- type: DataTypes.SingleLineText
239
- };
240
- parameters.RecordCommands = {
241
- raw: recordCommands ?? [],
242
- type: DataTypes.Object
243
- };
244
- parameters.IsInlineNewEnabled = {
245
- raw: false,
246
- type: DataTypes.TwoOptions
247
- };
248
- parameters.EnableTypeSuffix = {
249
- raw: false,
250
- type: DataTypes.TwoOptions
251
- };
252
- parameters.EnableOptionSetColors = {
253
- raw: this.optionSetColorsEnabled(),
254
- type: DataTypes.TwoOptions
255
- };
256
- parameters.ShouldStopEditWhenOutputChanges = {
257
- raw: (() => {
258
- //by default, leave cell editor opened for these types since
259
- // they can output partial changes as values
260
- switch (column.dataType) {
261
- case 'DateAndTime.DateAndTime':
262
- case 'MultiSelectPicklist': {
263
- return false;
264
- }
265
- default: {
266
- return true;
267
- }
268
- }
269
- })(),
270
- type: DataTypes.TwoOptions
271
- };
272
- return parameters;
273
- }
274
- isColumnExpandable(record, column) {
275
- const groupBy = record.getDataProvider().grouping.getGroupBys()[0];
276
- return groupBy?.columnName === column.name;
277
- }
278
- getFieldFormatting(record, columnName) {
279
- const defaultTheme = this.getDefaultCellTheme(record, columnName);
280
- const defaultBackgroundColor = defaultTheme.semanticColors.bodyBackground;
281
- // Handle checkbox column specifically
282
- if (columnName === CHECKBOX_COLUMN_KEY || !record) {
283
- return {
284
- primaryColor: this._theme.palette.themePrimary,
285
- backgroundColor: defaultBackgroundColor,
286
- textColor: Theming.GetTextColorForBackground(defaultBackgroundColor),
287
- className: '',
288
- themeOverride: {}
289
- };
290
- }
291
- const customFormatting = record.getColumnInfo(columnName).ui.getCustomFormatting(defaultTheme) ?? {};
292
- // Prepare the result with defaults
293
- const result = {
294
- backgroundColor: customFormatting.backgroundColor ?? defaultBackgroundColor,
295
- primaryColor: customFormatting.primaryColor ?? this._theme.palette.themePrimary,
296
- textColor: customFormatting.textColor ?? '',
297
- className: customFormatting.className ?? '',
298
- themeOverride: customFormatting.themeOverride ?? {}
299
- };
300
- // Apply background-specific adjustments
301
- if (result.backgroundColor !== defaultBackgroundColor) {
302
- result.themeOverride = merge({}, {
303
- fonts: {
304
- medium: {
305
- fontWeight: 600
306
- }
307
- }
308
- }, result.themeOverride);
309
- if (!customFormatting.primaryColor) {
310
- result.primaryColor = Theming.GetTextColorForBackground(result.backgroundColor);
311
- }
312
- }
313
- // Ensure text color is set
314
- if (!result.textColor) {
315
- result.textColor = Theming.GetTextColorForBackground(result.backgroundColor);
316
- }
317
- return result;
318
- }
319
- getDefaultCellTheme(record, columnName) {
320
- const isEven = record.getIndex() % 2 === 0;
321
- const summarizationType = record.getDataProvider().getSummarizationType();
322
- if (summarizationType !== 'none') {
323
- return this.oddRowCellTheme;
324
- }
325
- //child of a group record
326
- else if (record.getDataProvider().getParentDataProvider()) {
327
- return this.evenRowCellTheme;
328
- }
329
- else if (isEven || !this.isZebraEnabled()) {
330
- return this.evenRowCellTheme;
331
- }
332
- else {
333
- return this.oddRowCellTheme;
334
- }
335
- }
336
- getGridColumns() {
337
- return this._cachedColumns;
338
- }
339
- getGridColumnByName(columnName) {
340
- return this._cachedColumnsMap.get(columnName);
341
- }
342
- refreshGridColumns() {
343
- if (!this._hasFirstDataBeenLoaded) {
344
- return {
345
- haveColumnsOrderBeenUpdated: false,
346
- columns: []
347
- };
348
- }
349
- const gridColumns = this._getGridColumnsFromDataset();
350
- const gridColumnNames = this._getVisibleColumnNames(gridColumns);
351
- const cachedGridColumnNames = this._getVisibleColumnNames(this._cachedColumns);
352
- if (!deepEqual(gridColumnNames, cachedGridColumnNames)) {
353
- this._cachedColumns = gridColumns;
354
- return {
355
- haveColumnsOrderBeenUpdated: true,
356
- columns: gridColumns
357
- };
358
- }
359
- else {
360
- this._cachedColumns = gridColumns;
361
- return {
362
- haveColumnsOrderBeenUpdated: false,
363
- columns: this._cachedColumns
364
- };
365
- }
366
- }
367
- getColumnByName(columnName) {
368
- return this.getDataset().getDataProvider().getColumnsMap()[columnName];
369
- }
370
- getRecordValue(record, column) {
371
- return this._getRecordValue(record, column, false);
372
- }
373
- getRecordFormattedValue(record, column) {
374
- return this._getRecordValue(record, column, true);
375
- }
376
- //returns record value in a form that is compatible with PCF typings
377
- getControlValue(record, column) {
378
- const columnName = typeof column === 'string' ? column : column.name;
379
- column = record.getDataProvider().getColumnsMap()[columnName];
380
- //can be the aggregated value
381
- let value = this.getRecordValue(record, column).value;
382
- switch (column.dataType) {
383
- //getValue always returns string for TwoOptions
384
- case 'TwoOptions': {
385
- if (typeof value === 'string') {
386
- value = value == '1' ? true : false;
387
- }
388
- break;
389
- }
390
- //getValue always returns string for OptionSet
391
- case 'OptionSet': {
392
- value = value ? parseInt(value) : null;
393
- break;
394
- }
395
- case 'MultiSelectPicklist': {
396
- value = value ? value.split(',').map((x) => parseInt(x)) : null;
397
- break;
398
- }
399
- case 'Lookup.Simple':
400
- case 'Lookup.Customer':
401
- case 'Lookup.Owner':
402
- case 'Lookup.Regarding': {
403
- //our implementation returns array, Power Apps returns object
404
- if (value && !Array.isArray(value)) {
405
- value = [value];
406
- }
407
- value = value?.map((x) => Sanitizer.Lookup.getLookupValue(x));
408
- break;
409
- }
410
- }
411
- return value;
412
- }
413
- isRecordSelectionDisabled(record) {
414
- const dataProvider = record.getDataProvider();
415
- const level = dataProvider.getNestingLevel();
416
- const groupBys = this.getDataset().grouping.getGroupBys();
417
- if (this.getGroupType() === 'nested' && level < groupBys.length - 1) {
418
- return true;
419
- }
420
- if (dataProvider.getSummarizationType() === 'grouping' && this.getSelectionType() === 'single') {
421
- return true;
422
- }
423
- return false;
424
- }
425
- isColumnEditable(columnName, record) {
426
- let isEditable = true;
427
- const mainDatasetColumn = this.getDataset().getDataProvider().getColumnsMap()[columnName];
428
- let column = mainDatasetColumn;
429
- if (record) {
430
- column = record.getDataProvider().getColumnsMap()[columnName];
431
- }
432
- switch (true) {
433
- case !this.isEditingEnabled():
434
- case record?.isSaving():
435
- case column.oneClickEdit: {
436
- isEditable = false;
437
- break;
438
- }
439
- }
440
- switch (column.name) {
441
- case DataProvider.CONST.CHECKBOX_COLUMN_KEY:
442
- case DataProvider.CONST.RIBBON_BUTTONS_COLUMN_NAME: {
443
- isEditable = false;
444
- break;
445
- }
446
- }
447
- //these field types do not support editing
448
- switch (column.dataType) {
449
- case DataTypes.File:
450
- case DataTypes.Image: {
451
- isEditable = false;
452
- break;
453
- }
454
- }
455
- //if the column is not editable, return false
456
- if (!isEditable) {
457
- return false;
458
- }
459
- else {
460
- //columns is editable and we are not asking for record
461
- if (!record) {
462
- return true;
463
- }
464
- //column is editable, but we need to check if the record is editable
465
- else
466
- return this._isRecordFieldEditable(record, column);
467
- }
468
- }
469
- addAggregation(columnName, aggregationFunction) {
470
- this._dataset.getDataProvider().executeWithUnsavedChangesBlocker(() => {
471
- this._setAggregationDecorator(() => {
472
- this._totalRow.addAggregation(columnName, aggregationFunction);
473
- });
474
- });
475
- }
476
- removeAggregation(alias) {
477
- this._dataset.getDataProvider().executeWithUnsavedChangesBlocker(() => {
478
- this._setAggregationDecorator(() => {
479
- this._totalRow.removeAggregation(alias);
480
- });
481
- });
482
- }
483
- toggleColumnGroup(columnName) {
484
- this._dataset.getDataProvider().executeWithUnsavedChangesBlocker(() => {
485
- const column = this.getDataset().getDataProvider().getColumnsMap()[columnName];
486
- if (column.grouping?.isGrouped) {
487
- this._grouping.ungroupColumn(column.grouping.alias);
488
- }
489
- else {
490
- this._grouping.groupColumn(column.name);
491
- }
492
- this._dataset.refresh();
493
- });
494
- }
495
- getColumnFilter(columnName) {
496
- return this._filtering.getColumnFilter(columnName);
497
- }
498
- removeColumnFilter(columnName, saveToDataset) {
499
- this._filtering.removeColumnFilter(columnName);
500
- if (!saveToDataset) {
501
- return;
502
- }
503
- this._dataset.getDataProvider().executeWithUnsavedChangesBlocker(() => {
504
- const filterExpression = this._filtering.getFilterExpression(Type.And.Value);
505
- if (!filterExpression) {
506
- throw new Error('Unexpected error when clearing column filter.');
507
- }
508
- this._dataset.filtering.setFilter(filterExpression);
509
- this._dataset.refresh();
510
- });
511
- }
512
- sortColumn(columnName, descending) {
513
- this._dataset.getDataProvider().executeWithUnsavedChangesBlocker(() => {
514
- this._sorting.getColumnSorting(columnName).setSortValue(descending ? 1 : 0, hotkeys.getPressedKeyString().includes('⇧'));
515
- this._dataset.refresh();
516
- });
517
- }
518
- clearColumnSorting(columnName) {
519
- this._dataset.getDataProvider().executeWithUnsavedChangesBlocker(() => {
520
- this._sorting.getColumnSorting(columnName).clear();
521
- this._dataset.refresh();
522
- });
523
- }
524
- getTotalRow() {
525
- return this._totalRow;
526
- }
527
- getFiltering() {
528
- return this._filtering;
529
- }
530
- isSelectionModifierKeyPressed() {
531
- const pressedKeys = hotkeys.getPressedKeyString().join(',');
532
- switch (true) {
533
- case pressedKeys.includes('⇧'):
534
- case pressedKeys.includes('ctrl'):
535
- case pressedKeys.includes('⌘'): {
536
- return true;
537
- }
538
- default: {
539
- return false;
540
- }
541
- }
542
- }
543
- getColumnSortingLabel(columnName, descending) {
544
- const column = this.getDataset().getDataProvider().getColumnsMap()[columnName];
545
- switch (column.dataType) {
546
- case DataTypes.WholeNone:
547
- case DataTypes.Decimal:
548
- case DataTypes.WholeDuration:
549
- case DataTypes.Currency: {
550
- if (!descending) {
551
- return this._labels['filtersortmenu-sortnumber-a-z']();
552
- }
553
- return this._labels['filtersortmenu-sortnumber-z-a']();
554
- }
555
- case DataTypes.DateAndTimeDateAndTime:
556
- case DataTypes.DateAndTimeDateOnly: {
557
- if (!descending) {
558
- return this._labels['filtersortmenu-sortdate-a-z']();
559
- }
560
- return this._labels['filtersortmenu-sortdate-z-a']();
561
- }
562
- case DataTypes.TwoOptions: {
563
- const options = column.metadata?.OptionSet ?? [];
564
- if (!descending) {
565
- return `${options[0].Label} ${this._labels['filtersortmenu-sorttwooption-joint']()} ${options[1].Label}`;
566
- }
567
- return `${options[1].Label} ${this._labels['filtersortmenu-sorttwooption-joint']()} ${options[0].Label}`;
568
- }
569
- default: {
570
- if (!descending) {
571
- return this._labels['filtersortmenu-sorttext-a-z']();
572
- }
573
- return this._labels['filtersortmenu-sorttext-z-a']();
574
- }
575
- }
576
- }
577
- destroy() {
578
- hotkeys.unbind();
579
- }
580
- _getVisibleColumnNames(columns) {
581
- const names = [];
582
- for (const column of columns) {
583
- if (!column.isHidden) {
584
- //we also need to push the group state
585
- //to force ag grid to set new columns when grouping
586
- names.push(`${column.name}_${column.grouping?.isGrouped}`);
587
- }
588
- }
589
- return names;
590
- }
591
- _setAggregationDecorator(fn) {
592
- fn();
593
- if (this._dataset.grouping.getGroupBys().length > 0) {
594
- this._dataset.refresh();
595
- }
596
- else {
597
- this._totalRow?.refresh();
598
- this._dataset.render();
599
- }
600
- }
601
- _getRecordValue(record, column, formatted) {
602
- if (!record) {
603
- return {
604
- value: null,
605
- aggregatedValue: null
606
- };
607
- }
608
- const columnName = typeof column === 'string' ? column : column.name;
609
- column = record.getDataProvider().getColumnsMap()[columnName];
610
- if (!column) {
611
- return {
612
- value: null,
613
- aggregatedValue: null
614
- };
615
- }
616
- const method = formatted ? 'getFormattedValue' : 'getValue';
617
- const groupBy = record.getDataProvider().grouping.getGroupBy(column.grouping?.alias);
618
- const aggregation = record.getDataProvider().aggregation.getAggregation(column.aggregation?.alias);
619
- let value = record[method](columnName);
620
- let aggregatedValue = null;
621
- if (groupBy) {
622
- value = record[method](groupBy.alias);
623
- }
624
- if (aggregation) {
625
- aggregatedValue = record[method](aggregation.alias);
626
- }
627
- return {
628
- value: value,
629
- aggregatedValue: aggregatedValue
630
- };
631
- }
632
- _getGridColumnsFromDataset() {
633
- const gridColumns = this.getDataset().columns.map(column => {
634
- const sorted = this.getDataset().sorting?.find(sort => sort.name === column.name);
635
- const gridColumn = {
636
- ...column,
637
- alignment: column.alignment,
638
- isFiltered: this._filtering.getColumnFilter(column.name).isAppliedToDataset(),
639
- isEditable: this._isColumnEditable(column),
640
- isRequired: this._isColumnRequired(column),
641
- canBeGrouped: this._isColumnGroupable(column),
642
- isFilterable: this._isColumnFilterable(column),
643
- disableSorting: !this._isColumnSortable(column),
644
- canBeAggregated: this._canColumnBeAggregated(column),
645
- isSortedDescending: sorted?.sortDirection === 1 ? true : false,
646
- isResizable: true,
647
- isSorted: sorted ? true : false
648
- };
649
- this._cachedColumnsMap.set(column.name, gridColumn);
650
- return gridColumn;
651
- });
652
- return gridColumns;
653
- }
654
- _isRecordFieldEditable(record, column) {
655
- const columnInfo = record.getColumnInfo(column.name);
656
- //if editable not defined, return true since column is editable in this case
657
- return columnInfo?.security.editable ?? true;
658
- }
659
- _isColumnRequired(column) {
660
- if (!this.getParameters().EnableEditing?.raw) {
661
- return false;
662
- }
663
- switch (column.metadata?.RequiredLevel) {
664
- case 1:
665
- case 2: {
666
- return true;
667
- }
668
- default: {
669
- return false;
670
- }
671
- }
672
- }
673
- _isColumnSortable(column) {
674
- //sorting enabled by default
675
- if (this.getParameters().EnableSorting?.raw === false) {
676
- return false;
677
- }
678
- return !column.disableSorting;
679
- }
680
- _isColumnFilterable(column) {
681
- //filtering enabled by default
682
- if (this.getParameters().EnableFiltering?.raw === false) {
683
- return false;
684
- }
685
- if (!column.metadata?.SupportedFilterConditionOperators || column.metadata.SupportedFilterConditionOperators.length === 0) {
686
- return false;
687
- }
688
- return true;
689
- }
690
- _isColumnGroupable(column) {
691
- //grouping disabled by default
692
- if (this.getParameters().EnableGrouping?.raw !== true) {
693
- return false;
694
- }
695
- return !!column.metadata?.CanBeGrouped;
696
- }
697
- _isColumnEditable(column) {
698
- //editing disabled by default
699
- if (this.getParameters().EnableEditing?.raw !== true) {
700
- return false;
701
- }
702
- return !!column.metadata?.IsValidForUpdate;
703
- }
704
- _canColumnBeAggregated(column) {
705
- //aggregations disabled by default
706
- if (this.getParameters().EnableAggregation?.raw !== true) {
707
- return false;
708
- }
709
- if (!column.metadata?.SupportedAggregations || column.metadata.SupportedAggregations.length === 0) {
710
- return false;
711
- }
712
- return true;
713
- }
714
- _registerEventListeners() {
715
- this._dataset.addEventListener('onInitialDataLoaded', () => this.init());
716
- this._dataset.addEventListener('onRecordColumnValueChanged', (record) => this._autoSaveRecord(record));
717
- this._setGroupingInterceptor();
718
- }
719
- _autoSaveRecord(record) {
720
- if (this.isAutoSaveEnabled() && record.isDirty()) {
721
- record.save();
722
- }
723
- }
724
- //this method makes sure that the grouping is only applied to the first grouping column
725
- //this allows for nested grouping to work correctly
726
- _setGroupingInterceptor() {
727
- if (this.getGroupType() === 'flat') {
728
- return;
729
- }
730
- let originalGrouping = [];
731
- let originalAggregation = [];
732
- this._dataset.addEventListener('onBeforeNewDataLoaded', () => {
733
- originalGrouping = this._dataset.grouping.getGroupBys();
734
- originalAggregation = this._dataset.aggregation.getAggregations();
735
- if (originalGrouping.length > 1) {
736
- this._dataset.grouping.clear();
737
- const groupBy = originalGrouping[0];
738
- const column = this._dataset.getDataProvider().getColumnsMap()[groupBy.columnName];
739
- this._dataset.grouping.addGroupBy(originalGrouping[0], column.order);
740
- //clear all grouping aggregations except the first one
741
- for (let i = 1; i < originalGrouping.length; i++) {
742
- const column = this._dataset.getDataProvider().getColumnsMap()[originalGrouping[i].columnName];
743
- this._dataset.aggregation.removeAggregation(column?.aggregation?.alias);
744
- }
745
- }
746
- });
747
- this._dataset.addEventListener('onNewDataLoaded', () => {
748
- originalGrouping.map((group) => {
749
- const column = this._dataset.getDataProvider().getColumnsMap()[group.columnName];
750
- this._dataset.grouping.addGroupBy(group, column.order);
751
- });
752
- originalAggregation.map((aggr) => {
753
- this._dataset.aggregation.addAggregation(aggr);
754
- });
755
- });
756
- }
757
- get _dataset() {
758
- return this.getDataset();
759
- }
760
- get _sorting() {
761
- if (!this.__sorting) {
762
- throw new Error('Sorting is not initialized. Call init() method first.');
763
- }
764
- return this.__sorting;
765
- }
766
- get _filtering() {
767
- if (!this.__filtering) {
768
- throw new Error('Filtering is not initialized. Call init() method first.');
769
- }
770
- return this.__filtering;
771
- }
772
- get _totalRow() {
773
- if (!this.__totalRow) {
774
- throw new Error('Aggregation is not initialized. Call init() method first.');
775
- }
776
- return this.__totalRow;
777
- }
778
- get _grouping() {
779
- if (!this.__grouping) {
780
- throw new Error('Grouping is not initialized. Call init() method first.');
781
- }
782
- return this.__grouping;
783
- }
784
- }
785
-
786
- export { GridModel };
787
- //# sourceMappingURL=GridModel.js.map