impact-nova 2.6.0-alpha.0 → 2.6.0

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 (316) hide show
  1. package/README.md +25 -27
  2. package/dist/components/data/ag-grid-react/ag-grid.types.d.ts +3 -28
  3. package/dist/components/data/ag-grid-react/cell-renderers/date-display-renderer.d.ts +3 -0
  4. package/dist/components/data/ag-grid-react/cell-renderers/date-display-renderer.js +38 -31
  5. package/dist/components/data/ag-grid-react/cell-renderers/input-display-renderer.d.ts +1 -1
  6. package/dist/components/data/ag-grid-react/headers/advanced-filter/advanced-filter-dialog.js +65 -75
  7. package/dist/components/data/ag-grid-react/headers/advanced-filter/column-filter-section.d.ts +1 -1
  8. package/dist/components/data/ag-grid-react/headers/advanced-filter/column-filter-section.js +54 -54
  9. package/dist/components/data/ag-grid-react/headers/components/date-filter-picker.d.ts +1 -1
  10. package/dist/components/data/ag-grid-react/headers/components/header-info.d.ts +9 -3
  11. package/dist/components/data/ag-grid-react/headers/components/header-info.js +69 -61
  12. package/dist/components/data/ag-grid-react/headers/components/info-modal.js +8 -8
  13. package/dist/components/data/ag-grid-react/headers/header-search-input.js +119 -122
  14. package/dist/components/data/ag-grid-react/headers/utils/date-utils.d.ts +1 -2
  15. package/dist/components/data/ag-grid-react/headers/utils/date-utils.js +20 -25
  16. package/dist/components/data/ag-grid-react/headers/utils/filter-utils.d.ts +1 -1
  17. package/dist/components/data/ag-grid-react/index.d.ts +1 -1
  18. package/dist/components/data/ag-grid-react/index.js +254 -481
  19. package/dist/components/data/ag-grid-react/theme.js +2 -6
  20. package/dist/components/data/ag-grid-react/value-formatter.types.d.ts +0 -4
  21. package/dist/components/data/ag-grid-react/value-formatters.d.ts +19 -0
  22. package/dist/components/data/ag-grid-react/value-formatters.js +90 -88
  23. package/dist/components/data/data-table/build-column-tree-from-grid.d.ts +2 -0
  24. package/dist/components/data/data-table/build-column-tree-from-grid.js +64 -58
  25. package/dist/components/data/data-table/column-picker-authority.d.ts +35 -0
  26. package/dist/components/data/data-table/column-picker-authority.js +118 -0
  27. package/dist/components/data/data-table/column-picker-drop-validation.d.ts +7 -0
  28. package/dist/components/data/data-table/column-picker-drop-validation.js +37 -0
  29. package/dist/components/data/data-table/column-savability.d.ts +3 -0
  30. package/dist/components/data/data-table/column-savability.js +10 -0
  31. package/dist/components/data/data-table/data-table-column-apply.d.ts +2 -0
  32. package/dist/components/data/data-table/data-table-column-apply.js +84 -73
  33. package/dist/components/data/data-table/data-table-column-def-pin.js +31 -34
  34. package/dist/components/data/data-table/data-table-column-list-tree-apply.d.ts +10 -0
  35. package/dist/components/data/data-table/data-table-column-list-tree-apply.js +79 -0
  36. package/dist/components/data/data-table/data-table-column-list.js +122 -64
  37. package/dist/components/data/data-table/data-table-column-tree-cache.d.ts +12 -6
  38. package/dist/components/data/data-table/data-table-column-tree-cache.js +250 -131
  39. package/dist/components/data/data-table/data-table-context.js +5 -5
  40. package/dist/components/data/data-table/data-table-flat-column-virtual-rows.d.ts +27 -0
  41. package/dist/components/data/data-table/data-table-flat-column-virtual-rows.js +196 -0
  42. package/dist/components/data/data-table/data-table-picker-column-eligibility.d.ts +1 -0
  43. package/dist/components/data/data-table/data-table-picker-column-eligibility.js +7 -0
  44. package/dist/components/data/data-table/data-table-sheet-context.js +1 -1
  45. package/dist/components/data/data-table/data-table-sheet.js +1 -2
  46. package/dist/components/data/data-table/index.d.ts +2 -0
  47. package/dist/components/data/data-table/index.js +32 -28
  48. package/dist/components/data/data-table/patch-column-tree-indicators-from-grid.d.ts +5 -0
  49. package/dist/components/data/data-table/patch-column-tree-indicators-from-grid.js +28 -10
  50. package/dist/components/data/data-table/reconcile-column-tree-from-grid.d.ts +12 -0
  51. package/dist/components/data/data-table/reconcile-column-tree-from-grid.js +12 -0
  52. package/dist/components/data/data-table/use-data-table-column-list-sync.d.ts +10 -0
  53. package/dist/components/data/data-table/use-data-table-column-list-sync.js +250 -196
  54. package/dist/components/data/nested-list/components/NestedListContent.d.ts +10 -2
  55. package/dist/components/data/nested-list/components/NestedListContent.js +253 -138
  56. package/dist/components/data/nested-list/components/SortableItem.d.ts +2 -1
  57. package/dist/components/data/nested-list/components/SortableItem.js +62 -60
  58. package/dist/components/data/nested-list/hooks/useNestedListDragDrop.d.ts +10 -20
  59. package/dist/components/data/nested-list/hooks/useNestedListDragDrop.js +44 -233
  60. package/dist/components/data/nested-list/hooks/useVirtualNestedListDrag.d.ts +24 -0
  61. package/dist/components/data/nested-list/hooks/useVirtualNestedListDrag.js +128 -0
  62. package/dist/components/data/nested-list/nested-list-constants.d.ts +4 -1
  63. package/dist/components/data/nested-list/nested-list-constants.js +10 -4
  64. package/dist/components/data/nested-list/nested-list-display-utils.d.ts +11 -0
  65. package/dist/components/data/nested-list/nested-list-display-utils.js +74 -0
  66. package/dist/components/data/nested-list/nested-list-drop-engine.d.ts +31 -0
  67. package/dist/components/data/nested-list/nested-list-drop-engine.js +209 -0
  68. package/dist/components/data/nested-list/nested-list-flat-virtual-handlers.d.ts +26 -0
  69. package/dist/components/data/nested-list/nested-list-flat-virtual-handlers.js +67 -0
  70. package/dist/components/data/nested-list/nested-list-item-tree-mutations.d.ts +4 -0
  71. package/dist/components/data/nested-list/nested-list-item-tree-mutations.js +43 -0
  72. package/dist/components/data/nested-list/nested-list-lazy-flat-rows.d.ts +3 -0
  73. package/dist/components/data/nested-list/nested-list-lazy-flat-rows.js +34 -0
  74. package/dist/components/data/nested-list/nested-list-row-estimates.d.ts +9 -0
  75. package/dist/components/data/nested-list/nested-list-row-estimates.js +14 -0
  76. package/dist/components/data/nested-list/nested-list-scroll-anchor.d.ts +36 -0
  77. package/dist/components/data/nested-list/nested-list-scroll-anchor.js +47 -0
  78. package/dist/components/data/nested-list/nested-list-virtual-drop.d.ts +59 -0
  79. package/dist/components/data/nested-list/nested-list-virtual-drop.js +341 -0
  80. package/dist/components/data/nested-list/nested-list.js +322 -336
  81. package/dist/components/data/nested-list/nested-list.types.d.ts +17 -0
  82. package/dist/components/data-display/calendar/calendar-available-view.d.ts +6 -2
  83. package/dist/components/data-display/calendar/calendar-available-view.js +18 -19
  84. package/dist/components/data-display/calendar/calendar-config.js +21 -22
  85. package/dist/components/data-display/calendar/calendar-day-button.js +21 -21
  86. package/dist/components/data-display/calendar/calendar-day-picker-view.js +35 -36
  87. package/dist/components/data-display/calendar/calendar-fiscal-labels.d.ts +3 -3
  88. package/dist/components/data-display/calendar/calendar-fiscal-labels.js +62 -50
  89. package/dist/components/data-display/calendar/calendar-quarter-utils.js +12 -12
  90. package/dist/components/data-display/calendar/calendar-week-utils.d.ts +6 -0
  91. package/dist/components/data-display/calendar/calendar-week-utils.js +33 -33
  92. package/dist/components/data-display/calendar/calendar-year-panes.js +68 -58
  93. package/dist/components/data-display/calendar/calendar-year-utils.d.ts +13 -0
  94. package/dist/components/data-display/calendar/calendar-year-utils.js +59 -50
  95. package/dist/components/data-display/calendar/calendar.js +156 -153
  96. package/dist/components/data-display/calendar/fiscal-period-caption-select.js +22 -23
  97. package/dist/components/data-display/calendar/use-calendar-i18n.d.ts +0 -1
  98. package/dist/components/data-display/calendar/use-calendar-i18n.js +9 -10
  99. package/dist/components/data-display/chart/chart.js +72 -72
  100. package/dist/components/data-display/chart/chart.utils.d.ts +1 -1
  101. package/dist/components/data-display/chart/chart.utils.js +31 -40
  102. package/dist/components/feedback/sheet/sheet.js +1 -1
  103. package/dist/components/feedback/toast/toast.d.ts +1 -1
  104. package/dist/components/feedback/toast/toast.variants.d.ts +1 -1
  105. package/dist/components/flows/filter-panel/filter-panel.d.ts +1 -1
  106. package/dist/components/flows/filter-panel/filter-panel.js +64 -65
  107. package/dist/components/flows/filter-panel/filter-panel.types.d.ts +0 -1
  108. package/dist/components/flows/guidance/guidance-layer.js +34 -31
  109. package/dist/components/flows/guidance/hooks/useGuidanceOverlayGeometry.js +29 -20
  110. package/dist/components/flows/guidance/renderers/announcement-renderer.d.ts +1 -1
  111. package/dist/components/flows/guidance/renderers/announcement-renderer.js +74 -28
  112. package/dist/components/flows/guidance/renderers/guidance-action-tap-icon.d.ts +5 -0
  113. package/dist/components/flows/guidance/renderers/guidance-action-tap-icon.js +68 -0
  114. package/dist/components/flows/guidance/renderers/guidance-announcement-surface.d.ts +5 -0
  115. package/dist/components/flows/guidance/renderers/guidance-announcement-surface.js +76 -0
  116. package/dist/components/flows/guidance/renderers/guidance-card-shared.d.ts +43 -2
  117. package/dist/components/flows/guidance/renderers/guidance-card-shared.js +322 -99
  118. package/dist/components/flows/guidance/renderers/guidance-renderer-shared.d.ts +3 -0
  119. package/dist/components/flows/guidance/renderers/guidance-renderer-shared.js +189 -148
  120. package/dist/components/flows/guidance/renderers/guidance-shortcut-display.d.ts +9 -0
  121. package/dist/components/flows/guidance/renderers/guidance-shortcut-display.js +36 -0
  122. package/dist/components/flows/guidance/renderers/guidance-tour-overlay.d.ts +2 -1
  123. package/dist/components/flows/guidance/renderers/guidance-tour-overlay.js +152 -89
  124. package/dist/components/forms/date-picker/date-picker.js +126 -125
  125. package/dist/components/forms/date-picker/date-range-picker.js +192 -191
  126. package/dist/components/forms/date-picker/fiscal-pass-through.d.ts +6 -6
  127. package/dist/components/forms/date-picker/fiscal-pass-through.js +7 -3
  128. package/dist/components/forms/date-picker/multi-date-picker.js +67 -66
  129. package/dist/components/forms/date-picker/multi-quarter-picker.js +87 -87
  130. package/dist/components/forms/date-picker/multi-week-picker.js +83 -82
  131. package/dist/components/forms/date-picker/multi-year-picker.js +81 -81
  132. package/dist/components/forms/date-picker/quarter-range-picker.js +84 -84
  133. package/dist/components/forms/date-picker/week-picker.js +175 -174
  134. package/dist/components/forms/date-picker/week-range-picker.js +214 -213
  135. package/dist/components/forms/date-picker/year-range-picker.js +79 -79
  136. package/dist/components/ui/local-raster-icons/rasterIcons.d.ts +0 -1
  137. package/dist/components/ui/local-raster-icons/rasterIcons.js +25 -27
  138. package/dist/form-react/Fields/ChipsField.js +49 -48
  139. package/dist/form-react/Fields/DateRangeField.js +25 -25
  140. package/dist/form-react/Fields/MonthRangeField.js +57 -57
  141. package/dist/form-react/Fields/MultiMonthPickerField.js +28 -26
  142. package/dist/form-react/Fields/MultiWeekPickerField.js +41 -38
  143. package/dist/form-react/Fields/MultiYearPickerField.js +45 -45
  144. package/dist/form-react/Fields/SelectField.js +24 -26
  145. package/dist/form-react/Fields/TextFieldWithBackendValidation.js +27 -26
  146. package/dist/form-react/Fields/WeekRangePicker.js +18 -16
  147. package/dist/form-react/Fields/YearPickerField.js +27 -27
  148. package/dist/form-react/Fields/YearRangePickerField.js +29 -29
  149. package/dist/form-react/fields.d.ts +3 -0
  150. package/dist/form-react/fields.js +35 -29
  151. package/dist/form-react/types/fields.types.d.ts +39 -0
  152. package/dist/form-react/utils/date.utils.d.ts +52 -2
  153. package/dist/form-react/utils/date.utils.js +198 -62
  154. package/dist/i18n/defaultMessages.d.ts +5 -143
  155. package/dist/i18n/defaultMessages.js +25 -163
  156. package/dist/i18n/getDateFnsLocale.d.ts +4 -5
  157. package/dist/i18n/getDateFnsLocale.js +16 -46
  158. package/dist/i18n/i18n.types.d.ts +0 -13
  159. package/dist/i18n/impact-nova-i18n-context.d.ts +1 -1
  160. package/dist/i18n/impact-nova-i18n-context.js +25 -33
  161. package/dist/i18n/impact-nova-i18n-defaults.js +6 -8
  162. package/dist/i18n/index.d.ts +1 -4
  163. package/dist/i18n/index.js +16 -41
  164. package/dist/i18n/locales/de.js +3 -141
  165. package/dist/i18n/locales/es.js +3 -141
  166. package/dist/i18n/locales/hi.js +3 -141
  167. package/dist/i18n/locales/kn.js +3 -141
  168. package/dist/impact-nova-components.css +0 -249
  169. package/dist/impact-nova-tokens.scss +22 -6
  170. package/dist/impact-nova.css +1 -1
  171. package/dist/index.d.ts +1 -1
  172. package/dist/index.js +603 -622
  173. package/dist/lib/fiscal-calendar/index.d.ts +2 -2
  174. package/dist/lib/fiscal-calendar/index.js +26 -24
  175. package/dist/lib/fiscal-calendar/week-selection.d.ts +5 -0
  176. package/dist/lib/fiscal-calendar/week-selection.js +56 -49
  177. package/dist/lib/guidance/engine/guidance-engine.d.ts +9 -0
  178. package/dist/lib/guidance/engine/guidance-engine.js +127 -65
  179. package/dist/lib/guidance/engine/manifest-validator.js +37 -30
  180. package/dist/lib/guidance/targets/target-resolver.d.ts +1 -1
  181. package/dist/lib/guidance/targets/target-resolver.js +32 -30
  182. package/dist/lib/guidance/types/guidance.types.d.ts +41 -0
  183. package/dist/lib/hash/fnv1a128.d.ts +16 -0
  184. package/dist/lib/hash/fnv1a128.js +21 -0
  185. package/dist/llms/index.js +2 -26
  186. package/dist/llms/rules/ag-grid.js +1 -1
  187. package/dist/llms/rules/best-practices.js +1 -1
  188. package/dist/llms/rules/installation.js +1 -1
  189. package/dist/llms/rules/migration.js +1 -1
  190. package/dist/llms/rules/real-world-patterns.js +1 -1
  191. package/dist/llms/rules/requirements.js +1 -1
  192. package/dist/llms/rules/troubleshooting.js +1 -1
  193. package/dist/providers/app-providers.d.ts +1 -3
  194. package/dist/providers/app-providers.js +11 -22
  195. package/package.json +2 -13
  196. package/dist/components/data/ag-grid-react/chat/chat-capabilities.d.ts +0 -9
  197. package/dist/components/data/ag-grid-react/chat/chat-capabilities.js +0 -22
  198. package/dist/components/data/ag-grid-react/chat/chat-column.d.ts +0 -20
  199. package/dist/components/data/ag-grid-react/chat/chat-column.js +0 -81
  200. package/dist/components/data/ag-grid-react/chat/chat-composer.d.ts +0 -10
  201. package/dist/components/data/ag-grid-react/chat/chat-composer.js +0 -352
  202. package/dist/components/data/ag-grid-react/chat/chat-constants.d.ts +0 -17
  203. package/dist/components/data/ag-grid-react/chat/chat-constants.js +0 -22
  204. package/dist/components/data/ag-grid-react/chat/chat-format.d.ts +0 -41
  205. package/dist/components/data/ag-grid-react/chat/chat-format.js +0 -94
  206. package/dist/components/data/ag-grid-react/chat/chat-host.d.ts +0 -10
  207. package/dist/components/data/ag-grid-react/chat/chat-host.js +0 -651
  208. package/dist/components/data/ag-grid-react/chat/chat-host.types.d.ts +0 -13
  209. package/dist/components/data/ag-grid-react/chat/chat-html.d.ts +0 -2
  210. package/dist/components/data/ag-grid-react/chat/chat-html.js +0 -40
  211. package/dist/components/data/ag-grid-react/chat/chat-identity.d.ts +0 -13
  212. package/dist/components/data/ag-grid-react/chat/chat-identity.js +0 -24
  213. package/dist/components/data/ag-grid-react/chat/chat-menu.d.ts +0 -13
  214. package/dist/components/data/ag-grid-react/chat/chat-menu.js +0 -15
  215. package/dist/components/data/ag-grid-react/chat/chat-notify.d.ts +0 -17
  216. package/dist/components/data/ag-grid-react/chat/chat-notify.js +0 -124
  217. package/dist/components/data/ag-grid-react/chat/chat-persist.d.ts +0 -13
  218. package/dist/components/data/ag-grid-react/chat/chat-persist.js +0 -34
  219. package/dist/components/data/ag-grid-react/chat/chat-priority.d.ts +0 -13
  220. package/dist/components/data/ag-grid-react/chat/chat-priority.js +0 -79
  221. package/dist/components/data/ag-grid-react/chat/chat-summaries.d.ts +0 -2
  222. package/dist/components/data/ag-grid-react/chat/chat-summaries.js +0 -24
  223. package/dist/components/data/ag-grid-react/chat/chat-thread-ui.d.ts +0 -72
  224. package/dist/components/data/ag-grid-react/chat/chat-thread-ui.js +0 -713
  225. package/dist/components/data/ag-grid-react/chat/chat-toggle.d.ts +0 -6
  226. package/dist/components/data/ag-grid-react/chat/chat-toggle.js +0 -25
  227. package/dist/components/data/ag-grid-react/chat/chat-ui-actions.d.ts +0 -13
  228. package/dist/components/data/ag-grid-react/chat/chat-ui-actions.js +0 -26
  229. package/dist/components/data/ag-grid-react/chat/chat-window.d.ts +0 -14
  230. package/dist/components/data/ag-grid-react/chat/chat-window.js +0 -82
  231. package/dist/components/data/ag-grid-react/chat/chat-workspace.d.ts +0 -91
  232. package/dist/components/data/ag-grid-react/chat/chat-workspace.js +0 -555
  233. package/dist/components/data/ag-grid-react/chat/chat.types.d.ts +0 -319
  234. package/dist/components/data/ag-grid-react/chat/index.d.ts +0 -6
  235. package/dist/components/data/ag-grid-react/chat/index.js +0 -24
  236. package/dist/components/data/ag-grid-react/chat.story-data.d.ts +0 -34
  237. package/dist/components/data/ag-grid-react/chat.story-sources.d.ts +0 -4
  238. package/dist/components/data/ag-grid-react/comments/assets/comments-no-results.png.js +0 -4
  239. package/dist/components/data/ag-grid-react/comments/comment-mode-toggle.d.ts +0 -6
  240. package/dist/components/data/ag-grid-react/comments/comment-mode-toggle.js +0 -29
  241. package/dist/components/data/ag-grid-react/comments/comments-actions-menu.d.ts +0 -8
  242. package/dist/components/data/ag-grid-react/comments/comments-actions-menu.js +0 -18
  243. package/dist/components/data/ag-grid-react/comments/comments-ag-grid-presence.d.ts +0 -18
  244. package/dist/components/data/ag-grid-react/comments/comments-ag-grid-presence.js +0 -16
  245. package/dist/components/data/ag-grid-react/comments/comments-capabilities.d.ts +0 -11
  246. package/dist/components/data/ag-grid-react/comments/comments-capabilities.js +0 -26
  247. package/dist/components/data/ag-grid-react/comments/comments-constants.d.ts +0 -12
  248. package/dist/components/data/ag-grid-react/comments/comments-constants.js +0 -21
  249. package/dist/components/data/ag-grid-react/comments/comments-format.d.ts +0 -20
  250. package/dist/components/data/ag-grid-react/comments/comments-format.js +0 -49
  251. package/dist/components/data/ag-grid-react/comments/comments-generation.d.ts +0 -14
  252. package/dist/components/data/ag-grid-react/comments/comments-generation.js +0 -18
  253. package/dist/components/data/ag-grid-react/comments/comments-host.d.ts +0 -10
  254. package/dist/components/data/ag-grid-react/comments/comments-host.js +0 -343
  255. package/dist/components/data/ag-grid-react/comments/comments-host.types.d.ts +0 -18
  256. package/dist/components/data/ag-grid-react/comments/comments-identity.d.ts +0 -7
  257. package/dist/components/data/ag-grid-react/comments/comments-identity.js +0 -20
  258. package/dist/components/data/ag-grid-react/comments/comments-menu.d.ts +0 -29
  259. package/dist/components/data/ag-grid-react/comments/comments-menu.js +0 -35
  260. package/dist/components/data/ag-grid-react/comments/comments-overlay-anchor.d.ts +0 -22
  261. package/dist/components/data/ag-grid-react/comments/comments-overlay-anchor.js +0 -98
  262. package/dist/components/data/ag-grid-react/comments/comments-overlay.d.ts +0 -21
  263. package/dist/components/data/ag-grid-react/comments/comments-overlay.js +0 -406
  264. package/dist/components/data/ag-grid-react/comments/comments-panel.d.ts +0 -9
  265. package/dist/components/data/ag-grid-react/comments/comments-panel.js +0 -272
  266. package/dist/components/data/ag-grid-react/comments/comments-persist.d.ts +0 -11
  267. package/dist/components/data/ag-grid-react/comments/comments-persist.js +0 -19
  268. package/dist/components/data/ag-grid-react/comments/comments-reveal.d.ts +0 -11
  269. package/dist/components/data/ag-grid-react/comments/comments-reveal.js +0 -31
  270. package/dist/components/data/ag-grid-react/comments/comments-ui-actions.d.ts +0 -18
  271. package/dist/components/data/ag-grid-react/comments/comments-ui-actions.js +0 -22
  272. package/dist/components/data/ag-grid-react/comments/comments-window.d.ts +0 -10
  273. package/dist/components/data/ag-grid-react/comments/comments-window.js +0 -62
  274. package/dist/components/data/ag-grid-react/comments/comments.types.d.ts +0 -178
  275. package/dist/components/data/ag-grid-react/comments/index.d.ts +0 -5
  276. package/dist/components/data/ag-grid-react/comments/index.js +0 -15
  277. package/dist/components/data/ag-grid-react/comments-cell-renderers-showcase.d.ts +0 -25
  278. package/dist/components/data/ag-grid-react/comments.story-data.d.ts +0 -37
  279. package/dist/components/data/ag-grid-react/comments.story-sources.d.ts +0 -11
  280. package/dist/components/data/ag-grid-react/grid-cell-address.d.ts +0 -21
  281. package/dist/components/data/ag-grid-react/grid-cell-address.js +0 -21
  282. package/dist/components/data/ag-grid-react/grid-row-reveal.d.ts +0 -34
  283. package/dist/components/data/ag-grid-react/grid-row-reveal.js +0 -33
  284. package/dist/components/data/ag-grid-react/notes/index.d.ts +0 -2
  285. package/dist/components/data/ag-grid-react/notes/index.js +0 -1
  286. package/dist/components/data/ag-grid-react/notes/notes-ag-grid-adapter.d.ts +0 -25
  287. package/dist/components/data/ag-grid-react/notes/notes-ag-grid-adapter.js +0 -32
  288. package/dist/components/data/ag-grid-react/notes/notes-constants.d.ts +0 -2
  289. package/dist/components/data/ag-grid-react/notes/notes-constants.js +0 -4
  290. package/dist/components/data/ag-grid-react/notes/notes.types.d.ts +0 -12
  291. package/dist/components/data/ag-grid-react/notes.story-sources.d.ts +0 -7
  292. package/dist/components/data/ag-grid-react/nova-system-column.d.ts +0 -7
  293. package/dist/components/data/ag-grid-react/nova-system-column.js +0 -18
  294. package/dist/components/forms/date-picker/use-picker-i18n.d.ts +0 -6
  295. package/dist/components/forms/date-picker/use-picker-i18n.js +0 -11
  296. package/dist/components/ui/local-raster-icons/message3d.webp.js +0 -4
  297. package/dist/i18n/format/collator.d.ts +0 -1
  298. package/dist/i18n/format/collator.js +0 -7
  299. package/dist/i18n/format/date-pattern.d.ts +0 -5
  300. package/dist/i18n/format/date-pattern.js +0 -20
  301. package/dist/i18n/format/format-date.d.ts +0 -9
  302. package/dist/i18n/format/format-date.js +0 -56
  303. package/dist/i18n/format/format-number.d.ts +0 -20
  304. package/dist/i18n/format/format-number.js +0 -68
  305. package/dist/i18n/format/formatter-cache.d.ts +0 -9
  306. package/dist/i18n/format/formatter-cache.js +0 -66
  307. package/dist/i18n/format/index.d.ts +0 -6
  308. package/dist/i18n/format/parse-number.d.ts +0 -6
  309. package/dist/i18n/format/parse-number.js +0 -53
  310. package/dist/i18n/locale-config.d.ts +0 -28
  311. package/dist/i18n/locale-config.js +0 -32
  312. package/dist/i18n/week-start.d.ts +0 -6
  313. package/dist/i18n/week-start.js +0 -30
  314. package/dist/llms/rules/data-table-chat.js +0 -1
  315. package/dist/llms/rules/data-table-comments.js +0 -1
  316. package/dist/llms/rules/data-table-notes.js +0 -1
