@zksdk/js-private-token-slots-fhe 0.1.2 → 0.1.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/cjs/Client.d.ts.map +1 -0
- package/dist/cjs/Client.js +131 -0
- package/dist/cjs/Client.js.map +1 -0
- package/dist/cjs/index.d.ts.map +1 -0
- package/dist/cjs/index.js +39 -0
- package/dist/cjs/index.js.map +1 -0
- package/dist/cjs/package.json +1 -0
- package/dist/cjs/vaultHelpers.d.ts.map +1 -0
- package/dist/cjs/vaultHelpers.js +116 -0
- package/dist/cjs/vaultHelpers.js.map +1 -0
- package/dist/esm/Client.d.ts +92 -0
- package/dist/esm/Client.d.ts.map +1 -0
- package/dist/esm/Client.js.map +1 -0
- package/dist/esm/index.d.ts +27 -0
- package/dist/esm/index.d.ts.map +1 -0
- package/dist/esm/index.js.map +1 -0
- package/dist/esm/vaultHelpers.d.ts +62 -0
- package/dist/esm/vaultHelpers.d.ts.map +1 -0
- package/dist/esm/vaultHelpers.js.map +1 -0
- package/package.json +17 -8
- package/dist/Client.d.ts.map +0 -1
- package/dist/Client.js.map +0 -1
- package/dist/index.d.ts.map +0 -1
- package/dist/index.js.map +0 -1
- package/dist/vaultHelpers.d.ts.map +0 -1
- package/dist/vaultHelpers.js.map +0 -1
- /package/dist/{Client.d.ts → cjs/Client.d.ts} +0 -0
- /package/dist/{index.d.ts → cjs/index.d.ts} +0 -0
- /package/dist/{vaultHelpers.d.ts → cjs/vaultHelpers.d.ts} +0 -0
- /package/dist/{Client.js → esm/Client.js} +0 -0
- /package/dist/{index.js → esm/index.js} +0 -0
- /package/dist/{vaultHelpers.js → esm/vaultHelpers.js} +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Client.d.ts","sourceRoot":"","sources":["../../src/Client.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAML,KAAK,WAAW,EACjB,MAAM,mBAAmB,CAAC;AAE3B,2BAA2B;AAC3B,MAAM,WAAW,YAAY;IAC3B,qBAAqB;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,0CAA0C;IAC1C,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,qBAAa,MAAM;IACjB,OAAO,CAAC,MAAM,CAAe;IAC7B,OAAO,CAAC,UAAU,CAAa;IAC/B,OAAO,CAAC,UAAU,CAAuB;IACzC,OAAO,CAAC,YAAY,CAAuB;gBAE/B,MAAM,EAAE,YAAY;IAKhC;;OAEG;IACG,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAI3B;;;;OAIG;IACG,WAAW,IAAI,OAAO,CAAC;QAC3B,UAAU,EAAE,MAAM,CAAC;QACnB,SAAS,EAAE,MAAM,CAAC;QAClB,SAAS,EAAE,MAAM,CAAC;QAClB,SAAS,EAAE,MAAM,CAAC;KACnB,CAAC;IA2BF;;;;;OAKG;IACG,SAAS,CAAC,UAAU,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC;IAmBhF;;OAEG;IACH,aAAa,IAAI,MAAM,GAAG,IAAI;IAI9B;;;;;;OAMG;IACH,eAAe,CAAC,SAAS,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG;QACvE,cAAc,EAAE,MAAM,CAAC;QACvB,YAAY,EAAE,MAAM,CAAC;KACtB;IAaD;;OAEG;IACG,gBAAgB,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAI9D;;OAEG;IACG,gBAAgB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAIpD;;;;OAIG;IACH,aAAa,CAAC,kBAAkB,EAAE,MAAM,GAAG;QACzC,QAAQ,EAAE,MAAM,EAAE,CAAC;QACnB,OAAO,EAAE,OAAO,CAAC;KAClB;CAOF"}
|
|
@@ -0,0 +1,131 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Client for Private Token Slots
|
|
4
|
+
*
|
|
5
|
+
* Manages vault registration, key storage, and transfer operations.
|
|
6
|
+
*/
|
|
7
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
8
|
+
exports.Client = void 0;
|
|
9
|
+
const core_1 = require("@zksdk/core");
|
|
10
|
+
const vaultHelpers_js_1 = require("./vaultHelpers.js");
|
|
11
|
+
/**
|
|
12
|
+
* Client - Main client for private token slot operations
|
|
13
|
+
*
|
|
14
|
+
* @example
|
|
15
|
+
* ```typescript
|
|
16
|
+
* import { Client } from '@zksdk/private-token-slots';
|
|
17
|
+
*
|
|
18
|
+
* const client = new Client({ workerUrl: 'http://localhost:8000' });
|
|
19
|
+
*
|
|
20
|
+
* // Create a new vault
|
|
21
|
+
* const { vaultKeyId, clientKey } = await client.createVault();
|
|
22
|
+
* // Save clientKey securely - you need it to decrypt!
|
|
23
|
+
*
|
|
24
|
+
* // Encrypt a transfer
|
|
25
|
+
* const encrypted = await client.encryptTransfer(0, 1, 50);
|
|
26
|
+
* ```
|
|
27
|
+
*/
|
|
28
|
+
class Client {
|
|
29
|
+
constructor(config) {
|
|
30
|
+
this.vaultKeyId = null;
|
|
31
|
+
this.clientKeyB64 = null;
|
|
32
|
+
this.config = config;
|
|
33
|
+
this.tfheClient = new core_1.TfheClient();
|
|
34
|
+
}
|
|
35
|
+
/**
|
|
36
|
+
* Initialize the client
|
|
37
|
+
*/
|
|
38
|
+
async init() {
|
|
39
|
+
await this.tfheClient.init();
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* Create a new vault with client-side key generation
|
|
43
|
+
*
|
|
44
|
+
* SECURITY: ClientKey stays on your machine!
|
|
45
|
+
*/
|
|
46
|
+
async createVault() {
|
|
47
|
+
await this.init();
|
|
48
|
+
// Generate keys client-side
|
|
49
|
+
const keys = await this.tfheClient.generateVaultKeys();
|
|
50
|
+
// Register vault with worker (only server + public keys sent)
|
|
51
|
+
const registration = await (0, vaultHelpers_js_1.registerVault)(this.config.workerUrl, keys.serverKey, keys.publicKey, this.config.apiKey);
|
|
52
|
+
this.vaultKeyId = registration.vault_key_id;
|
|
53
|
+
this.clientKeyB64 = keys.clientKey;
|
|
54
|
+
console.log(`Vault created: ${registration.vault_key_id}`);
|
|
55
|
+
return {
|
|
56
|
+
vaultKeyId: registration.vault_key_id,
|
|
57
|
+
clientKey: keys.clientKey,
|
|
58
|
+
serverKey: keys.serverKey,
|
|
59
|
+
publicKey: keys.publicKey,
|
|
60
|
+
};
|
|
61
|
+
}
|
|
62
|
+
/**
|
|
63
|
+
* Load an existing vault by ID
|
|
64
|
+
*
|
|
65
|
+
* @param vaultKeyId - 64-char hex vault key ID
|
|
66
|
+
* @param clientKeyB64 - Your saved ClientKey (for decryption)
|
|
67
|
+
*/
|
|
68
|
+
async loadVault(vaultKeyId, clientKeyB64) {
|
|
69
|
+
await this.init();
|
|
70
|
+
// Verify vault exists
|
|
71
|
+
const params = await (0, vaultHelpers_js_1.getVaultParams)(this.config.workerUrl, vaultKeyId);
|
|
72
|
+
this.vaultKeyId = vaultKeyId;
|
|
73
|
+
if (clientKeyB64) {
|
|
74
|
+
this.clientKeyB64 = clientKeyB64;
|
|
75
|
+
this.tfheClient.loadClientKey(clientKeyB64);
|
|
76
|
+
}
|
|
77
|
+
else {
|
|
78
|
+
// External user - load public key for encryption only
|
|
79
|
+
await this.tfheClient.loadVaultPublicKey(this.config.workerUrl, vaultKeyId);
|
|
80
|
+
}
|
|
81
|
+
return params;
|
|
82
|
+
}
|
|
83
|
+
/**
|
|
84
|
+
* Get current vault key ID
|
|
85
|
+
*/
|
|
86
|
+
getVaultKeyId() {
|
|
87
|
+
return this.vaultKeyId;
|
|
88
|
+
}
|
|
89
|
+
/**
|
|
90
|
+
* Encrypt transfer parameters
|
|
91
|
+
*
|
|
92
|
+
* @param senderIdx - Sender's slot index (0-255)
|
|
93
|
+
* @param receiverIdx - Receiver's slot index (0-255)
|
|
94
|
+
* @param amount - Transfer amount (0-255)
|
|
95
|
+
*/
|
|
96
|
+
encryptTransfer(senderIdx, receiverIdx, amount) {
|
|
97
|
+
if (!this.vaultKeyId) {
|
|
98
|
+
throw new Error('No vault loaded. Call createVault() or loadVault() first.');
|
|
99
|
+
}
|
|
100
|
+
const { encrypted_data } = this.tfheClient.encryptTransferParams(senderIdx, receiverIdx, amount);
|
|
101
|
+
return {
|
|
102
|
+
encrypted_data,
|
|
103
|
+
vault_key_id: this.vaultKeyId,
|
|
104
|
+
};
|
|
105
|
+
}
|
|
106
|
+
/**
|
|
107
|
+
* Store encrypted balance blob
|
|
108
|
+
*/
|
|
109
|
+
async storeBalanceBlob(encryptedBlob) {
|
|
110
|
+
return (0, vaultHelpers_js_1.storeData)(this.config.workerUrl, encryptedBlob, this.config.apiKey);
|
|
111
|
+
}
|
|
112
|
+
/**
|
|
113
|
+
* Fetch encrypted balance blob by CID
|
|
114
|
+
*/
|
|
115
|
+
async fetchBalanceBlob(cid) {
|
|
116
|
+
return (0, vaultHelpers_js_1.fetchData)(this.config.workerUrl, cid);
|
|
117
|
+
}
|
|
118
|
+
/**
|
|
119
|
+
* Decrypt CMUX token result
|
|
120
|
+
*
|
|
121
|
+
* Requires ClientKey - only vault owner can call this!
|
|
122
|
+
*/
|
|
123
|
+
decryptResult(encryptedResultB64) {
|
|
124
|
+
if (!this.clientKeyB64) {
|
|
125
|
+
throw new Error('No ClientKey loaded. Only vault owner can decrypt.');
|
|
126
|
+
}
|
|
127
|
+
return this.tfheClient.decryptCmuxToken(encryptedResultB64);
|
|
128
|
+
}
|
|
129
|
+
}
|
|
130
|
+
exports.Client = Client;
|
|
131
|
+
//# sourceMappingURL=Client.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Client.js","sourceRoot":"","sources":["../../src/Client.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,EAAE,MAAM,EAAE,KAAK,YAAY,EAAE,MAAM,aAAa,CAAC;AAGxD,OAAO,EAAE,MAAM,IAAI,eAAe,EAAE,MAAM,aAAa,CAAC;AAExD,OAAO,EACL,aAAa,EACb,cAAc,EACd,iBAAiB,EACjB,WAAW,EACX,SAAS,EACT,SAAS,EACT,KAAK,WAAW,GACjB,MAAM,mBAAmB,CAAC;AAE3B,yCAAyC;AACzC,eAAO,MAAM,UAAU,2BAA2B,CAAC;AACnD,qCAAqC;AACrC,eAAO,MAAM,iBAAiB,yBAAyB,CAAC;AAExD,sBAAsB;AACtB,eAAO,MAAM,OAAO,UAAU,CAAC"}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* @zksdk/private-token-slots - Vault management for private token transfers
|
|
4
|
+
*
|
|
5
|
+
* @example
|
|
6
|
+
* ```typescript
|
|
7
|
+
* import { SlotVaultClient } from '@zksdk/private-token-slots';
|
|
8
|
+
*
|
|
9
|
+
* const client = new SlotVaultClient({ workerUrl: 'http://localhost:8000' });
|
|
10
|
+
*
|
|
11
|
+
* // Create a vault
|
|
12
|
+
* const { vaultKeyId, clientKey } = await client.createVault();
|
|
13
|
+
* // IMPORTANT: Save clientKey securely!
|
|
14
|
+
*
|
|
15
|
+
* // Encrypt a transfer
|
|
16
|
+
* const encrypted = client.encryptTransfer(0, 1, 50);
|
|
17
|
+
* ```
|
|
18
|
+
*/
|
|
19
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
20
|
+
exports.VERSION = exports.CIRCUIT_ID_LEGACY = exports.CIRCUIT_ID = exports.fetchData = exports.storeData = exports.vaultExists = exports.getVaultPublicKey = exports.getVaultParams = exports.registerVault = exports.SlotVaultClient = exports.Client = void 0;
|
|
21
|
+
var Client_js_1 = require("./Client.js");
|
|
22
|
+
Object.defineProperty(exports, "Client", { enumerable: true, get: function () { return Client_js_1.Client; } });
|
|
23
|
+
// Export SlotVaultClient as an alias for better developer experience
|
|
24
|
+
var Client_js_2 = require("./Client.js");
|
|
25
|
+
Object.defineProperty(exports, "SlotVaultClient", { enumerable: true, get: function () { return Client_js_2.Client; } });
|
|
26
|
+
var vaultHelpers_js_1 = require("./vaultHelpers.js");
|
|
27
|
+
Object.defineProperty(exports, "registerVault", { enumerable: true, get: function () { return vaultHelpers_js_1.registerVault; } });
|
|
28
|
+
Object.defineProperty(exports, "getVaultParams", { enumerable: true, get: function () { return vaultHelpers_js_1.getVaultParams; } });
|
|
29
|
+
Object.defineProperty(exports, "getVaultPublicKey", { enumerable: true, get: function () { return vaultHelpers_js_1.getVaultPublicKey; } });
|
|
30
|
+
Object.defineProperty(exports, "vaultExists", { enumerable: true, get: function () { return vaultHelpers_js_1.vaultExists; } });
|
|
31
|
+
Object.defineProperty(exports, "storeData", { enumerable: true, get: function () { return vaultHelpers_js_1.storeData; } });
|
|
32
|
+
Object.defineProperty(exports, "fetchData", { enumerable: true, get: function () { return vaultHelpers_js_1.fetchData; } });
|
|
33
|
+
/** Circuit ID for private token slots */
|
|
34
|
+
exports.CIRCUIT_ID = 'private_token_slots_v1';
|
|
35
|
+
/** Legacy circuit ID (deprecated) */
|
|
36
|
+
exports.CIRCUIT_ID_LEGACY = 'cmux_token_v1_linear';
|
|
37
|
+
/** Package version */
|
|
38
|
+
exports.VERSION = '0.1.0';
|
|
39
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;GAgBG;;;AAEH,yCAAwD;AAA/C,mGAAA,MAAM,OAAA;AAEf,qEAAqE;AACrE,yCAAwD;AAA/C,4GAAA,MAAM,OAAmB;AAElC,qDAQ2B;AAPzB,gHAAA,aAAa,OAAA;AACb,iHAAA,cAAc,OAAA;AACd,oHAAA,iBAAiB,OAAA;AACjB,8GAAA,WAAW,OAAA;AACX,4GAAA,SAAS,OAAA;AACT,4GAAA,SAAS,OAAA;AAIX,yCAAyC;AAC5B,QAAA,UAAU,GAAG,wBAAwB,CAAC;AACnD,qCAAqC;AACxB,QAAA,iBAAiB,GAAG,sBAAsB,CAAC;AAExD,sBAAsB;AACT,QAAA,OAAO,GAAG,OAAO,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"type":"commonjs"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"vaultHelpers.d.ts","sourceRoot":"","sources":["../../src/vaultHelpers.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAErD,4CAA4C;AAC5C,MAAM,WAAW,WAAW;IAC1B,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,qCAAqC;AACrC,MAAM,WAAW,oBAAoB;IACnC,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;;;;;;;;;;;GAYG;AACH,wBAAsB,aAAa,CAAC,OAAO,EAAE,oBAAoB,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAC;AAC/F;;;GAGG;AACH,wBAAsB,aAAa,CACjC,SAAS,EAAE,MAAM,EACjB,YAAY,EAAE,MAAM,EACpB,YAAY,EAAE,MAAM,EACpB,MAAM,CAAC,EAAE,MAAM,GACd,OAAO,CAAC,iBAAiB,CAAC,CAAC;AA4C9B;;GAEG;AACH,wBAAsB,cAAc,CAClC,SAAS,EAAE,MAAM,EACjB,UAAU,EAAE,MAAM,GACjB,OAAO,CAAC,WAAW,CAAC,CAStB;AAED;;GAEG;AACH,wBAAsB,iBAAiB,CACrC,SAAS,EAAE,MAAM,EACjB,UAAU,EAAE,MAAM,GACjB,OAAO,CAAC,MAAM,CAAC,CAUjB;AAED;;GAEG;AACH,wBAAsB,WAAW,CAC/B,SAAS,EAAE,MAAM,EACjB,UAAU,EAAE,MAAM,GACjB,OAAO,CAAC,OAAO,CAAC,CAOlB;AAED;;;;GAIG;AACH,wBAAsB,SAAS,CAC7B,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE,MAAM,EACZ,MAAM,CAAC,EAAE,MAAM,GACd,OAAO,CAAC,MAAM,CAAC,CAsBjB;AAED;;GAEG;AACH,wBAAsB,SAAS,CAC7B,SAAS,EAAE,MAAM,EACjB,GAAG,EAAE,MAAM,GACV,OAAO,CAAC,MAAM,CAAC,CAUjB"}
|
|
@@ -0,0 +1,116 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Vault Helper Functions for Private Token Slots
|
|
4
|
+
*
|
|
5
|
+
* These functions interact with the FHE Worker API to manage vaults.
|
|
6
|
+
*/
|
|
7
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
8
|
+
exports.registerVault = registerVault;
|
|
9
|
+
exports.getVaultParams = getVaultParams;
|
|
10
|
+
exports.getVaultPublicKey = getVaultPublicKey;
|
|
11
|
+
exports.vaultExists = vaultExists;
|
|
12
|
+
exports.storeData = storeData;
|
|
13
|
+
exports.fetchData = fetchData;
|
|
14
|
+
async function registerVault(optionsOrWorkerUrl, serverKeyB64, publicKeyB64, apiKey) {
|
|
15
|
+
// Normalize to options object
|
|
16
|
+
const options = typeof optionsOrWorkerUrl === 'string'
|
|
17
|
+
? {
|
|
18
|
+
workerUrl: optionsOrWorkerUrl,
|
|
19
|
+
serverKeyB64: serverKeyB64,
|
|
20
|
+
publicKeyB64: publicKeyB64,
|
|
21
|
+
apiKey,
|
|
22
|
+
}
|
|
23
|
+
: optionsOrWorkerUrl;
|
|
24
|
+
const headers = {
|
|
25
|
+
'Content-Type': 'application/json',
|
|
26
|
+
};
|
|
27
|
+
if (options.apiKey) {
|
|
28
|
+
headers['X-API-Key'] = options.apiKey;
|
|
29
|
+
}
|
|
30
|
+
const response = await fetch(`${options.workerUrl}/api/v1/vault/register`, {
|
|
31
|
+
method: 'POST',
|
|
32
|
+
headers,
|
|
33
|
+
body: JSON.stringify({
|
|
34
|
+
server_key: options.serverKeyB64,
|
|
35
|
+
public_key: options.publicKeyB64,
|
|
36
|
+
num_slots: options.numSlots,
|
|
37
|
+
}),
|
|
38
|
+
});
|
|
39
|
+
if (!response.ok) {
|
|
40
|
+
const error = await response.text();
|
|
41
|
+
throw new Error(`Failed to register vault: ${error}`);
|
|
42
|
+
}
|
|
43
|
+
return response.json();
|
|
44
|
+
}
|
|
45
|
+
/**
|
|
46
|
+
* Get vault parameters
|
|
47
|
+
*/
|
|
48
|
+
async function getVaultParams(workerUrl, vaultKeyId) {
|
|
49
|
+
const response = await fetch(`${workerUrl}/api/v1/vault/${vaultKeyId}`);
|
|
50
|
+
if (!response.ok) {
|
|
51
|
+
const error = await response.text();
|
|
52
|
+
throw new Error(`Failed to get vault params: ${error}`);
|
|
53
|
+
}
|
|
54
|
+
return response.json();
|
|
55
|
+
}
|
|
56
|
+
/**
|
|
57
|
+
* Get vault's public key for encryption
|
|
58
|
+
*/
|
|
59
|
+
async function getVaultPublicKey(workerUrl, vaultKeyId) {
|
|
60
|
+
const response = await fetch(`${workerUrl}/api/v1/vault/${vaultKeyId}/public-key`);
|
|
61
|
+
if (!response.ok) {
|
|
62
|
+
const error = await response.text();
|
|
63
|
+
throw new Error(`Failed to get vault public key: ${error}`);
|
|
64
|
+
}
|
|
65
|
+
const data = await response.json();
|
|
66
|
+
return data.public_key;
|
|
67
|
+
}
|
|
68
|
+
/**
|
|
69
|
+
* Check if vault exists
|
|
70
|
+
*/
|
|
71
|
+
async function vaultExists(workerUrl, vaultKeyId) {
|
|
72
|
+
try {
|
|
73
|
+
const response = await fetch(`${workerUrl}/api/v1/vault/${vaultKeyId}`);
|
|
74
|
+
return response.ok;
|
|
75
|
+
}
|
|
76
|
+
catch {
|
|
77
|
+
return false;
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
/**
|
|
81
|
+
* Store encrypted data in worker storage
|
|
82
|
+
*
|
|
83
|
+
* @returns CID (content identifier) for retrieval
|
|
84
|
+
*/
|
|
85
|
+
async function storeData(workerUrl, data, apiKey) {
|
|
86
|
+
const headers = {
|
|
87
|
+
'Content-Type': 'application/json',
|
|
88
|
+
};
|
|
89
|
+
if (apiKey) {
|
|
90
|
+
headers['X-API-Key'] = apiKey;
|
|
91
|
+
}
|
|
92
|
+
const response = await fetch(`${workerUrl}/api/v1/storage`, {
|
|
93
|
+
method: 'POST',
|
|
94
|
+
headers,
|
|
95
|
+
body: JSON.stringify({ data }),
|
|
96
|
+
});
|
|
97
|
+
if (!response.ok) {
|
|
98
|
+
const error = await response.text();
|
|
99
|
+
throw new Error(`Failed to store data: ${error}`);
|
|
100
|
+
}
|
|
101
|
+
const result = await response.json();
|
|
102
|
+
return result.cid;
|
|
103
|
+
}
|
|
104
|
+
/**
|
|
105
|
+
* Fetch encrypted data by CID
|
|
106
|
+
*/
|
|
107
|
+
async function fetchData(workerUrl, cid) {
|
|
108
|
+
const response = await fetch(`${workerUrl}/api/v1/storage/${cid}`);
|
|
109
|
+
if (!response.ok) {
|
|
110
|
+
const error = await response.text();
|
|
111
|
+
throw new Error(`Failed to fetch data: ${error}`);
|
|
112
|
+
}
|
|
113
|
+
const result = await response.json();
|
|
114
|
+
return result.data;
|
|
115
|
+
}
|
|
116
|
+
//# sourceMappingURL=vaultHelpers.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"vaultHelpers.js","sourceRoot":"","sources":["../../src/vaultHelpers.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Client for Private Token Slots
|
|
3
|
+
*
|
|
4
|
+
* Manages vault registration, key storage, and transfer operations.
|
|
5
|
+
*/
|
|
6
|
+
import { type VaultParams } from './vaultHelpers.js';
|
|
7
|
+
/** Client configuration */
|
|
8
|
+
export interface ClientConfig {
|
|
9
|
+
/** FHE Worker URL */
|
|
10
|
+
workerUrl: string;
|
|
11
|
+
/** Optional API key for authentication */
|
|
12
|
+
apiKey?: string;
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* Client - Main client for private token slot operations
|
|
16
|
+
*
|
|
17
|
+
* @example
|
|
18
|
+
* ```typescript
|
|
19
|
+
* import { Client } from '@zksdk/private-token-slots';
|
|
20
|
+
*
|
|
21
|
+
* const client = new Client({ workerUrl: 'http://localhost:8000' });
|
|
22
|
+
*
|
|
23
|
+
* // Create a new vault
|
|
24
|
+
* const { vaultKeyId, clientKey } = await client.createVault();
|
|
25
|
+
* // Save clientKey securely - you need it to decrypt!
|
|
26
|
+
*
|
|
27
|
+
* // Encrypt a transfer
|
|
28
|
+
* const encrypted = await client.encryptTransfer(0, 1, 50);
|
|
29
|
+
* ```
|
|
30
|
+
*/
|
|
31
|
+
export declare class Client {
|
|
32
|
+
private config;
|
|
33
|
+
private tfheClient;
|
|
34
|
+
private vaultKeyId;
|
|
35
|
+
private clientKeyB64;
|
|
36
|
+
constructor(config: ClientConfig);
|
|
37
|
+
/**
|
|
38
|
+
* Initialize the client
|
|
39
|
+
*/
|
|
40
|
+
init(): Promise<void>;
|
|
41
|
+
/**
|
|
42
|
+
* Create a new vault with client-side key generation
|
|
43
|
+
*
|
|
44
|
+
* SECURITY: ClientKey stays on your machine!
|
|
45
|
+
*/
|
|
46
|
+
createVault(): Promise<{
|
|
47
|
+
vaultKeyId: string;
|
|
48
|
+
clientKey: string;
|
|
49
|
+
serverKey: string;
|
|
50
|
+
publicKey: string;
|
|
51
|
+
}>;
|
|
52
|
+
/**
|
|
53
|
+
* Load an existing vault by ID
|
|
54
|
+
*
|
|
55
|
+
* @param vaultKeyId - 64-char hex vault key ID
|
|
56
|
+
* @param clientKeyB64 - Your saved ClientKey (for decryption)
|
|
57
|
+
*/
|
|
58
|
+
loadVault(vaultKeyId: string, clientKeyB64?: string): Promise<VaultParams>;
|
|
59
|
+
/**
|
|
60
|
+
* Get current vault key ID
|
|
61
|
+
*/
|
|
62
|
+
getVaultKeyId(): string | null;
|
|
63
|
+
/**
|
|
64
|
+
* Encrypt transfer parameters
|
|
65
|
+
*
|
|
66
|
+
* @param senderIdx - Sender's slot index (0-255)
|
|
67
|
+
* @param receiverIdx - Receiver's slot index (0-255)
|
|
68
|
+
* @param amount - Transfer amount (0-255)
|
|
69
|
+
*/
|
|
70
|
+
encryptTransfer(senderIdx: number, receiverIdx: number, amount: number): {
|
|
71
|
+
encrypted_data: string;
|
|
72
|
+
vault_key_id: string;
|
|
73
|
+
};
|
|
74
|
+
/**
|
|
75
|
+
* Store encrypted balance blob
|
|
76
|
+
*/
|
|
77
|
+
storeBalanceBlob(encryptedBlob: string): Promise<string>;
|
|
78
|
+
/**
|
|
79
|
+
* Fetch encrypted balance blob by CID
|
|
80
|
+
*/
|
|
81
|
+
fetchBalanceBlob(cid: string): Promise<string>;
|
|
82
|
+
/**
|
|
83
|
+
* Decrypt CMUX token result
|
|
84
|
+
*
|
|
85
|
+
* Requires ClientKey - only vault owner can call this!
|
|
86
|
+
*/
|
|
87
|
+
decryptResult(encryptedResultB64: string): {
|
|
88
|
+
balances: number[];
|
|
89
|
+
isValid: boolean;
|
|
90
|
+
};
|
|
91
|
+
}
|
|
92
|
+
//# sourceMappingURL=Client.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Client.d.ts","sourceRoot":"","sources":["../../src/Client.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAML,KAAK,WAAW,EACjB,MAAM,mBAAmB,CAAC;AAE3B,2BAA2B;AAC3B,MAAM,WAAW,YAAY;IAC3B,qBAAqB;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,0CAA0C;IAC1C,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,qBAAa,MAAM;IACjB,OAAO,CAAC,MAAM,CAAe;IAC7B,OAAO,CAAC,UAAU,CAAa;IAC/B,OAAO,CAAC,UAAU,CAAuB;IACzC,OAAO,CAAC,YAAY,CAAuB;gBAE/B,MAAM,EAAE,YAAY;IAKhC;;OAEG;IACG,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAI3B;;;;OAIG;IACG,WAAW,IAAI,OAAO,CAAC;QAC3B,UAAU,EAAE,MAAM,CAAC;QACnB,SAAS,EAAE,MAAM,CAAC;QAClB,SAAS,EAAE,MAAM,CAAC;QAClB,SAAS,EAAE,MAAM,CAAC;KACnB,CAAC;IA2BF;;;;;OAKG;IACG,SAAS,CAAC,UAAU,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC;IAmBhF;;OAEG;IACH,aAAa,IAAI,MAAM,GAAG,IAAI;IAI9B;;;;;;OAMG;IACH,eAAe,CAAC,SAAS,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG;QACvE,cAAc,EAAE,MAAM,CAAC;QACvB,YAAY,EAAE,MAAM,CAAC;KACtB;IAaD;;OAEG;IACG,gBAAgB,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAI9D;;OAEG;IACG,gBAAgB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAIpD;;;;OAIG;IACH,aAAa,CAAC,kBAAkB,EAAE,MAAM,GAAG;QACzC,QAAQ,EAAE,MAAM,EAAE,CAAC;QACnB,OAAO,EAAE,OAAO,CAAC;KAClB;CAOF"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Client.js","sourceRoot":"","sources":["../../src/Client.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,UAAU,EAAkB,MAAM,aAAa,CAAC;AACzD,OAAO,EACL,aAAa,EACb,cAAc,EAEd,SAAS,EACT,SAAS,GAEV,MAAM,mBAAmB,CAAC;AAU3B;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,OAAO,MAAM;IAMjB,YAAY,MAAoB;QAHxB,eAAU,GAAkB,IAAI,CAAC;QACjC,iBAAY,GAAkB,IAAI,CAAC;QAGzC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,UAAU,GAAG,IAAI,UAAU,EAAE,CAAC;IACrC,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,IAAI;QACR,MAAM,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC;IAC/B,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,WAAW;QAMf,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC;QAElB,4BAA4B;QAC5B,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,iBAAiB,EAAE,CAAC;QAEvD,8DAA8D;QAC9D,MAAM,YAAY,GAAG,MAAM,aAAa,CACtC,IAAI,CAAC,MAAM,CAAC,SAAS,EACrB,IAAI,CAAC,SAAS,EACd,IAAI,CAAC,SAAS,EACd,IAAI,CAAC,MAAM,CAAC,MAAM,CACnB,CAAC;QAEF,IAAI,CAAC,UAAU,GAAG,YAAY,CAAC,YAAY,CAAC;QAC5C,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,SAAS,CAAC;QAEnC,OAAO,CAAC,GAAG,CAAC,kBAAkB,YAAY,CAAC,YAAY,EAAE,CAAC,CAAC;QAE3D,OAAO;YACL,UAAU,EAAE,YAAY,CAAC,YAAY;YACrC,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,SAAS,EAAE,IAAI,CAAC,SAAS;SAC1B,CAAC;IACJ,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,SAAS,CAAC,UAAkB,EAAE,YAAqB;QACvD,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC;QAElB,sBAAsB;QACtB,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC;QAEvE,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAE7B,IAAI,YAAY,EAAE,CAAC;YACjB,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;YACjC,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,YAAY,CAAC,CAAC;QAC9C,CAAC;aAAM,CAAC;YACN,sDAAsD;YACtD,MAAM,IAAI,CAAC,UAAU,CAAC,kBAAkB,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC;QAC9E,CAAC;QAED,OAAO,MAAM,CAAC;IAChB,CAAC;IAED;;OAEG;IACH,aAAa;QACX,OAAO,IAAI,CAAC,UAAU,CAAC;IACzB,CAAC;IAED;;;;;;OAMG;IACH,eAAe,CAAC,SAAiB,EAAE,WAAmB,EAAE,MAAc;QAIpE,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;YACrB,MAAM,IAAI,KAAK,CAAC,2DAA2D,CAAC,CAAC;QAC/E,CAAC;QAED,MAAM,EAAE,cAAc,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,qBAAqB,CAAC,SAAS,EAAE,WAAW,EAAE,MAAM,CAAC,CAAC;QAEjG,OAAO;YACL,cAAc;YACd,YAAY,EAAE,IAAI,CAAC,UAAU;SAC9B,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,gBAAgB,CAAC,aAAqB;QAC1C,OAAO,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,aAAa,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IAC7E,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,gBAAgB,CAAC,GAAW;QAChC,OAAO,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;IAC/C,CAAC;IAED;;;;OAIG;IACH,aAAa,CAAC,kBAA0B;QAItC,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC;YACvB,MAAM,IAAI,KAAK,CAAC,oDAAoD,CAAC,CAAC;QACxE,CAAC;QAED,OAAO,IAAI,CAAC,UAAU,CAAC,gBAAgB,CAAC,kBAAkB,CAAC,CAAC;IAC9D,CAAC;CACF"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @zksdk/private-token-slots - Vault management for private token transfers
|
|
3
|
+
*
|
|
4
|
+
* @example
|
|
5
|
+
* ```typescript
|
|
6
|
+
* import { SlotVaultClient } from '@zksdk/private-token-slots';
|
|
7
|
+
*
|
|
8
|
+
* const client = new SlotVaultClient({ workerUrl: 'http://localhost:8000' });
|
|
9
|
+
*
|
|
10
|
+
* // Create a vault
|
|
11
|
+
* const { vaultKeyId, clientKey } = await client.createVault();
|
|
12
|
+
* // IMPORTANT: Save clientKey securely!
|
|
13
|
+
*
|
|
14
|
+
* // Encrypt a transfer
|
|
15
|
+
* const encrypted = client.encryptTransfer(0, 1, 50);
|
|
16
|
+
* ```
|
|
17
|
+
*/
|
|
18
|
+
export { Client, type ClientConfig } from './Client.js';
|
|
19
|
+
export { Client as SlotVaultClient } from './Client.js';
|
|
20
|
+
export { registerVault, getVaultParams, getVaultPublicKey, vaultExists, storeData, fetchData, type VaultParams, } from './vaultHelpers.js';
|
|
21
|
+
/** Circuit ID for private token slots */
|
|
22
|
+
export declare const CIRCUIT_ID = "private_token_slots_v1";
|
|
23
|
+
/** Legacy circuit ID (deprecated) */
|
|
24
|
+
export declare const CIRCUIT_ID_LEGACY = "cmux_token_v1_linear";
|
|
25
|
+
/** Package version */
|
|
26
|
+
export declare const VERSION = "0.1.0";
|
|
27
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,EAAE,MAAM,EAAE,KAAK,YAAY,EAAE,MAAM,aAAa,CAAC;AAGxD,OAAO,EAAE,MAAM,IAAI,eAAe,EAAE,MAAM,aAAa,CAAC;AAExD,OAAO,EACL,aAAa,EACb,cAAc,EACd,iBAAiB,EACjB,WAAW,EACX,SAAS,EACT,SAAS,EACT,KAAK,WAAW,GACjB,MAAM,mBAAmB,CAAC;AAE3B,yCAAyC;AACzC,eAAO,MAAM,UAAU,2BAA2B,CAAC;AACnD,qCAAqC;AACrC,eAAO,MAAM,iBAAiB,yBAAyB,CAAC;AAExD,sBAAsB;AACtB,eAAO,MAAM,OAAO,UAAU,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,EAAE,MAAM,EAAqB,MAAM,aAAa,CAAC;AAExD,qEAAqE;AACrE,OAAO,EAAE,MAAM,IAAI,eAAe,EAAE,MAAM,aAAa,CAAC;AAExD,OAAO,EACL,aAAa,EACb,cAAc,EACd,iBAAiB,EACjB,WAAW,EACX,SAAS,EACT,SAAS,GAEV,MAAM,mBAAmB,CAAC;AAE3B,yCAAyC;AACzC,MAAM,CAAC,MAAM,UAAU,GAAG,wBAAwB,CAAC;AACnD,qCAAqC;AACrC,MAAM,CAAC,MAAM,iBAAiB,GAAG,sBAAsB,CAAC;AAExD,sBAAsB;AACtB,MAAM,CAAC,MAAM,OAAO,GAAG,OAAO,CAAC"}
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Vault Helper Functions for Private Token Slots
|
|
3
|
+
*
|
|
4
|
+
* These functions interact with the FHE Worker API to manage vaults.
|
|
5
|
+
*/
|
|
6
|
+
import type { VaultRegistration } from '@zksdk/core';
|
|
7
|
+
/** Vault parameters returned from worker */
|
|
8
|
+
export interface VaultParams {
|
|
9
|
+
vault_key_id: string;
|
|
10
|
+
num_slots: number;
|
|
11
|
+
created_at: string;
|
|
12
|
+
}
|
|
13
|
+
/** Options for vault registration */
|
|
14
|
+
export interface RegisterVaultOptions {
|
|
15
|
+
workerUrl: string;
|
|
16
|
+
serverKeyB64: string;
|
|
17
|
+
publicKeyB64: string;
|
|
18
|
+
numSlots?: number;
|
|
19
|
+
apiKey?: string;
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* Register a new vault with the FHE worker
|
|
23
|
+
*
|
|
24
|
+
* SECURITY: Only ServerKey and PublicKey are sent.
|
|
25
|
+
* ClientKey stays on your machine!
|
|
26
|
+
*
|
|
27
|
+
* @param options - Registration options
|
|
28
|
+
* @param options.workerUrl - FHE Worker base URL
|
|
29
|
+
* @param options.serverKeyB64 - Base64 encoded ServerKey
|
|
30
|
+
* @param options.publicKeyB64 - Base64 encoded PublicKey
|
|
31
|
+
* @param options.numSlots - Number of balance slots (1-256, default 32)
|
|
32
|
+
* @param options.apiKey - Optional API key for authentication
|
|
33
|
+
*/
|
|
34
|
+
export declare function registerVault(options: RegisterVaultOptions): Promise<VaultRegistration>;
|
|
35
|
+
/**
|
|
36
|
+
* Register a new vault with the FHE worker (legacy signature)
|
|
37
|
+
* @deprecated Use options object signature instead
|
|
38
|
+
*/
|
|
39
|
+
export declare function registerVault(workerUrl: string, serverKeyB64: string, publicKeyB64: string, apiKey?: string): Promise<VaultRegistration>;
|
|
40
|
+
/**
|
|
41
|
+
* Get vault parameters
|
|
42
|
+
*/
|
|
43
|
+
export declare function getVaultParams(workerUrl: string, vaultKeyId: string): Promise<VaultParams>;
|
|
44
|
+
/**
|
|
45
|
+
* Get vault's public key for encryption
|
|
46
|
+
*/
|
|
47
|
+
export declare function getVaultPublicKey(workerUrl: string, vaultKeyId: string): Promise<string>;
|
|
48
|
+
/**
|
|
49
|
+
* Check if vault exists
|
|
50
|
+
*/
|
|
51
|
+
export declare function vaultExists(workerUrl: string, vaultKeyId: string): Promise<boolean>;
|
|
52
|
+
/**
|
|
53
|
+
* Store encrypted data in worker storage
|
|
54
|
+
*
|
|
55
|
+
* @returns CID (content identifier) for retrieval
|
|
56
|
+
*/
|
|
57
|
+
export declare function storeData(workerUrl: string, data: string, apiKey?: string): Promise<string>;
|
|
58
|
+
/**
|
|
59
|
+
* Fetch encrypted data by CID
|
|
60
|
+
*/
|
|
61
|
+
export declare function fetchData(workerUrl: string, cid: string): Promise<string>;
|
|
62
|
+
//# sourceMappingURL=vaultHelpers.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"vaultHelpers.d.ts","sourceRoot":"","sources":["../../src/vaultHelpers.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAErD,4CAA4C;AAC5C,MAAM,WAAW,WAAW;IAC1B,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,qCAAqC;AACrC,MAAM,WAAW,oBAAoB;IACnC,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;;;;;;;;;;;GAYG;AACH,wBAAsB,aAAa,CAAC,OAAO,EAAE,oBAAoB,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAC;AAC/F;;;GAGG;AACH,wBAAsB,aAAa,CACjC,SAAS,EAAE,MAAM,EACjB,YAAY,EAAE,MAAM,EACpB,YAAY,EAAE,MAAM,EACpB,MAAM,CAAC,EAAE,MAAM,GACd,OAAO,CAAC,iBAAiB,CAAC,CAAC;AA4C9B;;GAEG;AACH,wBAAsB,cAAc,CAClC,SAAS,EAAE,MAAM,EACjB,UAAU,EAAE,MAAM,GACjB,OAAO,CAAC,WAAW,CAAC,CAStB;AAED;;GAEG;AACH,wBAAsB,iBAAiB,CACrC,SAAS,EAAE,MAAM,EACjB,UAAU,EAAE,MAAM,GACjB,OAAO,CAAC,MAAM,CAAC,CAUjB;AAED;;GAEG;AACH,wBAAsB,WAAW,CAC/B,SAAS,EAAE,MAAM,EACjB,UAAU,EAAE,MAAM,GACjB,OAAO,CAAC,OAAO,CAAC,CAOlB;AAED;;;;GAIG;AACH,wBAAsB,SAAS,CAC7B,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE,MAAM,EACZ,MAAM,CAAC,EAAE,MAAM,GACd,OAAO,CAAC,MAAM,CAAC,CAsBjB;AAED;;GAEG;AACH,wBAAsB,SAAS,CAC7B,SAAS,EAAE,MAAM,EACjB,GAAG,EAAE,MAAM,GACV,OAAO,CAAC,MAAM,CAAC,CAUjB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"vaultHelpers.js","sourceRoot":"","sources":["../../src/vaultHelpers.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,30 +1,39 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@zksdk/js-private-token-slots-fhe",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.4",
|
|
4
4
|
"description": "ZKSDK Private Token Slots (FHE) - FHE-powered vault management for private token transfers",
|
|
5
5
|
"type": "module",
|
|
6
|
-
"main": "./dist/index.js",
|
|
7
|
-
"
|
|
6
|
+
"main": "./dist/cjs/index.js",
|
|
7
|
+
"module": "./dist/esm/index.js",
|
|
8
|
+
"types": "./dist/esm/index.d.ts",
|
|
8
9
|
"exports": {
|
|
9
10
|
".": {
|
|
10
|
-
"import":
|
|
11
|
-
|
|
11
|
+
"import": {
|
|
12
|
+
"types": "./dist/esm/index.d.ts",
|
|
13
|
+
"default": "./dist/esm/index.js"
|
|
14
|
+
},
|
|
15
|
+
"require": {
|
|
16
|
+
"types": "./dist/cjs/index.d.ts",
|
|
17
|
+
"default": "./dist/cjs/index.js"
|
|
18
|
+
}
|
|
12
19
|
}
|
|
13
20
|
},
|
|
14
21
|
"files": [
|
|
15
22
|
"dist"
|
|
16
23
|
],
|
|
17
24
|
"scripts": {
|
|
18
|
-
"build": "
|
|
25
|
+
"build": "npm run build:esm && npm run build:cjs && echo '{\"type\":\"commonjs\"}' > dist/cjs/package.json",
|
|
26
|
+
"build:esm": "tsc",
|
|
27
|
+
"build:cjs": "tsc -p tsconfig.cjs.json",
|
|
19
28
|
"clean": "rm -rf dist",
|
|
20
|
-
"prepublishOnly": "npm run build"
|
|
29
|
+
"prepublishOnly": "npm run clean && npm run build"
|
|
21
30
|
},
|
|
22
31
|
"publishConfig": {
|
|
23
32
|
"access": "public",
|
|
24
33
|
"registry": "https://registry.npmjs.org/"
|
|
25
34
|
},
|
|
26
35
|
"dependencies": {
|
|
27
|
-
"@zksdk/core": "^0.1.
|
|
36
|
+
"@zksdk/core": "^0.1.3"
|
|
28
37
|
},
|
|
29
38
|
"keywords": [
|
|
30
39
|
"zksdk",
|
package/dist/Client.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Client.d.ts","sourceRoot":"","sources":["../src/Client.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAML,KAAK,WAAW,EACjB,MAAM,mBAAmB,CAAC;AAE3B,2BAA2B;AAC3B,MAAM,WAAW,YAAY;IAC3B,qBAAqB;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,0CAA0C;IAC1C,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,qBAAa,MAAM;IACjB,OAAO,CAAC,MAAM,CAAe;IAC7B,OAAO,CAAC,UAAU,CAAa;IAC/B,OAAO,CAAC,UAAU,CAAuB;IACzC,OAAO,CAAC,YAAY,CAAuB;gBAE/B,MAAM,EAAE,YAAY;IAKhC;;OAEG;IACG,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAI3B;;;;OAIG;IACG,WAAW,IAAI,OAAO,CAAC;QAC3B,UAAU,EAAE,MAAM,CAAC;QACnB,SAAS,EAAE,MAAM,CAAC;QAClB,SAAS,EAAE,MAAM,CAAC;QAClB,SAAS,EAAE,MAAM,CAAC;KACnB,CAAC;IA2BF;;;;;OAKG;IACG,SAAS,CAAC,UAAU,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC;IAmBhF;;OAEG;IACH,aAAa,IAAI,MAAM,GAAG,IAAI;IAI9B;;;;;;OAMG;IACH,eAAe,CAAC,SAAS,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG;QACvE,cAAc,EAAE,MAAM,CAAC;QACvB,YAAY,EAAE,MAAM,CAAC;KACtB;IAaD;;OAEG;IACG,gBAAgB,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAI9D;;OAEG;IACG,gBAAgB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAIpD;;;;OAIG;IACH,aAAa,CAAC,kBAAkB,EAAE,MAAM,GAAG;QACzC,QAAQ,EAAE,MAAM,EAAE,CAAC;QACnB,OAAO,EAAE,OAAO,CAAC;KAClB;CAOF"}
|
package/dist/Client.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Client.js","sourceRoot":"","sources":["../src/Client.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,EAAE,MAAM,EAAE,KAAK,YAAY,EAAE,MAAM,aAAa,CAAC;AAGxD,OAAO,EAAE,MAAM,IAAI,eAAe,EAAE,MAAM,aAAa,CAAC;AAExD,OAAO,EACL,aAAa,EACb,cAAc,EACd,iBAAiB,EACjB,WAAW,EACX,SAAS,EACT,SAAS,EACT,KAAK,WAAW,GACjB,MAAM,mBAAmB,CAAC;AAE3B,yCAAyC;AACzC,eAAO,MAAM,UAAU,2BAA2B,CAAC;AACnD,qCAAqC;AACrC,eAAO,MAAM,iBAAiB,yBAAyB,CAAC;AAExD,sBAAsB;AACtB,eAAO,MAAM,OAAO,UAAU,CAAC"}
|
package/dist/index.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,EAAE,MAAM,EAAqB,MAAM,aAAa,CAAC;AAExD,qEAAqE;AACrE,OAAO,EAAE,MAAM,IAAI,eAAe,EAAE,MAAM,aAAa,CAAC;AAExD,OAAO,EACL,aAAa,EACb,cAAc,EACd,iBAAiB,EACjB,WAAW,EACX,SAAS,EACT,SAAS,GAEV,MAAM,mBAAmB,CAAC;AAE3B,yCAAyC;AACzC,MAAM,CAAC,MAAM,UAAU,GAAG,wBAAwB,CAAC;AACnD,qCAAqC;AACrC,MAAM,CAAC,MAAM,iBAAiB,GAAG,sBAAsB,CAAC;AAExD,sBAAsB;AACtB,MAAM,CAAC,MAAM,OAAO,GAAG,OAAO,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"vaultHelpers.d.ts","sourceRoot":"","sources":["../src/vaultHelpers.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAErD,4CAA4C;AAC5C,MAAM,WAAW,WAAW;IAC1B,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,qCAAqC;AACrC,MAAM,WAAW,oBAAoB;IACnC,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;;;;;;;;;;;GAYG;AACH,wBAAsB,aAAa,CAAC,OAAO,EAAE,oBAAoB,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAC;AAC/F;;;GAGG;AACH,wBAAsB,aAAa,CACjC,SAAS,EAAE,MAAM,EACjB,YAAY,EAAE,MAAM,EACpB,YAAY,EAAE,MAAM,EACpB,MAAM,CAAC,EAAE,MAAM,GACd,OAAO,CAAC,iBAAiB,CAAC,CAAC;AA4C9B;;GAEG;AACH,wBAAsB,cAAc,CAClC,SAAS,EAAE,MAAM,EACjB,UAAU,EAAE,MAAM,GACjB,OAAO,CAAC,WAAW,CAAC,CAStB;AAED;;GAEG;AACH,wBAAsB,iBAAiB,CACrC,SAAS,EAAE,MAAM,EACjB,UAAU,EAAE,MAAM,GACjB,OAAO,CAAC,MAAM,CAAC,CAUjB;AAED;;GAEG;AACH,wBAAsB,WAAW,CAC/B,SAAS,EAAE,MAAM,EACjB,UAAU,EAAE,MAAM,GACjB,OAAO,CAAC,OAAO,CAAC,CAOlB;AAED;;;;GAIG;AACH,wBAAsB,SAAS,CAC7B,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE,MAAM,EACZ,MAAM,CAAC,EAAE,MAAM,GACd,OAAO,CAAC,MAAM,CAAC,CAsBjB;AAED;;GAEG;AACH,wBAAsB,SAAS,CAC7B,SAAS,EAAE,MAAM,EACjB,GAAG,EAAE,MAAM,GACV,OAAO,CAAC,MAAM,CAAC,CAUjB"}
|
package/dist/vaultHelpers.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"vaultHelpers.js","sourceRoot":"","sources":["../src/vaultHelpers.ts"],"names":[],"mappings":"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"}
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|