@fairmint/canton-node-sdk 0.0.268 → 0.0.269
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/build/src/da-registry/api-client.d.ts +47 -0
- package/build/src/da-registry/api-client.d.ts.map +1 -0
- package/build/src/da-registry/api-client.js +140 -0
- package/build/src/da-registry/api-client.js.map +1 -0
- package/build/src/da-registry/choice-context.d.ts +24 -0
- package/build/src/da-registry/choice-context.d.ts.map +1 -0
- package/build/src/da-registry/choice-context.js +37 -0
- package/build/src/da-registry/choice-context.js.map +1 -0
- package/build/src/da-registry/commands.d.ts +96 -0
- package/build/src/da-registry/commands.d.ts.map +1 -0
- package/build/src/da-registry/commands.js +233 -0
- package/build/src/da-registry/commands.js.map +1 -0
- package/build/src/da-registry/index.d.ts +8 -0
- package/build/src/da-registry/index.d.ts.map +1 -0
- package/build/src/da-registry/index.js +24 -0
- package/build/src/da-registry/index.js.map +1 -0
- package/build/src/da-registry/ledger.d.ts +29 -0
- package/build/src/da-registry/ledger.d.ts.map +1 -0
- package/build/src/da-registry/ledger.js +25 -0
- package/build/src/da-registry/ledger.js.map +1 -0
- package/build/src/da-registry/packages.d.ts +23 -0
- package/build/src/da-registry/packages.d.ts.map +1 -0
- package/build/src/da-registry/packages.js +41 -0
- package/build/src/da-registry/packages.js.map +1 -0
- package/build/src/da-registry/readers.d.ts +43 -0
- package/build/src/da-registry/readers.d.ts.map +1 -0
- package/build/src/da-registry/readers.js +59 -0
- package/build/src/da-registry/readers.js.map +1 -0
- package/build/src/da-registry/templates.d.ts +32 -0
- package/build/src/da-registry/templates.d.ts.map +1 -0
- package/build/src/da-registry/templates.js +33 -0
- package/build/src/da-registry/templates.js.map +1 -0
- package/build/src/index.d.ts +1 -0
- package/build/src/index.d.ts.map +1 -1
- package/build/src/index.js +1 -0
- package/build/src/index.js.map +1 -1
- package/build/src/utils/index.d.ts +1 -0
- package/build/src/utils/index.d.ts.map +1 -1
- package/build/src/utils/index.js +1 -0
- package/build/src/utils/index.js.map +1 -1
- package/build/src/utils/ledger/active-contracts.d.ts +26 -0
- package/build/src/utils/ledger/active-contracts.d.ts.map +1 -0
- package/build/src/utils/ledger/active-contracts.js +43 -0
- package/build/src/utils/ledger/active-contracts.js.map +1 -0
- package/build/src/utils/ledger/index.d.ts +7 -0
- package/build/src/utils/ledger/index.d.ts.map +1 -0
- package/build/src/utils/ledger/index.js +23 -0
- package/build/src/utils/ledger/index.js.map +1 -0
- package/build/src/utils/ledger/packages.d.ts +21 -0
- package/build/src/utils/ledger/packages.d.ts.map +1 -0
- package/build/src/utils/ledger/packages.js +36 -0
- package/build/src/utils/ledger/packages.js.map +1 -0
- package/build/src/utils/ledger/submit-commands.d.ts +19 -0
- package/build/src/utils/ledger/submit-commands.d.ts.map +1 -0
- package/build/src/utils/ledger/submit-commands.js +34 -0
- package/build/src/utils/ledger/submit-commands.js.map +1 -0
- package/build/src/utils/ledger/synchronizers.d.ts +4 -0
- package/build/src/utils/ledger/synchronizers.d.ts.map +1 -0
- package/build/src/utils/ledger/synchronizers.js +9 -0
- package/build/src/utils/ledger/synchronizers.js.map +1 -0
- package/build/src/utils/ledger/types.d.ts +63 -0
- package/build/src/utils/ledger/types.d.ts.map +1 -0
- package/build/src/utils/ledger/types.js +3 -0
- package/build/src/utils/ledger/types.js.map +1 -0
- package/build/src/utils/ledger/user-rights.d.ts +17 -0
- package/build/src/utils/ledger/user-rights.d.ts.map +1 -0
- package/build/src/utils/ledger/user-rights.js +28 -0
- package/build/src/utils/ledger/user-rights.js.map +1 -0
- package/package.json +1 -1
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Digital Asset's off-ledger Registry API (`https://api.utilities.digitalasset[-staging|-dev].com`).
|
|
3
|
+
*
|
|
4
|
+
* The registry's transfer rule, factories, credentials and receivers' preapprovals are not visible to every submitter,
|
|
5
|
+
* so a transaction first fetches them here as a choice context plus disclosed contracts.
|
|
6
|
+
*
|
|
7
|
+
* The API is public and unauthenticated, so this client does not use the SDK's runtime configuration; pass the base URL
|
|
8
|
+
* for the network (and optionally a pre-configured axios instance for tests or custom transports).
|
|
9
|
+
*/
|
|
10
|
+
import { type AxiosInstance } from 'axios';
|
|
11
|
+
import { type DisclosedContract } from '../utils/ledger';
|
|
12
|
+
import { type TokenStandardV1Transfer } from '../utils/token-standard';
|
|
13
|
+
export interface DaRegistryChoiceContext {
|
|
14
|
+
choiceContextData: {
|
|
15
|
+
values: Record<string, unknown>;
|
|
16
|
+
};
|
|
17
|
+
disclosedContracts: DisclosedContract[];
|
|
18
|
+
}
|
|
19
|
+
export interface DaRegistryFactoryWithContext {
|
|
20
|
+
factoryId: string;
|
|
21
|
+
choiceContext: DaRegistryChoiceContext;
|
|
22
|
+
}
|
|
23
|
+
/** `direct`: the receiver's preapproval lands the transfer in one step. `offer`: a two-step instruction. */
|
|
24
|
+
export type DaRegistryTransferKind = 'direct' | 'offer' | 'self';
|
|
25
|
+
export interface DaRegistryTransferFactoryWithContext extends DaRegistryFactoryWithContext {
|
|
26
|
+
transferKind: DaRegistryTransferKind;
|
|
27
|
+
}
|
|
28
|
+
export interface DaRegistryInstrumentId {
|
|
29
|
+
admin: string;
|
|
30
|
+
id: string;
|
|
31
|
+
}
|
|
32
|
+
export interface DaRegistryApi {
|
|
33
|
+
operatorParty: () => Promise<string>;
|
|
34
|
+
/** `null` when DA does not know the registrar (404). */
|
|
35
|
+
registryInfo: (registrar: string) => Promise<Record<string, unknown> | null>;
|
|
36
|
+
/** `null` when DA does not know the instrument (404). */
|
|
37
|
+
instrumentMetadata: (registrar: string, instrumentId: string) => Promise<Record<string, unknown> | null>;
|
|
38
|
+
/** `null` while DA has not indexed the registrar's factory or the instrument (404). */
|
|
39
|
+
mintOfferFactory: (holder: string, instrumentId: DaRegistryInstrumentId) => Promise<DaRegistryFactoryWithContext | null>;
|
|
40
|
+
/** The factory a sender exercises `TransferFactory_Transfer` on, and its context. Read only. */
|
|
41
|
+
transferFactory: (admin: string, transfer: TokenStandardV1Transfer) => Promise<DaRegistryTransferFactoryWithContext>;
|
|
42
|
+
}
|
|
43
|
+
/** The ledger rejects disclosed contracts with extra fields, and DA's responses carry debug fields. */
|
|
44
|
+
export declare function parseDaRegistryDisclosedContract(raw: unknown): DisclosedContract;
|
|
45
|
+
export declare function parseDaRegistryChoiceContext(raw: unknown): DaRegistryChoiceContext;
|
|
46
|
+
export declare function createDaRegistryApi(baseUrl: string, http?: AxiosInstance): DaRegistryApi;
|
|
47
|
+
//# sourceMappingURL=api-client.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"api-client.d.ts","sourceRoot":"","sources":["../../../src/da-registry/api-client.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,OAAc,EAAE,KAAK,aAAa,EAAE,MAAM,OAAO,CAAC;AAGlD,OAAO,EAAE,KAAK,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AACzD,OAAO,EAAE,KAAK,uBAAuB,EAAE,MAAM,yBAAyB,CAAC;AAEvE,MAAM,WAAW,uBAAuB;IACtC,iBAAiB,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;KAAE,CAAC;IACvD,kBAAkB,EAAE,iBAAiB,EAAE,CAAC;CACzC;AAED,MAAM,WAAW,4BAA4B;IAC3C,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,EAAE,uBAAuB,CAAC;CACxC;AAED,4GAA4G;AAC5G,MAAM,MAAM,sBAAsB,GAAG,QAAQ,GAAG,OAAO,GAAG,MAAM,CAAC;AAEjE,MAAM,WAAW,oCAAqC,SAAQ,4BAA4B;IACxF,YAAY,EAAE,sBAAsB,CAAC;CACtC;AAED,MAAM,WAAW,sBAAsB;IACrC,KAAK,EAAE,MAAM,CAAC;IACd,EAAE,EAAE,MAAM,CAAC;CACZ;AAED,MAAM,WAAW,aAAa;IAC5B,aAAa,EAAE,MAAM,OAAO,CAAC,MAAM,CAAC,CAAC;IACrC,wDAAwD;IACxD,YAAY,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC,CAAC;IAC7E,yDAAyD;IACzD,kBAAkB,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC,CAAC;IACzG,uFAAuF;IACvF,gBAAgB,EAAE,CAChB,MAAM,EAAE,MAAM,EACd,YAAY,EAAE,sBAAsB,KACjC,OAAO,CAAC,4BAA4B,GAAG,IAAI,CAAC,CAAC;IAClD,gGAAgG;IAChG,eAAe,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,uBAAuB,KAAK,OAAO,CAAC,oCAAoC,CAAC,CAAC;CACtH;AAID,uGAAuG;AACvG,wBAAgB,gCAAgC,CAAC,GAAG,EAAE,OAAO,GAAG,iBAAiB,CAchF;AAED,wBAAgB,4BAA4B,CAAC,GAAG,EAAE,OAAO,GAAG,uBAAuB,CAalF;AAQD,wBAAgB,mBAAmB,CACjC,OAAO,EAAE,MAAM,EACf,IAAI,GAAE,aAAqD,GAC1D,aAAa,CAsEf"}
|
|
@@ -0,0 +1,140 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.parseDaRegistryDisclosedContract = parseDaRegistryDisclosedContract;
|
|
7
|
+
exports.parseDaRegistryChoiceContext = parseDaRegistryChoiceContext;
|
|
8
|
+
exports.createDaRegistryApi = createDaRegistryApi;
|
|
9
|
+
/**
|
|
10
|
+
* Digital Asset's off-ledger Registry API (`https://api.utilities.digitalasset[-staging|-dev].com`).
|
|
11
|
+
*
|
|
12
|
+
* The registry's transfer rule, factories, credentials and receivers' preapprovals are not visible to every submitter,
|
|
13
|
+
* so a transaction first fetches them here as a choice context plus disclosed contracts.
|
|
14
|
+
*
|
|
15
|
+
* The API is public and unauthenticated, so this client does not use the SDK's runtime configuration; pass the base URL
|
|
16
|
+
* for the network (and optionally a pre-configured axios instance for tests or custom transports).
|
|
17
|
+
*/
|
|
18
|
+
const axios_1 = __importDefault(require("axios"));
|
|
19
|
+
const errors_1 = require("../core/errors");
|
|
20
|
+
const utils_1 = require("../core/utils");
|
|
21
|
+
const TIMEOUT_MS = 30000;
|
|
22
|
+
/** The ledger rejects disclosed contracts with extra fields, and DA's responses carry debug fields. */
|
|
23
|
+
function parseDaRegistryDisclosedContract(raw) {
|
|
24
|
+
const c = raw;
|
|
25
|
+
const fields = ['templateId', 'contractId', 'createdEventBlob', 'synchronizerId'];
|
|
26
|
+
for (const field of fields) {
|
|
27
|
+
if (typeof c[field] !== 'string' || c[field] === '') {
|
|
28
|
+
throw new errors_1.ValidationError(`DA API returned a disclosed contract without ${field}`);
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
return {
|
|
32
|
+
templateId: c['templateId'],
|
|
33
|
+
contractId: c['contractId'],
|
|
34
|
+
createdEventBlob: c['createdEventBlob'],
|
|
35
|
+
synchronizerId: c['synchronizerId'],
|
|
36
|
+
};
|
|
37
|
+
}
|
|
38
|
+
function parseDaRegistryChoiceContext(raw) {
|
|
39
|
+
const c = (raw ?? {});
|
|
40
|
+
const values = c.choiceContextData?.values;
|
|
41
|
+
if (values !== undefined && !(0, utils_1.isRecord)(values)) {
|
|
42
|
+
throw new errors_1.ValidationError('DA API returned a choice context whose values are not a record');
|
|
43
|
+
}
|
|
44
|
+
if (c.disclosedContracts !== undefined && !Array.isArray(c.disclosedContracts)) {
|
|
45
|
+
throw new errors_1.ValidationError('DA API returned disclosed contracts that are not a list');
|
|
46
|
+
}
|
|
47
|
+
return {
|
|
48
|
+
choiceContextData: { values: values ?? {} },
|
|
49
|
+
disclosedContracts: (c.disclosedContracts ?? []).map(parseDaRegistryDisclosedContract),
|
|
50
|
+
};
|
|
51
|
+
}
|
|
52
|
+
function toFactoryWithContext(raw, what) {
|
|
53
|
+
const r = (raw ?? {});
|
|
54
|
+
if (typeof r.factoryId !== 'string')
|
|
55
|
+
throw new errors_1.ValidationError(`DA API ${what} response has no factoryId`);
|
|
56
|
+
return { factoryId: r.factoryId, choiceContext: parseDaRegistryChoiceContext(r.choiceContext) };
|
|
57
|
+
}
|
|
58
|
+
function createDaRegistryApi(baseUrl, http = axios_1.default.create({ timeout: TIMEOUT_MS })) {
|
|
59
|
+
const tokenStandard = (registrar) => `${baseUrl}/api/token-standard/v0/registrars/${encodeURIComponent(registrar)}`;
|
|
60
|
+
async function getOrNull(url) {
|
|
61
|
+
try {
|
|
62
|
+
const { data } = await http.get(url);
|
|
63
|
+
// A successful body must be a record; a `null` body would masquerade as the 404 sentinel below.
|
|
64
|
+
if (!(0, utils_1.isRecord)(data))
|
|
65
|
+
throw new errors_1.ValidationError(`DA API GET ${url} returned a malformed body`);
|
|
66
|
+
return data;
|
|
67
|
+
}
|
|
68
|
+
catch (error) {
|
|
69
|
+
if (axios_1.default.isAxiosError(error) && error.response?.status === 404)
|
|
70
|
+
return null;
|
|
71
|
+
throw describe(error, `GET ${url}`);
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
async function post(url, body) {
|
|
75
|
+
try {
|
|
76
|
+
const { data } = await http.post(url, body);
|
|
77
|
+
// A successful body must be a record; anything else would fail later with a raw TypeError.
|
|
78
|
+
if (!(0, utils_1.isRecord)(data))
|
|
79
|
+
throw new errors_1.ValidationError(`DA API POST ${url} returned a malformed body`);
|
|
80
|
+
return data;
|
|
81
|
+
}
|
|
82
|
+
catch (error) {
|
|
83
|
+
throw describe(error, `POST ${url}`);
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
async function postOrNull(url, body) {
|
|
87
|
+
try {
|
|
88
|
+
const { data } = await http.post(url, body);
|
|
89
|
+
// A successful body must be a record; a `null` body would masquerade as the 404 sentinel below.
|
|
90
|
+
if (!(0, utils_1.isRecord)(data))
|
|
91
|
+
throw new errors_1.ValidationError(`DA API POST ${url} returned a malformed body`);
|
|
92
|
+
return data;
|
|
93
|
+
}
|
|
94
|
+
catch (error) {
|
|
95
|
+
if (axios_1.default.isAxiosError(error) && error.response?.status === 404)
|
|
96
|
+
return null;
|
|
97
|
+
throw describe(error, `POST ${url}`);
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
return {
|
|
101
|
+
async operatorParty() {
|
|
102
|
+
const data = await getOrNull(`${baseUrl}/api/utilities/v0/operator`);
|
|
103
|
+
const partyId = data?.['partyId'];
|
|
104
|
+
if (typeof partyId !== 'string')
|
|
105
|
+
throw new errors_1.ValidationError('DA API did not return its operator party');
|
|
106
|
+
return partyId;
|
|
107
|
+
},
|
|
108
|
+
registryInfo: async (registrar) => getOrNull(`${tokenStandard(registrar)}/registry/metadata/v1/info`),
|
|
109
|
+
instrumentMetadata: async (registrar, instrumentId) => getOrNull(`${tokenStandard(registrar)}/registry/metadata/v1/instruments/${encodeURIComponent(instrumentId)}`),
|
|
110
|
+
async mintOfferFactory(holder, instrumentId) {
|
|
111
|
+
const raw = await postOrNull(`${baseUrl}/api/utilities/v0/registry/mint/v0/offer`, { holder, instrumentId });
|
|
112
|
+
return raw === null ? null : toFactoryWithContext(raw, 'mint offer');
|
|
113
|
+
},
|
|
114
|
+
async transferFactory(admin, transfer) {
|
|
115
|
+
const raw = await post(`${tokenStandard(admin)}/registry/transfer-instruction/v1/transfer-factory`, {
|
|
116
|
+
choiceArguments: {
|
|
117
|
+
expectedAdmin: admin,
|
|
118
|
+
// The V1 choice argument requires `meta`; the public transfer input lets callers omit it.
|
|
119
|
+
transfer: { ...transfer, meta: transfer.meta ?? { values: {} } },
|
|
120
|
+
extraArgs: { context: { values: {} }, meta: { values: {} } },
|
|
121
|
+
},
|
|
122
|
+
excludeDebugFields: true,
|
|
123
|
+
});
|
|
124
|
+
const { transferKind } = raw;
|
|
125
|
+
if (transferKind !== 'direct' && transferKind !== 'offer' && transferKind !== 'self') {
|
|
126
|
+
throw new errors_1.ValidationError(`DA API transfer factory returned transferKind ${String(transferKind)}`);
|
|
127
|
+
}
|
|
128
|
+
return { ...toFactoryWithContext(raw, 'transfer factory'), transferKind };
|
|
129
|
+
},
|
|
130
|
+
};
|
|
131
|
+
}
|
|
132
|
+
function describe(error, request) {
|
|
133
|
+
if (axios_1.default.isAxiosError(error)) {
|
|
134
|
+
const body = error.response?.data === undefined ? '' : ` ${JSON.stringify(error.response.data)}`;
|
|
135
|
+
const status = error.response?.status;
|
|
136
|
+
return new errors_1.ApiError(`${request} failed: ${status ?? error.code ?? 'no response'}${body}`, status, error.response?.statusText, error.response?.data);
|
|
137
|
+
}
|
|
138
|
+
return error instanceof Error ? error : new Error(String(error));
|
|
139
|
+
}
|
|
140
|
+
//# sourceMappingURL=api-client.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"api-client.js","sourceRoot":"","sources":["../../../src/da-registry/api-client.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Choice contexts for Digital Asset's Registry.
|
|
3
|
+
*
|
|
4
|
+
* The registry's transfer rule, factories and credentials are not visible to every submitter, so a transaction supplies
|
|
5
|
+
* the contracts it references as a choice context (`extraArgs.context.values`) plus disclosed contracts fetched from
|
|
6
|
+
* DA's off-ledger API (see `api-client.ts`).
|
|
7
|
+
*/
|
|
8
|
+
/** Keys of a DA Registry choice context (`extraArgs.context.values`). */
|
|
9
|
+
export declare const DA_REGISTRY_CONTEXT_KEYS: {
|
|
10
|
+
readonly instrumentConfiguration: 'utility.digitalasset.com/instrument-configuration';
|
|
11
|
+
readonly issuerCredentials: 'utility.digitalasset.com/issuer-credentials';
|
|
12
|
+
};
|
|
13
|
+
/** Splice `ExtraArgs` with an empty `meta`. */
|
|
14
|
+
export declare function daRegistryExtraArgs(context: {
|
|
15
|
+
values: Record<string, unknown>;
|
|
16
|
+
}): Record<string, unknown>;
|
|
17
|
+
/**
|
|
18
|
+
* The context a registrar-side mint needs, built from the registrar's own contracts: the registrar signs the
|
|
19
|
+
* configuration and its issuer-held credentials, so no disclosure or DA lookup is needed.
|
|
20
|
+
*/
|
|
21
|
+
export declare function mintChoiceContext(instrumentConfigurationCid: string, credentialCids: string[]): {
|
|
22
|
+
values: Record<string, unknown>;
|
|
23
|
+
};
|
|
24
|
+
//# sourceMappingURL=choice-context.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"choice-context.d.ts","sourceRoot":"","sources":["../../../src/da-registry/choice-context.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,yEAAyE;AACzE,eAAO,MAAM,wBAAwB;aACnC,uBAAuB,EAAE,mDAAmD;aAC5E,iBAAiB,EAAE,6CAA6C;CACxD,CAAC;AAEX,+CAA+C;AAC/C,wBAAgB,mBAAmB,CAAC,OAAO,EAAE;IAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CAAE,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAEzG;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,CAC/B,0BAA0B,EAAE,MAAM,EAClC,cAAc,EAAE,MAAM,EAAE,GACvB;IAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CAAE,CAUrC"}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Choice contexts for Digital Asset's Registry.
|
|
4
|
+
*
|
|
5
|
+
* The registry's transfer rule, factories and credentials are not visible to every submitter, so a transaction supplies
|
|
6
|
+
* the contracts it references as a choice context (`extraArgs.context.values`) plus disclosed contracts fetched from
|
|
7
|
+
* DA's off-ledger API (see `api-client.ts`).
|
|
8
|
+
*/
|
|
9
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
10
|
+
exports.DA_REGISTRY_CONTEXT_KEYS = void 0;
|
|
11
|
+
exports.daRegistryExtraArgs = daRegistryExtraArgs;
|
|
12
|
+
exports.mintChoiceContext = mintChoiceContext;
|
|
13
|
+
/** Keys of a DA Registry choice context (`extraArgs.context.values`). */
|
|
14
|
+
exports.DA_REGISTRY_CONTEXT_KEYS = {
|
|
15
|
+
instrumentConfiguration: 'utility.digitalasset.com/instrument-configuration',
|
|
16
|
+
issuerCredentials: 'utility.digitalasset.com/issuer-credentials',
|
|
17
|
+
};
|
|
18
|
+
/** Splice `ExtraArgs` with an empty `meta`. */
|
|
19
|
+
function daRegistryExtraArgs(context) {
|
|
20
|
+
return { context, meta: { values: {} } };
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* The context a registrar-side mint needs, built from the registrar's own contracts: the registrar signs the
|
|
24
|
+
* configuration and its issuer-held credentials, so no disclosure or DA lookup is needed.
|
|
25
|
+
*/
|
|
26
|
+
function mintChoiceContext(instrumentConfigurationCid, credentialCids) {
|
|
27
|
+
return {
|
|
28
|
+
values: {
|
|
29
|
+
[exports.DA_REGISTRY_CONTEXT_KEYS.instrumentConfiguration]: { tag: 'AV_ContractId', value: instrumentConfigurationCid },
|
|
30
|
+
[exports.DA_REGISTRY_CONTEXT_KEYS.issuerCredentials]: {
|
|
31
|
+
tag: 'AV_List',
|
|
32
|
+
value: credentialCids.map((cid) => ({ tag: 'AV_ContractId', value: cid })),
|
|
33
|
+
},
|
|
34
|
+
},
|
|
35
|
+
};
|
|
36
|
+
}
|
|
37
|
+
//# sourceMappingURL=choice-context.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"choice-context.js","sourceRoot":"","sources":["../../../src/da-registry/choice-context.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;;;;AAEH,yEAAyE;AAC5D,QAAA,wBAAwB,GAAG;IACtC,uBAAuB,EAAE,mDAAmD;IAC5E,iBAAiB,EAAE,6CAA6C;CACxD,CAAC;AAEX,+CAA+C;AAC/C,6BAAoC,OAA4C;IAC9E,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,CAAC;AAC3C,CAAC;AAED;;;GAGG;AACH,2BACE,0BAAkC,EAClC,cAAwB;IAExB,OAAO;QACL,MAAM,EAAE;YACN,CAAC,QAAA,wBAAwB,CAAC,uBAAuB,CAAC,EAAE,EAAE,GAAG,EAAE,eAAe,EAAE,KAAK,EAAE,0BAA0B,EAAE;YAC/G,CAAC,QAAA,wBAAwB,CAAC,iBAAiB,CAAC,EAAE;gBAC5C,GAAG,EAAE,SAAS;gBACd,KAAK,EAAE,cAAc,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,eAAe,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC;aAC3E;SACF;KACF,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,96 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Typed Ledger API command builders for Digital Asset's Registry: provider and registrar onboarding, instrument
|
|
3
|
+
* configuration, credentials, transfer preapprovals, minting and transfers.
|
|
4
|
+
*
|
|
5
|
+
* Names and argument shapes come from DA's published Daml models (bundle 0.14.4, see {@link DA_REGISTRY_PACKAGES}); DA's
|
|
6
|
+
* terms make the source confidential, so nothing here copies it.
|
|
7
|
+
*/
|
|
8
|
+
import { type LedgerCommand } from '../utils/ledger';
|
|
9
|
+
import { type TokenStandardV1Transfer } from '../utils/token-standard';
|
|
10
|
+
import { type DaRegistryTemplateKey } from './templates';
|
|
11
|
+
import { type ClaimSpec, type PartyCredentialRequirement, partySet } from './readers';
|
|
12
|
+
export declare function requestProviderService(operator: string, provider: string): LedgerCommand;
|
|
13
|
+
export declare function createProviderConfiguration(providerServiceCid: string): LedgerCommand;
|
|
14
|
+
export declare function archiveAndCreateProviderConfiguration(providerServiceCid: string, cid: string): LedgerCommand;
|
|
15
|
+
/** Creates the registrar request and accepts it as provider in one transaction, when one party holds both roles. */
|
|
16
|
+
export declare function requestAndAcceptRegistrarService(operator: string, registrarAndProvider: string, providerConfigurationCid: string): LedgerCommand;
|
|
17
|
+
export declare function acceptRegistrarServiceRequest(requestCid: string, providerConfigurationCid: string): LedgerCommand;
|
|
18
|
+
export declare function deleteRejectedRegistrarServiceRequest(cid: string): LedgerCommand;
|
|
19
|
+
export declare function createTransferRule(registrarServiceCid: string): LedgerCommand;
|
|
20
|
+
export declare function createAllocationFactory(registrarServiceCid: string): LedgerCommand;
|
|
21
|
+
export interface InstrumentConfigurationPayload {
|
|
22
|
+
instrumentId: string;
|
|
23
|
+
/**
|
|
24
|
+
* Additional `InstrumentIdentifier` records for the instrument, in DA's Daml JSON encoding (an identifier carries at
|
|
25
|
+
* least `id` and `scheme`; `DA_REGISTRAR_INTERNAL_SCHEME` is the scheme for registrar-defined instruments). Empty
|
|
26
|
+
* when the instrument has a single identifier.
|
|
27
|
+
*/
|
|
28
|
+
additionalIdentifiers: Array<Record<string, unknown>>;
|
|
29
|
+
issuerRequirements: PartyCredentialRequirement[];
|
|
30
|
+
holderRequirements: PartyCredentialRequirement[];
|
|
31
|
+
useBlockList: boolean;
|
|
32
|
+
}
|
|
33
|
+
export declare function createInstrumentConfiguration(registrarServiceCid: string, payload: InstrumentConfigurationPayload): LedgerCommand;
|
|
34
|
+
export declare function archiveAndCreateInstrumentConfiguration(registrarServiceCid: string, cid: string, payload: InstrumentConfigurationPayload): LedgerCommand;
|
|
35
|
+
export declare function archiveInstrumentConfiguration(registrarServiceCid: string, cid: string): LedgerCommand;
|
|
36
|
+
export declare function createTransferPreapproval(operator: string, receiver: string, instrumentAdmin: string, instrumentIds: string[]): LedgerCommand;
|
|
37
|
+
export interface CredentialPayload {
|
|
38
|
+
issuer: string;
|
|
39
|
+
holder: string;
|
|
40
|
+
id: string;
|
|
41
|
+
description: string;
|
|
42
|
+
validFrom: null;
|
|
43
|
+
validUntil: string;
|
|
44
|
+
claims: Array<{
|
|
45
|
+
subject: string;
|
|
46
|
+
property: string;
|
|
47
|
+
value: string;
|
|
48
|
+
}>;
|
|
49
|
+
observers: ReturnType<typeof partySet>;
|
|
50
|
+
}
|
|
51
|
+
/**
|
|
52
|
+
* An issuer-held credential: issuer and holder are both the registrar and the allowlisted party appears only as the
|
|
53
|
+
* claims' subject, so it signs nothing. DA's operator observes it so DA's API can disclose it in choice contexts.
|
|
54
|
+
*/
|
|
55
|
+
export declare function issuerHeldCredential(params: {
|
|
56
|
+
registrar: string;
|
|
57
|
+
operator: string;
|
|
58
|
+
subject: string;
|
|
59
|
+
claims: ClaimSpec[];
|
|
60
|
+
id: string;
|
|
61
|
+
description: string;
|
|
62
|
+
validUntil: string;
|
|
63
|
+
}): CredentialPayload;
|
|
64
|
+
export declare function createCredential(payload: CredentialPayload): LedgerCommand;
|
|
65
|
+
/** The `Archive` choice every DA Registry template carries. */
|
|
66
|
+
export declare function archiveDaRegistryContract(templateKey: DaRegistryTemplateKey, contractId: string): LedgerCommand;
|
|
67
|
+
export interface MintPayload {
|
|
68
|
+
instrumentId: {
|
|
69
|
+
admin: string;
|
|
70
|
+
id: string;
|
|
71
|
+
};
|
|
72
|
+
amount: string;
|
|
73
|
+
holder: string;
|
|
74
|
+
reference: string;
|
|
75
|
+
requestedAt: string;
|
|
76
|
+
executeBefore: string;
|
|
77
|
+
meta: {
|
|
78
|
+
values: Record<string, string>;
|
|
79
|
+
};
|
|
80
|
+
}
|
|
81
|
+
export declare function offerMint(allocationFactoryCid: string, admin: string, mint: MintPayload, context: {
|
|
82
|
+
values: Record<string, unknown>;
|
|
83
|
+
}): LedgerCommand;
|
|
84
|
+
export declare function cancelMintOffer(mintOfferCid: string): LedgerCommand;
|
|
85
|
+
export declare function acceptMintOffer(mintOfferCid: string, context: {
|
|
86
|
+
values: Record<string, unknown>;
|
|
87
|
+
}): LedgerCommand;
|
|
88
|
+
/**
|
|
89
|
+
* A transfer through the registry's transfer factory (the Token Standard V1 `TransferFactory_Transfer` choice). The
|
|
90
|
+
* factory contract id and its choice context come from DA's API (`transferFactory`); the builder itself is the
|
|
91
|
+
* token-standard one, so the payload is validated the same way as any other Token Standard transfer.
|
|
92
|
+
*/
|
|
93
|
+
export declare function transferViaFactory(factoryCid: string, admin: string, transfer: TokenStandardV1Transfer, context: {
|
|
94
|
+
values: Record<string, unknown>;
|
|
95
|
+
}): LedgerCommand;
|
|
96
|
+
//# sourceMappingURL=commands.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"commands.d.ts","sourceRoot":"","sources":["../../../src/da-registry/commands.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,233 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.requestProviderService = requestProviderService;
|
|
4
|
+
exports.createProviderConfiguration = createProviderConfiguration;
|
|
5
|
+
exports.archiveAndCreateProviderConfiguration = archiveAndCreateProviderConfiguration;
|
|
6
|
+
exports.requestAndAcceptRegistrarService = requestAndAcceptRegistrarService;
|
|
7
|
+
exports.acceptRegistrarServiceRequest = acceptRegistrarServiceRequest;
|
|
8
|
+
exports.deleteRejectedRegistrarServiceRequest = deleteRejectedRegistrarServiceRequest;
|
|
9
|
+
exports.createTransferRule = createTransferRule;
|
|
10
|
+
exports.createAllocationFactory = createAllocationFactory;
|
|
11
|
+
exports.createInstrumentConfiguration = createInstrumentConfiguration;
|
|
12
|
+
exports.archiveAndCreateInstrumentConfiguration = archiveAndCreateInstrumentConfiguration;
|
|
13
|
+
exports.archiveInstrumentConfiguration = archiveInstrumentConfiguration;
|
|
14
|
+
exports.createTransferPreapproval = createTransferPreapproval;
|
|
15
|
+
exports.issuerHeldCredential = issuerHeldCredential;
|
|
16
|
+
exports.createCredential = createCredential;
|
|
17
|
+
exports.archiveDaRegistryContract = archiveDaRegistryContract;
|
|
18
|
+
exports.offerMint = offerMint;
|
|
19
|
+
exports.cancelMintOffer = cancelMintOffer;
|
|
20
|
+
exports.acceptMintOffer = acceptMintOffer;
|
|
21
|
+
exports.transferViaFactory = transferViaFactory;
|
|
22
|
+
const token_standard_1 = require("../utils/token-standard");
|
|
23
|
+
const choice_context_1 = require("./choice-context");
|
|
24
|
+
const templates_1 = require("./templates");
|
|
25
|
+
const readers_1 = require("./readers");
|
|
26
|
+
// ── Provider onboarding ─────────────────────────────────────────────────────────────────────────────────────────────
|
|
27
|
+
function requestProviderService(operator, provider) {
|
|
28
|
+
return {
|
|
29
|
+
CreateCommand: {
|
|
30
|
+
templateId: templates_1.DA_REGISTRY_TEMPLATES.providerServiceRequest,
|
|
31
|
+
createArguments: { operator, provider },
|
|
32
|
+
},
|
|
33
|
+
};
|
|
34
|
+
}
|
|
35
|
+
function createProviderConfiguration(providerServiceCid) {
|
|
36
|
+
return {
|
|
37
|
+
ExerciseCommand: {
|
|
38
|
+
templateId: templates_1.DA_REGISTRY_TEMPLATES.providerService,
|
|
39
|
+
contractId: providerServiceCid,
|
|
40
|
+
choice: 'ProviderService_CreateProviderConfiguration',
|
|
41
|
+
// No credential is needed to request a registrar seat; this provider serves only itself.
|
|
42
|
+
choiceArgument: { registrarRequirements: [], holderRequirements: [] },
|
|
43
|
+
},
|
|
44
|
+
};
|
|
45
|
+
}
|
|
46
|
+
function archiveAndCreateProviderConfiguration(providerServiceCid, cid) {
|
|
47
|
+
return {
|
|
48
|
+
ExerciseCommand: {
|
|
49
|
+
templateId: templates_1.DA_REGISTRY_TEMPLATES.providerService,
|
|
50
|
+
contractId: providerServiceCid,
|
|
51
|
+
choice: 'ProviderService_ArchiveAndCreateProviderConfiguration',
|
|
52
|
+
choiceArgument: { cid, payload: { registrarRequirements: [], holderRequirements: [] } },
|
|
53
|
+
},
|
|
54
|
+
};
|
|
55
|
+
}
|
|
56
|
+
// ── Registrar onboarding ────────────────────────────────────────────────────────────────────────────────────────────
|
|
57
|
+
/** Creates the registrar request and accepts it as provider in one transaction, when one party holds both roles. */
|
|
58
|
+
function requestAndAcceptRegistrarService(operator, registrarAndProvider, providerConfigurationCid) {
|
|
59
|
+
return {
|
|
60
|
+
CreateAndExerciseCommand: {
|
|
61
|
+
templateId: templates_1.DA_REGISTRY_TEMPLATES.registrarServiceRequest,
|
|
62
|
+
createArguments: {
|
|
63
|
+
operator,
|
|
64
|
+
provider: registrarAndProvider,
|
|
65
|
+
registrar: registrarAndProvider,
|
|
66
|
+
createTransferRule: true,
|
|
67
|
+
createAllocationFactory: true,
|
|
68
|
+
},
|
|
69
|
+
choice: 'RegistrarServiceRequest_Accept',
|
|
70
|
+
choiceArgument: { providerConfigurationCid, credentialCids: [] },
|
|
71
|
+
},
|
|
72
|
+
};
|
|
73
|
+
}
|
|
74
|
+
function acceptRegistrarServiceRequest(requestCid, providerConfigurationCid) {
|
|
75
|
+
return {
|
|
76
|
+
ExerciseCommand: {
|
|
77
|
+
templateId: templates_1.DA_REGISTRY_TEMPLATES.registrarServiceRequest,
|
|
78
|
+
contractId: requestCid,
|
|
79
|
+
choice: 'RegistrarServiceRequest_Accept',
|
|
80
|
+
choiceArgument: { providerConfigurationCid, credentialCids: [] },
|
|
81
|
+
},
|
|
82
|
+
};
|
|
83
|
+
}
|
|
84
|
+
function deleteRejectedRegistrarServiceRequest(cid) {
|
|
85
|
+
return {
|
|
86
|
+
ExerciseCommand: {
|
|
87
|
+
templateId: templates_1.DA_REGISTRY_TEMPLATES.rejectedRegistrarServiceRequest,
|
|
88
|
+
contractId: cid,
|
|
89
|
+
choice: 'RejectedRegistrarServiceRequest_Delete',
|
|
90
|
+
choiceArgument: {},
|
|
91
|
+
},
|
|
92
|
+
};
|
|
93
|
+
}
|
|
94
|
+
function createTransferRule(registrarServiceCid) {
|
|
95
|
+
return {
|
|
96
|
+
ExerciseCommand: {
|
|
97
|
+
templateId: templates_1.DA_REGISTRY_TEMPLATES.registrarService,
|
|
98
|
+
contractId: registrarServiceCid,
|
|
99
|
+
choice: 'RegistrarService_CreateTransferRule',
|
|
100
|
+
choiceArgument: {},
|
|
101
|
+
},
|
|
102
|
+
};
|
|
103
|
+
}
|
|
104
|
+
function createAllocationFactory(registrarServiceCid) {
|
|
105
|
+
return {
|
|
106
|
+
ExerciseCommand: {
|
|
107
|
+
templateId: templates_1.DA_REGISTRY_TEMPLATES.registrarService,
|
|
108
|
+
contractId: registrarServiceCid,
|
|
109
|
+
choice: 'RegistrarService_CreateAllocationFactory',
|
|
110
|
+
choiceArgument: {},
|
|
111
|
+
},
|
|
112
|
+
};
|
|
113
|
+
}
|
|
114
|
+
function createInstrumentConfiguration(registrarServiceCid, payload) {
|
|
115
|
+
return {
|
|
116
|
+
ExerciseCommand: {
|
|
117
|
+
templateId: templates_1.DA_REGISTRY_TEMPLATES.registrarService,
|
|
118
|
+
contractId: registrarServiceCid,
|
|
119
|
+
choice: 'RegistrarService_CreateInstrumentConfiguration',
|
|
120
|
+
choiceArgument: { ...payload },
|
|
121
|
+
},
|
|
122
|
+
};
|
|
123
|
+
}
|
|
124
|
+
function archiveAndCreateInstrumentConfiguration(registrarServiceCid, cid, payload) {
|
|
125
|
+
return {
|
|
126
|
+
ExerciseCommand: {
|
|
127
|
+
templateId: templates_1.DA_REGISTRY_TEMPLATES.registrarService,
|
|
128
|
+
contractId: registrarServiceCid,
|
|
129
|
+
choice: 'RegistrarService_ArchiveAndCreateInstrumentConfiguration',
|
|
130
|
+
choiceArgument: { cid, payload },
|
|
131
|
+
},
|
|
132
|
+
};
|
|
133
|
+
}
|
|
134
|
+
function archiveInstrumentConfiguration(registrarServiceCid, cid) {
|
|
135
|
+
return {
|
|
136
|
+
ExerciseCommand: {
|
|
137
|
+
templateId: templates_1.DA_REGISTRY_TEMPLATES.registrarService,
|
|
138
|
+
contractId: registrarServiceCid,
|
|
139
|
+
choice: 'RegistrarService_ArchiveInstrumentConfiguration',
|
|
140
|
+
choiceArgument: { cid },
|
|
141
|
+
},
|
|
142
|
+
};
|
|
143
|
+
}
|
|
144
|
+
// ── Transfer preapprovals ───────────────────────────────────────────────────────────────────────────────────────────
|
|
145
|
+
function createTransferPreapproval(operator, receiver, instrumentAdmin, instrumentIds) {
|
|
146
|
+
return {
|
|
147
|
+
CreateCommand: {
|
|
148
|
+
templateId: templates_1.DA_REGISTRY_TEMPLATES.transferPreapproval,
|
|
149
|
+
createArguments: {
|
|
150
|
+
operator,
|
|
151
|
+
receiver,
|
|
152
|
+
instrumentAdmin,
|
|
153
|
+
instrumentAllowances: instrumentIds.map((id) => ({ id })),
|
|
154
|
+
},
|
|
155
|
+
},
|
|
156
|
+
};
|
|
157
|
+
}
|
|
158
|
+
/**
|
|
159
|
+
* An issuer-held credential: issuer and holder are both the registrar and the allowlisted party appears only as the
|
|
160
|
+
* claims' subject, so it signs nothing. DA's operator observes it so DA's API can disclose it in choice contexts.
|
|
161
|
+
*/
|
|
162
|
+
function issuerHeldCredential(params) {
|
|
163
|
+
return {
|
|
164
|
+
issuer: params.registrar,
|
|
165
|
+
holder: params.registrar,
|
|
166
|
+
id: params.id,
|
|
167
|
+
description: params.description,
|
|
168
|
+
// Unset: a not-yet-valid credential anywhere in a transaction's supplied set aborts it.
|
|
169
|
+
validFrom: null,
|
|
170
|
+
validUntil: params.validUntil,
|
|
171
|
+
claims: params.claims.map((c) => ({ subject: params.subject, property: c.property, value: c.value })),
|
|
172
|
+
observers: (0, readers_1.partySet)([params.operator]),
|
|
173
|
+
};
|
|
174
|
+
}
|
|
175
|
+
function createCredential(payload) {
|
|
176
|
+
return { CreateCommand: { templateId: templates_1.DA_REGISTRY_TEMPLATES.credential, createArguments: { ...payload } } };
|
|
177
|
+
}
|
|
178
|
+
/** The `Archive` choice every DA Registry template carries. */
|
|
179
|
+
function archiveDaRegistryContract(templateKey, contractId) {
|
|
180
|
+
return {
|
|
181
|
+
ExerciseCommand: {
|
|
182
|
+
templateId: templates_1.DA_REGISTRY_TEMPLATES[templateKey],
|
|
183
|
+
contractId,
|
|
184
|
+
choice: 'Archive',
|
|
185
|
+
choiceArgument: {},
|
|
186
|
+
},
|
|
187
|
+
};
|
|
188
|
+
}
|
|
189
|
+
function offerMint(allocationFactoryCid, admin, mint, context) {
|
|
190
|
+
return {
|
|
191
|
+
ExerciseCommand: {
|
|
192
|
+
templateId: templates_1.DA_REGISTRY_TEMPLATES.allocationFactory,
|
|
193
|
+
contractId: allocationFactoryCid,
|
|
194
|
+
choice: 'AllocationFactory_OfferMint',
|
|
195
|
+
choiceArgument: { expectedAdmin: admin, mint, extraArgs: (0, choice_context_1.daRegistryExtraArgs)(context) },
|
|
196
|
+
},
|
|
197
|
+
};
|
|
198
|
+
}
|
|
199
|
+
function cancelMintOffer(mintOfferCid) {
|
|
200
|
+
return {
|
|
201
|
+
ExerciseCommand: {
|
|
202
|
+
templateId: templates_1.DA_REGISTRY_TEMPLATES.mintOffer,
|
|
203
|
+
contractId: mintOfferCid,
|
|
204
|
+
choice: 'MintOffer_Cancel',
|
|
205
|
+
choiceArgument: { extraArgs: null },
|
|
206
|
+
},
|
|
207
|
+
};
|
|
208
|
+
}
|
|
209
|
+
function acceptMintOffer(mintOfferCid, context) {
|
|
210
|
+
return {
|
|
211
|
+
ExerciseCommand: {
|
|
212
|
+
templateId: templates_1.DA_REGISTRY_TEMPLATES.mintOffer,
|
|
213
|
+
contractId: mintOfferCid,
|
|
214
|
+
choice: 'MintOffer_Accept',
|
|
215
|
+
choiceArgument: { extraArgs: (0, choice_context_1.daRegistryExtraArgs)(context) },
|
|
216
|
+
},
|
|
217
|
+
};
|
|
218
|
+
}
|
|
219
|
+
// ── Transfers ─────────────────────────────────────────────────────────────────────────────────────────────────────
|
|
220
|
+
/**
|
|
221
|
+
* A transfer through the registry's transfer factory (the Token Standard V1 `TransferFactory_Transfer` choice). The
|
|
222
|
+
* factory contract id and its choice context come from DA's API (`transferFactory`); the builder itself is the
|
|
223
|
+
* token-standard one, so the payload is validated the same way as any other Token Standard transfer.
|
|
224
|
+
*/
|
|
225
|
+
function transferViaFactory(factoryCid, admin, transfer, context) {
|
|
226
|
+
return (0, token_standard_1.buildTokenStandardV1TransferCommand)({
|
|
227
|
+
transferFactoryContractId: factoryCid,
|
|
228
|
+
expectedAdmin: admin,
|
|
229
|
+
transfer,
|
|
230
|
+
extraArgs: { context, meta: { values: {} } },
|
|
231
|
+
});
|
|
232
|
+
}
|
|
233
|
+
//# sourceMappingURL=commands.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"commands.js","sourceRoot":"","sources":["../../../src/da-registry/commands.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/da-registry/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC;AAC7B,cAAc,kBAAkB,CAAC;AACjC,cAAc,YAAY,CAAC;AAC3B,cAAc,UAAU,CAAC;AACzB,cAAc,YAAY,CAAC;AAC3B,cAAc,WAAW,CAAC;AAC1B,cAAc,aAAa,CAAC"}
|