@manta-eu/react 0.2.0 → 0.3.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 (324) hide show
  1. package/dist/components/channel-icon/index.d.ts +1 -0
  2. package/dist/components/channel-icon/index.d.ts.map +1 -1
  3. package/dist/components/channel-icon/index.js +1 -1
  4. package/dist/components/channel-icon/index.js.map +1 -1
  5. package/dist/components/datastore-management/tree.d.ts +1 -1
  6. package/dist/components/datastore-management/tree.d.ts.map +1 -1
  7. package/dist/components/datastore-management/tree.js +5 -5
  8. package/dist/components/datastore-management/tree.js.map +1 -1
  9. package/dist/components/explain-fact/ExplainFact.js +3 -3
  10. package/dist/components/explain-fact/ExplainFact.js.map +1 -1
  11. package/dist/components/planning/ActioningView.d.ts +1 -2
  12. package/dist/components/planning/ActioningView.d.ts.map +1 -1
  13. package/dist/components/planning/ActioningView.js +19 -44
  14. package/dist/components/planning/ActioningView.js.map +1 -1
  15. package/dist/components/planning/ManualActionCard.d.ts +4 -0
  16. package/dist/components/planning/ManualActionCard.d.ts.map +1 -1
  17. package/dist/components/planning/ManualActionCard.js +7 -5
  18. package/dist/components/planning/ManualActionCard.js.map +1 -1
  19. package/dist/components/planning/ManualActionList.d.ts +4 -0
  20. package/dist/components/planning/ManualActionList.d.ts.map +1 -1
  21. package/dist/components/planning/ManualActionList.js +8 -2
  22. package/dist/components/planning/ManualActionList.js.map +1 -1
  23. package/dist/components/planning/actioning-view-utils.d.ts +9 -0
  24. package/dist/components/planning/actioning-view-utils.d.ts.map +1 -1
  25. package/dist/components/planning/actioning-view-utils.js +19 -1
  26. package/dist/components/planning/actioning-view-utils.js.map +1 -1
  27. package/dist/components/planning/plan-detail-utils.d.ts.map +1 -1
  28. package/dist/components/planning/plan-detail-utils.js +2 -0
  29. package/dist/components/planning/plan-detail-utils.js.map +1 -1
  30. package/dist/components/tool-invocation-card/ListRulesResultDisplay.d.ts +2 -2
  31. package/dist/components/tool-invocation-card/ListRulesResultDisplay.d.ts.map +1 -1
  32. package/dist/components/tool-invocation-card/ToolOutputRenderer.d.ts.map +1 -1
  33. package/dist/components/tool-invocation-card/ToolOutputRenderer.js +7 -4
  34. package/dist/components/tool-invocation-card/ToolOutputRenderer.js.map +1 -1
  35. package/dist/components/tool-invocation-card/types.d.ts +5 -5
  36. package/dist/components/tool-invocation-card/types.d.ts.map +1 -1
  37. package/dist/components/tool-invocation-card/types.js +5 -5
  38. package/dist/components/tool-invocation-card/types.js.map +1 -1
  39. package/dist/components/tooltip/index.d.ts +7 -0
  40. package/dist/components/tooltip/index.d.ts.map +1 -1
  41. package/dist/components/tooltip/index.js +10 -1
  42. package/dist/components/tooltip/index.js.map +1 -1
  43. package/dist/explain-fact/rule-presentation.js +2 -2
  44. package/dist/explain-fact/rule-presentation.js.map +1 -1
  45. package/dist/explain-fact/tree-model.js +2 -2
  46. package/dist/explain-fact/tree-model.js.map +1 -1
  47. package/dist/globals.css +19 -6
  48. package/dist/graph/entity-link.d.ts +14 -0
  49. package/dist/graph/entity-link.d.ts.map +1 -0
  50. package/dist/graph/entity-link.js +12 -0
  51. package/dist/graph/entity-link.js.map +1 -0
  52. package/dist/graph/graph-list-utils.d.ts +1 -0
  53. package/dist/graph/graph-list-utils.d.ts.map +1 -1
  54. package/dist/graph/graph-list-utils.js +1 -0
  55. package/dist/graph/graph-list-utils.js.map +1 -1
  56. package/dist/graph/graph-model.d.ts.map +1 -1
  57. package/dist/graph/graph-model.js +14 -5
  58. package/dist/graph/graph-model.js.map +1 -1
  59. package/dist/graph/nodes/BrandAssetAnalysisView.d.ts.map +1 -1
  60. package/dist/graph/nodes/BrandAssetAnalysisView.js +2 -1
  61. package/dist/graph/nodes/BrandAssetAnalysisView.js.map +1 -1
  62. package/dist/graph/nodes/BrandFontSuggestionView.d.ts.map +1 -1
  63. package/dist/graph/nodes/BrandFontSuggestionView.js +2 -1
  64. package/dist/graph/nodes/BrandFontSuggestionView.js.map +1 -1
  65. package/dist/graph/nodes/BrandGuidelinesView.js +1 -1
  66. package/dist/graph/nodes/BrandGuidelinesView.js.map +1 -1
  67. package/dist/graph/nodes/NodePropertyTable.d.ts +4 -2
  68. package/dist/graph/nodes/NodePropertyTable.d.ts.map +1 -1
  69. package/dist/graph/nodes/NodePropertyTable.js +12 -59
  70. package/dist/graph/nodes/NodePropertyTable.js.map +1 -1
  71. package/dist/graph/nodes/node-property-row.d.ts +30 -0
  72. package/dist/graph/nodes/node-property-row.d.ts.map +1 -0
  73. package/dist/graph/nodes/node-property-row.js +35 -0
  74. package/dist/graph/nodes/node-property-row.js.map +1 -0
  75. package/dist/graph/property-formatters.d.ts +1 -0
  76. package/dist/graph/property-formatters.d.ts.map +1 -1
  77. package/dist/graph/property-formatters.js +4 -1
  78. package/dist/graph/property-formatters.js.map +1 -1
  79. package/dist/graph/special-nodes/AttributeList.d.ts +27 -0
  80. package/dist/graph/special-nodes/AttributeList.d.ts.map +1 -0
  81. package/dist/graph/special-nodes/AttributeList.js +57 -0
  82. package/dist/graph/special-nodes/AttributeList.js.map +1 -0
  83. package/dist/graph/special-nodes/EntityPreview.d.ts +5 -0
  84. package/dist/graph/special-nodes/EntityPreview.d.ts.map +1 -0
  85. package/dist/graph/special-nodes/EntityPreview.js +19 -0
  86. package/dist/graph/special-nodes/EntityPreview.js.map +1 -0
  87. package/dist/graph/special-nodes/EntityValueChip.d.ts +11 -0
  88. package/dist/graph/special-nodes/EntityValueChip.d.ts.map +1 -0
  89. package/dist/graph/special-nodes/EntityValueChip.js +40 -0
  90. package/dist/graph/special-nodes/EntityValueChip.js.map +1 -0
  91. package/dist/graph/special-nodes/GenericView.d.ts +2 -1
  92. package/dist/graph/special-nodes/GenericView.d.ts.map +1 -1
  93. package/dist/graph/special-nodes/GenericView.js +23 -69
  94. package/dist/graph/special-nodes/GenericView.js.map +1 -1
  95. package/dist/graph/special-nodes/card-facts.d.ts +52 -0
  96. package/dist/graph/special-nodes/card-facts.d.ts.map +1 -0
  97. package/dist/graph/special-nodes/card-facts.js +189 -0
  98. package/dist/graph/special-nodes/card-facts.js.map +1 -0
  99. package/dist/graph/special-nodes/property-icons.d.ts +9 -0
  100. package/dist/graph/special-nodes/property-icons.d.ts.map +1 -0
  101. package/dist/graph/special-nodes/property-icons.js +39 -0
  102. package/dist/graph/special-nodes/property-icons.js.map +1 -0
  103. package/dist/graph/status-utils.d.ts +16 -0
  104. package/dist/graph/status-utils.d.ts.map +1 -1
  105. package/dist/graph/status-utils.js +35 -0
  106. package/dist/graph/status-utils.js.map +1 -1
  107. package/dist/graph/types.d.ts +5 -0
  108. package/dist/graph/types.d.ts.map +1 -1
  109. package/dist/hooks/use-approve-anyway.d.ts +12 -0
  110. package/dist/hooks/use-approve-anyway.d.ts.map +1 -0
  111. package/dist/hooks/use-approve-anyway.js +81 -0
  112. package/dist/hooks/use-approve-anyway.js.map +1 -0
  113. package/dist/hooks/use-connection-problems.d.ts.map +1 -1
  114. package/dist/hooks/useValidateActionPlan.d.ts.map +1 -1
  115. package/dist/ldo-ui.d.ts +2 -1
  116. package/dist/ldo-ui.d.ts.map +1 -1
  117. package/dist/ldo-ui.js +1 -0
  118. package/dist/ldo-ui.js.map +1 -1
  119. package/dist/lib/find-latest-staged-rule.js +1 -1
  120. package/dist/lib/find-latest-staged-rule.js.map +1 -1
  121. package/dist/lib/manual-actions.d.ts +2 -1
  122. package/dist/lib/manual-actions.d.ts.map +1 -1
  123. package/dist/lib/manual-actions.js +3 -2
  124. package/dist/lib/manual-actions.js.map +1 -1
  125. package/dist/lib/tool-icons.js +6 -6
  126. package/dist/lib/tool-icons.js.map +1 -1
  127. package/dist/lib/tool-names.d.ts.map +1 -1
  128. package/dist/lib/tool-names.js +0 -1
  129. package/dist/lib/tool-names.js.map +1 -1
  130. package/dist/ontology/skolem.js +2 -2
  131. package/dist/ontology/skolem.js.map +1 -1
  132. package/dist/providers/ActiveChatProvider.js +3 -1
  133. package/dist/providers/ActiveChatProvider.js.map +1 -1
  134. package/dist/providers/ChatManagerProvider.d.ts.map +1 -1
  135. package/dist/providers/ChatManagerProvider.js +3 -1
  136. package/dist/providers/ChatManagerProvider.js.map +1 -1
  137. package/dist/providers/KnowledgeGraphStateProvider.js +1 -1
  138. package/dist/providers/KnowledgeGraphStateProvider.js.map +1 -1
  139. package/dist/providers/chat-socket-auth.d.ts +7 -2
  140. package/dist/providers/chat-socket-auth.d.ts.map +1 -1
  141. package/dist/providers/chat-socket-auth.js +87 -16
  142. package/dist/providers/chat-socket-auth.js.map +1 -1
  143. package/dist/providers/index.d.ts.map +1 -1
  144. package/dist/providers/index.js +8 -1
  145. package/dist/providers/index.js.map +1 -1
  146. package/dist/routes/activity/detail/ActivityChanges.d.ts +2 -0
  147. package/dist/routes/activity/detail/ActivityChanges.d.ts.map +1 -1
  148. package/dist/routes/activity/detail/ActivityChanges.js +8 -7
  149. package/dist/routes/activity/detail/ActivityChanges.js.map +1 -1
  150. package/dist/routes/activity/detail/ActivityDetail.d.ts +1 -0
  151. package/dist/routes/activity/detail/ActivityDetail.d.ts.map +1 -1
  152. package/dist/routes/activity/detail/ActivityDetail.js +5 -4
  153. package/dist/routes/activity/detail/ActivityDetail.js.map +1 -1
  154. package/dist/routes/activity/detail/ActivityStepsRail.d.ts +1 -0
  155. package/dist/routes/activity/detail/ActivityStepsRail.d.ts.map +1 -1
  156. package/dist/routes/activity/detail/ActivityStepsRail.js +3 -2
  157. package/dist/routes/activity/detail/ActivityStepsRail.js.map +1 -1
  158. package/dist/routes/activity/detail/ActivityTimeline.js +2 -2
  159. package/dist/routes/activity/detail/ActivityTimeline.js.map +1 -1
  160. package/dist/routes/activity/detail/NoChangesMessage.d.ts +6 -0
  161. package/dist/routes/activity/detail/NoChangesMessage.d.ts.map +1 -0
  162. package/dist/routes/activity/detail/NoChangesMessage.js +10 -0
  163. package/dist/routes/activity/detail/NoChangesMessage.js.map +1 -0
  164. package/dist/routes/data-explorer/class-properties.js +2 -2
  165. package/dist/routes/data-explorer/class-properties.js.map +1 -1
  166. package/dist/routes/data-explorer/classes.js +2 -2
  167. package/dist/routes/data-explorer/classes.js.map +1 -1
  168. package/dist/routes/data-explorer/components/RawTriples.js +1 -1
  169. package/dist/routes/data-explorer/components/RawTriples.js.map +1 -1
  170. package/dist/routes/data-explorer/components/RecentTypes.js +1 -1
  171. package/dist/routes/data-explorer/components/RecentTypes.js.map +1 -1
  172. package/dist/routes/data-explorer/components/class-detail/Instances.js +1 -1
  173. package/dist/routes/data-explorer/components/class-detail/Instances.js.map +1 -1
  174. package/dist/routes/data-explorer/components/namespace-detail/NamespaceClassRow.js +1 -1
  175. package/dist/routes/data-explorer/components/namespace-detail/NamespaceClassRow.js.map +1 -1
  176. package/dist/routes/data-explorer/components/ontology-coverage/CoverageTermColumns.js +1 -1
  177. package/dist/routes/data-explorer/components/ontology-coverage/CoverageTermColumns.js.map +1 -1
  178. package/dist/routes/data-explorer/components/ontology-coverage/UnobservedRuleVocabulary.js +1 -1
  179. package/dist/routes/data-explorer/components/ontology-coverage/UnobservedRuleVocabulary.js.map +1 -1
  180. package/dist/routes/data-explorer/components/record-detail/ChatPreview.js +2 -2
  181. package/dist/routes/data-explorer/components/record-detail/ChatPreview.js.map +1 -1
  182. package/dist/routes/data-explorer/recents.js +1 -1
  183. package/dist/routes/data-explorer/recents.js.map +1 -1
  184. package/dist/routes/data-explorer/shapes.js +2 -2
  185. package/dist/routes/data-explorer/shapes.js.map +1 -1
  186. package/dist/routes/integrations/components/connect-forms/CanvaConnectForm.d.ts +3 -0
  187. package/dist/routes/integrations/components/connect-forms/CanvaConnectForm.d.ts.map +1 -0
  188. package/dist/routes/integrations/components/connect-forms/CanvaConnectForm.js +12 -0
  189. package/dist/routes/integrations/components/connect-forms/CanvaConnectForm.js.map +1 -0
  190. package/dist/routes/integrations/components/connect-forms/DataConnectionConnectForm.d.ts.map +1 -1
  191. package/dist/routes/integrations/components/connect-forms/DataConnectionConnectForm.js +13 -6
  192. package/dist/routes/integrations/components/connect-forms/DataConnectionConnectForm.js.map +1 -1
  193. package/dist/routes/integrations/components/connect-forms/data-connection-fields.d.ts +3 -0
  194. package/dist/routes/integrations/components/connect-forms/data-connection-fields.d.ts.map +1 -1
  195. package/dist/routes/integrations/components/connect-forms/data-connection-fields.js +9 -2
  196. package/dist/routes/integrations/components/connect-forms/data-connection-fields.js.map +1 -1
  197. package/dist/routes/integrations/connect-forms.d.ts +1 -0
  198. package/dist/routes/integrations/connect-forms.d.ts.map +1 -1
  199. package/dist/routes/integrations/connect-forms.js +1 -0
  200. package/dist/routes/integrations/connect-forms.js.map +1 -1
  201. package/dist/routes/integrations/connection-view.d.ts.map +1 -1
  202. package/dist/routes/integrations/connection-view.js +1 -0
  203. package/dist/routes/integrations/connection-view.js.map +1 -1
  204. package/dist/routes/integrations/types.d.ts +2 -1
  205. package/dist/routes/integrations/types.d.ts.map +1 -1
  206. package/dist/routes/integrations/types.js +1 -0
  207. package/dist/routes/integrations/types.js.map +1 -1
  208. package/dist/routes/plans/components/ActionPlanPage.d.ts.map +1 -1
  209. package/dist/routes/plans/components/ActionPlanPage.js +4 -7
  210. package/dist/routes/plans/components/ActionPlanPage.js.map +1 -1
  211. package/dist/routes/plans/components/PlanDetailRouteContent.d.ts.map +1 -1
  212. package/dist/routes/plans/components/PlanDetailRouteContent.js +2 -1
  213. package/dist/routes/plans/components/PlanDetailRouteContent.js.map +1 -1
  214. package/dist/routes/rules/hooks/useRuleFactsPreview.js +4 -4
  215. package/dist/routes/rules/hooks/useRuleFactsPreview.js.map +1 -1
  216. package/dist/shacl/form-appearance.d.ts +1 -1
  217. package/dist/shacl/form-appearance.d.ts.map +1 -1
  218. package/dist/shacl/form-appearance.js +1 -1
  219. package/dist/shacl/form-appearance.js.map +1 -1
  220. package/dist/shared/graph-derived-queries.js +2 -2
  221. package/dist/shared/graph-derived-queries.js.map +1 -1
  222. package/package.json +12 -7
  223. package/src/app-subpaths.json +1 -0
  224. package/src/components/channel-icon/index.tsx +1 -1
  225. package/src/components/datastore-management/tree.ts +5 -5
  226. package/src/components/explain-fact/ExplainFact.tsx +3 -3
  227. package/src/components/planning/ActioningView.tsx +62 -70
  228. package/src/components/planning/ManualActionCard.tsx +66 -14
  229. package/src/components/planning/ManualActionList.tsx +30 -11
  230. package/src/components/planning/actioning-view-utils.ts +27 -1
  231. package/src/components/planning/plan-detail-utils.tsx +2 -0
  232. package/src/components/tool-invocation-card/ListRulesResultDisplay.tsx +2 -2
  233. package/src/components/tool-invocation-card/ToolOutputRenderer.tsx +10 -8
  234. package/src/components/tool-invocation-card/types.ts +8 -8
  235. package/src/components/tooltip/index.tsx +35 -2
  236. package/src/explain-fact/rule-presentation.ts +2 -2
  237. package/src/explain-fact/tree-model.ts +2 -2
  238. package/src/graph/entity-link.tsx +20 -0
  239. package/src/graph/graph-list-utils.ts +2 -0
  240. package/src/graph/graph-model.ts +15 -6
  241. package/src/graph/nodes/BrandAssetAnalysisView.tsx +3 -1
  242. package/src/graph/nodes/BrandFontSuggestionView.tsx +7 -1
  243. package/src/graph/nodes/BrandGuidelinesView.tsx +1 -1
  244. package/src/graph/nodes/NodePropertyTable.tsx +32 -143
  245. package/src/graph/nodes/node-property-row.tsx +154 -0
  246. package/src/graph/property-formatters.ts +5 -1
  247. package/src/graph/special-nodes/AttributeList.tsx +177 -0
  248. package/src/graph/special-nodes/EntityPreview.tsx +27 -0
  249. package/src/graph/special-nodes/EntityValueChip.tsx +85 -0
  250. package/src/graph/special-nodes/GenericView.tsx +49 -139
  251. package/src/graph/special-nodes/card-facts.ts +278 -0
  252. package/src/graph/special-nodes/property-icons.ts +59 -0
  253. package/src/graph/status-utils.ts +40 -0
  254. package/src/graph/types.ts +4 -0
  255. package/src/hooks/use-approve-anyway.ts +100 -0
  256. package/src/ldo-ui.ts +8 -0
  257. package/src/lib/find-latest-staged-rule.ts +1 -1
  258. package/src/lib/manual-actions.ts +3 -2
  259. package/src/lib/tool-icons.ts +6 -6
  260. package/src/lib/tool-names.ts +0 -1
  261. package/src/ontology/skolem.ts +2 -2
  262. package/src/providers/ActiveChatProvider.tsx +3 -1
  263. package/src/providers/ChatManagerProvider.tsx +3 -1
  264. package/src/providers/KnowledgeGraphStateProvider.tsx +1 -1
  265. package/src/providers/chat-socket-auth.ts +95 -16
  266. package/src/providers/index.tsx +16 -1
  267. package/src/routes/activity/detail/ActivityChanges.tsx +21 -5
  268. package/src/routes/activity/detail/ActivityDetail.tsx +24 -5
  269. package/src/routes/activity/detail/ActivityStepsRail.tsx +4 -2
  270. package/src/routes/activity/detail/ActivityTimeline.tsx +2 -2
  271. package/src/routes/activity/detail/NoChangesMessage.tsx +20 -0
  272. package/src/routes/data-explorer/class-properties.ts +2 -2
  273. package/src/routes/data-explorer/classes.ts +2 -2
  274. package/src/routes/data-explorer/components/RawTriples.tsx +1 -1
  275. package/src/routes/data-explorer/components/RecentTypes.tsx +1 -1
  276. package/src/routes/data-explorer/components/class-detail/Instances.tsx +1 -1
  277. package/src/routes/data-explorer/components/namespace-detail/NamespaceClassRow.tsx +1 -1
  278. package/src/routes/data-explorer/components/ontology-coverage/CoverageTermColumns.tsx +1 -1
  279. package/src/routes/data-explorer/components/ontology-coverage/UnobservedRuleVocabulary.tsx +1 -1
  280. package/src/routes/data-explorer/components/record-detail/ChatPreview.tsx +2 -2
  281. package/src/routes/data-explorer/recents.ts +1 -1
  282. package/src/routes/data-explorer/shapes.ts +2 -2
  283. package/src/routes/datastores/flatten.ts +1 -1
  284. package/src/routes/integrations/components/connect-forms/CanvaConnectForm.tsx +26 -0
  285. package/src/routes/integrations/components/connect-forms/DataConnectionConnectForm.tsx +38 -12
  286. package/src/routes/integrations/components/connect-forms/data-connection-fields.ts +11 -2
  287. package/src/routes/integrations/connect-forms.ts +1 -0
  288. package/src/routes/integrations/connection-view.ts +1 -0
  289. package/src/routes/integrations/types.ts +2 -0
  290. package/src/routes/plans/components/ActionPlanPage.tsx +9 -8
  291. package/src/routes/plans/components/PlanDetailRouteContent.tsx +4 -3
  292. package/src/routes/rules/hooks/useRuleFactsPreview.ts +4 -4
  293. package/src/shacl/form-appearance.ts +1 -1
  294. package/src/shared/graph-derived-queries.ts +2 -2
  295. package/dist/components/planning/ExecutionActivityRow.d.ts +0 -9
  296. package/dist/components/planning/ExecutionActivityRow.d.ts.map +0 -1
  297. package/dist/components/planning/ExecutionActivityRow.js +0 -53
  298. package/dist/components/planning/ExecutionActivityRow.js.map +0 -1
  299. package/dist/components/planning/ExecutionSectionItem.d.ts +0 -20
  300. package/dist/components/planning/ExecutionSectionItem.d.ts.map +0 -1
  301. package/dist/components/planning/ExecutionSectionItem.js +0 -66
  302. package/dist/components/planning/ExecutionSectionItem.js.map +0 -1
  303. package/dist/components/planning/ExecutionSections.d.ts +0 -16
  304. package/dist/components/planning/ExecutionSections.d.ts.map +0 -1
  305. package/dist/components/planning/ExecutionSections.js +0 -32
  306. package/dist/components/planning/ExecutionSections.js.map +0 -1
  307. package/dist/components/planning/action-plan-icons.d.ts +0 -3
  308. package/dist/components/planning/action-plan-icons.d.ts.map +0 -1
  309. package/dist/components/planning/action-plan-icons.js +0 -25
  310. package/dist/components/planning/action-plan-icons.js.map +0 -1
  311. package/dist/components/planning/execution-section-model.d.ts +0 -24
  312. package/dist/components/planning/execution-section-model.d.ts.map +0 -1
  313. package/dist/components/planning/execution-section-model.js +0 -150
  314. package/dist/components/planning/execution-section-model.js.map +0 -1
  315. package/dist/routes/data-explorer/components/TruncateTooltip.d.ts +0 -7
  316. package/dist/routes/data-explorer/components/TruncateTooltip.d.ts.map +0 -1
  317. package/dist/routes/data-explorer/components/TruncateTooltip.js +0 -9
  318. package/dist/routes/data-explorer/components/TruncateTooltip.js.map +0 -1
  319. package/src/components/planning/ExecutionActivityRow.tsx +0 -89
  320. package/src/components/planning/ExecutionSectionItem.tsx +0 -184
  321. package/src/components/planning/ExecutionSections.tsx +0 -97
  322. package/src/components/planning/action-plan-icons.tsx +0 -27
  323. package/src/components/planning/execution-section-model.ts +0 -190
  324. package/src/routes/data-explorer/components/TruncateTooltip.tsx +0 -25