@@ -1,272 +0,0 @@
1
- import { jsx as t, jsxs as o } from "react/jsx-runtime";
2
- import { useRef as ie, useState as c, useEffect as $ } from "react";
3
- import { useVirtualizedList as de } from "../../../../lib/virtualized/useVirtualizedList.js";
4
- import { Avatar as ce, AvatarFallback as me } from "../../../data-display/avatar/avatar.js";
5
- import { DataTableSheet as he, DataTableSheetContent as pe, DataTableSheetHeader as ue } from "../../data-table/data-table-sheet.js";
6
- import { DataTableSheetBody as xe, DataTableSheetSection as fe } from "../../data-table/data-table-sheet-layout.js";
7
- import { Button as J } from "../../../primitives/button/button.js";
8
- import { Input as ve } from "../../../forms/input/input.js";
9
- import { DropdownMenu as ge, DropdownMenuTrigger as be, DropdownMenuContent as Ne, DropdownMenuItem as q } from "../../../feedback/dropdown-menu/dropdown-menu.js";
10
- import { EmptyContainer as F, EmptyContainerImage as K, EmptyContainerTitle as H, EmptyContainerDescription as Q } from "../../../primitives/empty-container/empty-container.js";
11
- import { useImpactNovaI18n as Y } from "../../../../i18n/use-impact-nova-i18n.js";
12
- import { cn as I } from "../../../../lib/utils.js";
13
- import { Cross as Ce, Search as we, Filterlist as Te, FillTick as Se, CheckTickcircle as ye } from "impact-nova-icons";
14
- import { COMMENTS_VIRTUALIZE_AFTER as Ee, COMMENTS_PANEL_PAGE_SIZE as U } from "./comments-constants.js";
15
- import { resolveCommentsCapabilities as Ie, commentsOverlayActions as Ae } from "./comments-capabilities.js";
16
- import { commentInitials as De, commentAvatarTone as Me, formatPanelTimestamp as Re } from "./comments-format.js";
17
- import { buildCommentThreadMenuItems as ke } from "./comments-ui-actions.js";
18
- import { CommentActionsMenu as Le } from "./comments-actions-menu.js";
19
- import Pe from "./assets/comments-no-results.png.js";
20
- import { Message3d as ze } from "../../../ui/local-raster-icons/rasterIcons.js";
21
- const _e = "!h-8 !w-8 !rounded-md text-sm font-extrabold", V = "flex-1 h-full w-full min-w-0 max-w-none animate-none rounded-none border-0 bg-transparent px-3 py-0 shadow-none [&>div]:max-w-[284px] [&>div]:gap-[10px]";
22
- function j(n, u, a) {
23
- return n < u - 1 && !a ? "border-b border-stroke-hairline" : void 0;
24
- }
25
- function Be({
26
- summary: n,
27
- selected: u,
28
- config: a,
29
- persist: w,
30
- onSelect: T,
31
- onReload: x,
32
- onError: r
33
- }) {
34
- const { t: d, dateLocale: i } = Y(), h = Ie(a.getCapabilities, n.address), g = Ae(h), b = Math.max(0, n.messageCount - 1), m = n.author ?? d("comments.title"), N = {
35
- address: n.address,
36
- threadId: n.threadId,
37
- resolved: n.resolved
38
- }, l = ke({
39
- showDelete: g.showDelete && !n.resolved,
40
- deleteLabel: d("comments.deleteThread"),
41
- extras: a.threadActions,
42
- context: N,
43
- onDelete: () => {
44
- w({
45
- type: "delete-thread",
46
- threadId: n.threadId,
47
- address: n.address
48
- }).then(x).catch(() => r(d("comments.saveError")));
49
- }
50
- });
51
- return /* @__PURE__ */ o(
52
- "div",
53
- {
54
- "data-iv-comments-summary": "",
55
- "data-slot": "comments-summary",
56
- className: I("relative flex items-start rounded-2xl", u && "bg-brand-tint"),
57
- children: [
58
- /* @__PURE__ */ o(
59
- "button",
60
- {
61
- type: "button",
62
- className: "flex min-w-0 flex-1 flex-col items-start gap-3 p-4 pr-16 text-left",
63
- "aria-current": u ? "true" : void 0,
64
- onClick: () => T(n.address, n.threadId),
65
- children: [
66
- /* @__PURE__ */ o("div", { className: "flex min-w-0 items-center gap-3", children: [
67
- a.renderAvatar ? a.renderAvatar({ author: m }) : /* @__PURE__ */ t(ce, { size: "sm", shape: "square", className: _e, children: /* @__PURE__ */ t(me, { className: I("text-sm font-extrabold", Me(m)), children: De(m) }) }),
68
- /* @__PURE__ */ o("div", { className: "min-w-0", children: [
69
- /* @__PURE__ */ t("p", { className: "truncate text-sm font-semibold leading-[21px] text-content-secondary", children: m }),
70
- n.updatedAt ? /* @__PURE__ */ t("p", { className: "text-xs font-medium leading-4 text-content-tertiary", children: Re(n.updatedAt, i) }) : null
71
- ] })
72
- ] }),
73
- /* @__PURE__ */ t("p", { className: "line-clamp-3 text-sm font-medium leading-5 text-content", children: n.preview }),
74
- b > 0 && !n.resolved ? /* @__PURE__ */ t("span", { className: "text-sm font-medium leading-5 text-brand", children: d("comments.replies", { count: b }) }) : null
75
- ]
76
- }
77
- ),
78
- /* @__PURE__ */ o("div", { className: "absolute right-2 top-3 flex items-center", children: [
79
- /* @__PURE__ */ t(
80
- Le,
81
- {
82
- label: d("comments.threadActions"),
83
- items: l,
84
- align: "end",
85
- render: a.renderThreadActions ? (S) => a.renderThreadActions({ items: S, context: N }) : void 0
86
- }
87
- ),
88
- g.showResolve ? /* @__PURE__ */ t(
89
- J,
90
- {
91
- type: "button",
92
- size: "iconSm",
93
- variant: "ghost",
94
- className: I(n.resolved && "text-success"),
95
- "aria-label": n.resolved ? d("comments.unresolve") : d("comments.resolve"),
96
- onClick: () => {
97
- w({
98
- type: "resolve",
99
- threadId: n.threadId,
100
- address: n.address,
101
- resolved: !n.resolved
102
- }).then(x).catch(() => r(d("comments.saveError")));
103
- },
104
- children: n.resolved ? /* @__PURE__ */ t(Se, {}) : /* @__PURE__ */ t(ye, {})
105
- }
106
- ) : null
107
- ] })
108
- ]
109
- }
110
- );
111
- }
112
- function rt({
113
- open: n,
114
- onOpenChange: u,
115
- config: a,
116
- onSelect: w,
117
- status: T,
118
- locating: x = !1
119
- }) {
120
- const { t: r } = Y(), d = ie(null), [i, h] = c([]), [g, b] = c(), [m, N] = c(!1), [l, S] = c({}), [f, P] = c(""), [A, z] = c(!1), [D, p] = c(null), [Z, G] = c(null), [M, W] = c(0), [X, ee] = c(!1), [R, te] = c(null), C = a.getSummaries, ne = a.persist, le = n ? `${JSON.stringify(l)}:${M}` : null, y = !!(n && le !== Z && !D), k = !!l.text || l.resolved !== void 0, re = !X || k, _ = !y && i.length === 0 && !k, B = !y && i.length === 0 && k, se = m || i.length > Ee;
121
- $(() => {
122
- if (!n || !C) return;
123
- let e = !1;
124
- const s = `${JSON.stringify(l)}:${M}`;
125
- return C({ limit: U, query: l }).then((v) => {
126
- e || (h([...v.items]), b(v.nextCursor), N(!!v.nextCursor), G(s), p(null), !l.text && l.resolved === void 0 && ee(v.items.length === 0));
127
- }).catch(() => {
128
- e || p(r("comments.loadError"));
129
- }), () => {
130
- e = !0;
131
- };
132
- }, [C, n, l, M, r]), $(() => {
133
- if (!n) return;
134
- const e = f.trim() || void 0;
135
- if (e === l.text) return;
136
- const s = window.setTimeout(() => {
137
- h([]), p(null), S((v) => ({ ...v, text: e }));
138
- }, 250);
139
- return () => window.clearTimeout(s);
140
- }, [n, l.text, f]);
141
- const E = (e) => {
142
- h([]), p(null), S(e);
143
- }, oe = () => {
144
- h([]), p(null), W((e) => e + 1);
145
- }, L = de({
146
- scrollElementRef: d,
147
- rowCount: i.length,
148
- getRowId: (e) => i[e]?.threadId ?? String(e),
149
- getRowData: (e) => i[e],
150
- estimateSize: () => 156,
151
- hasMore: m,
152
- onEndReached: () => {
153
- !C || !m || !g || A || (z(!0), C({ cursor: g, limit: U, query: l }).then((e) => {
154
- h((s) => [...s, ...e.items]), b(e.nextCursor), N(!!e.nextCursor);
155
- }).catch(() => p(r("comments.loadError"))).finally(() => z(!1)));
156
- }
157
- }), ae = (e, s) => {
158
- te(s), w(e, s);
159
- }, O = (e) => /* @__PURE__ */ t(
160
- Be,
161
- {
162
- summary: e,
163
- selected: e.threadId === R,
164
- config: a,
165
- persist: ne,
166
- onSelect: ae,
167
- onReload: oe,
168
- onError: p
169
- }
170
- );
171
- return /* @__PURE__ */ t(he, { open: n, onOpenChange: u, children: /* @__PURE__ */ t(pe, { children: /* @__PURE__ */ o("div", { "data-iv-comments-panel": "", "data-slot": "comments-panel", className: "flex h-full min-h-0 flex-1 flex-col", children: [
172
- /* @__PURE__ */ t(ue, { title: r("comments.panelTitle") }),
173
- /* @__PURE__ */ o(xe, { children: [
174
- re ? /* @__PURE__ */ o(fe, { className: "flex items-center gap-3 px-3 pb-2", children: [
175
- /* @__PURE__ */ t("div", { className: "min-w-0 flex-1", children: /* @__PURE__ */ t(
176
- ve,
177
- {
178
- value: f,
179
- prefix: /* @__PURE__ */ t(we, { className: "size-4" }),
180
- suffix: f ? /* @__PURE__ */ t(Ce, { className: "size-3.5", "aria-hidden": !0 }) : void 0,
181
- suffixClick: f ? () => {
182
- P(""), E({ ...l, text: void 0 });
183
- } : void 0,
184
- placeholder: r("comments.searchPlaceholder"),
185
- "aria-label": r("comments.searchPlaceholder"),
186
- onChange: (e) => P(e.target.value),
187
- onKeyDown: (e) => {
188
- e.key === "Enter" && E({ ...l, text: f.trim() || void 0 });
189
- }
190
- }
191
- ) }),
192
- /* @__PURE__ */ o(ge, { children: [
193
- /* @__PURE__ */ t(be, { asChild: !0, children: /* @__PURE__ */ t(J, { type: "button", size: "icon", variant: "tertiary", "aria-label": r("comments.filterComments"), children: /* @__PURE__ */ t(Te, {}) }) }),
194
- /* @__PURE__ */ o(Ne, { align: "end", children: [
195
- /* @__PURE__ */ t(q, { onSelect: () => E({ resolved: !1, text: l.text }), children: r("comments.filterUnresolved") }),
196
- /* @__PURE__ */ t(q, { onSelect: () => E({ resolved: !0, text: l.text }), children: r("comments.filterResolved") })
197
- ] })
198
- ] })
199
- ] }) : null,
200
- D ? /* @__PURE__ */ t("p", { role: "alert", className: "px-3 text-sm text-destructive", children: D }) : null,
201
- T ? /* @__PURE__ */ t("p", { role: "status", "data-iv-comments-panel-status": "", className: "px-3 pb-2 text-sm text-content-secondary", children: T }) : null,
202
- _ ? /* @__PURE__ */ o(F, { className: V, "data-iv-comments-panel-empty": "", children: [
203
- /* @__PURE__ */ t(K, { width: 89, height: 70, className: "mb-0 after:hidden", children: /* @__PURE__ */ t(ze, { alt: "", className: "size-full", style: { width: 89, height: 70 } }) }),
204
- /* @__PURE__ */ o("div", { className: "flex flex-col items-center gap-[3px] text-center", children: [
205
- /* @__PURE__ */ t(H, { headingLevel: 3, className: "text-sm font-bold leading-[21px] tracking-normal", children: r("comments.emptyPanelTitle") }),
206
- /* @__PURE__ */ t(Q, { className: "mt-0 max-w-[284px] text-[10px] font-medium leading-[14px] text-content-tertiary", children: r("comments.emptyPanelDescription") })
207
- ] })
208
- ] }) : null,
209
- B ? /* @__PURE__ */ o(F, { className: V, "data-iv-comments-panel-no-results": "", children: [
210
- /* @__PURE__ */ t(
211
- K,
212
- {
213
- src: Pe,
214
- alt: "",
215
- width: 96,
216
- height: 95,
217
- className: "mb-2.5 after:hidden"
218
- }
219
- ),
220
- /* @__PURE__ */ t(H, { headingLevel: 3, className: "text-sm font-bold leading-[21px] tracking-normal", children: r("comments.noResultsTitle") }),
221
- /* @__PURE__ */ t(Q, { className: "mt-0.5 max-w-[284px] text-[10px] font-medium leading-[14px] text-content-tertiary", children: r("comments.noResultsDescription", { query: l.text ?? "" }) })
222
- ] }) : null,
223
- !_ && !B ? /* @__PURE__ */ o(
224
- "div",
225
- {
226
- ref: d,
227
- "data-iv-comments-panel-list": "",
228
- "aria-busy": x || y || A || void 0,
229
- "data-iv-comments-panel-locating": x ? "" : void 0,
230
- className: I("min-h-0 flex-1 overflow-auto px-3 pb-3 pt-2", x && "pointer-events-none"),
231
- children: [
232
- se ? /* @__PURE__ */ t("div", { style: { height: L.totalSize, position: "relative" }, children: L.virtualItems.map((e) => {
233
- const s = i[e.index];
234
- return s ? /* @__PURE__ */ t(
235
- "div",
236
- {
237
- ref: L.measureElement,
238
- "data-index": e.index,
239
- className: j(
240
- e.index,
241
- i.length,
242
- s.threadId === R
243
- ),
244
- style: {
245
- position: "absolute",
246
- top: 0,
247
- left: 0,
248
- width: "100%",
249
- transform: `translateY(${e.start}px)`
250
- },
251
- children: O(s)
252
- },
253
- s.threadId
254
- ) : null;
255
- }) }) : i.map((e, s) => /* @__PURE__ */ t(
256
- "div",
257
- {
258
- className: j(s, i.length, e.threadId === R),
259
- children: O(e)
260
- },
261
- e.threadId
262
- )),
263
- y || A ? /* @__PURE__ */ t("p", { "aria-busy": "true", children: r("comments.loading") }) : null
264
- ]
265
- }
266
- ) : null
267
- ] })
268
- ] }) }) });
269
- }
270
- export {
271
- rt as CommentsPanel
272
- };
@@ -1,11 +0,0 @@
1
- import { ThreadGenerationMap } from './comments-generation';
2
- import { CommentsRefreshApi } from './comments-ag-grid-presence';
3
- import { CommentsPersistEvent, ThreadId } from './comments.types';
4
- export declare function isCommentsConflictError(error: unknown): boolean;
5
- export declare function commitCommentsPersist(args: {
6
- persist: (event: CommentsPersistEvent) => Promise<void>;
7
- event: CommentsPersistEvent;
8
- generations: ThreadGenerationMap;
9
- threadId: ThreadId;
10
- api: CommentsRefreshApi;
11
- }): Promise<"applied" | "stale" | "failed" | "conflict" | "rejected">;
@@ -1,19 +0,0 @@
1
- import { isValidCommentMessageText as i } from "./comments-identity.js";
2
- import { refreshCommentsPresence as r } from "./comments-ag-grid-presence.js";
3
- function s(e) {
4
- return typeof e == "object" && e !== null && "status" in e && e.status === 409;
5
- }
6
- async function d(e) {
7
- if ((e.event.type === "add-message" || e.event.type === "edit-message") && !i(e.event.message.text))
8
- return "rejected";
9
- const t = e.generations.next(e.threadId);
10
- try {
11
- return await e.persist(e.event), e.generations.isCurrent(e.threadId, t) ? (r(e.api, e.event.address), "applied") : "stale";
12
- } catch (n) {
13
- return e.generations.isCurrent(e.threadId, t) ? s(n) ? "conflict" : "failed" : "stale";
14
- }
15
- }
16
- export {
17
- d as commitCommentsPersist,
18
- s as isCommentsConflictError
19
- };
@@ -1,11 +0,0 @@
1
- import { CellAddress, CommentsLocateResult } from './comments.types';
2
- import { GridRowRevealApi } from '../grid-row-reveal';
3
- export type CommentsGridRevealApi = GridRowRevealApi & {
4
- ensureColumnVisible: (key: string, position?: "auto" | "start" | "middle" | "end") => void;
5
- };
6
- export type RevealCommentCellOptions = {
7
- locateRow?: (address: CellAddress) => Promise<CommentsLocateResult>;
8
- pagination?: boolean;
9
- };
10
- export declare function revealCommentCell(gridApi: CommentsGridRevealApi | null | undefined, address: CellAddress, options?: RevealCommentCellOptions): Promise<"revealed" | "missing">;
11
- export declare function waitForCommentCell(container: HTMLElement | null, address: CellAddress, frames?: number): Promise<HTMLElement | null>;
@@ -1,31 +0,0 @@
1
- import { revealGridRow as c } from "../grid-row-reveal.js";
2
- import { cellElementFromAddress as a } from "../grid-cell-address.js";
3
- async function s(r, e, t) {
4
- const o = t?.locateRow;
5
- return await c(r, e.rowId, {
6
- pagination: t?.pagination,
7
- colId: e.colId,
8
- locateRow: o ? (n) => o({ rowId: n, colId: e.colId }) : void 0
9
- }) === "revealed" ? "revealed" : "missing";
10
- }
11
- function w(r, e, t = 24) {
12
- return new Promise((o) => {
13
- const i = (n) => {
14
- const l = a(r, e);
15
- if (l || n <= 0) {
16
- o(l);
17
- return;
18
- }
19
- if (typeof requestAnimationFrame == "function") {
20
- requestAnimationFrame(() => i(n - 1));
21
- return;
22
- }
23
- o(l);
24
- };
25
- i(t);
26
- });
27
- }
28
- export {
29
- s as revealCommentCell,
30
- w as waitForCommentCell
31
- };
@@ -1,18 +0,0 @@
1
- import { CommentMenuItem, CommentMessageActionContext, CommentThreadActionContext, CommentUiAction } from './comments.types';
2
- export declare function buildCommentMessageMenuItems(args: {
3
- showEdit: boolean;
4
- showDelete: boolean;
5
- editLabel: string;
6
- deleteLabel: string;
7
- extras?: readonly CommentUiAction<CommentMessageActionContext>[];
8
- context: CommentMessageActionContext;
9
- onEdit: () => void;
10
- onDelete: () => void;
11
- }): CommentMenuItem[];
12
- export declare function buildCommentThreadMenuItems(args: {
13
- showDelete: boolean;
14
- deleteLabel: string;
15
- extras?: readonly CommentUiAction<CommentThreadActionContext>[];
16
- context: CommentThreadActionContext;
17
- onDelete: () => void;
18
- }): CommentMenuItem[];
@@ -1,22 +0,0 @@
1
- function d(e) {
2
- const t = [];
3
- return e.showEdit && t.push({ id: "edit", label: e.editLabel, onSelect: e.onEdit }), e.showDelete && t.push({ id: "delete", label: e.deleteLabel, onSelect: e.onDelete }), n(t, e.extras, e.context), t;
4
- }
5
- function i(e) {
6
- const t = [];
7
- return e.showDelete && t.push({ id: "delete-thread", label: e.deleteLabel, onSelect: e.onDelete }), n(t, e.extras, e.context), t;
8
- }
9
- function n(e, t, o) {
10
- if (t)
11
- for (const l of t)
12
- e.push({
13
- id: l.id,
14
- label: l.label,
15
- disabled: l.disabled,
16
- onSelect: () => l.onSelect(o)
17
- });
18
- }
19
- export {
20
- d as buildCommentMessageMenuItems,
21
- i as buildCommentThreadMenuItems
22
- };
@@ -1,10 +0,0 @@
1
- import { CellCommentThread, CommentMessage, CommentsThreadPageRequest } from './comments.types';
2
- export type CommentsThreadWindow = {
3
- messages: CommentMessage[];
4
- hasMoreOlder: boolean;
5
- hiddenCount: number;
6
- messageCount: number;
7
- };
8
- export declare function commentsThreadPageRequest(purpose: CommentsThreadPageRequest["purpose"], before?: string): CommentsThreadPageRequest;
9
- export declare function selectCommentThreadWindow(messages: readonly CommentMessage[], request: CommentsThreadPageRequest): CommentsThreadWindow;
10
- export declare function boundLoadedThread(thread: CellCommentThread, request: CommentsThreadPageRequest): CellCommentThread;
@@ -1,62 +0,0 @@
1
- import { COMMENTS_PREVIEW_VISIBLE as r, commentPreviewSlice as l } from "./comments-format.js";
2
- import { COMMENTS_THREAD_PAGE_SIZE as a } from "./comments-constants.js";
3
- function C(e, n) {
4
- return {
5
- purpose: e,
6
- limit: e === "preview" ? r : a,
7
- before: n
8
- };
9
- }
10
- function m(e, n) {
11
- const d = e.length;
12
- if (n.purpose === "preview") {
13
- const s = l(e);
14
- return s.kind === "all" ? { messages: [...s.messages], hasMoreOlder: !1, hiddenCount: 0, messageCount: d } : {
15
- messages: [...s.head, ...s.tail],
16
- hasMoreOlder: s.hiddenCount > 0,
17
- hiddenCount: s.hiddenCount,
18
- messageCount: d
19
- };
20
- }
21
- if (n.before) {
22
- const s = e.findIndex((t) => t.id === n.before);
23
- if (s <= 0)
24
- return { messages: [], hasMoreOlder: !1, hiddenCount: 0, messageCount: d };
25
- const i = Math.max(0, s - n.limit);
26
- return {
27
- messages: e.slice(i, s),
28
- hasMoreOlder: i > 0,
29
- hiddenCount: i,
30
- messageCount: d
31
- };
32
- }
33
- const o = Math.max(0, d - n.limit);
34
- return {
35
- messages: e.slice(o),
36
- hasMoreOlder: o > 0,
37
- hiddenCount: o,
38
- messageCount: d
39
- };
40
- }
41
- function c(e, n) {
42
- if (e.messages.length <= n.limit && (e.hasMoreOlder != null || e.hiddenCount != null || e.messageCount != null))
43
- return {
44
- ...e,
45
- hasMoreOlder: e.hasMoreOlder ?? !1,
46
- hiddenCount: e.hiddenCount ?? 0,
47
- messageCount: e.messageCount ?? e.messages.length
48
- };
49
- const o = m(e.messages, n);
50
- return {
51
- ...e,
52
- messages: o.messages,
53
- hasMoreOlder: o.hasMoreOlder,
54
- hiddenCount: o.hiddenCount,
55
- messageCount: o.messageCount
56
- };
57
- }
58
- export {
59
- c as boundLoadedThread,
60
- C as commentsThreadPageRequest,
61
- m as selectCommentThreadWindow
62
- };
@@ -1,178 +0,0 @@
1
- import { ReactNode } from 'react';
2
- import { GridCellAddress } from '../grid-cell-address';
3
- export type ThreadId = string;
4
- /** Logical grid cell. Shared identity — not Comment-specific. */
5
- export type CellAddress = GridCellAddress;
6
- export type CommentMessage = {
7
- id: string;
8
- text: string;
9
- author: string;
10
- createdAt: string;
11
- updatedAt?: string;
12
- };
13
- export type CellCommentThread = {
14
- threadId: ThreadId;
15
- address: CellAddress;
16
- messages: CommentMessage[];
17
- resolved: boolean;
18
- /** Older history exists beyond `messages`. Omit when the window is the full thread. */
19
- hasMoreOlder?: boolean;
20
- /** Messages not in this window (older and/or collapsed preview middle). */
21
- hiddenCount?: number;
22
- /** Total messages in the thread when known. */
23
- messageCount?: number;
24
- };
25
- export type CellCommentSummary = {
26
- threadId: ThreadId;
27
- address: CellAddress;
28
- preview: string;
29
- author?: string;
30
- updatedAt?: string;
31
- resolved: boolean;
32
- messageCount: number;
33
- };
34
- /** Result of locating a commented row that is not in the current grid model. */
35
- export type CommentsLocateResult = {
36
- status: "ready";
37
- rowIndex?: number;
38
- } | {
39
- status: "missing";
40
- };
41
- export type CommentsCapabilities = {
42
- canView: boolean;
43
- canCreate: boolean;
44
- canReply: boolean;
45
- canEdit: boolean;
46
- canDelete: boolean;
47
- canResolve: boolean;
48
- };
49
- export type CommentsPersistEvent = {
50
- type: "add-message";
51
- threadId: ThreadId;
52
- address: CellAddress;
53
- message: CommentMessage;
54
- } | {
55
- type: "edit-message";
56
- threadId: ThreadId;
57
- address: CellAddress;
58
- message: CommentMessage;
59
- } | {
60
- type: "delete-message";
61
- threadId: ThreadId;
62
- address: CellAddress;
63
- messageId: string;
64
- } | {
65
- type: "delete-thread";
66
- threadId: ThreadId;
67
- address: CellAddress;
68
- } | {
69
- type: "resolve";
70
- threadId: ThreadId;
71
- address: CellAddress;
72
- resolved: boolean;
73
- };
74
- export type CommentsSummaryPageRequest = {
75
- cursor?: string;
76
- limit: number;
77
- query?: {
78
- resolved?: boolean;
79
- text?: string;
80
- };
81
- };
82
- export type CommentsSummaryPage = {
83
- items: readonly CellCommentSummary[];
84
- nextCursor?: string;
85
- };
86
- export type CommentsThreadPageRequest = {
87
- purpose: "preview" | "page";
88
- limit: number;
89
- /** Oldest message id currently loaded; return the page older than this. */
90
- before?: string;
91
- };
92
- export type DataTableCommentsConfig = {
93
- hasIndicator: (address: CellAddress) => boolean;
94
- getThreadId?: (address: CellAddress) => ThreadId;
95
- /**
96
- * Load the active thread. Optional `request` asks for a bounded window
97
- * (newest page, older page, or hover preview). Extra arg is ignored by
98
- * existing `(threadId, address) => thread` adapters; the host still windows
99
- * oversized payloads before render.
100
- */
101
- loadThread: (threadId: ThreadId, address: CellAddress, request?: CommentsThreadPageRequest) => Promise<CellCommentThread | undefined>;
102
- persist: (event: CommentsPersistEvent) => Promise<void>;
103
- getAuthor: () => string;
104
- getCapabilities?: (address: CellAddress) => CommentsCapabilities;
105
- getSummaries?: (request: CommentsSummaryPageRequest) => Promise<CommentsSummaryPage>;
106
- /**
107
- * Load a commented row that is not in the current grid model (SSRM block,
108
- * infinite row, or app-replaced `rowData` page). Identity stays `{ rowId, colId }`.
109
- * Return `{ status: "ready", rowIndex }` so the host can `paginationGoToPage`
110
- * from the **live** index, then `ensureIndexVisible`. Do not persist page numbers.
111
- * Omit when every commented row is already in client-side `rowData`.
112
- */
113
- locateRow?: (address: CellAddress) => Promise<CommentsLocateResult>;
114
- commentMode?: boolean;
115
- onCommentModeChange?: (on: boolean) => void;
116
- previewOnHover?: boolean;
117
- /**
118
- * Extra items after Edit/Delete on the message `…` menu.
119
- * Omit for the default menu. Does not replace Edit/Delete.
120
- */
121
- messageActions?: readonly CommentUiAction<CommentMessageActionContext>[];
122
- /**
123
- * Extra items after Delete thread on overlay and panel `…` menus.
124
- * Omit for the default menu.
125
- */
126
- threadActions?: readonly CommentUiAction<CommentThreadActionContext>[];
127
- /** Replace the author glyph. Overlay/panel only — never per cell. */
128
- renderAvatar?: (props: {
129
- author: string;
130
- }) => ReactNode;
131
- /** Replace message text rendering (markdown, links, …). */
132
- renderMessageBody?: (props: {
133
- message: CommentMessage;
134
- }) => ReactNode;
135
- /** Replace the reply box. Host still owns draft state and persist. */
136
- renderComposer?: (props: CommentComposerRenderProps) => ReactNode;
137
- /** Replace the message `…` menu. `items` is Edit/Delete plus `messageActions`. */
138
- renderMessageActions?: (props: {
139
- items: CommentMenuItem[];
140
- context: CommentMessageActionContext;
141
- }) => ReactNode;
142
- /** Replace the thread `…` menu. `items` is Delete thread plus `threadActions`. */
143
- renderThreadActions?: (props: {
144
- items: CommentMenuItem[];
145
- context: CommentThreadActionContext;
146
- }) => ReactNode;
147
- };
148
- export type CommentMenuItem = {
149
- id: string;
150
- label: string;
151
- disabled?: boolean;
152
- onSelect: () => void;
153
- };
154
- export type CommentUiAction<TContext> = {
155
- id: string;
156
- label: string;
157
- disabled?: boolean;
158
- onSelect: (context: TContext) => void;
159
- };
160
- export type CommentMessageActionContext = {
161
- address: CellAddress;
162
- threadId: ThreadId;
163
- resolved: boolean;
164
- message: CommentMessage;
165
- };
166
- export type CommentThreadActionContext = {
167
- address: CellAddress;
168
- threadId: ThreadId;
169
- resolved: boolean;
170
- };
171
- export type CommentComposerRenderProps = {
172
- value: string;
173
- onChange: (value: string) => void;
174
- onSave: () => void;
175
- disabled: boolean;
176
- saving: boolean;
177
- author: string;
178
- };
@@ -1,5 +0,0 @@
1
- export type { CellAddress, CellCommentSummary, CellCommentThread, CommentComposerRenderProps, CommentMenuItem, CommentMessage, CommentMessageActionContext, CommentThreadActionContext, CommentUiAction, CommentsCapabilities, CommentsLocateResult, CommentsPersistEvent, CommentsSummaryPage, CommentsSummaryPageRequest, CommentsThreadPageRequest, DataTableCommentsConfig, ThreadId, } from './comments.types';
2
- export { defaultGetThreadId, mintCommentMessageId, THREAD_ID_SEPARATOR } from './comments-identity';
3
- export { boundLoadedThread, commentsThreadPageRequest, selectCommentThreadWindow, } from './comments-window';
4
- export { COMMENTS_THREAD_PAGE_SIZE, COMMENTS_PANEL_PAGE_SIZE } from './comments-constants';
5
- export { CommentModeToggle, type CommentModeToggleProps } from './comment-mode-toggle';
@@ -1,15 +0,0 @@
1
- import { THREAD_ID_SEPARATOR as m, defaultGetThreadId as t, mintCommentMessageId as d } from "./comments-identity.js";
2
- import { boundLoadedThread as E, commentsThreadPageRequest as T, selectCommentThreadWindow as a } from "./comments-window.js";
3
- import { COMMENTS_PANEL_PAGE_SIZE as n, COMMENTS_THREAD_PAGE_SIZE as A } from "./comments-constants.js";
4
- import { CommentModeToggle as f } from "./comment-mode-toggle.js";
5
- export {
6
- n as COMMENTS_PANEL_PAGE_SIZE,
7
- A as COMMENTS_THREAD_PAGE_SIZE,
8
- f as CommentModeToggle,
9
- m as THREAD_ID_SEPARATOR,
10
- E as boundLoadedThread,
11
- T as commentsThreadPageRequest,
12
- t as defaultGetThreadId,
13
- d as mintCommentMessageId,
14
- a as selectCommentThreadWindow
15
- };