@voucherify/sdk 2.0.15 → 2.0.17

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 CHANGED
@@ -1,5 +1,17 @@
1
1
  # @voucherify/sdk
2
2
 
3
+ ## 2.0.17
4
+
5
+ ### Patch Changes
6
+
7
+ - [`8bb9bb5`](https://github.com/voucherifyio/voucherify-js-sdk/commit/8bb9bb5f48ee2a9b00038c192c39431567f34309) [#156](https://github.com/voucherifyio/voucherify-js-sdk/pull/156) Thanks [@Davies-Owen](https://github.com/Davies-Owen)! - add missing created_at property to VouchersResponse, LoyaltiesRedeemRewardResponse, CampaignsAddVoucherResponse, and ClientSideVoucherListing interfaces
8
+
9
+ ## 2.0.16
10
+
11
+ ### Patch Changes
12
+
13
+ - [`0960598`](https://github.com/voucherifyio/voucherify-js-sdk/commit/09605985dfa33b5902ce1f4994a1cb17526a8407) [#154](https://github.com/voucherifyio/voucherify-js-sdk/pull/154) Thanks [@Davies-Owen](https://github.com/Davies-Owen)! - Add missing property to OrdersCreateResponse interface
14
+
3
15
  ## 2.0.15
4
16
 
5
17
  ### Patch Changes
@@ -28,11 +28,11 @@ export declare class Campaigns {
28
28
  /**
29
29
  * @see https://docs.voucherify.io/reference/add-voucher-to-campaign
30
30
  */
31
- addVoucher(name: string, body?: T.CampaignsAddVoucherBody, params?: T.CampaignsAddVoucherParams): Promise<{} | Pick<import("./types").VouchersResponse, "object" | "active" | "type" | "category" | "start_date" | "expiration_date" | "metadata" | "redemption" | "additional_info" | "code" | "discount" | "campaign" | "gift" | "publish">>;
31
+ addVoucher(name: string, body?: T.CampaignsAddVoucherBody, params?: T.CampaignsAddVoucherParams): Promise<{} | Pick<import("./types").VouchersResponse, "object" | "created_at" | "active" | "type" | "category" | "start_date" | "expiration_date" | "metadata" | "redemption" | "additional_info" | "code" | "discount" | "campaign" | "gift" | "publish">>;
32
32
  /**
33
33
  * @see https://docs.voucherify.io/reference/add-voucher-with-certain-code-to-campaign
34
34
  */
35
- addCertainVoucher(name: string, code: string, body?: T.CampaignsAddCertainVoucherParams): Promise<Pick<import("./types").VouchersResponse, "object" | "active" | "type" | "category" | "start_date" | "expiration_date" | "metadata" | "redemption" | "additional_info" | "code" | "discount" | "campaign" | "gift" | "publish">>;
35
+ addCertainVoucher(name: string, code: string, body?: T.CampaignsAddCertainVoucherParams): Promise<Pick<import("./types").VouchersResponse, "object" | "created_at" | "active" | "type" | "category" | "start_date" | "expiration_date" | "metadata" | "redemption" | "additional_info" | "code" | "discount" | "campaign" | "gift" | "publish">>;
36
36
  /**
37
37
  * @see https://docs.voucherify.io/reference/import-vouchers
38
38
  */
@@ -20,7 +20,7 @@ export declare class Vouchers {
20
20
  /**
21
21
  * @see https://docs.voucherify.io/reference/create-voucher
22
22
  */
23
- create(voucher: T.VouchersCreate): Promise<Pick<T.VouchersResponse, "object" | "type" | "discount" | "gift" | "category" | "additional_info" | "start_date" | "expiration_date" | "metadata" | "id" | "code" | "campaign" | "loyalty_card" | "validity_timeframe" | "validity_day_of_week" | "publish" | "redemption" | "active" | "assets" | "is_referral_code" | "referrer_id" | "holder_id" | "updated_at">>;
23
+ create(voucher: T.VouchersCreate): Promise<Pick<T.VouchersResponse, "object" | "type" | "discount" | "gift" | "category" | "additional_info" | "start_date" | "expiration_date" | "metadata" | "id" | "code" | "campaign" | "loyalty_card" | "validity_timeframe" | "validity_day_of_week" | "publish" | "redemption" | "active" | "assets" | "is_referral_code" | "referrer_id" | "holder_id" | "updated_at" | "created_at">>;
24
24
  /**
25
25
  * @see https://docs.voucherify.io/reference/vouchers-get
26
26
  */
@@ -93,7 +93,7 @@ export interface CampaignsAddVoucherParams {
93
93
  vouchers_count?: number;
94
94
  }
95
95
  export declare type CampaignsAddCertainVoucherParams = Pick<Partial<VouchersImport>, 'category' | 'redemption' | 'metadata' | 'additional_info'>;
96
- export declare type CampaignsAddVoucherResponse = Pick<VouchersResponse, 'code' | 'object' | 'campaign' | 'category' | 'type' | 'discount' | 'gift' | 'start_date' | 'expiration_date' | 'publish' | 'redemption' | 'active' | 'additional_info' | 'metadata'>;
96
+ export declare type CampaignsAddVoucherResponse = Pick<VouchersResponse, 'code' | 'object' | 'campaign' | 'category' | 'created_at' | 'type' | 'discount' | 'gift' | 'start_date' | 'expiration_date' | 'publish' | 'redemption' | 'active' | 'additional_info' | 'metadata'>;
97
97
  export declare type CampaignsAddCertainVoucherResponse = CampaignsAddVoucherResponse;
98
98
  export declare type CampaignsImportVouchers = Pick<VouchersImport, 'code' | 'redemption' | 'metadata' | 'additional_info' | 'active'>;
99
99
  export interface CampaignsListParams {
@@ -30,7 +30,7 @@ export interface ClientSideValidateParams {
30
30
  session_ttl_unit?: 'MILLISECONDS' | 'SECONDS' | 'MINUTES' | 'HOURS' | 'DAYS';
31
31
  }
32
32
  export declare type ClientSideListVouchersParams = VouchersListParams;
33
- export declare type ClientSideVoucherListing = Pick<VouchersResponse, 'active' | 'code' | 'metadata' | 'assets' | 'object' | 'expiration_date' | 'start_date'>;
33
+ export declare type ClientSideVoucherListing = Pick<VouchersResponse, 'active' | 'code' | 'metadata' | 'assets' | 'object' | 'expiration_date' | 'start_date' | 'created_at'>;
34
34
  export interface ClientSideListVouchersResponse {
35
35
  object: 'list';
36
36
  total: number;
@@ -436,6 +436,7 @@ export interface LoyaltiesRedeemRewardResponse {
436
436
  is_referral_code: boolean;
437
437
  referrer_id: string;
438
438
  holder_id: string;
439
+ created_at: string;
439
440
  updated_at: string;
440
441
  holder: {
441
442
  id: string;
@@ -53,6 +53,7 @@ export interface OrdersCreateResponse {
53
53
  total_discount_amount?: number;
54
54
  applied_discount_amount?: number;
55
55
  items_applied_discount_amount?: number;
56
+ total_amount?: number;
56
57
  total_applied_discount_amount?: number;
57
58
  items?: OrdersItem[];
58
59
  metadata?: Record<string, any>;
@@ -75,6 +75,7 @@ export interface VouchersResponse {
75
75
  referrer_id?: string;
76
76
  holder_id?: string;
77
77
  updated_at?: string;
78
+ created_at: string;
78
79
  object: 'voucher';
79
80
  validation_rules_assignments: {
80
81
  object: 'list';
@@ -1427,7 +1427,7 @@ function VoucherifyServerSide(options) {
1427
1427
  let headers = {
1428
1428
  'X-App-Id': options.applicationId,
1429
1429
  'X-App-Token': options.secretKey,
1430
- 'X-Voucherify-Channel': options.channel || `${environment()}-SDK-v${"2.0.15"}`,
1430
+ 'X-Voucherify-Channel': options.channel || `${environment()}-SDK-v${"2.0.17"}`,
1431
1431
  'Content-Type': 'application/json'
1432
1432
  };
1433
1433
 
@@ -1676,7 +1676,7 @@ function VoucherifyClientSide(options) {
1676
1676
  let headers = {
1677
1677
  'X-Client-Application-Id': options.clientApplicationId,
1678
1678
  'X-Client-Token': options.clientSecretKey,
1679
- 'X-Voucherify-Channel': `${environment()}-ClientSide-SDK-v${"2.0.15"}`
1679
+ 'X-Voucherify-Channel': `${environment()}-ClientSide-SDK-v${"2.0.17"}`
1680
1680
  };
1681
1681
 
1682
1682
  if (environment().startsWith('Node')) {
@@ -1431,7 +1431,7 @@
1431
1431
  let headers = {
1432
1432
  'X-App-Id': options.applicationId,
1433
1433
  'X-App-Token': options.secretKey,
1434
- 'X-Voucherify-Channel': options.channel || `${environment()}-SDK-v${"2.0.15"}`,
1434
+ 'X-Voucherify-Channel': options.channel || `${environment()}-SDK-v${"2.0.17"}`,
1435
1435
  'Content-Type': 'application/json'
1436
1436
  };
1437
1437
 
@@ -1680,7 +1680,7 @@
1680
1680
  let headers = {
1681
1681
  'X-Client-Application-Id': options.clientApplicationId,
1682
1682
  'X-Client-Token': options.clientSecretKey,
1683
- 'X-Voucherify-Channel': `${environment()}-ClientSide-SDK-v${"2.0.15"}`
1683
+ 'X-Voucherify-Channel': `${environment()}-ClientSide-SDK-v${"2.0.17"}`
1684
1684
  };
1685
1685
 
1686
1686
  if (environment().startsWith('Node')) {
@@ -1,2 +1,2 @@
1
- !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("axios"),require("qs")):"function"==typeof define&&define.amd?define(["exports","axios","qs"],t):t((e=e||self).VoucherifySDK={},e.axios,e.Qs)}(this,(function(e,t,s){"use strict";var i;t=t&&Object.prototype.hasOwnProperty.call(t,"default")?t.default:t,s=s&&Object.prototype.hasOwnProperty.call(s,"default")?s.default:s,(i=e.DiscountVouchersTypesEnum||(e.DiscountVouchersTypesEnum={})).AMOUNT="AMOUNT",i.PERCENT="PERCENT",i.UNIT="UNIT",i.FIXED="FIXED";class r extends Error{constructor(e,t){var s,i;super((null==(i=t=null!=(s=t)?s:{})?void 0:i.message)||function(e,t){return`Unexpected status code: ${t} - Details: ${e="string"==typeof e?e:JSON.stringify(e,null,2)}`}(t,e)),Object.assign(this,t)}}class n{constructor({basePath:e,baseURL:s,headers:i}){this.baseURL=void 0,this.basePath=void 0,this.headers=void 0,this.request=void 0,this.lastResponseHeaders=void 0,this.isLastResponseHeadersSet=void 0,this.basePath=e,this.baseURL=s,this.headers=i,this.lastResponseHeaders={},this.isLastResponseHeadersSet=!1,this.request=t.create({baseURL:`${this.baseURL}/${this.basePath}/`,headers:this.headers,responseType:"json"}),this.request.interceptors.response.use(void 0,e=>{var t;return null!=e&&null!=(t=e.response)&&t.status?Promise.reject(new r(e.response.status,e.response.data)):Promise.reject(e)})}isLastReponseHeadersSet(){return this.isLastResponseHeadersSet}getLastResponseHeaders(){return this.lastResponseHeaders}setLastResponseHeaders(e){this.lastResponseHeaders=e,this.isLastResponseHeadersSet=!0}setBaseUrl(e){this.baseURL=e,this.request.defaults.baseURL=`${e}/${this.basePath}/`}async get(e,t){const i=await this.request.get(e,{params:t,paramsSerializer:function(e){return s.stringify(e)}});return this.setLastResponseHeaders(i.headers),i.data}async post(e,t,i,r){const n=await this.request.post(e,t,{params:i,paramsSerializer:function(e){return s.stringify(e)},headers:r});return this.setLastResponseHeaders(n.headers),n.data}async put(e,t,s){const i=await this.request.put(e,t,{params:s});return this.setLastResponseHeaders(i.headers),i.data}async delete(e,t){const s=await this.request.delete(e,{params:t});return this.setLastResponseHeaders(s.headers),s.data}}function o(e=""){return encodeURIComponent(e)}function c(e){return"string"==typeof e}function a(e){return null==e||c(e)}function l(e){return"object"==typeof e&&!Array.isArray(e)&&null!==e}function u(e){return null==e||l(e)}function d(){return"undefined"!=typeof window&&void 0!==window.document?"Browser":"object"==typeof self&&self.constructor&&"DedicatedWorkerGlobalScope"===self.constructor.name?"WebWorker":"undefined"!=typeof process&&null!=process.versions&&null!=process.versions.node?"Node.js-"+process.version:"undefined"!=typeof window&&"nodejs"===window.name||navigator.userAgent.includes("Node.js")||navigator.userAgent.includes("jsdom")?"JsDom":"Unknown"}function h(e,t){if(!e)throw new Error(t)}function p(e,t){return Object.fromEntries(Object.entries(e).filter(([e])=>!t.includes(e)))}class m{constructor(e){this.client=void 0,this.client=e}get(e){return this.client.get("/async-actions/"+o(e))}list(e){return this.client.get("/async-actions",e)}}class g{constructor(e){this.client=void 0,this.client=e}examine(e={},t){return this.client.post("/campaigns/qualification",e,t)}}class v{constructor(e){this.client=void 0,this.qualifications=void 0,this.client=e,this.qualifications=new g(this.client)}create(e){return this.client.post("/campaigns",e)}update(e,t){return this.client.put("/campaigns/"+o(e),t)}get(e){return this.client.get("/campaigns/"+o(e))}delete(e,t={}){return this.client.delete("/campaigns/"+o(e),t)}addVoucher(e,t={},s={}){return this.client.post(`/campaigns/${o(e)}/vouchers`,t,s)}addCertainVoucher(e,t,s={}){return this.client.post(`/campaigns/${o(e)}/vouchers/${o(t)}`,s)}importVouchers(e,t){return this.client.post(`/campaigns/${o(e)}/import`,t)}list(e={}){return this.client.get("/campaigns",e)}}class y{constructor(e){this.client=void 0,this.client=e}list(e={}){return this.client.get("/publications",e)}create(e){return this.client.post("/publications",e)}}class b{constructor(e,t){this.client=void 0,this.exports=void 0,this.publications=void 0,this.client=e,this.exports=t,this.publications=new y(this.client)}}class f{constructor(e){this.client=void 0,this.client=e}create(e){return this.client.post("/exports",e)}get(e){return this.client.get("/exports/"+o(e))}delete(e){return this.client.delete("/exports/"+o(e))}}class w{constructor(e){this.client=void 0,this.client=e}create(e,t){return t={...t,event:e},this.client.post("/events",t)}}class ${constructor(e){this.client=void 0,this.client=e}create(e,t){return this.client.post(`/vouchers/${o(e)}/balance`,t)}}class k{constructor(e){this.client=void 0,this.client=e}examine(e,t={}){return this.client.post("/vouchers/qualification",e,t)}}class R{constructor(e,t){this.client=void 0,this.balance=void 0,this.qualifications=void 0,this.client=e,this.balance=t,this.qualifications=new k(this.client)}create(e){return this.client.post("/vouchers/"+o(e.code),e)}get(e){return this.client.get("/vouchers/"+o(e))}update(e){return this.client.put("/vouchers/"+o(e.code),e)}delete(e,t={}){return this.client.delete("/vouchers/"+o(e),t)}list(e={}){return this.client.get("/vouchers",e)}enable(e){return this.client.post(`/vouchers/${o(e)}/enable`,{})}disable(e){return this.client.post(`/vouchers/${o(e)}/disable`,{})}import(e){return this.client.post("/vouchers/import",e)}bulkUpdateMetadata(e){return this.client.post("/vouchers/metadata/async",e)}bulkUpdate(e){return this.client.post("/vouchers/bulk/async",e)}releaseValidationSession(e,t){return this.client.delete(`/vouchers/${o(e)}/sessions/${o(t)}`)}}class S{constructor(e,t){this.client=void 0,this.promotions=void 0,this.client=e,this.promotions=t}validateVoucher(e,t={}){return this.client.post(`/vouchers/${o(e)}/validate`,t)}validate(e,t={}){return l(e)?this.promotions.validate(e):this.validateVoucher(e,t)}validateStackable(e){return this.client.post("/validations",e)}}class _{constructor(e){this.client=void 0,this.client=e}redeem(e,t={}){return this.client.post(`/vouchers/${o(e)}/redemption`,t)}redeemStackable(e){return this.client.post("/redemptions",e)}get(e){return this.client.get("/redemptions/"+o(e))}list(e={}){return this.client.get("/redemptions",e)}getForVoucher(e){return this.client.get(`/vouchers/${o(e)}/redemption`)}rollback(e,t){let s={},i={};if(c(t))s.reason=t;else if(l(t)){const{reason:e,tracking_id:r,customer:n}=t;s={reason:e||void 0,tracking_id:r||void 0},i={customer:n}}return this.client.post(`/redemptions/${o(e)}/rollback`,i,s)}rollbackStackable(e,t,s){return this.client.post(`/redemptions/${o(e)}/rollbacks`,t,s)}}class V{constructor(e){this.client=void 0,this.client=e}listAll(e={}){return this.client.get("/promotions/tiers",e)}list(e){return this.client.get(`/promotions/${o(e)}/tiers`)}create(e,t){return this.client.post(`/promotions/${o(e)}/tiers`,t)}redeem(e,t){return this.client.post(`/promotions/tiers/${o(e)}/redemption`,t)}update(e){return this.client.put("/promotions/tiers/"+o(e.id),e)}delete(e){return this.client.delete("/promotions/tiers/"+o(e))}}class x{constructor(e,t){this.client=void 0,this.tiers=void 0,this.client=e,this.tiers=t}create(e){return this.client.post("/campaigns",e)}validate(e,t){return this.client.post("/promotions/validation",e,t)}}class C{constructor(e){this.client=void 0,this.client=e}create(e){return this.client.post("/customers",e)}get(e){return this.client.get("/customers/"+o(e))}list(e){return this.client.get("/customers",e)}async*scroll(e){var t;let s=null!=(t=e.starting_after)?t:"created_at"===e.order?"1970-01-01T00:00:00Z":"2200-01-01T00:00:00Z",i=await this.client.get("/customers",Object.assign({},e,{starting_after:s}));for(;0!==i.customers.length;){for(const t of i.customers)s="created_at"===e.order?s>t.created_at?s:t.created_at:s<t.created_at?s:t.created_at,yield t;if(!i.has_more)break;i=await this.client.get("/customers",Object.assign({},e,{starting_after:s}))}}update(e){const t="id"in e?e.id:e.source_id,s=p(e,["id"]);return this.client.put("/customers/"+o(t),s)}delete(e){return this.client.delete("/customers/"+o(e))}updateConsents(e,t){return this.client.put(`/customers/${o(e)}/consents`,t)}listActivities(e,t){return this.client.get(`/customers/${o(e)}/activities`,t)}}class L{constructor(e){this.client=void 0,this.client=e}list(){return this.client.get("/consents")}}class j{constructor(e){this.client=void 0,this.client=e}create(e){return this.client.post("/orders",e)}get(e){return this.client.get("/orders/"+o(e))}update(e){return this.client.put("/orders/"+o(e.id||e.source_id),p(e,["id"]))}list(e={}){return this.client.get("/orders",e)}import(e){return this.client.post("/orders/import",e)}}class A{constructor(e){this.client=void 0,this.client=e}create(e){return this.client.post("/products",e)}get(e){return this.client.get("/products/"+o(e))}update(e){return this.client.put("/products/"+o(e.id||e.source_id),p(e,["id"]))}bulkUpdateMetadata(e){return this.client.post("/products/metadata/async",e)}bulkUpdate(e){return this.client.post("/products/bulk/async",e)}delete(e,t){return this.client.delete("/products/"+o(e),t)}list(e){return this.client.get("/products",e)}createSku(e,t){return this.client.post(`/products/${o(e)}/skus`,t)}getSku(e){return this.client.get("/skus/"+o(e))}updateSku(e,t){return this.client.put(`/products/${o(e)}/skus/${o(t.id||t.source_id)}`,p(t,["id"]))}deleteSku(e,t,s){return this.client.delete(`/products/${o(e)}/skus/${o(t)}`,s)}listSkus(e){return this.client.get(`/products/${o(e)}/skus`)}}class I{constructor(e){this.client=void 0,this.client=e}list(e={}){return this.client.get("/rewards",e)}create(e){return this.client.post("/rewards",e)}get(e){return this.client.get("/rewards/"+o(e))}update(e){return this.client.put("/rewards/"+o(e.id),p(e,["id"]))}delete(e){return this.client.delete("/rewards/"+o(e))}listAssignments(e,t={}){return this.client.get(`/rewards/${o(e)}/assignments`,t)}createAssignment(e,t){return this.client.post(`/rewards/${o(e)}/assignments`,t)}updateAssignment(e,t){return this.client.put(`/rewards/${o(e)}/assignments/${o(t.id)}`,p(t,["id"]))}deleteAssignment(e,t){return this.client.delete(`/rewards/${o(e)}/assignments/${o(t)}`)}}class q{constructor(e){this.client=void 0,this.client=e}list(e={}){return this.client.get("/loyalties",e)}create(e){return this.client.post("/loyalties",e)}get(e){return this.client.get("/loyalties/"+o(e))}update(e){return this.client.put("/loyalties/"+o(e.id),p(e,["id"]))}delete(e,t){return this.client.delete("/loyalties/"+o(e),t)}listRewardAssignments(e,t={}){return this.client.get(`/loyalties/${o(e)}/rewards`,t)}createRewardAssignments(e,t){return this.client.post(`/loyalties/${o(e)}/rewards`,t)}updateRewardAssignment(e,t){return this.client.put(`/loyalties/${o(e)}/rewards/${t.id}`,p(t,["id"]))}deleteRewardAssignment(e,t){return this.client.delete(`/loyalties/${o(e)}/rewards/${t}`)}listEarningRules(e,t={}){return this.client.get(`/loyalties/${o(e)}/earning-rules`,t)}createEarningRule(e,t){return this.client.post(`/loyalties/${o(e)}/earning-rules`,t)}updateEarningRule(e,t){return this.client.put(`/loyalties/${o(e)}/earning-rules/${t.id}`,p(t,["id"]))}deleteEarningRule(e,t){return this.client.delete(`/loyalties/${o(e)}/earning-rules/${t}`)}listMembers(e,t){return this.client.get(`/loyalties/${o(e)}/members`,t)}createMember(e,t){return this.client.post(`/loyalties/${o(e)}/members`,t)}getMember(e,t){return this.client.get(`/loyalties/${o(e)}/members/${t}`)}getMemberActivities(e,t){return this.client.get(`/loyalties/${o(e)}/members/${t}/activities`)}addPoints(e,t,s){return this.client.post(`/loyalties/${o(e)}/members/${t}/balance`,s)}redeemReward(e,t,s){return this.client.post(`/loyalties/${o(e)}/members/${o(t)}/redemption`,s)}}class H{constructor(e){this.client=void 0,this.client=e}create(e){return this.client.post("/validation-rules",e)}get(e){return this.client.get("/validation-rules/"+o(e))}update(e){return this.client.put("/validation-rules/"+o(e.id),p(e,["id"]))}delete(e){return this.client.delete("/validation-rules/"+o(e))}createAssignment(e,t){return this.client.post(`/validation-rules/${o(e)}/assignments`,t)}deleteAssignment(e,t){return this.client.delete(`/validation-rules/${o(e)}/assignments/${o(t)}`)}validate(e,t={}){return this.client.post(`/validation-rules/${o(e)}/validation`,t)}list(e={}){return this.client.get("/validation-rules",e)}listAssignments(e,t={}){return this.client.get(`/validation-rules/${o(e)}/assignments`,t)}}class U{constructor(e){this.client=void 0,this.client=e}create(e){return this.client.post("/segments",e)}get(e){return this.client.get("/segments/"+o(e))}delete(e){return this.client.delete("/segments/"+o(e))}list(e){return this.client.get(`/customers/${o(e)}/segments`)}}class O{constructor(e){this.requestController=void 0,this.requestController=e}getLastResponseHeadersFromController(){return this.requestController.getLastResponseHeaders()}areLimitsAvailable(){return this.requestController.isLastReponseHeadersSet()}getRateLimit(){var e;const t=null!=(e=this.getLastResponseHeadersFromController()["x-rate-limit-limit"])?e:0;return parseInt(t,10)}getRateLimitRemaining(){var e;const t=null!=(e=this.getLastResponseHeadersFromController()["x-rate-limit-remaining"])?e:0;return parseInt(t,10)}getRetryAfter(){var e;const t=null!=(e=this.getLastResponseHeadersFromController()["retry-after"])?e:0;return parseInt(t,10)}}class P{constructor(e){this.client=void 0,this.client=e}list(){return this.client.get("/metadata-schemas")}get(e){return this.client.get("/metadata-schemas/"+o(e))}}class E{constructor(e,t){this.client=void 0,this.trackingId=void 0,this.client=e,this.trackingId=t}setIdentity(e){this.trackingId=e}validate(e){var t,s;h(l(e)||c(e),'client.validate: expected "params" argument to be an object or a string');const i={};return c(e)?i.code=e:(i.code=e.code,i.item=e.items,i.amount=e.amount,i.metadata=e.metadata,i.order={metadata:e.orderMetadata},i.customer=e.customer,i.tracking_id=e.tracking_id||this.trackingId,i.session_type=e.session_type,i.session_key=e.session_key,i.session_ttl=e.session_ttl,i.session_ttl_unit=e.session_ttl_unit),i.code&&(i.code=i.code.replace(/[\r\n\t\f\v]/g,"").trim()),h(u(null==i?void 0:i.customer),'client.validate: expected "params.customer" to be an object'),h(a(null==i||null==(t=i.customer)?void 0:t.source_id),'client.validate: expected "params.customer.source_id" to be a string'),h(u(null==i||null==(s=i.customer)?void 0:s.metadata),'client.validate: expected "params.customer.metadata" to be an object'),this.client.get(i.code?"/validate":"/promotions/validation",i)}redeem(e,t={}){var s,i;return h(c(e),"client.redeem - please provide a valid Voucher code"),e=e.replace(/[\r\n\t\f\v]/g,"").trim(),t.customer=null!=(s=t.customer)?s:{},t.customer.source_id=null!=(i=t.customer.source_id)?i:this.trackingId,this.client.post("/redeem",t,{code:e})}publish(e,t={},s={}){var i,r,n,o,a;h(l(t),"client.publish - expected payload to be an object");const u={};return u.customer=null!=(i=t.customer)?i:{},u.customer.source_id=null!=(r=null==(n=t.customer)?void 0:n.source_id)?r:this.trackingId,u.channel=null!=(o=t.channel)?o:"Voucherify.js",h(c(null==(a=u.customer)?void 0:a.source_id),"client.publish - expected payload to contain customer source id or to have tracking id set up by Voucherify client"),s.campaign=e.replace(/[\r\n\t\f\v]/g,"").trim(),this.client.post("/publish",u,s)}track(e,t,s,i,r){var n,o;h(c(e),"client.track - expected event name to be an string"),h(l(t),"client.track - expected customer to be an object");const a={event:e,metadata:null!=s?s:{},customer:t,referral:null!=i?i:void 0,loyalty:null!=r?r:void 0};return a.customer.source_id=null!=(n=t.source_id)?n:this.trackingId,h(c(null==(o=a.customer)?void 0:o.source_id),"client.track - expected payload to contain customer source id or to have tracking id set up by Voucherify client"),this.client.post("/events",a)}listVouchers(e={}){const t={};return t.campaign=e.campaign,t.category=e.category,t.page=e.page,t.limit=e.limit,t.customer=e.customer,t.created_at=e.created_at,t.updated_at=e.updated_at,this.client.get("/vouchers",t)}createCustomer(e,t){return this.client.post("/customers",e,{},t?{"X-Voucherify-Double-Opt-In":!0}:{})}listConsents(){return this.client.get("/consents")}updateConsents(e,t){return this.client.put(`/customers/${o(e)}/consents`,t)}validateStackable(e){return this.client.post("/validations",e)}redeemStackable(e){return this.client.post("/redemptions",e)}}e.VoucherifyClientSide=function(e){var t;h(l(e),'VoucherifyCustomer: expected "options" argument to be an object'),h(c(e.clientApplicationId),'VoucherifyCustomer: "options.clientApplicationId" is required'),h(c(e.clientSecretKey),'VoucherifyCustomer: "options.clientSecretKey" is required'),h(a(e.apiUrl),'VoucherifyCustomer: expected "options.baseUrl" to be a string'),h(a(e.trackingId),'VoucherifyCustomer: expected "options.trackingId" to be a string');let s={"X-Client-Application-Id":e.clientApplicationId,"X-Client-Token":e.clientSecretKey,"X-Voucherify-Channel":d()+"-ClientSide-SDK-v2.0.15"};d().startsWith("Node")&&(h(c(e.origin),'VoucherifyCustomer: "options.origin" is required in Node.js'),s.origin=e.origin),l(e.customHeaders)&&(s=Object.assign({},s,e.customHeaders));const i=new n({basePath:"client/v1",baseURL:null!=(t=e.apiUrl)?t:"https://api.voucherify.io",headers:s});return new E(i,e.trackingId)},e.VoucherifyServerSide=function(e){var t;h(l(e),'VoucherifyServerSide: the "options" argument must be an object'),h(c(e.applicationId),'VoucherifyServerSide: "options.applicationId" is required'),h(c(e.secretKey),'VoucherifyServerSide: "options.secretKey" is required'),h(a(e.apiVersion),'VoucherifyServerSide: expected "options.apiVersion" to be a string'),h(a(e.channel),'VoucherifyServerSide: expected "options.channel" to be a string');let s={"X-App-Id":e.applicationId,"X-App-Token":e.secretKey,"X-Voucherify-Channel":e.channel||d()+"-SDK-v2.0.15","Content-Type":"application/json"};e.apiVersion&&(s["X-Voucherify-API-Version"]=e.apiVersion),l(e.customHeaders)&&(s=Object.assign({},s,e.customHeaders)),d().startsWith("Node")||h(!0===e.dangerouslySetSecretKeyInBrowser,`VoucherifyServerSide: you're exposing your secretKey to a ${d().toLowerCase()} environment. This is generally considered a bad practice. Did you mean to use 'VoucherifyClientSide'?`);const i=new n({basePath:"v1",baseURL:null!=(t=e.apiUrl)?t:"https://api.voucherify.io",headers:s}),r=new m(i),o=new $(i),u=new R(i,o),p=new v(i),g=new f(i),y=new w(i),k=new b(i,g),E=new V(i),T=new x(i,E);return{vouchers:u,campaigns:p,distributions:k,validations:new S(i,T),redemptions:new _(i),promotions:T,customers:new C(i),consents:new L(i),orders:new j(i),products:new A(i),rewards:new I(i),loyalties:new q(i),segments:new U(i),validationRules:new H(i),events:y,asyncActions:r,apiLimitsHandler:new O(i),metadataSchemas:new P(i)}},Object.defineProperty(e,"__esModule",{value:!0})}));
1
+ !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("axios"),require("qs")):"function"==typeof define&&define.amd?define(["exports","axios","qs"],t):t((e=e||self).VoucherifySDK={},e.axios,e.Qs)}(this,(function(e,t,s){"use strict";var i;t=t&&Object.prototype.hasOwnProperty.call(t,"default")?t.default:t,s=s&&Object.prototype.hasOwnProperty.call(s,"default")?s.default:s,(i=e.DiscountVouchersTypesEnum||(e.DiscountVouchersTypesEnum={})).AMOUNT="AMOUNT",i.PERCENT="PERCENT",i.UNIT="UNIT",i.FIXED="FIXED";class r extends Error{constructor(e,t){var s,i;super((null==(i=t=null!=(s=t)?s:{})?void 0:i.message)||function(e,t){return`Unexpected status code: ${t} - Details: ${e="string"==typeof e?e:JSON.stringify(e,null,2)}`}(t,e)),Object.assign(this,t)}}class n{constructor({basePath:e,baseURL:s,headers:i}){this.baseURL=void 0,this.basePath=void 0,this.headers=void 0,this.request=void 0,this.lastResponseHeaders=void 0,this.isLastResponseHeadersSet=void 0,this.basePath=e,this.baseURL=s,this.headers=i,this.lastResponseHeaders={},this.isLastResponseHeadersSet=!1,this.request=t.create({baseURL:`${this.baseURL}/${this.basePath}/`,headers:this.headers,responseType:"json"}),this.request.interceptors.response.use(void 0,e=>{var t;return null!=e&&null!=(t=e.response)&&t.status?Promise.reject(new r(e.response.status,e.response.data)):Promise.reject(e)})}isLastReponseHeadersSet(){return this.isLastResponseHeadersSet}getLastResponseHeaders(){return this.lastResponseHeaders}setLastResponseHeaders(e){this.lastResponseHeaders=e,this.isLastResponseHeadersSet=!0}setBaseUrl(e){this.baseURL=e,this.request.defaults.baseURL=`${e}/${this.basePath}/`}async get(e,t){const i=await this.request.get(e,{params:t,paramsSerializer:function(e){return s.stringify(e)}});return this.setLastResponseHeaders(i.headers),i.data}async post(e,t,i,r){const n=await this.request.post(e,t,{params:i,paramsSerializer:function(e){return s.stringify(e)},headers:r});return this.setLastResponseHeaders(n.headers),n.data}async put(e,t,s){const i=await this.request.put(e,t,{params:s});return this.setLastResponseHeaders(i.headers),i.data}async delete(e,t){const s=await this.request.delete(e,{params:t});return this.setLastResponseHeaders(s.headers),s.data}}function o(e=""){return encodeURIComponent(e)}function c(e){return"string"==typeof e}function a(e){return null==e||c(e)}function l(e){return"object"==typeof e&&!Array.isArray(e)&&null!==e}function u(e){return null==e||l(e)}function d(){return"undefined"!=typeof window&&void 0!==window.document?"Browser":"object"==typeof self&&self.constructor&&"DedicatedWorkerGlobalScope"===self.constructor.name?"WebWorker":"undefined"!=typeof process&&null!=process.versions&&null!=process.versions.node?"Node.js-"+process.version:"undefined"!=typeof window&&"nodejs"===window.name||navigator.userAgent.includes("Node.js")||navigator.userAgent.includes("jsdom")?"JsDom":"Unknown"}function h(e,t){if(!e)throw new Error(t)}function p(e,t){return Object.fromEntries(Object.entries(e).filter(([e])=>!t.includes(e)))}class m{constructor(e){this.client=void 0,this.client=e}get(e){return this.client.get("/async-actions/"+o(e))}list(e){return this.client.get("/async-actions",e)}}class g{constructor(e){this.client=void 0,this.client=e}examine(e={},t){return this.client.post("/campaigns/qualification",e,t)}}class v{constructor(e){this.client=void 0,this.qualifications=void 0,this.client=e,this.qualifications=new g(this.client)}create(e){return this.client.post("/campaigns",e)}update(e,t){return this.client.put("/campaigns/"+o(e),t)}get(e){return this.client.get("/campaigns/"+o(e))}delete(e,t={}){return this.client.delete("/campaigns/"+o(e),t)}addVoucher(e,t={},s={}){return this.client.post(`/campaigns/${o(e)}/vouchers`,t,s)}addCertainVoucher(e,t,s={}){return this.client.post(`/campaigns/${o(e)}/vouchers/${o(t)}`,s)}importVouchers(e,t){return this.client.post(`/campaigns/${o(e)}/import`,t)}list(e={}){return this.client.get("/campaigns",e)}}class y{constructor(e){this.client=void 0,this.client=e}list(e={}){return this.client.get("/publications",e)}create(e){return this.client.post("/publications",e)}}class b{constructor(e,t){this.client=void 0,this.exports=void 0,this.publications=void 0,this.client=e,this.exports=t,this.publications=new y(this.client)}}class f{constructor(e){this.client=void 0,this.client=e}create(e){return this.client.post("/exports",e)}get(e){return this.client.get("/exports/"+o(e))}delete(e){return this.client.delete("/exports/"+o(e))}}class w{constructor(e){this.client=void 0,this.client=e}create(e,t){return t={...t,event:e},this.client.post("/events",t)}}class ${constructor(e){this.client=void 0,this.client=e}create(e,t){return this.client.post(`/vouchers/${o(e)}/balance`,t)}}class k{constructor(e){this.client=void 0,this.client=e}examine(e,t={}){return this.client.post("/vouchers/qualification",e,t)}}class R{constructor(e,t){this.client=void 0,this.balance=void 0,this.qualifications=void 0,this.client=e,this.balance=t,this.qualifications=new k(this.client)}create(e){return this.client.post("/vouchers/"+o(e.code),e)}get(e){return this.client.get("/vouchers/"+o(e))}update(e){return this.client.put("/vouchers/"+o(e.code),e)}delete(e,t={}){return this.client.delete("/vouchers/"+o(e),t)}list(e={}){return this.client.get("/vouchers",e)}enable(e){return this.client.post(`/vouchers/${o(e)}/enable`,{})}disable(e){return this.client.post(`/vouchers/${o(e)}/disable`,{})}import(e){return this.client.post("/vouchers/import",e)}bulkUpdateMetadata(e){return this.client.post("/vouchers/metadata/async",e)}bulkUpdate(e){return this.client.post("/vouchers/bulk/async",e)}releaseValidationSession(e,t){return this.client.delete(`/vouchers/${o(e)}/sessions/${o(t)}`)}}class S{constructor(e,t){this.client=void 0,this.promotions=void 0,this.client=e,this.promotions=t}validateVoucher(e,t={}){return this.client.post(`/vouchers/${o(e)}/validate`,t)}validate(e,t={}){return l(e)?this.promotions.validate(e):this.validateVoucher(e,t)}validateStackable(e){return this.client.post("/validations",e)}}class _{constructor(e){this.client=void 0,this.client=e}redeem(e,t={}){return this.client.post(`/vouchers/${o(e)}/redemption`,t)}redeemStackable(e){return this.client.post("/redemptions",e)}get(e){return this.client.get("/redemptions/"+o(e))}list(e={}){return this.client.get("/redemptions",e)}getForVoucher(e){return this.client.get(`/vouchers/${o(e)}/redemption`)}rollback(e,t){let s={},i={};if(c(t))s.reason=t;else if(l(t)){const{reason:e,tracking_id:r,customer:n}=t;s={reason:e||void 0,tracking_id:r||void 0},i={customer:n}}return this.client.post(`/redemptions/${o(e)}/rollback`,i,s)}rollbackStackable(e,t,s){return this.client.post(`/redemptions/${o(e)}/rollbacks`,t,s)}}class V{constructor(e){this.client=void 0,this.client=e}listAll(e={}){return this.client.get("/promotions/tiers",e)}list(e){return this.client.get(`/promotions/${o(e)}/tiers`)}create(e,t){return this.client.post(`/promotions/${o(e)}/tiers`,t)}redeem(e,t){return this.client.post(`/promotions/tiers/${o(e)}/redemption`,t)}update(e){return this.client.put("/promotions/tiers/"+o(e.id),e)}delete(e){return this.client.delete("/promotions/tiers/"+o(e))}}class x{constructor(e,t){this.client=void 0,this.tiers=void 0,this.client=e,this.tiers=t}create(e){return this.client.post("/campaigns",e)}validate(e,t){return this.client.post("/promotions/validation",e,t)}}class C{constructor(e){this.client=void 0,this.client=e}create(e){return this.client.post("/customers",e)}get(e){return this.client.get("/customers/"+o(e))}list(e){return this.client.get("/customers",e)}async*scroll(e){var t;let s=null!=(t=e.starting_after)?t:"created_at"===e.order?"1970-01-01T00:00:00Z":"2200-01-01T00:00:00Z",i=await this.client.get("/customers",Object.assign({},e,{starting_after:s}));for(;0!==i.customers.length;){for(const t of i.customers)s="created_at"===e.order?s>t.created_at?s:t.created_at:s<t.created_at?s:t.created_at,yield t;if(!i.has_more)break;i=await this.client.get("/customers",Object.assign({},e,{starting_after:s}))}}update(e){const t="id"in e?e.id:e.source_id,s=p(e,["id"]);return this.client.put("/customers/"+o(t),s)}delete(e){return this.client.delete("/customers/"+o(e))}updateConsents(e,t){return this.client.put(`/customers/${o(e)}/consents`,t)}listActivities(e,t){return this.client.get(`/customers/${o(e)}/activities`,t)}}class L{constructor(e){this.client=void 0,this.client=e}list(){return this.client.get("/consents")}}class j{constructor(e){this.client=void 0,this.client=e}create(e){return this.client.post("/orders",e)}get(e){return this.client.get("/orders/"+o(e))}update(e){return this.client.put("/orders/"+o(e.id||e.source_id),p(e,["id"]))}list(e={}){return this.client.get("/orders",e)}import(e){return this.client.post("/orders/import",e)}}class A{constructor(e){this.client=void 0,this.client=e}create(e){return this.client.post("/products",e)}get(e){return this.client.get("/products/"+o(e))}update(e){return this.client.put("/products/"+o(e.id||e.source_id),p(e,["id"]))}bulkUpdateMetadata(e){return this.client.post("/products/metadata/async",e)}bulkUpdate(e){return this.client.post("/products/bulk/async",e)}delete(e,t){return this.client.delete("/products/"+o(e),t)}list(e){return this.client.get("/products",e)}createSku(e,t){return this.client.post(`/products/${o(e)}/skus`,t)}getSku(e){return this.client.get("/skus/"+o(e))}updateSku(e,t){return this.client.put(`/products/${o(e)}/skus/${o(t.id||t.source_id)}`,p(t,["id"]))}deleteSku(e,t,s){return this.client.delete(`/products/${o(e)}/skus/${o(t)}`,s)}listSkus(e){return this.client.get(`/products/${o(e)}/skus`)}}class I{constructor(e){this.client=void 0,this.client=e}list(e={}){return this.client.get("/rewards",e)}create(e){return this.client.post("/rewards",e)}get(e){return this.client.get("/rewards/"+o(e))}update(e){return this.client.put("/rewards/"+o(e.id),p(e,["id"]))}delete(e){return this.client.delete("/rewards/"+o(e))}listAssignments(e,t={}){return this.client.get(`/rewards/${o(e)}/assignments`,t)}createAssignment(e,t){return this.client.post(`/rewards/${o(e)}/assignments`,t)}updateAssignment(e,t){return this.client.put(`/rewards/${o(e)}/assignments/${o(t.id)}`,p(t,["id"]))}deleteAssignment(e,t){return this.client.delete(`/rewards/${o(e)}/assignments/${o(t)}`)}}class q{constructor(e){this.client=void 0,this.client=e}list(e={}){return this.client.get("/loyalties",e)}create(e){return this.client.post("/loyalties",e)}get(e){return this.client.get("/loyalties/"+o(e))}update(e){return this.client.put("/loyalties/"+o(e.id),p(e,["id"]))}delete(e,t){return this.client.delete("/loyalties/"+o(e),t)}listRewardAssignments(e,t={}){return this.client.get(`/loyalties/${o(e)}/rewards`,t)}createRewardAssignments(e,t){return this.client.post(`/loyalties/${o(e)}/rewards`,t)}updateRewardAssignment(e,t){return this.client.put(`/loyalties/${o(e)}/rewards/${t.id}`,p(t,["id"]))}deleteRewardAssignment(e,t){return this.client.delete(`/loyalties/${o(e)}/rewards/${t}`)}listEarningRules(e,t={}){return this.client.get(`/loyalties/${o(e)}/earning-rules`,t)}createEarningRule(e,t){return this.client.post(`/loyalties/${o(e)}/earning-rules`,t)}updateEarningRule(e,t){return this.client.put(`/loyalties/${o(e)}/earning-rules/${t.id}`,p(t,["id"]))}deleteEarningRule(e,t){return this.client.delete(`/loyalties/${o(e)}/earning-rules/${t}`)}listMembers(e,t){return this.client.get(`/loyalties/${o(e)}/members`,t)}createMember(e,t){return this.client.post(`/loyalties/${o(e)}/members`,t)}getMember(e,t){return this.client.get(`/loyalties/${o(e)}/members/${t}`)}getMemberActivities(e,t){return this.client.get(`/loyalties/${o(e)}/members/${t}/activities`)}addPoints(e,t,s){return this.client.post(`/loyalties/${o(e)}/members/${t}/balance`,s)}redeemReward(e,t,s){return this.client.post(`/loyalties/${o(e)}/members/${o(t)}/redemption`,s)}}class H{constructor(e){this.client=void 0,this.client=e}create(e){return this.client.post("/validation-rules",e)}get(e){return this.client.get("/validation-rules/"+o(e))}update(e){return this.client.put("/validation-rules/"+o(e.id),p(e,["id"]))}delete(e){return this.client.delete("/validation-rules/"+o(e))}createAssignment(e,t){return this.client.post(`/validation-rules/${o(e)}/assignments`,t)}deleteAssignment(e,t){return this.client.delete(`/validation-rules/${o(e)}/assignments/${o(t)}`)}validate(e,t={}){return this.client.post(`/validation-rules/${o(e)}/validation`,t)}list(e={}){return this.client.get("/validation-rules",e)}listAssignments(e,t={}){return this.client.get(`/validation-rules/${o(e)}/assignments`,t)}}class U{constructor(e){this.client=void 0,this.client=e}create(e){return this.client.post("/segments",e)}get(e){return this.client.get("/segments/"+o(e))}delete(e){return this.client.delete("/segments/"+o(e))}list(e){return this.client.get(`/customers/${o(e)}/segments`)}}class O{constructor(e){this.requestController=void 0,this.requestController=e}getLastResponseHeadersFromController(){return this.requestController.getLastResponseHeaders()}areLimitsAvailable(){return this.requestController.isLastReponseHeadersSet()}getRateLimit(){var e;const t=null!=(e=this.getLastResponseHeadersFromController()["x-rate-limit-limit"])?e:0;return parseInt(t,10)}getRateLimitRemaining(){var e;const t=null!=(e=this.getLastResponseHeadersFromController()["x-rate-limit-remaining"])?e:0;return parseInt(t,10)}getRetryAfter(){var e;const t=null!=(e=this.getLastResponseHeadersFromController()["retry-after"])?e:0;return parseInt(t,10)}}class P{constructor(e){this.client=void 0,this.client=e}list(){return this.client.get("/metadata-schemas")}get(e){return this.client.get("/metadata-schemas/"+o(e))}}class E{constructor(e,t){this.client=void 0,this.trackingId=void 0,this.client=e,this.trackingId=t}setIdentity(e){this.trackingId=e}validate(e){var t,s;h(l(e)||c(e),'client.validate: expected "params" argument to be an object or a string');const i={};return c(e)?i.code=e:(i.code=e.code,i.item=e.items,i.amount=e.amount,i.metadata=e.metadata,i.order={metadata:e.orderMetadata},i.customer=e.customer,i.tracking_id=e.tracking_id||this.trackingId,i.session_type=e.session_type,i.session_key=e.session_key,i.session_ttl=e.session_ttl,i.session_ttl_unit=e.session_ttl_unit),i.code&&(i.code=i.code.replace(/[\r\n\t\f\v]/g,"").trim()),h(u(null==i?void 0:i.customer),'client.validate: expected "params.customer" to be an object'),h(a(null==i||null==(t=i.customer)?void 0:t.source_id),'client.validate: expected "params.customer.source_id" to be a string'),h(u(null==i||null==(s=i.customer)?void 0:s.metadata),'client.validate: expected "params.customer.metadata" to be an object'),this.client.get(i.code?"/validate":"/promotions/validation",i)}redeem(e,t={}){var s,i;return h(c(e),"client.redeem - please provide a valid Voucher code"),e=e.replace(/[\r\n\t\f\v]/g,"").trim(),t.customer=null!=(s=t.customer)?s:{},t.customer.source_id=null!=(i=t.customer.source_id)?i:this.trackingId,this.client.post("/redeem",t,{code:e})}publish(e,t={},s={}){var i,r,n,o,a;h(l(t),"client.publish - expected payload to be an object");const u={};return u.customer=null!=(i=t.customer)?i:{},u.customer.source_id=null!=(r=null==(n=t.customer)?void 0:n.source_id)?r:this.trackingId,u.channel=null!=(o=t.channel)?o:"Voucherify.js",h(c(null==(a=u.customer)?void 0:a.source_id),"client.publish - expected payload to contain customer source id or to have tracking id set up by Voucherify client"),s.campaign=e.replace(/[\r\n\t\f\v]/g,"").trim(),this.client.post("/publish",u,s)}track(e,t,s,i,r){var n,o;h(c(e),"client.track - expected event name to be an string"),h(l(t),"client.track - expected customer to be an object");const a={event:e,metadata:null!=s?s:{},customer:t,referral:null!=i?i:void 0,loyalty:null!=r?r:void 0};return a.customer.source_id=null!=(n=t.source_id)?n:this.trackingId,h(c(null==(o=a.customer)?void 0:o.source_id),"client.track - expected payload to contain customer source id or to have tracking id set up by Voucherify client"),this.client.post("/events",a)}listVouchers(e={}){const t={};return t.campaign=e.campaign,t.category=e.category,t.page=e.page,t.limit=e.limit,t.customer=e.customer,t.created_at=e.created_at,t.updated_at=e.updated_at,this.client.get("/vouchers",t)}createCustomer(e,t){return this.client.post("/customers",e,{},t?{"X-Voucherify-Double-Opt-In":!0}:{})}listConsents(){return this.client.get("/consents")}updateConsents(e,t){return this.client.put(`/customers/${o(e)}/consents`,t)}validateStackable(e){return this.client.post("/validations",e)}redeemStackable(e){return this.client.post("/redemptions",e)}}e.VoucherifyClientSide=function(e){var t;h(l(e),'VoucherifyCustomer: expected "options" argument to be an object'),h(c(e.clientApplicationId),'VoucherifyCustomer: "options.clientApplicationId" is required'),h(c(e.clientSecretKey),'VoucherifyCustomer: "options.clientSecretKey" is required'),h(a(e.apiUrl),'VoucherifyCustomer: expected "options.baseUrl" to be a string'),h(a(e.trackingId),'VoucherifyCustomer: expected "options.trackingId" to be a string');let s={"X-Client-Application-Id":e.clientApplicationId,"X-Client-Token":e.clientSecretKey,"X-Voucherify-Channel":d()+"-ClientSide-SDK-v2.0.17"};d().startsWith("Node")&&(h(c(e.origin),'VoucherifyCustomer: "options.origin" is required in Node.js'),s.origin=e.origin),l(e.customHeaders)&&(s=Object.assign({},s,e.customHeaders));const i=new n({basePath:"client/v1",baseURL:null!=(t=e.apiUrl)?t:"https://api.voucherify.io",headers:s});return new E(i,e.trackingId)},e.VoucherifyServerSide=function(e){var t;h(l(e),'VoucherifyServerSide: the "options" argument must be an object'),h(c(e.applicationId),'VoucherifyServerSide: "options.applicationId" is required'),h(c(e.secretKey),'VoucherifyServerSide: "options.secretKey" is required'),h(a(e.apiVersion),'VoucherifyServerSide: expected "options.apiVersion" to be a string'),h(a(e.channel),'VoucherifyServerSide: expected "options.channel" to be a string');let s={"X-App-Id":e.applicationId,"X-App-Token":e.secretKey,"X-Voucherify-Channel":e.channel||d()+"-SDK-v2.0.17","Content-Type":"application/json"};e.apiVersion&&(s["X-Voucherify-API-Version"]=e.apiVersion),l(e.customHeaders)&&(s=Object.assign({},s,e.customHeaders)),d().startsWith("Node")||h(!0===e.dangerouslySetSecretKeyInBrowser,`VoucherifyServerSide: you're exposing your secretKey to a ${d().toLowerCase()} environment. This is generally considered a bad practice. Did you mean to use 'VoucherifyClientSide'?`);const i=new n({basePath:"v1",baseURL:null!=(t=e.apiUrl)?t:"https://api.voucherify.io",headers:s}),r=new m(i),o=new $(i),u=new R(i,o),p=new v(i),g=new f(i),y=new w(i),k=new b(i,g),E=new V(i),T=new x(i,E);return{vouchers:u,campaigns:p,distributions:k,validations:new S(i,T),redemptions:new _(i),promotions:T,customers:new C(i),consents:new L(i),orders:new j(i),products:new A(i),rewards:new I(i),loyalties:new q(i),segments:new U(i),validationRules:new H(i),events:y,asyncActions:r,apiLimitsHandler:new O(i),metadataSchemas:new P(i)}},Object.defineProperty(e,"__esModule",{value:!0})}));
2
2
  //# sourceMappingURL=voucherifysdk.umd.production.min.js.map
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@voucherify/sdk",
3
- "version": "2.0.15",
3
+ "version": "2.0.17",
4
4
  "description": "Official Voucherify JS SDK",
5
5
  "author": "Voucherify",
6
6
  "license": "MIT",