@nesso-how/graph 0.1.0-alpha.31 → 0.1.0-alpha.33

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.
@@ -14,6 +14,6 @@ const HIDDEN_HANDLE = {
14
14
  pointerEvents: 'none',
15
15
  };
16
16
  export function ConceptNode({ data, selected }) {
17
- const { showHeatmap, showConfidence } = useGraphDisplay();
18
- return (_jsxs("div", { style: { position: 'relative' }, children: [_jsx(ConceptNodeBody, { text: data.text, selected: selected, showHeatmap: showHeatmap, showConfidence: showConfidence, lastRating: data.lastRating ?? 0, reps: data.reps, due: data.due }), _jsx(Handle, { id: "out", type: "source", position: Position.Right, style: HIDDEN_HANDLE }), _jsx(Handle, { id: "in", type: "target", position: Position.Left, style: HIDDEN_HANDLE })] }));
17
+ const { showHeatmap } = useGraphDisplay();
18
+ return (_jsxs("div", { style: { position: 'relative' }, children: [_jsx(ConceptNodeBody, { text: data.text, selected: selected, showHeatmap: showHeatmap, lastRating: data.lastRating ?? 0 }), _jsx(Handle, { id: "out", type: "source", position: Position.Right, style: HIDDEN_HANDLE }), _jsx(Handle, { id: "in", type: "target", position: Position.Left, style: HIDDEN_HANDLE })] }));
19
19
  }
@@ -3,18 +3,14 @@ export interface ConceptNodeBodyProps {
3
3
  text: string;
4
4
  selected: boolean;
5
5
  showHeatmap: boolean;
6
- showConfidence: boolean;
7
6
  lastRating: number;
8
- reps: number;
9
- due: number;
10
7
  cursor?: CSSProperties['cursor'];
11
8
  userSelect?: CSSProperties['userSelect'];
12
9
  className?: string;
13
10
  connectionTarget?: boolean;
14
- hideUnderline?: boolean;
15
11
  rootRef?: Ref<HTMLDivElement>;
16
12
  onDoubleClick?: MouseEventHandler<HTMLDivElement>;
17
13
  /** Replaces the default label span (e.g. inline edit overlay). */
18
14
  children?: ReactNode;
19
15
  }
20
- export declare function ConceptNodeBody({ text, selected, showHeatmap, showConfidence, lastRating, reps, due, cursor, userSelect, className, connectionTarget, hideUnderline, rootRef, onDoubleClick, children, }: ConceptNodeBodyProps): import("react/jsx-runtime").JSX.Element;
16
+ export declare function ConceptNodeBody({ text, selected, showHeatmap, lastRating, cursor, userSelect, className, connectionTarget, rootRef, onDoubleClick, children, }: ConceptNodeBodyProps): import("react/jsx-runtime").JSX.Element;
@@ -1,9 +1,7 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import { ratingColor } from './ratingColor.js';
3
- export function ConceptNodeBody({ text, selected, showHeatmap, showConfidence, lastRating, reps, due, cursor = 'default', userSelect = 'none', className, connectionTarget = false, hideUnderline = false, rootRef, onDoubleClick, children, }) {
3
+ export function ConceptNodeBody({ text, selected, showHeatmap, lastRating, cursor = 'default', userSelect = 'none', className, connectionTarget = false, rootRef, onDoubleClick, children, }) {
4
4
  const heatTint = ratingColor(lastRating);
5
- const confColor = showConfidence ? heatTint : 'var(--ink, #1a1a1a)';
6
- const isStale = reps > 0 && due <= Date.now();
7
5
  return (_jsxs("div", { ref: rootRef, className: className, onDoubleClick: onDoubleClick, style: {
8
6
  position: 'relative',
9
7
  padding: '6px 14px',
@@ -39,15 +37,5 @@ export function ConceptNodeBody({ text, selected, showHeatmap, showConfidence, l
39
37
  color: 'var(--ink, #1a1a1a)',
40
38
  display: 'block',
41
39
  whiteSpace: 'pre',
42
- }, children: text })), !hideUnderline && (_jsx("div", { style: {
43
- position: 'absolute',
44
- bottom: 5,
45
- left: 16,
46
- right: 16,
47
- height: selected ? 1.4 : 0.8,
48
- background: isStale && showConfidence
49
- ? `repeating-linear-gradient(90deg, ${confColor} 0, ${confColor} 4px, transparent 4px, transparent 8px)`
50
- : confColor,
51
- opacity: selected ? 0.9 : 0.55,
52
- } }))] }));
40
+ }, children: text }))] }));
53
41
  }
