mage-ai 0.8.37__py3-none-any.whl → 0.8.39__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


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

Files changed (91) hide show
  1. mage_ai/api/logging.py +2 -2
  2. mage_ai/api/resources/PipelineRunResource.py +6 -3
  3. mage_ai/data_integrations/sources/constants.py +1 -0
  4. mage_ai/data_preparation/models/block/dbt/__init__.py +20 -0
  5. mage_ai/data_preparation/models/block/dbt/utils/__init__.py +4 -1
  6. mage_ai/data_preparation/models/pipeline.py +10 -1
  7. mage_ai/io/base.py +2 -2
  8. mage_ai/io/constants.py +3 -0
  9. mage_ai/io/export_utils.py +14 -1
  10. mage_ai/io/mssql.py +5 -2
  11. mage_ai/io/mysql.py +7 -3
  12. mage_ai/io/postgres.py +64 -21
  13. mage_ai/io/sql.py +35 -6
  14. mage_ai/io/trino.py +7 -3
  15. mage_ai/orchestration/pipeline_scheduler.py +37 -27
  16. mage_ai/server/active_kernel.py +6 -3
  17. mage_ai/server/api/clusters.py +4 -1
  18. mage_ai/server/api/integration_sources.py +5 -2
  19. mage_ai/server/client/mage.py +2 -2
  20. mage_ai/server/constants.py +1 -1
  21. mage_ai/server/data/base.py +2 -2
  22. mage_ai/server/data/models.py +2 -2
  23. mage_ai/server/frontend_dist/404.html +2 -2
  24. mage_ai/server/frontend_dist/404.html.html +2 -2
  25. mage_ai/server/frontend_dist/_next/static/chunks/{2626-905774aafeb2c600.js → 2626-e7fa4f83f8214c97.js} +1 -1
  26. mage_ai/server/frontend_dist/_next/static/chunks/4178-9103014b7dae3c49.js +1 -0
  27. mage_ai/server/frontend_dist/_next/static/chunks/{4538-8a3c3e47be976ede.js → 4538-347283088b83c6bf.js} +1 -1
  28. mage_ai/server/frontend_dist/_next/static/chunks/5141-ddf4ba0a362d6f34.js +1 -0
  29. mage_ai/server/frontend_dist/_next/static/chunks/{5477-793cd2120261d023.js → 5477-b439f211b6146a11.js} +1 -1
  30. mage_ai/server/frontend_dist/_next/static/chunks/{5872-103815a4a043489b.js → 5872-1767c45ee6690ae5.js} +1 -1
  31. mage_ai/server/frontend_dist/_next/static/chunks/{5896-f84e336fb8877027.js → 5896-10a676bcc86978cc.js} +1 -1
  32. mage_ai/server/frontend_dist/_next/static/chunks/{7400-365cb7888b6db7d9.js → 7400-f4db9b5d41f67f75.js} +1 -1
  33. mage_ai/server/frontend_dist/_next/static/chunks/{9386-fb899ca8ecc2a350.js → 9386-d4cc11bab74eec8d.js} +1 -1
  34. mage_ai/server/frontend_dist/_next/static/chunks/{9832-c8b8970bb522f302.js → 9832-f97919376d52e3bf.js} +1 -1
  35. mage_ai/server/frontend_dist/_next/static/chunks/pages/{manage-9e5f315db570ac77.js → manage-3046bc53d24917c7.js} +1 -1
  36. mage_ai/server/frontend_dist/_next/static/chunks/pages/{pipeline-runs-79e10a783afec3df.js → pipeline-runs-e64ba4e8b2bfe73c.js} +1 -1
  37. mage_ai/server/frontend_dist/_next/static/chunks/pages/pipelines/[pipeline]/edit-017f6a2de38f8658.js +1 -0
  38. mage_ai/server/frontend_dist/_next/static/chunks/pages/pipelines/[pipeline]/{syncs-1767a2f57f887ef7.js → syncs-e1271453ed0c8d6e.js} +1 -1
  39. mage_ai/server/frontend_dist/_next/static/chunks/pages/{pipelines-52c3ee3817e5554b.js → pipelines-7446a70bdd8381a5.js} +1 -1
  40. mage_ai/server/frontend_dist/_next/static/chunks/pages/settings/workspace/{preferences-a23b61bab04a16f3.js → preferences-997acba85f777259.js} +1 -1
  41. mage_ai/server/frontend_dist/_next/static/chunks/pages/settings/workspace/{sync-data-de28e502102defde.js → sync-data-8c903140c99e487c.js} +1 -1
  42. mage_ai/server/frontend_dist/_next/static/chunks/pages/terminal-6c0ea500b3bc6b61.js +1 -0
  43. mage_ai/server/frontend_dist/_next/static/chunks/pages/{triggers-8a2169d30b643ae7.js → triggers-783b9526167f1249.js} +1 -1
  44. mage_ai/server/frontend_dist/_next/static/{23nXkA2GRjJCZDwY3kuKd → ngCg1gM6urg83y2nV5KHK}/_buildManifest.js +1 -1
  45. mage_ai/server/frontend_dist/index.html +2 -2
  46. mage_ai/server/frontend_dist/manage.html +2 -2
  47. mage_ai/server/frontend_dist/pipeline-runs.html +2 -2
  48. mage_ai/server/frontend_dist/pipelines/[pipeline]/backfills/[...slug].html +2 -2
  49. mage_ai/server/frontend_dist/pipelines/[pipeline]/backfills.html +2 -2
  50. mage_ai/server/frontend_dist/pipelines/[pipeline]/edit.html +2 -2
  51. mage_ai/server/frontend_dist/pipelines/[pipeline]/logs.html +2 -2
  52. mage_ai/server/frontend_dist/pipelines/[pipeline]/monitors/block-runs.html +2 -2
  53. mage_ai/server/frontend_dist/pipelines/[pipeline]/monitors/block-runtime.html +2 -2
  54. mage_ai/server/frontend_dist/pipelines/[pipeline]/monitors.html +2 -2
  55. mage_ai/server/frontend_dist/pipelines/[pipeline]/runs/[run].html +2 -2
  56. mage_ai/server/frontend_dist/pipelines/[pipeline]/runs.html +2 -2
  57. mage_ai/server/frontend_dist/pipelines/[pipeline]/syncs.html +2 -2
  58. mage_ai/server/frontend_dist/pipelines/[pipeline]/triggers/[...slug].html +2 -2
  59. mage_ai/server/frontend_dist/pipelines/[pipeline]/triggers.html +2 -2
  60. mage_ai/server/frontend_dist/pipelines/[pipeline].html +2 -2
  61. mage_ai/server/frontend_dist/pipelines.html +2 -2
  62. mage_ai/server/frontend_dist/settings/account/profile.html +2 -2
  63. mage_ai/server/frontend_dist/settings/workspace/preferences.html +2 -2
  64. mage_ai/server/frontend_dist/settings/workspace/sync-data.html +2 -2
  65. mage_ai/server/frontend_dist/settings/workspace/users.html +2 -2
  66. mage_ai/server/frontend_dist/settings.html +2 -2
  67. mage_ai/server/frontend_dist/sign-in.html +2 -2
  68. mage_ai/server/frontend_dist/terminal.html +2 -2
  69. mage_ai/server/frontend_dist/test.html +2 -2
  70. mage_ai/server/frontend_dist/triggers.html +2 -2
  71. mage_ai/server/logger.py +16 -0
  72. mage_ai/server/scheduler_manager.py +8 -4
  73. mage_ai/server/server.py +7 -14
  74. mage_ai/server/subscriber.py +6 -3
  75. mage_ai/server/terminal_server.py +65 -0
  76. mage_ai/server/utils/frontend_renderer.py +3 -2
  77. mage_ai/server/websocket_server.py +4 -1
  78. mage_ai/settings/__init__.py +2 -0
  79. mage_ai/shared/logger.py +4 -0
  80. {mage_ai-0.8.37.dist-info → mage_ai-0.8.39.dist-info}/METADATA +1 -1
  81. {mage_ai-0.8.37.dist-info → mage_ai-0.8.39.dist-info}/RECORD +87 -85
  82. mage_ai/server/frontend_dist/_next/static/chunks/4178-e17f37d21253b832.js +0 -1
  83. mage_ai/server/frontend_dist/_next/static/chunks/5141-2ae9eae00ec2cdfa.js +0 -1
  84. mage_ai/server/frontend_dist/_next/static/chunks/pages/pipelines/[pipeline]/edit-6a52671f1853e1a5.js +0 -1
  85. mage_ai/server/frontend_dist/_next/static/chunks/pages/terminal-9c21edae8f1b6737.js +0 -1
  86. /mage_ai/server/frontend_dist/_next/static/{23nXkA2GRjJCZDwY3kuKd → ngCg1gM6urg83y2nV5KHK}/_middlewareManifest.js +0 -0
  87. /mage_ai/server/frontend_dist/_next/static/{23nXkA2GRjJCZDwY3kuKd → ngCg1gM6urg83y2nV5KHK}/_ssgManifest.js +0 -0
  88. {mage_ai-0.8.37.dist-info → mage_ai-0.8.39.dist-info}/LICENSE +0 -0
  89. {mage_ai-0.8.37.dist-info → mage_ai-0.8.39.dist-info}/WHEEL +0 -0
  90. {mage_ai-0.8.37.dist-info → mage_ai-0.8.39.dist-info}/entry_points.txt +0 -0
  91. {mage_ai-0.8.37.dist-info → mage_ai-0.8.39.dist-info}/top_level.txt +0 -0
