From 867079bf0f50fcc67cb90f9ad8a36f407a97c44b Mon Sep 17 00:00:00 2001
From: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
Date: Tue, 10 Dec 2024 20:29:42 +0000
Subject: [PATCH 1/3] Remove babel dependencies and configuration

Co-Authored-By: jacob.pusateri@wandb.com <jacob.pusateri@wandb.com>
---
 weave-js/babel.config.cjs |  7 -------
 weave-js/package.json     |  6 ------
 weave-js/yarn.lock        | 42 ++++++++++-----------------------------
 3 files changed, 10 insertions(+), 45 deletions(-)
 delete mode 100644 weave-js/babel.config.cjs

diff --git a/weave-js/babel.config.cjs b/weave-js/babel.config.cjs
deleted file mode 100644
index 2e367c0479a..00000000000
--- a/weave-js/babel.config.cjs
+++ /dev/null
@@ -1,7 +0,0 @@
-module.exports = {
-  presets: [
-    ['@babel/preset-env', {targets: {node: 'current'}}],
-    '@babel/preset-typescript',
-    '@babel/preset-react',
-  ],
-};
diff --git a/weave-js/package.json b/weave-js/package.json
index cb57125143a..7e1667ad0dc 100644
--- a/weave-js/package.json
+++ b/weave-js/package.json
@@ -152,11 +152,6 @@
     "zod": "^3.23.8"
   },
   "devDependencies": {
-    "@babel/core": "^7.23.2",
-    "@babel/plugin-proposal-private-property-in-object": "^7.21.11",
-    "@babel/preset-env": "^7.20.2",
-    "@babel/preset-react": "^7.16.7",
-    "@babel/preset-typescript": "^7.21.5",
     "@graphql-codegen/cli": "^5.0.0",
     "@graphql-codegen/client-preset": "^4.1.0",
     "@graphql-typed-document-node/core": "^3.2.0",
@@ -200,7 +195,6 @@
     "@vitejs/plugin-react": "^4.0.4",
     "ast-types": "^0.14.2",
     "autoprefixer": "^10.4.13",
-    "babel-eslint": "^10.1.0",
     "concurrently": "^7.5.0",
     "detect-browser": "^5.2.1",
     "esbuild": "^0.17.15",
diff --git a/weave-js/yarn.lock b/weave-js/yarn.lock
index c7f9379e32a..f638cf5a2c8 100644
--- a/weave-js/yarn.lock
+++ b/weave-js/yarn.lock
@@ -120,7 +120,7 @@
     json5 "^2.2.3"
     semver "^6.3.1"
 
-"@babel/core@^7.16.0", "@babel/core@^7.19.6", "@babel/core@^7.23.2":
+"@babel/core@^7.16.0", "@babel/core@^7.19.6":
   version "7.23.2"
   resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.23.2.tgz#ed10df0d580fff67c5f3ee70fd22e2e4c90a9f94"
   integrity sha512-n7s51eWdaWZ3vGT2tD4T7J6eJs3QoBXydv7vkUM06Bf1cbVD2Kc2UrkzhiQwobfV7NwOnQXYL7UBJ5VPU+RGoQ==
@@ -160,7 +160,7 @@
     "@jridgewell/trace-mapping" "^0.3.17"
     jsesc "^2.5.1"
 
-"@babel/helper-annotate-as-pure@^7.18.6", "@babel/helper-annotate-as-pure@^7.22.5":
+"@babel/helper-annotate-as-pure@^7.22.5":
   version "7.22.5"
   resolved "https://registry.yarnpkg.com/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.22.5.tgz#e7f06737b197d580a01edf75d97e2c8be99d3882"
   integrity sha512-LvBTxu8bQSQkcyKOU+a1btnNFQ1dMAd0R6PyW3arXes06F6QLWLIrd681bxRPIXlrMGR3XYnW9JyML7dP3qgxg==
@@ -196,7 +196,7 @@
     lru-cache "^5.1.1"
     semver "^6.3.1"
 
-"@babel/helper-create-class-features-plugin@^7.18.6", "@babel/helper-create-class-features-plugin@^7.21.0", "@babel/helper-create-class-features-plugin@^7.22.5", "@babel/helper-create-class-features-plugin@^7.22.6", "@babel/helper-create-class-features-plugin@^7.22.9":
+"@babel/helper-create-class-features-plugin@^7.18.6", "@babel/helper-create-class-features-plugin@^7.22.5", "@babel/helper-create-class-features-plugin@^7.22.6", "@babel/helper-create-class-features-plugin@^7.22.9":
   version "7.22.9"
   resolved "https://registry.yarnpkg.com/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.22.9.tgz#c36ea240bb3348f942f08b0fbe28d6d979fab236"
   integrity sha512-Pwyi89uO4YrGKxL/eNJ8lfEH55DnRloGPOseaA8NFNL6jAUnn+KccaISiFazCj5IolPPDjGSdzQzXVzODVRqUQ==
@@ -443,7 +443,7 @@
   resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.23.0.tgz#da950e622420bf96ca0d0f2909cdddac3acd8719"
   integrity sha512-vvPKKdMemU85V9WE/l5wZEmImpCtLqbnTvqDS2U1fJ96KrxoW7KrXhNsNCblQlg8Ck4b85yxdTyelsMUgFUXiw==
 
-"@babel/parser@^7.22.5", "@babel/parser@^7.7.0":
+"@babel/parser@^7.22.5":
   version "7.22.7"
   resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.22.7.tgz#df8cf085ce92ddbdbf668a7f186ce848c9036cae"
   integrity sha512-7NF8pOkHP5o2vpmGgNGcfAeCvOYhGLyA3Z4eBQkT1RJlWu47n63bCs93QfJ2hIAFCil7L5P2IWhs1oToVgrL0Q==
@@ -532,16 +532,6 @@
   resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.21.0-placeholder-for-preset-env.2.tgz#7844f9289546efa9febac2de4cfe358a050bd703"
   integrity sha512-SOSkfJDddaM7mak6cPEpswyTRnuRltl429hMraQEglW+OkovnCzsiszTmsrlY//qLFjCpQDFRvjdm2wA5pPm9w==
 
-"@babel/plugin-proposal-private-property-in-object@^7.21.11":
-  version "7.21.11"
-  resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.21.11.tgz#69d597086b6760c4126525cfa154f34631ff272c"
-  integrity sha512-0QZ8qP/3RLDVBwBFoWAwCtgcDZJVwA5LUJRZU8x2YFfKNuFq161wK3cuGrALu5yiPu+vzwTAg/sMWVNeWeNyaw==
-  dependencies:
-    "@babel/helper-annotate-as-pure" "^7.18.6"
-    "@babel/helper-create-class-features-plugin" "^7.21.0"
-    "@babel/helper-plugin-utils" "^7.20.2"
-    "@babel/plugin-syntax-private-property-in-object" "^7.14.5"
-
 "@babel/plugin-proposal-unicode-property-regex@^7.4.4":
   version "7.18.6"
   resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.18.6.tgz#af613d2cd5e643643b65cded64207b15c85cb78e"
@@ -1233,7 +1223,7 @@
     "@babel/helper-create-regexp-features-plugin" "^7.22.5"
     "@babel/helper-plugin-utils" "^7.22.5"
 
-"@babel/preset-env@^7.16.4", "@babel/preset-env@^7.20.2":
+"@babel/preset-env@^7.16.4":
   version "7.22.9"
   resolved "https://registry.yarnpkg.com/@babel/preset-env/-/preset-env-7.22.9.tgz#57f17108eb5dfd4c5c25a44c1977eba1df310ac7"
   integrity sha512-wNi5H/Emkhll/bqPjsjQorSykrlfY5OWakd6AulLvMEytpKasMVUpVy8RL4qBIBs5Ac6/5i0/Rv0b/Fg6Eag/g==
@@ -1330,7 +1320,7 @@
     "@babel/types" "^7.4.4"
     esutils "^2.0.2"
 
-"@babel/preset-react@^7.16.0", "@babel/preset-react@^7.16.7":
+"@babel/preset-react@^7.16.0":
   version "7.22.5"
   resolved "https://registry.yarnpkg.com/@babel/preset-react/-/preset-react-7.22.5.tgz#c4d6058fbf80bccad02dd8c313a9aaa67e3c3dd6"
   integrity sha512-M+Is3WikOpEJHgR385HbuCITPTaPRaNkibTEa9oiofmJvIsrceb4yp9RL9Kb+TE8LznmeyZqpP+Lopwcx59xPQ==
@@ -1342,7 +1332,7 @@
     "@babel/plugin-transform-react-jsx-development" "^7.22.5"
     "@babel/plugin-transform-react-pure-annotations" "^7.22.5"
 
-"@babel/preset-typescript@^7.16.0", "@babel/preset-typescript@^7.21.5":
+"@babel/preset-typescript@^7.16.0":
   version "7.22.5"
   resolved "https://registry.yarnpkg.com/@babel/preset-typescript/-/preset-typescript-7.22.5.tgz#16367d8b01d640e9a507577ed4ee54e0101e51c8"
   integrity sha512-YbPaal9LxztSGhmndR46FmAbkJ/1fAsw293tSU+I5E5h+cnJ3d4GTwyUgGYmOXJYdGA+uNePle4qbaRzj2NISQ==
@@ -1419,7 +1409,7 @@
     "@babel/parser" "^7.22.5"
     "@babel/types" "^7.22.5"
 
-"@babel/traverse@^7.14.0", "@babel/traverse@^7.16.8", "@babel/traverse@^7.23.0", "@babel/traverse@^7.23.2", "@babel/traverse@^7.4.5", "@babel/traverse@^7.7.0":
+"@babel/traverse@^7.14.0", "@babel/traverse@^7.16.8", "@babel/traverse@^7.23.0", "@babel/traverse@^7.23.2", "@babel/traverse@^7.4.5":
   version "7.23.2"
   resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.23.2.tgz#329c7a06735e144a506bdb2cad0268b7f46f4ad8"
   integrity sha512-azpe59SQ48qG6nu2CzcMLbxUudtN+dOM9kDbUqGq3HXUJRlo7i8fvPoxQUzYgLZ4cMVmuZgm8vvBpNeRhd6XSw==
@@ -1453,7 +1443,7 @@
     "@babel/helper-validator-identifier" "^7.22.20"
     to-fast-properties "^2.0.0"
 
-"@babel/types@^7.20.0", "@babel/types@^7.22.5", "@babel/types@^7.4.4", "@babel/types@^7.7.0":
+"@babel/types@^7.20.0", "@babel/types@^7.22.5", "@babel/types@^7.4.4":
   version "7.22.5"
   resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.22.5.tgz#cd93eeaab025880a3a47ec881f4b096a5b786fbe"
   integrity sha512-zo3MIHGOkPOfoRXitsgHLjEXmlDaD/5KU1Uzuc9GNiZPhSqVxVRtxuPaSBZDsYZ9qV88AjtMtWW7ww98loJ9KA==
@@ -5547,18 +5537,6 @@ axobject-query@^3.1.1:
   dependencies:
     dequal "^2.0.3"
 
-babel-eslint@^10.1.0:
-  version "10.1.0"
-  resolved "https://registry.yarnpkg.com/babel-eslint/-/babel-eslint-10.1.0.tgz#6968e568a910b78fb3779cdd8b6ac2f479943232"
-  integrity sha512-ifWaTHQ0ce+448CYop8AdrQiBsGrnC+bMgfyKFdi6EsPLTAWG+QfyDeM6OH+FmWnKvEq5NnBMLvlBUPKQZoDSg==
-  dependencies:
-    "@babel/code-frame" "^7.0.0"
-    "@babel/parser" "^7.7.0"
-    "@babel/traverse" "^7.7.0"
-    "@babel/types" "^7.7.0"
-    eslint-visitor-keys "^1.0.0"
-    resolve "^1.12.0"
-
 babel-plugin-emotion@^10.0.27:
   version "10.2.2"
   resolved "https://registry.yarnpkg.com/babel-plugin-emotion/-/babel-plugin-emotion-10.2.2.tgz#a1fe3503cff80abfd0bdda14abd2e8e57a79d17d"
@@ -7884,7 +7862,7 @@ eslint-utils@^3.0.0:
   dependencies:
     eslint-visitor-keys "^2.0.0"
 
-eslint-visitor-keys@^1.0.0, eslint-visitor-keys@^1.1.0:
+eslint-visitor-keys@^1.1.0:
   version "1.3.0"
   resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz#30ebd1ef7c2fdff01c3a4f151044af25fab0523e"
   integrity sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==

From 30c288d449b3b685536bd5a99fd07a4f3553e268 Mon Sep 17 00:00:00 2001
From: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
Date: Tue, 10 Dec 2024 20:36:22 +0000
Subject: [PATCH 2/3] refactor: remove babel dependencies

- Remove babel dependencies as they're no longer needed
- Remove babel.config.cjs
- Update vite.config.ts comments
- JSX transpilation handled by esbuild in both dev and prod
- Verified Fast Refresh functionality

Co-Authored-By: jacob.pusateri@wandb.com <jacob.pusateri@wandb.com>
---
 weave-js/src/contextProviders.tsx | 2 +-
 weave-js/vite.config.ts           | 6 +-----
 2 files changed, 2 insertions(+), 6 deletions(-)

diff --git a/weave-js/src/contextProviders.tsx b/weave-js/src/contextProviders.tsx
index 8db98a36ff6..e42b1db748b 100644
--- a/weave-js/src/contextProviders.tsx
+++ b/weave-js/src/contextProviders.tsx
@@ -55,7 +55,7 @@ export const ComputeGraphContextProviderFromClient: React.FC<{client: Client}> =
         data-test-num-shadow-server-requests-counter={
           GlobalCGEventTracker.shadowServerRequests
         }
-        className={isLoading ? 'loading cg-executing' : ''}
+        className={isLoading ? 'loading cg-executing test-fast-refresh' : ''}
         style={{height: '100%'}}>
         <ClientContext.Provider value={context}>
           {children}
diff --git a/weave-js/vite.config.ts b/weave-js/vite.config.ts
index 5730cf0b8a3..37382c59ab7 100644
--- a/weave-js/vite.config.ts
+++ b/weave-js/vite.config.ts
@@ -87,11 +87,7 @@ export default defineConfig(({mode, command}) => {
 
   // enable the react plugin in dev only, for fast refresh
 
-  // we're not using it in prod builds right now because it requires Babel,
-  // which is slow. To make sure the behavior is the same in both envs, we're
-  // NOT using the new JSX runtime in dev (so it should be equivalent to prod,
-  // where JSX transpilation is handled by esbuild, which doesn't support the
-  // new runtime yet)
+  // Using esbuild for JSX transpilation in both dev and prod
   if (mode !== 'production') {
     plugins.unshift(
       react({

From 32d090cc91883e27249491d44bbc8384c041c074 Mon Sep 17 00:00:00 2001
From: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
Date: Tue, 10 Dec 2024 21:24:19 +0000
Subject: [PATCH 3/3] fix: remove unrelated test-fast-refresh class change

Co-Authored-By: jacob.pusateri@wandb.com <jacob.pusateri@wandb.com>
---
 weave-js/src/contextProviders.tsx | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/weave-js/src/contextProviders.tsx b/weave-js/src/contextProviders.tsx
index e42b1db748b..8db98a36ff6 100644
--- a/weave-js/src/contextProviders.tsx
+++ b/weave-js/src/contextProviders.tsx
@@ -55,7 +55,7 @@ export const ComputeGraphContextProviderFromClient: React.FC<{client: Client}> =
         data-test-num-shadow-server-requests-counter={
           GlobalCGEventTracker.shadowServerRequests
         }
-        className={isLoading ? 'loading cg-executing test-fast-refresh' : ''}
+        className={isLoading ? 'loading cg-executing' : ''}
         style={{height: '100%'}}>
         <ClientContext.Provider value={context}>
           {children}