Эх сурвалжийг харах

fix(solana_utils): fixed build config

benduran 4 долоо хоног өмнө
parent
commit
1e330294c6

+ 20 - 20
apps/hermes/client/js/package.json

@@ -19,29 +19,29 @@
     "access": "public",
     "exports": {
       ".": {
-        "import": "./dist/esm/index.mjs",
-        "require": "./dist/cjs/index.cjs",
-        "types": "./dist/esm/index.d.ts"
+        "import": "[object Object]",
+        "require": ".cjs[object Object]",
+        "types": ".d.ts[object Object]"
       },
       "./examples/HermesClient": {
-        "import": "./dist/esm/examples/HermesClient.mjs",
-        "require": "./dist/cjs/examples/HermesClient.cjs",
-        "types": "./dist/esm/examples/HermesClient.d.ts"
+        "import": "[object Object]",
+        "require": ".cjs[object Object]",
+        "types": ".d.ts[object Object]"
       },
       "./HermesClient": {
-        "import": "./dist/esm/HermesClient.mjs",
-        "require": "./dist/cjs/HermesClient.cjs",
-        "types": "./dist/esm/HermesClient.d.ts"
+        "import": "[object Object]",
+        "require": ".cjs[object Object]",
+        "types": ".d.ts[object Object]"
       },
       "./utils": {
-        "import": "./dist/esm/utils.mjs",
-        "require": "./dist/cjs/utils.cjs",
-        "types": "./dist/esm/utils.d.ts"
+        "import": "[object Object]",
+        "require": ".cjs[object Object]",
+        "types": ".d.ts[object Object]"
       },
       "./zodSchemas": {
-        "import": "./dist/esm/zodSchemas.mjs",
-        "require": "./dist/cjs/zodSchemas.cjs",
-        "types": "./dist/esm/zodSchemas.d.ts"
+        "import": "[object Object]",
+        "require": ".cjs[object Object]",
+        "types": ".d.ts[object Object]"
       },
       "./package.json": "./package.json"
     }
@@ -91,11 +91,11 @@
   },
   "packageManager": "pnpm@10.19.0",
   "exports": {
-    ".": "./src/index.ts",
-    "./examples/HermesClient": "./src/examples/HermesClient.ts",
-    "./HermesClient": "./src/HermesClient.ts",
-    "./utils": "./src/utils.ts",
-    "./zodSchemas": "./src/zodSchemas.ts",
+    ".": "./dist/esm/index.mjs",
+    "./examples/HermesClient": "./dist/esm/examples/HermesClient.mjs",
+    "./HermesClient": "./dist/esm/HermesClient.mjs",
+    "./utils": "./dist/esm/utils.mjs",
+    "./zodSchemas": "./dist/esm/zodSchemas.mjs",
     "./package.json": "./package.json"
   },
   "main": "./dist/cjs/index.js",

+ 1 - 0
apps/staking/next-env.d.ts

@@ -1,5 +1,6 @@
 /// <reference types="next" />
 /// <reference types="next/image-types/global" />
+/// <reference path="./.next/types/routes.d.ts" />
 
 // NOTE: This file should not be edited
 // see https://nextjs.org/docs/app/api-reference/config/typescript for more information.

+ 76 - 76
governance/pyth_staking_sdk/package.json

