@talxis/base-controls 1.2603.1 → 1.2604.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 (264) hide show
  1. package/dist/components/DatasetControl/EditColumns/ColumnSelector/ColumnSelector.js +4 -4
  2. package/dist/components/DatasetControl/EditColumns/ColumnSelector/ColumnSelector.js.map +1 -1
  3. package/dist/components/DatasetControl/EditColumns/Selector/Selector.js +2 -2
  4. package/dist/components/DatasetControl/EditColumns/Selector/Selector.js.map +1 -1
  5. package/dist/components/DatasetControl/EditColumns/useEditColumns.js +2 -2
  6. package/dist/components/DatasetControl/EditColumns/useEditColumns.js.map +1 -1
  7. package/dist/components/DatasetControl/Filtering/DatasetColumnFiltering.js +2 -2
  8. package/dist/components/DatasetControl/Filtering/DatasetColumnFiltering.js.map +1 -1
  9. package/dist/components/DatasetControl/Header/Header.js +1 -0
  10. package/dist/components/DatasetControl/Header/Header.js.map +1 -1
  11. package/dist/components/DatasetControl/interfaces.d.ts +1 -0
  12. package/dist/components/DatasetControl/useModel.js +3 -3
  13. package/dist/components/DatasetControl/useModel.js.map +1 -1
  14. package/dist/components/Grid/cells/cell/content/CellContent.js +8 -8
  15. package/dist/components/Grid/cells/cell/content/CellContent.js.map +1 -1
  16. package/dist/components/Grid/grid/GridModel.js +1 -1
  17. package/dist/components/Grid/grid/GridModel.js.map +1 -1
  18. package/dist/components/Grid/grid/ag-grid/AgGridModel.js +5 -8
  19. package/dist/components/Grid/grid/ag-grid/AgGridModel.js.map +1 -1
  20. package/dist/components/GridCellRenderer/ValueRenderer/FileRenderer/FileRenderer.js +3 -3
  21. package/dist/components/GridCellRenderer/ValueRenderer/FileRenderer/FileRenderer.js.map +1 -1
  22. package/dist/components/GridCellRenderer/properties/Property.js +3 -1
  23. package/dist/components/GridCellRenderer/properties/Property.js.map +1 -1
  24. package/dist/components/GridCellRenderer/useModel.js +3 -3
  25. package/dist/components/GridCellRenderer/useModel.js.map +1 -1
  26. package/dist/components/MultiSelectOptionSet/MultiSelectOptionSet.js +2 -2
  27. package/dist/components/MultiSelectOptionSet/MultiSelectOptionSet.js.map +1 -1
  28. package/dist/components/NestedControlRenderer/NestedControlRenderer.js +2 -2
  29. package/dist/components/NestedControlRenderer/NestedControlRenderer.js.map +1 -1
  30. package/dist/components/TaskGrid/TaskGrid.d.ts +12 -0
  31. package/dist/components/TaskGrid/TaskGrid.js +75 -0
  32. package/dist/components/TaskGrid/TaskGrid.js.map +1 -0
  33. package/dist/components/TaskGrid/TaskGridDatasetControl.d.ts +81 -0
  34. package/dist/components/TaskGrid/TaskGridDatasetControl.js +335 -0
  35. package/dist/components/TaskGrid/TaskGridDatasetControl.js.map +1 -0
  36. package/dist/components/TaskGrid/TaskGridDatasetControlFactory.d.ts +21 -0
  37. package/dist/components/TaskGrid/TaskGridDatasetControlFactory.js +55 -0
  38. package/dist/components/TaskGrid/TaskGridDatasetControlFactory.js.map +1 -0
  39. package/dist/components/TaskGrid/components/components.d.ts +8 -0
  40. package/dist/components/TaskGrid/components/components.js +11 -0
  41. package/dist/components/TaskGrid/components/components.js.map +1 -0
  42. package/dist/components/TaskGrid/components/grid/Grid.d.ts +2 -0
  43. package/dist/components/TaskGrid/components/grid/Grid.js +42 -0
  44. package/dist/components/TaskGrid/components/grid/Grid.js.map +1 -0
  45. package/dist/components/TaskGrid/components/grid/cell-headers/tree-expand-collapse-header/TreeExpandCollapseHeader.d.ts +2 -0
  46. package/dist/components/TaskGrid/components/grid/cell-headers/tree-expand-collapse-header/TreeExpandCollapseHeader.js +34 -0
  47. package/dist/components/TaskGrid/components/grid/cell-headers/tree-expand-collapse-header/TreeExpandCollapseHeader.js.map +1 -0
  48. package/dist/components/TaskGrid/components/grid/cell-headers/tree-expand-collapse-header/index.d.ts +1 -0
  49. package/dist/components/TaskGrid/components/grid/cell-headers/tree-expand-collapse-header/index.js +2 -0
  50. package/dist/components/TaskGrid/components/grid/cell-headers/tree-expand-collapse-header/index.js.map +1 -0
  51. package/dist/components/TaskGrid/components/grid/cell-headers/tree-expand-collapse-header/styles.d.ts +17 -0
  52. package/dist/components/TaskGrid/components/grid/cell-headers/tree-expand-collapse-header/styles.js +24 -0
  53. package/dist/components/TaskGrid/components/grid/cell-headers/tree-expand-collapse-header/styles.js.map +1 -0
  54. package/dist/components/TaskGrid/components/grid/cell-renderers/add-task-button/AddTaskButton.d.ts +2 -0
  55. package/dist/components/TaskGrid/components/grid/cell-renderers/add-task-button/AddTaskButton.js +81 -0
  56. package/dist/components/TaskGrid/components/grid/cell-renderers/add-task-button/AddTaskButton.js.map +1 -0
  57. package/dist/components/TaskGrid/components/grid/cell-renderers/add-task-button/index.d.ts +1 -0
  58. package/dist/components/TaskGrid/components/grid/cell-renderers/add-task-button/index.js +2 -0
  59. package/dist/components/TaskGrid/components/grid/cell-renderers/add-task-button/index.js.map +1 -0
  60. package/dist/components/TaskGrid/components/grid/cell-renderers/add-task-button/styles.d.ts +25 -0
  61. package/dist/components/TaskGrid/components/grid/cell-renderers/add-task-button/styles.js +32 -0
  62. package/dist/components/TaskGrid/components/grid/cell-renderers/add-task-button/styles.js.map +1 -0
  63. package/dist/components/TaskGrid/components/grid/cell-renderers/percent-complete/PercentComplete.d.ts +2 -0
  64. package/dist/components/TaskGrid/components/grid/cell-renderers/percent-complete/PercentComplete.js +22 -0
  65. package/dist/components/TaskGrid/components/grid/cell-renderers/percent-complete/PercentComplete.js.map +1 -0
  66. package/dist/components/TaskGrid/components/grid/cell-renderers/percent-complete/index.d.ts +1 -0
  67. package/dist/components/TaskGrid/components/grid/cell-renderers/percent-complete/index.js +2 -0
  68. package/dist/components/TaskGrid/components/grid/cell-renderers/percent-complete/index.js.map +1 -0
  69. package/dist/components/TaskGrid/components/grid/cell-renderers/percent-complete/styles.d.ts +23 -0
  70. package/dist/components/TaskGrid/components/grid/cell-renderers/percent-complete/styles.js +30 -0
  71. package/dist/components/TaskGrid/components/grid/cell-renderers/percent-complete/styles.js.map +1 -0
  72. package/dist/components/TaskGrid/components/grid/grid-customizer/GridCustomizer.d.ts +71 -0
  73. package/dist/components/TaskGrid/components/grid/grid-customizer/GridCustomizer.js +308 -0
  74. package/dist/components/TaskGrid/components/grid/grid-customizer/GridCustomizer.js.map +1 -0
  75. package/dist/components/TaskGrid/components/grid/grid-customizer/index.d.ts +1 -0
  76. package/dist/components/TaskGrid/components/grid/grid-customizer/index.js +2 -0
  77. package/dist/components/TaskGrid/components/grid/grid-customizer/index.js.map +1 -0
  78. package/dist/components/TaskGrid/components/grid/grid-drag-handler/GridDragHandler.d.ts +30 -0
  79. package/dist/components/TaskGrid/components/grid/grid-drag-handler/GridDragHandler.js +80 -0
  80. package/dist/components/TaskGrid/components/grid/grid-drag-handler/GridDragHandler.js.map +1 -0
  81. package/dist/components/TaskGrid/components/grid/grid-drag-handler/index.d.ts +1 -0
  82. package/dist/components/TaskGrid/components/grid/grid-drag-handler/index.js +2 -0
  83. package/dist/components/TaskGrid/components/grid/grid-drag-handler/index.js.map +1 -0
  84. package/dist/components/TaskGrid/components/grid/group-cell/GroupCell.d.ts +7 -0
  85. package/dist/components/TaskGrid/components/grid/group-cell/GroupCell.js +70 -0
  86. package/dist/components/TaskGrid/components/grid/group-cell/GroupCell.js.map +1 -0
  87. package/dist/components/TaskGrid/components/grid/group-cell/index.d.ts +1 -0
  88. package/dist/components/TaskGrid/components/grid/group-cell/index.js +2 -0
  89. package/dist/components/TaskGrid/components/grid/group-cell/index.js.map +1 -0
  90. package/dist/components/TaskGrid/components/grid/group-cell/styles.d.ts +35 -0
  91. package/dist/components/TaskGrid/components/grid/group-cell/styles.js +41 -0
  92. package/dist/components/TaskGrid/components/grid/group-cell/styles.js.map +1 -0
  93. package/dist/components/TaskGrid/components/grid/index.d.ts +3 -0
  94. package/dist/components/TaskGrid/components/grid/index.js +4 -0
  95. package/dist/components/TaskGrid/components/grid/index.js.map +1 -0
  96. package/dist/components/TaskGrid/components/grid/multi-record-selector/MultiRecordSelector.d.ts +17 -0
  97. package/dist/components/TaskGrid/components/grid/multi-record-selector/MultiRecordSelector.js +92 -0
  98. package/dist/components/TaskGrid/components/grid/multi-record-selector/MultiRecordSelector.js.map +1 -0
  99. package/dist/components/TaskGrid/components/grid/multi-record-selector/index.d.ts +2 -0
  100. package/dist/components/TaskGrid/components/grid/multi-record-selector/index.js +3 -0
  101. package/dist/components/TaskGrid/components/grid/multi-record-selector/index.js.map +1 -0
  102. package/dist/components/TaskGrid/components/grid/record-selector/RecordSelector.d.ts +10 -0
  103. package/dist/components/TaskGrid/components/grid/record-selector/RecordSelector.js +120 -0
  104. package/dist/components/TaskGrid/components/grid/record-selector/RecordSelector.js.map +1 -0
  105. package/dist/components/TaskGrid/components/grid/record-selector/index.d.ts +1 -0
  106. package/dist/components/TaskGrid/components/grid/record-selector/index.js +2 -0
  107. package/dist/components/TaskGrid/components/grid/record-selector/index.js.map +1 -0
  108. package/dist/components/TaskGrid/components/grid/record-selector/styles.d.ts +54 -0
  109. package/dist/components/TaskGrid/components/grid/record-selector/styles.js +60 -0
  110. package/dist/components/TaskGrid/components/grid/record-selector/styles.js.map +1 -0
  111. package/dist/components/TaskGrid/components/header/Header.d.ts +8 -0
  112. package/dist/components/TaskGrid/components/header/Header.js +148 -0
  113. package/dist/components/TaskGrid/components/header/Header.js.map +1 -0
  114. package/dist/components/TaskGrid/components/header/command-bar/CommandBar.d.ts +2 -0
  115. package/dist/components/TaskGrid/components/header/command-bar/CommandBar.js +9 -0
  116. package/dist/components/TaskGrid/components/header/command-bar/CommandBar.js.map +1 -0
  117. package/dist/components/TaskGrid/components/header/command-bar/index.d.ts +1 -0
  118. package/dist/components/TaskGrid/components/header/command-bar/index.js +2 -0
  119. package/dist/components/TaskGrid/components/header/command-bar/index.js.map +1 -0
  120. package/dist/components/TaskGrid/components/header/edit-columns/CommandBar/CommandBar.d.ts +2 -0
  121. package/dist/components/TaskGrid/components/header/edit-columns/CommandBar/CommandBar.js +23 -0
  122. package/dist/components/TaskGrid/components/header/edit-columns/CommandBar/CommandBar.js.map +1 -0
  123. package/dist/components/TaskGrid/components/header/edit-columns/EditColumns.d.ts +5 -0
  124. package/dist/components/TaskGrid/components/header/edit-columns/EditColumns.js +99 -0
  125. package/dist/components/TaskGrid/components/header/edit-columns/EditColumns.js.map +1 -0
  126. package/dist/components/TaskGrid/components/header/edit-columns/OptionCommandBar/OptionCommandBar.d.ts +2 -0
  127. package/dist/components/TaskGrid/components/header/edit-columns/OptionCommandBar/OptionCommandBar.js +51 -0
  128. package/dist/components/TaskGrid/components/header/edit-columns/OptionCommandBar/OptionCommandBar.js.map +1 -0
  129. package/dist/components/TaskGrid/components/header/edit-columns/OptionCommandBar/styles.d.ts +11 -0
  130. package/dist/components/TaskGrid/components/header/edit-columns/OptionCommandBar/styles.js +18 -0
  131. package/dist/components/TaskGrid/components/header/edit-columns/OptionCommandBar/styles.js.map +1 -0
  132. package/dist/components/TaskGrid/components/header/edit-columns/SortableItemCommandBar/SortableItemCommandBar.d.ts +2 -0
  133. package/dist/components/TaskGrid/components/header/edit-columns/SortableItemCommandBar/SortableItemCommandBar.js +27 -0
  134. package/dist/components/TaskGrid/components/header/edit-columns/SortableItemCommandBar/SortableItemCommandBar.js.map +1 -0
  135. package/dist/components/TaskGrid/components/header/edit-columns/styles.d.ts +8 -0
  136. package/dist/components/TaskGrid/components/header/edit-columns/styles.js +15 -0
  137. package/dist/components/TaskGrid/components/header/edit-columns/styles.js.map +1 -0
  138. package/dist/components/TaskGrid/components/header/edit-columns/useTaskGridEditColumns.d.ts +9 -0
  139. package/dist/components/TaskGrid/components/header/edit-columns/useTaskGridEditColumns.js +9 -0
  140. package/dist/components/TaskGrid/components/header/edit-columns/useTaskGridEditColumns.js.map +1 -0
  141. package/dist/components/TaskGrid/components/header/settings-callout/SettingsCallout.d.ts +1 -0
  142. package/dist/components/TaskGrid/components/header/settings-callout/SettingsCallout.js +24 -0
  143. package/dist/components/TaskGrid/components/header/settings-callout/SettingsCallout.js.map +1 -0
  144. package/dist/components/TaskGrid/components/header/settings-callout/index.d.ts +1 -0
  145. package/dist/components/TaskGrid/components/header/settings-callout/index.js +2 -0
  146. package/dist/components/TaskGrid/components/header/settings-callout/index.js.map +1 -0
  147. package/dist/components/TaskGrid/components/header/settings-callout/styles.d.ts +5 -0
  148. package/dist/components/TaskGrid/components/header/settings-callout/styles.js +12 -0
  149. package/dist/components/TaskGrid/components/header/settings-callout/styles.js.map +1 -0
  150. package/dist/components/TaskGrid/components/header/styles.d.ts +15 -0
  151. package/dist/components/TaskGrid/components/header/styles.js +22 -0
  152. package/dist/components/TaskGrid/components/header/styles.js.map +1 -0
  153. package/dist/components/TaskGrid/components/header/view-switcher/ViewSwitcher.d.ts +1 -0
  154. package/dist/components/TaskGrid/components/header/view-switcher/ViewSwitcher.js +104 -0
  155. package/dist/components/TaskGrid/components/header/view-switcher/ViewSwitcher.js.map +1 -0
  156. package/dist/components/TaskGrid/components/header/view-switcher/create-view-dialog/CreateViewDialog.d.ts +5 -0
  157. package/dist/components/TaskGrid/components/header/view-switcher/create-view-dialog/CreateViewDialog.js +66 -0
  158. package/dist/components/TaskGrid/components/header/view-switcher/create-view-dialog/CreateViewDialog.js.map +1 -0
  159. package/dist/components/TaskGrid/components/header/view-switcher/create-view-dialog/index.d.ts +1 -0
  160. package/dist/components/TaskGrid/components/header/view-switcher/create-view-dialog/index.js +2 -0
  161. package/dist/components/TaskGrid/components/header/view-switcher/create-view-dialog/index.js.map +1 -0
  162. package/dist/components/TaskGrid/components/header/view-switcher/index.d.ts +1 -0
  163. package/dist/components/TaskGrid/components/header/view-switcher/index.js +2 -0
  164. package/dist/components/TaskGrid/components/header/view-switcher/index.js.map +1 -0
  165. package/dist/components/TaskGrid/components/header/view-switcher/styles.d.ts +18 -0
  166. package/dist/components/TaskGrid/components/header/view-switcher/styles.js +24 -0
  167. package/dist/components/TaskGrid/components/header/view-switcher/styles.js.map +1 -0
  168. package/dist/components/TaskGrid/components/header/view-switcher/view-manager/ViewManageDialog.d.ts +5 -0
  169. package/dist/components/TaskGrid/components/header/view-switcher/view-manager/ViewManageDialog.js +54 -0
  170. package/dist/components/TaskGrid/components/header/view-switcher/view-manager/ViewManageDialog.js.map +1 -0
  171. package/dist/components/TaskGrid/components/header/view-switcher/view-manager/ViewManager.d.ts +18 -0
  172. package/dist/components/TaskGrid/components/header/view-switcher/view-manager/ViewManager.js +95 -0
  173. package/dist/components/TaskGrid/components/header/view-switcher/view-manager/ViewManager.js.map +1 -0
  174. package/dist/components/TaskGrid/components/header/view-switcher/view-manager/index.d.ts +1 -0
  175. package/dist/components/TaskGrid/components/header/view-switcher/view-manager/index.js +2 -0
  176. package/dist/components/TaskGrid/components/header/view-switcher/view-manager/index.js.map +1 -0
  177. package/dist/components/TaskGrid/components/header/view-switcher/view-manager/styles.d.ts +18 -0
  178. package/dist/components/TaskGrid/components/header/view-switcher/view-manager/styles.js +25 -0
  179. package/dist/components/TaskGrid/components/header/view-switcher/view-manager/styles.js.map +1 -0
  180. package/dist/components/TaskGrid/components/index.d.ts +1 -0
  181. package/dist/components/TaskGrid/components/index.js +2 -0
  182. package/dist/components/TaskGrid/components/index.js.map +1 -0
  183. package/dist/components/TaskGrid/components/skeleton/Skeleton.d.ts +4 -0
  184. package/dist/components/TaskGrid/components/skeleton/Skeleton.js +32 -0
  185. package/dist/components/TaskGrid/components/skeleton/Skeleton.js.map +1 -0
  186. package/dist/components/TaskGrid/components/skeleton/index.d.ts +1 -0
  187. package/dist/components/TaskGrid/components/skeleton/index.js +2 -0
  188. package/dist/components/TaskGrid/components/skeleton/index.js.map +1 -0
  189. package/dist/components/TaskGrid/components/skeleton/styles.d.ts +92 -0
  190. package/dist/components/TaskGrid/components/skeleton/styles.js +100 -0
  191. package/dist/components/TaskGrid/components/skeleton/styles.js.map +1 -0
  192. package/dist/components/TaskGrid/context.d.ts +22 -0
  193. package/dist/components/TaskGrid/context.js +53 -0
  194. package/dist/components/TaskGrid/context.js.map +1 -0
  195. package/dist/components/TaskGrid/data-providers/custom-columns-data-provider/CustomColumnsDataProvider.d.ts +50 -0
  196. package/dist/components/TaskGrid/data-providers/custom-columns-data-provider/CustomColumnsDataProvider.js +45 -0
  197. package/dist/components/TaskGrid/data-providers/custom-columns-data-provider/CustomColumnsDataProvider.js.map +1 -0
  198. package/dist/components/TaskGrid/data-providers/custom-columns-data-provider/TalxisCustomColumnsDataProviderStrategy.d.ts +33 -0
  199. package/dist/components/TaskGrid/data-providers/custom-columns-data-provider/TalxisCustomColumnsDataProviderStrategy.js +227 -0
  200. package/dist/components/TaskGrid/data-providers/custom-columns-data-provider/TalxisCustomColumnsDataProviderStrategy.js.map +1 -0
  201. package/dist/components/TaskGrid/data-providers/custom-columns-data-provider/index.d.ts +2 -0
  202. package/dist/components/TaskGrid/data-providers/custom-columns-data-provider/index.js +3 -0
  203. package/dist/components/TaskGrid/data-providers/custom-columns-data-provider/index.js.map +1 -0
  204. package/dist/components/TaskGrid/data-providers/index.d.ts +3 -0
  205. package/dist/components/TaskGrid/data-providers/index.js +6 -0
  206. package/dist/components/TaskGrid/data-providers/index.js.map +1 -0
  207. package/dist/components/TaskGrid/data-providers/saved-query-data-provider/SavedQueryDataProvider.d.ts +125 -0
  208. package/dist/components/TaskGrid/data-providers/saved-query-data-provider/SavedQueryDataProvider.js +192 -0
  209. package/dist/components/TaskGrid/data-providers/saved-query-data-provider/SavedQueryDataProvider.js.map +1 -0
  210. package/dist/components/TaskGrid/data-providers/saved-query-data-provider/TalxisSavedQueryDataProvider.d.ts +21 -0
  211. package/dist/components/TaskGrid/data-providers/saved-query-data-provider/TalxisSavedQueryDataProvider.js +97 -0
  212. package/dist/components/TaskGrid/data-providers/saved-query-data-provider/TalxisSavedQueryDataProvider.js.map +1 -0
  213. package/dist/components/TaskGrid/data-providers/saved-query-data-provider/index.d.ts +2 -0
  214. package/dist/components/TaskGrid/data-providers/saved-query-data-provider/index.js +3 -0
  215. package/dist/components/TaskGrid/data-providers/saved-query-data-provider/index.js.map +1 -0
  216. package/dist/components/TaskGrid/data-providers/task-data-provider/TaskDataProvider.d.ts +213 -0
  217. package/dist/components/TaskGrid/data-providers/task-data-provider/TaskDataProvider.js +313 -0
  218. package/dist/components/TaskGrid/data-providers/task-data-provider/TaskDataProvider.js.map +1 -0
  219. package/dist/components/TaskGrid/data-providers/task-data-provider/index.d.ts +1 -0
  220. package/dist/components/TaskGrid/data-providers/task-data-provider/index.js +2 -0
  221. package/dist/components/TaskGrid/data-providers/task-data-provider/index.js.map +1 -0
  222. package/dist/components/TaskGrid/data-providers/task-data-provider/record-tree/RecordTree.d.ts +55 -0
  223. package/dist/components/TaskGrid/data-providers/task-data-provider/record-tree/RecordTree.js +304 -0
  224. package/dist/components/TaskGrid/data-providers/task-data-provider/record-tree/RecordTree.js.map +1 -0
  225. package/dist/components/TaskGrid/data-providers/task-data-provider/record-tree/index.d.ts +1 -0
  226. package/dist/components/TaskGrid/data-providers/task-data-provider/record-tree/index.js +2 -0
  227. package/dist/components/TaskGrid/data-providers/task-data-provider/record-tree/index.js.map +1 -0
  228. package/dist/components/TaskGrid/data-providers/task-data-provider/record-tree/patchDataBuilderPrepare.d.ts +5 -0
  229. package/dist/components/TaskGrid/data-providers/task-data-provider/record-tree/patchDataBuilderPrepare.js +16 -0
  230. package/dist/components/TaskGrid/data-providers/task-data-provider/record-tree/patchDataBuilderPrepare.js.map +1 -0
  231. package/dist/components/TaskGrid/index.d.ts +3 -0
  232. package/dist/components/TaskGrid/index.js +3 -0
  233. package/dist/components/TaskGrid/index.js.map +1 -0
  234. package/dist/components/TaskGrid/interfaces.d.ts +161 -0
  235. package/dist/components/TaskGrid/labels.d.ts +92 -0
  236. package/dist/components/TaskGrid/labels.js +94 -0
  237. package/dist/components/TaskGrid/labels.js.map +1 -0
  238. package/dist/components/TaskGrid/styles.d.ts +65 -0
  239. package/dist/components/TaskGrid/styles.js +72 -0
  240. package/dist/components/TaskGrid/styles.js.map +1 -0
  241. package/dist/components/index.d.ts +1 -0
  242. package/dist/components/index.js +2 -0
  243. package/dist/components/index.js.map +1 -1
  244. package/dist/hooks/useIsMounted.js +3 -3
  245. package/dist/hooks/useIsMounted.js.map +1 -1
  246. package/dist/hooks/useShouldRemount.js +2 -2
  247. package/dist/hooks/useShouldRemount.js.map +1 -1
  248. package/dist/index.d.ts +640 -34
  249. package/dist/index.js +3 -0
  250. package/dist/index.js.map +1 -1
  251. package/dist/utils/dataset/adapters/VirtualDatasetAdapter.js +11 -3
  252. package/dist/utils/dataset/adapters/VirtualDatasetAdapter.js.map +1 -1
  253. package/dist/utils/dataset-control/DatasetControl.js +4 -1
  254. package/dist/utils/dataset-control/DatasetControl.js.map +1 -1
  255. package/dist/utils/error-handling/ErrorHelper.d.ts +7 -0
  256. package/dist/utils/error-handling/ErrorHelper.js +40 -0
  257. package/dist/utils/error-handling/ErrorHelper.js.map +1 -0
  258. package/dist/utils/error-handling/index.d.ts +1 -0
  259. package/dist/utils/error-handling/index.js +2 -0
  260. package/dist/utils/error-handling/index.js.map +1 -0
  261. package/dist/utils/index.d.ts +1 -0
  262. package/dist/utils/index.js +1 -0
  263. package/dist/utils/index.js.map +1 -1
  264. package/package.json +5 -2
