mage-ai 0.8.79__tar.gz → 0.8.80__tar.gz

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.

Potentially problematic release.


This version of mage-ai might be problematic. Click here for more details.

Files changed (988) hide show
  1. {mage-ai-0.8.79/mage_ai.egg-info → mage-ai-0.8.80}/PKG-INFO +1 -1
  2. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/api/policies/PipelineRunPolicy.py +1 -0
  3. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/api/presenters/StatusPresenter.py +1 -0
  4. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/api/resources/StatusResource.py +2 -0
  5. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/executors/streaming_pipeline_executor.py +73 -57
  6. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/models/constants.py +2 -0
  7. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/models/widget/charts.py +23 -4
  8. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/orchestration/notification/sender.py +18 -5
  9. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/constants.py +1 -1
  10. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/404.html +2 -2
  11. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/404.html.html +2 -2
  12. {mage-ai-0.8.79/mage_ai/server/frontend_dist/_next/static/idk86oPaHvilJ9Afk8jIL → mage-ai-0.8.80/mage_ai/server/frontend_dist/_next/static/K62oaHK5x3k16vVxdvIWf}/_buildManifest.js +1 -1
  13. mage-ai-0.8.80/mage_ai/server/frontend_dist/_next/static/chunks/8312-71137409aea5d028.js +1 -0
  14. mage-ai-0.8.80/mage_ai/server/frontend_dist/_next/static/chunks/pages/pipelines/[pipeline]/edit-d90d32812b2be89e.js +1 -0
  15. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/index.html +2 -2
  16. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/manage.html +2 -2
  17. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/pipeline-runs.html +2 -2
  18. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/pipelines/[pipeline]/backfills/[...slug].html +2 -2
  19. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/pipelines/[pipeline]/backfills.html +2 -2
  20. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/pipelines/[pipeline]/edit.html +2 -2
  21. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/pipelines/[pipeline]/logs.html +2 -2
  22. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/pipelines/[pipeline]/monitors/block-runs.html +2 -2
  23. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/pipelines/[pipeline]/monitors/block-runtime.html +2 -2
  24. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/pipelines/[pipeline]/monitors.html +2 -2
  25. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/pipelines/[pipeline]/runs/[run].html +2 -2
  26. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/pipelines/[pipeline]/runs.html +2 -2
  27. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/pipelines/[pipeline]/settings.html +2 -2
  28. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/pipelines/[pipeline]/syncs.html +2 -2
  29. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/pipelines/[pipeline]/triggers/[...slug].html +2 -2
  30. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/pipelines/[pipeline]/triggers.html +2 -2
  31. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/pipelines/[pipeline].html +2 -2
  32. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/pipelines.html +2 -2
  33. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/settings/account/profile.html +2 -2
  34. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/settings/workspace/preferences.html +2 -2
  35. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/settings/workspace/sync-data.html +2 -2
  36. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/settings/workspace/users.html +2 -2
  37. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/settings.html +2 -2
  38. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/sign-in.html +2 -2
  39. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/terminal.html +2 -2
  40. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/test.html +3 -3
  41. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/triggers.html +2 -2
  42. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/kernel_output_parser.py +5 -0
  43. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/services/gcp/cloud_run/cloud_run.py +37 -18
  44. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/services/gcp/cloud_run/config.py +2 -1
  45. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/tests/orchestration/notification/test_sender.py +6 -4
  46. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/usage_statistics/logger.py +2 -0
  47. {mage-ai-0.8.79 → mage-ai-0.8.80/mage_ai.egg-info}/PKG-INFO +1 -1
  48. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai.egg-info/SOURCES.txt +5 -5
  49. {mage-ai-0.8.79 → mage-ai-0.8.80}/setup.py +1 -1
  50. mage-ai-0.8.79/mage_ai/server/frontend_dist/_next/static/chunks/8312-ade1ed2fd71120f8.js +0 -1
  51. mage-ai-0.8.79/mage_ai/server/frontend_dist/_next/static/chunks/pages/pipelines/[pipeline]/edit-22d76e8fa386ba37.js +0 -1
  52. {mage-ai-0.8.79 → mage-ai-0.8.80}/LICENSE +0 -0
  53. {mage-ai-0.8.79 → mage-ai-0.8.80}/MANIFEST.in +0 -0
  54. {mage-ai-0.8.79 → mage-ai-0.8.80}/README.md +0 -0
  55. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/__init__.py +0 -0
  56. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/api/__init__.py +0 -0
  57. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/api/api_context.py +0 -0
  58. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/api/constants.py +0 -0
  59. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/api/errors.py +0 -0
  60. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/api/logging.py +0 -0
  61. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/api/middleware.py +0 -0
  62. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/api/monitors/BaseMonitor.py +0 -0
  63. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/api/monitors/__init__.py +0 -0
  64. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/api/oauth_scope.py +0 -0
  65. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/api/operations/__init__.py +0 -0
  66. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/api/operations/base.py +0 -0
  67. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/api/operations/constants.py +0 -0
  68. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/api/policies/AutocompleteItemPolicy.py +0 -0
  69. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/api/policies/BackfillPolicy.py +0 -0
  70. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/api/policies/BasePolicy.py +0 -0
  71. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/api/policies/BlockOutputPolicy.py +0 -0
  72. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/api/policies/BlockPolicy.py +0 -0
  73. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/api/policies/BlockRunPolicy.py +0 -0
  74. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/api/policies/BlockTemplatePolicy.py +0 -0
  75. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/api/policies/ClusterPolicy.py +0 -0
  76. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/api/policies/DataProviderPolicy.py +0 -0
  77. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/api/policies/EventRulePolicy.py +0 -0
  78. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/api/policies/ExtensionOptionPolicy.py +0 -0
  79. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/api/policies/FileContentPolicy.py +0 -0
  80. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/api/policies/FilePolicy.py +0 -0
  81. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/api/policies/FileVersionPolicy.py +0 -0
  82. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/api/policies/GitBranchPolicy.py +0 -0
  83. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/api/policies/IntegrationDestinationPolicy.py +0 -0
  84. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/api/policies/IntegrationSourcePolicy.py +0 -0
  85. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/api/policies/IntegrationSourceStreamPolicy.py +0 -0
  86. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/api/policies/KernelPolicy.py +0 -0
  87. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/api/policies/LogPolicy.py +0 -0
  88. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/api/policies/MonitorStatPolicy.py +0 -0
  89. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/api/policies/OutputPolicy.py +0 -0
  90. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/api/policies/PipelinePolicy.py +0 -0
  91. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/api/policies/PipelineSchedulePolicy.py +0 -0
  92. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/api/policies/ProjectPolicy.py +0 -0
  93. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/api/policies/SchedulerPolicy.py +0 -0
  94. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/api/policies/SecretPolicy.py +0 -0
  95. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/api/policies/SessionPolicy.py +0 -0
  96. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/api/policies/StatusPolicy.py +0 -0
  97. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/api/policies/SyncPolicy.py +0 -0
  98. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/api/policies/UserPolicy.py +0 -0
  99. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/api/policies/VariablePolicy.py +0 -0
  100. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/api/policies/WidgetPolicy.py +0 -0
  101. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/api/policies/WorkspacePolicy.py +0 -0
  102. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/api/policies/__init__.py +0 -0
  103. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/api/presenters/AutocompleteItemPresenter.py +0 -0
  104. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/api/presenters/BackfillPresenter.py +0 -0
  105. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/api/presenters/BasePresenter.py +0 -0
  106. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/api/presenters/BlockOutputPresenter.py +0 -0
  107. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/api/presenters/BlockPresenter.py +0 -0
  108. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/api/presenters/BlockRunPresenter.py +0 -0
  109. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/api/presenters/BlockTemplatePresenter.py +0 -0
  110. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/api/presenters/ClusterPresenter.py +0 -0
  111. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/api/presenters/DataProviderPresenter.py +0 -0
  112. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/api/presenters/EventRulePresenter.py +0 -0
  113. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/api/presenters/ExtensionOptionPresenter.py +0 -0
  114. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/api/presenters/FileContentPresenter.py +0 -0
  115. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/api/presenters/FilePresenter.py +0 -0
  116. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/api/presenters/FileVersionPresenter.py +0 -0
  117. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/api/presenters/GitBranchPresenter.py +0 -0
  118. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/api/presenters/IntegrationDestinationPresenter.py +0 -0
  119. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/api/presenters/IntegrationSourcePresenter.py +0 -0
  120. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/api/presenters/IntegrationSourceStreamPresenter.py +0 -0
  121. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/api/presenters/KernelPresenter.py +0 -0
  122. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/api/presenters/LogPresenter.py +0 -0
  123. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/api/presenters/MonitorStatPresenter.py +0 -0
  124. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/api/presenters/OutputPresenter.py +0 -0
  125. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/api/presenters/PipelinePresenter.py +0 -0
  126. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/api/presenters/PipelineRunPresenter.py +0 -0
  127. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/api/presenters/PipelineSchedulePresenter.py +0 -0
  128. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/api/presenters/ProjectPresenter.py +0 -0
  129. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/api/presenters/SchedulerPresenter.py +0 -0
  130. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/api/presenters/SecretPresenter.py +0 -0
  131. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/api/presenters/SessionPresenter.py +0 -0
  132. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/api/presenters/SyncPresenter.py +0 -0
  133. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/api/presenters/UserPresenter.py +0 -0
  134. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/api/presenters/VariablePresenter.py +0 -0
  135. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/api/presenters/WidgetPresenter.py +0 -0
  136. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/api/presenters/WorkspacePresenter.py +0 -0
  137. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/api/presenters/__init__.py +0 -0
  138. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/api/presenters/mixins/__init__.py +0 -0
  139. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/api/presenters/mixins/users.py +0 -0
  140. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/api/resources/AutocompleteItemResource.py +0 -0
  141. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/api/resources/BackfillResource.py +0 -0
  142. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/api/resources/BaseResource.py +0 -0
  143. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/api/resources/BlockOutputResource.py +0 -0
  144. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/api/resources/BlockResource.py +0 -0
  145. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/api/resources/BlockRunResource.py +0 -0
  146. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/api/resources/BlockTemplateResource.py +0 -0
  147. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/api/resources/ClusterResource.py +0 -0
  148. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/api/resources/DataProviderResource.py +0 -0
  149. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/api/resources/DatabaseResource.py +0 -0
  150. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/api/resources/EventRuleResource.py +0 -0
  151. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/api/resources/ExtensionOptionResource.py +0 -0
  152. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/api/resources/FileContentResource.py +0 -0
  153. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/api/resources/FileResource.py +0 -0
  154. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/api/resources/FileVersionResource.py +0 -0
  155. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/api/resources/GenericResource.py +0 -0
  156. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/api/resources/GitBranchResource.py +0 -0
  157. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/api/resources/IntegrationDestinationResource.py +0 -0
  158. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/api/resources/IntegrationSourceResource.py +0 -0
  159. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/api/resources/IntegrationSourceStreamResource.py +0 -0
  160. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/api/resources/KernelResource.py +0 -0
  161. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/api/resources/LogResource.py +0 -0
  162. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/api/resources/MonitorStatResource.py +0 -0
  163. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/api/resources/OutputResource.py +0 -0
  164. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/api/resources/PipelineResource.py +0 -0
  165. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/api/resources/PipelineRunResource.py +0 -0
  166. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/api/resources/PipelineScheduleResource.py +0 -0
  167. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/api/resources/ProjectResource.py +0 -0
  168. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/api/resources/Resource.py +0 -0
  169. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/api/resources/SchedulerResource.py +0 -0
  170. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/api/resources/SecretResource.py +0 -0
  171. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/api/resources/SessionResource.py +0 -0
  172. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/api/resources/SyncResource.py +0 -0
  173. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/api/resources/UserResource.py +0 -0
  174. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/api/resources/VariableResource.py +0 -0
  175. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/api/resources/WidgetResource.py +0 -0
  176. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/api/resources/WorkspaceResource.py +0 -0
  177. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/api/resources/__init__.py +0 -0
  178. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/api/resources/mixins/__init__.py +0 -0
  179. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/api/resources/shared/__init__.py +0 -0
  180. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/api/resources/shared/collections.py +0 -0
  181. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/api/resources/shared/collective_loaders.py +0 -0
  182. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/api/result_set.py +0 -0
  183. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/api/utils.py +0 -0
  184. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/api/views.py +0 -0
  185. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/authentication/__init__.py +0 -0
  186. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/authentication/ldap.py +0 -0
  187. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/authentication/oauth2.py +0 -0
  188. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/authentication/passwords.py +0 -0
  189. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/autocomplete/__init__.py +0 -0
  190. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/autocomplete/utils.py +0 -0
  191. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/cli/__init__.py +0 -0
  192. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/cli/main.py +0 -0
  193. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/cli/utils.py +0 -0
  194. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/cluster_manager/__init__.py +0 -0
  195. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/cluster_manager/aws/__init__.py +0 -0
  196. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/cluster_manager/aws/ecs_task_manager.py +0 -0
  197. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/cluster_manager/aws/emr_cluster_manager.py +0 -0
  198. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/cluster_manager/cluster_manager.py +0 -0
  199. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/cluster_manager/constants.py +0 -0
  200. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/cluster_manager/gcp/__init__.py +0 -0
  201. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/cluster_manager/gcp/cloud_run_service_manager.py +0 -0
  202. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/cluster_manager/kubernetes/__init__.py +0 -0
  203. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/cluster_manager/kubernetes/workload_manager.py +0 -0
  204. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_cleaner/__init__.py +0 -0
  205. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_cleaner/analysis/__init__.py +0 -0
  206. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_cleaner/analysis/calculator.py +0 -0
  207. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_cleaner/analysis/charts.py +0 -0
  208. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_cleaner/analysis/constants.py +0 -0
  209. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_cleaner/cleaning_rules/__init__.py +0 -0
  210. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_cleaner/cleaning_rules/base.py +0 -0
  211. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_cleaner/cleaning_rules/clean_column_names.py +0 -0
  212. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_cleaner/cleaning_rules/fix_syntax_errors.py +0 -0
  213. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_cleaner/cleaning_rules/impute_values.py +0 -0
  214. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_cleaner/cleaning_rules/reformat_values.py +0 -0
  215. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_cleaner/cleaning_rules/remove_collinear_columns.py +0 -0
  216. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_cleaner/cleaning_rules/remove_columns_with_high_empty_rate.py +0 -0
  217. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_cleaner/cleaning_rules/remove_columns_with_single_value.py +0 -0
  218. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_cleaner/cleaning_rules/remove_duplicate_rows.py +0 -0
  219. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_cleaner/cleaning_rules/remove_outliers.py +0 -0
  220. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_cleaner/column_types/__init__.py +0 -0
  221. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_cleaner/column_types/column_type_detector.py +0 -0
  222. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_cleaner/column_types/constants.py +0 -0
  223. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_cleaner/data_cleaner.py +0 -0
  224. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_cleaner/estimators/__init__.py +0 -0
  225. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_cleaner/estimators/base.py +0 -0
  226. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_cleaner/estimators/encoders.py +0 -0
  227. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_cleaner/estimators/outlier_removal.py +0 -0
  228. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_cleaner/pipelines/__init__.py +0 -0
  229. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_cleaner/pipelines/base.py +0 -0
  230. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_cleaner/shared/__init__.py +0 -0
  231. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_cleaner/shared/utils.py +0 -0
  232. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_cleaner/statistics/__init__.py +0 -0
  233. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_cleaner/statistics/calculator.py +0 -0
  234. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_cleaner/transformer_actions/__init__.py +0 -0
  235. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_cleaner/transformer_actions/action_code.py +0 -0
  236. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_cleaner/transformer_actions/base.py +0 -0
  237. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_cleaner/transformer_actions/column.py +0 -0
  238. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_cleaner/transformer_actions/constants.py +0 -0
  239. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_cleaner/transformer_actions/custom_action.py +0 -0
  240. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_cleaner/transformer_actions/dependency_resolution.py +0 -0
  241. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_cleaner/transformer_actions/helpers.py +0 -0
  242. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_cleaner/transformer_actions/row.py +0 -0
  243. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_cleaner/transformer_actions/shared.py +0 -0
  244. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_cleaner/transformer_actions/spark/__init__.py +0 -0
  245. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_cleaner/transformer_actions/spark/constants.py +0 -0
  246. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_cleaner/transformer_actions/spark/transformers.py +0 -0
  247. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_cleaner/transformer_actions/udf/__init__.py +0 -0
  248. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_cleaner/transformer_actions/udf/addition.py +0 -0
  249. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_cleaner/transformer_actions/udf/base.py +0 -0
  250. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_cleaner/transformer_actions/udf/constant.py +0 -0
  251. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_cleaner/transformer_actions/udf/date_trunc.py +0 -0
  252. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_cleaner/transformer_actions/udf/difference.py +0 -0
  253. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_cleaner/transformer_actions/udf/distance_between.py +0 -0
  254. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_cleaner/transformer_actions/udf/divide.py +0 -0
  255. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_cleaner/transformer_actions/udf/formatted_date.py +0 -0
  256. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_cleaner/transformer_actions/udf/if_else.py +0 -0
  257. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_cleaner/transformer_actions/udf/multiply.py +0 -0
  258. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_cleaner/transformer_actions/udf/string_replace.py +0 -0
  259. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_cleaner/transformer_actions/udf/string_split.py +0 -0
  260. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_cleaner/transformer_actions/udf/substring.py +0 -0
  261. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_cleaner/transformer_actions/utils.py +0 -0
  262. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_cleaner/transformer_actions/variable_replacer.py +0 -0
  263. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_integrations/__init__.py +0 -0
  264. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_integrations/destinations/__init__.py +0 -0
  265. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_integrations/destinations/constants.py +0 -0
  266. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_integrations/logger/__init__.py +0 -0
  267. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_integrations/logger/utils.py +0 -0
  268. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_integrations/sources/__init__.py +0 -0
  269. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_integrations/sources/constants.py +0 -0
  270. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_integrations/utils/__init__.py +0 -0
  271. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_integrations/utils/config.py +0 -0
  272. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_integrations/utils/parsers.py +0 -0
  273. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_integrations/utils/scheduler.py +0 -0
  274. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/__init__.py +0 -0
  275. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/decorators.py +0 -0
  276. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/executors/__init__.py +0 -0
  277. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/executors/block_executor.py +0 -0
  278. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/executors/ecs_block_executor.py +0 -0
  279. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/executors/executor_factory.py +0 -0
  280. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/executors/gcp_cloud_run_block_executor.py +0 -0
  281. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/executors/k8s_block_executor.py +0 -0
  282. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/executors/k8s_pipeline_executor.py +0 -0
  283. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/executors/pipeline_executor.py +0 -0
  284. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/executors/pyspark_block_executor.py +0 -0
  285. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/executors/pyspark_pipeline_executor.py +0 -0
  286. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/git/__init__.py +0 -0
  287. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/logging/__init__.py +0 -0
  288. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/logging/gcs_logger_manager.py +0 -0
  289. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/logging/logger.py +0 -0
  290. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/logging/logger_manager.py +0 -0
  291. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/logging/logger_manager_factory.py +0 -0
  292. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/logging/s3_logger_manager.py +0 -0
  293. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/models/__init__.py +0 -0
  294. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/models/block/__init__.py +0 -0
  295. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/models/block/constants.py +0 -0
  296. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/models/block/dbt/__init__.py +0 -0
  297. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/models/block/dbt/utils/__init__.py +0 -0
  298. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/models/block/errors.py +0 -0
  299. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/models/block/extension/__init__.py +0 -0
  300. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/models/block/extension/block.py +0 -0
  301. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/models/block/extension/great_expectations.py +0 -0
  302. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/models/block/extension/utils.py +0 -0
  303. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/models/block/integration/__init__.py +0 -0
  304. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/models/block/r/__init__.py +0 -0
  305. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/models/block/r/templates/data_exporter.jinja +0 -0
  306. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/models/block/r/templates/data_loader.jinja +0 -0
  307. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/models/block/r/templates/transformer.jinja +0 -0
  308. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/models/block/sql/__init__.py +0 -0
  309. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/models/block/sql/bigquery.py +0 -0
  310. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/models/block/sql/clickhouse.py +0 -0
  311. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/models/block/sql/constants.py +0 -0
  312. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/models/block/sql/druid.py +0 -0
  313. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/models/block/sql/mssql.py +0 -0
  314. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/models/block/sql/mysql.py +0 -0
  315. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/models/block/sql/postgres.py +0 -0
  316. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/models/block/sql/redshift.py +0 -0
  317. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/models/block/sql/snowflake.py +0 -0
  318. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/models/block/sql/spark.py +0 -0
  319. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/models/block/sql/trino.py +0 -0
  320. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/models/block/sql/utils/__init__.py +0 -0
  321. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/models/block/sql/utils/shared.py +0 -0
  322. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/models/block/utils.py +0 -0
  323. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/models/errors.py +0 -0
  324. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/models/file.py +0 -0
  325. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/models/pipeline.py +0 -0
  326. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/models/pipelines/__init__.py +0 -0
  327. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/models/pipelines/integration_pipeline.py +0 -0
  328. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/models/pipelines/utils.py +0 -0
  329. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/models/project.py +0 -0
  330. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/models/triggers/__init__.py +0 -0
  331. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/models/utils.py +0 -0
  332. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/models/variable.py +0 -0
  333. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/models/widget/__init__.py +0 -0
  334. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/models/widget/constants.py +0 -0
  335. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/models/widget/utils.py +0 -0
  336. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/preferences.py +0 -0
  337. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/repo_manager.py +0 -0
  338. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/shared/__init__.py +0 -0
  339. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/shared/constants.py +0 -0
  340. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/shared/secrets.py +0 -0
  341. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/shared/stream.py +0 -0
  342. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/shared/utils.py +0 -0
  343. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/storage/__init__.py +0 -0
  344. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/storage/base_storage.py +0 -0
  345. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/storage/local_storage.py +0 -0
  346. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/storage/s3_storage.py +0 -0
  347. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/storage/utils.py +0 -0
  348. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/sync/__init__.py +0 -0
  349. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/sync/base_sync.py +0 -0
  350. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/sync/git_sync.py +0 -0
  351. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/templates/__init__.py +0 -0
  352. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/templates/callbacks/base.jinja +0 -0
  353. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/templates/callbacks/default.py +0 -0
  354. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/templates/callbacks/orchestration/triggers/default.jinja +0 -0
  355. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/templates/constants.py +0 -0
  356. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/templates/custom/python/default.jinja +0 -0
  357. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/templates/data_exporters/azure_blob_storage.py +0 -0
  358. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/templates/data_exporters/bigquery.py +0 -0
  359. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/templates/data_exporters/default.jinja +0 -0
  360. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/templates/data_exporters/deltalake/__init__.py +0 -0
  361. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/templates/data_exporters/deltalake/azure_blob_storage.py +0 -0
  362. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/templates/data_exporters/deltalake/default.jinja +0 -0
  363. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/templates/data_exporters/deltalake/gcs.py +0 -0
  364. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/templates/data_exporters/deltalake/s3.py +0 -0
  365. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/templates/data_exporters/file.py +0 -0
  366. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/templates/data_exporters/google_cloud_storage.py +0 -0
  367. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/templates/data_exporters/mongodb.py +0 -0
  368. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/templates/data_exporters/mysql.py +0 -0
  369. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/templates/data_exporters/orchestration/triggers/default.jinja +0 -0
  370. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/templates/data_exporters/postgres.py +0 -0
  371. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/templates/data_exporters/pyspark/default.jinja +0 -0
  372. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/templates/data_exporters/pyspark/s3.py +0 -0
  373. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/templates/data_exporters/r/default.jinja +0 -0
  374. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/templates/data_exporters/redshift.py +0 -0
  375. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/templates/data_exporters/s3.py +0 -0
  376. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/templates/data_exporters/snowflake.py +0 -0
  377. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/templates/data_exporters/streaming/dummy.yaml +0 -0
  378. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/templates/data_exporters/streaming/kafka.yaml +0 -0
  379. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/templates/data_exporters/streaming/kinesis.yaml +0 -0
  380. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/templates/data_exporters/streaming/mongodb.yaml +0 -0
  381. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/templates/data_exporters/streaming/opensearch.yaml +0 -0
  382. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/templates/data_exporters/streaming/s3.yaml +0 -0
  383. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/templates/data_loaders/api.py +0 -0
  384. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/templates/data_loaders/azure_blob_storage.py +0 -0
  385. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/templates/data_loaders/bigquery.py +0 -0
  386. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/templates/data_loaders/default.jinja +0 -0
  387. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/templates/data_loaders/deltalake/__init__.py +0 -0
  388. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/templates/data_loaders/deltalake/azure_blob_storage.py +0 -0
  389. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/templates/data_loaders/deltalake/default.jinja +0 -0
  390. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/templates/data_loaders/deltalake/gcs.py +0 -0
  391. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/templates/data_loaders/deltalake/s3.py +0 -0
  392. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/templates/data_loaders/druid.py +0 -0
  393. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/templates/data_loaders/file.py +0 -0
  394. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/templates/data_loaders/google_cloud_storage.py +0 -0
  395. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/templates/data_loaders/mongodb.py +0 -0
  396. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/templates/data_loaders/mysql.py +0 -0
  397. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/templates/data_loaders/orchestration/triggers/default.jinja +0 -0
  398. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/templates/data_loaders/postgres.py +0 -0
  399. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/templates/data_loaders/pyspark/default.jinja +0 -0
  400. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/templates/data_loaders/pyspark/s3.py +0 -0
  401. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/templates/data_loaders/r/default.jinja +0 -0
  402. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/templates/data_loaders/redshift.py +0 -0
  403. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/templates/data_loaders/s3.py +0 -0
  404. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/templates/data_loaders/snowflake.py +0 -0
  405. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/templates/data_loaders/streaming/amazon_sqs.yaml +0 -0
  406. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/templates/data_loaders/streaming/azure_event_hub.yaml +0 -0
  407. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/templates/data_loaders/streaming/google_cloud_pubsub.yaml +0 -0
  408. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/templates/data_loaders/streaming/kafka.yaml +0 -0
  409. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/templates/data_loaders/streaming/kinesis.yaml +0 -0
  410. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/templates/data_loaders/streaming/rabbitmq.yaml +0 -0
  411. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/templates/extensions/great_expectations/default.jinja +0 -0
  412. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/templates/main/__init__.py +0 -0
  413. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/templates/main/metadata.yaml +0 -0
  414. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/templates/main/projects/__init__.py +0 -0
  415. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/templates/pipeline/__init__.py +0 -0
  416. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/templates/pipeline/metadata.yaml +0 -0
  417. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/templates/pipeline_execution/emr_bootstrap.sh +0 -0
  418. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/templates/pipeline_execution/spark_script.jinja +0 -0
  419. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/templates/repo/__init__.py +0 -0
  420. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/templates/repo/charts/__init__.py +0 -0
  421. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/templates/repo/custom/__init__.py +0 -0
  422. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/templates/repo/data_exporters/__init__.py +0 -0
  423. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/templates/repo/data_exporters/export_titanic_clean.py +0 -0
  424. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/templates/repo/data_loaders/__init__.py +0 -0
  425. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/templates/repo/data_loaders/load_titanic.py +0 -0
  426. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/templates/repo/dbt/profiles.yml +0 -0
  427. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/templates/repo/extensions/__init__.py +0 -0
  428. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/templates/repo/io_config.yaml +0 -0
  429. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/templates/repo/metadata.yaml +0 -0
  430. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/templates/repo/pipelines/__init__.py +0 -0
  431. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/templates/repo/pipelines/example_pipeline/__init__.py +0 -0
  432. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/templates/repo/pipelines/example_pipeline/metadata.yaml +0 -0
  433. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/templates/repo/requirements.txt +0 -0
  434. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/templates/repo/scratchpads/__init__.py +0 -0
  435. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/templates/repo/transformers/__init__.py +0 -0
  436. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/templates/repo/transformers/fill_in_missing_values.py +0 -0
  437. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/templates/repo/utils/__init__.py +0 -0
  438. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/templates/sensors/bigquery.py +0 -0
  439. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/templates/sensors/default.py +0 -0
  440. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/templates/sensors/mysql.py +0 -0
  441. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/templates/sensors/postgres.py +0 -0
  442. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/templates/sensors/redshift.py +0 -0
  443. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/templates/sensors/s3.py +0 -0
  444. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/templates/sensors/snowflake.py +0 -0
  445. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/templates/template.py +0 -0
  446. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/templates/testable.jinja +0 -0
  447. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/templates/transformers/data_warehouse_transformer.jinja +0 -0
  448. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/templates/transformers/default.jinja +0 -0
  449. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/templates/transformers/default_pyspark.jinja +0 -0
  450. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/templates/transformers/default_streaming.jinja +0 -0
  451. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/templates/transformers/r/default.r +0 -0
  452. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/templates/transformers/suggestion_fmt.jinja +0 -0
  453. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/templates/transformers/transformer_actions/action.jinja +0 -0
  454. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/templates/transformers/transformer_actions/column/average.py +0 -0
  455. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/templates/transformers/transformer_actions/column/clean_column_name.py +0 -0
  456. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/templates/transformers/transformer_actions/column/count.py +0 -0
  457. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/templates/transformers/transformer_actions/column/count_distinct.py +0 -0
  458. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/templates/transformers/transformer_actions/column/diff.py +0 -0
  459. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/templates/transformers/transformer_actions/column/first.py +0 -0
  460. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/templates/transformers/transformer_actions/column/fix_syntax_errors.py +0 -0
  461. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/templates/transformers/transformer_actions/column/impute.py +0 -0
  462. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/templates/transformers/transformer_actions/column/last.py +0 -0
  463. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/templates/transformers/transformer_actions/column/max.py +0 -0
  464. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/templates/transformers/transformer_actions/column/median.py +0 -0
  465. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/templates/transformers/transformer_actions/column/min.py +0 -0
  466. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/templates/transformers/transformer_actions/column/normalize.py +0 -0
  467. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/templates/transformers/transformer_actions/column/reformat.py +0 -0
  468. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/templates/transformers/transformer_actions/column/remove.py +0 -0
  469. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/templates/transformers/transformer_actions/column/remove_outliers.py +0 -0
  470. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/templates/transformers/transformer_actions/column/select.py +0 -0
  471. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/templates/transformers/transformer_actions/column/shift_down.py +0 -0
  472. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/templates/transformers/transformer_actions/column/shift_up.py +0 -0
  473. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/templates/transformers/transformer_actions/column/standardize.py +0 -0
  474. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/templates/transformers/transformer_actions/column/sum.py +0 -0
  475. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/templates/transformers/transformer_actions/row/drop_duplicate.py +0 -0
  476. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/templates/transformers/transformer_actions/row/filter.py +0 -0
  477. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/templates/transformers/transformer_actions/row/remove.py +0 -0
  478. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/templates/transformers/transformer_actions/row/sort.py +0 -0
  479. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/templates/utils.py +0 -0
  480. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/utils/__init__.py +0 -0
  481. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/utils/block/__init__.py +0 -0
  482. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/utils/block/convert_content.py +0 -0
  483. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/data_preparation/variable_manager.py +0 -0
  484. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/errors/__init__.py +0 -0
  485. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/errors/base.py +0 -0
  486. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/extensions/__init__.py +0 -0
  487. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/extensions/constants.py +0 -0
  488. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/extensions/dbt/__init__.py +0 -0
  489. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/extensions/dbt/constants.py +0 -0
  490. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/extensions/great_expectations/__init__.py +0 -0
  491. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/extensions/great_expectations/constants.py +0 -0
  492. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/io/__init__.py +0 -0
  493. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/io/azure_blob_storage.py +0 -0
  494. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/io/base.py +0 -0
  495. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/io/bigquery.py +0 -0
  496. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/io/clickhouse.py +0 -0
  497. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/io/config.py +0 -0
  498. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/io/constants.py +0 -0
  499. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/io/druid.py +0 -0
  500. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/io/export_utils.py +0 -0
  501. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/io/file.py +0 -0
  502. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/io/google_cloud_storage.py +0 -0
  503. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/io/io_config.py +0 -0
  504. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/io/mongodb.py +0 -0
  505. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/io/mssql.py +0 -0
  506. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/io/mysql.py +0 -0
  507. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/io/postgres.py +0 -0
  508. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/io/redshift.py +0 -0
  509. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/io/s3.py +0 -0
  510. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/io/snowflake.py +0 -0
  511. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/io/spark.py +0 -0
  512. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/io/sql.py +0 -0
  513. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/io/trino.py +0 -0
  514. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/io/utils.py +0 -0
  515. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/orchestration/__init__.py +0 -0
  516. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/orchestration/airflow.py +0 -0
  517. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/orchestration/backfills/__init__.py +0 -0
  518. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/orchestration/backfills/service.py +0 -0
  519. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/orchestration/constants.py +0 -0
  520. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/orchestration/db/__init__.py +0 -0
  521. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/orchestration/db/alembic.ini +0 -0
  522. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/orchestration/db/database_manager.py +0 -0
  523. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/orchestration/db/errors.py +0 -0
  524. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/orchestration/db/migrations/README.md +0 -0
  525. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/orchestration/db/migrations/env.py +0 -0
  526. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/orchestration/db/migrations/script.py.mako +0 -0
  527. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/orchestration/db/migrations/versions/053ee2c10d85_add_completed_at.py +0 -0
  528. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/orchestration/db/migrations/versions/067326f43bc3_add_variables_to_pipelinerun.py +0 -0
  529. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/orchestration/db/migrations/versions/1a737bdee53b_add_preferences_to_user.py +0 -0
  530. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/orchestration/db/migrations/versions/1d8e65aeefdd_add_settings_to_pipeline_schedule.py +0 -0
  531. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/orchestration/db/migrations/versions/1f9353eddbc6_add_secrets_table.py +0 -0
  532. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/orchestration/db/migrations/versions/21e31d66ccea_add_pipeline_uuid_index_to_pipeline_.py +0 -0
  533. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/orchestration/db/migrations/versions/2266370f589b_add_indexes_to_pipeline_run.py +0 -0
  534. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/orchestration/db/migrations/versions/26305e46df52_create_backfills_table.py +0 -0
  535. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/orchestration/db/migrations/versions/3fafd217efa7_add_event_matcher_model.py +0 -0
  536. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/orchestration/db/migrations/versions/52ab80005742_add_variables_to_pipeline_schedule.py +0 -0
  537. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/orchestration/db/migrations/versions/5cd59ec4cf1d_add_passed_sla_to_pipeline_run.py +0 -0
  538. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/orchestration/db/migrations/versions/643b6e65e814_add_unique_indexes_on_authentication_.py +0 -0
  539. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/orchestration/db/migrations/versions/66e67039b8a2_add_executor_type_to_pipeline_run.py +0 -0
  540. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/orchestration/db/migrations/versions/6aecc9bc451c_update_schedule_type_enum.py +0 -0
  541. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/orchestration/db/migrations/versions/7ac6fed06918_add_token_column_to_pipeline_schedule_.py +0 -0
  542. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/orchestration/db/migrations/versions/847ea6602d6f_add_upstream_failed_to_block_run_status.py +0 -0
  543. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/orchestration/db/migrations/versions/84de4cdd6126_add_sla_to_pipeline_schedule.py +0 -0
  544. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/orchestration/db/migrations/versions/8971d4cd5b39_add_event_variables_and_metadata_to_.py +0 -0
  545. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/orchestration/db/migrations/versions/97ff9f55a3c0_create_users_oauth2_applications_and_.py +0 -0
  546. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/orchestration/db/migrations/versions/b01be687e537_add_started_at_to_block_run.py +0 -0
  547. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/orchestration/db/migrations/versions/c07a23ff782b_add_initial_tables.py +0 -0
  548. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/orchestration/db/migrations/versions/ec5df57a1c60_add_metrics_to_block_runs.py +0 -0
  549. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/orchestration/db/models/__init__.py +0 -0
  550. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/orchestration/db/models/base.py +0 -0
  551. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/orchestration/db/models/oauth.py +0 -0
  552. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/orchestration/db/models/schedules.py +0 -0
  553. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/orchestration/db/models/secrets.py +0 -0
  554. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/orchestration/db/process.py +0 -0
  555. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/orchestration/execution_process_manager.py +0 -0
  556. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/orchestration/job_manager.py +0 -0
  557. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/orchestration/metrics/__init__.py +0 -0
  558. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/orchestration/metrics/pipeline_run.py +0 -0
  559. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/orchestration/monitor/__init__.py +0 -0
  560. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/orchestration/monitor/monitor_stats.py +0 -0
  561. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/orchestration/notification/__init__.py +0 -0
  562. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/orchestration/notification/config.py +0 -0
  563. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/orchestration/pipeline_scheduler.py +0 -0
  564. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/orchestration/queue/__init__.py +0 -0
  565. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/orchestration/queue/celery_queue.py +0 -0
  566. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/orchestration/queue/config.py +0 -0
  567. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/orchestration/queue/process_queue.py +0 -0
  568. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/orchestration/queue/queue.py +0 -0
  569. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/orchestration/queue/queue_factory.py +0 -0
  570. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/orchestration/run_status_checker.py +0 -0
  571. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/orchestration/triggers/__init__.py +0 -0
  572. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/orchestration/triggers/api.py +0 -0
  573. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/orchestration/triggers/constants.py +0 -0
  574. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/orchestration/triggers/event_trigger.py +0 -0
  575. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/orchestration/triggers/loop_time_trigger.py +0 -0
  576. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/orchestration/triggers/time_trigger.py +0 -0
  577. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/orchestration/utils/__init__.py +0 -0
  578. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/orchestration/utils/resources.py +0 -0
  579. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/sample_datasets/__init__.py +0 -0
  580. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/sample_datasets/product_purchases.csv +0 -0
  581. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/sample_datasets/salary_survey.csv +0 -0
  582. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/sample_datasets/titanic_survival.csv +0 -0
  583. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/sample_datasets/user_emails.csv +0 -0
  584. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/__init__.py +0 -0
  585. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/active_kernel.py +0 -0
  586. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/api/__init__.py +0 -0
  587. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/api/base.py +0 -0
  588. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/api/blocks.py +0 -0
  589. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/api/clusters.py +0 -0
  590. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/api/constants.py +0 -0
  591. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/api/errors.py +0 -0
  592. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/api/events.py +0 -0
  593. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/api/integration_sources.py +0 -0
  594. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/api/projects.py +0 -0
  595. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/api/triggers.py +0 -0
  596. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/api/v1.py +0 -0
  597. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/app.py +0 -0
  598. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/client/__init__.py +0 -0
  599. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/client/mage.py +0 -0
  600. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/data/__init__.py +0 -0
  601. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/data/base.py +0 -0
  602. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/data/models.py +0 -0
  603. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/docs_server.py +0 -0
  604. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/execution_manager.py +0 -0
  605. {mage-ai-0.8.79/mage_ai/server/frontend_dist/_next/static/idk86oPaHvilJ9Afk8jIL → mage-ai-0.8.80/mage_ai/server/frontend_dist/_next/static/K62oaHK5x3k16vVxdvIWf}/_middlewareManifest.js +0 -0
  606. {mage-ai-0.8.79/mage_ai/server/frontend_dist/_next/static/idk86oPaHvilJ9Afk8jIL → mage-ai-0.8.80/mage_ai/server/frontend_dist/_next/static/K62oaHK5x3k16vVxdvIWf}/_ssgManifest.js +0 -0
  607. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/_next/static/chunks/1005-38fa861ca54679db.js +0 -0
  608. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/_next/static/chunks/1150.1378afaa474df64a.js +0 -0
  609. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/_next/static/chunks/1240.0819f45820d22263.js +0 -0
  610. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/_next/static/chunks/1286-a62050b3f897c6be.js +0 -0
  611. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/_next/static/chunks/1424-fbc7f741303c0aa0.js +0 -0
  612. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/_next/static/chunks/1450.d383f64c169d4278.js +0 -0
  613. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/_next/static/chunks/1774-aa51ef1da7217ff9.js +0 -0
  614. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/_next/static/chunks/2125-0b537dc53fe71b18.js +0 -0
  615. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/_next/static/chunks/2481.0454a0e25dc7e027.js +0 -0
  616. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/_next/static/chunks/2508.724531e7f9cf5f36.js +0 -0
  617. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/_next/static/chunks/2545.8371b39c898ae92b.js +0 -0
  618. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/_next/static/chunks/261.0a24b4ece1d29aa1.js +0 -0
  619. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/_next/static/chunks/266.e301071d22592682.js +0 -0
  620. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/_next/static/chunks/2714-1e79e9f2e998b544.js +0 -0
  621. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/_next/static/chunks/29107295-989a0767a635d9d5.js +0 -0
  622. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/_next/static/chunks/3077-187a4db6073d95df.js +0 -0
  623. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/_next/static/chunks/3453.992f4b1667e9882c.js +0 -0
  624. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/_next/static/chunks/3467.38cd0654ba6f788f.js +0 -0
  625. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/_next/static/chunks/3835.df296b4e4078e985.js +0 -0
  626. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/_next/static/chunks/3873.4b3eace753998412.js +0 -0
  627. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/_next/static/chunks/3898.880191695bb05845.js +0 -0
  628. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/_next/static/chunks/4042.5e16d36209052351.js +0 -0
  629. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/_next/static/chunks/4092.536ee541241f4538.js +0 -0
  630. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/_next/static/chunks/4388.04098706f32e69e7.js +0 -0
  631. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/_next/static/chunks/440.3ab77942f659ea0c.js +0 -0
  632. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/_next/static/chunks/4450.79f14f763d55c63e.js +0 -0
  633. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/_next/static/chunks/4454.13a2404adecaa39e.js +0 -0
  634. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/_next/static/chunks/4495-4f0340aa82e0c623.js +0 -0
  635. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/_next/static/chunks/4776.753ad29fa0a29a4a.js +0 -0
  636. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/_next/static/chunks/4804-01a10103ebe26ca8.js +0 -0
  637. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/_next/static/chunks/4883.a5bb0edbf8f3cc8f.js +0 -0
  638. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/_next/static/chunks/5008.29c2662ecc2b04c7.js +0 -0
  639. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/_next/static/chunks/5104.1edcf4437c471dd4.js +0 -0
  640. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/_next/static/chunks/5164.857023e800905b6f.js +0 -0
  641. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/_next/static/chunks/547-833b70469e82cb2b.js +0 -0
  642. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/_next/static/chunks/5540-1025c6b3e65558b3.js +0 -0
  643. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/_next/static/chunks/5682-c0d87b28bf381aae.js +0 -0
  644. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/_next/static/chunks/5729.0f2748e9e6dab951.js +0 -0
  645. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/_next/static/chunks/5824.628653557e904674.js +0 -0
  646. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/_next/static/chunks/5872-1767c45ee6690ae5.js +0 -0
  647. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/_next/static/chunks/5896-10a676bcc86978cc.js +0 -0
  648. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/_next/static/chunks/6042.c59010de9e699437.js +0 -0
  649. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/_next/static/chunks/6115.0c85e507543394ea.js +0 -0
  650. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/_next/static/chunks/6116.871a682ddf535aca.js +0 -0
  651. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/_next/static/chunks/6434.10380ee0968636ba.js +0 -0
  652. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/_next/static/chunks/6443.7b6d2b4e51018184.js +0 -0
  653. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/_next/static/chunks/6507.d3a17777d2c294e6.js +0 -0
  654. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/_next/static/chunks/6567-2488118bb39a9d99.js +0 -0
  655. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/_next/static/chunks/6958.8f39c585d36737a7.js +0 -0
  656. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/_next/static/chunks/7011-81dd8269c4806d26.js +0 -0
  657. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/_next/static/chunks/7107-b89772bb2a2669df.js +0 -0
  658. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/_next/static/chunks/72fdc299.2d5ec188af5d0049.js +0 -0
  659. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/_next/static/chunks/739.3d24945544b37e52.js +0 -0
  660. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/_next/static/chunks/7607-324c3a1e4e7d0628.js +0 -0
  661. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/_next/static/chunks/792.010ca00d79b2112f.js +0 -0
  662. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/_next/static/chunks/7947.77be4bec4d47774e.js +0 -0
  663. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/_next/static/chunks/7951.fee8b6c27c9ef777.js +0 -0
  664. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/_next/static/chunks/8018.968bf87c390e3312.js +0 -0
  665. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/_next/static/chunks/8097.b0345f30a7390c1d.js +0 -0
  666. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/_next/static/chunks/8180-325d712ecbed97ce.js +0 -0
  667. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/_next/static/chunks/8256.290ceb269b1ffe26.js +0 -0
  668. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/_next/static/chunks/826.75268ee34f93393a.js +0 -0
  669. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/_next/static/chunks/8277.5003e1d94bb85156.js +0 -0
  670. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/_next/static/chunks/844-1e171f361e63b36d.js +0 -0
  671. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/_next/static/chunks/8762.dff300f86bef8573.js +0 -0
  672. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/_next/static/chunks/8789-4f858e520d46973b.js +0 -0
  673. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/_next/static/chunks/8807.a68c69c8fe0a8c01.js +0 -0
  674. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/_next/static/chunks/8849.db0d50b4d84b09a6.js +0 -0
  675. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/_next/static/chunks/8901.21d26d5a1ee473fe.js +0 -0
  676. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/_next/static/chunks/8920.5700e380a2999098.js +0 -0
  677. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/_next/static/chunks/8957-6edafc5a2521efdf.js +0 -0
  678. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/_next/static/chunks/9129-8ae88897c3817909.js +0 -0
  679. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/_next/static/chunks/9258.6c6ef544c701a011.js +0 -0
  680. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/_next/static/chunks/9307.d4baf7aebbcef1f0.js +0 -0
  681. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/_next/static/chunks/9350-1ff50f1d7b9ee754.js +0 -0
  682. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/_next/static/chunks/9361.a0820e3069f5ef74.js +0 -0
  683. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/_next/static/chunks/9363.6b811b4c86277e07.js +0 -0
  684. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/_next/static/chunks/9437.a3c32f45cf9ef69b.js +0 -0
  685. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/_next/static/chunks/9566.f8bd24768ed14ecb.js +0 -0
  686. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/_next/static/chunks/9633.40e5056ca1e2b22a.js +0 -0
  687. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/_next/static/chunks/9785.5ff26cb26d84d6a1.js +0 -0
  688. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/_next/static/chunks/9832-f97919376d52e3bf.js +0 -0
  689. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/_next/static/chunks/9855.c4394a68322be9f8.js +0 -0
  690. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/_next/static/chunks/9927.e82a3e1e21990d77.js +0 -0
  691. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/_next/static/chunks/bd1a647f.6050372acaa5cc3c.js +0 -0
  692. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/_next/static/chunks/framework-7c365855dab1bf41.js +0 -0
  693. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/_next/static/chunks/main-bb0dd5375146d7fd.js +0 -0
  694. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/_next/static/chunks/pages/_app-b25383366d854e8e.js +0 -0
  695. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/_next/static/chunks/pages/_error-235304e5badb19eb.js +0 -0
  696. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/_next/static/chunks/pages/index-b6cd94a079629572.js +0 -0
  697. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/_next/static/chunks/pages/manage-eba67ac0edfdea1b.js +0 -0
  698. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/_next/static/chunks/pages/pipeline-runs-128dd171c6fff7ac.js +0 -0
  699. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/_next/static/chunks/pages/pipelines/[pipeline]/backfills/[...slug]-9e519ad50f639e00.js +0 -0
  700. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/_next/static/chunks/pages/pipelines/[pipeline]/backfills-f08b51d9dc56eab5.js +0 -0
  701. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/_next/static/chunks/pages/pipelines/[pipeline]/logs-0751190c3f720f8c.js +0 -0
  702. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/_next/static/chunks/pages/pipelines/[pipeline]/monitors/block-runs-302e1bd9fbf39994.js +0 -0
  703. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/_next/static/chunks/pages/pipelines/[pipeline]/monitors/block-runtime-7635e7031335de0f.js +0 -0
  704. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/_next/static/chunks/pages/pipelines/[pipeline]/monitors-5244d6c5d80af010.js +0 -0
  705. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/_next/static/chunks/pages/pipelines/[pipeline]/runs/[run]-90170de1e6fe8f04.js +0 -0
  706. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/_next/static/chunks/pages/pipelines/[pipeline]/runs-88994d0bcf41cf9e.js +0 -0
  707. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/_next/static/chunks/pages/pipelines/[pipeline]/settings-3c42f05001416811.js +0 -0
  708. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/_next/static/chunks/pages/pipelines/[pipeline]/syncs-891c3d3f7a2b634b.js +0 -0
  709. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/_next/static/chunks/pages/pipelines/[pipeline]/triggers/[...slug]-456d84426ffe5025.js +0 -0
  710. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/_next/static/chunks/pages/pipelines/[pipeline]/triggers-05f43f9eaf6528db.js +0 -0
  711. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/_next/static/chunks/pages/pipelines/[pipeline]-ca9457e1a6bced4b.js +0 -0
  712. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/_next/static/chunks/pages/pipelines-c73dab1d63317556.js +0 -0
  713. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/_next/static/chunks/pages/settings/account/profile-f5626eb662337ad5.js +0 -0
  714. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/_next/static/chunks/pages/settings/workspace/preferences-292e840e9386335e.js +0 -0
  715. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/_next/static/chunks/pages/settings/workspace/sync-data-353dc1ef2fadf70b.js +0 -0
  716. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/_next/static/chunks/pages/settings/workspace/users-cd838435ed1b8383.js +0 -0
  717. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/_next/static/chunks/pages/settings-d594a66a568306da.js +0 -0
  718. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/_next/static/chunks/pages/sign-in-56fb21d1b7d55ca9.js +0 -0
  719. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/_next/static/chunks/pages/terminal-d15ea617ef145b32.js +0 -0
  720. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/_next/static/chunks/pages/test-bd801bde63db7c9e.js +0 -0
  721. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/_next/static/chunks/pages/triggers-df30a0006fd775b8.js +0 -0
  722. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/_next/static/chunks/polyfills-5cd94c89d3acac5f.js +0 -0
  723. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/_next/static/chunks/webpack-bc5e4eb2c1ff587c.js +0 -0
  724. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/_next/static/css/d1e8e64d0b07af2f.css +0 -0
  725. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/favicon.ico +0 -0
  726. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/fonts/Fira_Code/ttf/FiraCode-Bold.ttf +0 -0
  727. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/fonts/Fira_Code/ttf/FiraCode-Light.ttf +0 -0
  728. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/fonts/Fira_Code/ttf/FiraCode-Medium.ttf +0 -0
  729. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/fonts/Fira_Code/ttf/FiraCode-Regular.ttf +0 -0
  730. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/fonts/Fira_Code/ttf/FiraCode-Retina.ttf +0 -0
  731. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/fonts/Fira_Code/ttf/FiraCode-SemiBold.ttf +0 -0
  732. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/fonts/Roboto/LICENSE.txt +0 -0
  733. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/fonts/Roboto/Roboto-Black.ttf +0 -0
  734. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/fonts/Roboto/Roboto-BlackItalic.ttf +0 -0
  735. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/fonts/Roboto/Roboto-Bold.ttf +0 -0
  736. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/fonts/Roboto/Roboto-BoldItalic.ttf +0 -0
  737. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/fonts/Roboto/Roboto-Italic.ttf +0 -0
  738. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/fonts/Roboto/Roboto-Light.ttf +0 -0
  739. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/fonts/Roboto/Roboto-LightItalic.ttf +0 -0
  740. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/fonts/Roboto/Roboto-Medium.ttf +0 -0
  741. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/fonts/Roboto/Roboto-MediumItalic.ttf +0 -0
  742. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/fonts/Roboto/Roboto-Regular.ttf +0 -0
  743. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/fonts/Roboto/Roboto-Thin.ttf +0 -0
  744. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/fonts/Roboto/Roboto-ThinItalic.ttf +0 -0
  745. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/fonts/Roboto_Mono/LICENSE.txt +0 -0
  746. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/fonts/Roboto_Mono/README.txt +0 -0
  747. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/fonts/Roboto_Mono/RobotoMono-Italic-VariableFont_wght.ttf +0 -0
  748. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/fonts/Roboto_Mono/RobotoMono-VariableFont_wght.ttf +0 -0
  749. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/fonts/Roboto_Mono/static/RobotoMono-Bold.ttf +0 -0
  750. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/fonts/Roboto_Mono/static/RobotoMono-BoldItalic.ttf +0 -0
  751. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/fonts/Roboto_Mono/static/RobotoMono-ExtraLight.ttf +0 -0
  752. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/fonts/Roboto_Mono/static/RobotoMono-ExtraLightItalic.ttf +0 -0
  753. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/fonts/Roboto_Mono/static/RobotoMono-Italic.ttf +0 -0
  754. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/fonts/Roboto_Mono/static/RobotoMono-Light.ttf +0 -0
  755. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/fonts/Roboto_Mono/static/RobotoMono-LightItalic.ttf +0 -0
  756. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/fonts/Roboto_Mono/static/RobotoMono-Medium.ttf +0 -0
  757. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/fonts/Roboto_Mono/static/RobotoMono-MediumItalic.ttf +0 -0
  758. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/fonts/Roboto_Mono/static/RobotoMono-Regular.ttf +0 -0
  759. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/fonts/Roboto_Mono/static/RobotoMono-SemiBold.ttf +0 -0
  760. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/fonts/Roboto_Mono/static/RobotoMono-SemiBoldItalic.ttf +0 -0
  761. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/fonts/Roboto_Mono/static/RobotoMono-Thin.ttf +0 -0
  762. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/fonts/Roboto_Mono/static/RobotoMono-ThinItalic.ttf +0 -0
  763. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/images/backfill.jpg +0 -0
  764. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/images/banner-shape-purple-peach.jpg +0 -0
  765. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/images/dashboard-api-key.webp +0 -0
  766. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/images/extensions/dbt/logo.png +0 -0
  767. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/images/extensions/great_expectations/logo.png +0 -0
  768. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/images/extra.jpg +0 -0
  769. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/images/monitor.jpg +0 -0
  770. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/images/run B.jpg +0 -0
  771. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/images/sessions/abstract.png +0 -0
  772. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/frontend_dist/vercel.svg +0 -0
  773. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/kernels.py +0 -0
  774. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/logger.py +0 -0
  775. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/scheduler_manager.py +0 -0
  776. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/server.py +0 -0
  777. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/subscriber.py +0 -0
  778. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/terminal_server.py +0 -0
  779. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/utils/__init__.py +0 -0
  780. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/utils/frontend_renderer.py +0 -0
  781. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/utils/output_display.py +0 -0
  782. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/server/websocket_server.py +0 -0
  783. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/services/__init__.py +0 -0
  784. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/services/airbyte/__init__.py +0 -0
  785. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/services/airbyte/client.py +0 -0
  786. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/services/airbyte/config.py +0 -0
  787. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/services/airbyte/constants.py +0 -0
  788. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/services/airbyte/exceptions.py +0 -0
  789. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/services/airbyte/server.py +0 -0
  790. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/services/aws/__init__.py +0 -0
  791. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/services/aws/ecs/__init__.py +0 -0
  792. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/services/aws/ecs/config.py +0 -0
  793. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/services/aws/ecs/ecs.py +0 -0
  794. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/services/aws/emr/__init__.py +0 -0
  795. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/services/aws/emr/config.py +0 -0
  796. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/services/aws/emr/emr.py +0 -0
  797. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/services/aws/emr/emr_basics.py +0 -0
  798. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/services/aws/emr/launcher.py +0 -0
  799. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/services/aws/emr/resource_manager.py +0 -0
  800. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/services/aws/events/__init__.py +0 -0
  801. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/services/aws/events/events.py +0 -0
  802. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/services/aws/s3/__init__.py +0 -0
  803. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/services/aws/s3/s3.py +0 -0
  804. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/services/aws/secrets_manager/__init__.py +0 -0
  805. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/services/aws/secrets_manager/secrets_manager.py +0 -0
  806. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/services/datadog/__init__.py +0 -0
  807. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/services/dbt/__init__.py +0 -0
  808. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/services/dbt/config.py +0 -0
  809. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/services/dbt/constants.py +0 -0
  810. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/services/dbt/dbt.py +0 -0
  811. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/services/email/__init__.py +0 -0
  812. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/services/email/config.py +0 -0
  813. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/services/email/email.py +0 -0
  814. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/services/gcp/__init__.py +0 -0
  815. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/services/gcp/cloud_run/__init__.py +0 -0
  816. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/services/google_chat/__init__.py +0 -0
  817. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/services/google_chat/config.py +0 -0
  818. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/services/google_chat/google_chat.py +0 -0
  819. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/services/hightouch/__init__.py +0 -0
  820. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/services/hightouch/config.py +0 -0
  821. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/services/hightouch/constants.py +0 -0
  822. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/services/hightouch/hightouch.py +0 -0
  823. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/services/k8s/__init__.py +0 -0
  824. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/services/k8s/config.py +0 -0
  825. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/services/k8s/constants.py +0 -0
  826. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/services/k8s/job_manager.py +0 -0
  827. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/services/metaplane/__init__.py +0 -0
  828. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/services/metaplane/config.py +0 -0
  829. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/services/metaplane/metaplane.py +0 -0
  830. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/services/opsgenie/__init__.py +0 -0
  831. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/services/opsgenie/config.py +0 -0
  832. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/services/opsgenie/opsgenie.py +0 -0
  833. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/services/slack/__init__.py +0 -0
  834. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/services/slack/config.py +0 -0
  835. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/services/slack/slack.py +0 -0
  836. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/services/stitch/__init__.py +0 -0
  837. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/services/stitch/config.py +0 -0
  838. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/services/stitch/constants.py +0 -0
  839. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/services/stitch/stitch.py +0 -0
  840. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/services/teams/__init__.py +0 -0
  841. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/services/teams/config.py +0 -0
  842. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/services/teams/teams.py +0 -0
  843. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/services/tracking/__init__.py +0 -0
  844. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/services/tracking/metrics.py +0 -0
  845. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/settings/__init__.py +0 -0
  846. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/shared/__init__.py +0 -0
  847. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/shared/array.py +0 -0
  848. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/shared/code.py +0 -0
  849. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/shared/config.py +0 -0
  850. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/shared/constants.py +0 -0
  851. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/shared/conversions.py +0 -0
  852. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/shared/custom_types.py +0 -0
  853. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/shared/dates.py +0 -0
  854. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/shared/environments.py +0 -0
  855. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/shared/hash.py +0 -0
  856. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/shared/http_client.py +0 -0
  857. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/shared/io.py +0 -0
  858. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/shared/logger.py +0 -0
  859. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/shared/multi.py +0 -0
  860. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/shared/parsers.py +0 -0
  861. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/shared/retry.py +0 -0
  862. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/shared/security.py +0 -0
  863. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/shared/strings.py +0 -0
  864. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/shared/urls.py +0 -0
  865. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/shared/utils.py +0 -0
  866. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/streaming/__init__.py +0 -0
  867. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/streaming/constants.py +0 -0
  868. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/streaming/sinks/__init__.py +0 -0
  869. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/streaming/sinks/amazon_s3.py +0 -0
  870. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/streaming/sinks/base.py +0 -0
  871. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/streaming/sinks/dummy.py +0 -0
  872. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/streaming/sinks/kafka.py +0 -0
  873. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/streaming/sinks/kinesis.py +0 -0
  874. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/streaming/sinks/mongodb.py +0 -0
  875. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/streaming/sinks/opensearch.py +0 -0
  876. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/streaming/sinks/sink_factory.py +0 -0
  877. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/streaming/sources/__init__.py +0 -0
  878. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/streaming/sources/amazon_sqs.py +0 -0
  879. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/streaming/sources/azure_event_hub.py +0 -0
  880. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/streaming/sources/base.py +0 -0
  881. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/streaming/sources/google_cloud_pubsub.py +0 -0
  882. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/streaming/sources/kafka.py +0 -0
  883. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/streaming/sources/kinesis.py +0 -0
  884. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/streaming/sources/rabbitmq.py +0 -0
  885. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/streaming/sources/shared.py +0 -0
  886. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/streaming/sources/source_factory.py +0 -0
  887. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/tests/__init__.py +0 -0
  888. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/tests/api/__init__.py +0 -0
  889. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/tests/api/operations/__init__.py +0 -0
  890. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/tests/api/operations/base.py +0 -0
  891. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/tests/api/operations/test_operations.py +0 -0
  892. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/tests/api/operations/test_sessions.py +0 -0
  893. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/tests/api/operations/test_users.py +0 -0
  894. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/tests/base_test.py +0 -0
  895. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/tests/data_cleaner/__init__.py +0 -0
  896. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/tests/data_cleaner/cleaning_rules/__init__.py +0 -0
  897. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/tests/data_cleaner/cleaning_rules/test_clean_column_names.py +0 -0
  898. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/tests/data_cleaner/cleaning_rules/test_fix_syntax_error.py +0 -0
  899. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/tests/data_cleaner/cleaning_rules/test_impute_values.py +0 -0
  900. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/tests/data_cleaner/cleaning_rules/test_reformat_values.py +0 -0
  901. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/tests/data_cleaner/cleaning_rules/test_remove_collinear_columns.py +0 -0
  902. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/tests/data_cleaner/cleaning_rules/test_remove_columns_with_high_empty_rate.py +0 -0
  903. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/tests/data_cleaner/cleaning_rules/test_remove_columns_with_single_value.py +0 -0
  904. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/tests/data_cleaner/cleaning_rules/test_remove_duplicate_rows.py +0 -0
  905. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/tests/data_cleaner/cleaning_rules/test_remove_outliers.py +0 -0
  906. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/tests/data_cleaner/statistics/__init__.py +0 -0
  907. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/tests/data_cleaner/statistics/test_calculator.py +0 -0
  908. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/tests/data_cleaner/test_column_type_detector.py +0 -0
  909. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/tests/data_cleaner/transformer_actions/__init__.py +0 -0
  910. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/tests/data_cleaner/transformer_actions/shared.py +0 -0
  911. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/tests/data_cleaner/transformer_actions/test_base.py +0 -0
  912. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/tests/data_cleaner/transformer_actions/test_column.py +0 -0
  913. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/tests/data_cleaner/transformer_actions/test_custom_actions.py +0 -0
  914. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/tests/data_cleaner/transformer_actions/test_helpers.py +0 -0
  915. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/tests/data_cleaner/transformer_actions/test_row.py +0 -0
  916. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/tests/data_cleaner/transformer_actions/test_utils.py +0 -0
  917. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/tests/data_cleaner/transformer_actions/test_variable_replacer.py +0 -0
  918. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/tests/data_preparation/__init__.py +0 -0
  919. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/tests/data_preparation/git/__init__.py +0 -0
  920. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/tests/data_preparation/git/test_git.py +0 -0
  921. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/tests/data_preparation/models/__init__.py +0 -0
  922. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/tests/data_preparation/models/block/__init__.py +0 -0
  923. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/tests/data_preparation/models/block/test_sql.py +0 -0
  924. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/tests/data_preparation/models/test_block.py +0 -0
  925. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/tests/data_preparation/models/test_pipeline.py +0 -0
  926. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/tests/data_preparation/models/test_variable.py +0 -0
  927. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/tests/data_preparation/test_templates.py +0 -0
  928. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/tests/data_preparation/test_variable_manager.py +0 -0
  929. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/tests/factory.py +0 -0
  930. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/tests/io/__init__.py +0 -0
  931. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/tests/io/test_config.py +0 -0
  932. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/tests/io/test_export_utils.py +0 -0
  933. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/tests/orchestration/__init__.py +0 -0
  934. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/tests/orchestration/db/__init__.py +0 -0
  935. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/tests/orchestration/db/test_models.py +0 -0
  936. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/tests/orchestration/notification/__init__.py +0 -0
  937. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/tests/orchestration/notification/constants.py +0 -0
  938. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/tests/orchestration/notification/test_config.py +0 -0
  939. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/tests/orchestration/queue/__init__.py +0 -0
  940. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/tests/orchestration/queue/test_process_queue.py +0 -0
  941. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/tests/orchestration/test_execution_process_manager.py +0 -0
  942. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/tests/orchestration/test_job_manager.py +0 -0
  943. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/tests/orchestration/test_pipeline_scheduler.py +0 -0
  944. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/tests/orchestration/triggers/__init__.py +0 -0
  945. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/tests/orchestration/triggers/test_event_trigger.py +0 -0
  946. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/tests/orchestration/triggers/test_loop_time_trigger.py +0 -0
  947. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/tests/services/__init__.py +0 -0
  948. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/tests/services/aws/__init__.py +0 -0
  949. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/tests/services/aws/s3/__init__.py +0 -0
  950. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/tests/services/aws/s3/test_s3.py +0 -0
  951. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/tests/services/datadog/__init__.py +0 -0
  952. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/tests/services/datadog/test_datadog.py +0 -0
  953. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/tests/services/k8s/__init__.py +0 -0
  954. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/tests/services/k8s/test_job_manager.py +0 -0
  955. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/tests/shared/__init__.py +0 -0
  956. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/tests/shared/test_io.py +0 -0
  957. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/tests/shared/test_retry.py +0 -0
  958. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/tests/shared/test_security.py +0 -0
  959. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/tests/streaming/__init__.py +0 -0
  960. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/tests/streaming/sinks/__init__.py +0 -0
  961. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/tests/streaming/sinks/test_amazon_s3.py +0 -0
  962. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/tests/streaming/sinks/test_dummy.py +0 -0
  963. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/tests/streaming/sinks/test_kinesis.py +0 -0
  964. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/tests/streaming/sinks/test_mongodb.py +0 -0
  965. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/tests/streaming/sinks/test_opensearch.py +0 -0
  966. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/tests/streaming/sinks/test_sink_factory.py +0 -0
  967. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/tests/streaming/sources/__init__.py +0 -0
  968. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/tests/streaming/sources/test_amazon_sqs.py +0 -0
  969. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/tests/streaming/sources/test_azure_event_hub.py +0 -0
  970. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/tests/streaming/sources/test_google_cloud_pubsub.py +0 -0
  971. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/tests/streaming/sources/test_kafka.py +0 -0
  972. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/tests/streaming/sources/test_kinesis.py +0 -0
  973. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/tests/streaming/sources/test_rabbitmq.py +0 -0
  974. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/tests/streaming/sources/test_source_factory.py +0 -0
  975. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/tests/test_shared.py +0 -0
  976. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/usage_statistics/__init__.py +0 -0
  977. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/usage_statistics/constants.py +0 -0
  978. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/utils/__init__.py +0 -0
  979. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/utils/code.py +0 -0
  980. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/utils/logger/__init__.py +0 -0
  981. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai/utils/logger/constants.py +0 -0
  982. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai.egg-info/dependency_links.txt +0 -0
  983. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai.egg-info/entry_points.txt +0 -0
  984. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai.egg-info/requires.txt +0 -0
  985. {mage-ai-0.8.79 → mage-ai-0.8.80}/mage_ai.egg-info/top_level.txt +0 -0
  986. {mage-ai-0.8.79 → mage-ai-0.8.80}/pyproject.toml +0 -0
  987. {mage-ai-0.8.79 → mage-ai-0.8.80}/requirements.txt +0 -0
  988. {mage-ai-0.8.79 → mage-ai-0.8.80}/setup.cfg +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: mage-ai
