gantt-lib 0.132.2 → 0.132.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.d.mts +5 -0
- package/dist/index.d.ts +5 -0
- package/dist/index.js +13 -3
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +13 -3
- package/dist/index.mjs.map +1 -1
- package/package.json +1 -1
package/dist/index.d.mts
CHANGED
|
@@ -614,6 +614,10 @@ interface TaskChartSharedProps<TTask extends Task = Task> {
|
|
|
614
614
|
showChart?: boolean;
|
|
615
615
|
/** Display-only placeholder rows appended below the currently available task rows. */
|
|
616
616
|
skeletonRowCount?: number;
|
|
617
|
+
/** Shift skeleton chart bars by this many days relative to today (negative values start earlier). */
|
|
618
|
+
skeletonStartOffsetDays?: number;
|
|
619
|
+
/** Add a stable per-row backward jitter to skeleton chart bars, in days. */
|
|
620
|
+
skeletonStartJitterDays?: number;
|
|
617
621
|
/** Optional vertical timeline markers such as deadlines and checkpoints. */
|
|
618
622
|
timelineMarkers?: TimelineMarker[];
|
|
619
623
|
/** Additional custom columns to render in the TaskList after built-in columns */
|
|
@@ -840,6 +844,7 @@ interface GenerationSkeletonRowsProps {
|
|
|
840
844
|
taskListLayout?: GenerationSkeletonTaskListLayout;
|
|
841
845
|
chartDayWidth?: number;
|
|
842
846
|
chartStartDayOffset?: number;
|
|
847
|
+
chartStartJitterDays?: number;
|
|
843
848
|
}
|
|
844
849
|
declare const GenerationSkeletonRows: React$1.FC<GenerationSkeletonRowsProps>;
|
|
845
850
|
|
package/dist/index.d.ts
CHANGED
|
@@ -614,6 +614,10 @@ interface TaskChartSharedProps<TTask extends Task = Task> {
|
|
|
614
614
|
showChart?: boolean;
|
|
615
615
|
/** Display-only placeholder rows appended below the currently available task rows. */
|
|
616
616
|
skeletonRowCount?: number;
|
|
617
|
+
/** Shift skeleton chart bars by this many days relative to today (negative values start earlier). */
|
|
618
|
+
skeletonStartOffsetDays?: number;
|
|
619
|
+
/** Add a stable per-row backward jitter to skeleton chart bars, in days. */
|
|
620
|
+
skeletonStartJitterDays?: number;
|
|
617
621
|
/** Optional vertical timeline markers such as deadlines and checkpoints. */
|
|
618
622
|
timelineMarkers?: TimelineMarker[];
|
|
619
623
|
/** Additional custom columns to render in the TaskList after built-in columns */
|
|
@@ -840,6 +844,7 @@ interface GenerationSkeletonRowsProps {
|
|
|
840
844
|
taskListLayout?: GenerationSkeletonTaskListLayout;
|
|
841
845
|
chartDayWidth?: number;
|
|
842
846
|
chartStartDayOffset?: number;
|
|
847
|
+
chartStartJitterDays?: number;
|
|
843
848
|
}
|
|
844
849
|
declare const GenerationSkeletonRows: React$1.FC<GenerationSkeletonRowsProps>;
|
|
845
850
|
|
package/dist/index.js
CHANGED
|
@@ -8648,6 +8648,11 @@ var import_react13 = require("react");
|
|
|
8648
8648
|
var import_jsx_runtime16 = require("react/jsx-runtime");
|
|
8649
8649
|
var MAX_SKELETON_ROWS = 200;
|
|
8650
8650
|
var SHIMMER_DURATION_MS = 1450;
|
|
8651
|
+
function stableRowJitter(rowIndex, maxDays) {
|
|
8652
|
+
if (maxDays <= 0) return 0;
|
|
8653
|
+
const hash = Math.imul(rowIndex + 1, 2654435761) >>> 0;
|
|
8654
|
+
return hash % (maxDays + 1);
|
|
8655
|
+
}
|
|
8651
8656
|
function clampCount(count) {
|
|
8652
8657
|
if (!Number.isFinite(count)) return 0;
|
|
8653
8658
|
return Math.min(MAX_SKELETON_ROWS, Math.max(0, Math.floor(count)));
|
|
@@ -8659,7 +8664,8 @@ var GenerationSkeletonRows = ({
|
|
|
8659
8664
|
startIndex = 0,
|
|
8660
8665
|
taskListLayout,
|
|
8661
8666
|
chartDayWidth = 40,
|
|
8662
|
-
chartStartDayOffset = 0
|
|
8667
|
+
chartStartDayOffset = 0,
|
|
8668
|
+
chartStartJitterDays = 0
|
|
8663
8669
|
}) => {
|
|
8664
8670
|
const safeCount = clampCount(count);
|
|
8665
8671
|
const previousCountRef = (0, import_react13.useRef)(null);
|
|
@@ -8687,9 +8693,10 @@ var GenerationSkeletonRows = ({
|
|
|
8687
8693
|
const shortShape = rowIndex % 3 === 1;
|
|
8688
8694
|
const mediumShape = rowIndex % 3 === 2;
|
|
8689
8695
|
const chartBarDays = 5 + rowIndex % 6;
|
|
8696
|
+
const chartStartJitter = variant === "chart" ? stableRowJitter(rowIndex, Math.max(0, Math.floor(chartStartJitterDays))) : 0;
|
|
8690
8697
|
const chartBarStyle = variant === "chart" ? {
|
|
8691
8698
|
width: `${chartBarDays * Math.max(1, chartDayWidth)}px`,
|
|
8692
|
-
marginLeft: `${Math.max(0, chartStartDayOffset) * Math.max(1, chartDayWidth)}px`
|
|
8699
|
+
marginLeft: `${Math.max(0, chartStartDayOffset - chartStartJitter) * Math.max(1, chartDayWidth)}px`
|
|
8693
8700
|
} : void 0;
|
|
8694
8701
|
return /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
|
|
8695
8702
|
"div",
|
|
@@ -14037,6 +14044,8 @@ function TaskGanttChartInner(props, ref) {
|
|
|
14037
14044
|
disableTaskDrag = false,
|
|
14038
14045
|
showChart = true,
|
|
14039
14046
|
skeletonRowCount = 0,
|
|
14047
|
+
skeletonStartOffsetDays = 0,
|
|
14048
|
+
skeletonStartJitterDays = 0,
|
|
14040
14049
|
timelineMarkers,
|
|
14041
14050
|
additionalColumns,
|
|
14042
14051
|
hiddenTaskListColumns,
|
|
@@ -15489,7 +15498,8 @@ function TaskGanttChartInner(props, ref) {
|
|
|
15489
15498
|
variant: "chart",
|
|
15490
15499
|
startIndex: visibleTasks.length,
|
|
15491
15500
|
chartDayWidth: dayWidth,
|
|
15492
|
-
chartStartDayOffset: todayInRange ? todayIndex : 0
|
|
15501
|
+
chartStartDayOffset: todayInRange ? Math.max(0, todayIndex + Math.floor(Number.isFinite(skeletonStartOffsetDays) ? skeletonStartOffsetDays : 0)) : 0,
|
|
15502
|
+
chartStartJitterDays: skeletonStartJitterDays
|
|
15493
15503
|
}
|
|
15494
15504
|
)
|
|
15495
15505
|
]
|