@manta-eu/react 0.11.0 → 0.13.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 (592) hide show
  1. package/README.md +59 -0
  2. package/dist/components/AppErrorBoundary.d.ts.map +1 -1
  3. package/dist/components/AppErrorBoundary.js +14 -11
  4. package/dist/components/AppErrorBoundary.js.map +1 -1
  5. package/dist/components/app-gate/AppGate.d.ts +8 -0
  6. package/dist/components/app-gate/AppGate.d.ts.map +1 -0
  7. package/dist/components/app-gate/AppGate.js +68 -0
  8. package/dist/components/app-gate/AppGate.js.map +1 -0
  9. package/dist/components/app-gate/AwaitingDatastoreStatus.d.ts +7 -0
  10. package/dist/components/app-gate/AwaitingDatastoreStatus.d.ts.map +1 -0
  11. package/dist/components/app-gate/AwaitingDatastoreStatus.js +19 -0
  12. package/dist/components/app-gate/AwaitingDatastoreStatus.js.map +1 -0
  13. package/dist/components/app-gate/EnterDatastoreRoute.d.ts +2 -0
  14. package/dist/components/app-gate/EnterDatastoreRoute.d.ts.map +1 -0
  15. package/dist/components/app-gate/EnterDatastoreRoute.js +25 -0
  16. package/dist/components/app-gate/EnterDatastoreRoute.js.map +1 -0
  17. package/dist/components/app-gate/ErrorRoute.d.ts +2 -0
  18. package/dist/components/app-gate/ErrorRoute.d.ts.map +1 -0
  19. package/dist/components/app-gate/ErrorRoute.js +27 -0
  20. package/dist/components/app-gate/ErrorRoute.js.map +1 -0
  21. package/dist/components/app-gate/FailureAlert.d.ts +5 -0
  22. package/dist/components/app-gate/FailureAlert.d.ts.map +1 -0
  23. package/dist/components/app-gate/FailureAlert.js +9 -0
  24. package/dist/components/app-gate/FailureAlert.js.map +1 -0
  25. package/dist/components/app-gate/NoDatastoreAccess.d.ts +8 -0
  26. package/dist/components/app-gate/NoDatastoreAccess.d.ts.map +1 -0
  27. package/dist/components/app-gate/NoDatastoreAccess.js +9 -0
  28. package/dist/components/app-gate/NoDatastoreAccess.js.map +1 -0
  29. package/dist/components/app-gate/NotFoundRoute.d.ts +2 -0
  30. package/dist/components/app-gate/NotFoundRoute.d.ts.map +1 -0
  31. package/dist/components/app-gate/NotFoundRoute.js +9 -0
  32. package/dist/components/app-gate/NotFoundRoute.js.map +1 -0
  33. package/dist/components/app-gate/PendingInvitations.d.ts +5 -0
  34. package/dist/components/app-gate/PendingInvitations.d.ts.map +1 -0
  35. package/dist/components/app-gate/PendingInvitations.js +58 -0
  36. package/dist/components/app-gate/PendingInvitations.js.map +1 -0
  37. package/dist/components/app-gate/ServiceError.d.ts +8 -0
  38. package/dist/components/app-gate/ServiceError.d.ts.map +1 -0
  39. package/dist/components/app-gate/ServiceError.js +10 -0
  40. package/dist/components/app-gate/ServiceError.js.map +1 -0
  41. package/dist/components/app-gate/index.d.ts +3 -0
  42. package/dist/components/app-gate/index.d.ts.map +1 -0
  43. package/dist/components/app-gate/index.js +3 -0
  44. package/dist/components/app-gate/index.js.map +1 -0
  45. package/dist/components/app-gate/sdk-route-elements.d.ts +23 -0
  46. package/dist/components/app-gate/sdk-route-elements.d.ts.map +1 -0
  47. package/dist/components/app-gate/sdk-route-elements.js +35 -0
  48. package/dist/components/app-gate/sdk-route-elements.js.map +1 -0
  49. package/dist/components/app-shell/AppShell.d.ts +7 -0
  50. package/dist/components/app-shell/AppShell.d.ts.map +1 -0
  51. package/dist/components/app-shell/AppShell.js +10 -0
  52. package/dist/components/app-shell/AppShell.js.map +1 -0
  53. package/dist/components/app-shell/AppShellRoutes.d.ts +9 -0
  54. package/dist/components/app-shell/AppShellRoutes.d.ts.map +1 -0
  55. package/dist/components/app-shell/AppShellRoutes.js +20 -0
  56. package/dist/components/app-shell/AppShellRoutes.js.map +1 -0
  57. package/dist/components/app-shell/GroupDatastores.d.ts +8 -0
  58. package/dist/components/app-shell/GroupDatastores.d.ts.map +1 -0
  59. package/dist/components/app-shell/GroupDatastores.js +15 -0
  60. package/dist/components/app-shell/GroupDatastores.js.map +1 -0
  61. package/dist/components/app-shell/GroupRoute.d.ts +2 -0
  62. package/dist/components/app-shell/GroupRoute.d.ts.map +1 -0
  63. package/dist/components/app-shell/GroupRoute.js +22 -0
  64. package/dist/components/app-shell/GroupRoute.js.map +1 -0
  65. package/dist/components/app-shell/index.d.ts +3 -0
  66. package/dist/components/app-shell/index.d.ts.map +1 -0
  67. package/dist/components/app-shell/index.js +3 -0
  68. package/dist/components/app-shell/index.js.map +1 -0
  69. package/dist/components/authenticated-chat/index.d.ts +1 -2
  70. package/dist/components/authenticated-chat/index.d.ts.map +1 -1
  71. package/dist/components/authenticated-chat/index.js +1 -12
  72. package/dist/components/authenticated-chat/index.js.map +1 -1
  73. package/dist/components/chat-view/Chat.d.ts +2 -1
  74. package/dist/components/chat-view/Chat.d.ts.map +1 -1
  75. package/dist/components/chat-view/Chat.js +3 -2
  76. package/dist/components/chat-view/Chat.js.map +1 -1
  77. package/dist/components/chat-view/MessageItem.d.ts.map +1 -1
  78. package/dist/components/chat-view/MessageItem.js +4 -2
  79. package/dist/components/chat-view/MessageItem.js.map +1 -1
  80. package/dist/components/chat-view/tool-part-rendering.d.ts +1 -0
  81. package/dist/components/chat-view/tool-part-rendering.d.ts.map +1 -1
  82. package/dist/components/chat-view/tool-part-rendering.js +8 -1
  83. package/dist/components/chat-view/tool-part-rendering.js.map +1 -1
  84. package/dist/components/chip/index.d.ts +1 -0
  85. package/dist/components/chip/index.d.ts.map +1 -1
  86. package/dist/components/chip/index.js +2 -1
  87. package/dist/components/chip/index.js.map +1 -1
  88. package/dist/components/embedded-chat/index.d.ts +1 -1
  89. package/dist/components/embedded-chat/index.d.ts.map +1 -1
  90. package/dist/components/embedded-chat/index.js +1 -1
  91. package/dist/components/embedded-chat/index.js.map +1 -1
  92. package/dist/components/input/input-date-time.d.ts +6 -0
  93. package/dist/components/input/input-date-time.d.ts.map +1 -1
  94. package/dist/components/input/input-date-time.js +2 -1
  95. package/dist/components/input/input-date-time.js.map +1 -1
  96. package/dist/components/input/input-date.d.ts +22 -0
  97. package/dist/components/input/input-date.d.ts.map +1 -1
  98. package/dist/components/input/input-date.js +28 -14
  99. package/dist/components/input/input-date.js.map +1 -1
  100. package/dist/components/input/input-time.d.ts +9 -0
  101. package/dist/components/input/input-time.d.ts.map +1 -1
  102. package/dist/components/input/input-time.js +29 -18
  103. package/dist/components/input/input-time.js.map +1 -1
  104. package/dist/components/layouts/RouteLayout.d.ts +0 -9
  105. package/dist/components/layouts/RouteLayout.d.ts.map +1 -1
  106. package/dist/components/layouts/RouteLayout.js +7 -4
  107. package/dist/components/layouts/RouteLayout.js.map +1 -1
  108. package/dist/components/layouts/Sidebar.d.ts +1 -8
  109. package/dist/components/layouts/Sidebar.d.ts.map +1 -1
  110. package/dist/components/layouts/Sidebar.js +7 -14
  111. package/dist/components/layouts/Sidebar.js.map +1 -1
  112. package/dist/components/plan-limits/PlanLimitsDialog.d.ts +20 -0
  113. package/dist/components/plan-limits/PlanLimitsDialog.d.ts.map +1 -0
  114. package/dist/components/plan-limits/PlanLimitsDialog.js +109 -0
  115. package/dist/components/plan-limits/PlanLimitsDialog.js.map +1 -0
  116. package/dist/components/plan-limits/index.d.ts +4 -0
  117. package/dist/components/plan-limits/index.d.ts.map +1 -0
  118. package/dist/components/plan-limits/index.js +2 -0
  119. package/dist/components/plan-limits/index.js.map +1 -0
  120. package/dist/components/plan-limits/plan-limits-client.d.ts +15 -0
  121. package/dist/components/plan-limits/plan-limits-client.d.ts.map +1 -0
  122. package/dist/components/plan-limits/plan-limits-client.js +44 -0
  123. package/dist/components/plan-limits/plan-limits-client.js.map +1 -0
  124. package/dist/components/plan-limits/plan-limits-model.d.ts +66 -0
  125. package/dist/components/plan-limits/plan-limits-model.d.ts.map +1 -0
  126. package/dist/components/plan-limits/plan-limits-model.js +123 -0
  127. package/dist/components/plan-limits/plan-limits-model.js.map +1 -0
  128. package/dist/components/plan-limits/plan-limits-save.d.ts +31 -0
  129. package/dist/components/plan-limits/plan-limits-save.d.ts.map +1 -0
  130. package/dist/components/plan-limits/plan-limits-save.js +43 -0
  131. package/dist/components/plan-limits/plan-limits-save.js.map +1 -0
  132. package/dist/components/planning/PlanLimitsAction.d.ts +6 -0
  133. package/dist/components/planning/PlanLimitsAction.d.ts.map +1 -0
  134. package/dist/components/planning/PlanLimitsAction.js +19 -0
  135. package/dist/components/planning/PlanLimitsAction.js.map +1 -0
  136. package/dist/components/slider/index.d.ts.map +1 -1
  137. package/dist/components/slider/index.js +2 -1
  138. package/dist/components/slider/index.js.map +1 -1
  139. package/dist/datastore-picker/datastore-picker-rows.d.ts +7 -0
  140. package/dist/datastore-picker/datastore-picker-rows.d.ts.map +1 -1
  141. package/dist/datastore-picker/datastore-picker-rows.js +26 -22
  142. package/dist/datastore-picker/datastore-picker-rows.js.map +1 -1
  143. package/dist/globals.css +85 -2
  144. package/dist/hooks/use-action-plans-list.d.ts +3 -0
  145. package/dist/hooks/use-action-plans-list.d.ts.map +1 -1
  146. package/dist/hooks/use-action-plans-list.js +8 -9
  147. package/dist/hooks/use-action-plans-list.js.map +1 -1
  148. package/dist/hooks/use-activity-feed.d.ts +10 -1
  149. package/dist/hooks/use-activity-feed.d.ts.map +1 -1
  150. package/dist/hooks/use-activity-feed.js +9 -11
  151. package/dist/hooks/use-activity-feed.js.map +1 -1
  152. package/dist/hooks/use-entity.d.ts +4 -3
  153. package/dist/hooks/use-entity.d.ts.map +1 -1
  154. package/dist/hooks/use-entity.js +4 -4
  155. package/dist/hooks/use-entity.js.map +1 -1
  156. package/dist/hooks/use-manual-actions.d.ts +1 -1
  157. package/dist/hooks/use-manual-actions.d.ts.map +1 -1
  158. package/dist/hooks/use-manual-actions.js +5 -5
  159. package/dist/hooks/use-manual-actions.js.map +1 -1
  160. package/dist/hooks/use-unsaved-changes-warning.d.ts +2 -0
  161. package/dist/hooks/use-unsaved-changes-warning.d.ts.map +1 -0
  162. package/dist/hooks/use-unsaved-changes-warning.js +13 -0
  163. package/dist/hooks/use-unsaved-changes-warning.js.map +1 -0
  164. package/dist/hooks/useAuth.d.ts.map +1 -1
  165. package/dist/hooks/useAuth.js +4 -3
  166. package/dist/hooks/useAuth.js.map +1 -1
  167. package/dist/hooks/useChatPanelSync.d.ts.map +1 -1
  168. package/dist/hooks/useChatPanelSync.js +2 -3
  169. package/dist/hooks/useChatPanelSync.js.map +1 -1
  170. package/dist/hooks/useDatastoreSelection.d.ts.map +1 -1
  171. package/dist/hooks/useDatastoreSelection.js +11 -4
  172. package/dist/hooks/useDatastoreSelection.js.map +1 -1
  173. package/dist/hooks/useExecuteAction.d.ts +1 -0
  174. package/dist/hooks/useExecuteAction.d.ts.map +1 -1
  175. package/dist/hooks/useExecuteAction.js.map +1 -1
  176. package/dist/hooks/useLoginRedirect.d.ts +6 -0
  177. package/dist/hooks/useLoginRedirect.d.ts.map +1 -0
  178. package/dist/hooks/useLoginRedirect.js +51 -0
  179. package/dist/hooks/useLoginRedirect.js.map +1 -0
  180. package/dist/hooks/usePlanLimits.d.ts +18 -0
  181. package/dist/hooks/usePlanLimits.d.ts.map +1 -0
  182. package/dist/hooks/usePlanLimits.js +56 -0
  183. package/dist/hooks/usePlanLimits.js.map +1 -0
  184. package/dist/ldo-ui.d.ts +1 -1
  185. package/dist/ldo-ui.d.ts.map +1 -1
  186. package/dist/ldo-ui.js.map +1 -1
  187. package/dist/lib/app-tools.d.ts +18 -0
  188. package/dist/lib/app-tools.d.ts.map +1 -0
  189. package/dist/lib/app-tools.js +42 -0
  190. package/dist/lib/app-tools.js.map +1 -0
  191. package/dist/lib/chat-types.d.ts +3 -0
  192. package/dist/lib/chat-types.d.ts.map +1 -1
  193. package/dist/lib/chat-types.js.map +1 -1
  194. package/dist/lib/datastore-route-table.d.ts +3 -0
  195. package/dist/lib/datastore-route-table.d.ts.map +1 -1
  196. package/dist/lib/datastore-route-table.js +6 -0
  197. package/dist/lib/datastore-route-table.js.map +1 -1
  198. package/dist/lib/graphql-error.d.ts +2 -0
  199. package/dist/lib/graphql-error.d.ts.map +1 -0
  200. package/dist/lib/graphql-error.js +7 -0
  201. package/dist/lib/graphql-error.js.map +1 -0
  202. package/dist/lib/update-notice.d.ts +2 -1
  203. package/dist/lib/update-notice.d.ts.map +1 -1
  204. package/dist/lib/update-notice.js +8 -2
  205. package/dist/lib/update-notice.js.map +1 -1
  206. package/dist/providers/ActiveChatProvider.d.ts +2 -0
  207. package/dist/providers/ActiveChatProvider.d.ts.map +1 -1
  208. package/dist/providers/ActiveChatProvider.js +6 -3
  209. package/dist/providers/ActiveChatProvider.js.map +1 -1
  210. package/dist/providers/ActiveDatastoreProvider.d.ts +12 -0
  211. package/dist/providers/ActiveDatastoreProvider.d.ts.map +1 -1
  212. package/dist/providers/ActiveDatastoreProvider.js +114 -11
  213. package/dist/providers/ActiveDatastoreProvider.js.map +1 -1
  214. package/dist/providers/AuthContext.d.ts +1 -0
  215. package/dist/providers/AuthContext.d.ts.map +1 -1
  216. package/dist/providers/AuthContext.js.map +1 -1
  217. package/dist/providers/KnowledgeGraphStateContext.d.ts +2 -2
  218. package/dist/providers/KnowledgeGraphStateContext.d.ts.map +1 -1
  219. package/dist/providers/KnowledgeGraphStateProvider.d.ts.map +1 -1
  220. package/dist/providers/KnowledgeGraphStateProvider.js +8 -49
  221. package/dist/providers/KnowledgeGraphStateProvider.js.map +1 -1
  222. package/dist/providers/MantaClientProvider.d.ts.map +1 -1
  223. package/dist/providers/MantaClientProvider.js +3 -3
  224. package/dist/providers/MantaClientProvider.js.map +1 -1
  225. package/dist/providers/index.d.ts +3 -1
  226. package/dist/providers/index.d.ts.map +1 -1
  227. package/dist/providers/index.js +2 -2
  228. package/dist/providers/index.js.map +1 -1
  229. package/dist/routes/activity/detail/ActivityDetailRoute.d.ts.map +1 -1
  230. package/dist/routes/activity/detail/ActivityDetailRoute.js +1 -3
  231. package/dist/routes/activity/detail/ActivityDetailRoute.js.map +1 -1
  232. package/dist/routes/activity/index.d.ts.map +1 -1
  233. package/dist/routes/activity/index.js +1 -3
  234. package/dist/routes/activity/index.js.map +1 -1
  235. package/dist/routes/chat/index.d.ts +2 -21
  236. package/dist/routes/chat/index.d.ts.map +1 -1
  237. package/dist/routes/chat/index.js +4 -2
  238. package/dist/routes/chat/index.js.map +1 -1
  239. package/dist/routes/data-collection/index.d.ts.map +1 -1
  240. package/dist/routes/data-collection/index.js +1 -3
  241. package/dist/routes/data-collection/index.js.map +1 -1
  242. package/dist/routes/data-explorer/components/DataExplorerLayout.d.ts.map +1 -1
  243. package/dist/routes/data-explorer/components/DataExplorerLayout.js +1 -3
  244. package/dist/routes/data-explorer/components/DataExplorerLayout.js.map +1 -1
  245. package/dist/routes/data-explorer/components/class-detail/UsedByRules.js +2 -2
  246. package/dist/routes/data-explorer/components/class-detail/UsedByRules.js.map +1 -1
  247. package/dist/routes/datastores/index.d.ts.map +1 -1
  248. package/dist/routes/datastores/index.js +2 -2
  249. package/dist/routes/datastores/index.js.map +1 -1
  250. package/dist/routes/explain/index.d.ts.map +1 -1
  251. package/dist/routes/explain/index.js +1 -3
  252. package/dist/routes/explain/index.js.map +1 -1
  253. package/dist/routes/integrations/components/connect-forms/DashConnectForm.d.ts.map +1 -1
  254. package/dist/routes/integrations/components/connect-forms/DashConnectForm.js +0 -1
  255. package/dist/routes/integrations/components/connect-forms/DashConnectForm.js.map +1 -1
  256. package/dist/routes/integrations/components/connect-forms/GoogleAdsConnectForm.d.ts.map +1 -1
  257. package/dist/routes/integrations/components/connect-forms/GoogleAdsConnectForm.js +0 -1
  258. package/dist/routes/integrations/components/connect-forms/GoogleAdsConnectForm.js.map +1 -1
  259. package/dist/routes/integrations/components/connect-forms/GoogleAnalyticsConnectForm.d.ts.map +1 -1
  260. package/dist/routes/integrations/components/connect-forms/GoogleAnalyticsConnectForm.js +0 -1
  261. package/dist/routes/integrations/components/connect-forms/GoogleAnalyticsConnectForm.js.map +1 -1
  262. package/dist/routes/integrations/components/connect-forms/GoogleMerchantCenterConnectForm.d.ts.map +1 -1
  263. package/dist/routes/integrations/components/connect-forms/GoogleMerchantCenterConnectForm.js +0 -1
  264. package/dist/routes/integrations/components/connect-forms/GoogleMerchantCenterConnectForm.js.map +1 -1
  265. package/dist/routes/integrations/components/connect-forms/InferalCredentialConnectForm.d.ts +0 -1
  266. package/dist/routes/integrations/components/connect-forms/InferalCredentialConnectForm.d.ts.map +1 -1
  267. package/dist/routes/integrations/components/connect-forms/InferalCredentialConnectForm.js +3 -2
  268. package/dist/routes/integrations/components/connect-forms/InferalCredentialConnectForm.js.map +1 -1
  269. package/dist/routes/integrations/components/connect-forms/KlaviyoConnectForm.d.ts.map +1 -1
  270. package/dist/routes/integrations/components/connect-forms/KlaviyoConnectForm.js +0 -1
  271. package/dist/routes/integrations/components/connect-forms/KlaviyoConnectForm.js.map +1 -1
  272. package/dist/routes/integrations/components/connect-forms/MicrosoftAdsConnectForm.d.ts.map +1 -1
  273. package/dist/routes/integrations/components/connect-forms/MicrosoftAdsConnectForm.js +0 -1
  274. package/dist/routes/integrations/components/connect-forms/MicrosoftAdsConnectForm.js.map +1 -1
  275. package/dist/routes/integrations/components/connect-forms/OAuthSetupConnectForm.d.ts +0 -1
  276. package/dist/routes/integrations/components/connect-forms/OAuthSetupConnectForm.d.ts.map +1 -1
  277. package/dist/routes/integrations/components/connect-forms/OAuthSetupConnectForm.js +4 -3
  278. package/dist/routes/integrations/components/connect-forms/OAuthSetupConnectForm.js.map +1 -1
  279. package/dist/routes/integrations/components/connect-forms/TriplewhaleConnectForm.d.ts.map +1 -1
  280. package/dist/routes/integrations/components/connect-forms/TriplewhaleConnectForm.js +0 -1
  281. package/dist/routes/integrations/components/connect-forms/TriplewhaleConnectForm.js.map +1 -1
  282. package/dist/routes/integrations/components/connect-forms/WoocommerceConnectForm.d.ts.map +1 -1
  283. package/dist/routes/integrations/components/connect-forms/WoocommerceConnectForm.js +0 -1
  284. package/dist/routes/integrations/components/connect-forms/WoocommerceConnectForm.js.map +1 -1
  285. package/dist/routes/integrations/types.d.ts +2 -1
  286. package/dist/routes/integrations/types.d.ts.map +1 -1
  287. package/dist/routes/integrations/types.js +16 -0
  288. package/dist/routes/integrations/types.js.map +1 -1
  289. package/dist/routes/memories/components/DateValueInput.d.ts +16 -0
  290. package/dist/routes/memories/components/DateValueInput.d.ts.map +1 -0
  291. package/dist/routes/memories/components/DateValueInput.js +35 -0
  292. package/dist/routes/memories/components/DateValueInput.js.map +1 -0
  293. package/dist/routes/memories/components/EntityValuePicker.d.ts +11 -0
  294. package/dist/routes/memories/components/EntityValuePicker.d.ts.map +1 -0
  295. package/dist/routes/memories/components/EntityValuePicker.js +61 -0
  296. package/dist/routes/memories/components/EntityValuePicker.js.map +1 -0
  297. package/dist/routes/memories/components/FieldLabel.d.ts +12 -0
  298. package/dist/routes/memories/components/FieldLabel.d.ts.map +1 -0
  299. package/dist/routes/memories/components/FieldLabel.js +12 -0
  300. package/dist/routes/memories/components/FieldLabel.js.map +1 -0
  301. package/dist/routes/memories/components/ImportanceSlider.d.ts +2 -0
  302. package/dist/routes/memories/components/ImportanceSlider.d.ts.map +1 -1
  303. package/dist/routes/memories/components/ImportanceSlider.js +4 -1
  304. package/dist/routes/memories/components/ImportanceSlider.js.map +1 -1
  305. package/dist/routes/memories/components/MemoriesFilters.d.ts +2 -2
  306. package/dist/routes/memories/components/MemoriesFilters.d.ts.map +1 -1
  307. package/dist/routes/memories/components/MemoriesFilters.js.map +1 -1
  308. package/dist/routes/memories/components/MemoriesPanel.d.ts.map +1 -1
  309. package/dist/routes/memories/components/MemoriesPanel.js +4 -0
  310. package/dist/routes/memories/components/MemoriesPanel.js.map +1 -1
  311. package/dist/routes/memories/components/MemoriesTabPanel.d.ts +2 -2
  312. package/dist/routes/memories/components/MemoriesTabPanel.d.ts.map +1 -1
  313. package/dist/routes/memories/components/MemoryActions.d.ts +2 -0
  314. package/dist/routes/memories/components/MemoryActions.d.ts.map +1 -1
  315. package/dist/routes/memories/components/MemoryActions.js +3 -3
  316. package/dist/routes/memories/components/MemoryActions.js.map +1 -1
  317. package/dist/routes/memories/components/MemoryFields.d.ts +15 -3
  318. package/dist/routes/memories/components/MemoryFields.d.ts.map +1 -1
  319. package/dist/routes/memories/components/MemoryFields.js +34 -5
  320. package/dist/routes/memories/components/MemoryFields.js.map +1 -1
  321. package/dist/routes/memories/components/MemoryFormDialog.d.ts +6 -3
  322. package/dist/routes/memories/components/MemoryFormDialog.d.ts.map +1 -1
  323. package/dist/routes/memories/components/MemoryFormDialog.js +105 -59
  324. package/dist/routes/memories/components/MemoryFormDialog.js.map +1 -1
  325. package/dist/routes/memories/components/MemoryPropertyFields.d.ts +10 -0
  326. package/dist/routes/memories/components/MemoryPropertyFields.d.ts.map +1 -0
  327. package/dist/routes/memories/components/MemoryPropertyFields.js +67 -0
  328. package/dist/routes/memories/components/MemoryPropertyFields.js.map +1 -0
  329. package/dist/routes/memories/components/RuleDraftDialog.d.ts +7 -0
  330. package/dist/routes/memories/components/RuleDraftDialog.d.ts.map +1 -0
  331. package/dist/routes/memories/components/RuleDraftDialog.js +20 -0
  332. package/dist/routes/memories/components/RuleDraftDialog.js.map +1 -0
  333. package/dist/routes/memories/components/SchemasTab.d.ts +17 -2
  334. package/dist/routes/memories/components/SchemasTab.d.ts.map +1 -1
  335. package/dist/routes/memories/components/SchemasTab.js +146 -28
  336. package/dist/routes/memories/components/SchemasTab.js.map +1 -1
  337. package/dist/routes/memories/components/badges.d.ts +7 -0
  338. package/dist/routes/memories/components/badges.d.ts.map +1 -1
  339. package/dist/routes/memories/components/badges.js +11 -3
  340. package/dist/routes/memories/components/badges.js.map +1 -1
  341. package/dist/routes/memories/hooks/useMemoryColumns.d.ts +4 -2
  342. package/dist/routes/memories/hooks/useMemoryColumns.d.ts.map +1 -1
  343. package/dist/routes/memories/hooks/useMemoryColumns.js +31 -15
  344. package/dist/routes/memories/hooks/useMemoryColumns.js.map +1 -1
  345. package/dist/routes/memories/index.d.ts +2 -1
  346. package/dist/routes/memories/index.d.ts.map +1 -1
  347. package/dist/routes/memories/index.js +72 -30
  348. package/dist/routes/memories/index.js.map +1 -1
  349. package/dist/routes/memories/memory-mutation-input.d.ts.map +1 -1
  350. package/dist/routes/memories/memory-mutation-input.js +5 -2
  351. package/dist/routes/memories/memory-mutation-input.js.map +1 -1
  352. package/dist/routes/memories/memory-property-values.d.ts +13 -0
  353. package/dist/routes/memories/memory-property-values.d.ts.map +1 -0
  354. package/dist/routes/memories/memory-property-values.js +40 -0
  355. package/dist/routes/memories/memory-property-values.js.map +1 -0
  356. package/dist/routes/memories/schemas/AllowedValuesField.d.ts +14 -0
  357. package/dist/routes/memories/schemas/AllowedValuesField.d.ts.map +1 -0
  358. package/dist/routes/memories/schemas/AllowedValuesField.js +64 -0
  359. package/dist/routes/memories/schemas/AllowedValuesField.js.map +1 -0
  360. package/dist/routes/memories/schemas/MemorySchemaPage.d.ts +127 -0
  361. package/dist/routes/memories/schemas/MemorySchemaPage.d.ts.map +1 -0
  362. package/dist/routes/memories/schemas/MemorySchemaPage.js +285 -0
  363. package/dist/routes/memories/schemas/MemorySchemaPage.js.map +1 -0
  364. package/dist/routes/memories/schemas/SchemaChangeReviewDialog.d.ts +20 -0
  365. package/dist/routes/memories/schemas/SchemaChangeReviewDialog.d.ts.map +1 -0
  366. package/dist/routes/memories/schemas/SchemaChangeReviewDialog.js +54 -0
  367. package/dist/routes/memories/schemas/SchemaChangeReviewDialog.js.map +1 -0
  368. package/dist/routes/memories/schemas/SchemaConfirmDialog.d.ts +15 -0
  369. package/dist/routes/memories/schemas/SchemaConfirmDialog.d.ts.map +1 -0
  370. package/dist/routes/memories/schemas/SchemaConfirmDialog.js +8 -0
  371. package/dist/routes/memories/schemas/SchemaConfirmDialog.js.map +1 -0
  372. package/dist/routes/memories/schemas/SchemaDetailPage.d.ts +15 -0
  373. package/dist/routes/memories/schemas/SchemaDetailPage.d.ts.map +1 -0
  374. package/dist/routes/memories/schemas/SchemaDetailPage.js +74 -0
  375. package/dist/routes/memories/schemas/SchemaDetailPage.js.map +1 -0
  376. package/dist/routes/memories/schemas/SchemaEditorForm.d.ts +10 -0
  377. package/dist/routes/memories/schemas/SchemaEditorForm.d.ts.map +1 -0
  378. package/dist/routes/memories/schemas/SchemaEditorForm.js +242 -0
  379. package/dist/routes/memories/schemas/SchemaEditorForm.js.map +1 -0
  380. package/dist/routes/memories/schemas/SchemaTemplatesDialog.d.ts +13 -0
  381. package/dist/routes/memories/schemas/SchemaTemplatesDialog.d.ts.map +1 -0
  382. package/dist/routes/memories/schemas/SchemaTemplatesDialog.js +13 -0
  383. package/dist/routes/memories/schemas/SchemaTemplatesDialog.js.map +1 -0
  384. package/dist/routes/memories/schemas/ValueTypeSelect.d.ts +12 -0
  385. package/dist/routes/memories/schemas/ValueTypeSelect.d.ts.map +1 -0
  386. package/dist/routes/memories/schemas/ValueTypeSelect.js +10 -0
  387. package/dist/routes/memories/schemas/ValueTypeSelect.js.map +1 -0
  388. package/dist/routes/memories/schemas/schema-form.d.ts +72 -0
  389. package/dist/routes/memories/schemas/schema-form.d.ts.map +1 -0
  390. package/dist/routes/memories/schemas/schema-form.js +279 -0
  391. package/dist/routes/memories/schemas/schema-form.js.map +1 -0
  392. package/dist/routes/memories/schemas/schema-impact.d.ts +13 -0
  393. package/dist/routes/memories/schemas/schema-impact.d.ts.map +1 -0
  394. package/dist/routes/memories/schemas/schema-impact.js +40 -0
  395. package/dist/routes/memories/schemas/schema-impact.js.map +1 -0
  396. package/dist/routes/memories/schemas/schema-route.d.ts +18 -0
  397. package/dist/routes/memories/schemas/schema-route.d.ts.map +1 -0
  398. package/dist/routes/memories/schemas/schema-route.js +21 -0
  399. package/dist/routes/memories/schemas/schema-route.js.map +1 -0
  400. package/dist/routes/memories/schemas/schema-rule-context.d.ts +17 -0
  401. package/dist/routes/memories/schemas/schema-rule-context.d.ts.map +1 -0
  402. package/dist/routes/memories/schemas/schema-rule-context.js +83 -0
  403. package/dist/routes/memories/schemas/schema-rule-context.js.map +1 -0
  404. package/dist/routes/memories/schemas/schema-table.d.ts +11 -0
  405. package/dist/routes/memories/schemas/schema-table.d.ts.map +1 -0
  406. package/dist/routes/memories/schemas/schema-table.js +34 -0
  407. package/dist/routes/memories/schemas/schema-table.js.map +1 -0
  408. package/dist/routes/memories/schemas/useMemorySchemaMutations.d.ts +32 -0
  409. package/dist/routes/memories/schemas/useMemorySchemaMutations.d.ts.map +1 -0
  410. package/dist/routes/memories/schemas/useMemorySchemaMutations.js +31 -0
  411. package/dist/routes/memories/schemas/useMemorySchemaMutations.js.map +1 -0
  412. package/dist/routes/memories/schemas/useSchemaChangeReview.d.ts +51 -0
  413. package/dist/routes/memories/schemas/useSchemaChangeReview.d.ts.map +1 -0
  414. package/dist/routes/memories/schemas/useSchemaChangeReview.js +175 -0
  415. package/dist/routes/memories/schemas/useSchemaChangeReview.js.map +1 -0
  416. package/dist/routes/memories/schemas/useSchemaLifecycle.d.ts +46 -0
  417. package/dist/routes/memories/schemas/useSchemaLifecycle.d.ts.map +1 -0
  418. package/dist/routes/memories/schemas/useSchemaLifecycle.js +93 -0
  419. package/dist/routes/memories/schemas/useSchemaLifecycle.js.map +1 -0
  420. package/dist/routes/memories/schemas/useSchemasTab.d.ts +18 -0
  421. package/dist/routes/memories/schemas/useSchemasTab.d.ts.map +1 -0
  422. package/dist/routes/memories/schemas/useSchemasTab.js +92 -0
  423. package/dist/routes/memories/schemas/useSchemasTab.js.map +1 -0
  424. package/dist/routes/plans/index.d.ts.map +1 -1
  425. package/dist/routes/plans/index.js +2 -2
  426. package/dist/routes/plans/index.js.map +1 -1
  427. package/dist/routes/rules/components/CreateRuleChatModal.d.ts +7 -1
  428. package/dist/routes/rules/components/CreateRuleChatModal.d.ts.map +1 -1
  429. package/dist/routes/rules/components/CreateRuleChatModal.js +9 -4
  430. package/dist/routes/rules/components/CreateRuleChatModal.js.map +1 -1
  431. package/dist/routes/rules/components/RuleValueControls.d.ts.map +1 -1
  432. package/dist/routes/rules/components/RuleValueControls.js +3 -24
  433. package/dist/routes/rules/components/RuleValueControls.js.map +1 -1
  434. package/dist/routes/rules/components/rule-value-input.d.ts +11 -0
  435. package/dist/routes/rules/components/rule-value-input.d.ts.map +1 -0
  436. package/dist/routes/rules/components/rule-value-input.js +24 -0
  437. package/dist/routes/rules/components/rule-value-input.js.map +1 -0
  438. package/dist/routes/rules/components/rules.utils.d.ts +5 -0
  439. package/dist/routes/rules/components/rules.utils.d.ts.map +1 -1
  440. package/dist/routes/rules/components/rules.utils.js +18 -3
  441. package/dist/routes/rules/components/rules.utils.js.map +1 -1
  442. package/dist/routes/rules/pages.d.ts +1 -1
  443. package/dist/routes/rules/pages.d.ts.map +1 -1
  444. package/dist/routes/rules/pages.js +1 -1
  445. package/dist/routes/rules/pages.js.map +1 -1
  446. package/dist/shared/graph-derived-queries.d.ts.map +1 -1
  447. package/dist/shared/graph-derived-queries.js +4 -1
  448. package/dist/shared/graph-derived-queries.js.map +1 -1
  449. package/dist/worker/index.d.ts +22 -0
  450. package/dist/worker/index.d.ts.map +1 -0
  451. package/dist/worker/index.js +110 -0
  452. package/dist/worker/index.js.map +1 -0
  453. package/dist/worker/policy.d.ts +21 -0
  454. package/dist/worker/policy.d.ts.map +1 -0
  455. package/dist/worker/policy.js +42 -0
  456. package/dist/worker/policy.js.map +1 -0
  457. package/dist/worker/proxy.d.ts +14 -0
  458. package/dist/worker/proxy.d.ts.map +1 -0
  459. package/dist/worker/proxy.js +58 -0
  460. package/dist/worker/proxy.js.map +1 -0
  461. package/dist/worker/session.d.ts +24 -0
  462. package/dist/worker/session.d.ts.map +1 -0
  463. package/dist/worker/session.js +72 -0
  464. package/dist/worker/session.js.map +1 -0
  465. package/package.json +52 -7
  466. package/src/app-subpaths.json +9 -1
  467. package/src/components/AppErrorBoundary.tsx +14 -11
  468. package/src/components/app-gate/AppGate.tsx +122 -0
  469. package/src/components/app-gate/AwaitingDatastoreStatus.tsx +35 -0
  470. package/src/components/app-gate/EnterDatastoreRoute.tsx +30 -0
  471. package/src/components/app-gate/ErrorRoute.tsx +43 -0
  472. package/src/components/app-gate/FailureAlert.tsx +15 -0
  473. package/src/components/app-gate/NoDatastoreAccess.tsx +26 -0
  474. package/src/components/app-gate/NotFoundRoute.tsx +20 -0
  475. package/src/components/app-gate/PendingInvitations.tsx +134 -0
  476. package/src/components/app-gate/ServiceError.tsx +27 -0
  477. package/src/components/app-gate/index.ts +2 -0
  478. package/src/components/app-gate/sdk-route-elements.tsx +46 -0
  479. package/src/components/app-shell/AppShell.tsx +22 -0
  480. package/src/components/app-shell/AppShellRoutes.tsx +34 -0
  481. package/src/components/app-shell/GroupDatastores.tsx +28 -0
  482. package/src/components/app-shell/GroupRoute.tsx +34 -0
  483. package/src/components/app-shell/index.ts +2 -0
  484. package/src/components/authenticated-chat/index.tsx +1 -34
  485. package/src/components/chat-view/Chat.tsx +9 -3
  486. package/src/components/chat-view/MessageItem.tsx +10 -2
  487. package/src/components/chat-view/tool-part-rendering.ts +10 -1
  488. package/src/components/chip/index.tsx +8 -1
  489. package/src/components/embedded-chat/index.tsx +2 -1
  490. package/src/components/input/input-date-time.tsx +10 -3
  491. package/src/components/input/input-date.tsx +93 -21
  492. package/src/components/input/input-time.tsx +59 -26
  493. package/src/components/layouts/RouteLayout.tsx +11 -50
  494. package/src/components/layouts/Sidebar.tsx +21 -23
  495. package/src/components/plan-limits/PlanLimitsDialog.tsx +331 -0
  496. package/src/components/plan-limits/index.tsx +3 -0
  497. package/src/components/plan-limits/plan-limits-client.ts +71 -0
  498. package/src/components/plan-limits/plan-limits-model.ts +180 -0
  499. package/src/components/plan-limits/plan-limits-save.ts +68 -0
  500. package/src/components/planning/PlanLimitsAction.tsx +44 -0
  501. package/src/components/slider/index.tsx +2 -1
  502. package/src/datastore-picker/datastore-picker-rows.ts +36 -20
  503. package/src/hooks/use-action-plans-list.ts +20 -12
  504. package/src/hooks/use-activity-feed.ts +30 -14
  505. package/src/hooks/use-entity.ts +11 -6
  506. package/src/hooks/use-manual-actions.ts +11 -6
  507. package/src/hooks/use-unsaved-changes-warning.ts +12 -0
  508. package/src/hooks/useAuth.ts +5 -3
  509. package/src/hooks/useChatPanelSync.ts +2 -3
  510. package/src/hooks/useDatastoreSelection.ts +10 -4
  511. package/src/hooks/useExecuteAction.ts +2 -0
  512. package/src/hooks/useLoginRedirect.ts +66 -0
  513. package/src/hooks/usePlanLimits.ts +97 -0
  514. package/src/ldo-ui.ts +1 -0
  515. package/src/lib/app-tools.ts +63 -0
  516. package/src/lib/chat-types.ts +5 -0
  517. package/src/lib/datastore-route-table.ts +9 -0
  518. package/src/lib/graphql-error.ts +7 -0
  519. package/src/lib/update-notice.ts +12 -2
  520. package/src/providers/ActiveChatProvider.tsx +8 -3
  521. package/src/providers/ActiveDatastoreProvider.tsx +179 -9
  522. package/src/providers/AuthContext.ts +1 -0
  523. package/src/providers/KnowledgeGraphStateContext.ts +2 -2
  524. package/src/providers/KnowledgeGraphStateProvider.tsx +13 -65
  525. package/src/providers/MantaClientProvider.tsx +8 -3
  526. package/src/providers/index.tsx +7 -4
  527. package/src/routes/activity/detail/ActivityDetailRoute.tsx +1 -10
  528. package/src/routes/activity/index.tsx +1 -10
  529. package/src/routes/chat/index.tsx +11 -47
  530. package/src/routes/data-collection/index.tsx +1 -11
  531. package/src/routes/data-explorer/components/DataExplorerLayout.tsx +1 -11
  532. package/src/routes/data-explorer/components/class-detail/UsedByRules.tsx +2 -2
  533. package/src/routes/datastores/index.tsx +3 -9
  534. package/src/routes/explain/index.tsx +1 -11
  535. package/src/routes/integrations/components/connect-forms/DashConnectForm.tsx +0 -1
  536. package/src/routes/integrations/components/connect-forms/GoogleAdsConnectForm.tsx +0 -1
  537. package/src/routes/integrations/components/connect-forms/GoogleAnalyticsConnectForm.tsx +0 -1
  538. package/src/routes/integrations/components/connect-forms/GoogleMerchantCenterConnectForm.tsx +0 -1
  539. package/src/routes/integrations/components/connect-forms/InferalCredentialConnectForm.tsx +5 -3
  540. package/src/routes/integrations/components/connect-forms/KlaviyoConnectForm.tsx +0 -1
  541. package/src/routes/integrations/components/connect-forms/MicrosoftAdsConnectForm.tsx +0 -1
  542. package/src/routes/integrations/components/connect-forms/OAuthSetupConnectForm.tsx +7 -7
  543. package/src/routes/integrations/components/connect-forms/TriplewhaleConnectForm.tsx +0 -1
  544. package/src/routes/integrations/components/connect-forms/WoocommerceConnectForm.tsx +0 -1
  545. package/src/routes/integrations/types.ts +22 -6
  546. package/src/routes/memories/components/DateValueInput.tsx +72 -0
  547. package/src/routes/memories/components/EntityValuePicker.tsx +132 -0
  548. package/src/routes/memories/components/FieldLabel.tsx +49 -0
  549. package/src/routes/memories/components/ImportanceSlider.tsx +5 -1
  550. package/src/routes/memories/components/MemoriesFilters.tsx +2 -2
  551. package/src/routes/memories/components/MemoriesPanel.tsx +7 -3
  552. package/src/routes/memories/components/MemoriesTabPanel.tsx +2 -2
  553. package/src/routes/memories/components/MemoryActions.tsx +26 -2
  554. package/src/routes/memories/components/MemoryFields.tsx +75 -12
  555. package/src/routes/memories/components/MemoryFormDialog.tsx +305 -199
  556. package/src/routes/memories/components/MemoryPropertyFields.tsx +288 -0
  557. package/src/routes/memories/components/RuleDraftDialog.tsx +35 -0
  558. package/src/routes/memories/components/SchemasTab.tsx +481 -118
  559. package/src/routes/memories/components/badges.tsx +16 -4
  560. package/src/routes/memories/hooks/useMemoryColumns.tsx +69 -35
  561. package/src/routes/memories/index.tsx +125 -51
  562. package/src/routes/memories/memory-mutation-input.ts +5 -2
  563. package/src/routes/memories/memory-property-values.ts +83 -0
  564. package/src/routes/memories/schemas/AllowedValuesField.tsx +188 -0
  565. package/src/routes/memories/schemas/MemorySchemaPage.tsx +476 -0
  566. package/src/routes/memories/schemas/SchemaChangeReviewDialog.tsx +290 -0
  567. package/src/routes/memories/schemas/SchemaConfirmDialog.tsx +62 -0
  568. package/src/routes/memories/schemas/SchemaDetailPage.tsx +373 -0
  569. package/src/routes/memories/schemas/SchemaEditorForm.tsx +990 -0
  570. package/src/routes/memories/schemas/SchemaTemplatesDialog.tsx +81 -0
  571. package/src/routes/memories/schemas/ValueTypeSelect.tsx +37 -0
  572. package/src/routes/memories/schemas/schema-form.ts +360 -0
  573. package/src/routes/memories/schemas/schema-impact.ts +66 -0
  574. package/src/routes/memories/schemas/schema-route.ts +30 -0
  575. package/src/routes/memories/schemas/schema-rule-context.ts +103 -0
  576. package/src/routes/memories/schemas/schema-table.ts +54 -0
  577. package/src/routes/memories/schemas/useMemorySchemaMutations.ts +49 -0
  578. package/src/routes/memories/schemas/useSchemaChangeReview.ts +238 -0
  579. package/src/routes/memories/schemas/useSchemaLifecycle.tsx +151 -0
  580. package/src/routes/memories/schemas/useSchemasTab.ts +119 -0
  581. package/src/routes/plans/index.tsx +3 -14
  582. package/src/routes/rules/components/CreateRuleChatModal.tsx +46 -22
  583. package/src/routes/rules/components/RuleValueControls.tsx +3 -35
  584. package/src/routes/rules/components/rule-value-input.ts +34 -0
  585. package/src/routes/rules/components/rules.utils.ts +25 -3
  586. package/src/routes/rules/pages.ts +5 -1
  587. package/src/shared/graph-derived-queries.ts +6 -0
  588. package/src/themes/manta-dark.css +4 -0
  589. package/src/worker/index.ts +175 -0
  590. package/src/worker/policy.ts +62 -0
  591. package/src/worker/proxy.ts +101 -0
  592. package/src/worker/session.ts +111 -0
