@scalar/api-client 0.4.0 → 0.5.1

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 (62) hide show
  1. package/README.md +62 -0
  2. package/dist/components/ApiClient/Request/RequestBody.vue.d.ts.map +1 -1
  3. package/dist/components/ApiClient/Request/RequestHeaders.vue.d.ts +0 -2
  4. package/dist/components/ApiClient/Request/RequestHeaders.vue.d.ts.map +1 -1
  5. package/dist/components/ApiClient/Request/RequestQuery.vue.d.ts +0 -2
  6. package/dist/components/ApiClient/Request/RequestQuery.vue.d.ts.map +1 -1
  7. package/dist/components/ApiClient/Request/RequestVariables.vue.d.ts +2 -4
  8. package/dist/components/ApiClient/Request/RequestVariables.vue.d.ts.map +1 -1
  9. package/dist/components/ApiClient/Response/ResponseBody.vue.d.ts.map +1 -1
  10. package/dist/helpers/concatenateUrlAndPath.d.ts +5 -0
  11. package/dist/helpers/concatenateUrlAndPath.d.ts.map +1 -0
  12. package/dist/helpers/index.d.ts +6 -1
  13. package/dist/helpers/index.d.ts.map +1 -1
  14. package/dist/helpers/normalizePath.d.ts +5 -0
  15. package/dist/helpers/normalizePath.d.ts.map +1 -0
  16. package/dist/helpers/normalizeRequestMethod.d.ts +5 -0
  17. package/dist/helpers/normalizeRequestMethod.d.ts.map +1 -0
  18. package/dist/helpers/normalizeUrl.d.ts +5 -0
  19. package/dist/helpers/normalizeUrl.d.ts.map +1 -0
  20. package/dist/helpers/replaceVariables.d.ts +5 -0
  21. package/dist/helpers/replaceVariables.d.ts.map +1 -0
  22. package/dist/helpers/sendRequest.d.ts +2 -2
  23. package/dist/helpers/sendRequest.d.ts.map +1 -1
  24. package/dist/index.d.ts +0 -1
  25. package/dist/index.d.ts.map +1 -1
  26. package/dist/index.js +374 -4181
  27. package/dist/stores/apiClientRequestStore.d.ts +8 -8
  28. package/dist/types.d.ts +7 -5
  29. package/dist/types.d.ts.map +1 -1
  30. package/package.json +26 -21
  31. package/src/components/ApiClient/AddressBar.vue +1 -1
  32. package/src/components/ApiClient/Request/Request.vue +1 -1
  33. package/src/components/ApiClient/Request/RequestBody.vue +3 -2
  34. package/src/components/ApiClient/Request/RequestHeaders.vue +2 -2
  35. package/src/components/ApiClient/Request/RequestQuery.vue +2 -2
  36. package/src/components/ApiClient/Request/RequestVariables.vue +3 -3
  37. package/src/components/ApiClient/Response/ResponseBody.vue +3 -2
  38. package/src/helpers/concatenateUrlAndPath.test.ts +27 -0
  39. package/src/helpers/concatenateUrlAndPath.ts +13 -0
  40. package/src/helpers/index.ts +6 -1
  41. package/src/helpers/normalizePath.test.ts +17 -0
  42. package/src/helpers/normalizePath.ts +16 -0
  43. package/src/helpers/normalizeRequestMethod.test.ts +29 -0
  44. package/src/helpers/normalizeRequestMethod.ts +43 -0
  45. package/src/helpers/normalizeUrl.test.ts +25 -0
  46. package/src/helpers/normalizeUrl.ts +24 -0
  47. package/src/helpers/replaceVariables.test.ts +13 -0
  48. package/src/helpers/replaceVariables.ts +11 -0
  49. package/src/helpers/sendRequest.test.ts +50 -0
  50. package/src/helpers/sendRequest.ts +43 -32
  51. package/src/index.ts +0 -1
  52. package/src/types.ts +9 -5
  53. package/dist/components/CodeMirror/CodeMirror.vue.d.ts +0 -56
  54. package/dist/components/CodeMirror/CodeMirror.vue.d.ts.map +0 -1
  55. package/dist/components/CodeMirror/extensions/variables.d.ts +0 -6
  56. package/dist/components/CodeMirror/extensions/variables.d.ts.map +0 -1
  57. package/dist/components/CodeMirror/index.d.ts +0 -2
  58. package/dist/components/CodeMirror/index.d.ts.map +0 -1
  59. package/src/components/CodeMirror/CodeMirror.vue +0 -232
  60. package/src/components/CodeMirror/extensions/variables.ts +0 -41
  61. package/src/components/CodeMirror/index.ts +0 -1
  62. package/src/hooks/useOperation.test.ts +0 -7
