diff --git a/.gitignore b/.gitignore
index ce61f29..4ce910e 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,4 +1,24 @@
-node_modules
-dist
-.env*
-.DS_Store
\ No newline at end of file
+# dependencies
+**/node_modules
+/.pnp
+packages/*/.env
+.npmrc
+
+# testing
+/coverage
+
+# build artifacts
+**/build/
+**/dist/
+**/tsconfig.tsbuildinfo
+.nx
+
+# misc
+.DS_Store
+.env
+.env.local
+.env.development.local
+.env.test.local
+.env.production.local
+
+npm-debug.log*
\ No newline at end of file
diff --git a/package.json b/package.json
index a6d8040..c53c1d1 100644
--- a/package.json
+++ b/package.json
@@ -1,54 +1,8 @@
{
- "name": "super",
- "version": "0.0.0",
- "license": "MIT",
- "bin": "dist/cli.js",
- "type": "module",
- "engines": {
- "node": ">=18.20"
- },
- "scripts": {
- "build": "tsup",
- "build:watch": "tsup --watch",
- "dev": "tsx src/cli.tsx",
- "start": "node dist/cli.js",
- "typecheck": "tsc --noEmit"
- },
- "files": [
- "dist"
- ],
- "dependencies": {
- "@eth-optimism/viem": "^0.0.11",
- "@inkjs/ui": "^2.0.0",
- "@tanstack/react-query": "^5.59.20",
- "@vitejs/plugin-react": "^4.3.3",
- "abitype": "^1.0.6",
- "figures": "^6.1.0",
- "ink": "^5.0.1",
- "pastel": "^3.0.0",
- "react": "^18.2.0",
- "viem": "^2.21.41",
- "zod": "^3.21.4",
- "zod-validation-error": "^3.4.0",
- "zustand": "^5.0.1"
- },
- "devDependencies": {
- "@types/node": "^22.9.0",
- "@types/react": "^18.0.32",
- "@vdemedes/prettier-config": "^2.0.1",
- "esbuild-plugin-wasm": "^1.1.0",
- "eslint-config-xo-react": "^0.27.0",
- "eslint-plugin-react": "^7.32.2",
- "eslint-plugin-react-hooks": "^4.6.0",
- "ink-testing-library": "^4.0.0",
- "node-gyp": "^10.2.0",
- "prettier": "^2.8.7",
- "resolve-tspaths": "^0.8.22",
- "ts-node": "^10.9.1",
- "tsup": "^8.3.5",
- "tsx": "^4.19.2",
- "typescript": "^5.0.3",
- "vite": "^5.4.11"
- },
- "prettier": "@vdemedes/prettier-config"
-}
\ No newline at end of file
+ "name": "super",
+ "private": true,
+ "nx": {},
+ "dependencies": {
+ "nx": "^20.1.2"
+ }
+}
diff --git a/.prettierignore b/packages/cli/.prettierignore
similarity index 100%
rename from .prettierignore
rename to packages/cli/.prettierignore
diff --git a/packages/cli/package.json b/packages/cli/package.json
new file mode 100644
index 0000000..a0eec19
--- /dev/null
+++ b/packages/cli/package.json
@@ -0,0 +1,54 @@
+{
+ "name": "cli",
+ "version": "0.0.0",
+ "license": "MIT",
+ "bin": "dist/cli.js",
+ "type": "module",
+ "engines": {
+ "node": ">=18.20"
+ },
+ "scripts": {
+ "build": "tsup",
+ "build:watch": "tsup --watch",
+ "dev": "tsx src/cli.tsx",
+ "start": "node dist/cli.js",
+ "typecheck": "tsc --noEmit"
+ },
+ "files": [
+ "dist"
+ ],
+ "dependencies": {
+ "@eth-optimism/viem": "^0.0.11",
+ "@inkjs/ui": "^2.0.0",
+ "@tanstack/react-query": "^5.59.20",
+ "@vitejs/plugin-react": "^4.3.3",
+ "abitype": "^1.0.6",
+ "figures": "^6.1.0",
+ "ink": "^5.0.1",
+ "pastel": "^3.0.0",
+ "react": "^18.2.0",
+ "viem": "^2.21.41",
+ "zod": "^3.21.4",
+ "zod-validation-error": "^3.4.0",
+ "zustand": "^5.0.1"
+ },
+ "devDependencies": {
+ "@types/node": "^22.9.0",
+ "@types/react": "^18.0.32",
+ "@vdemedes/prettier-config": "^2.0.1",
+ "esbuild-plugin-wasm": "^1.1.0",
+ "eslint-config-xo-react": "^0.27.0",
+ "eslint-plugin-react": "^7.32.2",
+ "eslint-plugin-react-hooks": "^4.6.0",
+ "ink-testing-library": "^4.0.0",
+ "node-gyp": "^10.2.0",
+ "prettier": "^2.8.7",
+ "resolve-tspaths": "^0.8.22",
+ "ts-node": "^10.9.1",
+ "tsup": "^8.3.5",
+ "tsx": "^4.19.2",
+ "typescript": "^5.0.3",
+ "vite": "^5.4.11"
+ },
+ "prettier": "@vdemedes/prettier-config"
+}
\ No newline at end of file
diff --git a/packages/cli/src/bridge-wizard/BridgeWizard.tsx b/packages/cli/src/bridge-wizard/BridgeWizard.tsx
new file mode 100644
index 0000000..82ce593
--- /dev/null
+++ b/packages/cli/src/bridge-wizard/BridgeWizard.tsx
@@ -0,0 +1,63 @@
+import {
+ BridgeWizardStateVariables,
+ BridgeWizardStep,
+ bridgeWizardStepMetadatas,
+ indexByBridgeWizardStep,
+} from '@/bridge-wizard/bridgeWizardSteps';
+import {useBridgeWizardStore} from '@/bridge-wizard/bridgeWizardStore';
+import {EnterAmount} from '@/bridge-wizard/EnterAmount';
+import {EnterPrivateKey} from '@/bridge-wizard/EnterPrivateKey';
+import {SelectChains} from '@/bridge-wizard/SelectChains';
+import {SelectNetwork} from '@/bridge-wizard/SelectNetwork';
+import {Box, Text} from 'ink';
+
+const WizardProgress = ({state}: {state: BridgeWizardStep}) => {
+ const currentIndex = indexByBridgeWizardStep[state.step];
+
+ return (
+
+ {bridgeWizardStepMetadatas.map(({step, title, getSummary}, index) => {
+ const isPast = index < currentIndex;
+ const isCurrent = index === currentIndex;
+
+ return (
+
+
+ {isPast ? '✓' : isCurrent ? '>' : '○'}
+
+ {title}
+ {isPast && (
+
+ {getSummary(state as unknown as BridgeWizardStateVariables)}
+
+ )}
+
+ );
+ })}
+
+ );
+};
+
+export const BridgeWizard = ({
+ onSubmit,
+}: {
+ onSubmit: (form: BridgeWizardStateVariables) => void;
+}) => {
+ const {state} = useBridgeWizardStore();
+
+ return (
+
+
+ 🌉 Bridge Wizard
+
+
+
+
+ {state.step === 'select-network' && }
+ {state.step === 'enter-private-key' && }
+ {state.step === 'select-chains' && }
+ {state.step === 'enter-amount' && }
+
+
+ );
+};
diff --git a/packages/cli/src/bridge-wizard/EnterAmount.tsx b/packages/cli/src/bridge-wizard/EnterAmount.tsx
new file mode 100644
index 0000000..2d3d788
--- /dev/null
+++ b/packages/cli/src/bridge-wizard/EnterAmount.tsx
@@ -0,0 +1,92 @@
+import {useBridgeWizardStore} from '@/bridge-wizard/bridgeWizardStore';
+import {Select, Spinner} from '@inkjs/ui';
+import {useQuery} from '@tanstack/react-query';
+import {Box, Text} from 'ink';
+import {formatEther, parseEther} from 'viem';
+import {createPublicClient, http} from 'viem';
+import {Address} from 'viem';
+import {mainnet, sepolia} from 'viem/chains';
+
+const getBalanceForNetworkL1 = (network: string, address: Address) => {
+ // TODO support supersim
+ const chain = network === 'mainnet' ? mainnet : sepolia;
+ const client = createPublicClient({
+ transport: http(),
+ chain,
+ });
+
+ return client.getBalance({
+ address,
+ });
+};
+
+const useBalance = (network: string, address: Address) => {
+ return useQuery({
+ queryKey: ['balance', 'l1', network, address],
+ queryFn: () => getBalanceForNetworkL1(network, address),
+ staleTime: Infinity,
+ });
+};
+
+const supportedAmounts: bigint[] = [
+ parseEther('0.01'),
+ parseEther('0.05'),
+ parseEther('0.1'),
+ parseEther('0.25'),
+ parseEther('0.5'),
+];
+
+export const EnterAmount = () => {
+ const {state, setAmount} = useBridgeWizardStore();
+
+ if (state.step !== 'enter-amount') {
+ throw new Error('Invalid state');
+ }
+
+ const {data: balance, isLoading: isLoadingBalance} = useBalance(
+ state.network,
+ state.address,
+ );
+
+ const numChains = state.chainIds.length;
+
+ return (
+
+
+ How much would you like to bridge to {numChains} chain
+ {numChains === 1 ? '' : 's'}?{' '}
+
+
+
+ Balance on {state.network}:
+ {isLoadingBalance ? (
+
+ ) : balance ? (
+ {formatEther(balance)} ETH
+ ) : (
+ Unable to fetch balance
+ )}
+
+
+
+
+
+ );
+};
diff --git a/packages/cli/src/bridge-wizard/EnterPrivateKey.tsx b/packages/cli/src/bridge-wizard/EnterPrivateKey.tsx
new file mode 100644
index 0000000..ed4213b
--- /dev/null
+++ b/packages/cli/src/bridge-wizard/EnterPrivateKey.tsx
@@ -0,0 +1,55 @@
+import {useBridgeWizardStore} from '@/bridge-wizard/bridgeWizardStore';
+import {Box, Text} from 'ink';
+import {TextInput} from '@inkjs/ui';
+import {privateKeyToAccount, PrivateKeyToAccountErrorType} from 'viem/accounts';
+import {useState} from 'react';
+import {Account, isHex} from 'viem';
+
+export const EnterPrivateKey = () => {
+ const {state, setPrivateKey} = useBridgeWizardStore();
+
+ const [errorMessage, setErrorMessage] = useState('');
+ const [resetKey, setResetKey] = useState(0);
+
+ if (state.step !== 'enter-private-key') {
+ throw new Error('Invalid state');
+ }
+
+ return (
+
+
+ Enter your private key for your account:
+
+ {
+ if (!isHex(privateKey)) {
+ setErrorMessage('Invalid private key: must start with 0x');
+ setResetKey(prev => prev + 1);
+ return;
+ }
+
+ let account: Account;
+ try {
+ account = privateKeyToAccount(privateKey);
+ } catch (err) {
+ const error = err as PrivateKeyToAccountErrorType;
+ setErrorMessage(
+ // @ts-expect-error
+ `Invalid private key: ${error.shortMessage ?? error.message}`,
+ );
+ setResetKey(prev => prev + 1);
+ return;
+ }
+
+ setPrivateKey(privateKey, account.address);
+ }}
+ />
+ {errorMessage && (
+
+ {errorMessage ? `❌ ${errorMessage}` : ' '}
+
+ )}
+
+ );
+};
diff --git a/packages/cli/src/bridge-wizard/SelectChains.tsx b/packages/cli/src/bridge-wizard/SelectChains.tsx
new file mode 100644
index 0000000..95ecaa6
--- /dev/null
+++ b/packages/cli/src/bridge-wizard/SelectChains.tsx
@@ -0,0 +1,133 @@
+import {useBridgeWizardStore} from '@/bridge-wizard/bridgeWizardStore';
+import {ChainListItem, initChainConfig} from '@/utils/superchainRegistry';
+import {MultiSelect, Spinner} from '@inkjs/ui';
+import {useQuery} from '@tanstack/react-query';
+import {Box, Text} from 'ink';
+import {useState} from 'react';
+import {Address, createPublicClient, http, formatEther} from 'viem';
+
+const getBalanceForChain = (chainListItem: ChainListItem, address: Address) => {
+ const client = createPublicClient({
+ transport: http(chainListItem.rpc[0]),
+ });
+
+ return client.getBalance({
+ address,
+ });
+};
+
+export const SelectChains = () => {
+ const {state, selectChains} = useBridgeWizardStore();
+
+ if (state.step !== 'select-chains') {
+ throw new Error('Invalid state');
+ }
+
+ const {
+ data: chains,
+ isLoading: isLoadingChains,
+ error: loadChainsError,
+ } = useQuery({
+ queryKey: ['init-chain-config'],
+ queryFn: async () => {
+ return await initChainConfig();
+ },
+ });
+
+ // TODO: break this out into separate keyed queries by chainId
+ // TODO: handle errors
+ const {
+ data: balanceByChainId,
+ isLoading: isLoadingBalances,
+ error: loadBalancesError,
+ } = useQuery({
+ queryKey: ['balance', 'l2', state.network!, state.address!],
+ queryFn: async () => {
+ const chainsInNetwork = chains!.filter(
+ chain => chain.parent.chain === state.network,
+ );
+ const balances = await Promise.all(
+ chainsInNetwork.map(chain => getBalanceForChain(chain, state.address!)),
+ );
+
+ return Object.fromEntries(
+ chainsInNetwork.map((chain, index) => [chain.chainId, balances[index]]),
+ );
+ },
+ enabled: Boolean(chains) && chains!.length > 0 && Boolean(state.address),
+ staleTime: Infinity,
+ });
+
+ const [errorMessage, setErrorMessage] = useState(null);
+
+ if (isLoadingChains) {
+ return (
+
+
+
+ );
+ }
+
+ if (loadChainsError || !chains) {
+ return (
+
+
+ ❌ Failed to load chains from superchain registry
+
+ {loadChainsError?.toString()}
+
+ );
+ }
+
+ if (chains.length === 0) {
+ return (
+
+ ⚠️ No chains found
+
+ );
+ }
+
+ return (
+
+ {loadBalancesError && (
+ ⚠️ Unable to load balances
+ )}
+
+
+ Select chains to bridge to{' '}
+
+ (
+ ↑↓
+ navigate - more below,
+ space
+ select,
+ enter
+ to confirm)
+
+ chain.parent.chain === state.network)
+ .map(chain => ({
+ label:
+ isLoadingBalances || loadBalancesError
+ ? chain.name
+ : `${chain.name} (${formatEther(
+ balanceByChainId?.[chain.chainId] ?? 0n,
+ )} ETH)`,
+ value: chain.chainId.toString(),
+ }))}
+ onSubmit={chainIdStrs => {
+ if (chainIdStrs.length === 0) {
+ setErrorMessage('You must select at least one chain');
+ return;
+ }
+
+ selectChains(chainIdStrs.map(Number));
+ }}
+ />
+ {errorMessage && {errorMessage}}
+
+ );
+};
diff --git a/packages/cli/src/bridge-wizard/SelectNetwork.tsx b/packages/cli/src/bridge-wizard/SelectNetwork.tsx
new file mode 100644
index 0000000..d2236f5
--- /dev/null
+++ b/packages/cli/src/bridge-wizard/SelectNetwork.tsx
@@ -0,0 +1,27 @@
+import {SupportedNetwork} from '@/utils/superchainRegistry';
+import {useBridgeWizardStore} from '@/bridge-wizard/bridgeWizardStore';
+import {Select} from '@inkjs/ui';
+import {Box, Text} from 'ink';
+
+const supportedNetworks: SupportedNetwork[] = ['mainnet', 'sepolia'];
+
+export const SelectNetwork = () => {
+ const {state, selectNetwork} = useBridgeWizardStore();
+
+ if (state.step !== 'select-network') {
+ throw new Error('Invalid state');
+ }
+
+ return (
+
+ Which L1 network do you want to bridge from?
+
+ );
+};
diff --git a/packages/cli/src/bridge-wizard/bridgeWizardSteps.ts b/packages/cli/src/bridge-wizard/bridgeWizardSteps.ts
new file mode 100644
index 0000000..139b086
--- /dev/null
+++ b/packages/cli/src/bridge-wizard/bridgeWizardSteps.ts
@@ -0,0 +1,119 @@
+import {Address, formatEther, Hex} from 'viem';
+
+type BridgeWizardStepWithPreviousState<
+ TStep extends string,
+ TPrev extends BridgeWizardStep,
+ TNew extends keyof BridgeWizardStateVariables,
+> = Omit & {
+ step: TStep;
+} & Pick;
+
+export type BridgeWizardStateVariables = {
+ privateKey: Hex;
+ address: Address;
+ network: string;
+ chainIds: number[];
+ amount: bigint;
+};
+
+type BridgeWizardSelectNetworkStep = {
+ step: 'select-network';
+};
+
+type BridgeWizardEnterPrivateKeyStep = BridgeWizardStepWithPreviousState<
+ 'enter-private-key',
+ BridgeWizardSelectNetworkStep,
+ 'network'
+>;
+
+type BridgeWizardSelectChainsStep = BridgeWizardStepWithPreviousState<
+ 'select-chains',
+ BridgeWizardEnterPrivateKeyStep,
+ 'privateKey' | 'address'
+>;
+
+type BridgeWizardEnterAmountStep = BridgeWizardStepWithPreviousState<
+ 'enter-amount',
+ BridgeWizardSelectChainsStep,
+ 'chainIds'
+>;
+
+type BridgeWizardConfirmTransactionStep = BridgeWizardStepWithPreviousState<
+ 'confirm-transaction',
+ BridgeWizardEnterAmountStep,
+ 'amount'
+>;
+
+export type BridgeWizardStep =
+ | BridgeWizardSelectNetworkStep
+ | BridgeWizardEnterPrivateKeyStep
+ | BridgeWizardSelectChainsStep
+ | BridgeWizardEnterAmountStep
+ | BridgeWizardConfirmTransactionStep;
+
+export const bridgeWizardStepMetadatas = [
+ {
+ step: 'select-network',
+ title: 'Select network',
+ getSummary: (state: BridgeWizardStateVariables) => `${state.network}`,
+ },
+ {
+ step: 'enter-private-key',
+ title: 'Connect account',
+ getSummary: (state: BridgeWizardStateVariables) => `${state.address}`,
+ },
+ {
+ step: 'select-chains',
+ title: 'Select chains',
+ getSummary: (state: BridgeWizardStateVariables) =>
+ `${state.chainIds.map(chainId => `${chainId}`).join(', ')}`,
+ },
+ {
+ step: 'enter-amount',
+ title: 'Enter amount',
+ getSummary: (state: BridgeWizardStateVariables) => {
+ const perChainAmount = Number(formatEther(state.amount)).toFixed(2);
+ const totalAmount = Number(
+ formatEther(state.amount * BigInt(state.chainIds.length)),
+ ).toFixed(2);
+ return `${perChainAmount} ETH × ${state.chainIds.length} chains = ${totalAmount} ETH total`;
+ },
+ },
+ {
+ step: 'confirm-transaction',
+ title: 'Confirm transaction',
+ getSummary: () => '',
+ },
+] as const satisfies {
+ step: BridgeWizardStep['step'];
+ title: string;
+ getSummary: (state: BridgeWizardStateVariables) => string;
+}[];
+
+export const bridgeWizardStepMetadataByStep = bridgeWizardStepMetadatas.reduce(
+ (acc, metadata) => {
+ acc[metadata.step] = metadata;
+ return acc;
+ },
+ {} as Record<
+ BridgeWizardStep['step'],
+ (typeof bridgeWizardStepMetadatas)[number]
+ >,
+);
+
+export const indexByBridgeWizardStep = bridgeWizardStepMetadatas.reduce(
+ (acc, metadata, index) => {
+ acc[metadata.step] = index;
+ return acc;
+ },
+ {} as Record,
+);
+
+export const isAfterStep = (
+ currentStep: BridgeWizardStep['step'],
+ targetStep: BridgeWizardStep['step'],
+) => {
+ return (
+ indexByBridgeWizardStep[currentStep] > indexByBridgeWizardStep[targetStep]
+ );
+};
diff --git a/packages/cli/src/bridge-wizard/bridgeWizardStore.ts b/packages/cli/src/bridge-wizard/bridgeWizardStore.ts
new file mode 100644
index 0000000..819d685
--- /dev/null
+++ b/packages/cli/src/bridge-wizard/bridgeWizardStore.ts
@@ -0,0 +1,82 @@
+import {create} from 'zustand';
+import {BridgeWizardStep} from './bridgeWizardSteps';
+import {Address, Hex} from 'viem';
+
+export type BridgeWizardStore = {
+ state: BridgeWizardStep;
+
+ // Actions
+ selectNetwork: (network: string) => void;
+ setPrivateKey: (privateKey: Hex, address: Address) => void;
+ selectChains: (chainIds: number[]) => void;
+ setAmount: (amount: bigint) => void;
+};
+
+const initialState = {
+ step: 'select-network',
+} as const;
+
+export const useBridgeWizardStore = create(set => ({
+ state: initialState,
+
+ selectNetwork: (network: string) =>
+ set(store => {
+ if (store.state.step !== 'select-network') {
+ throw new Error('Cannot select network in current step');
+ }
+
+ return {
+ state: {
+ ...store.state,
+ step: 'enter-private-key',
+ network,
+ },
+ };
+ }),
+
+ setPrivateKey: (privateKey: Hex, address: Address) =>
+ set(store => {
+ if (store.state.step !== 'enter-private-key') {
+ throw new Error('Cannot set private key in current step');
+ }
+
+ return {
+ state: {
+ ...store.state,
+ step: 'select-chains',
+ privateKey,
+ address,
+ },
+ };
+ }),
+
+ selectChains: (chainIds: number[]) =>
+ set(store => {
+ if (store.state.step !== 'select-chains') {
+ throw new Error('Cannot select chains in current step');
+ }
+
+ return {
+ state: {
+ ...store.state,
+ step: 'enter-amount',
+ chainIds,
+ },
+ };
+ }),
+
+ setAmount: (amount: bigint) =>
+ set(store => {
+ if (store.state.step !== 'enter-amount') {
+ throw new Error('Cannot set amount in current step');
+ }
+
+ return {
+ state: {
+ ...store.state,
+ step: 'confirm-transaction',
+ amount,
+ },
+ };
+ }),
+}));
diff --git a/src/cli.tsx b/packages/cli/src/cli.tsx
similarity index 100%
rename from src/cli.tsx
rename to packages/cli/src/cli.tsx
diff --git a/src/commands/_app.tsx b/packages/cli/src/commands/_app.tsx
similarity index 100%
rename from src/commands/_app.tsx
rename to packages/cli/src/commands/_app.tsx
diff --git a/packages/cli/src/commands/bridge/index.tsx b/packages/cli/src/commands/bridge/index.tsx
new file mode 100644
index 0000000..c6b04a2
--- /dev/null
+++ b/packages/cli/src/commands/bridge/index.tsx
@@ -0,0 +1,7 @@
+import {BridgeWizard} from '@/bridge-wizard/BridgeWizard';
+
+const Index = () => {
+ return console.log(form)} />;
+};
+
+export default Index;
diff --git a/src/commands/deploy/erc20.tsx b/packages/cli/src/commands/deploy/erc20.tsx
similarity index 100%
rename from src/commands/deploy/erc20.tsx
rename to packages/cli/src/commands/deploy/erc20.tsx
diff --git a/src/commands/index.tsx b/packages/cli/src/commands/index.tsx
similarity index 100%
rename from src/commands/index.tsx
rename to packages/cli/src/commands/index.tsx
diff --git a/src/contracts/createx/computeCreate2Address.ts b/packages/cli/src/contracts/createx/computeCreate2Address.ts
similarity index 100%
rename from src/contracts/createx/computeCreate2Address.ts
rename to packages/cli/src/contracts/createx/computeCreate2Address.ts
diff --git a/src/contracts/createx/constants.ts b/packages/cli/src/contracts/createx/constants.ts
similarity index 100%
rename from src/contracts/createx/constants.ts
rename to packages/cli/src/contracts/createx/constants.ts
diff --git a/src/contracts/createx/deployCreate2Contract.ts b/packages/cli/src/contracts/createx/deployCreate2Contract.ts
similarity index 100%
rename from src/contracts/createx/deployCreate2Contract.ts
rename to packages/cli/src/contracts/createx/deployCreate2Contract.ts
diff --git a/src/forge/ForgeProject.ts b/packages/cli/src/forge/ForgeProject.ts
similarity index 100%
rename from src/forge/ForgeProject.ts
rename to packages/cli/src/forge/ForgeProject.ts
diff --git a/src/stores/deployments.ts b/packages/cli/src/stores/deployments.ts
similarity index 100%
rename from src/stores/deployments.ts
rename to packages/cli/src/stores/deployments.ts
diff --git a/src/utils/abi.ts b/packages/cli/src/utils/abi.ts
similarity index 100%
rename from src/utils/abi.ts
rename to packages/cli/src/utils/abi.ts
diff --git a/src/utils/forge.ts b/packages/cli/src/utils/forge.ts
similarity index 100%
rename from src/utils/forge.ts
rename to packages/cli/src/utils/forge.ts
diff --git a/src/utils/superchainRegistry.ts b/packages/cli/src/utils/superchainRegistry.ts
similarity index 100%
rename from src/utils/superchainRegistry.ts
rename to packages/cli/src/utils/superchainRegistry.ts
diff --git a/src/wizard/AbiItemForm.tsx b/packages/cli/src/wizard/AbiItemForm.tsx
similarity index 100%
rename from src/wizard/AbiItemForm.tsx
rename to packages/cli/src/wizard/AbiItemForm.tsx
diff --git a/src/wizard/ConfigureConstructorArguments.tsx b/packages/cli/src/wizard/ConfigureConstructorArguments.tsx
similarity index 100%
rename from src/wizard/ConfigureConstructorArguments.tsx
rename to packages/cli/src/wizard/ConfigureConstructorArguments.tsx
diff --git a/src/wizard/ConfigureSalt.tsx b/packages/cli/src/wizard/ConfigureSalt.tsx
similarity index 100%
rename from src/wizard/ConfigureSalt.tsx
rename to packages/cli/src/wizard/ConfigureSalt.tsx
diff --git a/src/wizard/EnterPrivateKey.tsx b/packages/cli/src/wizard/EnterPrivateKey.tsx
similarity index 100%
rename from src/wizard/EnterPrivateKey.tsx
rename to packages/cli/src/wizard/EnterPrivateKey.tsx
diff --git a/src/wizard/InvalidWizardStep.tsx b/packages/cli/src/wizard/InvalidWizardStep.tsx
similarity index 100%
rename from src/wizard/InvalidWizardStep.tsx
rename to packages/cli/src/wizard/InvalidWizardStep.tsx
diff --git a/src/wizard/SelectChains.tsx b/packages/cli/src/wizard/SelectChains.tsx
similarity index 100%
rename from src/wizard/SelectChains.tsx
rename to packages/cli/src/wizard/SelectChains.tsx
diff --git a/src/wizard/SelectContract.tsx b/packages/cli/src/wizard/SelectContract.tsx
similarity index 100%
rename from src/wizard/SelectContract.tsx
rename to packages/cli/src/wizard/SelectContract.tsx
diff --git a/src/wizard/SelectNetwork.tsx b/packages/cli/src/wizard/SelectNetwork.tsx
similarity index 100%
rename from src/wizard/SelectNetwork.tsx
rename to packages/cli/src/wizard/SelectNetwork.tsx
diff --git a/src/wizard/Wizard.tsx b/packages/cli/src/wizard/Wizard.tsx
similarity index 100%
rename from src/wizard/Wizard.tsx
rename to packages/cli/src/wizard/Wizard.tsx
diff --git a/src/wizard/wizardSteps.ts b/packages/cli/src/wizard/wizardSteps.ts
similarity index 100%
rename from src/wizard/wizardSteps.ts
rename to packages/cli/src/wizard/wizardSteps.ts
diff --git a/src/wizard/wizardStore.ts b/packages/cli/src/wizard/wizardStore.ts
similarity index 100%
rename from src/wizard/wizardStore.ts
rename to packages/cli/src/wizard/wizardStore.ts
diff --git a/tsconfig.json b/packages/cli/tsconfig.json
similarity index 67%
rename from tsconfig.json
rename to packages/cli/tsconfig.json
index f4f51af..03476d8 100644
--- a/tsconfig.json
+++ b/packages/cli/tsconfig.json
@@ -5,8 +5,7 @@
"paths": {
"@/*": [
- "./src/*",
- "./toml-parser/pkg/*"
+ "./src/*"
]
},
@@ -38,5 +37,14 @@
"noPropertyAccessFromIndexSignature": true,
"noEmitOnError": true
},
- "include": ["src", "toml-parser/pkg"]
+ "include": ["src"]
}
+
+pnpm nx run cli:dev deploy erc20 \
+--name SUPER \
+--forge-artifact-path ../superchainerc20-starter/packages/contracts/out/L2NativeSuperchainERC20.sol/L2NativeSuperchainERC20.json \
+--constructor-args SUPER,SUP,18 \
+--salt EthersPhoenix \
+--chains op,base \
+--private-key 0xac0974bec39a17e36ba4a6b4d238ff944bacb478cbed5efcae784d7bf4f2ff80 \—
+--network sepolia
\ No newline at end of file
diff --git a/tsup.config.ts b/packages/cli/tsup.config.ts
similarity index 100%
rename from tsup.config.ts
rename to packages/cli/tsup.config.ts
diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml
index 59b2875..31cec0d 100644
--- a/pnpm-lock.yaml
+++ b/pnpm-lock.yaml
@@ -7,6 +7,12 @@ settings:
importers:
.:
+ dependencies:
+ nx:
+ specifier: ^20.1.2
+ version: 20.1.2
+
+ packages/cli:
dependencies:
'@eth-optimism/viem':
specifier: ^0.0.11
@@ -193,6 +199,15 @@ packages:
resolution: {integrity: sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw==}
engines: {node: '>=12'}
+ '@emnapi/core@1.3.1':
+ resolution: {integrity: sha512-pVGjBIt1Y6gg3EJN8jTcfpP/+uuRksIo055oE/OBkDNcjZqVbfkWCksG1Jp4yZnj3iKWyWX8fdG/j6UDYPbFog==}
+
+ '@emnapi/runtime@1.3.1':
+ resolution: {integrity: sha512-kEBmG8KyqtxJZv+ygbEim+KCGtIq1fC22Ms3S4ziXmYKm8uyoLX0MHONVKwp+9opg390VaKRNt4a7A9NwmpNhw==}
+
+ '@emnapi/wasi-threads@1.0.1':
+ resolution: {integrity: sha512-iIBu7mwkq4UQGeMEM8bLwNK962nXdhodeScX4slfQnRhEMMzvYivHhutCIk8uojvmASXXPC2WNEjwxFWk72Oqw==}
+
'@esbuild/aix-ppc64@0.21.5':
resolution: {integrity: sha512-1SDgH6ZSPTlggy1yI6+Dbkiz8xzpHJEVAlF/AM1tHPLsf5STom9rwtjE4hKAF20FfXXNTFqEYXyJNWh1GiZedQ==}
engines: {node: '>=12'}
@@ -665,6 +680,10 @@ packages:
resolution: {integrity: sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==}
engines: {node: '>=12'}
+ '@jest/schemas@29.6.3':
+ resolution: {integrity: sha512-mo5j5X+jIZmJQveBKeS/clAueipV7KgiX1vMgCxam1RNYiqE1w62n0/tJJnHtjW8ZHcQco5gY85jA3mi0L+nSA==}
+ engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
+
'@jridgewell/gen-mapping@0.3.5':
resolution: {integrity: sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg==}
engines: {node: '>=6.0.0'}
@@ -686,6 +705,9 @@ packages:
'@jridgewell/trace-mapping@0.3.9':
resolution: {integrity: sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==}
+ '@napi-rs/wasm-runtime@0.2.4':
+ resolution: {integrity: sha512-9zESzOO5aDByvhIAsOy9TbpZ0Ur2AJbUI7UT73kcUTS2mxAMHOBaa1st/jAymNoCtvrit99kkzT1FZuXVcgfIQ==}
+
'@noble/curves@1.6.0':
resolution: {integrity: sha512-TlaHRXDehJuRNR9TfZDNQ45mMEd5dwUwmicsafcIX4SsNiqnCHKjE/1alYPd/lDRVhxdhUAlv8uEhMCI5zjIJQ==}
engines: {node: ^14.21.3 || >=16}
@@ -714,6 +736,66 @@ packages:
resolution: {integrity: sha512-q9CRWjpHCMIh5sVyefoD1cA7PkvILqCZsnSOEUUivORLjxCO/Irmue2DprETiNgEqktDBZaM1Bi+jrarx1XdCg==}
engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0}
+ '@nx/nx-darwin-arm64@20.1.2':
+ resolution: {integrity: sha512-PJ91TQhd28kitDBubKUOXMYvrtSDrG+rr8MsIe9cHo1CvU9smcGVBwuHBxniq0DXsyOX/5GL6ngq7hjN2nQ3XQ==}
+ engines: {node: '>= 10'}
+ cpu: [arm64]
+ os: [darwin]
+
+ '@nx/nx-darwin-x64@20.1.2':
+ resolution: {integrity: sha512-1fopau7nxIhTF26vDTIzMxl15AtW4FvUSdy+r1mNRKrKyjjpqnlu00SQBW7JzGV0agDD1B/61yYei5Q2aMOt7Q==}
+ engines: {node: '>= 10'}
+ cpu: [x64]
+ os: [darwin]
+
+ '@nx/nx-freebsd-x64@20.1.2':
+ resolution: {integrity: sha512-55YgIp3v4zz7xMzJO93dtglbOTER2XdS6jrCt8GbKaWGFl5drRrBoNGONtiGNU7C3hLx1VsorbynCkJT18PjKQ==}
+ engines: {node: '>= 10'}
+ cpu: [x64]
+ os: [freebsd]
+
+ '@nx/nx-linux-arm-gnueabihf@20.1.2':
+ resolution: {integrity: sha512-sMhNA8uAV43UYVEXEa8TZ8Fjpom4CGq1umTptEGOF4TTtdNn2AUBreg+0bVODM8MMSzRWGI1VbkZzHESnAPwqw==}
+ engines: {node: '>= 10'}
+ cpu: [arm]
+ os: [linux]
+
+ '@nx/nx-linux-arm64-gnu@20.1.2':
+ resolution: {integrity: sha512-bsevarNHglaYLmIvPNQOdHrBnBgaW3EOUM0flwaXdWuZbL1bWx8GoVwHp9yJpZOAOfIF/Nhq5iTpaZB2nYFrAA==}
+ engines: {node: '>= 10'}
+ cpu: [arm64]
+ os: [linux]
+
+ '@nx/nx-linux-arm64-musl@20.1.2':
+ resolution: {integrity: sha512-GFZTptkhZPL/iZ3tYDmspIcPEaXyy/L/o59gyp33GoFAAyDhiXIF7J1Lz81Xn8VKrX6TvEY8/9qSh86pb7qzDQ==}
+ engines: {node: '>= 10'}
+ cpu: [arm64]
+ os: [linux]
+
+ '@nx/nx-linux-x64-gnu@20.1.2':
+ resolution: {integrity: sha512-yqEW/iglKT4d9lgfnwSNhmDzPxCkRhtdmZqOYpGDM0eZFwYwJF+WRGjW8xIqMj8PA1yrGItzXZOmyFjJqHAF2w==}
+ engines: {node: '>= 10'}
+ cpu: [x64]
+ os: [linux]
+
+ '@nx/nx-linux-x64-musl@20.1.2':
+ resolution: {integrity: sha512-SP6PpWT4cQVrC4WJQdpfADrYJQzkbhgmcGleWbpr7II1HJgOsAcvoDwQGpPQX+3Wo+VBiNecvUAOzacMQkXPGw==}
+ engines: {node: '>= 10'}
+ cpu: [x64]
+ os: [linux]
+
+ '@nx/nx-win32-arm64-msvc@20.1.2':
+ resolution: {integrity: sha512-JZQx9gr39LY3D7uleiXlpxUsavuOrOQNBocwKHkAMnykaT/e1VCxTnm/hk+2b4foWwfURTqoRiFEba70iiCdYg==}
+ engines: {node: '>= 10'}
+ cpu: [arm64]
+ os: [win32]
+
+ '@nx/nx-win32-x64-msvc@20.1.2':
+ resolution: {integrity: sha512-6GmT8iswDiCvJaCtW9DpWeAQmLS/kfAuRLYBisfzlONuLPaDdjhgVIxZBqqUSFfclwcVz+NhIOGvdr0aGFZCtQ==}
+ engines: {node: '>= 10'}
+ cpu: [x64]
+ os: [win32]
+
'@pkgjs/parseargs@0.11.0':
resolution: {integrity: sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==}
engines: {node: '>=14'}
@@ -817,6 +899,9 @@ packages:
'@scure/bip39@1.4.0':
resolution: {integrity: sha512-BEEm6p8IueV/ZTfQLp/0vhw4NPnT9oWf5+28nvmeUICjP99f4vr2d+qc7AVGDDtwRep6ifR43Yed9ERVmiITzw==}
+ '@sinclair/typebox@0.27.8':
+ resolution: {integrity: sha512-+Fj43pSMwJs4KRrH/938Uf+uAELIgVBmQzg/q1YG10djyfA3TnrU8N8XzqCh/okZdszqBQTZf96idMfE5lnwTA==}
+
'@tanstack/query-core@5.59.20':
resolution: {integrity: sha512-e8vw0lf7KwfGe1if4uPFhvZRWULqHjFcz3K8AebtieXvnMOz5FSzlZe3mTLlPuUBcydCnBRqYs2YJ5ys68wwLg==}
@@ -837,6 +922,9 @@ packages:
'@tsconfig/node16@1.0.4':
resolution: {integrity: sha512-vxhUy4J8lyeyinH7Azl1pdd43GJhZH/tP2weN8TntQblOY+A0XbT8DJk1/oCPuOOyg/Ja757rG0CgHcWC8OfMA==}
+ '@tybys/wasm-util@0.9.0':
+ resolution: {integrity: sha512-6+7nlbMVX/PVDCwaIQ8nTOPveOcFLSt8GcXdx8hD0bt39uWxYT88uXzqTd4fTvqta7oeUJqudepapKNt2DYJFw==}
+
'@types/babel__core@7.20.5':
resolution: {integrity: sha512-qoQprZvz5wQFJwMDqeseRXWv3rqMvhgpbXFfVyWhbx9X47POIA6i/+dXefEmZKoAgOaTdaIgNSMqMIU61yRyzA==}
@@ -876,6 +964,17 @@ packages:
peerDependencies:
vite: ^4.2.0 || ^5.0.0
+ '@yarnpkg/lockfile@1.1.0':
+ resolution: {integrity: sha512-GpSwvyXOcOOlV70vbnzjj4fW5xW/FdUF6nQEt1ENy7m4ZCczi1+/buVUPAqmGfqznsORNFzUMjctTIp8a9tuCQ==}
+
+ '@yarnpkg/parsers@3.0.2':
+ resolution: {integrity: sha512-/HcYgtUSiJiot/XWGLOlGxPYUG65+/31V8oqk17vZLW1xlCoR4PampyePljOxY2n8/3jz9+tIFzICsyGujJZoA==}
+ engines: {node: '>=18.12.0'}
+
+ '@zkochan/js-yaml@0.0.7':
+ resolution: {integrity: sha512-nrUSn7hzt7J6JWgWGz78ZYI8wj+gdIJdk0Ynjpp8l+trkn58Uqsf6RYrYkEK+3X18EX+TNdtJI0WxAtc+L84SQ==}
+ hasBin: true
+
abbrev@2.0.0:
resolution: {integrity: sha512-6/mh1E2u2YgEsCHdY0Yx5oW+61gZU+1vXaoiHHrpKeuRNNgFvS+/jrwHiQhB5apAf5oB7UB7E19ol2R2LKH8hQ==}
engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0}
@@ -936,6 +1035,10 @@ packages:
resolution: {integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==}
engines: {node: '>=8'}
+ ansi-styles@5.2.0:
+ resolution: {integrity: sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==}
+ engines: {node: '>=10'}
+
ansi-styles@6.2.1:
resolution: {integrity: sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==}
engines: {node: '>=12'}
@@ -946,6 +1049,9 @@ packages:
arg@4.1.3:
resolution: {integrity: sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA==}
+ argparse@1.0.10:
+ resolution: {integrity: sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==}
+
argparse@2.0.1:
resolution: {integrity: sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==}
@@ -977,6 +1083,9 @@ packages:
resolution: {integrity: sha512-bMxMKAjg13EBSVscxTaYA4mRc5t1UAXa2kXiGTNfZ079HIWXEkKmkgFrh/nJqamaLSrXO5H4WFFkPEaLJWbs3A==}
engines: {node: '>= 0.4'}
+ asynckit@0.4.0:
+ resolution: {integrity: sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==}
+
auto-bind@5.0.1:
resolution: {integrity: sha512-ooviqdwwgfIfNmDwo94wlshcdzfO64XV0Cg6oDsDYBJfITDz1EngD2z7DkbvCWn+XIMsIqW27sEVF6qcpJrRcg==}
engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
@@ -985,9 +1094,18 @@ packages:
resolution: {integrity: sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ==}
engines: {node: '>= 0.4'}
+ axios@1.7.7:
+ resolution: {integrity: sha512-S4kL7XrjgBmvdGut0sN3yJxqYzrDOnivkBiN0OFs6hLiUam3UPvswUo0kqGyhqUZGEOytHyumEdXsAkgCOUf3Q==}
+
balanced-match@1.0.2:
resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==}
+ base64-js@1.5.1:
+ resolution: {integrity: sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==}
+
+ bl@4.1.0:
+ resolution: {integrity: sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==}
+
brace-expansion@1.1.11:
resolution: {integrity: sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==}
@@ -1003,6 +1121,9 @@ packages:
engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7}
hasBin: true
+ buffer@5.7.1:
+ resolution: {integrity: sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==}
+
bundle-require@5.0.0:
resolution: {integrity: sha512-GuziW3fSSmopcx4KRymQEJVbZUfqlCqcq7dvs6TYwKRZiegK/2buMxQTPs6MGlNv50wms1699qYO54R8XfRX4w==}
engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
@@ -1052,10 +1173,18 @@ packages:
resolution: {integrity: sha512-/lzGpEWL/8PfI0BmBOPRwp0c/wFNX1RdUML3jK/RcSBA9T8mZDdQpqYBKtCFTOfQbwPqWEOpjqW+Fnayc0969g==}
engines: {node: '>=10'}
+ cli-cursor@3.1.0:
+ resolution: {integrity: sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==}
+ engines: {node: '>=8'}
+
cli-cursor@4.0.0:
resolution: {integrity: sha512-VGtlMu3x/4DOtIUwEkRezxUZ2lBacNJCHash0N0WeZDBS+7Ux1dm3XWAgWYxLJFMMdOeXMHXorshEFhbMSGelg==}
engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
+ cli-spinners@2.6.1:
+ resolution: {integrity: sha512-x/5fWmGMnbKQAaNwN+UZlV79qBLM9JFnJuJ03gIi5whrob0xV0ofNVHy9DhwGdsMJQc2OKv0oGmLzvaqvAVv+g==}
+ engines: {node: '>=6'}
+
cli-spinners@3.2.0:
resolution: {integrity: sha512-pXftdQloMZzjCr3pCTIRniDcys6dDzgpgVhAHHk6TKBDbRuP1MkuetTF5KSv4YUutbOPa7+7ZrAJ2kVtbMqyXA==}
engines: {node: '>=18.20'}
@@ -1064,6 +1193,14 @@ packages:
resolution: {integrity: sha512-nPdaFdQ0h/GEigbPClz11D0v/ZJEwxmeVZGeMo3Z5StPtUTkA9o1lD6QwoirYiSDzbcwn2XcjwmCp68W1IS4TA==}
engines: {node: '>=18'}
+ cliui@8.0.1:
+ resolution: {integrity: sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==}
+ engines: {node: '>=12'}
+
+ clone@1.0.4:
+ resolution: {integrity: sha512-JQHZ2QMW6l3aH/j6xCqQThY/9OH4D/9ls34cgkUBiEeocRTU04tHfKPBsUK1PqZCUQM7GiA0IIXJSuXHI64Kbg==}
+ engines: {node: '>=0.8'}
+
code-excerpt@4.0.0:
resolution: {integrity: sha512-xxodCmBen3iy2i0WtAK8FlFNrRzjUqjRsMfho58xT/wvZU1YTM3fCnRjcy1gJPMepaRlgm/0e6w8SpWHpn3/cA==}
engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
@@ -1075,6 +1212,10 @@ packages:
color-name@1.1.4:
resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==}
+ combined-stream@1.0.8:
+ resolution: {integrity: sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==}
+ engines: {node: '>= 0.8'}
+
commander@12.1.0:
resolution: {integrity: sha512-Vw8qHK3bZM9y/P10u3Vib8o/DdkvA2OtPtZvD871QKjy74Wj1WSKFILMPRPSdUSx5RFK1arlJzEtA4PkFgnbuA==}
engines: {node: '>=18'}
@@ -1139,14 +1280,29 @@ packages:
resolution: {integrity: sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==}
engines: {node: '>=0.10.0'}
+ defaults@1.0.4:
+ resolution: {integrity: sha512-eFuaLoy/Rxalv2kr+lqMlUnrDWV+3j4pljOIJgLIhI058IQfWJ7vXhyEIHu+HtC738klGALYxOKDO0bQP3tg8A==}
+
define-data-property@1.1.4:
resolution: {integrity: sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==}
engines: {node: '>= 0.4'}
+ define-lazy-prop@2.0.0:
+ resolution: {integrity: sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og==}
+ engines: {node: '>=8'}
+
define-properties@1.2.1:
resolution: {integrity: sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==}
engines: {node: '>= 0.4'}
+ delayed-stream@1.0.0:
+ resolution: {integrity: sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==}
+ engines: {node: '>=0.4.0'}
+
+ diff-sequences@29.6.3:
+ resolution: {integrity: sha512-EjePK1srD3P08o2j4f0ExnylqRs5B9tJjcp9t1krH2qRi8CCdsYfwe9JgSLurFBWwq4uOlipzfk5fHNvwFKr8Q==}
+ engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
+
diff@4.0.2:
resolution: {integrity: sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==}
engines: {node: '>=0.3.1'}
@@ -1159,6 +1315,14 @@ packages:
resolution: {integrity: sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==}
engines: {node: '>=6.0.0'}
+ dotenv-expand@11.0.7:
+ resolution: {integrity: sha512-zIHwmZPRshsCdpMDyVsqGmgyP0yT8GAgXUnkdAoJisxvf33k7yO6OuoKmcTGuXPWSsm8Oh88nZicRLA9Y0rUeA==}
+ engines: {node: '>=12'}
+
+ dotenv@16.4.5:
+ resolution: {integrity: sha512-ZmdL2rui+eB2YwhsWzjInR8LldtZHGDoQ1ugH85ppHKwpUHL7j7rN0Ti9NCnGiQbhaZ11FpR+7ao1dNsmduNUg==}
+ engines: {node: '>=12'}
+
eastasianwidth@0.2.0:
resolution: {integrity: sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==}
@@ -1177,6 +1341,13 @@ packages:
encoding@0.1.13:
resolution: {integrity: sha512-ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A==}
+ end-of-stream@1.4.4:
+ resolution: {integrity: sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==}
+
+ enquirer@2.3.6:
+ resolution: {integrity: sha512-yjNnPr315/FjS4zIsUxYguYUPP2e1NK4d7E7ZOLiyYCcbFBiTMyID+2wvm2w6+pZ/odMA7cRkjhsPbltwBOrLg==}
+ engines: {node: '>=8.6'}
+
env-paths@2.2.1:
resolution: {integrity: sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A==}
engines: {node: '>=6'}
@@ -1242,6 +1413,10 @@ packages:
resolution: {integrity: sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==}
engines: {node: '>=6'}
+ escape-string-regexp@1.0.5:
+ resolution: {integrity: sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==}
+ engines: {node: '>=0.8.0'}
+
escape-string-regexp@2.0.0:
resolution: {integrity: sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==}
engines: {node: '>=8'}
@@ -1288,6 +1463,11 @@ packages:
resolution: {integrity: sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==}
engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
+ esprima@4.0.1:
+ resolution: {integrity: sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==}
+ engines: {node: '>=4'}
+ hasBin: true
+
esquery@1.6.0:
resolution: {integrity: sha512-ca9pw9fomFcKPvFLXhBKUK90ZvGibiGOvRJNbjljY7s7uq/5YO4BOzcYtJqExdx99rF6aAcnRxHmcUHcz6sQsg==}
engines: {node: '>=0.10'}
@@ -1331,6 +1511,10 @@ packages:
picomatch:
optional: true
+ figures@3.2.0:
+ resolution: {integrity: sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==}
+ engines: {node: '>=8'}
+
figures@6.1.0:
resolution: {integrity: sha512-d+l3qxjSesT4V7v2fh+QnmFnUWv9lSpjarhShNTgBOfA0ttejbQUAlHLitbjkoRiDulW0OPoQPYIGhIC8ohejg==}
engines: {node: '>=18'}
@@ -1355,9 +1539,22 @@ packages:
resolution: {integrity: sha512-CYcENa+FtcUKLmhhqyctpclsq7QF38pKjZHsGNiSQF5r4FtoKDWabFDl3hzaEQMvT1LHEysw5twgLvpYYb4vbw==}
engines: {node: ^10.12.0 || >=12.0.0}
+ flat@5.0.2:
+ resolution: {integrity: sha512-b6suED+5/3rTpUBdG1gupIl8MPFCAMA0QXwmljLhvCUKcUvdE4gWky9zpuGCcXHOsz4J9wPGNWq6OKpmIzz3hQ==}
+ hasBin: true
+
flatted@3.3.1:
resolution: {integrity: sha512-X8cqMLLie7KsNUDSdzeN8FYK9rEt4Dt67OsG/DNGnYTSDBG4uFAJFBnUeiV+zCVAvwFy56IjM9sH51jVaEhNxw==}
+ follow-redirects@1.15.9:
+ resolution: {integrity: sha512-gew4GsXizNgdoRyqmyfMHyAmXsZDk6mHkSxZFCzW9gwlbtOW44CDtYavM+y+72qD/Vq2l550kMF52DT8fOLJqQ==}
+ engines: {node: '>=4.0'}
+ peerDependencies:
+ debug: '*'
+ peerDependenciesMeta:
+ debug:
+ optional: true
+
for-each@0.3.3:
resolution: {integrity: sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==}
@@ -1365,6 +1562,16 @@ packages:
resolution: {integrity: sha512-Ld2g8rrAyMYFXBhEqMz8ZAHBi4J4uS1i/CxGMDnjyFWddMXLVcDp051DZfu+t7+ab7Wv6SMqpWmyFIj5UbfFvg==}
engines: {node: '>=14'}
+ form-data@4.0.1:
+ resolution: {integrity: sha512-tzN8e4TX8+kkxGPK8D5u0FNmjPUjw3lwC9lSLxxoB/+GtsJG91CO8bSWy73APlgAZzZbXEYZJuxjkHH2w+Ezhw==}
+ engines: {node: '>= 6'}
+
+ front-matter@4.0.2:
+ resolution: {integrity: sha512-I8ZuJ/qG92NWX8i5x1Y8qyj3vizhXS31OxjKDu3LKP+7/qBgfIKValiZIEwoVoJKUHlhWtYrktkxV1XsX+pPlg==}
+
+ fs-constants@1.0.0:
+ resolution: {integrity: sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==}
+
fs-minipass@2.1.0:
resolution: {integrity: sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==}
engines: {node: '>= 8'}
@@ -1395,6 +1602,10 @@ packages:
resolution: {integrity: sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==}
engines: {node: '>=6.9.0'}
+ get-caller-file@2.0.5:
+ resolution: {integrity: sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==}
+ engines: {node: 6.* || 8.* || >= 10.*}
+
get-east-asian-width@1.3.0:
resolution: {integrity: sha512-vpeMIQKxczTD/0s2CdEWHcb0eeJe6TFjxb+J5xgX7hScxqrGuyjmv4c1D4A/gelKfyox0gJJwIHF+fLjeaM8kQ==}
engines: {node: '>=18'}
@@ -1492,6 +1703,9 @@ packages:
resolution: {integrity: sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==}
engines: {node: '>=0.10.0'}
+ ieee754@1.2.1:
+ resolution: {integrity: sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==}
+
ignore@5.3.2:
resolution: {integrity: sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==}
engines: {node: '>= 4'}
@@ -1588,6 +1802,11 @@ packages:
resolution: {integrity: sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==}
engines: {node: '>= 0.4'}
+ is-docker@2.2.1:
+ resolution: {integrity: sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==}
+ engines: {node: '>=8'}
+ hasBin: true
+
is-extglob@2.1.1:
resolution: {integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==}
engines: {node: '>=0.10.0'}
@@ -1620,6 +1839,10 @@ packages:
engines: {node: '>=18'}
hasBin: true
+ is-interactive@1.0.0:
+ resolution: {integrity: sha512-2HvIEKRoqS62guEC+qBjpvRubdX910WCMuJTZ+I9yvqKU2/12eSL549HMwtabb4oupdj2sMP50k+XJfB/8JE6w==}
+ engines: {node: '>=8'}
+
is-lambda@1.0.1:
resolution: {integrity: sha512-z7CMFGNrENq5iFB9Bqo64Xk6Y9sg+epq1myIcdHaGnbMTYOxvzsEtdYqQUylB7LxfkvgrrjP32T6Ywciio9UIQ==}
@@ -1667,6 +1890,10 @@ packages:
resolution: {integrity: sha512-uZ25/bUAlUY5fR4OKT4rZQEBrzQWYV9ZJYGGsUmEJ6thodVJ1HX64ePQ6Z0qPWP+m+Uq6e9UugrE38jeYsDSMw==}
engines: {node: '>= 0.4'}
+ is-unicode-supported@0.1.0:
+ resolution: {integrity: sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==}
+ engines: {node: '>=10'}
+
is-unicode-supported@2.1.0:
resolution: {integrity: sha512-mE00Gnza5EEB3Ds0HfMyllZzbBrmLOX3vfWoj9A9PEnTfratQ/BcaJOuMhnkhjXvb2+FkY3VuHqtAGpTPmglFQ==}
engines: {node: '>=18'}
@@ -1682,6 +1909,10 @@ packages:
resolution: {integrity: sha512-LvIm3/KWzS9oRFHugab7d+M/GcBXuXX5xZkzPmN+NxihdQlZUQ4dWuSV1xR/sq6upL1TJEDrfBgRepHFdBtSNQ==}
engines: {node: '>= 0.4'}
+ is-wsl@2.2.0:
+ resolution: {integrity: sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==}
+ engines: {node: '>=8'}
+
isarray@2.0.5:
resolution: {integrity: sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==}
@@ -1704,6 +1935,14 @@ packages:
jackspeak@3.4.3:
resolution: {integrity: sha512-OGlZQpz2yfahA/Rd1Y8Cd9SIEsqvXkLVoSw/cgwhnhFMDbsQFeZYoJJ7bIZBS9BcamUW96asq/npPWugM+RQBw==}
+ jest-diff@29.7.0:
+ resolution: {integrity: sha512-LMIgiIrhigmPrs03JHpxUh2yISK3vLFPkAodPeo0+BuF7wA2FoQbkEg1u8gBYBThncu7e1oEDUfIXVuTqLRUjw==}
+ engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
+
+ jest-get-type@29.6.3:
+ resolution: {integrity: sha512-zrteXnqYxfQh7l5FHyL38jL39di8H8rHoecLH3JNxH3BwOrBsNeabdap5e0I23lD4HHI8W5VFBZqG4Eaq5LNcw==}
+ engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
+
joycon@3.1.1:
resolution: {integrity: sha512-34wB/Y7MW7bzjKRjUKTa46I2Z7eV62Rkhva+KkopW7Qvv/OSWBqvkSY7vusOPrNuZcUG3tApvdVgNB8POj3SPw==}
engines: {node: '>=10'}
@@ -1711,6 +1950,10 @@ packages:
js-tokens@4.0.0:
resolution: {integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==}
+ js-yaml@3.14.1:
+ resolution: {integrity: sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==}
+ hasBin: true
+
js-yaml@4.1.0:
resolution: {integrity: sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==}
hasBin: true
@@ -1737,6 +1980,9 @@ packages:
engines: {node: '>=6'}
hasBin: true
+ jsonc-parser@3.2.0:
+ resolution: {integrity: sha512-gfFQZrcTc8CnKXp6Y4/CBT3fTc0OVuDofpre4aEeEpSBPV5X5v4+Vmx+8snU7RLPrNHPKSgLxGo9YuQzz20o+w==}
+
jsx-ast-utils@3.3.5:
resolution: {integrity: sha512-ZZow9HBI5O6EPgSJLUb8n2NKgmVWTwCvHGwFuJlMjvLFqlGG6pjirPhtdsseaLZjSibD8eegzmYpUZwoIlj2cQ==}
engines: {node: '>=4.0'}
@@ -1755,6 +2001,10 @@ packages:
lines-and-columns@1.2.4:
resolution: {integrity: sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==}
+ lines-and-columns@2.0.3:
+ resolution: {integrity: sha512-cNOjgCnLB+FnvWWtyRTzmB3POJ+cXxTA81LoW7u8JdmhfXzriropYwpjShnz1QLLWsQwY7nIxoDmcPTwphDK9w==}
+ engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
+
load-tsconfig@0.2.5:
resolution: {integrity: sha512-IXO6OCs9yg8tMKzfPZ1YmheJbZCiEsnBdcB03l0OcfK9prKnJb96siuHCr5Fl37/yo9DnKU+TLpxzTUspw9shg==}
engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
@@ -1772,6 +2022,10 @@ packages:
lodash@4.17.21:
resolution: {integrity: sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==}
+ log-symbols@4.1.0:
+ resolution: {integrity: sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==}
+ engines: {node: '>=10'}
+
loose-envify@1.4.0:
resolution: {integrity: sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==}
hasBin: true
@@ -1797,6 +2051,14 @@ packages:
resolution: {integrity: sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==}
engines: {node: '>=8.6'}
+ mime-db@1.52.0:
+ resolution: {integrity: sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==}
+ engines: {node: '>= 0.6'}
+
+ mime-types@2.1.35:
+ resolution: {integrity: sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==}
+ engines: {node: '>= 0.6'}
+
mimic-fn@2.1.0:
resolution: {integrity: sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==}
engines: {node: '>=6'}
@@ -1804,10 +2066,17 @@ packages:
minimatch@3.1.2:
resolution: {integrity: sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==}
+ minimatch@9.0.3:
+ resolution: {integrity: sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==}
+ engines: {node: '>=16 || 14 >=14.17'}
+
minimatch@9.0.5:
resolution: {integrity: sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==}
engines: {node: '>=16 || 14 >=14.17'}
+ minimist@1.2.8:
+ resolution: {integrity: sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==}
+
minipass-collect@2.0.1:
resolution: {integrity: sha512-D7V8PO9oaz7PWGLbCACuI1qEOsq7UKfLotx/C0Aet43fCUB/wfQ7DYeq2oR/svFJGYDHPr38SHATeaj/ZoKHKw==}
engines: {node: '>=16 || 14 >=14.17'}
@@ -1872,6 +2141,9 @@ packages:
engines: {node: ^16.14.0 || >=18.0.0}
hasBin: true
+ node-machine-id@1.1.12:
+ resolution: {integrity: sha512-QNABxbrPa3qEIfrE6GOJ7BYIuignnJw7iQ2YPbc3Nla1HzRJjXzZOiikfF8m7eAMfichLt3M4VgLOetqgDmgGQ==}
+
node-releases@2.0.18:
resolution: {integrity: sha512-d9VeXT4SJ7ZeOqGX6R5EM022wpL+eWPooLI+5UpWn2jCT1aosUQEhQP214x33Wkwx3JQMvIm+tIoVOdodFS40g==}
@@ -1884,6 +2156,22 @@ packages:
resolution: {integrity: sha512-V6gygoYb/5EmNI+MEGrWkC+e6+Rr7mTmfHrxDbLzxQogBkgzo76rkok0Am6thgSF7Mv2nLOajAJj5vDJZEFn7g==}
engines: {node: ^16.14.0 || >=18.0.0}
+ npm-run-path@4.0.1:
+ resolution: {integrity: sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==}
+ engines: {node: '>=8'}
+
+ nx@20.1.2:
+ resolution: {integrity: sha512-CvjmuQmI0RWLYZxRSIgQZmzsQv6dPp9oI0YZE3L1dagBPfTf5Cun65I0GLt7bdkDnVx2PGYkDbIoJSv2/V+83Q==}
+ hasBin: true
+ peerDependencies:
+ '@swc-node/register': ^1.8.0
+ '@swc/core': ^1.3.85
+ peerDependenciesMeta:
+ '@swc-node/register':
+ optional: true
+ '@swc/core':
+ optional: true
+
object-assign@4.1.1:
resolution: {integrity: sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==}
engines: {node: '>=0.10.0'}
@@ -1919,10 +2207,18 @@ packages:
resolution: {integrity: sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==}
engines: {node: '>=6'}
+ open@8.4.2:
+ resolution: {integrity: sha512-7x81NCL719oNbsq/3mh+hVrAWmFuEYUqrq/Iw3kUzH8ReypT9QQ0BLoJS7/G9k6N81XjW4qHWtjWwe/9eLy1EQ==}
+ engines: {node: '>=12'}
+
optionator@0.9.4:
resolution: {integrity: sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g==}
engines: {node: '>= 0.8.0'}
+ ora@5.3.0:
+ resolution: {integrity: sha512-zAKMgGXUim0Jyd6CXK9lraBnD3H5yPGBPPOkC23a2BG6hsm4Zu6OQSjQuEtV0BHDf4aKHcUFvJiGRrFuW3MG8g==}
+ engines: {node: '>=10'}
+
p-limit@3.1.0:
resolution: {integrity: sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==}
engines: {node: '>=10'}
@@ -2031,6 +2327,10 @@ packages:
engines: {node: '>=10.13.0'}
hasBin: true
+ pretty-format@29.7.0:
+ resolution: {integrity: sha512-Pdlw/oPxN+aXdmM9R00JVC9WVFoCLTKJvDVLgmJ+qAffBMxsV85l/Lu7sNx4zSzPyoL2euImuEwHhOXdEgNFZQ==}
+ engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
+
proc-log@4.2.0:
resolution: {integrity: sha512-g8+OnU/L2v+wyiVK+D5fA34J7EH8jZ8DDlvwhRCMxmMj7UCBvxiO1mGeN+36JXIKF4zevU4kRBd8lVgG9vLelA==}
engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0}
@@ -2042,6 +2342,9 @@ packages:
prop-types@15.8.1:
resolution: {integrity: sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==}
+ proxy-from-env@1.1.0:
+ resolution: {integrity: sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==}
+
punycode@2.3.1:
resolution: {integrity: sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==}
engines: {node: '>=6'}
@@ -2052,6 +2355,9 @@ packages:
react-is@16.13.1:
resolution: {integrity: sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==}
+ react-is@18.3.1:
+ resolution: {integrity: sha512-/LLMVyas0ljjAtoYiPqYiL8VWXzUUdThrmU5+n20DZv+a+ClRoevUzw5JxU+Ieh5/c87ytoTBV9G1FiKfNJdmg==}
+
react-reconciler@0.29.2:
resolution: {integrity: sha512-zZQqIiYgDCTP/f1N/mAR10nJGrPD2ZR+jDSEsKWJHYC7Cm2wodlwbR3upZRdC3cjIjSlTLNVyO7Iu0Yy7t2AYg==}
engines: {node: '>=0.10.0'}
@@ -2074,6 +2380,10 @@ packages:
resolution: {integrity: sha512-9viLL4/n1BJUCT1NXVTdS1jtm80yDEgR5T4yCelII49Mbj0v1rZdKqj7zCiYdbB0CuCgdrvHcNogAKTFPBocFA==}
engines: {node: '>=18'}
+ readable-stream@3.6.2:
+ resolution: {integrity: sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==}
+ engines: {node: '>= 6'}
+
readdirp@4.0.2:
resolution: {integrity: sha512-yDMz9g+VaZkqBYS/ozoBJwaBhTbZo3UNYQHNRw1D3UFQB8oHB4uS/tAODO+ZLjGWmUbKnIlOWO+aaIiAxrUWHA==}
engines: {node: '>= 14.16.0'}
@@ -2086,6 +2396,10 @@ packages:
resolution: {integrity: sha512-vqlC04+RQoFalODCbCumG2xIOvapzVMHwsyIGM/SIE8fRhFFsXeH8/QQ+s0T0kDAhKc4k30s73/0ydkHQz6HlQ==}
engines: {node: '>= 0.4'}
+ require-directory@2.1.1:
+ resolution: {integrity: sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==}
+ engines: {node: '>=0.10.0'}
+
resolve-from@4.0.0:
resolution: {integrity: sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==}
engines: {node: '>=4'}
@@ -2107,6 +2421,10 @@ packages:
resolution: {integrity: sha512-U7WjGVG9sH8tvjW5SmGbQuui75FiyjAX72HX15DwBBwF9dNiQZRQAg9nnPhYy+TUnE0+VcrttuvNI8oSxZcocA==}
hasBin: true
+ restore-cursor@3.1.0:
+ resolution: {integrity: sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==}
+ engines: {node: '>=8'}
+
restore-cursor@4.0.0:
resolution: {integrity: sha512-I9fPXU9geO9bHOt9pHHOhOkYerIMsmVaWB0rA2AI9ERh/+x/i7MV5HKBNrg+ljO5eoPVgCcnFuRjJ9uH6I/3eg==}
engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
@@ -2136,6 +2454,9 @@ packages:
resolution: {integrity: sha512-vj6RsCsWBCf19jIeHEfkRMw8DPiBb+DMXklQ/1SGDHOMlHdPUkZXFQ2YdplS23zESTijAcurb1aSgJA3AgMu1Q==}
engines: {node: '>=0.4'}
+ safe-buffer@5.2.1:
+ resolution: {integrity: sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==}
+
safe-regex-test@1.0.3:
resolution: {integrity: sha512-CdASjNJPvRa7roO6Ra/gLYBTzYzzPyyBXxIMdGW3USQLyjWEls2RgW5UBTXaQVp+OrpeCK3bLem8smtmheoRuw==}
engines: {node: '>= 0.4'}
@@ -2222,6 +2543,9 @@ packages:
spdx-license-ids@3.0.20:
resolution: {integrity: sha512-jg25NiDV/1fLtSgEgyvVyDunvaNHbuwF9lfNV17gSmPFAlYzdfNBlLtLzXTevwkPj7DhGbmN9VnmJIgLnhvaBw==}
+ sprintf-js@1.0.3:
+ resolution: {integrity: sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==}
+
sprintf-js@1.1.3:
resolution: {integrity: sha512-Oo+0REFV59/rz3gfJNKQiBlwfHaSESl1pcGyABQsnnIfWOFt6JNj5gCog2U6MLZ//IGYD+nA8nI+mTShREReaA==}
@@ -2263,6 +2587,9 @@ packages:
resolution: {integrity: sha512-UXSH262CSZY1tfu3G3Secr6uGLCFVPMhIqHjlgCUtCCcgihYc/xKs9djMTMUOb2j1mVSeU8EU6NWc/iQKU6Gfg==}
engines: {node: '>= 0.4'}
+ string_decoder@1.3.0:
+ resolution: {integrity: sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==}
+
strip-ansi@6.0.1:
resolution: {integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==}
engines: {node: '>=8'}
@@ -2271,6 +2598,10 @@ packages:
resolution: {integrity: sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==}
engines: {node: '>=12'}
+ strip-bom@3.0.0:
+ resolution: {integrity: sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==}
+ engines: {node: '>=4'}
+
strip-json-comments@3.1.1:
resolution: {integrity: sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==}
engines: {node: '>=8'}
@@ -2288,6 +2619,10 @@ packages:
resolution: {integrity: sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==}
engines: {node: '>= 0.4'}
+ tar-stream@2.2.0:
+ resolution: {integrity: sha512-ujeqbceABgwMZxEJnk2HDY2DlnUZ+9oEcb1KzTVfYHio0UE6dG71n60d8D2I4qNvleWrrXpmjpt7vZeF1LnMZQ==}
+ engines: {node: '>=6'}
+
tar@6.2.1:
resolution: {integrity: sha512-DZ4yORTwrbTj/7MZYq2w+/ZFdI6OZ/f9SFHR+71gIVUZhOQPHzVCLpvRnPgyaMpfWxxk/4ONva3GQSyNIKRv6A==}
engines: {node: '>=10'}
@@ -2309,6 +2644,10 @@ packages:
resolution: {integrity: sha512-Zc+8eJlFMvgatPZTl6A9L/yht8QqdmUNtURHaKZLmKBE12hNPSrqNkUp2cs3M/UKmNVVAMFQYSjYIVHDjW5zew==}
engines: {node: '>=12.0.0'}
+ tmp@0.2.3:
+ resolution: {integrity: sha512-nZD7m9iCPC5g0pYmcaxogYKggSfLsdxl8of3Q/oIbqCqLLIO9IAF0GWjX1z9NZRHPiXv8Wex4yDCaZsgEw0Y8w==}
+ engines: {node: '>=14.14'}
+
to-regex-range@5.0.1:
resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==}
engines: {node: '>=8.0'}
@@ -2337,6 +2676,13 @@ packages:
'@swc/wasm':
optional: true
+ tsconfig-paths@4.2.0:
+ resolution: {integrity: sha512-NoZ4roiN7LnbKn9QqE1amc9DJfzvZXxF4xDavcOWt1BPkdx+m+0gJuPM+S0vCe7zTJMYUP0R8pO2XMr+Y8oLIg==}
+ engines: {node: '>=6'}
+
+ tslib@2.8.1:
+ resolution: {integrity: sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==}
+
tsup@8.3.5:
resolution: {integrity: sha512-Tunf6r6m6tnZsG9GYWndg0z8dEV7fD733VBFzFJ5Vcm1FtlXB8xBD/rtrBi2a3YKEV7hHtxiZtW5EAVADoe1pA==}
engines: {node: '>=18'}
@@ -2421,6 +2767,9 @@ packages:
uri-js@4.4.1:
resolution: {integrity: sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==}
+ util-deprecate@1.0.2:
+ resolution: {integrity: sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==}
+
v8-compile-cache-lib@3.0.1:
resolution: {integrity: sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg==}
@@ -2466,6 +2815,9 @@ packages:
terser:
optional: true
+ wcwidth@1.0.1:
+ resolution: {integrity: sha512-XHPEwS0q6TaxcvG85+8EYkbiCux2XtWG2mkc47Ng2A77BQu9+DqIOJldST4HgPkuea7dvKSj5VgX3P1d4rW8Tg==}
+
webauthn-p256@0.0.10:
resolution: {integrity: sha512-EeYD+gmIT80YkSIDb2iWq0lq2zbHo1CxHlQTeJ+KkCILWpVy3zASH3ByD4bopzfk0uCwXxLqKGLqp2W4O28VFA==}
@@ -2535,12 +2887,24 @@ packages:
utf-8-validate:
optional: true
+ y18n@5.0.8:
+ resolution: {integrity: sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==}
+ engines: {node: '>=10'}
+
yallist@3.1.1:
resolution: {integrity: sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==}
yallist@4.0.0:
resolution: {integrity: sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==}
+ yargs-parser@21.1.1:
+ resolution: {integrity: sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==}
+ engines: {node: '>=12'}
+
+ yargs@17.7.2:
+ resolution: {integrity: sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==}
+ engines: {node: '>=12'}
+
yn@3.1.1:
resolution: {integrity: sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q==}
engines: {node: '>=6'}
@@ -2707,6 +3071,19 @@ snapshots:
dependencies:
'@jridgewell/trace-mapping': 0.3.9
+ '@emnapi/core@1.3.1':
+ dependencies:
+ '@emnapi/wasi-threads': 1.0.1
+ tslib: 2.8.1
+
+ '@emnapi/runtime@1.3.1':
+ dependencies:
+ tslib: 2.8.1
+
+ '@emnapi/wasi-threads@1.0.1':
+ dependencies:
+ tslib: 2.8.1
+
'@esbuild/aix-ppc64@0.21.5':
optional: true
@@ -2976,6 +3353,10 @@ snapshots:
wrap-ansi: 8.1.0
wrap-ansi-cjs: wrap-ansi@7.0.0
+ '@jest/schemas@29.6.3':
+ dependencies:
+ '@sinclair/typebox': 0.27.8
+
'@jridgewell/gen-mapping@0.3.5':
dependencies:
'@jridgewell/set-array': 1.2.1
@@ -2998,6 +3379,12 @@ snapshots:
'@jridgewell/resolve-uri': 3.1.2
'@jridgewell/sourcemap-codec': 1.5.0
+ '@napi-rs/wasm-runtime@0.2.4':
+ dependencies:
+ '@emnapi/core': 1.3.1
+ '@emnapi/runtime': 1.3.1
+ '@tybys/wasm-util': 0.9.0
+
'@noble/curves@1.6.0':
dependencies:
'@noble/hashes': 1.5.0
@@ -3030,6 +3417,36 @@ snapshots:
dependencies:
semver: 7.6.3
+ '@nx/nx-darwin-arm64@20.1.2':
+ optional: true
+
+ '@nx/nx-darwin-x64@20.1.2':
+ optional: true
+
+ '@nx/nx-freebsd-x64@20.1.2':
+ optional: true
+
+ '@nx/nx-linux-arm-gnueabihf@20.1.2':
+ optional: true
+
+ '@nx/nx-linux-arm64-gnu@20.1.2':
+ optional: true
+
+ '@nx/nx-linux-arm64-musl@20.1.2':
+ optional: true
+
+ '@nx/nx-linux-x64-gnu@20.1.2':
+ optional: true
+
+ '@nx/nx-linux-x64-musl@20.1.2':
+ optional: true
+
+ '@nx/nx-win32-arm64-msvc@20.1.2':
+ optional: true
+
+ '@nx/nx-win32-x64-msvc@20.1.2':
+ optional: true
+
'@pkgjs/parseargs@0.11.0':
optional: true
@@ -3100,6 +3517,8 @@ snapshots:
'@noble/hashes': 1.5.0
'@scure/base': 1.1.9
+ '@sinclair/typebox@0.27.8': {}
+
'@tanstack/query-core@5.59.20': {}
'@tanstack/react-query@5.59.20(react@18.3.1)':
@@ -3115,6 +3534,10 @@ snapshots:
'@tsconfig/node16@1.0.4': {}
+ '@tybys/wasm-util@0.9.0':
+ dependencies:
+ tslib: 2.8.1
+
'@types/babel__core@7.20.5':
dependencies:
'@babel/parser': 7.26.2
@@ -3166,6 +3589,17 @@ snapshots:
transitivePeerDependencies:
- supports-color
+ '@yarnpkg/lockfile@1.1.0': {}
+
+ '@yarnpkg/parsers@3.0.2':
+ dependencies:
+ js-yaml: 3.14.1
+ tslib: 2.8.1
+
+ '@zkochan/js-yaml@0.0.7':
+ dependencies:
+ argparse: 2.0.1
+
abbrev@2.0.0: {}
abitype@1.0.6(typescript@5.6.3)(zod@3.23.8):
@@ -3215,12 +3649,18 @@ snapshots:
dependencies:
color-convert: 2.0.1
+ ansi-styles@5.2.0: {}
+
ansi-styles@6.2.1: {}
any-promise@1.3.0: {}
arg@4.1.3: {}
+ argparse@1.0.10:
+ dependencies:
+ sprintf-js: 1.0.3
+
argparse@2.0.1: {}
array-buffer-byte-length@1.0.1:
@@ -3279,14 +3719,32 @@ snapshots:
is-array-buffer: 3.0.4
is-shared-array-buffer: 1.0.3
+ asynckit@0.4.0: {}
+
auto-bind@5.0.1: {}
available-typed-arrays@1.0.7:
dependencies:
possible-typed-array-names: 1.0.0
+ axios@1.7.7:
+ dependencies:
+ follow-redirects: 1.15.9
+ form-data: 4.0.1
+ proxy-from-env: 1.1.0
+ transitivePeerDependencies:
+ - debug
+
balanced-match@1.0.2: {}
+ base64-js@1.5.1: {}
+
+ bl@4.1.0:
+ dependencies:
+ buffer: 5.7.1
+ inherits: 2.0.4
+ readable-stream: 3.6.2
+
brace-expansion@1.1.11:
dependencies:
balanced-match: 1.0.2
@@ -3307,6 +3765,11 @@ snapshots:
node-releases: 2.0.18
update-browserslist-db: 1.1.1(browserslist@4.24.2)
+ buffer@5.7.1:
+ dependencies:
+ base64-js: 1.5.1
+ ieee754: 1.2.1
+
bundle-require@5.0.0(esbuild@0.24.0):
dependencies:
esbuild: 0.24.0
@@ -3358,10 +3821,16 @@ snapshots:
cli-boxes@3.0.0: {}
+ cli-cursor@3.1.0:
+ dependencies:
+ restore-cursor: 3.1.0
+
cli-cursor@4.0.0:
dependencies:
restore-cursor: 4.0.0
+ cli-spinners@2.6.1: {}
+
cli-spinners@3.2.0: {}
cli-truncate@4.0.0:
@@ -3369,6 +3838,14 @@ snapshots:
slice-ansi: 5.0.0
string-width: 7.2.0
+ cliui@8.0.1:
+ dependencies:
+ string-width: 4.2.3
+ strip-ansi: 6.0.1
+ wrap-ansi: 7.0.0
+
+ clone@1.0.4: {}
+
code-excerpt@4.0.0:
dependencies:
convert-to-spaces: 2.0.1
@@ -3379,6 +3856,10 @@ snapshots:
color-name@1.1.4: {}
+ combined-stream@1.0.8:
+ dependencies:
+ delayed-stream: 1.0.0
+
commander@12.1.0: {}
commander@4.1.1: {}
@@ -3429,18 +3910,28 @@ snapshots:
deepmerge@4.3.1: {}
+ defaults@1.0.4:
+ dependencies:
+ clone: 1.0.4
+
define-data-property@1.1.4:
dependencies:
es-define-property: 1.0.0
es-errors: 1.3.0
gopd: 1.0.1
+ define-lazy-prop@2.0.0: {}
+
define-properties@1.2.1:
dependencies:
define-data-property: 1.1.4
has-property-descriptors: 1.0.2
object-keys: 1.1.1
+ delayed-stream@1.0.0: {}
+
+ diff-sequences@29.6.3: {}
+
diff@4.0.2: {}
doctrine@2.1.0:
@@ -3451,6 +3942,12 @@ snapshots:
dependencies:
esutils: 2.0.3
+ dotenv-expand@11.0.7:
+ dependencies:
+ dotenv: 16.4.5
+
+ dotenv@16.4.5: {}
+
eastasianwidth@0.2.0: {}
electron-to-chromium@1.5.57: {}
@@ -3466,6 +3963,14 @@ snapshots:
iconv-lite: 0.6.3
optional: true
+ end-of-stream@1.4.4:
+ dependencies:
+ once: 1.4.0
+
+ enquirer@2.3.6:
+ dependencies:
+ ansi-colors: 4.1.3
+
env-paths@2.2.1: {}
environment@1.1.0: {}
@@ -3649,6 +4154,8 @@ snapshots:
escalade@3.2.0: {}
+ escape-string-regexp@1.0.5: {}
+
escape-string-regexp@2.0.0: {}
escape-string-regexp@4.0.0: {}
@@ -3741,6 +4248,8 @@ snapshots:
acorn-jsx: 5.3.2(acorn@8.14.0)
eslint-visitor-keys: 3.4.3
+ esprima@4.0.1: {}
+
esquery@1.6.0:
dependencies:
estraverse: 5.3.0
@@ -3777,6 +4286,10 @@ snapshots:
optionalDependencies:
picomatch: 4.0.2
+ figures@3.2.0:
+ dependencies:
+ escape-string-regexp: 1.0.5
+
figures@6.1.0:
dependencies:
is-unicode-supported: 2.1.0
@@ -3802,8 +4315,12 @@ snapshots:
keyv: 4.5.4
rimraf: 3.0.2
+ flat@5.0.2: {}
+
flatted@3.3.1: {}
+ follow-redirects@1.15.9: {}
+
for-each@0.3.3:
dependencies:
is-callable: 1.2.7
@@ -3813,6 +4330,18 @@ snapshots:
cross-spawn: 7.0.3
signal-exit: 4.1.0
+ form-data@4.0.1:
+ dependencies:
+ asynckit: 0.4.0
+ combined-stream: 1.0.8
+ mime-types: 2.1.35
+
+ front-matter@4.0.2:
+ dependencies:
+ js-yaml: 3.14.1
+
+ fs-constants@1.0.0: {}
+
fs-minipass@2.1.0:
dependencies:
minipass: 3.3.6
@@ -3839,6 +4368,8 @@ snapshots:
gensync@1.0.0-beta.2: {}
+ get-caller-file@2.0.5: {}
+
get-east-asian-width@1.3.0: {}
get-intrinsic@1.2.4:
@@ -3949,6 +4480,8 @@ snapshots:
safer-buffer: 2.1.2
optional: true
+ ieee754@1.2.1: {}
+
ignore@5.3.2: {}
import-fresh@3.3.0:
@@ -4053,6 +4586,8 @@ snapshots:
dependencies:
has-tostringtag: 1.0.2
+ is-docker@2.2.1: {}
+
is-extglob@2.1.1: {}
is-finalizationregistry@1.0.2:
@@ -4077,6 +4612,8 @@ snapshots:
is-in-ci@0.1.0: {}
+ is-interactive@1.0.0: {}
+
is-lambda@1.0.1: {}
is-map@2.0.3: {}
@@ -4114,6 +4651,8 @@ snapshots:
dependencies:
which-typed-array: 1.1.15
+ is-unicode-supported@0.1.0: {}
+
is-unicode-supported@2.1.0: {}
is-weakmap@2.0.2: {}
@@ -4127,6 +4666,10 @@ snapshots:
call-bind: 1.0.7
get-intrinsic: 1.2.4
+ is-wsl@2.2.0:
+ dependencies:
+ is-docker: 2.2.1
+
isarray@2.0.5: {}
isexe@2.0.0: {}
@@ -4151,10 +4694,24 @@ snapshots:
optionalDependencies:
'@pkgjs/parseargs': 0.11.0
+ jest-diff@29.7.0:
+ dependencies:
+ chalk: 4.1.2
+ diff-sequences: 29.6.3
+ jest-get-type: 29.6.3
+ pretty-format: 29.7.0
+
+ jest-get-type@29.6.3: {}
+
joycon@3.1.1: {}
js-tokens@4.0.0: {}
+ js-yaml@3.14.1:
+ dependencies:
+ argparse: 1.0.10
+ esprima: 4.0.1
+
js-yaml@4.1.0:
dependencies:
argparse: 2.0.1
@@ -4171,6 +4728,8 @@ snapshots:
json5@2.2.3: {}
+ jsonc-parser@3.2.0: {}
+
jsx-ast-utils@3.3.5:
dependencies:
array-includes: 3.1.8
@@ -4191,6 +4750,8 @@ snapshots:
lines-and-columns@1.2.4: {}
+ lines-and-columns@2.0.3: {}
+
load-tsconfig@0.2.5: {}
locate-path@6.0.0:
@@ -4203,6 +4764,11 @@ snapshots:
lodash@4.17.21: {}
+ log-symbols@4.1.0:
+ dependencies:
+ chalk: 4.1.2
+ is-unicode-supported: 0.1.0
+
loose-envify@1.4.0:
dependencies:
js-tokens: 4.0.0
@@ -4239,16 +4805,28 @@ snapshots:
braces: 3.0.3
picomatch: 2.3.1
+ mime-db@1.52.0: {}
+
+ mime-types@2.1.35:
+ dependencies:
+ mime-db: 1.52.0
+
mimic-fn@2.1.0: {}
minimatch@3.1.2:
dependencies:
brace-expansion: 1.1.11
+ minimatch@9.0.3:
+ dependencies:
+ brace-expansion: 2.0.1
+
minimatch@9.0.5:
dependencies:
brace-expansion: 2.0.1
+ minimist@1.2.8: {}
+
minipass-collect@2.0.1:
dependencies:
minipass: 7.1.2
@@ -4317,6 +4895,8 @@ snapshots:
transitivePeerDependencies:
- supports-color
+ node-machine-id@1.1.12: {}
+
node-releases@2.0.18: {}
nopt@7.2.1:
@@ -4329,6 +4909,58 @@ snapshots:
semver: 7.6.3
validate-npm-package-license: 3.0.4
+ npm-run-path@4.0.1:
+ dependencies:
+ path-key: 3.1.1
+
+ nx@20.1.2:
+ dependencies:
+ '@napi-rs/wasm-runtime': 0.2.4
+ '@yarnpkg/lockfile': 1.1.0
+ '@yarnpkg/parsers': 3.0.2
+ '@zkochan/js-yaml': 0.0.7
+ axios: 1.7.7
+ chalk: 4.1.2
+ cli-cursor: 3.1.0
+ cli-spinners: 2.6.1
+ cliui: 8.0.1
+ dotenv: 16.4.5
+ dotenv-expand: 11.0.7
+ enquirer: 2.3.6
+ figures: 3.2.0
+ flat: 5.0.2
+ front-matter: 4.0.2
+ ignore: 5.3.2
+ jest-diff: 29.7.0
+ jsonc-parser: 3.2.0
+ lines-and-columns: 2.0.3
+ minimatch: 9.0.3
+ node-machine-id: 1.1.12
+ npm-run-path: 4.0.1
+ open: 8.4.2
+ ora: 5.3.0
+ semver: 7.6.3
+ string-width: 4.2.3
+ tar-stream: 2.2.0
+ tmp: 0.2.3
+ tsconfig-paths: 4.2.0
+ tslib: 2.8.1
+ yargs: 17.7.2
+ yargs-parser: 21.1.1
+ optionalDependencies:
+ '@nx/nx-darwin-arm64': 20.1.2
+ '@nx/nx-darwin-x64': 20.1.2
+ '@nx/nx-freebsd-x64': 20.1.2
+ '@nx/nx-linux-arm-gnueabihf': 20.1.2
+ '@nx/nx-linux-arm64-gnu': 20.1.2
+ '@nx/nx-linux-arm64-musl': 20.1.2
+ '@nx/nx-linux-x64-gnu': 20.1.2
+ '@nx/nx-linux-x64-musl': 20.1.2
+ '@nx/nx-win32-arm64-msvc': 20.1.2
+ '@nx/nx-win32-x64-msvc': 20.1.2
+ transitivePeerDependencies:
+ - debug
+
object-assign@4.1.1: {}
object-inspect@1.13.2: {}
@@ -4369,6 +5001,12 @@ snapshots:
dependencies:
mimic-fn: 2.1.0
+ open@8.4.2:
+ dependencies:
+ define-lazy-prop: 2.0.0
+ is-docker: 2.2.1
+ is-wsl: 2.2.0
+
optionator@0.9.4:
dependencies:
deep-is: 0.1.4
@@ -4378,6 +5016,17 @@ snapshots:
type-check: 0.4.0
word-wrap: 1.2.5
+ ora@5.3.0:
+ dependencies:
+ bl: 4.1.0
+ chalk: 4.1.2
+ cli-cursor: 3.1.0
+ cli-spinners: 2.6.1
+ is-interactive: 1.0.0
+ log-symbols: 4.1.0
+ strip-ansi: 6.0.1
+ wcwidth: 1.0.1
+
p-limit@3.1.0:
dependencies:
yocto-queue: 0.1.0
@@ -4460,6 +5109,12 @@ snapshots:
prettier@2.8.8: {}
+ pretty-format@29.7.0:
+ dependencies:
+ '@jest/schemas': 29.6.3
+ ansi-styles: 5.2.0
+ react-is: 18.3.1
+
proc-log@4.2.0: {}
promise-retry@2.0.1:
@@ -4473,12 +5128,16 @@ snapshots:
object-assign: 4.1.1
react-is: 16.13.1
+ proxy-from-env@1.1.0: {}
+
punycode@2.3.1: {}
queue-microtask@1.2.3: {}
react-is@16.13.1: {}
+ react-is@18.3.1: {}
+
react-reconciler@0.29.2(react@18.3.1):
dependencies:
loose-envify: 1.4.0
@@ -4505,6 +5164,12 @@ snapshots:
type-fest: 4.26.1
unicorn-magic: 0.1.0
+ readable-stream@3.6.2:
+ dependencies:
+ inherits: 2.0.4
+ string_decoder: 1.3.0
+ util-deprecate: 1.0.2
+
readdirp@4.0.2: {}
reflect.getprototypeof@1.0.6:
@@ -4524,6 +5189,8 @@ snapshots:
es-errors: 1.3.0
set-function-name: 2.0.2
+ require-directory@2.1.1: {}
+
resolve-from@4.0.0: {}
resolve-from@5.0.0: {}
@@ -4543,6 +5210,11 @@ snapshots:
path-parse: 1.0.7
supports-preserve-symlinks-flag: 1.0.0
+ restore-cursor@3.1.0:
+ dependencies:
+ onetime: 5.1.2
+ signal-exit: 3.0.7
+
restore-cursor@4.0.0:
dependencies:
onetime: 5.1.2
@@ -4591,6 +5263,8 @@ snapshots:
has-symbols: 1.0.3
isarray: 2.0.5
+ safe-buffer@5.2.1: {}
+
safe-regex-test@1.0.3:
dependencies:
call-bind: 1.0.7
@@ -4686,6 +5360,8 @@ snapshots:
spdx-license-ids@3.0.20: {}
+ sprintf-js@1.0.3: {}
+
sprintf-js@1.1.3: {}
ssri@10.0.6:
@@ -4753,6 +5429,10 @@ snapshots:
define-properties: 1.2.1
es-object-atoms: 1.0.0
+ string_decoder@1.3.0:
+ dependencies:
+ safe-buffer: 5.2.1
+
strip-ansi@6.0.1:
dependencies:
ansi-regex: 5.0.1
@@ -4761,6 +5441,8 @@ snapshots:
dependencies:
ansi-regex: 6.1.0
+ strip-bom@3.0.0: {}
+
strip-json-comments@3.1.1: {}
sucrase@3.35.0:
@@ -4779,6 +5461,14 @@ snapshots:
supports-preserve-symlinks-flag@1.0.0: {}
+ tar-stream@2.2.0:
+ dependencies:
+ bl: 4.1.0
+ end-of-stream: 1.4.4
+ fs-constants: 1.0.0
+ inherits: 2.0.4
+ readable-stream: 3.6.2
+
tar@6.2.1:
dependencies:
chownr: 2.0.0
@@ -4805,6 +5495,8 @@ snapshots:
fdir: 6.4.2(picomatch@4.0.2)
picomatch: 4.0.2
+ tmp@0.2.3: {}
+
to-regex-range@5.0.1:
dependencies:
is-number: 7.0.0
@@ -4835,6 +5527,14 @@ snapshots:
v8-compile-cache-lib: 3.0.1
yn: 3.1.1
+ tsconfig-paths@4.2.0:
+ dependencies:
+ json5: 2.2.3
+ minimist: 1.2.8
+ strip-bom: 3.0.0
+
+ tslib@2.8.1: {}
+
tsup@8.3.5(postcss@8.4.49)(tsx@4.19.2)(typescript@5.6.3):
dependencies:
bundle-require: 5.0.0(esbuild@0.24.0)
@@ -4940,6 +5640,8 @@ snapshots:
dependencies:
punycode: 2.3.1
+ util-deprecate@1.0.2: {}
+
v8-compile-cache-lib@3.0.1: {}
validate-npm-package-license@3.0.4:
@@ -4974,6 +5676,10 @@ snapshots:
'@types/node': 22.9.0
fsevents: 2.3.3
+ wcwidth@1.0.1:
+ dependencies:
+ defaults: 1.0.4
+
webauthn-p256@0.0.10:
dependencies:
'@noble/curves': 1.6.0
@@ -5061,10 +5767,24 @@ snapshots:
ws@8.18.0: {}
+ y18n@5.0.8: {}
+
yallist@3.1.1: {}
yallist@4.0.0: {}
+ yargs-parser@21.1.1: {}
+
+ yargs@17.7.2:
+ dependencies:
+ cliui: 8.0.1
+ escalade: 3.2.0
+ get-caller-file: 2.0.5
+ require-directory: 2.1.1
+ string-width: 4.2.3
+ y18n: 5.0.8
+ yargs-parser: 21.1.1
+
yn@3.1.1: {}
yocto-queue@0.1.0: {}
diff --git a/pnpm-workspace.yaml b/pnpm-workspace.yaml
new file mode 100644
index 0000000..4340350
--- /dev/null
+++ b/pnpm-workspace.yaml
@@ -0,0 +1,2 @@
+packages:
+ - 'packages/*'
\ No newline at end of file
diff --git a/src/utils/toml.ts b/src/utils/toml.ts
deleted file mode 100644
index 62ffefd..0000000
--- a/src/utils/toml.ts
+++ /dev/null
@@ -1,6 +0,0 @@
-import { parse_toml } from '@/toml_parser.js'
-
-export const parseTOML = (tomlString: string) => {
- const jsonStr = parse_toml(tomlString)
- return JSON.parse(jsonStr)
-}
diff --git a/toml-parser/.gitignore b/toml-parser/.gitignore
deleted file mode 100644
index 9f97022..0000000
--- a/toml-parser/.gitignore
+++ /dev/null
@@ -1 +0,0 @@
-target/
\ No newline at end of file
diff --git a/toml-parser/Cargo.lock b/toml-parser/Cargo.lock
deleted file mode 100644
index e6924ed..0000000
--- a/toml-parser/Cargo.lock
+++ /dev/null
@@ -1,186 +0,0 @@
-# This file is automatically @generated by Cargo.
-# It is not intended for manual editing.
-version = 3
-
-[[package]]
-name = "bumpalo"
-version = "3.16.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "79296716171880943b8470b5f8d03aa55eb2e645a4874bdbb28adb49162e012c"
-
-[[package]]
-name = "cfg-if"
-version = "1.0.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd"
-
-[[package]]
-name = "itoa"
-version = "1.0.11"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "49f1f14873335454500d59611f1cf4a4b0f786f9ac11f4312a78e4cf2566695b"
-
-[[package]]
-name = "log"
-version = "0.4.22"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a7a70ba024b9dc04c27ea2f0c0548feb474ec5c54bba33a7f72f873a39d07b24"
-
-[[package]]
-name = "memchr"
-version = "2.7.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "78ca9ab1a0babb1e7d5695e3530886289c18cf2f87ec19a575a0abdce112e3a3"
-
-[[package]]
-name = "once_cell"
-version = "1.20.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1261fe7e33c73b354eab43b1273a57c8f967d0391e80353e51f764ac02cf6775"
-
-[[package]]
-name = "proc-macro2"
-version = "1.0.89"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f139b0662de085916d1fb67d2b4169d1addddda1919e696f3252b740b629986e"
-dependencies = [
- "unicode-ident",
-]
-
-[[package]]
-name = "quote"
-version = "1.0.37"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b5b9d34b8991d19d98081b46eacdd8eb58c6f2b201139f7c5f643cc155a633af"
-dependencies = [
- "proc-macro2",
-]
-
-[[package]]
-name = "ryu"
-version = "1.0.18"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f3cb5ba0dc43242ce17de99c180e96db90b235b8a9fdc9543c96d2209116bd9f"
-
-[[package]]
-name = "serde"
-version = "1.0.215"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6513c1ad0b11a9376da888e3e0baa0077f1aed55c17f50e7b2397136129fb88f"
-dependencies = [
- "serde_derive",
-]
-
-[[package]]
-name = "serde_derive"
-version = "1.0.215"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ad1e866f866923f252f05c889987993144fb74e722403468a4ebd70c3cd756c0"
-dependencies = [
- "proc-macro2",
- "quote",
- "syn",
-]
-
-[[package]]
-name = "serde_json"
-version = "1.0.132"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d726bfaff4b320266d395898905d0eba0345aae23b54aee3a737e260fd46db03"
-dependencies = [
- "itoa",
- "memchr",
- "ryu",
- "serde",
-]
-
-[[package]]
-name = "syn"
-version = "2.0.87"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "25aa4ce346d03a6dcd68dd8b4010bcb74e54e62c90c573f394c46eae99aba32d"
-dependencies = [
- "proc-macro2",
- "quote",
- "unicode-ident",
-]
-
-[[package]]
-name = "toml"
-version = "0.5.11"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f4f7f0dd8d50a853a531c426359045b1998f04219d88799810762cd4ad314234"
-dependencies = [
- "serde",
-]
-
-[[package]]
-name = "toml-parser"
-version = "0.1.0"
-dependencies = [
- "serde",
- "serde_json",
- "toml",
- "wasm-bindgen",
-]
-
-[[package]]
-name = "unicode-ident"
-version = "1.0.13"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e91b56cd4cadaeb79bbf1a5645f6b4f8dc5bde8834ad5894a8db35fda9efa1fe"
-
-[[package]]
-name = "wasm-bindgen"
-version = "0.2.95"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "128d1e363af62632b8eb57219c8fd7877144af57558fb2ef0368d0087bddeb2e"
-dependencies = [
- "cfg-if",
- "once_cell",
- "wasm-bindgen-macro",
-]
-
-[[package]]
-name = "wasm-bindgen-backend"
-version = "0.2.95"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cb6dd4d3ca0ddffd1dd1c9c04f94b868c37ff5fac97c30b97cff2d74fce3a358"
-dependencies = [
- "bumpalo",
- "log",
- "once_cell",
- "proc-macro2",
- "quote",
- "syn",
- "wasm-bindgen-shared",
-]
-
-[[package]]
-name = "wasm-bindgen-macro"
-version = "0.2.95"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e79384be7f8f5a9dd5d7167216f022090cf1f9ec128e6e6a482a2cb5c5422c56"
-dependencies = [
- "quote",
- "wasm-bindgen-macro-support",
-]
-
-[[package]]
-name = "wasm-bindgen-macro-support"
-version = "0.2.95"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "26c6ab57572f7a24a4985830b120de1594465e5d500f24afe89e16b4e833ef68"
-dependencies = [
- "proc-macro2",
- "quote",
- "syn",
- "wasm-bindgen-backend",
- "wasm-bindgen-shared",
-]
-
-[[package]]
-name = "wasm-bindgen-shared"
-version = "0.2.95"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "65fc09f10666a9f147042251e0dda9c18f166ff7de300607007e96bdebc1068d"
diff --git a/toml-parser/Cargo.toml b/toml-parser/Cargo.toml
deleted file mode 100644
index 7ab4ed0..0000000
--- a/toml-parser/Cargo.toml
+++ /dev/null
@@ -1,13 +0,0 @@
-[package]
-name = "toml-parser"
-version = "0.1.0"
-edition = "2021"
-
-[lib]
- crate-type = ["cdylib"] # This is important for WebAssembly
-
-[dependencies]
- wasm-bindgen = "0.2" # For WebAssembly bindings
- toml = "0.5"
- serde = { version = "1.0", features = ["derive"] }
- serde_json = "1.0"
diff --git a/toml-parser/pkg/package.json b/toml-parser/pkg/package.json
deleted file mode 100644
index 86117b6..0000000
--- a/toml-parser/pkg/package.json
+++ /dev/null
@@ -1,17 +0,0 @@
-{
- "name": "toml-parser",
- "type": "module",
- "version": "0.1.0",
- "files": [
- "toml_parser_bg.wasm",
- "toml_parser.js",
- "toml_parser_bg.js",
- "toml_parser.d.ts"
- ],
- "main": "toml_parser.js",
- "types": "toml_parser.d.ts",
- "sideEffects": [
- "./toml_parser.js",
- "./snippets/*"
- ]
-}
\ No newline at end of file
diff --git a/toml-parser/pkg/toml_parser.d.ts b/toml-parser/pkg/toml_parser.d.ts
deleted file mode 100644
index 999182d..0000000
--- a/toml-parser/pkg/toml_parser.d.ts
+++ /dev/null
@@ -1,7 +0,0 @@
-/* tslint:disable */
-/* eslint-disable */
-/**
- * @param {string} toml_str
- * @returns {string}
- */
-export function parse_toml(toml_str: string): string;
diff --git a/toml-parser/pkg/toml_parser.js b/toml-parser/pkg/toml_parser.js
deleted file mode 100644
index 4def5e3..0000000
--- a/toml-parser/pkg/toml_parser.js
+++ /dev/null
@@ -1,5 +0,0 @@
-import * as wasm from "./toml_parser_bg.wasm";
-export * from "./toml_parser_bg.js";
-import { __wbg_set_wasm } from "./toml_parser_bg.js";
-__wbg_set_wasm(wasm);
-wasm.__wbindgen_start();
diff --git a/toml-parser/pkg/toml_parser_bg.js b/toml-parser/pkg/toml_parser_bg.js
deleted file mode 100644
index 12ea264..0000000
--- a/toml-parser/pkg/toml_parser_bg.js
+++ /dev/null
@@ -1,130 +0,0 @@
-let wasm;
-export function __wbg_set_wasm(val) {
- wasm = val;
-}
-
-
-const lTextDecoder = typeof TextDecoder === 'undefined' ? (0, module.require)('util').TextDecoder : TextDecoder;
-
-let cachedTextDecoder = new lTextDecoder('utf-8', { ignoreBOM: true, fatal: true });
-
-cachedTextDecoder.decode();
-
-let cachedUint8ArrayMemory0 = null;
-
-function getUint8ArrayMemory0() {
- if (cachedUint8ArrayMemory0 === null || cachedUint8ArrayMemory0.byteLength === 0) {
- cachedUint8ArrayMemory0 = new Uint8Array(wasm.memory.buffer);
- }
- return cachedUint8ArrayMemory0;
-}
-
-function getStringFromWasm0(ptr, len) {
- ptr = ptr >>> 0;
- return cachedTextDecoder.decode(getUint8ArrayMemory0().subarray(ptr, ptr + len));
-}
-
-let WASM_VECTOR_LEN = 0;
-
-const lTextEncoder = typeof TextEncoder === 'undefined' ? (0, module.require)('util').TextEncoder : TextEncoder;
-
-let cachedTextEncoder = new lTextEncoder('utf-8');
-
-const encodeString = (typeof cachedTextEncoder.encodeInto === 'function'
- ? function (arg, view) {
- return cachedTextEncoder.encodeInto(arg, view);
-}
- : function (arg, view) {
- const buf = cachedTextEncoder.encode(arg);
- view.set(buf);
- return {
- read: arg.length,
- written: buf.length
- };
-});
-
-function passStringToWasm0(arg, malloc, realloc) {
-
- if (realloc === undefined) {
- const buf = cachedTextEncoder.encode(arg);
- const ptr = malloc(buf.length, 1) >>> 0;
- getUint8ArrayMemory0().subarray(ptr, ptr + buf.length).set(buf);
- WASM_VECTOR_LEN = buf.length;
- return ptr;
- }
-
- let len = arg.length;
- let ptr = malloc(len, 1) >>> 0;
-
- const mem = getUint8ArrayMemory0();
-
- let offset = 0;
-
- for (; offset < len; offset++) {
- const code = arg.charCodeAt(offset);
- if (code > 0x7F) break;
- mem[ptr + offset] = code;
- }
-
- if (offset !== len) {
- if (offset !== 0) {
- arg = arg.slice(offset);
- }
- ptr = realloc(ptr, len, len = offset + arg.length * 3, 1) >>> 0;
- const view = getUint8ArrayMemory0().subarray(ptr + offset, ptr + len);
- const ret = encodeString(arg, view);
-
- offset += ret.written;
- ptr = realloc(ptr, len, offset, 1) >>> 0;
- }
-
- WASM_VECTOR_LEN = offset;
- return ptr;
-}
-
-function takeFromExternrefTable0(idx) {
- const value = wasm.__wbindgen_export_0.get(idx);
- wasm.__externref_table_dealloc(idx);
- return value;
-}
-/**
- * @param {string} toml_str
- * @returns {string}
- */
-export function parse_toml(toml_str) {
- let deferred3_0;
- let deferred3_1;
- try {
- const ptr0 = passStringToWasm0(toml_str, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
- const len0 = WASM_VECTOR_LEN;
- const ret = wasm.parse_toml(ptr0, len0);
- var ptr2 = ret[0];
- var len2 = ret[1];
- if (ret[3]) {
- ptr2 = 0; len2 = 0;
- throw takeFromExternrefTable0(ret[2]);
- }
- deferred3_0 = ptr2;
- deferred3_1 = len2;
- return getStringFromWasm0(ptr2, len2);
- } finally {
- wasm.__wbindgen_free(deferred3_0, deferred3_1, 1);
- }
-}
-
-export function __wbindgen_string_new(arg0, arg1) {
- const ret = getStringFromWasm0(arg0, arg1);
- return ret;
-};
-
-export function __wbindgen_init_externref_table() {
- const table = wasm.__wbindgen_export_0;
- const offset = table.grow(4);
- table.set(0, undefined);
- table.set(offset + 0, undefined);
- table.set(offset + 1, null);
- table.set(offset + 2, true);
- table.set(offset + 3, false);
- ;
-};
-
diff --git a/toml-parser/pkg/toml_parser_bg.wasm b/toml-parser/pkg/toml_parser_bg.wasm
deleted file mode 100644
index 8685a6e..0000000
Binary files a/toml-parser/pkg/toml_parser_bg.wasm and /dev/null differ
diff --git a/toml-parser/pkg/toml_parser_bg.wasm.d.ts b/toml-parser/pkg/toml_parser_bg.wasm.d.ts
deleted file mode 100644
index 5ff4a0e..0000000
--- a/toml-parser/pkg/toml_parser_bg.wasm.d.ts
+++ /dev/null
@@ -1,10 +0,0 @@
-/* tslint:disable */
-/* eslint-disable */
-export const memory: WebAssembly.Memory;
-export function parse_toml(a: number, b: number): Array;
-export const __wbindgen_export_0: WebAssembly.Table;
-export function __wbindgen_malloc(a: number, b: number): number;
-export function __wbindgen_realloc(a: number, b: number, c: number, d: number): number;
-export function __externref_table_dealloc(a: number): void;
-export function __wbindgen_free(a: number, b: number, c: number): void;
-export function __wbindgen_start(): void;
diff --git a/toml-parser/src/lib.rs b/toml-parser/src/lib.rs
deleted file mode 100644
index 5bced2e..0000000
--- a/toml-parser/src/lib.rs
+++ /dev/null
@@ -1,17 +0,0 @@
-use wasm_bindgen::prelude::*;
-use toml::de::from_str;
-use serde_json::json;
-use std::collections::HashMap;
-
-#[wasm_bindgen]
-pub fn parse_toml(toml_str: &str) -> Result {
- let parsed: Result, toml::de::Error> = from_str(toml_str);
-
- match parsed {
- Ok(data) => {
- let json_data = serde_json::to_string(&data).map_err(|e| e.to_string())?;
- Ok(json_data)
- },
- Err(err) => Err(format!("Error parsing TOML: {}", err)),
- }
-}