@scalar/api-client 2.17.8 → 2.18.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/CHANGELOG.md +49 -0
  2. package/dist/style.css +1 -1
  3. package/dist/v2/blocks/operation-block/helpers/build-request.d.ts.map +1 -1
  4. package/dist/v2/blocks/operation-block/helpers/build-request.js +46 -51
  5. package/dist/v2/blocks/operation-block/helpers/get-environment-variables.d.ts +9 -0
  6. package/dist/v2/blocks/operation-block/helpers/get-environment-variables.d.ts.map +1 -0
  7. package/dist/v2/blocks/operation-block/helpers/get-environment-variables.js +7 -0
  8. package/dist/v2/blocks/operation-block/helpers/get-example.d.ts.map +1 -1
  9. package/dist/v2/blocks/operation-block/helpers/get-example.js +12 -10
  10. package/dist/v2/blocks/operation-block/helpers/get-server-url.d.ts +3 -0
  11. package/dist/v2/blocks/operation-block/helpers/get-server-url.d.ts.map +1 -0
  12. package/dist/v2/blocks/operation-block/helpers/get-server-url.js +12 -0
  13. package/dist/v2/blocks/scalar-address-bar-block/components/AddressBar.vue.d.ts.map +1 -1
  14. package/dist/v2/blocks/scalar-address-bar-block/components/AddressBar.vue.js +1 -1
  15. package/dist/v2/blocks/scalar-address-bar-block/components/AddressBar.vue2.js +87 -65
  16. package/dist/v2/components/code-input/CodeInput.vue.d.ts +115 -144
  17. package/dist/v2/components/code-input/CodeInput.vue.d.ts.map +1 -1
  18. package/dist/v2/components/code-input/CodeInput.vue.js +2 -2
  19. package/dist/v2/components/code-input/CodeInput.vue2.js +120 -107
  20. package/dist/v2/components/data-table/DataTableInput.vue.d.ts +3 -3
  21. package/dist/v2/components/data-table/DataTableInput.vue.d.ts.map +1 -1
  22. package/dist/v2/components/data-table/DataTableInput.vue.js +2 -2
  23. package/dist/v2/components/data-table/DataTableInput.vue2.js +27 -27
  24. package/dist/v2/components/data-table/DataTableInputSelect.vue.d.ts +3 -2
  25. package/dist/v2/components/data-table/DataTableInputSelect.vue.d.ts.map +1 -1
  26. package/dist/v2/components/data-table/DataTableInputSelect.vue.js +42 -39
  27. package/dist/v2/components/sidebar/Sidebar.vue.d.ts +5 -3
  28. package/dist/v2/components/sidebar/Sidebar.vue.d.ts.map +1 -1
  29. package/dist/v2/components/sidebar/SidebarMenu.vue.d.ts +5 -3
  30. package/dist/v2/components/sidebar/SidebarMenu.vue.d.ts.map +1 -1
  31. package/dist/v2/components/sidebar/SidebarMenu.vue.js +25 -30
  32. package/dist/v2/features/app/App.vue.d.ts.map +1 -1
  33. package/dist/v2/features/app/App.vue.js +89 -141
  34. package/dist/v2/features/app/app-events.d.ts +22 -0
  35. package/dist/v2/features/app/app-events.d.ts.map +1 -0
  36. package/dist/v2/features/app/app-events.js +136 -0
  37. package/dist/v2/features/app/app-state.d.ts +135 -0
  38. package/dist/v2/features/app/app-state.d.ts.map +1 -0
  39. package/dist/v2/features/app/app-state.js +316 -0
  40. package/dist/v2/features/app/components/AppSidebar.vue.d.ts +6 -3
  41. package/dist/v2/features/app/components/AppSidebar.vue.d.ts.map +1 -1
  42. package/dist/v2/features/app/components/AppSidebar.vue.js +3 -3
  43. package/dist/v2/features/app/components/AppSidebar.vue2.js +4 -4
  44. package/dist/v2/features/app/components/DesktopTabs.vue.d.ts +4 -2
  45. package/dist/v2/features/app/components/DesktopTabs.vue.d.ts.map +1 -1
  46. package/dist/v2/features/app/components/DesktopTabs.vue.js +25 -22
  47. package/dist/v2/features/app/components/WebTopNav.vue.d.ts +9 -5
  48. package/dist/v2/features/app/components/WebTopNav.vue.d.ts.map +1 -1
  49. package/dist/v2/features/app/helpers/create-api-client-app.d.ts +62 -1
  50. package/dist/v2/features/app/helpers/create-api-client-app.d.ts.map +1 -1
  51. package/dist/v2/features/app/helpers/create-api-client-app.js +14 -10
  52. package/dist/v2/features/app/helpers/routes.d.ts +5 -2
  53. package/dist/v2/features/app/helpers/routes.d.ts.map +1 -1
  54. package/dist/v2/features/collection/WorkspaceCollection.vue.js +7 -7
  55. package/dist/v2/features/collection/components/Form.vue.d.ts +1 -1
  56. package/dist/v2/features/collection/components/Form.vue.d.ts.map +1 -1
  57. package/dist/v2/features/collection/components/Servers.vue.d.ts.map +1 -1
  58. package/dist/v2/features/modal/Modal.vue.d.ts.map +1 -1
  59. package/dist/v2/features/modal/Modal.vue.js +2 -2
  60. package/dist/v2/features/modal/Modal.vue2.js +40 -41
  61. package/dist/v2/features/operation/Operation.vue.d.ts.map +1 -1
  62. package/dist/v2/features/operation/Operation.vue.js +38 -28
  63. package/dist/v2/features/operation/helpers/combine-params.d.ts +4 -0
  64. package/dist/v2/features/operation/helpers/combine-params.d.ts.map +1 -0
  65. package/dist/v2/features/operation/helpers/combine-params.js +13 -0
  66. package/dist/v2/features/operation/index.d.ts +1 -0
  67. package/dist/v2/features/operation/index.d.ts.map +1 -1
  68. package/dist/v2/features/operation/index.js +10 -8
  69. package/dist/v2/helpers/get-tab-details.d.ts +2 -2
  70. package/dist/v2/helpers/get-tab-details.d.ts.map +1 -1
  71. package/dist/views/Request/ResponseSection/ResponseEmpty.vue2.js +1 -1
  72. package/package.json +16 -16
  73. package/dist/v2/features/app/hooks/use-app-sidebar.d.ts +0 -40
  74. package/dist/v2/features/app/hooks/use-app-sidebar.d.ts.map +0 -1
  75. package/dist/v2/features/app/hooks/use-app-sidebar.js +0 -134
  76. package/dist/v2/features/app/hooks/use-sync-path.d.ts +0 -11
  77. package/dist/v2/features/app/hooks/use-sync-path.d.ts.map +0 -1
  78. package/dist/v2/features/app/hooks/use-sync-path.js +0 -52
  79. package/dist/v2/features/app/hooks/use-tabs.d.ts +0 -31
  80. package/dist/v2/features/app/hooks/use-tabs.d.ts.map +0 -1
  81. package/dist/v2/features/app/hooks/use-tabs.js +0 -44
  82. package/dist/v2/features/app/hooks/use-workspace-client-app-events.d.ts +0 -18
  83. package/dist/v2/features/app/hooks/use-workspace-client-app-events.d.ts.map +0 -1
  84. package/dist/v2/features/app/hooks/use-workspace-client-app-events.js +0 -156
  85. package/dist/v2/features/app/hooks/use-workspace-selector.d.ts +0 -28
  86. package/dist/v2/features/app/hooks/use-workspace-selector.d.ts.map +0 -1
  87. package/dist/v2/features/app/hooks/use-workspace-selector.js +0 -81
