@ordergroove/offers 2.30.2-alpha-PR-715-3.3 → 2.30.2
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 +11 -0
- package/dist/bundle-report.html +3 -3
- package/dist/offers.js +1 -1
- package/dist/offers.js.map +2 -2
- package/package.json +2 -2
- package/src/components/Price.js +1 -1
- package/src/components/__tests__/Price.spec.js +69 -0
- package/src/shopify/__tests__/productPlan.spec.js +44 -0
package/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,17 @@
|
|
|
3
3
|
All notable changes to this project will be documented in this file.
|
|
4
4
|
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
|
5
5
|
|
|
6
|
+
## [2.30.2](https://github.com/ordergroove/plush-toys/compare/@ordergroove/offers@2.30.1...@ordergroove/offers@2.30.2) (2023-02-07)
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
### Bug Fixes
|
|
10
|
+
|
|
11
|
+
* prepaid prices deals only with integers (canary) ([ae42803](https://github.com/ordergroove/plush-toys/commit/ae428035a8e66b610466efc2daffb5c49d865824))
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
|
|
6
17
|
## [2.30.1](https://github.com/ordergroove/plush-toys/compare/@ordergroove/offers@2.30.0...@ordergroove/offers@2.30.1) (2023-02-03)
|
|
7
18
|
|
|
8
19
|
**Note:** Version bump only for package @ordergroove/offers
|
package/dist/bundle-report.html
CHANGED
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
│ └ examples/index.js
|
|
5
5
|
└ examples/index.js ───────────────────────────────────────── 8.9kb ─── 3.3%
|
|
6
6
|
|
|
7
|
-
dist/offers.js ───────────────────────────────────────────── 136.
|
|
7
|
+
dist/offers.js ───────────────────────────────────────────── 136.6kb ─ 100.0%
|
|
8
8
|
├ src/components/Offer.js ─────────────────────────────────── 8.2kb ─── 6.0%
|
|
9
9
|
│ └ src/make-api.js
|
|
10
10
|
│ └ src/index.js
|
|
@@ -128,10 +128,10 @@
|
|
|
128
128
|
├ src/shopify/shopifyBootstrap.ts ─────────────────────────── 1.1kb ─── 0.8%
|
|
129
129
|
│ └ src/index.js
|
|
130
130
|
├ src/index.js ────────────────────────────────────────────── 1.1kb ─── 0.8%
|
|
131
|
-
├ src/components/
|
|
131
|
+
├ src/components/Price.js ─────────────────────────────────── 1.1kb ─── 0.8%
|
|
132
132
|
│ └ src/make-api.js
|
|
133
133
|
│ └ src/index.js
|
|
134
|
-
├ src/components/
|
|
134
|
+
├ src/components/UpsellButton.js ──────────────────────────── 1.1kb ─── 0.8%
|
|
135
135
|
│ └ src/make-api.js
|
|
136
136
|
│ └ src/index.js
|
|
137
137
|
├ src/shopify/shopifyTrackingMiddleware.ts ────────────────── 1.1kb ─── 0.8%
|
package/dist/offers.js
CHANGED
|
@@ -929,7 +929,7 @@ var lib=(()=>{var Aa=Object.create;var tt=Object.defineProperty;var Na=Object.ge
|
|
|
929
929
|
<slot name="append"></slot>
|
|
930
930
|
`:d`
|
|
931
931
|
<slot name="fallback"></slot>
|
|
932
|
-
`}};n(Ko,"PrepaidData");var Jl=n((t,e)=>({shipmentsOptedIn:rr(e.product)(t),prepaidShipmentsSelected:er(e.product)(t),productPlans:t.productPlans}),"mapStateToProps"),Xi=g(Jl)(Ko);var{TestWizard:Kl}=(ta(),ea);function Zo(){let t="og-test-wizard";customElements.get(t)||customElements.define(t,Kl);let e=document.createElement(t);document.body.appendChild(e)}n(Zo,"default");var Xo=[79,71,68,69,86],ra=n(()=>{if(window.OG_OFFERS_TEST_MODE_ENABLE)return;window.OG_OFFERS_TEST_MODE_ENABLE=!0;let t=0;document.addEventListener("keyup",async function(e){if(e.which===Xo[t]){let o=Xo[t];setTimeout(function(){t<=o&&(t=0)},5e3),t+=1,t>=Xo.length&&Zo()}else t=0},!1)},"enable");ue();j();F();ue();U();var Nr=n((t=[],e)=>{switch(e.type){case ce:return[];case Se:return e.newValue?e.newValue.optedin:t;case N:case D:{let[{prepaidShipments:c,...l},p]=ze(t,e.payload.product);return p.concat({...l,...e.payload.product,frequency:e.payload.frequency})}case te:let{payload:r}=e,[{prepaidShipments:o,...s},i]=ze(t,r.product),a={...s,...r.product};return r.prepaidShipments&&(a.prepaidShipments=r.prepaidShipments),i.concat(a);case q:return t.filter(c=>!I(e.payload.product,c));case ot:return t.map(c=>I(e.payload.product,c)?{...c,...e.payload.newProduct}:c);case Mt:return t.filter(c=>!I(e.payload.product,c));case $e:return[];default:return t}},"optedin"),en=n((t=[],e)=>{switch(e.type){case ce:return[];case Se:return e.newValue?e.newValue.optedout:t;case N:case D:return t.filter(s=>!I(e.payload.product,s));case q:let[r,o]=ze(t,e.payload.product);return o.concat({...r,...e.payload.product,frequency:e.payload.frequency});case ot:return t.map(s=>I(e.payload.product,s)?{...s,...e.payload.newProduct}:s);case $e:return[];default:return t}},"optedout"),tn=n((t={},{type:e,payload:r})=>{switch(e){case Ut:return r&&r.count>0?{...t,...r.results[0]&&{...r.results[0],place:new Date(Date.parse(r.results[0].place.replace(/-/gi,"/")))}}:t;case Ft:return{...t,products:(r.results||[]).map(o=>o.product)};case Lt:return{...t,...r,public_id:r.order,...r.product&&{products:(t.products||[]).concat(r.product)}};default:return t}},"nextUpcomingOrder"),Zl=n((t={},e)=>{switch(e.type){case R:return{...t,...e.payload.autoship};default:return t}},"autoshipEligible"),Xl=n((t={},e)=>{switch(e.type){case W:return{...t};case R:return{...t,...e.payload.in_stock};default:return t}},"inStock"),rn=n((t={},e)=>{switch(e.type){case R:return{...t,...e.payload.eligibility_groups};default:return t}},"eligibilityGroups"),oa=n((t,e)=>t.map(r=>({...e[r],id:[r][0]})),"mapIncentive"),on=n((t={},e)=>{switch(e.type){case R:return{...t,...[...new Set(Object.keys(e.payload.incentives||{}))].reduce((r,o)=>({...r,[o]:Object.entries(e.payload.incentives).filter(([s])=>s===o).reduce((s,[,{initial:i,ongoing:a}])=>({...s,initial:[...s.initial||[],...oa(i,e.payload.incentives_display)],ongoing:[...s.ongoing||[],...oa(a,e.payload.incentives_display)]}),{})}),{})};default:return t}},"incentives"),ep=n((t={},e)=>{switch(e.type){case N:case D:return{...t,[w(e.payload.product)]:e.payload.frequency};case q:return{...t,[w(e.payload.product)]:void 0};default:return t}},"frequency"),nn=n((t=!1,e)=>{switch(e.type){case Dt:return{...e.payload};case Fe:return!1;default:return t}},"auth"),sn=n((t="",e)=>{switch(e.type){case De:return e.payload;default:return t}},"merchantId"),an=n((t=null,e)=>{switch(e.type){case qt:return e.payload;default:return t}},"authUrl"),tp=n((t={},e)=>{switch(e.type){case R:return{...t,offerId:(e.payload.module_view||{}).regular,...e.payload.modifiers};default:return t}},"offer"),cn=n((t="",e)=>{switch(e.type){case R:return(e.payload.module_view||{}).regular||"";default:return t}},"offerId"),ln=n((t=null,e)=>{switch(e.type){case ce:return null;case Ue:return e.payload;default:return t}},"sessionId"),rp=n((t={},e)=>{switch(e.type){case R:return{...t,...Object.entries(e.payload.autoship).map(([r])=>({[r]:Object.keys(e.payload.modifiers)})).reduce((r,o)=>({...r,...o}))};case $e:return{};default:return t}},"productOffer"),pn=n((t={},e)=>{switch(e.type){case Gt:return{...t,[w(e.payload.product)]:e.payload.firstOrderPlaceDate};default:return t}},"firstOrderPlaceDate"),un=n((t={},e)=>{switch(e.type){case Bt:return{...t,[w(e.payload.product)]:e.payload.productToSubscribe};default:return t}},"productToSubscribe"),Ct=n((t={},e)=>{switch(e.type){case Le:return{...t,name:xe,apiUrl:"https://staging.offers.ordergroove.com",legoUrl:"https://staging.restapi.ordergroove.com"};case Me:return{...t,name:zt,apiUrl:"https://dev.offers.ordergroove.com",legoUrl:"https://dev.restapi.ordergroove.com"};case je:return{...t,name:ve,apiUrl:"https://offers.ordergroove.com",legoUrl:"https://restapi.ordergroove.com"};default:return t}},"environment"),dn=n((t={offerOptInLabel:"Subscribe to save",offerIncentiveText:"Save {{ogIncentive DiscountPercent}} when you subscribe",offerOptOutLabel:"Deliver one-time only",offerEveryLabel:"Delivery Every",offerTooltipTrigger:"[?]",offerTooltipContent:"Seems this is a great subscription offering. Many fun details about this program exist.",optinButtonLabel:"\u2022",optoutButtonLabel:"\u2022",optinStatusOptedInLabel:"You're opted in!",optinStatusOptedOutLabel:"You're not opted in.",optinToggleLabel:"\u2022",upsellButtonLabel:"Add item to order on ",upsellButtonPrefix:"",upsellModalContent:"Some upsell modal content",upsellModalOptInLabel:"Subscribe",upsellModalOptOutLabel:"Purchase one time",upsellModalTitle:"Impulse Upsell",upsellModalConfirmLabel:"Ok",upsellModalCancelLabel:"Cancel",defaultFrequencyCopy:"(Most Popular)",frequencyPeriods:{"1":"day","2":"week","3":"month"}},e)=>{switch(e.type){case jt:return{...t,...e.payload};default:return t}},"locale"),op=n((t={offerType:"radio"},e)=>{switch(e.type){case $t:return{...t,...e.payload,defaultFrequency:e.payload.defaultFrequency?ut(e.payload.defaultFrequency):t.defaultFrequency,frequenciesEveryPeriod:[],frequencies:e.payload.frequencies?e.payload.frequencies.map(ut):t.frequencies};default:return t}},"config"),fn=n((t=!1,e)=>{switch(e.type){case nt:return e.payload;default:return t}},"previewStandardOffer"),hn=n((t=!1,e)=>{switch(e.type){case st:return e.payload;default:return t}},"previewUpsellOffer"),mn=n((t=[],e)=>{switch(e.type){case R:return{...t,...e.payload.autoship_by_default};default:return t}},"autoshipByDefault"),gn=n((t=[],e)=>{switch(e.type){case R:return{...t,...e.payload.default_frequencies};default:return t}},"defaultFrequencies"),yn=n((t=[],e)=>{switch(e.type){case Ht:return[...e.payload||[]];case Vt:return[e.payload,...t];default:return t}},"templates"),np=n((t={},e)=>{switch(e.type){case re:return pr(e.payload);default:return t}},"productPlans"),bn=n((t={},e)=>{switch(e.type){case te:return e.payload.prepaidShipments?{...t,[e.payload.product.id]:e.payload.prepaidShipments}:t;default:return t}},"prepaidShipmentsSelected"),Ir=At({optedin:Nr,optedout:en,nextUpcomingOrder:tn,autoshipEligible:Zl,inStock:Xl,eligibilityGroups:rn,incentives:on,frequency:ep,auth:nn,merchantId:sn,authUrl:an,offer:tp,offerId:cn,sessionId:ln,productOffer:rp,firstOrderPlaceDate:pn,productToSubscribe:un,environment:Ct,locale:dn,config:op,previewStandardOffer:fn,previewUpsellOffer:hn,autoshipByDefault:mn,defaultFrequencies:gn,templates:yn,productPlans:np,prepaidShipmentsSelected:bn});j();O();F();U();var _n=class extends A(M){static get properties(){return{...super.properties,regular:{type:Boolean,reflect:!0},subscription:{type:Boolean,reflect:!0},discount:{type:Boolean,reflect:!0},payAsYouGo:{type:Boolean,reflect:!0,attribute:"pay-as-you-go"},frequency:{type:Object},productPlans:{type:Object}}}get value(){var l;let e=w(this.product),r=this.frequency||this.configDefaultFrequency||((l=this.offer)==null?void 0:l.defaultFrequency),o=this.productPlans[e]||[];if(this.payAsYouGo){let p=o.find(f=>f.prepaidShipments===null);return p?p.subscriptionPrice:""}let s=o.find(p=>p.frequency===r);if(!s)return"";let{regularPrice:i,discountRate:a,subscriptionPrice:c}=s;return c===i?"":this.regular?i:this.discount?a:c}render(){let e=this.value;return e?d`
|
|
932
|
+
`}};n(Ko,"PrepaidData");var Jl=n((t,e)=>({shipmentsOptedIn:rr(e.product)(t),prepaidShipmentsSelected:er(e.product)(t),productPlans:t.productPlans}),"mapStateToProps"),Xi=g(Jl)(Ko);var{TestWizard:Kl}=(ta(),ea);function Zo(){let t="og-test-wizard";customElements.get(t)||customElements.define(t,Kl);let e=document.createElement(t);document.body.appendChild(e)}n(Zo,"default");var Xo=[79,71,68,69,86],ra=n(()=>{if(window.OG_OFFERS_TEST_MODE_ENABLE)return;window.OG_OFFERS_TEST_MODE_ENABLE=!0;let t=0;document.addEventListener("keyup",async function(e){if(e.which===Xo[t]){let o=Xo[t];setTimeout(function(){t<=o&&(t=0)},5e3),t+=1,t>=Xo.length&&Zo()}else t=0},!1)},"enable");ue();j();F();ue();U();var Nr=n((t=[],e)=>{switch(e.type){case ce:return[];case Se:return e.newValue?e.newValue.optedin:t;case N:case D:{let[{prepaidShipments:c,...l},p]=ze(t,e.payload.product);return p.concat({...l,...e.payload.product,frequency:e.payload.frequency})}case te:let{payload:r}=e,[{prepaidShipments:o,...s},i]=ze(t,r.product),a={...s,...r.product};return r.prepaidShipments&&(a.prepaidShipments=r.prepaidShipments),i.concat(a);case q:return t.filter(c=>!I(e.payload.product,c));case ot:return t.map(c=>I(e.payload.product,c)?{...c,...e.payload.newProduct}:c);case Mt:return t.filter(c=>!I(e.payload.product,c));case $e:return[];default:return t}},"optedin"),en=n((t=[],e)=>{switch(e.type){case ce:return[];case Se:return e.newValue?e.newValue.optedout:t;case N:case D:return t.filter(s=>!I(e.payload.product,s));case q:let[r,o]=ze(t,e.payload.product);return o.concat({...r,...e.payload.product,frequency:e.payload.frequency});case ot:return t.map(s=>I(e.payload.product,s)?{...s,...e.payload.newProduct}:s);case $e:return[];default:return t}},"optedout"),tn=n((t={},{type:e,payload:r})=>{switch(e){case Ut:return r&&r.count>0?{...t,...r.results[0]&&{...r.results[0],place:new Date(Date.parse(r.results[0].place.replace(/-/gi,"/")))}}:t;case Ft:return{...t,products:(r.results||[]).map(o=>o.product)};case Lt:return{...t,...r,public_id:r.order,...r.product&&{products:(t.products||[]).concat(r.product)}};default:return t}},"nextUpcomingOrder"),Zl=n((t={},e)=>{switch(e.type){case R:return{...t,...e.payload.autoship};default:return t}},"autoshipEligible"),Xl=n((t={},e)=>{switch(e.type){case W:return{...t};case R:return{...t,...e.payload.in_stock};default:return t}},"inStock"),rn=n((t={},e)=>{switch(e.type){case R:return{...t,...e.payload.eligibility_groups};default:return t}},"eligibilityGroups"),oa=n((t,e)=>t.map(r=>({...e[r],id:[r][0]})),"mapIncentive"),on=n((t={},e)=>{switch(e.type){case R:return{...t,...[...new Set(Object.keys(e.payload.incentives||{}))].reduce((r,o)=>({...r,[o]:Object.entries(e.payload.incentives).filter(([s])=>s===o).reduce((s,[,{initial:i,ongoing:a}])=>({...s,initial:[...s.initial||[],...oa(i,e.payload.incentives_display)],ongoing:[...s.ongoing||[],...oa(a,e.payload.incentives_display)]}),{})}),{})};default:return t}},"incentives"),ep=n((t={},e)=>{switch(e.type){case N:case D:return{...t,[w(e.payload.product)]:e.payload.frequency};case q:return{...t,[w(e.payload.product)]:void 0};default:return t}},"frequency"),nn=n((t=!1,e)=>{switch(e.type){case Dt:return{...e.payload};case Fe:return!1;default:return t}},"auth"),sn=n((t="",e)=>{switch(e.type){case De:return e.payload;default:return t}},"merchantId"),an=n((t=null,e)=>{switch(e.type){case qt:return e.payload;default:return t}},"authUrl"),tp=n((t={},e)=>{switch(e.type){case R:return{...t,offerId:(e.payload.module_view||{}).regular,...e.payload.modifiers};default:return t}},"offer"),cn=n((t="",e)=>{switch(e.type){case R:return(e.payload.module_view||{}).regular||"";default:return t}},"offerId"),ln=n((t=null,e)=>{switch(e.type){case ce:return null;case Ue:return e.payload;default:return t}},"sessionId"),rp=n((t={},e)=>{switch(e.type){case R:return{...t,...Object.entries(e.payload.autoship).map(([r])=>({[r]:Object.keys(e.payload.modifiers)})).reduce((r,o)=>({...r,...o}))};case $e:return{};default:return t}},"productOffer"),pn=n((t={},e)=>{switch(e.type){case Gt:return{...t,[w(e.payload.product)]:e.payload.firstOrderPlaceDate};default:return t}},"firstOrderPlaceDate"),un=n((t={},e)=>{switch(e.type){case Bt:return{...t,[w(e.payload.product)]:e.payload.productToSubscribe};default:return t}},"productToSubscribe"),Ct=n((t={},e)=>{switch(e.type){case Le:return{...t,name:xe,apiUrl:"https://staging.offers.ordergroove.com",legoUrl:"https://staging.restapi.ordergroove.com"};case Me:return{...t,name:zt,apiUrl:"https://dev.offers.ordergroove.com",legoUrl:"https://dev.restapi.ordergroove.com"};case je:return{...t,name:ve,apiUrl:"https://offers.ordergroove.com",legoUrl:"https://restapi.ordergroove.com"};default:return t}},"environment"),dn=n((t={offerOptInLabel:"Subscribe to save",offerIncentiveText:"Save {{ogIncentive DiscountPercent}} when you subscribe",offerOptOutLabel:"Deliver one-time only",offerEveryLabel:"Delivery Every",offerTooltipTrigger:"[?]",offerTooltipContent:"Seems this is a great subscription offering. Many fun details about this program exist.",optinButtonLabel:"\u2022",optoutButtonLabel:"\u2022",optinStatusOptedInLabel:"You're opted in!",optinStatusOptedOutLabel:"You're not opted in.",optinToggleLabel:"\u2022",upsellButtonLabel:"Add item to order on ",upsellButtonPrefix:"",upsellModalContent:"Some upsell modal content",upsellModalOptInLabel:"Subscribe",upsellModalOptOutLabel:"Purchase one time",upsellModalTitle:"Impulse Upsell",upsellModalConfirmLabel:"Ok",upsellModalCancelLabel:"Cancel",defaultFrequencyCopy:"(Most Popular)",frequencyPeriods:{"1":"day","2":"week","3":"month"}},e)=>{switch(e.type){case jt:return{...t,...e.payload};default:return t}},"locale"),op=n((t={offerType:"radio"},e)=>{switch(e.type){case $t:return{...t,...e.payload,defaultFrequency:e.payload.defaultFrequency?ut(e.payload.defaultFrequency):t.defaultFrequency,frequenciesEveryPeriod:[],frequencies:e.payload.frequencies?e.payload.frequencies.map(ut):t.frequencies};default:return t}},"config"),fn=n((t=!1,e)=>{switch(e.type){case nt:return e.payload;default:return t}},"previewStandardOffer"),hn=n((t=!1,e)=>{switch(e.type){case st:return e.payload;default:return t}},"previewUpsellOffer"),mn=n((t=[],e)=>{switch(e.type){case R:return{...t,...e.payload.autoship_by_default};default:return t}},"autoshipByDefault"),gn=n((t=[],e)=>{switch(e.type){case R:return{...t,...e.payload.default_frequencies};default:return t}},"defaultFrequencies"),yn=n((t=[],e)=>{switch(e.type){case Ht:return[...e.payload||[]];case Vt:return[e.payload,...t];default:return t}},"templates"),np=n((t={},e)=>{switch(e.type){case re:return pr(e.payload);default:return t}},"productPlans"),bn=n((t={},e)=>{switch(e.type){case te:return e.payload.prepaidShipments?{...t,[e.payload.product.id]:e.payload.prepaidShipments}:t;default:return t}},"prepaidShipmentsSelected"),Ir=At({optedin:Nr,optedout:en,nextUpcomingOrder:tn,autoshipEligible:Zl,inStock:Xl,eligibilityGroups:rn,incentives:on,frequency:ep,auth:nn,merchantId:sn,authUrl:an,offer:tp,offerId:cn,sessionId:ln,productOffer:rp,firstOrderPlaceDate:pn,productToSubscribe:un,environment:Ct,locale:dn,config:op,previewStandardOffer:fn,previewUpsellOffer:hn,autoshipByDefault:mn,defaultFrequencies:gn,templates:yn,productPlans:np,prepaidShipmentsSelected:bn});j();O();F();U();var _n=class extends A(M){static get properties(){return{...super.properties,regular:{type:Boolean,reflect:!0},subscription:{type:Boolean,reflect:!0},discount:{type:Boolean,reflect:!0},payAsYouGo:{type:Boolean,reflect:!0,attribute:"pay-as-you-go"},frequency:{type:Object},productPlans:{type:Object}}}get value(){var l;let e=w(this.product),r=this.frequency||this.configDefaultFrequency||((l=this.offer)==null?void 0:l.defaultFrequency),o=this.productPlans[e]||[];if(this.payAsYouGo){let p=o.find(f=>f.prepaidShipments===null||f.prepaidShipments===void 0);return p?p.subscriptionPrice:""}let s=o.find(p=>p.frequency===r);if(!s)return"";let{regularPrice:i,discountRate:a,subscriptionPrice:c}=s;return c===i?"":this.regular?i:this.discount?a:c}render(){let e=this.value;return e?d`
|
|
933
933
|
<slot name="prepend"></slot>
|
|
934
934
|
${e}
|
|
935
935
|
<slot name="append"></slot>
|