@danxbot/ui 15.11.1 → 15.12.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.
@@ -1,7 +1,33 @@
1
1
  import type { OpenApiDocument, ResolvedOperation } from "./types";
2
+ export interface OperationHeaderProps {
3
+ resolved: ResolvedOperation;
4
+ /** Renders the deep-link "copy link" control. Off for a caller (like
5
+ * `OpenApiViewer`'s list row) that renders its own, positioned relative to
6
+ * a wrapper this component doesn't own. */
7
+ showCopyLink?: boolean;
8
+ className?: string;
9
+ }
10
+ /** The cheap, always-rendered part of one operation: method, path, summary,
11
+ * deprecated flag, description, operationId. No schema, no tabs — safe to
12
+ * mount for every operation in a large document at once. */
13
+ export declare function OperationHeader({ resolved, showCopyLink, className }: OperationHeaderProps): import("react").JSX.Element;
14
+ export interface OperationDetailProps {
15
+ doc: OpenApiDocument;
16
+ resolved: ResolvedOperation;
17
+ className?: string;
18
+ }
19
+ /** The expensive part: parameters, request body, responses (each with a
20
+ * `SchemaView` tree and a synthesised example) and security — everything
21
+ * `OpenApiViewer` lazy-mounts per operation. */
22
+ export declare function OperationDetail({ doc, resolved, className }: OperationDetailProps): import("react").JSX.Element;
2
23
  export interface OperationCardProps {
3
24
  doc: OpenApiDocument;
4
25
  resolved: ResolvedOperation;
5
26
  className?: string;
6
27
  }
28
+ /** One operation, header AND detail both always mounted — for a consumer
29
+ * embedding a single operation's full detail on its own page (nothing to
30
+ * lazy-mount when there's only one). `OpenApiViewer`'s own list uses
31
+ * `OperationHeader`/`OperationDetail` directly instead, so it can lazy-mount
32
+ * the detail per row — see this file's own header comment. */
7
33
  export declare function OperationCard({ doc, resolved, className }: OperationCardProps): import("react").JSX.Element;
@@ -1,5 +1,6 @@
1
1
  export { OpenApiViewer, type OpenApiViewerProps } from "./OpenApiViewer";
2
2
  export { OperationCard, type OperationCardProps } from "./OperationCard";
3
+ export { OperationHeader, type OperationHeaderProps, OperationDetail, type OperationDetailProps } from "./OperationCard";
3
4
  export { SchemaView, type SchemaViewProps } from "./SchemaView";
4
5
  export { groupOperations, isHttpMethod, mergedParameters, operationAnchorId, resolveSchema, schemaToExample, type SchemaResolution, } from "./resolve";
5
6
  export { HTTP_METHODS, type HttpMethod, type OpenApiDocument, type OpenApiMediaType, type OpenApiOperation, type OpenApiParameter, type OpenApiParameterLocation, type OpenApiPathItem, type OpenApiRequestBody, type OpenApiResponse, type OpenApiSchema, type OpenApiSecurityRequirement, type OpenApiSecurityScheme, type OpenApiTag, type OperationGroup, type ResolvedOperation, } from "./types";
