@polymeshassociation/polymesh-sdk 27.8.0-beta.2 → 28.0.0-beta.2
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 +8 -2
- package/api/entities/Asset/Fungible/TransferRestrictions/index.d.ts +47 -11
- package/api/entities/Asset/Fungible/TransferRestrictions/index.d.ts.map +1 -1
- package/api/entities/Asset/Fungible/TransferRestrictions/index.js +214 -21
- package/api/entities/Asset/Fungible/TransferRestrictions/index.js.map +1 -1
- package/api/entities/Asset/types.d.ts +86 -5
- package/api/entities/Asset/types.d.ts.map +1 -1
- package/api/entities/Asset/types.js.map +1 -1
- package/api/entities/DefaultTrustedClaimIssuer.d.ts +2 -2
- package/api/entities/DefaultTrustedClaimIssuer.d.ts.map +1 -1
- package/api/entities/DefaultTrustedClaimIssuer.js.map +1 -1
- package/api/entities/types.d.ts +11 -9
- package/api/entities/types.d.ts.map +1 -1
- package/api/entities/types.js +6 -1
- package/api/entities/types.js.map +1 -1
- package/api/procedures/setAssetStats.d.ts +22 -0
- package/api/procedures/setAssetStats.d.ts.map +1 -0
- package/api/procedures/setAssetStats.js +87 -0
- package/api/procedures/setAssetStats.js.map +1 -0
- package/api/procedures/setTransferRestrictionExemptions.d.ts +20 -0
- package/api/procedures/setTransferRestrictionExemptions.d.ts.map +1 -0
- package/api/procedures/setTransferRestrictionExemptions.js +102 -0
- package/api/procedures/setTransferRestrictionExemptions.js.map +1 -0
- package/api/procedures/setTransferRestrictions.d.ts +9 -34
- package/api/procedures/setTransferRestrictions.d.ts.map +1 -1
- package/api/procedures/setTransferRestrictions.js +61 -257
- package/api/procedures/setTransferRestrictions.js.map +1 -1
- package/api/procedures/types.d.ts +40 -48
- package/api/procedures/types.d.ts.map +1 -1
- package/api/procedures/types.js.map +1 -1
- package/internal.d.ts +3 -6
- package/internal.d.ts.map +1 -1
- package/internal.js +7 -11
- package/internal.js.map +1 -1
- package/npm-package/polymeshassociation-polymesh-sdk-28.0.0-beta.2.tgz +0 -0
- package/package.json +1 -1
- package/utils/conversion.d.ts +31 -22
- package/utils/conversion.d.ts.map +1 -1
- package/utils/conversion.js +181 -164
- package/utils/conversion.js.map +1 -1
- package/utils/internal.d.ts +1 -14
- package/utils/internal.d.ts.map +1 -1
- package/utils/internal.js +3 -110
- package/utils/internal.js.map +1 -1
- package/api/entities/Asset/Fungible/TransferRestrictions/ClaimCount.d.ts +0 -69
- package/api/entities/Asset/Fungible/TransferRestrictions/ClaimCount.d.ts.map +0 -1
- package/api/entities/Asset/Fungible/TransferRestrictions/ClaimCount.js +0 -16
- package/api/entities/Asset/Fungible/TransferRestrictions/ClaimCount.js.map +0 -1
- package/api/entities/Asset/Fungible/TransferRestrictions/ClaimPercentage.d.ts +0 -60
- package/api/entities/Asset/Fungible/TransferRestrictions/ClaimPercentage.d.ts.map +0 -1
- package/api/entities/Asset/Fungible/TransferRestrictions/ClaimPercentage.js +0 -16
- package/api/entities/Asset/Fungible/TransferRestrictions/ClaimPercentage.js.map +0 -1
- package/api/entities/Asset/Fungible/TransferRestrictions/Count.d.ts +0 -81
- package/api/entities/Asset/Fungible/TransferRestrictions/Count.d.ts.map +0 -1
- package/api/entities/Asset/Fungible/TransferRestrictions/Count.js +0 -20
- package/api/entities/Asset/Fungible/TransferRestrictions/Count.js.map +0 -1
- package/api/entities/Asset/Fungible/TransferRestrictions/Percentage.d.ts +0 -59
- package/api/entities/Asset/Fungible/TransferRestrictions/Percentage.d.ts.map +0 -1
- package/api/entities/Asset/Fungible/TransferRestrictions/Percentage.js +0 -16
- package/api/entities/Asset/Fungible/TransferRestrictions/Percentage.js.map +0 -1
- package/api/entities/Asset/Fungible/TransferRestrictions/TransferRestrictionBase.d.ts +0 -62
- package/api/entities/Asset/Fungible/TransferRestrictions/TransferRestrictionBase.d.ts.map +0 -1
- package/api/entities/Asset/Fungible/TransferRestrictions/TransferRestrictionBase.js +0 -189
- package/api/entities/Asset/Fungible/TransferRestrictions/TransferRestrictionBase.js.map +0 -1
- package/api/procedures/addAssetStat.d.ts +0 -16
- package/api/procedures/addAssetStat.d.ts.map +0 -1
- package/api/procedures/addAssetStat.js +0 -87
- package/api/procedures/addAssetStat.js.map +0 -1
- package/api/procedures/addTransferRestriction.d.ts +0 -23
- package/api/procedures/addTransferRestriction.d.ts.map +0 -1
- package/api/procedures/addTransferRestriction.js +0 -122
- package/api/procedures/addTransferRestriction.js.map +0 -1
- package/api/procedures/removeAssetStat.d.ts +0 -16
- package/api/procedures/removeAssetStat.d.ts.map +0 -1
- package/api/procedures/removeAssetStat.js +0 -85
- package/api/procedures/removeAssetStat.js.map +0 -1
- package/npm-package/polymeshassociation-polymesh-sdk-27.8.0-beta.2.tgz +0 -0
|
@@ -1,122 +0,0 @@
|
|
|
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
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
12
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
13
|
-
};
|
|
14
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
|
-
exports.addTransferRestriction = exports.getAuthorization = exports.prepareAddTransferRestriction = void 0;
|
|
16
|
-
const bignumber_js_1 = __importDefault(require("bignumber.js"));
|
|
17
|
-
const internal_1 = require("../../internal");
|
|
18
|
-
const types_1 = require("../../types");
|
|
19
|
-
const conversion_1 = require("../../utils/conversion");
|
|
20
|
-
const internal_2 = require("../../utils/internal");
|
|
21
|
-
/**
|
|
22
|
-
* @hidden
|
|
23
|
-
*/
|
|
24
|
-
function prepareAddTransferRestriction(args) {
|
|
25
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
26
|
-
const { context: { polymeshApi: { tx: { statistics }, query: { statistics: statisticsQuery }, consts, }, }, context, } = this;
|
|
27
|
-
const { asset, exemptedIdentities = [], type } = args;
|
|
28
|
-
const rawAssetId = (0, conversion_1.assetToMeshAssetId)(asset, context);
|
|
29
|
-
let claimIssuer;
|
|
30
|
-
if (type === types_1.TransferRestrictionType.ClaimCount ||
|
|
31
|
-
type === types_1.TransferRestrictionType.ClaimPercentage) {
|
|
32
|
-
const { claim: { type: cType }, issuer, } = args;
|
|
33
|
-
claimIssuer = { claimType: cType, issuer };
|
|
34
|
-
}
|
|
35
|
-
const [currentStats, { requirements: currentRestrictions }] = yield (0, internal_2.requestMulti)(context, [
|
|
36
|
-
[statisticsQuery.activeAssetStats, rawAssetId],
|
|
37
|
-
[statisticsQuery.assetTransferCompliances, rawAssetId],
|
|
38
|
-
]);
|
|
39
|
-
if (!args.skipStatIsEnabledCheck) {
|
|
40
|
-
const neededStat = (0, internal_2.neededStatTypeForRestrictionInput)({ type, claimIssuer }, context);
|
|
41
|
-
(0, internal_2.assertStatIsSet)(currentStats, neededStat);
|
|
42
|
-
}
|
|
43
|
-
const maxConditions = (0, conversion_1.u32ToBigNumber)(consts.statistics.maxTransferConditionsPerAsset);
|
|
44
|
-
const restrictionAmount = new bignumber_js_1.default(currentRestrictions.size);
|
|
45
|
-
if (restrictionAmount.gte(maxConditions)) {
|
|
46
|
-
throw new internal_1.PolymeshError({
|
|
47
|
-
code: types_1.ErrorCode.LimitExceeded,
|
|
48
|
-
message: 'Transfer Restriction limit reached',
|
|
49
|
-
data: { limit: maxConditions },
|
|
50
|
-
});
|
|
51
|
-
}
|
|
52
|
-
let restriction;
|
|
53
|
-
let claimType;
|
|
54
|
-
if (type === types_1.TransferRestrictionType.Count) {
|
|
55
|
-
const value = args.count;
|
|
56
|
-
restriction = { type, value };
|
|
57
|
-
}
|
|
58
|
-
else if (type === types_1.TransferRestrictionType.Percentage) {
|
|
59
|
-
const value = args.percentage;
|
|
60
|
-
restriction = { type, value };
|
|
61
|
-
}
|
|
62
|
-
else if (type === types_1.TransferRestrictionType.ClaimCount) {
|
|
63
|
-
const { min, max: maybeMax, issuer, claim } = args;
|
|
64
|
-
restriction = { type, value: { min, max: maybeMax, issuer, claim } };
|
|
65
|
-
claimType = claim.type;
|
|
66
|
-
}
|
|
67
|
-
else {
|
|
68
|
-
const { min, max, issuer, claim } = args;
|
|
69
|
-
restriction = { type, value: { min, max, issuer, claim } };
|
|
70
|
-
claimType = claim.type;
|
|
71
|
-
}
|
|
72
|
-
const rawTransferCondition = (0, conversion_1.transferRestrictionToPolymeshTransferCondition)(restriction, context);
|
|
73
|
-
const hasRestriction = !![...currentRestrictions].find(r => r.eq(rawTransferCondition));
|
|
74
|
-
if (hasRestriction) {
|
|
75
|
-
throw new internal_1.PolymeshError({
|
|
76
|
-
code: types_1.ErrorCode.NoDataChange,
|
|
77
|
-
message: 'Cannot add the same restriction more than once',
|
|
78
|
-
});
|
|
79
|
-
}
|
|
80
|
-
const conditions = (0, conversion_1.complianceConditionsToBtreeSet)([...currentRestrictions, rawTransferCondition], context);
|
|
81
|
-
const transactions = [];
|
|
82
|
-
transactions.push((0, internal_2.checkTxType)({
|
|
83
|
-
transaction: statistics.setAssetTransferCompliance,
|
|
84
|
-
args: [rawAssetId, conditions],
|
|
85
|
-
}));
|
|
86
|
-
if (exemptedIdentities.length) {
|
|
87
|
-
const op = (0, conversion_1.transferRestrictionTypeToStatOpType)(type, context);
|
|
88
|
-
const exemptedIdBtreeSet = yield (0, internal_2.getExemptedBtreeSet)(exemptedIdentities, context);
|
|
89
|
-
const exemptKey = (0, conversion_1.toExemptKey)(rawAssetId, op, claimType);
|
|
90
|
-
transactions.push((0, internal_2.checkTxType)({
|
|
91
|
-
transaction: statistics.setEntitiesExempt,
|
|
92
|
-
feeMultiplier: new bignumber_js_1.default(exemptedIdBtreeSet.size),
|
|
93
|
-
args: [true, exemptKey, exemptedIdBtreeSet],
|
|
94
|
-
}));
|
|
95
|
-
}
|
|
96
|
-
return { transactions, resolver: restrictionAmount.plus(1) };
|
|
97
|
-
});
|
|
98
|
-
}
|
|
99
|
-
exports.prepareAddTransferRestriction = prepareAddTransferRestriction;
|
|
100
|
-
/**
|
|
101
|
-
* @hidden
|
|
102
|
-
*/
|
|
103
|
-
function getAuthorization({ asset, exemptedIdentities = [] }) {
|
|
104
|
-
const transactions = [types_1.TxTags.statistics.SetAssetTransferCompliance];
|
|
105
|
-
if (exemptedIdentities.length) {
|
|
106
|
-
transactions.push(types_1.TxTags.statistics.SetEntitiesExempt);
|
|
107
|
-
}
|
|
108
|
-
return {
|
|
109
|
-
permissions: {
|
|
110
|
-
assets: [asset],
|
|
111
|
-
transactions,
|
|
112
|
-
portfolios: [],
|
|
113
|
-
},
|
|
114
|
-
};
|
|
115
|
-
}
|
|
116
|
-
exports.getAuthorization = getAuthorization;
|
|
117
|
-
/**
|
|
118
|
-
* @hidden
|
|
119
|
-
*/
|
|
120
|
-
const addTransferRestriction = () => new internal_1.Procedure(prepareAddTransferRestriction, getAuthorization);
|
|
121
|
-
exports.addTransferRestriction = addTransferRestriction;
|
|
122
|
-
//# sourceMappingURL=addTransferRestriction.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"addTransferRestriction.js","sourceRoot":"","sources":["../../../src/api/procedures/addTransferRestriction.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
import { Procedure } from "../../internal";
|
|
2
|
-
import { RemoveAssetStatParams } from "../../types";
|
|
3
|
-
import { ExtrinsicParams, ProcedureAuthorization, TransactionSpec } from "../../types/internal";
|
|
4
|
-
/**
|
|
5
|
-
* @hidden
|
|
6
|
-
*/
|
|
7
|
-
export declare function prepareRemoveAssetStat(this: Procedure<RemoveAssetStatParams, void>, args: RemoveAssetStatParams): Promise<TransactionSpec<void, ExtrinsicParams<'statistics', 'setActiveAssetStats'>>>;
|
|
8
|
-
/**
|
|
9
|
-
* @hidden
|
|
10
|
-
*/
|
|
11
|
-
export declare function getAuthorization(this: Procedure<RemoveAssetStatParams, void>, { asset }: RemoveAssetStatParams): ProcedureAuthorization;
|
|
12
|
-
/**
|
|
13
|
-
* @hidden
|
|
14
|
-
*/
|
|
15
|
-
export declare const removeAssetStat: () => Procedure<RemoveAssetStatParams, void>;
|
|
16
|
-
//# sourceMappingURL=removeAssetStat.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"removeAssetStat.d.ts","sourceRoot":"","sources":["../../../src/api/procedures/removeAssetStat.ts"],"names":[],"mappings":"AAKA,OAAO,EAAiB,SAAS,EAAE,uBAAmB;AACtD,OAAO,EAAa,qBAAqB,EAAqC,oBAAgB;AAC9F,OAAO,EAAE,eAAe,EAAE,sBAAsB,EAAE,eAAe,EAAE,6BAAyB;AAU5F;;GAEG;AACH,wBAAsB,sBAAsB,CAC1C,IAAI,EAAE,SAAS,CAAC,qBAAqB,EAAE,IAAI,CAAC,EAC5C,IAAI,EAAE,qBAAqB,GAC1B,OAAO,CAAC,eAAe,CAAC,IAAI,EAAE,eAAe,CAAC,YAAY,EAAE,qBAAqB,CAAC,CAAC,CAAC,CAgEtF;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAC9B,IAAI,EAAE,SAAS,CAAC,qBAAqB,EAAE,IAAI,CAAC,EAC5C,EAAE,KAAK,EAAE,EAAE,qBAAqB,GAC/B,sBAAsB,CASxB;AAED;;GAEG;AACH,eAAO,MAAM,eAAe,QAAO,UAAU,qBAAqB,EAAE,IAAI,CACf,CAAC"}
|
|
@@ -1,85 +0,0 @@
|
|
|
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 }, }, }, context, } = this;
|
|
23
|
-
const { asset, type } = args;
|
|
24
|
-
const rawAssetId = (0, conversion_1.assetToMeshAssetId)(asset, context);
|
|
25
|
-
const [currentStats, { requirements }] = yield (0, internal_2.requestMulti)(context, [
|
|
26
|
-
[statisticsQuery.activeAssetStats, rawAssetId],
|
|
27
|
-
[statisticsQuery.assetTransferCompliances, rawAssetId],
|
|
28
|
-
]);
|
|
29
|
-
let claimIssuer;
|
|
30
|
-
let rawClaimIssuer;
|
|
31
|
-
if (type === types_1.StatType.ScopedCount || type === types_1.StatType.ScopedBalance) {
|
|
32
|
-
claimIssuer = { issuer: args.issuer, claimType: args.claimType };
|
|
33
|
-
rawClaimIssuer = (0, conversion_1.claimIssuerToMeshClaimIssuer)(claimIssuer, context);
|
|
34
|
-
}
|
|
35
|
-
requirements.forEach(r => {
|
|
36
|
-
const used = (0, internal_2.compareTransferRestrictionToStat)(r, type, claimIssuer);
|
|
37
|
-
if (used) {
|
|
38
|
-
throw new internal_1.PolymeshError({
|
|
39
|
-
code: types_1.ErrorCode.UnmetPrerequisite,
|
|
40
|
-
message: 'The statistic cannot be removed because a Transfer Restriction is currently using it',
|
|
41
|
-
});
|
|
42
|
-
}
|
|
43
|
-
});
|
|
44
|
-
const op = (0, conversion_1.statTypeToStatOpType)(type, context);
|
|
45
|
-
const removeTarget = (0, conversion_1.statisticsOpTypeToStatType)({ operationType: op, claimIssuer: rawClaimIssuer }, context);
|
|
46
|
-
const statsArr = [...currentStats];
|
|
47
|
-
const removeIndex = statsArr.findIndex(s => removeTarget.eq(s));
|
|
48
|
-
if (removeIndex >= 0) {
|
|
49
|
-
statsArr.splice(removeIndex, 1);
|
|
50
|
-
}
|
|
51
|
-
else {
|
|
52
|
-
throw new internal_1.PolymeshError({
|
|
53
|
-
code: types_1.ErrorCode.UnmetPrerequisite,
|
|
54
|
-
message: 'Cannot remove a stat that is not enabled for this Asset',
|
|
55
|
-
});
|
|
56
|
-
}
|
|
57
|
-
const newStats = (0, conversion_1.statisticStatTypesToBtreeStatType)(statsArr, context);
|
|
58
|
-
return {
|
|
59
|
-
transaction: statistics.setActiveAssetStats,
|
|
60
|
-
args: [rawAssetId, newStats],
|
|
61
|
-
resolver: undefined,
|
|
62
|
-
};
|
|
63
|
-
});
|
|
64
|
-
}
|
|
65
|
-
exports.prepareRemoveAssetStat = prepareRemoveAssetStat;
|
|
66
|
-
/**
|
|
67
|
-
* @hidden
|
|
68
|
-
*/
|
|
69
|
-
function getAuthorization({ asset }) {
|
|
70
|
-
const transactions = [types_1.TxTags.statistics.SetActiveAssetStats];
|
|
71
|
-
return {
|
|
72
|
-
permissions: {
|
|
73
|
-
transactions,
|
|
74
|
-
assets: [asset],
|
|
75
|
-
portfolios: [],
|
|
76
|
-
},
|
|
77
|
-
};
|
|
78
|
-
}
|
|
79
|
-
exports.getAuthorization = getAuthorization;
|
|
80
|
-
/**
|
|
81
|
-
* @hidden
|
|
82
|
-
*/
|
|
83
|
-
const removeAssetStat = () => new internal_1.Procedure(prepareRemoveAssetStat, getAuthorization);
|
|
84
|
-
exports.removeAssetStat = removeAssetStat;
|
|
85
|
-
//# sourceMappingURL=removeAssetStat.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"removeAssetStat.js","sourceRoot":"","sources":["../../../src/api/procedures/removeAssetStat.ts"],"names":[],"mappings":"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"}
|
|
Binary file
|