@art-tools/react-gantt 0.2.1 → 0.3.0
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/README.md +30 -8
- package/dist/index.cjs +1 -1
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +27 -6
- package/dist/index.d.ts +27 -6
- package/dist/index.mjs +895 -801
- package/dist/index.mjs.map +1 -1
- package/dist/style.css +1 -1
- package/package.json +3 -3
package/dist/index.mjs
CHANGED
|
@@ -125,7 +125,7 @@ function N(e, t, n) {
|
|
|
125
125
|
default: throw Error(`Unsupported unit: ${t}`);
|
|
126
126
|
}
|
|
127
127
|
}
|
|
128
|
-
function
|
|
128
|
+
function ee(e, t, n) {
|
|
129
129
|
let r = E[n];
|
|
130
130
|
if (r !== void 0) return (t.getTime() - e.getTime()) / r;
|
|
131
131
|
let i = n === "month" ? 1 : n === "quarter" ? 3 : 12, a = e.getFullYear() * 12 + e.getMonth(), o = t.getFullYear() * 12 + t.getMonth(), s = Math.floor((o - a) / i);
|
|
@@ -134,16 +134,16 @@ function P(e, t, n) {
|
|
|
134
134
|
let c = N(e, n, s).getTime(), l = N(e, n, s + 1).getTime();
|
|
135
135
|
return s + (t.getTime() - c) / (l - c);
|
|
136
136
|
}
|
|
137
|
-
function
|
|
137
|
+
function te(e, t, n) {
|
|
138
138
|
let r = E[t];
|
|
139
139
|
if (r !== void 0) return new Date(e.getTime() + n * r);
|
|
140
140
|
let i = Math.floor(n), a = n - i, o = N(e, t, i).getTime(), s = N(e, t, i + 1).getTime();
|
|
141
141
|
return new Date(o + a * (s - o));
|
|
142
142
|
}
|
|
143
|
-
function
|
|
143
|
+
function ne(e, t, n = "day", r = 1) {
|
|
144
144
|
return Array.from({ length: t }, (t, i) => N(e, n, i * r));
|
|
145
145
|
}
|
|
146
|
-
function
|
|
146
|
+
function P(e) {
|
|
147
147
|
let t = e[0];
|
|
148
148
|
if (!t) return null;
|
|
149
149
|
let n = t.startDate, r = t.endDate ?? t.startDate;
|
|
@@ -157,19 +157,19 @@ function I(e) {
|
|
|
157
157
|
max: r
|
|
158
158
|
};
|
|
159
159
|
}
|
|
160
|
-
var
|
|
161
|
-
function
|
|
162
|
-
let t =
|
|
160
|
+
var F = S(P, 3), I = 1440, L = 6e4, R = [0, I], z = /^\s*(\d{1,2}):(\d{2})\s*-\s*(\d{1,2}):(\d{2})\s*$/;
|
|
161
|
+
function re(e) {
|
|
162
|
+
let t = z.exec(e);
|
|
163
163
|
if (!t) throw Error(`Invalid working-hours range ${JSON.stringify(e)}: expected "H:MM-H:MM", e.g. "8:30-12:00".`);
|
|
164
164
|
let n = Number(t[1]) * 60 + Number(t[2]), r = Number(t[3]) * 60 + Number(t[4]);
|
|
165
165
|
if (n < 0 || n >= 1440) throw Error(`Invalid working-hours range ${JSON.stringify(e)}: start must be within the day.`);
|
|
166
166
|
if (r <= n || r > 1440) throw Error(`Invalid working-hours range ${JSON.stringify(e)}: end must be after start and no later than 24:00.`);
|
|
167
167
|
return [n, r];
|
|
168
168
|
}
|
|
169
|
-
function
|
|
170
|
-
if (e === void 0) return
|
|
169
|
+
function B(e) {
|
|
170
|
+
if (e === void 0) return R;
|
|
171
171
|
if (e === !1) return [];
|
|
172
|
-
let t = e.map(
|
|
172
|
+
let t = e.map(re).toSorted((e, t) => e[0] - t[0]), n = [];
|
|
173
173
|
for (let [e, r] of t) {
|
|
174
174
|
let t = n.length > 0 ? n[n.length - 1] : void 0;
|
|
175
175
|
if (t !== void 0 && e <= t) {
|
|
@@ -180,7 +180,7 @@ function H(e) {
|
|
|
180
180
|
}
|
|
181
181
|
return n;
|
|
182
182
|
}
|
|
183
|
-
function
|
|
183
|
+
function ie(e, t) {
|
|
184
184
|
let n = [], r = 0;
|
|
185
185
|
for (let t = 0; t < e.length; t += 2) n.push(r), r += e[t + 1] - e[t];
|
|
186
186
|
return {
|
|
@@ -190,43 +190,43 @@ function ne(e, t) {
|
|
|
190
190
|
id: t
|
|
191
191
|
};
|
|
192
192
|
}
|
|
193
|
-
function
|
|
193
|
+
function ae() {
|
|
194
194
|
let e = /* @__PURE__ */ new Map();
|
|
195
195
|
return (t) => {
|
|
196
196
|
let n = t.join(","), r = e.get(n);
|
|
197
197
|
if (r) return r;
|
|
198
|
-
let i =
|
|
198
|
+
let i = ie(t, e.size);
|
|
199
199
|
return e.set(n, i), i;
|
|
200
200
|
};
|
|
201
201
|
}
|
|
202
|
-
function
|
|
202
|
+
function oe(e) {
|
|
203
203
|
return e === void 0 ? "*" : e === !1 ? "-" : e.join(",");
|
|
204
204
|
}
|
|
205
|
-
function
|
|
205
|
+
function se(e) {
|
|
206
206
|
if (!e) return "";
|
|
207
|
-
let t = [
|
|
207
|
+
let t = [oe(e.hours)];
|
|
208
208
|
for (let n = 0; n < 7; n++) {
|
|
209
209
|
let r = e.days?.[n];
|
|
210
|
-
r !== void 0 && t.push(`${n}=${
|
|
210
|
+
r !== void 0 && t.push(`${n}=${oe(r)}`);
|
|
211
211
|
}
|
|
212
212
|
let n = e.dates;
|
|
213
|
-
if (n) for (let e of Object.keys(n).toSorted()) t.push(`${e}=${
|
|
213
|
+
if (n) for (let e of Object.keys(n).toSorted()) t.push(`${e}=${oe(n[e])}`);
|
|
214
214
|
return t.join("|");
|
|
215
215
|
}
|
|
216
|
-
var
|
|
217
|
-
function
|
|
218
|
-
let t =
|
|
216
|
+
var ce = /^(\d{4})-(\d{2})-(\d{2})$/;
|
|
217
|
+
function le(e) {
|
|
218
|
+
let t = ce.exec(e);
|
|
219
219
|
if (!t) throw Error(`Invalid calendar date key ${JSON.stringify(e)}: expected a local civil date, "YYYY-MM-DD".`);
|
|
220
220
|
return k(new Date(Number(t[1]), Number(t[2]) - 1, Number(t[3])));
|
|
221
221
|
}
|
|
222
|
-
function
|
|
223
|
-
let n =
|
|
222
|
+
function ue(e, t) {
|
|
223
|
+
let n = ae(), r = B(e.hours), i = [];
|
|
224
224
|
for (let t = 0; t < 7; t++) {
|
|
225
225
|
let a = e.days?.[t];
|
|
226
|
-
i.push(n(a === void 0 ? r :
|
|
226
|
+
i.push(n(a === void 0 ? r : B(a)));
|
|
227
227
|
}
|
|
228
228
|
let a = /* @__PURE__ */ new Map();
|
|
229
|
-
if (e.dates) for (let [t, r] of Object.entries(e.dates)) a.set(
|
|
229
|
+
if (e.dates) for (let [t, r] of Object.entries(e.dates)) a.set(le(t), n(B(r)));
|
|
230
230
|
let o = [...a.keys()].toSorted((e, t) => e - t), s = 0, c = !0, l = a.size === 0;
|
|
231
231
|
for (let e of i) s += e.totalMinutes, e.totalMinutes !== 0 && e.totalMinutes !== 1440 && (c = !1), e.totalMinutes !== 1440 && (l = !1);
|
|
232
232
|
for (let e of a.values()) e.totalMinutes !== 0 && e.totalMinutes !== 1440 && (c = !1);
|
|
@@ -240,13 +240,13 @@ function ce(e, t) {
|
|
|
240
240
|
isAlwaysWorking: l,
|
|
241
241
|
isDayGranular: c,
|
|
242
242
|
weekMinutes: s,
|
|
243
|
-
msPerWorkingDay: u *
|
|
243
|
+
msPerWorkingDay: u * L
|
|
244
244
|
};
|
|
245
245
|
}
|
|
246
|
-
function
|
|
246
|
+
function V(e, t) {
|
|
247
247
|
return e.byDate.get(t) || e.byWeekday[((t + 4) % 7 + 7) % 7];
|
|
248
248
|
}
|
|
249
|
-
function
|
|
249
|
+
function de(e, t) {
|
|
250
250
|
let n = e.overrideDays, r = 0, i = n.length;
|
|
251
251
|
for (; r < i;) {
|
|
252
252
|
let e = r + i >> 1;
|
|
@@ -254,7 +254,7 @@ function le(e, t) {
|
|
|
254
254
|
}
|
|
255
255
|
return r < n.length ? n[r] : Infinity;
|
|
256
256
|
}
|
|
257
|
-
function
|
|
257
|
+
function fe(e, t) {
|
|
258
258
|
let n = e.overrideDays, r = 0, i = n.length;
|
|
259
259
|
for (; r < i;) {
|
|
260
260
|
let e = r + i >> 1;
|
|
@@ -264,24 +264,24 @@ function ue(e, t) {
|
|
|
264
264
|
}
|
|
265
265
|
//#endregion
|
|
266
266
|
//#region src/hooks/useResolvedCalendar.ts
|
|
267
|
-
function
|
|
268
|
-
let t = p(null), n =
|
|
267
|
+
function pe(e) {
|
|
268
|
+
let t = p(null), n = se(e);
|
|
269
269
|
return (!t.current || t.current.key !== n) && (t.current = {
|
|
270
270
|
key: n,
|
|
271
|
-
value: e ?
|
|
271
|
+
value: e ? ue(e, n) : null
|
|
272
272
|
}), t.current.value;
|
|
273
273
|
}
|
|
274
274
|
//#endregion
|
|
275
275
|
//#region src/core/workingTime.ts
|
|
276
|
-
var
|
|
277
|
-
function
|
|
278
|
-
return (e.getHours() *
|
|
276
|
+
var me = 36e5, he = 864e5, ge = 2e4;
|
|
277
|
+
function H(e) {
|
|
278
|
+
return (e.getHours() * me + e.getMinutes() * L + e.getSeconds() * 1e3 + e.getMilliseconds()) / L;
|
|
279
279
|
}
|
|
280
|
-
function
|
|
280
|
+
function _e(e, t) {
|
|
281
281
|
let n = A(e);
|
|
282
|
-
return new Date(n.getFullYear(), n.getMonth(), n.getDate(), 0, 0, 0, Math.round(t *
|
|
282
|
+
return new Date(n.getFullYear(), n.getMonth(), n.getDate(), 0, 0, 0, Math.round(t * L));
|
|
283
283
|
}
|
|
284
|
-
function
|
|
284
|
+
function ve(e, t) {
|
|
285
285
|
let { intervals: n, prefix: r } = e;
|
|
286
286
|
for (let e = 0, i = 0; e < n.length; e += 2, i++) {
|
|
287
287
|
let a = n[e], o = n[e + 1];
|
|
@@ -290,12 +290,12 @@ function _e(e, t) {
|
|
|
290
290
|
}
|
|
291
291
|
return e.totalMinutes;
|
|
292
292
|
}
|
|
293
|
-
function
|
|
293
|
+
function ye(e, t) {
|
|
294
294
|
let { intervals: n, prefix: r } = e, i = n.length > 0 ? n[0] : 0;
|
|
295
295
|
for (let e = 0, a = 0; e < n.length && !(r[a] >= t); e += 2, a++) i = n[e] + (t - r[a]);
|
|
296
296
|
return i;
|
|
297
297
|
}
|
|
298
|
-
function
|
|
298
|
+
function be(e, t) {
|
|
299
299
|
let { intervals: n, prefix: r } = e;
|
|
300
300
|
for (let e = 0, i = 0; e < n.length; e += 2, i++) {
|
|
301
301
|
let a = n[e + 1] - n[e];
|
|
@@ -303,90 +303,90 @@ function ve(e, t) {
|
|
|
303
303
|
}
|
|
304
304
|
return n.length > 0 ? n[n.length - 1] : 0;
|
|
305
305
|
}
|
|
306
|
-
function
|
|
306
|
+
function U(e, t) {
|
|
307
307
|
let { intervals: n } = e;
|
|
308
308
|
for (let e = 0; e < n.length; e += 2) if (t < n[e + 1]) return Math.max(t, n[e]);
|
|
309
309
|
return null;
|
|
310
310
|
}
|
|
311
|
-
function
|
|
311
|
+
function xe(e, t) {
|
|
312
312
|
let { intervals: n } = e, r = null;
|
|
313
313
|
for (let e = 0; e < n.length; e += 2) t > n[e] && (r = Math.min(t, n[e + 1]));
|
|
314
314
|
return r;
|
|
315
315
|
}
|
|
316
|
-
function
|
|
316
|
+
function Se(e, t) {
|
|
317
317
|
if (!e || e.isAlwaysWorking) return !0;
|
|
318
|
-
let n =
|
|
318
|
+
let n = V(e, k(t)), r = H(t), { intervals: i } = n;
|
|
319
319
|
for (let e = 0; e < i.length; e += 2) if (r >= i[e] && r < i[e + 1]) return !0;
|
|
320
320
|
return !1;
|
|
321
321
|
}
|
|
322
|
-
function
|
|
322
|
+
function W(e, t, n) {
|
|
323
323
|
if (!e || e.isAlwaysWorking || e.weekMinutes === 0 && e.byDate.size === 0) return t;
|
|
324
|
-
let r = k(t), i =
|
|
325
|
-
for (let a = 0; a <
|
|
326
|
-
let a =
|
|
324
|
+
let r = k(t), i = H(t);
|
|
325
|
+
for (let a = 0; a < ge; a++) {
|
|
326
|
+
let a = V(e, r);
|
|
327
327
|
if (n === 1) {
|
|
328
|
-
let e =
|
|
329
|
-
if (e !== null) return e === i && r === k(t) ? t :
|
|
328
|
+
let e = U(a, i);
|
|
329
|
+
if (e !== null) return e === i && r === k(t) ? t : _e(r, e);
|
|
330
330
|
r += 1, i = 0;
|
|
331
331
|
continue;
|
|
332
332
|
}
|
|
333
|
-
let o =
|
|
334
|
-
if (o !== null) return o === i && r === k(t) ? t :
|
|
335
|
-
--r, i =
|
|
333
|
+
let o = xe(a, i);
|
|
334
|
+
if (o !== null) return o === i && r === k(t) ? t : _e(r, o);
|
|
335
|
+
--r, i = I;
|
|
336
336
|
}
|
|
337
337
|
return t;
|
|
338
338
|
}
|
|
339
|
-
function
|
|
340
|
-
if (!e || e.isAlwaysWorking ||
|
|
341
|
-
let n =
|
|
339
|
+
function Ce(e, t) {
|
|
340
|
+
if (!e || e.isAlwaysWorking || Se(e, t)) return t;
|
|
341
|
+
let n = W(e, t, 1), r = W(e, t, -1);
|
|
342
342
|
return n.getTime() - t.getTime() <= t.getTime() - r.getTime() ? n : r;
|
|
343
343
|
}
|
|
344
|
-
function
|
|
345
|
-
let r = k(t), i =
|
|
346
|
-
for (let t = 0; t <
|
|
347
|
-
let t =
|
|
348
|
-
if (a <= o) return
|
|
344
|
+
function we(e, t, n) {
|
|
345
|
+
let r = k(t), i = H(t), a = n;
|
|
346
|
+
for (let t = 0; t < ge; t++) {
|
|
347
|
+
let t = V(e, r), n = ve(t, i), o = t.totalMinutes - n;
|
|
348
|
+
if (a <= o) return _e(r, ye(t, n + a));
|
|
349
349
|
if (a -= o, r += 1, i = 0, e.weekMinutes > 0 && a > e.weekMinutes) {
|
|
350
|
-
let t =
|
|
350
|
+
let t = de(e, r), n = t === Infinity ? Infinity : Math.floor((t - r) / 7), i = Math.ceil(a / e.weekMinutes) - 1, o = Math.min(n, i);
|
|
351
351
|
o > 0 && Number.isFinite(o) && (r += o * 7, a -= o * e.weekMinutes);
|
|
352
352
|
}
|
|
353
353
|
}
|
|
354
|
-
return
|
|
354
|
+
return _e(r, i);
|
|
355
355
|
}
|
|
356
|
-
function
|
|
357
|
-
let r = k(t), i =
|
|
358
|
-
for (let t = 0; t <
|
|
359
|
-
let t =
|
|
360
|
-
if (a <= n) return
|
|
361
|
-
if (a -= n, --r, i =
|
|
362
|
-
let t =
|
|
356
|
+
function Te(e, t, n) {
|
|
357
|
+
let r = k(t), i = H(t), a = n;
|
|
358
|
+
for (let t = 0; t < ge; t++) {
|
|
359
|
+
let t = V(e, r), n = ve(t, i);
|
|
360
|
+
if (a <= n) return _e(r, be(t, n - a));
|
|
361
|
+
if (a -= n, --r, i = I, e.weekMinutes > 0 && a > e.weekMinutes) {
|
|
362
|
+
let t = fe(e, r), n = t === -Infinity ? Infinity : Math.floor((r - t) / 7), i = Math.ceil(a / e.weekMinutes) - 1, o = Math.min(n, i);
|
|
363
363
|
o > 0 && Number.isFinite(o) && (r -= o * 7, a -= o * e.weekMinutes);
|
|
364
364
|
}
|
|
365
365
|
}
|
|
366
|
-
return
|
|
366
|
+
return _e(r, i);
|
|
367
367
|
}
|
|
368
|
-
function
|
|
368
|
+
function G(e, t, n, r) {
|
|
369
369
|
if (!e) return new Date(t.getTime() + n);
|
|
370
|
-
let i =
|
|
371
|
-
return n === 0 || e.weekMinutes === 0 && e.byDate.size === 0 ? i : n > 0 ?
|
|
370
|
+
let i = W(e, t, r ?? (n < 0 ? -1 : 1));
|
|
371
|
+
return n === 0 || e.weekMinutes === 0 && e.byDate.size === 0 ? i : n > 0 ? we(e, i, n / L) : Te(e, i, -n / L);
|
|
372
372
|
}
|
|
373
|
-
function
|
|
373
|
+
function K(e, t, n) {
|
|
374
374
|
if (!e) return n.getTime() - t.getTime();
|
|
375
|
-
if (n.getTime() < t.getTime()) return -
|
|
376
|
-
let r = k(n), i = k(t), a =
|
|
375
|
+
if (n.getTime() < t.getTime()) return -K(e, n, t);
|
|
376
|
+
let r = k(n), i = k(t), a = H(t), o = 0;
|
|
377
377
|
for (; i < r;) {
|
|
378
378
|
if (a === 0 && e.weekMinutes > 0) {
|
|
379
|
-
let t =
|
|
379
|
+
let t = de(e, i), n = Math.floor((Math.min(r, t) - i) / 7);
|
|
380
380
|
if (n > 0) {
|
|
381
381
|
o += n * e.weekMinutes, i += n * 7;
|
|
382
382
|
continue;
|
|
383
383
|
}
|
|
384
384
|
}
|
|
385
|
-
let t =
|
|
386
|
-
o += t.totalMinutes -
|
|
385
|
+
let t = V(e, i);
|
|
386
|
+
o += t.totalMinutes - ve(t, a), i += 1, a = 0;
|
|
387
387
|
}
|
|
388
|
-
let s =
|
|
389
|
-
return o +=
|
|
388
|
+
let s = V(e, i);
|
|
389
|
+
return o += ve(s, H(n)) - ve(s, a), o * L;
|
|
390
390
|
}
|
|
391
391
|
var Ee = { isNonWorking: !1 };
|
|
392
392
|
function De(e, t, n) {
|
|
@@ -397,12 +397,12 @@ function De(e, t, n) {
|
|
|
397
397
|
reason: "weekend"
|
|
398
398
|
} : Ee;
|
|
399
399
|
}
|
|
400
|
-
if (
|
|
400
|
+
if (K(e, t, n) > 0) return Ee;
|
|
401
401
|
let r = k(t);
|
|
402
402
|
return e.byDate.has(r) ? {
|
|
403
403
|
isNonWorking: !0,
|
|
404
404
|
reason: "holiday"
|
|
405
|
-
} :
|
|
405
|
+
} : V(e, r).totalMinutes === 0 ? {
|
|
406
406
|
isNonWorking: !0,
|
|
407
407
|
reason: "weekend"
|
|
408
408
|
} : {
|
|
@@ -411,10 +411,10 @@ function De(e, t, n) {
|
|
|
411
411
|
};
|
|
412
412
|
}
|
|
413
413
|
function Oe(e, t) {
|
|
414
|
-
return t === "minute" ?
|
|
414
|
+
return t === "minute" ? L : t === "hour" ? me : !e || e.msPerWorkingDay === 0 ? he : e.msPerWorkingDay;
|
|
415
415
|
}
|
|
416
416
|
function ke(e, t, n, r, i) {
|
|
417
|
-
return
|
|
417
|
+
return G(e, t, n * Oe(e, r), i);
|
|
418
418
|
}
|
|
419
419
|
//#endregion
|
|
420
420
|
//#region src/core/taskDates.ts
|
|
@@ -437,7 +437,7 @@ function Pe(e, t) {
|
|
|
437
437
|
if (!(n.getTime() <= e.startDate.getTime())) return Me(e.startDate, n);
|
|
438
438
|
}
|
|
439
439
|
function Fe(e, t) {
|
|
440
|
-
return
|
|
440
|
+
return K(t.calendar, e.startDate, je(e, t)) / Oe(t.calendar, t.durationUnit);
|
|
441
441
|
}
|
|
442
442
|
//#endregion
|
|
443
443
|
//#region src/core/labels.ts
|
|
@@ -635,15 +635,15 @@ function tt(e, t) {
|
|
|
635
635
|
}
|
|
636
636
|
function nt(e, t) {
|
|
637
637
|
let { start: n, end: r } = tt(e, t);
|
|
638
|
-
return
|
|
638
|
+
return K(t.calendar, n, r);
|
|
639
639
|
}
|
|
640
640
|
function rt(e, t, n, r, i) {
|
|
641
641
|
let a = i.calendar;
|
|
642
642
|
switch (t) {
|
|
643
|
-
case "FS": return
|
|
644
|
-
case "SS": return
|
|
645
|
-
case "FF": return
|
|
646
|
-
case "SF": return
|
|
643
|
+
case "FS": return G(a, e.end, n, 1);
|
|
644
|
+
case "SS": return G(a, e.start, n, 1);
|
|
645
|
+
case "FF": return G(a, G(a, e.end, n, -1), -r, -1);
|
|
646
|
+
case "SF": return G(a, G(a, e.start, n, -1), -r, -1);
|
|
647
647
|
}
|
|
648
648
|
}
|
|
649
649
|
function it(e) {
|
|
@@ -680,7 +680,7 @@ function ot(e, t, n, r) {
|
|
|
680
680
|
let t = rt(tt(e, r), s.type, (s.lag ?? 0) * a, i, r);
|
|
681
681
|
(o === null || t > o) && (o = t);
|
|
682
682
|
}
|
|
683
|
-
return o === null ? null :
|
|
683
|
+
return o === null ? null : W(r.calendar, o, 1);
|
|
684
684
|
}
|
|
685
685
|
function st(e, t, n) {
|
|
686
686
|
return e.type === "milestone" ? {
|
|
@@ -690,34 +690,34 @@ function st(e, t, n) {
|
|
|
690
690
|
} : {
|
|
691
691
|
...e,
|
|
692
692
|
startDate: t,
|
|
693
|
-
endDate:
|
|
693
|
+
endDate: G(n.calendar, t, nt(e, n), 1)
|
|
694
694
|
};
|
|
695
695
|
}
|
|
696
696
|
function ct(e, t, n) {
|
|
697
697
|
let r = n.calendar, i = n.snapToWorking, a = tt(e, n);
|
|
698
698
|
if (e.type === "milestone") {
|
|
699
|
-
let e = t.kind === "resizeEnd" ? t.endDate : t.startDate, n = i ?
|
|
699
|
+
let e = t.kind === "resizeEnd" ? t.endDate : t.startDate, n = i ? Ce(r, e) : e;
|
|
700
700
|
return {
|
|
701
701
|
startDate: n,
|
|
702
702
|
endDate: n
|
|
703
703
|
};
|
|
704
704
|
}
|
|
705
705
|
if (t.kind === "move") {
|
|
706
|
-
let e =
|
|
706
|
+
let e = K(r, a.start, a.end), n = i ? W(r, t.startDate, 1) : t.startDate;
|
|
707
707
|
return {
|
|
708
708
|
startDate: n,
|
|
709
|
-
endDate:
|
|
709
|
+
endDate: G(r, n, e, 1)
|
|
710
710
|
};
|
|
711
711
|
}
|
|
712
|
-
let o = t.kind === "resizeStart" ? t.startDate : a.start, s = t.kind === "resizeEnd" ? t.endDate : a.end, c = i ?
|
|
713
|
-
if (
|
|
712
|
+
let o = t.kind === "resizeStart" ? t.startDate : a.start, s = t.kind === "resizeEnd" ? t.endDate : a.end, c = i ? W(r, o, 1) : o, l = i ? W(r, s, -1) : s;
|
|
713
|
+
if (K(r, c, l) <= 0) {
|
|
714
714
|
let e = Oe(r, n.durationUnit);
|
|
715
715
|
return t.kind === "resizeStart" ? {
|
|
716
|
-
startDate:
|
|
716
|
+
startDate: G(r, l, -e, -1),
|
|
717
717
|
endDate: l
|
|
718
718
|
} : {
|
|
719
719
|
startDate: c,
|
|
720
|
-
endDate:
|
|
720
|
+
endDate: G(r, c, e, 1)
|
|
721
721
|
};
|
|
722
722
|
}
|
|
723
723
|
return {
|
|
@@ -749,37 +749,107 @@ function lt(e, t, n, r = Ae) {
|
|
|
749
749
|
return o;
|
|
750
750
|
}
|
|
751
751
|
//#endregion
|
|
752
|
-
//#region src/
|
|
752
|
+
//#region src/core/criticalPath.ts
|
|
753
753
|
var ut = {
|
|
754
|
+
criticalTaskIds: /* @__PURE__ */ new Set(),
|
|
755
|
+
criticalDependencyKeys: /* @__PURE__ */ new Set()
|
|
756
|
+
};
|
|
757
|
+
function dt(e, t, n, r, i, a) {
|
|
758
|
+
let o = a.calendar;
|
|
759
|
+
switch (t) {
|
|
760
|
+
case "FS": return G(o, e, -n, 1);
|
|
761
|
+
case "SS": return G(o, G(o, e, -n, 1), i, 1);
|
|
762
|
+
case "FF": return G(o, G(o, e, r, -1), -n, -1);
|
|
763
|
+
case "SF": return G(o, G(o, G(o, e, r, -1), -n, -1), i, 1);
|
|
764
|
+
}
|
|
765
|
+
}
|
|
766
|
+
function ft(e, t, n) {
|
|
767
|
+
if (e.size === 0) return ut;
|
|
768
|
+
let { successorsOf: r, predecessorDeps: i } = t, a = Oe(n.calendar, n.durationUnit), o = null;
|
|
769
|
+
for (let t of e.values()) {
|
|
770
|
+
let e = tt(t, n).end;
|
|
771
|
+
(o === null || e.getTime() > o.getTime()) && (o = e);
|
|
772
|
+
}
|
|
773
|
+
if (o === null) return ut;
|
|
774
|
+
let s = /* @__PURE__ */ new Map(), c = /* @__PURE__ */ new Map(), l = new et();
|
|
775
|
+
for (let t of e.values()) {
|
|
776
|
+
let e = (r.get(t.id) ?? []).length;
|
|
777
|
+
c.set(t.id, e), e === 0 && l.enqueue(t.id);
|
|
778
|
+
}
|
|
779
|
+
let u = (t.size + 1) * (e.size + 1), d = 0;
|
|
780
|
+
for (; !l.isEmpty() && !(d++ > u);) {
|
|
781
|
+
let t = l.dequeue(), u = e.get(t);
|
|
782
|
+
if (!u || s.has(t)) continue;
|
|
783
|
+
let d = r.get(t) ?? [], f = o;
|
|
784
|
+
for (let r of d) {
|
|
785
|
+
let o = e.get(r), c = s.get(r);
|
|
786
|
+
if (!(!o || !c)) for (let e of i.get(r) ?? []) {
|
|
787
|
+
if (e.from !== t) continue;
|
|
788
|
+
let r = dt(c, e.type, (e.lag ?? 0) * a, nt(o, n), nt(u, n), n);
|
|
789
|
+
r.getTime() < f.getTime() && (f = r);
|
|
790
|
+
}
|
|
791
|
+
}
|
|
792
|
+
s.set(t, G(n.calendar, f, -nt(u, n), -1));
|
|
793
|
+
for (let e of i.get(t) ?? []) {
|
|
794
|
+
let t = (c.get(e.from) ?? 0) - 1;
|
|
795
|
+
c.set(e.from, t), t === 0 && l.enqueue(e.from);
|
|
796
|
+
}
|
|
797
|
+
}
|
|
798
|
+
let f = /* @__PURE__ */ new Set();
|
|
799
|
+
for (let t of e.values()) {
|
|
800
|
+
let e = s.get(t.id);
|
|
801
|
+
e && K(n.calendar, t.startDate, e) <= 0 && f.add(t.id);
|
|
802
|
+
}
|
|
803
|
+
let p = /* @__PURE__ */ new Set();
|
|
804
|
+
for (let t of e.values()) if (f.has(t.id)) for (let r of i.get(t.id) ?? []) {
|
|
805
|
+
let i = e.get(r.from);
|
|
806
|
+
!i || !f.has(r.from) || rt(tt(i, n), r.type, (r.lag ?? 0) * a, nt(t, n), n).getTime() === t.startDate.getTime() && p.add(`${r.from}->${r.to}`);
|
|
807
|
+
}
|
|
808
|
+
return {
|
|
809
|
+
criticalTaskIds: f,
|
|
810
|
+
criticalDependencyKeys: p
|
|
811
|
+
};
|
|
812
|
+
}
|
|
813
|
+
//#endregion
|
|
814
|
+
//#region src/hooks/useTaskList.ts
|
|
815
|
+
var pt = {
|
|
816
|
+
criticalTaskIds: /* @__PURE__ */ new Set(),
|
|
817
|
+
criticalDependencyKeys: /* @__PURE__ */ new Set()
|
|
818
|
+
}, mt = {
|
|
754
819
|
transactions: [],
|
|
755
820
|
cursor: 0
|
|
756
|
-
},
|
|
757
|
-
function
|
|
821
|
+
}, ht = [];
|
|
822
|
+
function gt(e) {
|
|
758
823
|
a(e);
|
|
759
824
|
}
|
|
760
|
-
function
|
|
825
|
+
function _t(e, t) {
|
|
761
826
|
let n = e.transactions.slice(0, e.cursor);
|
|
762
827
|
return {
|
|
763
828
|
transactions: [...n, t],
|
|
764
829
|
cursor: n.length + 1
|
|
765
830
|
};
|
|
766
831
|
}
|
|
767
|
-
function
|
|
832
|
+
function vt(e, t) {
|
|
768
833
|
return e instanceof Date && t instanceof Date ? e.getTime() === t.getTime() : Object.is(e, t);
|
|
769
834
|
}
|
|
770
|
-
function
|
|
835
|
+
function yt(e, t) {
|
|
771
836
|
let n = new Set([...Object.keys(e), ...Object.keys(t)]);
|
|
772
|
-
for (let r of n) if (!
|
|
837
|
+
for (let r of n) if (!vt(e[r], t[r])) return !1;
|
|
773
838
|
return !0;
|
|
774
839
|
}
|
|
775
|
-
var
|
|
840
|
+
var bt = (e, t = ht, n = {}, r = Ae) => {
|
|
776
841
|
let i = p(n);
|
|
777
842
|
i.current = n;
|
|
778
843
|
let a = p(r);
|
|
779
844
|
a.current = r;
|
|
780
|
-
let [s, c] = m(
|
|
845
|
+
let [s, c] = m(mt), u = f(() => it(t), [t]), d = p(null), h = f(() => (d.current ??= Je(), Ye(d.current, e, s)), [e, s]), _ = p(h);
|
|
781
846
|
_.current = h;
|
|
782
|
-
let v = f(() => He(h, r), [h, r]), y =
|
|
847
|
+
let v = f(() => He(h, r), [h, r]), y = n.highlightCriticalPath ?? !1, b = f(() => y ? ft(h, u, r) : pt, [
|
|
848
|
+
y,
|
|
849
|
+
h,
|
|
850
|
+
u,
|
|
851
|
+
r
|
|
852
|
+
]), x = o((e, t) => {
|
|
783
853
|
let n = _.current.get(e);
|
|
784
854
|
if (!n) return;
|
|
785
855
|
let { startDate: r, endDate: i } = ct(n, t, a.current), o = {
|
|
@@ -787,7 +857,7 @@ var gt = (e, t = dt, n = {}, r = Ae) => {
|
|
|
787
857
|
startDate: r,
|
|
788
858
|
endDate: i
|
|
789
859
|
};
|
|
790
|
-
if (
|
|
860
|
+
if (yt(o, n)) return;
|
|
791
861
|
let s = [{
|
|
792
862
|
type: "update",
|
|
793
863
|
task: o
|
|
@@ -801,12 +871,12 @@ var gt = (e, t = dt, n = {}, r = Ae) => {
|
|
|
801
871
|
task: e
|
|
802
872
|
});
|
|
803
873
|
}
|
|
804
|
-
|
|
805
|
-
}, [u]),
|
|
874
|
+
gt(() => c((e) => _t(e, s)));
|
|
875
|
+
}, [u]), S = o((e, t) => {
|
|
806
876
|
let n = _.current.get(e);
|
|
807
877
|
if (!n) return;
|
|
808
878
|
let r = { ...n };
|
|
809
|
-
if (t.name !== void 0 && (r.name = t.name), t.startDate && (r.startDate = t.startDate), t.endDate && (r.endDate = t.endDate), t.progress !== void 0 && (r.progress = t.progress),
|
|
879
|
+
if (t.name !== void 0 && (r.name = t.name), t.startDate && (r.startDate = t.startDate), t.endDate && (r.endDate = t.endDate), t.progress !== void 0 && (r.progress = t.progress), yt(r, n)) return;
|
|
810
880
|
let i = [{
|
|
811
881
|
type: "update",
|
|
812
882
|
task: r
|
|
@@ -820,45 +890,46 @@ var gt = (e, t = dt, n = {}, r = Ae) => {
|
|
|
820
890
|
task: e
|
|
821
891
|
});
|
|
822
892
|
}
|
|
823
|
-
|
|
824
|
-
}, [u]),
|
|
893
|
+
gt(() => c((e) => _t(e, i)));
|
|
894
|
+
}, [u]), C = o((e, t) => {
|
|
825
895
|
g(() => {
|
|
826
|
-
c((n) =>
|
|
896
|
+
c((n) => _t(n, [{
|
|
827
897
|
type: "create",
|
|
828
898
|
task: e,
|
|
829
899
|
afterId: t
|
|
830
900
|
}]));
|
|
831
901
|
}), i.current.onTaskCreate?.(e, t);
|
|
832
|
-
}, []),
|
|
833
|
-
|
|
902
|
+
}, []), w = o((e) => {
|
|
903
|
+
gt(() => c((t) => _t(t, [{
|
|
834
904
|
type: "delete",
|
|
835
905
|
id: e
|
|
836
906
|
}]))), i.current.onTaskDelete?.(e);
|
|
837
|
-
}, []),
|
|
838
|
-
|
|
907
|
+
}, []), T = o(() => {
|
|
908
|
+
gt(() => c((e) => e.cursor > 0 ? {
|
|
839
909
|
...e,
|
|
840
910
|
cursor: e.cursor - 1
|
|
841
911
|
} : e));
|
|
842
|
-
}, []),
|
|
843
|
-
|
|
912
|
+
}, []), E = o(() => {
|
|
913
|
+
gt(() => c((e) => e.cursor < e.transactions.length ? {
|
|
844
914
|
...e,
|
|
845
915
|
cursor: e.cursor + 1
|
|
846
916
|
} : e));
|
|
847
|
-
}, []),
|
|
848
|
-
|
|
849
|
-
let
|
|
917
|
+
}, []), D = s.cursor > 0, O = s.cursor < s.transactions.length, k = p(v);
|
|
918
|
+
k.current = v;
|
|
919
|
+
let A = p(s);
|
|
850
920
|
return l(() => {
|
|
851
|
-
|
|
921
|
+
A.current !== s && (A.current = s, i.current.onTasksChange?.(k.current));
|
|
852
922
|
}, [s]), {
|
|
853
923
|
tasksList: v,
|
|
854
|
-
|
|
855
|
-
|
|
856
|
-
|
|
857
|
-
|
|
858
|
-
|
|
859
|
-
|
|
860
|
-
|
|
861
|
-
|
|
924
|
+
criticalPath: b,
|
|
925
|
+
updateTask: S,
|
|
926
|
+
commitTask: x,
|
|
927
|
+
createTask: C,
|
|
928
|
+
deleteTask: w,
|
|
929
|
+
undo: T,
|
|
930
|
+
redo: E,
|
|
931
|
+
canUndo: D,
|
|
932
|
+
canRedo: O
|
|
862
933
|
};
|
|
863
934
|
};
|
|
864
935
|
//#endregion
|
|
@@ -869,7 +940,7 @@ function q(e) {
|
|
|
869
940
|
}
|
|
870
941
|
//#endregion
|
|
871
942
|
//#region src/hooks/useExpand.ts
|
|
872
|
-
function
|
|
943
|
+
function xt(e) {
|
|
873
944
|
let t = f(() => {
|
|
874
945
|
let t = /* @__PURE__ */ new Set();
|
|
875
946
|
for (let n of e) n.parentId != null && t.add(n.parentId);
|
|
@@ -914,13 +985,13 @@ function _t(e) {
|
|
|
914
985
|
}
|
|
915
986
|
//#endregion
|
|
916
987
|
//#region src/hooks/useIsomorphicLayoutEffect.ts
|
|
917
|
-
var
|
|
988
|
+
var St = typeof window < "u" ? d : l, Ct = {
|
|
918
989
|
scrollTop: 0,
|
|
919
990
|
scrollLeft: 0,
|
|
920
991
|
clientWidth: 0,
|
|
921
992
|
clientHeight: 0
|
|
922
993
|
};
|
|
923
|
-
function
|
|
994
|
+
function wt(e) {
|
|
924
995
|
return {
|
|
925
996
|
scrollTop: e.scrollTop,
|
|
926
997
|
scrollLeft: e.scrollLeft,
|
|
@@ -928,24 +999,24 @@ function bt(e) {
|
|
|
928
999
|
clientHeight: e.clientHeight
|
|
929
1000
|
};
|
|
930
1001
|
}
|
|
931
|
-
function
|
|
1002
|
+
function Tt(e, t, n) {
|
|
932
1003
|
return e.scrollTop !== t.scrollTop || e.clientHeight !== t.clientHeight ? !1 : n ? e.scrollLeft === t.scrollLeft && e.clientWidth === t.clientWidth : !0;
|
|
933
1004
|
}
|
|
934
|
-
function
|
|
935
|
-
let n = p(null), r = q(t), [i, a] = m(
|
|
1005
|
+
function Et(e, { trackHorizontal: t = !0 } = {}) {
|
|
1006
|
+
let n = p(null), r = q(t), [i, a] = m(Ct), s = o(() => {
|
|
936
1007
|
n.current === null && (n.current = requestAnimationFrame(() => {
|
|
937
1008
|
n.current = null;
|
|
938
1009
|
let t = e.current;
|
|
939
1010
|
if (!t) return;
|
|
940
|
-
let i =
|
|
941
|
-
a((e) =>
|
|
1011
|
+
let i = wt(t);
|
|
1012
|
+
a((e) => Tt(e, i, r.current) ? e : i);
|
|
942
1013
|
}));
|
|
943
1014
|
}, [e, r]);
|
|
944
|
-
return
|
|
1015
|
+
return St(() => {
|
|
945
1016
|
let t = e.current;
|
|
946
1017
|
t && a((e) => {
|
|
947
|
-
let n =
|
|
948
|
-
return
|
|
1018
|
+
let n = wt(t);
|
|
1019
|
+
return Tt(e, n, r.current) ? e : n;
|
|
949
1020
|
});
|
|
950
1021
|
}, [e]), l(() => {
|
|
951
1022
|
let t = e.current;
|
|
@@ -961,8 +1032,8 @@ function St(e, { trackHorizontal: t = !0 } = {}) {
|
|
|
961
1032
|
}
|
|
962
1033
|
//#endregion
|
|
963
1034
|
//#region src/hooks/useScrollSync.ts
|
|
964
|
-
function
|
|
965
|
-
let e = p(null), t = p(null), n = p(!1), { viewport: r, scheduleMeasure: i } =
|
|
1035
|
+
function Dt() {
|
|
1036
|
+
let e = p(null), t = p(null), n = p(!1), { viewport: r, scheduleMeasure: i } = Et(t);
|
|
966
1037
|
return {
|
|
967
1038
|
taskListRef: e,
|
|
968
1039
|
gridRef: t,
|
|
@@ -977,7 +1048,7 @@ function Ct() {
|
|
|
977
1048
|
}
|
|
978
1049
|
//#endregion
|
|
979
1050
|
//#region src/hooks/useEventCallback.ts
|
|
980
|
-
function
|
|
1051
|
+
function Ot(e) {
|
|
981
1052
|
let t = p(e);
|
|
982
1053
|
t.current = e;
|
|
983
1054
|
let n = o((...e) => t.current?.(...e), []);
|
|
@@ -985,26 +1056,26 @@ function wt(e) {
|
|
|
985
1056
|
}
|
|
986
1057
|
//#endregion
|
|
987
1058
|
//#region src/core/scroll.ts
|
|
988
|
-
function
|
|
1059
|
+
function kt(e, t, n, r, i = 0) {
|
|
989
1060
|
let a = n + r;
|
|
990
1061
|
return e - i < n ? Math.max(0, e - i) : e + t + i > a ? e + t + i - r : n;
|
|
991
1062
|
}
|
|
992
1063
|
//#endregion
|
|
993
1064
|
//#region src/core/barUtils.ts
|
|
994
|
-
function
|
|
995
|
-
let a = t.startDate ?? e.startDate, o = t.endDate ?? e.endDate ?? a, s =
|
|
1065
|
+
function At(e, t = {}, n, r, i = "day") {
|
|
1066
|
+
let a = t.startDate ?? e.startDate, o = t.endDate ?? e.endDate ?? a, s = ee(n, a, i), c = ee(n, o, i);
|
|
996
1067
|
return {
|
|
997
1068
|
left: s * r,
|
|
998
1069
|
width: (c - s) * r,
|
|
999
1070
|
progress: t.progress ?? e.progress ?? 0
|
|
1000
1071
|
};
|
|
1001
1072
|
}
|
|
1002
|
-
function
|
|
1003
|
-
return
|
|
1073
|
+
function jt(e, t, n, r = "day") {
|
|
1074
|
+
return te(t, r, e / n);
|
|
1004
1075
|
}
|
|
1005
1076
|
//#endregion
|
|
1006
1077
|
//#region src/core/scales.ts
|
|
1007
|
-
var
|
|
1078
|
+
var Mt = [{
|
|
1008
1079
|
unit: "month",
|
|
1009
1080
|
step: 1,
|
|
1010
1081
|
format: (e) => e.toLocaleString(void 0, {
|
|
@@ -1016,39 +1087,39 @@ var Ot = [{
|
|
|
1016
1087
|
step: 1,
|
|
1017
1088
|
format: (e) => String(e.getDate())
|
|
1018
1089
|
}];
|
|
1019
|
-
function
|
|
1020
|
-
return (e ??
|
|
1090
|
+
function Nt(e) {
|
|
1091
|
+
return (e ?? Mt).at(-1)?.unit ?? "day";
|
|
1021
1092
|
}
|
|
1022
|
-
function
|
|
1023
|
-
return (e ??
|
|
1093
|
+
function Pt(e) {
|
|
1094
|
+
return (e ?? Mt).at(-1)?.step ?? 1;
|
|
1024
1095
|
}
|
|
1025
1096
|
//#endregion
|
|
1026
1097
|
//#region src/core/timeline.ts
|
|
1027
|
-
function
|
|
1028
|
-
let r =
|
|
1029
|
-
return r ?
|
|
1098
|
+
function Ft(e, t, n) {
|
|
1099
|
+
let r = F(e);
|
|
1100
|
+
return r ? It(r.min, Nt(t), n, Pt(t)) : null;
|
|
1030
1101
|
}
|
|
1031
|
-
function
|
|
1102
|
+
function It(e, t, n, r) {
|
|
1032
1103
|
return M(N(M(e, t), t, -n * r), t);
|
|
1033
1104
|
}
|
|
1034
|
-
function
|
|
1035
|
-
let r =
|
|
1105
|
+
function Lt(e, t = 0, n) {
|
|
1106
|
+
let r = F(e);
|
|
1036
1107
|
if (!r) return [];
|
|
1037
|
-
let i =
|
|
1038
|
-
return
|
|
1108
|
+
let i = Nt(n), a = Pt(n), o = It(r.min, i, t, a), s = N(M(r.max, i), i, t * a);
|
|
1109
|
+
return ne(o, Math.round(ee(o, s, i) / a) + 1, i, a);
|
|
1039
1110
|
}
|
|
1040
1111
|
//#endregion
|
|
1041
1112
|
//#region src/hooks/useRevealTask.ts
|
|
1042
|
-
function
|
|
1113
|
+
function Rt({ taskListRef: e, gridRef: t, tasksList: n, visibleTasks: r, rowHeight: i, colWidth: a, scales: s, padDays: c, revealAncestors: l }) {
|
|
1043
1114
|
let u = q(n), f = q(r), m = p(() => {}), h = p(null), g = (n) => {
|
|
1044
1115
|
let r = e.current ?? t.current;
|
|
1045
1116
|
if (!r) return;
|
|
1046
|
-
let a =
|
|
1117
|
+
let a = kt(n * i, i, r.scrollTop, r.clientHeight, i);
|
|
1047
1118
|
a !== r.scrollTop && (r.scrollTop = a);
|
|
1048
1119
|
}, _ = (e) => {
|
|
1049
|
-
let n = t.current, r =
|
|
1120
|
+
let n = t.current, r = Ft(f.current, s, c);
|
|
1050
1121
|
if (!n || !r) return;
|
|
1051
|
-
let { left: i, width: o } =
|
|
1122
|
+
let { left: i, width: o } = At(e, {}, r, a, Nt(s)), l = kt(i, o, n.scrollLeft, n.clientWidth, a);
|
|
1052
1123
|
l !== n.scrollLeft && (n.scrollLeft = l);
|
|
1053
1124
|
};
|
|
1054
1125
|
return m.current = (e, t) => {
|
|
@@ -1069,13 +1140,13 @@ function Pt({ taskListRef: e, gridRef: t, tasksList: n, visibleTasks: r, rowHeig
|
|
|
1069
1140
|
}
|
|
1070
1141
|
//#endregion
|
|
1071
1142
|
//#region src/hooks/useZoom.ts
|
|
1072
|
-
function
|
|
1143
|
+
function zt({ gridRef: e, visibleTasks: t, padDays: n, levels: r, initialIndex: i }) {
|
|
1073
1144
|
let a = o((e) => Math.max(0, Math.min(r.length - 1, e)), [r.length]), [s, c] = m(() => a(i)), l = q(s), u = q(t), f = q(n), h = q(r), g = p(null), _ = o((t, n) => {
|
|
1074
1145
|
let r = l.current, i = a(r + n);
|
|
1075
1146
|
if (i === r) return;
|
|
1076
|
-
let o = e.current, s = h.current[r], d =
|
|
1147
|
+
let o = e.current, s = h.current[r], d = Ft(u.current, s.scales, f.current);
|
|
1077
1148
|
o && d ? g.current = {
|
|
1078
|
-
date:
|
|
1149
|
+
date: te(d, Nt(s.scales), t / s.colWidth),
|
|
1079
1150
|
viewportOffset: t - o.scrollLeft
|
|
1080
1151
|
} : g.current = null, c(i);
|
|
1081
1152
|
}, [
|
|
@@ -1098,9 +1169,9 @@ function Ft({ gridRef: e, visibleTasks: t, padDays: n, levels: r, initialIndex:
|
|
|
1098
1169
|
let t = g.current;
|
|
1099
1170
|
if (t === null) return;
|
|
1100
1171
|
g.current = null;
|
|
1101
|
-
let n = e.current, r = h.current[s], i =
|
|
1172
|
+
let n = e.current, r = h.current[s], i = Ft(u.current, r.scales, f.current);
|
|
1102
1173
|
if (!n || !i) return;
|
|
1103
|
-
let a =
|
|
1174
|
+
let a = Nt(r.scales), o = ee(i, t.date, a) * r.colWidth;
|
|
1104
1175
|
n.scrollLeft = Math.max(0, o - t.viewportOffset);
|
|
1105
1176
|
}, [s]), {
|
|
1106
1177
|
index: s,
|
|
@@ -1116,23 +1187,23 @@ function Ft({ gridRef: e, visibleTasks: t, padDays: n, levels: r, initialIndex:
|
|
|
1116
1187
|
}
|
|
1117
1188
|
//#endregion
|
|
1118
1189
|
//#region src/core/zoom.ts
|
|
1119
|
-
var
|
|
1190
|
+
var Bt = (e) => String(e).padStart(2, "0"), Vt = (e) => String(e.getFullYear()), Ht = (e) => `Q${Math.floor(e.getMonth() / 3) + 1}`, Ut = (e) => e.toLocaleString(void 0, {
|
|
1120
1191
|
month: "long",
|
|
1121
1192
|
year: "numeric"
|
|
1122
|
-
}),
|
|
1193
|
+
}), Wt = (e) => e.toLocaleString(void 0, { month: "short" }), Gt = (e) => String(e.getDate()), Kt = (e) => e.toLocaleString(void 0, {
|
|
1123
1194
|
weekday: "short",
|
|
1124
1195
|
day: "numeric"
|
|
1125
|
-
}),
|
|
1196
|
+
}), qt = [
|
|
1126
1197
|
{
|
|
1127
1198
|
colWidth: 56,
|
|
1128
1199
|
scales: [{
|
|
1129
1200
|
unit: "year",
|
|
1130
1201
|
step: 1,
|
|
1131
|
-
format:
|
|
1202
|
+
format: Vt
|
|
1132
1203
|
}, {
|
|
1133
1204
|
unit: "quarter",
|
|
1134
1205
|
step: 1,
|
|
1135
|
-
format:
|
|
1206
|
+
format: Ht
|
|
1136
1207
|
}]
|
|
1137
1208
|
},
|
|
1138
1209
|
{
|
|
@@ -1140,11 +1211,11 @@ var It = (e) => String(e).padStart(2, "0"), Lt = (e) => String(e.getFullYear()),
|
|
|
1140
1211
|
scales: [{
|
|
1141
1212
|
unit: "year",
|
|
1142
1213
|
step: 1,
|
|
1143
|
-
format:
|
|
1214
|
+
format: Vt
|
|
1144
1215
|
}, {
|
|
1145
1216
|
unit: "month",
|
|
1146
1217
|
step: 1,
|
|
1147
|
-
format:
|
|
1218
|
+
format: Wt
|
|
1148
1219
|
}]
|
|
1149
1220
|
},
|
|
1150
1221
|
{
|
|
@@ -1152,11 +1223,11 @@ var It = (e) => String(e).padStart(2, "0"), Lt = (e) => String(e.getFullYear()),
|
|
|
1152
1223
|
scales: [{
|
|
1153
1224
|
unit: "month",
|
|
1154
1225
|
step: 1,
|
|
1155
|
-
format:
|
|
1226
|
+
format: Ut
|
|
1156
1227
|
}, {
|
|
1157
1228
|
unit: "week",
|
|
1158
1229
|
step: 1,
|
|
1159
|
-
format:
|
|
1230
|
+
format: Kt
|
|
1160
1231
|
}]
|
|
1161
1232
|
},
|
|
1162
1233
|
{
|
|
@@ -1164,11 +1235,11 @@ var It = (e) => String(e).padStart(2, "0"), Lt = (e) => String(e.getFullYear()),
|
|
|
1164
1235
|
scales: [{
|
|
1165
1236
|
unit: "month",
|
|
1166
1237
|
step: 1,
|
|
1167
|
-
format:
|
|
1238
|
+
format: Ut
|
|
1168
1239
|
}, {
|
|
1169
1240
|
unit: "day",
|
|
1170
1241
|
step: 1,
|
|
1171
|
-
format:
|
|
1242
|
+
format: Gt
|
|
1172
1243
|
}]
|
|
1173
1244
|
},
|
|
1174
1245
|
{
|
|
@@ -1176,23 +1247,23 @@ var It = (e) => String(e).padStart(2, "0"), Lt = (e) => String(e.getFullYear()),
|
|
|
1176
1247
|
scales: [{
|
|
1177
1248
|
unit: "day",
|
|
1178
1249
|
step: 1,
|
|
1179
|
-
format:
|
|
1250
|
+
format: Kt
|
|
1180
1251
|
}, {
|
|
1181
1252
|
unit: "hour",
|
|
1182
1253
|
step: 1,
|
|
1183
|
-
format: (e) => `${
|
|
1254
|
+
format: (e) => `${Bt(e.getHours())}:00`
|
|
1184
1255
|
}]
|
|
1185
1256
|
}
|
|
1186
|
-
],
|
|
1187
|
-
function
|
|
1188
|
-
return e && e.length > 0 ? e : !t && n === void 0 ?
|
|
1257
|
+
], Jt = 3;
|
|
1258
|
+
function Yt(e, t, n) {
|
|
1259
|
+
return e && e.length > 0 ? e : !t && n === void 0 ? qt : qt.map((e, r) => r === 3 ? {
|
|
1189
1260
|
scales: t ?? e.scales,
|
|
1190
1261
|
colWidth: n ?? e.colWidth
|
|
1191
1262
|
} : e);
|
|
1192
1263
|
}
|
|
1193
1264
|
//#endregion
|
|
1194
1265
|
//#region src/hooks/useDependencyDrag.ts
|
|
1195
|
-
var
|
|
1266
|
+
var Xt = {
|
|
1196
1267
|
end: {
|
|
1197
1268
|
start: "FS",
|
|
1198
1269
|
end: "FF"
|
|
@@ -1202,7 +1273,7 @@ var Kt = {
|
|
|
1202
1273
|
end: "SF"
|
|
1203
1274
|
}
|
|
1204
1275
|
};
|
|
1205
|
-
function
|
|
1276
|
+
function Zt({ gridBodyRef: e, onDependencyCreate: t }) {
|
|
1206
1277
|
let n = q(t), [r, i] = m(null), a = q(r), s = p(null), c = p(null), u = p(null), d = o(() => {
|
|
1207
1278
|
s.current &&= (window.removeEventListener("mousemove", s.current.move), window.removeEventListener("mouseup", s.current.up), null), c.current !== null && (cancelAnimationFrame(c.current), c.current = null);
|
|
1208
1279
|
}, []);
|
|
@@ -1236,7 +1307,7 @@ function qt({ gridBodyRef: e, onDependencyCreate: t }) {
|
|
|
1236
1307
|
endDrag: o((e, t) => {
|
|
1237
1308
|
let r = a.current;
|
|
1238
1309
|
if (r && e !== null && t && e !== r.fromTaskId) {
|
|
1239
|
-
let i =
|
|
1310
|
+
let i = Xt[r.handle][t];
|
|
1240
1311
|
n.current?.({
|
|
1241
1312
|
from: r.fromTaskId,
|
|
1242
1313
|
to: e,
|
|
@@ -1253,7 +1324,7 @@ function qt({ gridBodyRef: e, onDependencyCreate: t }) {
|
|
|
1253
1324
|
}
|
|
1254
1325
|
//#endregion
|
|
1255
1326
|
//#region src/context/useGanttHandle.ts
|
|
1256
|
-
function
|
|
1327
|
+
function Qt(e) {
|
|
1257
1328
|
let { createTask: t, updateTask: n, deleteTask: r, undo: i, redo: a, revealTask: o, zoomIn: s, zoomOut: c, setZoom: l } = e;
|
|
1258
1329
|
return f(() => ({
|
|
1259
1330
|
createTask: t,
|
|
@@ -1279,7 +1350,7 @@ function Jt(e) {
|
|
|
1279
1350
|
}
|
|
1280
1351
|
//#endregion
|
|
1281
1352
|
//#region src/context/useColumnApi.ts
|
|
1282
|
-
function
|
|
1353
|
+
function $t({ handle: e, readOnly: t, labels: n, schedulingContext: r, onTaskEditRef: i }) {
|
|
1283
1354
|
return f(() => ({
|
|
1284
1355
|
...e,
|
|
1285
1356
|
editTask: (e) => i.current?.(e),
|
|
@@ -1299,35 +1370,23 @@ function Yt({ handle: e, readOnly: t, labels: n, schedulingContext: r, onTaskEdi
|
|
|
1299
1370
|
}
|
|
1300
1371
|
//#endregion
|
|
1301
1372
|
//#region src/context/contexts.ts
|
|
1302
|
-
var
|
|
1303
|
-
function
|
|
1304
|
-
let e = s(
|
|
1373
|
+
var en = n(null);
|
|
1374
|
+
function tn() {
|
|
1375
|
+
let e = s(en);
|
|
1305
1376
|
if (!e) throw Error("useGanttConfig must be used within a <GanttProvider>");
|
|
1306
1377
|
return e;
|
|
1307
1378
|
}
|
|
1308
|
-
var
|
|
1309
|
-
function $t() {
|
|
1310
|
-
return s(Qt);
|
|
1311
|
-
}
|
|
1312
|
-
var en = n(Ae);
|
|
1313
|
-
function tn() {
|
|
1314
|
-
return s(en);
|
|
1315
|
-
}
|
|
1316
|
-
var nn = n(!1);
|
|
1379
|
+
var nn = n(Ie);
|
|
1317
1380
|
function rn() {
|
|
1318
1381
|
return s(nn);
|
|
1319
1382
|
}
|
|
1320
|
-
var an = n(
|
|
1383
|
+
var an = n(Ae);
|
|
1321
1384
|
function on() {
|
|
1322
|
-
|
|
1323
|
-
if (!e) throw Error("useGanttTaskState must be used within a <GanttProvider>");
|
|
1324
|
-
return e;
|
|
1385
|
+
return s(an);
|
|
1325
1386
|
}
|
|
1326
|
-
var sn = n(
|
|
1387
|
+
var sn = n(!1);
|
|
1327
1388
|
function cn() {
|
|
1328
|
-
|
|
1329
|
-
if (!e) throw Error("useGanttTaskActions must be used within a <GanttProvider>");
|
|
1330
|
-
return e;
|
|
1389
|
+
return s(sn);
|
|
1331
1390
|
}
|
|
1332
1391
|
var ln = n(null);
|
|
1333
1392
|
function un() {
|
|
@@ -1336,213 +1395,233 @@ function un() {
|
|
|
1336
1395
|
var dn = n(null);
|
|
1337
1396
|
function fn() {
|
|
1338
1397
|
let e = s(dn);
|
|
1339
|
-
if (!e) throw Error("
|
|
1398
|
+
if (!e) throw Error("useGanttTaskState must be used within a <GanttProvider>");
|
|
1340
1399
|
return e;
|
|
1341
1400
|
}
|
|
1342
1401
|
var pn = n(null);
|
|
1343
1402
|
function mn() {
|
|
1344
1403
|
let e = s(pn);
|
|
1345
|
-
if (!e) throw Error("
|
|
1404
|
+
if (!e) throw Error("useGanttTaskActions must be used within a <GanttProvider>");
|
|
1346
1405
|
return e;
|
|
1347
1406
|
}
|
|
1348
1407
|
var hn = n(null);
|
|
1349
1408
|
function gn() {
|
|
1350
|
-
|
|
1351
|
-
if (!e) throw Error("useGanttDependency must be used within a <GanttProvider>");
|
|
1352
|
-
return e;
|
|
1409
|
+
return s(hn);
|
|
1353
1410
|
}
|
|
1354
|
-
var _n = n(
|
|
1411
|
+
var _n = n(null);
|
|
1355
1412
|
function vn() {
|
|
1356
|
-
|
|
1413
|
+
let e = s(_n);
|
|
1414
|
+
if (!e) throw Error("useGanttScroll must be used within a <GanttProvider>");
|
|
1415
|
+
return e;
|
|
1357
1416
|
}
|
|
1358
1417
|
var yn = n(null);
|
|
1359
1418
|
function bn() {
|
|
1360
|
-
|
|
1419
|
+
let e = s(yn);
|
|
1420
|
+
if (!e) throw Error("useGanttViewport must be used within a <GanttProvider>");
|
|
1421
|
+
return e;
|
|
1361
1422
|
}
|
|
1362
1423
|
var xn = n(null);
|
|
1363
1424
|
function Sn() {
|
|
1364
1425
|
let e = s(xn);
|
|
1426
|
+
if (!e) throw Error("useGanttDependency must be used within a <GanttProvider>");
|
|
1427
|
+
return e;
|
|
1428
|
+
}
|
|
1429
|
+
var Cn = n(!1);
|
|
1430
|
+
function wn() {
|
|
1431
|
+
return s(Cn);
|
|
1432
|
+
}
|
|
1433
|
+
var Tn = n(null);
|
|
1434
|
+
function En() {
|
|
1435
|
+
return s(Tn);
|
|
1436
|
+
}
|
|
1437
|
+
var Dn = n(null);
|
|
1438
|
+
function On() {
|
|
1439
|
+
let e = s(Dn);
|
|
1365
1440
|
if (!e) throw Error("useGanttZoom must be used within a <GanttProvider>");
|
|
1366
1441
|
return e;
|
|
1367
1442
|
}
|
|
1368
1443
|
//#endregion
|
|
1369
1444
|
//#region src/context/GanttProvider.tsx
|
|
1370
|
-
function
|
|
1371
|
-
let [
|
|
1372
|
-
calendar:
|
|
1445
|
+
function kn({ tasks: e, rowHeight: t = 36, colWidth: n, height: r, scales: i, padDays: a = 1, zoomLevels: s, defaultZoomIndex: c, onZoomChange: d, zoomWheel: h = !1, zoomKeyboard: g = !1, dependencies: _ = ht, onTaskClick: y, onDependencyCreate: b, onDependencyDelete: x, onTaskCreate: S, onTaskDelete: C, onTaskEdit: w, onTasksChange: T, apiRef: E, labels: D, calendar: O, snapToWorking: k = !0, durationUnit: A = "day", readOnly: j = !1, criticalPath: M = !1, children: N }) {
|
|
1446
|
+
let [ee, te] = m(null), ne = f(() => Le(D), [D]), P = pe(O), F = f(() => ({
|
|
1447
|
+
calendar: P,
|
|
1373
1448
|
durationUnit: A,
|
|
1374
1449
|
snapToWorking: k
|
|
1375
1450
|
}), [
|
|
1376
|
-
|
|
1451
|
+
P,
|
|
1377
1452
|
A,
|
|
1378
1453
|
k
|
|
1379
|
-
]),
|
|
1454
|
+
]), I = q(w), L = Ot(y), R = Ot(x), { tasksList: z, criticalPath: re, updateTask: B, commitTask: ie, createTask: ae, deleteTask: oe, undo: se, redo: ce, canUndo: le, canRedo: ue } = bt(e, _, {
|
|
1380
1455
|
onTaskCreate: S,
|
|
1381
1456
|
onTaskDelete: C,
|
|
1382
|
-
onTasksChange: T
|
|
1383
|
-
|
|
1384
|
-
|
|
1385
|
-
|
|
1457
|
+
onTasksChange: T,
|
|
1458
|
+
highlightCriticalPath: M
|
|
1459
|
+
}, F), { visibleTasks: V, expandedIds: de, parentIds: fe, toggleExpand: me, revealAncestors: he } = xt(z), { taskListRef: ge, gridRef: H, onTaskListScroll: _e, onGridScroll: ve, viewport: ye } = Dt(), be = p(null), U = zt({
|
|
1460
|
+
gridRef: H,
|
|
1461
|
+
visibleTasks: V,
|
|
1386
1462
|
padDays: a,
|
|
1387
|
-
levels: f(() =>
|
|
1463
|
+
levels: f(() => Yt(s, i, n), [
|
|
1388
1464
|
s,
|
|
1389
1465
|
i,
|
|
1390
1466
|
n
|
|
1391
1467
|
]),
|
|
1392
1468
|
initialIndex: c ?? 3
|
|
1393
|
-
}),
|
|
1394
|
-
taskListRef:
|
|
1395
|
-
gridRef:
|
|
1396
|
-
tasksList:
|
|
1397
|
-
visibleTasks:
|
|
1469
|
+
}), xe = Rt({
|
|
1470
|
+
taskListRef: ge,
|
|
1471
|
+
gridRef: H,
|
|
1472
|
+
tasksList: z,
|
|
1473
|
+
visibleTasks: V,
|
|
1398
1474
|
rowHeight: t,
|
|
1399
|
-
colWidth:
|
|
1400
|
-
scales:
|
|
1475
|
+
colWidth: U.level.colWidth,
|
|
1476
|
+
scales: U.level.scales,
|
|
1401
1477
|
padDays: a,
|
|
1402
|
-
revealAncestors:
|
|
1403
|
-
}),
|
|
1478
|
+
revealAncestors: he
|
|
1479
|
+
}), Se = q(d);
|
|
1404
1480
|
l(() => {
|
|
1405
|
-
|
|
1406
|
-
index:
|
|
1407
|
-
count:
|
|
1481
|
+
Se.current?.({
|
|
1482
|
+
index: U.index,
|
|
1483
|
+
count: U.count
|
|
1408
1484
|
});
|
|
1409
1485
|
}, [
|
|
1410
|
-
|
|
1411
|
-
|
|
1412
|
-
|
|
1486
|
+
U.index,
|
|
1487
|
+
U.count,
|
|
1488
|
+
Se
|
|
1413
1489
|
]);
|
|
1414
|
-
let
|
|
1415
|
-
|
|
1416
|
-
}, [
|
|
1417
|
-
createTask:
|
|
1418
|
-
updateTask:
|
|
1419
|
-
deleteTask:
|
|
1420
|
-
undo:
|
|
1421
|
-
redo:
|
|
1422
|
-
revealTask:
|
|
1423
|
-
zoomIn:
|
|
1424
|
-
zoomOut:
|
|
1425
|
-
setZoom:
|
|
1490
|
+
let W = o((e, t) => {
|
|
1491
|
+
ae(e, t), te(e.id), xe(e.id);
|
|
1492
|
+
}, [ae, xe]), { zoomIn: Ce, zoomOut: we, setZoom: Te, zoomAt: G } = U, K = Qt({
|
|
1493
|
+
createTask: W,
|
|
1494
|
+
updateTask: B,
|
|
1495
|
+
deleteTask: oe,
|
|
1496
|
+
undo: se,
|
|
1497
|
+
redo: ce,
|
|
1498
|
+
revealTask: xe,
|
|
1499
|
+
zoomIn: Ce,
|
|
1500
|
+
zoomOut: we,
|
|
1501
|
+
setZoom: Te
|
|
1426
1502
|
});
|
|
1427
|
-
u(E, () =>
|
|
1428
|
-
let
|
|
1429
|
-
handle:
|
|
1503
|
+
u(E, () => K, [K]);
|
|
1504
|
+
let Ee = $t({
|
|
1505
|
+
handle: K,
|
|
1430
1506
|
readOnly: j,
|
|
1431
|
-
labels:
|
|
1432
|
-
schedulingContext:
|
|
1433
|
-
onTaskEditRef:
|
|
1434
|
-
}), { drag:
|
|
1435
|
-
gridBodyRef:
|
|
1507
|
+
labels: ne,
|
|
1508
|
+
schedulingContext: F,
|
|
1509
|
+
onTaskEditRef: I
|
|
1510
|
+
}), { drag: De, startDrag: Oe, endDrag: ke } = Zt({
|
|
1511
|
+
gridBodyRef: be,
|
|
1436
1512
|
onDependencyCreate: b
|
|
1437
|
-
}),
|
|
1513
|
+
}), Ae = M ? re : null, je = f(() => ({
|
|
1438
1514
|
rowHeight: t,
|
|
1439
|
-
colWidth:
|
|
1440
|
-
scales:
|
|
1515
|
+
colWidth: U.level.colWidth,
|
|
1516
|
+
scales: U.level.scales,
|
|
1441
1517
|
padDays: a,
|
|
1442
1518
|
height: r
|
|
1443
1519
|
}), [
|
|
1444
1520
|
t,
|
|
1445
|
-
|
|
1521
|
+
U.level,
|
|
1446
1522
|
a,
|
|
1447
1523
|
r
|
|
1448
|
-
]),
|
|
1449
|
-
zoomIn:
|
|
1450
|
-
zoomOut:
|
|
1451
|
-
zoomAt:
|
|
1524
|
+
]), Me = f(() => ({
|
|
1525
|
+
zoomIn: Ce,
|
|
1526
|
+
zoomOut: we,
|
|
1527
|
+
zoomAt: G,
|
|
1452
1528
|
wheelEnabled: h,
|
|
1453
1529
|
keyboardEnabled: g
|
|
1454
1530
|
}), [
|
|
1455
|
-
xe,
|
|
1456
|
-
G,
|
|
1457
1531
|
Ce,
|
|
1532
|
+
we,
|
|
1533
|
+
G,
|
|
1458
1534
|
h,
|
|
1459
1535
|
g
|
|
1460
|
-
]),
|
|
1461
|
-
tasksList:
|
|
1462
|
-
visibleTasks:
|
|
1463
|
-
expandedIds:
|
|
1464
|
-
parentIds:
|
|
1465
|
-
canUndo:
|
|
1466
|
-
canRedo:
|
|
1536
|
+
]), Ne = f(() => ({
|
|
1537
|
+
tasksList: z,
|
|
1538
|
+
visibleTasks: V,
|
|
1539
|
+
expandedIds: de,
|
|
1540
|
+
parentIds: fe,
|
|
1541
|
+
canUndo: le,
|
|
1542
|
+
canRedo: ue
|
|
1543
|
+
}), [
|
|
1544
|
+
z,
|
|
1545
|
+
V,
|
|
1546
|
+
de,
|
|
1547
|
+
fe,
|
|
1548
|
+
le,
|
|
1549
|
+
ue
|
|
1550
|
+
]), Pe = f(() => ({
|
|
1551
|
+
updateTask: B,
|
|
1552
|
+
commitTask: ie,
|
|
1553
|
+
createTask: W,
|
|
1554
|
+
deleteTask: oe,
|
|
1555
|
+
undo: se,
|
|
1556
|
+
redo: ce,
|
|
1557
|
+
columnApi: Ee,
|
|
1558
|
+
setSelectedId: te,
|
|
1559
|
+
toggleExpand: me,
|
|
1560
|
+
onTaskClick: L,
|
|
1561
|
+
revealTask: xe
|
|
1467
1562
|
}), [
|
|
1468
1563
|
B,
|
|
1564
|
+
ie,
|
|
1565
|
+
W,
|
|
1566
|
+
oe,
|
|
1469
1567
|
se,
|
|
1470
1568
|
ce,
|
|
1471
|
-
|
|
1472
|
-
|
|
1473
|
-
|
|
1474
|
-
|
|
1475
|
-
|
|
1476
|
-
|
|
1477
|
-
|
|
1478
|
-
|
|
1479
|
-
|
|
1480
|
-
|
|
1481
|
-
columnApi: K,
|
|
1482
|
-
setSelectedId: P,
|
|
1483
|
-
toggleExpand: le,
|
|
1484
|
-
onTaskClick: R,
|
|
1485
|
-
revealTask: ve
|
|
1569
|
+
Ee,
|
|
1570
|
+
me,
|
|
1571
|
+
L,
|
|
1572
|
+
xe
|
|
1573
|
+
]), Fe = f(() => ({
|
|
1574
|
+
taskListRef: ge,
|
|
1575
|
+
gridRef: H,
|
|
1576
|
+
gridBodyRef: be,
|
|
1577
|
+
onTaskListScroll: _e,
|
|
1578
|
+
onGridScroll: ve
|
|
1486
1579
|
}), [
|
|
1487
|
-
|
|
1488
|
-
|
|
1489
|
-
|
|
1490
|
-
ne,
|
|
1491
|
-
re,
|
|
1492
|
-
ie,
|
|
1493
|
-
K,
|
|
1494
|
-
le,
|
|
1495
|
-
R,
|
|
1580
|
+
ge,
|
|
1581
|
+
H,
|
|
1582
|
+
_e,
|
|
1496
1583
|
ve
|
|
1497
|
-
]),
|
|
1498
|
-
taskListRef: fe,
|
|
1499
|
-
gridRef: pe,
|
|
1500
|
-
gridBodyRef: _e,
|
|
1501
|
-
onTaskListScroll: me,
|
|
1502
|
-
onGridScroll: he
|
|
1503
|
-
}), [
|
|
1504
|
-
fe,
|
|
1505
|
-
pe,
|
|
1506
|
-
me,
|
|
1507
|
-
he
|
|
1508
|
-
]), Ne = f(() => ({
|
|
1584
|
+
]), Ie = f(() => ({
|
|
1509
1585
|
dependencies: _,
|
|
1510
|
-
onDependencyDelete:
|
|
1511
|
-
startDrag:
|
|
1512
|
-
endDrag:
|
|
1586
|
+
onDependencyDelete: R,
|
|
1587
|
+
startDrag: Oe,
|
|
1588
|
+
endDrag: ke
|
|
1513
1589
|
}), [
|
|
1514
1590
|
_,
|
|
1515
|
-
|
|
1516
|
-
|
|
1517
|
-
|
|
1591
|
+
R,
|
|
1592
|
+
Oe,
|
|
1593
|
+
ke
|
|
1518
1594
|
]);
|
|
1519
|
-
return /* @__PURE__ */ v(
|
|
1520
|
-
value:
|
|
1521
|
-
children: /* @__PURE__ */ v(
|
|
1595
|
+
return /* @__PURE__ */ v(en.Provider, {
|
|
1596
|
+
value: je,
|
|
1597
|
+
children: /* @__PURE__ */ v(sn.Provider, {
|
|
1522
1598
|
value: j,
|
|
1523
|
-
children: /* @__PURE__ */ v(
|
|
1524
|
-
value:
|
|
1525
|
-
children: /* @__PURE__ */ v(
|
|
1526
|
-
value:
|
|
1527
|
-
children: /* @__PURE__ */ v(
|
|
1528
|
-
value:
|
|
1529
|
-
children: /* @__PURE__ */ v(
|
|
1599
|
+
children: /* @__PURE__ */ v(ln.Provider, {
|
|
1600
|
+
value: Ae,
|
|
1601
|
+
children: /* @__PURE__ */ v(nn.Provider, {
|
|
1602
|
+
value: ne,
|
|
1603
|
+
children: /* @__PURE__ */ v(an.Provider, {
|
|
1604
|
+
value: F,
|
|
1605
|
+
children: /* @__PURE__ */ v(Dn.Provider, {
|
|
1530
1606
|
value: Me,
|
|
1531
|
-
children: /* @__PURE__ */ v(
|
|
1532
|
-
value:
|
|
1533
|
-
children: /* @__PURE__ */ v(
|
|
1534
|
-
value:
|
|
1535
|
-
children: /* @__PURE__ */ v(
|
|
1536
|
-
value:
|
|
1537
|
-
children: /* @__PURE__ */ v(
|
|
1538
|
-
value:
|
|
1539
|
-
children: /* @__PURE__ */ v(
|
|
1540
|
-
value:
|
|
1541
|
-
children: /* @__PURE__ */ v(
|
|
1542
|
-
value:
|
|
1607
|
+
children: /* @__PURE__ */ v(_n.Provider, {
|
|
1608
|
+
value: Fe,
|
|
1609
|
+
children: /* @__PURE__ */ v(pn.Provider, {
|
|
1610
|
+
value: Pe,
|
|
1611
|
+
children: /* @__PURE__ */ v(xn.Provider, {
|
|
1612
|
+
value: Ie,
|
|
1613
|
+
children: /* @__PURE__ */ v(dn.Provider, {
|
|
1614
|
+
value: Ne,
|
|
1615
|
+
children: /* @__PURE__ */ v(hn.Provider, {
|
|
1616
|
+
value: ee,
|
|
1617
|
+
children: /* @__PURE__ */ v(Cn.Provider, {
|
|
1618
|
+
value: De !== null,
|
|
1543
1619
|
children: /* @__PURE__ */ v(yn.Provider, {
|
|
1544
|
-
value:
|
|
1545
|
-
children:
|
|
1620
|
+
value: ye,
|
|
1621
|
+
children: /* @__PURE__ */ v(Tn.Provider, {
|
|
1622
|
+
value: De,
|
|
1623
|
+
children: N
|
|
1624
|
+
})
|
|
1546
1625
|
})
|
|
1547
1626
|
})
|
|
1548
1627
|
})
|
|
@@ -1559,48 +1638,48 @@ function Cn({ tasks: e, rowHeight: t = 36, colWidth: n, height: r, scales: i, pa
|
|
|
1559
1638
|
}
|
|
1560
1639
|
//#endregion
|
|
1561
1640
|
//#region src/context/GanttSlotsContext.tsx
|
|
1562
|
-
var
|
|
1563
|
-
function
|
|
1564
|
-
return /* @__PURE__ */ v(
|
|
1641
|
+
var An = n({});
|
|
1642
|
+
function jn({ value: e, children: t }) {
|
|
1643
|
+
return /* @__PURE__ */ v(An.Provider, {
|
|
1565
1644
|
value: e,
|
|
1566
1645
|
children: t
|
|
1567
1646
|
});
|
|
1568
1647
|
}
|
|
1569
1648
|
function J() {
|
|
1570
|
-
return s(
|
|
1649
|
+
return s(An);
|
|
1571
1650
|
}
|
|
1572
1651
|
//#endregion
|
|
1573
1652
|
//#region ../../node_modules/.pnpm/clsx@2.1.1/node_modules/clsx/dist/clsx.mjs
|
|
1574
|
-
function
|
|
1653
|
+
function Mn(e) {
|
|
1575
1654
|
var t, n, r = "";
|
|
1576
1655
|
if (typeof e == "string" || typeof e == "number") r += e;
|
|
1577
1656
|
else if (typeof e == "object") if (Array.isArray(e)) {
|
|
1578
1657
|
var i = e.length;
|
|
1579
|
-
for (t = 0; t < i; t++) e[t] && (n =
|
|
1658
|
+
for (t = 0; t < i; t++) e[t] && (n = Mn(e[t])) && (r && (r += " "), r += n);
|
|
1580
1659
|
} else for (n in e) e[n] && (r && (r += " "), r += n);
|
|
1581
1660
|
return r;
|
|
1582
1661
|
}
|
|
1583
|
-
function
|
|
1584
|
-
for (var e, t, n = 0, r = "", i = arguments.length; n < i; n++) (e = arguments[n]) && (t =
|
|
1662
|
+
function Y() {
|
|
1663
|
+
for (var e, t, n = 0, r = "", i = arguments.length; n < i; n++) (e = arguments[n]) && (t = Mn(e)) && (r && (r += " "), r += t);
|
|
1585
1664
|
return r;
|
|
1586
1665
|
}
|
|
1587
1666
|
//#endregion
|
|
1588
1667
|
//#region src/core/slots.ts
|
|
1589
|
-
function
|
|
1668
|
+
function X(e, t, n) {
|
|
1590
1669
|
let r = typeof t == "function" ? t(n) : t;
|
|
1591
1670
|
if (!r) return e;
|
|
1592
1671
|
let { className: i, style: a, ...o } = r;
|
|
1593
1672
|
return {
|
|
1594
1673
|
...e,
|
|
1595
1674
|
...o,
|
|
1596
|
-
className:
|
|
1675
|
+
className: Y(e.className, i),
|
|
1597
1676
|
style: {
|
|
1598
1677
|
...e.style,
|
|
1599
1678
|
...a
|
|
1600
1679
|
}
|
|
1601
1680
|
};
|
|
1602
1681
|
}
|
|
1603
|
-
var
|
|
1682
|
+
var Nn = {
|
|
1604
1683
|
calendar: "_calendar_1ksbu_1",
|
|
1605
1684
|
row: "_row_1ksbu_19",
|
|
1606
1685
|
cell: "_cell_1ksbu_29",
|
|
@@ -1608,7 +1687,7 @@ var On = {
|
|
|
1608
1687
|
};
|
|
1609
1688
|
//#endregion
|
|
1610
1689
|
//#region src/components/calendar/CalendarRow.tsx
|
|
1611
|
-
function
|
|
1690
|
+
function Pn(e, t) {
|
|
1612
1691
|
let n = [];
|
|
1613
1692
|
for (let r = 0; r < e.length; r++) {
|
|
1614
1693
|
let i = e[r], a = D(i, t.unit, t.step), o = n[n.length - 1];
|
|
@@ -1621,7 +1700,7 @@ function kn(e, t) {
|
|
|
1621
1700
|
}
|
|
1622
1701
|
return n;
|
|
1623
1702
|
}
|
|
1624
|
-
function
|
|
1703
|
+
function Fn(e, t) {
|
|
1625
1704
|
if (!t) return {
|
|
1626
1705
|
start: 0,
|
|
1627
1706
|
end: e.length
|
|
@@ -1638,16 +1717,16 @@ function An(e, t) {
|
|
|
1638
1717
|
end: i
|
|
1639
1718
|
};
|
|
1640
1719
|
}
|
|
1641
|
-
function
|
|
1642
|
-
let l = J(), u = s ?? l.timeline?.calendarRow?.slots, { calendar: d } =
|
|
1720
|
+
function In({ scale: e, dates: t, colWidth: n, rowHeight: r, highlightWeekends: i = !1, colRange: a, rowIndex: o, slots: s, slotProps: c }) {
|
|
1721
|
+
let l = J(), u = s ?? l.timeline?.calendarRow?.slots, { calendar: d } = on(), p = c ?? l.timeline?.calendarRow?.slotProps, m = f(() => Pn(t, e), [t, e]), h = Fn(m, a), g = u?.row ?? "div", _ = u?.cell ?? "div", y = {
|
|
1643
1722
|
scale: e,
|
|
1644
1723
|
colWidth: n,
|
|
1645
1724
|
rowHeight: r,
|
|
1646
1725
|
highlightWeekends: i
|
|
1647
1726
|
};
|
|
1648
1727
|
return /* @__PURE__ */ v(g, {
|
|
1649
|
-
...
|
|
1650
|
-
className:
|
|
1728
|
+
...X({
|
|
1729
|
+
className: Nn.row,
|
|
1651
1730
|
style: { height: r },
|
|
1652
1731
|
role: "row",
|
|
1653
1732
|
"aria-rowindex": o
|
|
@@ -1666,8 +1745,8 @@ function jn({ scale: e, dates: t, colWidth: n, rowHeight: r, highlightWeekends:
|
|
|
1666
1745
|
isWeekend: a,
|
|
1667
1746
|
colWidth: n
|
|
1668
1747
|
};
|
|
1669
|
-
return /* @__PURE__ */ v(_, { ...
|
|
1670
|
-
className:
|
|
1748
|
+
return /* @__PURE__ */ v(_, { ...X({
|
|
1749
|
+
className: Y(Nn.cell, a && Nn.cellWeekend),
|
|
1671
1750
|
style: {
|
|
1672
1751
|
left: t.startIndex * n,
|
|
1673
1752
|
width: t.count * n
|
|
@@ -1683,13 +1762,13 @@ function jn({ scale: e, dates: t, colWidth: n, rowHeight: r, highlightWeekends:
|
|
|
1683
1762
|
}
|
|
1684
1763
|
//#endregion
|
|
1685
1764
|
//#region src/components/calendar/Calendar.tsx
|
|
1686
|
-
function
|
|
1765
|
+
function Ln({ colWidth: e, rowHeight: t, scales: n = Mt, dates: r, colRange: i }) {
|
|
1687
1766
|
let a = r.length * e;
|
|
1688
1767
|
return /* @__PURE__ */ v("div", {
|
|
1689
|
-
className:
|
|
1768
|
+
className: Nn.calendar,
|
|
1690
1769
|
style: { width: a },
|
|
1691
1770
|
role: "rowgroup",
|
|
1692
|
-
children: n.map((n, a) => /* @__PURE__ */ v(
|
|
1771
|
+
children: n.map((n, a) => /* @__PURE__ */ v(In, {
|
|
1693
1772
|
scale: n,
|
|
1694
1773
|
dates: r,
|
|
1695
1774
|
colWidth: e,
|
|
@@ -1702,8 +1781,8 @@ function Mn({ colWidth: e, rowHeight: t, scales: n = Ot, dates: r, colRange: i }
|
|
|
1702
1781
|
}
|
|
1703
1782
|
//#endregion
|
|
1704
1783
|
//#region src/hooks/useAutoScroll.ts
|
|
1705
|
-
var
|
|
1706
|
-
function
|
|
1784
|
+
var Rn = 40, zn = 14;
|
|
1785
|
+
function Bn(e) {
|
|
1707
1786
|
let t = e;
|
|
1708
1787
|
for (; t;) {
|
|
1709
1788
|
let e = getComputedStyle(t);
|
|
@@ -1712,7 +1791,7 @@ function Fn(e) {
|
|
|
1712
1791
|
}
|
|
1713
1792
|
return document.scrollingElement;
|
|
1714
1793
|
}
|
|
1715
|
-
function
|
|
1794
|
+
function Vn(e) {
|
|
1716
1795
|
if (e === document.scrollingElement) return {
|
|
1717
1796
|
left: 0,
|
|
1718
1797
|
right: window.innerWidth
|
|
@@ -1723,10 +1802,10 @@ function In(e) {
|
|
|
1723
1802
|
right: t.right
|
|
1724
1803
|
};
|
|
1725
1804
|
}
|
|
1726
|
-
function
|
|
1727
|
-
return n < e +
|
|
1805
|
+
function Hn(e, t, n) {
|
|
1806
|
+
return n < e + Rn ? -zn * Math.min(1, (e + Rn - n) / Rn) : n > t - Rn ? zn * Math.min(1, (n - (t - Rn)) / Rn) : 0;
|
|
1728
1807
|
}
|
|
1729
|
-
function
|
|
1808
|
+
function Un({ enabled: e, onScroll: t }) {
|
|
1730
1809
|
let n = p({
|
|
1731
1810
|
container: null,
|
|
1732
1811
|
scrollTarget: null,
|
|
@@ -1741,14 +1820,14 @@ function Rn({ enabled: e, onScroll: t }) {
|
|
|
1741
1820
|
e.rafId = null;
|
|
1742
1821
|
return;
|
|
1743
1822
|
}
|
|
1744
|
-
let { left: t, right: r } =
|
|
1823
|
+
let { left: t, right: r } = Vn(e.container), i = Hn(t, r, e.cursorX);
|
|
1745
1824
|
i !== 0 && (e.container.scrollLeft += i), e.rafId = requestAnimationFrame(a);
|
|
1746
1825
|
}, []), s = o(() => {
|
|
1747
1826
|
let e = n.current;
|
|
1748
1827
|
e.rafId !== null && cancelAnimationFrame(e.rafId), e.scrollTarget && e.scrollTarget.removeEventListener("scroll", i), e.container = null, e.scrollTarget = null, e.rafId = null;
|
|
1749
1828
|
}, [i]), c = o((t) => {
|
|
1750
1829
|
if (!e) return;
|
|
1751
|
-
let r = n.current, o =
|
|
1830
|
+
let r = n.current, o = Bn(t);
|
|
1752
1831
|
r.container = o, r.startScrollLeft = o?.scrollLeft ?? 0, o && (r.scrollTarget = o === document.scrollingElement ? window : o, r.scrollTarget.addEventListener("scroll", i, { passive: !0 }), r.rafId = requestAnimationFrame(a));
|
|
1753
1832
|
}, [
|
|
1754
1833
|
e,
|
|
@@ -1769,10 +1848,10 @@ function Rn({ enabled: e, onScroll: t }) {
|
|
|
1769
1848
|
}
|
|
1770
1849
|
//#endregion
|
|
1771
1850
|
//#region src/hooks/useDrag.ts
|
|
1772
|
-
function
|
|
1851
|
+
function Wn({ onStart: e, onDrag: t, onEnd: n, autoScroll: r = !1 }) {
|
|
1773
1852
|
let i = p(!1), a = p(null), s = p(0), c = p(0), u = p(0), d = p(t), f = p(n);
|
|
1774
1853
|
d.current = t, f.current = n;
|
|
1775
|
-
let m = p(() => {}), { start: h, stop: g, setCursorX: _, getScrollDelta: v } =
|
|
1854
|
+
let m = p(() => {}), { start: h, stop: g, setCursorX: _, getScrollDelta: v } = Un({
|
|
1776
1855
|
enabled: r,
|
|
1777
1856
|
onScroll: () => m.current()
|
|
1778
1857
|
}), y = o(() => {
|
|
@@ -1803,44 +1882,44 @@ function zn({ onStart: e, onDrag: t, onEnd: n, autoScroll: r = !1 }) {
|
|
|
1803
1882
|
g
|
|
1804
1883
|
]), b;
|
|
1805
1884
|
}
|
|
1806
|
-
var
|
|
1885
|
+
var Gn = {
|
|
1807
1886
|
tooltip: "_tooltip_mcgy9_11",
|
|
1808
1887
|
name: "_name_mcgy9_31",
|
|
1809
1888
|
row: "_row_mcgy9_6",
|
|
1810
1889
|
label: "_label_mcgy9_42"
|
|
1811
|
-
},
|
|
1890
|
+
}, Kn = n(null), qn = () => s(Kn);
|
|
1812
1891
|
//#endregion
|
|
1813
1892
|
//#region src/components/bars/barTooltip/BarTooltipRoot.tsx
|
|
1814
|
-
function
|
|
1893
|
+
function Jn({ anchorRef: e, children: t }) {
|
|
1815
1894
|
let [n, r] = m(!1), i = f(() => ({
|
|
1816
1895
|
open: n,
|
|
1817
1896
|
setOpen: r,
|
|
1818
1897
|
anchorRef: e
|
|
1819
1898
|
}), [n, e]);
|
|
1820
|
-
return /* @__PURE__ */ v(
|
|
1899
|
+
return /* @__PURE__ */ v(Kn.Provider, {
|
|
1821
1900
|
value: i,
|
|
1822
1901
|
children: t
|
|
1823
1902
|
});
|
|
1824
1903
|
}
|
|
1825
1904
|
//#endregion
|
|
1826
1905
|
//#region src/components/bars/barTooltip/useTooltipPosition.ts
|
|
1827
|
-
var
|
|
1828
|
-
function
|
|
1829
|
-
|
|
1906
|
+
var Yn = 12, Xn = 8, Zn = null;
|
|
1907
|
+
function Qn(e, t) {
|
|
1908
|
+
Zn = {
|
|
1830
1909
|
x: e,
|
|
1831
1910
|
y: t
|
|
1832
1911
|
};
|
|
1833
1912
|
}
|
|
1834
|
-
function
|
|
1835
|
-
let i = e +
|
|
1836
|
-
return Math.max(a ? i : e -
|
|
1913
|
+
function $n(e, t, n, r) {
|
|
1914
|
+
let i = e + Yn, a = i + t <= r - Xn;
|
|
1915
|
+
return Math.max(a ? i : e - Yn - t, n + Xn);
|
|
1837
1916
|
}
|
|
1838
|
-
var
|
|
1839
|
-
let n = s(
|
|
1917
|
+
var er = (e, t) => {
|
|
1918
|
+
let n = s(_n)?.gridRef, [r, i] = m({
|
|
1840
1919
|
left: -9999,
|
|
1841
1920
|
top: -9999
|
|
1842
1921
|
}), a = c(r);
|
|
1843
|
-
return
|
|
1922
|
+
return St(() => {
|
|
1844
1923
|
if (!t) return;
|
|
1845
1924
|
let r = (t, r) => {
|
|
1846
1925
|
let a = n?.current?.getBoundingClientRect(), o = a && a.width > 0 && a.height > 0 ? {
|
|
@@ -1855,13 +1934,13 @@ var Jn = (e, t) => {
|
|
|
1855
1934
|
bottom: window.innerHeight
|
|
1856
1935
|
};
|
|
1857
1936
|
if (t < o.left || t > o.right || r < o.top || r > o.bottom) return;
|
|
1858
|
-
let s = e.current?.getBoundingClientRect(), c = s?.width ?? 0, l = s?.height ?? 0, u =
|
|
1937
|
+
let s = e.current?.getBoundingClientRect(), c = s?.width ?? 0, l = s?.height ?? 0, u = $n(t, c, o.left, o.right), d = $n(r, l, o.top, o.bottom);
|
|
1859
1938
|
i((e) => e.left === u && e.top === d ? e : {
|
|
1860
1939
|
left: u,
|
|
1861
1940
|
top: d
|
|
1862
1941
|
});
|
|
1863
1942
|
};
|
|
1864
|
-
|
|
1943
|
+
Zn && r(Zn.x, Zn.y);
|
|
1865
1944
|
let a = (e) => r(e.clientX, e.clientY);
|
|
1866
1945
|
return window.addEventListener("mousemove", a), () => {
|
|
1867
1946
|
window.removeEventListener("mousemove", a);
|
|
@@ -1874,8 +1953,8 @@ var Jn = (e, t) => {
|
|
|
1874
1953
|
};
|
|
1875
1954
|
//#endregion
|
|
1876
1955
|
//#region src/components/bars/barTooltip/BarTooltipTrigger.tsx
|
|
1877
|
-
function
|
|
1878
|
-
let n =
|
|
1956
|
+
function tr({ children: e }) {
|
|
1957
|
+
let n = qn(), i = n?.open ?? !1, a = n?.setOpen, o = n?.anchorRef;
|
|
1879
1958
|
if (l(() => {
|
|
1880
1959
|
if (!i || !a) return;
|
|
1881
1960
|
let e = () => a(!1), t = (e) => {
|
|
@@ -1896,7 +1975,7 @@ function Yn({ children: e }) {
|
|
|
1896
1975
|
let { onMouseEnter: s, onMouseLeave: c } = e.props;
|
|
1897
1976
|
return t(e, {
|
|
1898
1977
|
onMouseEnter: (e) => {
|
|
1899
|
-
s?.(e),
|
|
1978
|
+
s?.(e), Qn(e.clientX, e.clientY), a(!0);
|
|
1900
1979
|
},
|
|
1901
1980
|
onMouseLeave: (e) => {
|
|
1902
1981
|
c?.(e), a(!1);
|
|
@@ -1905,19 +1984,19 @@ function Yn({ children: e }) {
|
|
|
1905
1984
|
}
|
|
1906
1985
|
//#endregion
|
|
1907
1986
|
//#region src/components/bars/barTooltip/BarTooltip.tsx
|
|
1908
|
-
function
|
|
1987
|
+
function nr(e) {
|
|
1909
1988
|
return e ? e.toLocaleDateString(void 0, {
|
|
1910
1989
|
year: "numeric",
|
|
1911
1990
|
month: "short",
|
|
1912
1991
|
day: "numeric"
|
|
1913
1992
|
}) : "—";
|
|
1914
1993
|
}
|
|
1915
|
-
function
|
|
1916
|
-
let o = p(null), s =
|
|
1994
|
+
function rr({ task: e, progress: t, displayEnd: n, className: r, style: i, ...a }) {
|
|
1995
|
+
let o = p(null), s = qn()?.open ?? !1, c = er(o, s);
|
|
1917
1996
|
return !s || typeof document > "u" ? null : h(/* @__PURE__ */ y("div", {
|
|
1918
1997
|
role: "tooltip",
|
|
1919
1998
|
ref: o,
|
|
1920
|
-
className: r ? `${
|
|
1999
|
+
className: r ? `${Gn.tooltip} ${r}` : Gn.tooltip,
|
|
1921
2000
|
style: {
|
|
1922
2001
|
...i,
|
|
1923
2002
|
...c
|
|
@@ -1925,37 +2004,37 @@ function Zn({ task: e, progress: t, displayEnd: n, className: r, style: i, ...a
|
|
|
1925
2004
|
...a,
|
|
1926
2005
|
children: [
|
|
1927
2006
|
/* @__PURE__ */ v("div", {
|
|
1928
|
-
className:
|
|
2007
|
+
className: Gn.name,
|
|
1929
2008
|
children: e.name
|
|
1930
2009
|
}),
|
|
1931
2010
|
/* @__PURE__ */ y("div", {
|
|
1932
|
-
className:
|
|
2011
|
+
className: Gn.row,
|
|
1933
2012
|
children: [/* @__PURE__ */ v("span", {
|
|
1934
|
-
className:
|
|
2013
|
+
className: Gn.label,
|
|
1935
2014
|
children: "Start"
|
|
1936
|
-
}), /* @__PURE__ */ v("span", { children:
|
|
2015
|
+
}), /* @__PURE__ */ v("span", { children: nr(e.startDate) })]
|
|
1937
2016
|
}),
|
|
1938
2017
|
/* @__PURE__ */ y("div", {
|
|
1939
|
-
className:
|
|
2018
|
+
className: Gn.row,
|
|
1940
2019
|
children: [/* @__PURE__ */ v("span", {
|
|
1941
|
-
className:
|
|
2020
|
+
className: Gn.label,
|
|
1942
2021
|
children: "End"
|
|
1943
|
-
}), /* @__PURE__ */ v("span", { children:
|
|
2022
|
+
}), /* @__PURE__ */ v("span", { children: nr(n) })]
|
|
1944
2023
|
}),
|
|
1945
2024
|
/* @__PURE__ */ y("div", {
|
|
1946
|
-
className:
|
|
2025
|
+
className: Gn.row,
|
|
1947
2026
|
children: [/* @__PURE__ */ v("span", {
|
|
1948
|
-
className:
|
|
2027
|
+
className: Gn.label,
|
|
1949
2028
|
children: "Progress"
|
|
1950
2029
|
}), /* @__PURE__ */ y("span", { children: [Math.round(t), "%"] })]
|
|
1951
2030
|
})
|
|
1952
2031
|
]
|
|
1953
2032
|
}), document.body);
|
|
1954
2033
|
}
|
|
1955
|
-
function
|
|
1956
|
-
return /* @__PURE__ */ y(
|
|
2034
|
+
function ir({ task: e, progress: t, displayEnd: n, anchorRef: r, className: i, style: a, children: o, ...s }) {
|
|
2035
|
+
return /* @__PURE__ */ y(Jn, {
|
|
1957
2036
|
anchorRef: r,
|
|
1958
|
-
children: [/* @__PURE__ */ v(
|
|
2037
|
+
children: [/* @__PURE__ */ v(tr, { children: o }), /* @__PURE__ */ v(rr, {
|
|
1959
2038
|
task: e,
|
|
1960
2039
|
progress: t,
|
|
1961
2040
|
displayEnd: n,
|
|
@@ -1967,10 +2046,10 @@ function Qn({ task: e, progress: t, displayEnd: n, anchorRef: r, className: i, s
|
|
|
1967
2046
|
}
|
|
1968
2047
|
//#endregion
|
|
1969
2048
|
//#region src/components/bars/barTooltip/BarTooltipConsumer.tsx
|
|
1970
|
-
function
|
|
2049
|
+
function ar({ children: e, tooltip: t, anchorRef: n }) {
|
|
1971
2050
|
let r = J().bars?.tooltip, i = r?.slots?.tooltip;
|
|
1972
2051
|
return !i || !t ? e : /* @__PURE__ */ v(i, {
|
|
1973
|
-
...
|
|
2052
|
+
...X({}, r?.slotProps?.tooltip, t),
|
|
1974
2053
|
anchorRef: n,
|
|
1975
2054
|
...t,
|
|
1976
2055
|
children: e
|
|
@@ -1978,8 +2057,8 @@ function $n({ children: e, tooltip: t, anchorRef: n }) {
|
|
|
1978
2057
|
}
|
|
1979
2058
|
//#endregion
|
|
1980
2059
|
//#region src/components/bars/common/DraggableBar.tsx
|
|
1981
|
-
function
|
|
1982
|
-
let _ = p(null), y = !l && !u, b =
|
|
2060
|
+
function or({ left: e, top: t, width: n, height: r, colWidth: i, dragAnchor: a, className: o, title: s, style: c, onMove: l, onMoveEnd: u, tooltip: d, onMouseEnter: f, onMouseLeave: m, children: h, ...g }) {
|
|
2061
|
+
let _ = p(null), y = !l && !u, b = Wn({
|
|
1983
2062
|
onStart: () => ({ start: a }),
|
|
1984
2063
|
onDrag: (e, { start: t }) => l?.(t + e),
|
|
1985
2064
|
onEnd: (e, { start: t }) => {
|
|
@@ -1988,7 +2067,7 @@ function er({ left: e, top: t, width: n, height: r, colWidth: i, dragAnchor: a,
|
|
|
1988
2067
|
},
|
|
1989
2068
|
autoScroll: !0
|
|
1990
2069
|
}), x = !!(l || u);
|
|
1991
|
-
return /* @__PURE__ */ v(
|
|
2070
|
+
return /* @__PURE__ */ v(ar, {
|
|
1992
2071
|
tooltip: d,
|
|
1993
2072
|
anchorRef: _,
|
|
1994
2073
|
children: /* @__PURE__ */ v("div", {
|
|
@@ -2011,25 +2090,27 @@ function er({ left: e, top: t, width: n, height: r, colWidth: i, dragAnchor: a,
|
|
|
2011
2090
|
})
|
|
2012
2091
|
});
|
|
2013
2092
|
}
|
|
2014
|
-
var
|
|
2015
|
-
milestone: "
|
|
2016
|
-
milestoneShape: "
|
|
2093
|
+
var sr = {
|
|
2094
|
+
milestone: "_milestone_unh27_1",
|
|
2095
|
+
milestoneShape: "_milestoneShape_unh27_5",
|
|
2096
|
+
critical: "_critical_unh27_12"
|
|
2017
2097
|
};
|
|
2018
2098
|
//#endregion
|
|
2019
2099
|
//#region src/components/bars/milestoneBar/MilestoneBar.tsx
|
|
2020
|
-
function
|
|
2021
|
-
let
|
|
2100
|
+
function cr({ size: e, centerLeft: t, top: n, colWidth: r, title: i, a11y: a, onMove: o, onMoveEnd: s, tooltip: c, isCritical: l = !1, slots: u, slotProps: d }) {
|
|
2101
|
+
let f = J(), p = u ?? f.bars?.milestoneBar?.slots, m = d ?? f.bars?.milestoneBar?.slotProps, h = {
|
|
2022
2102
|
size: e,
|
|
2023
|
-
title: i
|
|
2024
|
-
|
|
2025
|
-
|
|
2103
|
+
title: i,
|
|
2104
|
+
isCritical: l
|
|
2105
|
+
}, g = p?.root ?? or, _ = p?.shape ?? "div", y = X({
|
|
2106
|
+
className: sr.milestone,
|
|
2026
2107
|
...a,
|
|
2027
2108
|
title: a ? a.title : i
|
|
2028
|
-
},
|
|
2029
|
-
className:
|
|
2109
|
+
}, m?.root, h), b = X({
|
|
2110
|
+
className: Y(sr.milestoneShape, l && sr.critical),
|
|
2030
2111
|
"aria-hidden": !0
|
|
2031
|
-
},
|
|
2032
|
-
return /* @__PURE__ */ v(
|
|
2112
|
+
}, m?.shape, h);
|
|
2113
|
+
return /* @__PURE__ */ v(g, {
|
|
2033
2114
|
tooltip: c,
|
|
2034
2115
|
left: t - e / 2,
|
|
2035
2116
|
top: n,
|
|
@@ -2039,18 +2120,18 @@ function nr({ size: e, centerLeft: t, top: n, colWidth: r, title: i, a11y: a, on
|
|
|
2039
2120
|
dragAnchor: t,
|
|
2040
2121
|
onMove: o,
|
|
2041
2122
|
onMoveEnd: s,
|
|
2042
|
-
...
|
|
2043
|
-
children: /* @__PURE__ */ v(
|
|
2123
|
+
...y,
|
|
2124
|
+
children: /* @__PURE__ */ v(_, { ...b })
|
|
2044
2125
|
});
|
|
2045
2126
|
}
|
|
2046
|
-
var
|
|
2127
|
+
var lr = {
|
|
2047
2128
|
barProgress: "_barProgress_1obm3_1",
|
|
2048
2129
|
barProgressResizeHandle: "_barProgressResizeHandle_1obm3_10"
|
|
2049
2130
|
};
|
|
2050
2131
|
//#endregion
|
|
2051
2132
|
//#region src/components/bars/progress/BarProgressResizeHandle.tsx
|
|
2052
|
-
function
|
|
2053
|
-
let o = J(), s = i ?? o.bars?.barProgressResizeHandle?.slots, c = a ?? o.bars?.barProgressResizeHandle?.slotProps, l = (e, t) => Math.min(Math.max(0, t + e), r), u =
|
|
2133
|
+
function ur({ width: e, onResize: t, onResizeEnd: n, parentWidth: r, slots: i, slotProps: a }) {
|
|
2134
|
+
let o = J(), s = i ?? o.bars?.barProgressResizeHandle?.slots, c = a ?? o.bars?.barProgressResizeHandle?.slotProps, l = (e, t) => Math.min(Math.max(0, t + e), r), u = Wn({
|
|
2054
2135
|
onStart: () => ({ startWidth: e }),
|
|
2055
2136
|
onDrag: (e, { startWidth: n }) => t(l(e, n)),
|
|
2056
2137
|
onEnd: (e, { startWidth: t }) => n?.(l(e, t))
|
|
@@ -2058,8 +2139,8 @@ function ir({ width: e, onResize: t, onResizeEnd: n, parentWidth: r, slots: i, s
|
|
|
2058
2139
|
width: e,
|
|
2059
2140
|
parentWidth: r
|
|
2060
2141
|
};
|
|
2061
|
-
return /* @__PURE__ */ v(s?.root ?? "div", { ...
|
|
2062
|
-
className:
|
|
2142
|
+
return /* @__PURE__ */ v(s?.root ?? "div", { ...X({
|
|
2143
|
+
className: lr.barProgressResizeHandle,
|
|
2063
2144
|
"aria-hidden": !0,
|
|
2064
2145
|
tabIndex: -1,
|
|
2065
2146
|
onMouseDown: u
|
|
@@ -2067,21 +2148,21 @@ function ir({ width: e, onResize: t, onResizeEnd: n, parentWidth: r, slots: i, s
|
|
|
2067
2148
|
}
|
|
2068
2149
|
//#endregion
|
|
2069
2150
|
//#region src/components/bars/progress/BarProgress.tsx
|
|
2070
|
-
function
|
|
2151
|
+
function dr({ progress: e, width: t, height: n, onProgressChange: r, onProgressEnd: i, slots: a, slotProps: o }) {
|
|
2071
2152
|
let s = J(), c = a ?? s.bars?.barProgress?.slots, l = o ?? s.bars?.barProgress?.slotProps, u = e / 100 * t, d = (e) => e / t * 100, f = {
|
|
2072
2153
|
progress: e,
|
|
2073
2154
|
width: u,
|
|
2074
2155
|
height: n
|
|
2075
2156
|
};
|
|
2076
2157
|
return /* @__PURE__ */ v(c?.root ?? "div", {
|
|
2077
|
-
...
|
|
2078
|
-
className:
|
|
2158
|
+
...X({
|
|
2159
|
+
className: lr.barProgress,
|
|
2079
2160
|
style: {
|
|
2080
2161
|
width: u,
|
|
2081
2162
|
height: n
|
|
2082
2163
|
}
|
|
2083
2164
|
}, l?.root, f),
|
|
2084
|
-
children: r && /* @__PURE__ */ v(
|
|
2165
|
+
children: r && /* @__PURE__ */ v(ur, {
|
|
2085
2166
|
width: u,
|
|
2086
2167
|
parentWidth: t,
|
|
2087
2168
|
onResize: (e) => r(d(e)),
|
|
@@ -2089,31 +2170,33 @@ function ar({ progress: e, width: t, height: n, onProgressChange: r, onProgressE
|
|
|
2089
2170
|
})
|
|
2090
2171
|
});
|
|
2091
2172
|
}
|
|
2092
|
-
var
|
|
2093
|
-
project: "
|
|
2094
|
-
|
|
2095
|
-
|
|
2173
|
+
var fr = {
|
|
2174
|
+
project: "_project_1xupy_1",
|
|
2175
|
+
critical: "_critical_1xupy_10",
|
|
2176
|
+
projectInner: "_projectInner_1xupy_14",
|
|
2177
|
+
projectContent: "_projectContent_1xupy_20"
|
|
2096
2178
|
};
|
|
2097
2179
|
//#endregion
|
|
2098
2180
|
//#region src/components/bars/projectBar/ProjectBar.tsx
|
|
2099
|
-
function
|
|
2100
|
-
let
|
|
2181
|
+
function pr({ width: e, height: t, left: n, top: r, colWidth: i, title: a, a11y: o, progress: s, onProgressChange: c, onProgressEnd: l, onMove: u, onMoveEnd: d, tooltip: f, isCritical: p = !1, slots: m, slotProps: h }) {
|
|
2182
|
+
let g = J(), _ = m ?? g.bars?.projectBar?.slots, b = h ?? g.bars?.projectBar?.slotProps, x = {
|
|
2101
2183
|
width: e,
|
|
2102
2184
|
height: t,
|
|
2103
2185
|
progress: s,
|
|
2104
|
-
title: a
|
|
2105
|
-
|
|
2106
|
-
|
|
2186
|
+
title: a,
|
|
2187
|
+
isCritical: p
|
|
2188
|
+
}, S = _?.root ?? or, C = _?.inner ?? "div", w = _?.label ?? "div", T = X({
|
|
2189
|
+
className: Y(fr.project, p && fr.critical),
|
|
2107
2190
|
style: { lineHeight: `${t}px` },
|
|
2108
2191
|
...o
|
|
2109
|
-
},
|
|
2110
|
-
className:
|
|
2192
|
+
}, b?.root, x), E = X({
|
|
2193
|
+
className: fr.projectInner,
|
|
2111
2194
|
"aria-hidden": !0
|
|
2112
|
-
},
|
|
2113
|
-
className:
|
|
2195
|
+
}, b?.inner, x), D = X({
|
|
2196
|
+
className: fr.projectContent,
|
|
2114
2197
|
children: a
|
|
2115
|
-
},
|
|
2116
|
-
return /* @__PURE__ */ v(
|
|
2198
|
+
}, b?.label, x);
|
|
2199
|
+
return /* @__PURE__ */ v(S, {
|
|
2117
2200
|
tooltip: f,
|
|
2118
2201
|
left: n,
|
|
2119
2202
|
top: r,
|
|
@@ -2123,31 +2206,32 @@ function sr({ width: e, height: t, left: n, top: r, colWidth: i, title: a, a11y:
|
|
|
2123
2206
|
dragAnchor: n,
|
|
2124
2207
|
onMove: u,
|
|
2125
2208
|
onMoveEnd: d,
|
|
2126
|
-
...
|
|
2127
|
-
children: /* @__PURE__ */ y(
|
|
2128
|
-
...
|
|
2129
|
-
children: [/* @__PURE__ */ v(
|
|
2209
|
+
...T,
|
|
2210
|
+
children: /* @__PURE__ */ y(C, {
|
|
2211
|
+
...E,
|
|
2212
|
+
children: [/* @__PURE__ */ v(dr, {
|
|
2130
2213
|
width: e,
|
|
2131
2214
|
height: t,
|
|
2132
2215
|
progress: s,
|
|
2133
2216
|
onProgressChange: c,
|
|
2134
2217
|
onProgressEnd: l
|
|
2135
|
-
}), /* @__PURE__ */ v(
|
|
2218
|
+
}), /* @__PURE__ */ v(w, { ...D })]
|
|
2136
2219
|
})
|
|
2137
2220
|
});
|
|
2138
2221
|
}
|
|
2139
|
-
var
|
|
2140
|
-
task: "
|
|
2141
|
-
|
|
2142
|
-
|
|
2143
|
-
|
|
2144
|
-
|
|
2145
|
-
|
|
2222
|
+
var mr = {
|
|
2223
|
+
task: "_task_j74mw_1",
|
|
2224
|
+
critical: "_critical_j74mw_9",
|
|
2225
|
+
taskInner: "_taskInner_j74mw_13",
|
|
2226
|
+
taskContent: "_taskContent_j74mw_19",
|
|
2227
|
+
resizer: "_resizer_j74mw_32",
|
|
2228
|
+
startResizer: "_startResizer_j74mw_63",
|
|
2229
|
+
endResizer: "_endResizer_j74mw_66"
|
|
2146
2230
|
};
|
|
2147
2231
|
//#endregion
|
|
2148
2232
|
//#region src/components/bars/taskBar/TaskResizer.tsx
|
|
2149
|
-
function
|
|
2150
|
-
let s = J(), c = a ?? s.bars?.taskResizer?.slots, l = o ?? s.bars?.taskResizer?.slotProps, u =
|
|
2233
|
+
function hr({ width: e, left: t, colWidth: n, onResize: r, onResizeEnd: i, slots: a, slotProps: o }) {
|
|
2234
|
+
let s = J(), c = a ?? s.bars?.taskResizer?.slots, l = o ?? s.bars?.taskResizer?.slotProps, u = Wn({
|
|
2151
2235
|
onStart: () => ({
|
|
2152
2236
|
startWidth: e,
|
|
2153
2237
|
startLeft: t
|
|
@@ -2160,7 +2244,7 @@ function lr({ width: e, left: t, colWidth: n, onResize: r, onResizeEnd: i, slots
|
|
|
2160
2244
|
let a = r + Math.min(e, t);
|
|
2161
2245
|
i("start", Math.round(a / n) * n);
|
|
2162
2246
|
}
|
|
2163
|
-
}), d =
|
|
2247
|
+
}), d = Wn({
|
|
2164
2248
|
onStart: () => ({
|
|
2165
2249
|
startWidth: e,
|
|
2166
2250
|
startLeft: t
|
|
@@ -2175,42 +2259,43 @@ function lr({ width: e, left: t, colWidth: n, onResize: r, onResizeEnd: i, slots
|
|
|
2175
2259
|
}), f = {
|
|
2176
2260
|
width: e,
|
|
2177
2261
|
left: t
|
|
2178
|
-
}, p = c?.startHandle ?? "button", m = c?.endHandle ?? "button", h =
|
|
2262
|
+
}, p = c?.startHandle ?? "button", m = c?.endHandle ?? "button", h = X({
|
|
2179
2263
|
type: "button",
|
|
2180
2264
|
"aria-hidden": !0,
|
|
2181
2265
|
tabIndex: -1,
|
|
2182
|
-
className:
|
|
2266
|
+
className: Y(mr.resizer, mr.startResizer),
|
|
2183
2267
|
onMouseDown: u
|
|
2184
|
-
}, l?.startHandle, f), g =
|
|
2268
|
+
}, l?.startHandle, f), g = X({
|
|
2185
2269
|
type: "button",
|
|
2186
2270
|
"aria-hidden": !0,
|
|
2187
2271
|
tabIndex: -1,
|
|
2188
|
-
className:
|
|
2272
|
+
className: Y(mr.resizer, mr.endResizer),
|
|
2189
2273
|
onMouseDown: d
|
|
2190
2274
|
}, l?.endHandle, f);
|
|
2191
2275
|
return /* @__PURE__ */ y(_, { children: [/* @__PURE__ */ v(p, { ...h }), /* @__PURE__ */ v(m, { ...g })] });
|
|
2192
2276
|
}
|
|
2193
2277
|
//#endregion
|
|
2194
2278
|
//#region src/components/bars/taskBar/TaskBar.tsx
|
|
2195
|
-
function
|
|
2196
|
-
let
|
|
2279
|
+
function gr({ width: e, height: t, left: n, top: r, colWidth: i, title: a, a11y: o, progress: s = 30, onProgressChange: c, onProgressEnd: l, onResize: u, onResizeEnd: d, onMove: f, onMoveEnd: p, tooltip: m, isCritical: h = !1, slots: g, slotProps: _ }) {
|
|
2280
|
+
let b = J(), x = g ?? b.bars?.taskBar?.slots, S = _ ?? b.bars?.taskBar?.slotProps, C = {
|
|
2197
2281
|
width: e,
|
|
2198
2282
|
height: t,
|
|
2199
2283
|
progress: s,
|
|
2200
|
-
title: a
|
|
2201
|
-
|
|
2202
|
-
|
|
2284
|
+
title: a,
|
|
2285
|
+
isCritical: h
|
|
2286
|
+
}, w = x?.root ?? or, T = x?.inner ?? "div", E = x?.label ?? "div", D = X({
|
|
2287
|
+
className: Y(mr.task, "am-gantt-bar-task", h && [mr.critical, "am-gantt-bar-task--critical"]),
|
|
2203
2288
|
style: { lineHeight: `${t}px` },
|
|
2204
2289
|
...o
|
|
2205
|
-
},
|
|
2206
|
-
className:
|
|
2290
|
+
}, S?.root, C), O = X({
|
|
2291
|
+
className: mr.taskInner,
|
|
2207
2292
|
"aria-hidden": !0
|
|
2208
|
-
},
|
|
2209
|
-
className:
|
|
2293
|
+
}, S?.inner, C), k = X({
|
|
2294
|
+
className: mr.taskContent,
|
|
2210
2295
|
title: o?.title,
|
|
2211
2296
|
children: a
|
|
2212
|
-
},
|
|
2213
|
-
return /* @__PURE__ */ v(
|
|
2297
|
+
}, S?.label, C);
|
|
2298
|
+
return /* @__PURE__ */ v(w, {
|
|
2214
2299
|
tooltip: m,
|
|
2215
2300
|
left: n,
|
|
2216
2301
|
top: r,
|
|
@@ -2220,19 +2305,19 @@ function ur({ width: e, height: t, left: n, top: r, colWidth: i, title: a, a11y:
|
|
|
2220
2305
|
dragAnchor: n,
|
|
2221
2306
|
onMove: f,
|
|
2222
2307
|
onMoveEnd: p,
|
|
2223
|
-
...
|
|
2224
|
-
children: /* @__PURE__ */ y(
|
|
2225
|
-
...
|
|
2308
|
+
...D,
|
|
2309
|
+
children: /* @__PURE__ */ y(T, {
|
|
2310
|
+
...O,
|
|
2226
2311
|
children: [
|
|
2227
|
-
/* @__PURE__ */ v(
|
|
2312
|
+
/* @__PURE__ */ v(dr, {
|
|
2228
2313
|
width: e,
|
|
2229
2314
|
height: t,
|
|
2230
2315
|
progress: s,
|
|
2231
2316
|
onProgressChange: c,
|
|
2232
2317
|
onProgressEnd: l
|
|
2233
2318
|
}),
|
|
2234
|
-
/* @__PURE__ */ v(
|
|
2235
|
-
u && d && /* @__PURE__ */ v(
|
|
2319
|
+
/* @__PURE__ */ v(E, { ...k }),
|
|
2320
|
+
u && d && /* @__PURE__ */ v(hr, {
|
|
2236
2321
|
width: e,
|
|
2237
2322
|
left: n,
|
|
2238
2323
|
colWidth: i,
|
|
@@ -2243,12 +2328,12 @@ function ur({ width: e, height: t, left: n, top: r, colWidth: i, title: a, a11y:
|
|
|
2243
2328
|
})
|
|
2244
2329
|
});
|
|
2245
2330
|
}
|
|
2246
|
-
var
|
|
2331
|
+
var _r = {
|
|
2247
2332
|
handle: "_handle_fw6gu_1",
|
|
2248
2333
|
visible: "_visible_fw6gu_18"
|
|
2249
|
-
},
|
|
2250
|
-
function
|
|
2251
|
-
let s = J(), c = a ?? s.bars?.connectorHandles?.slots, l = o ?? s.bars?.connectorHandles?.slotProps, { startDrag: u, endDrag: d } =
|
|
2334
|
+
}, vr = 10 / 2;
|
|
2335
|
+
function yr({ taskId: e, barLeft: t, barWidth: n, barCenterY: r, show: i, slots: a, slotProps: o }) {
|
|
2336
|
+
let s = J(), c = a ?? s.bars?.connectorHandles?.slots, l = o ?? s.bars?.connectorHandles?.slotProps, { startDrag: u, endDrag: d } = Sn(), f = wn(), { gridBodyRef: p } = vn(), m = (e, t) => {
|
|
2252
2337
|
let n = p.current?.getBoundingClientRect();
|
|
2253
2338
|
if (!n) return {
|
|
2254
2339
|
x: 0,
|
|
@@ -2279,140 +2364,143 @@ function pr({ taskId: e, barLeft: t, barWidth: n, barCenterY: r, show: i, slots:
|
|
|
2279
2364
|
barCenterY: r,
|
|
2280
2365
|
show: i,
|
|
2281
2366
|
isDragging: f
|
|
2282
|
-
}, x = c?.startHandle ?? "div", S = c?.endHandle ?? "div", C = i || f, w =
|
|
2367
|
+
}, x = c?.startHandle ?? "div", S = c?.endHandle ?? "div", C = i || f, w = X({
|
|
2283
2368
|
"aria-hidden": !0,
|
|
2284
2369
|
tabIndex: -1,
|
|
2285
|
-
className:
|
|
2370
|
+
className: Y(_r.handle, C && _r.visible),
|
|
2286
2371
|
style: {
|
|
2287
2372
|
left: t - 10,
|
|
2288
|
-
top: r -
|
|
2373
|
+
top: r - vr
|
|
2289
2374
|
},
|
|
2290
2375
|
onMouseDown: (e) => h(e, "start"),
|
|
2291
2376
|
onMouseUp: (e) => g(e, "start")
|
|
2292
|
-
}, l?.startHandle, b), T =
|
|
2377
|
+
}, l?.startHandle, b), T = X({
|
|
2293
2378
|
"aria-hidden": !0,
|
|
2294
2379
|
tabIndex: -1,
|
|
2295
|
-
className:
|
|
2380
|
+
className: Y(_r.handle, C && _r.visible),
|
|
2296
2381
|
style: {
|
|
2297
2382
|
left: t + n,
|
|
2298
|
-
top: r -
|
|
2383
|
+
top: r - vr
|
|
2299
2384
|
},
|
|
2300
2385
|
onMouseDown: (e) => h(e, "end"),
|
|
2301
2386
|
onMouseUp: (e) => g(e, "end")
|
|
2302
2387
|
}, l?.endHandle, b);
|
|
2303
2388
|
return /* @__PURE__ */ y(_, { children: [/* @__PURE__ */ v(x, { ...w }), /* @__PURE__ */ v(S, { ...T })] });
|
|
2304
2389
|
}
|
|
2305
|
-
var
|
|
2306
|
-
let p =
|
|
2307
|
-
startDate:
|
|
2308
|
-
endDate:
|
|
2309
|
-
}),
|
|
2310
|
-
startDate:
|
|
2311
|
-
endDate:
|
|
2312
|
-
}),
|
|
2390
|
+
var br = { row: "_row_1hdsc_13" }, xr = i(function({ task: e, index: t, origin: n, colWidth: r, rowHeight: i, unit: o, override: s, onOverride: c, onUpdate: l, onCommit: u, onTaskClick: d, rowIndexOffset: f }) {
|
|
2391
|
+
let p = rn(), h = cn(), g = gn() === e.id, _ = un()?.criticalTaskIds.has(e.id) ?? !1, b = on(), x = J().bars?.tooltip?.slots?.tooltip, { left: S, width: C, progress: w } = At(e, s || {}, n, r, o), T = t * i, E = S, D = i - 12, O = 6 + D / 2, k = e.type === "milestone", A = k ? E - D / 2 : E, j = k ? D - 1 : C, [M, N] = m(!1), ee = (e) => ({
|
|
2392
|
+
startDate: jt(e, n, r, o),
|
|
2393
|
+
endDate: jt(e + C, n, r, o)
|
|
2394
|
+
}), te = (e, t) => ({
|
|
2395
|
+
startDate: jt(t, n, r, o),
|
|
2396
|
+
endDate: jt(t + e, n, r, o)
|
|
2397
|
+
}), ne = (t) => {
|
|
2313
2398
|
c(e.id, t);
|
|
2314
|
-
},
|
|
2399
|
+
}, P = (e, t) => {
|
|
2315
2400
|
a(() => {
|
|
2316
2401
|
l(e, t), c(e, null);
|
|
2317
2402
|
});
|
|
2318
|
-
},
|
|
2403
|
+
}, F = (t) => {
|
|
2319
2404
|
a(() => {
|
|
2320
2405
|
u(e.id, t), c(e.id, null);
|
|
2321
2406
|
});
|
|
2322
|
-
},
|
|
2407
|
+
}, I = (e) => ({
|
|
2323
2408
|
kind: "move",
|
|
2324
|
-
startDate:
|
|
2325
|
-
}),
|
|
2326
|
-
onMove: (e) =>
|
|
2327
|
-
onMoveEnd: (e) => I(
|
|
2409
|
+
startDate: jt(e, n, r, o)
|
|
2410
|
+
}), L = h ? {} : {
|
|
2411
|
+
onMove: (e) => ne(ee(e)),
|
|
2412
|
+
onMoveEnd: (e) => F(I(e))
|
|
2413
|
+
}, R = h ? {} : {
|
|
2414
|
+
onProgressChange: (e) => ne({ progress: e }),
|
|
2415
|
+
onProgressEnd: (t) => P(e.id, { progress: t })
|
|
2328
2416
|
}, z = h ? {} : {
|
|
2329
|
-
|
|
2330
|
-
|
|
2331
|
-
}, B = h ? {} : {
|
|
2332
|
-
onResize: (e, t) => F(P(e, t)),
|
|
2333
|
-
onResizeEnd: (e, t) => I(e === "start" ? {
|
|
2417
|
+
onResize: (e, t) => ne(te(e, t)),
|
|
2418
|
+
onResizeEnd: (e, t) => F(e === "start" ? {
|
|
2334
2419
|
kind: "resizeStart",
|
|
2335
|
-
startDate:
|
|
2420
|
+
startDate: jt(t, n, r, o)
|
|
2336
2421
|
} : {
|
|
2337
2422
|
kind: "resizeEnd",
|
|
2338
|
-
endDate:
|
|
2423
|
+
endDate: jt(t, n, r, o)
|
|
2339
2424
|
})
|
|
2340
|
-
},
|
|
2425
|
+
}, re = {
|
|
2341
2426
|
role: "gridcell",
|
|
2342
|
-
"aria-colindex": Math.max(1, Math.floor(
|
|
2343
|
-
"aria-colspan": Math.max(1, Math.round(
|
|
2344
|
-
"aria-label": p.bar(e, { progress:
|
|
2427
|
+
"aria-colindex": Math.max(1, Math.floor(E / r) + 1),
|
|
2428
|
+
"aria-colspan": Math.max(1, Math.round(C / r)),
|
|
2429
|
+
"aria-label": p.bar(e, { progress: w }),
|
|
2345
2430
|
"aria-selected": g || void 0,
|
|
2346
|
-
title:
|
|
2347
|
-
},
|
|
2431
|
+
title: x ? void 0 : e.name
|
|
2432
|
+
}, B = {
|
|
2348
2433
|
task: e,
|
|
2349
|
-
progress:
|
|
2350
|
-
displayEnd: Pe(e,
|
|
2434
|
+
progress: w,
|
|
2435
|
+
displayEnd: Pe(e, b)
|
|
2351
2436
|
};
|
|
2352
2437
|
return /* @__PURE__ */ y("div", {
|
|
2353
|
-
className:
|
|
2438
|
+
className: br.row,
|
|
2354
2439
|
style: {
|
|
2355
|
-
top:
|
|
2440
|
+
top: T,
|
|
2356
2441
|
height: i
|
|
2357
2442
|
},
|
|
2358
2443
|
onClick: d ? () => d(e) : void 0,
|
|
2359
|
-
onMouseEnter: () =>
|
|
2360
|
-
onMouseLeave: () =>
|
|
2444
|
+
onMouseEnter: () => N(!0),
|
|
2445
|
+
onMouseLeave: () => N(!1),
|
|
2361
2446
|
role: "row",
|
|
2362
2447
|
"aria-rowindex": f + t + 1,
|
|
2363
2448
|
children: [
|
|
2364
|
-
!h && /* @__PURE__ */ v(
|
|
2449
|
+
!h && /* @__PURE__ */ v(yr, {
|
|
2365
2450
|
taskId: e.id,
|
|
2366
|
-
barLeft:
|
|
2367
|
-
barWidth:
|
|
2368
|
-
barCenterY:
|
|
2369
|
-
show:
|
|
2451
|
+
barLeft: A,
|
|
2452
|
+
barWidth: j,
|
|
2453
|
+
barCenterY: O,
|
|
2454
|
+
show: M
|
|
2370
2455
|
}),
|
|
2371
|
-
e.type === "milestone" && /* @__PURE__ */ v(
|
|
2372
|
-
tooltip:
|
|
2373
|
-
size:
|
|
2374
|
-
centerLeft:
|
|
2456
|
+
e.type === "milestone" && /* @__PURE__ */ v(cr, {
|
|
2457
|
+
tooltip: B,
|
|
2458
|
+
size: D,
|
|
2459
|
+
centerLeft: E,
|
|
2375
2460
|
top: 6,
|
|
2376
2461
|
colWidth: r,
|
|
2377
2462
|
title: e.name,
|
|
2378
|
-
a11y:
|
|
2379
|
-
|
|
2463
|
+
a11y: re,
|
|
2464
|
+
isCritical: _,
|
|
2465
|
+
...L
|
|
2380
2466
|
}),
|
|
2381
|
-
e.type === "summary" && /* @__PURE__ */ v(
|
|
2382
|
-
tooltip:
|
|
2383
|
-
left:
|
|
2467
|
+
e.type === "summary" && /* @__PURE__ */ v(pr, {
|
|
2468
|
+
tooltip: B,
|
|
2469
|
+
left: E,
|
|
2384
2470
|
top: 6,
|
|
2385
|
-
width:
|
|
2386
|
-
height:
|
|
2471
|
+
width: C,
|
|
2472
|
+
height: D,
|
|
2387
2473
|
colWidth: r,
|
|
2388
2474
|
title: e.name,
|
|
2389
|
-
a11y:
|
|
2390
|
-
progress:
|
|
2391
|
-
|
|
2392
|
-
...R
|
|
2475
|
+
a11y: re,
|
|
2476
|
+
progress: w,
|
|
2477
|
+
isCritical: _,
|
|
2478
|
+
...R,
|
|
2479
|
+
...L
|
|
2393
2480
|
}),
|
|
2394
|
-
e.type === "task" || !e.type ? /* @__PURE__ */ v(
|
|
2395
|
-
tooltip:
|
|
2396
|
-
left:
|
|
2481
|
+
e.type === "task" || !e.type ? /* @__PURE__ */ v(gr, {
|
|
2482
|
+
tooltip: B,
|
|
2483
|
+
left: E,
|
|
2397
2484
|
top: 6,
|
|
2398
|
-
width:
|
|
2399
|
-
height:
|
|
2485
|
+
width: C,
|
|
2486
|
+
height: D,
|
|
2400
2487
|
colWidth: r,
|
|
2401
2488
|
title: e.name,
|
|
2402
|
-
a11y:
|
|
2403
|
-
progress:
|
|
2404
|
-
|
|
2489
|
+
a11y: re,
|
|
2490
|
+
progress: w,
|
|
2491
|
+
isCritical: _,
|
|
2405
2492
|
...R,
|
|
2406
|
-
...
|
|
2493
|
+
...L,
|
|
2494
|
+
...z
|
|
2407
2495
|
}) : null
|
|
2408
2496
|
]
|
|
2409
2497
|
});
|
|
2410
2498
|
});
|
|
2411
|
-
|
|
2499
|
+
xr.displayName = "Row";
|
|
2412
2500
|
//#endregion
|
|
2413
2501
|
//#region src/components/dependency-links/geometry.ts
|
|
2414
|
-
var
|
|
2415
|
-
function
|
|
2502
|
+
var Sr = 12, Cr = {};
|
|
2503
|
+
function wr(e) {
|
|
2416
2504
|
let t = Infinity, n = Infinity, r = -Infinity, i = -Infinity;
|
|
2417
2505
|
for (let a of e) a.x < t && (t = a.x), a.x > r && (r = a.x), a.y < n && (n = a.y), a.y > i && (i = a.y);
|
|
2418
2506
|
return {
|
|
@@ -2422,7 +2510,7 @@ function vr(e) {
|
|
|
2422
2510
|
maxY: i
|
|
2423
2511
|
};
|
|
2424
2512
|
}
|
|
2425
|
-
function
|
|
2513
|
+
function Tr(e) {
|
|
2426
2514
|
if (e.length < 2) return e[0] ?? {
|
|
2427
2515
|
x: 0,
|
|
2428
2516
|
y: 0
|
|
@@ -2433,8 +2521,8 @@ function yr(e) {
|
|
|
2433
2521
|
y: (n.y + r.y) / 2
|
|
2434
2522
|
};
|
|
2435
2523
|
}
|
|
2436
|
-
function
|
|
2437
|
-
let { left: s, width: c } =
|
|
2524
|
+
function Er(e, t, n, { origin: r, colWidth: i, rowHeight: a, unit: o }) {
|
|
2525
|
+
let { left: s, width: c } = At(e, t, r, i, o);
|
|
2438
2526
|
if (e.type === "milestone") {
|
|
2439
2527
|
let t = (a - 12) / 2;
|
|
2440
2528
|
return {
|
|
@@ -2451,13 +2539,13 @@ function br(e, t, n, { origin: r, colWidth: i, rowHeight: a, unit: o }) {
|
|
|
2451
2539
|
task: e
|
|
2452
2540
|
};
|
|
2453
2541
|
}
|
|
2454
|
-
function
|
|
2542
|
+
function Dr(e, t) {
|
|
2455
2543
|
let n = /* @__PURE__ */ new Map(), { rowHeight: r } = t;
|
|
2456
2544
|
return e.forEach((e, i) => {
|
|
2457
|
-
n.set(e.id,
|
|
2545
|
+
n.set(e.id, Er(e, Cr, i * r + r / 2, t));
|
|
2458
2546
|
}), n;
|
|
2459
2547
|
}
|
|
2460
|
-
function
|
|
2548
|
+
function Or(e, t) {
|
|
2461
2549
|
let n = (e.x + t.x) / 2;
|
|
2462
2550
|
return [
|
|
2463
2551
|
e,
|
|
@@ -2472,8 +2560,8 @@ function Sr(e, t) {
|
|
|
2472
2560
|
t
|
|
2473
2561
|
];
|
|
2474
2562
|
}
|
|
2475
|
-
function
|
|
2476
|
-
let i = e.x + n *
|
|
2563
|
+
function kr(e, t, n, r) {
|
|
2564
|
+
let i = e.x + n * Sr, a = t.x - r * Sr, o = (e.y + t.y) / 2;
|
|
2477
2565
|
return [
|
|
2478
2566
|
e,
|
|
2479
2567
|
{
|
|
@@ -2495,7 +2583,7 @@ function Cr(e, t, n, r) {
|
|
|
2495
2583
|
t
|
|
2496
2584
|
];
|
|
2497
2585
|
}
|
|
2498
|
-
function
|
|
2586
|
+
function Ar(e, t, n) {
|
|
2499
2587
|
return [
|
|
2500
2588
|
e,
|
|
2501
2589
|
{
|
|
@@ -2509,7 +2597,7 @@ function wr(e, t, n) {
|
|
|
2509
2597
|
t
|
|
2510
2598
|
];
|
|
2511
2599
|
}
|
|
2512
|
-
function
|
|
2600
|
+
function jr(e, t, n) {
|
|
2513
2601
|
let r = t.centerY, i = n.centerY;
|
|
2514
2602
|
switch (e) {
|
|
2515
2603
|
case "FS": {
|
|
@@ -2520,22 +2608,22 @@ function Tr(e, t, n) {
|
|
|
2520
2608
|
x: n.startX,
|
|
2521
2609
|
y: i
|
|
2522
2610
|
};
|
|
2523
|
-
return n.startX >= t.endX + 2 *
|
|
2611
|
+
return n.startX >= t.endX + 2 * Sr ? Or(e, a) : kr(e, a, 1, 1);
|
|
2524
2612
|
}
|
|
2525
|
-
case "SS": return
|
|
2613
|
+
case "SS": return Ar({
|
|
2526
2614
|
x: t.startX,
|
|
2527
2615
|
y: r
|
|
2528
2616
|
}, {
|
|
2529
2617
|
x: n.startX,
|
|
2530
2618
|
y: i
|
|
2531
|
-
}, Math.min(t.startX, n.startX) -
|
|
2532
|
-
case "FF": return
|
|
2619
|
+
}, Math.min(t.startX, n.startX) - Sr);
|
|
2620
|
+
case "FF": return Ar({
|
|
2533
2621
|
x: t.endX,
|
|
2534
2622
|
y: r
|
|
2535
2623
|
}, {
|
|
2536
2624
|
x: n.endX,
|
|
2537
2625
|
y: i
|
|
2538
|
-
}, Math.max(t.endX, n.endX) +
|
|
2626
|
+
}, Math.max(t.endX, n.endX) + Sr);
|
|
2539
2627
|
case "SF": {
|
|
2540
2628
|
let e = {
|
|
2541
2629
|
x: t.startX,
|
|
@@ -2544,36 +2632,36 @@ function Tr(e, t, n) {
|
|
|
2544
2632
|
x: n.endX,
|
|
2545
2633
|
y: i
|
|
2546
2634
|
};
|
|
2547
|
-
return n.endX <= t.startX - 2 *
|
|
2635
|
+
return n.endX <= t.startX - 2 * Sr ? Or(e, a) : kr(e, a, -1, -1);
|
|
2548
2636
|
}
|
|
2549
2637
|
}
|
|
2550
2638
|
}
|
|
2551
|
-
function
|
|
2552
|
-
let r =
|
|
2639
|
+
function Mr({ tasks: e, dependencies: t, ...n }) {
|
|
2640
|
+
let r = Dr(e, n), i = [];
|
|
2553
2641
|
for (let e of t) {
|
|
2554
2642
|
let t = r.get(e.from), n = r.get(e.to);
|
|
2555
|
-
!t || !n || i.push(
|
|
2643
|
+
!t || !n || i.push(Nr(e, t, n));
|
|
2556
2644
|
}
|
|
2557
2645
|
let a = null;
|
|
2558
2646
|
return {
|
|
2559
2647
|
links: i,
|
|
2560
2648
|
boxes: r,
|
|
2561
2649
|
linksTouching(e) {
|
|
2562
|
-
return a ??=
|
|
2650
|
+
return a ??= Pr(i), a.get(e);
|
|
2563
2651
|
}
|
|
2564
2652
|
};
|
|
2565
2653
|
}
|
|
2566
|
-
function
|
|
2567
|
-
let r =
|
|
2654
|
+
function Nr(e, t, n) {
|
|
2655
|
+
let r = jr(e.type, t, n);
|
|
2568
2656
|
return {
|
|
2569
2657
|
id: `${e.from}->${e.to}`,
|
|
2570
2658
|
type: e.type,
|
|
2571
2659
|
points: r,
|
|
2572
|
-
bounds:
|
|
2660
|
+
bounds: wr(r),
|
|
2573
2661
|
dep: e
|
|
2574
2662
|
};
|
|
2575
2663
|
}
|
|
2576
|
-
function
|
|
2664
|
+
function Pr(e) {
|
|
2577
2665
|
let t = /* @__PURE__ */ new Map(), n = (e, n) => {
|
|
2578
2666
|
let r = t.get(e);
|
|
2579
2667
|
r ? r.push(n) : t.set(e, [n]);
|
|
@@ -2582,26 +2670,26 @@ function Or(e) {
|
|
|
2582
2670
|
n(String(e.dep.from), t), n(String(e.dep.to), t);
|
|
2583
2671
|
}), t;
|
|
2584
2672
|
}
|
|
2585
|
-
function
|
|
2673
|
+
function Fr(e, t, n) {
|
|
2586
2674
|
let r = Object.keys(t);
|
|
2587
2675
|
if (r.length === 0) return e.links;
|
|
2588
2676
|
let i = /* @__PURE__ */ new Map(), a = (r) => {
|
|
2589
2677
|
let a = e.boxes.get(r), o = a && t[String(r)];
|
|
2590
2678
|
if (!a || !o) return a;
|
|
2591
2679
|
let s = i.get(r);
|
|
2592
|
-
return s || (s =
|
|
2680
|
+
return s || (s = Er(a.task, o, a.centerY, n), i.set(r, s)), s;
|
|
2593
2681
|
}, o = null;
|
|
2594
2682
|
for (let t of r) for (let n of e.linksTouching(t) ?? []) {
|
|
2595
2683
|
let { dep: t } = e.links[n], r = a(t.from), i = a(t.to);
|
|
2596
|
-
!r || !i || (o ??= e.links.slice(), o[n] =
|
|
2684
|
+
!r || !i || (o ??= e.links.slice(), o[n] = Nr(t, r, i));
|
|
2597
2685
|
}
|
|
2598
2686
|
return o ?? e.links;
|
|
2599
2687
|
}
|
|
2600
2688
|
//#endregion
|
|
2601
2689
|
//#region src/components/dependency-links/DependencyLinksContext.tsx
|
|
2602
|
-
var
|
|
2603
|
-
function
|
|
2604
|
-
let c = f(() =>
|
|
2690
|
+
var Ir = n(null);
|
|
2691
|
+
function Lr({ tasks: e, dependencies: t, origin: n, colWidth: r, rowHeight: i, unit: a, children: o, overrides: s }) {
|
|
2692
|
+
let c = f(() => Mr({
|
|
2605
2693
|
tasks: e,
|
|
2606
2694
|
dependencies: t,
|
|
2607
2695
|
origin: n,
|
|
@@ -2615,7 +2703,7 @@ function jr({ tasks: e, dependencies: t, origin: n, colWidth: r, rowHeight: i, u
|
|
|
2615
2703
|
r,
|
|
2616
2704
|
i,
|
|
2617
2705
|
a
|
|
2618
|
-
]), l = f(() =>
|
|
2706
|
+
]), l = f(() => Fr(c, s, {
|
|
2619
2707
|
origin: n,
|
|
2620
2708
|
colWidth: r,
|
|
2621
2709
|
rowHeight: i,
|
|
@@ -2628,31 +2716,33 @@ function jr({ tasks: e, dependencies: t, origin: n, colWidth: r, rowHeight: i, u
|
|
|
2628
2716
|
i,
|
|
2629
2717
|
a
|
|
2630
2718
|
]);
|
|
2631
|
-
return /* @__PURE__ */ v(
|
|
2719
|
+
return /* @__PURE__ */ v(Ir.Provider, {
|
|
2632
2720
|
value: l,
|
|
2633
2721
|
children: o
|
|
2634
2722
|
});
|
|
2635
2723
|
}
|
|
2636
|
-
function
|
|
2637
|
-
let e = s(
|
|
2724
|
+
function Rr() {
|
|
2725
|
+
let e = s(Ir);
|
|
2638
2726
|
if (e === null) throw Error("useDependencyLinks must be used within a <DependencyLinksProvider>");
|
|
2639
2727
|
return e;
|
|
2640
2728
|
}
|
|
2641
2729
|
var Z = {
|
|
2642
|
-
layer: "
|
|
2643
|
-
hitArea: "
|
|
2644
|
-
segment: "
|
|
2645
|
-
segmentSelected: "
|
|
2646
|
-
|
|
2647
|
-
|
|
2648
|
-
|
|
2649
|
-
|
|
2650
|
-
|
|
2651
|
-
|
|
2652
|
-
|
|
2730
|
+
layer: "_layer_jv7ss_1",
|
|
2731
|
+
hitArea: "_hitArea_jv7ss_8",
|
|
2732
|
+
segment: "_segment_jv7ss_15",
|
|
2733
|
+
segmentSelected: "_segmentSelected_jv7ss_21",
|
|
2734
|
+
segmentCritical: "_segmentCritical_jv7ss_25",
|
|
2735
|
+
arrowRight: "_arrowRight_jv7ss_30",
|
|
2736
|
+
arrowLeft: "_arrowLeft_jv7ss_31",
|
|
2737
|
+
arrowSelected: "_arrowSelected_jv7ss_48",
|
|
2738
|
+
arrowCritical: "_arrowCritical_jv7ss_56",
|
|
2739
|
+
lagLabel: "_lagLabel_jv7ss_69",
|
|
2740
|
+
deleteBtn: "_deleteBtn_jv7ss_83"
|
|
2741
|
+
}, Q = 2, zr = 8, Br = 6;
|
|
2742
|
+
function Vr(e, t) {
|
|
2653
2743
|
return t ? e.minX <= t.maxX && e.maxX >= t.minX && e.minY <= t.maxY && e.maxY >= t.minY : !0;
|
|
2654
2744
|
}
|
|
2655
|
-
function
|
|
2745
|
+
function Hr(e, t) {
|
|
2656
2746
|
return e.y === t.y ? {
|
|
2657
2747
|
left: Math.min(e.x, t.x) - Q / 2,
|
|
2658
2748
|
top: e.y - Q / 2,
|
|
@@ -2665,62 +2755,62 @@ function Ir(e, t) {
|
|
|
2665
2755
|
height: Math.abs(t.y - e.y) + Q
|
|
2666
2756
|
};
|
|
2667
2757
|
}
|
|
2668
|
-
function
|
|
2758
|
+
function Ur(e, t) {
|
|
2669
2759
|
return e.y === t.y ? {
|
|
2670
2760
|
left: Math.min(e.x, t.x) - Q / 2,
|
|
2671
|
-
top: e.y -
|
|
2761
|
+
top: e.y - Br,
|
|
2672
2762
|
width: Math.abs(t.x - e.x) + Q,
|
|
2673
|
-
height: Q +
|
|
2763
|
+
height: Q + Br * 2
|
|
2674
2764
|
} : {
|
|
2675
|
-
left: e.x -
|
|
2765
|
+
left: e.x - Br,
|
|
2676
2766
|
top: Math.min(e.y, t.y) - Q / 2,
|
|
2677
|
-
width: Q +
|
|
2767
|
+
width: Q + Br * 2,
|
|
2678
2768
|
height: Math.abs(t.y - e.y) + Q
|
|
2679
2769
|
};
|
|
2680
2770
|
}
|
|
2681
|
-
function
|
|
2771
|
+
function Wr(e) {
|
|
2682
2772
|
let t = [];
|
|
2683
2773
|
for (let n = 0; n + 1 < e.length; n++) t.push([e[n], e[n + 1]]);
|
|
2684
2774
|
return t;
|
|
2685
2775
|
}
|
|
2686
|
-
function
|
|
2776
|
+
function Gr(e) {
|
|
2687
2777
|
let t = e[e.length - 1], n = e[e.length - 2], r = t.x >= n.x;
|
|
2688
2778
|
return {
|
|
2689
2779
|
className: r ? Z.arrowRight : Z.arrowLeft,
|
|
2690
2780
|
style: {
|
|
2691
|
-
left: r ? t.x -
|
|
2692
|
-
top: t.y -
|
|
2781
|
+
left: r ? t.x - zr : t.x,
|
|
2782
|
+
top: t.y - zr / 2
|
|
2693
2783
|
}
|
|
2694
2784
|
};
|
|
2695
2785
|
}
|
|
2696
|
-
function
|
|
2697
|
-
let s = J(), c = a ?? s.dependencies?.links?.slots, u = o ?? s.dependencies?.links?.slotProps, d =
|
|
2786
|
+
function Kr({ width: t, height: n, onDependencyDelete: r, visibleRect: i, slots: a, slotProps: o }) {
|
|
2787
|
+
let s = J(), c = a ?? s.dependencies?.links?.slots, u = o ?? s.dependencies?.links?.slotProps, d = rn(), f = cn(), p = un(), h = Rr(), [g, _] = m(null), [b, x] = m(null), S = g ? h.find((e) => e.id === g) : null;
|
|
2698
2788
|
if (l(() => {
|
|
2699
|
-
if (!
|
|
2789
|
+
if (!g) return;
|
|
2700
2790
|
let e = (e) => {
|
|
2701
|
-
(e.key === "Delete" || e.key === "Backspace") && (
|
|
2791
|
+
(e.key === "Delete" || e.key === "Backspace") && (S && r?.(S.dep), _(null), x(null));
|
|
2702
2792
|
};
|
|
2703
2793
|
return window.addEventListener("keydown", e), () => window.removeEventListener("keydown", e);
|
|
2704
2794
|
}, [
|
|
2705
|
-
|
|
2706
|
-
|
|
2795
|
+
g,
|
|
2796
|
+
S,
|
|
2707
2797
|
r
|
|
2708
|
-
]),
|
|
2709
|
-
let
|
|
2710
|
-
if (t.stopPropagation(),
|
|
2798
|
+
]), h.length === 0) return null;
|
|
2799
|
+
let C = (e, t) => {
|
|
2800
|
+
if (t.stopPropagation(), g === e) _(null), x(null);
|
|
2711
2801
|
else {
|
|
2712
|
-
|
|
2802
|
+
_(e);
|
|
2713
2803
|
let n = t.currentTarget.closest(`.${Z.layer}`)?.getBoundingClientRect();
|
|
2714
|
-
|
|
2804
|
+
x(n ? {
|
|
2715
2805
|
x: t.clientX - n.left,
|
|
2716
2806
|
y: t.clientY - n.top
|
|
2717
2807
|
} : null);
|
|
2718
2808
|
}
|
|
2719
|
-
},
|
|
2720
|
-
e.stopPropagation(),
|
|
2721
|
-
},
|
|
2722
|
-
return /* @__PURE__ */ y(
|
|
2723
|
-
...
|
|
2809
|
+
}, w = (e) => {
|
|
2810
|
+
e.stopPropagation(), S && r?.(S.dep), _(null), x(null);
|
|
2811
|
+
}, T = c?.layer ?? "div", E = c?.segment ?? "div", D = c?.arrow ?? "div", O = c?.lagLabel ?? "div", k = c?.deleteButton ?? "button";
|
|
2812
|
+
return /* @__PURE__ */ y(T, {
|
|
2813
|
+
...X({
|
|
2724
2814
|
className: Z.layer,
|
|
2725
2815
|
style: {
|
|
2726
2816
|
width: t,
|
|
@@ -2729,41 +2819,43 @@ function Br({ width: t, height: n, onDependencyDelete: r, visibleRect: i, slots:
|
|
|
2729
2819
|
role: "presentation",
|
|
2730
2820
|
"aria-hidden": !0,
|
|
2731
2821
|
onClick: () => {
|
|
2732
|
-
|
|
2822
|
+
_(null), x(null);
|
|
2733
2823
|
}
|
|
2734
2824
|
}, u?.layer, {
|
|
2735
2825
|
width: t,
|
|
2736
2826
|
height: n,
|
|
2737
|
-
linkCount:
|
|
2827
|
+
linkCount: h.length
|
|
2738
2828
|
}),
|
|
2739
|
-
children: [
|
|
2740
|
-
let n = t.id ===
|
|
2741
|
-
if (!n && !
|
|
2742
|
-
let r =
|
|
2829
|
+
children: [h.map((t) => {
|
|
2830
|
+
let n = t.id === g;
|
|
2831
|
+
if (!n && !Vr(t.bounds, i)) return null;
|
|
2832
|
+
let r = Gr(t.points), a = Wr(t.points), o = t.dep.lag ? Tr(t.points) : null, s = p?.criticalDependencyKeys.has(t.id) ?? !1, c = {
|
|
2743
2833
|
link: t,
|
|
2744
|
-
isSelected: n
|
|
2745
|
-
|
|
2746
|
-
|
|
2834
|
+
isSelected: n,
|
|
2835
|
+
isCritical: s
|
|
2836
|
+
}, l = X({
|
|
2837
|
+
className: Y(r.className, n && Z.arrowSelected, s && Z.arrowCritical),
|
|
2747
2838
|
style: r.style
|
|
2748
|
-
}, u?.arrow,
|
|
2839
|
+
}, u?.arrow, c);
|
|
2749
2840
|
return /* @__PURE__ */ y(e, { children: [
|
|
2750
2841
|
!f && a.map(([e, n]) => /* @__PURE__ */ v("div", {
|
|
2751
2842
|
className: Z.hitArea,
|
|
2752
|
-
style:
|
|
2753
|
-
onClick: (e) =>
|
|
2843
|
+
style: Ur(e, n),
|
|
2844
|
+
onClick: (e) => C(t.id, e)
|
|
2754
2845
|
}, `hit-${e.x},${e.y}-${n.x},${n.y}`)),
|
|
2755
|
-
a.map(([e, r], i) => /* @__PURE__ */ v(
|
|
2756
|
-
className:
|
|
2757
|
-
style:
|
|
2846
|
+
a.map(([e, r], i) => /* @__PURE__ */ v(E, { ...X({
|
|
2847
|
+
className: Y(Z.segment, n && Z.segmentSelected, s && Z.segmentCritical),
|
|
2848
|
+
style: Hr(e, r)
|
|
2758
2849
|
}, u?.segment, {
|
|
2759
2850
|
link: t,
|
|
2760
2851
|
isSelected: n,
|
|
2852
|
+
isCritical: s,
|
|
2761
2853
|
from: e,
|
|
2762
2854
|
to: r,
|
|
2763
2855
|
index: i
|
|
2764
2856
|
}) }, `seg-${e.x},${e.y}-${r.x},${r.y}`)),
|
|
2765
|
-
/* @__PURE__ */ v(
|
|
2766
|
-
o && t.dep.lag !== void 0 && t.dep.lag !== 0 && /* @__PURE__ */ v(
|
|
2857
|
+
/* @__PURE__ */ v(D, { ...l }),
|
|
2858
|
+
o && t.dep.lag !== void 0 && t.dep.lag !== 0 && /* @__PURE__ */ v(O, { ...X({
|
|
2767
2859
|
className: Z.lagLabel,
|
|
2768
2860
|
style: {
|
|
2769
2861
|
left: o.x,
|
|
@@ -2773,32 +2865,33 @@ function Br({ width: t, height: n, onDependencyDelete: r, visibleRect: i, slots:
|
|
|
2773
2865
|
}, u?.lagLabel, {
|
|
2774
2866
|
link: t,
|
|
2775
2867
|
isSelected: n,
|
|
2868
|
+
isCritical: s,
|
|
2776
2869
|
lag: t.dep.lag
|
|
2777
2870
|
}) })
|
|
2778
2871
|
] }, t.id);
|
|
2779
|
-
}), !f &&
|
|
2872
|
+
}), !f && S && b && /* @__PURE__ */ v(k, { ...X({
|
|
2780
2873
|
className: Z.deleteBtn,
|
|
2781
2874
|
type: "button",
|
|
2782
2875
|
tabIndex: -1,
|
|
2783
2876
|
style: {
|
|
2784
|
-
left:
|
|
2785
|
-
top:
|
|
2877
|
+
left: b.x,
|
|
2878
|
+
top: b.y
|
|
2786
2879
|
},
|
|
2787
|
-
onClick:
|
|
2880
|
+
onClick: w,
|
|
2788
2881
|
"aria-label": d.deleteDependency,
|
|
2789
2882
|
children: "×"
|
|
2790
|
-
}, u?.deleteButton, { dependency:
|
|
2883
|
+
}, u?.deleteButton, { dependency: S.dep }) })]
|
|
2791
2884
|
});
|
|
2792
2885
|
}
|
|
2793
|
-
var
|
|
2886
|
+
var qr = { preview: "_preview_1jjzd_1" };
|
|
2794
2887
|
//#endregion
|
|
2795
2888
|
//#region src/components/dependency-links/DependencyPreview.tsx
|
|
2796
|
-
function
|
|
2797
|
-
let n = J(), r = e ?? n.dependencies?.preview?.slots, i = t ?? n.dependencies?.preview?.slotProps, a =
|
|
2889
|
+
function Jr({ slots: e, slotProps: t }) {
|
|
2890
|
+
let n = J(), r = e ?? n.dependencies?.preview?.slots, i = t ?? n.dependencies?.preview?.slotProps, a = En();
|
|
2798
2891
|
if (!a) return null;
|
|
2799
2892
|
let o = a.currentX - a.startX, s = a.currentY - a.startY, c = Math.hypot(o, s), l = 180 / Math.PI * Math.atan2(s, o);
|
|
2800
|
-
return /* @__PURE__ */ v(r?.root ?? "div", { ...
|
|
2801
|
-
className:
|
|
2893
|
+
return /* @__PURE__ */ v(r?.root ?? "div", { ...X({
|
|
2894
|
+
className: qr.preview,
|
|
2802
2895
|
style: {
|
|
2803
2896
|
left: a.startX,
|
|
2804
2897
|
top: a.startY,
|
|
@@ -2812,17 +2905,17 @@ function Hr({ slots: e, slotProps: t }) {
|
|
|
2812
2905
|
angle: l
|
|
2813
2906
|
}) });
|
|
2814
2907
|
}
|
|
2815
|
-
var
|
|
2908
|
+
var Yr = {
|
|
2816
2909
|
cols: "_cols_kjab1_1",
|
|
2817
2910
|
col: "_col_kjab1_1",
|
|
2818
2911
|
colWeekend: "_colWeekend_kjab1_14"
|
|
2819
2912
|
};
|
|
2820
2913
|
//#endregion
|
|
2821
2914
|
//#region src/components/grid/GridColumns.tsx
|
|
2822
|
-
function
|
|
2823
|
-
let c = J(), l = o ?? c.timeline?.gridColumn?.slots, u = s ?? c.timeline?.gridColumn?.slotProps, d = l?.column ?? "div", { calendar: f } =
|
|
2915
|
+
function Xr({ dates: e, colWidth: t, bodyHeight: n, colRange: r, unit: i = "day", step: a = 1, slots: o, slotProps: s }) {
|
|
2916
|
+
let c = J(), l = o ?? c.timeline?.gridColumn?.slots, u = s ?? c.timeline?.gridColumn?.slotProps, d = l?.column ?? "div", { calendar: f } = on(), p = i === "day" || i === "hour" || i === "minute";
|
|
2824
2917
|
return /* @__PURE__ */ v("div", {
|
|
2825
|
-
className:
|
|
2918
|
+
className: Yr.cols,
|
|
2826
2919
|
role: "presentation",
|
|
2827
2920
|
"aria-hidden": !0,
|
|
2828
2921
|
children: e.slice(r.start, r.end).map((e, o) => {
|
|
@@ -2838,8 +2931,8 @@ function Wr({ dates: e, colWidth: t, bodyHeight: n, colRange: r, unit: i = "day"
|
|
|
2838
2931
|
colWidth: t,
|
|
2839
2932
|
bodyHeight: n
|
|
2840
2933
|
};
|
|
2841
|
-
return /* @__PURE__ */ v(d, { ...
|
|
2842
|
-
className:
|
|
2934
|
+
return /* @__PURE__ */ v(d, { ...X({
|
|
2935
|
+
className: Y(Yr.col, l && Yr.colWeekend),
|
|
2843
2936
|
style: {
|
|
2844
2937
|
left: s * t,
|
|
2845
2938
|
width: t,
|
|
@@ -2849,15 +2942,15 @@ function Wr({ dates: e, colWidth: t, bodyHeight: n, colRange: r, unit: i = "day"
|
|
|
2849
2942
|
})
|
|
2850
2943
|
});
|
|
2851
2944
|
}
|
|
2852
|
-
|
|
2853
|
-
var
|
|
2945
|
+
Xr.displayName = "GridColumns";
|
|
2946
|
+
var Zr = {
|
|
2854
2947
|
gridWrapper: "_gridWrapper_1tr84_1",
|
|
2855
2948
|
grid: "_grid_1tr84_1",
|
|
2856
2949
|
body: "_body_1tr84_17"
|
|
2857
2950
|
};
|
|
2858
2951
|
//#endregion
|
|
2859
2952
|
//#region src/core/virtualize.ts
|
|
2860
|
-
function
|
|
2953
|
+
function Qr(e, t, n, r, i = 0) {
|
|
2861
2954
|
if (r <= 0) return {
|
|
2862
2955
|
start: 0,
|
|
2863
2956
|
end: 0
|
|
@@ -2874,8 +2967,8 @@ function Kr(e, t, n, r, i = 0) {
|
|
|
2874
2967
|
}
|
|
2875
2968
|
//#endregion
|
|
2876
2969
|
//#region src/components/grid/Grid.tsx
|
|
2877
|
-
function
|
|
2878
|
-
let n = J(), r = e ?? n.timeline?.grid?.slots, i = t ?? n.timeline?.grid?.slotProps, { visibleTasks: a } =
|
|
2970
|
+
function $r({ slots: e, slotProps: t } = {}) {
|
|
2971
|
+
let n = J(), r = e ?? n.timeline?.grid?.slots, i = t ?? n.timeline?.grid?.slotProps, { visibleTasks: a } = fn(), { updateTask: s, commitTask: c, onTaskClick: u, setSelectedId: d } = mn(), { colWidth: p, rowHeight: h, scales: g, padDays: _, height: b } = tn(), x = rn(), { gridRef: S, onGridScroll: C, gridBodyRef: w } = vn(), T = bn(), { dependencies: E, onDependencyDelete: D } = Sn(), { zoomAt: O, zoomIn: k, zoomOut: A, wheelEnabled: j, keyboardEnabled: M } = On();
|
|
2879
2972
|
l(() => {
|
|
2880
2973
|
let e = S.current;
|
|
2881
2974
|
if (!e || !j && !M) return;
|
|
@@ -2899,10 +2992,10 @@ function qr({ slots: e, slotProps: t } = {}) {
|
|
|
2899
2992
|
A,
|
|
2900
2993
|
a.length
|
|
2901
2994
|
]);
|
|
2902
|
-
let [N,
|
|
2995
|
+
let [N, ee] = m({}), te = o((e) => {
|
|
2903
2996
|
d(e.id), u?.(e);
|
|
2904
|
-
}, [d, u]),
|
|
2905
|
-
|
|
2997
|
+
}, [d, u]), ne = o((e, t) => {
|
|
2998
|
+
ee((n) => {
|
|
2906
2999
|
if (t === null) {
|
|
2907
3000
|
let { [e]: t, ...r } = n;
|
|
2908
3001
|
return r;
|
|
@@ -2915,90 +3008,90 @@ function qr({ slots: e, slotProps: t } = {}) {
|
|
|
2915
3008
|
}
|
|
2916
3009
|
};
|
|
2917
3010
|
});
|
|
2918
|
-
}, []),
|
|
3011
|
+
}, []), P = f(() => Lt(a, _, g), [
|
|
2919
3012
|
a,
|
|
2920
3013
|
_,
|
|
2921
3014
|
g
|
|
2922
|
-
]),
|
|
2923
|
-
if (!
|
|
2924
|
-
let
|
|
2925
|
-
minX:
|
|
2926
|
-
maxX:
|
|
2927
|
-
minY:
|
|
2928
|
-
maxY:
|
|
2929
|
-
},
|
|
2930
|
-
totalWidth:
|
|
2931
|
-
bodyHeight:
|
|
3015
|
+
]), F = P[0]?.getTime(), I = f(() => F == null ? void 0 : new Date(F), [F]);
|
|
3016
|
+
if (!I) return null;
|
|
3017
|
+
let L = Nt(g), R = P.length * p, z = a.length * h, re = (g ?? Mt).length, B = Qr(T.scrollTop, T.clientHeight, h, a.length, 6), ie = Qr(T.scrollLeft, T.clientWidth, p, P.length, 4), ae = {
|
|
3018
|
+
minX: ie.start * p,
|
|
3019
|
+
maxX: ie.end * p,
|
|
3020
|
+
minY: B.start * h,
|
|
3021
|
+
maxY: B.end * h
|
|
3022
|
+
}, oe = r?.root ?? "div", se = r?.body ?? "div", ce = {
|
|
3023
|
+
totalWidth: R,
|
|
3024
|
+
bodyHeight: z,
|
|
2932
3025
|
height: b
|
|
2933
|
-
},
|
|
2934
|
-
className:
|
|
3026
|
+
}, le = X({
|
|
3027
|
+
className: Zr.gridWrapper,
|
|
2935
3028
|
style: b === void 0 ? {} : { height: b },
|
|
2936
3029
|
onScroll: C,
|
|
2937
3030
|
role: "grid",
|
|
2938
3031
|
"aria-label": x.timeline,
|
|
2939
|
-
"aria-rowcount":
|
|
2940
|
-
"aria-colcount":
|
|
2941
|
-
}, i?.root,
|
|
2942
|
-
className:
|
|
3032
|
+
"aria-rowcount": re + a.length,
|
|
3033
|
+
"aria-colcount": P.length
|
|
3034
|
+
}, i?.root, ce), ue = X({
|
|
3035
|
+
className: Zr.body,
|
|
2943
3036
|
style: {
|
|
2944
|
-
height:
|
|
2945
|
-
width:
|
|
3037
|
+
height: z,
|
|
3038
|
+
width: R
|
|
2946
3039
|
},
|
|
2947
3040
|
role: "rowgroup"
|
|
2948
|
-
}, i?.body,
|
|
2949
|
-
return /* @__PURE__ */ v(
|
|
3041
|
+
}, i?.body, ce);
|
|
3042
|
+
return /* @__PURE__ */ v(oe, {
|
|
2950
3043
|
ref: S,
|
|
2951
|
-
...
|
|
3044
|
+
...le,
|
|
2952
3045
|
children: /* @__PURE__ */ y("div", {
|
|
2953
|
-
className:
|
|
2954
|
-
style: { width:
|
|
3046
|
+
className: Zr.grid,
|
|
3047
|
+
style: { width: R },
|
|
2955
3048
|
role: "presentation",
|
|
2956
|
-
children: [/* @__PURE__ */ v(
|
|
3049
|
+
children: [/* @__PURE__ */ v(Ln, {
|
|
2957
3050
|
colWidth: p,
|
|
2958
3051
|
rowHeight: h,
|
|
2959
|
-
dates:
|
|
3052
|
+
dates: P,
|
|
2960
3053
|
scales: g,
|
|
2961
|
-
colRange:
|
|
2962
|
-
}), /* @__PURE__ */ v(
|
|
3054
|
+
colRange: ie
|
|
3055
|
+
}), /* @__PURE__ */ v(Lr, {
|
|
2963
3056
|
tasks: a,
|
|
2964
3057
|
dependencies: E,
|
|
2965
|
-
origin:
|
|
3058
|
+
origin: I,
|
|
2966
3059
|
colWidth: p,
|
|
2967
3060
|
rowHeight: h,
|
|
2968
|
-
unit:
|
|
3061
|
+
unit: L,
|
|
2969
3062
|
overrides: N,
|
|
2970
|
-
children: /* @__PURE__ */ y(
|
|
3063
|
+
children: /* @__PURE__ */ y(se, {
|
|
2971
3064
|
ref: w,
|
|
2972
|
-
...
|
|
3065
|
+
...ue,
|
|
2973
3066
|
children: [
|
|
2974
|
-
/* @__PURE__ */ v(
|
|
2975
|
-
dates:
|
|
3067
|
+
/* @__PURE__ */ v(Xr, {
|
|
3068
|
+
dates: P,
|
|
2976
3069
|
colWidth: p,
|
|
2977
|
-
bodyHeight:
|
|
2978
|
-
colRange:
|
|
2979
|
-
unit:
|
|
2980
|
-
step:
|
|
3070
|
+
bodyHeight: z,
|
|
3071
|
+
colRange: ie,
|
|
3072
|
+
unit: L,
|
|
3073
|
+
step: Pt(g)
|
|
2981
3074
|
}),
|
|
2982
|
-
/* @__PURE__ */ v(
|
|
2983
|
-
width:
|
|
2984
|
-
height:
|
|
3075
|
+
/* @__PURE__ */ v(Kr, {
|
|
3076
|
+
width: R,
|
|
3077
|
+
height: z,
|
|
2985
3078
|
onDependencyDelete: D,
|
|
2986
|
-
visibleRect:
|
|
3079
|
+
visibleRect: ae
|
|
2987
3080
|
}),
|
|
2988
|
-
/* @__PURE__ */ v(
|
|
2989
|
-
a.slice(
|
|
3081
|
+
/* @__PURE__ */ v(Jr, {}),
|
|
3082
|
+
a.slice(B.start, B.end).map((e, t) => /* @__PURE__ */ v(xr, {
|
|
2990
3083
|
task: e,
|
|
2991
|
-
index:
|
|
2992
|
-
origin:
|
|
3084
|
+
index: B.start + t,
|
|
3085
|
+
origin: I,
|
|
2993
3086
|
colWidth: p,
|
|
2994
3087
|
rowHeight: h,
|
|
2995
|
-
unit:
|
|
3088
|
+
unit: L,
|
|
2996
3089
|
onUpdate: s,
|
|
2997
3090
|
onCommit: c,
|
|
2998
3091
|
override: N[e.id],
|
|
2999
|
-
onOverride:
|
|
3000
|
-
onTaskClick:
|
|
3001
|
-
rowIndexOffset:
|
|
3092
|
+
onOverride: ne,
|
|
3093
|
+
onTaskClick: te,
|
|
3094
|
+
rowIndexOffset: re
|
|
3002
3095
|
}, e.id))
|
|
3003
3096
|
]
|
|
3004
3097
|
})
|
|
@@ -3006,14 +3099,14 @@ function qr({ slots: e, slotProps: t } = {}) {
|
|
|
3006
3099
|
})
|
|
3007
3100
|
});
|
|
3008
3101
|
}
|
|
3009
|
-
|
|
3010
|
-
var
|
|
3102
|
+
$r.displayName = "GanttGrid";
|
|
3103
|
+
var ei = { handle: "_handle_1o220_1" };
|
|
3011
3104
|
//#endregion
|
|
3012
3105
|
//#region src/components/grid/GridResizeHandle.tsx
|
|
3013
|
-
function
|
|
3014
|
-
let i = J(), a = n ?? i.timeline?.gridResizeHandle?.slots, o = r ?? i.timeline?.gridResizeHandle?.slotProps, s =
|
|
3015
|
-
return /* @__PURE__ */ v(a?.root ?? "div", { ...
|
|
3016
|
-
className:
|
|
3106
|
+
function ti({ onMouseDown: e, isResizing: t = !1, slots: n, slotProps: r }) {
|
|
3107
|
+
let i = J(), a = n ?? i.timeline?.gridResizeHandle?.slots, o = r ?? i.timeline?.gridResizeHandle?.slotProps, s = rn(), c = { isResizing: t };
|
|
3108
|
+
return /* @__PURE__ */ v(a?.root ?? "div", { ...X({
|
|
3109
|
+
className: ei.handle,
|
|
3017
3110
|
onMouseDown: e,
|
|
3018
3111
|
role: "separator",
|
|
3019
3112
|
"aria-orientation": "vertical",
|
|
@@ -3037,10 +3130,10 @@ var $ = {
|
|
|
3037
3130
|
};
|
|
3038
3131
|
//#endregion
|
|
3039
3132
|
//#region src/components/taskList/TaskListHeader.tsx
|
|
3040
|
-
function
|
|
3133
|
+
function ni({ columns: e, rowHeight: t, scales: n = Mt, onResizeStart: r, slots: i, slotProps: a }) {
|
|
3041
3134
|
let o = n.length * t + 2, s = i?.header ?? "div", c = i?.headerCell ?? "div", l = i?.columnResizeHandle ?? "div";
|
|
3042
3135
|
return /* @__PURE__ */ v(s, {
|
|
3043
|
-
...
|
|
3136
|
+
...X({
|
|
3044
3137
|
className: $.header,
|
|
3045
3138
|
style: {
|
|
3046
3139
|
minHeight: o,
|
|
@@ -3056,7 +3149,7 @@ function Xr({ columns: e, rowHeight: t, scales: n = Ot, onResizeStart: r, slots:
|
|
|
3056
3149
|
let n = {
|
|
3057
3150
|
column: e,
|
|
3058
3151
|
index: t
|
|
3059
|
-
}, i =
|
|
3152
|
+
}, i = X({
|
|
3060
3153
|
className: $.headerCell,
|
|
3061
3154
|
style: e.width ? {
|
|
3062
3155
|
width: e.width,
|
|
@@ -3067,7 +3160,7 @@ function Xr({ columns: e, rowHeight: t, scales: n = Ot, onResizeStart: r, slots:
|
|
|
3067
3160
|
},
|
|
3068
3161
|
role: "columnheader",
|
|
3069
3162
|
"aria-colindex": t + 1
|
|
3070
|
-
}, a?.headerCell, n), o =
|
|
3163
|
+
}, a?.headerCell, n), o = X({
|
|
3071
3164
|
className: $.divider,
|
|
3072
3165
|
"aria-hidden": !0,
|
|
3073
3166
|
onMouseDown: (t) => {
|
|
@@ -3084,17 +3177,17 @@ function Xr({ columns: e, rowHeight: t, scales: n = Ot, onResizeStart: r, slots:
|
|
|
3084
3177
|
}
|
|
3085
3178
|
//#endregion
|
|
3086
3179
|
//#region src/components/taskList/TreeCell.tsx
|
|
3087
|
-
var
|
|
3088
|
-
function
|
|
3089
|
-
let c =
|
|
3180
|
+
var ri = 16;
|
|
3181
|
+
function ii({ taskId: e, depth: t, isParent: n, isExpanded: r, onToggleExpand: i, children: a, slots: o, slotProps: s }) {
|
|
3182
|
+
let c = rn(), l = {
|
|
3090
3183
|
taskId: e,
|
|
3091
3184
|
depth: t,
|
|
3092
3185
|
isParent: n,
|
|
3093
3186
|
isExpanded: r
|
|
3094
|
-
}, u = o?.root ?? "span", d = o?.expandButton ?? "button", f = o?.placeholder ?? "span", p =
|
|
3187
|
+
}, u = o?.root ?? "span", d = o?.expandButton ?? "button", f = o?.placeholder ?? "span", p = X({
|
|
3095
3188
|
className: $.nameContent,
|
|
3096
|
-
style: { paddingLeft: t *
|
|
3097
|
-
}, s?.root, l), m =
|
|
3189
|
+
style: { paddingLeft: t * ri }
|
|
3190
|
+
}, s?.root, l), m = X({
|
|
3098
3191
|
className: $.expandBtn,
|
|
3099
3192
|
type: "button",
|
|
3100
3193
|
onClick: (t) => {
|
|
@@ -3102,7 +3195,7 @@ function Qr({ taskId: e, depth: t, isParent: n, isExpanded: r, onToggleExpand: i
|
|
|
3102
3195
|
},
|
|
3103
3196
|
"aria-label": r ? c.collapse : c.expand,
|
|
3104
3197
|
children: r ? "▾" : "▸"
|
|
3105
|
-
}, s?.expandButton, l), h =
|
|
3198
|
+
}, s?.expandButton, l), h = X({
|
|
3106
3199
|
className: $.expandPlaceholder,
|
|
3107
3200
|
"aria-hidden": !0
|
|
3108
3201
|
}, s?.placeholder, l);
|
|
@@ -3113,8 +3206,8 @@ function Qr({ taskId: e, depth: t, isParent: n, isExpanded: r, onToggleExpand: i
|
|
|
3113
3206
|
}
|
|
3114
3207
|
//#endregion
|
|
3115
3208
|
//#region src/components/taskList/TaskListRow.tsx
|
|
3116
|
-
var
|
|
3117
|
-
let { columnApi: p } =
|
|
3209
|
+
var ai = 100, oi = i(function({ task: e, rowHeight: t, rowIndex: n, depth: r, posinset: i, setsize: a, isParent: o, isExpanded: s, isSelected: c, onToggleExpand: l, onSelect: u, columns: d, treeCell: f }) {
|
|
3210
|
+
let { columnApi: p } = mn();
|
|
3118
3211
|
return /* @__PURE__ */ v("div", {
|
|
3119
3212
|
className: `${$.row} ${c ? $.selected : ""}`,
|
|
3120
3213
|
style: { height: t },
|
|
@@ -3129,12 +3222,12 @@ var $r = 100, ei = i(function({ task: e, rowHeight: t, rowIndex: n, depth: r, po
|
|
|
3129
3222
|
children: d.map((t, n) => /* @__PURE__ */ v("div", {
|
|
3130
3223
|
className: `${$.cell} ${t.isTreeColumn ? $.treeCell : ""}`,
|
|
3131
3224
|
style: {
|
|
3132
|
-
width: t.width ||
|
|
3225
|
+
width: t.width || ai,
|
|
3133
3226
|
flexShrink: 0
|
|
3134
3227
|
},
|
|
3135
3228
|
role: t.isTreeColumn ? "rowheader" : "gridcell",
|
|
3136
3229
|
"aria-colindex": n + 1,
|
|
3137
|
-
children: t.isTreeColumn ? /* @__PURE__ */ v(
|
|
3230
|
+
children: t.isTreeColumn ? /* @__PURE__ */ v(ii, {
|
|
3138
3231
|
taskId: e.id,
|
|
3139
3232
|
depth: r,
|
|
3140
3233
|
isParent: o,
|
|
@@ -3147,10 +3240,10 @@ var $r = 100, ei = i(function({ task: e, rowHeight: t, rowIndex: n, depth: r, po
|
|
|
3147
3240
|
}, t.key))
|
|
3148
3241
|
});
|
|
3149
3242
|
});
|
|
3150
|
-
|
|
3243
|
+
oi.displayName = "TaskListRow";
|
|
3151
3244
|
//#endregion
|
|
3152
3245
|
//#region src/hooks/useColumnWidths.ts
|
|
3153
|
-
function
|
|
3246
|
+
function si() {
|
|
3154
3247
|
let [e, t] = m({}), n = p(null);
|
|
3155
3248
|
return {
|
|
3156
3249
|
widths: e,
|
|
@@ -3176,12 +3269,12 @@ function ti() {
|
|
|
3176
3269
|
}
|
|
3177
3270
|
//#endregion
|
|
3178
3271
|
//#region src/components/taskList/TaskList.tsx
|
|
3179
|
-
var
|
|
3272
|
+
var ci = {
|
|
3180
3273
|
flex: "1 1 auto",
|
|
3181
3274
|
minHeight: 0
|
|
3182
3275
|
};
|
|
3183
|
-
function
|
|
3184
|
-
let { visibleTasks: n, expandedIds: r, parentIds: i } =
|
|
3276
|
+
function li({ columns: e = [], taskList: t }) {
|
|
3277
|
+
let { visibleTasks: n, expandedIds: r, parentIds: i } = fn(), { toggleExpand: a, setSelectedId: s, onTaskClick: c, revealTask: l } = mn(), u = gn(), { rowHeight: d, scales: p, height: m } = tn(), h = rn(), { taskListRef: g, onTaskListScroll: _ } = vn(), { widths: b, onResizeStart: x } = si(), S = f(() => e.map((e) => b[e.key] == null ? e : {
|
|
3185
3278
|
...e,
|
|
3186
3279
|
width: b[e.key]
|
|
3187
3280
|
}), [e, b]), C = q((e) => {
|
|
@@ -3212,9 +3305,9 @@ function ri({ columns: e = [], taskList: t }) {
|
|
|
3212
3305
|
n.setsize = e.get(r.parentId ?? null) ?? 1;
|
|
3213
3306
|
}
|
|
3214
3307
|
return t;
|
|
3215
|
-
}, [n]), { viewport: D, scheduleMeasure: O } =
|
|
3308
|
+
}, [n]), { viewport: D, scheduleMeasure: O } = Et(g, { trackHorizontal: !1 }), k = o(() => {
|
|
3216
3309
|
_(), O();
|
|
3217
|
-
}, [_, O]), A =
|
|
3310
|
+
}, [_, O]), A = Qr(D.scrollTop, D.clientHeight, d, n.length, 6);
|
|
3218
3311
|
return /* @__PURE__ */ y("div", {
|
|
3219
3312
|
className: $.taskList,
|
|
3220
3313
|
style: { height: m },
|
|
@@ -3222,7 +3315,7 @@ function ri({ columns: e = [], taskList: t }) {
|
|
|
3222
3315
|
"aria-label": h.taskList,
|
|
3223
3316
|
"aria-rowcount": n.length + 1,
|
|
3224
3317
|
"aria-colcount": S.length,
|
|
3225
|
-
children: [/* @__PURE__ */ v(
|
|
3318
|
+
children: [/* @__PURE__ */ v(ni, {
|
|
3226
3319
|
columns: S,
|
|
3227
3320
|
rowHeight: d,
|
|
3228
3321
|
scales: p,
|
|
@@ -3232,7 +3325,7 @@ function ri({ columns: e = [], taskList: t }) {
|
|
|
3232
3325
|
}), /* @__PURE__ */ v("div", {
|
|
3233
3326
|
ref: g,
|
|
3234
3327
|
className: $.body,
|
|
3235
|
-
style:
|
|
3328
|
+
style: ci,
|
|
3236
3329
|
onScroll: k,
|
|
3237
3330
|
role: "presentation",
|
|
3238
3331
|
children: /* @__PURE__ */ y("div", {
|
|
@@ -3246,7 +3339,7 @@ function ri({ columns: e = [], taskList: t }) {
|
|
|
3246
3339
|
}),
|
|
3247
3340
|
Array.from({ length: A.end - A.start }, (e, o) => {
|
|
3248
3341
|
let s = A.start + o, c = n[s], l = E.get(c.id);
|
|
3249
|
-
return /* @__PURE__ */ v(
|
|
3342
|
+
return /* @__PURE__ */ v(oi, {
|
|
3250
3343
|
task: c,
|
|
3251
3344
|
rowHeight: d,
|
|
3252
3345
|
rowIndex: s,
|
|
@@ -3274,7 +3367,7 @@ function ri({ columns: e = [], taskList: t }) {
|
|
|
3274
3367
|
}
|
|
3275
3368
|
//#endregion
|
|
3276
3369
|
//#region src/hooks/useGridResize.ts
|
|
3277
|
-
function
|
|
3370
|
+
function ui(e, t) {
|
|
3278
3371
|
let [n, r] = m(void 0), i = p(null);
|
|
3279
3372
|
return {
|
|
3280
3373
|
gridWidth: n,
|
|
@@ -3298,10 +3391,10 @@ function ii(e, t) {
|
|
|
3298
3391
|
}, [e, t])
|
|
3299
3392
|
};
|
|
3300
3393
|
}
|
|
3301
|
-
var
|
|
3394
|
+
var di = { actionsCell: "_actionsCell_1gvtx_1" };
|
|
3302
3395
|
//#endregion
|
|
3303
3396
|
//#region src/components/taskList/ActionsCell.tsx
|
|
3304
|
-
function
|
|
3397
|
+
function fi(e) {
|
|
3305
3398
|
let t = j(e.startDate, 1);
|
|
3306
3399
|
return {
|
|
3307
3400
|
id: `task-${Date.now()}`,
|
|
@@ -3314,9 +3407,9 @@ function oi(e) {
|
|
|
3314
3407
|
parentId: e.parentId ?? null
|
|
3315
3408
|
};
|
|
3316
3409
|
}
|
|
3317
|
-
function
|
|
3410
|
+
function pi({ task: e, api: t }) {
|
|
3318
3411
|
return /* @__PURE__ */ y("div", {
|
|
3319
|
-
className:
|
|
3412
|
+
className: di.actionsCell,
|
|
3320
3413
|
children: [
|
|
3321
3414
|
/* @__PURE__ */ v("button", {
|
|
3322
3415
|
type: "button",
|
|
@@ -3336,7 +3429,7 @@ function si({ task: e, api: t }) {
|
|
|
3336
3429
|
"aria-label": t.labels.addTaskAfter(e),
|
|
3337
3430
|
onClick: (n) => {
|
|
3338
3431
|
n.stopPropagation();
|
|
3339
|
-
let r =
|
|
3432
|
+
let r = fi(e);
|
|
3340
3433
|
t.createTask(r, e.id), t.editTask(r);
|
|
3341
3434
|
},
|
|
3342
3435
|
children: /* @__PURE__ */ v("span", {
|
|
@@ -3362,12 +3455,12 @@ function si({ task: e, api: t }) {
|
|
|
3362
3455
|
}
|
|
3363
3456
|
//#endregion
|
|
3364
3457
|
//#region src/components/taskList/defaultColumns.tsx
|
|
3365
|
-
var
|
|
3458
|
+
var mi = "__action", hi = [
|
|
3366
3459
|
{
|
|
3367
|
-
key:
|
|
3460
|
+
key: mi,
|
|
3368
3461
|
header: " ",
|
|
3369
3462
|
width: 100,
|
|
3370
|
-
render: (e, t) => /* @__PURE__ */ v(
|
|
3463
|
+
render: (e, t) => /* @__PURE__ */ v(pi, {
|
|
3371
3464
|
task: e,
|
|
3372
3465
|
api: t
|
|
3373
3466
|
})
|
|
@@ -3397,12 +3490,12 @@ var ci = "__action", li = [
|
|
|
3397
3490
|
width: 90,
|
|
3398
3491
|
render: (e) => `${e.progress ?? 0}%`
|
|
3399
3492
|
}
|
|
3400
|
-
],
|
|
3493
|
+
], gi = hi.filter((e) => e.key !== mi);
|
|
3401
3494
|
//#endregion
|
|
3402
3495
|
//#region src/Gantt.tsx
|
|
3403
|
-
function
|
|
3404
|
-
let
|
|
3405
|
-
return /* @__PURE__ */ v(
|
|
3496
|
+
function _i({ tasks: e, dependencies: t, rowHeight: n, colWidth: r, height: i, scales: a, padDays: o, zoomLevels: s, defaultZoomIndex: c, onZoomChange: l, zoomWheel: u, zoomKeyboard: d, onTaskClick: m, columns: h, defaultTaskListWidth: g = 280, onDependencyCreate: _, onDependencyDelete: b, onTaskCreate: x, onTaskDelete: S, onTaskEdit: C, onTasksChange: w, calendar: T, snapToWorking: E, durationUnit: D, readOnly: O = !1, criticalPath: k, apiRef: A, hideTaskList: j, taskList: M, bars: N, dependencySlots: ee, timeline: te, labels: ne }) {
|
|
3497
|
+
let P = p(null), F = p(null), { gridWidth: I, onHandleMouseDown: L } = ui(P, F), R = h ?? (O ? gi : hi), z = !j;
|
|
3498
|
+
return /* @__PURE__ */ v(kn, {
|
|
3406
3499
|
tasks: e,
|
|
3407
3500
|
dependencies: t,
|
|
3408
3501
|
rowHeight: n,
|
|
@@ -3422,32 +3515,33 @@ function di({ tasks: e, dependencies: t, rowHeight: n, colWidth: r, height: i, s
|
|
|
3422
3515
|
onTaskDelete: S,
|
|
3423
3516
|
onTaskEdit: C,
|
|
3424
3517
|
onTasksChange: w,
|
|
3425
|
-
apiRef:
|
|
3426
|
-
labels:
|
|
3518
|
+
apiRef: A,
|
|
3519
|
+
labels: ne,
|
|
3427
3520
|
calendar: T,
|
|
3428
3521
|
snapToWorking: E,
|
|
3429
3522
|
durationUnit: D,
|
|
3430
3523
|
readOnly: O,
|
|
3431
|
-
|
|
3524
|
+
criticalPath: k,
|
|
3525
|
+
children: /* @__PURE__ */ v(jn, {
|
|
3432
3526
|
value: f(() => ({
|
|
3433
|
-
bars:
|
|
3434
|
-
dependencies:
|
|
3435
|
-
timeline:
|
|
3527
|
+
bars: N,
|
|
3528
|
+
dependencies: ee,
|
|
3529
|
+
timeline: te
|
|
3436
3530
|
}), [
|
|
3437
|
-
M,
|
|
3438
3531
|
N,
|
|
3439
|
-
|
|
3532
|
+
ee,
|
|
3533
|
+
te
|
|
3440
3534
|
]),
|
|
3441
|
-
children:
|
|
3442
|
-
ref:
|
|
3535
|
+
children: z ? /* @__PURE__ */ y("div", {
|
|
3536
|
+
ref: P,
|
|
3443
3537
|
role: "group",
|
|
3444
|
-
"aria-label":
|
|
3538
|
+
"aria-label": ne?.gantt ?? Ie.gantt,
|
|
3445
3539
|
style: { position: "relative" },
|
|
3446
|
-
children: [/* @__PURE__ */ v(
|
|
3447
|
-
columns:
|
|
3448
|
-
taskList:
|
|
3540
|
+
children: [/* @__PURE__ */ v(li, {
|
|
3541
|
+
columns: R,
|
|
3542
|
+
taskList: M
|
|
3449
3543
|
}), /* @__PURE__ */ y("div", {
|
|
3450
|
-
ref:
|
|
3544
|
+
ref: F,
|
|
3451
3545
|
style: {
|
|
3452
3546
|
position: "absolute",
|
|
3453
3547
|
top: 0,
|
|
@@ -3456,21 +3550,21 @@ function di({ tasks: e, dependencies: t, rowHeight: n, colWidth: r, height: i, s
|
|
|
3456
3550
|
display: "flex",
|
|
3457
3551
|
flexDirection: "row",
|
|
3458
3552
|
background: "var(--am-gantt-grid-bg, #ffffff)",
|
|
3459
|
-
...
|
|
3553
|
+
...I === void 0 ? { left: g } : { width: I }
|
|
3460
3554
|
},
|
|
3461
|
-
children: [/* @__PURE__ */ v(
|
|
3555
|
+
children: [/* @__PURE__ */ v(ti, { onMouseDown: L }), /* @__PURE__ */ v("div", {
|
|
3462
3556
|
style: {
|
|
3463
3557
|
flex: "1 1 auto",
|
|
3464
3558
|
minWidth: 0
|
|
3465
3559
|
},
|
|
3466
|
-
children: /* @__PURE__ */ v(
|
|
3560
|
+
children: /* @__PURE__ */ v($r, {})
|
|
3467
3561
|
})]
|
|
3468
3562
|
})]
|
|
3469
|
-
}) : /* @__PURE__ */ v(
|
|
3563
|
+
}) : /* @__PURE__ */ v($r, {})
|
|
3470
3564
|
})
|
|
3471
3565
|
});
|
|
3472
3566
|
}
|
|
3473
3567
|
//#endregion
|
|
3474
|
-
export {
|
|
3568
|
+
export { mi as ACTION_COLUMN_KEY, Jn as BarTooltipRoot, tr as BarTooltipTrigger, Ln as Calendar, hi as DEFAULT_COLUMNS, Jt as DEFAULT_ZOOM_INDEX, qt as DEFAULT_ZOOM_LEVELS, _i as Gantt, ir as GanttBarTooltip, $r as GanttGrid, kn as GanttProvider, jn as GanttSlotsProvider, cr as MilestoneBar, pr as ProjectBar, gi as READ_ONLY_COLUMNS, gr as TaskBar, li as TaskList, Me as displayEndDate, Ne as endInstantFromDisplayDate, X as mergeSlotProps, qn as useBarTooltip, cn as useGanttReadOnly, J as useGanttSlots };
|
|
3475
3569
|
|
|
3476
3570
|
//# sourceMappingURL=index.mjs.map
|