@talxis/base-controls 1.2509.6 → 1.2512.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 (502) hide show
  1. package/dist/components/DatasetControl/DatasetControl.d.ts +2 -2
  2. package/dist/components/DatasetControl/DatasetControl.js +78 -57
  3. package/dist/components/DatasetControl/DatasetControl.js.map +1 -1
  4. package/dist/components/DatasetControl/DatasetControlModel.d.ts +16 -0
  5. package/dist/components/DatasetControl/DatasetControlModel.js +32 -0
  6. package/dist/components/DatasetControl/DatasetControlModel.js.map +1 -0
  7. package/dist/components/DatasetControl/Filtering/DatasetColumnFiltering.d.ts +3 -0
  8. package/dist/components/DatasetControl/Filtering/DatasetColumnFiltering.js +166 -0
  9. package/dist/components/DatasetControl/Filtering/DatasetColumnFiltering.js.map +1 -0
  10. package/dist/components/DatasetControl/Filtering/DatasetColumnFilteringModel.d.ts +15 -0
  11. package/dist/components/DatasetControl/Filtering/DatasetColumnFilteringModel.js +59 -0
  12. package/dist/components/DatasetControl/Filtering/DatasetColumnFilteringModel.js.map +1 -0
  13. package/dist/components/DatasetControl/Filtering/interfaces.d.ts +31 -0
  14. package/dist/components/DatasetControl/Filtering/styles.d.ts +16 -0
  15. package/dist/components/DatasetControl/Filtering/styles.js +23 -0
  16. package/dist/components/DatasetControl/Filtering/styles.js.map +1 -0
  17. package/dist/components/DatasetControl/Filtering/translations.d.ts +154 -0
  18. package/dist/components/DatasetControl/Filtering/translations.js +43 -0
  19. package/dist/components/DatasetControl/Filtering/translations.js.map +1 -0
  20. package/dist/components/DatasetControl/Header/Header.d.ts +5 -0
  21. package/dist/components/DatasetControl/Header/Header.js +79 -0
  22. package/dist/components/DatasetControl/Header/Header.js.map +1 -0
  23. package/dist/components/DatasetControl/Header/styles.d.ts +19 -0
  24. package/dist/components/DatasetControl/Header/styles.js +26 -0
  25. package/dist/components/DatasetControl/Header/styles.js.map +1 -0
  26. package/dist/components/DatasetControl/Pagination/Pagination.d.ts +5 -0
  27. package/dist/components/DatasetControl/Pagination/Pagination.js +93 -0
  28. package/dist/components/DatasetControl/Pagination/Pagination.js.map +1 -0
  29. package/dist/components/DatasetControl/Pagination/PaginationModel.d.ts +10 -0
  30. package/dist/components/DatasetControl/Pagination/PaginationModel.js +45 -0
  31. package/dist/components/DatasetControl/Pagination/PaginationModel.js.map +1 -0
  32. package/dist/components/DatasetControl/Pagination/styles.d.ts +23 -0
  33. package/dist/components/DatasetControl/Pagination/styles.js +29 -0
  34. package/dist/components/DatasetControl/Pagination/styles.js.map +1 -0
  35. package/dist/components/DatasetControl/QuickFind/QuickFind.d.ts +4 -12
  36. package/dist/components/DatasetControl/QuickFind/QuickFind.js +37 -32
  37. package/dist/components/DatasetControl/QuickFind/QuickFind.js.map +1 -1
  38. package/dist/components/DatasetControl/QuickFind/styles.d.ts +1 -1
  39. package/dist/components/DatasetControl/QuickFind/styles.js +2 -2
  40. package/dist/components/DatasetControl/QuickFind/styles.js.map +1 -1
  41. package/dist/components/DatasetControl/index.d.ts +0 -1
  42. package/dist/components/DatasetControl/index.js +0 -2
  43. package/dist/components/DatasetControl/index.js.map +1 -1
  44. package/dist/components/DatasetControl/interfaces.d.ts +68 -23
  45. package/dist/components/DatasetControl/styles.d.ts +4 -11
  46. package/dist/components/DatasetControl/styles.js +5 -11
  47. package/dist/components/DatasetControl/styles.js.map +1 -1
  48. package/dist/components/DatasetControl/translations.d.ts +44 -0
  49. package/dist/components/DatasetControl/translations.js +15 -1
  50. package/dist/components/DatasetControl/translations.js.map +1 -1
  51. package/dist/components/DatasetControl/useModel.d.ts +4 -0
  52. package/dist/components/DatasetControl/useModel.js +9 -0
  53. package/dist/components/DatasetControl/useModel.js.map +1 -0
  54. package/dist/components/Grid/{core/components/Cell → cells/cell}/Cell.d.ts +3 -3
  55. package/dist/components/Grid/cells/cell/Cell.js +231 -0
  56. package/dist/components/Grid/cells/cell/Cell.js.map +1 -0
  57. package/dist/components/Grid/cells/cell/content/CellContent.d.ts +3 -0
  58. package/dist/components/Grid/{core/components/Cell/CellContent → cells/cell/content}/CellContent.js +44 -35
  59. package/dist/components/Grid/cells/cell/content/CellContent.js.map +1 -0
  60. package/dist/components/Grid/{core/components/Cell/CellContent → cells/cell/content}/styles.d.ts +4 -1
  61. package/dist/components/Grid/{core/components/Cell/CellContent → cells/cell/content}/styles.js +8 -3
  62. package/dist/components/Grid/cells/cell/content/styles.js.map +1 -0
  63. package/dist/components/Grid/{core/components/Cell/Notifications → cells/cell/notifications}/Notifications.d.ts +1 -1
  64. package/dist/components/Grid/{core/components/Cell/Notifications → cells/cell/notifications}/Notifications.js +5 -5
  65. package/dist/components/Grid/cells/cell/notifications/Notifications.js.map +1 -0
  66. package/dist/components/Grid/{core/components/Cell/Notifications → cells/cell/notifications}/styles.js +1 -1
  67. package/dist/components/Grid/cells/cell/notifications/styles.js.map +1 -0
  68. package/dist/components/Grid/{core/components/Cell → cells/cell}/styles.d.ts +12 -6
  69. package/dist/components/Grid/{core/components/Cell → cells/cell}/styles.js +14 -20
  70. package/dist/components/Grid/cells/cell/styles.js.map +1 -0
  71. package/dist/components/Grid/cells/selection-cell/SelectionCell.d.ts +8 -0
  72. package/dist/components/Grid/cells/selection-cell/SelectionCell.js +78 -0
  73. package/dist/components/Grid/cells/selection-cell/SelectionCell.js.map +1 -0
  74. package/dist/components/Grid/cells/selection-cell/SelectionCellModel.d.ts +7 -0
  75. package/dist/components/Grid/cells/selection-cell/record-save-error-callout/RecordSaveErrorCallout.d.ts +11 -0
  76. package/dist/components/Grid/cells/selection-cell/record-save-error-callout/RecordSaveErrorCallout.js +19 -0
  77. package/dist/components/Grid/cells/selection-cell/record-save-error-callout/RecordSaveErrorCallout.js.map +1 -0
  78. package/dist/components/Grid/cells/selection-cell/record-save-error-callout/styles.d.ts +17 -0
  79. package/dist/components/Grid/cells/selection-cell/record-save-error-callout/styles.js +24 -0
  80. package/dist/components/Grid/cells/selection-cell/record-save-error-callout/styles.js.map +1 -0
  81. package/dist/components/Grid/cells/selection-cell/styles.d.ts +27 -0
  82. package/dist/components/Grid/cells/selection-cell/styles.js +33 -0
  83. package/dist/components/Grid/cells/selection-cell/styles.js.map +1 -0
  84. package/dist/components/Grid/{core/components/ColumnHeader → column-headers/column-header}/ColumnHeader.d.ts +1 -1
  85. package/dist/components/Grid/column-headers/column-header/ColumnHeader.js +88 -0
  86. package/dist/components/Grid/column-headers/column-header/ColumnHeader.js.map +1 -0
  87. package/dist/components/Grid/{sorting/components/SortingContextualMenu/SortingContextualMenu.d.ts → column-headers/column-header/ColumnHeaderContextualMenu.d.ts} +3 -3
  88. package/dist/components/Grid/column-headers/column-header/ColumnHeaderContextualMenu.js +115 -0
  89. package/dist/components/Grid/column-headers/column-header/ColumnHeaderContextualMenu.js.map +1 -0
  90. package/dist/components/Grid/{filtering/components/FilterCallout → column-headers/column-header}/FilterCallout.d.ts +1 -1
  91. package/dist/components/Grid/column-headers/column-header/FilterCallout.js +107 -0
  92. package/dist/components/Grid/column-headers/column-header/FilterCallout.js.map +1 -0
  93. package/dist/components/Grid/column-headers/column-header/styles.d.ts +84 -0
  94. package/dist/components/Grid/{filtering/components/FilterCallout → column-headers/column-header}/styles.js +20 -11
  95. package/dist/components/Grid/column-headers/column-header/styles.js.map +1 -0
  96. package/dist/components/Grid/column-headers/record-selection-checkbox/RecordSelectionCheckbox.d.ts +2 -0
  97. package/dist/components/Grid/column-headers/record-selection-checkbox/RecordSelectionCheckbox.js +45 -0
  98. package/dist/components/Grid/column-headers/record-selection-checkbox/RecordSelectionCheckbox.js.map +1 -0
  99. package/dist/components/Grid/{core/components/ColumnHeader/components/GlobalCheckbox → column-headers/record-selection-checkbox}/styles.d.ts +1 -3
  100. package/dist/components/Grid/{core/components/ColumnHeader/components/GlobalCheckbox → column-headers/record-selection-checkbox}/styles.js +1 -2
  101. package/dist/components/Grid/column-headers/record-selection-checkbox/styles.js.map +1 -0
  102. package/dist/components/Grid/errors/FullWidthCellRendererError/FullWidthCellRendererError.d.ts +6 -0
  103. package/dist/components/Grid/errors/FullWidthCellRendererError/FullWidthCellRendererError.js +15 -0
  104. package/dist/components/Grid/errors/FullWidthCellRendererError/FullWidthCellRendererError.js.map +1 -0
  105. package/dist/components/Grid/errors/FullWidthCellRendererError/styles.d.ts +6 -0
  106. package/dist/components/Grid/errors/FullWidthCellRendererError/styles.js +13 -0
  107. package/dist/components/Grid/errors/FullWidthCellRendererError/styles.js.map +1 -0
  108. package/dist/components/Grid/{core/components/AgGrid/AgGrid.d.ts → grid/Grid.d.ts} +2 -2
  109. package/dist/components/Grid/grid/Grid.js +64 -0
  110. package/dist/components/Grid/grid/Grid.js.map +1 -0
  111. package/dist/components/Grid/grid/GridContext.d.ts +3 -0
  112. package/dist/components/Grid/grid/GridContext.js.map +1 -0
  113. package/dist/components/Grid/grid/GridModel.d.ts +110 -0
  114. package/dist/components/Grid/grid/GridModel.js +767 -0
  115. package/dist/components/Grid/grid/GridModel.js.map +1 -0
  116. package/dist/components/Grid/{core/components/AgGrid/model/Comparator.d.ts → grid/ValueComparator.d.ts} +1 -1
  117. package/dist/components/Grid/{core/components/AgGrid/model/Comparator.js → grid/ValueComparator.js} +7 -1
  118. package/dist/components/Grid/grid/ValueComparator.js.map +1 -0
  119. package/dist/components/Grid/{core/components/AgGrid/context.d.ts → grid/ag-grid/AgGridContext.d.ts} +2 -2
  120. package/dist/components/Grid/{core/components/AgGrid/context.js → grid/ag-grid/AgGridContext.js} +1 -1
  121. package/dist/components/Grid/grid/ag-grid/AgGridContext.js.map +1 -0
  122. package/dist/components/Grid/grid/ag-grid/AgGridModel.d.ts +90 -0
  123. package/dist/components/Grid/grid/ag-grid/AgGridModel.js +657 -0
  124. package/dist/components/Grid/grid/ag-grid/AgGridModel.js.map +1 -0
  125. package/dist/components/Grid/grid/ag-grid/ServerSideDatasource.d.ts +7 -0
  126. package/dist/components/Grid/grid/ag-grid/ServerSideDatasource.js +38 -0
  127. package/dist/components/Grid/grid/ag-grid/ServerSideDatasource.js.map +1 -0
  128. package/dist/components/Grid/grid/ag-grid/useAgGridInstance.d.ts +2 -0
  129. package/dist/components/Grid/grid/ag-grid/useAgGridInstance.js +9 -0
  130. package/dist/components/Grid/grid/ag-grid/useAgGridInstance.js.map +1 -0
  131. package/dist/components/Grid/{core/components/AgGrid → grid}/styles.d.ts +24 -4
  132. package/dist/components/Grid/{core/components/AgGrid → grid}/styles.js +37 -6
  133. package/dist/components/Grid/grid/styles.js.map +1 -0
  134. package/dist/components/Grid/grid/useGridInstance.d.ts +2 -0
  135. package/dist/components/Grid/{core/hooks → grid}/useGridInstance.js +2 -2
  136. package/dist/components/Grid/grid/useGridInstance.js.map +1 -0
  137. package/dist/components/Grid/index.d.ts +1 -1
  138. package/dist/components/Grid/index.js +1 -1
  139. package/dist/components/Grid/interfaces.d.ts +10 -1
  140. package/dist/components/Grid/loading/full-row/FullRowLoading.d.ts +3 -0
  141. package/dist/components/Grid/loading/full-row/FullRowLoading.js +33 -0
  142. package/dist/components/Grid/loading/full-row/FullRowLoading.js.map +1 -0
  143. package/dist/components/Grid/loading/full-row/styles.d.ts +9 -0
  144. package/dist/components/Grid/loading/full-row/styles.js +16 -0
  145. package/dist/components/Grid/loading/full-row/styles.js.map +1 -0
  146. package/dist/components/Grid/overlays/empty-records/EmptyRecordsOverlay.js +13 -0
  147. package/dist/components/Grid/overlays/empty-records/EmptyRecordsOverlay.js.map +1 -0
  148. package/dist/components/Grid/{core/components/AgGrid/components/EmptyRecordsOverlay → overlays/empty-records}/styles.d.ts +1 -1
  149. package/dist/components/Grid/{core/components/AgGrid/components/EmptyRecordsOverlay → overlays/empty-records}/styles.js +1 -1
  150. package/dist/components/Grid/overlays/empty-records/styles.js.map +1 -0
  151. package/dist/components/Grid/overlays/loading/LoadingOverlay.js.map +1 -0
  152. package/dist/components/Grid/translations.d.ts +21 -177
  153. package/dist/components/Grid/translations.js +6 -48
  154. package/dist/components/Grid/translations.js.map +1 -1
  155. package/dist/components/GridCellRenderer/GridCellRenderer.js +99 -282
  156. package/dist/components/GridCellRenderer/GridCellRenderer.js.map +1 -1
  157. package/dist/components/GridCellRenderer/GridCellRendererModel.d.ts +51 -0
  158. package/dist/components/GridCellRenderer/GridCellRendererModel.js +211 -0
  159. package/dist/components/GridCellRenderer/GridCellRendererModel.js.map +1 -0
  160. package/dist/components/GridCellRenderer/ValueRenderer/ColorfulOptionSetValueRenderer/ColorfulOptionSetValueRenderer.d.ts +9 -0
  161. package/dist/components/GridCellRenderer/ValueRenderer/ColorfulOptionSetValueRenderer/ColorfulOptionSetValueRenderer.js +53 -0
  162. package/dist/components/GridCellRenderer/ValueRenderer/ColorfulOptionSetValueRenderer/ColorfulOptionSetValueRenderer.js.map +1 -0
  163. package/dist/components/GridCellRenderer/ValueRenderer/ColorfulOptionSetValueRenderer/styles.d.ts +20 -0
  164. package/dist/components/GridCellRenderer/ValueRenderer/ColorfulOptionSetValueRenderer/styles.js +29 -0
  165. package/dist/components/GridCellRenderer/ValueRenderer/ColorfulOptionSetValueRenderer/styles.js.map +1 -0
  166. package/dist/components/GridCellRenderer/ValueRenderer/FileRenderer/FileRenderer.d.ts +7 -0
  167. package/dist/components/GridCellRenderer/ValueRenderer/FileRenderer/FileRenderer.js +76 -0
  168. package/dist/components/GridCellRenderer/ValueRenderer/FileRenderer/FileRenderer.js.map +1 -0
  169. package/dist/components/GridCellRenderer/ValueRenderer/FileRenderer/styles.d.ts +18 -0
  170. package/dist/components/GridCellRenderer/ValueRenderer/FileRenderer/styles.js +25 -0
  171. package/dist/components/GridCellRenderer/ValueRenderer/FileRenderer/styles.js.map +1 -0
  172. package/dist/components/GridCellRenderer/ValueRenderer/ValueRenderer.d.ts +3 -0
  173. package/dist/components/GridCellRenderer/ValueRenderer/ValueRenderer.js +52 -0
  174. package/dist/components/GridCellRenderer/ValueRenderer/ValueRenderer.js.map +1 -0
  175. package/dist/components/GridCellRenderer/ValueRenderer/styles.d.ts +1666 -0
  176. package/dist/components/GridCellRenderer/ValueRenderer/styles.js +31 -0
  177. package/dist/components/GridCellRenderer/ValueRenderer/styles.js.map +1 -0
  178. package/dist/components/GridCellRenderer/interfaces.d.ts +53 -42
  179. package/dist/components/GridCellRenderer/properties/Email.d.ts +5 -0
  180. package/dist/components/GridCellRenderer/properties/Email.js +15 -0
  181. package/dist/components/GridCellRenderer/properties/Email.js.map +1 -0
  182. package/dist/components/GridCellRenderer/properties/File.d.ts +19 -0
  183. package/dist/components/GridCellRenderer/properties/File.js +99 -0
  184. package/dist/components/GridCellRenderer/properties/File.js.map +1 -0
  185. package/dist/components/GridCellRenderer/properties/Image.d.ts +4 -0
  186. package/dist/components/GridCellRenderer/properties/Image.js +15 -0
  187. package/dist/components/GridCellRenderer/properties/Image.js.map +1 -0
  188. package/dist/components/GridCellRenderer/properties/Lookup.d.ts +5 -0
  189. package/dist/components/GridCellRenderer/properties/Lookup.js +16 -0
  190. package/dist/components/GridCellRenderer/properties/Lookup.js.map +1 -0
  191. package/dist/components/GridCellRenderer/properties/MultiSelectOptionSet.d.ts +5 -0
  192. package/dist/components/GridCellRenderer/properties/MultiSelectOptionSet.js +11 -0
  193. package/dist/components/GridCellRenderer/properties/MultiSelectOptionSet.js.map +1 -0
  194. package/dist/components/GridCellRenderer/properties/MultilineText.d.ts +4 -0
  195. package/dist/components/GridCellRenderer/properties/MultilineText.js +10 -0
  196. package/dist/components/GridCellRenderer/properties/MultilineText.js.map +1 -0
  197. package/dist/components/GridCellRenderer/properties/OptionSet.d.ts +5 -0
  198. package/dist/components/GridCellRenderer/properties/OptionSet.js +11 -0
  199. package/dist/components/GridCellRenderer/properties/OptionSet.js.map +1 -0
  200. package/dist/components/GridCellRenderer/properties/OptionSetBase.d.ts +7 -0
  201. package/dist/components/GridCellRenderer/properties/OptionSetBase.js +19 -0
  202. package/dist/components/GridCellRenderer/properties/OptionSetBase.js.map +1 -0
  203. package/dist/components/GridCellRenderer/properties/Phone.d.ts +9 -0
  204. package/dist/components/GridCellRenderer/properties/Phone.js +15 -0
  205. package/dist/components/GridCellRenderer/properties/Phone.js.map +1 -0
  206. package/dist/components/GridCellRenderer/properties/Property.d.ts +19 -0
  207. package/dist/components/GridCellRenderer/properties/Property.js +59 -0
  208. package/dist/components/GridCellRenderer/properties/Property.js.map +1 -0
  209. package/dist/components/GridCellRenderer/properties/TwoOptions.d.ts +5 -0
  210. package/dist/components/GridCellRenderer/properties/TwoOptions.js +11 -0
  211. package/dist/components/GridCellRenderer/properties/TwoOptions.js.map +1 -0
  212. package/dist/components/GridCellRenderer/properties/Url.d.ts +5 -0
  213. package/dist/components/GridCellRenderer/properties/Url.js +15 -0
  214. package/dist/components/GridCellRenderer/properties/Url.js.map +1 -0
  215. package/dist/components/GridCellRenderer/styles.d.ts +34 -60
  216. package/dist/components/GridCellRenderer/styles.js +69 -77
  217. package/dist/components/GridCellRenderer/styles.js.map +1 -1
  218. package/dist/components/GridCellRenderer/translations.d.ts +1 -1
  219. package/dist/components/GridCellRenderer/translations.js +30 -32
  220. package/dist/components/GridCellRenderer/translations.js.map +1 -1
  221. package/dist/components/GridCellRenderer/useModel.d.ts +4 -0
  222. package/dist/components/GridCellRenderer/useModel.js +9 -0
  223. package/dist/components/GridCellRenderer/useModel.js.map +1 -0
  224. package/dist/components/GridColumnHeader/GridColumnHeader.d.ts +3 -0
  225. package/dist/components/GridColumnHeader/GridColumnHeader.js +134 -0
  226. package/dist/components/GridColumnHeader/GridColumnHeader.js.map +1 -0
  227. package/dist/components/GridColumnHeader/GridColumnHeaderModel.d.ts +26 -0
  228. package/dist/components/GridColumnHeader/GridColumnHeaderModel.js +85 -0
  229. package/dist/components/GridColumnHeader/GridColumnHeaderModel.js.map +1 -0
  230. package/dist/components/GridColumnHeader/interfaces.d.ts +48 -0
  231. package/dist/components/GridColumnHeader/styles.d.ts +37 -0
  232. package/dist/components/GridColumnHeader/styles.js +55 -0
  233. package/dist/components/GridColumnHeader/styles.js.map +1 -0
  234. package/dist/components/GridColumnHeader/translations.d.ts +26 -0
  235. package/dist/components/GridColumnHeader/translations.js +29 -0
  236. package/dist/components/GridColumnHeader/translations.js.map +1 -0
  237. package/dist/components/GridInlineRibbon/GridInlineRibbon.d.ts +3 -0
  238. package/dist/components/GridInlineRibbon/GridInlineRibbon.js +113 -0
  239. package/dist/components/GridInlineRibbon/GridInlineRibbon.js.map +1 -0
  240. package/dist/components/GridInlineRibbon/GridInlineRibbonModel.d.ts +25 -0
  241. package/dist/components/GridInlineRibbon/GridInlineRibbonModel.js +49 -0
  242. package/dist/components/GridInlineRibbon/GridInlineRibbonModel.js.map +1 -0
  243. package/dist/components/GridInlineRibbon/index.d.ts +2 -0
  244. package/dist/components/GridInlineRibbon/index.js +2 -0
  245. package/dist/components/GridInlineRibbon/interfaces.d.ts +28 -0
  246. package/dist/components/GridInlineRibbon/styles.d.ts +22 -0
  247. package/dist/components/GridInlineRibbon/styles.js +29 -0
  248. package/dist/components/GridInlineRibbon/styles.js.map +1 -0
  249. package/dist/components/MultiSelectOptionSet/MultiSelectOptionSet.js +2 -2
  250. package/dist/components/MultiSelectOptionSet/MultiSelectOptionSet.js.map +1 -1
  251. package/dist/components/NestedControlRenderer/NestedControl.d.ts +2 -0
  252. package/dist/components/NestedControlRenderer/NestedControl.js +5 -2
  253. package/dist/components/NestedControlRenderer/NestedControl.js.map +1 -1
  254. package/dist/components/NestedControlRenderer/NestedControlRenderer.js +19 -6
  255. package/dist/components/NestedControlRenderer/NestedControlRenderer.js.map +1 -1
  256. package/dist/components/NestedControlRenderer/index.d.ts +1 -0
  257. package/dist/components/NestedControlRenderer/interfaces.d.ts +4 -0
  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 +5 -4
  261. package/dist/components/OptionSet/OptionSet.js.map +1 -1
  262. package/dist/components/Ribbon/Ribbon.d.ts +3 -0
  263. package/dist/components/Ribbon/Ribbon.js +118 -0
  264. package/dist/components/Ribbon/Ribbon.js.map +1 -0
  265. package/dist/components/Ribbon/RibbonModel.d.ts +17 -0
  266. package/dist/components/Ribbon/RibbonModel.js +74 -0
  267. package/dist/components/Ribbon/RibbonModel.js.map +1 -0
  268. package/dist/components/Ribbon/interfaces.d.ts +24 -0
  269. package/dist/components/Ribbon/styles.d.ts +16 -0
  270. package/dist/components/Ribbon/styles.js +23 -0
  271. package/dist/components/Ribbon/styles.js.map +1 -0
  272. package/dist/components/TextField/TextField.js.map +1 -1
  273. package/dist/components/index.d.ts +1 -0
  274. package/dist/components/index.js +2 -3
  275. package/dist/components/index.js.map +1 -1
  276. package/dist/hooks/index.d.ts +1 -0
  277. package/dist/hooks/index.js +1 -0
  278. package/dist/hooks/index.js.map +1 -1
  279. package/dist/hooks/useControl.d.ts +1 -0
  280. package/dist/hooks/useControl.js +1 -0
  281. package/dist/hooks/useControl.js.map +1 -1
  282. package/dist/hooks/useEventEmitter.d.ts +2 -0
  283. package/dist/hooks/useEventEmitter.js +23 -0
  284. package/dist/hooks/useEventEmitter.js.map +1 -0
  285. package/dist/hooks/useInputBasedControl.js +2 -1
  286. package/dist/hooks/useInputBasedControl.js.map +1 -1
  287. package/dist/index.d.ts +508 -522
  288. package/dist/index.js +3 -3
  289. package/dist/interfaces/property.d.ts +1 -1
  290. package/dist/utils/BaseControls.d.ts +4 -1
  291. package/dist/utils/BaseControls.js +13 -1
  292. package/dist/utils/BaseControls.js.map +1 -1
  293. package/dist/utils/dataset/adapters/DatasetAdapter.d.ts +51 -40
  294. package/dist/utils/dataset/adapters/DatasetAdapter.js +221 -160
  295. package/dist/utils/dataset/adapters/DatasetAdapter.js.map +1 -1
  296. package/dist/utils/dataset/adapters/VirtualDatasetAdapter.d.ts +60 -28
  297. package/dist/utils/dataset/adapters/VirtualDatasetAdapter.js +183 -119
  298. package/dist/utils/dataset/adapters/VirtualDatasetAdapter.js.map +1 -1
  299. package/dist/utils/dataset-control/DatasetControl.d.ts +69 -0
  300. package/dist/utils/dataset-control/DatasetControl.js +171 -0
  301. package/dist/utils/dataset-control/DatasetControl.js.map +1 -0
  302. package/dist/utils/dataset-control/index.d.ts +1 -0
  303. package/dist/utils/dataset-control/index.js +2 -0
  304. package/dist/utils/theme/components/ThemeWrapper.d.ts +1 -1
  305. package/dist/utils/theme/components/ThemeWrapper.js.map +1 -1
  306. package/dist/utils/theme/hooks/useControlTheme.js +2 -1
  307. package/dist/utils/theme/hooks/useControlTheme.js.map +1 -1
  308. package/package.json +9 -5
  309. package/dist/components/DatasetControl/Paging/DatasetPaging.d.ts +0 -3
  310. package/dist/components/DatasetControl/Paging/DatasetPaging.js +0 -69
  311. package/dist/components/DatasetControl/Paging/DatasetPaging.js.map +0 -1
  312. package/dist/components/DatasetControl/Paging/Paging.d.ts +0 -26
  313. package/dist/components/DatasetControl/Paging/Paging.js +0 -80
  314. package/dist/components/DatasetControl/Paging/Paging.js.map +0 -1
  315. package/dist/components/DatasetControl/Paging/index.d.ts +0 -3
  316. package/dist/components/DatasetControl/Paging/index.js +0 -3
  317. package/dist/components/DatasetControl/Paging/index.js.map +0 -1
  318. package/dist/components/DatasetControl/Paging/interfaces.d.ts +0 -16
  319. package/dist/components/DatasetControl/Paging/styles.d.ts +0 -35
  320. package/dist/components/DatasetControl/Paging/styles.js +0 -41
  321. package/dist/components/DatasetControl/Paging/styles.js.map +0 -1
  322. package/dist/components/DatasetControl/Paging/translations.d.ts +0 -38
  323. package/dist/components/DatasetControl/Paging/translations.js +0 -14
  324. package/dist/components/DatasetControl/Paging/translations.js.map +0 -1
  325. package/dist/components/Grid/Grid.d.ts +0 -3
  326. package/dist/components/Grid/Grid.js +0 -37
  327. package/dist/components/Grid/Grid.js.map +0 -1
  328. package/dist/components/Grid/GridContext.d.ts +0 -3
  329. package/dist/components/Grid/GridContext.js.map +0 -1
  330. package/dist/components/Grid/aggregation/Aggregation.d.ts +0 -18
  331. package/dist/components/Grid/aggregation/Aggregation.js +0 -129
  332. package/dist/components/Grid/aggregation/Aggregation.js.map +0 -1
  333. package/dist/components/Grid/core/components/AgGrid/AgGrid.js +0 -203
  334. package/dist/components/Grid/core/components/AgGrid/AgGrid.js.map +0 -1
  335. package/dist/components/Grid/core/components/AgGrid/components/EmptyRecordsOverlay/EmptyRecords.js +0 -12
  336. package/dist/components/Grid/core/components/AgGrid/components/EmptyRecordsOverlay/EmptyRecords.js.map +0 -1
  337. package/dist/components/Grid/core/components/AgGrid/components/EmptyRecordsOverlay/styles.js.map +0 -1
  338. package/dist/components/Grid/core/components/AgGrid/components/LoadingOverlay/LoadingOverlay.js.map +0 -1
  339. package/dist/components/Grid/core/components/AgGrid/context.js.map +0 -1
  340. package/dist/components/Grid/core/components/AgGrid/model/AgGrid.d.ts +0 -52
  341. package/dist/components/Grid/core/components/AgGrid/model/AgGrid.js +0 -343
  342. package/dist/components/Grid/core/components/AgGrid/model/AgGrid.js.map +0 -1
  343. package/dist/components/Grid/core/components/AgGrid/model/Comparator.js.map +0 -1
  344. package/dist/components/Grid/core/components/AgGrid/styles.js.map +0 -1
  345. package/dist/components/Grid/core/components/Cell/Cell.js +0 -158
  346. package/dist/components/Grid/core/components/Cell/Cell.js.map +0 -1
  347. package/dist/components/Grid/core/components/Cell/CellContent/CellContent.d.ts +0 -8
  348. package/dist/components/Grid/core/components/Cell/CellContent/CellContent.js.map +0 -1
  349. package/dist/components/Grid/core/components/Cell/CellContent/styles.js.map +0 -1
  350. package/dist/components/Grid/core/components/Cell/Notifications/Notifications.js.map +0 -1
  351. package/dist/components/Grid/core/components/Cell/Notifications/styles.js.map +0 -1
  352. package/dist/components/Grid/core/components/Cell/styles.js.map +0 -1
  353. package/dist/components/Grid/core/components/ColumnHeader/ColumnHeader.js +0 -61
  354. package/dist/components/Grid/core/components/ColumnHeader/ColumnHeader.js.map +0 -1
  355. package/dist/components/Grid/core/components/ColumnHeader/components/GlobalCheckbox/GlobalCheckbox.d.ts +0 -2
  356. package/dist/components/Grid/core/components/ColumnHeader/components/GlobalCheckbox/GlobalCheckbox.js +0 -50
  357. package/dist/components/Grid/core/components/ColumnHeader/components/GlobalCheckbox/GlobalCheckbox.js.map +0 -1
  358. package/dist/components/Grid/core/components/ColumnHeader/components/GlobalCheckbox/styles.js.map +0 -1
  359. package/dist/components/Grid/core/components/ColumnHeader/styles.d.ts +0 -42
  360. package/dist/components/Grid/core/components/ColumnHeader/styles.js +0 -48
  361. package/dist/components/Grid/core/components/ColumnHeader/styles.js.map +0 -1
  362. package/dist/components/Grid/core/components/Dialog/Constants.d.ts +0 -2
  363. package/dist/components/Grid/core/components/Dialog/Constants.js +0 -9
  364. package/dist/components/Grid/core/components/Dialog/Constants.js.map +0 -1
  365. package/dist/components/Grid/core/components/Dialog/Styles.d.ts +0 -2
  366. package/dist/components/Grid/core/components/Dialog/Styles.js +0 -61
  367. package/dist/components/Grid/core/components/Dialog/Styles.js.map +0 -1
  368. package/dist/components/Grid/core/components/Dialog/index.d.ts +0 -4
  369. package/dist/components/Grid/core/components/Dialog/index.js +0 -16
  370. package/dist/components/Grid/core/components/Dialog/index.js.map +0 -1
  371. package/dist/components/Grid/core/components/Dialog/interfaces/index.d.ts +0 -6
  372. package/dist/components/Grid/core/components/Dialog/interfaces/index.js +0 -2
  373. package/dist/components/Grid/core/components/Save/Save.d.ts +0 -2
  374. package/dist/components/Grid/core/components/Save/Save.js +0 -59
  375. package/dist/components/Grid/core/components/Save/Save.js.map +0 -1
  376. package/dist/components/Grid/core/components/Save/components/ChangeEditor/ChangeEditor.d.ts +0 -7
  377. package/dist/components/Grid/core/components/Save/components/ChangeEditor/ChangeEditor.js +0 -73
  378. package/dist/components/Grid/core/components/Save/components/ChangeEditor/ChangeEditor.js.map +0 -1
  379. package/dist/components/Grid/core/components/Save/components/ChangeEditor/components/ChangeGrid/ChangeGrid.d.ts +0 -11
  380. package/dist/components/Grid/core/components/Save/components/ChangeEditor/components/ChangeGrid/ChangeGrid.js +0 -231
  381. package/dist/components/Grid/core/components/Save/components/ChangeEditor/components/ChangeGrid/ChangeGrid.js.map +0 -1
  382. package/dist/components/Grid/core/components/Save/components/ChangeEditor/components/ChangeGrid/styles.d.ts +0 -39
  383. package/dist/components/Grid/core/components/Save/components/ChangeEditor/components/ChangeGrid/styles.js +0 -45
  384. package/dist/components/Grid/core/components/Save/components/ChangeEditor/components/ChangeGrid/styles.js.map +0 -1
  385. package/dist/components/Grid/core/components/Save/components/ChangeEditor/styles.d.ts +0 -31
  386. package/dist/components/Grid/core/components/Save/components/ChangeEditor/styles.js +0 -37
  387. package/dist/components/Grid/core/components/Save/components/ChangeEditor/styles.js.map +0 -1
  388. package/dist/components/Grid/core/components/Save/styles.d.ts +0 -35
  389. package/dist/components/Grid/core/components/Save/styles.js +0 -42
  390. package/dist/components/Grid/core/components/Save/styles.js.map +0 -1
  391. package/dist/components/Grid/core/controllers/useGridController.d.ts +0 -7
  392. package/dist/components/Grid/core/controllers/useGridController.js +0 -29
  393. package/dist/components/Grid/core/controllers/useGridController.js.map +0 -1
  394. package/dist/components/Grid/core/enums/ConditionOperator.d.ts +0 -48
  395. package/dist/components/Grid/core/enums/ConditionOperator.js +0 -52
  396. package/dist/components/Grid/core/enums/ConditionOperator.js.map +0 -1
  397. package/dist/components/Grid/core/enums/DataType.d.ts +0 -25
  398. package/dist/components/Grid/core/enums/DataType.js +0 -30
  399. package/dist/components/Grid/core/enums/DataType.js.map +0 -1
  400. package/dist/components/Grid/core/hooks/useGridInstance.d.ts +0 -2
  401. package/dist/components/Grid/core/hooks/useGridInstance.js.map +0 -1
  402. package/dist/components/Grid/core/hooks/useRefreshCallback.d.ts +0 -2
  403. package/dist/components/Grid/core/hooks/useRefreshCallback.js +0 -20
  404. package/dist/components/Grid/core/hooks/useRefreshCallback.js.map +0 -1
  405. package/dist/components/Grid/core/interfaces/IGridColumn.d.ts +0 -13
  406. package/dist/components/Grid/core/interfaces/IGridContext.d.ts +0 -4
  407. package/dist/components/Grid/core/model/Grid.d.ts +0 -83
  408. package/dist/components/Grid/core/model/Grid.js +0 -528
  409. package/dist/components/Grid/core/model/Grid.js.map +0 -1
  410. package/dist/components/Grid/core/model/GridDependency.d.ts +0 -13
  411. package/dist/components/Grid/core/model/GridDependency.js +0 -28
  412. package/dist/components/Grid/core/model/GridDependency.js.map +0 -1
  413. package/dist/components/Grid/core/services/KeyListener.d.ts +0 -12
  414. package/dist/components/Grid/core/services/KeyListener.js +0 -31
  415. package/dist/components/Grid/core/services/KeyListener.js.map +0 -1
  416. package/dist/components/Grid/filtering/components/FilterCallout/FilterCallout.js +0 -59
  417. package/dist/components/Grid/filtering/components/FilterCallout/FilterCallout.js.map +0 -1
  418. package/dist/components/Grid/filtering/components/FilterCallout/components/ConditionOperator/ConditionOperator.d.ts +0 -7
  419. package/dist/components/Grid/filtering/components/FilterCallout/components/ConditionOperator/ConditionOperator.js +0 -56
  420. package/dist/components/Grid/filtering/components/FilterCallout/components/ConditionOperator/ConditionOperator.js.map +0 -1
  421. package/dist/components/Grid/filtering/components/FilterCallout/components/ConditionValue/ConditionValue.d.ts +0 -7
  422. package/dist/components/Grid/filtering/components/FilterCallout/components/ConditionValue/ConditionValue.js +0 -73
  423. package/dist/components/Grid/filtering/components/FilterCallout/components/ConditionValue/ConditionValue.js.map +0 -1
  424. package/dist/components/Grid/filtering/components/FilterCallout/components/ConditionValue/ConditionValueBetween.d.ts +0 -7
  425. package/dist/components/Grid/filtering/components/FilterCallout/components/ConditionValue/ConditionValueBetween.js +0 -90
  426. package/dist/components/Grid/filtering/components/FilterCallout/components/ConditionValue/ConditionValueBetween.js.map +0 -1
  427. package/dist/components/Grid/filtering/components/FilterCallout/components/ConditionValue/model/ConditionComponentValue.d.ts +0 -48
  428. package/dist/components/Grid/filtering/components/FilterCallout/components/ConditionValue/model/ConditionComponentValue.js +0 -146
  429. package/dist/components/Grid/filtering/components/FilterCallout/components/ConditionValue/model/ConditionComponentValue.js.map +0 -1
  430. package/dist/components/Grid/filtering/components/FilterCallout/components/LegacyControlRendering/Component.d.ts +0 -11
  431. package/dist/components/Grid/filtering/components/FilterCallout/components/LegacyControlRendering/Component.js +0 -53
  432. package/dist/components/Grid/filtering/components/FilterCallout/components/LegacyControlRendering/Component.js.map +0 -1
  433. package/dist/components/Grid/filtering/components/FilterCallout/components/LegacyControlRendering/controller/useComponentController.d.ts +0 -9
  434. package/dist/components/Grid/filtering/components/FilterCallout/components/LegacyControlRendering/controller/useComponentController.js +0 -31
  435. package/dist/components/Grid/filtering/components/FilterCallout/components/LegacyControlRendering/controller/useComponentController.js.map +0 -1
  436. package/dist/components/Grid/filtering/components/FilterCallout/components/LegacyControlRendering/model/Component.d.ts +0 -10
  437. package/dist/components/Grid/filtering/components/FilterCallout/components/LegacyControlRendering/model/Component.js +0 -294
  438. package/dist/components/Grid/filtering/components/FilterCallout/components/LegacyControlRendering/model/Component.js.map +0 -1
  439. package/dist/components/Grid/filtering/components/FilterCallout/styles.d.ts +0 -35
  440. package/dist/components/Grid/filtering/components/FilterCallout/styles.js.map +0 -1
  441. package/dist/components/Grid/filtering/constants.d.ts +0 -5
  442. package/dist/components/Grid/filtering/constants.js +0 -53
  443. package/dist/components/Grid/filtering/constants.js.map +0 -1
  444. package/dist/components/Grid/filtering/controller/useColumnFilterConditionController.d.ts +0 -21
  445. package/dist/components/Grid/filtering/controller/useColumnFilterConditionController.js +0 -44
  446. package/dist/components/Grid/filtering/controller/useColumnFilterConditionController.js.map +0 -1
  447. package/dist/components/Grid/filtering/model/Condition.d.ts +0 -49
  448. package/dist/components/Grid/filtering/model/Condition.js +0 -347
  449. package/dist/components/Grid/filtering/model/Condition.js.map +0 -1
  450. package/dist/components/Grid/filtering/model/Filtering.d.ts +0 -11
  451. package/dist/components/Grid/filtering/model/Filtering.js +0 -78
  452. package/dist/components/Grid/filtering/model/Filtering.js.map +0 -1
  453. package/dist/components/Grid/filtering/utils/FilteringUtilts.d.ts +0 -34
  454. package/dist/components/Grid/filtering/utils/FilteringUtilts.js +0 -195
  455. package/dist/components/Grid/filtering/utils/FilteringUtilts.js.map +0 -1
  456. package/dist/components/Grid/selection/model/Selection.d.ts +0 -12
  457. package/dist/components/Grid/selection/model/Selection.js +0 -55
  458. package/dist/components/Grid/selection/model/Selection.js.map +0 -1
  459. package/dist/components/Grid/sorting/Sorting.d.ts +0 -10
  460. package/dist/components/Grid/sorting/Sorting.js +0 -31
  461. package/dist/components/Grid/sorting/Sorting.js.map +0 -1
  462. package/dist/components/Grid/sorting/components/SortingContextualMenu/SortingContextualMenu.js +0 -157
  463. package/dist/components/Grid/sorting/components/SortingContextualMenu/SortingContextualMenu.js.map +0 -1
  464. package/dist/components/Grid/sorting/components/SortingContextualMenu/styles.d.ts +0 -9
  465. package/dist/components/Grid/sorting/components/SortingContextualMenu/styles.js +0 -15
  466. package/dist/components/Grid/sorting/components/SortingContextualMenu/styles.js.map +0 -1
  467. package/dist/components/Grid/sorting/controllers/useColumnSortingController.d.ts +0 -9
  468. package/dist/components/Grid/sorting/controllers/useColumnSortingController.js +0 -22
  469. package/dist/components/Grid/sorting/controllers/useColumnSortingController.js.map +0 -1
  470. package/dist/components/GridCellRenderer/DefaultContentRenderer/DefaultContentRenderer.d.ts +0 -2
  471. package/dist/components/GridCellRenderer/DefaultContentRenderer/DefaultContentRenderer.js +0 -11
  472. package/dist/components/GridCellRenderer/DefaultContentRenderer/DefaultContentRenderer.js.map +0 -1
  473. package/dist/components/GridCellRenderer/DefaultContentRenderer/index.d.ts +0 -1
  474. package/dist/components/GridCellRenderer/DefaultContentRenderer/index.js +0 -2
  475. package/dist/components/GridCellRenderer/OptionSet/OptionSet.d.ts +0 -5
  476. package/dist/components/GridCellRenderer/OptionSet/OptionSet.js +0 -75
  477. package/dist/components/GridCellRenderer/OptionSet/OptionSet.js.map +0 -1
  478. package/dist/components/GridCellRenderer/OptionSet/index.d.ts +0 -1
  479. package/dist/components/GridCellRenderer/OptionSet/index.js +0 -2
  480. package/dist/components/GridCellRenderer/OptionSet/index.js.map +0 -1
  481. package/dist/components/GridCellRenderer/OptionSet/styles.d.ts +0 -20
  482. package/dist/components/GridCellRenderer/OptionSet/styles.js +0 -29
  483. package/dist/components/GridCellRenderer/OptionSet/styles.js.map +0 -1
  484. package/dist/components/GridCellRenderer/RecordCommands/Icon.d.ts +0 -7
  485. package/dist/components/GridCellRenderer/RecordCommands/Icon.js +0 -32
  486. package/dist/components/GridCellRenderer/RecordCommands/Icon.js.map +0 -1
  487. package/dist/components/GridCellRenderer/RecordCommands/RecordCommands.d.ts +0 -13
  488. package/dist/components/GridCellRenderer/RecordCommands/RecordCommands.js +0 -103
  489. package/dist/components/GridCellRenderer/RecordCommands/RecordCommands.js.map +0 -1
  490. package/dist/components/GridCellRenderer/RecordCommands/styles.d.ts +0 -13
  491. package/dist/components/GridCellRenderer/RecordCommands/styles.js +0 -32
  492. package/dist/components/GridCellRenderer/RecordCommands/styles.js.map +0 -1
  493. package/dist/components/GridCellRenderer/useComponentProps.d.ts +0 -6
  494. package/dist/components/GridCellRenderer/useComponentProps.js +0 -10
  495. package/dist/components/GridCellRenderer/useComponentProps.js.map +0 -1
  496. /package/dist/components/Grid/{core/components/Cell/Notifications → cells/cell/notifications}/styles.d.ts +0 -0
  497. /package/dist/components/Grid/{GridContext.js → grid/GridContext.js} +0 -0
  498. /package/dist/components/Grid/{core/components/AgGrid/components/EmptyRecordsOverlay/EmptyRecords.d.ts → overlays/empty-records/EmptyRecordsOverlay.d.ts} +0 -0
  499. /package/dist/components/Grid/{core/components/AgGrid/components/LoadingOverlay → overlays/loading}/LoadingOverlay.d.ts +0 -0
  500. /package/dist/components/Grid/{core/components/AgGrid/components/LoadingOverlay → overlays/loading}/LoadingOverlay.js +0 -0
  501. /package/dist/components/{Grid/core/components/Dialog/interfaces → GridInlineRibbon}/index.js.map +0 -0
  502. /package/dist/{components/GridCellRenderer/DefaultContentRenderer → utils/dataset-control}/index.js.map +0 -0