@@ -1,66 +0,0 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- import { humanDuration } from "@manta-eu/lib/humanize";
3
- import { isPresent } from "@manta-eu/lib/present";
4
- import { AlertCircle, Check, ChevronDown, ClockFading, Loader2 } from "lucide-react";
5
- import { isNotNil } from "ramda";
6
- import { useEffect, useState } from "react";
7
- import { match } from "ts-pattern";
8
- import { resolveStepIcon } from "./action-plan-icons.js";
9
- import { findResolvedManualActionStatus, parseTimestampMs } from "./execution-section-model.js";
10
- import { ExecutionActivityRow } from "./ExecutionActivityRow.js";
11
- import { ManualActionCard } from "./ManualActionCard.js";
12
- import { getPendingManualActions, getResolvedManualActions } from "#lib/manual-actions";
13
- import { cn } from "#lib/utils";
14
- export function ExecutionSectionItem(props) {
15
- const { entry, activities, status, fallbackStartedAtMs = null, isExpanded, onToggle, manualActions = [], manualActionEntities, onManualActionResolve, resolvingManualAction, canResolveManualAction, manualActionDisabledReason, } = props;
16
- const pendingManualActions = getPendingManualActions(manualActions);
17
- const resolvedManualActions = getResolvedManualActions(manualActions);
18
- const hasContent = isPresent(activities) || isPresent(pendingManualActions);
19
- return (_jsxs("div", { children: [_jsxs("button", { type: "button", onClick: onToggle, className: "flex w-full items-center gap-3 pl-2 pr-3 py-3 text-left transition-colors hover:bg-muted/30", children: [_jsx("div", { className: "flex shrink-0 items-center p-1.5 rounded-lg", children: _jsx(ChevronDown, { className: cn("size-5 shrink-0 text-muted-foreground transition-transform", !isExpanded && "-rotate-90") }) }), _jsx("div", { className: "flex size-9 shrink-0 items-center justify-center rounded-lg bg-faint", children: resolveStepIcon(entry.typeName, "size-5 text-muted-foreground") }), _jsxs("div", { className: "flex-1 min-w-0 flex flex-col gap-0.5", children: [_jsx("span", { className: cn("typography-small-medium block truncate", status === "pending" ? "text-muted-foreground" : "text-default-foreground"), children: entry.typeName }), entry.description && (_jsx("span", { className: "typography-tiny text-muted-foreground block truncate", children: entry.description }))] }), _jsxs("div", { className: "flex items-center gap-3 shrink-0", children: [_jsx(SectionElapsed, { activities: activities, status: status, estimatedTime: entry.estimatedTime ?? null, fallbackStartedAtMs: fallbackStartedAtMs }), _jsx(SectionStatusIcon, { status: status })] })] }), isExpanded && hasContent && (_jsxs("div", { className: "bg-faint border-t border-default-border py-1.5", children: [activities.map((activity) => (_jsx(ExecutionActivityRow, { activity: activity, manualActionStatus: findResolvedManualActionStatus(activity, resolvedManualActions) }, activity.iri))), pendingManualActions.map((ma) => (_jsx(ManualActionCard, { manualAction: ma, entities: manualActionEntities?.get(ma.subjectIri) ?? [], description: ma.description ?? entry.description ?? undefined, resolving: resolvingManualAction, onResolve: (resolution) => onManualActionResolve?.(ma.subjectIri, resolution), canResolve: canResolveManualAction, disabledReason: manualActionDisabledReason }, ma.subjectIri)))] }))] }));
20
- }
21
- function SectionStatusIcon(props) {
22
- return match(props.status)
23
- .with("completed", () => (_jsx("div", { className: "size-5 flex items-center justify-center rounded-full bg-success", children: _jsx(Check, { className: "size-3 text-success-foreground" }) })))
24
- .with("running", () => _jsx(Loader2, { className: "size-5 text-muted-foreground animate-spin" }))
25
- .with("failed", () => (_jsx("div", { className: "size-5 flex items-center justify-center rounded-full bg-error", children: _jsx(AlertCircle, { className: "size-3 text-error-foreground" }) })))
26
- .with("pending", () => _jsx(ClockFading, { className: "size-5 text-muted-foreground/40" }))
27
- .exhaustive();
28
- }
29
- function SectionElapsed(props) {
30
- const { activities, status, estimatedTime, fallbackStartedAtMs = null } = props;
31
- const isRunning = status === "running";
32
- const [now, setNow] = useState(() => Date.now());
33
- useEffect(() => {
34
- if (!isRunning)
35
- return;
36
- const id = setInterval(() => setNow(Date.now()), 1000);
37
- return () => clearInterval(id);
38
- }, [isRunning]);
39
- const started = activities
40
- .map((a) => a.startedAtTime)
41
- .filter(isNotNil)
42
- .sort();
43
- if (!isPresent(started)) {
44
- if (fallbackStartedAtMs !== null) {
45
- return (_jsx("span", { className: "typography-tiny text-muted-foreground whitespace-nowrap", children: humanDuration({ start: fallbackStartedAtMs, end: now, largest: 2 }) || "0 seconds" }));
46
- }
47
- if (estimatedTime) {
48
- return _jsx("span", { className: "typography-tiny text-muted-foreground/60 whitespace-nowrap", children: estimatedTime });
49
- }
50
- return null;
51
- }
52
- const ended = activities
53
- .map((a) => a.endedAtTime)
54
- .filter(isNotNil)
55
- .sort()
56
- .reverse();
57
- const start = parseTimestampMs(started[0]);
58
- if (start === null)
59
- return null;
60
- const end = isPresent(ended) && !isRunning ? parseTimestampMs(ended[0]) : now;
61
- if (end === null)
62
- return null;
63
- const label = humanDuration({ start, end, largest: 2 }) || "0 seconds";
64
- return _jsx("span", { className: "typography-tiny text-muted-foreground whitespace-nowrap", children: label });
65
- }
66
- //# sourceMappingURL=ExecutionSectionItem.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ExecutionSectionItem.js","sourceRoot":"","sources":["../../../src/components/planning/ExecutionSectionItem.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AACvD,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAClD,OAAO,EAAE,WAAW,EAAE,KAAK,EAAE,WAAW,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACrF,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACjC,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAC5C,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AACnC,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAEtD,OAAO,EAAE,8BAA8B,EAAE,gBAAgB,EAAsB,MAAM,2BAA2B,CAAC;AACjH,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,gBAAgB,EAA2B,MAAM,oBAAoB,CAAC;AAE/E,OAAO,EAAE,uBAAuB,EAAE,wBAAwB,EAAE,MAAM,qBAAqB,CAAC;AACxF,OAAO,EAAE,EAAE,EAAE,MAAM,YAAY,CAAC;AAiBhC,MAAM,UAAU,oBAAoB,CAAC,KAAgC;IACnE,MAAM,EACJ,KAAK,EACL,UAAU,EACV,MAAM,EACN,mBAAmB,GAAG,IAAI,EAC1B,UAAU,EACV,QAAQ,EACR,aAAa,GAAG,EAAE,EAClB,oBAAoB,EACpB,qBAAqB,EACrB,qBAAqB,EACrB,sBAAsB,EACtB,0BAA0B,GAC3B,GAAG,KAAK,CAAC;IAEV,MAAM,oBAAoB,GAAG,uBAAuB,CAAC,aAAa,CAAC,CAAC;IACpE,MAAM,qBAAqB,GAAG,wBAAwB,CAAC,aAAa,CAAC,CAAC;IACtE,MAAM,UAAU,GAAG,SAAS,CAAC,UAAU,CAAC,IAAI,SAAS,CAAC,oBAAoB,CAAC,CAAC;IAE5E,OAAO,CACL,0BACE,kBACE,IAAI,EAAC,QAAQ,EACb,OAAO,EAAE,QAAQ,EACjB,SAAS,EAAC,6FAA6F,aAEvG,cAAK,SAAS,EAAC,6CAA6C,YAC1D,KAAC,WAAW,IACV,SAAS,EAAE,EAAE,CAAC,4DAA4D,EAAE,CAAC,UAAU,IAAI,YAAY,CAAC,GACxG,GACE,EAEN,cAAK,SAAS,EAAC,sEAAsE,YAClF,eAAe,CAAC,KAAK,CAAC,QAAQ,EAAE,8BAA8B,CAAC,GAC5D,EAEN,eAAK,SAAS,EAAC,sCAAsC,aACnD,eACE,SAAS,EAAE,EAAE,CACX,wCAAwC,EACxC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,uBAAuB,CAAC,CAAC,CAAC,yBAAyB,CAC3E,YAEA,KAAK,CAAC,QAAQ,GACV,EACN,KAAK,CAAC,WAAW,IAAI,CACpB,eAAM,SAAS,EAAC,sDAAsD,YAAE,KAAK,CAAC,WAAW,GAAQ,CAClG,IACG,EAEN,eAAK,SAAS,EAAC,kCAAkC,aAC/C,KAAC,cAAc,IACb,UAAU,EAAE,UAAU,EACtB,MAAM,EAAE,MAAM,EACd,aAAa,EAAE,KAAK,CAAC,aAAa,IAAI,IAAI,EAC1C,mBAAmB,EAAE,mBAAmB,GACxC,EACF,KAAC,iBAAiB,IAAC,MAAM,EAAE,MAAM,GAAI,IACjC,IACC,EAER,UAAU,IAAI,UAAU,IAAI,CAC3B,eAAK,SAAS,EAAC,gDAAgD,aAC5D,UAAU,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,CAC5B,KAAC,oBAAoB,IAEnB,QAAQ,EAAE,QAAQ,EAClB,kBAAkB,EAAE,8BAA8B,CAAC,QAAQ,EAAE,qBAAqB,CAAC,IAF9E,QAAQ,CAAC,GAAG,CAGjB,CACH,CAAC,EAED,oBAAoB,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAChC,KAAC,gBAAgB,IAEf,YAAY,EAAE,EAAE,EAChB,QAAQ,EAAE,oBAAoB,EAAE,GAAG,CAAC,EAAE,CAAC,UAAU,CAAC,IAAI,EAAE,EACxD,WAAW,EAAE,EAAE,CAAC,WAAW,IAAI,KAAK,CAAC,WAAW,IAAI,SAAS,EAC7D,SAAS,EAAE,qBAAqB,EAChC,SAAS,EAAE,CAAC,UAAU,EAAE,EAAE,CAAC,qBAAqB,EAAE,CAAC,EAAE,CAAC,UAAU,EAAE,UAAU,CAAC,EAC7E,UAAU,EAAE,sBAAsB,EAClC,cAAc,EAAE,0BAA0B,IAPrC,EAAE,CAAC,UAAU,CAQlB,CACH,CAAC,IACE,CACP,IACG,CACP,CAAC;AACJ,CAAC;AAED,SAAS,iBAAiB,CAAC,KAAgC;IACzD,OAAO,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC;SACvB,IAAI,CAAC,WAAW,EAAE,GAAG,EAAE,CAAC,CACvB,cAAK,SAAS,EAAC,iEAAiE,YAC9E,KAAC,KAAK,IAAC,SAAS,EAAC,gCAAgC,GAAG,GAChD,CACP,CAAC;SACD,IAAI,CAAC,SAAS,EAAE,GAAG,EAAE,CAAC,KAAC,OAAO,IAAC,SAAS,EAAC,2CAA2C,GAAG,CAAC;SACxF,IAAI,CAAC,QAAQ,EAAE,GAAG,EAAE,CAAC,CACpB,cAAK,SAAS,EAAC,+DAA+D,YAC5E,KAAC,WAAW,IAAC,SAAS,EAAC,8BAA8B,GAAG,GACpD,CACP,CAAC;SACD,IAAI,CAAC,SAAS,EAAE,GAAG,EAAE,CAAC,KAAC,WAAW,IAAC,SAAS,EAAC,iCAAiC,GAAG,CAAC;SAClF,UAAU,EAAE,CAAC;AAClB,CAAC;AAED,SAAS,cAAc,CAAC,KAKvB;IACC,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,aAAa,EAAE,mBAAmB,GAAG,IAAI,EAAE,GAAG,KAAK,CAAC;IAChF,MAAM,SAAS,GAAG,MAAM,KAAK,SAAS,CAAC;IACvC,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,GAAG,QAAQ,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;IAEjD,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,CAAC,SAAS;YAAE,OAAO;QACvB,MAAM,EAAE,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,EAAE,IAAI,CAAC,CAAC;QACvD,OAAO,GAAG,EAAE,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC;IACjC,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC;IAEhB,MAAM,OAAO,GAAG,UAAU;SACvB,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,aAAa,CAAC;SAC3B,MAAM,CAAC,QAAQ,CAAC;SAChB,IAAI,EAAE,CAAC;IACV,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,CAAC;QACxB,IAAI,mBAAmB,KAAK,IAAI,EAAE,CAAC;YACjC,OAAO,CACL,eAAM,SAAS,EAAC,yDAAyD,YACtE,aAAa,CAAC,EAAE,KAAK,EAAE,mBAAmB,EAAE,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC,IAAI,WAAW,GAC9E,CACR,CAAC;QACJ,CAAC;QACD,IAAI,aAAa,EAAE,CAAC;YAClB,OAAO,eAAM,SAAS,EAAC,4DAA4D,YAAE,aAAa,GAAQ,CAAC;QAC7G,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,KAAK,GAAG,UAAU;SACrB,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC;SACzB,MAAM,CAAC,QAAQ,CAAC;SAChB,IAAI,EAAE;SACN,OAAO,EAAE,CAAC;IACb,MAAM,KAAK,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC;IAC3C,IAAI,KAAK,KAAK,IAAI;QAAE,OAAO,IAAI,CAAC;IAChC,MAAM,GAAG,GAAG,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;IAC9E,IAAI,GAAG,KAAK,IAAI;QAAE,OAAO,IAAI,CAAC;IAC9B,MAAM,KAAK,GAAG,aAAa,CAAC,EAAE,KAAK,EAAE,GAAG,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC,IAAI,WAAW,CAAC;IAEvE,OAAO,eAAM,SAAS,EAAC,yDAAyD,YAAE,KAAK,GAAQ,CAAC;AAClG,CAAC"}
@@ -1,16 +0,0 @@
1
- import type { EntityTypeEntry } from "./ActionPlanDetailView.js";
2
- import type { ManualActionTarget } from "./ManualActionCard.js";
3
- import type { ActionPlanExecutionProvenanceResult, ManualAction, ManualActionResolution, ManualActionResolving } from "#ldo-ui";
4
- export type ExecutionSectionsProps = {
5
- entityTypes: EntityTypeEntry[];
6
- provenance: ActionPlanExecutionProvenanceResult | null;
7
- manualActions?: ManualAction[];
8
- manualActionEntities?: Map<string, ManualActionTarget[]>;
9
- activeStartedAtMs?: number | null;
10
- onManualActionResolve?: (subjectIri: string, resolution: ManualActionResolution) => void;
11
- resolvingManualAction?: ManualActionResolving;
12
- canResolveManualAction?: boolean;
13
- manualActionDisabledReason?: string;
14
- };
15
- export declare function ExecutionSections(props: ExecutionSectionsProps): import("react/jsx-runtime").JSX.Element;
16
- //# sourceMappingURL=ExecutionSections.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ExecutionSections.d.ts","sourceRoot":"","sources":["../../../src/components/planning/ExecutionSections.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAI9D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAC7D,OAAO,KAAK,EACV,mCAAmC,EACnC,YAAY,EACZ,sBAAsB,EACtB,qBAAqB,EACtB,MAAM,SAAS,CAAC;AAEjB,MAAM,MAAM,sBAAsB,GAAG;IACnC,WAAW,EAAE,eAAe,EAAE,CAAC;IAC/B,UAAU,EAAE,mCAAmC,GAAG,IAAI,CAAC;IACvD,aAAa,CAAC,EAAE,YAAY,EAAE,CAAC;IAC/B,oBAAoB,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,kBAAkB,EAAE,CAAC,CAAC;IACzD,iBAAiB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC,qBAAqB,CAAC,EAAE,CAAC,UAAU,EAAE,MAAM,EAAE,UAAU,EAAE,sBAAsB,KAAK,IAAI,CAAC;IACzF,qBAAqB,CAAC,EAAE,qBAAqB,CAAC;IAC9C,sBAAsB,CAAC,EAAE,OAAO,CAAC;IACjC,0BAA0B,CAAC,EAAE,MAAM,CAAC;CACrC,CAAC;AAEF,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,sBAAsB,2CAsE9D"}
@@ -1,32 +0,0 @@
1
- import { jsx as _jsx } from "react/jsx-runtime";
2
- import { isPresent } from "@manta-eu/lib/present";
3
- import { useEffect, useState } from "react";
4
- import { buildSections, matchesManualActionSection } from "./execution-section-model.js";
5
- import { ExecutionActivityRow } from "./ExecutionActivityRow.js";
6
- import { ExecutionSectionItem } from "./ExecutionSectionItem.js";
7
- export function ExecutionSections(props) {
8
- const { entityTypes, provenance, manualActions = [], manualActionEntities, activeStartedAtMs = null, onManualActionResolve, resolvingManualAction, canResolveManualAction, manualActionDisabledReason, } = props;
9
- const [expandedIndex, setExpandedIndex] = useState(0);
10
- const [lastAutoExpandedRunning, setLastAutoExpandedRunning] = useState(-1);
11
- const activities = provenance?.activities ?? [];
12
- const planFailed = !!provenance?.planErrorMessage;
13
- const sections = buildSections({ entityTypes, activities, provenance, planFailed });
14
- const runningSectionIndex = sections.findIndex((s) => s.status === "running");
15
- useEffect(() => {
16
- if (runningSectionIndex >= 0 && runningSectionIndex !== lastAutoExpandedRunning) {
17
- setLastAutoExpandedRunning(runningSectionIndex);
18
- setExpandedIndex(runningSectionIndex);
19
- }
20
- }, [lastAutoExpandedRunning, runningSectionIndex]);
21
- if (!isPresent(sections) && isPresent(activities)) {
22
- return (_jsx("div", { className: "overflow-hidden rounded-xl border border-default-border bg-card", children: _jsx("div", { className: "bg-faint py-1.5", children: activities.map((activity) => (_jsx(ExecutionActivityRow, { activity: activity }, activity.iri))) }) }));
23
- }
24
- return (_jsx("div", { className: "overflow-hidden rounded-xl border border-default-border bg-card divide-y divide-default-border", children: sections.map((section, index) => {
25
- const activeFallbackApplies = index === 0 && section.status === "pending" && activeStartedAtMs !== null;
26
- const effectiveStatus = activeFallbackApplies ? "running" : section.status;
27
- const fallbackStartedAtMs = activeFallbackApplies ? activeStartedAtMs : null;
28
- const sectionManualActions = manualActions.filter((manualAction) => matchesManualActionSection(manualAction, section.entry, sections.length));
29
- return (_jsx(ExecutionSectionItem, { entry: section.entry, activities: section.activities, status: effectiveStatus, fallbackStartedAtMs: fallbackStartedAtMs, isExpanded: expandedIndex === index, onToggle: () => setExpandedIndex((prev) => (prev === index ? null : index)), manualActions: sectionManualActions, manualActionEntities: manualActionEntities, onManualActionResolve: onManualActionResolve, resolvingManualAction: resolvingManualAction, canResolveManualAction: canResolveManualAction, manualActionDisabledReason: manualActionDisabledReason }, section.key));
30
- }) }));
31
- }
32
- //# sourceMappingURL=ExecutionSections.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ExecutionSections.js","sourceRoot":"","sources":["../../../src/components/planning/ExecutionSections.tsx"],"names":[],"mappings":"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"}
@@ -1,3 +0,0 @@
1
- import type { ReactNode } from "react";
2
- export declare function resolveStepIcon(name: string, className: string): ReactNode;
3
- //# sourceMappingURL=action-plan-icons.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"action-plan-icons.d.ts","sourceRoot":"","sources":["../../../src/components/planning/action-plan-icons.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAqBvC,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,SAAS,CAG1E"}
@@ -1,25 +0,0 @@
1
- import { jsx as _jsx } from "react/jsx-runtime";
2
- import { BarChart2, Bell, CircleDot, DollarSign, Image, Settings, Target, UsersRound, Zap } from "lucide-react";
3
- const stepIconKeywords = [
4
- [["campaign", "ad", "advertising", "promote", "advertise", "boost"], Target],
5
- [["audience", "target", "people", "customer", "user", "segment"], UsersRound],
6
- [["remind", "review", "check", "monitor", "follow"], Bell],
7
- [["budget", "spend", "cost", "money", "bid"], DollarSign],
8
- [["creative", "image", "video", "asset", "copy", "content"], Image],
9
- [["launch", "publish", "start", "run", "enable", "activate"], Zap],
10
- [["report", "analys", "track", "metric", "data", "insight"], BarChart2],
11
- [["rule", "logic", "automat", "workflow"], Settings],
12
- ];
13
- function matchStepIcon(name) {
14
- const lower = name.toLowerCase();
15
- for (const [keywords, icon] of stepIconKeywords) {
16
- if (keywords.some((kw) => lower.includes(kw)))
17
- return icon;
18
- }
19
- return CircleDot;
20
- }
21
- export function resolveStepIcon(name, className) {
22
- const Icon = matchStepIcon(name);
23
- return _jsx(Icon, { className: className });
24
- }
25
- //# sourceMappingURL=action-plan-icons.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"action-plan-icons.js","sourceRoot":"","sources":["../../../src/components/planning/action-plan-icons.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,UAAU,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,GAAG,EAAE,MAAM,cAAc,CAAC;AAIhH,MAAM,gBAAgB,GAA6B;IACjD,CAAC,CAAC,UAAU,EAAE,IAAI,EAAE,aAAa,EAAE,SAAS,EAAE,WAAW,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC;IAC5E,CAAC,CAAC,UAAU,EAAE,QAAQ,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,UAAU,CAAC;IAC7E,CAAC,CAAC,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,CAAC,EAAE,IAAI,CAAC;IAC1D,CAAC,CAAC,QAAQ,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,CAAC,EAAE,UAAU,CAAC;IACzD,CAAC,CAAC,UAAU,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,KAAK,CAAC;IACnE,CAAC,CAAC,QAAQ,EAAE,SAAS,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,UAAU,CAAC,EAAE,GAAG,CAAC;IAClE,CAAC,CAAC,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,SAAS,CAAC;IACvE,CAAC,CAAC,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,UAAU,CAAC,EAAE,QAAQ,CAAC;CACrD,CAAC;AAEF,SAAS,aAAa,CAAC,IAAY;IACjC,MAAM,KAAK,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;IACjC,KAAK,MAAM,CAAC,QAAQ,EAAE,IAAI,CAAC,IAAI,gBAAgB,EAAE,CAAC;QAChD,IAAI,QAAQ,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;YAAE,OAAO,IAAI,CAAC;IAC7D,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,IAAY,EAAE,SAAiB;IAC7D,MAAM,IAAI,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC;IACjC,OAAO,KAAC,IAAI,IAAC,SAAS,EAAE,SAAS,GAAI,CAAC;AACxC,CAAC"}
@@ -1,24 +0,0 @@
1
- import type { EntityTypeEntry } from "./ActionPlanDetailView.js";
2
- import type { ActionPlanExecutionProvenanceResult, ExecutionProvenanceActivity, ManualAction } from "#ldo-ui";
3
- export type SectionStatus = "pending" | "running" | "completed" | "failed";
4
- export type SectionData = {
5
- key: string;
6
- entry: EntityTypeEntry;
7
- activities: ExecutionProvenanceActivity[];
8
- status: SectionStatus;
9
- };
10
- export type ResolvedManualActionStatus = Extract<ManualAction["status"], "COMPLETED" | "REJECTED">;
11
- export type BuildSectionsArgs = {
12
- entityTypes: EntityTypeEntry[];
13
- activities: ExecutionProvenanceActivity[];
14
- provenance: ActionPlanExecutionProvenanceResult | null;
15
- planFailed: boolean;
16
- };
17
- export declare function parseTimestampMs(timestamp: string | null | undefined): number | null;
18
- export declare function deriveSectionStatus(activities: ExecutionProvenanceActivity[], provenance: ActionPlanExecutionProvenanceResult | null, planFailed: boolean): SectionStatus;
19
- export declare function matchesSection(activity: ExecutionProvenanceActivity, entry: EntityTypeEntry): boolean;
20
- export declare function matchesManualActionSection(manualAction: ManualAction, entry: EntityTypeEntry, sectionCount: number): boolean;
21
- export declare function matchesManualActionActivity(manualAction: ManualAction, activity: ExecutionProvenanceActivity): boolean;
22
- export declare function findResolvedManualActionStatus(activity: ExecutionProvenanceActivity, manualActions: ManualAction[]): ResolvedManualActionStatus | null;
23
- export declare function buildSections(args: BuildSectionsArgs): SectionData[];
24
- //# sourceMappingURL=execution-section-model.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"execution-section-model.d.ts","sourceRoot":"","sources":["../../../src/components/planning/execution-section-model.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,KAAK,EAAE,mCAAmC,EAAE,2BAA2B,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAE9G,MAAM,MAAM,aAAa,GAAG,SAAS,GAAG,SAAS,GAAG,WAAW,GAAG,QAAQ,CAAC;AAE3E,MAAM,MAAM,WAAW,GAAG;IACxB,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,eAAe,CAAC;IACvB,UAAU,EAAE,2BAA2B,EAAE,CAAC;IAC1C,MAAM,EAAE,aAAa,CAAC;CACvB,CAAC;AAEF,MAAM,MAAM,0BAA0B,GAAG,OAAO,CAAC,YAAY,CAAC,QAAQ,CAAC,EAAE,WAAW,GAAG,UAAU,CAAC,CAAC;AAEnG,MAAM,MAAM,iBAAiB,GAAG;IAC9B,WAAW,EAAE,eAAe,EAAE,CAAC;IAC/B,UAAU,EAAE,2BAA2B,EAAE,CAAC;IAC1C,UAAU,EAAE,mCAAmC,GAAG,IAAI,CAAC;IACvD,UAAU,EAAE,OAAO,CAAC;CACrB,CAAC;AAEF,wBAAgB,gBAAgB,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,MAAM,GAAG,IAAI,CAIpF;AAED,wBAAgB,mBAAmB,CACjC,UAAU,EAAE,2BAA2B,EAAE,EACzC,UAAU,EAAE,mCAAmC,GAAG,IAAI,EACtD,UAAU,EAAE,OAAO,GAClB,aAAa,CAYf;AAqDD,wBAAgB,cAAc,CAAC,QAAQ,EAAE,2BAA2B,EAAE,KAAK,EAAE,eAAe,GAAG,OAAO,CAWrG;AAED,wBAAgB,0BAA0B,CACxC,YAAY,EAAE,YAAY,EAC1B,KAAK,EAAE,eAAe,EACtB,YAAY,EAAE,MAAM,GACnB,OAAO,CAgBT;AAED,wBAAgB,2BAA2B,CACzC,YAAY,EAAE,YAAY,EAC1B,QAAQ,EAAE,2BAA2B,GACpC,OAAO,CAQT;AAED,wBAAgB,8BAA8B,CAC5C,QAAQ,EAAE,2BAA2B,EACrC,aAAa,EAAE,YAAY,EAAE,GAC5B,0BAA0B,GAAG,IAAI,CAGnC;AAED,wBAAgB,aAAa,CAAC,IAAI,EAAE,iBAAiB,GAAG,WAAW,EAAE,CAmCpE"}
@@ -1,150 +0,0 @@
1
- import { iriLocalName } from "@manta-eu/client/shared/rdf-namespaces";
2
- import { isPresent } from "@manta-eu/lib/present";
3
- export function parseTimestampMs(timestamp) {
4
- if (!timestamp)
5
- return null;
6
- const value = new Date(timestamp).getTime();
7
- return Number.isFinite(value) ? value : null;
8
- }
9
- export function deriveSectionStatus(activities, provenance, planFailed) {
10
- if (!isPresent(activities)) {
11
- if (planFailed)
12
- return "failed";
13
- if (provenance?.planEndedAtTime)
14
- return "completed";
15
- return "pending";
16
- }
17
- if (activities.some((a) => a.errorMessage))
18
- return "failed";
19
- if (activities.every((a) => a.endedAtTime)) {
20
- return planFailed ? "failed" : "completed";
21
- }
22
- if (activities.some((a) => a.startedAtTime))
23
- return "running";
24
- return "pending";
25
- }
26
- function isSectionLabelOrIriMatch(activity, typeName) {
27
- const entityLabel = activity.entityLabel.toLowerCase();
28
- const activityIri = activity.iri.toLowerCase();
29
- const typeSlug = typeName.replace(/\s+/g, "_");
30
- return entityLabel.includes(typeName) || activityIri.includes(typeSlug) || activityIri.includes(typeName);
31
- }
32
- function isSectionPauseAliasMatch(activity, typeName) {
33
- if (!typeName.includes("pause"))
34
- return false;
35
- const entityLabel = activity.entityLabel.toLowerCase();
36
- const opType = (activity.operationType ?? "").toLowerCase();
37
- return opType.includes("delete") || opType.includes("pause") || entityLabel.includes("pause");
38
- }
39
- function isSectionScaleAliasMatch(activity, typeName) {
40
- if (!typeName.includes("scale"))
41
- return false;
42
- const entityLabel = activity.entityLabel.toLowerCase();
43
- const opType = (activity.operationType ?? "").toLowerCase();
44
- return (opType.includes("addit") ||
45
- opType.includes("scale") ||
46
- opType.includes("budget") ||
47
- entityLabel.includes("scale") ||
48
- entityLabel.includes("budget"));
49
- }
50
- function isSectionMonitorAliasMatch(activity, typeName) {
51
- if (!typeName.includes("monitor"))
52
- return false;
53
- const entityLabel = activity.entityLabel.toLowerCase();
54
- const opType = (activity.operationType ?? "").toLowerCase();
55
- return opType.includes("monitor") || entityLabel.includes("monitor") || entityLabel.includes("verif");
56
- }
57
- function isSectionEntityTypeNameMatch(activity, typeName) {
58
- if (!activity.entityTypeName)
59
- return false;
60
- return typeName.includes(activity.entityTypeName.toLowerCase());
61
- }
62
- function isSectionRelatedEntitiesMatch(activity, entry) {
63
- const typeName = entry.typeName.toLowerCase();
64
- const entryTypeIri = entry.typeIri.toLowerCase();
65
- for (const entity of activity.entities) {
66
- if (!entity.typeName)
67
- continue;
68
- const entityTypeLower = entity.typeName.toLowerCase();
69
- if (typeName.includes(entityTypeLower))
70
- return true;
71
- if (entryTypeIri.includes(entityTypeLower))
72
- return true;
73
- }
74
- return false;
75
- }
76
- export function matchesSection(activity, entry) {
77
- const typeName = entry.typeName.toLowerCase();
78
- const predicates = [
79
- () => isSectionLabelOrIriMatch(activity, typeName),
80
- () => isSectionPauseAliasMatch(activity, typeName),
81
- () => isSectionScaleAliasMatch(activity, typeName),
82
- () => isSectionMonitorAliasMatch(activity, typeName),
83
- () => isSectionEntityTypeNameMatch(activity, typeName),
84
- () => isSectionRelatedEntitiesMatch(activity, entry),
85
- ];
86
- return predicates.some((p) => p());
87
- }
88
- export function matchesManualActionSection(manualAction, entry, sectionCount) {
89
- if (sectionCount === 1)
90
- return true;
91
- const entryTypeIri = entry.typeIri.toLowerCase();
92
- const entryTypeName = entry.typeName.toLowerCase();
93
- const manualTypeIri = manualAction.typeIri.toLowerCase();
94
- const manualTypeName = manualAction.typeName.toLowerCase();
95
- const manualSubject = manualAction.subjectLabel?.toLowerCase() ?? manualAction.subjectIri.toLowerCase();
96
- return (manualTypeIri === entryTypeIri ||
97
- manualTypeName === entryTypeName ||
98
- entryTypeIri.includes(manualTypeName) ||
99
- manualTypeIri.includes(entryTypeName) ||
100
- manualSubject.includes(entryTypeName));
101
- }
102
- export function matchesManualActionActivity(manualAction, activity) {
103
- if (activity.entityIri === manualAction.subjectIri)
104
- return true;
105
- if (activity.entities.some((entity) => entity.iri === manualAction.subjectIri))
106
- return true;
107
- const subjectLabel = manualAction.subjectLabel?.toLowerCase();
108
- if (subjectLabel && activity.entityLabel.toLowerCase().includes(subjectLabel))
109
- return true;
110
- return activity.iri.toLowerCase().includes(iriLocalName(manualAction.subjectIri).toLowerCase());
111
- }
112
- export function findResolvedManualActionStatus(activity, manualActions) {
113
- const found = manualActions.find((manualAction) => matchesManualActionActivity(manualAction, activity));
114
- return found?.status === "COMPLETED" || found?.status === "REJECTED" ? found.status : null;
115
- }
116
- export function buildSections(args) {
117
- const { entityTypes, activities, provenance, planFailed } = args;
118
- const matched = new Set();
119
- const sections = entityTypes.map((entry) => {
120
- const sectionActivities = activities.filter((a) => {
121
- if (matched.has(a.iri))
122
- return false;
123
- return matchesSection(a, entry);
124
- });
125
- for (const a of sectionActivities)
126
- matched.add(a.iri);
127
- return {
128
- key: entry.typeIri,
129
- entry,
130
- activities: sectionActivities,
131
- status: deriveSectionStatus(sectionActivities, provenance, planFailed),
132
- };
133
- });
134
- const unmatched = activities.filter((a) => !matched.has(a.iri));
135
- if (isPresent(unmatched)) {
136
- sections.push({
137
- key: "__unmatched",
138
- entry: {
139
- typeIri: "__unmatched",
140
- typeName: "Other actions",
141
- addedCount: 0,
142
- updatedCount: unmatched.length,
143
- },
144
- activities: unmatched,
145
- status: deriveSectionStatus(unmatched, provenance, planFailed),
146
- });
147
- }
148
- return sections;
149
- }
150
- //# sourceMappingURL=execution-section-model.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"execution-section-model.js","sourceRoot":"","sources":["../../../src/components/planning/execution-section-model.ts"],"names":[],"mappings":"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"}
@@ -1,7 +0,0 @@
1
- type TruncateTooltipProps = {
2
- text: string;
3
- className: string;
4
- };
5
- export declare function TruncateTooltip(props: TruncateTooltipProps): import("react/jsx-runtime").JSX.Element;
6
- export {};
7
- //# sourceMappingURL=TruncateTooltip.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"TruncateTooltip.d.ts","sourceRoot":"","sources":["../../../../src/routes/data-explorer/components/TruncateTooltip.tsx"],"names":[],"mappings":"AAGA,KAAK,oBAAoB,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,CAAC;AAEhE,wBAAgB,eAAe,CAAC,KAAK,EAAE,oBAAoB,2CAmB1D"}
@@ -1,9 +0,0 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- import { useState } from "react";
3
- import { Tooltip, TooltipContent, TooltipTrigger } from "#components/tooltip/index";
4
- export function TruncateTooltip(props) {
5
- const { text, className } = props;
6
- const [isTruncated, setIsTruncated] = useState(false);
7
- return (_jsxs(Tooltip, { children: [_jsx(TooltipTrigger, { asChild: true, children: _jsx("span", { className: className, onMouseEnter: (event) => setIsTruncated(event.currentTarget.scrollWidth > event.currentTarget.clientWidth), children: text }) }), isTruncated && _jsx(TooltipContent, { children: text })] }));
8
- }
9
- //# sourceMappingURL=TruncateTooltip.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"TruncateTooltip.js","sourceRoot":"","sources":["../../../../src/routes/data-explorer/components/TruncateTooltip.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACjC,OAAO,EAAE,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAIpF,MAAM,UAAU,eAAe,CAAC,KAA2B;IACzD,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,GAAG,KAAK,CAAC;IAElC,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAEtD,OAAO,CACL,MAAC,OAAO,eACN,KAAC,cAAc,IAAC,OAAO,kBACrB,eACE,SAAS,EAAE,SAAS,EACpB,YAAY,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,cAAc,CAAC,KAAK,CAAC,aAAa,CAAC,WAAW,GAAG,KAAK,CAAC,aAAa,CAAC,WAAW,CAAC,YAEzG,IAAI,GACA,GACQ,EAEhB,WAAW,IAAI,KAAC,cAAc,cAAE,IAAI,GAAkB,IAC/C,CACX,CAAC;AACJ,CAAC"}
@@ -1,89 +0,0 @@
1
- import { humanDuration } from "@manta-eu/lib/humanize";
2
- import { AlertCircle, Check, ClockFading, Loader2, X } from "lucide-react";
3
- import { useEffect, useState } from "react";
4
- import { match } from "ts-pattern";
5
- import { parseTimestampMs, type ResolvedManualActionStatus } from "./execution-section-model";
6
- import type { ExecutionProvenanceActivity } from "#ldo-ui";
7
- import { cn } from "#lib/utils";
8
-
9
- type ExecutionActivityRowProps = {
10
- activity: ExecutionProvenanceActivity;
11
- manualActionStatus?: ResolvedManualActionStatus | null;
12
- };
13
-
14
- type ActivityIconState = "error" | "rejected" | "completed" | "running" | "pending";
15
-
16
- function resolveIconState(
17
- activity: ExecutionProvenanceActivity,
18
- manualActionStatus: ResolvedManualActionStatus | null,
19
- ): ActivityIconState {
20
- if (activity.errorMessage) return "error";
21
- if (manualActionStatus === "REJECTED") return "rejected";
22
- if (manualActionStatus === "COMPLETED" || !!activity.endedAtTime) return "completed";
23
- if (activity.startedAtTime) return "running";
24
- return "pending";
25
- }
26
-
27
- export function ExecutionActivityRow(props: ExecutionActivityRowProps) {
28
- const { activity, manualActionStatus = null } = props;
29
- const iconState = resolveIconState(activity, manualActionStatus);
30
- const hasError = iconState === "error";
31
- const isPending = iconState === "pending";
32
-
33
- return (
34
- <div className={cn("flex items-center justify-between pl-5 pr-3 py-2", hasError && "bg-error/10")}>
35
- <div className="flex items-center gap-3 min-w-0">
36
- {match(iconState)
37
- .with("error", () => <AlertCircle className="size-4 shrink-0 text-error-foreground" />)
38
- .with("rejected", () => <X className="size-4 shrink-0 text-error-foreground" />)
39
- .with("completed", () => <Check className="size-4 shrink-0 text-success-foreground" />)
40
- .with("running", () => <Loader2 className="size-4 shrink-0 text-muted-foreground animate-spin" />)
41
- .with("pending", () => <ClockFading className="size-4 shrink-0 text-muted-foreground/40" />)
42
- .exhaustive()}
43
- <span
44
- className={cn(
45
- "text-[12px] font-mono leading-[18px] truncate",
46
- hasError ? "text-error-foreground" : isPending ? "text-muted-foreground" : "text-default-foreground",
47
- )}
48
- >
49
- {activity.errorMessage ?? activity.entityLabel}
50
- </span>
51
- </div>
52
- <ActivityElapsed activity={activity} hasError={hasError} isPending={isPending} />
53
- </div>
54
- );
55
- }
56
-
57
- function ActivityElapsed(props: { activity: ExecutionProvenanceActivity; hasError: boolean; isPending: boolean }) {
58
- const { activity, hasError, isPending } = props;
59
- const isRunning = !!activity.startedAtTime && !activity.endedAtTime;
60
- const [now, setNow] = useState(() => Date.now());
61
-
62
- useEffect(() => {
63
- if (!isRunning) return;
64
- const id = setInterval(() => setNow(Date.now()), 1000);
65
- return () => clearInterval(id);
66
- }, [isRunning]);
67
-
68
- if (!activity.startedAtTime) {
69
- return <span className="text-[12px] font-mono leading-[18px] shrink-0 ml-3 text-muted-foreground">-</span>;
70
- }
71
-
72
- const start = parseTimestampMs(activity.startedAtTime);
73
- if (start === null) {
74
- return <span className="text-[12px] font-mono leading-[18px] shrink-0 ml-3 text-muted-foreground">-</span>;
75
- }
76
- const end = parseTimestampMs(activity.endedAtTime) ?? now;
77
- const label = humanDuration({ start, end, largest: 2 }) || "0 seconds";
78
-
79
- return (
80
- <span
81
- className={cn(
82
- "text-[12px] font-mono leading-[18px] shrink-0 ml-3",
83
- hasError ? "text-error-foreground" : isPending ? "text-muted-foreground" : "text-default-foreground",
84
- )}
85
- >
86
- {label}
87
- </span>
88
- );
89
- }