@@ -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>Sign in | Mage</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-7e791bee1e32adec.js" defer=""></script><script src="/_next/static/chunks/3850-6395783d820def1c.js" defer=""></script><script src="/_next/static/chunks/2344-5cd452dd1825dabc.js" defer=""></script><script src="/_next/static/chunks/pages/sign-in-404d934deb8950d5.js" defer=""></script><script src="/_next/static/23nXkA2GRjJCZDwY3kuKd/_buildManifest.js" defer=""></script><script src="/_next/static/23nXkA2GRjJCZDwY3kuKd/_ssgManifest.js" defer=""></script><script src="/_next/static/23nXkA2GRjJCZDwY3kuKd/_middlewareManifest.js" defer=""></script><style data-styled="" data-styled-version="5.3.6">.lpkUpY{display:-ms-flexbox;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap;margin-right:-0px;margin-left:-0px;}/*!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>Sign in | Mage</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-7e791bee1e32adec.js" defer=""></script><script src="/_next/static/chunks/3850-6395783d820def1c.js" defer=""></script><script src="/_next/static/chunks/2344-5cd452dd1825dabc.js" defer=""></script><script src="/_next/static/chunks/pages/sign-in-404d934deb8950d5.js" defer=""></script><script src="/_next/static/ngCg1gM6urg83y2nV5KHK/_buildManifest.js" defer=""></script><script src="/_next/static/ngCg1gM6urg83y2nV5KHK/_ssgManifest.js" defer=""></script><script src="/_next/static/ngCg1gM6urg83y2nV5KHK/_middlewareManifest.js" defer=""></script><style data-styled="" data-styled-version="5.3.6">.lpkUpY{display:-ms-flexbox;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap;margin-right:-0px;margin-left:-0px;}/*!sc*/
2
2
  data-styled.g2[id="sc-gswNZR"]{content:"lpkUpY,"}/*!sc*/
3
3
  .gNEDLC{position:relative;width:100%;min-height:1px;padding-right:0px;padding-left:0px;}/*!sc*/
4
4
  @media (max-width:574px){.gNEDLC{-ms-flex:0 0 100%;-webkit-flex:0 0 100%;-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%;}}/*!sc*/
@@ -79,4 +79,4 @@ data-styled.g217[id="indexstyle__ContainerStyle-sc-jcgu5l-0"]{content:"hMeiSD,"}
79
79
  data-styled.g218[id="indexstyle__ContainerStyle-sc-641xul-0"]{content:"CMvDV,"}/*!sc*/
80
80
  .dDoioK{border-radius:20px;font-size:0;overflow:hidden;background-image:url(/images/sessions/abstract.png);background-size:cover;background-repeat:no-repeat;height:100%;width:100%;}/*!sc*/
