@pelcro/react-pelcro-js 4.0.0-alpha.49 → 4.0.0-alpha.50

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/index.cjs.js CHANGED
@@ -14535,18 +14535,42 @@ function LoginModal({
14535
14535
  plan,
14536
14536
  order,
14537
14537
  switchToAddressView,
14538
- switchToPaymentView
14538
+ switchToPaymentView,
14539
+ giftCode,
14540
+ isGift
14539
14541
  } = usePelcro();
14540
14542
 
14541
14543
  const onSuccess = res => {
14542
14544
  var _props$onSuccess;
14543
14545
 
14544
14546
  (_props$onSuccess = props.onSuccess) === null || _props$onSuccess === void 0 ? void 0 : _props$onSuccess.call(props, res);
14547
+ handleAfterLoginLogic();
14548
+ };
14545
14549
 
14550
+ const handleAfterLoginLogic = () => {
14546
14551
  if (window.Pelcro.paywall.isArticleRestricted()) {
14547
14552
  initPaywalls();
14548
14553
  }
14549
14554
 
14555
+ if (!product && !order && !giftCode) {
14556
+ // If product and plan are not selected
14557
+ return resetView();
14558
+ } // If this is a redeem gift
14559
+
14560
+
14561
+ if (giftCode) {
14562
+ return switchView("gift-redeem"); // return switchToAddressView();
14563
+ } // Check if the subscription is meant as a gift (if so, gather recipients info)
14564
+
14565
+
14566
+ if (isGift) {
14567
+ return switchView("gift-create");
14568
+ }
14569
+
14570
+ if (order) {
14571
+ return switchToAddressView();
14572
+ }
14573
+
14550
14574
  if (product && plan) {
14551
14575
  if (product.address_required) {
14552
14576
  return switchToAddressView();
@@ -14559,17 +14583,14 @@ function LoginModal({
14559
14583
  return switchView("plan-select");
14560
14584
  }
14561
14585
 
14562
- if (order) {
14563
- return switchToAddressView();
14564
- }
14565
-
14566
- resetView();
14567
14586
  const viewFromURL = getStableViewID(window.Pelcro.helpers.getURLParameter("view"));
14568
14587
  const viewsURLs = ["invoice-details", "gift-redeem", "plan-select", "payment-method-update"];
14569
14588
 
14570
14589
  if (viewsURLs.includes(viewFromURL)) {
14571
- initViewFromURL();
14590
+ return initViewFromURL();
14572
14591
  }
14592
+
14593
+ return resetView();
14573
14594
  };
14574
14595
 
14575
14596
  const onCreateAccountClick = () => {
@@ -25666,7 +25687,7 @@ const CouponCodeField = props => {
25666
25687
 
25667
25688
  return /*#__PURE__*/React__default['default'].createElement(Input, Object.assign({
25668
25689
  className: "plc-h-12",
25669
- wrapperClassName: "plc-mb-1",
25690
+ wrapperClassName: "plc-mb-6",
25670
25691
  errorClassName: "plc-h-12 sm:plc-h-8",
25671
25692
  error: couponError,
25672
25693
  "aria-label": t("labels.code"),
@@ -36685,52 +36706,31 @@ const MembershipsItems = props => {
36685
36706
 
36686
36707
  if (memberships.length === 0) return null;
36687
36708
  return memberships.sort((a, b) => a.created_at - b.created_at).map(membership => {
36688
- return /*#__PURE__*/React__default['default'].createElement(React__default['default'].Fragment, null, membership.subscription.ended_at === null && /*#__PURE__*/React__default['default'].createElement("tr", {
36709
+ return /*#__PURE__*/React__default['default'].createElement("tr", {
36689
36710
  key: membership.id,
36690
- className: `plc-w-full pelcro-membership-row`
36711
+ className: `plc-w-full plc-align-top pelcro-membership-row`
36691
36712
  }, /*#__PURE__*/React__default['default'].createElement("td", {
36692
- className: "plc-hidden md:plc-table-cell plc-truncate"
36693
- }, /*#__PURE__*/React__default['default'].createElement("span", {
36694
- className: "plc-font-semibold plc-text-gray-500"
36695
- }, membership.subscription.plan.product.name)), /*#__PURE__*/React__default['default'].createElement("td", {
36696
36713
  className: "plc-truncate"
36697
- }, /*#__PURE__*/React__default['default'].createElement("span", {
36698
- className: "plc-font-semibold plc-text-gray-500"
36699
- }, membership.subscription.plan.nickname), /*#__PURE__*/React__default['default'].createElement("div", {
36700
- className: "plc-inline md:plc-hidden"
36701
- }, /*#__PURE__*/React__default['default'].createElement("br", null), /*#__PURE__*/React__default['default'].createElement("span", {
36702
- className: "plc-text-xs plc-text-gray-400"
36703
- }, getFormattedPriceByLocal(membership.subscription.plan.amount, membership.subscription.plan.currency, getPageOrDefaultLanguage())))), /*#__PURE__*/React__default['default'].createElement("td", {
36704
- className: "plc-hidden md:plc-table-cell plc-truncate"
36705
- }, /*#__PURE__*/React__default['default'].createElement("span", {
36706
- className: "plc-font-semibold plc-text-gray-500"
36707
- }, getFormattedPriceByLocal(membership.subscription.plan.amount, membership.subscription.plan.currency, getPageOrDefaultLanguage()))), /*#__PURE__*/React__default['default'].createElement("td", {
36708
- className: "plc-truncate plc-py-2"
36709
- }, /*#__PURE__*/React__default['default'].createElement("span", {
36714
+ }, membership.subscription.plan.nickname && /*#__PURE__*/React__default['default'].createElement(React__default['default'].Fragment, null, /*#__PURE__*/React__default['default'].createElement("span", {
36715
+ className: "plc-font-semibold plc-text-gray-500 pelcro-membership-plan"
36716
+ }, membership.subscription.plan.nickname))), /*#__PURE__*/React__default['default'].createElement("td", null, /*#__PURE__*/React__default['default'].createElement("span", {
36710
36717
  className: `plc-inline-flex plc-p-1 plc-text-xs plc-font-semibold ${getMemberShipStatus(membership.status).bgColor} plc-uppercase ${getMemberShipStatus(membership.status).textColor} plc-rounded-lg`
36711
- }, getMemberShipStatus(membership.status).icon, getMemberShipStatus(membership.status).title), /*#__PURE__*/React__default['default'].createElement("br", null), /*#__PURE__*/React__default['default'].createElement("div", {
36712
- className: "plc-text-xs plc-text-gray-500"
36713
- }, membership.subscription.status && /*#__PURE__*/React__default['default'].createElement("span", {
36714
- className: "plc-inline-block plc-mt-1 plc-underline"
36715
- }, props === null || props === void 0 ? void 0 : props.getSubscriptionStatus(membership.subscription).content), /*#__PURE__*/React__default['default'].createElement("br", null), membership.subscription.shipments_remaining ? /*#__PURE__*/React__default['default'].createElement("span", {
36716
- className: "plc-inline-block plc-mt-1"
36717
- }, membership.subscription.shipments_remaining, " ", t("labels.shipments")) : null)), /*#__PURE__*/React__default['default'].createElement("td", {
36718
- className: "plc-truncate"
36719
- }, /*#__PURE__*/React__default['default'].createElement(Button, {
36718
+ }, getMemberShipStatus(membership.status).icon, getMemberShipStatus(membership.status).title)), /*#__PURE__*/React__default['default'].createElement("td", null, /*#__PURE__*/React__default['default'].createElement(Button, {
36720
36719
  variant: "ghost",
36721
36720
  icon: /*#__PURE__*/React__default['default'].createElement(SvgEdit, {
36722
36721
  className: "plc-w-4 plc-h-4"
36723
36722
  }),
36724
36723
  className: "plc-text-blue-400 focus:plc-ring-blue-500 pelcro-dashboard-membership-address-button",
36725
36724
  onClick: () => onChangeAddressClick(membership.id)
36726
- }, `${t("labels.editAddress")}`))));
36725
+ }, `${t("labels.editAddress")}`)));
36727
36726
  });
36728
36727
  };
36729
36728
 
36730
36729
  function getActiveMemberships() {
36731
36730
  var _window$Pelcro$user$r, _window$Pelcro$user$r2;
36732
36731
 
36733
- return (_window$Pelcro$user$r = (_window$Pelcro$user$r2 = window.Pelcro.user.read().memberships) === null || _window$Pelcro$user$r2 === void 0 ? void 0 : _window$Pelcro$user$r2.filter(membership => membership.status === "active")) !== null && _window$Pelcro$user$r !== void 0 ? _window$Pelcro$user$r : [];
36732
+ const subsStatuses = ["active", "extended", "trialing"];
36733
+ return (_window$Pelcro$user$r = (_window$Pelcro$user$r2 = window.Pelcro.user.read().memberships) === null || _window$Pelcro$user$r2 === void 0 ? void 0 : _window$Pelcro$user$r2.filter(membership => membership.status === "active" && subsStatuses.includes(membership.subscription.status))) !== null && _window$Pelcro$user$r !== void 0 ? _window$Pelcro$user$r : [];
36734
36734
  }
36735
36735
 
36736
36736
  function getMemberShipStatus(status) {
@@ -38733,7 +38733,8 @@ const hasDonationSubs = () => {
38733
38733
  const hasActiveMemberships = () => {
38734
38734
  var _window$Pelcro$user$r3, _window$Pelcro$user$r4;
38735
38735
 
38736
- return (_window$Pelcro$user$r3 = (_window$Pelcro$user$r4 = window.Pelcro.user.read().memberships) === null || _window$Pelcro$user$r4 === void 0 ? void 0 : _window$Pelcro$user$r4.some(membership => membership.status === "active" && membership.subscription.ended_at === null)) !== null && _window$Pelcro$user$r3 !== void 0 ? _window$Pelcro$user$r3 : false;
38736
+ const subsStatuses = ["active", "extended", "trialing"];
38737
+ return (_window$Pelcro$user$r3 = (_window$Pelcro$user$r4 = window.Pelcro.user.read().memberships) === null || _window$Pelcro$user$r4 === void 0 ? void 0 : _window$Pelcro$user$r4.some(membership => membership.status === "active" && subsStatuses.includes(membership.subscription.status))) !== null && _window$Pelcro$user$r3 !== void 0 ? _window$Pelcro$user$r3 : false;
38737
38738
  };
38738
38739
 
38739
38740
  const DashboardContent = props => {
package/dist/index.esm.js CHANGED
@@ -14505,18 +14505,42 @@ function LoginModal({
14505
14505
  plan,
14506
14506
  order,
14507
14507
  switchToAddressView,
14508
- switchToPaymentView
14508
+ switchToPaymentView,
14509
+ giftCode,
14510
+ isGift
14509
14511
  } = usePelcro();
14510
14512
 
14511
14513
  const onSuccess = res => {
14512
14514
  var _props$onSuccess;
14513
14515
 
14514
14516
  (_props$onSuccess = props.onSuccess) === null || _props$onSuccess === void 0 ? void 0 : _props$onSuccess.call(props, res);
14517
+ handleAfterLoginLogic();
14518
+ };
14515
14519
 
14520
+ const handleAfterLoginLogic = () => {
14516
14521
  if (window.Pelcro.paywall.isArticleRestricted()) {
14517
14522
  initPaywalls();
14518
14523
  }
14519
14524
 
14525
+ if (!product && !order && !giftCode) {
14526
+ // If product and plan are not selected
14527
+ return resetView();
14528
+ } // If this is a redeem gift
14529
+
14530
+
14531
+ if (giftCode) {
14532
+ return switchView("gift-redeem"); // return switchToAddressView();
14533
+ } // Check if the subscription is meant as a gift (if so, gather recipients info)
14534
+
14535
+
14536
+ if (isGift) {
14537
+ return switchView("gift-create");
14538
+ }
14539
+
14540
+ if (order) {
14541
+ return switchToAddressView();
14542
+ }
14543
+
14520
14544
  if (product && plan) {
14521
14545
  if (product.address_required) {
14522
14546
  return switchToAddressView();
@@ -14529,17 +14553,14 @@ function LoginModal({
14529
14553
  return switchView("plan-select");
14530
14554
  }
14531
14555
 
14532
- if (order) {
14533
- return switchToAddressView();
14534
- }
14535
-
14536
- resetView();
14537
14556
  const viewFromURL = getStableViewID(window.Pelcro.helpers.getURLParameter("view"));
14538
14557
  const viewsURLs = ["invoice-details", "gift-redeem", "plan-select", "payment-method-update"];
14539
14558
 
14540
14559
  if (viewsURLs.includes(viewFromURL)) {
14541
- initViewFromURL();
14560
+ return initViewFromURL();
14542
14561
  }
14562
+
14563
+ return resetView();
14543
14564
  };
14544
14565
 
14545
14566
  const onCreateAccountClick = () => {
@@ -25636,7 +25657,7 @@ const CouponCodeField = props => {
25636
25657
 
25637
25658
  return /*#__PURE__*/React__default.createElement(Input, Object.assign({
25638
25659
  className: "plc-h-12",
25639
- wrapperClassName: "plc-mb-1",
25660
+ wrapperClassName: "plc-mb-6",
25640
25661
  errorClassName: "plc-h-12 sm:plc-h-8",
25641
25662
  error: couponError,
25642
25663
  "aria-label": t("labels.code"),
@@ -36655,52 +36676,31 @@ const MembershipsItems = props => {
36655
36676
 
36656
36677
  if (memberships.length === 0) return null;
36657
36678
  return memberships.sort((a, b) => a.created_at - b.created_at).map(membership => {
36658
- return /*#__PURE__*/React__default.createElement(React__default.Fragment, null, membership.subscription.ended_at === null && /*#__PURE__*/React__default.createElement("tr", {
36679
+ return /*#__PURE__*/React__default.createElement("tr", {
36659
36680
  key: membership.id,
36660
- className: `plc-w-full pelcro-membership-row`
36681
+ className: `plc-w-full plc-align-top pelcro-membership-row`
36661
36682
  }, /*#__PURE__*/React__default.createElement("td", {
36662
- className: "plc-hidden md:plc-table-cell plc-truncate"
36663
- }, /*#__PURE__*/React__default.createElement("span", {
36664
- className: "plc-font-semibold plc-text-gray-500"
36665
- }, membership.subscription.plan.product.name)), /*#__PURE__*/React__default.createElement("td", {
36666
36683
  className: "plc-truncate"
36667
- }, /*#__PURE__*/React__default.createElement("span", {
36668
- className: "plc-font-semibold plc-text-gray-500"
36669
- }, membership.subscription.plan.nickname), /*#__PURE__*/React__default.createElement("div", {
36670
- className: "plc-inline md:plc-hidden"
36671
- }, /*#__PURE__*/React__default.createElement("br", null), /*#__PURE__*/React__default.createElement("span", {
36672
- className: "plc-text-xs plc-text-gray-400"
36673
- }, getFormattedPriceByLocal(membership.subscription.plan.amount, membership.subscription.plan.currency, getPageOrDefaultLanguage())))), /*#__PURE__*/React__default.createElement("td", {
36674
- className: "plc-hidden md:plc-table-cell plc-truncate"
36675
- }, /*#__PURE__*/React__default.createElement("span", {
36676
- className: "plc-font-semibold plc-text-gray-500"
36677
- }, getFormattedPriceByLocal(membership.subscription.plan.amount, membership.subscription.plan.currency, getPageOrDefaultLanguage()))), /*#__PURE__*/React__default.createElement("td", {
36678
- className: "plc-truncate plc-py-2"
36679
- }, /*#__PURE__*/React__default.createElement("span", {
36684
+ }, membership.subscription.plan.nickname && /*#__PURE__*/React__default.createElement(React__default.Fragment, null, /*#__PURE__*/React__default.createElement("span", {
36685
+ className: "plc-font-semibold plc-text-gray-500 pelcro-membership-plan"
36686
+ }, membership.subscription.plan.nickname))), /*#__PURE__*/React__default.createElement("td", null, /*#__PURE__*/React__default.createElement("span", {
36680
36687
  className: `plc-inline-flex plc-p-1 plc-text-xs plc-font-semibold ${getMemberShipStatus(membership.status).bgColor} plc-uppercase ${getMemberShipStatus(membership.status).textColor} plc-rounded-lg`
36681
- }, getMemberShipStatus(membership.status).icon, getMemberShipStatus(membership.status).title), /*#__PURE__*/React__default.createElement("br", null), /*#__PURE__*/React__default.createElement("div", {
36682
- className: "plc-text-xs plc-text-gray-500"
36683
- }, membership.subscription.status && /*#__PURE__*/React__default.createElement("span", {
36684
- className: "plc-inline-block plc-mt-1 plc-underline"
36685
- }, props === null || props === void 0 ? void 0 : props.getSubscriptionStatus(membership.subscription).content), /*#__PURE__*/React__default.createElement("br", null), membership.subscription.shipments_remaining ? /*#__PURE__*/React__default.createElement("span", {
36686
- className: "plc-inline-block plc-mt-1"
36687
- }, membership.subscription.shipments_remaining, " ", t("labels.shipments")) : null)), /*#__PURE__*/React__default.createElement("td", {
36688
- className: "plc-truncate"
36689
- }, /*#__PURE__*/React__default.createElement(Button, {
36688
+ }, getMemberShipStatus(membership.status).icon, getMemberShipStatus(membership.status).title)), /*#__PURE__*/React__default.createElement("td", null, /*#__PURE__*/React__default.createElement(Button, {
36690
36689
  variant: "ghost",
36691
36690
  icon: /*#__PURE__*/React__default.createElement(SvgEdit, {
36692
36691
  className: "plc-w-4 plc-h-4"
36693
36692
  }),
36694
36693
  className: "plc-text-blue-400 focus:plc-ring-blue-500 pelcro-dashboard-membership-address-button",
36695
36694
  onClick: () => onChangeAddressClick(membership.id)
36696
- }, `${t("labels.editAddress")}`))));
36695
+ }, `${t("labels.editAddress")}`)));
36697
36696
  });
36698
36697
  };
36699
36698
 
36700
36699
  function getActiveMemberships() {
36701
36700
  var _window$Pelcro$user$r, _window$Pelcro$user$r2;
36702
36701
 
36703
- return (_window$Pelcro$user$r = (_window$Pelcro$user$r2 = window.Pelcro.user.read().memberships) === null || _window$Pelcro$user$r2 === void 0 ? void 0 : _window$Pelcro$user$r2.filter(membership => membership.status === "active")) !== null && _window$Pelcro$user$r !== void 0 ? _window$Pelcro$user$r : [];
36702
+ const subsStatuses = ["active", "extended", "trialing"];
36703
+ return (_window$Pelcro$user$r = (_window$Pelcro$user$r2 = window.Pelcro.user.read().memberships) === null || _window$Pelcro$user$r2 === void 0 ? void 0 : _window$Pelcro$user$r2.filter(membership => membership.status === "active" && subsStatuses.includes(membership.subscription.status))) !== null && _window$Pelcro$user$r !== void 0 ? _window$Pelcro$user$r : [];
36704
36704
  }
36705
36705
 
36706
36706
  function getMemberShipStatus(status) {
@@ -38703,7 +38703,8 @@ const hasDonationSubs = () => {
38703
38703
  const hasActiveMemberships = () => {
38704
38704
  var _window$Pelcro$user$r3, _window$Pelcro$user$r4;
38705
38705
 
38706
- return (_window$Pelcro$user$r3 = (_window$Pelcro$user$r4 = window.Pelcro.user.read().memberships) === null || _window$Pelcro$user$r4 === void 0 ? void 0 : _window$Pelcro$user$r4.some(membership => membership.status === "active" && membership.subscription.ended_at === null)) !== null && _window$Pelcro$user$r3 !== void 0 ? _window$Pelcro$user$r3 : false;
38706
+ const subsStatuses = ["active", "extended", "trialing"];
38707
+ return (_window$Pelcro$user$r3 = (_window$Pelcro$user$r4 = window.Pelcro.user.read().memberships) === null || _window$Pelcro$user$r4 === void 0 ? void 0 : _window$Pelcro$user$r4.some(membership => membership.status === "active" && subsStatuses.includes(membership.subscription.status))) !== null && _window$Pelcro$user$r3 !== void 0 ? _window$Pelcro$user$r3 : false;
38707
38708
  };
38708
38709
 
38709
38710
  const DashboardContent = props => {
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@pelcro/react-pelcro-js",
3
3
  "description": "Pelcro's React UI Elements",
4
- "version": "4.0.0-alpha.49",
4
+ "version": "4.0.0-alpha.50",
5
5
  "license": "MIT",
6
6
  "private": false,
7
7
  "main": "dist/index.cjs.js",