@almadar/ui 2.32.0 → 2.34.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/avl/index.cjs +1049 -1086
- package/dist/avl/index.d.cts +352 -78
- package/dist/avl/index.d.ts +18 -3
- package/dist/avl/index.js +1029 -1086
- package/dist/components/atoms/index.d.ts +0 -1
- package/dist/components/index.cjs +1156 -1857
- package/dist/components/index.js +276 -962
- package/dist/components/molecules/avl/AvlBackwardEdge.d.ts +8 -0
- package/dist/components/molecules/avl/AvlBindingEdge.d.ts +9 -0
- package/dist/components/molecules/avl/AvlEventWireEdge.d.ts +14 -0
- package/dist/components/molecules/avl/AvlOrbitalNode.d.ts +12 -0
- package/dist/components/molecules/avl/AvlPageEdge.d.ts +8 -0
- package/dist/components/molecules/avl/AvlTransitionEdge.d.ts +16 -0
- package/dist/components/molecules/avl/BehaviorView.d.ts +12 -0
- package/dist/components/molecules/avl/DetailView.d.ts +13 -0
- package/dist/components/molecules/avl/MiniStateMachine.d.ts +14 -0
- package/dist/components/molecules/avl/ModuleCard.d.ts +14 -0
- package/dist/components/molecules/avl/SystemNode.d.ts +12 -0
- package/dist/components/molecules/avl/avl-canvas-types.d.ts +36 -0
- package/dist/components/molecules/avl/avl-elk-layout.d.ts +55 -0
- package/dist/components/molecules/avl/avl-flow-converter.d.ts +17 -0
- package/dist/components/molecules/avl/avl-story-schemas.d.ts +34 -0
- package/dist/components/molecules/avl/avl-zoom-band.d.ts +19 -0
- package/dist/components/molecules/avl/index.d.ts +15 -0
- package/dist/components/molecules/index.d.ts +0 -1
- package/dist/components/organisms/avl/AvlCosmicZoom.d.ts +10 -7
- package/dist/components/organisms/avl/FlowCanvas.d.ts +32 -0
- package/dist/components/organisms/avl/ZoomBreadcrumb.d.ts +16 -0
- package/dist/components/organisms/avl/ZoomLegend.d.ts +10 -0
- package/dist/components/organisms/avl/index.d.ts +5 -2
- package/dist/providers/index.cjs +148 -149
- package/dist/providers/index.js +39 -40
- package/dist/runtime/index.cjs +1055 -1030
- package/dist/runtime/index.js +270 -245
- package/dist/scripts/audit-tailwind-safelist.d.ts +27 -0
- package/package.json +2 -6
- package/tailwind-preset.cjs +170 -1
- package/dist/components/atoms/flow/FlowLabel.d.ts +0 -23
- package/dist/components/atoms/flow/FlowMinimap.d.ts +0 -28
- package/dist/components/atoms/flow/FlowNodeShell.d.ts +0 -25
- package/dist/components/atoms/flow/FlowPort.d.ts +0 -26
- package/dist/components/atoms/flow/FlowWire.d.ts +0 -39
- package/dist/components/atoms/flow/index.d.ts +0 -13
- package/dist/components/molecules/flow/BehaviorNode.d.ts +0 -28
- package/dist/components/molecules/flow/EffectNode.d.ts +0 -26
- package/dist/components/molecules/flow/EventWireEdge.d.ts +0 -23
- package/dist/components/molecules/flow/ExprNode.d.ts +0 -27
- package/dist/components/molecules/flow/FlowStateNode.d.ts +0 -18
- package/dist/components/molecules/flow/NodePalette.d.ts +0 -36
- package/dist/components/molecules/flow/OrbitalNode.d.ts +0 -31
- package/dist/components/molecules/flow/TransitionEdge.d.ts +0 -26
- package/dist/components/molecules/flow/index.d.ts +0 -8
- package/dist/components/molecules/svg/AIGenerates.d.ts +0 -7
- package/dist/components/molecules/svg/ClosedCircuit.d.ts +0 -7
- package/dist/components/molecules/svg/CommunityOwnership.d.ts +0 -7
- package/dist/components/molecules/svg/CompileAnywhere.d.ts +0 -7
- package/dist/components/molecules/svg/ComposableModels.d.ts +0 -7
- package/dist/components/molecules/svg/DescribeProveDeploy.d.ts +0 -7
- package/dist/components/molecules/svg/DomainGrid.d.ts +0 -7
- package/dist/components/molecules/svg/EventBus.d.ts +0 -7
- package/dist/components/molecules/svg/OrbitalUnit.d.ts +0 -7
- package/dist/components/molecules/svg/PlanVerifyRemember.d.ts +0 -7
- package/dist/components/molecules/svg/ProveCorrect.d.ts +0 -7
- package/dist/components/molecules/svg/ServiceLayers.d.ts +0 -7
- package/dist/components/molecules/svg/SharedReality.d.ts +0 -7
- package/dist/components/molecules/svg/StandardLibrary.d.ts +0 -7
- package/dist/components/molecules/svg/StateMachine.d.ts +0 -7
- package/dist/components/molecules/svg/WorldModel.d.ts +0 -7
- package/dist/components/molecules/svg/index.d.ts +0 -16
- package/dist/components/organisms/avl/AvlApplicationScene.d.ts +0 -17
- package/dist/components/organisms/avl/AvlOrbitalScene.d.ts +0 -21
- package/dist/flow/index.cjs +0 -3832
- package/dist/flow/index.d.cts +0 -367
- package/dist/flow/index.d.ts +0 -10
- package/dist/flow/index.js +0 -3793
- package/dist/illustrations/index.cjs +0 -7651
- package/dist/illustrations/index.d.cts +0 -544
- package/dist/illustrations/index.d.ts +0 -59
- package/dist/illustrations/index.js +0 -7594
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* AvlBackwardEdge — Dashed backward/retry transition edge.
|
|
3
|
+
*
|
|
4
|
+
* Uses CONNECTION_COLORS.backward styling: dashed, lighter color.
|
|
5
|
+
*/
|
|
6
|
+
import React from 'react';
|
|
7
|
+
import { type EdgeProps } from '@xyflow/react';
|
|
8
|
+
export declare const AvlBackwardEdge: React.FC<EdgeProps>;
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* AvlBindingEdge — Dotted violet binding edge with @ marker.
|
|
3
|
+
*
|
|
4
|
+
* Used for data binding connections. Dotted line at 1px with
|
|
5
|
+
* a small @ label at the midpoint.
|
|
6
|
+
*/
|
|
7
|
+
import React from 'react';
|
|
8
|
+
import { type EdgeProps } from '@xyflow/react';
|
|
9
|
+
export declare const AvlBindingEdge: React.FC<EdgeProps>;
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* AvlEventWireEdge — React Flow edge for emit/listen event wiring.
|
|
3
|
+
*
|
|
4
|
+
* Dashed orange Bezier path with event name label at midpoint.
|
|
5
|
+
* Uses AVL CONNECTION_COLORS.emitListen styling.
|
|
6
|
+
*/
|
|
7
|
+
import React from 'react';
|
|
8
|
+
import { type Edge, type EdgeProps } from '@xyflow/react';
|
|
9
|
+
export interface AvlEventWireEdgeData extends Record<string, unknown> {
|
|
10
|
+
event: string;
|
|
11
|
+
compatible?: boolean;
|
|
12
|
+
}
|
|
13
|
+
export type AvlEventWireFlowEdge = Edge<AvlEventWireEdgeData, 'eventWire'>;
|
|
14
|
+
export declare const AvlEventWireEdge: React.FC<EdgeProps<AvlEventWireFlowEdge>>;
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* AvlOrbitalNode — Single React Flow node type for the unified AVL canvas.
|
|
3
|
+
*
|
|
4
|
+
* Reads the current ZoomBand from context and renders the appropriate
|
|
5
|
+
* sub-component: SystemNode, ModuleCard, BehaviorView, or DetailView.
|
|
6
|
+
*
|
|
7
|
+
* Using a single node type (instead of switching types per zoom band)
|
|
8
|
+
* prevents React from unmounting/remounting nodes on zoom changes.
|
|
9
|
+
*/
|
|
10
|
+
import React from 'react';
|
|
11
|
+
import type { NodeProps } from '@xyflow/react';
|
|
12
|
+
export declare const AvlOrbitalNode: React.FC<NodeProps>;
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* AvlTransitionEdge — React Flow edge for state machine transitions.
|
|
3
|
+
*
|
|
4
|
+
* Bezier path with event label at midpoint. Guard diamond and effect
|
|
5
|
+
* dot indicators shown inline. Forward transitions are solid dark,
|
|
6
|
+
* backward transitions are dashed lighter.
|
|
7
|
+
*/
|
|
8
|
+
import React from 'react';
|
|
9
|
+
import { type Edge, type EdgeProps } from '@xyflow/react';
|
|
10
|
+
export interface AvlTransitionEdgeData extends Record<string, unknown> {
|
|
11
|
+
event: string;
|
|
12
|
+
hasGuard?: boolean;
|
|
13
|
+
hasEffects?: boolean;
|
|
14
|
+
}
|
|
15
|
+
export type AvlTransitionFlowEdge = Edge<AvlTransitionEdgeData, 'transition'>;
|
|
16
|
+
export declare const AvlTransitionEdge: React.FC<EdgeProps<AvlTransitionFlowEdge>>;
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* BehaviorView — Full state machine for the behavior zoom band (1.0x-2.5x).
|
|
3
|
+
*
|
|
4
|
+
* Uses ELK layout from avl-elk-layout.ts. Renders AvlState, AvlTransitionLane,
|
|
5
|
+
* and AvlSwimLane inside an inline SVG within a React Flow node.
|
|
6
|
+
*/
|
|
7
|
+
import React from 'react';
|
|
8
|
+
import type { AvlNodeData } from './avl-canvas-types';
|
|
9
|
+
export interface BehaviorViewProps {
|
|
10
|
+
data: AvlNodeData;
|
|
11
|
+
}
|
|
12
|
+
export declare const BehaviorView: React.FC<BehaviorViewProps>;
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* DetailView — Transition specification card for the detail zoom band (2.5x-5.0x).
|
|
3
|
+
*
|
|
4
|
+
* Renders a spec card with: from/to AvlState nodes, AvlEvent trigger,
|
|
5
|
+
* AvlGuard diamond, numbered AvlEffect icons with binding paths,
|
|
6
|
+
* and AvlFieldType shapes.
|
|
7
|
+
*/
|
|
8
|
+
import React from 'react';
|
|
9
|
+
import type { AvlNodeData } from './avl-canvas-types';
|
|
10
|
+
export interface DetailViewProps {
|
|
11
|
+
data: AvlNodeData;
|
|
12
|
+
}
|
|
13
|
+
export declare const DetailView: React.FC<DetailViewProps>;
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* MiniStateMachine — Inline simplified state machine for the ModuleCard.
|
|
3
|
+
*
|
|
4
|
+
* Renders a compact left-to-right flow of AvlState nodes connected
|
|
5
|
+
* by AvlTransition arrows, with AvlEffect icons below.
|
|
6
|
+
* No ELK layout needed — uses simple horizontal positioning.
|
|
7
|
+
*/
|
|
8
|
+
import React from 'react';
|
|
9
|
+
import type { TraitLevelData } from '../../organisms/avl/avl-schema-parser';
|
|
10
|
+
export interface MiniStateMachineProps {
|
|
11
|
+
data: TraitLevelData;
|
|
12
|
+
className?: string;
|
|
13
|
+
}
|
|
14
|
+
export declare const MiniStateMachine: React.FC<MiniStateMachineProps>;
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* ModuleCard — Structured card for the module zoom band (0.4x-1.0x).
|
|
3
|
+
*
|
|
4
|
+
* Renders AVL primitives inside a card container:
|
|
5
|
+
* - Entity section: AvlEntity glyph + AvlPersistence + AvlFieldType grid
|
|
6
|
+
* - Trait sections: MiniStateMachine per trait + AvlEffect icons + emit/listen indicators
|
|
7
|
+
* - Pages section: AvlPage squares with route labels
|
|
8
|
+
*/
|
|
9
|
+
import React from 'react';
|
|
10
|
+
import type { AvlNodeData } from './avl-canvas-types';
|
|
11
|
+
export interface ModuleCardProps {
|
|
12
|
+
data: AvlNodeData;
|
|
13
|
+
}
|
|
14
|
+
export declare const ModuleCard: React.FC<ModuleCardProps>;
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* SystemNode — Compact orbital node for the system zoom band (0.1x-0.4x).
|
|
3
|
+
*
|
|
4
|
+
* Renders miniature AVL primitives: entity glyph, field-type dots,
|
|
5
|
+
* state chain (role-colored dots), and page squares.
|
|
6
|
+
*/
|
|
7
|
+
import React from 'react';
|
|
8
|
+
import type { AvlNodeData } from './avl-canvas-types';
|
|
9
|
+
export interface SystemNodeProps {
|
|
10
|
+
data: AvlNodeData;
|
|
11
|
+
}
|
|
12
|
+
export declare const SystemNode: React.FC<SystemNodeProps>;
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* AVL Canvas Types
|
|
3
|
+
*
|
|
4
|
+
* Types for the unified AVL + Flow canvas. These define the data shapes
|
|
5
|
+
* for React Flow nodes and edges that render AVL primitives.
|
|
6
|
+
*/
|
|
7
|
+
import type { FieldInfo, OrbitalTraitInfo, OrbitalPageInfo, ExternalLink, TraitLevelData } from '../../organisms/avl/avl-schema-parser';
|
|
8
|
+
/** The four zoom bands of the unified AVL canvas. */
|
|
9
|
+
export type ZoomBand = 'system' | 'module' | 'behavior' | 'detail';
|
|
10
|
+
/** Thresholds for zoom band transitions (React Flow viewport zoom). */
|
|
11
|
+
export declare const ZOOM_BAND_THRESHOLDS: {
|
|
12
|
+
readonly system: readonly [0.1, 0.4];
|
|
13
|
+
readonly module: readonly [0.4, 1];
|
|
14
|
+
readonly behavior: readonly [1, 2.5];
|
|
15
|
+
readonly detail: readonly [2.5, 5];
|
|
16
|
+
};
|
|
17
|
+
/** Data carried by every orbital node in the unified canvas. */
|
|
18
|
+
export interface AvlNodeData extends Record<string, unknown> {
|
|
19
|
+
orbitalName: string;
|
|
20
|
+
entityName: string;
|
|
21
|
+
persistence: string;
|
|
22
|
+
fields: FieldInfo[];
|
|
23
|
+
traits: OrbitalTraitInfo[];
|
|
24
|
+
pages: OrbitalPageInfo[];
|
|
25
|
+
traitDetails: Record<string, TraitLevelData>;
|
|
26
|
+
externalLinks: ExternalLink[];
|
|
27
|
+
}
|
|
28
|
+
/** Edge kind determines visual style. */
|
|
29
|
+
export type AvlEdgeKind = 'eventWire' | 'page';
|
|
30
|
+
/** Data carried by edges in the unified canvas. */
|
|
31
|
+
export interface AvlEdgeData extends Record<string, unknown> {
|
|
32
|
+
edgeKind: AvlEdgeKind;
|
|
33
|
+
event?: string;
|
|
34
|
+
fromTrait?: string;
|
|
35
|
+
toTrait?: string;
|
|
36
|
+
}
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* AVL ELK Layout
|
|
3
|
+
*
|
|
4
|
+
* Shared ELK-based layout engine for state machines. Extracted from
|
|
5
|
+
* AvlTraitScene so both the V2 scene renderer and the V3 BehaviorView
|
|
6
|
+
* can share the same layout computation.
|
|
7
|
+
*/
|
|
8
|
+
import { type StateRole } from '../../atoms/avl/types';
|
|
9
|
+
import type { TraitLevelData } from '../../organisms/avl/avl-schema-parser';
|
|
10
|
+
export interface LayoutNode {
|
|
11
|
+
id: string;
|
|
12
|
+
x: number;
|
|
13
|
+
y: number;
|
|
14
|
+
width: number;
|
|
15
|
+
height: number;
|
|
16
|
+
isInitial?: boolean;
|
|
17
|
+
isTerminal?: boolean;
|
|
18
|
+
role: StateRole;
|
|
19
|
+
transitionCount: number;
|
|
20
|
+
}
|
|
21
|
+
export interface LayoutEdge {
|
|
22
|
+
id: string;
|
|
23
|
+
from: string;
|
|
24
|
+
to: string;
|
|
25
|
+
event: string;
|
|
26
|
+
effects: Array<{
|
|
27
|
+
type: string;
|
|
28
|
+
}>;
|
|
29
|
+
guard: boolean;
|
|
30
|
+
guardExpr?: string;
|
|
31
|
+
index: number;
|
|
32
|
+
labelX: number;
|
|
33
|
+
labelY: number;
|
|
34
|
+
labelW: number;
|
|
35
|
+
labelH: number;
|
|
36
|
+
points: Array<{
|
|
37
|
+
x: number;
|
|
38
|
+
y: number;
|
|
39
|
+
}>;
|
|
40
|
+
isSelf: boolean;
|
|
41
|
+
isBackward: boolean;
|
|
42
|
+
}
|
|
43
|
+
export interface ElkLayout {
|
|
44
|
+
nodes: LayoutNode[];
|
|
45
|
+
edges: LayoutEdge[];
|
|
46
|
+
width: number;
|
|
47
|
+
height: number;
|
|
48
|
+
}
|
|
49
|
+
export declare function stateWidth(transitionCount: number): number;
|
|
50
|
+
export declare const STATE_H = 40;
|
|
51
|
+
export declare function computeTraitLayout(data: TraitLevelData): Promise<ElkLayout>;
|
|
52
|
+
export declare function edgePath(points: Array<{
|
|
53
|
+
x: number;
|
|
54
|
+
y: number;
|
|
55
|
+
}>): string;
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* AVL Flow Converter
|
|
3
|
+
*
|
|
4
|
+
* Converts an OrbitalSchema into React Flow nodes and edges
|
|
5
|
+
* for the unified AVL canvas. Reuses the existing AVL schema parser.
|
|
6
|
+
*/
|
|
7
|
+
import type { Node, Edge } from '@xyflow/react';
|
|
8
|
+
import type { OrbitalSchema } from '@almadar/core';
|
|
9
|
+
import type { AvlNodeData, AvlEdgeData } from './avl-canvas-types';
|
|
10
|
+
/**
|
|
11
|
+
* Transform an OrbitalSchema into React Flow nodes and edges.
|
|
12
|
+
* Pre-parses all orbital and trait details for responsive zoom.
|
|
13
|
+
*/
|
|
14
|
+
export declare function schemaToFlowGraph(schema: OrbitalSchema): {
|
|
15
|
+
nodes: Node<AvlNodeData>[];
|
|
16
|
+
edges: Edge<AvlEdgeData>[];
|
|
17
|
+
};
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Shared test schemas for AVL V3 Storybook stories.
|
|
3
|
+
*
|
|
4
|
+
* Uses real behavior functions from @almadar/std to generate
|
|
5
|
+
* OrbitalSchemas with actual state machines, fields, and pages.
|
|
6
|
+
*/
|
|
7
|
+
import type { OrbitalSchema } from '@almadar/core';
|
|
8
|
+
/**
|
|
9
|
+
* Clinic schema: 2 orbitals with real state machines.
|
|
10
|
+
* - PatientOrbital (std-wizard): multi-step form with 5 fields
|
|
11
|
+
* - QueueEntryOrbital (std-browse): data grid with 4 fields
|
|
12
|
+
*/
|
|
13
|
+
export declare const CLINIC_SCHEMA: OrbitalSchema;
|
|
14
|
+
/**
|
|
15
|
+
* Task manager schema: 3 orbitals for a richer multi-module story.
|
|
16
|
+
* - TaskOrbital (std-browse): task list
|
|
17
|
+
* - TimerOrbital (std-timer): countdown timer
|
|
18
|
+
* - ArchiveOrbital (std-confirmation): archive confirmation
|
|
19
|
+
*/
|
|
20
|
+
export declare const TASK_SCHEMA: OrbitalSchema;
|
|
21
|
+
/** Pre-computed React Flow graph for the clinic schema. */
|
|
22
|
+
export declare const CLINIC_GRAPH: {
|
|
23
|
+
nodes: import("@xyflow/react").Node<import("./avl-canvas-types").AvlNodeData>[];
|
|
24
|
+
edges: import("@xyflow/react").Edge<import("./avl-canvas-types").AvlEdgeData>[];
|
|
25
|
+
};
|
|
26
|
+
/** Pre-computed React Flow graph for the task schema. */
|
|
27
|
+
export declare const TASK_GRAPH: {
|
|
28
|
+
nodes: import("@xyflow/react").Node<import("./avl-canvas-types").AvlNodeData>[];
|
|
29
|
+
edges: import("@xyflow/react").Edge<import("./avl-canvas-types").AvlEdgeData>[];
|
|
30
|
+
};
|
|
31
|
+
/** First orbital's detail for ModuleCard/SystemNode stories. */
|
|
32
|
+
export declare const CLINIC_FIRST_ORBITAL: import("../../organisms/avl").OrbitalLevelData | null;
|
|
33
|
+
/** First trait detail for BehaviorView/DetailView stories. */
|
|
34
|
+
export declare function getClinicFirstTrait(): import("../../organisms/avl").TraitLevelData | null;
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* AVL Zoom Band
|
|
3
|
+
*
|
|
4
|
+
* Continuous semantic zoom for the unified AVL canvas.
|
|
5
|
+
* React Flow nodes read the current zoom band from context
|
|
6
|
+
* and switch their rendering accordingly.
|
|
7
|
+
*/
|
|
8
|
+
import { type ZoomBand } from './avl-canvas-types';
|
|
9
|
+
/** Determine which zoom band the current viewport zoom falls into. */
|
|
10
|
+
export declare function computeZoomBand(zoom: number): ZoomBand;
|
|
11
|
+
/**
|
|
12
|
+
* Compute progress (0..1) within a zoom band.
|
|
13
|
+
* Useful for crossfade transitions between bands.
|
|
14
|
+
*/
|
|
15
|
+
export declare function zoomProgress(zoom: number, band: ZoomBand): number;
|
|
16
|
+
/** Context providing the current zoom band to all node components. */
|
|
17
|
+
export declare const ZoomBandContext: import("react").Context<ZoomBand>;
|
|
18
|
+
/** Hook to read the current zoom band. */
|
|
19
|
+
export declare function useZoomBand(): ZoomBand;
|
|
@@ -8,6 +8,21 @@ export { AvlTransitionLane, type AvlTransitionLaneProps, type AvlTransitionLaneE
|
|
|
8
8
|
export { AvlSwimLane, type AvlSwimLaneProps } from './AvlSwimLane';
|
|
9
9
|
export { AvlBehaviorGlyph, type AvlBehaviorGlyphProps, type BehaviorLevel, type GlyphSize, type BehaviorGlyphChild, type BehaviorGlyphConnection, DOMAIN_COLORS } from './AvlBehaviorGlyph';
|
|
10
10
|
export { ringPositions, arcPath, radialPositions, gridPositions, curveControlPoint } from './avl-layout';
|
|
11
|
+
export { type ZoomBand, type AvlNodeData, type AvlEdgeData, type AvlEdgeKind, ZOOM_BAND_THRESHOLDS } from './avl-canvas-types';
|
|
12
|
+
export { computeZoomBand, zoomProgress, useZoomBand, ZoomBandContext } from './avl-zoom-band';
|
|
13
|
+
export { schemaToFlowGraph } from './avl-flow-converter';
|
|
14
|
+
export { computeTraitLayout, edgePath, stateWidth, STATE_H, type LayoutNode, type LayoutEdge, type ElkLayout } from './avl-elk-layout';
|
|
15
|
+
export { SystemNode, type SystemNodeProps } from './SystemNode';
|
|
16
|
+
export { MiniStateMachine, type MiniStateMachineProps } from './MiniStateMachine';
|
|
17
|
+
export { ModuleCard, type ModuleCardProps } from './ModuleCard';
|
|
18
|
+
export { BehaviorView, type BehaviorViewProps } from './BehaviorView';
|
|
19
|
+
export { DetailView, type DetailViewProps } from './DetailView';
|
|
20
|
+
export { AvlOrbitalNode } from './AvlOrbitalNode';
|
|
21
|
+
export { AvlTransitionEdge, type AvlTransitionEdgeData, type AvlTransitionFlowEdge } from './AvlTransitionEdge';
|
|
22
|
+
export { AvlEventWireEdge, type AvlEventWireEdgeData, type AvlEventWireFlowEdge } from './AvlEventWireEdge';
|
|
23
|
+
export { AvlBackwardEdge } from './AvlBackwardEdge';
|
|
24
|
+
export { AvlPageEdge } from './AvlPageEdge';
|
|
25
|
+
export { AvlBindingEdge } from './AvlBindingEdge';
|
|
11
26
|
export { Avl3DOrbitalNode, type Avl3DOrbitalNodeProps } from './Avl3DOrbitalNode';
|
|
12
27
|
export { Avl3DCrossWire, type Avl3DCrossWireProps } from './Avl3DCrossWire';
|
|
13
28
|
export { Avl3DEntityCore, type Avl3DEntityCoreProps } from './Avl3DEntityCore';
|
|
@@ -78,4 +78,3 @@ export { TeamCard, type TeamCardProps } from './TeamCard';
|
|
|
78
78
|
export { ShowcaseCard, type ShowcaseCardProps } from './ShowcaseCard';
|
|
79
79
|
export { GeometricPattern, type GeometricPatternProps } from './GeometricPattern';
|
|
80
80
|
export { EdgeDecoration, type EdgeDecorationProps, type EdgeVariant, type EdgeSide } from './EdgeDecoration';
|
|
81
|
-
export * from './flow';
|
|
@@ -1,15 +1,13 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* AvlCosmicZoom
|
|
2
|
+
* AvlCosmicZoom — Interactive Zoomable Orbital Visualization
|
|
3
3
|
*
|
|
4
|
-
*
|
|
5
|
-
*
|
|
6
|
-
*
|
|
7
|
-
*
|
|
8
|
-
* @packageDocumentation
|
|
4
|
+
* V3: Delegates to FlowCanvas, which renders AVL primitives inside
|
|
5
|
+
* React Flow nodes with continuous semantic zoom. The Props interface
|
|
6
|
+
* is preserved for backward compatibility with callers.
|
|
9
7
|
*/
|
|
10
8
|
import React from 'react';
|
|
11
9
|
import type { OrbitalSchema } from '@almadar/core';
|
|
12
|
-
import {
|
|
10
|
+
import type { ZoomLevel } from './avl-zoom-state';
|
|
13
11
|
export interface AvlCosmicZoomProps {
|
|
14
12
|
/** The orbital schema (parsed object or JSON string) */
|
|
15
13
|
schema: OrbitalSchema | string;
|
|
@@ -34,5 +32,10 @@ export interface AvlCosmicZoomProps {
|
|
|
34
32
|
height?: number | string;
|
|
35
33
|
/** Coverage data for verification overlay */
|
|
36
34
|
stateCoverage?: Record<string, 'covered' | 'uncovered' | 'partial'>;
|
|
35
|
+
/** Dynamic focus target. Changes animate the zoom to the specified orbital/trait. */
|
|
36
|
+
focusTarget?: {
|
|
37
|
+
type: 'orbital' | 'trait';
|
|
38
|
+
name: string;
|
|
39
|
+
};
|
|
37
40
|
}
|
|
38
41
|
export declare const AvlCosmicZoom: React.FC<AvlCosmicZoomProps>;
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* FlowCanvas — Unified AVL + Flow canvas organism.
|
|
3
|
+
*
|
|
4
|
+
* One React Flow canvas with continuous semantic zoom. AVL primitives
|
|
5
|
+
* render inside React Flow nodes. The ZoomBandContext drives node
|
|
6
|
+
* rendering at different zoom levels.
|
|
7
|
+
*
|
|
8
|
+
* Replaces both AvlCosmicZoom (SVG viewer) and OrbitalFlow (Flow editor).
|
|
9
|
+
*/
|
|
10
|
+
import React from 'react';
|
|
11
|
+
import type { OrbitalSchema } from '@almadar/core';
|
|
12
|
+
import type { ZoomLevel } from './avl-zoom-state';
|
|
13
|
+
export interface FlowCanvasProps {
|
|
14
|
+
schema: OrbitalSchema | string;
|
|
15
|
+
className?: string;
|
|
16
|
+
color?: string;
|
|
17
|
+
animated?: boolean;
|
|
18
|
+
width?: number | string;
|
|
19
|
+
height?: number | string;
|
|
20
|
+
onZoomChange?: (level: ZoomLevel, context: {
|
|
21
|
+
orbital?: string;
|
|
22
|
+
trait?: string;
|
|
23
|
+
}) => void;
|
|
24
|
+
focusTarget?: {
|
|
25
|
+
type: 'orbital' | 'trait';
|
|
26
|
+
name: string;
|
|
27
|
+
};
|
|
28
|
+
initialOrbital?: string;
|
|
29
|
+
initialTrait?: string;
|
|
30
|
+
stateCoverage?: Record<string, 'covered' | 'uncovered' | 'partial'>;
|
|
31
|
+
}
|
|
32
|
+
export declare const FlowCanvas: React.FC<FlowCanvasProps>;
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* ZoomBreadcrumb — HTML overlay showing current zoom band context.
|
|
3
|
+
*
|
|
4
|
+
* Positioned absolute top-left of the FlowCanvas.
|
|
5
|
+
* Shows AVL primitive icons inline with breadcrumb segments.
|
|
6
|
+
*/
|
|
7
|
+
import React from 'react';
|
|
8
|
+
import type { ZoomBand } from '../../molecules/avl/avl-canvas-types';
|
|
9
|
+
export interface ZoomBreadcrumbProps {
|
|
10
|
+
band: ZoomBand;
|
|
11
|
+
applicationName?: string;
|
|
12
|
+
orbitalName?: string;
|
|
13
|
+
traitName?: string;
|
|
14
|
+
eventName?: string;
|
|
15
|
+
}
|
|
16
|
+
export declare const ZoomBreadcrumb: React.FC<ZoomBreadcrumbProps>;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* ZoomLegend — Collapsible HTML overlay showing AVL primitives
|
|
3
|
+
* relevant to the current zoom band.
|
|
4
|
+
*/
|
|
5
|
+
import React from 'react';
|
|
6
|
+
import type { ZoomBand } from '../../molecules/avl/avl-canvas-types';
|
|
7
|
+
export interface ZoomLegendProps {
|
|
8
|
+
band: ZoomBand;
|
|
9
|
+
}
|
|
10
|
+
export declare const ZoomLegend: React.FC<ZoomLegendProps>;
|
|
@@ -1,11 +1,14 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* AVL Organisms - Interactive orbital visualizations.
|
|
3
3
|
*
|
|
4
|
+
* V3: FlowCanvas is the primary organism. AvlCosmicZoom delegates to it.
|
|
5
|
+
*
|
|
4
6
|
* @packageDocumentation
|
|
5
7
|
*/
|
|
8
|
+
export { FlowCanvas, type FlowCanvasProps } from './FlowCanvas';
|
|
9
|
+
export { ZoomBreadcrumb, type ZoomBreadcrumbProps } from './ZoomBreadcrumb';
|
|
10
|
+
export { ZoomLegend, type ZoomLegendProps } from './ZoomLegend';
|
|
6
11
|
export { AvlCosmicZoom, type AvlCosmicZoomProps } from './AvlCosmicZoom';
|
|
7
|
-
export { AvlApplicationScene, type AvlApplicationSceneProps } from './AvlApplicationScene';
|
|
8
|
-
export { AvlOrbitalScene, type AvlOrbitalSceneProps } from './AvlOrbitalScene';
|
|
9
12
|
export { AvlTraitScene, type AvlTraitSceneProps } from './AvlTraitScene';
|
|
10
13
|
export { AvlTransitionScene, type AvlTransitionSceneProps } from './AvlTransitionScene';
|
|
11
14
|
export { AvlClickTarget, type AvlClickTargetProps } from './AvlClickTarget';
|