@@ -1,57 +1,60 @@
1
- import { defineComponent as T, computed as m, ref as y, watch as k, nextTick as E, createElementBlock as f, openBlock as o, createBlock as v, withDirectives as K, unref as a, withCtx as n, createVNode as s, createElementVNode as i, toDisplayString as V, withKeys as M, vModelText as R, createCommentVNode as C, Fragment as _, renderList as U, normalizeClass as $ } from "vue";
2
- import { ScalarComboboxMultiselect as F, ScalarButton as b, ScalarIcon as h, ScalarDropdown as L, ScalarDropdownItem as B, ScalarDropdownDivider as W } from "@scalar/components";
1
+ import { defineComponent as T, computed as p, ref as w, watch as b, nextTick as E, createElementBlock as m, openBlock as o, createBlock as f, withDirectives as K, unref as a, withCtx as n, createVNode as s, createElementVNode as i, toDisplayString as V, withKeys as M, vModelText as R, createCommentVNode as C, Fragment as _, renderList as U, normalizeClass as $ } from "vue";
2
+ import { ScalarComboboxMultiselect as F, ScalarButton as B, ScalarIcon as v, ScalarDropdown as L, ScalarDropdownItem as D, ScalarDropdownDivider as W } from "@scalar/components";
3
3
  const q = { class: "group-[.alert]:outline-orange group-[.error]:outline-red w-full pr-10 -outline-offset-1 has-[:focus-visible]:rounded-[4px] has-[:focus-visible]:outline" }, G = { class: "text-c-1 whitespace-nowrap" }, H = { class: "text-c-1 overflow-hidden text-ellipsis" }, J = { class: "overflow-hidden text-ellipsis" }, P = { class: "flex h-4 w-4 items-center justify-center" }, Z = /* @__PURE__ */ T({
4
4
  __name: "DataTableInputSelect",
5
5
  props: {
6
- modelValue: { type: [String, Number, Boolean] },
6
+ modelValue: { type: [String, Number, Boolean, Array, Object] },
7
7
  value: {},
8
- default: { type: [String, Number, Boolean] },
8
+ default: { type: [String, Number, Boolean, Array, Object] },
9
9
  canAddCustomValue: { type: Boolean, default: !0 },
10
10
  type: {}
11
11
  },
12
12
  emits: ["update:modelValue"],
13
- setup(D, { emit: z }) {
14
- const u = D, c = z, p = m(() => u.value ?? []), d = y(!1), r = y(""), x = y(null);
15
- k(r, (e) => {
13
+ setup(j, { emit: z }) {
14
+ const u = j, c = z, h = p(() => u.value ?? []), d = w(!1), r = w(""), x = w(null);
15
+ b(r, (e) => {
16
16
  c("update:modelValue", e);
17
17
  });
18
18
  const g = (e) => {
19
19
  c("update:modelValue", e), d.value = !1;
20
- }, j = () => {
21
- r.value.trim() && g(r.value);
22
20
  }, A = () => {
21
+ r.value.trim() && g(r.value);
22
+ }, N = () => {
23
23
  r.value.trim() || c("update:modelValue", ""), d.value = !1;
24
- }, N = (e) => u.modelValue.toString() === e;
25
- k(d, (e) => {
24
+ }, O = (e) => u.modelValue.toString() === e;
25
+ b(d, (e) => {
26
26
  e && E(() => {
27
27
  x.value?.focus();
28
28
  });
29
29
  });
30
- const S = m(() => u.modelValue !== void 0 ? u.modelValue : u.default), w = m(() => {
31
- const e = new Set(u.modelValue.toString().split(", "));
32
- return p.value.filter((t) => e.has(t)).map((t) => ({ id: t, label: t, value: t }));
33
- }), I = m(
34
- () => p.value.map((e) => ({ id: e, label: e, value: e }))
35
- ), O = (e) => {
30
+ const S = p(() => u.modelValue !== void 0 ? u.modelValue : u.default), k = p(
31
+ () => h.value.map((e) => {
32
+ const t = e.toString();
33
+ return { id: t, label: t, value: t };
34
+ })
35
+ ), y = p(() => {
36
+ const e = new Set(u.modelValue.toString().split(","));
37
+ return k.value.filter((t) => e.has(t.id));
38
+ }), I = (e) => {
36
39
  const t = e.map((l) => l.value);
37
- c("update:modelValue", t.join(", "));
40
+ c("update:modelValue", t.join(","));
38
41
  };
39
- return (e, t) => (o(), f("div", q, [
40
- e.type === "array" ? (o(), v(a(F), {
42
+ return (e, t) => (o(), m("div", q, [
43
+ e.type === "array" ? (o(), f(a(F), {
41
44
  key: 0,
42
- modelValue: w.value,
43
- options: I.value,
44
- "onUpdate:modelValue": O
45
+ modelValue: y.value,
46
+ options: k.value,
47
+ "onUpdate:modelValue": I
45
48
  }, {
46
49
  default: n(() => [
47
- s(a(b), {
50
+ s(a(B), {
48
51
  class: "custom-scroll h-full justify-start gap-1.5 px-2 py-1.5 pr-6 font-normal outline-none",
49
52
  fullWidth: "",
50
53
  variant: "ghost"
51
54
  }, {
52
55
  default: n(() => [
53
- i("span", G, V(w.value.length > 0 ? w.value.map((l) => l.label).join(", ") : "Select a value"), 1),
54
- s(a(h), {
56
+ i("span", G, V(y.value.length > 0 ? y.value.map((l) => l.label).join(", ") : "Select a value"), 1),
57
+ s(a(v), {
55
58
  class: "min-w-4",
56
59
  icon: "ChevronDown",
57
60
  size: "md"
@@ -61,7 +64,7 @@ const q = { class: "group-[.alert]:outline-orange group-[.error]:outline-red w-f
61
64
  })
62
65
  ]),
63
66
  _: 1
64
- }, 8, ["modelValue", "options"])) : d.value ? K((o(), f("input", {
67
+ }, 8, ["modelValue", "options"])) : d.value ? K((o(), m("input", {
65
68
  key: 1,
66
69
  ref_key: "inputRef",
67
70
  ref: x,
@@ -69,17 +72,17 @@ const q = { class: "group-[.alert]:outline-orange group-[.error]:outline-red w-f
69
72
  class: "text-c-1 w-full min-w-0 border-none px-2 py-1.5 outline-none",
70
73
  placeholder: "Value",
71
74
  type: "text",
72
- onBlur: A,
73
- onKeyup: M(j, ["enter"])
75
+ onBlur: N,
76
+ onKeyup: M(A, ["enter"])
74
77
  }, null, 544)), [
75
78
  [R, r.value]
76
- ]) : (o(), v(a(L), {
79
+ ]) : (o(), f(a(L), {
77
80
  key: 2,
78
81
  resize: "",
79
82
  value: S.value
80
83
  }, {
81
84
  items: n(() => [
82
- (o(!0), f(_, null, U(p.value, (l) => (o(), v(a(B), {
85
+ (o(!0), m(_, null, U(h.value, (l) => (o(), f(a(D), {
83
86
  key: l,
84
87
  class: "group/item flex items-center gap-1.5 overflow-hidden text-ellipsis whitespace-nowrap",
85
88
  value: l,
@@ -89,10 +92,10 @@ const q = { class: "group-[.alert]:outline-orange group-[.error]:outline-red w-f
89
92
  i("div", {
90
93
  class: $([
91
94
  "flex h-4 w-4 items-center justify-center rounded-full p-[3px]",
92
- N(l) ? "bg-c-accent text-b-1" : "shadow-border text-transparent"
95
+ O(l) ? "bg-c-accent text-b-1" : "shadow-border text-transparent"
93
96
  ])
94
97
  }, [
95
- s(a(h), {
98
+ s(a(v), {
96
99
  class: "size-2.5",
97
100
  icon: "Checkmark",
98
101
  thickness: "3"
@@ -102,15 +105,15 @@ const q = { class: "group-[.alert]:outline-orange group-[.error]:outline-red w-f
102
105
  ]),
103
106
  _: 2
104
107
  }, 1032, ["value", "onClick"]))), 128)),
105
- e.canAddCustomValue ? (o(), f(_, { key: 0 }, [
106
- p.value.length ? (o(), v(a(W), { key: 0 })) : C("", !0),
107
- s(a(B), {
108
+ e.canAddCustomValue ? (o(), m(_, { key: 0 }, [
109
+ h.value.length ? (o(), f(a(W), { key: 0 })) : C("", !0),
110
+ s(a(D), {
108
111
  class: "flex items-center gap-1.5",
109
112
  onClick: t[1] || (t[1] = (l) => d.value = !0)
110
113
  }, {
111
114
  default: n(() => [
112
115
  i("div", P, [
113
- s(a(h), {
116
+ s(a(v), {
114
117
  icon: "Add",
115
118
  size: "sm"
116
119
  })
@@ -122,13 +125,13 @@ const q = { class: "group-[.alert]:outline-orange group-[.error]:outline-red w-f
122
125
  ], 64)) : C("", !0)
123
126
  ]),
124
127
  default: n(() => [
125
- s(a(b), {
128
+ s(a(B), {
126
129
  class: "size-full justify-start gap-1.5 overflow-auto px-2 py-1.5 font-normal whitespace-nowrap outline-none",
127
130
  variant: "ghost"
128
131
  }, {
129
132
  default: n(() => [
130
133
  i("span", H, V(S.value ?? "Select a value"), 1),
131
- s(a(h), {
134
+ s(a(v), {
132
135
  icon: "ChevronDown",
133
136
  size: "md"
134
137
  })
@@ -1,8 +1,8 @@
1
+ import { type ScalarListboxOption } from '@scalar/components';
1
2
  import { type DraggingItem, type HoveredItem, type SidebarState } from '@scalar/sidebar';
2
3
  import type { WorkspaceEventBus } from '@scalar/workspace-store/events';
3
4
  import type { WorkspaceDocument } from '@scalar/workspace-store/schemas';
4
5
  import type { TraversedEntry } from '@scalar/workspace-store/schemas/navigation';
5
- import type { Workspace } from '../../../v2/features/app/hooks/use-workspace-selector.js';
6
6
  import type { ClientLayout } from '../../../v2/types/layout';
7
7
  type __VLS_Props = {
8
8
  /** All documents to display sidebar items for */
@@ -10,9 +10,11 @@ type __VLS_Props = {
10
10
  /** Layout for the client */
11
11
  layout: ClientLayout;
12
12
  /** The currently active workspace */
13
- activeWorkspace: Workspace;
13
+ activeWorkspace: {
14
+ id: string;
15
+ };
14
16
  /** The list of all available workspaces */
15
- workspaces: Workspace[];
17
+ workspaces: ScalarListboxOption[];
16
18
  /** The workspace event bus for handling workspace-level events */
17
19
  eventBus: WorkspaceEventBus;
18
20
  /** The documents belonging to the workspace */
@@ -1 +1 @@
1
- {"version":3,"file":"Sidebar.vue.d.ts","sourceRoot":"","sources":["../../../../src/v2/components/sidebar/Sidebar.vue"],"names":[],"mappings":"AAyJA,OAAO,EAEL,KAAK,YAAY,EACjB,KAAK,WAAW,EAChB,KAAK,YAAY,EAClB,MAAM,iBAAiB,CAAA;AACxB,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAA;AACvE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAA;AACxE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,4CAA4C,CAAA;AAIhF,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gDAAgD,CAAA;AAE/E,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAIrD,KAAK,WAAW,GAAG;IACjB,iDAAiD;IACjD,YAAY,EAAE,YAAY,CAAC,cAAc,CAAC,CAAA;IAC1C,4BAA4B;IAC5B,MAAM,EAAE,YAAY,CAAA;IACpB,qCAAqC;IACrC,eAAe,EAAE,SAAS,CAAA;IAC1B,2CAA2C;IAC3C,UAAU,EAAE,SAAS,EAAE,CAAA;IACvB,kEAAkE;IAClE,QAAQ,EAAE,iBAAiB,CAAA;IAC3B,+CAA+C;IAC/C,SAAS,EAAE,iBAAiB,EAAE,CAAA;IAC9B;;;;OAIG;IACH,WAAW,CAAC,EACR,OAAO,GACP,CAAC,CAAC,YAAY,EAAE,YAAY,EAAE,WAAW,EAAE,WAAW,KAAK,OAAO,CAAC,CAAA;CACxE,CAAC;AAeF,KAAK,WAAW,GAAG;IACjB,uCAAuC;IACvC,eAAe,CAAC,IAAI,OAAO,CAAA;IAC3B,sDAAsD;IACtD,SAAS,CAAC,CAAC,KAAK,EAAE;QAAE,IAAI,EAAE,cAAc,CAAA;KAAE,GAAG,OAAO,CAAA;IACpD,mDAAmD;IACnD,MAAM,CAAC,IAAI,OAAO,CAAA;IAClB,yDAAyD;IACzD,KAAK,CAAC,CAAC,KAAK,EAAE;QAAE,IAAI,EAAE,cAAc,CAAA;KAAE,GAAG,OAAO,CAAA;CACjD,CAAC;AAiBF,KAAK,iBAAiB,GAAG,WAAW,GAAG;IACvC,wCAAwC;IACxC,cAAc,EAAE,MAAM,CAAC;CACtB,CAAC;AAqNF,QAAA,MAAM,eAAe;;;;;;;;;;;;;kFAOnB,CAAC;wBACkB,eAAe,CAAC,OAAO,eAAe,EAAE,WAAW,CAAC;AAAzE,wBAA0E;AAQ1E,KAAK,eAAe,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG;IAChC,QAAO;QACN,MAAM,EAAE,CAAC,CAAC;KAEV,CAAA;CACD,CAAC"}
1
+ {"version":3,"file":"Sidebar.vue.d.ts","sourceRoot":"","sources":["../../../../src/v2/components/sidebar/Sidebar.vue"],"names":[],"mappings":"AAsJA,OAAO,EAAoB,KAAK,mBAAmB,EAAE,MAAM,oBAAoB,CAAA;AAE/E,OAAO,EAEL,KAAK,YAAY,EACjB,KAAK,WAAW,EAChB,KAAK,YAAY,EAClB,MAAM,iBAAiB,CAAA;AACxB,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAA;AACvE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAA;AACxE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,4CAA4C,CAAA;AAKhF,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAIrD,KAAK,WAAW,GAAG;IACjB,iDAAiD;IACjD,YAAY,EAAE,YAAY,CAAC,cAAc,CAAC,CAAA;IAC1C,4BAA4B;IAC5B,MAAM,EAAE,YAAY,CAAA;IACpB,qCAAqC;IACrC,eAAe,EAAE;QAAE,EAAE,EAAE,MAAM,CAAA;KAAE,CAAA;IAC/B,2CAA2C;IAC3C,UAAU,EAAE,mBAAmB,EAAE,CAAA;IACjC,kEAAkE;IAClE,QAAQ,EAAE,iBAAiB,CAAA;IAC3B,+CAA+C;IAC/C,SAAS,EAAE,iBAAiB,EAAE,CAAA;IAC9B;;;;OAIG;IACH,WAAW,CAAC,EACR,OAAO,GACP,CAAC,CAAC,YAAY,EAAE,YAAY,EAAE,WAAW,EAAE,WAAW,KAAK,OAAO,CAAC,CAAA;CACxE,CAAC;AAeF,KAAK,WAAW,GAAG;IACjB,uCAAuC;IACvC,eAAe,CAAC,IAAI,OAAO,CAAA;IAC3B,sDAAsD;IACtD,SAAS,CAAC,CAAC,KAAK,EAAE;QAAE,IAAI,EAAE,cAAc,CAAA;KAAE,GAAG,OAAO,CAAA;IACpD,mDAAmD;IACnD,MAAM,CAAC,IAAI,OAAO,CAAA;IAClB,yDAAyD;IACzD,KAAK,CAAC,CAAC,KAAK,EAAE;QAAE,IAAI,EAAE,cAAc,CAAA;KAAE,GAAG,OAAO,CAAA;CACjD,CAAC;AAiBF,KAAK,iBAAiB,GAAG,WAAW,GAAG;IACvC,wCAAwC;IACxC,cAAc,EAAE,MAAM,CAAC;CACtB,CAAC;AAqNF,QAAA,MAAM,eAAe;;;;;;;;;;;;;kFAOnB,CAAC;wBACkB,eAAe,CAAC,OAAO,eAAe,EAAE,WAAW,CAAC;AAAzE,wBAA0E;AAQ1E,KAAK,eAAe,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG;IAChC,QAAO;QACN,MAAM,EAAE,CAAC,CAAC;KAEV,CAAA;CACD,CAAC"}
@@ -1,15 +1,17 @@
1
- import type { Workspace } from '../../../v2/features/app/hooks/use-workspace-selector.js';
1
+ import { type ScalarListboxOption } from '@scalar/components';
2
2
  type __VLS_Props = {
3
3
  /**
4
4
  * The currently active workspace.
5
5
  * This represents the workspace that the user is currently working in.
6
6
  */
7
- activeWorkspace: Workspace;
7
+ activeWorkspace: {
8
+ id: string;
9
+ };
8
10
  /**
9
11
  * The list of all available workspaces.
10
12
  * Used to render options for workspace switching and selection.
11
13
  */
12
- workspaces: Workspace[];
14
+ workspaces: ScalarListboxOption[];
13
15
  };
14
16
  declare const _default: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {} & {
15
17
  "create:workspace": () => any;
@@ -1 +1 @@
1
- {"version":3,"file":"SidebarMenu.vue.d.ts","sourceRoot":"","sources":["../../../../src/v2/components/sidebar/SidebarMenu.vue"],"names":[],"mappings":"AAkGA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gDAAgD,CAAA;AAE/E,KAAK,WAAW,GAAG;IACjB;;;OAGG;IACH,eAAe,EAAE,SAAS,CAAA;IAC1B;;;OAGG;IACH,UAAU,EAAE,SAAS,EAAE,CAAA;CACxB,CAAC;;;;;;;;AAgJF,wBAOG"}
1
+ {"version":3,"file":"SidebarMenu.vue.d.ts","sourceRoot":"","sources":["../../../../src/v2/components/sidebar/SidebarMenu.vue"],"names":[],"mappings":"AA2EA,OAAO,EAOL,KAAK,mBAAmB,EACzB,MAAM,oBAAoB,CAAA;AAI3B,KAAK,WAAW,GAAG;IACjB;;;OAGG;IACH,eAAe,EAAE;QAAE,EAAE,EAAE,MAAM,CAAA;KAAE,CAAA;IAC/B;;;OAGG;IACH,UAAU,EAAE,mBAAmB,EAAE,CAAA;CAClC,CAAC;;;;;;;;AAwIF,wBAOG"}
@@ -1,42 +1,37 @@
1
- import { defineComponent as m, computed as k, createBlock as d, openBlock as S, unref as o, withCtx as t, createVNode as r, createTextVNode as i } from "vue";
2
- import { ScalarMenu as f, ScalarMenuSection as w, ScalarMenuWorkspacePicker as M, ScalarMenuLink as C, ScalarMenuResources as V, ScalarMenuSupport as v } from "@scalar/components";
3
- import { ScalarIconGear as W } from "@scalar/icons";
4
- import { RouterLink as x } from "vue-router";
5
- const L = /* @__PURE__ */ m({
1
+ import { defineComponent as c, createBlock as u, openBlock as k, unref as o, withCtx as r, createVNode as t, createTextVNode as i } from "vue";
2
+ import { ScalarMenu as m, ScalarMenuSection as d, ScalarMenuWorkspacePicker as S, ScalarMenuLink as f, ScalarMenuResources as w, ScalarMenuSupport as M } from "@scalar/components";
3
+ import { ScalarIconGear as C } from "@scalar/icons";
4
+ import { RouterLink as V } from "vue-router";
5
+ const L = /* @__PURE__ */ c({
6
6
  __name: "SidebarMenu",
7
7
  props: {
8
8
  activeWorkspace: {},
9
9
  workspaces: {}
10
10
  },
11
11
  emits: ["create:workspace", "select:workspace"],
12
- setup(l, { emit: p }) {
13
- const n = p, c = k(
14
- () => l.workspaces.map((a) => ({
15
- label: a.name,
16
- id: a.id
17
- }))
18
- );
19
- return (a, e) => (S(), d(o(f), null, {
20
- products: t(() => [...e[2] || (e[2] = [])]),
21
- sections: t(({ close: u }) => [
22
- r(o(w), null, {
23
- title: t(() => [...e[3] || (e[3] = [
12
+ setup(W, { emit: p }) {
13
+ const a = p;
14
+ return (n, e) => (k(), u(o(m), null, {
15
+ products: r(() => [...e[2] || (e[2] = [])]),
16
+ sections: r(({ close: l }) => [
17
+ t(o(d), null, {
18
+ title: r(() => [...e[3] || (e[3] = [
24
19
  i("Team", -1)
25
20
  ])]),
26
- default: t(() => [
27
- r(o(M), {
28
- modelValue: a.activeWorkspace.id,
29
- workspaceOptions: c.value,
30
- onCreateWorkspace: e[0] || (e[0] = (s) => n("create:workspace")),
31
- "onUpdate:modelValue": e[1] || (e[1] = (s) => n("select:workspace", s))
21
+ default: r(() => [
22
+ t(o(S), {
23
+ modelValue: n.activeWorkspace.id,
24
+ workspaceOptions: n.workspaces,
25
+ onCreateWorkspace: e[0] || (e[0] = (s) => a("create:workspace")),
26
+ "onUpdate:modelValue": e[1] || (e[1] = (s) => a("select:workspace", s))
32
27
  }, null, 8, ["modelValue", "workspaceOptions"]),
33
- r(o(C), {
34
- is: o(x),
35
- icon: o(W),
28
+ t(o(f), {
29
+ is: o(V),
30
+ icon: o(C),
36
31
  to: "/settings",
37
- onClick: u
32
+ onClick: l
38
33
  }, {
39
- default: t(() => [...e[4] || (e[4] = [
34
+ default: r(() => [...e[4] || (e[4] = [
40
35
  i(" Settings ", -1)
41
36
  ])]),
42
37
  _: 1
@@ -44,8 +39,8 @@ const L = /* @__PURE__ */ m({
44
39
  ]),
45
40
  _: 2
46
41
  }, 1024),
47
- r(o(V)),
48
- r(o(v))
42
+ t(o(w)),
43
+ t(o(M))
49
44
  ]),
50
45
  _: 1
51
46
  }));
@@ -1 +1 @@
1
- {"version":3,"file":"App.vue.d.ts","sourceRoot":"","sources":["../../../../src/v2/features/app/App.vue"],"names":[],"mappings":"AA+UA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAA;AAGxD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AASrD;;;;GAIG;;YAGO,OAAO,CAAC,YAAY,EAAE,OAAO,CAAC;cAC5B,YAAY,EAAE;;YADhB,OAAO,CAAC,YAAY,EAAE,OAAO,CAAC;cAC5B,YAAY,EAAE;;AAH1B,wBA+aC"}
1
+ {"version":3,"file":"App.vue.d.ts","sourceRoot":"","sources":["../../../../src/v2/features/app/App.vue"],"names":[],"mappings":"AA0MA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAA;AAGxD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAQrD;;;;GAIG;;YAGO,OAAO,CAAC,YAAY,EAAE,OAAO,CAAC;cAC5B,YAAY,EAAE;;YADhB,OAAO,CAAC,YAAY,EAAE,OAAO,CAAC;cAC5B,YAAY,EAAE;;AAH1B,wBAmTC"}
@@ -1,163 +1,111 @@
1
- import { defineComponent as $, ref as F, computed as r, createElementBlock as V, createBlock as y, unref as e, openBlock as d, Fragment as z, createElementVNode as W, createVNode as l, withCtx as G, normalizeProps as K, guardReactiveProps as j } from "vue";
2
- import { useModal as q, ScalarTeleportRoot as J } from "@scalar/components";
3
- import { isHttpMethod as Q } from "@scalar/helpers/http/is-http-method";
4
- import { getThemeStyles as X } from "@scalar/themes";
5
- import { ScalarToasts as Y } from "@scalar/use-toasts";
6
- import { createWorkspaceEventBus as Z } from "@scalar/workspace-store/events";
7
- import { useRoute as ee, useRouter as te, RouterView as oe } from "vue-router";
8
- import ae from "./components/CreateWorkspaceModal.vue.js";
9
- import re from "./components/SplashScreen.vue.js";
10
- import { useAppSidebar as se } from "./hooks/use-app-sidebar.js";
11
- import { useDocumentWatcher as ne } from "./hooks/use-document-watcher.js";
12
- import { useSyncPath as le } from "./hooks/use-sync-path.js";
13
- import { useWorkspaceSelector as ce } from "./hooks/use-workspace-selector.js";
14
- import ue from "../command-palette/components/TheCommandPalette.vue.js";
15
- import { useCommandPaletteState as pe } from "../command-palette/hooks/use-command-palette-state.js";
16
- import { getActiveEnvironment as ie } from "../../helpers/get-active-environment.js";
17
- import { useColorMode as me } from "../../hooks/use-color-mode.js";
18
- import { useGlobalHotKeys as de } from "../../hooks/use-global-hot-keys.js";
19
- import ve from "./components/AppSidebar.vue.js";
20
- import ke from "./components/DesktopTabs.vue.js";
21
- import Se from "./components/WebTopNav.vue.js";
22
- import { useTabs as fe } from "./hooks/use-tabs.js";
23
- import { useWorkspaceClientAppEvents as we } from "./hooks/use-workspace-client-app-events.js";
24
- const he = ["innerHTML"], ye = { class: "flex min-h-0 flex-1" }, We = { class: "bg-b-1 flex-1" }, be = {}, je = /* @__PURE__ */ $({
25
- ...be,
1
+ import { defineComponent as k, computed as u, createElementBlock as w, createBlock as p, unref as t, openBlock as n, Fragment as S, createElementVNode as c, createVNode as o, withCtx as f, normalizeProps as b, guardReactiveProps as h } from "vue";
2
+ import { useModal as W, ScalarTeleportRoot as T } from "@scalar/components";
3
+ import { getThemeStyles as y } from "@scalar/themes";
4
+ import { ScalarToasts as B } from "@scalar/use-toasts";
5
+ import { extensions as _ } from "@scalar/workspace-store/schemas/extensions";
6
+ import { RouterView as g } from "vue-router";
7
+ import C from "./components/CreateWorkspaceModal.vue.js";
8
+ import E from "./components/SplashScreen.vue.js";
9
+ import { useDocumentWatcher as O } from "./hooks/use-document-watcher.js";
10
+ import x from "../command-palette/components/TheCommandPalette.vue.js";
11
+ import { useColorMode as I } from "../../hooks/use-color-mode.js";
12
+ import { useGlobalHotKeys as U } from "../../hooks/use-global-hot-keys.js";
13
+ import { useAppState as M } from "./app-state.js";
14
+ import A from "./components/AppSidebar.vue.js";
15
+ import D from "./components/DesktopTabs.vue.js";
16
+ import N from "./components/WebTopNav.vue.js";
17
+ const L = ["innerHTML"], $ = { class: "flex min-h-0 flex-1" }, H = { class: "bg-b-1 flex-1" }, P = {}, se = /* @__PURE__ */ k({
18
+ ...P,
26
19
  __name: "App",
27
20
  props: {
28
21
  layout: {},
29
22
  plugins: { default: () => [] }
30
23
  },
31
- setup(v) {
32
- typeof window < "u" && (window.dataDumpWorkspace = () => o.value);
33
- const s = Z({
34
- debug: !1
35
- }), k = F(!0), B = ee(), A = te(), c = (t) => {
36
- const a = B.params[t];
37
- return typeof a == "string" ? a : void 0;
38
- }, S = r(() => c("workspaceSlug")), n = r(() => c("documentSlug")), p = r(() => !n.value || o.value === null ? null : o.value.workspace.documents[n.value] ?? null), f = r(() => {
39
- const t = c("pathEncoded");
40
- return t ? decodeURIComponent(t) : void 0;
41
- }), w = r(() => {
42
- const t = c("method");
43
- return t && Q(t) ? t : void 0;
44
- }), b = r(() => c("exampleName")), g = ce(), { store: o, workspaces: T, activeWorkspace: i, setWorkspaceId: O, createWorkspace: U } = g;
45
- me({ workspaceStore: o });
46
- const m = se({
47
- workspaceStore: o,
48
- documentSlug: n,
49
- path: f,
50
- method: w,
51
- exampleName: b
52
- }), E = fe({
53
- workspaceStore: o,
54
- getEntryByLocation: m.getEntryByLocation,
55
- workspaceSlug: S,
56
- documentSlug: n,
57
- path: f,
58
- method: w
59
- }), { isLoading: x } = le({
60
- workspaceSelectorState: g,
61
- tabsState: E,
62
- eventBus: s
63
- }), _ = pe();
64
- we({
65
- eventBus: s,
66
- document: p,
67
- workspaceStore: o,
68
- isSidebarOpen: k,
69
- commandPaletteState: _,
70
- sidebarState: m
71
- }), de(s, v.layout), ne({
72
- documentName: n,
73
- store: o,
24
+ setup(i) {
25
+ const e = M();
26
+ typeof window < "u" && (window.dataDumpWorkspace = () => e.store.value, window.dumpAppState = () => e), I({ workspaceStore: e.store }), U(e.eventBus, i.layout), O({
27
+ documentName: () => e.store.value?.workspace[_.workspace.activeDocument],
28
+ store: e.store,
74
29
  initialTimeout: 5e3
75
30
  });
76
- const I = r(
77
- () => ie(o.value, p.value)
78
- ), M = r(() => {
79
- if (o.value === null)
31
+ const m = u(() => {
32
+ if (e.store.value === null)
80
33
  return "";
81
- const t = o.value.workspace["x-scalar-theme"];
82
- return t ? `<style>${X(t)}</style>` : "";
83
- }), P = 288, D = r(
84
- () => o.value?.workspace?.["x-scalar-sidebar-width"] ?? P
85
- ), L = r(
86
- () => !!(S.value && !n.value)
87
- ), N = (t) => o.value?.update("x-scalar-sidebar-width", t), R = () => A.push({
34
+ const s = e.store.value.workspace["x-scalar-theme"];
35
+ return s ? `<style>${y(s)}</style>` : "";
36
+ }), d = () => e.router.value?.push({
88
37
  name: "workspace.environment",
89
- params: { workspaceSlug: S.value }
90
- }), C = (t) => {
91
- t && O(t);
92
- }, H = r(
93
- () => ({
94
- documentSlug: n.value ?? "",
95
- document: p.value,
96
- environment: I.value,
97
- eventBus: s,
98
- exampleName: b.value,
99
- layout: v.layout,
100
- method: w.value,
101
- path: f.value,
102
- workspaceStore: o.value,
103
- activeWorkspace: i.value,
104
- plugins: v.plugins,
105
- securitySchemes: p.value?.components?.securitySchemes ?? {}
106
- })
107
- ), h = q();
108
- return (t, a) => e(o) !== null && e(i) !== null && !e(x) ? (d(), V(z, { key: 0 }, [
109
- W("div", { innerHTML: M.value }, null, 8, he),
110
- l(e(J), null, {
111
- default: G(() => [
112
- l(e(Y)),
113
- t.layout === "desktop" ? (d(), y(ke, {
38
+ params: {
39
+ workspaceSlug: e.activeEntities.workspaceSlug.value
40
+ }
41
+ }), l = W(), v = u(() => ({
42
+ documentSlug: e.activeEntities.documentSlug.value ?? "",
43
+ document: e.store.value?.workspace.activeDocument ?? null,
44
+ environment: e.environment.value,
45
+ eventBus: e.eventBus,
46
+ exampleName: e.activeEntities.exampleName.value,
47
+ layout: i.layout,
48
+ method: e.activeEntities.method.value,
49
+ path: e.activeEntities.path.value,
50
+ workspaceStore: e.store.value,
51
+ activeWorkspace: e.workspace.activeWorkspace.value,
52
+ plugins: i.plugins,
53
+ securitySchemes: e.document.value?.components?.securitySchemes ?? {}
54
+ }));
55
+ return (s, a) => t(e).store.value !== null && t(e).workspace.activeWorkspace.value !== null && !t(e).loading.value ? (n(), w(S, { key: 0 }, [
56
+ c("div", { innerHTML: m.value }, null, 8, L),
57
+ o(t(T), null, {
58
+ default: f(() => [
59
+ o(t(B)),
60
+ s.layout === "desktop" ? (n(), p(D, {
114
61
  key: 0,
115
- eventBus: e(s),
116
- tabsState: e(E)
117
- }, null, 8, ["eventBus", "tabsState"])) : (d(), y(Se, {
62
+ activeTabIndex: t(e).tabs.activeTabIndex.value,
63
+ eventBus: t(e).eventBus,
64
+ tabs: t(e).tabs.state.value
65
+ }, null, 8, ["activeTabIndex", "eventBus", "tabs"])) : (n(), p(N, {
118
66
  key: 1,
119
- activeWorkspace: e(i),
120
- workspaces: e(T),
121
- "onCreate:workspace": a[0] || (a[0] = (u) => e(h).show()),
122
- "onSelect:workspace": C
123
- }, null, 8, ["activeWorkspace", "workspaces"])),
124
- W("main", ye, [
125
- l(ve, {
126
- isSidebarOpen: k.value,
127
- "onUpdate:isSidebarOpen": a[1] || (a[1] = (u) => k.value = u),
128
- activeWorkspace: e(i),
129
- eventBus: e(s),
130
- isWorkspaceOpen: L.value,
131
- layout: t.layout,
132
- sidebarState: e(m).state,
133
- sidebarWidth: D.value,
134
- store: e(o),
135
- workspaces: e(T),
136
- "onClick:workspace": R,
137
- "onCreate:workspace": a[2] || (a[2] = (u) => e(h).show()),
138
- "onSelect:workspace": C,
139
- onSelectItem: e(m).handleSelectItem,
140
- "onUpdate:sidebarWidth": N
141
- }, null, 8, ["isSidebarOpen", "activeWorkspace", "eventBus", "isWorkspaceOpen", "layout", "sidebarState", "sidebarWidth", "store", "workspaces", "onSelectItem"]),
142
- l(ae, {
143
- state: e(h),
144
- "onCreate:workspace": a[3] || (a[3] = (u) => e(U)(u))
67
+ activeWorkspace: t(e).workspace.activeWorkspace.value,
68
+ workspaces: t(e).workspace.workspaceList.value,
69
+ "onCreate:workspace": a[0] || (a[0] = (r) => t(l).show()),
70
+ "onSelect:workspace": t(e).workspace.setId
71
+ }, null, 8, ["activeWorkspace", "workspaces", "onSelect:workspace"])),
72
+ c("main", $, [
73
+ o(A, {
74
+ isSidebarOpen: t(e).sidebar.isOpen.value,
75
+ "onUpdate:isSidebarOpen": a[1] || (a[1] = (r) => t(e).sidebar.isOpen.value = r),
76
+ activeWorkspace: t(e).workspace.activeWorkspace.value,
77
+ eventBus: t(e).eventBus,
78
+ isWorkspaceOpen: t(e).workspace.isOpen.value,
79
+ layout: s.layout,
80
+ sidebarState: t(e).sidebar.state,
81
+ sidebarWidth: t(e).sidebar.width.value,
82
+ store: t(e).store.value,
83
+ workspaces: t(e).workspace.workspaceList.value,
84
+ "onClick:workspace": d,
85
+ "onCreate:workspace": a[2] || (a[2] = (r) => t(l).show()),
86
+ "onSelect:workspace": t(e).workspace.setId,
87
+ onSelectItem: t(e).sidebar.handleSelectItem,
88
+ "onUpdate:sidebarWidth": t(e).sidebar.handleSidebarWidthUpdate
89
+ }, null, 8, ["isSidebarOpen", "activeWorkspace", "eventBus", "isWorkspaceOpen", "layout", "sidebarState", "sidebarWidth", "store", "workspaces", "onSelect:workspace", "onSelectItem", "onUpdate:sidebarWidth"]),
90
+ o(C, {
91
+ state: t(l),
92
+ "onCreate:workspace": a[3] || (a[3] = (r) => t(e).workspace.create(r))
145
93
  }, null, 8, ["state"]),
146
- l(ue, {
147
- eventBus: e(s),
148
- paletteState: e(_),
149
- workspaceStore: e(o)
94
+ o(x, {
95
+ eventBus: t(e).eventBus,
96
+ paletteState: t(e).commandPalette,
97
+ workspaceStore: t(e).store.value
150
98
  }, null, 8, ["eventBus", "paletteState", "workspaceStore"]),
151
- W("div", We, [
152
- l(e(oe), K(j(H.value)), null, 16)
99
+ c("div", H, [
100
+ o(t(g), b(h(v.value)), null, 16)
153
101
  ])
154
102
  ])
155
103
  ]),
156
104
  _: 1
157
105
  })
158
- ], 64)) : (d(), y(re, { key: 1 }));
106
+ ], 64)) : (n(), p(E, { key: 1 }));
159
107
  }
160
108
  });
161
109
  export {
162
- je as default
110
+ se as default
163
111
  };
@@ -0,0 +1,22 @@
1
+ import type { WorkspaceStore } from '@scalar/workspace-store/client';
2
+ import type { WorkspaceEventBus } from '@scalar/workspace-store/events';
3
+ import { type OperationExampleMeta } from '@scalar/workspace-store/mutators';
4
+ import type { WorkspaceDocument } from '@scalar/workspace-store/schemas/workspace';
5
+ import { type ComputedRef, type ShallowRef } from 'vue';
6
+ import type { Router } from 'vue-router';
7
+ import type { OpenCommand } from '../command-palette/hooks/use-command-palette-state.js';
8
+ export declare function initializeAppEventHandlers({ eventBus, getStore, document, router, rebuildSidebar, navigateToCurrentTab, onSelectSidebarItem, onAfterExampleCreation, onOpenCommandPalette, onCopyTabUrl, onToggleSidebar, }: {
9
+ eventBus: WorkspaceEventBus;
10
+ getStore: () => WorkspaceStore | null;
11
+ /** Current active document */
12
+ document: ComputedRef<WorkspaceDocument | null>;
13
+ router: ShallowRef<Router | null>;
14
+ navigateToCurrentTab: () => Promise<void>;
15
+ rebuildSidebar: (documentName?: string) => void;
16
+ onSelectSidebarItem: (id: string) => void;
17
+ onAfterExampleCreation: (o: OperationExampleMeta) => void;
18
+ onOpenCommandPalette: OpenCommand;
19
+ onCopyTabUrl: (tabIndex: number) => void;
20
+ onToggleSidebar: () => void;
21
+ }): void;
22
+ //# sourceMappingURL=app-events.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"app-events.d.ts","sourceRoot":"","sources":["../../../../src/v2/features/app/app-events.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAA;AACpE,OAAO,KAAK,EAAwC,iBAAiB,EAAE,MAAM,gCAAgC,CAAA;AAE7G,OAAO,EACL,KAAK,oBAAoB,EAgD1B,MAAM,kCAAkC,CAAA;AACzC,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,2CAA2C,CAAA;AAClF,OAAO,EAAE,KAAK,WAAW,EAAE,KAAK,UAAU,EAAY,MAAM,KAAK,CAAA;AACjE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,YAAY,CAAA;AAExC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oDAAoD,CAAA;AAErF,wBAAgB,0BAA0B,CAAC,EACzC,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,MAAM,EACN,cAAc,EACd,oBAAoB,EACpB,mBAAmB,EACnB,sBAAsB,EACtB,oBAAoB,EACpB,YAAY,EACZ,eAAe,GAChB,EAAE;IACD,QAAQ,EAAE,iBAAiB,CAAA;IAC3B,QAAQ,EAAE,MAAM,cAAc,GAAG,IAAI,CAAA;IACrC,8BAA8B;IAC9B,QAAQ,EAAE,WAAW,CAAC,iBAAiB,GAAG,IAAI,CAAC,CAAA;IAC/C,MAAM,EAAE,UAAU,CAAC,MAAM,GAAG,IAAI,CAAC,CAAA;IACjC,oBAAoB,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;IACzC,cAAc,EAAE,CAAC,YAAY,CAAC,EAAE,MAAM,KAAK,IAAI,CAAA;IAC/C,mBAAmB,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAA;IACzC,sBAAsB,EAAE,CAAC,CAAC,EAAE,oBAAoB,KAAK,IAAI,CAAA;IACzD,oBAAoB,EAAE,WAAW,CAAA;IACjC,YAAY,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAA;IACxC,eAAe,EAAE,MAAM,IAAI,CAAA;CAC5B,QAySA"}