@scalar/api-client 2.5.16 → 2.5.18

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 (60) hide show
  1. package/CHANGELOG.md +35 -0
  2. package/dist/components/AddressBar/AddressBarHistory.vue2.js +9 -8
  3. package/dist/components/CommandPalette/CommandPaletteImport.vue.js +15 -13
  4. package/dist/components/CommandPalette/CommandPaletteServer.vue.js +10 -9
  5. package/dist/components/CommandPalette/TheCommandPalette.vue2.js +28 -26
  6. package/dist/components/DataTable/DataTableInput.vue.d.ts.map +1 -1
  7. package/dist/components/DataTable/DataTableInputSelect.vue.js +9 -8
  8. package/dist/components/EnvironmentSelector/EnvironmentSelector.vue.js +9 -7
  9. package/dist/components/ImportCollection/ImportNowButton.vue.js +6 -4
  10. package/dist/components/ImportCollection/WorkspaceSelector.vue.js +4 -2
  11. package/dist/components/Server/ServerSelector.vue.js +2 -1
  12. package/dist/components/SideNav/SideHelp.vue.js +16 -10
  13. package/dist/components/SideNav/SideNav.vue.js +2 -1
  14. package/dist/components/Sidebar/Actions/SidebarListElementForm.vue2.js +2 -1
  15. package/dist/components/TopNav/TopNav.vue.js +9 -7
  16. package/dist/components/TopNav/TopNavItem.vue2.js +8 -4
  17. package/dist/layouts/App/create-api-client-app.d.ts +42 -2
  18. package/dist/layouts/App/create-api-client-app.d.ts.map +1 -1
  19. package/dist/layouts/Modal/create-api-client-modal.d.ts +84 -4
  20. package/dist/layouts/Modal/create-api-client-modal.d.ts.map +1 -1
  21. package/dist/layouts/Web/create-api-client-web.d.ts +42 -2
  22. package/dist/layouts/Web/create-api-client-web.d.ts.map +1 -1
  23. package/dist/libs/create-client.d.ts +42 -2
  24. package/dist/libs/create-client.d.ts.map +1 -1
  25. package/dist/store/security-schemes.d.ts +42 -2
  26. package/dist/store/security-schemes.d.ts.map +1 -1
  27. package/dist/store/store.d.ts +42 -2
  28. package/dist/store/store.d.ts.map +1 -1
  29. package/dist/style.css +1 -1
  30. package/dist/views/Collection/CollectionEnvironment.vue2.js +8 -7
  31. package/dist/views/Collection/CollectionServers.vue2.js +2 -1
  32. package/dist/views/Collection/CollectionSettings.vue2.js +2 -1
  33. package/dist/views/Collection/components/EnvironmentForm.vue2.js +4 -2
  34. package/dist/views/Collection/components/MarkdownInput.vue2.js +4 -2
  35. package/dist/views/Environment/Environment.vue2.js +2 -1
  36. package/dist/views/Environment/EnvironmentModal.vue.js +10 -9
  37. package/dist/views/Environment/EnvironmentVariableDropdown.vue.js +2 -1
  38. package/dist/views/Request/RequestSection/RequestAuth/DeleteRequestAuthModal.vue.js +5 -4
  39. package/dist/views/Request/RequestSection/RequestAuth/OAuth2.vue.js +22 -11
  40. package/dist/views/Request/RequestSection/RequestAuth/OAuthScopesInput.vue.js +9 -8
  41. package/dist/views/Request/RequestSection/RequestAuth/RequestAuthTab.vue2.js +34 -29
  42. package/dist/views/Request/RequestSection/RequestBody.vue2.js +4 -2
  43. package/dist/views/Request/RequestSection/RequestParams.vue.js +2 -1
  44. package/dist/views/Request/RequestSection/RequestTable.vue2.js +12 -10
  45. package/dist/views/Request/RequestSidebar.vue2.js +2 -1
  46. package/dist/views/Request/RequestSidebarItem.vue.d.ts.map +1 -1
  47. package/dist/views/Request/RequestSidebarItem.vue2.js +2 -1
  48. package/dist/views/Request/RequestSidebarItemMenu.vue2.js +6 -3
  49. package/dist/views/Request/ResponseSection/RequestHeaders.vue.js +4 -2
  50. package/dist/views/Request/ResponseSection/ResponseBody.vue2.js +2 -1
  51. package/dist/views/Request/ResponseSection/ResponseBodyPreview.vue2.js +2 -1
  52. package/dist/views/Request/ResponseSection/ResponseEmpty.vue2.js +1 -1
  53. package/dist/views/Request/ResponseSection/ResponseHeaders.vue.js +4 -2
  54. package/dist/views/Request/ResponseSection/ResponseLoadingOverlay.vue2.js +5 -4
  55. package/dist/views/Request/components/WorkspaceDropdown.vue.js +13 -10
  56. package/dist/views/Request/libs/oauth2.d.ts.map +1 -1
  57. package/dist/views/Request/libs/oauth2.js +46 -44
  58. package/dist/views/Settings/SettingsGeneral.vue.js +19 -17
  59. package/dist/views/Settings/components/SettingsAppearance.vue.js +8 -5
  60. package/package.json +16 -16
@@ -29,14 +29,14 @@ const O = { class: "text-c-2 filemask flex w-full max-w-[100%] items-end justify
29
29
  },
30
30
  emits: ["updateRow", "toggleRow", "addRow", "deleteRow", "inputFocus", "inputBlur", "uploadFile", "removeFile"],
