vue-api-request-builder 0.2.2 → 0.2.4

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 (96) hide show
  1. package/dist/abap-D0Neqhq6.js +1404 -0
  2. package/dist/apex-B5LhxkeG.js +332 -0
  3. package/dist/assets/css.worker-DNgQEC96.js +84 -0
  4. package/dist/assets/editor.worker-BKD3YLiN.js +12 -0
  5. package/dist/assets/html.worker-B7xpmB-M.js +461 -0
  6. package/dist/assets/json.worker-td2JV8fN.js +49 -0
  7. package/dist/assets/ts.worker-CqZGdM85.js +51334 -0
  8. package/dist/azcli-BrBH0QTU.js +74 -0
  9. package/dist/bat-BfzAov64.js +106 -0
  10. package/dist/bicep-C3bCSWel.js +108 -0
  11. package/dist/cameligo-sFL5plcd.js +180 -0
  12. package/dist/clojure-CfeExRz0.js +767 -0
  13. package/dist/coffee-Xws5K0WL.js +238 -0
  14. package/dist/cpp-CqOUEpxN.js +395 -0
  15. package/dist/csharp-DVLiBOZb.js +332 -0
  16. package/dist/csp-DVFp9bw5.js +59 -0
  17. package/dist/css-DwARn2R6.js +193 -0
  18. package/dist/cssMode-D58CHn54.js +1577 -0
  19. package/dist/cypher-uY0Mffat.js +269 -0
  20. package/dist/dart-D27H-mX_.js +287 -0
  21. package/dist/dockerfile-CmV85WZK.js +136 -0
  22. package/dist/ecl--fKn7yzB.js +462 -0
  23. package/dist/elixir-DUhH17ON.js +575 -0
  24. package/dist/flow9-B3Dx2LLe.js +148 -0
  25. package/dist/freemarker2-w_cDNZsU.js +995 -0
  26. package/dist/fsharp-SyqBfUAR.js +223 -0
  27. package/dist/go-BbMR2tdT.js +224 -0
  28. package/dist/graphql-DDJE6tIl.js +157 -0
  29. package/dist/handlebars-CCg0iZRc.js +425 -0
  30. package/dist/hcl-YBvpaUqf.js +189 -0
  31. package/dist/html-DbOHkprv.js +314 -0
  32. package/dist/htmlMode-DXGBRJTk.js +1587 -0
  33. package/dist/index-BXm0ary_.js +113063 -0
  34. package/dist/index.css +1 -1
  35. package/dist/index.d.ts +30 -0
  36. package/dist/index.es.js +10 -757
  37. package/dist/index.umd.js +1923 -5
  38. package/dist/ini-Ct73dBtM.js +77 -0
  39. package/dist/java-C_jlkwoG.js +238 -0
  40. package/dist/javascript-Oxy1_vKh.js +76 -0
  41. package/dist/jsonMode-BkQ19i9r.js +2002 -0
  42. package/dist/julia-D8WE5U1e.js +517 -0
  43. package/dist/kotlin-Zy9aq5yB.js +259 -0
  44. package/dist/less-sZ0iHtE8.js +168 -0
  45. package/dist/lexon-CsdNL29A.js +163 -0
  46. package/dist/liquid-DcYHk_7H.js +246 -0
  47. package/dist/lua-C2YJo0zw.js +168 -0
  48. package/dist/m3-CPLP40SG.js +216 -0
  49. package/dist/markdown-B1mf5e0R.js +235 -0
  50. package/dist/mdx-CLwtO6U4.js +171 -0
  51. package/dist/mips-DA33BZX1.js +204 -0
  52. package/dist/msdax-CCYFIQsP.js +381 -0
  53. package/dist/mysql-hjmIjL-D.js +884 -0
  54. package/dist/objective-c-RRCpEmqC.js +189 -0
  55. package/dist/pascal-CeV8XfxB.js +257 -0
  56. package/dist/pascaligo-IEEGVJAJ.js +170 -0
  57. package/dist/perl-B5-QbHq_.js +632 -0
  58. package/dist/pgsql-s6kqEJmi.js +857 -0
  59. package/dist/php-CWWqzOo8.js +506 -0
  60. package/dist/pla-FSvb_YP_.js +143 -0
  61. package/dist/postiats-DQdscQXO.js +913 -0
  62. package/dist/powerquery-CtA5JA1I.js +896 -0
  63. package/dist/powershell-DglEq96N.js +245 -0
  64. package/dist/protobuf-BSepub3e.js +426 -0
  65. package/dist/pug-B1847F4G.js +408 -0
  66. package/dist/python-sbo77_2a.js +307 -0
  67. package/dist/qsharp-D4i0Nqg9.js +307 -0
  68. package/dist/r-cdRigKxa.js +249 -0
  69. package/dist/razor-BJPyxG4u.js +556 -0
  70. package/dist/redis-D9MFxvE8.js +308 -0
  71. package/dist/redshift-CmCnsvL-.js +815 -0
  72. package/dist/restructuredtext-CWy8J51t.js +180 -0
  73. package/dist/ruby-WP-c36m5.js +517 -0
  74. package/dist/rust-Q9FLdYpu.js +349 -0
  75. package/dist/sb-C54-JBGT.js +121 -0
  76. package/dist/scala-CzbFImc5.js +376 -0
  77. package/dist/scheme-BhfDmYN3.js +114 -0
  78. package/dist/scss-CEmiBXpS.js +268 -0
  79. package/dist/shell-Bmc1VhG0.js +227 -0
  80. package/dist/solidity-C9Q2I8Hh.js +1373 -0
  81. package/dist/sophia-jWa1UyKz.js +205 -0
  82. package/dist/sparql-CM7jctbc.js +207 -0
  83. package/dist/sql-WzihTkbg.js +859 -0
  84. package/dist/st-6y7_3aup.js +422 -0
  85. package/dist/swift-k-0zxG_D.js +318 -0
  86. package/dist/systemverilog-Pnr5_rIP.js +582 -0
  87. package/dist/tcl-fNPXval8.js +238 -0
  88. package/dist/tsMode-DfW25lTY.js +895 -0
  89. package/dist/twig-L2MkztkV.js +398 -0
  90. package/dist/typescript-Bjg5kaqB.js +349 -0
  91. package/dist/typespec-Cqqo-3Pt.js +123 -0
  92. package/dist/vb-B5YC2xN9.js +378 -0
  93. package/dist/wgsl-B-_uRex7.js +445 -0
  94. package/dist/xml-BZwuIq27.js +101 -0
  95. package/dist/yaml-C01XJ7rX.js +212 -0
  96. package/package.json +7 -3
