@progress/kendo-react-taskboard 7.2.4-develop.2 → 7.2.4-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/TaskBoard.js +8 -0
- package/TaskBoard.mjs +239 -0
- package/TaskBoardAddCard.js +8 -0
- package/TaskBoardAddCard.mjs +43 -0
- package/TaskBoardCardBase.js +8 -0
- package/TaskBoardCardBase.mjs +106 -0
- package/TaskBoardColumnBase.js +8 -0
- package/TaskBoardColumnBase.mjs +129 -0
- package/TaskBoardConfirmDialog.js +8 -0
- package/TaskBoardConfirmDialog.mjs +28 -0
- package/TaskBoardEditCard.js +8 -0
- package/TaskBoardEditCard.mjs +44 -0
- package/TaskBoardTaskEditPane.js +8 -0
- package/TaskBoardTaskEditPane.mjs +69 -0
- package/TaskBoardToolbar.js +8 -0
- package/TaskBoardToolbar.mjs +22 -0
- package/card/Card.js +8 -0
- package/card/Card.mjs +68 -0
- package/card/CardBody.js +8 -0
- package/card/CardBody.mjs +15 -0
- package/card/CardHeader.js +8 -0
- package/card/CardHeader.mjs +38 -0
- package/card/PreviewDialog.js +8 -0
- package/card/PreviewDialog.mjs +16 -0
- package/column/Column.js +8 -0
- package/column/Column.mjs +72 -0
- package/column/ColumnBody.js +8 -0
- package/column/ColumnBody.mjs +14 -0
- package/column/ColumnHeader.js +8 -0
- package/column/ColumnHeader.mjs +56 -0
- package/constants.js +8 -0
- package/constants.mjs +16 -0
- package/dist/cdn/js/kendo-react-taskboard.js +8 -5
- package/hooks/taskEditing.js +8 -0
- package/hooks/taskEditing.mjs +25 -0
- package/index.d.mts +839 -5
- package/index.d.ts +839 -18
- package/index.js +8 -5
- package/index.mjs +35 -829
- package/messages/index.js +8 -0
- package/messages/index.mjs +71 -0
- package/package-metadata.js +8 -0
- package/package-metadata.mjs +19 -0
- package/package.json +12 -12
- package/utils.js +8 -0
- package/utils.mjs +50 -0
- package/TaskBoard.d.ts +0 -149
- package/TaskBoardAddCard.d.ts +0 -32
- package/TaskBoardCardBase.d.ts +0 -63
- package/TaskBoardColumnBase.d.ts +0 -79
- package/TaskBoardConfirmDialog.d.ts +0 -38
- package/TaskBoardEditCard.d.ts +0 -20
- package/TaskBoardTaskEditPane.d.ts +0 -93
- package/TaskBoardToolbar.d.ts +0 -26
- package/card/Card.d.ts +0 -145
- package/card/CardBody.d.ts +0 -23
- package/card/CardHeader.d.ts +0 -57
- package/card/PreviewDialog.d.ts +0 -51
- package/column/Column.d.ts +0 -162
- package/column/ColumnBody.d.ts +0 -18
- package/column/ColumnHeader.d.ts +0 -56
- package/constants.d.ts +0 -24
- package/hooks/taskEditing.d.ts +0 -23
- package/messages/index.d.ts +0 -154
- package/package-metadata.d.ts +0 -9
- package/utils.d.ts +0 -29
package/TaskBoard.js
ADDED
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
*-------------------------------------------------------------------------------------------
|
|
4
|
+
* Copyright © 2024 Progress Software Corporation. All rights reserved.
|
|
5
|
+
* Licensed under commercial license. See LICENSE.md in the package root for more information
|
|
6
|
+
*-------------------------------------------------------------------------------------------
|
|
7
|
+
*/
|
|
8
|
+
"use client";"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const ne=require("react"),G=require("prop-types"),ae=require("./package-metadata.js"),R=require("@progress/kendo-react-common"),J=require("./TaskBoardColumnBase.js"),se=require("./TaskBoardCardBase.js"),g=require("./constants.js"),q=require("./utils.js"),P=require("./card/Card.js"),Q=require("./column/Column.js");function oe(o){const h=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(o){for(const l in o)if(l!=="default"){const x=Object.getOwnPropertyDescriptor(o,l);Object.defineProperty(h,l,x.get?x:{enumerable:!0,get:()=>o[l]})}}return h.default=o,Object.freeze(h)}const n=oe(ne),M=n.forwardRef((o,h)=>{R.validatePackage(ae.packageMetadata);const{columnData:l=[],className:x,style:V,id:W,taskData:d=[],onChange:u}=o,L=n.useRef(null),j=n.useRef(null);n.useImperativeHandle(L,()=>({props:o})),n.useImperativeHandle(h,()=>L.current);const Z=n.Children.toArray(o.children).filter(e=>e&&e.type&&e.type.displayName==="KendoReactTaskBoardToolbar"),U=n.useRef(null),p=n.useRef(null),D=n.useRef(null),[b,K]=n.useState(null),[B,w]=n.useState(null),[A,N]=n.useState({top:0,left:0}),_=n.useRef(null),X=n.useRef(null),I=n.useMemo(()=>{const e={};return(b||d).forEach(a=>{const t=a.status;e[t]||(e[t]=[]),e[t].push(a)}),e},[d,b]),$=n.useCallback(e=>{const a=e.originalEvent.target;if(a.closest("button,input,.k-link,.k-taskboard-preview-pane"))return;const t=q.closestTaskBoardElement(a),s=j.current;if(t&&s){const c=t.type===g.TASKBOARD_COLUMN;if(c&&!a.closest(".k-taskboard-column-header"))return;const S=t.element.getBoundingClientRect(),C=s.getBoundingClientRect();D.current={x:e.clientX-S.left+C.left,y:e.clientY-S.top+C.top};const m=c?l:d,O=c?w:K,f=m.findIndex(E=>String(E.id)===t.id),T=m[f];if(f===-1||T.edit)return;const i=R.clone(T);i.isPlaceholder=!0;const y=[...m];y[f]=i,p.current={...t,index:f,item:T,width:S.width,height:S.height},N({top:e.clientY-D.current.y,left:e.clientX-D.current.x}),O(y)}},[l,d]),ee=n.useCallback(e=>{const a=p.current,t=_.current&&_.current.element||X.current;if(a&&t){N({top:e.clientY-D.current.y,left:e.clientX-D.current.x}),t.style.visibility="hidden";const s=document.elementFromPoint(e.clientX,e.clientY);if(t.style.visibility="",s&&s.getAttribute(g.TASKBOARD_PLACEHOLDER))return;const c=s&&q.closestTaskBoardElement(s);if(c){let k;const S=c.type===a.type,C=a.type===g.TASKBOARD_COLUMN,m=(C?B:b)||[],O=C?w:K;if(C||S){if(k=q.findIndexes(a.id,c.id,m),k){const f=m[k.dragIndex],T=m[k.dropIndex],i=R.clone(f);C||(i.status=T.status);const y=[...m];y.splice(k.dragIndex,1),y.splice(k.dropIndex,0,i),a.index=k.dropIndex,O(y)}}else{const f=m.findIndex(i=>String(i.id)===a.id),T=l.findIndex(i=>String(i.id)===c.id);if(f!==-1&&T!==-1){const i=m[f],E=l[T].status;if(I[E])return;i.status=E;const v=[...m];v.splice(f,1),v.push(i),a.index=v.length-1,O(v)}}}}},[B,b,l,I]),te=n.useCallback(()=>{const e=p.current;if(u&&e){const t=(e.type===g.TASKBOARD_COLUMN?B:b)||[],s=t[e.index];delete s.isPlaceholder;const c={data:t,type:e.type,previousItem:e.item,item:s};u.call(void 0,c)}p.current=null,D.current=null,K(null),w(null),N({top:0,left:0})},[B,b,u]);R.useDraggable(U,{onDragStart:$,onDrag:ee,onDragEnd:te});const r=p.current,Y=n.useCallback(e=>{const t={data:[...d,e],type:g.TASKBOARD_TASK,previousItem:null,item:e};u.call(void 0,t)},[u,d]),z=n.useCallback((e,a)=>{const t=d.slice(),s=d.indexOf(a);s!==-1&&t.splice(s,1,e);const c={data:t,type:g.TASKBOARD_TASK,previousItem:a,item:e};u.call(void 0,c)},[u,d]),H=n.useCallback(e=>{const t={data:d.filter(s=>s!==e),type:g.TASKBOARD_TASK,previousItem:e,item:null};u.call(void 0,t)},[u,d]),F=n.useCallback((e,a)=>{const t=l.slice(),s=t.indexOf(a);s!==-1&&(e?t.splice(s,1,e):t.splice(s,1));const c={data:t,type:g.TASKBOARD_COLUMN,previousItem:a,item:e};u.call(void 0,c)},[u,l]);return n.createElement("div",{id:W,style:V,ref:j,className:R.classNames("k-widget k-taskboard",x)},Z,n.createElement("div",{className:"k-taskboard-content",style:r?{userSelect:"none"}:void 0},n.createElement("div",{className:"k-taskboard-columns-container",ref:U},(B||l).map(e=>n.createElement(J.TaskBoardColumnBase,{key:e.id,tabIndex:o.tabIndex,column:e,tasks:I[e.status]||[],dragTargetRef:p,onTaskCreate:Y,onTaskEdit:z,onTaskDelete:H,onColumnChange:F,columnComponent:o.column||Q.TaskBoardColumn,cardComponent:o.card||P.TaskBoardCard,priorities:o.priorities})))),r&&r.type===g.TASKBOARD_TASK&&n.createElement(se.TaskBoardCardBase,{elementRef:_,style:{position:"absolute",width:r.width,height:r.height,top:A.top,left:A.left,zIndex:10,borderLeftColor:r.item.priority?r.item.priority.color:r.item.color},task:r.item,dragTargetRef:p,cardComponent:o.card||P.TaskBoardCard,onDeleteTask:R.noop,showEditPane:R.noop}),r&&r.type===g.TASKBOARD_COLUMN&&n.createElement(J.TaskBoardColumnBase,{elementRef:X,style:{position:"absolute",width:r.width,height:r.height,top:A.top,left:A.left,zIndex:10},cardComponent:o.card||P.TaskBoardCard,columnComponent:o.column||Q.TaskBoardColumn,column:r.item,tasks:I[r.item.status],priorities:o.priorities,dragTargetRef:p,onTaskDelete:H,onColumnChange:F,onTaskEdit:z,onTaskCreate:Y}))});M.propTypes={columnData:G.array.isRequired,taskData:G.array.isRequired};M.displayName="KendoReactTaskBoard";exports.TaskBoard=M;
|
package/TaskBoard.mjs
ADDED
|
@@ -0,0 +1,239 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
*-------------------------------------------------------------------------------------------
|
|
4
|
+
* Copyright © 2024 Progress Software Corporation. All rights reserved.
|
|
5
|
+
* Licensed under commercial license. See LICENSE.md in the package root for more information
|
|
6
|
+
*-------------------------------------------------------------------------------------------
|
|
7
|
+
*/
|
|
8
|
+
"use client";
|
|
9
|
+
import * as n from "react";
|
|
10
|
+
import z from "prop-types";
|
|
11
|
+
import { packageMetadata as st } from "./package-metadata.mjs";
|
|
12
|
+
import { validatePackage as ot, clone as F, useDraggable as rt, classNames as it, noop as U } from "@progress/kendo-react-common";
|
|
13
|
+
import { TaskBoardColumnBase as j } from "./TaskBoardColumnBase.mjs";
|
|
14
|
+
import { TaskBoardCardBase as ct } from "./TaskBoardCardBase.mjs";
|
|
15
|
+
import { TASKBOARD_COLUMN as T, TASKBOARD_PLACEHOLDER as lt, TASKBOARD_TASK as B } from "./constants.mjs";
|
|
16
|
+
import { closestTaskBoardElement as G, findIndexes as dt } from "./utils.mjs";
|
|
17
|
+
import { TaskBoardCard as O } from "./card/Card.mjs";
|
|
18
|
+
import { TaskBoardColumn as J } from "./column/Column.mjs";
|
|
19
|
+
const Q = n.forwardRef((c, V) => {
|
|
20
|
+
ot(st);
|
|
21
|
+
const { columnData: f = [], className: W, style: Z, id: $, taskData: l = [], onChange: d } = c, K = n.useRef(null), L = n.useRef(null);
|
|
22
|
+
n.useImperativeHandle(K, () => ({ props: c })), n.useImperativeHandle(V, () => K.current);
|
|
23
|
+
const tt = n.Children.toArray(c.children).filter((t) => t && t.type && t.type.displayName === "KendoReactTaskBoardToolbar"), M = n.useRef(null), p = n.useRef(null), C = n.useRef(null), [R, w] = n.useState(null), [x, A] = n.useState(null), [b, P] = n.useState({ top: 0, left: 0 }), N = n.useRef(null), X = n.useRef(null), I = n.useMemo(() => {
|
|
24
|
+
const t = {};
|
|
25
|
+
return (R || l).forEach((a) => {
|
|
26
|
+
const e = a.status;
|
|
27
|
+
t[e] || (t[e] = []), t[e].push(a);
|
|
28
|
+
}), t;
|
|
29
|
+
}, [l, R]), et = n.useCallback(
|
|
30
|
+
(t) => {
|
|
31
|
+
const a = t.originalEvent.target;
|
|
32
|
+
if (a.closest("button,input,.k-link,.k-taskboard-preview-pane"))
|
|
33
|
+
return;
|
|
34
|
+
const e = G(a), s = L.current;
|
|
35
|
+
if (e && s) {
|
|
36
|
+
const r = e.type === T;
|
|
37
|
+
if (r && !a.closest(".k-taskboard-column-header"))
|
|
38
|
+
return;
|
|
39
|
+
const D = e.element.getBoundingClientRect(), y = s.getBoundingClientRect();
|
|
40
|
+
C.current = {
|
|
41
|
+
x: t.clientX - D.left + y.left,
|
|
42
|
+
y: t.clientY - D.top + y.top
|
|
43
|
+
};
|
|
44
|
+
const u = r ? f : l, S = r ? A : w, m = u.findIndex((E) => String(E.id) === e.id), k = u[m];
|
|
45
|
+
if (m === -1 || k.edit)
|
|
46
|
+
return;
|
|
47
|
+
const i = F(k);
|
|
48
|
+
i.isPlaceholder = !0;
|
|
49
|
+
const h = [...u];
|
|
50
|
+
h[m] = i, p.current = {
|
|
51
|
+
...e,
|
|
52
|
+
index: m,
|
|
53
|
+
item: k,
|
|
54
|
+
width: D.width,
|
|
55
|
+
height: D.height
|
|
56
|
+
}, P({
|
|
57
|
+
top: t.clientY - C.current.y,
|
|
58
|
+
left: t.clientX - C.current.x
|
|
59
|
+
}), S(h);
|
|
60
|
+
}
|
|
61
|
+
},
|
|
62
|
+
[f, l]
|
|
63
|
+
), nt = n.useCallback(
|
|
64
|
+
(t) => {
|
|
65
|
+
const a = p.current, e = N.current && N.current.element || X.current;
|
|
66
|
+
if (a && e) {
|
|
67
|
+
P({
|
|
68
|
+
top: t.clientY - C.current.y,
|
|
69
|
+
left: t.clientX - C.current.x
|
|
70
|
+
}), e.style.visibility = "hidden";
|
|
71
|
+
const s = document.elementFromPoint(t.clientX, t.clientY);
|
|
72
|
+
if (e.style.visibility = "", s && s.getAttribute(lt))
|
|
73
|
+
return;
|
|
74
|
+
const r = s && G(s);
|
|
75
|
+
if (r) {
|
|
76
|
+
let g;
|
|
77
|
+
const D = r.type === a.type, y = a.type === T, u = (y ? x : R) || [], S = y ? A : w;
|
|
78
|
+
if (y || D) {
|
|
79
|
+
if (g = dt(a.id, r.id, u), g) {
|
|
80
|
+
const m = u[g.dragIndex], k = u[g.dropIndex], i = F(m);
|
|
81
|
+
y || (i.status = k.status);
|
|
82
|
+
const h = [...u];
|
|
83
|
+
h.splice(g.dragIndex, 1), h.splice(g.dropIndex, 0, i), a.index = g.dropIndex, S(h);
|
|
84
|
+
}
|
|
85
|
+
} else {
|
|
86
|
+
const m = u.findIndex((i) => String(i.id) === a.id), k = f.findIndex((i) => String(i.id) === r.id);
|
|
87
|
+
if (m !== -1 && k !== -1) {
|
|
88
|
+
const i = u[m], E = f[k].status;
|
|
89
|
+
if (I[E])
|
|
90
|
+
return;
|
|
91
|
+
i.status = E;
|
|
92
|
+
const v = [...u];
|
|
93
|
+
v.splice(m, 1), v.push(i), a.index = v.length - 1, S(v);
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
},
|
|
99
|
+
[x, R, f, I]
|
|
100
|
+
), at = n.useCallback(
|
|
101
|
+
() => {
|
|
102
|
+
const t = p.current;
|
|
103
|
+
if (d && t) {
|
|
104
|
+
const e = (t.type === T ? x : R) || [], s = e[t.index];
|
|
105
|
+
delete s.isPlaceholder;
|
|
106
|
+
const r = {
|
|
107
|
+
data: e,
|
|
108
|
+
type: t.type,
|
|
109
|
+
previousItem: t.item,
|
|
110
|
+
item: s
|
|
111
|
+
};
|
|
112
|
+
d.call(void 0, r);
|
|
113
|
+
}
|
|
114
|
+
p.current = null, C.current = null, w(null), A(null), P({ top: 0, left: 0 });
|
|
115
|
+
},
|
|
116
|
+
[x, R, d]
|
|
117
|
+
);
|
|
118
|
+
rt(M, {
|
|
119
|
+
onDragStart: et,
|
|
120
|
+
onDrag: nt,
|
|
121
|
+
onDragEnd: at
|
|
122
|
+
});
|
|
123
|
+
const o = p.current, Y = n.useCallback((t) => {
|
|
124
|
+
const e = {
|
|
125
|
+
data: [...l, t],
|
|
126
|
+
type: B,
|
|
127
|
+
previousItem: null,
|
|
128
|
+
item: t
|
|
129
|
+
};
|
|
130
|
+
d.call(void 0, e);
|
|
131
|
+
}, [d, l]), H = n.useCallback((t, a) => {
|
|
132
|
+
const e = l.slice(), s = l.indexOf(a);
|
|
133
|
+
s !== -1 && e.splice(s, 1, t);
|
|
134
|
+
const r = {
|
|
135
|
+
data: e,
|
|
136
|
+
type: B,
|
|
137
|
+
previousItem: a,
|
|
138
|
+
item: t
|
|
139
|
+
};
|
|
140
|
+
d.call(void 0, r);
|
|
141
|
+
}, [d, l]), _ = n.useCallback((t) => {
|
|
142
|
+
const e = {
|
|
143
|
+
data: l.filter((s) => s !== t),
|
|
144
|
+
type: B,
|
|
145
|
+
previousItem: t,
|
|
146
|
+
item: null
|
|
147
|
+
};
|
|
148
|
+
d.call(void 0, e);
|
|
149
|
+
}, [d, l]), q = n.useCallback((t, a) => {
|
|
150
|
+
const e = f.slice(), s = e.indexOf(a);
|
|
151
|
+
s !== -1 && (t ? e.splice(s, 1, t) : e.splice(s, 1));
|
|
152
|
+
const r = {
|
|
153
|
+
data: e,
|
|
154
|
+
type: T,
|
|
155
|
+
previousItem: a,
|
|
156
|
+
item: t
|
|
157
|
+
};
|
|
158
|
+
d.call(void 0, r);
|
|
159
|
+
}, [d, f]);
|
|
160
|
+
return /* @__PURE__ */ n.createElement(
|
|
161
|
+
"div",
|
|
162
|
+
{
|
|
163
|
+
id: $,
|
|
164
|
+
style: Z,
|
|
165
|
+
ref: L,
|
|
166
|
+
className: it("k-widget k-taskboard", W)
|
|
167
|
+
},
|
|
168
|
+
tt,
|
|
169
|
+
/* @__PURE__ */ n.createElement("div", { className: "k-taskboard-content", style: o ? { userSelect: "none" } : void 0 }, /* @__PURE__ */ n.createElement("div", { className: "k-taskboard-columns-container", ref: M }, (x || f).map((t) => /* @__PURE__ */ n.createElement(
|
|
170
|
+
j,
|
|
171
|
+
{
|
|
172
|
+
key: t.id,
|
|
173
|
+
tabIndex: c.tabIndex,
|
|
174
|
+
column: t,
|
|
175
|
+
tasks: I[t.status] || [],
|
|
176
|
+
dragTargetRef: p,
|
|
177
|
+
onTaskCreate: Y,
|
|
178
|
+
onTaskEdit: H,
|
|
179
|
+
onTaskDelete: _,
|
|
180
|
+
onColumnChange: q,
|
|
181
|
+
columnComponent: c.column || J,
|
|
182
|
+
cardComponent: c.card || O,
|
|
183
|
+
priorities: c.priorities
|
|
184
|
+
}
|
|
185
|
+
)))),
|
|
186
|
+
o && o.type === B && /* @__PURE__ */ n.createElement(
|
|
187
|
+
ct,
|
|
188
|
+
{
|
|
189
|
+
elementRef: N,
|
|
190
|
+
style: {
|
|
191
|
+
position: "absolute",
|
|
192
|
+
width: o.width,
|
|
193
|
+
height: o.height,
|
|
194
|
+
top: b.top,
|
|
195
|
+
left: b.left,
|
|
196
|
+
zIndex: 10,
|
|
197
|
+
borderLeftColor: o.item.priority ? o.item.priority.color : o.item.color
|
|
198
|
+
},
|
|
199
|
+
task: o.item,
|
|
200
|
+
dragTargetRef: p,
|
|
201
|
+
cardComponent: c.card || O,
|
|
202
|
+
onDeleteTask: U,
|
|
203
|
+
showEditPane: U
|
|
204
|
+
}
|
|
205
|
+
),
|
|
206
|
+
o && o.type === T && /* @__PURE__ */ n.createElement(
|
|
207
|
+
j,
|
|
208
|
+
{
|
|
209
|
+
elementRef: X,
|
|
210
|
+
style: {
|
|
211
|
+
position: "absolute",
|
|
212
|
+
width: o.width,
|
|
213
|
+
height: o.height,
|
|
214
|
+
top: b.top,
|
|
215
|
+
left: b.left,
|
|
216
|
+
zIndex: 10
|
|
217
|
+
},
|
|
218
|
+
cardComponent: c.card || O,
|
|
219
|
+
columnComponent: c.column || J,
|
|
220
|
+
column: o.item,
|
|
221
|
+
tasks: I[o.item.status],
|
|
222
|
+
priorities: c.priorities,
|
|
223
|
+
dragTargetRef: p,
|
|
224
|
+
onTaskDelete: _,
|
|
225
|
+
onColumnChange: q,
|
|
226
|
+
onTaskEdit: H,
|
|
227
|
+
onTaskCreate: Y
|
|
228
|
+
}
|
|
229
|
+
)
|
|
230
|
+
);
|
|
231
|
+
});
|
|
232
|
+
Q.propTypes = {
|
|
233
|
+
columnData: z.array.isRequired,
|
|
234
|
+
taskData: z.array.isRequired
|
|
235
|
+
};
|
|
236
|
+
Q.displayName = "KendoReactTaskBoard";
|
|
237
|
+
export {
|
|
238
|
+
Q as TaskBoard
|
|
239
|
+
};
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
*-------------------------------------------------------------------------------------------
|
|
4
|
+
* Copyright © 2024 Progress Software Corporation. All rights reserved.
|
|
5
|
+
* Licensed under commercial license. See LICENSE.md in the package root for more information
|
|
6
|
+
*-------------------------------------------------------------------------------------------
|
|
7
|
+
*/
|
|
8
|
+
"use client";"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const c=require("react"),u=require("@progress/kendo-react-intl"),e=require("./messages/index.js"),B=require("./hooks/taskEditing.js");function k(a){const i=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(a){for(const r in a)if(r!=="default"){const n=Object.getOwnPropertyDescriptor(a,r);Object.defineProperty(i,r,n.get?n:{enumerable:!0,get:()=>a[r]})}}return i.default=a,Object.freeze(i)}const L=k(c),o=a=>{const{onTitleChange:i,title:r,onDescriptionChange:n,description:d,onPriorityChange:s,priority:l,onSave:g}=B.useTaskEditing(a),t=u.useLocalization();return L.createElement(a.editPane,{header:t.toLanguageString(e.taskBoardAddCardPaneTitle,e.messages[e.taskBoardAddCardPaneTitle]),titleInputTitle:t.toLanguageString(e.taskBoardAddCardTitleLabel,e.messages[e.taskBoardAddCardTitleLabel]),descriptionInputTitle:t.toLanguageString(e.taskBoardAddCardDescriptionLabel,e.messages[e.taskBoardAddCardDescriptionLabel]),priorityDropDownTitle:t.toLanguageString(e.taskBoardAddCardPriorityLabel,e.messages[e.taskBoardAddCardPriorityLabel]),titleLabel:t.toLanguageString(e.taskBoardEditPaneTitleLabel,e.messages[e.taskBoardEditPaneTitleLabel]),descriptionLabel:t.toLanguageString(e.taskBoardEditPaneDescriptionLabel,e.messages[e.taskBoardEditPaneDescriptionLabel]),priorityLabel:t.toLanguageString(e.taskBoardEditPanePriorityLabel,e.messages[e.taskBoardEditPanePriorityLabel]),saveButton:t.toLanguageString(e.taskBoardAddCardCreateButton,e.messages[e.taskBoardAddCardCreateButton]),cancelButton:t.toLanguageString(e.taskBoardEditPaneCancelBtn,e.messages[e.taskBoardEditPaneCancelBtn]),priorities:a.priorities,onSave:g,onClose:a.onClose,onTitleChange:i,title:r,onDescriptionChange:n,description:d,onPriorityChange:s,priority:l})};o.propTypes={};o.displayName="KendoReactTaskBoardAddCard";exports.TaskBoardAddCard=o;
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
*-------------------------------------------------------------------------------------------
|
|
4
|
+
* Copyright © 2024 Progress Software Corporation. All rights reserved.
|
|
5
|
+
* Licensed under commercial license. See LICENSE.md in the package root for more information
|
|
6
|
+
*-------------------------------------------------------------------------------------------
|
|
7
|
+
*/
|
|
8
|
+
"use client";
|
|
9
|
+
import * as S from "react";
|
|
10
|
+
import { useLocalization as b } from "@progress/kendo-react-intl";
|
|
11
|
+
import { taskBoardAddCardPaneTitle as i, messages as a, taskBoardAddCardTitleLabel as o, taskBoardAddCardDescriptionLabel as r, taskBoardAddCardPriorityLabel as n, taskBoardEditPaneTitleLabel as d, taskBoardEditPaneDescriptionLabel as g, taskBoardEditPanePriorityLabel as s, taskBoardAddCardCreateButton as l, taskBoardEditPaneCancelBtn as L } from "./messages/index.mjs";
|
|
12
|
+
import { useTaskEditing as P } from "./hooks/taskEditing.mjs";
|
|
13
|
+
const c = (e) => {
|
|
14
|
+
const { onTitleChange: u, title: p, onDescriptionChange: B, description: C, onPriorityChange: k, priority: m, onSave: T } = P(e), t = b();
|
|
15
|
+
return /* @__PURE__ */ S.createElement(
|
|
16
|
+
e.editPane,
|
|
17
|
+
{
|
|
18
|
+
header: t.toLanguageString(i, a[i]),
|
|
19
|
+
titleInputTitle: t.toLanguageString(o, a[o]),
|
|
20
|
+
descriptionInputTitle: t.toLanguageString(r, a[r]),
|
|
21
|
+
priorityDropDownTitle: t.toLanguageString(n, a[n]),
|
|
22
|
+
titleLabel: t.toLanguageString(d, a[d]),
|
|
23
|
+
descriptionLabel: t.toLanguageString(g, a[g]),
|
|
24
|
+
priorityLabel: t.toLanguageString(s, a[s]),
|
|
25
|
+
saveButton: t.toLanguageString(l, a[l]),
|
|
26
|
+
cancelButton: t.toLanguageString(L, a[L]),
|
|
27
|
+
priorities: e.priorities,
|
|
28
|
+
onSave: T,
|
|
29
|
+
onClose: e.onClose,
|
|
30
|
+
onTitleChange: u,
|
|
31
|
+
title: p,
|
|
32
|
+
onDescriptionChange: B,
|
|
33
|
+
description: C,
|
|
34
|
+
onPriorityChange: k,
|
|
35
|
+
priority: m
|
|
36
|
+
}
|
|
37
|
+
);
|
|
38
|
+
};
|
|
39
|
+
c.propTypes = {};
|
|
40
|
+
c.displayName = "KendoReactTaskBoardAddCard";
|
|
41
|
+
export {
|
|
42
|
+
c as TaskBoardAddCard
|
|
43
|
+
};
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
*-------------------------------------------------------------------------------------------
|
|
4
|
+
* Copyright © 2024 Progress Software Corporation. All rights reserved.
|
|
5
|
+
* Licensed under commercial license. See LICENSE.md in the package root for more information
|
|
6
|
+
*-------------------------------------------------------------------------------------------
|
|
7
|
+
*/
|
|
8
|
+
"use client";"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const M=require("react"),R=require("prop-types"),E=require("@progress/kendo-react-layout"),I=require("./constants.js"),O=require("@progress/kendo-react-intl"),e=require("./messages/index.js"),j=require("./card/CardHeader.js"),x=require("./card/CardBody.js"),H=require("./TaskBoardConfirmDialog.js"),V=require("./card/PreviewDialog.js"),P=require("@progress/kendo-svg-icons");function _(t){const s=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(t){for(const o in t)if(o!=="default"){const n=Object.getOwnPropertyDescriptor(t,o);Object.defineProperty(s,o,n.get?n:{enumerable:!0,get:()=>t[o]})}}return s.default=t,Object.freeze(s)}const r=_(M),k=t=>{const{onDeleteTask:s,showEditPane:o,task:n,style:T,dragTargetRef:l,elementRef:w}=t,[c,i]=r.useState(!1),[d,B]=r.useState(!1),[C,D]=r.useState(!1),u=r.useRef(null),a=O.useLocalization(),p=[{text:a.toLanguageString(e.taskBoardEditCardButton,e.messages[e.taskBoardEditCardButton]),icon:"pencil",svgIcon:P.pencilIcon,data:()=>{o(n),i(!c)}},{text:a.toLanguageString(e.taskBoardDeleteCardButton,e.messages[e.taskBoardDeleteCardButton]),icon:"trash",svgIcon:P.trashIcon,data:()=>{B(!d),i(!c)}}],S=g=>{g.item.data()},v=()=>{i(!0)},b=()=>{i(!1)},h=g=>{const f=u.current&&u.current.element;f&&f.contains(g.relatedTarget)||i(!1)},y=()=>{B(!d)},m=()=>{D(!0)},L=()=>{D(!1)},q=()=>{o(n),m()};return n.isPlaceholder&&l&&l.current?r.createElement("div",{style:{width:l.current.width,height:l.current.height},className:"k-taskboard-drag-placeholder",[I.TASKBOARD_PLACEHOLDER]:!0}):r.createElement(t.cardComponent,{task:n,style:T,tabIndex:t.tabIndex,disabled:t.disabled,elementRef:w,showMenu:c,showDeleteConfirm:d,showTaskPreviewPane:C,menuItems:p,popupRef:u,confirmDialogMessage:a.toLanguageString(e.taskBoardDeleteTaskDialogMessage,e.messages[e.taskBoardDeleteTaskDialogMessage]),confirmDialogTitle:a.toLanguageString(e.taskBoardDeleteTaskDialogTitle,e.messages[e.taskBoardDeleteTaskDialogTitle]),confirmDialogConfirmButton:a.toLanguageString(e.taskBoardDeleteTaskConfirmButton,e.messages[e.taskBoardDeleteTaskConfirmButton]),confirmDialogCancelButton:a.toLanguageString(e.taskBoardDeleteTaskCancelButton,e.messages[e.taskBoardDeleteTaskCancelButton]),previewDialogPriorityLabel:a.toLanguageString(e.taskBoardPreviewPanePriorityLabel,e.messages[e.taskBoardPreviewPanePriorityLabel]),previewDialogDelete:a.toLanguageString(e.taskBoardPreviewPaneDeleteBtn,e.messages[e.taskBoardPreviewPaneDeleteBtn]),previewDialogEdit:a.toLanguageString(e.taskBoardPreviewPaneEditBtn,e.messages[e.taskBoardPreviewPaneEditBtn]),onShowPreviewPane:m,onClosePreviewPane:L,onMenuItemSelect:S,onShowMenu:v,onHideMenu:b,onMenuButtonBlur:h,onTaskDelete:s,onTaskEdit:q,onCloseConfirmDialog:y,card:E.Card,cardHeader:j.TaskBoardCardHeader,cardBody:x.TaskBoardCardBody,confirmDialog:H.TaskBoardConfirmDialog,previewDialog:V.TaskBoardPreviewDialog})};k.propTypes={task:R.object.isRequired};k.displayName="KendoReactTaskBoardCardBase";exports.TaskBoardCardBase=k;
|
|
@@ -0,0 +1,106 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
*-------------------------------------------------------------------------------------------
|
|
4
|
+
* Copyright © 2024 Progress Software Corporation. All rights reserved.
|
|
5
|
+
* Licensed under commercial license. See LICENSE.md in the package root for more information
|
|
6
|
+
*-------------------------------------------------------------------------------------------
|
|
7
|
+
*/
|
|
8
|
+
"use client";
|
|
9
|
+
import * as a from "react";
|
|
10
|
+
import z from "prop-types";
|
|
11
|
+
import { Card as K } from "@progress/kendo-react-layout";
|
|
12
|
+
import { TASKBOARD_PLACEHOLDER as N } from "./constants.mjs";
|
|
13
|
+
import { useLocalization as j } from "@progress/kendo-react-intl";
|
|
14
|
+
import { taskBoardEditCardButton as B, messages as t, taskBoardDeleteCardButton as p, taskBoardDeleteTaskDialogMessage as D, taskBoardDeleteTaskDialogTitle as T, taskBoardDeleteTaskConfirmButton as w, taskBoardDeleteTaskCancelButton as P, taskBoardPreviewPanePriorityLabel as C, taskBoardPreviewPaneDeleteBtn as h, taskBoardPreviewPaneEditBtn as S } from "./messages/index.mjs";
|
|
15
|
+
import { TaskBoardCardHeader as q } from "./card/CardHeader.mjs";
|
|
16
|
+
import { TaskBoardCardBody as _ } from "./card/CardBody.mjs";
|
|
17
|
+
import { TaskBoardConfirmDialog as F } from "./TaskBoardConfirmDialog.mjs";
|
|
18
|
+
import { TaskBoardPreviewDialog as G } from "./card/PreviewDialog.mjs";
|
|
19
|
+
import { pencilIcon as J, trashIcon as Q } from "@progress/kendo-svg-icons";
|
|
20
|
+
const v = (n) => {
|
|
21
|
+
const { onDeleteTask: L, showEditPane: g, task: r, style: b, dragTargetRef: i, elementRef: y } = n, [s, o] = a.useState(!1), [l, m] = a.useState(!1), [E, u] = a.useState(!1), d = a.useRef(null), e = j(), M = [
|
|
22
|
+
{
|
|
23
|
+
text: e.toLanguageString(B, t[B]),
|
|
24
|
+
icon: "pencil",
|
|
25
|
+
svgIcon: J,
|
|
26
|
+
data: () => {
|
|
27
|
+
g(r), o(!s);
|
|
28
|
+
}
|
|
29
|
+
},
|
|
30
|
+
{
|
|
31
|
+
text: e.toLanguageString(p, t[p]),
|
|
32
|
+
icon: "trash",
|
|
33
|
+
svgIcon: Q,
|
|
34
|
+
data: () => {
|
|
35
|
+
m(!l), o(!s);
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
], R = (c) => {
|
|
39
|
+
c.item.data();
|
|
40
|
+
}, I = () => {
|
|
41
|
+
o(!0);
|
|
42
|
+
}, x = () => {
|
|
43
|
+
o(!1);
|
|
44
|
+
}, H = (c) => {
|
|
45
|
+
const k = d.current && d.current.element;
|
|
46
|
+
k && k.contains(c.relatedTarget) || o(!1);
|
|
47
|
+
}, V = () => {
|
|
48
|
+
m(!l);
|
|
49
|
+
}, f = () => {
|
|
50
|
+
u(!0);
|
|
51
|
+
}, A = () => {
|
|
52
|
+
u(!1);
|
|
53
|
+
}, O = () => {
|
|
54
|
+
g(r), f();
|
|
55
|
+
};
|
|
56
|
+
return r.isPlaceholder && i && i.current ? /* @__PURE__ */ a.createElement(
|
|
57
|
+
"div",
|
|
58
|
+
{
|
|
59
|
+
style: { width: i.current.width, height: i.current.height },
|
|
60
|
+
className: "k-taskboard-drag-placeholder",
|
|
61
|
+
[N]: !0
|
|
62
|
+
}
|
|
63
|
+
) : /* @__PURE__ */ a.createElement(
|
|
64
|
+
n.cardComponent,
|
|
65
|
+
{
|
|
66
|
+
task: r,
|
|
67
|
+
style: b,
|
|
68
|
+
tabIndex: n.tabIndex,
|
|
69
|
+
disabled: n.disabled,
|
|
70
|
+
elementRef: y,
|
|
71
|
+
showMenu: s,
|
|
72
|
+
showDeleteConfirm: l,
|
|
73
|
+
showTaskPreviewPane: E,
|
|
74
|
+
menuItems: M,
|
|
75
|
+
popupRef: d,
|
|
76
|
+
confirmDialogMessage: e.toLanguageString(D, t[D]),
|
|
77
|
+
confirmDialogTitle: e.toLanguageString(T, t[T]),
|
|
78
|
+
confirmDialogConfirmButton: e.toLanguageString(w, t[w]),
|
|
79
|
+
confirmDialogCancelButton: e.toLanguageString(P, t[P]),
|
|
80
|
+
previewDialogPriorityLabel: e.toLanguageString(C, t[C]),
|
|
81
|
+
previewDialogDelete: e.toLanguageString(h, t[h]),
|
|
82
|
+
previewDialogEdit: e.toLanguageString(S, t[S]),
|
|
83
|
+
onShowPreviewPane: f,
|
|
84
|
+
onClosePreviewPane: A,
|
|
85
|
+
onMenuItemSelect: R,
|
|
86
|
+
onShowMenu: I,
|
|
87
|
+
onHideMenu: x,
|
|
88
|
+
onMenuButtonBlur: H,
|
|
89
|
+
onTaskDelete: L,
|
|
90
|
+
onTaskEdit: O,
|
|
91
|
+
onCloseConfirmDialog: V,
|
|
92
|
+
card: K,
|
|
93
|
+
cardHeader: q,
|
|
94
|
+
cardBody: _,
|
|
95
|
+
confirmDialog: F,
|
|
96
|
+
previewDialog: G
|
|
97
|
+
}
|
|
98
|
+
);
|
|
99
|
+
};
|
|
100
|
+
v.propTypes = {
|
|
101
|
+
task: z.object.isRequired
|
|
102
|
+
};
|
|
103
|
+
v.displayName = "KendoReactTaskBoardCardBase";
|
|
104
|
+
export {
|
|
105
|
+
v as TaskBoardCardBase
|
|
106
|
+
};
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
*-------------------------------------------------------------------------------------------
|
|
4
|
+
* Copyright © 2024 Progress Software Corporation. All rights reserved.
|
|
5
|
+
* Licensed under commercial license. See LICENSE.md in the package root for more information
|
|
6
|
+
*-------------------------------------------------------------------------------------------
|
|
7
|
+
*/
|
|
8
|
+
"use client";"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const p=require("react"),h=require("prop-types"),I=require("@progress/kendo-react-intl"),t=require("./messages/index.js"),N=require("./constants.js"),_=require("./column/ColumnHeader.js"),z=require("./column/ColumnBody.js"),H=require("./TaskBoardConfirmDialog.js"),K=require("./TaskBoardEditCard.js"),V=require("./TaskBoardAddCard.js"),F=require("./TaskBoardCardBase.js");function G(a){const i=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(a){for(const l in a)if(l!=="default"){const c=Object.getOwnPropertyDescriptor(a,l);Object.defineProperty(i,l,c.get?c:{enumerable:!0,get:()=>a[l]})}}return i.default=a,Object.freeze(i)}const n=G(p),g=a=>{const[i,l]=n.useState(!1),[c,C]=n.useState(!1),[k,w]=n.useState(!1),[S,y]=n.useState(),{dragTargetRef:r,column:o,onColumnChange:s,tasks:m,elementRef:v,style:B,onTaskCreate:T,onTaskEdit:f,onTaskDelete:D}=a,d=I.useLocalization(),q=n.useCallback(e=>{const u={...o,title:e.value};s.call(void 0,u,o)},[o,s]),A=n.useCallback(()=>{const e={...o,edit:!0};s.call(void 0,e,o)},[o,s]),L=n.useCallback(()=>{const e={...o,edit:!1};s.call(void 0,e,o)},[o,s]),P=n.useCallback(()=>{s.call(void 0,null,o)},[o,s]),R=()=>{w(!k)},O=()=>{l(!0)},b=e=>{C(!0),y(e)},j=()=>{l(!1),C(!1)},M=n.useCallback(e=>{l(!1),T.call(void 0,{...e,status:o.status})},[T,o]),x=n.useCallback((e,u)=>{C(!1),f.call(void 0,e,u)},[f]),E=n.useCallback(e=>{D.call(void 0,e)},[D]);if(o.isPlaceholder&&r&&r.current){const e=r.current?r.current.width:0,u=r.current?r.current.height:0;return n.createElement("div",{style:{width:e,height:u},className:"k-taskboard-column k-taskboard-drag-placeholder",[N.TASKBOARD_PLACEHOLDER]:!0})}return n.createElement(a.columnComponent,{column:a.column,tasks:m,priorities:a.priorities,style:r?{overflow:"visible",...B}:B,tabIndex:a.tabIndex,elementRef:v,onTaskCreate:M,onTaskEdit:x,onTaskDelete:E,card:a.cardComponent,header:_.TaskBoardColumnHeader,body:z.TaskBoardColumnBody,confirmDialog:H.TaskBoardConfirmDialog,editCardDialog:K.TaskBoardEditCard,addCardDialog:V.TaskBoardAddCard,onTitleChange:q,onColumnEnterEdit:A,onColumnExitEdit:L,onColumnConfirmDelete:P,onShowAddCardDialog:O,onShowEditCardPane:b,onColumnDelete:R,onCloseDialog:j,showAddCard:i,showEditCard:c,showColumnConfirmDelete:k,editedTask:S,confirmDialogMessage:d.toLanguageString(t.taskBoardDelColumnDialogMsg,t.messages[t.taskBoardDelColumnDialogMsg]),confirmDialogTitle:d.toLanguageString(t.taskBoardDelColumnDialogTitle,t.messages[t.taskBoardDelColumnDialogTitle]),confirmDialogConfirmButton:d.toLanguageString(t.taskBoardDelColumnConfirmBtn,t.messages[t.taskBoardDelColumnConfirmBtn]),confirmDialogCancelButton:d.toLanguageString(t.taskBoardDelColumnCancelBtn,t.messages[t.taskBoardDelColumnCancelBtn]),editButtonTitle:d.toLanguageString(t.taskBoardEditColumnButton,t.messages[t.taskBoardEditColumnButton]),addButtonTitle:d.toLanguageString(t.taskBoardAddCardButton,t.messages[t.taskBoardAddCardButton]),closeButtonTitle:d.toLanguageString(t.taskBoardDeleteColumnButton,t.messages[t.taskBoardDeleteColumnButton])},m&&m.map(e=>n.createElement(F.TaskBoardCardBase,{key:e.id,tabIndex:a.tabIndex,task:e,disabled:!!a.column.edit,onDeleteTask:()=>E(e),showEditPane:()=>b(e),dragTargetRef:a.dragTargetRef,style:{borderLeftColor:e.priority.color},cardComponent:a.cardComponent})))};g.propTypes={column:h.object.isRequired,taskMap:h.object};g.displayName="KendoReactTaskBoardColumn";exports.TaskBoardColumnBase=g;
|
|
@@ -0,0 +1,129 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
*-------------------------------------------------------------------------------------------
|
|
4
|
+
* Copyright © 2024 Progress Software Corporation. All rights reserved.
|
|
5
|
+
* Licensed under commercial license. See LICENSE.md in the package root for more information
|
|
6
|
+
*-------------------------------------------------------------------------------------------
|
|
7
|
+
*/
|
|
8
|
+
"use client";
|
|
9
|
+
import * as t from "react";
|
|
10
|
+
import D from "prop-types";
|
|
11
|
+
import { useLocalization as _ } from "@progress/kendo-react-intl";
|
|
12
|
+
import { taskBoardDelColumnDialogMsg as b, messages as i, taskBoardDelColumnDialogTitle as h, taskBoardDelColumnConfirmBtn as E, taskBoardDelColumnCancelBtn as w, taskBoardEditColumnButton as S, taskBoardAddCardButton as v, taskBoardDeleteColumnButton as y } from "./messages/index.mjs";
|
|
13
|
+
import { TASKBOARD_PLACEHOLDER as F } from "./constants.mjs";
|
|
14
|
+
import { TaskBoardColumnHeader as G } from "./column/ColumnHeader.mjs";
|
|
15
|
+
import { TaskBoardColumnBody as J } from "./column/ColumnBody.mjs";
|
|
16
|
+
import { TaskBoardConfirmDialog as Q } from "./TaskBoardConfirmDialog.mjs";
|
|
17
|
+
import { TaskBoardEditCard as U } from "./TaskBoardEditCard.mjs";
|
|
18
|
+
import { TaskBoardAddCard as W } from "./TaskBoardAddCard.mjs";
|
|
19
|
+
import { TaskBoardCardBase as X } from "./TaskBoardCardBase.mjs";
|
|
20
|
+
const L = (a) => {
|
|
21
|
+
const [p, s] = t.useState(!1), [A, m] = t.useState(!1), [u, R] = t.useState(!1), [P, x] = t.useState(), {
|
|
22
|
+
dragTargetRef: l,
|
|
23
|
+
column: o,
|
|
24
|
+
onColumnChange: n,
|
|
25
|
+
tasks: c,
|
|
26
|
+
elementRef: I,
|
|
27
|
+
style: C,
|
|
28
|
+
onTaskCreate: g,
|
|
29
|
+
onTaskEdit: f,
|
|
30
|
+
onTaskDelete: k
|
|
31
|
+
} = a, r = _(), M = t.useCallback((e) => {
|
|
32
|
+
const d = { ...o, title: e.value };
|
|
33
|
+
n.call(void 0, d, o);
|
|
34
|
+
}, [o, n]), N = t.useCallback(() => {
|
|
35
|
+
const e = { ...o, edit: !0 };
|
|
36
|
+
n.call(void 0, e, o);
|
|
37
|
+
}, [o, n]), j = t.useCallback(() => {
|
|
38
|
+
const e = { ...o, edit: !1 };
|
|
39
|
+
n.call(void 0, e, o);
|
|
40
|
+
}, [o, n]), z = t.useCallback(() => {
|
|
41
|
+
n.call(void 0, null, o);
|
|
42
|
+
}, [o, n]), H = () => {
|
|
43
|
+
R(!u);
|
|
44
|
+
}, K = () => {
|
|
45
|
+
s(!0);
|
|
46
|
+
}, T = (e) => {
|
|
47
|
+
m(!0), x(e);
|
|
48
|
+
}, O = () => {
|
|
49
|
+
s(!1), m(!1);
|
|
50
|
+
}, V = t.useCallback((e) => {
|
|
51
|
+
s(!1), g.call(void 0, { ...e, status: o.status });
|
|
52
|
+
}, [g, o]), q = t.useCallback((e, d) => {
|
|
53
|
+
m(!1), f.call(void 0, e, d);
|
|
54
|
+
}, [f]), B = t.useCallback((e) => {
|
|
55
|
+
k.call(void 0, e);
|
|
56
|
+
}, [k]);
|
|
57
|
+
if (o.isPlaceholder && l && l.current) {
|
|
58
|
+
const e = l.current ? l.current.width : 0, d = l.current ? l.current.height : 0;
|
|
59
|
+
return /* @__PURE__ */ t.createElement(
|
|
60
|
+
"div",
|
|
61
|
+
{
|
|
62
|
+
style: { width: e, height: d },
|
|
63
|
+
className: "k-taskboard-column k-taskboard-drag-placeholder",
|
|
64
|
+
[F]: !0
|
|
65
|
+
}
|
|
66
|
+
);
|
|
67
|
+
}
|
|
68
|
+
return /* @__PURE__ */ t.createElement(
|
|
69
|
+
a.columnComponent,
|
|
70
|
+
{
|
|
71
|
+
column: a.column,
|
|
72
|
+
tasks: c,
|
|
73
|
+
priorities: a.priorities,
|
|
74
|
+
style: l ? { overflow: "visible", ...C } : C,
|
|
75
|
+
tabIndex: a.tabIndex,
|
|
76
|
+
elementRef: I,
|
|
77
|
+
onTaskCreate: V,
|
|
78
|
+
onTaskEdit: q,
|
|
79
|
+
onTaskDelete: B,
|
|
80
|
+
card: a.cardComponent,
|
|
81
|
+
header: G,
|
|
82
|
+
body: J,
|
|
83
|
+
confirmDialog: Q,
|
|
84
|
+
editCardDialog: U,
|
|
85
|
+
addCardDialog: W,
|
|
86
|
+
onTitleChange: M,
|
|
87
|
+
onColumnEnterEdit: N,
|
|
88
|
+
onColumnExitEdit: j,
|
|
89
|
+
onColumnConfirmDelete: z,
|
|
90
|
+
onShowAddCardDialog: K,
|
|
91
|
+
onShowEditCardPane: T,
|
|
92
|
+
onColumnDelete: H,
|
|
93
|
+
onCloseDialog: O,
|
|
94
|
+
showAddCard: p,
|
|
95
|
+
showEditCard: A,
|
|
96
|
+
showColumnConfirmDelete: u,
|
|
97
|
+
editedTask: P,
|
|
98
|
+
confirmDialogMessage: r.toLanguageString(b, i[b]),
|
|
99
|
+
confirmDialogTitle: r.toLanguageString(h, i[h]),
|
|
100
|
+
confirmDialogConfirmButton: r.toLanguageString(E, i[E]),
|
|
101
|
+
confirmDialogCancelButton: r.toLanguageString(w, i[w]),
|
|
102
|
+
editButtonTitle: r.toLanguageString(S, i[S]),
|
|
103
|
+
addButtonTitle: r.toLanguageString(v, i[v]),
|
|
104
|
+
closeButtonTitle: r.toLanguageString(y, i[y])
|
|
105
|
+
},
|
|
106
|
+
c && c.map((e) => /* @__PURE__ */ t.createElement(
|
|
107
|
+
X,
|
|
108
|
+
{
|
|
109
|
+
key: e.id,
|
|
110
|
+
tabIndex: a.tabIndex,
|
|
111
|
+
task: e,
|
|
112
|
+
disabled: !!a.column.edit,
|
|
113
|
+
onDeleteTask: () => B(e),
|
|
114
|
+
showEditPane: () => T(e),
|
|
115
|
+
dragTargetRef: a.dragTargetRef,
|
|
116
|
+
style: { borderLeftColor: e.priority.color },
|
|
117
|
+
cardComponent: a.cardComponent
|
|
118
|
+
}
|
|
119
|
+
))
|
|
120
|
+
);
|
|
121
|
+
};
|
|
122
|
+
L.propTypes = {
|
|
123
|
+
column: D.object.isRequired,
|
|
124
|
+
taskMap: D.object
|
|
125
|
+
};
|
|
126
|
+
L.displayName = "KendoReactTaskBoardColumn";
|
|
127
|
+
export {
|
|
128
|
+
L as TaskBoardColumnBase
|
|
129
|
+
};
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
*-------------------------------------------------------------------------------------------
|
|
4
|
+
* Copyright © 2024 Progress Software Corporation. All rights reserved.
|
|
5
|
+
* Licensed under commercial license. See LICENSE.md in the package root for more information
|
|
6
|
+
*-------------------------------------------------------------------------------------------
|
|
7
|
+
*/
|
|
8
|
+
"use client";"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const g=require("react"),o=require("prop-types"),l=require("@progress/kendo-react-dialogs"),s=require("@progress/kendo-react-buttons");function f(e){const n=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const t in e)if(t!=="default"){const i=Object.getOwnPropertyDescriptor(e,t);Object.defineProperty(n,t,i.get?i:{enumerable:!0,get:()=>e[t]})}}return n.default=e,Object.freeze(n)}const r=f(g),a=e=>{const{onClose:n,onConfirm:t,dialogMessage:i,dialogTitle:c,dialogConfirmButton:u,dialogCancelButton:d}=e;return r.createElement(l.Dialog,{title:c,closeIcon:!1},i,r.createElement(l.DialogActionsBar,{layout:"end"},r.createElement(s.Button,{themeColor:"primary",onClick:t},u),r.createElement(s.Button,{onClick:n},d)))};a.propTypes={onClose:o.func.isRequired,onConfirm:o.func.isRequired,dialogMessage:o.string.isRequired,dialogTitle:o.string.isRequired,dialogConfirmButton:o.string.isRequired,dialogCancelButton:o.string.isRequired};a.displayName="KendoReactTaskBoardConfirmDialog";exports.TaskBoardConfirmDialog=a;
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
*-------------------------------------------------------------------------------------------
|
|
4
|
+
* Copyright © 2024 Progress Software Corporation. All rights reserved.
|
|
5
|
+
* Licensed under commercial license. See LICENSE.md in the package root for more information
|
|
6
|
+
*-------------------------------------------------------------------------------------------
|
|
7
|
+
*/
|
|
8
|
+
"use client";
|
|
9
|
+
import * as o from "react";
|
|
10
|
+
import e from "prop-types";
|
|
11
|
+
import { Dialog as c, DialogActionsBar as g } from "@progress/kendo-react-dialogs";
|
|
12
|
+
import { Button as i } from "@progress/kendo-react-buttons";
|
|
13
|
+
const t = (r) => {
|
|
14
|
+
const { onClose: n, onConfirm: a, dialogMessage: l, dialogTitle: s, dialogConfirmButton: m, dialogCancelButton: d } = r;
|
|
15
|
+
return /* @__PURE__ */ o.createElement(c, { title: s, closeIcon: !1 }, l, /* @__PURE__ */ o.createElement(g, { layout: "end" }, /* @__PURE__ */ o.createElement(i, { themeColor: "primary", onClick: a }, m), /* @__PURE__ */ o.createElement(i, { onClick: n }, d)));
|
|
16
|
+
};
|
|
17
|
+
t.propTypes = {
|
|
18
|
+
onClose: e.func.isRequired,
|
|
19
|
+
onConfirm: e.func.isRequired,
|
|
20
|
+
dialogMessage: e.string.isRequired,
|
|
21
|
+
dialogTitle: e.string.isRequired,
|
|
22
|
+
dialogConfirmButton: e.string.isRequired,
|
|
23
|
+
dialogCancelButton: e.string.isRequired
|
|
24
|
+
};
|
|
25
|
+
t.displayName = "KendoReactTaskBoardConfirmDialog";
|
|
26
|
+
export {
|
|
27
|
+
t as TaskBoardConfirmDialog
|
|
28
|
+
};
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
*-------------------------------------------------------------------------------------------
|
|
4
|
+
* Copyright © 2024 Progress Software Corporation. All rights reserved.
|
|
5
|
+
* Licensed under commercial license. See LICENSE.md in the package root for more information
|
|
6
|
+
*-------------------------------------------------------------------------------------------
|
|
7
|
+
*/
|
|
8
|
+
"use client";"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const c=require("react"),u=require("@progress/kendo-react-intl"),e=require("./messages/index.js"),k=require("./hooks/taskEditing.js");function B(t){const r=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(t){for(const i in t)if(i!=="default"){const n=Object.getOwnPropertyDescriptor(t,i);Object.defineProperty(r,i,n.get?n:{enumerable:!0,get:()=>t[i]})}}return r.default=t,Object.freeze(r)}const L=B(c),o=t=>{const{onTitleChange:r,title:i,onDescriptionChange:n,description:s,onPriorityChange:d,priority:l,onSave:g}=k.useTaskEditing(t),a=u.useLocalization();return L.createElement(t.editPane,{header:a.toLanguageString(e.taskBoardEditCardPaneTitle,e.messages[e.taskBoardEditCardPaneTitle])+t.task.title,titleInputTitle:a.toLanguageString(e.taskBoardAddCardTitleLabel,e.messages[e.taskBoardAddCardTitleLabel]),descriptionInputTitle:a.toLanguageString(e.taskBoardAddCardDescriptionLabel,e.messages[e.taskBoardAddCardDescriptionLabel]),priorityDropDownTitle:a.toLanguageString(e.taskBoardAddCardPriorityLabel,e.messages[e.taskBoardAddCardPriorityLabel]),task:t.task,saveButton:a.toLanguageString(e.taskBoardEditCardPaneSaveBtn,e.messages[e.taskBoardEditCardPaneSaveBtn]),cancelButton:a.toLanguageString(e.taskBoardEditPaneCancelBtn,e.messages[e.taskBoardEditPaneCancelBtn]),priorities:t.priorities,titleLabel:a.toLanguageString(e.taskBoardEditPaneTitleLabel,e.messages[e.taskBoardEditPaneTitleLabel]),descriptionLabel:a.toLanguageString(e.taskBoardEditPaneDescriptionLabel,e.messages[e.taskBoardEditPaneDescriptionLabel]),priorityLabel:a.toLanguageString(e.taskBoardEditPanePriorityLabel,e.messages[e.taskBoardEditPanePriorityLabel]),onSave:g,onClose:t.onClose,onTitleChange:r,title:i,onDescriptionChange:n,description:s,onPriorityChange:d,priority:l})};o.propTypes={};o.displayName="KendoReactTaskBoardEditCard";exports.TaskBoardEditCard=o;
|