meshjs 1.2.0-beta.4 → 1.5.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (80) hide show
  1. package/README.md +14 -25
  2. package/bin/meshjs +2 -0
  3. package/package.json +26 -55
  4. package/src/actions/create.ts +96 -0
  5. package/src/actions/index.ts +1 -0
  6. package/src/helpers/index.ts +3 -0
  7. package/src/helpers/resolvePkgManager.ts +24 -0
  8. package/src/helpers/setProjectName.ts +15 -0
  9. package/src/helpers/tryGitInit.ts +37 -0
  10. package/src/index.ts +80 -0
  11. package/src/utils/index.ts +1 -0
  12. package/src/utils/logger.ts +13 -0
  13. package/tsconfig.json +109 -0
  14. package/dist/common/constants.d.ts +0 -27
  15. package/dist/common/contracts/fetcher.d.ts +0 -8
  16. package/dist/common/contracts/index.d.ts +0 -5
  17. package/dist/common/contracts/initiator.d.ts +0 -8
  18. package/dist/common/contracts/signer.d.ts +0 -7
  19. package/dist/common/contracts/submitter.d.ts +0 -3
  20. package/dist/common/contracts/uploader.d.ts +0 -3
  21. package/dist/common/decorators.d.ts +0 -19
  22. package/dist/common/helpers/index.d.ts +0 -1
  23. package/dist/common/helpers/mergeSignatures.d.ts +0 -3
  24. package/dist/common/types/Account.d.ts +0 -5
  25. package/dist/common/types/AccountInfo.d.ts +0 -7
  26. package/dist/common/types/Action.d.ts +0 -12
  27. package/dist/common/types/Asset.d.ts +0 -6
  28. package/dist/common/types/AssetExtended.d.ts +0 -8
  29. package/dist/common/types/AssetMetadata.d.ts +0 -24
  30. package/dist/common/types/Data.d.ts +0 -4
  31. package/dist/common/types/DataSignature.d.ts +0 -4
  32. package/dist/common/types/Era.d.ts +0 -1
  33. package/dist/common/types/Mint.d.ts +0 -10
  34. package/dist/common/types/NativeScript.d.ts +0 -14
  35. package/dist/common/types/Network.d.ts +0 -1
  36. package/dist/common/types/PlutusScript.d.ts +0 -6
  37. package/dist/common/types/PoolParams.d.ts +0 -16
  38. package/dist/common/types/Protocol.d.ts +0 -22
  39. package/dist/common/types/Recipient.d.ts +0 -11
  40. package/dist/common/types/Relay.d.ts +0 -13
  41. package/dist/common/types/UTxO.d.ts +0 -14
  42. package/dist/common/types/Wallet.d.ts +0 -5
  43. package/dist/common/types/index.d.ts +0 -19
  44. package/dist/common/utils/builder.d.ts +0 -17
  45. package/dist/common/utils/converter.d.ts +0 -26
  46. package/dist/common/utils/deserializer.d.ts +0 -17
  47. package/dist/common/utils/index.d.ts +0 -5
  48. package/dist/common/utils/parser.d.ts +0 -1
  49. package/dist/common/utils/resolver.d.ts +0 -17
  50. package/dist/core/CIP14.d.ts +0 -2
  51. package/dist/core/CIP1852.d.ts +0 -4
  52. package/dist/core/CIP1853.d.ts +0 -1
  53. package/dist/core/CIP1855.d.ts +0 -1
  54. package/dist/core/CIP2.d.ts +0 -3
  55. package/dist/core/CIP25.d.ts +0 -19
  56. package/dist/core/CIP8.d.ts +0 -13
  57. package/dist/core/CSL.d.ts +0 -144
  58. package/dist/core/index.d.ts +0 -8
  59. package/dist/index.d.ts +0 -8
  60. package/dist/meshjs.cjs +0 -1
  61. package/dist/meshjs.js +0 -2188
  62. package/dist/providers/blockfrost.provider.d.ts +0 -14
  63. package/dist/providers/index.d.ts +0 -4
  64. package/dist/providers/infura.provider.d.ts +0 -12
  65. package/dist/providers/koios.provider.d.ts +0 -12
  66. package/dist/providers/tango.provider.d.ts +0 -12
  67. package/dist/scripts/forge.script.d.ts +0 -8
  68. package/dist/scripts/index.d.ts +0 -1
  69. package/dist/transaction/index.d.ts +0 -1
  70. package/dist/transaction/transaction.service.d.ts +0 -61
  71. package/dist/transaction/transaction.service.spec.d.ts +0 -1
  72. package/dist/wallet/app.service.d.ts +0 -34
  73. package/dist/wallet/app.service.spec.d.ts +0 -1
  74. package/dist/wallet/browser.service.d.ts +0 -58
  75. package/dist/wallet/browser.service.spec.d.ts +0 -1
  76. package/dist/wallet/embedded.service.d.ts +0 -20
  77. package/dist/wallet/embedded.service.spec.d.ts +0 -1
  78. package/dist/wallet/index.d.ts +0 -4
  79. package/dist/wallet/mina.service.d.ts +0 -11
  80. package/dist/wallet/mina.service.spec.d.ts +0 -1