@@ -0,0 +1,211 @@
1
+ import { Property } from './properties/Property.js';
2
+ import { Email } from './properties/Email.js';
3
+ import { Phone } from './properties/Phone.js';
4
+ import { Url } from './properties/Url.js';
5
+ import { Lookup } from './properties/Lookup.js';
6
+ import { MultilineText } from './properties/MultilineText.js';
7
+ import { OptionSet } from './properties/OptionSet.js';
8
+ import { MultiSelectOptionSet } from './properties/MultiSelectOptionSet.js';
9
+ import { TwoOptions } from './properties/TwoOptions.js';
10
+ import { File } from './properties/File.js';
11
+ import { Image } from './properties/Image.js';
12
+ import { TickMemoizer } from '@talxis/client-libraries/dist/helpers/cache/TickMemoizer';
13
+
14
+ const propertyMap = new Map([
15
+ ['SingleLine.Email', Email],
16
+ ['SingleLine.Phone', Phone],
17
+ ['SingleLine.URL', Url],
18
+ ['Lookup.Customer', Lookup],
19
+ ['Lookup.Owner', Lookup],
20
+ ['Lookup.Simple', Lookup],
21
+ ['Lookup.Regarding', Lookup],
22
+ ['OptionSet', OptionSet],
23
+ ['MultiSelectPicklist', MultiSelectOptionSet],
24
+ ['TwoOptions', TwoOptions],
25
+ ['SingleLine.TextArea', MultilineText],
26
+ ['Multiple', MultilineText],
27
+ ['File', File],
28
+ ['Image', Image]
29
+ ]);
30
+ class GridCellRendererModel {
31
+ constructor(deps) {
32
+ this._tickMemoizer = new TickMemoizer();
33
+ this._getProps = deps.getProps;
34
+ this._labels = deps.labels;
35
+ this._getControlTheme = deps.getControlTheme;
36
+ this._property = this._getPropertyInstance();
37
+ }
38
+ getValue() {
39
+ return this._getProps().parameters.value.raw;
40
+ }
41
+ /**
42
+ * Returns an object so we can use both --- and null as valid null values.
43
+ */
44
+ getFormattedValue() {
45
+ const formattedValue = this._getProps().parameters.value.formatted ?? null;
46
+ //action columns should always return empty string;
47
+ if (this.getColumn().type === 'action') {
48
+ return {
49
+ value: null,
50
+ placeholder: null
51
+ };
52
+ }
53
+ else if (this.getColumn().grouping?.isGrouped) {
54
+ //if the column is grouped, we should aways have --- as placeholder
55
+ return {
56
+ value: formattedValue,
57
+ placeholder: formattedValue ?? '---'
58
+ };
59
+ }
60
+ else if (this.getColumn().aggregation?.aggregationFunction) {
61
+ return {
62
+ value: formattedValue,
63
+ placeholder: formattedValue
64
+ };
65
+ }
66
+ else {
67
+ return {
68
+ value: formattedValue,
69
+ placeholder: formattedValue ?? '---'
70
+ };
71
+ }
72
+ }
73
+ isTotalRow() {
74
+ return this.getRecord().getDataProvider().getSummarizationType() === 'aggregation';
75
+ }
76
+ getFileAttachmentIcon() {
77
+ return this._getPropertyInstance().getFileAttachmentIcon();
78
+ }
79
+ getImageThumbnailUrl() {
80
+ return this._getPropertyInstance().getImageThumbnailUrl();
81
+ }
82
+ getPrefixIconProps() {
83
+ return this._tickMemoizer.getOnce('getPrefixIconProps', () => this._getIconProps('PrefixIcon'));
84
+ }
85
+ shouldUsePortalDownload() {
86
+ return this._property.shouldUsePortalDownload();
87
+ }
88
+ getSuffixIconProps() {
89
+ return this._tickMemoizer.getOnce('getSuffixIconProps', () => this._getIconProps('SuffixIcon'));
90
+ }
91
+ getColumn() {
92
+ return this._getProps().parameters.Column.raw;
93
+ }
94
+ getRecord() {
95
+ return this._getProps().parameters.Record.raw;
96
+ }
97
+ getDataset() {
98
+ return this._getProps().parameters.Dataset.raw;
99
+ }
100
+ getValueAttributes() {
101
+ return this._getProps().parameters.value.attributes ?? {};
102
+ }
103
+ getLinkProps() {
104
+ const formattedValue = this.getFormattedValue().value;
105
+ switch (true) {
106
+ case formattedValue == null:
107
+ //navigation enabled by default
108
+ case this._getProps().parameters.EnableNavigation?.raw === false && !this.isFile(): {
109
+ return null;
110
+ }
111
+ default: {
112
+ return this._property.getLinkProps();
113
+ }
114
+ }
115
+ }
116
+ async downloadPortalFile() {
117
+ return this._property.downloadPortalFile();
118
+ }
119
+ getColorfulOptionSet() {
120
+ switch (true) {
121
+ case this.getFormattedValue().value == null:
122
+ case this._getProps().parameters.EnableOptionSetColors?.raw !== true:
123
+ case this._getProps().parameters.AggregationFunction?.raw != null: {
124
+ return null;
125
+ }
126
+ default: {
127
+ return this._property.getColorfulOptionSet();
128
+ }
129
+ }
130
+ }
131
+ getFormattedAggregatedValue() {
132
+ const aggregatedFormattedValue = this._getProps().parameters.AggregatedValue?.formatted ?? null;
133
+ if (!aggregatedFormattedValue) {
134
+ return null;
135
+ }
136
+ if (this.getColumn().grouping?.isGrouped) {
137
+ return `(${aggregatedFormattedValue})`;
138
+ }
139
+ return aggregatedFormattedValue;
140
+ }
141
+ getAggregationLabel() {
142
+ const aggregationFunction = this._getProps().parameters.AggregationFunction?.raw;
143
+ switch (aggregationFunction) {
144
+ case 'avg': {
145
+ return this._labels.avg();
146
+ }
147
+ case 'max': {
148
+ return this._labels.max();
149
+ }
150
+ case 'min': {
151
+ return this._labels.min();
152
+ }
153
+ case 'sum': {
154
+ return this._labels.sum();
155
+ }
156
+ case 'count': {
157
+ return this._labels.count();
158
+ }
159
+ case 'countcolumn': {
160
+ return this._labels.countcolumn();
161
+ }
162
+ }
163
+ }
164
+ getContext() {
165
+ return this._getProps().context;
166
+ }
167
+ getControlTheme() {
168
+ return this._getControlTheme();
169
+ }
170
+ getColumnAlignment() {
171
+ return this._getProps().parameters.ColumnAlignment.raw;
172
+ }
173
+ isMultiline() {
174
+ if (this.isTotalRow()) {
175
+ return false;
176
+ }
177
+ if (this.getRecord().getSummarizationType() === 'grouping' && !this.getValue()) {
178
+ return false;
179
+ }
180
+ return this._property.isMultiline();
181
+ }
182
+ isAutoHeightEnabled() {
183
+ if (this.isTotalRow()) {
184
+ return false;
185
+ }
186
+ return !!this.getColumn().autoHeight;
187
+ }
188
+ isFile() {
189
+ if (!this.getFormattedValue().value) {
190
+ return false;
191
+ }
192
+ else {
193
+ return this._property.isFile();
194
+ }
195
+ }
196
+ _getPropertyInstance() {
197
+ const dataType = this._getProps().parameters.value.type;
198
+ const PropertyClass = propertyMap.get(dataType) ?? Property;
199
+ return new PropertyClass(this);
200
+ }
201
+ _getIconProps(propName) {
202
+ const rawJson = this._getProps().parameters[propName]?.raw;
203
+ if (!rawJson) {
204
+ return undefined;
205
+ }
206
+ return JSON.parse(rawJson);
207
+ }
208
+ }
209
+
210
+ export { GridCellRendererModel };
211
+ //# sourceMappingURL=GridCellRendererModel.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"GridCellRendererModel.js","sources":["../../../src/components/GridCellRenderer/GridCellRendererModel.ts"],"sourcesContent":["import { DataType } from \"@talxis/client-libraries\";\nimport { Property } from \"./properties/Property\";\nimport { Email } from \"./properties/Email\";\nimport { Phone } from \"./properties/Phone\";\nimport { IGridCellRenderer } from \"./interfaces\";\nimport { ITranslation } from \"../../hooks\";\nimport { gridGroupCellRendererTranslations } from \"./translations\";\nimport { Url } from \"./properties/Url\";\nimport { Lookup } from './properties/Lookup';\nimport { IIconProps, ITheme } from \"@fluentui/react\";\nimport { MultilineText } from \"./properties/MultilineText\";\nimport { OptionSet } from \"./properties/OptionSet\";\nimport { MultiSelectOptionSet } from \"./properties/MultiSelectOptionSet\";\nimport { TwoOptions } from \"./properties/TwoOptions\";\nimport { File } from \"./properties/File\";\nimport { Image } from \"./properties/Image\";\nimport { TickMemoizer } from '@talxis/client-libraries/dist/helpers/cache/TickMemoizer'\n\ntype Labels = Required<ITranslation<typeof gridGroupCellRendererTranslations>>;\n\ninterface IDeps {\n getProps: () => IGridCellRenderer;\n getControlTheme: () => ITheme;\n labels: Labels;\n}\n\nconst propertyMap: Map<DataType, typeof Property> = new Map([\n ['SingleLine.Email', Email],\n ['SingleLine.Phone', Phone],\n ['SingleLine.URL', Url],\n ['Lookup.Customer', Lookup],\n ['Lookup.Owner', Lookup],\n ['Lookup.Simple', Lookup],\n ['Lookup.Regarding', Lookup],\n ['OptionSet', OptionSet],\n ['MultiSelectPicklist', MultiSelectOptionSet],\n ['TwoOptions', TwoOptions],\n ['SingleLine.TextArea', MultilineText],\n ['Multiple', MultilineText],\n ['File', File],\n ['Image', Image]\n]);\n\ntype MemoizedFunction = 'getSuffixIconProps' | 'getPrefixIconProps';\n\nexport class GridCellRendererModel {\n private _getProps: () => IGridCellRenderer;\n private _getControlTheme: () => ITheme;\n private _property: Property;\n private _labels: Labels;\n private _tickMemoizer: TickMemoizer<MemoizedFunction> = new TickMemoizer();\n\n constructor(deps: IDeps) {\n this._getProps = deps.getProps;\n this._labels = deps.labels;\n this._getControlTheme = deps.getControlTheme;\n this._property = this._getPropertyInstance();\n }\n\n public getValue() {\n return this._getProps().parameters.value.raw;\n }\n /**\n * Returns an object so we can use both --- and null as valid null values.\n */\n public getFormattedValue(): { value: string | null, placeholder: string | null } {\n const formattedValue = this._getProps().parameters.value.formatted ?? null;\n //action columns should always return empty string;\n if (this.getColumn().type === 'action') {\n return {\n value: null,\n placeholder: null\n }\n }\n else if(this.getColumn().grouping?.isGrouped) {\n //if the column is grouped, we should aways have --- as placeholder\n return {\n value: formattedValue,\n placeholder: formattedValue ?? '---'\n }\n }\n else if(this.getColumn().aggregation?.aggregationFunction) {\n return {\n value: formattedValue,\n placeholder: formattedValue\n }\n }\n else {\n return {\n value: formattedValue,\n placeholder: formattedValue ?? '---'\n }\n }\n }\n public isTotalRow() {\n return this.getRecord().getDataProvider().getSummarizationType() === 'aggregation';\n }\n\n public getFileAttachmentIcon() {\n return this._getPropertyInstance().getFileAttachmentIcon();\n }\n\n public getImageThumbnailUrl() {\n return this._getPropertyInstance().getImageThumbnailUrl();\n }\n\n public getPrefixIconProps(): IIconProps | undefined {\n return this._tickMemoizer.getOnce('getPrefixIconProps', () => this._getIconProps('PrefixIcon'))\n }\n\n public shouldUsePortalDownload(): boolean {\n return this._property.shouldUsePortalDownload();\n }\n\n public getSuffixIconProps(): IIconProps | undefined {\n return this._tickMemoizer.getOnce('getSuffixIconProps', () => this._getIconProps('SuffixIcon'))\n }\n\n public getColumn() {\n return this._getProps().parameters.Column.raw;\n }\n\n public getRecord() {\n return this._getProps().parameters.Record.raw;\n }\n\n public getDataset() {\n return this._getProps().parameters.Dataset.raw;\n }\n\n public getValueAttributes() {\n return this._getProps().parameters.value.attributes ?? {};\n }\n\n public getLinkProps() {\n const formattedValue = this.getFormattedValue().value;\n switch (true) {\n case formattedValue == null: \n //navigation enabled by default\n case this._getProps().parameters.EnableNavigation?.raw === false && !this.isFile(): {\n return null;\n }\n default: {\n return this._property.getLinkProps();\n }\n }\n }\n\n public async downloadPortalFile() {\n return this._property.downloadPortalFile();\n }\n\n public getColorfulOptionSet() {\n switch (true) {\n case this.getFormattedValue().value == null:\n case this._getProps().parameters.EnableOptionSetColors?.raw !== true:\n case this._getProps().parameters.AggregationFunction?.raw != null: {\n return null;\n }\n default: {\n return this._property.getColorfulOptionSet();\n }\n }\n }\n\n public getFormattedAggregatedValue(): string | null {\n const aggregatedFormattedValue = this._getProps().parameters.AggregatedValue?.formatted ?? null;\n if (!aggregatedFormattedValue) {\n return null;\n }\n if(this.getColumn().grouping?.isGrouped) {\n return `(${aggregatedFormattedValue})`;\n }\n return aggregatedFormattedValue;\n }\n\n public getAggregationLabel() {\n const aggregationFunction = this._getProps().parameters.AggregationFunction?.raw\n switch (aggregationFunction) {\n case 'avg': {\n return this._labels.avg();\n }\n case 'max': {\n return this._labels.max();\n }\n case 'min': {\n return this._labels.min();\n }\n case 'sum': {\n return this._labels.sum();\n }\n case 'count': {\n return this._labels.count()\n }\n case 'countcolumn': {\n return this._labels.countcolumn()\n }\n }\n }\n\n public getContext() {\n return this._getProps().context;\n }\n\n public getControlTheme() {\n return this._getControlTheme();\n }\n\n public getColumnAlignment() {\n return this._getProps().parameters.ColumnAlignment.raw;\n }\n\n public isMultiline() {\n if (this.isTotalRow()) {\n return false;\n }\n if(this.getRecord().getSummarizationType() === 'grouping' && !this.getValue()) {\n return false;\n }\n return this._property.isMultiline();\n }\n\n public isAutoHeightEnabled() {\n if(this.isTotalRow()) {\n return false;\n }\n return !!this.getColumn().autoHeight;\n }\n\n public isFile() {\n if (!this.getFormattedValue().value) {\n return false;\n }\n else {\n return this._property.isFile();\n }\n }\n\n private _getPropertyInstance(): Property {\n const dataType = this._getProps().parameters.value.type as DataType;\n const PropertyClass = propertyMap.get(dataType) ?? Property;\n return new PropertyClass(this);\n }\n\n private _getIconProps(propName: 'PrefixIcon' | 'SuffixIcon'): IIconProps | undefined {\n const rawJson = this._getProps().parameters[propName]?.raw;\n if (!rawJson) {\n return undefined;\n }\n return JSON.parse(rawJson);\n }\n\n}"],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ /// <reference types="react" />
2
+ /// <reference types="@types/powerapps-component-framework" />
3
+ import { IColorfulOptionSetValueRendererProps as IColorfulOptionSetValueRendererPropsBase } from "../../interfaces";
4
+ interface IColorfulOptionSetValueRendererProps {
5
+ optionSet: ComponentFramework.PropertyHelper.OptionMetadata[];
6
+ onRenderColorfulOptionSet: (props: IColorfulOptionSetValueRendererPropsBase, defaultRender: (props: IColorfulOptionSetValueRendererPropsBase) => React.ReactElement) => React.ReactElement;
7
+ }
8
+ export declare const ColorfulOptionSetValueRenderer: (props: IColorfulOptionSetValueRendererProps) => import("react").ReactElement<any, string | import("react").JSXElementConstructor<any>>;
9
+ export {};
@@ -0,0 +1,53 @@
1
+ import { jsx } from 'react/jsx-runtime';
2
+ import { useMemo } from 'react';
3
+ import { getColorfulOptionSetValuesRendererStyles, getColorfulOptionValueRendererStyles } from './styles.js';
4
+ import { useTheme, merge, ThemeProvider, Text } from '@fluentui/react';
5
+ import { Theming, useThemeGenerator } from '@talxis/react-components';
6
+ import { useModel } from '../../useModel.js';
7
+
8
+ const ColorfulOptionSetValueRenderer = (props) => {
9
+ const { onRenderColorfulOptionSet, optionSet } = props;
10
+ const model = useModel();
11
+ const styles = useMemo(() => getColorfulOptionSetValuesRendererStyles(model.getColumnAlignment()), [model.getColumnAlignment()]);
12
+ return onRenderColorfulOptionSet({
13
+ container: {
14
+ className: styles.colorfulOptionSetValueRendererRoot
15
+ },
16
+ onRenderOption: (props, defaultRender) => defaultRender(props)
17
+ }, (props) => {
18
+ return jsx("div", { ...props.container, children: optionSet.map(option => {
19
+ return jsx(ColorOptionValueRenderer, { option: option, onRenderOption: props.onRenderOption }, option.Value);
20
+ }) });
21
+ });
22
+ };
23
+ const ColorOptionValueRenderer = (props) => {
24
+ const { option, onRenderOption } = props;
25
+ const model = useModel();
26
+ const theme = useTheme();
27
+ const backgroundColor = option.Color ?? theme.palette.neutralLight;
28
+ const textColor = Theming.GetTextColorForBackground(backgroundColor);
29
+ const styles = useMemo(() => getColorfulOptionValueRendererStyles(), []);
30
+ const optionTheme = useThemeGenerator(textColor, backgroundColor, textColor, merge({}, {
31
+ fonts: {
32
+ medium: {
33
+ fontWeight: 600
34
+ }
35
+ }
36
+ }, model.getContext().fluentDesignLanguage?.v8FluentOverrides));
37
+ return onRenderOption({
38
+ container: {
39
+ theme: optionTheme,
40
+ className: styles.colorfulOptionValueRendererRoot
41
+ },
42
+ onRenderText: (props, defaultRender) => defaultRender(props)
43
+ }, (props) => {
44
+ return jsx(ThemeProvider, { ...props.container, children: props.onRenderText({
45
+ children: option.Label,
46
+ }, (props) => {
47
+ return jsx(Text, { ...props });
48
+ }) });
49
+ });
50
+ };
51
+
52
+ export { ColorfulOptionSetValueRenderer };
53
+ //# sourceMappingURL=ColorfulOptionSetValueRenderer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ColorfulOptionSetValueRenderer.js","sources":["../../../../../src/components/GridCellRenderer/ValueRenderer/ColorfulOptionSetValueRenderer/ColorfulOptionSetValueRenderer.tsx"],"sourcesContent":["import { useMemo } from \"react\";\nimport { IColorfulOptionSetValueRendererProps as IColorfulOptionSetValueRendererPropsBase, IColorfulOptionValueRendererProps as IColorfulOptionValueRendererPropsBase } from \"../../interfaces\"\nimport { getColorfulOptionSetValuesRendererStyles, getColorfulOptionValueRendererStyles } from \"./styles\";\nimport { PartialTheme, Text, ThemeProvider, useTheme, merge } from \"@fluentui/react\";\nimport { Theming, useThemeGenerator } from \"@talxis/react-components\";\nimport { useModel } from \"../../useModel\";\n\ninterface IColorfulOptionSetValueRendererProps {\n optionSet: ComponentFramework.PropertyHelper.OptionMetadata[];\n onRenderColorfulOptionSet: (props: IColorfulOptionSetValueRendererPropsBase, defaultRender: (props: IColorfulOptionSetValueRendererPropsBase) => React.ReactElement) => React.ReactElement;\n}\n\ninterface IColorfulOptionValueRendererProps {\n option: ComponentFramework.PropertyHelper.OptionMetadata;\n onRenderOption: (props: IColorfulOptionValueRendererPropsBase, defaultRender: (props: IColorfulOptionValueRendererPropsBase) => React.ReactElement) => React.ReactElement;\n}\n\nexport const ColorfulOptionSetValueRenderer = (props: IColorfulOptionSetValueRendererProps) => {\n const { onRenderColorfulOptionSet, optionSet } = props;\n const model = useModel();\n const styles = useMemo(() => getColorfulOptionSetValuesRendererStyles(model.getColumnAlignment()), [model.getColumnAlignment()]);\n\n return onRenderColorfulOptionSet({\n container: {\n className: styles.colorfulOptionSetValueRendererRoot\n },\n onRenderOption: (props, defaultRender) => defaultRender(props)\n }, (props) => {\n return <div {...props.container}>\n {optionSet.map(option => {\n return <ColorOptionValueRenderer\n key={option.Value}\n option={option}\n onRenderOption={props.onRenderOption} />\n })}\n </div>\n })\n}\n\nconst ColorOptionValueRenderer = (props: IColorfulOptionValueRendererProps) => {\n const { option, onRenderOption } = props;\n const model = useModel();\n const theme = useTheme();\n const backgroundColor = option.Color ?? theme.palette.neutralLight;\n const textColor = Theming.GetTextColorForBackground(backgroundColor);\n const styles = useMemo(() => getColorfulOptionValueRendererStyles(), []);\n const optionTheme = useThemeGenerator(textColor, backgroundColor, textColor, merge({}, {\n fonts: {\n medium: {\n fontWeight: 600\n }\n }\n } as PartialTheme, model.getContext().fluentDesignLanguage?.v8FluentOverrides as PartialTheme));\n\n return onRenderOption({\n container: {\n theme: optionTheme,\n className: styles.colorfulOptionValueRendererRoot\n },\n onRenderText: (props, defaultRender) => defaultRender(props)\n }, (props) => {\n return <ThemeProvider {...props.container}>\n {props.onRenderText({\n children: option.Label,\n }, (props) => {\n return <Text {...props} />\n })}\n </ThemeProvider>\n })\n}"],"names":["_jsx"],"mappings":";;;;;;;AAiBa,MAAA,8BAA8B,GAAG,CAAC,KAA2C,KAAI;AAC1F,IAAA,MAAM,EAAE,yBAAyB,EAAE,SAAS,EAAE,GAAG,KAAK,CAAC;AACvD,IAAA,MAAM,KAAK,GAAG,QAAQ,EAAE,CAAC;IACzB,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,wCAAwC,CAAC,KAAK,CAAC,kBAAkB,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC,kBAAkB,EAAE,CAAC,CAAC,CAAC;AAEjI,IAAA,OAAO,yBAAyB,CAAC;AAC7B,QAAA,SAAS,EAAE;YACP,SAAS,EAAE,MAAM,CAAC,kCAAkC;AACvD,SAAA;QACD,cAAc,EAAE,CAAC,KAAK,EAAE,aAAa,KAAK,aAAa,CAAC,KAAK,CAAC;KACjE,EAAE,CAAC,KAAK,KAAI;QACT,OAAOA,GAAA,CAAA,KAAA,EAAA,EAAA,GAAS,KAAK,CAAC,SAAS,EAAA,QAAA,EAC1B,SAAS,CAAC,GAAG,CAAC,MAAM,IAAG;AACpB,gBAAA,OAAOA,IAAC,wBAAwB,EAAA,EAE5B,MAAM,EAAE,MAAM,EACd,cAAc,EAAE,KAAK,CAAC,cAAc,EAAA,EAF/B,MAAM,CAAC,KAAK,CAEuB,CAAA;aAC/C,CAAC,GACA,CAAA;AACV,KAAC,CAAC,CAAA;AACN,EAAC;AAED,MAAM,wBAAwB,GAAG,CAAC,KAAwC,KAAI;AAC1E,IAAA,MAAM,EAAE,MAAM,EAAE,cAAc,EAAE,GAAG,KAAK,CAAC;AACzC,IAAA,MAAM,KAAK,GAAG,QAAQ,EAAE,CAAC;AACzB,IAAA,MAAM,KAAK,GAAG,QAAQ,EAAE,CAAC;IACzB,MAAM,eAAe,GAAG,MAAM,CAAC,KAAK,IAAI,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC;IACnE,MAAM,SAAS,GAAG,OAAO,CAAC,yBAAyB,CAAC,eAAe,CAAC,CAAC;AACrE,IAAA,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,oCAAoC,EAAE,EAAE,EAAE,CAAC,CAAC;AACzE,IAAA,MAAM,WAAW,GAAG,iBAAiB,CAAC,SAAS,EAAE,eAAe,EAAE,SAAS,EAAE,KAAK,CAAC,EAAE,EAAE;AACnF,QAAA,KAAK,EAAE;AACH,YAAA,MAAM,EAAE;AACJ,gBAAA,UAAU,EAAE,GAAG;AAClB,aAAA;AACJ,SAAA;KACY,EAAE,KAAK,CAAC,UAAU,EAAE,CAAC,oBAAoB,EAAE,iBAAiC,CAAC,CAAC,CAAC;AAEhG,IAAA,OAAO,cAAc,CAAC;AAClB,QAAA,SAAS,EAAE;AACP,YAAA,KAAK,EAAE,WAAW;YAClB,SAAS,EAAE,MAAM,CAAC,+BAA+B;AACpD,SAAA;QACD,YAAY,EAAE,CAAC,KAAK,EAAE,aAAa,KAAK,aAAa,CAAC,KAAK,CAAC;KAC/D,EAAE,CAAC,KAAK,KAAI;QACT,OAAOA,GAAA,CAAC,aAAa,EAAA,EAAA,GAAK,KAAK,CAAC,SAAS,EACpC,QAAA,EAAA,KAAK,CAAC,YAAY,CAAC;gBAChB,QAAQ,EAAE,MAAM,CAAC,KAAK;aACzB,EAAE,CAAC,KAAK,KAAI;AACT,gBAAA,OAAOA,GAAC,CAAA,IAAI,EAAK,EAAA,GAAA,KAAK,GAAI,CAAA;aAC7B,CAAC,GACU,CAAA;AACpB,KAAC,CAAC,CAAA;AACN,CAAC;;;;"}
@@ -0,0 +1,20 @@
1
+ import { IColumn } from "@talxis/client-libraries";
2
+ export declare const getColorfulOptionSetValuesRendererStyles: (columnAlignment: IColumn['alignment']) => import("@fluentui/react").IProcessedStyleSet<{
3
+ colorfulOptionSetValueRendererRoot: {
4
+ display: string;
5
+ gap: number;
6
+ width: string;
7
+ justifyContent: string | undefined;
8
+ };
9
+ }>;
10
+ export declare const getColorfulOptionValueRendererStyles: () => import("@fluentui/react").IProcessedStyleSet<{
11
+ colorfulOptionValueRendererRoot: {
12
+ borderRadius: number;
13
+ paddingLeft: number;
14
+ paddingRight: number;
15
+ overflow: string;
16
+ textOverflow: string;
17
+ flexGrow: number;
18
+ maxWidth: string;
19
+ };
20
+ }>;
@@ -0,0 +1,29 @@
1
+ import { mergeStyleSets } from '@fluentui/react';
2
+ import { getJustifyContent } from '../../styles.js';
3
+
4
+ const getColorfulOptionSetValuesRendererStyles = (columnAlignment) => {
5
+ return mergeStyleSets({
6
+ colorfulOptionSetValueRendererRoot: {
7
+ display: 'flex',
8
+ gap: 5,
9
+ width: '100%',
10
+ justifyContent: getJustifyContent(columnAlignment)
11
+ }
12
+ });
13
+ };
14
+ const getColorfulOptionValueRendererStyles = () => {
15
+ return mergeStyleSets({
16
+ colorfulOptionValueRendererRoot: {
17
+ borderRadius: 5,
18
+ paddingLeft: 4,
19
+ paddingRight: 4,
20
+ overflow: 'hidden',
21
+ textOverflow: 'ellipsis',
22
+ flexGrow: 1,
23
+ maxWidth: 'fit-content'
24
+ }
25
+ });
26
+ };
27
+
28
+ export { getColorfulOptionSetValuesRendererStyles, getColorfulOptionValueRendererStyles };
29
+ //# sourceMappingURL=styles.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"styles.js","sources":["../../../../../src/components/GridCellRenderer/ValueRenderer/ColorfulOptionSetValueRenderer/styles.ts"],"sourcesContent":["import { mergeStyleSets } from \"@fluentui/react\"\nimport { getJustifyContent } from \"../../styles\"\nimport { IColumn } from \"@talxis/client-libraries\"\n\nexport const getColorfulOptionSetValuesRendererStyles = (columnAlignment: IColumn['alignment']) => {\n return mergeStyleSets({\n colorfulOptionSetValueRendererRoot: {\n display: 'flex',\n gap: 5,\n width: '100%',\n justifyContent: getJustifyContent(columnAlignment)\n }\n })\n}\n\nexport const getColorfulOptionValueRendererStyles = () => {\n return mergeStyleSets({\n colorfulOptionValueRendererRoot: {\n borderRadius: 5,\n paddingLeft: 4,\n paddingRight: 4,\n overflow: 'hidden',\n textOverflow: 'ellipsis',\n flexGrow: 1,\n maxWidth: 'fit-content'\n }\n })\n}"],"names":[],"mappings":";;;AAIa,MAAA,wCAAwC,GAAG,CAAC,eAAqC,KAAI;AAC9F,IAAA,OAAO,cAAc,CAAC;AAClB,QAAA,kCAAkC,EAAE;AAChC,YAAA,OAAO,EAAE,MAAM;AACf,YAAA,GAAG,EAAE,CAAC;AACN,YAAA,KAAK,EAAE,MAAM;AACb,YAAA,cAAc,EAAE,iBAAiB,CAAC,eAAe,CAAC;AACrD,SAAA;AACJ,KAAA,CAAC,CAAA;AACN,EAAC;AAEM,MAAM,oCAAoC,GAAG,MAAK;AACrD,IAAA,OAAO,cAAc,CAAC;AAClB,QAAA,+BAA+B,EAAE;AAC7B,YAAA,YAAY,EAAE,CAAC;AACf,YAAA,WAAW,EAAE,CAAC;AACd,YAAA,YAAY,EAAE,CAAC;AACf,YAAA,QAAQ,EAAE,QAAQ;AAClB,YAAA,YAAY,EAAE,UAAU;AACxB,YAAA,QAAQ,EAAE,CAAC;AACX,YAAA,QAAQ,EAAE,aAAa;AAC1B,SAAA;AACJ,KAAA,CAAC,CAAA;AACN;;;;"}
@@ -0,0 +1,7 @@
1
+ import React from "react";
2
+ import { IFileRendererProps as IFileRendererPropsBase } from "../../interfaces";
3
+ interface IFileRendererProps {
4
+ onRenderFile: (props: IFileRendererPropsBase, defaultRender: (props: IFileRendererPropsBase) => React.ReactElement) => React.ReactElement;
5
+ }
6
+ export declare const FileRenderer: (props: IFileRendererProps) => React.ReactElement<any, string | React.JSXElementConstructor<any>>;
7
+ export {};
@@ -0,0 +1,76 @@
1
+ import { jsxs, jsx } from 'react/jsx-runtime';
2
+ import React, { useMemo } from 'react';
3
+ import { useModel } from '../../useModel.js';
4
+ import { Link, SpinnerSize, Image, Icon } from '@fluentui/react';
5
+ import { getFileRendererStyles } from './styles.js';
6
+ import { Spinner } from '@talxis/react-components';
7
+
8
+ const FileRenderer = (props) => {
9
+ const model = useModel();
10
+ const styles = useMemo(() => getFileRendererStyles(), []);
11
+ const [isFileDownloading, setIsFileDownloading] = React.useState(false);
12
+ const [thumbnailFailedToLoad, setThumbnailFailedToLoad] = React.useState(false);
13
+ const onLinkClick = async (e) => {
14
+ if (model.shouldUsePortalDownload()) {
15
+ e.preventDefault();
16
+ setIsFileDownloading(true);
17
+ await model.downloadPortalFile();
18
+ setIsFileDownloading(false);
19
+ }
20
+ };
21
+ const onRenderLoadingPrefix = (props) => {
22
+ const thumbnailUrl = model.getImageThumbnailUrl();
23
+ if (isFileDownloading) {
24
+ return props.onRenderLoading({
25
+ size: SpinnerSize.xSmall,
26
+ styles: {
27
+ circle: styles.spinner
28
+ }
29
+ }, (props) => {
30
+ return jsx(Spinner, { ...props });
31
+ });
32
+ }
33
+ else if (thumbnailUrl && !thumbnailFailedToLoad) {
34
+ return props.onRenderImageThumbnail({
35
+ src: thumbnailUrl,
36
+ styles: {
37
+ image: styles.thumbnail
38
+ },
39
+ onLoadingStateChange: (state) => {
40
+ if (state == 2) {
41
+ setThumbnailFailedToLoad(true);
42
+ }
43
+ }
44
+ }, (props) => {
45
+ return jsx(Image, { ...props });
46
+ });
47
+ }
48
+ else {
49
+ return props.onRenderFileAttachmentIcon({
50
+ iconName: model.getFileAttachmentIcon()
51
+ }, (props) => {
52
+ return jsx(Icon, { ...props });
53
+ });
54
+ }
55
+ };
56
+ return props.onRenderFile({
57
+ container: {
58
+ className: styles.fileRendererRoot
59
+ },
60
+ onRenderFileAttachmentIcon: (props, defaultRender) => defaultRender(props),
61
+ onRenderImageThumbnail: (props, defaultRender) => defaultRender(props),
62
+ onRenderLoading: (props, defaultRender) => defaultRender(props),
63
+ onRenderLink: (props, defaultRender) => defaultRender(props)
64
+ }, (props) => {
65
+ return jsxs("div", { ...props.container, children: [onRenderLoadingPrefix(props), props.onRenderLink({
66
+ ...model.getLinkProps(),
67
+ className: styles.link,
68
+ onClick: onLinkClick,
69
+ }, (props) => {
70
+ return jsx(Link, { ...props });
71
+ })] });
72
+ });
73
+ };
74
+
75
+ export { FileRenderer };
76
+ //# sourceMappingURL=FileRenderer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FileRenderer.js","sources":["../../../../../src/components/GridCellRenderer/ValueRenderer/FileRenderer/FileRenderer.tsx"],"sourcesContent":["import React, { useMemo } from \"react\";\nimport { useModel } from \"../../useModel\";\nimport { IFileRendererProps as IFileRendererPropsBase } from \"../../interfaces\";\nimport { Link, SpinnerSize, Image, Icon, ImageFit } from \"@fluentui/react\";\nimport { getFileRendererStyles } from \"./styles\";\nimport { Spinner } from \"@talxis/react-components\";\n\ninterface IFileRendererProps {\n onRenderFile: (props: IFileRendererPropsBase, defaultRender: (props: IFileRendererPropsBase) => React.ReactElement) => React.ReactElement;\n}\n\nexport const FileRenderer = (props: IFileRendererProps) => {\n const model = useModel();\n const styles = useMemo(() => getFileRendererStyles(), [])\n const [isFileDownloading, setIsFileDownloading] = React.useState(false);\n const [thumbnailFailedToLoad, setThumbnailFailedToLoad] = React.useState(false);\n\n const onLinkClick = async (e: React.MouseEvent<HTMLElement | HTMLAnchorElement | HTMLButtonElement, MouseEvent>) => {\n if (model.shouldUsePortalDownload()) {\n e.preventDefault();\n setIsFileDownloading(true);\n await model.downloadPortalFile();\n setIsFileDownloading(false);\n }\n }\n\n const onRenderLoadingPrefix = (props: IFileRendererPropsBase) => {\n const thumbnailUrl = model.getImageThumbnailUrl();\n if (isFileDownloading) {\n return props.onRenderLoading({\n size: SpinnerSize.xSmall,\n styles: {\n circle: styles.spinner\n }\n }, (props) => {\n return <Spinner {...props} />\n })\n }\n else if (thumbnailUrl && !thumbnailFailedToLoad) {\n return props.onRenderImageThumbnail({\n src: thumbnailUrl,\n styles: {\n image: styles.thumbnail\n },\n onLoadingStateChange: (state) => {\n if(state == 2) {\n setThumbnailFailedToLoad(true);\n }\n }\n }, (props) => {\n return <Image {...props} />\n })\n }\n else {\n return props.onRenderFileAttachmentIcon({\n iconName: model.getFileAttachmentIcon()\n }, (props) => {\n return <Icon {...props} />\n })\n }\n }\n\n return props.onRenderFile({\n container: {\n className: styles.fileRendererRoot\n },\n onRenderFileAttachmentIcon: (props, defaultRender) => defaultRender(props),\n onRenderImageThumbnail: (props, defaultRender) => defaultRender(props),\n onRenderLoading: (props, defaultRender) => defaultRender(props),\n onRenderLink: (props, defaultRender) => defaultRender(props)\n\n }, (props) => {\n return <div {...props.container}>\n {onRenderLoadingPrefix(props)}\n {props.onRenderLink({\n ...model.getLinkProps(),\n className: styles.link,\n onClick: onLinkClick,\n }, (props) => {\n return <Link {...props} />\n })}\n </div>\n })\n}"],"names":["_jsx","_jsxs"],"mappings":"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"}
@@ -0,0 +1,18 @@
1
+ export declare const getFileRendererStyles: () => import("@fluentui/react").IProcessedStyleSet<{
2
+ fileRendererRoot: {
3
+ display: string;
4
+ gap: number;
5
+ alignItems: string;
6
+ };
7
+ link: {
8
+ overflow: string;
9
+ textOverflow: string;
10
+ };
11
+ thumbnail: {
12
+ width: number;
13
+ };
14
+ spinner: {
15
+ width: number;
16
+ height: number;
17
+ };
18
+ }>;
@@ -0,0 +1,25 @@
1
+ import { mergeStyleSets } from '@fluentui/react';
2
+
3
+ const getFileRendererStyles = () => {
4
+ return mergeStyleSets({
5
+ fileRendererRoot: {
6
+ display: 'flex',
7
+ gap: 5,
8
+ alignItems: 'center'
9
+ },
10
+ link: {
11
+ overflow: 'hidden',
12
+ textOverflow: 'ellipsis',
13
+ },
14
+ thumbnail: {
15
+ width: 32
16
+ },
17
+ spinner: {
18
+ width: 18,
19
+ height: 18
20
+ }
21
+ });
22
+ };
23
+
24
+ export { getFileRendererStyles };
25
+ //# sourceMappingURL=styles.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"styles.js","sources":["../../../../../src/components/GridCellRenderer/ValueRenderer/FileRenderer/styles.ts"],"sourcesContent":["import { mergeStyleSets } from \"@fluentui/react\"\n\nexport const getFileRendererStyles = () => {\n return mergeStyleSets({\n fileRendererRoot: {\n display: 'flex',\n gap: 5,\n alignItems: 'center'\n },\n link: {\n overflow: 'hidden',\n textOverflow: 'ellipsis',\n },\n thumbnail: {\n width: 32\n },\n spinner: {\n width: 18,\n height: 18\n }\n })\n}"],"names":[],"mappings":";;AAEO,MAAM,qBAAqB,GAAG,MAAK;AACtC,IAAA,OAAO,cAAc,CAAC;AAClB,QAAA,gBAAgB,EAAE;AACd,YAAA,OAAO,EAAE,MAAM;AACf,YAAA,GAAG,EAAE,CAAC;AACN,YAAA,UAAU,EAAE,QAAQ;AACvB,SAAA;AACD,QAAA,IAAI,EAAE;AACF,YAAA,QAAQ,EAAE,QAAQ;AAClB,YAAA,YAAY,EAAE,UAAU;AAC3B,SAAA;AACD,QAAA,SAAS,EAAE;AACP,YAAA,KAAK,EAAE,EAAE;AACZ,SAAA;AACD,QAAA,OAAO,EAAE;AACL,YAAA,KAAK,EAAE,EAAE;AACT,YAAA,MAAM,EAAE,EAAE;AACb,SAAA;AACJ,KAAA,CAAC,CAAA;AACN;;;;"}
@@ -0,0 +1,3 @@
1
+ /// <reference types="react" />
2
+ import { IValueRendererProps } from "../interfaces";
3
+ export declare const ValueRenderer: (props: IValueRendererProps) => JSX.Element;
@@ -0,0 +1,52 @@
1
+ import { jsx } from 'react/jsx-runtime';
2
+ import { useMemo } from 'react';
3
+ import { Link, Text } from '@fluentui/react';
4
+ import { getValueRendererStyles } from './styles.js';
5
+ import { ColorfulOptionSetValueRenderer } from './ColorfulOptionSetValueRenderer/ColorfulOptionSetValueRenderer.js';
6
+ import { useModel } from '../useModel.js';
7
+ import { FileRenderer } from './FileRenderer/FileRenderer.js';
8
+ import { getClassNames } from '@talxis/react-components';
9
+
10
+ const ValueRenderer = (props) => {
11
+ const model = useModel();
12
+ const theme = model.getControlTheme();
13
+ const formattedValue = model.getFormattedValue();
14
+ const linkProps = model.getLinkProps();
15
+ const isFile = model.isFile();
16
+ const colorfulOptionSet = model.getColorfulOptionSet();
17
+ const styles = useMemo(() => getValueRendererStyles({
18
+ theme: theme,
19
+ isMultiline: model.isMultiline(),
20
+ makeBold: !!model.getAggregationLabel() || !!model.getFormattedAggregatedValue()
21
+ }), [theme,
22
+ model.isMultiline(),
23
+ model.getAggregationLabel(),
24
+ !!model.getAggregationLabel() || !!model.getFormattedAggregatedValue()
25
+ ]);
26
+ if (isFile) {
27
+ return jsx(FileRenderer, { onRenderFile: props.onRenderFile });
28
+ }
29
+ else if (linkProps) {
30
+ return props.onRenderLink({
31
+ ...linkProps,
32
+ className: styles.link,
33
+ as: 'a'
34
+ }, (props) => {
35
+ return jsx(Link, { ...props });
36
+ });
37
+ }
38
+ else if (colorfulOptionSet) {
39
+ return jsx(ColorfulOptionSetValueRenderer, { optionSet: colorfulOptionSet, onRenderColorfulOptionSet: props.onRenderColorfulOptionSet });
40
+ }
41
+ else {
42
+ return props.onRenderText({
43
+ className: getClassNames([styles.text, !formattedValue.value ? styles.placeholder : undefined]),
44
+ children: formattedValue.placeholder
45
+ }, (props) => {
46
+ return jsx(Text, { ...props, children: formattedValue.placeholder });
47
+ });
48
+ }
49
+ };
50
+
51
+ export { ValueRenderer };
52
+ //# sourceMappingURL=ValueRenderer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ValueRenderer.js","sources":["../../../../src/components/GridCellRenderer/ValueRenderer/ValueRenderer.tsx"],"sourcesContent":["import { useMemo } from \"react\";\nimport { IValueRendererProps } from \"../interfaces\";\nimport { Link, Text } from '@fluentui/react';\nimport { getValueRendererStyles } from \"./styles\";\nimport { ColorfulOptionSetValueRenderer } from \"./ColorfulOptionSetValueRenderer/ColorfulOptionSetValueRenderer\";\nimport { useModel } from \"../useModel\";\nimport { FileRenderer } from \"./FileRenderer/FileRenderer\";\nimport { getClassNames } from \"@talxis/react-components\";\n\nexport const ValueRenderer = (props: IValueRendererProps) => {\n const model = useModel();\n const theme = model.getControlTheme();\n const formattedValue = model.getFormattedValue();\n const linkProps = model.getLinkProps();\n const isFile = model.isFile();\n const colorfulOptionSet = model.getColorfulOptionSet();\n const styles = useMemo(() => getValueRendererStyles({\n theme: theme,\n isMultiline: model.isMultiline(),\n makeBold: !!model.getAggregationLabel() || !!model.getFormattedAggregatedValue()\n }), [theme,\n model.isMultiline(),\n model.getAggregationLabel(),\n !!model.getAggregationLabel() || !!model.getFormattedAggregatedValue()\n ]);\n\n if (isFile) {\n return <FileRenderer onRenderFile={props.onRenderFile} />\n }\n\n else if (linkProps) {\n return props.onRenderLink({\n ...linkProps,\n className: styles.link,\n as: 'a'\n }, (props) => {\n return <Link {...props} />\n })\n }\n\n else if (colorfulOptionSet) {\n return <ColorfulOptionSetValueRenderer\n optionSet={colorfulOptionSet}\n onRenderColorfulOptionSet={props.onRenderColorfulOptionSet}\n />\n }\n else {\n return props.onRenderText({\n className: getClassNames([styles.text, !formattedValue.value ? styles.placeholder : undefined]),\n children: formattedValue.placeholder\n }, (props) => {\n return <Text {...props}>{formattedValue.placeholder}</Text>;\n })\n }\n}"],"names":["_jsx"],"mappings":";;;;;;;;;AASa,MAAA,aAAa,GAAG,CAAC,KAA0B,KAAI;AACxD,IAAA,MAAM,KAAK,GAAG,QAAQ,EAAE,CAAC;AACzB,IAAA,MAAM,KAAK,GAAG,KAAK,CAAC,eAAe,EAAE,CAAC;AACtC,IAAA,MAAM,cAAc,GAAG,KAAK,CAAC,iBAAiB,EAAE,CAAC;AACjD,IAAA,MAAM,SAAS,GAAG,KAAK,CAAC,YAAY,EAAE,CAAC;AACvC,IAAA,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC;AAC9B,IAAA,MAAM,iBAAiB,GAAG,KAAK,CAAC,oBAAoB,EAAE,CAAC;IACvD,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,sBAAsB,CAAC;AAChD,QAAA,KAAK,EAAE,KAAK;AACZ,QAAA,WAAW,EAAE,KAAK,CAAC,WAAW,EAAE;AAChC,QAAA,QAAQ,EAAE,CAAC,CAAC,KAAK,CAAC,mBAAmB,EAAE,IAAI,CAAC,CAAC,KAAK,CAAC,2BAA2B,EAAE;KACnF,CAAC,EAAE,CAAC,KAAK;QACN,KAAK,CAAC,WAAW,EAAE;QACnB,KAAK,CAAC,mBAAmB,EAAE;QAC3B,CAAC,CAAC,KAAK,CAAC,mBAAmB,EAAE,IAAI,CAAC,CAAC,KAAK,CAAC,2BAA2B,EAAE;AACzE,KAAA,CAAC,CAAC;AAEH,IAAA,IAAI,MAAM,EAAE;QACR,OAAOA,GAAA,CAAC,YAAY,EAAC,EAAA,YAAY,EAAE,KAAK,CAAC,YAAY,EAAA,CAAI,CAAA;AAC5D,KAAA;AAEI,SAAA,IAAI,SAAS,EAAE;QAChB,OAAO,KAAK,CAAC,YAAY,CAAC;AACtB,YAAA,GAAG,SAAS;YACZ,SAAS,EAAE,MAAM,CAAC,IAAI;AACtB,YAAA,EAAE,EAAE,GAAG;SACV,EAAE,CAAC,KAAK,KAAI;AACT,YAAA,OAAOA,GAAC,CAAA,IAAI,EAAK,EAAA,GAAA,KAAK,GAAI,CAAA;AAC9B,SAAC,CAAC,CAAA;AACL,KAAA;AAEI,SAAA,IAAI,iBAAiB,EAAE;AACxB,QAAA,OAAOA,GAAC,CAAA,8BAA8B,EAClC,EAAA,SAAS,EAAE,iBAAiB,EAC5B,yBAAyB,EAAE,KAAK,CAAC,yBAAyB,GAC5D,CAAA;AACL,KAAA;AACI,SAAA;QACD,OAAO,KAAK,CAAC,YAAY,CAAC;YACtB,SAAS,EAAE,aAAa,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,cAAc,CAAC,KAAK,GAAG,MAAM,CAAC,WAAW,GAAG,SAAS,CAAC,CAAC;YAC/F,QAAQ,EAAE,cAAc,CAAC,WAAW;SACvC,EAAE,CAAC,KAAK,KAAI;YACT,OAAOA,GAAA,CAAC,IAAI,EAAK,EAAA,GAAA,KAAK,YAAG,cAAc,CAAC,WAAW,EAAA,CAAQ,CAAC;AAChE,SAAC,CAAC,CAAA;AACL,KAAA;AACL;;;;"}