@balena/balena-pricing 1.2.1 → 1.3.0

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.
@@ -1 +1 @@
1
- !function(){"use strict";var t={};Object.defineProperty(t,"__esModule",{value:!0});var e=t.TypedError=void 0;let r;if(null!=Error.captureStackTrace){const t=Error.captureStackTrace;r=e=>{t(e,e.constructor)}}else r=(t,e)=>{e instanceof Error||(e=new Error(e)),null!=e.stack&&(t.stack=e.stack)};class i extends Error{constructor(t=""){super(),this.stack="",t instanceof Error?this.message=t.message:this.message=t,Object.setPrototypeOf(this,new.target.prototype),this.name=this.constructor.name,r(this,t)}}e=t.TypedError=i;class s extends e{constructor(t){super(t)}}const o={"device:microservices":[{version:1,validFrom:new Date("2023-02-01T00:00:00Z"),firstDiscountPriceCents:149,discountRate:.33,discountThreshold:12e3,discountThresholdPriceCents:125},{version:2,validFrom:new Date("2023-03-08T00:00:00Z"),firstDiscountPriceCents:199,discountRate:.33,discountThreshold:12e3,discountThresholdPriceCents:150}]};function n(t,e){return e>=t.discountThresholdPriceCents?(e-t.firstDiscountPriceCents)*(t.discountThreshold-1)/(t.discountThresholdPriceCents-t.firstDiscountPriceCents)+1:t.discountThreshold*Math.pow(10,Math.log10(e/t.discountThresholdPriceCents)/Math.log10(1-t.discountRate))}window.CreditPricing=class{constructor(t={}){var e,r;this.credits=function(t){const e={};for(const[r,i]of Object.entries(t))e[r]=i.sort(((t,e)=>e.validFrom.getTime()-t.validFrom.getTime()));return e}(null!==(e=t.credits)&&void 0!==e?e:o),function(t){for(const[e,r]of Object.entries(t)){const t=new Set,i=new Set;for(const o of r){if(t.has(o.version))throw new s(`Duplicate version ${o.version} for feature ${e}`);const r=o.validFrom.toISOString();if(i.has(r))throw new s(`Duplicate validFrom ${r} for feature ${e}`);t.add(o.version),i.add(r)}}}(this.credits),this.target=null!==(r=t.target)&&void 0!==r?r:"current"}getDefinition(t){if(null==this.credits[t])throw new s(`Feature ${t} not supported for credits`);let e;return"latest"===this.target?this.credits[t][0]:"number"==typeof this.target?(e=this.credits[t].find((t=>t.version===this.target)),e):this.target instanceof Date?this.credits[t].find((t=>t.validFrom<=this.target)):this.credits[t].find((t=>t.validFrom<=new Date))}fixRange(t,e,r){let i=r,s=this.getCreditPrice(t,0,i);for(;s>e;)i+=1,s=this.getCreditPrice(t,0,i);for(;s===e;)i-=1,s=this.getCreditPrice(t,0,i);return i}getCreditRange(t,e){if(!Number.isInteger(e))throw new s("Unit cost must be a whole number");if(e<=0)throw new s("Unit cost must be greater than 0");const r=this.getDefinition(t);if(null==r)throw new s("Requested feature not allowed for credit usage");if(e>r.firstDiscountPriceCents)throw new s(`Unit cost cannot be greater than ${r.firstDiscountPriceCents}`);const i={from:e===r.firstDiscountPriceCents?1:Math.ceil(n(r,e+.5))};return e>1&&(i.to=Math.floor(n(r,e-.5))),i.from>1&&(this.getCreditPrice(t,0,i.from)!==e||this.getCreditPrice(t,0,i.from-1)!==e+1)&&(i.from=this.fixRange(t,e,i.from)+1),!i.to||this.getCreditPrice(t,0,i.to)===e&&this.getCreditPrice(t,0,i.to+1)===e-1||(i.to=this.fixRange(t,e-1,i.to)),i}getCreditPrice(t,e,r){if(!Number.isInteger(e))throw new s("Available credits must be a whole number");if(!Number.isInteger(r))throw new s("Credit purchase amount must be a whole number");if(e<0)throw new s("Available credits must be greater than or equal to 0");if(r<=0)throw new s("Credit purchase amount must be greater than 0");const i=this.getDefinition(t);if(null==i)throw new s("Requested feature not allowed for credit usage");const o=e+r;if(0===r||0===o)return 0;if(o<=i.discountThreshold)return Math.round(i.firstDiscountPriceCents+(i.discountThresholdPriceCents-i.firstDiscountPriceCents)/(i.discountThreshold-1)*(o-1));const n=Math.round(i.discountThresholdPriceCents*Math.pow(1-i.discountRate,Math.log10(o/i.discountThreshold)));if(n<=0)throw new s("The provided quantity surpasses the maximum supported amount of credits");return n}getCreditTotalPrice(t,e,r){return Math.round(this.getCreditPrice(t,e,r)*r)}getDiscountOverDynamic(t,e,r,i){return Math.round((i-this.getCreditPrice(t,e,r))/i*100)}getTotalSavings(t,e,r,i){return Math.round(r*(i-this.getCreditPrice(t,e,r)))}}}();
1
+ !function(){"use strict";var t={};Object.defineProperty(t,"__esModule",{value:!0});var e=t.TypedError=void 0;let r;if(null!=Error.captureStackTrace){const t=Error.captureStackTrace;r=e=>{t(e,e.constructor)}}else r=(t,e)=>{e instanceof Error||(e=new Error(e)),null!=e.stack&&(t.stack=e.stack)};class i extends Error{constructor(t=""){super(),this.stack="",t instanceof Error?this.message=t.message:this.message=t,Object.setPrototypeOf(this,new.target.prototype),this.name=this.constructor.name,r(this,t)}}e=t.TypedError=i;class s extends e{constructor(t){super(t)}}const o={"device:microservices":[{version:1,validFrom:new Date("2023-02-01T00:00:00Z"),firstDiscountPriceCents:149,discountRate:.33,discountThreshold:12e3,discountThresholdPriceCents:125},{version:2,validFrom:new Date("2023-03-08T00:00:00Z"),firstDiscountPriceCents:199,discountRate:.33,discountThreshold:12e3,discountThresholdPriceCents:150}]};function n(t,e){return e>=t.discountThresholdPriceCents?(e-t.firstDiscountPriceCents)*(t.discountThreshold-1)/(t.discountThresholdPriceCents-t.firstDiscountPriceCents)+1:t.discountThreshold*Math.pow(10,Math.log10(e/t.discountThresholdPriceCents)/Math.log10(1-t.discountRate))}window.CreditPricing=class{constructor(t={}){var e,r;this.credits=function(t){const e={};for(const[r,i]of Object.entries(t))e[r]=i.sort(((t,e)=>e.validFrom.getTime()-t.validFrom.getTime()));return e}(null!==(e=t.credits)&&void 0!==e?e:o),function(t){for(const[e,r]of Object.entries(t)){const t=new Set,i=new Set;for(const o of r){if(t.has(o.version))throw new s(`Duplicate version ${o.version} for feature ${e}`);const r=o.validFrom.toISOString();if(i.has(r))throw new s(`Duplicate validFrom ${r} for feature ${e}`);t.add(o.version),i.add(r)}}}(this.credits),this.target=null!==(r=t.target)&&void 0!==r?r:"current"}getDefinition(t){if(null==this.credits[t])throw new s(`Feature ${t} not supported for credits`);let e;return"latest"===this.target?this.credits[t][0]:"number"==typeof this.target?(e=this.credits[t].find((t=>t.version===this.target)),e):this.target instanceof Date?this.credits[t].find((t=>t.validFrom<=this.target)):this.credits[t].find((t=>t.validFrom<=new Date))}fixRange(t,e,r){let i=r,s=this.getCreditPrice(t,0,i);for(;s>e;)i+=1,s=this.getCreditPrice(t,0,i);for(;s===e;)i-=1,s=this.getCreditPrice(t,0,i);return i}getCreditRange(t,e,r=0){if(!Number.isInteger(e))throw new s("Unit cost must be a whole number");if(e<=0)throw new s("Unit cost must be greater than 0");if(!Number.isInteger(r))throw new s("Available credits must be a whole number");if(r<0)throw new s("Available credits must be greater than or equal to 0");const i=this.getDefinition(t);if(null==i)throw new s("Requested feature not allowed for credit usage");if(e>i.firstDiscountPriceCents)throw new s(`Unit cost cannot be greater than ${i.firstDiscountPriceCents}`);const o={from:e===i.firstDiscountPriceCents?1:Math.ceil(n(i,e+.5))};if(e>1&&(o.to=Math.floor(n(i,e-.5))),o.from>1&&(this.getCreditPrice(t,0,o.from)!==e||this.getCreditPrice(t,0,o.from-1)!==e+1)&&(o.from=this.fixRange(t,e,o.from)+1),!o.to||this.getCreditPrice(t,0,o.to)===e&&this.getCreditPrice(t,0,o.to+1)===e-1||(o.to=this.fixRange(t,e-1,o.to)),r>0&&(o.from=Math.max(o.from-r,0)),o.to&&r>0&&(o.to=Math.max(o.to-r,0)),0===o.from&&(0===o.to||null==o.to))throw new Error("Requested unit cost is too high");return o}getCreditPrice(t,e,r){if(!Number.isInteger(e))throw new s("Available credits must be a whole number");if(!Number.isInteger(r))throw new s("Credit purchase amount must be a whole number");if(e<0)throw new s("Available credits must be greater than or equal to 0");if(r<=0)throw new s("Credit purchase amount must be greater than 0");const i=this.getDefinition(t);if(null==i)throw new s("Requested feature not allowed for credit usage");const o=e+r;if(0===r||0===o)return 0;if(o<=i.discountThreshold)return Math.round(i.firstDiscountPriceCents+(i.discountThresholdPriceCents-i.firstDiscountPriceCents)/(i.discountThreshold-1)*(o-1));const n=Math.round(i.discountThresholdPriceCents*Math.pow(1-i.discountRate,Math.log10(o/i.discountThreshold)));if(n<=0)throw new s("The provided quantity surpasses the maximum supported amount of credits");return n}getCreditTotalPrice(t,e,r){return Math.round(this.getCreditPrice(t,e,r)*r)}getDiscountOverDynamic(t,e,r,i){return Math.round((i-this.getCreditPrice(t,e,r))/i*100)}getTotalSavings(t,e,r,i){return Math.round(r*(i-this.getCreditPrice(t,e,r)))}}}();
package/dist/index.d.ts CHANGED
@@ -53,12 +53,14 @@ export declare class CreditPricing {
53
53
  * Get credit amount range for a given unit cost.
54
54
  * @param featureSlug - feature slug
55
55
  * @param unitCost - unit cost
56
+ * @param availableCredits - currently available credits
56
57
  * @returns credit amount range
57
58
  *
58
59
  * @example
59
60
  * getCreditRange('device:microservices', 190);
61
+ * getCreditRange('device:microservices', 190, 1000);
60
62
  */
61
- getCreditRange(featureSlug: string, unitCost: number): CreditRange;
63
+ getCreditRange(featureSlug: string, unitCost: number, availableCredits?: number): CreditRange;
62
64
  /**
63
65
  * Calculates the price of a credit purchase
64
66
  * @param featureSlug - feature slug
package/dist/index.js CHANGED
@@ -181,12 +181,14 @@ class CreditPricing {
181
181
  * Get credit amount range for a given unit cost.
182
182
  * @param featureSlug - feature slug
183
183
  * @param unitCost - unit cost
184
+ * @param availableCredits - currently available credits
184
185
  * @returns credit amount range
185
186
  *
186
187
  * @example
187
188
  * getCreditRange('device:microservices', 190);
189
+ * getCreditRange('device:microservices', 190, 1000);
188
190
  */
189
- getCreditRange(featureSlug, unitCost) {
191
+ getCreditRange(featureSlug, unitCost, availableCredits = 0) {
190
192
  // Validate unit cost input
191
193
  if (!Number.isInteger(unitCost)) {
192
194
  throw new InvalidParametersError('Unit cost must be a whole number');
@@ -194,6 +196,12 @@ class CreditPricing {
194
196
  if (unitCost <= 0) {
195
197
  throw new InvalidParametersError('Unit cost must be greater than 0');
196
198
  }
199
+ if (!Number.isInteger(availableCredits)) {
200
+ throw new InvalidParametersError('Available credits must be a whole number');
201
+ }
202
+ if (availableCredits < 0) {
203
+ throw new InvalidParametersError('Available credits must be greater than or equal to 0');
204
+ }
197
205
  const pricing = this.getDefinition(featureSlug);
198
206
  if (pricing == null) {
199
207
  throw new InvalidParametersError('Requested feature not allowed for credit usage');
@@ -227,6 +235,19 @@ class CreditPricing {
227
235
  this.getCreditPrice(featureSlug, 0, creditRange.to + 1) === unitCost - 1)) {
228
236
  creditRange.to = this.fixRange(featureSlug, unitCost - 1, creditRange.to);
229
237
  }
238
+ // Adjust for currently available credits.
239
+ if (availableCredits > 0) {
240
+ creditRange.from = Math.max(creditRange.from - availableCredits, 0);
241
+ }
242
+ if (creditRange.to && availableCredits > 0) {
243
+ creditRange.to = Math.max(creditRange.to - availableCredits, 0);
244
+ }
245
+ // Throw error if impossible to purchase credits at requested unit cost
246
+ // after accounting for currently available credits.
247
+ if (creditRange.from === 0 &&
248
+ (creditRange.to === 0 || creditRange.to == null)) {
249
+ throw new Error('Requested unit cost is too high');
250
+ }
230
251
  return creditRange;
231
252
  }
232
253
  /**
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -53,12 +53,14 @@ export declare class CreditPricing {
53
53
  * Get credit amount range for a given unit cost.
54
54
  * @param featureSlug - feature slug
55
55
  * @param unitCost - unit cost
56
+ * @param availableCredits - currently available credits
56
57
  * @returns credit amount range
57
58
  *
58
59
  * @example
59
60
  * getCreditRange('device:microservices', 190);
61
+ * getCreditRange('device:microservices', 190, 1000);
60
62
  */
61
- getCreditRange(featureSlug: string, unitCost: number): CreditRange;
63
+ getCreditRange(featureSlug: string, unitCost: number, availableCredits?: number): CreditRange;
62
64
  /**
63
65
  * Calculates the price of a credit purchase
64
66
  * @param featureSlug - feature slug
package/dist/src/index.js CHANGED
@@ -181,12 +181,14 @@ class CreditPricing {
181
181
  * Get credit amount range for a given unit cost.
182
182
  * @param featureSlug - feature slug
183
183
  * @param unitCost - unit cost
184
+ * @param availableCredits - currently available credits
184
185
  * @returns credit amount range
185
186
  *
186
187
  * @example
187
188
  * getCreditRange('device:microservices', 190);
189
+ * getCreditRange('device:microservices', 190, 1000);
188
190
  */
189
- getCreditRange(featureSlug, unitCost) {
191
+ getCreditRange(featureSlug, unitCost, availableCredits = 0) {
190
192
  // Validate unit cost input
191
193
  if (!Number.isInteger(unitCost)) {
192
194
  throw new InvalidParametersError('Unit cost must be a whole number');
@@ -194,6 +196,12 @@ class CreditPricing {
194
196
  if (unitCost <= 0) {
195
197
  throw new InvalidParametersError('Unit cost must be greater than 0');
196
198
  }
199
+ if (!Number.isInteger(availableCredits)) {
200
+ throw new InvalidParametersError('Available credits must be a whole number');
201
+ }
202
+ if (availableCredits < 0) {
203
+ throw new InvalidParametersError('Available credits must be greater than or equal to 0');
204
+ }
197
205
  const pricing = this.getDefinition(featureSlug);
198
206
  if (pricing == null) {
199
207
  throw new InvalidParametersError('Requested feature not allowed for credit usage');
@@ -227,6 +235,19 @@ class CreditPricing {
227
235
  this.getCreditPrice(featureSlug, 0, creditRange.to + 1) === unitCost - 1)) {
228
236
  creditRange.to = this.fixRange(featureSlug, unitCost - 1, creditRange.to);
229
237
  }
238
+ // Adjust for currently available credits.
239
+ if (availableCredits > 0) {
240
+ creditRange.from = Math.max(creditRange.from - availableCredits, 0);
241
+ }
242
+ if (creditRange.to && availableCredits > 0) {
243
+ creditRange.to = Math.max(creditRange.to - availableCredits, 0);
244
+ }
245
+ // Throw error if impossible to purchase credits at requested unit cost
246
+ // after accounting for currently available credits.
247
+ if (creditRange.from === 0 &&
248
+ (creditRange.to === 0 || creditRange.to == null)) {
249
+ throw new Error('Requested unit cost is too high');
250
+ }
230
251
  return creditRange;
231
252
  }
232
253
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;AAAA,6CAAyC;AAyBzC,MAAa,sBAAuB,SAAQ,wBAAU;IACrD,YAAY,OAAe;QAC1B,KAAK,CAAC,OAAO,CAAC,CAAC;IAChB,CAAC;CACD;AAJD,wDAIC;AAED,8BAA8B;AAC9B,MAAM,OAAO,GAAY;IACxB,sBAAsB,EAAE;QACvB;YACC,OAAO,EAAE,CAAC;YACV,SAAS,EAAE,IAAI,IAAI,CAAC,sBAAsB,CAAC;YAC3C,uBAAuB,EAAE,GAAG;YAC5B,YAAY,EAAE,IAAI;YAClB,iBAAiB,EAAE,KAAK;YACxB,2BAA2B,EAAE,GAAG;SAChC;QACD;YACC,OAAO,EAAE,CAAC;YACV,SAAS,EAAE,IAAI,IAAI,CAAC,sBAAsB,CAAC;YAC3C,uBAAuB,EAAE,GAAG;YAC5B,YAAY,EAAE,IAAI;YAClB,iBAAiB,EAAE,KAAK;YACxB,2BAA2B,EAAE,GAAG;SAChC;KACD;CACD,CAAC;AAEF;;;;;;;GAOG;AACH,SAAS,eAAe,CAAC,OAAgB;IACxC,qDAAqD;IACrD,KAAK,MAAM,CAAC,IAAI,EAAE,WAAW,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE;QAC1D,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAU,CAAC;QACnC,MAAM,UAAU,GAAG,IAAI,GAAG,EAAU,CAAC;QACrC,KAAK,MAAM,UAAU,IAAI,WAAW,EAAE;YACrC,IAAI,QAAQ,CAAC,GAAG,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE;gBACrC,MAAM,IAAI,sBAAsB,CAC/B,qBAAqB,UAAU,CAAC,OAAO,gBAAgB,IAAI,EAAE,CAC7D,CAAC;aACF;YAED,MAAM,SAAS,GAAG,UAAU,CAAC,SAAS,CAAC,WAAW,EAAE,CAAC;YACrD,IAAI,UAAU,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE;gBAC9B,MAAM,IAAI,sBAAsB,CAC/B,uBAAuB,SAAS,gBAAgB,IAAI,EAAE,CACtD,CAAC;aACF;YAED,QAAQ,CAAC,GAAG,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;YACjC,UAAU,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;SAC1B;KACD;AACF,CAAC;AAED;;;;;;;;GAQG;AACH,SAAS,eAAe,CAAC,OAAe,EAAE,QAAgB;IACzD,IAAI,QAAQ,IAAI,OAAO,CAAC,2BAA2B,EAAE;QACpD,OAAO,CACN,CAAC,CAAC,QAAQ,GAAG,OAAO,CAAC,uBAAuB,CAAC;YAC5C,CAAC,OAAO,CAAC,iBAAiB,GAAG,CAAC,CAAC,CAAC;YAChC,CAAC,OAAO,CAAC,2BAA2B;gBACnC,OAAO,CAAC,uBAAuB,CAAC;YAClC,CAAC,CACD,CAAC;KACF;IAED,OAAO,CACN,OAAO,CAAC,iBAAiB;QACzB,EAAE;YACD,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,GAAG,OAAO,CAAC,2BAA2B,CAAC;gBAC1D,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC,CACvC,CAAC;AACH,CAAC;AAED;;;;;;;;GAQG;AACH,SAAS,WAAW,CAAC,OAAgB;IACpC,MAAM,aAAa,GAAY,EAAE,CAAC;IAClC,KAAK,MAAM,CAAC,IAAI,EAAE,WAAW,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE;QAC1D,aAAa,CAAC,IAAI,CAAC,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;YAC/C,OAAO,CAAC,CAAC,SAAS,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC;QACtD,CAAC,CAAC,CAAC;KACH;IACD,OAAO,aAAa,CAAC;AACtB,CAAC;AAED,MAAa,aAAa;IAClB,OAAO,CAA+B;IACrC,MAAM,CAAuC;IAErD,YAAmB,UAAmB,EAAE;QACvC,qDAAqD;QACrD,IAAI,CAAC,OAAO,GAAG,WAAW,CAAC,OAAO,CAAC,OAAO,IAAI,OAAO,CAAC,CAAC;QACvD,eAAe,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAE9B,kDAAkD;QAClD,uDAAuD;QACvD,yDAAyD;QACzD,+BAA+B;QAC/B,2DAA2D;QAC3D,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,IAAI,SAAS,CAAC;IAC3C,CAAC;IAED;;;;;;;OAOG;IACI,aAAa,CAAC,WAAmB;QACvC,IAAI,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,IAAI,EAAE;YACtC,MAAM,IAAI,sBAAsB,CAC/B,WAAW,WAAW,4BAA4B,CAClD,CAAC;SACF;QAED,IAAI,UAA8B,CAAC;QAEnC,+DAA+D;QAC/D,8DAA8D;QAC9D,4DAA4D;QAC5D,IAAI,IAAI,CAAC,MAAM,KAAK,QAAQ,EAAE;YAC7B,OAAO,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC;SACpC;QAED,8DAA8D;QAC9D,IAAI,OAAO,IAAI,CAAC,MAAM,KAAK,QAAQ,EAAE;YACpC,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE;gBACtD,OAAO,MAAM,CAAC,OAAO,KAAK,IAAI,CAAC,MAAM,CAAC;YACvC,CAAC,CAAC,CAAC;YACH,OAAO,UAAU,CAAC;SAClB;QAED,+DAA+D;QAC/D,4BAA4B;QAC5B,IAAI,IAAI,CAAC,MAAM,YAAY,IAAI,EAAE;YAChC,OAAO,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE;gBAC7C,OAAO,GAAG,CAAC,SAAS,IAAI,IAAI,CAAC,MAAM,CAAC;YACrC,CAAC,CAAC,CAAC;SACH;QAED,0DAA0D;QAC1D,oCAAoC;QACpC,OAAO,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE;YAC7C,OAAO,GAAG,CAAC,SAAS,IAAI,IAAI,IAAI,EAAE,CAAC;QACpC,CAAC,CAAC,CAAC;IACJ,CAAC;IAED;;;;;;;;;;;OAWG;IACK,QAAQ,CACf,WAAmB,EACnB,aAAqB,EACrB,MAAc;QAEd,IAAI,KAAK,GAAW,MAAM,CAAC;QAE3B,IAAI,QAAQ,GAAG,IAAI,CAAC,cAAc,CAAC,WAAW,EAAE,CAAC,EAAE,KAAK,CAAC,CAAC;QAE1D,uCAAuC;QACvC,2DAA2D;QAC3D,OAAO,QAAQ,GAAG,aAAa,EAAE;YAChC,KAAK,GAAG,KAAK,GAAG,CAAC,CAAC;YAClB,QAAQ,GAAG,IAAI,CAAC,cAAc,CAAC,WAAW,EAAE,CAAC,EAAE,KAAK,CAAC,CAAC;SACtD;QAED,oDAAoD;QACpD,uEAAuE;QACvE,OAAO,QAAQ,KAAK,aAAa,EAAE;YAClC,KAAK,GAAG,KAAK,GAAG,CAAC,CAAC;YAClB,QAAQ,GAAG,IAAI,CAAC,cAAc,CAAC,WAAW,EAAE,CAAC,EAAE,KAAK,CAAC,CAAC;SACtD;QAED,OAAO,KAAK,CAAC;IACd,CAAC;IAED;;;;;;;;OAQG;IACI,cAAc,CAAC,WAAmB,EAAE,QAAgB;QAC1D,2BAA2B;QAC3B,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE;YAChC,MAAM,IAAI,sBAAsB,CAAC,kCAAkC,CAAC,CAAC;SACrE;QACD,IAAI,QAAQ,IAAI,CAAC,EAAE;YAClB,MAAM,IAAI,sBAAsB,CAAC,kCAAkC,CAAC,CAAC;SACrE;QAED,MAAM,OAAO,GAAG,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC,CAAC;QAChD,IAAI,OAAO,IAAI,IAAI,EAAE;YACpB,MAAM,IAAI,sBAAsB,CAC/B,gDAAgD,CAChD,CAAC;SACF;QAED,qEAAqE;QACrE,IAAI,QAAQ,GAAG,OAAO,CAAC,uBAAuB,EAAE;YAC/C,MAAM,IAAI,sBAAsB,CAC/B,oCAAoC,OAAO,CAAC,uBAAuB,EAAE,CACrE,CAAC;SACF;QAED,iEAAiE;QACjE,6DAA6D;QAC7D,+DAA+D;QAC/D,kCAAkC;QAClC,MAAM,WAAW,GAAgB;YAChC,IAAI,EACH,QAAQ,KAAK,OAAO,CAAC,uBAAuB;gBAC3C,CAAC,CAAC,CAAC;gBACH,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,OAAO,EAAE,QAAQ,GAAG,GAAG,CAAC,CAAC;SACvD,CAAC;QACF,IAAI,QAAQ,GAAG,CAAC,EAAE;YACjB,WAAW,CAAC,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,OAAO,EAAE,QAAQ,GAAG,GAAG,CAAC,CAAC,CAAC;SACtE;QAED,qFAAqF;QACrF,IACC,WAAW,CAAC,IAAI,GAAG,CAAC;YACpB,CAAC,CACA,IAAI,CAAC,cAAc,CAAC,WAAW,EAAE,CAAC,EAAE,WAAW,CAAC,IAAI,CAAC,KAAK,QAAQ;gBAClE,IAAI,CAAC,cAAc,CAAC,WAAW,EAAE,CAAC,EAAE,WAAW,CAAC,IAAI,GAAG,CAAC,CAAC;oBACxD,QAAQ,GAAG,CAAC,CACb,EACA;YACD,WAAW,CAAC,IAAI;gBACf,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,QAAQ,EAAE,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;SAC5D;QACD,IACC,WAAW,CAAC,EAAE;YACd,CAAC,CACA,IAAI,CAAC,cAAc,CAAC,WAAW,EAAE,CAAC,EAAE,WAAW,CAAC,EAAE,CAAC,KAAK,QAAQ;gBAChE,IAAI,CAAC,cAAc,CAAC,WAAW,EAAE,CAAC,EAAE,WAAW,CAAC,EAAE,GAAG,CAAC,CAAC,KAAK,QAAQ,GAAG,CAAC,CACxE,EACA;YACD,WAAW,CAAC,EAAE,GAAG,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,QAAQ,GAAG,CAAC,EAAE,WAAW,CAAC,EAAE,CAAC,CAAC;SAC1E;QAED,OAAO,WAAW,CAAC;IACpB,CAAC;IAED;;;;;;;;;OASG;IACI,cAAc,CACpB,WAAmB,EACnB,gBAAwB,EACxB,iBAAyB;QAEzB,uCAAuC;QACvC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,gBAAgB,CAAC,EAAE;YACxC,MAAM,IAAI,sBAAsB,CAC/B,0CAA0C,CAC1C,CAAC;SACF;QACD,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,iBAAiB,CAAC,EAAE;YACzC,MAAM,IAAI,sBAAsB,CAC/B,+CAA+C,CAC/C,CAAC;SACF;QACD,IAAI,gBAAgB,GAAG,CAAC,EAAE;YACzB,MAAM,IAAI,sBAAsB,CAC/B,sDAAsD,CACtD,CAAC;SACF;QACD,IAAI,iBAAiB,IAAI,CAAC,EAAE;YAC3B,MAAM,IAAI,sBAAsB,CAC/B,+CAA+C,CAC/C,CAAC;SACF;QAED,MAAM,OAAO,GAAG,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC,CAAC;QAChD,IAAI,OAAO,IAAI,IAAI,EAAE;YACpB,MAAM,IAAI,sBAAsB,CAC/B,gDAAgD,CAChD,CAAC;SACF;QACD,MAAM,KAAK,GAAG,gBAAgB,GAAG,iBAAiB,CAAC;QACnD,IAAI,iBAAiB,KAAK,CAAC,IAAI,KAAK,KAAK,CAAC,EAAE;YAC3C,OAAO,CAAC,CAAC;SACT;QACD,IAAI,KAAK,IAAI,OAAO,CAAC,iBAAiB,EAAE;YACvC,OAAO,IAAI,CAAC,KAAK,CAChB,OAAO,CAAC,uBAAuB;gBAC9B,CAAC,CAAC,OAAO,CAAC,2BAA2B;oBACpC,OAAO,CAAC,uBAAuB,CAAC;oBAChC,CAAC,OAAO,CAAC,iBAAiB,GAAG,CAAC,CAAC,CAAC;oBAChC,CAAC,KAAK,GAAG,CAAC,CAAC,CACb,CAAC;SACF;QAED,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CACxB,OAAO,CAAC,2BAA2B;YAClC,IAAI,CAAC,GAAG,CACP,CAAC,GAAG,OAAO,CAAC,YAAY,EACxB,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAC7C,CACF,CAAC;QACF,IAAI,MAAM,IAAI,CAAC,EAAE;YAChB,MAAM,IAAI,sBAAsB,CAC/B,yEAAyE,CACzE,CAAC;SACF;QACD,OAAO,MAAM,CAAC;IACf,CAAC;IAED;;;;;;;;;OASG;IACI,mBAAmB,CACzB,WAAmB,EACnB,gBAAwB,EACxB,iBAAyB;QAEzB,OAAO,IAAI,CAAC,KAAK,CAChB,IAAI,CAAC,cAAc,CAAC,WAAW,EAAE,gBAAgB,EAAE,iBAAiB,CAAC;YACpE,iBAAiB,CAClB,CAAC;IACH,CAAC;IAED;;;;;;;;;;OAUG;IACI,sBAAsB,CAC5B,WAAmB,EACnB,gBAAwB,EACxB,iBAAyB,EACzB,iBAAyB;QAEzB,OAAO,IAAI,CAAC,KAAK,CAChB,CAAC,CAAC,iBAAiB;YAClB,IAAI,CAAC,cAAc,CAAC,WAAW,EAAE,gBAAgB,EAAE,iBAAiB,CAAC,CAAC;YACtE,iBAAiB,CAAC;YAClB,GAAG,CACJ,CAAC;IACH,CAAC;IAED;;;;;;;;;;OAUG;IACI,eAAe,CACrB,WAAmB,EACnB,gBAAwB,EACxB,iBAAyB,EACzB,iBAAyB;QAEzB,OAAO,IAAI,CAAC,KAAK,CAChB,iBAAiB;YAChB,CAAC,iBAAiB;gBACjB,IAAI,CAAC,cAAc,CAClB,WAAW,EACX,gBAAgB,EAChB,iBAAiB,CACjB,CAAC,CACJ,CAAC;IACH,CAAC;CACD;AA9TD,sCA8TC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
@@ -242,6 +242,19 @@ describe('getCreditRange()', function () {
242
242
  pricing.getCreditRange('buz-bar', testCredit.firstDiscountPriceCents - 1);
243
243
  }).to.throw('Feature buz-bar not supported for credits');
244
244
  });
245
+ it('should throw on non-integer available credits', function () {
246
+ (0, chai_1.expect)(() => {
247
+ pricing.getCreditRange(FEATURE_SLUG, testCredit.firstDiscountPriceCents - 1, NaN);
248
+ }).to.throw('Available credits must be a whole number');
249
+ (0, chai_1.expect)(() => {
250
+ pricing.getCreditRange(FEATURE_SLUG, testCredit.firstDiscountPriceCents - 1, 10.5);
251
+ }).to.throw('Available credits must be a whole number');
252
+ });
253
+ it('should throw on negative available credits', function () {
254
+ (0, chai_1.expect)(() => {
255
+ pricing.getCreditRange(FEATURE_SLUG, testCredit.firstDiscountPriceCents - 1, -1);
256
+ }).to.throw('Available credits must be greater than or equal to 0');
257
+ });
245
258
  it('should throw on non-integer unit cost', function () {
246
259
  (0, chai_1.expect)(() => {
247
260
  pricing.getCreditRange(FEATURE_SLUG, NaN);
@@ -265,27 +278,47 @@ describe('getCreditRange()', function () {
265
278
  pricing.getCreditRange(FEATURE_SLUG, testCredit.firstDiscountPriceCents + 1);
266
279
  }).to.throw(`Unit cost cannot be greater than ${testCredit.firstDiscountPriceCents}`);
267
280
  });
268
- for (let unitCost = testCredit.firstDiscountPriceCents; unitCost >= 1; unitCost--) {
269
- it(`should return correct credit bounds for ${unitCost} unit cost`, function () {
270
- // Generate a credit range for the given unit cost,
271
- // then check that the returned range numbers are exactly
272
- // on the border between the higher and lower unit costs.
273
- const creditRange = pricing.getCreditRange(FEATURE_SLUG, unitCost);
274
- if (creditRange.from) {
275
- (0, chai_1.expect)(unitCost).to.eq(pricing.getCreditPrice(FEATURE_SLUG, 0, creditRange.from));
276
- if (unitCost === testCredit.firstDiscountPriceCents) {
277
- (0, chai_1.expect)(creditRange.from).to.eq(1);
278
- }
279
- else {
280
- (0, chai_1.expect)(unitCost + 1).to.eq(pricing.getCreditPrice(FEATURE_SLUG, 0, creditRange.from - 1));
281
- }
282
- }
283
- if (creditRange.to) {
284
- (0, chai_1.expect)(unitCost).to.eq(pricing.getCreditPrice(FEATURE_SLUG, 0, creditRange.to));
285
- (0, chai_1.expect)(unitCost - 1).to.eq(pricing.getCreditPrice(FEATURE_SLUG, 0, creditRange.to + 1));
281
+ it('should throw when requested unit cost is too high after accounting for available credits', function () {
282
+ (0, chai_1.expect)(() => {
283
+ pricing.getCreditRange(FEATURE_SLUG, testCredit.firstDiscountPriceCents, testCredit.discountThreshold * 2);
284
+ }).to.throw('Requested unit cost is too high');
285
+ });
286
+ [
287
+ {
288
+ description: 'when available credits are 0',
289
+ availableCredits: 0,
290
+ from: testCredit.firstDiscountPriceCents,
291
+ },
292
+ {
293
+ description: 'when available credits are at the aggressive discount threshold',
294
+ availableCredits: testCredit.discountThreshold,
295
+ from: testCredit.discountThresholdPriceCents,
296
+ },
297
+ ].forEach(({ description, availableCredits, from }) => {
298
+ describe(description, function () {
299
+ for (let unitCost = from; unitCost >= 1; unitCost--) {
300
+ it(`should return correct credit bounds for ${unitCost} unit cost`, function () {
301
+ // Generate a credit range for the given unit cost,
302
+ // then check that the returned range numbers are exactly
303
+ // on the border between the higher and lower unit costs.
304
+ const creditRange = pricing.getCreditRange(FEATURE_SLUG, unitCost, availableCredits);
305
+ if (creditRange.from) {
306
+ (0, chai_1.expect)(unitCost).to.eq(pricing.getCreditPrice(FEATURE_SLUG, availableCredits, creditRange.from));
307
+ if (unitCost === testCredit.firstDiscountPriceCents) {
308
+ (0, chai_1.expect)(creditRange.from).to.eq(1);
309
+ }
310
+ else {
311
+ (0, chai_1.expect)(unitCost + 1).to.eq(pricing.getCreditPrice(FEATURE_SLUG, availableCredits, creditRange.from - 1));
312
+ }
313
+ }
314
+ if (creditRange.to) {
315
+ (0, chai_1.expect)(unitCost).to.eq(pricing.getCreditPrice(FEATURE_SLUG, availableCredits, creditRange.to));
316
+ (0, chai_1.expect)(unitCost - 1).to.eq(pricing.getCreditPrice(FEATURE_SLUG, availableCredits, creditRange.to + 1));
317
+ }
318
+ });
286
319
  }
287
320
  });
288
- }
321
+ });
289
322
  });
290
323
  describe('getCreditPrice()', function () {
291
324
  it('should throw on invalid feature slug', function () {
@@ -1 +1 @@
1
- {"version":3,"file":"index.spec.js","sourceRoot":"","sources":["../../test/index.spec.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.spec.js","sourceRoot":"","sources":["../../test/index.spec.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@balena/balena-pricing",
3
- "version": "1.2.1",
3
+ "version": "1.3.0",
4
4
  "description": "Balena pricing/savings calculators",
5
5
  "homepage": "https://github.com/balena-io-modules/balena-pricing#readme",
6
6
  "main": "dist",
@@ -67,7 +67,7 @@
67
67
  "_": "test/*.spec.ts"
68
68
  },
69
69
  "versionist": {
70
- "publishedAt": "2023-03-25T12:28:30.661Z"
70
+ "publishedAt": "2023-03-28T01:01:20.932Z"
71
71
  },
72
72
  "dependencies": {
73
73
  "typed-error": "^3.2.1"