@algorandfoundation/algokit-utils 1.0.0-beta.9 → 1.1.0
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.
- package/README.md +38 -0
- package/account.d.ts +41 -36
- package/account.d.ts.map +1 -1
- package/account.js +59 -44
- package/account.js.map +1 -1
- package/amount.d.ts +20 -0
- package/amount.d.ts.map +1 -0
- package/amount.js +36 -0
- package/amount.js.map +1 -0
- package/app-client.d.ts +14 -0
- package/app-client.d.ts.map +1 -0
- package/app-client.js +19 -0
- package/app-client.js.map +1 -0
- package/app-deploy.d.ts +95 -0
- package/app-deploy.d.ts.map +1 -0
- package/{deploy-app.js → app-deploy.js} +129 -119
- package/app-deploy.js.map +1 -0
- package/app.d.ts +112 -148
- package/app.d.ts.map +1 -1
- package/app.js +460 -143
- package/app.js.map +1 -1
- package/index.d.ts +6 -4
- package/index.d.ts.map +1 -1
- package/index.js +7 -4
- package/index.js.map +1 -1
- package/indexer-lookup.d.ts +11 -4
- package/indexer-lookup.d.ts.map +1 -1
- package/indexer-lookup.js +19 -9
- package/indexer-lookup.js.map +1 -1
- package/localnet.d.ts +10 -10
- package/localnet.d.ts.map +1 -1
- package/localnet.js +16 -16
- package/localnet.js.map +1 -1
- package/network-client.d.ts +15 -24
- package/network-client.d.ts.map +1 -1
- package/network-client.js +16 -16
- package/network-client.js.map +1 -1
- package/package.json +2 -2
- package/testing/account.d.ts +14 -0
- package/testing/account.d.ts.map +1 -0
- package/testing/account.js +31 -0
- package/testing/account.js.map +1 -0
- package/testing/fixtures/algokit-log-capture-fixture.d.ts +19 -0
- package/testing/fixtures/algokit-log-capture-fixture.d.ts.map +1 -0
- package/testing/fixtures/algokit-log-capture-fixture.js +43 -0
- package/testing/fixtures/algokit-log-capture-fixture.js.map +1 -0
- package/testing/fixtures/algorand-fixture.d.ts +24 -0
- package/testing/fixtures/algorand-fixture.d.ts.map +1 -0
- package/testing/fixtures/algorand-fixture.js +60 -0
- package/testing/fixtures/algorand-fixture.js.map +1 -0
- package/testing/fixtures/index.d.ts +3 -0
- package/testing/fixtures/index.d.ts.map +1 -0
- package/testing/fixtures/index.js +19 -0
- package/testing/fixtures/index.js.map +1 -0
- package/testing/index.d.ts +6 -0
- package/testing/index.d.ts.map +1 -0
- package/testing/index.js +22 -0
- package/testing/index.js.map +1 -0
- package/testing/indexer.d.ts +12 -0
- package/testing/indexer.d.ts.map +1 -0
- package/testing/indexer.js +40 -0
- package/testing/indexer.js.map +1 -0
- package/testing/test-logger.d.ts +41 -0
- package/testing/test-logger.d.ts.map +1 -0
- package/testing/test-logger.js +71 -0
- package/testing/test-logger.js.map +1 -0
- package/testing/transaction-logger.d.ts +29 -0
- package/testing/transaction-logger.d.ts.map +1 -0
- package/testing/transaction-logger.js +71 -0
- package/testing/transaction-logger.js.map +1 -0
- package/transaction.d.ts +55 -91
- package/transaction.d.ts.map +1 -1
- package/transaction.js +213 -155
- package/transaction.js.map +1 -1
- package/transfer.d.ts +14 -16
- package/transfer.d.ts.map +1 -1
- package/transfer.js +38 -4
- package/transfer.js.map +1 -1
- package/types/account.d.ts +55 -0
- package/types/account.d.ts.map +1 -0
- package/types/account.js +91 -0
- package/types/account.js.map +1 -0
- package/types/algo-http-client-with-retry.d.ts.map +1 -0
- package/{algo-http-client-with-retry.js → types/algo-http-client-with-retry.js} +3 -3
- package/types/algo-http-client-with-retry.js.map +1 -0
- package/types/algod.d.ts +28 -15
- package/types/algod.d.ts.map +1 -1
- package/{algo-amount.d.ts → types/amount.d.ts} +9 -3
- package/types/amount.d.ts.map +1 -0
- package/{algo-amount.js → types/amount.js} +13 -3
- package/types/amount.js.map +1 -0
- package/types/app-client.d.ts +282 -0
- package/types/app-client.d.ts.map +1 -0
- package/types/app-client.js +529 -0
- package/types/app-client.js.map +1 -0
- package/types/app-spec.d.ts +141 -0
- package/types/app-spec.d.ts.map +1 -0
- package/types/{appspec.js → app-spec.js} +5 -7
- package/types/app-spec.js.map +1 -0
- package/types/app.d.ts +285 -0
- package/types/app.d.ts.map +1 -0
- package/types/app.js +32 -0
- package/types/app.js.map +1 -0
- package/types/config.d.ts +32 -0
- package/types/config.d.ts.map +1 -0
- package/types/config.js +53 -0
- package/types/config.js.map +1 -0
- package/types/indexer.d.ts +368 -58
- package/types/indexer.d.ts.map +1 -1
- package/types/indexer.js +9 -0
- package/types/indexer.js.map +1 -1
- package/{config.d.ts → types/logging.d.ts} +2 -16
- package/types/logging.d.ts.map +1 -0
- package/{config.js → types/logging.js} +5 -24
- package/types/logging.js.map +1 -0
- package/types/logic-error.d.ts +37 -0
- package/types/logic-error.d.ts.map +1 -0
- package/types/logic-error.js +50 -0
- package/types/logic-error.js.map +1 -0
- package/types/network-client.d.ts +11 -0
- package/types/network-client.d.ts.map +1 -0
- package/types/network-client.js +3 -0
- package/types/network-client.js.map +1 -0
- package/types/testing.d.ts +89 -0
- package/types/testing.d.ts.map +1 -0
- package/types/testing.js +3 -0
- package/types/testing.js.map +1 -0
- package/types/transaction.d.ts +112 -0
- package/types/transaction.d.ts.map +1 -0
- package/types/transaction.js +3 -0
- package/types/transaction.js.map +1 -0
- package/types/transfer.d.ts +32 -0
- package/types/transfer.d.ts.map +1 -0
- package/types/transfer.js +3 -0
- package/types/transfer.js.map +1 -0
- package/types/urlTokenBaseHTTPClient.d.ts.map +1 -0
- package/types/urlTokenBaseHTTPClient.js.map +1 -0
- package/algo-amount.d.ts.map +0 -1
- package/algo-amount.js.map +0 -1
- package/algo-http-client-with-retry.d.ts.map +0 -1
- package/algo-http-client-with-retry.js.map +0 -1
- package/application-client.d.ts +0 -113
- package/application-client.d.ts.map +0 -1
- package/application-client.js +0 -258
- package/application-client.js.map +0 -1
- package/config.d.ts.map +0 -1
- package/config.js.map +0 -1
- package/deploy-app.d.ts +0 -164
- package/deploy-app.d.ts.map +0 -1
- package/deploy-app.js.map +0 -1
- package/types/appspec.d.ts +0 -78
- package/types/appspec.d.ts.map +0 -1
- package/types/appspec.js.map +0 -1
- package/urlTokenBaseHTTPClient.d.ts.map +0 -1
- package/urlTokenBaseHTTPClient.js.map +0 -1
- /package/{algo-http-client-with-retry.d.ts → types/algo-http-client-with-retry.d.ts} +0 -0
- /package/{urlTokenBaseHTTPClient.d.ts → types/urlTokenBaseHTTPClient.d.ts} +0 -0
- /package/{urlTokenBaseHTTPClient.js → types/urlTokenBaseHTTPClient.js} +0 -0
package/application-client.d.ts
DELETED
|
@@ -1,113 +0,0 @@
|
|
|
1
|
-
import { ABIArgument, ABIMethodParams, Algodv2, Indexer, SuggestedParams } from 'algosdk';
|
|
2
|
-
import { AppCallArgs, AppReference, RawAppCallArgs } from './app';
|
|
3
|
-
import { AppLookup, AppMetadata, OnSchemaBreak, OnUpdate, TealTemplateParameters } from './deploy-app';
|
|
4
|
-
import { SendTransactionFrom, SendTransactionParams, TransactionNote } from './transaction';
|
|
5
|
-
import { AppSpec } from './types/appspec';
|
|
6
|
-
export declare class ApplicationClient {
|
|
7
|
-
private algod;
|
|
8
|
-
private indexer;
|
|
9
|
-
private appSpec;
|
|
10
|
-
private sender;
|
|
11
|
-
private params;
|
|
12
|
-
private existingDeployments;
|
|
13
|
-
private _appIndex;
|
|
14
|
-
private _appAddress;
|
|
15
|
-
private _creator;
|
|
16
|
-
constructor(appDetails: {
|
|
17
|
-
/** The ARC-0032 application spec as either:
|
|
18
|
-
* * Parsed JSON @see {AppSpec}
|
|
19
|
-
* * Raw JSON string
|
|
20
|
-
*/
|
|
21
|
-
app: AppSpec | string;
|
|
22
|
-
/** Default sender to use for transactions issued by this application client */
|
|
23
|
-
sender?: SendTransactionFrom;
|
|
24
|
-
/** Default suggested params object to use */
|
|
25
|
-
params?: SuggestedParams;
|
|
26
|
-
} & ({
|
|
27
|
-
/** The index of an existing app to call using this client */
|
|
28
|
-
index: number;
|
|
29
|
-
} | {
|
|
30
|
-
/** The address of the app creator account */
|
|
31
|
-
creatorAddress: string;
|
|
32
|
-
/** Optional cached value of the existing apps for the given creator */
|
|
33
|
-
existingDeployments?: AppLookup;
|
|
34
|
-
}), algod: Algodv2, indexer: Indexer);
|
|
35
|
-
/**
|
|
36
|
-
* Idempotently deploy (create, update/delete if changed) an app against the given name via the given creator account, including deploy-time template placeholder substitutions.
|
|
37
|
-
*
|
|
38
|
-
* To understand the architecture decisions behind this functionality please @see https://github.com/algorandfoundation/algokit-cli/blob/main/docs/architecture-decisions/2023-01-12_smart-contract-deployment.md
|
|
39
|
-
*
|
|
40
|
-
* **Note:** if there is a breaking state schema change to an existing app (and `onSchemaBreak` is set to `'replace'`) the existing app will be deleted and re-created.
|
|
41
|
-
*
|
|
42
|
-
* **Note:** if there is an update (different TEAL code) to an existing app (and `onUpdate` is set to `'replace'`) the existing app will be deleted and re-created.
|
|
43
|
-
* @param deploy Deployment details
|
|
44
|
-
* @returns The metadata and transaction result(s) of the deployment, or just the metadata if it didn't need to issue transactions
|
|
45
|
-
*/
|
|
46
|
-
deploy(deploy: {
|
|
47
|
-
/** The version of the contract, e.g. "1.0" */
|
|
48
|
-
version: string;
|
|
49
|
-
/** The optional sender to send the transaction from, will use the application client's default sender by default if specified */
|
|
50
|
-
sender?: SendTransactionFrom;
|
|
51
|
-
/** Whether or not to allow updates in the contract using the deploy-time updatability control if present in your contract.
|
|
52
|
-
* If this is not specified then it will automatically be determined based on the AppSpec definition
|
|
53
|
-
**/
|
|
54
|
-
allowUpdate?: boolean;
|
|
55
|
-
/** Whether or not to allow deletes in the contract using the deploy-time deletability control if present in your contract.
|
|
56
|
-
* If this is not specified then it will automatically be determined based on the AppSpec definition
|
|
57
|
-
**/
|
|
58
|
-
allowDelete?: boolean;
|
|
59
|
-
/** Parameters to control transaction sending */
|
|
60
|
-
sendParams?: Omit<SendTransactionParams, 'args' | 'skipSending' | 'skipWaiting'>;
|
|
61
|
-
/** Any deploy-time parameters to replace in the TEAL code */
|
|
62
|
-
deployTimeParameters?: TealTemplateParameters;
|
|
63
|
-
/** What action to perform if a schema break is detected */
|
|
64
|
-
onSchemaBreak?: 'replace' | 'fail' | OnSchemaBreak;
|
|
65
|
-
/** What action to perform if a TEAL update is detected */
|
|
66
|
-
onUpdate?: 'update' | 'replace' | 'fail' | OnUpdate;
|
|
67
|
-
/** Any args to pass to any create transaction that is issued as part of deployment */
|
|
68
|
-
createArgs?: AppCallArgs;
|
|
69
|
-
/** Any args to pass to any update transaction that is issued as part of deployment */
|
|
70
|
-
updateArgs?: AppCallArgs;
|
|
71
|
-
/** Any args to pass to any delete transaction that is issued as part of deployment */
|
|
72
|
-
deleteArgs?: AppCallArgs;
|
|
73
|
-
}): Promise<(import("./transaction").SendTransactionResult & AppMetadata & {
|
|
74
|
-
operationPerformed: "update" | "create";
|
|
75
|
-
}) | (import("./transaction").SendTransactionResult & AppMetadata & {
|
|
76
|
-
deleteResult?: import("./transaction").SendTransactionResult | undefined;
|
|
77
|
-
operationPerformed: "replace";
|
|
78
|
-
}) | (AppMetadata & {
|
|
79
|
-
operationPerformed: "none";
|
|
80
|
-
})>;
|
|
81
|
-
create(create?: {
|
|
82
|
-
sender?: SendTransactionFrom;
|
|
83
|
-
args?: AppCallArgs;
|
|
84
|
-
note?: TransactionNote;
|
|
85
|
-
sendParams?: SendTransactionParams;
|
|
86
|
-
deployTimeParameters?: TealTemplateParameters;
|
|
87
|
-
}): Promise<import("./app").AppCallTransactionResult & AppReference>;
|
|
88
|
-
update(update?: {
|
|
89
|
-
sender?: SendTransactionFrom;
|
|
90
|
-
args?: AppCallArgs;
|
|
91
|
-
note?: TransactionNote;
|
|
92
|
-
sendParams?: SendTransactionParams;
|
|
93
|
-
deployTimeParameters?: TealTemplateParameters;
|
|
94
|
-
}): Promise<import("./app").AppCallTransactionResult>;
|
|
95
|
-
call(call: {
|
|
96
|
-
callType: 'optin' | 'closeout' | 'clearstate' | 'delete' | 'normal';
|
|
97
|
-
sender?: SendTransactionFrom;
|
|
98
|
-
note?: TransactionNote;
|
|
99
|
-
sendParams?: SendTransactionParams;
|
|
100
|
-
} & ({
|
|
101
|
-
/** If calling an ABI method then either the name of the method, or the ABI signature, if undefined then a bare call will be made */
|
|
102
|
-
method: string;
|
|
103
|
-
/** The ABI args to pass in */
|
|
104
|
-
methodArgs: ABIArgument[];
|
|
105
|
-
/** The optional lease for the transaction */
|
|
106
|
-
lease?: string | Uint8Array;
|
|
107
|
-
} | {
|
|
108
|
-
args: RawAppCallArgs;
|
|
109
|
-
})): Promise<import("./app").AppCallTransactionResult>;
|
|
110
|
-
getABIMethod(method: string): ABIMethodParams | undefined;
|
|
111
|
-
private loadAppReference;
|
|
112
|
-
}
|
|
113
|
-
//# sourceMappingURL=application-client.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"application-client.d.ts","sourceRoot":"","sources":["../src/application-client.ts"],"names":[],"mappings":"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"}
|
package/application-client.js
DELETED
|
@@ -1,258 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
-
if (k2 === undefined) k2 = k;
|
|
4
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
-
}) : function(o, v) {
|
|
16
|
-
o["default"] = v;
|
|
17
|
-
});
|
|
18
|
-
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
-
if (mod && mod.__esModule) return mod;
|
|
20
|
-
var result = {};
|
|
21
|
-
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
-
__setModuleDefault(result, mod);
|
|
23
|
-
return result;
|
|
24
|
-
};
|
|
25
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
|
-
exports.ApplicationClient = void 0;
|
|
27
|
-
const algosdk_1 = __importStar(require("algosdk"));
|
|
28
|
-
const buffer_1 = require("buffer");
|
|
29
|
-
const app_1 = require("./app");
|
|
30
|
-
const deploy_app_1 = require("./deploy-app");
|
|
31
|
-
const transaction_1 = require("./transaction");
|
|
32
|
-
const appspec_1 = require("./types/appspec");
|
|
33
|
-
class ApplicationClient {
|
|
34
|
-
constructor(appDetails, algod, indexer) {
|
|
35
|
-
const { app, sender, params, ...appIdentifier } = appDetails;
|
|
36
|
-
this.algod = algod;
|
|
37
|
-
this.indexer = indexer;
|
|
38
|
-
this.appSpec = typeof app == 'string' ? JSON.parse(app) : app;
|
|
39
|
-
if ('creatorAddress' in appIdentifier) {
|
|
40
|
-
this._creator = appIdentifier.creatorAddress;
|
|
41
|
-
if (appIdentifier.existingDeployments && appIdentifier.existingDeployments.creator !== this._creator) {
|
|
42
|
-
throw new Error(`Attempt to create application client with invalid existingDeployments against a different creator (${appIdentifier.existingDeployments.creator}) instead of expected creator ${this._creator}`);
|
|
43
|
-
}
|
|
44
|
-
this.existingDeployments = appIdentifier.existingDeployments;
|
|
45
|
-
this._appIndex = 0;
|
|
46
|
-
}
|
|
47
|
-
else {
|
|
48
|
-
if (appIdentifier.index < 0) {
|
|
49
|
-
throw new Error(`Attempt to create application client with invalid app index of ${appIdentifier.index}`);
|
|
50
|
-
}
|
|
51
|
-
this._appIndex = appIdentifier.index;
|
|
52
|
-
}
|
|
53
|
-
this._appAddress = algosdk_1.default.getApplicationAddress(this._appIndex);
|
|
54
|
-
this.sender = sender;
|
|
55
|
-
this.params = params;
|
|
56
|
-
// todo: find create, update, delete, etc. methods from app spec
|
|
57
|
-
}
|
|
58
|
-
/**
|
|
59
|
-
* Idempotently deploy (create, update/delete if changed) an app against the given name via the given creator account, including deploy-time template placeholder substitutions.
|
|
60
|
-
*
|
|
61
|
-
* To understand the architecture decisions behind this functionality please @see https://github.com/algorandfoundation/algokit-cli/blob/main/docs/architecture-decisions/2023-01-12_smart-contract-deployment.md
|
|
62
|
-
*
|
|
63
|
-
* **Note:** if there is a breaking state schema change to an existing app (and `onSchemaBreak` is set to `'replace'`) the existing app will be deleted and re-created.
|
|
64
|
-
*
|
|
65
|
-
* **Note:** if there is an update (different TEAL code) to an existing app (and `onUpdate` is set to `'replace'`) the existing app will be deleted and re-created.
|
|
66
|
-
* @param deploy Deployment details
|
|
67
|
-
* @returns The metadata and transaction result(s) of the deployment, or just the metadata if it didn't need to issue transactions
|
|
68
|
-
*/
|
|
69
|
-
async deploy(deploy) {
|
|
70
|
-
const { sender, version, allowUpdate, allowDelete, sendParams, ...deployArgs } = deploy;
|
|
71
|
-
if (this._appIndex !== 0) {
|
|
72
|
-
throw new Error(`Attempt to deploy app which already has an app index of ${this._appIndex}`);
|
|
73
|
-
}
|
|
74
|
-
if (!sender && !this.sender) {
|
|
75
|
-
throw new Error('No sender provided, unable to deploy app');
|
|
76
|
-
}
|
|
77
|
-
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion
|
|
78
|
-
const from = sender ?? this.sender;
|
|
79
|
-
if (!this._creator) {
|
|
80
|
-
throw new Error('Attempt to deploy a contract without having specified a creator');
|
|
81
|
-
}
|
|
82
|
-
if (this._creator !== (0, transaction_1.getSenderAddress)(from)) {
|
|
83
|
-
throw new Error(`Attempt to deploy contract with a sender address (${(0, transaction_1.getSenderAddress)(from)}) that differs from the given creator address for this application client: ${this._creator}`);
|
|
84
|
-
}
|
|
85
|
-
const approval = buffer_1.Buffer.from(this.appSpec.source.approval, 'base64').toString('utf-8');
|
|
86
|
-
const clear = buffer_1.Buffer.from(this.appSpec.source.clear, 'base64').toString('utf-8');
|
|
87
|
-
await this.loadAppReference();
|
|
88
|
-
const result = await (0, deploy_app_1.deployApp)({
|
|
89
|
-
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion
|
|
90
|
-
from,
|
|
91
|
-
approvalProgram: approval,
|
|
92
|
-
clearStateProgram: clear,
|
|
93
|
-
metadata: {
|
|
94
|
-
name: this.appSpec.contract.name,
|
|
95
|
-
version: version,
|
|
96
|
-
updatable: allowUpdate ??
|
|
97
|
-
((!this.appSpec.bare_call_config.update_application && this.appSpec.bare_call_config.update_application !== 'NEVER') ||
|
|
98
|
-
!!Object.keys(this.appSpec.hints).filter((h) => !this.appSpec.hints[h].call_config.update_application && this.appSpec.hints[h].call_config.update_application !== 'NEVER')[0]),
|
|
99
|
-
deletable: allowDelete ??
|
|
100
|
-
((!this.appSpec.bare_call_config.delete_application && this.appSpec.bare_call_config.delete_application !== 'NEVER') ||
|
|
101
|
-
!!Object.keys(this.appSpec.hints).filter((h) => !this.appSpec.hints[h].call_config.delete_application && this.appSpec.hints[h].call_config.delete_application !== 'NEVER')[0]),
|
|
102
|
-
},
|
|
103
|
-
schema: {
|
|
104
|
-
globalByteSlices: this.appSpec.state.global.num_byte_slices,
|
|
105
|
-
globalInts: this.appSpec.state.global.num_uints,
|
|
106
|
-
localByteSlices: this.appSpec.state.local.num_byte_slices,
|
|
107
|
-
localInts: this.appSpec.state.local.num_uints,
|
|
108
|
-
},
|
|
109
|
-
transactionParams: this.params,
|
|
110
|
-
...(sendParams ?? {}),
|
|
111
|
-
...deployArgs,
|
|
112
|
-
existingDeployments: this.existingDeployments,
|
|
113
|
-
}, this.algod, this.indexer);
|
|
114
|
-
// Nothing needed to happen
|
|
115
|
-
if (!('transaction' in result)) {
|
|
116
|
-
return result;
|
|
117
|
-
}
|
|
118
|
-
if (!this.existingDeployments) {
|
|
119
|
-
throw new Error('Expected existingDeployments to be present');
|
|
120
|
-
}
|
|
121
|
-
const { transaction, confirmation, operationPerformed, ...appMetadata } = result;
|
|
122
|
-
if ('deleteResult' in appMetadata) {
|
|
123
|
-
delete appMetadata.deleteResult;
|
|
124
|
-
}
|
|
125
|
-
this.existingDeployments = {
|
|
126
|
-
creator: this.existingDeployments.creator,
|
|
127
|
-
apps: { ...this.existingDeployments.apps, [this.appSpec.contract.name]: appMetadata },
|
|
128
|
-
};
|
|
129
|
-
return result;
|
|
130
|
-
}
|
|
131
|
-
async create(create) {
|
|
132
|
-
const { sender, args, note, sendParams, deployTimeParameters } = create ?? {};
|
|
133
|
-
// todo: Add deploy-time updatable/etc.
|
|
134
|
-
if (this._appIndex !== 0) {
|
|
135
|
-
throw new Error(`Attempt to create app which already has an app index of ${this._appIndex}`);
|
|
136
|
-
}
|
|
137
|
-
if (!sender && !this.sender) {
|
|
138
|
-
throw new Error('No sender provided, unable to create app');
|
|
139
|
-
}
|
|
140
|
-
const approval = buffer_1.Buffer.from(this.appSpec.source.approval, 'base64').toString('utf-8');
|
|
141
|
-
const clear = buffer_1.Buffer.from(this.appSpec.source.clear, 'base64').toString('utf-8');
|
|
142
|
-
const result = await (0, app_1.createApp)({
|
|
143
|
-
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion
|
|
144
|
-
from: sender ?? this.sender,
|
|
145
|
-
approvalProgram: (0, deploy_app_1.performTemplateSubstitution)(approval, deployTimeParameters),
|
|
146
|
-
clearStateProgram: (0, deploy_app_1.performTemplateSubstitution)(clear, deployTimeParameters),
|
|
147
|
-
schema: {
|
|
148
|
-
globalByteSlices: this.appSpec.state.global.num_byte_slices,
|
|
149
|
-
globalInts: this.appSpec.state.global.num_uints,
|
|
150
|
-
localByteSlices: this.appSpec.state.local.num_byte_slices,
|
|
151
|
-
localInts: this.appSpec.state.local.num_uints,
|
|
152
|
-
},
|
|
153
|
-
args: args,
|
|
154
|
-
note: note,
|
|
155
|
-
transactionParams: this.params,
|
|
156
|
-
...(sendParams ?? {}),
|
|
157
|
-
}, this.algod);
|
|
158
|
-
if (result.confirmation) {
|
|
159
|
-
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion
|
|
160
|
-
this._appIndex = result.confirmation['application-index'];
|
|
161
|
-
this._appAddress = (0, algosdk_1.getApplicationAddress)(this._appIndex);
|
|
162
|
-
}
|
|
163
|
-
return result;
|
|
164
|
-
}
|
|
165
|
-
async update(update) {
|
|
166
|
-
const { sender, args, note, sendParams, deployTimeParameters } = update ?? {};
|
|
167
|
-
if (this._appIndex === 0) {
|
|
168
|
-
throw new Error(`Attempt to update app which doesn't have an app index defined`);
|
|
169
|
-
}
|
|
170
|
-
if (!sender && !this.sender) {
|
|
171
|
-
throw new Error('No sender provided, unable to create app');
|
|
172
|
-
}
|
|
173
|
-
const approval = buffer_1.Buffer.from(this.appSpec.source.approval, 'base64').toString('utf-8');
|
|
174
|
-
const clear = buffer_1.Buffer.from(this.appSpec.source.clear, 'base64').toString('utf-8');
|
|
175
|
-
const result = await (0, app_1.updateApp)({
|
|
176
|
-
appIndex: this._appIndex,
|
|
177
|
-
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion
|
|
178
|
-
from: sender ?? this.sender,
|
|
179
|
-
approvalProgram: (0, deploy_app_1.performTemplateSubstitution)(approval, deployTimeParameters),
|
|
180
|
-
clearStateProgram: (0, deploy_app_1.performTemplateSubstitution)(clear, deployTimeParameters),
|
|
181
|
-
args: args,
|
|
182
|
-
note: note,
|
|
183
|
-
transactionParams: this.params,
|
|
184
|
-
...(sendParams ?? {}),
|
|
185
|
-
}, this.algod);
|
|
186
|
-
return result;
|
|
187
|
-
}
|
|
188
|
-
async call(call) {
|
|
189
|
-
const { sender, callType, note, sendParams, ...args } = call;
|
|
190
|
-
if (!sender && !this.sender) {
|
|
191
|
-
throw new Error('No sender provided, unable to call app');
|
|
192
|
-
}
|
|
193
|
-
const appMetadata = await this.loadAppReference();
|
|
194
|
-
if (appMetadata.appIndex === 0) {
|
|
195
|
-
throw new Error(`Attempt to call an app that can't be found '${this.appSpec.contract.name}' for creator '${this._creator}'.`);
|
|
196
|
-
}
|
|
197
|
-
// todo: use this in create et. al. as well
|
|
198
|
-
let callArgs;
|
|
199
|
-
// ABI call
|
|
200
|
-
if ('method' in args) {
|
|
201
|
-
const abiMethod = this.getABIMethod(args.method);
|
|
202
|
-
if (!abiMethod) {
|
|
203
|
-
throw new Error(`Attempt to call ABI method ${args.method}, but it wasn't found`);
|
|
204
|
-
}
|
|
205
|
-
callArgs = {
|
|
206
|
-
method: abiMethod,
|
|
207
|
-
args: args.methodArgs,
|
|
208
|
-
lease: args.lease,
|
|
209
|
-
};
|
|
210
|
-
}
|
|
211
|
-
else {
|
|
212
|
-
callArgs = args.args;
|
|
213
|
-
}
|
|
214
|
-
// todo: process ABI args as needed to make them nicer to deal with like beaker-ts???
|
|
215
|
-
// todo: support unwrapping a logic error?
|
|
216
|
-
return (0, app_1.callApp)({
|
|
217
|
-
appIndex: appMetadata.appIndex,
|
|
218
|
-
callType: callType,
|
|
219
|
-
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion
|
|
220
|
-
from: sender ?? this.sender,
|
|
221
|
-
args: callArgs,
|
|
222
|
-
note: note,
|
|
223
|
-
transactionParams: this.params,
|
|
224
|
-
...(sendParams ?? {}),
|
|
225
|
-
}, this.algod);
|
|
226
|
-
}
|
|
227
|
-
getABIMethod(method) {
|
|
228
|
-
if (!method.includes('(')) {
|
|
229
|
-
const methods = this.appSpec.contract.methods.filter((m) => m.name === method);
|
|
230
|
-
if (methods.length > 1) {
|
|
231
|
-
throw new Error(`Received a call to method ${method} in contract ${this.appSpec.contract.name}, but this resolved to multiple methods; please pass in an ABI signature instead: ${methods.map(appspec_1.getABISignature).join(', ')}`);
|
|
232
|
-
}
|
|
233
|
-
return methods[0];
|
|
234
|
-
}
|
|
235
|
-
return this.appSpec.contract.methods.find((m) => (0, appspec_1.getABISignature)(m) === method);
|
|
236
|
-
}
|
|
237
|
-
async loadAppReference() {
|
|
238
|
-
if (!this.existingDeployments && this._creator) {
|
|
239
|
-
this.existingDeployments = await (0, deploy_app_1.getCreatorAppsByName)(this._creator, this.indexer);
|
|
240
|
-
}
|
|
241
|
-
if (this.existingDeployments && this._appIndex === 0) {
|
|
242
|
-
const app = this.existingDeployments.apps[this.appSpec.contract.name];
|
|
243
|
-
if (!app) {
|
|
244
|
-
return {
|
|
245
|
-
appIndex: 0,
|
|
246
|
-
appAddress: (0, algosdk_1.getApplicationAddress)(0),
|
|
247
|
-
};
|
|
248
|
-
}
|
|
249
|
-
return app;
|
|
250
|
-
}
|
|
251
|
-
return {
|
|
252
|
-
appIndex: this._appIndex,
|
|
253
|
-
appAddress: this._appAddress,
|
|
254
|
-
};
|
|
255
|
-
}
|
|
256
|
-
}
|
|
257
|
-
exports.ApplicationClient = ApplicationClient;
|
|
258
|
-
//# sourceMappingURL=application-client.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"application-client.js","sourceRoot":"","sources":["../src/application-client.ts"],"names":[],"mappings":"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"}
|
package/config.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AACA,uEAAuE;AACvE,MAAM,MAAM,MAAM,GAAG;IACnB,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,cAAc,EAAE,OAAO,EAAE,GAAG,IAAI,CAAA;IAC1D,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,cAAc,EAAE,OAAO,EAAE,GAAG,IAAI,CAAA;IACzD,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,cAAc,EAAE,OAAO,EAAE,GAAG,IAAI,CAAA;IACzD,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,cAAc,EAAE,OAAO,EAAE,GAAG,IAAI,CAAA;IAC5D,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,cAAc,EAAE,OAAO,EAAE,GAAG,IAAI,CAAA;CAC3D,CAAA;AAED,qDAAqD;AACrD,eAAO,MAAM,aAAa,EAAE,MAM3B,CAAA;AAED,eAAO,MAAM,UAAU,EAAE,MAWxB,CAAA;AAED,qCAAqC;AACrC,MAAM,WAAW,MAAM;IACrB,MAAM,EAAE,MAAM,CAAA;CACf;AAED,cAAM,eAAgB,YAAW,QAAQ,CAAC,MAAM,CAAC;IAC/C,OAAO,CAAC,MAAM,CAAQ;IAEtB,IAAI,MAAM,WAET;IAED,SAAS,CAAC,gBAAgB,CAAC,EAAE,OAAO;;IAcpC,4EAA4E;IAC5E,SAAS,CAAC,SAAS,EAAE,MAAM;CAG5B;AAED,iEAAiE;AACjE,eAAO,MAAM,aAAa,iBAAwB,CAAA"}
|
package/config.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":";;;AAUA,qDAAqD;AACxC,QAAA,aAAa,GAAW;IACnC,KAAK,EAAE,OAAO,CAAC,KAAK;IACpB,IAAI,EAAE,OAAO,CAAC,IAAI;IAClB,IAAI,EAAE,OAAO,CAAC,IAAI;IAClB,OAAO,EAAE,OAAO,CAAC,KAAK;IACtB,KAAK,EAAE,OAAO,CAAC,KAAK;CACrB,CAAA;AAEY,QAAA,UAAU,GAAW;IAChC,gEAAgE;IAChE,KAAK,EAAE,UAAU,OAAe,EAAE,GAAG,cAAyB,IAAS,CAAC;IACxE,gEAAgE;IAChE,IAAI,EAAE,UAAU,OAAe,EAAE,GAAG,cAAyB,IAAS,CAAC;IACvE,gEAAgE;IAChE,IAAI,EAAE,UAAU,OAAe,EAAE,GAAG,cAAyB,IAAS,CAAC;IACvE,gEAAgE;IAChE,OAAO,EAAE,UAAU,OAAe,EAAE,GAAG,cAAyB,IAAS,CAAC;IAC1E,gEAAgE;IAChE,KAAK,EAAE,UAAU,OAAe,EAAE,GAAG,cAAyB,IAAS,CAAC;CACzE,CAAA;AAOD,MAAM,eAAe;IAGnB,IAAI,MAAM;QACR,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,CAAA;IAC3B,CAAC;IAED,SAAS,CAAC,gBAA0B;QAClC,IAAI,gBAAgB,EAAE;YACpB,OAAO,kBAAU,CAAA;SAClB;QAED,OAAO,IAAI,CAAC,MAAM,CAAA;IACpB,CAAC;IAED;QACE,IAAI,CAAC,MAAM,GAAG;YACZ,MAAM,EAAE,qBAAa;SACtB,CAAA;IACH,CAAC;IAED,4EAA4E;IAC5E,SAAS,CAAC,SAAiB;QACzB,IAAI,CAAC,MAAM,GAAG,SAAS,CAAA;IACzB,CAAC;CACF;AAED,iEAAiE;AACpD,QAAA,aAAa,GAAG,IAAI,eAAe,EAAE,CAAA"}
|
package/deploy-app.d.ts
DELETED
|
@@ -1,164 +0,0 @@
|
|
|
1
|
-
import { Algodv2, Indexer } from 'algosdk';
|
|
2
|
-
import { AppCallArgs, AppReference, CompiledTeal, CreateAppParams } from './app';
|
|
3
|
-
import { SendTransactionFrom, SendTransactionResult } from './transaction';
|
|
4
|
-
import { ApplicationStateSchema } from './types/algod';
|
|
5
|
-
export declare const UPDATABLE_TEMPLATE_NAME = "TMPL_UPDATABLE";
|
|
6
|
-
export declare const DELETABLE_TEMPLATE_NAME = "TMPL_DELETABLE";
|
|
7
|
-
export declare const APP_DEPLOY_NOTE_PREFIX = "APP_DEPLOY::";
|
|
8
|
-
/**
|
|
9
|
-
* The payload of the metadata to add to the transaction note when deploying an app, noting it will be prefixed with @see {APP_DEPLOY_NOTE_PREFIX}.
|
|
10
|
-
*/
|
|
11
|
-
export interface AppDeployMetadata {
|
|
12
|
-
/** The unique name identifier of the app within the creator account */
|
|
13
|
-
name: string;
|
|
14
|
-
/** The version of app that is / will be deployed */
|
|
15
|
-
version: string;
|
|
16
|
-
/** Whether or not the app is deletable / permanent / unspecified */
|
|
17
|
-
deletable?: boolean;
|
|
18
|
-
/** Whether or not the app is updatable / immutable / unspecified */
|
|
19
|
-
updatable?: boolean;
|
|
20
|
-
}
|
|
21
|
-
/** The metadata that can be collected about a deployed app */
|
|
22
|
-
export interface AppMetadata extends AppReference, AppDeployMetadata {
|
|
23
|
-
/** The round the app was created */
|
|
24
|
-
createdRound: number;
|
|
25
|
-
/** The last round that the app was updated */
|
|
26
|
-
updatedRound: number;
|
|
27
|
-
/** The metadata when the app was created */
|
|
28
|
-
createdMetadata: AppDeployMetadata;
|
|
29
|
-
/** Whether or not the app is deleted */
|
|
30
|
-
deleted: boolean;
|
|
31
|
-
}
|
|
32
|
-
/** A lookup of name -> Algorand app for a creator */
|
|
33
|
-
export interface AppLookup {
|
|
34
|
-
creator: Readonly<string>;
|
|
35
|
-
apps: Readonly<{
|
|
36
|
-
[name: string]: AppMetadata;
|
|
37
|
-
}>;
|
|
38
|
-
}
|
|
39
|
-
/** Dictionary of deploy-time parameters to replace in a teal template.
|
|
40
|
-
*
|
|
41
|
-
* Note: Looks for `TMPL_{parameter}` for template replacements i.e. you can leave out the `TMPL_`.
|
|
42
|
-
*
|
|
43
|
-
*/
|
|
44
|
-
export interface TealTemplateParameters {
|
|
45
|
-
[key: string]: string | bigint | number | Uint8Array;
|
|
46
|
-
}
|
|
47
|
-
/** What action to perform when deploying an app and an update is detected in the TEAL code */
|
|
48
|
-
export declare enum OnUpdate {
|
|
49
|
-
/** Fail the deployment */
|
|
50
|
-
Fail = 0,
|
|
51
|
-
/** Update the app */
|
|
52
|
-
UpdateApp = 1,
|
|
53
|
-
/** Delete the app and create a new one in its place */
|
|
54
|
-
ReplaceApp = 2
|
|
55
|
-
}
|
|
56
|
-
/** What action to perform when deploying an app and a breaking schema change is detected */
|
|
57
|
-
export declare enum OnSchemaBreak {
|
|
58
|
-
/** Fail the deployment */
|
|
59
|
-
Fail = 0,
|
|
60
|
-
/** Delete the app and create a new one in its place */
|
|
61
|
-
ReplaceApp = 1
|
|
62
|
-
}
|
|
63
|
-
/** The parameters to deploy an app */
|
|
64
|
-
export interface AppDeploymentParams extends Omit<CreateAppParams, 'args' | 'note' | 'skipSending' | 'skipWaiting'> {
|
|
65
|
-
/** The deployment metadata */
|
|
66
|
-
metadata: AppDeployMetadata;
|
|
67
|
-
/** Any deploy-time parameters to replace in the TEAL code */
|
|
68
|
-
deployTimeParameters?: TealTemplateParameters;
|
|
69
|
-
/** What action to perform if a schema break is detected */
|
|
70
|
-
onSchemaBreak?: 'replace' | 'fail' | OnSchemaBreak;
|
|
71
|
-
/** What action to perform if a TEAL update is detected */
|
|
72
|
-
onUpdate?: 'update' | 'replace' | 'fail' | OnUpdate;
|
|
73
|
-
/** Optional cached value of the existing apps for the given creator */
|
|
74
|
-
existingDeployments?: AppLookup;
|
|
75
|
-
/** Any args to pass to any create transaction that is issued as part of deployment */
|
|
76
|
-
createArgs?: AppCallArgs;
|
|
77
|
-
/** Any args to pass to any update transaction that is issued as part of deployment */
|
|
78
|
-
updateArgs?: AppCallArgs;
|
|
79
|
-
/** Any args to pass to any delete transaction that is issued as part of deployment */
|
|
80
|
-
deleteArgs?: AppCallArgs;
|
|
81
|
-
}
|
|
82
|
-
/**
|
|
83
|
-
* Idempotently deploy (create, update/delete if changed) an app against the given name via the given creator account, including deploy-time template placeholder substitutions.
|
|
84
|
-
*
|
|
85
|
-
* To understand the architecture decisions behind this functionality please @see https://github.com/algorandfoundation/algokit-cli/blob/main/docs/architecture-decisions/2023-01-12_smart-contract-deployment.md
|
|
86
|
-
*
|
|
87
|
-
* **Note:** if there is a breaking state schema change to an existing app (and `onSchemaBreak` is set to `'replace'`) the existing app will be deleted and re-created.
|
|
88
|
-
*
|
|
89
|
-
* **Note:** if there is an update (different TEAL code) to an existing app (and `onUpdate` is set to `'replace'`) the existing app will be deleted and re-created.
|
|
90
|
-
* @param deployment The arguments to control the app deployment
|
|
91
|
-
* @param algod An algod client
|
|
92
|
-
* @param indexer An indexer client
|
|
93
|
-
* @returns The app reference of the new/existing app
|
|
94
|
-
*/
|
|
95
|
-
export declare function deployApp(deployment: AppDeploymentParams, algod: Algodv2, indexer: Indexer): Promise<(SendTransactionResult & AppMetadata & {
|
|
96
|
-
operationPerformed: 'create' | 'update';
|
|
97
|
-
}) | (SendTransactionResult & AppMetadata & {
|
|
98
|
-
deleteResult?: SendTransactionResult;
|
|
99
|
-
operationPerformed: 'replace';
|
|
100
|
-
}) | (AppMetadata & {
|
|
101
|
-
operationPerformed: 'none';
|
|
102
|
-
})>;
|
|
103
|
-
/** Returns true is there is a breaking change in the application state schema from before to after.
|
|
104
|
-
* i.e. if the schema becomes larger, since applications can't ask for more schema after creation.
|
|
105
|
-
* Otherwise, there is no error, the app just doesn't store data in the extra schema :(
|
|
106
|
-
*
|
|
107
|
-
* @param before The existing schema
|
|
108
|
-
* @param after The new schema
|
|
109
|
-
* @returns Whether or not there is a breaking change
|
|
110
|
-
*/
|
|
111
|
-
export declare function schemaIsBroken(before: ApplicationStateSchema, after: ApplicationStateSchema): boolean;
|
|
112
|
-
/**
|
|
113
|
-
* Returns a lookup of name => app metadata (id, address, ...metadata) for all apps created by the given account that have an @see {AppDeployNote} in the transaction note of the creation transaction.
|
|
114
|
-
*
|
|
115
|
-
* **Note:** It's recommended this is only called once and then stored since it's a somewhat expensive operation (multiple indexer calls).
|
|
116
|
-
*
|
|
117
|
-
* @param creatorAccount The account (with private key loaded) or string address of an account that is the creator of the apps you want to search for
|
|
118
|
-
* @param indexer An indexer client
|
|
119
|
-
* @returns A name-based lookup of the app information (id, address)
|
|
120
|
-
*/
|
|
121
|
-
export declare function getCreatorAppsByName(creatorAccount: SendTransactionFrom | string, indexer: Indexer): Promise<AppLookup>;
|
|
122
|
-
/**
|
|
123
|
-
* Return the transaction note for an app deployment.
|
|
124
|
-
* @param metadata The metadata of the deployment
|
|
125
|
-
* @returns The transaction note as a utf-8 string
|
|
126
|
-
*/
|
|
127
|
-
export declare function getAppDeploymentTransactionNote(metadata: AppDeployMetadata): string;
|
|
128
|
-
/**
|
|
129
|
-
* Replaces deploy-time deployment control parameters within the given teal code.
|
|
130
|
-
*
|
|
131
|
-
* @see {UPDATABLE_TEMPLATE_NAME}
|
|
132
|
-
* @see {DELETABLE_TEMPLATE_NAME}
|
|
133
|
-
*
|
|
134
|
-
* @param tealCode The TEAL code to substitute
|
|
135
|
-
* @param params The deploy-time deployment control parameter value to replace
|
|
136
|
-
* @returns The replaced TEAL code
|
|
137
|
-
*/
|
|
138
|
-
export declare function replaceDeployTimeControlParams(tealCode: string, params: {
|
|
139
|
-
updatable?: boolean;
|
|
140
|
-
deletable?: boolean;
|
|
141
|
-
}): string;
|
|
142
|
-
/**
|
|
143
|
-
* Performs template substitution of a teal file.
|
|
144
|
-
*
|
|
145
|
-
* Looks for `TMPL_{parameter}` for template replacements.
|
|
146
|
-
*
|
|
147
|
-
* @param tealCode The TEAL logic to compile
|
|
148
|
-
* @param templateParameters Any parameters to replace in the .teal file before compiling
|
|
149
|
-
* @returns The TEAL code with replacements
|
|
150
|
-
*/
|
|
151
|
-
export declare function performTemplateSubstitution(tealCode: string, templateParameters?: TealTemplateParameters): string;
|
|
152
|
-
/**
|
|
153
|
-
* Performs template substitution of a teal file and compiles it, returning the compiled result.
|
|
154
|
-
*
|
|
155
|
-
* Looks for `TMPL_{parameter}` for template replacements.
|
|
156
|
-
*
|
|
157
|
-
* @param tealCode The TEAL logic to compile
|
|
158
|
-
* @param algod An algod client
|
|
159
|
-
* @param templateParameters Any parameters to replace in the .teal file before compiling
|
|
160
|
-
* @param deploymentMetadata The deployment metadata the app will be deployed with
|
|
161
|
-
* @returns The information about the compiled code
|
|
162
|
-
*/
|
|
163
|
-
export declare function performTemplateSubstitutionAndCompile(tealCode: string, algod: Algodv2, templateParameters?: TealTemplateParameters, deploymentMetadata?: AppDeployMetadata): Promise<CompiledTeal>;
|
|
164
|
-
//# sourceMappingURL=deploy-app.d.ts.map
|
package/deploy-app.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"deploy-app.d.ts","sourceRoot":"","sources":["../src/deploy-app.ts"],"names":[],"mappings":"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"}
|
package/deploy-app.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"deploy-app.js","sourceRoot":"","sources":["../src/deploy-app.ts"],"names":[],"mappings":"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"}
|