@nuxt/devtools 0.2.3 → 0.2.5

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 (114) hide show
  1. package/README.md +27 -106
  2. package/dist/chunks/module-main.mjs +56 -4
  3. package/dist/chunks/vscode.mjs +2 -2
  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.4f16da14.js +1 -0
  9. package/dist/client/_nuxt/{FilepathItem.vue.979135a2.js → FilepathItem.vue.235fa07d.js} +1 -1
  10. package/dist/client/_nuxt/LaunchPage.vue.86f00e85.js +1 -0
  11. package/dist/client/_nuxt/NButton.vue.76dccbb9.js +100 -0
  12. package/dist/client/_nuxt/NCheckbox.vue.60126ccb.js +1 -0
  13. package/dist/client/_nuxt/NMarkdown.vue.abb154b8.js +1 -0
  14. package/dist/client/_nuxt/NSectionBlock.58837776.js +1 -0
  15. package/dist/client/_nuxt/NSectionBlock.891fa081.css +1 -0
  16. package/dist/client/_nuxt/NTextInput.vue.1fd15b74.js +1 -0
  17. package/dist/client/_nuxt/NuxtLogo.8111403f.js +1 -0
  18. package/dist/client/_nuxt/PanelLeftRight.vue.56b5906c.js +1 -0
  19. package/dist/client/_nuxt/StateEditor.vue.bdb7e5c8.js +1 -0
  20. package/dist/client/_nuxt/TabIcon.vue.30ae65eb.js +1 -0
  21. package/dist/client/_nuxt/{__inspecting.8e04d312.js → __inspecting.8819ade8.js} +1 -1
  22. package/dist/client/_nuxt/asyncData.103aad72.js +1 -0
  23. package/dist/client/_nuxt/client.9c41f495.js +1 -0
  24. package/dist/client/_nuxt/components.43dee80b.js +1 -0
  25. package/dist/client/_nuxt/{context.9698c0b7.js → context.55688cca.js} +1 -1
  26. package/dist/client/_nuxt/custom-_name_.8832be9d.js +1 -0
  27. package/dist/client/_nuxt/default.c29c3e74.js +1 -0
  28. package/dist/client/_nuxt/editor.66e59505.js +1 -0
  29. package/dist/client/_nuxt/entry.3a404c59.css +1 -0
  30. package/dist/client/_nuxt/entry.883bcfe6.js +11 -0
  31. package/dist/client/_nuxt/error-404.d027ece6.js +1 -0
  32. package/dist/client/_nuxt/error-500.8f6cefc5.js +1 -0
  33. package/dist/client/_nuxt/error-component.ee11a8ba.js +3 -0
  34. package/dist/client/_nuxt/hooks.427abdcd.js +1 -0
  35. package/dist/client/_nuxt/imports.2dc7174b.js +1 -0
  36. package/dist/client/_nuxt/index.0d6abd2a.js +1 -0
  37. package/dist/client/_nuxt/{StateEditor.vue.36646f40.js → json-editor-vue.a65019ca.js} +50 -50
  38. package/dist/client/_nuxt/layouts.4db8e1e6.js +1 -0
  39. package/dist/client/_nuxt/{middleware.69b6216a.js → middleware.c4f2a57b.js} +1 -1
  40. package/dist/client/_nuxt/modules.a2209d2d.js +1 -0
  41. package/dist/client/_nuxt/none.394b52e6.js +1 -0
  42. package/dist/client/_nuxt/nuxt-link.a34a1045.js +1 -0
  43. package/dist/client/_nuxt/overview.5053fd45.js +1 -0
  44. package/dist/client/_nuxt/pages.9a1a9ac3.js +1 -0
  45. package/dist/client/_nuxt/payload.ed4c5688.js +1 -0
  46. package/dist/client/_nuxt/plugins.95c9e3e6.js +1 -0
  47. package/dist/client/_nuxt/runtime-configs.7ebddf6f.js +1 -0
  48. package/dist/client/_nuxt/{server-routes.3adfcc71.js → server-routes.5337ffc6.js} +1 -1
  49. package/dist/client/_nuxt/state.1f523208.js +1 -0
  50. package/dist/client/_nuxt/storage.4459d7bf.js +1 -0
  51. package/dist/client/_nuxt/{unocss-runtime.25c772f5.js → unocss-runtime.daeb320e.js} +1 -1
  52. package/dist/client/_nuxt/virtual-files.a15894d9.js +3 -0
  53. package/dist/client/index.html +2 -2
  54. package/dist/client/modules/components/index.html +2 -2
  55. package/dist/client/modules/hooks/index.html +2 -2
  56. package/dist/client/modules/imports/index.html +2 -2
  57. package/dist/client/modules/layouts/index.html +2 -2
  58. package/dist/client/modules/middleware/index.html +2 -2
  59. package/dist/client/modules/modules/index.html +2 -2
  60. package/dist/client/modules/overview/index.html +2 -2
  61. package/dist/client/modules/pages/index.html +2 -2
  62. package/dist/client/modules/payload/index.html +2 -2
  63. package/dist/client/modules/plugins/index.html +2 -2
  64. package/dist/client/modules/runtime-configs/index.html +2 -2
  65. package/dist/client/modules/server-routes/index.html +2 -2
  66. package/dist/client/modules/storage/index.html +7 -0
  67. package/dist/client/modules/virtual-files/index.html +2 -2
  68. package/dist/iframe-client.d.ts +2 -0
  69. package/dist/iframe-client.mjs +15 -13
  70. package/dist/module.d.ts +3 -1
  71. package/dist/module.json +1 -1
  72. package/dist/module.mjs +1 -1
  73. package/dist/shared/{devtools.e021beee.mjs → devtools.258c6e2e.mjs} +1 -1
  74. package/dist/shared/{devtools.20f5aa36.mjs → devtools.95cf6023.mjs} +3 -0
  75. package/dist/types.d.ts +25 -0
  76. package/package.json +18 -17
  77. package/dist/client/_nuxt/Badge.4a77fa78.js +0 -1
  78. package/dist/client/_nuxt/LaunchPage.vue.b76c79ef.js +0 -1
  79. package/dist/client/_nuxt/NButton.vue.1a112b83.js +0 -113
  80. package/dist/client/_nuxt/NCheckbox.vue.a0c90a66.js +0 -1
  81. package/dist/client/_nuxt/NIcon.vue.87f21f5b.js +0 -1
  82. package/dist/client/_nuxt/NTextInput.vue.fd5ccf6b.js +0 -1
  83. package/dist/client/_nuxt/NuxtLogo.042990f0.js +0 -1
  84. package/dist/client/_nuxt/SectionBlock.48da9d80.css +0 -1
  85. package/dist/client/_nuxt/SectionBlock.6f644f93.js +0 -1
  86. package/dist/client/_nuxt/StateEditor.ce27b0a9.css +0 -1
  87. package/dist/client/_nuxt/StateEditor.vue.a07128f1.js +0 -1
  88. package/dist/client/_nuxt/TabIcon.vue.5b095463.js +0 -1
  89. package/dist/client/_nuxt/_plugin-vue_export-helper.c27b6911.js +0 -1
  90. package/dist/client/_nuxt/asyncData.1fda28f3.js +0 -1
  91. package/dist/client/_nuxt/components.54475639.js +0 -1
  92. package/dist/client/_nuxt/composables.d26f66f1.js +0 -1
  93. package/dist/client/_nuxt/custom-_name_.3bf9ba62.js +0 -1
  94. package/dist/client/_nuxt/default.ddc4865a.js +0 -1
  95. package/dist/client/_nuxt/editor.09625e23.js +0 -1
  96. package/dist/client/_nuxt/entry.86f6ad34.js +0 -5
  97. package/dist/client/_nuxt/entry.aace963d.css +0 -1
  98. package/dist/client/_nuxt/error-404.e8158634.js +0 -1
  99. package/dist/client/_nuxt/error-500.47af0385.js +0 -1
  100. package/dist/client/_nuxt/error-component.c0967733.js +0 -3
  101. package/dist/client/_nuxt/hooks.5083417d.js +0 -1
  102. package/dist/client/_nuxt/imports.dd507f13.js +0 -1
  103. package/dist/client/_nuxt/index.5d8d473c.js +0 -1
  104. package/dist/client/_nuxt/layouts.87dc2998.js +0 -1
  105. package/dist/client/_nuxt/modules.81a5998b.js +0 -1
  106. package/dist/client/_nuxt/none.31b2b728.js +0 -1
  107. package/dist/client/_nuxt/nuxt-link.5c23b37c.js +0 -1
  108. package/dist/client/_nuxt/overview.03a7bccb.js +0 -1
  109. package/dist/client/_nuxt/pages.e8864866.js +0 -1
  110. package/dist/client/_nuxt/payload.7a85ff3c.js +0 -1
  111. package/dist/client/_nuxt/plugins.1128c839.js +0 -1
  112. package/dist/client/_nuxt/runtime-configs.6a712d37.js +0 -1
  113. package/dist/client/_nuxt/state.567d3ef4.js +0 -1
  114. package/dist/client/_nuxt/virtual-files.5e4c425c.js +0 -9
