@cardenelabs/cdl 0.67.0 → 0.69.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/dist/react.cjs CHANGED
@@ -14436,15 +14436,16 @@ function GanttNode({
14436
14436
  const x0 = node.cx - node.w / 2;
14437
14437
  const y0 = node.cy - node.h / 2;
14438
14438
  const tasks = resolveGanttData(node.ganttData ?? [], stateValues);
14439
- const PAD_TOP2 = 32;
14439
+ const PAD_TOP2 = 46;
14440
14440
  const PAD_RIGHT2 = 48;
14441
- const PAD_BOTTOM2 = 44;
14441
+ const PAD_BOTTOM2 = 26;
14442
14442
  const PAD_LEFT2 = 156;
14443
14443
  const canvasW = node.w - PAD_LEFT2 - PAD_RIGHT2;
14444
14444
  const canvasH = node.h - PAD_TOP2 - PAD_BOTTOM2;
14445
14445
  const rowGap = 20;
14446
14446
  const rowCount = tasks.length || 1;
14447
14447
  const rowH = Math.max(28, (canvasH - rowGap * (rowCount + 1)) / rowCount);
14448
+ const \u5E2F\u306E\u9AD8\u3055 = Math.min(rowH, 30);
14448
14449
  const \u4F4D\u7F6E\u306E\u4E0A\u9650 = 1e6;
14449
14450
  const \u53CE\u3081\u305F = tasks.map((t) => {
14450
14451
  const \u59CB = Math.min(\u4F4D\u7F6E\u306E\u4E0A\u9650, Math.max(0, Number.isFinite(t.startIdx) ? t.startIdx : 0));
@@ -14470,6 +14471,7 @@ function GanttNode({
14470
14471
  const \u76EE\u76DB\u308A\u306E\u672C\u6570 = Math.ceil(maxIdx / \u76EE\u76DB\u308A\u306E\u9593\u9694);
14471
14472
  const xAt = (idx) => PAD_LEFT2 + idx * cellW;
14472
14473
  const yAt = (row) => PAD_TOP2 + rowGap + row * (rowH + rowGap);
14474
+ const \u5E2F\u306E\u4E0A = (row) => yAt(row) + (rowH - \u5E2F\u306E\u9AD8\u3055) / 2;
14473
14475
  const \u540D\u524D = { \u6574\u6570\u306E\u958B\u59CB: /* @__PURE__ */ new Map(), \u6574\u6570\u306E\u7D42\u4E86: /* @__PURE__ */ new Map(), \u7AEF\u6570\u306E\u958B\u59CB: /* @__PURE__ */ new Map(), \u7AEF\u6570\u306E\u7D42\u4E86: /* @__PURE__ */ new Map() };
14474
14476
  const \u7F6E\u304F = (\u8868, \u4F4D\u7F6E, label) => {
14475
14477
  if (label !== "" && Number.isFinite(\u4F4D\u7F6E) && !\u8868.has(\u4F4D\u7F6E)) \u8868.set(\u4F4D\u7F6E, label);
@@ -14494,6 +14496,27 @@ function GanttNode({
14494
14496
  const \u884C\u306E\u4F38\u3073 = (row) => \u6BB5\u306E\u4F38\u3073(\u4F38\u3073, row + 1, rowCount);
14495
14497
  const taskById = new Map(\u6574\u3048\u305F.map((t) => [t.id, t]));
14496
14498
  const rowOf = new Map(\u6574\u3048\u305F.map((t, i) => [t.id, i]));
14499
+ const \u7DDA\u306E\u53D6\u308A\u5206 = 0.35;
14500
+ const \u533A\u5207\u308B = (v) => Math.min(1, Math.max(0, v));
14501
+ const \u4E0A\u304B\u3089\u6765\u308B\u7DDA = (row) => {
14502
+ const t = \u6574\u3048\u305F[row];
14503
+ if (t === void 0 || t.dependsOn === void 0) return false;
14504
+ const \u89AA = taskById.get(t.dependsOn);
14505
+ if (\u89AA === void 0) return false;
14506
+ const \u89AA\u306E\u884C = rowOf.get(\u89AA.id);
14507
+ return \u89AA\u306E\u884C !== void 0 && \u89AA\u306E\u884C < row;
14508
+ };
14509
+ const \u5E2F\u306E\u4F38\u3073 = (row) => {
14510
+ const r = \u884C\u306E\u4F38\u3073(row);
14511
+ return \u4E0A\u304B\u3089\u6765\u308B\u7DDA(row) ? \u533A\u5207\u308B((r - \u7DDA\u306E\u53D6\u308A\u5206) / (1 - \u7DDA\u306E\u53D6\u308A\u5206)) : r;
14512
+ };
14513
+ const \u7DDA\u306E\u4F38\u3073 = (\u89AA\u306E\u884C, \u5B50\u306E\u884C) => {
14514
+ if (!drawing) return 1;
14515
+ if (\u89AA\u306E\u884C >= \u5B50\u306E\u884C) {
14516
+ return \u884C\u306E\u4F38\u3073(\u89AA\u306E\u884C) >= 1 && \u884C\u306E\u4F38\u3073(\u5B50\u306E\u884C) >= 1 ? 1 : 0;
14517
+ }
14518
+ return \u533A\u5207\u308B(\u884C\u306E\u4F38\u3073(\u5B50\u306E\u884C) / \u7DDA\u306E\u53D6\u308A\u5206);
14519
+ };
14497
14520
  return /* @__PURE__ */ jsxRuntime.jsxs("g", { transform: `translate(${x0} ${y0})`, children: [
14498
14521
  /* @__PURE__ */ jsxRuntime.jsx(
14499
14522
  "rect",
@@ -14509,6 +14532,43 @@ function GanttNode({
14509
14532
  strokeWidth: active ? 3 : 1.25
14510
14533
  }
14511
14534
  ),
14535
+ \u6574\u3048\u305F.map(
14536
+ (t, row) => row % 2 === 0 ? null : /* @__PURE__ */ jsxRuntime.jsx(
14537
+ "rect",
14538
+ {
14539
+ "data-cdl-role": "gantt-row",
14540
+ x: PAD_LEFT2,
14541
+ y: yAt(row) - rowGap / 2,
14542
+ width: canvasW,
14543
+ height: rowH + rowGap,
14544
+ fill: "var(--cdl-surface-sunken, #f4f2ed)",
14545
+ opacity: 0.55
14546
+ },
14547
+ `band-${t.id}`
14548
+ )
14549
+ ),
14550
+ /* @__PURE__ */ jsxRuntime.jsx(
14551
+ "line",
14552
+ {
14553
+ x1: PAD_LEFT2,
14554
+ y1: PAD_TOP2,
14555
+ x2: PAD_LEFT2 + canvasW,
14556
+ y2: PAD_TOP2,
14557
+ stroke: "var(--cdl-divider, #d4d4d8)",
14558
+ strokeWidth: 1
14559
+ }
14560
+ ),
14561
+ /* @__PURE__ */ jsxRuntime.jsx(
14562
+ "line",
14563
+ {
14564
+ x1: PAD_LEFT2,
14565
+ y1: PAD_TOP2,
14566
+ x2: PAD_LEFT2,
14567
+ y2: PAD_TOP2 + canvasH,
14568
+ stroke: "var(--cdl-divider, #d4d4d8)",
14569
+ strokeWidth: 1
14570
+ }
14571
+ ),
14512
14572
  gridLabels.map(({ \u4F4D\u7F6E: i, label }) => /* @__PURE__ */ jsxRuntime.jsxs("g", { children: [
14513
14573
  /* @__PURE__ */ jsxRuntime.jsx(
14514
14574
  "line",
@@ -14519,9 +14579,8 @@ function GanttNode({
14519
14579
  x2: xAt(i),
14520
14580
  y2: PAD_TOP2 + canvasH,
14521
14581
  stroke: "var(--cdl-divider, #d4d4d8)",
14522
- strokeWidth: 0.75,
14523
- strokeDasharray: "3 3",
14524
- opacity: 0.5
14582
+ strokeWidth: 1,
14583
+ opacity: 0.45
14525
14584
  }
14526
14585
  ),
14527
14586
  label === "" ? null : /* @__PURE__ */ jsxRuntime.jsx(
@@ -14529,7 +14588,7 @@ function GanttNode({
14529
14588
  {
14530
14589
  "data-cdl-role": "gantt-tick",
14531
14590
  x: xAt(i) + cellW / 2,
14532
- y: PAD_TOP2 + canvasH + 18,
14591
+ y: PAD_TOP2 - 16,
14533
14592
  fontSize: 11,
14534
14593
  textAnchor: "middle",
14535
14594
  fill: "var(--cdl-text-dim, #5a6270)",
@@ -14545,14 +14604,14 @@ function GanttNode({
14545
14604
  x2: xAt(maxIdx),
14546
14605
  y2: PAD_TOP2 + canvasH,
14547
14606
  stroke: "var(--cdl-divider, #d4d4d8)",
14548
- strokeWidth: 0.75,
14549
- opacity: 0.5
14607
+ strokeWidth: 1,
14608
+ opacity: 0.45
14550
14609
  }
14551
14610
  ),
14552
14611
  \u6574\u3048\u305F.map((t, row) => /* @__PURE__ */ jsxRuntime.jsx(
14553
14612
  "text",
14554
14613
  {
14555
- x: PAD_LEFT2 - 12,
14614
+ x: PAD_LEFT2 - 16,
14556
14615
  y: yAt(row) + rowH / 2 + 4,
14557
14616
  fontSize: 12,
14558
14617
  textAnchor: "end",
@@ -14564,37 +14623,33 @@ function GanttNode({
14564
14623
  )),
14565
14624
  \u6574\u3048\u305F.map((t, row) => {
14566
14625
  const bx = \u5E2F\u306E\u5DE6(t.startIdx);
14567
- const by = yAt(row);
14626
+ const by = \u5E2F\u306E\u4E0A(row);
14568
14627
  const bw = Math.max(0, \u5E2F\u306E\u53F3(t.endIdx) - bx);
14569
- const \u3053\u306E\u884C = \u884C\u306E\u4F38\u3073(row);
14628
+ const \u3053\u306E\u884C = \u5E2F\u306E\u4F38\u3073(row);
14629
+ const \u4ECA\u306E\u5E45 = drawing ? bw * \u3053\u306E\u884C : bw;
14570
14630
  return /* @__PURE__ */ jsxRuntime.jsxs("g", { children: [
14571
14631
  /* @__PURE__ */ jsxRuntime.jsx(
14572
- "g",
14632
+ "rect",
14573
14633
  {
14574
- ...drawing ? { transform: `translate(${bx} 0) scale(${\u3053\u306E\u884C} 1) translate(${-bx} 0)` } : {},
14575
- children: /* @__PURE__ */ jsxRuntime.jsx(
14576
- "rect",
14577
- {
14578
- "data-cdl-role": "gantt-bar",
14579
- "data-cdl-unresolved": t.unresolved ? "true" : void 0,
14580
- "data-cdl-clipped": "clipped" in t && t.clipped ? "true" : void 0,
14581
- x: bx,
14582
- y: by,
14583
- width: bw,
14584
- height: rowH,
14585
- rx: 4,
14586
- fill: toneColor4(t.tone),
14587
- fillOpacity: 0.9
14588
- }
14589
- )
14634
+ "data-cdl-role": "gantt-bar",
14635
+ "data-cdl-unresolved": t.unresolved ? "true" : void 0,
14636
+ "data-cdl-clipped": "clipped" in t && t.clipped ? "true" : void 0,
14637
+ x: bx,
14638
+ y: by,
14639
+ width: \u4ECA\u306E\u5E45,
14640
+ height: \u5E2F\u306E\u9AD8\u3055,
14641
+ rx: \u5E2F\u306E\u9AD8\u3055 / 2,
14642
+ ry: \u5E2F\u306E\u9AD8\u3055 / 2,
14643
+ fill: toneColor4(t.tone),
14644
+ fillOpacity: 0.9
14590
14645
  }
14591
14646
  ),
14592
- t.owner && rowH >= 22 && \u3053\u306E\u884C >= 1 && /* @__PURE__ */ jsxRuntime.jsx(
14647
+ t.owner && \u5E2F\u306E\u9AD8\u3055 >= 22 && \u3053\u306E\u884C >= 1 && /* @__PURE__ */ jsxRuntime.jsx(
14593
14648
  "text",
14594
14649
  {
14595
14650
  "data-cdl-role": "gantt-owner",
14596
14651
  x: bx + bw / 2,
14597
- y: by + rowH / 2 + 4,
14652
+ y: by + \u5E2F\u306E\u9AD8\u3055 / 2 + 4,
14598
14653
  fontSize: 11,
14599
14654
  textAnchor: "middle",
14600
14655
  fill: "var(--cdl-node-fill, #ffffff)",
@@ -14609,33 +14664,36 @@ function GanttNode({
14609
14664
  const parentRow = rowOf.get(parent.id);
14610
14665
  const childRow = rowOf.get(t.id);
14611
14666
  const parentBarRight = \u5E2F\u306E\u53F3(parent.endIdx);
14612
- const parentMidY = yAt(parentRow) + rowH / 2;
14613
14667
  const childBarLeft = \u5E2F\u306E\u5DE6(t.startIdx);
14614
- const childMidY = yAt(childRow) + rowH / 2;
14615
- const arrowHeadSize = 8;
14616
- const arrowHeadTipGap = 10;
14617
- const tipX = childBarLeft - arrowHeadTipGap - arrowHeadSize;
14618
- const tipY = childMidY;
14619
- const startX = parentBarRight + 4;
14620
- const elbowGap = 6;
14621
- const enterX = tipX - elbowGap;
14622
- const hasRoom = enterX - startX >= elbowGap;
14623
- const path = hasRoom ? `M ${startX} ${parentMidY} L ${enterX} ${parentMidY} L ${enterX} ${tipY} L ${tipX} ${tipY}` : `M ${startX} ${parentMidY} L ${startX + elbowGap} ${parentMidY} L ${startX + elbowGap} ${(parentMidY + tipY) / 2} L ${enterX} ${(parentMidY + tipY) / 2} L ${enterX} ${tipY} L ${tipX} ${tipY}`;
14624
- const arrowHeadPath = `M ${tipX + arrowHeadSize} ${tipY} L ${tipX} ${tipY - arrowHeadSize / 2} L ${tipX} ${tipY + arrowHeadSize / 2} Z`;
14625
- const \u4E21\u7AEF\u304C\u51FA\u305F = \u884C\u306E\u4F38\u3073(parentRow) >= 1 && \u884C\u306E\u4F38\u3073(childRow) >= 1;
14626
- return drawing && !\u4E21\u7AEF\u304C\u51FA\u305F ? null : /* @__PURE__ */ jsxRuntime.jsxs("g", { "data-cdl-role": "gantt-arrow", children: [
14668
+ const \u77E2\u3058\u308A\u306E\u5E45 = 11;
14669
+ const \u77E2\u3058\u308A\u306E\u9AD8\u3055 = 7;
14670
+ const \u4E38\u307F = \u5E2F\u306E\u9AD8\u3055 / 2;
14671
+ const \u89AA\u306E\u5DE6 = \u5E2F\u306E\u5DE6(parent.startIdx);
14672
+ const \u5B50\u306E\u53F3 = \u5E2F\u306E\u53F3(t.endIdx);
14673
+ const \u5BC4\u305B = (\u5DE6, \u53F3) => Math.min(\u4E38\u307F, (\u53F3 - \u5DE6) / 2);
14674
+ const \u51FA\u767AX = parentBarRight - \u5BC4\u305B(\u89AA\u306E\u5DE6, parentBarRight);
14675
+ const \u51FA\u767AY = \u5E2F\u306E\u4E0A(parentRow) + \u5E2F\u306E\u9AD8\u3055;
14676
+ const \u7740\u5730X = childBarLeft + \u5BC4\u305B(childBarLeft, \u5B50\u306E\u53F3);
14677
+ const \u7740\u5730Y = \u5E2F\u306E\u4E0A(childRow);
14678
+ const \u7E26\u306E\u7D42\u308F\u308AY = \u7740\u5730Y - \u77E2\u3058\u308A\u306E\u9AD8\u3055;
14679
+ const \u624B = Math.max(6, (\u7E26\u306E\u7D42\u308F\u308AY - \u51FA\u767AY) * 0.55);
14680
+ const path = `M ${\u51FA\u767AX} ${\u51FA\u767AY} C ${\u51FA\u767AX} ${\u51FA\u767AY + \u624B}, ${\u7740\u5730X} ${\u7E26\u306E\u7D42\u308F\u308AY - \u624B}, ${\u7740\u5730X} ${\u7E26\u306E\u7D42\u308F\u308AY}`;
14681
+ const arrowHeadPath = `M ${\u7740\u5730X} ${\u7740\u5730Y} L ${\u7740\u5730X - \u77E2\u3058\u308A\u306E\u5E45 / 2} ${\u7E26\u306E\u7D42\u308F\u308AY} L ${\u7740\u5730X + \u77E2\u3058\u308A\u306E\u5E45 / 2} ${\u7E26\u306E\u7D42\u308F\u308AY} Z`;
14682
+ const \u5F15\u3051\u305F = \u7DDA\u306E\u4F38\u3073(parentRow, childRow);
14683
+ return \u5F15\u3051\u305F <= 0 ? null : /* @__PURE__ */ jsxRuntime.jsxs("g", { "data-cdl-role": "gantt-arrow", children: [
14627
14684
  /* @__PURE__ */ jsxRuntime.jsx(
14628
14685
  "path",
14629
14686
  {
14630
14687
  d: path,
14631
14688
  fill: "none",
14632
14689
  stroke: "var(--cdl-text-mute, #8a8678)",
14633
- strokeWidth: 1.75,
14690
+ strokeWidth: 2.4,
14634
14691
  strokeLinejoin: "round",
14635
- strokeLinecap: "round"
14692
+ strokeLinecap: "round",
14693
+ ...\u4F38\u3070\u3059dash(drawing, \u5F15\u3051\u305F)
14636
14694
  }
14637
14695
  ),
14638
- /* @__PURE__ */ jsxRuntime.jsx(
14696
+ \u5F15\u3051\u305F < 1 ? null : /* @__PURE__ */ jsxRuntime.jsx(
14639
14697
  "path",
14640
14698
  {
14641
14699
  d: arrowHeadPath,