@scalar/snippetz 0.3.0 → 0.4.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 (87) hide show
  1. package/README.md +1 -1
  2. package/dist/clients.d.ts.map +1 -1
  3. package/dist/clients.js +9 -1
  4. package/dist/clients.js.map +2 -2
  5. package/dist/plugins/python/httpx/async.d.ts +6 -0
  6. package/dist/plugins/python/httpx/async.d.ts.map +1 -0
  7. package/dist/plugins/python/httpx/async.js +16 -0
  8. package/dist/plugins/python/httpx/async.js.map +7 -0
  9. package/dist/plugins/python/httpx/index.d.ts +3 -0
  10. package/dist/plugins/python/httpx/index.d.ts.map +1 -0
  11. package/dist/plugins/python/httpx/index.js +3 -0
  12. package/dist/plugins/python/httpx/index.js.map +7 -0
  13. package/dist/plugins/python/httpx/sync.d.ts +6 -0
  14. package/dist/plugins/python/httpx/sync.d.ts.map +1 -0
  15. package/dist/plugins/python/httpx/sync.js +13 -0
  16. package/dist/plugins/python/httpx/sync.js.map +7 -0
  17. package/dist/plugins/python/requests/requests.d.ts.map +1 -1
  18. package/dist/plugins/python/requests/requests.js +2 -93
  19. package/dist/plugins/python/requests/requests.js.map +3 -3
  20. package/dist/plugins/python/requestsLike.d.ts +3 -0
  21. package/dist/plugins/python/requestsLike.d.ts.map +1 -0
  22. package/dist/plugins/python/requestsLike.js +120 -0
  23. package/dist/plugins/python/requestsLike.js.map +7 -0
  24. package/dist/plugins/rust/reqwest/index.d.ts +2 -0
  25. package/dist/plugins/rust/reqwest/index.d.ts.map +1 -0
  26. package/dist/plugins/rust/reqwest/index.js +2 -0
  27. package/dist/plugins/rust/reqwest/index.js.map +7 -0
  28. package/dist/plugins/rust/reqwest/reqwest.d.ts +6 -0
  29. package/dist/plugins/rust/reqwest/reqwest.d.ts.map +1 -0
  30. package/dist/plugins/rust/reqwest/reqwest.js +90 -0
  31. package/dist/plugins/rust/reqwest/reqwest.js.map +7 -0
  32. package/dist/plugins/rust/rustString.d.ts +9 -0
  33. package/dist/plugins/rust/rustString.d.ts.map +1 -0
  34. package/dist/plugins/rust/rustString.js +10 -0
  35. package/dist/plugins/rust/rustString.js.map +7 -0
  36. package/dist/plugins/shell/curl/curl.js +1 -1
  37. package/dist/plugins/shell/curl/curl.js.map +2 -2
  38. package/dist/snippetz.d.ts +2 -2
  39. package/dist/utils/convertWithHttpSnippetLite.d.ts +1 -1
  40. package/dist/utils/convertWithHttpSnippetLite.js.map +1 -1
  41. package/package.json +14 -4
  42. package/dist/plugins/c/libcurl/libcurl.test.js +0 -208
  43. package/dist/plugins/c/libcurl/libcurl.test.js.map +0 -7
  44. package/dist/plugins/clojure/clj_http/clj_http.test.js +0 -151
  45. package/dist/plugins/clojure/clj_http/clj_http.test.js.map +0 -7
  46. package/dist/plugins/dart/http/http.test.js +0 -550
  47. package/dist/plugins/dart/http/http.test.js.map +0 -7
  48. package/dist/plugins/go/native/native.test.js +0 -366
  49. package/dist/plugins/go/native/native.test.js.map +0 -7
  50. package/dist/plugins/http/http11/http11.test.js +0 -175
  51. package/dist/plugins/http/http11/http11.test.js.map +0 -7
  52. package/dist/plugins/java/okhttp/okhttp.test.js +0 -164
  53. package/dist/plugins/java/okhttp/okhttp.test.js.map +0 -7
  54. package/dist/plugins/js/fetch/fetch.test.js +0 -214
  55. package/dist/plugins/js/fetch/fetch.test.js.map +0 -7
  56. package/dist/plugins/js/ofetch/ofetch.test.js +0 -126
  57. package/dist/plugins/js/ofetch/ofetch.test.js.map +0 -7
  58. package/dist/plugins/kotlin/okhttp/okhttp.test.js +0 -164
  59. package/dist/plugins/kotlin/okhttp/okhttp.test.js.map +0 -7
  60. package/dist/plugins/node/fetch/fetch.test.js +0 -200
  61. package/dist/plugins/node/fetch/fetch.test.js.map +0 -7
  62. package/dist/plugins/node/ofetch/ofetch.test.js +0 -126
  63. package/dist/plugins/node/ofetch/ofetch.test.js.map +0 -7
  64. package/dist/plugins/node/undici/undici.test.js +0 -133
  65. package/dist/plugins/node/undici/undici.test.js.map +0 -7
  66. package/dist/plugins/php/curl/curl.test.js +0 -564
  67. package/dist/plugins/php/curl/curl.test.js.map +0 -7
  68. package/dist/plugins/php/guzzle/guzzle.test.js +0 -546
  69. package/dist/plugins/php/guzzle/guzzle.test.js.map +0 -7
  70. package/dist/plugins/python/requests/requests.test.js +0 -419
  71. package/dist/plugins/python/requests/requests.test.js.map +0 -7
  72. package/dist/plugins/ruby/native/native.test.js +0 -240
  73. package/dist/plugins/ruby/native/native.test.js.map +0 -7
  74. package/dist/plugins/shell/curl/curl.test.js +0 -427
  75. package/dist/plugins/shell/curl/curl.test.js.map +0 -7
  76. package/dist/plugins/shell/httpie/httpie.test.js +0 -113
  77. package/dist/plugins/shell/httpie/httpie.test.js.map +0 -7
  78. package/dist/plugins/shell/wget/wget.test.js +0 -143
  79. package/dist/plugins/shell/wget/wget.test.js.map +0 -7
  80. package/dist/plugins/swift/nsurlsession/nsurlsession.test.js +0 -344
  81. package/dist/plugins/swift/nsurlsession/nsurlsession.test.js.map +0 -7
  82. package/dist/snippetz.test.js +0 -79
  83. package/dist/snippetz.test.js.map +0 -7
  84. package/dist/utils/convertWithHttpSnippetLite.test.js +0 -106
  85. package/dist/utils/convertWithHttpSnippetLite.test.js.map +0 -7
  86. package/dist/utils/create-search-params.test.js +0 -49
  87. package/dist/utils/create-search-params.test.js.map +0 -7
