@licklist/design 0.44.485-dev.1 → 0.44.485-dev.10
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/customers/components/filter/CustomerFilter.d.ts +1 -2
- package/dist/customers/components/filter/CustomerFilter.d.ts.map +1 -1
- package/dist/customers/components/filter/CustomerFilter.js +1 -1
- package/dist/events/event-venue-map/components/MapPoint/MapPoint.js +1 -1
- package/dist/events/event-venue-map/components/MapPoint/components/ProductIcon/ProductIcon.d.ts +2 -1
- package/dist/events/event-venue-map/components/MapPoint/components/ProductIcon/ProductIcon.d.ts.map +1 -1
- package/dist/events/event-venue-map/components/MapPoint/components/ProductIcon/ProductIcon.js +1 -1
- package/dist/iframe/event/event-card/IframeEventCard.js +1 -1
- package/dist/iframe/payment/order-items-table/hooks/useTableData.d.ts +5 -0
- package/dist/iframe/payment/order-items-table/hooks/useTableData.d.ts.map +1 -1
- package/dist/iframe/payment/order-items-table/hooks/useTableData.js +1 -1
- package/dist/iframe/payment/order-items-table/utils/index.d.ts +6 -1
- package/dist/iframe/payment/order-items-table/utils/index.d.ts.map +1 -1
- package/dist/iframe/payment/order-items-table/utils/index.js +1 -1
- package/dist/iframe/payment/payment-page/PaymentPage.d.ts.map +1 -1
- package/dist/iframe/payment/payment-page/PaymentPage.js +1 -1
- package/dist/iframe/payment/payment-status-page/PaymentStatusPage.d.ts +3 -2
- package/dist/iframe/payment/payment-status-page/PaymentStatusPage.d.ts.map +1 -1
- package/dist/iframe/payment/payment-status-page/PaymentStatusPage.js +1 -1
- package/dist/product-set/form/ProductCategoriesControl.d.ts.map +1 -1
- package/dist/product-set/form/ProductCategoriesControl.js +1 -1
- package/dist/sales/booking/filter/components/AdditionalFIlterSection.js +1 -1
- package/dist/sales/guest-profile/previous-bookings/PreviousBookings.d.ts +3 -2
- package/dist/sales/guest-profile/previous-bookings/PreviousBookings.d.ts.map +1 -1
- package/dist/sales/guest-profile/previous-bookings/PreviousBookings.js +1 -1
- package/dist/styles/customers/Filter.scss +23 -4
- package/package.json +1 -1
- package/src/customers/components/filter/CustomerFilter.stories.tsx +1 -2
- package/src/customers/components/filter/CustomerFilter.tsx +3 -5
- package/src/events/event-venue-map/components/MapPoint/MapPoint.tsx +2 -2
- package/src/events/event-venue-map/components/MapPoint/components/ProductIcon/ProductIcon.tsx +8 -0
- package/src/iframe/event/event-card/IframeEventCard.tsx +1 -1
- package/src/iframe/payment/order-items-table/OrderItemsTable.stories.tsx +2 -0
- package/src/iframe/payment/order-items-table/hooks/useTableData.tsx +21 -14
- package/src/iframe/payment/order-items-table/utils/index.ts +36 -11
- package/src/iframe/payment/payment-page/PaymentPage.tsx +3 -1
- package/src/iframe/payment/payment-status-page/PaymentStatusPage.tsx +9 -3
- package/src/product-set/form/ProductCategoriesControl.tsx +4 -1
- package/src/sales/guest-profile/previous-bookings/PreviousBookings.stories.tsx +35 -5
- package/src/sales/guest-profile/previous-bookings/PreviousBookings.tsx +11 -3
- package/src/styles/customers/Filter.scss +23 -4
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CustomerFilter.d.ts","sourceRoot":"","sources":["../../../../src/customers/components/filter/CustomerFilter.tsx"],"names":[],"mappings":";AAKA,aAAK,oBAAoB,GAAG;IAC1B,
|
|
1
|
+
{"version":3,"file":"CustomerFilter.d.ts","sourceRoot":"","sources":["../../../../src/customers/components/filter/CustomerFilter.tsx"],"names":[],"mappings":";AAKA,aAAK,oBAAoB,GAAG;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;AAQF,MAAM,WAAW,mBAAmB;IAClC,MAAM,EAAE,oBAAoB,CAAC;IAC7B,QAAQ,EAAE,CAAC,MAAM,EAAE,oBAAoB,KAAK,IAAI,CAAC;CAClD;AAED,eAAO,MAAM,cAAc,yBAA0B,mBAAmB,gBAyBvE,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=e(require("react")),a=require("react-i18next"),
|
|
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=e(require("react")),a=require("react-i18next"),n=require("../../../static/TextField.js"),s=e(require("clsx")),i={name:"name",email:"email",phone:"phone"};exports.CustomerFilter=function(e){var l=e.values,u=e.onChange,c=a.useTranslation(["Design"]).t;return r.createElement("div",{className:"customers-filter d-flex"},r.createElement("div",{className:"d-flex customers-filter-items"},Object.keys(i).map((function(e){var a=c(i[e]);return r.createElement(n.TextField,{key:e,className:s("mb-0","col-4","customer-filter"),type:"text",label:a,value:l[e],onChange:function(r){var a;return u(t.__assign(t.__assign({},l),((a={})[e]=r.target.value,a)))}})}))))};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e,o=require("tslib"),n=require("react"),t=(e=n)&&"object"==typeof e&&"default"in e?e.default:e,i=require("@licklist/plugins/dist/context/event/EventVenueMapContext"),r=require("react-konva"),u=require("../../utils/index.js"),c=require("./components/PointIcon/PointIcon.js"),d=require("./components/ProductIcon/ProductIcon.js");exports.MapPoint=function(e){var s=e.xCoordinate,l=e.yCoordinate,a=e.id,f=e.imageOffsetX,p=e.imageOffsetY,v=e.imageScale,
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e,o=require("tslib"),n=require("react"),t=(e=n)&&"object"==typeof e&&"default"in e?e.default:e,i=require("@licklist/plugins/dist/context/event/EventVenueMapContext"),r=require("react-konva"),u=require("../../utils/index.js"),c=require("./components/PointIcon/PointIcon.js"),d=require("./components/ProductIcon/ProductIcon.js");exports.MapPoint=function(e){var s=e.xCoordinate,l=e.yCoordinate,a=e.id,f=e.imageOffsetX,p=e.imageOffsetY,v=e.imageScale,m=e.localId,P=e.pointNumber,I=e.changeCursorType,x=e.usedInIframe,C=e.choosedProductUuids,M=void 0===C?[]:C,O=e.errorOnChoosedProductUuids,g=void 0===O?[]:O,E=e.isSoldOut,y=n.useContext(i.EventVenueMapContext),b=y.setActiveElementKey,h=y.activeElementKey,q=y.setMapPoints,U=y.editMode,j=y.mapPointProducts,S=o.__read(u.calculatePointsCoordinates(s,l,{imageScale:v,imageOffsetX:f,imageOffsetY:p}),2),B=S[0],_=S[1],k=String(a||m),A=k===h,K=j.find((function(e){return a&&e.pointId&&e.pointId===a})),N=Boolean(j.find((function(e){return M.includes(null==e?void 0:e.productUuid)&&M.includes(null==K?void 0:K.productUuid)}))),T=Boolean(j.find((function(e){return g.includes(null==e?void 0:e.productUuid)&&g.includes(null==K?void 0:K.productUuid)}))),V=function(e){e.cancelBubble=!0,A||E||(b(k),q((function(e){var o=e.slice(),n=o.find((function(e){return e.id===a||(null==e?void 0:e.localId)===m})),t=o.indexOf(n);return o.splice(t,1),o.push(n),o})))};return t.createElement(r.Group,{onClick:V,onTap:V,onMouseEnter:function(){I("pointer")},onMouseLeave:function(){I()}},x?t.createElement(d.ProductIcon,{x:B,y:_,isSoldOut:E,isActive:A,isProductChoosed:N,isErrorOnChoosedProduct:T}):t.createElement(c.PointIcon,{x:B,y:_,isActive:A,hasProduct:!E&&Boolean(K),pointNumber:P,onDelete:function(){b(),I(),q((function(e){return u.removeMapPointFromPoints(e,a,m)}))},editMode:U}))};
|
package/dist/events/event-venue-map/components/MapPoint/components/ProductIcon/ProductIcon.d.ts
CHANGED
|
@@ -5,8 +5,9 @@ export declare type ProductIconProps = KonvaNodeEvents & Konva.ShapeConfig & {
|
|
|
5
5
|
x: number;
|
|
6
6
|
y: number;
|
|
7
7
|
isActive?: boolean;
|
|
8
|
+
isSoldOut?: boolean;
|
|
8
9
|
isErrorOnChoosedProduct: boolean;
|
|
9
10
|
isProductChoosed: boolean;
|
|
10
11
|
};
|
|
11
|
-
export declare const ProductIcon: ({ x, y, isActive, isErrorOnChoosedProduct, isProductChoosed, }: ProductIconProps) => JSX.Element;
|
|
12
|
+
export declare const ProductIcon: ({ x, y, isActive, isSoldOut, isErrorOnChoosedProduct, isProductChoosed, }: ProductIconProps) => JSX.Element;
|
|
12
13
|
//# sourceMappingURL=ProductIcon.d.ts.map
|
package/dist/events/event-venue-map/components/MapPoint/components/ProductIcon/ProductIcon.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ProductIcon.d.ts","sourceRoot":"","sources":["../../../../../../src/events/event-venue-map/components/MapPoint/components/ProductIcon/ProductIcon.tsx"],"names":[],"mappings":";AACA,OAAO,EAAQ,eAAe,EAAiB,MAAM,aAAa,CAAC;AACnE,OAAO,KAAK,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"ProductIcon.d.ts","sourceRoot":"","sources":["../../../../../../src/events/event-venue-map/components/MapPoint/components/ProductIcon/ProductIcon.tsx"],"names":[],"mappings":";AACA,OAAO,EAAQ,eAAe,EAAiB,MAAM,aAAa,CAAC;AACnE,OAAO,KAAK,MAAM,OAAO,CAAC;AAyB1B,oBAAY,gBAAgB,GAAG,eAAe,GAC5C,KAAK,CAAC,WAAW,GAAG;IAClB,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,uBAAuB,EAAE,OAAO,CAAC;IACjC,gBAAgB,EAAE,OAAO,CAAC;CAC3B,CAAC;AAkBJ,eAAO,MAAM,WAAW,8EAOrB,gBAAgB,gBA8FlB,CAAC"}
|
package/dist/events/event-venue-map/components/MapPoint/components/ProductIcon/ProductIcon.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var o,t=require("tslib"),e=require("react"),r=(o=e)&&"object"==typeof o&&"default"in o?o.default:o,n=require("react-konva"),i="#FFFFFF",a="#FFFFFF80",c="#0E8CE2",l=function(o,t){void 0===t&&(t=!1);var e=document.getElementById("snippet-template-context");if(e){var r=getComputedStyle(e).getPropertyValue(o);return!r||r&&!t?r:"".concat(r,"80")}};exports.ProductIcon=function(o){var p,
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var o,t=require("tslib"),e=require("react"),r=(o=e)&&"object"==typeof o&&"default"in o?o.default:o,n=require("react-konva"),i="#FFFFFF",a="#FFFFFF80",c="#0E8CE2",l="#878787",d=function(o,t){void 0===t&&(t=!1);var e=document.getElementById("snippet-template-context");if(e){var r=getComputedStyle(e).getPropertyValue(o);return!r||r&&!t?r:"".concat(r,"80")}};exports.ProductIcon=function(o){var p,s,u=o.x,v=o.y,C=o.isActive,F=o.isSoldOut,f=o.isErrorOnChoosedProduct,k=o.isProductChoosed,P=e.useMemo((function(){return{pointBackgroundColor:d("--snippet-canvas-point-background-color")||i,pointBorderColor:d("--snippet-canvas-point-border-color",!0)||a,pointFontColor:d("--snippet-canvas-point-font-color")||c,activePointBackgroundColor:d("--snippet-canvas-active-point-background-color")||c,activePointBorderColor:d("--snippet-canvas-active-point-border-color",!0)||a,activePointFontColor:d("--snippet-canvas-active-point-font-color")||i}}),[C,f,k]);return r.createElement(n.Group,{x:u,y:v},r.createElement(n.Circle,t.__assign({radius:14,strokeWidth:2,x:0,y:-21},(p=P.pointBackgroundColor,s=P.pointBorderColor,C&&(s=P.activePointBorderColor),k&&(p=P.activePointBackgroundColor),f&&(s="#ff000080"),F&&(s=l,p=l),{fill:p,stroke:s}))),k?r.createElement(n.Path,{x:-7,y:-28,data:"M1.5 6L5.5 10L13.5 2",width:28,height:28,fill:P.activePointBackgroundColor,stroke:P.activePointFontColor,strokeWidth:3}):r.createElement(n.Path,{x:-7,y:-28,data:"M14 0C9.3569 0.6633 4.6431 0.6633 0 0L6 7V13H3V14H11V13H8V7L14 0Z",width:28,height:28,strokeWidth:1,fill:P.pointFontColor,stroke:P.pointFontColor}))};
|
|
@@ -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=e(require("react")),a=require("react-i18next"),r=require("react-bootstrap"),i=e(require("clsx")),s=require("react-intl"),l=require("../../../tiptap-editor/TipTapEditor.js"),c=require("../../../events/event-card/utils.js"),n=require("../../../assets/iframe/clock.svg.js"),d=require("../../../assets/iframe/calendar.svg.js"),m=require("../../../assets/iframe/ticket.svg.js");exports.IframeEventCard=function(e){var o=e.title,p=e.type,v=e.cost,u=e.date,f=e.imageSrc,E=e.snippetSetting,N=void 0===E?{displayType:!0,displayCost:!0,displayDescription:!0}:E,
|
|
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=e(require("react")),a=require("react-i18next"),r=require("react-bootstrap"),i=e(require("clsx")),s=require("react-intl"),l=require("../../../tiptap-editor/TipTapEditor.js"),c=require("../../../events/event-card/utils.js"),n=require("../../../assets/iframe/clock.svg.js"),d=require("../../../assets/iframe/calendar.svg.js"),m=require("../../../assets/iframe/ticket.svg.js");exports.IframeEventCard=function(e){var o=e.title,p=e.type,v=e.cost,u=e.date,f=e.imageSrc,E=e.snippetSetting,N=void 0===E?{displayType:!0,displayCost:!0,displayDescription:!0}:E,y=e.colour,g=e.goToDetails,C=e.description,b=e.isListView,x=void 0!==b&&b,_=e.className,T=e.shortDate,w=e.titleId,q=e.descriptionId,j=s.useIntl().formatNumber,I=a.useTranslation("Design").t;return t.createElement(r.Card,{style:{"--card-colour":y},className:i("iframe-event-card",{"list-view":x},_),onClick:g?function(){g&&g()}:void 0},f&&t.createElement(r.Card.Img,{className:"card-image",variant:"top",as:"div",style:{backgroundImage:'url("'.concat(f,'")')}}),t.createElement(r.Card.Body,{className:i("d-flex","flex-column",!f&&"no-image")},t.createElement(r.Card.Title,{className:"iframe-event-card__title",id:w},o),t.createElement("div",{className:"flex-grow-1 iframe-event-card__description"},t.createElement(r.Card.Text,{as:"div"},t.createElement("div",{className:"d-flex align-items-center mb-3"},t.createElement("div",{className:"icon-wrapper"},t.createElement(d.ReactComponent,null)),t.createElement("p",{className:"iframe-event-card__bold m-0 list-view-hided"},u),t.createElement("p",{className:"iframe-event-card__bold m-0 grid-view-hided"},T))),p&&!!N.displayType&&t.createElement(r.Card.Text,{as:"div",className:"list-view-hided"},t.createElement("div",{className:"d-flex align-items-center mb-3"},t.createElement("div",{className:"icon-wrapper"},t.createElement(n.ReactComponent,null)),t.createElement("p",{className:"iframe-event-card__bold m-0"},p))),"number"==typeof v&&!!N.displayCost&&t.createElement(r.Card.Text,{as:"div"},t.createElement("div",{className:"d-flex align-items-center mb-3"},t.createElement("div",{className:"icon-wrapper"},t.createElement(m.ReactComponent,null)),t.createElement("p",{className:"iframe-event-card__bold m-0"},I("from")," ",j(v,{style:"currency",currency:"GBP"})))),C&&!!N.displayDescription&&t.createElement(r.Card.Text,{as:"div",className:"list-view-hided"},t.createElement(l.TipTapEditor,{viewMode:!0,disabled:!0,content:c.formatContent(C,150),id:q})))))};
|
|
@@ -1,4 +1,9 @@
|
|
|
1
1
|
import { StaticTableData } from "../../../../table";
|
|
2
2
|
import { OrderItemsTableProps } from "../types";
|
|
3
|
+
export declare const PAYMENT_TYPE_TRANSLATE_KEYS: {
|
|
4
|
+
"net profit": string;
|
|
5
|
+
fee: string;
|
|
6
|
+
VAT: string;
|
|
7
|
+
};
|
|
3
8
|
export declare const useTableData: ({ order, externalDiscount, isPaymentProcessed, paymentDetail, }: OrderItemsTableProps) => StaticTableData[];
|
|
4
9
|
//# sourceMappingURL=useTableData.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useTableData.d.ts","sourceRoot":"","sources":["../../../../../src/iframe/payment/order-items-table/hooks/useTableData.tsx"],"names":[],"mappings":"AAUA,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AASpD,OAAO,EAAE,oBAAoB,EAAe,MAAM,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"useTableData.d.ts","sourceRoot":"","sources":["../../../../../src/iframe/payment/order-items-table/hooks/useTableData.tsx"],"names":[],"mappings":"AAUA,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AASpD,OAAO,EAAE,oBAAoB,EAAe,MAAM,UAAU,CAAC;AAG7D,eAAO,MAAM,2BAA2B;;;;CAIvC,CAAC;AAEF,eAAO,MAAM,YAAY,oEAKtB,oBAAoB,sBAuMtB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e,r,t=require("tslib"),a=require("react"),n=(e=a)&&"object"==typeof e&&"default"in e?e.default:e,u=require("react-i18next"),i=require("lodash"),o=require("react-intl"),c=require("@licklist/core/dist/DataMapper/Order/PaymentDataMapper"),l=require("../utils/index.js"),s=((r={})[c.PAYMENT_TYPE_NET_PROFIT]="netAmount",r[c.PAYMENT_TYPE_FEE]="bookeditFee",r[c.PAYMENT_TYPE_VAT]="vat",r);exports.useTableData=function(e){var r=e.order,c=e.externalDiscount,d=e.isPaymentProcessed,_=void 0!==d&&d,y=e.paymentDetail,p=o.useIntl().formatNumber,m=u.useTranslation("Design").t,P=function(e){return p(e,{style:"currency",currency:"GBP"})},
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e,r,t=require("tslib"),a=require("react"),n=(e=a)&&"object"==typeof e&&"default"in e?e.default:e,u=require("react-i18next"),i=require("lodash"),o=require("react-intl"),c=require("@licklist/core/dist/DataMapper/Order/PaymentDataMapper"),l=require("../utils/index.js"),s=((r={})[c.PAYMENT_TYPE_NET_PROFIT]="netAmount",r[c.PAYMENT_TYPE_FEE]="bookeditFee",r[c.PAYMENT_TYPE_VAT]="vat",r);exports.PAYMENT_TYPE_TRANSLATE_KEYS=s,exports.useTableData=function(e){var r=e.order,c=e.externalDiscount,d=e.isPaymentProcessed,_=void 0!==d&&d,y=e.paymentDetail,p=o.useIntl().formatNumber,m=u.useTranslation("Design").t,P=function(e){return p(e,{style:"currency",currency:"GBP"})},A=function(e){return n.createElement("div",{className:"label"},e)},T=function(e){var t,a;return{key:i.uniqueId("category-id-"),name:A(null!==(a=null===(t=e[0].productCategory)||void 0===t?void 0:t.name)&&void 0!==a?a:""),quantity:"",price:A("".concat(m("total"),": ").concat(P(l.getTotalSumByCategory(r.orderProducts,e))))}},f=function(e){var t=l.getProductQuantityAndPrice(r.orderProducts,e),a=t.quantity,u=t.price;return 0===a?null:{key:e.id,name:e.name,quantity:n.createElement("div",{className:"quantity"},n.createElement("div",{className:"multiplier"},"x"),a),price:P(u)}},v=function(){return _?function(){var e=y&&!r.payments.length?l.getExternalPaymentDetail(y):Object.keys(s).map((function(e){return{translateKey:s[e],price:l.getPaymentValueByType(r.payments,e)}})),a=l.calculateTotalPrice(r,e),n=l.calculateTotalDiscount(r.payments),u=a-Number(n),i=[{translateKey:"amountTotal",price:a}];return n&&i.push({translateKey:"amountWithDiscount",price:u<0?0:u}),y&&!r.payments.length?t.__spreadArray(t.__spreadArray([],t.__read(i),!1),t.__read(e),!1):(i.push({translateKey:"totalPaid",price:u<=0?0:r.totalAmount}),u<=0||(i=t.__spreadArray(t.__spreadArray([],t.__read(i),!1),t.__read(e),!1),u>r.totalAmount&&i.push({translateKey:"remainingToPay",price:u-r.totalAmount})),i)}():(e=y?l.getExternalPaymentDetail(y):void 0,a=[{translateKey:"amountTotal",price:l.calculateTotalPrice(r,e)}],c&&a.push({price:c,translateKey:"amountWithDiscount"}),e?t.__spreadArray(t.__spreadArray([],t.__read(a),!1),t.__read(l.getExternalPaymentDetail(y)),!1):a);var e,a},E=a.useMemo((function(){return r?t.__spreadArray(t.__spreadArray([],t.__read(t.__spreadArray([],t.__read(new Set(r.products.map((function(e){return e.productCategoryId})))),!1).reduce((function(e,a){var n=r.products.filter((function(e){return e.productCategoryId===a}));if(!n.length)return e;var u=n.map(f).filter(Boolean);return u.length?t.__spreadArray(t.__spreadArray(t.__spreadArray([],t.__read(e),!1),[T(n)],!1),t.__read(u),!1):e}),[])),!1),t.__read(v().map((function(e){var r=e.translateKey,t=e.price;return{key:i.uniqueId("summary-info-".concat(r)),name:A(m(r)),quantity:"",price:A(P(t))}}))),!1):[]}),[r,c,_]);return E};
|
|
@@ -6,7 +6,11 @@ export declare enum PAYMENT_TYPE_TITLES {
|
|
|
6
6
|
NET_PROFIT = "net profit",
|
|
7
7
|
VAT = "VAT"
|
|
8
8
|
}
|
|
9
|
-
|
|
9
|
+
interface ExternalPaymnetDetail {
|
|
10
|
+
translateKey: string;
|
|
11
|
+
price: number;
|
|
12
|
+
}
|
|
13
|
+
export declare const calculateTotalPrice: (order: Order, externalPaymentDetails?: ExternalPaymnetDetail[]) => number;
|
|
10
14
|
export declare const calculateTotalDiscount: (payments: Order["payments"]) => number;
|
|
11
15
|
export declare const getProductQuantityAndPrice: (orderProducts: Order["orderProducts"], product: Product) => {
|
|
12
16
|
price: number;
|
|
@@ -18,4 +22,5 @@ export declare const getExternalPaymentDetail: (paymentDetail: PaymentDetail) =>
|
|
|
18
22
|
price: any;
|
|
19
23
|
}[];
|
|
20
24
|
export declare const getTotalSumByCategory: (orderProducts: Order["orderProducts"], products: Product[]) => number;
|
|
25
|
+
export {};
|
|
21
26
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/iframe/payment/order-items-table/utils/index.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/iframe/payment/order-items-table/utils/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,EAEN,MAAM,sDAAsD,CAAC;AAC9D,OAAO,EAAE,OAAO,EAAE,MAAM,0DAA0D,CAAC;AAEnF,OAAO,EAAE,aAAa,EAAE,MAAM,8DAA8D,CAAC;AAS7F,oBAAY,mBAAmB;IAC7B,GAAG,QAAQ;IACX,UAAU,eAAe;IACzB,GAAG,QAAQ;CACZ;AAED,UAAU,qBAAqB;IAC7B,YAAY,EAAE,MAAM,CAAC;IACrB,KAAK,EAAE,MAAM,CAAC;CACf;AAED,eAAO,MAAM,mBAAmB,UACvB,KAAK,2BACa,qBAAqB,EAAE,WAsBjD,CAAC;AAEF,eAAO,MAAM,sBAAsB,aAAc,KAAK,CAAC,UAAU,CAAC,WAUjE,CAAC;AAEF,eAAO,MAAM,0BAA0B,kBACtB,KAAK,CAAC,eAAe,CAAC,WAC5B,OAAO;;;CAMjB,CAAC;AAEF,eAAO,MAAM,qBAAqB,aACtB,KAAK,CAAC,UAAU,CAAC,oBACT,MAAM,WAkBzB,CAAC;AAEF,eAAO,MAAM,wBAAwB,kBAAmB,aAAa;;;GAOpE,CAAC;AAEF,eAAO,MAAM,qBAAqB,kBACjB,KAAK,CAAC,eAAe,CAAC,YAC3B,OAAO,EAAE,WAUpB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var t,e=require("@licklist/core/dist/DataMapper/Order/PaymentDataMapper"),n={totalAmount:"totalPaid",netAmount:"netAmount",fee:"bookeditFee"
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var t,e=require("@licklist/core/dist/DataMapper/Order/PaymentDataMapper"),n=require("@licklist/core/dist/DataMapper/Order/OrderDataMapper"),r=require("../hooks/useTableData.js"),u={totalAmount:"totalPaid",netAmount:"netAmount",fee:"bookeditFee"};(t=exports.PAYMENT_TYPE_TITLES||(exports.PAYMENT_TYPE_TITLES={})).FEE="fee",t.NET_PROFIT="net profit",t.VAT="VAT";var i=function(t,e){var n,r=t.find((function(t){return t.productId===e.id}));return{price:null==r?void 0:r.price,quantity:null!==(n=null==r?void 0:r.quantity)&&void 0!==n?n:1}};exports.calculateTotalDiscount=function(t){var n,r=null!==(n=null==t?void 0:t.reduce((function(t,n){var r;return(null===(r=null==n?void 0:n.paymentType)||void 0===r?void 0:r.title)===e.PAYMENT_TYPE_DISCOUNT?t+Number(null==n?void 0:n.amount):t}),0))&&void 0!==n?n:0;return Math.abs(Number(r))},exports.calculateTotalPrice=function(t,e){var u,i,o,l=null!==(i=null===(u=null==t?void 0:t.orderProducts)||void 0===u?void 0:u.reduce((function(t,e){var n;return t+(null!==(n=null==e?void 0:e.quantity)&&void 0!==n?n:1)*e.price}),0))&&void 0!==i?i:0;return(null==t?void 0:t.feeChargeType)===n.ORDER_FEE_CHARGE_TYPE_CLIENT&&e?l+((null===(o=e.find((function(t){return t.translateKey===r.PAYMENT_TYPE_TRANSLATE_KEYS.fee})))||void 0===o?void 0:o.price)||0):l},exports.getExternalPaymentDetail=function(t){return Object.keys(u).map((function(e){return{translateKey:u[e],price:t[e]}}))},exports.getPaymentValueByType=function(t,e){var n,r,u,i,o,l;return e===exports.PAYMENT_TYPE_TITLES.FEE?(null!==(r=null===(n=null==t?void 0:t.find((function(t){return t.paymentType.title===e})))||void 0===n?void 0:n.amount)&&void 0!==r?r:0)+(null!==(i=null===(u=null==t?void 0:t.find((function(t){return t.paymentType.title===exports.PAYMENT_TYPE_TITLES.VAT})))||void 0===u?void 0:u.amount)&&void 0!==i?i:0):null!==(l=null===(o=null==t?void 0:t.find((function(t){return t.paymentType.title===e})))||void 0===o?void 0:o.amount)&&void 0!==l?l:0},exports.getProductQuantityAndPrice=i,exports.getTotalSumByCategory=function(t,e){return e.reduce((function(e,n){var r=i(t,n),u=r.quantity;return e+r.price*u}),0)};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PaymentPage.d.ts","sourceRoot":"","sources":["../../../../src/iframe/payment/payment-page/PaymentPage.tsx"],"names":[],"mappings":";AAKA,OAAO,EAAE,mBAAmB,EAAE,MAAM,gDAAgD,CAAC;AACrF,OAAO,EAAE,mBAAmB,EAAE,MAAM,0DAA0D,CAAC;AAI/F,OAAO,EAEL,oBAAoB,EACrB,MAAM,4BAA4B,CAAC;AAKpC,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;CACd;AAED,UAAU,YAAa,SAAQ,oBAAoB;IACjD,oBAAoB,CAAC,EAAE,MAAM,IAAI,CAAC;IAClC,mBAAmB,CAAC,EAAE,MAAM,IAAI,CAAC;IACjC,IAAI,CAAC,EAAE,mBAAmB,CAAC;IAC3B,SAAS,EAAE,OAAO,CAAC;IACnB,mBAAmB,EAAE,IAAI,CAAC,mBAAmB,EAAE,oBAAoB,CAAC,CAAC;IACrE,eAAe,CAAC,EAAE,eAAe,CAAC;CACnC;AAED,eAAO,MAAM,WAAW,kIAQrB,YAAY,
|
|
1
|
+
{"version":3,"file":"PaymentPage.d.ts","sourceRoot":"","sources":["../../../../src/iframe/payment/payment-page/PaymentPage.tsx"],"names":[],"mappings":";AAKA,OAAO,EAAE,mBAAmB,EAAE,MAAM,gDAAgD,CAAC;AACrF,OAAO,EAAE,mBAAmB,EAAE,MAAM,0DAA0D,CAAC;AAI/F,OAAO,EAEL,oBAAoB,EACrB,MAAM,4BAA4B,CAAC;AAKpC,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;CACd;AAED,UAAU,YAAa,SAAQ,oBAAoB;IACjD,oBAAoB,CAAC,EAAE,MAAM,IAAI,CAAC;IAClC,mBAAmB,CAAC,EAAE,MAAM,IAAI,CAAC;IACjC,IAAI,CAAC,EAAE,mBAAmB,CAAC;IAC3B,SAAS,EAAE,OAAO,CAAC;IACnB,mBAAmB,EAAE,IAAI,CAAC,mBAAmB,EAAE,oBAAoB,CAAC,CAAC;IACrE,eAAe,CAAC,EAAE,eAAe,CAAC;CACnC;AAED,eAAO,MAAM,WAAW,kIAQrB,YAAY,gBAsHd,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e,t=require("tslib"),o=require("react"),a=(e=o)&&"object"==typeof e&&"default"in e?e.default:e,r=require("react-router-dom"),n=require("../../../static/loader/LoaderIndicator.js"),m=require("react-i18next"),s=require("react-bootstrap");require("../../../static/index.js"),require("../../order-process/components/NavigationFooter/NavigationFooter.js");var i=require("../../page/components/PageHeader/PageHeader.js"),l=require("@licklist/plugins/dist/context/payment/PaymentSessionContext"),c=require("../../order-process/components/BookingSummary/components/SummaryTotal/components/SummaryTotalBlock.js"),u=require("../../ryft/RyftPaymentForm.js"),d=require("../../order-process/components/BookingSummary/BookingSummary.js");require("../../order-process/components/NavigationSteps/NavigationSteps.js"),require("../../order-process/components/StepsForm/StepsForm.js"),require("../../order-process/components/Timer/Timer.js"),require("../../order-process/components/PaymentCard/PaymentCard.js");var p=require("../../order-process/components/BookingSummaryFooter/BookingSummaryFooter.js"),y=require("../../page/components/PageBody/PageBody.js");require("../../order-process/components/CalendarStepsForm/CalendarStepsForm.js");var g=require("./PaymentTimer.js"),f=require("../../page/Page.js");exports.PaymentPage=function(e){var B=e.onCloseIframePayment,P=e.onFailIframePayment,k=e.data,E=e.isLoading,S=e.bookingSummaryProps,q=e.paymentMetadata,j=t.__rest(e,["onCloseIframePayment","onFailIframePayment","data","isLoading","bookingSummaryProps","paymentMetadata"]),v=m.useTranslation("Design").t,x=r.useLocation().search,C=o.useContext(l.PaymentSessionContext).isPaymentSessionExpired,
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e,t=require("tslib"),o=require("react"),a=(e=o)&&"object"==typeof e&&"default"in e?e.default:e,r=require("react-router-dom"),n=require("../../../static/loader/LoaderIndicator.js"),m=require("react-i18next"),s=require("react-bootstrap");require("../../../static/index.js"),require("../../order-process/components/NavigationFooter/NavigationFooter.js");var i=require("../../page/components/PageHeader/PageHeader.js"),l=require("@licklist/plugins/dist/context/payment/PaymentSessionContext"),c=require("../../order-process/components/BookingSummary/components/SummaryTotal/components/SummaryTotalBlock.js"),u=require("../../ryft/RyftPaymentForm.js"),d=require("../../order-process/components/BookingSummary/BookingSummary.js");require("../../order-process/components/NavigationSteps/NavigationSteps.js"),require("../../order-process/components/StepsForm/StepsForm.js"),require("../../order-process/components/Timer/Timer.js"),require("../../order-process/components/PaymentCard/PaymentCard.js");var p=require("../../order-process/components/BookingSummaryFooter/BookingSummaryFooter.js"),y=require("../../page/components/PageBody/PageBody.js");require("../../order-process/components/CalendarStepsForm/CalendarStepsForm.js");var g=require("./PaymentTimer.js"),f=require("../../page/Page.js");exports.PaymentPage=function(e){var B=e.onCloseIframePayment,P=e.onFailIframePayment,k=e.data,E=e.isLoading,S=e.bookingSummaryProps,q=e.paymentMetadata,j=t.__rest(e,["onCloseIframePayment","onFailIframePayment","data","isLoading","bookingSummaryProps","paymentMetadata"]),v=m.useTranslation("Design").t,x=r.useLocation().search,C=o.useContext(l.PaymentSessionContext).isPaymentSessionExpired,F=Boolean(new URLSearchParams(x).get("isIframePayment")),b=function(){window.close()};return o.useEffect((function(){F&&B&&window.addEventListener("beforeunload",(function(){B()}))}),[]),o.useEffect((function(){C&&F&&P&&P()}),[C]),E?a.createElement(n.LoaderIndicator,{isLoaded:!1}):null===k?a.createElement(f.Page,null,a.createElement(y.PageBody,{leftBlock:a.createElement(y.PageBody.LeftBlock,null,a.createElement("div",{className:"d-flex h-100 w-100 justify-content-center align-items-center flex-column"},a.createElement("h6",null,v("linkNotActiveOrExpired")),a.createElement(s.Col,{xs:12,md:3},a.createElement(s.Button,{className:"mt-5 w-20",onClick:function(){window.location.href="https://booked.it/"}},v("backToSite")))))})):a.createElement(f.Page,{className:"payment_link",headerBlock:a.createElement(i.PageHeader,{showBackButton:F,onBackButtonClick:F?b:void 0,showCloseButton:F,onCloseButtonClick:F?b:void 0},a.createElement(g.PaymentTimer,null),a.createElement("div",{className:"d-flex align-items-center justify-content-center w-100"},v("paymentDetails")))},a.createElement(y.PageBody,{leftBlock:a.createElement(y.PageBody.LeftBlock,null,a.createElement(u.RyftPaymentForm,t.__assign({},j))),rightBlock:a.createElement(y.PageBody.RightBlock,{bottomBlock:a.createElement(p.BookingSummaryFooter,{showButton:!1},a.createElement("div",{className:"d-flex flex-column justify-content-between"},q&&a.createElement(a.Fragment,null,a.createElement(c.SummaryTotalBlock,{label:v("total"),amount:q.total||0}),a.createElement(c.SummaryTotalBlock,{label:v("paidSum"),amount:q.paid||0})),a.createElement(c.SummaryTotalBlock,{label:v(q?"remaining":"total"),amount:(null==k?void 0:k.amount)+((null==S?void 0:S.transactionFee)||0)})))},a.createElement("h6",null,v("paymentDetails")),a.createElement(d.BookingSummary,t.__assign({},S)))}))};
|
|
@@ -12,11 +12,12 @@ interface PaymentStatusComponentProps {
|
|
|
12
12
|
isLoading?: boolean;
|
|
13
13
|
status: OrderStatusPrefix;
|
|
14
14
|
isAppUsingInIframe?: boolean;
|
|
15
|
-
|
|
15
|
+
transactionFee?: number;
|
|
16
|
+
bookingSummaryProps?: Omit<BookingSummaryProps, "transactionFee">;
|
|
16
17
|
EventCardComponent?: ReactNode;
|
|
17
18
|
showCloseButton?: boolean;
|
|
18
19
|
email?: string;
|
|
19
20
|
}
|
|
20
|
-
export declare const PaymentStatusPage: ({ onCloseWindow, onBack, onTryAgain, totalAmount, isLoading, status, isAppUsingInIframe, bookingSummaryProps, EventCardComponent, showCloseButton, email, }: PaymentStatusComponentProps) => JSX.Element;
|
|
21
|
+
export declare const PaymentStatusPage: ({ onCloseWindow, onBack, onTryAgain, totalAmount, isLoading, status, transactionFee, isAppUsingInIframe, bookingSummaryProps, EventCardComponent, showCloseButton, email, }: PaymentStatusComponentProps) => JSX.Element;
|
|
21
22
|
export {};
|
|
22
23
|
//# sourceMappingURL=PaymentStatusPage.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PaymentStatusPage.d.ts","sourceRoot":"","sources":["../../../../src/iframe/payment/payment-status-page/PaymentStatusPage.tsx"],"names":[],"mappings":"AACA,OAAc,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AASzC,OAAO,EAAE,mBAAmB,EAAE,MAAM,qDAAqD,CAAC;AAE1F,eAAO,MAAM,mBAAmB,WAAW,CAAC;AAC5C,eAAO,MAAM,oBAAoB,YAAY,CAAC;AAC9C,eAAO,MAAM,oBAAoB,YAAY,CAAC;AAE9C,oBAAY,iBAAiB,GACzB,OAAO,oBAAoB,GAC3B,OAAO,mBAAmB,GAC1B,OAAO,oBAAoB,CAAC;AAEhC,UAAU,2BAA2B;IACnC,aAAa,EAAE,MAAM,IAAI,CAAC;IAC1B,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,IAAI,CAAC;IACxB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,MAAM,EAAE,iBAAiB,CAAC;IAC1B,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,mBAAmB,CAAC,EAAE,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"PaymentStatusPage.d.ts","sourceRoot":"","sources":["../../../../src/iframe/payment/payment-status-page/PaymentStatusPage.tsx"],"names":[],"mappings":"AACA,OAAc,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AASzC,OAAO,EAAE,mBAAmB,EAAE,MAAM,qDAAqD,CAAC;AAE1F,eAAO,MAAM,mBAAmB,WAAW,CAAC;AAC5C,eAAO,MAAM,oBAAoB,YAAY,CAAC;AAC9C,eAAO,MAAM,oBAAoB,YAAY,CAAC;AAE9C,oBAAY,iBAAiB,GACzB,OAAO,oBAAoB,GAC3B,OAAO,mBAAmB,GAC1B,OAAO,oBAAoB,CAAC;AAEhC,UAAU,2BAA2B;IACnC,aAAa,EAAE,MAAM,IAAI,CAAC;IAC1B,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,IAAI,CAAC;IACxB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,MAAM,EAAE,iBAAiB,CAAC;IAC1B,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,mBAAmB,CAAC,EAAE,IAAI,CAAC,mBAAmB,EAAE,gBAAgB,CAAC,CAAC;IAClE,kBAAkB,CAAC,EAAE,SAAS,CAAC;IAC/B,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAGD,eAAO,MAAM,iBAAiB,gLAa3B,2BAA2B,gBA+E7B,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e,o=require("tslib"),r=require("react"),t=(e=r)&&"object"==typeof e&&"default"in e?e.default:e,a=require("../../../static/loader/LoaderIndicator.js"),n=require("react-i18next");require("../../order-process/components/NavigationFooter/NavigationFooter.js"),require("../../page/components/PageHeader/PageHeader.js");var s=require("../payment-status-header/PaymentStatusHeader.js"),m=require("../../order-process/components/BookingSummary/components/SummaryTotal/components/SummaryTotalBlock.js");require("../../order-process/components/BookingSummary/components/SummaryTotal/SummaryTotal.js");var i=require("../../order-process/components/BookingSummary/BookingSummary.js");require("../../order-process/components/NavigationSteps/NavigationSteps.js"),require("../../order-process/components/StepsForm/StepsForm.js"),require("../../order-process/components/Timer/Timer.js"),require("../../order-process/components/PaymentCard/PaymentCard.js");var u=require("../../order-process/components/BookingSummaryFooter/BookingSummaryFooter.js"),c=require("../../page/components/PageBody/PageBody.js");require("../../order-process/components/CalendarStepsForm/CalendarStepsForm.js");var l=require("../../page/Page.js"),p=require("./component/PaymentStatusBody.js"),d="failed",g="success",y="pending";exports.ORDER_STATUS_FAILED=d,exports.ORDER_STATUS_PENDING=y,exports.ORDER_STATUS_SUCCESS=g,exports.PaymentStatusPage=function(e){var r=e.onCloseWindow,S=e.onBack,B=e.onTryAgain,P=e.totalAmount,k=e.isLoading,E=e.status,q=e.
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e,o=require("tslib"),r=require("react"),t=(e=r)&&"object"==typeof e&&"default"in e?e.default:e,a=require("../../../static/loader/LoaderIndicator.js"),n=require("react-i18next");require("../../order-process/components/NavigationFooter/NavigationFooter.js"),require("../../page/components/PageHeader/PageHeader.js");var s=require("../payment-status-header/PaymentStatusHeader.js"),m=require("../../order-process/components/BookingSummary/components/SummaryTotal/components/SummaryTotalBlock.js");require("../../order-process/components/BookingSummary/components/SummaryTotal/SummaryTotal.js");var i=require("../../order-process/components/BookingSummary/BookingSummary.js");require("../../order-process/components/NavigationSteps/NavigationSteps.js"),require("../../order-process/components/StepsForm/StepsForm.js"),require("../../order-process/components/Timer/Timer.js"),require("../../order-process/components/PaymentCard/PaymentCard.js");var u=require("../../order-process/components/BookingSummaryFooter/BookingSummaryFooter.js"),c=require("../../page/components/PageBody/PageBody.js");require("../../order-process/components/CalendarStepsForm/CalendarStepsForm.js");var l=require("../../page/Page.js"),p=require("./component/PaymentStatusBody.js"),d="failed",g="success",y="pending";exports.ORDER_STATUS_FAILED=d,exports.ORDER_STATUS_PENDING=y,exports.ORDER_STATUS_SUCCESS=g,exports.PaymentStatusPage=function(e){var r=e.onCloseWindow,S=e.onBack,B=e.onTryAgain,P=e.totalAmount,k=e.isLoading,E=e.status,q=e.transactionFee,j=void 0===q?0:q,v=e.isAppUsingInIframe,T=e.bookingSummaryProps,f=e.EventCardComponent,F=e.showCloseButton,C=void 0!==F&&F,h=e.email,_=n.useTranslation("Design").t,A=function(){switch(E){case g:return _("purchaseSuccessful");case y:return _("pendingPayment");default:return _("purchaseFailed")}}();return k?t.createElement(a.LoaderIndicator,{isLoaded:!1}):t.createElement(l.Page,{className:"payment-status-page",headerBlock:t.createElement(s.PaymentStatusHeader,{success:E!==d,showCloseButton:C,onCloseButtonClick:r,title:E===y?_("pendingPayment"):void 0}),isAppUsingInIframe:v},t.createElement(c.PageBody,{leftBlock:t.createElement(c.PageBody.LeftBlock,{title:A},t.createElement("div",null,f,t.createElement(p.PaymentStatusBody,{status:E,onBack:S||r,onTryAgain:B,email:h}))),rightBlock:t.createElement(c.PageBody.RightBlock,{bottomBlock:t.createElement(u.BookingSummaryFooter,{showButton:!1},(null==T?void 0:T.formValues)?t.createElement(i.BookingSummary.SummaryTotal,{formValues:null==T?void 0:T.formValues,transactionFee:j}):t.createElement(m.SummaryTotalBlock,{label:_("total"),amount:P+j||0}))},T?t.createElement(i.BookingSummary,o.__assign({},T,{transactionFee:j})):t.createElement("h6",null,A))}))};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ProductCategoriesControl.d.ts","sourceRoot":"","sources":["../../../src/product-set/form/ProductCategoriesControl.tsx"],"names":[],"mappings":";AAYA,OAAO,EAKL,YAAY,EACb,MAAM,kEAAkE,CAAC;AAQ1E,OAAO,EAAwB,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAQvE,UAAU,6BAA8B,SAAQ,aAAa;IAC3D,SAAS,EAAE,MAAM,CAAC;CACnB;AA4BD,wBAAgB,wBAAwB,CAAC,EACvC,SAAS,EACT,SAAS,GACV,EAAE,6BAA6B,
|
|
1
|
+
{"version":3,"file":"ProductCategoriesControl.d.ts","sourceRoot":"","sources":["../../../src/product-set/form/ProductCategoriesControl.tsx"],"names":[],"mappings":";AAYA,OAAO,EAKL,YAAY,EACb,MAAM,kEAAkE,CAAC;AAQ1E,OAAO,EAAwB,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAQvE,UAAU,6BAA8B,SAAQ,aAAa;IAC3D,SAAS,EAAE,MAAM,CAAC;CACnB;AA4BD,wBAAgB,wBAAwB,CAAC,EACvC,SAAS,EACT,SAAS,GACV,EAAE,6BAA6B,eAyR/B;AAED,eAAO,MAAM,cAAc,iBACX,YAAY,SACnB,MAAM;WACH,MAAM;eAAa,MAAM;CAcpC,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"),n=e(r),o=require("react-i18next"),i=require("react-bootstrap"),a=require("react-hook-form"),u=e(require("@licklist/plugins/dist/services/Form/HookFormService")),d=e(require("clsx")),l=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"),f=require("../product-category/ProductCategoryControl.js"),y=require("./ProductsControl.js"),C=require("./SelectCategoryModal.js"),E=require("./VenueMapSetModal.js"),_=require("../utils/index.js");var b=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 I,S,q,T,x,P,N=e.isLoading,M=e.stepIndex,A=o.useTranslation("Design").t,h=r.useContext(g.ProductSetLoadingContext),k=h.providerHasMap,j=h.expandedProductCategories,D=h.setExpandedProductCategories,R=a.useFormContext(),V=t.__read(r.useState(!1),2),Y=V[0],F=V[1],O=t.__read(r.useState(!1),2),B=O[0],L=O[1],w=t.__read(r.useState(!1),2),G=w[0],H=w[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"),n=e(r),o=require("react-i18next"),i=require("react-bootstrap"),a=require("react-hook-form"),u=e(require("@licklist/plugins/dist/services/Form/HookFormService")),d=e(require("clsx")),l=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"),f=require("../product-category/ProductCategoryControl.js"),y=require("./ProductsControl.js"),C=require("./SelectCategoryModal.js"),E=require("./VenueMapSetModal.js"),_=require("../utils/index.js");var b=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 I,S,q,T,x,P,N=e.isLoading,M=e.stepIndex,A=o.useTranslation("Design").t,h=r.useContext(g.ProductSetLoadingContext),k=h.providerHasMap,j=h.expandedProductCategories,D=h.setExpandedProductCategories,R=a.useFormContext(),V=t.__read(r.useState(!1),2),Y=V[0],F=V[1],O=t.__read(r.useState(!1),2),B=O[0],L=O[1],w=t.__read(r.useState(!1),2),G=w[0],H=w[1],U=R.control,Q=R.formState.errors,K=R.clearErrors,z=R.watch,W=R.trigger,X=R.getValues,J=R.setValue,Z=z("steps.".concat(M,".hasMap"))||!1,$="steps.".concat(M,".productCategories"),ee=a.useFieldArray({name:$,control:U,keyName:"_id"}),te=ee.fields,re=ee.append,ne=ee.remove,oe=t.__read(r.useState({}),2),ie=oe[0],ae=oe[1],ue=a.useWatch({control:U,name:$}),de=null===(S=null===(I=null==Q?void 0:Q.steps)||void 0===I?void 0:I[M])||void 0===S?void 0:S.productCategories,le=null===(T=null===(q=null==Q?void 0:Q.steps)||void 0===q?void 0:q[M])||void 0===T?void 0:T.venueMapSetId,se=null===(P=null===(x=null==Q?void 0:Q.steps)||void 0===x?void 0:x[M])||void 0===P?void 0:P.pointProducts,ce=Boolean(le||se),me=l.useSensor(l.MouseSensor,{activationConstraint:{distance:10}});return r.useEffect((function(){ue&&ue.length&&ue.forEach((function(e){var r,n,o=null===(r=e.products)||void 0===r?void 0:r.reduce((function(e,t){return e+Number(t.price)*Number(t.totalQuantity)}),0),i=null===(n=e.products)||void 0===n?void 0:n.reduce((function(e,t){return e+(t.isUnlimited?0:Number(t.totalQuantity))}),0);ae((function(r){var n;return t.__assign(t.__assign({},r),((n={})[(null==e?void 0:e.id)||e.uniqueId]={price:o,quantity:i},n))}))}))}),[ue]),r.useEffect((function(){1===te.length&&D((function(e){var r,n,o;return t.__assign(t.__assign({},e),((r={})[String((null===(n=te[0])||void 0===n?void 0:n.id)||(null===(o=te[0])||void 0===o?void 0:o.uniqueId))]=!0,r))}))}),[te]),n.createElement(n.Fragment,null,n.createElement(m.SortableTree,{sensors:[me],items:te.map((function(e){return String(e._id)})),onDragEnd:function(e){var t=e.active,r=e.over;if(t&&r&&(null==t?void 0:t.id)&&(null==r?void 0:r.id)){var n=te.findIndex((function(e){return e._id===t.id})),o=te.findIndex((function(e){return e._id===r.id}));if(n!==o){var i=X($);if(i){var a=_.sortArrayByIndex(_.moveArrayElements(i,n,o));J($,a)}}}}},te.map((function(e,r){var o=(null==e?void 0:e.id)?String(e.id):e.uniqueId,u=function(){!function(e){D((function(r){var n;return t.__assign(t.__assign({},r),((n={})[e]=!r[e],n))}))}(o)};return n.createElement(a.Controller,{key:"product-category-".concat(e._id),name:"".concat($,".").concat(r,".name"),control:U,rules:{required:A("Validation:fieldRequired",{attribute:A("name")})},render:function(t){var a,d,l,s=t.field,p=s.value,g=s.onChange;return n.createElement(m.SortableTree.Item,{id:e._id,title:p,isExpanded:j[o],setIsExpanded:u,isInvalid:!!de,badge:n.createElement(i.Badge,{className:"category-badge"},A("productCategory")),isIconInHeader:!1,subTitle:n.createElement("div",{className:"product-set-badges-container"},n.createElement("div",{className:"product-set-subtitle-dot product-set-subtitle-category-dot"}),n.createElement("span",null,null!==(l=null===(d=ie[null!==(a=null==e?void 0:e.id)&&void 0!==a?a:e.uniqueId])||void 0===d?void 0:d.quantity)&&void 0!==l?l:"N/A"," ",A("products"))),treeLineIconColor:"#1A93AA",modalLabel:A("addNewCategory"),secondaryBadge:b(e.type,A(e.type)),modalClass:c.ProductSetModalClasses.category,isNewAdded:G,body:n.createElement(f.ProductCategoryControl,{isLoading:N,onCategoryNameChange:g,categoryName:p,stepIndex:M,productCategoryIndex:r}),onDelete:function(){return ne(r)},validate:function(){return W("steps.".concat(M,".productCategories.").concat(r))},sortableItems:e.products?e.products.filter((function(e){return e.id})).map((function(e){var t=e.id;return String(t)})):[]},n.createElement(y.ProductsControl,{isLoading:N,quantityType:e.quantityType,hasTicket:null==e?void 0:e.hasTicket,stepIndex:M,productCategoryIndex:r,categoryType:e.type}))}})}))),n.createElement(p.CreateProductSetItem,{title:A("addCategory"),onClick:function(){F(!0)}}),n.createElement(C.SelectCategoryModal,{isVisible:Y,onHide:function(){return F(!1)},onCategorySelect:function(e){re(function(e,t){return{id:null,uniqueId:s.uniqueId("product-category"),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,te.length)),H(!0),(null==de?void 0:de.type)===u.manualErrorType&&K($)}}),k&&Z&&n.createElement(n.Fragment,null,n.createElement(p.CreateProductSetItem,{title:A("editMap"),onClick:function(){L(!0)},className:d("mt-3",ce&&"mb-3",ce&&"is-invalid")}),ce&&n.createElement("div",{className:"manual-form-error"},le&&A("Validation:fieldRequired",{attribute:A("Design:venueMapSet")}),se&&A("Validation:fieldMinNumber",{attribute:A("pointProduct"),min:1})),n.createElement(E.VenueMapSetModal,{isVisible:B,setIsVisible:L,stepIndex:M})),n.createElement("div",{className:"manual-form-error"},de&&de.message))},exports.getBadgeConfig=b;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e,t=require("tslib"),r=require("react"),l=(e=r)&&"object"==typeof e&&"default"in e?e.default:e,n=require("react-i18next"),o=require("react-bootstrap"),a=require("react-hook-form"),i=require("@licklist/
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e,t=require("tslib"),r=require("react"),l=(e=r)&&"object"==typeof e&&"default"in e?e.default:e,n=require("react-i18next"),o=require("react-bootstrap"),a=require("react-hook-form"),i=require("@licklist/core/dist/DataMapper/Order/OrderDataMapper"),s=require("@licklist/plugins/dist/context/booking/BookingContext"),c=[i.ORDER_STATUS_PENDING,i.ORDER_STATUS_CANCELLED,i.ORDER_STATUS_COMPLETED,i.ORDER_STATUS_ACTION_REQUIRED];exports.AdditionalFilterSection=function(){var e=n.useTranslation("Design").t,i=r.useContext(s.BookingContext),m=i.filters,u=i.setFilters,E=a.useForm({defaultValues:m}),d=E.handleSubmit,p=E.register,f=E.reset;return r.useEffect((function(){f(m)}),[m,f]),l.createElement("div",{className:"additional-filter-section"},l.createElement(o.Form,{onSubmit:d((function(e){u(e)}))},l.createElement(o.Row,null,l.createElement(o.Col,{md:"3"},l.createElement(o.Form.Group,null,l.createElement(o.Form.Label,null,e("staffMember")),l.createElement(o.Form.Control,t.__assign({},p("staffMember"),{as:"select"}),l.createElement("option",{value:""},e("Design:choose"))))),l.createElement(o.Col,{md:"3"},l.createElement(o.Form.Group,null,l.createElement(o.Form.Label,null,e("bookingStatus")),l.createElement(o.Form.Control,t.__assign({},p("status"),{as:"select"}),l.createElement("option",{value:""},e("Design:choose")),Object.keys(c).map((function(t){return l.createElement("option",{key:c[t],value:c[t]},e("Design:".concat(c[t])))}))))),l.createElement(o.Col,{md:"3"},l.createElement(o.Form.Group,null,l.createElement(o.Form.Label,null,e("date")),l.createElement(o.Form.Control,t.__assign({},p("date"),{type:"date"})))),l.createElement(o.Col,{md:"3",className:"d-flex align-items-end"},l.createElement(o.Form.Group,null,l.createElement(o.Button,{type:"submit",className:"shadow-none"},e("apply")))))))};
|
|
@@ -1,7 +1,8 @@
|
|
|
1
|
-
|
|
1
|
+
import { ReactNode } from "react";
|
|
2
2
|
import { Order } from "@licklist/core/dist/DataMapper/Order/OrderDataMapper";
|
|
3
3
|
export declare type PreviousBookingsProps = {
|
|
4
4
|
orders: Order[];
|
|
5
|
+
renderOrderTitleLinkByProvider?: (order: Order) => ReactNode;
|
|
5
6
|
};
|
|
6
|
-
export declare const PreviousBookings: ({ orders }: PreviousBookingsProps) => JSX.Element;
|
|
7
|
+
export declare const PreviousBookings: ({ orders, renderOrderTitleLinkByProvider, }: PreviousBookingsProps) => JSX.Element;
|
|
7
8
|
//# sourceMappingURL=PreviousBookings.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PreviousBookings.d.ts","sourceRoot":"","sources":["../../../../src/sales/guest-profile/previous-bookings/PreviousBookings.tsx"],"names":[],"mappings":";
|
|
1
|
+
{"version":3,"file":"PreviousBookings.d.ts","sourceRoot":"","sources":["../../../../src/sales/guest-profile/previous-bookings/PreviousBookings.tsx"],"names":[],"mappings":"AAAA,OAAc,EAAY,SAAS,EAAE,MAAM,OAAO,CAAC;AAInD,OAAO,EAAE,KAAK,EAAE,MAAM,sDAAsD,CAAC;AAI7E,oBAAY,qBAAqB,GAAG;IAClC,MAAM,EAAE,KAAK,EAAE,CAAC;IAChB,8BAA8B,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,SAAS,CAAC;CAC9D,CAAC;AAEF,eAAO,MAAM,gBAAgB,gDAG1B,qBAAqB,gBAgFvB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e,t=require("tslib"),r=require("react"),a=(e=r)&&"object"==typeof e&&"default"in e?e.default:e,n=require("react-i18next"),l=require("react-bootstrap"),o=require("luxon");exports.PreviousBookings=function(e){var s=e.orders,c=n.useTranslation("Design").t,
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e,t=require("tslib"),r=require("react"),a=(e=r)&&"object"==typeof e&&"default"in e?e.default:e,n=require("react-i18next"),l=require("react-bootstrap"),o=require("luxon");exports.PreviousBookings=function(e){var s=e.orders,c=e.renderOrderTitleLinkByProvider,i=n.useTranslation("Design").t,m=t.__read(r.useState(!1),2),u=m[0],d=m[1],p=u?s.length:6;return a.createElement("div",{className:"previous-bookings"},a.createElement("h6",{className:"mb-5"},i("previousBookings")),s.length>0?a.createElement("div",{className:"events-wrapper"},s.slice(0,p).map((function(e){var t,r,n=c?c(e):null===(t=e[e.orderableType])||void 0===t?void 0:t.name;return a.createElement("div",{className:"event-info col-12 col-sm-6 col-md-6 col-lg-6 col-xl-6",key:e.id},a.createElement("div",{className:"info-wrapper"},a.createElement("p",{className:"label"},n),e.createdAt&&a.createElement("p",{className:"event-date"},(r=e.createdAt,o.DateTime.fromJSDate(new Date(r)).toFormat("dd LLL yyyy hh:mm")))),e.products.length>0&&a.createElement("div",{className:"products-wrapper"},e.products.map((function(t){var r,n=t.name,l=t.id,o=e.orderProducts.find((function(e){return e.productId===l})),s=o?o.quantity:1;return a.createElement("div",{className:"product-name",key:l},a.createElement("p",null,"+")," ",a.createElement("p",null,(r=n).charAt(0).toUpperCase()+r.slice(1),s>1&&a.createElement(a.Fragment,null," x ",s)))}))))}))):a.createElement("p",{className:"mt-3"},i("noPreviousBookings")),s.length>6&&!u&&a.createElement(l.Button,{onClick:function(){d(!0)},variant:"link",className:"older-bookings-button"},i("showOlderBookings")))};
|
|
@@ -1,6 +1,4 @@
|
|
|
1
1
|
.customers-filter {
|
|
2
|
-
gap: 0.5rem;
|
|
3
|
-
|
|
4
2
|
@include media-breakpoint-down(sm) {
|
|
5
3
|
label {
|
|
6
4
|
font-size: 0.8rem;
|
|
@@ -24,11 +22,32 @@
|
|
|
24
22
|
}
|
|
25
23
|
|
|
26
24
|
.customers-filter-items {
|
|
27
|
-
|
|
25
|
+
width: 100%;
|
|
26
|
+
|
|
27
|
+
.customer-filter {
|
|
28
|
+
flex: 0 0 33.33%;
|
|
29
|
+
max-width: 33.33%;
|
|
30
|
+
}
|
|
28
31
|
|
|
29
32
|
@include media-breakpoint-down(xs) {
|
|
30
33
|
flex-direction: column;
|
|
31
|
-
|
|
34
|
+
|
|
35
|
+
.customer-filter {
|
|
36
|
+
flex: 1;
|
|
37
|
+
max-width: 100%;
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
@include media-breakpoint-up(sm) {
|
|
42
|
+
.customer-filter {
|
|
43
|
+
&:first-child {
|
|
44
|
+
padding-left: 0;
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
&:last-child {
|
|
48
|
+
padding-right: 0;
|
|
49
|
+
}
|
|
50
|
+
}
|
|
32
51
|
}
|
|
33
52
|
}
|
|
34
53
|
}
|
package/package.json
CHANGED
|
@@ -4,15 +4,13 @@ import clsx from "clsx";
|
|
|
4
4
|
import { TextField } from "../../../static/TextField";
|
|
5
5
|
|
|
6
6
|
type CustomerFilterValues = {
|
|
7
|
-
|
|
8
|
-
last_name: string;
|
|
7
|
+
name: string;
|
|
9
8
|
email: string;
|
|
10
9
|
phone: string;
|
|
11
10
|
};
|
|
12
11
|
|
|
13
12
|
const FILTER_FIELDS = {
|
|
14
|
-
|
|
15
|
-
last_name: "lastName",
|
|
13
|
+
name: "name",
|
|
16
14
|
email: "email",
|
|
17
15
|
phone: "phone",
|
|
18
16
|
};
|
|
@@ -34,7 +32,7 @@ export const CustomerFilter = ({ values, onChange }: CustomerFilterProps) => {
|
|
|
34
32
|
return (
|
|
35
33
|
<TextField
|
|
36
34
|
key={filterKeyName}
|
|
37
|
-
className={clsx("mb-0")}
|
|
35
|
+
className={clsx("mb-0", "col-4", "customer-filter")}
|
|
38
36
|
type="text"
|
|
39
37
|
label={label}
|
|
40
38
|
value={values[filterKeyName]}
|
|
@@ -132,7 +132,7 @@ export const MapPoint = ({
|
|
|
132
132
|
<ProductIcon
|
|
133
133
|
x={pointX}
|
|
134
134
|
y={pointY}
|
|
135
|
-
|
|
135
|
+
isSoldOut={isSoldOut}
|
|
136
136
|
isActive={isActive}
|
|
137
137
|
isProductChoosed={isProductChoosed}
|
|
138
138
|
isErrorOnChoosedProduct={isErrorOnChoosedProduct}
|
|
@@ -142,7 +142,7 @@ export const MapPoint = ({
|
|
|
142
142
|
x={pointX}
|
|
143
143
|
y={pointY}
|
|
144
144
|
isActive={isActive}
|
|
145
|
-
hasProduct={Boolean(pointProduct)}
|
|
145
|
+
hasProduct={!isSoldOut && Boolean(pointProduct)}
|
|
146
146
|
pointNumber={pointNumber}
|
|
147
147
|
onDelete={onDelete}
|
|
148
148
|
editMode={editMode}
|
package/src/events/event-venue-map/components/MapPoint/components/ProductIcon/ProductIcon.tsx
CHANGED
|
@@ -22,6 +22,7 @@ const BACKGROUND_COLOR = "#FFFFFF";
|
|
|
22
22
|
const BACKGROUND_COLOR_TRANSPARENT = "#FFFFFF80";
|
|
23
23
|
const FILL_COLOR = "#0E8CE2";
|
|
24
24
|
const ERROR_COLOR_TRANSPARENT = "#ff000080";
|
|
25
|
+
const NO_PRODUCT_ON_POINT = "#878787";
|
|
25
26
|
const SNIPPET_TEMPLATE_ID = "snippet-template-context";
|
|
26
27
|
|
|
27
28
|
export type ProductIconProps = KonvaNodeEvents &
|
|
@@ -29,6 +30,7 @@ export type ProductIconProps = KonvaNodeEvents &
|
|
|
29
30
|
x: number;
|
|
30
31
|
y: number;
|
|
31
32
|
isActive?: boolean;
|
|
33
|
+
isSoldOut?: boolean;
|
|
32
34
|
isErrorOnChoosedProduct: boolean;
|
|
33
35
|
isProductChoosed: boolean;
|
|
34
36
|
};
|
|
@@ -53,6 +55,7 @@ export const ProductIcon = ({
|
|
|
53
55
|
x,
|
|
54
56
|
y,
|
|
55
57
|
isActive,
|
|
58
|
+
isSoldOut,
|
|
56
59
|
isErrorOnChoosedProduct,
|
|
57
60
|
isProductChoosed,
|
|
58
61
|
}: ProductIconProps) => {
|
|
@@ -107,6 +110,11 @@ export const ProductIcon = ({
|
|
|
107
110
|
stroke = ERROR_COLOR_TRANSPARENT;
|
|
108
111
|
}
|
|
109
112
|
|
|
113
|
+
if (isSoldOut) {
|
|
114
|
+
stroke = NO_PRODUCT_ON_POINT;
|
|
115
|
+
fill = NO_PRODUCT_ON_POINT;
|
|
116
|
+
}
|
|
117
|
+
|
|
110
118
|
return { fill, stroke };
|
|
111
119
|
};
|
|
112
120
|
|
|
@@ -113,7 +113,7 @@ export function IframeEventCard({
|
|
|
113
113
|
</Card.Text>
|
|
114
114
|
)}
|
|
115
115
|
|
|
116
|
-
{cost && !!snippetSetting.displayCost && (
|
|
116
|
+
{typeof cost === "number" && !!snippetSetting.displayCost && (
|
|
117
117
|
<Card.Text as="div">
|
|
118
118
|
<div className="d-flex align-items-center mb-3">
|
|
119
119
|
<div className="icon-wrapper">
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import React from "react";
|
|
2
2
|
import { Meta } from "@storybook/react";
|
|
3
3
|
import { boolean } from "@storybook/addon-knobs";
|
|
4
|
+
import { ORDER_FEE_CHARGE_TYPE_CLIENT } from "@licklist/core/dist/DataMapper/Order/OrderDataMapper";
|
|
4
5
|
import { OrderItemsTable } from "./OrderItemsTable";
|
|
5
6
|
|
|
6
7
|
export default {
|
|
@@ -24,6 +25,7 @@ export function Default(args) {
|
|
|
24
25
|
|
|
25
26
|
Default.args = {
|
|
26
27
|
order: {
|
|
28
|
+
feeChargeType: ORDER_FEE_CHARGE_TYPE_CLIENT,
|
|
27
29
|
products: [
|
|
28
30
|
{
|
|
29
31
|
id: 1,
|
|
@@ -20,7 +20,7 @@ import {
|
|
|
20
20
|
import { OrderItemsTableProps, SummaryItem } from "../types";
|
|
21
21
|
|
|
22
22
|
const CURRENCY_DEFAULT = "GBP";
|
|
23
|
-
const
|
|
23
|
+
export const PAYMENT_TYPE_TRANSLATE_KEYS = {
|
|
24
24
|
[PAYMENT_TYPE_NET_PROFIT]: "netAmount",
|
|
25
25
|
[PAYMENT_TYPE_FEE]: "bookeditFee",
|
|
26
26
|
[PAYMENT_TYPE_VAT]: "vat",
|
|
@@ -128,7 +128,11 @@ export const useTableData = ({
|
|
|
128
128
|
};
|
|
129
129
|
|
|
130
130
|
const paymentNotProcessedSummary = () => {
|
|
131
|
-
const
|
|
131
|
+
const externalPaymentDetail = paymentDetail
|
|
132
|
+
? getExternalPaymentDetail(paymentDetail)
|
|
133
|
+
: undefined;
|
|
134
|
+
|
|
135
|
+
const total = calculateTotalPrice(order, externalPaymentDetail);
|
|
132
136
|
|
|
133
137
|
const summaryItems: SummaryItem[] = [
|
|
134
138
|
{
|
|
@@ -144,7 +148,7 @@ export const useTableData = ({
|
|
|
144
148
|
});
|
|
145
149
|
}
|
|
146
150
|
|
|
147
|
-
if (
|
|
151
|
+
if (externalPaymentDetail) {
|
|
148
152
|
return [...summaryItems, ...getExternalPaymentDetail(paymentDetail)];
|
|
149
153
|
}
|
|
150
154
|
|
|
@@ -152,7 +156,18 @@ export const useTableData = ({
|
|
|
152
156
|
};
|
|
153
157
|
|
|
154
158
|
const processedPaymentSummary = () => {
|
|
155
|
-
const
|
|
159
|
+
const externalPaymentDetail =
|
|
160
|
+
paymentDetail && !order.payments.length
|
|
161
|
+
? getExternalPaymentDetail(paymentDetail)
|
|
162
|
+
: Object.keys(PAYMENT_TYPE_TRANSLATE_KEYS).map((key) => {
|
|
163
|
+
return {
|
|
164
|
+
translateKey: PAYMENT_TYPE_TRANSLATE_KEYS[key],
|
|
165
|
+
price: getPaymentValueByType(order.payments, key),
|
|
166
|
+
};
|
|
167
|
+
});
|
|
168
|
+
|
|
169
|
+
const total = calculateTotalPrice(order, externalPaymentDetail);
|
|
170
|
+
|
|
156
171
|
const totalDiscount = calculateTotalDiscount(order.payments);
|
|
157
172
|
const totalWithDiscount = total - Number(totalDiscount);
|
|
158
173
|
let summaryItems: SummaryItem[] = [
|
|
@@ -170,7 +185,7 @@ export const useTableData = ({
|
|
|
170
185
|
}
|
|
171
186
|
|
|
172
187
|
if (paymentDetail && !order.payments.length) {
|
|
173
|
-
return [...summaryItems, ...
|
|
188
|
+
return [...summaryItems, ...externalPaymentDetail];
|
|
174
189
|
}
|
|
175
190
|
|
|
176
191
|
summaryItems.push({
|
|
@@ -180,15 +195,7 @@ export const useTableData = ({
|
|
|
180
195
|
if (totalWithDiscount <= 0) {
|
|
181
196
|
return summaryItems;
|
|
182
197
|
}
|
|
183
|
-
summaryItems = [
|
|
184
|
-
...summaryItems,
|
|
185
|
-
...Object.keys(TRANSLATE_KEYS).map((key) => {
|
|
186
|
-
return {
|
|
187
|
-
translateKey: TRANSLATE_KEYS[key],
|
|
188
|
-
price: getPaymentValueByType(order.payments, key),
|
|
189
|
-
};
|
|
190
|
-
}),
|
|
191
|
-
];
|
|
198
|
+
summaryItems = [...summaryItems, ...externalPaymentDetail];
|
|
192
199
|
|
|
193
200
|
if (totalWithDiscount > order.totalAmount) {
|
|
194
201
|
summaryItems.push({
|
|
@@ -1,13 +1,16 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import {
|
|
2
|
+
Order,
|
|
3
|
+
ORDER_FEE_CHARGE_TYPE_CLIENT,
|
|
4
|
+
} from "@licklist/core/dist/DataMapper/Order/OrderDataMapper";
|
|
2
5
|
import { Product } from "@licklist/core/dist/DataMapper/Product/ProductDataMapper";
|
|
3
6
|
import { PAYMENT_TYPE_DISCOUNT } from "@licklist/core/dist/DataMapper/Order/PaymentDataMapper";
|
|
4
7
|
import { PaymentDetail } from "@licklist/core/dist/DataMapper/Order/PaymentDetailDataMapper";
|
|
8
|
+
import { PAYMENT_TYPE_TRANSLATE_KEYS } from "../hooks/useTableData";
|
|
5
9
|
|
|
6
10
|
const TRANSLATE_KEYS = {
|
|
7
11
|
totalAmount: "totalPaid",
|
|
8
12
|
netAmount: "netAmount",
|
|
9
13
|
fee: "bookeditFee",
|
|
10
|
-
remainingToPay: "remainingToPay",
|
|
11
14
|
};
|
|
12
15
|
|
|
13
16
|
export enum PAYMENT_TYPE_TITLES {
|
|
@@ -16,14 +19,35 @@ export enum PAYMENT_TYPE_TITLES {
|
|
|
16
19
|
VAT = "VAT",
|
|
17
20
|
}
|
|
18
21
|
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
+
interface ExternalPaymnetDetail {
|
|
23
|
+
translateKey: string;
|
|
24
|
+
price: number;
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
export const calculateTotalPrice = (
|
|
28
|
+
order: Order,
|
|
29
|
+
externalPaymentDetails?: ExternalPaymnetDetail[]
|
|
30
|
+
) => {
|
|
31
|
+
const totalPrice =
|
|
32
|
+
order?.orderProducts?.reduce(
|
|
22
33
|
(total: number, product) =>
|
|
23
34
|
total + (product?.quantity ?? 1) * product.price,
|
|
24
35
|
0
|
|
25
|
-
) ?? 0
|
|
26
|
-
|
|
36
|
+
) ?? 0;
|
|
37
|
+
|
|
38
|
+
if (
|
|
39
|
+
order?.feeChargeType !== ORDER_FEE_CHARGE_TYPE_CLIENT ||
|
|
40
|
+
!externalPaymentDetails
|
|
41
|
+
) {
|
|
42
|
+
return totalPrice;
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
const fee =
|
|
46
|
+
externalPaymentDetails.find(
|
|
47
|
+
(externalPayment) =>
|
|
48
|
+
externalPayment.translateKey === PAYMENT_TYPE_TRANSLATE_KEYS.fee
|
|
49
|
+
)?.price || 0;
|
|
50
|
+
return totalPrice + fee;
|
|
27
51
|
};
|
|
28
52
|
|
|
29
53
|
export const calculateTotalDiscount = (payments: Order["payments"]) => {
|
|
@@ -54,17 +78,18 @@ export const getPaymentValueByType = (
|
|
|
54
78
|
) => {
|
|
55
79
|
if (paymentTypeTitle === PAYMENT_TYPE_TITLES.FEE) {
|
|
56
80
|
const feeWithoutVatValue =
|
|
57
|
-
payments
|
|
58
|
-
|
|
81
|
+
payments?.find(
|
|
82
|
+
(payment) => payment.paymentType.title === paymentTypeTitle
|
|
83
|
+
)?.amount ?? 0;
|
|
59
84
|
|
|
60
85
|
const vatValue =
|
|
61
|
-
payments
|
|
86
|
+
payments?.find(
|
|
62
87
|
(payment) => payment.paymentType.title === PAYMENT_TYPE_TITLES.VAT
|
|
63
88
|
)?.amount ?? 0;
|
|
64
89
|
return feeWithoutVatValue + vatValue;
|
|
65
90
|
}
|
|
66
91
|
return (
|
|
67
|
-
payments
|
|
92
|
+
payments?.find((payment) => payment.paymentType.title === paymentTypeTitle)
|
|
68
93
|
?.amount ?? 0
|
|
69
94
|
);
|
|
70
95
|
};
|
|
@@ -141,7 +141,9 @@ export const PaymentPage = ({
|
|
|
141
141
|
)}
|
|
142
142
|
<SummaryTotalBlock
|
|
143
143
|
label={t(paymentMetadata ? "remaining" : "total")}
|
|
144
|
-
amount={
|
|
144
|
+
amount={
|
|
145
|
+
data?.amount + (bookingSummaryProps?.transactionFee || 0)
|
|
146
|
+
}
|
|
145
147
|
/>
|
|
146
148
|
</div>
|
|
147
149
|
</BookingSummaryFooter>
|
|
@@ -27,7 +27,8 @@ interface PaymentStatusComponentProps {
|
|
|
27
27
|
isLoading?: boolean;
|
|
28
28
|
status: OrderStatusPrefix;
|
|
29
29
|
isAppUsingInIframe?: boolean;
|
|
30
|
-
|
|
30
|
+
transactionFee?: number;
|
|
31
|
+
bookingSummaryProps?: Omit<BookingSummaryProps, "transactionFee">;
|
|
31
32
|
EventCardComponent?: ReactNode;
|
|
32
33
|
showCloseButton?: boolean;
|
|
33
34
|
email?: string;
|
|
@@ -41,6 +42,7 @@ export const PaymentStatusPage = ({
|
|
|
41
42
|
totalAmount,
|
|
42
43
|
isLoading,
|
|
43
44
|
status,
|
|
45
|
+
transactionFee = 0,
|
|
44
46
|
isAppUsingInIframe,
|
|
45
47
|
bookingSummaryProps,
|
|
46
48
|
EventCardComponent,
|
|
@@ -101,18 +103,22 @@ export const PaymentStatusPage = ({
|
|
|
101
103
|
{bookingSummaryProps?.formValues ? (
|
|
102
104
|
<BookingSummary.SummaryTotal
|
|
103
105
|
formValues={bookingSummaryProps?.formValues}
|
|
106
|
+
transactionFee={transactionFee}
|
|
104
107
|
/>
|
|
105
108
|
) : (
|
|
106
109
|
<SummaryTotalBlock
|
|
107
110
|
label={t("total")}
|
|
108
|
-
amount={totalAmount || 0}
|
|
111
|
+
amount={totalAmount + transactionFee || 0}
|
|
109
112
|
/>
|
|
110
113
|
)}
|
|
111
114
|
</BookingSummaryFooter>
|
|
112
115
|
}
|
|
113
116
|
>
|
|
114
117
|
{bookingSummaryProps ? (
|
|
115
|
-
<BookingSummary
|
|
118
|
+
<BookingSummary
|
|
119
|
+
{...bookingSummaryProps}
|
|
120
|
+
transactionFee={transactionFee}
|
|
121
|
+
/>
|
|
116
122
|
) : (
|
|
117
123
|
<h6>{title}</h6>
|
|
118
124
|
)}
|
|
@@ -165,7 +165,10 @@ export function ProductCategoriesControl({
|
|
|
165
165
|
return sum + Number(product.price) * Number(product.totalQuantity);
|
|
166
166
|
}, 0);
|
|
167
167
|
const quantity = productCategory.products?.reduce((sum, product) => {
|
|
168
|
-
|
|
168
|
+
const productQuantity = !product.isUnlimited
|
|
169
|
+
? Number(product.totalQuantity)
|
|
170
|
+
: 0;
|
|
171
|
+
return sum + productQuantity;
|
|
169
172
|
}, 0);
|
|
170
173
|
|
|
171
174
|
setProductCategoryState((prevState) => ({
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import React from "react";
|
|
2
2
|
import { Meta } from "@storybook/react";
|
|
3
|
+
import { boolean } from "@storybook/addon-knobs";
|
|
3
4
|
import { Event } from "@licklist/core/dist/DataMapper/Provider/EventDataMapper";
|
|
4
5
|
import { User } from "@licklist/core/dist/DataMapper/User/UserDataMapper";
|
|
5
6
|
import { Product } from "@licklist/core/dist/DataMapper/Product/ProductDataMapper";
|
|
@@ -10,11 +11,26 @@ export default {
|
|
|
10
11
|
title: "Sales/Guest Profile/Previous Bookings",
|
|
11
12
|
} as Meta;
|
|
12
13
|
|
|
13
|
-
export const Default = (args) =>
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
14
|
+
export const Default = (args) => {
|
|
15
|
+
const useProviderLink = boolean("useProviderLink", true);
|
|
16
|
+
|
|
17
|
+
const renderOrderTitleLinkByProvider = (order: Order) => {
|
|
18
|
+
return (
|
|
19
|
+
<a href={`/some_href/${order.id}`}>{order[order.orderableType]?.name}</a>
|
|
20
|
+
);
|
|
21
|
+
};
|
|
22
|
+
|
|
23
|
+
return (
|
|
24
|
+
<div>
|
|
25
|
+
<PreviousBookings
|
|
26
|
+
{...args}
|
|
27
|
+
renderOrderTitleLinkByProvider={
|
|
28
|
+
useProviderLink ? renderOrderTitleLinkByProvider : undefined
|
|
29
|
+
}
|
|
30
|
+
/>
|
|
31
|
+
</div>
|
|
32
|
+
);
|
|
33
|
+
};
|
|
18
34
|
|
|
19
35
|
Default.args = {
|
|
20
36
|
orders: [
|
|
@@ -43,6 +59,8 @@ Default.args = {
|
|
|
43
59
|
updatedAt: "2022-05-20 18:28:56",
|
|
44
60
|
status: "cart",
|
|
45
61
|
tickets: [],
|
|
62
|
+
orderableType: "event",
|
|
63
|
+
orderableId: 1,
|
|
46
64
|
event: {
|
|
47
65
|
id: 1,
|
|
48
66
|
name: "testEvent1",
|
|
@@ -79,6 +97,8 @@ Default.args = {
|
|
|
79
97
|
updatedAt: "2022-05-20 18:28:56",
|
|
80
98
|
status: "cart",
|
|
81
99
|
tickets: [],
|
|
100
|
+
orderableType: "event",
|
|
101
|
+
orderableId: 2,
|
|
82
102
|
event: {
|
|
83
103
|
id: 2,
|
|
84
104
|
name: "testEvent2",
|
|
@@ -128,6 +148,8 @@ Default.args = {
|
|
|
128
148
|
updatedAt: "2022-05-20 18:28:56",
|
|
129
149
|
status: "cart",
|
|
130
150
|
tickets: [],
|
|
151
|
+
orderableType: "event",
|
|
152
|
+
orderableId: 3,
|
|
131
153
|
event: {
|
|
132
154
|
id: 3,
|
|
133
155
|
name: "testEvent3",
|
|
@@ -156,6 +178,8 @@ Default.args = {
|
|
|
156
178
|
updatedAt: "2022-05-20 18:28:56",
|
|
157
179
|
status: "cart",
|
|
158
180
|
tickets: [],
|
|
181
|
+
orderableType: "event",
|
|
182
|
+
orderableId: 3,
|
|
159
183
|
event: {
|
|
160
184
|
id: 3,
|
|
161
185
|
name: "testEvent3",
|
|
@@ -184,6 +208,8 @@ Default.args = {
|
|
|
184
208
|
updatedAt: "2022-05-20 18:28:56",
|
|
185
209
|
status: "cart",
|
|
186
210
|
tickets: [],
|
|
211
|
+
orderableType: "event",
|
|
212
|
+
orderableId: 3,
|
|
187
213
|
event: {
|
|
188
214
|
id: 3,
|
|
189
215
|
name: "testEvent3",
|
|
@@ -212,6 +238,8 @@ Default.args = {
|
|
|
212
238
|
updatedAt: "2022-05-20 18:28:56",
|
|
213
239
|
status: "cart",
|
|
214
240
|
tickets: [],
|
|
241
|
+
orderableType: "event",
|
|
242
|
+
orderableId: 3,
|
|
215
243
|
event: {
|
|
216
244
|
id: 3,
|
|
217
245
|
name: "testEvent3",
|
|
@@ -239,6 +267,8 @@ Default.args = {
|
|
|
239
267
|
updatedAt: "2022-05-20 18:28:56",
|
|
240
268
|
status: "cart",
|
|
241
269
|
tickets: [],
|
|
270
|
+
orderableType: "event",
|
|
271
|
+
orderableId: 3,
|
|
242
272
|
event: {
|
|
243
273
|
id: 3,
|
|
244
274
|
name: "testEvent3",
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import React, { useState } from "react";
|
|
1
|
+
import React, { useState, ReactNode } from "react";
|
|
2
2
|
import { useTranslation } from "react-i18next";
|
|
3
3
|
import { DateTime } from "luxon";
|
|
4
4
|
import { Button } from "react-bootstrap";
|
|
@@ -8,9 +8,13 @@ const MAX_ORDERS_COUNT = 6;
|
|
|
8
8
|
|
|
9
9
|
export type PreviousBookingsProps = {
|
|
10
10
|
orders: Order[];
|
|
11
|
+
renderOrderTitleLinkByProvider?: (order: Order) => ReactNode;
|
|
11
12
|
};
|
|
12
13
|
|
|
13
|
-
export const PreviousBookings = ({
|
|
14
|
+
export const PreviousBookings = ({
|
|
15
|
+
orders,
|
|
16
|
+
renderOrderTitleLinkByProvider,
|
|
17
|
+
}: PreviousBookingsProps) => {
|
|
14
18
|
const { t } = useTranslation("Design");
|
|
15
19
|
const [showOlderBookings, setShowOlderBookings] = useState(false);
|
|
16
20
|
|
|
@@ -36,13 +40,17 @@ export const PreviousBookings = ({ orders }: PreviousBookingsProps) => {
|
|
|
36
40
|
{orders.length > 0 ? (
|
|
37
41
|
<div className="events-wrapper">
|
|
38
42
|
{orders.slice(0, endSlicedOrdersNumber).map((order) => {
|
|
43
|
+
const eventName = renderOrderTitleLinkByProvider
|
|
44
|
+
? renderOrderTitleLinkByProvider(order)
|
|
45
|
+
: order[order.orderableType]?.name;
|
|
46
|
+
|
|
39
47
|
return (
|
|
40
48
|
<div
|
|
41
49
|
className="event-info col-12 col-sm-6 col-md-6 col-lg-6 col-xl-6"
|
|
42
50
|
key={order.id}
|
|
43
51
|
>
|
|
44
52
|
<div className="info-wrapper">
|
|
45
|
-
<p className="label">{
|
|
53
|
+
<p className="label">{eventName}</p>
|
|
46
54
|
{order.createdAt && (
|
|
47
55
|
<p className="event-date">{formatDate(order.createdAt)}</p>
|
|
48
56
|
)}
|
|
@@ -1,6 +1,4 @@
|
|
|
1
1
|
.customers-filter {
|
|
2
|
-
gap: 0.5rem;
|
|
3
|
-
|
|
4
2
|
@include media-breakpoint-down(sm) {
|
|
5
3
|
label {
|
|
6
4
|
font-size: 0.8rem;
|
|
@@ -24,11 +22,32 @@
|
|
|
24
22
|
}
|
|
25
23
|
|
|
26
24
|
.customers-filter-items {
|
|
27
|
-
|
|
25
|
+
width: 100%;
|
|
26
|
+
|
|
27
|
+
.customer-filter {
|
|
28
|
+
flex: 0 0 33.33%;
|
|
29
|
+
max-width: 33.33%;
|
|
30
|
+
}
|
|
28
31
|
|
|
29
32
|
@include media-breakpoint-down(xs) {
|
|
30
33
|
flex-direction: column;
|
|
31
|
-
|
|
34
|
+
|
|
35
|
+
.customer-filter {
|
|
36
|
+
flex: 1;
|
|
37
|
+
max-width: 100%;
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
@include media-breakpoint-up(sm) {
|
|
42
|
+
.customer-filter {
|
|
43
|
+
&:first-child {
|
|
44
|
+
padding-left: 0;
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
&:last-child {
|
|
48
|
+
padding-right: 0;
|
|
49
|
+
}
|
|
50
|
+
}
|
|
32
51
|
}
|
|
33
52
|
}
|
|
34
53
|
}
|