@nuxt/devtools 0.1.6 → 0.2.2

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 (110) hide show
  1. package/README.md +10 -0
  2. package/dist/chunks/module-main.mjs +10 -9
  3. package/dist/chunks/vscode.mjs +3 -1
  4. package/dist/cli.mjs +1 -1
  5. package/dist/client/200.html +2 -2
  6. package/dist/client/404.html +2 -2
  7. package/dist/client/__inspecting/index.html +2 -2
  8. package/dist/client/_nuxt/{Badge.d9b6d9b1.js → Badge.e808f225.js} +1 -1
  9. package/dist/client/_nuxt/{FilepathItem.vue.31689a0a.js → FilepathItem.vue.7d6063af.js} +1 -1
  10. package/dist/client/_nuxt/LaunchPage.vue.eed86eec.js +1 -0
  11. package/dist/client/_nuxt/NButton.a7fda268.css +1 -0
  12. package/dist/client/_nuxt/{NButton.vue.56759fc1.js → NButton.vue.308f9474.js} +2 -2
  13. package/dist/client/_nuxt/NCheckbox.vue.9ffbb564.js +1 -0
  14. package/dist/client/_nuxt/NIcon.vue.9c08fa37.js +1 -0
  15. package/dist/client/_nuxt/NTextInput.vue.ece877a9.js +1 -0
  16. package/dist/client/_nuxt/{NuxtLogo.9303af79.js → NuxtLogo.895a7bf6.js} +1 -1
  17. package/dist/client/_nuxt/SectionBlock.ec21a63d.js +1 -0
  18. package/dist/client/_nuxt/StateEditor.ce27b0a9.css +1 -0
  19. package/dist/client/_nuxt/StateEditor.vue.6c676eec.js +1 -0
  20. package/dist/client/_nuxt/{StateEditor.vue.0f1b994b.js → StateEditor.vue.818047cc.js} +81 -79
  21. package/dist/client/_nuxt/{TabIcon.vue.8d3722ca.js → TabIcon.vue.49dc85dc.js} +1 -1
  22. package/dist/client/_nuxt/__inspecting.490ae7db.js +1 -0
  23. package/dist/client/_nuxt/{asyncData.d544d421.js → asyncData.f8034765.js} +1 -1
  24. package/dist/client/_nuxt/components.3b565d23.js +1 -0
  25. package/dist/client/_nuxt/composables.c334d73e.js +1 -0
  26. package/dist/client/_nuxt/{context.b32078d3.js → context.423cc671.js} +1 -1
  27. package/dist/client/_nuxt/custom-_name_.d3ed4504.js +1 -0
  28. package/dist/client/_nuxt/default.b3204a3a.js +1 -0
  29. package/dist/client/_nuxt/editor.e6207593.js +1 -0
  30. package/dist/client/_nuxt/entry.4a317735.js +5 -0
  31. package/dist/client/_nuxt/entry.aace963d.css +1 -0
  32. package/dist/client/_nuxt/error-404.2618a69f.css +1 -0
  33. package/dist/client/_nuxt/error-404.b908230f.js +1 -0
  34. package/dist/client/_nuxt/error-500.12a2683b.css +1 -0
  35. package/dist/client/_nuxt/error-500.c09789dd.js +1 -0
  36. package/dist/client/_nuxt/{error-component.7b202115.js → error-component.446f988b.js} +2 -2
  37. package/dist/client/_nuxt/hooks.c61f21df.js +1 -0
  38. package/dist/client/_nuxt/imports.e13543a7.js +1 -0
  39. package/dist/client/_nuxt/{index.2ad8ed93.js → index.67e4b58f.js} +1 -1
  40. package/dist/client/_nuxt/layouts.268c8027.js +1 -0
  41. package/dist/client/_nuxt/{middleware.e10aa06d.js → middleware.5be5f9a4.js} +1 -1
  42. package/dist/client/_nuxt/modules.808b0e39.js +1 -0
  43. package/dist/client/_nuxt/{none.38bfd553.js → none.f942dcd9.js} +1 -1
  44. package/dist/client/_nuxt/{nuxt-link.752dfef9.js → nuxt-link.66767e88.js} +1 -1
  45. package/dist/client/_nuxt/overview.cfaa4c15.js +1 -0
  46. package/dist/client/_nuxt/pages.48f21f6a.js +1 -0
  47. package/dist/client/_nuxt/{payload.5372dcff.js → payload.32f13e77.js} +1 -1
  48. package/dist/client/_nuxt/plugins.bcf8451b.js +1 -0
  49. package/dist/client/_nuxt/{runtime-configs.99425f61.js → runtime-configs.5a04dc36.js} +1 -1
  50. package/dist/client/_nuxt/{server-routes.763958ec.js → server-routes.cf0c31d3.js} +1 -1
  51. package/dist/client/_nuxt/state.44584a09.js +1 -0
  52. package/dist/client/_nuxt/unocss-runtime.34baa274.js +2 -0
  53. package/dist/client/_nuxt/{virtual-files.13f3141f.js → virtual-files.9ab23504.js} +1 -1
  54. package/dist/client/index.html +2 -2
  55. package/dist/client/modules/components/index.html +2 -2
  56. package/dist/client/modules/hooks/index.html +2 -2
  57. package/dist/client/modules/imports/index.html +2 -2
  58. package/dist/client/modules/layouts/index.html +2 -2
  59. package/dist/client/modules/middleware/index.html +2 -2
  60. package/dist/client/modules/modules/index.html +2 -2
  61. package/dist/client/modules/overview/index.html +2 -2
  62. package/dist/client/modules/pages/index.html +2 -2
  63. package/dist/client/modules/payload/index.html +2 -2
  64. package/dist/client/modules/plugins/index.html +2 -2
  65. package/dist/client/modules/runtime-configs/index.html +2 -2
  66. package/dist/client/modules/server-routes/index.html +2 -2
  67. package/dist/client/modules/virtual-files/index.html +2 -2
  68. package/dist/iframe-client.d.ts +1 -1
  69. package/dist/module.d.ts +3 -1
  70. package/dist/module.json +1 -1
  71. package/dist/module.mjs +3 -30
  72. package/dist/runtime/plugins/devtools.client.mjs +1 -1
  73. package/dist/runtime/plugins/view/Frame.vue +22 -5
  74. package/dist/runtime/plugins/view/state.d.ts +2 -1
  75. package/dist/runtime/plugins/view/state.mjs +1 -0
  76. package/dist/runtime/plugins/view/utils.d.ts +1 -1
  77. package/dist/runtime/plugins/view/utils.mjs +9 -7
  78. package/dist/shared/{devtools.e6742cbd.mjs → devtools.7e6ecc90.mjs} +1 -1
  79. package/dist/shared/devtools.edb7b427.mjs +35 -0
  80. package/dist/types.d.ts +3 -2
  81. package/package.json +35 -38
  82. package/dist/client/_nuxt/LaunchPage.vue.65011890.js +0 -1
  83. package/dist/client/_nuxt/NButton.db724adb.css +0 -1
  84. package/dist/client/_nuxt/NIcon.vue.c1ad97a9.js +0 -1
  85. package/dist/client/_nuxt/NTextInput.vue.b6c079ee.js +0 -1
  86. package/dist/client/_nuxt/SectionBlock.885bbad5.js +0 -1
  87. package/dist/client/_nuxt/Settings.vue.dda6fcf5.js +0 -1
  88. package/dist/client/_nuxt/StateEditor.c82309e2.css +0 -1
  89. package/dist/client/_nuxt/StateEditor.vue.3374c6ec.js +0 -1
  90. package/dist/client/_nuxt/__inspecting.6fe111b0.js +0 -1
  91. package/dist/client/_nuxt/components.25d13f1f.js +0 -1
  92. package/dist/client/_nuxt/composables.80d3af7a.js +0 -1
  93. package/dist/client/_nuxt/custom-_name_.14809d72.js +0 -1
  94. package/dist/client/_nuxt/default.7ecded8d.js +0 -1
  95. package/dist/client/_nuxt/editor.b2159474.js +0 -1
  96. package/dist/client/_nuxt/entry.43bdd1fb.css +0 -1
  97. package/dist/client/_nuxt/entry.b1094864.js +0 -5
  98. package/dist/client/_nuxt/error-404.1469f10f.css +0 -1
  99. package/dist/client/_nuxt/error-404.2ee33711.js +0 -1
  100. package/dist/client/_nuxt/error-500.92b94fae.css +0 -1
  101. package/dist/client/_nuxt/error-500.ef980084.js +0 -1
  102. package/dist/client/_nuxt/hooks.ca7ea52c.js +0 -1
  103. package/dist/client/_nuxt/imports.f7013fa4.js +0 -1
  104. package/dist/client/_nuxt/layouts.b684dcc1.js +0 -1
  105. package/dist/client/_nuxt/modules.0b22b757.js +0 -1
  106. package/dist/client/_nuxt/overview.d488d202.js +0 -1
  107. package/dist/client/_nuxt/pages.22ce604b.js +0 -1
  108. package/dist/client/_nuxt/plugins.f9b29762.js +0 -1
  109. package/dist/client/_nuxt/state.65ceafcf.js +0 -1
  110. package/dist/client/_nuxt/unocss-runtime.c4939419.js +0 -2
