@settlemint/dalp-cli 3.0.6-main.28327872648 → 3.0.6-main.28328698423
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/dalp.js +99 -2
- package/package.json +1 -1
package/dist/dalp.js
CHANGED
|
@@ -139797,6 +139797,81 @@ var TokenRecipientEligibilityResponseSchema = exports_external.object({
|
|
|
139797
139797
|
description: "The action the verdict applies to."
|
|
139798
139798
|
})
|
|
139799
139799
|
});
|
|
139800
|
+
var TokenTransferSimulateParamsSchema = exports_external.object({
|
|
139801
|
+
tokenAddress: TokenReadInputSchema.shape.tokenAddress
|
|
139802
|
+
});
|
|
139803
|
+
var TokenTransferSimulateQuerySchema = exports_external.object({
|
|
139804
|
+
from: ethereumAddress.meta({
|
|
139805
|
+
description: "Sender address for the simulated transfer.",
|
|
139806
|
+
examples: ["0x71C7656EC7ab88b098defB751B7401B5f6d8976F"]
|
|
139807
|
+
}),
|
|
139808
|
+
to: ethereumAddress.meta({
|
|
139809
|
+
description: "Recipient address for the simulated transfer.",
|
|
139810
|
+
examples: ["0xabc0000000000000000000000000000000000001"]
|
|
139811
|
+
}),
|
|
139812
|
+
amount: assetAmount.meta({
|
|
139813
|
+
description: "Token amount to simulate, expressed as a stringified integer in the token's smallest unit.",
|
|
139814
|
+
examples: ["1000000000000000000"]
|
|
139815
|
+
})
|
|
139816
|
+
});
|
|
139817
|
+
var ComplianceFailureReasonSchema = exports_external.enum(["identity-not-registered", "identity-not-verified", "module-blocked"]).meta({
|
|
139818
|
+
description: "Root compliance failure class. `identity-not-registered`: the party has no identity entry in the registry. `identity-not-verified`: identity exists but required claims are missing or expired. `module-blocked`: the module actively blocks the address (freeze, blocklist, country bar)."
|
|
139819
|
+
});
|
|
139820
|
+
var RemediationClassSchema = exports_external.enum(["self-serve", "operator", "structural"]).meta({
|
|
139821
|
+
description: "`self-serve`: investor can unblock by acquiring the required claims. `operator`: a platform operator must act (unfreeze, remove from blocklist, register identity). `structural`: not currently unblockable via a standard workflow."
|
|
139822
|
+
});
|
|
139823
|
+
var IssueClaimRemediationSchema = exports_external.object({
|
|
139824
|
+
kind: exports_external.literal("issue-claim"),
|
|
139825
|
+
topics: exports_external.array(exports_external.string().min(1)).min(1).meta({
|
|
139826
|
+
description: "Claim topics the party must satisfy to unblock the transfer. Any single satisfied path clears the rule when the expression is disjunctive."
|
|
139827
|
+
})
|
|
139828
|
+
});
|
|
139829
|
+
var OperatorActionRemediationSchema = exports_external.object({
|
|
139830
|
+
kind: exports_external.literal("operator-action"),
|
|
139831
|
+
action: exports_external.enum(["unfreeze", "remove-blocklist", "register-identity"]).meta({
|
|
139832
|
+
description: "The named operator action that unblocks the transfer."
|
|
139833
|
+
})
|
|
139834
|
+
});
|
|
139835
|
+
var NoRemediationSchema = exports_external.object({
|
|
139836
|
+
kind: exports_external.literal("none")
|
|
139837
|
+
});
|
|
139838
|
+
var TransferRemediationSchema = exports_external.discriminatedUnion("kind", [IssueClaimRemediationSchema, OperatorActionRemediationSchema, NoRemediationSchema]).meta({
|
|
139839
|
+
description: "Actionable remediation for the blocker. `issue-claim`: investor acquires required claims; `operator-action`: operator takes a named administrative action; `none`: no standard workflow resolves this blocker."
|
|
139840
|
+
});
|
|
139841
|
+
var TransferSimulationBlockerSchema = exports_external.object({
|
|
139842
|
+
code: exports_external.string().min(1).meta({
|
|
139843
|
+
description: "Machine-readable blocker code. Matches the compliance module's revert selector or an internal classifier code (e.g. `unrecognized-rule`) for modules that could not be identified."
|
|
139844
|
+
}),
|
|
139845
|
+
moduleTypeId: complianceTypeId().meta({
|
|
139846
|
+
description: "TypeId of the compliance module that raised this blocker."
|
|
139847
|
+
}),
|
|
139848
|
+
moduleInstance: ethereumAddress.meta({
|
|
139849
|
+
description: "On-chain address of the specific module instance that raised this blocker."
|
|
139850
|
+
}),
|
|
139851
|
+
party: exports_external.enum(["sender", "recipient"]).meta({
|
|
139852
|
+
description: "Which transfer party this blocker is attributed to."
|
|
139853
|
+
}),
|
|
139854
|
+
reason: ComplianceFailureReasonSchema,
|
|
139855
|
+
remediationClass: RemediationClassSchema,
|
|
139856
|
+
remediation: TransferRemediationSchema,
|
|
139857
|
+
topics: exports_external.array(exports_external.string()).optional().meta({
|
|
139858
|
+
description: "Claim topics relevant to this blocker. Populated when the failure reason is claim-related."
|
|
139859
|
+
})
|
|
139860
|
+
}).meta({
|
|
139861
|
+
description: "A single compliance blocker for the simulated transfer, with the attributed party, failure reason, and actionable remediation."
|
|
139862
|
+
});
|
|
139863
|
+
var TokenTransferSimulateResponseSchema = exports_external.object({
|
|
139864
|
+
verdict: exports_external.enum(["will-clear", "will-revert"]).meta({
|
|
139865
|
+
description: "`will-clear`: the on-chain `canTransfer` call succeeded — the transfer will go through. `will-revert`: the call reverted; see `blockers` for the classified causes.",
|
|
139866
|
+
examples: ["will-clear", "will-revert"]
|
|
139867
|
+
}),
|
|
139868
|
+
blockers: exports_external.array(TransferSimulationBlockerSchema).meta({
|
|
139869
|
+
description: "Classified list of compliance blockers. Empty when `verdict` is `will-clear`. At least one entry when `verdict` is `will-revert` (last entry is an `unrecognized-rule` catch-all when no specific module could be attributed)."
|
|
139870
|
+
})
|
|
139871
|
+
}).meta({
|
|
139872
|
+
description: "Result of the transfer simulation. The verdict is sourced exclusively from the on-chain `canTransfer` call, never from the blocker enumeration."
|
|
139873
|
+
});
|
|
139874
|
+
var TokenTransferSimulateOutputSchema = createSingleResponse(TokenTransferSimulateResponseSchema);
|
|
139800
139875
|
var InheritedGlobalControlsV2InputSchema = exports_external.object({
|
|
139801
139876
|
tokenAddress: ethereumAddress.meta({
|
|
139802
139877
|
description: "The token contract address whose inherited global controls are evaluated.",
|
|
@@ -141136,6 +141211,13 @@ var recipientEligibility = v2Contract.route({
|
|
|
141136
141211
|
successDescription: "Eligibility verdict for the address resolved.",
|
|
141137
141212
|
tags: [V2_TAG.token]
|
|
141138
141213
|
}).input(v2Input.paramsQuery(TokenRecipientEligibilityParamsSchema, TokenRecipientEligibilityQuerySchema)).output(createSingleResponse(TokenRecipientEligibilityResponseSchema));
|
|
141214
|
+
var transferSimulate = v2Contract.route({
|
|
141215
|
+
method: "GET",
|
|
141216
|
+
path: "/tokens/{tokenAddress}/transfer-simulate",
|
|
141217
|
+
description: "Simulate a token transfer by executing the on-chain `canTransfer(from, to, amount)` call. Returns an authoritative verdict (`will-clear` or `will-revert`) and, on revert, a classified list of compliance blockers with per-blocker remediation metadata. The verdict is always derived from the on-chain result; the blocker list is informational.",
|
|
141218
|
+
successDescription: "Transfer simulation verdict and classified blocker list resolved.",
|
|
141219
|
+
tags: [V2_TAG.token]
|
|
141220
|
+
}).input(v2Input.paramsQuery(TokenTransferSimulateParamsSchema, TokenTransferSimulateQuerySchema)).output(createSingleResponse(TokenTransferSimulateResponseSchema));
|
|
141139
141221
|
var inheritedGlobalControls = v2Contract.route({
|
|
141140
141222
|
method: "GET",
|
|
141141
141223
|
path: "/tokens/{tokenAddress}/inherited-global-controls",
|
|
@@ -141427,6 +141509,7 @@ var tokenV2ReadsContract = {
|
|
|
141427
141509
|
read: read33,
|
|
141428
141510
|
allowance,
|
|
141429
141511
|
recipientEligibility,
|
|
141512
|
+
transferSimulate,
|
|
141430
141513
|
inheritedGlobalControls,
|
|
141431
141514
|
holder,
|
|
141432
141515
|
holders,
|
|
@@ -143978,7 +144061,7 @@ function normalizeDalpBaseUrl(url2) {
|
|
|
143978
144061
|
}
|
|
143979
144062
|
var package_default = {
|
|
143980
144063
|
name: "@settlemint/dalp-sdk",
|
|
143981
|
-
version: "3.0.6-main.
|
|
144064
|
+
version: "3.0.6-main.28328698423",
|
|
143982
144065
|
private: false,
|
|
143983
144066
|
description: "Fully typed SDK for the DALP tokenization platform API",
|
|
143984
144067
|
homepage: "https://settlemint.com",
|
|
@@ -145198,7 +145281,7 @@ var failedStateSet = new Set(FAILED_TRANSACTION_STATES);
|
|
|
145198
145281
|
// package.json
|
|
145199
145282
|
var package_default2 = {
|
|
145200
145283
|
name: "@settlemint/dalp-cli",
|
|
145201
|
-
version: "3.0.6-main.
|
|
145284
|
+
version: "3.0.6-main.28328698423",
|
|
145202
145285
|
private: false,
|
|
145203
145286
|
description: "CLI for the Digital Asset Lifecycle Platform — manage tokens, identities, compliance, and more from the command line.",
|
|
145204
145287
|
homepage: "https://settlemint.com",
|
|
@@ -211717,6 +211800,20 @@ function registerTokenReads(cmd) {
|
|
|
211717
211800
|
params: { tokenAddress: c.options.address }
|
|
211718
211801
|
});
|
|
211719
211802
|
}
|
|
211803
|
+
}).command("transfer-simulate", {
|
|
211804
|
+
description: "Simulate a token transfer and return the compliance verdict with classified blockers",
|
|
211805
|
+
options: exports_external.object({
|
|
211806
|
+
address: exports_external.string().describe("Token contract address"),
|
|
211807
|
+
from: exports_external.string().describe("Sender address for the simulated transfer"),
|
|
211808
|
+
to: exports_external.string().describe("Recipient address for the simulated transfer"),
|
|
211809
|
+
amount: exports_external.string().describe("Transfer amount in the token's smallest unit (integer string)")
|
|
211810
|
+
}),
|
|
211811
|
+
run(c) {
|
|
211812
|
+
return c.var.orpc.token.transferSimulate({
|
|
211813
|
+
params: { tokenAddress: c.options.address },
|
|
211814
|
+
query: { from: c.options.from, to: c.options.to, amount: c.options.amount }
|
|
211815
|
+
});
|
|
211816
|
+
}
|
|
211720
211817
|
}).command("holder", {
|
|
211721
211818
|
description: "Get token holder details",
|
|
211722
211819
|
options: exports_external.object({
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@settlemint/dalp-cli",
|
|
3
|
-
"version": "3.0.6-main.
|
|
3
|
+
"version": "3.0.6-main.28328698423",
|
|
4
4
|
"private": false,
|
|
5
5
|
"description": "CLI for the Digital Asset Lifecycle Platform — manage tokens, identities, compliance, and more from the command line.",
|
|
6
6
|
"homepage": "https://settlemint.com",
|