3
- Version: 0.8.79
3
+ Version: 0.8.80
4
4
  Summary: Mage is a tool for building and deploying data pipelines.
5
5
  Home-page: https://github.com/mage-ai/mage-ai
6
6
  Author: Mage
@@ -51,6 +51,7 @@ PipelineRunPolicy.allow_read(PipelineRunPresenter.default_attributes + [], scope
51
51
 
52
52
  PipelineRunPolicy.allow_write([
53
53
  'backfill_id',
54
+ 'event_variables',
54
55
  'execution_date',
55
56
  'pipeline_schedule_id',
56
57
  'pipeline_uuid',
@@ -4,6 +4,7 @@ from mage_ai.api.presenters.BasePresenter import BasePresenter
4
4
  class StatusPresenter(BasePresenter):
5
5
  default_attributes = [
6
6
  'is_instance_manager',
7
+ 'max_print_output_lines',
7
8
  'repo_path',
8
9
  'scheduler_status',
9
10
  'instance_type',
@@ -1,6 +1,7 @@
1
1
  import os
2
2
 
3
3
  from mage_ai.api.resources.GenericResource import GenericResource
4
+ from mage_ai.data_preparation.models.constants import MAX_PRINT_OUTPUT_LINES
4
5
  from mage_ai.data_preparation.repo_manager import (
5
6
  ProjectType,
6
7
  get_project_type,
@@ -53,6 +54,7 @@ class StatusResource(GenericResource):
53
54
  'scheduler_status': scheduler_manager.get_status(),
54
55
  'instance_type': instance_type,
55
56
  'disable_pipeline_edit_access': is_disable_pipeline_edit_access(),
57
+ 'max_print_output_lines': MAX_PRINT_OUTPUT_LINES,
56
58
  'require_user_authentication': REQUIRE_USER_AUTHENTICATION,
57
59
  }
58
60
  return self.build_result_set([status], user, **kwargs)
@@ -1,15 +1,18 @@
1
+ import asyncio
2
+ import copy
3
+ import logging
4
+ import os
1
5
  from contextlib import redirect_stderr, redirect_stdout
6
+ from typing import Callable, Dict, List, Union
7
+
8
+ import yaml
9
+
2
10
  from mage_ai.data_preparation.executors.pipeline_executor import PipelineExecutor
3
11
  from mage_ai.data_preparation.logging.logger import DictLogger
4
12
  from mage_ai.data_preparation.models.constants import BlockType
5
13
  from mage_ai.data_preparation.models.pipeline import Pipeline
6
14
  from mage_ai.data_preparation.shared.stream import StreamToLogger
7
15
  from mage_ai.shared.hash import merge_dict
8
- from typing import Callable, Dict, List, Union
9
- import asyncio
10
- import logging
11
- import os
12
- import yaml
13
16
 
14
17
 
15
18
  class StreamingPipelineExecutor(PipelineExecutor):
@@ -21,7 +24,9 @@ class StreamingPipelineExecutor(PipelineExecutor):
21
24
  def parse_and_validate_blocks(self):
22
25
  """
23
26
  Find the first valid streaming pipeline is in the structure:
24
- source -> transformer -> sink
27
+ source -> transformer1 -> sink2
28
+ -> transformer2 -> sink2
29
+ -> transformer3 -> sink3
25
30
  """
26
31
  blocks = self.pipeline.blocks_by_uuid.values()
27
32
  source_blocks = []
@@ -29,24 +34,23 @@ class StreamingPipelineExecutor(PipelineExecutor):
29
34
  transformer_blocks = []
30
35
  for b in blocks:
31
36
  if b.type == BlockType.DATA_LOADER:
37
+ # Data loader block should be root block
32
38
  if len(b.upstream_blocks or []) > 0:
33
39
  raise Exception(f'Data loader {b.uuid} can\'t have upstream blocks.')
34
- if len(b.downstream_blocks or []) != 1:
35
- raise Exception(f'Data loader {b.uuid} must have one transformer or data'
36
- ' exporter as the downstream block.')
40
+ if len(b.downstream_blocks or []) < 1:
41
+ raise Exception(f'Data loader {b.uuid} must have at least one transformer or'
42
+ ' data exporter as the downstream block.')
37
43
  source_blocks.append(b)
38
44
  if b.type == BlockType.DATA_EXPORTER:
45
+ # Data exporter block should be leaf block
39
46
  if len(b.downstream_blocks or []) > 0:
40
47
  raise Exception(f'Data expoter {b.uuid} can\'t have downstream blocks.')
41
48
  if len(b.upstream_blocks or []) != 1:
42
- raise Exception(f'Data loader {b.uuid} must have a transformer or data'
43
- ' exporter as the upstream block.')
49
+ raise Exception(f'Data exporter {b.uuid} must have a transformer or data'
50
+ ' loader as the upstream block.')
44
51
  sink_blocks.append(b)
45
52
  if b.type == BlockType.TRANSFORMER:
46
- if len(b.downstream_blocks or []) != 1:
47
- raise Exception(
48
- f'Transformer {b.uuid} should (only) have one downstream block.',
49
- )
53
+ # Each transformer block can only have one upstream block
50
54
  if len(b.upstream_blocks or []) != 1:
51
55
  raise Exception(f'Transformer {b.uuid} should (only) have one upstream block.')
52
56
  transformer_blocks.append(b)
@@ -54,15 +58,8 @@ class StreamingPipelineExecutor(PipelineExecutor):
54
58
  if len(source_blocks) != 1:
55
59
  raise Exception('Please provide (only) one data loader block as the source.')
56
60
 
57
- if len(transformer_blocks) > 1:
58
- raise Exception('Please provide no more than one transformer block.')
59
-
60
- if len(sink_blocks) != 1:
61
- raise Exception('Please provide (only) one data expoter block as the sink.')
62
-
63
61
  self.source_block = source_blocks[0]
64
- self.sink_block = sink_blocks[0]
65
- self.transformer_block = transformer_blocks[0] if len(transformer_blocks) > 0 else None
62
+ self.sink_blocks = sink_blocks
66
63
 
67
64
  def execute(
68
65
  self,
@@ -97,11 +94,10 @@ class StreamingPipelineExecutor(PipelineExecutor):
97
94
  raise e
98
95
 
99
96
  def __execute_in_python(self, build_block_output_stdout: Callable[..., object] = None):
97
+ from mage_ai.streaming.sinks.sink_factory import SinkFactory
100
98
  from mage_ai.streaming.sources.base import SourceConsumeMethod
101
99
  from mage_ai.streaming.sources.source_factory import SourceFactory
102
- from mage_ai.streaming.sinks.sink_factory import SinkFactory
103
100
  source_config = yaml.safe_load(self.source_block.content)
104
- sink_config = yaml.safe_load(self.sink_block.content)
105
101
  source = SourceFactory.get_source(
106
102
  source_config,
107
103
  checkpoint_path=os.path.join(
@@ -109,47 +105,67 @@ class StreamingPipelineExecutor(PipelineExecutor):
109
105
  'streaming_checkpoint',
110
106
  ),
111
107
  )
112
- sink = SinkFactory.get_sink(
113
- sink_config,
114
- buffer_path=os.path.join(
115
- self.pipeline.pipeline_variables_dir,
116
- 'buffer',
117
- ),
118
- )
108
+
109
+ sinks_by_uuid = dict()
110
+ for sink_block in self.sink_blocks:
111
+ sink_config = yaml.safe_load(sink_block.content)
112
+ sinks_by_uuid[sink_block.uuid] = SinkFactory.get_sink(
113
+ sink_config,
114
+ buffer_path=os.path.join(
115
+ self.pipeline.pipeline_variables_dir,
116
+ 'buffer',
117
+ ),
118
+ )
119
+
120
+ def handle_batch_events_recursively(curr_block, outputs_by_block: Dict, **kwargs):
121
+ curr_block_output = outputs_by_block[curr_block.uuid]
122
+ for downstream_block in curr_block.downstream_blocks:
123
+ if downstream_block.type == BlockType.TRANSFORMER:
124
+ execute_block_kwargs = dict(
125
+ global_vars=kwargs,
126
+ input_args=[copy.deepcopy(curr_block_output)],
127
+ logger=self.logger,
128
+ )
129
+ if build_block_output_stdout:
130
+ execute_block_kwargs['build_block_output_stdout'] = \
131
+ build_block_output_stdout
132
+ outputs_by_block[downstream_block.uuid] = \
133
+ downstream_block.execute_block(
134
+ **execute_block_kwargs,
135
+ )['output']
136
+ elif downstream_block.type == BlockType.DATA_EXPORTER:
137
+ sinks_by_uuid[downstream_block.uuid].batch_write(
138
+ copy.deepcopy(curr_block_output))
139
+ if downstream_block.downstream_blocks:
140
+ handle_batch_events_recursively(
141
+ downstream_block,
142
+ outputs_by_block,
143
+ **kwargs,
144
+ )
119
145
 
120
146
  def handle_batch_events(messages: List[Union[Dict, str]], **kwargs):
121
- if self.transformer_block is not None:
122
- execute_block_kwargs = dict(
123
- global_vars=kwargs,
124
- input_args=[messages],
125
- logger=self.logger,
126
- )
127
- if build_block_output_stdout:
128
- execute_block_kwargs['build_block_output_stdout'] = build_block_output_stdout
129
- messages = self.transformer_block.execute_block(
130
- **execute_block_kwargs,
131
- )['output']
132
- sink.batch_write(messages)
147
+ # Handle the events with DFS
148
+
149
+ outputs_by_block = dict()
150
+ outputs_by_block[self.source_block.uuid] = messages
151
+
152
+ handle_batch_events_recursively(self.source_block, outputs_by_block)
133
153
 
134
154
  async def handle_event_async(message, **kwargs):
135
- if self.transformer_block is not None:
136
- execute_block_kwargs = dict(
137
- global_vars=kwargs,
138
- input_args=[[message]],
139
- logger=self.logger,
140
- )
141
- if build_block_output_stdout:
142
- execute_block_kwargs['build_block_output_stdout'] = build_block_output_stdout
143
- messages = self.transformer_block.execute_block(
144
- **execute_block_kwargs,
145
- )['output']
146
- sink.batch_write(messages)
155
+ outputs_by_block = dict()
156
+ outputs_by_block[self.source_block.uuid] = [message]
157
+
158
+ handle_batch_events_recursively(self.source_block, outputs_by_block)
147
159
 
148
160
  # Long running method
149
161
  if source.consume_method == SourceConsumeMethod.BATCH_READ:
150
162
  source.batch_read(handler=handle_batch_events)
151
163
  elif source.consume_method == SourceConsumeMethod.READ_ASYNC:
152
- asyncio.run(source.read_async(handler=handle_event_async))
164
+ loop = asyncio.get_event_loop()
165
+ if loop is not None:
166
+ loop.run_until_complete(source.read_async(handler=handle_event_async))
167
+ else:
168
+ asyncio.run(source.read_async(handler=handle_event_async))
153
169
 
154
170
  def __excute_in_flink(self):
155
171
  """
@@ -1,3 +1,4 @@
1
+ import os
1
2
  from enum import Enum
2
3
 
3
4
  PIPELINES_FOLDER = 'pipelines'
@@ -19,6 +20,7 @@ DATAFRAME_ANALYSIS_MAX_COLUMNS = 100
19
20
  DATAFRAME_SAMPLE_COUNT_PREVIEW = 10
20
21
  DATAFRAME_SAMPLE_COUNT = 1000
21
22
  DATAFRAME_SAMPLE_MAX_COLUMNS = 1000
23
+ MAX_PRINT_OUTPUT_LINES = int(os.getenv('MAX_PRINT_OUTPUT_LINES', 1000) or 1000)
22
24
  VARIABLE_DIR = '.variables'
23
25
  LOGS_DIR = '.logs'
24
26
 
@@ -82,10 +82,29 @@ def build_time_series_buckets(df, datetime_column, time_interval, metrics):
82
82
  return []
83
83
 
84
84
  datetimes = datetimes.unique()
85
- min_value_datetime = dateutil.parser.parse(datetimes.min())
86
- max_value_datetime = dateutil.parser.parse(datetimes.max())
87
-
88
- a, b = [dateutil.parser.parse(d) for d in sorted(datetimes)[:2]]
85
+ min_value_datetime = datetimes.min()
86
+ max_value_datetime = datetimes.max()
87
+
88
+ if type(min_value_datetime) is str:
89
+ min_value_datetime = dateutil.parser.parse(min_value_datetime)
90
+ if type(max_value_datetime) is str:
91
+ max_value_datetime = dateutil.parser.parse(max_value_datetime)
92
+
93
+ # If you manually convert the datetime column to a datetime, Pandas will use numpy.datetime64
94
+ # type. This type does not have the methods year, month, day, etc that is used down below.
95
+ datetimes_temp = []
96
+ for dt in datetimes:
97
+ if type(dt) is np.datetime64:
98
+ datetimes_temp.append(pd.to_datetime(dt.astype(datetime)).to_pydatetime())
99
+ else:
100
+ datetimes_temp.append(dt)
101
+ datetimes = datetimes_temp
102
+ if type(min_value_datetime) is np.datetime64:
103
+ min_value_datetime = pd.to_datetime(min_value_datetime.astype(datetime)).to_pydatetime()
104
+ if type(max_value_datetime) is np.datetime64:
105
+ max_value_datetime = pd.to_datetime(max_value_datetime.astype(datetime)).to_pydatetime()
106
+
107
+ a, b = [dateutil.parser.parse(d) if type(d) is str else d for d in sorted(datetimes)[:2]]
89
108
 
90
109
  year = min_value_datetime.year
91
110
  month = min_value_datetime.month
@@ -1,11 +1,12 @@
1
+ import os
2
+
1
3
  from mage_ai.orchestration.notification.config import AlertOn, NotificationConfig
2
4
  from mage_ai.services.email.email import send_email
5
+ from mage_ai.services.google_chat.google_chat import send_google_chat_message
3
6
  from mage_ai.services.opsgenie.opsgenie import send_opsgenie_alert
4
7
  from mage_ai.services.slack.slack import send_slack_message
5
8
  from mage_ai.services.teams.teams import send_teams_message
6
- from mage_ai.services.google_chat.google_chat import send_google_chat_message
7
9
  from mage_ai.settings import MAGE_PUBLIC_HOST
8
- import os
9
10
 
10
11
 
11
12
  class NotificationSender:
@@ -18,10 +19,17 @@ class NotificationSender:
18
19
  summary: str = None,
19
20
  details: str = None,
20
21
  ) -> None:
22
+ """Send messages to the notification channels.
23
+
24
+ Args:
25
+ title (str, optional): Short sentence, used as title (e.g. Email subject)
26
+ summary (str, optional): Mid-length sentences, used as the summary of the message.
27
+ details (str, optional): Long message, used as the body of the message (e.g. Email body)
28
+ """
21
29
  if summary is None:
22
30
  return
23
31
  if self.config.slack_config is not None and self.config.slack_config.is_valid:
24
- send_slack_message(self.config.slack_config, summary)
32
+ send_slack_message(self.config.slack_config, details or summary)
25
33
 
26
34
  if self.config.teams_config is not None and self.config.teams_config.is_valid:
27
35
  send_teams_message(self.config.teams_config, summary)
@@ -75,9 +83,14 @@ class NotificationSender:
75
83
  f'at execution time `{pipeline_run.execution_date}`.'
76
84
  )
77
85
  email_content = f'{message}\n'
78
- if os.getenv('ENV') != 'production':
86
+ if os.getenv('ENV') != 'production' or MAGE_PUBLIC_HOST != 'http://localhost:6789':
87
+ """
88
+ Include the URL for the following cases
89
+ 1. Dev environment: Use the default localhost as host in URL
90
+ 2. Production environment: If MAGE_PUBLIC_HOST is set, use it as host.
91
+ """
79
92
  email_content += f'Open {self.__pipeline_run_url(pipeline, pipeline_run)} '\
80
- 'to check pipeline run results and logs.'
93
+ 'to check pipeline run results and logs.'
81
94
  self.send(
82
95
  title=f'Failed to run Mage pipeline {pipeline.uuid}',
83
96
  summary=message,
@@ -12,4 +12,4 @@ DATAFRAME_OUTPUT_SAMPLE_COUNT = 10
12
12
  # Dockerfile depends on it because it runs ./scripts/install_mage.sh and uses
13
13
  # the last line to determine the version to install.
14
14
  VERSION = \
15
- '0.8.79'
15
+ '0.8.80'
@@ -1,4 +1,4 @@
1
- <!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta content="width=device-width, initial-scale=1.0, maximum-scale=5.0, user-scalable=0" name="viewport"/><title>404: This page could not be found</title><meta name="next-head-count" content="3"/><link href="/favicon.ico" rel="icon"/><link rel="preload" href="/_next/static/css/d1e8e64d0b07af2f.css" as="style"/><link rel="stylesheet" href="/_next/static/css/d1e8e64d0b07af2f.css" data-n-g=""/><noscript data-n-css=""></noscript><script defer="" nomodule="" src="/_next/static/chunks/polyfills-5cd94c89d3acac5f.js"></script><script src="/_next/static/chunks/webpack-bc5e4eb2c1ff587c.js" defer=""></script><script src="/_next/static/chunks/framework-7c365855dab1bf41.js" defer=""></script><script src="/_next/static/chunks/main-bb0dd5375146d7fd.js" defer=""></script><script src="/_next/static/chunks/pages/_app-b25383366d854e8e.js" defer=""></script><script src="/_next/static/chunks/pages/_error-235304e5badb19eb.js" defer=""></script><script src="/_next/static/idk86oPaHvilJ9Afk8jIL/_buildManifest.js" defer=""></script><script src="/_next/static/idk86oPaHvilJ9Afk8jIL/_ssgManifest.js" defer=""></script><script src="/_next/static/idk86oPaHvilJ9Afk8jIL/_middlewareManifest.js" defer=""></script><style data-styled="" data-styled-version="5.3.6">html{-webkit-box-sizing:border-box;box-sizing:border-box;-ms-overflow-style:scrollbar;}/*!sc*/
1
+ <!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta content="width=device-width, initial-scale=1.0, maximum-scale=5.0, user-scalable=0" name="viewport"/><title>404: This page could not be found</title><meta name="next-head-count" content="3"/><link href="/favicon.ico" rel="icon"/><link rel="preload" href="/_next/static/css/d1e8e64d0b07af2f.css" as="style"/><link rel="stylesheet" href="/_next/static/css/d1e8e64d0b07af2f.css" data-n-g=""/><noscript data-n-css=""></noscript><script defer="" nomodule="" src="/_next/static/chunks/polyfills-5cd94c89d3acac5f.js"></script><script src="/_next/static/chunks/webpack-bc5e4eb2c1ff587c.js" defer=""></script><script src="/_next/static/chunks/framework-7c365855dab1bf41.js" defer=""></script><script src="/_next/static/chunks/main-bb0dd5375146d7fd.js" defer=""></script><script src="/_next/static/chunks/pages/_app-b25383366d854e8e.js" defer=""></script><script src="/_next/static/chunks/pages/_error-235304e5badb19eb.js" defer=""></script><script src="/_next/static/K62oaHK5x3k16vVxdvIWf/_buildManifest.js" defer=""></script><script src="/_next/static/K62oaHK5x3k16vVxdvIWf/_ssgManifest.js" defer=""></script><script src="/_next/static/K62oaHK5x3k16vVxdvIWf/_middlewareManifest.js" defer=""></script><style data-styled="" data-styled-version="5.3.6">html{-webkit-box-sizing:border-box;box-sizing:border-box;-ms-overflow-style:scrollbar;}/*!sc*/
2
2
  *,*::before,*::after{-webkit-box-sizing:inherit;box-sizing:inherit;}/*!sc*/
3
3
  data-styled.g4[id="sc-global-czSCUT1"]{content:"sc-global-czSCUT1,"}/*!sc*/
4
4
  .kOVcuR .Toastify__toast-container{margin-top:24px;padding:0 !important;width:500px !important;}/*!sc*/
@@ -19,4 +19,4 @@ data-styled.g5[id="ToastWrapper-sc-1a33ph1-0"]{content:"kOVcuR,"}/*!sc*/
19
19
  .next-error-h1 {
20
20
  border-right: 1px solid rgba(255, 255, 255, .3);
21
21
  }
22
- }</style><h1 class="next-error-h1" style="display:inline-block;margin:0;margin-right:20px;padding:10px 23px 10px 0;font-size:24px;font-weight:500;vertical-align:top">404<!-- --></h1><div style="display:inline-block;text-align:left;line-height:49px;height:49px;vertical-align:middle"><h2 style="font-size:14px;font-weight:normal;line-height:inherit;margin:0;padding:0">This page could not be found<!-- -->.<!-- --></h2></div></div></div><div></div><div></div><div></div><div class="ToastWrapper-sc-1a33ph1-0 kOVcuR"><div class="Toastify"></div></div></div><script id="__NEXT_DATA__" type="application/json">{"props":{"pageProps":{"statusCode":404},"currentTheme":{"accent":{"alert":"#F6540B","blue":"#4877FF","blueLight":"rgba(72, 119, 255, 0.5)","contentDefaultTransparent":"rgba(174, 174, 174, 0.5)","cyan":"#65E3FF","cyanLight":"rgba(101, 227, 255, 0.3)","cyanTransparent":"rgba(101, 227, 255, 0.12)","dbt":"#fc6949","dbtLight":"rgba(252, 105, 73, 0.5)","info":"#00ABFF","infoTransparent":"rgba(0, 171, 255, 0.5)","negative":"#FF1E59","negativeTransparent":"rgba(255, 30, 89, 0.3)","pink":"#FF4FF8","pinkLight":"rgb(255, 79, 248, 0.5)","positive":"#00A81A","primaryTransparent":"rgba(155, 108, 167, 0.5)","purple":"#7D55EC","purpleLight":"rgba(125, 85, 236, 0.5)","rose":"#D1A2AB","roseLight":"rgba(209, 162, 171, 0.5)","sky":"#6AA1E0","skyLight":"rgba(106, 161, 224, 0.05)","teal":"#00B4CC","tealLight":"rgba(0, 180, 204, 0.5)","warning":"#DD9900","warningTransparent":"rgba(221, 153, 0, 0.5)","yellow":"#FFCC19","yellowLight":"rgba(255, 204, 25, 0.5)"},"background":{"chartBlock":"#2E3036","codeArea":"#1E1F24","codeTextarea":"#000000","content":"#1B1C20","danger":"#FFD0DB","dark":"#B1B8C3","header":"#1B1B1B","menu":"#0F4CFF","muted":"#F9FAFC","navigation":"#EDEDED","output":"#2E3036","page":"#1E1F24","panel":"#232429","popup":"#27292E","row":"#2C2C2C","row2":"#51535C","scrollbarThumb":"rgba(100, 100, 100, 0.5)","scrollbarThumbHover":"rgba(255, 255, 255, 0.3)","scrollbarTrack":"#2E3036","success":"#8ADE00","successLight":"rgb(138, 222, 0, 0.3)","table":"#292A2F"},"borders":{"button":"#454850","contrast":"#FFFFFF","danger":"#FF144D","dark":"#000000","info":"#FFCC19","light":"#2F3034","medium":"#1C1C1C","medium2":"#141414","success":"#2FCB52"},"brand":{"earth100":"#C6EEDB","earth200":"#9DDFBF","earth300":"#6BBF96","earth400":"#37A46F","earth400Transparent":"rgba(55, 164, 111, 0.4)","earth500":"#00954C","energy100":"#FFF4BA","energy200":"#FFED92","energy300":"#FFE662","energy400":"#FFDA19","energy400Transparent":"rgba(255, 218, 25, 0.04)","energy500":"#F6C000","fire100":"#FFD7E0","fire200":"#FFA3B9","fire300":"#FF547D","fire400":"#FF144D","fire400Transparent":"rgba(255, 20, 77, 0.4)","fire500":"#EB0032","stone100":"#F3E6D7","stone200":"#E3D4C2","stone400":"#BFA78B","stone500":"#AF8859","water100":"#BDCEFF","water200":"#81A1FF","water300":"#517DFF","water400":"#2A60FE","water400Transparent":"rgba(42, 96, 254, 0.4)","water500":"#0F4CFF","wind100":"#EEEAFF","wind200":"#CCC1F4","wind300":"#A698DD","wind400":"#6B50D7","wind400SuperTransparent":"rgba(107, 80, 215, 0.12)","wind400Transparent":"rgba(107, 80, 215, 0.4)","wind500":"#4E32BC"},"chart":{"backgroundPrimary":"#7D55EC","backgroundSecondary":"#FF144D","backgroundTertiary":"#86E2FF","button1":"#4877FF","button2":"#FFCC19","button3":"#8ADE00","button4":"#FF4FF8","button5":"#B98D95","lines":"#9B6CA7","primary":"#6B50D7","secondary":"#FF144D","tertiary":"#2A60FE"},"content":{"active":"#FFFFFF","default":"#AEAEAE","disabled":"rgba(255, 255, 255, 0.3)","inverted":"#2C2C2C","muted":"#787A85"},"elevation":{"visualizationAccent":"#996CFF","visualizationAccentAlt":"#C1ACF7"},"feature":{"active":"rgba(250, 248, 254, 0.14)","disabled":"rgba(201, 206, 218, 0.12)"},"icons":{"neutral":"#787878"},"interactive":{"activeBorder":"#060606","checked":"#060606","dangerBorder":"#FF144D","defaultBackground":"#36383F","defaultBorder":"#2E3036","disabledBorder":"#B1B8C3","focusBackground":"#B1B8C3","focusBorder":"#86E2FF","hoverBackground":"#4E4E4E","hoverBorder":"#B9BFCA","hoverOverlay":"rgba(255, 255, 255, 0.1)","linkPrimary":"#1752FF","linkPrimaryHover":"#4877FF","linkPrimaryLight":"#5982ff","linkSecondary":"#6B50D7","linkSecondaryDisabled":"#C4B9EF","linkText":"#6AA1E0","rowHoverBackground":"rgba(0, 0, 0, 0.1)","transparent":"rgba(255, 255, 255, 0)"},"loader":{"color":"#EB0032","colorInverted":"#8ADE00"},"logo":{"color":"#FFFFFF"},"monotone":{"black":"#060606","blackTransparent":"rgba(0, 0, 0, 0.6)","gray":"#B1B8C3","grey100":"#F2F2F2","grey200":"#D5D7DC","grey300":"#B4B8C0","grey400":"#70747C","grey500":"#51535C","purple":"#6B50D7","white":"#FFFFFF"},"neutral":{"n100":"#E7E8EA","n200":"#D8DADE","n300":"#CBCCD0","n400":"#BCBEC4","n500":"#AEB0B6"},"progress":{"negative":"#FF144D","positive":"#6B50D7"},"shadow":{"base":"12px 40px 120px rgba(106, 117, 139, 0.4)","frame":"0px 10px 40px rgba(0, 0, 0, 0.26)","menu":"4px 10px 20px rgba(6, 6, 6, 0.12)","popup":"10px 20px 40px rgba(0, 0, 0, 0.2)","small":"0px, 4px, rgba(0, 0, 0, 0.25)","window":"0px 10px 60px rgba(0, 0, 0, 0.7)"},"status":{"negative":"#FF144D","positive":"#24B400"},"text":{"fileBrowser":"#787A85"}}},"page":"/_error","query":{},"buildId":"idk86oPaHvilJ9Afk8jIL","nextExport":true,"isFallback":false,"gip":true,"appGip":true,"scriptLoader":[]}</script></body></html>
22
+ }</style><h1 class="next-error-h1" style="display:inline-block;margin:0;margin-right:20px;padding:10px 23px 10px 0;font-size:24px;font-weight:500;vertical-align:top">404<!-- --></h1><div style="display:inline-block;text-align:left;line-height:49px;height:49px;vertical-align:middle"><h2 style="font-size:14px;font-weight:normal;line-height:inherit;margin:0;padding:0">This page could not be found<!-- -->.<!-- --></h2></div></div></div><div></div><div></div><div></div><div class="ToastWrapper-sc-1a33ph1-0 kOVcuR"><div class="Toastify"></div></div></div><script id="__NEXT_DATA__" type="application/json">{"props":{"pageProps":{"statusCode":404},"currentTheme":{"accent":{"alert":"#F6540B","blue":"#4877FF","blueLight":"rgba(72, 119, 255, 0.5)","contentDefaultTransparent":"rgba(174, 174, 174, 0.5)","cyan":"#65E3FF","cyanLight":"rgba(101, 227, 255, 0.3)","cyanTransparent":"rgba(101, 227, 255, 0.12)","dbt":"#fc6949","dbtLight":"rgba(252, 105, 73, 0.5)","info":"#00ABFF","infoTransparent":"rgba(0, 171, 255, 0.5)","negative":"#FF1E59","negativeTransparent":"rgba(255, 30, 89, 0.3)","pink":"#FF4FF8","pinkLight":"rgb(255, 79, 248, 0.5)","positive":"#00A81A","primaryTransparent":"rgba(155, 108, 167, 0.5)","purple":"#7D55EC","purpleLight":"rgba(125, 85, 236, 0.5)","rose":"#D1A2AB","roseLight":"rgba(209, 162, 171, 0.5)","sky":"#6AA1E0","skyLight":"rgba(106, 161, 224, 0.05)","teal":"#00B4CC","tealLight":"rgba(0, 180, 204, 0.5)","warning":"#DD9900","warningTransparent":"rgba(221, 153, 0, 0.5)","yellow":"#FFCC19","yellowLight":"rgba(255, 204, 25, 0.5)"},"background":{"chartBlock":"#2E3036","codeArea":"#1E1F24","codeTextarea":"#000000","content":"#1B1C20","danger":"#FFD0DB","dark":"#B1B8C3","header":"#1B1B1B","menu":"#0F4CFF","muted":"#F9FAFC","navigation":"#EDEDED","output":"#2E3036","page":"#1E1F24","panel":"#232429","popup":"#27292E","row":"#2C2C2C","row2":"#51535C","scrollbarThumb":"rgba(100, 100, 100, 0.5)","scrollbarThumbHover":"rgba(255, 255, 255, 0.3)","scrollbarTrack":"#2E3036","success":"#8ADE00","successLight":"rgb(138, 222, 0, 0.3)","table":"#292A2F"},"borders":{"button":"#454850","contrast":"#FFFFFF","danger":"#FF144D","dark":"#000000","info":"#FFCC19","light":"#2F3034","medium":"#1C1C1C","medium2":"#141414","success":"#2FCB52"},"brand":{"earth100":"#C6EEDB","earth200":"#9DDFBF","earth300":"#6BBF96","earth400":"#37A46F","earth400Transparent":"rgba(55, 164, 111, 0.4)","earth500":"#00954C","energy100":"#FFF4BA","energy200":"#FFED92","energy300":"#FFE662","energy400":"#FFDA19","energy400Transparent":"rgba(255, 218, 25, 0.04)","energy500":"#F6C000","fire100":"#FFD7E0","fire200":"#FFA3B9","fire300":"#FF547D","fire400":"#FF144D","fire400Transparent":"rgba(255, 20, 77, 0.4)","fire500":"#EB0032","stone100":"#F3E6D7","stone200":"#E3D4C2","stone400":"#BFA78B","stone500":"#AF8859","water100":"#BDCEFF","water200":"#81A1FF","water300":"#517DFF","water400":"#2A60FE","water400Transparent":"rgba(42, 96, 254, 0.4)","water500":"#0F4CFF","wind100":"#EEEAFF","wind200":"#CCC1F4","wind300":"#A698DD","wind400":"#6B50D7","wind400SuperTransparent":"rgba(107, 80, 215, 0.12)","wind400Transparent":"rgba(107, 80, 215, 0.4)","wind500":"#4E32BC"},"chart":{"backgroundPrimary":"#7D55EC","backgroundSecondary":"#FF144D","backgroundTertiary":"#86E2FF","button1":"#4877FF","button2":"#FFCC19","button3":"#8ADE00","button4":"#FF4FF8","button5":"#B98D95","lines":"#9B6CA7","primary":"#6B50D7","secondary":"#FF144D","tertiary":"#2A60FE"},"content":{"active":"#FFFFFF","default":"#AEAEAE","disabled":"rgba(255, 255, 255, 0.3)","inverted":"#2C2C2C","muted":"#787A85"},"elevation":{"visualizationAccent":"#996CFF","visualizationAccentAlt":"#C1ACF7"},"feature":{"active":"rgba(250, 248, 254, 0.14)","disabled":"rgba(201, 206, 218, 0.12)"},"icons":{"neutral":"#787878"},"interactive":{"activeBorder":"#060606","checked":"#060606","dangerBorder":"#FF144D","defaultBackground":"#36383F","defaultBorder":"#2E3036","disabledBorder":"#B1B8C3","focusBackground":"#B1B8C3","focusBorder":"#86E2FF","hoverBackground":"#4E4E4E","hoverBorder":"#B9BFCA","hoverOverlay":"rgba(255, 255, 255, 0.1)","linkPrimary":"#1752FF","linkPrimaryHover":"#4877FF","linkPrimaryLight":"#5982ff","linkSecondary":"#6B50D7","linkSecondaryDisabled":"#C4B9EF","linkText":"#6AA1E0","rowHoverBackground":"rgba(0, 0, 0, 0.1)","transparent":"rgba(255, 255, 255, 0)"},"loader":{"color":"#EB0032","colorInverted":"#8ADE00"},"logo":{"color":"#FFFFFF"},"monotone":{"black":"#060606","blackTransparent":"rgba(0, 0, 0, 0.6)","gray":"#B1B8C3","grey100":"#F2F2F2","grey200":"#D5D7DC","grey300":"#B4B8C0","grey400":"#70747C","grey500":"#51535C","purple":"#6B50D7","white":"#FFFFFF"},"neutral":{"n100":"#E7E8EA","n200":"#D8DADE","n300":"#CBCCD0","n400":"#BCBEC4","n500":"#AEB0B6"},"progress":{"negative":"#FF144D","positive":"#6B50D7"},"shadow":{"base":"12px 40px 120px rgba(106, 117, 139, 0.4)","frame":"0px 10px 40px rgba(0, 0, 0, 0.26)","menu":"4px 10px 20px rgba(6, 6, 6, 0.12)","popup":"10px 20px 40px rgba(0, 0, 0, 0.2)","small":"0px, 4px, rgba(0, 0, 0, 0.25)","window":"0px 10px 60px rgba(0, 0, 0, 0.7)"},"status":{"negative":"#FF144D","positive":"#24B400"},"text":{"fileBrowser":"#787A85"}}},"page":"/_error","query":{},"buildId":"K62oaHK5x3k16vVxdvIWf","nextExport":true,"isFallback":false,"gip":true,"appGip":true,"scriptLoader":[]}</script></body></html>
@@ -1,4 +1,4 @@
1
- <!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta content="width=device-width, initial-scale=1.0, maximum-scale=5.0, user-scalable=0" name="viewport"/><title>404: This page could not be found</title><meta name="next-head-count" content="3"/><link href="/favicon.ico" rel="icon"/><link rel="preload" href="/_next/static/css/d1e8e64d0b07af2f.css" as="style"/><link rel="stylesheet" href="/_next/static/css/d1e8e64d0b07af2f.css" data-n-g=""/><noscript data-n-css=""></noscript><script defer="" nomodule="" src="/_next/static/chunks/polyfills-5cd94c89d3acac5f.js"></script><script src="/_next/static/chunks/webpack-bc5e4eb2c1ff587c.js" defer=""></script><script src="/_next/static/chunks/framework-7c365855dab1bf41.js" defer=""></script><script src="/_next/static/chunks/main-bb0dd5375146d7fd.js" defer=""></script><script src="/_next/static/chunks/pages/_app-b25383366d854e8e.js" defer=""></script><script src="/_next/static/chunks/pages/_error-235304e5badb19eb.js" defer=""></script><script src="/_next/static/idk86oPaHvilJ9Afk8jIL/_buildManifest.js" defer=""></script><script src="/_next/static/idk86oPaHvilJ9Afk8jIL/_ssgManifest.js" defer=""></script><script src="/_next/static/idk86oPaHvilJ9Afk8jIL/_middlewareManifest.js" defer=""></script><style data-styled="" data-styled-version="5.3.6">html{-webkit-box-sizing:border-box;box-sizing:border-box;-ms-overflow-style:scrollbar;}/*!sc*/
1
+ <!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta content="width=device-width, initial-scale=1.0, maximum-scale=5.0, user-scalable=0" name="viewport"/><title>404: This page could not be found</title><meta name="next-head-count" content="3"/><link href="/favicon.ico" rel="icon"/><link rel="preload" href="/_next/static/css/d1e8e64d0b07af2f.css" as="style"/><link rel="stylesheet" href="/_next/static/css/d1e8e64d0b07af2f.css" data-n-g=""/><noscript data-n-css=""></noscript><script defer="" nomodule="" src="/_next/static/chunks/polyfills-5cd94c89d3acac5f.js"></script><script src="/_next/static/chunks/webpack-bc5e4eb2c1ff587c.js" defer=""></script><script src="/_next/static/chunks/framework-7c365855dab1bf41.js" defer=""></script><script src="/_next/static/chunks/main-bb0dd5375146d7fd.js" defer=""></script><script src="/_next/static/chunks/pages/_app-b25383366d854e8e.js" defer=""></script><script src="/_next/static/chunks/pages/_error-235304e5badb19eb.js" defer=""></script><script src="/_next/static/K62oaHK5x3k16vVxdvIWf/_buildManifest.js" defer=""></script><script src="/_next/static/K62oaHK5x3k16vVxdvIWf/_ssgManifest.js" defer=""></script><script src="/_next/static/K62oaHK5x3k16vVxdvIWf/_middlewareManifest.js" defer=""></script><style data-styled="" data-styled-version="5.3.6">html{-webkit-box-sizing:border-box;box-sizing:border-box;-ms-overflow-style:scrollbar;}/*!sc*/
2
2
  *,*::before,*::after{-webkit-box-sizing:inherit;box-sizing:inherit;}/*!sc*/
3
3
  data-styled.g4[id="sc-global-czSCUT1"]{content:"sc-global-czSCUT1,"}/*!sc*/
4
4
  .kOVcuR .Toastify__toast-container{margin-top:24px;padding:0 !important;width:500px !important;}/*!sc*/
@@ -19,4 +19,4 @@ data-styled.g5[id="ToastWrapper-sc-1a33ph1-0"]{content:"kOVcuR,"}/*!sc*/
19
19
  .next-error-h1 {
20
20
  border-right: 1px solid rgba(255, 255, 255, .3);
21
21
  }
22
- }</style><h1 class="next-error-h1" style="display:inline-block;margin:0;margin-right:20px;padding:10px 23px 10px 0;font-size:24px;font-weight:500;vertical-align:top">404<!-- --></h1><div style="display:inline-block;text-align:left;line-height:49px;height:49px;vertical-align:middle"><h2 style="font-size:14px;font-weight:normal;line-height:inherit;margin:0;padding:0">This page could not be found<!-- -->.<!-- --></h2></div></div></div><div></div><div></div><div></div><div class="ToastWrapper-sc-1a33ph1-0 kOVcuR"><div class="Toastify"></div></div></div><script id="__NEXT_DATA__" type="application/json">{"props":{"pageProps":{"statusCode":404},"currentTheme":{"accent":{"alert":"#F6540B","blue":"#4877FF","blueLight":"rgba(72, 119, 255, 0.5)","contentDefaultTransparent":"rgba(174, 174, 174, 0.5)","cyan":"#65E3FF","cyanLight":"rgba(101, 227, 255, 0.3)","cyanTransparent":"rgba(101, 227, 255, 0.12)","dbt":"#fc6949","dbtLight":"rgba(252, 105, 73, 0.5)","info":"#00ABFF","infoTransparent":"rgba(0, 171, 255, 0.5)","negative":"#FF1E59","negativeTransparent":"rgba(255, 30, 89, 0.3)","pink":"#FF4FF8","pinkLight":"rgb(255, 79, 248, 0.5)","positive":"#00A81A","primaryTransparent":"rgba(155, 108, 167, 0.5)","purple":"#7D55EC","purpleLight":"rgba(125, 85, 236, 0.5)","rose":"#D1A2AB","roseLight":"rgba(209, 162, 171, 0.5)","sky":"#6AA1E0","skyLight":"rgba(106, 161, 224, 0.05)","teal":"#00B4CC","tealLight":"rgba(0, 180, 204, 0.5)","warning":"#DD9900","warningTransparent":"rgba(221, 153, 0, 0.5)","yellow":"#FFCC19","yellowLight":"rgba(255, 204, 25, 0.5)"},"background":{"chartBlock":"#2E3036","codeArea":"#1E1F24","codeTextarea":"#000000","content":"#1B1C20","danger":"#FFD0DB","dark":"#B1B8C3","header":"#1B1B1B","menu":"#0F4CFF","muted":"#F9FAFC","navigation":"#EDEDED","output":"#2E3036","page":"#1E1F24","panel":"#232429","popup":"#27292E","row":"#2C2C2C","row2":"#51535C","scrollbarThumb":"rgba(100, 100, 100, 0.5)","scrollbarThumbHover":"rgba(255, 255, 255, 0.3)","scrollbarTrack":"#2E3036","success":"#8ADE00","successLight":"rgb(138, 222, 0, 0.3)","table":"#292A2F"},"borders":{"button":"#454850","contrast":"#FFFFFF","danger":"#FF144D","dark":"#000000","info":"#FFCC19","light":"#2F3034","medium":"#1C1C1C","medium2":"#141414","success":"#2FCB52"},"brand":{"earth100":"#C6EEDB","earth200":"#9DDFBF","earth300":"#6BBF96","earth400":"#37A46F","earth400Transparent":"rgba(55, 164, 111, 0.4)","earth500":"#00954C","energy100":"#FFF4BA","energy200":"#FFED92","energy300":"#FFE662","energy400":"#FFDA19","energy400Transparent":"rgba(255, 218, 25, 0.04)","energy500":"#F6C000","fire100":"#FFD7E0","fire200":"#FFA3B9","fire300":"#FF547D","fire400":"#FF144D","fire400Transparent":"rgba(255, 20, 77, 0.4)","fire500":"#EB0032","stone100":"#F3E6D7","stone200":"#E3D4C2","stone400":"#BFA78B","stone500":"#AF8859","water100":"#BDCEFF","water200":"#81A1FF","water300":"#517DFF","water400":"#2A60FE","water400Transparent":"rgba(42, 96, 254, 0.4)","water500":"#0F4CFF","wind100":"#EEEAFF","wind200":"#CCC1F4","wind300":"#A698DD","wind400":"#6B50D7","wind400SuperTransparent":"rgba(107, 80, 215, 0.12)","wind400Transparent":"rgba(107, 80, 215, 0.4)","wind500":"#4E32BC"},"chart":{"backgroundPrimary":"#7D55EC","backgroundSecondary":"#FF144D","backgroundTertiary":"#86E2FF","button1":"#4877FF","button2":"#FFCC19","button3":"#8ADE00","button4":"#FF4FF8","button5":"#B98D95","lines":"#9B6CA7","primary":"#6B50D7","secondary":"#FF144D","tertiary":"#2A60FE"},"content":{"active":"#FFFFFF","default":"#AEAEAE","disabled":"rgba(255, 255, 255, 0.3)","inverted":"#2C2C2C","muted":"#787A85"},"elevation":{"visualizationAccent":"#996CFF","visualizationAccentAlt":"#C1ACF7"},"feature":{"active":"rgba(250, 248, 254, 0.14)","disabled":"rgba(201, 206, 218, 0.12)"},"icons":{"neutral":"#787878"},"interactive":{"activeBorder":"#060606","checked":"#060606","dangerBorder":"#FF144D","defaultBackground":"#36383F","defaultBorder":"#2E3036","disabledBorder":"#B1B8C3","focusBackground":"#B1B8C3","focusBorder":"#86E2FF","hoverBackground":"#4E4E4E","hoverBorder":"#B9BFCA","hoverOverlay":"rgba(255, 255, 255, 0.1)","linkPrimary":"#1752FF","linkPrimaryHover":"#4877FF","linkPrimaryLight":"#5982ff","linkSecondary":"#6B50D7","linkSecondaryDisabled":"#C4B9EF","linkText":"#6AA1E0","rowHoverBackground":"rgba(0, 0, 0, 0.1)","transparent":"rgba(255, 255, 255, 0)"},"loader":{"color":"#EB0032","colorInverted":"#8ADE00"},"logo":{"color":"#FFFFFF"},"monotone":{"black":"#060606","blackTransparent":"rgba(0, 0, 0, 0.6)","gray":"#B1B8C3","grey100":"#F2F2F2","grey200":"#D5D7DC","grey300":"#B4B8C0","grey400":"#70747C","grey500":"#51535C","purple":"#6B50D7","white":"#FFFFFF"},"neutral":{"n100":"#E7E8EA","n200":"#D8DADE","n300":"#CBCCD0","n400":"#BCBEC4","n500":"#AEB0B6"},"progress":{"negative":"#FF144D","positive":"#6B50D7"},"shadow":{"base":"12px 40px 120px rgba(106, 117, 139, 0.4)","frame":"0px 10px 40px rgba(0, 0, 0, 0.26)","menu":"4px 10px 20px rgba(6, 6, 6, 0.12)","popup":"10px 20px 40px rgba(0, 0, 0, 0.2)","small":"0px, 4px, rgba(0, 0, 0, 0.25)","window":"0px 10px 60px rgba(0, 0, 0, 0.7)"},"status":{"negative":"#FF144D","positive":"#24B400"},"text":{"fileBrowser":"#787A85"}}},"page":"/_error","query":{},"buildId":"idk86oPaHvilJ9Afk8jIL","nextExport":true,"isFallback":false,"gip":true,"appGip":true,"scriptLoader":[]}</script></body></html>
22
+ }</style><h1 class="next-error-h1" style="display:inline-block;margin:0;margin-right:20px;padding:10px 23px 10px 0;font-size:24px;font-weight:500;vertical-align:top">404<!-- --></h1><div style="display:inline-block;text-align:left;line-height:49px;height:49px;vertical-align:middle"><h2 style="font-size:14px;font-weight:normal;line-height:inherit;margin:0;padding:0">This page could not be found<!-- -->.<!-- --></h2></div></div></div><div></div><div></div><div></div><div class="ToastWrapper-sc-1a33ph1-0 kOVcuR"><div class="Toastify"></div></div></div><script id="__NEXT_DATA__" type="application/json">{"props":{"pageProps":{"statusCode":404},"currentTheme":{"accent":{"alert":"#F6540B","blue":"#4877FF","blueLight":"rgba(72, 119, 255, 0.5)","contentDefaultTransparent":"rgba(174, 174, 174, 0.5)","cyan":"#65E3FF","cyanLight":"rgba(101, 227, 255, 0.3)","cyanTransparent":"rgba(101, 227, 255, 0.12)","dbt":"#fc6949","dbtLight":"rgba(252, 105, 73, 0.5)","info":"#00ABFF","infoTransparent":"rgba(0, 171, 255, 0.5)","negative":"#FF1E59","negativeTransparent":"rgba(255, 30, 89, 0.3)","pink":"#FF4FF8","pinkLight":"rgb(255, 79, 248, 0.5)","positive":"#00A81A","primaryTransparent":"rgba(155, 108, 167, 0.5)","purple":"#7D55EC","purpleLight":"rgba(125, 85, 236, 0.5)","rose":"#D1A2AB","roseLight":"rgba(209, 162, 171, 0.5)","sky":"#6AA1E0","skyLight":"rgba(106, 161, 224, 0.05)","teal":"#00B4CC","tealLight":"rgba(0, 180, 204, 0.5)","warning":"#DD9900","warningTransparent":"rgba(221, 153, 0, 0.5)","yellow":"#FFCC19","yellowLight":"rgba(255, 204, 25, 0.5)"},"background":{"chartBlock":"#2E3036","codeArea":"#1E1F24","codeTextarea":"#000000","content":"#1B1C20","danger":"#FFD0DB","dark":"#B1B8C3","header":"#1B1B1B","menu":"#0F4CFF","muted":"#F9FAFC","navigation":"#EDEDED","output":"#2E3036","page":"#1E1F24","panel":"#232429","popup":"#27292E","row":"#2C2C2C","row2":"#51535C","scrollbarThumb":"rgba(100, 100, 100, 0.5)","scrollbarThumbHover":"rgba(255, 255, 255, 0.3)","scrollbarTrack":"#2E3036","success":"#8ADE00","successLight":"rgb(138, 222, 0, 0.3)","table":"#292A2F"},"borders":{"button":"#454850","contrast":"#FFFFFF","danger":"#FF144D","dark":"#000000","info":"#FFCC19","light":"#2F3034","medium":"#1C1C1C","medium2":"#141414","success":"#2FCB52"},"brand":{"earth100":"#C6EEDB","earth200":"#9DDFBF","earth300":"#6BBF96","earth400":"#37A46F","earth400Transparent":"rgba(55, 164, 111, 0.4)","earth500":"#00954C","energy100":"#FFF4BA","energy200":"#FFED92","energy300":"#FFE662","energy400":"#FFDA19","energy400Transparent":"rgba(255, 218, 25, 0.04)","energy500":"#F6C000","fire100":"#FFD7E0","fire200":"#FFA3B9","fire300":"#FF547D","fire400":"#FF144D","fire400Transparent":"rgba(255, 20, 77, 0.4)","fire500":"#EB0032","stone100":"#F3E6D7","stone200":"#E3D4C2","stone400":"#BFA78B","stone500":"#AF8859","water100":"#BDCEFF","water200":"#81A1FF","water300":"#517DFF","water400":"#2A60FE","water400Transparent":"rgba(42, 96, 254, 0.4)","water500":"#0F4CFF","wind100":"#EEEAFF","wind200":"#CCC1F4","wind300":"#A698DD","wind400":"#6B50D7","wind400SuperTransparent":"rgba(107, 80, 215, 0.12)","wind400Transparent":"rgba(107, 80, 215, 0.4)","wind500":"#4E32BC"},"chart":{"backgroundPrimary":"#7D55EC","backgroundSecondary":"#FF144D","backgroundTertiary":"#86E2FF","button1":"#4877FF","button2":"#FFCC19","button3":"#8ADE00","button4":"#FF4FF8","button5":"#B98D95","lines":"#9B6CA7","primary":"#6B50D7","secondary":"#FF144D","tertiary":"#2A60FE"},"content":{"active":"#FFFFFF","default":"#AEAEAE","disabled":"rgba(255, 255, 255, 0.3)","inverted":"#2C2C2C","muted":"#787A85"},"elevation":{"visualizationAccent":"#996CFF","visualizationAccentAlt":"#C1ACF7"},"feature":{"active":"rgba(250, 248, 254, 0.14)","disabled":"rgba(201, 206, 218, 0.12)"},"icons":{"neutral":"#787878"},"interactive":{"activeBorder":"#060606","checked":"#060606","dangerBorder":"#FF144D","defaultBackground":"#36383F","defaultBorder":"#2E3036","disabledBorder":"#B1B8C3","focusBackground":"#B1B8C3","focusBorder":"#86E2FF","hoverBackground":"#4E4E4E","hoverBorder":"#B9BFCA","hoverOverlay":"rgba(255, 255, 255, 0.1)","linkPrimary":"#1752FF","linkPrimaryHover":"#4877FF","linkPrimaryLight":"#5982ff","linkSecondary":"#6B50D7","linkSecondaryDisabled":"#C4B9EF","linkText":"#6AA1E0","rowHoverBackground":"rgba(0, 0, 0, 0.1)","transparent":"rgba(255, 255, 255, 0)"},"loader":{"color":"#EB0032","colorInverted":"#8ADE00"},"logo":{"color":"#FFFFFF"},"monotone":{"black":"#060606","blackTransparent":"rgba(0, 0, 0, 0.6)","gray":"#B1B8C3","grey100":"#F2F2F2","grey200":"#D5D7DC","grey300":"#B4B8C0","grey400":"#70747C","grey500":"#51535C","purple":"#6B50D7","white":"#FFFFFF"},"neutral":{"n100":"#E7E8EA","n200":"#D8DADE","n300":"#CBCCD0","n400":"#BCBEC4","n500":"#AEB0B6"},"progress":{"negative":"#FF144D","positive":"#6B50D7"},"shadow":{"base":"12px 40px 120px rgba(106, 117, 139, 0.4)","frame":"0px 10px 40px rgba(0, 0, 0, 0.26)","menu":"4px 10px 20px rgba(6, 6, 6, 0.12)","popup":"10px 20px 40px rgba(0, 0, 0, 0.2)","small":"0px, 4px, rgba(0, 0, 0, 0.25)","window":"0px 10px 60px rgba(0, 0, 0, 0.7)"},"status":{"negative":"#FF144D","positive":"#24B400"},"text":{"fileBrowser":"#787A85"}}},"page":"/_error","query":{},"buildId":"K62oaHK5x3k16vVxdvIWf","nextExport":true,"isFallback":false,"gip":true,"appGip":true,"scriptLoader":[]}</script></body></html>
@@ -1 +1 @@
1
- self.__BUILD_MANIFEST=function(s,e,i,p,n,t,c,a,l,u,d,r,f,g,k,b,h,j,o,_,m,E,w,O,A,B){return{__rewrites:{beforeFiles:[],afterFiles:[{source:"/CLOUD_NOTEBOOK_BASE_PATH_PLACEHOLDER_/datasets",destination:j},{source:"/CLOUD_NOTEBOOK_BASE_PATH_PLACEHOLDER_",destination:j}],fallback:[]},"/":["static/chunks/pages/index-b6cd94a079629572.js"],"/_error":["static/chunks/pages/_error-235304e5badb19eb.js"],"/manage":[s,p,o,e,i,n,_,"static/chunks/pages/manage-eba67ac0edfdea1b.js"],"/pipeline-runs":[s,p,e,i,n,g,"static/chunks/pages/pipeline-runs-128dd171c6fff7ac.js"],"/pipelines":[s,p,e,i,n,"static/chunks/pages/pipelines-c73dab1d63317556.js"],"/pipelines/[pipeline]":["static/chunks/pages/pipelines/[pipeline]-ca9457e1a6bced4b.js"],"/pipelines/[pipeline]/backfills":[s,p,e,i,n,t,"static/chunks/pages/pipelines/[pipeline]/backfills-f08b51d9dc56eab5.js"],"/pipelines/[pipeline]/backfills/[...slug]":[s,p,c,a,l,d,r,h,e,i,n,t,u,f,g,"static/chunks/pages/pipelines/[pipeline]/backfills/[...slug]-9e519ad50f639e00.js"],"/pipelines/[pipeline]/edit":[m,s,p,c,a,l,d,r,k,E,w,o,"static/chunks/7107-b89772bb2a2669df.js",e,i,n,u,f,_,O,A,"static/chunks/pages/pipelines/[pipeline]/edit-22d76e8fa386ba37.js"],"/pipelines/[pipeline]/logs":[s,p,a,h,e,i,n,t,"static/chunks/pages/pipelines/[pipeline]/logs-0751190c3f720f8c.js"],"/pipelines/[pipeline]/monitors":[s,p,c,k,e,i,t,B,"static/chunks/pages/pipelines/[pipeline]/monitors-5244d6c5d80af010.js"],"/pipelines/[pipeline]/monitors/block-runs":[s,p,c,k,e,i,t,B,"static/chunks/pages/pipelines/[pipeline]/monitors/block-runs-302e1bd9fbf39994.js"],"/pipelines/[pipeline]/monitors/block-runtime":[m,s,p,c,k,"static/chunks/9832-f97919376d52e3bf.js",e,i,t,A,"static/chunks/pages/pipelines/[pipeline]/monitors/block-runtime-7635e7031335de0f.js"],"/pipelines/[pipeline]/runs":[s,p,a,l,d,e,i,n,t,u,g,"static/chunks/pages/pipelines/[pipeline]/runs-88994d0bcf41cf9e.js"],"/pipelines/[pipeline]/runs/[run]":[s,p,c,a,l,d,r,E,e,i,n,t,u,f,O,"static/chunks/pages/pipelines/[pipeline]/runs/[run]-90170de1e6fe8f04.js"],"/pipelines/[pipeline]/settings":[s,p,e,i,t,"static/chunks/pages/pipelines/[pipeline]/settings-3c42f05001416811.js"],"/pipelines/[pipeline]/syncs":[s,p,e,i,n,t,"static/chunks/pages/pipelines/[pipeline]/syncs-891c3d3f7a2b634b.js"],"/pipelines/[pipeline]/triggers":[s,p,c,a,l,r,e,i,n,t,u,f,"static/chunks/pages/pipelines/[pipeline]/triggers-05f43f9eaf6528db.js"],"/pipelines/[pipeline]/triggers/[...slug]":[s,p,c,a,l,d,r,h,e,i,n,t,u,f,g,"static/chunks/pages/pipelines/[pipeline]/triggers/[...slug]-456d84426ffe5025.js"],"/settings":["static/chunks/pages/settings-d594a66a568306da.js"],"/settings/account/profile":[s,e,i,b,"static/chunks/pages/settings/account/profile-f5626eb662337ad5.js"],"/settings/workspace/preferences":[s,e,i,b,"static/chunks/pages/settings/workspace/preferences-292e840e9386335e.js"],"/settings/workspace/sync-data":[s,e,i,b,"static/chunks/pages/settings/workspace/sync-data-353dc1ef2fadf70b.js"],"/settings/workspace/users":[s,p,e,i,n,b,"static/chunks/pages/settings/workspace/users-cd838435ed1b8383.js"],"/sign-in":[s,e,"static/chunks/pages/sign-in-56fb21d1b7d55ca9.js"],"/terminal":[s,e,i,"static/chunks/pages/terminal-d15ea617ef145b32.js"],"/test":[w,"static/chunks/pages/test-bd801bde63db7c9e.js"],"/triggers":[s,p,e,i,n,"static/chunks/pages/triggers-df30a0006fd775b8.js"],sortedPages:["/","/_app","/_error","/manage","/pipeline-runs","/pipelines","/pipelines/[pipeline]","/pipelines/[pipeline]/backfills","/pipelines/[pipeline]/backfills/[...slug]","/pipelines/[pipeline]/edit","/pipelines/[pipeline]/logs","/pipelines/[pipeline]/monitors","/pipelines/[pipeline]/monitors/block-runs","/pipelines/[pipeline]/monitors/block-runtime","/pipelines/[pipeline]/runs","/pipelines/[pipeline]/runs/[run]","/pipelines/[pipeline]/settings","/pipelines/[pipeline]/syncs","/pipelines/[pipeline]/triggers","/pipelines/[pipeline]/triggers/[...slug]","/settings","/settings/account/profile","/settings/workspace/preferences","/settings/workspace/sync-data","/settings/workspace/users","/sign-in","/terminal","/test","/triggers"]}}("static/chunks/844-1e171f361e63b36d.js","static/chunks/1424-fbc7f741303c0aa0.js","static/chunks/1005-38fa861ca54679db.js","static/chunks/7607-324c3a1e4e7d0628.js","static/chunks/8180-325d712ecbed97ce.js","static/chunks/547-833b70469e82cb2b.js","static/chunks/5896-10a676bcc86978cc.js","static/chunks/4804-01a10103ebe26ca8.js","static/chunks/1774-aa51ef1da7217ff9.js","static/chunks/8957-6edafc5a2521efdf.js","static/chunks/9350-1ff50f1d7b9ee754.js","static/chunks/5872-1767c45ee6690ae5.js","static/chunks/1286-a62050b3f897c6be.js","static/chunks/8312-ade1ed2fd71120f8.js","static/chunks/2714-1e79e9f2e998b544.js","static/chunks/3077-187a4db6073d95df.js","static/chunks/4495-4f0340aa82e0c623.js","/datasets","static/chunks/8789-4f858e520d46973b.js","static/chunks/5540-1025c6b3e65558b3.js","static/chunks/29107295-989a0767a635d9d5.js","static/chunks/2125-0b537dc53fe71b18.js","static/chunks/7011-81dd8269c4806d26.js","static/chunks/5682-c0d87b28bf381aae.js","static/chunks/6567-2488118bb39a9d99.js","static/chunks/9129-8ae88897c3817909.js"),self.__BUILD_MANIFEST_CB&&self.__BUILD_MANIFEST_CB();
1
+ self.__BUILD_MANIFEST=function(s,e,i,p,n,t,c,a,l,u,d,r,f,g,k,b,h,j,o,_,m,E,w,O,A,B){return{__rewrites:{beforeFiles:[],afterFiles:[{source:"/CLOUD_NOTEBOOK_BASE_PATH_PLACEHOLDER_/datasets",destination:j},{source:"/CLOUD_NOTEBOOK_BASE_PATH_PLACEHOLDER_",destination:j}],fallback:[]},"/":["static/chunks/pages/index-b6cd94a079629572.js"],"/_error":["static/chunks/pages/_error-235304e5badb19eb.js"],"/manage":[s,p,o,e,i,n,_,"static/chunks/pages/manage-eba67ac0edfdea1b.js"],"/pipeline-runs":[s,p,e,i,n,g,"static/chunks/pages/pipeline-runs-128dd171c6fff7ac.js"],"/pipelines":[s,p,e,i,n,"static/chunks/pages/pipelines-c73dab1d63317556.js"],"/pipelines/[pipeline]":["static/chunks/pages/pipelines/[pipeline]-ca9457e1a6bced4b.js"],"/pipelines/[pipeline]/backfills":[s,p,e,i,n,t,"static/chunks/pages/pipelines/[pipeline]/backfills-f08b51d9dc56eab5.js"],"/pipelines/[pipeline]/backfills/[...slug]":[s,p,c,a,l,d,r,h,e,i,n,t,u,f,g,"static/chunks/pages/pipelines/[pipeline]/backfills/[...slug]-9e519ad50f639e00.js"],"/pipelines/[pipeline]/edit":[m,s,p,c,a,l,d,r,k,E,w,o,"static/chunks/7107-b89772bb2a2669df.js",e,i,n,u,f,_,O,A,"static/chunks/pages/pipelines/[pipeline]/edit-d90d32812b2be89e.js"],"/pipelines/[pipeline]/logs":[s,p,a,h,e,i,n,t,"static/chunks/pages/pipelines/[pipeline]/logs-0751190c3f720f8c.js"],"/pipelines/[pipeline]/monitors":[s,p,c,k,e,i,t,B,"static/chunks/pages/pipelines/[pipeline]/monitors-5244d6c5d80af010.js"],"/pipelines/[pipeline]/monitors/block-runs":[s,p,c,k,e,i,t,B,"static/chunks/pages/pipelines/[pipeline]/monitors/block-runs-302e1bd9fbf39994.js"],"/pipelines/[pipeline]/monitors/block-runtime":[m,s,p,c,k,"static/chunks/9832-f97919376d52e3bf.js",e,i,t,A,"static/chunks/pages/pipelines/[pipeline]/monitors/block-runtime-7635e7031335de0f.js"],"/pipelines/[pipeline]/runs":[s,p,a,l,d,e,i,n,t,u,g,"static/chunks/pages/pipelines/[pipeline]/runs-88994d0bcf41cf9e.js"],"/pipelines/[pipeline]/runs/[run]":[s,p,c,a,l,d,r,E,e,i,n,t,u,f,O,"static/chunks/pages/pipelines/[pipeline]/runs/[run]-90170de1e6fe8f04.js"],"/pipelines/[pipeline]/settings":[s,p,e,i,t,"static/chunks/pages/pipelines/[pipeline]/settings-3c42f05001416811.js"],"/pipelines/[pipeline]/syncs":[s,p,e,i,n,t,"static/chunks/pages/pipelines/[pipeline]/syncs-891c3d3f7a2b634b.js"],"/pipelines/[pipeline]/triggers":[s,p,c,a,l,r,e,i,n,t,u,f,"static/chunks/pages/pipelines/[pipeline]/triggers-05f43f9eaf6528db.js"],"/pipelines/[pipeline]/triggers/[...slug]":[s,p,c,a,l,d,r,h,e,i,n,t,u,f,g,"static/chunks/pages/pipelines/[pipeline]/triggers/[...slug]-456d84426ffe5025.js"],"/settings":["static/chunks/pages/settings-d594a66a568306da.js"],"/settings/account/profile":[s,e,i,b,"static/chunks/pages/settings/account/profile-f5626eb662337ad5.js"],"/settings/workspace/preferences":[s,e,i,b,"static/chunks/pages/settings/workspace/preferences-292e840e9386335e.js"],"/settings/workspace/sync-data":[s,e,i,b,"static/chunks/pages/settings/workspace/sync-data-353dc1ef2fadf70b.js"],"/settings/workspace/users":[s,p,e,i,n,b,"static/chunks/pages/settings/workspace/users-cd838435ed1b8383.js"],"/sign-in":[s,e,"static/chunks/pages/sign-in-56fb21d1b7d55ca9.js"],"/terminal":[s,e,i,"static/chunks/pages/terminal-d15ea617ef145b32.js"],"/test":[w,"static/chunks/pages/test-bd801bde63db7c9e.js"],"/triggers":[s,p,e,i,n,"static/chunks/pages/triggers-df30a0006fd775b8.js"],sortedPages:["/","/_app","/_error","/manage","/pipeline-runs","/pipelines","/pipelines/[pipeline]","/pipelines/[pipeline]/backfills","/pipelines/[pipeline]/backfills/[...slug]","/pipelines/[pipeline]/edit","/pipelines/[pipeline]/logs","/pipelines/[pipeline]/monitors","/pipelines/[pipeline]/monitors/block-runs","/pipelines/[pipeline]/monitors/block-runtime","/pipelines/[pipeline]/runs","/pipelines/[pipeline]/runs/[run]","/pipelines/[pipeline]/settings","/pipelines/[pipeline]/syncs","/pipelines/[pipeline]/triggers","/pipelines/[pipeline]/triggers/[...slug]","/settings","/settings/account/profile","/settings/workspace/preferences","/settings/workspace/sync-data","/settings/workspace/users","/sign-in","/terminal","/test","/triggers"]}}("static/chunks/844-1e171f361e63b36d.js","static/chunks/1424-fbc7f741303c0aa0.js","static/chunks/1005-38fa861ca54679db.js","static/chunks/7607-324c3a1e4e7d0628.js","static/chunks/8180-325d712ecbed97ce.js","static/chunks/547-833b70469e82cb2b.js","static/chunks/5896-10a676bcc86978cc.js","static/chunks/4804-01a10103ebe26ca8.js","static/chunks/1774-aa51ef1da7217ff9.js","static/chunks/8957-6edafc5a2521efdf.js","static/chunks/9350-1ff50f1d7b9ee754.js","static/chunks/5872-1767c45ee6690ae5.js","static/chunks/1286-a62050b3f897c6be.js","static/chunks/8312-71137409aea5d028.js","static/chunks/2714-1e79e9f2e998b544.js","static/chunks/3077-187a4db6073d95df.js","static/chunks/4495-4f0340aa82e0c623.js","/datasets","static/chunks/8789-4f858e520d46973b.js","static/chunks/5540-1025c6b3e65558b3.js","static/chunks/29107295-989a0767a635d9d5.js","static/chunks/2125-0b537dc53fe71b18.js","static/chunks/7011-81dd8269c4806d26.js","static/chunks/5682-c0d87b28bf381aae.js","static/chunks/6567-2488118bb39a9d99.js","static/chunks/9129-8ae88897c3817909.js"),self.__BUILD_MANIFEST_CB&&self.__BUILD_MANIFEST_CB();
@@ -0,0 +1 @@
1
+ "use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[8312],{65597:function(e,n,i){i.d(n,{f:function(){return l}});var t=i(9518),r=i(23831),o=i(49125),u=i(73942),l=t.default.div.withConfig({displayName:"Tablestyle__PopupContainerStyle",componentId:"sc-8ammqd-0"})(["position:absolute;max-height:","px;z-index:10;border-radius:","px;padding:","px;"," "," "," ",""],58*o.iI,u.TR,2*o.iI,(function(e){return"\n box-shadow: ".concat((e.theme.shadow||r.Z.shadow).popup,";\n background-color: ").concat((e.theme.interactive||r.Z.interactive).defaultBackground,";\n ")}),(function(e){return e.leftOffset&&"\n left: ".concat(e.leftOffset,"px;\n ")}),(function(e){return e.topOffset&&"\n top: ".concat(e.topOffset,"px;\n ")}),(function(e){return e.width&&"\n width: ".concat(e.width,"px;\n ")}))},97496:function(e,n,i){var t=i(82394),r=i(75582),o=i(12691),u=i.n(o),l=i(34376),c=i.n(l),s=i(82684),d=i(83455),a=i(60328),p=i(38341),f=i(47999),h=i(93461),x=i(67971),j=i(10919),g=i(47409),b=i(86673),Z=i(54283),m=i(58180),_=i(19711),v=i(82531),C=i(23831),O=i(73942),E=i(10503),I=i(65597),k=i(93348),P=i(45838),w=i(49125),y=i(19395),N=i(24224),D=i(9736),A=i(96510),L=i(28598);function R(e,n){var i=Object.keys(e);if(Object.getOwnPropertySymbols){var t=Object.getOwnPropertySymbols(e);n&&(t=t.filter((function(n){return Object.getOwnPropertyDescriptor(e,n).enumerable}))),i.push.apply(i,t)}return i}function T(e){for(var n=1;n<arguments.length;n++){var i=null!=arguments[n]?arguments[n]:{};n%2?R(Object(i),!0).forEach((function(n){(0,t.Z)(e,n,i[n])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(i)):R(Object(i)).forEach((function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(i,n))}))}return e}function S(e){var n=e.cancelingRunId,i=e.disabled,t=e.isLoadingCancelPipeline,o=e.onCancel,u=e.onSuccess,l=e.pipelineRun,c=e.setCancelingRunId,p=e.setErrors,h=e.setShowConfirmationId,j=e.showConfirmationId,m=(0,D.Ct)(),P=l||{},y=P.id,N=P.pipeline_schedule_id,R=P.pipeline_schedule_token,T=P.pipeline_schedule_type,S=P.status,V=t&&y===n&&g.VO.RUNNING===S,U=(0,d.Db)(k.Xm.API===T&&R?v.ZP.pipeline_runs.pipeline_schedules.useCreateWithParent(N,R):v.ZP.pipeline_runs.pipeline_schedules.useCreate(N),{onSuccess:function(e){return(0,A.wD)(e,{callback:function(){u()},onErrorCallback:function(e,n){return null===p||void 0===p?void 0:p({errors:n,response:e})}})}}),F=(0,r.Z)(U,1)[0],M=(0,s.useCallback)((function(){h(null),F({pipeline_run:{backfill_id:null===l||void 0===l?void 0:l.backfill_id,event_variables:(null===l||void 0===l?void 0:l.event_variables)||{},execution_date:null===l||void 0===l?void 0:l.execution_date,pipeline_schedule_id:null===l||void 0===l?void 0:l.pipeline_schedule_id,pipeline_uuid:null===l||void 0===l?void 0:l.pipeline_uuid,variables:(null===l||void 0===l?void 0:l.variables)||{}}})}),[F,l,h]),B=(0,s.useCallback)((function(){h(null),c(y),o({id:y,status:g.VO.CANCELLED})}),[o,y,c,h]);return(0,L.jsxs)("div",{style:{position:"relative"},children:[(0,L.jsx)(a.Z,{backgroundColor:V&&C.Z.accent.yellow,beforeIcon:g.VO.INITIAL!==S&&!i&&(0,L.jsxs)(L.Fragment,{children:[g.VO.COMPLETED===S&&(0,L.jsx)(E.Jr,{size:2*w.iI}),[g.VO.FAILED,g.VO.CANCELLED].includes(S)&&(0,L.jsx)(E.Py,{inverted:g.VO.CANCELLED===S&&!m,size:2*w.iI}),[g.VO.RUNNING].includes(S)&&(0,L.jsx)(Z.Z,{color:V?C.Z.status.negative:C.Z.monotone.white,small:!0})]}),borderRadius:O.D7,danger:g.VO.FAILED===S&&!m,default:g.VO.INITIAL===S,disabled:i||m,loading:!l,onClick:function(){return h(y)},padding:"6px",primary:g.VO.RUNNING===S&&!V&&!m,warning:g.VO.CANCELLED===S&&!m,children:i?"Ready":V?"Canceling":g.Do[S]}),(0,L.jsx)(f.Z,{onClickOutside:function(){return h(null)},open:j===y,children:(0,L.jsxs)(I.f,{children:[[g.VO.RUNNING,g.VO.INITIAL].includes(S)&&(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(_.ZP,{bold:!0,color:"#9ECBFF",children:"Run is in progress"}),(0,L.jsx)(b.Z,{mb:1}),(0,L.jsxs)(_.ZP,{children:["This pipeline run is currently ongoing. Retrying will cancel",(0,L.jsx)("br",{}),"the current pipeline run."]}),(0,L.jsx)(_.ZP,{}),(0,L.jsx)(b.Z,{mt:1,children:(0,L.jsxs)(x.Z,{children:[(0,L.jsx)(a.Z,{onClick:function(){B(),M()},children:"Retry run"}),(0,L.jsx)(b.Z,{ml:1}),(0,L.jsx)(a.Z,{onClick:B,children:"Cancel run"})]})})]}),[g.VO.CANCELLED,g.VO.FAILED,g.VO.COMPLETED].includes(S)&&(0,L.jsxs)(L.Fragment,{children:[(0,L.jsxs)(_.ZP,{bold:!0,color:"#9ECBFF",children:["Run ",S]}),(0,L.jsx)(b.Z,{mb:1}),(0,L.jsx)(_.ZP,{children:"Retry the run with changes you have made to the pipeline."}),(0,L.jsx)(b.Z,{mb:1}),(0,L.jsx)(a.Z,{onClick:M,children:"Retry run"})]})]})})]})}n.Z=function(e){var n=e.allowBulkSelect,i=e.disableRowSelect,o=e.emptyMessage,l=void 0===o?"No runs available":o,f=e.fetchPipelineRuns,Z=e.onClickRow,C=e.pipelineRuns,I=e.selectedRun,k=e.selectedRuns,D=e.setSelectedRuns,R=e.setErrors,V=(0,s.useState)(null),U=V[0],F=V[1],M=(0,s.useState)(null),B=M[0],H=M[1],z=(0,d.Db)((function(e){var n=e.id,i=e.status;return v.ZP.pipeline_runs.useUpdate(n)({pipeline_run:{status:i}})}),{onSuccess:function(e){return(0,A.wD)(e,{callback:function(){F(null),f()},onErrorCallback:function(e,n){F(null),null===R||void 0===R||R({errors:n,response:e})}})}}),Y=(0,r.Z)(z,2),G=Y[0],J=Y[1].isLoading,K=[null,1,2,1,1,null],q=[{uuid:"Status"},{uuid:"Pipeline UUID"},{uuid:"Date"},{uuid:"Trigger"},{uuid:"Block runs"},{uuid:"Completed"},{uuid:"Logs"}],Q=(0,s.useMemo)((function(){return C.every((function(e){var n=e.id;return!(null===k||void 0===k||!k[n])}))}),[C,k]);return n&&(K.unshift(null),q.unshift({label:function(){return(0,L.jsx)(p.Z,{checked:Q,onClick:function(){var e=(0,N.HK)(C||[],(function(e){return e.id}));D(Q?{}:e)}})},uuid:"Selected"})),!i&&Z&&(K.push(null),q.push({label:function(){return""},uuid:"action"})),(0,L.jsx)(P.cl,{minHeight:30*w.iI,overflowVisible:!!B,children:0===(null===C||void 0===C?void 0:C.length)?(0,L.jsx)(b.Z,{px:3,py:1,children:(0,L.jsx)(_.ZP,{bold:!0,default:!0,monospace:!0,muted:!0,children:l})}):(0,L.jsx)(m.Z,{columnFlex:K,columns:q,isSelectedRow:function(e){return!i&&C[e].id===(null===I||void 0===I?void 0:I.id)},onClickRow:i?null:Z,rowVerticalPadding:6,rows:null===C||void 0===C?void 0:C.map((function(e,r){var o=e.block_runs_count,l=e.completed_at,s=e.execution_date,d=e.id,m=e.pipeline_schedule_id,v=e.pipeline_schedule_name,I=e.pipeline_uuid,P=e.status,N=!d&&!P,A=[];if(A=r>0&&C[r-1].execution_date===e.execution_date&&C[r-1].pipeline_schedule_id===e.pipeline_schedule_id?[(0,L.jsx)(b.Z,{ml:1,children:(0,L.jsxs)(x.Z,{alignItems:"center",children:[(0,L.jsx)(E.TT,{size:2*w.iI,useStroke:!0}),(0,L.jsx)(a.Z,{borderRadius:O.D7,notClickable:!0,padding:"6px",children:(0,L.jsx)(_.ZP,{muted:!0,children:g.Do[P]})})]})},"row_status"),(0,L.jsx)(_.ZP,{default:!0,monospace:!0,muted:!0,children:I},"row_pipeline_uuid"),(0,L.jsx)(_.ZP,{default:!0,monospace:!0,muted:!0,children:"-"},"row_date_retry"),(0,L.jsx)(_.ZP,{default:!0,monospace:!0,muted:!0,children:"-"},"row_trigger_retry"),(0,L.jsx)(u(),{as:"/pipelines/".concat(I,"/runs/").concat(d),href:"/pipelines/[pipeline]/runs/[run]",passHref:!0,children:(0,L.jsx)(j.Z,{bold:!0,muted:!0,children:"See block runs (".concat(o,")")})},"row_block_runs"),(0,L.jsx)(_.ZP,{monospace:!0,muted:!0,children:l&&(0,y.Vx)(l)||"-"},"row_completed"),(0,L.jsx)(a.Z,{default:!0,iconOnly:!0,noBackground:!0,onClick:function(){return c().push("/pipelines/".concat(I,"/logs?pipeline_run_id[]=").concat(d))},children:(0,L.jsx)(E.B4,{default:!0,size:2*w.iI})},"row_logs")]:[(0,L.jsx)(S,{cancelingRunId:U,disabled:N,isLoadingCancelPipeline:J,onCancel:G,onSuccess:f,pipelineRun:e,setCancelingRunId:F,setErrors:R,setShowConfirmationId:H,showConfirmationId:B},"row_retry_button"),(0,L.jsx)(_.ZP,{default:!0,monospace:!0,children:I},"row_pipeline_uuid"),(0,L.jsx)(_.ZP,{default:!0,monospace:!0,children:s&&(0,y.Vx)(s)||"-"},"row_date"),(0,L.jsx)(u(),{as:"/pipelines/".concat(I,"/triggers/").concat(m),href:"/pipelines/[pipeline]/triggers/[...slug]",passHref:!0,children:(0,L.jsx)(j.Z,{bold:!0,sameColorAsText:!0,children:v})},"row_trigger"),(0,L.jsx)(u(),{as:"/pipelines/".concat(I,"/runs/").concat(d),href:"/pipelines/[pipeline]/runs/[run]",passHref:!0,children:(0,L.jsx)(j.Z,{bold:!0,disabled:N,sameColorAsText:!0,children:N?"":"See block runs (".concat(o,")")})},"row_block_runs"),(0,L.jsx)(_.ZP,{default:!0,monospace:!0,children:l&&(0,y.Vx)(l)||"-"},"row_completed"),(0,L.jsx)(a.Z,{default:!0,disabled:N,iconOnly:!0,noBackground:!0,onClick:function(){return c().push("/pipelines/".concat(I,"/logs?pipeline_run_id[]=").concat(d))},children:(0,L.jsx)(E.B4,{default:!0,size:2*w.iI})},"row_item_13")],n){var V=!(null===k||void 0===k||!k[d]);A.unshift((0,L.jsx)(p.Z,{checked:V,onClick:function(){D((function(n){return T(T({},n),{},(0,t.Z)({},d,V?null:e))}))}},"selected-pipeline-run-".concat(d)))}return!i&&Z&&A.push((0,L.jsx)(h.Z,{flex:1,justifyContent:"flex-end",children:(0,L.jsx)(E._Q,{default:!0,size:2*w.iI})})),A})),uuid:"pipeline-runs"})})}},19395:function(e,n,i){i.d(n,{IJ:function(){return d},Vx:function(){return p},eI:function(){return a},gU:function(){return h},tL:function(){return f},vJ:function(){return x}});var t,r,o=i(82394),u=i(92083),l=i.n(u);function c(e,n){var i=Object.keys(e);if(Object.getOwnPropertySymbols){var t=Object.getOwnPropertySymbols(e);n&&(t=t.filter((function(n){return Object.getOwnPropertyDescriptor(e,n).enumerable}))),i.push.apply(i,t)}return i}function s(e){for(var n=1;n<arguments.length;n++){var i=null!=arguments[n]?arguments[n]:{};n%2?c(Object(i),!0).forEach((function(n){(0,o.Z)(e,n,i[n])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(i)):c(Object(i)).forEach((function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(i,n))}))}return e}function d(e){return null===e||void 0===e?void 0:e.reduce((function(e,n){var i=n.block_uuid,t=n.completed_at,r=n.started_at,u=n.status,c=null;r&&t&&(c=l()(t).valueOf()-l()(r).valueOf());return s(s({},e),{},(0,o.Z)({},i,{runtime:c,status:u}))}),{})}function a(e){if(!e)return null;var n=new Date(l()(e).valueOf()),i=Date.UTC(n.getFullYear(),n.getMonth(),n.getDate(),n.getHours(),n.getMinutes(),n.getSeconds());return new Date(i)}function p(e){return"string"!==typeof e?e:a(e.split("+")[0]).toISOString().split(".")[0]}!function(e){e.DAY="day",e.HOUR="hour",e.MINUTE="minute",e.SECOND="second"}(r||(r={}));var f=(t={},(0,o.Z)(t,r.DAY,86400),(0,o.Z)(t,r.HOUR,3600),(0,o.Z)(t,r.MINUTE,60),(0,o.Z)(t,r.SECOND,1),t);function h(e){var n=r.SECOND,i=e;return e%86400===0?(i/=86400,n=r.DAY):e%3600===0?(i/=3600,n=r.HOUR):e%60===0&&(i/=60,n=r.MINUTE),{time:i,unit:n}}function x(e,n){return e*f[n]}},51099:function(e,n,i){i.d(n,{Q:function(){return d}});i(82684);var t=i(60328),r=i(67971),o=i(86673),u=i(10503),l=i(73899),c=i(49125),s=i(28598),d=22;n.Z=function(e){var n=e.page,i=e.maxPages,d=e.onUpdate,a=e.totalPages,p=[],f=i;if(f>a)p=Array.from({length:a},(function(e,n){return n}));else{var h=Math.floor(f/2),x=n-h;n+h>=a?(x=a-f+2,f-=2):n-h<=0?(x=0,f-=2):(f-=4,x=n-Math.floor(f/2)),p=Array.from({length:f},(function(e,n){return n+x}))}return(0,s.jsx)(s.Fragment,{children:a>0&&(0,s.jsxs)(r.Z,{alignItems:"center",children:[(0,s.jsx)(t.Z,{disabled:0===n,onClick:function(){return d(n-1)},children:(0,s.jsx)(u.Hd,{size:1.5*c.iI,stroke:"#AEAEAE"})}),!p.includes(0)&&(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(o.Z,{ml:1,children:(0,s.jsx)(t.Z,{onClick:function(){return d(0)},borderLess:!0,noBackground:!0,children:1})},0),!p.includes(1)&&(0,s.jsx)(o.Z,{ml:1,children:(0,s.jsx)(t.Z,{notClickable:!0,noBackground:!0,noPadding:!0,children:"..."})},0)]}),p.map((function(e){return(0,s.jsx)(o.Z,{ml:1,children:(0,s.jsx)(t.Z,{onClick:function(){e!==n&&d(e)},notClickable:e===n,backgroundColor:e===n&&l.a$,borderLess:!0,noBackground:!0,children:e+1})},e)})),!p.includes(a-1)&&(0,s.jsxs)(s.Fragment,{children:[!p.includes(a-2)&&(0,s.jsx)(o.Z,{ml:1,children:(0,s.jsx)(t.Z,{notClickable:!0,noBackground:!0,noPadding:!0,children:"..."})},0),(0,s.jsx)(o.Z,{ml:1,children:(0,s.jsx)(t.Z,{onClick:function(){return d(a-1)},borderLess:!0,noBackground:!0,children:a})},a-1)]}),(0,s.jsx)(o.Z,{ml:1}),(0,s.jsx)(t.Z,{disabled:n===a-1,onClick:function(){return d(n+1)},children:(0,s.jsx)(u.Kw,{size:1.5*c.iI,stroke:"#AEAEAE"})})]})})}},47409:function(e,n,i){i.d(n,{Az:function(){return l},BF:function(){return u},Do:function(){return s},VO:function(){return o},sZ:function(){return c}});var t,r=i(82394),o=i(66050).V,u=[o.INITIAL,o.RUNNING],l=[o.CANCELLED,o.COMPLETED,o.FAILED],c="__mage_variables",s=(t={},(0,r.Z)(t,o.CANCELLED,"Cancelled"),(0,r.Z)(t,o.COMPLETED,"Done"),(0,r.Z)(t,o.FAILED,"Failed"),(0,r.Z)(t,o.INITIAL,"Ready"),(0,r.Z)(t,o.RUNNING,"Running"),t)},93348:function(e,n,i){i.d(n,{TR:function(){return a},U5:function(){return c},Xm:function(){return o},Z4:function(){return d},fq:function(){return l},kJ:function(){return s}});var t,r,o,u=i(82394);!function(e){e.API="api",e.EVENT="event",e.TIME="time"}(o||(o={}));var l,c,s,d=(t={},(0,u.Z)(t,o.API,(function(){return"API"})),(0,u.Z)(t,o.EVENT,(function(){return"event"})),(0,u.Z)(t,o.TIME,(function(){return"schedule"})),t);!function(e){e.ACTIVE="active",e.INACTIVE="inactive"}(l||(l={})),function(e){e.ONCE="@once",e.HOURLY="@hourly",e.DAILY="@daily",e.WEEKLY="@weekly",e.MONTHLY="@monthly"}(c||(c={})),function(e){e.CREATED_AT="created_at",e.NAME="name",e.PIPELINE="pipeline_uuid",e.STATUS="status",e.TYPE="schedule_type"}(s||(s={}));var a=(r={},(0,u.Z)(r,s.CREATED_AT,"Created at"),(0,u.Z)(r,s.NAME,"Name"),(0,u.Z)(r,s.PIPELINE,"Pipeline"),(0,u.Z)(r,s.STATUS,"Status"),(0,u.Z)(r,s.TYPE,"Type"),r)}}]);