@licklist/design 0.44.504 → 0.44.505
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/events/edit-event-modal/IntervalInput.d.ts +4 -1
- package/dist/events/edit-event-modal/IntervalInput.d.ts.map +1 -1
- package/dist/events/edit-event-modal/IntervalInput.js +1 -1
- package/dist/events/edit-event-modal/component/EditEventForm/EditEventForm.d.ts.map +1 -1
- package/dist/events/edit-event-modal/component/EditEventForm/EditEventForm.js +1 -1
- package/package.json +1 -1
- package/src/events/edit-event-modal/IntervalInput.tsx +21 -1
- package/src/events/edit-event-modal/component/EditEventForm/EditEventForm.tsx +3 -0
|
@@ -1,7 +1,10 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
|
+
import { ProductSet } from "@licklist/core/dist/DataMapper/Product/ProductSetDataMapper";
|
|
2
3
|
import { ProductSetFormValues } from "../../product-set/form";
|
|
3
4
|
interface IntervalInputProps {
|
|
4
5
|
editedProductSet?: ProductSetFormValues;
|
|
6
|
+
productSets?: ProductSet[];
|
|
7
|
+
productSetId?: number;
|
|
5
8
|
disabled?: boolean;
|
|
6
9
|
}
|
|
7
10
|
export interface IntervalInputValues {
|
|
@@ -9,6 +12,6 @@ export interface IntervalInputValues {
|
|
|
9
12
|
end: string;
|
|
10
13
|
rrule: string | null;
|
|
11
14
|
}
|
|
12
|
-
export declare function IntervalInput({ disabled, editedProductSet, }: IntervalInputProps): JSX.Element;
|
|
15
|
+
export declare function IntervalInput({ disabled, editedProductSet, productSetId, productSets, }: IntervalInputProps): JSX.Element;
|
|
13
16
|
export {};
|
|
14
17
|
//# sourceMappingURL=IntervalInput.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"IntervalInput.d.ts","sourceRoot":"","sources":["../../../src/events/edit-event-modal/IntervalInput.tsx"],"names":[],"mappings":";
|
|
1
|
+
{"version":3,"file":"IntervalInput.d.ts","sourceRoot":"","sources":["../../../src/events/edit-event-modal/IntervalInput.tsx"],"names":[],"mappings":";AAQA,OAAO,EAAE,UAAU,EAAE,MAAM,6DAA6D,CAAC;AAIzF,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAE9D,UAAU,kBAAkB;IAC1B,gBAAgB,CAAC,EAAE,oBAAoB,CAAC;IACxC,WAAW,CAAC,EAAE,UAAU,EAAE,CAAC;IAC3B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,MAAM,WAAW,mBAAmB;IAClC,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;CACtB;AAED,wBAAgB,aAAa,CAAC,EAC5B,QAAgB,EAChB,gBAAgB,EAChB,YAAY,EACZ,WAAW,GACZ,EAAE,kBAAkB,eA4IpB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e,t=require("tslib"),r=require("react"),n=(e=r)&&"object"==typeof e&&"default"in e?e.default:e,a=require("react-i18next"),o=require("react-bootstrap"),i=require("react-hook-form"),l=require("@react-aria/utils"),u=require("../../static/WarningMessage.js"),
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e,t=require("tslib"),r=require("react"),n=(e=r)&&"object"==typeof e&&"default"in e?e.default:e,a=require("react-i18next"),o=require("react-bootstrap"),i=require("react-hook-form"),l=require("@react-aria/utils"),u=require("../../static/WarningMessage.js"),d=require("luxon");require("../../static/index.js");var s=require("react-intl"),c=require("../../recurrence-input/RecurrenceInput.js");var m=function(){var e=i.useFormContext().watch,n=e("start"),a=e("end"),o=s.useIntl(),l=o.formatList,u=o.formatNumber;return r.useMemo((function(){var e=d.Interval.fromDateTimes(d.DateTime.fromISO(n),d.DateTime.fromISO(a)).toDuration(["days","hours","minutes"]);if(e.isValid){var r=function(e,t){return u(e,{style:"unit",unit:t,unitDisplay:"long"})},o=[[e.days,"day"],[e.hours,"hour"],[e.minutes,"minute"]].filter((function(e){return t.__read(e,1)[0]}));return l(o.map((function(e){return r.apply(void 0,t.__spreadArray([],t.__read(e),!1))})),{style:"long",type:"unit"})}}),[n,a])},f=function(){var e=i.useFormContext().watch,t=a.useTranslation(["Design","Validation"]).t,n=e("start"),o=e("end");return{start:r.useMemo((function(){return{required:t("Validation:fieldRequired",{attribute:t("start")}),validate:function(e){return d.DateTime.fromISO(e).diffNow().toMillis()>0||t("Validation:fieldValidEventStart")}}}),[]),end:r.useMemo((function(){return{validate:function(e){return!e||(d.DateTime.fromISO(e).diff(d.DateTime.fromISO(n)).toMillis()>0||t("Validation:fieldValidEventEnd"))}}}),[n,o])}};exports.IntervalInput=function(e){var s,v,p=e.disabled,E=void 0!==p&&p,g=e.editedProductSet,I=e.productSetId,F=e.productSets,C=a.useTranslation(["Design","Validation"]).t,h=i.useFormContext(),b=h.register,_=h.formState.errors,y=h.watch,q=h.control,S=h.setValue,D=m(),T=f(),k=y("rrule"),x=y("start"),M=y("end"),O=t.__read(r.useState(Boolean(k)),2),V=O[0],w=O[1],R=t.__read(r.useState(!1),2),B=R[0],j=R[1],G=l.useId(),P=r.useRef(null),L=r.useRef(null);return r.useEffect((function(){g&&w(!1)}),[g]),r.useEffect((function(){if(F){var e=F.find((function(e){return g&&(null==e?void 0:e.id)===(null==g?void 0:g.id)||Boolean(null==e?void 0:e.parentMenuId)&&(null==e?void 0:e.id)===I}));j(Boolean(e))}}),[F,I,j,g]),n.createElement(n.Fragment,null,n.createElement(o.Form.Row,{className:"interval-container"},n.createElement(o.Form.Group,{as:o.Col,controlId:"start"},n.createElement(o.Form.Label,null,C("start")),n.createElement(o.Form.Control,t.__assign({type:"datetime-local"},b("start",T.start),{value:x,name:"start",required:!0,isInvalid:Boolean(_.start),onChange:function(e){var t=e.target.value;w(!1),S("start",t),d.DateTime.fromISO(M).diff(d.DateTime.fromISO(t)).toMillis()<0&&S("end",t)},onClick:function(){var e;return null===(e=null==P?void 0:P.current)||void 0===e?void 0:e.showPicker()},ref:P,disabled:E})),n.createElement(o.Form.Control.Feedback,{type:"invalid"},null===(s=_.start)||void 0===s?void 0:s.message)),n.createElement(o.Form.Group,{as:o.Col,controlId:"end"},n.createElement(o.Form.Label,null,C("end")),n.createElement(o.Form.Control,t.__assign({type:"datetime-local"},b("end",T.end),{value:M,name:"end",onChange:function(e){var t=e.target.value;return S("end",t)},min:x,isInvalid:Boolean(_.end),onClick:function(){var e;return null===(e=null==L?void 0:L.current)||void 0===e?void 0:e.showPicker()},ref:L,disabled:E})),n.createElement(o.Form.Control.Feedback,{type:"invalid"},null===(v=_.end)||void 0===v?void 0:v.message),n.createElement(o.Form.Text,{muted:!0},D&&"lasts ".concat(D)))),x&&n.createElement(o.Form.Group,{controlId:G},n.createElement(o.Form.Check,{label:"Recurrent",custom:!0,checked:V,onChange:function(e){var t=e.target.checked;w(t)},disabled:E||Boolean(g)}),!V&&n.createElement(o.Form.Text,{muted:!0},C("reccurentDescription",{item:C("event")}))),B&&n.createElement(u.default,{message:C("recurrentOverridesWarining")}),V&&x&&n.createElement(o.Form.Group,null,n.createElement(i.Controller,{control:q,name:"rrule",render:function(e){var t=e.field,r=t.value,a=t.onChange;return n.createElement(c.RecurrenceInput,{value:r,onChange:a,date:x,disabled:E})}})))};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EditEventForm.d.ts","sourceRoot":"","sources":["../../../../../src/events/edit-event-modal/component/EditEventForm/EditEventForm.tsx"],"names":[],"mappings":";AAEA,OAAO,EAIL,KAAK,EACN,MAAM,sDAAsD,CAAC;AAM9D,OAAO,EAAE,iBAAiB,EAAE,MAAM,oDAAoD,CAAC;AAGvF,OAAO,EAAE,WAAW,EAAE,MAAM,+CAA+C,CAAC;AAI5E,OAAO,EAAE,UAAU,EAAE,MAAM,6DAA6D,CAAC;AACzF,OAAO,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAS7D,OAAO,EAAiB,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAIzE,OAAO,EAAE,oBAAoB,EAAE,MAAM,6CAA6C,CAAC;AAGnF,MAAM,WAAW,mBAAoB,SAAQ,mBAAmB;IAC9D,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,kBAAkB,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC,OAAO,EAAE,OAAO,GAAG,MAAM,CAAC;IAC1B,mBAAmB,EAAE,MAAM,GAAG,IAAI,CAAC;IACnC,MAAM,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC;IACvB,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,gBAAgB,CAAC,EAAE,oBAAoB,CAAC;CACzC;AAED,MAAM,WAAW,kBAAmB,SAAQ,iBAAiB;IAC3D,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,UAAU,EAAE,aAAa,EAAE,CAAC;IAC5B,KAAK,EAAE,MAAM,CAAC;IACd,kBAAkB,CAAC,EAAE,OAAO,CAAC,mBAAmB,CAAC,CAAC;IAClD,YAAY,CAAC,EAAE,WAAW,CAAC;IAC3B,WAAW,EAAE,CAAC,MAAM,EAAE,mBAAmB,KAAK,IAAI,CAAC;IACnD,WAAW,CAAC,EAAE,UAAU,EAAE,GAAG,IAAI,CAAC;IAClC,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,gBAAgB,EAAE,CAAC,KAAK,EAAE,mBAAmB,KAAK,IAAI,CAAC;IACvD,mBAAmB,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAC7C,4BAA4B,CAAC,EAAE,OAAO,CAAC;CACxC;AAOD,eAAO,MAAM,aAAa,qLAYvB,kBAAkB,
|
|
1
|
+
{"version":3,"file":"EditEventForm.d.ts","sourceRoot":"","sources":["../../../../../src/events/edit-event-modal/component/EditEventForm/EditEventForm.tsx"],"names":[],"mappings":";AAEA,OAAO,EAIL,KAAK,EACN,MAAM,sDAAsD,CAAC;AAM9D,OAAO,EAAE,iBAAiB,EAAE,MAAM,oDAAoD,CAAC;AAGvF,OAAO,EAAE,WAAW,EAAE,MAAM,+CAA+C,CAAC;AAI5E,OAAO,EAAE,UAAU,EAAE,MAAM,6DAA6D,CAAC;AACzF,OAAO,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAS7D,OAAO,EAAiB,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAIzE,OAAO,EAAE,oBAAoB,EAAE,MAAM,6CAA6C,CAAC;AAGnF,MAAM,WAAW,mBAAoB,SAAQ,mBAAmB;IAC9D,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,kBAAkB,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC,OAAO,EAAE,OAAO,GAAG,MAAM,CAAC;IAC1B,mBAAmB,EAAE,MAAM,GAAG,IAAI,CAAC;IACnC,MAAM,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC;IACvB,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,gBAAgB,CAAC,EAAE,oBAAoB,CAAC;CACzC;AAED,MAAM,WAAW,kBAAmB,SAAQ,iBAAiB;IAC3D,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,UAAU,EAAE,aAAa,EAAE,CAAC;IAC5B,KAAK,EAAE,MAAM,CAAC;IACd,kBAAkB,CAAC,EAAE,OAAO,CAAC,mBAAmB,CAAC,CAAC;IAClD,YAAY,CAAC,EAAE,WAAW,CAAC;IAC3B,WAAW,EAAE,CAAC,MAAM,EAAE,mBAAmB,KAAK,IAAI,CAAC;IACnD,WAAW,CAAC,EAAE,UAAU,EAAE,GAAG,IAAI,CAAC;IAClC,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,gBAAgB,EAAE,CAAC,KAAK,EAAE,mBAAmB,KAAK,IAAI,CAAC;IACvD,mBAAmB,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAC7C,4BAA4B,CAAC,EAAE,OAAO,CAAC;CACxC;AAOD,eAAO,MAAM,aAAa,qLAYvB,kBAAkB,gBAsVpB,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"),i=e(r),n=require("react-i18next"),o=require("react-bootstrap"),l=require("react-hook-form"),a=e(require("@licklist/plugins/dist/services/Form/FormErrorService")),
|
|
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"),i=e(r),n=require("react-i18next"),o=require("react-bootstrap"),l=require("react-hook-form"),a=e(require("@licklist/plugins/dist/services/Form/FormErrorService")),d=require("@react-aria/utils"),u=require("luxon"),s=require("../../../../collapsible-input-group/CollapsibleInputGroup.js"),c=require("../../../../modals/dialog/Dialog.js"),m=require("../../../../modals/dialog/DialogContext.js"),p=require("@licklist/core/dist/DataMapper/Media/ImageDataMapper"),v=require("../../../../file-upload/FileUpload.js"),g=require("../../../../tiptap-editor/TipTapEditor.js"),E=require("../SelectEventProductSet/SelectEventProductSet.js"),f=require("@licklist/plugins/dist/hooks/Media/useMultipleImages"),I=require("@licklist/plugins/dist/utils/ScrollUtils"),b=require("@licklist/plugins/dist/utils/FormValues"),S=require("../SaleDeadline/SaleDeadline.js"),P=require("../../../../provider/categories-input/CategoriesInput.js"),F=require("../../../../provider/categories-input/CategoriesInputDescription.js");require("../../../../provider/location-input/LocationInput.js"),require("../../../../provider/location-input/LocationInputDescription.js"),require("../../../../provider/provider-links-input/ProviderLinksInput.js"),require("../../../../provider/provider-details-input/ProviderDetailsInput.js"),require("../../../../provider/provider-form/ProviderForm.js"),require("../../../../provider/working-hours-input/WorkingHoursInput.js"),require("../../../../provider/working-hours-input/WorkingHoursInputDescription.js"),require("../../../../provider/venue-form/VenueForm.js"),require("../../../../provider/company/user-form/UserForm.js");var q=require("../../IntervalInput.js"),A=require("../../utils/isUrlValid.js"),D={uploadImage:p.IMAGE_TYPE_MAP[p.IMAGE_TYPE_IMAGE],uploadCover:p.IMAGE_TYPE_MAP[p.IMAGE_TYPE_COVER]},h=function(e){var t,r,i,n,o,l,a,d,s,c,m,p=function(e){return e&&u.DateTime.fromISO(e).toISO({includeOffset:!1,suppressMilliseconds:!0,suppressSeconds:!0})};return{name:null!==(t=null==e?void 0:e.name)&&void 0!==t?t:"",description:null!==(r=null==e?void 0:e.description)&&void 0!==r?r:"",start:p(null!==(i=null==e?void 0:e.startAt)&&void 0!==i?i:""),end:p(null!==(n=null==e?void 0:e.endAt)&&void 0!==n?n:""),rrule:null!==(o=null==e?void 0:e.rrule)&&void 0!==o?o:void 0,categories:null!==(l=null==e?void 0:e.categories)&&void 0!==l?l:[],termsAndConditions:null!==(a=null==e?void 0:e.termsAndConditions)&&void 0!==a?a:"",visible:null!==(d=null==e?void 0:e.visible)&&void 0!==d?d:"",externalPaymentLink:null!==(s=null==e?void 0:e.externalPaymentLink)&&void 0!==s?s:"",productSetId:null==e?void 0:e.productSetId,images:null==e?void 0:e.images,saleDeadline:null==e?void 0:e.saleDeadline,integrationUrl:null!==(c=null==e?void 0:e.integrationUrl)&&void 0!==c?c:"",recurrenceEndAt:null!==(m=null==e?void 0:e.recurrenceEndAt)&&void 0!==m?m:void 0}};exports.EditEventForm=function(e){var u,C,_,y=e.disabled,k=void 0!==y&&y,M=e.categories,L=e.title,j=e.hasPermission,w=void 0===j||j,G=e.defaultEventValues,U=e.serverErrors,x=e.onSaveEvent,T=e.productSets,V=e.createProductSet,Y=e.setEditProductSetId,O=e.isExternalPaymentLinkEnabled,B=n.useTranslation(["Design","Validation"]).t,R=d.useId(),N=d.useId(),W=d.useId(),H=d.useId(),K=d.useId(),z=t.__read(r.useState(null),2),J=z[0],Q=z[1],X=t.__read(r.useState(!1),2),Z=X[0],$=X[1],ee=m.useDialogContext(),te=ee.isShownDialog,re=ee.onBeforeUnload,ie=ee.onPopState,ne=ee.onApproveDialog,oe=ee.onDeclineDialog,le=l.useForm({defaultValues:h(G)}),ae=le.register,de=le.formState.errors,ue=le.handleSubmit,se=le.formState,ce=le.reset,me=le.watch,pe=le.setValue,ve=le.setError,ge=le.getValues,Ee=le.control,fe=me("visible"),Ie=me("editedProductSet"),be=me("productSetId"),Se=f.useMultipleImages(J),Pe=Se.images,Fe=Se.handleImageRemove,qe=Se.handleImageUploading,Ae=Se.isImagesLoading,De=Se.isCoverImagesLoading,he=r.useCallback((function(e,t){return!!A.isUrlValid(e)||B("Validation:fieldValidWebURL",{attribute:t})}),[]);return r.useEffect((function(){ce(h(G))}),[G]),r.useEffect((function(){if(G.images&&G.images.length>0){var e=ge("images");Q(e)}else Q([])}),[Q,ge,G]),r.useEffect((function(){Array.isArray(Pe)&&pe("images",Pe)}),[Pe]),r.useEffect((function(){a.handleServerErrors(U,ve)}),[U]),r.useEffect((function(){return window.history.pushState(null,"",window.location.pathname),window.addEventListener("beforeunload",re),window.addEventListener("popstate",ie),function(){window.removeEventListener("beforeunload",re),window.removeEventListener("popstate",ie)}}),[]),i.createElement(i.Fragment,null,i.createElement(c.Dialog,{isActive:te,title:B("Design:leavePage"),content:B("Design:changesNotBeSaved"),onApprove:ne,onDecline:oe}),i.createElement("h5",{className:"edit-event-modal-title highlited-primary-title"},L),i.createElement(l.FormProvider,t.__assign({},le),i.createElement(o.Modal.Body,{as:"form",noValidate:!0,onSubmit:ue(x,(function(e){I.scrollToError(b.getFirstErrorKey(e))}))},i.createElement(o.Form.Group,{controlId:"name"},i.createElement(o.Form.Label,null,B("nameOfEvent")),i.createElement(o.Form.Control,t.__assign({},ae("name",{required:B("Validation:fieldRequired",{attribute:B("name")}),maxLength:{value:255,message:B("Validation:fieldMaxLength",{attribute:B("name"),max:255})}}),{name:"name",required:!0,isInvalid:Boolean(de.name),disabled:k})),i.createElement(o.Form.Control.Feedback,{type:"invalid"},null===(u=de.name)||void 0===u?void 0:u.message)),Object.keys(D).map((function(e){var t=D[e];return i.createElement(v.FileUpload,{key:e,allowedExtensions:["jpg","jpeg","png"],enablePreview:!0,defaultFiles:null==Pe?void 0:Pe.filter((function(e){return p.IMAGE_TYPE_MAP[e.imageType]===t})),onFilesChange:function(e){qe(e,t)},secondSubtitle:t===p.IMAGE_TYPE_MAP[p.IMAGE_TYPE_IMAGE]?"1200x600":void 0,title:B("Design:".concat(e)),onFileRemove:function(e,r){return Fe(String(e),r,t)},isLoading:t===p.IMAGE_TYPE_MAP[p.IMAGE_TYPE_IMAGE]?Ae:De,disabled:k})})),i.createElement(o.Form.Group,{controlId:R},i.createElement(o.Form.Label,null,B("description")),i.createElement(l.Controller,{render:function(e){var t=e.field;return i.createElement(g.TipTapEditor,{withEmoji:!1,viewMode:!1,onUpdate:t.onChange,content:t.value,disabled:k})},name:"description"})),i.createElement(q.IntervalInput,{key:me("rrule"),disabled:k,productSetId:be,productSets:T,editedProductSet:Ie}),0!==M.length&&i.createElement(o.Form.Group,null,i.createElement(o.Accordion,null,i.createElement(s.CollapsibleInputGroup,{eventKey:"categories",label:B("categories"),description:i.createElement(F.CategoriesInputDescription,{categories:M})},i.createElement(P.CategoriesInput,{categories:M})))),i.createElement(S.SaleDeadline,{disabled:k}),i.createElement(o.Form.Group,{controlId:N},i.createElement(o.Form.Label,null,B("termsAndConditions")),i.createElement(l.Controller,{render:function(e){var t=e.field;return i.createElement(g.TipTapEditor,{withEmoji:!1,viewMode:!1,onUpdate:t.onChange,content:t.value,disabled:k})},name:"termsAndConditions"})),O&&i.createElement(o.Form.Group,{controlId:K},i.createElement(o.Form.Label,null,B("externalPaymentLink")),i.createElement(o.Form.Control,t.__assign({},ae("externalPaymentLink",{validate:function(e){return!e||he(e,B("Design:externalPaymentLink"))}}),{name:"externalPaymentLink",type:"url",inputMode:"url",disabled:k,isInvalid:Boolean(de.externalPaymentLink)})),i.createElement(o.Form.Control.Feedback,{type:"invalid"},null===(C=de.externalPaymentLink)||void 0===C?void 0:C.message)),i.createElement(o.Form.Group,{controlId:W,className:"mt-5"},i.createElement(o.Form.Label,null,B("public")," / ",B("private")),i.createElement(l.Controller,{control:Ee,name:"visible",rules:{validate:function(e){return"boolean"==typeof e||B("Validation:fieldRequired",{attribute:B("visible")})}},render:function(e){var t=e.field,r=e.fieldState,n=r.invalid,l=r.error,a=String(t.value);return i.createElement(i.Fragment,null,i.createElement(o.Form.Control,{as:"select",onChange:function(e){var r=e.target.value;t.onChange(r?"true"===r:r)},isInvalid:n,defaultValue:"",value:a,disabled:k},i.createElement("option",{value:""},B("Design:pleaseChooseOne")),i.createElement("option",{value:"false"},B("Design:private")),i.createElement("option",{value:"true"},B("Design:public"))),i.createElement(o.Form.Control.Feedback,{type:"invalid"},null==l?void 0:l.message))}})),"boolean"!=typeof fe||fe?null:i.createElement(o.Form.Group,{controlId:H},i.createElement(o.Form.Label,null,B("Design:integrationUrl")),i.createElement(o.Form.Control,t.__assign({},ae("integrationUrl",{required:B("Validation:fieldRequired",{attribute:B("Design:integrationUrl")}),validate:function(e){return he(e,B("Design:integrationUrl"))}}),{name:"integrationUrl",isInvalid:Boolean(de.integrationUrl),placeholder:B("Design:integrationUrl"),disabled:k})),i.createElement(o.Form.Control.Feedback,{type:"invalid"},null===(_=de.integrationUrl)||void 0===_?void 0:_.message)),i.createElement(E.SelectEventProductSet,{productSets:T||[],createProductSet:V,setEditProductSetId:Y,setShowEditProductSet:$,showEditProductSet:Z}),w&&!Z&&i.createElement(o.Button,{disabled:k||se.isSubmitting||Ae||De,className:"save-event",type:"submit"},se.isSubmitting?"".concat(B("saveAndAdd"),"..."):B("saveAndAdd")))))};
|
package/package.json
CHANGED
|
@@ -6,6 +6,7 @@ import { useTranslation } from "react-i18next";
|
|
|
6
6
|
import { useIntl } from "react-intl";
|
|
7
7
|
|
|
8
8
|
import { useId } from "@react-aria/utils";
|
|
9
|
+
import { ProductSet } from "@licklist/core/dist/DataMapper/Product/ProductSetDataMapper";
|
|
9
10
|
import HTMLInputDateElement from "../../types/static/HTMLInputDateElement";
|
|
10
11
|
import { RecurrenceInput } from "../../recurrence-input";
|
|
11
12
|
import { WarningMessage } from "../../static";
|
|
@@ -13,6 +14,8 @@ import { ProductSetFormValues } from "../../product-set/form";
|
|
|
13
14
|
|
|
14
15
|
interface IntervalInputProps {
|
|
15
16
|
editedProductSet?: ProductSetFormValues;
|
|
17
|
+
productSets?: ProductSet[];
|
|
18
|
+
productSetId?: number;
|
|
16
19
|
disabled?: boolean;
|
|
17
20
|
}
|
|
18
21
|
|
|
@@ -25,6 +28,8 @@ export interface IntervalInputValues {
|
|
|
25
28
|
export function IntervalInput({
|
|
26
29
|
disabled = false,
|
|
27
30
|
editedProductSet,
|
|
31
|
+
productSetId,
|
|
32
|
+
productSets,
|
|
28
33
|
}: IntervalInputProps) {
|
|
29
34
|
const { t } = useTranslation(["Design", "Validation"]);
|
|
30
35
|
const {
|
|
@@ -42,6 +47,7 @@ export function IntervalInput({
|
|
|
42
47
|
const start = watch("start");
|
|
43
48
|
const end = watch("end");
|
|
44
49
|
const [recurrent, setRecurrent] = useState(Boolean(rrule));
|
|
50
|
+
const [isOverriden, setIsOverriden] = useState(false);
|
|
45
51
|
const recurrentId = useId();
|
|
46
52
|
|
|
47
53
|
const startDateInput = useRef<HTMLInputDateElement | null>(null);
|
|
@@ -66,6 +72,18 @@ export function IntervalInput({
|
|
|
66
72
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
67
73
|
}, [editedProductSet]);
|
|
68
74
|
|
|
75
|
+
useEffect(() => {
|
|
76
|
+
if (!productSets) return;
|
|
77
|
+
|
|
78
|
+
const isOverridenProductSet = productSets.find(
|
|
79
|
+
(productSet) =>
|
|
80
|
+
(editedProductSet && productSet?.id === editedProductSet?.id) ||
|
|
81
|
+
(Boolean(productSet?.parentMenuId) && productSet?.id === productSetId)
|
|
82
|
+
);
|
|
83
|
+
|
|
84
|
+
setIsOverriden(Boolean(isOverridenProductSet));
|
|
85
|
+
}, [productSets, productSetId, setIsOverriden, editedProductSet]);
|
|
86
|
+
|
|
69
87
|
return (
|
|
70
88
|
<>
|
|
71
89
|
<Form.Row className="interval-container">
|
|
@@ -129,9 +147,11 @@ export function IntervalInput({
|
|
|
129
147
|
{t("reccurentDescription", { item: t("event") })}
|
|
130
148
|
</Form.Text>
|
|
131
149
|
)}
|
|
132
|
-
<WarningMessage message={t("recurrentOverridesWarining")} />
|
|
133
150
|
</Form.Group>
|
|
134
151
|
)}
|
|
152
|
+
{isOverriden && (
|
|
153
|
+
<WarningMessage message={t("recurrentOverridesWarining")} />
|
|
154
|
+
)}
|
|
135
155
|
{recurrent && start && (
|
|
136
156
|
<Form.Group>
|
|
137
157
|
<Controller
|
|
@@ -121,6 +121,7 @@ export const EditEventForm = ({
|
|
|
121
121
|
|
|
122
122
|
const visible = watch("visible");
|
|
123
123
|
const editedProductSet = watch("editedProductSet");
|
|
124
|
+
const productSetId = watch("productSetId");
|
|
124
125
|
|
|
125
126
|
const {
|
|
126
127
|
images,
|
|
@@ -267,6 +268,8 @@ export const EditEventForm = ({
|
|
|
267
268
|
<IntervalInput
|
|
268
269
|
key={watch("rrule")}
|
|
269
270
|
disabled={disabled}
|
|
271
|
+
productSetId={productSetId}
|
|
272
|
+
productSets={productSets}
|
|
270
273
|
editedProductSet={editedProductSet}
|
|
271
274
|
/>
|
|
272
275
|
{categories.length !== 0 && (
|