package/README.md CHANGED
@@ -1,20 +1,24 @@
1
1
  <img width="1200" alt="Nuxt DevTools" src="https://user-images.githubusercontent.com/904724/217796838-597625f1-3f5a-4fb1-9720-68fd1c7d6615.jpg">
2
-
3
- <br>
4
2
  <br>
5
-
6
- <h1 align="center">
3
+ <h1>
7
4
  Nuxt DevTools <sup>Preview</sup>
8
5
  </h1>
9
6
 
10
- <p align="center">
7
+ [![npm version][npm-version-src]][npm-version-href]
8
+ [![npm downloads][npm-downloads-src]][npm-downloads-href]
9
+ [![License][license-src]][license-href]
10
+ [![Nuxt][nuxt-src]][nuxt-href]
11
+ [![Volta][volta-src]][volta-href]
12
+
13
+ <p>
11
14
  Unleash Nuxt Developer Experience.
12
15
  <br>Nuxt DevTools is a set of visual tools that help you to know your app better.
13
16
  </p>
14
17
 
15
- <p align="center">
18
+ <p>
16
19
  <a href="https://github.com/nuxt/devtools/discussions/29">💡 Ideas & Suggestions</a> |
17
- <a href="https://github.com/nuxt/devtools/discussions/31">🗺️ Project Roadmap</a>
20
+ <a href="https://github.com/nuxt/devtools/discussions/31">🗺️ Project Roadmap</a> |
21
+ <a href="https://devtools.nuxtjs.org/">📚 Documentation</a> |
18
22
  </p>
