@silvana-one/coordination 1.0.15

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (118) hide show
  1. package/LICENSE +201 -0
  2. package/README.md +1 -0
  3. package/dist/node/agent.d.ts +93 -0
  4. package/dist/node/agent.js +278 -0
  5. package/dist/node/agent.js.map +1 -0
  6. package/dist/node/base58/base58.d.ts +5 -0
  7. package/dist/node/base58/base58.js +108 -0
  8. package/dist/node/base58/base58.js.map +1 -0
  9. package/dist/node/base58/bigint-helpers.d.ts +24 -0
  10. package/dist/node/base58/bigint-helpers.js +214 -0
  11. package/dist/node/base58/bigint-helpers.js.map +1 -0
  12. package/dist/node/base58/index.d.ts +2 -0
  13. package/dist/node/base58/index.js +3 -0
  14. package/dist/node/base58/index.js.map +1 -0
  15. package/dist/node/base58/public-key.d.ts +4 -0
  16. package/dist/node/base58/public-key.js +7 -0
  17. package/dist/node/base58/public-key.js.map +1 -0
  18. package/dist/node/base58/signature.d.ts +3 -0
  19. package/dist/node/base58/signature.js +65 -0
  20. package/dist/node/base58/signature.js.map +1 -0
  21. package/dist/node/base58/versions.d.ts +11 -0
  22. package/dist/node/base58/versions.js +12 -0
  23. package/dist/node/base58/versions.js.map +1 -0
  24. package/dist/node/execute.d.ts +16 -0
  25. package/dist/node/execute.js +142 -0
  26. package/dist/node/execute.js.map +1 -0
  27. package/dist/node/fetch.d.ts +8 -0
  28. package/dist/node/fetch.js +41 -0
  29. package/dist/node/fetch.js.map +1 -0
  30. package/dist/node/index.cjs +878 -0
  31. package/dist/node/index.d.ts +9 -0
  32. package/dist/node/index.js +10 -0
  33. package/dist/node/index.js.map +1 -0
  34. package/dist/node/mvr.d.ts +14 -0
  35. package/dist/node/mvr.js +70 -0
  36. package/dist/node/mvr.js.map +1 -0
  37. package/dist/node/publish.d.ts +9 -0
  38. package/dist/node/publish.js +40 -0
  39. package/dist/node/publish.js.map +1 -0
  40. package/dist/node/sleep.d.ts +1 -0
  41. package/dist/node/sleep.js +4 -0
  42. package/dist/node/sleep.js.map +1 -0
  43. package/dist/node/sui-client.d.ts +4 -0
  44. package/dist/node/sui-client.js +39 -0
  45. package/dist/node/sui-client.js.map +1 -0
  46. package/dist/node/types.d.ts +4 -0
  47. package/dist/node/types.js +2 -0
  48. package/dist/node/types.js.map +1 -0
  49. package/dist/node/upgrade.d.ts +13 -0
  50. package/dist/node/upgrade.js +51 -0
  51. package/dist/node/upgrade.js.map +1 -0
  52. package/dist/tsconfig.tsbuildinfo +1 -0
  53. package/dist/tsconfig.web.tsbuildinfo +1 -0
  54. package/dist/web/agent.d.ts +93 -0
  55. package/dist/web/agent.js +278 -0
  56. package/dist/web/agent.js.map +1 -0
  57. package/dist/web/base58/base58.d.ts +5 -0
  58. package/dist/web/base58/base58.js +108 -0
  59. package/dist/web/base58/base58.js.map +1 -0
  60. package/dist/web/base58/bigint-helpers.d.ts +24 -0
  61. package/dist/web/base58/bigint-helpers.js +214 -0
  62. package/dist/web/base58/bigint-helpers.js.map +1 -0
  63. package/dist/web/base58/index.d.ts +2 -0
  64. package/dist/web/base58/index.js +3 -0
  65. package/dist/web/base58/index.js.map +1 -0
  66. package/dist/web/base58/public-key.d.ts +4 -0
  67. package/dist/web/base58/public-key.js +7 -0
  68. package/dist/web/base58/public-key.js.map +1 -0
  69. package/dist/web/base58/signature.d.ts +3 -0
  70. package/dist/web/base58/signature.js +65 -0
  71. package/dist/web/base58/signature.js.map +1 -0
  72. package/dist/web/base58/versions.d.ts +11 -0
  73. package/dist/web/base58/versions.js +12 -0
  74. package/dist/web/base58/versions.js.map +1 -0
  75. package/dist/web/execute.d.ts +16 -0
  76. package/dist/web/execute.js +142 -0
  77. package/dist/web/execute.js.map +1 -0
  78. package/dist/web/fetch.d.ts +8 -0
  79. package/dist/web/fetch.js +41 -0
  80. package/dist/web/fetch.js.map +1 -0
  81. package/dist/web/index.d.ts +9 -0
  82. package/dist/web/index.js +10 -0
  83. package/dist/web/index.js.map +1 -0
  84. package/dist/web/mvr.d.ts +14 -0
  85. package/dist/web/mvr.js +70 -0
  86. package/dist/web/mvr.js.map +1 -0
  87. package/dist/web/publish.d.ts +9 -0
  88. package/dist/web/publish.js +40 -0
  89. package/dist/web/publish.js.map +1 -0
  90. package/dist/web/sleep.d.ts +1 -0
  91. package/dist/web/sleep.js +4 -0
  92. package/dist/web/sleep.js.map +1 -0
  93. package/dist/web/sui-client.d.ts +4 -0
  94. package/dist/web/sui-client.js +39 -0
  95. package/dist/web/sui-client.js.map +1 -0
  96. package/dist/web/types.d.ts +4 -0
  97. package/dist/web/types.js +2 -0
  98. package/dist/web/types.js.map +1 -0
  99. package/dist/web/upgrade.d.ts +13 -0
  100. package/dist/web/upgrade.js +51 -0
  101. package/dist/web/upgrade.js.map +1 -0
  102. package/package.json +59 -0
  103. package/src/agent.ts +437 -0
  104. package/src/base58/base58.ts +121 -0
  105. package/src/base58/bigint-helpers.ts +236 -0
  106. package/src/base58/index.ts +2 -0
  107. package/src/base58/public-key.ts +13 -0
  108. package/src/base58/signature.ts +89 -0
  109. package/src/base58/versions.ts +12 -0
  110. package/src/execute.ts +176 -0
  111. package/src/fetch.ts +54 -0
  112. package/src/index.ts +9 -0
  113. package/src/mvr.ts +99 -0
  114. package/src/publish.ts +54 -0
  115. package/src/sleep.ts +3 -0
  116. package/src/sui-client.ts +42 -0
  117. package/src/types.ts +4 -0
  118. package/src/upgrade.ts +78 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"execute.js","sourceRoot":"","sources":["../../src/execute.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ export declare function fetchSuiObject(objectID: string): Promise<import("@mysten/sui/client").SuiObjectResponse>;
2
+ export declare function fetchSuiDynamicField(params: {
3
+ objectID?: string;
4
+ parentID?: string;
5
+ fieldName: string;
6
+ type: string;
7
+ key: string;
8
+ }): Promise<object | undefined>;
@@ -0,0 +1,41 @@
1
+ import { suiClient } from "./sui-client.js";
2
+ export async function fetchSuiObject(objectID) {
3
+ const data = await suiClient.getObject({
4
+ id: objectID,
5
+ options: {
6
+ showContent: true,
7
+ },
8
+ });
9
+ return data;
10
+ }
11
+ export async function fetchSuiDynamicField(params) {
12
+ try {
13
+ const { objectID, parentID, fieldName, type, key } = params;
14
+ if (!objectID && !parentID) {
15
+ console.error("objectID or parentID is required");
16
+ return undefined;
17
+ }
18
+ let id = parentID;
19
+ if (objectID && !parentID) {
20
+ const suiObject = (await fetchSuiObject(objectID));
21
+ id = suiObject?.data?.content?.fields?.[fieldName]?.fields?.id
22
+ ?.id;
23
+ }
24
+ if (!id) {
25
+ return undefined;
26
+ }
27
+ const field = await suiClient.getDynamicFieldObject({
28
+ parentId: id,
29
+ name: {
30
+ type,
31
+ value: key,
32
+ },
33
+ });
34
+ return field.data?.content?.fields;
35
+ }
36
+ catch (error) {
37
+ console.error("fetchSuiDynamicField: Error fetching dynamic field", error?.message);
38
+ return undefined;
39
+ }
40
+ }
41
+ //# sourceMappingURL=fetch.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fetch.js","sourceRoot":"","sources":["../../src/fetch.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAE5C,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,QAAgB;IACnD,MAAM,IAAI,GAAG,MAAM,SAAS,CAAC,SAAS,CAAC;QACrC,EAAE,EAAE,QAAQ;QACZ,OAAO,EAAE;YACP,WAAW,EAAE,IAAI;SAClB;KACF,CAAC,CAAC;IACH,OAAO,IAAI,CAAC;AACd,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,oBAAoB,CAAC,MAM1C;IACC,IAAI,CAAC;QACH,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,SAAS,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,MAAM,CAAC;QAE5D,IAAI,CAAC,QAAQ,IAAI,CAAC,QAAQ,EAAE,CAAC;YAC3B,OAAO,CAAC,KAAK,CAAC,kCAAkC,CAAC,CAAC;YAClD,OAAO,SAAS,CAAC;QACnB,CAAC;QACD,IAAI,EAAE,GAAG,QAAQ,CAAC;QAClB,IAAI,QAAQ,IAAI,CAAC,QAAQ,EAAE,CAAC;YAC1B,MAAM,SAAS,GAAG,CAAC,MAAM,cAAc,CAAC,QAAQ,CAAC,CAAQ,CAAC;YAE1D,EAAE,GAAI,SAAS,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,SAAS,CAAS,EAAE,MAAM,EAAE,EAAE;gBACrE,EAAE,EAAE,CAAC;QACT,CAAC;QACD,IAAI,CAAC,EAAE,EAAE,CAAC;YACR,OAAO,SAAS,CAAC;QACnB,CAAC;QAED,MAAM,KAAK,GAAG,MAAM,SAAS,CAAC,qBAAqB,CAAC;YAClD,QAAQ,EAAE,EAAE;YACZ,IAAI,EAAE;gBACJ,IAAI;gBACJ,KAAK,EAAE,GAAG;aACX;SACF,CAAC,CAAC;QAEH,OAAQ,KAAK,CAAC,IAAI,EAAE,OAAe,EAAE,MAAgB,CAAC;IACxD,CAAC;IAAC,OAAO,KAAU,EAAE,CAAC;QACpB,OAAO,CAAC,KAAK,CACX,oDAAoD,EACpD,KAAK,EAAE,OAAO,CACf,CAAC;QACF,OAAO,SAAS,CAAC;IACnB,CAAC;AACH,CAAC"}
@@ -0,0 +1,9 @@
1
+ export * from "./base58/index.js";
2
+ export * from "./execute.js";
3
+ export * from "./publish.js";
4
+ export * from "./sui-client.js";
5
+ export * from "./sleep.js";
6
+ export * from "./upgrade.js";
7
+ export * from "./mvr.js";
8
+ export * from "./agent.js";
9
+ export * from "./fetch.js";
@@ -0,0 +1,10 @@
1
+ export * from "./base58/index.js";
2
+ export * from "./execute.js";
3
+ export * from "./publish.js";
4
+ export * from "./sui-client.js";
5
+ export * from "./sleep.js";
6
+ export * from "./upgrade.js";
7
+ export * from "./mvr.js";
8
+ export * from "./agent.js";
9
+ export * from "./fetch.js";
10
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAC;AAClC,cAAc,cAAc,CAAC;AAC7B,cAAc,cAAc,CAAC;AAC7B,cAAc,iBAAiB,CAAC;AAChC,cAAc,YAAY,CAAC;AAC3B,cAAc,cAAc,CAAC;AAC7B,cAAc,UAAU,CAAC;AACzB,cAAc,YAAY,CAAC;AAC3B,cAAc,YAAY,CAAC"}
@@ -0,0 +1,14 @@
1
+ import { Transaction } from "@mysten/sui/transactions";
2
+ export declare function publishToMVR(params: {
3
+ mvrName: string;
4
+ upgradeCap: string;
5
+ packageName: string;
6
+ safeAddress: string;
7
+ }): Transaction;
8
+ export declare function publishCodeToMVR(params: {
9
+ packageInfo: string;
10
+ gitRepository: string;
11
+ gitSubdirectory: string;
12
+ gitCommitHash: string;
13
+ version: number;
14
+ }): Transaction;
@@ -0,0 +1,70 @@
1
+ import { Transaction } from "@mysten/sui/transactions";
2
+ export function publishToMVR(params) {
3
+ const { upgradeCap, packageName, mvrName, safeAddress } = params;
4
+ const transaction = new Transaction();
5
+ const packageInfo = transaction.moveCall({
6
+ target: `@mvr/metadata::package_info::new`,
7
+ arguments: [transaction.object(upgradeCap)],
8
+ });
9
+ // We also need to create the visual representation of our "info" object.
10
+ // You can also call `@mvr/metadata::display::new` instead,
11
+ // that allows customizing the colors of your metadata object!
12
+ const display = transaction.moveCall({
13
+ target: `@mvr/metadata::display::default`,
14
+ arguments: [transaction.pure.string(packageName)],
15
+ });
16
+ // Set that display object to our info object.
17
+ transaction.moveCall({
18
+ target: `@mvr/metadata::package_info::set_display`,
19
+ arguments: [transaction.object(packageInfo), display],
20
+ });
21
+ // Set the default for the packageInfo, which enables reverse resolution for that network
22
+ // See details in reverse resolution section
23
+ transaction.moveCall({
24
+ target: "@mvr/metadata::package_info::set_metadata",
25
+ arguments: [
26
+ transaction.object(packageInfo),
27
+ transaction.pure.string("default"),
28
+ transaction.pure.string(mvrName),
29
+ ],
30
+ });
31
+ // Optionally unset the metadata for the packageInfo
32
+ // transaction.moveCall({
33
+ // target: "@mvr/metadata::package_info::unset_metadata",
34
+ // arguments: [
35
+ // transaction.object(packageInfo),
36
+ // transaction.pure.string("default"),
37
+ // ],
38
+ // });
39
+ // transfer the `PackageInfo` object to a safe address.
40
+ transaction.moveCall({
41
+ target: `@mvr/metadata::package_info::transfer`,
42
+ arguments: [
43
+ transaction.object(packageInfo),
44
+ transaction.pure.address(safeAddress),
45
+ ],
46
+ });
47
+ return transaction;
48
+ }
49
+ export function publishCodeToMVR(params) {
50
+ const { packageInfo, gitRepository, gitSubdirectory, gitCommitHash, version, } = params;
51
+ const transaction = new Transaction();
52
+ const git = transaction.moveCall({
53
+ target: `@mvr/metadata::git::new`,
54
+ arguments: [
55
+ transaction.pure.string(gitRepository),
56
+ transaction.pure.string(gitSubdirectory),
57
+ transaction.pure.string(gitCommitHash),
58
+ ],
59
+ });
60
+ transaction.moveCall({
61
+ target: `@mvr/metadata::package_info::set_git_versioning`,
62
+ arguments: [
63
+ transaction.object(packageInfo),
64
+ transaction.pure.u64(version),
65
+ git,
66
+ ],
67
+ });
68
+ return transaction;
69
+ }
70
+ //# sourceMappingURL=mvr.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mvr.js","sourceRoot":"","sources":["../../src/mvr.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAEvD,MAAM,UAAU,YAAY,CAAC,MAK5B;IACC,MAAM,EAAE,UAAU,EAAE,WAAW,EAAE,OAAO,EAAE,WAAW,EAAE,GAAG,MAAM,CAAC;IACjE,MAAM,WAAW,GAAG,IAAI,WAAW,EAAE,CAAC;IAEtC,MAAM,WAAW,GAAG,WAAW,CAAC,QAAQ,CAAC;QACvC,MAAM,EAAE,kCAAkC;QAC1C,SAAS,EAAE,CAAC,WAAW,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;KAC5C,CAAC,CAAC;IAEH,yEAAyE;IACzE,2DAA2D;IAC3D,8DAA8D;IAC9D,MAAM,OAAO,GAAG,WAAW,CAAC,QAAQ,CAAC;QACnC,MAAM,EAAE,iCAAiC;QACzC,SAAS,EAAE,CAAC,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;KAClD,CAAC,CAAC;IAEH,8CAA8C;IAC9C,WAAW,CAAC,QAAQ,CAAC;QACnB,MAAM,EAAE,0CAA0C;QAClD,SAAS,EAAE,CAAC,WAAW,CAAC,MAAM,CAAC,WAAW,CAAC,EAAE,OAAO,CAAC;KACtD,CAAC,CAAC;IAEH,yFAAyF;IACzF,4CAA4C;IAC5C,WAAW,CAAC,QAAQ,CAAC;QACnB,MAAM,EAAE,2CAA2C;QACnD,SAAS,EAAE;YACT,WAAW,CAAC,MAAM,CAAC,WAAW,CAAC;YAC/B,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC;YAClC,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC;SACjC;KACF,CAAC,CAAC;IAEH,oDAAoD;IACpD,yBAAyB;IACzB,6DAA6D;IAC7D,mBAAmB;IACnB,2CAA2C;IAC3C,8CAA8C;IAC9C,SAAS;IACT,MAAM;IAEN,uDAAuD;IACvD,WAAW,CAAC,QAAQ,CAAC;QACnB,MAAM,EAAE,uCAAuC;QAC/C,SAAS,EAAE;YACT,WAAW,CAAC,MAAM,CAAC,WAAW,CAAC;YAC/B,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC;SACtC;KACF,CAAC,CAAC;IAEH,OAAO,WAAW,CAAC;AACrB,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,MAMhC;IACC,MAAM,EACJ,WAAW,EACX,aAAa,EACb,eAAe,EACf,aAAa,EACb,OAAO,GACR,GAAG,MAAM,CAAC;IAEX,MAAM,WAAW,GAAG,IAAI,WAAW,EAAE,CAAC;IAEtC,MAAM,GAAG,GAAG,WAAW,CAAC,QAAQ,CAAC;QAC/B,MAAM,EAAE,yBAAyB;QACjC,SAAS,EAAE;YACT,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC;YACtC,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC;YACxC,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC;SACvC;KACF,CAAC,CAAC;IAEH,WAAW,CAAC,QAAQ,CAAC;QACnB,MAAM,EAAE,iDAAiD;QACzD,SAAS,EAAE;YACT,WAAW,CAAC,MAAM,CAAC,WAAW,CAAC;YAC/B,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC;YAC7B,GAAG;SACJ;KACF,CAAC,CAAC;IAEH,OAAO,WAAW,CAAC;AACrB,CAAC"}
@@ -0,0 +1,9 @@
1
+ import { Secp256k1Keypair } from "@mysten/sui/keypairs/secp256k1";
2
+ import { Transaction } from "@mysten/sui/transactions";
3
+ export declare function buildPublishTx(params: {
4
+ modules: string[];
5
+ dependencies: string[];
6
+ keypair: Secp256k1Keypair;
7
+ }): Promise<{
8
+ tx: Transaction;
9
+ }>;
@@ -0,0 +1,40 @@
1
+ import { Transaction } from "@mysten/sui/transactions";
2
+ export async function buildPublishTx(params) {
3
+ const { modules, dependencies, keypair } = params;
4
+ const address = keypair.toSuiAddress();
5
+ const tx = new Transaction();
6
+ const { Result: publishedDex } = tx.publish({
7
+ modules,
8
+ dependencies,
9
+ });
10
+ const { Result: dex } = tx.transferObjects([
11
+ {
12
+ Result: publishedDex,
13
+ },
14
+ ], address);
15
+ // const paginatedCoins = await suiClient.getCoins({
16
+ // owner: address,
17
+ // });
18
+ // const coins = paginatedCoins.data.map((coin) => {
19
+ // return {
20
+ // objectId: coin.coinObjectId,
21
+ // version: coin.version,
22
+ // digest: coin.digest,
23
+ // };
24
+ // });
25
+ // console.log("coins", coins);
26
+ tx.setSender(address);
27
+ // tx.setGasOwner(address);
28
+ // tx.setGasPayment(coins);
29
+ //console.log("tx", await tx.toJSON());
30
+ //tx.setGasBudget(300_000_000n);
31
+ //console.log("tx", await tx.toJSON());
32
+ //console.time("sign");
33
+ // const signedTx = await tx.sign({
34
+ // signer: keypair,
35
+ // client: suiClient,
36
+ // });
37
+ //console.timeEnd("sign");
38
+ return { tx };
39
+ }
40
+ //# sourceMappingURL=publish.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"publish.js","sourceRoot":"","sources":["../../src/publish.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAIvD,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,MAIpC;IAGC,MAAM,EAAE,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE,GAAG,MAAM,CAAC;IAClD,MAAM,OAAO,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC;IACvC,MAAM,EAAE,GAAG,IAAI,WAAW,EAAE,CAAC;IAC7B,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC;QAC1C,OAAO;QACP,YAAY;KACb,CAAC,CAAC;IACH,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,eAAe,CACxC;QACE;YACE,MAAM,EAAE,YAAY;SACrB;KACF,EACD,OAAO,CACR,CAAC;IACF,oDAAoD;IACpD,oBAAoB;IACpB,MAAM;IACN,oDAAoD;IACpD,aAAa;IACb,mCAAmC;IACnC,6BAA6B;IAC7B,2BAA2B;IAC3B,OAAO;IACP,MAAM;IACN,+BAA+B;IAE/B,EAAE,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;IACtB,2BAA2B;IAC3B,2BAA2B;IAC3B,uCAAuC;IACvC,gCAAgC;IAEhC,uCAAuC;IACvC,uBAAuB;IACvB,mCAAmC;IACnC,qBAAqB;IACrB,uBAAuB;IACvB,MAAM;IACN,0BAA0B;IAC1B,OAAO,EAAE,EAAE,EAAE,CAAC;AAChB,CAAC"}
@@ -0,0 +1 @@
1
+ export declare function sleep(ms: number): Promise<unknown>;
@@ -0,0 +1,4 @@
1
+ export function sleep(ms) {
2
+ return new Promise((resolve) => setTimeout(resolve, ms));
3
+ }
4
+ //# sourceMappingURL=sleep.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sleep.js","sourceRoot":"","sources":["../../src/sleep.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,KAAK,CAAC,EAAU;IAC9B,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC;AAC3D,CAAC"}
@@ -0,0 +1,4 @@
1
+ import { SuiClient } from "@mysten/sui/client";
2
+ export type SuiNetwork = "testnet" | "devnet" | "localnet" | "mainnet";
3
+ export declare const network: SuiNetwork;
4
+ export declare const suiClient: SuiClient;
@@ -0,0 +1,39 @@
1
+ import { getFullnodeUrl, SuiClient } from "@mysten/sui/client";
2
+ import { namedPackagesPlugin, Transaction } from "@mysten/sui/transactions";
3
+ export const network = (process.env.NEXT_PUBLIC_SUI_CHAIN ||
4
+ process.env.SUI_CHAIN ||
5
+ "testnet");
6
+ if (!network) {
7
+ throw new Error("SUI_CHAIN is not set");
8
+ }
9
+ if (network === "testnet") {
10
+ const plugin = namedPackagesPlugin({
11
+ url: "https://testnet.mvr.mystenlabs.com",
12
+ });
13
+ Transaction.registerGlobalSerializationPlugin("namedPackagesPlugin", plugin);
14
+ }
15
+ if (network === "mainnet") {
16
+ // TODO: use @mysten/mvr-static
17
+ const plugin = namedPackagesPlugin({
18
+ url: "https://mainnet.mvr.mystenlabs.com",
19
+ });
20
+ Transaction.registerGlobalSerializationPlugin("namedPackagesPlugin", plugin);
21
+ }
22
+ export const suiClient = new SuiClient({
23
+ url: getUrl(network),
24
+ });
25
+ function getUrl(network) {
26
+ if (network === "testnet") {
27
+ return "https://rpc-testnet.suiscan.xyz:443";
28
+ }
29
+ else if (network === "devnet") {
30
+ return "https://rpc-ws-devnet.suiscan.xyz";
31
+ }
32
+ else if (network === "mainnet") {
33
+ return "https://rpc-mainnet.suiscan.xyz:443";
34
+ }
35
+ else {
36
+ return getFullnodeUrl(network);
37
+ }
38
+ }
39
+ //# sourceMappingURL=sui-client.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sui-client.js","sourceRoot":"","sources":["../../src/sui-client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,SAAS,EAAY,MAAM,oBAAoB,CAAC;AACzE,OAAO,EAAE,mBAAmB,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAG5E,MAAM,CAAC,MAAM,OAAO,GAAe,CAAC,OAAO,CAAC,GAAG,CAAC,qBAAqB;IACnE,OAAO,CAAC,GAAG,CAAC,SAAS;IACrB,SAAS,CAAe,CAAC;AAE3B,IAAI,CAAC,OAAO,EAAE,CAAC;IACb,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC;AAC1C,CAAC;AAED,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;IAC1B,MAAM,MAAM,GAAG,mBAAmB,CAAC;QACjC,GAAG,EAAE,oCAAoC;KAC1C,CAAC,CAAC;IACH,WAAW,CAAC,iCAAiC,CAAC,qBAAqB,EAAE,MAAM,CAAC,CAAC;AAC/E,CAAC;AAED,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;IAC1B,+BAA+B;IAC/B,MAAM,MAAM,GAAG,mBAAmB,CAAC;QACjC,GAAG,EAAE,oCAAoC;KAC1C,CAAC,CAAC;IACH,WAAW,CAAC,iCAAiC,CAAC,qBAAqB,EAAE,MAAM,CAAC,CAAC;AAC/E,CAAC;AAED,MAAM,CAAC,MAAM,SAAS,GAAG,IAAI,SAAS,CAAC;IACrC,GAAG,EAAE,MAAM,CAAC,OAAO,CAAC;CACrB,CAAC,CAAC;AAEH,SAAS,MAAM,CAAC,OAAmB;IACjC,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;QAC1B,OAAO,qCAAqC,CAAC;IAC/C,CAAC;SAAM,IAAI,OAAO,KAAK,QAAQ,EAAE,CAAC;QAChC,OAAO,mCAAmC,CAAC;IAC7C,CAAC;SAAM,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;QACjC,OAAO,qCAAqC,CAAC;IAC/C,CAAC;SAAM,CAAC;QACN,OAAO,cAAc,CAAC,OAAO,CAAC,CAAC;IACjC,CAAC;AACH,CAAC"}
@@ -0,0 +1,4 @@
1
+ export interface MinaSignature {
2
+ r: bigint;
3
+ s: bigint;
4
+ }
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,13 @@
1
+ import { Secp256k1Keypair } from "@mysten/sui/keypairs/secp256k1";
2
+ import { Transaction } from "@mysten/sui/transactions";
3
+ export declare function buildUpgradeTx(params: {
4
+ modules: string[];
5
+ dependencies: string[];
6
+ digest: number[];
7
+ address: string;
8
+ keypair: Secp256k1Keypair;
9
+ packageID: string;
10
+ upgradeCap: string;
11
+ }): Promise<{
12
+ tx: Transaction;
13
+ }>;
@@ -0,0 +1,51 @@
1
+ import { Transaction, UpgradePolicy, } from "@mysten/sui/transactions";
2
+ import { suiClient } from "./sui-client.js";
3
+ export async function buildUpgradeTx(params) {
4
+ const { modules, dependencies, digest, address, keypair, packageID, upgradeCap, } = params;
5
+ const tx = new Transaction();
6
+ const ticket = tx.moveCall({
7
+ target: "0x2::package::authorize_upgrade",
8
+ arguments: [
9
+ tx.object(upgradeCap),
10
+ tx.pure.u8(UpgradePolicy.COMPATIBLE),
11
+ tx.pure.vector("u8", digest),
12
+ ],
13
+ });
14
+ const upgradeData = tx.upgrade({
15
+ package: packageID,
16
+ ticket,
17
+ modules,
18
+ dependencies,
19
+ });
20
+ //console.log("upgradeData", upgradeData);
21
+ const commitData = tx.moveCall({
22
+ target: "0x2::package::commit_upgrade",
23
+ arguments: [tx.object(upgradeCap), upgradeData],
24
+ });
25
+ //console.log("commitData", commitData);
26
+ const paginatedCoins = await suiClient.getCoins({
27
+ owner: address,
28
+ });
29
+ const coins = paginatedCoins.data.map((coin) => {
30
+ return {
31
+ objectId: coin.coinObjectId,
32
+ version: coin.version,
33
+ digest: coin.digest,
34
+ };
35
+ });
36
+ //console.log("coins", coins);
37
+ tx.setSender(address);
38
+ tx.setGasOwner(address);
39
+ tx.setGasPayment(coins);
40
+ //console.log("tx", await tx.toJSON());
41
+ tx.setGasBudget(300_000_000);
42
+ //console.log("tx", await tx.toJSON());
43
+ console.time("sign");
44
+ // const signedTx = await tx.sign({
45
+ // signer: keypair,
46
+ // client: suiClient,
47
+ // });
48
+ console.timeEnd("sign");
49
+ return { tx };
50
+ }
51
+ //# sourceMappingURL=upgrade.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"upgrade.js","sourceRoot":"","sources":["../../src/upgrade.ts"],"names":[],"mappings":"AACA,OAAO,EACL,WAAW,EAEX,aAAa,GACd,MAAM,0BAA0B,CAAC;AAGlC,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAE5C,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,MAQpC;IAGC,MAAM,EACJ,OAAO,EACP,YAAY,EACZ,MAAM,EACN,OAAO,EACP,OAAO,EACP,SAAS,EACT,UAAU,GACX,GAAG,MAAM,CAAC;IACX,MAAM,EAAE,GAAG,IAAI,WAAW,EAAE,CAAC;IAC7B,MAAM,MAAM,GAAG,EAAE,CAAC,QAAQ,CAAC;QACzB,MAAM,EAAE,iCAAiC;QACzC,SAAS,EAAE;YACT,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC;YACrB,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,aAAa,CAAC,UAAU,CAAC;YACpC,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC;SAC7B;KACF,CAAC,CAAC;IACH,MAAM,WAAW,GAAG,EAAE,CAAC,OAAO,CAAC;QAC7B,OAAO,EAAE,SAAS;QAClB,MAAM;QACN,OAAO;QACP,YAAY;KACb,CAAC,CAAC;IACH,0CAA0C;IAC1C,MAAM,UAAU,GAAG,EAAE,CAAC,QAAQ,CAAC;QAC7B,MAAM,EAAE,8BAA8B;QACtC,SAAS,EAAE,CAAC,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE,WAAW,CAAC;KAChD,CAAC,CAAC;IACH,wCAAwC;IACxC,MAAM,cAAc,GAAG,MAAM,SAAS,CAAC,QAAQ,CAAC;QAC9C,KAAK,EAAE,OAAO;KACf,CAAC,CAAC;IACH,MAAM,KAAK,GAAG,cAAc,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;QAC7C,OAAO;YACL,QAAQ,EAAE,IAAI,CAAC,YAAY;YAC3B,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,MAAM,EAAE,IAAI,CAAC,MAAM;SACpB,CAAC;IACJ,CAAC,CAAC,CAAC;IACH,8BAA8B;IAE9B,EAAE,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;IACtB,EAAE,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;IACxB,EAAE,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;IACxB,uCAAuC;IACvC,EAAE,CAAC,YAAY,CAAC,WAAW,CAAC,CAAC;IAE7B,uCAAuC;IACvC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACrB,mCAAmC;IACnC,qBAAqB;IACrB,uBAAuB;IACvB,MAAM;IACN,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IACxB,OAAO,EAAE,EAAE,EAAE,CAAC;AAChB,CAAC"}
package/package.json ADDED
@@ -0,0 +1,59 @@
1
+ {
2
+ "name": "@silvana-one/coordination",
3
+ "description": "Silvana Coordination Client",
4
+ "version": "1.0.15",
5
+ "author": "DFST",
6
+ "bugs": "https://github.com/SilvanaOne/silvana-lib/issues",
7
+ "dependencies": {
8
+ "@mysten/sui": "^1.30.5",
9
+ "mina-signer": "^3.0.7",
10
+ "nanoid": "^5.1.5"
11
+ },
12
+ "devDependencies": {
13
+ "@types/node": "^22.15.30",
14
+ "esbuild": "^0.25.5",
15
+ "typescript": "^5.8.3"
16
+ },
17
+ "engines": {
18
+ "node": ">=22.0.0"
19
+ },
20
+ "exports": {
21
+ "types": "./dist/node/index.d.ts",
22
+ "node": {
23
+ "import": "./dist/node/index.js",
24
+ "require": "./dist/node/index.cjs"
25
+ },
26
+ "browser": "./dist/web/index.js",
27
+ "default": "./dist/web/index.js"
28
+ },
29
+ "files": [
30
+ "dist",
31
+ "src",
32
+ "package.json",
33
+ "README.md",
34
+ "LICENSE"
35
+ ],
36
+ "homepage": "https://docs.silvana.one",
37
+ "keywords": [
38
+ "cloud",
39
+ "silvana",
40
+ "coordination",
41
+ "client",
42
+ "typescript"
43
+ ],
44
+ "license": "Apache-2.0",
45
+ "main": "dist/web/index.js",
46
+ "publishConfig": {
47
+ "access": "public"
48
+ },
49
+ "repository": "SilvanaOne/silvana-lib.git",
50
+ "scripts": {
51
+ "build": "rm -rf dist && tsc && tsc --build tsconfig.web.json && node build-cjs.js",
52
+ "release": "npm publish --access public",
53
+ "test": "NODE_NO_WARNINGS=1 node --loader=ts-node/esm --enable-source-maps -r dotenv/config --require dotenv/config --env-file=.env --test",
54
+ "mvr": "SUI_CHAIN=testnet npm run test test/mvr.test.ts",
55
+ "agent": "SUI_CHAIN=testnet npm run test test/agent.test.ts"
56
+ },
57
+ "type": "module",
58
+ "types": "./dist/node/index.d.ts"
59
+ }