@invana/blocks 0.0.34 → 0.0.35
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.cjs +23 -5
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +11 -6
- package/dist/index.d.ts +11 -6
- package/dist/index.js +23 -5
- package/dist/index.js.map +1 -1
- package/package.json +11 -11
package/dist/index.cjs
CHANGED
|
@@ -881,6 +881,21 @@ var toBar = ({ chip, ...bar }) => ({
|
|
|
881
881
|
});
|
|
882
882
|
var STEP_TICK = (n) => `step ${Math.round(n)}`;
|
|
883
883
|
var STEPS = (n) => Math.round(n) === 1 ? "1 step" : `${Math.round(n)} steps`;
|
|
884
|
+
var lastEnd = (spec) => {
|
|
885
|
+
const end = (b) => (b.startMs ?? 0) + (b.durationMs ?? 0);
|
|
886
|
+
const ends = (tasks) => tasks.flatMap((t) => [
|
|
887
|
+
...t.startMs != null ? [end(t)] : [],
|
|
888
|
+
...(t.attempts ?? []).map(end),
|
|
889
|
+
...(t.segments ?? []).map(end),
|
|
890
|
+
...ends(t.subtasks ?? [])
|
|
891
|
+
]);
|
|
892
|
+
return Math.max(spec.nowMs ?? 0, ...ends(spec.tasks), ...(spec.seams ?? []).map(end));
|
|
893
|
+
};
|
|
894
|
+
var stepTicks = (span) => {
|
|
895
|
+
if (span <= 8) return span;
|
|
896
|
+
for (let n = 8; n > 1; n--) if (span % n === 0) return n;
|
|
897
|
+
return 1;
|
|
898
|
+
};
|
|
884
899
|
var toRow = ({ open: _open, subtasks, segments, ...task }) => ({
|
|
885
900
|
...task,
|
|
886
901
|
bars: segments?.map(toBar),
|
|
@@ -907,6 +922,10 @@ function GanttBlock({ spec, onAction }) {
|
|
|
907
922
|
}
|
|
908
923
|
}
|
|
909
924
|
const rows = React18__namespace.useMemo(() => spec.tasks.map(toRow), [spec.tasks]);
|
|
925
|
+
const seq = spec.scale === "seq";
|
|
926
|
+
const steps = seq ? spec.spanMs ?? Math.max(Math.ceil(lastEnd(spec)), 1) : void 0;
|
|
927
|
+
const span = steps ?? spec.spanMs;
|
|
928
|
+
const ticks = spec.ticks ?? (steps != null ? stepTicks(steps) : void 0);
|
|
910
929
|
const pick = (key) => {
|
|
911
930
|
setSelected(key);
|
|
912
931
|
onAction?.("select", key);
|
|
@@ -915,12 +934,12 @@ function GanttBlock({ spec, onAction }) {
|
|
|
915
934
|
ui.Gantt,
|
|
916
935
|
{
|
|
917
936
|
rows,
|
|
918
|
-
spanMs:
|
|
937
|
+
spanMs: span,
|
|
919
938
|
nowMs: spec.nowMs,
|
|
920
939
|
openEnded: spec.openEnded,
|
|
921
|
-
ticks
|
|
922
|
-
formatTick:
|
|
923
|
-
formatDuration:
|
|
940
|
+
ticks,
|
|
941
|
+
formatTick: seq ? STEP_TICK : void 0,
|
|
942
|
+
formatDuration: seq ? STEPS : void 0,
|
|
924
943
|
labelWidth: spec.labelWidth,
|
|
925
944
|
durationWidth: spec.durationWidth,
|
|
926
945
|
palette: spec.palette,
|
|
@@ -1353,7 +1372,6 @@ function ProposalBlock({ spec, onAction }) {
|
|
|
1353
1372
|
ui.ProposalCard,
|
|
1354
1373
|
{
|
|
1355
1374
|
flush: true,
|
|
1356
|
-
seamless: true,
|
|
1357
1375
|
title: spec.heading,
|
|
1358
1376
|
done: spec.done?.label,
|
|
1359
1377
|
consequence: spec.consequence,
|