abstra 3.24.4__py3-none-any.whl → 3.24.5__py3-none-any.whl

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 (227) hide show
  1. {abstra-3.24.4.dist-info → abstra-3.24.5.dist-info}/METADATA +2 -1
  2. {abstra-3.24.4.dist-info → abstra-3.24.5.dist-info}/RECORD +175 -175
  3. abstra_internals/repositories/execution.py +3 -6
  4. abstra_internals/repositories/tasks.py +2 -2
  5. abstra_internals/services/sql_storage.py +236 -0
  6. abstra_internals/services/sql_storage_test.py +112 -0
  7. abstra_statics/dist/assets/{AbstraButton.vue_vue_type_script_setup_true_lang.779f608b.js → AbstraButton.vue_vue_type_script_setup_true_lang.6c541630.js} +2 -2
  8. abstra_statics/dist/assets/AbstraLogo.vue_vue_type_script_setup_true_lang.e1cfa824.js +2 -0
  9. abstra_statics/dist/assets/{ApiKeys.fbd3ff63.js → ApiKeys.96f96fe2.js} +2 -2
  10. abstra_statics/dist/assets/App.6b1b6a94.js +2 -0
  11. abstra_statics/dist/assets/App.vue_vue_type_style_index_0_lang.08210ecb.js +2 -0
  12. abstra_statics/dist/assets/{BaseLayout.c2cb2f91.js → BaseLayout.2a82be24.js} +2 -2
  13. abstra_statics/dist/assets/Billing.24199f3a.js +2 -0
  14. abstra_statics/dist/assets/{Breadcrumb.1a138bb1.js → Breadcrumb.c8da3019.js} +2 -2
  15. abstra_statics/dist/assets/{Builds.f3c7442c.js → Builds.366d6ceb.js} +2 -2
  16. abstra_statics/dist/assets/{Card.0899e9af.js → Card.0d56c597.js} +2 -2
  17. abstra_statics/dist/assets/{CircularLoading.9f9e733d.js → CircularLoading.daf759d9.js} +2 -2
  18. abstra_statics/dist/assets/CloseCircleOutlined.2be0ee6c.js +2 -0
  19. abstra_statics/dist/assets/{ConnectorsView.9d99a93b.js → ConnectorsView.904ff1c0.js} +2 -2
  20. abstra_statics/dist/assets/ConsoleOmniChat.vue_vue_type_script_setup_true_lang.17fc3e62.js +2 -0
  21. abstra_statics/dist/assets/ContentLayout.c133929b.js +2 -0
  22. abstra_statics/dist/assets/CrudView.789b533f.js +2 -0
  23. abstra_statics/dist/assets/{DocsButton.vue_vue_type_script_setup_true_lang.88300c0e.js → DocsButton.vue_vue_type_script_setup_true_lang.a2b3eeb7.js} +2 -2
  24. abstra_statics/dist/assets/{EditorLogin.440d3dc5.js → EditorLogin.cac0ed52.js} +2 -2
  25. abstra_statics/dist/assets/{EditorsView.c81d5c0a.js → EditorsView.4b74b13b.js} +2 -2
  26. abstra_statics/dist/assets/EnvVars.0dfba770.js +2 -0
  27. abstra_statics/dist/assets/{Error.8fd45945.js → Error.c7f25d1b.js} +2 -2
  28. abstra_statics/dist/assets/ExclamationCircleOutlined.ad66211a.js +2 -0
  29. abstra_statics/dist/assets/ExecutionContext.91c0e0db.js +2 -0
  30. abstra_statics/dist/assets/ExecutionStatusIcon.vue_vue_type_script_setup_true_lang.31b499a5.js +2 -0
  31. abstra_statics/dist/assets/{Files.2ef1fd75.js → Files.4ec90b9a.js} +2 -2
  32. abstra_statics/dist/assets/{Form.4047a0fe.js → Form.5a5cac5f.js} +2 -2
  33. abstra_statics/dist/assets/{FormRunner.8d0c448a.js → FormRunner.4a5270dc.js} +2 -2
  34. abstra_statics/dist/assets/{Home.c4610516.js → Home.1271fb51.js} +2 -2
  35. abstra_statics/dist/assets/{Home.586b0b6c.js → Home.f82c1587.js} +2 -2
  36. abstra_statics/dist/assets/LoadingContainer.4430af86.js +2 -0
  37. abstra_statics/dist/assets/LoadingOutlined.2d29f0e1.js +2 -0
  38. abstra_statics/dist/assets/{Login.2d19f80c.js → Login.180d7b1c.js} +2 -2
  39. abstra_statics/dist/assets/Login.8e13b15d.js +2 -0
  40. abstra_statics/dist/assets/{Login.vue_vue_type_script_setup_true_lang.8d4054f1.js → Login.vue_vue_type_script_setup_true_lang.ab4402e7.js} +2 -2
  41. abstra_statics/dist/assets/Logo.e86b6b23.js +2 -0
  42. abstra_statics/dist/assets/Logs.03931b09.js +2 -0
  43. abstra_statics/dist/assets/Main.3afc4ba4.js +2 -0
  44. abstra_statics/dist/assets/{MockForm.aa5ad3bb.js → MockForm.1fa371d2.js} +2 -2
  45. abstra_statics/dist/assets/Navbar.2d7490c1.js +2 -0
  46. abstra_statics/dist/assets/{NewEditor.5ebf7c09.css → NewEditor.d2ee5048.css} +1 -1
  47. abstra_statics/dist/assets/NewEditor.dc0e868f.js +8 -0
  48. abstra_statics/dist/assets/OidcLoginCallback.8216e341.js +2 -0
  49. abstra_statics/dist/assets/OidcLogoutCallback.f471ecec.js +2 -0
  50. abstra_statics/dist/assets/{OmniChat.3d03d97a.js → OmniChat.be2d3d92.js} +2 -2
  51. abstra_statics/dist/assets/{OnboardingView.4b747af0.js → OnboardingView.4957b5f8.js} +2 -2
  52. abstra_statics/dist/assets/Organization.27e529a7.js +2 -0
  53. abstra_statics/dist/assets/{Organizations.2340795a.js → Organizations.88897e55.js} +2 -2
  54. abstra_statics/dist/assets/{PhArrowCounterClockwise.vue.d9dd0137.js → PhArrowCounterClockwise.vue.9ad742bf.js} +2 -2
  55. abstra_statics/dist/assets/{PhArrowSquareOut.vue.93df49c1.js → PhArrowSquareOut.vue.2a07a9b3.js} +2 -2
  56. abstra_statics/dist/assets/{PhClockCounterClockwise.vue.f1f419a1.js → PhClockCounterClockwise.vue.b4dc22ed.js} +2 -2
  57. abstra_statics/dist/assets/{PhCopy.vue.e59eaa52.js → PhCopy.vue.17ec4184.js} +2 -2
  58. abstra_statics/dist/assets/PhCopySimple.vue.d9213ca9.js +2 -0
  59. abstra_statics/dist/assets/{PhCube.vue.e29a6bae.js → PhCube.vue.027246a6.js} +2 -2
  60. abstra_statics/dist/assets/{PhDatabase.vue.e22926ed.js → PhDatabase.vue.a188015f.js} +2 -2
  61. abstra_statics/dist/assets/{PhDotsThreeVertical.vue.fff5caa8.js → PhDotsThreeVertical.vue.e9c6f787.js} +2 -2
  62. abstra_statics/dist/assets/PhDownloadSimple.vue.9ba8ac6f.js +2 -0
  63. abstra_statics/dist/assets/{PhFileArrowUp.vue.9f743e50.js → PhFileArrowUp.vue.cd3d3139.js} +2 -2
  64. abstra_statics/dist/assets/{PhFilePlus.vue.b2e51e09.js → PhFilePlus.vue.2464bbea.js} +2 -2
  65. abstra_statics/dist/assets/{PhFolderPlus.vue.8742ea4d.js → PhFolderPlus.vue.696aab26.js} +2 -2
  66. abstra_statics/dist/assets/{PhGear.vue.1c3eb148.js → PhGear.vue.c247e86d.js} +2 -2
  67. abstra_statics/dist/assets/{PhKey.vue.8702106e.js → PhKey.vue.1a84e5d0.js} +2 -2
  68. abstra_statics/dist/assets/{PhPencil.vue.74eafe52.js → PhPencil.vue.3586175f.js} +2 -2
  69. abstra_statics/dist/assets/{PhPencilSimple.vue.87355169.js → PhPencilSimple.vue.e88b8fd0.js} +2 -2
  70. abstra_statics/dist/assets/{PhRocket.vue.d4a6ad6a.js → PhRocket.vue.8b8080c3.js} +2 -2
  71. abstra_statics/dist/assets/{PhSignOut.vue.83e5f761.js → PhSignOut.vue.9eb21b1c.js} +2 -2
  72. abstra_statics/dist/assets/{PhSparkle.vue.d2009d46.js → PhSparkle.vue.70bce97e.js} +2 -2
  73. abstra_statics/dist/assets/{PhTranslate.vue.bec980b1.js → PhTranslate.vue.e579c286.js} +2 -2
  74. abstra_statics/dist/assets/{PhUsersThree.vue.dd23f9fb.js → PhUsersThree.vue.65e9b349.js} +2 -2
  75. abstra_statics/dist/assets/{PhWarningCircle.vue.27414f28.js → PhWarningCircle.vue.3134c1fb.js} +2 -2
  76. abstra_statics/dist/assets/{PhWebhooksLogo.vue.ff084558.js → PhWebhooksLogo.vue.e7321653.js} +2 -2
  77. abstra_statics/dist/assets/{PlayerConfigProvider.ca40f824.js → PlayerConfigProvider.f0eaf9f3.js} +2 -2
  78. abstra_statics/dist/assets/{PlayerNavbar.393e1a48.js → PlayerNavbar.7c0453f2.js} +2 -2
  79. abstra_statics/dist/assets/Project.fad3c835.js +2 -0
  80. abstra_statics/dist/assets/{ProjectLogin.26c92806.js → ProjectLogin.83ae9c4c.js} +2 -2
  81. abstra_statics/dist/assets/{ProjectSettings.70e7668b.js → ProjectSettings.f4e91391.js} +2 -2
  82. abstra_statics/dist/assets/{ProjectsView.83667357.js → ProjectsView.c4e3053a.js} +2 -2
  83. abstra_statics/dist/assets/{SaveButton.56d96f71.js → SaveButton.986667ef.js} +2 -2
  84. abstra_statics/dist/assets/ScrollArea.vue_vue_type_script_setup_true_lang.077a2088.js +2 -0
  85. abstra_statics/dist/assets/{Sidebar.fd8a9f17.js → Sidebar.b1e6ca23.js} +2 -2
  86. abstra_statics/dist/assets/{Sql.92e57cd8.js → Sql.24116fa0.js} +4 -4
  87. abstra_statics/dist/assets/Steps.95771774.js +2 -0
  88. abstra_statics/dist/assets/TableCard.981d88c4.js +2 -0
  89. abstra_statics/dist/assets/{TableEditor.de62b5ae.js → TableEditor.a74fc9f4.js} +2 -2
  90. abstra_statics/dist/assets/{Tables.f33c00ab.js → Tables.870957e7.js} +2 -2
  91. abstra_statics/dist/assets/{TablesDiagram.621aac9c.js → TablesDiagram.6a217e62.js} +2 -2
  92. abstra_statics/dist/assets/TablesTabs.vue_vue_type_script_setup_true_lang.983777c7.js +2 -0
  93. abstra_statics/dist/assets/{Tasks.e7e8affd.js → Tasks.8fbc0cc0.js} +2 -2
  94. abstra_statics/dist/assets/{UploadOutlined.76665096.js → UploadOutlined.e2352877.js} +2 -2
  95. abstra_statics/dist/assets/{View.2d181255.js → View.fd9cb47e.js} +2 -2
  96. abstra_statics/dist/assets/{View.vue_vue_type_script_setup_true_lang.c02bf815.js → View.vue_vue_type_script_setup_true_lang.69e51c6f.js} +2 -2
  97. abstra_statics/dist/assets/{Watermark.34db0ee5.js → Watermark.b1fed4a7.js} +2 -2
  98. abstra_statics/dist/assets/{WebEditor.615c5ed3.js → WebEditor.75ce5bd6.js} +2 -2
  99. abstra_statics/dist/assets/WidgetPreview.5b0abaab.js +2 -0
  100. abstra_statics/dist/assets/WorkflowViewer.6f38d23f.js +2 -0
  101. abstra_statics/dist/assets/{ant-design.24becb3a.js → ant-design.5bd7ec4d.js} +2 -2
  102. abstra_statics/dist/assets/{apiKey.846016a7.js → apiKey.7cf16e08.js} +2 -2
  103. abstra_statics/dist/assets/asyncComputed.febe2b11.js +2 -0
  104. abstra_statics/dist/assets/{build.8774fc90.js → build.db7d8668.js} +2 -2
  105. abstra_statics/dist/assets/colorHelpers.939427f5.js +2 -0
  106. abstra_statics/dist/assets/{console.984bbe98.js → console.f402574a.js} +3 -3
  107. abstra_statics/dist/assets/constants.bbfdfb21.js +2 -0
  108. abstra_statics/dist/assets/{contracts.generated.31740563.js → contracts.generated.3f22c968.js} +2 -2
  109. abstra_statics/dist/assets/{cssMode.f4a00eca.js → cssMode.d0c8e26e.js} +2 -2
  110. abstra_statics/dist/assets/datetime.d5fe62ba.js +2 -0
  111. abstra_statics/dist/assets/dayjs.8c9480e7.js +2 -0
  112. abstra_statics/dist/assets/editor.11a4f0cf.js +2 -0
  113. abstra_statics/dist/assets/editor.main.2f21f781.js +2 -0
  114. abstra_statics/dist/assets/fetch.e0dfa394.js +2 -0
  115. abstra_statics/dist/assets/{files.c547743b.js → files.59b464cc.js} +2 -2
  116. abstra_statics/dist/assets/{folder.57131245.js → folder.5b0f3179.js} +2 -2
  117. abstra_statics/dist/assets/{freemarker2.7a4cfae0.js → freemarker2.03629ab6.js} +2 -2
  118. abstra_statics/dist/assets/{handlebars.db4a27de.js → handlebars.1163d9ba.js} +2 -2
  119. abstra_statics/dist/assets/{html.f4b3970c.js → html.ef74c7bd.js} +2 -2
  120. abstra_statics/dist/assets/{htmlMode.631923d5.js → htmlMode.8829acd3.js} +2 -2
  121. abstra_statics/dist/assets/{index.7f04c017.js → index.07e9309d.js} +2 -2
  122. abstra_statics/dist/assets/index.12e6cfe2.js +2 -0
  123. abstra_statics/dist/assets/{index.6f45b384.js → index.2aa34d4f.js} +2 -2
  124. abstra_statics/dist/assets/{index.2f74579e.js → index.5eeedb69.js} +2 -2
  125. abstra_statics/dist/assets/{index.2141f0e8.js → index.63e70668.js} +2 -2
  126. abstra_statics/dist/assets/index.75a16b09.js +2 -0
  127. abstra_statics/dist/assets/{index.30fbc3f5.js → index.76cbd30f.js} +2 -2
  128. abstra_statics/dist/assets/{index.12c03275.js → index.8995a499.js} +2 -2
  129. abstra_statics/dist/assets/{index.8e10d0e4.js → index.d408b03e.js} +2 -2
  130. abstra_statics/dist/assets/{javascript.b2197abc.js → javascript.0dfeb7bb.js} +2 -2
  131. abstra_statics/dist/assets/{jsonMode.8f2810a6.js → jsonMode.179b6695.js} +2 -2
  132. abstra_statics/dist/assets/{jwt-decode.esm.5ee65524.js → jwt-decode.esm.47f59010.js} +8 -8
  133. abstra_statics/dist/assets/{linters.7d520e27.js → linters.9f818fd6.js} +2 -2
  134. abstra_statics/dist/assets/{liquid.d3e68b2e.js → liquid.0627704b.js} +3 -3
  135. abstra_statics/dist/assets/{member.0ebe904c.js → member.689a99e8.js} +2 -2
  136. abstra_statics/dist/assets/{metadata.db332d21.js → metadata.69e468d6.js} +2 -2
  137. abstra_statics/dist/assets/{omniChatStore.cf2158f0.js → omniChatStore.07f62bd5.js} +2 -2
  138. abstra_statics/dist/assets/{organization.23b0aa74.js → organization.298987a0.js} +2 -2
  139. abstra_statics/dist/assets/{os.e0510e90.js → os.faa277a9.js} +2 -2
  140. abstra_statics/dist/assets/player.ebf3133f.js +2 -0
  141. abstra_statics/dist/assets/{plotly.min.f771780a.js → plotly.min.16914e67.js} +2 -2
  142. abstra_statics/dist/assets/polling.96dd15ee.js +2 -0
  143. abstra_statics/dist/assets/{project.afe4bf99.js → project.8a5a3632.js} +2 -2
  144. abstra_statics/dist/assets/{python.d8c220ed.js → python.3bf17d7f.js} +3 -3
  145. abstra_statics/dist/assets/{razor.97fa5198.js → razor.ea162aec.js} +2 -2
  146. abstra_statics/dist/assets/{record.dd367e66.js → record.30ff6eef.js} +2 -2
  147. abstra_statics/dist/assets/redirect.d0ca2136.js +2 -0
  148. abstra_statics/dist/assets/{repository.214607cb.js → repository.5c0cd878.js} +2 -2
  149. abstra_statics/dist/assets/repository.b1c27c35.js +2 -0
  150. abstra_statics/dist/assets/router.ae5c14de.js +2 -0
  151. abstra_statics/dist/assets/{router.9781de48.js → router.cfb03f89.js} +5 -5
  152. abstra_statics/dist/assets/{string.0d721ad6.js → string.39c8a903.js} +2 -2
  153. abstra_statics/dist/assets/{tables.45712b3f.js → tables.34208b7c.js} +2 -2
  154. abstra_statics/dist/assets/{tasksController.538cacf5.js → tasksController.04461f1a.js} +3 -3
  155. abstra_statics/dist/assets/{toggleHighContrast.daf44fef.js → toggleHighContrast.fa77fdf8.js} +7 -7
  156. abstra_statics/dist/assets/{tsMode.b785363f.js → tsMode.a5869619.js} +2 -2
  157. abstra_statics/dist/assets/{typescript.8bb42736.js → typescript.f2aa2c4b.js} +3 -3
  158. abstra_statics/dist/assets/url.4ba49005.js +2 -0
  159. abstra_statics/dist/assets/{useCodebaseEvents.e9e5d343.js → useCodebaseEvents.3542d20f.js} +2 -2
  160. abstra_statics/dist/assets/{useTables.2441f2b4.js → useTables.3e387cf0.js} +2 -2
  161. abstra_statics/dist/assets/userStore.e8304ebc.js +2 -0
  162. abstra_statics/dist/assets/uuid.2075c158.js +2 -0
  163. abstra_statics/dist/assets/{vue-flow-background.a4e5e1cd.js → vue-flow-background.32950d16.js} +2 -2
  164. abstra_statics/dist/assets/{vue-flow-core.bc9175da.js → vue-flow-core.d96b7b33.js} +2 -2
  165. abstra_statics/dist/assets/{vue-quill.esm-bundler.12c58800.js → vue-quill.esm-bundler.42450ff3.js} +2 -2
  166. abstra_statics/dist/assets/{workspaceStore.18d1ed9a.js → workspaceStore.9693f43b.js} +2 -2
  167. abstra_statics/dist/assets/{xml.1dacd023.js → xml.a1244cf9.js} +3 -3
  168. abstra_statics/dist/assets/{yaml.e841ac1c.js → yaml.759fa896.js} +3 -3
  169. abstra_statics/dist/console.html +14 -14
  170. abstra_statics/dist/editor.html +13 -13
  171. abstra_statics/dist/player.html +9 -9
  172. abstra_internals/services/fs_storage.py +0 -76
  173. abstra_internals/services/fs_storage_test.py +0 -71
  174. abstra_statics/dist/assets/AbstraLogo.vue_vue_type_script_setup_true_lang.9c4020b5.js +0 -2
  175. abstra_statics/dist/assets/App.cdc99dd8.js +0 -2
  176. abstra_statics/dist/assets/App.vue_vue_type_style_index_0_lang.c5b57972.js +0 -2
  177. abstra_statics/dist/assets/Billing.f53186a3.js +0 -2
  178. abstra_statics/dist/assets/CloseCircleOutlined.36d9f25b.js +0 -2
  179. abstra_statics/dist/assets/ConsoleOmniChat.vue_vue_type_script_setup_true_lang.7061772f.js +0 -2
  180. abstra_statics/dist/assets/ContentLayout.da1fff81.js +0 -2
  181. abstra_statics/dist/assets/CrudView.5b250a71.js +0 -2
  182. abstra_statics/dist/assets/EnvVars.688f662d.js +0 -2
  183. abstra_statics/dist/assets/ExclamationCircleOutlined.ea15dcd1.js +0 -2
  184. abstra_statics/dist/assets/LoadingContainer.12120ff7.js +0 -2
  185. abstra_statics/dist/assets/LoadingOutlined.3c83d190.js +0 -2
  186. abstra_statics/dist/assets/Login.de9c56a5.js +0 -2
  187. abstra_statics/dist/assets/Logo.3f68eae2.js +0 -2
  188. abstra_statics/dist/assets/Logs.1f1770c9.js +0 -2
  189. abstra_statics/dist/assets/LogsController.e88bddfb.js +0 -2
  190. abstra_statics/dist/assets/Main.a79ded11.js +0 -2
  191. abstra_statics/dist/assets/Navbar.2529c5ae.js +0 -2
  192. abstra_statics/dist/assets/NewEditor.2603174c.js +0 -8
  193. abstra_statics/dist/assets/OidcLoginCallback.7ed0c484.js +0 -2
  194. abstra_statics/dist/assets/OidcLogoutCallback.7303c2ab.js +0 -2
  195. abstra_statics/dist/assets/Organization.aab680aa.js +0 -2
  196. abstra_statics/dist/assets/PhCopySimple.vue.11467aaf.js +0 -2
  197. abstra_statics/dist/assets/PhDownloadSimple.vue.e11671c2.js +0 -2
  198. abstra_statics/dist/assets/Project.72b53439.js +0 -2
  199. abstra_statics/dist/assets/ScrollArea.vue_vue_type_script_setup_true_lang.a29d9bc5.js +0 -2
  200. abstra_statics/dist/assets/Steps.8d0493a8.js +0 -2
  201. abstra_statics/dist/assets/TableCard.75d256c8.js +0 -2
  202. abstra_statics/dist/assets/TablesTabs.vue_vue_type_script_setup_true_lang.db87820d.js +0 -2
  203. abstra_statics/dist/assets/WidgetPreview.d7362a8d.js +0 -2
  204. abstra_statics/dist/assets/WorkflowViewer.e89c0824.js +0 -2
  205. abstra_statics/dist/assets/asyncComputed.78dd1715.js +0 -2
  206. abstra_statics/dist/assets/colorHelpers.d8c19ea3.js +0 -2
  207. abstra_statics/dist/assets/constants.3b7395d7.js +0 -2
  208. abstra_statics/dist/assets/datetime.01b86df2.js +0 -2
  209. abstra_statics/dist/assets/dayjs.26942e0e.js +0 -2
  210. abstra_statics/dist/assets/editor.a6369f16.js +0 -2
  211. abstra_statics/dist/assets/editor.main.a0763b31.js +0 -2
  212. abstra_statics/dist/assets/fetch.33e85d9b.js +0 -2
  213. abstra_statics/dist/assets/index.0a1e5d8b.js +0 -2
  214. abstra_statics/dist/assets/index.fb17f22c.js +0 -2
  215. abstra_statics/dist/assets/player.78bcc85c.js +0 -2
  216. abstra_statics/dist/assets/polling.5339a00f.js +0 -2
  217. abstra_statics/dist/assets/redirect.970a0b6b.js +0 -2
  218. abstra_statics/dist/assets/repository.c874615c.js +0 -2
  219. abstra_statics/dist/assets/repository.d889eafa.js +0 -2
  220. abstra_statics/dist/assets/router.e3b4de3c.js +0 -2
  221. abstra_statics/dist/assets/url.804625c6.js +0 -2
  222. abstra_statics/dist/assets/userStore.9eb65729.js +0 -2
  223. abstra_statics/dist/assets/uuid.bc394306.js +0 -2
  224. {abstra-3.24.4.dist-info → abstra-3.24.5.dist-info}/WHEEL +0 -0
  225. {abstra-3.24.4.dist-info → abstra-3.24.5.dist-info}/entry_points.txt +0 -0
  226. {abstra-3.24.4.dist-info → abstra-3.24.5.dist-info}/top_level.txt +0 -0
  227. /abstra_statics/dist/assets/{LogsController.61f8e22d.css → ExecutionContext.61f8e22d.css} +0 -0
