diff --git a/apps/common-library/.gitignore b/apps/common-library/.gitignore
deleted file mode 100644
index a547bf36d..000000000
--- a/apps/common-library/.gitignore
+++ /dev/null
@@ -1,24 +0,0 @@
-# Logs
-logs
-*.log
-npm-debug.log*
-yarn-debug.log*
-yarn-error.log*
-pnpm-debug.log*
-lerna-debug.log*
-
-node_modules
-dist
-dist-ssr
-*.local
-
-# Editor directories and files
-.vscode/*
-!.vscode/extensions.json
-.idea
-.DS_Store
-*.suo
-*.ntvs*
-*.njsproj
-*.sln
-*.sw?
diff --git a/apps/common-library/README.md b/apps/common-library/README.md
deleted file mode 100644
index 74872fd4a..000000000
--- a/apps/common-library/README.md
+++ /dev/null
@@ -1,50 +0,0 @@
-# React + TypeScript + Vite
-
-This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.
-
-Currently, two official plugins are available:
-
-- [@vitejs/plugin-react](https://github.com/vitejs/vite-plugin-react/blob/main/packages/plugin-react/README.md) uses [Babel](https://babeljs.io/) for Fast Refresh
-- [@vitejs/plugin-react-swc](https://github.com/vitejs/vite-plugin-react-swc) uses [SWC](https://swc.rs/) for Fast Refresh
-
-## Expanding the ESLint configuration
-
-If you are developing a production application, we recommend updating the configuration to enable type aware lint rules:
-
-- Configure the top-level `parserOptions` property like this:
-
-```js
-export default tseslint.config({
- languageOptions: {
- // other options...
- parserOptions: {
- project: ['./tsconfig.node.json', './tsconfig.app.json'],
- tsconfigRootDir: import.meta.dirname,
- },
- },
-})
-```
-
-- Replace `tseslint.configs.recommended` to `tseslint.configs.recommendedTypeChecked` or `tseslint.configs.strictTypeChecked`
-- Optionally add `...tseslint.configs.stylisticTypeChecked`
-- Install [eslint-plugin-react](https://github.com/jsx-eslint/eslint-plugin-react) and update the config:
-
-```js
-// eslint.config.js
-import react from 'eslint-plugin-react'
-
-export default tseslint.config({
- // Set the react version
- settings: { react: { version: '18.3' } },
- plugins: {
- // Add the react plugin
- react,
- },
- rules: {
- // other rules...
- // Enable its recommended rules
- ...react.configs.recommended.rules,
- ...react.configs['jsx-runtime'].rules,
- },
-})
-```
diff --git a/apps/common-library/eslint.config.js b/apps/common-library/eslint.config.js
deleted file mode 100644
index 092408a9f..000000000
--- a/apps/common-library/eslint.config.js
+++ /dev/null
@@ -1,28 +0,0 @@
-import js from '@eslint/js'
-import globals from 'globals'
-import reactHooks from 'eslint-plugin-react-hooks'
-import reactRefresh from 'eslint-plugin-react-refresh'
-import tseslint from 'typescript-eslint'
-
-export default tseslint.config(
- { ignores: ['dist'] },
- {
- extends: [js.configs.recommended, ...tseslint.configs.recommended],
- files: ['**/*.{ts,tsx}'],
- languageOptions: {
- ecmaVersion: 2020,
- globals: globals.browser,
- },
- plugins: {
- 'react-hooks': reactHooks,
- 'react-refresh': reactRefresh,
- },
- rules: {
- ...reactHooks.configs.recommended.rules,
- 'react-refresh/only-export-components': [
- 'warn',
- { allowConstantExport: true },
- ],
- },
- },
-)
diff --git a/apps/common-library/index.html b/apps/common-library/index.html
deleted file mode 100644
index e4b78eae1..000000000
--- a/apps/common-library/index.html
+++ /dev/null
@@ -1,13 +0,0 @@
-
-
-
-
-
-
- Vite + React + TS
-
-
-
-
-
-
diff --git a/apps/common-library/package.json b/apps/common-library/package.json
deleted file mode 100644
index 7f1d71c41..000000000
--- a/apps/common-library/package.json
+++ /dev/null
@@ -1,41 +0,0 @@
-{
- "name": "@xlabs/common-library",
- "private": true,
- "version": "0.0.0",
- "type": "module",
- "main": "src/index.ts",
- "module": "src/index.ts",
- "exports": {
- ".": {
- "import": "./src/index.ts"
- }
- },
- "scripts": {
- "dev": "vite",
- "build": "tsc -b && vite build",
- "lint": "eslint .",
- "preview": "vite preview"
- },
- "dependencies": {
- "@mui/icons-material": "^5.16.7",
- "@mui/material": "^5.16.7",
- "react": "^18.3.1",
- "react-dom": "^18.3.1",
- "react-router-dom": "^6.26.2",
- "vite-plugin-dts": "^4.2.1",
- "vite-tsconfig-paths": "^5.0.1"
- },
- "devDependencies": {
- "@eslint/js": "^9.9.0",
- "@types/react": "^18.3.3",
- "@types/react-dom": "^18.3.0",
- "@vitejs/plugin-react": "^4.3.1",
- "eslint": "^9.9.0",
- "eslint-plugin-react-hooks": "^5.1.0-rc.0",
- "eslint-plugin-react-refresh": "^0.4.9",
- "globals": "^15.9.0",
- "typescript": "^5.5.3",
- "typescript-eslint": "^8.0.1",
- "vite": "^5.4.1"
- }
-}
diff --git a/apps/common-library/public/vite.svg b/apps/common-library/public/vite.svg
deleted file mode 100644
index e7b8dfb1b..000000000
--- a/apps/common-library/public/vite.svg
+++ /dev/null
@@ -1 +0,0 @@
-
\ No newline at end of file
diff --git a/apps/common-library/src/App.css b/apps/common-library/src/App.css
deleted file mode 100644
index b9d355df2..000000000
--- a/apps/common-library/src/App.css
+++ /dev/null
@@ -1,42 +0,0 @@
-#root {
- max-width: 1280px;
- margin: 0 auto;
- padding: 2rem;
- text-align: center;
-}
-
-.logo {
- height: 6em;
- padding: 1.5em;
- will-change: filter;
- transition: filter 300ms;
-}
-.logo:hover {
- filter: drop-shadow(0 0 2em #646cffaa);
-}
-.logo.react:hover {
- filter: drop-shadow(0 0 2em #61dafbaa);
-}
-
-@keyframes logo-spin {
- from {
- transform: rotate(0deg);
- }
- to {
- transform: rotate(360deg);
- }
-}
-
-@media (prefers-reduced-motion: no-preference) {
- a:nth-of-type(2) .logo {
- animation: logo-spin infinite 20s linear;
- }
-}
-
-.card {
- padding: 2em;
-}
-
-.read-the-docs {
- color: #888;
-}
diff --git a/apps/common-library/src/App.tsx b/apps/common-library/src/App.tsx
deleted file mode 100644
index afe48ac75..000000000
--- a/apps/common-library/src/App.tsx
+++ /dev/null
@@ -1,35 +0,0 @@
-import { useState } from 'react'
-import reactLogo from './assets/react.svg'
-import viteLogo from '/vite.svg'
-import './App.css'
-
-function App() {
- const [count, setCount] = useState(0)
-
- return (
- <>
-
- Vite + React
-
-
-
- Edit src/App.tsx
and save to test HMR
-
-
-
- Click on the Vite and React logos to learn more
-
- >
- )
-}
-
-export default App
diff --git a/apps/common-library/src/assets/fonts/SuisseBPIntlBold.woff2 b/apps/common-library/src/assets/fonts/SuisseBPIntlBold.woff2
deleted file mode 100644
index cad727171..000000000
Binary files a/apps/common-library/src/assets/fonts/SuisseBPIntlBold.woff2 and /dev/null differ
diff --git a/apps/common-library/src/assets/imgs/arrow.svg b/apps/common-library/src/assets/imgs/arrow.svg
deleted file mode 100644
index b7d03bcfe..000000000
--- a/apps/common-library/src/assets/imgs/arrow.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
diff --git a/apps/common-library/src/assets/imgs/bg.svg b/apps/common-library/src/assets/imgs/bg.svg
deleted file mode 100644
index c84dc8b09..000000000
--- a/apps/common-library/src/assets/imgs/bg.svg
+++ /dev/null
@@ -1,28 +0,0 @@
-
diff --git a/apps/common-library/src/assets/imgs/cookie.svg b/apps/common-library/src/assets/imgs/cookie.svg
deleted file mode 100644
index 89cc0bf80..000000000
--- a/apps/common-library/src/assets/imgs/cookie.svg
+++ /dev/null
@@ -1,9 +0,0 @@
-
diff --git a/apps/common-library/src/assets/imgs/logo-white.svg b/apps/common-library/src/assets/imgs/logo-white.svg
deleted file mode 100644
index 13136daaa..000000000
--- a/apps/common-library/src/assets/imgs/logo-white.svg
+++ /dev/null
@@ -1,18 +0,0 @@
-
diff --git a/apps/common-library/src/assets/react.svg b/apps/common-library/src/assets/react.svg
deleted file mode 100644
index 6c87de9bb..000000000
--- a/apps/common-library/src/assets/react.svg
+++ /dev/null
@@ -1 +0,0 @@
-
\ No newline at end of file
diff --git a/apps/common-library/src/components/atoms/Banner.tsx b/apps/common-library/src/components/atoms/Banner.tsx
deleted file mode 100644
index 21c20cfc4..000000000
--- a/apps/common-library/src/components/atoms/Banner.tsx
+++ /dev/null
@@ -1,94 +0,0 @@
-import { Button, styled } from "@mui/material";
-import { useState } from "react";
-import { PrivacyPolicyPath } from "../../utils/constants";
-import cookie from "../../assets/imgs/cookie.svg";
-import { Link } from "../../utils/styles";
-import { Link as RouterLink } from "react-router-dom";
-import { FONT_SIZE } from "../../theme/portal";
-
-const BannerContainer = styled("div")(({ theme }) => ({
- display: "flex",
- justifyContent: "center",
- alignItems: "center",
- position: "fixed",
- bottom: 60,
- left: 30,
- right: 30,
- zIndex: 10,
- [theme.breakpoints.down("sm")]: {
- bottom: 75,
- },
-}));
-
-const Content = styled("div")(({ theme }) => ({
- display: "flex",
- justifyContent: "center",
- alignItems: "center",
- position: "fixed",
- padding: 10,
- backgroundColor: "#FFFFFF14",
- gap: 20,
- borderRadius: 12,
- margin: 26,
- mixBlendMode: "normal",
- backdropFilter: "blur(60px)",
- [theme.breakpoints.down("sm")]: {
- margin: 5,
- borderRadius: 0,
- },
-}));
-
-const CloseButton = styled(Button)(() => ({
- color: "#070528",
- backgroundColor: "white",
- borderRadius: 6,
- fontSize: FONT_SIZE.M,
- maxHeight: 28,
- minWidth: 67,
- textTransform: "capitalize",
- "&:hover": {
- color: "white",
- },
-}));
-export const Banner = () => {
- const [showBanner, setShowBanner] = useState(true);
-
- const isNewOrExpired = () => {
- const cache = localStorage.getItem("showPrivacyPolicy");
- const expirationDate =
- new Date(Number(cache)).getTime() + 7 * 24 * 60 * 60 * 1000;
- const today = new Date().getTime();
- if (!cache || expirationDate < today) {
- return true;
- }
- return false;
- };
- const handleClose = () => {
- setShowBanner(false);
- if (isNewOrExpired()) {
- const today = new Date();
- localStorage.setItem("showPrivacyPolicy", today.getTime().toString());
- }
- };
-
- if (!isNewOrExpired() || !showBanner) {
- return null;
- }
- return (
-
-
-
-
- This website is designed to enhance your experience. By continuing to
- use this site, you consent to our{" "}
-
- Privacy Policy
-
-
- handleClose()}>
- Close
-
-
-
- );
-};
diff --git a/apps/common-library/src/components/atoms/Bar.tsx b/apps/common-library/src/components/atoms/Bar.tsx
deleted file mode 100644
index 41a2d00ea..000000000
--- a/apps/common-library/src/components/atoms/Bar.tsx
+++ /dev/null
@@ -1,41 +0,0 @@
-import styled from "@mui/material/styles/styled";
-import { FONT_SIZE } from "../../theme/portal";
-import { PropsWithChildren } from "react";
-
-export type BarProps = PropsWithChildren<{
- background: string;
- color?: string;
- size?: string;
-}>;
-
-const Container = styled("div")(
- ({ theme, background, color, size }) => ({
- display: "flex",
- alignItems: "center",
- justifyContent: "center",
- width: "100%",
- height: "56px",
- [theme.breakpoints.down("md")]: {
- height: "auto",
- flexDirection: "column",
- padding: theme.spacing(1),
- paddingTop: theme.spacing(2),
- paddingBottom: theme.spacing(2),
- },
- textAlign: "center",
- fontWeight: 500,
- color: color || theme.palette.text.primary,
- fontSize: size || FONT_SIZE.M,
- letterSpacing: "0.02em",
- background,
- marginBottom: theme.spacing(0.5),
- })
-);
-
-export default function Bar({ background, color, size, children }: BarProps) {
- return (
-
- {children}
-
- );
-}
diff --git a/apps/common-library/src/components/atoms/Connect.tsx b/apps/common-library/src/components/atoms/Connect.tsx
deleted file mode 100644
index 2536dbb56..000000000
--- a/apps/common-library/src/components/atoms/Connect.tsx
+++ /dev/null
@@ -1,9 +0,0 @@
-import { styled } from "@mui/material";
-import { NAVBAR_WIDTH } from "./NavBar";
-
-export const Container = styled("div")(({ theme }) => ({
- paddingRight: `${NAVBAR_WIDTH}px`,
- [theme.breakpoints.down("md")]: {
- paddingRight: 0,
- },
-}));
diff --git a/apps/common-library/src/components/atoms/Container.tsx b/apps/common-library/src/components/atoms/Container.tsx
deleted file mode 100644
index 0e2efac34..000000000
--- a/apps/common-library/src/components/atoms/Container.tsx
+++ /dev/null
@@ -1,20 +0,0 @@
-import { styled } from "@mui/system";
-
-export const Wrapper = styled("div")(({ theme }) => ({
- margin: "auto",
- width: "100%",
- maxWidth: 1440,
- minHeight: "100vh",
- display: "flex",
- flexDirection: "column",
- justifyContent: "space-between",
- padding: `${theme.spacing(3)} `,
- }));
-
-export const Main = styled("main")(({ theme }) => ({
- display: "grid",
- gridTemplateColumns: "auto 1fr",
- [theme.breakpoints.down("sm")]: {
- gridTemplateColumns: "1fr",
- },
- }));
\ No newline at end of file
diff --git a/apps/common-library/src/components/atoms/Footer.tsx b/apps/common-library/src/components/atoms/Footer.tsx
deleted file mode 100644
index c70696fa2..000000000
--- a/apps/common-library/src/components/atoms/Footer.tsx
+++ /dev/null
@@ -1,39 +0,0 @@
-import { styled } from "@mui/material";
-
-import { Link } from "./Link";
-
-const LinkContainer = styled("footer")(({ theme }) => ({
- display: "flex",
- flexDirection: "column",
- alignItems: "flex-start",
- gap: theme.spacing(1),
-}));
-
-interface FooterProps {
- publicUrl: string;
-}
-
-export const Footer = ({ publicUrl }: FooterProps) => {
- return (
-
- {[
- {
- label: "Advanced Tools",
- href: `${publicUrl}/advanced-tools/`,
- },
- {
- label: "Privacy Policy",
- href: `${publicUrl}/#/privacy-policy/`,
- },
- {
- label: "Copyright © Wormhole 2024",
- href: undefined,
- },
- ].map(({ label, href }) => (
-
- {label}
-
- ))}
-
- );
-};
diff --git a/apps/common-library/src/components/atoms/Link.tsx b/apps/common-library/src/components/atoms/Link.tsx
deleted file mode 100644
index aad29ceff..000000000
--- a/apps/common-library/src/components/atoms/Link.tsx
+++ /dev/null
@@ -1,19 +0,0 @@
-import styled from "@mui/material/styles/styled";
-import MuiLink from "@mui/material/Link";
-
-import { COLOR, FONT_SIZE } from "../../theme/portal";
-
-export const Link = styled(MuiLink)(({ theme }) => ({
- ...theme.typography.body2,
- fontSize: FONT_SIZE.S,
- fontWeight: 400,
- fontFamily: '"Poppins", regular',
- color: COLOR.whiteWithTransparency,
- [theme.breakpoints.down("sm")]: {
- fontSize: "0.9rem",
- },
- transition: "color 0.3s",
- ":hover": {
- color: COLOR.white,
- },
-}));
diff --git a/apps/common-library/src/components/atoms/Logo.tsx b/apps/common-library/src/components/atoms/Logo.tsx
deleted file mode 100644
index bfd243d03..000000000
--- a/apps/common-library/src/components/atoms/Logo.tsx
+++ /dev/null
@@ -1,73 +0,0 @@
-export const Logo = () => (
-
-);
diff --git a/apps/common-library/src/components/atoms/NavBar.tsx b/apps/common-library/src/components/atoms/NavBar.tsx
deleted file mode 100644
index bf84d6fa3..000000000
--- a/apps/common-library/src/components/atoms/NavBar.tsx
+++ /dev/null
@@ -1,95 +0,0 @@
-import { useState } from "react";
-import MuiAppBar from "@mui/material/AppBar";
-import Hidden from "@mui/material/Hidden";
-import MuiLink from "@mui/material/Link";
-import styled from "@mui/material/styles/styled";
-import MenuIcon from "@mui/icons-material/Menu";
-
-import { Logo } from "./Logo";
-import { COLOR } from "../../theme/portal";
-import { Link } from "./Link";
-import { NavBarType } from "../../utils/constants";
-
-export const NAVBAR_WIDTH = 110;
-
-const AppBar = styled(MuiAppBar)(() => ({
- background: "transparent",
- boxShadow: "none",
- margin: 0,
-}));
-
-const Nav = styled("div")(({ theme }) => ({
- display: "flex",
- flexDirection: "column",
- gap: theme.spacing(5),
- [theme.breakpoints.down("sm")]: {
- flexDirection: "column",
- },
-}));
-
-const LogoContainer = styled("div")(() => ({
- display: "flex",
- justifyContent: "space-between",
- alignItems: "flex-start",
-}));
-
-const LinkContainer = styled("div")(({ theme }) => ({
- display: "flex",
- flexDirection: "column",
- gap: theme.spacing(2),
- [theme.breakpoints.down("sm")]: {
- flexDirection: "column",
- alignItems: "flex-end",
- marginTop: theme.spacing(2),
- },
-}));
-
-interface NavBarProps {
- baseUrl?: string;
- navBar: NavBarType[];
- env: "testnet" | "mainnet" | "devnet";
-}
-
-export const NavBar = ({ baseUrl, navBar, env }: NavBarProps) => {
- const [openMenu, setOpenMenu] = useState(false);
-
- return (
-
-
-
- );
-};
diff --git a/apps/common-library/src/components/atoms/NewsBar.tsx b/apps/common-library/src/components/atoms/NewsBar.tsx
deleted file mode 100644
index 977470355..000000000
--- a/apps/common-library/src/components/atoms/NewsBar.tsx
+++ /dev/null
@@ -1,32 +0,0 @@
-import { NewsBarButton } from "./NewsBarButton";
-import Bar from "./Bar";
-import { Banner, Message } from "../../utils/constants";
-
-export type NewsBarProps = {
- message?: Message;
- banners?: Banner[];
-};
-
-export const NewsBar = ({ message, banners }: NewsBarProps) => {
-
- return (
- <>
- {!!message && (
-
- {message.content}
- {!!message.button && }
-
- )}
- {banners?.map((banner) => (
-
- {banner.content.text}
- {!!banner.button && }
-
- ))}
- >
- );
-}
diff --git a/apps/common-library/src/components/atoms/NewsBarButton.tsx b/apps/common-library/src/components/atoms/NewsBarButton.tsx
deleted file mode 100644
index 89d05842e..000000000
--- a/apps/common-library/src/components/atoms/NewsBarButton.tsx
+++ /dev/null
@@ -1,42 +0,0 @@
-import MuiLink from "@mui/material/Link";
-import styled from "@mui/material/styles/styled";
-import { FONT_SIZE } from "../../theme/portal";
-import { Message } from "../../utils/constants";
-
-const Link = styled(MuiLink)<{ backgroundColor: string }>(
- ({ theme, backgroundColor }) => ({
- [theme.breakpoints.down("md")]: {
- marginLeft: "0px",
- marginTop: theme.spacing(1),
- },
- display: "inline-flex",
- alignItems: "center",
- borderRadius: 20,
- padding: "6px 12px",
- backgroundColor: "white",
- color: backgroundColor,
- marginLeft: "8px",
- fontSize: FONT_SIZE.XS,
- letterSpacing: "0.08em",
- fontWeight: 600,
- minHeight: "32px",
- minWidth: "fit-content",
- fontFamily: "Poppins",
- wordWrap: "break-word",
- })
-);
-export const NewsBarButton = ({ button }: Pick) => {
- return (
- button && (
-
- {button.label || "TRY IT NOW"}
-
- )
- );
-}
diff --git a/apps/common-library/src/components/index.ts b/apps/common-library/src/components/index.ts
deleted file mode 100644
index 96bcd7bba..000000000
--- a/apps/common-library/src/components/index.ts
+++ /dev/null
@@ -1,10 +0,0 @@
-export * from "./atoms/Banner";
-export * from "./atoms/Bar";
-export * from "./atoms/Connect";
-export * from "./atoms/Container";
-export * from "./atoms/Footer";
-export * from "./atoms/Link";
-export * from "./atoms/Logo";
-export * from "./atoms/NavBar";
-export * from "./atoms/NewsBar";
-export * from "./atoms/NewsBarButton";
\ No newline at end of file
diff --git a/apps/common-library/src/configs/messages.tsx b/apps/common-library/src/configs/messages.tsx
deleted file mode 100644
index 44adc4a74..000000000
--- a/apps/common-library/src/configs/messages.tsx
+++ /dev/null
@@ -1,152 +0,0 @@
-import { Link } from "@mui/material";
-import Typography from "@mui/material/Typography";
-
-import { FONT_SIZE } from "../theme/portal";
-
-export type Message = {
- background: string;
- button?: {
- href: string;
- label?: string;
- background: string;
- };
- content: JSX.Element;
- start: Date;
- ends?: Date;
-};
-
-export const messages: Record = {
- eth: {
- background:
- "linear-gradient(90deg, rgba(6, 132, 249, 0.74) 1.32%, rgba(6, 132, 249, 0.00) 108.28%);",
- content: (
- <>
-
- Native ETH transfers now live across Eth, Arb, Base, OP, Polygon, BNB,
- and Avax.{" "}
-
- Read more here
-
-
- or get started below. Want to integrate into your own Dapps?{" "}
-
- Find out more here
-
- .
-
- >
- ),
- start: new Date("2024-01-17T10:00:00-05:00"), // any date in the past would be fine
- ends: new Date("2024-06-20T10:00:00-05:00"),
- },
- cctp: {
- background: "linear-gradient(20deg, #f44b1b 0%, #eeb430 100%);",
- button: {
- href: `${import.meta.env.PUBLIC_URL}/usdc-bridge`,
- label: "TRY IT NOW",
- background: "#F47B48",
- },
- content: (
- <>
- Experience frictionless USDC transfers between Ethereum, Avalanche,
- Optimism, Base and Arbitrum with Circle's CCTP.
- >
- ),
- start: new Date(2023, 9, 26),
- ends: new Date(2023, 10, 6),
- },
- wormholescan: {
- background:
- "linear-gradient(86deg, #FF2A57 0%, #FF2A57 28.96%, #0F0C48 100%);",
- button: {
- href: "https://wormholescan.io/",
- label: "VIEW WORMHOLESCAN.IO",
- background: "#17153F",
- },
- content: (
- <>
-
- Introducing Wormholescan:
-
-
- A cross-chain block explorer
-
- >
- ),
- start: new Date(2023, 9, 20), // any date in the past would be fine
- ends: new Date(2023, 9, 20), // any date in the past would be fine
- },
- solana: {
- background: "yellow;",
- content: (
- <>
-
- There are currently delays in relaying to Solana. Please use manual
- relaying if you need your transfer completed quickly.
-
- >
- ),
- start: new Date(2023, 11, 17), // any date in the past would be fine
- ends: new Date(2023, 11, 18), // any date in the past would be fine
- },
-};
-
-export default messages;
diff --git a/apps/common-library/src/index.css b/apps/common-library/src/index.css
deleted file mode 100644
index 6119ad9a8..000000000
--- a/apps/common-library/src/index.css
+++ /dev/null
@@ -1,68 +0,0 @@
-:root {
- font-family: Inter, system-ui, Avenir, Helvetica, Arial, sans-serif;
- line-height: 1.5;
- font-weight: 400;
-
- color-scheme: light dark;
- color: rgba(255, 255, 255, 0.87);
- background-color: #242424;
-
- font-synthesis: none;
- text-rendering: optimizeLegibility;
- -webkit-font-smoothing: antialiased;
- -moz-osx-font-smoothing: grayscale;
-}
-
-a {
- font-weight: 500;
- color: #646cff;
- text-decoration: inherit;
-}
-a:hover {
- color: #535bf2;
-}
-
-body {
- margin: 0;
- display: flex;
- place-items: center;
- min-width: 320px;
- min-height: 100vh;
-}
-
-h1 {
- font-size: 3.2em;
- line-height: 1.1;
-}
-
-button {
- border-radius: 8px;
- border: 1px solid transparent;
- padding: 0.6em 1.2em;
- font-size: 1em;
- font-weight: 500;
- font-family: inherit;
- background-color: #1a1a1a;
- cursor: pointer;
- transition: border-color 0.25s;
-}
-button:hover {
- border-color: #646cff;
-}
-button:focus,
-button:focus-visible {
- outline: 4px auto -webkit-focus-ring-color;
-}
-
-@media (prefers-color-scheme: light) {
- :root {
- color: #213547;
- background-color: #ffffff;
- }
- a:hover {
- color: #747bff;
- }
- button {
- background-color: #f9f9f9;
- }
-}
diff --git a/apps/common-library/src/index.ts b/apps/common-library/src/index.ts
deleted file mode 100644
index c72b3f270..000000000
--- a/apps/common-library/src/index.ts
+++ /dev/null
@@ -1,3 +0,0 @@
-export * from "./components";
-export * from "./theme";
-export * from "./configs/messages";
\ No newline at end of file
diff --git a/apps/common-library/src/main.tsx b/apps/common-library/src/main.tsx
deleted file mode 100644
index 6f4ac9bcc..000000000
--- a/apps/common-library/src/main.tsx
+++ /dev/null
@@ -1,10 +0,0 @@
-import { StrictMode } from 'react'
-import { createRoot } from 'react-dom/client'
-import App from './App.tsx'
-import './index.css'
-
-createRoot(document.getElementById('root')!).render(
-
-
- ,
-)
diff --git a/apps/common-library/src/theme/connect-v1.ts b/apps/common-library/src/theme/connect-v1.ts
deleted file mode 100644
index 7f21d3736..000000000
--- a/apps/common-library/src/theme/connect-v1.ts
+++ /dev/null
@@ -1,137 +0,0 @@
-export const themeConnectV1 = {
- mode: "dark",
- primary: {
- 50: "#fafafa",
- 100: "#f5f5f5",
- 200: "#eeeeee",
- 300: "#e0e0e0",
- 400: "#bdbdbd",
- 500: "#9e9e9e",
- 600: "#757575",
- 700: "#616161",
- 800: "#424242",
- 900: "#212121",
- A100: "#f5f5f5",
- A200: "#eeeeee",
- A400: "#bdbdbd",
- A700: "#616161",
- },
- secondary: {
- 50: "#fafafa",
- 100: "#f5f5f5",
- 200: "#eeeeee",
- 300: "#e0e0e0",
- 400: "#bdbdbd",
- 500: "#9e9e9e",
- 600: "#757575",
- 700: "#616161",
- 800: "#424242",
- 900: "#212121",
- A100: "#f5f5f5",
- A200: "#eeeeee",
- A400: "#bdbdbd",
- A700: "#616161",
- },
- divider: "#ffffff33",
- background: {
- default: "rgba(12, 9, 60, 0)",
- },
- text: {
- primary: "rgba(255, 255, 255, 0.9)",
- secondary: "rgba(255, 255, 255, 0.8)",
- },
- error: {
- 50: "#ffebee",
- 100: "#ffcdd2",
- 200: "#ef9a9a",
- 300: "#e57373",
- 400: "#ef5350",
- 500: "#f44336",
- 600: "#e53935",
- 700: "#d32f2f",
- 800: "#c62828",
- 900: "#b71c1c",
- A100: "#ff8a80",
- A200: "#ff5252",
- A400: "#ff1744",
- A700: "#d50000",
- },
- info: {
- 50: "#97a5b7",
- 100: "#8293a9",
- 200: "#6e819a",
- 300: "#596f8c",
- 400: "#445d7e",
- 500: "#304C70",
- 600: "#2b4464",
- 700: "#263c59",
- 800: "#21354e",
- 900: "#1c2d43",
- A100: "#304C70",
- A200: "#304C70",
- A400: "#304C70",
- A700: "#304C70",
- },
- success: {
- 50: "#66d6cd",
- 100: "#4dcfc4",
- 200: "#33c8bc",
- 300: "#1ac1b4",
- 400: "#01BBAC",
- 500: "#00a89a",
- 600: "#009589",
- 700: "#008278",
- 800: "#007067",
- 900: "#005d56",
- A100: "#00a89a",
- A200: "#00a89a",
- A400: "#00a89a",
- A700: "#00a89a",
- },
- warning: {
- 50: "#ffe3a4",
- 100: "#ffdd91",
- 200: "#ffd77f",
- 300: "#ffd26d",
- 400: "#ffcc5b",
- 500: "#FFC749",
- 600: "#e5b341",
- 700: "#cc9f3a",
- 800: "#b28b33",
- 900: "#99772b",
- A100: "#FFC749",
- A200: "#FFC749",
- A400: "#FFC749",
- A700: "#FFC749",
- },
- button: {
- primary: "rgba(31, 31, 31, 1)",
- primaryText: "#ffffff",
- disabled: "#ffffff0F",
- disabledText: "#ffffff66",
- action: "#e47829",
- actionText: "#ffffff",
- hover: "#ffffff0F",
- },
- options: {
- hover: "#ffffff0F",
- select: "#ffffff19",
- },
- card: {
- background: "#121212",
- secondary: "#ffffff0C",
- elevation: "none",
- },
- popover: {
- background: "#1b2033",
- secondary: "#ffffff0C",
- elevation: "none",
- },
- modal: {
- background: "#121212",
- },
- font: {
- primary: '"Poppins", regular',
- header: '"Poppins", bold',
- },
-};
diff --git a/apps/common-library/src/theme/connect.ts b/apps/common-library/src/theme/connect.ts
deleted file mode 100644
index d308a1173..000000000
--- a/apps/common-library/src/theme/connect.ts
+++ /dev/null
@@ -1,137 +0,0 @@
-export const theme = {
- mode: "dark",
- primary: {
- 50: "#fafafa",
- 100: "#f5f5f5",
- 200: "#eeeeee",
- 300: "#e0e0e0",
- 400: "#bdbdbd",
- 500: "#9e9e9e",
- 600: "#757575",
- 700: "#616161",
- 800: "#424242",
- 900: "#212121",
- A100: "#f5f5f5",
- A200: "#eeeeee",
- A400: "#bdbdbd",
- A700: "#616161",
- },
- secondary: {
- 50: "#fafafa",
- 100: "#f5f5f5",
- 200: "#eeeeee",
- 300: "#e0e0e0",
- 400: "#bdbdbd",
- 500: "#9e9e9e",
- 600: "#757575",
- 700: "#616161",
- 800: "#424242",
- 900: "#212121",
- A100: "#f5f5f5",
- A200: "#eeeeee",
- A400: "#bdbdbd",
- A700: "#616161",
- },
- divider: "#ffffff33",
- background: {
- default: "rgba(12, 9, 60, 0)",
- },
- text: {
- primary: "#ffffff",
- secondary: "#ffffff",
- },
- error: {
- 50: "#ffebee",
- 100: "#ffcdd2",
- 200: "#ef9a9a",
- 300: "#e57373",
- 400: "#ef5350",
- 500: "#f44336",
- 600: "#e53935",
- 700: "#d32f2f",
- 800: "#c62828",
- 900: "#b71c1c",
- A100: "#ff8a80",
- A200: "#ff5252",
- A400: "#ff1744",
- A700: "#d50000",
- },
- info: {
- 50: "#97a5b7",
- 100: "#8293a9",
- 200: "#6e819a",
- 300: "#596f8c",
- 400: "#445d7e",
- 500: "#304C70",
- 600: "#2b4464",
- 700: "#263c59",
- 800: "#21354e",
- 900: "#1c2d43",
- A100: "#304C70",
- A200: "#304C70",
- A400: "#304C70",
- A700: "#304C70",
- },
- success: {
- 50: "#66d6cd",
- 100: "#4dcfc4",
- 200: "#33c8bc",
- 300: "#1ac1b4",
- 400: "#01BBAC",
- 500: "#00a89a",
- 600: "#009589",
- 700: "#008278",
- 800: "#007067",
- 900: "#005d56",
- A100: "#00a89a",
- A200: "#00a89a",
- A400: "#00a89a",
- A700: "#00a89a",
- },
- warning: {
- 50: "#ffe3a4",
- 100: "#ffdd91",
- 200: "#ffd77f",
- 300: "#ffd26d",
- 400: "#ffcc5b",
- 500: "#FFC749",
- 600: "#e5b341",
- 700: "#cc9f3a",
- 800: "#b28b33",
- 900: "#99772b",
- A100: "#FFC749",
- A200: "#FFC749",
- A400: "#FFC749",
- A700: "#FFC749",
- },
- button: {
- primary: "#7ABFFF",
- primaryText: "#000000",
- disabled: "#7ABFFF7F",
- disabledText: "#000000",
- action: "#7ABFFF",
- actionText: "#000000",
- hover: "#ffffff0F",
- },
- options: {
- hover: "#ffffff0F",
- select: "#ffffff19",
- },
- card: {
- background: "rgba(31, 32, 69, 1)",
- secondary: "#ffffff0C",
- elevation: "none",
- },
- popover: {
- background: "#1b2033",
- secondary: "#ffffff0C",
- elevation: "none",
- },
- modal: {
- background: "#121212",
- },
- font: {
- primary: '"Poppins", regular',
- header: '"Poppins", bold',
- },
-};
diff --git a/apps/common-library/src/theme/globalStyles.ts b/apps/common-library/src/theme/globalStyles.ts
deleted file mode 100644
index 4a251d673..000000000
--- a/apps/common-library/src/theme/globalStyles.ts
+++ /dev/null
@@ -1,34 +0,0 @@
-import { GlobalStyles } from "@mui/material";
-import { ComponentProps } from "react";
-
-export const globalStyles: ComponentProps["styles"] = (
- theme
-) => ({
- ".MuiButton-containedPrimary": {
- backgroundColor: "#7ABFFF!important",
- borderRadius: "27px!important",
- paddingTop: "12px!important",
- paddingBottom: "12px!important",
- },
- ".MuiButton-containedPrimary p": {
- fontWeight: theme.typography.fontWeightBold,
- },
- ".MuiIconButton-root": {
- color: "#999999!important",
- },
- ".MuiPaper-root": {
- borderRadius: "16px!important",
- },
- '[class$="assetPickerContainer"] .MuiPaper-root': {
- backgroundColor: "#1F1F1F!important",
- },
- '[class$="assetPickerContainer"] .MuiCardContent-root': {
- backgroundColor: "none!important",
- },
- '[class$="amountCardContent"]': {
- padding: "16px!important",
- },
- ['[data-testid="CheckCircleOutlineIcon"]']: {
- color: "#7BFF3D",
- },
-});
diff --git a/apps/common-library/src/theme/index.ts b/apps/common-library/src/theme/index.ts
deleted file mode 100644
index 5f07e3c6c..000000000
--- a/apps/common-library/src/theme/index.ts
+++ /dev/null
@@ -1,4 +0,0 @@
-export * from "./connect";
-export * from "./connect-v1";
-export * from "./globalStyles";
-export * from "./portal";
\ No newline at end of file
diff --git a/apps/common-library/src/theme/portal.ts b/apps/common-library/src/theme/portal.ts
deleted file mode 100644
index f1ea98ff7..000000000
--- a/apps/common-library/src/theme/portal.ts
+++ /dev/null
@@ -1,197 +0,0 @@
-import createTheme from "@mui/material/styles/createTheme";
-import responsiveFontSizes from "@mui/material/styles/responsiveFontSizes";
-import font from "../assets/fonts/SuisseBPIntlBold.woff2";
-
-const suisse = {
- fontFamily: "Suisse BP Intl",
- fontStyle: "normal",
- fontDisplay: "swap",
- fontWeight: 400,
- src: `url(${font}) format('woff2')`,
-};
-
-export const FONT_SIZE = {
- XS: 12,
- S: 14,
- M: 16,
- L: 18,
- XL: 20,
- XXL: 24,
-} as const;
-
-export const COLOR = {
- blue: "#1975e6",
- blueWithTransparency: "rgba(25, 117, 230, 0.8)",
- gray: "#4e4e54",
- green: "#0ac2af",
- greenWithTransparency: "rgba(10, 194, 175, 0.8)",
- lightGreen: "rgba(51, 242, 223, 1)",
- lightBlue: "#83b9fc",
- nearBlack: "#070528",
- nearBlackWithMinorTransparency: "rgba(0,0,0,.25)",
- red: "#aa0818",
- darkRed: "#810612",
- white: "#ffffff",
- whiteWithTransparency: "#ffffffb3",
- black: "#000000",
-};
-
-export const themePortal = responsiveFontSizes(
- createTheme({
- palette: {
- mode: "dark",
- background: { default: COLOR.black, paper: COLOR.black },
- divider: COLOR.white,
- text: { primary: COLOR.white },
- primary: { main: COLOR.blueWithTransparency, light: COLOR.lightBlue },
- secondary: { main: COLOR.greenWithTransparency, light: COLOR.lightGreen },
- error: { main: COLOR.red },
- },
-
- typography: {
- fontFamily: "'Poppins', sans-serif",
- fontSize: FONT_SIZE.XS,
- h1: {
- fontFamily: "Suisse BP Intl, sans-serif",
- lineHeight: 0.9,
- letterSpacing: -2,
- fontWeight: "bold",
- },
- h2: { fontWeight: "200" },
- h4: {
- fontWeight: "600",
- fontFamily: "Suisse BP Intl, sans-serif",
- letterSpacing: -1.02,
- },
- },
- zIndex: { modal: 50 },
- components: {
- MuiCssBaseline: {
- styleOverrides: {
- "@font-face": [suisse],
- body: {
- overscrollBehaviorY: "none",
- backgroundPosition: "top center",
- backgroundRepeat: "repeat-y",
- backgroundSize: "120%",
- },
- "*": {
- scrollbarWidth: "thin",
- scrollbarColor: `${COLOR.gray} ${COLOR.nearBlackWithMinorTransparency}`,
- },
- "*::-webkit-scrollbar": {
- width: "8px",
- height: "8px",
- backgroundColor: COLOR.nearBlackWithMinorTransparency,
- },
- "*::-webkit-scrollbar-thumb": {
- backgroundColor: COLOR.gray,
- borderRadius: "4px",
- },
- "*::-webkit-scrollbar-corner": {
- /** this hides an annoying white box which appears when both scrollbars are present */ backgroundColor:
- "transparent",
- },
- },
- },
- MuiAccordion: {
- styleOverrides: {
- root: {
- backgroundColor: COLOR.whiteWithTransparency,
- "&:before": { display: "none" },
- },
- rounded: {
- "&:first-child": {
- borderTopLeftRadius: "28px",
- borderTopRightRadius: "28px",
- },
- "&:last-child": {
- borderBottomLeftRadius: "28px",
- borderBottomRightRadius: "28px",
- },
- },
- },
- },
- MuiAlert: {
- styleOverrides: { root: { borderRadius: "8px", border: "1px solid" } },
- },
- MuiButton: {
- styleOverrides: {
- root: { borderRadius: "22px", letterSpacing: ".1em" },
- outlinedSizeSmall: { padding: "6px 9px", fontSize: "0.70rem" },
- },
- },
- MuiLink: {
- styleOverrides: {
- root: { textDecoration: "none", color: COLOR.lightBlue },
- },
- },
- MuiPaper: {
- styleOverrides: {
- rounded: { borderRadius: "28px", backdropFilter: "blur(4px)" },
- },
- },
- MuiStepper: {
- styleOverrides: {
- root: { backgroundColor: "transparent", padding: 0 },
- },
- },
- MuiStep: {
- styleOverrides: {
- root: {
- backgroundColor: COLOR.whiteWithTransparency,
- backdropFilter: "blur(4px)",
- borderRadius: "28px",
- padding: "32px 32px 16px",
- },
- },
- },
- MuiStepConnector: {
- styleOverrides: { lineVertical: { borderLeftWidth: 0 } },
- },
- MuiStepContent: {
- styleOverrides: {
- root: { borderLeftWidth: 0, marginLeft: 0, paddingLeft: 0 },
- },
- },
- MuiStepLabel: {
- styleOverrides: {
- label: {
- color: COLOR.white,
- textTransform: "uppercase",
- "&.MuiStepLabel-active": {},
- "&.MuiStepLabel-completed": {},
- },
- },
- },
- MuiTabs: {
- styleOverrides: {
- root: { borderBottom: `1px solid ${COLOR.white}` },
- indicator: {
- height: "100%",
- background: "linear-gradient(20deg, #f44b1b 0%, #eeb430 100%);",
- zIndex: -1,
- },
- },
- },
- MuiTab: {
- styleOverrides: {
- root: {
- color: COLOR.white,
- fontFamily: "Suisse BP Intl, sans-serif",
- fontWeight: "bold",
- fontSize: FONT_SIZE.L,
- padding: 12,
- letterSpacing: "-0.69px",
- textTransform: "none",
- },
- textColorInherit: { opacity: 1 },
- },
- },
- MuiTableCell: { styleOverrides: { root: { borderBottom: "none" } } },
- MuiCircularProgress: {
- styleOverrides: { root: { color: COLOR.lightBlue } },
- },
- },
- })
-);
diff --git a/apps/common-library/src/utils/constants.ts b/apps/common-library/src/utils/constants.ts
deleted file mode 100644
index 9d4a90b27..000000000
--- a/apps/common-library/src/utils/constants.ts
+++ /dev/null
@@ -1,49 +0,0 @@
-// export interface Env {
-// PUBLIC_URL: string;
-// wormholeConnectConfig: WormholeConnectConfig;
-// navBar: {
-// label: string;
-// active?: boolean;
-// href: string;
-// isBlank?: boolean;
-// }[];
-// redirects?: { source: string[]; target: string };
-// }
-export interface NavBarType {
- label: string;
- active?: boolean;
- href: string;
- isBlank?: boolean;
-};
-
-export const PrivacyPolicyPath = "/privacy-policy";
-
-export interface Message {
- background: string;
- button?: {
- href: string;
- label?: string;
- background: string;
- };
- content: JSX.Element;
- start?: Date;
- ends?: Date;
- }
-
- export interface Banner {
- id: string;
- background: string;
- button?: {
- href: string;
- label?: string;
- background: string;
- };
- content: {
- text: string;
- color?: string;
- size?: string;
- };
- since: Date;
- until: Date;
- }
-
\ No newline at end of file
diff --git a/apps/common-library/src/utils/styles.ts b/apps/common-library/src/utils/styles.ts
deleted file mode 100644
index b4150c2b6..000000000
--- a/apps/common-library/src/utils/styles.ts
+++ /dev/null
@@ -1,10 +0,0 @@
-import { styled, Link as MuiLink, LinkProps } from "@mui/material";
-import { LinkProps as RouterLinkProps } from "react-router-dom";
-
-type CombinedLinkProps = LinkProps & RouterLinkProps;
-
-export const Link = styled(MuiLink)(() => ({
- color: "white",
- textDecoration: "underline",
- fontWeight: 500,
-}));
diff --git a/apps/common-library/src/vite-env.d.ts b/apps/common-library/src/vite-env.d.ts
deleted file mode 100644
index 11f02fe2a..000000000
--- a/apps/common-library/src/vite-env.d.ts
+++ /dev/null
@@ -1 +0,0 @@
-///
diff --git a/apps/common-library/tsconfig.app.json b/apps/common-library/tsconfig.app.json
deleted file mode 100644
index f0a235055..000000000
--- a/apps/common-library/tsconfig.app.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
- "compilerOptions": {
- "target": "ES2020",
- "useDefineForClassFields": true,
- "lib": ["ES2020", "DOM", "DOM.Iterable"],
- "module": "ESNext",
- "skipLibCheck": true,
-
- /* Bundler mode */
- "moduleResolution": "bundler",
- "allowImportingTsExtensions": true,
- "isolatedModules": true,
- "moduleDetection": "force",
- "noEmit": true,
- "jsx": "react-jsx",
-
- /* Linting */
- "strict": true,
- "noUnusedLocals": true,
- "noUnusedParameters": true,
- "noFallthroughCasesInSwitch": true
- },
- "include": ["src"]
-}
diff --git a/apps/common-library/tsconfig.app.tsbuildinfo b/apps/common-library/tsconfig.app.tsbuildinfo
deleted file mode 100644
index 46aded1c2..000000000
--- a/apps/common-library/tsconfig.app.tsbuildinfo
+++ /dev/null
@@ -1 +0,0 @@
-{"root":["./src/app.tsx","./src/index.ts","./src/main.tsx","./src/vite-env.d.ts","./src/components/index.ts","./src/components/atoms/banner.tsx","./src/components/atoms/bar.tsx","./src/components/atoms/connect.tsx","./src/components/atoms/container.tsx","./src/components/atoms/footer.tsx","./src/components/atoms/link.tsx","./src/components/atoms/logo.tsx","./src/components/atoms/navbar.tsx","./src/components/atoms/newsbar.tsx","./src/components/atoms/newsbarbutton.tsx","./src/theme/connect.ts","./src/theme/globalstyles.ts","./src/theme/index.ts","./src/theme/portal.ts","./src/utils/constants.ts","./src/utils/styles.ts"],"version":"5.6.2"}
\ No newline at end of file
diff --git a/apps/common-library/tsconfig.json b/apps/common-library/tsconfig.json
deleted file mode 100644
index c452f432c..000000000
--- a/apps/common-library/tsconfig.json
+++ /dev/null
@@ -1,7 +0,0 @@
-{
- "files": [],
- "references": [
- { "path": "./tsconfig.app.json" },
- { "path": "./tsconfig.node.json" }
- ]
-}
\ No newline at end of file
diff --git a/apps/common-library/tsconfig.node.json b/apps/common-library/tsconfig.node.json
deleted file mode 100644
index 0d3d71446..000000000
--- a/apps/common-library/tsconfig.node.json
+++ /dev/null
@@ -1,22 +0,0 @@
-{
- "compilerOptions": {
- "target": "ES2022",
- "lib": ["ES2023"],
- "module": "ESNext",
- "skipLibCheck": true,
-
- /* Bundler mode */
- "moduleResolution": "bundler",
- "allowImportingTsExtensions": true,
- "isolatedModules": true,
- "moduleDetection": "force",
- "noEmit": true,
-
- /* Linting */
- "strict": true,
- "noUnusedLocals": true,
- "noUnusedParameters": true,
- "noFallthroughCasesInSwitch": true
- },
- "include": ["vite.config.ts"]
-}
diff --git a/apps/common-library/tsconfig.node.tsbuildinfo b/apps/common-library/tsconfig.node.tsbuildinfo
deleted file mode 100644
index 98ef2f996..000000000
--- a/apps/common-library/tsconfig.node.tsbuildinfo
+++ /dev/null
@@ -1 +0,0 @@
-{"root":["./vite.config.ts"],"version":"5.6.2"}
\ No newline at end of file
diff --git a/apps/common-library/vite.config.d.ts b/apps/common-library/vite.config.d.ts
deleted file mode 100644
index 340562aff..000000000
--- a/apps/common-library/vite.config.d.ts
+++ /dev/null
@@ -1,2 +0,0 @@
-declare const _default: import("vite").UserConfig;
-export default _default;
diff --git a/apps/common-library/vite.config.js b/apps/common-library/vite.config.js
deleted file mode 100644
index db2454e5a..000000000
--- a/apps/common-library/vite.config.js
+++ /dev/null
@@ -1,6 +0,0 @@
-import { defineConfig } from 'vite';
-import react from '@vitejs/plugin-react';
-// https://vitejs.dev/config/
-export default defineConfig({
- plugins: [react()],
-});
diff --git a/apps/common-library/vite.config.ts b/apps/common-library/vite.config.ts
deleted file mode 100644
index 5a33944a9..000000000
--- a/apps/common-library/vite.config.ts
+++ /dev/null
@@ -1,7 +0,0 @@
-import { defineConfig } from 'vite'
-import react from '@vitejs/plugin-react'
-
-// https://vitejs.dev/config/
-export default defineConfig({
- plugins: [react()],
-})