@edge-protocol/sdk 0.1.1 → 0.4.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/dist/core/EdgePass.d.ts +6 -2
- package/dist/core/EdgePass.d.ts.map +1 -1
- package/dist/core/EdgePass.js +22 -23
- package/dist/core/EdgePass.js.map +1 -1
- package/dist/utils/constants.d.ts +43 -0
- package/dist/utils/constants.d.ts.map +1 -1
- package/dist/utils/constants.js +55 -13
- package/dist/utils/constants.js.map +1 -1
- package/package.json +7 -8
package/dist/core/EdgePass.d.ts
CHANGED
|
@@ -1,14 +1,18 @@
|
|
|
1
1
|
import { Transaction } from "@mysten/sui/transactions";
|
|
2
2
|
import { EdgePassConfig, EdgePassObject, TransactionRequest, TransactionOutcome, EdgeSDKConfig } from "../utils/types";
|
|
3
|
+
import { EdgePassTemplate } from "../utils/constants";
|
|
3
4
|
export declare class EdgePass {
|
|
4
5
|
private client;
|
|
5
6
|
private engine;
|
|
6
7
|
private config;
|
|
7
8
|
constructor(config: EdgeSDKConfig);
|
|
9
|
+
static fromTemplate(template: EdgePassTemplate, overrides: Partial<EdgePassConfig> & {
|
|
10
|
+
owner: string;
|
|
11
|
+
}): EdgePassConfig;
|
|
8
12
|
create(passConfig: EdgePassConfig, signer: {
|
|
9
|
-
signAndExecute: (tx: Transaction) => Promise<{
|
|
13
|
+
signAndExecute: (tx: Transaction, kindBytes: string) => Promise<{
|
|
10
14
|
digest: string;
|
|
11
|
-
objectId?: string;
|
|
15
|
+
objectId?: string | null;
|
|
12
16
|
}>;
|
|
13
17
|
}): Promise<EdgePassObject>;
|
|
14
18
|
execute(pass: EdgePassObject, request: TransactionRequest, signer: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EdgePass.d.ts","sourceRoot":"","sources":["../../src/core/EdgePass.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;
|
|
1
|
+
{"version":3,"file":"EdgePass.d.ts","sourceRoot":"","sources":["../../src/core/EdgePass.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAEvD,OAAO,EACL,cAAc,EACd,cAAc,EACd,kBAAkB,EAClB,kBAAkB,EAClB,aAAa,EACd,MAAM,gBAAgB,CAAC;AAGxB,OAAO,EAKL,gBAAgB,EACjB,MAAM,oBAAoB,CAAC;AAK5B,qBAAa,QAAQ;IACnB,OAAO,CAAC,MAAM,CAAY;IAC1B,OAAO,CAAC,MAAM,CAAkB;IAChC,OAAO,CAAC,MAAM,CAAgB;gBAElB,MAAM,EAAE,aAAa;IAMjC,MAAM,CAAC,YAAY,CACjB,QAAQ,EAAE,gBAAgB,EAC1B,SAAS,EAAE,OAAO,CAAC,cAAc,CAAC,GAAG;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,GACrD,cAAc;IASX,MAAM,CACV,UAAU,EAAE,cAAc,EAC1B,MAAM,EAAE;QAAE,cAAc,EAAE,CAAC,EAAE,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,KAAK,OAAO,CAAC;YAAE,MAAM,EAAE,MAAM,CAAC;YAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;SAAE,CAAC,CAAA;KAAE,GACxH,OAAO,CAAC,cAAc,CAAC;IAsCpB,OAAO,CACX,IAAI,EAAE,cAAc,EACpB,OAAO,EAAE,kBAAkB,EAC3B,MAAM,EAAE;QAAE,cAAc,EAAE,CAAC,EAAE,EAAE,WAAW,KAAK,OAAO,CAAC;YAAE,MAAM,EAAE,MAAM,CAAA;SAAE,CAAC,CAAA;KAAE,GAC3E,OAAO,CAAC,kBAAkB,CAAC;IAI9B,QAAQ,CAAC,IAAI,EAAE,cAAc,EAAE,OAAO,EAAE,kBAAkB;IAIpD,KAAK,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,GAAG,IAAI,CAAC;IAIvD,MAAM,CACV,IAAI,EAAE,cAAc,EACpB,MAAM,EAAE;QAAE,cAAc,EAAE,CAAC,EAAE,EAAE,WAAW,KAAK,OAAO,CAAC;YAAE,MAAM,EAAE,MAAM,CAAA;SAAE,CAAC,CAAA;KAAE,GAC3E,OAAO,CAAC;QAAE,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;IAW9B,eAAe,CAAC,IAAI,EAAE,cAAc,GAAG,MAAM;IAI7C,OAAO,CAAC,IAAI,EAAE,cAAc,GAAG,OAAO;CAGvC"}
|
package/dist/core/EdgePass.js
CHANGED
|
@@ -1,14 +1,25 @@
|
|
|
1
1
|
import { SuiClient } from "@mysten/sui/client";
|
|
2
2
|
import { Transaction } from "@mysten/sui/transactions";
|
|
3
|
+
import { toBase64 } from "@mysten/sui/utils";
|
|
3
4
|
import { PolicyEngine } from "./PolicyEngine";
|
|
4
5
|
import { ExecutionEngine } from "./ExecutionEngine";
|
|
5
|
-
import { NETWORK_URLS, EDGE_PACKAGE_ID, DEFAULT_GAS_BUDGET } from "../utils/constants";
|
|
6
|
+
import { NETWORK_URLS, EDGE_PACKAGE_ID, DEFAULT_GAS_BUDGET, EDGE_TEMPLATES, } from "../utils/constants";
|
|
7
|
+
// Sui Clock object ID — shared object, always the same address
|
|
8
|
+
const SUI_CLOCK_OBJECT_ID = '0x0000000000000000000000000000000000000000000000000000000000000006';
|
|
6
9
|
export class EdgePass {
|
|
7
10
|
constructor(config) {
|
|
8
11
|
this.config = config;
|
|
9
12
|
this.client = new SuiClient({ url: NETWORK_URLS[config.network] });
|
|
10
13
|
this.engine = new ExecutionEngine(config.network);
|
|
11
14
|
}
|
|
15
|
+
static fromTemplate(template, overrides) {
|
|
16
|
+
const base = EDGE_TEMPLATES[template];
|
|
17
|
+
return {
|
|
18
|
+
...base,
|
|
19
|
+
...overrides,
|
|
20
|
+
approvedMerchants: overrides.approvedMerchants ?? base.approvedMerchants,
|
|
21
|
+
};
|
|
22
|
+
}
|
|
12
23
|
async create(passConfig, signer) {
|
|
13
24
|
const tx = new Transaction();
|
|
14
25
|
tx.setGasBudget(DEFAULT_GAS_BUDGET);
|
|
@@ -20,32 +31,20 @@ export class EdgePass {
|
|
|
20
31
|
tx.pure.u64(passConfig.autoThreshold),
|
|
21
32
|
tx.pure.u64(passConfig.escalateThreshold),
|
|
22
33
|
tx.pure.u64(passConfig.expiryMs),
|
|
23
|
-
tx.pure.vector(
|
|
24
|
-
tx.
|
|
34
|
+
tx.pure.vector('string', passConfig.approvedMerchants),
|
|
35
|
+
tx.sharedObjectRef({
|
|
36
|
+
objectId: SUI_CLOCK_OBJECT_ID,
|
|
37
|
+
initialSharedVersion: 1,
|
|
38
|
+
mutable: false,
|
|
39
|
+
}),
|
|
25
40
|
],
|
|
26
41
|
});
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
let objectId = result.objectId || "";
|
|
31
|
-
if (!objectId && result.digest) {
|
|
32
|
-
try {
|
|
33
|
-
const txResult = await this.client.getTransactionBlock({
|
|
34
|
-
digest: result.digest,
|
|
35
|
-
options: { showObjectChanges: true },
|
|
36
|
-
});
|
|
37
|
-
const created = txResult.objectChanges?.find((c) => c.type === "created" && c.objectType?.includes("edge_pass::EdgePass"));
|
|
38
|
-
if (created && created.type === "created") {
|
|
39
|
-
objectId = created.objectId;
|
|
40
|
-
}
|
|
41
|
-
}
|
|
42
|
-
catch (e) {
|
|
43
|
-
console.error("Could not fetch object ID from tx:", e);
|
|
44
|
-
}
|
|
45
|
-
}
|
|
42
|
+
// All arguments statically known — no RPC needed, instant build
|
|
43
|
+
const kindBytes = toBase64(await tx.build({ onlyTransactionKind: true }));
|
|
44
|
+
const result = await signer.signAndExecute(tx, kindBytes);
|
|
46
45
|
const now = Date.now();
|
|
47
46
|
return {
|
|
48
|
-
id: objectId,
|
|
47
|
+
id: result.objectId || result.digest,
|
|
49
48
|
config: passConfig,
|
|
50
49
|
spent: BigInt(0),
|
|
51
50
|
active: true,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EdgePass.js","sourceRoot":"","sources":["../../src/core/EdgePass.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAC/C,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;
|
|
1
|
+
{"version":3,"file":"EdgePass.js","sourceRoot":"","sources":["../../src/core/EdgePass.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,6 +2,49 @@ export declare const MIST_PER_SUI: bigint;
|
|
|
2
2
|
export declare const NETWORK_URLS: Record<string, string>;
|
|
3
3
|
export declare const EDGE_PACKAGE_ID: Record<string, string>;
|
|
4
4
|
export declare const DEFAULT_GAS_BUDGET: bigint;
|
|
5
|
+
export declare const EDGE_TEMPLATES: {
|
|
6
|
+
readonly festival: {
|
|
7
|
+
readonly budget: bigint;
|
|
8
|
+
readonly autoThreshold: bigint;
|
|
9
|
+
readonly escalateThreshold: bigint;
|
|
10
|
+
readonly maxPerTransaction: bigint;
|
|
11
|
+
readonly expiryMs: number;
|
|
12
|
+
readonly approvedMerchants: string[];
|
|
13
|
+
};
|
|
14
|
+
readonly gaming: {
|
|
15
|
+
readonly budget: bigint;
|
|
16
|
+
readonly autoThreshold: bigint;
|
|
17
|
+
readonly escalateThreshold: bigint;
|
|
18
|
+
readonly maxPerTransaction: bigint;
|
|
19
|
+
readonly expiryMs: number;
|
|
20
|
+
readonly approvedMerchants: string[];
|
|
21
|
+
};
|
|
22
|
+
readonly subscription: {
|
|
23
|
+
readonly budget: bigint;
|
|
24
|
+
readonly autoThreshold: bigint;
|
|
25
|
+
readonly escalateThreshold: bigint;
|
|
26
|
+
readonly maxPerTransaction: bigint;
|
|
27
|
+
readonly expiryMs: number;
|
|
28
|
+
readonly approvedMerchants: string[];
|
|
29
|
+
};
|
|
30
|
+
readonly defi: {
|
|
31
|
+
readonly budget: bigint;
|
|
32
|
+
readonly autoThreshold: bigint;
|
|
33
|
+
readonly escalateThreshold: bigint;
|
|
34
|
+
readonly maxPerTransaction: bigint;
|
|
35
|
+
readonly expiryMs: number;
|
|
36
|
+
readonly approvedMerchants: string[];
|
|
37
|
+
};
|
|
38
|
+
readonly enterprise: {
|
|
39
|
+
readonly budget: bigint;
|
|
40
|
+
readonly autoThreshold: bigint;
|
|
41
|
+
readonly escalateThreshold: bigint;
|
|
42
|
+
readonly maxPerTransaction: bigint;
|
|
43
|
+
readonly expiryMs: number;
|
|
44
|
+
readonly approvedMerchants: string[];
|
|
45
|
+
};
|
|
46
|
+
};
|
|
47
|
+
export type EdgePassTemplate = keyof typeof EDGE_TEMPLATES;
|
|
5
48
|
export declare const FESTIVAL_MERCHANTS: string[];
|
|
6
49
|
export declare const FESTIVAL_CONFIG: {
|
|
7
50
|
budget: bigint;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../src/utils/constants.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,YAAY,QAAwB,CAAC;AAElD,eAAO,MAAM,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAI/C,CAAC;
|
|
1
|
+
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../src/utils/constants.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,YAAY,QAAwB,CAAC;AAElD,eAAO,MAAM,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAI/C,CAAC;AAEF,eAAO,MAAM,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAIlD,CAAC;AAEF,eAAO,MAAM,kBAAkB,QAAqB,CAAC;AAIrD,eAAO,MAAM,cAAc;;;;;;;oCAOE,MAAM,EAAE;;;;;;;;oCAQR,MAAM,EAAE;;;;;;;;oCAQR,MAAM,EAAE;;;;;;;;oCAQR,MAAM,EAAE;;;;;;;;oCAQR,MAAM,EAAE;;CAE3B,CAAC;AAEX,MAAM,MAAM,gBAAgB,GAAG,MAAM,OAAO,cAAc,CAAC;AAI3D,eAAO,MAAM,kBAAkB,UAM9B,CAAC;AAEF,eAAO,MAAM,eAAe;;;;;CAK3B,CAAC"}
|
package/dist/utils/constants.js
CHANGED
|
@@ -1,23 +1,65 @@
|
|
|
1
1
|
export const MIST_PER_SUI = BigInt(1000000000);
|
|
2
2
|
export const NETWORK_URLS = {
|
|
3
|
-
mainnet:
|
|
4
|
-
testnet:
|
|
5
|
-
devnet:
|
|
3
|
+
mainnet: 'https://fullnode.mainnet.sui.io',
|
|
4
|
+
testnet: 'https://fullnode.testnet.sui.io',
|
|
5
|
+
devnet: 'https://fullnode.devnet.sui.io',
|
|
6
6
|
};
|
|
7
|
-
// Fill these in after deploying the Move contract
|
|
8
7
|
export const EDGE_PACKAGE_ID = {
|
|
9
|
-
mainnet:
|
|
10
|
-
testnet:
|
|
11
|
-
devnet:
|
|
8
|
+
mainnet: '',
|
|
9
|
+
testnet: '0x9f4065009494aa5acd92a5c72a6c22ce80939b2bddae3b34345459bc98d2501d',
|
|
10
|
+
devnet: '',
|
|
12
11
|
};
|
|
13
12
|
export const DEFAULT_GAS_BUDGET = BigInt(10000000);
|
|
14
|
-
//
|
|
13
|
+
// ── Templates ─────────────────────────────────────────────────────────────
|
|
14
|
+
export const EDGE_TEMPLATES = {
|
|
15
|
+
festival: {
|
|
16
|
+
budget: BigInt(300) * MIST_PER_SUI,
|
|
17
|
+
autoThreshold: BigInt(50) * MIST_PER_SUI,
|
|
18
|
+
escalateThreshold: BigInt(100) * MIST_PER_SUI,
|
|
19
|
+
maxPerTransaction: BigInt(200) * MIST_PER_SUI,
|
|
20
|
+
expiryMs: 48 * 60 * 60 * 1000,
|
|
21
|
+
approvedMerchants: [],
|
|
22
|
+
},
|
|
23
|
+
gaming: {
|
|
24
|
+
budget: BigInt(50) * MIST_PER_SUI,
|
|
25
|
+
autoThreshold: BigInt(2) * MIST_PER_SUI,
|
|
26
|
+
escalateThreshold: BigInt(10) * MIST_PER_SUI,
|
|
27
|
+
maxPerTransaction: BigInt(10) * MIST_PER_SUI,
|
|
28
|
+
expiryMs: 4 * 60 * 60 * 1000,
|
|
29
|
+
approvedMerchants: [],
|
|
30
|
+
},
|
|
31
|
+
subscription: {
|
|
32
|
+
budget: BigInt(200) * MIST_PER_SUI,
|
|
33
|
+
autoThreshold: BigInt(20) * MIST_PER_SUI,
|
|
34
|
+
escalateThreshold: BigInt(50) * MIST_PER_SUI,
|
|
35
|
+
maxPerTransaction: BigInt(50) * MIST_PER_SUI,
|
|
36
|
+
expiryMs: 30 * 24 * 60 * 60 * 1000,
|
|
37
|
+
approvedMerchants: [],
|
|
38
|
+
},
|
|
39
|
+
defi: {
|
|
40
|
+
budget: BigInt(10000) * MIST_PER_SUI,
|
|
41
|
+
autoThreshold: BigInt(500) * MIST_PER_SUI,
|
|
42
|
+
escalateThreshold: BigInt(1000) * MIST_PER_SUI,
|
|
43
|
+
maxPerTransaction: BigInt(2000) * MIST_PER_SUI,
|
|
44
|
+
expiryMs: 7 * 24 * 60 * 60 * 1000,
|
|
45
|
+
approvedMerchants: [],
|
|
46
|
+
},
|
|
47
|
+
enterprise: {
|
|
48
|
+
budget: BigInt(50000) * MIST_PER_SUI,
|
|
49
|
+
autoThreshold: BigInt(1000) * MIST_PER_SUI,
|
|
50
|
+
escalateThreshold: BigInt(5000) * MIST_PER_SUI,
|
|
51
|
+
maxPerTransaction: BigInt(10000) * MIST_PER_SUI,
|
|
52
|
+
expiryMs: 30 * 24 * 60 * 60 * 1000,
|
|
53
|
+
approvedMerchants: [],
|
|
54
|
+
},
|
|
55
|
+
};
|
|
56
|
+
// ── Legacy festival constants (kept for backwards compat) ─────────────────
|
|
15
57
|
export const FESTIVAL_MERCHANTS = [
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
58
|
+
'Shuttle Express',
|
|
59
|
+
'Festival Kitchen',
|
|
60
|
+
'Hydra Bar',
|
|
61
|
+
'Stage Access VIP',
|
|
62
|
+
'Official Merch',
|
|
21
63
|
];
|
|
22
64
|
export const FESTIVAL_CONFIG = {
|
|
23
65
|
budget: BigInt(300) * MIST_PER_SUI,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/utils/constants.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,YAAY,GAAG,MAAM,CAAC,UAAa,CAAC,CAAC;AAElD,MAAM,CAAC,MAAM,YAAY,GAA2B;IAClD,OAAO,EAAE,iCAAiC;IAC1C,OAAO,EAAE,iCAAiC;IAC1C,MAAM,
|
|
1
|
+
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/utils/constants.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,18 +1,12 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@edge-protocol/sdk",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.4.0",
|
|
4
4
|
"description": "Trust delegation primitive for autonomous onchain systems on Sui",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
7
7
|
"files": [
|
|
8
8
|
"dist"
|
|
9
9
|
],
|
|
10
|
-
"scripts": {
|
|
11
|
-
"build": "tsc",
|
|
12
|
-
"dev": "tsc --watch",
|
|
13
|
-
"test": "ts-node --compiler-options '{\"module\":\"CommonJS\"}' src/test.ts",
|
|
14
|
-
"prepublishOnly": "pnpm build"
|
|
15
|
-
},
|
|
16
10
|
"keywords": [
|
|
17
11
|
"sui",
|
|
18
12
|
"zklogin",
|
|
@@ -37,5 +31,10 @@
|
|
|
37
31
|
"devDependencies": {
|
|
38
32
|
"ts-node": "^10.9.2",
|
|
39
33
|
"typescript": "^5.9.3"
|
|
34
|
+
},
|
|
35
|
+
"scripts": {
|
|
36
|
+
"build": "tsc",
|
|
37
|
+
"dev": "tsc --watch",
|
|
38
|
+
"test": "ts-node --compiler-options '{\"module\":\"CommonJS\"}' src/test.ts"
|
|
40
39
|
}
|
|
41
|
-
}
|
|
40
|
+
}
|