package/dist/index.d.ts CHANGED
@@ -1,11 +1,13 @@
1
1
  /// <reference types="@types/powerapps-component-framework" />
2
2
  /// <reference types="react" />
3
3
  import { ITheme, ICommandBarProps, ITextFieldProps, ICalloutProps as ICalloutProps$1, IDatePickerProps, ITagPickerProps, IComboBoxProps } from '@talxis/react-components';
4
- import { DeepPartial, DataType, IDataset, IEventEmitter, IColumn, IAvailableRelatedColumn, IInterceptor, ICommand, AggregationFunction, IRecord, Dataset, IDataProvider, IRawRecord } from '@talxis/client-libraries';
4
+ import { DeepPartial, DataType, IDataset, IEventEmitter, IColumn, IAvailableRelatedColumn, IInterceptor, ICommand, AggregationFunction, IRecord, IRawRecord, IAvailableColumnOptions, IRecordSaveOperationResult, IDataProvider, Dataset } from '@talxis/client-libraries';
5
5
  import { ITheme as ITheme$1, ThemeProviderProps, IShimmerProps, IButtonProps, IMessageBarProps, ITextProps, ILabelProps, IIconProps, ILinkProps, IImageProps, ISpinnerProps, IMessageBar, IToggleProps } from '@fluentui/react';
