Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
55 commits
Select commit Hold shift + click to select a range
030c522
Dashboard: Add missing asset creation successs tracking for nft (#7494)
MananTank Jul 1, 2025
b882ad7
Playground: Fix in-app-wallet ConnectEmbed prebuilt ui code snippet (…
MananTank Jul 1, 2025
1305527
[TOOL-4900] Dashboard: Add ERC20 token page links in /routes (#7493)
MananTank Jul 1, 2025
02f6f87
[Dashboard] Move RPC Edge to scale category and remove redirect (#7495)
jnsdls Jul 1, 2025
2029869
[Dashboard] Add status filter to transactions table (#7497)
joaquim-verges Jul 1, 2025
effe60b
[Docs] Broken Engine Links (#7498)
saminacodes Jul 2, 2025
2d1549b
[Portal] Remove unused import from sign-in methods page (#7499)
joaquim-verges Jul 2, 2025
f15f62f
[Porta] fix llm.txt generation (#7500)
joaquim-verges Jul 2, 2025
50e01ce
SDK: Restore border on embed components (#7487)
MananTank Jul 2, 2025
85c4ef1
Added Somnia Testnet (#7474)
emmaodia Jul 2, 2025
ec75d95
feat(chains): add Core testnet and mainnet chains (#7486)
Yash094 Jul 2, 2025
7ab8808
[SDK] Handle very large numbers in BuyWidget component (#7503)
joaquim-verges Jul 2, 2025
fd967ce
Pass purchaseData prop to payment components (#7507)
0xFirekeeper Jul 2, 2025
9c2b0f7
Version Packages (#7501)
joaquim-verges Jul 2, 2025
087c29e
[Dashboard] Rename RPC Edge to RPC and add redirect (#7509)
jnsdls Jul 2, 2025
ca1fb84
Properly type purchaseData as Record<string, unknown> (#7508)
jnsdls Jul 2, 2025
7437289
Update import path in createSessionKey example (#7510)
0xFirekeeper Jul 2, 2025
bde53fc
Remove "starter" plan checks from team invitation logic (#7513)
jnsdls Jul 2, 2025
ac48b24
add analytics to insight page (#7488)
iuwqyir Jul 2, 2025
84f8043
[TOOL-4908] Dashboard: Fix 'Owner only' claim condition phase type co…
MananTank Jul 2, 2025
4bd4efc
add rpc tab with analytics (#7489)
iuwqyir Jul 2, 2025
7e73c34
Dashboard: asset page header: hide zero-address, fix icon (#7514)
MananTank Jul 2, 2025
9f88b5c
[TOOL-4951] Dashboard: Show Plan upsell on storage error in asset cre…
MananTank Jul 2, 2025
f1a965b
Enable engineCloud service in project creation modal (#7520)
jnsdls Jul 3, 2025
0e159f7
[Dashboard] Add chain infrastructure deployment and management (#7456)
jnsdls Jul 4, 2025
f94226a
[SDK] update wallets, add sh.frame (#7521)
joaquim-verges Jul 4, 2025
fa45dea
upgrade biome to 2.0.6 (#7517)
jnsdls Jul 4, 2025
7500d87
[Dashboard] Fix validation for smart account options (#7522)
joaquim-verges Jul 4, 2025
341325f
[SDK] Show all tokens in payment selection regardless of balance (#7523)
joaquim-verges Jul 4, 2025
4b8badb
upgrade dependencies (#7524)
jnsdls Jul 4, 2025
9fba016
Remove Plausible analytics integration (#7525)
jnsdls Jul 4, 2025
198cfd0
[Playground] Add TokenSelector component to Pay embed configuration (…
joaquim-verges Jul 4, 2025
d92ab6f
[Docs] Portal Images (#7526)
saminacodes Jul 4, 2025
8def4f3
Stylus CLI updates (#7502)
kumaryash90 Jul 4, 2025
37b3d7f
Add activity log section to transaction page (#7529)
joaquim-verges Jul 5, 2025
2d6c245
Version Packages (#7511)
joaquim-verges Jul 5, 2025
ff9df49
Update branding from Engine Cloud to Transactions (#7516)
saminacodes Jul 5, 2025
770e7b2
Enhance transaction details with decoded tab (#7531)
joaquim-verges Jul 6, 2025
cb77544
[SDK] Respect feePayer property in Payment widgets (#7533)
joaquim-verges Jul 6, 2025
67293fc
Version Packages (#7534)
joaquim-verges Jul 6, 2025
0ea25bb
[SDK] Update walletconnect provider to universal (#7532)
joaquim-verges Jul 6, 2025
0ec6142
Version Packages (#7535)
joaquim-verges Jul 7, 2025
20e323d
[Dashboard] Fix smart account options validation for non-EIP4337 exec…
joaquim-verges Jul 7, 2025
f48d800
[SDK] Optimize payment token fetching in payment widgets (#7536)
joaquim-verges Jul 7, 2025
c1b2e10
Version Packages (#7539)
joaquim-verges Jul 7, 2025
d2c12cc
Create session key guide and update sidebar (#7538)
joaquim-verges Jul 7, 2025
67c3d86
[TOOL-4986] Dashboard: Fix ERC20 asset page crash (#7541)
MananTank Jul 7, 2025
2136c7b
[Docs] Wallets Overview (#7543)
saminacodes Jul 7, 2025
c644463
[SDK] Use new BuyWidget in wallet details modal (#7551)
joaquim-verges Jul 8, 2025
10c3b6f
[SDK] Respect fee payer in token payment selection quotes (#7556)
joaquim-verges Jul 8, 2025
afcb7bb
chore(deps): bump zod from 3.25.71 to 3.25.75 (#7552)
dependabot[bot] Jul 8, 2025
415ad90
feat: add T-Rex testnet chain (#7540)
Yash094 Jul 8, 2025
adfa56b
Version Packages (#7555)
joaquim-verges Jul 8, 2025
42f6d84
feat: webhook analytics tab
arcoraven Jul 4, 2025
f054236
Merge remote-tracking branch 'origin/main' into ph/07-04-feat_webhook…
arcoraven Jul 8, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
2 changes: 1 addition & 1 deletion .github/workflows/CI.yml
Original file line number Diff line number Diff line change
Expand Up @@ -63,7 +63,7 @@ jobs:
- name: Setup Biome
uses: biomejs/setup-biome@a9763ed3d2388f5746f9dc3e1a55df7f4609bc89 # v2.5.1
with:
version: 2.0.4
version: 2.0.6

- run: pnpm lint

Expand Down
8 changes: 4 additions & 4 deletions apps/dashboard/.storybook/main.ts
Original file line number Diff line number Diff line change
Expand Up @@ -9,13 +9,15 @@ function getAbsolutePath(value: string): string {
return dirname(require.resolve(join(value, "package.json")));
}
const config: StorybookConfig = {
stories: ["../src/**/*.stories.tsx"],
addons: [
getAbsolutePath("@storybook/addon-onboarding"),
getAbsolutePath("@storybook/addon-links"),
getAbsolutePath("@chromatic-com/storybook"),
getAbsolutePath("@storybook/addon-docs"),
],
features: {
experimentalRSC: true,
},
framework: {
name: getAbsolutePath("@storybook/nextjs"),
options: {},
Expand All @@ -26,8 +28,6 @@ const config: StorybookConfig = {
},
},
staticDirs: ["../public"],
features: {
experimentalRSC: true,
},
stories: ["../src/**/*.stories.tsx"],
};
export default config;
54 changes: 25 additions & 29 deletions apps/dashboard/.storybook/preview.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -2,11 +2,10 @@ import type { Preview } from "@storybook/nextjs";
import "../src/global.css";
import { QueryClient, QueryClientProvider } from "@tanstack/react-query";
import { MoonIcon, SunIcon } from "lucide-react";
import { ThemeProvider, useTheme } from "next-themes";
import { Inter as interFont } from "next/font/google";
import { ThemeProvider, useTheme } from "next-themes";
// biome-ignore lint/style/useImportType: <explanation>
import React from "react";
import { useEffect } from "react";
import React, { useEffect } from "react";
import { Toaster } from "sonner";
import { Button } from "../src/@/components/ui/button";

Expand All @@ -18,45 +17,33 @@ const fontSans = interFont({
});

const customViewports = {
xs: {
// Regular sized phones (iphone 15 / 15 pro)
name: "iPhone",
styles: {
width: "390px",
height: "844px",
},
},
sm: {
// Larger phones (iphone 15 plus / 15 pro max)
name: "iPhone Plus",
styles: {
width: "430px",
height: "932px",
width: "430px",
},
},
};

const preview: Preview = {
parameters: {
viewport: {
viewports: customViewports,
},
controls: {
matchers: {
color: /(background|color)$/i,
date: /Date$/i,
},
xs: {
// Regular sized phones (iphone 15 / 15 pro)
name: "iPhone",
styles: {
height: "844px",
width: "390px",
},
},
};

const preview: Preview = {
decorators: [
(Story) => {
return (
<ThemeProvider
attribute="class"
defaultTheme="dark"
disableTransitionOnChange
enableSystem={false}
defaultTheme="dark"
>
<StoryLayout>
<Story />
Expand All @@ -65,13 +52,22 @@ const preview: Preview = {
);
},
],
parameters: {
controls: {
matchers: {
color: /(background|color)$/i,
date: /Date$/i,
},
},
viewport: {
viewports: customViewports,
},
},
};

export default preview;

function StoryLayout(props: {
children: React.ReactNode;
}) {
function StoryLayout(props: { children: React.ReactNode }) {
const { setTheme, theme } = useTheme();

useEffect(() => {
Expand All @@ -83,10 +79,10 @@ function StoryLayout(props: {
<div className="flex min-h-dvh min-w-0 flex-col bg-background text-foreground">
<div className="fixed right-0 bottom-0 z-50 flex justify-end gap-2 p-4">
<Button
className="h-auto w-auto shrink-0 rounded-full p-2"
onClick={() => setTheme(theme === "dark" ? "light" : "dark")}
size="sm"
variant="outline"
className="h-auto w-auto shrink-0 rounded-full p-2"
>
{theme === "dark" ? (
<MoonIcon className="size-4" />
Expand Down
2 changes: 1 addition & 1 deletion apps/dashboard/biome.json
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
{
"$schema": "https://biomejs.dev/schemas/2.0.4/schema.json",
"$schema": "https://biomejs.dev/schemas/2.0.6/schema.json",
"extends": "//"
}
9 changes: 6 additions & 3 deletions apps/dashboard/framer-rewrites.js
Original file line number Diff line number Diff line change
Expand Up @@ -14,12 +14,15 @@ module.exports = [
"/in-app-wallets",
"/transactions",
// -- end build category
// -- storage

// -- scale category
"/rpc",
"/insight",
"/storage",
// -- end scale category

// -- nebula
"/nebula",
// --insight
"/insight",
// -- contracts
"/contracts",
"/contracts/modular-contracts",
Expand Down
44 changes: 19 additions & 25 deletions apps/dashboard/next.config.ts
Original file line number Diff line number Diff line change
Expand Up @@ -208,35 +208,29 @@ function getConfig(): NextConfig {
const withBundleAnalyzer = require("@next/bundle-analyzer")({
enabled: process.env.ANALYZE === "true",
});
// eslint-disable-next-line @typescript-eslint/no-var-requires
const { withPlausibleProxy } = require("next-plausible");

// eslint-disable-next-line @typescript-eslint/no-var-requires
const { withSentryConfig } = require("@sentry/nextjs");
return withBundleAnalyzer(
withPlausibleProxy({
customDomain: "https://pl.thirdweb.com",
scriptName: "pl",
})(
withSentryConfig(
{
...baseNextConfig,
// @ts-expect-error - this is a valid option
webpack: (config) => {
if (config.cache) {
config.cache = Object.freeze({
type: "memory",
});
}
config.module = {
...config.module,
exprContextCritical: false,
};
// Important: return the modified config
return config;
},
withSentryConfig(
{
...baseNextConfig,
// @ts-expect-error - this is a valid option
webpack: (config) => {
if (config.cache) {
config.cache = Object.freeze({
type: "memory",
});
}
config.module = {
...config.module,
exprContextCritical: false,
};
// Important: return the modified config
return config;
},
SENTRY_OPTIONS,
),
},
SENTRY_OPTIONS,
),
);
}
Expand Down
50 changes: 25 additions & 25 deletions apps/dashboard/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
"@chakra-ui/styled-system": "^2.9.2",
"@chakra-ui/theme-tools": "^2.1.2",
"@emotion/react": "11.14.0",
"@emotion/styled": "11.14.0",
"@emotion/styled": "11.14.1",
"@hookform/resolvers": "^3.9.1",
"@marsidev/react-turnstile": "^1.1.0",
"@radix-ui/react-accordion": "^1.2.11",
Expand All @@ -24,10 +24,10 @@
"@radix-ui/react-slot": "^1.2.3",
"@radix-ui/react-switch": "^1.2.5",
"@radix-ui/react-tooltip": "1.2.7",
"@scalar/api-reference-react": "^0.6.19",
"@sentry/nextjs": "9.29.0",
"@scalar/api-reference-react": "0.7.25",
"@sentry/nextjs": "9.34.0",
"@shazow/whatsabi": "0.22.2",
"@tanstack/react-query": "5.80.7",
"@tanstack/react-query": "5.81.5",
"@tanstack/react-table": "^8.21.3",
"@thirdweb-dev/service-utils": "workspace:*",
"@thirdweb-dev/vault-sdk": "workspace:*",
Expand All @@ -41,29 +41,29 @@
"compare-versions": "^6.1.0",
"date-fns": "4.1.0",
"fast-xml-parser": "^5.2.5",
"framer-motion": "12.17.0",
"framer-motion": "12.23.0",
"fuse.js": "7.1.0",
"input-otp": "^1.4.1",
"ioredis": "^5.6.1",
"ipaddr.js": "^2.2.0",
"lucide-react": "0.514.0",
"next": "15.3.3",
"next-plausible": "^3.12.4",
"lucide-react": "0.525.0",
"next": "15.3.5",
"next-themes": "^0.4.6",
"nextjs-toploader": "^1.6.12",
"nuqs": "^2.4.3",
"p-limit": "^6.2.0",
"papaparse": "^5.5.3",
"pluralize": "^8.0.0",
"posthog-js": "1.252.0",
"prettier": "3.5.3",
"posthog-js": "1.256.1",
"posthog-node": "^5.3.1",
"prettier": "3.6.2",
"qrcode": "^1.5.3",
"react": "19.1.0",
"react-children-utilities": "^2.10.0",
"react-day-picker": "^8.10.1",
"react-dom": "19.1.0",
"react-dropzone": "^14.3.8",
"react-error-boundary": "^5.0.0",
"react-error-boundary": "6.0.0",
"react-hook-form": "7.55.0",
"react-markdown": "10.1.0",
"react-table": "^7.8.0",
Expand All @@ -72,7 +72,7 @@
"responsive-rsc": "0.0.7",
"server-only": "^0.0.1",
"shiki": "1.27.0",
"sonner": "2.0.5",
"sonner": "2.0.6",
"spdx-correct": "^3.2.0",
"stripe": "17.7.0",
"swagger-ui-react": "^5.24.1",
Expand All @@ -82,19 +82,19 @@
"tiny-invariant": "^1.3.3",
"use-debounce": "^10.0.5",
"vaul": "^1.1.2",
"zod": "3.25.67"
"zod": "3.25.75"
},
"devDependencies": {
"@biomejs/biome": "2.0.4",
"@biomejs/biome": "2.0.6",
"@chakra-ui/cli": "^2.4.1",
"@chromatic-com/storybook": "4.0.0",
"@next/bundle-analyzer": "15.3.3",
"@next/eslint-plugin-next": "15.3.3",
"@playwright/test": "1.53.0",
"@storybook/addon-docs": "9.0.8",
"@storybook/addon-links": "9.0.8",
"@storybook/addon-onboarding": "9.0.8",
"@storybook/nextjs": "9.0.8",
"@chromatic-com/storybook": "4.0.1",
"@next/bundle-analyzer": "15.3.5",
"@next/eslint-plugin-next": "15.3.5",
"@playwright/test": "1.53.2",
"@storybook/addon-docs": "9.0.15",
"@storybook/addon-links": "9.0.15",
"@storybook/addon-onboarding": "9.0.15",
"@storybook/nextjs": "9.0.15",
"@types/color": "4.2.0",
"@types/node": "22.14.1",
"@types/papaparse": "^5.3.16",
Expand All @@ -112,11 +112,11 @@
"eslint": "8.57.0",
"eslint-config-biome": "1.9.4",
"eslint-plugin-react-compiler": "19.1.0-rc.2",
"eslint-plugin-storybook": "9.0.8",
"eslint-plugin-storybook": "9.0.15",
"knip": "5.60.2",
"next-sitemap": "^4.2.3",
"postcss": "8.5.5",
"storybook": "9.0.8",
"postcss": "8.5.6",
"storybook": "9.0.15",
"tailwindcss": "3.4.17",
"typescript": "5.8.3"
},
Expand Down
16 changes: 8 additions & 8 deletions apps/dashboard/public/assets/examples/example.json
Original file line number Diff line number Diff line change
@@ -1,8 +1,5 @@
[
{
"name": "Your Collection #1",
"description": "Remember to replace this description",
"image": "ipfs://NewUriToReplace/1.png",
"attributes": [
{
"trait_type": "Background",
Expand Down Expand Up @@ -32,12 +29,12 @@
"trait_type": "Top lid",
"value": "High"
}
]
],
"description": "Remember to replace this description",
"image": "ipfs://NewUriToReplace/1.png",
"name": "Your Collection #1"
},
{
"name": "Your Collection #2",
"description": "Remember to replace this description",
"image": "ipfs://NewUriToReplace/2.png",
"attributes": [
{
"trait_type": "Background",
Expand Down Expand Up @@ -67,6 +64,9 @@
"trait_type": "Top lid",
"value": "Middle"
}
]
],
"description": "Remember to replace this description",
"image": "ipfs://NewUriToReplace/2.png",
"name": "Your Collection #2"
}
]
Loading
Loading