@@ -12,7 +12,6 @@ export interface NessoGraphProps {
12
12
  defaultEdges?: Edge[];
13
13
  display?: Partial<GraphDisplaySettings>;
14
14
  palette?: CategoryPalette;
15
- showConfidence?: boolean;
16
15
  /** `palette` (default) for embeds; `css` when `--cat-*` vars are set on the page. */
17
16
  categoryColorMode?: CategoryColorMode;
18
17
  getRelationLabel?: (type: EdgeTypeName) => string;
@@ -43,5 +42,5 @@ export interface NessoGraphProps {
43
42
  onDoubleClick?: React.MouseEventHandler<HTMLDivElement>;
44
43
  children?: React.ReactNode;
45
44
  }
46
- export declare function NessoGraph({ graph, nodes: nodesProp, defaultNodes, edges: edgesProp, defaultEdges, display, palette, showConfidence, categoryColorMode, getRelationLabel, isItemSelected, nodeTypes, edgeTypes, nodesDraggable, nodesConnectable, elementsSelectable, panOnDrag, zoomOnScroll, onNodesChange, onEdgesChange, onConnect, onConnectStart, onConnectEnd, onSelectionChange, onMoveEnd, onNodeClick, onEdgeClick, fitView, defaultViewport, minZoom, maxZoom, reactFlowProps, style, className, onDoubleClick, children, }: NessoGraphProps): import("react/jsx-runtime").JSX.Element;
45
+ export declare function NessoGraph({ graph, nodes: nodesProp, defaultNodes, edges: edgesProp, defaultEdges, display, palette, categoryColorMode, getRelationLabel, isItemSelected, nodeTypes, edgeTypes, nodesDraggable, nodesConnectable, elementsSelectable, panOnDrag, zoomOnScroll, onNodesChange, onEdgesChange, onConnect, onConnectStart, onConnectEnd, onSelectionChange, onMoveEnd, onNodeClick, onEdgeClick, fitView, defaultViewport, minZoom, maxZoom, reactFlowProps, style, className, onDoubleClick, children, }: NessoGraphProps): import("react/jsx-runtime").JSX.Element;
47
46
  export {};
@@ -7,7 +7,7 @@ import { ConceptNode } from './ConceptNode.js';
7
7
  import { NessoEdge } from './NessoEdge.js';
8
8
  const DEFAULT_NODE_TYPES = { concept: ConceptNode };
9
9
  const DEFAULT_EDGE_TYPES = { nesso: NessoEdge };
10
- export function NessoGraph({ graph, nodes: nodesProp, defaultNodes, edges: edgesProp, defaultEdges, display, palette = 'default', showConfidence = false, categoryColorMode = 'palette', getRelationLabel, isItemSelected, nodeTypes = DEFAULT_NODE_TYPES, edgeTypes = DEFAULT_EDGE_TYPES, nodesDraggable = false, nodesConnectable = false, elementsSelectable = true, panOnDrag = true, zoomOnScroll = true, onNodesChange, onEdgesChange, onConnect, onConnectStart, onConnectEnd, onSelectionChange, onMoveEnd, onNodeClick, onEdgeClick, fitView = true, defaultViewport, minZoom, maxZoom, reactFlowProps, style, className, onDoubleClick, children, }) {
10
+ export function NessoGraph({ graph, nodes: nodesProp, defaultNodes, edges: edgesProp, defaultEdges, display, palette = 'default', categoryColorMode = 'palette', getRelationLabel, isItemSelected, nodeTypes = DEFAULT_NODE_TYPES, edgeTypes = DEFAULT_EDGE_TYPES, nodesDraggable = false, nodesConnectable = false, elementsSelectable = true, panOnDrag = true, zoomOnScroll = true, onNodesChange, onEdgesChange, onConnect, onConnectStart, onConnectEnd, onSelectionChange, onMoveEnd, onNodeClick, onEdgeClick, fitView = true, defaultViewport, minZoom, maxZoom, reactFlowProps, style, className, onDoubleClick, children, }) {
11
11
  const controlledNodes = nodesProp ?? graph?.nodes;
12
12
  const controlledEdges = (edgesProp ?? graph?.edges);
13
13
  // Controlled (`nodes`/`graph`) takes precedence; otherwise fall back to ReactFlow's
@@ -24,19 +24,10 @@ export function NessoGraph({ graph, nodes: nodesProp, defaultNodes, edges: edges
24
24
  curveStyle: display?.curveStyle ?? graph?.display?.curveStyle ?? 'arc',
25
25
  autoCurveFlip: display?.autoCurveFlip ?? graph?.display?.autoCurveFlip ?? true,
26
26
  palette,
27
- showConfidence,
28
27
  categoryColorMode,
29
28
  getRelationLabel,
30
29
  isItemSelected,
31
- }), [
32
- display,
33
- graph?.display,
34
- palette,
35
- showConfidence,
36
- categoryColorMode,
37
- getRelationLabel,
38
- isItemSelected,
39
- ]);
30
+ }), [display, graph?.display, palette, categoryColorMode, getRelationLabel, isItemSelected]);
40
31
  return (_jsx("div", { style: { width: '100%', height: '100%', ...style }, className: className, onDoubleClick: onDoubleClick, children: _jsx(GraphDisplayContext.Provider, { value: ctx, children: _jsx(ReactFlow, { ...nodesProps, ...edgesProps, nodeTypes: nodeTypes, edgeTypes: edgeTypes, nodesDraggable: nodesDraggable, nodesConnectable: nodesConnectable, elementsSelectable: elementsSelectable, panOnDrag: panOnDrag, zoomOnScroll: zoomOnScroll, onNodesChange: onNodesChange, onEdgesChange: onEdgesChange, onConnect: onConnect, onConnectStart: onConnectStart, onConnectEnd: onConnectEnd, onSelectionChange: onSelectionChange, onMoveEnd: onMoveEnd, fitView: fitView, defaultViewport: defaultViewport, minZoom: minZoom, maxZoom: maxZoom, onNodeClick: onNodeClick
41
32
  ? (_, node) => onNodeClick(node.id, node.data)
42
33
  : undefined, onEdgeClick: onEdgeClick ? (_, edge) => onEdgeClick(edge.id, edge.data) : undefined, ...reactFlowProps, children: children ?? (_jsxs(_Fragment, { children: [_jsx(Background, {}), _jsx(Controls, {})] })) }) }) }));