19
23
 
20
24
  <br>
@@ -167,112 +171,29 @@ Inspect expose the [`vite-plugin-inspect`](https://github.com/antfu/vite-plugin-
167
171
 
168
172
  ## Module Authors
169
173
 
170
- Nuxt DevTools is designed to be extensible. You can add your own modules' integration to the DevTools.
171
-
172
- > **Warning**: APIs are subject to change.
173
-
174
- ### Contributing to View
175
-
176
- Currently the only way to contribute to Nuxt DevTools View is via iframe. You need to serve your module's view yourself and then register it to the DevTools.
177
-
178
- ```ts
179
- nuxt.hook('devtools:customTabs', (tabs) => {
180
- tabs.push({
181
- // unique identifier
182
- name: 'my-module',
183
- // title to display in the tab
184
- title: 'My Module',
185
- // any icon from Iconify, or a URL to an image
186
- icon: 'carbon:apps',
187
- // iframe view
188
- view: {
189
- type: 'iframe',
190
- src: '/url-to-your-module-view',
191
- },
192
- })
193
- })
194
- ```
195
-
196
- ### Lazy Service Launching
197
-
198
- If the view you are contributing is heavy to load, you can have the tab first and let user launch it when they need it.
199
-
200
- ```ts
201
- let isReady = false
202
- const promise: Promise<any> | null = null
203
-
204
- async function launchService() {
205
- // ...launch your service
206
- isReady = true
207
- }
208
-
209
- nuxt.hook('devtools:customTabs', (tabs) => {
210
- tabs.push({
211
- name: 'my-module',
212
- title: 'My Module',
213
- view: isReady
214
- ? {
215
- type: 'iframe',
216
- src: '/url-to-your-module-view',
217
- }
218
- : {
219
- type: 'launch',
220
- description: 'Launch My Module',
221
- actions: [{
222
- label: 'Start',
223
- async handle() {
224
- if (!promise)
225
- promise = launchService()
226
- await promise
227
- },
228
- }]
229
- },
230
- })
231
- })
232
- ```
174
+ Please refer to the [Module Authors Guide](https://devtools.nuxtjs.org/module/guide).
233
175
 
234
- It will first display a launch page with a button to start the service. When user click the button, the `handle()` will be called, and the view will be updated to iframe.
235
-
236
- When you need to refresh the custom tabs, you can call `nuxt.callHook('devtools:customTabs:refresh')` and the hooks on `devtools:customTabs` will be revaluated again.
237
-
238
- ### DevTools API from Custom View
239
-
240
- To provide complex interactions for your module integrations, we recommend to host your own view and display it in devtools via iframe.
241
-
242
- To get the infomation from the devtools and the client app, you can do this in your client app:
243
-
244
- ```ts
245
- import { useDevtoolsClient } from '@nuxt/devtools/iframe-client'
246
-
247
- export const devtoolsClient = useDevtoolsClient()
248
- ```
249
-
250
- When the iframe been served with the same origin (CORS limitation), devtools will automatically inject `__NUXT_DEVTOOLS__` to the iframe's window object. You can access it as a ref using `useDevtoolsClient()` utility.
251
-
252
- `devtoolsClient.value.host` contains APIs to communicate with the client app, and `devtoolsClient.value.devtools` contains APIs to communicate with the devtools. For example, you can get the router instance from the client app:
253
-
254
- ```ts
255
- const router = computed(() => devtoolsClient.value?.host?.nuxt.vueApp.config.globalProperties?.$router)
256
- ```
176
+ ## Contribution Guide
257
177
 
258
- ### Trying Local Changes to Nuxt DevTools
178
+ Please refer to the [Contribution Guide](https://devtools.nuxtjs.org/development/contributing).
259
179
 
260
- You can clone Nuxt DevTools repo and try your changes locally.
180
+ ## License
261
181
 
262
- Please refer to [Trying Local Changes](CONTRIBUTING.md#trying-local-changes).
182
+ [MIT](./LICENSE)
263
183
 
264
- ### Examples
265
184
 
266
- - Built-in VS Code integration with lazy initialize: https://github.com/nuxt/devtools/blob/main/src/integrations/vscode.ts.
267
- - VueUse adds a docs tab: https://github.com/vueuse/vueuse/blob/ce28cef154489c73abe308104bef8568594a9bcd/packages/nuxt/index.ts#L89-L99.
268
- - UnoCSS Inspector: https://github.com/unocss/unocss/blob/25021a751494e99e85cfd82cca3855cdf78f6a12/packages/nuxt/src/index.ts#L81-L94
269
- - Nuxt Vitest runner: https://github.com/danielroe/nuxt-vitest/blob/7bac68d96f27dea6c30c198b7caaaf0b495574ab/packages/nuxt-vitest/src/module.ts#L139-L181
270
- - Nuxt OG Image Playground: https://github.com/harlan-zw/nuxt-og-image/blob/main/src/module.ts#L136
185
+ <!-- Badges -->
186
+ [npm-version-src]: https://img.shields.io/npm/v/@nuxt/devtools/latest.svg?style=flat&colorA=18181B&colorB=28CF8D
187
+ [npm-version-href]: https://npmjs.com/package/@nuxt/devtools
271
188
 
272
- ## Contribution Guide
189
+ [npm-downloads-src]: https://img.shields.io/npm/dt/@nuxt/devtools.svg?style=flat&colorA=18181B&colorB=28CF8D
190
+ [npm-downloads-href]: https://npmjs.com/package/@nuxt/devtools
273
191
 
274
- Please refer to [CONTRIBUTING.md](./CONTRIBUTING.md) for more information.
192
+ [license-src]: https://img.shields.io/npm/l/@nuxt/devtools.svg?style=flat&colorA=18181B&colorB=28CF8D
193
+ [license-href]: https://npmjs.com/package/@nuxt/devtools
275
194
 
276
- ## License
195
+ [nuxt-src]: https://img.shields.io/badge/Nuxt-18181B?logo=nuxt.js
196
+ [nuxt-href]: https://nuxt.com
277
197
 
278
- [MIT](./LICENSE)
198
+ [volta-src]: https://user-images.githubusercontent.com/904724/209143798-32345f6c-3cf8-4e06-9659-f4ace4a6acde.svg
199
+ [volta-href]: https://volta.net/nuxt/devtools?utm_source=nuxt_devtools_readme
@@ -15,14 +15,14 @@ import require$$0$4 from 'url';
15
15
  import { searchForWorkspaceRoot } from 'vite';
16
16
  import * as qs from 'querystring';
17
17
  import require$$0$5 from 'tty';
18
- import { v as version } from '../shared/devtools.e021beee.mjs';
18
+ import { v as version } from '../shared/devtools.258c6e2e.mjs';
19
19
  import { createBirpcGroup } from 'birpc';
20
20
  import { resolvePreset } from 'unimport';
21
21
  import { join as join$1, dirname, resolve as resolve$1 } from 'pathe';
22
22
  import fsp from 'fs/promises';
23
23
  import 'pkg-types';
24
24
  import { runtimeDir, clientDir, packageDir, isGlobalInstall } from '../dirs.mjs';
25
- import { R as ROUTE_ENTRY, a as ROUTE_CLIENT } from '../shared/devtools.20f5aa36.mjs';
25
+ import { R as ROUTE_ENTRY, a as ROUTE_CLIENT } from '../shared/devtools.95cf6023.mjs';
26
26
 
27
27
 
28
28
 
@@ -8187,6 +8187,8 @@ async function checkForUpdates() {
8187
8187
  return updates;
8188
8188
  }
8189
8189
 
8190
+ const IGNORE_STORAGE_MOUNTS = ["root", "build", "src", "cache"];
8191
+ const shouldIgnoreStorageKey = (key) => IGNORE_STORAGE_MOUNTS.includes(key.split(":")[0]);
8190
8192
  function setupRPC(nuxt, _options) {
8191
8193
  const components = [];
8192
8194
  const imports = [];
@@ -8195,6 +8197,8 @@ function setupRPC(nuxt, _options) {
8195
8197
  const iframeTabs = [];
8196
8198
  const customTabs = [];
8197
8199
  const serverHooks = setupHooksDebug(nuxt.hooks);
8200
+ let storage;
8201
+ const storageMounts = {};
8198
8202
  let unimport;
8199
8203
  let app;
8200
8204
  let checkForUpdatePromise;
@@ -8205,7 +8209,55 @@ function setupRPC(nuxt, _options) {
8205
8209
  function refresh(event) {
8206
8210
  birpc.broadcast.refresh.asEvent(event);
8207
8211
  }
8212
+ nuxt.hook("nitro:init", (nitro) => {
8213
+ storage = nitro.storage;
8214
+ nuxt.hook("ready", () => {
8215
+ storage.watch((event, key) => {
8216
+ if (shouldIgnoreStorageKey(key))
8217
+ return;
8218
+ birpc.broadcast.callHook.asEvent("storage:key:update", key, event);
8219
+ });
8220
+ });
8221
+ const mounts = {
8222
+ ...nitro.options.storage,
8223
+ ...nitro.options.devStorage
8224
+ };
8225
+ for (const name of Object.keys(mounts)) {
8226
+ if (shouldIgnoreStorageKey(name))
8227
+ continue;
8228
+ storageMounts[name] = mounts[name];
8229
+ }
8230
+ });
8208
8231
  Object.assign(serverFunctions, {
8232
+ async getStorageMounts() {
8233
+ return storageMounts;
8234
+ },
8235
+ async getStorageKeys(base) {
8236
+ if (!storage)
8237
+ return [];
8238
+ try {
8239
+ const keys = await storage.getKeys(base);
8240
+ return keys.filter((key) => !shouldIgnoreStorageKey(key));
8241
+ } catch (err) {
8242
+ console.error(`Cloud not fetch storage keys for ${base}:`, err);
8243
+ return [];
8244
+ }
8245
+ },
8246
+ async getStorageItem(key) {
8247
+ if (!storage)
8248
+ return null;
8249
+ return await storage.getItem(key);
8250
+ },
8251
+ async setStorageItem(key, value) {
8252
+ if (!storage)
8253
+ return;
8254
+ return await storage.setItem(key, value);
8255
+ },
8256
+ async removeStorageItem(key) {
8257
+ if (!storage)
8258
+ return;
8259
+ return await storage.removeItem(key);
8260
+ },
8209
8261
  getServerConfig() {
8210
8262
  return nuxt.options;
8211
8263
  },
@@ -8403,8 +8455,8 @@ async function enableModule(options, nuxt) {
8403
8455
  server.middlewares.use(ROUTE_CLIENT, sirv(clientDir, { single: true, dev: true }));
8404
8456
  });
8405
8457
  const integrations = [
8406
- import('./vue-inspector.mjs').then(({ setup }) => setup(nuxt, serverFunctions)),
8407
- import('./vite-inspect.mjs').then(({ setup }) => setup(nuxt, serverFunctions)),
8458
+ options.viteInspect !== false ? import('./vite-inspect.mjs').then(({ setup }) => setup(nuxt, serverFunctions)) : null,
8459
+ options.componentInspector !== false ? import('./vue-inspector.mjs').then(({ setup }) => setup(nuxt, serverFunctions)) : null,
8408
8460
  options.vscode?.enabled ? import('./vscode.mjs').then(({ setup }) => setup(nuxt, serverFunctions, options.vscode || {})) : null
8409
8461
  ];
8410
8462
  await Promise.all(integrations);
@@ -21,7 +21,7 @@ import 'crypto';
21
21
  import 'events';
22
22
  import 'vite';
23
23
  import 'querystring';
24
- import '../shared/devtools.e021beee.mjs';
24
+ import '../shared/devtools.258c6e2e.mjs';
25
25
  import 'birpc';
26
26
  import 'unimport';
27
27
  import 'pathe';
@@ -29,7 +29,7 @@ import 'fs/promises';
29
29
  import 'pkg-types';
30
30
  import '../dirs.mjs';
31
31
  import 'is-installed-globally';
32
- import '../shared/devtools.20f5aa36.mjs';
32
+ import '../shared/devtools.95cf6023.mjs';
33
33
 
34
34
 
35
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.e021beee.mjs';
8
+ import { n as name } from './shared/devtools.258c6e2e.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.86f6ad34.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.ddc4865a.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.9698c0b7.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/NuxtLogo.042990f0.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.1a112b83.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/NIcon.vue.87f21f5b.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/nuxt-link.5c23b37c.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/StateEditor.vue.36646f40.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/composables.d26f66f1.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/TabIcon.vue.5b095463.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/state.567d3ef4.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/asyncData.1fda28f3.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/none.31b2b728.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/unocss-runtime.25c772f5.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/error-component.c0967733.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"}
4
+ <meta name="viewport" content="width=device-width, initial-scale=1"><link rel="modulepreload" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/entry.883bcfe6.js"><link rel="preload" as="style" href="/__nuxt_devtools__/client/_nuxt/entry.3a404c59.css"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/default.c29c3e74.js"><link rel="prefetch" as="style" href="/__nuxt_devtools__/client/_nuxt/NSectionBlock.891fa081.css"><link rel="prefetch" as="style" href="/__nuxt_devtools__/client/_nuxt/NButton.a7fda268.css"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/context.55688cca.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/NuxtLogo.8111403f.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/NButton.vue.76dccbb9.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/nuxt-link.a34a1045.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/client.9c41f495.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/json-editor-vue.a65019ca.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/TabIcon.vue.30ae65eb.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/state.1f523208.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/asyncData.103aad72.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/none.394b52e6.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/index.a6656ecb.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/unocss-runtime.daeb320e.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/error-component.ee11a8ba.js"><link rel="stylesheet" href="/__nuxt_devtools__/client/_nuxt/entry.3a404c59.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.86f6ad34.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.883bcfe6.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.86f6ad34.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.ddc4865a.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.9698c0b7.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/NuxtLogo.042990f0.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.1a112b83.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/NIcon.vue.87f21f5b.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/nuxt-link.5c23b37c.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/StateEditor.vue.36646f40.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/composables.d26f66f1.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/TabIcon.vue.5b095463.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/state.567d3ef4.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/asyncData.1fda28f3.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/none.31b2b728.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/unocss-runtime.25c772f5.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/error-component.c0967733.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"}
4
+ <meta name="viewport" content="width=device-width, initial-scale=1"><link rel="modulepreload" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/entry.883bcfe6.js"><link rel="preload" as="style" href="/__nuxt_devtools__/client/_nuxt/entry.3a404c59.css"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/default.c29c3e74.js"><link rel="prefetch" as="style" href="/__nuxt_devtools__/client/_nuxt/NSectionBlock.891fa081.css"><link rel="prefetch" as="style" href="/__nuxt_devtools__/client/_nuxt/NButton.a7fda268.css"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/context.55688cca.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/NuxtLogo.8111403f.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/NButton.vue.76dccbb9.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/nuxt-link.a34a1045.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/client.9c41f495.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/json-editor-vue.a65019ca.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/TabIcon.vue.30ae65eb.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/state.1f523208.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/asyncData.103aad72.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/none.394b52e6.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/index.a6656ecb.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/unocss-runtime.daeb320e.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/error-component.ee11a8ba.js"><link rel="stylesheet" href="/__nuxt_devtools__/client/_nuxt/entry.3a404c59.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.86f6ad34.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.883bcfe6.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.86f6ad34.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.ddc4865a.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.9698c0b7.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/NuxtLogo.042990f0.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.1a112b83.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/NIcon.vue.87f21f5b.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/nuxt-link.5c23b37c.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/StateEditor.vue.36646f40.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/composables.d26f66f1.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/TabIcon.vue.5b095463.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/state.567d3ef4.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/asyncData.1fda28f3.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/none.31b2b728.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/unocss-runtime.25c772f5.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/error-component.c0967733.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"}
4
+ <meta name="viewport" content="width=device-width, initial-scale=1"><link rel="modulepreload" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/entry.883bcfe6.js"><link rel="preload" as="style" href="/__nuxt_devtools__/client/_nuxt/entry.3a404c59.css"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/default.c29c3e74.js"><link rel="prefetch" as="style" href="/__nuxt_devtools__/client/_nuxt/NSectionBlock.891fa081.css"><link rel="prefetch" as="style" href="/__nuxt_devtools__/client/_nuxt/NButton.a7fda268.css"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/context.55688cca.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/NuxtLogo.8111403f.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/NButton.vue.76dccbb9.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/nuxt-link.a34a1045.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/client.9c41f495.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/json-editor-vue.a65019ca.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/TabIcon.vue.30ae65eb.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/state.1f523208.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/asyncData.103aad72.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/none.394b52e6.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/index.a6656ecb.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/unocss-runtime.daeb320e.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt_devtools__/client/_nuxt/error-component.ee11a8ba.js"><link rel="stylesheet" href="/__nuxt_devtools__/client/_nuxt/entry.3a404c59.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.86f6ad34.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.883bcfe6.js" crossorigin></script></body>
7
7
  </html>
@@ -0,0 +1 @@
1
+ import{a2 as o,o as t,f as n,r as s}from"./entry.883bcfe6.js";const r={},c={class:"text-12px whitespace-nowrap px-1.5 py-0.5 mx-0.5 rounded"};function a(e,_){return t(),n("span",c,[s(e.$slots,"default")])}const d=o(r,[["render",a]]);export{d as _};
@@ -1 +1 @@
1
- import{f as p,k as s}from"./state.567d3ef4.js";import{o as f}from"./editor.09625e23.js";import{a as l,l as m,o as u,f as h,t as c,u as a}from"./entry.86f6ad34.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{a as p,k as s}from"./state.1f523208.js";import{o as l}from"./editor.66e59505.js";import{a as f,l as m,o as u,f as h,t as c,u as a}from"./entry.883bcfe6.js";const E=f({__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(l))(e.filepath))},c(a(i)),1))}});export{E as _};
@@ -0,0 +1 @@
1
+ import{_ as f}from"./TabIcon.vue.30ae65eb.js";import{_ as p}from"./NMarkdown.vue.abb154b8.js";import{a as k,f as s,i as h,h as c,t as i,c as o,m as r,F as g,A as x,o as n,w as b,k as N,a0 as w,D as y}from"./entry.883bcfe6.js";import{_ as B}from"./NButton.vue.76dccbb9.js";const C={flex:"~ col gap2","h-full":"","items-center":"","justify-center":""},$={"text-xl":""},V={flex:"~ gap2 wrap"},P=k({__name:"LaunchPage",props:{icon:null,title:null,description:null,actions:null},emits:["action"],setup(e){return(l,v)=>{const m=f,d=p,_=y,u=B;return n(),s("div",C,[h(m,{"text-5xl":"",mb4:"",icon:e.icon||e.icon,title:e.title},null,8,["icon","title"]),c("h1",$,i(e.title),1),e.description?(n(),o(d,{key:0,op50:"","text-center":"","text-base":"","mt--1":"",mb2:"",markdown:e.description},null,8,["markdown"])):r("",!0),c("div",V,[(n(!0),s(g,null,x(e.actions,(t,a)=>(n(),o(u,w({key:a,n:"solid primary",disabled:t.pending,to:t.src,target:t.src?"_blank":void 0},t.attrs,{onClick:()=>{t.handle?.(),l.$emit("action",a)}}),{default:b(()=>[t.pending?(n(),o(_,{key:0,icon:"carbon-circle-dash","animate-spin":""})):r("",!0),N(" "+i(t.label),1)]),_:2},1040,["disabled","to","target","onClick"]))),128))])])}}});export{P as _};