@licklist/design 0.44.458 → 0.44.460
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/iframe/ryft/RyftPaymentForm.d.ts +2 -1
- package/dist/iframe/ryft/RyftPaymentForm.d.ts.map +1 -1
- package/dist/iframe/ryft/RyftPaymentForm.js +1 -1
- package/dist/product-set/form/ProductCategoriesControl.js +1 -1
- package/package.json +1 -1
- package/src/iframe/ryft/RyftPaymentForm.tsx +11 -0
- package/src/product-set/form/ProductCategoriesControl.tsx +2 -2
|
@@ -7,6 +7,7 @@ export interface RyftPaymentFormProps {
|
|
|
7
7
|
isCreateLoading: boolean;
|
|
8
8
|
initRyft: (onSuccess: () => void, onFailure: (error?: string) => void) => Promise<void>;
|
|
9
9
|
onSubmit: () => Promise<AttemptPaymentResponse>;
|
|
10
|
+
resetReferrer?: () => void;
|
|
10
11
|
}
|
|
11
|
-
export declare const RyftPaymentForm: ({ accountId, isCreateLoading, initRyft, onSubmit, }: RyftPaymentFormProps) => JSX.Element;
|
|
12
|
+
export declare const RyftPaymentForm: ({ accountId, isCreateLoading, initRyft, resetReferrer, onSubmit, }: RyftPaymentFormProps) => JSX.Element;
|
|
12
13
|
//# sourceMappingURL=RyftPaymentForm.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RyftPaymentForm.d.ts","sourceRoot":"","sources":["../../../src/iframe/ryft/RyftPaymentForm.tsx"],"names":[],"mappings":";AAQA,OAAO,EAKL,sBAAsB,EACvB,MAAM,kDAAkD,CAAC;AAG1D,eAAO,MAAM,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAW/C,CAAC;AAEF,oBAAY,qBAAqB,GAAG,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;AAE1D,MAAM,WAAW,oBAAoB;IAEnC,SAAS,EAAE,GAAG,CAAC;IACf,eAAe,EAAE,OAAO,CAAC;IACzB,QAAQ,EAAE,CACR,SAAS,EAAE,MAAM,IAAI,EACrB,SAAS,EAAE,CAAC,KAAK,CAAC,EAAE,MAAM,KAAK,IAAI,KAChC,OAAO,CAAC,IAAI,CAAC,CAAC;IACnB,QAAQ,EAAE,MAAM,OAAO,CAAC,sBAAsB,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"RyftPaymentForm.d.ts","sourceRoot":"","sources":["../../../src/iframe/ryft/RyftPaymentForm.tsx"],"names":[],"mappings":";AAQA,OAAO,EAKL,sBAAsB,EACvB,MAAM,kDAAkD,CAAC;AAG1D,eAAO,MAAM,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAW/C,CAAC;AAEF,oBAAY,qBAAqB,GAAG,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;AAE1D,MAAM,WAAW,oBAAoB;IAEnC,SAAS,EAAE,GAAG,CAAC;IACf,eAAe,EAAE,OAAO,CAAC;IACzB,QAAQ,EAAE,CACR,SAAS,EAAE,MAAM,IAAI,EACrB,SAAS,EAAE,CAAC,KAAK,CAAC,EAAE,MAAM,KAAK,IAAI,KAChC,OAAO,CAAC,IAAI,CAAC,CAAC;IACnB,QAAQ,EAAE,MAAM,OAAO,CAAC,sBAAsB,CAAC,CAAC;IAChD,aAAa,CAAC,EAAE,MAAM,IAAI,CAAC;CAC5B;AAED,eAAO,MAAM,eAAe,uEAMzB,oBAAoB,gBAmJtB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";function e(e){return e&&"object"==typeof e&&"default"in e?e.default:e}Object.defineProperty(exports,"__esModule",{value:!0});var t=require("tslib"),r=require("react"),a=e(r),n=require("react-router-dom"),i=require("../../static/loader/BlockLoader.js"),o=require("react-i18next"),u=e(require("react-bootstrap/Button")),s=require("react-hook-form"),c=e(require("react-bootstrap/Form")),l=require("../../static/loader/ButtonLoader.js"),d=e(require("react-bootstrap/Alert"));require("../../static/index.js");var
|
|
1
|
+
"use strict";function e(e){return e&&"object"==typeof e&&"default"in e?e.default:e}Object.defineProperty(exports,"__esModule",{value:!0});var t=require("tslib"),r=require("react"),a=e(r),n=require("react-router-dom"),i=require("../../static/loader/BlockLoader.js"),o=require("react-i18next"),u=e(require("react-bootstrap/Button")),s=require("react-hook-form"),c=e(require("react-bootstrap/Form")),l=require("../../static/loader/ButtonLoader.js"),d=e(require("react-bootstrap/Alert"));require("../../static/index.js");var f=require("@licklist/plugins/dist/hooks/Ryft/useRyftPayment"),m={insufficient_funds:"insufficientFunds",declined_do_not_honour:"declinedDoNotHonour",invalid_card_number:"invalidCardNumber",restricted_card:"restrictedCard",security_violation:"securityViolation",expired_card:"expiredCard",gateway_reject:"gatewayReject",bad_track_data:"badTrackData","3ds_authentication_failure":"3dsAuthenticationFailure",unknown_error:"unknownError"};exports.RyftPaymentForm=function(e){var y=e.accountId,_=e.isCreateLoading,E=e.initRyft,v=e.resetReferrer,p=e.onSubmit,b=o.useTranslation(["Design","Validation","Ryft"]).t,g=n.useHistory(),R=t.__read(r.useState(!1),2),h=R[0],q=R[1],k=t.__read(r.useState(!1),2),w=k[0],S=k[1],T=t.__read(r.useState(!1),2),F=T[0],N=T[1],A=t.__read(r.useState(void 0),2),P=A[0],x=A[1],D=f.useRyftPayment().addEventHandler,C=s.useForm(),j=function(){v&&v()},L=function(e){(null==e?void 0:e.id)&&(null==e?void 0:e.returnUrl)&&(window.location.href="".concat(e.returnUrl,"&ps=").concat(e.id),j())};return r.useEffect((function(){y.data&&!y.isError&&E((function(){D("cardValidationChanged",(function(e){q(e.isValid)})),N(!1)}),(function(){return N(!0)}))}),[y.data]),y.isLoading||y.isFetching||_?a.createElement("div",{className:"mt-5 pt-5"},a.createElement(i.BlockLoader,null)):y.isError?a.createElement("div",{className:"mt-5 ryft-init-failure"},a.createElement(d,{key:"danger",variant:"danger"},a.createElement("h5",null,b("Ryft:errorMessage")),b("Ryft:noPaymentProviderFound"))):F?a.createElement("div",{className:"mt-5 ryft-init-failure"},a.createElement(d,{key:"danger",variant:"danger"},a.createElement("h5",null,b("Ryft:errorMessage")),b("Ryft:initFailureMessage"),a.createElement("div",{className:"flex flex-column align-items-center mt-4"},a.createElement(u,{variant:"primary",onClick:function(){g.go(0)}},b("Ryft:refresh"))))):a.createElement(a.Fragment,null,a.createElement(c.Label,null,b("Design:paymentDetails")),a.createElement("form",{id:"ryft-pay-form",noValidate:!0,onSubmit:C.handleSubmit((function(){return t.__awaiter(void 0,void 0,void 0,(function(){var e,r,a;return t.__generator(this,(function(t){switch(t.label){case 0:S(!0),t.label=1;case 1:return t.trys.push([1,3,4,5]),[4,p()];case 2:if((e=t.sent())||x("unknown_error"),"requiredAction"in e){if(e.status!==f.RYFT_STATUS_PENDING_ACTION||!(null===(a=e.requiredAction)||void 0===a?void 0:a.url))return L(e),[2];window.location.href=e.requiredAction.url,j()}return e.status===f.RYFT_STATUS_APPROVED||e.status===f.RYFT_STATUS_CAPTURED?(L(e),[2]):(e.lastError&&(x(e.lastError),j()),[3,5]);case 3:return r=t.sent(),x(r),[3,5];case 4:return S(!1),[7];case 5:return[2]}}))}))})),className:"ryft-payment-form"},a.createElement("div",{className:"submit-button-wrapper mt-3"},a.createElement(u,{type:"submit",disabled:w||!h},w&&a.createElement(l.ButtonLoader,null),b("Design:buyNow"))),P&&a.createElement("div",{id:"ryft-payment-error"},b("".concat(m[P])))))},exports.ryftErrorMap=m;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";function e(e){return e&&"object"==typeof e&&"default"in e?e.default:e}Object.defineProperty(exports,"__esModule",{value:!0});var t=require("tslib"),r=require("react"),o=e(r),a=require("react-i18next"),n=require("react-bootstrap"),i=require("react-hook-form"),u=e(require("@licklist/plugins/dist/services/Form/HookFormService")),l=e(require("clsx")),d=require("@dnd-kit/core"),s=require("lodash"),c=require("../../sortable-tree/SortableTreeItem.js"),m=require("../../sortable-tree/SortableTree.js"),p=require("../item/CreateProductSetItem.js"),g=require("./context.js"),v=require("@licklist/core/dist/DataMapper/Product/ProductCategoryDataMapper"),y=require("../product-category/ProductCategoryControl.js"),C=require("./ProductsControl.js"),f=require("./SelectCategoryModal.js"),
|
|
1
|
+
"use strict";function e(e){return e&&"object"==typeof e&&"default"in e?e.default:e}Object.defineProperty(exports,"__esModule",{value:!0});var t=require("tslib"),r=require("react"),o=e(r),a=require("react-i18next"),n=require("react-bootstrap"),i=require("react-hook-form"),u=e(require("@licklist/plugins/dist/services/Form/HookFormService")),l=e(require("clsx")),d=require("@dnd-kit/core"),s=require("lodash"),c=require("../../sortable-tree/SortableTreeItem.js"),m=require("../../sortable-tree/SortableTree.js"),p=require("../item/CreateProductSetItem.js"),g=require("./context.js"),v=require("@licklist/core/dist/DataMapper/Product/ProductCategoryDataMapper"),y=require("../product-category/ProductCategoryControl.js"),C=require("./ProductsControl.js"),f=require("./SelectCategoryModal.js"),b=require("./VenueMapSetModal.js");var E=function(e,t){return e===v.CATEGORY_TYPE_GAME?{className:"game-badge",label:t}:e===v.CATEGORY_TYPE_FIXED_DURATION?{className:"fixed-duration-badge",label:t}:null};exports.ProductCategoriesControl=function(e){var S,T,I,q,_,N,P=e.isLoading,x=e.stepIndex,M=a.useTranslation("Design").t,h=r.useContext(g.ProductSetLoadingContext).providerHasMap,A=i.useFormContext(),k=t.__read(r.useState(!1),2),D=k[0],R=k[1],j=t.__read(r.useState(!1),2),Y=j[0],V=j[1],F=t.__read(r.useState(!1),2),O=F[0],L=F[1],w=A.control,B=A.formState.errors,G=A.clearErrors,H=A.watch,Q=A.trigger,U=H("steps.".concat(x,".hasMap"))||!1,K="steps.".concat(x,".productCategories"),z=i.useFieldArray({name:K,control:w,keyName:"_id"}),W=z.fields,X=z.append,J=z.remove,Z=t.__read(r.useState([]),2),$=Z[0],ee=Z[1],te=1===W.length,re=i.useWatch({control:w,name:K}),oe=null===(T=null===(S=null==B?void 0:B.steps)||void 0===S?void 0:S[x])||void 0===T?void 0:T.productCategories,ae=null===(q=null===(I=null==B?void 0:B.steps)||void 0===I?void 0:I[x])||void 0===q?void 0:q.venueMapSetId,ne=null===(N=null===(_=null==B?void 0:B.steps)||void 0===_?void 0:_[x])||void 0===N?void 0:N.pointProducts,ie=Boolean(ae||ne),ue=d.useSensor(d.MouseSensor,{activationConstraint:{distance:10}});return r.useEffect((function(){re&&re.length&&re.forEach((function(e){var t,r,o,a=null===(r=e.products)||void 0===r?void 0:r.reduce((function(e,t){return e+Number(t.price)*Number(t.totalQuantity)}),0),n=null===(o=e.products)||void 0===o?void 0:o.reduce((function(e,t){return e+Number(t.totalQuantity)}),0);ee(((t={})[e.uniqueId]={price:a,quantity:n},t))}))}),[re]),o.createElement(o.Fragment,null,o.createElement(m.SortableTree,{sensors:[ue],items:W.map((function(e){return String(e._id)})),onDragEnd:function(e){}},W.map((function(e,t){return o.createElement(i.Controller,{key:"product-category-".concat(e._id),name:"".concat(K,".").concat(t,".name"),control:w,rules:{required:M("Validation:fieldRequired",{attribute:M("name")})},render:function(r){var a,i,u=r.field,l=u.value,d=u.onChange;return o.createElement(m.SortableTree.Item,{id:e._id,title:l,isExpanded:te,isInvalid:!!oe,badge:o.createElement(n.Badge,{className:"category-badge"},M("productCategory")),isIconInHeader:!1,subTitle:o.createElement("div",{className:"product-set-badges-container"},o.createElement("div",{className:"product-set-subtitle-dot product-set-subtitle-category-dot"}),o.createElement("span",null,null!==(i=null===(a=$[e.uniqueId])||void 0===a?void 0:a.quantity)&&void 0!==i?i:"N/A"," ",M("products"))),treeLineIconColor:"#1A93AA",modalLabel:M("addNewCategory"),secondaryBadge:E(e.type,M(e.type)),modalClass:c.ProductSetModalClasses.category,isNewAdded:O,body:o.createElement(y.ProductCategoryControl,{isLoading:P,onCategoryNameChange:d,categoryName:l,stepIndex:x,productCategoryIndex:t}),onDelete:function(){return J(t)},validate:function(){return Q("steps.".concat(x,".productCategories.").concat(t))},sortableItems:e.products?e.products.filter((function(e){return e.id})).map((function(e){var t=e.id;return String(t)})):[]},o.createElement(C.ProductsControl,{isLoading:P,quantityType:e.quantityType,hasTicket:null==e?void 0:e.hasTicket,stepIndex:x,productCategoryIndex:t,categoryType:e.type}))}})}))),o.createElement(p.CreateProductSetItem,{title:M("addCategory"),onClick:function(){R(!0)}}),o.createElement(f.SelectCategoryModal,{isVisible:D,onHide:function(){return R(!1)},onCategorySelect:function(e){X(function(e,t){return{id:null,uniqueId:Number(s.uniqueId()),name:"",minSubItems:null,maxSubItems:null,quantityType:v.QUANTITY_TYPE_STANDARD,type:e,isRelyOnPeople:e===v.CATEGORY_TYPE_TICKETS,isTimeRelated:!1,collectUserInfo:!1,hasTicket:e===v.CATEGORY_TYPE_TICKETS,allowDeposits:!1,remainderExpireAfter:void 0,hasBookingManagement:!1,weight:0,isReusable:!1,hasSubEvents:!1,products:[],zoneId:null,sort:t}}(e,W.length)),L(!0),(null==oe?void 0:oe.type)===u.manualErrorType&&G(K)}}),h&&U&&o.createElement(o.Fragment,null,o.createElement(p.CreateProductSetItem,{title:M("editMap"),onClick:function(){V(!0)},className:l("mt-3",ie&&"mb-3",ie&&"is-invalid")}),ie&&o.createElement("div",{className:"manual-form-error"},ae&&M("Validation:fieldRequired",{attribute:M("Design:venueMapSet")}),ne&&M("Validation:fieldMinNumber",{attribute:M("pointProduct"),min:1})),o.createElement(b.VenueMapSetModal,{isVisible:Y,setIsVisible:V,stepIndex:x})),o.createElement("div",{className:"manual-form-error"},oe&&oe.message))},exports.getBadgeConfig=E;
|
package/package.json
CHANGED
|
@@ -39,12 +39,14 @@ export interface RyftPaymentFormProps {
|
|
|
39
39
|
onFailure: (error?: string) => void
|
|
40
40
|
) => Promise<void>;
|
|
41
41
|
onSubmit: () => Promise<AttemptPaymentResponse>;
|
|
42
|
+
resetReferrer?: () => void;
|
|
42
43
|
}
|
|
43
44
|
|
|
44
45
|
export const RyftPaymentForm = ({
|
|
45
46
|
accountId,
|
|
46
47
|
isCreateLoading,
|
|
47
48
|
initRyft,
|
|
49
|
+
resetReferrer,
|
|
48
50
|
onSubmit,
|
|
49
51
|
}: RyftPaymentFormProps) => {
|
|
50
52
|
const { t } = useTranslation(["Design", "Validation", "Ryft"]);
|
|
@@ -58,12 +60,19 @@ export const RyftPaymentForm = ({
|
|
|
58
60
|
const { addEventHandler } = useRyftPayment();
|
|
59
61
|
const methods = useForm<RyftPaymentFormValues>();
|
|
60
62
|
|
|
63
|
+
const setReferrerBeforePayment = () => {
|
|
64
|
+
if (!resetReferrer) return;
|
|
65
|
+
|
|
66
|
+
resetReferrer();
|
|
67
|
+
};
|
|
68
|
+
|
|
61
69
|
const redirectOnFailAttempt = (paymentSession: AttemptPaymentResponse) => {
|
|
62
70
|
if (!paymentSession?.id || !paymentSession?.returnUrl) return;
|
|
63
71
|
|
|
64
72
|
// Handle there cases when orderStatus - Captured, Approved,
|
|
65
73
|
// or when no redirect URL and orderStatus - PendingAction
|
|
66
74
|
window.location.href = `${paymentSession.returnUrl}&ps=${paymentSession.id}`;
|
|
75
|
+
setReferrerBeforePayment();
|
|
67
76
|
};
|
|
68
77
|
|
|
69
78
|
const handleSubmit = async () => {
|
|
@@ -86,6 +95,7 @@ export const RyftPaymentForm = ({
|
|
|
86
95
|
}
|
|
87
96
|
|
|
88
97
|
window.location.href = paymentSession.requiredAction.url;
|
|
98
|
+
setReferrerBeforePayment();
|
|
89
99
|
}
|
|
90
100
|
|
|
91
101
|
if (
|
|
@@ -98,6 +108,7 @@ export const RyftPaymentForm = ({
|
|
|
98
108
|
|
|
99
109
|
if (paymentSession.lastError) {
|
|
100
110
|
setRyftError(paymentSession.lastError);
|
|
111
|
+
setReferrerBeforePayment();
|
|
101
112
|
}
|
|
102
113
|
} catch (error) {
|
|
103
114
|
setRyftError(error as string);
|
|
@@ -135,10 +135,10 @@ export function ProductCategoriesControl({
|
|
|
135
135
|
|
|
136
136
|
productCategories.forEach((productCategory) => {
|
|
137
137
|
const price = productCategory.products?.reduce((sum, product) => {
|
|
138
|
-
return sum + product.price * product.totalQuantity;
|
|
138
|
+
return sum + Number(product.price) * Number(product.totalQuantity);
|
|
139
139
|
}, 0);
|
|
140
140
|
const quantity = productCategory.products?.reduce((sum, product) => {
|
|
141
|
-
return sum + product.totalQuantity;
|
|
141
|
+
return sum + Number(product.totalQuantity);
|
|
142
142
|
}, 0);
|
|
143
143
|
|
|
144
144
|
setProductCategoryState({
|