31
31
  setup(x, { emit: F }) {
32
- const m = x, t = F, U = ["", "", "36px"], w = (e, o, l) => {
32
+ const m = x, t = F, _ = ["", "", "36px"], w = (e, o, l) => {
33
33
  t("updateRow", e, o, l);
34
- }, S = (e) => {
34
+ }, U = (e) => {
35
35
  t("uploadFile", e);
36
- }, T = (e) => Array.isArray(e.default) && e.default.length === 1 ? e.default[0] : e.default, I = (e) => !!(e.key || e.value);
36
+ }, S = (e) => Array.isArray(e.default) && e.default.length === 1 ? e.default[0] : e.default, T = (e) => !!(e.key || e.value);
37
37
  return (e, o) => (u(), i(N, {
38
38
  class: "group/table flex-1",
39
- columns: U
39
+ columns: _
40
40
  }, {
41
41
  default: n(() => [
42
42
  r($, { class: "sr-only !block" }, {
@@ -93,7 +93,8 @@ const O = { class: "text-c-2 filemask flex w-full max-w-[100%] items-end justify
93
93
  _: 1
94
94
  })
95
95
  ]),
96
- _: 2
96
+ _: 2,
97
+ __: [4]
97
98
  }, 1032, ["to"])) : (u(), i(P, {
98
99
  key: 1,
99
100
  class: "!border-r",
@@ -154,7 +155,7 @@ const O = { class: "text-c-2 filemask flex w-full max-w-[100%] items-end justify
154
155
  "onUpdate:modelValue": (a) => t("updateRow", d, "value", a)
155
156
  }, {
156
157
  icon: n(() => [
157
- I(l) && !l.required ? (u(), i(s(R), {
158
+ T(l) && !l.required ? (u(), i(s(R), {
158
159
  key: 0,
159
160
  class: v([{
160
161
  "-mr-0.5": s(h)(l)
@@ -170,7 +171,7 @@ const O = { class: "text-c-2 filemask flex w-full max-w-[100%] items-end justify
170
171
  }, 1032, ["class", "onClick"])) : k("", !0),
171
172
  s(h)(l) ? (u(), i(K, {
172
173
  key: 1,
173
- item: { ...l, default: T(l) }
174
+ item: { ...l, default: S(l) }
174
175
  }, null, 8, ["item"])) : k("", !0)
175
176
  ]),
176
177
  _: 2
@@ -192,14 +193,14 @@ const O = { class: "text-c-2 filemask flex w-full max-w-[100%] items-end justify
192
193
  p("button", {
193
194
  class: "bg-b-2 centered-x centered-y absolute hidden w-[calc(100%_-_8px)] rounded p-0.5 text-center text-xs font-medium group-hover/upload:block",
194
195
  type: "button",
195
- onClick: (_) => t("removeFile", d)
196
+ onClick: (I) => t("removeFile", d)
196
197
  }, " Delete ", 8, A)
197
198
  ], 64)) : (u(), b("div", L, [
198
199
  r(s(R), {
199
200
  class: "bg-b-2 hover:bg-b-3 text-c-2 h-fit border-0 py-px shadow-none",
200
201
  size: "sm",
201
202
  variant: "outlined",
202
- onClick: (_) => S(d)
203
+ onClick: (I) => U(d)
203
204
  }, {
204
205
  default: n(() => [
205
206
  o[5] || (o[5] = p("span", null, "Upload File", -1)),
@@ -210,7 +211,8 @@ const O = { class: "text-c-2 filemask flex w-full max-w-[100%] items-end justify
210
211
  thickness: "2.5"
211
212
  })
212
213
  ]),
213
- _: 2
214
+ _: 2,
215
+ __: [5]
214
216
  }, 1032, ["onClick"])
215
217
  ]))
216
218
  ];
@@ -330,7 +330,8 @@ const Xe = { class: "bg-b-1 sticky top-0 z-20 flex h-12 items-center px-3" }, Ye
330
330
  default: d(() => e[12] || (e[12] = [
331
331
  q(" Import Collection ")
332
332
  ])),
333
- _: 1
333
+ _: 1,
334
+ __: [12]
334
335
  }, 8, ["class"])) : m("", !0),
335
336
  t(n) !== "modal" ? (r(), u(ze, {
336
337
  key: 2,
@@ -1 +1 @@
1
- {"version":3,"file":"RequestSidebarItem.vue.d.ts","sourceRoot":"","sources":["../../../src/views/Request/RequestSidebarItem.vue"],"names":[],"mappings":"AA+rBA,OAAO,EAEL,KAAK,cAAc,EACnB,KAAK,YAAY,EACjB,KAAK,WAAW,EACjB,MAAM,mBAAmB,CAAA;AAG1B,OAAO,EAAY,QAAQ,EAAO,MAAM,KAAK,CAAA;AAU7C,OAAO,KAAK,EAAe,eAAe,EAAE,MAAM,uBAAuB,CAAA;AAIzE,KAAK,WAAW,GAAG;IACjB;;;;OAIG;IACH,WAAW,CAAC,EAAE,OAAO,CAAA;IACrB;;;;OAIG;IACH,WAAW,CAAC,EAAE,cAAc,CAAC,aAAa,CAAC,CAAA;IAC3C,oEAAoE;IACpE,UAAU,EAAE,MAAM,EAAE,CAAA;IACpB,0DAA0D;IAC1D,GAAG,EAAE,MAAM,CAAA;IACX,2CAA2C;IAC3C,QAAQ,EAAE,eAAe,CAAA;CAC1B,CAAC;AA4VF,iBAAS,cAAc;WA+tBT,OAAO,IAA6B;;oBAziCpC,IAAI;;oBAAJ,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;qCAjElB,KA5oBmB;;;;;;;oCA4oBnB,KAxoBO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;wCAqyBM,GAAG,8CACgB,GAAG,yBAC7B,GAAH,6DACe,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA+8BpB;AAqCD,KAAK,oBAAoB,GAAG,UAAU,CAAC,OAAO,cAAc,CAAC,CAAC;AAC9D,QAAA,MAAM,eAAe;;;;;;;;kFAOnB,CAAC;wBACkB,uBAAuB,CAAC,OAAO,eAAe,EAAE,oBAAoB,CAAC,OAAO,CAAC,CAAC;AAAnG,wBAAoG;AAUpG,KAAK,uBAAuB,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG;IACxC,QAAO;QACN,MAAM,EAAE,CAAC,CAAC;KAEV,CAAA;CACD,CAAC"}
1
+ {"version":3,"file":"RequestSidebarItem.vue.d.ts","sourceRoot":"","sources":["../../../src/views/Request/RequestSidebarItem.vue"],"names":[],"mappings":"AA+rBA,OAAO,EAEL,KAAK,cAAc,EACnB,KAAK,YAAY,EACjB,KAAK,WAAW,EACjB,MAAM,mBAAmB,CAAA;AAG1B,OAAO,EAAY,QAAQ,EAAO,MAAM,KAAK,CAAA;AAU7C,OAAO,KAAK,EAAe,eAAe,EAAE,MAAM,uBAAuB,CAAA;AAIzE,KAAK,WAAW,GAAG;IACjB;;;;OAIG;IACH,WAAW,CAAC,EAAE,OAAO,CAAA;IACrB;;;;OAIG;IACH,WAAW,CAAC,EAAE,cAAc,CAAC,aAAa,CAAC,CAAA;IAC3C,oEAAoE;IACpE,UAAU,EAAE,MAAM,EAAE,CAAA;IACpB,0DAA0D;IAC1D,GAAG,EAAE,MAAM,CAAA;IACX,2CAA2C;IAC3C,QAAQ,EAAE,eAAe,CAAA;CAC1B,CAAC;AA4VF,iBAAS,cAAc;WA+tBT,OAAO,IAA6B;;oBAziCpC,IAAI;;oBAAJ,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;qCAjElB,KA5oBmB;;;;;;;oCA4oBnB,KAxoBO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;wCAuyBU,GACjB,8CACqB,GAAG,yBAAyB,GAAG,6DAIlD,GAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA08BD;AAqCD,KAAK,oBAAoB,GAAG,UAAU,CAAC,OAAO,cAAc,CAAC,CAAC;AAC9D,QAAA,MAAM,eAAe;;;;;;;;kFAOnB,CAAC;wBACkB,uBAAuB,CAAC,OAAO,eAAe,EAAE,oBAAoB,CAAC,OAAO,CAAC,CAAC;AAAnG,wBAAoG;AAUpG,KAAK,uBAAuB,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG;IACxC,QAAO;QACN,MAAM,EAAE,CAAC,CAAC;KAEV,CAAA;CACD,CAAC"}
@@ -462,7 +462,8 @@ const Te = { class: "line-clamp-1 w-full pl-2 break-all" }, Me = { class: "flex
462
462
  }),
463
463
  t[19] || (t[19] = s("span", null, "Add Request", -1))
464
464
  ]),
465
- _: 1
465
+ _: 1,
466
+ __: [19]
466
467
  }, 8, ["class"])) : f("", !0)
467
468
  ])) : f("", !0)