81
81
  data-styled.g219[id="indexstyle__BackgroundImageStyle-sc-641xul-1"]{content:"dDoioK,"}/*!sc*/
82
- </style></head><body><div id="__next"><div class="" style="position:fixed;top:0;left:0;height:2px;background:transparent;z-index:99999999999;width:100%"><div class="" style="height:100%;background:#FF144D;transition:all 500ms ease;width:0%"><div style="box-shadow:0 0 10px #FF144D, 0 0 10px #FF144D;width:5%;opacity:1;position:absolute;height:100%;transition:all 500ms ease;transform:rotate(3deg) translate(0px, -4px);left:-10rem"></div></div></div><div class="indexstyle__HeaderStyle-sc-1bk8irg-0 gbXfes"><div></div></div><div class="Spacing__SpacingStyle-sc-1mpmtgj-0 cAYLbO"><div class="sc-gswNZR lpkUpY"><div class="sc-dkrFOg gNEDLC"><div class="indexstyle__ContainerStyle-sc-jcgu5l-0 hMeiSD"><div style="height:100%" class="sc-gswNZR lpkUpY"><div class="sc-dkrFOg dLgItz"><div class="FlexContainer__FlexContainerStyle-sc-fv2cul-0 kphHys"><div class="Spacing__SpacingStyle-sc-1mpmtgj-0 dyGjsV"><div class="indexstyle__ContainerStyle-sc-641xul-0 CMvDV"><div class="Headline__HeadlineContainerStyle-sc-12jzt2e-0 dDWSWx"><h3 class="Headline__H3Style-sc-12jzt2e-5 fUIxMs">👋 Sign in<!-- --></h3></div><form><div class="Spacing__SpacingStyle-sc-1mpmtgj-0 ljsxhe"><div class="InputWrapper__ContainerStyle-sc-aepxnk-0 ewwGTC"><input autoComplete="username" label="Email" placeholder="Email" class="TextInput__TextInputStyle-sc-1ii4qtc-0 kfPhaX"/></div><div class="Spacing__SpacingStyle-sc-1mpmtgj-0 cvEUur"><div class="InputWrapper__ContainerStyle-sc-aepxnk-0 ewwGTC"><input autoComplete="current-password" label="Password" type="password" placeholder="Password" class="TextInput__TextInputStyle-sc-1ii4qtc-0 kfPhaX"/></div></div></div><div class="Spacing__SpacingStyle-sc-1mpmtgj-0 ljsxhe"><button selected="" type="button" class="KeyboardShortcutButton__ButtonStyle-sc-10tm4pj-0 jOqRmy"><div class="Flex-sc-sgfnl9-0 kYvkZx">Sign into Mage<!-- --></div><div class="Spacing__SpacingStyle-sc-1mpmtgj-0 litLtc"><div class="Spacing__SpacingStyle-sc-1mpmtgj-0 litLtc"><div class="FlexContainer__FlexContainerStyle-sc-fv2cul-0 ecTpOw"><span style="border-color:#FFFFFF;border-radius:4px;border-style:solid;border-width:1px;overflow:hidden" class="Text__SpanStyle-sc-sl5nur-1 kdkfAS"><div class="KeyboardText__DivStyle-sc-18540m4-1 fLQRXT">enter</div></span></div></div></div></button></div></form></div></div></div></div><div style="flex:1" class="sc-dkrFOg dOhToE"><div class="Spacing__SpacingStyle-sc-1mpmtgj-0 ijHkgz"><div src="/images/sessions/abstract.png" class="indexstyle__BackgroundImageStyle-sc-641xul-1 dDoioK">Sign in abstract image</div></div></div></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":{"auth":{"decodedToken":{"expires":0,"token":null}}},"currentTheme":{"accent":{"alert":"#F6540B","blue":"#4877FF","blueLight":"rgba(72, 119, 255, 0.5)","contentDefaultTransparent":"rgba(174, 174, 174, 0.5)","cyan":"#65E3FF","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":"#FFB9FC","positive":"#00A81A","primaryTransparent":"rgba(155, 108, 167, 0.5)","purple":"#7D55EC","purpleLight":"rgba(125, 85, 236, 0.5)","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","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":"/sign-in","query":{},"buildId":"23nXkA2GRjJCZDwY3kuKd","nextExport":true,"isFallback":false,"gip":true,"appGip":true,"scriptLoader":[]}</script></body></html>
82
+ </style></head><body><div id="__next"><div class="" style="position:fixed;top:0;left:0;height:2px;background:transparent;z-index:99999999999;width:100%"><div class="" style="height:100%;background:#FF144D;transition:all 500ms ease;width:0%"><div style="box-shadow:0 0 10px #FF144D, 0 0 10px #FF144D;width:5%;opacity:1;position:absolute;height:100%;transition:all 500ms ease;transform:rotate(3deg) translate(0px, -4px);left:-10rem"></div></div></div><div class="indexstyle__HeaderStyle-sc-1bk8irg-0 gbXfes"><div></div></div><div class="Spacing__SpacingStyle-sc-1mpmtgj-0 cAYLbO"><div class="sc-gswNZR lpkUpY"><div class="sc-dkrFOg gNEDLC"><div class="indexstyle__ContainerStyle-sc-jcgu5l-0 hMeiSD"><div style="height:100%" class="sc-gswNZR lpkUpY"><div class="sc-dkrFOg dLgItz"><div class="FlexContainer__FlexContainerStyle-sc-fv2cul-0 kphHys"><div class="Spacing__SpacingStyle-sc-1mpmtgj-0 dyGjsV"><div class="indexstyle__ContainerStyle-sc-641xul-0 CMvDV"><div class="Headline__HeadlineContainerStyle-sc-12jzt2e-0 dDWSWx"><h3 class="Headline__H3Style-sc-12jzt2e-5 fUIxMs">👋 Sign in<!-- --></h3></div><form><div class="Spacing__SpacingStyle-sc-1mpmtgj-0 ljsxhe"><div class="InputWrapper__ContainerStyle-sc-aepxnk-0 ewwGTC"><input autoComplete="username" label="Email" placeholder="Email" class="TextInput__TextInputStyle-sc-1ii4qtc-0 kfPhaX"/></div><div class="Spacing__SpacingStyle-sc-1mpmtgj-0 cvEUur"><div class="InputWrapper__ContainerStyle-sc-aepxnk-0 ewwGTC"><input autoComplete="current-password" label="Password" type="password" placeholder="Password" class="TextInput__TextInputStyle-sc-1ii4qtc-0 kfPhaX"/></div></div></div><div class="Spacing__SpacingStyle-sc-1mpmtgj-0 ljsxhe"><button selected="" type="button" class="KeyboardShortcutButton__ButtonStyle-sc-10tm4pj-0 jOqRmy"><div class="Flex-sc-sgfnl9-0 kYvkZx">Sign into Mage<!-- --></div><div class="Spacing__SpacingStyle-sc-1mpmtgj-0 litLtc"><div class="Spacing__SpacingStyle-sc-1mpmtgj-0 litLtc"><div class="FlexContainer__FlexContainerStyle-sc-fv2cul-0 ecTpOw"><span style="border-color:#FFFFFF;border-radius:4px;border-style:solid;border-width:1px;overflow:hidden" class="Text__SpanStyle-sc-sl5nur-1 kdkfAS"><div class="KeyboardText__DivStyle-sc-18540m4-1 fLQRXT">enter</div></span></div></div></div></button></div></form></div></div></div></div><div style="flex:1" class="sc-dkrFOg dOhToE"><div class="Spacing__SpacingStyle-sc-1mpmtgj-0 ijHkgz"><div src="/images/sessions/abstract.png" class="indexstyle__BackgroundImageStyle-sc-641xul-1 dDoioK">Sign in abstract image</div></div></div></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":{"auth":{"decodedToken":{"expires":0,"token":null}}},"currentTheme":{"accent":{"alert":"#F6540B","blue":"#4877FF","blueLight":"rgba(72, 119, 255, 0.5)","contentDefaultTransparent":"rgba(174, 174, 174, 0.5)","cyan":"#65E3FF","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":"#FFB9FC","positive":"#00A81A","primaryTransparent":"rgba(155, 108, 167, 0.5)","purple":"#7D55EC","purpleLight":"rgba(125, 85, 236, 0.5)","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","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":"/sign-in","query":{},"buildId":"ngCg1gM6urg83y2nV5KHK","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>Terminal | Mage</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-7e791bee1e32adec.js" defer=""></script><script src="/_next/static/chunks/3850-6395783d820def1c.js" defer=""></script><script src="/_next/static/chunks/9565-28e1c30511c95c2d.js" defer=""></script><script src="/_next/static/chunks/6085-692d2f784c0504f2.js" defer=""></script><script src="/_next/static/chunks/2344-5cd452dd1825dabc.js" defer=""></script><script src="/_next/static/chunks/9386-fb899ca8ecc2a350.js" defer=""></script><script src="/_next/static/chunks/5141-2ae9eae00ec2cdfa.js" defer=""></script><script src="/_next/static/chunks/pages/terminal-9c21edae8f1b6737.js" defer=""></script><script src="/_next/static/23nXkA2GRjJCZDwY3kuKd/_buildManifest.js" defer=""></script><script src="/_next/static/23nXkA2GRjJCZDwY3kuKd/_ssgManifest.js" defer=""></script><script src="/_next/static/23nXkA2GRjJCZDwY3kuKd/_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>Terminal | Mage</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-7e791bee1e32adec.js" defer=""></script><script src="/_next/static/chunks/3850-6395783d820def1c.js" defer=""></script><script src="/_next/static/chunks/9565-28e1c30511c95c2d.js" defer=""></script><script src="/_next/static/chunks/6085-692d2f784c0504f2.js" defer=""></script><script src="/_next/static/chunks/2344-5cd452dd1825dabc.js" defer=""></script><script src="/_next/static/chunks/9386-d4cc11bab74eec8d.js" defer=""></script><script src="/_next/static/chunks/5141-ddf4ba0a362d6f34.js" defer=""></script><script src="/_next/static/chunks/pages/terminal-6c0ea500b3bc6b61.js" defer=""></script><script src="/_next/static/ngCg1gM6urg83y2nV5KHK/_buildManifest.js" defer=""></script><script src="/_next/static/ngCg1gM6urg83y2nV5KHK/_ssgManifest.js" defer=""></script><script src="/_next/static/ngCg1gM6urg83y2nV5KHK/_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*/
@@ -17,4 +17,4 @@ data-styled.g85[id="indexstyle__HeaderStyle-sc-1bk8irg-0"]{content:"gbXfes,"}/*!
17
17
  data-styled.g87[id="indexstyle__ContainerStyle-sc-ecogjt-0"]{content:"ijwRXz,"}/*!sc*/
