@talxis/base-controls 1.2502.1 → 1.2503.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (283) hide show
  1. package/dist/components/DatasetControl/DatasetControl.js +21 -34
  2. package/dist/components/DatasetControl/DatasetControl.js.map +1 -1
  3. package/dist/components/DatasetControl/ErrorBoundary.js +33 -0
  4. package/dist/components/DatasetControl/ErrorBoundary.js.map +1 -0
  5. package/dist/components/DatasetControl/QuickFind/QuickFind.d.ts +10 -0
  6. package/dist/components/DatasetControl/QuickFind/QuickFind.js +38 -0
  7. package/dist/components/DatasetControl/QuickFind/QuickFind.js.map +1 -0
  8. package/dist/components/DatasetControl/styles.d.ts +3 -1
  9. package/dist/components/DatasetControl/styles.js +2 -2
  10. package/dist/components/DatasetControl/styles.js.map +1 -1
  11. package/dist/components/DatasetControl/translations.d.ts +8 -0
  12. package/dist/components/DatasetControl/translations.js +3 -1
  13. package/dist/components/DatasetControl/translations.js.map +1 -1
  14. package/dist/components/DateTime/DateTime.js +2 -1
  15. package/dist/components/DateTime/DateTime.js.map +1 -1
  16. package/dist/components/DateTime/components/Calendar.d.ts +2 -1
  17. package/dist/components/DateTime/components/Calendar.js +4 -4
  18. package/dist/components/DateTime/components/Calendar.js.map +1 -1
  19. package/dist/components/DateTime/hooks/useDateTime.js +18 -17
  20. package/dist/components/DateTime/hooks/useDateTime.js.map +1 -1
  21. package/dist/components/Decimal/Decimal.js +5 -1
  22. package/dist/components/Decimal/Decimal.js.map +1 -1
  23. package/dist/components/Duration/Duration.js +49 -26
  24. package/dist/components/Duration/Duration.js.map +1 -1
  25. package/dist/components/Grid/Grid.js +1 -1
  26. package/dist/components/Grid/Grid.js.map +1 -1
  27. package/dist/components/Grid/core/components/AgGrid/AgGrid.js +78 -174
  28. package/dist/components/Grid/core/components/AgGrid/AgGrid.js.map +1 -1
  29. package/dist/components/Grid/core/components/AgGrid/context.d.ts +3 -0
  30. package/dist/components/Grid/core/components/AgGrid/context.js +6 -0
  31. package/dist/components/Grid/core/components/AgGrid/context.js.map +1 -0
  32. package/dist/components/Grid/core/components/AgGrid/model/AgGrid.d.ts +40 -5
  33. package/dist/components/Grid/core/components/AgGrid/model/AgGrid.js +235 -49
  34. package/dist/components/Grid/core/components/AgGrid/model/AgGrid.js.map +1 -1
  35. package/dist/components/Grid/core/components/AgGrid/model/Comparator.d.ts +9 -0
  36. package/dist/components/Grid/core/components/AgGrid/model/Comparator.js +86 -0
  37. package/dist/components/Grid/core/components/AgGrid/model/Comparator.js.map +1 -0
  38. package/dist/components/Grid/core/components/AgGrid/styles.d.ts +28 -32
  39. package/dist/components/Grid/core/components/AgGrid/styles.js +31 -35
  40. package/dist/components/Grid/core/components/AgGrid/styles.js.map +1 -1
  41. package/dist/components/Grid/core/components/Cell/Cell.d.ts +13 -0
  42. package/dist/components/Grid/core/components/Cell/Cell.js +145 -0
  43. package/dist/components/Grid/core/components/Cell/Cell.js.map +1 -0
  44. package/dist/components/Grid/core/components/Cell/CellContent/CellContent.d.ts +3 -0
  45. package/dist/components/Grid/core/components/Cell/CellContent/CellContent.js +212 -0
  46. package/dist/components/Grid/core/components/Cell/CellContent/CellContent.js.map +1 -0
  47. package/dist/components/Grid/core/components/Cell/CellContent/styles.d.ts +33 -0
  48. package/dist/components/Grid/core/components/Cell/CellContent/styles.js +39 -0
  49. package/dist/components/Grid/core/components/Cell/CellContent/styles.js.map +1 -0
  50. package/dist/components/Grid/core/components/Cell/Commands/Commands.js.map +1 -1
  51. package/dist/components/Grid/core/components/Cell/Notifications/Notifications.d.ts +12 -0
  52. package/dist/components/Grid/core/components/Cell/Notifications/Notifications.js +112 -0
  53. package/dist/components/Grid/core/components/Cell/Notifications/Notifications.js.map +1 -0
  54. package/dist/components/Grid/core/components/Cell/Notifications/styles.d.ts +39 -0
  55. package/dist/components/Grid/core/components/Cell/Notifications/styles.js +46 -0
  56. package/dist/components/Grid/core/components/Cell/Notifications/styles.js.map +1 -0
  57. package/dist/components/Grid/core/components/Cell/styles.d.ts +40 -0
  58. package/dist/components/Grid/core/components/Cell/styles.js +59 -0
  59. package/dist/components/Grid/core/components/Cell/styles.js.map +1 -0
  60. package/dist/components/Grid/core/components/ColumnHeader/ColumnHeader.js +3 -2
  61. package/dist/components/Grid/core/components/ColumnHeader/ColumnHeader.js.map +1 -1
  62. package/dist/components/Grid/core/components/ColumnHeader/components/GlobalCheckbox/GlobalCheckbox.js +31 -13
  63. package/dist/components/Grid/core/components/ColumnHeader/components/GlobalCheckbox/GlobalCheckbox.js.map +1 -1
  64. package/dist/components/Grid/core/components/ColumnHeader/components/GlobalCheckbox/styles.d.ts +3 -2
  65. package/dist/components/Grid/core/components/ColumnHeader/components/GlobalCheckbox/styles.js +5 -4
  66. package/dist/components/Grid/core/components/ColumnHeader/components/GlobalCheckbox/styles.js.map +1 -1
  67. package/dist/components/Grid/core/components/ColumnHeader/styles.d.ts +3 -1
  68. package/dist/components/Grid/core/components/ColumnHeader/styles.js +4 -2
  69. package/dist/components/Grid/core/components/ColumnHeader/styles.js.map +1 -1
  70. package/dist/components/Grid/core/components/Save/Save.js +5 -6
  71. package/dist/components/Grid/core/components/Save/Save.js.map +1 -1
  72. package/dist/components/Grid/core/components/Save/components/ChangeEditor/ChangeEditor.js +10 -7
  73. package/dist/components/Grid/core/components/Save/components/ChangeEditor/ChangeEditor.js.map +1 -1
  74. package/dist/components/Grid/core/components/Save/components/ChangeEditor/components/ChangeGrid/ChangeGrid.d.ts +1 -0
  75. package/dist/components/Grid/core/components/Save/components/ChangeEditor/components/ChangeGrid/ChangeGrid.js +26 -7
  76. package/dist/components/Grid/core/components/Save/components/ChangeEditor/components/ChangeGrid/ChangeGrid.js.map +1 -1
  77. package/dist/components/Grid/core/controllers/useGridController.js +8 -2
  78. package/dist/components/Grid/core/controllers/useGridController.js.map +1 -1
  79. package/dist/components/Grid/core/interfaces/IGridColumn.d.ts +2 -0
  80. package/dist/components/Grid/core/model/Grid.d.ts +16 -7
  81. package/dist/components/Grid/core/model/Grid.js +230 -45
  82. package/dist/components/Grid/core/model/Grid.js.map +1 -1
  83. package/dist/components/Grid/core/model/Metadata.d.ts +2 -1
  84. package/dist/components/Grid/core/services/KeyListener.d.ts +2 -0
  85. package/dist/components/Grid/core/services/KeyListener.js +6 -3
  86. package/dist/components/Grid/core/services/KeyListener.js.map +1 -1
  87. package/dist/components/Grid/filtering/components/FilterCallout/components/ConditionValue/ConditionValue.js +3 -3
  88. package/dist/components/Grid/filtering/components/FilterCallout/components/ConditionValue/ConditionValue.js.map +1 -1
  89. package/dist/components/Grid/filtering/components/FilterCallout/components/ConditionValue/model/ConditionComponentValue.d.ts +19 -7
  90. package/dist/components/Grid/{core/components/Component → filtering/components/FilterCallout/components/LegacyControlRendering}/Component.d.ts +2 -2
  91. package/dist/components/Grid/{core/components/Component → filtering/components/FilterCallout/components/LegacyControlRendering}/Component.js +9 -9
  92. package/dist/components/Grid/filtering/components/FilterCallout/components/LegacyControlRendering/Component.js.map +1 -0
  93. package/dist/components/Grid/{core/components/Component → filtering/components/FilterCallout/components/LegacyControlRendering}/controller/useComponentController.d.ts +2 -2
  94. package/dist/components/Grid/{core/components/Component → filtering/components/FilterCallout/components/LegacyControlRendering}/controller/useComponentController.js +1 -1
  95. package/dist/components/Grid/filtering/components/FilterCallout/components/LegacyControlRendering/controller/useComponentController.js.map +1 -0
  96. package/dist/components/Grid/{core/components/Component → filtering/components/FilterCallout/components/LegacyControlRendering}/model/Component.d.ts +2 -2
  97. package/dist/components/Grid/{core/components/Component → filtering/components/FilterCallout/components/LegacyControlRendering}/model/Component.js +15 -19
  98. package/dist/components/Grid/filtering/components/FilterCallout/components/LegacyControlRendering/model/Component.js.map +1 -0
  99. package/dist/components/Grid/filtering/model/Condition.js +1 -1
  100. package/dist/components/Grid/filtering/model/Condition.js.map +1 -1
  101. package/dist/components/Grid/selection/model/Selection.d.ts +3 -4
  102. package/dist/components/Grid/selection/model/Selection.js +8 -26
  103. package/dist/components/Grid/selection/model/Selection.js.map +1 -1
  104. package/dist/components/Grid/sorting/components/SortingContextualMenu/SortingContextualMenu.js +1 -1
  105. package/dist/components/Grid/sorting/components/SortingContextualMenu/SortingContextualMenu.js.map +1 -1
  106. package/dist/components/GridCellRenderer/DefaultContentRenderer/DefaultContentRenderer.d.ts +2 -0
  107. package/dist/components/GridCellRenderer/DefaultContentRenderer/DefaultContentRenderer.js +11 -0
  108. package/dist/components/GridCellRenderer/DefaultContentRenderer/DefaultContentRenderer.js.map +1 -0
  109. package/dist/components/GridCellRenderer/DefaultContentRenderer/index.d.ts +1 -0
  110. package/dist/components/GridCellRenderer/DefaultContentRenderer/index.js +2 -0
  111. package/dist/components/GridCellRenderer/DefaultContentRenderer/index.js.map +1 -0
  112. package/dist/components/GridCellRenderer/GridCellRenderer.d.ts +3 -0
  113. package/dist/components/GridCellRenderer/GridCellRenderer.js +252 -0
  114. package/dist/components/GridCellRenderer/GridCellRenderer.js.map +1 -0
  115. package/dist/components/GridCellRenderer/OptionSet/OptionSet.d.ts +5 -0
  116. package/dist/components/GridCellRenderer/OptionSet/OptionSet.js +69 -0
  117. package/dist/components/GridCellRenderer/OptionSet/OptionSet.js.map +1 -0
  118. package/dist/components/GridCellRenderer/OptionSet/index.d.ts +1 -0
  119. package/dist/components/GridCellRenderer/OptionSet/index.js +2 -0
  120. package/dist/components/GridCellRenderer/OptionSet/index.js.map +1 -0
  121. package/dist/components/{Grid/core/components/Cell/ReadOnlyCell/ReadOnlyOptionSet → GridCellRenderer/OptionSet}/styles.d.ts +10 -12
  122. package/dist/components/GridCellRenderer/OptionSet/styles.js +29 -0
  123. package/dist/components/GridCellRenderer/OptionSet/styles.js.map +1 -0
  124. package/dist/components/GridCellRenderer/index.d.ts +1 -0
  125. package/dist/components/GridCellRenderer/index.js +2 -0
  126. package/dist/components/GridCellRenderer/index.js.map +1 -0
  127. package/dist/components/GridCellRenderer/interfaces.d.ts +53 -0
  128. package/dist/components/GridCellRenderer/styles.d.ts +72 -0
  129. package/dist/components/GridCellRenderer/styles.js +105 -0
  130. package/dist/components/GridCellRenderer/styles.js.map +1 -0
  131. package/dist/components/GridCellRenderer/translations.d.ts +6 -0
  132. package/dist/components/GridCellRenderer/translations.js +11 -0
  133. package/dist/components/GridCellRenderer/translations.js.map +1 -0
  134. package/dist/components/GridCellRenderer/useComponentProps.d.ts +6 -0
  135. package/dist/components/GridCellRenderer/useComponentProps.js +10 -0
  136. package/dist/components/GridCellRenderer/useComponentProps.js.map +1 -0
  137. package/dist/components/Lookup/Lookup.js +8 -3
  138. package/dist/components/Lookup/Lookup.js.map +1 -1
  139. package/dist/components/Lookup/styles.d.ts +19 -7
  140. package/dist/components/Lookup/styles.js +22 -8
  141. package/dist/components/Lookup/styles.js.map +1 -1
  142. package/dist/components/MultiSelectOptionSet/MultiSelectOptionSet.js +51 -28
  143. package/dist/components/MultiSelectOptionSet/MultiSelectOptionSet.js.map +1 -1
  144. package/dist/components/NestedControlRenderer/NestedControl.d.ts +86 -0
  145. package/dist/components/NestedControlRenderer/NestedControl.js +456 -0
  146. package/dist/components/NestedControlRenderer/NestedControl.js.map +1 -0
  147. package/dist/components/NestedControlRenderer/NestedControlError.d.ts +4 -0
  148. package/dist/components/NestedControlRenderer/NestedControlError.js +13 -0
  149. package/dist/components/NestedControlRenderer/NestedControlError.js.map +1 -0
  150. package/dist/components/NestedControlRenderer/NestedControlRenderer.d.ts +3 -0
  151. package/dist/components/NestedControlRenderer/NestedControlRenderer.js +194 -0
  152. package/dist/components/NestedControlRenderer/NestedControlRenderer.js.map +1 -0
  153. package/dist/components/NestedControlRenderer/index.d.ts +1 -0
  154. package/dist/components/NestedControlRenderer/index.js +2 -0
  155. package/dist/components/NestedControlRenderer/index.js.map +1 -0
  156. package/dist/components/NestedControlRenderer/interfaces.d.ts +122 -0
  157. package/dist/components/NestedControlRenderer/manifest/Control.d.ts +16 -0
  158. package/dist/components/NestedControlRenderer/manifest/Control.js +40 -0
  159. package/dist/components/NestedControlRenderer/manifest/Control.js.map +1 -0
  160. package/dist/components/NestedControlRenderer/manifest/Manifest.d.ts +5 -0
  161. package/dist/components/NestedControlRenderer/manifest/Manifest.js +12 -0
  162. package/dist/components/NestedControlRenderer/manifest/Manifest.js.map +1 -0
  163. package/dist/components/NestedControlRenderer/manifest/TypeGroup.d.ts +6 -0
  164. package/dist/components/NestedControlRenderer/manifest/TypeGroup.js +13 -0
  165. package/dist/components/NestedControlRenderer/manifest/TypeGroup.js.map +1 -0
  166. package/dist/components/NestedControlRenderer/manifest/index.d.ts +1 -0
  167. package/dist/components/NestedControlRenderer/manifest/index.js +2 -0
  168. package/dist/components/NestedControlRenderer/manifest/index.js.map +1 -0
  169. package/dist/components/NestedControlRenderer/manifest/property/Property.d.ts +16 -0
  170. package/dist/components/NestedControlRenderer/manifest/property/Property.js +34 -0
  171. package/dist/components/NestedControlRenderer/manifest/property/Property.js.map +1 -0
  172. package/dist/components/NestedControlRenderer/manifest/property/Value.d.ts +8 -0
  173. package/dist/components/NestedControlRenderer/manifest/property/Value.js +12 -0
  174. package/dist/components/NestedControlRenderer/manifest/property/Value.js.map +1 -0
  175. package/dist/components/NestedControlRenderer/properties/DateProperty.d.ts +5 -0
  176. package/dist/components/NestedControlRenderer/properties/DateProperty.js +20 -0
  177. package/dist/components/NestedControlRenderer/properties/DateProperty.js.map +1 -0
  178. package/dist/components/NestedControlRenderer/properties/FileProperty.d.ts +5 -0
  179. package/dist/components/NestedControlRenderer/properties/FileProperty.js +14 -0
  180. package/dist/components/NestedControlRenderer/properties/FileProperty.js.map +1 -0
  181. package/dist/components/NestedControlRenderer/properties/LookupProperty.d.ts +6 -0
  182. package/dist/components/NestedControlRenderer/properties/LookupProperty.js +35 -0
  183. package/dist/components/NestedControlRenderer/properties/LookupProperty.js.map +1 -0
  184. package/dist/components/NestedControlRenderer/properties/NumberProperty.d.ts +5 -0
  185. package/dist/components/NestedControlRenderer/properties/NumberProperty.js +15 -0
  186. package/dist/components/NestedControlRenderer/properties/NumberProperty.js.map +1 -0
  187. package/dist/components/NestedControlRenderer/properties/OptionSetProperty.d.ts +5 -0
  188. package/dist/components/NestedControlRenderer/properties/OptionSetProperty.js +22 -0
  189. package/dist/components/NestedControlRenderer/properties/OptionSetProperty.js.map +1 -0
  190. package/dist/components/NestedControlRenderer/properties/Property.d.ts +17 -0
  191. package/dist/components/NestedControlRenderer/properties/Property.js +46 -0
  192. package/dist/components/NestedControlRenderer/properties/Property.js.map +1 -0
  193. package/dist/components/NestedControlRenderer/properties/TextProperty.d.ts +5 -0
  194. package/dist/components/NestedControlRenderer/properties/TextProperty.js +15 -0
  195. package/dist/components/NestedControlRenderer/properties/TextProperty.js.map +1 -0
  196. package/dist/components/NestedControlRenderer/styles.d.ts +14 -0
  197. package/dist/components/NestedControlRenderer/styles.js +21 -0
  198. package/dist/components/NestedControlRenderer/styles.js.map +1 -0
  199. package/dist/components/NestedControlRenderer/translations.d.ts +14 -0
  200. package/dist/components/NestedControlRenderer/translations.js +19 -0
  201. package/dist/components/NestedControlRenderer/translations.js.map +1 -0
  202. package/dist/components/OptionSet/OptionSet.js +3 -3
  203. package/dist/components/OptionSet/OptionSet.js.map +1 -1
  204. package/dist/components/OptionSet/useComboBoxTheme.js +17 -17
  205. package/dist/components/OptionSet/useComboBoxTheme.js.map +1 -1
  206. package/dist/components/TextField/TextField.js.map +1 -1
  207. package/dist/components/TextField/interfaces.d.ts +2 -2
  208. package/dist/components/TwoOptions/TwoOptions.js +2 -1
  209. package/dist/components/TwoOptions/TwoOptions.js.map +1 -1
  210. package/dist/components/index.d.ts +13 -0
  211. package/dist/components/index.js +15 -0
  212. package/dist/components/index.js.map +1 -0
  213. package/dist/hooks/index.d.ts +1 -0
  214. package/dist/hooks/index.js +1 -0
  215. package/dist/hooks/index.js.map +1 -1
  216. package/dist/hooks/useControl.d.ts +1 -7
  217. package/dist/hooks/useControl.js +12 -40
  218. package/dist/hooks/useControl.js.map +1 -1
  219. package/dist/hooks/useControlLabels.d.ts +14 -0
  220. package/dist/hooks/useControlLabels.js +47 -0
  221. package/dist/hooks/useControlLabels.js.map +1 -0
  222. package/dist/hooks/useInputBasedControl.d.ts +2 -1
  223. package/dist/hooks/useInputBasedControl.js +3 -5
  224. package/dist/hooks/useInputBasedControl.js.map +1 -1
  225. package/dist/hooks/usePrevious.d.ts +1 -0
  226. package/dist/index.d.ts +456 -140
  227. package/dist/index.js +7 -2
  228. package/dist/index.js.map +1 -1
  229. package/dist/interfaces/context.d.ts +2 -1
  230. package/dist/interfaces/index.d.ts +1 -1
  231. package/dist/interfaces/property.d.ts +5 -0
  232. package/dist/utils/BaseControls.d.ts +16 -0
  233. package/dist/utils/BaseControls.js +82 -0
  234. package/dist/utils/BaseControls.js.map +1 -0
  235. package/dist/utils/index.d.ts +1 -0
  236. package/dist/utils/index.js +2 -0
  237. package/dist/utils/index.js.map +1 -1
  238. package/dist/utils/theme/ControlTheme.d.ts +1 -1
  239. package/dist/utils/theme/ControlTheme.js +1 -1
  240. package/dist/utils/theme/ControlTheme.js.map +1 -1
  241. package/dist/utils/theme/components/ThemeWrapper.d.ts +9 -0
  242. package/dist/utils/theme/components/ThemeWrapper.js +11 -0
  243. package/dist/utils/theme/components/ThemeWrapper.js.map +1 -0
  244. package/dist/utils/theme/components/index.d.ts +1 -0
  245. package/dist/utils/theme/components/index.js +2 -0
  246. package/dist/utils/theme/components/index.js.map +1 -0
  247. package/dist/utils/theme/hooks/useControlTheme.d.ts +1 -1
  248. package/dist/utils/theme/hooks/useControlTheme.js.map +1 -1
  249. package/dist/utils/theme/index.d.ts +1 -0
  250. package/dist/utils/theme/index.js +1 -0
  251. package/dist/utils/theme/index.js.map +1 -1
  252. package/package.json +3 -3
  253. package/dist/components/Grid/core/components/Cell/EditableCell/EditableCell.d.ts +0 -10
  254. package/dist/components/Grid/core/components/Cell/EditableCell/EditableCell.js +0 -82
  255. package/dist/components/Grid/core/components/Cell/EditableCell/EditableCell.js.map +0 -1
  256. package/dist/components/Grid/core/components/Cell/ReadOnlyCell/Notifications/Notifications.d.ts +0 -11
  257. package/dist/components/Grid/core/components/Cell/ReadOnlyCell/Notifications/Notifications.js +0 -93
  258. package/dist/components/Grid/core/components/Cell/ReadOnlyCell/Notifications/Notifications.js.map +0 -1
  259. package/dist/components/Grid/core/components/Cell/ReadOnlyCell/Notifications/styles.d.ts +0 -36
  260. package/dist/components/Grid/core/components/Cell/ReadOnlyCell/Notifications/styles.js +0 -42
  261. package/dist/components/Grid/core/components/Cell/ReadOnlyCell/Notifications/styles.js.map +0 -1
  262. package/dist/components/Grid/core/components/Cell/ReadOnlyCell/ReadOnlyCell.d.ts +0 -11
  263. package/dist/components/Grid/core/components/Cell/ReadOnlyCell/ReadOnlyCell.js +0 -221
  264. package/dist/components/Grid/core/components/Cell/ReadOnlyCell/ReadOnlyCell.js.map +0 -1
  265. package/dist/components/Grid/core/components/Cell/ReadOnlyCell/ReadOnlyOptionSet/ReadOnlyOptionSet.d.ts +0 -10
  266. package/dist/components/Grid/core/components/Cell/ReadOnlyCell/ReadOnlyOptionSet/ReadOnlyOptionSet.js +0 -49
  267. package/dist/components/Grid/core/components/Cell/ReadOnlyCell/ReadOnlyOptionSet/ReadOnlyOptionSet.js.map +0 -1
  268. package/dist/components/Grid/core/components/Cell/ReadOnlyCell/ReadOnlyOptionSet/styles.js +0 -27
  269. package/dist/components/Grid/core/components/Cell/ReadOnlyCell/ReadOnlyOptionSet/styles.js.map +0 -1
  270. package/dist/components/Grid/core/components/Cell/ReadOnlyCell/styles.d.ts +0 -99
  271. package/dist/components/Grid/core/components/Cell/ReadOnlyCell/styles.js +0 -123
  272. package/dist/components/Grid/core/components/Cell/ReadOnlyCell/styles.js.map +0 -1
  273. package/dist/components/Grid/core/components/Component/Component.js.map +0 -1
  274. package/dist/components/Grid/core/components/Component/controller/useComponentController.js.map +0 -1
  275. package/dist/components/Grid/core/components/Component/model/Component.js.map +0 -1
  276. package/dist/components/Grid/core/model/Metadata.js +0 -26
  277. package/dist/components/Grid/core/model/Metadata.js.map +0 -1
  278. package/dist/components/Grid/selection/controllers/useSelectionController.d.ts +0 -11
  279. package/dist/components/Grid/selection/controllers/useSelectionController.js +0 -21
  280. package/dist/components/Grid/selection/controllers/useSelectionController.js.map +0 -1
  281. package/dist/hooks/useRerender.d.ts +0 -1
  282. package/dist/hooks/useRerender.js +0 -9
  283. package/dist/hooks/useRerender.js.map +0 -1
