Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat!: prettify typegen api #2824

Merged
merged 101 commits into from
Aug 6, 2024
Merged
Show file tree
Hide file tree
Changes from 96 commits
Commits
Show all changes
101 commits
Select commit Hold shift + click to select a range
80c3ca9
Deleting bytecode template
arboleya Jul 21, 2024
c5d2c69
Renaming `dts` template to `main`, refactoring structure
arboleya Jul 21, 2024
818d95b
Refactoring `factory` contract template
arboleya Jul 21, 2024
7b2c0cb
Adding more name variations
arboleya Jul 21, 2024
4402611
Re-enable eslint for generated files
arboleya Jul 21, 2024
40ff0d4
Reviewing filename suffixes and assembler utilities
arboleya Jul 21, 2024
4ae34ef
Adding test script
arboleya Jul 21, 2024
0b80da2
Refactoring tests
arboleya Jul 21, 2024
ce815e0
Sorting
arboleya Jul 21, 2024
d2666c7
Commenting out unused items
arboleya Jul 21, 2024
cff0aac
Adjusting template
arboleya Jul 21, 2024
ea3d154
Adding missing tsconfig file
arboleya Jul 21, 2024
a4992d6
Adjusting test label
arboleya Jul 21, 2024
ac766ce
Saving draft
arboleya Jul 21, 2024
a1c140a
No more need for `factories` directory
arboleya Jul 21, 2024
baa8a95
Re-shaping Scripts & Predicates - from `factory` to `main`
arboleya Jul 21, 2024
6287672
Adding test script
arboleya Jul 21, 2024
e35aed0
Rwefactoring Script and Predicate templates
arboleya Jul 21, 2024
331ffd4
Fixing a bunch of tests
arboleya Jul 21, 2024
b6b0a08
Adjusting launcher utility
arboleya Jul 21, 2024
f47cc6d
A bunch of adjustments everywhere
arboleya Jul 22, 2024
4990ef8
A bunch more
arboleya Jul 22, 2024
8ee6c2f
Work is never over
arboleya Jul 22, 2024
b4c5b23
Removing unnecessary field from test node launcher
arboleya Jul 22, 2024
d1a5255
Fixing and simplifying rendering of index files
arboleya Jul 23, 2024
5e150f4
Adjusting gauge tests
arboleya Jul 23, 2024
b2d8e37
Adjusting more gauge tests
arboleya Jul 23, 2024
a83bb3b
Why ever stop?
arboleya Jul 23, 2024
fe90637
Adjusting demo application
arboleya Jul 23, 2024
5ad6c9b
Fixing isolated test
arboleya Jul 23, 2024
8c8c945
Replacing enums
arboleya Jul 23, 2024
a684303
Fixing script instantiation
arboleya Jul 23, 2024
495b9a5
Fixing more tests
arboleya Jul 23, 2024
9d07da0
Reviewing templates; adjusting tests and fixtures
arboleya Jul 23, 2024
27b8b18
Fixing more gauge tests
arboleya Jul 23, 2024
165a50f
Fixing imports
arboleya Jul 23, 2024
d4bdfc1
Adjusting broken test assertions
arboleya Jul 23, 2024
1a9af92
Using relative import
arboleya Jul 23, 2024
15de794
Adding “test” dir to list do directories
arboleya Jul 23, 2024
6d89cfd
Merge branch 'master' into aa/feat/typegen-prettify
arboleya Jul 23, 2024
073f7d9
Updating API
arboleya Jul 23, 2024
ee7c570
Adjusting fixture
arboleya Jul 23, 2024
e6b4924
Merge branch 'master' into aa/feat/typegen-prettify
arboleya Jul 23, 2024
c3c0a55
Adding changeset
arboleya Jul 23, 2024
1070727
Adjusting changeset
arboleya Jul 23, 2024
6a9d40c
Stop omitting `run` command to make knip happy
arboleya Jul 24, 2024
c1dc94a
Deleting obsolete example file
arboleya Jul 24, 2024
d343063
Merge branch 'master' into aa/feat/typegen-prettify
arboleya Jul 31, 2024
cd9bd10
Fixing residual problems after merge
arboleya Aug 1, 2024
ef59467
Updating fixtures
arboleya Aug 1, 2024
bd0de7e
Incresing timeout limits for test
arboleya Aug 1, 2024
4c6b75d
Fixing outdated API usages
arboleya Aug 1, 2024
1d0506b
Removing residual old template
arboleya Aug 1, 2024
281a81c
Removing unused variable
arboleya Aug 1, 2024
144d2ba
Increase timeout tolerance for heavy test
arboleya Aug 1, 2024
bef0f2b
Adjusting import paths
arboleya Aug 1, 2024
f7ba1ec
Removing obsolete file
arboleya Aug 1, 2024
e6ba52f
Adjusting import paths in fixtures
arboleya Aug 1, 2024
398e4a9
Update packages/abi-typegen/src/templates/common/common.hbs
arboleya Aug 1, 2024
77a64a6
Update apps/docs-snippets/src/guide/create-fuels/decrement_counter.te…
arboleya Aug 1, 2024
841268f
Update packages/fuel-gauge/src/auth-testing.test.ts
arboleya Aug 1, 2024
f95b60c
Update packages/fuel-gauge/src/configurable-contract.test.ts
arboleya Aug 1, 2024
48069a4
chore: stop skipping decoding for vectors in `Interface.test.ts` (#2873)
nedsalk Aug 1, 2024
acc6f0b
Merge branch 'master' into aa/feat/typegen-prettify
arboleya Aug 1, 2024
e37471d
Disabling some more harmless rules
arboleya Aug 1, 2024
21b979f
Adding option to auto-update fixtures
arboleya Aug 1, 2024
edecad6
Omitting configurables conditionally in Predicate templates
arboleya Aug 1, 2024
2210e68
Nits
arboleya Aug 1, 2024
184b975
Updating typege test fixtures
arboleya Aug 1, 2024
eaac82d
Fine-tuning template conditional and related fixture
arboleya Aug 1, 2024
80413bc
Resolving class names collisions
arboleya Aug 1, 2024
37fa06f
Adjusting class names in related tests
arboleya Aug 1, 2024
47d1093
Prettier format
arboleya Aug 1, 2024
1408898
Removing outdated comments
arboleya Aug 1, 2024
4035ce2
Lintfix
arboleya Aug 1, 2024
fb9c509
chore!: alter predicate signature (#2876)
petertonysmith94 Aug 1, 2024
c8a440c
Improving pass-through API
arboleya Aug 2, 2024
c321187
Adjusting template's header
arboleya Aug 2, 2024
4faf0a2
Adjusting import paths and standardizing ficcticious types path
arboleya Aug 2, 2024
86b3e70
DRY
arboleya Aug 2, 2024
66b0e9f
Oops
arboleya Aug 2, 2024
5ec8443
Renaming `deployContract` to `deploy` (redundant suffix)
arboleya Aug 2, 2024
cc6e282
Fixing broken anchor
arboleya Aug 2, 2024
3a23bbd
Going boolean
arboleya Aug 4, 2024
0d90ee9
Adjusting outdated options name and docs
arboleya Aug 5, 2024
915eafb
Adjusting wording
arboleya Aug 5, 2024
f232d15
Removing lonely context line
arboleya Aug 5, 2024
eb0a6cd
Adding missing affected packages
arboleya Aug 5, 2024
cda9913
Update apps/docs/src/guide/testing/test-node-options.md
arboleya Aug 5, 2024
b78b1ed
Merge branch 'master' into aa/feat/typegen-prettify
arboleya Aug 5, 2024
f67cd2e
Merge branch 'master' into aa/feat/typegen-prettify
arboleya Aug 5, 2024
71538e4
Standardizing contextual import paths
arboleya Aug 5, 2024
ac0a096
Fixing class names
arboleya Aug 5, 2024
18cb358
Adjusting Predicate constructor signature
arboleya Aug 5, 2024
b360c42
Adjusting class and property names
arboleya Aug 5, 2024
ad60535
Merge branch 'master' into aa/feat/typegen-prettify
petertonysmith94 Aug 6, 2024
5855776
Updating class names, file paths and constructor signatures
arboleya Aug 6, 2024
55fd451
Tyding up unused variables
arboleya Aug 6, 2024
ea2a2c3
Removing redundant await
arboleya Aug 6, 2024
71e1beb
Making docs happy
arboleya Aug 6, 2024
4896a62
Unfixing what wasn't broken
arboleya Aug 6, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
9 changes: 9 additions & 0 deletions .changeset/empty-lemons-ring.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
---
"@fuel-ts/abi-typegen": minor
"@fuel-ts/account": minor
"@fuel-ts/contract": minor
"create-fuels": minor
"fuels": minor
---

feat!: prettify `typegen` api
7 changes: 3 additions & 4 deletions apps/create-fuels-counter-guide/src/app/page.tsx
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
"use client";

import type { TestContractAbi } from "@/sway-api";
import { TestContractAbi__factory } from "@/sway-api";
import { TestContract } from "@/sway-api";
import contractIds from "@/sway-api/contract-ids.json";
import { FuelLogo } from "@/components/FuelLogo";
import { bn } from "fuels";
Expand All @@ -22,7 +21,7 @@ const contractId =

export default function Home() {
const { wallet, walletBalance, refreshWalletBalance } = useActiveWallet();
const [contract, setContract] = useState<TestContractAbi>();
const [contract, setContract] = useState<TestContract>();
const [counter, setCounter] = useState<number>();

/**
Expand All @@ -32,7 +31,7 @@ export default function Home() {
useAsync(async () => {
if (wallet) {
// Create a new instance of the contract
const testContract = TestContractAbi__factory.connect(contractId, wallet);
const testContract = new TestContract(contractId, wallet);
setContract(testContract);

// Read the current value of the counter
Expand Down
24 changes: 14 additions & 10 deletions apps/create-fuels-counter-guide/src/app/predicate/page.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -5,8 +5,8 @@ import { FuelLogo } from "@/components/FuelLogo";
import { Input } from "@/components/Input";
import { Link } from "@/components/Link";
import { useActiveWallet } from "@/hooks/useActiveWallet";
import { TestPredicate } from "@/sway-api/predicates/index";
import { FAUCET_LINK } from '@/lib';
import { TestPredicateAbi__factory } from "@/sway-api/predicates/index";
import { BN, InputValue, Predicate } from "fuels";
import { bn } from "fuels";
import { useState } from "react";
Expand All @@ -28,9 +28,9 @@ export default function PredicateExample() {
if (wallet) {
baseAssetId = wallet.provider.getBaseAssetId();
// Initialize a new predicate instance
const predicate = TestPredicateAbi__factory.createInstance(
wallet.provider,
);
const predicate = new TestPredicate({
provider: wallet.provider
});
setPredicate(predicate);
setPredicateBalance(await predicate.getBalance());
}
Expand Down Expand Up @@ -76,10 +76,10 @@ export default function PredicateExample() {
}

// Initialize a new predicate instance with the entered pin
const reInitializePredicate = TestPredicateAbi__factory.createInstance(
wallet.provider,
[bn(pin)],
);
const reInitializePredicate = new TestPredicate({
provider: wallet.provider,
data: [bn(pin)],
});

if (!reInitializePredicate) {
return toast.error("Failed to initialize predicate");
Expand Down Expand Up @@ -133,9 +133,13 @@ export default function PredicateExample() {
return toast.error("Please enter a pin");
}

const configurable = { PIN: bn(pin) };
const configurableConstants = { PIN: bn(pin) };
// instantiate predicate with configurable constants
const reInitializePredicate = TestPredicateAbi__factory.createInstance(wallet.provider, [bn(configurable.PIN)], configurable);
const reInitializePredicate = new TestPredicate({
provider: wallet.provider,
data: [configurableConstants.PIN],
configurableConstants,
});

if (!reInitializePredicate) {
return toast.error("Failed to initialize predicate");
Expand Down
4 changes: 2 additions & 2 deletions apps/create-fuels-counter-guide/src/app/script/page.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ import { FuelLogo } from "@/components/FuelLogo";
import { Input } from "@/components/Input";
import { Link } from "@/components/Link";
import { useActiveWallet } from "@/hooks/useActiveWallet";
import { TestScriptAbi__factory } from "@/sway-api";
import { TestScript } from "@/sway-api";
import { BN, BigNumberish, Script, bn } from "fuels";
import { useState } from "react";
import toast from "react-hot-toast";
Expand All @@ -21,7 +21,7 @@ export default function ScriptExample() {
useAsync(async () => {
if (wallet) {
// Initialize script instance
const script = TestScriptAbi__factory.createInstance(wallet);
const script = new TestScript(wallet);
setScript(script);
}
}, [wallet]);
Expand Down
35 changes: 17 additions & 18 deletions apps/demo-bun-fuels/src/bun.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -5,11 +5,10 @@
* It ensures that built code is fully working.
*/

import { ContractFactory, Provider, toHex, Wallet, FUEL_NETWORK_URL } from 'fuels';
import { Provider, toHex, Wallet, FUEL_NETWORK_URL } from 'fuels';
import { generateTestWallet, safeExec } from 'fuels/test-utils';

import { SampleAbi__factory } from './sway-programs-api';
import bytecode from './sway-programs-api/contracts/SampleAbi.hex';
import { Sample, SampleFactory } from './sway-programs-api';

let baseAssetId: string;

Expand All @@ -27,8 +26,8 @@ describe('ExampleContract', () => {
const wallet = await generateTestWallet(provider, [[500_000, baseAssetId]]);

// Deploy
const factory = new ContractFactory(bytecode, SampleAbi__factory.abi, wallet);
const { waitForResult } = await factory.deployContract();
const factory = new SampleFactory(wallet);
const { waitForResult } = await factory.deploy();
const { contract } = await waitForResult();

// Call
Expand All @@ -41,20 +40,20 @@ describe('ExampleContract', () => {
expect(value.toHex()).toEqual(toHex(1337));

// You can also make a call using the factory
const contractInstance = SampleAbi__factory.connect(contract.id, wallet);
const contractInstance = new Sample(contract.id, wallet);
const call2 = await contractInstance.functions.return_input(1337).call();

// Wait for result
const { value: v2 } = await call2.waitForResult();
expect(v2.toHex()).toBe(toHex(1337));
});

it('deployContract method', async () => {
it('deploy method', async () => {
const provider = await Provider.create(FUEL_NETWORK_URL);
const wallet = await generateTestWallet(provider, [[500_000, baseAssetId]]);

// Deploy
const deploy = await SampleAbi__factory.deployContract(bytecode, wallet);
const deploy = await SampleFactory.deploy(wallet);
const { contract } = await deploy.waitForResult();

// Call
Expand All @@ -72,10 +71,10 @@ describe('ExampleContract', () => {
const fundedWallet = await generateTestWallet(provider, [[500_000, baseAssetId]]);
const unfundedWallet = Wallet.generate({ provider });

const factory = new ContractFactory(bytecode, SampleAbi__factory.abi, fundedWallet);
const { waitForResult } = await factory.deployContract();
const { contract } = await waitForResult();
const contractInstance = SampleAbi__factory.connect(contract.id, unfundedWallet);
const deploy = await SampleFactory.deploy(fundedWallet);
const { contract } = await deploy.waitForResult();

const contractInstance = new Sample(contract.id, unfundedWallet);

const { error } = await safeExec(() =>
contractInstance.functions.return_input(1337).simulate()
Expand All @@ -89,24 +88,24 @@ describe('ExampleContract', () => {
const fundedWallet = await generateTestWallet(provider, [[500_000, baseAssetId]]);
const unfundedWallet = Wallet.generate({ provider });

const factory = new ContractFactory(bytecode, SampleAbi__factory.abi, fundedWallet);
const { waitForResult } = await factory.deployContract();
const { contract } = await waitForResult();
const contractInstance = SampleAbi__factory.connect(contract.id, unfundedWallet);
const deploy = await SampleFactory.deploy(fundedWallet);
const { contract } = await deploy.waitForResult();

const contractInstance = new Sample(contract.id, unfundedWallet);

await expect(contractInstance.functions.return_input(1337).dryRun()).resolves.not.toThrow();
});

it('should demo how to use generated files just fine', async () => {
const provider = await Provider.create(FUEL_NETWORK_URL);
const wallet = await generateTestWallet(provider, [[500_000, baseAssetId]]);
const { waitForResult } = await SampleAbi__factory.deployContract(bytecode, wallet);
const { waitForResult } = await SampleFactory.deploy(wallet);
const { contract: depoloyed } = await waitForResult();
const contractsIds = {
sample: depoloyed.id,
};

const contract = SampleAbi__factory.connect(contractsIds.sample, wallet);
const contract = new Sample(contractsIds.sample, wallet);

const { value } = await contract.functions.return_input(1337).dryRun();

Expand Down
7 changes: 4 additions & 3 deletions apps/demo-fuels/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -4,13 +4,14 @@
"description": "Simple demo using Fuels CLI",
"author": "Fuel Labs <[email protected]> (https://fuel.network/)",
"scripts": {
"pretest": "pnpm fuels build"
"build": "pnpm fuels build",
"pretest": "pnpm build",
"test": "cd ../.. && pnpm run test:filter apps/demo-fuels"
},
"license": "Apache-2.0",
"dependencies": {
"@fuel-ts/errors": "workspace:^",
"@fuel-ts/account": "workspace:^",
"fuels": "workspace:*"
},
"version": "0.0.0"
}
}
35 changes: 16 additions & 19 deletions apps/demo-fuels/src/index.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -5,11 +5,10 @@
* It ensures that built code is fully working.
*/

import { ContractFactory, Provider, toHex, Wallet, FUEL_NETWORK_URL } from 'fuels';
import { Provider, toHex, Wallet, FUEL_NETWORK_URL } from 'fuels';
import { generateTestWallet, safeExec } from 'fuels/test-utils';

import { SampleAbi__factory } from './sway-programs-api';
import bytecode from './sway-programs-api/contracts/SampleAbi.hex';
import { SampleFactory, Sample } from './sway-programs-api';

let baseAssetId: string;

Expand All @@ -27,8 +26,7 @@ describe('ExampleContract', () => {
const wallet = await generateTestWallet(provider, [[500_000, baseAssetId]]);

// Deploy
const factory = new ContractFactory(bytecode, SampleAbi__factory.abi, wallet);
const deploy = await factory.deployContract();
const deploy = await SampleFactory.deploy(wallet);
const { contract } = await deploy.waitForResult();

// Call
Expand All @@ -39,18 +37,18 @@ describe('ExampleContract', () => {
expect(value.toHex()).toEqual(toHex(1337));

// You can also make a call using the factory
const contractInstance = SampleAbi__factory.connect(contract.id, wallet);
const contractInstance = new Sample(contract.id, wallet);
const call2 = await contractInstance.functions.return_input(1337).call();
const { value: v2 } = await call2.waitForResult();
expect(v2.toHex()).toBe(toHex(1337));
});

it('deployContract method', async () => {
it('should deploy contract', async () => {
const provider = await Provider.create(FUEL_NETWORK_URL);
const wallet = await generateTestWallet(provider, [[500_000, baseAssetId]]);

// Deploy
const deploy = await SampleAbi__factory.deployContract(bytecode, wallet);
const deploy = await SampleFactory.deploy(wallet);
const { contract } = await deploy.waitForResult();

// Call
Expand All @@ -66,10 +64,10 @@ describe('ExampleContract', () => {
const fundedWallet = await generateTestWallet(provider, [[500_000, baseAssetId]]);
const unfundedWallet = Wallet.generate({ provider });

const factory = new ContractFactory(bytecode, SampleAbi__factory.abi, fundedWallet);
const { waitForResult } = await factory.deployContract();
const { contract } = await waitForResult();
const contractInstance = SampleAbi__factory.connect(contract.id, unfundedWallet);
const deploy = await SampleFactory.deploy(fundedWallet);
const { contract } = await deploy.waitForResult();

const contractInstance = new Sample(contract.id, unfundedWallet);

const { error } = await safeExec(() =>
contractInstance.functions.return_input(1337).simulate()
Expand All @@ -83,25 +81,24 @@ describe('ExampleContract', () => {
const fundedWallet = await generateTestWallet(provider, [[500_000, baseAssetId]]);
const unfundedWallet = Wallet.generate({ provider });

const factory = new ContractFactory(bytecode, SampleAbi__factory.abi, fundedWallet);
const { waitForResult } = await factory.deployContract();
const { waitForResult } = await SampleFactory.deploy(fundedWallet);
const { contract } = await waitForResult();
const contractInstance = SampleAbi__factory.connect(contract.id, unfundedWallet);
const contractInstance = new Sample(contract.id, unfundedWallet);

await expect(contractInstance.functions.return_input(1337).dryRun()).resolves.not.toThrow();
});

it('should demo how to use generated files just fine', async () => {
const provider = await Provider.create(FUEL_NETWORK_URL);
const wallet = await generateTestWallet(provider, [[500_000, baseAssetId]]);
const { waitForResult } = await SampleAbi__factory.deployContract(bytecode, wallet);
const { contract: depoloyed } = await waitForResult();
const deploy = await SampleFactory.deploy(wallet);
const { contract: depoloyed } = await deploy.waitForResult();
const contractsIds = {
sample: depoloyed.id,
};

// #region using-generated-files
// #context import { SampleAbi__factory } from './sway-programs-api';
// #context import { Sample } from './sway-programs-api';
// #context import contractsIds from './sway-programs-api/contract-ids.json';

// #context /**
Expand All @@ -110,7 +107,7 @@ describe('ExampleContract', () => {
// #context */

// #context const wallet = new Wallet.fromPrivateKey(process.env.PRIVATE_KEY);
const contract = SampleAbi__factory.connect(contractsIds.sample, wallet);
const contract = new Sample(contractsIds.sample, wallet);

const { value } = await contract.functions.return_input(1337).dryRun();

Expand Down
7 changes: 7 additions & 0 deletions apps/demo-fuels/tsconfig.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
{
"extends": "../../tsconfig.base.json",
"compilerOptions": {
"outDir": "./dist"
},
"include": ["src"]
}
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
[project]
authors = ["Fuel Labs <[email protected]>"]
entry = "main.sw"
license = "Apache-2.0"
name = "demo-contract"

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,6 @@
authors = ["Fuel Labs <[email protected]>"]
entry = "main.sw"
license = "Apache-2.0"
name = "script"
name = "demo-predicate"

[dependencies]
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,6 @@
authors = ["Fuel Labs <[email protected]>"]
entry = "main.sw"
license = "Apache-2.0"
name = "predicate"
name = "demo-script"

[dependencies]
15 changes: 7 additions & 8 deletions apps/demo-typegen/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -6,13 +6,13 @@
"scripts": {
"pretest": "run-s build:forc build:types",
"build:forc": "run-p forc:*",
"forc:contract": "pnpm fuels-forc build -p contract --release",
"forc:script": "pnpm fuels-forc build -p script --release",
"forc:predicate": "pnpm fuels-forc build -p predicate --release",
"forc:contract": "pnpm fuels-forc build -p demo-contract --release",
"forc:script": "pnpm fuels-forc build -p demo-script --release",
"forc:predicate": "pnpm fuels-forc build -p demo-predicate --release",
"build:types": "run-p types:*",
"types:contract": "pnpm fuels typegen -i contract/out/release/demo-contract-abi.json -o src/contract-types",
"types:script": "pnpm fuels typegen -i script/out/release/script-abi.json -o src/script-types --script",
"types:predicate": "pnpm fuels typegen -i predicate/out/release/predicate-abi.json -o src/predicate-types --predicate"
"types:contract": "pnpm fuels typegen -i demo-contract/out/release/demo-contract-abi.json -o src/contract-types",
"types:script": "pnpm fuels typegen -i demo-script/out/release/demo-script-abi.json -o src/script-types --script",
"types:predicate": "pnpm fuels typegen -i demo-predicate/out/release/demo-predicate-abi.json -o src/predicate-types --predicate"
},
"license": "Apache-2.0",
"dependencies": {
Expand All @@ -22,6 +22,5 @@
"@fuel-ts/account": "workspace:*",
"@fuel-ts/errors": "workspace:*",
"@internal/forc": "workspace:*"
},
"version": "0.0.0"
}
}
Loading
Loading