package/README.md CHANGED
@@ -255,6 +255,12 @@ When the iframe been served with the same origin (CORS limitation), devtools wil
255
255
  const router = computed(() => devtoolsClient.value?.host?.nuxt.vueApp.config.globalProperties?.$router)
256
256
  ```
257
257
 
258
+ ### Trying Local Changes to Nuxt DevTools
259
+
260
+ You can clone Nuxt DevTools repo and try your changes locally.
261
+
262
+ Please refer to [Trying Local Changes](CONTRIBUTING.md#trying-local-changes).
263
+
258
264
  ### Examples
259
265
 
260
266
  - Built-in VS Code integration with lazy initialize: https://github.com/nuxt/devtools/blob/main/src/integrations/vscode.ts.
@@ -263,6 +269,10 @@ const router = computed(() => devtoolsClient.value?.host?.nuxt.vueApp.config.glo
263
269
  - Nuxt Vitest runner: https://github.com/danielroe/nuxt-vitest/blob/7bac68d96f27dea6c30c198b7caaaf0b495574ab/packages/nuxt-vitest/src/module.ts#L139-L181
264
270
  - Nuxt OG Image Playground: https://github.com/harlan-zw/nuxt-og-image/blob/main/src/module.ts#L136
265
271
 
272
+ ## Contribution Guide
273
+
274
+ Please refer to [CONTRIBUTING.md](./CONTRIBUTING.md) for more information.
275
+
266
276
  ## License
267
277
 
268
278
  [MIT](./LICENSE)
@@ -12,16 +12,18 @@ import require$$0$3 from 'events';
12
12
  import require$$2 from 'https';
13
13
  import require$$1 from 'http';
14
14
  import require$$0$4 from 'url';
15
+ import { searchForWorkspaceRoot } from 'vite';
15
16
  import * as qs from 'querystring';
16
17
  import require$$0$5 from 'tty';
17
18
  import isInstalledGlobally from 'is-installed-globally';
18
- import { v as version } from '../shared/devtools.e6742cbd.mjs';
19
+ import { v as version } from '../shared/devtools.7e6ecc90.mjs';
19
20
  import { createBirpcGroup } from 'birpc';
20
21
  import { resolvePreset } from 'unimport';
21
22
  import { join as join$1, dirname, resolve as resolve$1 } from 'pathe';
22
23
  import fsp from 'fs/promises';
23
24
  import 'pkg-types';
24
25
  import { runtimeDir, clientDir, packageDir } from '../dirs.mjs';
26
+ import { R as ROUTE_ENTRY, a as ROUTE_CLIENT } from '../shared/devtools.edb7b427.mjs';
25
27
 
26
28
 
27
29
 
@@ -8202,7 +8204,7 @@ function setupRPC(nuxt, _options) {
8202
8204
  const clients = /* @__PURE__ */ new Set();
8203
8205
  const birpc = createBirpcGroup(serverFunctions, []);
8204
8206
  function refresh(event) {
8205
- birpc.boardcast.refresh.asEvent(event);
8207
+ birpc.broadcast.refresh.asEvent(event);
8206
8208
  }
8207
8209
  Object.assign(serverFunctions, {
8208
8210
  getServerConfig() {
@@ -8365,9 +8367,6 @@ function setupRPC(nuxt, _options) {
8365
8367
  };
8366
8368
  }
8367
8369
 
8368
- const PATH = "/__nuxt_devtools__";
8369
- const PATH_ENTRY = `${PATH}/entry`;
8370
- const PATH_CLIENT = `${PATH}/client`;
8371
8370
  async function enableModule(options, nuxt) {
8372
8371
  if (process.env.TEST || process.env.NODE_ENV === "test")
8373
8372
  return;
@@ -8394,15 +8393,17 @@ async function enableModule(options, nuxt) {
8394
8393
  var _a, _b;
8395
8394
  config.server || (config.server = {});
8396
8395
  (_a = config.server).fs || (_a.fs = {});
8397
- (_b = config.server.fs).allow || (_b.allow = []);
8396
+ (_b = config.server.fs).allow || (_b.allow = [
8397
+ searchForWorkspaceRoot(process.cwd())
8398
+ ]);
8398
8399
  config.server.fs.allow.push(packageDir);
8399
8400
  });
8400
8401
  }
8401
8402
  nuxt.hook("vite:serverCreated", (server) => {
8402
- server.middlewares.use(PATH_ENTRY, tinyws());
8403
- server.middlewares.use(PATH_ENTRY, rpcMiddleware);
8403
+ server.middlewares.use(ROUTE_ENTRY, tinyws());
8404
+ server.middlewares.use(ROUTE_ENTRY, rpcMiddleware);
8404
8405
  if (clientDirExists)
8405
- server.middlewares.use(PATH_CLIENT, sirv(clientDir, { single: true, dev: true }));
8406
+ server.middlewares.use(ROUTE_CLIENT, sirv(clientDir, { single: true, dev: true }));
8406
8407
  });
8407
8408
  const integrations = [
8408
8409
  import('./vue-inspector.mjs').then(({ setup }) => setup(nuxt, serverFunctions)),
@@ -19,15 +19,17 @@ import 'buffer';
19
19
  import 'tls';
20
20
  import 'crypto';
21
21
  import 'events';
22
+ import 'vite';
22
23
  import 'querystring';
23
24
  import 'is-installed-globally';
24
- import '../shared/devtools.e6742cbd.mjs';
25
+ import '../shared/devtools.7e6ecc90.mjs';
25
26
  import 'birpc';
26
27
  import 'unimport';
27
28
  import 'pathe';
28
29
  import 'fs/promises';
29
30
  import 'pkg-types';
30
31
  import '../dirs.mjs';
32
+ import '../shared/devtools.edb7b427.mjs';
31
33
 
32
34
 
33
35
 
package/dist/cli.mjs CHANGED
@@ -5,7 +5,7 @@ import { readUser, writeUser } from 'rc9';
5
5
  import require$$1 from 'path';
6
6
  import require$$1$1 from 'os';
7
7
  import { resolve } from 'pathe';
8
- import { n as name } from './shared/devtools.e6742cbd.mjs';
8
+ import { n as name } from './shared/devtools.7e6ecc90.mjs';
9
9
 
10
10
  var globalDirs = {};
11
11
 
@@ -1,7 +1,7 @@
1
1
  <!DOCTYPE html>
2
2
  <html >
3
3
  <head><meta charset="utf-8">
4
- <meta name="viewport" content="width=device-width, initial-scale=1"><link rel="modulepreload" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/entry.b1094864.js"><link rel="preload" as="style" href="/__nuxt_devtools__/client/_nuxt/entry.43bdd1fb.css"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/default.7ecded8d.js"><link rel="prefetch" as="style" href="/__nuxt_devtools__/client/_nuxt/SectionBlock.48da9d80.css"><link rel="prefetch" as="style" href="/__nuxt_devtools__/client/_nuxt/NButton.db724adb.css"><link rel="prefetch" as="style" href="/__nuxt_devtools__/client/_nuxt/StateEditor.c82309e2.css"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/context.b32078d3.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/NuxtLogo.9303af79.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/_plugin-vue_export-helper.c27b6911.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/Settings.vue.dda6fcf5.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/NButton.vue.56759fc1.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/NIcon.vue.c1ad97a9.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/nuxt-link.752dfef9.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/StateEditor.vue.0f1b994b.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/composables.80d3af7a.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/TabIcon.vue.8d3722ca.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/state.65ceafcf.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/asyncData.d544d421.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/none.38bfd553.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/unocss-runtime.c4939419.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/error-component.7b202115.js"><link rel="stylesheet" href="/__nuxt_devtools__/client/_nuxt/entry.43bdd1fb.css"><script>"use strict";const w=window,de=document.documentElement,knownColorSchemes=["dark","light"],preference=window.localStorage.getItem("nuxt-color-mode")||"system";let value=preference==="system"?getColorScheme():preference;const forcedColorMode=de.getAttribute("data-color-mode-forced");forcedColorMode&&(value=forcedColorMode),addColorScheme(value),w["__NUXT_COLOR_MODE__"]={preference,value,getColorScheme,addColorScheme,removeColorScheme};function addColorScheme(e){const o=""+e+"",t="";de.classList?de.classList.add(o):de.className+=" "+o,t&&de.setAttribute("data-"+t,e)}function removeColorScheme(e){const o=""+e+"",t="";de.classList?de.classList.remove(o):de.className=de.className.replace(new RegExp(o,"g"),""),t&&de.removeAttribute("data-"+t)}function prefersColorScheme(e){return w.matchMedia("(prefers-color-scheme"+e+")")}function getColorScheme(){if(w.matchMedia&&prefersColorScheme("").media!=="not all"){for(const e of knownColorSchemes)if(prefersColorScheme(":"+e).matches)return e}return"light"}
4
+ <meta name="viewport" content="width=device-width, initial-scale=1"><link rel="modulepreload" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/entry.4a317735.js"><link rel="preload" as="style" href="/__nuxt_devtools__/client/_nuxt/entry.aace963d.css"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/default.b3204a3a.js"><link rel="prefetch" as="style" href="/__nuxt_devtools__/client/_nuxt/SectionBlock.48da9d80.css"><link rel="prefetch" as="style" href="/__nuxt_devtools__/client/_nuxt/NButton.a7fda268.css"><link rel="prefetch" as="style" href="/__nuxt_devtools__/client/_nuxt/StateEditor.ce27b0a9.css"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/context.423cc671.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/NuxtLogo.895a7bf6.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/_plugin-vue_export-helper.c27b6911.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/NButton.vue.308f9474.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/NIcon.vue.9c08fa37.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/nuxt-link.66767e88.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/StateEditor.vue.818047cc.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/composables.c334d73e.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/TabIcon.vue.49dc85dc.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/state.44584a09.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/asyncData.f8034765.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/none.f942dcd9.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/unocss-runtime.34baa274.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/error-component.446f988b.js"><link rel="stylesheet" href="/__nuxt_devtools__/client/_nuxt/entry.aace963d.css"><script>"use strict";const w=window,de=document.documentElement,knownColorSchemes=["dark","light"],preference=window.localStorage.getItem("nuxt-color-mode")||"system";let value=preference==="system"?getColorScheme():preference;const forcedColorMode=de.getAttribute("data-color-mode-forced");forcedColorMode&&(value=forcedColorMode),addColorScheme(value),w["__NUXT_COLOR_MODE__"]={preference,value,getColorScheme,addColorScheme,removeColorScheme};function addColorScheme(e){const o=""+e+"",t="";de.classList?de.classList.add(o):de.className+=" "+o,t&&de.setAttribute("data-"+t,e)}function removeColorScheme(e){const o=""+e+"",t="";de.classList?de.classList.remove(o):de.className=de.className.replace(new RegExp(o,"g"),""),t&&de.removeAttribute("data-"+t)}function prefersColorScheme(e){return w.matchMedia("(prefers-color-scheme"+e+")")}function getColorScheme(){if(w.matchMedia&&prefersColorScheme("").media!=="not all"){for(const e of knownColorSchemes)if(prefersColorScheme(":"+e).matches)return e}return"light"}
5
5
  </script></head>
6
- <body ><div id="__nuxt"></div><script>window.__NUXT__={serverRendered:false,config:{public:{fixture4:"public runtime config from nuxt.config.ts"},app:{baseURL:"\u002F__nuxt_devtools__\u002Fclient",buildAssetsDir:"\u002F_nuxt\u002F",cdnURL:""}},data:{},state:{}}</script><script type="module" src="/__nuxt_devtools__/client/_nuxt/entry.b1094864.js" crossorigin></script></body>
6
+ <body ><div id="__nuxt"></div><script>window.__NUXT__={serverRendered:false,config:{public:{fixture4:"public runtime config from nuxt.config.ts"},app:{baseURL:"\u002F__nuxt_devtools__\u002Fclient",buildAssetsDir:"\u002F_nuxt\u002F",cdnURL:""}},data:{},state:{}}</script><script type="module" src="/__nuxt_devtools__/client/_nuxt/entry.4a317735.js" crossorigin></script></body>
7
7
  </html>
@@ -1,7 +1,7 @@
1
1
  <!DOCTYPE html>
2
2
  <html >
3
3
  <head><meta charset="utf-8">
4
- <meta name="viewport" content="width=device-width, initial-scale=1"><link rel="modulepreload" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/entry.b1094864.js"><link rel="preload" as="style" href="/__nuxt_devtools__/client/_nuxt/entry.43bdd1fb.css"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/default.7ecded8d.js"><link rel="prefetch" as="style" href="/__nuxt_devtools__/client/_nuxt/SectionBlock.48da9d80.css"><link rel="prefetch" as="style" href="/__nuxt_devtools__/client/_nuxt/NButton.db724adb.css"><link rel="prefetch" as="style" href="/__nuxt_devtools__/client/_nuxt/StateEditor.c82309e2.css"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/context.b32078d3.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/NuxtLogo.9303af79.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/_plugin-vue_export-helper.c27b6911.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/Settings.vue.dda6fcf5.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/NButton.vue.56759fc1.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/NIcon.vue.c1ad97a9.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/nuxt-link.752dfef9.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/StateEditor.vue.0f1b994b.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/composables.80d3af7a.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/TabIcon.vue.8d3722ca.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/state.65ceafcf.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/asyncData.d544d421.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/none.38bfd553.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/unocss-runtime.c4939419.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/error-component.7b202115.js"><link rel="stylesheet" href="/__nuxt_devtools__/client/_nuxt/entry.43bdd1fb.css"><script>"use strict";const w=window,de=document.documentElement,knownColorSchemes=["dark","light"],preference=window.localStorage.getItem("nuxt-color-mode")||"system";let value=preference==="system"?getColorScheme():preference;const forcedColorMode=de.getAttribute("data-color-mode-forced");forcedColorMode&&(value=forcedColorMode),addColorScheme(value),w["__NUXT_COLOR_MODE__"]={preference,value,getColorScheme,addColorScheme,removeColorScheme};function addColorScheme(e){const o=""+e+"",t="";de.classList?de.classList.add(o):de.className+=" "+o,t&&de.setAttribute("data-"+t,e)}function removeColorScheme(e){const o=""+e+"",t="";de.classList?de.classList.remove(o):de.className=de.className.replace(new RegExp(o,"g"),""),t&&de.removeAttribute("data-"+t)}function prefersColorScheme(e){return w.matchMedia("(prefers-color-scheme"+e+")")}function getColorScheme(){if(w.matchMedia&&prefersColorScheme("").media!=="not all"){for(const e of knownColorSchemes)if(prefersColorScheme(":"+e).matches)return e}return"light"}
4
+ <meta name="viewport" content="width=device-width, initial-scale=1"><link rel="modulepreload" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/entry.4a317735.js"><link rel="preload" as="style" href="/__nuxt_devtools__/client/_nuxt/entry.aace963d.css"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/default.b3204a3a.js"><link rel="prefetch" as="style" href="/__nuxt_devtools__/client/_nuxt/SectionBlock.48da9d80.css"><link rel="prefetch" as="style" href="/__nuxt_devtools__/client/_nuxt/NButton.a7fda268.css"><link rel="prefetch" as="style" href="/__nuxt_devtools__/client/_nuxt/StateEditor.ce27b0a9.css"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/context.423cc671.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/NuxtLogo.895a7bf6.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/_plugin-vue_export-helper.c27b6911.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/NButton.vue.308f9474.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/NIcon.vue.9c08fa37.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/nuxt-link.66767e88.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/StateEditor.vue.818047cc.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/composables.c334d73e.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/TabIcon.vue.49dc85dc.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/state.44584a09.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/asyncData.f8034765.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/none.f942dcd9.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/unocss-runtime.34baa274.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/error-component.446f988b.js"><link rel="stylesheet" href="/__nuxt_devtools__/client/_nuxt/entry.aace963d.css"><script>"use strict";const w=window,de=document.documentElement,knownColorSchemes=["dark","light"],preference=window.localStorage.getItem("nuxt-color-mode")||"system";let value=preference==="system"?getColorScheme():preference;const forcedColorMode=de.getAttribute("data-color-mode-forced");forcedColorMode&&(value=forcedColorMode),addColorScheme(value),w["__NUXT_COLOR_MODE__"]={preference,value,getColorScheme,addColorScheme,removeColorScheme};function addColorScheme(e){const o=""+e+"",t="";de.classList?de.classList.add(o):de.className+=" "+o,t&&de.setAttribute("data-"+t,e)}function removeColorScheme(e){const o=""+e+"",t="";de.classList?de.classList.remove(o):de.className=de.className.replace(new RegExp(o,"g"),""),t&&de.removeAttribute("data-"+t)}function prefersColorScheme(e){return w.matchMedia("(prefers-color-scheme"+e+")")}function getColorScheme(){if(w.matchMedia&&prefersColorScheme("").media!=="not all"){for(const e of knownColorSchemes)if(prefersColorScheme(":"+e).matches)return e}return"light"}
5
5
  </script></head>
6
- <body ><div id="__nuxt"></div><script>window.__NUXT__={serverRendered:false,config:{public:{fixture4:"public runtime config from nuxt.config.ts"},app:{baseURL:"\u002F__nuxt_devtools__\u002Fclient",buildAssetsDir:"\u002F_nuxt\u002F",cdnURL:""}},data:{},state:{}}</script><script type="module" src="/__nuxt_devtools__/client/_nuxt/entry.b1094864.js" crossorigin></script></body>
6
+ <body ><div id="__nuxt"></div><script>window.__NUXT__={serverRendered:false,config:{public:{fixture4:"public runtime config from nuxt.config.ts"},app:{baseURL:"\u002F__nuxt_devtools__\u002Fclient",buildAssetsDir:"\u002F_nuxt\u002F",cdnURL:""}},data:{},state:{}}</script><script type="module" src="/__nuxt_devtools__/client/_nuxt/entry.4a317735.js" crossorigin></script></body>
7
7
  </html>
@@ -1,7 +1,7 @@
1
1
  <!DOCTYPE html>
2
2
  <html >
3
3
  <head><meta charset="utf-8">
4
- <meta name="viewport" content="width=device-width, initial-scale=1"><link rel="modulepreload" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/entry.b1094864.js"><link rel="preload" as="style" href="/__nuxt_devtools__/client/_nuxt/entry.43bdd1fb.css"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/default.7ecded8d.js"><link rel="prefetch" as="style" href="/__nuxt_devtools__/client/_nuxt/SectionBlock.48da9d80.css"><link rel="prefetch" as="style" href="/__nuxt_devtools__/client/_nuxt/NButton.db724adb.css"><link rel="prefetch" as="style" href="/__nuxt_devtools__/client/_nuxt/StateEditor.c82309e2.css"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/context.b32078d3.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/NuxtLogo.9303af79.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/_plugin-vue_export-helper.c27b6911.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/Settings.vue.dda6fcf5.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/NButton.vue.56759fc1.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/NIcon.vue.c1ad97a9.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/nuxt-link.752dfef9.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/StateEditor.vue.0f1b994b.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/composables.80d3af7a.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/TabIcon.vue.8d3722ca.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/state.65ceafcf.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/asyncData.d544d421.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/none.38bfd553.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/unocss-runtime.c4939419.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/error-component.7b202115.js"><link rel="stylesheet" href="/__nuxt_devtools__/client/_nuxt/entry.43bdd1fb.css"><script>"use strict";const w=window,de=document.documentElement,knownColorSchemes=["dark","light"],preference=window.localStorage.getItem("nuxt-color-mode")||"system";let value=preference==="system"?getColorScheme():preference;const forcedColorMode=de.getAttribute("data-color-mode-forced");forcedColorMode&&(value=forcedColorMode),addColorScheme(value),w["__NUXT_COLOR_MODE__"]={preference,value,getColorScheme,addColorScheme,removeColorScheme};function addColorScheme(e){const o=""+e+"",t="";de.classList?de.classList.add(o):de.className+=" "+o,t&&de.setAttribute("data-"+t,e)}function removeColorScheme(e){const o=""+e+"",t="";de.classList?de.classList.remove(o):de.className=de.className.replace(new RegExp(o,"g"),""),t&&de.removeAttribute("data-"+t)}function prefersColorScheme(e){return w.matchMedia("(prefers-color-scheme"+e+")")}function getColorScheme(){if(w.matchMedia&&prefersColorScheme("").media!=="not all"){for(const e of knownColorSchemes)if(prefersColorScheme(":"+e).matches)return e}return"light"}
4
+ <meta name="viewport" content="width=device-width, initial-scale=1"><link rel="modulepreload" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/entry.4a317735.js"><link rel="preload" as="style" href="/__nuxt_devtools__/client/_nuxt/entry.aace963d.css"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/default.b3204a3a.js"><link rel="prefetch" as="style" href="/__nuxt_devtools__/client/_nuxt/SectionBlock.48da9d80.css"><link rel="prefetch" as="style" href="/__nuxt_devtools__/client/_nuxt/NButton.a7fda268.css"><link rel="prefetch" as="style" href="/__nuxt_devtools__/client/_nuxt/StateEditor.ce27b0a9.css"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/context.423cc671.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/NuxtLogo.895a7bf6.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/_plugin-vue_export-helper.c27b6911.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/NButton.vue.308f9474.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/NIcon.vue.9c08fa37.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/nuxt-link.66767e88.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/StateEditor.vue.818047cc.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/composables.c334d73e.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/TabIcon.vue.49dc85dc.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/state.44584a09.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/asyncData.f8034765.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/none.f942dcd9.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/unocss-runtime.34baa274.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/error-component.446f988b.js"><link rel="stylesheet" href="/__nuxt_devtools__/client/_nuxt/entry.aace963d.css"><script>"use strict";const w=window,de=document.documentElement,knownColorSchemes=["dark","light"],preference=window.localStorage.getItem("nuxt-color-mode")||"system";let value=preference==="system"?getColorScheme():preference;const forcedColorMode=de.getAttribute("data-color-mode-forced");forcedColorMode&&(value=forcedColorMode),addColorScheme(value),w["__NUXT_COLOR_MODE__"]={preference,value,getColorScheme,addColorScheme,removeColorScheme};function addColorScheme(e){const o=""+e+"",t="";de.classList?de.classList.add(o):de.className+=" "+o,t&&de.setAttribute("data-"+t,e)}function removeColorScheme(e){const o=""+e+"",t="";de.classList?de.classList.remove(o):de.className=de.className.replace(new RegExp(o,"g"),""),t&&de.removeAttribute("data-"+t)}function prefersColorScheme(e){return w.matchMedia("(prefers-color-scheme"+e+")")}function getColorScheme(){if(w.matchMedia&&prefersColorScheme("").media!=="not all"){for(const e of knownColorSchemes)if(prefersColorScheme(":"+e).matches)return e}return"light"}
5
5
  </script></head>
6
- <body ><div id="__nuxt"></div><script>window.__NUXT__={serverRendered:false,config:{public:{fixture4:"public runtime config from nuxt.config.ts"},app:{baseURL:"\u002F__nuxt_devtools__\u002Fclient",buildAssetsDir:"\u002F_nuxt\u002F",cdnURL:""}},data:{},state:{}}</script><script type="module" src="/__nuxt_devtools__/client/_nuxt/entry.b1094864.js" crossorigin></script></body>
6
+ <body ><div id="__nuxt"></div><script>window.__NUXT__={serverRendered:false,config:{public:{fixture4:"public runtime config from nuxt.config.ts"},app:{baseURL:"\u002F__nuxt_devtools__\u002Fclient",buildAssetsDir:"\u002F_nuxt\u002F",cdnURL:""}},data:{},state:{}}</script><script type="module" src="/__nuxt_devtools__/client/_nuxt/entry.4a317735.js" crossorigin></script></body>
7
7
  </html>
@@ -1 +1 @@
1
- import{_ as o}from"./_plugin-vue_export-helper.c27b6911.js";import{o as t,e as n,r}from"./entry.b1094864.js";const s={},c={class:"text-12px whitespace-nowrap px-1.5 py-0.5 mx-0.5 rounded"};function _(e,a){return t(),n("span",c,[r(e.$slots,"default")])}const d=o(s,[["render",_]]);export{d as _};
1
+ import{_ as o}from"./_plugin-vue_export-helper.c27b6911.js";import{o as t,f as n,r}from"./entry.4a317735.js";const s={},c={class:"text-12px whitespace-nowrap px-1.5 py-0.5 mx-0.5 rounded"};function _(e,a){return t(),n("span",c,[r(e.$slots,"default")])}const m=o(s,[["render",_]]);export{m as _};
@@ -1 +1 @@
1
- import{f as p,k as s}from"./state.65ceafcf.js";import{o as f}from"./editor.b2159474.js";import{a as l,k as m,o as u,e as h,t as c,u as a}from"./entry.b1094864.js";const E=l({__name:"FilepathItem",props:{filepath:null},setup(e){const o=e,t=p(),i=m(()=>o.filepath&&t.value?s(o.filepath,t.value.rootDir):o.filepath);return(n,r)=>(u(),h("button",{"font-mono":"","hover:underline":"","ws-nowrap":"","of-hidden":"",onClick:r[0]||(r[0]=d=>("openInEditor"in n?n.openInEditor:a(f))(e.filepath))},c(a(i)),1))}});export{E as _};
1
+ import{f as p,k as s}from"./state.44584a09.js";import{o as f}from"./editor.e6207593.js";import{a as l,l as m,o as u,f as h,t as c,u as a}from"./entry.4a317735.js";const E=l({__name:"FilepathItem",props:{filepath:null},setup(e){const o=e,t=p(),i=m(()=>o.filepath&&t.value?s(o.filepath,t.value.rootDir):o.filepath);return(n,r)=>(u(),h("button",{"font-mono":"","hover:underline":"","ws-nowrap":"","of-hidden":"",onClick:r[0]||(r[0]=d=>("openInEditor"in n?n.openInEditor:a(f))(e.filepath))},c(a(i)),1))}});export{E as _};
@@ -0,0 +1 @@
1
+ import{_}from"./TabIcon.vue.49dc85dc.js";import{_ as f}from"./NIcon.vue.9c08fa37.js";import{r as k,_ as p}from"./NButton.vue.308f9474.js";import{a as h,f as a,i as b,h as i,t as s,u as g,m as c,F as x,z as w,o as n,c as l,w as y,k as N,X as B}from"./entry.4a317735.js";const C={flex:"~ col gap2","h-full":"","items-center":"","justify-center":""},M={"text-xl":""},v=["innerHTML"],L={flex:"~ gap2 wrap"},I=h({__name:"LaunchPage",props:{icon:null,title:null,description:null,actions:null},emits:["action"],setup(e){return(o,T)=>{const d=_,m=f,u=p;return n(),a("div",C,[b(d,{"text-5xl":"",mb4:"",icon:e.icon||e.icon,title:e.title},null,8,["icon","title"]),i("h1",M,s(e.title),1),e.description?(n(),a("div",{key:0,op50:"","text-center":"","text-base":"","mt--1":"",mb2:"",class:"markdown-body",innerHTML:("renderMarkdown"in o?o.renderMarkdown:g(k))(e.description)},null,8,v)):c("",!0),i("div",L,[(n(!0),a(x,null,w(e.actions,(t,r)=>(n(),l(u,B({key:r,n:"solid primary",disabled:t.pending,to:t.src,target:t.src?"_blank":void 0},t.attrs,{onClick:()=>{t.handle?.(),o.$emit("action",r)}}),{default:y(()=>[t.pending?(n(),l(m,{key:0,icon:"carbon-circle-dash","animate-spin":""})):c("",!0),N(" "+s(t.label),1)]),_:2},1040,["disabled","to","target","onClick"]))),128))])])}}});export{I as _};
@@ -0,0 +1 @@
1
+ @media (prefers-color-scheme:light){.get-started-gradient-border[data-v-1d757ef3]{background:linear-gradient(90deg,#fff,#fff),linear-gradient(90deg,#00dc82,#1de0b1,#36e4da)}.gradient-border-modules[data-v-1d757ef3]{background:linear-gradient(var(--gradient-angle),#f7d14c,rgba(247,209,76,.6),hsla(0,0%,100%,.8),#f7d14c)}.gradient-border-examples[data-v-1d757ef3]{background:linear-gradient(var(--gradient-angle),#8deaff,rgba(141,234,255,.6),hsla(0,0%,100%,.8),#8deaff)}.gradient-border-documentation[data-v-1d757ef3]{background:linear-gradient(var(--gradient-angle),#00dc82,rgba(0,220,130,.6),hsla(0,0%,100%,.8),#00dc82)}}@media (prefers-color-scheme:dark){.get-started-gradient-border[data-v-1d757ef3]{background:linear-gradient(90deg,#18181b,#18181b),linear-gradient(90deg,#00dc82,#1de0b1,#36e4da)}.gradient-border-modules[data-v-1d757ef3]{background:linear-gradient(var(--gradient-angle),#f7d14c,#a38108,hsla(0,0%,100%,.3),#a38108)}.gradient-border-examples[data-v-1d757ef3]{background:linear-gradient(var(--gradient-angle),#8deaff,#008aa9,hsla(0,0%,100%,.3),#008aa9)}.gradient-border-documentation[data-v-1d757ef3]{background:linear-gradient(var(--gradient-angle),#00dc82,#003f25,hsla(0,0%,100%,.2),#003f25)}}.get-started-gradient-border[data-v-1d757ef3]{background-clip:padding-box,border-box;background-origin:padding-box,border-box;border-color:transparent;border-radius:12px;border-width:1px}.get-started-gradient-border[data-v-1d757ef3]:hover>:is(.get-started-gradient-left,.get-started-gradient-right){opacity:.2}.get-started-gradient-left[data-v-1d757ef3],.get-started-gradient-right[data-v-1d757ef3]{opacity:0}.gradient-border[data-v-1d757ef3]{border-radius:12px;left:0;opacity:0;position:absolute;top:0;transform:translate(-1px,-1px);width:calc(100% + 2px);z-index:-1}.gradient-border-rect[data-v-1d757ef3]{height:calc(100% + 2px)}@media (min-width:1024px){.gradient-border-rect[data-v-1d757ef3]{height:calc(100% + 1px)}}.gradient-border-square[data-v-1d757ef3]{height:calc(100% + 2px)}.modules-gradient-right[data-v-1d757ef3]{opacity:0}.documentation-container:hover>.gradient-border[data-v-1d757ef3],.examples-container:hover>.gradient-border[data-v-1d757ef3],.modules-container:hover>.gradient-border[data-v-1d757ef3]{animation:gradient-rotate 5s linear 0s infinite reverse;opacity:1;transition:all .3s linear}.modules-container:hover>.modules-gradient-right[data-v-1d757ef3]{opacity:.2}.examples-container:hover>.examples-gradient-right[data-v-1d757ef3]{opacity:.2}.examples-gradient-right[data-v-1d757ef3]{opacity:0}.documentation-image-color-dark[data-v-1d757ef3],.documentation-image-color-light[data-v-1d757ef3],.modules-image-color-dark[data-v-1d757ef3],.modules-image-color-light[data-v-1d757ef3],.examples-image-color-dark[data-v-1d757ef3],.examples-image-color-light[data-v-1d757ef3]{display:none}@media (prefers-color-scheme:light){.modules-image-light[data-v-1d757ef3]{display:block}.modules-image-dark[data-v-1d757ef3]{display:none}.modules-container:hover>a>.modules-image-light[data-v-1d757ef3]{display:none}.modules-container:hover>a>.modules-image-color-light[data-v-1d757ef3]{display:block}.examples-image-light[data-v-1d757ef3]{display:block}.examples-image-dark[data-v-1d757ef3]{display:none}.examples-container:hover>a>.examples-image-light[data-v-1d757ef3]{display:none}.examples-container:hover>a>.examples-image-color-light[data-v-1d757ef3]{display:block}.documentation-image-light[data-v-1d757ef3]{display:block}.documentation-image-dark[data-v-1d757ef3]{display:none}.documentation-container:hover>a>div>.documentation-image-light[data-v-1d757ef3]{display:none}.documentation-container:hover>a>div>.documentation-image-color-light[data-v-1d757ef3]{display:block}}@media (prefers-color-scheme:dark){.modules-image-dark[data-v-1d757ef3]{display:block}.modules-image-light[data-v-1d757ef3]{display:none}.modules-container:hover>a>.modules-image-color-dark[data-v-1d757ef3]{display:block}.modules-container:hover>a>.modules-image-dark[data-v-1d757ef3]{display:none}.examples-image-dark[data-v-1d757ef3]{display:block}.examples-image-light[data-v-1d757ef3]{display:none}.examples-container:hover>a>.examples-image-color-dark[data-v-1d757ef3]{display:block}.examples-container:hover>a>.examples-image-dark[data-v-1d757ef3]{display:none}.documentation-image-dark[data-v-1d757ef3]{display:block}.documentation-image-light[data-v-1d757ef3]{display:none}.documentation-container:hover>a>div>.documentation-image-color-dark[data-v-1d757ef3]{display:block}.documentation-container:hover>a>div>.documentation-image-dark[data-v-1d757ef3]{display:none}}.bg-white[data-v-1d757ef3]{--tw-bg-opacity:1;background-color:rgba(255,255,255,var(--tw-bg-opacity))}.bg-gray-100[data-v-1d757ef3]{--tw-bg-opacity:1;background-color:rgba(238,238,238,var(--tw-bg-opacity))}.bg-gradient-to-r[data-v-1d757ef3]{background-image:linear-gradient(to right,var(--tw-gradient-stops))}.bg-gradient-to-l[data-v-1d757ef3]{background-image:linear-gradient(to left,var(--tw-gradient-stops))}.from-green-400[data-v-1d757ef3]{--tw-gradient-from:rgba(55, 233, 144, var(--tw-from-opacity, 1));--tw-gradient-stops:var(--tw-gradient-from), var(--tw-gradient-to, hsla(0,0%,100%,0))}.from-blue-400[data-v-1d757ef3]{--tw-gradient-from:rgba(56, 189, 248, var(--tw-from-opacity, 1));--tw-gradient-stops:var(--tw-gradient-from), var(--tw-gradient-to, hsla(0,0%,100%,0))}.from-yellow-400[data-v-1d757ef3]{--tw-gradient-from:rgba(251, 191, 36, var(--tw-from-opacity, 1));--tw-gradient-stops:var(--tw-gradient-from), var(--tw-gradient-to, hsla(0,0%,100%,0))}.to-transparent[data-v-1d757ef3]{--tw-gradient-to:transparent}.border-gray-200[data-v-1d757ef3]{--tw-border-opacity:1;border-color:rgba(224,224,224,var(--tw-border-opacity))}.hover\:border-transparent[data-v-1d757ef3]:hover{border-color:transparent}.rounded-xl[data-v-1d757ef3]{border-radius:.75rem}.rounded[data-v-1d757ef3]{border-radius:.25rem}.border[data-v-1d757ef3]{border-width:1px}.border-t[data-v-1d757ef3]{border-top-width:1px}.flex[data-v-1d757ef3]{display:flex}.grid[data-v-1d757ef3]{display:grid}.hidden[data-v-1d757ef3]{display:none}.flex-col[data-v-1d757ef3]{flex-direction:column}.flex-col-reverse[data-v-1d757ef3]{flex-direction:column-reverse}.place-content-center[data-v-1d757ef3]{place-content:center}.items-center[data-v-1d757ef3]{align-items:center}.justify-end[data-v-1d757ef3]{justify-content:flex-end}.justify-center[data-v-1d757ef3]{justify-content:center}.flex-1[data-v-1d757ef3]{flex:1 1 0%}.order-last[data-v-1d757ef3]{order:9999}.font-mono[data-v-1d757ef3]{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.font-semibold[data-v-1d757ef3]{font-weight:600}.font-bold[data-v-1d757ef3]{font-weight:700}.h-32[data-v-1d757ef3]{height:8rem}.h-\[70px\][data-v-1d757ef3]{height:70px}.text-4xl[data-v-1d757ef3]{font-size:2.25rem;line-height:2.5rem}.text-xl[data-v-1d757ef3]{font-size:1.25rem;line-height:1.75rem}.text-sm[data-v-1d757ef3]{font-size:.875rem;line-height:1.25rem}.text-2xl[data-v-1d757ef3]{font-size:1.5rem;line-height:2rem}.mx-auto[data-v-1d757ef3]{margin-left:auto;margin-right:auto}.mb-2[data-v-1d757ef3]{margin-bottom:.5rem}.max-w-\[960px\][data-v-1d757ef3]{max-width:960px}.min-h-screen[data-v-1d757ef3]{min-height:100vh}.p-1[data-v-1d757ef3]{padding:.25rem}.px-4[data-v-1d757ef3]{padding-left:1rem;padding-right:1rem}.py-14[data-v-1d757ef3]{padding-bottom:3.5rem;padding-top:3.5rem}.py-6[data-v-1d757ef3]{padding-bottom:1.5rem;padding-top:1.5rem}.px-5[data-v-1d757ef3]{padding-left:1.25rem;padding-right:1.25rem}.pt-\[58px\][data-v-1d757ef3]{padding-top:58px}.pb-6[data-v-1d757ef3]{padding-bottom:1.5rem}.absolute[data-v-1d757ef3]{position:absolute}.relative[data-v-1d757ef3]{position:relative}.inset-y-0[data-v-1d757ef3]{bottom:0;top:0}.inset-x-0[data-v-1d757ef3]{left:0;right:0}.left-0[data-v-1d757ef3]{left:0}.right-0[data-v-1d757ef3]{right:0}.-top-\[58px\][data-v-1d757ef3]{top:-58px}.-top-3[data-v-1d757ef3]{top:-.75rem}.focus-visible\:ring-2[data-v-1d757ef3]:focus-visible{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.text-center[data-v-1d757ef3]{text-align:center}.text-black[data-v-1d757ef3]{--tw-text-opacity:1;color:rgba(0,0,0,var(--tw-text-opacity))}.text-gray-700[data-v-1d757ef3]{--tw-text-opacity:1;color:rgba(66,66,66,var(--tw-text-opacity))}.hover\:text-black[data-v-1d757ef3]:hover{--tw-text-opacity:1;color:rgba(0,0,0,var(--tw-text-opacity))}.antialiased[data-v-1d757ef3]{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.w-full[data-v-1d757ef3]{width:100%}.w-\[20\%\][data-v-1d757ef3]{width:20%}.z-10[data-v-1d757ef3]{z-index:10}.z-1[data-v-1d757ef3]{z-index:1}.gap-6[data-v-1d757ef3]{grid-gap:1.5rem;gap:1.5rem}.gap-3[data-v-1d757ef3]{grid-gap:.75rem;gap:.75rem}.gap-x-4[data-v-1d757ef3]{grid-column-gap:1rem;-webkit-column-gap:1rem;-moz-column-gap:1rem;column-gap:1rem}.gap-y-16[data-v-1d757ef3]{grid-row-gap:4rem;-webkit-row-gap:4rem;-moz-row-gap:4rem;row-gap:4rem}.gap-y-4[data-v-1d757ef3]{grid-row-gap:1rem;-webkit-row-gap:1rem;-moz-row-gap:1rem;row-gap:1rem}.gap-y-2[data-v-1d757ef3]{grid-row-gap:.5rem;-webkit-row-gap:.5rem;-moz-row-gap:.5rem;row-gap:.5rem}.grid-cols-2[data-v-1d757ef3]{grid-template-columns:repeat(2,minmax(0,1fr))}.col-span-2[data-v-1d757ef3]{-ms-grid-column-span:span 2 / span 2;grid-column:span 2 / span 2}.row-span-2[data-v-1d757ef3]{-ms-grid-row-span:span 2 / span 2;grid-row:span 2 / span 2}.transition-opacity[data-v-1d757ef3]{transition-duration:.15s;transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1)}.duration-300[data-v-1d757ef3]{transition-duration:.3s}@media (min-width:640px){.sm\:flex-row[data-v-1d757ef3]{flex-direction:row}.sm\:justify-between[data-v-1d757ef3]{justify-content:space-between}.sm\:h-34[data-v-1d757ef3]{height:8.5rem}.sm\:text-base[data-v-1d757ef3]{font-size:1rem;line-height:1.5rem}.sm\:text-5xl[data-v-1d757ef3]{font-size:3rem;line-height:1}.sm\:min-h-\[220px\][data-v-1d757ef3]{min-height:220px}.sm\:px-6[data-v-1d757ef3]{padding-left:1.5rem;padding-right:1.5rem}.sm\:px-28[data-v-1d757ef3]{padding-left:7rem;padding-right:7rem}.sm\:col-span-1[data-v-1d757ef3]{-ms-grid-column-span:span 1 / span 1;grid-column:span 1 / span 1}}@media (min-width:768px){.md\:min-h-\[180px\][data-v-1d757ef3]{min-height:180px}}@media (min-width:1024px){.lg\:flex-col[data-v-1d757ef3]{flex-direction:column}.lg\:order-none[data-v-1d757ef3]{order:0}.lg\:min-h-min[data-v-1d757ef3]{min-height:-moz-min-content;min-height:min-content}.lg\:py-7[data-v-1d757ef3]{padding-bottom:1.75rem;padding-top:1.75rem}.lg\:px-8[data-v-1d757ef3]{padding-left:2rem;padding-right:2rem}.lg\:grid-cols-10[data-v-1d757ef3]{grid-template-columns:repeat(10,minmax(0,1fr))}.lg\:col-span-10[data-v-1d757ef3]{-ms-grid-column-span:span 10 / span 10;grid-column:span 10 / span 10}.lg\:col-span-6[data-v-1d757ef3]{-ms-grid-column-span:span 6 / span 6;grid-column:span 6 / span 6}.lg\:col-span-4[data-v-1d757ef3]{-ms-grid-column-span:span 4 / span 4;grid-column:span 4 / span 4}}@media (prefers-color-scheme:dark){.dark\:bg-black[data-v-1d757ef3]{--tw-bg-opacity:1;background-color:rgba(0,0,0,var(--tw-bg-opacity))}.dark\:bg-white\/10[data-v-1d757ef3]{--tw-bg-opacity:.1;background-color:rgba(255,255,255,var(--tw-bg-opacity))}.dark\:bg-gray-900[data-v-1d757ef3]{--tw-bg-opacity:1;background-color:rgba(24,24,27,var(--tw-bg-opacity))}.dark\:border-transparent[data-v-1d757ef3]{border-color:transparent}.dark\:border-gray-900[data-v-1d757ef3]{--tw-border-opacity:1;border-color:rgba(24,24,27,var(--tw-border-opacity))}.dark\:border-none[data-v-1d757ef3]{border-style:none}.dark\:block[data-v-1d757ef3]{display:block}.dark\:hidden[data-v-1d757ef3]{display:none}.dark\:text-white[data-v-1d757ef3]{--tw-text-opacity:1;color:rgba(255,255,255,var(--tw-text-opacity))}.dark\:text-gray-300[data-v-1d757ef3]{--tw-text-opacity:1;color:rgba(189,189,189,var(--tw-text-opacity))}.dark\:hover\:text-white[data-v-1d757ef3]:hover{--tw-text-opacity:1;color:rgba(255,255,255,var(--tw-text-opacity))}}