6
6
  import * as react_jsx_runtime from 'react/jsx-runtime';
7
- import React$1 from 'react';
7
+ import * as React$1 from 'react';
8
+ import React__default from 'react';
8
9
  import { AgGridReactProps } from '@ag-grid-community/react';
10
+ import { ColDef, RowClassRules, GridApi } from '@ag-grid-community/core';
9
11
 
10
12
  type ExcludedProps = Pick<ComponentFramework.PropertyTypes.Property, 'formatted'>;
11
13
  interface IProperty extends Omit<Partial<ComponentFramework.PropertyTypes.Property>, keyof ExcludedProps | 'attributes'> {
@@ -108,7 +110,7 @@ declare const useControlThemeGenerator: (primaryColor: string, backgroundColor:
108
110
 
109
111
  interface IThemeWrapper extends ThemeProviderProps {
110
112
  fluentDesignLanguage?: ComponentFramework.FluentDesignState;
111
- children?: React$1.ReactNode;
113
+ children?: React__default.ReactNode;
112
114
  }
113
115
  declare const ThemeWrapper: (props: IThemeWrapper) => react_jsx_runtime.JSX.Element;
114
116
 
@@ -568,82 +570,83 @@ interface IDatasetControlProps extends Omit<IControl<IDatasetControlParameters,
568
570
  parameters: IDatasetControlParameters;
569
571
  context: ComponentFramework.Context<any, any>;
570
572
  state: ComponentFramework.Dictionary;
571
- }) => React$1.ReactElement<IControl<any, any, any, any>>;
573
+ }) => React__default.ReactElement<IControl<any, any, any, any>>;
572
574
  }
573
575
  interface IDatasetControlParameters extends IGridParameters {
574
576
  EnableEditColumns?: Omit<ITwoOptionsProperty, 'attributes'>;
575
577
  ClientApiWebresourceName?: IStringProperty;
576
578
  ClientApiFunctionName?: IStringProperty;
579
+ DestroyDatasetOnUnmount?: Omit<ITwoOptionsProperty, 'attributes'>;
577
580
  }
578
581
  interface IDatasetControlComponentProps {
579
- onRender: (props: IComponentProps$1, defaultRender: (props: IComponentProps$1) => React$1.ReactElement) => React$1.ReactElement;
582
+ onRender: (props: IComponentProps$1, defaultRender: (props: IComponentProps$1) => React__default.ReactElement) => React__default.ReactElement;
580
583
  }
581
584
  interface IComponentProps$1 {
582
585
  container: ThemeProviderProps;
583
- onRenderControlContainer: (props: IControlContainerProps, defaultRender: (props: IControlContainerProps) => React$1.ReactElement) => React$1.ReactElement;
584
- onRenderHeader: (props: IHeaderProps, defaultRender: (props: IHeaderProps) => React$1.ReactElement) => React$1.ReactElement;
585
- onRenderFooter: (props: IFooterProps, defaultRender: (props: IFooterProps) => React$1.ReactElement) => React$1.ReactElement;
586
+ onRenderControlContainer: (props: IControlContainerProps, defaultRender: (props: IControlContainerProps) => React__default.ReactElement) => React__default.ReactElement;
587
+ onRenderHeader: (props: IHeaderProps, defaultRender: (props: IHeaderProps) => React__default.ReactElement) => React__default.ReactElement;
588
+ onRenderFooter: (props: IFooterProps, defaultRender: (props: IFooterProps) => React__default.ReactElement) => React__default.ReactElement;
586
589
  }
587
590
  interface IControlContainerProps {
588
- controlContainerProps: React$1.HTMLAttributes<HTMLDivElement>;
591
+ controlContainerProps: React__default.HTMLAttributes<HTMLDivElement>;
589
592
  }
