@solidxai/core-ui 0.1.20-beta.0 → 0.1.20-beta.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (252) hide show
  1. package/dist/components/common/Link.d.ts.map +1 -1
  2. package/dist/components/common/Link.js +2 -1
  3. package/dist/components/common/Link.js.map +1 -1
  4. package/dist/components/common/Link.tsx +2 -1
  5. package/dist/components/common/SolidSettings/LlmSettings/AiModelConfigTab.d.ts +1 -0
  6. package/dist/components/common/SolidSettings/LlmSettings/AiModelConfigTab.d.ts.map +1 -1
  7. package/dist/components/common/SolidSettings/LlmSettings/AiModelConfigTab.js +109 -23
  8. package/dist/components/common/SolidSettings/LlmSettings/AiModelConfigTab.js.map +1 -1
  9. package/dist/components/common/SolidSettings/LlmSettings/AiModelConfigTab.tsx +155 -34
  10. package/dist/components/core/chatter/SolidChatter.js +2 -2
  11. package/dist/components/core/chatter/SolidChatter.js.map +1 -1
  12. package/dist/components/core/chatter/SolidChatter.tsx +2 -2
  13. package/dist/components/core/common/SolidGenericImport/SolidImportTransaction.js +20 -19
  14. package/dist/components/core/common/SolidGenericImport/SolidImportTransaction.js.map +1 -1
  15. package/dist/components/core/common/SolidGenericImport/SolidImportTransaction.tsx +16 -16
  16. package/dist/components/core/extension/solid-core/moduleMetadata/list/ExportModulePackageRowAction.d.ts.map +1 -1
  17. package/dist/components/core/extension/solid-core/moduleMetadata/list/ExportModulePackageRowAction.js +36 -9
  18. package/dist/components/core/extension/solid-core/moduleMetadata/list/ExportModulePackageRowAction.js.map +1 -1
  19. package/dist/components/core/extension/solid-core/moduleMetadata/list/ExportModulePackageRowAction.tsx +78 -7
  20. package/dist/components/core/extension/solid-core/moduleMetadata/list/ModuleImportListHeaderAction.d.ts +1 -0
  21. package/dist/components/core/extension/solid-core/moduleMetadata/list/ModuleImportListHeaderAction.d.ts.map +1 -1
  22. package/dist/components/core/extension/solid-core/moduleMetadata/list/ModuleImportListHeaderAction.js +1 -1
  23. package/dist/components/core/extension/solid-core/moduleMetadata/list/ModuleImportListHeaderAction.js.map +1 -1
  24. package/dist/components/core/extension/solid-core/moduleMetadata/list/ModuleImportListHeaderAction.tsx +1 -1
  25. package/dist/components/core/extension/solid-core/moduleMetadata/list/RestoreModulePackageRowAction.d.ts +4 -0
  26. package/dist/components/core/extension/solid-core/moduleMetadata/list/RestoreModulePackageRowAction.d.ts.map +1 -0
  27. package/dist/components/core/extension/solid-core/moduleMetadata/list/RestoreModulePackageRowAction.js +131 -0
  28. package/dist/components/core/extension/solid-core/moduleMetadata/list/RestoreModulePackageRowAction.js.map +1 -0
  29. package/dist/components/core/extension/solid-core/moduleMetadata/list/RestoreModulePackageRowAction.tsx +151 -0
  30. package/dist/components/core/extension/solid-core/moduleMetadata/list/UpdateModulePackageRowAction.d.ts +4 -0
  31. package/dist/components/core/extension/solid-core/moduleMetadata/list/UpdateModulePackageRowAction.d.ts.map +1 -0
  32. package/dist/components/core/extension/solid-core/moduleMetadata/list/UpdateModulePackageRowAction.js +13 -0
  33. package/dist/components/core/extension/solid-core/moduleMetadata/list/UpdateModulePackageRowAction.js.map +1 -0
  34. package/dist/components/core/extension/solid-core/moduleMetadata/list/UpdateModulePackageRowAction.tsx +20 -0
  35. package/dist/components/core/form/SolidFormView.d.ts.map +1 -1
  36. package/dist/components/core/form/SolidFormView.js +4 -0
  37. package/dist/components/core/form/SolidFormView.js.map +1 -1
  38. package/dist/components/core/form/SolidFormView.tsx +4 -0
  39. package/dist/components/core/kanban/SolidKanbanView.d.ts.map +1 -1
  40. package/dist/components/core/kanban/SolidKanbanView.js +50 -15
  41. package/dist/components/core/kanban/SolidKanbanView.js.map +1 -1
  42. package/dist/components/core/kanban/SolidKanbanView.tsx +22 -3
  43. package/dist/components/core/list/SolidListView.d.ts.map +1 -1
  44. package/dist/components/core/list/SolidListView.js +16 -3
  45. package/dist/components/core/list/SolidListView.js.map +1 -1
  46. package/dist/components/core/list/SolidListView.tsx +16 -2
  47. package/dist/components/core/list/columns/SolidMediaMultipleColumn.d.ts.map +1 -1
  48. package/dist/components/core/list/columns/SolidMediaMultipleColumn.js +4 -1
  49. package/dist/components/core/list/columns/SolidMediaMultipleColumn.js.map +1 -1
  50. package/dist/components/core/list/columns/SolidMediaMultipleColumn.tsx +4 -1
  51. package/dist/components/core/module/ModulePackageDialog.css +102 -0
  52. package/dist/components/core/module/ModulePackageDialog.d.ts +2 -1
  53. package/dist/components/core/module/ModulePackageDialog.d.ts.map +1 -1
  54. package/dist/components/core/module/ModulePackageDialog.js +216 -68
  55. package/dist/components/core/module/ModulePackageDialog.js.map +1 -1
  56. package/dist/components/core/module/ModulePackageDialog.tsx +356 -76
  57. package/dist/components/core/solid-agent/SolidAgentChat.d.ts.map +1 -1
  58. package/dist/components/core/solid-agent/SolidAgentChat.js +9 -3
  59. package/dist/components/core/solid-agent/SolidAgentChat.js.map +1 -1
  60. package/dist/components/core/solid-agent/SolidAgentChat.tsx +9 -4
  61. package/dist/components/core/solid-agent/SolidAgentMarkdown.d.ts.map +1 -1
  62. package/dist/components/core/solid-agent/SolidAgentMarkdown.js +25 -6
  63. package/dist/components/core/solid-agent/SolidAgentMarkdown.js.map +1 -1
  64. package/dist/components/core/solid-agent/SolidAgentMarkdown.tsx +15 -1
  65. package/dist/components/core/solid-agent/client/agentRuntime.d.ts +5 -0
  66. package/dist/components/core/solid-agent/client/agentRuntime.d.ts.map +1 -1
  67. package/dist/components/core/solid-agent/client/agentRuntime.js +77 -20
  68. package/dist/components/core/solid-agent/client/agentRuntime.js.map +1 -1
  69. package/dist/components/core/solid-agent/client/agentRuntime.ts +29 -1
  70. package/dist/components/core/solid-agent/client/agentSocket.d.ts +5 -1
  71. package/dist/components/core/solid-agent/client/agentSocket.d.ts.map +1 -1
  72. package/dist/components/core/solid-agent/client/agentSocket.js +27 -4
  73. package/dist/components/core/solid-agent/client/agentSocket.js.map +1 -1
  74. package/dist/components/core/solid-agent/client/agentSocket.ts +14 -3
  75. package/dist/components/core/solid-agent/embed/AgentEmbeddingPanel.js +2 -2
  76. package/dist/components/core/solid-agent/embed/AgentEmbeddingPanel.js.map +1 -1
  77. package/dist/components/core/solid-agent/embed/AgentEmbeddingPanel.tsx +5 -5
  78. package/dist/components/core/solid-agent/embed/agentEmbedProtocol.d.ts +2 -0
  79. package/dist/components/core/solid-agent/embed/agentEmbedProtocol.d.ts.map +1 -1
  80. package/dist/components/core/solid-agent/embed/agentEmbedProtocol.js +2 -2
  81. package/dist/components/core/solid-agent/embed/agentEmbedProtocol.js.map +1 -1
  82. package/dist/components/core/solid-agent/embed/agentEmbedProtocol.ts +4 -4
  83. package/dist/components/core/solid-agent/thread/AgentThread.d.ts.map +1 -1
  84. package/dist/components/core/solid-agent/thread/AgentThread.js +61 -26
  85. package/dist/components/core/solid-agent/thread/AgentThread.js.map +1 -1
  86. package/dist/components/core/solid-agent/thread/AgentThread.tsx +74 -40
  87. package/dist/components/core/solid-agent/thread/SolidAgentChatItem.d.ts +2 -1
  88. package/dist/components/core/solid-agent/thread/SolidAgentChatItem.d.ts.map +1 -1
  89. package/dist/components/core/solid-agent/thread/SolidAgentChatItem.js +2 -1
  90. package/dist/components/core/solid-agent/thread/SolidAgentChatItem.js.map +1 -1
  91. package/dist/components/core/solid-agent/thread/SolidAgentChatItem.tsx +3 -1
  92. package/dist/components/core/solid-agent/types.d.ts +3 -0
  93. package/dist/components/core/solid-agent/types.d.ts.map +1 -1
  94. package/dist/components/core/solid-agent/types.js +0 -9
  95. package/dist/components/core/solid-agent/types.js.map +1 -1
  96. package/dist/components/core/solid-agent/types.ts +4 -2
  97. package/dist/components/core/solid-agent/widgets/DefaultAssistantMessageChatWidget.d.ts +1 -1
  98. package/dist/components/core/solid-agent/widgets/DefaultAssistantMessageChatWidget.d.ts.map +1 -1
  99. package/dist/components/core/solid-agent/widgets/DefaultAssistantMessageChatWidget.js +5 -2
  100. package/dist/components/core/solid-agent/widgets/DefaultAssistantMessageChatWidget.js.map +1 -1
  101. package/dist/components/core/solid-agent/widgets/DefaultAssistantMessageChatWidget.tsx +11 -5
  102. package/dist/components/core/solid-agent/widgets/DefaultErrorChatWidget.js +3 -0
  103. package/dist/components/core/solid-agent/widgets/DefaultErrorChatWidget.js.map +1 -1
  104. package/dist/components/core/solid-agent/widgets/DefaultErrorChatWidget.tsx +4 -0
  105. package/dist/components/core/solid-agent/widgets/DefaultNoticeChatWidget.js +3 -0
  106. package/dist/components/core/solid-agent/widgets/DefaultNoticeChatWidget.js.map +1 -1
  107. package/dist/components/core/solid-agent/widgets/DefaultNoticeChatWidget.tsx +4 -0
  108. package/dist/components/core/solid-agent/widgets/DefaultThinkingChatWidget.js +3 -0
  109. package/dist/components/core/solid-agent/widgets/DefaultThinkingChatWidget.js.map +1 -1
  110. package/dist/components/core/solid-agent/widgets/DefaultThinkingChatWidget.tsx +4 -0
  111. package/dist/components/core/solid-agent/widgets/DefaultToolCallChatWidget.js +3 -0
  112. package/dist/components/core/solid-agent/widgets/DefaultToolCallChatWidget.js.map +1 -1
  113. package/dist/components/core/solid-agent/widgets/DefaultToolCallChatWidget.tsx +4 -0
  114. package/dist/components/core/solid-agent/widgets/DefaultUnknownChatWidget.js +3 -0
  115. package/dist/components/core/solid-agent/widgets/DefaultUnknownChatWidget.js.map +1 -1
  116. package/dist/components/core/solid-agent/widgets/DefaultUnknownChatWidget.tsx +4 -0
  117. package/dist/components/core/solid-agent/widgets/DefaultUserMessageChatWidget.js +3 -0
  118. package/dist/components/core/solid-agent/widgets/DefaultUserMessageChatWidget.js.map +1 -1
  119. package/dist/components/core/solid-agent/widgets/DefaultUserMessageChatWidget.tsx +4 -0
  120. package/dist/components/core/solid-agent/widgets/SolidChecklistChatWidget.js +3 -0
  121. package/dist/components/core/solid-agent/widgets/SolidChecklistChatWidget.js.map +1 -1
  122. package/dist/components/core/solid-agent/widgets/SolidChecklistChatWidget.tsx +4 -0
  123. package/dist/components/core/solid-agent/widgets/SolidCodeChatWidget.js +3 -0
  124. package/dist/components/core/solid-agent/widgets/SolidCodeChatWidget.js.map +1 -1
  125. package/dist/components/core/solid-agent/widgets/SolidCodeChatWidget.tsx +4 -0
  126. package/dist/components/core/solid-agent/widgets/SolidDiffListChatWidget.js +3 -0
  127. package/dist/components/core/solid-agent/widgets/SolidDiffListChatWidget.js.map +1 -1
  128. package/dist/components/core/solid-agent/widgets/SolidDiffListChatWidget.tsx +4 -0
  129. package/dist/components/core/solid-agent/widgets/SolidGalleryChatWidget.js +19 -0
  130. package/dist/components/core/solid-agent/widgets/SolidGalleryChatWidget.js.map +1 -1
  131. package/dist/components/core/solid-agent/widgets/SolidGalleryChatWidget.tsx +20 -0
  132. package/dist/components/core/solid-agent/widgets/SolidJsonChatWidget.js +3 -0
  133. package/dist/components/core/solid-agent/widgets/SolidJsonChatWidget.js.map +1 -1
  134. package/dist/components/core/solid-agent/widgets/SolidJsonChatWidget.tsx +4 -0
  135. package/dist/components/core/solid-agent/widgets/SolidLinkCardChatWidget.js +3 -0
  136. package/dist/components/core/solid-agent/widgets/SolidLinkCardChatWidget.js.map +1 -1
  137. package/dist/components/core/solid-agent/widgets/SolidLinkCardChatWidget.tsx +4 -0
  138. package/dist/components/core/solid-agent/widgets/SolidMarkdownChatWidget.js +3 -0
  139. package/dist/components/core/solid-agent/widgets/SolidMarkdownChatWidget.js.map +1 -1
  140. package/dist/components/core/solid-agent/widgets/SolidMarkdownChatWidget.tsx +4 -0
  141. package/dist/components/core/solid-agent/widgets/SolidProgressChatWidget.js +3 -0
  142. package/dist/components/core/solid-agent/widgets/SolidProgressChatWidget.js.map +1 -1
  143. package/dist/components/core/solid-agent/widgets/SolidProgressChatWidget.tsx +4 -0
  144. package/dist/components/core/solid-agent/widgets/SolidQuestionChatWidget.js +3 -0
  145. package/dist/components/core/solid-agent/widgets/SolidQuestionChatWidget.js.map +1 -1
  146. package/dist/components/core/solid-agent/widgets/SolidQuestionChatWidget.tsx +4 -0
  147. package/dist/components/core/solid-agent/widgets/SolidStatusChatWidget.js +3 -0
  148. package/dist/components/core/solid-agent/widgets/SolidStatusChatWidget.js.map +1 -1
  149. package/dist/components/core/solid-agent/widgets/SolidStatusChatWidget.tsx +4 -0
  150. package/dist/components/core/solid-agent/widgets/SolidTableChatWidget.js +3 -0
  151. package/dist/components/core/solid-agent/widgets/SolidTableChatWidget.js.map +1 -1
  152. package/dist/components/core/solid-agent/widgets/SolidTableChatWidget.tsx +4 -0
  153. package/dist/components/core/solid-agent/widgets/SolidToolActivityChatWidget.js +3 -0
  154. package/dist/components/core/solid-agent/widgets/SolidToolActivityChatWidget.js.map +1 -1
  155. package/dist/components/core/solid-agent/widgets/SolidToolActivityChatWidget.tsx +4 -0
  156. package/dist/components/core/solid-agent/widgets/solidChatWidgets.module.css +9 -1
  157. package/dist/components/core/users/CreateUser.d.ts.map +1 -1
  158. package/dist/components/core/users/CreateUser.js +23 -8
  159. package/dist/components/core/users/CreateUser.js.map +1 -1
  160. package/dist/components/core/users/CreateUser.tsx +10 -6
  161. package/dist/components/layout/AdminTopHeader.js +2 -2
  162. package/dist/components/layout/AdminTopHeader.js.map +1 -1
  163. package/dist/components/layout/AdminTopHeader.tsx +2 -2
  164. package/dist/components/layout/AppSidebar.d.ts.map +1 -1
  165. package/dist/components/layout/AppSidebar.js +21 -5
  166. package/dist/components/layout/AppSidebar.js.map +1 -1
  167. package/dist/components/layout/AppSidebar.tsx +24 -6
  168. package/dist/components/layout/SolidAiStudioLayout.d.ts.map +1 -1
  169. package/dist/components/layout/SolidAiStudioLayout.js +3 -4
  170. package/dist/components/layout/SolidAiStudioLayout.js.map +1 -1
  171. package/dist/components/layout/SolidAiStudioLayout.tsx +3 -4
  172. package/dist/components/layout/user-profile-menu.js +10 -10
  173. package/dist/components/layout/user-profile-menu.js.map +1 -1
  174. package/dist/components/layout/user-profile-menu.tsx +3 -3
  175. package/dist/components/shad-cn-ui/SolidLightbox.d.ts +2 -1
  176. package/dist/components/shad-cn-ui/SolidLightbox.d.ts.map +1 -1
  177. package/dist/components/shad-cn-ui/SolidLightbox.js +11 -4
  178. package/dist/components/shad-cn-ui/SolidLightbox.js.map +1 -1
  179. package/dist/components/shad-cn-ui/SolidLightbox.tsx +14 -1
  180. package/dist/helpers/modelViewPersistence.d.ts +2 -0
  181. package/dist/helpers/modelViewPersistence.d.ts.map +1 -1
  182. package/dist/helpers/modelViewPersistence.js +72 -0
  183. package/dist/helpers/modelViewPersistence.js.map +1 -1
  184. package/dist/helpers/modelViewPersistence.ts +79 -0
  185. package/dist/helpers/registry.d.ts +6 -2
  186. package/dist/helpers/registry.d.ts.map +1 -1
  187. package/dist/helpers/registry.js +68 -3
  188. package/dist/helpers/registry.js.map +1 -1
  189. package/dist/helpers/registry.ts +62 -4
  190. package/dist/hooks/useModelsDevModels.d.ts +43 -0
  191. package/dist/hooks/useModelsDevModels.d.ts.map +1 -0
  192. package/dist/hooks/useModelsDevModels.js +81 -0
  193. package/dist/hooks/useModelsDevModels.js.map +1 -0
  194. package/dist/hooks/useModelsDevModels.ts +106 -0
  195. package/dist/hooks/useRouter.d.ts.map +1 -1
  196. package/dist/hooks/useRouter.js +3 -2
  197. package/dist/hooks/useRouter.js.map +1 -1
  198. package/dist/hooks/useRouter.ts +3 -2
  199. package/dist/index.d.ts +2 -2
  200. package/dist/index.d.ts.map +1 -1
  201. package/dist/index.js +1 -1
  202. package/dist/index.js.map +1 -1
  203. package/dist/index.ts +4 -1
  204. package/dist/modules/solidUiModule.d.ts +3 -2
  205. package/dist/modules/solidUiModule.d.ts.map +1 -1
  206. package/dist/modules/solidUiModule.js +1 -1
  207. package/dist/modules/solidUiModule.js.map +1 -1
  208. package/dist/modules/solidUiModule.ts +5 -1
  209. package/dist/redux/api/moduleApi.d.ts +12 -2
  210. package/dist/redux/api/moduleApi.d.ts.map +1 -1
  211. package/dist/redux/api/moduleApi.js +33 -3
  212. package/dist/redux/api/moduleApi.js.map +1 -1
  213. package/dist/redux/api/moduleApi.ts +17 -2
  214. package/dist/redux/api/solidChatterMessageApi.d.ts +3 -1
  215. package/dist/redux/api/solidChatterMessageApi.d.ts.map +1 -1
  216. package/dist/redux/api/solidChatterMessageApi.js +9 -1
  217. package/dist/redux/api/solidChatterMessageApi.js.map +1 -1
  218. package/dist/redux/api/solidChatterMessageApi.ts +9 -1
  219. package/dist/redux/store/defaultStoreConfig.d.ts +9 -1
  220. package/dist/redux/store/defaultStoreConfig.d.ts.map +1 -1
  221. package/dist/resources/globals.css +30 -0
  222. package/dist/resources/solid-custom.css +10 -6
  223. package/dist/resources/solid-tailwind-generated.css +1 -1
  224. package/dist/routes/AppEventListener.js +1 -1
  225. package/dist/routes/AppEventListener.js.map +1 -1
  226. package/dist/routes/AppEventListener.tsx +1 -1
  227. package/dist/routes/pages/admin/core/AgentPersonaHistory.css +130 -0
  228. package/dist/routes/pages/admin/core/AgentPersonaHistory.d.ts +7 -0
  229. package/dist/routes/pages/admin/core/AgentPersonaHistory.d.ts.map +1 -0
  230. package/dist/routes/pages/admin/core/AgentPersonaHistory.js +228 -0
  231. package/dist/routes/pages/admin/core/AgentPersonaHistory.js.map +1 -0
  232. package/dist/routes/pages/admin/core/AgentPersonaHistory.tsx +234 -0
  233. package/dist/routes/pages/admin/core/AgentRegistryEditorPage.css +6 -14
  234. package/dist/routes/pages/admin/core/AgentRegistryEditorPage.d.ts.map +1 -1
  235. package/dist/routes/pages/admin/core/AgentRegistryEditorPage.js +186 -146
  236. package/dist/routes/pages/admin/core/AgentRegistryEditorPage.js.map +1 -1
  237. package/dist/routes/pages/admin/core/AgentRegistryEditorPage.tsx +170 -118
  238. package/dist/routes/pages/admin/core/ArchivedChatterMessagesPage.d.ts +2 -0
  239. package/dist/routes/pages/admin/core/ArchivedChatterMessagesPage.d.ts.map +1 -0
  240. package/dist/routes/pages/admin/core/ArchivedChatterMessagesPage.js +108 -0
  241. package/dist/routes/pages/admin/core/ArchivedChatterMessagesPage.js.map +1 -0
  242. package/dist/routes/pages/admin/core/ArchivedChatterMessagesPage.tsx +96 -0
  243. package/dist/routes/solidRoutes.d.ts.map +1 -1
  244. package/dist/routes/solidRoutes.js +2 -0
  245. package/dist/routes/solidRoutes.js.map +1 -1
  246. package/dist/routes/solidRoutes.tsx +2 -0
  247. package/dist/types/extension-registry.d.ts +12 -0
  248. package/dist/types/extension-registry.d.ts.map +1 -1
  249. package/dist/types/extension-registry.js.map +1 -1
  250. package/dist/types/extension-registry.ts +15 -0
  251. package/dist/types/solid-core.d.ts +2 -0
  252. package/package.json +2 -1
