@scalar/api-client 2.25.0 → 2.26.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.
Files changed (68) hide show
  1. package/CHANGELOG.md +39 -0
  2. package/dist/components/DataTable/DataTableCheckbox.vue.d.ts.map +1 -1
  3. package/dist/components/DataTable/DataTableCheckbox.vue.js +8 -8
  4. package/dist/style.css +1 -1
  5. package/dist/v2/blocks/operation-block/helpers/build-request-body.d.ts.map +1 -1
  6. package/dist/v2/blocks/operation-block/helpers/build-request-body.js +28 -19
  7. package/dist/v2/blocks/operation-code-sample/components/OperationCodeSample.vue.d.ts.map +1 -1
  8. package/dist/v2/blocks/operation-code-sample/components/OperationCodeSample.vue.js +1 -1
  9. package/dist/v2/blocks/operation-code-sample/components/OperationCodeSample.vue2.js +1 -1
  10. package/dist/v2/blocks/request-block/components/RequestCodeSnippet.vue.d.ts.map +1 -1
  11. package/dist/v2/blocks/request-block/components/RequestCodeSnippet.vue.js +18 -18
  12. package/dist/v2/blocks/request-block/helpers/get-default-headers.js +1 -1
  13. package/dist/v2/blocks/response-block/components/ResponseBodyRaw.vue.d.ts.map +1 -1
  14. package/dist/v2/blocks/response-block/components/ResponseBodyRaw.vue.js +2 -2
  15. package/dist/v2/blocks/response-block/components/ResponseBodyRaw.vue2.js +19 -19
  16. package/dist/v2/blocks/scalar-auth-selector-block/components/AuthSelector.vue.d.ts.map +1 -1
  17. package/dist/v2/blocks/scalar-auth-selector-block/components/AuthSelector.vue.js +26 -26
  18. package/dist/v2/components/callout/Callout.vue.d.ts +17 -0
  19. package/dist/v2/components/callout/Callout.vue.d.ts.map +1 -0
  20. package/dist/v2/components/callout/Callout.vue.js +7 -0
  21. package/dist/v2/components/callout/Callout.vue2.js +43 -0
  22. package/dist/v2/components/data-table/DataTableCheckbox.vue.d.ts.map +1 -1
  23. package/dist/v2/components/data-table/DataTableCheckbox.vue.js +8 -8
  24. package/dist/v2/components/sidebar/Sidebar.vue.d.ts.map +1 -1
  25. package/dist/v2/components/sidebar/Sidebar.vue.js +40 -41
  26. package/dist/v2/features/app/App.vue.d.ts +2 -2
  27. package/dist/v2/features/app/App.vue.d.ts.map +1 -1
  28. package/dist/v2/features/app/App.vue.js +84 -89
  29. package/dist/v2/features/app/app-events.d.ts +1 -1
  30. package/dist/v2/features/app/app-events.d.ts.map +1 -1
  31. package/dist/v2/features/app/app-events.js +10 -10
  32. package/dist/v2/features/app/app-state.d.ts +36 -87
  33. package/dist/v2/features/app/app-state.d.ts.map +1 -1
  34. package/dist/v2/features/app/app-state.js +339 -330
  35. package/dist/v2/features/app/components/DesktopTabs.vue.d.ts.map +1 -1
  36. package/dist/v2/features/app/components/DesktopTabs.vue.js +1 -1
  37. package/dist/v2/features/app/helpers/create-api-client-app.d.ts +2 -2
  38. package/dist/v2/features/app/helpers/create-api-client-app.d.ts.map +1 -1
  39. package/dist/v2/features/app/helpers/create-api-client-app.js +9 -9
  40. package/dist/v2/features/app/helpers/get-route-param.d.ts +7 -0
  41. package/dist/v2/features/app/helpers/get-route-param.d.ts.map +1 -0
  42. package/dist/v2/features/app/helpers/get-route-param.js +9 -0
  43. package/dist/v2/features/app/index.d.ts +1 -1
  44. package/dist/v2/features/app/index.d.ts.map +1 -1
  45. package/dist/v2/features/app/index.js +12 -12
  46. package/dist/v2/features/collection/DocumentCollection.vue.d.ts.map +1 -1
  47. package/dist/v2/features/collection/DocumentCollection.vue.js +72 -65
  48. package/dist/v2/features/command-palette/components/CommandPaletteImport.vue.d.ts +29 -2
  49. package/dist/v2/features/command-palette/components/CommandPaletteImport.vue.d.ts.map +1 -1
  50. package/dist/v2/features/command-palette/components/CommandPaletteImport.vue.js +110 -106
  51. package/dist/v2/features/command-palette/helpers/load-document-from-source.d.ts +5 -1
  52. package/dist/v2/features/command-palette/helpers/load-document-from-source.d.ts.map +1 -1
  53. package/dist/v2/features/command-palette/helpers/load-document-from-source.js +41 -23
  54. package/dist/v2/features/command-palette/hooks/use-command-palette-state.d.ts +41 -8
  55. package/dist/v2/features/command-palette/hooks/use-command-palette-state.d.ts.map +1 -1
  56. package/dist/v2/features/command-palette/index.d.ts +1 -2
  57. package/dist/v2/features/command-palette/index.d.ts.map +1 -1
  58. package/dist/v2/features/command-palette/index.js +4 -6
  59. package/dist/v2/features/operation/Operation.vue.js +1 -1
  60. package/dist/views/Request/ResponseSection/ResponseBodyRaw.vue.d.ts.map +1 -1
  61. package/dist/views/Request/ResponseSection/ResponseBodyRaw.vue.js +2 -2
  62. package/dist/views/Request/ResponseSection/ResponseBodyRaw.vue2.js +24 -23
  63. package/dist/views/Request/ResponseSection/ResponseEmpty.vue2.js +1 -1
  64. package/package.json +9 -9
  65. package/dist/v2/features/app/components/WebTopNav.vue.d.ts +0 -41
  66. package/dist/v2/features/app/components/WebTopNav.vue.d.ts.map +0 -1
  67. package/dist/v2/features/app/components/WebTopNav.vue.js +0 -27
  68. package/dist/v2/features/app/components/WebTopNav.vue2.js +0 -4
