@betterstore/react 0.2.36 → 0.2.37

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,11 @@
1
1
  # @betterstore/sdk
2
2
 
3
+ ## 0.2.37
4
+
5
+ ### Patch Changes
6
+
7
+ - bug fixes, loading state, scrollbar bug fix
8
+
3
9
  ## 0.2.36
4
10
 
5
11
  ### Patch Changes
@@ -1,7 +1,8 @@
1
1
  import React from "react";
2
- declare const _default: React.MemoExoticComponent<({ onSuccess, onError, children, }: {
2
+ declare const _default: React.MemoExoticComponent<({ onSuccess, onError, children, setSubmitting, }: {
3
3
  onSuccess?: () => void;
4
4
  onError?: () => void;
5
5
  children: React.ReactNode;
6
+ setSubmitting?: (isSubmitting: boolean) => void;
6
7
  }) => React.JSX.Element>;
7
8
  export default _default;
@@ -1,6 +1,6 @@
1
1
  import { Appearance, StripeElementLocale, StripeElementsOptions } from "@stripe/stripe-js";
2
2
  import React from "react";
3
- declare function PaymentElement({ paymentSecret, checkoutAppearance, locale, fonts, onSuccess, onError, children, }: {
3
+ declare function PaymentElement({ paymentSecret, checkoutAppearance, locale, fonts, onSuccess, onError, children, setSubmitting, }: {
4
4
  paymentSecret: string;
5
5
  checkoutAppearance?: Appearance;
6
6
  locale?: StripeElementLocale;
@@ -8,6 +8,7 @@ declare function PaymentElement({ paymentSecret, checkoutAppearance, locale, fon
8
8
  onSuccess?: () => void;
9
9
  onError?: () => void;
10
10
  children: React.ReactNode;
11
+ setSubmitting?: (isSubmitting: boolean) => void;
11
12
  }): React.JSX.Element;
12
13
  declare const _default: React.MemoExoticComponent<typeof PaymentElement>;
13
14
  export default _default;
package/dist/index.cjs.js CHANGED
@@ -5599,7 +5599,7 @@ class MotionValue {
5599
5599
  * This will be replaced by the build step with the latest version number.
5600
5600
  * When MotionValues are provided to motion components, warn if versions are mixed.
5601
5601
  */
5602
- this.version = "12.7.2";
5602
+ this.version = "12.7.3";
5603
5603
  /**
5604
5604
  * Tracks whether this value can output a velocity. Currently this is only true
5605
5605
  * if the value is numerical, but we might be able to widen the scope here and support
@@ -13201,7 +13201,7 @@ function updateMotionValuesFromProps(element, next, prev) {
13201
13201
  * and warn against mismatches.
13202
13202
  */
13203
13203
  if (process.env.NODE_ENV === "development") {
13204
- warnOnce(nextValue.version === "12.7.2", `Attempting to mix Motion versions ${nextValue.version} with 12.7.2 may not work as expected.`);
13204
+ warnOnce(nextValue.version === "12.7.3", `Attempting to mix Motion versions ${nextValue.version} with 12.7.3 may not work as expected.`);
13205
13205
  }
13206
13206
  }
13207
13207
  else if (isMotionValue(prevValue)) {
@@ -34142,7 +34142,7 @@ const useCheckout = create((set) => ({
34142
34142
  setIsSubmitting: (isSubmitting) => set({ isSubmitting }),
34143
34143
  }));
34144
34144
 
34145
- const CheckoutForm$1 = ({ onSuccess, onError, children, }) => {
34145
+ const CheckoutForm$1 = ({ onSuccess, onError, children, setSubmitting, }) => {
34146
34146
  const stripe = reactStripe_umdExports.useStripe();
34147
34147
  const elements = reactStripe_umdExports.useElements();
34148
34148
  const { setIsSubmitting } = useCheckout();
@@ -34152,6 +34152,7 @@ const CheckoutForm$1 = ({ onSuccess, onError, children, }) => {
34152
34152
  if (!stripe || !elements) {
34153
34153
  return;
34154
34154
  }
34155
+ setSubmitting === null || setSubmitting === void 0 ? void 0 : setSubmitting(true);
34155
34156
  setIsSubmitting(true);
34156
34157
  const response = yield stripe.confirmPayment({
34157
34158
  elements,
@@ -34160,15 +34161,18 @@ const CheckoutForm$1 = ({ onSuccess, onError, children, }) => {
34160
34161
  if (response.error) {
34161
34162
  setErrorMessage(response.error.message || "Something went wrong.");
34162
34163
  setIsSubmitting(false);
34164
+ setSubmitting === null || setSubmitting === void 0 ? void 0 : setSubmitting(false);
34163
34165
  onError === null || onError === void 0 ? void 0 : onError();
34164
34166
  }
34165
34167
  else {
34166
34168
  setErrorMessage(undefined);
34167
34169
  setIsSubmitting(false);
34170
+ setSubmitting === null || setSubmitting === void 0 ? void 0 : setSubmitting(false);
34168
34171
  onSuccess === null || onSuccess === void 0 ? void 0 : onSuccess();
34169
34172
  }
34170
34173
  setErrorMessage(undefined);
34171
34174
  setIsSubmitting(false);
34175
+ setSubmitting === null || setSubmitting === void 0 ? void 0 : setSubmitting(false);
34172
34176
  });
34173
34177
  return (React.createElement("form", { onSubmit: handleSubmit },
34174
34178
  React.createElement("div", null,
@@ -34180,7 +34184,7 @@ var CheckoutForm$2 = React.memo(CheckoutForm$1);
34180
34184
 
34181
34185
  const publicStripeKey = "pk_test_51RCjhw2cgbkVT71muwgBSw1tP06YVR4l4P9zI8wP2ipmze9VnTmTwxESVVePmU6QV8TL6bxG7f10oXQRnKC3F3KT00EsvlPAoS";
34182
34186
  const stripePromise = loadStripe(publicStripeKey);
34183
- function PaymentElement({ paymentSecret, checkoutAppearance, locale, fonts, onSuccess, onError, children, }) {
34187
+ function PaymentElement({ paymentSecret, checkoutAppearance, locale, fonts, onSuccess, onError, children, setSubmitting, }) {
34184
34188
  const options = {
34185
34189
  locale: locale !== null && locale !== void 0 ? locale : "en",
34186
34190
  appearance: checkoutAppearance,
@@ -34188,11 +34192,12 @@ function PaymentElement({ paymentSecret, checkoutAppearance, locale, fonts, onSu
34188
34192
  fonts: fonts,
34189
34193
  };
34190
34194
  return (React.createElement(reactStripe_umdExports.Elements, { stripe: stripePromise, options: options },
34191
- React.createElement(CheckoutForm$2, { onSuccess: onSuccess, onError: onError, children: children })));
34195
+ React.createElement(CheckoutForm$2, { onSuccess: onSuccess, onError: onError, children: children, setSubmitting: setSubmitting })));
34192
34196
  }
34193
34197
  var PaymentElement$1 = React.memo(PaymentElement);
34194
34198
 
34195
34199
  function PaymentForm({ paymentSecret, onSuccess, onError, onBack, onDoubleBack, contactEmail, shippingAddress, shippingProvider, shippingPrice, checkoutAppearance, fonts, locale, }) {
34200
+ const [isSubmitting, setIsSubmitting] = React.useState(false);
34196
34201
  const { t } = useTranslation();
34197
34202
  return (React.createElement("div", { className: "space-y-6" },
34198
34203
  React.createElement("div", null,
@@ -34220,12 +34225,12 @@ function PaymentForm({ paymentSecret, onSuccess, onError, onBack, onDoubleBack,
34220
34225
  " \u00B7 ",
34221
34226
  shippingPrice)),
34222
34227
  React.createElement(Button, { variant: "link", size: "link", onClick: onBack }, t("CheckoutEmbed.Shipping.change")))),
34223
- React.createElement("div", { className: "mt-8" }, paymentSecret && (React.createElement(PaymentElement$1, { fonts: fonts, checkoutAppearance: convertCheckoutAppearanceToStripeAppearance(checkoutAppearance, fonts), locale: locale, paymentSecret: paymentSecret, onSuccess: onSuccess, onError: onError },
34228
+ React.createElement("div", { className: "mt-8" }, paymentSecret && (React.createElement(PaymentElement$1, { fonts: fonts, checkoutAppearance: convertCheckoutAppearanceToStripeAppearance(checkoutAppearance, fonts), locale: locale, paymentSecret: paymentSecret, onSuccess: onSuccess, onError: onError, setSubmitting: setIsSubmitting },
34224
34229
  React.createElement("div", { className: "flex justify-between items-center pt-8" },
34225
34230
  React.createElement(Button, { type: "button", variant: "ghost", onClick: onBack },
34226
34231
  React.createElement(ChevronLeft, null),
34227
34232
  t("CheckoutEmbed.Payment.back")),
34228
- React.createElement(SubmitButton, { isValid: true, isSubmitting: false }, t("CheckoutEmbed.Payment.button"))))))));
34233
+ React.createElement(SubmitButton, { isValid: true, isSubmitting: isSubmitting }, t("CheckoutEmbed.Payment.button"))))))));
34229
34234
  }
34230
34235
 
34231
34236
  function Skeleton(_a) {
@@ -34608,7 +34613,7 @@ function CheckoutEmbed({ checkoutId, config }) {
34608
34613
  return;
34609
34614
  setCheckout(Object.assign(Object.assign({}, checkout), { shipping: cost }));
34610
34615
  };
34611
- return (React.createElement("div", { className: "checkout-embed mx-auto max-w-[1200px] min-h-screen overflow-x-hidden gap-6 md:gap-0 py-4 md:py-12 flex flex-col md:grid md:grid-cols-7 " },
34616
+ return (React.createElement("div", { className: "checkout-embed scrollbar-hidden mx-auto max-w-[1200px] min-h-screen overflow-x-hidden gap-6 md:gap-0 py-4 md:py-12 flex flex-col md:grid md:grid-cols-7 " },
34612
34617
  React.createElement(Appearance, { appearance: appearance }),
34613
34618
  React.createElement("div", { className: "md:col-span-4 px-4 md:px-8" }, loading ? (React.createElement(CheckoutFormLoading, null)) : (React.createElement(CheckoutForm, { locale: locale, setShippingCost: setShippingCost, storeClient: storeClient, fonts: config.fonts, checkoutAppearance: appearance, currency: (_a = checkout === null || checkout === void 0 ? void 0 : checkout.currency) !== null && _a !== void 0 ? _a : "", customer: checkout === null || checkout === void 0 ? void 0 : checkout.customer, cancelUrl: cancelUrl, checkoutId: checkoutId, clientSecret: clientSecret, onSuccess: onSuccess, onError: onError }))),
34614
34619
  React.createElement("div", { className: "md:col-span-3 px-4 md:px-8 order-first md:order-last" }, loading ? (React.createElement(CheckoutSummaryLoading, null)) : (React.createElement(CheckoutSummary, { currency: (_b = checkout === null || checkout === void 0 ? void 0 : checkout.currency) !== null && _b !== void 0 ? _b : "", lineItems: (_c = checkout === null || checkout === void 0 ? void 0 : checkout.lineItems) !== null && _c !== void 0 ? _c : [], shipping: checkout === null || checkout === void 0 ? void 0 : checkout.shipping, tax: checkout === null || checkout === void 0 ? void 0 : checkout.tax, cancelUrl: cancelUrl, exchangeRate: (_d = checkout === null || checkout === void 0 ? void 0 : checkout.exchangeRate) !== null && _d !== void 0 ? _d : 1 })))));
package/dist/index.mjs CHANGED
@@ -5576,7 +5576,7 @@ class MotionValue {
5576
5576
  * This will be replaced by the build step with the latest version number.
5577
5577
  * When MotionValues are provided to motion components, warn if versions are mixed.
5578
5578
  */
5579
- this.version = "12.7.2";
5579
+ this.version = "12.7.3";
5580
5580
  /**
5581
5581
  * Tracks whether this value can output a velocity. Currently this is only true
5582
5582
  * if the value is numerical, but we might be able to widen the scope here and support
@@ -13178,7 +13178,7 @@ function updateMotionValuesFromProps(element, next, prev) {
13178
13178
  * and warn against mismatches.
13179
13179
  */
13180
13180
  if (process.env.NODE_ENV === "development") {
13181
- warnOnce(nextValue.version === "12.7.2", `Attempting to mix Motion versions ${nextValue.version} with 12.7.2 may not work as expected.`);
13181
+ warnOnce(nextValue.version === "12.7.3", `Attempting to mix Motion versions ${nextValue.version} with 12.7.3 may not work as expected.`);
13182
13182
  }
13183
13183
  }
13184
13184
  else if (isMotionValue(prevValue)) {
@@ -34119,7 +34119,7 @@ const useCheckout = create((set) => ({
34119
34119
  setIsSubmitting: (isSubmitting) => set({ isSubmitting }),
34120
34120
  }));
34121
34121
 
34122
- const CheckoutForm$1 = ({ onSuccess, onError, children, }) => {
34122
+ const CheckoutForm$1 = ({ onSuccess, onError, children, setSubmitting, }) => {
34123
34123
  const stripe = reactStripe_umdExports.useStripe();
34124
34124
  const elements = reactStripe_umdExports.useElements();
34125
34125
  const { setIsSubmitting } = useCheckout();
@@ -34129,6 +34129,7 @@ const CheckoutForm$1 = ({ onSuccess, onError, children, }) => {
34129
34129
  if (!stripe || !elements) {
34130
34130
  return;
34131
34131
  }
34132
+ setSubmitting === null || setSubmitting === void 0 ? void 0 : setSubmitting(true);
34132
34133
  setIsSubmitting(true);
34133
34134
  const response = yield stripe.confirmPayment({
34134
34135
  elements,
@@ -34137,15 +34138,18 @@ const CheckoutForm$1 = ({ onSuccess, onError, children, }) => {
34137
34138
  if (response.error) {
34138
34139
  setErrorMessage(response.error.message || "Something went wrong.");
34139
34140
  setIsSubmitting(false);
34141
+ setSubmitting === null || setSubmitting === void 0 ? void 0 : setSubmitting(false);
34140
34142
  onError === null || onError === void 0 ? void 0 : onError();
34141
34143
  }
34142
34144
  else {
34143
34145
  setErrorMessage(undefined);
34144
34146
  setIsSubmitting(false);
34147
+ setSubmitting === null || setSubmitting === void 0 ? void 0 : setSubmitting(false);
34145
34148
  onSuccess === null || onSuccess === void 0 ? void 0 : onSuccess();
34146
34149
  }
34147
34150
  setErrorMessage(undefined);
34148
34151
  setIsSubmitting(false);
34152
+ setSubmitting === null || setSubmitting === void 0 ? void 0 : setSubmitting(false);
34149
34153
  });
34150
34154
  return (React__default.createElement("form", { onSubmit: handleSubmit },
34151
34155
  React__default.createElement("div", null,
@@ -34157,7 +34161,7 @@ var CheckoutForm$2 = memo$1(CheckoutForm$1);
34157
34161
 
34158
34162
  const publicStripeKey = "pk_test_51RCjhw2cgbkVT71muwgBSw1tP06YVR4l4P9zI8wP2ipmze9VnTmTwxESVVePmU6QV8TL6bxG7f10oXQRnKC3F3KT00EsvlPAoS";
34159
34163
  const stripePromise = loadStripe(publicStripeKey);
34160
- function PaymentElement({ paymentSecret, checkoutAppearance, locale, fonts, onSuccess, onError, children, }) {
34164
+ function PaymentElement({ paymentSecret, checkoutAppearance, locale, fonts, onSuccess, onError, children, setSubmitting, }) {
34161
34165
  const options = {
34162
34166
  locale: locale !== null && locale !== void 0 ? locale : "en",
34163
34167
  appearance: checkoutAppearance,
@@ -34165,11 +34169,12 @@ function PaymentElement({ paymentSecret, checkoutAppearance, locale, fonts, onSu
34165
34169
  fonts: fonts,
34166
34170
  };
34167
34171
  return (React__default.createElement(reactStripe_umdExports.Elements, { stripe: stripePromise, options: options },
34168
- React__default.createElement(CheckoutForm$2, { onSuccess: onSuccess, onError: onError, children: children })));
34172
+ React__default.createElement(CheckoutForm$2, { onSuccess: onSuccess, onError: onError, children: children, setSubmitting: setSubmitting })));
34169
34173
  }
34170
34174
  var PaymentElement$1 = memo$1(PaymentElement);
34171
34175
 
34172
34176
  function PaymentForm({ paymentSecret, onSuccess, onError, onBack, onDoubleBack, contactEmail, shippingAddress, shippingProvider, shippingPrice, checkoutAppearance, fonts, locale, }) {
34177
+ const [isSubmitting, setIsSubmitting] = useState(false);
34173
34178
  const { t } = useTranslation();
34174
34179
  return (React__default.createElement("div", { className: "space-y-6" },
34175
34180
  React__default.createElement("div", null,
@@ -34197,12 +34202,12 @@ function PaymentForm({ paymentSecret, onSuccess, onError, onBack, onDoubleBack,
34197
34202
  " \u00B7 ",
34198
34203
  shippingPrice)),
34199
34204
  React__default.createElement(Button, { variant: "link", size: "link", onClick: onBack }, t("CheckoutEmbed.Shipping.change")))),
34200
- React__default.createElement("div", { className: "mt-8" }, paymentSecret && (React__default.createElement(PaymentElement$1, { fonts: fonts, checkoutAppearance: convertCheckoutAppearanceToStripeAppearance(checkoutAppearance, fonts), locale: locale, paymentSecret: paymentSecret, onSuccess: onSuccess, onError: onError },
34205
+ React__default.createElement("div", { className: "mt-8" }, paymentSecret && (React__default.createElement(PaymentElement$1, { fonts: fonts, checkoutAppearance: convertCheckoutAppearanceToStripeAppearance(checkoutAppearance, fonts), locale: locale, paymentSecret: paymentSecret, onSuccess: onSuccess, onError: onError, setSubmitting: setIsSubmitting },
34201
34206
  React__default.createElement("div", { className: "flex justify-between items-center pt-8" },
34202
34207
  React__default.createElement(Button, { type: "button", variant: "ghost", onClick: onBack },
34203
34208
  React__default.createElement(ChevronLeft, null),
34204
34209
  t("CheckoutEmbed.Payment.back")),
34205
- React__default.createElement(SubmitButton, { isValid: true, isSubmitting: false }, t("CheckoutEmbed.Payment.button"))))))));
34210
+ React__default.createElement(SubmitButton, { isValid: true, isSubmitting: isSubmitting }, t("CheckoutEmbed.Payment.button"))))))));
34206
34211
  }
34207
34212
 
34208
34213
  function Skeleton(_a) {
@@ -34585,7 +34590,7 @@ function CheckoutEmbed({ checkoutId, config }) {
34585
34590
  return;
34586
34591
  setCheckout(Object.assign(Object.assign({}, checkout), { shipping: cost }));
34587
34592
  };
34588
- return (React__default.createElement("div", { className: "checkout-embed mx-auto max-w-[1200px] min-h-screen overflow-x-hidden gap-6 md:gap-0 py-4 md:py-12 flex flex-col md:grid md:grid-cols-7 " },
34593
+ return (React__default.createElement("div", { className: "checkout-embed scrollbar-hidden mx-auto max-w-[1200px] min-h-screen overflow-x-hidden gap-6 md:gap-0 py-4 md:py-12 flex flex-col md:grid md:grid-cols-7 " },
34589
34594
  React__default.createElement(Appearance, { appearance: appearance }),
34590
34595
  React__default.createElement("div", { className: "md:col-span-4 px-4 md:px-8" }, loading ? (React__default.createElement(CheckoutFormLoading, null)) : (React__default.createElement(CheckoutForm, { locale: locale, setShippingCost: setShippingCost, storeClient: storeClient, fonts: config.fonts, checkoutAppearance: appearance, currency: (_a = checkout === null || checkout === void 0 ? void 0 : checkout.currency) !== null && _a !== void 0 ? _a : "", customer: checkout === null || checkout === void 0 ? void 0 : checkout.customer, cancelUrl: cancelUrl, checkoutId: checkoutId, clientSecret: clientSecret, onSuccess: onSuccess, onError: onError }))),
34591
34596
  React__default.createElement("div", { className: "md:col-span-3 px-4 md:px-8 order-first md:order-last" }, loading ? (React__default.createElement(CheckoutSummaryLoading, null)) : (React__default.createElement(CheckoutSummary, { currency: (_b = checkout === null || checkout === void 0 ? void 0 : checkout.currency) !== null && _b !== void 0 ? _b : "", lineItems: (_c = checkout === null || checkout === void 0 ? void 0 : checkout.lineItems) !== null && _c !== void 0 ? _c : [], shipping: checkout === null || checkout === void 0 ? void 0 : checkout.shipping, tax: checkout === null || checkout === void 0 ? void 0 : checkout.tax, cancelUrl: cancelUrl, exchangeRate: (_d = checkout === null || checkout === void 0 ? void 0 : checkout.exchangeRate) !== null && _d !== void 0 ? _d : 1 })))));
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@betterstore/react",
3
- "version": "0.2.36",
3
+ "version": "0.2.37",
4
4
  "description": "E-commerce for Developers",
5
5
  "private": false,
6
6
  "publishConfig": {