@cardenelabs/cdl 0.17.1 → 0.18.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.d.cts CHANGED
@@ -1,2 +1,2 @@
1
1
  import 'react';
2
- export { p as CdlDiagramView, l as CdlDiagramViewProps } from './render-Dc5Pdf7e.cjs';
2
+ export { p as CdlDiagramView, l as CdlDiagramViewProps } from './render-Czv0tUon.cjs';
package/dist/react.d.ts CHANGED
@@ -1,2 +1,2 @@
1
1
  import 'react';
2
- export { p as CdlDiagramView, l as CdlDiagramViewProps } from './render-Dc5Pdf7e.js';
2
+ export { p as CdlDiagramView, l as CdlDiagramViewProps } from './render-Czv0tUon.js';
package/dist/react.js CHANGED
@@ -4035,6 +4035,8 @@ function layout(diag) {
4035
4035
  states: diag.states,
4036
4036
  phases: diag.phases,
4037
4037
  ...diag.derived ? { derived: diag.derived } : {},
4038
+ // 矢印をいつ出すか (#582)。 描き手が読む欄なので、そのまま持ち越す
4039
+ ...diag.edgeReveal ? { edgeReveal: diag.edgeReveal } : {},
4038
4040
  bboxes,
4039
4041
  collisions,
4040
4042
  nearCollisions,
@@ -4192,6 +4194,7 @@ var EDGE_HEADS = [
4192
4194
  ];
4193
4195
  var EDGE_HEAD_FILL_DEFAULT = "solid";
4194
4196
  var EDGE_HEAD_FILLS = ["solid", "hollow"];
4197
+ var EDGE_REVEAL_DEFAULT = "phase";
4195
4198
 
4196
4199
  // src/formula/evaluator.ts
4197
4200
  function evaluate(ast, ctxOrResolver) {
@@ -14195,6 +14198,19 @@ function CdlStage({
14195
14198
  svgRef
14196
14199
  }) {
14197
14200
  const activeSet = new Set(currentPhase?.activate ?? []);
14201
+ const \u51FA\u756A\u306E\u6765\u305F\u77E2\u5370 = useMemo(() => {
14202
+ if ((laid.edgeReveal ?? EDGE_REVEAL_DEFAULT) === "all") return () => true;
14203
+ const \u521D\u51FA = /* @__PURE__ */ new Map();
14204
+ laid.phases.forEach((p, i) => {
14205
+ for (const id of p.activate ?? []) if (!\u521D\u51FA.has(id)) \u521D\u51FA.set(id, i);
14206
+ });
14207
+ const \u4ECA = currentPhase === void 0 ? -1 : laid.phases.findIndex((p) => p.id === currentPhase.id);
14208
+ return (edgeId) => {
14209
+ const first = \u521D\u51FA.get(edgeId);
14210
+ if (first === void 0) return true;
14211
+ return \u4ECA < 0 || \u4ECA >= first;
14212
+ };
14213
+ }, [laid.phases, currentPhase]);
14198
14214
  const drawSet = new Set(currentPhase?.draw ?? []);
14199
14215
  const \u63CF\u304F\u9032\u307F = \u63CF\u304F\u9032\u307F\u306B\u76F4\u3059(progress, currentPhase?.drawRatio);
14200
14216
  const { lifelineStarts, uniformFooterTop } = useMemo(() => {
@@ -14354,7 +14370,7 @@ function CdlStage({
14354
14370
  },
14355
14371
  lane.id
14356
14372
  )),
14357
- laid.edges.map((edge) => /* @__PURE__ */ jsx(CdlEdgeView, { edge, active: activeSet.has(edge.id), progress, stateValues }, edge.id)),
14373
+ laid.edges.filter((edge) => \u51FA\u756A\u306E\u6765\u305F\u77E2\u5370(edge.id)).map((edge) => /* @__PURE__ */ jsx(CdlEdgeView, { edge, active: activeSet.has(edge.id), progress, stateValues }, edge.id)),
14358
14374
  laid.nodes.map((node) => {
14359
14375
  const \u63CF\u304F = drawSet.has(node.id);
14360
14376
  const view = /* @__PURE__ */ jsx(
@@ -14370,8 +14386,8 @@ function CdlStage({
14370
14386
  );
14371
14387
  return /* @__PURE__ */ jsx("g", { children: view }, node.id);
14372
14388
  }),
14373
- laid.edges.filter((edge) => Boolean(edge.dThrough)).map((edge) => /* @__PURE__ */ jsx(CdlEdgeGlowView, { edge, active: activeSet.has(edge.id) }, `glow-${edge.id}`)),
14374
- laid.edges.map((edge) => /* @__PURE__ */ jsx(
14389
+ laid.edges.filter((edge) => Boolean(edge.dThrough) && \u51FA\u756A\u306E\u6765\u305F\u77E2\u5370(edge.id)).map((edge) => /* @__PURE__ */ jsx(CdlEdgeGlowView, { edge, active: activeSet.has(edge.id) }, `glow-${edge.id}`)),
14390
+ laid.edges.filter((edge) => \u51FA\u756A\u306E\u6765\u305F\u77E2\u5370(edge.id)).map((edge) => /* @__PURE__ */ jsx(
14375
14391
  CdlEdgeLabelView,
14376
14392
  {
14377
14393
  edge,