@emeryld/rrroutes-openapi 2.6.1 → 2.6.5

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.
Files changed (79) hide show
  1. package/dist/index.cjs +19 -20
  2. package/dist/index.cjs.map +1 -1
  3. package/dist/index.mjs +19 -20
  4. package/dist/index.mjs.map +1 -1
  5. package/dist/public/assets/Add.js +1 -0
  6. package/dist/public/assets/Autocomplete.js +1 -0
  7. package/dist/public/assets/BaseFilterBar.js +1 -0
  8. package/dist/public/assets/BentoGrid.js +1 -0
  9. package/dist/public/assets/CacheLogsPage.js +1 -0
  10. package/dist/public/assets/DeleteOutline.js +1 -0
  11. package/dist/public/assets/DiffPage.js +7 -0
  12. package/dist/public/assets/Download.js +1 -0
  13. package/dist/public/assets/EndpointDetailPage.js +1 -0
  14. package/dist/public/assets/EndpointDetailPanel.js +1 -0
  15. package/dist/public/assets/EndpointPlaygroundPage.js +1 -0
  16. package/dist/public/assets/ExpandLess.js +1 -0
  17. package/dist/public/assets/ExportButton.js +2 -0
  18. package/dist/public/assets/FlowBuilderPage.js +20 -0
  19. package/dist/public/assets/HistoryPage.js +1 -0
  20. package/dist/public/assets/LogsPage.js +1 -0
  21. package/dist/public/assets/PageContainer.js +3 -0
  22. package/dist/public/assets/PlayArrow.js +1 -0
  23. package/dist/public/assets/PresetsPage.js +4 -0
  24. package/dist/public/assets/RoutesPage.js +1 -0
  25. package/dist/public/assets/SchedulingPage.js +1 -0
  26. package/dist/public/assets/SchemaTreeView.js +1 -0
  27. package/dist/public/assets/SettingsPage.js +1 -0
  28. package/dist/public/assets/SocketsPage.js +1 -0
  29. package/dist/public/assets/docs.css +1 -1
  30. package/dist/public/assets/docs.js +98 -180
  31. package/dist/public/assets/filterTypes.js +1 -0
  32. package/dist/public/assets/getValidReactChildren.js +1 -0
  33. package/dist/public/assets/kvRowAdapters.js +1 -0
  34. package/dist/public/assets/schemaDefaults.js +1 -0
  35. package/dist/public/assets/useEndpointOptions.js +1 -0
  36. package/dist/public/assets/useQueryState.js +1 -0
  37. package/dist/public/assets/vendor-recharts.js +99 -0
  38. package/dist/public/assets/vendor-xyflow.js +15 -0
  39. package/dist/web/v2/AppShell.d.ts +1 -3
  40. package/dist/web/v2/components/diff/DiffViewer.d.ts +7 -0
  41. package/dist/web/v2/components/diff/RequestDiffSelector.d.ts +15 -0
  42. package/dist/web/v2/components/diff/SchemaDiffViewer.d.ts +7 -0
  43. package/dist/web/v2/components/feedback/CopyAsMenu.d.ts +10 -0
  44. package/dist/web/v2/components/feedback/CopySnackbar.d.ts +1 -0
  45. package/dist/web/v2/components/flows/FlowCanvas.d.ts +13 -0
  46. package/dist/web/v2/components/flows/FlowNodeEditor.d.ts +8 -0
  47. package/dist/web/v2/components/flows/FlowRunProgress.d.ts +7 -0
  48. package/dist/web/v2/components/flows/FlowVariablePanel.d.ts +7 -0
  49. package/dist/web/v2/components/flows/nodes/ConditionNode.d.ts +7 -0
  50. package/dist/web/v2/components/flows/nodes/DelayNode.d.ts +7 -0
  51. package/dist/web/v2/components/flows/nodes/ExtractNode.d.ts +8 -0
  52. package/dist/web/v2/components/flows/nodes/RequestNode.d.ts +10 -0
  53. package/dist/web/v2/components/layout/ActivityBar.d.ts +1 -0
  54. package/dist/web/v2/components/layout/BentoGrid.d.ts +17 -0
  55. package/dist/web/v2/components/layout/ContentArea.d.ts +1 -0
  56. package/dist/web/v2/components/layout/PanelRegistry.d.ts +17 -0
  57. package/dist/web/v2/components/request/LastRunPanel.d.ts +5 -0
  58. package/dist/web/v2/components/request/TimingBreakdown.d.ts +11 -0
  59. package/dist/web/v2/components/requests/timeline/TimelinePhaseBar.d.ts +13 -0
  60. package/dist/web/v2/components/requests/timeline/TimelineWaterfall.d.ts +12 -0
  61. package/dist/web/v2/pages/DiffPage.d.ts +1 -0
  62. package/dist/web/v2/pages/FlowBuilderPage.d.ts +1 -0
  63. package/dist/web/v2/stores/flowStore.d.ts +70 -0
  64. package/dist/web/v2/stores/layoutStore.d.ts +13 -0
  65. package/dist/web/v2/stores/playgroundSettingsStore.d.ts +10 -0
  66. package/dist/web/v2/stores/snackbarStore.d.ts +17 -0
  67. package/dist/web/v2/types/types.cacheLog.d.ts +3 -3
  68. package/dist/web/v2/types/types.d.ts +8 -10
  69. package/dist/web/v2/types/types.endpoint.d.ts +3 -2
  70. package/dist/web/v2/types/types.log.d.ts +1 -1
  71. package/dist/web/v2/types/types.preset.d.ts +3 -3
  72. package/dist/web/v2/types/types.requestLog.d.ts +2 -2
  73. package/dist/web/v2/types/types.scheduling.d.ts +3 -3
  74. package/dist/web/v2/types/types.socket.d.ts +2 -2
  75. package/dist/web/v2/utils/codeGeneration.d.ts +12 -0
  76. package/dist/web/v2/utils/diffUtils.d.ts +11 -0
  77. package/dist/web/v2/utils/flowRunner.d.ts +17 -0
  78. package/dist/web/v2/utils/templateResolver.d.ts +4 -0
  79. package/package.json +14 -11