package/README.md ADDED
@@ -0,0 +1,62 @@
1
+ # Scalar API Client
2
+
3
+ ![Version](https://img.shields.io/npm/v/%40scalar/api-client)
4
+ ![Downloads](https://img.shields.io/npm/dm/%40scalar/api-client)
5
+ ![License](https://img.shields.io/npm/l/%40scalar%2Fapi-client)
6
+ [![Discord](https://img.shields.io/discord/1135330207960678410?style=flat&color=5865F2)](https://discord.gg/mw6FQRPh)
7
+
8
+ ## Installation
9
+
10
+ ```bash
11
+ npm install @scalar/api-client
12
+ ```
13
+
14
+ ## Usage
15
+
16
+ ```vue
17
+ <script setup>
18
+ import { ApiClient } from '@scalar/api-client'
19
+ </script>
20
+
21
+ <template>
22
+ <ApiClient />
23
+ </template>
24
+ ```
25
+
26
+ ## Props
27
+
28
+ ### proxyUrl?: string
29
+
30
+ Pass an URL of [a request proxy](https://github.com/scalar/scalar/tree/main/packages/api-client-proxy) to avoid CORS issues.
31
+
32
+ ## Composable
33
+
34
+ You can use `useApiClientRequestStore()` to interact with the API client.
35
+
36
+ ### readOnly
37
+
38
+ ```js
39
+ const { readOnly } = useApiClientRequestStore()
40
+
41
+ readOnly.value = false
42
+ ```
43
+
44
+ ### activeRequest
45
+
46
+ ```js
47
+ const { activeRequest } = useApiClientRequestStore()
48
+
49
+ console.log(activeRequest)
50
+ ```
51
+
52
+ ### setActiveRequest
53
+
54
+ ```js
55
+ const { setActiveRequest } = useApiClientRequestStore()
56
+
57
+ setActiveRequest({
58
+ url: 'https://echo.scalar.com'
59
+ type: 'GET,
60
+ path: '/foobar'
61
+ })
62
+ ```
@@ -1 +1 @@
1
- {"version":3,"file":"RequestBody.vue.d.ts","sourceRoot":"","sources":["../../../../src/components/ApiClient/Request/RequestBody.vue.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAiIA,wBAAkD"}
1
+ {"version":3,"file":"RequestBody.vue.d.ts","sourceRoot":"","sources":["../../../../src/components/ApiClient/Request/RequestBody.vue.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAkIA,wBAAkD"}
@@ -1,12 +1,10 @@
1
1
  declare const _default: import("vue").DefineComponent<{
2
2
  headers: {
3
3
  type: import("vue").PropType<any[]>;
4
- required: true;
5
4
  };
6
5
  }, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
7
6
  headers: {
8
7
  type: import("vue").PropType<any[]>;
9
- required: true;
10
8
  };
11
9
  }>>, {}, {}>;
12
10
  export default _default;
@@ -1 +1 @@
1
- {"version":3,"file":"RequestHeaders.vue.d.ts","sourceRoot":"","sources":["../../../../src/components/ApiClient/Request/RequestHeaders.vue.ts"],"names":[],"mappings":";;;;;;;;;;;AAyFA,wBAAkD"}
1
+ {"version":3,"file":"RequestHeaders.vue.d.ts","sourceRoot":"","sources":["../../../../src/components/ApiClient/Request/RequestHeaders.vue.ts"],"names":[],"mappings":";;;;;;;;;AAyFA,wBAAkD"}
@@ -1,12 +1,10 @@
1
1
  declare const _default: import("vue").DefineComponent<{
2
2
  queries: {
3
3
  type: import("vue").PropType<import("../../../types").BaseParameter[]>;
4
- required: true;
5
4
  };
6
5
  }, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
7
6
  queries: {
8
7
  type: import("vue").PropType<import("../../../types").BaseParameter[]>;
9
- required: true;
10
8
  };
11
9
  }>>, {}, {}>;
12
10
  export default _default;
@@ -1 +1 @@
1
- {"version":3,"file":"RequestQuery.vue.d.ts","sourceRoot":"","sources":["../../../../src/components/ApiClient/Request/RequestQuery.vue.ts"],"names":[],"mappings":";;;;;;;;;;;AA0FA,wBAAkD"}
1
+ {"version":3,"file":"RequestQuery.vue.d.ts","sourceRoot":"","sources":["../../../../src/components/ApiClient/Request/RequestQuery.vue.ts"],"names":[],"mappings":";;;;;;;;;AA0FA,wBAAkD"}
@@ -1,13 +1,11 @@
1
1
  import type { BaseParameter } from '../../../types';
2
2
  declare const _default: import("vue").DefineComponent<{
3
- paths: {
3
+ variables: {
4
4
  type: import("vue").PropType<BaseParameter[]>;
5
- required: true;
6
5
  };
7
6
  }, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
8
- paths: {
7
+ variables: {
9
8
  type: import("vue").PropType<BaseParameter[]>;
10
- required: true;
11
9
  };
12
10
  }>>, {}, {}>;
13
11
  export default _default;
@@ -1 +1 @@
1
- {"version":3,"file":"RequestVariables.vue.d.ts","sourceRoot":"","sources":["../../../../src/components/ApiClient/Request/RequestVariables.vue.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAA;;;;;;;;;;;;AAwFnD,wBAAkD"}
1
+ {"version":3,"file":"RequestVariables.vue.d.ts","sourceRoot":"","sources":["../../../../src/components/ApiClient/Request/RequestVariables.vue.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAA;;;;;;;;;;AAwFnD,wBAAkD"}
@@ -1 +1 @@
1
- {"version":3,"file":"ResponseBody.vue.d.ts","sourceRoot":"","sources":["../../../../src/components/ApiClient/Response/ResponseBody.vue.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AA8FA,wBAAkD"}
1
+ {"version":3,"file":"ResponseBody.vue.d.ts","sourceRoot":"","sources":["../../../../src/components/ApiClient/Response/ResponseBody.vue.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AA+FA,wBAAkD"}
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Make sure the URL and path are concatenated correctly.
3
+ */
4
+ export declare const concatenateUrlAndPath: (url: string, path?: string) => string;
5
+ //# sourceMappingURL=concatenateUrlAndPath.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"concatenateUrlAndPath.d.ts","sourceRoot":"","sources":["../../src/helpers/concatenateUrlAndPath.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,eAAO,MAAM,qBAAqB,QAAS,MAAM,SAAS,MAAM,WAS/D,CAAA"}
@@ -1,6 +1,11 @@
1
+ export { concatenateUrlAndPath } from './concatenateUrlAndPath';
1
2
  export { createPlaceholderRequest } from './createPlaceholderRequest';
2
- export { generateRequest } from './generateRequest';
3
3
  export { generateParameters } from './generateParameters';
4
+ export { generateRequest } from './generateRequest';
4
5
  export { mapFromArray } from './mapFromArray';
6
+ export { normalizePath } from './normalizePath';
7
+ export { normalizeRequestMethod } from './normalizeRequestMethod';
8
+ export { normalizeUrl } from './normalizeUrl';
9
+ export { replaceVariables } from './replaceVariables';
5
10
  export { sendRequest } from './sendRequest';
6
11
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/helpers/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAA;AACrE,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAA;AACnD,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAA;AACzD,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAC7C,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/helpers/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAA;AAC/D,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAA;AACrE,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAA;AACzD,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAA;AACnD,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAC7C,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAC/C,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAA;AACjE,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAC7C,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAA;AACrD,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAA"}
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Normalizes a path by removing leading slashes.
3
+ */
4
+ export declare const normalizePath: (path?: string) => string;
5
+ //# sourceMappingURL=normalizePath.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"normalizePath.d.ts","sourceRoot":"","sources":["../../src/helpers/normalizePath.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,eAAO,MAAM,aAAa,UAAW,MAAM,WAY1C,CAAA"}
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Get a normalized request method (e.g. GET, POST, etc.)
3
+ */
4
+ export declare const normalizeRequestMethod: (method?: string) => string;
5
+ //# sourceMappingURL=normalizeRequestMethod.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"normalizeRequestMethod.d.ts","sourceRoot":"","sources":["../../src/helpers/normalizeRequestMethod.ts"],"names":[],"mappings":"AAcA;;GAEG;AACH,eAAO,MAAM,sBAAsB,YAAa,MAAM,WAyBrD,CAAA"}
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Normalizes a URL by trimming it and adding http:// as the default prefix.
3
+ */
4
+ export declare const normalizeUrl: (url?: string) => string;
5
+ //# sourceMappingURL=normalizeUrl.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"normalizeUrl.d.ts","sourceRoot":"","sources":["../../src/helpers/normalizeUrl.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,eAAO,MAAM,YAAY,SAAU,MAAM,WAoBxC,CAAA"}
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Replaces variables in a url with the values provided.
3
+ */
4
+ export declare const replaceVariables: (url: string, variables: Record<string, string | number>) => string;
5
+ //# sourceMappingURL=replaceVariables.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"replaceVariables.d.ts","sourceRoot":"","sources":["../../src/helpers/replaceVariables.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,eAAO,MAAM,gBAAgB,QACtB,MAAM,aACA,OAAO,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,WAK3C,CAAA"}
@@ -1,6 +1,6 @@
1
- import type { ClientRequestConfig, RequestResult } from '../types';
1
+ import type { RequestResult, SendRequestConfig } from '../types';
2
2
  /**
3
3
  * Send a request via the proxy
4
4
  */
5
- export declare function sendRequest(request: ClientRequestConfig, proxyUrl: string): Promise<RequestResult | null>;
5
+ export declare function sendRequest(request: SendRequestConfig, proxyUrl?: string): Promise<RequestResult | null>;
6
6
  //# sourceMappingURL=sendRequest.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"sendRequest.d.ts","sourceRoot":"","sources":["../../src/helpers/sendRequest.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EACV,mBAAmB,EAEnB,aAAa,EACd,MAAM,UAAU,CAAA;AAcjB;;GAEG;AACH,wBAAsB,WAAW,CAC/B,OAAO,EAAE,mBAAmB,EAC5B,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,aAAa,GAAG,IAAI,CAAC,CAiE/B"}
1
+ {"version":3,"file":"sendRequest.d.ts","sourceRoot":"","sources":["../../src/helpers/sendRequest.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAGV,aAAa,EACb,iBAAiB,EAClB,MAAM,UAAU,CAAA;AAcjB;;GAEG;AACH,wBAAsB,WAAW,CAC/B,OAAO,EAAE,iBAAiB,EAC1B,QAAQ,CAAC,EAAE,MAAM,GAChB,OAAO,CAAC,aAAa,GAAG,IAAI,CAAC,CA4E/B"}
package/dist/index.d.ts CHANGED
@@ -1,5 +1,4 @@
1
1
  export { ApiClient } from './components/ApiClient';
2
- export { CodeMirror } from './components/CodeMirror';
3
2
  export * from './helpers';
4
3
  export * from './hooks';
5
4
  export * from './stores/apiClientStore';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAA;AAClD,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAA;AAEpD,cAAc,WAAW,CAAA;AACzB,cAAc,SAAS,CAAA;AACvB,cAAc,yBAAyB,CAAA;AACvC,cAAc,gCAAgC,CAAA;AAC9C,cAAc,SAAS,CAAA;AACvB,cAAc,YAAY,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAA;AAElD,cAAc,WAAW,CAAA;AACzB,cAAc,SAAS,CAAA;AACvB,cAAc,yBAAyB,CAAA;AACvC,cAAc,gCAAgC,CAAA;AAC9C,cAAc,SAAS,CAAA;AACvB,cAAc,YAAY,CAAA"}