@lockerverse/sdk 0.2.20 → 0.2.21

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/dist/types.d.ts CHANGED
@@ -31,9 +31,6 @@ type LockerversePaymentConfiguration = {
31
31
  currency: "usd";
32
32
  publishableKey: string;
33
33
  };
34
- type LockerverseCheckoutPaymentConfiguration = LockerversePaymentConfiguration & {
35
- connectedAccountId: string | null;
36
- };
37
34
  type LockerverseWidgetFields = {
38
35
  memberId: boolean;
39
36
  merchSize: boolean;
@@ -78,8 +75,8 @@ type LockerverseWidgetConfiguration = {
78
75
  showCommunityBranding: boolean;
79
76
  title: string | null;
80
77
  };
81
- type LockerverseSdkErrorCode = "widget_load_failed" | "signup_load_failed" | "signup_submit_failed" | "total_calculation_failed" | "payment_submit_failed" | "payment_status_failed" | "invalid_selection";
82
- type LockerverseSdkOperation = "load_widget" | "load_signup" | "submit_signup" | "calculate_total" | "submit_payment" | "get_payment_status" | "update_selection";
78
+ type LockerverseSdkErrorCode = "widget_load_failed" | "signup_load_failed" | "signup_submit_failed" | "payment_status_failed" | "session_create_failed" | "session_update_failed" | "invalid_selection";
79
+ type LockerverseSdkOperation = "load_widget" | "load_signup" | "submit_signup" | "get_payment_status" | "create_session" | "update_session_details" | "update_session_discount";
83
80
  declare class LockerverseSdkError extends Error {
84
81
  readonly code: LockerverseSdkErrorCode;
85
82
  readonly operation: LockerverseSdkOperation;
@@ -96,45 +93,6 @@ declare class LockerverseSdkError extends Error {
96
93
  status?: number;
97
94
  });
98
95
  }
99
- type LockerverseCheckoutLineItem = {
100
- productId: string;
101
- productName: string;
102
- listingId: string;
103
- listingSlug: string;
104
- acceptsDiscounts: boolean;
105
- pricingMode: "fixed" | "custom";
106
- paymentOption: LockerversePaymentOption;
107
- quantity: number;
108
- unitAmountCents: number;
109
- subtotalCents: number;
110
- };
111
- type LockerverseAppliedDiscount = {
112
- percentageOff: number;
113
- source: "email_list" | "promo_code";
114
- };
115
- type LockerverseCheckoutAmounts = {
116
- amountCents: number;
117
- discountableSubtotalCents: number;
118
- discountCents: number;
119
- serviceFeeCents: number;
120
- subtotalCents: number;
121
- tipCents: number;
122
- totalCents: number;
123
- };
124
- type LockerverseCheckoutQuote = LockerverseCheckoutAmounts & {
125
- appliedDiscount: LockerverseAppliedDiscount | null;
126
- authoritative: true;
127
- paymentReference: string;
128
- payment: LockerverseCheckoutPaymentConfiguration;
129
- paymentOption: "one-time";
130
- lineItems: LockerverseCheckoutLineItem[];
131
- };
132
- type LockerverseCheckoutPricingInput = {
133
- email?: string;
134
- includeServiceFee?: boolean;
135
- promoCode?: string;
136
- tipCents?: number;
137
- };
138
96
  type LockerversePaymentStatus = "action_required" | "failed" | "pending" | "success";
