@gvnrdao/dh-lit-ops 0.0.2 → 0.0.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/constants/chunks/pkp-data.d.ts.map +1 -1
- package/dist/constants/chunks/pkp-data.js +1 -1
- package/dist/constants/chunks/pkp-data.js.map +1 -1
- package/dist/interfaces/chunks/authentication.d.ts +2 -0
- package/dist/interfaces/chunks/authentication.d.ts.map +1 -1
- package/dist/interfaces/chunks/config.d.ts +14 -2
- package/dist/interfaces/chunks/config.d.ts.map +1 -1
- package/dist/interfaces/chunks/lit-action-execution.d.ts +2 -0
- package/dist/interfaces/chunks/lit-action-execution.d.ts.map +1 -1
- package/dist/modules/action-executor.module.d.ts.map +1 -1
- package/dist/modules/action-executor.module.js +68 -23
- package/dist/modules/action-executor.module.js.map +1 -1
- package/dist/modules/auth-manager.module.d.ts.map +1 -1
- package/dist/modules/auth-manager.module.js +31 -2
- package/dist/modules/auth-manager.module.js.map +1 -1
- package/dist/modules/capacity-master.module.d.ts +42 -0
- package/dist/modules/capacity-master.module.d.ts.map +1 -0
- package/dist/modules/capacity-master.module.js +328 -0
- package/dist/modules/capacity-master.module.js.map +1 -0
- package/dist/modules/client-manager.module.d.ts +3 -0
- package/dist/modules/client-manager.module.d.ts.map +1 -1
- package/dist/modules/client-manager.module.js +21 -2
- package/dist/modules/client-manager.module.js.map +1 -1
- package/dist/modules/lit-ops.module.d.ts +6 -2
- package/dist/modules/lit-ops.module.d.ts.map +1 -1
- package/dist/modules/lit-ops.module.js +177 -69
- package/dist/modules/lit-ops.module.js.map +1 -1
- package/dist/modules/pkp-authorizer.module.d.ts.map +1 -1
- package/dist/modules/pkp-authorizer.module.js +16 -10
- package/dist/modules/pkp-authorizer.module.js.map +1 -1
- package/dist/modules/pkp-macros.module.d.ts +0 -1
- package/dist/modules/pkp-macros.module.d.ts.map +1 -1
- package/dist/modules/pkp-macros.module.js +64 -16
- package/dist/modules/pkp-macros.module.js.map +1 -1
- package/dist/modules/pkp-minter.module.d.ts.map +1 -1
- package/dist/modules/pkp-minter.module.js +76 -45
- package/dist/modules/pkp-minter.module.js.map +1 -1
- package/dist/modules/session-signature-manager.module.d.ts +4 -1
- package/dist/modules/session-signature-manager.module.d.ts.map +1 -1
- package/dist/modules/session-signature-manager.module.js +29 -9
- package/dist/modules/session-signature-manager.module.js.map +1 -1
- package/dist/utils/connection-helpers.d.ts +68 -0
- package/dist/utils/connection-helpers.d.ts.map +1 -0
- package/dist/utils/connection-helpers.js +229 -0
- package/dist/utils/connection-helpers.js.map +1 -0
- package/package.json +8 -8
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pkp-data.d.ts","sourceRoot":"","sources":["../../../src/constants/chunks/pkp-data.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,wCAAwC,CAAC;AAEtE;;;;;GAKG;AACH,eAAO,MAAM,cAAc,EAAE,OAuC5B,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,SAAS,EAAE,OAuCvB,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,WAAW,
|
|
1
|
+
{"version":3,"file":"pkp-data.d.ts","sourceRoot":"","sources":["../../../src/constants/chunks/pkp-data.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,wCAAwC,CAAC;AAEtE;;;;;GAKG;AACH,eAAO,MAAM,cAAc,EAAE,OAuC5B,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,SAAS,EAAE,OAuCvB,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,WAAW,SAAY,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pkp-data.js","sourceRoot":"","sources":["../../../src/constants/chunks/pkp-data.ts"],"names":[],"mappings":";AAAA;;;;;;;;GAQG;;;AAIH;;;;;GAKG;AACU,QAAA,cAAc,GAAY;IACrC,eAAe;IACf,OAAO,EAAE,oEAAoE;IAC7E,SAAS,EACP,sIAAsI;IACxI,UAAU,EAAE,4CAA4C;IAExD,mEAAmE;IACnE,aAAa,EACX,wEAAwE,EAAE,2BAA2B;IACvG,gBAAgB,EACd,wEAAwE;IAC1E,mBAAmB,EACjB,wEAAwE;IAC1E,qBAAqB,EAAE,CAAC,EAAE,2CAA2C;IAErE,sBAAsB;IACtB,qBAAqB,EACnB,oEAAoE;IACtE,mBAAmB,EACjB,oEAAoE;IACtE,WAAW,EAAE,KAAK;IAClB,WAAW,EAAE,OAAO;IAEpB,aAAa;IACb,MAAM,EAAE,IAAI;IACZ,MAAM,EAAE,IAAI,EAAE,0CAA0C;IACxD,QAAQ,EAAE,IAAI;IAEd,gBAAgB;IAChB,SAAS,EAAE,0BAA0B;IACrC,OAAO,EAAE,YAAY;IACrB,QAAQ,EAAE,iCAAiC;IAC3C,QAAQ,EAAE,KAAK;IAEf,kBAAkB;IAClB,WAAW,EAAE,IAAI,EAAE,2CAA2C;IAC9D,iBAAiB,EAAE,IAAI,EAAE,kCAAkC;IAC3D,gBAAgB,EAAE,KAAK,EAAE,8CAA8C;CACxE,CAAC;AAEF;;;;GAIG;AACU,QAAA,SAAS,GAAY;IAChC,gEAAgE;IAChE,OAAO,EAAE,oEAAoE;IAC7E,SAAS,EACP,sIAAsI;IACxI,UAAU,EAAE,4CAA4C;IAExD,yCAAyC;IACzC,aAAa,EACX,wEAAwE,EAAE,2BAA2B;IACvG,gBAAgB,EACd,wEAAwE;IAC1E,mBAAmB,EACjB,wEAAwE;IAC1E,qBAAqB,EAAE,CAAC;IAExB,qDAAqD;IACrD,qBAAqB,EACnB,oEAAoE;IACtE,mBAAmB,EACjB,oEAAoE;IACtE,WAAW,EAAE,CAAC;IACd,WAAW,EAAE,CAAC;IAEd,aAAa;IACb,MAAM,EAAE,IAAI,EAAE,2CAA2C;IACzD,MAAM,EAAE,KAAK,EAAE,mBAAmB;IAClC,QAAQ,EAAE,IAAI,EAAE,2CAA2C;IAE3D,gBAAgB;IAChB,SAAS,EAAE,0BAA0B,EAAE,+BAA+B;IACtE,OAAO,EAAE,OAAO;IAChB,QAAQ,EAAE,gBAAgB;IAC1B,QAAQ,EAAE,CAAC;IAEX,kBAAkB;IAClB,WAAW,EAAE,KAAK,EAAE,mBAAmB;IACvC,iBAAiB,EAAE,IAAI,EAAE,kCAAkC;IAC3D,gBAAgB,EAAE,IAAI,EAAE,mBAAmB;CAC5C,CAAC;AAEF;;GAEG;AACU,QAAA,WAAW,GAAG,
|
|
1
|
+
{"version":3,"file":"pkp-data.js","sourceRoot":"","sources":["../../../src/constants/chunks/pkp-data.ts"],"names":[],"mappings":";AAAA;;;;;;;;GAQG;;;AAIH;;;;;GAKG;AACU,QAAA,cAAc,GAAY;IACrC,eAAe;IACf,OAAO,EAAE,oEAAoE;IAC7E,SAAS,EACP,sIAAsI;IACxI,UAAU,EAAE,4CAA4C;IAExD,mEAAmE;IACnE,aAAa,EACX,wEAAwE,EAAE,2BAA2B;IACvG,gBAAgB,EACd,wEAAwE;IAC1E,mBAAmB,EACjB,wEAAwE;IAC1E,qBAAqB,EAAE,CAAC,EAAE,2CAA2C;IAErE,sBAAsB;IACtB,qBAAqB,EACnB,oEAAoE;IACtE,mBAAmB,EACjB,oEAAoE;IACtE,WAAW,EAAE,KAAK;IAClB,WAAW,EAAE,OAAO;IAEpB,aAAa;IACb,MAAM,EAAE,IAAI;IACZ,MAAM,EAAE,IAAI,EAAE,0CAA0C;IACxD,QAAQ,EAAE,IAAI;IAEd,gBAAgB;IAChB,SAAS,EAAE,0BAA0B;IACrC,OAAO,EAAE,YAAY;IACrB,QAAQ,EAAE,iCAAiC;IAC3C,QAAQ,EAAE,KAAK;IAEf,kBAAkB;IAClB,WAAW,EAAE,IAAI,EAAE,2CAA2C;IAC9D,iBAAiB,EAAE,IAAI,EAAE,kCAAkC;IAC3D,gBAAgB,EAAE,KAAK,EAAE,8CAA8C;CACxE,CAAC;AAEF;;;;GAIG;AACU,QAAA,SAAS,GAAY;IAChC,gEAAgE;IAChE,OAAO,EAAE,oEAAoE;IAC7E,SAAS,EACP,sIAAsI;IACxI,UAAU,EAAE,4CAA4C;IAExD,yCAAyC;IACzC,aAAa,EACX,wEAAwE,EAAE,2BAA2B;IACvG,gBAAgB,EACd,wEAAwE;IAC1E,mBAAmB,EACjB,wEAAwE;IAC1E,qBAAqB,EAAE,CAAC;IAExB,qDAAqD;IACrD,qBAAqB,EACnB,oEAAoE;IACtE,mBAAmB,EACjB,oEAAoE;IACtE,WAAW,EAAE,CAAC;IACd,WAAW,EAAE,CAAC;IAEd,aAAa;IACb,MAAM,EAAE,IAAI,EAAE,2CAA2C;IACzD,MAAM,EAAE,KAAK,EAAE,mBAAmB;IAClC,QAAQ,EAAE,IAAI,EAAE,2CAA2C;IAE3D,gBAAgB;IAChB,SAAS,EAAE,0BAA0B,EAAE,+BAA+B;IACtE,OAAO,EAAE,OAAO;IAChB,QAAQ,EAAE,gBAAgB;IAC1B,QAAQ,EAAE,CAAC;IAEX,kBAAkB;IAClB,WAAW,EAAE,KAAK,EAAE,mBAAmB;IACvC,iBAAiB,EAAE,IAAI,EAAE,kCAAkC;IAC3D,gBAAgB,EAAE,IAAI,EAAE,mBAAmB;CAC5C,CAAC;AAEF;;GAEG;AACU,QAAA,WAAW,GAAG,iBAAS,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"authentication.d.ts","sourceRoot":"","sources":["../../../src/interfaces/chunks/authentication.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,MAAM,IAAI,OAAO,EAAE,MAAM,QAAQ,CAAC;AAE3C,MAAM,WAAW,kBAAkB;IACjC,MAAM,EAAE,OAAO,CAAC,MAAM,CAAC;IACvB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,iBAAiB,CAAC,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"authentication.d.ts","sourceRoot":"","sources":["../../../src/interfaces/chunks/authentication.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,MAAM,IAAI,OAAO,EAAE,MAAM,QAAQ,CAAC;AAE3C,MAAM,WAAW,kBAAkB;IACjC,MAAM,EAAE,OAAO,CAAC,MAAM,CAAC;IACvB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,iBAAiB;IAChC,OAAO,EAAE,OAAO,CAAC;IACjB,WAAW,CAAC,EAAE,GAAG,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,kBAAkB;IACjC,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,GAAG,CAAC;CACd;AAED,MAAM,WAAW,iBAAiB;IAChC,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,CAAC,EAAE,GAAG,CAAC;IACX,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;CACnB"}
|
|
@@ -13,7 +13,7 @@ import type { PKPMinter } from "../../modules/pkp-minter.module";
|
|
|
13
13
|
import type { PKPAuthorizer } from "../../modules/pkp-authorizer.module";
|
|
14
14
|
import type { SessionSignatureManager } from "../../modules/session-signature-manager.module";
|
|
15
15
|
export type LitOpsMode = "standalone" | "service";
|
|
16
|
-
export type LitNetwork = "datil
|
|
16
|
+
export type LitNetwork = "datil" | "datil-test";
|
|
17
17
|
export interface LitOpsSharedDependencies {
|
|
18
18
|
clientManager?: LitClientManager;
|
|
19
19
|
pkpManager?: PKPManager;
|
|
@@ -29,11 +29,17 @@ export interface LitOpsConfig {
|
|
|
29
29
|
/** Operation mode: standalone (user pays) or service (backend pays) */
|
|
30
30
|
mode: LitOpsMode;
|
|
31
31
|
/** LIT Protocol network (required for standalone mode) */
|
|
32
|
-
network
|
|
32
|
+
network: LitNetwork;
|
|
33
33
|
/** Wallet for PKP operations and transactions (required for standalone mode) */
|
|
34
34
|
signer?: ethers5.Wallet;
|
|
35
35
|
/** Debug logging enabled */
|
|
36
36
|
debug?: boolean;
|
|
37
|
+
/**
|
|
38
|
+
* Optional private key of the Capacity Credits holder wallet for Datil.
|
|
39
|
+
* When provided, session signatures will include a capacityDelegationAuthSig
|
|
40
|
+
* generated from this holder, enabling paid execution on the Datil network.
|
|
41
|
+
*/
|
|
42
|
+
holderCapacityCreditsLitPrivateKey?: string;
|
|
37
43
|
/** Service endpoint for service mode (required for service mode) */
|
|
38
44
|
serviceEndpoint?: string;
|
|
39
45
|
/** Custom domain for SIWE messages */
|
|
@@ -42,6 +48,12 @@ export interface LitOpsConfig {
|
|
|
42
48
|
sessionExpirationMinutes?: number;
|
|
43
49
|
/** Delay in milliseconds to allow PKP immutability verification across LIT Protocol network nodes */
|
|
44
50
|
pkpImmutabilityVerificationDelayMs?: number;
|
|
51
|
+
/** Number of retry attempts when calling the PKP service endpoint (service mode) */
|
|
52
|
+
pkpServiceRetryCount?: number;
|
|
53
|
+
/** Delay in milliseconds between retry attempts when calling the PKP service endpoint (service mode) */
|
|
54
|
+
pkpServiceRetryDelayMs?: number;
|
|
55
|
+
/** Timeout in milliseconds for the PKP service endpoint fetch (service mode) */
|
|
56
|
+
pkpServiceTimeoutMs?: number;
|
|
45
57
|
/** Shared dependencies for singleton pattern */
|
|
46
58
|
sharedDependencies?: LitOpsSharedDependencies;
|
|
47
59
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../src/interfaces/chunks/config.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,MAAM,IAAI,OAAO,EAAE,MAAM,QAAQ,CAAC;AAG3C,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,qCAAqC,CAAC;AAC5E,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kCAAkC,CAAC;AACnE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,sCAAsC,CAAC;AAC9E,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mCAAmC,CAAC;AACxE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iCAAiC,CAAC;AACjE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAC;AACrE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iCAAiC,CAAC;AACjE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qCAAqC,CAAC;AACzE,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,gDAAgD,CAAC;AAE9F,MAAM,MAAM,UAAU,GAAG,YAAY,GAAG,SAAS,CAAC;AAClD,MAAM,MAAM,UAAU,GAAG,
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../src/interfaces/chunks/config.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,MAAM,IAAI,OAAO,EAAE,MAAM,QAAQ,CAAC;AAG3C,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,qCAAqC,CAAC;AAC5E,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kCAAkC,CAAC;AACnE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,sCAAsC,CAAC;AAC9E,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mCAAmC,CAAC;AACxE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iCAAiC,CAAC;AACjE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAC;AACrE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iCAAiC,CAAC;AACjE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qCAAqC,CAAC;AACzE,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,gDAAgD,CAAC;AAE9F,MAAM,MAAM,UAAU,GAAG,YAAY,GAAG,SAAS,CAAC;AAClD,MAAM,MAAM,UAAU,GAAG,OAAO,GAAG,YAAY,CAAC;AAEhD,MAAM,WAAW,wBAAwB;IACvC,aAAa,CAAC,EAAE,gBAAgB,CAAC;IACjC,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB,cAAc,CAAC,EAAE,iBAAiB,CAAC;IACnC,WAAW,CAAC,EAAE,cAAc,CAAC;IAC7B,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B,cAAc,CAAC,EAAE,uBAAuB,CAAC;CAC1C;AAED,MAAM,WAAW,YAAY;IAC3B,uEAAuE;IACvE,IAAI,EAAE,UAAU,CAAC;IAEjB,0DAA0D;IAC1D,OAAO,EAAE,UAAU,CAAC;IAEpB,gFAAgF;IAChF,MAAM,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC;IAExB,4BAA4B;IAC5B,KAAK,CAAC,EAAE,OAAO,CAAC;IAEhB;;;;OAIG;IACH,kCAAkC,CAAC,EAAE,MAAM,CAAC;IAE5C,oEAAoE;IACpE,eAAe,CAAC,EAAE,MAAM,CAAC;IAEzB,sCAAsC;IACtC,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB,oCAAoC;IACpC,wBAAwB,CAAC,EAAE,MAAM,CAAC;IAElC,qGAAqG;IACrG,kCAAkC,CAAC,EAAE,MAAM,CAAC;IAE5C,oFAAoF;IACpF,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAE9B,wGAAwG;IACxG,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAEhC,gFAAgF;IAChF,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAE7B,gDAAgD;IAChD,kBAAkB,CAAC,EAAE,wBAAwB,CAAC;CAC/C;AAED,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,UAAU,CAAC;IACpB,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB"}
|
|
@@ -9,6 +9,8 @@ export interface LitActionExecutionRequest {
|
|
|
9
9
|
cid?: string;
|
|
10
10
|
/** PKP public key for signing */
|
|
11
11
|
pkpPublicKey: string;
|
|
12
|
+
/** PKP token ID for specific resource scoping */
|
|
13
|
+
pkpTokenId?: string;
|
|
12
14
|
/** Parameters to pass to LIT Action */
|
|
13
15
|
params: Record<string, any>;
|
|
14
16
|
/** Signer for sessionSigs (standalone mode) */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lit-action-execution.d.ts","sourceRoot":"","sources":["../../../src/interfaces/chunks/lit-action-execution.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,MAAM,IAAI,OAAO,EAAE,MAAM,QAAQ,CAAC;AAE3C,MAAM,WAAW,yBAAyB;IACxC,6BAA6B;IAC7B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,GAAG,CAAC,EAAE,MAAM,CAAC;IAEb,iCAAiC;IACjC,YAAY,EAAE,MAAM,CAAC;IAErB,uCAAuC;IACvC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAE5B,+CAA+C;IAC/C,MAAM,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC;IAExB,qCAAqC;IACrC,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,wBAAwB;IACvC,OAAO,EAAE,OAAO,CAAC;IACjB,QAAQ,CAAC,EAAE,GAAG,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IACjC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;CACnB"}
|
|
1
|
+
{"version":3,"file":"lit-action-execution.d.ts","sourceRoot":"","sources":["../../../src/interfaces/chunks/lit-action-execution.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,MAAM,IAAI,OAAO,EAAE,MAAM,QAAQ,CAAC;AAE3C,MAAM,WAAW,yBAAyB;IACxC,6BAA6B;IAC7B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,GAAG,CAAC,EAAE,MAAM,CAAC;IAEb,iCAAiC;IACjC,YAAY,EAAE,MAAM,CAAC;IAErB,iDAAiD;IACjD,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB,uCAAuC;IACvC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAE5B,+CAA+C;IAC/C,MAAM,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC;IAExB,qCAAqC;IACrC,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,wBAAwB;IACvC,OAAO,EAAE,OAAO,CAAC;IACjB,QAAQ,CAAC,EAAE,GAAG,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IACjC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;CACnB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"action-executor.module.d.ts","sourceRoot":"","sources":["../../src/modules/action-executor.module.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,OAAO,EACL,yBAAyB,EACzB,wBAAwB,EACxB,UAAU,EACX,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"action-executor.module.d.ts","sourceRoot":"","sources":["../../src/modules/action-executor.module.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,OAAO,EACL,yBAAyB,EACzB,wBAAwB,EACxB,UAAU,EACX,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAIvD,qBAAa,iBAAiB;IAC5B,OAAO,CAAC,IAAI,CAAa;IACzB,OAAO,CAAC,KAAK,CAAU;IACvB,OAAO,CAAC,WAAW,CAAiB;IACpC,OAAO,CAAC,eAAe,CAAC,CAAS;gBAG/B,IAAI,EAAE,UAAU,EAChB,KAAK,GAAE,OAAe,EACtB,WAAW,CAAC,EAAE,cAAc,EAC5B,eAAe,CAAC,EAAE,MAAM;IAQ1B;;OAEG;IACG,aAAa,CACjB,OAAO,EAAE,yBAAyB,EAClC,SAAS,EAAE,GAAG,GACb,OAAO,CAAC,wBAAwB,CAAC;IAkBpC;;OAEG;YACW,uBAAuB;IA0IrC;;OAEG;YACW,oBAAoB;IAkElC;;OAEG;IACH,OAAO,CAAC,iBAAiB;IA+BzB;;OAEG;YACW,sBAAsB;CAyCrC"}
|
|
@@ -11,6 +11,8 @@ exports.LitActionExecutor = void 0;
|
|
|
11
11
|
const axios_1 = __importDefault(require("axios"));
|
|
12
12
|
const ethers_1 = require("ethers");
|
|
13
13
|
const auth_manager_module_1 = require("./auth-manager.module");
|
|
14
|
+
const connection_helpers_1 = require("../utils/connection-helpers");
|
|
15
|
+
const capacity_master_module_1 = require("./capacity-master.module");
|
|
14
16
|
class LitActionExecutor {
|
|
15
17
|
constructor(mode, debug = false, authManager, serviceEndpoint) {
|
|
16
18
|
this.mode = mode;
|
|
@@ -61,36 +63,77 @@ class LitActionExecutor {
|
|
|
61
63
|
else {
|
|
62
64
|
throw new Error("Either code or cid must be provided");
|
|
63
65
|
}
|
|
64
|
-
// Check if we have a signer for real execution
|
|
65
66
|
if (!request.signer) {
|
|
66
|
-
|
|
67
|
-
|
|
67
|
+
throw new Error("Signer is required for standalone execution");
|
|
68
|
+
}
|
|
69
|
+
// Configure capacity delegation automatically for Datil if env key is present
|
|
70
|
+
const net = (litClient?.config?.litNetwork || "").toLowerCase();
|
|
71
|
+
if (net === "datil") {
|
|
72
|
+
const holderKey = process.env.LIT_CAPACITY_HOLDER_KEY ||
|
|
73
|
+
process.env.CAPACITY_HOLDER_KEY;
|
|
74
|
+
if (holderKey) {
|
|
75
|
+
capacity_master_module_1.CapacityMasterModule.config({ holderPrivateKey: holderKey });
|
|
76
|
+
if (this.debug) {
|
|
77
|
+
console.log("⚡ CapacityMasterModule configured (Datil capacity delegation)");
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
else if (this.debug) {
|
|
81
|
+
throw new Error("⚠️ Capacity delegation key not provided (set LIT_CAPACITY_HOLDER_KEY for Datil)");
|
|
68
82
|
}
|
|
69
|
-
return this.executeMockAction(request, litActionCode);
|
|
70
83
|
}
|
|
71
|
-
// Generate sessionSigs for real execution
|
|
84
|
+
// Generate sessionSigs for real execution with specific resources
|
|
72
85
|
const sessionSigsResult = await this.authManager.generateSessionSigs({
|
|
73
86
|
signer: request.signer,
|
|
74
|
-
expirationMinutes:
|
|
87
|
+
expirationMinutes: 15,
|
|
88
|
+
pkpTokenId: request.pkpTokenId, // Pass PKP token ID for specific resource scoping
|
|
89
|
+
litActionCid: request.cid, // Pass LIT Action CID for specific resource scoping
|
|
75
90
|
}, litClient);
|
|
76
91
|
if (!sessionSigsResult.success) {
|
|
77
|
-
|
|
78
|
-
console.log("❌ SessionSigs generation failed - using mock execution");
|
|
79
|
-
}
|
|
80
|
-
return this.executeMockAction(request, litActionCode);
|
|
92
|
+
throw new Error(`Failed to generate session signatures: ${sessionSigsResult.error}`);
|
|
81
93
|
}
|
|
82
|
-
// Execute real LIT Action
|
|
94
|
+
// Execute real LIT Action (with one retry on request_timeout)
|
|
83
95
|
if (this.debug) {
|
|
84
96
|
console.log("🔥 Executing REAL LIT Action from CID!");
|
|
85
97
|
}
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
}
|
|
93
|
-
|
|
98
|
+
// Ensure PKP public key is properly formatted (remove '0x' prefix if present)
|
|
99
|
+
const formattedPkpPublicKey = request.pkpPublicKey?.startsWith('0x')
|
|
100
|
+
? request.pkpPublicKey.slice(2)
|
|
101
|
+
: request.pkpPublicKey;
|
|
102
|
+
if (this.debug && request.pkpPublicKey !== formattedPkpPublicKey) {
|
|
103
|
+
console.log("🔧 PKP public key format fixed: removed '0x' prefix");
|
|
104
|
+
console.log(` Original: ${request.pkpPublicKey}`);
|
|
105
|
+
console.log(` Formatted: ${formattedPkpPublicKey}`);
|
|
106
|
+
}
|
|
107
|
+
// Use enhanced LIT Action execution with retry logic
|
|
108
|
+
let result;
|
|
109
|
+
for (let attempt = 1; attempt <= 2; attempt++) {
|
|
110
|
+
try {
|
|
111
|
+
result = await (0, connection_helpers_1.executeLitAction)(litClient, {
|
|
112
|
+
code: litActionCode,
|
|
113
|
+
sessionSigs: sessionSigsResult.sessionSigs,
|
|
114
|
+
jsParams: {
|
|
115
|
+
...request.params,
|
|
116
|
+
publicKey: formattedPkpPublicKey, // Use properly formatted PKP public key
|
|
117
|
+
},
|
|
118
|
+
}, {
|
|
119
|
+
maxAttempts: 5,
|
|
120
|
+
initialDelayMs: 5000,
|
|
121
|
+
});
|
|
122
|
+
break;
|
|
123
|
+
}
|
|
124
|
+
catch (e) {
|
|
125
|
+
const msg = e?.message || String(e);
|
|
126
|
+
const isTimeout = msg.includes('request_timeout') || msg.includes('Request timed out');
|
|
127
|
+
if (this.debug) {
|
|
128
|
+
console.error("❌ executeLitAction failed (attempt", attempt, "):", msg);
|
|
129
|
+
}
|
|
130
|
+
if (!isTimeout || attempt === 2) {
|
|
131
|
+
throw e;
|
|
132
|
+
}
|
|
133
|
+
// brief backoff before one retry
|
|
134
|
+
await new Promise((r) => setTimeout(r, 15000));
|
|
135
|
+
}
|
|
136
|
+
}
|
|
94
137
|
if (this.debug) {
|
|
95
138
|
console.log("🎉 REAL LIT ACTION EXECUTED SUCCESSFULLY!");
|
|
96
139
|
console.log(" Response:", result.response);
|
|
@@ -123,9 +166,9 @@ class LitActionExecutor {
|
|
|
123
166
|
}
|
|
124
167
|
try {
|
|
125
168
|
const response = await fetch(`${this.serviceEndpoint}/api/execute-lit-action`, {
|
|
126
|
-
method:
|
|
169
|
+
method: "POST",
|
|
127
170
|
headers: {
|
|
128
|
-
|
|
171
|
+
"Content-Type": "application/json",
|
|
129
172
|
},
|
|
130
173
|
body: JSON.stringify({
|
|
131
174
|
cid: request.cid,
|
|
@@ -137,7 +180,7 @@ class LitActionExecutor {
|
|
|
137
180
|
if (!response.ok) {
|
|
138
181
|
throw new Error(`Service request failed: ${response.status} ${response.statusText}`);
|
|
139
182
|
}
|
|
140
|
-
const result = await response.json();
|
|
183
|
+
const result = (await response.json());
|
|
141
184
|
if (this.debug) {
|
|
142
185
|
console.log("✅ LIT Action executed via service:", result);
|
|
143
186
|
}
|
|
@@ -147,7 +190,9 @@ class LitActionExecutor {
|
|
|
147
190
|
message: result.message || "LIT Action executed via service",
|
|
148
191
|
signature: result.signature,
|
|
149
192
|
},
|
|
150
|
-
signatures: result.signature
|
|
193
|
+
signatures: result.signature
|
|
194
|
+
? { signature: result.signature }
|
|
195
|
+
: undefined,
|
|
151
196
|
timestamp: Date.now(),
|
|
152
197
|
error: result.error,
|
|
153
198
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"action-executor.module.js","sourceRoot":"","sources":["../../src/modules/action-executor.module.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;;;;AAEH,kDAA0B;AAC1B,mCAA2C;AAM3C,+DAAuD;
|
|
1
|
+
{"version":3,"file":"action-executor.module.js","sourceRoot":"","sources":["../../src/modules/action-executor.module.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auth-manager.module.d.ts","sourceRoot":"","sources":["../../src/modules/auth-manager.module.ts"],"names":[],"mappings":"AAAA;;;GAGG;
|
|
1
|
+
{"version":3,"file":"auth-manager.module.d.ts","sourceRoot":"","sources":["../../src/modules/auth-manager.module.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAQH,OAAO,EAAE,MAAM,IAAI,OAAO,EAAE,MAAM,QAAQ,CAAC;AAC3C,OAAO,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAGtE,qBAAa,cAAc;IACzB,OAAO,CAAC,KAAK,CAAU;gBAEX,KAAK,GAAE,OAAe;IAIlC;;;OAGG;IACG,mBAAmB,CACvB,OAAO,EAAE,kBAAkB,EAC3B,SAAS,EAAE,GAAG,GACb,OAAO,CAAC,iBAAiB,CAAC;IAkH7B;;OAEG;IACH,mBAAmB,CAAC,WAAW,EAAE,GAAG,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO;IAalE;;OAEG;IACG,uBAAuB,CAC3B,MAAM,EAAE,OAAO,CAAC,MAAM,EACtB,SAAS,EAAE,GAAG,GACb,OAAO,CAAC,iBAAiB,CAAC;CAU9B"}
|
|
@@ -6,6 +6,7 @@
|
|
|
6
6
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
7
|
exports.LitAuthManager = void 0;
|
|
8
8
|
const auth_helpers_1 = require("@lit-protocol/auth-helpers");
|
|
9
|
+
const capacity_master_module_1 = require("./capacity-master.module");
|
|
9
10
|
class LitAuthManager {
|
|
10
11
|
constructor(debug = false) {
|
|
11
12
|
this.debug = debug;
|
|
@@ -16,22 +17,50 @@ class LitAuthManager {
|
|
|
16
17
|
*/
|
|
17
18
|
async generateSessionSigs(request, litClient) {
|
|
18
19
|
try {
|
|
19
|
-
const { signer, domain = "diamond-hands.local", expirationMinutes = 15, } = request;
|
|
20
|
+
const { signer, domain = "diamond-hands.local", expirationMinutes = 15, pkpTokenId, litActionCid, } = request;
|
|
20
21
|
if (this.debug) {
|
|
21
22
|
console.log("🔑 Generating sessionSigs for LIT Action execution...");
|
|
22
23
|
console.log(" Signer address:", await signer.getAddress());
|
|
23
24
|
console.log(" Domain:", domain);
|
|
24
25
|
console.log(" Expiration:", expirationMinutes, "minutes");
|
|
26
|
+
console.log(" PKP Token ID:", pkpTokenId || "not specified (no PKP resource)");
|
|
27
|
+
console.log(" LIT Action CID:", litActionCid || "not specified (using wildcard)");
|
|
28
|
+
}
|
|
29
|
+
// Try to include capacity delegation for Datil
|
|
30
|
+
let capacityDelegationAuthSig;
|
|
31
|
+
try {
|
|
32
|
+
// Best-effort: if the client indicates datil network, include delegation
|
|
33
|
+
const net = (litClient?.config?.litNetwork || "").toLowerCase();
|
|
34
|
+
if (net === "datil") {
|
|
35
|
+
const addr = await signer.getAddress();
|
|
36
|
+
capacityDelegationAuthSig =
|
|
37
|
+
await capacity_master_module_1.CapacityMasterModule.getDelegationCredits("datil", litClient, addr);
|
|
38
|
+
if (this.debug) {
|
|
39
|
+
console.log("⚡ Capacity delegation attached in AuthManager for Datil");
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
catch (e) {
|
|
44
|
+
if (this.debug) {
|
|
45
|
+
console.log("⚠️ Capacity delegation not attached:", e instanceof Error ? e.message : String(e));
|
|
46
|
+
}
|
|
25
47
|
}
|
|
26
48
|
const sessionSigs = await litClient.getSessionSigs({
|
|
27
49
|
chain: "ethereum",
|
|
28
50
|
expiration: new Date(Date.now() + 1000 * 60 * expirationMinutes).toISOString(),
|
|
29
51
|
resourceAbilityRequests: [
|
|
52
|
+
...(pkpTokenId ? [{
|
|
53
|
+
resource: new auth_helpers_1.LitPKPResource(pkpTokenId), // Use specific PKP token ID
|
|
54
|
+
ability: "pkp-signing",
|
|
55
|
+
}] : []),
|
|
30
56
|
{
|
|
31
|
-
resource: new auth_helpers_1.LitActionResource("*"),
|
|
57
|
+
resource: new auth_helpers_1.LitActionResource(litActionCid || "*"), // Use specific LIT Action CID or fallback to wildcard
|
|
32
58
|
ability: "lit-action-execution",
|
|
33
59
|
},
|
|
34
60
|
],
|
|
61
|
+
...(capacityDelegationAuthSig
|
|
62
|
+
? { capacityDelegationAuthSig }
|
|
63
|
+
: {}),
|
|
35
64
|
authNeededCallback: async (params) => {
|
|
36
65
|
if (this.debug) {
|
|
37
66
|
console.log("🔐 Creating SIWE message for authentication...");
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auth-manager.module.js","sourceRoot":"","sources":["../../src/modules/auth-manager.module.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;AAEH,
|
|
1
|
+
{"version":3,"file":"auth-manager.module.js","sourceRoot":"","sources":["../../src/modules/auth-manager.module.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import { LitNodeClient } from "@lit-protocol/lit-node-client";
|
|
2
|
+
import { AuthSig } from "@lit-protocol/types";
|
|
3
|
+
type ICapacityCredits = {
|
|
4
|
+
id: string;
|
|
5
|
+
ratePerSecond: number;
|
|
6
|
+
dueTo: number;
|
|
7
|
+
};
|
|
8
|
+
type IRateDueToStep = {
|
|
9
|
+
totalRatePerSecond: number;
|
|
10
|
+
dueTo: number;
|
|
11
|
+
activeCapacityCredits: ICapacityCredits[];
|
|
12
|
+
};
|
|
13
|
+
type ICapacityCreditsReport = {
|
|
14
|
+
totalRatePerSecond: number;
|
|
15
|
+
totalDueTo: number;
|
|
16
|
+
rateDueToSteps: IRateDueToStep[];
|
|
17
|
+
capacityCredits: ICapacityCredits[];
|
|
18
|
+
};
|
|
19
|
+
type Network = "datil" | "datil-test";
|
|
20
|
+
export declare const CapacityMasterModule: {
|
|
21
|
+
config: (cfg: {
|
|
22
|
+
holderPrivateKey: string;
|
|
23
|
+
creditsStoreKeySuffix?: string;
|
|
24
|
+
rateSetpoint?: number;
|
|
25
|
+
standardRateQuantum?: number;
|
|
26
|
+
standardDueToDays?: number;
|
|
27
|
+
keepCreditsInterval?: number;
|
|
28
|
+
}) => void;
|
|
29
|
+
getDelegationCredits: (network: Network, litNodeClient: LitNodeClient, userWalletAddress: string) => Promise<AuthSig>;
|
|
30
|
+
requestClearCapacityCredits: (network: "datil" | "datil-test") => Promise<void>;
|
|
31
|
+
shutdown: () => void;
|
|
32
|
+
_internals: {
|
|
33
|
+
buyCredits: (network: Network, opts?: {
|
|
34
|
+
rate?: number;
|
|
35
|
+
dueToDays?: number;
|
|
36
|
+
}) => Promise<ICapacityCredits>;
|
|
37
|
+
getCreditsReport: (network: Network) => Promise<ICapacityCreditsReport>;
|
|
38
|
+
controlCredits: (network: Network) => Promise<void>;
|
|
39
|
+
};
|
|
40
|
+
};
|
|
41
|
+
export {};
|
|
42
|
+
//# sourceMappingURL=capacity-master.module.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"capacity-master.module.d.ts","sourceRoot":"","sources":["../../src/modules/capacity-master.module.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AAC9D,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAI9C,KAAK,gBAAgB,GAAG;IACtB,EAAE,EAAE,MAAM,CAAC;IACX,aAAa,EAAE,MAAM,CAAC;IACtB,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,KAAK,cAAc,GAAG;IACpB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,KAAK,EAAE,MAAM,CAAC;IACd,qBAAqB,EAAE,gBAAgB,EAAE,CAAC;CAC3C,CAAC;AAEF,KAAK,sBAAsB,GAAG;IAC5B,kBAAkB,EAAE,MAAM,CAAC;IAC3B,UAAU,EAAE,MAAM,CAAC;IACnB,cAAc,EAAE,cAAc,EAAE,CAAC;IACjC,eAAe,EAAE,gBAAgB,EAAE,CAAC;CACrC,CAAC;AAcF,KAAK,OAAO,GAAG,OAAO,GAAG,YAAY,CAAC;AA2VtC,eAAO,MAAM,oBAAoB;kBAvRZ;QACnB,gBAAgB,EAAE,MAAM,CAAC;QACzB,qBAAqB,CAAC,EAAE,MAAM,CAAC;QAC/B,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,mBAAmB,CAAC,EAAE,MAAM,CAAC;QAC7B,iBAAiB,CAAC,EAAE,MAAM,CAAC;QAC3B,mBAAmB,CAAC,EAAE,MAAM,CAAC;KAC9B;oCAsOU,OAAO,iBACD,aAAa,qBACT,MAAM,KACxB,OAAO,CAAC,OAAO,CAAC;2CAgBiC,OAAO,GAAG,YAAY;;;8BAzH/D,OAAO,SACT;YAAE,IAAI,CAAC,EAAE,MAAM,CAAC;YAAC,SAAS,CAAC,EAAE,MAAM,CAAA;SAAE,KAC3C,OAAO,CAAC,gBAAgB,CAAC;oCA/BjB,OAAO,KACf,OAAO,CAAC,sBAAsB,CAAC;kCAuDK,OAAO;;CAiJ7C,CAAC"}
|