movehat 0.2.0 → 0.2.2
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 +132 -279
- package/dist/__tests__/deployContract.test.js +56 -47
- package/dist/__tests__/deployContract.test.js.map +1 -1
- package/dist/__tests__/exports.test.d.ts +2 -0
- package/dist/__tests__/exports.test.d.ts.map +1 -0
- package/dist/__tests__/exports.test.js +30 -0
- package/dist/__tests__/exports.test.js.map +1 -0
- package/dist/__tests__/fixtures/sigint-deploy-harness.d.ts +4 -3
- package/dist/__tests__/fixtures/sigint-deploy-harness.d.ts.map +1 -1
- package/dist/__tests__/fixtures/sigint-deploy-harness.js +8 -7
- package/dist/__tests__/fixtures/sigint-deploy-harness.js.map +1 -1
- package/dist/__tests__/fork/api.test.js +7 -2
- package/dist/__tests__/fork/api.test.js.map +1 -1
- package/dist/__tests__/fork/api.timeout.test.d.ts +2 -0
- package/dist/__tests__/fork/api.timeout.test.d.ts.map +1 -0
- package/dist/__tests__/fork/api.timeout.test.js +98 -0
- package/dist/__tests__/fork/api.timeout.test.js.map +1 -0
- package/dist/__tests__/harness/Harness.proxy.test.js +7 -11
- package/dist/__tests__/harness/Harness.proxy.test.js.map +1 -1
- package/dist/__tests__/harness/codeObject.deploy.test.js +1 -1
- package/dist/__tests__/harness/codeObject.deploy.test.js.map +1 -1
- package/dist/__tests__/harness/view.test.js +3 -3
- package/dist/commands/__tests__/compile.toml-mutation.test.d.ts +2 -0
- package/dist/commands/__tests__/compile.toml-mutation.test.d.ts.map +1 -0
- package/dist/commands/__tests__/compile.toml-mutation.test.js +69 -0
- package/dist/commands/__tests__/compile.toml-mutation.test.js.map +1 -0
- package/dist/commands/__tests__/init.test.js +73 -11
- package/dist/commands/__tests__/init.test.js.map +1 -1
- package/dist/commands/__tests__/run.test.js +3 -3
- package/dist/commands/__tests__/run.test.js.map +1 -1
- package/dist/commands/init.d.ts +22 -0
- package/dist/commands/init.d.ts.map +1 -1
- package/dist/commands/init.js +55 -6
- package/dist/commands/init.js.map +1 -1
- package/dist/core/AccountManager.d.ts +0 -3
- package/dist/core/AccountManager.d.ts.map +1 -1
- package/dist/core/AccountManager.js +14 -7
- package/dist/core/AccountManager.js.map +1 -1
- package/dist/core/Publisher.d.ts +0 -5
- package/dist/core/Publisher.d.ts.map +1 -1
- package/dist/core/Publisher.js +52 -76
- package/dist/core/Publisher.js.map +1 -1
- package/dist/core/__tests__/AccountManager.global-state.test.d.ts +2 -0
- package/dist/core/__tests__/AccountManager.global-state.test.d.ts.map +1 -0
- package/dist/core/__tests__/AccountManager.global-state.test.js +69 -0
- package/dist/core/__tests__/AccountManager.global-state.test.js.map +1 -0
- package/dist/core/__tests__/movementProfile.test.d.ts +2 -0
- package/dist/core/__tests__/movementProfile.test.d.ts.map +1 -0
- package/dist/core/__tests__/movementProfile.test.js +112 -0
- package/dist/core/__tests__/movementProfile.test.js.map +1 -0
- package/dist/core/config.js +6 -5
- package/dist/core/config.js.map +1 -1
- package/dist/core/contract.d.ts +0 -3
- package/dist/core/contract.d.ts.map +1 -1
- package/dist/core/contract.js +0 -3
- package/dist/core/contract.js.map +1 -1
- package/dist/core/deployments.d.ts +0 -6
- package/dist/core/deployments.d.ts.map +1 -1
- package/dist/core/deployments.js +0 -12
- package/dist/core/deployments.js.map +1 -1
- package/dist/core/movementProfile.d.ts +55 -22
- package/dist/core/movementProfile.d.ts.map +1 -1
- package/dist/core/movementProfile.js +77 -99
- package/dist/core/movementProfile.js.map +1 -1
- package/dist/fork/__tests__/manager.test.js +1 -1
- package/dist/fork/__tests__/server.cors.test.d.ts +2 -0
- package/dist/fork/__tests__/server.cors.test.d.ts.map +1 -0
- package/dist/fork/__tests__/server.cors.test.js +79 -0
- package/dist/fork/__tests__/server.cors.test.js.map +1 -0
- package/dist/fork/api.d.ts +9 -1
- package/dist/fork/api.d.ts.map +1 -1
- package/dist/fork/api.js +37 -7
- package/dist/fork/api.js.map +1 -1
- package/dist/fork/manager.d.ts +1 -21
- package/dist/fork/manager.d.ts.map +1 -1
- package/dist/fork/manager.js +1 -41
- package/dist/fork/manager.js.map +1 -1
- package/dist/fork/server.d.ts +20 -1
- package/dist/fork/server.d.ts.map +1 -1
- package/dist/fork/server.js +19 -9
- package/dist/fork/server.js.map +1 -1
- package/dist/fork/test.d.ts +0 -1
- package/dist/fork/test.d.ts.map +1 -1
- package/dist/fork/test.js.map +1 -1
- package/dist/harness/Harness.d.ts +11 -13
- package/dist/harness/Harness.d.ts.map +1 -1
- package/dist/harness/Harness.js +13 -13
- package/dist/harness/Harness.js.map +1 -1
- package/dist/harness/codeObject.d.ts.map +1 -1
- package/dist/harness/codeObject.js +31 -38
- package/dist/harness/codeObject.js.map +1 -1
- package/dist/harness/script.d.ts +3 -3
- package/dist/harness/script.d.ts.map +1 -1
- package/dist/harness/script.js +33 -29
- package/dist/harness/script.js.map +1 -1
- package/dist/helpers/__tests__/setupLocalTesting.fork-network.test.d.ts +2 -0
- package/dist/helpers/__tests__/setupLocalTesting.fork-network.test.d.ts.map +1 -0
- package/dist/helpers/__tests__/setupLocalTesting.fork-network.test.js +172 -0
- package/dist/helpers/__tests__/setupLocalTesting.fork-network.test.js.map +1 -0
- package/dist/helpers/setupLocalTesting.d.ts +1 -2
- package/dist/helpers/setupLocalTesting.d.ts.map +1 -1
- package/dist/helpers/setupLocalTesting.js +28 -2
- package/dist/helpers/setupLocalTesting.js.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +0 -1
- package/dist/index.js.map +1 -1
- package/dist/node/LocalNodeManager.d.ts +8 -0
- package/dist/node/LocalNodeManager.d.ts.map +1 -1
- package/dist/node/LocalNodeManager.js +10 -1
- package/dist/node/LocalNodeManager.js.map +1 -1
- package/dist/node/__tests__/LocalNodeManager.api-port.test.d.ts +2 -0
- package/dist/node/__tests__/LocalNodeManager.api-port.test.d.ts.map +1 -0
- package/dist/node/__tests__/LocalNodeManager.api-port.test.js +55 -0
- package/dist/node/__tests__/LocalNodeManager.api-port.test.js.map +1 -0
- package/dist/node/__tests__/LocalNodeManager.test.js +4 -3
- package/dist/node/__tests__/LocalNodeManager.test.js.map +1 -1
- package/dist/runtime.d.ts.map +1 -1
- package/dist/runtime.js +1 -3
- package/dist/runtime.js.map +1 -1
- package/dist/templates/move/Move.toml +1 -1
- package/dist/templates/move/sources/Counter.move +31 -4
- package/dist/templates/scripts/deploy-counter.ts +11 -1
- package/dist/templates/tests/Counter.test.ts +2 -2
- package/dist/types/config.d.ts +8 -1
- package/dist/types/config.d.ts.map +1 -1
- package/dist/utils/__tests__/childProcessAdapter.maxBuffer.test.d.ts +2 -0
- package/dist/utils/__tests__/childProcessAdapter.maxBuffer.test.d.ts.map +1 -0
- package/dist/utils/__tests__/childProcessAdapter.maxBuffer.test.js +43 -0
- package/dist/utils/__tests__/childProcessAdapter.maxBuffer.test.js.map +1 -0
- package/dist/utils/address.d.ts +0 -4
- package/dist/utils/address.d.ts.map +1 -1
- package/dist/utils/address.js +0 -4
- package/dist/utils/address.js.map +1 -1
- package/dist/utils/childProcessAdapter.d.ts +7 -0
- package/dist/utils/childProcessAdapter.d.ts.map +1 -1
- package/dist/utils/childProcessAdapter.js +23 -6
- package/dist/utils/childProcessAdapter.js.map +1 -1
- package/package.json +2 -1
- package/src/__tests__/deployContract.test.ts +59 -50
- package/src/__tests__/exports.test.ts +32 -0
- package/src/__tests__/fixtures/sigint-deploy-harness.ts +8 -7
- package/src/__tests__/fork/api.test.ts +7 -2
- package/src/__tests__/fork/api.timeout.test.ts +150 -0
- package/src/__tests__/harness/Harness.proxy.test.ts +7 -11
- package/src/__tests__/harness/codeObject.deploy.test.ts +1 -1
- package/src/__tests__/harness/view.test.ts +3 -3
- package/src/commands/__tests__/compile.toml-mutation.test.ts +77 -0
- package/src/commands/__tests__/init.test.ts +96 -11
- package/src/commands/__tests__/run.test.ts +3 -3
- package/src/commands/init.ts +77 -6
- package/src/core/AccountManager.ts +18 -13
- package/src/core/Publisher.ts +58 -85
- package/src/core/__tests__/AccountManager.global-state.test.ts +83 -0
- package/src/core/__tests__/movementProfile.test.ts +131 -0
- package/src/core/config.ts +9 -5
- package/src/core/contract.ts +0 -3
- package/src/core/deployments.ts +0 -12
- package/src/core/movementProfile.ts +75 -127
- package/src/fork/__tests__/manager.test.ts +1 -1
- package/src/fork/__tests__/server.cors.test.ts +101 -0
- package/src/fork/api.ts +69 -10
- package/src/fork/manager.ts +1 -41
- package/src/fork/server.ts +38 -9
- package/src/fork/test.ts +0 -1
- package/src/harness/Harness.ts +16 -13
- package/src/harness/codeObject.ts +38 -48
- package/src/harness/script.ts +40 -39
- package/src/helpers/__tests__/setupLocalTesting.fork-network.test.ts +212 -0
- package/src/helpers/setupLocalTesting.ts +37 -4
- package/src/index.ts +9 -2
- package/src/node/LocalNodeManager.ts +24 -2
- package/src/node/__tests__/LocalNodeManager.api-port.test.ts +62 -0
- package/src/node/__tests__/LocalNodeManager.test.ts +5 -4
- package/src/runtime.ts +1 -3
- package/src/templates/move/Move.toml +1 -1
- package/src/templates/move/sources/Counter.move +31 -4
- package/src/templates/scripts/deploy-counter.ts +11 -1
- package/src/templates/tests/Counter.test.ts +2 -2
- package/src/types/config.ts +8 -1
- package/src/types/runtime.ts +2 -2
- package/src/utils/__tests__/childProcessAdapter.maxBuffer.test.ts +51 -0
- package/src/utils/address.ts +0 -4
- package/src/utils/childProcessAdapter.ts +35 -6
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AccountManager.js","sourceRoot":"","sources":["../../src/core/AccountManager.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,OAAO,EACP,iBAAiB,
|
|
1
|
+
{"version":3,"file":"AccountManager.js","sourceRoot":"","sources":["../../src/core/AccountManager.ts"],"names":[],"mappings":"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"}
|
package/dist/core/Publisher.d.ts
CHANGED
|
@@ -16,11 +16,6 @@ export interface PublishInput {
|
|
|
16
16
|
/**
|
|
17
17
|
* Publishes a Move module via the Movement CLI.
|
|
18
18
|
*
|
|
19
|
-
* Extracted from `runtime.deployContract` (M1.4 / #79). Carries the
|
|
20
|
-
* destructive Move.toml-rewrite + shared-yaml-write semantics of the
|
|
21
|
-
* original closure verbatim in this scaffold commit — bug fixes for
|
|
22
|
-
* #36 / #37 / #38 land in subsequent commits.
|
|
23
|
-
*
|
|
24
19
|
* @internal
|
|
25
20
|
*/
|
|
26
21
|
export declare class Publisher {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Publisher.d.ts","sourceRoot":"","sources":["../../src/core/Publisher.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"Publisher.d.ts","sourceRoot":"","sources":["../../src/core/Publisher.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAkC,MAAM,oBAAoB,CAAC;AAC7E,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAEnD,OAAO,EAGL,cAAc,EAEf,MAAM,kBAAkB,CAAC;AAK1B,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,iCAAiC,CAAC;AAU3E,gBAAgB;AAChB,MAAM,WAAW,aAAa;IAC5B,OAAO,CAAC,EAAE,mBAAmB,GAAG,SAAS,CAAC;CAC3C;AAED,gBAAgB;AAChB,MAAM,WAAW,YAAY;IAC3B,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,aAAa,CAAC;IACtB,OAAO,EAAE,OAAO,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CACjC;AAED;;;;GAIG;AACH,qBAAa,SAAS;IACR,OAAO,CAAC,QAAQ,CAAC,IAAI;gBAAJ,IAAI,GAAE,aAAkB;IAE/C,MAAM,CAAC,KAAK,EAAE,YAAY,GAAG,OAAO,CAAC,cAAc,CAAC;CA0P3D"}
|
package/dist/core/Publisher.js
CHANGED
|
@@ -1,22 +1,15 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { join } from "path";
|
|
3
|
-
import { randomUUID } from "crypto";
|
|
1
|
+
import { PrivateKey, PrivateKeyVariants } from "@aptos-labs/ts-sdk";
|
|
4
2
|
import { extractNamedAddresses } from "../commands/compile.js";
|
|
5
3
|
import { saveDeployment, loadDeployment, validateSafeName, } from "./deployments.js";
|
|
6
|
-
import { validatePathSafety
|
|
4
|
+
import { validatePathSafety } from "./shell.js";
|
|
7
5
|
import { CliExecutionError, ModuleAlreadyDeployedError, PostPublishError } from "../errors.js";
|
|
8
6
|
import { runCli } from "../utils/runCli.js";
|
|
9
7
|
import { logger } from "../ui/index.js";
|
|
10
|
-
import {
|
|
8
|
+
import { writeTempKeyFile, removeKeyFile, removeKeyFileSyncBestEffort, ensureSignalHandler, cleanupCallbacks, } from "./movementProfile.js";
|
|
11
9
|
import { parseTxHash } from "../utils/parseCliOutput.js";
|
|
12
10
|
/**
|
|
13
11
|
* Publishes a Move module via the Movement CLI.
|
|
14
12
|
*
|
|
15
|
-
* Extracted from `runtime.deployContract` (M1.4 / #79). Carries the
|
|
16
|
-
* destructive Move.toml-rewrite + shared-yaml-write semantics of the
|
|
17
|
-
* original closure verbatim in this scaffold commit — bug fixes for
|
|
18
|
-
* #36 / #37 / #38 land in subsequent commits.
|
|
19
|
-
*
|
|
20
13
|
* @internal
|
|
21
14
|
*/
|
|
22
15
|
export class Publisher {
|
|
@@ -26,11 +19,8 @@ export class Publisher {
|
|
|
26
19
|
}
|
|
27
20
|
async deploy(input) {
|
|
28
21
|
const { moduleName, config, account } = input;
|
|
29
|
-
// Validate moduleName early
|
|
30
22
|
validateSafeName(moduleName, "module");
|
|
31
|
-
// Check if --redeploy flag was passed via CLI
|
|
32
23
|
const forceRedeploy = process.env.MH_CLI_REDEPLOY === "true";
|
|
33
|
-
// Check if already deployed
|
|
34
24
|
const existingDeployment = loadDeployment(config.network, moduleName);
|
|
35
25
|
if (existingDeployment && !forceRedeploy) {
|
|
36
26
|
// Build detailed error message with all deployment info
|
|
@@ -62,17 +52,10 @@ export class Publisher {
|
|
|
62
52
|
logger.info(`Redeploying module "${moduleName}" on ${config.network}...`);
|
|
63
53
|
}
|
|
64
54
|
const dir = input.packageDir || config.moveDir;
|
|
65
|
-
// Bug #37: use a UUID-suffixed profile name per deploy so concurrent
|
|
66
|
-
// Publisher.deploy() calls in the same process don't fight over the
|
|
67
|
-
// same key in ~/.aptos/config.yaml. The previous code reused
|
|
68
|
-
// config.profile (default "default"), which meant two parallel
|
|
69
|
-
// deploys would clobber each other's profile data mid-publish.
|
|
70
|
-
const profile = `movehat-deploy-${randomUUID().slice(0, 8)}`;
|
|
71
55
|
// Validate (no shell escape — runCli uses spawn, which takes args
|
|
72
56
|
// verbatim and would treat the single-quote wrapping as part of the
|
|
73
|
-
// literal path
|
|
57
|
+
// literal path, breaking Movement CLI argument parsing).
|
|
74
58
|
const safeDir = validatePathSafety(dir, "package directory");
|
|
75
|
-
const safeProfile = validateProfileSafety(profile);
|
|
76
59
|
logger.step(`Publishing module "${moduleName}" from ${dir}...`);
|
|
77
60
|
try {
|
|
78
61
|
// Get the deployer address to use for named addresses
|
|
@@ -101,46 +84,41 @@ export class Publisher {
|
|
|
101
84
|
console.log(buildResult.stdout.trim());
|
|
102
85
|
// Publish using direct parameters (avoid config file issues)
|
|
103
86
|
logger.step("Publishing to blockchain...");
|
|
104
|
-
//
|
|
105
|
-
//
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
//
|
|
111
|
-
//
|
|
112
|
-
//
|
|
113
|
-
// restore-in-finally was destructive: if the process died between
|
|
114
|
-
// write and restore, the user's Move.toml stayed mutated.
|
|
87
|
+
// Format the private key into AIP-80 shape so the Movement CLI
|
|
88
|
+
// doesn't emit its raw-hex deprecation warning. `formatPrivateKey`
|
|
89
|
+
// is idempotent for already-prefixed inputs.
|
|
90
|
+
const formattedPrivateKey = PrivateKey.formatPrivateKey(config.privateKey, PrivateKeyVariants.Ed25519);
|
|
91
|
+
// Move.toml is NOT mutated. All address overrides flow through
|
|
92
|
+
// the `--named-addresses` flag above, which Movement CLI applies
|
|
93
|
+
// during build + publish. Rewriting Move.toml on disk would risk
|
|
94
|
+
// leaving the user's file mutated if the process died before the
|
|
95
|
+
// restore step.
|
|
115
96
|
let publishOut = "";
|
|
116
97
|
let publishErr = "";
|
|
117
|
-
//
|
|
118
|
-
//
|
|
119
|
-
|
|
120
|
-
//
|
|
121
|
-
//
|
|
122
|
-
|
|
123
|
-
//
|
|
124
|
-
//
|
|
125
|
-
//
|
|
98
|
+
// Pass the private key to Movement CLI via a 0o600 temp file
|
|
99
|
+
// (`--private-key-file <path>`) and the on-chain address via
|
|
100
|
+
// `--sender-account <addr>`. This avoids the CLI's profile-yaml
|
|
101
|
+
// lookup chain entirely — no CWD / HOME / .aptos / .movement
|
|
102
|
+
// dance, no CLI-variant dependency.
|
|
103
|
+
const keyFilePath = writeTempKeyFile(formattedPrivateKey);
|
|
104
|
+
// Register a sync cleanup hook BEFORE invoking the CLI. If the
|
|
105
|
+
// user Ctrl+C's (or the process is SIGTERM'd) between the file
|
|
106
|
+
// write and our finally, the SIGINT handler iterates every
|
|
107
|
+
// registered callback and unlinks this deploy's key file
|
|
108
|
+
// synchronously so the private key never persists on disk after
|
|
109
|
+
// an abnormal exit. The signal-handler path uses the
|
|
110
|
+
// best-effort variant because the event loop is dead and we
|
|
111
|
+
// cannot logger.warning.
|
|
126
112
|
ensureSignalHandler();
|
|
127
|
-
const syncCleanup = () =>
|
|
113
|
+
const syncCleanup = () => removeKeyFileSyncBestEffort(keyFilePath);
|
|
128
114
|
cleanupCallbacks.add(syncCleanup);
|
|
129
|
-
// Add our deploy profile under the unique key. The mutex serializes
|
|
130
|
-
// read-modify-write cycles so concurrent deploys in the same process
|
|
131
|
-
// can't drop each other's profiles. Other user profiles in the same
|
|
132
|
-
// file are preserved untouched.
|
|
133
|
-
await withYamlLock(() => addProfile(movementConfigPath, profile, {
|
|
134
|
-
private_key: cleanPrivateKey,
|
|
135
|
-
public_key: account.publicKey.toString(),
|
|
136
|
-
account: deployerAddress,
|
|
137
|
-
rest_url: config.rpc,
|
|
138
|
-
}));
|
|
139
115
|
try {
|
|
140
|
-
// Execute publish command
|
|
141
|
-
//
|
|
142
|
-
//
|
|
143
|
-
//
|
|
116
|
+
// Execute publish command. Private key reaches the CLI via the
|
|
117
|
+
// temp key file path (--private-key-file) — never on the
|
|
118
|
+
// command line — so it can't leak through `ps aux`. runCli's
|
|
119
|
+
// stdout/stderr redaction still applies as defense in depth
|
|
120
|
+
// for any `ed25519-priv-…` substring that surfaces in CLI
|
|
121
|
+
// output (Movement CLI sometimes echoes the key on error).
|
|
144
122
|
const publishResult = await runCli({
|
|
145
123
|
command: "movement",
|
|
146
124
|
args: [
|
|
@@ -150,8 +128,10 @@ export class Publisher {
|
|
|
150
128
|
safeDir,
|
|
151
129
|
"--url",
|
|
152
130
|
config.rpc,
|
|
153
|
-
"--
|
|
154
|
-
|
|
131
|
+
"--private-key-file",
|
|
132
|
+
keyFilePath,
|
|
133
|
+
"--sender-account",
|
|
134
|
+
deployerAddress,
|
|
155
135
|
"--assume-yes",
|
|
156
136
|
...namedAddrArgs,
|
|
157
137
|
],
|
|
@@ -165,24 +145,20 @@ export class Publisher {
|
|
|
165
145
|
console.error(publishErr.trim());
|
|
166
146
|
}
|
|
167
147
|
finally {
|
|
168
|
-
//
|
|
169
|
-
//
|
|
170
|
-
//
|
|
171
|
-
//
|
|
172
|
-
//
|
|
173
|
-
//
|
|
174
|
-
//
|
|
175
|
-
//
|
|
176
|
-
//
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
`Run 'movement config delete-profile --profile ${profile}' to clean up manually.`);
|
|
183
|
-
});
|
|
184
|
-
// Unregister the sync cleanup hook — normal path. (The signal
|
|
185
|
-
// handler stays installed for the process lifetime; cheap.)
|
|
148
|
+
// Unlink the temp key file via the observable cleanup helper.
|
|
149
|
+
// ENOENT and other already-gone outcomes are benign (null).
|
|
150
|
+
// A non-null Error means the unlink failed AND the file still
|
|
151
|
+
// exists on disk — the private key would persist silently
|
|
152
|
+
// otherwise, so we emit a warning with the manual-cleanup
|
|
153
|
+
// hint. The SIGINT signal handler's sync callback below also
|
|
154
|
+
// tries to remove the same file; if SIGINT fires before this
|
|
155
|
+
// finally runs the file is gone and the next finally call
|
|
156
|
+
// sees ENOENT (benign).
|
|
157
|
+
const cleanupErr = removeKeyFile(keyFilePath);
|
|
158
|
+
if (cleanupErr) {
|
|
159
|
+
logger.warning(`Failed to remove temp key file '${keyFilePath}': ${cleanupErr.message}. ` +
|
|
160
|
+
`The file has mode 0o600 but should be removed manually: rm ${keyFilePath}`);
|
|
161
|
+
}
|
|
186
162
|
cleanupCallbacks.delete(syncCleanup);
|
|
187
163
|
}
|
|
188
164
|
// Extract transaction hash from output via the shared helper
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Publisher.js","sourceRoot":"","sources":["../../src/core/Publisher.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"Publisher.js","sourceRoot":"","sources":["../../src/core/Publisher.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AccountManager.global-state.test.d.ts","sourceRoot":"","sources":["../../../src/core/__tests__/AccountManager.global-state.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
import { afterEach, beforeEach, describe, expect, it } from "vitest";
|
|
2
|
+
import { existsSync, mkdtempSync, rmSync } from "node:fs";
|
|
3
|
+
import { tmpdir } from "node:os";
|
|
4
|
+
import { join } from "node:path";
|
|
5
|
+
import { AccountManager } from "../AccountManager.js";
|
|
6
|
+
/**
|
|
7
|
+
* F8 — Document the two known limitations of `AccountManager`:
|
|
8
|
+
*
|
|
9
|
+
* (a) State is class-static. Two harness "sessions" in the same
|
|
10
|
+
* process share the pool, the labelMap, and the private-key
|
|
11
|
+
* map. A label re-used across sessions overwrites the entry.
|
|
12
|
+
* This is intentional per `Harness.ts:39-42` ("Two Harness
|
|
13
|
+
* instances in the same process share account labels"). This
|
|
14
|
+
* test captures the contract so a future refactor cannot
|
|
15
|
+
* silently change it.
|
|
16
|
+
*
|
|
17
|
+
* (b) `defaultPoolPath = join(process.cwd(), ".movehat", "accounts")`
|
|
18
|
+
* is evaluated when the module is first imported, NOT lazily on
|
|
19
|
+
* each call. Changing `process.cwd()` after import does not move
|
|
20
|
+
* the save destination. Callers needing per-test isolation must
|
|
21
|
+
* pass an explicit `poolPath` argument.
|
|
22
|
+
*/
|
|
23
|
+
describe("F8 — AccountManager static state and import-time cwd capture", () => {
|
|
24
|
+
let cwdBackup;
|
|
25
|
+
let tmpDir;
|
|
26
|
+
beforeEach(() => {
|
|
27
|
+
AccountManager.clearPool();
|
|
28
|
+
cwdBackup = process.cwd();
|
|
29
|
+
tmpDir = mkdtempSync(join(tmpdir(), "movehat-f8-"));
|
|
30
|
+
});
|
|
31
|
+
afterEach(() => {
|
|
32
|
+
AccountManager.clearPool();
|
|
33
|
+
if (process.cwd() !== cwdBackup) {
|
|
34
|
+
process.chdir(cwdBackup);
|
|
35
|
+
}
|
|
36
|
+
rmSync(tmpDir, { recursive: true, force: true });
|
|
37
|
+
});
|
|
38
|
+
it("(a) re-creating an account with an existing label overwrites the labelMap entry", () => {
|
|
39
|
+
const first = AccountManager.createAccount("alice");
|
|
40
|
+
const second = AccountManager.createAccount("alice");
|
|
41
|
+
expect(second.accountAddress.toString()).not.toBe(first.accountAddress.toString());
|
|
42
|
+
const lookup = AccountManager.getAccountByLabel("alice");
|
|
43
|
+
expect(lookup).toBeDefined();
|
|
44
|
+
expect(lookup.accountAddress.toString()).toBe(second.accountAddress.toString());
|
|
45
|
+
// The first account is still in the pool (keyed by address), only
|
|
46
|
+
// the label binding moved. A second harness session that creates
|
|
47
|
+
// its own "alice" will silently shadow the first — this is the
|
|
48
|
+
// documented Harness limitation. exportPrivateKeys reflects the
|
|
49
|
+
// current label binding (i.e. the second account).
|
|
50
|
+
const exportedKeys = AccountManager.exportPrivateKeys(["alice"]);
|
|
51
|
+
expect(exportedKeys.alice).toBeTypeOf("string");
|
|
52
|
+
expect(exportedKeys.alice.length).toBeGreaterThan(0);
|
|
53
|
+
});
|
|
54
|
+
it("(b) saveAccountPool ignores a process.chdir after import; defaults to the import-time cwd", () => {
|
|
55
|
+
AccountManager.createAccount("bob");
|
|
56
|
+
process.chdir(tmpDir);
|
|
57
|
+
// No path argument → uses defaultPoolPath, which was set at module
|
|
58
|
+
// load time before this chdir.
|
|
59
|
+
AccountManager.saveAccountPool();
|
|
60
|
+
// The pool file must NOT appear under the freshly-chdir'd cwd.
|
|
61
|
+
const expectedAtNewCwd = join(tmpDir, ".movehat", "accounts", "test-pool.json");
|
|
62
|
+
expect(existsSync(expectedAtNewCwd)).toBe(false);
|
|
63
|
+
// Sanity check: explicit poolPath does land where the caller asked.
|
|
64
|
+
const explicit = join(tmpDir, "explicit");
|
|
65
|
+
AccountManager.saveAccountPool(explicit);
|
|
66
|
+
expect(existsSync(join(explicit, "test-pool.json"))).toBe(true);
|
|
67
|
+
});
|
|
68
|
+
});
|
|
69
|
+
//# sourceMappingURL=AccountManager.global-state.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AccountManager.global-state.test.js","sourceRoot":"","sources":["../../../src/core/__tests__/AccountManager.global-state.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"movementProfile.test.d.ts","sourceRoot":"","sources":["../../../src/core/__tests__/movementProfile.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,112 @@
|
|
|
1
|
+
import { describe, it, expect, beforeEach, afterEach } from "vitest";
|
|
2
|
+
import { chmodSync, existsSync, mkdirSync, mkdtempSync, rmSync, writeFileSync, } from "node:fs";
|
|
3
|
+
import { tmpdir } from "node:os";
|
|
4
|
+
import { join } from "node:path";
|
|
5
|
+
import { removeKeyFile, removeKeyFileSyncBestEffort, writeTempKeyFile, } from "../movementProfile.js";
|
|
6
|
+
/**
|
|
7
|
+
* Unit tests for the two distinct cleanup helpers in movementProfile:
|
|
8
|
+
*
|
|
9
|
+
* - `removeKeyFileSyncBestEffort`: for SIGINT/SIGTERM handlers where
|
|
10
|
+
* the event loop is dead. Never throws, never logs, always returns
|
|
11
|
+
* void. We only test that it doesn't throw.
|
|
12
|
+
*
|
|
13
|
+
* - `removeKeyFile`: for normal `finally` cleanup paths. Returns
|
|
14
|
+
* `null` when the file is gone (removed OR already absent — both
|
|
15
|
+
* are benign), and returns an `Error` only when the file STILL
|
|
16
|
+
* exists on disk after the unlink attempt failed. The Error path
|
|
17
|
+
* is exactly the case the caller must surface as a warning,
|
|
18
|
+
* because a private-key temp file would otherwise persist
|
|
19
|
+
* silently.
|
|
20
|
+
*/
|
|
21
|
+
describe("movementProfile cleanup helpers", () => {
|
|
22
|
+
let scratchDir;
|
|
23
|
+
beforeEach(() => {
|
|
24
|
+
scratchDir = mkdtempSync(join(tmpdir(), "movehat-profile-test-"));
|
|
25
|
+
});
|
|
26
|
+
afterEach(() => {
|
|
27
|
+
if (existsSync(scratchDir)) {
|
|
28
|
+
// Force chmod in case a test left it un-removable, then rmSync.
|
|
29
|
+
try {
|
|
30
|
+
chmodSync(scratchDir, 0o700);
|
|
31
|
+
}
|
|
32
|
+
catch {
|
|
33
|
+
/* best-effort */
|
|
34
|
+
}
|
|
35
|
+
rmSync(scratchDir, { recursive: true, force: true });
|
|
36
|
+
}
|
|
37
|
+
});
|
|
38
|
+
describe("writeTempKeyFile", () => {
|
|
39
|
+
it("creates a 0o600 file in os.tmpdir() with the key as contents", () => {
|
|
40
|
+
const path = writeTempKeyFile("ed25519-priv-0x" + "a".repeat(64));
|
|
41
|
+
try {
|
|
42
|
+
expect(path.startsWith(tmpdir())).toBe(true);
|
|
43
|
+
expect(path).toMatch(/movehat-key-/);
|
|
44
|
+
expect(existsSync(path)).toBe(true);
|
|
45
|
+
}
|
|
46
|
+
finally {
|
|
47
|
+
if (existsSync(path))
|
|
48
|
+
rmSync(path);
|
|
49
|
+
}
|
|
50
|
+
});
|
|
51
|
+
});
|
|
52
|
+
describe("removeKeyFileSyncBestEffort", () => {
|
|
53
|
+
it("removes an existing file", () => {
|
|
54
|
+
const path = join(scratchDir, "key");
|
|
55
|
+
writeFileSync(path, "x", { mode: 0o600 });
|
|
56
|
+
removeKeyFileSyncBestEffort(path);
|
|
57
|
+
expect(existsSync(path)).toBe(false);
|
|
58
|
+
});
|
|
59
|
+
it("does not throw when the file is already gone", () => {
|
|
60
|
+
const path = join(scratchDir, "never-existed");
|
|
61
|
+
expect(() => removeKeyFileSyncBestEffort(path)).not.toThrow();
|
|
62
|
+
});
|
|
63
|
+
it("does not throw when the path is a non-empty directory (would fail in stricter callers)", () => {
|
|
64
|
+
const dirPath = join(scratchDir, "i-am-a-directory");
|
|
65
|
+
mkdirSync(dirPath);
|
|
66
|
+
writeFileSync(join(dirPath, "child"), "x");
|
|
67
|
+
expect(() => removeKeyFileSyncBestEffort(dirPath)).not.toThrow();
|
|
68
|
+
// The dir still exists — best-effort doesn't fight EISDIR.
|
|
69
|
+
expect(existsSync(dirPath)).toBe(true);
|
|
70
|
+
});
|
|
71
|
+
});
|
|
72
|
+
describe("removeKeyFile", () => {
|
|
73
|
+
it("returns null when the file is removed cleanly", () => {
|
|
74
|
+
const path = join(scratchDir, "key-to-remove");
|
|
75
|
+
writeFileSync(path, "x", { mode: 0o600 });
|
|
76
|
+
const err = removeKeyFile(path);
|
|
77
|
+
expect(err).toBeNull();
|
|
78
|
+
expect(existsSync(path)).toBe(false);
|
|
79
|
+
});
|
|
80
|
+
it("returns null when the file was already gone (ENOENT is benign)", () => {
|
|
81
|
+
const path = join(scratchDir, "never-existed");
|
|
82
|
+
const err = removeKeyFile(path);
|
|
83
|
+
expect(err).toBeNull();
|
|
84
|
+
});
|
|
85
|
+
it("returns null when the file disappears between the unlink attempt and the existsSync check (race)", () => {
|
|
86
|
+
// Hard to provoke a real race deterministically. The contract is
|
|
87
|
+
// documented; the previous test covers the ENOENT short-circuit
|
|
88
|
+
// which is the common race outcome.
|
|
89
|
+
const path = join(scratchDir, "raced");
|
|
90
|
+
const err = removeKeyFile(path);
|
|
91
|
+
expect(err).toBeNull();
|
|
92
|
+
});
|
|
93
|
+
it("returns an Error when the path is a directory AND still exists post-attempt", () => {
|
|
94
|
+
// unlinkSync on a directory throws EISDIR (or EPERM on some
|
|
95
|
+
// platforms). existsSync afterwards still returns true, so this
|
|
96
|
+
// is the "preocupante" path the caller must surface as a warning
|
|
97
|
+
// — the file (here, a directory occupying the key-file path) is
|
|
98
|
+
// still on disk.
|
|
99
|
+
const dirPath = join(scratchDir, "key-but-actually-a-dir");
|
|
100
|
+
mkdirSync(dirPath);
|
|
101
|
+
writeFileSync(join(dirPath, "child"), "x"); // make sure it's not empty
|
|
102
|
+
const err = removeKeyFile(dirPath);
|
|
103
|
+
expect(err).not.toBeNull();
|
|
104
|
+
expect(err).toBeInstanceOf(Error);
|
|
105
|
+
// Error code is platform-dependent (EISDIR on linux, EPERM on
|
|
106
|
+
// macos), so just assert we got something Error-shaped.
|
|
107
|
+
expect(err.code).toMatch(/^E/);
|
|
108
|
+
expect(existsSync(dirPath)).toBe(true);
|
|
109
|
+
});
|
|
110
|
+
});
|
|
111
|
+
});
|
|
112
|
+
//# sourceMappingURL=movementProfile.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"movementProfile.test.js","sourceRoot":"","sources":["../../../src/core/__tests__/movementProfile.test.ts"],"names":[],"mappings":"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"}
|
package/dist/core/config.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { pathToFileURL } from "url";
|
|
2
2
|
import { join } from "path";
|
|
3
3
|
import { existsSync, statSync } from "fs";
|
|
4
|
-
import { Account, Ed25519PrivateKey } from "@aptos-labs/ts-sdk";
|
|
4
|
+
import { Account, Ed25519PrivateKey, PrivateKey, PrivateKeyVariants } from "@aptos-labs/ts-sdk";
|
|
5
5
|
// Keyed by resolved absolute path. One entry per config file the process
|
|
6
6
|
// has loaded. Closes #62 — the previous `?t=Date.now()` cache-bust
|
|
7
7
|
// created a fresh Node loader module per call.
|
|
@@ -213,11 +213,12 @@ function deriveAccountAddress(privateKeyHex) {
|
|
|
213
213
|
if (!privateKeyHex)
|
|
214
214
|
return "";
|
|
215
215
|
try {
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
216
|
+
// Format into AIP-80 shape so the SDK doesn't emit a deprecation
|
|
217
|
+
// warning on each derivation. `formatPrivateKey` is idempotent for
|
|
218
|
+
// already-prefixed inputs.
|
|
219
|
+
const formatted = PrivateKey.formatPrivateKey(privateKeyHex, PrivateKeyVariants.Ed25519);
|
|
219
220
|
const account = Account.fromPrivateKey({
|
|
220
|
-
privateKey: new Ed25519PrivateKey(
|
|
221
|
+
privateKey: new Ed25519PrivateKey(formatted),
|
|
221
222
|
});
|
|
222
223
|
return account.accountAddress.toString();
|
|
223
224
|
}
|
package/dist/core/config.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/core/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,KAAK,CAAC;AACpC,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAC5B,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,IAAI,CAAC;AAC1C,OAAO,EAAE,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/core/config.ts"],"names":[],"mappings":"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"}
|
package/dist/core/contract.d.ts
CHANGED
|
@@ -13,8 +13,5 @@ export declare class MoveContract {
|
|
|
13
13
|
view<T = unknown>(functionName: string, args?: any[], typeArgs?: string[]): Promise<T>;
|
|
14
14
|
getModuleId(): string;
|
|
15
15
|
}
|
|
16
|
-
/**
|
|
17
|
-
* Factory function to create a contract instance
|
|
18
|
-
*/
|
|
19
16
|
export declare function getContract(aptos: Aptos, moduleAddress: string, moduleName: string): MoveContract;
|
|
20
17
|
//# sourceMappingURL=contract.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"contract.d.ts","sourceRoot":"","sources":["../../src/core/contract.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,OAAO,EACP,KAAK,EAGN,MAAM,oBAAoB,CAAC;AAG5B,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,OAAO,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,qBAAa,YAAY;IAErB,OAAO,CAAC,KAAK;IACb,OAAO,CAAC,aAAa;IACrB,OAAO,CAAC,UAAU;gBAFV,KAAK,EAAE,KAAK,EACZ,aAAa,EAAE,MAAM,EACrB,UAAU,EAAE,MAAM;IAGtB,IAAI,CACR,MAAM,EAAE,OAAO,EACf,YAAY,EAAE,MAAM,EAMpB,IAAI,GAAE,GAAG,EAAO,EAChB,QAAQ,GAAE,MAAM,EAAO,GACtB,OAAO,CAAC,iBAAiB,CAAC;IAwCvB,IAAI,CAAC,CAAC,GAAG,OAAO,EACpB,YAAY,EAAE,MAAM,EAGpB,IAAI,GAAE,GAAG,EAAO,EAChB,QAAQ,GAAE,MAAM,EAAO,GACtB,OAAO,CAAC,CAAC,CAAC;IAcb,WAAW,IAAI,MAAM;CAGtB;AAED
|
|
1
|
+
{"version":3,"file":"contract.d.ts","sourceRoot":"","sources":["../../src/core/contract.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,OAAO,EACP,KAAK,EAGN,MAAM,oBAAoB,CAAC;AAG5B,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,OAAO,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,qBAAa,YAAY;IAErB,OAAO,CAAC,KAAK;IACb,OAAO,CAAC,aAAa;IACrB,OAAO,CAAC,UAAU;gBAFV,KAAK,EAAE,KAAK,EACZ,aAAa,EAAE,MAAM,EACrB,UAAU,EAAE,MAAM;IAGtB,IAAI,CACR,MAAM,EAAE,OAAO,EACf,YAAY,EAAE,MAAM,EAMpB,IAAI,GAAE,GAAG,EAAO,EAChB,QAAQ,GAAE,MAAM,EAAO,GACtB,OAAO,CAAC,iBAAiB,CAAC;IAwCvB,IAAI,CAAC,CAAC,GAAG,OAAO,EACpB,YAAY,EAAE,MAAM,EAGpB,IAAI,GAAE,GAAG,EAAO,EAChB,QAAQ,GAAE,MAAM,EAAO,GACtB,OAAO,CAAC,CAAC,CAAC;IAcb,WAAW,IAAI,MAAM;CAGtB;AAED,wBAAgB,WAAW,CACvB,KAAK,EAAE,KAAK,EACZ,aAAa,EAAE,MAAM,EACrB,UAAU,EAAE,MAAM,GACnB,YAAY,CAEd"}
|
package/dist/core/contract.js
CHANGED
|
@@ -61,9 +61,6 @@ export class MoveContract {
|
|
|
61
61
|
return `${this.moduleAddress}::${this.moduleName}`;
|
|
62
62
|
}
|
|
63
63
|
}
|
|
64
|
-
/**
|
|
65
|
-
* Factory function to create a contract instance
|
|
66
|
-
*/
|
|
67
64
|
export function getContract(aptos, moduleAddress, moduleName) {
|
|
68
65
|
return new MoveContract(aptos, moduleAddress, moduleName);
|
|
69
66
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"contract.js","sourceRoot":"","sources":["../../src/core/contract.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AAQxC,MAAM,OAAO,YAAY;IAEb;IACA;IACA;IAHV,YACU,KAAY,EACZ,aAAqB,EACrB,UAAkB;QAFlB,UAAK,GAAL,KAAK,CAAO;QACZ,kBAAa,GAAb,aAAa,CAAQ;QACrB,eAAU,GAAV,UAAU,CAAQ;IACzB,CAAC;IAEJ,KAAK,CAAC,IAAI,CACR,MAAe,EACf,YAAoB;IACpB,oEAAoE;IACpE,kEAAkE;IAClE,+DAA+D;IAC/D,+DAA+D;IAC/D,sBAAsB;IACtB,OAAc,EAAE,EAChB,WAAqB,EAAE;QAEvB,MAAM,gBAAgB,GAAG,GAAG,IAAI,CAAC,aAAa,KAAK,IAAI,CAAC,UAAU,KAAK,YAAY,EAAE,CAAC;QAEtF,MAAM,CAAC,IAAI,CAAC,WAAW,gBAAgB,KAAK,CAAC,CAAC;QAE9C,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,KAAK,CAAC,MAAM,CAAC;YAC5D,MAAM,EAAE,MAAM,CAAC,cAAc;YAC7B,IAAI,EAAE;gBACJ,QAAQ,EAAE,gBAAkC;gBAC5C,aAAa,EAAE,QAAQ;gBACvB,iBAAiB,EAAE,IAAI;aACxB;SACF,CAAC,CAAC;QAEH,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC;YAC5C,MAAM;YACN,WAAW;SACZ,CAAC,CAAC;QAEH,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,MAAM,CAAC,MAAM,CAAC;YAC9D,WAAW;YACX,mBAAmB,EAAE,SAAS;SAC/B,CAAC,CAAC;QAEH,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,kBAAkB,CAAC;YACnD,eAAe,EAAE,YAAY,CAAC,IAAI;SACnC,CAAC,CAAC;QAEH,MAAM,CAAC,OAAO,CACZ,eAAe,YAAY,CAAC,IAAI,2BAA2B,QAAQ,CAAC,SAAS,EAAE,CAChF,CAAC;QACF,MAAM,CAAC,OAAO,EAAE,CAAC;QAEjB,OAAO;YACL,IAAI,EAAE,YAAY,CAAC,IAAI;YACvB,OAAO,EAAE,QAAQ,CAAC,OAAO;YACzB,SAAS,EAAE,QAAQ,CAAC,SAAS;SAC9B,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,IAAI,CACR,YAAoB;IACpB,iEAAiE;IACjE,6CAA6C;IAC7C,OAAc,EAAE,EAChB,WAAqB,EAAE;QAEvB,MAAM,gBAAgB,GAAG,GAAG,IAAI,CAAC,aAAa,KAAK,IAAI,CAAC,UAAU,KAAK,YAAY,EAAE,CAAC;QAEtF,MAAM,OAAO,GAA0B;YACrC,QAAQ,EAAE,gBAAkC;YAC5C,aAAa,EAAE,QAAQ;YACvB,iBAAiB,EAAE,IAAI;SACxB,CAAC;QAEF,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC;QAElD,OAAO,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAM,CAAC;IACzD,CAAC;IAED,WAAW;QACT,OAAO,GAAG,IAAI,CAAC,aAAa,KAAK,IAAI,CAAC,UAAU,EAAE,CAAC;IACrD,CAAC;CACF;AAED
|
|
1
|
+
{"version":3,"file":"contract.js","sourceRoot":"","sources":["../../src/core/contract.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AAQxC,MAAM,OAAO,YAAY;IAEb;IACA;IACA;IAHV,YACU,KAAY,EACZ,aAAqB,EACrB,UAAkB;QAFlB,UAAK,GAAL,KAAK,CAAO;QACZ,kBAAa,GAAb,aAAa,CAAQ;QACrB,eAAU,GAAV,UAAU,CAAQ;IACzB,CAAC;IAEJ,KAAK,CAAC,IAAI,CACR,MAAe,EACf,YAAoB;IACpB,oEAAoE;IACpE,kEAAkE;IAClE,+DAA+D;IAC/D,+DAA+D;IAC/D,sBAAsB;IACtB,OAAc,EAAE,EAChB,WAAqB,EAAE;QAEvB,MAAM,gBAAgB,GAAG,GAAG,IAAI,CAAC,aAAa,KAAK,IAAI,CAAC,UAAU,KAAK,YAAY,EAAE,CAAC;QAEtF,MAAM,CAAC,IAAI,CAAC,WAAW,gBAAgB,KAAK,CAAC,CAAC;QAE9C,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,KAAK,CAAC,MAAM,CAAC;YAC5D,MAAM,EAAE,MAAM,CAAC,cAAc;YAC7B,IAAI,EAAE;gBACJ,QAAQ,EAAE,gBAAkC;gBAC5C,aAAa,EAAE,QAAQ;gBACvB,iBAAiB,EAAE,IAAI;aACxB;SACF,CAAC,CAAC;QAEH,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC;YAC5C,MAAM;YACN,WAAW;SACZ,CAAC,CAAC;QAEH,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,MAAM,CAAC,MAAM,CAAC;YAC9D,WAAW;YACX,mBAAmB,EAAE,SAAS;SAC/B,CAAC,CAAC;QAEH,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,kBAAkB,CAAC;YACnD,eAAe,EAAE,YAAY,CAAC,IAAI;SACnC,CAAC,CAAC;QAEH,MAAM,CAAC,OAAO,CACZ,eAAe,YAAY,CAAC,IAAI,2BAA2B,QAAQ,CAAC,SAAS,EAAE,CAChF,CAAC;QACF,MAAM,CAAC,OAAO,EAAE,CAAC;QAEjB,OAAO;YACL,IAAI,EAAE,YAAY,CAAC,IAAI;YACvB,OAAO,EAAE,QAAQ,CAAC,OAAO;YACzB,SAAS,EAAE,QAAQ,CAAC,SAAS;SAC9B,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,IAAI,CACR,YAAoB;IACpB,iEAAiE;IACjE,6CAA6C;IAC7C,OAAc,EAAE,EAChB,WAAqB,EAAE;QAEvB,MAAM,gBAAgB,GAAG,GAAG,IAAI,CAAC,aAAa,KAAK,IAAI,CAAC,UAAU,KAAK,YAAY,EAAE,CAAC;QAEtF,MAAM,OAAO,GAA0B;YACrC,QAAQ,EAAE,gBAAkC;YAC5C,aAAa,EAAE,QAAQ;YACvB,iBAAiB,EAAE,IAAI;SACxB,CAAC;QAEF,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC;QAElD,OAAO,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAM,CAAC;IACzD,CAAC;IAED,WAAW;QACT,OAAO,GAAG,IAAI,CAAC,aAAa,KAAK,IAAI,CAAC,UAAU,EAAE,CAAC;IACrD,CAAC;CACF;AAED,MAAM,UAAU,WAAW,CACvB,KAAY,EACZ,aAAqB,EACrB,UAAkB;IAElB,OAAO,IAAI,YAAY,CAAC,KAAK,EAAE,aAAa,EAAE,UAAU,CAAC,CAAC;AAC9D,CAAC"}
|