@@ -0,0 +1,212 @@
1
+ import { jsx, Fragment } from 'react/jsx-runtime';
2
+ import * as React from 'react';
3
+ import { useGridInstance } from '../../../hooks/useGridInstance.js';
4
+ import { getCellContentStyles } from './styles.js';
5
+ import { NestedControlRenderer } from '../../../../../NestedControlRenderer/NestedControlRenderer.js';
6
+ import { useTheme, merge } from '@fluentui/react';
7
+ import { useRerender } from '@talxis/react-components';
8
+ import { getJustifyContent } from '../styles.js';
9
+ import { useDebouncedCallback } from 'use-debounce';
10
+ import { Client } from '@talxis/client-libraries';
11
+ import { AgGridContext } from '../../AgGrid/context.js';
12
+ import { ControlTheme } from '../../../../../../utils/theme/ControlTheme.js';
13
+
14
+ const client = new Client();
15
+ const CellContent = (props) => {
16
+ const columnRef = React.useRef(props.baseColumn);
17
+ const mountedRef = React.useRef(false);
18
+ const valueRef = React.useRef(props.value);
19
+ columnRef.current = props.baseColumn;
20
+ valueRef.current = props.value;
21
+ const rerender = useRerender();
22
+ const grid = useGridInstance();
23
+ const agGrid = React.useContext(AgGridContext);
24
+ const record = props.data;
25
+ const node = props.node;
26
+ const themeRef = React.useRef(useTheme());
27
+ themeRef.current = useTheme();
28
+ const styles = React.useMemo(() => getCellContentStyles(valueRef.current.columnAlignment), [valueRef.current.columnAlignment]);
29
+ //defer loading of the nested control to solve edge case where the changed values from onNotifyOutputChanged triggered by unmount would not be available straight away
30
+ const [shouldRenderNestedControl, setShouldRenderNestedControl] = React.useState(false);
31
+ const getColumn = () => {
32
+ return columnRef.current;
33
+ };
34
+ const getFluentDesignLanguage = (fluentDesignLanguage) => {
35
+ //@ts-ignore
36
+ const formatting = agGrid.getCellFormatting(props);
37
+ const mergedOverrides = merge({}, fluentDesignLanguage?.v8FluentOverrides ?? {}, formatting.themeOverride);
38
+ const columnAlignment = valueRef.current.columnAlignment;
39
+ const result = ControlTheme.GenerateFluentDesignLanguage(formatting.primaryColor, formatting.backgroundColor, formatting.textColor, {
40
+ v8FluentOverrides: merge({}, {
41
+ semanticColors: {
42
+ inputBorder: 'transparent',
43
+ inputBorderHovered: 'transparent',
44
+ inputBackground: formatting.backgroundColor,
45
+ focusBorder: 'transparent',
46
+ disabledBorder: 'transparent',
47
+ inputFocusBorderAlt: 'transparent',
48
+ errorText: 'transparent'
49
+ },
50
+ effects: {
51
+ underlined: false
52
+ },
53
+ components: {
54
+ 'TextField': {
55
+ styles: {
56
+ field: {
57
+ textAlign: columnAlignment
58
+ }
59
+ }
60
+ },
61
+ 'ComboBox': {
62
+ styles: {
63
+ input: {
64
+ textAlign: columnAlignment === 'right' ? 'right' : undefined,
65
+ paddingRight: columnAlignment === 'right' ? 8 : undefined,
66
+ }
67
+ }
68
+ },
69
+ 'DatePicker': {
70
+ styles: {
71
+ root: {
72
+ '.ms-TextField-field': {
73
+ paddingRight: columnAlignment === 'right' ? 8 : undefined,
74
+ textAlign: columnAlignment === 'right' ? 'right' : 'left'
75
+ }
76
+ }
77
+ }
78
+ },
79
+ 'Toggle': {
80
+ styles: {
81
+ root: {
82
+ justifyContent: getJustifyContent(columnAlignment)
83
+ }
84
+ }
85
+ }
86
+ }
87
+ }, mergedOverrides),
88
+ applicationTheme: fluentDesignLanguage?.applicationTheme
89
+ });
90
+ return result;
91
+ };
92
+ const onNotifyOutputChanged = (outputs) => {
93
+ let isEditing = props.isCellEditor;
94
+ //if we are not mounted, set editing to true so requestRender gets run
95
+ //if this is not present, a PCF editor might trigger this too late and we would not see the current value in renderer until next
96
+ if (!mountedRef.current) {
97
+ isEditing = false;
98
+ }
99
+ grid.onNotifyOutputChanged(record, columnRef.current, isEditing, outputs.value, () => rerender());
100
+ };
101
+ const debouncedNotifyOutputChanged = useDebouncedCallback((outputs) => onNotifyOutputChanged(outputs), 100);
102
+ React.useEffect(() => {
103
+ mountedRef.current = true;
104
+ setShouldRenderNestedControl(true);
105
+ return () => {
106
+ mountedRef.current = false;
107
+ };
108
+ }, []);
109
+ if (!shouldRenderNestedControl) {
110
+ return jsx(Fragment, {});
111
+ }
112
+ return jsx(NestedControlRenderer, { context: grid.pcfContext, parameters: {
113
+ ControlName: valueRef.current.customControl.name,
114
+ LoadingType: 'shimmer',
115
+ Bindings: grid.getBindings(record, getColumn(), valueRef.current.customControl),
116
+ ControlStates: {
117
+ isControlDisabled: !valueRef.current.editing
118
+ },
119
+ }, onNotifyOutputChanged: (outputs) => {
120
+ //talxis portal does not have debounce for notifyoutput
121
+ //Power Apps does a debounce of 100ms
122
+ if (getColumn().oneClickEdit && client.isTalxisPortal()) {
123
+ debouncedNotifyOutputChanged(outputs);
124
+ }
125
+ else {
126
+ onNotifyOutputChanged(outputs);
127
+ }
128
+ }, onOverrideComponentProps: (componentProps) => {
129
+ return {
130
+ ...componentProps,
131
+ rootContainerProps: {
132
+ ...componentProps.rootContainerProps,
133
+ className: styles.controlRoot
134
+ },
135
+ controlContainerProps: {
136
+ className: styles.controlContainer
137
+ },
138
+ overridenControlContainerProps: {
139
+ className: styles.overridenControlContainer
140
+ },
141
+ messageBarProps: {
142
+ ...componentProps.messageBarProps,
143
+ styles: {
144
+ root: styles.errorMessageRoot,
145
+ content: styles.errorMessageContent
146
+ }
147
+ },
148
+ loadingProps: {
149
+ ...componentProps.loadingProps,
150
+ shimmerProps: {
151
+ ...componentProps.loadingProps.shimmerProps,
152
+ styles: {
153
+ ...componentProps.loadingProps?.shimmerProps?.styles,
154
+ shimmerWrapper: styles.shimmerWrapper
155
+ }
156
+ },
157
+ containerProps: {
158
+ ...componentProps.loadingProps?.containerProps,
159
+ className: styles.loadingWrapper
160
+ }
161
+ },
162
+ onOverrideRender: (control, isCustomPcfComponent, defaultRender) => {
163
+ if (isCustomPcfComponent) {
164
+ grid.setUsesNestedPcfs();
165
+ }
166
+ if (valueRef.current.customComponent) {
167
+ return valueRef.current.customComponent.onRender(control.getProps(), themeRef.current, control.getContainer());
168
+ }
169
+ return defaultRender();
170
+ },
171
+ onOverrideUnmount: (control, defaultUnmount) => {
172
+ if (valueRef.current.customComponent) {
173
+ return valueRef.current.customComponent.onUnmount(control.getContainer());
174
+ }
175
+ //@ts-ignore - internal types
176
+ //skip the unmounting for custom PCF's in Power Apps
177
+ // PCF unmount in Power Apps causes other nested PCF's to reinitialize which causes flickering
178
+ //umounting of nested PCF's happens on grid destroy to prevent memory leaks (currently done by refreshing the page as no better method was found)
179
+ if (control.isMountedPcfComponent() && !grid.getClient().isTalxisPortal()) {
180
+ return;
181
+ }
182
+ return defaultUnmount();
183
+ },
184
+ onOverrideControlProps: (controlProps) => {
185
+ //here we always need to fetch the latest parameters
186
+ //we still might have old one's cached in valueRef
187
+ const columnInfo = record.getColumnInfo(getColumn().name);
188
+ const parameters = columnInfo.ui.getControlParameters({
189
+ ...controlProps.parameters,
190
+ ...grid.getParameters(record, getColumn(), props.isCellEditor)
191
+ });
192
+ return {
193
+ ...controlProps,
194
+ context: {
195
+ ...controlProps.context,
196
+ mode: Object.create(controlProps.context.mode, {
197
+ allocatedHeight: {
198
+ value: node.rowHeight - 1
199
+ },
200
+ }),
201
+ parameters: parameters,
202
+ fluentDesignLanguage: getFluentDesignLanguage(controlProps.context.fluentDesignLanguage)
203
+ },
204
+ parameters: parameters
205
+ };
206
+ }
207
+ };
208
+ } });
209
+ };
210
+
211
+ export { CellContent };
212
+ //# sourceMappingURL=CellContent.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CellContent.js","sources":["../../../../../../../src/components/Grid/core/components/Cell/CellContent/CellContent.tsx"],"sourcesContent":["import * as React from 'react';\nimport { useGridInstance } from '../../../hooks/useGridInstance';\nimport { ICellProps } from '../Cell';\nimport { getCellContentStyles } from './styles';\nimport { NestedControlRenderer } from '../../../../../NestedControlRenderer/NestedControlRenderer';\nimport { ControlTheme, IFluentDesignState } from '../../../../../../utils';\nimport { IComboBoxStyles, IDatePickerStyles, ITextFieldStyles, IToggleStyles, merge, useTheme } from '@fluentui/react';\nimport { useRerender } from '@talxis/react-components';\nimport { getJustifyContent } from '../styles';\nimport { useDebouncedCallback } from 'use-debounce';\nimport { Client } from '@talxis/client-libraries';\nimport { AgGridContext } from '../../AgGrid/context';\n\nconst client = new Client();\n\nexport const CellContent = (props: ICellProps) => {\n const columnRef = React.useRef(props.baseColumn);\n const mountedRef = React.useRef(false);\n const valueRef = React.useRef(props.value);\n columnRef.current = props.baseColumn;\n valueRef.current = props.value;\n const rerender = useRerender();\n const grid = useGridInstance();\n const agGrid = React.useContext(AgGridContext);\n const record = props.data;\n const node = props.node;\n const themeRef = React.useRef(useTheme());\n themeRef.current = useTheme();\n const styles = React.useMemo(() => getCellContentStyles(valueRef.current.columnAlignment), [valueRef.current.columnAlignment]);\n //defer loading of the nested control to solve edge case where the changed values from onNotifyOutputChanged triggered by unmount would not be available straight away\n const [shouldRenderNestedControl, setShouldRenderNestedControl] = React.useState(false);\n const getColumn = () => {\n return columnRef.current;\n }\n\n const getFluentDesignLanguage = (fluentDesignLanguage?: IFluentDesignState) => {\n //@ts-ignore\n const formatting = agGrid.getCellFormatting(props);\n const mergedOverrides: any = merge({}, fluentDesignLanguage?.v8FluentOverrides ?? {}, formatting.themeOverride);\n const columnAlignment = valueRef.current.columnAlignment;\n const result = ControlTheme.GenerateFluentDesignLanguage(formatting.primaryColor, formatting.backgroundColor, formatting.textColor, {\n v8FluentOverrides: merge({},\n {\n semanticColors: {\n inputBorder: 'transparent',\n inputBorderHovered: 'transparent',\n inputBackground: formatting.backgroundColor,\n focusBorder: 'transparent',\n disabledBorder: 'transparent',\n inputFocusBorderAlt: 'transparent',\n errorText: 'transparent'\n\n },\n effects: {\n underlined: false\n },\n\n components: {\n 'TextField': {\n styles: {\n field: {\n textAlign: columnAlignment\n }\n \n } as ITextFieldStyles\n },\n 'ComboBox': {\n styles: {\n input: {\n textAlign: columnAlignment === 'right' ? 'right' : undefined,\n paddingRight: columnAlignment === 'right' ? 8 : undefined,\n }\n } as IComboBoxStyles\n },\n 'DatePicker': {\n styles: {\n root: {\n '.ms-TextField-field': {\n paddingRight: columnAlignment === 'right' ? 8 : undefined,\n textAlign: columnAlignment === 'right' ? 'right' : 'left'\n }\n } as any\n } as IDatePickerStyles\n },\n 'Toggle': {\n styles: {\n root: {\n justifyContent: getJustifyContent(columnAlignment)\n }\n } as IToggleStyles\n }\n }\n },\n mergedOverrides\n ),\n applicationTheme: fluentDesignLanguage?.applicationTheme\n })\n return result;\n }\n\n const onNotifyOutputChanged = (outputs: any) => {\n let isEditing = props.isCellEditor;\n //if we are not mounted, set editing to true so requestRender gets run\n //if this is not present, a PCF editor might trigger this too late and we would not see the current value in renderer until next\n if(!mountedRef.current) {\n isEditing = false;\n }\n grid.onNotifyOutputChanged(record, columnRef.current, isEditing, outputs.value, () => rerender())\n }\n const debouncedNotifyOutputChanged = useDebouncedCallback((outputs) => onNotifyOutputChanged(outputs), 100);\n\n React.useEffect(() => {\n mountedRef.current = true;\n setShouldRenderNestedControl(true);\n return () => {\n mountedRef.current = false;\n }\n }, []);\n if(!shouldRenderNestedControl) {\n return <></>\n }\n\n return <NestedControlRenderer\n context={grid.pcfContext}\n parameters={{\n ControlName: valueRef.current.customControl.name,\n LoadingType: 'shimmer',\n Bindings: grid.getBindings(record, getColumn(), valueRef.current.customControl),\n ControlStates: {\n isControlDisabled: !valueRef.current.editing\n },\n }}\n onNotifyOutputChanged={(outputs) => {\n //talxis portal does not have debounce for notifyoutput\n //Power Apps does a debounce of 100ms\n if(getColumn().oneClickEdit && client.isTalxisPortal()) {\n debouncedNotifyOutputChanged(outputs);\n }\n else {\n onNotifyOutputChanged(outputs);\n }\n }}\n onOverrideComponentProps={(componentProps) => {\n return {\n ...componentProps,\n rootContainerProps: {\n ...componentProps.rootContainerProps,\n className: styles.controlRoot\n },\n controlContainerProps: {\n className: styles.controlContainer\n },\n overridenControlContainerProps: {\n className: styles.overridenControlContainer\n },\n messageBarProps: {\n ...componentProps.messageBarProps,\n styles: {\n root: styles.errorMessageRoot,\n content: styles.errorMessageContent\n }\n },\n loadingProps: {\n ...componentProps.loadingProps,\n shimmerProps: {\n ...componentProps.loadingProps.shimmerProps,\n styles: {\n ...componentProps.loadingProps?.shimmerProps?.styles,\n shimmerWrapper: styles.shimmerWrapper\n }\n },\n containerProps: {\n ...componentProps.loadingProps?.containerProps,\n className: styles.loadingWrapper\n }\n },\n onOverrideRender: (control, isCustomPcfComponent, defaultRender) => {\n if(isCustomPcfComponent) {\n grid.setUsesNestedPcfs();\n }\n if(valueRef.current.customComponent) {\n return valueRef.current.customComponent.onRender(control.getProps(), themeRef.current, control.getContainer())\n }\n return defaultRender();\n },\n onOverrideUnmount: (control, defaultUnmount) => {\n if(valueRef.current.customComponent) {\n return valueRef.current.customComponent.onUnmount(control.getContainer());\n }\n //@ts-ignore - internal types\n //skip the unmounting for custom PCF's in Power Apps\n // PCF unmount in Power Apps causes other nested PCF's to reinitialize which causes flickering\n //umounting of nested PCF's happens on grid destroy to prevent memory leaks (currently done by refreshing the page as no better method was found)\n if(control.isMountedPcfComponent() && !grid.getClient().isTalxisPortal()) {\n return;\n }\n return defaultUnmount();\n },\n onOverrideControlProps: (controlProps) => {\n //here we always need to fetch the latest parameters\n //we still might have old one's cached in valueRef\n const columnInfo = record.getColumnInfo(getColumn().name);\n const parameters = columnInfo.ui.getControlParameters({\n ...controlProps.parameters,\n ...grid.getParameters(record, getColumn(), props.isCellEditor)\n })\n return { \n ...controlProps,\n context: {\n ...controlProps.context,\n mode: Object.create(controlProps.context.mode, {\n allocatedHeight: {\n value: node.rowHeight! - 1\n },\n\n }),\n parameters: parameters,\n fluentDesignLanguage: getFluentDesignLanguage(controlProps.context.fluentDesignLanguage)\n },\n parameters: parameters\n }\n }\n }\n }}\n />\n}\n"],"names":["_jsx"],"mappings":"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"}
@@ -0,0 +1,33 @@
1
+ import { IColumn } from "@talxis/client-libraries";
2
+ export declare const getCellContentStyles: (columnAlignment: IColumn['alignment']) => import("@fluentui/react").IProcessedStyleSet<{
3
+ controlRoot: {
4
+ height: string;
5
+ order: number | undefined;
6
+ minWidth: number;
7
+ overflow: string;
8
+ flexGrow: number;
9
+ border: string;
10
+ };
11
+ controlContainer: {
12
+ height: string;
13
+ };
14
+ loadingWrapper: {
15
+ height: string;
16
+ display: string;
17
+ alignItems: string;
18
+ paddingLeft: number;
19
+ paddingRight: number;
20
+ };
21
+ overridenControlContainer: {
22
+ height: string;
23
+ };
24
+ shimmerWrapper: {
25
+ height: number;
26
+ };
27
+ errorMessageRoot: {
28
+ height: string;
29
+ };
30
+ errorMessageContent: {
31
+ alignItems: string;
32
+ };
33
+ }>;
@@ -0,0 +1,39 @@
1
+ import { mergeStyleSets } from '@fluentui/react';
2
+
3
+ const getCellContentStyles = (columnAlignment) => {
4
+ return mergeStyleSets({
5
+ controlRoot: {
6
+ height: '100%',
7
+ order: columnAlignment === 'right' ? 2 : undefined,
8
+ minWidth: 0,
9
+ overflow: 'hidden',
10
+ flexGrow: 1,
11
+ border: '2px solid transparent',
12
+ },
13
+ controlContainer: {
14
+ height: '100%'
15
+ },
16
+ loadingWrapper: {
17
+ height: '100%',
18
+ display: 'flex',
19
+ alignItems: 'center',
20
+ paddingLeft: 10,
21
+ paddingRight: 10
22
+ },
23
+ overridenControlContainer: {
24
+ height: '100%'
25
+ },
26
+ shimmerWrapper: {
27
+ height: 10
28
+ },
29
+ errorMessageRoot: {
30
+ height: '100%'
31
+ },
32
+ errorMessageContent: {
33
+ alignItems: 'center'
34
+ }
35
+ });
36
+ };
37
+
38
+ export { getCellContentStyles };
39
+ //# sourceMappingURL=styles.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"styles.js","sources":["../../../../../../../src/components/Grid/core/components/Cell/CellContent/styles.ts"],"sourcesContent":["import { mergeStyleSets } from \"@fluentui/react\"\nimport { IColumn } from \"@talxis/client-libraries\"\n\nexport const getCellContentStyles = (columnAlignment: IColumn['alignment']) => {\n return mergeStyleSets({\n controlRoot: {\n height: '100%',\n order: columnAlignment === 'right' ? 2 : undefined,\n minWidth: 0,\n overflow: 'hidden',\n flexGrow: 1,\n border: '2px solid transparent',\n },\n controlContainer: {\n height: '100%'\n },\n loadingWrapper: {\n height: '100%',\n display: 'flex',\n alignItems: 'center',\n paddingLeft: 10,\n paddingRight: 10\n },\n overridenControlContainer: {\n height: '100%'\n },\n shimmerWrapper: {\n height: 10\n },\n errorMessageRoot: {\n height: '100%'\n },\n errorMessageContent: {\n alignItems: 'center'\n }\n })\n}"],"names":[],"mappings":";;AAGa,MAAA,oBAAoB,GAAG,CAAC,eAAqC,KAAI;AAC1E,IAAA,OAAO,cAAc,CAAC;AAClB,QAAA,WAAW,EAAE;AACT,YAAA,MAAM,EAAE,MAAM;YACd,KAAK,EAAE,eAAe,KAAK,OAAO,GAAG,CAAC,GAAG,SAAS;AAClD,YAAA,QAAQ,EAAE,CAAC;AACX,YAAA,QAAQ,EAAE,QAAQ;AAClB,YAAA,QAAQ,EAAE,CAAC;AACX,YAAA,MAAM,EAAE,uBAAuB;AAClC,SAAA;AACD,QAAA,gBAAgB,EAAE;AACd,YAAA,MAAM,EAAE,MAAM;AACjB,SAAA;AACD,QAAA,cAAc,EAAE;AACZ,YAAA,MAAM,EAAE,MAAM;AACd,YAAA,OAAO,EAAE,MAAM;AACf,YAAA,UAAU,EAAE,QAAQ;AACpB,YAAA,WAAW,EAAE,EAAE;AACf,YAAA,YAAY,EAAE,EAAE;AACnB,SAAA;AACD,QAAA,yBAAyB,EAAE;AACvB,YAAA,MAAM,EAAE,MAAM;AACjB,SAAA;AACD,QAAA,cAAc,EAAE;AACZ,YAAA,MAAM,EAAE,EAAE;AACb,SAAA;AACD,QAAA,gBAAgB,EAAE;AACd,YAAA,MAAM,EAAE,MAAM;AACjB,SAAA;AACD,QAAA,mBAAmB,EAAE;AACjB,YAAA,UAAU,EAAE,QAAQ;AACvB,SAAA;AACJ,KAAA,CAAC,CAAA;AACN;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"Commands.js","sources":["../../../../../../../src/components/Grid/core/components/Cell/Commands/Commands.tsx"],"sourcesContent":["import * as React from 'react';\nimport { useCommands } from './useCommands';\nimport { CommandBar } from \"@talxis/react-components\";\nimport { commandStyles, getCommandsLoadingStyles } from './styles';\nimport { useTheme } from '@fluentui/react';\nimport { IRecord } from '@talxis/client-libraries';\n\ninterface ICommands {\n record: IRecord\n}\n\nexport const Commands = ({ record }: ICommands) => {\n const [items] = useCommands(record);\n const loadingStyles = getCommandsLoadingStyles(useTheme());\n if (!items) {\n return <div className={loadingStyles.loading}>\n {Array.from(Array(3).keys()).map((x) =>\n <div key={x} className={loadingStyles.loadingLine} />\n )}\n </div>\n }\n if (items?.length > 0) {\n return <CommandBar className={commandStyles.talxisRoot} overflowButtonProps={{\n styles: {\n root: commandStyles.button,\n rootHovered: commandStyles.button,\n rootPressed: commandStyles.button,\n rootExpanded: commandStyles.button\n }\n }} styles={{\n root: commandStyles.root,\n\n }} items={[]}\n farItems={items}\n />;\n }\n return <></>;\n};"],"names":["_jsx"],"mappings":";;;;;;MAWa,QAAQ,GAAG,CAAC,EAAE,MAAM,EAAa,KAAI;IAC9C,MAAM,CAAC,KAAK,CAAC,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC;AACpC,IAAA,MAAM,aAAa,GAAG,wBAAwB,CAAC,QAAQ,EAAE,CAAC,CAAC;IAC3D,IAAI,CAAC,KAAK,EAAE;AACR,QAAA,OAAOA,aAAK,SAAS,EAAE,aAAa,CAAC,OAAO,EACvC,QAAA,EAAA,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAC/BA,GAAa,CAAA,KAAA,EAAA,EAAA,SAAS,EAAE,aAAa,CAAC,WAAW,EAAA,EAAvC,CAAC,CAA0C,CACxD,GACC,CAAA;AACT,KAAA;AACD,IAAA,IAAI,KAAK,EAAE,MAAM,GAAG,CAAC,EAAE;QACnB,OAAOA,GAAA,CAAC,UAAU,EAAA,EAAC,SAAS,EAAE,aAAa,CAAC,UAAU,EAAE,mBAAmB,EAAE;AACzE,gBAAA,MAAM,EAAE;oBACJ,IAAI,EAAE,aAAa,CAAC,MAAM;oBAC1B,WAAW,EAAE,aAAa,CAAC,MAAM;oBACjC,WAAW,EAAE,aAAa,CAAC,MAAM;oBACjC,YAAY,EAAE,aAAa,CAAC,MAAM;AACrC,iBAAA;AACJ,aAAA,EAAE,MAAM,EAAE;gBACP,IAAI,EAAE,aAAa,CAAC,IAAI;aAE3B,EAAE,KAAK,EAAE,EAAE,EACR,QAAQ,EAAE,KAAK,GACjB,CAAC;AACN,KAAA;AACD,IAAA,OAAOA,iBAAK,CAAC;AACjB;;;;"}
1
+ {"version":3,"file":"Commands.js","sources":["../../../../../../../src/components/Grid/core/components/Cell/Commands/Commands.tsx"],"sourcesContent":["import { useCommands } from './useCommands';\nimport { CommandBar } from \"@talxis/react-components\";\nimport { commandStyles, getCommandsLoadingStyles } from './styles';\nimport { useTheme } from '@fluentui/react';\nimport { IRecord } from '@talxis/client-libraries';\n\ninterface ICommands {\n record: IRecord\n}\n\nexport const Commands = ({ record }: ICommands) => {\n const [items] = useCommands(record);\n const loadingStyles = getCommandsLoadingStyles(useTheme());\n if (!items) {\n return <div className={loadingStyles.loading}>\n {Array.from(Array(3).keys()).map((x) =>\n <div key={x} className={loadingStyles.loadingLine} />\n )}\n </div>\n }\n if (items?.length > 0) {\n return <CommandBar className={commandStyles.talxisRoot} overflowButtonProps={{\n styles: {\n root: commandStyles.button,\n rootHovered: commandStyles.button,\n rootPressed: commandStyles.button,\n rootExpanded: commandStyles.button\n }\n }} styles={{\n root: commandStyles.root,\n\n }} items={[]}\n farItems={items}\n />;\n }\n return <></>;\n};"],"names":["_jsx"],"mappings":";;;;;;MAUa,QAAQ,GAAG,CAAC,EAAE,MAAM,EAAa,KAAI;IAC9C,MAAM,CAAC,KAAK,CAAC,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC;AACpC,IAAA,MAAM,aAAa,GAAG,wBAAwB,CAAC,QAAQ,EAAE,CAAC,CAAC;IAC3D,IAAI,CAAC,KAAK,EAAE;AACR,QAAA,OAAOA,aAAK,SAAS,EAAE,aAAa,CAAC,OAAO,EACvC,QAAA,EAAA,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAC/BA,GAAa,CAAA,KAAA,EAAA,EAAA,SAAS,EAAE,aAAa,CAAC,WAAW,EAAA,EAAvC,CAAC,CAA0C,CACxD,GACC,CAAA;AACT,KAAA;AACD,IAAA,IAAI,KAAK,EAAE,MAAM,GAAG,CAAC,EAAE;QACnB,OAAOA,GAAA,CAAC,UAAU,EAAA,EAAC,SAAS,EAAE,aAAa,CAAC,UAAU,EAAE,mBAAmB,EAAE;AACzE,gBAAA,MAAM,EAAE;oBACJ,IAAI,EAAE,aAAa,CAAC,MAAM;oBAC1B,WAAW,EAAE,aAAa,CAAC,MAAM;oBACjC,WAAW,EAAE,aAAa,CAAC,MAAM;oBACjC,YAAY,EAAE,aAAa,CAAC,MAAM;AACrC,iBAAA;AACJ,aAAA,EAAE,MAAM,EAAE;gBACP,IAAI,EAAE,aAAa,CAAC,IAAI;aAE3B,EAAE,KAAK,EAAE,EAAE,EACR,QAAQ,EAAE,KAAK,GACjB,CAAC;AACN,KAAA;AACD,IAAA,OAAOA,iBAAK,CAAC;AACjB;;;;"}
@@ -0,0 +1,12 @@
1
+ /// <reference types="react" />
2
+ import { ICommandBarItemProps } from "@fluentui/react";
3
+ import { IAddControlNotificationOptions, IColumn, ICustomColumnFormatting } from "@talxis/client-libraries";
4
+ interface INotifications {
5
+ notifications: IAddControlNotificationOptions[];
6
+ formatting: Required<ICustomColumnFormatting>;
7
+ isActionColumn: boolean;
8
+ columnAlignment: IColumn['alignment'];
9
+ farItems?: ICommandBarItemProps[];
10
+ }
11
+ export declare const Notifications: (props: INotifications) => JSX.Element;
12
+ export {};
@@ -0,0 +1,112 @@
1
+ import { jsxs, jsx, Fragment } from 'react/jsx-runtime';
2
+ import { useTheme, ThemeProvider, Callout, Text, Link, Icon, PrimaryButton, DefaultButton } from '@fluentui/react';
3
+ import { getNotificationStyles } from './styles.js';
4
+ import { useMemo, useState, useRef, useEffect } from 'react';
5
+ import { useResizeObserver, useThemeGenerator, CommandBar } from '@talxis/react-components';
6
+ import { useGridInstance } from '../../../hooks/useGridInstance.js';
7
+ import { useControlTheme } from '../../../../../../utils/theme/hooks/useControlTheme.js';
8
+
9
+ const Notifications = (props) => {
10
+ const { notifications, formatting, farItems, isActionColumn, columnAlignment } = { ...props };
11
+ const grid = useGridInstance();
12
+ const theme = useTheme();
13
+ const styles = getNotificationStyles(isActionColumn, columnAlignment);
14
+ const iconId = useMemo(() => `icon${crypto.randomUUID()}`, []);
15
+ const [selectedNotification, setSelectedNotification] = useState(null);
16
+ const commandBarRef = useRef(null);
17
+ const containerRef = useRef(null);
18
+ const observe = useResizeObserver(() => {
19
+ commandBarRef.current?.remeasure();
20
+ });
21
+ const overridenTheme = useThemeGenerator(theme.semanticColors.bodyText, theme.semanticColors.bodyBackground, theme.semanticColors.bodyText, formatting.themeOverride);
22
+ const renderActionButton = (action, buttonType) => {
23
+ const Button = buttonType === 'primary' ? PrimaryButton : DefaultButton;
24
+ return jsx(Button, { text: action.message, iconProps: action?.iconName ? {
25
+ iconName: action.iconName
26
+ } : undefined, onClick: () => action.actions.map(callback => callback()) });
27
+ };
28
+ const renderActions = (actions) => {
29
+ if (actions.length === 0) {
30
+ return jsx(Fragment, {});
31
+ }
32
+ //render actions as buttons
33
+ if (actions.length < 3) {
34
+ return jsx("div", { className: styles.calloutButtons, children: actions.map((action, i) => renderActionButton(action, i === 0 ? 'primary' : 'default')) });
35
+ }
36
+ return jsx(CommandBar, { items: actions.map((action, i) => {
37
+ return {
38
+ key: i.toString(),
39
+ text: action.message,
40
+ commandBarButtonAs: () => jsxs(Link, { onClick: () => action.actions.map(callback => callback()), className: styles.calloutLink, children: [action.iconName &&
41
+ jsx(Icon, { iconName: action.iconName }), action.message] }),
42
+ iconProps: {
43
+ iconName: action.iconName
44
+ },
45
+ onClick: () => {
46
+ action.actions.map(callback => callback());
47
+ }
48
+ };
49
+ }) });
50
+ };
51
+ const onNotificationClick = (notification) => {
52
+ if (notification.actions?.length === 1) {
53
+ notification.actions[0].actions.map(callback => callback());
54
+ return;
55
+ }
56
+ setSelectedNotification(notification);
57
+ };
58
+ const getCommandBarItems = () => {
59
+ const items = [];
60
+ const overflowItems = [];
61
+ notifications.map(notification => {
62
+ const item = {
63
+ key: notification.uniqueId,
64
+ text: notification.text,
65
+ tooltipHostProps: {
66
+ ...notification.buttonProps?.tooltipHostProps,
67
+ calloutProps: {
68
+ theme: contextualMenuTheme
69
+ },
70
+ tooltipProps: {
71
+ theme: contextualMenuTheme
72
+ },
73
+ },
74
+ iconProps: notification.iconName ? {
75
+ iconName: notification.iconName,
76
+ ...notification.buttonProps?.iconProps
77
+ } : undefined,
78
+ ...notification.buttonProps,
79
+ onClick: (e) => {
80
+ notification.buttonProps?.onClick?.(e);
81
+ onNotificationClick(notification);
82
+ }
83
+ };
84
+ if (notification.buttonProps?.renderedInOverflow) {
85
+ overflowItems.push(item);
86
+ }
87
+ else {
88
+ items.push(item);
89
+ }
90
+ });
91
+ return {
92
+ items: items,
93
+ overflowItems: overflowItems
94
+ };
95
+ };
96
+ const contextualMenuTheme = useControlTheme(grid.pcfContext.fluentDesignLanguage);
97
+ const { items, overflowItems } = getCommandBarItems();
98
+ useEffect(() => {
99
+ if (isActionColumn) {
100
+ observe(containerRef.current);
101
+ }
102
+ }, [isActionColumn]);
103
+ return jsxs("div", { ref: containerRef, className: styles.notificationsRoot, children: [jsx(ThemeProvider, { theme: overridenTheme, children: jsx(CommandBar, { contextualMenuTheme: contextualMenuTheme, id: iconId, componentRef: commandBarRef, styles: {
104
+ primarySet: styles.notificationsPrimarySet
105
+ }, items: items, overflowItems: overflowItems, farItems: farItems }) }), selectedNotification &&
106
+ jsx(Callout, { theme: contextualMenuTheme, hidden: !selectedNotification, className: styles.callout, onDismiss: () => setSelectedNotification(null), target: `#${iconId}`, children: jsxs(ThemeProvider, { className: styles.calloutContent, theme: contextualMenuTheme, children: [selectedNotification.text &&
107
+ jsx(Text, { title: selectedNotification.text, className: styles.calloutTitle, variant: selectedNotification.messages.length > 0 ? 'xLarge' : undefined, children: selectedNotification.text }), jsx(Text, { children: selectedNotification.messages[0] }), selectedNotification.actions &&
108
+ renderActions(selectedNotification.actions)] }) })] });
109
+ };
110
+
111
+ export { Notifications };
112
+ //# sourceMappingURL=Notifications.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Notifications.js","sources":["../../../../../../../src/components/Grid/core/components/Cell/Notifications/Notifications.tsx"],"sourcesContent":["import { Icon, useTheme, Text, Callout, PrimaryButton, DefaultButton, Link, ICommandBar, ThemeProvider, ICommandBarItemProps } from \"@fluentui/react\"\nimport { getNotificationStyles } from \"./styles\";\nimport { useEffect, useMemo, useRef, useState } from \"react\";\nimport { IAddControlNotificationOptions, IColumn, IControlNotificationAction, ICustomColumnFormatting } from \"@talxis/client-libraries\";\nimport { CommandBar, useResizeObserver, useThemeGenerator } from \"@talxis/react-components\";\nimport { useGridInstance } from \"../../../hooks/useGridInstance\";\nimport { useControlTheme } from \"../../../../../../utils\";\n\ninterface INotifications {\n notifications: IAddControlNotificationOptions[],\n formatting: Required<ICustomColumnFormatting>,\n isActionColumn: boolean;\n columnAlignment: IColumn['alignment'],\n farItems?: ICommandBarItemProps[]\n}\n\n\nexport const Notifications = (props: INotifications) => {\n const { notifications, formatting, farItems, isActionColumn, columnAlignment } = { ...props };\n const grid = useGridInstance();\n const theme = useTheme();\n const styles = getNotificationStyles(isActionColumn, columnAlignment);\n const iconId = useMemo(() => `icon${crypto.randomUUID()}`, []);\n const [selectedNotification, setSelectedNotification] = useState<IAddControlNotificationOptions | null>(null);\n const commandBarRef = useRef<ICommandBar>(null);\n const containerRef = useRef<HTMLDivElement>(null);\n\n const observe = useResizeObserver(() => {\n commandBarRef.current?.remeasure();\n })\n const overridenTheme = useThemeGenerator(theme.semanticColors.bodyText, theme.semanticColors.bodyBackground, theme.semanticColors.bodyText, formatting.themeOverride);\n\n const renderActionButton = (action: IControlNotificationAction, buttonType: 'primary' | 'default') => {\n const Button = buttonType === 'primary' ? PrimaryButton : DefaultButton;\n return <Button\n text={action.message}\n iconProps={action?.iconName ? {\n iconName: action.iconName\n } : undefined}\n onClick={() => action.actions.map(callback => callback())} />\n }\n\n const renderActions = (actions: IControlNotificationAction[]): JSX.Element => {\n if (actions.length === 0) {\n return <></>\n }\n //render actions as buttons\n if (actions.length < 3) {\n return <div className={styles.calloutButtons}>\n {actions.map((action, i) => renderActionButton(action, i === 0 ? 'primary' : 'default'))}\n </div>\n }\n return <CommandBar items={actions.map((action, i) => {\n return {\n key: i.toString(),\n text: action.message,\n commandBarButtonAs: () => <Link onClick={() => action.actions.map(callback => callback())} className={styles.calloutLink}>\n {action.iconName &&\n <Icon iconName={action.iconName} />\n }\n {action.message}\n </Link>,\n iconProps: {\n iconName: action.iconName\n },\n onClick: () => {\n action.actions.map(callback => callback())\n }\n }\n })} />\n }\n\n const onNotificationClick = (notification: IAddControlNotificationOptions) => {\n if (notification.actions?.length === 1) {\n notification.actions[0].actions.map(callback => callback());\n return;\n }\n setSelectedNotification(notification);\n };\n\n\n const getCommandBarItems = (): { items: ICommandBarItemProps[], overflowItems: ICommandBarItemProps[] } => {\n const items: ICommandBarItemProps[] = [];\n const overflowItems: ICommandBarItemProps[] = [];\n\n notifications.map(notification => {\n const item: ICommandBarItemProps = {\n key: notification.uniqueId,\n text: notification.text,\n tooltipHostProps: {\n ...notification.buttonProps?.tooltipHostProps,\n calloutProps: {\n theme: contextualMenuTheme\n },\n tooltipProps: {\n theme: contextualMenuTheme\n },\n },\n iconProps: notification.iconName ? {\n iconName: notification.iconName,\n ...notification.buttonProps?.iconProps\n } : undefined,\n ...notification.buttonProps,\n onClick: (e) => {\n notification.buttonProps?.onClick?.(e);\n onNotificationClick(notification);\n }\n }\n if (notification.buttonProps?.renderedInOverflow) {\n overflowItems.push(item);\n }\n else {\n items.push(item);\n }\n })\n return {\n items: items,\n overflowItems: overflowItems\n }\n }\n\n const contextualMenuTheme = useControlTheme(grid.pcfContext.fluentDesignLanguage);\n const { items, overflowItems } = getCommandBarItems();\n\n useEffect(() => {\n if (isActionColumn) {\n observe(containerRef.current!);\n }\n }, [isActionColumn]);\n\n\n return <div ref={containerRef} className={styles.notificationsRoot}>\n <ThemeProvider theme={overridenTheme}>\n <CommandBar\n contextualMenuTheme={contextualMenuTheme}\n id={iconId}\n componentRef={commandBarRef}\n styles={{\n primarySet: styles.notificationsPrimarySet\n }}\n items={items}\n overflowItems={overflowItems}\n farItems={farItems} />\n </ThemeProvider>\n {selectedNotification &&\n <Callout\n theme={contextualMenuTheme}\n hidden={!selectedNotification}\n className={styles.callout}\n onDismiss={() => setSelectedNotification(null)}\n target={`#${iconId}`}>\n <ThemeProvider className={styles.calloutContent} theme={contextualMenuTheme}>\n {selectedNotification.text &&\n <Text title={selectedNotification.text} className={styles.calloutTitle} variant={selectedNotification.messages.length > 0 ? 'xLarge' : undefined}>{selectedNotification.text}</Text>\n }\n <Text>{selectedNotification.messages[0]}</Text>\n {selectedNotification.actions &&\n renderActions(selectedNotification.actions)\n }\n </ThemeProvider>\n </Callout>\n }\n </div>\n}"],"names":["_jsx","_jsxs"],"mappings":"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"}
@@ -0,0 +1,39 @@
1
+ import { IColumn } from "@talxis/client-libraries";
2
+ export declare const getNotificationStyles: (isActionColumn: boolean, columnAlignment: Required<IColumn['alignment']>) => import("@fluentui/react").IProcessedStyleSet<{
3
+ callout: {
4
+ width: number;
5
+ padding: string;
6
+ };
7
+ calloutContent: {
8
+ display: string;
9
+ flexDirection: string;
10
+ gap: number;
11
+ '.ms-CommandBar-primaryCommand': {
12
+ gap: number;
13
+ };
14
+ };
15
+ calloutTitle: {
16
+ overflow: string;
17
+ textOverflow: string;
18
+ };
19
+ calloutLink: {
20
+ i: {
21
+ position: string;
22
+ top: number;
23
+ marginRight: number;
24
+ };
25
+ };
26
+ calloutButtons: {
27
+ display: string;
28
+ justifyContent: string;
29
+ gap: number;
30
+ };
31
+ notificationsRoot: {
32
+ minWidth: number | undefined;
33
+ flex: number | undefined;
34
+ };
35
+ notificationsPrimarySet: {
36
+ order: number;
37
+ justifyContent: string | undefined;
38
+ };
39
+ }>;
@@ -0,0 +1,46 @@
1
+ import { mergeStyleSets } from '@fluentui/react';
2
+ import { getJustifyContent } from '../styles.js';
3
+
4
+ const getNotificationStyles = (isActionColumn, columnAlignment) => {
5
+ return mergeStyleSets({
6
+ callout: {
7
+ width: 320,
8
+ padding: '20px 24px',
9
+ },
10
+ calloutContent: {
11
+ display: 'flex',
12
+ flexDirection: 'column',
13
+ gap: 20,
14
+ '.ms-CommandBar-primaryCommand': {
15
+ gap: 10
16
+ }
17
+ },
18
+ calloutTitle: {
19
+ overflow: 'hidden',
20
+ textOverflow: 'ellipsis'
21
+ },
22
+ calloutLink: {
23
+ 'i': {
24
+ position: 'relative',
25
+ top: 1,
26
+ marginRight: 3
27
+ }
28
+ },
29
+ calloutButtons: {
30
+ display: 'flex',
31
+ justifyContent: 'flex-end',
32
+ gap: 8
33
+ },
34
+ notificationsRoot: {
35
+ minWidth: isActionColumn ? 0 : undefined,
36
+ flex: isActionColumn ? 1 : undefined,
37
+ },
38
+ notificationsPrimarySet: {
39
+ order: 2,
40
+ justifyContent: isActionColumn ? getJustifyContent(columnAlignment) : undefined
41
+ }
42
+ });
43
+ };
44
+
45
+ export { getNotificationStyles };
46
+ //# sourceMappingURL=styles.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"styles.js","sources":["../../../../../../../src/components/Grid/core/components/Cell/Notifications/styles.ts"],"sourcesContent":["import { mergeStyleSets } from \"@fluentui/react\"\nimport { IColumn } from \"@talxis/client-libraries\"\nimport { getJustifyContent } from \"../styles\"\n\nexport const getNotificationStyles = (isActionColumn: boolean, columnAlignment: Required<IColumn['alignment']>) => {\n return mergeStyleSets({\n callout: {\n width: 320,\n padding: '20px 24px',\n },\n calloutContent: {\n display: 'flex',\n flexDirection: 'column',\n gap: 20,\n '.ms-CommandBar-primaryCommand': {\n gap: 10\n }\n },\n calloutTitle: {\n overflow: 'hidden',\n textOverflow: 'ellipsis'\n },\n calloutLink: {\n 'i': {\n position: 'relative',\n top: 1,\n marginRight: 3\n }\n },\n calloutButtons: {\n display: 'flex',\n justifyContent: 'flex-end',\n gap: 8\n },\n notificationsRoot: {\n minWidth: isActionColumn ? 0 : undefined,\n flex: isActionColumn ? 1 : undefined,\n },\n notificationsPrimarySet: {\n order: 2,\n justifyContent: isActionColumn ? getJustifyContent(columnAlignment) : undefined\n }\n })\n}"],"names":[],"mappings":";;;MAIa,qBAAqB,GAAG,CAAC,cAAuB,EAAE,eAA+C,KAAI;AAC9G,IAAA,OAAO,cAAc,CAAC;AAClB,QAAA,OAAO,EAAE;AACL,YAAA,KAAK,EAAE,GAAG;AACV,YAAA,OAAO,EAAE,WAAW;AACvB,SAAA;AACD,QAAA,cAAc,EAAE;AACZ,YAAA,OAAO,EAAE,MAAM;AACf,YAAA,aAAa,EAAE,QAAQ;AACvB,YAAA,GAAG,EAAE,EAAE;AACP,YAAA,+BAA+B,EAAE;AAC7B,gBAAA,GAAG,EAAE,EAAE;AACV,aAAA;AACJ,SAAA;AACD,QAAA,YAAY,EAAE;AACV,YAAA,QAAQ,EAAE,QAAQ;AAClB,YAAA,YAAY,EAAE,UAAU;AAC3B,SAAA;AACD,QAAA,WAAW,EAAE;AACT,YAAA,GAAG,EAAE;AACD,gBAAA,QAAQ,EAAE,UAAU;AACpB,gBAAA,GAAG,EAAE,CAAC;AACN,gBAAA,WAAW,EAAE,CAAC;AACjB,aAAA;AACJ,SAAA;AACD,QAAA,cAAc,EAAE;AACZ,YAAA,OAAO,EAAE,MAAM;AACf,YAAA,cAAc,EAAE,UAAU;AAC1B,YAAA,GAAG,EAAE,CAAC;AACT,SAAA;AACD,QAAA,iBAAiB,EAAE;YACf,QAAQ,EAAE,cAAc,GAAG,CAAC,GAAG,SAAS;YACxC,IAAI,EAAE,cAAc,GAAG,CAAC,GAAG,SAAS;AACvC,SAAA;AACD,QAAA,uBAAuB,EAAE;AACrB,YAAA,KAAK,EAAE,CAAC;AACR,YAAA,cAAc,EAAE,cAAc,GAAG,iBAAiB,CAAC,eAAe,CAAC,GAAG,SAAS;AAClF,SAAA;AACJ,KAAA,CAAC,CAAA;AACN;;;;"}
@@ -0,0 +1,40 @@
1
+ import { ITheme } from "@fluentui/react";
2
+ import { IColumn } from "@talxis/client-libraries";
3
+ export declare const getJustifyContent: (columnAlignment: Required<IColumn['alignment']>) => "center" | "flex-start" | "flex-end" | undefined;
4
+ export declare const getCellStyles: () => import("@fluentui/react").IProcessedStyleSet<{
5
+ cellRoot: {
6
+ height: string;
7
+ width: string;
8
+ display: string;
9
+ alignItems: string;
10
+ justifyContent: string;
11
+ };
12
+ checkbox: {
13
+ marginRight: number;
14
+ };
15
+ }>;
16
+ export declare const getInnerCellStyles: (isEditing: boolean, theme: ITheme, columnAlignment: IColumn['alignment']) => import("@fluentui/react").IProcessedStyleSet<{
17
+ innerCellRoot: {
18
+ flex: number;
19
+ display: string;
20
+ overflow: string;
21
+ alignItems: string;
22
+ height: string;
23
+ marginLeft: number | undefined;
24
+ marginRight: number | undefined;
25
+ };
26
+ shimmerWrapper: {
27
+ height: number;
28
+ };
29
+ shimmerRoot: {
30
+ width: string;
31
+ paddingLeft: number;
32
+ paddingRight: number;
33
+ };
34
+ errorIconRoot: {
35
+ color: string;
36
+ };
37
+ uneditableIconRoot: {
38
+ color: string;
39
+ };
40
+ }>;