590
593
  interface IFooterProps {
591
- footerContainerProps: React$1.HTMLAttributes<HTMLDivElement>;
592
- onRenderPagination: (props: IPaginationProps, defaultRender: (props: IPaginationProps) => React$1.ReactElement) => React$1.ReactElement;
594
+ footerContainerProps: React__default.HTMLAttributes<HTMLDivElement>;
595
+ onRenderPagination: (props: IPaginationProps, defaultRender: (props: IPaginationProps) => React__default.ReactElement) => React__default.ReactElement;
593
596
  }
594
597
  interface IPaginationProps {
595
- paginationContainerProps: React$1.HTMLAttributes<HTMLDivElement>;
598
+ paginationContainerProps: React__default.HTMLAttributes<HTMLDivElement>;
596
599
  commandBarProps: ICommandBarProps;
597
600
  pageSizeSwitcherProps: IButtonProps;
598
- onRenderCommandBar: (props: ICommandBarProps, defaultRender: (props: ICommandBarProps) => React$1.ReactElement) => React$1.ReactElement;
599
- onRenderPageSizeSwitcher: (props: IButtonProps, defaultRender: (props: IButtonProps) => React$1.ReactElement) => React$1.ReactElement;
601
+ onRenderCommandBar: (props: ICommandBarProps, defaultRender: (props: ICommandBarProps) => React__default.ReactElement) => React__default.ReactElement;
602
+ onRenderPageSizeSwitcher: (props: IButtonProps, defaultRender: (props: IButtonProps) => React__default.ReactElement) => React__default.ReactElement;
600
603
  }
601
604
  interface IHeaderProps {
602
- headerContainerProps: React$1.HTMLAttributes<HTMLDivElement>;
603
- onRenderRibbonQuickFindWrapper: (props: IRibbonQuickFindWrapperProps, defaultRender: (props: IRibbonQuickFindWrapperProps) => React$1.ReactElement) => React$1.ReactElement;
604
- onRenderErrorMessageBar: (props: IErrorMessageBarProps, defaultRender: (props: IErrorMessageBarProps) => React$1.ReactElement) => React$1.ReactElement;
605
- onRenderUnsavedChangesMessageBar: (props: IUnsavedChangesMesssageBarProps, defaultRender: (props: IUnsavedChangesMesssageBarProps) => React$1.ReactElement) => React$1.ReactElement;
605
+ headerContainerProps: React__default.HTMLAttributes<HTMLDivElement>;
606
+ onRenderRibbonQuickFindWrapper: (props: IRibbonQuickFindWrapperProps, defaultRender: (props: IRibbonQuickFindWrapperProps) => React__default.ReactElement) => React__default.ReactElement;
607
+ onRenderErrorMessageBar: (props: IErrorMessageBarProps, defaultRender: (props: IErrorMessageBarProps) => React__default.ReactElement) => React__default.ReactElement;
608
+ onRenderUnsavedChangesMessageBar: (props: IUnsavedChangesMesssageBarProps, defaultRender: (props: IUnsavedChangesMesssageBarProps) => React__default.ReactElement) => React__default.ReactElement;
606
609
  }
607
610
  interface IRibbonQuickFindWrapperProps {
608
- ribbonQuickFindContainerProps: React$1.HTMLAttributes<HTMLDivElement>;
611
+ ribbonQuickFindContainerProps: React__default.HTMLAttributes<HTMLDivElement>;
609
612
  isRibbonVisible: boolean;
610
613
  isQuickFindVisible: boolean;
611
614
  isViewSwitcherVisible: boolean;
612
615
  isEditColumnsVisible: boolean;
613
616
  isEditFiltersVisible: boolean;
614
- onRenderQuickFind: (props: IQuickFindProps, defaultRender: (props: IQuickFindProps) => React$1.ReactElement) => React$1.ReactElement;
617
+ onRenderQuickFind: (props: IQuickFindProps, defaultRender: (props: IQuickFindProps) => React__default.ReactElement) => React__default.ReactElement;
615
618
  onRenderRibbon: IRibbonComponentProps['onRender'];
616
619
  }
617
620
  interface IErrorMessageBarProps {
618
621
  messageBarProps: IMessageBarProps;
619
- onRenderMessageBar: (props: IMessageBarProps, defaultRender: (props: IMessageBarProps) => React$1.ReactElement) => React$1.ReactElement;
622
+ onRenderMessageBar: (props: IMessageBarProps, defaultRender: (props: IMessageBarProps) => React__default.ReactElement) => React__default.ReactElement;
620
623
  }
621
624
  interface IUnsavedChangesMesssageBarProps {
622
625
  messageBarProps: IMessageBarProps;
623
- onRenderSaveBtn: (props: IButtonProps, defaultRender: (props: IButtonProps) => React$1.ReactElement) => React$1.ReactElement;
624
- onRenderDiscardBtn: (props: IButtonProps, defaultRender: (props: IButtonProps) => React$1.ReactElement) => React$1.ReactElement;
626
+ onRenderSaveBtn: (props: IButtonProps, defaultRender: (props: IButtonProps) => React__default.ReactElement) => React__default.ReactElement;
627
+ onRenderDiscardBtn: (props: IButtonProps, defaultRender: (props: IButtonProps) => React__default.ReactElement) => React__default.ReactElement;
625
628
  }
626
- interface IColumnList extends React$1.HTMLAttributes<HTMLDivElement> {
629
+ interface IColumnList extends React__default.HTMLAttributes<HTMLDivElement> {
627
630
  columns: IColumn[];
628
631
  onRenderColumnLabel: (props: ITextProps & {
629
632
  key: string;
630
- }, defaultRender: (props: ITextProps) => React$1.ReactElement) => React$1.ReactElement;
633
+ }, defaultRender: (props: ITextProps) => React__default.ReactElement) => React__default.ReactElement;
631
634
  }
632
635
  interface ICalloutProps extends ICalloutProps$1 {
633
636
  isVisible: boolean;
634
637
  isLikeQuery: boolean;
635
- onRenderLikeOperatorWarning: (props: ITextProps, defaultRender: (props: ITextProps) => React$1.ReactElement) => React$1.ReactElement;
636
- onRenderBegingsWithFilterInfo: (props: ITextProps, defaultRender: (props: ITextProps) => React$1.ReactElement) => React$1.ReactElement;
637
- onRenderColumnsList: (props: IColumnList, defaultRender: (props: IColumnList) => React$1.ReactElement) => React$1.ReactElement;
638
+ onRenderLikeOperatorWarning: (props: ITextProps, defaultRender: (props: ITextProps) => React__default.ReactElement) => React__default.ReactElement;
639
+ onRenderBegingsWithFilterInfo: (props: ITextProps, defaultRender: (props: ITextProps) => React__default.ReactElement) => React__default.ReactElement;
640
+ onRenderColumnsList: (props: IColumnList, defaultRender: (props: IColumnList) => React__default.ReactElement) => React__default.ReactElement;
638
641
  }