@@ -1,14 +0,0 @@
1
- import { IFetcher, ISubmitter } from '@mesh/common/contracts';
2
- import type { AccountInfo, AssetMetadata, Protocol, UTxO } from '@mesh/common/types';
3
- export declare class BlockfrostProvider implements IFetcher, ISubmitter {
4
- private readonly _axiosInstance;
5
- constructor(projectId: string, version?: number);
6
- fetchAccountInfo(address: string): Promise<AccountInfo>;
7
- fetchAddressUTxOs(address: string, asset?: string): Promise<UTxO[]>;
8
- fetchAssetMetadata(_asset: string): Promise<AssetMetadata>;
9
- fetchHandleAddress(_handle: string): Promise<string>;
10
- fetchProtocolParameters(epoch?: number): Promise<Protocol>;
11
- submitTx(tx: string): Promise<string>;
12
- private fetchPlutusScriptCBOR;
13
- private fetchNativeScriptJSON;
14
- }
@@ -1,4 +0,0 @@
1
- export * from './blockfrost.provider';
2
- export * from './infura.provider';
3
- export * from './koios.provider';
4
- export * from './tango.provider';
@@ -1,12 +0,0 @@
1
- import { IUploader } from '@mesh/common/contracts';
2
- export declare class InfuraProvider implements IUploader {
3
- private _axiosInstance;
4
- constructor(projectId: string, projectSecret: string, options: Partial<CreateInfuraProviderOptions>);
5
- uploadContent(content: FormData, recursive?: boolean): Promise<string>;
6
- }
7
- declare type CreateInfuraProviderOptions = {
8
- host: string;
9
- port: number;
10
- version: number;
11
- };
12
- export {};
@@ -1,12 +0,0 @@
1
- import { IFetcher, ISubmitter } from '@mesh/common/contracts';
2
- import type { AccountInfo, AssetMetadata, Protocol, UTxO } from '@mesh/common/types';
3
- export declare class KoiosProvider implements IFetcher, ISubmitter {
4
- private readonly _axiosInstance;
5
- constructor(network: 'api' | 'preview' | 'preprod' | 'guild', version?: number);
6
- fetchAccountInfo(address: string): Promise<AccountInfo>;
7
- fetchAddressUTxOs(address: string, asset?: string): Promise<UTxO[]>;
8
- fetchAssetMetadata(_asset: string): Promise<AssetMetadata>;
9
- fetchHandleAddress(_handle: string): Promise<string>;
10
- fetchProtocolParameters(epoch: number): Promise<Protocol>;
11
- submitTx(tx: string): Promise<string>;
12
- }
@@ -1,12 +0,0 @@
1
- import { IFetcher, ISubmitter } from '@mesh/common/contracts';
2
- import { AccountInfo, UTxO, AssetMetadata, Protocol } from '@mesh/common/types';
3
- export declare class TangoProvider implements IFetcher, ISubmitter {
4
- private readonly _axiosInstance;
5
- constructor(network: 'mainnet' | 'testnet', appId: string, appKey: string, version?: number);
6
- fetchAccountInfo(address: string): Promise<AccountInfo>;
7
- fetchAddressUTxOs(address: string, asset?: string): Promise<UTxO[]>;
8
- fetchAssetMetadata(_asset: string): Promise<AssetMetadata>;
9
- fetchHandleAddress(_handle: string): Promise<string>;
10
- fetchProtocolParameters(epoch: number): Promise<Protocol>;
11
- submitTx(tx: string): Promise<string>;
12
- }
@@ -1,8 +0,0 @@
1
- import type { NativeScript } from '@mesh/common/types';
2
- export declare class ForgeScript {
3
- static withOneSignature(address: string): string;
4
- static withAtLeastNSignatures(addresses: string[], minimumRequired: number): string;
5
- static withAnySignature(addresses: string[]): string;
6
- static withAllSignatures(addresses: string[]): string;
7
- static fromNativeScript(script: NativeScript): string;
8
- }
@@ -1 +0,0 @@
1
- export * from './forge.script';
@@ -1 +0,0 @@
1
- export * from './transaction.service';
@@ -1,61 +0,0 @@
1
- import { IInitiator } from '@mesh/common/contracts';
2
- import type { Action, Asset, Data, Era, Mint, Protocol, PlutusScript, Recipient, UTxO, PoolParams } from '@mesh/common/types';
3
- export declare class Transaction {
4
- private _changeAddress?;
5
- private _recipients;
6
- private _totalBurns;
7
- private _totalMints;
8
- private readonly _era?;
9
- private readonly _initiator?;
10
- private readonly _protocolParameters;
11
- private readonly _txBuilder;
12
- private readonly _txCertificates;
13
- private readonly _txInputsBuilder;
14
- private readonly _txWithdrawals;
15
- constructor(options?: Partial<CreateTxOptions>);
16
- static maskMetadata(cborTx: string): string;
17
- static readMetadata(cborTx: string): string;
18
- static writeMetadata(cborTx: string, cborTxMetadata: string): string;
19
- get size(): number;
20
- build(): Promise<string>;
21
- burnAsset(forgeScript: string, asset: Asset): Transaction;
22
- delegateStake(rewardAddress: string, poolId: string): Transaction;
23
- deregisterStake(rewardAddress: string): Transaction;
24
- mintAsset(forgeScript: string, mint: Mint): Transaction;
25
- redeemValue(options: {
26
- value: UTxO | Mint;
27
- script: PlutusScript | UTxO;
28
- datum: Data | UTxO;
29
- redeemer?: Action;
30
- }): Transaction;
31
- registerStake(rewardAddress: string): Transaction;
32
- registerPool(params: PoolParams): Transaction;
33
- retirePool(poolId: string, epochNo: number): Transaction;
34
- sendAssets(recipient: Recipient, assets: Asset[]): Transaction;
35
- sendLovelace(recipient: Recipient, lovelace: string): Transaction;
36
- sendValue(recipient: Recipient, value: UTxO): Transaction;
37
- setChangeAddress(changeAddress: string): Transaction;
38
- setCollateral(collateral: UTxO[]): Transaction;
39
- setMetadata(key: number, value: unknown): Transaction;
40
- setRequiredSigners(addresses: string[]): Transaction;
41
- setTimeToStart(slot: string): Transaction;
42
- setTimeToExpire(slot: string): Transaction;
43
- setTxInputs(inputs: UTxO[]): Transaction;
44
- withdrawRewards(rewardAddress: string, lovelace: string): Transaction;
45
- private addBurnInputsIfNeeded;
46
- private addChangeAddress;
47
- private addCollateralIfNeeded;
48
- private addRequiredSignersIfNeeded;
49
- private addTxInputsAsNeeded;
50
- private forgeAssetsIfNeeded;
51
- private filterAvailableUTxOs;
52
- private selectLovelaceUTxOs;
53
- private addMintOutputs;
54
- private notVisited;
55
- }
56
- declare type CreateTxOptions = {
57
- initiator: IInitiator;
58
- parameters: Protocol;
59
- era: Era;
60
- };
61
- export {};
@@ -1 +0,0 @@
1
- export {};
@@ -1,34 +0,0 @@
1
- import { IFetcher, IInitiator, ISigner, ISubmitter } from '@mesh/common/contracts';
2
- import type { Address, TransactionUnspentOutput } from '@mesh/core';
3
- import type { DataSignature } from '@mesh/common/types';
4
- export declare type CreateAppWalletOptions = {
5
- networkId: number;
6
- fetcher: IFetcher;
7
- submitter: ISubmitter;
8
- key: {
9
- type: 'root';
10
- bech32: string;
11
- } | {
12
- type: 'cli';
13
- payment: string;
14
- stake?: string;
15
- } | {
16
- type: 'mnemonic';
17
- words: string[];
18
- };
19
- };
20
- export declare class AppWallet implements IInitiator, ISigner, ISubmitter {
21
- private readonly _fetcher;
22
- private readonly _submitter;
23
- private readonly _wallet;
24
- constructor(options: CreateAppWalletOptions);
25
- getPaymentAddress(accountIndex?: number): string;
26
- getRewardAddress(accountIndex?: number): string;
27
- getUsedAddress(accountIndex?: number): Address;
28
- getUsedCollateral(_limit?: number): Promise<TransactionUnspentOutput[]>;
29
- getUsedUTxOs(accountIndex?: number): Promise<TransactionUnspentOutput[]>;
30
- signData(address: string, payload: string, accountIndex?: number): DataSignature;
31
- signTx(unsignedTx: string, partialSign?: boolean, accountIndex?: number): Promise<string>;
32
- submitTx(tx: string): Promise<string>;
33
- static brew(strength?: number): string[];
34
- }
@@ -1 +0,0 @@
1
- export {};
@@ -1,58 +0,0 @@
1
- import { IInitiator, ISigner, ISubmitter } from '@mesh/common/contracts';
2
- import type { Address, TransactionUnspentOutput } from '@mesh/core';
3
- import type { Asset, AssetExtended, DataSignature, UTxO, Wallet } from '@mesh/common/types';
4
- export declare class BrowserWallet implements IInitiator, ISigner, ISubmitter {
5
- private readonly _walletInstance;
6
- private constructor();
7
- static getInstalledWallets(): Wallet[];
8
- static enable(walletName: string): Promise<BrowserWallet>;
9
- getBalance(): Promise<Asset[]>;
10
- getChangeAddress(): Promise<string>;
11
- getCollateral(limit?: number): Promise<UTxO[]>;
12
- getNetworkId(): Promise<number>;
13
- getRewardAddresses(): Promise<string[]>;
14
- getUnusedAddresses(): Promise<string[]>;
15
- getUsedAddresses(): Promise<string[]>;
16
- getUtxos(): Promise<UTxO[]>;
17
- signData(address: string, payload: string): Promise<DataSignature>;
18
- signTx(unsignedTx: string, partialSign?: boolean): Promise<string>;
19
- submitTx(tx: string): Promise<string>;
20
- getUsedAddress(): Promise<Address>;
21
- getUsedCollateral(limit?: number): Promise<TransactionUnspentOutput[]>;
22
- getUsedUTxOs(): Promise<TransactionUnspentOutput[]>;
23
- getAssets(): Promise<AssetExtended[]>;
24
- getLovelace(): Promise<string>;
25
- getPolicyIdAssets(policyId: string): Promise<AssetExtended[]>;
26
- getPolicyIds(): Promise<string[]>;
27
- private static resolveInstance;
28
- }
29
- declare global {
30
- interface Window {
31
- cardano: Cardano;
32
- }
33
- }
34
- declare type Cardano = {
35
- [key: string]: {
36
- name: string;
37
- icon: string;
38
- apiVersion: string;
39
- enable: () => Promise<WalletInstance>;
40
- };
41
- };
42
- declare type WalletInstance = {
43
- experimental: ExperimentalFeatures;
44
- getBalance(): Promise<string>;
45
- getChangeAddress(): Promise<string>;
46
- getNetworkId(): Promise<number>;
47
- getRewardAddresses(): Promise<string[]>;
48
- getUnusedAddresses(): Promise<string[]>;
49
- getUsedAddresses(): Promise<string[]>;
50
- getUtxos(): Promise<string[] | undefined>;
51
- signData(address: string, payload: string): Promise<DataSignature>;
52
- signTx(tx: string, partialSign: boolean): Promise<string>;
53
- submitTx(tx: string): Promise<string>;
54
- };
55
- declare type ExperimentalFeatures = {
56
- getCollateral(): Promise<string[] | undefined>;
57
- };
58
- export {};
@@ -1 +0,0 @@
1
- export {};
@@ -1,20 +0,0 @@
1
- import type { Vkeywitnesses } from '@mesh/core';
2
- import type { Account, DataSignature, UTxO } from '@mesh/common/types';
3
- export declare class EmbeddedWallet {
4
- private readonly _networkId;
5
- private readonly _encryptedSecret;
6
- constructor(_networkId: number, _encryptedSecret: string | [string, string]);
7
- getAccount(accountIndex: number, password: string): Account;
8
- signData(accountIndex: number, password: string, address: string, payload: string): DataSignature;
9
- signTx(accountIndex: number, password: string, utxos: UTxO[], unsignedTx: string, partialSign: boolean): Vkeywitnesses;
10
- static encryptMnemonic(words: string[], password: string): string;
11
- static encryptPrivateKey(bech32: string, password: string): string;
12
- static encryptSigningKeys(cborPaymentKey: string, cborStakeKey: string, password: string): [string, string];
13
- static generateMnemonic(strength?: number): string[];
14
- private accountContext;
15
- private static decrypt;
16
- private static encrypt;
17
- private static resolveAddress;
18
- private static resolveKeys;
19
- private static resolveSigners;
20
- }
@@ -1 +0,0 @@
1
- export {};
@@ -1,4 +0,0 @@
1
- export * from './app.service';
2
- export * from './browser.service';
3
- export * from './embedded.service';
4
- export * from './mina.service';
@@ -1,11 +0,0 @@
1
- import type { UTxO } from '@mesh/common/types';
2
- export declare class MinaWallet {
3
- static getAxiosInstance(): import("axios").AxiosInstance;
4
- static getAppId(): string;
5
- static openMinaFrontend(url: string): Promise<unknown>;
6
- static get(route: string, params?: {}): Promise<any>;
7
- static enable(): Promise<unknown>;
8
- static getChangeAddress(walletId?: undefined, accountIndex?: undefined): Promise<string | undefined>;
9
- static getUtxos(walletId?: undefined, accountIndex?: undefined): Promise<UTxO[]>;
10
- static signTx(unsignedTx: string, partialSign?: boolean): Promise<string | undefined>;
11
- }
@@ -1 +0,0 @@
1
- export {};