@@ -1,164 +0,0 @@
1
- import { describe, expect, it } from "vitest";
2
- import { kotlinOkhttp } from "./okhttp.js";
3
- describe("kotlinOkhttp", () => {
4
- it("returns a basic request", () => {
5
- const result = kotlinOkhttp.generate({
6
- url: "https://example.com"
7
- });
8
- expect(result).toBe(`val client = OkHttpClient()
9
-
10
- val request = Request.Builder()
11
- .url("https://example.com")
12
- .get()
13
- .build()
14
-
15
- val response = client.newCall(request).execute()`);
16
- });
17
- it("returns a POST request", () => {
18
- const result = kotlinOkhttp.generate({
19
- url: "https://example.com",
20
- method: "post"
21
- });
22
- expect(result).toBe(`val client = OkHttpClient()
23
-
24
- val request = Request.Builder()
25
- .url("https://example.com")
26
- .post(null)
27
- .build()
28
-
29
- val response = client.newCall(request).execute()`);
30
- });
31
- it("has headers", () => {
32
- const result = kotlinOkhttp.generate({
33
- url: "https://example.com",
34
- headers: [
35
- {
36
- name: "Content-Type",
37
- value: "application/json"
38
- }
39
- ]
40
- });
41
- expect(result).toBe(`val client = OkHttpClient()
42
-
43
- val request = Request.Builder()
44
- .url("https://example.com")
45
- .get()
46
- .addHeader("Content-Type", "application/json")
47
- .build()
48
-
49
- val response = client.newCall(request).execute()`);
50
- });
51
- it("handles multipart form data with files", () => {
52
- const result = kotlinOkhttp.generate({
53
- url: "https://example.com",
54
- method: "POST",
55
- postData: {
56
- mimeType: "multipart/form-data",
57
- params: [
58
- {
59
- name: "file",
60
- fileName: "test.txt"
61
- },
62
- {
63
- name: "field",
64
- value: "value"
65
- }
66
- ]
67
- }
68
- });
69
- expect(result).toBe(`val client = OkHttpClient()
70
-
71
- val body = MultipartBody.Builder()
72
- .setType(MultipartBody.FORM)
73
- .addFormDataPart("file", "test.txt", RequestBody.create(MediaType.parse("application/octet-stream"), File("test.txt")))
74
- .addFormDataPart("field", "value")
75
- .build()
76
-
77
- val request = Request.Builder()
78
- .url("https://example.com")
79
- .post(body)
80
- .build()
81
-
82
- val response = client.newCall(request).execute()`);
83
- });
84
- it("handles binary data", () => {
85
- const result = kotlinOkhttp.generate({
86
- url: "https://example.com",
87
- method: "POST",
88
- postData: {
89
- mimeType: "application/octet-stream",
90
- text: "binary content"
91
- }
92
- });
93
- expect(result).toBe(`val client = OkHttpClient()
94
-
95
- val mediaType = MediaType.parse("application/octet-stream")
96
- val body = RequestBody.create(mediaType, "binary content")
97
- val request = Request.Builder()
98
- .url("https://example.com")
99
- .post(body)
100
- .build()
101
-
102
- val response = client.newCall(request).execute()`);
103
- });
104
- it("handles special characters in URL", () => {
105
- const result = kotlinOkhttp.generate({
106
- url: "https://example.com/path with spaces/[brackets]"
107
- });
108
- expect(result).toBe(`val client = OkHttpClient()
109
-
110
- val request = Request.Builder()
111
- .url("https://example.com/path%20with%20spaces/[brackets]")
112
- .get()
113
- .build()
114
-
115
- val response = client.newCall(request).execute()`);
116
- });
117
- it("handles multiple headers with same name", () => {
118
- const result = kotlinOkhttp.generate({
119
- url: "https://example.com",
120
- headers: [
121
- { name: "X-Custom", value: "value1" },
122
- { name: "X-Custom", value: "value2" }
123
- ]
124
- });
125
- expect(result).toBe(`val client = OkHttpClient()
126
-
127
- val request = Request.Builder()
128
- .url("https://example.com")
129
- .get()
130
- .addHeader("X-Custom", "value2")
131
- .build()
132
-
133
- val response = client.newCall(request).execute()`);
134
- });
135
- it("handles headers with empty values", () => {
136
- const result = kotlinOkhttp.generate({
137
- url: "https://example.com",
138
- headers: [{ name: "X-Empty", value: "" }]
139
- });
140
- expect(result).toBe(`val client = OkHttpClient()
141
-
142
- val request = Request.Builder()
143
- .url("https://example.com")
144
- .get()
145
- .addHeader("X-Empty", "")
146
- .build()
147
-
148
- val response = client.newCall(request).execute()`);
149
- });
150
- it("handles query string parameters", () => {
151
- const result = kotlinOkhttp.generate({
152
- url: "https://example.com/api?param1=value1&param2=special value&param3=123"
153
- });
154
- expect(result).toBe(`val client = OkHttpClient()
155
-
156
- val request = Request.Builder()
157
- .url("https://example.com/api?param1=value1&param2=special%20value&param3=123")
158
- .get()
159
- .build()
160
-
161
- val response = client.newCall(request).execute()`);
162
- });
163
- });
164
- //# sourceMappingURL=okhttp.test.js.map
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../../src/plugins/kotlin/okhttp/okhttp.test.ts"],
4
- "sourcesContent": ["import { describe, expect, it } from 'vitest'\n\nimport { kotlinOkhttp } from './okhttp'\n\ndescribe('kotlinOkhttp', () => {\n it('returns a basic request', () => {\n const result = kotlinOkhttp.generate({\n url: 'https://example.com',\n })\n\n expect(result).toBe(`val client = OkHttpClient()\n\nval request = Request.Builder()\n .url(\"https://example.com\")\n .get()\n .build()\n\nval response = client.newCall(request).execute()`)\n })\n\n it('returns a POST request', () => {\n const result = kotlinOkhttp.generate({\n url: 'https://example.com',\n method: 'post',\n })\n\n expect(result).toBe(`val client = OkHttpClient()\n\nval request = Request.Builder()\n .url(\"https://example.com\")\n .post(null)\n .build()\n\nval response = client.newCall(request).execute()`)\n })\n\n it('has headers', () => {\n const result = kotlinOkhttp.generate({\n url: 'https://example.com',\n headers: [\n {\n name: 'Content-Type',\n value: 'application/json',\n },\n ],\n })\n expect(result).toBe(`val client = OkHttpClient()\n\nval request = Request.Builder()\n .url(\"https://example.com\")\n .get()\n .addHeader(\"Content-Type\", \"application/json\")\n .build()\n\nval response = client.newCall(request).execute()`)\n })\n\n it('handles multipart form data with files', () => {\n const result = kotlinOkhttp.generate({\n url: 'https://example.com',\n method: 'POST',\n postData: {\n mimeType: 'multipart/form-data',\n params: [\n {\n name: 'file',\n fileName: 'test.txt',\n },\n {\n name: 'field',\n value: 'value',\n },\n ],\n },\n })\n\n expect(result).toBe(`val client = OkHttpClient()\n\nval body = MultipartBody.Builder()\n .setType(MultipartBody.FORM)\n .addFormDataPart(\"file\", \"test.txt\", RequestBody.create(MediaType.parse(\"application/octet-stream\"), File(\"test.txt\")))\n .addFormDataPart(\"field\", \"value\")\n .build()\n\nval request = Request.Builder()\n .url(\"https://example.com\")\n .post(body)\n .build()\n\nval response = client.newCall(request).execute()`)\n })\n\n it('handles binary data', () => {\n const result = kotlinOkhttp.generate({\n url: 'https://example.com',\n method: 'POST',\n postData: {\n mimeType: 'application/octet-stream',\n text: 'binary content',\n },\n })\n\n expect(result).toBe(`val client = OkHttpClient()\n\nval mediaType = MediaType.parse(\"application/octet-stream\")\nval body = RequestBody.create(mediaType, \"binary content\")\nval request = Request.Builder()\n .url(\"https://example.com\")\n .post(body)\n .build()\n\nval response = client.newCall(request).execute()`)\n })\n\n it('handles special characters in URL', () => {\n const result = kotlinOkhttp.generate({\n url: 'https://example.com/path with spaces/[brackets]',\n })\n\n expect(result).toBe(`val client = OkHttpClient()\n\nval request = Request.Builder()\n .url(\"https://example.com/path%20with%20spaces/[brackets]\")\n .get()\n .build()\n\nval response = client.newCall(request).execute()`)\n })\n\n it('handles multiple headers with same name', () => {\n const result = kotlinOkhttp.generate({\n url: 'https://example.com',\n headers: [\n { name: 'X-Custom', value: 'value1' },\n { name: 'X-Custom', value: 'value2' },\n ],\n })\n\n expect(result).toBe(`val client = OkHttpClient()\n\nval request = Request.Builder()\n .url(\"https://example.com\")\n .get()\n .addHeader(\"X-Custom\", \"value2\")\n .build()\n\nval response = client.newCall(request).execute()`)\n })\n\n it('handles headers with empty values', () => {\n const result = kotlinOkhttp.generate({\n url: 'https://example.com',\n headers: [{ name: 'X-Empty', value: '' }],\n })\n\n expect(result).toBe(`val client = OkHttpClient()\n\nval request = Request.Builder()\n .url(\"https://example.com\")\n .get()\n .addHeader(\"X-Empty\", \"\")\n .build()\n\nval response = client.newCall(request).execute()`)\n })\n\n it('handles query string parameters', () => {\n const result = kotlinOkhttp.generate({\n url: 'https://example.com/api?param1=value1&param2=special value&param3=123',\n })\n\n expect(result).toBe(`val client = OkHttpClient()\n\nval request = Request.Builder()\n .url(\"https://example.com/api?param1=value1&param2=special%20value&param3=123\")\n .get()\n .build()\n\nval response = client.newCall(request).execute()`)\n })\n})\n"],
5
- "mappings": "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",
6
- "names": []
7
- }
@@ -1,200 +0,0 @@
1
- import { describe, expect, it } from "vitest";
2
- import { nodeFetch } from "./fetch.js";
3
- describe("nodeFetch", () => {
4
- it("returns a basic request", () => {
5
- const result = nodeFetch.generate({
6
- url: "https://example.com"
7
- });
8
- expect(result).toBe(`fetch('https://example.com')`);
9
- });
10
- it("returns a POST request", () => {
11
- const result = nodeFetch.generate({
12
- url: "https://example.com",
13
- method: "post"
14
- });
15
- expect(result).toBe(`fetch('https://example.com', {
16
- method: 'POST'
17
- })`);
18
- });
19
- it("has headers", () => {
20
- const result = nodeFetch.generate({
21
- url: "https://example.com",
22
- headers: [
23
- {
24
- name: "Content-Type",
25
- value: "application/json"
26
- }
27
- ]
28
- });
29
- expect(result).toBe(`fetch('https://example.com', {
30
- headers: {
31
- 'Content-Type': 'application/json'
32
- }
33
- })`);
34
- });
35
- it("doesn\u2019t add empty headers", () => {
36
- const result = nodeFetch.generate({
37
- url: "https://example.com",
38
- headers: []
39
- });
40
- expect(result).toBe(`fetch('https://example.com')`);
41
- });
42
- it("has JSON body", () => {
43
- const result = nodeFetch.generate({
44
- url: "https://example.com",
45
- method: "POST",
46
- headers: [
47
- {
48
- name: "Content-Type",
49
- value: "application/json"
50
- }
51
- ],
52
- postData: {
53
- mimeType: "application/json",
54
- text: JSON.stringify({
55
- hello: "world"
56
- })
57
- }
58
- });
59
- expect(result).toBe(`fetch('https://example.com', {
60
- method: 'POST',
61
- headers: {
62
- 'Content-Type': 'application/json'
63
- },
64
- body: JSON.stringify({
65
- hello: 'world'
66
- })
67
- })`);
68
- });
69
- it("has raw body", () => {
70
- const result = nodeFetch.generate({
71
- url: "https://example.com",
72
- method: "POST",
73
- headers: [
74
- {
75
- name: "Content-Type",
76
- value: "application/octet-stream"
77
- }
78
- ],
79
- postData: {
80
- mimeType: "application/octet-stream",
81
- text: "hello world"
82
- }
83
- });
84
- expect(result).toBe(`fetch('https://example.com', {
85
- method: 'POST',
86
- headers: {
87
- 'Content-Type': 'application/octet-stream'
88
- },
89
- body: 'hello world'
90
- })`);
91
- });
92
- it("has query string", () => {
93
- const result = nodeFetch.generate({
94
- url: "https://example.com",
95
- queryString: [
96
- {
97
- name: "foo",
98
- value: "bar"
99
- },
100
- {
101
- name: "bar",
102
- value: "foo"
103
- }
104
- ]
105
- });
106
- expect(result).toBe(`fetch('https://example.com?foo=bar&bar=foo')`);
107
- });
108
- it("has cookies", () => {
109
- const result = nodeFetch.generate({
110
- url: "https://example.com",
111
- cookies: [
112
- {
113
- name: "foo",
114
- value: "bar"
115
- },
116
- {
117
- name: "bar",
118
- value: "foo"
119
- }
120
- ]
121
- });
122
- expect(result).toBe(`fetch('https://example.com', {
123
- headers: {
124
- 'Set-Cookie': 'foo=bar; bar=foo'
125
- }
126
- })`);
127
- });
128
- it("doesn\u2019t add empty cookies", () => {
129
- const result = nodeFetch.generate({
130
- url: "https://example.com",
131
- cookies: []
132
- });
133
- expect(result).toBe(`fetch('https://example.com')`);
134
- });
135
- it("has urlencoded body", () => {
136
- const result = nodeFetch.generate({
137
- url: "https://example.com",
138
- method: "POST",
139
- headers: [
140
- {
141
- name: "Content-Type",
142
- value: "application/x-www-form-urlencoded"
143
- }
144
- ],
145
- postData: {
146
- mimeType: "application/x-www-form-urlencoded",
147
- params: [
148
- {
149
- name: "foo",
150
- value: "bar"
151
- },
152
- {
153
- name: "baz",
154
- value: "foo"
155
- }
156
- ]
157
- }
158
- });
159
- expect(result).toBe(`fetch('https://example.com', {
160
- method: 'POST',
161
- headers: {
162
- 'Content-Type': 'application/x-www-form-urlencoded'
163
- },
164
- body: new URLSearchParams({
165
- foo: 'bar',
166
- baz: 'foo'
167
- })
168
- })`);
169
- });
170
- it("has multipart body", () => {
171
- const result = nodeFetch.generate({
172
- url: "https://example.com",
173
- method: "POST",
174
- postData: {
175
- mimeType: "multipart/form-data",
176
- params: [
177
- {
178
- name: "foo",
179
- value: "bar"
180
- },
181
- {
182
- name: "file",
183
- fileName: "baz.txt"
184
- }
185
- ]
186
- }
187
- });
188
- expect(result).toBe(`import fs from 'node:fs'
189
-
190
- const formData = new FormData()
191
- formData.append('foo', 'bar')
192
- formData.append('file', new Blob([fs.readFileSync('baz.txt')]), 'baz.txt')
193
-
194
- fetch('https://example.com', {
195
- method: 'POST',
196
- body: formData
197
- })`);
198
- });
199
- });
200
- //# sourceMappingURL=fetch.test.js.map
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../../src/plugins/node/fetch/fetch.test.ts"],
4
- "sourcesContent": ["import { describe, expect, it } from 'vitest'\n\nimport { nodeFetch } from './fetch'\n\ndescribe('nodeFetch', () => {\n it('returns a basic request', () => {\n const result = nodeFetch.generate({\n url: 'https://example.com',\n })\n\n expect(result).toBe(`fetch('https://example.com')`)\n })\n\n it('returns a POST request', () => {\n const result = nodeFetch.generate({\n url: 'https://example.com',\n method: 'post',\n })\n\n expect(result).toBe(`fetch('https://example.com', {\n method: 'POST'\n})`)\n })\n\n it('has headers', () => {\n const result = nodeFetch.generate({\n url: 'https://example.com',\n headers: [\n {\n name: 'Content-Type',\n value: 'application/json',\n },\n ],\n })\n\n expect(result).toBe(`fetch('https://example.com', {\n headers: {\n 'Content-Type': 'application/json'\n }\n})`)\n })\n\n it('doesn\u2019t add empty headers', () => {\n const result = nodeFetch.generate({\n url: 'https://example.com',\n headers: [],\n })\n\n expect(result).toBe(`fetch('https://example.com')`)\n })\n\n it('has JSON body', () => {\n const result = nodeFetch.generate({\n url: 'https://example.com',\n method: 'POST',\n headers: [\n {\n name: 'Content-Type',\n value: 'application/json',\n },\n ],\n postData: {\n mimeType: 'application/json',\n text: JSON.stringify({\n hello: 'world',\n }),\n },\n })\n\n expect(result).toBe(`fetch('https://example.com', {\n method: 'POST',\n headers: {\n 'Content-Type': 'application/json'\n },\n body: JSON.stringify({\n hello: 'world'\n })\n})`)\n })\n\n it('has raw body', () => {\n const result = nodeFetch.generate({\n url: 'https://example.com',\n method: 'POST',\n headers: [\n {\n name: 'Content-Type',\n value: 'application/octet-stream',\n },\n ],\n postData: {\n mimeType: 'application/octet-stream',\n text: 'hello world',\n },\n })\n\n expect(result).toBe(`fetch('https://example.com', {\n method: 'POST',\n headers: {\n 'Content-Type': 'application/octet-stream'\n },\n body: 'hello world'\n})`)\n })\n\n it('has query string', () => {\n const result = nodeFetch.generate({\n url: 'https://example.com',\n queryString: [\n {\n name: 'foo',\n value: 'bar',\n },\n {\n name: 'bar',\n value: 'foo',\n },\n ],\n })\n\n expect(result).toBe(`fetch('https://example.com?foo=bar&bar=foo')`)\n })\n\n it('has cookies', () => {\n const result = nodeFetch.generate({\n url: 'https://example.com',\n cookies: [\n {\n name: 'foo',\n value: 'bar',\n },\n {\n name: 'bar',\n value: 'foo',\n },\n ],\n })\n\n expect(result).toBe(`fetch('https://example.com', {\n headers: {\n 'Set-Cookie': 'foo=bar; bar=foo'\n }\n})`)\n })\n\n it('doesn\u2019t add empty cookies', () => {\n const result = nodeFetch.generate({\n url: 'https://example.com',\n cookies: [],\n })\n\n expect(result).toBe(`fetch('https://example.com')`)\n })\n\n it('has urlencoded body', () => {\n const result = nodeFetch.generate({\n url: 'https://example.com',\n method: 'POST',\n headers: [\n {\n name: 'Content-Type',\n value: 'application/x-www-form-urlencoded',\n },\n ],\n postData: {\n mimeType: 'application/x-www-form-urlencoded',\n params: [\n {\n name: 'foo',\n value: 'bar',\n },\n {\n name: 'baz',\n value: 'foo',\n },\n ],\n },\n })\n\n expect(result).toBe(`fetch('https://example.com', {\n method: 'POST',\n headers: {\n 'Content-Type': 'application/x-www-form-urlencoded'\n },\n body: new URLSearchParams({\n foo: 'bar',\n baz: 'foo'\n })\n})`)\n })\n\n it('has multipart body', () => {\n const result = nodeFetch.generate({\n url: 'https://example.com',\n method: 'POST',\n postData: {\n mimeType: 'multipart/form-data',\n params: [\n {\n name: 'foo',\n value: 'bar',\n },\n {\n name: 'file',\n fileName: 'baz.txt',\n },\n ],\n },\n })\n\n expect(result).toBe(`import fs from 'node:fs'\n\nconst formData = new FormData()\nformData.append('foo', 'bar')\nformData.append('file', new Blob([fs.readFileSync('baz.txt')]), 'baz.txt')\n\nfetch('https://example.com', {\n method: 'POST',\n body: formData\n})`)\n })\n})\n"],
5
- "mappings": "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",
6
- "names": []
7
- }
@@ -1,126 +0,0 @@
1
- import { describe, expect, it } from "vitest";
2
- import { nodeOfetch } from "./ofetch.js";
3
- describe("nodeOfetch", () => {
4
- it("returns a basic request", () => {
5
- const result = nodeOfetch.generate({
6
- url: "https://example.com"
7
- });
8
- expect(result).toBe(`import { ofetch } from 'ofetch'
9
-
10
- ofetch('https://example.com')`);
11
- });
12
- it("returns a POST request", () => {
13
- const result = nodeOfetch.generate({
14
- url: "https://example.com",
15
- method: "post"
16
- });
17
- expect(result).toBe(`import { ofetch } from 'ofetch'
18
-
19
- ofetch('https://example.com', {
20
- method: 'POST'
21
- })`);
22
- });
23
- it("has headers", () => {
24
- const result = nodeOfetch.generate({
25
- url: "https://example.com",
26
- headers: [
27
- {
28
- name: "Content-Type",
29
- value: "application/json"
30
- }
31
- ]
32
- });
33
- expect(result).toBe(`import { ofetch } from 'ofetch'
34
-
35
- ofetch('https://example.com', {
36
- headers: {
37
- 'Content-Type': 'application/json'
38
- }
39
- })`);
40
- });
41
- it("doesn\u2019t add empty headers", () => {
42
- const result = nodeOfetch.generate({
43
- url: "https://example.com",
44
- headers: []
45
- });
46
- expect(result).toBe(`import { ofetch } from 'ofetch'
47
-
48
- ofetch('https://example.com')`);
49
- });
50
- it("has JSON body", () => {
51
- const result = nodeOfetch.generate({
52
- url: "https://example.com",
53
- postData: {
54
- mimeType: "application/json",
55
- text: JSON.stringify({
56
- hello: "world"
57
- })
58
- }
59
- });
60
- expect(result).toBe(`import { ofetch } from 'ofetch'
61
-
62
- ofetch('https://example.com', {
63
- body: {
64
- hello: 'world'
65
- }
66
- })`);
67
- });
68
- it("has query string", () => {
69
- const result = nodeOfetch.generate({
70
- url: "https://example.com",
71
- queryString: [
72
- {
73
- name: "foo",
74
- value: "bar"
75
- },
76
- {
77
- name: "bar",
78
- value: "foo"
79
- }
80
- ]
81
- });
82
- expect(result).toBe(`import { ofetch } from 'ofetch'
83
-
84
- ofetch('https://example.com', {
85
- query: [{
86
- name: 'foo',
87
- value: 'bar'
88
- }, {
89
- name: 'bar',
90
- value: 'foo'
91
- }]
92
- })`);
93
- });
94
- it("has cookies", () => {
95
- const result = nodeOfetch.generate({
96
- url: "https://example.com",
97
- cookies: [
98
- {
99
- name: "foo",
100
- value: "bar"
101
- },
102
- {
103
- name: "bar",
104
- value: "foo"
105
- }
106
- ]
107
- });
108
- expect(result).toBe(`import { ofetch } from 'ofetch'
109
-
110
- ofetch('https://example.com', {
111
- headers: {
112
- 'Set-Cookie': 'foo=bar; bar=foo'
113
- }
114
- })`);
115
- });
116
- it("doesn\u2019t add empty cookies", () => {
117
- const result = nodeOfetch.generate({
118
- url: "https://example.com",
119
- cookies: []
120
- });
121
- expect(result).toBe(`import { ofetch } from 'ofetch'
122
-
123
- ofetch('https://example.com')`);
124
- });
125
- });
126
- //# sourceMappingURL=ofetch.test.js.map
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../../src/plugins/node/ofetch/ofetch.test.ts"],
4
- "sourcesContent": ["import { describe, expect, it } from 'vitest'\n\nimport { nodeOfetch } from './ofetch'\n\ndescribe('nodeOfetch', () => {\n it('returns a basic request', () => {\n const result = nodeOfetch.generate({\n url: 'https://example.com',\n })\n\n expect(result).toBe(`import { ofetch } from 'ofetch'\n\nofetch('https://example.com')`)\n })\n\n it('returns a POST request', () => {\n const result = nodeOfetch.generate({\n url: 'https://example.com',\n method: 'post',\n })\n\n expect(result).toBe(`import { ofetch } from 'ofetch'\n\nofetch('https://example.com', {\n method: 'POST'\n})`)\n })\n\n it('has headers', () => {\n const result = nodeOfetch.generate({\n url: 'https://example.com',\n headers: [\n {\n name: 'Content-Type',\n value: 'application/json',\n },\n ],\n })\n\n expect(result).toBe(`import { ofetch } from 'ofetch'\n\nofetch('https://example.com', {\n headers: {\n 'Content-Type': 'application/json'\n }\n})`)\n })\n\n it('doesn\u2019t add empty headers', () => {\n const result = nodeOfetch.generate({\n url: 'https://example.com',\n headers: [],\n })\n\n expect(result).toBe(`import { ofetch } from 'ofetch'\n\nofetch('https://example.com')`)\n })\n\n it('has JSON body', () => {\n const result = nodeOfetch.generate({\n url: 'https://example.com',\n postData: {\n mimeType: 'application/json',\n text: JSON.stringify({\n hello: 'world',\n }),\n },\n })\n\n expect(result).toBe(`import { ofetch } from 'ofetch'\n\nofetch('https://example.com', {\n body: {\n hello: 'world'\n }\n})`)\n })\n\n it('has query string', () => {\n const result = nodeOfetch.generate({\n url: 'https://example.com',\n queryString: [\n {\n name: 'foo',\n value: 'bar',\n },\n {\n name: 'bar',\n value: 'foo',\n },\n ],\n })\n\n expect(result).toBe(`import { ofetch } from 'ofetch'\n\nofetch('https://example.com', {\n query: [{\n name: 'foo',\n value: 'bar'\n }, {\n name: 'bar',\n value: 'foo'\n }]\n})`)\n })\n\n it('has cookies', () => {\n const result = nodeOfetch.generate({\n url: 'https://example.com',\n cookies: [\n {\n name: 'foo',\n value: 'bar',\n },\n {\n name: 'bar',\n value: 'foo',\n },\n ],\n })\n\n expect(result).toBe(`import { ofetch } from 'ofetch'\n\nofetch('https://example.com', {\n headers: {\n 'Set-Cookie': 'foo=bar; bar=foo'\n }\n})`)\n })\n\n it('doesn\u2019t add empty cookies', () => {\n const result = nodeOfetch.generate({\n url: 'https://example.com',\n cookies: [],\n })\n\n expect(result).toBe(`import { ofetch } from 'ofetch'\n\nofetch('https://example.com')`)\n })\n})\n"],
5
- "mappings": "AAAA,SAAS,UAAU,QAAQ,UAAU;AAErC,SAAS,kBAAkB;AAE3B,SAAS,cAAc,MAAM;AAC3B,KAAG,2BAA2B,MAAM;AAClC,UAAM,SAAS,WAAW,SAAS;AAAA,MACjC,KAAK;AAAA,IACP,CAAC;AAED,WAAO,MAAM,EAAE,KAAK;AAAA;AAAA,8BAEM;AAAA,EAC5B,CAAC;AAED,KAAG,0BAA0B,MAAM;AACjC,UAAM,SAAS,WAAW,SAAS;AAAA,MACjC,KAAK;AAAA,MACL,QAAQ;AAAA,IACV,CAAC;AAED,WAAO,MAAM,EAAE,KAAK;AAAA;AAAA;AAAA;AAAA,GAIrB;AAAA,EACD,CAAC;AAED,KAAG,eAAe,MAAM;AACtB,UAAM,SAAS,WAAW,SAAS;AAAA,MACjC,KAAK;AAAA,MACL,SAAS;AAAA,QACP;AAAA,UACE,MAAM;AAAA,UACN,OAAO;AAAA,QACT;AAAA,MACF;AAAA,IACF,CAAC;AAED,WAAO,MAAM,EAAE,KAAK;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,GAMrB;AAAA,EACD,CAAC;AAED,KAAG,kCAA6B,MAAM;AACpC,UAAM,SAAS,WAAW,SAAS;AAAA,MACjC,KAAK;AAAA,MACL,SAAS,CAAC;AAAA,IACZ,CAAC;AAED,WAAO,MAAM,EAAE,KAAK;AAAA;AAAA,8BAEM;AAAA,EAC5B,CAAC;AAED,KAAG,iBAAiB,MAAM;AACxB,UAAM,SAAS,WAAW,SAAS;AAAA,MACjC,KAAK;AAAA,MACL,UAAU;AAAA,QACR,UAAU;AAAA,QACV,MAAM,KAAK,UAAU;AAAA,UACnB,OAAO;AAAA,QACT,CAAC;AAAA,MACH;AAAA,IACF,CAAC;AAED,WAAO,MAAM,EAAE,KAAK;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,GAMrB;AAAA,EACD,CAAC;AAED,KAAG,oBAAoB,MAAM;AAC3B,UAAM,SAAS,WAAW,SAAS;AAAA,MACjC,KAAK;AAAA,MACL,aAAa;AAAA,QACX;AAAA,UACE,MAAM;AAAA,UACN,OAAO;AAAA,QACT;AAAA,QACA;AAAA,UACE,MAAM;AAAA,UACN,OAAO;AAAA,QACT;AAAA,MACF;AAAA,IACF,CAAC;AAED,WAAO,MAAM,EAAE,KAAK;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,GAUrB;AAAA,EACD,CAAC;AAED,KAAG,eAAe,MAAM;AACtB,UAAM,SAAS,WAAW,SAAS;AAAA,MACjC,KAAK;AAAA,MACL,SAAS;AAAA,QACP;AAAA,UACE,MAAM;AAAA,UACN,OAAO;AAAA,QACT;AAAA,QACA;AAAA,UACE,MAAM;AAAA,UACN,OAAO;AAAA,QACT;AAAA,MACF;AAAA,IACF,CAAC;AAED,WAAO,MAAM,EAAE,KAAK;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,GAMrB;AAAA,EACD,CAAC;AAED,KAAG,kCAA6B,MAAM;AACpC,UAAM,SAAS,WAAW,SAAS;AAAA,MACjC,KAAK;AAAA,MACL,SAAS,CAAC;AAAA,IACZ,CAAC;AAED,WAAO,MAAM,EAAE,KAAK;AAAA;AAAA,8BAEM;AAAA,EAC5B,CAAC;AACH,CAAC;",
6
- "names": []
7
- }
@@ -1,133 +0,0 @@
1
- import { describe, expect, it } from "vitest";
2
- import { nodeUndici } from "./undici.js";
3
- describe("nodeUndici", () => {
4
- it("has import", () => {
5
- const result = nodeUndici.generate({
6
- url: "https://example.com"
7
- });
8
- expect(result).toContain(`import { request } from 'undici'`);
9
- });
10
- it("returns a basic request", () => {
11
- const result = nodeUndici.generate({
12
- url: "https://example.com"
13
- });
14
- expect(result).toBe(`import { request } from 'undici'
15
-
16
- const { statusCode, body } = await request('https://example.com')`);
17
- });
18
- it("returns a POST request", () => {
19
- const result = nodeUndici.generate({
20
- url: "https://example.com",
21
- method: "post"
22
- });
23
- expect(result).toBe(`import { request } from 'undici'
24
-
25
- const { statusCode, body } = await request('https://example.com', {
26
- method: 'POST'
27
- })`);
28
- });
29
- it("has headers", () => {
30
- const result = nodeUndici.generate({
31
- url: "https://example.com",
32
- headers: [
33
- {
34
- name: "Content-Type",
35
- value: "application/json"
36
- }
37
- ]
38
- });
39
- expect(result).toBe(`import { request } from 'undici'
40
-
41
- const { statusCode, body } = await request('https://example.com', {
42
- headers: {
43
- 'Content-Type': 'application/json'
44
- }
45
- })`);
46
- });
47
- it("doesn\u2019t add empty headers", () => {
48
- const result = nodeUndici.generate({
49
- url: "https://example.com",
50
- headers: []
51
- });
52
- expect(result).toBe(`import { request } from 'undici'
53
-
54
- const { statusCode, body } = await request('https://example.com')`);
55
- });
56
- it("has JSON body", () => {
57
- const result = nodeUndici.generate({
58
- url: "https://example.com",
59
- headers: [
60
- {
61
- name: "Content-Type",
62
- value: "application/json"
63
- }
64
- ],
65
- postData: {
66
- mimeType: "application/json",
67
- text: JSON.stringify({
68
- hello: "world"
69
- })
70
- }
71
- });
72
- expect(result).toBe(`import { request } from 'undici'
73
-
74
- const { statusCode, body } = await request('https://example.com', {
75
- headers: {
76
- 'Content-Type': 'application/json'
77
- },
78
- body: JSON.stringify({
79
- hello: 'world'
80
- })
81
- })`);
82
- });
83
- it("has query string", () => {
84
- const result = nodeUndici.generate({
85
- url: "https://example.com",
86
- queryString: [
87
- {
88
- name: "foo",
89
- value: "bar"
90
- },
91
- {
92
- name: "bar",
93
- value: "foo"
94
- }
95
- ]
96
- });
97
- expect(result).toBe(`import { request } from 'undici'
98
-
99
- const { statusCode, body } = await request('https://example.com?foo=bar&bar=foo')`);
100
- });
101
- it("has cookies", () => {
102
- const result = nodeUndici.generate({
103
- url: "https://example.com",
104
- cookies: [
105
- {
106
- name: "foo",
107
- value: "bar"
108
- },
109
- {
110
- name: "bar",
111
- value: "foo"
112
- }
113
- ]
114
- });
115
- expect(result).toBe(`import { request } from 'undici'
116
-
117
- const { statusCode, body } = await request('https://example.com', {
118
- headers: {
119
- 'Set-Cookie': 'foo=bar; bar=foo'
120
- }
121
- })`);
122
- });
123
- it("doesn\u2019t add empty cookies", () => {
124
- const result = nodeUndici.generate({
125
- url: "https://example.com",
126
- cookies: []
127
- });
128
- expect(result).toBe(`import { request } from 'undici'
129
-
130
- const { statusCode, body } = await request('https://example.com')`);
131
- });
132
- });
133
- //# sourceMappingURL=undici.test.js.map