468
469
  ];
@@ -111,7 +111,8 @@ const ge = /* @__PURE__ */ H({
111
111
  }),
112
112
  t[8] || (t[8] = g("span", null, "Add Example", -1))
113
113
  ]),
114
- _: 1
114
+ _: 1,
115
+ __: [8]
115
116
  })) : c("", !0),
116
117
  E.value ? c("", !0) : (s(), d(n(y), {
117
118
  key: 1,
@@ -175,7 +176,8 @@ const ge = /* @__PURE__ */ H({
175
176
  }),
176
177
  t[9] || (t[9] = g("span", null, "Delete", -1))
177
178
  ]),
178
- _: 1
179
+ _: 1,
180
+ __: [9]
179
181
  })),
180
182
  E.value ? (s(), d(n(y), {
181
183
  key: 4,
@@ -191,7 +193,8 @@ const ge = /* @__PURE__ */ H({
191
193
  }),
192
194
  t[10] || (t[10] = g("span", null, "Clear Drafts", -1))
193
195
  ]),
194
- _: 1
196
+ _: 1,
197
+ __: [10]
195
198
  })) : c("", !0)
196
199
  ];
197
200
  }),
@@ -42,13 +42,15 @@ const H = {
42
42
  default: e(() => t[1] || (t[1] = [
43
43
  n("Header Key")
44
44
  ])),
45
- _: 1
45
+ _: 1,
46
+ __: [1]
46
47
  }),
47
48
  a(d(x), null, {
48
49
  default: e(() => t[2] || (t[2] = [
49
50
  n("Header Value")
50
51
  ])),
51
- _: 1
52
+ _: 1,
53
+ __: [2]
52
54
  })
53
55
  ]),
54
56
  _: 1
@@ -63,7 +63,8 @@ const q = {
63
63
  default: d(() => u[1] || (u[1] = [
64
64
  x(" Binary file ")
65
65
  ])),
66
- _: 1
66
+ _: 1,
67
+ __: [1]
67
68
  })) : r("", !0)
68
69
  ])) : r("", !0)
69
70
  ];
@@ -54,7 +54,8 @@ const c = ["src"], k = ["src", "type"], w = ["src", "type"], B = ["data", "type"
54
54
  default: f(() => o[4] || (o[4] = [
55
55
  m("Preview unavailable")
56
56
  ])),
57
- _: 1
57
+ _: 1,
58
+ __: [4]
58
59
  }));
59
60
  }
60
61
  });
@@ -34,7 +34,7 @@ const W = { class: "flex-center relative flex flex-1 flex-col gap-6 p-2 capitali
34
34
  }));
