@teamco/ischeduler-antd 2.0.12 → 2.0.14
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.cjs.js +1 -1
- package/dist/index.es.js +5 -5
- package/package.json +1 -1
package/dist/index.cjs.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});var e=Object.create,t=Object.defineProperty,n=Object.getOwnPropertyDescriptor,r=Object.getOwnPropertyNames,i=Object.getPrototypeOf,a=Object.prototype.hasOwnProperty,o=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),s=(e,i,o,s)=>{if(i&&typeof i==`object`||typeof i==`function`)for(var c=r(i),l=0,u=c.length,d;l<u;l++)d=c[l],!a.call(e,d)&&d!==o&&t(e,d,{get:(e=>i[e]).bind(null,d),enumerable:!(s=n(i,d))||s.enumerable});return e},c=(n,r,a)=>(a=n==null?{}:e(i(n)),s(r||!n||!n.__esModule?t(a,`default`,{value:n,enumerable:!0}):a,n));let l=require(`@teamco/ischeduler-core`),u=require(`antd`),d=require(`react`);d=c(d);let f=require(`react/jsx-runtime`),p=require(`@ant-design/icons`),m=require(`dayjs`);m=c(m);var h=e=>{let{t}=(0,l.useSchedulerContext)(),{min:n=1,label:r,disabled:i,durationTypes:a=[],required:o,prefix:s=[],exclude:c=[],namespace:d=l.CNsDuration,onTypeChange:p,onValueChange:m}=e;return(0,f.jsx)(u.Form.Item,{label:r,children:(0,f.jsxs)(u.Space.Compact,{style:{width:`100%`},children:[(0,f.jsx)(u.Form.Item,{noStyle:!0,name:(0,l.mergeNames)(s,d,`type`),rules:[(0,l.requiredField)(t(`scheduler.meta.duration`),o)],children:(0,f.jsx)(u.Select,{style:{width:150},disabled:i,onChange:p,options:a.filter(e=>!c.includes(e)).map((e,t)=>({key:`${e}-${t}`,value:e,label:l.EDurationTypes[e]}))})}),(0,f.jsx)(u.Form.Item,{noStyle:!0,name:(0,l.mergeNames)(s,d,`period`),tooltip:(0,l.requiredField)(r).message,rules:[(0,l.requiredField)(r,o)],children:(0,f.jsx)(u.InputNumber,{min:n,onChange:m,style:{width:`100%`},disabled:i,placeholder:r})})]})})},g=e=>{let{t}=(0,l.useSchedulerContext)(),{min:n=1,prefix:r=[],disabled:i=!1,required:a=!0}=e,o=t(`scheduler.occurrences`);return(0,f.jsx)(u.Form.Item,{label:o,name:(0,l.mergeNames)(r,`range`,`endReason`,`occurrences`),rules:[(0,l.requiredField)(o,a)],children:(0,f.jsx)(u.InputNumber,{min:n,style:{width:`calc(100% - 90px)`},disabled:i,placeholder:(0,l.placeholderField)(o)})})},_=c(o(((e,t)=>{(function(){"use strict";var e={}.hasOwnProperty;function n(){for(var e=``,t=0;t<arguments.length;t++){var n=arguments[t];n&&(e=i(e,r(n)))}return e}function r(t){if(typeof t==`string`||typeof t==`number`)return t;if(typeof t!=`object`)return``;if(Array.isArray(t))return n.apply(null,t);if(t.toString!==Object.prototype.toString&&!t.toString.toString().includes(`[native code]`))return t.toString();var r=``;for(var a in t)e.call(t,a)&&t[a]&&(r=i(r,a));return r}function i(e,t){return t?e?e+` `+t:e+t:e}t!==void 0&&t.exports?(n.default=n,t.exports=n):typeof define==`function`&&typeof define.amd==`object`&&define.amd?define(`classnames`,[],function(){return n}):window.classNames=n})()}))(),1),v=`_checkboxWrapper_1kjv1_1`,y=`_ant-checkbox-wrapper-checked_1kjv1_21`,b=`_primary_1kjv1_25`,x=`_hide_1kjv1_33`,S={checkboxWrapper:v,"ant-checkbox-wrapper-checked":`_ant-checkbox-wrapper-checked_1kjv1_21`,antCheckboxWrapperChecked:y,primary:b,hide:x},C=e=>{let{loading:t,className:n,disabled:r,onChange:i,options:a=[],value:o=[],type:s=`primary`,behavior:c=`hide`}=e;return(0,f.jsx)(u.Checkbox.Group,{options:a,className:(0,_.default)(n,S.checkboxWrapper,S[s],S[c]),value:o,disabled:r||t,onChange:i})},w=`_scheduler_aqesn_1`,T=`_result_aqesn_4`,E=`_drawerContent_aqesn_10`,D=`_chipLabel_aqesn_13`,O=`_monthlyGridDay_aqesn_18`,k=`_monthlyGridWeek_aqesn_25`,A=`_monthsSeparator_aqesn_37`,j=`_monthWrapper_aqesn_45`,M=`_monthComponents_aqesn_50`,N=`_weekWrapper_aqesn_70`,P=`_ant-checkbox-wrapper-checked_aqesn_73`,F=`_weekDaysWrap_aqesn_88`,I=`_yearWrapper_aqesn_91`,L=`_monthsWrapper_aqesn_91`,R=`_tagsWrapper_aqesn_104`,z={scheduler:w,result:T,drawerContent:E,chipLabel:D,monthlyGridDay:O,monthlyGridWeek:k,monthsSeparator:A,monthWrapper:j,monthComponents:M,weekWrapper:N,"ant-checkbox-wrapper-checked":`_ant-checkbox-wrapper-checked_aqesn_73`,antCheckboxWrapperChecked:P,weekDaysWrap:F,yearWrapper:I,monthsWrapper:L,tagsWrapper:R},B=e=>{let{t,loading:n}=(0,l.useSchedulerContext)(),{formRef:r,shortFormat:i=!0,isMultiple:a=!1,extendBy:o=[],namespaces:s=[`repeat`,`weekly`],prefix:c,disabled:p,setOccurs:m}=e,h=(0,l.mergeNames)([...c,...s],`days`),g=(0,d.useRef)([]);(0,d.useEffect)(()=>{let e=r.getFieldValue(h);Array.isArray(e)&&e.length&&(g.current=e,v())},[r]);let v=(0,d.useCallback)(()=>{let e=r.getFieldValue(c);e?.duration&&(0,l.handleDurationValueChange)({type:e.duration.type,period:e.duration.period},e,m,t)},[r,c,m,t]),y=(0,d.useMemo)(()=>Object.keys(l.EDays).map(e=>t(`scheduler.weekdays.${l.EDays[e].toLowerCase()}`)),[t]),b=(0,d.useMemo)(()=>Object.keys(l.EDays).map(e=>t(`scheduler.weekdays.short.${l.EDays[e].toLowerCase()}`)),[t]),x=e=>e.map((t,n)=>e[(n+l.CFirstDayIdx)%7]),S=x(b),w=x(y),T=(i?S:w).map((e,t)=>{let n=w[t],r=(0,l.getKeyFromEnum)(l.EDays,n);return{key:`${e}-${t}`,label:i?(0,f.jsx)(u.Tooltip,{title:w[t],children:e}):e,value:r}}),E;o.length&&(T=[...T,...o],E=z.weekDaysWrap);let D=(0,d.useCallback)(e=>{if(a)g.current=e;else{let t=g.current,n=e.filter(e=>!t.includes(e)),i=n.length?n:e;r.setFieldValue(h,i),g.current=i}v()},[a,r,h,v]);return(0,f.jsx)(`div`,{className:(0,_.default)(z.weekWrapper,E),children:(0,f.jsx)(u.Form.Item,{label:t(`scheduler.days`),name:h,rules:[(0,l.requiredField)(t(`scheduler.days`))],children:(0,f.jsx)(C,{loading:n,disabled:p,options:T,onChange:D})})})},V=e=>{let{t,loading:n}=(0,l.useSchedulerContext)(),{min:r=1,max:i=31,prefix:a,disabled:o=!1,namespaces:s=[`repeat`,`monthly`],formRef:c,setOccurs:m}=e,[h,g]=(0,d.useState)(`DAY`),_=u.Form.useWatch((0,l.mergeNames)([...a,...s],`weekDay`),c),v=t(`scheduler.day`),y=(0,d.useCallback)(e=>{if(g(e),e===`DAY`){let e=c.getFieldValue(a);(0,l.handleSelectWeeklyDay)(e.duration.period,e,m,t)}},[c,a,m,g,t]);(0,d.useEffect)(()=>{let e=(0,l.mergeNames)([...a,...s],`type`);y(c.getFieldValue(e))},[c,y,a,s]);let b=(0,d.useCallback)(()=>{let e=()=>{let e=c.getFieldValue(a);(0,l.handleDurationValueChange)({type:e.duration.type,period:e.duration.period},e,m,t)};if(h!==`PERIOD`)return null;let r=[[`First`,`scheduler.day.first`],[`Second`,`scheduler.day.second`],[`Third`,`scheduler.day.third`],[`Fourth`,`scheduler.day.fourth`],[`Last`,`scheduler.day.last`]].map(([e,n])=>{let r=(0,l.getKeyFromEnum)(l.EWeekDays,e);return{value:r,label:t(n),icon:_===r?(0,f.jsx)(p.CalendarTwoTone,{}):(0,f.jsx)(p.CalendarTwoTone,{twoToneColor:`gray`})}});return(0,f.jsxs)(u.Col,{span:24,className:z.monthlyGridWeek,children:[(0,f.jsx)(u.Form.Item,{noStyle:!0,name:(0,l.mergeNames)([...a,...s],`weekDay`),rules:[(0,l.requiredField)(t(`scheduler.weekday`))],children:(0,f.jsx)(u.Segmented,{disabled:n||o,onChange:e,options:r.map(({value:e,label:t,icon:r})=>({label:t,value:e,icon:r,disabled:o||n}))})}),(0,f.jsx)(B,{formRef:c,prefix:a,isMultiple:!0,disabled:o||n,extendBy:[{key:`extend-day`,label:t(`scheduler.day`),value:`DAY`},{key:`extend-weekday`,label:t(`scheduler.weekday`),value:`WEEKDAY`},{key:`extend-weekend`,label:t(`scheduler.weekend`),value:`WEEKEND`}],setOccurs:m})]})},[_,o,c,n,h,s,a,m,t]),x=()=>h===`DAY`?(0,f.jsx)(u.Col,{span:12,className:z.monthlyGridDay,children:(0,f.jsx)(u.Form.Item,{noStyle:!0,name:(0,l.mergeNames)([...a,...s],`monthDay`),hasFeedback:!0,rules:[(0,l.requiredField)(t(`scheduler.days`))],children:(0,f.jsx)(u.InputNumber,{style:{width:120},min:r,max:i,onChange:e=>{let n=c.getFieldValue(a);e&&(0,l.handleSelectWeeklyDay)(e,n,m,t)},disabled:o||n,placeholder:v})})}):null;return(0,f.jsxs)(`div`,{className:z.monthWrapper,children:[(0,f.jsx)(u.Form.Item,{noStyle:!0,name:(0,l.mergeNames)([...a,...s],`type`),rules:[(0,l.requiredField)(t(`scheduler.meta.period`))],children:(0,f.jsx)(u.Segmented,{disabled:o||n,onChange:e=>{y(e)},options:[{value:`DAY`,icon:h===`DAY`?(0,f.jsx)(p.CalendarTwoTone,{}):(0,f.jsx)(p.CalendarTwoTone,{twoToneColor:`gray`}),label:t(`scheduler.day`)},{value:`PERIOD`,icon:h===`PERIOD`?(0,f.jsx)(p.ControlTwoTone,{}):(0,f.jsx)(p.ControlTwoTone,{twoToneColor:`gray`}),label:t(`scheduler.meta.period`)}]})}),(0,f.jsxs)(u.Row,{className:z.monthComponents,children:[x(),b()]})]})},H=e=>{let{disabled:t,prefix:n}=e,{t:r}=(0,l.useSchedulerContext)(),i=u.Form.useWatch((0,l.mergeNames)(n,`range`,`startedAt`)),a={format:l.DEFAULT_DATE_TIME_FORMAT,showTime:!0,disabledDate:e=>{if(!i)return(0,l.getDisabledDate)(e);let t=(0,m.default)(i).add(1,`day`).startOf(`day`);return e&&e.isBefore(t)},disabled:t||!i},o=r(`scheduler.duration.endDate`);return(0,f.jsx)(u.Form.Item,{label:o,name:(0,l.mergeNames)(n,`range`,`endReason`,`expiredAt`),rules:[(0,l.requiredField)(o,!0)],children:(0,f.jsx)(u.DatePicker,{...a})})},U=e=>{let{t,loading:n}=(0,l.useSchedulerContext)(),{shortFormat:r=!0,isMultiple:i=!1,setOccurs:a,formRef:o,prefix:s,namespaces:c=[`repeat`,`yearly`],disabled:p}=e,[m,h]=(0,d.useState)([]),g=(0,l.mergeNames)([...s,...c],`months`),_=(0,d.useMemo)(()=>Object.keys(l.EMonths).map(e=>t(`scheduler.months.${l.EMonths[e].toLowerCase()}`)),[t]),v=(0,d.useMemo)(()=>Object.keys(l.EMonths).map(e=>t(`scheduler.months.short.${l.EMonths[e].toLowerCase()}`)),[t]);(0,d.useEffect)(()=>{let e=o.getFieldValue(g);e&&b(e)},[o]);let y=Object.keys(l.EMonths).map((e,t)=>({key:`${e}-${t}`,label:r?(0,f.jsx)(u.Tooltip,{title:_[t],children:v[t]}):_[t],value:e})),b=e=>{let n=[...e];n.length?i||(n=e.filter(e=>!m.includes(e))):n=m,h(n),(0,l.setNestedDynamicFields)(o,g.join(`.`),n);let r=o.getFieldValue(s);(0,l.handleDurationValueChange)({type:r.duration.type,period:r.duration.period},r,a,t)};return(0,f.jsxs)(`div`,{className:z.yearWrapper,children:[(0,f.jsx)(u.Form.Item,{noStyle:!0,name:g,rules:[(0,l.requiredField)(t(`scheduler.months`))],children:(0,f.jsx)(C,{options:y,disabled:p,className:z.monthsWrapper,loading:n,onChange:b,value:m})}),(0,f.jsx)(V,{formRef:o,prefix:s,disabled:p,setOccurs:a})]})},W=e=>{let{t,loading:n}=(0,l.useSchedulerContext)(),{formRef:r,prefix:i,entity:a,onFinish:o,setDirty:s,disabled:c=!1,durationTypes:p=[],discountTypes:m=[],readOnlyFields:_=[],schedulerType:v}=e,[y,b]=(0,d.useState)(null),[x,S]=(0,d.useState)(`0`),C=u.Form.useWatch(i,r),w=(0,d.useMemo)(()=>v===l.ESchedulerPrefix.SALE?l.DEFAULT_SALE_SCHEDULER:l.DEFAULT_DISCOUNT_SCHEDULER,[v]);(0,d.useEffect)(()=>{if(a){let e={},t=e;for(let e=0;e<i.length-1;e++)t[i[e]]={},t=t[i[e]];t[i[i.length-1]]=a,r.setFieldsValue(e)}else r.resetFields()},[a,r,i]),(0,d.useEffect)(()=>{if(!C)return;let e=C.range?.startedAt;e&&(0,l.handleChangeStartDate)(e,b);let n=C.duration;n?.type&&n?.period&&(0,l.handleDurationValueChange)(n,C,S,t)},[C,t]);let T=C?.range?.endReason?.type,E=C?.duration?.type,D=(0,d.useMemo)(()=>{let e={},t=e;for(let e=0;e<i.length-1;e++)t[i[e]]={},t=t[i[e]];return t[i[i.length-1]]=w,e},[w,i]);return(0,f.jsx)(u.Space,{orientation:`vertical`,style:{width:`100%`},children:(0,f.jsxs)(u.Form,{layout:`vertical`,autoComplete:`off`,form:r,className:z.scheduler,onFinish:o,onFieldsChange:()=>s(!0),initialValues:D,children:[[l.ESchedulerPrefix.DISCOUNT,l.ESchedulerPrefix.TRIAL_DISCOUNT].includes(v)&&(0,f.jsx)(u.Row,{gutter:[24,24],children:(0,f.jsx)(u.Col,{span:12,children:(0,f.jsx)(u.Form.Item,{label:t(`scheduler.meta.duration`),children:(0,f.jsxs)(u.Space.Compact,{children:[(0,f.jsx)(u.Form.Item,{noStyle:!0,name:(0,l.mergeNames)(i,l.CNsDiscount,`type`),rules:[(0,l.requiredField)(t(`scheduler.meta.duration`),!0)],children:(0,f.jsx)(u.Select,{style:{width:150},disabled:c||n,options:m.sort().map((e,t)=>({key:t,label:l.EDiscountType[e],value:e}))})}),(0,f.jsx)(u.Form.Item,{noStyle:!0,name:(0,l.mergeNames)(i,l.CNsDiscount,`value`),rules:[(0,l.requiredField)(t(`scheduler.meta.duration`),!0)],children:(0,f.jsx)(u.InputNumber,{min:1,style:{width:`100%`},readOnly:(0,l.isReadOnlyField)((0,l.mergeNames)(null,l.CNsDiscount,`value`).join(`.`),_),disabled:c||n})})]})})})}),(0,f.jsxs)(u.Row,{gutter:[24,24],children:[(0,f.jsx)(u.Col,{span:12,children:(0,f.jsx)(h,{label:t(`scheduler.duration`),disabled:c||n,prefix:i,namespace:l.CNsDuration,required:!0,durationTypes:p})}),(0,f.jsx)(u.Col,{span:12,children:(0,f.jsx)(u.Form.Item,{label:t(`scheduler.startedAt`),name:(0,l.mergeNames)(i,`range`,`startedAt`),rules:[(0,l.requiredField)(t(`scheduler.startedAt`))],children:(0,f.jsx)(u.DatePicker,{showTime:!0,format:l.DEFAULT_DATE_TIME_FORMAT,disabledDate:e=>(0,l.getDisabledDate)(e),disabled:c||n,style:{width:`100%`}})})})]}),E===`WEEK`&&(0,f.jsx)(u.Row,{gutter:[24,24],children:(0,f.jsx)(u.Col,{span:24,children:(0,f.jsx)(B,{prefix:i,isMultiple:!0,formRef:r,setOccurs:S,disabled:c})})}),E===`MONTH`&&(0,f.jsx)(u.Row,{gutter:[24,24],children:(0,f.jsx)(u.Col,{span:24,children:(0,f.jsx)(V,{formRef:r,prefix:i,disabled:c,setOccurs:S})})}),E===`YEAR`&&(0,f.jsx)(u.Row,{gutter:[24,24],children:(0,f.jsx)(u.Col,{span:24,children:(0,f.jsx)(U,{formRef:r,prefix:i,disabled:c,setOccurs:S})})}),(0,f.jsxs)(u.Row,{gutter:[24,24],children:[(0,f.jsx)(u.Col,{span:12,children:(0,f.jsx)(u.Form.Item,{label:t(`scheduler.duration.end`),name:(0,l.mergeNames)(i,`range`,`endReason`,`type`),rules:[(0,l.requiredField)(t(`scheduler.duration.end`))],children:(0,f.jsx)(u.Select,{disabled:c,options:[t(`scheduler.duration.end.day`),t(`scheduler.duration.end.after`),t(`scheduler.duration.end.no`)].map((e,t)=>({key:t,label:e,value:l.CEndReasonTypes[t]}))})})}),(0,f.jsxs)(u.Col,{span:12,children:[T===l.CEndReasonTypes[0]&&(0,f.jsx)(H,{prefix:i,disabled:c}),T===l.CEndReasonTypes[1]&&(0,f.jsx)(g,{prefix:i,disabled:c})]})]}),(0,f.jsx)(`span`,{className:z.result,dangerouslySetInnerHTML:{__html:t(`scheduler.result`,{occurs:x,startAt:y??``})}})]})})},G=e=>{let{t,permissions:n}=(0,l.useSchedulerContext)(),{formRef:r,loading:i,className:a,isEdit:o,disabled:s,size:c=`small`,color:d=`primary`,icon:m=(0,f.jsx)(p.SaveOutlined,{}),htmlType:h=`submit`,variant:g=`solid`,onClick:_,danger:v=!1}=e;return(o?n.canUpdate:n.canCreate)?(0,f.jsx)(u.Button,{size:c,variant:g,htmlType:h,className:a,disabled:s,loading:i,icon:m,danger:v,onClick:e=>{e.preventDefault(),r&&h===`submit`&&r.submit(),_?.()},color:d,children:t(o?`actions.update`:`actions.save`)}):null},K=({schedulerType:e,disabled:t,onSuccess:n,setDirty:r,dirty:i,isCreating:a,setIsCreating:o,buttonProps:s})=>{let{t:c,loading:m,limit:h=l.DEFAULT_SCHEDULERS_LIMIT,permissions:g,onCreate:_}=(0,l.useSchedulerContext)(),[v]=u.Form.useForm(),[y,b]=(0,d.useState)(!1),x=(0,d.useMemo)(()=>[l.CScheduler,e],[e]),S=(0,d.useMemo)(()=>Object.keys(l.EDurationTypes),[]),C=(0,d.useMemo)(()=>Object.keys(l.EDiscountType),[]);if(!g.canCreate)return null;let w=async()=>{try{o(!0),await v.validateFields();let t=v.getFieldValue(x),i={id:`new-${Date.now()}`,...t,type:e,[l.CNsDiscount]:e===l.ESchedulerPrefix.SALE?null:t?.[l.CNsDiscount]};_&&await _(e,i),n?.(i),b(!1),r(!1),v.resetFields()}catch{}finally{o(!1)}};return(0,f.jsxs)(f.Fragment,{children:[(0,f.jsx)(u.Button,{style:{padding:0},color:`default`,variant:`link`,...s,loading:m||a,disabled:t,onClick:e=>{e.preventDefault(),e.stopPropagation(),r(!1),b(!0)},children:(0,f.jsx)(u.Tooltip,{title:t?c(`scheduler.limited`,{limit:h}):void 0,children:c(`scheduler`)})}),(0,f.jsx)(u.Drawer,{title:(0,f.jsxs)(`div`,{style:{display:`flex`,alignItems:`center`,gap:8},children:[(0,f.jsx)(p.ScheduleTwoTone,{}),c(`scheduler`)]}),size:600,open:y,onClose:()=>{r(!1),b(!1)},extra:(0,f.jsx)(G,{size:`small`,loading:m||a,disabled:t||!i,onClick:w}),children:(0,f.jsx)(W,{setDirty:r,formRef:v,prefix:x,schedulerType:e,durationTypes:S,discountTypes:C,disabled:t})})]})},q=e=>{let{t}=(0,l.useSchedulerContext)(),{selectedColumns:n=[],columnsList:r=[],onChange:i}=e;if(!r?.length)return(0,f.jsx)(f.Fragment,{});let a=t(`table.hideColumns`),o={mode:`multiple`,style:{minWidth:250},options:[{label:(0,f.jsx)(`span`,{children:a}),title:a,options:r}],placeholder:a,maxTagCount:`responsive`},s=e=>{e.length<1||i?.(e)};return(0,f.jsx)(u.Select,{...o,value:n,onChange:s})},J=e=>{let{loading:t,t:n}=(0,l.useSchedulerContext)(),{children:r,items:i=[],size:a=`middle`,onRefresh:o}=e,s=o?[{key:`refresh`,label:n(`toolbar.refresh`),icon:(0,f.jsx)(p.ReloadOutlined,{}),onClick:o}]:[];return i?.length&&(s=i.concat([{type:`divider`},...s])),(0,f.jsxs)(`div`,{style:{display:`flex`,alignItems:`center`,justifyContent:`flex-end`,gap:8},children:[r||null,(0,f.jsx)(u.Dropdown,{menu:{items:s},trigger:[`click`],children:(0,f.jsx)(u.Button,{loading:t,size:a,color:`default`,variant:`filled`,icon:(0,f.jsx)(p.MoreOutlined,{}),type:`primary`})})]})},Y=e=>{let{t,loading:n,permissions:r}=(0,l.useSchedulerContext)(),{entity:i,icon:a,type:o=`primary`,showLabel:s=!1,disabled:c,onDelete:d}=e;return!i||!r.canDelete?null:(0,f.jsx)(u.Popconfirm,{title:t(`actions.confirm.delete`),onConfirm:()=>d?.(i),okText:t(`actions.delete`),cancelText:t(`actions.cancel`),children:(0,f.jsx)(u.Tooltip,{title:t(`actions.delete`),children:(0,f.jsx)(u.Button,{disabled:c||!r.canDelete,loading:n,danger:!0,type:o,icon:a||(0,f.jsx)(p.DeleteTwoTone,{twoToneColor:`#eb2f96`}),children:s&&t(`actions.delete`)})})})},X=e=>{let{t,loading:n,permissions:r}=(0,l.useSchedulerContext)(),{entity:i,type:a=`primary`,showLabel:o=!1,onEdit:s}=e;return!i||!r.canUpdate?null:(0,f.jsx)(u.Button,{disabled:!r.canUpdate,loading:n,type:a,icon:(0,f.jsx)(p.EditTwoTone,{twoToneColor:l.COLORS.success}),onClick:()=>s?.(i),children:o&&t(`actions.edit`)})},ee=e=>(0,f.jsx)(`div`,{className:z.tagsWrapper,children:e?.days.map((e,t)=>(0,f.jsx)(u.Tag,{color:l.COLORS.tags.volcano,children:e},t))}),Z=(e,t)=>e?.type===`PERIOD`?(0,f.jsx)(`div`,{className:z.tagsWrapper,children:t?.days.map((t,n)=>(0,f.jsx)(u.Tag,{color:l.COLORS.tags.cyan,children:`${e.weekDay} ${t}`},n))}):(0,f.jsx)(`div`,{className:z.tagsWrapper,children:(0,f.jsx)(u.Tag,{color:l.COLORS.tags.gold,children:e?.monthDay},`monthDay`)}),te=(e,t,n)=>(0,f.jsxs)(f.Fragment,{children:[Z(t,n),(0,f.jsx)(`div`,{className:z.tagsWrapper,children:e?.months?.map((e,t)=>(0,f.jsx)(u.Tag,{color:l.COLORS.tags.magenta,children:e},t))})]}),ne=({status:e})=>{switch(e){case l.EStatus.ACTIVE:return(0,f.jsx)(u.Tag,{color:`success`,icon:(0,f.jsx)(p.CheckCircleOutlined,{}),children:e});case l.EStatus.PROCESSING:return(0,f.jsx)(u.Tag,{color:`processing`,icon:(0,f.jsx)(p.SyncOutlined,{spin:!0}),children:e});case l.EStatus.DEACTIVATED:return(0,f.jsx)(u.Tag,{color:`default`,icon:(0,f.jsx)(p.MinusCircleOutlined,{}),children:e});default:return(0,f.jsx)(u.Tag,{color:`default`,children:e})}},Q=e=>e.map((e,t)=>({...e,idx:t+1,key:e.id})),$={key:`idx`,title:(0,f.jsx)(p.FieldNumberOutlined,{}),dataIndex:`idx`,rowScope:`row`,width:70,fixed:`left`,align:`center`},re=(e=100,t=`Actions`)=>({title:t,key:`operation`,fixed:`right`,align:`center`,width:e}),ie=(e,t=[])=>{let{disabled:n,schedulerType:r,currency:i,t:a,onEdit:o,onDelete:s}=e,c=o||s?{title:a(`table.actions`),key:`operation`,fixed:`right`,align:`center`,width:100,render:(e,t)=>(0,f.jsxs)(`div`,{children:[o&&(0,f.jsx)(X,{onEdit:o,disabled:n,type:`text`,entity:t}),s&&(0,f.jsx)(Y,{onDelete:s,icon:(0,f.jsx)(p.DeleteTwoTone,{twoToneColor:`#eb2f96`}),type:`text`,entity:t,disabled:n})]})}:null,u=[l.ESchedulerPrefix.DISCOUNT,l.ESchedulerPrefix.TRIAL_DISCOUNT].includes(r)?{title:a(`scheduler.meta.duration`),dataIndex:`discount`,key:`discount`,width:150,render(e){return e?e.type===`PERCENT`?`${e.value}${l.CDiscountTypeValues[e.type]}`:(0,l.numberToCurrency)(e.value,i??`USD`):`—`}}:null,d=[$,{title:a(`scheduler.meta.duration`),dataIndex:`duration`,key:`duration`,width:150,render(e){return`${e?.period} (${e?.type})`}},{title:a(`scheduler.duration`),key:`repeat`,render(e,t){let{duration:n,repeat:r}=t,{weekly:i,monthly:a,yearly:o}=r;switch(n?.type){case`WEEK`:return ee(i);case`MONTH`:return Z(a,i);case`YEAR`:return te(o,a,i);default:return(0,f.jsx)(f.Fragment,{})}}},u,{title:a(`scheduler.status`),dataIndex:`status`,key:`status`,width:150,align:`center`,concealable:!0,render:e=>(0,f.jsx)(ne,{status:e})},{title:a(`scheduler.updatedAt`),width:200,dataIndex:`metadata`,align:`center`,key:`metadata.updatedAt`,concealable:!0,render:e=>(0,f.jsx)(`div`,{children:e?.updatedAt?(0,l.tsToLocaleDateTime)(e.updatedAt):`—`})},c].filter(Boolean);return t.length?d.filter(e=>t.includes(e?.dataIndex)||e.dataIndex===`idx`):d},ae=e=>{let{type:t,title:n,disabled:r,readOnlyFields:i=[],currency:a,onRefresh:o}=e,{schedulers:s,loading:c,limit:m=l.DEFAULT_SCHEDULERS_LIMIT,disabled:h,t:g,permissions:_,onUpdate:v,onDelete:y}=(0,l.useSchedulerContext)(),b=r??h,x=s[t]??[],[S,C]=(0,d.useState)(new Set),[w,T]=(0,d.useState)(!1),[E,D]=(0,d.useState)(!1),O=(0,d.useMemo)(()=>S.size===0?x:x.filter(e=>!e.id||!S.has(e.id)),[x,S]),k=O.length>=m,[A]=u.Form.useForm(),[j,M]=(0,d.useState)(!1),[N,P]=(0,d.useState)(null),F=(0,d.useMemo)(()=>[l.CScheduler,t],[t]),I=(0,d.useMemo)(()=>Object.keys(l.EDurationTypes),[]),L=(0,d.useMemo)(()=>Object.keys(l.EDiscountType),[]),R=e=>{P(e),M(!0)},B=async()=>{try{await A.validateFields();let e=A.getFieldValue(F),n={...N,...e,type:t,[l.CNsDiscount]:t===l.ESchedulerPrefix.SALE?null:e?.[l.CNsDiscount]};v&&await v(t,n),M(!1),P(null),T(!1),A.resetFields(),o?.()}catch{}},{filteredColumns:V,columnsList:H,selectedColumns:U,setSelectedColumns:Y}=(0,l.useColumnsToggle)(ie({disabled:b,schedulerType:t,entities:O,currency:a,t:g,onEdit:_.canUpdate?R:void 0,onDelete:_.canDelete?async e=>{if(e.id?.startsWith(`new-`)){C(t=>{let n=new Set(t);return e.id&&n.add(e.id),n});return}y&&e.id?(await y(t,e.id),o?.()):console.warn(`No onDelete handler provided`)}:void 0}));return(0,f.jsxs)(f.Fragment,{children:[(0,f.jsx)(u.Table,{columns:V,loading:c,scroll:{x:1e3},bordered:!0,className:z.gridList,dataSource:Q(O),rowKey:e=>e.id??`row-${Math.random()}`,title:()=>(0,f.jsx)(`div`,{className:z.gridHeader,children:(0,f.jsx)(J,{onRefresh:o,items:_.canCreate&&!k?[{label:(0,f.jsx)(K,{setDirty:T,dirty:w,isCreating:E||c,setIsCreating:D,schedulerType:t,disabled:b||k,onSuccess:()=>o?.()}),icon:(0,f.jsx)(p.PlusOutlined,{})}]:[],children:(0,f.jsx)(q,{columnsList:H,selectedColumns:U,onChange:Y})})}),footer:()=>(0,f.jsx)(`div`,{className:z.gridFooter,children:`Total ${O.length} items`})}),(0,f.jsx)(u.Drawer,{title:(0,f.jsxs)(`div`,{style:{display:`flex`,alignItems:`center`,gap:8},children:[(0,f.jsx)(p.ScheduleTwoTone,{}),n??g(`scheduler`)]}),size:600,open:j,onClose:()=>{T(!1),M(!1),P(null)},extra:(0,f.jsx)(G,{size:`small`,isEdit:!!N,loading:c||E,disabled:b||!w||k,onClick:B}),children:j&&(0,f.jsx)(W,{setDirty:T,formRef:A,prefix:F,entity:N,schedulerType:t,durationTypes:I,discountTypes:L,disabled:b,readOnlyFields:i})})]})};exports.Scheduler=W,exports.SchedulerDrawerButton=K,exports.SchedulersList=ae,exports.actionField=re,exports.indexColumn=$,exports.indexable=Q,Object.keys(l).forEach(function(e){e!==`default`&&!Object.prototype.hasOwnProperty.call(exports,e)&&Object.defineProperty(exports,e,{enumerable:!0,get:function(){return l[e]}})});
|
|
1
|
+
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});var e=Object.create,t=Object.defineProperty,n=Object.getOwnPropertyDescriptor,r=Object.getOwnPropertyNames,i=Object.getPrototypeOf,a=Object.prototype.hasOwnProperty,o=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),s=(e,i,o,s)=>{if(i&&typeof i==`object`||typeof i==`function`)for(var c=r(i),l=0,u=c.length,d;l<u;l++)d=c[l],!a.call(e,d)&&d!==o&&t(e,d,{get:(e=>i[e]).bind(null,d),enumerable:!(s=n(i,d))||s.enumerable});return e},c=(n,r,a)=>(a=n==null?{}:e(i(n)),s(r||!n||!n.__esModule?t(a,`default`,{value:n,enumerable:!0}):a,n));let l=require(`@teamco/ischeduler-core`),u=require(`antd`),d=require(`react`);d=c(d);let f=require(`react/jsx-runtime`),p=require(`@ant-design/icons`),m=require(`dayjs`);m=c(m);var h=e=>{let{t}=(0,l.useSchedulerContext)(),{min:n=1,label:r,disabled:i,durationTypes:a=[],required:o,prefix:s=[],exclude:c=[],namespace:d=l.CNsDuration,onTypeChange:p,onValueChange:m}=e;return(0,f.jsx)(u.Form.Item,{label:r,children:(0,f.jsxs)(u.Space.Compact,{style:{width:`100%`},children:[(0,f.jsx)(u.Form.Item,{noStyle:!0,name:(0,l.mergeNames)(s,d,`type`),rules:[(0,l.requiredField)(t(`scheduler.meta.duration`),o)],children:(0,f.jsx)(u.Select,{style:{width:150},disabled:i,onChange:p,options:a.filter(e=>!c.includes(e)).map((e,t)=>({key:`${e}-${t}`,value:e,label:l.EDurationTypes[e]}))})}),(0,f.jsx)(u.Form.Item,{noStyle:!0,name:(0,l.mergeNames)(s,d,`period`),tooltip:(0,l.requiredField)(r).message,rules:[(0,l.requiredField)(r,o)],children:(0,f.jsx)(u.InputNumber,{min:n,onChange:m,style:{width:`100%`},disabled:i,placeholder:r})})]})})},g=e=>{let{t}=(0,l.useSchedulerContext)(),{min:n=1,prefix:r=[],disabled:i=!1,required:a=!0}=e,o=t(`scheduler.occurrences`);return(0,f.jsx)(u.Form.Item,{label:o,name:(0,l.mergeNames)(r,`range`,`endReason`,`occurrences`),rules:[(0,l.requiredField)(o,a)],children:(0,f.jsx)(u.InputNumber,{min:n,style:{width:`calc(100% - 90px)`},disabled:i,placeholder:(0,l.placeholderField)(o)})})},_=c(o(((e,t)=>{(function(){"use strict";var e={}.hasOwnProperty;function n(){for(var e=``,t=0;t<arguments.length;t++){var n=arguments[t];n&&(e=i(e,r(n)))}return e}function r(t){if(typeof t==`string`||typeof t==`number`)return t;if(typeof t!=`object`)return``;if(Array.isArray(t))return n.apply(null,t);if(t.toString!==Object.prototype.toString&&!t.toString.toString().includes(`[native code]`))return t.toString();var r=``;for(var a in t)e.call(t,a)&&t[a]&&(r=i(r,a));return r}function i(e,t){return t?e?e+` `+t:e+t:e}t!==void 0&&t.exports?(n.default=n,t.exports=n):typeof define==`function`&&typeof define.amd==`object`&&define.amd?define(`classnames`,[],function(){return n}):window.classNames=n})()}))(),1),v=`_checkboxWrapper_1kjv1_1`,y=`_ant-checkbox-wrapper-checked_1kjv1_21`,b=`_primary_1kjv1_25`,x=`_hide_1kjv1_33`,S={checkboxWrapper:v,"ant-checkbox-wrapper-checked":`_ant-checkbox-wrapper-checked_1kjv1_21`,antCheckboxWrapperChecked:y,primary:b,hide:x},C=e=>{let{loading:t,className:n,disabled:r,onChange:i,options:a=[],value:o=[],type:s=`primary`,behavior:c=`hide`}=e;return(0,f.jsx)(u.Checkbox.Group,{options:a,className:(0,_.default)(n,S.checkboxWrapper,S[s],S[c]),value:o,disabled:r||t,onChange:i})},w=`_scheduler_aqesn_1`,T=`_result_aqesn_4`,E=`_drawerContent_aqesn_10`,D=`_chipLabel_aqesn_13`,O=`_monthlyGridDay_aqesn_18`,k=`_monthlyGridWeek_aqesn_25`,A=`_monthsSeparator_aqesn_37`,j=`_monthWrapper_aqesn_45`,M=`_monthComponents_aqesn_50`,N=`_weekWrapper_aqesn_70`,P=`_ant-checkbox-wrapper-checked_aqesn_73`,F=`_weekDaysWrap_aqesn_88`,I=`_yearWrapper_aqesn_91`,L=`_monthsWrapper_aqesn_91`,R=`_tagsWrapper_aqesn_104`,z={scheduler:w,result:T,drawerContent:E,chipLabel:D,monthlyGridDay:O,monthlyGridWeek:k,monthsSeparator:A,monthWrapper:j,monthComponents:M,weekWrapper:N,"ant-checkbox-wrapper-checked":`_ant-checkbox-wrapper-checked_aqesn_73`,antCheckboxWrapperChecked:P,weekDaysWrap:F,yearWrapper:I,monthsWrapper:L,tagsWrapper:R},B=e=>{let{t,loading:n}=(0,l.useSchedulerContext)(),{formRef:r,shortFormat:i=!0,isMultiple:a=!1,extendBy:o=[],namespaces:s=[`repeat`,`weekly`],prefix:c,disabled:p,setOccurs:m}=e,h=(0,l.mergeNames)([...c,...s],`days`),g=(0,d.useRef)([]);(0,d.useEffect)(()=>{let e=r.getFieldValue(h);Array.isArray(e)&&e.length&&(g.current=e,v())},[r]);let v=(0,d.useCallback)(()=>{let e=r.getFieldValue(c);e?.duration&&(0,l.handleDurationValueChange)({type:e.duration.type,period:e.duration.period},e,m,t)},[r,c,m,t]),y=(0,d.useMemo)(()=>Object.keys(l.EDays).map(e=>t(`scheduler.weekdays.${l.EDays[e].toLowerCase()}`)),[t]),b=(0,d.useMemo)(()=>Object.keys(l.EDays).map(e=>t(`scheduler.weekdays.short.${l.EDays[e].toLowerCase()}`)),[t]),x=e=>e.map((t,n)=>e[(n+l.CFirstDayIdx)%7]),S=x(b),w=x(y),T=(i?S:w).map((e,t)=>{let n=w[t],r=(0,l.getKeyFromEnum)(l.EDays,n);return{key:`${e}-${t}`,label:i?(0,f.jsx)(u.Tooltip,{title:w[t],children:e}):e,value:r}}),E;o.length&&(T=[...T,...o],E=z.weekDaysWrap);let D=(0,d.useCallback)(e=>{if(a)g.current=e;else{let t=g.current,n=e.filter(e=>!t.includes(e)),i=n.length?n:e;r.setFieldValue(h,i),g.current=i}v()},[a,r,h,v]);return(0,f.jsx)(`div`,{className:(0,_.default)(z.weekWrapper,E),children:(0,f.jsx)(u.Form.Item,{label:t(`scheduler.days`),name:h,rules:[(0,l.requiredField)(t(`scheduler.days`))],children:(0,f.jsx)(C,{loading:n,disabled:p,options:T,onChange:D})})})},V=e=>{let{t,loading:n}=(0,l.useSchedulerContext)(),{min:r=1,max:i=31,prefix:a,disabled:o=!1,namespaces:s=[`repeat`,`monthly`],formRef:c,setOccurs:m}=e,[h,g]=(0,d.useState)(`DAY`),_=u.Form.useWatch((0,l.mergeNames)([...a,...s],`weekDay`),c),v=t(`scheduler.day`),y=(0,d.useCallback)(e=>{if(g(e),e===`DAY`){let e=c.getFieldValue(a);(0,l.handleSelectWeeklyDay)(e.duration.period,e,m,t)}},[c,a,m,g,t]);(0,d.useEffect)(()=>{let e=(0,l.mergeNames)([...a,...s],`type`);y(c.getFieldValue(e))},[c,y,a,s]);let b=(0,d.useCallback)(()=>{let e=()=>{let e=c.getFieldValue(a);(0,l.handleDurationValueChange)({type:e.duration.type,period:e.duration.period},e,m,t)};if(h!==`PERIOD`)return null;let r=[[`First`,`scheduler.day.first`],[`Second`,`scheduler.day.second`],[`Third`,`scheduler.day.third`],[`Fourth`,`scheduler.day.fourth`],[`Last`,`scheduler.day.last`]].map(([e,n])=>{let r=(0,l.getKeyFromEnum)(l.EWeekDays,e);return{value:r,label:t(n),icon:_===r?(0,f.jsx)(p.CalendarTwoTone,{}):(0,f.jsx)(p.CalendarTwoTone,{twoToneColor:`gray`})}});return(0,f.jsxs)(u.Col,{span:24,className:z.monthlyGridWeek,children:[(0,f.jsx)(u.Form.Item,{noStyle:!0,name:(0,l.mergeNames)([...a,...s],`weekDay`),rules:[(0,l.requiredField)(t(`scheduler.weekday`))],children:(0,f.jsx)(u.Segmented,{disabled:n||o,onChange:e,options:r.map(({value:e,label:t,icon:r})=>({label:t,value:e,icon:r,disabled:o||n}))})}),(0,f.jsx)(B,{formRef:c,prefix:a,isMultiple:!0,disabled:o||n,extendBy:[{key:`extend-day`,label:t(`scheduler.day`),value:`DAY`},{key:`extend-weekday`,label:t(`scheduler.weekday`),value:`WEEKDAY`},{key:`extend-weekend`,label:t(`scheduler.weekend`),value:`WEEKEND`}],setOccurs:m})]})},[_,o,c,n,h,s,a,m,t]),x=()=>h===`DAY`?(0,f.jsx)(u.Col,{span:12,className:z.monthlyGridDay,children:(0,f.jsx)(u.Form.Item,{noStyle:!0,name:(0,l.mergeNames)([...a,...s],`monthDay`),hasFeedback:!0,rules:[(0,l.requiredField)(t(`scheduler.days`))],children:(0,f.jsx)(u.InputNumber,{style:{width:120},min:r,max:i,onChange:e=>{let n=c.getFieldValue(a);e&&(0,l.handleSelectWeeklyDay)(e,n,m,t)},disabled:o||n,placeholder:v})})}):null;return(0,f.jsxs)(`div`,{className:z.monthWrapper,children:[(0,f.jsx)(u.Form.Item,{noStyle:!0,name:(0,l.mergeNames)([...a,...s],`type`),rules:[(0,l.requiredField)(t(`scheduler.meta.period`))],children:(0,f.jsx)(u.Segmented,{disabled:o||n,onChange:e=>{y(e)},options:[{value:`DAY`,icon:h===`DAY`?(0,f.jsx)(p.CalendarTwoTone,{}):(0,f.jsx)(p.CalendarTwoTone,{twoToneColor:`gray`}),label:t(`scheduler.day`)},{value:`PERIOD`,icon:h===`PERIOD`?(0,f.jsx)(p.ControlTwoTone,{}):(0,f.jsx)(p.ControlTwoTone,{twoToneColor:`gray`}),label:t(`scheduler.meta.period`)}]})}),(0,f.jsxs)(u.Row,{className:z.monthComponents,children:[x(),b()]})]})},H=e=>{let{disabled:t,prefix:n}=e,{t:r}=(0,l.useSchedulerContext)(),i=u.Form.useWatch((0,l.mergeNames)(n,`range`,`startedAt`)),a={format:l.DEFAULT_DATE_TIME_FORMAT,showTime:!0,disabledDate:e=>{if(!i)return(0,l.getDisabledDate)(e);let t=(0,m.default)(i).add(1,`day`).startOf(`day`);return e&&e.isBefore(t)},disabled:t||!i},o=r(`scheduler.duration.endDate`);return(0,f.jsx)(u.Form.Item,{label:o,name:(0,l.mergeNames)(n,`range`,`endReason`,`expiredAt`),rules:[(0,l.requiredField)(o,!0)],children:(0,f.jsx)(u.DatePicker,{...a})})},U=e=>{let{t,loading:n}=(0,l.useSchedulerContext)(),{shortFormat:r=!0,isMultiple:i=!1,setOccurs:a,formRef:o,prefix:s,namespaces:c=[`repeat`,`yearly`],disabled:p}=e,[m,h]=(0,d.useState)([]),g=(0,l.mergeNames)([...s,...c],`months`),_=(0,d.useMemo)(()=>Object.keys(l.EMonths).map(e=>t(`scheduler.months.${l.EMonths[e].toLowerCase()}`)),[t]),v=(0,d.useMemo)(()=>Object.keys(l.EMonths).map(e=>t(`scheduler.months.short.${l.EMonths[e].toLowerCase()}`)),[t]);(0,d.useEffect)(()=>{let e=o.getFieldValue(g);e&&b(e)},[o]);let y=Object.keys(l.EMonths).map((e,t)=>({key:`${e}-${t}`,label:r?(0,f.jsx)(u.Tooltip,{title:_[t],children:v[t]}):_[t],value:e})),b=e=>{let n=[...e];n.length?i||(n=e.filter(e=>!m.includes(e))):n=m,h(n),(0,l.setNestedDynamicFields)(o,g.join(`.`),n);let r=o.getFieldValue(s);(0,l.handleDurationValueChange)({type:r.duration.type,period:r.duration.period},r,a,t)};return(0,f.jsxs)(`div`,{className:z.yearWrapper,children:[(0,f.jsx)(u.Form.Item,{noStyle:!0,name:g,rules:[(0,l.requiredField)(t(`scheduler.months`))],children:(0,f.jsx)(C,{options:y,disabled:p,className:z.monthsWrapper,loading:n,onChange:b,value:m})}),(0,f.jsx)(V,{formRef:o,prefix:s,disabled:p,setOccurs:a})]})},W=e=>{let{t,loading:n}=(0,l.useSchedulerContext)(),{formRef:r,prefix:i,entity:a,onFinish:o,setDirty:s,disabled:c=!1,durationTypes:p=[],discountTypes:m=[],readOnlyFields:_=[],schedulerType:v}=e,[y,b]=(0,d.useState)(null),[x,S]=(0,d.useState)(`0`),C=u.Form.useWatch(i,r),w=(0,d.useMemo)(()=>v===l.ESchedulerPrefix.SALE?l.DEFAULT_SALE_SCHEDULER:l.DEFAULT_DISCOUNT_SCHEDULER,[v]);(0,d.useEffect)(()=>{if(a){let e={},t=e;for(let e=0;e<i.length-1;e++)t[i[e]]={},t=t[i[e]];t[i[i.length-1]]=a,r.setFieldsValue(e)}else r.resetFields()},[a,r,i]),(0,d.useEffect)(()=>{if(!C)return;let e=C.range?.startedAt;e&&(0,l.handleChangeStartDate)(e,b);let n=C.duration;n?.type&&n?.period&&(0,l.handleDurationValueChange)(n,C,S,t)},[C,t]);let T=C?.range?.endReason?.type,E=C?.duration?.type,D=(0,d.useMemo)(()=>{let e={},t=e;for(let e=0;e<i.length-1;e++)t[i[e]]={},t=t[i[e]];return t[i[i.length-1]]=w,e},[w,i]);return(0,f.jsx)(u.Space,{orientation:`vertical`,style:{width:`100%`},children:(0,f.jsxs)(u.Form,{layout:`vertical`,autoComplete:`off`,form:r,className:z.scheduler,onFinish:o,onValuesChange:()=>s(!0),initialValues:D,children:[[l.ESchedulerPrefix.DISCOUNT,l.ESchedulerPrefix.TRIAL_DISCOUNT].includes(v)&&(0,f.jsx)(u.Row,{gutter:[24,24],children:(0,f.jsx)(u.Col,{span:12,children:(0,f.jsx)(u.Form.Item,{label:t(`scheduler.meta.discount`),children:(0,f.jsxs)(u.Space.Compact,{children:[(0,f.jsx)(u.Form.Item,{noStyle:!0,name:(0,l.mergeNames)(i,l.CNsDiscount,`type`),rules:[(0,l.requiredField)(t(`scheduler.meta.discount`),!0)],children:(0,f.jsx)(u.Select,{style:{width:150},disabled:c||n,options:m.sort().map((e,t)=>({key:t,label:l.EDiscountType[e],value:e}))})}),(0,f.jsx)(u.Form.Item,{noStyle:!0,name:(0,l.mergeNames)(i,l.CNsDiscount,`value`),rules:[(0,l.requiredField)(t(`scheduler.meta.discount`),!0)],children:(0,f.jsx)(u.InputNumber,{min:1,style:{width:`100%`},readOnly:(0,l.isReadOnlyField)((0,l.mergeNames)(null,l.CNsDiscount,`value`).join(`.`),_),disabled:c||n})})]})})})}),(0,f.jsxs)(u.Row,{gutter:[24,24],children:[(0,f.jsx)(u.Col,{span:12,children:(0,f.jsx)(h,{label:t(`scheduler.duration`),disabled:c||n,prefix:i,namespace:l.CNsDuration,required:!0,durationTypes:p})}),(0,f.jsx)(u.Col,{span:12,children:(0,f.jsx)(u.Form.Item,{label:t(`scheduler.startedAt`),name:(0,l.mergeNames)(i,`range`,`startedAt`),rules:[(0,l.requiredField)(t(`scheduler.startedAt`))],children:(0,f.jsx)(u.DatePicker,{showTime:!0,format:l.DEFAULT_DATE_TIME_FORMAT,disabledDate:e=>(0,l.getDisabledDate)(e),disabled:c||n,style:{width:`100%`}})})})]}),E===`WEEK`&&(0,f.jsx)(u.Row,{gutter:[24,24],children:(0,f.jsx)(u.Col,{span:24,children:(0,f.jsx)(B,{prefix:i,isMultiple:!0,formRef:r,setOccurs:S,disabled:c})})}),E===`MONTH`&&(0,f.jsx)(u.Row,{gutter:[24,24],children:(0,f.jsx)(u.Col,{span:24,children:(0,f.jsx)(V,{formRef:r,prefix:i,disabled:c,setOccurs:S})})}),E===`YEAR`&&(0,f.jsx)(u.Row,{gutter:[24,24],children:(0,f.jsx)(u.Col,{span:24,children:(0,f.jsx)(U,{formRef:r,prefix:i,disabled:c,setOccurs:S})})}),(0,f.jsxs)(u.Row,{gutter:[24,24],children:[(0,f.jsx)(u.Col,{span:12,children:(0,f.jsx)(u.Form.Item,{label:t(`scheduler.duration.end`),name:(0,l.mergeNames)(i,`range`,`endReason`,`type`),rules:[(0,l.requiredField)(t(`scheduler.duration.end`))],children:(0,f.jsx)(u.Select,{disabled:c,options:[t(`scheduler.duration.end.day`),t(`scheduler.duration.end.after`),t(`scheduler.duration.end.no`)].map((e,t)=>({key:t,label:e,value:l.CEndReasonTypes[t]}))})})}),(0,f.jsxs)(u.Col,{span:12,children:[T===l.CEndReasonTypes[0]&&(0,f.jsx)(H,{prefix:i,disabled:c}),T===l.CEndReasonTypes[1]&&(0,f.jsx)(g,{prefix:i,disabled:c})]})]}),(0,f.jsx)(`span`,{className:z.result,dangerouslySetInnerHTML:{__html:t(`scheduler.result`,{occurs:x,startAt:y??``})}})]})})},G=e=>{let{t,permissions:n}=(0,l.useSchedulerContext)(),{formRef:r,loading:i,className:a,isEdit:o,disabled:s,size:c=`small`,color:d=`primary`,icon:m=(0,f.jsx)(p.SaveOutlined,{}),htmlType:h=`submit`,variant:g=`solid`,onClick:_,danger:v=!1}=e;return(o?n.canUpdate:n.canCreate)?(0,f.jsx)(u.Button,{size:c,variant:g,htmlType:h,className:a,disabled:s,loading:i,icon:m,danger:v,onClick:e=>{e.preventDefault(),r&&h===`submit`&&r.submit(),_?.()},color:d,children:t(o?`actions.update`:`actions.save`)}):null},K=({schedulerType:e,disabled:t,onSuccess:n,setDirty:r,dirty:i,isCreating:a,setIsCreating:o,buttonProps:s})=>{let{t:c,loading:m,limit:h=l.DEFAULT_SCHEDULERS_LIMIT,permissions:g,onCreate:_}=(0,l.useSchedulerContext)(),[v]=u.Form.useForm(),[y,b]=(0,d.useState)(!1),x=(0,d.useMemo)(()=>[l.CScheduler,e],[e]),S=(0,d.useMemo)(()=>Object.keys(l.EDurationTypes),[]),C=(0,d.useMemo)(()=>Object.keys(l.EDiscountType),[]);if(!g.canCreate)return null;let w=async()=>{try{o(!0),await v.validateFields();let t=v.getFieldValue(x),i={id:`new-${Date.now()}`,...t,type:e,[l.CNsDiscount]:e===l.ESchedulerPrefix.SALE?null:t?.[l.CNsDiscount]};_&&await _(e,i),n?.(i),b(!1),r(!1),v.resetFields()}catch{}finally{o(!1)}};return(0,f.jsxs)(f.Fragment,{children:[(0,f.jsx)(u.Button,{style:{padding:0},color:`default`,variant:`link`,...s,loading:m||a,disabled:t,onClick:e=>{e.preventDefault(),e.stopPropagation(),r(!1),b(!0)},children:(0,f.jsx)(u.Tooltip,{title:t?c(`scheduler.limited`,{limit:h}):void 0,children:c(`scheduler`)})}),(0,f.jsx)(u.Drawer,{title:(0,f.jsxs)(`div`,{style:{display:`flex`,alignItems:`center`,gap:8},children:[(0,f.jsx)(p.ScheduleTwoTone,{}),c(`scheduler`)]}),size:600,open:y,onClose:()=>{r(!1),b(!1)},extra:(0,f.jsx)(G,{size:`small`,loading:m||a,disabled:t||!i,onClick:w}),children:(0,f.jsx)(W,{setDirty:r,formRef:v,prefix:x,schedulerType:e,durationTypes:S,discountTypes:C,disabled:t})})]})},q=e=>{let{t}=(0,l.useSchedulerContext)(),{selectedColumns:n=[],columnsList:r=[],onChange:i}=e;if(!r?.length)return(0,f.jsx)(f.Fragment,{});let a=t(`table.hideColumns`),o={mode:`multiple`,style:{minWidth:250},options:[{label:(0,f.jsx)(`span`,{children:a}),title:a,options:r}],placeholder:a,maxTagCount:`responsive`},s=e=>{e.length<1||i?.(e)};return(0,f.jsx)(u.Select,{...o,value:n,onChange:s})},J=e=>{let{loading:t,t:n}=(0,l.useSchedulerContext)(),{children:r,items:i=[],size:a=`middle`,onRefresh:o}=e,s=o?[{key:`refresh`,label:n(`toolbar.refresh`),icon:(0,f.jsx)(p.ReloadOutlined,{}),onClick:o}]:[];return i?.length&&(s=i.concat([{type:`divider`},...s])),(0,f.jsxs)(`div`,{style:{display:`flex`,alignItems:`center`,justifyContent:`flex-end`,gap:8},children:[r||null,(0,f.jsx)(u.Dropdown,{menu:{items:s},trigger:[`click`],children:(0,f.jsx)(u.Button,{loading:t,size:a,color:`default`,variant:`filled`,icon:(0,f.jsx)(p.MoreOutlined,{}),type:`primary`})})]})},Y=e=>{let{t,loading:n,permissions:r}=(0,l.useSchedulerContext)(),{entity:i,icon:a,type:o=`primary`,showLabel:s=!1,disabled:c,onDelete:d}=e;return!i||!r.canDelete?null:(0,f.jsx)(u.Popconfirm,{title:t(`actions.confirm.delete`),onConfirm:()=>d?.(i),okText:t(`actions.delete`),cancelText:t(`actions.cancel`),children:(0,f.jsx)(u.Tooltip,{title:t(`actions.delete`),children:(0,f.jsx)(u.Button,{disabled:c||!r.canDelete,loading:n,danger:!0,type:o,icon:a||(0,f.jsx)(p.DeleteTwoTone,{twoToneColor:`#eb2f96`}),children:s&&t(`actions.delete`)})})})},X=e=>{let{t,loading:n,permissions:r}=(0,l.useSchedulerContext)(),{entity:i,type:a=`primary`,showLabel:o=!1,onEdit:s}=e;return!i||!r.canUpdate?null:(0,f.jsx)(u.Button,{disabled:!r.canUpdate,loading:n,type:a,icon:(0,f.jsx)(p.EditTwoTone,{twoToneColor:l.COLORS.success}),onClick:()=>s?.(i),children:o&&t(`actions.edit`)})},ee=e=>(0,f.jsx)(`div`,{className:z.tagsWrapper,children:e?.days.map((e,t)=>(0,f.jsx)(u.Tag,{color:l.COLORS.tags.volcano,children:e},t))}),Z=(e,t)=>e?.type===`PERIOD`?(0,f.jsx)(`div`,{className:z.tagsWrapper,children:t?.days.map((t,n)=>(0,f.jsx)(u.Tag,{color:l.COLORS.tags.cyan,children:`${e.weekDay} ${t}`},n))}):(0,f.jsx)(`div`,{className:z.tagsWrapper,children:(0,f.jsx)(u.Tag,{color:l.COLORS.tags.gold,children:e?.monthDay},`monthDay`)}),te=(e,t,n)=>(0,f.jsxs)(f.Fragment,{children:[Z(t,n),(0,f.jsx)(`div`,{className:z.tagsWrapper,children:e?.months?.map((e,t)=>(0,f.jsx)(u.Tag,{color:l.COLORS.tags.magenta,children:e},t))})]}),ne=({status:e})=>{switch(e){case l.EStatus.ACTIVE:return(0,f.jsx)(u.Tag,{color:`success`,icon:(0,f.jsx)(p.CheckCircleOutlined,{}),children:e});case l.EStatus.PROCESSING:return(0,f.jsx)(u.Tag,{color:`processing`,icon:(0,f.jsx)(p.SyncOutlined,{spin:!0}),children:e});case l.EStatus.DEACTIVATED:return(0,f.jsx)(u.Tag,{color:`default`,icon:(0,f.jsx)(p.MinusCircleOutlined,{}),children:e});default:return(0,f.jsx)(u.Tag,{color:`default`,children:e})}},Q=e=>e.map((e,t)=>({...e,idx:t+1,key:e.id})),$={key:`idx`,title:(0,f.jsx)(p.FieldNumberOutlined,{}),dataIndex:`idx`,rowScope:`row`,width:70,fixed:`left`,align:`center`},re=(e=100,t=`Actions`)=>({title:t,key:`operation`,fixed:`right`,align:`center`,width:e}),ie=(e,t=[])=>{let{disabled:n,schedulerType:r,currency:i,t:a,onEdit:o,onDelete:s}=e,c=o||s?{title:a(`table.actions`),key:`operation`,fixed:`right`,align:`center`,width:100,render:(e,t)=>(0,f.jsxs)(`div`,{children:[o&&(0,f.jsx)(X,{onEdit:o,disabled:n,type:`text`,entity:t}),s&&(0,f.jsx)(Y,{onDelete:s,icon:(0,f.jsx)(p.DeleteTwoTone,{twoToneColor:`#eb2f96`}),type:`text`,entity:t,disabled:n})]})}:null,u=[l.ESchedulerPrefix.DISCOUNT,l.ESchedulerPrefix.TRIAL_DISCOUNT].includes(r)?{title:a(`scheduler.meta.discount`),dataIndex:`discount`,key:`discount`,width:150,render(e){return e?e.type===`PERCENT`?`${e.value}${l.CDiscountTypeValues[e.type]}`:(0,l.numberToCurrency)(e.value,i??`USD`):`—`}}:null,d=[$,{title:a(`scheduler.meta.duration`),dataIndex:`duration`,key:`duration`,width:150,render(e){return`${e?.period} (${e?.type})`}},{title:a(`scheduler.duration`),key:`repeat`,render(e,t){let{duration:n,repeat:r}=t,{weekly:i,monthly:a,yearly:o}=r;switch(n?.type){case`WEEK`:return ee(i);case`MONTH`:return Z(a,i);case`YEAR`:return te(o,a,i);default:return(0,f.jsx)(f.Fragment,{})}}},u,{title:a(`scheduler.status`),dataIndex:`status`,key:`status`,width:150,align:`center`,concealable:!0,render:e=>(0,f.jsx)(ne,{status:e})},{title:a(`scheduler.updatedAt`),width:200,dataIndex:`metadata`,align:`center`,key:`metadata.updatedAt`,concealable:!0,render:e=>(0,f.jsx)(`div`,{children:e?.updatedAt?(0,l.tsToLocaleDateTime)(e.updatedAt):`—`})},c].filter(Boolean);return t.length?d.filter(e=>t.includes(e?.dataIndex)||e.dataIndex===`idx`):d},ae=e=>{let{type:t,title:n,disabled:r,readOnlyFields:i=[],currency:a,onRefresh:o}=e,{schedulers:s,loading:c,limit:m=l.DEFAULT_SCHEDULERS_LIMIT,disabled:h,t:g,permissions:_,onUpdate:v,onDelete:y}=(0,l.useSchedulerContext)(),b=r??h,x=s[t]??[],[S,C]=(0,d.useState)(new Set),[w,T]=(0,d.useState)(!1),[E,D]=(0,d.useState)(!1),O=(0,d.useMemo)(()=>S.size===0?x:x.filter(e=>!e.id||!S.has(e.id)),[x,S]),k=O.length>=m,[A]=u.Form.useForm(),[j,M]=(0,d.useState)(!1),[N,P]=(0,d.useState)(null),F=(0,d.useMemo)(()=>[l.CScheduler,t],[t]),I=(0,d.useMemo)(()=>Object.keys(l.EDurationTypes),[]),L=(0,d.useMemo)(()=>Object.keys(l.EDiscountType),[]),R=e=>{P(e),M(!0)},B=async()=>{try{await A.validateFields();let e=A.getFieldValue(F),n={...N,...e,type:t,[l.CNsDiscount]:t===l.ESchedulerPrefix.SALE?null:e?.[l.CNsDiscount]};v&&await v(t,n),M(!1),P(null),T(!1),A.resetFields(),o?.()}catch{}},{filteredColumns:V,columnsList:H,selectedColumns:U,setSelectedColumns:Y}=(0,l.useColumnsToggle)(ie({disabled:b,schedulerType:t,entities:O,currency:a,t:g,onEdit:_.canUpdate?R:void 0,onDelete:_.canDelete?async e=>{if(e.id?.startsWith(`new-`)){C(t=>{let n=new Set(t);return e.id&&n.add(e.id),n});return}y&&e.id?(await y(t,e.id),o?.()):console.warn(`No onDelete handler provided`)}:void 0}));return(0,f.jsxs)(f.Fragment,{children:[(0,f.jsx)(u.Table,{columns:V,loading:c,scroll:{x:1e3},bordered:!0,className:z.gridList,dataSource:Q(O),rowKey:e=>e.id??`row-${Math.random()}`,title:()=>(0,f.jsx)(`div`,{className:z.gridHeader,children:(0,f.jsx)(J,{onRefresh:o,items:_.canCreate&&!k?[{label:(0,f.jsx)(K,{setDirty:T,dirty:w,isCreating:E||c,setIsCreating:D,schedulerType:t,disabled:b||k,onSuccess:()=>o?.()}),icon:(0,f.jsx)(p.PlusOutlined,{})}]:[],children:(0,f.jsx)(q,{columnsList:H,selectedColumns:U,onChange:Y})})}),footer:()=>(0,f.jsx)(`div`,{className:z.gridFooter,children:`Total ${O.length} items`})}),(0,f.jsx)(u.Drawer,{title:(0,f.jsxs)(`div`,{style:{display:`flex`,alignItems:`center`,gap:8},children:[(0,f.jsx)(p.ScheduleTwoTone,{}),n??g(`scheduler`)]}),size:600,open:j,onClose:()=>{T(!1),M(!1),P(null)},extra:(0,f.jsx)(G,{size:`small`,isEdit:!!N,loading:c||E,disabled:b||!w||k,onClick:B}),children:j&&(0,f.jsx)(W,{setDirty:T,formRef:A,prefix:F,entity:N,schedulerType:t,durationTypes:I,discountTypes:L,disabled:b,readOnlyFields:i})})]})};exports.Scheduler=W,exports.SchedulerDrawerButton=K,exports.SchedulersList=ae,exports.actionField=re,exports.indexColumn=$,exports.indexable=Q,Object.keys(l).forEach(function(e){e!==`default`&&!Object.prototype.hasOwnProperty.call(exports,e)&&Object.defineProperty(exports,e,{enumerable:!0,get:function(){return l[e]}})});
|
package/dist/index.es.js
CHANGED
|
@@ -414,7 +414,7 @@ var _e = Object.create, ve = Object.defineProperty, ye = Object.getOwnPropertyDe
|
|
|
414
414
|
form: o,
|
|
415
415
|
className: $.scheduler,
|
|
416
416
|
onFinish: p,
|
|
417
|
-
|
|
417
|
+
onValuesChange: () => m(!0),
|
|
418
418
|
initialValues: z,
|
|
419
419
|
children: [
|
|
420
420
|
[h.DISCOUNT, h.TRIAL_DISCOUNT].includes(T) && /* @__PURE__ */ X(B, {
|
|
@@ -422,11 +422,11 @@ var _e = Object.create, ve = Object.defineProperty, ye = Object.getOwnPropertyDe
|
|
|
422
422
|
children: /* @__PURE__ */ X(N, {
|
|
423
423
|
span: 12,
|
|
424
424
|
children: /* @__PURE__ */ X(L.Item, {
|
|
425
|
-
label: n("scheduler.meta.
|
|
425
|
+
label: n("scheduler.meta.discount"),
|
|
426
426
|
children: /* @__PURE__ */ Z(H.Compact, { children: [/* @__PURE__ */ X(L.Item, {
|
|
427
427
|
noStyle: !0,
|
|
428
428
|
name: w(u, r, "type"),
|
|
429
|
-
rules: [D(n("scheduler.meta.
|
|
429
|
+
rules: [D(n("scheduler.meta.discount"), !0)],
|
|
430
430
|
children: /* @__PURE__ */ X(V, {
|
|
431
431
|
style: { width: 150 },
|
|
432
432
|
disabled: g || a,
|
|
@@ -439,7 +439,7 @@ var _e = Object.create, ve = Object.defineProperty, ye = Object.getOwnPropertyDe
|
|
|
439
439
|
}), /* @__PURE__ */ X(L.Item, {
|
|
440
440
|
noStyle: !0,
|
|
441
441
|
name: w(u, r, "value"),
|
|
442
|
-
rules: [D(n("scheduler.meta.
|
|
442
|
+
rules: [D(n("scheduler.meta.discount"), !0)],
|
|
443
443
|
children: /* @__PURE__ */ X(R, {
|
|
444
444
|
min: 1,
|
|
445
445
|
style: { width: "100%" },
|
|
@@ -796,7 +796,7 @@ var _e = Object.create, ve = Object.defineProperty, ye = Object.getOwnPropertyDe
|
|
|
796
796
|
disabled: r
|
|
797
797
|
})] })
|
|
798
798
|
} : null, u = [h.DISCOUNT, h.TRIAL_DISCOUNT].includes(i) ? {
|
|
799
|
-
title: o("scheduler.meta.
|
|
799
|
+
title: o("scheduler.meta.discount"),
|
|
800
800
|
dataIndex: "discount",
|
|
801
801
|
key: "discount",
|
|
802
802
|
width: 150,
|