@polymeshassociation/polymesh-sdk 29.0.0-next.4 โ 29.0.0-next.5
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/.yarn/install-state.gz +0 -0
- package/CHANGELOG.md +12 -3
- package/api/entities/Offering/index.d.ts +33 -2
- package/api/entities/Offering/index.d.ts.map +1 -1
- package/api/entities/Offering/index.js +66 -0
- package/api/entities/Offering/index.js.map +1 -1
- package/api/entities/Offering/types.d.ts +26 -1
- package/api/entities/Offering/types.d.ts.map +1 -1
- package/api/entities/Offering/types.js.map +1 -1
- package/api/procedures/enableOffChainFundingForOfferings.d.ts +21 -0
- package/api/procedures/enableOffChainFundingForOfferings.d.ts.map +1 -0
- package/api/procedures/enableOffChainFundingForOfferings.js +74 -0
- package/api/procedures/enableOffChainFundingForOfferings.js.map +1 -0
- package/api/procedures/investInOffering.d.ts +8 -4
- package/api/procedures/investInOffering.d.ts.map +1 -1
- package/api/procedures/investInOffering.js +56 -21
- package/api/procedures/investInOffering.js.map +1 -1
- package/api/procedures/types.d.ts +25 -7
- package/api/procedures/types.d.ts.map +1 -1
- package/api/procedures/types.js.map +1 -1
- package/internal.d.ts +1 -0
- package/internal.d.ts.map +1 -1
- package/internal.js +3 -1
- package/internal.js.map +1 -1
- package/npm-package/{polymeshassociation-polymesh-sdk-29.0.0-next.4.tgz โ polymeshassociation-polymesh-sdk-29.0.0-next.5.tgz} +0 -0
- package/package.json +1 -1
- package/utils/conversion.d.ts +5 -1
- package/utils/conversion.d.ts.map +1 -1
- package/utils/conversion.js +14 -0
- package/utils/conversion.js.map +1 -1
package/.yarn/install-state.gz
CHANGED
|
Binary file
|
package/CHANGELOG.md
CHANGED
|
@@ -1,6 +1,15 @@
|
|
|
1
|
-
# [29.0.0-next.
|
|
1
|
+
# [29.0.0-next.5](https://github.com/PolymeshAssociation/polymesh-sdk/compare/v29.0.0-next.4...v29.0.0-next.5) (2025-08-27)
|
|
2
2
|
|
|
3
3
|
|
|
4
|
-
###
|
|
4
|
+
### Features
|
|
5
5
|
|
|
6
|
-
*
|
|
6
|
+
* ๐ธ Add method to enable off chain funding for an offering ([a7456d5](https://github.com/PolymeshAssociation/polymesh-sdk/commit/a7456d52eb94eb1d2138bc39a31d14599bb023db))
|
|
7
|
+
* ๐ธ Add support for offchain funding method for sto.invest ([c6a961b](https://github.com/PolymeshAssociation/polymesh-sdk/commit/c6a961bc413c2637719c3fcefb588327fefbbcdd))
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
### BREAKING CHANGES
|
|
11
|
+
|
|
12
|
+
* ๐งจ `InvestInOfferingParams` has been changed to
|
|
13
|
+
accept `fundingPortfolio` optionally when off chain investment is being done.
|
|
14
|
+
New `offChainFundingReceipt` and `offChainTicker` are required when
|
|
15
|
+
specifying off chain investment
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import BigNumber from 'bignumber.js';
|
|
2
2
|
import { Investment, OfferingDetails } from '../../../api/entities/Offering/types';
|
|
3
|
-
import { Context, Entity, FungibleAsset } from '../../../internal';
|
|
4
|
-
import { InvestInOfferingParams, ModifyOfferingTimesParams, NoArgsProcedureMethod, ProcedureMethod, ResultSet, SubCallback, UnsubCallback } from '../../../types';
|
|
3
|
+
import { Context, Entity, FungibleAsset, Identity } from '../../../internal';
|
|
4
|
+
import { Account, EnableOffChainFundingParams, InvestInOfferingParams, ModifyOfferingTimesParams, NoArgsProcedureMethod, OffChainFundingDetails, OffChainFundingReceipt, ProcedureMethod, ResultSet, SignerKeyRingType, SubCallback, UnsubCallback } from '../../../types';
|
|
5
5
|
export interface UniqueIdentifiers {
|
|
6
6
|
id: BigNumber;
|
|
7
7
|
assetId: string;
|
|
@@ -50,6 +50,15 @@ export declare class Offering extends Entity<UniqueIdentifiers, HumanReadable> {
|
|
|
50
50
|
* Unfreeze the Offering
|
|
51
51
|
*/
|
|
52
52
|
unfreeze: NoArgsProcedureMethod<Offering>;
|
|
53
|
+
/**
|
|
54
|
+
* Enable off-chain funding for the Offering
|
|
55
|
+
*
|
|
56
|
+
* @throws if:
|
|
57
|
+
* - Trying to enable off-chain funding on an Offering that does not exist
|
|
58
|
+
* - Trying to enable off-chain funding on an Offering that has already ended
|
|
59
|
+
* - Trying to enable off-chain funding on an Offering that is already closed
|
|
60
|
+
*/
|
|
61
|
+
enableOffChainFunding: ProcedureMethod<EnableOffChainFundingParams, void>;
|
|
53
62
|
/**
|
|
54
63
|
* Modify the start/end time of the Offering
|
|
55
64
|
*
|
|
@@ -80,6 +89,10 @@ export declare class Offering extends Entity<UniqueIdentifiers, HumanReadable> {
|
|
|
80
89
|
size?: BigNumber;
|
|
81
90
|
start?: BigNumber;
|
|
82
91
|
}): Promise<ResultSet<Investment>>;
|
|
92
|
+
/**
|
|
93
|
+
* Retrieve off chain funding details
|
|
94
|
+
*/
|
|
95
|
+
offChainFundingDetails(): Promise<OffChainFundingDetails>;
|
|
83
96
|
/**
|
|
84
97
|
* Determine whether this Offering exists on chain
|
|
85
98
|
*/
|
|
@@ -88,5 +101,23 @@ export declare class Offering extends Entity<UniqueIdentifiers, HumanReadable> {
|
|
|
88
101
|
* Return the Offering's ID and Asset ticker
|
|
89
102
|
*/
|
|
90
103
|
toHuman(): HumanReadable;
|
|
104
|
+
/**
|
|
105
|
+
* Generate an offchain affirmation receipt for a specific leg and UID
|
|
106
|
+
*
|
|
107
|
+
* @param args.legId index of the offchain leg in this instruction
|
|
108
|
+
* @param args.uid UID of the receipt
|
|
109
|
+
* @param args.metadata (optional) metadata to be associated with the receipt
|
|
110
|
+
* @param args.signer (optional) Signer to be used to generate receipt signature. Defaults to signing Account associated with the SDK
|
|
111
|
+
* @param args.signerKeyRingType (optional) keyring type of the signer. Defaults to 'Sr25519'
|
|
112
|
+
*/
|
|
113
|
+
generateOffChainFundingReceipt(args: {
|
|
114
|
+
uid: BigNumber;
|
|
115
|
+
offChainTicker: string;
|
|
116
|
+
amount: BigNumber;
|
|
117
|
+
sender: Identity | string;
|
|
118
|
+
metadata?: string;
|
|
119
|
+
signer?: string | Account;
|
|
120
|
+
signerKeyRingType?: SignerKeyRingType;
|
|
121
|
+
}): Promise<OffChainFundingReceipt>;
|
|
91
122
|
}
|
|
92
123
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/api/entities/Offering/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/api/entities/Offering/index.ts"],"names":[],"mappings":"AAGA,OAAO,SAAS,MAAM,cAAc,CAAC;AAErC,OAAO,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AAC5E,OAAO,EAEL,OAAO,EAEP,MAAM,EACN,aAAa,EACb,QAAQ,EAIT,MAAM,YAAY,CAAC;AAGpB,OAAO,EACL,OAAO,EACP,2BAA2B,EAC3B,sBAAsB,EACtB,yBAAyB,EACzB,qBAAqB,EACrB,sBAAsB,EACtB,sBAAsB,EACtB,eAAe,EACf,SAAS,EACT,iBAAiB,EACjB,WAAW,EACX,aAAa,EACd,MAAM,SAAS,CAAC;AAmBjB,MAAM,WAAW,iBAAiB;IAChC,EAAE,EAAE,SAAS,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,aAAa;IAC5B,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,MAAM,CAAC;CACjB;AAED;;GAEG;AACH,qBAAa,QAAS,SAAQ,MAAM,CAAC,iBAAiB,EAAE,aAAa,CAAC;IACpE;;;OAGG;WACoB,mBAAmB,CAAC,UAAU,EAAE,OAAO,GAAG,UAAU,IAAI,iBAAiB;IAMhG;;OAEG;IACI,EAAE,EAAE,SAAS,CAAC;IAErB;;OAEG;IACI,KAAK,EAAE,aAAa,CAAC;IAE5B;;OAEG;gBACgB,WAAW,EAAE,iBAAiB,EAAE,OAAO,EAAE,OAAO;IA6CnE;;;;OAIG;IACI,OAAO,IAAI,OAAO,CAAC,eAAe,CAAC;IACnC,OAAO,CAAC,QAAQ,EAAE,WAAW,CAAC,eAAe,CAAC,GAAG,OAAO,CAAC,aAAa,CAAC;IA+C9E;;OAEG;IACI,KAAK,EAAE,qBAAqB,CAAC,IAAI,CAAC,CAAC;IAE1C;;OAEG;IACI,MAAM,EAAE,qBAAqB,CAAC,QAAQ,CAAC,CAAC;IAE/C;;OAEG;IACI,QAAQ,EAAE,qBAAqB,CAAC,QAAQ,CAAC,CAAC;IAEjD;;;;;;;OAOG;IACI,qBAAqB,EAAE,eAAe,CAAC,2BAA2B,EAAE,IAAI,CAAC,CAAC;IAEjF;;;;;;;OAOG;IACI,WAAW,EAAE,eAAe,CAAC,yBAAyB,EAAE,IAAI,CAAC,CAAC;IAErE;;;;;;OAMG;IACI,MAAM,EAAE,eAAe,CAAC,sBAAsB,EAAE,IAAI,CAAC,CAAC;IAE7D;;;;;;;;OAQG;IACU,cAAc,CACzB,IAAI,GAAE;QACJ,IAAI,CAAC,EAAE,SAAS,CAAC;QACjB,KAAK,CAAC,EAAE,SAAS,CAAC;KACd,GACL,OAAO,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;IA4CjC;;OAEG;IACU,sBAAsB,IAAI,OAAO,CAAC,sBAAsB,CAAC;IAwBtE;;OAEG;IACU,MAAM,IAAI,OAAO,CAAC,OAAO,CAAC;IAavC;;OAEG;IACI,OAAO,IAAI,aAAa;IAS/B;;;;;;;;OAQG;IACU,8BAA8B,CAAC,IAAI,EAAE;QAChD,GAAG,EAAE,SAAS,CAAC;QACf,cAAc,EAAE,MAAM,CAAC;QACvB,MAAM,EAAE,SAAS,CAAC;QAClB,MAAM,EAAE,QAAQ,GAAG,MAAM,CAAC;QAC1B,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;QAC1B,iBAAiB,CAAC,EAAE,iBAAiB,CAAC;KACvC,GAAG,OAAO,CAAC,sBAAsB,CAAC;CAqDpC"}
|
|
@@ -13,9 +13,11 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
13
13
|
};
|
|
14
14
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
15
|
exports.Offering = void 0;
|
|
16
|
+
const util_1 = require("@polkadot/util");
|
|
16
17
|
const bignumber_js_1 = __importDefault(require("bignumber.js"));
|
|
17
18
|
const internal_1 = require("../../../internal");
|
|
18
19
|
const stos_1 = require("../../../middleware/queries/stos");
|
|
20
|
+
const types_1 = require("../../../types");
|
|
19
21
|
const conversion_1 = require("../../../utils/conversion");
|
|
20
22
|
const internal_2 = require("../../../utils/internal");
|
|
21
23
|
/**
|
|
@@ -49,6 +51,12 @@ class Offering extends internal_1.Entity {
|
|
|
49
51
|
this.close = (0, internal_2.createProcedureMethod)({ getProcedureAndArgs: () => [internal_1.closeOffering, { asset: this.asset, id }], voidArgs: true }, context);
|
|
50
52
|
this.modifyTimes = (0, internal_2.createProcedureMethod)({ getProcedureAndArgs: args => [internal_1.modifyOfferingTimes, Object.assign({ asset: this.asset, id }, args)] }, context);
|
|
51
53
|
this.invest = (0, internal_2.createProcedureMethod)({ getProcedureAndArgs: args => [internal_1.investInOffering, Object.assign({ asset: this.asset, id }, args)] }, context);
|
|
54
|
+
this.enableOffChainFunding = (0, internal_2.createProcedureMethod)({
|
|
55
|
+
getProcedureAndArgs: args => [
|
|
56
|
+
internal_1.enableOffChainFundingForOfferings,
|
|
57
|
+
Object.assign({ asset: this.asset, id }, args),
|
|
58
|
+
],
|
|
59
|
+
}, context);
|
|
52
60
|
}
|
|
53
61
|
// eslint-disable-next-line require-jsdoc
|
|
54
62
|
details(callback) {
|
|
@@ -107,6 +115,21 @@ class Offering extends internal_1.Entity {
|
|
|
107
115
|
};
|
|
108
116
|
});
|
|
109
117
|
}
|
|
118
|
+
/**
|
|
119
|
+
* Retrieve off chain funding details
|
|
120
|
+
*/
|
|
121
|
+
offChainFundingDetails() {
|
|
122
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
123
|
+
const { asset, id, context, context: { polymeshApi: { query: { sto }, }, }, } = this;
|
|
124
|
+
const rawAssetId = (0, conversion_1.assetToMeshAssetId)(asset, context);
|
|
125
|
+
const rawU64 = (0, conversion_1.bigNumberToU64)(id, context);
|
|
126
|
+
const rawOffChainTicker = yield sto.fundraiserOffchainAsset(rawAssetId, rawU64);
|
|
127
|
+
if (rawOffChainTicker.isNone) {
|
|
128
|
+
return { enabled: false };
|
|
129
|
+
}
|
|
130
|
+
return { enabled: true, offChainTicker: (0, conversion_1.tickerToString)(rawOffChainTicker.unwrap()) };
|
|
131
|
+
});
|
|
132
|
+
}
|
|
110
133
|
/**
|
|
111
134
|
* Determine whether this Offering exists on chain
|
|
112
135
|
*/
|
|
@@ -128,6 +151,49 @@ class Offering extends internal_1.Entity {
|
|
|
128
151
|
id,
|
|
129
152
|
});
|
|
130
153
|
}
|
|
154
|
+
/**
|
|
155
|
+
* Generate an offchain affirmation receipt for a specific leg and UID
|
|
156
|
+
*
|
|
157
|
+
* @param args.legId index of the offchain leg in this instruction
|
|
158
|
+
* @param args.uid UID of the receipt
|
|
159
|
+
* @param args.metadata (optional) metadata to be associated with the receipt
|
|
160
|
+
* @param args.signer (optional) Signer to be used to generate receipt signature. Defaults to signing Account associated with the SDK
|
|
161
|
+
* @param args.signerKeyRingType (optional) keyring type of the signer. Defaults to 'Sr25519'
|
|
162
|
+
*/
|
|
163
|
+
generateOffChainFundingReceipt(args) {
|
|
164
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
165
|
+
const { id, context } = this;
|
|
166
|
+
const { uid, metadata, signer, signerKeyRingType = types_1.SignerKeyRingType.Sr25519, sender, offChainTicker, amount, } = args;
|
|
167
|
+
const rawFundraiserId = (0, conversion_1.bigNumberToU64)(id, context);
|
|
168
|
+
const rawUid = (0, conversion_1.bigNumberToU64)(uid, context);
|
|
169
|
+
const rawSender = (0, conversion_1.stringToIdentityId)((0, internal_2.asDid)(sender), context);
|
|
170
|
+
const rawOffChainTicker = (0, conversion_1.stringToTicker)(offChainTicker, context);
|
|
171
|
+
const rawAmount = (0, conversion_1.bigNumberToU128)(amount.shiftedBy(6), context);
|
|
172
|
+
const { raisingPortfolio: { owner: { did: raisingPortfolioDid }, }, } = yield this.details();
|
|
173
|
+
const rawReceiver = (0, conversion_1.stringToIdentityId)(raisingPortfolioDid, context);
|
|
174
|
+
const payloadStrings = [
|
|
175
|
+
(0, util_1.stringToHex)('<Bytes>'),
|
|
176
|
+
rawUid.toHex(true),
|
|
177
|
+
rawFundraiserId.toHex(true),
|
|
178
|
+
rawSender.toHex(),
|
|
179
|
+
rawReceiver.toHex(),
|
|
180
|
+
rawOffChainTicker.toHex(),
|
|
181
|
+
rawAmount.toHex(true),
|
|
182
|
+
(0, util_1.stringToHex)('</Bytes>'),
|
|
183
|
+
];
|
|
184
|
+
const rawPayload = (0, util_1.hexAddPrefix)(payloadStrings.map(e => (0, util_1.hexStripPrefix)(e)).join(''));
|
|
185
|
+
const signatureValue = yield context.getSignature({ rawPayload, signer });
|
|
186
|
+
return {
|
|
187
|
+
uid,
|
|
188
|
+
signer: signer || context.getSigningAccount(),
|
|
189
|
+
signature: {
|
|
190
|
+
type: signerKeyRingType,
|
|
191
|
+
value: signatureValue,
|
|
192
|
+
},
|
|
193
|
+
metadata,
|
|
194
|
+
};
|
|
195
|
+
});
|
|
196
|
+
}
|
|
131
197
|
}
|
|
132
198
|
exports.Offering = Offering;
|
|
133
199
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/api/entities/Offering/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAEA,gEAAqC;AAGrC,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/api/entities/Offering/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import BigNumber from 'bignumber.js';
|
|
2
|
-
import { DefaultPortfolio, Identity, NumberedPortfolio, Venue } from '../../../internal';
|
|
2
|
+
import { Account, DefaultPortfolio, Identity, NumberedPortfolio, Venue } from '../../../internal';
|
|
3
|
+
import { OffChainSignature } from '../../../types';
|
|
3
4
|
export declare enum OfferingTimingStatus {
|
|
4
5
|
/**
|
|
5
6
|
* Start date not reached yet
|
|
@@ -80,4 +81,28 @@ export interface Investment {
|
|
|
80
81
|
soldAmount: BigNumber;
|
|
81
82
|
investedAmount: BigNumber;
|
|
82
83
|
}
|
|
84
|
+
export type OffChainFundingDetails = {
|
|
85
|
+
enabled: false;
|
|
86
|
+
} | {
|
|
87
|
+
enabled: true;
|
|
88
|
+
offChainTicker: string;
|
|
89
|
+
};
|
|
90
|
+
export interface OffChainFundingReceipt {
|
|
91
|
+
/**
|
|
92
|
+
* Unique receipt number set by the signer for their receipts
|
|
93
|
+
*/
|
|
94
|
+
uid: BigNumber;
|
|
95
|
+
/**
|
|
96
|
+
* Signer of this receipt
|
|
97
|
+
*/
|
|
98
|
+
signer: string | Account;
|
|
99
|
+
/**
|
|
100
|
+
* Signature confirming the receipt details
|
|
101
|
+
*/
|
|
102
|
+
signature: OffChainSignature;
|
|
103
|
+
/**
|
|
104
|
+
* (optional) Metadata value that can be used to attach messages to the receipt
|
|
105
|
+
*/
|
|
106
|
+
metadata: string | undefined;
|
|
107
|
+
}
|
|
83
108
|
//# sourceMappingURL=types.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/api/entities/Offering/types.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,cAAc,CAAC;AAErC,OAAO,EAAE,gBAAgB,EAAE,QAAQ,EAAE,iBAAiB,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/api/entities/Offering/types.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,cAAc,CAAC;AAErC,OAAO,EAAE,OAAO,EAAE,gBAAgB,EAAE,QAAQ,EAAE,iBAAiB,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AAC3F,OAAO,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC;AAE5C,oBAAY,oBAAoB;IAC9B;;OAEG;IACH,UAAU,eAAe;IACzB;;OAEG;IACH,OAAO,YAAY;IACnB;;OAEG;IACH,OAAO,YAAY;CACpB;AAED,oBAAY,qBAAqB;IAC/B;;OAEG;IACH,SAAS,cAAc;IACvB;;OAEG;IACH,OAAO,YAAY;IACnB;;;;OAIG;IACH,QAAQ,aAAa;CACtB;AAED,oBAAY,kBAAkB;IAC5B;;OAEG;IACH,MAAM,WAAW;IACjB;;OAEG;IACH,IAAI,SAAS;IACb;;OAEG;IACH,WAAW,gBAAgB;IAC3B;;OAEG;IACH,MAAM,WAAW;CAClB;AAED,MAAM,WAAW,cAAc;IAC7B,MAAM,EAAE,oBAAoB,CAAC;IAC7B,OAAO,EAAE,qBAAqB,CAAC;IAC/B,IAAI,EAAE,kBAAkB,CAAC;CAC1B;AAED,MAAM,WAAW,YAAY;IAC3B,MAAM,EAAE,SAAS,CAAC;IAClB,KAAK,EAAE,SAAS,CAAC;CAClB;AAED,MAAM,WAAW,IAAK,SAAQ,YAAY;IACxC,SAAS,EAAE,SAAS,CAAC;CACtB;AAED,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,QAAQ,CAAC;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,iBAAiB,EAAE,iBAAiB,GAAG,gBAAgB,CAAC;IACxD,gBAAgB,EAAE,iBAAiB,GAAG,gBAAgB,CAAC;IACvD,eAAe,EAAE,MAAM,CAAC;IACxB,KAAK,EAAE,IAAI,EAAE,CAAC;IACd,KAAK,EAAE,KAAK,CAAC;IACb,KAAK,EAAE,IAAI,CAAC;IACZ,GAAG,EAAE,IAAI,GAAG,IAAI,CAAC;IACjB,MAAM,EAAE,cAAc,CAAC;IACvB,aAAa,EAAE,SAAS,CAAC;IACzB,WAAW,EAAE,SAAS,CAAC;IACvB,cAAc,EAAE,SAAS,CAAC;CAC3B;AAED,MAAM,WAAW,UAAU;IACzB,QAAQ,EAAE,QAAQ,CAAC;IACnB,UAAU,EAAE,SAAS,CAAC;IACtB,cAAc,EAAE,SAAS,CAAC;CAC3B;AAED,MAAM,MAAM,sBAAsB,GAC9B;IACE,OAAO,EAAE,KAAK,CAAC;CAChB,GACD;IACE,OAAO,EAAE,IAAI,CAAC;IACd,cAAc,EAAE,MAAM,CAAC;CACxB,CAAC;AAEN,MAAM,WAAW,sBAAsB;IACrC;;OAEG;IACH,GAAG,EAAE,SAAS,CAAC;IACf;;OAEG;IACH,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC;IACzB;;OAEG;IACH,SAAS,EAAE,iBAAiB,CAAC;IAC7B;;OAEG;IACH,QAAQ,EAAE,MAAM,GAAG,SAAS,CAAC;CAC9B"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/api/entities/Offering/types.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/api/entities/Offering/types.ts"],"names":[],"mappings":";;;AAKA,IAAY,oBAaX;AAbD,WAAY,oBAAoB;IAC9B;;OAEG;IACH,iDAAyB,CAAA;IACzB;;OAEG;IACH,2CAAmB,CAAA;IACnB;;OAEG;IACH,2CAAmB,CAAA;AACrB,CAAC,EAbW,oBAAoB,oCAApB,oBAAoB,QAa/B;AAED,IAAY,qBAeX;AAfD,WAAY,qBAAqB;IAC/B;;OAEG;IACH,gDAAuB,CAAA;IACvB;;OAEG;IACH,4CAAmB,CAAA;IACnB;;;;OAIG;IACH,8CAAqB,CAAA;AACvB,CAAC,EAfW,qBAAqB,qCAArB,qBAAqB,QAehC;AAED,IAAY,kBAiBX;AAjBD,WAAY,kBAAkB;IAC5B;;OAEG;IACH,uCAAiB,CAAA;IACjB;;OAEG;IACH,mCAAa,CAAA;IACb;;OAEG;IACH,iDAA2B,CAAA;IAC3B;;OAEG;IACH,uCAAiB,CAAA;AACnB,CAAC,EAjBW,kBAAkB,kCAAlB,kBAAkB,QAiB7B"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import BigNumber from 'bignumber.js';
|
|
2
|
+
import { FungibleAsset, Procedure } from '../../internal';
|
|
3
|
+
import { EnableOffChainFundingParams } from '../../types';
|
|
4
|
+
import { ExtrinsicParams, ProcedureAuthorization, TransactionSpec } from '../../types/internal';
|
|
5
|
+
export interface Params extends EnableOffChainFundingParams {
|
|
6
|
+
id: BigNumber;
|
|
7
|
+
asset: FungibleAsset;
|
|
8
|
+
}
|
|
9
|
+
/**
|
|
10
|
+
* @hidden
|
|
11
|
+
*/
|
|
12
|
+
export declare function prepareEnableOffChainFundingForOfferings(this: Procedure<Params, void>, args: Params): Promise<TransactionSpec<void, ExtrinsicParams<'sto', 'enableOffchainFunding'>>>;
|
|
13
|
+
/**
|
|
14
|
+
* @hidden
|
|
15
|
+
*/
|
|
16
|
+
export declare function getAuthorization(this: Procedure<Params, void>, { asset }: Params): ProcedureAuthorization;
|
|
17
|
+
/**
|
|
18
|
+
* @hidden
|
|
19
|
+
*/
|
|
20
|
+
export declare const enableOffChainFundingForOfferings: () => Procedure<Params, void>;
|
|
21
|
+
//# sourceMappingURL=enableOffChainFundingForOfferings.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"enableOffChainFundingForOfferings.d.ts","sourceRoot":"","sources":["../../../src/api/procedures/enableOffChainFundingForOfferings.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,cAAc,CAAC;AAErC,OAAO,EAAE,aAAa,EAA2B,SAAS,EAAE,MAAM,YAAY,CAAC;AAC/E,OAAO,EACL,2BAA2B,EAK5B,MAAM,SAAS,CAAC;AACjB,OAAO,EAAE,eAAe,EAAE,sBAAsB,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAG5F,MAAM,WAAW,MAAO,SAAQ,2BAA2B;IACzD,EAAE,EAAE,SAAS,CAAC;IACd,KAAK,EAAE,aAAa,CAAC;CACtB;AAED;;GAEG;AACH,wBAAsB,wCAAwC,CAC5D,IAAI,EAAE,SAAS,CAAC,MAAM,EAAE,IAAI,CAAC,EAC7B,IAAI,EAAE,MAAM,GACX,OAAO,CAAC,eAAe,CAAC,IAAI,EAAE,eAAe,CAAC,KAAK,EAAE,uBAAuB,CAAC,CAAC,CAAC,CAoDjF;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAC9B,IAAI,EAAE,SAAS,CAAC,MAAM,EAAE,IAAI,CAAC,EAC7B,EAAE,KAAK,EAAE,EAAE,MAAM,GAChB,sBAAsB,CAQxB;AAED;;GAEG;AACH,eAAO,MAAM,iCAAiC,QAAO,SAAS,CAAC,MAAM,EAAE,IAAI,CACA,CAAC"}
|
|
@@ -0,0 +1,74 @@
|
|
|
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.enableOffChainFundingForOfferings = void 0;
|
|
13
|
+
exports.prepareEnableOffChainFundingForOfferings = prepareEnableOffChainFundingForOfferings;
|
|
14
|
+
exports.getAuthorization = getAuthorization;
|
|
15
|
+
const internal_1 = require("../../internal");
|
|
16
|
+
const types_1 = require("../../types");
|
|
17
|
+
const conversion_1 = require("../../utils/conversion");
|
|
18
|
+
/**
|
|
19
|
+
* @hidden
|
|
20
|
+
*/
|
|
21
|
+
function prepareEnableOffChainFundingForOfferings(args) {
|
|
22
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
23
|
+
const { context: { polymeshApi: { tx: { sto: txSto }, }, }, context, } = this;
|
|
24
|
+
const { asset, id, offChainTicker } = args;
|
|
25
|
+
const rawAssetId = (0, conversion_1.assetToMeshAssetId)(asset, context);
|
|
26
|
+
const rawId = (0, conversion_1.bigNumberToU64)(id, context);
|
|
27
|
+
const rawTicker = (0, conversion_1.stringToTicker)(offChainTicker, context);
|
|
28
|
+
const offering = new internal_1.Offering({ id, assetId: asset.id }, context);
|
|
29
|
+
const [exists, { status: { timing, sale }, },] = yield Promise.all([offering.exists(), offering.details()]);
|
|
30
|
+
if (!exists) {
|
|
31
|
+
throw new internal_1.PolymeshError({
|
|
32
|
+
code: types_1.ErrorCode.UnmetPrerequisite,
|
|
33
|
+
message: 'The Offering does not exist',
|
|
34
|
+
data: { id },
|
|
35
|
+
});
|
|
36
|
+
}
|
|
37
|
+
if (timing === types_1.OfferingTimingStatus.Expired) {
|
|
38
|
+
throw new internal_1.PolymeshError({
|
|
39
|
+
code: types_1.ErrorCode.UnmetPrerequisite,
|
|
40
|
+
message: 'The Offering has already ended',
|
|
41
|
+
data: { id },
|
|
42
|
+
});
|
|
43
|
+
}
|
|
44
|
+
if ([types_1.OfferingSaleStatus.Closed, types_1.OfferingSaleStatus.ClosedEarly].includes(sale)) {
|
|
45
|
+
throw new internal_1.PolymeshError({
|
|
46
|
+
code: types_1.ErrorCode.UnmetPrerequisite,
|
|
47
|
+
message: 'The Offering is already closed',
|
|
48
|
+
});
|
|
49
|
+
}
|
|
50
|
+
return {
|
|
51
|
+
transaction: txSto.enableOffchainFunding,
|
|
52
|
+
args: [rawAssetId, rawId, rawTicker],
|
|
53
|
+
resolver: undefined,
|
|
54
|
+
};
|
|
55
|
+
});
|
|
56
|
+
}
|
|
57
|
+
/**
|
|
58
|
+
* @hidden
|
|
59
|
+
*/
|
|
60
|
+
function getAuthorization({ asset }) {
|
|
61
|
+
return {
|
|
62
|
+
permissions: {
|
|
63
|
+
transactions: [types_1.TxTags.sto.EnableOffchainFunding],
|
|
64
|
+
assets: [asset],
|
|
65
|
+
portfolios: [],
|
|
66
|
+
},
|
|
67
|
+
};
|
|
68
|
+
}
|
|
69
|
+
/**
|
|
70
|
+
* @hidden
|
|
71
|
+
*/
|
|
72
|
+
const enableOffChainFundingForOfferings = () => new internal_1.Procedure(prepareEnableOffChainFundingForOfferings, getAuthorization);
|
|
73
|
+
exports.enableOffChainFundingForOfferings = enableOffChainFundingForOfferings;
|
|
74
|
+
//# sourceMappingURL=enableOffChainFundingForOfferings.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"enableOffChainFundingForOfferings.js","sourceRoot":"","sources":["../../../src/api/procedures/enableOffChainFundingForOfferings.ts"],"names":[],"mappings":";;;;;;;;;;;;AAqBA,4FAuDC;AAKD,4CAWC;AA1FD,yCAA+E;AAC/E,mCAMiB;AAEjB,mDAAwF;AAOxF;;GAEG;AACH,SAAsB,wCAAwC,CAE5D,IAAY;;QAEZ,MAAM,EACJ,OAAO,EAAE,EACP,WAAW,EAAE,EACX,EAAE,EAAE,EAAE,GAAG,EAAE,KAAK,EAAE,GACnB,GACF,EACD,OAAO,GACR,GAAG,IAAI,CAAC;QACT,MAAM,EAAE,KAAK,EAAE,EAAE,EAAE,cAAc,EAAE,GAAG,IAAI,CAAC;QAE3C,MAAM,UAAU,GAAG,IAAA,+BAAkB,EAAC,KAAK,EAAE,OAAO,CAAC,CAAC;QACtD,MAAM,KAAK,GAAG,IAAA,2BAAc,EAAC,EAAE,EAAE,OAAO,CAAC,CAAC;QAC1C,MAAM,SAAS,GAAG,IAAA,2BAAc,EAAC,cAAc,EAAE,OAAO,CAAC,CAAC;QAE1D,MAAM,QAAQ,GAAG,IAAI,mBAAQ,CAAC,EAAE,EAAE,EAAE,OAAO,EAAE,KAAK,CAAC,EAAE,EAAE,EAAE,OAAO,CAAC,CAAC;QAElE,MAAM,CACJ,MAAM,EACN,EACE,MAAM,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,GACzB,EACF,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,MAAM,EAAE,EAAE,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;QAE/D,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,IAAI,wBAAa,CAAC;gBACtB,IAAI,EAAE,iBAAS,CAAC,iBAAiB;gBACjC,OAAO,EAAE,6BAA6B;gBACtC,IAAI,EAAE,EAAE,EAAE,EAAE;aACb,CAAC,CAAC;QACL,CAAC;QAED,IAAI,MAAM,KAAK,4BAAoB,CAAC,OAAO,EAAE,CAAC;YAC5C,MAAM,IAAI,wBAAa,CAAC;gBACtB,IAAI,EAAE,iBAAS,CAAC,iBAAiB;gBACjC,OAAO,EAAE,gCAAgC;gBACzC,IAAI,EAAE,EAAE,EAAE,EAAE;aACb,CAAC,CAAC;QACL,CAAC;QAED,IAAI,CAAC,0BAAkB,CAAC,MAAM,EAAE,0BAAkB,CAAC,WAAW,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;YAC/E,MAAM,IAAI,wBAAa,CAAC;gBACtB,IAAI,EAAE,iBAAS,CAAC,iBAAiB;gBACjC,OAAO,EAAE,gCAAgC;aAC1C,CAAC,CAAC;QACL,CAAC;QAED,OAAO;YACL,WAAW,EAAE,KAAK,CAAC,qBAAqB;YACxC,IAAI,EAAE,CAAC,UAAU,EAAE,KAAK,EAAE,SAAS,CAAC;YACpC,QAAQ,EAAE,SAAS;SACpB,CAAC;IACJ,CAAC;CAAA;AAED;;GAEG;AACH,SAAgB,gBAAgB,CAE9B,EAAE,KAAK,EAAU;IAEjB,OAAO;QACL,WAAW,EAAE;YACX,YAAY,EAAE,CAAC,cAAM,CAAC,GAAG,CAAC,qBAAqB,CAAC;YAChD,MAAM,EAAE,CAAC,KAAK,CAAC;YACf,UAAU,EAAE,EAAE;SACf;KACF,CAAC;AACJ,CAAC;AAED;;GAEG;AACI,MAAM,iCAAiC,GAAG,GAA4B,EAAE,CAC7E,IAAI,oBAAS,CAAC,wCAAwC,EAAE,gBAAgB,CAAC,CAAC;AAD/D,QAAA,iCAAiC,qCAC8B"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import BigNumber from 'bignumber.js';
|
|
2
2
|
import { Procedure } from '../../internal';
|
|
3
|
-
import { FungibleAsset, InvestInOfferingParams, PortfolioId, Tier } from '../../types';
|
|
3
|
+
import { FungibleAsset, InvestInOfferingParams, OffChainFundingReceipt, PortfolioId, Tier } from '../../types';
|
|
4
4
|
import { ExtrinsicParams, ProcedureAuthorization, TransactionSpec } from '../../types/internal';
|
|
5
5
|
/**
|
|
6
6
|
* @hidden
|
|
@@ -12,10 +12,14 @@ export type Params = InvestInOfferingParams & {
|
|
|
12
12
|
/**
|
|
13
13
|
* @hidden
|
|
14
14
|
*/
|
|
15
|
-
export
|
|
15
|
+
export type Storage = {
|
|
16
16
|
purchasePortfolioId: PortfolioId;
|
|
17
|
+
} & ({
|
|
17
18
|
fundingPortfolioId: PortfolioId;
|
|
18
|
-
}
|
|
19
|
+
} | {
|
|
20
|
+
offChainFundingReceipt: OffChainFundingReceipt;
|
|
21
|
+
offChainTicker: string;
|
|
22
|
+
});
|
|
19
23
|
/**
|
|
20
24
|
* @hidden
|
|
21
25
|
*/
|
|
@@ -39,7 +43,7 @@ export declare function getAuthorization(this: Procedure<Params, void, Storage>)
|
|
|
39
43
|
/**
|
|
40
44
|
* @hidden
|
|
41
45
|
*/
|
|
42
|
-
export declare function prepareStorage(this: Procedure<Params, void, Storage>,
|
|
46
|
+
export declare function prepareStorage(this: Procedure<Params, void, Storage>, params: Params): Storage;
|
|
43
47
|
/**
|
|
44
48
|
* @hidden
|
|
45
49
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"investInOffering.d.ts","sourceRoot":"","sources":["../../../src/api/procedures/investInOffering.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"investInOffering.d.ts","sourceRoot":"","sources":["../../../src/api/procedures/investInOffering.ts"],"names":[],"mappings":"AACA,OAAO,SAAS,MAAM,cAAc,CAAC;AAErC,OAAO,EAA2B,SAAS,EAAE,MAAM,YAAY,CAAC;AAChE,OAAO,EAEL,aAAa,EACb,sBAAsB,EACtB,sBAAsB,EAGtB,WAAW,EAGX,IAAI,EAEL,MAAM,SAAS,CAAC;AACjB,OAAO,EAAE,eAAe,EAAE,sBAAsB,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAa5F;;GAEG;AACH,MAAM,MAAM,MAAM,GAAG,sBAAsB,GAAG;IAC5C,EAAE,EAAE,SAAS,CAAC;IACd,KAAK,EAAE,aAAa,CAAC;CACtB,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,OAAO,GAAG;IACpB,mBAAmB,EAAE,WAAW,CAAC;CAClC,GAAG,CACA;IACE,kBAAkB,EAAE,WAAW,CAAC;CACjC,GACD;IACE,sBAAsB,EAAE,sBAAsB,CAAC;IAC/C,cAAc,EAAE,MAAM,CAAC;CACxB,CACJ,CAAC;AAEF;;GAEG;AACH,UAAU,SAAS;IACjB,cAAc,EAAE,SAAS,CAAC;IAC1B,KAAK,EAAE,SAAS,CAAC;IACjB,mBAAmB,EAAE,SAAS,CAAC;CAChC;AAED;;GAEG;AACH,eAAO,MAAM,kBAAkB,GAC7B,OAAO,IAAI,EAAE,EACb,gBAAgB,SAAS,EACzB,WAAW,SAAS,KACnB,IAAI,CAAC,SAAS,EAAE,qBAAqB,CA2CvC,CAAC;AAEF;;GAEG;AACH,wBAAsB,kBAAkB,CACtC,IAAI,EAAE,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,OAAO,CAAC,EACtC,IAAI,EAAE,MAAM,GACX,OAAO,CAAC,eAAe,CAAC,IAAI,EAAE,eAAe,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAC,CAyHpE;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,OAAO,CAAC,GAAG,sBAAsB,CAqB/F;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,OAAO,CAAC,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAe9F;AAED;;GAEG;AACH,eAAO,MAAM,gBAAgB,QAAO,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,OAAO,CACE,CAAC"}
|
|
@@ -61,15 +61,10 @@ exports.calculateTierStats = calculateTierStats;
|
|
|
61
61
|
*/
|
|
62
62
|
function prepareInvestInSto(args) {
|
|
63
63
|
return __awaiter(this, void 0, void 0, function* () {
|
|
64
|
-
const { context: { polymeshApi: { tx: { sto: txSto }, }, }, context, storage: { purchasePortfolioId
|
|
64
|
+
const { context: { polymeshApi: { tx: { sto: txSto }, }, }, context, storage: { purchasePortfolioId }, storage, } = this;
|
|
65
65
|
const { asset: { id: assetId }, asset, id, purchaseAmount, maxPrice, } = args;
|
|
66
66
|
const offering = new internal_1.Offering({ id, assetId }, context);
|
|
67
|
-
const portfolio = (0, conversion_1.portfolioIdToPortfolio)(fundingPortfolioId, context);
|
|
68
67
|
const { status: { sale, timing }, minInvestment, tiers, raisingCurrency, } = yield offering.details();
|
|
69
|
-
const [balanceResult] = yield portfolio.getAssetBalances({
|
|
70
|
-
assets: [raisingCurrency],
|
|
71
|
-
});
|
|
72
|
-
const { free: freeAssetBalance } = balanceResult;
|
|
73
68
|
if (sale !== types_1.OfferingSaleStatus.Live || timing !== types_1.OfferingTimingStatus.Started) {
|
|
74
69
|
throw new internal_1.PolymeshError({
|
|
75
70
|
code: types_1.ErrorCode.UnmetPrerequisite,
|
|
@@ -84,6 +79,11 @@ function prepareInvestInSto(args) {
|
|
|
84
79
|
data: { priceTotal },
|
|
85
80
|
});
|
|
86
81
|
}
|
|
82
|
+
const portfolio = (0, conversion_1.portfolioIdToPortfolio)(purchasePortfolioId, context);
|
|
83
|
+
const [balanceResult] = yield portfolio.getAssetBalances({
|
|
84
|
+
assets: [raisingCurrency],
|
|
85
|
+
});
|
|
86
|
+
const { free: freeAssetBalance } = balanceResult;
|
|
87
87
|
if (freeAssetBalance.lt(priceTotal)) {
|
|
88
88
|
throw new internal_1.PolymeshError({
|
|
89
89
|
code: types_1.ErrorCode.InsufficientBalance,
|
|
@@ -98,10 +98,36 @@ function prepareInvestInSto(args) {
|
|
|
98
98
|
});
|
|
99
99
|
}
|
|
100
100
|
const rawAssetId = (0, conversion_1.assetToMeshAssetId)(asset, context);
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
101
|
+
let rawFunding;
|
|
102
|
+
if ('fundingPortfolioId' in storage) {
|
|
103
|
+
const { fundingPortfolioId } = storage;
|
|
104
|
+
const rawFundingPortfolioId = (0, conversion_1.portfolioIdToMeshPortfolioId)(fundingPortfolioId, context);
|
|
105
|
+
rawFunding = (0, conversion_1.fundingToRawFunding)(context, {
|
|
106
|
+
portfolioId: rawFundingPortfolioId,
|
|
107
|
+
});
|
|
108
|
+
}
|
|
109
|
+
else {
|
|
110
|
+
const { offChainFundingReceipt, offChainTicker } = storage;
|
|
111
|
+
const details = yield offering.offChainFundingDetails();
|
|
112
|
+
if (!details.enabled) {
|
|
113
|
+
throw new internal_1.PolymeshError({
|
|
114
|
+
code: types_1.ErrorCode.UnmetPrerequisite,
|
|
115
|
+
message: 'Offchain funding is not enabled for this Offering',
|
|
116
|
+
});
|
|
117
|
+
}
|
|
118
|
+
if (details.offChainTicker !== offChainTicker) {
|
|
119
|
+
throw new internal_1.PolymeshError({
|
|
120
|
+
code: types_1.ErrorCode.UnmetPrerequisite,
|
|
121
|
+
message: 'Offchain funding is not enabled for the given ticker',
|
|
122
|
+
data: {
|
|
123
|
+
offChainTicker: details.offChainTicker,
|
|
124
|
+
},
|
|
125
|
+
});
|
|
126
|
+
}
|
|
127
|
+
rawFunding = (0, conversion_1.fundingToRawFunding)(context, {
|
|
128
|
+
receiptDetails: (0, conversion_1.offChainFundingReceiptDetailsToMeshReceiptDetails)(offChainFundingReceipt, context),
|
|
129
|
+
});
|
|
130
|
+
}
|
|
105
131
|
return {
|
|
106
132
|
transaction: txSto.invest,
|
|
107
133
|
args: [
|
|
@@ -120,29 +146,38 @@ function prepareInvestInSto(args) {
|
|
|
120
146
|
* @hidden
|
|
121
147
|
*/
|
|
122
148
|
function getAuthorization() {
|
|
123
|
-
const { storage
|
|
149
|
+
const { storage, context } = this;
|
|
150
|
+
const { purchasePortfolioId } = storage;
|
|
151
|
+
const roles = [{ type: types_1.RoleType.PortfolioCustodian, portfolioId: purchasePortfolioId }];
|
|
152
|
+
const portfolios = [(0, conversion_1.portfolioIdToPortfolio)(purchasePortfolioId, context)];
|
|
153
|
+
if ('fundingPortfolioId' in storage) {
|
|
154
|
+
portfolios.push((0, conversion_1.portfolioIdToPortfolio)(storage.fundingPortfolioId, context));
|
|
155
|
+
roles.push({ type: types_1.RoleType.PortfolioCustodian, portfolioId: storage.fundingPortfolioId });
|
|
156
|
+
}
|
|
124
157
|
return {
|
|
125
|
-
roles
|
|
126
|
-
{ type: types_1.RoleType.PortfolioCustodian, portfolioId: purchasePortfolioId },
|
|
127
|
-
{ type: types_1.RoleType.PortfolioCustodian, portfolioId: fundingPortfolioId },
|
|
128
|
-
],
|
|
158
|
+
roles,
|
|
129
159
|
permissions: {
|
|
130
160
|
transactions: [types_1.TxTags.sto.Invest],
|
|
131
161
|
assets: [],
|
|
132
|
-
portfolios
|
|
133
|
-
(0, conversion_1.portfolioIdToPortfolio)(purchasePortfolioId, context),
|
|
134
|
-
(0, conversion_1.portfolioIdToPortfolio)(fundingPortfolioId, context),
|
|
135
|
-
],
|
|
162
|
+
portfolios,
|
|
136
163
|
},
|
|
137
164
|
};
|
|
138
165
|
}
|
|
139
166
|
/**
|
|
140
167
|
* @hidden
|
|
141
168
|
*/
|
|
142
|
-
function prepareStorage(
|
|
169
|
+
function prepareStorage(params) {
|
|
170
|
+
const { purchasePortfolio } = params;
|
|
171
|
+
if ('offChainFundingReceipt' in params) {
|
|
172
|
+
return {
|
|
173
|
+
purchasePortfolioId: (0, conversion_1.portfolioLikeToPortfolioId)(purchasePortfolio),
|
|
174
|
+
offChainFundingReceipt: params.offChainFundingReceipt,
|
|
175
|
+
offChainTicker: params.offChainTicker,
|
|
176
|
+
};
|
|
177
|
+
}
|
|
143
178
|
return {
|
|
144
179
|
purchasePortfolioId: (0, conversion_1.portfolioLikeToPortfolioId)(purchasePortfolio),
|
|
145
|
-
fundingPortfolioId: (0, conversion_1.portfolioLikeToPortfolioId)(fundingPortfolio),
|
|
180
|
+
fundingPortfolioId: (0, conversion_1.portfolioLikeToPortfolioId)(params.fundingPortfolio),
|
|
146
181
|
};
|
|
147
182
|
}
|
|
148
183
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"investInOffering.js","sourceRoot":"","sources":["../../../src/api/procedures/investInOffering.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"investInOffering.js","sourceRoot":"","sources":["../../../src/api/procedures/investInOffering.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import BigNumber from 'bignumber.js';
|
|
2
2
|
import { BallotMeta, BallotVote } from '../../api/entities/CorporateBallot/types';
|
|
3
3
|
import { Account, AuthorizationRequest, CheckpointSchedule, ChildIdentity, CorporateActionBase, CorporateBallot, CustomPermissionGroup, DefaultPortfolio, FungibleAsset, Identity, KnownPermissionGroup, MultiSig, Nft, NumberedPortfolio, PolymeshTransaction, PolymeshTransactionBatch, Venue } from '../../internal';
|
|
4
|
-
import { AddCountStatInput, AssetDocument, CheckPermissionsResult, CheckRolesResult, ClaimCountStatInput, ClaimTarget, ClaimType, CorporateActionKind, CorporateActionTargets, InputCaCheckpoint, InputCondition, InputStatClaim, InputStatType, InputTargets, InputTaxWithholding, InputTrustedClaimIssuer, KnownAssetType, KnownNftType, MetadataSpec, MetadataType, MetadataValueDetails, NftCollection, OfferingTier, PermissionedAccount, PermissionsLike, PortfolioLike, PortfolioMovement, Requirement, Scope, SecurityIdentifier, Signer, SignerType, StatClaimIssuer, StatType, TaxWithholding, TransactionPermissions, TxTag, VenueType } from '../../types';
|
|
4
|
+
import { AddCountStatInput, AssetDocument, CheckPermissionsResult, CheckRolesResult, ClaimCountStatInput, ClaimTarget, ClaimType, CorporateActionKind, CorporateActionTargets, InputCaCheckpoint, InputCondition, InputStatClaim, InputStatType, InputTargets, InputTaxWithholding, InputTrustedClaimIssuer, KnownAssetType, KnownNftType, MetadataSpec, MetadataType, MetadataValueDetails, NftCollection, OffChainFundingReceipt, OfferingTier, PermissionedAccount, PermissionsLike, PortfolioLike, PortfolioMovement, Requirement, Scope, SecurityIdentifier, Signer, SignerType, StatClaimIssuer, StatType, TaxWithholding, TransactionPermissions, TxTag, VenueType } from '../../types';
|
|
5
5
|
import { Modify } from '../../types/utils';
|
|
6
6
|
export interface ProcedureAuthorizationStatus {
|
|
7
7
|
/**
|
|
@@ -1260,15 +1260,11 @@ export type ModifyOfferingTimesParams = {
|
|
|
1260
1260
|
start: Date;
|
|
1261
1261
|
end: Date | null;
|
|
1262
1262
|
};
|
|
1263
|
-
export
|
|
1263
|
+
export type InvestInOfferingParams = {
|
|
1264
1264
|
/**
|
|
1265
1265
|
* portfolio in which the purchased Asset tokens will be stored
|
|
1266
1266
|
*/
|
|
1267
1267
|
purchasePortfolio: PortfolioLike;
|
|
1268
|
-
/**
|
|
1269
|
-
* portfolio from which funds will be withdrawn to pay for the Asset tokens
|
|
1270
|
-
*/
|
|
1271
|
-
fundingPortfolio: PortfolioLike;
|
|
1272
1268
|
/**
|
|
1273
1269
|
* amount of Asset tokens to purchase
|
|
1274
1270
|
*/
|
|
@@ -1277,7 +1273,23 @@ export interface InvestInOfferingParams {
|
|
|
1277
1273
|
* maximum average price to pay per Asset token (optional)
|
|
1278
1274
|
*/
|
|
1279
1275
|
maxPrice?: BigNumber;
|
|
1280
|
-
}
|
|
1276
|
+
} & ({
|
|
1277
|
+
/**
|
|
1278
|
+
* portfolio from which funds will be withdrawn to pay for the Asset tokens
|
|
1279
|
+
*/
|
|
1280
|
+
fundingPortfolio: PortfolioLike;
|
|
1281
|
+
} | {
|
|
1282
|
+
/**
|
|
1283
|
+
* ticker of the offchain funding asset
|
|
1284
|
+
*/
|
|
1285
|
+
offChainTicker: string;
|
|
1286
|
+
/**
|
|
1287
|
+
* (optional) offchain receipts required for investing via off chain funding
|
|
1288
|
+
*
|
|
1289
|
+
* Receipt can be generated using {@link api/entities/Offering!Offering.generateOffChainFundingReceipt | generateOffChainFundingReceipt} method
|
|
1290
|
+
*/
|
|
1291
|
+
offChainFundingReceipt: OffChainFundingReceipt;
|
|
1292
|
+
});
|
|
1281
1293
|
export interface RenamePortfolioParams {
|
|
1282
1294
|
name: string;
|
|
1283
1295
|
}
|
|
@@ -1560,4 +1572,10 @@ export type InitiateCorporateActionParams = {
|
|
|
1560
1572
|
*/
|
|
1561
1573
|
defaultTaxWithholding: BigNumber | null;
|
|
1562
1574
|
};
|
|
1575
|
+
export interface EnableOffChainFundingParams {
|
|
1576
|
+
/**
|
|
1577
|
+
* The ticker of the off-chain asset
|
|
1578
|
+
*/
|
|
1579
|
+
offChainTicker: string;
|
|
1580
|
+
}
|
|
1563
1581
|
//# sourceMappingURL=types.d.ts.map
|