35
35
  }, k = (o) => {
36
36
  o != null && o.createNew && g.name === "request" && f();
37
- }, w = "2.5.16";
37
+ }, w = "2.5.18";
38
38
  return R(() => a.hotKeys.on(k)), v(() => a.hotKeys.off(k)), (o, e) => (u(), i("div", W, [
39
39
  s("div", {
40
40
  class: y(["flex h-[calc(100%_-_50px)] flex-col items-center justify-center", {
@@ -42,13 +42,15 @@ const H = {
42
42
  default: e(() => r[1] || (r[1] = [
43
43
  n("Header Key")
44
44
  ])),
45
- _: 1
45
+ _: 1,
46
+ __: [1]
46
47
  }),
47
48
  a(u(x), null, {
48
49
  default: e(() => r[2] || (r[2] = [
49
50
  n("Header Value")
50
51
  ])),
51
- _: 1
52
+ _: 1,
53
+ __: [2]
52
54
  })
53
55
  ]),
54
56
  _: 1
@@ -1,5 +1,5 @@
1
1
  import { defineComponent as u, ref as c, createBlock as d, openBlock as l, Transition as m, withCtx as r, createElementBlock as f, createCommentVNode as p, unref as e, createVNode as i, createTextVNode as g } from "vue";
2
- import { useLoadingState as v, ScalarLoading as x, ScalarButton as _ } from "@scalar/components";
2
+ import { useLoadingState as v, ScalarLoading as _, ScalarButton as x } from "@scalar/components";
3
3
  import { useWorkspace as k } from "../../../store/store.js";
4
4
  const L = {
5
5
  key: 0,
@@ -13,19 +13,20 @@ const L = {
13
13
  }), (s, o) => (l(), d(m, null, {
14
14
  default: r(() => [
15
15
  e(t).isLoading ? (l(), f("div", L, [
16
- i(e(x), {
16
+ i(e(_), {
17
17
  class: "text-c-3",
18
18
  loadingState: e(t),
19
19
  size: "3xl"
20
20
  }, null, 8, ["loadingState"]),
21
- i(e(_), {
21
+ i(e(x), {
22
22
  variant: "ghost",
23
23
  onClick: o[0] || (o[0] = (C) => e(n).cancelRequest.emit())
24
24
  }, {
25
25
  default: r(() => o[1] || (o[1] = [
26
26
  g(" Cancel ")
27
27
  ])),
28
- _: 1
28
+ _: 1,
29
+ __: [1]
29
30
  })
30
31
  ])) : p("", !0)
31
32
  ]),
@@ -8,7 +8,7 @@ import { useWorkspace as J } from "../../../store/store.js";
8
8
  const K = { class: "flex w-[inherit] items-center text-base" }, Q = { class: "m-0 flex items-center gap-1.5 font-bold" }, X = { class: "line-clamp-1 text-left" }, Z = { class: "overflow-hidden text-ellipsis" }, ee = { class: "flex h-4 w-4 items-center justify-center" }, ce = /* @__PURE__ */ L({
9
9
  __name: "WorkspaceDropdown",
10
10
  setup(te) {
11
- const { activeWorkspace: c } = H(), { workspaces: r, workspaceMutators: _, events: T } = J(), { push: g } = P(), j = (o) => {
11
+ const { activeWorkspace: c } = H(), { workspaces: r, workspaceMutators: x, events: T } = J(), { push: g } = P(), j = (o) => {
12
12
  var t;
13
13
  o !== ((t = c.value) == null ? void 0 : t.uid) && g({
14
14
  name: "workspace",
@@ -20,7 +20,7 @@ const K = { class: "flex w-[inherit] items-center text-base" }, Q = { class: "m-
20
20
  const t = r[o];
21
21
  t && (d.value = t.name, i.value = o, u.show());
22
22
  }, R = (o) => {
23
- o.trim() && (_.edit(i.value, "name", o.trim()), u.hide());
23
+ o.trim() && (x.edit(i.value, "name", o.trim()), u.hide());
24
24
  }, M = (o) => {
25
25
  const t = r[o];
26
26
  t && (d.value = t.name, i.value = o, p.show());
@@ -28,7 +28,7 @@ const K = { class: "flex w-[inherit] items-center text-base" }, Q = { class: "m-
28
28
  var o;
29
29
  if (!b.value) {
30
30
  const t = ((o = c.value) == null ? void 0 : o.uid) === i.value, n = { ...r };
31
- if (delete n[i.value], _.delete(i.value), t) {
31
+ if (delete n[i.value], x.delete(i.value), t) {
32
32
  const m = Object.keys(n)[0];
33
33
  await g({
34
34
  name: "workspace",
@@ -63,8 +63,8 @@ const K = { class: "flex w-[inherit] items-center text-base" }, Q = { class: "m-
63
63
  items: a(() => [
64
64
  s(e(h), {
65
65
  class: "flex gap-2",
66
- onMousedown: (x) => W(n.uid),
67
- onTouchend: v((x) => W(n.uid), ["prevent"])
66
+ onMousedown: (_) => W(n.uid),
67
+ onTouchend: v((_) => W(n.uid), ["prevent"])
68
68
  }, {
69
69
  default: a(() => [
70
70
  s(e(k), {
@@ -75,13 +75,14 @@ const K = { class: "flex w-[inherit] items-center text-base" }, Q = { class: "m-
75
75
  }),
76
76
  t[2] || (t[2] = l("span", null, "Rename", -1))
77
77
  ]),
78
- _: 2
78
+ _: 2,
79
+ __: [2]
79
80
  }, 1032, ["onMousedown", "onTouchend"]),
80
81
  b.value ? U("", !0) : (f(), S(e(h), {
81
82
  key: 0,
82
83
  class: "flex gap-2",
83
- onMousedown: v((x) => M(n.uid), ["prevent"]),
84
- onTouchend: v((x) => M(n.uid), ["prevent"])
84
+ onMousedown: v((_) => M(n.uid), ["prevent"]),
85
+ onTouchend: v((_) => M(n.uid), ["prevent"])
85
86
  }, {
86
87
  default: a(() => [
87
88
  s(e(k), {
@@ -92,7 +93,8 @@ const K = { class: "flex w-[inherit] items-center text-base" }, Q = { class: "m-
92
93
  }),
93
94
  t[3] || (t[3] = l("span", null, "Delete", -1))
94
95
  ]),
95
- _: 2
96
+ _: 2,
97
+ __: [3]
96
98
  }, 1032, ["onMousedown", "onTouchend"]))
97
99
  ]),
98
100
  default: a(() => [
@@ -131,7 +133,8 @@ const K = { class: "flex w-[inherit] items-center text-base" }, Q = { class: "m-
131
133
  ]),
132
134
  t[4] || (t[4] = l("span", null, "Create Workspace", -1))
133
135
  ]),
134
- _: 1
136
+ _: 1,
137
+ __: [4]
135
138
  })
136
139
  ]),
137
140
  default: a(() => [
@@ -1 +1 @@
1
- {"version":3,"file":"oauth2.d.ts","sourceRoot":"","sources":["../../../../src/views/Request/libs/oauth2.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,eAAe,CAAA;AAClD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,iCAAiC,CAAA;AAGzE,qDAAqD;AACrD,KAAK,eAAe,GAAG,OAAO,CAAC,UAAU,EAAE;IAAE,IAAI,EAAE,UAAU,CAAA;CAAE,CAAC,CAAA;AAEhE,KAAK,SAAS,GAAG;IACf,YAAY,EAAE,MAAM,CAAA;IACpB,aAAa,EAAE,MAAM,CAAA;IACrB,mBAAmB,EAAE,MAAM,CAAA;CAC5B,CAAA;AAmBD;;GAEG;AACH,eAAO,MAAM,qBAAqB,aAAoB,MAAM,YAAY,SAAS,GAAG,OAAO,KAAG,OAAO,CAAC,MAAM,CAe3G,CAAA;AAED;;;;GAIG;AACH,eAAO,MAAM,eAAe,SACpB,UAAU,gBAEF,MAAM,aAET,MAAM,KAChB,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,CA8J/B,CAAA;AAED;;;GAGG;AACH,eAAO,MAAM,gBAAgB,SACrB,eAAe,UACb,MAAM,8BAKX;IACD,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,IAAI,CAAC,EAAE,SAAS,GAAG,IAAI,CAAA;IACvB,QAAQ,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;CAC9B,KACA,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,CAwE/B,CAAA"}
1
+ {"version":3,"file":"oauth2.d.ts","sourceRoot":"","sources":["../../../../src/views/Request/libs/oauth2.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,eAAe,CAAA;AAClD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,iCAAiC,CAAA;AAGzE,qDAAqD;AACrD,KAAK,eAAe,GAAG,OAAO,CAAC,UAAU,EAAE;IAAE,IAAI,EAAE,UAAU,CAAA;CAAE,CAAC,CAAA;AAEhE,KAAK,SAAS,GAAG;IACf,YAAY,EAAE,MAAM,CAAA;IACpB,aAAa,EAAE,MAAM,CAAA;IACrB,mBAAmB,EAAE,MAAM,CAAA;CAC5B,CAAA;AAmBD;;GAEG;AACH,eAAO,MAAM,qBAAqB,aAAoB,MAAM,YAAY,SAAS,GAAG,OAAO,KAAG,OAAO,CAAC,MAAM,CAe3G,CAAA;AAED;;;;GAIG;AACH,eAAO,MAAM,eAAe,SACpB,UAAU,gBAEF,MAAM,aAET,MAAM,KAChB,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,CA8J/B,CAAA;AAED;;;GAGG;AACH,eAAO,MAAM,gBAAgB,SACrB,eAAe,UACb,MAAM,8BAKX;IACD,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,IAAI,CAAC,EAAE,SAAS,GAAG,IAAI,CAAA;IACvB,QAAQ,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;CAC9B,KACA,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,CAiF/B,CAAA"}
@@ -1,88 +1,90 @@
1
- import { shouldUseProxy as k } from "@scalar/oas-utils/helpers";
2
- const w = () => {
1
+ import { shouldUseProxy as S } from "@scalar/oas-utils/helpers";
2
+ const k = () => {
3
3
  const e = new Uint8Array(32);
4
4
  return crypto.getRandomValues(e), btoa(String.fromCharCode(...e)).replace(/\+/g, "-").replace(/\//g, "_").replace(/=/g, "");
5
- }, x = async (e, l) => {
6
- if (l === "plain")
5
+ }, w = async (e, d) => {
6
+ if (d === "plain")
7
7
  return e;
8
- const n = new TextEncoder().encode(e), c = await crypto.subtle.digest("SHA-256", n);
8
+ const s = new TextEncoder().encode(e), c = await crypto.subtle.digest("SHA-256", s);
9
9
  return btoa(String.fromCharCode(...new Uint8Array(c))).replace(/\+/g, "-").replace(/\//g, "_").replace(/=+$/, "");
10
- }, U = async (e, l, d) => {
10
+ }, U = async (e, d, u) => {
11
11
  try {
12
12
  if (!e)
13
13
  return [new Error("Flow not found"), null];
14
- const n = e.selectedScopes.join(" ");
14
+ const s = e.selectedScopes.join(" ");
15
15
  if (e.type === "clientCredentials" || e.type === "password")
16
- return S(e, n, {
17
- proxyUrl: d
16
+ return x(e, s, {
17
+ proxyUrl: u
18
18
  });
19
19
  const c = (Math.random() + 1).toString(36).substring(2, 10), t = new URL(e.authorizationUrl);
20
- let u = null;
20
+ let i = null;
21
21
  if (e.type === "implicit")
22
22
  t.searchParams.set("response_type", "token");
23
23
  else if (e.type === "authorizationCode" && (t.searchParams.set("response_type", "code"), e["x-usePkce"] !== "no")) {
24
- const r = w(), a = await x(r, e["x-usePkce"]);
25
- u = {
24
+ const r = k(), a = await w(r, e["x-usePkce"]);
25
+ i = {
26
26
  codeVerifier: r,
27
27
  codeChallenge: a,
28
28
  codeChallengeMethod: e["x-usePkce"] === "SHA-256" ? "S256" : "plain"
29
- }, t.searchParams.set("code_challenge", a), t.searchParams.set("code_challenge_method", u.codeChallengeMethod);
29
+ }, t.searchParams.set("code_challenge", a), t.searchParams.set("code_challenge_method", i.codeChallengeMethod);
30
30
  }
31
31
  if (e["x-scalar-redirect-uri"].startsWith("/")) {
32
- const r = l.url || window.location.origin + window.location.pathname, a = new URL(e["x-scalar-redirect-uri"], r).toString();
32
+ const r = d.url || window.location.origin + window.location.pathname, a = new URL(e["x-scalar-redirect-uri"], r).toString();
33
33
  t.searchParams.set("redirect_uri", a);
34
34
  } else
35
35
  t.searchParams.set("redirect_uri", e["x-scalar-redirect-uri"]);
36
36
  e["x-scalar-security-query"] && Object.keys(e["x-scalar-security-query"]).forEach((r) => {
37
- var s;
38
- const a = (s = e["x-scalar-security-query"]) == null ? void 0 : s[r];
37
+ var n;
38
+ const a = (n = e["x-scalar-security-query"]) == null ? void 0 : n[r];
39
39
  a && t.searchParams.set(r, a);
40
- }), t.searchParams.set("client_id", e["x-scalar-client-id"]), t.searchParams.set("state", c), n && t.searchParams.set("scope", n);
41
- const i = window.open(t, "openAuth2Window", "left=100,top=100,width=800,height=600");
42
- return i ? new Promise((r) => {
40
+ }), t.searchParams.set("client_id", e["x-scalar-client-id"]), t.searchParams.set("state", c), s && t.searchParams.set("scope", s);
41
+ const o = window.open(t, "openAuth2Window", "left=100,top=100,width=800,height=600");
42
+ return o ? new Promise((r) => {
43
43
  const a = setInterval(() => {
44
44
  var _;
45
- let s = null, h = null, p = null, m = null;
45
+ let n = null, p = null, m = null, g = null;
46
46
  try {
47
- const o = new URL(i.location.href).searchParams, P = e["x-tokenName"] || "access_token";
48
- s = o.get(P), h = o.get("code"), p = o.get("error"), m = o.get("error_description");
49
- const g = new URLSearchParams(i.location.href.split("#")[1]);
50
- s || (s = g.get(P)), h || (h = g.get("code")), p || (p = g.get("error")), m || (m = g.get("error_description"));
47
+ const l = new URL(o.location.href).searchParams, P = e["x-tokenName"] || "access_token";
48
+ n = l.get(P), p = l.get("code"), m = l.get("error"), g = l.get("error_description");
49
+ const y = new URLSearchParams(o.location.href.split("#")[1]);
50
+ n || (n = y.get(P)), p || (p = y.get("code")), m || (m = y.get("error")), g || (g = y.get("error_description"));
51
51
  } catch {
52
52
  }
53
- if (i.closed || s || h || p)
54
- if (clearInterval(a), i.close(), p)
55
- r([new Error(`OAuth error: ${p}${m ? ` (${m})` : ""}`), null]);
56
- else if (s) {
57
- const o = (_ = i.location.href.match(/state=([^&]*)/)) == null ? void 0 : _[1];
58
- r(o === c ? [null, s] : [new Error("State mismatch"), null]);
59
- } else h ? new URL(i.location.href).searchParams.get("state") === c ? S(e, n, {
60
- code: h,
61
- pkce: u,
62
- proxyUrl: d
53
+ if (o.closed || n || p || m)
54
+ if (clearInterval(a), o.close(), m)
55
+ r([new Error(`OAuth error: ${m}${g ? ` (${g})` : ""}`), null]);
56
+ else if (n) {
57
+ const l = (_ = o.location.href.match(/state=([^&]*)/)) == null ? void 0 : _[1];
58
+ r(l === c ? [null, n] : [new Error("State mismatch"), null]);
59
+ } else p ? new URL(o.location.href).searchParams.get("state") === c ? x(e, s, {
60
+ code: p,
61
+ pkce: i,
62
+ proxyUrl: u
63
63
  }).then(r) : r([new Error("State mismatch"), null]) : (clearInterval(a), r([new Error("Window was closed without granting authorization"), null]));
64
64
  }, 200);
65
65
  }) : [new Error("Failed to open auth window"), null];
66
66
  } catch {
67
67
  return [new Error("Failed to authorize oauth2 flow"), null];
68
68
  }
69
- }, S = async (e, l, {
70
- code: d,
71
- pkce: n,
69
+ }, x = async (e, d, {
70
+ code: u,
71
+ pkce: s,
72
72
  proxyUrl: c
73
73
  } = {}) => {
74
74
  if (!e)
75
75
  return [new Error("OAuth2 flow was not defined"), null];
76
76
  const t = new URLSearchParams();
77
- t.set("client_id", e["x-scalar-client-id"]), l && (e.type === "clientCredentials" || e.type === "password") && t.set("scope", l), e.clientSecret && t.set("client_secret", e.clientSecret), "x-scalar-redirect-uri" in e && e["x-scalar-redirect-uri"] && t.set("redirect_uri", e["x-scalar-redirect-uri"]), d ? (t.set("code", d), t.set("grant_type", "authorization_code"), n && t.set("code_verifier", n.codeVerifier)) : e.type === "password" ? (t.set("grant_type", "password"), t.set("username", e.username), t.set("password", e.password)) : t.set("grant_type", "client_credentials");
77
+ t.set("client_id", e["x-scalar-client-id"]), d && (e.type === "clientCredentials" || e.type === "password") && t.set("scope", d), e.clientSecret && t.set("client_secret", e.clientSecret), "x-scalar-redirect-uri" in e && e["x-scalar-redirect-uri"] && t.set("redirect_uri", e["x-scalar-redirect-uri"]), u ? (t.set("code", u), t.set("grant_type", "authorization_code"), s && t.set("code_verifier", s.codeVerifier)) : e.type === "password" ? (t.set("grant_type", "password"), t.set("username", e.username), t.set("password", e.password)) : t.set("grant_type", "client_credentials"), e["x-scalar-security-body"] && Object.entries(e["x-scalar-security-body"]).forEach(([i, h]) => {
78
+ h && t.set(i, h);
79
+ });
78
80
  try {
79
- const u = {
81
+ const i = {
80
82
  "Content-Type": "application/x-www-form-urlencoded"
81
83
  };
82
- e.clientSecret && (u.Authorization = `Basic ${btoa(`${e["x-scalar-client-id"]}:${e.clientSecret}`)}`);
83
- const y = k(c, e.tokenUrl) ? `${c}?${new URLSearchParams([["scalar_url", e.tokenUrl]]).toString()}` : e.tokenUrl, r = await (await fetch(y, {
84
+ e.clientSecret && (i.Authorization = `Basic ${btoa(`${e["x-scalar-client-id"]}:${e.clientSecret}`)}`);
85
+ const h = S(c, e.tokenUrl) ? `${c}?${new URLSearchParams([["scalar_url", e.tokenUrl]]).toString()}` : e.tokenUrl, r = await (await fetch(h, {
84
86
  method: "POST",
85
- headers: u,
87
+ headers: i,
86
88
  body: t
87
89
  })).json(), a = e["x-tokenName"] || "access_token";
88
90
  return [null, r[a]];
@@ -92,6 +94,6 @@ const w = () => {
92
94
  };
93
95
  export {
94
96
  U as authorizeOauth2,
95
- S as authorizeServers,
96
- x as generateCodeChallenge
97
+ x as authorizeServers,
98
+ w as generateCodeChallenge
97
99
  };
@@ -4,9 +4,9 @@ import { themeLabels as E } from "@scalar/themes";
4
4
  import V from "../../components/ImportCollection/IntegrationLogo.vue.js";
5
5
  import { useActiveEntities as W } from "../../store/active-entities.js";
6
6
  import F from "./components/SettingsAppearance.vue.js";
7
- import C from "./components/SettingsSection.vue.js";
7
+ import w from "./components/SettingsSection.vue.js";
8
8
  import { useWorkspace as O } from "../../store/store.js";
9
- const D = { class: "bg-b-1 h-full w-full overflow-auto" }, G = { class: "mr-auto ml-auto w-full max-w-[720px] px-5 py-5" }, q = { class: "flex flex-col gap-8" }, H = { class: "flex flex-col gap-2" }, M = { class: "flex flex-col gap-2" }, X = { class: "grid grid-cols-2 gap-2" }, Y = { class: "flex items-center gap-2" }, J = { class: "flex items-center gap-1" }, K = { class: "grid grid-cols-2 gap-2" }, Q = { class: "flex items-center gap-2" }, Z = { class: "flex items-center gap-1" }, I = { class: "size-7 rounded-xl" }, w = "https://proxy.scalar.com", ce = /* @__PURE__ */ P({
9
+ const D = { class: "bg-b-1 h-full w-full overflow-auto" }, G = { class: "mr-auto ml-auto w-full max-w-[720px] px-5 py-5" }, q = { class: "flex flex-col gap-8" }, H = { class: "flex flex-col gap-2" }, M = { class: "flex flex-col gap-2" }, X = { class: "grid grid-cols-2 gap-2" }, Y = { class: "flex items-center gap-2" }, J = { class: "flex items-center gap-1" }, K = { class: "grid grid-cols-2 gap-2" }, Q = { class: "flex items-center gap-2" }, Z = { class: "flex items-center gap-1" }, I = { class: "size-7 rounded-xl" }, _ = "https://proxy.scalar.com", ce = /* @__PURE__ */ P({
10
10
  __name: "SettingsGeneral",
11
11
  setup(ee) {
12
12
  const { activeWorkspace: o } = W(), { proxyUrl: k, workspaceMutators: j } = O(), L = [
@@ -21,7 +21,7 @@ const D = { class: "bg-b-1 h-full w-full overflow-auto" }, G = { class: "mr-auto
21
21
  // 'mars',
22
22
  // 'deepSpace',
23
23
  // 'laserwave',
24
- ], N = ["elysiajs", "fastify"], _ = (x) => ({
24
+ ], N = ["elysiajs", "fastify"], C = (x) => ({
25
25
  default: { light: "#fff", dark: "#0f0f0f", accent: "#0099ff" },
26
26
  alternate: { light: "#f9f9f9", dark: "#131313", accent: "#e7e7e7" },
27
27
  moon: { light: "#ccc9b3", dark: "#313332", accent: "#645b0f" },
@@ -55,7 +55,7 @@ const D = { class: "bg-b-1 h-full w-full overflow-auto" }, G = { class: "mr-auto
55
55
  t[13] || (t[13] = r("div", null, [
56
56
  r("h2", { class: "mt-10 text-xl font-bold" }, "Settings")
57
57
  ], -1)),
58
- c(C, null, {
58
+ c(w, null, {
59
59
  title: n(() => t[3] || (t[3] = [
60
60
  a(" CORS Proxy ")
61
61
  ])),
@@ -82,21 +82,21 @@ const D = { class: "bg-b-1 h-full w-full overflow-auto" }, G = { class: "mr-auto
82
82
  class: f(
83
83
  e(v)(
84
84
  e(g)({
85
- active: ((s = e(o)) == null ? void 0 : s.proxyUrl) === w
85
+ active: ((s = e(o)) == null ? void 0 : s.proxyUrl) === _
86
86
  })
87
87
  )
88
88
  ),
89
- onClick: t[0] || (t[0] = (l) => U(w))
89
+ onClick: t[0] || (t[0] = (l) => U(_))
90
90
  }, {
91
91
  default: n(() => {
92
92
  var l, p;
93
93
  return [
94
94
  r("div", {
95
95
  class: f(["flex h-5 w-5 items-center justify-center rounded-full border-[1.5px] p-1", {
96
- "bg-c-accent text-b-1 border-transparent": ((l = e(o)) == null ? void 0 : l.proxyUrl) === w
96
+ "bg-c-accent text-b-1 border-transparent": ((l = e(o)) == null ? void 0 : l.proxyUrl) === _
97
97
  }])
98
98
  }, [
99
- ((p = e(o)) == null ? void 0 : p.proxyUrl) === w ? (d(), m(e(h), {
99
+ ((p = e(o)) == null ? void 0 : p.proxyUrl) === _ ? (d(), m(e(h), {
100
100
  key: 0,
101
101
  icon: "Checkmark",
102
102
  size: "xs",
@@ -106,9 +106,10 @@ const D = { class: "bg-b-1 h-full w-full overflow-auto" }, G = { class: "mr-auto
106
106
  t[5] || (t[5] = a(" Use proxy.scalar.com (default) "))
107
107
  ];
108
108
  }),
109
- _: 1
109
+ _: 1,
110
+ __: [5]
110
111
  }, 8, ["class"]),
111
- e(k) && e(k) !== w ? (d(), m(e(y), {
112
+ e(k) && e(k) !== _ ? (d(), m(e(y), {
112
113
  key: 0,
113
114
  class: f(
114
115
  e(v)(
@@ -162,14 +163,15 @@ const D = { class: "bg-b-1 h-full w-full overflow-auto" }, G = { class: "mr-auto
162
163
  t[6] || (t[6] = a(" Skip the proxy "))
163
164
  ];
164
165
  }),
165
- _: 1
166
+ _: 1,
167
+ __: [6]
166
168
  }, 8, ["class"])
167
169
  ])
168
170
  ];
169
171
  }),
170
172
  _: 1
171
173
  }),
172
- c(C, null, {
174
+ c(w, null, {
173
175
  title: n(() => t[7] || (t[7] = [
174
176
  a(" Themes ")
175
177
  ])),
@@ -214,19 +216,19 @@ const D = { class: "bg-b-1 h-full w-full overflow-auto" }, G = { class: "mr-auto
214
216
  r("span", {
215
217
  class: "border-c-3 -mr-3 inline-block h-5 w-5 rounded-full",
216
218
  style: $({
217
- backgroundColor: _(s).light
219
+ backgroundColor: C(s).light
218
220
  })
219
221
  }, null, 4),
220
222
  r("span", {
221
223
  class: "border-c-3 -mr-3 inline-block h-5 w-5 rounded-full",
222
224
  style: $({
223
- backgroundColor: _(s).dark
225
+ backgroundColor: C(s).dark
224
226
  })
225
227
  }, null, 4),
226
228
  r("span", {
227
229
  class: "border-c-3 inline-block h-5 w-5 rounded-full",
228
230
  style: $({
229
- backgroundColor: _(s).accent
231
+ backgroundColor: C(s).accent
230
232
  })
231
233
  }, null, 4)
232
234
  ])
@@ -240,7 +242,7 @@ const D = { class: "bg-b-1 h-full w-full overflow-auto" }, G = { class: "mr-auto
240
242
  ]),
241
243
  _: 1
242
244
  }),
243
- c(C, null, {
245
+ c(w, null, {
244
246
  title: n(() => t[9] || (t[9] = [
245
247
  a(" Framework Themes ")
246
248
  ])),
@@ -294,7 +296,7 @@ const D = { class: "bg-b-1 h-full w-full overflow-auto" }, G = { class: "mr-auto
294
296
  ]),
295
297
  _: 1
296
298
  }),
297
- c(C, null, {
299
+ c(w, null, {
298
300
  title: n(() => t[11] || (t[11] = [
299
301
  a(" Appearance ")
300
302
  ])),
@@ -1,7 +1,7 @@
1
1
  import { defineComponent as x, createElementBlock as y, openBlock as o, createVNode as l, unref as e, normalizeClass as s, withCtx as c, createElementVNode as i, createTextVNode as d, createBlock as u, createCommentVNode as f } from "vue";
2
2
  import { cva as g, ScalarButton as m, cx as p, ScalarIcon as k } from "@scalar/components";
3
3
  import { useColorMode as v } from "@scalar/use-hooks/useColorMode";
4
- const C = { class: "flex flex-col gap-2" }, z = /* @__PURE__ */ x({
4
+ const C = { class: "flex flex-col gap-2" }, j = /* @__PURE__ */ x({
5
5
  __name: "SettingsAppearance",
6
6
  setup(h) {
7
7
  const { colorMode: r, setColorMode: n } = v(), a = g({
@@ -33,7 +33,8 @@ const C = { class: "flex flex-col gap-2" }, z = /* @__PURE__ */ x({
33
33
  ], 2),
34
34
  t[3] || (t[3] = d(" System Preference (default) "))
35
35
  ]),
36
- _: 1
36
+ _: 1,
37
+ __: [3]
37
38
  }, 8, ["class"]),
38
39
  l(e(m), {
39
40
  class: s(e(p)(e(a)({ active: e(r) === "light" }))),
@@ -54,7 +55,8 @@ const C = { class: "flex flex-col gap-2" }, z = /* @__PURE__ */ x({
54
55
  ], 2),
55
56
  t[4] || (t[4] = d(" Light Mode Always "))
56
57
  ]),
57
- _: 1
58
+ _: 1,
59
+ __: [4]
58
60
  }, 8, ["class"]),
59
61
  l(e(m), {
60
62
  class: s(e(p)(e(a)({ active: e(r) === "dark" }))),
@@ -75,11 +77,12 @@ const C = { class: "flex flex-col gap-2" }, z = /* @__PURE__ */ x({
75
77
  ], 2),
76
78
  t[5] || (t[5] = d(" Dark Mode Always "))
77
79
  ]),
78
- _: 1
80
+ _: 1,
81
+ __: [5]
79
82
  }, 8, ["class"])
80
83
  ]));
81
84
  }
82
85
  });
83
86
  export {
84
- z as default
87
+ j as default
85
88
  };