@polymeshassociation/polymesh-sdk 15.0.0-beta.3 → 15.0.0-beta.6
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/CHANGELOG.md +2 -2
- package/api/entities/Account.d.ts.map +1 -1
- package/api/entities/Account.js +6 -5
- package/api/entities/Account.js.map +1 -1
- package/api/entities/Asset/TransferRestrictions/ClaimCount.d.ts +61 -0
- package/api/entities/Asset/TransferRestrictions/ClaimCount.d.ts.map +1 -0
- package/api/entities/Asset/TransferRestrictions/ClaimCount.js +16 -0
- package/api/entities/Asset/TransferRestrictions/ClaimCount.js.map +1 -0
- package/api/entities/Asset/TransferRestrictions/ClaimPercentage.d.ts +52 -0
- package/api/entities/Asset/TransferRestrictions/ClaimPercentage.d.ts.map +1 -0
- package/api/entities/Asset/TransferRestrictions/ClaimPercentage.js +16 -0
- package/api/entities/Asset/TransferRestrictions/ClaimPercentage.js.map +1 -0
- package/api/entities/Asset/TransferRestrictions/Count.d.ts +41 -4
- package/api/entities/Asset/TransferRestrictions/Count.d.ts.map +1 -1
- package/api/entities/Asset/TransferRestrictions/Count.js +6 -2
- package/api/entities/Asset/TransferRestrictions/Count.js.map +1 -1
- package/api/entities/Asset/TransferRestrictions/Percentage.d.ts +17 -2
- package/api/entities/Asset/TransferRestrictions/Percentage.d.ts.map +1 -1
- package/api/entities/Asset/TransferRestrictions/Percentage.js.map +1 -1
- package/api/entities/Asset/TransferRestrictions/TransferRestrictionBase.d.ts +15 -1
- package/api/entities/Asset/TransferRestrictions/TransferRestrictionBase.d.ts.map +1 -1
- package/api/entities/Asset/TransferRestrictions/TransferRestrictionBase.js +39 -4
- package/api/entities/Asset/TransferRestrictions/TransferRestrictionBase.js.map +1 -1
- package/api/entities/Asset/TransferRestrictions/index.d.ts +4 -0
- package/api/entities/Asset/TransferRestrictions/index.d.ts.map +1 -1
- package/api/entities/Asset/TransferRestrictions/index.js +4 -0
- package/api/entities/Asset/TransferRestrictions/index.js.map +1 -1
- package/api/entities/Identity/index.d.ts +5 -4
- package/api/entities/Identity/index.d.ts.map +1 -1
- package/api/entities/Identity/index.js +32 -23
- package/api/entities/Identity/index.js.map +1 -1
- package/api/procedures/addAssetStat.d.ts +16 -0
- package/api/procedures/addAssetStat.d.ts.map +1 -0
- package/api/procedures/addAssetStat.js +91 -0
- package/api/procedures/addAssetStat.js.map +1 -0
- package/api/procedures/addTransferRestriction.d.ts +5 -16
- package/api/procedures/addTransferRestriction.d.ts.map +1 -1
- package/api/procedures/addTransferRestriction.js +42 -69
- package/api/procedures/addTransferRestriction.js.map +1 -1
- package/api/procedures/createAsset.d.ts +1 -1
- package/api/procedures/createAsset.d.ts.map +1 -1
- package/api/procedures/createAsset.js +56 -31
- package/api/procedures/createAsset.js.map +1 -1
- package/api/procedures/leaveIdentity.d.ts.map +1 -1
- package/api/procedures/leaveIdentity.js +6 -2
- package/api/procedures/leaveIdentity.js.map +1 -1
- package/api/procedures/modifySignerPermissions.d.ts.map +1 -1
- package/api/procedures/modifySignerPermissions.js +4 -2
- package/api/procedures/modifySignerPermissions.js.map +1 -1
- package/api/procedures/removeAssetStat.d.ts +16 -0
- package/api/procedures/removeAssetStat.d.ts.map +1 -0
- package/api/procedures/removeAssetStat.js +88 -0
- package/api/procedures/removeAssetStat.js.map +1 -0
- package/api/procedures/removeSecondaryAccounts.d.ts.map +1 -1
- package/api/procedures/removeSecondaryAccounts.js +3 -3
- package/api/procedures/removeSecondaryAccounts.js.map +1 -1
- package/api/procedures/setTransferRestrictions.d.ts +1 -8
- package/api/procedures/setTransferRestrictions.d.ts.map +1 -1
- package/api/procedures/setTransferRestrictions.js +52 -62
- package/api/procedures/setTransferRestrictions.js.map +1 -1
- package/api/procedures/types.d.ts +98 -5
- package/api/procedures/types.d.ts.map +1 -1
- package/api/procedures/types.js +25 -1
- package/api/procedures/types.js.map +1 -1
- package/api/procedures/utils.d.ts.map +1 -1
- package/api/procedures/utils.js +3 -7
- package/api/procedures/utils.js.map +1 -1
- package/base/Context.js +1 -1
- package/base/Procedure.js +1 -1
- package/generated/utils.js +1 -1
- package/generated/utils.js.map +1 -1
- package/internal.d.ts +5 -2
- package/internal.d.ts.map +1 -1
- package/internal.js +5 -1
- package/internal.js.map +1 -1
- package/npm-package/polymeshassociation-polymesh-sdk-15.0.0-beta.6.tgz +0 -0
- package/package.json +1 -1
- package/types/index.d.ts +114 -3
- package/types/index.d.ts.map +1 -1
- package/types/index.js +10 -3
- package/types/index.js.map +1 -1
- package/types/internal.d.ts +9 -2
- package/types/internal.d.ts.map +1 -1
- package/types/internal.js +2 -0
- package/types/internal.js.map +1 -1
- package/utils/constants.d.ts +2 -2
- package/utils/constants.js +2 -2
- package/utils/conversion.d.ts +66 -10
- package/utils/conversion.d.ts.map +1 -1
- package/utils/conversion.js +323 -19
- package/utils/conversion.js.map +1 -1
- package/utils/internal.d.ts +53 -5
- package/utils/internal.d.ts.map +1 -1
- package/utils/internal.js +222 -6
- package/utils/internal.js.map +1 -1
- package/npm-package/polymeshassociation-polymesh-sdk-15.0.0-beta.3.tgz +0 -0
|
@@ -24,10 +24,10 @@ const internal_2 = require("../../utils/internal");
|
|
|
24
24
|
*
|
|
25
25
|
* @returns undefined if fees aren't being calculated manually
|
|
26
26
|
*/
|
|
27
|
-
function
|
|
27
|
+
function calculateManualFees(tags, context) {
|
|
28
28
|
return __awaiter(this, void 0, void 0, function* () {
|
|
29
|
-
if (
|
|
30
|
-
return
|
|
29
|
+
if (tags.length === 0) {
|
|
30
|
+
return new bignumber_js_1.default(0);
|
|
31
31
|
}
|
|
32
32
|
const fees = yield context.getProtocolFees({
|
|
33
33
|
tags: tags.map(tagData => (typeof tagData !== 'string' ? tagData.tag : tagData)),
|
|
@@ -39,28 +39,34 @@ function addManualFees(currentFee, tags, context) {
|
|
|
39
39
|
({ feeMultiplier } = tagData);
|
|
40
40
|
}
|
|
41
41
|
return prev.plus(nextFees.times(feeMultiplier));
|
|
42
|
-
},
|
|
42
|
+
}, new bignumber_js_1.default(0));
|
|
43
43
|
});
|
|
44
44
|
}
|
|
45
|
+
/**
|
|
46
|
+
* @throws if the Ticker is not available
|
|
47
|
+
*/
|
|
48
|
+
function assertTickerAvailable(ticker, status, reservationRequired) {
|
|
49
|
+
if (status === types_1.TickerReservationStatus.AssetCreated) {
|
|
50
|
+
throw new internal_1.PolymeshError({
|
|
51
|
+
code: types_1.ErrorCode.UnmetPrerequisite,
|
|
52
|
+
message: `An Asset with ticker "${ticker}" already exists`,
|
|
53
|
+
});
|
|
54
|
+
}
|
|
55
|
+
if (status === types_1.TickerReservationStatus.Free && reservationRequired) {
|
|
56
|
+
throw new internal_1.PolymeshError({
|
|
57
|
+
code: types_1.ErrorCode.UnmetPrerequisite,
|
|
58
|
+
message: `You must first reserve ticker "${ticker}" in order to create an Asset with it`,
|
|
59
|
+
});
|
|
60
|
+
}
|
|
61
|
+
}
|
|
45
62
|
/**
|
|
46
63
|
* @hidden
|
|
47
64
|
*/
|
|
48
65
|
function prepareCreateAsset(args) {
|
|
49
66
|
return __awaiter(this, void 0, void 0, function* () {
|
|
50
67
|
const { context: { polymeshApi: { tx, query: { asset }, }, }, context, storage: { customTypeData, status }, } = this;
|
|
51
|
-
const { ticker, name, initialSupply, isDivisible, assetType, securityIdentifiers = [], fundingRound, documents, requireInvestorUniqueness, reservationRequired, } = args;
|
|
52
|
-
|
|
53
|
-
throw new internal_1.PolymeshError({
|
|
54
|
-
code: types_1.ErrorCode.UnmetPrerequisite,
|
|
55
|
-
message: `An Asset with ticker "${ticker}" already exists`,
|
|
56
|
-
});
|
|
57
|
-
}
|
|
58
|
-
if (status === types_1.TickerReservationStatus.Free && reservationRequired) {
|
|
59
|
-
throw new internal_1.PolymeshError({
|
|
60
|
-
code: types_1.ErrorCode.UnmetPrerequisite,
|
|
61
|
-
message: `You must first reserve ticker "${ticker}" in order to create an Asset with it`,
|
|
62
|
-
});
|
|
63
|
-
}
|
|
68
|
+
const { ticker, name, initialSupply, isDivisible, assetType, securityIdentifiers = [], fundingRound, documents, requireInvestorUniqueness, reservationRequired, initialStatistics, } = args;
|
|
69
|
+
assertTickerAvailable(ticker, status, reservationRequired);
|
|
64
70
|
const rawTicker = (0, conversion_1.stringToTicker)(ticker, context);
|
|
65
71
|
const rawName = (0, conversion_1.stringToBytes)(name, context);
|
|
66
72
|
const rawIsDivisible = (0, conversion_1.booleanToBool)(isDivisible, context);
|
|
@@ -68,20 +74,25 @@ function prepareCreateAsset(args) {
|
|
|
68
74
|
const rawFundingRound = (0, internal_2.optionize)(conversion_1.stringToBytes)(fundingRound, context);
|
|
69
75
|
const rawDisableIu = (0, conversion_1.booleanToBool)(!requireInvestorUniqueness, context);
|
|
70
76
|
const newAsset = new internal_1.Asset({ ticker }, context);
|
|
71
|
-
|
|
77
|
+
const transactions = [];
|
|
78
|
+
const txTags = [];
|
|
72
79
|
/*
|
|
73
80
|
* we waive any protocol fees if the Asset is created in Ethereum. If not created and ticker is not yet reserved,
|
|
74
81
|
* we set the fee to the sum of protocol fees for ticker registration and Asset creation.
|
|
82
|
+
*
|
|
83
|
+
* To do this, we keep track of transaction tags, and if manual fee calculations are needed, perform the fee calculation
|
|
84
|
+
* before adding the batch transaction.
|
|
75
85
|
*/
|
|
76
86
|
const classicTicker = yield asset.classicTickers(rawTicker);
|
|
77
87
|
const assetCreatedInEthereum = classicTicker.isSome && (0, conversion_1.boolToBoolean)(classicTicker.unwrap().isCreated);
|
|
88
|
+
let manualFees = false;
|
|
78
89
|
if (assetCreatedInEthereum) {
|
|
79
|
-
|
|
90
|
+
manualFees = true;
|
|
80
91
|
}
|
|
81
92
|
else if (status === types_1.TickerReservationStatus.Free) {
|
|
82
|
-
|
|
93
|
+
manualFees = true;
|
|
94
|
+
txTags.push(types_1.TxTags.asset.RegisterTicker, types_1.TxTags.asset.CreateAsset);
|
|
83
95
|
}
|
|
84
|
-
const transactions = [];
|
|
85
96
|
/*
|
|
86
97
|
* - if the passed Asset type isn't one of the fixed ones (custom), we check if there is already
|
|
87
98
|
* an on-chain custom Asset type with that name:
|
|
@@ -93,10 +104,9 @@ function prepareCreateAsset(args) {
|
|
|
93
104
|
const { rawValue, id } = customTypeData;
|
|
94
105
|
if (id.isEmpty) {
|
|
95
106
|
/*
|
|
96
|
-
*
|
|
97
|
-
* the fees for registering a custom Asset type
|
|
107
|
+
* store RegisterCustomAssetType fees txTag in case manual fees are being used
|
|
98
108
|
*/
|
|
99
|
-
|
|
109
|
+
txTags.push(types_1.TxTags.asset.RegisterCustomAssetType);
|
|
100
110
|
transactions.push((0, internal_2.checkTxType)({
|
|
101
111
|
transaction: tx.asset.createAssetWithCustomType,
|
|
102
112
|
args: [
|
|
@@ -141,13 +151,25 @@ function prepareCreateAsset(args) {
|
|
|
141
151
|
],
|
|
142
152
|
}));
|
|
143
153
|
}
|
|
154
|
+
if (initialStatistics === null || initialStatistics === void 0 ? void 0 : initialStatistics.length) {
|
|
155
|
+
const tickerKey = (0, conversion_1.stringToTickerKey)(ticker, context);
|
|
156
|
+
const rawStats = initialStatistics.map(i => (0, conversion_1.inputStatTypeToMeshStatType)(i, context));
|
|
157
|
+
const bTreeStats = (0, conversion_1.statisticStatTypesToBtreeStatType)(rawStats, context);
|
|
158
|
+
/*
|
|
159
|
+
* store set asset stat fees in case manual fees are being used
|
|
160
|
+
*/
|
|
161
|
+
txTags.push(types_1.TxTags.statistics.SetActiveAssetStats);
|
|
162
|
+
transactions.push((0, internal_2.checkTxType)({
|
|
163
|
+
transaction: tx.statistics.setActiveAssetStats,
|
|
164
|
+
args: [tickerKey, bTreeStats],
|
|
165
|
+
}));
|
|
166
|
+
}
|
|
144
167
|
if (initialSupply && initialSupply.gt(0)) {
|
|
145
168
|
const rawInitialSupply = (0, conversion_1.bigNumberToBalance)(initialSupply, context, isDivisible);
|
|
146
169
|
/*
|
|
147
|
-
*
|
|
148
|
-
* the fees for issuing
|
|
170
|
+
* store issuing fees txTags in case manual fees are being used
|
|
149
171
|
*/
|
|
150
|
-
|
|
172
|
+
txTags.push(types_1.TxTags.asset.Issue);
|
|
151
173
|
transactions.push((0, internal_2.checkTxType)({
|
|
152
174
|
transaction: tx.asset.issue,
|
|
153
175
|
args: [rawTicker, rawInitialSupply],
|
|
@@ -157,10 +179,9 @@ function prepareCreateAsset(args) {
|
|
|
157
179
|
const rawDocuments = documents.map(doc => (0, conversion_1.assetDocumentToDocument)(doc, context));
|
|
158
180
|
const feeMultiplier = new bignumber_js_1.default(rawDocuments.length);
|
|
159
181
|
/*
|
|
160
|
-
*
|
|
161
|
-
* the fees for adding documents
|
|
182
|
+
* store addDocuments txTag in case manual fees are being used
|
|
162
183
|
*/
|
|
163
|
-
|
|
184
|
+
txTags.push({ tag: types_1.TxTags.asset.AddDocuments, feeMultiplier });
|
|
164
185
|
transactions.push((0, internal_2.checkTxType)({
|
|
165
186
|
transaction: tx.asset.addDocuments,
|
|
166
187
|
// this will be ignored if manual fees are passed
|
|
@@ -168,6 +189,7 @@ function prepareCreateAsset(args) {
|
|
|
168
189
|
args: [rawDocuments, rawTicker],
|
|
169
190
|
}));
|
|
170
191
|
}
|
|
192
|
+
const fee = manualFees ? yield calculateManualFees(txTags, context) : undefined;
|
|
171
193
|
this.addBatchTransaction({
|
|
172
194
|
transactions,
|
|
173
195
|
fee,
|
|
@@ -179,7 +201,7 @@ exports.prepareCreateAsset = prepareCreateAsset;
|
|
|
179
201
|
/**
|
|
180
202
|
* @hidden
|
|
181
203
|
*/
|
|
182
|
-
function getAuthorization({ ticker, documents }) {
|
|
204
|
+
function getAuthorization({ ticker, documents, initialStatistics }) {
|
|
183
205
|
return __awaiter(this, void 0, void 0, function* () {
|
|
184
206
|
const { storage: { customTypeData, status }, } = this;
|
|
185
207
|
const transactions = [types_1.TxTags.asset.CreateAsset];
|
|
@@ -189,6 +211,9 @@ function getAuthorization({ ticker, documents }) {
|
|
|
189
211
|
if (customTypeData === null || customTypeData === void 0 ? void 0 : customTypeData.id.isEmpty) {
|
|
190
212
|
transactions.push(types_1.TxTags.asset.RegisterCustomAssetType);
|
|
191
213
|
}
|
|
214
|
+
if (initialStatistics === null || initialStatistics === void 0 ? void 0 : initialStatistics.length) {
|
|
215
|
+
transactions.push(types_1.TxTags.statistics.SetActiveAssetStats);
|
|
216
|
+
}
|
|
192
217
|
const auth = {
|
|
193
218
|
permissions: {
|
|
194
219
|
transactions,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createAsset.js","sourceRoot":"","sources":["../../../src/api/procedures/createAsset.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AACA,gEAAqC;AACrC,mCAAgC;AAEhC,6CAAyF;AAEzF,
|
|
1
|
+
{"version":3,"file":"createAsset.js","sourceRoot":"","sources":["../../../src/api/procedures/createAsset.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"leaveIdentity.d.ts","sourceRoot":"","sources":["../../../src/api/procedures/leaveIdentity.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiB,SAAS,EAAE,uBAAmB;
|
|
1
|
+
{"version":3,"file":"leaveIdentity.d.ts","sourceRoot":"","sources":["../../../src/api/procedures/leaveIdentity.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiB,SAAS,EAAE,uBAAmB;AAItD;;GAEG;AACH,wBAAsB,oBAAoB,CAAC,IAAI,EAAE,SAAS,CAAC,IAAI,EAAE,IAAI,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAkCrF;AAED;;GAEG;AACH,eAAO,MAAM,aAAa,QAAO,UAAU,IAAI,EAAE,IAAI,CAOjD,CAAC"}
|
|
@@ -12,6 +12,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
12
12
|
exports.leaveIdentity = exports.prepareLeaveIdentity = void 0;
|
|
13
13
|
const internal_1 = require("../../internal");
|
|
14
14
|
const types_1 = require("../../types");
|
|
15
|
+
const internal_2 = require("../../utils/internal");
|
|
15
16
|
/**
|
|
16
17
|
* @hidden
|
|
17
18
|
*/
|
|
@@ -26,8 +27,11 @@ function prepareLeaveIdentity() {
|
|
|
26
27
|
message: 'There is no Identity associated to the signing Account',
|
|
27
28
|
});
|
|
28
29
|
}
|
|
29
|
-
const
|
|
30
|
-
|
|
30
|
+
const [accountPermission] = yield (0, internal_2.getSecondaryAccountPermissions)({
|
|
31
|
+
accounts: [signingAccount],
|
|
32
|
+
identity: signingIdentity,
|
|
33
|
+
}, context);
|
|
34
|
+
const isSecondaryAccount = accountPermission && signingAccount.isEqual(accountPermission.account);
|
|
31
35
|
if (!isSecondaryAccount) {
|
|
32
36
|
throw new internal_1.PolymeshError({
|
|
33
37
|
code: types_1.ErrorCode.UnmetPrerequisite,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"leaveIdentity.js","sourceRoot":"","sources":["../../../src/api/procedures/leaveIdentity.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,6CAAsD;AACtD,uCAA4C;
|
|
1
|
+
{"version":3,"file":"leaveIdentity.js","sourceRoot":"","sources":["../../../src/api/procedures/leaveIdentity.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,6CAAsD;AACtD,uCAA4C;AAC5C,mDAAkE;AAElE;;GAEG;AACH,SAAsB,oBAAoB;;QACxC,MAAM,EACJ,OAAO,EAAE,EACP,WAAW,EAAE,EAAE,EAAE,EAAE,GACpB,EACD,OAAO,GACR,GAAG,IAAI,CAAC;QAET,MAAM,cAAc,GAAG,OAAO,CAAC,iBAAiB,EAAE,CAAC;QACnD,MAAM,eAAe,GAAG,MAAM,cAAc,CAAC,WAAW,EAAE,CAAC;QAE3D,IAAI,CAAC,eAAe,EAAE;YACpB,MAAM,IAAI,wBAAa,CAAC;gBACtB,IAAI,EAAE,iBAAS,CAAC,iBAAiB;gBACjC,OAAO,EAAE,wDAAwD;aAClE,CAAC,CAAC;SACJ;QACD,MAAM,CAAC,iBAAiB,CAAC,GAAG,MAAM,IAAA,yCAA8B,EAC9D;YACE,QAAQ,EAAE,CAAC,cAAc,CAAC;YAC1B,QAAQ,EAAE,eAAe;SAC1B,EACD,OAAO,CACR,CAAC;QAEF,MAAM,kBAAkB,GAAG,iBAAiB,IAAI,cAAc,CAAC,OAAO,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC;QAClG,IAAI,CAAC,kBAAkB,EAAE;YACvB,MAAM,IAAI,wBAAa,CAAC;gBACtB,IAAI,EAAE,iBAAS,CAAC,iBAAiB;gBACjC,OAAO,EAAE,0DAA0D;aACpE,CAAC,CAAC;SACJ;QAED,IAAI,CAAC,cAAc,CAAC,EAAE,WAAW,EAAE,EAAE,CAAC,QAAQ,CAAC,kBAAkB,EAAE,CAAC,CAAC;IACvE,CAAC;CAAA;AAlCD,oDAkCC;AAED;;GAEG;AACI,MAAM,aAAa,GAAG,GAA0B,EAAE,CACvD,IAAI,oBAAS,CAAC,oBAAoB,EAAE;IAClC,WAAW,EAAE;QACX,MAAM,EAAE,EAAE;QACV,UAAU,EAAE,EAAE;QACd,YAAY,EAAE,CAAC,cAAM,CAAC,QAAQ,CAAC,kBAAkB,CAAC;KACnD;CACF,CAAC,CAAC;AAPQ,QAAA,aAAa,iBAOrB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"modifySignerPermissions.d.ts","sourceRoot":"","sources":["../../../src/api/procedures/modifySignerPermissions.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,uBAAmB;AACjD,OAAO,EAAE,6BAA6B,EAAU,oBAAgB;AAChE,OAAO,EAAE,sBAAsB,EAAE,6BAAyB;
|
|
1
|
+
{"version":3,"file":"modifySignerPermissions.d.ts","sourceRoot":"","sources":["../../../src/api/procedures/modifySignerPermissions.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,uBAAmB;AACjD,OAAO,EAAE,6BAA6B,EAAU,oBAAgB;AAChE,OAAO,EAAE,sBAAsB,EAAE,6BAAyB;AAU1D;;GAEG;AACH,MAAM,WAAW,OAAO;IACtB,QAAQ,EAAE,QAAQ,CAAC;CACpB;AAED;;GAEG;AACH,wBAAsB,8BAA8B,CAClD,IAAI,EAAE,SAAS,CAAC,6BAA6B,EAAE,IAAI,EAAE,OAAO,CAAC,EAC7D,IAAI,EAAE,6BAA6B,GAClC,OAAO,CAAC,IAAI,CAAC,CAiCf;AAED;;GAEG;AACH,wBAAsB,gBAAgB,CACpC,IAAI,EAAE,SAAS,CAAC,6BAA6B,EAAE,IAAI,EAAE,OAAO,CAAC,GAC5D,OAAO,CAAC,sBAAsB,CAAC,CAuBjC;AAED;;GAEG;AACH,wBAAsB,cAAc,CAClC,IAAI,EAAE,SAAS,CAAC,6BAA6B,EAAE,IAAI,EAAE,OAAO,CAAC,GAC5D,OAAO,CAAC,OAAO,CAAC,CAMlB;AAED;;GAEG;AACH,eAAO,MAAM,uBAAuB,QAAO,UACzC,6BAA6B,EAC7B,IAAI,EACJ,OAAO,CAC2E,CAAC"}
|
|
@@ -15,6 +15,7 @@ const internal_1 = require("../../internal");
|
|
|
15
15
|
const types_1 = require("../../types");
|
|
16
16
|
const utils_2 = require("../../types/utils");
|
|
17
17
|
const conversion_1 = require("../../utils/conversion");
|
|
18
|
+
const internal_2 = require("../../utils/internal");
|
|
18
19
|
/**
|
|
19
20
|
* @hidden
|
|
20
21
|
*/
|
|
@@ -22,8 +23,9 @@ function prepareModifySignerPermissions(args) {
|
|
|
22
23
|
return __awaiter(this, void 0, void 0, function* () {
|
|
23
24
|
const { context: { polymeshApi: { tx }, }, context, storage: { identity }, } = this;
|
|
24
25
|
const { secondaryAccounts } = args;
|
|
25
|
-
const
|
|
26
|
-
(0,
|
|
26
|
+
const accounts = secondaryAccounts.map(({ account }) => account);
|
|
27
|
+
const existingSecondaryAccounts = yield (0, internal_2.getSecondaryAccountPermissions)({ accounts, identity }, context);
|
|
28
|
+
(0, utils_1.assertSecondaryAccounts)(accounts, existingSecondaryAccounts);
|
|
27
29
|
const signersList = secondaryAccounts.map(({ account, permissions: permissionsLike }) => {
|
|
28
30
|
const permissions = (0, conversion_1.permissionsLikeToPermissions)(permissionsLike, context);
|
|
29
31
|
const rawPermissions = (0, conversion_1.permissionsToMeshPermissions)(permissions, context);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"modifySignerPermissions.js","sourceRoot":"","sources":["../../../src/api/procedures/modifySignerPermissions.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,mCAAiE;AACjE,6CAAiD;AACjD,uCAAgE;AAEhE,6CAAsC;AACtC,uDAK4B;
|
|
1
|
+
{"version":3,"file":"modifySignerPermissions.js","sourceRoot":"","sources":["../../../src/api/procedures/modifySignerPermissions.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,mCAAiE;AACjE,6CAAiD;AACjD,uCAAgE;AAEhE,6CAAsC;AACtC,uDAK4B;AAC5B,mDAAkE;AASlE;;GAEG;AACH,SAAsB,8BAA8B,CAElD,IAAmC;;QAEnC,MAAM,EACJ,OAAO,EAAE,EACP,WAAW,EAAE,EAAE,EAAE,EAAE,GACpB,EACD,OAAO,EACP,OAAO,EAAE,EAAE,QAAQ,EAAE,GACtB,GAAG,IAAI,CAAC;QAET,MAAM,EAAE,iBAAiB,EAAE,GAAG,IAAI,CAAC;QACnC,MAAM,QAAQ,GAAG,iBAAiB,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC;QACjE,MAAM,yBAAyB,GAAG,MAAM,IAAA,yCAA8B,EACpE,EAAE,QAAQ,EAAE,QAAQ,EAAE,EACtB,OAAO,CACR,CAAC;QACF,IAAA,+BAAuB,EAAC,QAAQ,EAAE,yBAAyB,CAAC,CAAC;QAE7D,MAAM,WAAW,GAAG,iBAAiB,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,EAAE,EAAE;YACtF,MAAM,WAAW,GAAG,IAAA,yCAA4B,EAAC,eAAe,EAAE,OAAO,CAAC,CAAC;YAE3E,MAAM,cAAc,GAAG,IAAA,yCAA4B,EAAC,WAAW,EAAE,OAAO,CAAC,CAAC;YAE1E,OAAO,IAAA,aAAK,EAAC,IAAA,mCAAsB,EAAC,IAAA,gCAAmB,EAAC,OAAO,CAAC,EAAE,OAAO,CAAC,EAAE,cAAc,CAAC,CAAC;QAC9F,CAAC,CAAC,CAAC;QAEH,MAAM,WAAW,GAAG,EAAE,CAAC,QAAQ,CAAC,qBAAqB,CAAC;QAEtD,IAAI,CAAC,mBAAmB,CAAC;YACvB,YAAY,EAAE,WAAW,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;gBACvC,WAAW;gBACX,IAAI,EAAE,MAAM;aACb,CAAC,CAAC;SACJ,CAAC,CAAC;IACL,CAAC;CAAA;AApCD,wEAoCC;AAED;;GAEG;AACH,SAAsB,gBAAgB;;QAGpC,MAAM,EACJ,OAAO,EACP,OAAO,EAAE,EAAE,QAAQ,EAAE,GACtB,GAAG,IAAI,CAAC;QAET,MAAM,cAAc,GAAG,OAAO,CAAC,iBAAiB,EAAE,CAAC;QACnD,MAAM,EAAE,OAAO,EAAE,cAAc,EAAE,GAAG,MAAM,QAAQ,CAAC,iBAAiB,EAAE,CAAC;QAEvE,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,cAAc,CAAC,EAAE;YAC3C,OAAO;gBACL,iBAAiB,EACf,sFAAsF;aACzF,CAAC;SACH;QAED,OAAO;YACL,WAAW,EAAE;gBACX,YAAY,EAAE,CAAC,cAAM,CAAC,QAAQ,CAAC,qBAAqB,CAAC;gBACrD,MAAM,EAAE,EAAE;gBACV,UAAU,EAAE,EAAE;aACf;SACF,CAAC;IACJ,CAAC;CAAA;AAzBD,4CAyBC;AAED;;GAEG;AACH,SAAsB,cAAc;;QAGlC,MAAM,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC;QAEzB,OAAO;YACL,QAAQ,EAAE,MAAM,OAAO,CAAC,kBAAkB,EAAE;SAC7C,CAAC;IACJ,CAAC;CAAA;AARD,wCAQC;AAED;;GAEG;AACI,MAAM,uBAAuB,GAAG,GAIrC,EAAE,CAAC,IAAI,oBAAS,CAAC,8BAA8B,EAAE,gBAAgB,EAAE,cAAc,CAAC,CAAC;AAJxE,QAAA,uBAAuB,2BAIiD"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { Procedure } from "../../internal";
|
|
2
|
+
import { RemoveAssetStatParams } from "../../types";
|
|
3
|
+
import { ProcedureAuthorization } from "../../types/internal";
|
|
4
|
+
/**
|
|
5
|
+
* @hidden
|
|
6
|
+
*/
|
|
7
|
+
export declare function prepareRemoveAssetStat(this: Procedure<RemoveAssetStatParams, void>, args: RemoveAssetStatParams): Promise<void>;
|
|
8
|
+
/**
|
|
9
|
+
* @hidden
|
|
10
|
+
*/
|
|
11
|
+
export declare function getAuthorization(this: Procedure<RemoveAssetStatParams, void>, { ticker }: RemoveAssetStatParams): ProcedureAuthorization;
|
|
12
|
+
/**
|
|
13
|
+
* @hidden
|
|
14
|
+
*/
|
|
15
|
+
export declare const removeAssetStat: () => Procedure<RemoveAssetStatParams, void>;
|
|
16
|
+
//# sourceMappingURL=removeAssetStat.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"removeAssetStat.d.ts","sourceRoot":"","sources":["../../../src/api/procedures/removeAssetStat.ts"],"names":[],"mappings":"AAMA,OAAO,EAAwB,SAAS,EAAE,uBAAmB;AAC7D,OAAO,EAAa,qBAAqB,EAAqC,oBAAgB;AAC9F,OAAO,EAAE,sBAAsB,EAAE,6BAAyB;AAW1D;;GAEG;AACH,wBAAsB,sBAAsB,CAC1C,IAAI,EAAE,SAAS,CAAC,qBAAqB,EAAE,IAAI,CAAC,EAC5C,IAAI,EAAE,qBAAqB,GAC1B,OAAO,CAAC,IAAI,CAAC,CAoEf;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAC9B,IAAI,EAAE,SAAS,CAAC,qBAAqB,EAAE,IAAI,CAAC,EAC5C,EAAE,MAAM,EAAE,EAAE,qBAAqB,GAChC,sBAAsB,CAUxB;AAED;;GAEG;AACH,eAAO,MAAM,eAAe,QAAO,UAAU,qBAAqB,EAAE,IAAI,CACf,CAAC"}
|
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.removeAssetStat = exports.getAuthorization = exports.prepareRemoveAssetStat = void 0;
|
|
13
|
+
const internal_1 = require("../../internal");
|
|
14
|
+
const types_1 = require("../../types");
|
|
15
|
+
const conversion_1 = require("../../utils/conversion");
|
|
16
|
+
const internal_2 = require("../../utils/internal");
|
|
17
|
+
/**
|
|
18
|
+
* @hidden
|
|
19
|
+
*/
|
|
20
|
+
function prepareRemoveAssetStat(args) {
|
|
21
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
22
|
+
const { context: { polymeshApi: { tx: { statistics }, query: { statistics: statisticsQuery }, queryMulti, }, }, context, } = this;
|
|
23
|
+
const { ticker, type } = args;
|
|
24
|
+
const tickerKey = (0, conversion_1.stringToTickerKey)(ticker, context);
|
|
25
|
+
const [currentStats, { requirements }] = yield queryMulti([
|
|
26
|
+
[statisticsQuery.activeAssetStats, tickerKey],
|
|
27
|
+
[
|
|
28
|
+
statisticsQuery.assetTransferCompliances,
|
|
29
|
+
tickerKey,
|
|
30
|
+
],
|
|
31
|
+
]);
|
|
32
|
+
let claimIssuer;
|
|
33
|
+
let rawClaimIssuer;
|
|
34
|
+
if (type === types_1.StatType.ScopedCount || type === types_1.StatType.ScopedPercentage) {
|
|
35
|
+
claimIssuer = { issuer: args.issuer, claimType: args.claimType };
|
|
36
|
+
rawClaimIssuer = (0, conversion_1.claimIssuerToMeshClaimIssuer)(claimIssuer, context);
|
|
37
|
+
}
|
|
38
|
+
requirements.forEach(r => {
|
|
39
|
+
const used = (0, internal_2.compareTransferRestrictionToStat)(r, type, claimIssuer);
|
|
40
|
+
if (used) {
|
|
41
|
+
throw new internal_1.PolymeshError({
|
|
42
|
+
code: types_1.ErrorCode.UnmetPrerequisite,
|
|
43
|
+
message: 'The statistic cannot be removed because a Transfer Restriction is currently using it',
|
|
44
|
+
});
|
|
45
|
+
}
|
|
46
|
+
});
|
|
47
|
+
const op = (0, conversion_1.statTypeToStatOpType)(type, context);
|
|
48
|
+
const removeTarget = (0, conversion_1.statisticsOpTypeToStatType)({ op, claimIssuer: rawClaimIssuer }, context);
|
|
49
|
+
const statsArr = [...currentStats];
|
|
50
|
+
const removeIndex = statsArr.findIndex(s => removeTarget.eq(s));
|
|
51
|
+
if (removeIndex >= 0) {
|
|
52
|
+
statsArr.splice(removeIndex, 1);
|
|
53
|
+
}
|
|
54
|
+
else {
|
|
55
|
+
throw new internal_1.PolymeshError({
|
|
56
|
+
code: types_1.ErrorCode.UnmetPrerequisite,
|
|
57
|
+
message: 'Cannot remove a stat that is not enabled for this Asset',
|
|
58
|
+
});
|
|
59
|
+
}
|
|
60
|
+
const newStats = (0, conversion_1.statisticStatTypesToBtreeStatType)(statsArr, context);
|
|
61
|
+
this.addTransaction((0, internal_2.checkTxType)({
|
|
62
|
+
transaction: statistics.setActiveAssetStats,
|
|
63
|
+
args: [tickerKey, newStats],
|
|
64
|
+
}));
|
|
65
|
+
});
|
|
66
|
+
}
|
|
67
|
+
exports.prepareRemoveAssetStat = prepareRemoveAssetStat;
|
|
68
|
+
/**
|
|
69
|
+
* @hidden
|
|
70
|
+
*/
|
|
71
|
+
function getAuthorization({ ticker }) {
|
|
72
|
+
const transactions = [types_1.TxTags.statistics.SetActiveAssetStats];
|
|
73
|
+
const asset = new internal_1.Asset({ ticker }, this.context);
|
|
74
|
+
return {
|
|
75
|
+
permissions: {
|
|
76
|
+
transactions,
|
|
77
|
+
assets: [asset],
|
|
78
|
+
portfolios: [],
|
|
79
|
+
},
|
|
80
|
+
};
|
|
81
|
+
}
|
|
82
|
+
exports.getAuthorization = getAuthorization;
|
|
83
|
+
/**
|
|
84
|
+
* @hidden
|
|
85
|
+
*/
|
|
86
|
+
const removeAssetStat = () => new internal_1.Procedure(prepareRemoveAssetStat, getAuthorization);
|
|
87
|
+
exports.removeAssetStat = removeAssetStat;
|
|
88
|
+
//# sourceMappingURL=removeAssetStat.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"removeAssetStat.js","sourceRoot":"","sources":["../../../src/api/procedures/removeAssetStat.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"removeSecondaryAccounts.d.ts","sourceRoot":"","sources":["../../../src/api/procedures/removeSecondaryAccounts.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"removeSecondaryAccounts.d.ts","sourceRoot":"","sources":["../../../src/api/procedures/removeSecondaryAccounts.ts"],"names":[],"mappings":"AAGA,OAAO,EAAiB,SAAS,EAAE,uBAAmB;AACtD,OAAO,EAAa,6BAA6B,EAAU,oBAAgB;AAI3E;;GAEG;AACH,wBAAsB,8BAA8B,CAClD,IAAI,EAAE,SAAS,CAAC,6BAA6B,CAAC,EAC9C,IAAI,EAAE,6BAA6B,GAClC,OAAO,CAAC,IAAI,CAAC,CAiCf;AAED;;GAEG;AACH,eAAO,MAAM,uBAAuB,QAAO,UAAU,6BAA6B,CAO9E,CAAC"}
|
|
@@ -14,11 +14,11 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
14
14
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
15
|
exports.removeSecondaryAccounts = exports.prepareRemoveSecondaryAccounts = void 0;
|
|
16
16
|
const bignumber_js_1 = __importDefault(require("bignumber.js"));
|
|
17
|
-
const lodash_1 = require("lodash");
|
|
18
17
|
const utils_1 = require("./utils");
|
|
19
18
|
const internal_1 = require("../../internal");
|
|
20
19
|
const types_1 = require("../../types");
|
|
21
20
|
const conversion_1 = require("../../utils/conversion");
|
|
21
|
+
const internal_2 = require("../../utils/internal");
|
|
22
22
|
/**
|
|
23
23
|
* @hidden
|
|
24
24
|
*/
|
|
@@ -29,9 +29,9 @@ function prepareRemoveSecondaryAccounts(args) {
|
|
|
29
29
|
const identity = yield context.getSigningIdentity();
|
|
30
30
|
const [{ account: primaryAccount }, secondaryAccounts] = yield Promise.all([
|
|
31
31
|
identity.getPrimaryAccount(),
|
|
32
|
-
|
|
32
|
+
(0, internal_2.getSecondaryAccountPermissions)({ accounts, identity }, context),
|
|
33
33
|
]);
|
|
34
|
-
const isPrimaryAccountPresent =
|
|
34
|
+
const isPrimaryAccountPresent = accounts.find(account => account.isEqual(primaryAccount));
|
|
35
35
|
if (isPrimaryAccountPresent) {
|
|
36
36
|
throw new internal_1.PolymeshError({
|
|
37
37
|
code: types_1.ErrorCode.UnmetPrerequisite,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"removeSecondaryAccounts.js","sourceRoot":"","sources":["../../../src/api/procedures/removeSecondaryAccounts.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,gEAAqC;
|
|
1
|
+
{"version":3,"file":"removeSecondaryAccounts.js","sourceRoot":"","sources":["../../../src/api/procedures/removeSecondaryAccounts.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,gEAAqC;AAErC,mCAAiE;AACjE,6CAAsD;AACtD,uCAA2E;AAC3E,uDAAuD;AACvD,mDAAkE;AAElE;;GAEG;AACH,SAAsB,8BAA8B,CAElD,IAAmC;;QAEnC,MAAM,EACJ,OAAO,EAAE,EACP,WAAW,EAAE,EAAE,EAAE,EAAE,GACpB,EACD,OAAO,GACR,GAAG,IAAI,CAAC;QAET,MAAM,EAAE,QAAQ,EAAE,GAAG,IAAI,CAAC;QAE1B,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,kBAAkB,EAAE,CAAC;QAEpD,MAAM,CAAC,EAAE,OAAO,EAAE,cAAc,EAAE,EAAE,iBAAiB,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;YACzE,QAAQ,CAAC,iBAAiB,EAAE;YAC5B,IAAA,yCAA8B,EAAC,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,OAAO,CAAC;SAChE,CAAC,CAAC;QAEH,MAAM,uBAAuB,GAAG,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC,CAAC;QAE1F,IAAI,uBAAuB,EAAE;YAC3B,MAAM,IAAI,wBAAa,CAAC;gBACtB,IAAI,EAAE,iBAAS,CAAC,iBAAiB;gBACjC,OAAO,EAAE,uCAAuC;aACjD,CAAC,CAAC;SACJ;QAED,IAAA,+BAAuB,EAAC,QAAQ,EAAE,iBAAiB,CAAC,CAAC;QAErD,IAAI,CAAC,cAAc,CAAC;YAClB,WAAW,EAAE,EAAE,CAAC,QAAQ,CAAC,mBAAmB;YAC5C,aAAa,EAAE,IAAI,sBAAS,CAAC,QAAQ,CAAC,MAAM,CAAC;YAC7C,IAAI,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,IAAA,8BAAiB,EAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC;SAC3E,CAAC,CAAC;IACL,CAAC;CAAA;AApCD,wEAoCC;AAED;;GAEG;AACI,MAAM,uBAAuB,GAAG,GAA6C,EAAE,CACpF,IAAI,oBAAS,CAAC,8BAA8B,EAAE;IAC5C,WAAW,EAAE;QACX,YAAY,EAAE,CAAC,cAAM,CAAC,QAAQ,CAAC,mBAAmB,CAAC;QACnD,MAAM,EAAE,EAAE;QACV,UAAU,EAAE,EAAE;KACf;CACF,CAAC,CAAC;AAPQ,QAAA,uBAAuB,2BAO/B"}
|
|
@@ -1,21 +1,14 @@
|
|
|
1
|
-
import { PolymeshPrimitivesStatisticsStatType } from "../../polkadot/types-lookup.ts";
|
|
2
|
-
import { BTreeSet } from '@polkadot/types-codec';
|
|
3
1
|
import BigNumber from 'bignumber.js';
|
|
4
2
|
import { TransferCondition } from "../../polkadot/types";
|
|
3
|
+
import { SetTransferRestrictionsParams } from "../entities/Asset/TransferRestrictions/TransferRestrictionBase";
|
|
5
4
|
import { Procedure } from "../../internal";
|
|
6
|
-
import { SetCountTransferRestrictionsParams, SetPercentageTransferRestrictionsParams } from "../../types";
|
|
7
5
|
import { ProcedureAuthorization } from "../../types/internal";
|
|
8
|
-
export declare type SetTransferRestrictionsParams = {
|
|
9
|
-
ticker: string;
|
|
10
|
-
} & (SetCountTransferRestrictionsParams | SetPercentageTransferRestrictionsParams);
|
|
11
6
|
/**
|
|
12
7
|
* @hidden
|
|
13
8
|
*/
|
|
14
9
|
export interface Storage {
|
|
15
10
|
currentRestrictions: TransferCondition[];
|
|
16
11
|
occupiedSlots: BigNumber;
|
|
17
|
-
needStat: boolean;
|
|
18
|
-
currentStats: BTreeSet<PolymeshPrimitivesStatisticsStatType>;
|
|
19
12
|
}
|
|
20
13
|
/**
|
|
21
14
|
* @hidden
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"setTransferRestrictions.d.ts","sourceRoot":"","sources":["../../../src/api/procedures/setTransferRestrictions.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"setTransferRestrictions.d.ts","sourceRoot":"","sources":["../../../src/api/procedures/setTransferRestrictions.ts"],"names":[],"mappings":"AACA,OAAO,SAAS,MAAM,cAAc,CAAC;AACrC,OAAO,EAAE,iBAAiB,EAAE,6BAA6B;AAEzD,OAAO,EAAE,6BAA6B,EAAE,uEAA0E;AAClH,OAAO,EAA2C,SAAS,EAAE,uBAAmB;AAehF,OAAO,EAAE,sBAAsB,EAAoB,6BAAyB;AAmB5E;;GAEG;AACH,MAAM,WAAW,OAAO;IACtB,mBAAmB,EAAE,iBAAiB,EAAE,CAAC;IACzC,aAAa,EAAE,SAAS,CAAC;CAC1B;AA2DD;;GAEG;AACH,wBAAsB,8BAA8B,CAClD,IAAI,EAAE,SAAS,CAAC,6BAA6B,EAAE,SAAS,EAAE,OAAO,CAAC,EAClE,IAAI,EAAE,6BAA6B,GAClC,OAAO,CAAC,SAAS,CAAC,CAkEpB;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAC9B,IAAI,EAAE,SAAS,CAAC,6BAA6B,EAAE,SAAS,EAAE,OAAO,CAAC,EAClE,EAAE,MAAM,EAAE,YAAY,EAAE,EAAE,6BAA6B,GACtD,sBAAsB,CAexB;AAED;;GAEG;AACH,wBAAsB,cAAc,CAClC,IAAI,EAAE,SAAS,CAAC,6BAA6B,EAAE,SAAS,EAAE,OAAO,CAAC,EAClE,IAAI,EAAE,6BAA6B,GAClC,OAAO,CAAC,OAAO,CAAC,CA0FlB;AAED;;GAEG;AACH,eAAO,MAAM,uBAAuB,QAAO,UACzC,6BAA6B,EAC7B,SAAS,EACT,OAAO,CAC2E,CAAC"}
|