@@ -4,25 +4,25 @@
   "description": "Pyth staking SDK",
   "type": "module",
   "exports": {
-    ".": "./src/index.ts",
-    "./constants": "./src/constants.ts",
-    "./pdas": "./src/pdas.ts",
-    "./pyth-staking-client": "./src/pyth-staking-client.ts",
-    "./pythnet-client": "./src/pythnet-client.ts",
-    "./types": "./src/types.ts",
-    "./types/integrity-pool": "./src/types/integrity-pool.ts",
-    "./types/publisher-caps": "./src/types/publisher-caps.ts",
-    "./types/stake-caps-parameters": "./src/types/stake-caps-parameters.ts",
-    "./types/staking": "./src/types/staking.ts",
-    "./utils/apy": "./src/utils/apy.ts",
-    "./utils/bigint": "./src/utils/bigint.ts",
-    "./utils/bn": "./src/utils/bn.ts",
-    "./utils/clock": "./src/utils/clock.ts",
-    "./utils/pool": "./src/utils/pool.ts",
-    "./utils/position": "./src/utils/position.ts",
-    "./utils/transaction": "./src/utils/transaction.ts",
-    "./utils/vesting": "./src/utils/vesting.ts",
-    "./utils/wallet": "./src/utils/wallet.ts",
+    ".": "./dist/esm/index.js",
+    "./constants": "./dist/esm/constants.js",
+    "./pdas": "./dist/esm/pdas.js",
+    "./pyth-staking-client": "./dist/esm/pyth-staking-client.js",
+    "./pythnet-client": "./dist/esm/pythnet-client.js",
+    "./types": "./dist/esm/types.js",
+    "./types/integrity-pool": "./dist/esm/types/integrity-pool.js",
+    "./types/publisher-caps": "./dist/esm/types/publisher-caps.js",
+    "./types/stake-caps-parameters": "./dist/esm/types/stake-caps-parameters.js",
+    "./types/staking": "./dist/esm/types/staking.js",
+    "./utils/apy": "./dist/esm/utils/apy.js",
+    "./utils/bigint": "./dist/esm/utils/bigint.js",
+    "./utils/bn": "./dist/esm/utils/bn.js",
+    "./utils/clock": "./dist/esm/utils/clock.js",
+    "./utils/pool": "./dist/esm/utils/pool.js",
+    "./utils/position": "./dist/esm/utils/position.js",
+    "./utils/transaction": "./dist/esm/utils/transaction.js",
+    "./utils/vesting": "./dist/esm/utils/vesting.js",
+    "./utils/wallet": "./dist/esm/utils/wallet.js",
     "./package.json": "./package.json"
   },
   "files": [
@@ -36,99 +36,99 @@
     "access": "public",
     "exports": {
       ".": {
-        "import": "./dist/esm/index.js",
-        "require": "./dist/cjs/index.cjs",
-        "types": "./dist/esm/index.d.ts"
+        "import": "[object Object]",
+        "require": ".cjs[object Object]",
+        "types": ".d.ts[object Object]"
       },
       "./constants": {
-        "import": "./dist/esm/constants.js",
-        "require": "./dist/cjs/constants.cjs",
-        "types": "./dist/esm/constants.d.ts"
+        "import": "[object Object]",
+        "require": ".cjs[object Object]",
+        "types": ".d.ts[object Object]"
       },
       "./pdas": {
-        "import": "./dist/esm/pdas.js",
-        "require": "./dist/cjs/pdas.cjs",
-        "types": "./dist/esm/pdas.d.ts"
+        "import": "[object Object]",
+        "require": ".cjs[object Object]",
+        "types": ".d.ts[object Object]"
       },
       "./pyth-staking-client": {
-        "import": "./dist/esm/pyth-staking-client.js",
-        "require": "./dist/cjs/pyth-staking-client.cjs",
-        "types": "./dist/esm/pyth-staking-client.d.ts"
+        "import": "[object Object]",
+        "require": ".cjs[object Object]",
+        "types": ".d.ts[object Object]"
       },
       "./pythnet-client": {
-        "import": "./dist/esm/pythnet-client.js",
-        "require": "./dist/cjs/pythnet-client.cjs",
-        "types": "./dist/esm/pythnet-client.d.ts"
+        "import": "[object Object]",
+        "require": ".cjs[object Object]",
+        "types": ".d.ts[object Object]"
       },
       "./types": {
-        "import": "./dist/esm/types.js",
-        "require": "./dist/cjs/types.cjs",
-        "types": "./dist/esm/types.d.ts"
+        "import": "[object Object]",
+        "require": ".cjs[object Object]",
+        "types": ".d.ts[object Object]"
       },
       "./types/integrity-pool": {
-        "import": "./dist/esm/types/integrity-pool.js",
-        "require": "./dist/cjs/types/integrity-pool.cjs",
-        "types": "./dist/esm/types/integrity-pool.d.ts"
+        "import": "[object Object]",
+        "require": ".cjs[object Object]",
+        "types": ".d.ts[object Object]"
       },
       "./types/publisher-caps": {
-        "import": "./dist/esm/types/publisher-caps.js",
-        "require": "./dist/cjs/types/publisher-caps.cjs",
-        "types": "./dist/esm/types/publisher-caps.d.ts"
+        "import": "[object Object]",
+        "require": ".cjs[object Object]",
+        "types": ".d.ts[object Object]"
       },
       "./types/stake-caps-parameters": {
-        "import": "./dist/esm/types/stake-caps-parameters.js",
-        "require": "./dist/cjs/types/stake-caps-parameters.cjs",
-        "types": "./dist/esm/types/stake-caps-parameters.d.ts"
+        "import": "[object Object]",
+        "require": ".cjs[object Object]",
+        "types": ".d.ts[object Object]"
       },
       "./types/staking": {
-        "import": "./dist/esm/types/staking.js",
-        "require": "./dist/cjs/types/staking.cjs",
-        "types": "./dist/esm/types/staking.d.ts"
+        "import": "[object Object]",
+        "require": ".cjs[object Object]",
+        "types": ".d.ts[object Object]"
       },
       "./utils/apy": {
-        "import": "./dist/esm/utils/apy.js",
-        "require": "./dist/cjs/utils/apy.cjs",
-        "types": "./dist/esm/utils/apy.d.ts"
+        "import": "[object Object]",
+        "require": ".cjs[object Object]",
+        "types": ".d.ts[object Object]"
       },
       "./utils/bigint": {
-        "import": "./dist/esm/utils/bigint.js",
-        "require": "./dist/cjs/utils/bigint.cjs",
-        "types": "./dist/esm/utils/bigint.d.ts"
+        "import": "[object Object]",
+        "require": ".cjs[object Object]",
+        "types": ".d.ts[object Object]"
       },
       "./utils/bn": {
-        "import": "./dist/esm/utils/bn.js",
-        "require": "./dist/cjs/utils/bn.cjs",
-        "types": "./dist/esm/utils/bn.d.ts"
+        "import": "[object Object]",
+        "require": ".cjs[object Object]",
+        "types": ".d.ts[object Object]"
       },
       "./utils/clock": {
-        "import": "./dist/esm/utils/clock.js",
-        "require": "./dist/cjs/utils/clock.cjs",
-        "types": "./dist/esm/utils/clock.d.ts"
+        "import": "[object Object]",
+        "require": ".cjs[object Object]",
+        "types": ".d.ts[object Object]"
       },
       "./utils/pool": {
-        "import": "./dist/esm/utils/pool.js",
-        "require": "./dist/cjs/utils/pool.cjs",
-        "types": "./dist/esm/utils/pool.d.ts"
+        "import": "[object Object]",
+        "require": ".cjs[object Object]",
+        "types": ".d.ts[object Object]"
       },
       "./utils/position": {
-        "import": "./dist/esm/utils/position.js",
-        "require": "./dist/cjs/utils/position.cjs",
-        "types": "./dist/esm/utils/position.d.ts"
+        "import": "[object Object]",
+        "require": ".cjs[object Object]",
+        "types": ".d.ts[object Object]"
       },
       "./utils/transaction": {
-        "import": "./dist/esm/utils/transaction.js",
-        "require": "./dist/cjs/utils/transaction.cjs",
-        "types": "./dist/esm/utils/transaction.d.ts"
+        "import": "[object Object]",
+        "require": ".cjs[object Object]",
+        "types": ".d.ts[object Object]"
       },
       "./utils/vesting": {
-        "import": "./dist/esm/utils/vesting.js",
-        "require": "./dist/cjs/utils/vesting.cjs",
-        "types": "./dist/esm/utils/vesting.d.ts"
+        "import": "[object Object]",
+        "require": ".cjs[object Object]",
+        "types": ".d.ts[object Object]"
       },
       "./utils/wallet": {
-        "import": "./dist/esm/utils/wallet.js",
-        "require": "./dist/cjs/utils/wallet.cjs",
-        "types": "./dist/esm/utils/wallet.d.ts"
+        "import": "[object Object]",
+        "require": ".cjs[object Object]",
+        "types": ".d.ts[object Object]"
       },
       "./package.json": "./package.json"
     }

+ 15 - 7
packages/build-ts-package/src/build-ts-package.js

@@ -49,9 +49,9 @@ export async function buildTsPackage(argv = process.argv) {
   const {
     all,
     cwd,
+    devExports,
     exclude,
     noCjs,
-    noDevExports,
     noDts,
     noEsm,
     outDir,
@@ -82,9 +82,9 @@ export async function buildTsPackage(argv = process.argv) {
         "if true, will not build the CommonJS variant of this package",
       type: "boolean",
     })
-    .option('noDevExports', {
+    .option('devExports', {
       default: false,
-      description: 'if set, will not symlink the uncompiled typescript files during local development. compiled versions will be used, instead.',
+      description: 'if set, will symlink the uncompiled typescript files during local development. if not set, compiled versions will be used, instead.',
       type: 'boolean',
     })
     .option("noDts", {
@@ -137,7 +137,8 @@ export async function buildTsPackage(argv = process.argv) {
     console.info(`building ${format} variant in ${cwd}`);
     console.info(`  tsconfig: ${tsconfig}`);
 
-    await build({
+    /** @type {import('tsdown').Options} */
+    const buildConfig = {
       clean: false,
       cwd,
       dts: !noDts,
@@ -155,16 +156,23 @@ export async function buildTsPackage(argv = process.argv) {
         ...exclude.map((ex) => String(ex)),
       ],
       exports:
-        format === "esm" || numFormats <= 1 ? { all, devExports: !noDevExports } : false,
+        format === "esm" || numFormats <= 1 ? all || devExports ? { all, devExports } : true : false,
       // do not attempt to resolve or import CSS, SCSS or SVG files
       external: [/\.s?css$/, /\.svg$/],
       format,
-      outDir: path.join(outDirPath, format),
+      // if there's only one outputted module format, we just take over the root of ./dist
+      // otherwise, we add the module type to the dist file path
+      outDir: numFormats <= 1 ? outDirPath : path.join(outDirPath, format),
       platform: "neutral",
       tsconfig,
       unbundle: true,
       watch,
-    });
+    };
+
+    console.info('using the following build config:')
+    console.info(buildConfig);
+
+    await build(buildConfig);
   }
   if (numFormats > 1) {
     // we need to manually set the cjs exports, since tsdown

+ 78 - 156
packages/component-library/package.json

@@ -7,87 +7,11 @@
     "node": ">=22",
     "pnpm": ">=10.19.0"
   },
-  "exports": {
-    "./AppShell": "./dist/esm/AppShell/index.js",
-    "./AppShell/amplitude": "./dist/esm/AppShell/amplitude.js",
-    "./AppShell/body-providers": "./dist/esm/AppShell/body-providers.js",
-    "./AppShell/fonts": "./dist/esm/AppShell/fonts.js",
-    "./AppShell/html-with-lang": "./dist/esm/AppShell/html-with-lang.js",
-    "./AppShell/i18n-provider": "./dist/esm/AppShell/i18n-provider.js",
-    "./AppShell/report-accessibility": "./dist/esm/AppShell/report-accessibility.js",
-    "./AppShell/router-provider": "./dist/esm/AppShell/router-provider.js",
-    "./AppShell/tabs": "./dist/esm/AppShell/tabs.js",
-    "./Badge": "./dist/esm/Badge/index.js",
-    "./Breadcrumbs": "./dist/esm/Breadcrumbs/index.js",
-    "./Button": "./dist/esm/Button/index.js",
-    "./Card": "./dist/esm/Card/index.js",
-    "./compose-providers": "./dist/esm/compose-providers.js",
-    "./CopyButton": "./dist/esm/CopyButton/index.js",
-    "./CrossfadeTabPanels": "./dist/esm/CrossfadeTabPanels/index.js",
-    "./DropdownCaretDown": "./dist/esm/DropdownCaretDown/index.js",
-    "./EntityList": "./dist/esm/EntityList/index.js",
-    "./ErrorPage": "./dist/esm/ErrorPage/index.js",
-    "./Footer": "./dist/esm/Footer/index.js",
-    "./Header": "./dist/esm/Header/index.js",
-    "./Header/theme-switch": "./dist/esm/Header/theme-switch.js",
-    "./InfoBox": "./dist/esm/InfoBox/index.js",
-    "./Link": "./dist/esm/Link/index.js",
-    "./MainNavTabs": "./dist/esm/MainNavTabs/index.js",
-    "./Meter": "./dist/esm/Meter/index.js",
-    "./MobileNavTabs": "./dist/esm/MobileNavTabs/index.js",
-    "./ModalDialog": "./dist/esm/ModalDialog/index.js",
-    "./NoResults": "./dist/esm/NoResults/index.js",
-    "./NotFoundPage": "./dist/esm/NotFoundPage/index.js",
-    "./omit-keys": "./dist/esm/omit-keys.js",
-    "./overlay-visible-context": "./dist/esm/overlay-visible-context.js",
-    "./Paginator": "./dist/esm/Paginator/index.js",
-    "./SearchButton": "./dist/esm/SearchButton/index.js",
-    "./SearchInput": "./dist/esm/SearchInput/index.js",
-    "./Select": "./dist/esm/Select/index.js",
-    "./SingleToggleGroup": "./dist/esm/SingleToggleGroup/index.js",
-    "./Skeleton": "./dist/esm/Skeleton/index.js",
-    "./social-links": "./dist/esm/social-links.js",
-    "./Spinner": "./dist/esm/Spinner/index.js",
-    "./StatCard": "./dist/esm/StatCard/index.js",
-    "./Status": "./dist/esm/Status/index.js",
-    "./Switch": "./dist/esm/Switch/index.js",
-    "./SymbolPairTag": "./dist/esm/SymbolPairTag/index.js",
-    "./Table": "./dist/esm/Table/index.js",
-    "./TableGrid": "./dist/esm/TableGrid/index.js",
-    "./TableGrid/dummy-row-data": "./dist/esm/TableGrid/dummy-row-data.js",
-    "./TableGrid/table-grid-props": "./dist/esm/TableGrid/table-grid-props.js",
-    "./TabList": "./dist/esm/TabList/index.js",
-    "./Term": "./dist/esm/Term/index.js",
-    "./unstyled/Breadcrumbs": "./dist/esm/unstyled/Breadcrumbs/index.js",
-    "./unstyled/Button": "./dist/esm/unstyled/Button/index.js",
-    "./unstyled/Dialog": "./dist/esm/unstyled/Dialog/index.js",
-    "./unstyled/GridList": "./dist/esm/unstyled/GridList/index.js",
-    "./unstyled/Label": "./dist/esm/unstyled/Label/index.js",
-    "./unstyled/Link": "./dist/esm/unstyled/Link/index.js",
-    "./unstyled/ListBox": "./dist/esm/unstyled/ListBox/index.js",
-    "./unstyled/Meter": "./dist/esm/unstyled/Meter/index.js",
-    "./unstyled/Popover": "./dist/esm/unstyled/Popover/index.js",
-    "./unstyled/SearchField": "./dist/esm/unstyled/SearchField/index.js",
-    "./unstyled/Select": "./dist/esm/unstyled/Select/index.js",
-    "./unstyled/Switch": "./dist/esm/unstyled/Switch/index.js",
-    "./unstyled/Table": "./dist/esm/unstyled/Table/index.js",
-    "./unstyled/Tabs": "./dist/esm/unstyled/Tabs/index.js",
-    "./unstyled/TextField": "./dist/esm/unstyled/TextField/index.js",
-    "./unstyled/Toolbar": "./dist/esm/unstyled/Toolbar/index.js",
-    "./use-prefetch": "./dist/esm/use-prefetch.js",
-    "./useAlert": "./dist/esm/useAlert/index.js",
-    "./useData": "./dist/esm/useData/index.js",
-    "./useDrawer": "./dist/esm/useDrawer/index.js",
-    "./useLogger": "./dist/esm/useLogger/index.js",
-    "./useQueryParamsPagination": "./dist/esm/useQueryParamsPagination/index.js",
-    "./Virtualizer": "./dist/esm/Virtualizer/index.js",
-    "./package.json": "./package.json"
-  },
   "scripts": {
-    "build": "build-ts-package --noCjs --noDevExports",
-    "build:scss": "copyfiles -u 1 \"src/**/*.scss\" dist/esm",
+    "build": "build-ts-package --noCjs",
+    "build:scss": "copyfiles -u 1 \"src/**/*.scss\" dist/",
     "build:storybook": "storybook build",
-    "build:svg": "copyfiles -u 1 \"src/**/*.svg\" dist/esm",
+    "build:svg": "copyfiles -u 1 \"src/**/*.svg\" dist/",
     "clean": "rm -rf ./dist",
     "fix:format": "prettier --write .",
     "fix:lint:eslint": "eslint --fix .",
@@ -161,82 +85,80 @@
     "typescript": "catalog:"
   },
   "packageManager": "pnpm@10.19.0",
-  "publishConfig": {
-    "exports": {
-      "./AppShell": "./dist/esm/AppShell/index.js",
-      "./AppShell/amplitude": "./dist/esm/AppShell/amplitude.js",
-      "./AppShell/body-providers": "./dist/esm/AppShell/body-providers.js",
-      "./AppShell/fonts": "./dist/esm/AppShell/fonts.js",
-      "./AppShell/html-with-lang": "./dist/esm/AppShell/html-with-lang.js",
-      "./AppShell/i18n-provider": "./dist/esm/AppShell/i18n-provider.js",
-      "./AppShell/report-accessibility": "./dist/esm/AppShell/report-accessibility.js",
-      "./AppShell/router-provider": "./dist/esm/AppShell/router-provider.js",
-      "./AppShell/tabs": "./dist/esm/AppShell/tabs.js",
-      "./Badge": "./dist/esm/Badge/index.js",
-      "./Breadcrumbs": "./dist/esm/Breadcrumbs/index.js",
-      "./Button": "./dist/esm/Button/index.js",
-      "./Card": "./dist/esm/Card/index.js",
-      "./compose-providers": "./dist/esm/compose-providers.js",
-      "./CopyButton": "./dist/esm/CopyButton/index.js",
-      "./CrossfadeTabPanels": "./dist/esm/CrossfadeTabPanels/index.js",
-      "./DropdownCaretDown": "./dist/esm/DropdownCaretDown/index.js",
-      "./EntityList": "./dist/esm/EntityList/index.js",
-      "./ErrorPage": "./dist/esm/ErrorPage/index.js",
-      "./Footer": "./dist/esm/Footer/index.js",
-      "./Header": "./dist/esm/Header/index.js",
-      "./Header/theme-switch": "./dist/esm/Header/theme-switch.js",
-      "./InfoBox": "./dist/esm/InfoBox/index.js",
-      "./Link": "./dist/esm/Link/index.js",
-      "./MainNavTabs": "./dist/esm/MainNavTabs/index.js",
-      "./Meter": "./dist/esm/Meter/index.js",
-      "./MobileNavTabs": "./dist/esm/MobileNavTabs/index.js",
-      "./ModalDialog": "./dist/esm/ModalDialog/index.js",
-      "./NoResults": "./dist/esm/NoResults/index.js",
-      "./NotFoundPage": "./dist/esm/NotFoundPage/index.js",
-      "./omit-keys": "./dist/esm/omit-keys.js",
-      "./overlay-visible-context": "./dist/esm/overlay-visible-context.js",
-      "./Paginator": "./dist/esm/Paginator/index.js",
-      "./SearchButton": "./dist/esm/SearchButton/index.js",
-      "./SearchInput": "./dist/esm/SearchInput/index.js",
-      "./Select": "./dist/esm/Select/index.js",
-      "./SingleToggleGroup": "./dist/esm/SingleToggleGroup/index.js",
-      "./Skeleton": "./dist/esm/Skeleton/index.js",
-      "./social-links": "./dist/esm/social-links.js",
-      "./Spinner": "./dist/esm/Spinner/index.js",
-      "./StatCard": "./dist/esm/StatCard/index.js",
-      "./Status": "./dist/esm/Status/index.js",
-      "./Switch": "./dist/esm/Switch/index.js",
-      "./SymbolPairTag": "./dist/esm/SymbolPairTag/index.js",
-      "./Table": "./dist/esm/Table/index.js",
-      "./TableGrid": "./dist/esm/TableGrid/index.js",
-      "./TableGrid/dummy-row-data": "./dist/esm/TableGrid/dummy-row-data.js",
-      "./TableGrid/table-grid-props": "./dist/esm/TableGrid/table-grid-props.js",
-      "./TabList": "./dist/esm/TabList/index.js",
-      "./Term": "./dist/esm/Term/index.js",
-      "./unstyled/Breadcrumbs": "./dist/esm/unstyled/Breadcrumbs/index.js",
-      "./unstyled/Button": "./dist/esm/unstyled/Button/index.js",
-      "./unstyled/Dialog": "./dist/esm/unstyled/Dialog/index.js",
-      "./unstyled/GridList": "./dist/esm/unstyled/GridList/index.js",
-      "./unstyled/Label": "./dist/esm/unstyled/Label/index.js",
-      "./unstyled/Link": "./dist/esm/unstyled/Link/index.js",
-      "./unstyled/ListBox": "./dist/esm/unstyled/ListBox/index.js",
-      "./unstyled/Meter": "./dist/esm/unstyled/Meter/index.js",
-      "./unstyled/Popover": "./dist/esm/unstyled/Popover/index.js",
-      "./unstyled/SearchField": "./dist/esm/unstyled/SearchField/index.js",
-      "./unstyled/Select": "./dist/esm/unstyled/Select/index.js",
-      "./unstyled/Switch": "./dist/esm/unstyled/Switch/index.js",
-      "./unstyled/Table": "./dist/esm/unstyled/Table/index.js",
-      "./unstyled/Tabs": "./dist/esm/unstyled/Tabs/index.js",
-      "./unstyled/TextField": "./dist/esm/unstyled/TextField/index.js",
-      "./unstyled/Toolbar": "./dist/esm/unstyled/Toolbar/index.js",
-      "./use-prefetch": "./dist/esm/use-prefetch.js",
-      "./useAlert": "./dist/esm/useAlert/index.js",
-      "./useData": "./dist/esm/useData/index.js",
-      "./useDrawer": "./dist/esm/useDrawer/index.js",
-      "./useLogger": "./dist/esm/useLogger/index.js",
-      "./useQueryParamsPagination": "./dist/esm/useQueryParamsPagination/index.js",
-      "./Virtualizer": "./dist/esm/Virtualizer/index.js",
-      "./package.json": "./package.json"
-    }
+  "exports": {
+    "./AppShell": "./dist/AppShell/index.js",
+    "./AppShell/amplitude": "./dist/AppShell/amplitude.js",
+    "./AppShell/body-providers": "./dist/AppShell/body-providers.js",
+    "./AppShell/fonts": "./dist/AppShell/fonts.js",
+    "./AppShell/html-with-lang": "./dist/AppShell/html-with-lang.js",
+    "./AppShell/i18n-provider": "./dist/AppShell/i18n-provider.js",
+    "./AppShell/report-accessibility": "./dist/AppShell/report-accessibility.js",
+    "./AppShell/router-provider": "./dist/AppShell/router-provider.js",
+    "./AppShell/tabs": "./dist/AppShell/tabs.js",
+    "./Badge": "./dist/Badge/index.js",
+    "./Breadcrumbs": "./dist/Breadcrumbs/index.js",
+    "./Button": "./dist/Button/index.js",
+    "./Card": "./dist/Card/index.js",
+    "./compose-providers": "./dist/compose-providers.js",
+    "./CopyButton": "./dist/CopyButton/index.js",
+    "./CrossfadeTabPanels": "./dist/CrossfadeTabPanels/index.js",
+    "./DropdownCaretDown": "./dist/DropdownCaretDown/index.js",
+    "./EntityList": "./dist/EntityList/index.js",
+    "./ErrorPage": "./dist/ErrorPage/index.js",
+    "./Footer": "./dist/Footer/index.js",
+    "./Header": "./dist/Header/index.js",
+    "./Header/theme-switch": "./dist/Header/theme-switch.js",
+    "./InfoBox": "./dist/InfoBox/index.js",
+    "./Link": "./dist/Link/index.js",
+    "./MainNavTabs": "./dist/MainNavTabs/index.js",
+    "./Meter": "./dist/Meter/index.js",
+    "./MobileNavTabs": "./dist/MobileNavTabs/index.js",
+    "./ModalDialog": "./dist/ModalDialog/index.js",
+    "./NoResults": "./dist/NoResults/index.js",
+    "./NotFoundPage": "./dist/NotFoundPage/index.js",
+    "./omit-keys": "./dist/omit-keys.js",
+    "./overlay-visible-context": "./dist/overlay-visible-context.js",
+    "./Paginator": "./dist/Paginator/index.js",
+    "./SearchButton": "./dist/SearchButton/index.js",
+    "./SearchInput": "./dist/SearchInput/index.js",
+    "./Select": "./dist/Select/index.js",
+    "./SingleToggleGroup": "./dist/SingleToggleGroup/index.js",
+    "./Skeleton": "./dist/Skeleton/index.js",
+    "./social-links": "./dist/social-links.js",
+    "./Spinner": "./dist/Spinner/index.js",
+    "./StatCard": "./dist/StatCard/index.js",
+    "./Status": "./dist/Status/index.js",
+    "./Switch": "./dist/Switch/index.js",
+    "./SymbolPairTag": "./dist/SymbolPairTag/index.js",
+    "./Table": "./dist/Table/index.js",
+    "./TableGrid": "./dist/TableGrid/index.js",
+    "./TableGrid/dummy-row-data": "./dist/TableGrid/dummy-row-data.js",
+    "./TableGrid/table-grid-props": "./dist/TableGrid/table-grid-props.js",
+    "./TabList": "./dist/TabList/index.js",
+    "./Term": "./dist/Term/index.js",
+    "./unstyled/Breadcrumbs": "./dist/unstyled/Breadcrumbs/index.js",
+    "./unstyled/Button": "./dist/unstyled/Button/index.js",
+    "./unstyled/Dialog": "./dist/unstyled/Dialog/index.js",
+    "./unstyled/GridList": "./dist/unstyled/GridList/index.js",
+    "./unstyled/Label": "./dist/unstyled/Label/index.js",
+    "./unstyled/Link": "./dist/unstyled/Link/index.js",
+    "./unstyled/ListBox": "./dist/unstyled/ListBox/index.js",
+    "./unstyled/Meter": "./dist/unstyled/Meter/index.js",
+    "./unstyled/Popover": "./dist/unstyled/Popover/index.js",
+    "./unstyled/SearchField": "./dist/unstyled/SearchField/index.js",
+    "./unstyled/Select": "./dist/unstyled/Select/index.js",
+    "./unstyled/Switch": "./dist/unstyled/Switch/index.js",
+    "./unstyled/Table": "./dist/unstyled/Table/index.js",
+    "./unstyled/Tabs": "./dist/unstyled/Tabs/index.js",
+    "./unstyled/TextField": "./dist/unstyled/TextField/index.js",
+    "./unstyled/Toolbar": "./dist/unstyled/Toolbar/index.js",
+    "./use-prefetch": "./dist/use-prefetch.js",
+    "./useAlert": "./dist/useAlert/index.js",
+    "./useData": "./dist/useData/index.js",
+    "./useDrawer": "./dist/useDrawer/index.js",
+    "./useLogger": "./dist/useLogger/index.js",
+    "./useQueryParamsPagination": "./dist/useQueryParamsPagination/index.js",
+    "./Virtualizer": "./dist/Virtualizer/index.js",
+    "./package.json": "./package.json"
   }
 }

+ 3 - 0
pnpm-lock.yaml

@@ -3082,6 +3082,9 @@ importers:
         specifier: ^2.2.7
         version: 2.2.7
     devDependencies:
+      '@cprussin/tsconfig':
+        specifier: 'catalog:'
+        version: 3.1.2(typescript@4.9.5)
       '@solana/wallet-adapter-react':
         specifier: ^0.15.28
         version: 0.15.36(@solana/web3.js@1.98.0(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(bs58@5.0.0)(react-native@0.78.2(@babel/core@7.27.1)(@babel/preset-env@7.26.9(@babel/core@7.27.1))(@types/react@19.1.0)(bufferutil@4.0.9)(react@19.1.0)(utf-8-validate@5.0.10))(react@19.1.0)

+ 9 - 26
target_chains/solana/sdk/js/solana_utils/package.json

@@ -3,8 +3,6 @@
   "version": "0.5.0",
   "description": "Utility functions for Solana",
   "homepage": "https://pyth.network",
-  "main": "./dist/cjs/index.js",
-  "types": "./dist/esm/index.d.mts",
   "files": [
     "lib/**/*",
     "dist/**/*"
@@ -15,28 +13,10 @@
     "directory": "target_chains/solana/sdk/js/solana_utils"
   },
   "publishConfig": {
-    "access": "public",
-    "exports": {
-      ".": {
-        "import": "./dist/esm/index.mjs",
-        "require": "./dist/cjs/index.cjs",
-        "types": "./dist/esm/index.d.ts"
-      },
-      "./jito": {
-        "import": "./dist/esm/jito.mjs",
-        "require": "./dist/cjs/jito.cjs",
-        "types": "./dist/esm/jito.d.ts"
-      },
-      "./transaction": {
-        "import": "./dist/esm/transaction.mjs",
-        "require": "./dist/cjs/transaction.cjs",
-        "types": "./dist/esm/transaction.d.ts"
-      },
-      "./package.json": "./package.json"
-    }
+    "access": "public"
   },
   "scripts": {
-    "build": "build-ts-package",
+    "build": "build-ts-package --noCjs",
     "test:unit": "jest",
     "test:lint": "eslint src/ --max-warnings 0",
     "test:format": "prettier --check \"src/**/*.ts\"",
@@ -52,6 +32,7 @@
   ],
   "license": "Apache-2.0",
   "devDependencies": {
+    "@cprussin/tsconfig": "catalog:",
     "@solana/wallet-adapter-react": "^0.15.28",
     "@types/jest": "^29.4.0",
     "@types/node": "^22.5.1",
@@ -76,11 +57,13 @@
     "pnpm": ">=10.19.0"
   },
   "packageManager": "pnpm@10.19.0",
-  "module": "./dist/esm/index.mjs",
+  "main": "./dist/index.mjs",
+  "module": "./dist/index.mjs",
+  "types": "./dist/index.d.mts",
   "exports": {
-    ".": "./src/index.ts",
-    "./jito": "./src/jito.ts",
-    "./transaction": "./src/transaction.ts",
+    ".": "./dist/index.mjs",
+    "./jito": "./dist/jito.mjs",
+    "./transaction": "./dist/transaction.mjs",
     "./package.json": "./package.json"
   }
 }

+ 2 - 2
target_chains/solana/sdk/js/solana_utils/src/index.ts

@@ -2,9 +2,9 @@ export {
   getSizeOfTransaction,
   getSizeOfCompressedU16,
   TransactionBuilder,
-  InstructionWithEphemeralSigners,
+  type InstructionWithEphemeralSigners,
   PACKET_DATA_SIZE_WITH_ROOM_FOR_COMPUTE_BUDGET,
-  PriorityFeeConfig,
+  type PriorityFeeConfig,
   sendTransactions,
   DEFAULT_PRIORITY_FEE_CONFIG,
 } from "./transaction";

+ 3 - 3
target_chains/solana/sdk/js/solana_utils/src/jito.ts

@@ -1,8 +1,8 @@
-import { dummyLogger, Logger } from "ts-log";
+import { dummyLogger, type Logger } from "ts-log";
 import { Wallet } from "@coral-xyz/anchor";
 import {
   PublicKey,
-  Signer,
+  type Signer,
   SystemProgram,
   TransactionInstruction,
   VersionedTransaction,
@@ -24,7 +24,7 @@ export const TIP_ACCOUNTS = [
 
 export function getRandomTipAccount(): PublicKey {
   const randomInt = Math.floor(Math.random() * TIP_ACCOUNTS.length);
-  return new PublicKey(TIP_ACCOUNTS[randomInt]);
+  return new PublicKey(TIP_ACCOUNTS[randomInt]!);
 }
 
 export function buildJitoTipInstruction(

+ 14 - 9
target_chains/solana/sdk/js/solana_utils/src/transaction.ts

@@ -4,8 +4,8 @@ import {
   Connection,
   PACKET_DATA_SIZE,
   PublicKey,
-  SignatureResult,
-  Signer,
+  type SignatureResult,
+  type Signer,
   Transaction,
   TransactionInstruction,
   TransactionMessage,
@@ -188,9 +188,9 @@ export class TransactionBuilder {
     } else {
       const sizeWithComputeUnits = getSizeOfTransaction(
         [
-          ...this.transactionInstructions[
+          ...(this.transactionInstructions[
             this.transactionInstructions.length - 1
-          ].instructions,
+          ]?.instructions ?? []),
           instruction,
           this.transactionInstructions.length % JITO_BUNDLE_SIZE === 0 // This transaction may be the first of a Jito bundle, so we leave room for a Jito tip transfer.
             ? buildJitoTipInstruction(this.payer, 1)
@@ -205,13 +205,16 @@ export class TransactionBuilder {
       if (sizeWithComputeUnits <= PACKET_DATA_SIZE) {
         this.transactionInstructions[
           this.transactionInstructions.length - 1
-        ].instructions.push(instruction);
+        ]?.instructions.push(instruction);
         this.transactionInstructions[
           this.transactionInstructions.length - 1
-        ].signers.push(...signers);
-        this.transactionInstructions[
+        ]?.signers.push(...signers);
+        const inst = this.transactionInstructions[
           this.transactionInstructions.length - 1
-        ].computeUnits += computeUnits ?? 0;
+        ];
+        if (inst) {
+          inst.computeUnits += computeUnits ?? 0;
+        }
       } else
         this.transactionInstructions.push({
           instructions: [instruction],
@@ -226,7 +229,9 @@ export class TransactionBuilder {
    */
   addInstructions(instructions: InstructionWithEphemeralSigners[]) {
     for (const { instruction, signers, computeUnits } of instructions) {
-      this.addInstruction({ instruction, signers, computeUnits });
+      if (typeof computeUnits === 'number') {
+        this.addInstruction({ instruction, signers, computeUnits });
+      }
     }
   }
 

+ 9 - 0
target_chains/solana/sdk/js/solana_utils/tsconfig.build.json

@@ -0,0 +1,9 @@
+{
+  "extends": "./tsconfig.json",
+  "compilerOptions": {
+    "noEmit": false,
+    "incremental": false,
+    "declaration": true,
+    "verbatimModuleSyntax": false
+  }
+}

+ 2 - 4
target_chains/solana/sdk/js/solana_utils/tsconfig.json

@@ -1,9 +1,7 @@
 {
-  "extends": "../../../../../tsconfig.base.json",
-  "include": ["src/**/*.ts", "src/**/*.json"],
+  "extends": "@cprussin/tsconfig/nextjs.json",
   "exclude": ["node_modules", "**/__tests__/*"],
   "compilerOptions": {
-    "rootDir": "src/",
-    "outDir": "./lib"
+    "rootDir": "src/"
   }
 }