@teamco/ischeduler-antd 2.0.16 → 2.0.17
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.
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SchedulersList.d.ts","sourceRoot":"","sources":["../../../../src/components/SchedulersList.tsx"],"names":[],"mappings":"AAGA,OAAO,
|
|
1
|
+
{"version":3,"file":"SchedulersList.d.ts","sourceRoot":"","sources":["../../../../src/components/SchedulersList.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAyC,MAAM,OAAO,CAAC;AAW9D,OAAO,EAML,gBAAgB,EAChB,SAAS,EAEV,MAAM,yBAAyB,CAAC;AAKjC,MAAM,MAAM,mBAAmB,GAAG;IAChC,0EAA0E;IAC1E,IAAI,EAAE,gBAAgB,CAAC;IACvB,oDAAoD;IACpD,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,6CAA6C;IAC7C,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,yEAAyE;IACzE,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAC1B,4FAA4F;IAC5F,QAAQ,CAAC,EAAE,MAAM,OAAO,SAAS,CAAC;IAClC,4EAA4E;IAC5E,SAAS,CAAC,EAAE,MAAM,IAAI,CAAC;CACxB,CAAC;AAEF,eAAO,MAAM,cAAc,GAAI,OAAO,mBAAmB,KAAG,KAAK,CAAC,GAAG,CAAC,OAuNrE,CAAC"}
|
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),e=null),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,1);let f=require(`react/jsx-runtime`),p=require(`@ant-design/icons`),m=require(`dayjs`);m=c(m,1);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:`_checkboxWrapper_1kjv1_1`,"ant-checkbox-wrapper-checked":`_ant-checkbox-wrapper-checked_1kjv1_21`,antCheckboxWrapperChecked:`_ant-checkbox-wrapper-checked_1kjv1_21`,primary:`_primary_1kjv1_25`,hide:`_hide_1kjv1_33`},y=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,v.checkboxWrapper,v[s],v[c]),value:o,disabled:r||t,onChange:i})},b={scheduler:`_scheduler_aqesn_1`,result:`_result_aqesn_4`,drawerContent:`_drawerContent_aqesn_10`,chipLabel:`_chipLabel_aqesn_13`,monthlyGridDay:`_monthlyGridDay_aqesn_18`,monthlyGridWeek:`_monthlyGridWeek_aqesn_25`,monthsSeparator:`_monthsSeparator_aqesn_37`,monthWrapper:`_monthWrapper_aqesn_45`,monthComponents:`_monthComponents_aqesn_50`,weekWrapper:`_weekWrapper_aqesn_70`,"ant-checkbox-wrapper-checked":`_ant-checkbox-wrapper-checked_aqesn_73`,antCheckboxWrapperChecked:`_ant-checkbox-wrapper-checked_aqesn_73`,weekDaysWrap:`_weekDaysWrap_aqesn_88`,yearWrapper:`_yearWrapper_aqesn_91`,monthsWrapper:`_monthsWrapper_aqesn_91`,tagsWrapper:`_tagsWrapper_aqesn_104`},x=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]),x=(0,d.useMemo)(()=>Object.keys(l.EDays).map(e=>t(`scheduler.weekdays.${l.EDays[e].toLowerCase()}`)),[t]),S=(0,d.useMemo)(()=>Object.keys(l.EDays).map(e=>t(`scheduler.weekdays.short.${l.EDays[e].toLowerCase()}`)),[t]),C=e=>e.map((t,n)=>e[(n+l.CFirstDayIdx)%7]),w=C(S),T=C(x),E=(i?w:T).map((e,t)=>{let n=T[t],r=(0,l.getKeyFromEnum)(l.EDays,n);return{key:`${e}-${t}`,label:i?(0,f.jsx)(u.Tooltip,{title:T[t],children:e}):e,value:r}}),D;o.length&&(E=[...E,...o],D=b.weekDaysWrap);let O=(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)(b.weekWrapper,D),children:(0,f.jsx)(u.Form.Item,{label:t(`scheduler.days`),name:h,rules:[(0,l.requiredField)(t(`scheduler.days`))],children:(0,f.jsx)(y,{loading:n,disabled:p,options:E,onChange:O})})})},S=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 S=(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:b.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)(x,{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]),C=()=>h===`DAY`?(0,f.jsx)(u.Col,{span:12,className:b.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:b.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:b.monthComponents,children:[C(),S()]})]})},C=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})})},w=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&&C(e)},[o]);let x=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})),C=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:b.yearWrapper,children:[(0,f.jsx)(u.Form.Item,{noStyle:!0,name:g,rules:[(0,l.requiredField)(t(`scheduler.months`))],children:(0,f.jsx)(y,{options:x,disabled:p,className:b.monthsWrapper,loading:n,onChange:C,value:m})}),(0,f.jsx)(S,{formRef:o,prefix:s,disabled:p,setOccurs:a})]})},T=e=>{let{t,loading:n}=(0,l.useSchedulerContext)(),{formRef:r,prefix:i,entity:a,onFinish:o,disabled:s=!1,durationTypes:c=[],discountTypes:p=[],readOnlyFields:m=[],schedulerType:_}=e,[v,y]=(0,d.useState)(null),[T,E]=(0,d.useState)(`0`),D=u.Form.useWatch(i,r),O=(0,d.useMemo)(()=>_===l.ESchedulerPrefix.SALE?l.DEFAULT_SALE_SCHEDULER:l.DEFAULT_DISCOUNT_SCHEDULER,[_]);(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(!D)return;let e=D.range?.startedAt;e&&(0,l.handleChangeStartDate)(e,y);let n=D.duration;n?.type&&n?.period&&(0,l.handleDurationValueChange)(n,D,E,t)},[D,t]);let k=D?.range?.endReason?.type,A=D?.duration?.type,j=(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]]=O,e},[O,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:b.scheduler,onFinish:o,initialValues:j,children:[[l.ESchedulerPrefix.DISCOUNT,l.ESchedulerPrefix.TRIAL_DISCOUNT].includes(_)&&(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:s||n,options:p.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(`.`),m),disabled:s||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:s||n,prefix:i,namespace:l.CNsDuration,required:!0,durationTypes:c})}),(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:s||n,style:{width:`100%`}})})})]}),A===`WEEK`&&(0,f.jsx)(u.Row,{gutter:[24,24],children:(0,f.jsx)(u.Col,{span:24,children:(0,f.jsx)(x,{prefix:i,isMultiple:!0,formRef:r,setOccurs:E,disabled:s})})}),A===`MONTH`&&(0,f.jsx)(u.Row,{gutter:[24,24],children:(0,f.jsx)(u.Col,{span:24,children:(0,f.jsx)(S,{formRef:r,prefix:i,disabled:s,setOccurs:E})})}),A===`YEAR`&&(0,f.jsx)(u.Row,{gutter:[24,24],children:(0,f.jsx)(u.Col,{span:24,children:(0,f.jsx)(w,{formRef:r,prefix:i,disabled:s,setOccurs:E})})}),(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:s,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:[k===l.CEndReasonTypes[0]&&(0,f.jsx)(C,{prefix:i,disabled:s}),k===l.CEndReasonTypes[1]&&(0,f.jsx)(g,{prefix:i,disabled:s})]})]}),(0,f.jsx)(`span`,{className:b.result,dangerouslySetInnerHTML:{__html:t(`scheduler.result`,{occurs:T,startAt:v??``})}})]})})},E=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},D=({schedulerType:e,disabled:t,onSuccess:n,isCreating:r,setIsCreating:i,buttonProps:a})=>{let{t:o,loading:s,limit:c=l.DEFAULT_SCHEDULERS_LIMIT,permissions:m,onCreate:h}=(0,l.useSchedulerContext)(),[g]=u.Form.useForm(),[_,v]=(0,d.useState)(!1),y=(0,d.useMemo)(()=>[l.CScheduler,e],[e]),b=(0,d.useMemo)(()=>Object.keys(l.EDurationTypes),[]),x=(0,d.useMemo)(()=>Object.keys(l.EDiscountType),[]);if(!m.canCreate)return null;let S=async()=>{try{i(!0),await g.validateFields();let t=g.getFieldValue(y),r={id:`new-${Date.now()}`,...t,type:e,[l.CNsDiscount]:e===l.ESchedulerPrefix.SALE?null:t?.[l.CNsDiscount]};h&&await h(e,r),n?.(r),v(!1),g.resetFields()}catch{}finally{i(!1)}};return(0,f.jsxs)(f.Fragment,{children:[(0,f.jsx)(u.Button,{style:{padding:0},color:`default`,variant:`link`,...a,loading:s||r,disabled:t,onClick:e=>{e.preventDefault(),e.stopPropagation(),g.resetFields(),v(!0)},children:(0,f.jsx)(u.Tooltip,{title:t?o(`scheduler.limited`,{limit:c}):void 0,children:o(`scheduler`)})}),(0,f.jsx)(u.Drawer,{title:(0,f.jsxs)(`div`,{style:{display:`flex`,alignItems:`center`,gap:8},children:[(0,f.jsx)(p.ScheduleTwoTone,{}),o(`scheduler`)]}),size:600,open:_,destroyOnHidden:!0,onClose:()=>{v(!1)},extra:(0,f.jsx)(E,{size:`small`,loading:s||r,disabled:t,onClick:S}),children:_&&(0,f.jsx)(T,{formRef:g,prefix:y,schedulerType:e,durationTypes:b,discountTypes:x,disabled:t})})]})},O=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})},k=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`})})]})},A=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`)})})})},j=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`)})},M=e=>(0,f.jsx)(`div`,{className:b.tagsWrapper,children:e?.days.map((e,t)=>(0,f.jsx)(u.Tag,{color:l.COLORS.tags.volcano,children:e},t))}),N=(e,t)=>e?.type===`PERIOD`?(0,f.jsx)(`div`,{className:b.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:b.tagsWrapper,children:(0,f.jsx)(u.Tag,{color:l.COLORS.tags.gold,children:e?.monthDay},`monthDay`)}),P=(e,t,n)=>(0,f.jsxs)(f.Fragment,{children:[N(t,n),(0,f.jsx)(`div`,{className:b.tagsWrapper,children:e?.months?.map((e,t)=>(0,f.jsx)(u.Tag,{color:l.COLORS.tags.magenta,children:e},t))})]}),F=({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})}},I=e=>e.map((e,t)=>({...e,idx:t+1,key:e.id})),L={key:`idx`,title:(0,f.jsx)(p.FieldNumberOutlined,{}),dataIndex:`idx`,rowScope:`row`,width:70,fixed:`left`,align:`center`},R=(e=100,t=`Actions`)=>({title:t,key:`operation`,fixed:`right`,align:`center`,width:e}),z=(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)(j,{onEdit:o,disabled:n,type:`text`,entity:t}),s&&(0,f.jsx)(A,{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=[L,{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 M(i);case`MONTH`:return N(a,i);case`YEAR`:return P(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)(F,{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},B=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)(),x=r??h,S=s[t]??[],[C,w]=(0,d.useState)(new Set),[A,j]=(0,d.useState)(!1),M=(0,d.useMemo)(()=>C.size===0?S:S.filter(e=>!e.id||!C.has(e.id)),[S,C]),N=M.length>=m,[P]=u.Form.useForm(),[F,L]=(0,d.useState)(!1),[R,B]=(0,d.useState)(null),V=(0,d.useMemo)(()=>[l.CScheduler,t],[t]),H=(0,d.useMemo)(()=>Object.keys(l.EDurationTypes),[]),U=(0,d.useMemo)(()=>Object.keys(l.EDiscountType),[]),W=e=>{B(e),L(!0)},G=async()=>{try{await P.validateFields();let e=P.getFieldValue(V),n={...R,...e,type:t,[l.CNsDiscount]:t===l.ESchedulerPrefix.SALE?null:e?.[l.CNsDiscount]};v&&await v(t,n),L(!1),B(null),P.resetFields(),o?.()}catch{}},{filteredColumns:K,columnsList:q,selectedColumns:J,setSelectedColumns:Y}=(0,l.useColumnsToggle)(z({disabled:x,schedulerType:t,entities:M,currency:a,t:g,onEdit:_.canUpdate?W:void 0,onDelete:_.canDelete?async e=>{if(e.id?.startsWith(`new-`)){w(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:K,loading:c,scroll:{x:1e3},bordered:!0,className:b.gridList,dataSource:I(M),rowKey:e=>e.id??`row-${Math.random()}`,title:()=>(0,f.jsx)(`div`,{className:b.gridHeader,children:(0,f.jsx)(k,{onRefresh:o,items:_.canCreate&&!N?[{label:(0,f.jsx)(D,{isCreating:A||c,setIsCreating:j,schedulerType:t,disabled:x||N,onSuccess:()=>o?.()}),icon:(0,f.jsx)(p.PlusOutlined,{})}]:[],children:(0,f.jsx)(O,{columnsList:q,selectedColumns:J,onChange:Y})})}),footer:()=>(0,f.jsx)(`div`,{className:b.gridFooter,children:`Total ${M.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:F,destroyOnHidden:!0,onClose:()=>{L(!1),B(null)},extra:(0,f.jsx)(E,{size:`small`,isEdit:!!R,loading:c||A,disabled:x||N,onClick:G}),children:F&&(0,f.jsx)(T,{formRef:P,prefix:V,entity:R,schedulerType:t,durationTypes:H,discountTypes:U,disabled:x,readOnlyFields:i})})]})};exports.Scheduler=T,exports.SchedulerDrawerButton=D,exports.SchedulersList=B,exports.actionField=R,exports.indexColumn=L,exports.indexable=I,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),e=null),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,1);let f=require(`react/jsx-runtime`),p=require(`@ant-design/icons`),m=require(`dayjs`);m=c(m,1);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:`_checkboxWrapper_1kjv1_1`,"ant-checkbox-wrapper-checked":`_ant-checkbox-wrapper-checked_1kjv1_21`,antCheckboxWrapperChecked:`_ant-checkbox-wrapper-checked_1kjv1_21`,primary:`_primary_1kjv1_25`,hide:`_hide_1kjv1_33`},y=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,v.checkboxWrapper,v[s],v[c]),value:o,disabled:r||t,onChange:i})},b={scheduler:`_scheduler_aqesn_1`,result:`_result_aqesn_4`,drawerContent:`_drawerContent_aqesn_10`,chipLabel:`_chipLabel_aqesn_13`,monthlyGridDay:`_monthlyGridDay_aqesn_18`,monthlyGridWeek:`_monthlyGridWeek_aqesn_25`,monthsSeparator:`_monthsSeparator_aqesn_37`,monthWrapper:`_monthWrapper_aqesn_45`,monthComponents:`_monthComponents_aqesn_50`,weekWrapper:`_weekWrapper_aqesn_70`,"ant-checkbox-wrapper-checked":`_ant-checkbox-wrapper-checked_aqesn_73`,antCheckboxWrapperChecked:`_ant-checkbox-wrapper-checked_aqesn_73`,weekDaysWrap:`_weekDaysWrap_aqesn_88`,yearWrapper:`_yearWrapper_aqesn_91`,monthsWrapper:`_monthsWrapper_aqesn_91`,tagsWrapper:`_tagsWrapper_aqesn_104`},x=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]),x=(0,d.useMemo)(()=>Object.keys(l.EDays).map(e=>t(`scheduler.weekdays.${l.EDays[e].toLowerCase()}`)),[t]),S=(0,d.useMemo)(()=>Object.keys(l.EDays).map(e=>t(`scheduler.weekdays.short.${l.EDays[e].toLowerCase()}`)),[t]),C=e=>e.map((t,n)=>e[(n+l.CFirstDayIdx)%7]),w=C(S),T=C(x),E=(i?w:T).map((e,t)=>{let n=T[t],r=(0,l.getKeyFromEnum)(l.EDays,n);return{key:`${e}-${t}`,label:i?(0,f.jsx)(u.Tooltip,{title:T[t],children:e}):e,value:r}}),D;o.length&&(E=[...E,...o],D=b.weekDaysWrap);let O=(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)(b.weekWrapper,D),children:(0,f.jsx)(u.Form.Item,{label:t(`scheduler.days`),name:h,rules:[(0,l.requiredField)(t(`scheduler.days`))],children:(0,f.jsx)(y,{loading:n,disabled:p,options:E,onChange:O})})})},S=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 S=(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:b.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)(x,{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]),C=()=>h===`DAY`?(0,f.jsx)(u.Col,{span:12,className:b.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:b.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:b.monthComponents,children:[C(),S()]})]})},C=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})})},w=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&&C(e)},[o]);let x=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})),C=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:b.yearWrapper,children:[(0,f.jsx)(u.Form.Item,{noStyle:!0,name:g,rules:[(0,l.requiredField)(t(`scheduler.months`))],children:(0,f.jsx)(y,{options:x,disabled:p,className:b.monthsWrapper,loading:n,onChange:C,value:m})}),(0,f.jsx)(S,{formRef:o,prefix:s,disabled:p,setOccurs:a})]})},T=e=>{let{t,loading:n}=(0,l.useSchedulerContext)(),{formRef:r,prefix:i,entity:a,onFinish:o,disabled:s=!1,durationTypes:c=[],discountTypes:p=[],readOnlyFields:m=[],schedulerType:_}=e,[v,y]=(0,d.useState)(null),[T,E]=(0,d.useState)(`0`),D=u.Form.useWatch(i,r),O=(0,d.useMemo)(()=>_===l.ESchedulerPrefix.SALE?l.DEFAULT_SALE_SCHEDULER:l.DEFAULT_DISCOUNT_SCHEDULER,[_]);(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(!D)return;let e=D.range?.startedAt;e&&(0,l.handleChangeStartDate)(e,y);let n=D.duration;n?.type&&n?.period&&(0,l.handleDurationValueChange)(n,D,E,t)},[D,t]);let k=D?.range?.endReason?.type,A=D?.duration?.type,j=(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]]=O,e},[O,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:b.scheduler,onFinish:o,initialValues:j,children:[[l.ESchedulerPrefix.DISCOUNT,l.ESchedulerPrefix.TRIAL_DISCOUNT].includes(_)&&(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:s||n,options:p.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(`.`),m),disabled:s||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:s||n,prefix:i,namespace:l.CNsDuration,required:!0,durationTypes:c})}),(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:s||n,style:{width:`100%`}})})})]}),A===`WEEK`&&(0,f.jsx)(u.Row,{gutter:[24,24],children:(0,f.jsx)(u.Col,{span:24,children:(0,f.jsx)(x,{prefix:i,isMultiple:!0,formRef:r,setOccurs:E,disabled:s})})}),A===`MONTH`&&(0,f.jsx)(u.Row,{gutter:[24,24],children:(0,f.jsx)(u.Col,{span:24,children:(0,f.jsx)(S,{formRef:r,prefix:i,disabled:s,setOccurs:E})})}),A===`YEAR`&&(0,f.jsx)(u.Row,{gutter:[24,24],children:(0,f.jsx)(u.Col,{span:24,children:(0,f.jsx)(w,{formRef:r,prefix:i,disabled:s,setOccurs:E})})}),(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:s,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:[k===l.CEndReasonTypes[0]&&(0,f.jsx)(C,{prefix:i,disabled:s}),k===l.CEndReasonTypes[1]&&(0,f.jsx)(g,{prefix:i,disabled:s})]})]}),(0,f.jsx)(`span`,{className:b.result,dangerouslySetInnerHTML:{__html:t(`scheduler.result`,{occurs:T,startAt:v??``})}})]})})},E=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},D=({schedulerType:e,disabled:t,onSuccess:n,isCreating:r,setIsCreating:i,buttonProps:a})=>{let{t:o,loading:s,limit:c=l.DEFAULT_SCHEDULERS_LIMIT,permissions:m,onCreate:h}=(0,l.useSchedulerContext)(),[g]=u.Form.useForm(),[_,v]=(0,d.useState)(!1),y=(0,d.useMemo)(()=>[l.CScheduler,e],[e]),b=(0,d.useMemo)(()=>Object.keys(l.EDurationTypes),[]),x=(0,d.useMemo)(()=>Object.keys(l.EDiscountType),[]);if(!m.canCreate)return null;let S=async()=>{try{i(!0),await g.validateFields();let t=g.getFieldValue(y),r={id:`new-${Date.now()}`,...t,type:e,[l.CNsDiscount]:e===l.ESchedulerPrefix.SALE?null:t?.[l.CNsDiscount]};h&&await h(e,r),n?.(r),v(!1),g.resetFields()}catch{}finally{i(!1)}};return(0,f.jsxs)(f.Fragment,{children:[(0,f.jsx)(u.Button,{style:{padding:0},color:`default`,variant:`link`,...a,loading:s||r,disabled:t,onClick:e=>{e.preventDefault(),e.stopPropagation(),g.resetFields(),v(!0)},children:(0,f.jsx)(u.Tooltip,{title:t?o(`scheduler.limited`,{limit:c}):void 0,children:o(`scheduler`)})}),(0,f.jsx)(u.Drawer,{title:(0,f.jsxs)(`div`,{style:{display:`flex`,alignItems:`center`,gap:8},children:[(0,f.jsx)(p.ScheduleTwoTone,{}),o(`scheduler`)]}),size:600,open:_,destroyOnHidden:!0,onClose:()=>{v(!1)},extra:(0,f.jsx)(E,{size:`small`,loading:s||r,disabled:t,onClick:S}),children:_&&(0,f.jsx)(T,{formRef:g,prefix:y,schedulerType:e,durationTypes:b,discountTypes:x,disabled:t})})]})},O=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})},k=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`})})]})},A=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`)})})})},j=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`)})},M=e=>(0,f.jsx)(`div`,{className:b.tagsWrapper,children:e?.days.map((e,t)=>(0,f.jsx)(u.Tag,{color:l.COLORS.tags.volcano,children:e},t))}),N=(e,t)=>e?.type===`PERIOD`?(0,f.jsx)(`div`,{className:b.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:b.tagsWrapper,children:(0,f.jsx)(u.Tag,{color:l.COLORS.tags.gold,children:e?.monthDay},`monthDay`)}),P=(e,t,n)=>(0,f.jsxs)(f.Fragment,{children:[N(t,n),(0,f.jsx)(`div`,{className:b.tagsWrapper,children:e?.months?.map((e,t)=>(0,f.jsx)(u.Tag,{color:l.COLORS.tags.magenta,children:e},t))})]}),F=({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})}},I=e=>e.map((e,t)=>({...e,idx:t+1,key:e.id})),L={key:`idx`,title:(0,f.jsx)(p.FieldNumberOutlined,{}),dataIndex:`idx`,rowScope:`row`,width:70,fixed:`left`,align:`center`},R=(e=100,t=`Actions`)=>({title:t,key:`operation`,fixed:`right`,align:`center`,width:e}),z=(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)(j,{onEdit:o,disabled:n,type:`text`,entity:t}),s&&(0,f.jsx)(A,{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=[L,{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 M(i);case`MONTH`:return N(a,i);case`YEAR`:return P(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)(F,{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},B=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)(),x=r??h,S=s[t]??[],[C,w]=(0,d.useState)(new Set),[A,j]=(0,d.useState)(!1),M=(0,d.useMemo)(()=>C.size===0?S:S.filter(e=>!e.id||!C.has(e.id)),[S,C]),N=M.length>=m,[P]=u.Form.useForm(),[F,L]=(0,d.useState)(!1),[R,B]=(0,d.useState)(null),V=(0,d.useMemo)(()=>[l.CScheduler,t],[t]),H=(0,d.useMemo)(()=>Object.keys(l.EDurationTypes),[]),U=(0,d.useMemo)(()=>Object.keys(l.EDiscountType),[]),W=(0,d.useCallback)(e=>{B(e),L(!0)},[]),G=(0,d.useCallback)(async()=>{try{await P.validateFields();let e=P.getFieldValue(V),n={...R,...e,type:t,[l.CNsDiscount]:t===l.ESchedulerPrefix.SALE?null:e?.[l.CNsDiscount]};v&&await v(t,n),L(!1),B(null),P.resetFields(),o?.()}catch{}},[P,V,R,t,v,o]),K=(0,d.useCallback)(async e=>{if(e.id?.startsWith(`new-`)){w(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`)},[y,t,o]),{filteredColumns:q,columnsList:J,selectedColumns:Y,setSelectedColumns:X}=(0,l.useColumnsToggle)((0,d.useMemo)(()=>z({disabled:x,schedulerType:t,entities:M,currency:a,t:g,onEdit:_.canUpdate?W:void 0,onDelete:_.canDelete?K:void 0}),[x,t,M,a,g,_.canUpdate,_.canDelete,W,K]));return(0,f.jsxs)(f.Fragment,{children:[(0,f.jsx)(u.Table,{columns:q,loading:c,scroll:{x:1e3},bordered:!0,className:b.gridList,dataSource:I(M),rowKey:e=>e.id??`row-${Math.random()}`,title:()=>(0,f.jsx)(`div`,{className:b.gridHeader,children:(0,f.jsx)(k,{onRefresh:o,items:_.canCreate&&!N?[{label:(0,f.jsx)(D,{isCreating:A||c,setIsCreating:j,schedulerType:t,disabled:x||N,onSuccess:()=>o?.()}),icon:(0,f.jsx)(p.PlusOutlined,{})}]:[],children:(0,f.jsx)(O,{columnsList:J,selectedColumns:Y,onChange:X})})}),footer:()=>(0,f.jsx)(`div`,{className:b.gridFooter,children:`Total ${M.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:F,destroyOnHidden:!0,onClose:()=>{L(!1),B(null)},extra:(0,f.jsx)(E,{size:`small`,isEdit:!!R,loading:c||A,disabled:x||N,onClick:G}),children:F&&(0,f.jsx)(T,{formRef:P,prefix:V,entity:R,schedulerType:t,durationTypes:H,discountTypes:U,disabled:x,readOnlyFields:i})})]})};exports.Scheduler=T,exports.SchedulerDrawerButton=D,exports.SchedulersList=B,exports.actionField=R,exports.indexColumn=L,exports.indexable=I,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
|
@@ -849,9 +849,9 @@ var _e = Object.create, ve = Object.defineProperty, ye = Object.getOwnPropertyDe
|
|
|
849
849
|
].filter(Boolean);
|
|
850
850
|
return n.length ? d.filter((e) => n.includes(e?.dataIndex) || e.dataIndex === "idx") : d;
|
|
851
851
|
}, Xe = (e) => {
|
|
852
|
-
let { type: t, title: n, disabled: i, readOnlyFields: a = [], currency: s, onRefresh: c } = e, { schedulers: l, loading: d, limit: m = u, disabled: g, t: _, permissions: v, onUpdate: y, onDelete: b } = j(), x = i ?? g, S = l[t] ?? [], [C, w] = J(/* @__PURE__ */ new Set()), [T, E] = J(!1), D = q(() => C.size === 0 ? S : S.filter((e) => !e.id || !C.has(e.id)), [S, C]), O = D.length >= m, [k] = R.useForm(), [M, N] = J(!1), [P, F] = J(null), L = q(() => [o, t], [t]), z = q(() => Object.keys(p), []), ee = q(() => Object.keys(f), []), B = (e) => {
|
|
852
|
+
let { type: t, title: n, disabled: i, readOnlyFields: a = [], currency: s, onRefresh: c } = e, { schedulers: l, loading: d, limit: m = u, disabled: g, t: _, permissions: v, onUpdate: y, onDelete: b } = j(), x = i ?? g, S = l[t] ?? [], [C, w] = J(/* @__PURE__ */ new Set()), [T, E] = J(!1), D = q(() => C.size === 0 ? S : S.filter((e) => !e.id || !C.has(e.id)), [S, C]), O = D.length >= m, [k] = R.useForm(), [M, N] = J(!1), [P, F] = J(null), L = q(() => [o, t], [t]), z = q(() => Object.keys(p), []), ee = q(() => Object.keys(f), []), B = G((e) => {
|
|
853
853
|
F(e), N(!0);
|
|
854
|
-
}, te = async () => {
|
|
854
|
+
}, []), te = G(async () => {
|
|
855
855
|
try {
|
|
856
856
|
await k.validateFields();
|
|
857
857
|
let e = k.getFieldValue(L), n = {
|
|
@@ -862,26 +862,47 @@ var _e = Object.create, ve = Object.defineProperty, ye = Object.getOwnPropertyDe
|
|
|
862
862
|
};
|
|
863
863
|
y && await y(t, n), N(!1), F(null), k.resetFields(), c?.();
|
|
864
864
|
} catch {}
|
|
865
|
-
},
|
|
865
|
+
}, [
|
|
866
|
+
k,
|
|
867
|
+
L,
|
|
868
|
+
P,
|
|
869
|
+
t,
|
|
870
|
+
y,
|
|
871
|
+
c
|
|
872
|
+
]), V = G(async (e) => {
|
|
873
|
+
if (e.id?.startsWith("new-")) {
|
|
874
|
+
w((t) => {
|
|
875
|
+
let n = new Set(t);
|
|
876
|
+
return e.id && n.add(e.id), n;
|
|
877
|
+
});
|
|
878
|
+
return;
|
|
879
|
+
}
|
|
880
|
+
b && e.id ? (await b(t, e.id), c?.()) : console.warn("No onDelete handler provided");
|
|
881
|
+
}, [
|
|
882
|
+
b,
|
|
883
|
+
t,
|
|
884
|
+
c
|
|
885
|
+
]), { filteredColumns: H, columnsList: U, selectedColumns: W, setSelectedColumns: K } = A(q(() => Ye({
|
|
866
886
|
disabled: x,
|
|
867
887
|
schedulerType: t,
|
|
868
888
|
entities: D,
|
|
869
889
|
currency: s,
|
|
870
890
|
t: _,
|
|
871
891
|
onEdit: v.canUpdate ? B : void 0,
|
|
872
|
-
onDelete: v.canDelete ?
|
|
873
|
-
|
|
874
|
-
|
|
875
|
-
|
|
876
|
-
|
|
877
|
-
|
|
878
|
-
|
|
879
|
-
|
|
880
|
-
|
|
881
|
-
|
|
882
|
-
|
|
892
|
+
onDelete: v.canDelete ? V : void 0
|
|
893
|
+
}), [
|
|
894
|
+
x,
|
|
895
|
+
t,
|
|
896
|
+
D,
|
|
897
|
+
s,
|
|
898
|
+
_,
|
|
899
|
+
v.canUpdate,
|
|
900
|
+
v.canDelete,
|
|
901
|
+
B,
|
|
902
|
+
V
|
|
903
|
+
]));
|
|
883
904
|
return /* @__PURE__ */ Z(Y, { children: [/* @__PURE__ */ X(ne, {
|
|
884
|
-
columns:
|
|
905
|
+
columns: H,
|
|
885
906
|
loading: d,
|
|
886
907
|
scroll: { x: 1e3 },
|
|
887
908
|
bordered: !0,
|
|
@@ -903,9 +924,9 @@ var _e = Object.create, ve = Object.defineProperty, ye = Object.getOwnPropertyDe
|
|
|
903
924
|
icon: /* @__PURE__ */ X(de, {})
|
|
904
925
|
}] : [],
|
|
905
926
|
children: /* @__PURE__ */ X(Re, {
|
|
906
|
-
columnsList:
|
|
907
|
-
selectedColumns:
|
|
908
|
-
onChange:
|
|
927
|
+
columnsList: U,
|
|
928
|
+
selectedColumns: W,
|
|
929
|
+
onChange: K
|
|
909
930
|
})
|
|
910
931
|
})
|
|
911
932
|
}),
|