139
97
  type LockerversePaymentResult = {
140
98
  checkoutId: string;
@@ -144,15 +102,6 @@ type LockerversePaymentResult = {
144
102
  requiresAction: boolean;
145
103
  status: string | null;
146
104
  };
147
- type LockerversePaymentSubmission = {
148
- confirmationToken: string;
149
- customFieldAnswers?: LockerverseCustomFieldAnswer[];
150
- email: string;
151
- memberId?: string;
152
- merchSize?: "XS" | "S" | "M" | "L" | "XL" | "XXL" | "XXXL";
153
- metadata?: Record<string, string>;
154
- phone?: string;
155
- };
156
105
  type LockerverseCheckoutItem = {
157
106
  productId: string;
158
107
  quantity: number;
@@ -160,16 +109,33 @@ type LockerverseCheckoutItem = {
160
109
  productId: string;
161
110
  amountCents: number;
162
111
  };
163
- type LockerverseCalculateTotalInput = LockerverseCheckoutPricingInput & {
112
+ type LockerverseCreateCheckoutSessionInput = {
113
+ email?: string;
114
+ includeServiceFee?: boolean;
164
115
  items: LockerverseCheckoutItem[];
116
+ requestKey: string;
117
+ returnUrl: string;
118
+ tipCents?: number;
119
+ };
120
+ type LockerverseCheckoutSession = {
121
+ checkoutId: string;
122
+ clientSecret: string;
123
+ connectedAccountId: string | null;
124
+ paymentReference: string;
125
+ sessionId: string;
165
126
  };
166
- type LockerversePreparedCheckout = Readonly<LockerverseCheckoutQuote & {
167
- items: readonly LockerverseCheckoutItem[];
168
- pricing: Readonly<LockerverseCheckoutPricingInput>;
169
- }>;
170
- type LockerverseSubmitPaymentInput = {
171
- checkout: LockerversePreparedCheckout;
172
- submission: LockerversePaymentSubmission;
127
+ type LockerverseCheckoutSessionDiscount = {
128
+ discountCents: number;
129
+ paymentReference: string;
130
+ totalCents: number;
131
+ };
132
+ type LockerverseCheckoutSessionDetailsInput = {
133
+ customFieldAnswers?: LockerverseCustomFieldAnswer[];
134
+ email: string;
135
+ memberId?: string;
136
+ merchSize?: "XS" | "S" | "M" | "L" | "XL" | "XXL" | "XXXL";
137
+ paymentReference: string;
138
+ phone?: string;
173
139
  };
174
140
  type CreateLockerverseWidgetBaseOptions = {
175
141
  communitySlug: string;
@@ -187,11 +153,18 @@ type CreateLockerverseWidgetOptions = CreateLockerverseWidgetBaseOptions & ({
187
153
  environment?: "production";
188
154
  });
189
155
  type LockerverseCheckoutClient = {
190
- calculateTotal: (input: LockerverseCalculateTotalInput) => Promise<LockerversePreparedCheckout>;
156
+ createSession: (input: LockerverseCreateCheckoutSessionInput) => Promise<LockerverseCheckoutSession>;
191
157
  getPaymentStatus: (paymentReference: string) => Promise<LockerversePaymentResult>;
192
158
  load: () => Promise<LockerverseCatalog>;
193
- submitPayment: (input: LockerverseSubmitPaymentInput) => Promise<LockerversePaymentResult>;
159
+ updateSessionDiscount: (input: {
160
+ paymentReference: string;
161
+ promoCode?: string;
162
+ }) => Promise<LockerverseCheckoutSessionDiscount>;
163
+ updateSessionDetails: (input: LockerverseCheckoutSessionDetailsInput) => Promise<{
164
+ paymentReference: string;
165
+ totalCents: number;
166
+ }>;
194
167
  };
195
168
  //#endregion
196
- export { LockerverseSingleOptionCustomField as A, LockerversePaymentStatus as C, LockerverseSdkError as D, LockerverseProduct as E, LockerverseTextCustomField as M, LockerverseWidgetConfiguration as N, LockerverseSdkErrorCode as O, LockerverseWidgetFields as P, LockerversePaymentResult as S, LockerversePreparedCheckout as T, LockerverseCustomFieldOption as _, LockerverseCatalog as a, LockerversePaymentConfiguration as b, LockerverseCheckoutItem as c, LockerverseCheckoutPricingInput as d, LockerverseCheckoutPricingPolicy as f, LockerverseCustomFieldAnswerValue as g, LockerverseCustomFieldAnswer as h, LockerverseCalculateTotalInput as i, LockerverseSubmitPaymentInput as j, LockerverseSdkOperation as k, LockerverseCheckoutLineItem as l, LockerverseCustomField as m, LOCKERVERSE_SDK_VERSION as n, LockerverseCheckoutAmounts as o, LockerverseCheckoutQuote as p, LockerverseAppliedDiscount as r, LockerverseCheckoutClient as s, CreateLockerverseWidgetOptions as t, LockerverseCheckoutPaymentConfiguration as u, LockerverseEnvironment as v, LockerversePaymentSubmission as w, LockerversePaymentOption as x, LockerverseMultiOptionCustomField as y };
169
+ export { LockerverseSdkErrorCode as C, LockerverseWidgetConfiguration as D, LockerverseTextCustomField as E, LockerverseWidgetFields as O, LockerverseSdkError as S, LockerverseSingleOptionCustomField as T, LockerversePaymentConfiguration as _, LockerverseCheckoutItem as a, LockerversePaymentStatus as b, LockerverseCheckoutSessionDetailsInput as c, LockerverseCustomField as d, LockerverseCustomFieldAnswer as f, LockerverseMultiOptionCustomField as g, LockerverseEnvironment as h, LockerverseCheckoutClient as i, LockerverseCheckoutSessionDiscount as l, LockerverseCustomFieldOption as m, LOCKERVERSE_SDK_VERSION as n, LockerverseCheckoutPricingPolicy as o, LockerverseCustomFieldAnswerValue as p, LockerverseCatalog as r, LockerverseCheckoutSession as s, CreateLockerverseWidgetOptions as t, LockerverseCreateCheckoutSessionInput as u, LockerversePaymentOption as v, LockerverseSdkOperation as w, LockerverseProduct as x, LockerversePaymentResult as y };
197
170
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","names":[],"sources":["../src/types.ts"],"mappings":";KAEY;KACA;cAEC;KAED;EACV;EACA;EACA;EACA;EACA;EACA;EACA,eAAe;EACf;EACA;EACA;EACA;EACA;EACA;;KAGU;EACV,SAAS;EACT,eAAe;EACf,UAAU;EACV,QAAQ;;KAGE;EACV;EACA;;KAGU;EACV;EACA;;KAGU,0CACV;EACE;;KAGQ;EACV;EACA;EACA;EACA;EACA;EACA;EACA;;KAGU;EAAiC;EAAY;;KAEpD;EACH;EACA;EACA;;KAGU,6BAA6B;EACvC;;KAGU,qCAAqC;EAC/C,SAAS;EACT;;KAGU,oCAAoC;EAC9C,SAAS;EACT;;KAGU,yBACR,6BACA,qCACA;KAEQ,kCACV,cAAc,0BACZ,cAAc;KAEN,6BACV,cAAc,yBAAyB,0BACrC,cAAc;EACZ,SAAS;EAAa,OAAO,kCAAkC;;KAGzD;EACV,cAAc;EACd;EACA,QAAQ;EACR;EACA;EACA;EACA;;KAGU;KASA;cASC,4BAA4B;WAC9B,MAAM;WACN,WAAW;WACX;WACA;WACA;WACA;EAEG,cACV,MACA,SACA,WACA,YACA,qBACA;IAEA,MAAM;IACN;IACA,WAAW;IACX;IACA;IACA;;;KAaQ;EACV;EACA;EACA;EACA;EACA;EACA;EACA,eAAe;EACf;EACA;EACA;;KAGU;EACV;EACA;;KAGU;EACV;EACA;EACA;EACA;EACA;EACA;EACA;;KAGU,2BAA2B;EACrC,iBAAiB;EACjB;EACA;EACA,SAAS;EACT;EACA,WAAW;;KAGD;EACV;EACA;EACA;EACA;;KAGU;KAMA;EACV;EACA;EACA,gBAAgB;EAChB;EACA;EACA;;KAGU;EACV;EACA,qBAAqB;EACrB;EACA;EACA;EACA,WAAW;EACX;;KAGU;EACN;EAAmB;;EACnB;EAAmB;;KAEb,iCAAiC;EAC3C,OAAO;;KAGG,8BAA8B,SACxC;EACE,gBAAgB;EAChB,SAAS,SAAS;;KAIV;EACV,UAAU;EACV,YAAY;;KAGT;EACH;EACA,eAAe,WAAW;EAC1B,WAAW,OAAO;EAClB;EACA;EACA;;KAGU,iCACV;EAGQ;EACA,aAAa;;EAGb;EACA;;KAIE;EACV,iBACE,OAAO,mCACJ,QAAQ;EACb,mBACE,6BACG,QAAQ;EACb,YAAY,QAAQ;EACpB,gBACE,OAAO,kCACJ,QAAQ"}
1
+ {"version":3,"file":"types.d.ts","names":[],"sources":["../src/types.ts"],"mappings":";KAEY;KACA;cAEC;KAED;EACV;EACA;EACA;EACA;EACA;EACA;EACA,eAAe;EACf;EACA;EACA;EACA;EACA;EACA;;KAGU;EACV,SAAS;EACT,eAAe;EACf,UAAU;EACV,QAAQ;;KAGE;EACV;EACA;;KAGU;EACV;EACA;;KAGU;EACV;EACA;EACA;EACA;EACA;EACA;EACA;;KAGU;EAAiC;EAAY;;KAEpD;EACH;EACA;EACA;;KAGU,6BAA6B;EACvC;;KAGU,qCAAqC;EAC/C,SAAS;EACT;;KAGU,oCAAoC;EAC9C,SAAS;EACT;;KAGU,yBACR,6BACA,qCACA;KAEQ,kCACV,cAAc,0BACZ,cAAc;KAEN,6BACV,cAAc,yBAAyB,0BACrC,cAAc;EACZ,SAAS;EAAa,OAAO,kCAAkC;;KAGzD;EACV,cAAc;EACd;EACA,QAAQ;EACR;EACA;EACA;EACA;;KAGU;KASA;cASC,4BAA4B;WAC9B,MAAM;WACN,WAAW;WACX;WACA;WACA;WACA;EAEG,cACV,MACA,SACA,WACA,YACA,qBACA;IAEA,MAAM;IACN;IACA,WAAW;IACX;IACA;IACA;;;KAaQ;KAMA;EACV;EACA;EACA,gBAAgB;EAChB;EACA;EACA;;KAGU;EACN;EAAmB;;EACnB;EAAmB;;KAEb;EACV;EACA;EACA,OAAO;EACP;EACA;EACA;;KAGU;EACV;EACA;EACA;EACA;EACA;;KAGU;EACV;EACA;EACA;;KAGU;EACV,qBAAqB;EACrB;EACA;EACA;EACA;EACA;;KAGG;EACH;EACA,eAAe,WAAW;EAC1B,WAAW,OAAO;EAClB;EACA;EACA;;KAGU,iCACV;EAGQ;EACA,aAAa;;EAGb;EACA;;KAIE;EACV,gBACE,OAAO,0CACJ,QAAQ;EACb,mBACE,6BACG,QAAQ;EACb,YAAY,QAAQ;EACpB,wBAAwB;IACtB;IACA;QACI,QAAQ;EACd,uBACE,OAAO,2CACJ;IAAU;IAA0B"}
package/dist/types.js CHANGED
@@ -1,2 +1,2 @@
1
- const e=`0.2.20`;var t=class extends Error{code;operation;reportable;recoveryRecommended;sdkVersion;status;constructor({code:t,message:n,operation:r,reportable:i,recoveryRecommended:a=!1,status:o}){super(n),this.name=`LockerverseSdkError`,this.code=t,this.operation=r,this.reportable=i,this.recoveryRecommended=a,this.sdkVersion=e,this.status=o}};export{t as n,e as t};
1
+ const e=`0.2.21`;var t=class extends Error{code;operation;reportable;recoveryRecommended;sdkVersion;status;constructor({code:t,message:n,operation:r,reportable:i,recoveryRecommended:a=!1,status:o}){super(n),this.name=`LockerverseSdkError`,this.code=t,this.operation=r,this.reportable=i,this.recoveryRecommended=a,this.sdkVersion=e,this.status=o}};export{t as n,e as t};
2
2
  //# sourceMappingURL=types.js.map
package/dist/types.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","names":["packageMetadata.version"],"sources":["../package.json","../src/types.ts"],"sourcesContent":["","import packageMetadata from \"../package.json\" with { type: \"json\" };\n\nexport type LockerversePaymentOption = \"one-time\" | \"monthly\" | \"annually\";\nexport type LockerverseEnvironment = \"development\" | \"production\";\n\nexport const LOCKERVERSE_SDK_VERSION = packageMetadata.version;\n\nexport type LockerverseProduct = {\n id: string;\n listingId: string;\n slug: string;\n name: string;\n description: string | null;\n pricingMode: \"fixed\" | \"custom\";\n paymentOption: LockerversePaymentOption;\n amountCents: number | null;\n minimumAmountCents: number | null;\n minimumQuantity: number | null;\n maximumQuantity: number | null;\n inventoryQuantity: number | null;\n acceptsDiscounts: boolean;\n};\n\nexport type LockerverseCatalog = {\n payment: LockerversePaymentConfiguration;\n pricingPolicy: LockerverseCheckoutPricingPolicy;\n products: LockerverseProduct[];\n widget: LockerverseWidgetConfiguration;\n};\n\nexport type LockerverseCheckoutPricingPolicy = {\n currency: \"usd\";\n serviceFeeRateBasisPoints: number;\n};\n\nexport type LockerversePaymentConfiguration = {\n currency: \"usd\";\n publishableKey: string;\n};\n\nexport type LockerverseCheckoutPaymentConfiguration =\n LockerversePaymentConfiguration & {\n connectedAccountId: string | null;\n };\n\nexport type LockerverseWidgetFields = {\n memberId: boolean;\n merchSize: boolean;\n phone: boolean;\n promoCode: boolean;\n serviceFee: boolean;\n shipping: boolean;\n tipping: boolean;\n};\n\nexport type LockerverseCustomFieldOption = { id: string; label: string };\n\ntype LockerverseCustomFieldBase = {\n id: string;\n label: string;\n required: boolean;\n};\n\nexport type LockerverseTextCustomField = LockerverseCustomFieldBase & {\n type: \"text\" | \"textarea\";\n};\n\nexport type LockerverseSingleOptionCustomField = LockerverseCustomFieldBase & {\n options: LockerverseCustomFieldOption[];\n type: \"radio\" | \"select\";\n};\n\nexport type LockerverseMultiOptionCustomField = LockerverseCustomFieldBase & {\n options: LockerverseCustomFieldOption[];\n type: \"checkboxes\" | \"multi_select\";\n};\n\nexport type LockerverseCustomField =\n | LockerverseTextCustomField\n | LockerverseSingleOptionCustomField\n | LockerverseMultiOptionCustomField;\n\nexport type LockerverseCustomFieldAnswerValue<\n Field extends LockerverseCustomField,\n> = Field extends LockerverseMultiOptionCustomField ? string[] : string;\n\nexport type LockerverseCustomFieldAnswer<\n Field extends LockerverseCustomField = LockerverseCustomField,\n> = Field extends LockerverseCustomField\n ? { fieldId: Field[\"id\"]; value: LockerverseCustomFieldAnswerValue<Field> }\n : never;\n\nexport type LockerverseWidgetConfiguration = {\n customFields: LockerverseCustomField[];\n description: string | null;\n fields: LockerverseWidgetFields;\n id: string;\n name: string;\n showCommunityBranding: boolean;\n title: string | null;\n};\n\nexport type LockerverseSdkErrorCode =\n | \"widget_load_failed\"\n | \"signup_load_failed\"\n | \"signup_submit_failed\"\n | \"total_calculation_failed\"\n | \"payment_submit_failed\"\n | \"payment_status_failed\"\n | \"invalid_selection\";\n\nexport type LockerverseSdkOperation =\n | \"load_widget\"\n | \"load_signup\"\n | \"submit_signup\"\n | \"calculate_total\"\n | \"submit_payment\"\n | \"get_payment_status\"\n | \"update_selection\";\n\nexport class LockerverseSdkError extends Error {\n readonly code: LockerverseSdkErrorCode;\n readonly operation: LockerverseSdkOperation;\n readonly reportable: boolean;\n readonly recoveryRecommended: boolean;\n readonly sdkVersion: string;\n readonly status: number | undefined;\n\n constructor({\n code,\n message,\n operation,\n reportable,\n recoveryRecommended = false,\n status,\n }: {\n code: LockerverseSdkErrorCode;\n message: string;\n operation: LockerverseSdkOperation;\n reportable: boolean;\n recoveryRecommended?: boolean;\n status?: number;\n }) {\n super(message);\n this.name = \"LockerverseSdkError\";\n this.code = code;\n this.operation = operation;\n this.reportable = reportable;\n this.recoveryRecommended = recoveryRecommended;\n this.sdkVersion = LOCKERVERSE_SDK_VERSION;\n this.status = status;\n }\n}\n\nexport type LockerverseCheckoutLineItem = {\n productId: string;\n productName: string;\n listingId: string;\n listingSlug: string;\n acceptsDiscounts: boolean;\n pricingMode: \"fixed\" | \"custom\";\n paymentOption: LockerversePaymentOption;\n quantity: number;\n unitAmountCents: number;\n subtotalCents: number;\n};\n\nexport type LockerverseAppliedDiscount = {\n percentageOff: number;\n source: \"email_list\" | \"promo_code\";\n};\n\nexport type LockerverseCheckoutAmounts = {\n amountCents: number;\n discountableSubtotalCents: number;\n discountCents: number;\n serviceFeeCents: number;\n subtotalCents: number;\n tipCents: number;\n totalCents: number;\n};\n\nexport type LockerverseCheckoutQuote = LockerverseCheckoutAmounts & {\n appliedDiscount: LockerverseAppliedDiscount | null;\n authoritative: true;\n paymentReference: string;\n payment: LockerverseCheckoutPaymentConfiguration;\n paymentOption: \"one-time\";\n lineItems: LockerverseCheckoutLineItem[];\n};\n\nexport type LockerverseCheckoutPricingInput = {\n email?: string;\n includeServiceFee?: boolean;\n promoCode?: string;\n tipCents?: number;\n};\n\nexport type LockerversePaymentStatus =\n | \"action_required\"\n | \"failed\"\n | \"pending\"\n | \"success\";\n\nexport type LockerversePaymentResult = {\n checkoutId: string;\n paymentReference: string;\n checkoutStatus: LockerversePaymentStatus;\n clientSecret: string | null;\n requiresAction: boolean;\n status: string | null;\n};\n\nexport type LockerversePaymentSubmission = {\n confirmationToken: string;\n customFieldAnswers?: LockerverseCustomFieldAnswer[];\n email: string;\n memberId?: string;\n merchSize?: \"XS\" | \"S\" | \"M\" | \"L\" | \"XL\" | \"XXL\" | \"XXXL\";\n metadata?: Record<string, string>;\n phone?: string;\n};\n\nexport type LockerverseCheckoutItem =\n | { productId: string; quantity: number }\n | { productId: string; amountCents: number };\n\nexport type LockerverseCalculateTotalInput = LockerverseCheckoutPricingInput & {\n items: LockerverseCheckoutItem[];\n};\n\nexport type LockerversePreparedCheckout = Readonly<\n LockerverseCheckoutQuote & {\n items: readonly LockerverseCheckoutItem[];\n pricing: Readonly<LockerverseCheckoutPricingInput>;\n }\n>;\n\nexport type LockerverseSubmitPaymentInput = {\n checkout: LockerversePreparedCheckout;\n submission: LockerversePaymentSubmission;\n};\n\ntype CreateLockerverseWidgetBaseOptions = {\n communitySlug: string;\n fetch?: typeof globalThis.fetch;\n onError?: (error: LockerverseSdkError) => void;\n requestTimeoutMs?: number;\n sentryDsn?: string | null;\n widgetSlug: string;\n};\n\nexport type CreateLockerverseWidgetOptions =\n CreateLockerverseWidgetBaseOptions &\n (\n | {\n apiBaseUrl: string;\n environment: LockerverseEnvironment;\n }\n | {\n apiBaseUrl?: undefined;\n environment?: \"production\";\n }\n );\n\nexport type LockerverseCheckoutClient = {\n calculateTotal: (\n input: LockerverseCalculateTotalInput\n ) => Promise<LockerversePreparedCheckout>;\n getPaymentStatus: (\n paymentReference: string\n ) => Promise<LockerversePaymentResult>;\n load: () => Promise<LockerverseCatalog>;\n submitPayment: (\n input: LockerverseSubmitPaymentInput\n ) => Promise<LockerversePaymentResult>;\n};\n"],"mappings":"ACKA,MAAa,EAA0BA,SAmHvC,IAAa,EAAb,cAAyC,KAAM,CAC7C,KACA,UACA,WACA,oBACA,WACA,OAEA,YAAY,CACV,OACA,UACA,YACA,aACA,sBAAsB,GACtB,UAQC,CACD,MAAM,CAAO,EACb,KAAK,KAAO,sBACZ,KAAK,KAAO,EACZ,KAAK,UAAY,EACjB,KAAK,WAAa,EAClB,KAAK,oBAAsB,EAC3B,KAAK,WAAa,EAClB,KAAK,OAAS,CAChB,CACF"}
1
+ {"version":3,"file":"types.js","names":["packageMetadata.version"],"sources":["../package.json","../src/types.ts"],"sourcesContent":["","import packageMetadata from \"../package.json\" with { type: \"json\" };\n\nexport type LockerversePaymentOption = \"one-time\" | \"monthly\" | \"annually\";\nexport type LockerverseEnvironment = \"development\" | \"production\";\n\nexport const LOCKERVERSE_SDK_VERSION = packageMetadata.version;\n\nexport type LockerverseProduct = {\n id: string;\n listingId: string;\n slug: string;\n name: string;\n description: string | null;\n pricingMode: \"fixed\" | \"custom\";\n paymentOption: LockerversePaymentOption;\n amountCents: number | null;\n minimumAmountCents: number | null;\n minimumQuantity: number | null;\n maximumQuantity: number | null;\n inventoryQuantity: number | null;\n acceptsDiscounts: boolean;\n};\n\nexport type LockerverseCatalog = {\n payment: LockerversePaymentConfiguration;\n pricingPolicy: LockerverseCheckoutPricingPolicy;\n products: LockerverseProduct[];\n widget: LockerverseWidgetConfiguration;\n};\n\nexport type LockerverseCheckoutPricingPolicy = {\n currency: \"usd\";\n serviceFeeRateBasisPoints: number;\n};\n\nexport type LockerversePaymentConfiguration = {\n currency: \"usd\";\n publishableKey: string;\n};\n\nexport type LockerverseWidgetFields = {\n memberId: boolean;\n merchSize: boolean;\n phone: boolean;\n promoCode: boolean;\n serviceFee: boolean;\n shipping: boolean;\n tipping: boolean;\n};\n\nexport type LockerverseCustomFieldOption = { id: string; label: string };\n\ntype LockerverseCustomFieldBase = {\n id: string;\n label: string;\n required: boolean;\n};\n\nexport type LockerverseTextCustomField = LockerverseCustomFieldBase & {\n type: \"text\" | \"textarea\";\n};\n\nexport type LockerverseSingleOptionCustomField = LockerverseCustomFieldBase & {\n options: LockerverseCustomFieldOption[];\n type: \"radio\" | \"select\";\n};\n\nexport type LockerverseMultiOptionCustomField = LockerverseCustomFieldBase & {\n options: LockerverseCustomFieldOption[];\n type: \"checkboxes\" | \"multi_select\";\n};\n\nexport type LockerverseCustomField =\n | LockerverseTextCustomField\n | LockerverseSingleOptionCustomField\n | LockerverseMultiOptionCustomField;\n\nexport type LockerverseCustomFieldAnswerValue<\n Field extends LockerverseCustomField,\n> = Field extends LockerverseMultiOptionCustomField ? string[] : string;\n\nexport type LockerverseCustomFieldAnswer<\n Field extends LockerverseCustomField = LockerverseCustomField,\n> = Field extends LockerverseCustomField\n ? { fieldId: Field[\"id\"]; value: LockerverseCustomFieldAnswerValue<Field> }\n : never;\n\nexport type LockerverseWidgetConfiguration = {\n customFields: LockerverseCustomField[];\n description: string | null;\n fields: LockerverseWidgetFields;\n id: string;\n name: string;\n showCommunityBranding: boolean;\n title: string | null;\n};\n\nexport type LockerverseSdkErrorCode =\n | \"widget_load_failed\"\n | \"signup_load_failed\"\n | \"signup_submit_failed\"\n | \"payment_status_failed\"\n | \"session_create_failed\"\n | \"session_update_failed\"\n | \"invalid_selection\";\n\nexport type LockerverseSdkOperation =\n | \"load_widget\"\n | \"load_signup\"\n | \"submit_signup\"\n | \"get_payment_status\"\n | \"create_session\"\n | \"update_session_details\"\n | \"update_session_discount\";\n\nexport class LockerverseSdkError extends Error {\n readonly code: LockerverseSdkErrorCode;\n readonly operation: LockerverseSdkOperation;\n readonly reportable: boolean;\n readonly recoveryRecommended: boolean;\n readonly sdkVersion: string;\n readonly status: number | undefined;\n\n constructor({\n code,\n message,\n operation,\n reportable,\n recoveryRecommended = false,\n status,\n }: {\n code: LockerverseSdkErrorCode;\n message: string;\n operation: LockerverseSdkOperation;\n reportable: boolean;\n recoveryRecommended?: boolean;\n status?: number;\n }) {\n super(message);\n this.name = \"LockerverseSdkError\";\n this.code = code;\n this.operation = operation;\n this.reportable = reportable;\n this.recoveryRecommended = recoveryRecommended;\n this.sdkVersion = LOCKERVERSE_SDK_VERSION;\n this.status = status;\n }\n}\n\nexport type LockerversePaymentStatus =\n | \"action_required\"\n | \"failed\"\n | \"pending\"\n | \"success\";\n\nexport type LockerversePaymentResult = {\n checkoutId: string;\n paymentReference: string;\n checkoutStatus: LockerversePaymentStatus;\n clientSecret: string | null;\n requiresAction: boolean;\n status: string | null;\n};\n\nexport type LockerverseCheckoutItem =\n | { productId: string; quantity: number }\n | { productId: string; amountCents: number };\n\nexport type LockerverseCreateCheckoutSessionInput = {\n email?: string;\n includeServiceFee?: boolean;\n items: LockerverseCheckoutItem[];\n requestKey: string;\n returnUrl: string;\n tipCents?: number;\n};\n\nexport type LockerverseCheckoutSession = {\n checkoutId: string;\n clientSecret: string;\n connectedAccountId: string | null;\n paymentReference: string;\n sessionId: string;\n};\n\nexport type LockerverseCheckoutSessionDiscount = {\n discountCents: number;\n paymentReference: string;\n totalCents: number;\n};\n\nexport type LockerverseCheckoutSessionDetailsInput = {\n customFieldAnswers?: LockerverseCustomFieldAnswer[];\n email: string;\n memberId?: string;\n merchSize?: \"XS\" | \"S\" | \"M\" | \"L\" | \"XL\" | \"XXL\" | \"XXXL\";\n paymentReference: string;\n phone?: string;\n};\n\ntype CreateLockerverseWidgetBaseOptions = {\n communitySlug: string;\n fetch?: typeof globalThis.fetch;\n onError?: (error: LockerverseSdkError) => void;\n requestTimeoutMs?: number;\n sentryDsn?: string | null;\n widgetSlug: string;\n};\n\nexport type CreateLockerverseWidgetOptions =\n CreateLockerverseWidgetBaseOptions &\n (\n | {\n apiBaseUrl: string;\n environment: LockerverseEnvironment;\n }\n | {\n apiBaseUrl?: undefined;\n environment?: \"production\";\n }\n );\n\nexport type LockerverseCheckoutClient = {\n createSession: (\n input: LockerverseCreateCheckoutSessionInput\n ) => Promise<LockerverseCheckoutSession>;\n getPaymentStatus: (\n paymentReference: string\n ) => Promise<LockerversePaymentResult>;\n load: () => Promise<LockerverseCatalog>;\n updateSessionDiscount: (input: {\n paymentReference: string;\n promoCode?: string;\n }) => Promise<LockerverseCheckoutSessionDiscount>;\n updateSessionDetails: (\n input: LockerverseCheckoutSessionDetailsInput\n ) => Promise<{ paymentReference: string; totalCents: number }>;\n};\n"],"mappings":"ACKA,MAAa,EAA0BA,SA8GvC,IAAa,EAAb,cAAyC,KAAM,CAC7C,KACA,UACA,WACA,oBACA,WACA,OAEA,YAAY,CACV,OACA,UACA,YACA,aACA,sBAAsB,GACtB,UAQC,CACD,MAAM,CAAO,EACb,KAAK,KAAO,sBACZ,KAAK,KAAO,EACZ,KAAK,UAAY,EACjB,KAAK,WAAa,EAClB,KAAK,oBAAsB,EAC3B,KAAK,WAAa,EAClB,KAAK,OAAS,CAChB,CACF"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@lockerverse/sdk",
3
- "version": "0.2.20",
3
+ "version": "0.2.21",
4
4
  "repository": {
5
5
  "type": "git",
6
6
  "url": "git+https://github.com/Lockerverse/lockerverse-sdk.git",