@@ -0,0 +1,2 @@
1
+ var ve=Object.defineProperty;var ye=(u,t,d)=>t in u?ve(u,t,{enumerable:!0,configurable:!0,writable:!0,value:d}):u[t]=d;var de=(u,t,d)=>(ye(u,typeof t!="symbol"?t+"":t,d),d);import{_ as G}from"./AbstraButton.vue_vue_type_script_setup_true_lang.6c541630.js";import{d as X,at as O,c as b,o as c,ac as A,ae as he,h as H,ed as ke,e as _,f as s,u as e,a as $,b as o,g as C,t as g,df as F,ad as be,aY as fe,_ as ie,dj as Z,ej as Se,f6 as ce,de as q,i as k,cS as ge,cT as Me,ei as me,ec as _e,el as R,bE as $e,bD as K,eh as re,bW as Le,cM as xe,eD as Ie,fa as Ce,r as V,w as Ae,ax as ze,U as Be,S as Ze,A as Q,dd as Pe,eG as je,eH as Te,es as Ne,et as Ve}from"./jwt-decode.esm.47f59010.js";import{F as Ee}from"./PhArrowSquareOut.vue.2a07a9b3.js";import{I as ue}from"./PhCopy.vue.17ec4184.js";import{F as He,I as We,O as De}from"./os.faa277a9.js";import{G as Fe}from"./PhPencilSimple.vue.e88b8fd0.js";import{_ as Ye}from"./vue-flow-background.32950d16.js";import{a as Xe,b as Ge,g as ee,u as Oe,e as qe,M as Je}from"./vue-flow-core.d96b7b33.js";import{k as te}from"./router.cfb03f89.js";import{a as le,B as Ue,b as Re}from"./build.db7d8668.js";import"./tables.34208b7c.js";import{G as Ke}from"./PhArrowCounterClockwise.vue.9ad742bf.js";import{I as Qe}from"./PhCopySimple.vue.d9213ca9.js";import{G as et}from"./PhDotsThreeVertical.vue.e9c6f787.js";import{F as tt,G as at,I as st,a as ot}from"./PhWebhooksLogo.vue.e7321653.js";import{a as ae}from"./asyncComputed.febe2b11.js";import{a as nt}from"./project.8a5a3632.js";import{g as rt}from"./datetime.d5fe62ba.js";import{_ as lt,R as it}from"./ExecutionStatusIcon.vue_vue_type_script_setup_true_lang.31b499a5.js";import{R as dt}from"./repository.5c0cd878.js";import{u as ct}from"./polling.96dd15ee.js";import{C as se}from"./Card.0d56c597.js";import"./index.8995a499.js";import"./record.30ff6eef.js";import"./string.39c8a903.js";import"./LoadingOutlined.2d29f0e1.js";(function(){try{var u=typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{},t=new Error().stack;t&&(u._sentryDebugIds=u._sentryDebugIds||{},u._sentryDebugIds[t]="16b79520-1401-4eda-a38a-3b831c96417b",u._sentryDebugIdIdentifier="sentry-dbid-16b79520-1401-4eda-a38a-3b831c96417b")}catch{}})();const ut=["width","height","fill","transform"],pt={key:0},ft=_("path",{d:"M227.85,46.89a20,20,0,0,0-18.74-18.74c-13.13-.77-46.65.42-74.48,28.24L131,60H74.36a19.83,19.83,0,0,0-14.14,5.86L25.87,100.19a20,20,0,0,0,11.35,33.95l37.14,5.18,42.32,42.32,5.19,37.18A19.88,19.88,0,0,0,135.34,235a20.13,20.13,0,0,0,6.37,1,19.9,19.9,0,0,0,14.1-5.87l34.34-34.35A19.85,19.85,0,0,0,196,181.64V125l3.6-3.59C227.43,93.54,228.62,60,227.85,46.89ZM76,84h31L75.75,115.28l-27.23-3.8ZM151.6,73.37A72.27,72.27,0,0,1,204,52a72.17,72.17,0,0,1-21.38,52.41L128,159,97,128ZM172,180l-27.49,27.49-3.8-27.23L172,149Zm-72,22c-8.71,11.85-26.19,26-60,26a12,12,0,0,1-12-12c0-33.84,14.12-51.32,26-60A12,12,0,1,1,68.18,175.3C62.3,179.63,55.51,187.8,53,203c15.21-2.51,23.37-9.3,27.7-15.18A12,12,0,1,1,100,202Z"},null,-1),gt=[ft],mt={key:1},_t=_("path",{d:"M184,120v61.65a8,8,0,0,1-2.34,5.65l-34.35,34.35a8,8,0,0,1-13.57-4.53L128,176ZM136,72H74.35a8,8,0,0,0-5.65,2.34L34.35,108.69a8,8,0,0,0,4.53,13.57L80,128ZM40,216c37.65,0,50.69-19.69,54.56-28.18L68.18,161.44C59.69,165.31,40,178.35,40,216Z",opacity:"0.2"},null,-1),wt=_("path",{d:"M223.85,47.12a16,16,0,0,0-15-15c-12.58-.75-44.73.4-71.41,27.07L132.69,64H74.36A15.91,15.91,0,0,0,63,68.68L28.7,103a16,16,0,0,0,9.07,27.16l38.47,5.37,44.21,44.21,5.37,38.49a15.94,15.94,0,0,0,10.78,12.92,16.11,16.11,0,0,0,5.1.83A15.91,15.91,0,0,0,153,227.3L187.32,193A15.91,15.91,0,0,0,192,181.64V123.31l4.77-4.77C223.45,91.86,224.6,59.71,223.85,47.12ZM74.36,80h42.33L77.16,119.52,40,114.34Zm74.41-9.45a76.65,76.65,0,0,1,59.11-22.47,76.46,76.46,0,0,1-22.42,59.16L128,164.68,91.32,128ZM176,181.64,141.67,216l-5.19-37.17L176,139.31Zm-74.16,9.5C97.34,201,82.29,224,40,224a8,8,0,0,1-8-8c0-42.29,23-57.34,32.86-61.85a8,8,0,0,1,6.64,14.56c-6.43,2.93-20.62,12.36-23.12,38.91,26.55-2.5,36-16.69,38.91-23.12a8,8,0,1,1,14.56,6.64Z"},null,-1),vt=[_t,wt],yt={key:2},ht=_("path",{d:"M101.85,191.14C97.34,201,82.29,224,40,224a8,8,0,0,1-8-8c0-42.29,23-57.34,32.86-61.85a8,8,0,0,1,6.64,14.56c-6.43,2.93-20.62,12.36-23.12,38.91,26.55-2.5,36-16.69,38.91-23.12a8,8,0,1,1,14.56,6.64Zm122-144a16,16,0,0,0-15-15c-12.58-.75-44.73.4-71.4,27.07h0L88,108.7A8,8,0,0,1,76.67,97.39l26.56-26.57A4,4,0,0,0,100.41,64H74.35A15.9,15.9,0,0,0,63,68.68L28.7,103a16,16,0,0,0,9.07,27.16l38.47,5.37,44.21,44.21,5.37,38.49a15.94,15.94,0,0,0,10.78,12.92,16.11,16.11,0,0,0,5.1.83A15.91,15.91,0,0,0,153,227.3L187.32,193A16,16,0,0,0,192,181.65V155.59a4,4,0,0,0-6.83-2.82l-26.57,26.56a8,8,0,0,1-11.71-.42,8.2,8.2,0,0,1,.6-11.1l49.27-49.27h0C223.45,91.86,224.6,59.71,223.85,47.12Z"},null,-1),kt=[ht],bt={key:3},St=_("path",{d:"M221.86,47.24a14,14,0,0,0-13.11-13.1c-12.31-.73-43.77.39-69.88,26.5L133.52,66H74.35a13.9,13.9,0,0,0-9.89,4.1L30.11,104.44a14,14,0,0,0,7.94,23.76l39.13,5.46,45.16,45.16L127.8,218a14,14,0,0,0,23.76,7.92l34.35-34.35a13.91,13.91,0,0,0,4.1-9.89V122.48l5.35-5.35h0C221.46,91,222.59,59.56,221.86,47.24ZM38.11,115a2,2,0,0,1,.49-2L72.94,78.58A2,2,0,0,1,74.35,78h47.17L77.87,121.64l-38.14-5.32A1.93,1.93,0,0,1,38.11,115ZM178,181.65a2,2,0,0,1-.59,1.41L143.08,217.4a2,2,0,0,1-3.4-1.11l-5.32-38.16L178,134.48Zm8.87-73h0L128,167.51,88.49,128l58.87-58.88a78.47,78.47,0,0,1,60.69-23A2,2,0,0,1,209.88,48,78.47,78.47,0,0,1,186.88,108.64ZM100,190.31C95.68,199.84,81.13,222,40,222a6,6,0,0,1-6-6c0-41.13,22.16-55.68,31.69-60a6,6,0,1,1,5,10.92c-7,3.17-22.53,13.52-24.47,42.91,29.39-1.94,39.74-17.52,42.91-24.47a6,6,0,1,1,10.92,5Z"},null,-1),Mt=[St],$t={key:4},Lt=_("path",{d:"M223.85,47.12a16,16,0,0,0-15-15c-12.58-.75-44.73.4-71.41,27.07L132.69,64H74.36A15.91,15.91,0,0,0,63,68.68L28.7,103a16,16,0,0,0,9.07,27.16l38.47,5.37,44.21,44.21,5.37,38.49a15.94,15.94,0,0,0,10.78,12.92,16.11,16.11,0,0,0,5.1.83A15.91,15.91,0,0,0,153,227.3L187.32,193A15.91,15.91,0,0,0,192,181.64V123.31l4.77-4.77C223.45,91.86,224.6,59.71,223.85,47.12ZM74.36,80h42.33L77.16,119.52,40,114.34Zm74.41-9.45a76.65,76.65,0,0,1,59.11-22.47,76.46,76.46,0,0,1-22.42,59.16L128,164.68,91.32,128ZM176,181.64,141.67,216l-5.19-37.17L176,139.31Zm-74.16,9.5C97.34,201,82.29,224,40,224a8,8,0,0,1-8-8c0-42.29,23-57.34,32.86-61.85a8,8,0,0,1,6.64,14.56c-6.43,2.93-20.62,12.36-23.12,38.91,26.55-2.5,36-16.69,38.91-23.12a8,8,0,1,1,14.56,6.64Z"},null,-1),xt=[Lt],It={key:5},Ct=_("path",{d:"M219.86,47.36a12,12,0,0,0-11.22-11.22c-12-.71-42.82.38-68.35,25.91L134.35,68h-60a11.9,11.9,0,0,0-8.48,3.52L31.52,105.85a12,12,0,0,0,6.81,20.37l39.79,5.55,46.11,46.11,5.55,39.81a12,12,0,0,0,20.37,6.79l34.34-34.35a11.9,11.9,0,0,0,3.52-8.48v-60l5.94-5.94C219.48,90.18,220.57,59.41,219.86,47.36ZM36.21,115.6a3.94,3.94,0,0,1,1-4.09L71.53,77.17A4,4,0,0,1,74.35,76h52L78.58,123.76,39.44,118.3A3.94,3.94,0,0,1,36.21,115.6ZM180,181.65a4,4,0,0,1-1.17,2.83l-34.35,34.34a4,4,0,0,1-6.79-2.25l-5.46-39.15L180,129.65Zm-52-11.31L85.66,128l60.28-60.29c23.24-23.24,51.25-24.23,62.22-23.58a3.93,3.93,0,0,1,3.71,3.71c.65,11-.35,39-23.58,62.22ZM98.21,189.48C94,198.66,80,220,40,220a4,4,0,0,1-4-4c0-40,21.34-54,30.52-58.21a4,4,0,0,1,3.32,7.28c-7.46,3.41-24.43,14.66-25.76,46.85,32.19-1.33,43.44-18.3,46.85-25.76a4,4,0,1,1,7.28,3.32Z"},null,-1),At=[Ct],zt={name:"PhRocketLaunch"},Bt=X({...zt,props:{weight:{type:String},size:{type:[String,Number]},color:{type:String},mirrored:{type:Boolean}},setup(u){const t=u,d=O("weight","regular"),L=O("size","1em"),w=O("color","currentColor"),r=O("mirrored",!1),a=b(()=>{var i;return(i=t.weight)!=null?i:d}),p=b(()=>{var i;return(i=t.size)!=null?i:L}),l=b(()=>{var i;return(i=t.color)!=null?i:w}),x=b(()=>t.mirrored!==void 0?t.mirrored?"scale(-1, 1)":void 0:r?"scale(-1, 1)":void 0);return(i,v)=>(c(),A("svg",ke({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 256 256",width:p.value,height:p.value,fill:l.value,transform:x.value},i.$attrs),[he(i.$slots,"default"),a.value==="bold"?(c(),A("g",pt,gt)):a.value==="duotone"?(c(),A("g",mt,vt)):a.value==="fill"?(c(),A("g",yt,kt)):a.value==="light"?(c(),A("g",bt,Mt)):a.value==="regular"?(c(),A("g",$t,xt)):a.value==="thin"?(c(),A("g",It,At)):H("",!0)],16,ut))}}),Zt=X({__name:"WorkflowEdge",props:{id:{},sourceNode:{},targetNode:{},source:{},target:{},type:{},label:{type:[String,Object,Function]},style:{},selected:{type:Boolean},sourcePosition:{},targetPosition:{},sourceHandleId:{},targetHandleId:{},animated:{type:Boolean},updatable:{type:Boolean},markerStart:{},markerEnd:{},curvature:{},interactionWidth:{},data:{},events:{},labelStyle:{},labelShowBg:{type:Boolean},labelBgStyle:{},labelBgPadding:{},labelBgBorderRadius:{},sourceX:{},sourceY:{},targetX:{},targetY:{}},setup(u){const t=u;function d(r,a,p=0){const l=a.center.x-r.center.x,x=a.center.y-r.center.y,i=Math.sqrt(l*l+x*x);if(i===0)return{sourceX:r.center.x,sourceY:r.center.y,targetX:a.center.x,targetY:a.center.y};const v=l/i,S=x/i,f=r.width/2,M=r.height/2;let P=r.center.x,j=r.center.y;Math.abs(v)*M>Math.abs(S)*f?(P=r.center.x+(v>0?f:-f),j=r.center.y+S*f/Math.abs(v)):(P=r.center.x+v*M/Math.abs(S),j=r.center.y+(S>0?M:-M));const z=a.width/2,T=a.height/2;let E=a.center.x,m=a.center.y;return Math.abs(v)*T>Math.abs(S)*z?(E=a.center.x-(v>0?z:-z),m=a.center.y-S*z/Math.abs(v)):(E=a.center.x-v*T/Math.abs(S),m=a.center.y-(S>0?T:-T)),P+=v*p,j+=S*p,E-=v*p,m-=S*p,{sourceX:P,sourceY:j,targetX:E,targetY:m}}function L(r,a){const l={center:{x:r.computedPosition.x+r.dimensions.width/2,y:r.computedPosition.y+r.dimensions.height/2},width:r.dimensions.width,height:r.dimensions.height},i={center:{x:a.computedPosition.x+a.dimensions.width/2,y:a.computedPosition.y+a.dimensions.height/2},width:a.dimensions.width,height:a.dimensions.height};return d(l,i,10)}const w=b(()=>{if(!t.sourceNode||!t.targetNode)return ee({sourceX:0,sourceY:0,targetX:0,targetY:0});if(!t.sourceNode.dimensions.width||!t.targetNode.dimensions.width||!t.sourceNode.dimensions.height||!t.targetNode.dimensions.height)return ee({sourceX:0,sourceY:0,targetX:0,targetY:0});const r=L(t.sourceNode,t.targetNode);return ee(r)});return(r,a)=>{var p,l;return c(),A(fe,null,[s(e(Xe),{path:w.value[0],"marker-end":t.markerEnd},null,8,["path","marker-end"]),(l=(p=t.data)==null?void 0:p.props)!=null&&l.taskType?(c(),$(e(Ge),{key:0},{default:o(()=>[_("div",{style:be({transform:`translate(-50%, -50%) translate(${w.value[1]}px,${w.value[2]}px)`}),class:"nodrag nopan edge-label"},[s(e(F),null,{default:o(()=>[C(g(t.data.props.taskType),1)]),_:1})],4)]),_:1})):H("",!0)],64)}}});const Pt=ie(Zt,[["__scopeId","data-v-8f1859d4"]]);class jt{async list(t){return te.get(`projects/${t}/disabled-stages`)}async disableStage({projectId:t,stageId:d}){return te.patch(`projects/${t}/disabled-stages/${d}`,{enable:!1})}async enableStage({projectId:t,stageId:d}){return te.patch(`projects/${t}/disabled-stages/${d}`,{enable:!0})}}const oe=new jt;class Y{constructor(t){de(this,"id");this.dto=t,this.id=t}static async list(t){return(await oe.list(t)).map(L=>new Y(L))}static async disableStage({projectId:t,stageId:d}){return oe.disableStage({projectId:t,stageId:d})}static async enableStage({projectId:t,stageId:d}){return oe.enableStage({projectId:t,stageId:d})}}const Tt=X({__name:"WorkflowStageExecutions",props:{stageId:{},projectId:{},executions:{},taskStats:{},loading:{type:Boolean}},setup(u){const t=u,d=b(()=>t.taskStats?Math.round(t.taskStats.completed/t.taskStats.total*100):0),L=b(()=>{const a=d.value;return a===100?"#52c41a":a>=50?"#1890ff":"#faad14"}),w=a=>rt(a,{weekday:void 0}),r=a=>{if(a<60)return`${Math.round(a)}s`;const p=Math.floor(a/60);if(p<60)return`${p}m`;const l=Math.floor(p/60);return l<24?`${l}h`:`${Math.floor(l/24)}d`};return(a,p)=>(c(),$(e(Z),{vertical:"",size:4,style:{width:"100%"}},{default:o(()=>[a.executions&&a.executions.length>0?(c(),$(e(Z),{key:0,size:4,gap:4},{default:o(()=>[(c(!0),A(fe,null,Se(a.executions,l=>(c(),$(e(ce),{key:l.id,to:{name:"logs",params:{projectId:a.projectId},query:{executionId:l.id}}},{default:o(()=>[s(e(ge),{title:w(l.createdAt)},{content:o(()=>[s(e(Z),{vertical:"",size:4},{default:o(()=>[s(e(q),null,{default:o(()=>[C(g(e(k).translate("i18n_workflowviewer_status"))+": "+g(l.status),1)]),_:2},1024),s(e(q),null,{default:o(()=>[C(g(e(k).translate("i18n_workflowviewer_duration"))+": "+g(l.duration_seconds)+"s",1)]),_:2},1024),s(e(q),null,{default:o(()=>[C(g(e(k).translate("i18n_workflowviewer_version"))+": "+g(l.buildId.slice(0,6)),1)]),_:2},1024)]),_:2},1024)]),default:o(()=>[s(lt,{status:l.status},null,8,["status"])]),_:2},1032,["title"])]),_:2},1032,["to"]))),128))]),_:1})):H("",!0),a.taskStats&&a.taskStats.total>0?(c(),$(e(ce),{key:1,to:{name:"tasks",params:{projectId:a.projectId},query:{stage:a.stageId,status:"pending"}}},{default:o(()=>[s(e(Z),{vertical:"",size:2},{default:o(()=>[s(e(Me),{"show-info":!1,percent:d.value,"stroke-color":L.value,size:"small"},null,8,["percent","stroke-color"]),s(e(Z),{vertical:"",size:0},{default:o(()=>[a.taskStats.pending&&a.taskStats.averageCompletionSeconds?(c(),$(e(q),{key:0,type:"secondary",style:{fontSize:"11px"}},{default:o(()=>[C(g(e(k).translate("i18n_workflowviewer_pending_tasks").replace("{count}",a.taskStats.pending.toString()))+" ("+g(r(a.taskStats.averageCompletionSeconds))+" "+g(e(k).translate("i18n_workflowviewer_average"))+") ",1)]),_:1})):H("",!0)]),_:1})]),_:1})]),_:1},8,["to"])):H("",!0)]),_:1}))}}),Nt={class:"stage-content"},Vt={class:"stage-title"},Et={class:"action-item"},Ht={class:"action-item"},Wt={class:"action-warning"},Dt={key:1,class:"action-item"},pe="3.18.0",Ft=X({__name:"WorkflowStageNode",props:{stage:{}},setup(u){const t=u,d=me(),L=_e(),w=d.params.projectId,r=b(()=>({forms:tt,hooks:at,scripts:st,jobs:ot})[t.stage.type]),{result:a}=ae(async()=>await nt.get(w)),{result:p}=ae(async()=>{const I=(await le.list(w)).find(n=>n.latest);return I?await Ue.get(I.id):null}),{result:l,refetch:x}=ae(async()=>(await Y.list(w)).filter(I=>I)),i=()=>{L.push({name:"logs",params:{projectId:w},query:{stageId:t.stage.id}})},v=b(()=>t.stage.type==="forms"||t.stage.type==="hooks"),S=()=>{var n;if(!t.stage.path)return;const m=t.stage.type==="forms"?`/${t.stage.path}`:`/_hooks/${t.stage.path}`,I=(n=a.value)==null?void 0:n.getUrl(m);!I||(navigator.clipboard.writeText(I),xe.success(k.translate("i18n_workflowviewer_copied_url")))},f=b(()=>{var m;return(m=l.value)==null?void 0:m.map(I=>I.id).includes(t.stage.id)}),M=(m,I)=>{const[n,y,h]=m.split(".").map(Number),[D,B,W]=I.split(".").map(Number);return n>D?!0:n<D?!1:y>B?!0:y<B?!1:h>=W},P=b(()=>f.value?Ie:Ce),j=b(()=>f.value?k.translate("i18n_workflowviewer_enable_stage"):k.translate("i18n_workflowviewer_disable_stage")),z=b(()=>{var m;return!M(((m=p.value)==null?void 0:m.abstraVersion)||"0.0.0",pe)}),T=b(()=>z.value?k.translate("i18n_workflowviewer_disable_stages_warning").replace("{version}",pe):""),E=async()=>{z.value||(f.value?await Y.enableStage({projectId:w,stageId:t.stage.id}):await Y.disableStage({projectId:w,stageId:t.stage.id}),await x())};return(m,I)=>(c(),A("div",{class:re(["stage-node",{disabled:f.value}])},[_("div",Nt,[(c(),$(R(r.value),{size:18,class:"stage-icon"})),_("div",Vt,g(m.stage.title),1),s(e(Le),{trigger:["click"]},{overlay:o(()=>[s(e($e),null,{default:o(()=>[s(e(K),{onClick:i},{default:o(()=>[_("div",Et,[s(e(Ke),{size:16}),_("span",null,g(e(k).translate("i18n_workflowviewer_view_logs")),1)])]),_:1}),v.value?(c(),$(e(K),{key:0,onClick:S},{default:o(()=>[_("div",Ht,[s(e(Qe),{size:16}),_("span",null,g(e(k).translate("i18n_workflowviewer_copy_url")),1)])]),_:1})):H("",!0),s(e(K),{onClick:E},{default:o(()=>[z.value?(c(),$(e(ge),{key:0,placement:"left"},{content:o(()=>[_("div",Wt,[s(e(F),null,{default:o(()=>[C(g(T.value),1)]),_:1})])]),default:o(()=>[_("div",{class:re(["action-item",{disabled:z.value}])},[(c(),$(R(P.value),{size:16})),_("span",null,g(j.value),1)],2)]),_:1})):(c(),A("div",Dt,[(c(),$(R(P.value),{size:16})),_("span",null,g(j.value),1)]))]),_:1})]),_:1})]),default:o(()=>[s(e(et),{style:{cursor:"pointer"},size:20,class:"actions-menu"})]),_:1})]),s(Tt,{"stage-id":m.stage.id,"project-id":e(w),executions:m.stage.executions,"task-stats":m.stage.taskStats,style:{"margin-top":"8px"}},null,8,["stage-id","project-id","executions","task-stats"])],2))}});const J=ie(Ft,[["__scopeId","data-v-0d8346f9"]]);function Yt(u,t){const d=new it,L=new dt(u),w=V({}),r=V({}),a=V(!1);async function p(){const i=t.value;if(i.length===0){a.value=!1;return}a.value=!0;try{const[v,S]=await Promise.all([Promise.all(i.map(async f=>{try{const{executions:M}=await d.list({projectId:u,stageId:f,limit:6});return{stageId:f,executions:M}}catch(M){return console.error(`Failed to load executions for stage ${f}:`,M),{stageId:f,executions:[]}}})),L.getTasksStatistics()]);v.forEach(({stageId:f,executions:M})=>{w.value[f]=M}),S.forEach(f=>{r.value[f.stageId]={pending:f.pendingTasks,completed:f.completedTasks,total:f.totalTasks,averageCompletionSeconds:f.averageCompletionSeconds}})}catch(v){console.error("Failed to load workflow data:",v)}finally{a.value=!1}}const{startPolling:l,endPolling:x}=ct({task:p,interval:15e3});return Ae(t,i=>{i.length>0&&(p(),l())},{immediate:!0}),ze(()=>{x()}),{executionsByStage:w,taskStatsByStage:r,loading:a,refetch:p}}const we=u=>(Ne("data-v-7b40ff03"),u=u(),Ve(),u),Xt={class:"flow-container"},Gt={class:"code-container"},Ot=we(()=>_("code",{class:"install-code"},"pip install abstra",-1)),qt={class:"code-container"},Jt=we(()=>_("code",{class:"install-code"},"abstra editor .",-1)),Ut={key:0,class:"edit-button-text"},ne="#ea576a",Rt=X({__name:"WorkflowViewer",setup(u){const{onInit:t}=Oe(),d=new Re,L=me(),w=_e(),r=L.params.projectId,a=L.query.buildId,p=V(!0),l=V(null),x=V(!0),i=V(!1),v=()=>{w.push({name:"web-editor",params:{projectId:r}})},S=async n=>{try{await navigator.clipboard.writeText(n)}catch(y){console.error("Failed to copy:",y)}};t(n=>{x.value&&(n.fitView(),x.value=!1)});const f=V([]),M=V([]),P=b(()=>f.value.map(n=>n.id)),{executionsByStage:j,taskStatsByStage:z}=Yt(r,P),T=b(()=>f.value.length>0),E=b(()=>f.value.map(n=>({id:n.id,type:n.type,data:{...n,executions:j.value[n.id]||[],taskStats:z.value[n.id]||null},position:{x:n.position.x,y:n.position.y*1.5}}))),m=b(()=>M.value.map(n=>({id:n.id,source:n.sourceStageId,target:n.targetStageId,type:"task",data:{id:n.id,props:{taskType:n.taskType}},markerEnd:{type:Je.Arrow,width:24,height:24}})));function I(n){const y=[],h=[],D=["jobs","hooks","forms","scripts"];for(const B of D){const W=n[B]||[];for(const N of W){y.push({id:N.id,type:B,title:N.title,position:{x:N.workflow_position[0],y:N.workflow_position[1]},file:N.file,path:N.path,schedule:N.schedule});for(const U of N.transitions||[])h.push({id:U.id,sourceStageId:N.id,targetStageId:U.target_id,taskType:U.task_type})}}f.value=y,M.value=h}return Be(async()=>{try{p.value=!0;let n;if(a){const B=(await le.list(r)).find(W=>W.id===a);if(!B){l.value="Build not found";return}n=B}else{const B=(await le.list(r)).find(W=>W.latest);if(!B){l.value="No builds found for this project";return}n=B}const y=await d.get(n.id);if(!y||!y.abstraJson){l.value="No workflow data available for this build";return}const h=JSON.parse(y.abstraJson);I(h)}catch(n){l.value=n instanceof Error?n.message:"Failed to load workflow",console.error(n)}finally{p.value=!1}}),(n,y)=>(c(),A("div",Xt,[p.value?(c(),$(e(Ze),{key:0,style:{width:"100%"}})):T.value?(c(),$(e(qe),{key:2,nodes:E.value,edges:m.value,"default-viewport":{zoom:1.5},"fit-view-on-init":"","min-zoom":.1,"max-zoom":1.25,"pan-on-scroll":e(De).isMac,"snap-to-grid":""},{"edge-task":o(h=>[s(Pt,je(Te(h)),null,16)]),"node-forms":o(h=>[s(J,{stage:h.data},null,8,["stage"])]),"node-hooks":o(h=>[s(J,{stage:h.data},null,8,["stage"])]),"node-scripts":o(h=>[s(J,{stage:h.data},null,8,["stage"])]),"node-jobs":o(h=>[s(J,{stage:h.data},null,8,["stage"])]),default:o(()=>[s(e(Ye),{"pattern-color":"#aaa",gap:16})]),_:1},8,["nodes","edges","pan-on-scroll"])):(c(),$(e(se),{key:1,class:"empty-state-card"},{default:o(()=>[s(e(Z),{vertical:"",gap:24,align:"center"},{default:o(()=>[s(e(Bt),{size:64,color:ne}),s(e(Z),{vertical:"",gap:8,align:"center"},{default:o(()=>[s(e(Q),{level:3},{default:o(()=>[C(g(e(k).translate("i18n_workflowviewer_getting_started")),1)]),_:1}),s(e(F),{type:"secondary",style:{"text-align":"center"}},{default:o(()=>[C(g(e(k).translate("i18n_workflowviewer_no_workflow_description")),1)]),_:1})]),_:1}),s(e(Z),{gap:16,wrap:"wrap",justify:"center"},{default:o(()=>[s(e(se),{class:"option-card"},{default:o(()=>[s(e(Z),{vertical:"",gap:12},{default:o(()=>[s(e(He),{size:32,color:ne}),s(e(Q),{level:5},{default:o(()=>[C(g(e(k).translate("i18n_workflowviewer_option_cli")),1)]),_:1}),s(e(F),{type:"secondary",style:{"font-size":"13px"}},{default:o(()=>[C(g(e(k).translate("i18n_workflowviewer_cli_description")),1)]),_:1}),s(e(Z),{vertical:"",gap:8},{default:o(()=>[_("div",Gt,[Ot,s(G,{type:"text",size:"small",onClick:y[0]||(y[0]=h=>S("pip install abstra"))},{default:o(()=>[s(e(ue),{size:16})]),_:1})]),_("div",qt,[Jt,s(G,{type:"text",size:"small",onClick:y[1]||(y[1]=h=>S("abstra editor ."))},{default:o(()=>[s(e(ue),{size:16})]),_:1})])]),_:1})]),_:1})]),_:1}),s(e(se),{class:"option-card"},{default:o(()=>[s(e(Z),{vertical:"",gap:12},{default:o(()=>[s(e(We),{size:32,color:ne}),s(e(Q),{level:5},{default:o(()=>[C(g(e(k).translate("i18n_workflowviewer_option_online")),1)]),_:1}),s(e(F),{type:"secondary",style:{"font-size":"13px"}},{default:o(()=>[C(g(e(k).translate("i18n_workflowviewer_online_description")),1)]),_:1}),s(G,{type:"primary",onClick:v},{default:o(()=>[C(g(e(k).translate("i18n_workflowviewer_open_editor")),1)]),_:1})]),_:1})]),_:1})]),_:1}),s(e(Pe),{href:"https://www.abstra.io/docs",target:"_blank"},{default:o(()=>[C(g(e(k).translate("i18n_workflowviewer_view_docs"))+" ",1),s(e(Ee),{size:14,style:{"margin-left":"4px"}})]),_:1})]),_:1})]),_:1})),!p.value&&T.value?(c(),$(G,{key:3,class:re(["edit-button",{expanded:i.value}]),type:"primary",size:"large",onClick:v,onMouseenter:y[2]||(y[2]=h=>i.value=!0),onMouseleave:y[3]||(y[3]=h=>i.value=!1)},{default:o(()=>[s(e(Fe),{size:24}),i.value?(c(),A("span",Ut,g(e(k).translate("i18n_workflowviewer_edit_online")),1)):H("",!0)]),_:1},8,["class"])):H("",!0)]))}});const $a=ie(Rt,[["__scopeId","data-v-7b40ff03"]]);export{$a as default};
2
+ //# sourceMappingURL=WorkflowViewer.6f38d23f.js.map
@@ -1,2 +1,2 @@
1
- import{en as n,M as b}from"./jwt-decode.esm.5ee65524.js";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{},r=new Error().stack;r&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[r]="6aabfabc-1880-4946-8ffd-13ecefe86de0",e._sentryDebugIdIdentifier="sentry-dbid-6aabfabc-1880-4946-8ffd-13ecefe86de0")}catch{}})();function u(e){return n.exports.isArray(e)?e.length===0?"[ ]":"[ ... ]":n.exports.isObject(e)?Object.keys(e).length===0?"{ }":"{ ... }":n.exports.isString(e)?`'${e}'`:n.exports.isUndefined(e)||n.exports.isNull(e)?"None":e===!0?"True":e===!1?"False":`${e}`}function c(e){if(n.exports.isArray(e))return"array";if(n.exports.isObject(e))return"object";throw new Error("treeKey called with non-object and non-array")}function o(e,r=[],t){const f=t?`'${t}': ${u(e)}`:u(e);if(n.exports.isArray(e)){const i=c(e);return[{title:f,key:[...r,i].join("/"),children:e.flatMap((s,l)=>o(s,[...r,i,`${l}`]))}]}else if(n.exports.isObject(e)){const i=c(e);return[{title:f,key:[...r,i].join("/"),children:Object.entries(e).flatMap(([s,l])=>o(l,[...r,i,s],s))}]}else return[{title:f,key:r.join("/"),children:[]}]}function x(e,r){return new Promise(t=>{b.confirm({title:e,onOk:()=>t(!0),okText:r==null?void 0:r.okText,onCancel:()=>t(!1),cancelText:r==null?void 0:r.cancelText})})}export{x as a,o as t};
2
- //# sourceMappingURL=ant-design.24becb3a.js.map
1
+ import{en as n,M as b}from"./jwt-decode.esm.47f59010.js";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{},r=new Error().stack;r&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[r]="5b59670d-083b-4edb-9aa4-8cd2437b7cbe",e._sentryDebugIdIdentifier="sentry-dbid-5b59670d-083b-4edb-9aa4-8cd2437b7cbe")}catch{}})();function u(e){return n.exports.isArray(e)?e.length===0?"[ ]":"[ ... ]":n.exports.isObject(e)?Object.keys(e).length===0?"{ }":"{ ... }":n.exports.isString(e)?`'${e}'`:n.exports.isUndefined(e)||n.exports.isNull(e)?"None":e===!0?"True":e===!1?"False":`${e}`}function c(e){if(n.exports.isArray(e))return"array";if(n.exports.isObject(e))return"object";throw new Error("treeKey called with non-object and non-array")}function o(e,r=[],t){const l=t?`'${t}': ${u(e)}`:u(e);if(n.exports.isArray(e)){const i=c(e);return[{title:l,key:[...r,i].join("/"),children:e.flatMap((s,f)=>o(s,[...r,i,`${f}`]))}]}else if(n.exports.isObject(e)){const i=c(e);return[{title:l,key:[...r,i].join("/"),children:Object.entries(e).flatMap(([s,f])=>o(f,[...r,i,s],s))}]}else return[{title:l,key:r.join("/"),children:[]}]}function x(e,r){return new Promise(t=>{b.confirm({title:e,onOk:()=>t(!0),okText:r==null?void 0:r.okText,onCancel:()=>t(!1),cancelText:r==null?void 0:r.cancelText})})}export{x as a,o as t};
2
+ //# sourceMappingURL=ant-design.5bd7ec4d.js.map
@@ -1,2 +1,2 @@
1
- var o=Object.defineProperty;var c=(s,t,e)=>t in s?o(s,t,{enumerable:!0,configurable:!0,writable:!0,value:e}):s[t]=e;var i=(s,t,e)=>(c(s,typeof t!="symbol"?t+"":t,e),e);import{k as r}from"./router.9781de48.js";import"./jwt-decode.esm.5ee65524.js";(function(){try{var s=typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{},t=new Error().stack;t&&(s._sentryDebugIds=s._sentryDebugIds||{},s._sentryDebugIds[t]="39583216-5343-420f-a91e-283293568557",s._sentryDebugIdIdentifier="sentry-dbid-39583216-5343-420f-a91e-283293568557")}catch{}})();class u{constructor(){i(this,"urlPath","api-keys")}async create({projectId:t,name:e}){return r.post(`projects/${t}/${this.urlPath}`,{name:e})}async delete(t,e){await r.delete(`projects/${t}/${this.urlPath}/${e}`)}async list(t){return r.get(`projects/${t}/${this.urlPath}`)}}const a=new u;class n{constructor(t){this.dto=t}static async list(t){return(await a.list(t)).map(d=>new n(d))}static async create(t){const e=await a.create(t);return new n(e)}static async delete(t,e){await a.delete(t,e)}get id(){return this.dto.id}get name(){return this.dto.name}get createdAt(){return new Date(this.dto.createdAt)}get ownerId(){return this.dto.createdBy}get value(){var t;return(t=this.dto.value)!=null?t:null}}export{n as A};
2
- //# sourceMappingURL=apiKey.846016a7.js.map
1
+ var i=Object.defineProperty;var o=(s,t,e)=>t in s?i(s,t,{enumerable:!0,configurable:!0,writable:!0,value:e}):s[t]=e;var c=(s,t,e)=>(o(s,typeof t!="symbol"?t+"":t,e),e);import{k as r}from"./router.cfb03f89.js";import"./jwt-decode.esm.47f59010.js";(function(){try{var s=typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{},t=new Error().stack;t&&(s._sentryDebugIds=s._sentryDebugIds||{},s._sentryDebugIds[t]="8def0464-ac55-4548-9c4c-029362fd483c",s._sentryDebugIdIdentifier="sentry-dbid-8def0464-ac55-4548-9c4c-029362fd483c")}catch{}})();class u{constructor(){c(this,"urlPath","api-keys")}async create({projectId:t,name:e}){return r.post(`projects/${t}/${this.urlPath}`,{name:e})}async delete(t,e){await r.delete(`projects/${t}/${this.urlPath}/${e}`)}async list(t){return r.get(`projects/${t}/${this.urlPath}`)}}const a=new u;class n{constructor(t){this.dto=t}static async list(t){return(await a.list(t)).map(d=>new n(d))}static async create(t){const e=await a.create(t);return new n(e)}static async delete(t,e){await a.delete(t,e)}get id(){return this.dto.id}get name(){return this.dto.name}get createdAt(){return new Date(this.dto.createdAt)}get ownerId(){return this.dto.createdBy}get value(){var t;return(t=this.dto.value)!=null?t:null}}export{n as A};
2
+ //# sourceMappingURL=apiKey.7cf16e08.js.map
@@ -0,0 +1,2 @@
1
+ import{$ as c,c as l}from"./jwt-decode.esm.47f59010.js";(function(){try{var r=typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{},e=new Error().stack;e&&(r._sentryDebugIds=r._sentryDebugIds||{},r._sentryDebugIds[e]="87754999-3267-4e42-8311-af80219c9121",r._sentryDebugIdIdentifier="sentry-dbid-87754999-3267-4e42-8311-af80219c9121")}catch{}})();const i=r=>{const e=c({loading:!0,result:null,error:null}),n=t=>(e.value={loading:!1,result:t,error:null},t),s=t=>{e.value={loading:!1,result:null,error:t}},o=async()=>(e.value={loading:!0,result:e.value.result,error:null},r().then(n).catch(s));o();const u=l(()=>e.value.loading),a=l(()=>e.value.result),d=l(()=>e.value.error);return{loading:u,result:a,error:d,refetch:o}};export{i as a};
2
+ //# sourceMappingURL=asyncComputed.febe2b11.js.map
@@ -1,2 +1,2 @@
1
- import{k as n}from"./router.9781de48.js";import"./jwt-decode.esm.5ee65524.js";(function(){try{var a=typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{},e=new Error().stack;e&&(a._sentryDebugIds=a._sentryDebugIds||{},a._sentryDebugIds[e]="4c3231c0-b9fb-4dc6-a9e5-b8f94c125f06",a._sentryDebugIdIdentifier="sentry-dbid-4c3231c0-b9fb-4dc6-a9e5-b8f94c125f06")}catch{}})();class g{async list(e){return n.get(`projects/${e}/builds`)}async get(e){return n.get(`builds/${e}`)}async download(e){return n.get(`builds/${e}/download`)}}const d=new g;class l{constructor(e){this.dto=e}static async list(e){return(await d.list(e)).map(o=>new l(o))}get id(){return this.dto.id}get projectId(){return this.dto.projectId}get createdAt(){return new Date(this.dto.createdAt)}get status(){return this.dto.status}get log(){return this.dto.log}get latest(){return this.dto.latest}get abstraVersion(){return this.dto.abstraVersion}async download(){const e=await d.download(this.id);if(!e)throw new Error("Download failed");window.open(e.url,"_blank")}}class c{constructor(e,s,o,r){this.projectId=e,this.buildId=s,this.abstraVersion=o,this.project=r}static fromV0(e,s,o,r){const i={hooks:r.hooks.map(t=>({id:t.path,logQuery:{buildId:s,stageId:t.path,stageTitle:t.title},...t})),forms:r.forms.map(t=>({id:t.path,logQuery:{buildId:s,stageId:t.path,stageTitle:t.title},...t})),jobs:r.jobs.map(t=>({id:t.identifier,logQuery:{buildId:s,stageId:t.identifier,stageTitle:t.title},...t})),scripts:[]};return new c(e,s,o,i)}static fromDTO(e,s,o,r){const i={hooks:r.hooks.map(t=>({logQuery:{buildId:s,stageId:t.id,stageTitle:t.title},...t})),forms:r.forms.map(t=>({logQuery:{buildId:s,stageId:t.id,stageTitle:t.title},...t})),jobs:r.jobs.map(t=>({logQuery:{buildId:s,stageId:t.id,stageTitle:t.title},...t})),scripts:r.scripts.map(t=>({logQuery:{buildId:s,stageId:t.id,stageTitle:t.title},...t}))};return new c(e,s,o,i)}static async get(e){const s=await d.get(e);if(!s)throw new Error("Build not found");const{projectId:o,abstraJson:r,abstraVersion:i}=s;if(!r||!i)return null;const t=JSON.parse(r);if(!t.version)throw new Error("Version is invalid");return t.version==="0.1"?this.fromV0(o,e,i,t):this.fromDTO(o,e,i,t)}get runtimes(){return[...this.project.forms.map(e=>({...e,type:"form"})),...this.project.hooks.map(e=>({...e,type:"hook"})),...this.project.jobs.map(e=>({...e,type:"job"})),...this.project.scripts.map(e=>({...e,type:"script"}))]}}export{c as B,l as a,g as b};
2
- //# sourceMappingURL=build.8774fc90.js.map
1
+ import{k as n}from"./router.cfb03f89.js";import"./jwt-decode.esm.47f59010.js";(function(){try{var i=typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{},e=new Error().stack;e&&(i._sentryDebugIds=i._sentryDebugIds||{},i._sentryDebugIds[e]="047ec03d-2feb-456c-ba71-e8a78f42fd77",i._sentryDebugIdIdentifier="sentry-dbid-047ec03d-2feb-456c-ba71-e8a78f42fd77")}catch{}})();class g{async list(e){return n.get(`projects/${e}/builds`)}async get(e){return n.get(`builds/${e}`)}async download(e){return n.get(`builds/${e}/download`)}}const d=new g;class c{constructor(e){this.dto=e}static async list(e){return(await d.list(e)).map(a=>new c(a))}get id(){return this.dto.id}get projectId(){return this.dto.projectId}get createdAt(){return new Date(this.dto.createdAt)}get status(){return this.dto.status}get log(){return this.dto.log}get latest(){return this.dto.latest}get abstraVersion(){return this.dto.abstraVersion}async download(){const e=await d.download(this.id);if(!e)throw new Error("Download failed");window.open(e.url,"_blank")}}class l{constructor(e,s,a,r){this.projectId=e,this.buildId=s,this.abstraVersion=a,this.project=r}static fromV0(e,s,a,r){const o={hooks:r.hooks.map(t=>({id:t.path,logQuery:{buildId:s,stageId:t.path,stageTitle:t.title},...t})),forms:r.forms.map(t=>({id:t.path,logQuery:{buildId:s,stageId:t.path,stageTitle:t.title},...t})),jobs:r.jobs.map(t=>({id:t.identifier,logQuery:{buildId:s,stageId:t.identifier,stageTitle:t.title},...t})),scripts:[]};return new l(e,s,a,o)}static fromDTO(e,s,a,r){const o={hooks:r.hooks.map(t=>({logQuery:{buildId:s,stageId:t.id,stageTitle:t.title},...t})),forms:r.forms.map(t=>({logQuery:{buildId:s,stageId:t.id,stageTitle:t.title},...t})),jobs:r.jobs.map(t=>({logQuery:{buildId:s,stageId:t.id,stageTitle:t.title},...t})),scripts:r.scripts.map(t=>({logQuery:{buildId:s,stageId:t.id,stageTitle:t.title},...t}))};return new l(e,s,a,o)}static async get(e){const s=await d.get(e);if(!s)throw new Error("Build not found");const{projectId:a,abstraJson:r,abstraVersion:o}=s;if(!r||!o)return null;const t=JSON.parse(r);if(!t.version)throw new Error("Version is invalid");return t.version==="0.1"?this.fromV0(a,e,o,t):this.fromDTO(a,e,o,t)}get runtimes(){return[...this.project.forms.map(e=>({...e,type:"form"})),...this.project.hooks.map(e=>({...e,type:"hook"})),...this.project.jobs.map(e=>({...e,type:"job"})),...this.project.scripts.map(e=>({...e,type:"script"}))]}}export{l as B,c as a,g as b};
2
+ //# sourceMappingURL=build.db7d8668.js.map
@@ -0,0 +1,2 @@
1
+ import"./jwt-decode.esm.47f59010.js";(function(){try{var t=typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{},e=new Error().stack;e&&(t._sentryDebugIds=t._sentryDebugIds||{},t._sentryDebugIds[e]="50d6a969-08e6-4a9d-97ab-4db921d6909f",t._sentryDebugIdIdentifier="sentry-dbid-50d6a969-08e6-4a9d-97ab-4db921d6909f")}catch{}})();function p(t,e){const{r:n,g:r,b:a,usePound:o}=g(t);return w(c(n,-e),c(r,-e),c(a,-e),o)}function c(t,e){const n=t*(100+e*100)/100;return n>255?255:n<0?0:Math.round(n)}function E(t){return t.startsWith("#")||t.match(/^(rgb|hsl)/)}const v=(t,e)=>y(p(y(t),e)),P=t=>k(t)?v(t,.1):p(t,.1);function k(t){const{r:e,g:n,b:r}=g(t);return e*.299+n*.587+r*.114<186}function g(t){let e=!1;t[0]=="#"&&(t=t.slice(1),e=!0);const n=parseInt(t,16);return{r:n>>16&255,g:n>>8&255,b:n&255,usePound:e}}function y(t){const{r:e,g:n,b:r,usePound:a}=g(t);return w(255-e,255-n,255-r,a)}const w=(t,e,n,r=!0)=>(r?"#":"")+(n|e<<8|t<<16).toString(16).padStart(6,"0");function _(t){return new Promise((e,n)=>{const r=document.createElement("img");r.src=t,r.crossOrigin="Anonymous",r.style.display="none",document.body.appendChild(r);let a=0;r.onerror=o=>n(new Error(`Failed to load image: ${o}`)),r.onload=()=>{const{width:o,height:l}=r,s=document.createElement("canvas");s.width=o,s.height=l;const u=s.getContext("2d");if(!u)return e(!1);u.drawImage(r,0,0);const I=u.getImageData(0,0,s.width,s.height),{data:i}=I;let f,b,h,m;for(let d=0,x=i.length;d<x;d+=4)f=i[d],b=i[d+1],h=i[d+2],m=Math.floor((f+b+h)/3),a+=m;const D=Math.floor(a/(o*l));document.body.removeChild(r),e(D<=127)}})}export{k as a,_ as b,P as c,E as i,v as l};
2
+ //# sourceMappingURL=colorHelpers.939427f5.js.map