@barchart/portfolio-api-common 1.3.6 → 1.3.7
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.
|
@@ -160,13 +160,16 @@ module.exports = (() => {
|
|
|
160
160
|
* @public
|
|
161
161
|
* @static
|
|
162
162
|
* @param {Object} portfolio
|
|
163
|
+
* @param {Currency=} currency
|
|
163
164
|
* @returns {PositionLevelDefinition~RequiredGroup}
|
|
164
165
|
*/
|
|
165
|
-
static buildRequiredGroupForPortfolio(portfolio) {
|
|
166
|
+
static buildRequiredGroupForPortfolio(portfolio, currency) {
|
|
167
|
+
assert.argumentIsOptional(currency, 'currency', Currency, 'Currency');
|
|
168
|
+
|
|
166
169
|
return {
|
|
167
170
|
key: PositionLevelDefinition.getKeyForPortfolioGroup(portfolio),
|
|
168
171
|
description: PositionLevelDefinition.getDescriptionForPortfolioGroup(portfolio),
|
|
169
|
-
currency: Currency.CAD
|
|
172
|
+
currency: (currency || Currency.CAD)
|
|
170
173
|
};
|
|
171
174
|
}
|
|
172
175
|
|
|
@@ -182,12 +185,12 @@ module.exports = (() => {
|
|
|
182
185
|
return portfolio.name;
|
|
183
186
|
}
|
|
184
187
|
|
|
185
|
-
static getRequiredGroupGeneratorForPortfolio() {
|
|
188
|
+
static getRequiredGroupGeneratorForPortfolio(currency) {
|
|
186
189
|
return (portfolio) => {
|
|
187
190
|
let requiredGroup;
|
|
188
191
|
|
|
189
192
|
if (is.object(portfolio) && is.string(portfolio.portfolio) && is.string(portfolio.name)) {
|
|
190
|
-
requiredGroup = PositionLevelDefinition.buildRequiredGroupForPortfolio(portfolio);
|
|
193
|
+
requiredGroup = PositionLevelDefinition.buildRequiredGroupForPortfolio(portfolio, currency);
|
|
191
194
|
} else {
|
|
192
195
|
requiredGroup = null;
|
|
193
196
|
}
|
|
@@ -203,12 +206,13 @@ module.exports = (() => {
|
|
|
203
206
|
* @static
|
|
204
207
|
* @param {InstrumentType} type
|
|
205
208
|
* @param {Currency} currency
|
|
209
|
+
* @param {Currency=} defaultCurrency
|
|
206
210
|
* @returns {PositionLevelDefinition~RequiredGroup}
|
|
207
211
|
*/
|
|
208
|
-
static buildRequiredGroupForAssetClass(type, currency) {
|
|
212
|
+
static buildRequiredGroupForAssetClass(type, currency, defaultCurrency) {
|
|
209
213
|
return {
|
|
210
214
|
key: PositionLevelDefinition.getKeyForAssetClassGroup(type, currency),
|
|
211
|
-
description: PositionLevelDefinition.getDescriptionForAssetClassGroup(type, currency),
|
|
215
|
+
description: PositionLevelDefinition.getDescriptionForAssetClassGroup(type, currency, defaultCurrency),
|
|
212
216
|
currency: currency
|
|
213
217
|
};
|
|
214
218
|
}
|
|
@@ -220,11 +224,12 @@ module.exports = (() => {
|
|
|
220
224
|
return `${type.code}|${currency.code}`;
|
|
221
225
|
}
|
|
222
226
|
|
|
223
|
-
static getDescriptionForAssetClassGroup(type, currency) {
|
|
227
|
+
static getDescriptionForAssetClassGroup(type, currency, defaultCurrency) {
|
|
224
228
|
assert.argumentIsRequired(type, 'type', InstrumentType, 'InstrumentType');
|
|
225
229
|
assert.argumentIsRequired(currency, 'currency', Currency, 'Currency');
|
|
230
|
+
assert.argumentIsOptional(defaultCurrency, 'defaultCurrency', Currency, 'Currency');
|
|
226
231
|
|
|
227
|
-
return `${type.alternateDescription}${currency
|
|
232
|
+
return `${type.alternateDescription}${currency === (defaultCurrency || Currency.CAD) ? '' : ` (${currency.alternateDescription})`}`;
|
|
228
233
|
}
|
|
229
234
|
|
|
230
235
|
toString() {
|
package/package.json
CHANGED
package/test/SpecRunner.js
CHANGED
|
@@ -4486,13 +4486,16 @@ module.exports = (() => {
|
|
|
4486
4486
|
* @public
|
|
4487
4487
|
* @static
|
|
4488
4488
|
* @param {Object} portfolio
|
|
4489
|
+
* @param {Currency=} currency
|
|
4489
4490
|
* @returns {PositionLevelDefinition~RequiredGroup}
|
|
4490
4491
|
*/
|
|
4491
|
-
static buildRequiredGroupForPortfolio(portfolio) {
|
|
4492
|
+
static buildRequiredGroupForPortfolio(portfolio, currency) {
|
|
4493
|
+
assert.argumentIsOptional(currency, 'currency', Currency, 'Currency');
|
|
4494
|
+
|
|
4492
4495
|
return {
|
|
4493
4496
|
key: PositionLevelDefinition.getKeyForPortfolioGroup(portfolio),
|
|
4494
4497
|
description: PositionLevelDefinition.getDescriptionForPortfolioGroup(portfolio),
|
|
4495
|
-
currency: Currency.CAD
|
|
4498
|
+
currency: (currency || Currency.CAD)
|
|
4496
4499
|
};
|
|
4497
4500
|
}
|
|
4498
4501
|
|
|
@@ -4508,12 +4511,12 @@ module.exports = (() => {
|
|
|
4508
4511
|
return portfolio.name;
|
|
4509
4512
|
}
|
|
4510
4513
|
|
|
4511
|
-
static getRequiredGroupGeneratorForPortfolio() {
|
|
4514
|
+
static getRequiredGroupGeneratorForPortfolio(currency) {
|
|
4512
4515
|
return (portfolio) => {
|
|
4513
4516
|
let requiredGroup;
|
|
4514
4517
|
|
|
4515
4518
|
if (is.object(portfolio) && is.string(portfolio.portfolio) && is.string(portfolio.name)) {
|
|
4516
|
-
requiredGroup = PositionLevelDefinition.buildRequiredGroupForPortfolio(portfolio);
|
|
4519
|
+
requiredGroup = PositionLevelDefinition.buildRequiredGroupForPortfolio(portfolio, currency);
|
|
4517
4520
|
} else {
|
|
4518
4521
|
requiredGroup = null;
|
|
4519
4522
|
}
|
|
@@ -4529,12 +4532,13 @@ module.exports = (() => {
|
|
|
4529
4532
|
* @static
|
|
4530
4533
|
* @param {InstrumentType} type
|
|
4531
4534
|
* @param {Currency} currency
|
|
4535
|
+
* @param {Currency=} defaultCurrency
|
|
4532
4536
|
* @returns {PositionLevelDefinition~RequiredGroup}
|
|
4533
4537
|
*/
|
|
4534
|
-
static buildRequiredGroupForAssetClass(type, currency) {
|
|
4538
|
+
static buildRequiredGroupForAssetClass(type, currency, defaultCurrency) {
|
|
4535
4539
|
return {
|
|
4536
4540
|
key: PositionLevelDefinition.getKeyForAssetClassGroup(type, currency),
|
|
4537
|
-
description: PositionLevelDefinition.getDescriptionForAssetClassGroup(type, currency),
|
|
4541
|
+
description: PositionLevelDefinition.getDescriptionForAssetClassGroup(type, currency, defaultCurrency),
|
|
4538
4542
|
currency: currency
|
|
4539
4543
|
};
|
|
4540
4544
|
}
|
|
@@ -4546,11 +4550,12 @@ module.exports = (() => {
|
|
|
4546
4550
|
return `${type.code}|${currency.code}`;
|
|
4547
4551
|
}
|
|
4548
4552
|
|
|
4549
|
-
static getDescriptionForAssetClassGroup(type, currency) {
|
|
4553
|
+
static getDescriptionForAssetClassGroup(type, currency, defaultCurrency) {
|
|
4550
4554
|
assert.argumentIsRequired(type, 'type', InstrumentType, 'InstrumentType');
|
|
4551
4555
|
assert.argumentIsRequired(currency, 'currency', Currency, 'Currency');
|
|
4556
|
+
assert.argumentIsOptional(defaultCurrency, 'defaultCurrency', Currency, 'Currency');
|
|
4552
4557
|
|
|
4553
|
-
return `${type.alternateDescription}${currency
|
|
4558
|
+
return `${type.alternateDescription}${currency === (defaultCurrency || Currency.CAD) ? '' : ` (${currency.alternateDescription})`}`;
|
|
4554
4559
|
}
|
|
4555
4560
|
|
|
4556
4561
|
toString() {
|