@scalar/components 0.5.0 → 0.5.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js CHANGED
@@ -1,29 +1,29 @@
1
1
  import './main.css';
2
- import { defineComponent as y, useCssVars as W, openBlock as g, createElementBlock as v, normalizeClass as h, unref as d, createElementVNode as k, createCommentVNode as E, createStaticVNode as X, reactive as $, computed as z, useAttrs as H, mergeProps as M, renderSlot as T, createVNode as C, ref as x, watch as q, nextTick as K, onServerPrefetch as Y, useSSRContext as J, onMounted as B, toDisplayString as N, defineAsyncComponent as Z, createBlock as L, resolveDynamicComponent as G, withCtx as A, normalizeStyle as F, createTextVNode as Q, withKeys as ee } from "vue";
3
- import { defineConfig as ae } from "cva";
4
- import { extendTailwindMerge as re } from "tailwind-merge";
5
- import { createHash as te, ssrState as ne } from "@scalar/oas-utils";
6
- import _ from "prismjs";
7
- import { Dialog as oe, DialogPanel as se, DialogTitle as ie, DialogDescription as le } from "@headlessui/vue";
8
- import { useTextareaAutosize as ce } from "@vueuse/core";
9
- import { nanoid as de } from "nanoid";
10
- const O = "scalar-component", pe = re({
2
+ import { defineComponent as _, useCssVars as q, openBlock as u, createElementBlock as f, normalizeClass as b, unref as i, createElementVNode as v, createCommentVNode as k, createStaticVNode as K, reactive as V, computed as C, useAttrs as T, mergeProps as L, renderSlot as w, createVNode as O, ref as D, watch as Y, nextTick as J, onServerPrefetch as Z, useSSRContext as Q, onMounted as F, toDisplayString as A, defineAsyncComponent as ee, createBlock as N, resolveDynamicComponent as j, withCtx as R, normalizeStyle as U, createTextVNode as I, Fragment as ae, withKeys as te } from "vue";
3
+ import { defineConfig as re } from "cva";
4
+ import { extendTailwindMerge as se } from "tailwind-merge";
5
+ import { createHash as oe, ssrState as ne } from "@scalar/oas-utils";
6
+ import x from "prismjs";
7
+ import { Dialog as le, DialogPanel as ie, DialogTitle as ce, DialogDescription as de } from "@headlessui/vue";
8
+ import { useTextareaAutosize as ue } from "@vueuse/core";
9
+ import { nanoid as pe } from "nanoid";
10
+ const P = "scalar-component", me = se({
11
11
  extend: {
12
12
  classGroups: {
13
13
  // Add the scalar class prefix as a custom class to be deduped by tailwind-merge
14
- [O]: [O]
14
+ [P]: [P]
15
15
  }
16
16
  }
17
- }), { cva: I, cx: S, compose: Ge } = ae({
17
+ }), { cva: $, cx: y, compose: ra } = re({
18
18
  hooks: {
19
- onComplete: (r) => `${pe(r, O)}`
19
+ onComplete: (t) => `${me(t, P)}`
20
20
  }
21
- }), ue = /* @__PURE__ */ X('<path class="svg-path svg-check-mark" d="m 0 60 l 30 30 l 70 -80" data-v-47faceda></path><path class="svg-path svg-x-mark" d="m 50 50 l 40 -40" data-v-47faceda></path><path class="svg-path svg-x-mark" d="m 50 50 l 40 40" data-v-47faceda></path><path class="svg-path svg-x-mark" d="m 50 50 l -40 -40" data-v-47faceda></path><path class="svg-path svg-x-mark" d="m 50 50 l -40 40" data-v-47faceda></path>', 5), ge = {
21
+ }), ge = /* @__PURE__ */ K('<path class="svg-path svg-check-mark" d="m 0 60 l 30 30 l 70 -80" data-v-47faceda></path><path class="svg-path svg-x-mark" d="m 50 50 l 40 -40" data-v-47faceda></path><path class="svg-path svg-x-mark" d="m 50 50 l 40 40" data-v-47faceda></path><path class="svg-path svg-x-mark" d="m 50 50 l -40 -40" data-v-47faceda></path><path class="svg-path svg-x-mark" d="m 50 50 l -40 40" data-v-47faceda></path>', 5), he = {
22
22
  key: 0,
23
23
  class: "circular-loader"
24
24
  };
25
- function Fe() {
26
- return $({
25
+ function sa() {
26
+ return V({
27
27
  isValid: !1,
28
28
  isInvalid: !1,
29
29
  isLoading: !1,
@@ -33,44 +33,44 @@ function Fe() {
33
33
  stopLoading() {
34
34
  this.isLoading = !1;
35
35
  },
36
- validate(r = 800) {
36
+ validate(t = 800) {
37
37
  this.isValid = !0;
38
- const a = r - 300;
38
+ const a = t - 300;
39
39
  return new Promise(
40
40
  (e) => setTimeout(() => this.clear().then(() => e(!0)), a)
41
41
  );
42
42
  },
43
- invalidate(r = 1100) {
43
+ invalidate(t = 1100) {
44
44
  this.isInvalid = !0;
45
- const a = r - 300;
45
+ const a = t - 300;
46
46
  return new Promise(
47
47
  (e) => setTimeout(() => this.clear().then(() => e(!0)), a)
48
48
  );
49
49
  },
50
- clear(r = 300) {
50
+ clear(t = 300) {
51
51
  return this.isValid = !1, this.isInvalid = !1, this.isLoading = !1, new Promise((a) => {
52
52
  setTimeout(() => {
53
53
  a(!0);
54
- }, r);
54
+ }, t);
55
55
  });
56
56
  }
57
57
  });
58
58
  }
59
- const me = /* @__PURE__ */ y({
59
+ const fe = /* @__PURE__ */ _({
60
60
  __name: "ScalarLoading",
61
61
  props: {
62
62
  loadingState: {},
63
63
  size: { default: "24px" }
64
64
  },
65
- setup(r) {
66
- return W((a) => ({
65
+ setup(t) {
66
+ return q((a) => ({
67
67
  d6cae758: a.size
68
- })), (a, e) => a.loadingState ? (g(), v("div", {
68
+ })), (a, e) => a.loadingState ? (u(), f("div", {
69
69
  key: 0,
70
- class: h(d(S)("loader-wrapper"))
70
+ class: b(i(y)("loader-wrapper"))
71
71
  }, [
72
- (g(), v("svg", {
73
- class: h(["svg-loader", {
72
+ (u(), f("svg", {
73
+ class: b(["svg-loader", {
74
74
  "icon-is-valid": a.loadingState.isValid,
75
75
  "icon-is-invalid": a.loadingState.isInvalid
76
76
  }]),
@@ -78,10 +78,10 @@ const me = /* @__PURE__ */ y({
78
78
  xmlns: "http://www.w3.org/2000/svg",
79
79
  "xmlns:xlink": "http://www.w3.org/1999/xlink"
80
80
  }, [
81
- ue,
82
- a.loadingState.isLoading ? (g(), v("g", ge, [
83
- k("circle", {
84
- class: h(["loader-path", {
81
+ ge,
82
+ a.loadingState.isLoading ? (u(), f("g", he, [
83
+ v("circle", {
84
+ class: b(["loader-path", {
85
85
  "loader-path-off": a.loadingState.isValid || a.loadingState.isInvalid
86
86
  }]),
87
87
  cx: "50",
@@ -90,16 +90,16 @@ const me = /* @__PURE__ */ y({
90
90
  r: "20",
91
91
  "stroke-width": "2"
92
92
  }, null, 2)
93
- ])) : E("", !0)
93
+ ])) : k("", !0)
94
94
  ], 2))
95
- ], 2)) : E("", !0);
95
+ ], 2)) : k("", !0);
96
96
  }
97
- }), D = (r, a) => {
98
- const e = r.__vccOpts || r;
99
- for (const [i, m] of a)
100
- e[i] = m;
97
+ }), z = (t, a) => {
98
+ const e = t.__vccOpts || t;
99
+ for (const [l, h] of a)
100
+ e[l] = h;
101
101
  return e;
102
- }, U = /* @__PURE__ */ D(me, [["__scopeId", "data-v-47faceda"]]), V = {
102
+ }, H = /* @__PURE__ */ z(fe, [["__scopeId", "data-v-47faceda"]]), W = {
103
103
  solid: [
104
104
  "scalar-button-solid",
105
105
  "bg-back-btn-1 text-fore-btn-1 shadow-sm active:bg-back-btn-1 active:shadow-none hocus:bg-hover-btn-1"
@@ -116,7 +116,7 @@ const me = /* @__PURE__ */ y({
116
116
  "scalar-button-danger",
117
117
  "bg-error text-white active:brightness-90 hocus:brightness-90"
118
118
  ]
119
- }, he = I({
119
+ }, ve = $({
120
120
  base: "scalar-button row cursor-pointer items-center justify-center rounded font-medium",
121
121
  variants: {
122
122
  disabled: {
@@ -124,7 +124,7 @@ const me = /* @__PURE__ */ y({
124
124
  },
125
125
  fullWidth: { true: "w-full" },
126
126
  size: { md: "h-10 px-6 text-sm" },
127
- variant: V
127
+ variant: W
128
128
  },
129
129
  compoundVariants: [
130
130
  {
@@ -133,13 +133,13 @@ const me = /* @__PURE__ */ y({
133
133
  class: "bg-transparent text-ghost"
134
134
  }
135
135
  ]
136
- }), fe = ["ariaDisabled"], ve = {
136
+ }), be = ["ariaDisabled"], Se = {
137
137
  key: 0,
138
138
  class: "mr-2 h-4 w-4"
139
- }, be = {
139
+ }, we = {
140
140
  key: 1,
141
141
  class: "ml-2"
142
- }, Se = /* @__PURE__ */ y({
142
+ }, ye = /* @__PURE__ */ _({
143
143
  inheritAttrs: !1,
144
144
  __name: "ScalarButton",
145
145
  props: {
@@ -149,34 +149,34 @@ const me = /* @__PURE__ */ y({
149
149
  size: { default: "md" },
150
150
  variant: { default: "solid" }
151
151
  },
152
- setup(r) {
153
- const a = z(() => {
154
- const { class: e, ...i } = H();
155
- return { className: e || "", rest: i };
152
+ setup(t) {
153
+ const a = C(() => {
154
+ const { class: e, ...l } = T();
155
+ return { className: e || "", rest: l };
156
156
  });
157
- return (e, i) => (g(), v("button", M(a.value.rest, {
157
+ return (e, l) => (u(), f("button", L(a.value.rest, {
158
158
  ariaDisabled: e.disabled || void 0,
159
- class: d(S)(
160
- d(he)({ fullWidth: e.fullWidth, disabled: e.disabled, size: e.size, variant: e.variant }),
159
+ class: i(y)(
160
+ i(ve)({ fullWidth: e.fullWidth, disabled: e.disabled, size: e.size, variant: e.variant }),
161
161
  { "pl-9 pr-3": e.loading },
162
162
  `${a.value.className}`
163
163
  ),
164
164
  type: "button"
165
165
  }), [
166
- e.$slots.icon ? (g(), v("div", ve, [
167
- T(e.$slots, "icon")
168
- ])) : E("", !0),
169
- T(e.$slots, "default"),
170
- e.loading ? (g(), v("div", be, [
171
- C(d(U), {
166
+ e.$slots.icon ? (u(), f("div", Se, [
167
+ w(e.$slots, "icon")
168
+ ])) : k("", !0),
169
+ w(e.$slots, "default"),
170
+ e.loading ? (u(), f("div", we, [
171
+ O(i(H), {
172
172
  loadingState: e.loading,
173
173
  size: "20px"
174
174
  }, null, 8, ["loadingState"])
175
- ])) : E("", !0)
176
- ], 16, fe));
175
+ ])) : k("", !0)
176
+ ], 16, be));
177
177
  }
178
178
  });
179
- (function(r) {
179
+ (function(t) {
180
180
  var a = "\\b(?:BASH|BASHOPTS|BASH_ALIASES|BASH_ARGC|BASH_ARGV|BASH_CMDS|BASH_COMPLETION_COMPAT_DIR|BASH_LINENO|BASH_REMATCH|BASH_SOURCE|BASH_VERSINFO|BASH_VERSION|COLORTERM|COLUMNS|COMP_WORDBREAKS|DBUS_SESSION_BUS_ADDRESS|DEFAULTS_PATH|DESKTOP_SESSION|DIRSTACK|DISPLAY|EUID|GDMSESSION|GDM_LANG|GNOME_KEYRING_CONTROL|GNOME_KEYRING_PID|GPG_AGENT_INFO|GROUPS|HISTCONTROL|HISTFILE|HISTFILESIZE|HISTSIZE|HOME|HOSTNAME|HOSTTYPE|IFS|INSTANCE|JOB|LANG|LANGUAGE|LC_ADDRESS|LC_ALL|LC_IDENTIFICATION|LC_MEASUREMENT|LC_MONETARY|LC_NAME|LC_NUMERIC|LC_PAPER|LC_TELEPHONE|LC_TIME|LESSCLOSE|LESSOPEN|LINES|LOGNAME|LS_COLORS|MACHTYPE|MAILCHECK|MANDATORY_PATH|NO_AT_BRIDGE|OLDPWD|OPTERR|OPTIND|ORBIT_SOCKETDIR|OSTYPE|PAPERSIZE|PATH|PIPESTATUS|PPID|PS1|PS2|PS3|PS4|PWD|RANDOM|REPLY|SECONDS|SELINUX_INIT|SESSION|SESSIONTYPE|SESSION_MANAGER|SHELL|SHELLOPTS|SHLVL|SSH_AUTH_SOCK|TERM|UID|UPSTART_EVENTS|UPSTART_INSTANCE|UPSTART_JOB|UPSTART_SESSION|USER|WINDOWID|XAUTHORITY|XDG_CONFIG_DIRS|XDG_CURRENT_DESKTOP|XDG_DATA_DIRS|XDG_GREETER_DATA_DIR|XDG_MENU_PREFIX|XDG_RUNTIME_DIR|XDG_SEAT|XDG_SEAT_PATH|XDG_SESSION_DESKTOP|XDG_SESSION_ID|XDG_SESSION_PATH|XDG_SESSION_TYPE|XDG_VTNR|XMODIFIERS)\\b", e = {
181
181
  pattern: /(^(["']?)\w+\2)[ \t]+\S.*/,
182
182
  lookbehind: !0,
@@ -184,7 +184,7 @@ const me = /* @__PURE__ */ y({
184
184
  // this looks reasonably well in all themes
185
185
  inside: null
186
186
  // see below
187
- }, i = {
187
+ }, l = {
188
188
  bash: e,
189
189
  environment: {
190
190
  pattern: RegExp("\\$" + a),
@@ -238,7 +238,7 @@ const me = /* @__PURE__ */ y({
238
238
  // Escape sequences from echo and printf's manuals, and escaped quotes.
239
239
  entity: /\\(?:[abceEfnrtv\\"]|O?[0-7]{1,3}|U[0-9a-fA-F]{8}|u[0-9a-fA-F]{4}|x[0-9a-fA-F]{1,2})/
240
240
  };
241
- r.languages.bash = {
241
+ t.languages.bash = {
242
242
  shebang: {
243
243
  pattern: /^#!\s*\/.*/,
244
244
  alias: "important"
@@ -296,7 +296,7 @@ const me = /* @__PURE__ */ y({
296
296
  pattern: /((?:^|[^<])<<-?\s*)(\w+)\s[\s\S]*?(?:\r?\n|\r)\2/,
297
297
  lookbehind: !0,
298
298
  greedy: !0,
299
- inside: i
299
+ inside: l
300
300
  },
301
301
  // Here-document with quotes around the tag
302
302
  // → No expansion (so no “inside”).
@@ -314,7 +314,7 @@ const me = /* @__PURE__ */ y({
314
314
  pattern: /(^|[^\\](?:\\\\)*)"(?:\\[\s\S]|\$\([^)]+\)|\$(?!\()|`[^`]+`|[^"\\`$])*"/,
315
315
  lookbehind: !0,
316
316
  greedy: !0,
317
- inside: i
317
+ inside: l
318
318
  },
319
319
  {
320
320
  // https://www.gnu.org/software/bash/manual/html_node/Single-Quotes.html
@@ -327,7 +327,7 @@ const me = /* @__PURE__ */ y({
327
327
  pattern: /\$'(?:[^'\\]|\\[\s\S])*'/,
328
328
  greedy: !0,
329
329
  inside: {
330
- entity: i.entity
330
+ entity: l.entity
331
331
  }
332
332
  }
333
333
  ],
@@ -335,7 +335,7 @@ const me = /* @__PURE__ */ y({
335
335
  pattern: RegExp("\\$?" + a),
336
336
  alias: "constant"
337
337
  },
338
- variable: i.variable,
338
+ variable: l.variable,
339
339
  function: {
340
340
  pattern: /(^|[\s;|&]|[<>]\()(?:add|apropos|apt|apt-cache|apt-get|aptitude|aspell|automysqlbackup|awk|basename|bash|bc|bconsole|bg|bzip2|cal|cargo|cat|cfdisk|chgrp|chkconfig|chmod|chown|chroot|cksum|clear|cmp|column|comm|composer|cp|cron|crontab|csplit|curl|cut|date|dc|dd|ddrescue|debootstrap|df|diff|diff3|dig|dir|dircolors|dirname|dirs|dmesg|docker|docker-compose|du|egrep|eject|env|ethtool|expand|expect|expr|fdformat|fdisk|fg|fgrep|file|find|fmt|fold|format|free|fsck|ftp|fuser|gawk|git|gparted|grep|groupadd|groupdel|groupmod|groups|grub-mkconfig|gzip|halt|head|hg|history|host|hostname|htop|iconv|id|ifconfig|ifdown|ifup|import|install|ip|java|jobs|join|kill|killall|less|link|ln|locate|logname|logrotate|look|lpc|lpr|lprint|lprintd|lprintq|lprm|ls|lsof|lynx|make|man|mc|mdadm|mkconfig|mkdir|mke2fs|mkfifo|mkfs|mkisofs|mknod|mkswap|mmv|more|most|mount|mtools|mtr|mutt|mv|nano|nc|netstat|nice|nl|node|nohup|notify-send|npm|nslookup|op|open|parted|passwd|paste|pathchk|ping|pkill|pnpm|podman|podman-compose|popd|pr|printcap|printenv|ps|pushd|pv|quota|quotacheck|quotactl|ram|rar|rcp|reboot|remsync|rename|renice|rev|rm|rmdir|rpm|rsync|scp|screen|sdiff|sed|sendmail|seq|service|sftp|sh|shellcheck|shuf|shutdown|sleep|slocate|sort|split|ssh|stat|strace|su|sudo|sum|suspend|swapon|sync|sysctl|tac|tail|tar|tee|time|timeout|top|touch|tr|traceroute|tsort|tty|umount|uname|unexpand|uniq|units|unrar|unshar|unzip|update-grub|uptime|useradd|userdel|usermod|users|uudecode|uuencode|v|vcpkg|vdir|vi|vim|virsh|vmstat|wait|watch|wc|wget|whereis|which|who|whoami|write|xargs|xdg-open|yarn|yes|zenity|zip|zsh|zypper)(?=$|[)\s;|&])/,
341
341
  lookbehind: !0
@@ -374,8 +374,8 @@ const me = /* @__PURE__ */ y({
374
374
  pattern: /(^|\s)(?:[1-9]\d*|0)(?:[.,]\d+)?\b/,
375
375
  lookbehind: !0
376
376
  }
377
- }, e.inside = r.languages.bash;
378
- for (var m = [
377
+ }, e.inside = t.languages.bash;
378
+ for (var h = [
379
379
  "comment",
380
380
  "function-name",
381
381
  "for-or-select",
@@ -391,9 +391,9 @@ const me = /* @__PURE__ */ y({
391
391
  "operator",
392
392
  "punctuation",
393
393
  "number"
394
- ], b = i.variable[1].inside, s = 0; s < m.length; s++)
395
- b[m[s]] = r.languages.bash[m[s]];
396
- r.languages.sh = r.languages.bash, r.languages.shell = r.languages.bash;
394
+ ], g = l.variable[1].inside, r = 0; r < h.length; r++)
395
+ g[h[r]] = t.languages.bash[h[r]];
396
+ t.languages.sh = t.languages.bash, t.languages.shell = t.languages.bash;
397
397
  })(Prism);
398
398
  Prism.languages.json = {
399
399
  property: {
@@ -423,7 +423,7 @@ Prism.languages.webmanifest = Prism.languages.json;
423
423
  (function() {
424
424
  if (typeof Prism > "u" || typeof document > "u")
425
425
  return;
426
- var r = "line-numbers", a = /\n(?!$)/g, e = Prism.plugins.lineNumbers = {
426
+ var t = "line-numbers", a = /\n(?!$)/g, e = Prism.plugins.lineNumbers = {
427
427
  /**
428
428
  * Get node for provided line number
429
429
  *
@@ -431,14 +431,14 @@ Prism.languages.webmanifest = Prism.languages.json;
431
431
  * @param {number} number line number
432
432
  * @returns {Element|undefined}
433
433
  */
434
- getLine: function(s, c) {
435
- if (!(s.tagName !== "PRE" || !s.classList.contains(r))) {
436
- var n = s.querySelector(".line-numbers-rows");
437
- if (n) {
438
- var l = parseInt(s.getAttribute("data-start"), 10) || 1, p = l + (n.children.length - 1);
439
- c < l && (c = l), c > p && (c = p);
440
- var t = c - l;
441
- return n.children[t];
434
+ getLine: function(r, c) {
435
+ if (!(r.tagName !== "PRE" || !r.classList.contains(t))) {
436
+ var o = r.querySelector(".line-numbers-rows");
437
+ if (o) {
438
+ var d = parseInt(r.getAttribute("data-start"), 10) || 1, p = d + (o.children.length - 1);
439
+ c < d && (c = d), c > p && (c = p);
440
+ var s = c - d;
441
+ return o.children[s];
442
442
  }
443
443
  }
444
444
  },
@@ -450,8 +450,8 @@ Prism.languages.webmanifest = Prism.languages.json;
450
450
  * @param {HTMLElement} element A `<pre>` element with line numbers.
451
451
  * @returns {void}
452
452
  */
453
- resize: function(s) {
454
- i([s]);
453
+ resize: function(r) {
454
+ l([r]);
455
455
  },
456
456
  /**
457
457
  * Whether the plugin can assume that the units font sizes and margins are not depended on the size of
@@ -465,72 +465,72 @@ Prism.languages.webmanifest = Prism.languages.json;
465
465
  */
466
466
  assumeViewportIndependence: !0
467
467
  };
468
- function i(s) {
469
- if (s = s.filter(function(n) {
470
- var l = m(n), p = l["white-space"];
468
+ function l(r) {
469
+ if (r = r.filter(function(o) {
470
+ var d = h(o), p = d["white-space"];
471
471
  return p === "pre-wrap" || p === "pre-line";
472
- }), s.length != 0) {
473
- var c = s.map(function(n) {
474
- var l = n.querySelector("code"), p = n.querySelector(".line-numbers-rows");
475
- if (!(!l || !p)) {
476
- var t = n.querySelector(".line-numbers-sizer"), u = l.textContent.split(a);
477
- t || (t = document.createElement("span"), t.className = "line-numbers-sizer", l.appendChild(t)), t.innerHTML = "0", t.style.display = "block";
478
- var o = t.getBoundingClientRect().height;
479
- return t.innerHTML = "", {
480
- element: n,
481
- lines: u,
472
+ }), r.length != 0) {
473
+ var c = r.map(function(o) {
474
+ var d = o.querySelector("code"), p = o.querySelector(".line-numbers-rows");
475
+ if (!(!d || !p)) {
476
+ var s = o.querySelector(".line-numbers-sizer"), m = d.textContent.split(a);
477
+ s || (s = document.createElement("span"), s.className = "line-numbers-sizer", d.appendChild(s)), s.innerHTML = "0", s.style.display = "block";
478
+ var n = s.getBoundingClientRect().height;
479
+ return s.innerHTML = "", {
480
+ element: o,
481
+ lines: m,
482
482
  lineHeights: [],
483
- oneLinerHeight: o,
484
- sizer: t
483
+ oneLinerHeight: n,
484
+ sizer: s
485
485
  };
486
486
  }
487
487
  }).filter(Boolean);
488
- c.forEach(function(n) {
489
- var l = n.sizer, p = n.lines, t = n.lineHeights, u = n.oneLinerHeight;
490
- t[p.length - 1] = void 0, p.forEach(function(o, f) {
491
- if (o && o.length > 1) {
492
- var w = l.appendChild(document.createElement("span"));
493
- w.style.display = "block", w.textContent = o;
488
+ c.forEach(function(o) {
489
+ var d = o.sizer, p = o.lines, s = o.lineHeights, m = o.oneLinerHeight;
490
+ s[p.length - 1] = void 0, p.forEach(function(n, S) {
491
+ if (n && n.length > 1) {
492
+ var E = d.appendChild(document.createElement("span"));
493
+ E.style.display = "block", E.textContent = n;
494
494
  } else
495
- t[f] = u;
495
+ s[S] = m;
496
496
  });
497
- }), c.forEach(function(n) {
498
- for (var l = n.sizer, p = n.lineHeights, t = 0, u = 0; u < p.length; u++)
499
- p[u] === void 0 && (p[u] = l.children[t++].getBoundingClientRect().height);
500
- }), c.forEach(function(n) {
501
- var l = n.sizer, p = n.element.querySelector(".line-numbers-rows");
502
- l.style.display = "none", l.innerHTML = "", n.lineHeights.forEach(function(t, u) {
503
- p.children[u].style.height = t + "px";
497
+ }), c.forEach(function(o) {
498
+ for (var d = o.sizer, p = o.lineHeights, s = 0, m = 0; m < p.length; m++)
499
+ p[m] === void 0 && (p[m] = d.children[s++].getBoundingClientRect().height);
500
+ }), c.forEach(function(o) {
501
+ var d = o.sizer, p = o.element.querySelector(".line-numbers-rows");
502
+ d.style.display = "none", d.innerHTML = "", o.lineHeights.forEach(function(s, m) {
503
+ p.children[m].style.height = s + "px";
504
504
  });
505
505
  });
506
506
  }
507
507
  }
508
- function m(s) {
509
- return s ? window.getComputedStyle ? getComputedStyle(s) : s.currentStyle || null : null;
508
+ function h(r) {
509
+ return r ? window.getComputedStyle ? getComputedStyle(r) : r.currentStyle || null : null;
510
510
  }
511
- var b = void 0;
511
+ var g = void 0;
512
512
  window.addEventListener("resize", function() {
513
- e.assumeViewportIndependence && b === window.innerWidth || (b = window.innerWidth, i(Array.prototype.slice.call(document.querySelectorAll("pre." + r))));
514
- }), Prism.hooks.add("complete", function(s) {
515
- if (s.code) {
513
+ e.assumeViewportIndependence && g === window.innerWidth || (g = window.innerWidth, l(Array.prototype.slice.call(document.querySelectorAll("pre." + t))));
514
+ }), Prism.hooks.add("complete", function(r) {
515
+ if (r.code) {
516
516
  var c = (
517
517
  /** @type {Element} */
518
- s.element
519
- ), n = (
518
+ r.element
519
+ ), o = (
520
520
  /** @type {HTMLElement} */
521
521
  c.parentNode
522
522
  );
523
- if (!(!n || !/pre/i.test(n.nodeName)) && !c.querySelector(".line-numbers-rows") && Prism.util.isActive(c, r)) {
524
- c.classList.remove(r), n.classList.add(r);
525
- var l = s.code.match(a), p = l ? l.length + 1 : 1, t, u = new Array(p + 1).join("<span></span>");
526
- t = document.createElement("span"), t.setAttribute("aria-hidden", "true"), t.className = "line-numbers-rows", t.innerHTML = u, n.hasAttribute("data-start") && (n.style.counterReset = "linenumber " + (parseInt(n.getAttribute("data-start"), 10) - 1)), s.element.appendChild(t), i([n]), Prism.hooks.run("line-numbers", s);
523
+ if (!(!o || !/pre/i.test(o.nodeName)) && !c.querySelector(".line-numbers-rows") && Prism.util.isActive(c, t)) {
524
+ c.classList.remove(t), o.classList.add(t);
525
+ var d = r.code.match(a), p = d ? d.length + 1 : 1, s, m = new Array(p + 1).join("<span></span>");
526
+ s = document.createElement("span"), s.setAttribute("aria-hidden", "true"), s.className = "line-numbers-rows", s.innerHTML = m, o.hasAttribute("data-start") && (o.style.counterReset = "linenumber " + (parseInt(o.getAttribute("data-start"), 10) - 1)), r.element.appendChild(s), l([o]), Prism.hooks.run("line-numbers", r);
527
527
  }
528
528
  }
529
- }), Prism.hooks.add("line-numbers", function(s) {
530
- s.plugins = s.plugins || {}, s.plugins.lineNumbers = !0;
529
+ }), Prism.hooks.add("line-numbers", function(r) {
530
+ r.plugins = r.plugins || {}, r.plugins.lineNumbers = !0;
531
531
  });
532
532
  })();
533
- const we = ["innerHTML"], Ue = /* @__PURE__ */ y({
533
+ const ke = ["innerHTML"], oa = /* @__PURE__ */ _({
534
534
  __name: "ScalarCodeBlock",
535
535
  props: {
536
536
  content: {},
@@ -538,84 +538,84 @@ const we = ["innerHTML"], Ue = /* @__PURE__ */ y({
538
538
  lineNumbers: { type: Boolean, default: !1 },
539
539
  hideCredentials: {}
540
540
  },
541
- setup(r) {
542
- const a = r, e = te(
541
+ setup(t) {
542
+ const a = t, e = oe(
543
543
  typeof a.content == "object" ? JSON.stringify(a.content) : a.content
544
- ), i = `components-scalar-code-block${e}`, { plugins: m, highlightElement: b } = _;
545
- a.hideCredentials && _.hooks.add("wrap", function(t) {
544
+ ), l = `components-scalar-code-block${e}`, { plugins: h, highlightElement: g } = x;
545
+ a.hideCredentials && x.hooks.add("wrap", function(s) {
546
546
  if (!a.hideCredentials)
547
547
  return;
548
- let u = !1;
549
- typeof a.hideCredentials == "string" ? t.content.includes(a.hideCredentials) && (u = !0) : Array.isArray(a.hideCredentials) && (u = a.hideCredentials.some(
550
- (o) => t.content.includes(o)
551
- )), u && (t.content = t.content.replace(
548
+ let m = !1;
549
+ typeof a.hideCredentials == "string" ? s.content.includes(a.hideCredentials) && (m = !0) : Array.isArray(a.hideCredentials) && (m = a.hideCredentials.some(
550
+ (n) => s.content.includes(n)
551
+ )), m && (s.content = s.content.replace(
552
552
  /<span class="credentials">.*?<\/span>/g,
553
- (o) => o.replace(/<span class="credentials">|<\/span>/g, "")
554
- ), t.content = t.content.replace(
553
+ (n) => n.replace(/<span class="credentials">|<\/span>/g, "")
554
+ ), s.content = s.content.replace(
555
555
  new RegExp(
556
556
  typeof a.hideCredentials == "string" ? a.hideCredentials : a.hideCredentials.join("|"),
557
557
  "g"
558
558
  ),
559
- (o) => `<span class="credentials">${o}</span>`
559
+ (n) => `<span class="credentials">${n}</span>`
560
560
  ));
561
561
  });
562
- const s = x(null), c = x(ne[i] ?? ""), n = z(() => a.lang === "node" ? "js" : a.lang), l = a.lang;
563
- q(
564
- [() => a.lang, () => a.content, s],
562
+ const r = D(null), c = D(ne[l] ?? ""), o = C(() => a.lang === "node" ? "js" : a.lang), d = a.lang;
563
+ Y(
564
+ [() => a.lang, () => a.content, r],
565
565
  () => {
566
- s.value && a.content && (!c.value || a.lang !== l) && (c.value = "", K(() => b(s.value)));
566
+ r.value && a.content && (!c.value || a.lang !== d) && (c.value = "", J(() => g(r.value)));
567
567
  },
568
568
  { immediate: !0 }
569
569
  );
570
570
  const p = /\n(?!$)/g;
571
- return Y(async () => {
572
- let t = "";
573
- a.lineNumbers && _.hooks.add("after-tokenize", (o) => {
574
- const f = o.code.match(p), w = f ? f.length + 1 : 1;
575
- t = `<span aria-hidden="true" class="line-numbers-rows">${new Array(w + 1).join("<span></span>")}</span>`;
571
+ return Z(async () => {
572
+ let s = "";
573
+ a.lineNumbers && x.hooks.add("after-tokenize", (n) => {
574
+ const S = n.code.match(p), E = S ? S.length + 1 : 1;
575
+ s = `<span aria-hidden="true" class="line-numbers-rows">${new Array(E + 1).join("<span></span>")}</span>`;
576
576
  });
577
- const u = _.highlight(
577
+ const m = x.highlight(
578
578
  typeof a.content == "object" ? JSON.stringify(a.content) : a.content,
579
- _.languages[n.value],
580
- n.value
579
+ x.languages[o.value],
580
+ o.value
581
581
  );
582
- if (c.value = u + t, e !== 0) {
583
- const o = J();
584
- o.payload.data[i] = u + t;
582
+ if (c.value = m + s, e !== 0) {
583
+ const n = Q();
584
+ n.payload.data[l] = m + s;
585
585
  }
586
- }), B(async () => {
587
- await import("./prism-autoloader-Dlh8Vzlw.js"), m.autoloader.languages_path = "https://cdnjs.cloudflare.com/ajax/libs/prism/1.29.0/components/";
588
- }), (t, u) => (g(), v("pre", {
589
- class: h([
590
- `scalar-component scalar-codeblock-pre language-${n.value}`,
586
+ }), F(async () => {
587
+ await import("./prism-autoloader-Dlh8Vzlw.js"), h.autoloader.languages_path = "https://cdnjs.cloudflare.com/ajax/libs/prism/1.29.0/components/";
588
+ }), (s, m) => (u(), f("pre", {
589
+ class: b([
590
+ `scalar-component scalar-codeblock-pre language-${o.value}`,
591
591
  {
592
- "line-numbers": t.lineNumbers
592
+ "line-numbers": s.lineNumbers
593
593
  }
594
594
  ])
595
595
  }, [
596
- c.value ? (g(), v("code", {
596
+ c.value ? (u(), f("code", {
597
597
  key: 0,
598
- class: h(`scalar-codeblock-code language-${n.value}`),
598
+ class: b(`scalar-codeblock-code language-${o.value}`),
599
599
  innerHTML: c.value
600
- }, null, 10, we)) : (g(), v("code", {
600
+ }, null, 10, ke)) : (u(), f("code", {
601
601
  key: 1,
602
602
  ref_key: "el",
603
- ref: s,
604
- class: h(`scalar-codeblock-code language-${n.value}`)
605
- }, N(t.content), 3))
603
+ ref: r,
604
+ class: b(`scalar-codeblock-code language-${o.value}`)
605
+ }, A(s.content), 3))
606
606
  ], 2));
607
607
  }
608
- }), R = /* @__PURE__ */ Object.assign({ "./Add.svg": () => import("./Add-MwmVL5-v.js"), "./CheckMark.svg": () => import("./CheckMark-t0gl4N9U.js"), "./ChevronDown.svg": () => import("./ChevronDown-BfsntkAH.js"), "./ChevronLeft.svg": () => import("./ChevronLeft-gsLd5xOQ.js"), "./ChevronRight.svg": () => import("./ChevronRight-CI_7n_av.js"), "./ChevronUp.svg": () => import("./ChevronUp-CjHRmG59.js"), "./Clipboard.svg": () => import("./Clipboard-CU_KxGEv.js"), "./Close.svg": () => import("./Close-DFM1qMQH.js"), "./DarkMode.svg": () => import("./DarkMode-CBsV8Q_I.js"), "./Ellipses.svg": () => import("./Ellipses-Bo_X36Hx.js"), "./ExternalLink.svg": () => import("./ExternalLink-D5zCsWas.js"), "./GitHub.svg": () => import("./GitHub-NdE6Zs9k.js"), "./LightDarkModeToggle.svg": () => import("./LightDarkModeToggle-BkvMimDa.js"), "./LightMode.svg": () => import("./LightMode-Btz6vyT_.js"), "./Logo.svg": () => import("./Logo-mtzeKD8M.js"), "./LogoAPI.svg": () => import("./LogoAPI-CaU5E6FK.js"), "./LogoClient.svg": () => import("./LogoClient-DdC-t_7P.js"), "./LogoMarket.svg": () => import("./LogoMarket-DwlApcab.js"), "./LogoSwagger.svg": () => import("./LogoSwagger-CH60H5qW.js"), "./Menu.svg": () => import("./Menu-DFi9Laso.js"), "./PaperAirplane.svg": () => import("./PaperAirplane-BC-4mGEB.js"), "./Search.svg": () => import("./Search-DqtlswRG.js"), "./arrow-chevron-down.svg": () => import("./arrow-chevron-down-C8nXK33Q.js"), "./arrow-chevron-left.svg": () => import("./arrow-chevron-left-BXUhHSEc.js"), "./arrow-chevron-right.svg": () => import("./arrow-chevron-right-CSqjaNKG.js"), "./arrow-chevron-up.svg": () => import("./arrow-chevron-up-Dr-W1IfM.js"), "./arrow-down.svg": () => import("./arrow-down-rfW-r_qd.js"), "./arrow-left.svg": () => import("./arrow-left-DDkHt-xN.js"), "./arrow-right.svg": () => import("./arrow-right-17dZkGZR.js"), "./arrow-up.svg": () => import("./arrow-up-CexG2Ble.js"), "./brand-software-development-github.svg": () => import("./brand-software-development-github-ZQnPxpDg.js"), "./interface-add.svg": () => import("./interface-add-Bthe4y9O.js"), "./interface-close.svg": () => import("./interface-close-WpJOu-2h.js"), "./programming-framework-angular.svg": () => import("./programming-framework-angular-DD4Vjgbk.js"), "./programming-framework-astro.svg": () => import("./programming-framework-astro-CLfrRt19.js"), "./programming-framework-laravel.svg": () => import("./programming-framework-laravel-kAy2wVLy.js"), "./programming-framework-nextdotjs.svg": () => import("./programming-framework-nextdotjs-BKdd_DY_.js"), "./programming-framework-react.svg": () => import("./programming-framework-react-PDgmtZuN.js"), "./programming-framework-vuedotjs.svg": () => import("./programming-framework-vuedotjs-Cv46W2aB.js"), "./programming-language-c.svg": () => import("./programming-language-c-hPGu2Zvg.js"), "./programming-language-clojure.svg": () => import("./programming-language-clojure-Cvmzky8x.js"), "./programming-language-csharp.svg": () => import("./programming-language-csharp-lqX1oWgb.js"), "./programming-language-css3.svg": () => import("./programming-language-css3-Dpp4Cr6b.js"), "./programming-language-go.svg": () => import("./programming-language-go-DoJxWwT6.js"), "./programming-language-html5.svg": () => import("./programming-language-html5-DlqJK4EL.js"), "./programming-language-http.svg": () => import("./programming-language-http-wMYwFS1I.js"), "./programming-language-java.svg": () => import("./programming-language-java-BCxG2T_w.js"), "./programming-language-javascript.svg": () => import("./programming-language-javascript-VxLvi1QG.js"), "./programming-language-json.svg": () => import("./programming-language-json-vEX_g7Zi.js"), "./programming-language-kotlin.svg": () => import("./programming-language-kotlin-DKV8vP9h.js"), "./programming-language-node.svg": () => import("./programming-language-node-Xsgx38lm.js"), "./programming-language-objc.svg": () => import("./programming-language-objc-BQXSOBsX.js"), "./programming-language-ocaml.svg": () => import("./programming-language-ocaml-BEz7gGv7.js"), "./programming-language-php.svg": () => import("./programming-language-php-GY38f8r4.js"), "./programming-language-powershell.svg": () => import("./programming-language-powershell-C9DkSp36.js"), "./programming-language-python.svg": () => import("./programming-language-python-Ct-_kNjo.js"), "./programming-language-r.svg": () => import("./programming-language-r-BGoKwua9.js"), "./programming-language-ruby.svg": () => import("./programming-language-ruby-DhdM4d7g.js"), "./programming-language-scala.svg": () => import("./programming-language-scala-BVg0dToJ.js"), "./programming-language-shell.svg": () => import("./programming-language-shell-BsTa1xI7.js"), "./programming-language-swift.svg": () => import("./programming-language-swift-Dn72xPjg.js"), "./programming-language-typescript.svg": () => import("./programming-language-typescript-CdF-HuRi.js"), "./programming-script-code.svg": () => import("./programming-script-code-DQN1veb2.js"), "./programming-tool-git.svg": () => import("./programming-tool-git-DDnQ1zGD.js"), "./programming-tool-tailwindcss.svg": () => import("./programming-tool-tailwindcss-xjXi0E6g.js") }), P = (r) => {
609
- const a = `./${r}.svg`;
610
- return R[a] ? Z(R[a]) : (console.warn(`Could not find icon: ${r}`), null);
611
- }, ye = ["src"], j = /* @__PURE__ */ y({
608
+ }), B = /* @__PURE__ */ Object.assign({ "./Add.svg": () => import("./Add-MwmVL5-v.js"), "./CheckMark.svg": () => import("./CheckMark-t0gl4N9U.js"), "./ChevronDown.svg": () => import("./ChevronDown-BfsntkAH.js"), "./ChevronLeft.svg": () => import("./ChevronLeft-gsLd5xOQ.js"), "./ChevronRight.svg": () => import("./ChevronRight-CI_7n_av.js"), "./ChevronUp.svg": () => import("./ChevronUp-CjHRmG59.js"), "./Clipboard.svg": () => import("./Clipboard-CU_KxGEv.js"), "./Close.svg": () => import("./Close-DFM1qMQH.js"), "./CodeFolder.svg": () => import("./CodeFolder-Cf9f6-KB.js"), "./DarkMode.svg": () => import("./DarkMode-CBsV8Q_I.js"), "./DocsPage.svg": () => import("./DocsPage-Do-Ol9Hb.js"), "./Ellipses.svg": () => import("./Ellipses-Bo_X36Hx.js"), "./ExternalLink.svg": () => import("./ExternalLink-D5zCsWas.js"), "./GitHub.svg": () => import("./GitHub-NdE6Zs9k.js"), "./JsonObject.svg": () => import("./JsonObject-BvFDNssB.js"), "./LightDarkModeToggle.svg": () => import("./LightDarkModeToggle-BkvMimDa.js"), "./LightMode.svg": () => import("./LightMode-Btz6vyT_.js"), "./Logo.svg": () => import("./Logo-mtzeKD8M.js"), "./LogoAPI.svg": () => import("./LogoAPI-CaU5E6FK.js"), "./LogoClient.svg": () => import("./LogoClient-DdC-t_7P.js"), "./LogoMarket.svg": () => import("./LogoMarket-DwlApcab.js"), "./LogoSwagger.svg": () => import("./LogoSwagger-CH60H5qW.js"), "./Menu.svg": () => import("./Menu-DFi9Laso.js"), "./PaperAirplane.svg": () => import("./PaperAirplane-BC-4mGEB.js"), "./Search.svg": () => import("./Search-DqtlswRG.js"), "./Terminal.svg": () => import("./Terminal-CKp--su5.js"), "./arrow-chevron-down.svg": () => import("./arrow-chevron-down-C8nXK33Q.js"), "./arrow-chevron-left.svg": () => import("./arrow-chevron-left-BXUhHSEc.js"), "./arrow-chevron-right.svg": () => import("./arrow-chevron-right-CSqjaNKG.js"), "./arrow-chevron-up.svg": () => import("./arrow-chevron-up-Dr-W1IfM.js"), "./arrow-down.svg": () => import("./arrow-down-rfW-r_qd.js"), "./arrow-left.svg": () => import("./arrow-left-DDkHt-xN.js"), "./arrow-right.svg": () => import("./arrow-right-17dZkGZR.js"), "./arrow-up.svg": () => import("./arrow-up-CexG2Ble.js"), "./brand-software-development-github.svg": () => import("./brand-software-development-github-ZQnPxpDg.js"), "./interface-add.svg": () => import("./interface-add-Bthe4y9O.js"), "./interface-close.svg": () => import("./interface-close-WpJOu-2h.js"), "./programming-framework-angular.svg": () => import("./programming-framework-angular-DD4Vjgbk.js"), "./programming-framework-astro.svg": () => import("./programming-framework-astro-CLfrRt19.js"), "./programming-framework-laravel.svg": () => import("./programming-framework-laravel-kAy2wVLy.js"), "./programming-framework-nextdotjs.svg": () => import("./programming-framework-nextdotjs-BKdd_DY_.js"), "./programming-framework-react.svg": () => import("./programming-framework-react-PDgmtZuN.js"), "./programming-framework-vuedotjs.svg": () => import("./programming-framework-vuedotjs-Cv46W2aB.js"), "./programming-language-c.svg": () => import("./programming-language-c-hPGu2Zvg.js"), "./programming-language-clojure.svg": () => import("./programming-language-clojure-Cvmzky8x.js"), "./programming-language-csharp.svg": () => import("./programming-language-csharp-lqX1oWgb.js"), "./programming-language-css3.svg": () => import("./programming-language-css3-Dpp4Cr6b.js"), "./programming-language-go.svg": () => import("./programming-language-go-DoJxWwT6.js"), "./programming-language-html5.svg": () => import("./programming-language-html5-DlqJK4EL.js"), "./programming-language-http.svg": () => import("./programming-language-http-wMYwFS1I.js"), "./programming-language-java.svg": () => import("./programming-language-java-BCxG2T_w.js"), "./programming-language-javascript.svg": () => import("./programming-language-javascript-VxLvi1QG.js"), "./programming-language-json.svg": () => import("./programming-language-json-vEX_g7Zi.js"), "./programming-language-kotlin.svg": () => import("./programming-language-kotlin-DKV8vP9h.js"), "./programming-language-node.svg": () => import("./programming-language-node-Xsgx38lm.js"), "./programming-language-objc.svg": () => import("./programming-language-objc-BQXSOBsX.js"), "./programming-language-ocaml.svg": () => import("./programming-language-ocaml-BEz7gGv7.js"), "./programming-language-php.svg": () => import("./programming-language-php-GY38f8r4.js"), "./programming-language-powershell.svg": () => import("./programming-language-powershell-C9DkSp36.js"), "./programming-language-python.svg": () => import("./programming-language-python-Ct-_kNjo.js"), "./programming-language-r.svg": () => import("./programming-language-r-BGoKwua9.js"), "./programming-language-ruby.svg": () => import("./programming-language-ruby-DhdM4d7g.js"), "./programming-language-scala.svg": () => import("./programming-language-scala-BVg0dToJ.js"), "./programming-language-shell.svg": () => import("./programming-language-shell-BsTa1xI7.js"), "./programming-language-swift.svg": () => import("./programming-language-swift-Dn72xPjg.js"), "./programming-language-typescript.svg": () => import("./programming-language-typescript-CdF-HuRi.js"), "./programming-script-code.svg": () => import("./programming-script-code-DQN1veb2.js"), "./programming-tool-git.svg": () => import("./programming-tool-git-DDnQ1zGD.js"), "./programming-tool-tailwindcss.svg": () => import("./programming-tool-tailwindcss-xjXi0E6g.js") }), G = (t) => {
609
+ const a = `./${t}.svg`;
610
+ return B[a] ? ee(B[a]) : (console.warn(`Could not find icon: ${t}`), null);
611
+ }, _e = ["src"], M = /* @__PURE__ */ _({
612
612
  __name: "ScalarIcon",
613
613
  props: {
614
614
  icon: {},
615
615
  size: {}
616
616
  },
617
- setup(r) {
618
- const a = r, e = I({
617
+ setup(t) {
618
+ const a = t, e = $({
619
619
  variants: {
620
620
  size: {
621
621
  xs: "h-3 w-3",
@@ -629,16 +629,16 @@ const we = ["innerHTML"], Ue = /* @__PURE__ */ y({
629
629
  defaultVariants: {
630
630
  size: "full"
631
631
  }
632
- }), i = P(a.icon);
633
- return (m, b) => d(i) ? (g(), L(G(d(P)(m.icon)), {
632
+ }), l = G(a.icon);
633
+ return (h, g) => i(l) ? (u(), N(j(i(G)(h.icon)), {
634
634
  key: 0,
635
- class: h(d(S)("scalar-icon", d(e)({ size: m.size })))
636
- }, null, 8, ["class"])) : (g(), v("img", {
635
+ class: b(i(y)("scalar-icon", i(e)({ size: h.size })))
636
+ }, null, 8, ["class"])) : (u(), f("img", {
637
637
  key: 1,
638
- src: m.icon
639
- }, null, 8, ye));
638
+ src: h.icon
639
+ }, null, 8, _e));
640
640
  }
641
- }), ke = ["ariaDisabled"], Ee = { class: "sr-only" }, _e = /* @__PURE__ */ y({
641
+ }), Ee = ["ariaDisabled"], Ne = { class: "sr-only" }, X = /* @__PURE__ */ _({
642
642
  __name: "ScalarIconButton",
643
643
  props: {
644
644
  label: {},
@@ -647,8 +647,8 @@ const we = ["innerHTML"], Ue = /* @__PURE__ */ y({
647
647
  variant: { default: "ghost" },
648
648
  size: { default: "md" }
649
649
  },
650
- setup(r) {
651
- const a = I({
650
+ setup(t) {
651
+ const a = $({
652
652
  base: "scalar-icon-button grid aspect-square cursor-pointer rounded",
653
653
  variants: {
654
654
  size: {
@@ -660,19 +660,19 @@ const we = ["innerHTML"], Ue = /* @__PURE__ */ y({
660
660
  disabled: {
661
661
  true: "cursor-not-allowed shadow-none"
662
662
  },
663
- variant: V
663
+ variant: W
664
664
  }
665
665
  });
666
- return (e, i) => (g(), v("button", {
666
+ return (e, l) => (u(), f("button", {
667
667
  ariaDisabled: e.disabled || void 0,
668
- class: h(d(S)(d(a)({ size: e.size, variant: e.variant, disabled: e.disabled }))),
668
+ class: b(i(y)(i(a)({ size: e.size, variant: e.variant, disabled: e.disabled }))),
669
669
  type: "button"
670
670
  }, [
671
- C(d(j), { icon: e.icon }, null, 8, ["icon"]),
672
- k("span", Ee, N(e.label), 1)
673
- ], 10, ke));
671
+ O(i(M), { icon: e.icon }, null, 8, ["icon"]),
672
+ v("span", Ne, A(e.label), 1)
673
+ ], 10, Ee));
674
674
  }
675
- }), Ve = () => $({
675
+ }), na = () => V({
676
676
  open: !1,
677
677
  show() {
678
678
  this.open = !0;
@@ -680,7 +680,7 @@ const we = ["innerHTML"], Ue = /* @__PURE__ */ y({
680
680
  hide() {
681
681
  this.open = !1;
682
682
  }
683
- }), Ne = /* @__PURE__ */ y({
683
+ }), xe = /* @__PURE__ */ _({
684
684
  __name: "ScalarModal",
685
685
  props: {
686
686
  state: {},
@@ -690,8 +690,8 @@ const we = ["innerHTML"], Ue = /* @__PURE__ */ y({
690
690
  size: { default: "md" },
691
691
  variant: {}
692
692
  },
693
- setup(r) {
694
- const a = I({
693
+ setup(t) {
694
+ const a = $({
695
695
  base: [
696
696
  "scalar-modal",
697
697
  "col leading-snug relative mx-auto mb-0 mt-20 w-full rounded-lg bg-back-2 text-left text-fore-1 opacity-0"
@@ -709,46 +709,46 @@ const we = ["innerHTML"], Ue = /* @__PURE__ */ y({
709
709
  }
710
710
  }
711
711
  });
712
- return (e, i) => (g(), L(d(oe), {
712
+ return (e, l) => (u(), N(i(le), {
713
713
  open: e.state.open,
714
- onClose: i[0] || (i[0] = (m) => e.state.hide())
714
+ onClose: l[0] || (l[0] = (h) => e.state.hide())
715
715
  }, {
716
- default: A(() => [
717
- k("div", {
718
- class: h(
719
- d(S)(
716
+ default: R(() => [
717
+ v("div", {
718
+ class: b(
719
+ i(y)(
720
720
  "scalar-modal-layout fixed left-0 top-0",
721
721
  "z-[1001] h-[100dvh] w-[100dvw]",
722
722
  "bg-backdrop p-5 opacity-0"
723
723
  )
724
724
  )
725
725
  }, [
726
- C(d(se), {
727
- class: h(d(a)({ size: e.size, variant: e.variant })),
728
- style: F({ maxWidth: e.maxWidth })
726
+ O(i(ie), {
727
+ class: b(i(a)({ size: e.size, variant: e.variant })),
728
+ style: U({ maxWidth: e.maxWidth })
729
729
  }, {
730
- default: A(() => [
731
- e.title ? (g(), L(d(ie), {
730
+ default: R(() => [
731
+ e.title ? (u(), N(i(ce), {
732
732
  key: 0,
733
- class: h(["scalar-modal-header font-semiBold m-0 rounded-lg px-6 py-3 text-left text-xs text-fore-1", { "pb-0 pt-6": e.variant === "history" }])
733
+ class: b(["scalar-modal-header font-semiBold m-0 rounded-lg px-6 py-3 text-left text-xs text-fore-1", { "pb-0 pt-6": e.variant === "history" }])
734
734
  }, {
735
- default: A(() => [
736
- Q(N(e.title), 1)
735
+ default: R(() => [
736
+ I(A(e.title), 1)
737
737
  ]),
738
738
  _: 1
739
- }, 8, ["class"])) : E("", !0),
740
- C(d(le), {
741
- class: h([
739
+ }, 8, ["class"])) : k("", !0),
740
+ O(i(de), {
741
+ class: b([
742
742
  "scalar-modal-body relative max-h-[calc(100dvh-240px)] overflow-y-auto rounded-lg bg-back-1 px-6 pb-4 pt-6",
743
- d(S)(
743
+ i(y)(
744
744
  e.bodyClass,
745
745
  e.variant === "history" && "pt-3",
746
746
  e.variant === "search" && "col max-h-[440px] overflow-hidden p-0"
747
747
  )
748
748
  ])
749
749
  }, {
750
- default: A(() => [
751
- T(e.$slots, "default", {}, void 0, !0)
750
+ default: R(() => [
751
+ w(e.$slots, "default", {}, void 0, !0)
752
752
  ]),
753
753
  _: 3
754
754
  }, 8, ["class"])
@@ -760,7 +760,141 @@ const we = ["innerHTML"], Ue = /* @__PURE__ */ y({
760
760
  _: 3
761
761
  }, 8, ["open"]));
762
762
  }
763
- }), Ie = /* @__PURE__ */ D(Ne, [["__scopeId", "data-v-ff85ced0"]]), Ae = { class: "scalar-input-container relative" }, Te = ["for"], Ce = { class: "icon-slot cursor-pointer text-ghost hover:text-fore-1 !empty:flex !empty:w-7 !empty:items-center !empty:pr-3" }, xe = /* @__PURE__ */ y({
763
+ }), Ie = /* @__PURE__ */ z(xe, [["__scopeId", "data-v-ff85ced0"]]), Ae = { class: "sr-only" }, Ce = ["value"], Te = /* @__PURE__ */ _({
764
+ inheritAttrs: !1,
765
+ __name: "ScalarSearchInput",
766
+ props: {
767
+ loading: {},
768
+ modelValue: {}
769
+ },
770
+ emits: ["update:modelValue"],
771
+ setup(t, { emit: a }) {
772
+ const e = a;
773
+ function l(g) {
774
+ e("update:modelValue", g.target.value);
775
+ }
776
+ const h = C(() => {
777
+ const { class: g, ...r } = T();
778
+ return { className: g || "", rest: r };
779
+ });
780
+ return (g, r) => (u(), f("label", L(h.value.rest, {
781
+ class: i(y)(
782
+ "flex rounded border bg-back-1 text-sm font-medium focus-within:border-fore-1",
783
+ h.value.className
784
+ )
785
+ }), [
786
+ v("span", Ae, [
787
+ w(g.$slots, "label", {}, () => [
788
+ I("Enter search")
789
+ ])
790
+ ]),
791
+ v("input", {
792
+ autocapitalize: "off",
793
+ autocomplete: "off",
794
+ autocorrect: "off",
795
+ class: "flex-1 rounded bg-transparent p-3 outline-none",
796
+ placeholder: "Search...",
797
+ spellcheck: "false",
798
+ type: "text",
799
+ value: g.modelValue,
800
+ onInput: l
801
+ }, null, 40, Ce),
802
+ g.loading && g.loading.isLoading ? (u(), N(i(H), {
803
+ key: 0,
804
+ class: "mr-3 self-center",
805
+ loadingState: g.loading,
806
+ size: "20px"
807
+ }, null, 8, ["loadingState"])) : g.modelValue ? (u(), N(i(X), {
808
+ key: 1,
809
+ class: "self-center",
810
+ icon: "Close",
811
+ label: "Clear Search",
812
+ size: "md",
813
+ onClick: r[0] || (r[0] = (c) => e("update:modelValue", ""))
814
+ })) : k("", !0)
815
+ ], 16));
816
+ }
817
+ }), Le = { class: "flex flex-col items-center gap-2 px-3 py-4" }, $e = /* @__PURE__ */ v("div", { class: "rotate-90 text-lg font-bold" }, ":(", -1), Re = { class: "text-sm font-medium text-fore-2" }, Oe = /* @__PURE__ */ _({
818
+ inheritAttrs: !1,
819
+ __name: "ScalarSearchResultList",
820
+ props: {
821
+ noResults: { type: Boolean }
822
+ },
823
+ setup(t) {
824
+ const a = C(() => {
825
+ const { class: e, ...l } = T();
826
+ return { className: e || "", rest: l };
827
+ });
828
+ return (e, l) => (u(), f("ul", L(a.value.rest, {
829
+ class: i(y)("flex flex-col", a.value.className)
830
+ }), [
831
+ e.noResults ? w(e.$slots, "noResults", { key: 0 }, () => [
832
+ v("div", Le, [
833
+ $e,
834
+ v("div", Re, [
835
+ I(" No results found "),
836
+ e.$slots.query ? (u(), f(ae, { key: 0 }, [
837
+ I('for "'),
838
+ w(e.$slots, "query"),
839
+ I('"')
840
+ ], 64)) : k("", !0)
841
+ ])
842
+ ])
843
+ ]) : k("", !0),
844
+ w(e.$slots, "default")
845
+ ], 16));
846
+ }
847
+ }), De = { class: "contents" }, Pe = { class: "text-fore-3 group-hover:text-fore-1" }, ze = { class: "flex flex-1 flex-col gap-0.75" }, He = { class: "flex items-center" }, Me = { class: "flex-1 truncate text-sm font-medium" }, Be = {
848
+ key: 0,
849
+ class: "text-xs text-fore-2"
850
+ }, Ge = { class: "truncate text-xs text-fore-2" }, Ve = /* @__PURE__ */ _({
851
+ inheritAttrs: !1,
852
+ __name: "ScalarSearchResultItem",
853
+ props: {
854
+ icon: {},
855
+ active: { type: Boolean }
856
+ },
857
+ setup(t) {
858
+ const a = C(() => {
859
+ const { class: e, ...l } = T();
860
+ return { className: e || "", rest: l };
861
+ });
862
+ return (e, l) => (u(), f("li", De, [
863
+ v("a", L(a.value.rest, {
864
+ class: i(y)(
865
+ "group flex cursor-pointer gap-3 rounded px-3 py-1.5 no-underline hover:bg-back-2",
866
+ {
867
+ "bg-back-2": e.active
868
+ },
869
+ a.value.className
870
+ )
871
+ }), [
872
+ v("div", Pe, [
873
+ w(e.$slots, "icon", {}, () => [
874
+ e.icon ? (u(), N(i(M), {
875
+ key: 0,
876
+ icon: e.icon,
877
+ size: "sm"
878
+ }, null, 8, ["icon"])) : k("", !0)
879
+ ])
880
+ ]),
881
+ v("div", ze, [
882
+ v("div", He, [
883
+ v("div", Me, [
884
+ w(e.$slots, "default")
885
+ ]),
886
+ e.$slots.addon ? (u(), f("div", Be, [
887
+ w(e.$slots, "addon")
888
+ ])) : k("", !0)
889
+ ]),
890
+ v("div", Ge, [
891
+ w(e.$slots, "description")
892
+ ])
893
+ ])
894
+ ], 16)
895
+ ]));
896
+ }
897
+ }), Fe = { class: "scalar-input-container relative" }, je = ["for"], Ue = { class: "icon-slot cursor-pointer text-ghost hover:text-fore-1 !empty:flex !empty:w-7 !empty:items-center !empty:pr-3" }, We = /* @__PURE__ */ _({
764
898
  __name: "ScalarTextField",
765
899
  props: {
766
900
  modelValue: {},
@@ -776,8 +910,8 @@ const we = ["innerHTML"], Ue = /* @__PURE__ */ y({
776
910
  disableTrim: { type: Boolean, default: !1 }
777
911
  },
778
912
  emits: ["submit", "update:modelValue"],
779
- setup(r, { emit: a }) {
780
- const e = r, i = a, m = I({
913
+ setup(t, { emit: a }) {
914
+ const e = t, l = a, h = $({
781
915
  base: "scalar-input-wrapper relative flex items-center rounded border border-solid border-border",
782
916
  variants: {
783
917
  focus: {
@@ -785,81 +919,81 @@ const we = ["innerHTML"], Ue = /* @__PURE__ */ y({
785
919
  },
786
920
  error: { true: "scalar-input-wrapper-error border-error" }
787
921
  }
788
- }), b = H(), s = b.id || `id-${de()}`, c = x(), n = x(!1);
789
- let l;
922
+ }), g = T(), r = g.id || `id-${pe()}`, c = D(), o = D(!1);
923
+ let d;
790
924
  if (e.isMultiline) {
791
- const { triggerResize: o } = ce({
925
+ const { triggerResize: n } = ue({
792
926
  element: c,
793
927
  input: e.modelValue
794
928
  });
795
- l = o;
929
+ d = n;
796
930
  }
797
- function p(o) {
798
- const f = o.target.value;
799
- e.isMultiline && l(), e.handleFieldChange ? e.handleFieldChange(f) : i("update:modelValue", f);
931
+ function p(n) {
932
+ const S = n.target.value;
933
+ e.isMultiline && d(), e.handleFieldChange ? e.handleFieldChange(S) : l("update:modelValue", S);
800
934
  }
801
- function t(o) {
802
- const f = o.target, w = e.disableTrim || e.isMultiline ? f.value : f.value.trim();
803
- e.handleFieldSubmit ? e.handleFieldSubmit(w) : i("submit", w);
935
+ function s(n) {
936
+ const S = n.target, E = e.disableTrim || e.isMultiline ? S.value : S.value.trim();
937
+ e.handleFieldSubmit ? e.handleFieldSubmit(E) : l("submit", E);
804
938
  }
805
- function u(o) {
806
- n.value = !1, e.emitOnBlur && e.modelValue && t(o);
939
+ function m(n) {
940
+ o.value = !1, e.emitOnBlur && e.modelValue && s(n);
807
941
  }
808
- return B(() => {
809
- var o;
810
- Object.prototype.hasOwnProperty.call(b, "autofocus") && ((o = c.value) == null || o.focus());
811
- }), (o, f) => (g(), v("div", Ae, [
812
- k("div", {
813
- class: h(d(m)({ error: o.error, focus: n.value }))
942
+ return F(() => {
943
+ var n;
944
+ Object.prototype.hasOwnProperty.call(g, "autofocus") && ((n = c.value) == null || n.focus());
945
+ }), (n, S) => (u(), f("div", Fe, [
946
+ v("div", {
947
+ class: b(i(h)({ error: n.error, focus: o.value }))
814
948
  }, [
815
- (g(), L(G(o.isMultiline ? "textarea" : "input"), M({ id: d(s) }, o.$attrs, {
949
+ (u(), N(j(n.isMultiline ? "textarea" : "input"), L({ id: i(r) }, n.$attrs, {
816
950
  ref_key: "input",
817
951
  ref: c,
818
952
  class: [
819
953
  "scalar-input",
820
- d(S)(
821
- { "min-h-[77px]": o.isMultiline },
954
+ i(y)(
955
+ { "min-h-[77px]": n.isMultiline },
822
956
  "z-10 w-full resize-none appearance-none border-0 bg-transparent p-3 text-sm text-fore-1",
823
957
  "outline-none transition-opacity"
824
958
  )
825
959
  ],
826
- placeholder: o.placeholder,
827
- value: o.modelValue,
828
- onBlur: u,
829
- onFocus: f[0] || (f[0] = (w) => n.value = !0),
960
+ placeholder: n.placeholder,
961
+ value: n.modelValue,
962
+ onBlur: m,
963
+ onFocus: S[0] || (S[0] = (E) => o.value = !0),
830
964
  onInput: p,
831
- onKeyup: ee(t, ["enter"])
965
+ onKeyup: te(s, ["enter"])
832
966
  }), null, 16, ["id", "class", "placeholder", "value"])),
833
- o.label ? (g(), v("label", {
967
+ n.label ? (u(), f("label", {
834
968
  key: 0,
835
- class: h(
836
- d(S)(
969
+ class: b(
970
+ i(y)(
837
971
  "scalar-input-label pointer-events-none absolute left-0 top-0 mx-2 my-3 px-1 text-xs",
838
972
  "shadow-current z-10 origin-top-left rounded text-fore-3 transition-transform"
839
973
  )
840
974
  ),
841
- for: d(s),
842
- style: F({
843
- "box-shadow": `0 0 4px 4px ${o.labelShadowColor}`,
844
- "background-color": o.labelShadowColor
975
+ for: i(r),
976
+ style: U({
977
+ "box-shadow": `0 0 4px 4px ${n.labelShadowColor}`,
978
+ "background-color": n.labelShadowColor
845
979
  })
846
- }, N(o.label), 15, Te)) : E("", !0),
847
- k("div", Ce, [
848
- T(o.$slots, "default", {}, void 0, !0)
980
+ }, A(n.label), 15, je)) : k("", !0),
981
+ v("div", Ue, [
982
+ w(n.$slots, "default", {}, void 0, !0)
849
983
  ])
850
984
  ], 2),
851
- k("span", {
852
- class: h(
853
- d(S)(
985
+ v("span", {
986
+ class: b(
987
+ i(y)(
854
988
  "helper-text before:rounded-full mt-1.5 flex items-center text-xs text-error before:font-black",
855
989
  "before:mr-1.5 before:block before:h-4 before:w-4 before:text-center before:text-xxs before:leading-4",
856
990
  "before:bg-error before:text-white before:content-['!'] empty:hidden"
857
991
  )
858
992
  )
859
- }, N(o.helperText), 3)
993
+ }, A(n.helperText), 3)
860
994
  ]));
861
995
  }
862
- }), Le = /* @__PURE__ */ D(xe, [["__scopeId", "data-v-4fc2339e"]]), je = {
996
+ }), Xe = /* @__PURE__ */ z(We, [["__scopeId", "data-v-4fc2339e"]]), la = {
863
997
  boxShadow: {
864
998
  DEFAULT: "var(--scalar-shadow-1)",
865
999
  md: "var(--scalar-shadow-2)",
@@ -891,7 +1025,7 @@ const we = ["innerHTML"], Ue = /* @__PURE__ */ y({
891
1025
  ghost: "var(--scalar-color-ghost)",
892
1026
  transparent: "transparent"
893
1027
  }
894
- }, We = {
1028
+ }, ia = {
895
1029
  borderRadius: {
896
1030
  DEFAULT: "var(--scalar-radius)",
897
1031
  md: "var(--scalar-radius)",
@@ -915,22 +1049,25 @@ const we = ["innerHTML"], Ue = /* @__PURE__ */ y({
915
1049
  "screen-md": "640px",
916
1050
  "screen-lg": "800px"
917
1051
  }
918
- }, Xe = {
919
- install: (r) => {
920
- r.component("ScalarButton", Se), r.component("ScalarIcon", j), r.component("ScalarIconButton", _e), r.component("ScalarLoading", U), r.component("ScalarModal", Ie), r.component("ScalarTextField", Le);
1052
+ }, ca = {
1053
+ install: (t) => {
1054
+ t.component("ScalarButton", ye), t.component("ScalarIcon", M), t.component("ScalarIconButton", X), t.component("ScalarLoading", H), t.component("ScalarModal", Ie), t.component("ScalarSearchInput", Te), t.component("ScalarSearchResultItem", Ve), t.component("ScalarSearchResultList", Oe), t.component("ScalarTextField", Xe);
921
1055
  }
922
1056
  };
923
1057
  export {
924
- Se as ScalarButton,
925
- Ue as ScalarCodeBlock,
926
- j as ScalarIcon,
927
- _e as ScalarIconButton,
928
- U as ScalarLoading,
1058
+ ye as ScalarButton,
1059
+ oa as ScalarCodeBlock,
1060
+ M as ScalarIcon,
1061
+ X as ScalarIconButton,
1062
+ H as ScalarLoading,
929
1063
  Ie as ScalarModal,
930
- Le as ScalarTextField,
931
- Xe as default,
932
- We as extend,
933
- je as theme,
934
- Fe as useLoadingState,
935
- Ve as useModal
1064
+ Te as ScalarSearchInput,
1065
+ Ve as ScalarSearchResultItem,
1066
+ Oe as ScalarSearchResultList,
1067
+ Xe as ScalarTextField,
1068
+ ca as default,
1069
+ ia as extend,
1070
+ la as theme,
1071
+ sa as useLoadingState,
1072
+ na as useModal
936
1073
  };