@open-captable-protocol/canton 0.2.102 → 0.2.104

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.
@@ -0,0 +1,24 @@
1
+ import type { CommandWithDisclosedContracts } from '../../../types';
2
+ export interface ExecuteBatchTransfersParams {
3
+ factoryContractId: string;
4
+ personalAirdropCids: string[];
5
+ amuletInputs: string[];
6
+ openMiningRoundCid: string;
7
+ amount: string | number;
8
+ numberOfTransfers: number;
9
+ lockedAmuletCid?: string;
10
+ }
11
+ /**
12
+ * Build command to execute batch transfers on multiple PersonalAirdrop contracts
13
+ *
14
+ * Supports two modes:
15
+ * 1. Regular amulets: Provide amuletInputs, leave lockedAmuletCid undefined
16
+ * 2. LockedAmulet: Provide lockedAmuletCid, leave amuletInputs empty
17
+ *
18
+ * When using LockedAmulet:
19
+ * - The locked amulet is unlocked before batch processing
20
+ * - Used for all transfers in the batch
21
+ * - Re-locked with preserved lock details (holders, expiry, context) after completion
22
+ */
23
+ export declare function buildExecuteBatchTransfersCommand(params: ExecuteBatchTransfersParams): CommandWithDisclosedContracts;
24
+ //# sourceMappingURL=executeBatchTransfers.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"executeBatchTransfers.d.ts","sourceRoot":"","sources":["../../../../src/functions/CantonPayments/airdrop/executeBatchTransfers.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,6BAA6B,EAAE,MAAM,gBAAgB,CAAC;AAEpE,MAAM,WAAW,2BAA2B;IAC1C,iBAAiB,EAAE,MAAM,CAAC;IAC1B,mBAAmB,EAAE,MAAM,EAAE,CAAC;IAC9B,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC;IACxB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,iCAAiC,CAAC,MAAM,EAAE,2BAA2B,GAAG,6BAA6B,CA+BpH"}
@@ -0,0 +1,47 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.buildExecuteBatchTransfersCommand = buildExecuteBatchTransfersCommand;
4
+ const open_captable_protocol_daml_js_1 = require("@fairmint/open-captable-protocol-daml-js");
5
+ /**
6
+ * Build command to execute batch transfers on multiple PersonalAirdrop contracts
7
+ *
8
+ * Supports two modes:
9
+ * 1. Regular amulets: Provide amuletInputs, leave lockedAmuletCid undefined
10
+ * 2. LockedAmulet: Provide lockedAmuletCid, leave amuletInputs empty
11
+ *
12
+ * When using LockedAmulet:
13
+ * - The locked amulet is unlocked before batch processing
14
+ * - Used for all transfers in the batch
15
+ * - Re-locked with preserved lock details (holders, expiry, context) after completion
16
+ */
17
+ function buildExecuteBatchTransfersCommand(params) {
18
+ // Validate parameters based on mode
19
+ if (params.lockedAmuletCid) {
20
+ if (params.amuletInputs.length > 0) {
21
+ throw new Error('When using lockedAmuletCid, amuletInputs must be empty');
22
+ }
23
+ }
24
+ else {
25
+ if (params.amuletInputs.length === 0) {
26
+ throw new Error('Must provide either amuletInputs or lockedAmuletCid');
27
+ }
28
+ }
29
+ const choiceArgument = {
30
+ personalAirdropCids: params.personalAirdropCids,
31
+ amuletInputs: params.amuletInputs,
32
+ openMiningRoundCid: params.openMiningRoundCid,
33
+ amount: typeof params.amount === 'number' ? params.amount.toString() : params.amount,
34
+ numberOfTransfers: params.numberOfTransfers,
35
+ lockedAmuletCid: params.lockedAmuletCid ? params.lockedAmuletCid : null,
36
+ };
37
+ const command = {
38
+ ExerciseCommand: {
39
+ templateId: open_captable_protocol_daml_js_1.CantonPayments.Airdrop.AirdropFactory.AirdropFactory.templateId,
40
+ contractId: params.factoryContractId,
41
+ choice: 'Factory_ExecuteBatchTransfers',
42
+ choiceArgument,
43
+ },
44
+ };
45
+ return { command, disclosedContracts: [] };
46
+ }
47
+ //# sourceMappingURL=executeBatchTransfers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"executeBatchTransfers.js","sourceRoot":"","sources":["../../../../src/functions/CantonPayments/airdrop/executeBatchTransfers.ts"],"names":[],"mappings":";;AA0BA,8EA+BC;AAxDD,6FAA0E;AAa1E;;;;;;;;;;;GAWG;AACH,SAAgB,iCAAiC,CAAC,MAAmC;IACnF,oCAAoC;IACpC,IAAI,MAAM,CAAC,eAAe,EAAE,CAAC;QAC3B,IAAI,MAAM,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACnC,MAAM,IAAI,KAAK,CAAC,wDAAwD,CAAC,CAAC;QAC5E,CAAC;IACH,CAAC;SAAM,CAAC;QACN,IAAI,MAAM,CAAC,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACrC,MAAM,IAAI,KAAK,CAAC,qDAAqD,CAAC,CAAC;QACzE,CAAC;IACH,CAAC;IAED,MAAM,cAAc,GAAG;QACrB,mBAAmB,EAAE,MAAM,CAAC,mBAAmB;QAC/C,YAAY,EAAE,MAAM,CAAC,YAAY;QACjC,kBAAkB,EAAE,MAAM,CAAC,kBAAkB;QAC7C,MAAM,EAAE,OAAO,MAAM,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM;QACpF,iBAAiB,EAAE,MAAM,CAAC,iBAAiB;QAC3C,eAAe,EAAE,MAAM,CAAC,eAAe,CAAC,CAAC,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC,CAAC,IAAI;KACxE,CAAC;IAEF,MAAM,OAAO,GAAY;QACvB,eAAe,EAAE;YACf,UAAU,EAAE,+CAAc,CAAC,OAAO,CAAC,cAAc,CAAC,cAAc,CAAC,UAAU;YAC3E,UAAU,EAAE,MAAM,CAAC,iBAAiB;YACpC,MAAM,EAAE,+BAA+B;YACvC,cAAc;SACf;KACF,CAAC;IAEF,OAAO,EAAE,OAAO,EAAE,kBAAkB,EAAE,EAAE,EAAE,CAAC;AAC7C,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@open-captable-protocol/canton",
3
- "version": "0.2.102",
3
+ "version": "0.2.104",
4
4
  "description": "A TypeScript SDK for interacting with the Open CapTable Protocol (OCP) Factory contract on Canton blockchain",
5
5
  "license": "MIT",
6
6
  "main": "dist/index.js",
@@ -32,8 +32,8 @@
32
32
  "dependencies": {
33
33
  "@daml/ledger": "2.10.2",
34
34
  "@daml/types": "2.10.2",
35
- "@fairmint/canton-node-sdk": "0.0.117",
36
- "@fairmint/open-captable-protocol-daml-js": "0.2.46"
35
+ "@fairmint/canton-node-sdk": "0.0.127",
36
+ "@fairmint/open-captable-protocol-daml-js": "0.2.47"
37
37
  },
38
38
  "devDependencies": {
39
39
  "@eslint/eslintrc": "^3.3.1",