639
- interface ICalloutContainer extends React$1.HTMLAttributes<HTMLDivElement> {
642
+ interface ICalloutContainer extends React__default.HTMLAttributes<HTMLDivElement> {
640
643
  isVisible: boolean;
641
- onRenderCallout: (props: ICalloutProps, defaultRender: (props: ICalloutProps) => React$1.ReactElement) => React$1.ReactElement;
644
+ onRenderCallout: (props: ICalloutProps, defaultRender: (props: ICalloutProps) => React__default.ReactElement) => React__default.ReactElement;
642
645
  }
643
646
  interface IQuickFindProps {
644
- containerProps: React$1.HTMLAttributes<HTMLDivElement>;
645
- onRenderTextField: (props: ITextFieldProps, defaultRender: (props: ITextFieldProps) => React$1.ReactElement) => React$1.ReactElement;
646
- onRenderCalloutContainer: (props: ICalloutContainer, defaultRender: (props: ICalloutContainer) => React$1.ReactElement) => React$1.ReactElement;
647
+ containerProps: React__default.HTMLAttributes<HTMLDivElement>;
648
+ onRenderTextField: (props: ITextFieldProps, defaultRender: (props: ITextFieldProps) => React__default.ReactElement) => React__default.ReactElement;
649
+ onRenderCalloutContainer: (props: ICalloutContainer, defaultRender: (props: ICalloutContainer) => React__default.ReactElement) => React__default.ReactElement;
647
650
  }
648
651
 
649
652
  declare const DatasetControl: (props: IDatasetControlProps) => react_jsx_runtime.JSX.Element;
@@ -1335,6 +1338,601 @@ interface IContainerProps {
1335
1338
 
1336
1339
  declare const GridInlineRibbon: (props: IGridInlineRibbon) => JSX.Element;
1337
1340
 
1341
+ interface ITaskGridLabels {
1342
+ name: string;
1343
+ no: string;
1344
+ yes: string;
1345
+ ok: string;
1346
+ confirm: string;
1347
+ confirmation: string;
1348
+ myViews: string;
1349
+ systemViews: string;
1350
+ saveAsNew: string;
1351
+ saveExisting: string;
1352
+ manageViews: string;
1353
+ deleteView: string;
1354
+ cancel: string;
1355
+ save: string;
1356
+ loading: string;
1357
+ reordering: string;
1358
+ search: string;
1359
+ editColumns: string;
1360
+ allTasks: string;
1361
+ new: string;
1362
+ bulkEdit: string;
1363
+ settings: string;
1364
+ 'reorderingTaskDialog.text.children': string;
1365
+ 'reorderingTaskDialog.text.above': string;
1366
+ 'reorderingTaskDialog.text.below': string;
1367
+ 'reorderingTaskTemplateDialog.text.children': string;
1368
+ 'reorderingTaskTemplateDialog.text.topLevel': string;
1369
+ 'reorderingTaskDialog.manyChildrenWarning': string;
1370
+ creatingTemplateFromTasks: string;
1371
+ creatingTasksFromTemplate: string;
1372
+ templateCreatedSuccessfully: string;
1373
+ description: string;
1374
+ noTaskTemplates: string;
1375
+ addChild: string;
1376
+ addCustomColumn: string;
1377
+ confirmColumnDelete: string;
1378
+ confirmColumnEdit: string;
1379
+ loadingTemplates: string;
1380
+ taskFromTemplate: string;
1381
+ templateFromTask: string;
1382
+ loadingMilestones: string;
1383
+ chooseExisting: string;
1384
+ noMilestones: string;
1385
+ loadingContracts: string;
1386
+ createFromContract: string;
1387
+ noContracts: string;
1388
+ createManually: string;
1389
+ newRecord: string;
1390
+ filterByKeyword: string;
1391
+ deleteSelected: string;
1392
+ showHierarchy: string;
1393
+ 'confirmDialog.deleteSelectedRows.text': string;
1394
+ topLevel: string;
1395
+ canNotDeleteCompleted: string;
1396
+ canNotDeletedRecordsWithChild: string;
1397
+ canNotEditCompletedTask: string;
1398
+ selectMaximumOneTask: string;
1399
+ hideInactiveTasks: string;
1400
+ successfulOperationDialogTitle: string;
1401
+ warningDialogTitle: string;
1402
+ informationDialogTitle: string;
1403
+ couldNotFindRecord: string;
1404
+ wrongBaseRecord: string;
1405
+ fillRecordId: string;
1406
+ fillEntityName: string;
1407
+ fillFetchXml: string;
1408
+ myTemplates: string;
1409
+ publicTemplates: string;
1410
+ updatingTasks: string;
1411
+ deletingTasks: string;
1412
+ deletingTasksError: string;
1413
+ noRecordsFound: string;
1414
+ unexpectedErrorOccurred: string;
1415
+ deletingUserQueriesError: string;
1416
+ }
1417
+ interface ILocalizationService<T> {
1418
+ getLocalizedString: (key: keyof T, variables?: {
1419
+ [key: string]: string;
1420
+ }) => string;
1421
+ }
1422
+ declare class LocalizationService<T extends {
1423
+ [K in keyof T]: string;
1424
+ }> implements ILocalizationService<T> {
1425
+ private _getLabels;
1426
+ private _liquidEngine;
1427
+ constructor(getLabels: () => T);
1428
+ getLocalizedString(key: keyof T, variables?: {
1429
+ [key: string]: string;
1430
+ }): string;
1431
+ }
1432
+
1433
+ interface ISkeletonProps {
1434
+ height: string;
1435
+ }
1436
+
1437
+ interface ITaskGridComponents {
1438
+ onRenderSkeleton: (props: ISkeletonProps) => JSX.Element;
1439
+ onRenderCommandBar: (props: ICommandBarProps) => JSX.Element;
1440
+ }
1441
+
1442
+ interface ITreeNode {
1443
+ directChildren: IRecord[];
1444
+ allChildren: IRecord[];
1445
+ pathIds: string[];
1446
+ pathStrings: string[];
1447
+ index: number;
1448
+ parent?: IRecord;
1449
+ }
1450
+ interface IRecordTree {
1451
+ build(): Map<string, ITreeNode>;
1452
+ getNodeMap(): Map<string, ITreeNode>;
1453
+ getNode(recordId: string | null): ITreeNode;
1454
+ getTotalCount(): number;
1455
+ isFlat(): boolean;
1456
+ hasChildren(recordId: string): boolean;
1457
+ getMatchingRecords(): {
1458
+ [recordId: string]: IRecord;
1459
+ };
1460
+ getSortedIds(): string[];
1461
+ }
1462
+
1463
+ interface IFailedRecord {
1464
+ id: string;
1465
+ error: any;
1466
+ }
1467
+ type IDeleteTasksResult = {
1468
+ success: true;
1469
+ deletedTaskIds: string[];
1470
+ } | {
1471
+ success: false;
1472
+ deletedTaskIds: string[];
1473
+ errors: IFailedRecord[];
1474
+ };
1475
+ type IEditTasksResult = {
1476
+ success: true;
1477
+ updatedRecords: IRawRecord[];
1478
+ } | {
1479
+ success: false;
1480
+ updatedRecords: IRawRecord[];
1481
+ errors: IFailedRecord[];
1482
+ };
1483
+ /** Strategy interface that handles all data access and mutation operations for tasks. */
1484
+ interface ITaskDataProviderStrategy {
1485
+ /**
1486
+ * Called once on first load. Must return the initial columns, raw task records, and provider metadata.
1487
+ * An empty `ids` array instructs the strategy to fetch all records.
1488
+ */
1489
+ onGetRawRecords: (ids: string[]) => Promise<IRawRecord[]>;
1490
+ /** Called once on first load. Must return the initial columns, raw task records, and entity metadata. */
1491
+ onInitialize: (provider: ITaskDataProvider) => Promise<{
1492
+ columns: IColumn[];
1493
+ rawData: IRawRecord[];
1494
+ metadata: any;
1495
+ }>;
1496
+ /** Returns all columns available for display in the grid (both native and custom). */
1497
+ onGetAvailableColumns: (options?: IAvailableColumnOptions) => Promise<IColumn[]>;
1498
+ /** Returns linked-entity columns that can be used for filtering and sorting. */
1499
+ onGetAvailableRelatedColumns: () => Promise<IAvailableRelatedColumn[]>;
1500
+ /** Returns the attribute names that are searched when the user types in the quick-find input. */
1501
+ onGetQuickFindColumns: () => string[];
1502
+ /** @returns The created task raw record, or `null` if the operation was cancelled by the user. Throws on unexpected failure. */
1503
+ onCreateTask(parentTaskId?: string): Promise<IRawRecord | null>;
1504
+ /**
1505
+ * @returns Result indicating which tasks were deleted and which failed.
1506
+ * `success: true` means all tasks were deleted. `success: false` means some or all failed.
1507
+ * Throws on unexpected failure.
1508
+ */
1509
+ onDeleteTasks(taskIds: string[]): Promise<IDeleteTasksResult | null>;
1510
+ /** @returns The created template raw record, or `null` if the operation was cancelled by the user. Throws on unexpected failure. */
1511
+ onCreateTemplateFromTask(taskId: string): Promise<IRawRecord | null>;
1512
+ /** @returns The created task raw records, or `null` if the operation was cancelled by the user. Throws on unexpected failure. */
1513
+ onCreateTasksFromTemplate(templateId: string, parentTaskId?: string): Promise<IRawRecord[] | null>;
1514
+ /**
1515
+ * @returns Result indicating which tasks were updated and which failed, or `null` if the operation was cancelled by the user.
1516
+ * `success: true` means all tasks were updated. `success: false` means some or all failed.
1517
+ * Throws on unexpected failure.
1518
+ */
1519
+ onEditTasks(taskIds: string[]): Promise<IEditTasksResult | null>;
1520
+ /** Moves a task to a new position relative to another task. Returns the updated raw records, or `null` on cancellation. */
1521
+ onMoveTask(movingTaskId: string, movingToTaskId: string, position: 'above' | 'below' | 'child'): Promise<IRawRecord[] | null>;
1522
+ /** Persists inline cell edits for the given record. */
1523
+ onRecordSave(record: IRecord): Promise<IRecordSaveOperationResult>;
1524
+ /** Returns whether the given task record is currently active (non-completed). */
1525
+ onIsRecordActive(recordId: string): boolean;
1526
+ /** Opens the record detail view. Called when a user clicks a non-subject cell. */
1527
+ onOpenDatasetItem(entityReference: ComponentFramework.EntityReference, context?: {
1528
+ columnName?: string;
1529
+ }): void;
1530
+ /** Return `false` to disable task creation (hide the *New* button). Defaults to `true`. */
1531
+ onIsTaskAddingEnabled?(): boolean;
1532
+ /** Return `false` to disable inline cell editing. Defaults to `true`. */
1533
+ onIsTaskEditingEnabled?(): boolean;
1534
+ /** Return `false` to disable task deletion (hide the *Delete* button). Defaults to `true`. */
1535
+ onIsTaskDeletingEnabled?(): boolean;
1536
+ /** When provided, the task tree is scoped to the subtree of the returned task id. */
1537
+ onGetRootTaskId?: () => string | undefined;
1538
+ }
1539
+ interface ITaskDataProviderEventListener {
1540
+ onBeforeTemplateCreated: (taskId: string) => void;
1541
+ onAfterTemplateCreated: (record: IRawRecord | null) => void;
1542
+ onBeforeTasksDeleted: (taskIds: string[]) => void;
1543
+ onAfterTasksDeleted: (result: IDeleteTasksResult | null) => void;
1544
+ onBeforeTasksCreated: (parentId?: string) => void;
1545
+ onAfterTasksCreated: (records: IRawRecord[] | null, parentId?: string) => void;
1546
+ onBeforeTaskMoved: () => void;
1547
+ onAfterTaskMoved: (movingFromTaskId: string, movingToTaskId: string, position: 'above' | 'below' | 'child') => void;
1548
+ onBeforeTasksEdited: (taskIds: string[]) => void;
1549
+ onTaskDataUpdated: (data: IRawRecord[]) => void;
1550
+ onAfterTasksEdited: (result: IEditTasksResult | null) => void;
1551
+ onRecordTreeUpdated: (updatedParentIds: (string | undefined)[]) => void;
1552
+ onError: (error: any, message: string) => void;
1553
+ }
1554
+ /** Extended data provider interface for task records. Adds task-specific operations on top of `IDataProvider`. */
1555
+ interface ITaskDataProvider extends IDataProvider {
1556
+ /** EventEmitter for task lifecycle events (create, delete, edit, move, template, error). */
1557
+ taskEvents: IEventEmitter<ITaskDataProviderEventListener>;
1558
+ /** Returns the native column name mapping. */
1559
+ getNativeColumns(): INativeColumns;
1560
+ /** Returns all records regardless of current tree filtering or paging. */
1561
+ getAllRecords(): IRecord[];
1562
+ /** Returns the underlying strategy cast to the given type. */
1563
+ getStrategy<T extends ITaskDataProviderStrategy>(): T;
1564
+ /** Fetches raw task records by id via the strategy. Pass an empty array to fetch all. */
1565
+ fetchRawRecords(ids: string[]): Promise<IRawRecord[]>;
1566
+ /** Returns the current hierarchical record tree built from loaded task data. */
1567
+ getRecordTree(): IRecordTree;
1568
+ /** Applies updated raw record data in-place and rebuilds the tree if hierarchy changed. */
1569
+ updateTaskData(newData: IRawRecord[]): void;
1570
+ /**
1571
+ * @returns Result indicating which tasks were updated and which failed, or `null` if the operation was cancelled by the user.
1572
+ * `success: true` means all tasks were updated. `success: false` means some or all failed — `updatedRecords` still contains the records that succeeded.
1573
+ * Throws on unexpected failure.
1574
+ */
1575
+ editTasks(taskIds: string[]): Promise<IEditTasksResult | null>;
1576
+ /** @returns The created task raw record, or `null` if the operation was cancelled by the user. Throws on unexpected failure. */
1577
+ createTask(parentTaskId?: string): Promise<IRawRecord | null>;
1578
+ /**
1579
+ * @returns Result indicating which tasks were deleted and which failed.
1580
+ * `success: true` means all tasks were deleted. `success: false` means some or all failed — `deletedTaskIds` still contains the ids that succeeded.
1581
+ * Throws on unexpected failure before any deletes could be attempted.
1582
+ */
1583
+ deleteTasks(taskIds: string[]): Promise<IDeleteTasksResult | null>;
1584
+ /** @returns The created template raw record, or `null` if the operation was cancelled by the user. Throws on unexpected failure. */
1585
+ createTemplateFromTask(taskId: string): Promise<IRawRecord | null>;
1586
+ /** @returns The created task raw records, or `null` if the operation was cancelled by the user. Throws on unexpected failure. */
1587
+ createTasksFromTemplate(templateId: string, parentId?: string): Promise<IRawRecord[] | null>;
1588
+ /** Returns `true` when the grid is displaying a flat list instead of a tree hierarchy. */
1589
+ isFlatListEnabled(): boolean;
1590
+ /** Returns `true` when task creation is allowed (from `ITaskDataProviderStrategy.onIsTaskAddingEnabled`). */
1591
+ isTaskAddingEnabled(): boolean;
1592
+ /** Returns `true` when inline cell editing is allowed (from `ITaskDataProviderStrategy.onIsTaskEditingEnabled`). */
1593
+ isTaskEditingEnabled(): boolean;
1594
+ /** Returns `true` when task deletion is allowed (from `ITaskDataProviderStrategy.onIsTaskDeletingEnabled`). */
1595
+ isTaskDeletingEnabled(): boolean;
1596
+ /** Returns the root task id when the tree is scoped to a subtree, or `null` for a full tree. */
1597
+ getRootTaskId: () => string | null;
1598
+ /** Moves a task to a position relative to another task. Returns the updated raw records, or `null` on cancellation. */
1599
+ moveTask(movingTaskId: string, movingToTaskId: string, position: 'above' | 'below' | 'child'): Promise<IRawRecord[] | null>;
1600
+ }
1601
+
1602
+ /** Strategy interface for deep customization of the AG Grid instance inside TaskGrid. */
1603
+ interface IGridCustomizerStrategy {
1604
+ /** Called once after the grid is ready. Use to call `customizer.registerExpressionDecorator` or perform other one-time setup. */
1605
+ onInitialize: (customizer: IGridCustomizer) => void;
1606
+ /** Receives the computed column definitions and may return a modified array. */
1607
+ onGetColumnDefinitions?: (columnDefs: ColDef<IRecord>[]) => ColDef<IRecord>[];
1608
+ /** Receives the default row class rules map and may return an extended or overridden version. */
1609
+ onGetRowClassRules?: (rules: RowClassRules<IRecord>) => RowClassRules<IRecord>;
1610
+ /** Return a custom cell renderer component for the given column definition, or `undefined` to use the default. */
1611
+ onGetCellRenderer?: (colDef: ColDef<IRecord>) => any;
1612
+ /** Return a custom cell editor component for the given column definition, or `undefined` to use the default. */
1613
+ onGetCellEditor?: (colDef: ColDef<IRecord>) => any;
1614
+ /** Receives the raw AG Grid `GridApi` instance, useful if the strategy needs to retain a reference. */
1615
+ onRetrieveGridApi?: (gridApi: GridApi<IRecord>) => void;
1616
+ }
1617
+ /** Provides access to the AG Grid instance and the TaskGrid control to code running inside `IGridCustomizerStrategy`. */
1618
+ interface IGridCustomizer {
1619
+ /** Returns the underlying AG Grid `GridApi`. */
1620
+ getGridApi(): GridApi<IRecord>;
1621
+ /** Returns the `ITaskDataProvider` that backs the grid data layer. */
1622
+ getTaskDataProvider(): ITaskDataProvider;
1623
+ /** Returns the `ITaskGridDatasetControl` runtime control interface. */
1624
+ getDatasetControl(): ITaskGridDatasetControl;
1625
+ /**
1626
+ * Registers a column-expression decorator only when the given column exists in the current columns map.
1627
+ * Prevents errors when registering decorators for columns that may not be present in all views.
1628
+ */
1629
+ registerExpressionDecorator(columnName: string, registrator: () => void): void;
1630
+ }
1631
+
1632
+ /** Strategy interface for managing user-defined (dynamic) column definitions. */
1633
+ interface ICustomColumnsStrategy {
1634
+ /** @returns The created column name, or `null` if the operation was cancelled by the user. Throws on unexpected failure. */
1635
+ onCreateColumn: () => Promise<string | null>;
1636
+ /** @returns The deleted column name, or `null` if the operation was cancelled by the user. Throws on unexpected failure. */
1637
+ onDeleteColumn: (columnName: string) => Promise<string | null>;
1638
+ /** @returns The updated column name, or `null` if the operation was cancelled by the user. Throws on unexpected failure. */
1639
+ onUpdateColumn: (columnName: string) => Promise<string | null>;
1640
+ /** Fetches/reloads all custom column definitions and returns the resolved `IColumn[]`. */
1641
+ onRefresh: () => Promise<IColumn[]>;
1642
+ /** Returns the currently loaded custom columns synchronously without a network fetch. */
1643
+ onGetColumns: () => IColumn[];
1644
+ }
1645
+ /** Manages the lifecycle of dynamic (user-defined) columns and wraps the strategy with error handling. */
1646
+ interface ICustomColumnsDataProvider {
1647
+ /** EventEmitter for error events raised by column operations. */
1648
+ events: IEventEmitter<ICustomColumnsDataProviderEvents>;
1649
+ /** @returns The created column name, or `null` if the operation was cancelled by the user. Throws on unexpected failure. */
1650
+ createColumn: () => Promise<string | null>;
1651
+ /** @returns The deleted column name, or `null` if the operation was cancelled by the user. Throws on unexpected failure. */
1652
+ deleteColumn: (columnName: string) => Promise<string | null>;
1653
+ /** @returns The updated column name, or `null` if the operation was cancelled by the user. Throws on unexpected failure. */
1654
+ updateColumn: (columnName: string) => Promise<string | null>;
1655
+ /** Refreshes the list of custom columns from the underlying strategy. */
1656
+ refresh: () => Promise<IColumn[]>;
1657
+ /** Returns the currently cached list of custom columns. */
1658
+ getColumns: () => IColumn[];
1659
+ /** Returns the underlying strategy cast to the given type for strategy-specific operations. */
1660
+ getStrategy<T extends ICustomColumnsStrategy>(): T;
1661
+ /** Returns `true` when the given column name is a custom (dynamic) column. */
1662
+ isCustomColumn: (columnName: string) => boolean;
1663
+ destroy: () => void;
1664
+ }
1665
+ interface ICustomColumnsDataProviderEvents {
1666
+ onError: (error: any, message: string) => void;
1667
+ }
1668
+
1669
+ interface ICreateUserQueryParams {
1670
+ name: string;
1671
+ provider: ITaskDataProvider;
1672
+ description?: string;
1673
+ }
1674
+ interface ISavedQueryDataProviderEvents {
1675
+ onBeforeUserQueriesDeleted: (queryIds: string[]) => void;
1676
+ onAfterUserQueriesDeleted: (result: IDeletedUserQueriesResult) => void;
1677
+ onBeforeUserQueryUpdated: (queryId: string) => void;
1678
+ onAfterUserQueryUpdated: (result: string | null) => void;
1679
+ onBeforeUserQueryCreated: (queryName: string) => void;
1680
+ onAfterUserQueryCreated: (result: string | null) => void;
1681
+ onError: (error: any, message: string) => void;
1682
+ }
1683
+ type IDeletedUserQueriesResult = {
1684
+ success: true;
1685
+ deletedQueryIds: string[];
1686
+ } | {
1687
+ success: false;
1688
+ deletedQueryIds: string[];
1689
+ errors: {
1690
+ queryId: string;
1691
+ error: any;
1692
+ }[];
1693
+ };
1694
+ interface ISavedQuery extends ISavedQueryMetadata {
1695
+ id: string;
1696
+ name: string;
1697
+ }
1698
+ interface ISavedQueryMetadata {
1699
+ columns: IColumn[];
1700
+ sorting?: ComponentFramework.PropertyHelper.DataSetApi.SortStatus[];
1701
+ filtering?: ComponentFramework.PropertyHelper.DataSetApi.FilterExpression;
1702
+ linking?: ComponentFramework.PropertyHelper.DataSetApi.LinkEntityExposedExpression[];
1703
+ isFlatListEnabled?: boolean;
1704
+ searchQuery?: string | undefined;
1705
+ }
1706
+ /** Strategy interface for loading and persisting system and user-defined saved views (queries). */
1707
+ interface ISavedQueryStrategy {
1708
+ /** Returns the built-in (non-deletable) views. At least one system query must be returned. */
1709
+ onGetSystemQueries: () => Promise<ISavedQuery[]>;
1710
+ /** Returns views saved by the current user. */
1711
+ onGetUserQueries: () => Promise<ISavedQuery[]>;
1712
+ /** Deletes the specified user views. Returns a per-query success/failure result. */
1713
+ onDeleteUserQueries: (queryIds: string[]) => Promise<IDeletedUserQueriesResult>;
1714
+ /** @returns The updated query id, or `null` if the operation was cancelled by the user. Throws on unexpected failure. */
1715
+ onUpdateUserQuery: (currentQuery: ISavedQuery) => Promise<string | null>;
1716
+ /** @returns The created query id, or `null` if the operation was cancelled by the user. Throws on unexpected failure. */
1717
+ onCreateUserQuery: (newQuery: {
1718
+ name: string;
1719
+ description?: string;
1720
+ }, currentQuery: ISavedQuery) => Promise<string | null>;
1721
+ }
1722
+ /** Manages system and user-defined saved views and exposes view lifecycle operations. */
1723
+ interface ISavedQueryDataProvider {
1724
+ /** EventEmitter for saved-query lifecycle events (create, update, delete, errors). */
1725
+ queryEvents: IEventEmitter<ISavedQueryDataProviderEvents>;
1726
+ /** Returns the full list of non-deletable system views. */
1727
+ getSystemQueries: () => ISavedQuery[];
1728
+ /** Returns the full list of user-created views. */
1729
+ getUserQueries: () => ISavedQuery[];
1730
+ /** Returns the currently active saved query. Throws if `refresh` has not been called yet. */
1731
+ getCurrentQuery: () => ISavedQuery;
1732
+ /** Looks up a query by id across system and user queries. Throws if not found. */
1733
+ getSavedQuery(id: string): ISavedQuery;
1734
+ /** @returns The created query id, or `null` if the operation was cancelled by the user. Throws on unexpected failure. */
1735
+ createUserQuery: (params: ICreateUserQueryParams) => Promise<string | null>;
1736
+ /** Returns `true` when the given query id belongs to a user view (as opposed to a system view). */
1737
+ isUserQuery: (queryId: string) => boolean;
1738
+ /** @returns The updated query id, or `null` if the operation was cancelled by the user. Throws on unexpected failure. */
1739
+ updateUserQuery: (provider: ITaskDataProvider) => Promise<string | null>;
1740
+ /** Deletes the specified user views. Returns a per-query success/failure result. */
1741
+ deleteUserQueries: (queryIds: string[]) => Promise<IDeletedUserQueriesResult>;
1742
+ /** Fetches system and user queries from the strategy and sets the initial active query. */
1743
+ refresh: () => Promise<void>;
1744
+ /** Ensures all required native columns (subject, parentId, stackRank, path, stateCode) are present in the provided columns array. */
1745
+ includeRequiredColumns: (columns: IColumn[]) => void;
1746
+ /** Enforces column constraints: subject is never hidden; path column is always read-only. */
1747
+ harmonizeColumns: (columns: IColumn[]) => void;
1748
+ destroy: () => void;
1749
+ }
1750
+
1751
+ interface ITaskGridState {
1752
+ savedQuery?: Partial<ISavedQuery> & {
1753
+ id: string;
1754
+ linking?: ComponentFramework.PropertyHelper.DataSetApi.LinkEntityExposedExpression[];
1755
+ };
1756
+ }
1757
+
1758
+ interface ITaskGridDatasetControlParameters {
1759
+ dataset: IDataset;
1760
+ state: ITaskGridState;
1761
+ savedQueryDataProvider: ISavedQueryDataProvider;
1762
+ taskGridDescriptor: ITaskGridDescriptor;
1763
+ localizationService: ILocalizationService<ITaskGridLabels>;
1764
+ templateDataProvider?: IDataProvider;
1765
+ customColumnsDataProvider?: ICustomColumnsDataProvider;
1766
+ onGetPcfContext: () => ComponentFramework.Context<any>;
1767
+ }
1768
+ /** Maps functional column roles to the physical attribute (field) names in the consuming entity's schema. */
1769
+ interface INativeColumns {
1770
+ /** Lookup attribute pointing to the parent task — drives the tree hierarchy. */
1771
+ parentId: string;
1772
+ /** Display name / title attribute. Always pinned left; never hidden by the control. */
1773
+ subject: string;
1774
+ /** Numeric ordering attribute. Used for default sort and drag-and-drop reordering. */
1775
+ stackRank: string;
1776
+ /** Active/inactive status attribute. Used by the "Hide inactive tasks" filter. */
1777
+ stateCode: string;
1778
+ /** Virtual breadcrumb column. Its value is computed automatically from ancestor names and is never editable. */
1779
+ path: string;
1780
+ /** (Optional) Numeric completion percentage. When present, rendered with a progress-bar cell renderer. */
1781
+ percentComplete?: string;
1782
+ }
1783
+ /** Feature flags that control which UI elements are rendered in the grid header and ribbon. */
1784
+ interface ITaskGridParameters {
1785
+ /** Explicit CSS height for the grid container. When omitted the grid sizes to fit its parent. */
1786
+ height?: string;
1787
+ /** Show drag handles and allow rows to be dragged for reordering. Defaults to `true`. Automatically suppressed when flat-list mode is active or sorting by a non-stack-rank column. */
1788
+ enableRowDragging?: boolean;
1789
+ /** Show the *Edit Columns* button in the ribbon. Defaults to `true`. */
1790
+ enableEditColumns?: boolean;
1791
+ /** Show the search / quick-find input. Defaults to `true`. */
1792
+ enableQuickFind?: boolean;
1793
+ /** Show the view-switcher dropdown. Defaults to `true`. */
1794
+ enableViewSwitcher?: boolean;
1795
+ /** Show the *Show hierarchy* toggle. Defaults to `true`. */
1796
+ enableShowHierarchyToggle?: boolean;
1797
+ /** Show the *Hide inactive tasks* toggle. Defaults to `true`. */
1798
+ enableHideInactiveTasksToggle?: boolean;
1799
+ /** Show the personal/system scope selector inside the Edit Columns panel. Defaults to `true`. */
1800
+ enableEditColumnsScopeSelector?: boolean;
1801
+ /** Enable user queries. Defaults to `true`. */
1802
+ enableUserQueries?: boolean;
1803
+ /** Show the query manager. Defaults to `true`. */
1804
+ enableQueryManager?: boolean;
1805
+ /** Show the "Save as new" button in the query manager. Defaults to `true`. */
1806
+ enableSaveAsNewQuery?: boolean;
1807
+ /** Show the "Save changes" button in the query manager. Defaults to `true`. */
1808
+ enableSaveChangesToQuery?: boolean;
1809
+ enableCustomColumnCreation?: boolean;
1810
+ enableCustomColumnEditing?: boolean;
1811
+ enableCustomColumnDeletion?: boolean;
1812
+ }
1813
+ /** Available data providers injected into `ITaskDataProviderStrategy` at construction time. */
1814
+ interface ITaskStrategyDeps {
1815
+ /** Present when the consumer provided `onCreateCustomColumnsStrategy`. */
1816
+ customColumnsDataProvider?: ICustomColumnsDataProvider;
1817
+ /** Present when the consumer provided `onCreateTemplateDataProvider`. */
1818
+ templateDataProvider?: IDataProvider;
1819
+ }
1820
+ /**
1821
+ * Primary configuration entry point for `TaskGridDatasetControlFactory`.
1822
+ * Implement this interface to wire the TaskGrid to your business logic.
1823
+ */
1824
+ interface ITaskGridDescriptor {
1825
+ /** Returns the mapping of logical column roles to physical schema attribute names. */
1826
+ onGetNativeColumns: () => INativeColumns;
1827
+ /** Returns the strategy responsible for loading system/user views and persisting view changes. */
1828
+ onCreateSavedQueryStrategy: () => ISavedQueryStrategy;
1829
+ /** Returns the strategy that handles all task CRUD, move, template and record-save operations. */
1830
+ onCreateTaskStrategy: (deps: ITaskStrategyDeps) => ITaskDataProviderStrategy;
1831
+ /** Returns an `IDataProvider` that drives the user-query creation/update dialog. */
1832
+ onCreateUserQueryDataProvider: () => IDataProvider;
1833
+ /** (Optional) Returns the strategy for managing dynamic (user-defined) columns. When provided, the custom-columns feature is enabled. */
1834
+ onCreateCustomColumnsStrategy?: () => ICustomColumnsStrategy | undefined;
1835
+ /** (Optional) Returns an `IDataProvider` for task templates. When provided, the template-based task creation feature is enabled. */
1836
+ onCreateTemplateDataProvider?: () => IDataProvider | undefined;
1837
+ /** (Optional) Returns a strategy for deep customization of AG Grid column definitions, renderers, editors, and row class rules. */
1838
+ onCreateGridCustomizerStrategy?: () => IGridCustomizerStrategy | undefined;
1839
+ /** (Optional) Returns the AG Grid Enterprise license key. */
1840
+ onGetAgGridLicenseKey?: () => string;
1841
+ /** (Optional) Returns a stable DOM/control identifier. Auto-generated as a UUID when omitted. */
1842
+ onGetControlId?: () => string;
1843
+ /** (Optional) Async hook called before any data provider is created. Use for lazy loading or authentication. */
1844
+ onLoadDependencies?: () => Promise<void>;
1845
+ /** (Optional) Returns UI feature flags. All flags default to `true` when omitted. */
1846
+ onGetGridParameters?: () => ITaskGridParameters;
1847
+ }
1848
+ /** Runtime interface for the TaskGrid control returned by `TaskGridDatasetControlFactory.createInstance`. */
1849
+ interface ITaskGridDatasetControl extends IDatasetControl {
1850
+ /**
1851
+ * Returns the template `IDataProvider`.
1852
+ * @throws If templating was not enabled (no `onCreateTemplateDataProvider` in the descriptor).
1853
+ */
1854
+ getTemplateDataProvider: () => IDataProvider;
1855
+ /** Returns the saved-query data provider managing system and user views. */
1856
+ getSavedQueryDataProvider: () => ISavedQueryDataProvider;
1857
+ /**
1858
+ * Returns the custom-columns data provider.
1859
+ * @throws If custom columns were not enabled (no `onCreateCustomColumnsStrategy` in the descriptor).
1860
+ */
1861
+ getCustomColumnsDataProvider: () => ICustomColumnsDataProvider;
1862
+ /** Creates a fresh `IDataProvider` for the user-query creation/update dialog. */
1863
+ createUserQueryDataProvider: () => IDataProvider;
1864
+ /** Returns the native column name mapping supplied by the descriptor. */
1865
+ getNativeColumns: () => INativeColumns;
1866
+ /** Returns the underlying `ITaskDataProvider` that backs the AG Grid data layer. */
1867
+ getDataProvider: () => ITaskDataProvider;
1868
+ /** Returns the localization service used to resolve all UI label strings. */
1869
+ getLocalizationService: () => ILocalizationService<ITaskGridLabels>;
1870
+ /** Returns `true` when inactive tasks (stateCode = 1) are currently visible in the grid. */
1871
+ getInactiveTasksVisibility: () => boolean;
1872
+ /** Switches between hierarchical (tree) and flat-list view modes. Triggers a column re-sort. */
1873
+ toggleFlatList: (enabled: boolean) => void;
1874
+ /** Adds or removes the `stateCode = 0` filter to show/hide inactive tasks. */
1875
+ toggleHideInactiveTasks: (hide: boolean) => void;
1876
+ /**
1877
+ * Switches the active saved view and triggers a full control remount so the new view's
1878
+ * columns, filters, and sorting are applied from a clean state.
1879
+ */
1880
+ changeSavedQuery: (queryId: string) => void;
1881
+ /** Returns the stable control identifier string. */
1882
+ getControlId: () => string;
1883
+ /** Whether row drag-and-drop reordering is enabled (from `ITaskGridParameters.enableRowDragging`). */
1884
+ isRowDraggingEnabled: () => boolean;
1885
+ /** Whether the *Show hierarchy* toggle is visible (from `ITaskGridParameters.enableShowHierarchyToggle`). */
1886
+ isShowHierarchyToggleVisible: () => boolean;
1887
+ /** Whether the *Hide inactive tasks* toggle is visible (from `ITaskGridParameters.enableHideInactiveTasksToggle`). */
1888
+ isHideInactiveTasksToggleVisible: () => boolean;
1889
+ /** Whether the scope selector is shown inside the Edit Columns panel (from `ITaskGridParameters.enableEditColumnsScopeSelector`). */
1890
+ isEditColumnsScopeSelectorEnabled: () => boolean;
1891
+ /** Returns `true` when a template data provider was supplied through the descriptor. */
1892
+ isTemplatingEnabled: () => boolean;
1893
+ /** Returns `true` when a custom columns strategy was supplied through the descriptor. */
1894
+ isCustomColumnsEnabled: () => boolean;
1895
+ /** Whether the view manager is enabled (from `ITaskGridParameters.enableQueryManager`). */
1896
+ isViewManagerEnabled: () => boolean;
1897
+ /** Whether the "Save as new" button is enabled (from `ITaskGridParameters.enableSaveAsNewQuery`). */
1898
+ isSaveQueryAsNewEnabled: () => boolean;
1899
+ /** Whether the "Save changes" button is enabled (from `ITaskGridParameters.enableSaveChangesToQuery`). */
1900
+ isSaveQueryChangesEnabled: () => boolean;
1901
+ /** Whether custom column creation is enabled (from `ITaskGridParameters.enableCustomColumnCreation`). */
1902
+ isCustomColumnCreationEnabled: () => boolean;
1903
+ /** Whether custom column editing is enabled (from `ITaskGridParameters.enableCustomColumnEditing`). */
1904
+ isCustomColumnEditingEnabled: () => boolean;
1905
+ /** Whether custom column deletion is enabled (from `ITaskGridParameters.enableCustomColumnDeletion`). */
1906
+ isCustomColumnDeletionEnabled: () => boolean;
1907
+ /** Whether user queries are enabled (from `ITaskGridParameters.enableUserQueries`). */
1908
+ isUserQueriesFeatureEnabled: () => boolean;
1909
+ }
1910
+
1911
+ interface ITaskGridProps {
1912
+ pcfContext: ComponentFramework.Context<any, any>;
1913
+ taskGridDescriptor: ITaskGridDescriptor;
1914
+ labels?: Partial<ITaskGridLabels>;
1915
+ components?: Partial<ITaskGridComponents>;
1916
+ }
1917
+ declare const TaskGrid: (props: ITaskGridProps) => react_jsx_runtime.JSX.Element;
1918
+
1919
+ declare const PcfContext: React$1.Context<ComponentFramework.Context<any, ComponentFramework.IEventBag> | null>;
1920
+ declare const DatasetControlContext: React$1.Context<ITaskGridDatasetControl | null>;
1921
+ declare const TaskDataProviderContext: React$1.Context<ITaskDataProvider | null>;
1922
+ declare const TaskGridComponentsContext: React$1.Context<ITaskGridComponents>;
1923
+ declare const TaskGridDescriptorContext: React$1.Context<ITaskGridDescriptor | null>;
1924
+ declare const RootElementIdContext: React$1.Context<string>;
1925
+ declare const LocalizationServiceContext: React$1.Context<LocalizationService<ITaskGridLabels> | null>;
1926
+ declare const AgGridLicenseKeyContext: React$1.Context<string | null>;
1927
+ declare const useTaskGridDescriptor: () => ITaskGridDescriptor;
1928
+ declare const useLocalizationService: () => LocalizationService<ITaskGridLabels>;
1929
+ declare const useRootElementId: () => string;
1930
+ declare const useDatasetControl: () => ITaskGridDatasetControl;
1931
+ declare const useTaskGridComponents: () => ITaskGridComponents;
1932
+ declare const useTaskDataProvider: () => ITaskDataProvider;
1933
+ declare const usePcfContext: () => ComponentFramework.Context<any, ComponentFramework.IEventBag>;
1934
+ declare const useAgGridLicenseKey: () => string | null;
1935
+
1338
1936
  interface IInputs$1 {
1339
1937
  Grid: ComponentFramework.PropertyTypes.DataSet;
1340
1938
  RibbonGroupingDataset?: ComponentFramework.PropertyTypes.DataSet;
@@ -1481,6 +2079,14 @@ declare class VirtualDatasetAdapter {
1481
2079
  private _getFullTabStyles;
1482
2080
  }
1483
2081
 
2082
+ declare class ErrorHelper {
2083
+ static executeWithErrorHandling<T>(options: {
2084
+ operation: () => Promise<T>;
2085
+ onError?: (error: any, message: string) => void;
2086
+ }): Promise<T>;
2087
+ static getMessageFromError(error: any): string;
2088
+ }
2089
+
1484
2090
  interface IOutputs$1 {
1485
2091
  [key: string]: any;
1486
2092
  }
@@ -1591,4 +2197,4 @@ declare const useIsMounted: () => () => boolean;
1591
2197
 
1592
2198
  declare const useIsLoading: <TArgs extends unknown[], TResult>(fn: (...args: TArgs) => Promise<TResult>) => [boolean, (...args: TArgs) => Promise<TResult>];
1593
2199
 
1594
- export { BaseControl, BaseControls, ControlTheme, DatasetAdapter, DatasetControl, DateTime, Decimal, Duration, Grid, GridCellRenderer, GridInlineRibbon, IBinding, IColorfulOptionSetValueRendererProps, IColorfulOptionValueRendererProps, IComponentProps$1 as IComponentProps, IContext, IControl, IControlController, IControlStates, IDatasetControlComponentProps, IDatasetControlParameters, IDatasetControlProps, IDateTime, IDateTimeOutputs, IDateTimeParameters, IDateTimeProperty, IDecimal, IDecimalNumberProperty, IDecimalOutputs, IDecimalParameters, IDefaultTranslations, IDuration, IDurationOutputs, IDurationParameters, IEntity, IFileProperty, IFileRendererProps, IFluentDesignState, IFooterProps, IGrid, IGridCellRenderer, IGridCellRendererComponentProps, IGridCellRendererParameters, IGridInlineRibbon, IGridOutputs, IGridParameters, IHeaderProps, ILayout, ILookup, ILookupOutputs, ILookupParameters, ILookupProperty, IMetadata, IMultiSelectOptionSet, IMultiSelectOptionSetOutputs, IMultiSelectOptionSetParameters, IMultiSelectOptionSetProperty, INestedControlRenderer, INestedControlRendererComponentProps, INestedControlRendererParameters, IOptionSet, IOptionSetOutputs, IOptionSetParameters, IOptionSetProperty, IOutputs, IPaginationProps, IParameters, IProperty, IQuickFindProps, IRibbonParameters, IRibbonQuickFindWrapperProps, IStringProperty, ITextField, ITextFieldOutputs, ITextFieldParameters, ITranslation, ITranslations, ITwoOptions, ITwoOptionsOutputs, ITwoOptionsParameters, ITwoOptionsProperty, IValueRendererProps, IWholeNumberProperty, Lookup, MultiSelectOptionSet, NestedControlRenderer, OptionSet, TextField, ThemeWrapper, TwoOptions, VirtualDatasetAdapter, useControl, useControlLabels, useControlSizing, useControlTheme, useControlThemeGenerator, useDateTime, useEventEmitter, useFocusIn, useInputBasedControl, useIsLoading, useIsMounted, useLookup, useMouseOver };
2200
+ export { AgGridLicenseKeyContext, BaseControl, BaseControls, ControlTheme, DatasetAdapter, DatasetControl, DatasetControlContext, DateTime, Decimal, Duration, ErrorHelper, Grid, GridCellRenderer, GridInlineRibbon, IBinding, IColorfulOptionSetValueRendererProps, IColorfulOptionValueRendererProps, IComponentProps$1 as IComponentProps, IContext, IControl, IControlController, IControlStates, IDatasetControlComponentProps, IDatasetControlParameters, IDatasetControlProps, IDateTime, IDateTimeOutputs, IDateTimeParameters, IDateTimeProperty, IDecimal, IDecimalNumberProperty, IDecimalOutputs, IDecimalParameters, IDefaultTranslations, IDuration, IDurationOutputs, IDurationParameters, IEntity, IFileProperty, IFileRendererProps, IFluentDesignState, IFooterProps, IGrid, IGridCellRenderer, IGridCellRendererComponentProps, IGridCellRendererParameters, IGridInlineRibbon, IGridOutputs, IGridParameters, IHeaderProps, ILayout, ILookup, ILookupOutputs, ILookupParameters, ILookupProperty, IMetadata, IMultiSelectOptionSet, IMultiSelectOptionSetOutputs, IMultiSelectOptionSetParameters, IMultiSelectOptionSetProperty, INativeColumns, INestedControlRenderer, INestedControlRendererComponentProps, INestedControlRendererParameters, IOptionSet, IOptionSetOutputs, IOptionSetParameters, IOptionSetProperty, IOutputs, IPaginationProps, IParameters, IProperty, IQuickFindProps, IRibbonParameters, IRibbonQuickFindWrapperProps, IStringProperty, ITaskGridDatasetControl, ITaskGridDatasetControlParameters, ITaskGridDescriptor, ITaskGridParameters, ITaskStrategyDeps, ITextField, ITextFieldOutputs, ITextFieldParameters, ITranslation, ITranslations, ITwoOptions, ITwoOptionsOutputs, ITwoOptionsParameters, ITwoOptionsProperty, IValueRendererProps, IWholeNumberProperty, LocalizationServiceContext, Lookup, MultiSelectOptionSet, NestedControlRenderer, OptionSet, PcfContext, RootElementIdContext, TaskDataProviderContext, TaskGrid, TaskGridComponentsContext, TaskGridDescriptorContext, TextField, ThemeWrapper, TwoOptions, VirtualDatasetAdapter, useAgGridLicenseKey, useControl, useControlLabels, useControlSizing, useControlTheme, useControlThemeGenerator, useDatasetControl, useDateTime, useEventEmitter, useFocusIn, useInputBasedControl, useIsLoading, useIsMounted, useLocalizationService, useLookup, useMouseOver, usePcfContext, useRootElementId, useTaskDataProvider, useTaskGridComponents, useTaskGridDescriptor };