@@ -0,0 +1,131 @@
1
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
2
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
3
+ return new (P || (P = Promise))(function (resolve, reject) {
4
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
5
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
6
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
7
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
8
+ });
9
+ };
10
+ var __generator = (this && this.__generator) || function (thisArg, body) {
11
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
12
+ return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
13
+ function verb(n) { return function (v) { return step([n, v]); }; }
14
+ function step(op) {
15
+ if (f) throw new TypeError("Generator is already executing.");
16
+ while (g && (g = 0, op[0] && (_ = 0)), _) try {
17
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
18
+ if (y = 0, t) op = [op[0] & 2, t.value];
19
+ switch (op[0]) {
20
+ case 0: case 1: t = op; break;
21
+ case 4: _.label++; return { value: op[1], done: false };
22
+ case 5: _.label++; y = op[1]; op = [0]; continue;
23
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
24
+ default:
25
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
26
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
27
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
28
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
29
+ if (t[2]) _.ops.pop();
30
+ _.trys.pop(); continue;
31
+ }
32
+ op = body.call(thisArg, _);
33
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
34
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
35
+ }
36
+ };
37
+ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
38
+ import { useEffect, useState } from "react";
39
+ import { useDispatch } from "react-redux";
40
+ import { History, TriangleAlert } from "lucide-react";
41
+ import { SolidCircularLoader } from "../../../../../../components/core/common/SolidLoaders/SolidCircularLoader";
42
+ import { useLazyGetLatestModulePackageBackupQuery, useRestoreModulePackageImportMutation, } from "../../../../../../redux/api/moduleApi";
43
+ import { closePopup } from "../../../../../../redux/features/popupSlice";
44
+ import { showToast } from "../../../../../../redux/features/toastSlice";
45
+ import { SolidButton } from "../../../../../shad-cn-ui";
46
+ var formatVersion = function (version) { return (version ? "v".concat(version) : "unversioned"); };
47
+ var RestoreModulePackageRowAction = function (event) {
48
+ var _a, _b, _c, _d, _e, _f;
49
+ var dispatch = useDispatch();
50
+ var moduleName = String(((_a = event === null || event === void 0 ? void 0 : event.rowData) === null || _a === void 0 ? void 0 : _a.name) || ((_b = event === null || event === void 0 ? void 0 : event.rowData) === null || _b === void 0 ? void 0 : _b.id) || "").trim();
51
+ var moduleDisplayName = String(((_c = event === null || event === void 0 ? void 0 : event.rowData) === null || _c === void 0 ? void 0 : _c.displayName) || moduleName || "this module").trim();
52
+ var fetchLatestBackup = useLazyGetLatestModulePackageBackupQuery()[0];
53
+ var restoreModulePackageImport = useRestoreModulePackageImportMutation()[0];
54
+ var _g = useState(null), backup = _g[0], setBackup = _g[1];
55
+ var _h = useState(true), isLoading = _h[0], setIsLoading = _h[1];
56
+ var _j = useState(false), isRestoring = _j[0], setIsRestoring = _j[1];
57
+ var _k = useState(null), errorState = _k[0], setErrorState = _k[1];
58
+ useEffect(function () {
59
+ var cancelled = false;
60
+ var load = function () { return __awaiter(void 0, void 0, void 0, function () {
61
+ var response, error_1;
62
+ var _a;
63
+ return __generator(this, function (_b) {
64
+ switch (_b.label) {
65
+ case 0:
66
+ _b.trys.push([0, 2, 3, 4]);
67
+ return [4 /*yield*/, fetchLatestBackup({ moduleName: moduleName }, false).unwrap()];
68
+ case 1:
69
+ response = _b.sent();
70
+ if (!cancelled)
71
+ setBackup(response !== null && response !== void 0 ? response : null);
72
+ return [3 /*break*/, 4];
73
+ case 2:
74
+ error_1 = _b.sent();
75
+ if (!cancelled)
76
+ setErrorState(String(((_a = error_1 === null || error_1 === void 0 ? void 0 : error_1.data) === null || _a === void 0 ? void 0 : _a.message) || (error_1 === null || error_1 === void 0 ? void 0 : error_1.message) || "Unable to look up backups for this module."));
77
+ return [3 /*break*/, 4];
78
+ case 3:
79
+ if (!cancelled)
80
+ setIsLoading(false);
81
+ return [7 /*endfinally*/];
82
+ case 4: return [2 /*return*/];
83
+ }
84
+ });
85
+ }); };
86
+ void load();
87
+ return function () {
88
+ cancelled = true;
89
+ };
90
+ }, [fetchLatestBackup, moduleName]);
91
+ var handleRestore = function () { return __awaiter(void 0, void 0, void 0, function () {
92
+ var error_2, detail;
93
+ var _a, _b;
94
+ return __generator(this, function (_c) {
95
+ switch (_c.label) {
96
+ case 0:
97
+ if (!(backup === null || backup === void 0 ? void 0 : backup.transactionKey))
98
+ return [2 /*return*/];
99
+ _c.label = 1;
100
+ case 1:
101
+ _c.trys.push([1, 3, , 4]);
102
+ setIsRestoring(true);
103
+ setErrorState(null);
104
+ return [4 /*yield*/, restoreModulePackageImport({ transactionKey: backup.transactionKey }).unwrap()];
105
+ case 2:
106
+ _c.sent();
107
+ dispatch(showToast({
108
+ severity: "success",
109
+ summary: "Previous version restored",
110
+ detail: "".concat(moduleDisplayName, " ").concat(formatVersion((_a = backup.backup) === null || _a === void 0 ? void 0 : _a.version), " was put back. Wait for the UI and API to restart, then refresh this module list page to continue with build and seed."),
111
+ }));
112
+ dispatch(closePopup());
113
+ return [3 /*break*/, 4];
114
+ case 3:
115
+ error_2 = _c.sent();
116
+ detail = String(((_b = error_2 === null || error_2 === void 0 ? void 0 : error_2.data) === null || _b === void 0 ? void 0 : _b.message) || (error_2 === null || error_2 === void 0 ? void 0 : error_2.message) || "Unable to restore the previous version.");
117
+ setErrorState(detail);
118
+ dispatch(showToast({ severity: "error", summary: "Restore failed", detail: detail }));
119
+ setIsRestoring(false);
120
+ return [3 /*break*/, 4];
121
+ case 4: return [2 /*return*/];
122
+ }
123
+ });
124
+ }); };
125
+ if (isLoading || isRestoring) {
126
+ return (_jsxs("div", { className: "solid-generate-code-popup", children: [_jsx("div", { className: "solid-filter-dialog-head solid-generate-code-popup__head", children: _jsx("div", { children: _jsx("h3", { className: "solid-filter-dialog-title", children: "Restore Previous Version" }) }) }), _jsx("div", { className: "solid-filter-dialog-sep" }), _jsxs("div", { className: "solid-filter-dialog-body solid-generate-code-popup__body solid-generate-code-popup__body--loading", children: [_jsx(SolidCircularLoader, {}), _jsx("p", { className: "solid-generate-code-popup__loading-title", children: isRestoring ? "Restoring..." : "Looking for a backup..." })] })] }));
127
+ }
128
+ return (_jsxs("div", { className: "solid-generate-code-popup", children: [_jsx("div", { className: "solid-filter-dialog-head solid-generate-code-popup__head", children: _jsxs("div", { children: [_jsx("h3", { className: "solid-filter-dialog-title", children: "Restore Previous Version" }), _jsx("p", { className: "solid-filter-dialog-subtitle m-0", children: "Put back the module folders from before the last update." })] }) }), _jsx("div", { className: "solid-filter-dialog-sep" }), _jsxs("div", { className: "solid-filter-dialog-body solid-generate-code-popup__body", children: [backup ? (_jsxs(_Fragment, { children: [_jsxs("p", { className: "solid-generate-code-popup__intro", children: ["Restore ", _jsx("strong", { children: moduleDisplayName }), " from ", _jsx("strong", { children: formatVersion(backup.currentVersion) }), " back to", " ", _jsx("strong", { children: formatVersion((_d = backup.backup) === null || _d === void 0 ? void 0 : _d.version) }), ". The backup was taken on", " ", ((_e = backup.backup) === null || _e === void 0 ? void 0 : _e.createdAt) ? new Date(backup.backup.createdAt).toLocaleString() : "an earlier update", "."] }), _jsxs("div", { className: "solid-generate-code-popup__panel", children: [_jsxs("div", { className: "solid-generate-code-popup__panel-title", children: [_jsx(History, { size: 15 }), _jsx("span", { children: "What happens" })] }), _jsxs("ul", { className: "solid-generate-code-popup__list", children: [_jsx("li", { children: "The solid-api and solid-ui folders for this module are replaced with the backup." }), _jsx("li", { children: "The UI and API restart. Refresh this page afterwards and continue with build and seed; prune is turned on for that seed." })] })] }), _jsxs("div", { className: "solid-generate-code-popup__notice is-warning", children: [_jsx(TriangleAlert, { size: 16 }), _jsx("span", { children: "When the API restarts, the database schema is synced to the restored code: columns added by the newer version are dropped along with their data, and tables it added are left in place. Back up the database first if this module has data you care about." })] })] })) : (_jsxs("p", { className: "solid-generate-code-popup__intro", children: ["There is no backup for ", _jsx("strong", { children: moduleDisplayName }), ". A backup is taken each time the module is updated from a package."] })), errorState ? (_jsxs("div", { className: "solid-generate-code-popup__notice is-warning", children: [_jsx(TriangleAlert, { size: 16 }), _jsx("span", { children: errorState })] })) : null, _jsxs("div", { className: "solid-generate-code-popup__actions", children: [backup ? (_jsxs(SolidButton, { size: "small", variant: "destructive", leftIcon: _jsx(History, { size: 14 }), onClick: handleRestore, children: ["Restore ", formatVersion((_f = backup.backup) === null || _f === void 0 ? void 0 : _f.version)] })) : null, _jsx(SolidButton, { size: "small", variant: "outline", onClick: function () { return dispatch(closePopup()); }, children: backup ? "Cancel" : "Close" })] })] })] }));
129
+ };
130
+ export default RestoreModulePackageRowAction;
131
+ //# sourceMappingURL=RestoreModulePackageRowAction.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RestoreModulePackageRowAction.js","sourceRoot":"","sources":["../../../../../../../src/components/core/extension/solid-core/moduleMetadata/list/RestoreModulePackageRowAction.tsx"],"names":[],"mappings":"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","sourcesContent":["import { useEffect, useState } from \"react\";\nimport { useDispatch } from \"react-redux\";\nimport { History, TriangleAlert } from \"lucide-react\";\nimport { SolidCircularLoader } from \"../../../../../../components/core/common/SolidLoaders/SolidCircularLoader\";\nimport {\n useLazyGetLatestModulePackageBackupQuery,\n useRestoreModulePackageImportMutation,\n} from \"../../../../../../redux/api/moduleApi\";\nimport { closePopup } from \"../../../../../../redux/features/popupSlice\";\nimport { showToast } from \"../../../../../../redux/features/toastSlice\";\nimport { SolidListRowdataDynamicFunctionProps } from \"../../../../../../types/solid-core\";\nimport { SolidButton } from \"../../../../../shad-cn-ui\";\n\nconst formatVersion = (version?: string | null) => (version ? `v${version}` : \"unversioned\");\n\nconst RestoreModulePackageRowAction = (event: SolidListRowdataDynamicFunctionProps) => {\n const dispatch = useDispatch();\n const moduleName = String(event?.rowData?.name || event?.rowData?.id || \"\").trim();\n const moduleDisplayName = String(event?.rowData?.displayName || moduleName || \"this module\").trim();\n\n const [fetchLatestBackup] = useLazyGetLatestModulePackageBackupQuery();\n const [restoreModulePackageImport] = useRestoreModulePackageImportMutation();\n const [backup, setBackup] = useState<any | null>(null);\n const [isLoading, setIsLoading] = useState(true);\n const [isRestoring, setIsRestoring] = useState(false);\n const [errorState, setErrorState] = useState<string | null>(null);\n\n useEffect(() => {\n let cancelled = false;\n const load = async () => {\n try {\n const response = await fetchLatestBackup({ moduleName }, false).unwrap();\n if (!cancelled) setBackup(response ?? null);\n } catch (error: any) {\n if (!cancelled) setErrorState(String(error?.data?.message || error?.message || \"Unable to look up backups for this module.\"));\n } finally {\n if (!cancelled) setIsLoading(false);\n }\n };\n void load();\n return () => {\n cancelled = true;\n };\n }, [fetchLatestBackup, moduleName]);\n\n const handleRestore = async () => {\n if (!backup?.transactionKey) return;\n\n try {\n setIsRestoring(true);\n setErrorState(null);\n await restoreModulePackageImport({ transactionKey: backup.transactionKey }).unwrap();\n dispatch(\n showToast({\n severity: \"success\",\n summary: \"Previous version restored\",\n detail: `${moduleDisplayName} ${formatVersion(backup.backup?.version)} was put back. Wait for the UI and API to restart, then refresh this module list page to continue with build and seed.`,\n }),\n );\n dispatch(closePopup());\n } catch (error: any) {\n const detail = String(error?.data?.message || error?.message || \"Unable to restore the previous version.\");\n setErrorState(detail);\n dispatch(showToast({ severity: \"error\", summary: \"Restore failed\", detail }));\n setIsRestoring(false);\n }\n };\n\n if (isLoading || isRestoring) {\n return (\n <div className=\"solid-generate-code-popup\">\n <div className=\"solid-filter-dialog-head solid-generate-code-popup__head\">\n <div>\n <h3 className=\"solid-filter-dialog-title\">Restore Previous Version</h3>\n </div>\n </div>\n <div className=\"solid-filter-dialog-sep\" />\n <div className=\"solid-filter-dialog-body solid-generate-code-popup__body solid-generate-code-popup__body--loading\">\n <SolidCircularLoader />\n <p className=\"solid-generate-code-popup__loading-title\">{isRestoring ? \"Restoring...\" : \"Looking for a backup...\"}</p>\n </div>\n </div>\n );\n }\n\n return (\n <div className=\"solid-generate-code-popup\">\n <div className=\"solid-filter-dialog-head solid-generate-code-popup__head\">\n <div>\n <h3 className=\"solid-filter-dialog-title\">Restore Previous Version</h3>\n <p className=\"solid-filter-dialog-subtitle m-0\">Put back the module folders from before the last update.</p>\n </div>\n </div>\n <div className=\"solid-filter-dialog-sep\" />\n <div className=\"solid-filter-dialog-body solid-generate-code-popup__body\">\n {backup ? (\n <>\n <p className=\"solid-generate-code-popup__intro\">\n Restore <strong>{moduleDisplayName}</strong> from <strong>{formatVersion(backup.currentVersion)}</strong> back to{\" \"}\n <strong>{formatVersion(backup.backup?.version)}</strong>. The backup was taken on{\" \"}\n {backup.backup?.createdAt ? new Date(backup.backup.createdAt).toLocaleString() : \"an earlier update\"}.\n </p>\n\n <div className=\"solid-generate-code-popup__panel\">\n <div className=\"solid-generate-code-popup__panel-title\">\n <History size={15} />\n <span>What happens</span>\n </div>\n <ul className=\"solid-generate-code-popup__list\">\n <li>The solid-api and solid-ui folders for this module are replaced with the backup.</li>\n <li>The UI and API restart. Refresh this page afterwards and continue with build and seed; prune is turned on for that seed.</li>\n </ul>\n </div>\n\n <div className=\"solid-generate-code-popup__notice is-warning\">\n <TriangleAlert size={16} />\n <span>\n When the API restarts, the database schema is synced to the restored code: columns added by the newer version are dropped\n along with their data, and tables it added are left in place. Back up the database first if this module has data you care about.\n </span>\n </div>\n </>\n ) : (\n <p className=\"solid-generate-code-popup__intro\">\n There is no backup for <strong>{moduleDisplayName}</strong>. A backup is taken each time the module is updated from a package.\n </p>\n )}\n\n {errorState ? (\n <div className=\"solid-generate-code-popup__notice is-warning\">\n <TriangleAlert size={16} />\n <span>{errorState}</span>\n </div>\n ) : null}\n\n <div className=\"solid-generate-code-popup__actions\">\n {backup ? (\n <SolidButton size=\"small\" variant=\"destructive\" leftIcon={<History size={14} />} onClick={handleRestore}>\n Restore {formatVersion(backup.backup?.version)}\n </SolidButton>\n ) : null}\n <SolidButton size=\"small\" variant=\"outline\" onClick={() => dispatch(closePopup())}>\n {backup ? \"Cancel\" : \"Close\"}\n </SolidButton>\n </div>\n </div>\n </div>\n );\n};\n\nexport default RestoreModulePackageRowAction;\n"]}
@@ -0,0 +1,151 @@
1
+ import { useEffect, useState } from "react";
2
+ import { useDispatch } from "react-redux";
3
+ import { History, TriangleAlert } from "lucide-react";
4
+ import { SolidCircularLoader } from "../../../../../../components/core/common/SolidLoaders/SolidCircularLoader";
5
+ import {
6
+ useLazyGetLatestModulePackageBackupQuery,
7
+ useRestoreModulePackageImportMutation,
8
+ } from "../../../../../../redux/api/moduleApi";
9
+ import { closePopup } from "../../../../../../redux/features/popupSlice";
10
+ import { showToast } from "../../../../../../redux/features/toastSlice";
11
+ import { SolidListRowdataDynamicFunctionProps } from "../../../../../../types/solid-core";
12
+ import { SolidButton } from "../../../../../shad-cn-ui";
13
+
14
+ const formatVersion = (version?: string | null) => (version ? `v${version}` : "unversioned");
15
+
16
+ const RestoreModulePackageRowAction = (event: SolidListRowdataDynamicFunctionProps) => {
17
+ const dispatch = useDispatch();
18
+ const moduleName = String(event?.rowData?.name || event?.rowData?.id || "").trim();
19
+ const moduleDisplayName = String(event?.rowData?.displayName || moduleName || "this module").trim();
20
+
21
+ const [fetchLatestBackup] = useLazyGetLatestModulePackageBackupQuery();
22
+ const [restoreModulePackageImport] = useRestoreModulePackageImportMutation();
23
+ const [backup, setBackup] = useState<any | null>(null);
24
+ const [isLoading, setIsLoading] = useState(true);
25
+ const [isRestoring, setIsRestoring] = useState(false);
26
+ const [errorState, setErrorState] = useState<string | null>(null);
27
+
28
+ useEffect(() => {
29
+ let cancelled = false;
30
+ const load = async () => {
31
+ try {
32
+ const response = await fetchLatestBackup({ moduleName }, false).unwrap();
33
+ if (!cancelled) setBackup(response ?? null);
34
+ } catch (error: any) {
35
+ if (!cancelled) setErrorState(String(error?.data?.message || error?.message || "Unable to look up backups for this module."));
36
+ } finally {
37
+ if (!cancelled) setIsLoading(false);
38
+ }
39
+ };
40
+ void load();
41
+ return () => {
42
+ cancelled = true;
43
+ };
44
+ }, [fetchLatestBackup, moduleName]);
45
+
46
+ const handleRestore = async () => {
47
+ if (!backup?.transactionKey) return;
48
+
49
+ try {
50
+ setIsRestoring(true);
51
+ setErrorState(null);
52
+ await restoreModulePackageImport({ transactionKey: backup.transactionKey }).unwrap();
53
+ dispatch(
54
+ showToast({
55
+ severity: "success",
56
+ summary: "Previous version restored",
57
+ detail: `${moduleDisplayName} ${formatVersion(backup.backup?.version)} was put back. Wait for the UI and API to restart, then refresh this module list page to continue with build and seed.`,
58
+ }),
59
+ );
60
+ dispatch(closePopup());
61
+ } catch (error: any) {
62
+ const detail = String(error?.data?.message || error?.message || "Unable to restore the previous version.");
63
+ setErrorState(detail);
64
+ dispatch(showToast({ severity: "error", summary: "Restore failed", detail }));
65
+ setIsRestoring(false);
66
+ }
67
+ };
68
+
69
+ if (isLoading || isRestoring) {
70
+ return (
71
+ <div className="solid-generate-code-popup">
72
+ <div className="solid-filter-dialog-head solid-generate-code-popup__head">
73
+ <div>
74
+ <h3 className="solid-filter-dialog-title">Restore Previous Version</h3>
75
+ </div>
76
+ </div>
77
+ <div className="solid-filter-dialog-sep" />
78
+ <div className="solid-filter-dialog-body solid-generate-code-popup__body solid-generate-code-popup__body--loading">
79
+ <SolidCircularLoader />
80
+ <p className="solid-generate-code-popup__loading-title">{isRestoring ? "Restoring..." : "Looking for a backup..."}</p>
81
+ </div>
82
+ </div>
83
+ );
84
+ }
85
+
86
+ return (
87
+ <div className="solid-generate-code-popup">
88
+ <div className="solid-filter-dialog-head solid-generate-code-popup__head">
89
+ <div>
90
+ <h3 className="solid-filter-dialog-title">Restore Previous Version</h3>
91
+ <p className="solid-filter-dialog-subtitle m-0">Put back the module folders from before the last update.</p>
92
+ </div>
93
+ </div>
94
+ <div className="solid-filter-dialog-sep" />
95
+ <div className="solid-filter-dialog-body solid-generate-code-popup__body">
96
+ {backup ? (
97
+ <>
98
+ <p className="solid-generate-code-popup__intro">
99
+ Restore <strong>{moduleDisplayName}</strong> from <strong>{formatVersion(backup.currentVersion)}</strong> back to{" "}
100
+ <strong>{formatVersion(backup.backup?.version)}</strong>. The backup was taken on{" "}
101
+ {backup.backup?.createdAt ? new Date(backup.backup.createdAt).toLocaleString() : "an earlier update"}.
102
+ </p>
103
+
104
+ <div className="solid-generate-code-popup__panel">
105
+ <div className="solid-generate-code-popup__panel-title">
106
+ <History size={15} />
107
+ <span>What happens</span>
108
+ </div>
109
+ <ul className="solid-generate-code-popup__list">
110
+ <li>The solid-api and solid-ui folders for this module are replaced with the backup.</li>
111
+ <li>The UI and API restart. Refresh this page afterwards and continue with build and seed; prune is turned on for that seed.</li>
112
+ </ul>
113
+ </div>
114
+
115
+ <div className="solid-generate-code-popup__notice is-warning">
116
+ <TriangleAlert size={16} />
117
+ <span>
118
+ When the API restarts, the database schema is synced to the restored code: columns added by the newer version are dropped
119
+ along with their data, and tables it added are left in place. Back up the database first if this module has data you care about.
120
+ </span>
121
+ </div>
122
+ </>
123
+ ) : (
124
+ <p className="solid-generate-code-popup__intro">
125
+ There is no backup for <strong>{moduleDisplayName}</strong>. A backup is taken each time the module is updated from a package.
126
+ </p>
127
+ )}
128
+
129
+ {errorState ? (
130
+ <div className="solid-generate-code-popup__notice is-warning">
131
+ <TriangleAlert size={16} />
132
+ <span>{errorState}</span>
133
+ </div>
134
+ ) : null}
135
+
136
+ <div className="solid-generate-code-popup__actions">
137
+ {backup ? (
138
+ <SolidButton size="small" variant="destructive" leftIcon={<History size={14} />} onClick={handleRestore}>
139
+ Restore {formatVersion(backup.backup?.version)}
140
+ </SolidButton>
141
+ ) : null}
142
+ <SolidButton size="small" variant="outline" onClick={() => dispatch(closePopup())}>
143
+ {backup ? "Cancel" : "Close"}
144
+ </SolidButton>
145
+ </div>
146
+ </div>
147
+ </div>
148
+ );
149
+ };
150
+
151
+ export default RestoreModulePackageRowAction;
@@ -0,0 +1,4 @@
1
+ import { SolidListRowdataDynamicFunctionProps } from "../../../../../../types/solid-core";
2
+ declare const UpdateModulePackageRowAction: (event: SolidListRowdataDynamicFunctionProps) => import("react/jsx-runtime").JSX.Element;
3
+ export default UpdateModulePackageRowAction;
4
+ //# sourceMappingURL=UpdateModulePackageRowAction.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"UpdateModulePackageRowAction.d.ts","sourceRoot":"","sources":["../../../../../../../src/components/core/extension/solid-core/moduleMetadata/list/UpdateModulePackageRowAction.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,oCAAoC,EAAE,MAAM,oCAAoC,CAAC;AAI1F,QAAA,MAAM,4BAA4B,UAAW,oCAAoC,4CAWhF,CAAC;AAEF,eAAe,4BAA4B,CAAC"}
@@ -0,0 +1,13 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { useDispatch } from "react-redux";
3
+ import { closePopup } from "../../../../../../redux/features/popupSlice";
4
+ import { ModulePackageImportContent } from "../../../../module/ModulePackageDialog";
5
+ import { refreshMatchingListViews } from "./ModuleImportListHeaderAction";
6
+ var UpdateModulePackageRowAction = function (event) {
7
+ var _a;
8
+ var dispatch = useDispatch();
9
+ var moduleName = String(((_a = event === null || event === void 0 ? void 0 : event.rowData) === null || _a === void 0 ? void 0 : _a.name) || "").trim();
10
+ return (_jsx(ModulePackageImportContent, { targetModuleName: moduleName || null, onClose: function () { return dispatch(closePopup()); }, onImported: function () { var _a, _b; return refreshMatchingListViews((_a = event === null || event === void 0 ? void 0 : event.params) === null || _a === void 0 ? void 0 : _a.moduleName, (_b = event === null || event === void 0 ? void 0 : event.params) === null || _b === void 0 ? void 0 : _b.modelName); } }));
11
+ };
12
+ export default UpdateModulePackageRowAction;
13
+ //# sourceMappingURL=UpdateModulePackageRowAction.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"UpdateModulePackageRowAction.js","sourceRoot":"","sources":["../../../../../../../src/components/core/extension/solid-core/moduleMetadata/list/UpdateModulePackageRowAction.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,EAAE,UAAU,EAAE,MAAM,6CAA6C,CAAC;AAEzE,OAAO,EAAE,0BAA0B,EAAE,MAAM,wCAAwC,CAAC;AACpF,OAAO,EAAE,wBAAwB,EAAE,MAAM,gCAAgC,CAAC;AAE1E,IAAM,4BAA4B,GAAG,UAAC,KAA2C;;IAC/E,IAAM,QAAQ,GAAG,WAAW,EAAE,CAAC;IAC/B,IAAM,UAAU,GAAG,MAAM,CAAC,CAAA,MAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,OAAO,0CAAE,IAAI,KAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;IAE7D,OAAO,CACL,KAAC,0BAA0B,IACzB,gBAAgB,EAAE,UAAU,IAAI,IAAI,EACpC,OAAO,EAAE,cAAM,OAAA,QAAQ,CAAC,UAAU,EAAE,CAAC,EAAtB,CAAsB,EACrC,UAAU,EAAE,0BAAM,OAAA,wBAAwB,CAAC,MAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,MAAM,0CAAE,UAAU,EAAE,MAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,MAAM,0CAAE,SAAS,CAAC,CAAA,EAAA,GAC/F,CACH,CAAC;AACJ,CAAC,CAAC;AAEF,eAAe,4BAA4B,CAAC","sourcesContent":["import { useDispatch } from \"react-redux\";\nimport { closePopup } from \"../../../../../../redux/features/popupSlice\";\nimport { SolidListRowdataDynamicFunctionProps } from \"../../../../../../types/solid-core\";\nimport { ModulePackageImportContent } from \"../../../../module/ModulePackageDialog\";\nimport { refreshMatchingListViews } from \"./ModuleImportListHeaderAction\";\n\nconst UpdateModulePackageRowAction = (event: SolidListRowdataDynamicFunctionProps) => {\n const dispatch = useDispatch();\n const moduleName = String(event?.rowData?.name || \"\").trim();\n\n return (\n <ModulePackageImportContent\n targetModuleName={moduleName || null}\n onClose={() => dispatch(closePopup())}\n onImported={() => refreshMatchingListViews(event?.params?.moduleName, event?.params?.modelName)}\n />\n );\n};\n\nexport default UpdateModulePackageRowAction;\n"]}
@@ -0,0 +1,20 @@
1
+ import { useDispatch } from "react-redux";
2
+ import { closePopup } from "../../../../../../redux/features/popupSlice";
3
+ import { SolidListRowdataDynamicFunctionProps } from "../../../../../../types/solid-core";
4
+ import { ModulePackageImportContent } from "../../../../module/ModulePackageDialog";
5
+ import { refreshMatchingListViews } from "./ModuleImportListHeaderAction";
6
+
7
+ const UpdateModulePackageRowAction = (event: SolidListRowdataDynamicFunctionProps) => {
8
+ const dispatch = useDispatch();
9
+ const moduleName = String(event?.rowData?.name || "").trim();
10
+
11
+ return (
12
+ <ModulePackageImportContent
13
+ targetModuleName={moduleName || null}
14
+ onClose={() => dispatch(closePopup())}
15
+ onImported={() => refreshMatchingListViews(event?.params?.moduleName, event?.params?.modelName)}
16
+ />
17
+ );
18
+ };
19
+
20
+ export default UpdateModulePackageRowAction;
@@ -1 +1 @@
1
- {"version":3,"file":"SolidFormView.d.ts","sourceRoot":"","sources":["../../../../src/components/core/form/SolidFormView.tsx"],"names":[],"mappings":"AA+DA,MAAM,MAAM,kBAAkB,GAAG;IAC7B,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,OAAO,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAC3B,gBAAgB,CAAC,EAAE,GAAG,CAAC;IACvB,mBAAmB,CAAC,EAAE,GAAG,CAAA;IACzB,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,YAAY,CAAC,EAAE,GAAG,CAAC;IACnB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,UAAU,CAAC,EAAE,GAAG,CAAC;IACjB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,kBAAkB,CAAC,EAAE,MAAM,IAAI,CAAC;IAChC,gCAAgC,CAAC,EAAE,OAAO,CAAC;IAC3C,kBAAkB,CAAC,EAAE,OAAO,CAAC;CAChC,CAAC;AA6IF,eAAO,MAAM,uBAAuB,WAAY,GAAG,EAAE,KAAG,GAQvD,CAAA;AACD,eAAO,MAAM,sBAAsB,QAAS,MAAM,uBAAuB,OAAO,MAAM,EAAE,GAAG,CAAC,QAa3F,CAAC;AAkXF,QAAA,MAAM,aAAa,WAAY,kBAAkB,4CA++ChD,CAAC;AAEF,eAAe,aAAa,CAAC"}
1
+ {"version":3,"file":"SolidFormView.d.ts","sourceRoot":"","sources":["../../../../src/components/core/form/SolidFormView.tsx"],"names":[],"mappings":"AA+DA,MAAM,MAAM,kBAAkB,GAAG;IAC7B,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,OAAO,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAC3B,gBAAgB,CAAC,EAAE,GAAG,CAAC;IACvB,mBAAmB,CAAC,EAAE,GAAG,CAAA;IACzB,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,YAAY,CAAC,EAAE,GAAG,CAAC;IACnB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,UAAU,CAAC,EAAE,GAAG,CAAC;IACjB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,kBAAkB,CAAC,EAAE,MAAM,IAAI,CAAC;IAChC,gCAAgC,CAAC,EAAE,OAAO,CAAC;IAC3C,kBAAkB,CAAC,EAAE,OAAO,CAAC;CAChC,CAAC;AA6IF,eAAO,MAAM,uBAAuB,WAAY,GAAG,EAAE,KAAG,GAQvD,CAAA;AACD,eAAO,MAAM,sBAAsB,QAAS,MAAM,uBAAuB,OAAO,MAAM,EAAE,GAAG,CAAC,QAa3F,CAAC;AAkXF,QAAA,MAAM,aAAa,WAAY,kBAAkB,4CAm/ChD,CAAC;AAEF,eAAe,aAAa,CAAC"}
@@ -950,6 +950,10 @@ var SolidFormView = function (params) {
950
950
  case 4: return [4 /*yield*/, updateEntity({ id: +params.id, data: formData_1 }).unwrap()];
951
951
  case 5:
952
952
  result = _p.sent();
953
+ // The audit event is produced by the entity update. Refresh the chatter
954
+ // directly from this save path so the panel does not depend on mutation
955
+ // status transitions to notice the new audit message.
956
+ setRefreshChatterMessage(true);
953
957
  // Keep the current screen in sync with the normalized payload returned by the API
954
958
  // so toggling view/edit after save does not continue showing stale pre-save values.
955
959
  if (result === null || result === void 0 ? void 0 : result.data) {