@@ -0,0 +1,34 @@
1
+ import { isPresent } from "@manta-eu/lib/present";
2
+ export function ruleCountsFrom(response) {
3
+ if (!response || isPresent(response.error))
4
+ return undefined;
5
+ return new Map(response.counts.map(({ iri, ruleCount }) => [iri, ruleCount]));
6
+ }
7
+ export const anyCount = { properties: "ANY", rules: "ANY", memories: "ANY" };
8
+ export function schemaCounts(schema, ruleCounts) {
9
+ return {
10
+ properties: schema.properties.filter((property) => !property.computed).length,
11
+ rules: ruleCounts ? (ruleCounts.get(schema.iri) ?? 0) : null,
12
+ memories: schema.memoryCount ?? null,
13
+ };
14
+ }
15
+ export function countMatches(count, filter) {
16
+ if (filter === "ANY")
17
+ return true;
18
+ if (count === null)
19
+ return false;
20
+ return filter === "NONE" ? count === 0 : count > 0;
21
+ }
22
+ export function filterSchemas(schemas, search, filters, ruleCounts) {
23
+ const needle = search.trim().toLowerCase();
24
+ return schemas.filter((schema) => {
25
+ const matchesSearch = !isPresent(needle) ||
26
+ schema.label.toLowerCase().includes(needle) ||
27
+ (schema.description ?? "").toLowerCase().includes(needle);
28
+ if (!matchesSearch)
29
+ return false;
30
+ const counts = schemaCounts(schema, ruleCounts);
31
+ return Object.keys(filters).every((key) => countMatches(counts[key], filters[key]));
32
+ });
33
+ }
34
+ //# sourceMappingURL=schema-table.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schema-table.js","sourceRoot":"","sources":["../../../../src/routes/memories/schemas/schema-table.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAElD,MAAM,UAAU,cAAc,CAC5B,QAA8E;IAE9E,IAAI,CAAC,QAAQ,IAAI,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC;QAAE,OAAO,SAAS,CAAC;IAC7D,OAAO,IAAI,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,SAAS,EAAE,EAAE,EAAE,CAAC,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC;AAChF,CAAC;AAQD,MAAM,CAAC,MAAM,QAAQ,GAAuB,EAAE,UAAU,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;AAIjG,MAAM,UAAU,YAAY,CAC1B,MAAqC,EACrC,UAAmD;IAEnD,OAAO;QACL,UAAU,EAAE,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,MAAM;QAC7E,KAAK,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI;QAC5D,QAAQ,EAAE,MAAM,CAAC,WAAW,IAAI,IAAI;KACrC,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,YAAY,CAAC,KAAoB,EAAE,MAAmB;IACpE,IAAI,MAAM,KAAK,KAAK;QAAE,OAAO,IAAI,CAAC;IAClC,IAAI,KAAK,KAAK,IAAI;QAAE,OAAO,KAAK,CAAC;IACjC,OAAO,MAAM,KAAK,MAAM,CAAC,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC;AACrD,CAAC;AAED,MAAM,UAAU,aAAa,CAC3B,OAAiD,EACjD,MAAc,EACd,OAA2B,EAC3B,UAAmD;IAEnD,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IAC3C,OAAO,OAAO,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE;QAC/B,MAAM,aAAa,GACjB,CAAC,SAAS,CAAC,MAAM,CAAC;YAClB,MAAM,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC;YAC3C,CAAC,MAAM,CAAC,WAAW,IAAI,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;QAC5D,IAAI,CAAC,aAAa;YAAE,OAAO,KAAK,CAAC;QACjC,MAAM,MAAM,GAAG,YAAY,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;QAChD,OAAQ,MAAM,CAAC,IAAI,CAAC,OAAO,CAAsB,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,YAAY,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;IAC5G,CAAC,CAAC,CAAC;AACL,CAAC"}
@@ -0,0 +1,32 @@
1
+ export declare function useMemorySchemaMutations(): {
2
+ refresh: () => Promise<void>;
3
+ create: import("@tanstack/react-query").UseMutationResult<import("@manta-eu/client").GQLCreateMemorySchemaMutation, unknown, import("@manta-eu/client").Exact<{
4
+ input: import("@manta-eu/client").GQLCreateMemorySchemaInput;
5
+ }>, unknown>;
6
+ update: import("@tanstack/react-query").UseMutationResult<import("@manta-eu/client").GQLUpdateMemorySchemaMutation, unknown, import("@manta-eu/client").Exact<{
7
+ input: import("@manta-eu/client").GQLUpdateMemorySchemaInput;
8
+ }>, unknown>;
9
+ archive: import("@tanstack/react-query").UseMutationResult<import("@manta-eu/client").GQLArchiveMemorySchemaMutation, unknown, import("@manta-eu/client").Exact<{
10
+ input: import("@manta-eu/client").GQLMemorySchemaRevisionInput;
11
+ }>, unknown>;
12
+ unarchive: import("@tanstack/react-query").UseMutationResult<import("@manta-eu/client").GQLUnarchiveMemorySchemaMutation, unknown, import("@manta-eu/client").Exact<{
13
+ input: import("@manta-eu/client").GQLMemorySchemaRevisionInput;
14
+ }>, unknown>;
15
+ remove: import("@tanstack/react-query").UseMutationResult<import("@manta-eu/client").GQLDeleteMemorySchemaMutation, unknown, import("@manta-eu/client").Exact<{
16
+ input: import("@manta-eu/client").GQLMemorySchemaRevisionInput;
17
+ }>, unknown>;
18
+ addFromTemplate: import("@tanstack/react-query").UseMutationResult<import("@manta-eu/client").GQLAddMemorySchemaFromTemplateMutation, unknown, import("@manta-eu/client").Exact<{
19
+ templateIri: import("@manta-eu/client").Scalars["IRI"]["input"];
20
+ }>, unknown>;
21
+ resetToTemplate: import("@tanstack/react-query").UseMutationResult<import("@manta-eu/client").GQLResetMemorySchemaToTemplateMutation, unknown, import("@manta-eu/client").Exact<{
22
+ input: import("@manta-eu/client").GQLResetMemorySchemaInput;
23
+ }>, unknown>;
24
+ dismissTemplateUpdate: import("@tanstack/react-query").UseMutationResult<import("@manta-eu/client").GQLDismissMemorySchemaTemplateUpdateMutation, unknown, import("@manta-eu/client").Exact<{
25
+ input: import("@manta-eu/client").GQLMemorySchemaRevisionInput;
26
+ }>, unknown>;
27
+ clearValues: import("@tanstack/react-query").UseMutationResult<import("@manta-eu/client").GQLClearMemorySchemaPropertyValuesMutation, unknown, import("@manta-eu/client").Exact<{
28
+ input: import("@manta-eu/client").GQLClearMemorySchemaPropertyValuesInput;
29
+ }>, unknown>;
30
+ };
31
+ export type MemorySchemaMutations = ReturnType<typeof useMemorySchemaMutations>;
32
+ //# sourceMappingURL=useMemorySchemaMutations.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useMemorySchemaMutations.d.ts","sourceRoot":"","sources":["../../../../src/routes/memories/schemas/useMemorySchemaMutations.ts"],"names":[],"mappings":"AAqBA,wBAAgB,wBAAwB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAyBvC;AAED,MAAM,MAAM,qBAAqB,GAAG,UAAU,CAAC,OAAO,wBAAwB,CAAC,CAAC"}
@@ -0,0 +1,31 @@
1
+ import { useAddMemorySchemaFromTemplateMutation, useArchiveMemorySchemaMutation, useClearMemorySchemaPropertyValuesMutation, useCreateMemorySchemaMutation, useDeleteMemorySchemaMutation, useDismissMemorySchemaTemplateUpdateMutation, useMemoriesQuery, useMemorySchemasQuery, useMemorySchemaTemplatesQuery, useMemorySchemaUsageQuery, useResetMemorySchemaToTemplateMutation, useUnarchiveMemorySchemaMutation, useUpdateMemorySchemaMutation, } from "@manta-eu/client";
2
+ import { useQueryClient } from "@tanstack/react-query";
3
+ import { useCallback } from "react";
4
+ import { invalidateQueries } from "#lib/tanstack-query";
5
+ import { useMantaClient } from "#providers/index";
6
+ // A schema write can rewrite stored values, so the memories that hold them are refetched with it.
7
+ export function useMemorySchemaMutations() {
8
+ const { mantaClient } = useMantaClient();
9
+ const queryClient = useQueryClient();
10
+ const refresh = useCallback(async () => {
11
+ await invalidateQueries(queryClient, [
12
+ useMemorySchemasQuery,
13
+ useMemorySchemaUsageQuery,
14
+ useMemorySchemaTemplatesQuery,
15
+ useMemoriesQuery,
16
+ ]);
17
+ }, [queryClient]);
18
+ return {
19
+ refresh,
20
+ create: useCreateMemorySchemaMutation(mantaClient),
21
+ update: useUpdateMemorySchemaMutation(mantaClient),
22
+ archive: useArchiveMemorySchemaMutation(mantaClient),
23
+ unarchive: useUnarchiveMemorySchemaMutation(mantaClient),
24
+ remove: useDeleteMemorySchemaMutation(mantaClient),
25
+ addFromTemplate: useAddMemorySchemaFromTemplateMutation(mantaClient),
26
+ resetToTemplate: useResetMemorySchemaToTemplateMutation(mantaClient),
27
+ dismissTemplateUpdate: useDismissMemorySchemaTemplateUpdateMutation(mantaClient),
28
+ clearValues: useClearMemorySchemaPropertyValuesMutation(mantaClient),
29
+ };
30
+ }
31
+ //# sourceMappingURL=useMemorySchemaMutations.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useMemorySchemaMutations.js","sourceRoot":"","sources":["../../../../src/routes/memories/schemas/useMemorySchemaMutations.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,sCAAsC,EACtC,8BAA8B,EAC9B,0CAA0C,EAC1C,6BAA6B,EAC7B,6BAA6B,EAC7B,4CAA4C,EAC5C,gBAAgB,EAChB,qBAAqB,EACrB,6BAA6B,EAC7B,yBAAyB,EACzB,sCAAsC,EACtC,gCAAgC,EAChC,6BAA6B,GAC9B,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,WAAW,EAAE,MAAM,OAAO,CAAC;AACpC,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAElD,kGAAkG;AAClG,MAAM,UAAU,wBAAwB;IACtC,MAAM,EAAE,WAAW,EAAE,GAAG,cAAc,EAAE,CAAC;IACzC,MAAM,WAAW,GAAG,cAAc,EAAE,CAAC;IAErC,MAAM,OAAO,GAAG,WAAW,CAAC,KAAK,IAAI,EAAE;QACrC,MAAM,iBAAiB,CAAC,WAAW,EAAE;YACnC,qBAAqB;YACrB,yBAAyB;YACzB,6BAA6B;YAC7B,gBAAgB;SACjB,CAAC,CAAC;IACL,CAAC,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC;IAElB,OAAO;QACL,OAAO;QACP,MAAM,EAAE,6BAA6B,CAAC,WAAW,CAAC;QAClD,MAAM,EAAE,6BAA6B,CAAC,WAAW,CAAC;QAClD,OAAO,EAAE,8BAA8B,CAAC,WAAW,CAAC;QACpD,SAAS,EAAE,gCAAgC,CAAC,WAAW,CAAC;QACxD,MAAM,EAAE,6BAA6B,CAAC,WAAW,CAAC;QAClD,eAAe,EAAE,sCAAsC,CAAC,WAAW,CAAC;QACpE,eAAe,EAAE,sCAAsC,CAAC,WAAW,CAAC;QACpE,qBAAqB,EAAE,4CAA4C,CAAC,WAAW,CAAC;QAChF,WAAW,EAAE,0CAA0C,CAAC,WAAW,CAAC;KACrE,CAAC;AACJ,CAAC"}
@@ -0,0 +1,51 @@
1
+ import { type GQLMemorySchemaMutationResultFragment, type GQLMemorySchemaOptionRemapInput } from "@manta-eu/client";
2
+ import { type MemorySchemaImpact, type OptionRemapChoices } from "./schema-impact.js";
3
+ export type SchemaChangeRequest = {
4
+ expectedRevision: number;
5
+ optionRemaps: GQLMemorySchemaOptionRemapInput[];
6
+ clearUnconvertibleValues: boolean;
7
+ dryRun: boolean;
8
+ };
9
+ export type SchemaChangeResult = GQLMemorySchemaMutationResultFragment;
10
+ export type SchemaChangeRun = (request: SchemaChangeRequest) => Promise<SchemaChangeResult>;
11
+ export type SchemaClearRun = (path: string, expectedRevision: number) => Promise<SchemaChangeResult>;
12
+ export type SchemaChangeCallbacks = {
13
+ onApplied: (result: SchemaChangeResult) => void | Promise<void>;
14
+ onInvalid?: (result: SchemaChangeResult) => void;
15
+ onStale: () => void | Promise<void>;
16
+ onRevisionChange?: (revision: number) => void;
17
+ };
18
+ type ReviewState = {
19
+ session: number;
20
+ title: string;
21
+ run: SchemaChangeRun;
22
+ callbacks: SchemaChangeCallbacks;
23
+ revision: number;
24
+ impact: MemorySchemaImpact | null;
25
+ proposed: SchemaChangeResult["schema"];
26
+ choices: OptionRemapChoices;
27
+ clearUnconvertible: boolean;
28
+ };
29
+ export declare function refusalMessage(result: SchemaChangeResult): string;
30
+ export declare function reportFailure(error: unknown, fallback: string): void;
31
+ export declare function useSchemaChangeReview(): {
32
+ state: ReviewState | null;
33
+ isChecking: boolean;
34
+ isApplying: boolean;
35
+ clearingPath: string | null;
36
+ start: (options: {
37
+ title: string;
38
+ run: SchemaChangeRun;
39
+ revision: number;
40
+ callbacks: SchemaChangeCallbacks;
41
+ alwaysReview?: boolean;
42
+ }) => Promise<void>;
43
+ close: () => void;
44
+ apply: () => Promise<void>;
45
+ setRemapChoice: (key: string, choice: string) => void;
46
+ setClearUnconvertible: (clearUnconvertible: boolean) => void;
47
+ clearValues: (path: string, clear: SchemaClearRun) => Promise<void>;
48
+ };
49
+ export type SchemaChangeReview = ReturnType<typeof useSchemaChangeReview>;
50
+ export {};
51
+ //# sourceMappingURL=useSchemaChangeReview.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useSchemaChangeReview.d.ts","sourceRoot":"","sources":["../../../../src/routes/memories/schemas/useSchemaChangeReview.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,qCAAqC,EAC1C,KAAK,+BAA+B,EACrC,MAAM,kBAAkB,CAAC;AAM1B,OAAO,EAGL,KAAK,kBAAkB,EACvB,KAAK,kBAAkB,EACxB,MAAM,iBAAiB,CAAC;AAEzB,MAAM,MAAM,mBAAmB,GAAG;IAChC,gBAAgB,EAAE,MAAM,CAAC;IACzB,YAAY,EAAE,+BAA+B,EAAE,CAAC;IAChD,wBAAwB,EAAE,OAAO,CAAC;IAClC,MAAM,EAAE,OAAO,CAAC;CACjB,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAAG,qCAAqC,CAAC;AAEvE,MAAM,MAAM,eAAe,GAAG,CAAC,OAAO,EAAE,mBAAmB,KAAK,OAAO,CAAC,kBAAkB,CAAC,CAAC;AAE5F,MAAM,MAAM,cAAc,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,gBAAgB,EAAE,MAAM,KAAK,OAAO,CAAC,kBAAkB,CAAC,CAAC;AAErG,MAAM,MAAM,qBAAqB,GAAG;IAClC,SAAS,EAAE,CAAC,MAAM,EAAE,kBAAkB,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAChE,SAAS,CAAC,EAAE,CAAC,MAAM,EAAE,kBAAkB,KAAK,IAAI,CAAC;IACjD,OAAO,EAAE,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACpC,gBAAgB,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC;CAC/C,CAAC;AAEF,KAAK,WAAW,GAAG;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,EAAE,eAAe,CAAC;IACrB,SAAS,EAAE,qBAAqB,CAAC;IACjC,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,kBAAkB,GAAG,IAAI,CAAC;IAClC,QAAQ,EAAE,kBAAkB,CAAC,QAAQ,CAAC,CAAC;IACvC,OAAO,EAAE,kBAAkB,CAAC;IAC5B,kBAAkB,EAAE,OAAO,CAAC;CAC7B,CAAC;AAIF,wBAAgB,cAAc,CAAC,MAAM,EAAE,kBAAkB,GAAG,MAAM,CAGjE;AAWD,wBAAgB,aAAa,CAAC,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,QAG7D;AAKD,wBAAgB,qBAAqB;;;;;qBAoFjB;QACd,KAAK,EAAE,MAAM,CAAC;QACd,GAAG,EAAE,eAAe,CAAC;QACrB,QAAQ,EAAE,MAAM,CAAC;QACjB,SAAS,EAAE,qBAAqB,CAAC;QACjC,YAAY,CAAC,EAAE,OAAO,CAAC;KACxB;;;0BAoEqB,MAAM,UAAU,MAAM;gDACA,OAAO;wBAjCtC,MAAM,SAAS,cAAc;EAoC7C;AAED,MAAM,MAAM,kBAAkB,GAAG,UAAU,CAAC,OAAO,qBAAqB,CAAC,CAAC"}
@@ -0,0 +1,175 @@
1
+ import { GQLMemorySchemaMutationStatus, } from "@manta-eu/client";
2
+ import { parseError } from "@manta-eu/client/shared/error-utils";
3
+ import { isPresent } from "@manta-eu/lib/present";
4
+ import { useCallback, useRef, useState } from "react";
5
+ import { toast } from "sonner";
6
+ import { match, P } from "ts-pattern";
7
+ import { impactNeedsReview, optionRemapsInput, } from "./schema-impact.js";
8
+ export function refusalMessage(result) {
9
+ const validation = result.validationErrors.map((error) => error.message).join("; ");
10
+ return result.error ?? (isPresent(validation) ? validation : "The schema could not be changed");
11
+ }
12
+ function requestFor(state, dryRun) {
13
+ return {
14
+ expectedRevision: state.revision,
15
+ optionRemaps: state.impact ? optionRemapsInput(state.impact, state.choices) : [],
16
+ clearUnconvertibleValues: state.clearUnconvertible,
17
+ dryRun,
18
+ };
19
+ }
20
+ export function reportFailure(error, fallback) {
21
+ const parsed = parseError(error, fallback);
22
+ toast.error(parsed.message, { description: parsed.description });
23
+ }
24
+ // Every check is a dry run against the server, so the review shows exactly what applying would do. Each review is a
25
+ // session: closing it ends the session, so a check still in flight cannot open the dialog again. Only the latest check
26
+ // settles, so a slower earlier one cannot bring back choices the person has since changed.
27
+ export function useSchemaChangeReview() {
28
+ const session = useRef(0);
29
+ const latestCheck = useRef(0);
30
+ const [state, setState] = useState(null);
31
+ const [isChecking, setChecking] = useState(false);
32
+ const [isApplying, setApplying] = useState(false);
33
+ const [clearingPath, setClearingPath] = useState(null);
34
+ const settle = useCallback(async (result, next, show = true) => {
35
+ const { onApplied, onInvalid, onStale } = next.callbacks;
36
+ const current = next.session === session.current;
37
+ return match(result.status)
38
+ .with(GQLMemorySchemaMutationStatus.Ok, async () => {
39
+ setState(null);
40
+ await onApplied(result);
41
+ return "closed";
42
+ })
43
+ .with(P.union(GQLMemorySchemaMutationStatus.Preview, GQLMemorySchemaMutationStatus.Blocked), async () => {
44
+ if (show && current)
45
+ setState({ ...next, impact: result.impact ?? null, proposed: result.schema });
46
+ return current ? "open" : "closed";
47
+ })
48
+ .with(GQLMemorySchemaMutationStatus.Invalid, async () => {
49
+ setState(null);
50
+ if (onInvalid)
51
+ onInvalid(result);
52
+ else
53
+ toast.error(refusalMessage(result));
54
+ return "closed";
55
+ })
56
+ .with(P.union(GQLMemorySchemaMutationStatus.Conflict, GQLMemorySchemaMutationStatus.NotFound), async () => {
57
+ setState(null);
58
+ toast.error(refusalMessage(result));
59
+ await onStale();
60
+ return "closed";
61
+ })
62
+ .with(GQLMemorySchemaMutationStatus.Limit, async () => {
63
+ setState(null);
64
+ toast.error(refusalMessage(result));
65
+ return "closed";
66
+ })
67
+ .exhaustive();
68
+ }, []);
69
+ const check = useCallback(async (next, show = true) => {
70
+ const ticket = ++latestCheck.current;
71
+ const superseded = () => ticket !== latestCheck.current;
72
+ setChecking(true);
73
+ try {
74
+ const result = await next.run(requestFor(next, true));
75
+ if (superseded())
76
+ return null;
77
+ return { result, outcome: await settle(result, next, show) };
78
+ }
79
+ catch (error) {
80
+ if (superseded())
81
+ return null;
82
+ setState(null);
83
+ reportFailure(error, "Failed to check the change");
84
+ return null;
85
+ }
86
+ finally {
87
+ if (!superseded())
88
+ setChecking(false);
89
+ }
90
+ }, [settle]);
91
+ const applyState = useCallback(async (current) => {
92
+ setApplying(true);
93
+ try {
94
+ await settle(await current.run(requestFor(current, false)), current);
95
+ }
96
+ catch (error) {
97
+ reportFailure(error, "Failed to save the schema");
98
+ }
99
+ finally {
100
+ setApplying(false);
101
+ }
102
+ }, [settle]);
103
+ // `alwaysReview` shows the dialog even when no stored value moves, for a change the person did not author.
104
+ const start = useCallback(async (options) => {
105
+ session.current += 1;
106
+ const initial = {
107
+ session: session.current,
108
+ title: options.title,
109
+ run: options.run,
110
+ callbacks: options.callbacks,
111
+ revision: options.revision,
112
+ impact: null,
113
+ proposed: null,
114
+ choices: {},
115
+ clearUnconvertible: false,
116
+ };
117
+ const alwaysReview = options.alwaysReview === true;
118
+ if (alwaysReview)
119
+ setState(initial);
120
+ const checked = await check(initial, alwaysReview);
121
+ if (checked === null || checked.outcome === "closed" || alwaysReview)
122
+ return;
123
+ if (initial.session !== session.current)
124
+ return;
125
+ const reviewed = { ...initial, impact: checked.result.impact ?? null, proposed: checked.result.schema };
126
+ if (reviewed.impact && !impactNeedsReview(reviewed.impact))
127
+ await applyState(reviewed);
128
+ else
129
+ setState(reviewed);
130
+ }, [check, applyState]);
131
+ const recheck = useCallback((patch) => {
132
+ if (state === null)
133
+ return;
134
+ const next = { ...state, ...patch };
135
+ setState(next);
136
+ void check(next);
137
+ }, [state, check]);
138
+ const clearValues = useCallback(async (path, clear) => {
139
+ if (state === null)
140
+ return;
141
+ setClearingPath(path);
142
+ try {
143
+ const result = await clear(path, state.revision);
144
+ if (result.status !== GQLMemorySchemaMutationStatus.Ok || !result.schema) {
145
+ toast.error(refusalMessage(result));
146
+ return;
147
+ }
148
+ toast.success("Values cleared");
149
+ state.callbacks.onRevisionChange?.(result.schema.revision);
150
+ await check({ ...state, revision: result.schema.revision });
151
+ }
152
+ catch (error) {
153
+ reportFailure(error, "Failed to clear the values");
154
+ }
155
+ finally {
156
+ setClearingPath(null);
157
+ }
158
+ }, [state, check]);
159
+ return {
160
+ state,
161
+ isChecking,
162
+ isApplying,
163
+ clearingPath,
164
+ start,
165
+ close: () => {
166
+ session.current += 1;
167
+ setState(null);
168
+ },
169
+ apply: () => (state ? applyState(state) : Promise.resolve()),
170
+ setRemapChoice: (key, choice) => recheck({ choices: { ...(state?.choices ?? {}), [key]: choice } }),
171
+ setClearUnconvertible: (clearUnconvertible) => recheck({ clearUnconvertible }),
172
+ clearValues,
173
+ };
174
+ }
175
+ //# sourceMappingURL=useSchemaChangeReview.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useSchemaChangeReview.js","sourceRoot":"","sources":["../../../../src/routes/memories/schemas/useSchemaChangeReview.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,46 @@
1
+ import { type GQLMemorySchemaFieldsFragment } from "@manta-eu/client";
2
+ import { type SchemaChangeResult } from "./useSchemaChangeReview.js";
3
+ export declare function reportResult(result: SchemaChangeResult, success: string): boolean;
4
+ export declare function archiveBlockedReason(ruleCount: number | null | undefined): string | null;
5
+ export declare function deleteBlockedReason(memoryCount: number | null | undefined, ruleCount?: number | null): string | null;
6
+ export declare function useSchemaLifecycle(options?: {
7
+ onDeleted?: () => void;
8
+ }): {
9
+ mutations: {
10
+ refresh: () => Promise<void>;
11
+ create: import("@tanstack/react-query").UseMutationResult<import("@manta-eu/client").GQLCreateMemorySchemaMutation, unknown, import("@manta-eu/client").Exact<{
12
+ input: import("@manta-eu/client").GQLCreateMemorySchemaInput;
13
+ }>, unknown>;
14
+ update: import("@tanstack/react-query").UseMutationResult<import("@manta-eu/client").GQLUpdateMemorySchemaMutation, unknown, import("@manta-eu/client").Exact<{
15
+ input: import("@manta-eu/client").GQLUpdateMemorySchemaInput;
16
+ }>, unknown>;
17
+ archive: import("@tanstack/react-query").UseMutationResult<import("@manta-eu/client").GQLArchiveMemorySchemaMutation, unknown, import("@manta-eu/client").Exact<{
18
+ input: import("@manta-eu/client").GQLMemorySchemaRevisionInput;
19
+ }>, unknown>;
20
+ unarchive: import("@tanstack/react-query").UseMutationResult<import("@manta-eu/client").GQLUnarchiveMemorySchemaMutation, unknown, import("@manta-eu/client").Exact<{
21
+ input: import("@manta-eu/client").GQLMemorySchemaRevisionInput;
22
+ }>, unknown>;
23
+ remove: import("@tanstack/react-query").UseMutationResult<import("@manta-eu/client").GQLDeleteMemorySchemaMutation, unknown, import("@manta-eu/client").Exact<{
24
+ input: import("@manta-eu/client").GQLMemorySchemaRevisionInput;
25
+ }>, unknown>;
26
+ addFromTemplate: import("@tanstack/react-query").UseMutationResult<import("@manta-eu/client").GQLAddMemorySchemaFromTemplateMutation, unknown, import("@manta-eu/client").Exact<{
27
+ templateIri: import("@manta-eu/client").Scalars["IRI"]["input"];
28
+ }>, unknown>;
29
+ resetToTemplate: import("@tanstack/react-query").UseMutationResult<import("@manta-eu/client").GQLResetMemorySchemaToTemplateMutation, unknown, import("@manta-eu/client").Exact<{
30
+ input: import("@manta-eu/client").GQLResetMemorySchemaInput;
31
+ }>, unknown>;
32
+ dismissTemplateUpdate: import("@tanstack/react-query").UseMutationResult<import("@manta-eu/client").GQLDismissMemorySchemaTemplateUpdateMutation, unknown, import("@manta-eu/client").Exact<{
33
+ input: import("@manta-eu/client").GQLMemorySchemaRevisionInput;
34
+ }>, unknown>;
35
+ clearValues: import("@tanstack/react-query").UseMutationResult<import("@manta-eu/client").GQLClearMemorySchemaPropertyValuesMutation, unknown, import("@manta-eu/client").Exact<{
36
+ input: import("@manta-eu/client").GQLClearMemorySchemaPropertyValuesInput;
37
+ }>, unknown>;
38
+ };
39
+ isPending: boolean;
40
+ runStatus: (action: () => Promise<SchemaChangeResult>, success: string, after?: (result: SchemaChangeResult) => void) => Promise<void>;
41
+ askToArchive: (schema: GQLMemorySchemaFieldsFragment) => void;
42
+ askToDelete: (schema: GQLMemorySchemaFieldsFragment) => void;
43
+ restore: (schema: GQLMemorySchemaFieldsFragment) => void;
44
+ dialogs: import("react/jsx-runtime").JSX.Element;
45
+ };
46
+ //# sourceMappingURL=useSchemaLifecycle.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useSchemaLifecycle.d.ts","sourceRoot":"","sources":["../../../../src/routes/memories/schemas/useSchemaLifecycle.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAiC,KAAK,6BAA6B,EAAE,MAAM,kBAAkB,CAAC;AASrG,OAAO,EAAiC,KAAK,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAEjG,wBAAgB,YAAY,CAAC,MAAM,EAAE,kBAAkB,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAcjF;AAED,wBAAgB,oBAAoB,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,MAAM,GAAG,IAAI,CAKxF;AAED,wBAAgB,mBAAmB,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,MAAM,GAAG,IAAI,CAKpH;AAID,wBAAgB,kBAAkB,CAAC,OAAO,GAAE;IAAE,SAAS,CAAC,EAAE,MAAM,IAAI,CAAA;CAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;wBAS7D,MAAM,OAAO,CAAC,kBAAkB,CAAC,WAChC,MAAM,UACP,CAAC,MAAM,EAAE,kBAAkB,KAAK,IAAI;2BA2BrC,6BAA6B;0BAI7B,6BAA6B;sBAd7B,6BAA6B;;EA+EzC"}
@@ -0,0 +1,93 @@
1
+ import { Fragment as _Fragment, jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { GQLMemorySchemaMutationStatus } from "@manta-eu/client";
3
+ import { humanCount } from "@manta-eu/lib/humanize";
4
+ import { isPresent } from "@manta-eu/lib/present";
5
+ import { useCallback, useState } from "react";
6
+ import { toast } from "sonner";
7
+ import { match, P } from "ts-pattern";
8
+ import { readableBlockers } from "./schema-impact.js";
9
+ import { SchemaConfirmDialog } from "./SchemaConfirmDialog.js";
10
+ import { useMemorySchemaMutations } from "./useMemorySchemaMutations.js";
11
+ import { refusalMessage, reportFailure } from "./useSchemaChangeReview.js";
12
+ export function reportResult(result, success) {
13
+ return match(result)
14
+ .with({ status: GQLMemorySchemaMutationStatus.Ok }, () => {
15
+ toast.success(success);
16
+ return true;
17
+ })
18
+ .with({ status: GQLMemorySchemaMutationStatus.Blocked, impact: { blockers: P.when(isPresent) } }, ({ impact }) => {
19
+ toast.error("This cannot be done yet", { description: readableBlockers(impact).join(" ") });
20
+ return false;
21
+ })
22
+ .otherwise(() => {
23
+ toast.error(refusalMessage(result));
24
+ return false;
25
+ });
26
+ }
27
+ export function archiveBlockedReason(ruleCount) {
28
+ if (!ruleCount)
29
+ return null;
30
+ return ruleCount === 1
31
+ ? "1 rule uses this schema. Change that rule first."
32
+ : `${humanCount(ruleCount, "rule")} use this schema. Change those rules first.`;
33
+ }
34
+ export function deleteBlockedReason(memoryCount, ruleCount) {
35
+ const rulesBlock = archiveBlockedReason(ruleCount);
36
+ if (rulesBlock !== null)
37
+ return rulesBlock;
38
+ if (!memoryCount)
39
+ return null;
40
+ return `${humanCount(memoryCount, "memory")} ${memoryCount === 1 ? "uses" : "use"} this schema, so it can only be archived`;
41
+ }
42
+ export function useSchemaLifecycle(options = {}) {
43
+ const { onDeleted } = options;
44
+ const mutations = useMemorySchemaMutations();
45
+ const [confirming, setConfirming] = useState(null);
46
+ const isPending = mutations.archive.isPending || mutations.unarchive.isPending || mutations.remove.isPending;
47
+ const { refresh } = mutations;
48
+ const runStatus = useCallback(async (action, success, after) => {
49
+ try {
50
+ const result = await action();
51
+ if (reportResult(result, success))
52
+ after?.(result);
53
+ await refresh();
54
+ }
55
+ catch (error) {
56
+ reportFailure(error, "The schema could not be changed");
57
+ }
58
+ finally {
59
+ setConfirming(null);
60
+ }
61
+ }, [refresh]);
62
+ const unarchive = mutations.unarchive.mutateAsync;
63
+ const restore = useCallback((schema) => {
64
+ void runStatus(async () => (await unarchive({ input: { iri: schema.iri, expectedRevision: schema.revision } })).unarchiveMemorySchema, `Restored ${schema.label}`);
65
+ }, [runStatus, unarchive]);
66
+ const askToArchive = useCallback((schema) => setConfirming({ action: "archive", schema }), []);
67
+ const askToDelete = useCallback((schema) => setConfirming({ action: "delete", schema }), []);
68
+ const archiving = confirming?.action === "archive" ? confirming.schema : null;
69
+ const deleting = confirming?.action === "delete" ? confirming.schema : null;
70
+ const dialogs = (_jsxs(_Fragment, { children: [_jsx(SchemaConfirmDialog, { open: archiving !== null, title: `Archive ${archiving?.label ?? "this schema"}?`, description: "No new memory can use it. Memories that already use it keep their values, and you can restore it later.", confirmLabel: "Archive", pendingLabel: "Archiving\u2026", isPending: mutations.archive.isPending, onCancel: () => setConfirming(null), onConfirm: () => {
71
+ if (archiving === null)
72
+ return;
73
+ void runStatus(async () => (await mutations.archive.mutateAsync({
74
+ input: { iri: archiving.iri, expectedRevision: archiving.revision },
75
+ })).archiveMemorySchema, `Archived ${archiving.label}`);
76
+ } }), _jsx(SchemaConfirmDialog, { open: deleting !== null, title: `Delete ${deleting?.label ?? "this schema"}?`, description: "This removes the schema for good. No memory uses it.", confirmLabel: "Delete", pendingLabel: "Deleting\u2026", destructive: true, isPending: mutations.remove.isPending, onCancel: () => setConfirming(null), onConfirm: () => {
77
+ if (deleting === null)
78
+ return;
79
+ void runStatus(async () => (await mutations.remove.mutateAsync({
80
+ input: { iri: deleting.iri, expectedRevision: deleting.revision },
81
+ })).deleteMemorySchema, `Deleted ${deleting.label}`, onDeleted);
82
+ } })] }));
83
+ return {
84
+ mutations,
85
+ isPending,
86
+ runStatus,
87
+ askToArchive,
88
+ askToDelete,
89
+ restore,
90
+ dialogs,
91
+ };
92
+ }
93
+ //# sourceMappingURL=useSchemaLifecycle.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useSchemaLifecycle.js","sourceRoot":"","sources":["../../../../src/routes/memories/schemas/useSchemaLifecycle.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,18 @@
1
+ import { type GQLMemorySchemaFieldsFragment } from "@manta-eu/client";
2
+ import type { SchemaTemplatesDialogProps } from "./SchemaTemplatesDialog.js";
3
+ import type { PageHeaderAction } from "#components/layouts/page/index";
4
+ export declare function useSchemasTab(options: {
5
+ canManage: boolean;
6
+ }): {
7
+ view: import("./schema-route.js").MemorySchemaView | null;
8
+ schemas: GQLMemorySchemaFieldsFragment[];
9
+ listedSchemas: GQLMemorySchemaFieldsFragment[];
10
+ isLoading: boolean;
11
+ errorMessage: string | null;
12
+ query: string;
13
+ setQuery: import("react").Dispatch<import("react").SetStateAction<string>>;
14
+ openNew: () => undefined;
15
+ headerActions: PageHeaderAction[];
16
+ templatesDialog: SchemaTemplatesDialogProps;
17
+ };
18
+ //# sourceMappingURL=useSchemasTab.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useSchemasTab.d.ts","sourceRoot":"","sources":["../../../../src/routes/memories/schemas/useSchemasTab.ts"],"names":[],"mappings":"AAAA,OAAO,EAKL,KAAK,6BAA6B,EACnC,MAAM,kBAAkB,CAAC;AAO1B,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,yBAAyB,CAAC;AAE1E,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAMvE,wBAAgB,aAAa,CAAC,OAAO,EAAE;IAAE,SAAS,EAAE,OAAO,CAAA;CAAE;;;;;;;;;;;EAiG5D"}
@@ -0,0 +1,92 @@
1
+ import { GQLMemorySchemaMutationStatus, GQLMemorySchemaStatus, useMemorySchemasQuery, useMemorySchemaTemplatesQuery, } from "@manta-eu/client";
2
+ import { parseError } from "@manta-eu/client/shared/error-utils";
3
+ import { Archive, EyeOff, LayoutTemplate, Plus } from "lucide-react";
4
+ import { useCallback, useMemo, useState } from "react";
5
+ import { useLocation, useNavigate, useParams } from "react-router";
6
+ import { toast } from "sonner";
7
+ import { memorySchemaView, newMemorySchemaPath } from "./schema-route.js";
8
+ import { useMemorySchemaMutations } from "./useMemorySchemaMutations.js";
9
+ import { useMantaClient } from "#providers/index";
10
+ const emptySchemas = [];
11
+ // Everything the memories route needs for its Schemas tab, the schema pages under it, and the defaults dialog.
12
+ export function useSchemasTab(options) {
13
+ const { canManage } = options;
14
+ const { mantaClient } = useMantaClient();
15
+ const navigate = useNavigate();
16
+ const { schemaName } = useParams();
17
+ const { pathname } = useLocation();
18
+ const { data, isLoading, error } = useMemorySchemasQuery(mantaClient, { includeArchived: true });
19
+ const schemas = data?.memorySchemas.schemas ?? emptySchemas;
20
+ const errorMessage = data?.memorySchemas.error ?? (error ? parseError(error, "Failed to load schemas").message : null);
21
+ const mutations = useMemorySchemaMutations();
22
+ const [query, setQuery] = useState("");
23
+ const [showArchived, setShowArchived] = useState(false);
24
+ const [showTemplates, setShowTemplates] = useState(false);
25
+ const [addingTemplateIri, setAddingTemplateIri] = useState(null);
26
+ const { data: templatesData, isLoading: templatesLoading, error: templatesError, } = useMemorySchemaTemplatesQuery(mantaClient, undefined, { enabled: showTemplates && canManage });
27
+ const listedSchemas = useMemo(() => (showArchived ? schemas : schemas.filter((schema) => schema.status === GQLMemorySchemaStatus.Active)), [schemas, showArchived]);
28
+ const addTemplate = useCallback(async (templateIri) => {
29
+ setAddingTemplateIri(templateIri);
30
+ try {
31
+ const result = (await mutations.addFromTemplate.mutateAsync({ templateIri })).addMemorySchemaFromTemplate;
32
+ if (result.status !== GQLMemorySchemaMutationStatus.Ok) {
33
+ throw new Error(result.error ?? "The default schema could not be restored");
34
+ }
35
+ toast.success(`Restored ${result.schema?.label ?? "the default schema"}`);
36
+ await mutations.refresh();
37
+ }
38
+ catch (e) {
39
+ const err = parseError(e, "Failed to restore the default schema");
40
+ toast.error(err.message, { description: err.description });
41
+ }
42
+ finally {
43
+ setAddingTemplateIri(null);
44
+ }
45
+ }, [mutations]);
46
+ const openNew = useCallback(() => void navigate(newMemorySchemaPath), [navigate]);
47
+ const headerActions = [
48
+ {
49
+ key: "archived-schemas",
50
+ label: showArchived ? "Hide archived" : "Show archived",
51
+ icon: showArchived ? EyeOff : Archive,
52
+ variant: "secondary",
53
+ active: showArchived,
54
+ onClick: () => setShowArchived((v) => !v),
55
+ },
56
+ ...(canManage
57
+ ? [
58
+ {
59
+ key: "templates",
60
+ label: "Restore defaults",
61
+ icon: LayoutTemplate,
62
+ variant: "secondary",
63
+ onClick: () => setShowTemplates(true),
64
+ },
65
+ { key: "new-schema", label: "New schema", icon: Plus, onClick: openNew },
66
+ ]
67
+ : []),
68
+ ];
69
+ const templatesDialog = {
70
+ open: showTemplates,
71
+ templates: templatesData?.memorySchemaTemplates.templates ?? [],
72
+ isLoading: templatesLoading,
73
+ errorMessage: templatesData?.memorySchemaTemplates.error ??
74
+ (templatesError ? parseError(templatesError, "Failed to load the default schemas").message : null),
75
+ addingIri: addingTemplateIri,
76
+ onAdd: (iri) => void addTemplate(iri),
77
+ onClose: () => setShowTemplates(false),
78
+ };
79
+ return {
80
+ view: memorySchemaView(pathname, schemaName),
81
+ schemas,
82
+ listedSchemas,
83
+ isLoading,
84
+ errorMessage,
85
+ query,
86
+ setQuery,
87
+ openNew,
88
+ headerActions,
89
+ templatesDialog,
90
+ };
91
+ }
92
+ //# sourceMappingURL=useSchemasTab.js.map