@@ -0,0 +1,17 @@
1
+ import { type ComponentType, type ReactElement } from 'react';
2
+ export type PanelGroup = 'api' | 'data' | 'tools' | 'system';
3
+ export type PanelDefinition = {
4
+ id: string;
5
+ title: string;
6
+ icon: string;
7
+ iconElement: ReactElement;
8
+ group: PanelGroup;
9
+ showInSidebar: boolean;
10
+ component: React.LazyExoticComponent<ComponentType<unknown>>;
11
+ };
12
+ declare const registry: Record<string, PanelDefinition>;
13
+ export declare function getPanelDefinition(id: string): PanelDefinition | undefined;
14
+ export declare function getAllPanels(): PanelDefinition[];
15
+ export declare function getPanelIds(): string[];
16
+ export declare function getSidebarPanels(): PanelDefinition[];
17
+ export default registry;
@@ -5,6 +5,11 @@ export type LastRunMeta = {
5
5
  time: string;
6
6
  errorMessage?: string;
7
7
  response?: unknown;
8
+ requestSnapshot?: {
9
+ method?: string;
10
+ path?: string;
11
+ body?: string;
12
+ };
8
13
  };
9
14
  type LastRunPanelProps = {
10
15
  title?: string;
@@ -0,0 +1,11 @@
1
+ type Phase = {
2
+ label: string;
3
+ durationMs: number;
4
+ color?: string;
5
+ };
6
+ type TimingBreakdownProps = {
7
+ durationMs: number;
8
+ phases?: Phase[];
9
+ };
10
+ export default function TimingBreakdown({ durationMs, phases, }: TimingBreakdownProps): import("react/jsx-runtime").JSX.Element;
11
+ export {};
@@ -0,0 +1,13 @@
1
+ import type { RequestTimelineEvent } from './types.js';
2
+ type SubPhase = {
3
+ label: string;
4
+ percent: number;
5
+ };
6
+ type TimelinePhaseBarProps = {
7
+ kind: RequestTimelineEvent['kind'];
8
+ widthPercent: number;
9
+ label?: string;
10
+ subPhases?: Array<SubPhase>;
11
+ };
12
+ export default function TimelinePhaseBar({ kind, widthPercent, label, subPhases, }: TimelinePhaseBarProps): import("react/jsx-runtime").JSX.Element;
13
+ export {};
@@ -0,0 +1,12 @@
1
+ import type { RequestTimelineEvent } from './types.js';
2
+ type TimelineWaterfallEvent = {
3
+ event: RequestTimelineEvent;
4
+ deltaMs: number | null;
5
+ };
6
+ type TimelineWaterfallProps = {
7
+ events: Array<TimelineWaterfallEvent>;
8
+ maxDeltaMs: number;
9
+ onEventClick?: (event: RequestTimelineEvent) => void;
10
+ };
11
+ export default function TimelineWaterfall({ events, maxDeltaMs, onEventClick, }: TimelineWaterfallProps): import("react/jsx-runtime").JSX.Element;
12
+ export {};
@@ -0,0 +1 @@
1
+ export default function DiffPage(): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1 @@
1
+ export default function FlowBuilderPage(): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,70 @@
1
+ import { ReactNode } from 'react';
2
+ export type FlowNodeType = 'request' | 'condition' | 'delay' | 'extract';
3
+ export type RequestNodeData = {
4
+ method: string;
5
+ path: string;
6
+ headers?: Record<string, string>;
7
+ body?: string;
8
+ queryParams?: Record<string, string>;
9
+ };
10
+ export type ConditionNodeData = {
11
+ expression: string;
12
+ };
13
+ export type DelayNodeData = {
14
+ durationMs: number;
15
+ };
16
+ export type ExtractNodeData = {
17
+ variableName: string;
18
+ jsonPath: string;
19
+ };
20
+ export type FlowStepNode = {
21
+ id: string;
22
+ type: FlowNodeType;
23
+ position: {
24
+ x: number;
25
+ y: number;
26
+ };
27
+ data: RequestNodeData | ConditionNodeData | DelayNodeData | ExtractNodeData;
28
+ };
29
+ export type FlowEdge = {
30
+ id: string;
31
+ source: string;
32
+ target: string;
33
+ sourceHandle?: string;
34
+ };
35
+ export type FlowVariable = {
36
+ name: string;
37
+ value: unknown;
38
+ sourceNodeId?: string;
39
+ };
40
+ export type FlowDefinition = {
41
+ id: string;
42
+ name: string;
43
+ nodes: FlowStepNode[];
44
+ edges: FlowEdge[];
45
+ };
46
+ export type FlowRunState = {
47
+ status: 'idle' | 'running' | 'completed' | 'error';
48
+ currentNodeId: string | null;
49
+ completedNodeIds: string[];
50
+ errorNodeId: string | null;
51
+ errorMessage: string | null;
52
+ variables: FlowVariable[];
53
+ elapsedMs: number;
54
+ };
55
+ type FlowContextValue = {
56
+ flows: FlowDefinition[];
57
+ activeFlowId: string | null;
58
+ runState: FlowRunState;
59
+ addFlow: (flow: FlowDefinition) => void;
60
+ updateFlow: (flow: FlowDefinition) => void;
61
+ deleteFlow: (id: string) => void;
62
+ setActiveFlow: (id: string | null) => void;
63
+ setRunState: (state: FlowRunState) => void;
64
+ resetRunState: () => void;
65
+ };
66
+ export declare function FlowProvider({ children }: {
67
+ children: ReactNode;
68
+ }): import("react/jsx-runtime").JSX.Element;
69
+ export declare function useFlows(): FlowContextValue;
70
+ export {};
@@ -0,0 +1,13 @@
1
+ import { ReactNode } from 'react';
2
+ type LayoutContextValue = {
3
+ activePanel: string;
4
+ sidebarCollapsed: boolean;
5
+ openPanel: (panelId: string) => void;
6
+ toggleSidebar: () => void;
7
+ resetLayout: () => void;
8
+ };
9
+ export declare function LayoutProvider({ children }: {
10
+ children: ReactNode;
11
+ }): import("react/jsx-runtime").JSX.Element;
12
+ export declare function useLayout(): LayoutContextValue;
13
+ export {};
@@ -1,9 +1,19 @@
1
1
  import { ReactNode } from 'react';
2
2
  import type { PlaygroundKeyValueRow } from './playgroundStore.js';
3
+ export type AuthTokenEntry = {
4
+ id: string;
5
+ name: string;
6
+ headerName: string;
7
+ value: string;
8
+ enabled: boolean;
9
+ };
3
10
  type PlaygroundSettingsContextValue = {
4
11
  defaultHeaders: PlaygroundKeyValueRow[];
5
12
  setDefaultHeaders: (rows: PlaygroundKeyValueRow[]) => void;
6
13
  resetDefaultHeaders: () => void;
14
+ authTokens: AuthTokenEntry[];
15
+ setAuthTokens: (tokens: AuthTokenEntry[]) => void;
16
+ resetAuthTokens: () => void;
7
17
  };
8
18
  export declare function PlaygroundSettingsProvider({ children, }: {
9
19
  children: ReactNode;
@@ -0,0 +1,17 @@
1
+ import { ReactNode } from 'react';
2
+ type SnackbarSeverity = 'success' | 'info' | 'warning' | 'error';
3
+ type SnackbarEntry = {
4
+ message: string;
5
+ severity: SnackbarSeverity;
6
+ key: number;
7
+ };
8
+ type SnackbarContextValue = {
9
+ current: SnackbarEntry | null;
10
+ showSnackbar: (message: string, severity?: SnackbarSeverity) => void;
11
+ dismiss: () => void;
12
+ };
13
+ export declare function SnackbarProvider({ children }: {
14
+ children: ReactNode;
15
+ }): import("react/jsx-runtime").JSX.Element;
16
+ export declare function useSnackbar(): SnackbarContextValue;
17
+ export {};
@@ -81,7 +81,7 @@ export declare const cacheTraceQuerySchema: z.ZodObject<{
81
81
  export type CacheTraceQuery = z.infer<typeof cacheTraceQuerySchema> & z.infer<typeof paginationSchema>;
82
82
  export declare const cacheLeaves: readonly [{
83
83
  readonly method: "get";
84
- readonly path: "cache";
84
+ readonly path: "/cache";
85
85
  readonly cfg: Readonly<import("@emeryld/rrroutes-contract").Prettify<Omit<{}, "queryExtensionSchema" | "outputMetaSchema" | "bodySchema" | "querySchema" | "paramsSchema" | "outputSchema" | Exclude<keyof (import("@emeryld/rrroutes-contract").Prettify<Omit<C, "queryExtensionSchema" | "outputMetaSchema"> & {
86
86
  queryExtensionSchema: C["queryExtensionSchema"] extends z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>> ? C["queryExtensionSchema"] : undefined;
87
87
  outputMetaSchema: C["outputMetaSchema"] extends z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>> ? C["outputMetaSchema"] : undefined;
@@ -313,7 +313,7 @@ export declare const cacheLeaves: readonly [{
313
313
  }>>>;
314
314
  }, {
315
315
  readonly method: "post";
316
- readonly path: "cache/clear";
316
+ readonly path: "/cache/clear";
317
317
  readonly cfg: Readonly<import("@emeryld/rrroutes-contract").Prettify<Omit<Readonly<import("@emeryld/rrroutes-contract").Prettify<Omit<{}, "queryExtensionSchema" | "outputMetaSchema" | "bodySchema" | "querySchema" | "paramsSchema" | "outputSchema" | Exclude<keyof (import("@emeryld/rrroutes-contract").Prettify<Omit<import("@emeryld/rrroutes-contract").Prettify<Omit<C_1, "feed"> & {
318
318
  feed: false;
319
319
  }>, "queryExtensionSchema" | "outputMetaSchema"> & {
@@ -446,7 +446,7 @@ export declare const cacheLeaves: readonly [{
446
446
  }>>;
447
447
  }, {
448
448
  readonly method: "get";
449
- readonly path: "cache/trace";
449
+ readonly path: "/cache/trace";
450
450
  readonly cfg: Readonly<import("@emeryld/rrroutes-contract").Prettify<Omit<Readonly<import("@emeryld/rrroutes-contract").Prettify<Omit<{}, "queryExtensionSchema" | "outputMetaSchema" | "bodySchema" | "querySchema" | "paramsSchema" | "outputSchema" | Exclude<keyof (import("@emeryld/rrroutes-contract").Prettify<Omit<C_2, "queryExtensionSchema" | "outputMetaSchema"> & {
451
451
  queryExtensionSchema: C_2["queryExtensionSchema"] extends z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>> ? C_2["queryExtensionSchema"] : undefined;
452
452
  outputMetaSchema: C_2["outputMetaSchema"] extends z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>> ? C_2["outputMetaSchema"] : undefined;
@@ -7,16 +7,14 @@ import { requestLogLeaves } from './types.requestLog.js';
7
7
  import { schedulingLeaves } from './types.scheduling.js';
8
8
  import { socketLeaves } from './types.socket.js';
9
9
  type AllLeaves = readonly [
10
- ...MergeAugmentedCollections<'', undefined, readonly [
11
- MergeAugmentedCollections<'/__rrroutes', undefined, readonly [
12
- typeof endpointLeaves,
13
- typeof requestLogLeaves,
14
- typeof logLeaves,
15
- typeof cacheLeaves,
16
- typeof presetLeaves,
17
- typeof socketLeaves,
18
- typeof schedulingLeaves
19
- ]>
10
+ ...MergeAugmentedCollections<'/__rrroutes', undefined, readonly [
11
+ typeof endpointLeaves,
12
+ typeof requestLogLeaves,
13
+ typeof logLeaves,
14
+ typeof cacheLeaves,
15
+ typeof presetLeaves,
16
+ typeof socketLeaves,
17
+ typeof schedulingLeaves
20
18
  ]>
21
19
  ];
22
20
  declare const allLeaves: AllLeaves;
@@ -6,6 +6,7 @@ export type SerializableSchema = {
6
6
  optional?: boolean;
7
7
  nullable?: boolean;
8
8
  description?: string;
9
+ example?: unknown;
9
10
  properties?: Record<string, SerializableSchema>;
10
11
  element?: SerializableSchema;
11
12
  union?: SerializableSchema[];
@@ -206,7 +207,7 @@ export declare const endpointSchemaWithStats: z.ZodObject<{
206
207
  export type EndpointDetailData = z.infer<typeof endpointSchemaWithStats>;
207
208
  export declare const endpointLeaves: readonly [{
208
209
  readonly method: "get";
209
- readonly path: "endpoints";
210
+ readonly path: "/endpoints";
210
211
  readonly cfg: Readonly<import("@emeryld/rrroutes-contract").Prettify<Omit<{}, "queryExtensionSchema" | "outputMetaSchema" | "bodySchema" | "querySchema" | "paramsSchema" | "outputSchema" | Exclude<keyof (import("@emeryld/rrroutes-contract").Prettify<Omit<C, "queryExtensionSchema" | "outputMetaSchema"> & {
211
212
  queryExtensionSchema: C["queryExtensionSchema"] extends z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>> ? C["queryExtensionSchema"] : undefined;
212
213
  outputMetaSchema: C["outputMetaSchema"] extends z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>> ? C["outputMetaSchema"] : undefined;
@@ -604,7 +605,7 @@ export declare const endpointLeaves: readonly [{
604
605
  }>>>;
605
606
  }, {
606
607
  readonly method: "get";
607
- readonly path: "endpoints/:endpointId";
608
+ readonly path: "/endpoints/:endpointId";
608
609
  readonly cfg: Readonly<import("@emeryld/rrroutes-contract").Prettify<Omit<Readonly<import("@emeryld/rrroutes-contract").Prettify<Omit<{}, "queryExtensionSchema" | "outputMetaSchema" | "bodySchema" | "querySchema" | "paramsSchema" | "outputSchema" | Exclude<keyof (import("@emeryld/rrroutes-contract").Prettify<Omit<C_1, "queryExtensionSchema" | "outputMetaSchema"> & {
609
610
  queryExtensionSchema: C_1["queryExtensionSchema"] extends z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>> ? C_1["queryExtensionSchema"] : z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>;
610
611
  outputMetaSchema: C_1["outputMetaSchema"] extends z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>> ? C_1["outputMetaSchema"] : z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>;
@@ -31,7 +31,7 @@ export declare const logQuerySchema: z.ZodObject<{
31
31
  export type ApplicationLogsFilter = z.infer<typeof logQuerySchema> & z.infer<typeof paginationSchema>;
32
32
  export declare const logLeaves: readonly [{
33
33
  readonly method: "get";
34
- readonly path: "logs";
34
+ readonly path: "/logs";
35
35
  readonly cfg: Readonly<import("@emeryld/rrroutes-contract").Prettify<Omit<{}, "queryExtensionSchema" | "outputMetaSchema" | "bodySchema" | "querySchema" | "paramsSchema" | "outputSchema" | Exclude<keyof (import("@emeryld/rrroutes-contract").Prettify<Omit<C, "queryExtensionSchema" | "outputMetaSchema"> & {
36
36
  queryExtensionSchema: C["queryExtensionSchema"] extends z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>> ? C["queryExtensionSchema"] : undefined;
37
37
  outputMetaSchema: C["outputMetaSchema"] extends z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>> ? C["outputMetaSchema"] : undefined;
@@ -46,7 +46,7 @@ declare const presetQuerySchema: z.ZodObject<{
46
46
  export type PresetsFilter = z.infer<typeof presetQuerySchema> & z.infer<typeof paginationSchema>;
47
47
  export declare const presetLeaves: readonly [{
48
48
  readonly method: "get";
49
- readonly path: "presets";
49
+ readonly path: "/presets";
50
50
  readonly cfg: Readonly<import("@emeryld/rrroutes-contract").Prettify<Omit<{}, "queryExtensionSchema" | "outputMetaSchema" | "bodySchema" | "querySchema" | "paramsSchema" | "outputSchema" | Exclude<keyof (import("@emeryld/rrroutes-contract").Prettify<Omit<C, "queryExtensionSchema" | "outputMetaSchema"> & {
51
51
  queryExtensionSchema: C["queryExtensionSchema"] extends z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>> ? C["queryExtensionSchema"] : undefined;
52
52
  outputMetaSchema: C["outputMetaSchema"] extends z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>> ? C["outputMetaSchema"] : undefined;
@@ -331,7 +331,7 @@ export declare const presetLeaves: readonly [{
331
331
  }>>>;
332
332
  }, {
333
333
  readonly method: "post";
334
- readonly path: "presets";
334
+ readonly path: "/presets";
335
335
  readonly cfg: Readonly<import("@emeryld/rrroutes-contract").Prettify<Omit<{}, "queryExtensionSchema" | "outputMetaSchema" | "bodySchema" | "querySchema" | "paramsSchema" | "outputSchema" | Exclude<keyof (import("@emeryld/rrroutes-contract").Prettify<Omit<import("@emeryld/rrroutes-contract").Prettify<Omit<C_1, "feed"> & {
336
336
  feed: false;
337
337
  }>, "queryExtensionSchema" | "outputMetaSchema"> & {
@@ -551,7 +551,7 @@ export declare const presetLeaves: readonly [{
551
551
  }>>>;
552
552
  }, {
553
553
  readonly method: "put";
554
- readonly path: "presets";
554
+ readonly path: "/presets";
555
555
  readonly cfg: Readonly<import("@emeryld/rrroutes-contract").Prettify<Omit<{}, "queryExtensionSchema" | "outputMetaSchema" | "bodySchema" | "querySchema" | "paramsSchema" | "outputSchema" | Exclude<keyof (import("@emeryld/rrroutes-contract").Prettify<Omit<import("@emeryld/rrroutes-contract").Prettify<Omit<C_2, "feed"> & {
556
556
  feed: false;
557
557
  }>, "queryExtensionSchema" | "outputMetaSchema"> & {
@@ -89,7 +89,7 @@ export declare const requestQuerySchema: z.ZodObject<{
89
89
  export type HistoryFilter = z.infer<typeof requestQuerySchema> & z.infer<typeof paginationSchema>;
90
90
  export declare const requestLogLeaves: readonly [{
91
91
  readonly method: "get";
92
- readonly path: "requests";
92
+ readonly path: "/requests";
93
93
  readonly cfg: Readonly<import("@emeryld/rrroutes-contract").Prettify<Omit<{}, "queryExtensionSchema" | "outputMetaSchema" | "bodySchema" | "querySchema" | "paramsSchema" | "outputSchema" | Exclude<keyof (import("@emeryld/rrroutes-contract").Prettify<Omit<C, "queryExtensionSchema" | "outputMetaSchema"> & {
94
94
  queryExtensionSchema: C["queryExtensionSchema"] extends z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>> ? C["queryExtensionSchema"] : undefined;
95
95
  outputMetaSchema: C["outputMetaSchema"] extends z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>> ? C["outputMetaSchema"] : undefined;
@@ -438,7 +438,7 @@ export declare const requestLogLeaves: readonly [{
438
438
  }>>>;
439
439
  }, {
440
440
  readonly method: "get";
441
- readonly path: "requests/:requestId";
441
+ readonly path: "/requests/:requestId";
442
442
  readonly cfg: Readonly<import("@emeryld/rrroutes-contract").Prettify<Omit<Readonly<import("@emeryld/rrroutes-contract").Prettify<Omit<{}, "queryExtensionSchema" | "outputMetaSchema" | "bodySchema" | "querySchema" | "paramsSchema" | "outputSchema" | Exclude<keyof (import("@emeryld/rrroutes-contract").Prettify<Omit<C_1, "queryExtensionSchema" | "outputMetaSchema"> & {
443
443
  queryExtensionSchema: C_1["queryExtensionSchema"] extends z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>> ? C_1["queryExtensionSchema"] : z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>;
444
444
  outputMetaSchema: C_1["outputMetaSchema"] extends z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>> ? C_1["outputMetaSchema"] : z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>;
@@ -44,7 +44,7 @@ export declare const scheduleHandlerBodySchema: z.ZodObject<{
44
44
  export type ScheduleHandlerBodyType = z.infer<typeof scheduleHandlerBodySchema>;
45
45
  export declare const schedulingLeaves: readonly [{
46
46
  readonly method: "get";
47
- readonly path: "schedulings";
47
+ readonly path: "/schedulings";
48
48
  readonly cfg: Readonly<import("@emeryld/rrroutes-contract").Prettify<Omit<{}, "queryExtensionSchema" | "outputMetaSchema" | "bodySchema" | "querySchema" | "paramsSchema" | "outputSchema" | Exclude<keyof (import("@emeryld/rrroutes-contract").Prettify<Omit<C, "queryExtensionSchema" | "outputMetaSchema"> & {
49
49
  queryExtensionSchema: C["queryExtensionSchema"] extends z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>> ? C["queryExtensionSchema"] : undefined;
50
50
  outputMetaSchema: C["outputMetaSchema"] extends z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>> ? C["outputMetaSchema"] : undefined;
@@ -276,7 +276,7 @@ export declare const schedulingLeaves: readonly [{
276
276
  }>>>;
277
277
  }, {
278
278
  readonly method: "get";
279
- readonly path: "schedulings/handlers";
279
+ readonly path: "/schedulings/handlers";
280
280
  readonly cfg: Readonly<import("@emeryld/rrroutes-contract").Prettify<Omit<Readonly<import("@emeryld/rrroutes-contract").Prettify<Omit<{}, "queryExtensionSchema" | "outputMetaSchema" | "bodySchema" | "querySchema" | "paramsSchema" | "outputSchema" | Exclude<keyof (import("@emeryld/rrroutes-contract").Prettify<Omit<C_1, "queryExtensionSchema" | "outputMetaSchema"> & {
281
281
  queryExtensionSchema: C_1["queryExtensionSchema"] extends z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>> ? C_1["queryExtensionSchema"] : undefined;
282
282
  outputMetaSchema: C_1["outputMetaSchema"] extends z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>> ? C_1["outputMetaSchema"] : undefined;
@@ -419,7 +419,7 @@ export declare const schedulingLeaves: readonly [{
419
419
  }>>;
420
420
  }, {
421
421
  readonly method: "post";
422
- readonly path: "schedulings/handlers";
422
+ readonly path: "/schedulings/handlers";
423
423
  readonly cfg: Readonly<import("@emeryld/rrroutes-contract").Prettify<Omit<Readonly<import("@emeryld/rrroutes-contract").Prettify<Omit<{}, "queryExtensionSchema" | "outputMetaSchema" | "bodySchema" | "querySchema" | "paramsSchema" | "outputSchema" | Exclude<keyof (import("@emeryld/rrroutes-contract").Prettify<Omit<import("@emeryld/rrroutes-contract").Prettify<Omit<C_2, "feed"> & {
424
424
  feed: false;
425
425
  }>, "queryExtensionSchema" | "outputMetaSchema"> & {
@@ -56,7 +56,7 @@ export declare const socketEmitResultSchema: z.ZodObject<{
56
56
  export type SocketEmitResult = z.infer<typeof socketEmitResultSchema>;
57
57
  export declare const socketLeaves: readonly [{
58
58
  readonly method: "get";
59
- readonly path: "sockets";
59
+ readonly path: "/sockets";
60
60
  readonly cfg: Readonly<import("@emeryld/rrroutes-contract").Prettify<Omit<{}, "queryExtensionSchema" | "outputMetaSchema" | "bodySchema" | "querySchema" | "paramsSchema" | "outputSchema" | Exclude<keyof (import("@emeryld/rrroutes-contract").Prettify<Omit<C, "queryExtensionSchema" | "outputMetaSchema"> & {
61
61
  queryExtensionSchema: C["queryExtensionSchema"] extends z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>> ? C["queryExtensionSchema"] : undefined;
62
62
  outputMetaSchema: C["outputMetaSchema"] extends z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>> ? C["outputMetaSchema"] : undefined;
@@ -314,7 +314,7 @@ export declare const socketLeaves: readonly [{
314
314
  }>>>;
315
315
  }, {
316
316
  readonly method: "post";
317
- readonly path: "sockets";
317
+ readonly path: "/sockets";
318
318
  readonly cfg: Readonly<import("@emeryld/rrroutes-contract").Prettify<Omit<{}, "queryExtensionSchema" | "outputMetaSchema" | "bodySchema" | "querySchema" | "paramsSchema" | "outputSchema" | Exclude<keyof (import("@emeryld/rrroutes-contract").Prettify<Omit<import("@emeryld/rrroutes-contract").Prettify<Omit<C_1, "feed"> & {
319
319
  feed: false;
320
320
  }>, "queryExtensionSchema" | "outputMetaSchema"> & {
@@ -0,0 +1,12 @@
1
+ type RequestSpec = {
2
+ method: string;
3
+ url: string;
4
+ headers?: Record<string, string>;
5
+ body?: string;
6
+ queryParams?: Record<string, string>;
7
+ };
8
+ export declare function generateCurl(spec: RequestSpec): string;
9
+ export declare function generateFetch(spec: RequestSpec): string;
10
+ export declare function generateAxios(spec: RequestSpec): string;
11
+ export declare function generatePython(spec: RequestSpec): string;
12
+ export {};
@@ -0,0 +1,11 @@
1
+ import { type Change } from 'diff';
2
+ import type { SerializableSchema } from '../types/types.endpoint.js';
3
+ export type DiffChange = Change;
4
+ export declare function diffJson(a: unknown, b: unknown): DiffChange[];
5
+ export type ValidationSeverity = 'valid' | 'missing' | 'extra' | 'typeMismatch';
6
+ export type ValidationEntry = {
7
+ path: string;
8
+ severity: ValidationSeverity;
9
+ message: string;
10
+ };
11
+ export declare function validateAgainstSchema(data: unknown, schema: SerializableSchema, basePath?: string): ValidationEntry[];
@@ -0,0 +1,17 @@
1
+ import type { FlowDefinition, FlowRunState } from '../stores/flowStore.js';
2
+ export type FlowRunnerOptions = {
3
+ flow: FlowDefinition;
4
+ variables: Record<string, unknown>;
5
+ fetchFn: (method: string, path: string, options: {
6
+ headers?: Record<string, string>;
7
+ body?: string;
8
+ queryParams?: Record<string, string>;
9
+ }) => Promise<{
10
+ status: number;
11
+ data: unknown;
12
+ headers: Record<string, string>;
13
+ }>;
14
+ onProgress: (state: Partial<FlowRunState>) => void;
15
+ signal?: AbortSignal;
16
+ };
17
+ export declare function runFlow(options: FlowRunnerOptions): Promise<FlowRunState>;
@@ -0,0 +1,4 @@
1
+ export declare function resolveTemplateString(template: string, variables: Record<string, unknown>): string;
2
+ export declare function resolveTemplateObject<T>(obj: T, variables: Record<string, unknown>): T;
3
+ export declare function hasTemplateVariables(text: string): boolean;
4
+ export declare function extractTemplateVariables(text: string): string[];
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@emeryld/rrroutes-openapi",
3
- "version": "2.6.1",
3
+ "version": "2.6.5",
4
4
  "private": false,
5
5
  "type": "module",
6
6
  "main": "dist/index.cjs",
@@ -17,31 +17,34 @@
17
17
  "dist"
18
18
  ],
19
19
  "dependencies": {
20
- "@emeryld/rrroutes-client": "^2.5.3",
21
- "@emeryld/rrroutes-contract": "^2.5.2",
20
+ "@emeryld/rrroutes-client": "^2.5.5",
21
+ "@emeryld/rrroutes-contract": "^2.5.6",
22
22
  "@emotion/cache": "^11.14.0",
23
23
  "@emotion/react": "^11.14.0",
24
24
  "@emotion/styled": "^11.14.1",
25
- "@mui/icons-material": "^7.3.6",
26
- "@mui/material": "^7.3.6",
27
- "@tanstack/react-query": "^5.90.12",
25
+ "@mui/icons-material": "^7.3.7",
26
+ "@mui/material": "^7.3.7",
27
+ "@tanstack/react-query": "^5.90.20",
28
+ "@xyflow/react": "^12.10.0",
29
+ "diff": "^8.0.3",
28
30
  "react": "^18.3.1",
29
31
  "react-dom": "^18.3.1",
30
- "react-router-dom": "^7.11.0",
31
- "recharts": "^3.6.0",
32
+ "react-router-dom": "^7.13.0",
33
+ "recharts": "^3.7.0",
32
34
  "socket.io-client": "^4.8.3",
33
- "zod": "^4.2.1"
35
+ "zod": "^4.3.6"
34
36
  },
35
37
  "peerDependencies": {
36
38
  "express": "^5.1.0"
37
39
  },
38
40
  "devDependencies": {
39
41
  "@jest/globals": "^30.2.0",
42
+ "@types/diff": "^8.0.0",
40
43
  "@types/express": "^5.0.6",
41
- "@types/react": "^18.3.27",
44
+ "@types/react": "^18.3.28",
42
45
  "@types/react-dom": "^18.3.7",
43
46
  "vite": "^6.4.1",
44
- "vite-plugin-terminal": "^1.3.0"
47
+ "vite-plugin-terminal": "^1.4.0"
45
48
  },
46
49
  "repository": {
47
50
  "type": "git",