@@ -1,5 +1,7 @@
1
- import type { ScalarListboxOption } from '@scalar/components';
1
+ import type { ScalarListboxOption, WorkspaceGroup } from '@scalar/components';
2
2
  import type { HttpMethod } from '@scalar/helpers/http/http-methods';
3
+ import type { LoaderPlugin } from '@scalar/json-magic/bundle';
4
+ import { createSidebarState } from '@scalar/sidebar';
3
5
  import { type WorkspaceStore } from '@scalar/workspace-store/client';
4
6
  import { type WorkspaceEventBus } from '@scalar/workspace-store/events';
5
7
  import type { WorkspaceDocument } from '@scalar/workspace-store/schemas';
@@ -8,75 +10,6 @@ import type { Tab } from '@scalar/workspace-store/schemas/extensions/workspace/x
8
10
  import type { TraversedEntry } from '@scalar/workspace-store/schemas/navigation';
9
11
  import { type ComputedRef, type Ref, type ShallowRef } from 'vue';
10
12
  import type { RouteLocationNormalizedGeneric, Router } from 'vue-router';
11
- type WorkspaceOption = ScalarListboxOption & {
12
- teamUid: string;
13
- namespace: string;
14
- slug: string;
15
- };
16
- /**
17
- * Navigates to the overview page of the specified workspace.
18
- * Updates the route based on the given namespace and slug.
19
- *
20
- * @param namespace - The workspace namespace.
21
- * @param slug - The unique workspace slug (identifier).
22
- */
23
- declare const navigateToWorkspace: (namespace?: string, slug?: string) => Promise<void>;
24
- /**
25
- * Creates a new workspace with the provided name.
26
- * - Generates a unique slug for the workspace (uses the provided slug if it is unique, otherwise generates a unique slug).
27
- * - Adds a default blank document ("drafts") to the workspace.
28
- * - Persists the workspace and navigates to it.
29
- *
30
- * Example usage:
31
- * await createWorkspace({ name: 'My Awesome API' })
32
- * // -> Navigates to /workspace/my-awesome-api (if available)
33
- */
34
- declare const createWorkspace: ({ teamUid, namespace, slug, name, }: {
35
- teamUid?: string;
36
- namespace?: string;
37
- slug?: string;
38
- name: string;
39
- }) => Promise<{
40
- name: string;
41
- namespace: string;
42
- slug: string;
43
- teamUid: string;
44
- } | undefined>;
45
- declare const sidebarState: {
46
- items: ComputedRef<TraversedEntry[]>;
47
- index: ComputedRef<Map<string, TraversedEntry & {
48
- parent?: TraversedEntry | undefined;
49
- }>>;
50
- selectedItems: import("vue").Ref<Record<string, boolean>, Record<string, boolean>>;
51
- expandedItems: import("vue").Ref<Record<string, boolean>, Record<string, boolean>>;
52
- selectedItem: import("vue").Ref<string | null, string | null>;
53
- setSelected: (id: string | null) => void;
54
- setExpanded: (id: string, value: boolean) => void;
55
- isExpanded: (id: string) => boolean;
56
- isSelected: (id: string) => boolean;
57
- getEntryById: (id: string) => (TraversedEntry & {
58
- parent?: TraversedEntry | undefined;
59
- }) | undefined;
60
- reset: () => void;
61
- };
62
- /**
63
- * Looks up a sidebar entry by its unique API location.
64
- * - First tries to find an entry matching all provided properties (including example).
65
- * - If not found, falls back to matching only the operation (ignores example field).
66
- * This allows resolving either examples, operations, or documents as appropriate.
67
- *
68
- * @param location - Object specifying the document name, path, method, and optional example name.
69
- * @returns The matching sidebar entry, or undefined if none found.
70
- *
71
- * Example:
72
- * const entry = getEntryByLocation({
73
- * document: 'pets',
74
- * path: '/pets',
75
- * method: 'get',
76
- * example: 'default',
77
- * })
78
- */
79
- declare const getEntryByLocation: GetEntryByLocation;
80
13
  export type GetEntryByLocation = (location: {
81
14
  document: string;
82
15
  path?: string;
@@ -85,15 +18,11 @@ export type GetEntryByLocation = (location: {
85
18
  }) => (TraversedEntry & {
86
19
  parent?: TraversedEntry | undefined;
87
20
  }) | undefined;
88
- /**
89
- * Handles item selection from the sidebar and routes navigation accordingly.
90
- *
91
- * Example:
92
- * handleSelectItem('id-of-entry')
93
- */
94
- declare const handleSelectItem: (id: string) => Promise<void | import("vue-router").NavigationFailure | undefined> | undefined;
95
- /** Handler for sidebar width changes. */
96
- declare const handleSidebarWidthUpdate: (width: number) => void | undefined;
21
+ type WorkspaceOption = ScalarListboxOption & {
22
+ teamUid: string;
23
+ namespace: string;
24
+ slug: string;
25
+ };
97
26
  /** Defines the overall application state structure and its main feature modules */
98
27
  export type AppState = {
99
28
  /** The workspace store */
@@ -101,17 +30,17 @@ export type AppState = {
101
30
  /** The sidebar management */
102
31
  sidebar: {
103
32
  /** The sidebar state */
104
- state: typeof sidebarState;
33
+ state: ReturnType<typeof createSidebarState<TraversedEntry>>;
105
34
  /** The width of the sidebar */
106
35
  width: ComputedRef<number>;
107
36
  /** Whether the sidebar is open */
108
37
  isOpen: Ref<boolean>;
109
38
  /** Handles the selection of an item in the sidebar */
110
- handleSelectItem: typeof handleSelectItem;
39
+ handleSelectItem: (id: string) => void;
111
40
  /** Handles the width update of the sidebar */
112
- handleSidebarWidthUpdate: typeof handleSidebarWidthUpdate;
41
+ handleSidebarWidthUpdate: (width: number) => void;
113
42
  /** Gets the entry by location */
114
- getEntryByLocation: typeof getEntryByLocation;
43
+ getEntryByLocation: GetEntryByLocation;
115
44
  };
116
45
  /** The tabs management */
117
46
  tabs: {
@@ -125,25 +54,40 @@ export type AppState = {
125
54
  /** The workspace management */
126
55
  workspace: {
127
56
  /** Creates a new workspace and navigates to it */
128
- create: typeof createWorkspace;
57
+ create: (payload: {
58
+ teamUid?: string;
59
+ namespace?: string;
60
+ slug?: string;
61
+ name: string;
62
+ }) => Promise<{
63
+ name: string;
64
+ namespace: string;
65
+ slug: string;
66
+ teamUid: string;
67
+ } | undefined>;
129
68
  /** All workspace list */
130
69
  workspaceList: Ref<WorkspaceOption[]>;
131
70
  /** Filtered workspace list, based on the current teamUid */
132
71
  filteredWorkspaceList: ComputedRef<WorkspaceOption[]>;
72
+ /**
73
+ * Groups workspaces into team and local categories for display in the workspace picker.
74
+ * Team workspaces are shown first (when not on local team), followed by local workspaces.
75
+ */
76
+ workspaceGroups: ComputedRef<WorkspaceGroup[]>;
133
77
  /** The currently active workspace */
134
78
  activeWorkspace: ShallowRef<{
135
79
  id: string;
136
80
  label: string;
137
81
  } | null>;
138
82
  /** Navigates to the specified workspace */
139
- navigateToWorkspace: typeof navigateToWorkspace;
83
+ navigateToWorkspace: (namespace?: string, slug?: string) => Promise<void>;
140
84
  /** Whether the workspace page is open */
141
85
  isOpen: ComputedRef<boolean>;
142
86
  };
143
87
  /** The workspace event bus for handling workspace-level events */
144
88
  eventBus: WorkspaceEventBus;
145
89
  /** The router instance */
146
- router: ShallowRef<Router | null>;
90
+ router: Router;
147
91
  /** The current route derived from the router */
148
92
  currentRoute: Ref<RouteLocationNormalizedGeneric | null>;
149
93
  /** Whether the workspace is currently syncing */
@@ -169,7 +113,12 @@ export type AppState = {
169
113
  environment: ComputedRef<XScalarEnvironment>;
170
114
  /** The currently active document */
171
115
  document: ComputedRef<WorkspaceDocument | null>;
116
+ /** Whether the current color mode is dark */
117
+ isDarkMode: ComputedRef<boolean>;
172
118
  };
173
- export declare function useAppState(_router: Router): AppState;
119
+ export declare const createAppState: ({ router, fileLoader, }: {
120
+ router: Router;
121
+ fileLoader?: LoaderPlugin;
122
+ }) => Promise<AppState>;
174
123
  export {};
175
124
  //# sourceMappingURL=app-state.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"app-state.d.ts","sourceRoot":"","sources":["../../../../src/v2/features/app/app-state.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"app-state.d.ts","sourceRoot":"","sources":["../../../../src/v2/features/app/app-state.ts"],"names":[],"mappings":"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"}