package/dist/index.es.js CHANGED
@@ -1,759 +1,12 @@
1
- import { defineComponent as H, ref as x, watch as C, resolveComponent as c, createElementBlock as $, openBlock as _, createElementVNode as p, createCommentVNode as R, createBlock as O, createVNode as s, withCtx as r, createTextVNode as b, toDisplayString as z, Fragment as F, renderList as K, computed as J } from "vue";
2
- const le = { class: "key-value-input flex flex-col gap-1" }, se = { class: "flex gap-2" }, ne = {
3
- key: 0,
4
- class: "flex flex-col gap-1"
5
- }, ue = { class: "flex w-full gap-1 items-center" }, re = /* @__PURE__ */ H({
6
- __name: "KeyValueInput",
7
- props: {
8
- modelValue: {},
9
- addButtonText: { default: "添加参数" },
10
- showPreview: { type: Boolean, default: !1 },
11
- previewText: { default: "" }
12
- },
13
- emits: ["update:modelValue"],
14
- setup(a, { emit: g }) {
15
- const d = a, o = g, n = x(d.modelValue);
16
- C(
17
- () => d.modelValue,
18
- (u) => {
19
- n.value = u;
20
- }
21
- ), C(
22
- n,
23
- (u) => {
24
- o("update:modelValue", u);
25
- },
26
- { deep: !0 }
27
- );
28
- const y = () => {
29
- n.value.push({ key: "", value: "" });
30
- }, l = (u) => {
31
- n.value.splice(u, 1);
32
- }, f = () => {
33
- n.value = [];
34
- };
35
- return (u, t) => {
36
- const v = c("a-button"), w = c("a-popconfirm"), j = c("a-input"), B = c("a-typography-paragraph"), U = c("a-typography");
37
- return _(), $("div", le, [
38
- p("div", se, [
39
- s(v, {
40
- type: "primary",
41
- onClick: y,
42
- class: "w-full max-w-50%",
43
- size: "small"
44
- }, {
45
- default: r(() => [
46
- b(z(u.addButtonText), 1)
47
- ]),
48
- _: 1
49
- }),
50
- s(w, {
51
- class: "w-full max-w-50%",
52
- title: "确认清空",
53
- description: "确定要清空所有参数吗?",
54
- "ok-text": "确认",
55
- "cancel-text": "取消",
56
- onConfirm: f
57
- }, {
58
- default: r(() => [
59
- s(v, {
60
- type: "primary",
61
- danger: "",
62
- size: "small",
63
- class: "w-full",
64
- disabled: n.value.length === 0
65
- }, {
66
- default: r(() => t[0] || (t[0] = [
67
- b(" 清空 ")
68
- ])),
69
- _: 1
70
- }, 8, ["disabled"])
71
- ]),
72
- _: 1
73
- })
74
- ]),
75
- n.value.length > 0 ? (_(), $("div", ne, [
76
- (_(!0), $(F, null, K(n.value, (k, S) => (_(), $("div", {
77
- key: S,
78
- class: "flex"
79
- }, [
80
- p("div", ue, [
81
- s(v, {
82
- type: "primary",
83
- danger: "",
84
- onClick: (h) => l(S),
85
- class: "w-16",
86
- size: "small"
87
- }, {
88
- default: r(() => t[1] || (t[1] = [
89
- b(" 删除 ")
90
- ])),
91
- _: 2
92
- }, 1032, ["onClick"]),
93
- s(j, {
94
- value: k.key,
95
- "onUpdate:value": (h) => k.key = h,
96
- placeholder: "键",
97
- style: { width: "60%" },
98
- size: "small"
99
- }, null, 8, ["value", "onUpdate:value"]),
100
- s(j, {
101
- value: k.value,
102
- "onUpdate:value": (h) => k.value = h,
103
- placeholder: "值",
104
- style: { width: "100%" },
105
- size: "small"
106
- }, null, 8, ["value", "onUpdate:value"])
107
- ])
108
- ]))), 128))
109
- ])) : R("", !0),
110
- u.showPreview ? (_(), O(U, {
111
- key: 1,
112
- class: "m-0"
113
- }, {
114
- default: r(() => [
115
- s(B, { class: "!m-0" }, {
116
- default: r(() => [
117
- p("pre", null, z(u.previewText), 1)
118
- ]),
119
- _: 1
120
- })
121
- ]),
122
- _: 1
123
- })) : R("", !0)
124
- ]);
125
- };
126
- }
127
- }), M = (a, g) => {
128
- const d = a.__vccOpts || a;
129
- for (const [o, n] of g)
130
- d[o] = n;
131
- return d;
132
- }, L = /* @__PURE__ */ M(re, [["__scopeId", "data-v-eef3e490"]]), de = {
133
- method: "GET",
134
- url: "https://yesno.wtf",
135
- path: "/api",
136
- auth: {
137
- type: "none"
138
- },
139
- params: [],
140
- headers: [],
141
- body: {
142
- type: "application/json"
143
- }
144
- }, ie = { class: "request-form" }, pe = { class: "flex flex-col gap-1" }, ve = { class: "flex flex-row gap-1" }, me = { class: "flex flex-row gap-1" }, fe = { class: "mt-1" }, ce = {
145
- key: 0,
146
- class: "flex flex-col gap-1 mt-2"
147
- }, ye = { class: "flex flex-row gap-1 h-6" }, _e = { class: "flex flex-row gap-1" }, be = {
148
- key: 1,
149
- class: "flex flex-col gap-1 mt-1"
150
- }, we = { class: "flex flex-row gap-1 items-center" }, xe = /* @__PURE__ */ H({
151
- __name: "RequestForm",
152
- props: {
153
- modelValue: { default: () => de }
154
- },
155
- emits: ["update:modelValue"],
156
- setup(a, { emit: g }) {
157
- const d = a, o = g, n = x(d.modelValue.method), y = x(d.modelValue.url), l = x(d.modelValue.auth.type), f = x(d.modelValue.path), u = x(d.modelValue.auth.username || ""), t = x(d.modelValue.auth.password || ""), v = x(d.modelValue.auth.token || ""), w = x(d.modelValue.params), j = x(d.modelValue.headers), B = x(d.modelValue.body.formData || []), U = x(d.modelValue.body.type), k = x(d.modelValue.body.json || ""), S = x(d.modelValue.body.raw || ""), h = x("");
158
- function N(i, e) {
159
- let T;
160
- return function(...E) {
161
- clearTimeout(T), T = setTimeout(() => i.apply(this, E), e);
162
- };
163
- }
164
- const A = () => ({
165
- method: n.value,
166
- url: y.value,
167
- path: f.value,
168
- auth: {
169
- type: l.value,
170
- ...l.value === "Basic" ? {
171
- username: u.value,
172
- password: t.value
173
- } : l.value === "Bearer" ? {
174
- token: v.value
175
- } : {}
176
- },
177
- params: w.value,
178
- headers: j.value,
179
- body: {
180
- type: U.value,
181
- ...U.value === "application/json" ? { json: k.value } : U.value === "multipart/form-data" ? { formData: B.value } : { raw: S.value }
182
- }
183
- }), W = N(() => {
184
- o("update:modelValue", A());
185
- }, 100);
186
- C(
187
- [
188
- n,
189
- y,
190
- f,
191
- l,
192
- u,
193
- t,
194
- v,
195
- w,
196
- j,
197
- U,
198
- B,
199
- k,
200
- S
201
- ],
202
- () => {
203
- W();
204
- },
205
- { deep: !0 }
206
- ), C(
207
- () => d.modelValue,
208
- (i) => {
209
- const e = A();
210
- JSON.stringify(i) !== JSON.stringify(e) && (n.value = i.method, y.value = i.url, f.value = i.path, l.value = i.auth.type, u.value = i.auth.username || "", t.value = i.auth.password || "", v.value = i.auth.token || "", w.value = i.params, j.value = i.headers, U.value = i.body.type, B.value = i.body.formData || [], k.value = i.body.json || "", S.value = i.body.raw || "");
211
- },
212
- { deep: !0 }
213
- );
214
- const X = J(() => {
215
- const i = w.value.filter((e) => !!e.key).map((e) => e.key + "=" + encodeURIComponent(e.value)).join("&");
216
- return i === "" ? "" : "?" + i;
217
- }), Q = J(() => {
218
- switch (U.value) {
219
- case "application/json":
220
- try {
221
- return k.value ? JSON.stringify(JSON.parse(k.value), null, 2) : "-空-";
222
- } catch {
223
- return "Invalid JSON";
224
- }
225
- case "multipart/form-data":
226
- const i = "----WebKitFormBoundaryPreview";
227
- return B.value.filter((T) => !!T.key).map(
228
- (T) => `--${i}\r
229
- Content-Disposition: form-data; name="${T.key}"\r
230
- \r
231
- ${T.value}\r
232
- `
233
- ).join("") + `--${i}--\r
234
- `;
235
- case "text/plain":
236
- return S.value || "-空-";
237
- default:
238
- return "-空-";
239
- }
240
- }), Y = () => {
241
- try {
242
- k.value && (JSON.parse(k.value), h.value = "");
243
- } catch {
244
- h.value = "Invalid JSON format";
245
- }
246
- }, Z = () => {
247
- try {
248
- const i = y.value, e = new URL(i);
249
- y.value = `${e.protocol}//${e.host}`, f.value = e.pathname;
250
- const T = new URLSearchParams(e.search), E = [];
251
- T.forEach((V, D) => {
252
- E.push({ key: D, value: V });
253
- }), w.value = E;
254
- } catch (i) {
255
- console.error("URL解析失败:", i);
256
- }
257
- }, ee = J(() => {
258
- if (!y.value) return !1;
259
- try {
260
- const i = y.value, e = new URL(i);
261
- return e.search !== "" || e.pathname !== "/";
262
- } catch {
263
- return !1;
264
- }
265
- });
266
- return (i, e) => {
267
- const T = c("a-input"), E = c("a-button"), V = c("a-select-option"), D = c("a-select"), P = c("a-card"), q = c("a-radio-button"), G = c("a-radio-group"), te = c("a-input-password"), I = c("a-textarea"), ae = c("a-alert"), oe = c("a-form");
268
- return _(), $("div", ie, [
269
- s(oe, { layout: "vertical" }, {
270
- default: r(() => [
271
- s(P, {
272
- title: "URL配置",
273
- class: "form-section",
274
- size: "small"
275
- }, {
276
- default: r(() => [
277
- p("div", pe, [
278
- p("div", ve, [
279
- s(T, {
280
- value: y.value,
281
- "onUpdate:value": e[0] || (e[0] = (m) => y.value = m),
282
- placeholder: "基础URL",
283
- size: "small"
284
- }, null, 8, ["value"]),
285
- ee.value ? (_(), O(E, {
286
- key: 0,
287
- type: "primary",
288
- size: "small",
289
- onClick: Z
290
- }, {
291
- default: r(() => e[13] || (e[13] = [
292
- b("拆解")
293
- ])),
294
- _: 1
295
- })) : R("", !0)
296
- ]),
297
- p("div", me, [
298
- s(D, {
299
- value: n.value,
300
- "onUpdate:value": e[1] || (e[1] = (m) => n.value = m),
301
- class: "w-40",
302
- size: "small"
303
- }, {
304
- default: r(() => [
305
- s(V, { value: "GET" }, {
306
- default: r(() => e[14] || (e[14] = [
307
- b("GET")
308
- ])),
309
- _: 1
310
- }),
311
- s(V, { value: "POST" }, {
312
- default: r(() => e[15] || (e[15] = [
313
- b("POST")
314
- ])),
315
- _: 1
316
- }),
317
- s(V, { value: "PUT" }, {
318
- default: r(() => e[16] || (e[16] = [
319
- b("PUT")
320
- ])),
321
- _: 1
322
- }),
323
- s(V, { value: "DELETE" }, {
324
- default: r(() => e[17] || (e[17] = [
325
- b("DELETE")
326
- ])),
327
- _: 1
328
- }),
329
- s(V, { value: "OPTIONS" }, {
330
- default: r(() => e[18] || (e[18] = [
331
- b("OPTIONS")
332
- ])),
333
- _: 1
334
- })
335
- ]),
336
- _: 1
337
- }, 8, ["value"]),
338
- s(T, {
339
- value: f.value,
340
- "onUpdate:value": e[2] || (e[2] = (m) => f.value = m),
341
- placeholder: "路径",
342
- size: "small"
343
- }, null, 8, ["value"])
344
- ])
345
- ]),
346
- p("div", fe, [
347
- s(L, {
348
- modelValue: w.value,
349
- "onUpdate:modelValue": e[3] || (e[3] = (m) => w.value = m),
350
- "add-button-text": "添加参数",
351
- "show-preview": !0,
352
- "preview-text": y.value + f.value + X.value
353
- }, null, 8, ["modelValue", "preview-text"])
354
- ])
355
- ]),
356
- _: 1
357
- }),
358
- s(P, {
359
- title: "认证方案",
360
- class: "form-section",
361
- size: "small"
362
- }, {
363
- default: r(() => [
364
- s(G, {
365
- value: l.value,
366
- "onUpdate:value": e[4] || (e[4] = (m) => l.value = m),
367
- "button-style": "solid",
368
- size: "small"
369
- }, {
370
- default: r(() => [
371
- s(q, { value: "none" }, {
372
- default: r(() => e[19] || (e[19] = [
373
- b("无认证")
374
- ])),
375
- _: 1
376
- }),
377
- s(q, { value: "Basic" }, {
378
- default: r(() => e[20] || (e[20] = [
379
- b("Basic认证")
380
- ])),
381
- _: 1
382
- }),
383
- s(q, { value: "Bearer" }, {
384
- default: r(() => e[21] || (e[21] = [
385
- b("Bearer认证")
386
- ])),
387
- _: 1
388
- })
389
- ]),
390
- _: 1
391
- }, 8, ["value"]),
392
- l.value === "Basic" ? (_(), $("div", ce, [
393
- p("div", ye, [
394
- e[22] || (e[22] = p("p", { class: "m-0 w-16" }, "用户名", -1)),
395
- s(T, {
396
- value: u.value,
397
- "onUpdate:value": e[5] || (e[5] = (m) => u.value = m),
398
- size: "small"
399
- }, null, 8, ["value"])
400
- ]),
401
- p("div", _e, [
402
- e[23] || (e[23] = p("p", { class: "m-0 w-16" }, "密码", -1)),
403
- s(te, {
404
- value: t.value,
405
- "onUpdate:value": e[6] || (e[6] = (m) => t.value = m),
406
- size: "small"
407
- }, null, 8, ["value"])
408
- ])
409
- ])) : R("", !0),
410
- l.value === "Bearer" ? (_(), $("div", be, [
411
- p("div", we, [
412
- e[24] || (e[24] = p("p", { class: "m-0 w-16 h-full" }, "Token", -1)),
413
- s(I, {
414
- value: v.value,
415
- "onUpdate:value": e[7] || (e[7] = (m) => v.value = m),
416
- size: "small",
417
- class: "mt-1",
418
- rows: "4",
419
- placeholder: "请输入Token"
420
- }, null, 8, ["value"])
421
- ])
422
- ])) : R("", !0)
423
- ]),
424
- _: 1
425
- }),
426
- s(P, {
427
- title: "请求头",
428
- class: "form-section",
429
- size: "small"
430
- }, {
431
- default: r(() => [
432
- s(L, {
433
- modelValue: j.value,
434
- "onUpdate:modelValue": e[8] || (e[8] = (m) => j.value = m),
435
- "add-button-text": "添加请求头",
436
- "show-preview": !1
437
- }, null, 8, ["modelValue"])
438
- ]),
439
- _: 1
440
- }),
441
- n.value === "POST" || n.value === "PUT" ? (_(), O(P, {
442
- key: 0,
443
- title: "请求体",
444
- class: "form-section",
445
- size: "small"
446
- }, {
447
- default: r(() => [
448
- s(G, {
449
- value: U.value,
450
- "onUpdate:value": e[9] || (e[9] = (m) => U.value = m),
451
- "button-style": "solid",
452
- size: "small",
453
- class: "mb-1"
454
- }, {
455
- default: r(() => [
456
- s(q, { value: "application/json" }, {
457
- default: r(() => e[25] || (e[25] = [
458
- b("JSON")
459
- ])),
460
- _: 1
461
- }),
462
- s(q, { value: "multipart/form-data" }, {
463
- default: r(() => e[26] || (e[26] = [
464
- b("Form Data")
465
- ])),
466
- _: 1
467
- }),
468
- s(q, { value: "text/plain" }, {
469
- default: r(() => e[27] || (e[27] = [
470
- b("Raw")
471
- ])),
472
- _: 1
473
- })
474
- ]),
475
- _: 1
476
- }, 8, ["value"]),
477
- U.value === "application/json" ? (_(), $(F, { key: 0 }, [
478
- s(I, {
479
- value: k.value,
480
- "onUpdate:value": e[10] || (e[10] = (m) => k.value = m),
481
- rows: 6,
482
- placeholder: "请输入 JSON 数据",
483
- onInput: Y
484
- }, null, 8, ["value"]),
485
- h.value ? (_(), O(ae, {
486
- key: 0,
487
- type: "error",
488
- message: h.value,
489
- banner: "",
490
- style: { "margin-bottom": "8px" }
491
- }, null, 8, ["message"])) : R("", !0)
492
- ], 64)) : R("", !0),
493
- U.value === "multipart/form-data" ? (_(), O(L, {
494
- key: 1,
495
- modelValue: B.value,
496
- "onUpdate:modelValue": e[11] || (e[11] = (m) => B.value = m),
497
- "add-button-text": "添加表单字段",
498
- "show-preview": !1
499
- }, null, 8, ["modelValue"])) : R("", !0),
500
- U.value === "text/plain" ? (_(), O(I, {
501
- key: 2,
502
- value: S.value,
503
- "onUpdate:value": e[12] || (e[12] = (m) => S.value = m),
504
- rows: 6,
505
- placeholder: "请输入原始数据"
506
- }, null, 8, ["value"])) : R("", !0),
507
- p("pre", null, z(Q.value), 1)
508
- ]),
509
- _: 1
510
- })) : R("", !0)
511
- ]),
512
- _: 1
513
- })
514
- ]);
515
- };
516
- }
517
- }), Ee = /* @__PURE__ */ M(xe, [["__scopeId", "data-v-c9f65487"]]);
518
- async function ge(a, g = "xhr") {
519
- return g === "fetch" ? ke(a) : he(a);
520
- }
521
- async function ke(a) {
522
- var y;
523
- const g = a.params.filter((l) => !!l.key).map((l) => `${l.key}=${encodeURIComponent(l.value)}`).join("&"), d = `${a.url}${a.path}${g ? "?" + g : ""}`, o = new Headers();
524
- a.headers.forEach((l) => {
525
- l.key && o.append(l.key, l.value);
526
- });
527
- const n = {
528
- method: a.method,
529
- headers: o,
530
- credentials: "omit"
531
- };
532
- if (a.auth.type === "Basic" && a.auth.username && a.auth.password) {
533
- const l = btoa(`${a.auth.username}:${a.auth.password}`);
534
- o.append("Authorization", `Basic ${l}`);
535
- } else a.auth.type === "Bearer" && a.auth.token && o.append("Authorization", `Bearer ${a.auth.token}`);
536
- if (a.method === "POST" || a.method === "PUT")
537
- switch (a.body.type) {
538
- case "application/json":
539
- n.body = a.body.json || "", o.set("Content-Type", "application/json; charset=utf-8");
540
- break;
541
- case "multipart/form-data":
542
- const l = new FormData();
543
- (y = a.body.formData) == null || y.forEach((f) => {
544
- f.key && l.append(f.key, f.value);
545
- }), n.body = l;
546
- break;
547
- case "text/plain":
548
- n.body = a.body.raw || "", o.set("Content-Type", "text/plain; charset=utf-8");
549
- break;
550
- }
551
- try {
552
- const l = await fetch(d, n), f = {};
553
- l.headers.forEach((v, w) => {
554
- f[w.toLowerCase()] = v;
555
- });
556
- let u = "";
557
- if ((f["content-type"] || "").startsWith("application/json"))
558
- try {
559
- const v = await l.json();
560
- u = JSON.stringify(v, null, 2);
561
- } catch {
562
- u = await l.text();
563
- }
564
- else
565
- u = await l.text();
566
- return {
567
- status: l.status.toString(),
568
- headers: f,
569
- body: u
570
- };
571
- } catch {
572
- throw new Error("Request failed");
573
- }
574
- }
575
- async function he(a) {
576
- return new Promise((g, d) => {
577
- var u;
578
- const o = new XMLHttpRequest(), n = a.auth.type === "Basic" ? a.auth.username : null, y = a.auth.type === "Basic" ? a.auth.password : null, l = a.params.filter((t) => !!t.key).map((t) => `${t.key}=${encodeURIComponent(t.value)}`).join("&"), f = `${a.url}${a.path}${l ? "?" + l : ""}`;
579
- if (o.open(a.method, f, !0, n, y), a.headers.forEach((t) => {
580
- t.key && o.setRequestHeader(t.key, t.value);
581
- }), a.auth.type === "Bearer" && a.auth.token && o.setRequestHeader("Authorization", `Bearer ${a.auth.token}`), a.method === "POST" || a.method === "PUT") {
582
- let t = "";
583
- switch (a.body.type) {
584
- case "application/json":
585
- t = a.body.json || "", o.setRequestHeader("Content-Type", "application/json; charset=utf-8");
586
- break;
587
- case "multipart/form-data":
588
- const v = new FormData();
589
- (u = a.body.formData) == null || u.forEach((w) => {
590
- w.key && v.append(w.key, w.value);
591
- }), t = v;
592
- break;
593
- case "text/plain":
594
- t = a.body.raw || "", o.setRequestHeader("Content-Type", "text/plain; charset=utf-8");
595
- break;
596
- }
597
- o.send(t);
598
- } else
599
- o.send();
600
- o.onload = () => {
601
- const t = Ue(o), v = {
602
- status: o.status.toString(),
603
- headers: t,
604
- body: ""
605
- };
606
- if ((t["content-type"] || "").startsWith("application/json"))
607
- try {
608
- v.body = JSON.stringify(JSON.parse(o.responseText), null, 2);
609
- } catch {
610
- v.body = o.responseText;
611
- }
612
- else
613
- v.body = o.responseText;
614
- g(v);
615
- }, o.onerror = () => {
616
- d(new Error("Request failed"));
617
- };
618
- });
619
- }
620
- function Ue(a) {
621
- const g = a.getAllResponseHeaders().trim().split(/[\r\n]+/), d = {};
622
- return g.forEach(function(o) {
623
- var f;
624
- const n = o.split(": "), y = ((f = n.shift()) == null ? void 0 : f.toLowerCase()) || "", l = n.join(": ");
625
- d[y] = l;
626
- }), d;
627
- }
628
- const Te = { style: { display: "flex", "align-items": "center", gap: "8px", "margin-bottom": "8px" } }, $e = { class: "flex flex-col gap-2" }, Se = { class: "flex flex-col gap-1" }, Re = {
629
- key: 0,
630
- class: "border border-solid border-gray-300 w-full"
631
- }, je = { class: "border border-gray-300" }, Be = { class: "border border-gray-300" }, Oe = { key: 1 }, Ve = /* @__PURE__ */ H({
632
- __name: "ResponseSection",
633
- props: {
634
- modelValue: {}
635
- },
636
- setup(a) {
637
- const g = a, d = x("xhr"), o = x({
638
- status: "",
639
- headers: {},
640
- body: "",
641
- timing: 0
642
- }), n = x(""), y = (u) => {
643
- const t = Number(u);
644
- return t >= 200 && t < 300 ? "success" : t >= 300 && t < 400 ? "warning" : t >= 400 && t < 500 || t >= 500 ? "error" : "default";
645
- }, l = (u) => u instanceof Error ? u.message : "请求失败", f = async () => {
646
- n.value = "";
647
- const u = Date.now();
648
- try {
649
- o.value = await ge(g.modelValue, d.value), o.value.timing = Date.now() - u;
650
- } catch (t) {
651
- n.value = l(t), o.value = {
652
- status: "Error",
653
- headers: {},
654
- body: t instanceof Error ? t.message : "Request failed",
655
- timing: Date.now() - u
656
- };
657
- }
658
- };
659
- return (u, t) => {
660
- const v = c("a-radio-button"), w = c("a-radio-group"), j = c("a-button"), B = c("a-alert"), U = c("a-tag"), k = c("a-textarea"), S = c("a-card");
661
- return _(), O(S, {
662
- title: "响应",
663
- class: "form-section",
664
- size: "small"
665
- }, {
666
- default: r(() => [
667
- p("div", Te, [
668
- s(w, {
669
- value: d.value,
670
- "onUpdate:value": t[0] || (t[0] = (h) => d.value = h),
671
- "button-style": "solid",
672
- size: "small"
673
- }, {
674
- default: r(() => [
675
- s(v, { value: "xhr" }, {
676
- default: r(() => t[2] || (t[2] = [
677
- b("XMLHttpRequest")
678
- ])),
679
- _: 1
680
- }),
681
- s(v, { value: "fetch" }, {
682
- default: r(() => t[3] || (t[3] = [
683
- b("Fetch")
684
- ])),
685
- _: 1
686
- })
687
- ]),
688
- _: 1
689
- }, 8, ["value"]),
690
- s(j, {
691
- type: "primary",
692
- onClick: f,
693
- size: "small"
694
- }, {
695
- default: r(() => t[4] || (t[4] = [
696
- b("发送")
697
- ])),
698
- _: 1
699
- })
700
- ]),
701
- n.value ? (_(), O(B, {
702
- key: 0,
703
- message: n.value,
704
- type: "error",
705
- "show-icon": "",
706
- style: { "margin-bottom": "8px" }
707
- }, null, 8, ["message"])) : R("", !0),
708
- p("div", $e, [
709
- t[7] || (t[7] = p("div", { class: "text-sm font-bold" }, "基本信息", -1)),
710
- p("div", Se, [
711
- p("div", null, [
712
- t[5] || (t[5] = p("span", null, "状态码:", -1)),
713
- s(U, {
714
- color: y(o.value.status)
715
- }, {
716
- default: r(() => [
717
- b(z(o.value.status), 1)
718
- ]),
719
- _: 1
720
- }, 8, ["color"])
721
- ]),
722
- p("div", null, [
723
- t[6] || (t[6] = p("span", null, "耗时:", -1)),
724
- p("span", null, z(o.value.timing ? `${o.value.timing}ms` : "-"), 1)
725
- ])
726
- ]),
727
- t[8] || (t[8] = p("div", { class: "text-sm font-bold" }, "响应头", -1)),
728
- Object.keys(o.value.headers).length > 0 ? (_(), $("table", Re, [
729
- p("tbody", null, [
730
- (_(!0), $(F, null, K(Object.entries(o.value.headers), ([h, N]) => (_(), $("tr", { key: h }, [
731
- p("td", je, z(h), 1),
732
- p("td", Be, z(N), 1)
733
- ]))), 128))
734
- ])
735
- ])) : (_(), $("p", Oe, "无响应头")),
736
- t[9] || (t[9] = p("div", { class: "text-sm font-bold" }, "响应体", -1)),
737
- s(k, {
738
- value: o.value.body,
739
- "onUpdate:value": t[1] || (t[1] = (h) => o.value.body = h),
740
- rows: 5,
741
- readonly: "",
742
- style: { width: "100%" },
743
- size: "small"
744
- }, null, 8, ["value"])
745
- ])
746
- ]),
747
- _: 1
748
- });
749
- };
750
- }
751
- }), qe = /* @__PURE__ */ M(Ve, [["__scopeId", "data-v-1dd2b288"]]);
1
+ import { i as s, K as t, R as u, a as n, R as o, d as r, e as c, b as f, v as m } from "./index-BXm0ary_.js";
752
2
  export {
753
- L as KeyValueInput,
754
- Ee as RequestForm,
755
- qe as ResponseSection,
756
- Ee as default,
757
- de as defaultRequestSchema,
758
- ge as executeRequest
3
+ s as DataTransform,
4
+ t as KeyValueInput,
5
+ u as RequestForm,
6
+ n as ResponseSection,
7
+ o as default,
8
+ r as defaultRequestSchema,
9
+ c as executeRequest,
10
+ f as executeTransformFunction,
11
+ m as validateTransformFunction
759
12
  };