@progress/kendo-react-scheduler 9.2.0-develop.8 → 9.2.0-develop.9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cdn/js/kendo-react-scheduler.js +1 -1
- package/editors/SchedulerFormEditor.js +1 -1
- package/editors/SchedulerFormEditor.mjs +48 -45
- package/index.d.mts +58 -99
- package/index.d.ts +58 -99
- package/items/SchedulerProportionalViewItem.js +1 -1
- package/items/SchedulerProportionalViewItem.mjs +99 -85
- package/items/SchedulerViewItem.js +1 -1
- package/items/SchedulerViewItem.mjs +77 -85
- package/package-metadata.mjs +1 -1
- package/package.json +10 -10
- package/services/slotsService.js +1 -1
- package/services/slotsService.mjs +2 -2
- package/views/day/MultiDayView.js +1 -1
- package/views/day/MultiDayView.mjs +269 -246
|
@@ -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 client";"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const ne=require("react"),re=require("./SchedulerItem.js"),
|
|
8
|
+
"use client";"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const ne=require("react"),re=require("./SchedulerItem.js"),I=require("../utils/index.js"),_=require("../views/common/utils.js"),h=require("../constants/index.js"),ie=require("@progress/kendo-react-intl"),M=require("./SchedulerItemContent.js"),w=require("@progress/kendo-react-common"),b=require("@progress/kendo-svg-icons"),ce=require("../hooks/useRowSync.js"),le=require("../hooks/useEditable.js"),N=require("../context/SchedulerViewContext.js"),se=require("../context/SchedulerContext.js");function oe(e){const f=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const d in e)if(d!=="default"){const S=Object.getOwnPropertyDescriptor(e,d);Object.defineProperty(f,d,S.get?S:{enumerable:!0,get:()=>e[d]})}}return f.default=e,Object.freeze(f)}const t=oe(ne),ae=1,j=t.forwardRef((e,f)=>{const{item:d,_ref:S,itemRef:$,...L}=e,E=t.useRef(),c=t.useRef(null),A=t.useRef(null),q=t.useRef(null),G=le.useEditable(e.editable);t.useImperativeHandle(A,()=>({props:e,element:c.current&&c.current.element})),t.useImperativeHandle(f,()=>A.current),t.useImperativeHandle(S,()=>c.current),t.useImperativeHandle($,()=>c.current);const K=d||F.item,y=ie.useInternationalization(),[J]=N.useSchedulerViewItemsContext(),[Q]=N.useSchedulerViewSlotsContext(),R=se.useSchedulerElementContext(),[U,v]=t.useState(!0),[X,Y]=t.useState(!1),u=t.useRef(e.order),P=t.useRef(0),T=w.useDir(R),C=t.useMemo(()=>e.isAllDay?y.toString(e.zonedStart,"t"):y.format("{0:t} - {1:t}",e.zonedStart,e.zonedEnd),[y,e.isAllDay,e.zonedEnd,e.zonedStart]),k=t.useMemo(()=>`(${C}): ${e.title}`,[C,e.title]),V=(n,r)=>{let l=1;return n.forEach(i=>{const a=r.filter(g=>D(i.current.props,g.props));a.length>l&&(l=a.length)}),l},Z=(n,r)=>n.map(i=>r.filter(a=>D(i.current.props,a.props))),D=(n,r)=>I.intersects(n.start,n.end,r.start,r.end)&&n.group.index===r.group.index&&n.range.index===r.range.index&&(e.ignoreIsAllDay||n.isAllDay===r.isAllDay),H=()=>{const n=(Q||[]).filter(s=>s.current&&D(s.current.props,e)),r=c.current&&c.current.element,l=I.first(n);if(n.length===0){v(!1);return}if(!l.current||!r)return;const i=_.getRect(l.current.element),a=[],g=[],x=[];(J||[]).forEach(s=>{s.current&&(s.current.props.dragHint?g.push(s.current):s.current.props.resizeHint?x.push(s.current):a.push(s.current))}),u.current=e.dragHint||e.resizeHint?I.calculateOrder(c.current,e.dragHint?g:x,n,e.ignoreIsAllDay):e.order||0;let m=e.dragHint||e.resizeHint?V(n,e.dragHint?g:x):V(n,a);const ee=Z(n,a);let z=0;if(ee.forEach(s=>{let O=0;s.forEach(o=>{I.intersects(o.props.start,o.props.end,e.start,e.end)&&!(e.dragHint||e.resizeHint)&&o._maxSiblingsPerSlot&&o._maxSiblingsPerSlot>m&&o.element!==r&&(m=o._maxSiblingsPerSlot);const B=_.getRect(o.element);o.props.order!==null&&o.props.order<u.current&&(O=B.top+B.height-i.top-h.BORDER_WIDTH*u.current+ae)}),O>z&&(z=O)}),n.length===0){v(!1);return}const te=G.add?20:0;i.width=e.vertical?i.width/m-h.BORDER_WIDTH-te/m:i.width*n.length-h.BORDER_WIDTH,i.height=e.vertical?i.height*n.length-h.BORDER_WIDTH:(e.resizeHint||e.dragHint)&&m<=1?i.height:e.style&&e.style.height?e.style.height:25,i.left=e.vertical?i.left+u.current*i.width+h.BORDER_WIDTH*u.current:i.left,i.top=e.vertical?i.top:i.top+z+h.BORDER_WIDTH*u.current,P.current=m,_.setRect(r,i),Y(!0),v(!0)},W=t.useCallback(n=>{const r=n&&n[0],l=q.current;E.current!==void 0&&window.cancelAnimationFrame(E.current),l&&r&&(l.width!==r.contentRect.width||l.height!==r.contentRect.height)&&(E.current=window.requestAnimationFrame(()=>{H()})),q.current={width:r.contentRect.width,height:r.contentRect.height}},[H]);t.useEffect(H);const p=c.current&&c.current.element?c.current.element.closest(".k-scheduler-layout"):null;return ce.useRowSync({element:p,selector:".k-resource-row",horizontalAttribute:"data-depth-index",verticalAttribute:"data-resource-index",applyTo:".k-resource-cell",syncHeight:e.isLast}),t.useEffect(()=>{if(!R.current)return;const n=window.ResizeObserver,r=n&&new n(W);return r&&r.observe(R.current),()=>{r&&r.disconnect()}},[W,R]),t.createElement(K,{...L,_ref:c,_maxSiblingsPerSlot:P,_order:u,itemRef:c,style:{visibility:X?void 0:"hidden",display:U?void 0:"none",...e.style}},!e.resizeHint&&t.createElement("span",{className:"k-event-actions"},e.tail&&t.createElement(w.IconWrap,{name:T==="rtl"?"caret-alt-right":"caret-alt-left",icon:T==="rtl"?b.caretAltRightIcon:b.caretAltLeftIcon}),e.isRecurring&&!e.isException&&t.createElement(w.IconWrap,{name:"arrow-rotate-cw",icon:b.arrowRotateCwIcon}),!e.isRecurring&&e.isException&&t.createElement(w.IconWrap,{name:"arrows-no-repeat",icon:b.arrowsNoRepeatIcon})),!e.resizeHint&&t.createElement("div",{title:k},!e.isAllDay&&t.createElement(M.SchedulerItemContent,{className:"k-event-time"},k),t.createElement(M.SchedulerItemContent,null,e.title)))}),F={item:re.SchedulerItem};j.displayName="KendoReactSchedulerViewItem";exports.SchedulerViewItem=j;exports.schedulerViewItemDefaultProps=F;
|
|
@@ -6,124 +6,116 @@
|
|
|
6
6
|
*-------------------------------------------------------------------------------------------
|
|
7
7
|
*/
|
|
8
8
|
"use client";
|
|
9
|
-
import * as
|
|
10
|
-
import { SchedulerItem as
|
|
11
|
-
import { first as
|
|
12
|
-
import { getRect as
|
|
13
|
-
import { BORDER_WIDTH as
|
|
9
|
+
import * as t from "react";
|
|
10
|
+
import { SchedulerItem as Z } from "./SchedulerItem.mjs";
|
|
11
|
+
import { first as p, calculateOrder as ee, intersects as k } from "../utils/index.mjs";
|
|
12
|
+
import { getRect as T, setRect as te } from "../views/common/utils.mjs";
|
|
13
|
+
import { BORDER_WIDTH as d } from "../constants/index.mjs";
|
|
14
14
|
import { useInternationalization as ne } from "@progress/kendo-react-intl";
|
|
15
|
-
import { SchedulerItemContent as
|
|
16
|
-
import { useDir as re, IconWrap as
|
|
17
|
-
import { caretAltRightIcon as ie, caretAltLeftIcon as
|
|
15
|
+
import { SchedulerItemContent as V } from "./SchedulerItemContent.mjs";
|
|
16
|
+
import { useDir as re, IconWrap as y } from "@progress/kendo-react-common";
|
|
17
|
+
import { caretAltRightIcon as ie, caretAltLeftIcon as le, arrowRotateCwIcon as ce, arrowsNoRepeatIcon as se } from "@progress/kendo-svg-icons";
|
|
18
18
|
import { useRowSync as oe } from "../hooks/useRowSync.mjs";
|
|
19
19
|
import { useEditable as ae } from "../hooks/useEditable.mjs";
|
|
20
20
|
import { useSchedulerViewItemsContext as ue, useSchedulerViewSlotsContext as me } from "../context/SchedulerViewContext.mjs";
|
|
21
21
|
import { useSchedulerElementContext as de } from "../context/SchedulerContext.mjs";
|
|
22
|
-
const fe = 1, he =
|
|
23
|
-
(e,
|
|
24
|
-
const { item:
|
|
25
|
-
|
|
26
|
-
const
|
|
27
|
-
() => e.isAllDay ?
|
|
28
|
-
[
|
|
29
|
-
),
|
|
30
|
-
let
|
|
31
|
-
return
|
|
32
|
-
const
|
|
33
|
-
|
|
34
|
-
}),
|
|
35
|
-
},
|
|
36
|
-
const
|
|
37
|
-
if (
|
|
38
|
-
|
|
22
|
+
const fe = 1, he = t.forwardRef(
|
|
23
|
+
(e, N) => {
|
|
24
|
+
const { item: F, _ref: M, itemRef: L, ...W } = e, g = t.useRef(), l = t.useRef(null), H = t.useRef(null), z = t.useRef(null), $ = ae(e.editable);
|
|
25
|
+
t.useImperativeHandle(H, () => ({ props: e, element: l.current && l.current.element })), t.useImperativeHandle(N, () => H.current), t.useImperativeHandle(M, () => l.current), t.useImperativeHandle(L, () => l.current);
|
|
26
|
+
const q = F || ge.item, S = ne(), [B] = ue(), [G] = me(), h = de(), [K, w] = t.useState(!0), [j, J] = t.useState(!1), u = t.useRef(e.order), x = t.useRef(0), A = re(h), D = t.useMemo(
|
|
27
|
+
() => e.isAllDay ? S.toString(e.zonedStart, "t") : S.format("{0:t} - {1:t}", e.zonedStart, e.zonedEnd),
|
|
28
|
+
[S, e.isAllDay, e.zonedEnd, e.zonedStart]
|
|
29
|
+
), P = t.useMemo(() => `(${D}): ${e.title}`, [D, e.title]), _ = (n, r) => {
|
|
30
|
+
let c = 1;
|
|
31
|
+
return n.forEach((i) => {
|
|
32
|
+
const a = r.filter((f) => I(i.current.props, f.props));
|
|
33
|
+
a.length > c && (c = a.length);
|
|
34
|
+
}), c;
|
|
35
|
+
}, Q = (n, r) => n.map((i) => r.filter((a) => I(i.current.props, a.props))), I = (n, r) => k(n.start, n.end, r.start, r.end) && n.group.index === r.group.index && n.range.index === r.range.index && (e.ignoreIsAllDay || n.isAllDay === r.isAllDay), R = () => {
|
|
36
|
+
const n = (G || []).filter((s) => s.current && I(s.current.props, e)), r = l.current && l.current.element, c = p(n);
|
|
37
|
+
if (n.length === 0) {
|
|
38
|
+
w(!1);
|
|
39
39
|
return;
|
|
40
40
|
}
|
|
41
|
-
|
|
42
|
-
if (!t.current || !c.current)
|
|
41
|
+
if (!c.current || !r)
|
|
43
42
|
return;
|
|
44
|
-
const
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
(K || []).forEach((s) => {
|
|
52
|
-
s.current && (s.current.props.dragHint ? o.push(s.current) : s.current.props.resizeHint ? u.push(s.current) : l.push(s.current));
|
|
53
|
-
}), d.current = e.dragHint || e.resizeHint ? te(
|
|
54
|
-
c.current,
|
|
55
|
-
e.dragHint ? o : u,
|
|
56
|
-
t,
|
|
43
|
+
const i = T(c.current.element), a = [], f = [], b = [];
|
|
44
|
+
(B || []).forEach((s) => {
|
|
45
|
+
s.current && (s.current.props.dragHint ? f.push(s.current) : s.current.props.resizeHint ? b.push(s.current) : a.push(s.current));
|
|
46
|
+
}), u.current = e.dragHint || e.resizeHint ? ee(
|
|
47
|
+
l.current,
|
|
48
|
+
e.dragHint ? f : b,
|
|
49
|
+
n,
|
|
57
50
|
e.ignoreIsAllDay
|
|
58
51
|
) : e.order || 0;
|
|
59
|
-
let m = e.dragHint || e.resizeHint ?
|
|
60
|
-
const
|
|
61
|
-
let
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
I(!1);
|
|
52
|
+
let m = e.dragHint || e.resizeHint ? _(n, e.dragHint ? f : b) : _(n, a);
|
|
53
|
+
const X = Q(n, a);
|
|
54
|
+
let v = 0;
|
|
55
|
+
if (X.forEach((s) => {
|
|
56
|
+
let E = 0;
|
|
57
|
+
s.forEach((o) => {
|
|
58
|
+
k(o.props.start, o.props.end, e.start, e.end) && !(e.dragHint || e.resizeHint) && o._maxSiblingsPerSlot && o._maxSiblingsPerSlot > m && o.element !== r && (m = o._maxSiblingsPerSlot);
|
|
59
|
+
const O = T(o.element);
|
|
60
|
+
o.props.order !== null && o.props.order < u.current && (E = O.top + O.height - i.top - d * u.current + fe);
|
|
61
|
+
}), E > v && (v = E);
|
|
62
|
+
}), n.length === 0) {
|
|
63
|
+
w(!1);
|
|
72
64
|
return;
|
|
73
65
|
}
|
|
74
|
-
const
|
|
75
|
-
i.width = e.vertical ? i.width / m -
|
|
76
|
-
},
|
|
77
|
-
(
|
|
78
|
-
const
|
|
79
|
-
|
|
80
|
-
R()
|
|
81
|
-
})),
|
|
66
|
+
const Y = $.add ? 20 : 0;
|
|
67
|
+
i.width = e.vertical ? i.width / m - d - Y / m : i.width * n.length - d, i.height = e.vertical ? i.height * n.length - d : (e.resizeHint || e.dragHint) && m <= 1 ? i.height : e.style && e.style.height ? e.style.height : 25, i.left = e.vertical ? i.left + u.current * i.width + d * u.current : i.left, i.top = e.vertical ? i.top : i.top + v + d * u.current, x.current = m, te(r, i), J(!0), w(!0);
|
|
68
|
+
}, C = t.useCallback(
|
|
69
|
+
(n) => {
|
|
70
|
+
const r = n && n[0], c = z.current;
|
|
71
|
+
g.current !== void 0 && window.cancelAnimationFrame(g.current), c && r && (c.width !== r.contentRect.width || c.height !== r.contentRect.height) && (g.current = window.requestAnimationFrame(() => {
|
|
72
|
+
R();
|
|
73
|
+
})), z.current = { width: r.contentRect.width, height: r.contentRect.height };
|
|
82
74
|
},
|
|
83
|
-
[R
|
|
75
|
+
[R]
|
|
84
76
|
);
|
|
85
|
-
|
|
86
|
-
const
|
|
77
|
+
t.useEffect(R);
|
|
78
|
+
const U = l.current && l.current.element ? l.current.element.closest(".k-scheduler-layout") : null;
|
|
87
79
|
return oe({
|
|
88
|
-
element:
|
|
80
|
+
element: U,
|
|
89
81
|
selector: ".k-resource-row",
|
|
90
82
|
horizontalAttribute: "data-depth-index",
|
|
91
83
|
verticalAttribute: "data-resource-index",
|
|
92
84
|
applyTo: ".k-resource-cell",
|
|
93
85
|
syncHeight: e.isLast
|
|
94
|
-
}),
|
|
86
|
+
}), t.useEffect(() => {
|
|
95
87
|
if (!h.current)
|
|
96
88
|
return;
|
|
97
|
-
const
|
|
98
|
-
return
|
|
99
|
-
|
|
89
|
+
const n = window.ResizeObserver, r = n && new n(C);
|
|
90
|
+
return r && r.observe(h.current), () => {
|
|
91
|
+
r && r.disconnect();
|
|
100
92
|
};
|
|
101
|
-
}, [
|
|
102
|
-
|
|
93
|
+
}, [C, h]), /* @__PURE__ */ t.createElement(
|
|
94
|
+
q,
|
|
103
95
|
{
|
|
104
|
-
...
|
|
105
|
-
_ref:
|
|
106
|
-
_maxSiblingsPerSlot:
|
|
107
|
-
_order:
|
|
108
|
-
itemRef:
|
|
96
|
+
...W,
|
|
97
|
+
_ref: l,
|
|
98
|
+
_maxSiblingsPerSlot: x,
|
|
99
|
+
_order: u,
|
|
100
|
+
itemRef: l,
|
|
109
101
|
style: {
|
|
110
|
-
visibility:
|
|
111
|
-
display:
|
|
102
|
+
visibility: j ? void 0 : "hidden",
|
|
103
|
+
display: K ? void 0 : "none",
|
|
112
104
|
...e.style
|
|
113
105
|
}
|
|
114
106
|
},
|
|
115
|
-
!e.resizeHint && /* @__PURE__ */
|
|
116
|
-
|
|
107
|
+
!e.resizeHint && /* @__PURE__ */ t.createElement("span", { className: "k-event-actions" }, e.tail && /* @__PURE__ */ t.createElement(
|
|
108
|
+
y,
|
|
117
109
|
{
|
|
118
|
-
name:
|
|
119
|
-
icon:
|
|
110
|
+
name: A === "rtl" ? "caret-alt-right" : "caret-alt-left",
|
|
111
|
+
icon: A === "rtl" ? ie : le
|
|
120
112
|
}
|
|
121
|
-
), e.isRecurring && !e.isException && /* @__PURE__ */
|
|
122
|
-
!e.resizeHint && /* @__PURE__ */
|
|
113
|
+
), e.isRecurring && !e.isException && /* @__PURE__ */ t.createElement(y, { name: "arrow-rotate-cw", icon: ce }), !e.isRecurring && e.isException && /* @__PURE__ */ t.createElement(y, { name: "arrows-no-repeat", icon: se })),
|
|
114
|
+
!e.resizeHint && /* @__PURE__ */ t.createElement("div", { title: P }, !e.isAllDay && /* @__PURE__ */ t.createElement(V, { className: "k-event-time" }, P), /* @__PURE__ */ t.createElement(V, null, e.title))
|
|
123
115
|
);
|
|
124
116
|
}
|
|
125
117
|
), ge = {
|
|
126
|
-
item:
|
|
118
|
+
item: Z
|
|
127
119
|
};
|
|
128
120
|
he.displayName = "KendoReactSchedulerViewItem";
|
|
129
121
|
export {
|
package/package-metadata.mjs
CHANGED
|
@@ -10,7 +10,7 @@ const e = {
|
|
|
10
10
|
name: "@progress/kendo-react-scheduler",
|
|
11
11
|
productName: "KendoReact",
|
|
12
12
|
productCodes: ["KENDOUIREACT", "KENDOUICOMPLETE"],
|
|
13
|
-
publishDate:
|
|
13
|
+
publishDate: 1737042755,
|
|
14
14
|
version: "",
|
|
15
15
|
licensingDocsUrl: "https://www.telerik.com/kendo-react-ui"
|
|
16
16
|
};
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@progress/kendo-react-scheduler",
|
|
3
|
-
"version": "9.2.0-develop.
|
|
3
|
+
"version": "9.2.0-develop.9",
|
|
4
4
|
"description": "React Scheduler brings the functionality of Outlook's Calendar to a single UI component. KendoReact Scheduler package",
|
|
5
5
|
"author": "Progress",
|
|
6
6
|
"license": "SEE LICENSE IN LICENSE.md",
|
|
@@ -26,15 +26,15 @@
|
|
|
26
26
|
"@progress/kendo-date-math": "^1.4.1",
|
|
27
27
|
"@progress/kendo-drawing": "^1.21.2",
|
|
28
28
|
"@progress/kendo-licensing": "^1.3.4",
|
|
29
|
-
"@progress/kendo-react-buttons": "9.2.0-develop.
|
|
30
|
-
"@progress/kendo-react-common": "9.2.0-develop.
|
|
31
|
-
"@progress/kendo-react-dateinputs": "9.2.0-develop.
|
|
32
|
-
"@progress/kendo-react-dialogs": "9.2.0-develop.
|
|
33
|
-
"@progress/kendo-react-dropdowns": "9.2.0-develop.
|
|
34
|
-
"@progress/kendo-react-form": "9.2.0-develop.
|
|
35
|
-
"@progress/kendo-react-inputs": "9.2.0-develop.
|
|
36
|
-
"@progress/kendo-react-intl": "9.2.0-develop.
|
|
37
|
-
"@progress/kendo-react-popup": "9.2.0-develop.
|
|
29
|
+
"@progress/kendo-react-buttons": "9.2.0-develop.9",
|
|
30
|
+
"@progress/kendo-react-common": "9.2.0-develop.9",
|
|
31
|
+
"@progress/kendo-react-dateinputs": "9.2.0-develop.9",
|
|
32
|
+
"@progress/kendo-react-dialogs": "9.2.0-develop.9",
|
|
33
|
+
"@progress/kendo-react-dropdowns": "9.2.0-develop.9",
|
|
34
|
+
"@progress/kendo-react-form": "9.2.0-develop.9",
|
|
35
|
+
"@progress/kendo-react-inputs": "9.2.0-develop.9",
|
|
36
|
+
"@progress/kendo-react-intl": "9.2.0-develop.9",
|
|
37
|
+
"@progress/kendo-react-popup": "9.2.0-develop.9",
|
|
38
38
|
"@progress/kendo-svg-icons": "^4.0.0",
|
|
39
39
|
"react": "^16.8.2 || ^17.0.0 || ^18.0.0 || ^19.0.0 || ^19.0.0-rc",
|
|
40
40
|
"react-dom": "^16.8.2 || ^17.0.0 || ^18.0.0 || ^19.0.0 || ^19.0.0-rc"
|
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 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();
|
|
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;
|
|
@@ -14,7 +14,7 @@ const v = (M, { step: t }, { groups: l, ranges: z }) => {
|
|
|
14
14
|
return l.forEach((E) => {
|
|
15
15
|
z.forEach((o) => {
|
|
16
16
|
const s = o.zonedStart, f = o.zonedEnd, r = f.timezoneOffset - s.timezoneOffset;
|
|
17
|
-
for (let e = s.clone(), a = 0, d = r < 0 ? r * m * -1 : 0; e.getTime() < f.getTime();
|
|
17
|
+
for (let e = s.clone(), a = 0, d = r < 0 ? r * m * -1 : 0; e.getTime() < f.getTime(); ) {
|
|
18
18
|
const T = w.createRef(), n = e.clone(), c = e.addTime(t), S = (c.timezoneOffset - n.timezoneOffset) * m, _ = t <= Math.abs(S);
|
|
19
19
|
d && _ && (d -= t, e = e.addTime(-t));
|
|
20
20
|
const R = new Date(n.getTime()), h = new Date(c.getTime()), u = {
|
|
@@ -29,7 +29,7 @@ const v = (M, { step: t }, { groups: l, ranges: z }) => {
|
|
|
29
29
|
items: [],
|
|
30
30
|
isAllDay: D <= t
|
|
31
31
|
};
|
|
32
|
-
i.push(u)
|
|
32
|
+
i.push(u), e = e.addTime(t), a++;
|
|
33
33
|
}
|
|
34
34
|
});
|
|
35
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 client";"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const me=require("react"),c=require("prop-types"),y=require("@progress/kendo-date-math"),ue=require("../../components/BaseView.js"),L=require("../common/HorizontalResourceIterator.js"),Q=require("./DayViewGroupRowContent.js"),p=require("../common/VerticalResourceIterator.js"),j=require("./DayViewAllDayRowContent.js"),ee=require("./DayViewRowContent.js"),te=require("@progress/kendo-react-common"),o=require("../../utils/index.js"),de=require("@progress/kendo-react-intl"),De=require("../../constants/index.js"),ge=require("../../slots/SchedulerEditSlot.js"),we=require("../../items/SchedulerEditItem.js"),W=require("../../context/SchedulerContext.js"),_=require("../../context/SchedulerResourceIteratorContext.js"),ae=require("../../components/CurrentTimeMarket.js"),ye=require("../../components/DateHeaderCell.js"),ne=require("../../services/rangeService.js"),re=require("../../services/slotsService.js"),ke=require("../../services/occurrenceService.js"),oe=require("../../services/itemsService.js");function Se(t){const g=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(t){for(const n in t)if(n!=="default"){const k=Object.getOwnPropertyDescriptor(t,n);Object.defineProperty(g,n,k.get?k:{enumerable:!0,get:()=>t[n]})}}return g.default=t,Object.freeze(g)}const a=Se(me),H=0,O=1,Te=a.createElement("div",{className:"k-scheduler-cell k-side-cell"}),G=t=>{const{group:g,timezone:n,resources:k}=W.useSchedulerPropsContext(),h=de.useInternationalization(),q=t.editItem||we.SchedulerEditItem,M=t.editSlot||ge.SchedulerEditSlot,v=t.showWorkHours,d=t.numberOfDays||w.numberOfDays,E=t.slotDivisions||w.slotDivisions,U=t.slotDuration||w.slotDuration,b=t.workWeekStart||w.workWeekStart,F=t.workWeekEnd||w.workWeekEnd,Y=t.currentTimeMarker===!1?!1:w.currentTimeMarker,V=h.parseDate(t.workDayStart||t.isWorkDayStart||w.isWorkDayStart),N=h.parseDate(t.workDayEnd||t.isWorkDayEnd||w.isWorkDayEnd),Z=h.parseDate(t.startTime||w.startTime),B=h.parseDate(t.endTime||w.endTime),[K]=W.useSchedulerDataContext(),f=W.useSchedulerGroupsContext(),P=W.useSchedulerOrientationContext(),X=W.useSchedulerFieldsContext(),l=W.useSchedulerDateRangeContext(),R=a.useMemo(()=>v?V:Z,[v,V,Z]),C=a.useMemo(()=>v?N:B,[v,N,B]),x=a.useMemo(()=>ne.toRanges(l,{step:y.MS_PER_DAY*d,timezone:n}).map(e=>({...e,isAllDay:!0})),[l.start.getTime(),l.end.getTime(),d]),m=a.useMemo(()=>ne.toRanges(l,{step:y.MS_PER_DAY,timezone:n}).map(e=>({...e,isAllDay:!1})),[l.start.getTime(),l.end.getTime(),n]),$=a.useMemo(()=>re.toSlots(l,{step:y.MS_PER_DAY},{groups:f,ranges:x}),[l.start.getTime(),l.end.getTime(),n,x,f]),S=a.useMemo(()=>re.toSlots(l,{step:U*De.MS_PER_MINUTE/E},{groups:f,ranges:m}).filter(e=>C.getTime()===R.getTime()||o.isInTimeRange(e.zonedStart,R,C)),[l.start.getTime(),l.end.getTime(),U,E,R.getTime(),C.getTime(),f,m]),z=a.useMemo(()=>ke.toOccurrences(K,{dateRange:l,fields:X,timezone:n}),[K,l.start.getTime(),l.end.getTime(),X,n]),ie=a.useMemo(()=>z.filter(e=>e.isAllDay),[z]),se=a.useMemo(()=>z.filter(e=>!e.isAllDay),[z]),A=a.useMemo(()=>oe.toItems(ie,{timezone:n},{groups:f,ranges:x}),[z,n,f,x]),I=a.useMemo(()=>oe.toItems(se,{timezone:n},{groups:f,ranges:m}).filter(e=>R.getTime()===C.getTime()||o.isInTimeRange(e.zonedStart,R,C)||o.isInTimeRange(e.zonedEnd,R,C)||o.isInTimeRange(new Date(e.zonedEnd.getTime()-(e.zonedEnd.getTime()-e.zonedStart.getTime())/2),R,C)),[z,n,f,m,R.getTime(),C.getTime()]);a.useMemo(()=>o.mapItemsToSlots(A,$,!1),[A,$]),a.useMemo(()=>o.mapSlotsToItems(A,$,!1),[A,$]),a.useMemo(()=>o.mapItemsToSlots(I,S,!1),[I,S]),a.useMemo(()=>o.mapSlotsToItems(I,S,!1),[I,S]);const J=a.createElement(_.SchedulerResourceIteratorContext.Consumer,null,({groupIndex:e})=>a.createElement("div",{className:"k-scheduler-row",key:e},m.map((r,D)=>a.createElement(ye.DateHeaderCell,{as:t.dateHeaderCell,key:D,date:y.ZonedDate.fromLocalDate(new Date(r.zonedEnd.getTime()-(r.zonedEnd.getTime()-r.zonedStart.getTime())/2),n),start:r.start,end:r.end,format:{skeleton:"MEd"}})))),le=a.createElement(_.SchedulerResourceIteratorContext.Consumer,null,({groupIndex:e})=>a.createElement("div",{key:e,className:"k-scheduler-row"},x.map((r,D)=>$.filter(u=>u.group.index===e&&u.range.index===D).map((u,i,s)=>a.createElement(M,{...u,onDataAction:t.onDataAction,form:t.form,slot:t.slot,viewSlot:t.viewSlot,key:`${u.start.getTime()}:${u.group.index}`,row:0,col:P==="horizontal"?s.length*(e||0)+i:i,isWorkDay:0<=u.zonedStart.getDay()+(d-b)&&(u.zonedStart.getDay()+(d-b))%d<=F+(d-b),expandable:!0}))))),ce=a.useMemo(()=>te.classNames(t.name==="week"?"k-scheduler-weekview":"k-scheduler-dayview",t.className),[t.className]);return a.createElement(ue.BaseView,{id:t.id,props:t,style:t.style,className:ce,ranges:[...x,...m],slots:[...$,...S]},a.createElement("div",{className:"k-scheduler-head"},P==="horizontal"?a.createElement(a.Fragment,null,a.createElement(L.HorizontalResourceIterator,{nested:!0,group:g,resources:k,rowContent:Q.DayViewGroupRowContent,childRowContent:Q.DayViewGroupRowContent},J),a.createElement(L.HorizontalResourceIterator,{group:g,resources:k,rowContent:j.DayViewAllDayRowContent,childRowContent:j.DayViewAllDayRowContent},le),A.map(e=>a.createElement(q,{key:e.isRecurring?`${e.uid}:${e.group.index}:${e.range.index}:${e.originalStart}`:`${e.uid}:${e.group.index}:${e.range.index}`,...e,form:t.form,onDataAction:t.onDataAction,item:t.item,viewItem:t.viewItem,editable:t.editable,vertical:!1}))):a.createElement(p.VerticalResourceIterator,{group:g,resources:k,cellContent:Te},J)),a.createElement("div",{className:"k-scheduler-body"},P==="horizontal"?a.createElement(a.Fragment,null,S.filter(e=>e.group.index===H&&e.range.index===H).map((e,r)=>a.createElement(a.Fragment,{key:e.index},a.createElement(L.HorizontalResourceIterator,{nested:!1,group:g,resources:k,rowContent:ee.DayViewRowContent,rowContentProps:{timeHeaderCell:t.timeHeaderCell,isMaster:r%E===0,isLast:(r+1)%E===0,slot:e}},a.createElement(_.SchedulerResourceIteratorContext.Consumer,null,({groupIndex:D})=>a.createElement("div",{className:te.classNames("k-scheduler-row",{"k-middle-row":(r+1)%E!==0})},m.map((u,i)=>S.filter(s=>s.index===e.index&&s.range.index===i&&s.group.index===D).map(s=>a.createElement(M,{key:`${s.start.getTime()}:${s.group.index}`,...s,onDataAction:t.onDataAction,slot:t.slot,viewSlot:t.viewSlot,form:t.form,row:r+O,col:m.length*(D||0)+i,isWorkHour:o.isInTimeRange(s.zonedStart,V,N),isWorkDay:o.isInDaysRange(s.zonedEnd.getDay(),b,F),editable:t.editable})))))))),Y!==!1&&o.intersects(o.first(m).start,o.last(m).end,new Date,new Date,!0)&&a.createElement(ae.CurrentTimeMarker,null)):a.createElement(a.Fragment,null,a.createElement(p.VerticalResourceIterator,{nested:!0,group:g,resources:k},a.createElement(_.SchedulerResourceIteratorContext.Consumer,null,({groupIndex:e})=>a.createElement(a.Fragment,{key:e},a.createElement("div",{className:"k-scheduler-row"},a.createElement(j.DayViewAllDayRowContent,{groupIndex:e},x.map((r,D)=>{const u=S.filter(i=>i.group.index===e&&i.range.index===H).length;return $.filter(i=>i.group.index===e&&i.range.index===D).map((i,s)=>a.createElement(M,{slot:t.slot,viewSlot:t.viewSlot,form:t.form,...i,onDataAction:t.onDataAction,key:`${i.start.getTime()}:${i.group.index}`,className:"k-scheduler-alldays-slot",row:u*(e||0)+(e||0)*O,col:s,expandable:!0}))}))),S.filter(r=>r.group.index===e&&r.range.index===H).map((r,D,u)=>a.createElement("div",{className:"k-scheduler-row",key:r.index},a.createElement(ee.DayViewRowContent,{slot:r,isMaster:D%E===0,isLast:(D+1)%E===0,timeHeaderCell:t.timeHeaderCell},m.map((i,s)=>S.filter(T=>T.index===r.index&&T.group.index===e&&T.range.index===s).map(T=>a.createElement(M,{slot:t.slot,viewSlot:t.viewSlot,form:t.form,onDataAction:t.onDataAction,...T,key:`${T.start.getTime()}:${T.group.index}`,row:u.length*(e||0)+D+(e||0)*O+O,col:s,editable:t.editable,isWorkHour:o.isInTimeRange(T.zonedStart,V,N),isWorkDay:0<=T.zonedStart.getDay()+(d-b)&&(T.zonedStart.getDay()+(d-b))%d<=F+(d-b)})))))),Y!==!1&&o.intersects(o.first(m).start,o.last(m).end,new Date,new Date,!0)&&a.createElement(ae.CurrentTimeMarker,{groupIndex:e})))),A.map(e=>a.createElement(q,{key:e.isRecurring?`${e.uid}:${e.group.index}:${e.range.index}:${e.originalStart}`:`${e.uid}:${e.group.index}:${e.range.index}`,...e,onDataAction:t.onDataAction,viewItem:t.viewItem,item:t.item,form:t.form,editable:t.editable,vertical:!1}))),I.map(e=>a.createElement(q,{key:e.isRecurring?`${e.uid}:${e.group.index}:${e.range.index}:${e.originalStart}`:`${e.uid}:${e.group.index}:${e.range.index}`,...e,format:"t",onDataAction:t.onDataAction,viewItem:t.viewItem,item:t.item,form:t.form,editable:t.editable,vertical:!0}))))},Ee=({date:t,numberOfDays:g=1,timezone:n})=>{const k=y.ZonedDate.fromLocalDate(t,n),h=y.getDate(k),q=y.addDays(h,g),M=y.ZonedDate.fromUTCDate(o.toUTCDateTime(h),n),v=y.ZonedDate.fromUTCDate(o.toUTCDateTime(q),n),d=new Date(M.getTime()),E=new Date(v.getTime());return{start:d,end:E,zonedStart:M,zonedEnd:v}},w={name:"multi-day",title:"Multi Day",currentTimeMarker:!0,dateRange:Ee,selectedDateFormat:"{0:D} - {1:D}",selectedShortDateFormat:"{0:d} - {1:d}",numberOfDays:1,startTime:"00:00",endTime:"23:59",isWorkDayStart:"08:00",isWorkDayEnd:"17:00",workWeekStart:y.Day.Monday,workWeekEnd:y.Day.Friday,slotDivisions:2,slotDuration:60,showCurrentTime:!0,defaultShowWorkHours:!0};G.propTypes={currentTimeMarker:c.bool,name:c.string,numberOfDays:c.number,startTime:c.string,endTime:c.string,workDayStart:c.string,workDayEnd:c.string,workWeekStart:c.number,workWeekEnd:c.any,slotDivisions:c.number,slotDuration:c.number,showWorkHours:c.bool,selectedDateFormat:c.string,selectedShortDateFormat:c.string};G.displayName="KendoReactSchedulerMultiDayView";exports.MultiDayView=G;exports.multiDayViewDefaultProps=w;
|
|
8
|
+
"use client";"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const he=require("react"),u=require("prop-types"),S=require("@progress/kendo-date-math"),ve=require("../../components/BaseView.js"),L=require("../common/HorizontalResourceIterator.js"),ce=require("./DayViewGroupRowContent.js"),me=require("../common/VerticalResourceIterator.js"),j=require("./DayViewAllDayRowContent.js"),ue=require("./DayViewRowContent.js"),de=require("@progress/kendo-react-common"),s=require("../../utils/index.js"),Me=require("@progress/kendo-react-intl"),be=require("../../constants/index.js"),xe=require("../../slots/SchedulerEditSlot.js"),$e=require("../../items/SchedulerEditItem.js"),I=require("../../context/SchedulerContext.js"),H=require("../../context/SchedulerResourceIteratorContext.js"),De=require("../../components/CurrentTimeMarket.js"),Ae=require("../../components/DateHeaderCell.js"),ge=require("../../services/rangeService.js"),we=require("../../services/slotsService.js"),ze=require("../../services/occurrenceService.js"),ye=require("../../services/itemsService.js");function We(e){const g=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const o in e)if(o!=="default"){const k=Object.getOwnPropertyDescriptor(e,o);Object.defineProperty(g,o,k.get?k:{enumerable:!0,get:()=>e[o]})}}return g.default=e,Object.freeze(g)}const a=We(he),O=0,F=1,qe=a.createElement("div",{className:"k-scheduler-cell k-side-cell"}),G=e=>{var Q,p,ee,te,ae,ne,re,oe,ie,se,le;const{group:g,timezone:o,resources:k}=I.useSchedulerPropsContext(),b=Me.useInternationalization(),V=e.editItem||$e.SchedulerEditItem,T=e.editSlot||xe.SchedulerEditSlot,x=e.showWorkHours,d=(Q=e.numberOfDays)!=null?Q:y.numberOfDays,f=(p=e.slotDivisions)!=null?p:y.slotDivisions,U=(ee=e.slotDuration)!=null?ee:y.slotDuration,R=(te=e.workWeekStart)!=null?te:y.workWeekStart,N=(ae=e.workWeekEnd)!=null?ae:y.workWeekEnd,Y=e.currentTimeMarker===!1?!1:y.currentTimeMarker,A=b.parseDate((re=(ne=e.workDayStart)!=null?ne:e.isWorkDayStart)!=null?re:y.isWorkDayStart),z=b.parseDate((ie=(oe=e.workDayEnd)!=null?oe:e.isWorkDayEnd)!=null?ie:y.isWorkDayEnd),Z=b.parseDate((se=e.startTime)!=null?se:y.startTime),B=b.parseDate((le=e.endTime)!=null?le:y.endTime),[K]=I.useSchedulerDataContext(),C=I.useSchedulerGroupsContext(),P=I.useSchedulerOrientationContext(),X=I.useSchedulerFieldsContext(),l=I.useSchedulerDateRangeContext(),h=a.useMemo(()=>x?A:Z,[x,A,Z]),v=a.useMemo(()=>x?z:B,[x,z,B]),$=a.useMemo(()=>ge.toRanges(l,{step:S.MS_PER_DAY*d,timezone:o}).map(t=>({...t,isAllDay:!0})),[l.start.getTime(),l.end.getTime(),d]),c=a.useMemo(()=>ge.toRanges(l,{step:S.MS_PER_DAY,timezone:o}).map(t=>({...t,isAllDay:!1})),[l.start.getTime(),l.end.getTime(),o]),M=a.useMemo(()=>we.toSlots(l,{step:S.MS_PER_DAY},{groups:C,ranges:$}),[l.start.getTime(),l.end.getTime(),o,$,C]),D=a.useMemo(()=>we.toSlots(l,{step:U*be.MS_PER_MINUTE/f},{groups:C,ranges:c}).filter(t=>v.getTime()===h.getTime()||s.isInTimeRange(t.zonedStart,h,v)),[l.start.getTime(),l.end.getTime(),U,f,h.getTime(),v.getTime(),C,c]),W=a.useMemo(()=>ze.toOccurrences(K,{dateRange:l,fields:X,timezone:o}),[K,l.start.getTime(),l.end.getTime(),X,o]),Se=a.useMemo(()=>W.filter(t=>t.isAllDay),[W]),ke=a.useMemo(()=>W.filter(t=>!t.isAllDay),[W]),q=a.useMemo(()=>ye.toItems(Se,{timezone:o},{groups:C,ranges:$}),[W,o,C,$]),_=a.useMemo(()=>ye.toItems(ke,{timezone:o},{groups:C,ranges:c}).filter(t=>h.getTime()===v.getTime()||s.isInTimeRange(t.zonedStart,h,v)||s.isInTimeRange(t.zonedEnd,h,v)||s.isInTimeRange(new Date(t.zonedEnd.getTime()-(t.zonedEnd.getTime()-t.zonedStart.getTime())/2),h,v)),[W,o,C,c,h.getTime(),v.getTime()]);a.useMemo(()=>s.mapItemsToSlots(q,M,!1),[q,M]),a.useMemo(()=>s.mapSlotsToItems(q,M,!1),[q,M]),a.useMemo(()=>s.mapItemsToSlots(_,D,!1),[_,D]),a.useMemo(()=>s.mapSlotsToItems(_,D,!1),[_,D]);const J=a.createElement(H.SchedulerResourceIteratorContext.Consumer,null,({groupIndex:t})=>a.createElement("div",{className:"k-scheduler-row",key:t},c.map((n,i)=>a.createElement(Ae.DateHeaderCell,{as:e.dateHeaderCell,key:i,date:S.ZonedDate.fromLocalDate(new Date(n.zonedEnd.getTime()-(n.zonedEnd.getTime()-n.zonedStart.getTime())/2),o),start:n.start,end:n.end,format:{skeleton:"MEd"}})))),Te=a.createElement(H.SchedulerResourceIteratorContext.Consumer,null,({groupIndex:t})=>a.createElement("div",{key:t,className:"k-scheduler-row"},$.map((n,i)=>M.filter(r=>r.group.index===t&&r.range.index===i).map((r,w,m)=>a.createElement(T,{...r,onDataAction:e.onDataAction,form:e.form,slot:e.slot,viewSlot:e.viewSlot,key:`${r.start.getTime()}:${r.group.index}`,row:0,col:P==="horizontal"?m.length*(t||0)+w:w,isWorkDay:0<=r.zonedStart.getDay()+(d-R)&&(r.zonedStart.getDay()+(d-R))%d<=N+(d-R),expandable:!0}))))),Ee=a.useMemo(()=>de.classNames(e.name==="week"?"k-scheduler-weekview":"k-scheduler-dayview",e.className),[e.name,e.className]),fe=a.useCallback((t,n,i)=>c.map((r,w)=>D.filter(m=>m.index===t.index&&m.range.index===w&&m.group.index===i).map(m=>a.createElement(T,{key:`${m.start.getTime()}:${m.group.index}`,...m,onDataAction:e.onDataAction,slot:e.slot,viewSlot:e.viewSlot,form:e.form,row:n+F,col:c.length*(i||0)+w,isWorkHour:s.isInTimeRange(m.zonedStart,A,z),isWorkDay:s.isInDaysRange(m.zonedEnd.getDay(),R,N),editable:e.editable}))),[c,T,e.editable,e.form,e.onDataAction,e.slot,e.viewSlot,D,z,A,N,R]),Re=a.useCallback((t,n,i)=>M.filter(r=>r.group.index===n&&r.range.index===i).map((r,w)=>a.createElement(T,{slot:e.slot,viewSlot:e.viewSlot,form:e.form,...r,onDataAction:e.onDataAction,key:`${r.start.getTime()}:${r.group.index}`,className:"k-scheduler-alldays-slot",row:t*(n||0)+(n||0)*F,col:w,expandable:!0})),[T,M,e.form,e.onDataAction,e.slot,e.viewSlot]),Ce=a.useCallback((t,n,i,r)=>c.map((w,m)=>D.filter(E=>E.index===t.index&&E.group.index===i&&E.range.index===m).map(E=>a.createElement(T,{slot:e.slot,viewSlot:e.viewSlot,form:e.form,onDataAction:e.onDataAction,...E,key:`${E.start.getTime()}:${E.group.index}`,row:n.length*(i||0)+r+(i||0)*F+F,col:m,editable:e.editable,isWorkHour:s.isInTimeRange(E.zonedStart,A,z),isWorkDay:0<=E.zonedStart.getDay()+(d-R)&&(E.zonedStart.getDay()+(d-R))%d<=N+(d-R)}))),[T,d,e.editable,e.form,e.onDataAction,e.slot,e.viewSlot,c,D,z,A,N,R]);return a.createElement(ve.BaseView,{id:e.id,props:e,style:e.style,className:Ee,ranges:[...$,...c],slots:[...M,...D]},a.createElement("div",{className:"k-scheduler-head"},P==="horizontal"?a.createElement(a.Fragment,null,a.createElement(L.HorizontalResourceIterator,{nested:!0,group:g,resources:k,rowContent:ce.DayViewGroupRowContent,childRowContent:ce.DayViewGroupRowContent},J),a.createElement(L.HorizontalResourceIterator,{group:g,resources:k,rowContent:j.DayViewAllDayRowContent,childRowContent:j.DayViewAllDayRowContent},Te),q.map(t=>a.createElement(V,{key:t.isRecurring?`${t.uid}:${t.group.index}:${t.range.index}:${t.originalStart}`:`${t.uid}:${t.group.index}:${t.range.index}`,...t,form:e.form,onDataAction:e.onDataAction,item:e.item,viewItem:e.viewItem,editable:e.editable,vertical:!1}))):a.createElement(me.VerticalResourceIterator,{group:g,resources:k,cellContent:qe},J)),a.createElement("div",{className:"k-scheduler-body"},P==="horizontal"?a.createElement(a.Fragment,null,D.filter(t=>t.group.index===O&&t.range.index===O).map((t,n)=>a.createElement(a.Fragment,{key:t.index},a.createElement(L.HorizontalResourceIterator,{nested:!1,group:g,resources:k,rowContent:ue.DayViewRowContent,rowContentProps:{timeHeaderCell:e.timeHeaderCell,isMaster:n%f===0,isLast:(n+1)%f===0,slot:t}},a.createElement(H.SchedulerResourceIteratorContext.Consumer,null,({groupIndex:i})=>a.createElement("div",{className:de.classNames("k-scheduler-row",{"k-middle-row":(n+1)%f!==0})},fe(t,n,i)))))),Y!==!1&&s.intersects(s.first(c).start,s.last(c).end,new Date,new Date,!0)&&a.createElement(De.CurrentTimeMarker,null)):a.createElement(a.Fragment,null,a.createElement(me.VerticalResourceIterator,{nested:!0,group:g,resources:k},a.createElement(H.SchedulerResourceIteratorContext.Consumer,null,({groupIndex:t})=>a.createElement(a.Fragment,{key:t},a.createElement("div",{className:"k-scheduler-row"},a.createElement(j.DayViewAllDayRowContent,{groupIndex:t},$.map((n,i)=>{const r=D.filter(w=>w.group.index===t&&w.range.index===O).length;return Re(r,t,i)}))),D.filter(n=>n.group.index===t&&n.range.index===O).map((n,i,r)=>a.createElement("div",{className:"k-scheduler-row",key:n.index},a.createElement(ue.DayViewRowContent,{slot:n,isMaster:i%f===0,isLast:(i+1)%f===0,timeHeaderCell:e.timeHeaderCell},Ce(n,r,t,i)))),Y!==!1&&s.intersects(s.first(c).start,s.last(c).end,new Date,new Date,!0)&&a.createElement(De.CurrentTimeMarker,{groupIndex:t})))),q.map(t=>a.createElement(V,{key:t.isRecurring?`${t.uid}:${t.group.index}:${t.range.index}:${t.originalStart}`:`${t.uid}:${t.group.index}:${t.range.index}`,...t,onDataAction:e.onDataAction,viewItem:e.viewItem,item:e.item,form:e.form,editable:e.editable,vertical:!1}))),_.map(t=>a.createElement(V,{key:t.isRecurring?`${t.uid}:${t.group.index}:${t.range.index}:${t.originalStart}`:`${t.uid}:${t.group.index}:${t.range.index}`,...t,format:"t",onDataAction:e.onDataAction,viewItem:e.viewItem,item:e.item,form:e.form,editable:e.editable,vertical:!0}))))},Ie=({date:e,numberOfDays:g=1,timezone:o})=>{const k=S.ZonedDate.fromLocalDate(e,o),b=S.getDate(k),V=S.addDays(b,g),T=S.ZonedDate.fromUTCDate(s.toUTCDateTime(b),o),x=S.ZonedDate.fromUTCDate(s.toUTCDateTime(V),o),d=new Date(T.getTime()),f=new Date(x.getTime());return{start:d,end:f,zonedStart:T,zonedEnd:x}},y={name:"multi-day",title:"Multi Day",currentTimeMarker:!0,dateRange:Ie,selectedDateFormat:"{0:D} - {1:D}",selectedShortDateFormat:"{0:d} - {1:d}",numberOfDays:1,startTime:"00:00",endTime:"23:59",isWorkDayStart:"08:00",isWorkDayEnd:"17:00",workWeekStart:S.Day.Monday,workWeekEnd:S.Day.Friday,slotDivisions:2,slotDuration:60,showCurrentTime:!0,defaultShowWorkHours:!0};G.propTypes={currentTimeMarker:u.bool,name:u.string,numberOfDays:u.number,startTime:u.string,endTime:u.string,workDayStart:u.string,workDayEnd:u.string,workWeekStart:u.number,workWeekEnd:u.any,slotDivisions:u.number,slotDuration:u.number,showWorkHours:u.bool,selectedDateFormat:u.string,selectedShortDateFormat:u.string};G.displayName="KendoReactSchedulerMultiDayView";exports.MultiDayView=G;exports.multiDayViewDefaultProps=y;
|