@@ -138,7 +138,7 @@ export { NodeCanvas, LAYOUT_DEFAULTS, edgePath, layoutGraph, neighbourhood, type
138
138
  export { GraphExplorer, frameBoxFor, layoutExplorerTree, neighbourhoodTree, CAMERA_DEFAULTS, centerOn, clampScale, fitBox, fitBoxWithFloor, toContentPoint, toScreenPoint, unionBox, zoomAtPoint, type GraphExplorerProps, type Box, type CameraState, type FitOptions, type FitWithFloorOptions, type FitWithFloorResult, type FrameOverflow, type Point, type ScaleBounds, type Size, type CrossLink, type ExplorerLayout, type ExplorerNodeRenderContext, type ExplorerNodeRenderer, type ExplorerTree, type GraphExplorerVariant, type TreeNode as ExplorerTreeNode, } from "./components/graph-explorer";
139
139
  export { FocusWeb, CENTER_POSITION, PARENT_POSITION, WIDE_RING_THRESHOLD, layoutRing, type FocusNodeRenderContext, type FocusNodeRenderer, type FocusNodeRole, type FocusWebNode, type FocusWebNodeLook, type FocusWebProps, type PlacedRingNode, } from "./components/focus-web";
140
140
  export { SequenceDiagram, type SequenceDiagramProps, type SequenceStep, } from "./components/SequenceDiagram";
141
- export { OpenApiViewer, type OpenApiViewerProps, OperationCard, type OperationCardProps, SchemaView, type SchemaViewProps, groupOperations, isHttpMethod, mergedParameters, operationAnchorId, resolveSchema, schemaToExample, type SchemaResolution, HTTP_METHODS, type HttpMethod, type OpenApiDocument, type OpenApiMediaType, type OpenApiOperation, type OpenApiParameter, type OpenApiParameterLocation, type OpenApiPathItem, type OpenApiRequestBody, type OpenApiResponse, type OpenApiSchema, type OpenApiSecurityRequirement, type OpenApiSecurityScheme, type OpenApiTag, type OperationGroup, type ResolvedOperation, } from "./components/openapi";
141
+ export { OpenApiViewer, type OpenApiViewerProps, OperationCard, type OperationCardProps, OperationHeader, type OperationHeaderProps, OperationDetail, type OperationDetailProps, SchemaView, type SchemaViewProps, groupOperations, isHttpMethod, mergedParameters, operationAnchorId, resolveSchema, schemaToExample, type SchemaResolution, HTTP_METHODS, type HttpMethod, type OpenApiDocument, type OpenApiMediaType, type OpenApiOperation, type OpenApiParameter, type OpenApiParameterLocation, type OpenApiPathItem, type OpenApiRequestBody, type OpenApiResponse, type OpenApiSchema, type OpenApiSecurityRequirement, type OpenApiSecurityScheme, type OpenApiTag, type OperationGroup, type ResolvedOperation, } from "./components/openapi";
142
142
  export { defineRecordType, resetRecordTypes, useRecord, useRecords, useStaleness, write, writeAll, peekRecord, readState, readStaleness, subscribeToKey, subscribeToStaleness, retainKeys, sweepRecords, setRecordStoreTenant, getRecordStoreTenant, flushRecordNotifications, resetRecordStore, recordStoreStats, UNKNOWN_STATE, normalizeTypeName, normalizeTimestamp, recordKey, isRecordRef, type RecordRef, type ReadOptions, type RecordPayload, type RecordState, type RecordTypeOptions, type RecordTypeToken, type StalenessEntry, type WriteAllResult, type WriteOptions, type WriteResult, type WriteSource, type WriteVerdict, } from "./lib/records";
143
143
  export { RealtimeProvider, useRealtime, useRealtimeEpoch, useRealtimeHealth, useRealtimeRegistry, SubscriptionRegistry, normalizeScope, scopeKey, subscriptionKey, readRealtimeEpoch, subscribeToRealtimeEpoch, subscribeToRealtimeEvents, resetRealtimeSignals, type RealtimeChannel, type RealtimeConnectionState, type RealtimeDiagnostic, type RealtimeEvent, type RealtimeHealth, type RealtimeProviderProps, type RealtimeScope, type RealtimeScopeInput, type RealtimeStatus, type RealtimeTransport, type RegistryOptions, type SubscriptionHealth, type SubscriptionLease, type SubscriptionRequest, } from "./lib/realtime";
144
144
  export { useRecordRead, useRecordListRead, useRecordStoreSweep, applyMutationResult, optimisticWrite, beginOptimisticWrite, resetOptimisticWrites, type OptimisticHandle, type OptimisticWriteOptions, type OptimisticWriteSpec, type SlotDescriptor, acquireSlot, appendCreated, emptySlotSnapshot, readSlot, resetSlots, slotKeys, subscribeToSlot, writeSlot, RefetchRunner, registerActiveRead, resetActiveReads, type ActiveRead, type ListFetch, type ListFetchResult, type ListReadOptions, type ListReadResult, type ReadError, type RecordFetch, type RecordReadOptions, type RecordReadResult, type RunnerOptions, type SlotSnapshot, } from "./lib/reads";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@danxbot/ui",
3
- "version": "15.11.1",
3
+ "version": "15.12.0",
4
4
  "type": "module",
5
5
  "description": "Danxbot — a domain-agnostic React design system with motion as a first-class primitive.",
6
6
  "license": "MIT",