diff --git a/app/.eslintrc.js b/app/.eslintrc.js
index 68c0375f57..ec93a7489d 100644
--- a/app/.eslintrc.js
+++ b/app/.eslintrc.js
@@ -8,7 +8,7 @@ module.exports = {
"eslint:recommended",
"plugin:react/recommended",
"plugin:@typescript-eslint/recommended",
- "plugin:storybook/recommended"
+ "plugin:storybook/recommended",
],
overrides: [],
parser: "@typescript-eslint/parser",
@@ -22,6 +22,7 @@ module.exports = {
"simple-import-sort",
"@typescript-eslint",
"eslint-plugin-react-compiler",
+ "deprecate",
],
rules: {
"react/no-unknown-property": ["error", { ignore: ["css"] }],
@@ -51,6 +52,14 @@ module.exports = {
],
},
],
+ "deprecate/import": [
+ "error",
+ {
+ name: "Button",
+ module: "@arizeai/components",
+ use: "@phoenix/components/button",
+ },
+ ],
},
settings: {
react: {
diff --git a/app/global-setup.ts b/app/global-setup.ts
index 92a4705391..7b4f779e86 100644
--- a/app/global-setup.ts
+++ b/app/global-setup.ts
@@ -7,7 +7,7 @@ async function globalSetup(config: FullConfig) {
page.goto(`${baseURL}/login`);
await page.getByLabel("Email").fill("admin@localhost");
await page.getByLabel("Password").fill("admin");
- await page.getByRole("button", { name: "Login", exact: true }).click();
+ await page.getByRole("button", { name: "Log In", exact: true }).click();
// Reset admin password
await page.waitForURL("**/reset-password");
@@ -15,12 +15,11 @@ async function globalSetup(config: FullConfig) {
await page.getByLabel("New Password").fill("admin123");
await page.getByLabel("Confirm Password").fill("admin123");
await page.getByRole("button", { name: "Reset Password" }).click();
-
await page.goto(`${baseURL}/login`);
await page.getByLabel("Email").fill("admin@localhost");
await page.getByLabel("Password").fill("admin123");
- await page.getByRole("button", { name: "Login", exact: true }).click();
+ await page.getByRole("button", { name: "Log In", exact: true }).click();
await page.waitForURL("**/projects");
await page.goto(`${baseURL}/settings`);
await page.waitForURL("**/settings");
@@ -46,7 +45,7 @@ async function globalSetup(config: FullConfig) {
page.goto(`${baseURL}/login`);
await page.getByLabel("Email").fill("member@localhost.com");
await page.getByLabel("Password").fill("member");
- await page.getByRole("button", { name: "Login", exact: true }).click();
+ await page.getByRole("button", { name: "Log In", exact: true }).click();
// Reset member password
await page.waitForURL("**/reset-password");
diff --git a/app/package.json b/app/package.json
index fa7af4e0d4..078a743fdf 100644
--- a/app/package.json
+++ b/app/package.json
@@ -92,6 +92,7 @@
"chromatic": "^11.20.0",
"cpy-cli": "^5.0.0",
"eslint": "^8.57.0",
+ "eslint-plugin-deprecate": "^0.8.5",
"eslint-plugin-react": "^7.34.4",
"eslint-plugin-react-compiler": "0.0.0-experimental-42acc6a-20241001",
"eslint-plugin-react-hooks": "^4.6.2",
diff --git a/app/pnpm-lock.yaml b/app/pnpm-lock.yaml
index 47e5b6f2bf..5d5556058e 100644
--- a/app/pnpm-lock.yaml
+++ b/app/pnpm-lock.yaml
@@ -264,6 +264,9 @@ importers:
eslint:
specifier: ^8.57.0
version: 8.57.0
+ eslint-plugin-deprecate:
+ specifier: ^0.8.5
+ version: 0.8.5(eslint@8.57.0)
eslint-plugin-react:
specifier: ^7.34.4
version: 7.34.4(eslint@8.57.0)
@@ -3055,6 +3058,11 @@ packages:
peerDependencies:
eslint: '>=7.0.0'
+ eslint-plugin-deprecate@0.8.5:
+ resolution: {integrity: sha512-nBH14smi2O1qsQY/deVf1xg1XPMB5ADPPcXWpUDp5ptGrWuNGD7Ghe0mIQKmsoFr6VjjDxJZ5tt78hb5GaCScA==}
+ peerDependencies:
+ eslint: '>=2.x'
+
eslint-plugin-react-compiler@0.0.0-experimental-42acc6a-20241001:
resolution: {integrity: sha512-pzkTsWowlHK4yKHsK1d9tTKOUtApZzL7wI6jT5iN31d00DhI9JGDD0pkLohQ6Wfkll+2aiqTPGj9esJoGYmRaw==}
engines: {node: ^14.17.0 || ^16.0.0 || >= 18.0.0}
@@ -8851,6 +8859,10 @@ snapshots:
dependencies:
eslint: 8.57.0
+ eslint-plugin-deprecate@0.8.5(eslint@8.57.0):
+ dependencies:
+ eslint: 8.57.0
+
eslint-plugin-react-compiler@0.0.0-experimental-42acc6a-20241001(eslint@8.57.0):
dependencies:
'@babel/core': 7.24.9
diff --git a/app/src/components/ConfirmNavigation.tsx b/app/src/components/ConfirmNavigation.tsx
index 73e7a85405..1cdfaff679 100644
--- a/app/src/components/ConfirmNavigation.tsx
+++ b/app/src/components/ConfirmNavigation.tsx
@@ -1,30 +1,21 @@
import React, { ReactNode } from "react";
import { Blocker } from "react-router";
-import {
- Button,
- Dialog,
- DialogContainer,
- Flex,
- Text,
- View,
-} from "@arizeai/components";
+import { Dialog, DialogContainer, Flex, Text, View } from "@arizeai/components";
+
+import { Button } from "@phoenix/components";
function ConfirmNavigationDialogFooter({ blocker }: { blocker: Blocker }) {
return (