diff --git a/__template-package__/package.json b/__template-package__/package.json index f4ea13d9c8..cfc5ba6e3f 100644 --- a/__template-package__/package.json +++ b/__template-package__/package.json @@ -17,7 +17,7 @@ "e2e": "jest e2e/", "lint": "eslint .", "lint:fix": "eslint . --fix", - "build": "tsc -b -v tsconfig.build.json", + "build": "tsc -b --preserveWatchOutput -v tsconfig.build.json", "bundle": "esbuild src/index.ts --bundle --minify --platform=node --target=node20 --outfile=dist/index.js --sourcemap" }, "dependencies": { diff --git a/apps/earn-protocol/app/layout.tsx b/apps/earn-protocol/app/layout.tsx index 0ef5c46ed3..f3035e4cc6 100644 --- a/apps/earn-protocol/app/layout.tsx +++ b/apps/earn-protocol/app/layout.tsx @@ -42,15 +42,15 @@ export default async function RootLayout({ children }: { children: React.ReactNo - - + + {children} - - + +
diff --git a/apps/earn-protocol/app/page.tsx b/apps/earn-protocol/app/page.tsx index 6029ec1413..d2692f4b48 100644 --- a/apps/earn-protocol/app/page.tsx +++ b/apps/earn-protocol/app/page.tsx @@ -1,10 +1,27 @@ +import { Text } from '@summerfi/app-earn-ui' import Link from 'next/link' export default function HomePage() { return ( -
- Hello 🙌 If youre seeing this page, it means that the app is running correctly. Have a great - day, I love you ❤️ BTW you are probably looking for Earn page +
+ + Hello 🙌 If youre seeing this page, it means that the app is running correctly. +
+ Have a great day, I love you ❤️ +

+ BTW you are probably looking for the{' '} + + Earn page + +
) } diff --git a/apps/earn-protocol/app/portfolio/[wallet_address]/page.tsx b/apps/earn-protocol/app/portfolio/[wallet_address]/page.tsx new file mode 100644 index 0000000000..cefbfdf62c --- /dev/null +++ b/apps/earn-protocol/app/portfolio/[wallet_address]/page.tsx @@ -0,0 +1,13 @@ +import { PortfolioPageView } from '@/components/layout/PortfolioPageView/PortfolioPageView' + +type PortfolioPageProps = { + params: { + wallet_address: string + } +} + +const PortfolioPage = ({ params }: PortfolioPageProps) => { + return +} + +export default PortfolioPage diff --git a/apps/earn-protocol/components/layout/PortfolioPageView/PortfolioPageView.tsx b/apps/earn-protocol/components/layout/PortfolioPageView/PortfolioPageView.tsx new file mode 100644 index 0000000000..aea3fd3389 --- /dev/null +++ b/apps/earn-protocol/components/layout/PortfolioPageView/PortfolioPageView.tsx @@ -0,0 +1,27 @@ +'use client' + +import { type FC } from 'react' +import { TabBar } from '@summerfi/app-earn-ui' + +import { PortfolioHeader } from '@/features/portfolio/PortfolioHeader/PortfolioHeader' +import { PortfolioOverview } from '@/features/portfolio/PortfolioOverview/PortfolioOverview' + +const tabs = [ + { label: 'Overview', content: }, + { label: 'Wallet', content:
Wallet content here
}, + { label: 'Rebalance Activity', content:
Rebalance content here
}, + { label: 'Rewards', content:
Rewards content here
}, +] + +interface PortfolioPageViewProps { + walletAddress: string +} + +export const PortfolioPageView: FC = ({ walletAddress }) => { + return ( +
+ + +
+ ) +} diff --git a/apps/earn-protocol/components/molecules/TransakWidget/TransakWidget.tsx b/apps/earn-protocol/components/molecules/TransakWidget/TransakWidget.tsx index 3dee8414ee..678d1f686e 100644 --- a/apps/earn-protocol/components/molecules/TransakWidget/TransakWidget.tsx +++ b/apps/earn-protocol/components/molecules/TransakWidget/TransakWidget.tsx @@ -48,10 +48,10 @@ export const TransakWidget = () => { const [fiatAmount, setFiatAmount] = useState('') useEffect(() => { - if (user?.email) { + if (user?.email && email === '') { setEmail(user.email) } - }, [user?.email]) + }, [user?.email, email]) if (!user) { return null diff --git a/apps/earn-protocol/components/organisms/Form/Form.tsx b/apps/earn-protocol/components/organisms/Form/Form.tsx index 2c33d05963..d6d0997458 100644 --- a/apps/earn-protocol/components/organisms/Form/Form.tsx +++ b/apps/earn-protocol/components/organisms/Form/Form.tsx @@ -1,6 +1,6 @@ 'use client' import { type ChangeEvent, useState } from 'react' -import { Box, Sidebar, SidebarFootnote, sidebarFootnote, Text } from '@summerfi/app-earn-ui' +import { Sidebar, SidebarFootnote, sidebarFootnote } from '@summerfi/app-earn-ui' import { type DropdownOption } from '@summerfi/app-types' import { mapNumericInput } from '@summerfi/app-utils' import { capitalize } from 'lodash-es' @@ -73,23 +73,6 @@ const Form = ({ fleetConfig: _fleetConfig, selectedStrategyData }: FormProps) => return (
- {selectedStrategyData && ( - - - DEBUG - Loaded Strategy Data - -
-            {JSON.stringify(selectedStrategyData, null, 2)}
-          
-
- )}
) } diff --git a/apps/earn-protocol/features/portfolio/PortfolioHeader/PortfolioHeader.tsx b/apps/earn-protocol/features/portfolio/PortfolioHeader/PortfolioHeader.tsx new file mode 100644 index 0000000000..c469323328 --- /dev/null +++ b/apps/earn-protocol/features/portfolio/PortfolioHeader/PortfolioHeader.tsx @@ -0,0 +1,72 @@ +import { type FC } from 'react' +import { Button, DataBlock, Icon, Text } from '@summerfi/app-earn-ui' +import { formatAddress } from '@summerfi/app-utils' + +interface PortfolioHeaderProps { + walletAddress: string +} + +export const PortfolioHeader: FC = ({ walletAddress }) => { + return ( + <> +
+ + Portfolio + +
+ + + +
+
+
+
+ + + {formatAddress(walletAddress, { first: 6 })} + + +
+
+ + +
+
+ + ) +} diff --git a/apps/earn-protocol/features/portfolio/PortfolioOverview/PortfolioOverview.tsx b/apps/earn-protocol/features/portfolio/PortfolioOverview/PortfolioOverview.tsx new file mode 100644 index 0000000000..56d1c03f6f --- /dev/null +++ b/apps/earn-protocol/features/portfolio/PortfolioOverview/PortfolioOverview.tsx @@ -0,0 +1,95 @@ +import { + Card, + DataBlock, + Icon, + SlideCarousel, + StrategyCard, + Text, + WithArrow, +} from '@summerfi/app-earn-ui' +import Link from 'next/link' + +import { MockedLineChart } from '@/components/organisms/Charts/MockedLineChart' +import { strategiesList } from '@/constants/dev-strategies-list' + +const dataBlocks = [ + { + title: 'Total Summer.fi Portfolio', + value: '$100,233.32', + gradient: 'var(--gradient-earn-protocol-light)', + titleColor: 'var(--earn-protocol-secondary-60)', + }, + { + title: 'SUMR Token Rewards', + value: '45,232 $SUMR', + }, + { + title: 'Available to Migrate', + value: '$1002,322,32', + subValue: ( + + + Migrate + + + ), + }, +] + +export const PortfolioOverview = () => { + return ( +
+
+ {dataBlocks.map((item) => ( + + + + ))} + + + Positions + + +
+ ( + console.log('strategy clicked', item)} + /> + ))} + options={{ slidesToScroll: 'auto' }} + title={ +
+ + + You might like + +
+ } + /> +
+
+
+
+ ) +} diff --git a/apps/earn-protocol/package.json b/apps/earn-protocol/package.json index e03a25b170..cc159667a2 100644 --- a/apps/earn-protocol/package.json +++ b/apps/earn-protocol/package.json @@ -10,10 +10,10 @@ "lint-timing": "TIMING=1 eslint ." }, "dependencies": { - "@account-kit/core": "^4.0.0-beta.10", - "@account-kit/infra": "^4.0.0-beta.10", - "@account-kit/react": "^4.0.0-beta.10", - "@account-kit/signer": "^4.0.0-beta.10", + "@account-kit/core": "^4.0.0", + "@account-kit/infra": "^4.0.0", + "@account-kit/react": "^4.0.0", + "@account-kit/signer": "^4.0.0", "@alchemy/aa-accounts": "3.19.0", "@alchemy/aa-alchemy": "3.19.0", "@alchemy/aa-core": "^3.19.0", diff --git a/apps/earn-protocol/providers/AlchemyAccountsProvider/AlchemyAccountsProvider.tsx b/apps/earn-protocol/providers/AlchemyAccountsProvider/AlchemyAccountsProvider.tsx index 952197b176..cb93a25af8 100644 --- a/apps/earn-protocol/providers/AlchemyAccountsProvider/AlchemyAccountsProvider.tsx +++ b/apps/earn-protocol/providers/AlchemyAccountsProvider/AlchemyAccountsProvider.tsx @@ -1,5 +1,5 @@ 'use client' -import { type FC, type PropsWithChildren } from 'react' +import { type FC, type PropsWithChildren, useMemo } from 'react' import { type AlchemyClientState } from '@account-kit/core' import { AlchemyAccountProvider } from '@account-kit/react' import { QueryClient, QueryClientProvider } from '@tanstack/react-query' @@ -14,13 +14,11 @@ export const AlchemyAccountsProvider: FC< chainId?: number }> > = ({ initialState, forkRpcUrl, chainId, children }) => { + const config = useMemo(() => getAccountKitConfig({ forkRpcUrl, chainId }), [chainId, forkRpcUrl]) + return ( - + {children} diff --git a/armada-protocol/abis/package.json b/armada-protocol/abis/package.json index 09c137388f..2ef2118099 100644 --- a/armada-protocol/abis/package.json +++ b/armada-protocol/abis/package.json @@ -18,7 +18,7 @@ "watch": "tsc -w", "e2e": "jest e2e/", "testw": "jest --watch", - "build": "tsc -b tsconfig.build.json", + "build": "tsc -b --preserveWatchOutput tsconfig.build.json", "lint": "eslint .", "lint:fix": "eslint . --fix", "genindex": "rm -f src/index.ts && for dir in ./src/*; do cti create ./$dir -b -w > /dev/null; done && cti ./src -b -w -e '.t.sol' -e 'build-info' -e 'MockERC721.sol'" diff --git a/background-jobs/update-rays-cron-function/package.json b/background-jobs/update-rays-cron-function/package.json index d7a96cbc62..c71aa2639c 100644 --- a/background-jobs/update-rays-cron-function/package.json +++ b/background-jobs/update-rays-cron-function/package.json @@ -3,7 +3,7 @@ "version": "0.0.1", "scripts": { "test": "jest --passWithNoTests", - "build": "tsc -b -v", + "build": "tsc -b --preserveWatchOutput -v", "lint": "eslint .", "lint:fix": "eslint . --fix" }, diff --git a/external-api/get-collateral-locked-function/package.json b/external-api/get-collateral-locked-function/package.json index 78b21ebe1d..a019af236a 100644 --- a/external-api/get-collateral-locked-function/package.json +++ b/external-api/get-collateral-locked-function/package.json @@ -5,7 +5,7 @@ "tsc": "tsc", "watch": "tsc -w", "test": "jest --passWithNoTests", - "build": "tsc -b -v", + "build": "tsc -b --preserveWatchOutput -v", "lint": "eslint .", "lint:fix": "eslint . --fix" }, diff --git a/nx.json b/nx.json deleted file mode 100644 index 60660158b6..0000000000 --- a/nx.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "affected": { - "defaultBase": "master" - }, - "cli": { - "warnings": { - "versionMismatch": false - }, - "packageManager": "yarn", - "analytics": false - }, - "generators": {}, - "$schema": "./node_modules/nx/schemas/nx-schema.json", - "targetDefaults": {}, - - "parallel": 1, - "plugins": [] -} diff --git a/package.json b/package.json index 5e6f600ef2..85d0e6a704 100644 --- a/package.json +++ b/package.json @@ -32,7 +32,6 @@ "sst:deploy:sdk:prod": "sst deploy --stage production --app sdk", "remove": "sst remove", "console": "sst console", - "graph": "pnpm dlx nx graph", "format": "prettier --check \"./**/*.{ts,tsx,js,jsx,json}\"", "format:fix": "prettier --write \"./**/*.{ts,tsx,js,jsx,json}\"", "coverage:total": "node scripts/coverage-report/GenerateCoverageReport.js", diff --git a/packages/aave-spark-subgraph/package.json b/packages/aave-spark-subgraph/package.json index eafd3f9cea..fa7e02c0e0 100644 --- a/packages/aave-spark-subgraph/package.json +++ b/packages/aave-spark-subgraph/package.json @@ -6,8 +6,8 @@ "types": "dist/index.d.ts", "scripts": { "test": "jest --passWithNoTests", - "build": "tsc -b -v", - "dev": "tsc -b -w", + "build": "tsc -b --preserveWatchOutput -v", + "dev": "tsc -b --preserveWatchOutput -w", "prebuild": "pnpm run generate-ts-types", "generate-ts-types": "graphql-codegen --config graphql.config.yml", "lint": "eslint .", diff --git a/packages/abis/package.json b/packages/abis/package.json index adcddc0d98..10323bb0fb 100644 --- a/packages/abis/package.json +++ b/packages/abis/package.json @@ -3,8 +3,8 @@ "version": "1.0.0", "scripts": { "test": "jest --passWithNoTests", - "build": "tsc -b -v", - "dev": "tsc -b -w", + "build": "tsc -b --preserveWatchOutput -v", + "dev": "tsc -b --preserveWatchOutput -w", "lint": "eslint .", "lint:fix": "eslint . --fix" }, diff --git a/packages/abstractions/package.json b/packages/abstractions/package.json index 65d968432d..496fa53c27 100644 --- a/packages/abstractions/package.json +++ b/packages/abstractions/package.json @@ -5,8 +5,8 @@ "types": "dist/index.d.ts", "scripts": { "test": "jest --passWithNoTests", - "build": "tsc -b -v", - "dev": "tsc -b -w", + "build": "tsc -b --preserveWatchOutput -v", + "dev": "tsc -b --preserveWatchOutput -w", "lint": "eslint .", "lint:fix": "eslint . --fix" }, diff --git a/packages/ajna-subgraph/package.json b/packages/ajna-subgraph/package.json index 671e09bf08..54000ceeb6 100644 --- a/packages/ajna-subgraph/package.json +++ b/packages/ajna-subgraph/package.json @@ -6,8 +6,8 @@ "types": "dist/index.d.ts", "scripts": { "test": "jest --passWithNoTests", - "build": "tsc -b -v", - "dev": "tsc -b -w", + "build": "tsc -b --preserveWatchOutput -v", + "dev": "tsc -b --preserveWatchOutput -w", "prebuild": "pnpm run generate-ts-types", "generate-ts-types": "graphql-codegen --config graphql.config.yml", "lint": "eslint .", diff --git a/packages/app-earn-ui/package.json b/packages/app-earn-ui/package.json index 432380ebf6..2403396701 100644 --- a/packages/app-earn-ui/package.json +++ b/packages/app-earn-ui/package.json @@ -13,11 +13,14 @@ ], "scripts": { "lint": "eslint *.ts*", - "generate-module-types": "typed-scss-modules 'src/**/*.module.scss'", - "generate-module-types-watch": "typed-scss-modules -w 'src/**/*.module.scss'", - "dev": "pnpm generate-module-types-watch & vite build -w true --mode=dev", - "build": "pnpm generate-module-types & vite build -w false --mode=prod", - "clean": "rm -rf dist" + "resolve-tspaths-watch": "tsc-watch --onSuccess 'resolve-tspaths'", + "generate-component-types": "tsc", + "generate-component-types-watch": "tsc -w", + "generate-module-types": "typed-scss-modules 'src/**/*.module.scss' & typed-scss-modules --outputFolder 'dist/types' 'src/**/*.module.scss'", + "generate-module-types-watch": "typed-scss-modules -w 'src/**/*.module.scss' & typed-scss-modules --outputFolder 'dist/types' -w 'src/**/*.module.scss'", + "build": "pnpm vite build -w false --mode=prod && pnpm generate-module-types && pnpm generate-component-types && resolve-tspaths", + "vite-dev": "pnpm vite build -w true --mode=dev", + "dev": "concurrently \"pnpm:vite-dev\" \"pnpm:generate-module-types-watch\" \"pnpm:generate-component-types-watch\" \"pnpm:resolve-tspaths-watch\"" }, "devDependencies": { "@summerfi/app-types": "workspace:*", @@ -30,13 +33,15 @@ "@types/react": "^18.3.1", "@types/react-dom": "^18.3.0", "@vitejs/plugin-react-swc": "^3.7.0", + "concurrently": "^9.0.1", "eslint": "8.57.0", "glob": "^11.0.0", "jest": "29.7.0", + "resolve-tspaths": "^0.8.22", "sass": "^1.77.8", + "tsc-watch": "^6.2.0", "typescript": "^5.6.2", - "vite": "^5.4.8", - "vite-plugin-dts": "^4.2.2", + "vite": "^5.4.9", "vite-plugin-lib-inject-css": "^2.1.1" }, "peerDependencies": { @@ -50,7 +55,9 @@ "next": "^14.2.15", "react-dom": "^18.3.1", "react": "^18.3.1", - "usehooks-ts": "^3.1.0" + "usehooks-ts": "^3.1.0", + "embla-carousel-react": "8.3.0", + "embla-carousel": "8.3.0" }, "publishConfig": { "access": "public" diff --git a/packages/app-earn-ui/src/components/atoms/Box/Box.module.scss b/packages/app-earn-ui/src/components/atoms/Box/Box.module.scss index 3b00fb1cfc..b4509931f0 100644 --- a/packages/app-earn-ui/src/components/atoms/Box/Box.module.scss +++ b/packages/app-earn-ui/src/components/atoms/Box/Box.module.scss @@ -3,6 +3,7 @@ background-color: var(--color-surface-subtle); padding: var(--general-space-24); border-radius: var(--radius-roundish); + &.light { background-color: var(--color-surface-subtler); } diff --git a/packages/app-earn-ui/src/components/atoms/Button/Button.tsx b/packages/app-earn-ui/src/components/atoms/Button/Button.tsx index dd5075a6ac..af687c2577 100644 --- a/packages/app-earn-ui/src/components/atoms/Button/Button.tsx +++ b/packages/app-earn-ui/src/components/atoms/Button/Button.tsx @@ -1,7 +1,6 @@ import { createElement, type FC, forwardRef } from 'react' -import { getAtomClassList } from '@/components/atoms/getAtomClassList' -import { type AtomProps } from '@/components/atoms/types' +import { type AtomProps, getAtomClassList } from '@/components/atoms/getAtomClassList' import buttonStyles, { type ClassNames } from '@/components/atoms/Button/Button.module.scss' diff --git a/packages/app-earn-ui/src/components/atoms/Text/Text.tsx b/packages/app-earn-ui/src/components/atoms/Text/Text.tsx index 5e72e560d3..4423610913 100644 --- a/packages/app-earn-ui/src/components/atoms/Text/Text.tsx +++ b/packages/app-earn-ui/src/components/atoms/Text/Text.tsx @@ -1,7 +1,6 @@ import { createElement, forwardRef } from 'react' -import { getAtomClassList } from '@/components/atoms/getAtomClassList' -import { type AtomProps } from '@/components/atoms/types' +import { type AtomProps, getAtomClassList } from '@/components/atoms/getAtomClassList' import textStyles, { type ClassNames } from '@/components/atoms/Text/Text.module.scss' diff --git a/packages/app-earn-ui/src/components/atoms/getAtomClassList.ts b/packages/app-earn-ui/src/components/atoms/getAtomClassList.ts index 181c4416db..ece6eac21b 100644 --- a/packages/app-earn-ui/src/components/atoms/getAtomClassList.ts +++ b/packages/app-earn-ui/src/components/atoms/getAtomClassList.ts @@ -1,3 +1,5 @@ +import { type DetailedHTMLProps, type HTMLAttributes } from 'react' + interface GetAtomClassListParams { variant?: string className?: string @@ -6,3 +8,11 @@ interface GetAtomClassListParams { export const getAtomClassList = ({ className, variant }: GetAtomClassListParams) => { return [...(variant ? [variant] : []), ...(className ? [className] : [])].join(' ') } + +export type AtomProps = DetailedHTMLProps< + HTMLAttributes, + HTMLElement +> & { + as?: AllowedHtmlTags + variant?: AtomPropsClasses +} diff --git a/packages/app-earn-ui/src/components/atoms/types.ts b/packages/app-earn-ui/src/components/atoms/types.ts deleted file mode 100644 index 9ba4ff47a2..0000000000 --- a/packages/app-earn-ui/src/components/atoms/types.ts +++ /dev/null @@ -1,9 +0,0 @@ -import { type DetailedHTMLProps, type HTMLAttributes } from 'react' - -export type AtomProps = DetailedHTMLProps< - HTMLAttributes, - HTMLElement -> & { - as?: AllowedHtmlTags - variant?: AtomPropsClasses -} diff --git a/packages/app-earn-ui/src/components/layout/Navigation/Navigation.tsx b/packages/app-earn-ui/src/components/layout/Navigation/Navigation.tsx index a2c6926a77..21ba97985d 100644 --- a/packages/app-earn-ui/src/components/layout/Navigation/Navigation.tsx +++ b/packages/app-earn-ui/src/components/layout/Navigation/Navigation.tsx @@ -2,7 +2,6 @@ import { type FC, type ReactNode, useState } from 'react' import { type NavigationMenuPanelLinkType } from '@summerfi/app-types' -import { useMediaQuery } from 'usehooks-ts' import { NavigationActions } from '@/components/layout/Navigation/NavigationActions' import { NavigationBranding } from '@/components/layout/Navigation/NavigationBranding' @@ -36,7 +35,6 @@ export const Navigation: FC = ({ additionalModule, }) => { const [mobileMenuOpened, setMobileMenuOpened] = useState(false) - const isViewBelowL = useMediaQuery(`(max-width: 1024px)`) const toggleMobileMenu = () => { setMobileMenuOpened(!mobileMenuOpened) @@ -46,11 +44,8 @@ export const Navigation: FC = ({
- {isViewBelowL ? ( - - ) : ( - - )} + + span, li>a { + li>span, + li>a { font-size: 16px; font-weight: 600; line-height: var(--general-space-24); diff --git a/packages/app-earn-ui/src/components/layout/Navigation/NavigationMenuMobile.module.scss b/packages/app-earn-ui/src/components/layout/Navigation/NavigationMenuMobile.module.scss new file mode 100644 index 0000000000..f70e7e0102 --- /dev/null +++ b/packages/app-earn-ui/src/components/layout/Navigation/NavigationMenuMobile.module.scss @@ -0,0 +1,6 @@ +.menuMobileWrapper { + + @include media(">l") { + display: none; + } +} \ No newline at end of file diff --git a/packages/app-earn-ui/src/components/layout/Navigation/NavigationMenuMobile.module.scss.d.ts b/packages/app-earn-ui/src/components/layout/Navigation/NavigationMenuMobile.module.scss.d.ts new file mode 100644 index 0000000000..adcd6d3110 --- /dev/null +++ b/packages/app-earn-ui/src/components/layout/Navigation/NavigationMenuMobile.module.scss.d.ts @@ -0,0 +1,9 @@ +export type Styles = { + menuMobileWrapper: string +} + +export type ClassNames = keyof Styles + +declare const styles: Styles + +export default styles diff --git a/packages/app-earn-ui/src/components/layout/Navigation/NavigationMenuMobile.tsx b/packages/app-earn-ui/src/components/layout/Navigation/NavigationMenuMobile.tsx index c3b6fd6b19..8a0a02a54f 100644 --- a/packages/app-earn-ui/src/components/layout/Navigation/NavigationMenuMobile.tsx +++ b/packages/app-earn-ui/src/components/layout/Navigation/NavigationMenuMobile.tsx @@ -1,3 +1,16 @@ -export const NavigationMenuMobile = () => { - return
Mobile menu is not ready :)
+import { type EarnNavigationProps } from '@/components/layout/Navigation/Navigation' + +import navigationMenuMobileStyles from '@/components/layout/Navigation/NavigationMenuMobile.module.scss' + +type NavigationMobileMenuType = { + links: EarnNavigationProps['links'] + currentPath?: string +} + +export const NavigationMenuMobile = ({ links, currentPath }: NavigationMobileMenuType) => { + return ( +
+
{JSON.stringify({ currentPath }, null, 2)}
+
+ ) } diff --git a/packages/app-earn-ui/src/components/molecules/DataBlock/DataBlock.tsx b/packages/app-earn-ui/src/components/molecules/DataBlock/DataBlock.tsx index a379b3153a..8471578ece 100644 --- a/packages/app-earn-ui/src/components/molecules/DataBlock/DataBlock.tsx +++ b/packages/app-earn-ui/src/components/molecules/DataBlock/DataBlock.tsx @@ -1,3 +1,4 @@ +import { type CSSProperties, type ReactNode } from 'react' import clsx from 'clsx' import { Text } from '@/components/atoms/Text/Text' @@ -10,30 +11,36 @@ type DataBlockProps = { titleTooltip?: string size?: 'small' | 'large' titleSize?: 'small' | 'large' + titleStyle?: CSSProperties subValueSize?: 'small' | 'large' valueSize?: 'small' | 'large' + valueStyle?: CSSProperties value: string - subValue?: string + subValue?: ReactNode subValueType?: 'positive' | 'negative' | 'neutral' centered?: boolean + subValueStyle?: CSSProperties } export const DataBlock = ({ title, titleTooltip, titleSize, + titleStyle, size = 'small', value, valueSize, + valueStyle, centered, subValue, subValueType, subValueSize, + subValueStyle, }: DataBlockProps) => { const titleVariant = { small: 'p3semi' as const, large: 'p1semi' as const, - }[!subValue ? 'small' : titleSize ?? size] + }[titleSize ?? size] const valueVariant = { small: 'p1semi' as const, @@ -57,8 +64,11 @@ export const DataBlock = ({ iconName={titleTooltip ? 'question_o' : undefined} tooltip={titleTooltip} color="rgb(119, 117, 118)" + titleStyle={titleStyle} /> - {value} + + {value} + {subValue && ( {subValue} diff --git a/packages/app-earn-ui/src/components/molecules/SlideCarousel/SlideCarousel.module.scss b/packages/app-earn-ui/src/components/molecules/SlideCarousel/SlideCarousel.module.scss new file mode 100644 index 0000000000..f414ac2e69 --- /dev/null +++ b/packages/app-earn-ui/src/components/molecules/SlideCarousel/SlideCarousel.module.scss @@ -0,0 +1,42 @@ +.embla { + --slide-spacing: var(--general-radius-24); + --slide-size: 100%; + + @media (min-width: 900px) { + --slide-size: 50%; + } +} +.emblaViewport { + overflow: hidden; +} +.emblaContainer { + display: flex; + touch-action: pan-y pinch-zoom; + margin-left: calc(var(--slide-spacing) * -1); +} +.emblaSlide { + transform: translate3d(0, 0, 0); + flex: 0 0 var(--slide-size); + min-width: 0; + padding-left: var(--slide-spacing); +} +.emblaSlideNumber { + display: flex; + align-items: center; + justify-content: center; + height: var(--slide-height); + user-select: none; +} +.emblaControls { + display: flex; + justify-content: space-between; + align-items: center; + margin-bottom: var(--general-space-24); +} +.emblaButtons { + display: grid; + grid-template-columns: repeat(2, 1fr); + gap: var(--general-space-16); + align-items: center; + width: fit-content; +} diff --git a/packages/app-earn-ui/src/components/molecules/SlideCarousel/SlideCarousel.module.scss.d.ts b/packages/app-earn-ui/src/components/molecules/SlideCarousel/SlideCarousel.module.scss.d.ts new file mode 100644 index 0000000000..ca3274d672 --- /dev/null +++ b/packages/app-earn-ui/src/components/molecules/SlideCarousel/SlideCarousel.module.scss.d.ts @@ -0,0 +1,15 @@ +export type Styles = { + embla: string + emblaButtons: string + emblaContainer: string + emblaControls: string + emblaSlide: string + emblaSlideNumber: string + emblaViewport: string +} + +export type ClassNames = keyof Styles + +declare const styles: Styles + +export default styles diff --git a/packages/app-earn-ui/src/components/molecules/SlideCarousel/SlideCarousel.tsx b/packages/app-earn-ui/src/components/molecules/SlideCarousel/SlideCarousel.tsx new file mode 100644 index 0000000000..76213a846d --- /dev/null +++ b/packages/app-earn-ui/src/components/molecules/SlideCarousel/SlideCarousel.tsx @@ -0,0 +1,50 @@ +'use client' +import { type FC, type ReactNode } from 'react' +import { type EmblaOptionsType } from 'embla-carousel' +import useEmblaCarousel from 'embla-carousel-react' + +import { SlideCarouselButton, usePrevNextButtons } from './SlideCarouselButtons' + +import classNames from './SlideCarousel.module.scss' + +type PropType = { + title: ReactNode + slides: ReactNode[] + options?: EmblaOptionsType +} + +export const SlideCarousel: FC = ({ slides, options, title }) => { + const [emblaRef, emblaApi] = useEmblaCarousel(options) + + const { prevBtnDisabled, nextBtnDisabled, onPrevButtonClick, onNextButtonClick } = + usePrevNextButtons(emblaApi) + + return ( +
+
+ {title} +
+ + +
+
+
+
+ {slides.map((slide, idx) => ( +
+
{slide}
+
+ ))} +
+
+
+ ) +} diff --git a/packages/app-earn-ui/src/components/molecules/SlideCarousel/SlideCarouselButtons.tsx b/packages/app-earn-ui/src/components/molecules/SlideCarousel/SlideCarouselButtons.tsx new file mode 100644 index 0000000000..f712a9bf8e --- /dev/null +++ b/packages/app-earn-ui/src/components/molecules/SlideCarousel/SlideCarouselButtons.tsx @@ -0,0 +1,64 @@ +import { type ComponentPropsWithRef, type FC, useCallback, useEffect, useState } from 'react' +import { type EmblaCarouselType } from 'embla-carousel' + +import { Button } from '@/components/atoms/Button/Button' +import { Icon } from '@/components/atoms/Icon/Icon' + +type UsePrevNextButtonsType = { + prevBtnDisabled: boolean + nextBtnDisabled: boolean + onPrevButtonClick: () => void + onNextButtonClick: () => void +} + +export const usePrevNextButtons = ( + emblaApi: EmblaCarouselType | undefined, +): UsePrevNextButtonsType => { + const [prevBtnDisabled, setPrevBtnDisabled] = useState(true) + const [nextBtnDisabled, setNextBtnDisabled] = useState(true) + + const onPrevButtonClick = useCallback(() => { + if (!emblaApi) return + emblaApi.scrollPrev() + }, [emblaApi]) + + const onNextButtonClick = useCallback(() => { + if (!emblaApi) return + emblaApi.scrollNext() + }, [emblaApi]) + + const onSelect = useCallback((api: EmblaCarouselType) => { + setPrevBtnDisabled(!api.canScrollPrev()) + setNextBtnDisabled(!api.canScrollNext()) + }, []) + + useEffect(() => { + if (!emblaApi) return + + onSelect(emblaApi) + emblaApi.on('reInit', onSelect).on('select', onSelect) + }, [emblaApi, onSelect]) + + return { + prevBtnDisabled, + nextBtnDisabled, + onPrevButtonClick, + onNextButtonClick, + } +} + +type PropType = ComponentPropsWithRef<'button'> & { direction: 'left' | 'right' } + +export const SlideCarouselButton: FC = (props) => { + const { direction, ...restProps } = props + + return ( + + ) +} diff --git a/packages/app-earn-ui/src/components/molecules/TabBar/TabBar.module.scss b/packages/app-earn-ui/src/components/molecules/TabBar/TabBar.module.scss new file mode 100644 index 0000000000..e4cb30111a --- /dev/null +++ b/packages/app-earn-ui/src/components/molecules/TabBar/TabBar.module.scss @@ -0,0 +1,87 @@ +.tabBar { + display: flex; + flex-direction: column; + width: 100%; + position: relative; +} + +.tabHeaders { + display: flex; + border-bottom: 3px solid #444; /* Grey underline spanning the entire container */ + overflow-x: auto; + scrollbar-width: none; /* Hide scrollbar on Firefox */ + -ms-overflow-style: none; /* Hide scrollbar on IE/Edge */ + + /* Hide scrollbar on Webkit browsers (Safari, Chrome) */ + &::-webkit-scrollbar { + display: none; + } +} + +.tabButton { + padding: 10px 20px; + cursor: pointer; + background: none; + border: none; + font-size: 16px; + color: #ccc; + transition: color 0.3s ease; + white-space: nowrap; /* Prevent text wrapping for tabs */ + flex-shrink: 0; /* Ensure buttons don't shrink when content is wide */ + position: relative; + + &:hover { + color: #fff; + } + + &:focus { + outline: none; /* Remove default focus outline */ + } +} + +.active { + color: #fff; + position: relative; +} + +.underline { + position: absolute; + top: 44px; /* Same level as grey border */ + height: 3px; + background-color: #ff0080; /* Pink underline */ + z-index: 1; /* Pink border should appear on top */ + transition: + left 0.3s ease, + width 0.3s ease; /* Smooth animation */ +} + +.tabContent { + padding: var(--general-space-24) 0; +} + +/* Mobile-specific styles */ +@media (max-width: 768px) { + .tabButton { + padding: 15px 10px; + font-size: 14px; /* Smaller font size for mobile */ + } + + .tabContent { + padding: 15px; + } +} + +@media (max-width: 480px) { + .tabButton { + padding: 12px 8px; + font-size: 12px; /* Further reduce font size for very small screens */ + } + + .tabContent { + padding: 10px; + } + + .underline { + top: 48px; /* Same level as grey border */ + } +} diff --git a/packages/app-earn-ui/src/components/molecules/TabBar/TabBar.module.scss.d.ts b/packages/app-earn-ui/src/components/molecules/TabBar/TabBar.module.scss.d.ts new file mode 100644 index 0000000000..625b3a5fd4 --- /dev/null +++ b/packages/app-earn-ui/src/components/molecules/TabBar/TabBar.module.scss.d.ts @@ -0,0 +1,14 @@ +export type Styles = { + active: string + tabBar: string + tabButton: string + tabContent: string + tabHeaders: string + underline: string +} + +export type ClassNames = keyof Styles + +declare const styles: Styles + +export default styles diff --git a/packages/app-earn-ui/src/components/molecules/TabBar/TabBar.tsx b/packages/app-earn-ui/src/components/molecules/TabBar/TabBar.tsx new file mode 100644 index 0000000000..f0bc7b70da --- /dev/null +++ b/packages/app-earn-ui/src/components/molecules/TabBar/TabBar.tsx @@ -0,0 +1,69 @@ +'use client' +import React, { useEffect, useRef, useState } from 'react' + +import { Text } from '@/components/atoms/Text/Text' + +import styles from './TabBar.module.scss' + +interface Tab { + label: string + content: React.ReactNode +} + +interface TabBarProps { + tabs: Tab[] +} + +export const TabBar: React.FC = ({ tabs }) => { + const [activeIndex, setActiveIndex] = useState(0) + const [underlineStyle, setUnderlineStyle] = useState<{ left: number; width: number }>({ + left: 0, + width: 0, + }) + const tabRefs = useRef<(HTMLButtonElement | null)[]>([]) + + useEffect(() => { + // Calculate the position and width of the underline based on the active tab + const activeTab = tabRefs.current[activeIndex] + + if (activeTab) { + setUnderlineStyle({ + left: activeTab.offsetLeft, + width: activeTab.offsetWidth, + }) + } + }, [activeIndex]) + + return ( +
+
+ {tabs.map((tab, index) => ( + + ))} +
+
+
{tabs[activeIndex].content}
+
+ ) +} diff --git a/packages/app-earn-ui/src/components/molecules/TitleWithIcon/TitleWithIcon.tsx b/packages/app-earn-ui/src/components/molecules/TitleWithIcon/TitleWithIcon.tsx index 24ec2d7e4c..8502984524 100644 --- a/packages/app-earn-ui/src/components/molecules/TitleWithIcon/TitleWithIcon.tsx +++ b/packages/app-earn-ui/src/components/molecules/TitleWithIcon/TitleWithIcon.tsx @@ -1,5 +1,7 @@ +import { type CSSProperties } from 'react' import { type IconNamesList } from '@summerfi/app-types' import clsx from 'clsx' +import { identity, pickBy } from 'lodash-es' import { Icon } from '@/components/atoms/Icon/Icon' import { Text } from '@/components/atoms/Text/Text' @@ -15,6 +17,7 @@ export type TitleWithIconProps = { iconName?: IconNamesList className?: string color?: string + titleStyle?: CSSProperties } export const TitleWithIcon = ({ @@ -24,10 +27,14 @@ export const TitleWithIcon = ({ iconName, className, color, + titleStyle, }: TitleWithIconProps) => { + // clear undefined values from style properties to avoid overwrite + const resolvedTitleStyle = pickBy(titleStyle, identity) + return (
- + {title} {iconName && !tooltip && } diff --git a/packages/app-earn-ui/src/index.ts b/packages/app-earn-ui/src/index.ts index e8464e4cbe..a2bdbb0cc4 100644 --- a/packages/app-earn-ui/src/index.ts +++ b/packages/app-earn-ui/src/index.ts @@ -43,6 +43,8 @@ export { TableCellText } from './components/molecules/TableCellText/TableCellTex export { TableHeadWithTooltip } from './components/molecules/TableHeadWithTooltip/TableHeadWithTooltip' export { TokensGroup } from './components/molecules/TokensGroup/TokensGroup' export { InlineButtons } from './components/molecules/InlineButtons/InlineButtons' +export { TabBar } from './components/molecules/TabBar/TabBar' +export { SlideCarousel } from './components/molecules/SlideCarousel/SlideCarousel' export { TermsOfService } from './components/organisms/TermsOfService/TermsOfService' export { Sidebar } from './components/organisms/Sidebar/Sidebar' diff --git a/packages/app-earn-ui/src/styles/index.scss b/packages/app-earn-ui/src/styles/index.scss index 86bf03f522..74a90420ed 100644 --- a/packages/app-earn-ui/src/styles/index.scss +++ b/packages/app-earn-ui/src/styles/index.scss @@ -13,6 +13,7 @@ --general-space-256: 256px; --general-space-128: 128px; --general-space-64: 64px; + --general-space-40: 40px; --general-space-32: 32px; --general-space-24: 24px; --general-space-20: 20px; @@ -102,6 +103,11 @@ // to be refactored probably --gradient-earn-protocol-dark: linear-gradient(90deg, #ff49a4 0.78%, #b049ff 99.57%); + --gradient-earn-protocol-light: linear-gradient( + 90deg, + rgba(255, 73, 164, 0.5) 0%, + rgba(176, 73, 255, 0.5) 93% + ); --shadow-depth-1: 0px 0px 8px 0px #0000001a; --shadow-depth-2: 0px 0px 8px 8px #00000026; diff --git a/packages/app-earn-ui/tsconfig.json b/packages/app-earn-ui/tsconfig.json index fe161d2810..094c4fe864 100644 --- a/packages/app-earn-ui/tsconfig.json +++ b/packages/app-earn-ui/tsconfig.json @@ -1,14 +1,26 @@ { - "extends": "@summerfi/typescript-config/tsconfig.nextjs.json", - "include": ["src/**/*", "next-env.d.ts", "src/icons/svg.d.ts"], - "exclude": ["dist/**/*", "node_modules"], "compilerOptions": { + "preserveWatchOutput": true, + "target": "ES6", + "useDefineForClassFields": true, + "lib": ["ES2023", "DOM", "DOM.Iterable"], + "module": "ESNext", + "skipLibCheck": true, + "skipDefaultLibCheck": true, + "moduleResolution": "bundler", + "allowImportingTsExtensions": true, + "resolveJsonModule": true, + "isolatedModules": false, + "emitDeclarationOnly": true, + "incremental": true, + "jsx": "react-jsx", + "strictNullChecks": true, + "declaration": true, "baseUrl": ".", "paths": { "@/*": ["./src/*"] }, - "lib": ["dom", "dom.iterable", "esnext"], - "typeRoots": [], - "outDir": "./dist" - } + "outDir": "./dist/types/src" + }, + "include": ["src"] } diff --git a/packages/app-earn-ui/vite.config.ts b/packages/app-earn-ui/vite.config.ts index f06e1c2a7d..41181b9ac7 100644 --- a/packages/app-earn-ui/vite.config.ts +++ b/packages/app-earn-ui/vite.config.ts @@ -8,8 +8,6 @@ import { defineConfig, createLogger } from 'vite' import { libInjectCss } from 'vite-plugin-lib-inject-css' // handles tsconfig paths from the tsconfig.json import tsconfigPaths from 'vite-tsconfig-paths' -// generates typescript declaration files (just the js/ts, scss is done in package.json) -import dts from 'vite-plugin-dts' // preserves directives like "use client" in the output import preserveDirectives from 'rollup-preserve-directives' @@ -52,12 +50,6 @@ export default defineConfig(({ mode }) => { } }, }, - dts({ - outDir: 'dist/types', - insertTypesEntry: true, - strictOutput: true, - copyDtsFiles: true, - }), ], css: { preprocessorOptions: { @@ -76,8 +68,9 @@ export default defineConfig(({ mode }) => { }, }, customLogger: !notDev ? logger : undefined, + clearScreen: false, build: { - emptyOutDir: notDev, // in dev mode we cant just clear the dist folder + emptyOutDir: false, cssCodeSplit: true, sourcemap: false, cssMinify: notDev, @@ -105,6 +98,8 @@ export default defineConfig(({ mode }) => { '@summerfi/serverless-shared', '@summerfi/app-token-config', '@summerfi/app-types', + 'embla-carousel-react', + 'embla-carousel', ], input: Object.fromEntries( glob diff --git a/packages/app-icons/package.json b/packages/app-icons/package.json index f89e73dbcd..90540a257c 100644 --- a/packages/app-icons/package.json +++ b/packages/app-icons/package.json @@ -33,7 +33,7 @@ "access": "public" }, "dependencies": { - "vite-plugin-dts": "^4.2.2", + "vite-plugin-dts": "^4.2.4", "vite-plugin-svgo": "1.4.0" } } diff --git a/packages/app-icons/src/icons/edit.svg b/packages/app-icons/src/icons/edit.svg new file mode 100644 index 0000000000..05741d99c3 --- /dev/null +++ b/packages/app-icons/src/icons/edit.svg @@ -0,0 +1,4 @@ + + + + diff --git a/packages/app-icons/src/index.ts b/packages/app-icons/src/index.ts index c389f359a5..e321fb1b9d 100644 --- a/packages/app-icons/src/index.ts +++ b/packages/app-icons/src/index.ts @@ -225,3 +225,4 @@ export const quant_stamp = lazy.lib(() => import('./icons/quant_stamp.svg')) export const trail_of_bits = lazy.lib(() => import('./icons/trail_of_bits.svg')) export const person = lazy.lib(() => import('./icons/person.svg')) export const discord = lazy.lib(() => import('./icons/discord.svg')) +export const edit = lazy.lib(() => import('./icons/edit.svg')) diff --git a/packages/app-icons/vite.config.ts b/packages/app-icons/vite.config.ts index 7d965f6a5a..26ff59aa2b 100644 --- a/packages/app-icons/vite.config.ts +++ b/packages/app-icons/vite.config.ts @@ -35,8 +35,9 @@ export default defineConfig(({ mode }) => { : undefined, ], customLogger: !notDev ? logger : undefined, + clearScreen: false, build: { - emptyOutDir: notDev, // in dev mode we cant just clear the dist folder + emptyOutDir: false, lib: { // eslint-disable-next-line no-undef entry: resolve(__dirname, 'src/index.ts'), diff --git a/packages/app-risk/package.json b/packages/app-risk/package.json index 39589a435f..4c61f24fee 100644 --- a/packages/app-risk/package.json +++ b/packages/app-risk/package.json @@ -11,7 +11,7 @@ "scripts": { "lint": "eslint *.ts*", "dev": "pnpm vite build -w true", - "build": "pnpm vite build -w false", + "build": "pnpm vite build -w false", "clean": "rm -rf dist" }, "devDependencies": { @@ -21,8 +21,8 @@ "@vitejs/plugin-react-swc": "^3.7.0", "eslint": "8.57.0", "typescript": "^5.6.2", - "vite": "^5.4.8", - "vite-plugin-dts": "^4.2.2", + "vite": "^5.4.9", + "vite-plugin-dts": "^4.2.4", "glob": "^11.0.0" }, "peerDependencies": { diff --git a/packages/app-risk/vite.config.ts b/packages/app-risk/vite.config.ts index eb3f90ad2a..20b8049a76 100644 --- a/packages/app-risk/vite.config.ts +++ b/packages/app-risk/vite.config.ts @@ -2,65 +2,78 @@ import react from '@vitejs/plugin-react-swc' import { glob } from 'glob' import { fileURLToPath } from 'node:url' import { extname, relative, resolve } from 'path' -import { defineConfig } from 'vite' +import { createLogger, defineConfig } from 'vite' -// handles tsconfig paths from the tsconfig.json -import tsconfigPaths from 'vite-tsconfig-paths' // generates typescript declaration files (just the js/ts, scss is done in package.json) import dts from 'vite-plugin-dts' +// handles tsconfig paths from the tsconfig.json +import tsconfigPaths from 'vite-tsconfig-paths' // preserves directives like "use client" in the output import preserveDirectives from 'rollup-preserve-directives' +const logger = createLogger() +const loggerInfo = logger.info + +logger.info = (msg, options) => { + if (msg.includes('dist')) return + loggerInfo(msg, options) +} + // https://vitejs.dev/config/ -export default defineConfig({ - plugins: [ - react(), - tsconfigPaths(), - preserveDirectives(), - { - // libInjectCss (with preserveDirectives) adds the css import to the top of the file - // this custom handle moves the directive ('use client') to the top of the file again - name: 'custom-swap-directive', - generateBundle(_, bundle) { - for (const chunk of Object.values(bundle)) { - if (chunk.type === 'chunk') { - if (chunk.code.includes('use client')) { - chunk.code = chunk.code.replace(/['"]use client['"];/, '') - chunk.code = `'use client';\n${chunk.code}` - } - if (chunk.code.includes('use server')) { - chunk.code = chunk.code.replace(/['"]use server['"];/, '') - chunk.code = `'use server';\n${chunk.code}` +export default defineConfig(({ mode }) => { + const notDev = mode !== 'dev' + return { + plugins: [ + react(), + tsconfigPaths(), + preserveDirectives(), + { + // libInjectCss (with preserveDirectives) adds the css import to the top of the file + // this custom handle moves the directive ('use client') to the top of the file again + name: 'custom-swap-directive', + generateBundle(_, bundle) { + for (const chunk of Object.values(bundle)) { + if (chunk.type === 'chunk') { + if (chunk.code.includes('use client')) { + chunk.code = chunk.code.replace(/['"]use client['"];/, '') + chunk.code = `'use client';\n${chunk.code}` + } + if (chunk.code.includes('use server')) { + chunk.code = chunk.code.replace(/['"]use server['"];/, '') + chunk.code = `'use server';\n${chunk.code}` + } } } - } + }, }, - }, - dts({ outDir: 'dist/types', insertTypesEntry: true, strictOutput: true, copyDtsFiles: true }), - ], - build: { - emptyOutDir: false, - cssCodeSplit: true, - lib: { - // eslint-disable-next-line no-undef - entry: resolve(__dirname, 'src/index.ts'), - formats: ['es'], - }, - rollupOptions: { - external: ['react', 'next', 'next/server', 'zod', 'kysely'], - input: Object.fromEntries( - glob - .sync('src/**/*.{ts,tsx}') - .filter((file) => !file.endsWith('.d.ts')) - .map((file) => [ - relative('src', file.slice(0, file.length - extname(file).length)), - fileURLToPath(new URL(file, import.meta.url)), - ]), - ), - output: { - assetFileNames: 'assets/[name][extname]', - entryFileNames: '[name].js', + dts({ outDir: 'dist/types', insertTypesEntry: true, strictOutput: true, copyDtsFiles: true }), + ], + customLogger: !notDev ? logger : undefined, + clearScreen: false, + build: { + emptyOutDir: false, + cssCodeSplit: true, + lib: { + // eslint-disable-next-line no-undef + entry: resolve(__dirname, 'src/index.ts'), + formats: ['es'], + }, + rollupOptions: { + external: ['react', 'next', 'next/server', 'zod', 'kysely'], + input: Object.fromEntries( + glob + .sync('src/**/*.{ts,tsx}') + .filter((file) => !file.endsWith('.d.ts')) + .map((file) => [ + relative('src', file.slice(0, file.length - extname(file).length)), + fileURLToPath(new URL(file, import.meta.url)), + ]), + ), + output: { + assetFileNames: 'assets/[name][extname]', + entryFileNames: '[name].js', + }, }, }, - }, + } }) diff --git a/packages/app-tos/package.json b/packages/app-tos/package.json index ddb0b394b4..b7dc54a62b 100644 --- a/packages/app-tos/package.json +++ b/packages/app-tos/package.json @@ -10,8 +10,12 @@ ], "scripts": { "lint": "eslint *.ts*", - "dev": "pnpm vite build -w true", - "build": "pnpm vite build -w false", + "resolve-tspaths-watch": "tsc-watch --onSuccess 'resolve-tspaths'", + "generate-component-types": "tsc", + "generate-component-types-watch": "tsc -w", + "vite-dev": "pnpm vite build -w true --mode=dev", + "dev": "concurrently \"pnpm:vite-dev\" \"pnpm:generate-component-types-watch\" \"pnpm:resolve-tspaths-watch\"", + "build": "pnpm vite build -w false && pnpm generate-component-types && resolve-tspaths", "clean": "rm -rf dist" }, "devDependencies": { @@ -21,11 +25,14 @@ "@types/react": "^18.3.1", "@types/jsonwebtoken": "^9.0.0", "@vitejs/plugin-react-swc": "^3.7.0", + "concurrently": "^9.0.1", "vite-plugin-node-polyfills": "^0.22.0", + "resolve-tspaths": "^0.8.22", "eslint": "8.57.0", + "tsc-watch": "^6.2.0", "typescript": "^5.6.2", - "vite": "^5.4.8", - "vite-plugin-dts": "^4.2.2", + "vite": "^5.4.9", + "vite-plugin-dts": "^4.2.4", "glob": "^11.0.0" }, "peerDependencies": { diff --git a/packages/app-tos/tsconfig.json b/packages/app-tos/tsconfig.json index fe161d2810..094c4fe864 100644 --- a/packages/app-tos/tsconfig.json +++ b/packages/app-tos/tsconfig.json @@ -1,14 +1,26 @@ { - "extends": "@summerfi/typescript-config/tsconfig.nextjs.json", - "include": ["src/**/*", "next-env.d.ts", "src/icons/svg.d.ts"], - "exclude": ["dist/**/*", "node_modules"], "compilerOptions": { + "preserveWatchOutput": true, + "target": "ES6", + "useDefineForClassFields": true, + "lib": ["ES2023", "DOM", "DOM.Iterable"], + "module": "ESNext", + "skipLibCheck": true, + "skipDefaultLibCheck": true, + "moduleResolution": "bundler", + "allowImportingTsExtensions": true, + "resolveJsonModule": true, + "isolatedModules": false, + "emitDeclarationOnly": true, + "incremental": true, + "jsx": "react-jsx", + "strictNullChecks": true, + "declaration": true, "baseUrl": ".", "paths": { "@/*": ["./src/*"] }, - "lib": ["dom", "dom.iterable", "esnext"], - "typeRoots": [], - "outDir": "./dist" - } + "outDir": "./dist/types/src" + }, + "include": ["src"] } diff --git a/packages/app-tos/vite.config.ts b/packages/app-tos/vite.config.ts index 725f6656c8..69bc3a5d45 100644 --- a/packages/app-tos/vite.config.ts +++ b/packages/app-tos/vite.config.ts @@ -2,76 +2,86 @@ import react from '@vitejs/plugin-react-swc' import { glob } from 'glob' import { fileURLToPath } from 'node:url' import { extname, relative, resolve } from 'path' -import { defineConfig } from 'vite' +import { createLogger, defineConfig } from 'vite' // handles tsconfig paths from the tsconfig.json import tsconfigPaths from 'vite-tsconfig-paths' -// generates typescript declaration files (just the js/ts, scss is done in package.json) -import dts from 'vite-plugin-dts' // preserves directives like "use client" in the output import preserveDirectives from 'rollup-preserve-directives' +const logger = createLogger() +const loggerInfo = logger.info + +logger.info = (msg, options) => { + if (msg.includes('dist')) return + loggerInfo(msg, options) +} + // https://vitejs.dev/config/ -export default defineConfig({ - plugins: [ - react(), - tsconfigPaths(), - preserveDirectives(), - { - // libInjectCss (with preserveDirectives) adds the css import to the top of the file - // this custom handle moves the directive ('use client') to the top of the file again - name: 'custom-swap-directive', - generateBundle(_, bundle) { - for (const chunk of Object.values(bundle)) { - if (chunk.type === 'chunk') { - if (chunk.code.includes('use client')) { - chunk.code = chunk.code.replace(/['"]use client['"];/, '') - chunk.code = `'use client';\n${chunk.code}` - } - if (chunk.code.includes('use server')) { - chunk.code = chunk.code.replace(/['"]use server['"];/, '') - chunk.code = `'use server';\n${chunk.code}` +export default defineConfig(({ mode }) => { + const notDev = mode !== 'dev' + return { + plugins: [ + react(), + tsconfigPaths(), + preserveDirectives(), + { + // libInjectCss (with preserveDirectives) adds the css import to the top of the file + // this custom handle moves the directive ('use client') to the top of the file again + name: 'custom-swap-directive', + generateBundle(_, bundle) { + for (const chunk of Object.values(bundle)) { + if (chunk.type === 'chunk') { + if (chunk.code.includes('use client')) { + chunk.code = chunk.code.replace(/['"]use client['"];/, '') + chunk.code = `'use client';\n${chunk.code}` + } + if (chunk.code.includes('use server')) { + chunk.code = chunk.code.replace(/['"]use server['"];/, '') + chunk.code = `'use server';\n${chunk.code}` + } } } - } + }, }, - }, - dts({ outDir: 'dist/types', insertTypesEntry: true, strictOutput: true, copyDtsFiles: true }), - ], - build: { - emptyOutDir: false, - cssCodeSplit: true, - lib: { - // eslint-disable-next-line no-undef - entry: resolve(__dirname, 'src/index.ts'), - formats: ['es'], - }, - rollupOptions: { - external: [ - 'react', - 'next', - 'next/server', - 'zod', - 'kysely', - 'viem', - 'viem/chains', - '@safe-global/safe-apps-sdk', - 'jsonwebtoken', - '@summerfi/serverless-shared', - ], - input: Object.fromEntries( - glob - .sync('src/**/*.{ts,tsx}') - .filter((file) => !file.endsWith('.d.ts')) - .map((file) => [ - relative('src', file.slice(0, file.length - extname(file).length)), - fileURLToPath(new URL(file, import.meta.url)), - ]), - ), - output: { - assetFileNames: 'assets/[name][extname]', - entryFileNames: '[name].js', + ], + customLogger: !notDev ? logger : undefined, + clearScreen: false, + build: { + emptyOutDir: false, + cssCodeSplit: true, + lib: { + // eslint-disable-next-line no-undef + entry: resolve(__dirname, 'src/index.ts'), + formats: ['es'], + }, + rollupOptions: { + external: [ + 'react', + 'next', + 'next/server', + 'zod', + 'kysely', + 'viem', + 'viem/chains', + '@safe-global/safe-apps-sdk', + 'jsonwebtoken', + '@summerfi/serverless-shared', + ], + input: Object.fromEntries( + glob + .sync('src/**/*.{ts,tsx}') + .filter((file) => !file.endsWith('.d.ts')) + .map((file) => [ + relative('src', file.slice(0, file.length - extname(file).length)), + fileURLToPath(new URL(file, import.meta.url)), + ]), + ), + output: { + assetFileNames: 'assets/[name][extname]', + entryFileNames: '[name].js', + }, }, }, - }, + } }) diff --git a/packages/app-types/types/src/icons/index.ts b/packages/app-types/types/src/icons/index.ts index c29768d6e2..113c096647 100644 --- a/packages/app-types/types/src/icons/index.ts +++ b/packages/app-types/types/src/icons/index.ts @@ -214,6 +214,7 @@ export type IconNamesList = | 'trail_of_bits' | 'person' | 'discord' + | 'edit' export type TokenSymbolsList = | 'USDP' diff --git a/packages/app-ui/package.json b/packages/app-ui/package.json index a04f4c27b8..4650026b08 100644 --- a/packages/app-ui/package.json +++ b/packages/app-ui/package.json @@ -35,7 +35,7 @@ "jest": "29.7.0", "sass": "^1.77.8", "typescript": "^5.6.2", - "vite": "^5.4.8", + "vite": "^5.4.9", "vite-plugin-dts": "^4.2.2", "vite-plugin-lib-inject-css": "^2.1.1" }, diff --git a/packages/app-ui/vite.config.ts b/packages/app-ui/vite.config.ts index 6ddfc0df51..914213c986 100644 --- a/packages/app-ui/vite.config.ts +++ b/packages/app-ui/vite.config.ts @@ -76,8 +76,9 @@ export default defineConfig(({ mode }) => { }, }, customLogger: !notDev ? logger : undefined, + clearScreen: false, build: { - emptyOutDir: notDev, // in dev mode we cant just clear the dist folder + emptyOutDir: false, cssCodeSplit: true, sourcemap: false, cssMinify: notDev, diff --git a/packages/app-utils/package.json b/packages/app-utils/package.json index 770e956576..487426ee10 100644 --- a/packages/app-utils/package.json +++ b/packages/app-utils/package.json @@ -22,7 +22,7 @@ "scripts": { "lint": "eslint *.ts*", "dev": "pnpm vite build -w true", - "build": "pnpm vite build -w false", + "build": "pnpm vite build -w false", "clean": "rm -rf dist" }, "devDependencies": { @@ -33,7 +33,7 @@ "vite-plugin-node-polyfills": "^0.22.0", "eslint": "8.57.0", "typescript": "^5.6.2", - "vite": "^5.4.8", + "vite": "^5.4.9", "vite-plugin-dts": "^4.2.2", "glob": "^11.0.0" }, diff --git a/packages/app-utils/vite.config.ts b/packages/app-utils/vite.config.ts index 3d7ad1b766..03351200cf 100644 --- a/packages/app-utils/vite.config.ts +++ b/packages/app-utils/vite.config.ts @@ -1,7 +1,7 @@ import { glob } from 'glob' import { fileURLToPath } from 'node:url' import { extname, relative, resolve } from 'path' -import { defineConfig } from 'vite' +import { createLogger, defineConfig } from 'vite' // handles tsconfig paths from the tsconfig.json import tsconfigPaths from 'vite-tsconfig-paths' @@ -10,67 +10,80 @@ import dts from 'vite-plugin-dts' // preserves directives like "use client" in the output import preserveDirectives from 'rollup-preserve-directives' +const logger = createLogger() +const loggerInfo = logger.info + +logger.info = (msg, options) => { + if (msg.includes('dist')) return + loggerInfo(msg, options) +} + // https://vitejs.dev/config/ -export default defineConfig({ - plugins: [ - tsconfigPaths(), - preserveDirectives(), - { - // libInjectCss (with preserveDirectives) adds the css import to the top of the file - // this custom handle moves the directive ('use client') to the top of the file again - name: 'custom-swap-directive', - generateBundle(_, bundle) { - for (const chunk of Object.values(bundle)) { - if (chunk.type === 'chunk') { - if (chunk.code.includes('use client')) { - chunk.code = chunk.code.replace(/['"]use client['"];/, '') - chunk.code = `'use client';\n${chunk.code}` - } - if (chunk.code.includes('use server')) { - chunk.code = chunk.code.replace(/['"]use server['"];/, '') - chunk.code = `'use server';\n${chunk.code}` +export default defineConfig(({ mode }) => { + const notDev = mode !== 'dev' + return { + plugins: [ + tsconfigPaths(), + preserveDirectives(), + { + // libInjectCss (with preserveDirectives) adds the css import to the top of the file + // this custom handle moves the directive ('use client') to the top of the file again + name: 'custom-swap-directive', + generateBundle(_, bundle) { + for (const chunk of Object.values(bundle)) { + if (chunk.type === 'chunk') { + if (chunk.code.includes('use client')) { + chunk.code = chunk.code.replace(/['"]use client['"];/, '') + chunk.code = `'use client';\n${chunk.code}` + } + if (chunk.code.includes('use server')) { + chunk.code = chunk.code.replace(/['"]use server['"];/, '') + chunk.code = `'use server';\n${chunk.code}` + } } } - } + }, }, - }, - dts({ - outDir: 'dist/types', - insertTypesEntry: true, - strictOutput: true, - copyDtsFiles: true, - }), - ], - build: { - emptyOutDir: false, - lib: { - entry: { - index: resolve(__dirname, 'src/index.ts'), - rays: resolve(__dirname, 'src/rays/index.ts'), + dts({ + outDir: 'dist/types', + insertTypesEntry: true, + strictOutput: true, + copyDtsFiles: true, + }), + ], + customLogger: !notDev ? logger : undefined, + clearScreen: false, + build: { + emptyOutDir: false, + lib: { + entry: { + index: resolve(__dirname, 'src/index.ts'), + rays: resolve(__dirname, 'src/rays/index.ts'), + }, + formats: ['es'], }, - formats: ['es'], - }, - rollupOptions: { - input: Object.fromEntries( - glob - .sync('src/**/*.{ts,tsx}') - .filter((file) => !file.endsWith('.d.ts')) - .map((file) => [ - relative('src', file.slice(0, file.length - extname(file).length)), - fileURLToPath(new URL(file, import.meta.url)), - ]), - ), - external: [ - 'bignumber.js', - 'dayjs', - 'lodash-es', - '@summerfi/serverless-shared', - '@summerfi/app-types', - ], - output: { - assetFileNames: 'assets/[name][extname]', - entryFileNames: '[name].js', + rollupOptions: { + input: Object.fromEntries( + glob + .sync('src/**/*.{ts,tsx}') + .filter((file) => !file.endsWith('.d.ts')) + .map((file) => [ + relative('src', file.slice(0, file.length - extname(file).length)), + fileURLToPath(new URL(file, import.meta.url)), + ]), + ), + external: [ + 'bignumber.js', + 'dayjs', + 'lodash-es', + '@summerfi/serverless-shared', + '@summerfi/app-types', + ], + output: { + assetFileNames: 'assets/[name][extname]', + entryFileNames: '[name].js', + }, }, }, - }, + } }) diff --git a/packages/automation-subgraph/package.json b/packages/automation-subgraph/package.json index b5b2a60077..83cd9c0135 100644 --- a/packages/automation-subgraph/package.json +++ b/packages/automation-subgraph/package.json @@ -6,8 +6,8 @@ "types": "dist/index.d.ts", "scripts": { "test": "jest --passWithNoTests", - "build": "tsc -b -v", - "dev": "tsc -b -w", + "build": "tsc -b --preserveWatchOutput -v", + "dev": "tsc -b --preserveWatchOutput -w", "prebuild": "pnpm run generate-ts-types", "generate-ts-types": "graphql-codegen --config graphql.config.yml", "lint": "eslint .", diff --git a/packages/borrow-db/package.json b/packages/borrow-db/package.json index b05ec8d9d4..0bee18f324 100644 --- a/packages/borrow-db/package.json +++ b/packages/borrow-db/package.json @@ -5,8 +5,8 @@ "types": "dist/index.d.ts", "scripts": { "test": "jest --passWithNoTests", - "build": "tsc -b -v tsconfig.build.json", - "dev": "tsc -b -w tsconfig.build.json", + "build": "tsc -b --preserveWatchOutput -v tsconfig.build.json", + "dev": "tsc -b --preserveWatchOutput -w tsconfig.build.json", "lint": "eslint .", "lint:fix": "eslint . --fix", "codegen": "kysely-codegen --camel-case --out-file ./src/database-types.ts" diff --git a/packages/common/package.json b/packages/common/package.json index 96a1f98cf7..dcac211263 100644 --- a/packages/common/package.json +++ b/packages/common/package.json @@ -12,8 +12,8 @@ "scripts": { "test": "jest --passWithNoTests", "testw": "jest --watch", - "build": "tsc -b -v ", - "dev": "tsc -b -w", + "build": "tsc -b --preserveWatchOutput -v ", + "dev": "tsc -b --preserveWatchOutput -w", "lint": "eslint .", "lint:fix": "eslint . --fix" }, diff --git a/packages/contracts-utils/package.json b/packages/contracts-utils/package.json index 68323cf154..6af9eb5163 100644 --- a/packages/contracts-utils/package.json +++ b/packages/contracts-utils/package.json @@ -5,8 +5,8 @@ "types": "dist/index.d.ts", "scripts": { "tsc": "tsc", - "build": "tsc -b -v", - "dev": "tsc -b -w", + "build": "tsc -b --preserveWatchOutput -v", + "dev": "tsc -b --preserveWatchOutput -w", "lint": "eslint .", "lint:fix": "eslint . --fix" }, diff --git a/packages/core-contracts/package.json b/packages/core-contracts/package.json index b5df96ea25..6e12ef29dc 100644 --- a/packages/core-contracts/package.json +++ b/packages/core-contracts/package.json @@ -17,8 +17,8 @@ "tsc": "tsc", "watch": "tsc -w", "test": "jest --passWithNoTests", - "build": "tsc -b tsconfig.build.json", - "dev": "tsc -b tsconfig.build.json -w", + "build": "tsc -b --preserveWatchOutput tsconfig.build.json", + "dev": "tsc -b --preserveWatchOutput tsconfig.build.json -w", "lint": "eslint .", "lint:fix": "eslint . --fix", "gen-versions": "hardhat run scripts/generate-versions.ts", diff --git a/packages/defi-llama-client/package.json b/packages/defi-llama-client/package.json index 984ad495b1..b2475c067a 100644 --- a/packages/defi-llama-client/package.json +++ b/packages/defi-llama-client/package.json @@ -5,8 +5,8 @@ "types": "dist/index.d.ts", "scripts": { "test": "jest --passWithNoTests", - "build": "tsc -b -v", - "dev": "tsc -b -w", + "build": "tsc -b --preserveWatchOutput -v", + "dev": "tsc -b --preserveWatchOutput -w", "lint": "eslint .", "lint:fix": "eslint . --fix" }, diff --git a/packages/deployment-configs/package.json b/packages/deployment-configs/package.json index a0d89c86b8..28145171be 100644 --- a/packages/deployment-configs/package.json +++ b/packages/deployment-configs/package.json @@ -10,8 +10,8 @@ } }, "scripts": { - "build": "tsc -b tsconfig.build.json", - "dev": "tsc -b tsconfig.build.json -w", + "build": "tsc -b --preserveWatchOutput tsconfig.build.json", + "dev": "tsc -b --preserveWatchOutput tsconfig.build.json -w", "lint": "eslint .", "lint:fix": "eslint . --fix" }, diff --git a/packages/deployment-types/package.json b/packages/deployment-types/package.json index d21b9699f2..130e4dd0a3 100644 --- a/packages/deployment-types/package.json +++ b/packages/deployment-types/package.json @@ -10,8 +10,8 @@ } }, "scripts": { - "build": "tsc -b tsconfig.json", - "dev": "tsc -b tsconfig.json -w", + "build": "tsc -b --preserveWatchOutput tsconfig.json", + "dev": "tsc -b --preserveWatchOutput tsconfig.json -w", "lint": "eslint .", "lint:fix": "eslint . --fix" }, diff --git a/packages/deployment-utils/package.json b/packages/deployment-utils/package.json index 2251d86423..5c6aefafe5 100644 --- a/packages/deployment-utils/package.json +++ b/packages/deployment-utils/package.json @@ -10,8 +10,8 @@ } }, "scripts": { - "build": "tsc -b tsconfig.json", - "dev": "tsc -b tsconfig.json -w", + "build": "tsc -b --preserveWatchOutput tsconfig.json", + "dev": "tsc -b --preserveWatchOutput tsconfig.json -w", "lint": "eslint .", "lint:fix": "eslint . --fix" }, diff --git a/packages/hardhat-utils/package.json b/packages/hardhat-utils/package.json index c77d951d97..b3949623b6 100644 --- a/packages/hardhat-utils/package.json +++ b/packages/hardhat-utils/package.json @@ -12,7 +12,7 @@ "scripts": { "tsc": "tsc", "watch": "tsc -w", - "build": "tsc -b -v", + "build": "tsc -b --preserveWatchOutput -v", "lint": "eslint .", "lint:fix": "eslint . --fix" }, diff --git a/packages/morpho-blue-external-api-client/package.json b/packages/morpho-blue-external-api-client/package.json index ebcfc23ff3..7693fcf129 100644 --- a/packages/morpho-blue-external-api-client/package.json +++ b/packages/morpho-blue-external-api-client/package.json @@ -5,8 +5,8 @@ "types": "dist/index.d.ts", "scripts": { "test": "jest --passWithNoTests", - "build": "tsc -b -v", - "dev": "tsc -b -w", + "build": "tsc -b --preserveWatchOutput -v", + "dev": "tsc -b --preserveWatchOutput -w", "prebuild": "pnpm run generate-ts-types", "generate-ts-types": "graphql-codegen --config graphql.config.yml", "lint": "eslint .", diff --git a/packages/morpho-blue-subgraph/package.json b/packages/morpho-blue-subgraph/package.json index d88312f431..6079847b4a 100644 --- a/packages/morpho-blue-subgraph/package.json +++ b/packages/morpho-blue-subgraph/package.json @@ -7,8 +7,8 @@ "tsc": "tsc", "watch": "tsc -w", "test": "jest --passWithNoTests", - "build": "tsc -b -v", - "dev": "tsc -b -w", + "build": "tsc -b --preserveWatchOutput -v", + "dev": "tsc -b --preserveWatchOutput -w", "prebuild": "pnpm run generate-ts-types", "generate-ts-types": "graphql-codegen --config graphql.config.yml", "lint": "eslint .", diff --git a/packages/prices-subgraph/package.json b/packages/prices-subgraph/package.json index ad5b9c1ff5..0c950c1342 100644 --- a/packages/prices-subgraph/package.json +++ b/packages/prices-subgraph/package.json @@ -6,8 +6,8 @@ "types": "dist/index.d.ts", "scripts": { "test": "jest --passWithNoTests", - "build": "tsc -b -v", - "dev": "tsc -b -w", + "build": "tsc -b --preserveWatchOutput -v", + "dev": "tsc -b --preserveWatchOutput -w", "prebuild": "pnpm run generate-ts-types", "generate-ts-types": "graphql-codegen --config graphql.config.yml", "lint": "eslint .", diff --git a/packages/rays-db/package.json b/packages/rays-db/package.json index 112fa9d784..e1eaa12686 100644 --- a/packages/rays-db/package.json +++ b/packages/rays-db/package.json @@ -5,8 +5,8 @@ "types": "dist/index.d.ts", "scripts": { "test": "jest --passWithNoTests", - "build": "tsc -b -v tsconfig.build.json", - "dev": "tsc -b -w tsconfig.build.json", + "build": "tsc -b --preserveWatchOutput -v tsconfig.build.json", + "dev": "tsc -b --preserveWatchOutput -w tsconfig.build.json", "lint": "eslint .", "lint:fix": "eslint . --fix", "migrate:latest": "tsx src/scripts/local-migrate-latest.ts", diff --git a/packages/redis-cache/package.json b/packages/redis-cache/package.json index 31148d46a2..6c0d1529ed 100644 --- a/packages/redis-cache/package.json +++ b/packages/redis-cache/package.json @@ -5,8 +5,8 @@ "types": "dist/index.d.ts", "scripts": { "test": "jest --passWithNoTests", - "build": "tsc -b -v", - "dev": "tsc -b -w", + "build": "tsc -b --preserveWatchOutput -v", + "dev": "tsc -b --preserveWatchOutput -w", "lint": "eslint .", "lint:fix": "eslint . --fix" }, diff --git a/packages/serverless-shared/package.json b/packages/serverless-shared/package.json index 59c915a565..c0ea38f8cc 100644 --- a/packages/serverless-shared/package.json +++ b/packages/serverless-shared/package.json @@ -6,8 +6,8 @@ "tsc": "tsc", "watch": "tsc -w", "test": "jest --passWithNoTests", - "build": "tsc -b", - "dev": "tsc -b -w", + "build": "tsc -b --preserveWatchOutput", + "dev": "tsc -b --preserveWatchOutput -w", "lint": "eslint .", "lint:fix": "eslint . --fix" }, diff --git a/packages/summer-earn-protocol-subgraph/package.json b/packages/summer-earn-protocol-subgraph/package.json index 0275ed5297..6e48115445 100644 --- a/packages/summer-earn-protocol-subgraph/package.json +++ b/packages/summer-earn-protocol-subgraph/package.json @@ -13,8 +13,8 @@ "prebuild": "DOTENV_CONFIG_PATH=../../.env graphql-codegen -r dotenv/config", "tsc": "tsc", "watch": "tsc -w", - "build": "tsc -b -v tsconfig.build.json", - "dev": "tsc -b -v -w tsconfig.build.json", + "build": "tsc -b --preserveWatchOutput -v tsconfig.build.json", + "dev": "tsc -b --preserveWatchOutput -v -w tsconfig.build.json", "test": "jest --passWithNoTests", "lint": "eslint .", "lint:fix": "eslint . --fix" diff --git a/packages/summer-events-subgraph/package.json b/packages/summer-events-subgraph/package.json index 81dc5fde6a..b30359ff98 100644 --- a/packages/summer-events-subgraph/package.json +++ b/packages/summer-events-subgraph/package.json @@ -6,8 +6,8 @@ "types": "dist/index.d.ts", "scripts": { "test": "jest --passWithNoTests", - "build": "tsc -b -v", - "dev": "tsc -b -w", + "build": "tsc -b --preserveWatchOutput -v", + "dev": "tsc -b --preserveWatchOutput -w", "prebuild": "pnpm run generate-ts-types", "generate-ts-types": "graphql-codegen --config graphql.config.yml", "lint": "eslint .", diff --git a/packages/summer-protocol-db/package.json b/packages/summer-protocol-db/package.json index 9aa20211a8..251ec1f858 100644 --- a/packages/summer-protocol-db/package.json +++ b/packages/summer-protocol-db/package.json @@ -5,8 +5,8 @@ "types": "dist/index.d.ts", "scripts": { "test": "jest --passWithNoTests", - "build": "tsc -b -v tsconfig.build.json", - "dev": "tsc -b -w tsconfig.build.json", + "build": "tsc -b --preserveWatchOutput -v tsconfig.build.json", + "dev": "tsc -b --preserveWatchOutput -w tsconfig.build.json", "lint": "eslint .", "lint:fix": "eslint . --fix", "migrate:latest": "tsx src/scripts/local-migrate-latest.ts", diff --git a/packages/triggers-calculations/package.json b/packages/triggers-calculations/package.json index 3a6b55c67b..525d5f6f53 100644 --- a/packages/triggers-calculations/package.json +++ b/packages/triggers-calculations/package.json @@ -3,8 +3,8 @@ "version": "1.0.0", "scripts": { "test": "jest --passWithNoTests", - "build": "tsc -b -v", - "dev": "tsc -b -w", + "build": "tsc -b --preserveWatchOutput -v", + "dev": "tsc -b --preserveWatchOutput -w", "lint": "eslint .", "lint:fix": "eslint . --fix" }, diff --git a/packages/triggers-shared/package.json b/packages/triggers-shared/package.json index 1d0fefa9ac..9da115b8a5 100644 --- a/packages/triggers-shared/package.json +++ b/packages/triggers-shared/package.json @@ -4,8 +4,8 @@ "type": "module", "scripts": { "test": "jest --passWithNoTests", - "build": "tsc -b -v", - "dev": "tsc -b -w", + "build": "tsc -b --preserveWatchOutput -v", + "dev": "tsc -b --preserveWatchOutput -w", "lint": "eslint .", "lint:fix": "eslint . --fix" }, diff --git a/packages/typescript-config/tsconfig.base.json b/packages/typescript-config/tsconfig.base.json index 59fb44a5fa..56cc2aea8e 100644 --- a/packages/typescript-config/tsconfig.base.json +++ b/packages/typescript-config/tsconfig.base.json @@ -1,6 +1,7 @@ { "extends": "@tsconfig/node20/tsconfig.json", "compilerOptions": { + "preserveWatchOutput": true, "lib": ["es2022"], "target": "es2022", "module": "ES2022", diff --git a/packages/typescript-config/tsconfig.nextjs.json b/packages/typescript-config/tsconfig.nextjs.json index 50f11f642f..31d88c88f9 100644 --- a/packages/typescript-config/tsconfig.nextjs.json +++ b/packages/typescript-config/tsconfig.nextjs.json @@ -3,10 +3,12 @@ "display": "Next.js", "extends": "./tsconfig.base.json", "compilerOptions": { + "preserveWatchOutput": true, "plugins": [{ "name": "next" }], "incremental": true, "allowJs": true, - "jsx": "preserve" + "jsx": "preserve", + "types": ["node", "jest", "jest-extended"] }, "include": ["src", "next-env.d.ts"], "exclude": ["node_modules"] diff --git a/packages/typescript-config/tsconfig.test.json b/packages/typescript-config/tsconfig.test.json index 0873b50ee4..c8ed5b0f85 100644 --- a/packages/typescript-config/tsconfig.test.json +++ b/packages/typescript-config/tsconfig.test.json @@ -1,6 +1,7 @@ { "extends": "./tsconfig.base.json", "compilerOptions": { + "preserveWatchOutput": true, "noEmit": true, "types": ["node", "jest", "jest-extended"], "rootDir": ".", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index fae3ee7f54..11fa558195 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -142,17 +142,17 @@ importers: apps/earn-protocol: dependencies: '@account-kit/core': - specifier: ^4.0.0-beta.10 - version: 4.0.0-beta.10(@babel/core@7.24.7)(@babel/preset-env@7.24.7)(@types/react@18.3.1)(immer@9.0.21)(react@18.3.1)(typescript@5.6.2)(viem@2.9.19)(wagmi@2.10.9) + specifier: ^4.0.0 + version: 4.0.0(@babel/core@7.24.7)(@babel/preset-env@7.24.7)(@types/react@18.3.1)(immer@9.0.21)(react@18.3.1)(typescript@5.6.2)(viem@2.9.19)(wagmi@2.10.9) '@account-kit/infra': - specifier: ^4.0.0-beta.10 - version: 4.0.0-beta.10(typescript@5.6.2)(viem@2.9.19) + specifier: ^4.0.0 + version: 4.0.0(typescript@5.6.2)(viem@2.9.19) '@account-kit/react': - specifier: ^4.0.0-beta.10 - version: 4.0.0-beta.10(@babel/core@7.24.7)(@babel/preset-env@7.24.7)(@tanstack/react-query@5.51.1)(@types/react@18.3.1)(@wagmi/core@2.13.8)(immer@9.0.21)(react-dom@18.3.1)(react-native@0.74.3)(react@18.3.1)(rollup@3.29.4)(tailwindcss@3.4.13)(typescript@5.6.2)(viem@2.9.19)(wagmi@2.10.9) + specifier: ^4.0.0 + version: 4.0.0(@babel/core@7.24.7)(@babel/preset-env@7.24.7)(@tanstack/react-query@5.51.1)(@types/react@18.3.1)(@wagmi/core@2.13.8)(immer@9.0.21)(react-dom@18.3.1)(react-native@0.74.3)(react@18.3.1)(rollup@3.29.4)(tailwindcss@3.4.13)(typescript@5.6.2)(viem@2.9.19)(wagmi@2.10.9) '@account-kit/signer': - specifier: ^4.0.0-beta.10 - version: 4.0.0-beta.10(@babel/core@7.24.7)(@babel/preset-env@7.24.7)(@types/react@18.3.1)(react@18.3.1)(typescript@5.6.2)(viem@2.9.19) + specifier: ^4.0.0 + version: 4.0.0(@babel/core@7.24.7)(@babel/preset-env@7.24.7)(@types/react@18.3.1)(react@18.3.1)(typescript@5.6.2)(viem@2.9.19) '@alchemy/aa-accounts': specifier: 3.19.0 version: 3.19.0(typescript@5.6.2)(viem@2.9.19) @@ -794,6 +794,12 @@ importers: clsx: specifier: ^2.1.1 version: 2.1.1 + embla-carousel: + specifier: 8.3.0 + version: 8.3.0 + embla-carousel-react: + specifier: 8.3.0 + version: 8.3.0(react@18.3.1) include-media: specifier: 2.0.0 version: 2.0.0 @@ -823,7 +829,7 @@ importers: version: 3.1.0(react@18.3.1) vite-tsconfig-paths: specifier: ^4.3.2 - version: 4.3.2(typescript@5.6.2)(vite@5.4.8) + version: 4.3.2(typescript@5.6.2)(vite@5.4.9) devDependencies: '@summerfi/app-token-config': specifier: workspace:* @@ -854,7 +860,10 @@ importers: version: 18.3.0 '@vitejs/plugin-react-swc': specifier: ^3.7.0 - version: 3.7.0(vite@5.4.8) + version: 3.7.0(vite@5.4.9) + concurrently: + specifier: ^9.0.1 + version: 9.0.1 eslint: specifier: 8.57.0 version: 8.57.0 @@ -864,21 +873,24 @@ importers: jest: specifier: 29.7.0 version: 29.7.0(@types/node@20.12.7) + resolve-tspaths: + specifier: ^0.8.22 + version: 0.8.22(typescript@5.6.2) sass: specifier: ^1.77.8 version: 1.77.8 + tsc-watch: + specifier: ^6.2.0 + version: 6.2.0(typescript@5.6.2) typescript: specifier: ^5.6.2 version: 5.6.2 vite: - specifier: ^5.4.8 - version: 5.4.8(@types/node@20.12.7)(sass@1.77.8) - vite-plugin-dts: - specifier: ^4.2.2 - version: 4.2.2(@types/node@20.12.7)(rollup@4.22.4)(typescript@5.6.2)(vite@5.4.8) + specifier: ^5.4.9 + version: 5.4.9(@types/node@20.12.7)(sass@1.77.8) vite-plugin-lib-inject-css: specifier: ^2.1.1 - version: 2.1.1(vite@5.4.8) + version: 2.1.1(vite@5.4.9) packages/app-icons: dependencies: @@ -886,8 +898,8 @@ importers: specifier: ^5.16.4 version: 5.16.4(react@18.3.1) vite-plugin-dts: - specifier: ^4.2.2 - version: 4.2.2(@types/node@20.12.7)(rollup@4.22.4)(typescript@5.6.2)(vite@5.4.8) + specifier: ^4.2.4 + version: 4.2.4(@types/node@20.12.7)(typescript@5.6.2)(vite@5.4.8) vite-plugin-svgo: specifier: 1.4.0 version: 1.4.0(typescript@5.6.2)(vite@5.4.8) @@ -918,7 +930,7 @@ importers: version: 5.6.2 vite: specifier: ^5.4.8 - version: 5.4.8(@types/node@20.12.7)(sass@1.77.8) + version: 5.4.8(@types/node@20.12.7) packages/app-risk: dependencies: @@ -936,7 +948,7 @@ importers: version: 1.1.1(rollup@4.22.4) vite-tsconfig-paths: specifier: ^4.3.2 - version: 4.3.2(typescript@5.6.2)(vite@5.4.8) + version: 4.3.2(typescript@5.6.2)(vite@5.4.9) zod: specifier: ^3.22.4 version: 3.22.4 @@ -952,7 +964,7 @@ importers: version: 18.3.1 '@vitejs/plugin-react-swc': specifier: ^3.7.0 - version: 3.7.0(vite@5.4.8) + version: 3.7.0(vite@5.4.9) eslint: specifier: 8.57.0 version: 8.57.0 @@ -963,11 +975,11 @@ importers: specifier: ^5.6.2 version: 5.6.2 vite: - specifier: ^5.4.8 - version: 5.4.8(@types/node@20.12.7)(sass@1.77.8) + specifier: ^5.4.9 + version: 5.4.9(@types/node@20.12.7)(sass@1.77.8) vite-plugin-dts: - specifier: ^4.2.2 - version: 4.2.2(@types/node@20.12.7)(rollup@4.22.4)(typescript@5.6.2)(vite@5.4.8) + specifier: ^4.2.4 + version: 4.2.4(@types/node@20.12.7)(rollup@4.22.4)(typescript@5.6.2)(vite@5.4.9) packages/app-token-config: dependencies: @@ -1003,7 +1015,7 @@ importers: version: 2.9.19(typescript@5.6.2)(zod@3.22.4) vite-tsconfig-paths: specifier: ^4.3.2 - version: 4.3.2(typescript@5.6.2)(vite@5.4.8) + version: 4.3.2(typescript@5.6.2)(vite@5.4.9) zod: specifier: ^3.22.4 version: 3.22.4 @@ -1025,25 +1037,34 @@ importers: version: 18.3.1 '@vitejs/plugin-react-swc': specifier: ^3.7.0 - version: 3.7.0(vite@5.4.8) + version: 3.7.0(vite@5.4.9) + concurrently: + specifier: ^9.0.1 + version: 9.0.1 eslint: specifier: 8.57.0 version: 8.57.0 glob: specifier: ^11.0.0 version: 11.0.0 + resolve-tspaths: + specifier: ^0.8.22 + version: 0.8.22(typescript@5.6.2) + tsc-watch: + specifier: ^6.2.0 + version: 6.2.0(typescript@5.6.2) typescript: specifier: ^5.6.2 version: 5.6.2 vite: - specifier: ^5.4.8 - version: 5.4.8(@types/node@20.12.7)(sass@1.77.8) + specifier: ^5.4.9 + version: 5.4.9(@types/node@20.12.7)(sass@1.77.8) vite-plugin-dts: - specifier: ^4.2.2 - version: 4.2.2(@types/node@20.12.7)(rollup@4.22.4)(typescript@5.6.2)(vite@5.4.8) + specifier: ^4.2.4 + version: 4.2.4(@types/node@20.12.7)(rollup@4.22.4)(typescript@5.6.2)(vite@5.4.9) vite-plugin-node-polyfills: specifier: ^0.22.0 - version: 0.22.0(rollup@4.22.4)(vite@5.4.8) + version: 0.22.0(rollup@4.22.4)(vite@5.4.9) packages/app-types: dependencies: @@ -1131,7 +1152,7 @@ importers: version: 3.1.0(react@18.3.1) vite-tsconfig-paths: specifier: ^4.3.2 - version: 4.3.2(typescript@5.6.2)(vite@5.4.8) + version: 4.3.2(typescript@5.6.2)(vite@5.4.9) devDependencies: '@summerfi/app-token-config': specifier: workspace:* @@ -1162,7 +1183,7 @@ importers: version: 18.3.0 '@vitejs/plugin-react-swc': specifier: ^3.7.0 - version: 3.7.0(vite@5.4.8) + version: 3.7.0(vite@5.4.9) eslint: specifier: 8.57.0 version: 8.57.0 @@ -1179,14 +1200,14 @@ importers: specifier: ^5.6.2 version: 5.6.2 vite: - specifier: ^5.4.8 - version: 5.4.8(@types/node@20.12.7)(sass@1.77.8) + specifier: ^5.4.9 + version: 5.4.9(@types/node@20.12.7)(sass@1.77.8) vite-plugin-dts: specifier: ^4.2.2 - version: 4.2.2(@types/node@20.12.7)(rollup@4.22.4)(typescript@5.6.2)(vite@5.4.8) + version: 4.2.4(@types/node@20.12.7)(rollup@4.22.4)(typescript@5.6.2)(vite@5.4.9) vite-plugin-lib-inject-css: specifier: ^2.1.1 - version: 2.1.1(vite@5.4.8) + version: 2.1.1(vite@5.4.9) packages/app-utils: dependencies: @@ -1204,7 +1225,7 @@ importers: version: 1.1.1(rollup@4.22.4) vite-tsconfig-paths: specifier: ^4.3.2 - version: 4.3.2(typescript@5.6.2)(vite@5.4.8) + version: 4.3.2(typescript@5.6.2)(vite@5.4.9) devDependencies: '@summerfi/app-types': specifier: workspace:* @@ -1228,14 +1249,14 @@ importers: specifier: ^5.6.2 version: 5.6.2 vite: - specifier: ^5.4.8 - version: 5.4.8(@types/node@20.12.7)(sass@1.77.8) + specifier: ^5.4.9 + version: 5.4.9(@types/node@20.12.7)(sass@1.77.8) vite-plugin-dts: specifier: ^4.2.2 - version: 4.2.2(@types/node@20.12.7)(rollup@4.22.4)(typescript@5.6.2)(vite@5.4.8) + version: 4.2.4(@types/node@20.12.7)(rollup@4.22.4)(typescript@5.6.2)(vite@5.4.9) vite-plugin-node-polyfills: specifier: ^0.22.0 - version: 0.22.0(rollup@4.22.4)(vite@5.4.8) + version: 0.22.0(rollup@4.22.4)(vite@5.4.9) packages/automation-subgraph: dependencies: @@ -3881,8 +3902,8 @@ importers: packages: - /@aa-sdk/core@4.0.0-beta.10(typescript@5.6.2)(viem@2.9.19): - resolution: {integrity: sha512-9kLOng/oNCCIczcST0UVETKuGLslHsZ+h3GkcqaCMXHSm3gw4nTG3/eLHyVaNXj37uIl3fngvvsVWV7Hx9T9bw==} + /@aa-sdk/core@4.0.0(typescript@5.6.2)(viem@2.9.19): + resolution: {integrity: sha512-7O9IRxo6eSaraLkVfQ3N7Nb5rexjWOCYgEVcwELAl5gaGRW5DMvDp96gTSjb/s8UnpY9+IvTeuI980jasSjF+A==} peerDependencies: viem: ^2.20.0 dependencies: @@ -3899,16 +3920,16 @@ packages: engines: {node: '>=0.10.0'} dev: true - /@account-kit/core@4.0.0-beta.10(@babel/core@7.24.7)(@babel/preset-env@7.24.7)(@types/react@18.3.1)(immer@9.0.21)(react@18.3.1)(typescript@5.6.2)(viem@2.9.19)(wagmi@2.10.9): - resolution: {integrity: sha512-z7+/7GNSE0ZBosBzEkLe1/HsGmqcehdgmiJOFT/y2mLiFgVCa8TPgW/fPIbkzLZQzRqofsp1yHJ9gnBq8Nxxng==} + /@account-kit/core@4.0.0(@babel/core@7.24.7)(@babel/preset-env@7.24.7)(@types/react@18.3.1)(immer@9.0.21)(react@18.3.1)(typescript@5.6.2)(viem@2.9.19)(wagmi@2.10.9): + resolution: {integrity: sha512-WIvQeGUzBQgBWS/wp7HmVBVTisoanFcp8VQEkigETeDtQyHH6nx/6EFaH+WoW/uRgR7D4MNekWWrqVyNuqJ+hw==} peerDependencies: viem: ^2.20.0 wagmi: ^2.12.7 dependencies: - '@account-kit/infra': 4.0.0-beta.10(typescript@5.6.2)(viem@2.9.19) - '@account-kit/logging': 4.0.0-beta.10 - '@account-kit/signer': 4.0.0-beta.10(@babel/core@7.24.7)(@babel/preset-env@7.24.7)(@types/react@18.3.1)(react@18.3.1)(typescript@5.6.2)(viem@2.9.19) - '@account-kit/smart-contracts': 4.0.0-beta.10(typescript@5.6.2)(viem@2.9.19) + '@account-kit/infra': 4.0.0(typescript@5.6.2)(viem@2.9.19) + '@account-kit/logging': 4.0.0 + '@account-kit/signer': 4.0.0(@babel/core@7.24.7)(@babel/preset-env@7.24.7)(@types/react@18.3.1)(react@18.3.1)(typescript@5.6.2)(viem@2.9.19) + '@account-kit/smart-contracts': 4.0.0(typescript@5.6.2)(viem@2.9.19) js-cookie: 3.0.5 viem: 2.9.19(typescript@5.6.2)(zod@3.22.4) wagmi: 2.10.9(@tanstack/react-query@5.51.1)(@types/react@18.3.1)(immer@9.0.21)(react-dom@18.3.1)(react-native@0.74.3)(react@18.3.1)(rollup@3.29.4)(typescript@5.6.2)(viem@2.9.19)(zod@3.22.4) @@ -3931,13 +3952,13 @@ packages: - utf-8-validate dev: false - /@account-kit/infra@4.0.0-beta.10(typescript@5.6.2)(viem@2.9.19): - resolution: {integrity: sha512-fsHanoNyWPXgPA1LciHCHVyxociI++WG8Rx2wweMDIyeUEd+PGQi8RdUAneqZPN0hFVYGuhW8YhngokWaqyWbA==} + /@account-kit/infra@4.0.0(typescript@5.6.2)(viem@2.9.19): + resolution: {integrity: sha512-Nzaa6OjABbDD4l+ZRg4OvXlQ5VhuYbdz9N9WBF3abutnana38yf/1EBxOXqJOaSCKZCw9D3TDaxxF4EIMA3cRg==} peerDependencies: viem: ^2.20.0 dependencies: - '@aa-sdk/core': 4.0.0-beta.10(typescript@5.6.2)(viem@2.9.19) - '@account-kit/logging': 4.0.0-beta.10 + '@aa-sdk/core': 4.0.0(typescript@5.6.2)(viem@2.9.19) + '@account-kit/logging': 4.0.0 eventemitter3: 5.0.1 viem: 2.9.19(typescript@5.6.2)(zod@3.22.4) zod: 3.22.4 @@ -3952,8 +3973,8 @@ packages: - utf-8-validate dev: false - /@account-kit/logging@4.0.0-beta.10: - resolution: {integrity: sha512-k+QVSpFkuI0ilL9CFw4IimpCL0zbrjptaFAk8yLScvS0q4v5iARpUT5j2ny6CoUw3Wwus1de9cXkmrPOj60KPw==} + /@account-kit/logging@4.0.0: + resolution: {integrity: sha512-wFW2q3MMMVOMuGrl9iT01ESrohkC2Y+sDnjLDBFZUpxGP8VVDYA15+IhMjw5uolHHnPnCWbWUoJVjSg0AIAEnQ==} dependencies: '@segment/analytics-next': 1.75.0 uuidv4: 6.2.13 @@ -3961,8 +3982,8 @@ packages: - encoding dev: false - /@account-kit/react@4.0.0-beta.10(@babel/core@7.24.7)(@babel/preset-env@7.24.7)(@tanstack/react-query@5.51.1)(@types/react@18.3.1)(@wagmi/core@2.13.8)(immer@9.0.21)(react-dom@18.3.1)(react-native@0.74.3)(react@18.3.1)(rollup@3.29.4)(tailwindcss@3.4.13)(typescript@5.6.2)(viem@2.9.19)(wagmi@2.10.9): - resolution: {integrity: sha512-7ZnRLYhcZJHLaLGYXXL1Dg7ckqUFAHi6vcHzh38wMK9SEp5IwrsbEv8f2ptyClrc4Q3UjKCKxIWbSESXu1uYQw==} + /@account-kit/react@4.0.0(@babel/core@7.24.7)(@babel/preset-env@7.24.7)(@tanstack/react-query@5.51.1)(@types/react@18.3.1)(@wagmi/core@2.13.8)(immer@9.0.21)(react-dom@18.3.1)(react-native@0.74.3)(react@18.3.1)(rollup@3.29.4)(tailwindcss@3.4.13)(typescript@5.6.2)(viem@2.9.19)(wagmi@2.10.9): + resolution: {integrity: sha512-5KhTtglzhhT892oSeN1GjskcitBqoN9IJmMpqLVbkOD5CEDQz2wuISCUwBm8xbHNzfXil92FmBzwGNmjCXbTww==} peerDependencies: '@tanstack/react-query': ^5.28.9 react: ^18.2.0 @@ -3971,9 +3992,9 @@ packages: viem: ^2.20.0 wagmi: ^2.12.7 dependencies: - '@account-kit/core': 4.0.0-beta.10(@babel/core@7.24.7)(@babel/preset-env@7.24.7)(@types/react@18.3.1)(immer@9.0.21)(react@18.3.1)(typescript@5.6.2)(viem@2.9.19)(wagmi@2.10.9) - '@account-kit/infra': 4.0.0-beta.10(typescript@5.6.2)(viem@2.9.19) - '@account-kit/logging': 4.0.0-beta.10 + '@account-kit/core': 4.0.0(@babel/core@7.24.7)(@babel/preset-env@7.24.7)(@types/react@18.3.1)(immer@9.0.21)(react@18.3.1)(typescript@5.6.2)(viem@2.9.19)(wagmi@2.10.9) + '@account-kit/infra': 4.0.0(typescript@5.6.2)(viem@2.9.19) + '@account-kit/logging': 4.0.0 '@tanstack/react-form': 0.33.0(react-dom@18.3.1)(react@18.3.1)(typescript@5.6.2) '@tanstack/react-query': 5.51.1(react@18.3.1) '@tanstack/zod-form-adapter': 0.33.0(zod@3.22.4) @@ -4020,13 +4041,13 @@ packages: - utf-8-validate dev: false - /@account-kit/signer@4.0.0-beta.10(@babel/core@7.24.7)(@babel/preset-env@7.24.7)(@types/react@18.3.1)(react@18.3.1)(typescript@5.6.2)(viem@2.9.19): - resolution: {integrity: sha512-u/yeuIcioSkod3AHcfcwQ0TBSr5WasW5jIcooVJRdV1QuMfHAznM0VjuxxTYguIwdA95349ux3Oj5xzeMT4T6g==} + /@account-kit/signer@4.0.0(@babel/core@7.24.7)(@babel/preset-env@7.24.7)(@types/react@18.3.1)(react@18.3.1)(typescript@5.6.2)(viem@2.9.19): + resolution: {integrity: sha512-Hs3WbIwlFKT8+td3/emBtQRHTLuv7GhACYn0ezWQ/mHSKLf+p1+St1YpCEvpsGUOmFjC1HGF3tRixbKvVNU0kA==} peerDependencies: viem: ^2.20.0 dependencies: - '@aa-sdk/core': 4.0.0-beta.10(typescript@5.6.2)(viem@2.9.19) - '@account-kit/logging': 4.0.0-beta.10 + '@aa-sdk/core': 4.0.0(typescript@5.6.2)(viem@2.9.19) + '@account-kit/logging': 4.0.0 '@turnkey/http': 2.10.0 '@turnkey/iframe-stamper': 1.2.0 '@turnkey/viem': 0.4.22(@babel/core@7.24.7)(@babel/preset-env@7.24.7)(@types/react@18.3.1)(react@18.3.1)(viem@2.9.19) @@ -4046,13 +4067,13 @@ packages: - utf-8-validate dev: false - /@account-kit/smart-contracts@4.0.0-beta.10(typescript@5.6.2)(viem@2.9.19): - resolution: {integrity: sha512-0zMvhb499Q/46bKHIwNU3+wPEsSx8cew0d5XNyQIgbu3XbRuaZbdmlbtkfQ0jEfoVQkUIQqMQXBH2CX4k7x9aQ==} + /@account-kit/smart-contracts@4.0.0(typescript@5.6.2)(viem@2.9.19): + resolution: {integrity: sha512-+WCIlZDo0CwikHsbhm8ikTiZBR+hqpSDo5eVW0WBNznkDQ+x2MGpoHZlRJ9UnEyZwV0q79RMQELhz70cl3DXdA==} peerDependencies: viem: ^2.20.0 dependencies: - '@aa-sdk/core': 4.0.0-beta.10(typescript@5.6.2)(viem@2.9.19) - '@account-kit/infra': 4.0.0-beta.10(typescript@5.6.2)(viem@2.9.19) + '@aa-sdk/core': 4.0.0(typescript@5.6.2)(viem@2.9.19) + '@account-kit/infra': 4.0.0(typescript@5.6.2)(viem@2.9.19) viem: 2.9.19(typescript@5.6.2)(zod@3.22.4) transitivePeerDependencies: - bufferutil @@ -6184,7 +6205,7 @@ packages: engines: {node: '>=6.9.0'} dependencies: '@babel/traverse': 7.24.7 - '@babel/types': 7.24.7 + '@babel/types': 7.25.8 transitivePeerDependencies: - supports-color dev: false @@ -6496,6 +6517,10 @@ packages: resolution: {integrity: sha512-7MbVt6xrwFQbunH2DNQsAP5sTGxfqQtErvBIvIMi6EQnbgUOuVYanvREcmFrOPhoXBrTtjhhP+lW+o5UfK+tDg==} engines: {node: '>=6.9.0'} + /@babel/helper-string-parser@7.25.7: + resolution: {integrity: sha512-CbkjYdsJNHFk8uqpEkpCvRs3YRp9tY6FmFY7wLMSYuGYkrdUi7r2lc4/wqsvlHoMznX3WJ9IP8giGPq68T/Y6g==} + engines: {node: '>=6.9.0'} + /@babel/helper-validator-identifier@7.22.20: resolution: {integrity: sha512-Y4OZ+ytlatR8AI+8KZfKuL5urKp7qey08ha31L8b3BwewJAoJamTzyvxPR/5D+KkdJCGPq/+8TukHBlY10FX9A==} engines: {node: '>=6.9.0'} @@ -6510,6 +6535,10 @@ packages: resolution: {integrity: sha512-rR+PBcQ1SMQDDyF6X0wxtG8QyLCgUB0eRAGguqRLfkCA87l7yAP7ehq8SNj96OOGTO8OBV70KhuFYcIkHXOg0w==} engines: {node: '>=6.9.0'} + /@babel/helper-validator-identifier@7.25.7: + resolution: {integrity: sha512-AM6TzwYqGChO45oiuPqwL2t20/HdMC1rTPAesnBCgPCSF1x3oN9MVUwQV2iyz4xqWrctwK5RNC8LV22kaQCNYg==} + engines: {node: '>=6.9.0'} + /@babel/helper-validator-option@7.23.5: resolution: {integrity: sha512-85ttAOMLsr53VgXkTbkx8oA6YTfT4q7/HzXSLEYmjcSTJPMPQtvq1BD79Byep5xMUYbGRzEpDsjUf3dyp54IKw==} engines: {node: '>=6.9.0'} @@ -6583,6 +6612,13 @@ packages: dependencies: '@babel/types': 7.24.7 + /@babel/parser@7.25.8: + resolution: {integrity: sha512-HcttkxzdPucv3nNFmfOOMfFf64KgdJVqm1KaCm25dPGMLElo9nsLvXeJECQg8UzPuBGLyTSA0ZzqCtDSzKTEoQ==} + engines: {node: '>=6.0.0'} + hasBin: true + dependencies: + '@babel/types': 7.25.8 + /@babel/plugin-bugfix-firefox-class-in-computed-class-key@7.24.7(@babel/core@7.24.7): resolution: {integrity: sha512-TiT1ss81W80eQsN+722OaeQMY/G4yTb4G9JrqeiDADs3N8lbPMGldWi9x8tyqCW5NLx1Jh2AvkE6r6QvEltMMQ==} engines: {node: '>=6.9.0'} @@ -7445,7 +7481,7 @@ packages: '@babel/helper-hoist-variables': 7.24.7 '@babel/helper-module-transforms': 7.24.7(@babel/core@7.24.7) '@babel/helper-plugin-utils': 7.24.7 - '@babel/helper-validator-identifier': 7.24.7 + '@babel/helper-validator-identifier': 7.25.7 transitivePeerDependencies: - supports-color dev: false @@ -8019,7 +8055,7 @@ packages: dependencies: '@babel/core': 7.24.7 '@babel/helper-plugin-utils': 7.24.7 - '@babel/types': 7.24.7 + '@babel/types': 7.25.8 esutils: 2.0.3 dev: false @@ -8173,6 +8209,14 @@ packages: '@babel/helper-validator-identifier': 7.24.7 to-fast-properties: 2.0.0 + /@babel/types@7.25.8: + resolution: {integrity: sha512-JWtuCu8VQsMladxVz/P4HzHUGCAwpuqacmowgXFs5XjxIgKuNjnLokQzuVjlTvIzODaDmpjT3oxcC48vyk9EWg==} + engines: {node: '>=6.9.0'} + dependencies: + '@babel/helper-string-parser': 7.25.7 + '@babel/helper-validator-identifier': 7.25.7 + to-fast-properties: 2.0.0 + /@bcoe/v8-coverage@0.2.3: resolution: {integrity: sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==} dev: true @@ -10530,8 +10574,8 @@ packages: dependencies: '@babel/core': 7.24.7 '@babel/generator': 7.24.7 - '@babel/parser': 7.24.7 - '@babel/types': 7.24.7 + '@babel/parser': 7.25.8 + '@babel/types': 7.25.8 '@expo/config': 9.0.1 '@expo/env': 0.3.0 '@expo/json-file': 8.3.3 @@ -14650,7 +14694,7 @@ packages: peerDependencies: '@babel/preset-env': ^7.1.6 dependencies: - '@babel/parser': 7.24.7 + '@babel/parser': 7.25.8 '@babel/preset-env': 7.24.7(@babel/core@7.24.7) glob: 7.2.3 hermes-parser: 0.19.1 @@ -14668,7 +14712,7 @@ packages: peerDependencies: '@babel/preset-env': ^7.1.6 dependencies: - '@babel/parser': 7.24.7 + '@babel/parser': 7.25.8 '@babel/preset-env': 7.24.7(@babel/core@7.24.7) glob: 7.2.3 hermes-parser: 0.19.1 @@ -18217,46 +18261,46 @@ packages: - vitest dev: true - /@vitejs/plugin-react-swc@3.7.0(vite@5.4.8): + /@vitejs/plugin-react-swc@3.7.0(vite@5.4.9): resolution: {integrity: sha512-yrknSb3Dci6svCd/qhHqhFPDSw0QtjumcqdKMoNNzmOl5lMXTTiqzjWtG4Qask2HdvvzaNgSunbQGet8/GrKdA==} peerDependencies: vite: ^4 || ^5 dependencies: '@swc/core': 1.7.0 - vite: 5.4.8(@types/node@20.12.7)(sass@1.77.8) + vite: 5.4.9(@types/node@20.12.7)(sass@1.77.8) transitivePeerDependencies: - '@swc/helpers' dev: true - /@volar/language-core@2.4.5: - resolution: {integrity: sha512-F4tA0DCO5Q1F5mScHmca0umsi2ufKULAnMOVBfMsZdT4myhVl4WdKRwCaKcfOkIEuyrAVvtq1ESBdZ+rSyLVww==} + /@volar/language-core@2.4.6: + resolution: {integrity: sha512-FxUfxaB8sCqvY46YjyAAV6c3mMIq/NWQMVvJ+uS4yxr1KzOvyg61gAuOnNvgCvO4TZ7HcLExBEsWcDu4+K4E8A==} dependencies: - '@volar/source-map': 2.4.5 + '@volar/source-map': 2.4.6 - /@volar/source-map@2.4.5: - resolution: {integrity: sha512-varwD7RaKE2J/Z+Zu6j3mNNJbNT394qIxXwdvz/4ao/vxOfyClZpSDtLKkwWmecinkOVos5+PWkWraelfMLfpw==} + /@volar/source-map@2.4.6: + resolution: {integrity: sha512-Nsh7UW2ruK+uURIPzjJgF0YRGP5CX9nQHypA2OMqdM2FKy7rh+uv3XgPnWPw30JADbKvZ5HuBzG4gSbVDYVtiw==} - /@volar/typescript@2.4.5: - resolution: {integrity: sha512-mcT1mHvLljAEtHviVcBuOyAwwMKz1ibXTi5uYtP/pf4XxoAzpdkQ+Br2IC0NPCvLCbjPZmbf3I0udndkfB1CDg==} + /@volar/typescript@2.4.6: + resolution: {integrity: sha512-NMIrA7y5OOqddL9VtngPWYmdQU03htNKFtAYidbYfWA0TOhyGVd9tfcP4TsLWQ+RBWDZCbBqsr8xzU0ZOxYTCQ==} dependencies: - '@volar/language-core': 2.4.5 + '@volar/language-core': 2.4.6 path-browserify: 1.0.1 vscode-uri: 3.0.8 - /@vue/compiler-core@3.4.27: - resolution: {integrity: sha512-E+RyqY24KnyDXsCuQrI+mlcdW3ALND6U7Gqa/+bVwbcpcR3BRRIckFoz7Qyd4TTlnugtwuI7YgjbvsLmxb+yvg==} + /@vue/compiler-core@3.5.12: + resolution: {integrity: sha512-ISyBTRMmMYagUxhcpyEH0hpXRd/KqDU4ymofPgl2XAkY9ZhQ+h0ovEZJIiPop13UmR/54oA2cgMDjgroRelaEw==} dependencies: - '@babel/parser': 7.24.7 - '@vue/shared': 3.4.27 + '@babel/parser': 7.25.8 + '@vue/shared': 3.5.12 entities: 4.5.0 estree-walker: 2.0.2 source-map-js: 1.2.1 - /@vue/compiler-dom@3.4.27: - resolution: {integrity: sha512-kUTvochG/oVgE1w5ViSr3KUBh9X7CWirebA3bezTbB5ZKBQZwR2Mwj9uoSKRMFcz4gSMzzLXBPD6KpCLb9nvWw==} + /@vue/compiler-dom@3.5.12: + resolution: {integrity: sha512-9G6PbJ03uwxLHKQ3P42cMTi85lDRvGLB2rSGOiQqtXELat6uI4n8cNz9yjfVHRPIu+MsK6TE418Giruvgptckg==} dependencies: - '@vue/compiler-core': 3.4.27 - '@vue/shared': 3.4.27 + '@vue/compiler-core': 3.5.12 + '@vue/shared': 3.5.12 /@vue/compiler-vue2@2.7.16: resolution: {integrity: sha512-qYC3Psj9S/mfu9uVi5WvNZIzq+xnXMhOwbTFKKDD7b1lhpnn71jXSFdTQ+WsIEk0ONCd7VV2IMm7ONl6tbQ86A==} @@ -18272,18 +18316,18 @@ packages: typescript: optional: true dependencies: - '@volar/language-core': 2.4.5 - '@vue/compiler-dom': 3.4.27 + '@volar/language-core': 2.4.6 + '@vue/compiler-dom': 3.5.12 '@vue/compiler-vue2': 2.7.16 - '@vue/shared': 3.4.27 + '@vue/shared': 3.5.12 computeds: 0.0.1 minimatch: 9.0.4 muggle-string: 0.4.1 path-browserify: 1.0.1 typescript: 5.6.2 - /@vue/shared@3.4.27: - resolution: {integrity: sha512-DL3NmY2OFlqmYYrzp39yi3LDkKxa5vZVwxWdQ3rG0ekuWscHraeIbnI8t+aZK7qhYqEqWKTUdijadunb9pnrgA==} + /@vue/shared@3.5.12: + resolution: {integrity: sha512-L2RPSAwUFbgZH20etwrXyVyCBu9OxRSi8T/38QsvnkJyvq2LufW2lDCOzm7t/U9C1mkhJGWYfCuFBCmIuNivrg==} /@wagmi/connectors@3.1.11(@types/react@18.3.1)(react@18.3.1)(typescript@5.6.2)(viem@1.21.4)(zod@3.22.4): resolution: {integrity: sha512-wzxp9f9PtSUFjDUP/QDjc1t7HON4D8wrVKsw35ejdO8hToDpx1gU9lwH/47Zo/1zExGezQc392sjoHSszYd7OA==} @@ -22184,6 +22228,11 @@ packages: engines: {node: '>=14'} dev: true + /commander@12.1.0: + resolution: {integrity: sha512-Vw8qHK3bZM9y/P10u3Vib8o/DdkvA2OtPtZvD871QKjy74Wj1WSKFILMPRPSdUSx5RFK1arlJzEtA4PkFgnbuA==} + engines: {node: '>=18'} + dev: true + /commander@2.20.3: resolution: {integrity: sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==} dev: false @@ -22289,6 +22338,20 @@ packages: typedarray: 0.0.6 dev: true + /concurrently@9.0.1: + resolution: {integrity: sha512-wYKvCd/f54sTXJMSfV6Ln/B8UrfLBKOYa+lzc6CHay3Qek+LorVSBdMVfyewFhRbH0Rbabsk4D+3PL/VjQ5gzg==} + engines: {node: '>=18'} + hasBin: true + dependencies: + chalk: 4.1.2 + lodash: 4.17.21 + rxjs: 7.8.1 + shell-quote: 1.8.1 + supports-color: 8.1.1 + tree-kill: 1.2.2 + yargs: 17.7.2 + dev: true + /conf@10.2.0: resolution: {integrity: sha512-8fLl9F04EJqjSqH+QjITQfJF8BrOVaYr1jewVgSRAEWePfxT0sku4w2hrGQ60BC/TNLGQ2pgxNlTbWQmMPFvXg==} engines: {node: '>=12'} @@ -23350,6 +23413,10 @@ packages: engines: {node: '>=4'} dev: false + /duplexer@0.1.2: + resolution: {integrity: sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg==} + dev: true + /duplexify@3.7.1: resolution: {integrity: sha512-07z8uv2wMyS51kKhD1KsdXJg5WQ6t93RneqRxUHnskXVtlYYkLqM0gqStQZ3pj073g687jPCHrqNfCzawLYh5g==} dependencies: @@ -23411,6 +23478,28 @@ packages: minimalistic-assert: 1.0.1 minimalistic-crypto-utils: 1.0.1 + /embla-carousel-react@8.3.0(react@18.3.1): + resolution: {integrity: sha512-P1FlinFDcIvggcErRjNuVqnUR8anyo8vLMIH8Rthgofw7Nj8qTguCa2QjFAbzxAUTQTPNNjNL7yt0BGGinVdFw==} + peerDependencies: + react: ^16.8.0 || ^17.0.1 || ^18.0.0 + dependencies: + embla-carousel: 8.3.0 + embla-carousel-reactive-utils: 8.3.0(embla-carousel@8.3.0) + react: 18.3.1 + dev: false + + /embla-carousel-reactive-utils@8.3.0(embla-carousel@8.3.0): + resolution: {integrity: sha512-EYdhhJ302SC4Lmkx8GRsp0sjUhEN4WyFXPOk0kGu9OXZSRMmcBlRgTvHcq8eKJE1bXWBsOi1T83B+BSSVZSmwQ==} + peerDependencies: + embla-carousel: 8.3.0 + dependencies: + embla-carousel: 8.3.0 + dev: false + + /embla-carousel@8.3.0: + resolution: {integrity: sha512-Ve8dhI4w28qBqR8J+aMtv7rLK89r1ZA5HocwFz6uMB/i5EiC7bGI7y+AM80yAVUJw3qqaZYK7clmZMUR8kM3UA==} + dev: false + /emitter-listener@1.1.2: resolution: {integrity: sha512-Bt1sBAGFHY9DKY+4/2cV6izcKJUf5T7/gkdmkxzX/qv9CcGH8xSwVRW5mtX03SWJtRTWSOpzCuWN9rBFYZepZQ==} dependencies: @@ -25001,6 +25090,18 @@ packages: es5-ext: 0.10.64 dev: false + /event-stream@3.3.4: + resolution: {integrity: sha512-QHpkERcGsR0T7Qm3HNJSyXKEEj8AHNxkY3PK8TS2KJvQ7NiSHe3DDpwVKKtoYprL/AreyzFBeIkBIWChAqn60g==} + dependencies: + duplexer: 0.1.2 + from: 0.1.7 + map-stream: 0.1.0 + pause-stream: 0.0.11 + split: 0.3.3 + stream-combiner: 0.0.4 + through: 2.3.8 + dev: true + /event-target-shim@5.0.1: resolution: {integrity: sha512-i/2XbnSz/uxRCU6+NdVJgKWDTM427+MqYbkQzD321DuCQJUqOuJKIA0IM2+W2xtYHdKOmZ4dR6fExsd4SXL+WQ==} engines: {node: '>=6'} @@ -25660,6 +25761,10 @@ packages: resolution: {integrity: sha512-VBE7f5OVnYwdgB3LHa+Qo29h8qVpxhVO9Trlc+AWm+/XNAgks1tAwMFHb33mjeiof77GglsJzeYF7OqXrROP/A==} dev: true + /from@0.1.7: + resolution: {integrity: sha512-twe20eF1OxVxp/ML/kq2p1uc6KvFK/+vs8WjEbeKmV2He22MKm7YF2ANIt+EOqhJ5L3K/SuuPhk0hWQDjOM23g==} + dev: true + /fs-constants@1.0.0: resolution: {integrity: sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==} dev: true @@ -29126,6 +29231,10 @@ packages: engines: {node: '>=0.10.0'} dev: true + /map-stream@0.1.0: + resolution: {integrity: sha512-CkYQrPYZfWnu/DAmVCpTSX/xHpKZ80eKh2lAkyA6AJTef6bW+6JpbQZN5rofum7da+SyN1bi5ctTm+lTfcCW3g==} + dev: true + /markdown-table@1.1.3: resolution: {integrity: sha512-1RUZVgQlpJSPWYbFSpmudq5nHY1doEIv89gBtF0s4gW1GF2XorxcA/70M5vq7rLv0a6mhOUccRsqkwhwLCIQ2Q==} dev: true @@ -29407,7 +29516,7 @@ packages: dependencies: '@babel/core': 7.24.7 '@babel/generator': 7.24.7 - '@babel/parser': 7.24.7 + '@babel/parser': 7.25.8 '@babel/types': 7.24.7 metro: 0.80.9 metro-babel-transformer: 0.80.9 @@ -30097,6 +30206,10 @@ packages: engines: {node: ^16 || ^18 || >= 20} dev: false + /node-cleanup@2.1.2: + resolution: {integrity: sha512-qN8v/s2PAJwGUtr1/hYTpNKlD6Y9rc4p8KSmJXyGdYGZsDGKXrGThikLFP9OCHFeLeEpQzPwiAtdIvBLqm//Hw==} + dev: true + /node-dir@0.1.17: resolution: {integrity: sha512-tmPX422rYgofd4epzrNoOXiE8XFZYOcCq1vD7MAXCDO+O+zndlA2ztdKKMa+EeuBG5tHETpr4ml4RGgpqDCCAg==} engines: {node: '>= 0.10.5'} @@ -30923,6 +31036,12 @@ packages: resolution: {integrity: sha512-Dp6zGqpTdETdR63lehJYPeIOqpiNBNtc7BpWSLrOje7UaIsE5aY92r/AunQA7rsXvet3lrJ3JnZX29UPTKXyKQ==} dev: true + /pause-stream@0.0.11: + resolution: {integrity: sha512-e3FBlXLmN/D1S+zHzanP4E/4Z60oFAa3O051qt1pxa7DEJWKAyil6upYVXCWadEnuoqa4Pkc9oUx9zsxYeRv8A==} + dependencies: + through: 2.3.8 + dev: true + /pbkdf2@3.1.2: resolution: {integrity: sha512-iuh7L6jA7JEGu2WxDwtQP1ddOpaJNC4KlDEFfdQajSGgGPNi4OyDc2R7QnbY2bR9QjBVGwgvTdNJZoE7RaxUMA==} engines: {node: '>=0.12'} @@ -31551,6 +31670,14 @@ packages: /proxy-from-env@1.1.0: resolution: {integrity: sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==} + /ps-tree@1.2.0: + resolution: {integrity: sha512-0VnamPPYHl4uaU/nSFeZZpR21QAWRz+sRv4iW9+v/GS/J5U5iZB5BNN6J0RMoOvdx2gWM2+ZFMIm58q24e4UYA==} + engines: {node: '>= 0.10'} + hasBin: true + dependencies: + event-stream: 3.3.4 + dev: true + /public-encrypt@4.0.3: resolution: {integrity: sha512-zVpa8oKZSz5bTMTFClc1fQOnyyEzpl5ozpi1B5YcvBrdohMjH2rfsBtyXcuNuwjsDIXmBYlF2N5FlJYhR29t8Q==} dependencies: @@ -32527,6 +32654,18 @@ packages: resolution: {integrity: sha512-seS2Tj26TBVOC2NIc2rOe2y2ZO7efxITtLZcGSOnHHNOQ7CkiUBfw0Iw2ck6xkIhPwLhKNLS8BO+hEpngQlqzw==} dev: true + /resolve-tspaths@0.8.22(typescript@5.6.2): + resolution: {integrity: sha512-x9loBJyTLdx3grlcNpH/Y2t8IkfadtbzYhzpo683C6olazn0/4Y3cfSBiqDA0f2vSmq5tITKJCN9e1ezBh6jhA==} + hasBin: true + peerDependencies: + typescript: '>=3.0.3' + dependencies: + ansi-colors: 4.1.3 + commander: 12.1.0 + fast-glob: 3.3.2 + typescript: 5.6.2 + dev: true + /resolve.exports@2.0.2: resolution: {integrity: sha512-X2UW6Nw3n/aMgDVy+0rSqgHlv39WZAlZrXCdnbyEiKm17DSqHX4MmQMaST3FbeWR5FTuRcUwYAziZajji0Y7mg==} engines: {node: '>=10'} @@ -33500,6 +33639,12 @@ packages: resolution: {integrity: sha512-UcjcJOWknrNkF6PLX83qcHM6KHgVKNkV62Y8a5uYDVv9ydGQVwAHMKqHdJje1VTWpljG0WYpCDhrCdAOYH4TWg==} engines: {node: '>= 10.x'} + /split@0.3.3: + resolution: {integrity: sha512-wD2AeVmxXRBoX44wAycgjVpMhvbwdI2aZjCkvfNcH1YqHQvJVa1duWc73OyVGJUc05fhFaTZeQ/PYsrmyH0JVA==} + dependencies: + through: 2.3.8 + dev: true + /split@1.0.1: resolution: {integrity: sha512-mTyOoPbrivtXnwnIxZRFYRrPNtEFKlpB2fvjSnCQUiAA6qAZzqwna5envK4uk6OIeP17CsdF3rSBGYVBsU0Tkg==} dependencies: @@ -33681,6 +33826,12 @@ packages: engines: {node: '>= 0.10.0'} dev: false + /stream-combiner@0.0.4: + resolution: {integrity: sha512-rT00SPnTVyRsaSz5zgSPma/aHSOic5U1prhYdRy5HS2kTZviFpmDgzilbtsJsxiroqACmayynDN/9VzIbX5DOw==} + dependencies: + duplexer: 0.1.2 + dev: true + /stream-http@3.2.0: resolution: {integrity: sha512-Oq1bLqisTyK3TSCXpPbT4sdeYNdmyZJv1LxpEm2vu1ZhK89kSE5YXwZc3cWk0MagGaKriBh9mCFbVGtO+vY29A==} dependencies: @@ -34620,6 +34771,20 @@ packages: plimit-lit: 1.6.1 dev: true + /tsc-watch@6.2.0(typescript@5.6.2): + resolution: {integrity: sha512-2LBhf9kjKXnz7KQ/puLHlozMzzUNHAdYBNMkg3eksQJ9GBAgMg8czznM83T5PmsoUvDnXzfIeQn2lNcIYDr8LA==} + engines: {node: '>=12.12.0'} + hasBin: true + peerDependencies: + typescript: '*' + dependencies: + cross-spawn: 7.0.3 + node-cleanup: 2.1.2 + ps-tree: 1.2.0 + string-argv: 0.3.2 + typescript: 5.6.2 + dev: true + /tsconfck@3.0.3(typescript@5.6.2): resolution: {integrity: sha512-4t0noZX9t6GcPTfBAbIbbIU4pfpCwh0ueq3S4O/5qXI1VwK1outmxhe9dOiEWqMz3MW2LKgDTpqWV+37IWuVbA==} engines: {node: ^18 || >=20} @@ -35562,8 +35727,35 @@ packages: - zod dev: false - /vite-plugin-dts@4.2.2(@types/node@20.12.7)(rollup@4.22.4)(typescript@5.6.2)(vite@5.4.8): - resolution: {integrity: sha512-USwTMReZFf8yXV+cKkm4WOMqmFjbReAvkyxON5xzdnZzJEBnFgax6BBDZIGGr9WMJYvhHdpaIHLrOjXDcla4OA==} + /vite-plugin-dts@4.2.4(@types/node@20.12.7)(rollup@4.22.4)(typescript@5.6.2)(vite@5.4.9): + resolution: {integrity: sha512-REcYoxO90Pi8c0P1J7XAa/nVwNVGkX2eYkBEIfFSfcKE4g1W8sB0R23a7SU3aLEMfdOdb0SVHq3JlJ+Qb6gjgA==} + engines: {node: ^14.18.0 || >=16.0.0} + peerDependencies: + typescript: '*' + vite: '*' + peerDependenciesMeta: + vite: + optional: true + dependencies: + '@microsoft/api-extractor': 7.47.7(@types/node@20.12.7) + '@rollup/pluginutils': 5.1.0(rollup@4.22.4) + '@volar/typescript': 2.4.6 + '@vue/language-core': 2.1.6(typescript@5.6.2) + compare-versions: 6.1.1 + debug: 4.3.4(supports-color@8.1.1) + kolorist: 1.8.0 + local-pkg: 0.5.0 + magic-string: 0.30.11 + typescript: 5.6.2 + vite: 5.4.9(@types/node@20.12.7)(sass@1.77.8) + transitivePeerDependencies: + - '@types/node' + - rollup + - supports-color + dev: true + + /vite-plugin-dts@4.2.4(@types/node@20.12.7)(typescript@5.6.2)(vite@5.4.8): + resolution: {integrity: sha512-REcYoxO90Pi8c0P1J7XAa/nVwNVGkX2eYkBEIfFSfcKE4g1W8sB0R23a7SU3aLEMfdOdb0SVHq3JlJ+Qb6gjgA==} engines: {node: ^14.18.0 || >=16.0.0} peerDependencies: typescript: '*' @@ -35574,7 +35766,7 @@ packages: dependencies: '@microsoft/api-extractor': 7.47.7(@types/node@20.12.7) '@rollup/pluginutils': 5.1.0(rollup@4.22.4) - '@volar/typescript': 2.4.5 + '@volar/typescript': 2.4.6 '@vue/language-core': 2.1.6(typescript@5.6.2) compare-versions: 6.1.1 debug: 4.3.4(supports-color@8.1.1) @@ -35582,13 +35774,14 @@ packages: local-pkg: 0.5.0 magic-string: 0.30.11 typescript: 5.6.2 - vite: 5.4.8(@types/node@20.12.7)(sass@1.77.8) + vite: 5.4.8(@types/node@20.12.7) transitivePeerDependencies: - '@types/node' - rollup - supports-color + dev: false - /vite-plugin-lib-inject-css@2.1.1(vite@5.4.8): + /vite-plugin-lib-inject-css@2.1.1(vite@5.4.9): resolution: {integrity: sha512-RIMeVnqBK/8I0E9nnQWzws6pdj5ilRMPJSnXYb6nWxNR4EmDPnksnb/ACoR5Fy7QfzULqS4gtQMrjwnNCC9zoA==} peerDependencies: vite: '*' @@ -35596,17 +35789,17 @@ packages: '@ast-grep/napi': 0.22.6 magic-string: 0.30.11 picocolors: 1.1.0 - vite: 5.4.8(@types/node@20.12.7)(sass@1.77.8) + vite: 5.4.9(@types/node@20.12.7)(sass@1.77.8) dev: true - /vite-plugin-node-polyfills@0.22.0(rollup@4.22.4)(vite@5.4.8): + /vite-plugin-node-polyfills@0.22.0(rollup@4.22.4)(vite@5.4.9): resolution: {integrity: sha512-F+G3LjiGbG8QpbH9bZ//GSBr9i1InSTkaulfUHFa9jkLqVGORFBoqc2A/Yu5Mmh1kNAbiAeKeK+6aaQUf3x0JA==} peerDependencies: vite: ^2.0.0 || ^3.0.0 || ^4.0.0 || ^5.0.0 dependencies: '@rollup/plugin-inject': 5.0.5(rollup@4.22.4) node-stdlib-browser: 1.2.0 - vite: 5.4.8(@types/node@20.12.7)(sass@1.77.8) + vite: 5.4.9(@types/node@20.12.7)(sass@1.77.8) transitivePeerDependencies: - rollup dev: true @@ -35619,10 +35812,10 @@ packages: dependencies: svgo: 3.0.4 typescript: 5.6.2 - vite: 5.4.8(@types/node@20.12.7)(sass@1.77.8) + vite: 5.4.8(@types/node@20.12.7) dev: false - /vite-tsconfig-paths@4.3.2(typescript@5.6.2)(vite@5.4.8): + /vite-tsconfig-paths@4.3.2(typescript@5.6.2)(vite@5.4.9): resolution: {integrity: sha512-0Vd/a6po6Q+86rPlntHye7F31zA2URZMbH8M3saAZ/xR9QoGN/L21bxEGfXdWmFdNkqPpRdxFT7nmNe12e9/uA==} peerDependencies: vite: '*' @@ -35633,16 +35826,54 @@ packages: debug: 4.3.4(supports-color@8.1.1) globrex: 0.1.2 tsconfck: 3.0.3(typescript@5.6.2) - vite: 5.4.8(@types/node@20.12.7)(sass@1.77.8) + vite: 5.4.9(@types/node@20.12.7)(sass@1.77.8) transitivePeerDependencies: - supports-color - typescript dev: false - /vite@5.4.8(@types/node@20.12.7)(sass@1.77.8): + /vite@5.4.8(@types/node@20.12.7): resolution: {integrity: sha512-FqrItQ4DT1NC4zCUqMB4c4AZORMKIa0m8/URVCZ77OZ/QSNeJ54bU1vrFADbDsuwfIPcgknRkmqakQcgnL4GiQ==} engines: {node: ^18.0.0 || >=20.0.0} hasBin: true + peerDependencies: + '@types/node': ^18.0.0 || >=20.0.0 + less: '*' + lightningcss: ^1.21.0 + sass: '*' + sass-embedded: '*' + stylus: '*' + sugarss: '*' + terser: ^5.4.0 + peerDependenciesMeta: + '@types/node': + optional: true + less: + optional: true + lightningcss: + optional: true + sass: + optional: true + sass-embedded: + optional: true + stylus: + optional: true + sugarss: + optional: true + terser: + optional: true + dependencies: + '@types/node': 20.12.7 + esbuild: 0.21.5 + postcss: 8.4.47 + rollup: 4.22.4 + optionalDependencies: + fsevents: 2.3.3 + + /vite@5.4.9(@types/node@20.12.7)(sass@1.77.8): + resolution: {integrity: sha512-20OVpJHh0PAM0oSOELa5GaZNWeDjcAvQjGXy2Uyr+Tp+/D2/Hdz6NLgpJLsarPTA2QJ6v8mX2P1ZfbsSKvdMkg==} + engines: {node: ^18.0.0 || >=20.0.0} + hasBin: true peerDependencies: '@types/node': ^18.0.0 || >=20.0.0 less: '*' diff --git a/sdk/abi-provider-common/package.json b/sdk/abi-provider-common/package.json index 63441426e0..f686075567 100644 --- a/sdk/abi-provider-common/package.json +++ b/sdk/abi-provider-common/package.json @@ -12,7 +12,7 @@ "scripts": { "tsc": "tsc", "watch": "tsc -w", - "build": "tsc -b tsconfig.build.json", + "build": "tsc -b --preserveWatchOutput tsconfig.build.json", "lint": "eslint .", "lint:fix": "eslint . --fix" }, diff --git a/sdk/abi-provider-service/package.json b/sdk/abi-provider-service/package.json index 2df8fe61b3..9d1e12f074 100644 --- a/sdk/abi-provider-service/package.json +++ b/sdk/abi-provider-service/package.json @@ -12,7 +12,7 @@ "scripts": { "tsc": "tsc", "watch": "tsc -w", - "build": "tsc -b tsconfig.build.json", + "build": "tsc -b --preserveWatchOutput tsconfig.build.json", "lint": "eslint .", "lint:fix": "eslint . --fix" }, diff --git a/sdk/address-book-common/package.json b/sdk/address-book-common/package.json index 9bec763994..aff4628785 100644 --- a/sdk/address-book-common/package.json +++ b/sdk/address-book-common/package.json @@ -12,7 +12,7 @@ "scripts": { "tsc": "tsc", "watch": "tsc -w", - "build": "tsc -b tsconfig.build.json", + "build": "tsc -b --preserveWatchOutput tsconfig.build.json", "lint": "eslint .", "lint:fix": "eslint . --fix" }, diff --git a/sdk/address-book-service/package.json b/sdk/address-book-service/package.json index 5b9ab6e585..9162674020 100644 --- a/sdk/address-book-service/package.json +++ b/sdk/address-book-service/package.json @@ -15,7 +15,7 @@ "test": "jest tests/ --coverage=true", "testw": "jest --watch", "e2e": "jest e2e/", - "build": "tsc -b tsconfig.build.json", + "build": "tsc -b --preserveWatchOutput tsconfig.build.json", "lint": "eslint .", "lint:fix": "eslint . --fix" }, diff --git a/sdk/allowance-manager-common/package.json b/sdk/allowance-manager-common/package.json index 3391603f9e..b38bc48bd7 100644 --- a/sdk/allowance-manager-common/package.json +++ b/sdk/allowance-manager-common/package.json @@ -12,7 +12,7 @@ "scripts": { "tsc": "tsc", "watch": "tsc -w", - "build": "tsc -b tsconfig.build.json", + "build": "tsc -b --preserveWatchOutput tsconfig.build.json", "lint": "eslint .", "lint:fix": "eslint . --fix" }, diff --git a/sdk/allowance-manager-service/package.json b/sdk/allowance-manager-service/package.json index 4946e9b936..c69f926a71 100644 --- a/sdk/allowance-manager-service/package.json +++ b/sdk/allowance-manager-service/package.json @@ -14,7 +14,7 @@ "watch": "tsc -w", "e2e": "jest e2e/", "testw": "jest --watch", - "build": "tsc -b tsconfig.build.json", + "build": "tsc -b --preserveWatchOutput tsconfig.build.json", "lint": "eslint .", "lint:fix": "eslint . --fix" }, diff --git a/sdk/armada-protocol-common/package.json b/sdk/armada-protocol-common/package.json index 2b878f81fe..2240a95424 100644 --- a/sdk/armada-protocol-common/package.json +++ b/sdk/armada-protocol-common/package.json @@ -10,7 +10,7 @@ "scripts": { "tsc": "tsc", "watch": "tsc -w", - "build": "tsc -b tsconfig.build.json", + "build": "tsc -b --preserveWatchOutput tsconfig.build.json", "lint": "eslint .", "lint:fix": "eslint . --fix" }, diff --git a/sdk/armada-protocol-service/package.json b/sdk/armada-protocol-service/package.json index ed6304fc38..a0834b28c9 100644 --- a/sdk/armada-protocol-service/package.json +++ b/sdk/armada-protocol-service/package.json @@ -13,7 +13,7 @@ "test": "jest tests/ --passWithNoTests", "e2e": "jest e2e/", "testw": "jest --watch", - "build": "tsc -b tsconfig.build.json", + "build": "tsc -b --preserveWatchOutput tsconfig.build.json", "lint": "eslint .", "lint:fix": "eslint . --fix" }, diff --git a/sdk/blockchain-client-common/package.json b/sdk/blockchain-client-common/package.json index 3052fe8875..7cebbdee8f 100644 --- a/sdk/blockchain-client-common/package.json +++ b/sdk/blockchain-client-common/package.json @@ -12,7 +12,7 @@ "scripts": { "tsc": "tsc", "watch": "tsc -w", - "build": "tsc -b -v tsconfig.build.json", + "build": "tsc -b --preserveWatchOutput -v tsconfig.build.json", "test": "jest --setupFiles dotenv/config --passWithNoTests", "testw": "jest --setupFiles dotenv/config --watch", "lint": "eslint .", diff --git a/sdk/blockchain-client-provider/package.json b/sdk/blockchain-client-provider/package.json index 1a1658a8e2..43e1854173 100644 --- a/sdk/blockchain-client-provider/package.json +++ b/sdk/blockchain-client-provider/package.json @@ -12,7 +12,7 @@ "scripts": { "tsc": "tsc", "watch": "tsc -w", - "build": "tsc -b -v tsconfig.build.json", + "build": "tsc -b --preserveWatchOutput -v tsconfig.build.json", "test": "jest --setupFiles dotenv/config", "testw": "jest --setupFiles dotenv/config --watch", "lint": "eslint .", diff --git a/sdk/configuration-provider-common/package.json b/sdk/configuration-provider-common/package.json index 4eb4863d98..1b358356d2 100644 --- a/sdk/configuration-provider-common/package.json +++ b/sdk/configuration-provider-common/package.json @@ -12,7 +12,7 @@ "scripts": { "tsc": "tsc", "watch": "tsc -w", - "build": "tsc -b -v tsconfig.build.json", + "build": "tsc -b --preserveWatchOutput -v tsconfig.build.json", "test": "jest --setupFiles dotenv/config --passWithNoTests", "testw": "jest --setupFiles dotenv/config --watch", "lint": "eslint .", diff --git a/sdk/configuration-provider/package.json b/sdk/configuration-provider/package.json index 955d0932c0..4a9beac935 100644 --- a/sdk/configuration-provider/package.json +++ b/sdk/configuration-provider/package.json @@ -12,7 +12,7 @@ "scripts": { "tsc": "tsc", "watch": "tsc -w", - "build": "tsc -b -v tsconfig.build.json", + "build": "tsc -b --preserveWatchOutput -v tsconfig.build.json", "test": "jest --setupFiles dotenv/config", "testw": "jest --setupFiles dotenv/config --watch", "lint": "eslint .", diff --git a/sdk/contracts-provider-common/package.json b/sdk/contracts-provider-common/package.json index 4efa251bdb..cb26f1ac2f 100644 --- a/sdk/contracts-provider-common/package.json +++ b/sdk/contracts-provider-common/package.json @@ -12,7 +12,7 @@ "scripts": { "tsc": "tsc", "watch": "tsc -w", - "build": "tsc -b tsconfig.build.json", + "build": "tsc -b --preserveWatchOutput tsconfig.build.json", "lint": "eslint .", "lint:fix": "eslint . --fix" }, diff --git a/sdk/contracts-provider-service/package.json b/sdk/contracts-provider-service/package.json index a4decc6f87..696e9a3483 100644 --- a/sdk/contracts-provider-service/package.json +++ b/sdk/contracts-provider-service/package.json @@ -14,7 +14,7 @@ "watch": "tsc -w", "e2e": "jest e2e/", "testw": "jest --watch", - "build": "tsc -b tsconfig.build.json", + "build": "tsc -b --preserveWatchOutput tsconfig.build.json", "lint": "eslint .", "lint:fix": "eslint . --fix" }, diff --git a/sdk/oracle-common/package.json b/sdk/oracle-common/package.json index abf2490579..0f3deb0ff4 100644 --- a/sdk/oracle-common/package.json +++ b/sdk/oracle-common/package.json @@ -12,7 +12,7 @@ "scripts": { "tsc": "tsc", "watch": "tsc -w", - "build": "tsc -b tsconfig.build.json", + "build": "tsc -b --preserveWatchOutput tsconfig.build.json", "lint": "eslint .", "lint:fix": "eslint . --fix" }, diff --git a/sdk/oracle-service/package.json b/sdk/oracle-service/package.json index 7067cce9af..3a68e72909 100644 --- a/sdk/oracle-service/package.json +++ b/sdk/oracle-service/package.json @@ -15,7 +15,7 @@ "test": "jest tests/ --passWithNoTests", "testw": "jest --watch", "e2e": "jest e2e/", - "build": "tsc -b tsconfig.build.json", + "build": "tsc -b --preserveWatchOutput tsconfig.build.json", "lint": "eslint .", "lint:fix": "eslint . --fix" }, diff --git a/sdk/order-planner-common/package.json b/sdk/order-planner-common/package.json index 298417bcc6..ff645116a4 100644 --- a/sdk/order-planner-common/package.json +++ b/sdk/order-planner-common/package.json @@ -18,7 +18,7 @@ "testw": "jest --watch", "lint": "eslint .", "lint:fix": "eslint . --fix", - "build": "tsc -b tsconfig.build.json" + "build": "tsc -b --preserveWatchOutput tsconfig.build.json" }, "dependencies": { "@summerfi/armada-protocol-common": "workspace:*", diff --git a/sdk/order-planner-service/package.json b/sdk/order-planner-service/package.json index 18abbb6767..7559a24b66 100644 --- a/sdk/order-planner-service/package.json +++ b/sdk/order-planner-service/package.json @@ -14,7 +14,7 @@ "testw": "jest --watch", "lint": "eslint .", "lint:fix": "eslint . --fix", - "build": "tsc -b tsconfig.build.json", + "build": "tsc -b --preserveWatchOutput tsconfig.build.json", "encode:makerGive": "tsx ./scripts/encodeMakerGive.ts" }, "dependencies": { diff --git a/sdk/protocol-manager-common/package.json b/sdk/protocol-manager-common/package.json index cff11643a0..1533a98747 100644 --- a/sdk/protocol-manager-common/package.json +++ b/sdk/protocol-manager-common/package.json @@ -12,7 +12,7 @@ "watch": "tsc -w", "lint": "eslint .", "lint:fix": "eslint . --fix", - "build": "tsc -b -v tsconfig.build.json", + "build": "tsc -b --preserveWatchOutput -v tsconfig.build.json", "bundle": "esbuild src/index.ts --bundle --minify --platform=node --target=node20 --outfile=dist/index.js --sourcemap" }, "dependencies": { diff --git a/sdk/protocol-manager-service/package.json b/sdk/protocol-manager-service/package.json index 34656afef9..34f000faa9 100644 --- a/sdk/protocol-manager-service/package.json +++ b/sdk/protocol-manager-service/package.json @@ -14,7 +14,7 @@ "testw": "jest --watch", "lint": "eslint .", "lint:fix": "eslint . --fix", - "build": "tsc -b -v tsconfig.build.json", + "build": "tsc -b --preserveWatchOutput -v tsconfig.build.json", "bundle": "esbuild src/index.ts --bundle --minify --platform=node --target=node20 --outfile=dist/index.js --sourcemap" }, "dependencies": { diff --git a/sdk/protocol-plugins-common/package.json b/sdk/protocol-plugins-common/package.json index 2dec723410..e8a71c23e4 100644 --- a/sdk/protocol-plugins-common/package.json +++ b/sdk/protocol-plugins-common/package.json @@ -14,7 +14,7 @@ "testw": "jest --watch", "lint": "eslint .", "lint:fix": "eslint . --fix", - "build": "tsc -b -v tsconfig.build.json" + "build": "tsc -b --preserveWatchOutput -v tsconfig.build.json" }, "dependencies": { "@summerfi/deployment-types": "workspace:*", diff --git a/sdk/protocol-plugins/package.json b/sdk/protocol-plugins/package.json index f072e20281..7fc08edc91 100644 --- a/sdk/protocol-plugins/package.json +++ b/sdk/protocol-plugins/package.json @@ -20,8 +20,8 @@ "testw:integration": "jest tests/integration --watch", "lint": "eslint .", "lint:fix": "eslint . --fix", - "build": "tsc -b -v tsconfig.build.json", - "bundle:npm": "rm -rf bundle/dist bundle/tsconfig.build.tsbuildinfo && esbuild src/index.ts --platform=neutral --target=es2020 --conditions= --main-fields=main --bundle --sourcemap --outfile=bundle/dist/index.js --keep-names --external:crypto --external:tls --external:https --external:net --external:http --external:stream --external:zlib --external:assert --external:fs --external:os --external:path --external:zod --external:bignumber.js && tsc --emitDeclarationOnly --outDir bundle/dist -p tsconfig.build.json", + "build": "tsc -b --preserveWatchOutput -v tsconfig.build.json", + "bundle:npm": "rm -rf bundle/dist bundle/tsconfig.build.tsbuildinfo && esbuild src/index.ts --platform=neutral --target=es2020 --conditions= --main-fields=main --bundle --sourcemap --outfile=bundle/dist/index.js --keep-names --external:crypto --external:tls --external:https --external:net --external:http --external:stream --external:zlib --external:assert --external:fs --external:os --external:path --external:zod --external:bignumber.js && tsc --emitDeclarationOnly --outDir bundle/dist tsconfig.build.json", "publish:npm": "pnpm bundle:npm && cd bundle && npm publish && cd .." }, "dependencies": { diff --git a/sdk/sdk-client-react/package.json b/sdk/sdk-client-react/package.json index 26acc300f5..f27d6fffe8 100644 --- a/sdk/sdk-client-react/package.json +++ b/sdk/sdk-client-react/package.json @@ -14,7 +14,7 @@ "watch": "tsc -w", "test": "jest --setupFiles dotenv/config --coverage=true --passWithNoTests", "testw": "jest --watch", - "build": "tsc -b -v tsconfig.build.json", + "build": "tsc -b --preserveWatchOutput -v tsconfig.build.json", "lint": "eslint .", "lint:fix": "eslint . --fix" }, diff --git a/sdk/sdk-client/package.json b/sdk/sdk-client/package.json index 9b7e0a09aa..3273fa6d20 100644 --- a/sdk/sdk-client/package.json +++ b/sdk/sdk-client/package.json @@ -14,10 +14,10 @@ "watch": "tsc -w", "test": "jest --setupFiles dotenv/config --coverage=true", "testw": "jest --watch", - "build": "tsc -b -v tsconfig.build.json", + "build": "tsc -b --preserveWatchOutput -v tsconfig.build.json", "lint": "eslint .", "lint:fix": "eslint . --fix", - "bundle:npm": "rm -rf bundle/dist bundle/tsconfig.build.tsbuildinfo && esbuild src/index.ts --platform=neutral --target=es2020 --conditions= --main-fields=main --bundle --sourcemap --outfile=bundle/dist/index.js --keep-names --external:crypto --external:tls --external:https --external:net --external:http --external:stream --external:zlib --external:assert --external:superjson --external:zod --external:bignumber.js --external:\"@trpc/client\" --external:abitype --external:viem && tsc --emitDeclarationOnly --outDir bundle/dist -p tsconfig.build.json", + "bundle:npm": "rm -rf bundle/dist bundle/tsconfig.build.tsbuildinfo && esbuild src/index.ts --platform=neutral --target=es2020 --conditions= --main-fields=main --bundle --sourcemap --outfile=bundle/dist/index.js --keep-names --external:crypto --external:tls --external:https --external:net --external:http --external:stream --external:zlib --external:assert --external:superjson --external:zod --external:bignumber.js --external:\"@trpc/client\" --external:abitype --external:viem && tsc --emitDeclarationOnly --outDir bundle/dist tsconfig.build.json", "publish:npm": "pnpm bundle:npm && cd bundle && npm publish && cd .." }, "dependencies": { diff --git a/sdk/sdk-common/package.json b/sdk/sdk-common/package.json index a101816200..2c2e470ec9 100644 --- a/sdk/sdk-common/package.json +++ b/sdk/sdk-common/package.json @@ -18,11 +18,11 @@ "watch": "tsc -w", "test": "jest --coverage=true", "testw": "jest --watch", - "build": "tsc -b -v tsconfig.build.json", + "build": "tsc -b --preserveWatchOutput -v tsconfig.build.json", "lint": "eslint .", "lint:fix": "eslint . --fix", "check-circular": "madge --circular --extensions ts ./src", - "bundle:npm": "rm -rf bundle/dist bundle/tsconfig.build.tsbuildinfo && esbuild src/index.ts --platform=neutral --target=es2020 --conditions= --main-fields=main --bundle --sourcemap --outfile=bundle/dist/index.js --keep-names --external:crypto --external:tls --external:net --external:http --external:stream --external:https --external:zlib --external:fs --external:path --external:os --external:superjson --external:zod --external:bignumber.js && tsc --emitDeclarationOnly --outDir bundle/dist -p tsconfig.bundle.json", + "bundle:npm": "rm -rf bundle/dist bundle/tsconfig.build.tsbuildinfo && esbuild src/index.ts --platform=neutral --target=es2020 --conditions= --main-fields=main --bundle --sourcemap --outfile=bundle/dist/index.js --keep-names --external:crypto --external:tls --external:net --external:http --external:stream --external:https --external:zlib --external:fs --external:path --external:os --external:superjson --external:zod --external:bignumber.js && tsc --emitDeclarationOnly --outDir bundle/dist tsconfig.bundle.json", "publish:npm": "pnpm bundle:npm && cd bundle && npm publish && cd .." }, "dependencies": { diff --git a/sdk/sdk-router-function/package.json b/sdk/sdk-router-function/package.json index 1b325d39d4..a52d491ceb 100644 --- a/sdk/sdk-router-function/package.json +++ b/sdk/sdk-router-function/package.json @@ -9,7 +9,7 @@ "e2e": "jest e2e/", "lint": "eslint .", "lint:fix": "eslint . --fix", - "build": "tsc -p tsconfig.build.json --noEmit && esbuild src/index.ts --bundle --minify --platform=node --target=node20 --outfile=dist/index.js --sourcemap" + "build": "tsc -b tsconfig.build.json --noEmit && esbuild src/index.ts --bundle --minify --platform=node --target=node20 --outfile=dist/index.js --sourcemap" }, "dependencies": { "@aws-lambda-powertools/logger": "^1.18.1", diff --git a/sdk/sdk-server-common/package.json b/sdk/sdk-server-common/package.json index 88dc671664..5a6937a85d 100644 --- a/sdk/sdk-server-common/package.json +++ b/sdk/sdk-server-common/package.json @@ -10,7 +10,7 @@ "scripts": { "tsc": "tsc", "watch": "tsc -w", - "build": "tsc -b -v tsconfig.build.json", + "build": "tsc -b --preserveWatchOutput -v tsconfig.build.json", "test": "jest tests/ --coverage=true", "testw": "jest --watch", "e2e": "jest e2e/", diff --git a/sdk/sdk-server/package.json b/sdk/sdk-server/package.json index 4ea2eb5232..3f714d3e87 100644 --- a/sdk/sdk-server/package.json +++ b/sdk/sdk-server/package.json @@ -10,7 +10,7 @@ "scripts": { "tsc": "tsc", "watch": "tsc -w", - "build": "tsc -b -v tsconfig.build.json", + "build": "tsc -b --preserveWatchOutput -v tsconfig.build.json", "test": "jest tests/ --passWithNoTests", "testw": "jest --watch", "e2e": "jest e2e/", diff --git a/sdk/simulator-service/package.json b/sdk/simulator-service/package.json index 297a8e64c3..f1692fa03a 100644 --- a/sdk/simulator-service/package.json +++ b/sdk/simulator-service/package.json @@ -14,7 +14,7 @@ "watch": "tsc -w", "test": "jest --setupFiles dotenv/config --coverage=false", "testw": "jest --watch", - "build": "tsc -b -v tsconfig.build.json", + "build": "tsc -b --preserveWatchOutput -v tsconfig.build.json", "lint": "eslint .", "lint:fix": "eslint . --fix" }, diff --git a/sdk/subgraph-manager-common/package.json b/sdk/subgraph-manager-common/package.json index c77c7d9a56..4bb771c8e5 100644 --- a/sdk/subgraph-manager-common/package.json +++ b/sdk/subgraph-manager-common/package.json @@ -13,7 +13,7 @@ "tsc": "tsc", "watch": "tsc -w", "prebuild": "pnpm run generate", - "build": "tsc -b tsconfig.build.json", + "build": "tsc -b --preserveWatchOutput tsconfig.build.json", "lint": "eslint .", "lint:fix": "eslint . --fix", "generate": "DOTENV_CONFIG_PATH=../../.env graphql-codegen -r dotenv/config" diff --git a/sdk/subgraph-manager-service/package.json b/sdk/subgraph-manager-service/package.json index 7285ea9fa0..c79843ce94 100644 --- a/sdk/subgraph-manager-service/package.json +++ b/sdk/subgraph-manager-service/package.json @@ -15,7 +15,7 @@ "test": "jest tests/ --coverage=true --passWithNoTests", "testw": "jest --watch", "e2e": "jest e2e/", - "build": "tsc -b tsconfig.build.json", + "build": "tsc -b --preserveWatchOutput tsconfig.build.json", "lint": "eslint .", "lint:fix": "eslint . --fix" }, diff --git a/sdk/swap-common/package.json b/sdk/swap-common/package.json index 5e14514d2d..ad0833ae37 100644 --- a/sdk/swap-common/package.json +++ b/sdk/swap-common/package.json @@ -12,7 +12,7 @@ "scripts": { "tsc": "tsc", "watch": "tsc -w", - "build": "tsc -b tsconfig.build.json", + "build": "tsc -b --preserveWatchOutput tsconfig.build.json", "lint": "eslint .", "lint:fix": "eslint . --fix" }, diff --git a/sdk/swap-service/package.json b/sdk/swap-service/package.json index 97af7e5742..6a78728d75 100644 --- a/sdk/swap-service/package.json +++ b/sdk/swap-service/package.json @@ -15,7 +15,7 @@ "test": "jest tests/ --passWithNoTests", "testw": "jest --watch", "e2e": "jest e2e/", - "build": "tsc -b tsconfig.build.json", + "build": "tsc -b --preserveWatchOutput tsconfig.build.json", "lint": "eslint .", "lint:fix": "eslint . --fix" }, diff --git a/sdk/tenderly-utils/package.json b/sdk/tenderly-utils/package.json index 49d6d60ff9..e637b5189c 100644 --- a/sdk/tenderly-utils/package.json +++ b/sdk/tenderly-utils/package.json @@ -17,8 +17,8 @@ "e2e": "jest e2e/", "lint": "eslint .", "lint:fix": "eslint . --fix", - "build": "tsc -b -v tsconfig.build.json", - "dev": "tsc -b tsconfig.build.json -w" + "build": "tsc -b --preserveWatchOutput -v tsconfig.build.json", + "dev": "tsc -b --preserveWatchOutput tsconfig.build.json -w" }, "dependencies": { "@summerfi/sdk-common": "workspace:*", diff --git a/sdk/testing-utils/package.json b/sdk/testing-utils/package.json index d190548500..6078fa495a 100644 --- a/sdk/testing-utils/package.json +++ b/sdk/testing-utils/package.json @@ -18,7 +18,7 @@ "testw": "jest --watch", "lint": "eslint .", "lint:fix": "eslint . --fix", - "build": "tsc -b tsconfig.build.json", + "build": "tsc -b --preserveWatchOutput tsconfig.build.json", "encode:makerGive": "tsx ./scripts/encodeMakerGive.ts" }, "dependencies": { diff --git a/sdk/tokens-common/package.json b/sdk/tokens-common/package.json index 2d7807dac8..c2f6c40e00 100644 --- a/sdk/tokens-common/package.json +++ b/sdk/tokens-common/package.json @@ -12,7 +12,7 @@ "scripts": { "tsc": "tsc", "watch": "tsc -w", - "build": "tsc -b tsconfig.build.json", + "build": "tsc -b --preserveWatchOutput tsconfig.build.json", "lint": "eslint .", "lint:fix": "eslint . --fix" }, diff --git a/sdk/tokens-service/package.json b/sdk/tokens-service/package.json index 1922a9a34c..ff9ab747c5 100644 --- a/sdk/tokens-service/package.json +++ b/sdk/tokens-service/package.json @@ -15,7 +15,7 @@ "test": "jest tests/ --passWithNoTests", "testw": "jest --watch", "e2e": "jest e2e/", - "build": "tsc -b tsconfig.build.json", + "build": "tsc -b --preserveWatchOutput tsconfig.build.json", "lint": "eslint .", "lint:fix": "eslint . --fix" }, diff --git a/sdk/tools/genStrategyDefinitions/package.json b/sdk/tools/genStrategyDefinitions/package.json index 11499cd8b2..867a5320f5 100644 --- a/sdk/tools/genStrategyDefinitions/package.json +++ b/sdk/tools/genStrategyDefinitions/package.json @@ -6,7 +6,7 @@ "watch": "tsc -w", "lint": "eslint .", "lint:fix": "eslint . --fix", - "bundle:npm": "esbuild src/index.ts --platform=node --target=es2020 --conditions= --main-fields=main --bundle --sourcemap --outfile=bundle/dist/index.js --external:crypto --external:tls --external:https --external:net --external:http --external:stream --external:zlib --external:assert --keep-names && tsc --emitDeclarationOnly --outDir bundle/dist -p tsconfig.build.json", + "bundle:npm": "esbuild src/index.ts --platform=node --target=es2020 --conditions= --main-fields=main --bundle --sourcemap --outfile=bundle/dist/index.js --external:crypto --external:tls --external:https --external:net --external:http --external:stream --external:zlib --external:assert --keep-names && tsc --emitDeclarationOnly --outDir bundle/dist tsconfig.build.json", "strategy:gen": "pnpm bundle:npm; node ./bundle/dist/index.js" }, "dependencies": { diff --git a/stacks/package.json b/stacks/package.json index 621108335d..9b7ea3c06c 100644 --- a/stacks/package.json +++ b/stacks/package.json @@ -3,8 +3,8 @@ "version": "0.0.1", "description": "Wrapper for the STT stacks", "scripts": { - "build": "tsc -b -v", - "dev": "tsc -b -w", + "build": "tsc -b --preserveWatchOutput -v", + "dev": "tsc -b --preserveWatchOutput -w", "lint": "eslint .", "lint:fix": "eslint . --fix" }, diff --git a/summerfi-api/get-apy-function/package.json b/summerfi-api/get-apy-function/package.json index 897f67532f..aacb789f07 100644 --- a/summerfi-api/get-apy-function/package.json +++ b/summerfi-api/get-apy-function/package.json @@ -3,7 +3,7 @@ "version": "0.0.2", "scripts": { "test": "jest --passWithNoTests", - "build": "tsc -b -v", + "build": "tsc -b --preserveWatchOutput -v", "lint": "eslint .", "lint:fix": "eslint . --fix" }, diff --git a/summerfi-api/get-meta-morpho-details-function/package.json b/summerfi-api/get-meta-morpho-details-function/package.json index e1bf44a30e..c2ef53024f 100644 --- a/summerfi-api/get-meta-morpho-details-function/package.json +++ b/summerfi-api/get-meta-morpho-details-function/package.json @@ -3,7 +3,7 @@ "version": "0.0.2", "scripts": { "test": "jest --passWithNoTests", - "build": "tsc -b -v", + "build": "tsc -b --preserveWatchOutput -v", "lint": "eslint .", "lint:fix": "eslint . --fix" }, diff --git a/summerfi-api/get-morpho-claims-function/package.json b/summerfi-api/get-morpho-claims-function/package.json index 17d158dfd2..cb9fca7038 100644 --- a/summerfi-api/get-morpho-claims-function/package.json +++ b/summerfi-api/get-morpho-claims-function/package.json @@ -3,7 +3,7 @@ "version": "0.0.1", "scripts": { "test": "jest --passWithNoTests", - "build": "tsc -b -v", + "build": "tsc -b --preserveWatchOutput -v", "lint": "eslint .", "lint:fix": "eslint . --fix" }, diff --git a/summerfi-api/get-position-rays-function/package.json b/summerfi-api/get-position-rays-function/package.json index f6971a3d61..946c2adf25 100644 --- a/summerfi-api/get-position-rays-function/package.json +++ b/summerfi-api/get-position-rays-function/package.json @@ -3,7 +3,7 @@ "version": "0.0.1", "scripts": { "test": "jest --passWithNoTests", - "build": "tsc -b -v", + "build": "tsc -b --preserveWatchOutput -v", "lint": "eslint .", "lint:fix": "eslint . --fix" }, diff --git a/summerfi-api/get-rays-function/package.json b/summerfi-api/get-rays-function/package.json index fc6fab4b0d..3039363c49 100644 --- a/summerfi-api/get-rays-function/package.json +++ b/summerfi-api/get-rays-function/package.json @@ -3,7 +3,7 @@ "version": "0.0.1", "scripts": { "test": "jest --passWithNoTests", - "build": "tsc -b -v", + "build": "tsc -b --preserveWatchOutput -v", "lint": "eslint .", "lint:fix": "eslint . --fix" }, diff --git a/summerfi-api/get-rays-leaderboard-function/package.json b/summerfi-api/get-rays-leaderboard-function/package.json index 50e9bd02b1..d0cbe221b1 100644 --- a/summerfi-api/get-rays-leaderboard-function/package.json +++ b/summerfi-api/get-rays-leaderboard-function/package.json @@ -3,7 +3,7 @@ "version": "0.0.1", "scripts": { "test": "jest --passWithNoTests", - "build": "tsc -b -v", + "build": "tsc -b --preserveWatchOutput -v", "lint": "eslint .", "lint:fix": "eslint . --fix" }, diff --git a/summerfi-api/get-rays-multipliers-function/package.json b/summerfi-api/get-rays-multipliers-function/package.json index f815eb8d4d..31c32d088b 100644 --- a/summerfi-api/get-rays-multipliers-function/package.json +++ b/summerfi-api/get-rays-multipliers-function/package.json @@ -3,7 +3,7 @@ "version": "0.0.1", "scripts": { "test": "jest --passWithNoTests", - "build": "tsc -b -v", + "build": "tsc -b --preserveWatchOutput -v", "lint": "eslint .", "lint:fix": "eslint . --fix" }, diff --git a/summerfi-api/get-triggers-function/package.json b/summerfi-api/get-triggers-function/package.json index b1dd3e16d9..8da0e5ab6e 100644 --- a/summerfi-api/get-triggers-function/package.json +++ b/summerfi-api/get-triggers-function/package.json @@ -3,7 +3,7 @@ "version": "0.0.1", "scripts": { "test": "jest --passWithNoTests", - "build": "tsc -b -v", + "build": "tsc -b --preserveWatchOutput -v", "lint": "eslint .", "lint:fix": "eslint . --fix" }, diff --git a/summerfi-api/setup-trigger-function/package.json b/summerfi-api/setup-trigger-function/package.json index 921bc9ef18..e9716f3160 100644 --- a/summerfi-api/setup-trigger-function/package.json +++ b/summerfi-api/setup-trigger-function/package.json @@ -7,7 +7,7 @@ "test": "jest --passWithNoTests", "lint": "eslint .", "lint:fix": "eslint . --fix", - "build": "tsc -b -v" + "build": "tsc -b --preserveWatchOutput -v" }, "dependencies": { "@aws-lambda-powertools/logger": "^2.0.4",