package/dist/context.d.ts CHANGED
@@ -7,7 +7,6 @@ export interface NessoGraphDisplayContext {
7
7
  curveStyle: CurveStyle;
8
8
  autoCurveFlip: boolean;
9
9
  palette: CategoryPalette;
10
- showConfidence: boolean;
11
10
  /** `palette` uses hex from PALETTES; `css` uses `var(--cat-*)` (app with live palette switching). */
12
11
  categoryColorMode: CategoryColorMode;
13
12
  getRelationLabel?: (type: EdgeTypeName) => string;
package/dist/context.js CHANGED
@@ -6,7 +6,6 @@ const defaultContext = {
6
6
  curveStyle: 'arc',
7
7
  autoCurveFlip: true,
8
8
  palette: 'default',
9
- showConfidence: false,
10
9
  categoryColorMode: 'palette',
11
10
  };
12
11
  export const GraphDisplayContext = createContext(defaultContext);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@nesso-how/graph",
3
- "version": "0.1.0-alpha.31",
3
+ "version": "0.1.0-alpha.33",
4
4
  "description": "Embeddable read-only Nesso knowledge graph React component",
5
5
  "license": "MIT",
6
6
  "repository": {
@@ -22,9 +22,9 @@
22
22
  }
23
23
  },
24
24
  "dependencies": {
25
- "@nesso-how/relation-types": "0.1.0-alpha.31",
26
- "@nesso-how/formats": "0.1.0-alpha.31",
27
- "@nesso-how/types": "0.1.0-alpha.31"
25
+ "@nesso-how/formats": "0.1.0-alpha.33",
26
+ "@nesso-how/relation-types": "0.1.0-alpha.33",
27
+ "@nesso-how/types": "0.1.0-alpha.33"
28
28
  },
29
29
  "peerDependencies": {
30
30
  "@xyflow/react": "^12.6.4",