18
18
  .jUQyGa{padding:16px;background-color:#232429;border-left:1px solid #1C1C1C;}/*!sc*/
19
19
  data-styled.g88[id="indexstyle__VerticalNavigationStyle-sc-ecogjt-1"]{content:"jUQyGa,"}/*!sc*/
20
- </style></head><body><div id="__next"><div class="" style="position:fixed;top:0;left:0;height:2px;background:transparent;z-index:99999999999;width:100%"><div class="" style="height:100%;background:#FF144D;transition:all 500ms ease;width:0%"><div style="box-shadow:0 0 10px #FF144D, 0 0 10px #FF144D;width:5%;opacity:1;position:absolute;height:100%;transition:all 500ms ease;transform:rotate(3deg) translate(0px, -4px);left:-10rem"></div></div></div><div class="indexstyle__HeaderStyle-sc-1bk8irg-0 gbXfes"><div></div></div><div class="indexstyle__ContainerStyle-sc-ecogjt-0 ijwRXz"><div class="indexstyle__VerticalNavigationStyle-sc-ecogjt-1 jUQyGa"><div></div></div><div class="Flex-sc-sgfnl9-0 dKQluW"><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":{"auth":{"decodedToken":{"expires":0,"token":null}}},"currentTheme":{"accent":{"alert":"#F6540B","blue":"#4877FF","blueLight":"rgba(72, 119, 255, 0.5)","contentDefaultTransparent":"rgba(174, 174, 174, 0.5)","cyan":"#65E3FF","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":"#FFB9FC","positive":"#00A81A","primaryTransparent":"rgba(155, 108, 167, 0.5)","purple":"#7D55EC","purpleLight":"rgba(125, 85, 236, 0.5)","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","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":"/terminal","query":{},"buildId":"23nXkA2GRjJCZDwY3kuKd","nextExport":true,"isFallback":false,"gip":true,"appGip":true,"scriptLoader":[]}</script></body></html>
20
+ </style></head><body><div id="__next"><div class="" style="position:fixed;top:0;left:0;height:2px;background:transparent;z-index:99999999999;width:100%"><div class="" style="height:100%;background:#FF144D;transition:all 500ms ease;width:0%"><div style="box-shadow:0 0 10px #FF144D, 0 0 10px #FF144D;width:5%;opacity:1;position:absolute;height:100%;transition:all 500ms ease;transform:rotate(3deg) translate(0px, -4px);left:-10rem"></div></div></div><div class="indexstyle__HeaderStyle-sc-1bk8irg-0 gbXfes"><div></div></div><div class="indexstyle__ContainerStyle-sc-ecogjt-0 ijwRXz"><div class="indexstyle__VerticalNavigationStyle-sc-ecogjt-1 jUQyGa"><div></div></div><div class="Flex-sc-sgfnl9-0 dKQluW"><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":{"auth":{"decodedToken":{"expires":0,"token":null}}},"currentTheme":{"accent":{"alert":"#F6540B","blue":"#4877FF","blueLight":"rgba(72, 119, 255, 0.5)","contentDefaultTransparent":"rgba(174, 174, 174, 0.5)","cyan":"#65E3FF","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":"#FFB9FC","positive":"#00A81A","primaryTransparent":"rgba(155, 108, 167, 0.5)","purple":"#7D55EC","purpleLight":"rgba(125, 85, 236, 0.5)","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","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":"/terminal","query":{},"buildId":"ngCg1gM6urg83y2nV5KHK","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"/><title>Mage</title><meta content="width=device-width, initial-scale=1.0, maximum-scale=5.0, user-scalable=0" name="viewport"/><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-7e791bee1e32adec.js" defer=""></script><script src="/_next/static/chunks/7011-81dd8269c4806d26.js" defer=""></script><script src="/_next/static/chunks/pages/test-85cf18ae78ff535c.js" defer=""></script><script src="/_next/static/23nXkA2GRjJCZDwY3kuKd/_buildManifest.js" defer=""></script><script src="/_next/static/23nXkA2GRjJCZDwY3kuKd/_ssgManifest.js" defer=""></script><script src="/_next/static/23nXkA2GRjJCZDwY3kuKd/_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"/><title>Mage</title><meta content="width=device-width, initial-scale=1.0, maximum-scale=5.0, user-scalable=0" name="viewport"/><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-7e791bee1e32adec.js" defer=""></script><script src="/_next/static/chunks/7011-81dd8269c4806d26.js" defer=""></script><script src="/_next/static/chunks/pages/test-85cf18ae78ff535c.js" defer=""></script><script src="/_next/static/ngCg1gM6urg83y2nV5KHK/_buildManifest.js" defer=""></script><script src="/_next/static/ngCg1gM6urg83y2nV5KHK/_ssgManifest.js" defer=""></script><script src="/_next/static/ngCg1gM6urg83y2nV5KHK/_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*/
@@ -11,4 +11,4 @@ data-styled.g4[id="sc-global-czSCUT1"]{content:"sc-global-czSCUT1,"}/*!sc*/
11
11
  data-styled.g5[id="ToastWrapper-sc-1a33ph1-0"]{content:"kOVcuR,"}/*!sc*/
12
12
  .flrenm:hover{cursor:pointer;}/*!sc*/
13
13
  data-styled.g142[id="MultiFileInput__DropzoneStyle-sc-1l6yd2y-0"]{content:"flrenm,"}/*!sc*/
14
- </style></head><body><div id="__next"><div class="" style="position:fixed;top:0;left:0;height:2px;background:transparent;z-index:99999999999;width:100%"><div class="" style="height:100%;background:#FF144D;transition:all 500ms ease;width:0%"><div style="box-shadow:0 0 10px #FF144D, 0 0 10px #FF144D;width:5%;opacity:1;position:absolute;height:100%;transition:all 500ms ease;transform:rotate(3deg) translate(0px, -4px);left:-10rem"></div></div></div><div><div role="presentation" tabindex="0" class="MultiFileInput__DropzoneStyle-sc-1l6yd2y-0 flrenm"><input multiple="" style="display:none" tabindex="-1" type="file" directory="" webkitdirectory=""/></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":{},"currentTheme":{"accent":{"alert":"#F6540B","blue":"#4877FF","blueLight":"rgba(72, 119, 255, 0.5)","contentDefaultTransparent":"rgba(174, 174, 174, 0.5)","cyan":"#65E3FF","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":"#FFB9FC","positive":"#00A81A","primaryTransparent":"rgba(155, 108, 167, 0.5)","purple":"#7D55EC","purpleLight":"rgba(125, 85, 236, 0.5)","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","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":"/test","query":{},"buildId":"23nXkA2GRjJCZDwY3kuKd","nextExport":true,"isFallback":false,"appGip":true,"scriptLoader":[]}</script></body></html>
14
+ </style></head><body><div id="__next"><div class="" style="position:fixed;top:0;left:0;height:2px;background:transparent;z-index:99999999999;width:100%"><div class="" style="height:100%;background:#FF144D;transition:all 500ms ease;width:0%"><div style="box-shadow:0 0 10px #FF144D, 0 0 10px #FF144D;width:5%;opacity:1;position:absolute;height:100%;transition:all 500ms ease;transform:rotate(3deg) translate(0px, -4px);left:-10rem"></div></div></div><div><div role="presentation" tabindex="0" class="MultiFileInput__DropzoneStyle-sc-1l6yd2y-0 flrenm"><input multiple="" style="display:none" tabindex="-1" type="file" directory="" webkitdirectory=""/></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":{},"currentTheme":{"accent":{"alert":"#F6540B","blue":"#4877FF","blueLight":"rgba(72, 119, 255, 0.5)","contentDefaultTransparent":"rgba(174, 174, 174, 0.5)","cyan":"#65E3FF","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":"#FFB9FC","positive":"#00A81A","primaryTransparent":"rgba(155, 108, 167, 0.5)","purple":"#7D55EC","purpleLight":"rgba(125, 85, 236, 0.5)","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","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":"/test","query":{},"buildId":"ngCg1gM6urg83y2nV5KHK","nextExport":true,"isFallback":false,"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>Triggers | Mage</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-7e791bee1e32adec.js" defer=""></script><script src="/_next/static/chunks/3850-6395783d820def1c.js" defer=""></script><script src="/_next/static/chunks/2083-78a438dbdc57d1e4.js" defer=""></script><script src="/_next/static/chunks/2344-5cd452dd1825dabc.js" defer=""></script><script src="/_next/static/chunks/9386-fb899ca8ecc2a350.js" defer=""></script><script src="/_next/static/chunks/6166-2ee6aff0ca70b2f0.js" defer=""></script><script src="/_next/static/chunks/8180-8de652170ea5ed93.js" defer=""></script><script src="/_next/static/chunks/pages/triggers-8a2169d30b643ae7.js" defer=""></script><script src="/_next/static/23nXkA2GRjJCZDwY3kuKd/_buildManifest.js" defer=""></script><script src="/_next/static/23nXkA2GRjJCZDwY3kuKd/_ssgManifest.js" defer=""></script><script src="/_next/static/23nXkA2GRjJCZDwY3kuKd/_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>Triggers | Mage</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-7e791bee1e32adec.js" defer=""></script><script src="/_next/static/chunks/3850-6395783d820def1c.js" defer=""></script><script src="/_next/static/chunks/2083-78a438dbdc57d1e4.js" defer=""></script><script src="/_next/static/chunks/2344-5cd452dd1825dabc.js" defer=""></script><script src="/_next/static/chunks/9386-d4cc11bab74eec8d.js" defer=""></script><script src="/_next/static/chunks/6166-2ee6aff0ca70b2f0.js" defer=""></script><script src="/_next/static/chunks/8180-8de652170ea5ed93.js" defer=""></script><script src="/_next/static/chunks/pages/triggers-783b9526167f1249.js" defer=""></script><script src="/_next/static/ngCg1gM6urg83y2nV5KHK/_buildManifest.js" defer=""></script><script src="/_next/static/ngCg1gM6urg83y2nV5KHK/_ssgManifest.js" defer=""></script><script src="/_next/static/ngCg1gM6urg83y2nV5KHK/_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*/
@@ -17,4 +17,4 @@ data-styled.g85[id="indexstyle__HeaderStyle-sc-1bk8irg-0"]{content:"gbXfes,"}/*!
17
17
  data-styled.g87[id="indexstyle__ContainerStyle-sc-ecogjt-0"]{content:"ijwRXz,"}/*!sc*/
18
18
  .jUQyGa{padding:16px;background-color:#232429;border-left:1px solid #1C1C1C;}/*!sc*/
19
19
  data-styled.g88[id="indexstyle__VerticalNavigationStyle-sc-ecogjt-1"]{content:"jUQyGa,"}/*!sc*/
20
- </style></head><body><div id="__next"><div class="" style="position:fixed;top:0;left:0;height:2px;background:transparent;z-index:99999999999;width:100%"><div class="" style="height:100%;background:#FF144D;transition:all 500ms ease;width:0%"><div style="box-shadow:0 0 10px #FF144D, 0 0 10px #FF144D;width:5%;opacity:1;position:absolute;height:100%;transition:all 500ms ease;transform:rotate(3deg) translate(0px, -4px);left:-10rem"></div></div></div><div class="indexstyle__HeaderStyle-sc-1bk8irg-0 gbXfes"><div></div></div><div class="indexstyle__ContainerStyle-sc-ecogjt-0 ijwRXz"><div class="indexstyle__VerticalNavigationStyle-sc-ecogjt-1 jUQyGa"><div></div></div><div class="Flex-sc-sgfnl9-0 dKQluW"><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":{"auth":{"decodedToken":{"expires":0,"token":null}}},"currentTheme":{"accent":{"alert":"#F6540B","blue":"#4877FF","blueLight":"rgba(72, 119, 255, 0.5)","contentDefaultTransparent":"rgba(174, 174, 174, 0.5)","cyan":"#65E3FF","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":"#FFB9FC","positive":"#00A81A","primaryTransparent":"rgba(155, 108, 167, 0.5)","purple":"#7D55EC","purpleLight":"rgba(125, 85, 236, 0.5)","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","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":"/triggers","query":{},"buildId":"23nXkA2GRjJCZDwY3kuKd","nextExport":true,"isFallback":false,"gip":true,"appGip":true,"scriptLoader":[]}</script></body></html>
20
+ </style></head><body><div id="__next"><div class="" style="position:fixed;top:0;left:0;height:2px;background:transparent;z-index:99999999999;width:100%"><div class="" style="height:100%;background:#FF144D;transition:all 500ms ease;width:0%"><div style="box-shadow:0 0 10px #FF144D, 0 0 10px #FF144D;width:5%;opacity:1;position:absolute;height:100%;transition:all 500ms ease;transform:rotate(3deg) translate(0px, -4px);left:-10rem"></div></div></div><div class="indexstyle__HeaderStyle-sc-1bk8irg-0 gbXfes"><div></div></div><div class="indexstyle__ContainerStyle-sc-ecogjt-0 ijwRXz"><div class="indexstyle__VerticalNavigationStyle-sc-ecogjt-1 jUQyGa"><div></div></div><div class="Flex-sc-sgfnl9-0 dKQluW"><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":{"auth":{"decodedToken":{"expires":0,"token":null}}},"currentTheme":{"accent":{"alert":"#F6540B","blue":"#4877FF","blueLight":"rgba(72, 119, 255, 0.5)","contentDefaultTransparent":"rgba(174, 174, 174, 0.5)","cyan":"#65E3FF","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":"#FFB9FC","positive":"#00A81A","primaryTransparent":"rgba(155, 108, 167, 0.5)","purple":"#7D55EC","purpleLight":"rgba(125, 85, 236, 0.5)","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","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":"/triggers","query":{},"buildId":"ngCg1gM6urg83y2nV5KHK","nextExport":true,"isFallback":false,"gip":true,"appGip":true,"scriptLoader":[]}</script></body></html>
@@ -0,0 +1,16 @@
1
+ from mage_ai.settings import SERVER_VERBOSITY
2
+ from mage_ai.shared.logger import LoggingLevel
3
+ import logging
4
+
5
+
6
+ class Logger:
7
+ def new_server_logger(self, name):
8
+ return self.new_logger_with_verbosity(name, SERVER_VERBOSITY)
9
+
10
+ def new_logger_with_verbosity(self, name, level: str):
11
+ server_logger = logging.getLogger(name)
12
+ if LoggingLevel.is_valid_level(level):
13
+ server_logger.setLevel(level.upper())
14
+ else:
15
+ print(f"invalid verbosity {level} for logger {name}")
16
+ return server_logger
@@ -1,11 +1,15 @@
1
1
  from enum import Enum
2
2
  from mage_ai.orchestration.db.database_manager import database_manager
3
3
  from mage_ai.orchestration.db.process import create_process
4
+ from mage_ai.server.logger import Logger
4
5
  import multiprocessing
5
6
  import traceback
6
7
 
8
+
7
9
  SCHEDULER_AUTO_RESTART_INTERVAL = 20_000 # in milliseconds
8
10
 
11
+ logger = Logger().new_server_logger(__name__)
12
+
9
13
 
10
14
  def run_scheduler():
11
15
  from mage_ai.orchestration.triggers.loop_time_trigger import LoopTimeTrigger
@@ -37,14 +41,14 @@ class SchedulerManager:
37
41
 
38
42
  def get_status(self, auto_restart: bool = False):
39
43
  if auto_restart and self.status == self.SchedulerStatus.RUNNING and not self.is_alive:
40
- print('Restarting pipeline scheduler.')
44
+ logger.info('Restarting pipeline scheduler.')
41
45
  self.start_scheduler()
42
46
  if self.is_alive:
43
47
  return SchedulerManager.SchedulerStatus.RUNNING
44
48
  return SchedulerManager.SchedulerStatus.STOPPED
45
49
 
46
50
  def start_scheduler(self):
47
- print('Start scheduler.')
51
+ logger.info('Start scheduler.')
48
52
  if self.is_alive:
49
53
  return
50
54
 
@@ -54,7 +58,7 @@ class SchedulerManager:
54
58
  self.status = self.SchedulerStatus.RUNNING
55
59
 
56
60
  def stop_scheduler(self):
57
- print('Stop scheduler.')
61
+ logger.info('Stop scheduler.')
58
62
  if self.is_alive:
59
63
  self.scheduler_process.terminate()
60
64
  self.scheduler_process = None
@@ -66,4 +70,4 @@ scheduler_manager = SchedulerManager()
66
70
 
67
71
  def check_scheduler_status():
68
72
  status = scheduler_manager.get_status(auto_restart=True)
69
- print(f'Scheduler status: {status}.')
73
+ logger.info(f'Scheduler status: {status}.')
mage_ai/server/server.py CHANGED
@@ -43,17 +43,21 @@ from mage_ai.server.scheduler_manager import (
43
43
  scheduler_manager,
44
44
  )
45
45
  from mage_ai.server.subscriber import get_messages
46
+ from mage_ai.server.terminal_server import TerminalWebsocketServer
46
47
  from mage_ai.server.websocket_server import WebSocketServer
47
48
  from mage_ai.settings import (
48
49
  OAUTH2_APPLICATION_CLIENT_ID,
49
50
  REQUIRE_USER_AUTHENTICATION,
50
51
  AUTHENTICATION_MODE,
51
52
  LDAP_ADMIN_USERNAME,
53
+ SERVER_VERBOSITY
52
54
  )
55
+ from mage_ai.shared.logger import LoggingLevel
53
56
  from mage_ai.shared.utils import is_port_in_use
54
57
  from tornado import autoreload
55
58
  from tornado.ioloop import PeriodicCallback
56
59
  from tornado.log import enable_pretty_logging
60
+ from tornado.options import options
57
61
  from typing import Union
58
62
  import argparse
59
63
  import asyncio
@@ -149,21 +153,8 @@ class ApiProjectSettingsHandler(BaseHandler):
149
153
  ]))
