@progress/kendo-react-scheduler 9.4.0-develop.24 → 9.4.0-develop.4
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/NOTICE.txt +51 -40
- package/Scheduler.js +1 -1
- package/Scheduler.mjs +1 -0
- package/components/BaseView.js +1 -1
- package/components/BaseView.mjs +1 -0
- package/components/CurrentTimeMarket.js +1 -1
- package/components/CurrentTimeMarket.mjs +1 -0
- package/components/DateHeaderCell.js +1 -1
- package/components/DateHeaderCell.mjs +15 -14
- package/components/SchedulerForm.js +1 -1
- package/components/SchedulerForm.mjs +8 -7
- package/components/SchedulerOccurrenceDialog.js +1 -1
- package/components/SchedulerOccurrenceDialog.mjs +1 -0
- package/components/SchedulerRemoveDialog.js +1 -1
- package/components/SchedulerRemoveDialog.mjs +7 -6
- package/components/ShowMoreItemsButton.js +1 -1
- package/components/ShowMoreItemsButton.mjs +11 -10
- package/components/TimeHeaderCell.js +1 -1
- package/components/TimeHeaderCell.mjs +10 -9
- package/components/footer/SchedulerFooter.js +1 -1
- package/components/footer/SchedulerFooter.mjs +5 -4
- package/components/footer/bussiness-hours/BussinessHours.js +1 -1
- package/components/footer/bussiness-hours/BussinessHours.mjs +9 -8
- package/components/header/SchedulerHeader.js +1 -1
- package/components/header/SchedulerHeader.mjs +6 -5
- package/components/header/navigation/NavigationDatePicker.js +1 -1
- package/components/header/navigation/NavigationDatePicker.mjs +11 -10
- package/components/header/navigation/SchedulerNavigation.js +1 -1
- package/components/header/navigation/SchedulerNavigation.mjs +1 -0
- package/components/header/view-selector/SchedulerViewSelector.js +1 -1
- package/components/header/view-selector/SchedulerViewSelector.mjs +5 -4
- package/components/header/view-selector/ViewSelectorItem.js +1 -1
- package/components/header/view-selector/ViewSelectorItem.mjs +7 -6
- package/components/header/view-selector/ViewSelectorList.js +1 -1
- package/components/header/view-selector/ViewSelectorList.mjs +1 -0
- package/constants/index.js +1 -1
- package/constants/index.mjs +1 -0
- package/context/SchedulerContext.js +1 -1
- package/context/SchedulerContext.mjs +8 -7
- package/context/SchedulerEditItemContext.js +1 -1
- package/context/SchedulerEditItemContext.mjs +1 -0
- package/context/SchedulerEditSlotContext.js +1 -1
- package/context/SchedulerEditSlotContext.mjs +10 -9
- package/context/SchedulerEditTaskContext.js +1 -1
- package/context/SchedulerEditTaskContext.mjs +1 -0
- package/context/SchedulerResourceIteratorContext.js +1 -1
- package/context/SchedulerResourceIteratorContext.mjs +3 -2
- package/context/SchedulerViewContext.js +1 -1
- package/context/SchedulerViewContext.mjs +1 -0
- package/dist/cdn/js/kendo-react-scheduler.js +1 -8
- package/editors/FilterableComboBox.js +1 -1
- package/editors/FilterableComboBox.mjs +4 -3
- package/editors/ResourceEditor.js +1 -1
- package/editors/ResourceEditor.mjs +3 -2
- package/editors/SchedulerFormEditor.js +1 -1
- package/editors/SchedulerFormEditor.mjs +1 -0
- package/editors/ZonedDateTime.js +1 -1
- package/editors/ZonedDateTime.mjs +22 -21
- package/hooks/use-items-focus.js +1 -1
- package/hooks/use-items-focus.mjs +1 -0
- package/hooks/use-items-selection.js +1 -1
- package/hooks/use-items-selection.mjs +15 -14
- package/hooks/use-slots-focus.js +1 -1
- package/hooks/use-slots-focus.mjs +7 -6
- package/hooks/use-slots-selection.js +1 -1
- package/hooks/use-slots-selection.mjs +1 -0
- package/hooks/useCellSync.js +1 -1
- package/hooks/useCellSync.mjs +1 -0
- package/hooks/useControlledState.js +1 -1
- package/hooks/useControlledState.mjs +5 -4
- package/hooks/useEditable.js +1 -1
- package/hooks/useEditable.mjs +5 -4
- package/hooks/useRowSync.js +1 -1
- package/hooks/useRowSync.mjs +6 -5
- package/hooks/useSchedulerItem.js +1 -1
- package/hooks/useSchedulerItem.mjs +6 -5
- package/hooks/useSchedulerSlot.js +1 -1
- package/hooks/useSchedulerSlot.mjs +8 -7
- package/hooks/useSlotExpand.js +1 -1
- package/hooks/useSlotExpand.mjs +1 -0
- package/index.js +1 -2
- package/index.mjs +14 -14
- package/items/SchedulerEditItem.js +1 -1
- package/items/SchedulerEditItem.mjs +1 -0
- package/items/SchedulerItem.js +1 -1
- package/items/SchedulerItem.mjs +91 -90
- package/items/SchedulerItemContent.js +1 -1
- package/items/SchedulerItemContent.mjs +1 -0
- package/items/SchedulerProportionalViewItem.js +1 -1
- package/items/SchedulerProportionalViewItem.mjs +1 -0
- package/items/SchedulerViewItem.js +1 -1
- package/items/SchedulerViewItem.mjs +1 -0
- package/items/hooks/use-drag-item.js +1 -1
- package/items/hooks/use-drag-item.mjs +1 -0
- package/items/hooks/use-form-item.js +1 -1
- package/items/hooks/use-form-item.mjs +9 -8
- package/items/hooks/use-remove-item.js +1 -1
- package/items/hooks/use-remove-item.mjs +1 -0
- package/items/hooks/use-resize-item.js +1 -1
- package/items/hooks/use-resize-item.mjs +1 -0
- package/items/hooks/use-series.js +1 -1
- package/items/hooks/use-series.mjs +5 -4
- package/items/hooks/use-show-occurrence-dialog.js +1 -1
- package/items/hooks/use-show-occurrence-dialog.mjs +6 -5
- package/items/hooks/use-show-remove-item-dialog.js +1 -1
- package/items/hooks/use-show-remove-item-dialog.mjs +8 -7
- package/messages/index.js +1 -1
- package/messages/index.mjs +1 -0
- package/package-metadata.js +1 -1
- package/package-metadata.mjs +3 -2
- package/package.json +12 -12
- package/recurrence/RecurrenceEditor.js +1 -1
- package/recurrence/RecurrenceEditor.mjs +1 -0
- package/recurrence/RecurrenceFrequencyEditor.js +1 -1
- package/recurrence/RecurrenceFrequencyEditor.mjs +1 -0
- package/recurrence/RecurrenceRepeatOnWeekEditor.js +1 -1
- package/recurrence/RecurrenceRepeatOnWeekEditor.mjs +1 -0
- package/recurrence/common.js +1 -1
- package/recurrence/common.mjs +1 -0
- package/services/itemsService.js +1 -1
- package/services/itemsService.mjs +21 -20
- package/services/occurrenceService.js +1 -1
- package/services/occurrenceService.mjs +1 -0
- package/services/rangeService.js +1 -1
- package/services/rangeService.mjs +9 -8
- package/services/slotsService.js +1 -1
- package/services/slotsService.mjs +8 -7
- package/slots/SchedulerEditSlot.js +1 -1
- package/slots/SchedulerEditSlot.mjs +1 -0
- package/slots/SchedulerSlot.js +1 -1
- package/slots/SchedulerSlot.mjs +1 -0
- package/slots/SchedulerViewSlot.js +1 -1
- package/slots/SchedulerViewSlot.mjs +8 -7
- package/tasks/SchedulerEditTask.js +1 -1
- package/tasks/SchedulerEditTask.mjs +1 -0
- package/tasks/SchedulerTask.js +1 -1
- package/tasks/SchedulerTask.mjs +6 -5
- package/tasks/SchedulerViewTask.js +1 -1
- package/tasks/SchedulerViewTask.mjs +4 -3
- package/utils/index.js +1 -1
- package/utils/index.mjs +8 -7
- package/views/agenda/AgendaView.js +1 -1
- package/views/agenda/AgendaView.mjs +13 -12
- package/views/common/HorizontalResourceIterator.js +1 -1
- package/views/common/HorizontalResourceIterator.mjs +1 -0
- package/views/common/SchedulerDrag.js +1 -1
- package/views/common/SchedulerDrag.mjs +1 -0
- package/views/common/SchedulerResize.js +1 -1
- package/views/common/SchedulerResize.mjs +5 -4
- package/views/common/VerticalResourceIterator.js +1 -1
- package/views/common/VerticalResourceIterator.mjs +1 -0
- package/views/common/utils.js +1 -1
- package/views/common/utils.mjs +5 -4
- package/views/day/DayView.js +1 -1
- package/views/day/DayView.mjs +4 -3
- package/views/day/DayViewAllDayRowContent.js +1 -1
- package/views/day/DayViewAllDayRowContent.mjs +5 -4
- package/views/day/DayViewGroupRowContent.js +1 -1
- package/views/day/DayViewGroupRowContent.mjs +1 -0
- package/views/day/DayViewRowContent.js +1 -1
- package/views/day/DayViewRowContent.mjs +1 -0
- package/views/day/MultiDayView.js +1 -1
- package/views/day/MultiDayView.mjs +1 -0
- package/views/month/MonthView.js +1 -1
- package/views/month/MonthView.mjs +1 -0
- package/views/time/MultiDayTimelineView.js +1 -1
- package/views/time/MultiDayTimelineView.mjs +17 -16
- package/views/time/TimelineView.js +1 -1
- package/views/time/TimelineView.mjs +6 -5
- package/views/time/TimelineViewAllEventsRowContent.js +1 -1
- package/views/time/TimelineViewAllEventsRowContent.mjs +3 -2
- package/views/time/TimelineViewRowContent.js +1 -1
- package/views/time/TimelineViewRowContent.mjs +1 -0
- package/views/week/WeekView.js +1 -1
- package/views/week/WeekView.mjs +5 -4
- package/views/week/WorkWeekView.js +1 -1
- package/views/week/WorkWeekView.mjs +9 -8
package/recurrence/common.js
CHANGED
|
@@ -5,4 +5,4 @@
|
|
|
5
5
|
* Licensed under commercial license. See LICENSE.md in the package root for more information
|
|
6
6
|
*-------------------------------------------------------------------------------------------
|
|
7
7
|
*/
|
|
8
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const s=require("../utils/index.js"),g=require("@progress/kendo-recurrence"),D=require("@progress/kendo-date-math"),r=e=>e.charAt(0).toUpperCase()+e.slice(1),c=["first","second","third","fourth","last"],d=["never","daily","weekly","monthly","yearly"],i=[{day:0,offset:0},{day:1,offset:0},{day:2,offset:0},{day:3,offset:0},{day:4,offset:0},{day:5,offset:0},{day:6,offset:0}],u=[{day:1,offset:0},{day:2,offset:0},{day:3,offset:0},{day:4,offset:0},{day:5,offset:0}],f=[{day:0,offset:0},{day:6,offset:0}],b=e=>{switch(e){case"day":return i;case"weekday":return u;case"weekend":return f}},m=e=>g.parseRule({recurrenceRule:e})||{},h=e=>d.map(t=>({value:t,text:e("Frequencies"+r(t))})),p=e=>s.isPresent(e)&&!s.isNullOrEmptyString(e.freq)?e.freq:"never",R=e=>s.isPresent(e.until)?D.toLocalDate(e.until):null,w=e=>e.dateFormatNames({type:"months",nameType:"wide",standAlone:!0}).map((t,n)=>({text:t,value:n+1})),W=e=>{const t=e.firstDay(),n=e.dateFormatNames({type:"days",nameType:"abbreviated"}).map((a,y)=>({text:a,value:y}));return n.slice(t).concat(n.slice(0,t))},v=(e,t,n)=>{var y;let a;if(s.isPresent(t.byWeekDay))switch(t.byWeekDay.length){case 7:a="day";break;case 5:a="weekday";break;case 2:a="weekend";break;case 1:a=t.byWeekDay[0].day;break;default:a=n.getDay();break}else a=n.getDay();return(y=e.find(o=>a===o.value))!=null?y:e[0]},F=(e,t)=>{const n=e.firstDay(),a=e.dateFormatNames({type:"days",nameType:"wide"}).map((l,k)=>({text:l,value:k})),y=a.slice(n).concat(a.slice(0,n));return[{text:t("WeekdaysDay"),value:"day"},{text:t("WeekdaysWeekday"),value:"weekday"},{text:t("WeekdaysWeekendday"),value:"weekend"}].concat(y)},O=(e,t)=>e.find(n=>n.value===(t.bySetPosition?t.bySetPosition[0]:t.byWeekDay&&t.byWeekDay[0]?t.byWeekDay[0].offset:1))||e[0],S=e=>{const t=[1,2,3,4,-1];return c.map((n,a)=>({text:e("OffsetPositions"+r(n)),value:t[a]}))},P=e=>s.isPresent(e.count)?"count":s.isPresent(e.until)?"until":"never",E=e=>{if(s.isPresent(e.byWeekDay))return"weekday";if(s.isPresent(e.byMonthDay))return"monthday"},M=(e,t)=>e.find(n=>(t.byMonth?t.byMonth[0]:null)===n.value)||e[0],x=(e,t)=>s.isPresent(e.byMonthDay)&&e.byMonthDay.length>0?e.byMonthDay[0]:t.getDate();exports.FREQUENCIES=d;exports.OFFSET_POSITIONS=c;exports.capitalize=r;exports.dayRule=i;exports.getEndRule=P;exports.getExtendedWeekDays=F;exports.getFrequencies=h;exports.getFrequency=p;exports.getMonth=M;exports.getMonthDay=x;exports.getMonths=w;exports.getOffset=O;exports.getOffsets=S;exports.getRepeatOnRule=E;exports.getRule=m;exports.getUntil=R;exports.getWeekDay=v;exports.getWeekDays=W;exports.weekDayRuleFromString=b;exports.weekdayRule=u;exports.weekendRule=f;
|
|
8
|
+
"use client";"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const s=require("../utils/index.js"),g=require("@progress/kendo-recurrence"),D=require("@progress/kendo-date-math"),r=e=>e.charAt(0).toUpperCase()+e.slice(1),c=["first","second","third","fourth","last"],d=["never","daily","weekly","monthly","yearly"],i=[{day:0,offset:0},{day:1,offset:0},{day:2,offset:0},{day:3,offset:0},{day:4,offset:0},{day:5,offset:0},{day:6,offset:0}],u=[{day:1,offset:0},{day:2,offset:0},{day:3,offset:0},{day:4,offset:0},{day:5,offset:0}],f=[{day:0,offset:0},{day:6,offset:0}],b=e=>{switch(e){case"day":return i;case"weekday":return u;case"weekend":return f}},m=e=>g.parseRule({recurrenceRule:e})||{},h=e=>d.map(t=>({value:t,text:e("Frequencies"+r(t))})),p=e=>s.isPresent(e)&&!s.isNullOrEmptyString(e.freq)?e.freq:"never",R=e=>s.isPresent(e.until)?D.toLocalDate(e.until):null,w=e=>e.dateFormatNames({type:"months",nameType:"wide",standAlone:!0}).map((t,n)=>({text:t,value:n+1})),W=e=>{const t=e.firstDay(),n=e.dateFormatNames({type:"days",nameType:"abbreviated"}).map((a,y)=>({text:a,value:y}));return n.slice(t).concat(n.slice(0,t))},v=(e,t,n)=>{var y;let a;if(s.isPresent(t.byWeekDay))switch(t.byWeekDay.length){case 7:a="day";break;case 5:a="weekday";break;case 2:a="weekend";break;case 1:a=t.byWeekDay[0].day;break;default:a=n.getDay();break}else a=n.getDay();return(y=e.find(o=>a===o.value))!=null?y:e[0]},F=(e,t)=>{const n=e.firstDay(),a=e.dateFormatNames({type:"days",nameType:"wide"}).map((l,k)=>({text:l,value:k})),y=a.slice(n).concat(a.slice(0,n));return[{text:t("WeekdaysDay"),value:"day"},{text:t("WeekdaysWeekday"),value:"weekday"},{text:t("WeekdaysWeekendday"),value:"weekend"}].concat(y)},O=(e,t)=>e.find(n=>n.value===(t.bySetPosition?t.bySetPosition[0]:t.byWeekDay&&t.byWeekDay[0]?t.byWeekDay[0].offset:1))||e[0],S=e=>{const t=[1,2,3,4,-1];return c.map((n,a)=>({text:e("OffsetPositions"+r(n)),value:t[a]}))},P=e=>s.isPresent(e.count)?"count":s.isPresent(e.until)?"until":"never",E=e=>{if(s.isPresent(e.byWeekDay))return"weekday";if(s.isPresent(e.byMonthDay))return"monthday"},M=(e,t)=>e.find(n=>(t.byMonth?t.byMonth[0]:null)===n.value)||e[0],x=(e,t)=>s.isPresent(e.byMonthDay)&&e.byMonthDay.length>0?e.byMonthDay[0]:t.getDate();exports.FREQUENCIES=d;exports.OFFSET_POSITIONS=c;exports.capitalize=r;exports.dayRule=i;exports.getEndRule=P;exports.getExtendedWeekDays=F;exports.getFrequencies=h;exports.getFrequency=p;exports.getMonth=M;exports.getMonthDay=x;exports.getMonths=w;exports.getOffset=O;exports.getOffsets=S;exports.getRepeatOnRule=E;exports.getRule=m;exports.getUntil=R;exports.getWeekDay=v;exports.getWeekDays=W;exports.weekDayRuleFromString=b;exports.weekdayRule=u;exports.weekendRule=f;
|
package/recurrence/common.mjs
CHANGED
|
@@ -5,6 +5,7 @@
|
|
|
5
5
|
* Licensed under commercial license. See LICENSE.md in the package root for more information
|
|
6
6
|
*-------------------------------------------------------------------------------------------
|
|
7
7
|
*/
|
|
8
|
+
"use client";
|
|
8
9
|
import { isPresent as s, isNullOrEmptyString as f } from "../utils/index.mjs";
|
|
9
10
|
import { parseRule as i } from "@progress/kendo-recurrence";
|
|
10
11
|
import { toLocalDate as u } from "@progress/kendo-date-math";
|
package/services/itemsService.js
CHANGED
|
@@ -5,4 +5,4 @@
|
|
|
5
5
|
* Licensed under commercial license. See LICENSE.md in the package root for more information
|
|
6
6
|
*-------------------------------------------------------------------------------------------
|
|
7
7
|
*/
|
|
8
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const
|
|
8
|
+
"use client";"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const I=require("react"),h=require("../utils/index.js"),A=require("@progress/kendo-data-query"),r=require("@progress/kendo-date-math");function B(e){const t=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const l in e)if(l!=="default"){const i=Object.getOwnPropertyDescriptor(e,l);Object.defineProperty(t,l,i.get?i:{enumerable:!0,get:()=>e[l]})}}return t.default=e,Object.freeze(t)}const f=B(I),O=(e,{timezone:t},{groups:l,ranges:i})=>{const o=[];return A.orderBy(e,[{field:"start",dir:"asc"},{field:"end",dir:"desc"},{field:"isAllDay",dir:"desc"}]).forEach(a=>{l.forEach(s=>{const d=l.length===1?j(a,s):s;u(a,d)&&i.forEach(n=>{if(m(a,n)){const p=f.createRef(),D=f.createRef(),y=n.end<a.end,R=a.start<n.start,b=r.ZonedDate.fromLocalDate(a.start,t),c=r.ZonedDate.fromLocalDate(a.end,t),v={...a,_ref:D,itemRef:p,head:y,tail:R,order:null,zonedStart:b,zonedEnd:c,group:d,range:n,slots:[],isRecurring:!!a.recurrenceRule,isException:!a.recurrenceRule&&a.recurrenceId!==null&&a.recurrenceId!==void 0,isAllDay:!!a.isAllDay};o.push(v)}})})}),o},j=(e,t)=>({index:0,resources:t.resources.filter(l=>E(e,l))}),E=(e,t)=>t.multiple?(e.dataItem[t.field]||[]).some(l=>t[t.valueField]===l):e.dataItem[t.field]===t[t.valueField],u=(e,t)=>!t.resources.some(l=>l.multiple?!e.dataItem[l.field].some(i=>l[l.valueField]===i):e.dataItem[l.field]!==l[l.valueField]),m=(e,t)=>h.intersects(t.start,t.end,e.start,e.end)&&(t.isAllDay===void 0||!!e.isAllDay==!!t.isAllDay);exports.inGroup=u;exports.inRange=m;exports.toItems=O;
|
|
@@ -5,48 +5,49 @@
|
|
|
5
5
|
* Licensed under commercial license. See LICENSE.md in the package root for more information
|
|
6
6
|
*-------------------------------------------------------------------------------------------
|
|
7
7
|
*/
|
|
8
|
+
"use client";
|
|
8
9
|
import * as f from "react";
|
|
9
|
-
import { intersects as
|
|
10
|
+
import { intersects as h } from "../utils/index.mjs";
|
|
10
11
|
import { orderBy as v } from "@progress/kendo-data-query";
|
|
11
12
|
import { ZonedDate as m } from "@progress/kendo-date-math";
|
|
12
|
-
const S = (i, { timezone: t }, { groups: l, ranges:
|
|
13
|
-
const
|
|
13
|
+
const S = (i, { timezone: t }, { groups: l, ranges: d }) => {
|
|
14
|
+
const s = [];
|
|
14
15
|
return v(i, [
|
|
15
16
|
{ field: "start", dir: "asc" },
|
|
16
17
|
{ field: "end", dir: "desc" },
|
|
17
18
|
{ field: "isAllDay", dir: "desc" }
|
|
18
|
-
]).forEach((
|
|
19
|
-
l.forEach((
|
|
20
|
-
const n = l.length === 1 ? A(
|
|
21
|
-
E(
|
|
22
|
-
if (F(
|
|
23
|
-
const r = f.createRef(), p = f.createRef(), D =
|
|
24
|
-
...
|
|
19
|
+
]).forEach((e) => {
|
|
20
|
+
l.forEach((o) => {
|
|
21
|
+
const n = l.length === 1 ? A(e, o) : o;
|
|
22
|
+
E(e, n) && d.forEach((a) => {
|
|
23
|
+
if (F(e, a)) {
|
|
24
|
+
const r = f.createRef(), p = f.createRef(), D = a.end < e.end, R = e.start < a.start, u = m.fromLocalDate(e.start, t), y = m.fromLocalDate(e.end, t), I = {
|
|
25
|
+
...e,
|
|
25
26
|
_ref: p,
|
|
26
27
|
itemRef: r,
|
|
27
28
|
head: D,
|
|
28
29
|
tail: R,
|
|
29
30
|
order: null,
|
|
30
|
-
zonedStart:
|
|
31
|
-
zonedEnd:
|
|
31
|
+
zonedStart: u,
|
|
32
|
+
zonedEnd: y,
|
|
32
33
|
group: n,
|
|
33
|
-
range:
|
|
34
|
+
range: a,
|
|
34
35
|
slots: [],
|
|
35
|
-
isRecurring: !!
|
|
36
|
-
isException: !
|
|
37
|
-
isAllDay: !!
|
|
36
|
+
isRecurring: !!e.recurrenceRule,
|
|
37
|
+
isException: !e.recurrenceRule && e.recurrenceId !== null && e.recurrenceId !== void 0,
|
|
38
|
+
isAllDay: !!e.isAllDay
|
|
38
39
|
};
|
|
39
|
-
|
|
40
|
+
s.push(I);
|
|
40
41
|
}
|
|
41
42
|
});
|
|
42
43
|
});
|
|
43
|
-
}),
|
|
44
|
+
}), s;
|
|
44
45
|
}, A = (i, t) => ({
|
|
45
46
|
index: 0,
|
|
46
47
|
resources: t.resources.filter((l) => B(i, l))
|
|
47
48
|
}), B = (i, t) => t.multiple ? (i.dataItem[t.field] || []).some((l) => t[t.valueField] === l) : i.dataItem[t.field] === t[t.valueField], E = (i, t) => !t.resources.some(
|
|
48
|
-
(l) => l.multiple ? !i.dataItem[l.field].some((
|
|
49
|
-
), F = (i, t) =>
|
|
49
|
+
(l) => l.multiple ? !i.dataItem[l.field].some((d) => l[l.valueField] === d) : i.dataItem[l.field] !== l[l.valueField]
|
|
50
|
+
), F = (i, t) => h(t.start, t.end, i.start, i.end) && (t.isAllDay === void 0 || !!i.isAllDay == !!t.isAllDay);
|
|
50
51
|
export {
|
|
51
52
|
E as inGroup,
|
|
52
53
|
F as inRange,
|
|
@@ -5,4 +5,4 @@
|
|
|
5
5
|
* Licensed under commercial license. See LICENSE.md in the package root for more information
|
|
6
6
|
*-------------------------------------------------------------------------------------------
|
|
7
7
|
*/
|
|
8
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("@progress/kendo-react-common"),R=require("@progress/kendo-recurrence"),d=require("@progress/kendo-date-math"),i=require("../utils/index.js"),L=(e,{dateRange:r,fields:n,timezone:o})=>e.map(E(n)).reduce(T(r,o,n),[]).filter(a=>!i.isMaster(a.dataItem,n)),E=e=>r=>({uid:t.getter(e.id||"id")(r),start:t.getter(e.start||"start")(r),startTimezone:t.getter(e.startTimezone||"startTimezone")(r),originalStart:t.getter(e.originalStart||"originalStart")(r),end:t.getter(e.end||"end")(r),endTimezone:t.getter(e.endTimezone||"endTimezone")(r),isAllDay:t.getter(e.isAllDay||"isAllDay")(r),title:t.getter(e.title||"title")(r),description:t.getter(e.description||"description")(r),occurrenceId:t.getter("occurrenceId")(r),recurrenceRule:t.getter(e.recurrenceRule||"recurrenceRule")(r),recurrenceExceptions:t.getter(e.recurrenceExceptions||"recurrenceExceptions")(r),recurrenceId:t.getter(e.recurrenceId||"recurrenceId")(r),dataItem:t.clone(r)}),T=(e,r,n)=>(o,c)=>[...o,...c.recurrenceRule&&(c.recurrenceId===null||c.recurrenceId===void 0)&&i.isMaster(c.dataItem,n)?[...z(c,{dateRange:e,timezone:r,fields:n})]:[c]],z=(e,{dateRange:r,timezone:n,fields:o})=>{const c=e.recurrenceRule,a=R.parseRule({recurrenceRule:c});a.start||(a.start=d.ZonedDate.fromLocalDate(e.start,n)),a.end||(a.end=d.ZonedDate.fromLocalDate(e.end,n));const g=e.recurrenceExceptions;g&&(a.exceptionDates=g.map(u=>d.ZonedDate.fromLocalDate(u,n)));const S=r.zonedStart,x=r.zonedEnd,D=R.expand(a,{rangeStart:S,rangeEnd:x});return D.events.length?D.events.map((u,p)=>{const s=t.clone(e),l=t.clone(e.dataItem);return s.recurrenceId=s.uid,i.setField(l,o.recurrenceId,e.uid),s.originalStart=u.start.toLocalDate(),i.setField(l,o.originalStart,u.start.toLocalDate()),s.start=u.start.toLocalDate(),i.setField(l,o.start,u.start.toLocalDate()),s.end=u.end.toLocalDate(),i.setField(l,o.end,u.end.toLocalDate()),s.occurrenceId=String(p),i.setField(l,"occurrenceId",String(p)),s.dataItem=l,s}):[]};exports.toOccurrences=L;
|
|
8
|
+
"use client";"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("@progress/kendo-react-common"),R=require("@progress/kendo-recurrence"),d=require("@progress/kendo-date-math"),i=require("../utils/index.js"),L=(e,{dateRange:r,fields:n,timezone:o})=>e.map(E(n)).reduce(T(r,o,n),[]).filter(a=>!i.isMaster(a.dataItem,n)),E=e=>r=>({uid:t.getter(e.id||"id")(r),start:t.getter(e.start||"start")(r),startTimezone:t.getter(e.startTimezone||"startTimezone")(r),originalStart:t.getter(e.originalStart||"originalStart")(r),end:t.getter(e.end||"end")(r),endTimezone:t.getter(e.endTimezone||"endTimezone")(r),isAllDay:t.getter(e.isAllDay||"isAllDay")(r),title:t.getter(e.title||"title")(r),description:t.getter(e.description||"description")(r),occurrenceId:t.getter("occurrenceId")(r),recurrenceRule:t.getter(e.recurrenceRule||"recurrenceRule")(r),recurrenceExceptions:t.getter(e.recurrenceExceptions||"recurrenceExceptions")(r),recurrenceId:t.getter(e.recurrenceId||"recurrenceId")(r),dataItem:t.clone(r)}),T=(e,r,n)=>(o,c)=>[...o,...c.recurrenceRule&&(c.recurrenceId===null||c.recurrenceId===void 0)&&i.isMaster(c.dataItem,n)?[...z(c,{dateRange:e,timezone:r,fields:n})]:[c]],z=(e,{dateRange:r,timezone:n,fields:o})=>{const c=e.recurrenceRule,a=R.parseRule({recurrenceRule:c});a.start||(a.start=d.ZonedDate.fromLocalDate(e.start,n)),a.end||(a.end=d.ZonedDate.fromLocalDate(e.end,n));const g=e.recurrenceExceptions;g&&(a.exceptionDates=g.map(u=>d.ZonedDate.fromLocalDate(u,n)));const S=r.zonedStart,x=r.zonedEnd,D=R.expand(a,{rangeStart:S,rangeEnd:x});return D.events.length?D.events.map((u,p)=>{const s=t.clone(e),l=t.clone(e.dataItem);return s.recurrenceId=s.uid,i.setField(l,o.recurrenceId,e.uid),s.originalStart=u.start.toLocalDate(),i.setField(l,o.originalStart,u.start.toLocalDate()),s.start=u.start.toLocalDate(),i.setField(l,o.start,u.start.toLocalDate()),s.end=u.end.toLocalDate(),i.setField(l,o.end,u.end.toLocalDate()),s.occurrenceId=String(p),i.setField(l,"occurrenceId",String(p)),s.dataItem=l,s}):[]};exports.toOccurrences=L;
|
|
@@ -5,6 +5,7 @@
|
|
|
5
5
|
* Licensed under commercial license. See LICENSE.md in the package root for more information
|
|
6
6
|
*-------------------------------------------------------------------------------------------
|
|
7
7
|
*/
|
|
8
|
+
"use client";
|
|
8
9
|
import { getter as t, clone as p } from "@progress/kendo-react-common";
|
|
9
10
|
import { parseRule as m, expand as E } from "@progress/kendo-recurrence";
|
|
10
11
|
import { ZonedDate as d } from "@progress/kendo-date-math";
|
package/services/rangeService.js
CHANGED
|
@@ -5,4 +5,4 @@
|
|
|
5
5
|
* Licensed under commercial license. See LICENSE.md in the package root for more information
|
|
6
6
|
*-------------------------------------------------------------------------------------------
|
|
7
7
|
*/
|
|
8
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const
|
|
8
|
+
"use client";"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const d=require("@progress/kendo-date-math"),D=(n,{step:o,timezone:a})=>{const c=[],g=d.ZonedDate.fromLocalDate(n.start,a),i=d.ZonedDate.fromLocalDate(n.end,a);for(let e=g.clone(),r=0;e.getTime()<i.getTime();r++,e=e.addTime(o)){const t=e.clone(),s=t.clone().addTime(o),l=new Date(t.getTime()),m=new Date(s.getTime()),u={index:r,end:m,start:l,zonedStart:t,zonedEnd:s};c.push(u)}return c};exports.toRanges=D;
|
|
@@ -5,20 +5,21 @@
|
|
|
5
5
|
* Licensed under commercial license. See LICENSE.md in the package root for more information
|
|
6
6
|
*-------------------------------------------------------------------------------------------
|
|
7
7
|
*/
|
|
8
|
-
|
|
8
|
+
"use client";
|
|
9
|
+
import { ZonedDate as d } from "@progress/kendo-date-math";
|
|
9
10
|
const f = (t, { step: o, timezone: a }) => {
|
|
10
|
-
const
|
|
11
|
-
for (let e = m.clone(),
|
|
12
|
-
const n = e.clone(),
|
|
13
|
-
index:
|
|
11
|
+
const c = [], m = d.fromLocalDate(t.start, a), g = d.fromLocalDate(t.end, a);
|
|
12
|
+
for (let e = m.clone(), r = 0; e.getTime() < g.getTime(); r++, e = e.addTime(o)) {
|
|
13
|
+
const n = e.clone(), s = n.clone().addTime(o), i = new Date(n.getTime()), l = new Date(s.getTime()), T = {
|
|
14
|
+
index: r,
|
|
14
15
|
end: l,
|
|
15
16
|
start: i,
|
|
16
17
|
zonedStart: n,
|
|
17
|
-
zonedEnd:
|
|
18
|
+
zonedEnd: s
|
|
18
19
|
};
|
|
19
|
-
|
|
20
|
+
c.push(T);
|
|
20
21
|
}
|
|
21
|
-
return
|
|
22
|
+
return c;
|
|
22
23
|
};
|
|
23
24
|
export {
|
|
24
25
|
f as toRanges
|
package/services/slotsService.js
CHANGED
|
@@ -5,4 +5,4 @@
|
|
|
5
5
|
* Licensed under commercial license. See LICENSE.md in the package root for more information
|
|
6
6
|
*-------------------------------------------------------------------------------------------
|
|
7
7
|
*/
|
|
8
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const M=require("react"),y=require("@progress/kendo-date-math"),S=require("../constants/index.js");function D(n){const e=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(n){for(const o in n)if(o!=="default"){const c=Object.getOwnPropertyDescriptor(n,o);Object.defineProperty(e,o,c.get?c:{enumerable:!0,get:()=>n[o]})}}return e.default=n,Object.freeze(e)}const R=D(M),P=(n,{step:e},{groups:o,ranges:c})=>{const a=[];return o.forEach(T=>{c.forEach(i=>{const f=i.zonedStart,d=i.zonedEnd,l=d.timezoneOffset-f.timezoneOffset;for(let t=f.clone(),u=0,m=l<0?l*S.MS_PER_MINUTE*-1:0;t.getTime()<d.getTime();){const _=R.createRef(),r=t.clone(),s=t.addTime(e),g=(s.timezoneOffset-r.timezoneOffset)*S.MS_PER_MINUTE,E=e<=Math.abs(g);m&&E&&(m-=e,t=t.addTime(-e));const O=new Date(r.getTime()),b=new Date(s.getTime()),z={_ref:_,index:u,end:b,start:O,zonedStart:r,zonedEnd:s,range:i,group:T,items:[],isAllDay:y.MS_PER_DAY<=e};a.push(z),t=t.addTime(e),u++}})}),a};exports.toSlots=P;
|
|
8
|
+
"use client";"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const M=require("react"),y=require("@progress/kendo-date-math"),S=require("../constants/index.js");function D(n){const e=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(n){for(const o in n)if(o!=="default"){const c=Object.getOwnPropertyDescriptor(n,o);Object.defineProperty(e,o,c.get?c:{enumerable:!0,get:()=>n[o]})}}return e.default=n,Object.freeze(e)}const R=D(M),P=(n,{step:e},{groups:o,ranges:c})=>{const a=[];return o.forEach(T=>{c.forEach(i=>{const f=i.zonedStart,d=i.zonedEnd,l=d.timezoneOffset-f.timezoneOffset;for(let t=f.clone(),u=0,m=l<0?l*S.MS_PER_MINUTE*-1:0;t.getTime()<d.getTime();){const _=R.createRef(),r=t.clone(),s=t.addTime(e),g=(s.timezoneOffset-r.timezoneOffset)*S.MS_PER_MINUTE,E=e<=Math.abs(g);m&&E&&(m-=e,t=t.addTime(-e));const O=new Date(r.getTime()),b=new Date(s.getTime()),z={_ref:_,index:u,end:b,start:O,zonedStart:r,zonedEnd:s,range:i,group:T,items:[],isAllDay:y.MS_PER_DAY<=e};a.push(z),t=t.addTime(e),u++}})}),a};exports.toSlots=P;
|
|
@@ -5,18 +5,19 @@
|
|
|
5
5
|
* Licensed under commercial license. See LICENSE.md in the package root for more information
|
|
6
6
|
*-------------------------------------------------------------------------------------------
|
|
7
7
|
*/
|
|
8
|
-
|
|
9
|
-
import
|
|
8
|
+
"use client";
|
|
9
|
+
import * as w from "react";
|
|
10
|
+
import { MS_PER_DAY as D } from "@progress/kendo-date-math";
|
|
10
11
|
import { MS_PER_MINUTE as m } from "../constants/index.mjs";
|
|
11
|
-
const v = (
|
|
12
|
+
const v = (M, { step: t }, { groups: l, ranges: z }) => {
|
|
12
13
|
const i = [];
|
|
13
14
|
return l.forEach((E) => {
|
|
14
15
|
z.forEach((o) => {
|
|
15
16
|
const s = o.zonedStart, f = o.zonedEnd, r = f.timezoneOffset - s.timezoneOffset;
|
|
16
17
|
for (let e = s.clone(), a = 0, d = r < 0 ? r * m * -1 : 0; e.getTime() < f.getTime(); ) {
|
|
17
|
-
const T =
|
|
18
|
+
const T = w.createRef(), n = e.clone(), c = e.addTime(t), S = (c.timezoneOffset - n.timezoneOffset) * m, _ = t <= Math.abs(S);
|
|
18
19
|
d && _ && (d -= t, e = e.addTime(-t));
|
|
19
|
-
const R = new Date(n.getTime()), h = new Date(c.getTime()),
|
|
20
|
+
const R = new Date(n.getTime()), h = new Date(c.getTime()), u = {
|
|
20
21
|
_ref: T,
|
|
21
22
|
index: a,
|
|
22
23
|
end: h,
|
|
@@ -26,9 +27,9 @@ const v = (O, { step: t }, { groups: l, ranges: z }) => {
|
|
|
26
27
|
range: o,
|
|
27
28
|
group: E,
|
|
28
29
|
items: [],
|
|
29
|
-
isAllDay:
|
|
30
|
+
isAllDay: D <= t
|
|
30
31
|
};
|
|
31
|
-
i.push(
|
|
32
|
+
i.push(u), e = e.addTime(t), a++;
|
|
32
33
|
}
|
|
33
34
|
});
|
|
34
35
|
}), i;
|
|
@@ -5,4 +5,4 @@
|
|
|
5
5
|
* Licensed under commercial license. See LICENSE.md in the package root for more information
|
|
6
6
|
*-------------------------------------------------------------------------------------------
|
|
7
7
|
*/
|
|
8
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const z=require("react"),m=require("@progress/kendo-react-common"),s=require("../utils/index.js"),B=require("../components/SchedulerForm.js"),G=require("./SchedulerViewSlot.js"),$=require("../hooks/useControlledState.js"),J=require("../context/SchedulerContext.js"),Q=require("../context/SchedulerEditSlotContext.js"),W=require("../hooks/use-slots-selection.js"),X=require("../constants/index.js"),Y=require("../hooks/useEditable.js"),b=require("../context/SchedulerViewContext.js"),y=require("../hooks/use-slots-focus.js");function Z(t){const f=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(t){for(const u in t)if(u!=="default"){const a=Object.getOwnPropertyDescriptor(t,u);Object.defineProperty(f,u,a.get?a:{enumerable:!0,get:()=>t[u]})}}return f.default=t,Object.freeze(f)}const n=Z(z),k=n.forwardRef((t,f)=>{const{_ref:u,onDataAction:a,viewSlot:w,form:T,formItem:O,onFormItemChange:p,..._}=t,[A,q]=n.useState(t.tabIndex),
|
|
8
|
+
"use client";"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const z=require("react"),m=require("@progress/kendo-react-common"),s=require("../utils/index.js"),B=require("../components/SchedulerForm.js"),G=require("./SchedulerViewSlot.js"),$=require("../hooks/useControlledState.js"),J=require("../context/SchedulerContext.js"),Q=require("../context/SchedulerEditSlotContext.js"),W=require("../hooks/use-slots-selection.js"),X=require("../constants/index.js"),Y=require("../hooks/useEditable.js"),b=require("../context/SchedulerViewContext.js"),y=require("../hooks/use-slots-focus.js");function Z(t){const f=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(t){for(const u in t)if(u!=="default"){const a=Object.getOwnPropertyDescriptor(t,u);Object.defineProperty(f,u,a.get?a:{enumerable:!0,get:()=>t[u]})}}return f.default=t,Object.freeze(f)}const n=Z(z),k=n.forwardRef((t,f)=>{const{_ref:u,onDataAction:a,viewSlot:w,form:T,formItem:O,onFormItemChange:p,..._}=t,[A,q]=n.useState(t.tabIndex),r=n.useRef(null),E=n.useRef(null);n.useImperativeHandle(E,()=>({props:t})),n.useImperativeHandle(f,()=>E.current),n.useImperativeHandle(u,()=>r.current);const d=Y.useEditable(t.editable),S=J.useSchedulerFieldsContext(),[c]=b.useSchedulerViewSlotsContext(),[D]=b.useSchedulerViewItemsContext(),[g,x]=b.useSchedulerViewSelectedSlotsContext(),[,h]=b.useSchedulerViewFocusedSlotsContext(),K=T||I.form,V=w||I.viewSlot,[F,l]=$.useControlledState(null,O,t.onFormItemChange),N=g.some(e=>!!(e.current&&e.current.props.start.getTime()===t.start.getTime()&&e.current.props.end.getTime()===t.end.getTime()&&e.current.props.index===t.index&&e.current.props.group.index===t.group.index&&e.current.props.range.index===t.range.index&&e.current.props.isAllDay===t.isAllDay)),C=n.useCallback(()=>{const e={};if(s.setField(e,S.start,new Date(t.start.getTime())),s.setField(e,S.end,new Date(t.end.getTime())),s.setField(e,S.isAllDay,t.isAllDay),t.group.resources.length)for(let o=0;o<t.group.resources.length;o++){const i=t.group.resources[o];if(s.isGroupped(t.group.resources)){const v=s.getField(t.group.resources[o],i.valueField);s.setField(e,i.field,i.multiple?[v]:v)}else s.setField(e,i.field,i.multiple?[]:void 0)}return e},[S.start,S.end,S.isAllDay,t.start,t.end,t.isAllDay,t.group.resources]),R=n.useCallback(e=>{d.select&&x({type:W.SLOTS_SELECT_ACTION.select,slot:r},e.syntheticEvent),t.onFocus&&t.onFocus.call(void 0,e)},[x,d.select,t.onFocus]),L=n.useCallback(e=>{if(d.add){const o=C();l(o,e)}t.onDoubleClick&&t.onDoubleClick.call(void 0,e)},[C,d.add,t.onDoubleClick,l]),P=n.useCallback(e=>{let o;switch(e.syntheticEvent.keyCode){case m.Keys.left:if(!c)return;e.syntheticEvent.preventDefault(),h({type:y.SLOTS_FOCUS_ACTION.left,slot:r},e.syntheticEvent);break;case m.Keys.right:if(!c)return;e.syntheticEvent.preventDefault(),h({type:y.SLOTS_FOCUS_ACTION.right,slot:r},e.syntheticEvent);break;case m.Keys.up:if(!c)return;e.syntheticEvent.preventDefault(),h({type:y.SLOTS_FOCUS_ACTION.up,slot:r},e.syntheticEvent);break;case m.Keys.down:if(!c)return;e.syntheticEvent.preventDefault(),h({type:y.SLOTS_FOCUS_ACTION.down,slot:r},e.syntheticEvent);break;case m.Keys.enter:{if(!c||!d.add)return;const i=C();l(i);break}case m.Keys.tab:o=s.findFirstItem(e.target);break}o&&(e.syntheticEvent.preventDefault(),o.element&&o.element.focus())},[C,h,d.add,l,c]),j=n.useCallback(e=>{a&&a.call(void 0,{type:X.DATA_ACTION.create,series:!1,dataItem:e.value},e),l(null,e.syntheticEvent)},[a,l]),U=n.useCallback(e=>{l(null,e.syntheticEvent)},[l]),H=n.useCallback(e=>{l(null,e)},[l]),M=n.useCallback((e,o)=>{l&&l(e,o)},[l]);return n.useEffect(()=>{const e=c.length&&c[0].current===r.current;q(t.tabIndex!==void 0?t.tabIndex===null?void 0:t.tabIndex:g.length===0&&e&&D.length===0?0:void 0)},[D,t.tabIndex,g.length,c]),n.createElement(Q.SchedulerEditSlotContext,{props:t,form:[F,M]},n.createElement(V,{..._,_ref:r,selected:N,tabIndex:A,onFocus:R,onDoubleClick:L,onKeyDown:P}),F&&n.createElement(K,{dataItem:F,onSubmit:j,onClose:H,onCancel:U}))}),I={viewSlot:G.SchedulerViewSlot,form:B.SchedulerForm};k.displayName="KendoReactSchedulerEditSlot";exports.SchedulerEditSlot=k;exports.schedulerEditSlotDefaultProps=I;
|
|
@@ -5,6 +5,7 @@
|
|
|
5
5
|
* Licensed under commercial license. See LICENSE.md in the package root for more information
|
|
6
6
|
*-------------------------------------------------------------------------------------------
|
|
7
7
|
*/
|
|
8
|
+
"use client";
|
|
8
9
|
import * as l from "react";
|
|
9
10
|
import { Keys as u } from "@progress/kendo-react-common";
|
|
10
11
|
import { setField as m, isGroupped as U, getField as j, findFirstItem as q } from "../utils/index.mjs";
|
package/slots/SchedulerSlot.js
CHANGED
|
@@ -5,4 +5,4 @@
|
|
|
5
5
|
* Licensed under commercial license. See LICENSE.md in the package root for more information
|
|
6
6
|
*-------------------------------------------------------------------------------------------
|
|
7
7
|
*/
|
|
8
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const T=require("react"),q=require("@progress/kendo-react-common"),B=require("../hooks/useSchedulerSlot.js");function F(e){const r=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const a in e)if(a!=="default"){const o=Object.getOwnPropertyDescriptor(e,a);Object.defineProperty(r,a,o.get?o:{enumerable:!0,get:()=>e[a]})}}return r.default=e,Object.freeze(r)}const n=F(T),m=n.forwardRef((e,r)=>{const{onFocus:a,onBlur:o,onClick:c,onMouseEnter:u,onMouseLeave:s,onMouseOut:d,onMouseOver:i,onDoubleClick:k,onKeyDown:b,onKeyPress:f,onKeyUp:y}=e,{slot:l,element:C}=B.useSchedulerSlot(e,r),S=e.tabIndex!==void 0?e.tabIndex===null?void 0:e.tabIndex:e.selected?0:-1,D=n.useMemo(()=>{var v,h;const t=(v=e.isWorkHour)!=null?v:g.isWorkHour,I=(h=e.isWorkDay)!=null?h:g.isWorkDay;return q.classNames("k-scheduler-cell",e.className,"k-slot-cell",{"k-nonwork-hour":!t||!I,"k-selected":e.selected})},[e.className,e.selected,e.isWorkHour,e.isWorkDay]),M=n.useMemo(()=>({userSelect:"none",...e.style}),[e.style]),O=n.useCallback(t=>{a&&a.call(void 0,{syntheticEvent:t,target:l.current})},[a,l]),K=n.useCallback(t=>{o&&o.call(void 0,{syntheticEvent:t,target:l.current})},[o,l]),W=n.useCallback(t=>{c&&c.call(void 0,{syntheticEvent:t,target:l.current})},[c,l]),x=n.useCallback(t=>{i&&i.call(void 0,{syntheticEvent:t,target:l.current})},[i,l]),P=n.useCallback(t=>{d&&d.call(void 0,{syntheticEvent:t,target:l.current})},[d,l]),w=n.useCallback(t=>{u&&u.call(void 0,{syntheticEvent:t,target:l.current})},[u,l]),N=n.useCallback(t=>{s&&s.call(void 0,{syntheticEvent:t,target:l.current})},[s,l]),j=n.useCallback(t=>{k&&k.call(void 0,{syntheticEvent:t,target:l.current})},[k,l]),H=n.useCallback(t=>{b&&b.call(void 0,{syntheticEvent:t,target:l.current})},[b,l]),R=n.useCallback(t=>{f&&f.call(void 0,{syntheticEvent:t,target:l.current})},[f,l]),E=n.useCallback(t=>{y&&y.call(void 0,{syntheticEvent:t,target:l.current})},[y,l]);return n.createElement("div",{ref:C,id:e.id,style:M,className:D,tabIndex:S,"aria-selected":e.selected||void 0,onFocus:O,onBlur:K,onClick:W,onMouseEnter:w,onMouseLeave:N,onMouseOver:x,onMouseOut:P,onDoubleClick:j,onKeyDown:H,onKeyPress:R,onKeyUp:E,"data-slot":!0,"data-slot-allday":e.isAllDay,"data-slot-start":e.start.getTime(),"data-slot-end":e.end.getTime(),"data-slot-group":e.group.index,"data-slot-range":e.range.index,"data-slot-index":e.index},e.children)}),g={isWorkHour:!0,isWorkDay:!0};m.displayName="KendoReactSchedulerSlot";exports.SchedulerSlot=m;exports.schedulerSlotDefaultProps=g;
|
|
8
|
+
"use client";"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const T=require("react"),q=require("@progress/kendo-react-common"),B=require("../hooks/useSchedulerSlot.js");function F(e){const r=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const a in e)if(a!=="default"){const o=Object.getOwnPropertyDescriptor(e,a);Object.defineProperty(r,a,o.get?o:{enumerable:!0,get:()=>e[a]})}}return r.default=e,Object.freeze(r)}const n=F(T),m=n.forwardRef((e,r)=>{const{onFocus:a,onBlur:o,onClick:c,onMouseEnter:u,onMouseLeave:s,onMouseOut:d,onMouseOver:i,onDoubleClick:k,onKeyDown:b,onKeyPress:f,onKeyUp:y}=e,{slot:l,element:C}=B.useSchedulerSlot(e,r),S=e.tabIndex!==void 0?e.tabIndex===null?void 0:e.tabIndex:e.selected?0:-1,D=n.useMemo(()=>{var v,h;const t=(v=e.isWorkHour)!=null?v:g.isWorkHour,I=(h=e.isWorkDay)!=null?h:g.isWorkDay;return q.classNames("k-scheduler-cell",e.className,"k-slot-cell",{"k-nonwork-hour":!t||!I,"k-selected":e.selected})},[e.className,e.selected,e.isWorkHour,e.isWorkDay]),M=n.useMemo(()=>({userSelect:"none",...e.style}),[e.style]),O=n.useCallback(t=>{a&&a.call(void 0,{syntheticEvent:t,target:l.current})},[a,l]),K=n.useCallback(t=>{o&&o.call(void 0,{syntheticEvent:t,target:l.current})},[o,l]),W=n.useCallback(t=>{c&&c.call(void 0,{syntheticEvent:t,target:l.current})},[c,l]),x=n.useCallback(t=>{i&&i.call(void 0,{syntheticEvent:t,target:l.current})},[i,l]),P=n.useCallback(t=>{d&&d.call(void 0,{syntheticEvent:t,target:l.current})},[d,l]),w=n.useCallback(t=>{u&&u.call(void 0,{syntheticEvent:t,target:l.current})},[u,l]),N=n.useCallback(t=>{s&&s.call(void 0,{syntheticEvent:t,target:l.current})},[s,l]),j=n.useCallback(t=>{k&&k.call(void 0,{syntheticEvent:t,target:l.current})},[k,l]),H=n.useCallback(t=>{b&&b.call(void 0,{syntheticEvent:t,target:l.current})},[b,l]),R=n.useCallback(t=>{f&&f.call(void 0,{syntheticEvent:t,target:l.current})},[f,l]),E=n.useCallback(t=>{y&&y.call(void 0,{syntheticEvent:t,target:l.current})},[y,l]);return n.createElement("div",{ref:C,id:e.id,style:M,className:D,tabIndex:S,"aria-selected":e.selected||void 0,onFocus:O,onBlur:K,onClick:W,onMouseEnter:w,onMouseLeave:N,onMouseOver:x,onMouseOut:P,onDoubleClick:j,onKeyDown:H,onKeyPress:R,onKeyUp:E,"data-slot":!0,"data-slot-allday":e.isAllDay,"data-slot-start":e.start.getTime(),"data-slot-end":e.end.getTime(),"data-slot-group":e.group.index,"data-slot-range":e.range.index,"data-slot-index":e.index},e.children)}),g={isWorkHour:!0,isWorkDay:!0};m.displayName="KendoReactSchedulerSlot";exports.SchedulerSlot=m;exports.schedulerSlotDefaultProps=g;
|
package/slots/SchedulerSlot.mjs
CHANGED
|
@@ -5,6 +5,7 @@
|
|
|
5
5
|
* Licensed under commercial license. See LICENSE.md in the package root for more information
|
|
6
6
|
*-------------------------------------------------------------------------------------------
|
|
7
7
|
*/
|
|
8
|
+
"use client";
|
|
8
9
|
import * as a from "react";
|
|
9
10
|
import { classNames as F } from "@progress/kendo-react-common";
|
|
10
11
|
import { useSchedulerSlot as L } from "../hooks/useSchedulerSlot.mjs";
|
|
@@ -5,4 +5,4 @@
|
|
|
5
5
|
* Licensed under commercial license. See LICENSE.md in the package root for more information
|
|
6
6
|
*-------------------------------------------------------------------------------------------
|
|
7
7
|
*/
|
|
8
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const S=require("react"),f=require("./SchedulerSlot.js"),p=require("../hooks/useSlotExpand.js");function b(e){const r=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const l in e)if(l!=="default"){const o=Object.getOwnPropertyDescriptor(e,l);Object.defineProperty(r,l,o.get?o:{enumerable:!0,get:()=>e[l]})}}return r.default=e,Object.freeze(r)}const t=b(S),s=t.forwardRef((e,r)=>{var
|
|
8
|
+
"use client";"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const S=require("react"),f=require("./SchedulerSlot.js"),p=require("../hooks/useSlotExpand.js");function b(e){const r=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const l in e)if(l!=="default"){const o=Object.getOwnPropertyDescriptor(e,l);Object.defineProperty(r,l,o.get?o:{enumerable:!0,get:()=>e[l]})}}return r.default=e,Object.freeze(r)}const t=b(S),s=t.forwardRef((e,r)=>{var a;const{slot:l,_ref:o,...d}=e,i=l||c.slot,u=t.useRef(null),n=t.useRef(null);return t.useImperativeHandle(u,()=>({props:e})),t.useImperativeHandle(o,()=>n.current),t.useImperativeHandle(r,()=>u.current),p.useSlotExpand(n,(a=e.expandable)!=null?a:c.expandable),t.createElement(i,{...d,_ref:n})}),c={slot:f.SchedulerSlot,expandable:!1};s.displayName="KendoReactSchedulerViewSlot";exports.SchedulerViewSlot=s;exports.schedulerViewSlotDefaultProps=c;
|
|
@@ -5,21 +5,22 @@
|
|
|
5
5
|
* Licensed under commercial license. See LICENSE.md in the package root for more information
|
|
6
6
|
*-------------------------------------------------------------------------------------------
|
|
7
7
|
*/
|
|
8
|
+
"use client";
|
|
8
9
|
import * as e from "react";
|
|
9
|
-
import { SchedulerSlot as
|
|
10
|
-
import { useSlotExpand as
|
|
11
|
-
const
|
|
10
|
+
import { SchedulerSlot as i } from "./SchedulerSlot.mjs";
|
|
11
|
+
import { useSlotExpand as p } from "../hooks/useSlotExpand.mjs";
|
|
12
|
+
const f = e.forwardRef(
|
|
12
13
|
(t, s) => {
|
|
13
14
|
var r;
|
|
14
15
|
const { slot: n, _ref: u, ...c } = t, d = n || a.slot, o = e.useRef(null), l = e.useRef(null);
|
|
15
|
-
return e.useImperativeHandle(o, () => ({ props: t })), e.useImperativeHandle(u, () => l.current), e.useImperativeHandle(s, () => o.current),
|
|
16
|
+
return e.useImperativeHandle(o, () => ({ props: t })), e.useImperativeHandle(u, () => l.current), e.useImperativeHandle(s, () => o.current), p(l, (r = t.expandable) != null ? r : a.expandable), /* @__PURE__ */ e.createElement(d, { ...c, _ref: l });
|
|
16
17
|
}
|
|
17
18
|
), a = {
|
|
18
|
-
slot:
|
|
19
|
+
slot: i,
|
|
19
20
|
expandable: !1
|
|
20
21
|
};
|
|
21
|
-
|
|
22
|
+
f.displayName = "KendoReactSchedulerViewSlot";
|
|
22
23
|
export {
|
|
23
|
-
|
|
24
|
+
f as SchedulerViewSlot,
|
|
24
25
|
a as schedulerViewSlotDefaultProps
|
|
25
26
|
};
|
|
@@ -5,4 +5,4 @@
|
|
|
5
5
|
* Licensed under commercial license. See LICENSE.md in the package root for more information
|
|
6
6
|
*-------------------------------------------------------------------------------------------
|
|
7
7
|
*/
|
|
8
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const G=require("react"),J=require("./SchedulerViewTask.js"),f=require("../hooks/useControlledState.js"),L=require("../utils/index.js"),Q=require("../constants/index.js"),U=require("../components/SchedulerRemoveDialog.js"),W=require("../components/SchedulerOccurrenceDialog.js"),k=require("../context/SchedulerContext.js"),X=require("../context/SchedulerEditTaskContext.js"),Y=require("../hooks/useEditable.js");function Z(o){const d=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(o){for(const s in o)if(s!=="default"){const m=Object.getOwnPropertyDescriptor(o,s);Object.defineProperty(d,s,m.get?m:{enumerable:!0,get:()=>o[s]})}}return d.default=o,Object.freeze(d)}const t=Z(G),v=t.forwardRef((o,d)=>{const{_ref:s,onDataAction:m,viewTask:R,removeDialog:w,removeItem:b,onRemoveItemChange:O,occurrenceDialog:T,showOccurrenceDialog:I,onShowOccurrenceDialogChange:E,showRemoveDialog:p,onShowRemoveDialogChange:q,...x}=o,i=t.useRef(null);t.useImperativeHandle(i,()=>({props:o,element:i.current&&i.current.element})),t.useImperativeHandle(s,()=>i.current),t.useImperativeHandle(d,()=>i.current);const y=R||g.viewTask,P=T||g.occurrenceDialog,_=w||g.removeDialog,j=Y.useEditable(o.editable),C=k.useSchedulerFieldsContext(),[A,H]=k.useSchedulerDataContext(),[M,u]=t.useState(null),[r
|
|
8
|
+
"use client";"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const G=require("react"),J=require("./SchedulerViewTask.js"),f=require("../hooks/useControlledState.js"),L=require("../utils/index.js"),Q=require("../constants/index.js"),U=require("../components/SchedulerRemoveDialog.js"),W=require("../components/SchedulerOccurrenceDialog.js"),k=require("../context/SchedulerContext.js"),X=require("../context/SchedulerEditTaskContext.js"),Y=require("../hooks/useEditable.js");function Z(o){const d=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(o){for(const s in o)if(s!=="default"){const m=Object.getOwnPropertyDescriptor(o,s);Object.defineProperty(d,s,m.get?m:{enumerable:!0,get:()=>o[s]})}}return d.default=o,Object.freeze(d)}const t=Z(G),v=t.forwardRef((o,d)=>{const{_ref:s,onDataAction:m,viewTask:R,removeDialog:w,removeItem:b,onRemoveItemChange:O,occurrenceDialog:T,showOccurrenceDialog:I,onShowOccurrenceDialogChange:E,showRemoveDialog:p,onShowRemoveDialogChange:q,...x}=o,i=t.useRef(null);t.useImperativeHandle(i,()=>({props:o,element:i.current&&i.current.element})),t.useImperativeHandle(s,()=>i.current),t.useImperativeHandle(d,()=>i.current);const y=R||g.viewTask,P=T||g.occurrenceDialog,_=w||g.removeDialog,j=Y.useEditable(o.editable),C=k.useSchedulerFieldsContext(),[A,H]=k.useSchedulerDataContext(),[M,u]=t.useState(null),[c,r]=f.useControlledState(null,b,O),[D,a]=f.useControlledState(!1,p,q),[S,l]=f.useControlledState(!1,I,E),N=t.useCallback(e=>{j.remove&&(r(o.dataItem,e),o.isRecurring?l(!0,e):a(!0,e))},[r,o.dataItem,o.isRecurring,l,a]),h=t.useCallback(e=>{u(null),r(null,e),a(!1,e),l(!1,e)},[u,r,a,l]),V=t.useCallback(e=>{m&&c&&m.call(void 0,{type:Q.DATA_ACTION.remove,series:M,dataItem:c}),r(null,e),a(!1,e)},[c,H,a]),z=t.useCallback((e,n)=>{r&&r(e,n)},[r]),F=t.useCallback((e,n)=>{a&&a(e,n)},[a]),K=t.useCallback((e,n)=>{l&&l(e,n)},[l]),$=t.useCallback(e=>{c&&(u(!1),r(o.dataItem,e),a(!0,e)),l(!1,e)},[u,o.dataItem,c,r,a]),B=t.useCallback(e=>{if(c){u(!0);const n=L.findMaster(c,C,A);r(n,e),a(!0,e)}l(!1,e)},[C,c,u,r,a,l]);return t.createElement(X.SchedulerEditTaskContext,{remove:[c,z],showRemoveDialog:[D,F],showOccurrenceDialog:[S,K]},t.createElement(y,{_ref:i,...x,onRemoveClick:N}),S&&t.createElement(P,{dataItem:c,isRemove:c!==null,onClose:h,onOccurrenceClick:$,onSeriesClick:B}),D&&t.createElement(_,{dataItem:c,onClose:h,onCancel:h,onConfirm:V}))}),g={viewTask:J.SchedulerViewTask,occurrenceDialog:W.SchedulerOccurrenceDialog,removeDialog:U.SchedulerRemoveDialog};v.displayName="KendoReactSchedulerEditTask";exports.SchedulerEditTask=v;exports.schedulerEditTaskDefaultProps=g;
|
|
@@ -5,6 +5,7 @@
|
|
|
5
5
|
* Licensed under commercial license. See LICENSE.md in the package root for more information
|
|
6
6
|
*-------------------------------------------------------------------------------------------
|
|
7
7
|
*/
|
|
8
|
+
"use client";
|
|
8
9
|
import * as o from "react";
|
|
9
10
|
import { SchedulerViewTask as B } from "./SchedulerViewTask.mjs";
|
|
10
11
|
import { useControlledState as u } from "../hooks/useControlledState.mjs";
|
package/tasks/SchedulerTask.js
CHANGED
|
@@ -5,4 +5,4 @@
|
|
|
5
5
|
* Licensed under commercial license. See LICENSE.md in the package root for more information
|
|
6
6
|
*-------------------------------------------------------------------------------------------
|
|
7
7
|
*/
|
|
8
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const I=require("react"),R=require("@progress/kendo-react-intl"),u=require("../messages/index.js"),s=require("@progress/kendo-react-common"),d=require("@progress/kendo-svg-icons"),y=require("../hooks/useEditable.js");function E(e){const c=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const
|
|
8
|
+
"use client";"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const I=require("react"),R=require("@progress/kendo-react-intl"),u=require("../messages/index.js"),s=require("@progress/kendo-react-common"),d=require("@progress/kendo-svg-icons"),y=require("../hooks/useEditable.js");function E(e){const c=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const n in e)if(n!=="default"){const a=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(c,n,a.get?a:{enumerable:!0,get:()=>e[n]})}}return c.default=e,Object.freeze(c)}const t=E(I),f=t.forwardRef((e,c)=>{const{_ref:n,onRemoveClick:a}=e,o=t.useRef(null),m=t.useRef(null);t.useImperativeHandle(o,()=>({props:e,element:m.current})),t.useImperativeHandle(c,()=>o.current),t.useImperativeHandle(n,()=>o.current);const b=y.useEditable(e.editable),k=R.useLocalization().toLanguageString(u.deleteTitle,u.messages[u.deleteTitle]),r=e.group.resources.find(l=>!!(l.colorField&&l[l.colorField]!==void 0)),i=r&&r.colorField&&r[r.colorField],g=t.useCallback(l=>{a&&a.call(void 0,{syntheticEvent:l,target:o.current})},[a,o]),v=t.useMemo(()=>s.classNames("k-task",e.className),[e.className]);return t.createElement("div",{id:e.id,ref:m,style:e.style,className:v,tabIndex:e.tabIndex||void 0},i&&t.createElement("span",{className:"k-scheduler-mark",style:{color:i,backgroundColor:i}}),e.isRecurring&&t.createElement(s.IconWrap,{name:"arrow-rotate-cw",icon:d.arrowRotateCwIcon}),e.isException&&t.createElement(s.IconWrap,{name:"arrows-no-repeat",icon:d.arrowsNoRepeatIcon}),e.title,b.remove&&t.createElement("a",{className:"k-link k-event-delete",title:k,"aria-label":k,onClick:g},t.createElement(s.IconWrap,{name:"x",icon:d.xIcon})))});f.displayName="KendoReactSchedulerTask";exports.SchedulerTask=f;
|
package/tasks/SchedulerTask.mjs
CHANGED
|
@@ -5,6 +5,7 @@
|
|
|
5
5
|
* Licensed under commercial license. See LICENSE.md in the package root for more information
|
|
6
6
|
*-------------------------------------------------------------------------------------------
|
|
7
7
|
*/
|
|
8
|
+
"use client";
|
|
8
9
|
import * as e from "react";
|
|
9
10
|
import { useLocalization as R } from "@progress/kendo-react-intl";
|
|
10
11
|
import { deleteTitle as m, messages as g } from "../messages/index.mjs";
|
|
@@ -15,12 +16,12 @@ const x = e.forwardRef(
|
|
|
15
16
|
(t, d) => {
|
|
16
17
|
const { _ref: u, onRemoveClick: n } = t, a = e.useRef(null), i = e.useRef(null);
|
|
17
18
|
e.useImperativeHandle(a, () => ({ props: t, element: i.current })), e.useImperativeHandle(d, () => a.current), e.useImperativeHandle(u, () => a.current);
|
|
18
|
-
const k = w(t.editable), s = R().toLanguageString(m, g[m]),
|
|
19
|
-
(
|
|
20
|
-
), c =
|
|
21
|
-
(
|
|
19
|
+
const k = w(t.editable), s = R().toLanguageString(m, g[m]), o = t.group.resources.find(
|
|
20
|
+
(l) => !!(l.colorField && l[l.colorField] !== void 0)
|
|
21
|
+
), c = o && o.colorField && o[o.colorField], f = e.useCallback(
|
|
22
|
+
(l) => {
|
|
22
23
|
n && n.call(void 0, {
|
|
23
|
-
syntheticEvent:
|
|
24
|
+
syntheticEvent: l,
|
|
24
25
|
target: a.current
|
|
25
26
|
});
|
|
26
27
|
},
|
|
@@ -5,4 +5,4 @@
|
|
|
5
5
|
* Licensed under commercial license. See LICENSE.md in the package root for more information
|
|
6
6
|
*-------------------------------------------------------------------------------------------
|
|
7
7
|
*/
|
|
8
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const d=require("react"),f=require("./SchedulerTask.js");function k(e){const a=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const r in e)if(r!=="default"){const s=Object.getOwnPropertyDescriptor(e,r);Object.defineProperty(a,r,s.get?s:{enumerable:!0,get:()=>e[r]})}}return a.default=e,Object.freeze(a)}const t=k(d),u=t.forwardRef((e,a)=>{const{task:r,_ref:s,...o}=e,n=t.useRef(null),c=t.useRef(null);t.useImperativeHandle(c,()=>({props:e,element:n.current&&n.current.element})),t.useImperativeHandle(s,()=>n.current),t.useImperativeHandle(a,()=>c.current);const i=r||l.task;return t.createElement(i,{...o,_ref:n})}),l={task:f.SchedulerTask};u.displayName="KendoReactSchedulerViewTask";exports.SchedulerViewTask=u;exports.schedulerViewTaskDefaultProps=l;
|
|
8
|
+
"use client";"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const d=require("react"),f=require("./SchedulerTask.js");function k(e){const a=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const r in e)if(r!=="default"){const s=Object.getOwnPropertyDescriptor(e,r);Object.defineProperty(a,r,s.get?s:{enumerable:!0,get:()=>e[r]})}}return a.default=e,Object.freeze(a)}const t=k(d),u=t.forwardRef((e,a)=>{const{task:r,_ref:s,...o}=e,n=t.useRef(null),c=t.useRef(null);t.useImperativeHandle(c,()=>({props:e,element:n.current&&n.current.element})),t.useImperativeHandle(s,()=>n.current),t.useImperativeHandle(a,()=>c.current);const i=r||l.task;return t.createElement(i,{...o,_ref:n})}),l={task:f.SchedulerTask};u.displayName="KendoReactSchedulerViewTask";exports.SchedulerViewTask=u;exports.schedulerViewTaskDefaultProps=l;
|
|
@@ -5,20 +5,21 @@
|
|
|
5
5
|
* Licensed under commercial license. See LICENSE.md in the package root for more information
|
|
6
6
|
*-------------------------------------------------------------------------------------------
|
|
7
7
|
*/
|
|
8
|
+
"use client";
|
|
8
9
|
import * as e from "react";
|
|
9
10
|
import { SchedulerTask as o } from "./SchedulerTask.mjs";
|
|
10
11
|
const k = e.forwardRef(
|
|
11
12
|
(r, a) => {
|
|
12
13
|
const { task: n, _ref: c, ...u } = r, t = e.useRef(null), s = e.useRef(null);
|
|
13
14
|
e.useImperativeHandle(s, () => ({ props: r, element: t.current && t.current.element })), e.useImperativeHandle(c, () => t.current), e.useImperativeHandle(a, () => s.current);
|
|
14
|
-
const l = n ||
|
|
15
|
+
const l = n || i.task;
|
|
15
16
|
return /* @__PURE__ */ e.createElement(l, { ...u, _ref: t });
|
|
16
17
|
}
|
|
17
|
-
),
|
|
18
|
+
), i = {
|
|
18
19
|
task: o
|
|
19
20
|
};
|
|
20
21
|
k.displayName = "KendoReactSchedulerViewTask";
|
|
21
22
|
export {
|
|
22
23
|
k as SchedulerViewTask,
|
|
23
|
-
|
|
24
|
+
i as schedulerViewTaskDefaultProps
|
|
24
25
|
};
|
package/utils/index.js
CHANGED
|
@@ -5,4 +5,4 @@
|
|
|
5
5
|
* Licensed under commercial license. See LICENSE.md in the package root for more information
|
|
6
6
|
*-------------------------------------------------------------------------------------------
|
|
7
7
|
*/
|
|
8
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});require("@progress/kendo-date-math");const f=require("../views/common/utils.js"),T=require("@progress/kendo-react-common"),I=require("@progress/kendo-data-query"),F=e=>e[0],D=e=>e[e.length-1],S=e=>{const r=new Set;return e.forEach(o=>{r.add(o.field)}),r.size===e.length};function A(e,r,o,n){const t={skeleton:"yMMMMEEEEdhm"},s={skeleton:"yMMMMEEEEd"};return n?`${e.formatDate(r,s)}`:`${e.formatDate(r,t)}–${e.formatDate(o,"t")}`}const E=(e,r,o,n=0)=>{if(n===o)return null;let t=null;const s=document.elementFromPoint(e,r);if(!s)return t;if(s.getAttribute("data-slot")==="true")return s;const d=s.style.pointerEvents;return s.style.pointerEvents="none",t=E(e,r,o,n+1),s.style.pointerEvents=d,t},l=(e,r)=>T.getter(r)(e),R=(e,r,o)=>{if(r)return T.setter(r)(e,o)},v=e=>e!=null;function H(e){return new Date(Date.UTC(e.getFullYear(),e.getMonth(),e.getDate(),e.getHours(),e.getMinutes(),e.getSeconds(),e.getMilliseconds()))}const N=(e,r,o)=>{const n=h(e,r)?l(e,r.id):l(e,r.recurrenceId);return o.find(t=>l(t,r.id)===n)},h=(e,r)=>{const o=l(e,r.id),n=l(e,r.recurrenceId),t=l(e,r.recurrenceRule);return!!(o&&t&&n==null)},m=(e,r)=>Math.max(e.getTime(),r.getTime()),M=(e,r)=>Math.min(e.getTime(),r.getTime()),p=(e,r,o,n,t=!1)=>t?m(r,n)-M(e,o)<=r.getTime()-e.getTime()+(n.getTime()-o.getTime()):m(r,n)-M(e,o)<r.getTime()-e.getTime()+(n.getTime()-o.getTime()),y={id:"id",start:"start",startTimezone:"startTimezone",originalStart:"originalStart",end:"end",endTimezone:"endTimezone",isAllDay:"isAllDay",title:"title",description:"description",recurrenceRule:"recurrenceRule",recurrenceId:"recurrenceId",recurrenceExceptions:"recurrenceExceptions"},O=e=>({fields:{...y,...e}}),P=(e,r,o)=>(r.getHours()<e.getHours()||r.getHours()===e.getHours()&&r.getMinutes()<=e.getMinutes())&&(e.getHours()<o.getHours()||o.getHours()===e.getHours()&&e.getMinutes()<o.getMinutes()),k=(e,r,o)=>r<o?r<=e&&e<=o:e<=o||r<=e,G=(e,r)=>{const o=f.toGroupResources(e,r),n=f.toFlatGroupResources(o);return n.length===1?[{index:0,resources:(r||[]).reduce((t,s)=>[...t,...s.data.map(i=>({...i,field:s.field,valueField:s.valueField,colorField:s.colorField,multiple:s.multiple}))],[])}]:n.map((t,s)=>({index:s,resources:t}))},x=e=>e==null,_=e=>x(e)||e.trim&&e.trim().length===0,a=e=>{let r=0;const o=e.slice();return o.sort((n,t)=>n-t).forEach((n,t)=>{o[t]===t&&(r=t+1)}),r},b=(e,r,o,n=!1)=>{let t;return o.forEach(s=>{const i=[];r.sort((u,c)=>u.props.start.getTime()-c.props.start.getTime()).forEach(u=>{if((n||u.props.isAllDay===s.current.props.isAllDay)&&u.props.range.index===s.current.props.range.index&&u.props.group.index===s.current.props.group.index&&p(u.props.start,u.props.end,s.current.props.start,s.current.props.end)){const g=a(i);u===e&&t===void 0&&(t=g),i.splice(g,0,g)}})}),t},z=(e,r)=>{const o=new Set;return r.forEach(t=>{t._order!==void 0&&t._order!==null&&o.add(t._order)}),a(Array.from(o))},q=(e,r,o=!1)=>{r.forEach(n=>n.items.splice(0,n.items.length)),r.forEach(n=>{const t=[];e.forEach(s=>{if((o||s.isAllDay===n.isAllDay)&&s.range.index===n.range.index&&s.group.index===n.group.index&&p(s.start,s.end,n.start,n.end)){const d=a(t);(s.order===null||s.order===void 0||s.order<d)&&(s.order=d),t.splice(s.order,0,s.order),n.items.push(s)}})})},B=(e,r,o=!1)=>{e.forEach(n=>n.slots.splice(0,n.slots.length)),e.forEach(n=>{r.forEach(t=>{(o||n.isAllDay===t.isAllDay)&&n.range.index===t.range.index&&n.group.index===t.group.index&&p(n.start,n.end,t.start,t.end)&&n.slots.push(t)})})},C=(...e)=>{},w=e=>{const r=e.props.items.find(o=>o.order===0)||e.props.items[0];return r&&r._ref.current},U=(e,r,o=!1,n=!1)=>{const t=e.current;if(!t||!r)return null;const s=r.filter(c=>c.current!==null&&c.current.element!==null),i=I.orderBy(s,[{field:"current.props.group.index",dir:"asc"},{field:"current.props.range.index",dir:"asc"},o?{field:""}:{field:"current.props.isAllDay",dir:"desc"},{field:"current.props.start",dir:"asc"}]),d=i.findIndex(c=>c.current!==null&&!!(c.current.props.uid===t.props.uid&&(c.current.props.occurrenceId===void 0||c.current.props.occurrenceId===t.props.occurrenceId)&&c.current.props.group.index===t.props.group.index&&c.current.props.range.index===t.props.range.index&&(o||c.current.props.isAllDay===t.props.isAllDay)));return i[d+(n?-1:1)]},$=(e,r)=>(e.order||0)-(r.order||0);exports.calculateOrder=b;exports.calculateProportionalOrder=z;exports.defaultModelFields=y;exports.findFirstItem=w;exports.findMaster=N;exports.findMissing=a;exports.findNextItem=U;exports.first=F;exports.formatEventTime=A;exports.getField=l;exports.getModelFields=O;exports.intersects=p;exports.isBlank=x;exports.isGroupped=S;exports.isInDaysRange=k;exports.isInTimeRange=P;exports.isMaster=h;exports.isNullOrEmptyString=_;exports.isPresent=v;exports.last=D;exports.mapItemsToSlots=B;exports.mapSlotsToItems=q;exports.noop=C;exports.orderSort=$;exports.setField=R;exports.slotDive=E;exports.toSchedulerGroups=G;exports.toUTCDateTime=H;
|
|
8
|
+
"use client";"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});require("@progress/kendo-date-math");const f=require("../views/common/utils.js"),T=require("@progress/kendo-react-common"),I=require("@progress/kendo-data-query"),F=e=>e[0],D=e=>e[e.length-1],S=e=>{const r=new Set;return e.forEach(o=>{r.add(o.field)}),r.size===e.length};function A(e,r,o,n){const t={skeleton:"yMMMMEEEEdhm"},s={skeleton:"yMMMMEEEEd"};return n?`${e.formatDate(r,s)}`:`${e.formatDate(r,t)}–${e.formatDate(o,"t")}`}const E=(e,r,o,n=0)=>{if(n===o)return null;let t=null;const s=document.elementFromPoint(e,r);if(!s)return t;if(s.getAttribute("data-slot")==="true")return s;const d=s.style.pointerEvents;return s.style.pointerEvents="none",t=E(e,r,o,n+1),s.style.pointerEvents=d,t},l=(e,r)=>T.getter(r)(e),R=(e,r,o)=>{if(r)return T.setter(r)(e,o)},v=e=>e!=null;function H(e){return new Date(Date.UTC(e.getFullYear(),e.getMonth(),e.getDate(),e.getHours(),e.getMinutes(),e.getSeconds(),e.getMilliseconds()))}const N=(e,r,o)=>{const n=h(e,r)?l(e,r.id):l(e,r.recurrenceId);return o.find(t=>l(t,r.id)===n)},h=(e,r)=>{const o=l(e,r.id),n=l(e,r.recurrenceId),t=l(e,r.recurrenceRule);return!!(o&&t&&n==null)},m=(e,r)=>Math.max(e.getTime(),r.getTime()),M=(e,r)=>Math.min(e.getTime(),r.getTime()),p=(e,r,o,n,t=!1)=>t?m(r,n)-M(e,o)<=r.getTime()-e.getTime()+(n.getTime()-o.getTime()):m(r,n)-M(e,o)<r.getTime()-e.getTime()+(n.getTime()-o.getTime()),y={id:"id",start:"start",startTimezone:"startTimezone",originalStart:"originalStart",end:"end",endTimezone:"endTimezone",isAllDay:"isAllDay",title:"title",description:"description",recurrenceRule:"recurrenceRule",recurrenceId:"recurrenceId",recurrenceExceptions:"recurrenceExceptions"},O=e=>({fields:{...y,...e}}),P=(e,r,o)=>(r.getHours()<e.getHours()||r.getHours()===e.getHours()&&r.getMinutes()<=e.getMinutes())&&(e.getHours()<o.getHours()||o.getHours()===e.getHours()&&e.getMinutes()<o.getMinutes()),k=(e,r,o)=>r<o?r<=e&&e<=o:e<=o||r<=e,G=(e,r)=>{const o=f.toGroupResources(e,r),n=f.toFlatGroupResources(o);return n.length===1?[{index:0,resources:(r||[]).reduce((t,s)=>[...t,...s.data.map(i=>({...i,field:s.field,valueField:s.valueField,colorField:s.colorField,multiple:s.multiple}))],[])}]:n.map((t,s)=>({index:s,resources:t}))},x=e=>e==null,_=e=>x(e)||e.trim&&e.trim().length===0,a=e=>{let r=0;const o=e.slice();return o.sort((n,t)=>n-t).forEach((n,t)=>{o[t]===t&&(r=t+1)}),r},b=(e,r,o,n=!1)=>{let t;return o.forEach(s=>{const i=[];r.sort((u,c)=>u.props.start.getTime()-c.props.start.getTime()).forEach(u=>{if((n||u.props.isAllDay===s.current.props.isAllDay)&&u.props.range.index===s.current.props.range.index&&u.props.group.index===s.current.props.group.index&&p(u.props.start,u.props.end,s.current.props.start,s.current.props.end)){const g=a(i);u===e&&t===void 0&&(t=g),i.splice(g,0,g)}})}),t},z=(e,r)=>{const o=new Set;return r.forEach(t=>{t._order!==void 0&&t._order!==null&&o.add(t._order)}),a(Array.from(o))},q=(e,r,o=!1)=>{r.forEach(n=>n.items.splice(0,n.items.length)),r.forEach(n=>{const t=[];e.forEach(s=>{if((o||s.isAllDay===n.isAllDay)&&s.range.index===n.range.index&&s.group.index===n.group.index&&p(s.start,s.end,n.start,n.end)){const d=a(t);(s.order===null||s.order===void 0||s.order<d)&&(s.order=d),t.splice(s.order,0,s.order),n.items.push(s)}})})},B=(e,r,o=!1)=>{e.forEach(n=>n.slots.splice(0,n.slots.length)),e.forEach(n=>{r.forEach(t=>{(o||n.isAllDay===t.isAllDay)&&n.range.index===t.range.index&&n.group.index===t.group.index&&p(n.start,n.end,t.start,t.end)&&n.slots.push(t)})})},C=(...e)=>{},w=e=>{const r=e.props.items.find(o=>o.order===0)||e.props.items[0];return r&&r._ref.current},U=(e,r,o=!1,n=!1)=>{const t=e.current;if(!t||!r)return null;const s=r.filter(c=>c.current!==null&&c.current.element!==null),i=I.orderBy(s,[{field:"current.props.group.index",dir:"asc"},{field:"current.props.range.index",dir:"asc"},o?{field:""}:{field:"current.props.isAllDay",dir:"desc"},{field:"current.props.start",dir:"asc"}]),d=i.findIndex(c=>c.current!==null&&!!(c.current.props.uid===t.props.uid&&(c.current.props.occurrenceId===void 0||c.current.props.occurrenceId===t.props.occurrenceId)&&c.current.props.group.index===t.props.group.index&&c.current.props.range.index===t.props.range.index&&(o||c.current.props.isAllDay===t.props.isAllDay)));return i[d+(n?-1:1)]},$=(e,r)=>(e.order||0)-(r.order||0);exports.calculateOrder=b;exports.calculateProportionalOrder=z;exports.defaultModelFields=y;exports.findFirstItem=w;exports.findMaster=N;exports.findMissing=a;exports.findNextItem=U;exports.first=F;exports.formatEventTime=A;exports.getField=l;exports.getModelFields=O;exports.intersects=p;exports.isBlank=x;exports.isGroupped=S;exports.isInDaysRange=k;exports.isInTimeRange=P;exports.isMaster=h;exports.isNullOrEmptyString=_;exports.isPresent=v;exports.last=D;exports.mapItemsToSlots=B;exports.mapSlotsToItems=q;exports.noop=C;exports.orderSort=$;exports.setField=R;exports.slotDive=E;exports.toSchedulerGroups=G;exports.toUTCDateTime=H;
|
package/utils/index.mjs
CHANGED
|
@@ -5,6 +5,7 @@
|
|
|
5
5
|
* Licensed under commercial license. See LICENSE.md in the package root for more information
|
|
6
6
|
*-------------------------------------------------------------------------------------------
|
|
7
7
|
*/
|
|
8
|
+
"use client";
|
|
8
9
|
import "@progress/kendo-date-math";
|
|
9
10
|
import { toGroupResources as h, toFlatGroupResources as E } from "../views/common/utils.mjs";
|
|
10
11
|
import { getter as x, setter as M } from "@progress/kendo-react-common";
|
|
@@ -30,7 +31,7 @@ const y = (r, e, o, n = 0) => {
|
|
|
30
31
|
return s;
|
|
31
32
|
const d = s.style.pointerEvents;
|
|
32
33
|
return s.style.pointerEvents = "none", t = y(r, e, o, n + 1), s.style.pointerEvents = d, t;
|
|
33
|
-
},
|
|
34
|
+
}, l = (r, e) => x(e)(r), G = (r, e, o) => {
|
|
34
35
|
if (e)
|
|
35
36
|
return M(e)(r, o);
|
|
36
37
|
}, P = (r) => r != null;
|
|
@@ -48,10 +49,10 @@ function b(r) {
|
|
|
48
49
|
);
|
|
49
50
|
}
|
|
50
51
|
const k = (r, e, o) => {
|
|
51
|
-
const n = F(r, e) ?
|
|
52
|
-
return o.find((t) =>
|
|
52
|
+
const n = F(r, e) ? l(r, e.id) : l(r, e.recurrenceId);
|
|
53
|
+
return o.find((t) => l(t, e.id) === n);
|
|
53
54
|
}, F = (r, e) => {
|
|
54
|
-
const o =
|
|
55
|
+
const o = l(r, e.id), n = l(r, e.recurrenceId), t = l(r, e.recurrenceRule);
|
|
55
56
|
return !!(o && t && n == null);
|
|
56
57
|
}, f = (r, e) => Math.max(r.getTime(), e.getTime()), m = (r, e) => Math.min(r.getTime(), e.getTime()), a = (r, e, o, n, t = !1) => t ? f(e, n) - m(r, o) <= e.getTime() - r.getTime() + (n.getTime() - o.getTime()) : f(e, n) - m(r, o) < e.getTime() - r.getTime() + (n.getTime() - o.getTime()), I = {
|
|
57
58
|
id: "id",
|
|
@@ -102,8 +103,8 @@ const k = (r, e, o) => {
|
|
|
102
103
|
const u = [];
|
|
103
104
|
e.sort((i, c) => i.props.start.getTime() - c.props.start.getTime()).forEach((i) => {
|
|
104
105
|
if ((n || i.props.isAllDay === s.current.props.isAllDay) && i.props.range.index === s.current.props.range.index && i.props.group.index === s.current.props.group.index && a(i.props.start, i.props.end, s.current.props.start, s.current.props.end)) {
|
|
105
|
-
const
|
|
106
|
-
i === r && t === void 0 && (t =
|
|
106
|
+
const p = g(u);
|
|
107
|
+
i === r && t === void 0 && (t = p), u.splice(p, 0, p);
|
|
107
108
|
}
|
|
108
109
|
});
|
|
109
110
|
}), t;
|
|
@@ -156,7 +157,7 @@ export {
|
|
|
156
157
|
L as findNextItem,
|
|
157
158
|
v as first,
|
|
158
159
|
N as formatEventTime,
|
|
159
|
-
|
|
160
|
+
l as getField,
|
|
160
161
|
w as getModelFields,
|
|
161
162
|
a as intersects,
|
|
162
163
|
D as isBlank,
|
|
@@ -5,4 +5,4 @@
|
|
|
5
5
|
* Licensed under commercial license. See LICENSE.md in the package root for more information
|
|
6
6
|
*-------------------------------------------------------------------------------------------
|
|
7
7
|
*/
|
|
8
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const P=require("react"),U=require("prop-types"),$=require("../../components/BaseView.js"),b=require("../common/VerticalResourceIterator.js"),c=require("../../messages/index.js"),L=require("../../constants/index.js"),s=require("@progress/kendo-date-math"),N=require("@progress/kendo-react-common"),V=require("@progress/kendo-react-intl"),j=require("../../services/rangeService.js"),W=require("../../services/occurrenceService.js"),F=require("../../services/itemsService.js"),R=require("../../utils/index.js"),Y=require("../../tasks/SchedulerEditTask.js"),G=require("../../slots/SchedulerEditSlot.js"),D=require("../../context/SchedulerContext.js"),M=require("../../context/SchedulerResourceIteratorContext.js"),w=require("@progress/kendo-svg-icons"),K=require("../../services/slotsService.js"),z=require("../../hooks/useCellSync.js");function Z(t){const r=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(t){for(const a in t)if(a!=="default"){const n=Object.getOwnPropertyDescriptor(t,a);Object.defineProperty(r,a,n.get?n:{enumerable:!0,get:()=>t[a]})}}return r.default=t,Object.freeze(r)}const e=Z(P),q=t=>{const{group:r,timezone:a,resources:n}=D.useSchedulerPropsContext(),T=t.editTask||Y.SchedulerEditTask,f=t.editSlot||G.SchedulerEditSlot,m=e.useRef(null),i=N.useDir(m),u=V.useInternationalization(),d=V.useLocalization(),[v]=D.useSchedulerDataContext(),y=D.useSchedulerGroupsContext(),A=D.useSchedulerFieldsContext(),l=D.useSchedulerDateRangeContext(),g=e.useMemo(()=>j.toRanges(l,{step:s.MS_PER_DAY,timezone:a}),[l.start.getTime(),l.end.getTime(),a]),h=e.useMemo(()=>K.toSlots(l,{step:s.MS_PER_DAY},{groups:y,ranges:g}),[l.start.getTime(),l.end.getTime(),a,y,g]),_=e.useMemo(()=>W.toOccurrences(v,{dateRange:l,fields:A,timezone:a}),[v,l.start.getTime(),l.end.getTime(),A,a]),k=e.useMemo(()=>F.toItems(_,{timezone:a},{groups:y,ranges:g}),[_,a,y,g]),p=e.useMemo(()=>N.classNames("k-scheduler-agendaview",t.className),[t.className]);return z.useCellSync({element:m,selector:".k-scheduler-datecolumn",explicitDepth:!1}),z.useCellSync({element:m,selector:".k-scheduler-timecolumn",explicitDepth:!1}),e.useMemo(()=>R.mapItemsToSlots(k,h,!0),[k,h]),e.useMemo(()=>R.mapSlotsToItems(k,h,!0),[k,h]),e.createElement($.BaseView,{ref:m,id:t.id,style:t.style,className:p,props:t,slots:k,ranges:g},e.createElement("div",{className:"k-scheduler-head"},e.createElement(b.VerticalResourceIterator,{resources:n,group:r},e.createElement(M.SchedulerResourceIteratorContext.Consumer,null,({groupIndex:S})=>e.createElement("div",{className:"k-scheduler-row",key:S},e.createElement("div",{className:"k-scheduler-cell k-heading-cell k-group-cell k-scheduler-datecolumn"},d.toLanguageString(c.dateTitle,c.messages[c.dateTitle])),e.createElement("div",{className:"k-scheduler-cell k-heading-cell k-group-cell k-scheduler-timecolumn"},d.toLanguageString(c.timeTitle,c.messages[c.timeTitle])),e.createElement("div",{className:"k-scheduler-cell k-heading-cell k-scheduler-eventcolumn"},d.toLanguageString(c.eventTitle,c.messages[c.eventTitle])))))),e.createElement("div",{className:"k-scheduler-body"},e.createElement(b.VerticalResourceIterator,{resources:n,group:r,nested:!0},e.createElement(M.SchedulerResourceIteratorContext.Consumer,null,({groupIndex:S})=>h.filter(o=>o.group.index===(S||0)).map((o,C,O)=>e.createElement("div",{className:"k-scheduler-row k-scheduler-content",key:`${S}:${C}`},e.createElement(f,{...o,editable:t.editable,row:O.length*(S||0)+C,col:0,slot:t.slot,viewSlot:t.viewSlot,className:"k-scheduler-datecolumn k-group-cell"},e.createElement("div",null,e.createElement("strong",{className:"k-scheduler-agendaday"},u.formatDate(o.zonedStart,"dd")),e.createElement("em",{className:"k-scheduler-agendaweek"},u.formatDate(o.zonedStart,"EEEE")),e.createElement("span",{className:"k-scheduler-agendadate"},u.formatDate(o.zonedStart,"y")))),e.createElement("div",{className:"k-scheduler-cell k-group-content"},o.items.length?o.items.map((E,I)=>e.createElement("div",{className:"k-scheduler-row",key:I},e.createElement("div",{className:"k-scheduler-cell k-scheduler-timecolumn"},e.createElement("div",null,E.tail&&e.createElement(N.IconWrap,{name:i==="rtl"?"caret-alt-right":"caret-alt-left",icon:i==="rtl"?w.caretAltRightIcon:w.caretAltLeftIcon}),E.isAllDay?d.toLanguageString(c.allDay,c.messages[c.allDay]):B(u,E),E.head&&e.createElement(N.IconWrap,{name:i==="rtl"?"caret-alt-left":"caret-alt-right",icon:i==="rtl"?w.caretAltLeftIcon:w.caretAltRightIcon}))),e.createElement("div",{className:"k-scheduler-cell"},e.createElement(T,{key:`${C}:${I}`,...E,onDataAction:t.onDataAction,task:t.task,viewTask:t.viewTask,editable:t.editable})))):e.createElement("div",{className:"k-scheduler-cell k-heading-cell k-group-cell"},d.toLanguageString(c.noEvents,c.messages[c.noEvents])))))))))},B=(t,r)=>{let a="{0:t}-{1:t}";return r.head?a="{0:t}":r.tail&&(a="{1:t}"),t.format(a,r.zonedStart,r.zonedEnd)},x=t=>s.getDate(t),H=(t,r)=>s.getDate(s.addDays(t,r||1)),J=({intl:t,date:r,numberOfDays:a=1,timezone:n})=>{const T=s.ZonedDate.fromLocalDate(r,n),f=a===L.DAYS_IN_WEEK_COUNT?x(s.firstDayInWeek(T,t.firstDay())):x(T),m=H(f,a),i=s.ZonedDate.fromUTCDate(R.toUTCDateTime(f),n),u=s.ZonedDate.fromUTCDate(R.toUTCDateTime(m),n),d=new Date(i.getTime()),v=new Date(u.getTime());return{start:d,end:v,zonedStart:i,zonedEnd:u}},Q={name:"agenda",title:t=>t.toLanguageString(c.agendaViewTitle,c.messages[c.agendaViewTitle]),dateRange:J,selectedDateFormat:"{0:D} - {1:D}",selectedShortDateFormat:"{0:d} - {1:d}",slotDuration:60*24,slotDivision:1,numberOfDays:L.DAYS_IN_WEEK_COUNT},X={title:U.any};q.propTypes=X;q.displayName="KendoReactSchedulerAgendaView";exports.AgendaView=q;exports.agendaViewDefaultProps=Q;
|
|
8
|
+
"use client";"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const P=require("react"),U=require("prop-types"),$=require("../../components/BaseView.js"),b=require("../common/VerticalResourceIterator.js"),c=require("../../messages/index.js"),L=require("../../constants/index.js"),s=require("@progress/kendo-date-math"),N=require("@progress/kendo-react-common"),V=require("@progress/kendo-react-intl"),j=require("../../services/rangeService.js"),W=require("../../services/occurrenceService.js"),F=require("../../services/itemsService.js"),R=require("../../utils/index.js"),Y=require("../../tasks/SchedulerEditTask.js"),G=require("../../slots/SchedulerEditSlot.js"),D=require("../../context/SchedulerContext.js"),M=require("../../context/SchedulerResourceIteratorContext.js"),w=require("@progress/kendo-svg-icons"),K=require("../../services/slotsService.js"),z=require("../../hooks/useCellSync.js");function Z(t){const r=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(t){for(const a in t)if(a!=="default"){const n=Object.getOwnPropertyDescriptor(t,a);Object.defineProperty(r,a,n.get?n:{enumerable:!0,get:()=>t[a]})}}return r.default=t,Object.freeze(r)}const e=Z(P),q=t=>{const{group:r,timezone:a,resources:n}=D.useSchedulerPropsContext(),T=t.editTask||Y.SchedulerEditTask,f=t.editSlot||G.SchedulerEditSlot,m=e.useRef(null),i=N.useDir(m),u=V.useInternationalization(),d=V.useLocalization(),[v]=D.useSchedulerDataContext(),y=D.useSchedulerGroupsContext(),A=D.useSchedulerFieldsContext(),l=D.useSchedulerDateRangeContext(),g=e.useMemo(()=>j.toRanges(l,{step:s.MS_PER_DAY,timezone:a}),[l.start.getTime(),l.end.getTime(),a]),h=e.useMemo(()=>K.toSlots(l,{step:s.MS_PER_DAY},{groups:y,ranges:g}),[l.start.getTime(),l.end.getTime(),a,y,g]),_=e.useMemo(()=>W.toOccurrences(v,{dateRange:l,fields:A,timezone:a}),[v,l.start.getTime(),l.end.getTime(),A,a]),k=e.useMemo(()=>F.toItems(_,{timezone:a},{groups:y,ranges:g}),[_,a,y,g]),p=e.useMemo(()=>N.classNames("k-scheduler-agendaview",t.className),[t.className]);return z.useCellSync({element:m,selector:".k-scheduler-datecolumn",explicitDepth:!1}),z.useCellSync({element:m,selector:".k-scheduler-timecolumn",explicitDepth:!1}),e.useMemo(()=>R.mapItemsToSlots(k,h,!0),[k,h]),e.useMemo(()=>R.mapSlotsToItems(k,h,!0),[k,h]),e.createElement($.BaseView,{ref:m,id:t.id,style:t.style,className:p,props:t,slots:k,ranges:g},e.createElement("div",{className:"k-scheduler-head"},e.createElement(b.VerticalResourceIterator,{resources:n,group:r},e.createElement(M.SchedulerResourceIteratorContext.Consumer,null,({groupIndex:S})=>e.createElement("div",{className:"k-scheduler-row",key:S},e.createElement("div",{className:"k-scheduler-cell k-heading-cell k-group-cell k-scheduler-datecolumn"},d.toLanguageString(c.dateTitle,c.messages[c.dateTitle])),e.createElement("div",{className:"k-scheduler-cell k-heading-cell k-group-cell k-scheduler-timecolumn"},d.toLanguageString(c.timeTitle,c.messages[c.timeTitle])),e.createElement("div",{className:"k-scheduler-cell k-heading-cell k-scheduler-eventcolumn"},d.toLanguageString(c.eventTitle,c.messages[c.eventTitle])))))),e.createElement("div",{className:"k-scheduler-body"},e.createElement(b.VerticalResourceIterator,{resources:n,group:r,nested:!0},e.createElement(M.SchedulerResourceIteratorContext.Consumer,null,({groupIndex:S})=>h.filter(o=>o.group.index===(S||0)).map((o,C,O)=>e.createElement("div",{className:"k-scheduler-row k-scheduler-content",key:`${S}:${C}`},e.createElement(f,{...o,editable:t.editable,row:O.length*(S||0)+C,col:0,slot:t.slot,viewSlot:t.viewSlot,className:"k-scheduler-datecolumn k-group-cell"},e.createElement("div",null,e.createElement("strong",{className:"k-scheduler-agendaday"},u.formatDate(o.zonedStart,"dd")),e.createElement("em",{className:"k-scheduler-agendaweek"},u.formatDate(o.zonedStart,"EEEE")),e.createElement("span",{className:"k-scheduler-agendadate"},u.formatDate(o.zonedStart,"y")))),e.createElement("div",{className:"k-scheduler-cell k-group-content"},o.items.length?o.items.map((E,I)=>e.createElement("div",{className:"k-scheduler-row",key:I},e.createElement("div",{className:"k-scheduler-cell k-scheduler-timecolumn"},e.createElement("div",null,E.tail&&e.createElement(N.IconWrap,{name:i==="rtl"?"caret-alt-right":"caret-alt-left",icon:i==="rtl"?w.caretAltRightIcon:w.caretAltLeftIcon}),E.isAllDay?d.toLanguageString(c.allDay,c.messages[c.allDay]):B(u,E),E.head&&e.createElement(N.IconWrap,{name:i==="rtl"?"caret-alt-left":"caret-alt-right",icon:i==="rtl"?w.caretAltLeftIcon:w.caretAltRightIcon}))),e.createElement("div",{className:"k-scheduler-cell"},e.createElement(T,{key:`${C}:${I}`,...E,onDataAction:t.onDataAction,task:t.task,viewTask:t.viewTask,editable:t.editable})))):e.createElement("div",{className:"k-scheduler-cell k-heading-cell k-group-cell"},d.toLanguageString(c.noEvents,c.messages[c.noEvents])))))))))},B=(t,r)=>{let a="{0:t}-{1:t}";return r.head?a="{0:t}":r.tail&&(a="{1:t}"),t.format(a,r.zonedStart,r.zonedEnd)},x=t=>s.getDate(t),H=(t,r)=>s.getDate(s.addDays(t,r||1)),J=({intl:t,date:r,numberOfDays:a=1,timezone:n})=>{const T=s.ZonedDate.fromLocalDate(r,n),f=a===L.DAYS_IN_WEEK_COUNT?x(s.firstDayInWeek(T,t.firstDay())):x(T),m=H(f,a),i=s.ZonedDate.fromUTCDate(R.toUTCDateTime(f),n),u=s.ZonedDate.fromUTCDate(R.toUTCDateTime(m),n),d=new Date(i.getTime()),v=new Date(u.getTime());return{start:d,end:v,zonedStart:i,zonedEnd:u}},Q={name:"agenda",title:t=>t.toLanguageString(c.agendaViewTitle,c.messages[c.agendaViewTitle]),dateRange:J,selectedDateFormat:"{0:D} - {1:D}",selectedShortDateFormat:"{0:d} - {1:d}",slotDuration:60*24,slotDivision:1,numberOfDays:L.DAYS_IN_WEEK_COUNT},X={title:U.any};q.propTypes=X;q.displayName="KendoReactSchedulerAgendaView";exports.AgendaView=q;exports.agendaViewDefaultProps=Q;
|