150
154
 
151
155
 
152
- class TerminalWebsocketServer(terminado.TermSocket):
153
- def check_origin(self, origin):
154
- return True
155
-
156
- def open(self, url_component=None):
157
- super().open(url_component)
158
-
159
- # Turn enable-bracketed-paste off since it can mess up the output.
160
- self.terminal.ptyproc.write(
161
- "bind 'set enable-bracketed-paste off' # Mage terminal settings command\r")
162
- self.terminal.read_buffer.clear()
163
-
164
-
165
156
  def make_app():
166
- term_manager = terminado.UniqueTermManager(shell_command=['bash'])
157
+ term_manager = terminado.NamedTermManager(shell_command=['bash'])
167
158
  routes = [
168
159
  (r'/', MainPageHandler),
169
160
  (r'/pipelines', MainPageHandler),
@@ -368,6 +359,8 @@ def start_server(
368
359
  # Start a subprocess for scheduler
369
360
  scheduler_manager.start_scheduler()
370
361
 
362
+ if LoggingLevel.is_valid_level(SERVER_VERBOSITY):
363
+ options.logging = SERVER_VERBOSITY
371
364
  enable_pretty_logging()
372
365
 
373
366
  # Start web server
@@ -1,5 +1,8 @@
1
1
  from datetime import datetime
2
2
  from mage_ai.server.active_kernel import get_active_kernel_client
3
+ from mage_ai.server.logger import Logger
4
+
5
+ logger = Logger().new_server_logger(__name__)
3
6
 
4
7
 
5
8
  def get_messages(callback=None):
@@ -9,14 +12,14 @@ def get_messages(callback=None):
9
12
  try:
10
13
  client = get_active_kernel_client()
11
14
  message = client.get_iopub_msg(timeout=1)
12
- print(f'[{now}] Message:', message)
15
+ logger.info(f'[{now}] Message:', message)
13
16
 
14
17
  if message.get('content'):
15
18
  if callback:
16
19
  callback(message)
17
20
  else:
18
- print(f'[{now}] No callback for message: {message}')
21
+ logger.warn(f'[{now}] No callback for message: {message}')
19
22
  except Exception as e:
20
23
  if str(e):
21
- print(f'[{now}] Error: {e}', )
24
+ logger.error(f'[{now}] Error: {e}', )
22
25
  pass
@@ -0,0 +1,65 @@
1
+ from mage_ai.api.utils import authenticate_client_and_token
2
+ from mage_ai.orchestration.db.models.oauth import Oauth2Application
3
+ from mage_ai.settings import REQUIRE_USER_AUTHENTICATION
4
+ import terminado
5
+ import tornado.websocket
6
+
7
+
8
+ class TerminalWebsocketServer(terminado.TermSocket):
9
+ def check_origin(self, origin):
10
+ return True
11
+
12
+ def open(self, *args, **kwargs):
13
+ """Websocket connection opened.
14
+
15
+ Call our terminal manager to get a terminal, and connect to it as a
16
+ client.
17
+ """
18
+ # Jupyter has a mixin to ping websockets and keep connections through
19
+ # proxies alive. Call super() to allow that to set up:
20
+ tornado.websocket.WebSocketHandler.open(self, *args, **kwargs)
21
+
22
+ api_key = self.get_argument('api_key', None, True)
23
+ token = self.get_argument('token', None, True)
24
+
25
+ user = None
26
+ if REQUIRE_USER_AUTHENTICATION and api_key and token:
27
+ oauth_client = Oauth2Application.query.filter(
28
+ Oauth2Application.client_id == api_key,
29
+ ).first()
30
+ if oauth_client:
31
+ oauth_token, valid = authenticate_client_and_token(oauth_client.id, token)
32
+ valid = valid and \
33
+ oauth_token and \
34
+ oauth_token.user
35
+ if valid:
36
+ user = oauth_token.user
37
+
38
+ self.term_name = "tty"
39
+ if user:
40
+ self.term_name = f'terminal_{user.id}'
41
+
42
+ self._logger.info("TermSocket.open: %s", self.term_name)
43
+
44
+ self.terminal = self.term_manager.get_terminal(self.term_name)
45
+ self.terminal.clients.append(self)
46
+ self.__initiate_terminal(self.terminal)
47
+
48
+ def __initiate_terminal(self, terminal):
49
+ self.send_json_message(["setup", {}])
50
+ self._logger.info("TermSocket.open: Opened %s", self.term_name)
51
+ # Now drain the preopen buffer, if reconnect.
52
+ buffered = ""
53
+ preopen_buffer = terminal.read_buffer.copy()
54
+ while True:
55
+ if not preopen_buffer:
56
+ break
57
+ s = preopen_buffer.popleft()
58
+ buffered += s
59
+ if buffered:
60
+ self.on_pty_read(buffered)
61
+
62
+ # Turn enable-bracketed-paste off since it can mess up the output.
63
+ terminal.ptyproc.write(
64
+ "bind 'set enable-bracketed-paste off' # Mage terminal settings command\r")
65
+ terminal.read_buffer.clear()
@@ -5,7 +5,8 @@ from mage_ai.server.app import (
5
5
  server_config,
6
6
  )
7
7
  from mage_ai.server.constants import SERVER_PORT
8
- import logging
8
+ from mage_ai.server.logger import Logger
9
+
9
10
  import os
10
11
 
11
12
 
@@ -15,7 +16,7 @@ FRONTEND_DIST_PATH = os.path.abspath(
15
16
  FRONTEND_STATIC_PATH = '/_next/static'
16
17
  IFRAME_HEIGHT = 1000
17
18
 
18
- logger = logging.getLogger(__name__)
19
+ logger = Logger().new_server_logger(__name__)
19
20
 
20
21
 
21
22
  class NotebookType(str, Enum):
@@ -21,6 +21,7 @@ from mage_ai.server.active_kernel import (
21
21
  switch_active_kernel,
22
22
  )
23
23
  from mage_ai.shared.constants import ENV_DEV
24
+ from mage_ai.server.logger import Logger
24
25
  from mage_ai.server.execution_manager import (
25
26
  cancel_pipeline_execution,
26
27
  check_pipeline_process_status,
@@ -57,6 +58,8 @@ import tornado.websocket
57
58
  import traceback
58
59
  import uuid
59
60
 
61
+ logger = Logger().new_server_logger(__name__)
62
+
60
63
 
61
64
  def run_pipeline(
62
65
  pipeline: Pipeline,
@@ -314,7 +317,7 @@ class WebSocketServer(tornado.websocket.WebSocketHandler):
314
317
  output_dict,
315
318
  )
316
319
 
317
- print(
320
+ logger.info(
318
321
  f'[{block_uuid}] Sending message for {msg_id} to '
319
322
  f'{len(self.clients)} client(s):\n{json.dumps(message_final, indent=2)}'
320
323
  )
@@ -25,3 +25,5 @@ LDAP_AUTHENTICATION_FILTER = os.getenv('LDAP_AUTHENTICATION_FILTER',
25
25
  LDAP_AUTHORIZATION_FILTER = os.getenv('LDAP_AUTHORIZATION_FILTER',
26
26
  '(&(objectClass=groupOfNames)(cn=group)(member={user_dn}))')
27
27
  LDAP_ADMIN_USERNAME = os.getenv('LDAP_ADMIN_USERNAME', 'admin')
28
+
29
+ SERVER_VERBOSITY = os.getenv('SERVER_VERBOSITY', 'info') or 'info'
mage_ai/shared/logger.py CHANGED
@@ -37,6 +37,10 @@ class LoggingLevel(str, Enum):
37
37
  ERROR = 'ERROR'
38
38
  CRITICAL = 'CRITICAL'
39
39
 
40
+ @classmethod
41
+ def is_valid_level(cls, level: str) -> bool:
42
+ return level.upper() in cls.__members__
43
+
40
44
 
41
45
  class VerboseFunctionExec:
42
46
  def __init__(
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: mage-ai
3
- Version: 0.8.37
3
+ Version: 0.8.39
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