@nuxt/devtools 4.0.0-alpha.17 → 4.0.0-alpha.19
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/_nuxt/{CodeDiff-DgjeLx6z.js.map.json → CodeDiff-BhzZ6fTd.js.map.json} +1 -1
- package/dist/_nuxt/{CodeSnippets-CgfcaS4Z.js.map.json → CodeSnippets-C7LxVstU.js.map.json} +1 -1
- package/dist/_nuxt/{ComposableItem-BWQR7_fI.js.map.json → ComposableItem-C0rRVuVk.js.map.json} +1 -1
- package/dist/_nuxt/{DataSchemaButton-CqEfc2TV.js.map.json → DataSchemaButton-D-t7Fd9O.js.map.json} +1 -1
- package/dist/_nuxt/{DataSchemaDrawer-Xj8YzNJN.js.map.json → DataSchemaDrawer-CRqKi4Gs.js.map.json} +1 -1
- package/dist/_nuxt/{FilepathItem-D75bkTSa.js.map.json → FilepathItem-QhFtdBo3.js.map.json} +1 -1
- package/dist/_nuxt/{HelpFab-CH7NlsDf.js.map.json → HelpFab-DsqK9feu.js.map.json} +1 -1
- package/dist/_nuxt/{LaunchPage-ByG-3KVi.js.map.json → LaunchPage-DvnAdXoI.js.map.json} +1 -1
- package/dist/_nuxt/{NCheckbox-OMIu_LTG.js.map.json → NCheckbox-C4hTNEJ1.js.map.json} +1 -1
- package/dist/_nuxt/{NDrawer-C6Opm19C.js.map.json → NDrawer-CkklqKLr.js.map.json} +1 -1
- package/dist/_nuxt/{NDropdown-DseEG3tA.js.map.json → NDropdown-CgrUsKt7.js.map.json} +1 -1
- package/dist/_nuxt/NIcon-50gk2nbO.js.map.json +1 -0
- package/dist/_nuxt/{NLink-Rsxlt1NN.js.map.json → NLink-CatISrot.js.map.json} +1 -1
- package/dist/_nuxt/{NNavbar-CS-Z1Cle.js.map.json → NNavbar-Du6Evn0c.js.map.json} +1 -1
- package/dist/_nuxt/{NSectionBlock-C7kcMkbf.js.map.json → NSectionBlock-CWogkb2Y.js.map.json} +1 -1
- package/dist/_nuxt/{NSelect-geGP1eOG.js.map.json → NSelect-C1Q6pEoo.js.map.json} +1 -1
- package/dist/_nuxt/{NSelectTabs-nUMnNQy-.js.map.json → NSelectTabs-ccruddjj.js.map.json} +1 -1
- package/dist/_nuxt/{NSplitPane-Bh0o_t5e.js.map.json → NSplitPane-CtaObqWQ.js.map.json} +1 -1
- package/dist/_nuxt/{NTip-DRnTpLjG.js.map.json → NTip-DdMJ2p97.js.map.json} +1 -1
- package/dist/_nuxt/{ServerRouteInputs-BhIrPxPN.js.map.json → ServerRouteInputs-Y1oZjFFT.js.map.json} +1 -1
- package/dist/_nuxt/{StacktraceList-B-ehJIQ-.js.map.json → StacktraceList-c-F2IS3F.js.map.json} +1 -1
- package/dist/_nuxt/{StateEditor-Yqdbqk_c.js.map.json → StateEditor-CDR7gMTz.js.map.json} +1 -1
- package/dist/_nuxt/{__blank-BM2yOFO6.js.map.json → __blank-C9tG8tKE.js.map.json} +1 -1
- package/dist/_nuxt/{analyze-build-Cemp_oBq.js.map.json → analyze-build-BqtehgeE.js.map.json} +1 -1
- package/dist/_nuxt/assets-BuVkFuYO.js.map.json +1 -0
- package/dist/_nuxt/{components-BJnHweOE.js.map.json → components-uGD7fpTl.js.map.json} +1 -1
- package/dist/_nuxt/custom-_name_-CL9ijc8K.js.map.json +1 -0
- package/dist/_nuxt/{debug-BcJZ8M6i.js.map.json → debug-D10Jwem2.js.map.json} +1 -1
- package/dist/_nuxt/entry-CqsJq8Bj.js.map.json +1 -0
- package/dist/_nuxt/{error-404-dySA7T2P.js.map.json → error-404-B3hvNTTL.js.map.json} +1 -1
- package/dist/_nuxt/{error-500-2Ody89Er.js.map.json → error-500-C707LWWo.js.map.json} +1 -1
- package/dist/_nuxt/{error-hGc4cWUU.js.map.json → error-D03t_7ms.js.map.json} +1 -1
- package/dist/_nuxt/{head-BTCtirw3.js.map.json → head-BHeO3WM1.js.map.json} +1 -1
- package/dist/_nuxt/{hooks-BVzlIVXR.js.map.json → hooks-Dao-RDzo.js.map.json} +1 -1
- package/dist/_nuxt/{imports-B3k4BZF7.js.map.json → imports-CY-qGueB.js.map.json} +1 -1
- package/dist/_nuxt/{modules-Ck915TxZ.js.map.json → modules-BTU4bGX2.js.map.json} +1 -1
- package/dist/_nuxt/nuxt-CU0ot_Hr.js.map.json +1 -0
- package/dist/_nuxt/{nuxt-link-C-BBeF5l.js.map.json → nuxt-link-DVKhBKYR.js.map.json} +1 -1
- package/dist/_nuxt/{open-graph-ll_bjX_m.js.map.json → open-graph-DrWy0sHo.js.map.json} +1 -1
- package/dist/_nuxt/overview-DMlMZwOJ.js.map.json +1 -0
- package/dist/_nuxt/{pages-CrUWMxGz.js.map.json → pages-BqpyOhlp.js.map.json} +1 -1
- package/dist/_nuxt/{pages-DWELoQlh.js.map.json → pages-Dpy3RGh8.js.map.json} +1 -1
- package/dist/_nuxt/{pages-BddDWJsZ.js.map.json → pages-SVg8-7rL.js.map.json} +1 -1
- package/dist/_nuxt/{payload-29bFuqLh.js.map.json → payload-B4tGg_yJ.js.map.json} +1 -1
- package/dist/_nuxt/{plugins-fmmRaH-S.js.map.json → plugins-sOeLpXdK.js.map.json} +1 -1
- package/dist/_nuxt/{ready-BQ1fhXgL.js.map.json → ready-DyAGZGXh.js.map.json} +1 -1
- package/dist/_nuxt/{runtime-configs-iL68LNkj.js.map.json → runtime-configs-CKsHjoDA.js.map.json} +1 -1
- package/dist/_nuxt/server-routes-Dr4xIhnL.js.map.json +1 -0
- package/dist/_nuxt/server-tasks-DVSMIJ23.js.map.json +1 -0
- package/dist/_nuxt/{settings-Qa45tU8e.js.map.json → settings-ClAb5Ncw.js.map.json} +1 -1
- package/dist/_nuxt/{state-components-CksF081b.js.map.json → state-components-CUy4qfKa.js.map.json} +1 -1
- package/dist/_nuxt/state-modules-BiTBg3sT.js.map.json +1 -0
- package/dist/_nuxt/{state-tabs-m1o-BX5R.js.map.json → state-tabs-DyXoC_gu.js.map.json} +1 -1
- package/dist/_nuxt/storage-Bl77u--J.js.map.json +1 -0
- package/dist/_nuxt/{timeline-Dukbqafi.js.map.json → timeline-RijyQyqW.js.map.json} +1 -1
- package/dist/_nuxt/utils-B-D4Pftb.js.map.json +1 -0
- package/dist/_nuxt/{virtual-files-BQJM45QE.js.map.json → virtual-files-DKOje2lN.js.map.json} +1 -1
- package/dist/_nuxt/virtual_nuxt_node_modules_.cache_nuxt_.nuxt_fetch.server-pxhz0pzP.js.map.json +1 -0
- package/dist/chunks/analyze-build.mjs +1 -1
- package/dist/chunks/module-main.mjs +92 -61
- package/dist/chunks/vite-inspect.mjs +1 -1
- package/dist/index.mjs.map.json +1 -1
- package/dist/module.json +1 -1
- package/dist/runtime/shared/hooks.d.ts +10 -2
- package/dist/server.mjs.map.json +1 -1
- package/package.json +24 -24
- package/dist/_nuxt/AuthRequiredPanel-znjaI7oT.js.map.json +0 -1
- package/dist/_nuxt/NIcon-cjduOh_B.js.map.json +0 -1
- package/dist/_nuxt/assets-rTFAaows.js.map.json +0 -1
- package/dist/_nuxt/custom-_name_-DI8dnRDD.js.map.json +0 -1
- package/dist/_nuxt/entry-DZwY6FLS.js.map.json +0 -1
- package/dist/_nuxt/nuxt-C5VITehY.js.map.json +0 -1
- package/dist/_nuxt/overview-CyqDmfdE.js.map.json +0 -1
- package/dist/_nuxt/server-routes-Dy5_Ljmu.js.map.json +0 -1
- package/dist/_nuxt/server-tasks-CD-7IPFD.js.map.json +0 -1
- package/dist/_nuxt/state-modules-CyH4hWeN.js.map.json +0 -1
- package/dist/_nuxt/storage-BylO3p9r.js.map.json +0 -1
- package/dist/_nuxt/utils-BfB0tRbX.js.map.json +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"file":"settings-Qa45tU8e.js","mappings":";;;;;;;;;;;AAWA,IAAA,uDAA4B,8BAAiB;CAC3C,QAAQ;CACR,mBAAmB;CACnB,MAAM,SAAS;EAEjB,eAAe,EACb,QAAQ,OACV,CAAC;EAED,MAAM,EACJ,iBACA,UACE,mBAAmB,IAAI;EAE3B,MAAM,EACJ,iBACE,mBAAmB,UAAU;EAEjC,MAAM,SAAS,UAAU;EAEzB,MAAM,gBAAgB;GACpB,CAAC,QAAQ,KAAA,CAAS;GAClB,CAAC,WAAW,QAAQ;GACpB,CAAC,mBAAmB,gBAAgB;GACpC,CAAC,UAAU,QAAQ;GACnB,CAAC,OAAO,KAAK;GACb,CAAC,iBAAiB,SAAS;GAC3B,CAAC,YAAY,UAAU;GACvB,CAAC,gBAAgB,SAAS;GAC1B,CAAC,QAAQ,MAAM;GACf,CAAC,YAAY,UAAU;EACzB;EAEA,MAAM,eAAe;GACnB,CAAC,QAAQ,KAAK,EAAE;GAChB,CAAC,SAAS,KAAK,EAAE;GACjB,CAAC,UAAU,CAAC;GACZ,CAAC,SAAS,KAAK,EAAE;GACjB,CAAC,QAAQ,KAAK,EAAE;EAClB;EAEA,eAAe,eAAe;GAE5B,IAAI,QAAQ,4EAA4E,GAAG;IACzF,OAAO,KAAK,YAAY,CAAC,CAAC,SAAS,QAAQ;KACzC,IAAI,IAAI,WAAW,gBAAgB,GACjC,aAAa,WAAW,GAAG;IAC/B,CAAC;IACD,MAAM,IAAI,aAAa;IACvB,OAAO,OAAO,KAAK,SAAS;IAC5B,CAAA,KAAA,EAAA,CAAO,SAAS,OAAO;GACzB;EACF;EAEA,QAAQ,MAAU,OAAW,SAAa,WAAgB;GACxD,MAAM,wBAAwB;GAC9B,MAAM,mBAAmB;GACzB,MAAM,qBAAqB;GAC3B,MAAM,uBAAuB;GAC7B,MAAM,mBAAmB;GACzB,MAAM,qBAAqB;GAE3B,MAAM,OAAO,eAAgB,WAAY;IACvC,KAAK;IACL,KAAK;GACP,GAAG,MAAM,CAAC,EAAE,EAAE;GACd,MAAM,mBAAoB,uBAAuB;IAC/C,OAAO;IACP,MAAM;IACN,MAAM;GACR,GAAG,MAAM,OAAO,CAAC;GACjB,MAAM,0GAA0G;GAChH,MAAM,mBAAoB,kBAAkB;IAC1C,IAAI;IACJ,MAAM;GACR,GAAG;IACD,SAAS,SAAU,GAAG,OAAO,SAAS,aAAa;KACjD,IAAI,OAAO;MACT,MAAM,KAAK,SAAS,cAAc;MAClC,MAAM,mBAAoB,oBAAoB;OAC5C,YAAY,MAAO,KAAK;OACxB,wBAAwB,WAAiB,MAAO,KAAK,IAAI,MAAQ,QAAQ,SAAS;OAClF,GAAG;MACL,GAAG;OACD,SAAS,SAAU,GAAG,OAAO,SAAS,aAAa;QACjD,IAAI,OAAO;SACT,MAAM,UAAU;SAChB,cAAe,eAAe,MAAM;UAClC,MAAM,UACJ,cAAe,SAAS,EAAE,EAAE,IAE5B,SACD,GACC,eAAgB,EAAE,EAAE,EACrB,UAAU;SACb,CAAC;SACD,MAAM,UAAU;QAClB,OACE,OAAO,EACJ,UAAW,GAAG,YAAa,UAAW,MAAM,WAAY,eAAe,MAAM;SAC5E,OAAO,YAAa,UAAU;UAC5B,KAAK,EAAE;UACP,OAAO,EAAE;SACX,GAAG,gBAAiB,EAAE,EAAE,GAAG,GAAG,CAAC,OAAO,CAAC;QACzC,CAAC,GAAG,EAAE,EACR;OAEJ,CAAC;OACD,GAAG;MACL,GAAG,SAAS,QAAQ,CAAC;KACvB,OACE,OAAO,CACL,YAAa,KAAK,MAAM,UAAU,GAClC,YAAa,oBAAoB;MAC/B,YAAY,MAAO,KAAK;MACxB,wBAAwB,WAAiB,MAAO,KAAK,IAAI,MAAQ,QAAQ,SAAS;MAClF,GAAG;KACL,GAAG;MACD,SAAS,cAAe,EACrB,UAAW,GAAG,YAAa,UAAW,MAAM,WAAY,eAAe,MAAM;OAC5E,OAAO,YAAa,UAAU;QAC5B,KAAK,EAAE;QACP,OAAO,EAAE;OACX,GAAG,gBAAiB,EAAE,EAAE,GAAG,GAAG,CAAC,OAAO,CAAC;MACzC,CAAC,GAAG,EAAE,EACR,CAAC;MACD,GAAG;KACL,GAAG,GAAG,CAAC,cAAc,qBAAqB,CAAC,CAC7C;IAEJ,CAAC;IACD,GAAG;GACL,GAAG,OAAO,CAAC;GACX,MAAM,iCAAiC;GACvC,MAAM,mBAAoB,kBAAkB;IAC1C,IAAI;IACJ,MAAM;GACR,GAAG;IACD,SAAS,SAAU,GAAG,OAAO,SAAS,aAAa;KACjD,IAAI,OAAO;MACT,MAAM,mBAAoB,sBAAsB;OAC9C,YAAY,MAAO,eAAe;OAClC,wBAAwB,WAAiB,MAAO,eAAe,IAAI,gBAAkB,QAAQ,SAAS;OACtG,aAAa;MACf,GAAG;OACD,SAAS,SAAU,GAAG,OAAO,SAAS,aAAa;QACjD,IAAI,OACF,MAAM,QAAQ,SAAS,0BAA0B;aAEjD,OAAO,CACL,YAAa,QAAQ,MAAM,mBAAmB,CAChD;OAEJ,CAAC;OACD,GAAG;MACL,GAAG,SAAS,QAAQ,CAAC;MACrB,MAAM,4CACJ,SACD,WACC,SACD,oBAAoB;MACrB,MAAM,mBAAoB,oBAAoB;OAC5C,YAAY,MAAO,YAAY;OAC/B,wBAAwB,WAAiB,MAAO,YAAY,IAAI,aAAe,QAAQ,SAAS;OAChG,aAAa;MACf,GAAG;OACD,SAAS,SAAU,GAAG,OAAO,SAAS,aAAa;QACjD,IAAI,OAAO;SACT,MAAM,UAAU;SAChB,cAAe,gBAAgB,MAAM;UACnC,MAAM,UACJ,cAAe,SAAS,EAAE,EAAE,IAE5B,SACD,GACC,eAAgB,EAAE,EAAE,EACrB,UAAU;SACb,CAAC;SACD,MAAM,UAAU;QAClB,OACE,OAAO,EACJ,UAAW,GAAG,YAAa,UAAW,MAAM,WAAY,gBAAgB,MAAM;SAC7E,OAAO,YAAa,UAAU;UAC5B,KAAK,EAAE;UACP,OAAO,EAAE;SACX,GAAG,gBAAiB,EAAE,EAAE,GAAG,GAAG,CAAC,OAAO,CAAC;QACzC,CAAC,GAAG,EAAE,EACR;OAEJ,CAAC;OACD,GAAG;MACL,GAAG,SAAS,QAAQ,CAAC;KACvB,OACE,OAAO;MACL,YAAa,sBAAsB;OACjC,YAAY,MAAO,eAAe;OAClC,wBAAwB,WAAiB,MAAO,eAAe,IAAI,gBAAkB,QAAQ,SAAS;OACtG,aAAa;MACf,GAAG;OACD,SAAS,cAAe,CACtB,YAAa,QAAQ,MAAM,mBAAmB,CAChD,CAAC;OACD,GAAG;MACL,GAAG,GAAG,CAAC,cAAc,qBAAqB,CAAC;MAC3C,YAAa,OAAO;OAClB,SAAS;OACT,KAAK;OACL,SAAS;OACT,QAAQ;OACR,MAAM;MACR,CAAC;MACD,YAAa,KAAK,MAAM,gBAAgB;MACxC,YAAa,oBAAoB;OAC/B,YAAY,MAAO,YAAY;OAC/B,wBAAwB,WAAiB,MAAO,YAAY,IAAI,aAAe,QAAQ,SAAS;OAChG,aAAa;MACf,GAAG;OACD,SAAS,cAAe,EACrB,UAAW,GAAG,YAAa,UAAW,MAAM,WAAY,gBAAgB,MAAM;QAC7E,OAAO,YAAa,UAAU;SAC5B,KAAK,EAAE;SACP,OAAO,EAAE;QACX,GAAG,gBAAiB,EAAE,EAAE,GAAG,GAAG,CAAC,OAAO,CAAC;OACzC,CAAC,GAAG,EAAE,EACR,CAAC;OACD,GAAG;MACL,GAAG,GAAG,CAAC,cAAc,qBAAqB,CAAC;KAC7C;IAEJ,CAAC;IACD,GAAG;GACL,GAAG,OAAO,CAAC;GACX,MAAM,iCAAiC;GACvC,MAAM,mBAAoB,kBAAkB;IAC1C,IAAI;IACJ,MAAM;GACR,GAAG;IACD,SAAS,SAAU,GAAG,OAAO,SAAS,aAAa;KACjD,IAAI,OAAO;MACT,MAAM,mBAAoB,sBAAsB;OAC9C,YAAY,MAAO,gBAAgB;OACnC,wBAAwB,WAAiB,MAAO,gBAAgB,IAAI,iBAAmB,QAAQ,SAAS;OACxG,aAAa;MACf,GAAG;OACD,SAAS,SAAU,GAAG,OAAO,SAAS,aAAa;QACjD,IAAI,OAAO;SACT,MAAM,QAAQ,SAAS,8DAA8D;SACrF,MAAM,mBAAoB,kBAAkB;UAC1C,MAAM;UACN,QAAQ;UACR,KAAK;UACL,MAAM;SACR,GAAG,MAAM,SAAS,QAAQ,CAAC;QAC7B,OACE,OAAO,CACL,YAAa,QAAQ,MAAM,uDAAuD,GAClF,YAAa,kBAAkB;SAC7B,MAAM;SACN,QAAQ;SACR,KAAK;SACL,MAAM;SACN,aAAa;QACf,CAAC,CACH;OAEJ,CAAC;OACD,GAAG;MACL,GAAG,SAAS,QAAQ,CAAC;MACrB,MAAM,4CACJ,SACD,4BACC,SACD,EAAE;MACH,MAAM,mBAAoB,oBAAoB;OAC5C,GAAG;OACH,IAAI;OACJ,QAAQ;MACV,GAAG;OACD,SAAS,SAAU,GAAG,OAAO,SAAS,aAAa;QACjD,IAAI,OACF,MAAM,gCAAgC,SAAS,iCAAiC;aAEhF,OAAO,CACL,YAAa,OAAO,EAAE,4BAA4B,GAAG,CAAC,GACtD,gBAAiB,uBAAuB,CAC1C;OAEJ,CAAC;OACD,GAAG;MACL,GAAG,SAAS,QAAQ,CAAC;MACrB,MAAM,mBAAoB,oBAAoB;OAC5C,GAAG;OACH,IAAI;OACJ,QAAQ;MACV,GAAG;OACD,SAAS,SAAU,GAAG,OAAO,SAAS,aAAa;QACjD,IAAI,OACF,MAAM,sBAAsB,SAAS,qBAAqB;aAE1D,OAAO,CACL,YAAa,OAAO,EAAE,kBAAkB,GAAG,CAAC,GAC5C,gBAAiB,eAAe,CAClC;OAEJ,CAAC;OACD,GAAG;MACL,GAAG,SAAS,QAAQ,CAAC;MACrB,MAAM,QAAQ;KAChB,OACE,OAAO;MACL,YAAa,sBAAsB;OACjC,YAAY,MAAO,gBAAgB;OACnC,wBAAwB,WAAiB,MAAO,gBAAgB,IAAI,iBAAmB,QAAQ,SAAS;OACxG,aAAa;MACf,GAAG;OACD,SAAS,cAAe,CACtB,YAAa,QAAQ,MAAM,uDAAuD,GAClF,YAAa,kBAAkB;QAC7B,MAAM;QACN,QAAQ;QACR,KAAK;QACL,MAAM;QACN,aAAa;OACf,CAAC,CACH,CAAC;OACD,GAAG;MACL,GAAG,GAAG,CAAC,cAAc,qBAAqB,CAAC;MAC3C,YAAa,OAAO;OAClB,SAAS;OACT,KAAK;OACL,SAAS;OACT,QAAQ;OACR,MAAM;MACR,CAAC;MACD,YAAa,OAAO,EAAE,MAAM,UAAU,GAAG,CACvC,YAAa,oBAAoB;OAC/B,GAAG;OACH,IAAI;OACJ,QAAQ;MACV,GAAG;OACD,SAAS,cAAe,CACtB,YAAa,OAAO,EAAE,4BAA4B,GAAG,CAAC,GACtD,gBAAiB,uBAAuB,CAC1C,CAAC;OACD,GAAG;MACL,CAAC,GACD,YAAa,oBAAoB;OAC/B,GAAG;OACH,IAAI;OACJ,QAAQ;MACV,GAAG;OACD,SAAS,cAAe,CACtB,YAAa,OAAO,EAAE,kBAAkB,GAAG,CAAC,GAC5C,gBAAiB,eAAe,CAClC,CAAC;OACD,GAAG;MACL,CAAC,CACH,CAAC;KACH;IAEJ,CAAC;IACD,GAAG;GACL,GAAG,OAAO,CAAC;GACX,MAAM,kDAAkD;GACxD,MAAM,mBAAoB,oBAAoB;IAC5C,GAAG;IACH,SAAS;GACX,GAAG;IACD,SAAS,SAAU,GAAG,OAAO,SAAS,aAAa;KACjD,IAAI,OACF,MAAM,gCAAgC,SAAS,0CAA0C;UAEzF,OAAO,CACL,YAAa,OAAO,EAAE,4BAA4B,GAAG,CAAC,GACtD,gBAAiB,gCAAgC,CACnD;IAEJ,CAAC;IACD,GAAG;GACL,GAAG,OAAO,CAAC;GACX,MAAM,0BAA0B;EAClC;CACA;AAEA,CAAC","names":[],"sources":["../../../../../../../../pages/settings.vue?vue&type=script&setup=true&lang.ts","../../../../../../../../pages/settings.vue"],"sourcesContent":["import { defineComponent as _defineComponent } from 'vue'\nimport { resolveComponent as _resolveComponent, unref as _unref, withCtx as _withCtx, renderList as _renderList, Fragment as _Fragment, openBlock as _openBlock, createBlock as _createBlock, toDisplayString as _toDisplayString, createVNode as _createVNode, isRef as _isRef, createTextVNode as _createTextVNode, mergeProps as _mergeProps } from \"vue\"\nimport { ssrRenderComponent as _ssrRenderComponent, ssrRenderAttr as _ssrRenderAttr, ssrRenderAttrs as _ssrRenderAttrs, ssrInterpolate as _ssrInterpolate, ssrRenderList as _ssrRenderList } from \"vue/server-renderer\"\n\nimport { definePageMeta } from '#imports'\nimport { useClient } from '~/composables/client'\nimport { rpc } from '~/composables/rpc'\nimport { telemetryEnabled } from '~/composables/telemetry'\nimport { useDevToolsOptions } from '../composables/storage-options'\n\n\nexport default /*@__PURE__*/_defineComponent({\n __name: 'settings',\n __ssrInlineRender: true,\n setup(__props) {\n\ndefinePageMeta({\n layout: 'full',\n})\n\nconst {\n showHelpButtons,\n scale,\n} = useDevToolsOptions('ui')\n\nconst {\n openInEditor,\n} = useDevToolsOptions('behavior')\n\nconst client = useClient()\n\nconst editorOptions = [\n ['Auto', undefined],\n ['VS Code', 'vscode'],\n ['VS Code Insider', 'vscode-insider'],\n ['Cursor', 'cursor'],\n ['Zed', 'zed'],\n ['Zed (zeditor)', 'zeditor'],\n ['WebStorm', 'webstorm'],\n ['Sublime Text', 'sublime'],\n ['Atom', 'atom'],\n ['Windsurf', 'windsurf'],\n]\n\nconst scaleOptions = [\n ['Tiny', 12 / 15],\n ['Small', 14 / 15],\n ['Normal', 1],\n ['Large', 16 / 15],\n ['Huge', 18 / 15],\n]\n\nasync function clearOptions() {\n // eslint-disable-next-line no-alert\n if (confirm('Are you sure you to reset all local settings & state? The app will reload.')) {\n Object.keys(localStorage).forEach((key) => {\n if (key.startsWith('nuxt-devtools-'))\n localStorage.removeItem(key)\n })\n await rpc.clearOptions()\n client.value?.app?.reload?.()\n window.location.reload()\n }\n}\n\nreturn (_ctx: any,_push: any,_parent: any,_attrs: any) => {\n const _component_NIconTitle = _resolveComponent(\"NIconTitle\")!\n const _component_NCard = _resolveComponent(\"NCard\")!\n const _component_NSelect = _resolveComponent(\"NSelect\")!\n const _component_NCheckbox = _resolveComponent(\"NCheckbox\")!\n const _component_NLink = _resolveComponent(\"NLink\")!\n const _component_NButton = _resolveComponent(\"NButton\")!\n\n _push(`<div${_ssrRenderAttrs(_mergeProps({\n px8: \"\",\n py6: \"\"\n }, _attrs))}>`)\n _push(_ssrRenderComponent(_component_NIconTitle, {\n class: \"mb-5 text-xl op75\",\n icon: \"i-carbon-settings-adjust\",\n text: \"DevTools Settings\"\n }, null, _parent))\n _push(`<div grid=\"~ lg:cols-2 gap-x-10 gap-y-3\" max-w-300><div flex=\"~ col gap-2\"><h3 text-lg> Appearance </h3>`)\n _push(_ssrRenderComponent(_component_NCard, {\n p4: \"\",\n flex: \"~ col gap-2\"\n }, {\n default: _withCtx((_, _push, _parent, _scopeId) => {\n if (_push) {\n _push(`<p${_scopeId}>UI Scale</p>`)\n _push(_ssrRenderComponent(_component_NSelect, {\n modelValue: _unref(scale),\n \"onUpdate:modelValue\": ($event: any) => (_isRef(scale) ? (scale).value = $event : null),\n n: \"primary\"\n }, {\n default: _withCtx((_, _push, _parent, _scopeId) => {\n if (_push) {\n _push(`<!--[-->`)\n _ssrRenderList(scaleOptions, (i) => {\n _push(`<option${\n _ssrRenderAttr(\"value\", i[1])\n }${\n _scopeId\n }>${\n _ssrInterpolate(i[0])\n }</option>`)\n })\n _push(`<!--]-->`)\n } else {\n return [\n (_openBlock(), _createBlock(_Fragment, null, _renderList(scaleOptions, (i) => {\n return _createVNode(\"option\", {\n key: i[0],\n value: i[1]\n }, _toDisplayString(i[0]), 9, [\"value\"])\n }), 64))\n ]\n }\n }),\n _: 1\n }, _parent, _scopeId))\n } else {\n return [\n _createVNode(\"p\", null, \"UI Scale\"),\n _createVNode(_component_NSelect, {\n modelValue: _unref(scale),\n \"onUpdate:modelValue\": ($event: any) => (_isRef(scale) ? (scale).value = $event : null),\n n: \"primary\"\n }, {\n default: _withCtx(() => [\n (_openBlock(), _createBlock(_Fragment, null, _renderList(scaleOptions, (i) => {\n return _createVNode(\"option\", {\n key: i[0],\n value: i[1]\n }, _toDisplayString(i[0]), 9, [\"value\"])\n }), 64))\n ]),\n _: 1\n }, 8, [\"modelValue\", \"onUpdate:modelValue\"])\n ]\n }\n }),\n _: 1\n }, _parent))\n _push(`<h3 mt2 text-lg> Features </h3>`)\n _push(_ssrRenderComponent(_component_NCard, {\n p4: \"\",\n flex: \"~ col gap-2\"\n }, {\n default: _withCtx((_, _push, _parent, _scopeId) => {\n if (_push) {\n _push(_ssrRenderComponent(_component_NCheckbox, {\n modelValue: _unref(showHelpButtons),\n \"onUpdate:modelValue\": ($event: any) => (_isRef(showHelpButtons) ? (showHelpButtons).value = $event : null),\n \"n-primary\": \"\"\n }, {\n default: _withCtx((_, _push, _parent, _scopeId) => {\n if (_push) {\n _push(`<span${_scopeId}>Show help buttons</span>`)\n } else {\n return [\n _createVNode(\"span\", null, \"Show help buttons\")\n ]\n }\n }),\n _: 1\n }, _parent, _scopeId))\n _push(`<div mx--2 my1 h-1px border=\"b base\" op75${\n _scopeId\n }></div><p${\n _scopeId\n }>Open In Editor</p>`)\n _push(_ssrRenderComponent(_component_NSelect, {\n modelValue: _unref(openInEditor),\n \"onUpdate:modelValue\": ($event: any) => (_isRef(openInEditor) ? (openInEditor).value = $event : null),\n \"n-primary\": \"\"\n }, {\n default: _withCtx((_, _push, _parent, _scopeId) => {\n if (_push) {\n _push(`<!--[-->`)\n _ssrRenderList(editorOptions, (i) => {\n _push(`<option${\n _ssrRenderAttr(\"value\", i[1])\n }${\n _scopeId\n }>${\n _ssrInterpolate(i[0])\n }</option>`)\n })\n _push(`<!--]-->`)\n } else {\n return [\n (_openBlock(), _createBlock(_Fragment, null, _renderList(editorOptions, (i) => {\n return _createVNode(\"option\", {\n key: i[0],\n value: i[1]\n }, _toDisplayString(i[0]), 9, [\"value\"])\n }), 64))\n ]\n }\n }),\n _: 1\n }, _parent, _scopeId))\n } else {\n return [\n _createVNode(_component_NCheckbox, {\n modelValue: _unref(showHelpButtons),\n \"onUpdate:modelValue\": ($event: any) => (_isRef(showHelpButtons) ? (showHelpButtons).value = $event : null),\n \"n-primary\": \"\"\n }, {\n default: _withCtx(() => [\n _createVNode(\"span\", null, \"Show help buttons\")\n ]),\n _: 1\n }, 8, [\"modelValue\", \"onUpdate:modelValue\"]),\n _createVNode(\"div\", {\n \"mx--2\": \"\",\n my1: \"\",\n \"h-1px\": \"\",\n border: \"b base\",\n op75: \"\"\n }),\n _createVNode(\"p\", null, \"Open In Editor\"),\n _createVNode(_component_NSelect, {\n modelValue: _unref(openInEditor),\n \"onUpdate:modelValue\": ($event: any) => (_isRef(openInEditor) ? (openInEditor).value = $event : null),\n \"n-primary\": \"\"\n }, {\n default: _withCtx(() => [\n (_openBlock(), _createBlock(_Fragment, null, _renderList(editorOptions, (i) => {\n return _createVNode(\"option\", {\n key: i[0],\n value: i[1]\n }, _toDisplayString(i[0]), 9, [\"value\"])\n }), 64))\n ]),\n _: 1\n }, 8, [\"modelValue\", \"onUpdate:modelValue\"])\n ]\n }\n }),\n _: 1\n }, _parent))\n _push(`<h3 mt2 text-lg> Feedback </h3>`)\n _push(_ssrRenderComponent(_component_NCard, {\n p4: \"\",\n flex: \"~ col gap-2\"\n }, {\n default: _withCtx((_, _push, _parent, _scopeId) => {\n if (_push) {\n _push(_ssrRenderComponent(_component_NCheckbox, {\n modelValue: _unref(telemetryEnabled),\n \"onUpdate:modelValue\": ($event: any) => (_isRef(telemetryEnabled) ? (telemetryEnabled).value = $event : null),\n \"n-primary\": \"\"\n }, {\n default: _withCtx((_, _push, _parent, _scopeId) => {\n if (_push) {\n _push(`<span${_scopeId}>Send anonymous statistics, help us improving DevTools</span>`)\n _push(_ssrRenderComponent(_component_NLink, {\n href: \"https://github.com/nuxt/devtools#anonymous-usage-analytics\",\n target: \"_blank\",\n ml1: \"\",\n op50: \"\"\n }, null, _parent, _scopeId))\n } else {\n return [\n _createVNode(\"span\", null, \"Send anonymous statistics, help us improving DevTools\"),\n _createVNode(_component_NLink, {\n href: \"https://github.com/nuxt/devtools#anonymous-usage-analytics\",\n target: \"_blank\",\n ml1: \"\",\n op50: \"\",\n textContent: 'Learn more'\n })\n ]\n }\n }),\n _: 1\n }, _parent, _scopeId))\n _push(`<div mx--2 my1 h-1px border=\"b base\" op75${\n _scopeId\n }></div><div flex=\"~ gap-2\"${\n _scopeId\n }>`)\n _push(_ssrRenderComponent(_component_NButton, {\n n: \"blue\",\n to: \"https://github.com/nuxt/devtools/discussions/29\",\n target: \"_blank\"\n }, {\n default: _withCtx((_, _push, _parent, _scopeId) => {\n if (_push) {\n _push(`<div i-carbon-data-enrichment${_scopeId}></div> Ideas & Suggestions `)\n } else {\n return [\n _createVNode(\"div\", { \"i-carbon-data-enrichment\": \"\" }),\n _createTextVNode(\" Ideas & Suggestions \")\n ]\n }\n }),\n _: 1\n }, _parent, _scopeId))\n _push(_ssrRenderComponent(_component_NButton, {\n n: \"orange\",\n to: \"https://github.com/nuxt/devtools/issues\",\n target: \"_blank\"\n }, {\n default: _withCtx((_, _push, _parent, _scopeId) => {\n if (_push) {\n _push(`<div i-carbon-debug${_scopeId}></div> Bug Reports `)\n } else {\n return [\n _createVNode(\"div\", { \"i-carbon-debug\": \"\" }),\n _createTextVNode(\" Bug Reports \")\n ]\n }\n }),\n _: 1\n }, _parent, _scopeId))\n _push(`</div>`)\n } else {\n return [\n _createVNode(_component_NCheckbox, {\n modelValue: _unref(telemetryEnabled),\n \"onUpdate:modelValue\": ($event: any) => (_isRef(telemetryEnabled) ? (telemetryEnabled).value = $event : null),\n \"n-primary\": \"\"\n }, {\n default: _withCtx(() => [\n _createVNode(\"span\", null, \"Send anonymous statistics, help us improving DevTools\"),\n _createVNode(_component_NLink, {\n href: \"https://github.com/nuxt/devtools#anonymous-usage-analytics\",\n target: \"_blank\",\n ml1: \"\",\n op50: \"\",\n textContent: 'Learn more'\n })\n ]),\n _: 1\n }, 8, [\"modelValue\", \"onUpdate:modelValue\"]),\n _createVNode(\"div\", {\n \"mx--2\": \"\",\n my1: \"\",\n \"h-1px\": \"\",\n border: \"b base\",\n op75: \"\"\n }),\n _createVNode(\"div\", { flex: \"~ gap-2\" }, [\n _createVNode(_component_NButton, {\n n: \"blue\",\n to: \"https://github.com/nuxt/devtools/discussions/29\",\n target: \"_blank\"\n }, {\n default: _withCtx(() => [\n _createVNode(\"div\", { \"i-carbon-data-enrichment\": \"\" }),\n _createTextVNode(\" Ideas & Suggestions \")\n ]),\n _: 1\n }),\n _createVNode(_component_NButton, {\n n: \"orange\",\n to: \"https://github.com/nuxt/devtools/issues\",\n target: \"_blank\"\n }, {\n default: _withCtx(() => [\n _createVNode(\"div\", { \"i-carbon-debug\": \"\" }),\n _createTextVNode(\" Bug Reports \")\n ]),\n _: 1\n })\n ])\n ]\n }\n }),\n _: 1\n }, _parent))\n _push(`<h3 mt2 text-lg> Debug </h3><div flex=\"~ gap-2\">`)\n _push(_ssrRenderComponent(_component_NButton, {\n n: \"orange\",\n onClick: clearOptions\n }, {\n default: _withCtx((_, _push, _parent, _scopeId) => {\n if (_push) {\n _push(`<div i-carbon-breaking-change${_scopeId}></div> Reset Local Settings & State `)\n } else {\n return [\n _createVNode(\"div\", { \"i-carbon-breaking-change\": \"\" }),\n _createTextVNode(\" Reset Local Settings & State \")\n ]\n }\n }),\n _: 1\n }, _parent))\n _push(`</div></div></div></div>`)\n}\n}\n\n})","<script setup lang=\"ts\">\nimport { definePageMeta } from '#imports'\nimport { useClient } from '~/composables/client'\nimport { rpc } from '~/composables/rpc'\nimport { telemetryEnabled } from '~/composables/telemetry'\nimport { useDevToolsOptions } from '../composables/storage-options'\n\ndefinePageMeta({\n layout: 'full',\n})\n\nconst {\n showHelpButtons,\n scale,\n} = useDevToolsOptions('ui')\n\nconst {\n openInEditor,\n} = useDevToolsOptions('behavior')\n\nconst client = useClient()\n\nconst editorOptions = [\n ['Auto', undefined],\n ['VS Code', 'vscode'],\n ['VS Code Insider', 'vscode-insider'],\n ['Cursor', 'cursor'],\n ['Zed', 'zed'],\n ['Zed (zeditor)', 'zeditor'],\n ['WebStorm', 'webstorm'],\n ['Sublime Text', 'sublime'],\n ['Atom', 'atom'],\n ['Windsurf', 'windsurf'],\n]\n\nconst scaleOptions = [\n ['Tiny', 12 / 15],\n ['Small', 14 / 15],\n ['Normal', 1],\n ['Large', 16 / 15],\n ['Huge', 18 / 15],\n]\n\nasync function clearOptions() {\n // eslint-disable-next-line no-alert\n if (confirm('Are you sure you to reset all local settings & state? The app will reload.')) {\n Object.keys(localStorage).forEach((key) => {\n if (key.startsWith('nuxt-devtools-'))\n localStorage.removeItem(key)\n })\n await rpc.clearOptions()\n client.value?.app?.reload?.()\n window.location.reload()\n }\n}\n</script>\n\n<template>\n <div px8 py6>\n <NIconTitle\n class=\"mb-5 text-xl op75\"\n icon=\"i-carbon-settings-adjust\"\n text=\"DevTools Settings\"\n />\n <div grid=\"~ lg:cols-2 gap-x-10 gap-y-3\" max-w-300>\n <div flex=\"~ col gap-2\">\n <h3 text-lg>\n Appearance\n </h3>\n <NCard p4 flex=\"~ col gap-2\">\n <p>UI Scale</p>\n <NSelect v-model=\"scale\" n=\"primary\">\n <option v-for=\"i of scaleOptions\" :key=\"i[0]\" :value=\"i[1]\">\n {{ i[0] }}\n </option>\n </NSelect>\n </NCard>\n\n <h3 mt2 text-lg>\n Features\n </h3>\n <NCard p4 flex=\"~ col gap-2\">\n <NCheckbox v-model=\"showHelpButtons\" n-primary>\n <span>Show help buttons</span>\n </NCheckbox>\n\n <div mx--2 my1 h-1px border=\"b base\" op75 />\n\n <p>Open In Editor</p>\n <NSelect v-model=\"openInEditor\" n-primary>\n <option v-for=\"i of editorOptions\" :key=\"i[0]\" :value=\"i[1]\">\n {{ i[0] }}\n </option>\n </NSelect>\n </NCard>\n\n <h3 mt2 text-lg>\n Feedback\n </h3>\n <NCard p4 flex=\"~ col gap-2\">\n <NCheckbox v-model=\"telemetryEnabled\" n-primary>\n <span>Send anonymous statistics, help us improving DevTools</span>\n <NLink href=\"https://github.com/nuxt/devtools#anonymous-usage-analytics\" target=\"_blank\" ml1 op50 v-text=\"'Learn more'\" />\n </NCheckbox>\n\n <div mx--2 my1 h-1px border=\"b base\" op75 />\n\n <div flex=\"~ gap-2\">\n <NButton n=\"blue\" to=\"https://github.com/nuxt/devtools/discussions/29\" target=\"_blank\">\n <div i-carbon-data-enrichment />\n Ideas & Suggestions\n </NButton>\n <NButton n=\"orange\" to=\"https://github.com/nuxt/devtools/issues\" target=\"_blank\">\n <div i-carbon-debug />\n Bug Reports\n </NButton>\n </div>\n </NCard>\n\n <h3 mt2 text-lg>\n Debug\n </h3>\n <div flex=\"~ gap-2\">\n <NButton n=\"orange\" @click=\"clearOptions\">\n <div i-carbon-breaking-change />\n Reset Local Settings & State\n </NButton>\n </div>\n </div>\n </div>\n </div>\n</template>\n"],"version":3}
|
|
1
|
+
{"file":"settings-ClAb5Ncw.js","mappings":"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","names":[],"sources":["../../../../../../../../pages/settings.vue?vue&type=script&setup=true&lang.ts","../../../../../../../../pages/settings.vue"],"sourcesContent":["import { defineComponent as _defineComponent } from 'vue'\nimport { resolveComponent as _resolveComponent, unref as _unref, withCtx as _withCtx, renderList as _renderList, Fragment as _Fragment, openBlock as _openBlock, createBlock as _createBlock, toDisplayString as _toDisplayString, createVNode as _createVNode, isRef as _isRef, createTextVNode as _createTextVNode, mergeProps as _mergeProps } from \"vue\"\nimport { ssrRenderComponent as _ssrRenderComponent, ssrRenderAttr as _ssrRenderAttr, ssrRenderAttrs as _ssrRenderAttrs, ssrInterpolate as _ssrInterpolate, ssrRenderList as _ssrRenderList } from \"vue/server-renderer\"\n\nimport { definePageMeta } from '#imports'\nimport { useClient } from '~/composables/client'\nimport { rpc } from '~/composables/rpc'\nimport { telemetryEnabled } from '~/composables/telemetry'\nimport { useDevToolsOptions } from '../composables/storage-options'\n\n\nexport default /*@__PURE__*/_defineComponent({\n __name: 'settings',\n __ssrInlineRender: true,\n setup(__props) {\n\ndefinePageMeta({\n layout: 'full',\n})\n\nconst {\n showHelpButtons,\n scale,\n} = useDevToolsOptions('ui')\n\nconst {\n openInEditor,\n} = useDevToolsOptions('behavior')\n\nconst client = useClient()\n\nconst editorOptions = [\n ['Auto', undefined],\n ['VS Code', 'vscode'],\n ['VS Code Insider', 'vscode-insider'],\n ['Cursor', 'cursor'],\n ['Zed', 'zed'],\n ['Zed (zeditor)', 'zeditor'],\n ['WebStorm', 'webstorm'],\n ['Sublime Text', 'sublime'],\n ['Atom', 'atom'],\n ['Windsurf', 'windsurf'],\n]\n\nconst scaleOptions = [\n ['Tiny', 12 / 15],\n ['Small', 14 / 15],\n ['Normal', 1],\n ['Large', 16 / 15],\n ['Huge', 18 / 15],\n]\n\nasync function clearOptions() {\n // eslint-disable-next-line no-alert\n if (confirm('Are you sure you to reset all local settings & state? The app will reload.')) {\n Object.keys(localStorage).forEach((key) => {\n if (key.startsWith('nuxt-devtools-'))\n localStorage.removeItem(key)\n })\n await rpc.clearOptions()\n client.value?.app?.reload?.()\n window.location.reload()\n }\n}\n\nreturn (_ctx: any,_push: any,_parent: any,_attrs: any) => {\n const _component_NIconTitle = _resolveComponent(\"NIconTitle\")!\n const _component_NCard = _resolveComponent(\"NCard\")!\n const _component_NSelect = _resolveComponent(\"NSelect\")!\n const _component_NCheckbox = _resolveComponent(\"NCheckbox\")!\n const _component_NLink = _resolveComponent(\"NLink\")!\n const _component_NButton = _resolveComponent(\"NButton\")!\n\n _push(`<div${_ssrRenderAttrs(_mergeProps({\n px8: \"\",\n py6: \"\"\n }, _attrs))}>`)\n _push(_ssrRenderComponent(_component_NIconTitle, {\n class: \"mb-5 text-xl op75\",\n icon: \"i-carbon-settings-adjust\",\n text: \"DevTools Settings\"\n }, null, _parent))\n _push(`<div grid=\"~ lg:cols-2 gap-x-10 gap-y-3\" max-w-300><div flex=\"~ col gap-2\"><h3 text-lg> Appearance </h3>`)\n _push(_ssrRenderComponent(_component_NCard, {\n p4: \"\",\n flex: \"~ col gap-2\"\n }, {\n default: _withCtx((_, _push, _parent, _scopeId) => {\n if (_push) {\n _push(`<p${_scopeId}>UI Scale</p>`)\n _push(_ssrRenderComponent(_component_NSelect, {\n modelValue: _unref(scale),\n \"onUpdate:modelValue\": ($event: any) => (_isRef(scale) ? (scale).value = $event : null),\n n: \"primary\"\n }, {\n default: _withCtx((_, _push, _parent, _scopeId) => {\n if (_push) {\n _push(`<!--[-->`)\n _ssrRenderList(scaleOptions, (i) => {\n _push(`<option${\n _ssrRenderAttr(\"value\", i[1])\n }${\n _scopeId\n }>${\n _ssrInterpolate(i[0])\n }</option>`)\n })\n _push(`<!--]-->`)\n } else {\n return [\n (_openBlock(), _createBlock(_Fragment, null, _renderList(scaleOptions, (i) => {\n return _createVNode(\"option\", {\n key: i[0],\n value: i[1]\n }, _toDisplayString(i[0]), 9, [\"value\"])\n }), 64))\n ]\n }\n }),\n _: 1\n }, _parent, _scopeId))\n } else {\n return [\n _createVNode(\"p\", null, \"UI Scale\"),\n _createVNode(_component_NSelect, {\n modelValue: _unref(scale),\n \"onUpdate:modelValue\": ($event: any) => (_isRef(scale) ? (scale).value = $event : null),\n n: \"primary\"\n }, {\n default: _withCtx(() => [\n (_openBlock(), _createBlock(_Fragment, null, _renderList(scaleOptions, (i) => {\n return _createVNode(\"option\", {\n key: i[0],\n value: i[1]\n }, _toDisplayString(i[0]), 9, [\"value\"])\n }), 64))\n ]),\n _: 1\n }, 8, [\"modelValue\", \"onUpdate:modelValue\"])\n ]\n }\n }),\n _: 1\n }, _parent))\n _push(`<h3 mt2 text-lg> Features </h3>`)\n _push(_ssrRenderComponent(_component_NCard, {\n p4: \"\",\n flex: \"~ col gap-2\"\n }, {\n default: _withCtx((_, _push, _parent, _scopeId) => {\n if (_push) {\n _push(_ssrRenderComponent(_component_NCheckbox, {\n modelValue: _unref(showHelpButtons),\n \"onUpdate:modelValue\": ($event: any) => (_isRef(showHelpButtons) ? (showHelpButtons).value = $event : null),\n \"n-primary\": \"\"\n }, {\n default: _withCtx((_, _push, _parent, _scopeId) => {\n if (_push) {\n _push(`<span${_scopeId}>Show help buttons</span>`)\n } else {\n return [\n _createVNode(\"span\", null, \"Show help buttons\")\n ]\n }\n }),\n _: 1\n }, _parent, _scopeId))\n _push(`<div mx--2 my1 h-1px border=\"b base\" op75${\n _scopeId\n }></div><p${\n _scopeId\n }>Open In Editor</p>`)\n _push(_ssrRenderComponent(_component_NSelect, {\n modelValue: _unref(openInEditor),\n \"onUpdate:modelValue\": ($event: any) => (_isRef(openInEditor) ? (openInEditor).value = $event : null),\n \"n-primary\": \"\"\n }, {\n default: _withCtx((_, _push, _parent, _scopeId) => {\n if (_push) {\n _push(`<!--[-->`)\n _ssrRenderList(editorOptions, (i) => {\n _push(`<option${\n _ssrRenderAttr(\"value\", i[1])\n }${\n _scopeId\n }>${\n _ssrInterpolate(i[0])\n }</option>`)\n })\n _push(`<!--]-->`)\n } else {\n return [\n (_openBlock(), _createBlock(_Fragment, null, _renderList(editorOptions, (i) => {\n return _createVNode(\"option\", {\n key: i[0],\n value: i[1]\n }, _toDisplayString(i[0]), 9, [\"value\"])\n }), 64))\n ]\n }\n }),\n _: 1\n }, _parent, _scopeId))\n } else {\n return [\n _createVNode(_component_NCheckbox, {\n modelValue: _unref(showHelpButtons),\n \"onUpdate:modelValue\": ($event: any) => (_isRef(showHelpButtons) ? (showHelpButtons).value = $event : null),\n \"n-primary\": \"\"\n }, {\n default: _withCtx(() => [\n _createVNode(\"span\", null, \"Show help buttons\")\n ]),\n _: 1\n }, 8, [\"modelValue\", \"onUpdate:modelValue\"]),\n _createVNode(\"div\", {\n \"mx--2\": \"\",\n my1: \"\",\n \"h-1px\": \"\",\n border: \"b base\",\n op75: \"\"\n }),\n _createVNode(\"p\", null, \"Open In Editor\"),\n _createVNode(_component_NSelect, {\n modelValue: _unref(openInEditor),\n \"onUpdate:modelValue\": ($event: any) => (_isRef(openInEditor) ? (openInEditor).value = $event : null),\n \"n-primary\": \"\"\n }, {\n default: _withCtx(() => [\n (_openBlock(), _createBlock(_Fragment, null, _renderList(editorOptions, (i) => {\n return _createVNode(\"option\", {\n key: i[0],\n value: i[1]\n }, _toDisplayString(i[0]), 9, [\"value\"])\n }), 64))\n ]),\n _: 1\n }, 8, [\"modelValue\", \"onUpdate:modelValue\"])\n ]\n }\n }),\n _: 1\n }, _parent))\n _push(`<h3 mt2 text-lg> Feedback </h3>`)\n _push(_ssrRenderComponent(_component_NCard, {\n p4: \"\",\n flex: \"~ col gap-2\"\n }, {\n default: _withCtx((_, _push, _parent, _scopeId) => {\n if (_push) {\n _push(_ssrRenderComponent(_component_NCheckbox, {\n modelValue: _unref(telemetryEnabled),\n \"onUpdate:modelValue\": ($event: any) => (_isRef(telemetryEnabled) ? (telemetryEnabled).value = $event : null),\n \"n-primary\": \"\"\n }, {\n default: _withCtx((_, _push, _parent, _scopeId) => {\n if (_push) {\n _push(`<span${_scopeId}>Send anonymous statistics, help us improving DevTools</span>`)\n _push(_ssrRenderComponent(_component_NLink, {\n href: \"https://github.com/nuxt/devtools#anonymous-usage-analytics\",\n target: \"_blank\",\n ml1: \"\",\n op50: \"\"\n }, null, _parent, _scopeId))\n } else {\n return [\n _createVNode(\"span\", null, \"Send anonymous statistics, help us improving DevTools\"),\n _createVNode(_component_NLink, {\n href: \"https://github.com/nuxt/devtools#anonymous-usage-analytics\",\n target: \"_blank\",\n ml1: \"\",\n op50: \"\",\n textContent: 'Learn more'\n })\n ]\n }\n }),\n _: 1\n }, _parent, _scopeId))\n _push(`<div mx--2 my1 h-1px border=\"b base\" op75${\n _scopeId\n }></div><div flex=\"~ gap-2\"${\n _scopeId\n }>`)\n _push(_ssrRenderComponent(_component_NButton, {\n n: \"blue\",\n to: \"https://github.com/nuxt/devtools/discussions/29\",\n target: \"_blank\"\n }, {\n default: _withCtx((_, _push, _parent, _scopeId) => {\n if (_push) {\n _push(`<div i-carbon-data-enrichment${_scopeId}></div> Ideas & Suggestions `)\n } else {\n return [\n _createVNode(\"div\", { \"i-carbon-data-enrichment\": \"\" }),\n _createTextVNode(\" Ideas & Suggestions \")\n ]\n }\n }),\n _: 1\n }, _parent, _scopeId))\n _push(_ssrRenderComponent(_component_NButton, {\n n: \"orange\",\n to: \"https://github.com/nuxt/devtools/issues\",\n target: \"_blank\"\n }, {\n default: _withCtx((_, _push, _parent, _scopeId) => {\n if (_push) {\n _push(`<div i-carbon-debug${_scopeId}></div> Bug Reports `)\n } else {\n return [\n _createVNode(\"div\", { \"i-carbon-debug\": \"\" }),\n _createTextVNode(\" Bug Reports \")\n ]\n }\n }),\n _: 1\n }, _parent, _scopeId))\n _push(`</div>`)\n } else {\n return [\n _createVNode(_component_NCheckbox, {\n modelValue: _unref(telemetryEnabled),\n \"onUpdate:modelValue\": ($event: any) => (_isRef(telemetryEnabled) ? (telemetryEnabled).value = $event : null),\n \"n-primary\": \"\"\n }, {\n default: _withCtx(() => [\n _createVNode(\"span\", null, \"Send anonymous statistics, help us improving DevTools\"),\n _createVNode(_component_NLink, {\n href: \"https://github.com/nuxt/devtools#anonymous-usage-analytics\",\n target: \"_blank\",\n ml1: \"\",\n op50: \"\",\n textContent: 'Learn more'\n })\n ]),\n _: 1\n }, 8, [\"modelValue\", \"onUpdate:modelValue\"]),\n _createVNode(\"div\", {\n \"mx--2\": \"\",\n my1: \"\",\n \"h-1px\": \"\",\n border: \"b base\",\n op75: \"\"\n }),\n _createVNode(\"div\", { flex: \"~ gap-2\" }, [\n _createVNode(_component_NButton, {\n n: \"blue\",\n to: \"https://github.com/nuxt/devtools/discussions/29\",\n target: \"_blank\"\n }, {\n default: _withCtx(() => [\n _createVNode(\"div\", { \"i-carbon-data-enrichment\": \"\" }),\n _createTextVNode(\" Ideas & Suggestions \")\n ]),\n _: 1\n }),\n _createVNode(_component_NButton, {\n n: \"orange\",\n to: \"https://github.com/nuxt/devtools/issues\",\n target: \"_blank\"\n }, {\n default: _withCtx(() => [\n _createVNode(\"div\", { \"i-carbon-debug\": \"\" }),\n _createTextVNode(\" Bug Reports \")\n ]),\n _: 1\n })\n ])\n ]\n }\n }),\n _: 1\n }, _parent))\n _push(`<h3 mt2 text-lg> Debug </h3><div flex=\"~ gap-2\">`)\n _push(_ssrRenderComponent(_component_NButton, {\n n: \"orange\",\n onClick: clearOptions\n }, {\n default: _withCtx((_, _push, _parent, _scopeId) => {\n if (_push) {\n _push(`<div i-carbon-breaking-change${_scopeId}></div> Reset Local Settings & State `)\n } else {\n return [\n _createVNode(\"div\", { \"i-carbon-breaking-change\": \"\" }),\n _createTextVNode(\" Reset Local Settings & State \")\n ]\n }\n }),\n _: 1\n }, _parent))\n _push(`</div></div></div></div>`)\n}\n}\n\n})","<script setup lang=\"ts\">\nimport { definePageMeta } from '#imports'\nimport { useClient } from '~/composables/client'\nimport { rpc } from '~/composables/rpc'\nimport { telemetryEnabled } from '~/composables/telemetry'\nimport { useDevToolsOptions } from '../composables/storage-options'\n\ndefinePageMeta({\n layout: 'full',\n})\n\nconst {\n showHelpButtons,\n scale,\n} = useDevToolsOptions('ui')\n\nconst {\n openInEditor,\n} = useDevToolsOptions('behavior')\n\nconst client = useClient()\n\nconst editorOptions = [\n ['Auto', undefined],\n ['VS Code', 'vscode'],\n ['VS Code Insider', 'vscode-insider'],\n ['Cursor', 'cursor'],\n ['Zed', 'zed'],\n ['Zed (zeditor)', 'zeditor'],\n ['WebStorm', 'webstorm'],\n ['Sublime Text', 'sublime'],\n ['Atom', 'atom'],\n ['Windsurf', 'windsurf'],\n]\n\nconst scaleOptions = [\n ['Tiny', 12 / 15],\n ['Small', 14 / 15],\n ['Normal', 1],\n ['Large', 16 / 15],\n ['Huge', 18 / 15],\n]\n\nasync function clearOptions() {\n // eslint-disable-next-line no-alert\n if (confirm('Are you sure you to reset all local settings & state? The app will reload.')) {\n Object.keys(localStorage).forEach((key) => {\n if (key.startsWith('nuxt-devtools-'))\n localStorage.removeItem(key)\n })\n await rpc.clearOptions()\n client.value?.app?.reload?.()\n window.location.reload()\n }\n}\n</script>\n\n<template>\n <div px8 py6>\n <NIconTitle\n class=\"mb-5 text-xl op75\"\n icon=\"i-carbon-settings-adjust\"\n text=\"DevTools Settings\"\n />\n <div grid=\"~ lg:cols-2 gap-x-10 gap-y-3\" max-w-300>\n <div flex=\"~ col gap-2\">\n <h3 text-lg>\n Appearance\n </h3>\n <NCard p4 flex=\"~ col gap-2\">\n <p>UI Scale</p>\n <NSelect v-model=\"scale\" n=\"primary\">\n <option v-for=\"i of scaleOptions\" :key=\"i[0]\" :value=\"i[1]\">\n {{ i[0] }}\n </option>\n </NSelect>\n </NCard>\n\n <h3 mt2 text-lg>\n Features\n </h3>\n <NCard p4 flex=\"~ col gap-2\">\n <NCheckbox v-model=\"showHelpButtons\" n-primary>\n <span>Show help buttons</span>\n </NCheckbox>\n\n <div mx--2 my1 h-1px border=\"b base\" op75 />\n\n <p>Open In Editor</p>\n <NSelect v-model=\"openInEditor\" n-primary>\n <option v-for=\"i of editorOptions\" :key=\"i[0]\" :value=\"i[1]\">\n {{ i[0] }}\n </option>\n </NSelect>\n </NCard>\n\n <h3 mt2 text-lg>\n Feedback\n </h3>\n <NCard p4 flex=\"~ col gap-2\">\n <NCheckbox v-model=\"telemetryEnabled\" n-primary>\n <span>Send anonymous statistics, help us improving DevTools</span>\n <NLink href=\"https://github.com/nuxt/devtools#anonymous-usage-analytics\" target=\"_blank\" ml1 op50 v-text=\"'Learn more'\" />\n </NCheckbox>\n\n <div mx--2 my1 h-1px border=\"b base\" op75 />\n\n <div flex=\"~ gap-2\">\n <NButton n=\"blue\" to=\"https://github.com/nuxt/devtools/discussions/29\" target=\"_blank\">\n <div i-carbon-data-enrichment />\n Ideas & Suggestions\n </NButton>\n <NButton n=\"orange\" to=\"https://github.com/nuxt/devtools/issues\" target=\"_blank\">\n <div i-carbon-debug />\n Bug Reports\n </NButton>\n </div>\n </NCard>\n\n <h3 mt2 text-lg>\n Debug\n </h3>\n <div flex=\"~ gap-2\">\n <NButton n=\"orange\" @click=\"clearOptions\">\n <div i-carbon-breaking-change />\n Reset Local Settings & State\n </NButton>\n </div>\n </div>\n </div>\n </div>\n</template>\n"],"version":3}
|
package/dist/_nuxt/{state-components-CksF081b.js.map.json → state-components-CUy4qfKa.js.map.json}
RENAMED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"file":"state-components-
|
|
1
|
+
{"file":"state-components-CUy4qfKa.js","mappings":";;;;AAMA,IAAM,oBAAoB;AAE1B,SAAgB,gBAAgB;CAC9B,MAAM,SAAS,UAAU;CACzB,MAAM,mBAAmB,cAAc,uBAAuB,IAAI,cAAc,CAAC;CAEjF,MAAM,mBAAmB,eACvB,OACG,QAAQ,OAAO,OAAO,MAAM,OAAO,SAAS,cAAc,CAAC,CAAC,CAAC,CAC7D,KAAK,CAAC,UAAU;EACf,YAAY;EACZ,QAAQ;CACV,EAA0B,CAAC,CAE1B,QAAO,MAAK,CAAC,kBAAkB,KAAK,EAAE,UAAU,CAAC,CAAC,CAElD,QAAO,MAAK,CAAC,iBAAiB,SAAS,CAAC,CAAC,CAAC,MAAM,MAAW,EAAE,eAAe,EAAE,UAAU,CAAC,CAAC;CAE/F,OAAO,eAAe,CACpB,GAAG,iBAAiB,OACpB,GAAG,iBAAiB,SAAS,CAAC,CAChC,CAAC,CAAC,MAAM,GAAQ,MAAW,EAAE,WAAW,cAAc,EAAE,UAAU,CAAC,CAAC;AACtE;AAEA,SAAgB,6BAA6B;CAC3C,OAAO,cAAc,oCAAoC,IAAI,2BAA2B,CAAC;AAC3F","names":[],"sources":["../../../../../../../../composables/state-components.ts"],"sourcesContent":["import type { Component } from 'nuxt/schema'\nimport { computed } from 'vue'\nimport { useClient } from './client'\nimport { rpc } from './rpc'\nimport { useAsyncState } from './utils'\n\nconst LAZY_COMPONENT_RE = /^Lazy[A-Z]/\n\nexport function useComponents() {\n const client = useClient()\n const serverComponents = useAsyncState('getComponents', () => rpc.getComponents())\n\n const globalComponents = computed(() =>\n Object\n .entries(client.value?.nuxt?.vueApp._context.components || {})\n .map(([key]) => ({\n pascalName: key,\n global: true,\n } as unknown as Component))\n // filter out lazy components\n .filter(i => !LAZY_COMPONENT_RE.test(i.pascalName))\n // dedupe server components\n .filter(i => !serverComponents.value || [].some((s: any) => s.pascalName === i.pascalName)))\n\n return computed(() => [\n ...globalComponents.value,\n ...serverComponents.value || [],\n ].sort((a: any, b: any) => a.pascalName.localeCompare(b.pascalName)))\n}\n\nexport function useComponentsRelationships() {\n return useAsyncState('getComponentsRelationships', () => rpc.getComponentsRelationships())\n}\n"],"version":3}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"file":"state-modules-BiTBg3sT.js","mappings":"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","names":[],"sources":["../../../../../../../../components/NpmVersionCheck.vue?vue&type=script&setup=true&lang.ts","../../../../../../../../components/NpmVersionCheck.vue","../../../../../../../../composables/state-modules.ts"],"sourcesContent":["import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, resolveComponent as _resolveComponent, withCtx as _withCtx, createTextVNode as _createTextVNode, toDisplayString as _toDisplayString, createVNode as _createVNode } from \"vue\"\nimport { ssrRenderSlot as _ssrRenderSlot, ssrRenderComponent as _ssrRenderComponent, ssrInterpolate as _ssrInterpolate } from \"vue/server-renderer\"\n\nimport type { NpmCommandOptions } from '../../src/types'\nimport { createTemplatePromise } from '@vueuse/core'\nimport { ref } from 'vue'\nimport { useRestartDialogs } from '~/composables/dialog'\nimport { usePackageUpdate } from '~/composables/npm'\nimport { rpc } from '~/composables/rpc'\nimport { telemetry } from '~/composables/telemetry'\n\n\nexport default /*@__PURE__*/_defineComponent({\n __name: 'NpmVersionCheck',\n __ssrInlineRender: true,\n props: {\n packageName: {},\n options: {},\n showVersion: { type: Boolean, default: true }\n },\n setup(__props: any) {\n\nconst props = __props\n\nconst {\n info,\n update,\n state,\n processId,\n restart,\n} = usePackageUpdate(props.packageName, props.options)\n\nconst shouldRevealTerminal = ref(true)\nconst shouldRestartServer = ref(true)\nconst restartDialogs = useRestartDialogs()\n\nconst PromiseConfirm = createTemplatePromise<boolean, [string]>()\n\nasync function updateWithConfirm() {\n const processId = await update(async (command) => {\n return PromiseConfirm.start(command)\n })\n\n telemetry('npm:update', {\n packageName: props.packageName,\n oldVersion: info.value?.current,\n })\n\n if (processId && shouldRestartServer.value) {\n restartDialogs.value.push({\n id: processId,\n message: `${props.packageName} has been updated. Do you want to restart the Nuxt server now?`,\n })\n }\n if (processId && shouldRevealTerminal.value)\n rpc.revealTerminal(processId)\n}\n\nreturn (_ctx: any,_push: any,_parent: any,_attrs: any) => {\n const _component_NBadge = _resolveComponent(\"NBadge\")!\n const _component_NDialog = _resolveComponent(\"NDialog\")!\n const _component_NCodeBlock = _resolveComponent(\"NCodeBlock\")!\n const _component_NCheckbox = _resolveComponent(\"NCheckbox\")!\n const _component_NTip = _resolveComponent(\"NTip\")!\n const _component_NButton = _resolveComponent(\"NButton\")!\n\n _push(`<!--[-->`)\n _ssrRenderSlot(_ctx.$slots, \"default\", {\n id: _unref(processId),\n info: _unref(info),\n update: updateWithConfirm,\n state: _unref(state),\n restart: _unref(restart)\n }, () => {\n if (_unref(info) && __props.showVersion) {\n _push(`<code>${_ssrInterpolate(`v${_unref(info).current}`)}</code>`)\n } else {\n _push(`<!---->`)\n }\n if (_unref(info)?.latest) {\n _push(`<!--[-->`)\n if (_unref(info).needsUpdate) {\n _push(`<button>`)\n _push(_ssrRenderComponent(_component_NBadge, {\n n: \"green\",\n title: \"updates available\"\n }, null, _parent))\n _push(`</button>`)\n } else {\n _push(_ssrRenderComponent(_component_NBadge, {\n n: \"gray\",\n title: \"latest\"\n }, null, _parent))\n }\n _push(`<!--]-->`)\n } else {\n _push(`<!---->`)\n }\n }, _push, _parent)\n _push(_ssrRenderComponent(_unref(PromiseConfirm), null, {\n default: _withCtx(({ resolve, args }, _push, _parent, _scopeId) => {\n if (_push) {\n _push(_ssrRenderComponent(_component_NDialog, {\n \"model-value\": true,\n onClose: ($event: any) => (resolve(false))\n }, {\n default: _withCtx((_, _push, _parent, _scopeId) => {\n if (_push) {\n _push(`<div p4 flex=\"~ col gap-1\"${\n _scopeId\n }><h3 class=\"text-lg font-medium leading-6\"${\n _scopeId\n }> Update ${\n _ssrInterpolate(props.packageName)\n }? </h3><p op50${\n _scopeId\n }> The following command will be executed in your terminal: </p>`)\n _push(_ssrRenderComponent(_component_NCodeBlock, {\n code: args[0],\n lang: \"bash\",\n my3: \"\",\n px4: \"\",\n py2: \"\",\n border: \"~ base rounded\",\n lines: false\n }, null, _parent, _scopeId))\n _push(_ssrRenderComponent(_component_NCheckbox, {\n modelValue: shouldRevealTerminal.value,\n \"onUpdate:modelValue\": ($event: any) => ((shouldRevealTerminal).value = $event),\n n: \"primary\"\n }, {\n default: _withCtx((_, _push, _parent, _scopeId) => {\n if (_push) {\n _push(` Open the Terminals dock `)\n } else {\n return [\n _createTextVNode(\" Open the Terminals dock \")\n ]\n }\n }),\n _: 2\n }, _parent, _scopeId))\n _push(_ssrRenderComponent(_component_NCheckbox, {\n modelValue: shouldRestartServer.value,\n \"onUpdate:modelValue\": ($event: any) => ((shouldRestartServer).value = $event),\n n: \"primary\"\n }, {\n default: _withCtx((_, _push, _parent, _scopeId) => {\n if (_push) {\n _push(` Restart Nuxt server after update `)\n } else {\n return [\n _createTextVNode(\" Restart Nuxt server after update \")\n ]\n }\n }),\n _: 2\n }, _parent, _scopeId))\n _push(`<div flex=\"~ gap-3\" mt2 justify-end${_scopeId}>`)\n _push(_ssrRenderComponent(_component_NTip, {\n n: \"sm amber\",\n \"flex-auto\": \"\",\n icon: \"i-carbon-data-backup\"\n }, {\n default: _withCtx((_, _push, _parent, _scopeId) => {\n if (_push) {\n _push(` Please make sure to backup your project first. `)\n } else {\n return [\n _createTextVNode(\" Please make sure to backup your project first. \")\n ]\n }\n }),\n _: 2\n }, _parent, _scopeId))\n _push(_ssrRenderComponent(_component_NButton, {\n onClick: ($event: any) => (resolve(false))\n }, {\n default: _withCtx((_, _push, _parent, _scopeId) => {\n if (_push) {\n _push(` Cancel `)\n } else {\n return [\n _createTextVNode(\" Cancel \")\n ]\n }\n }),\n _: 2\n }, _parent, _scopeId))\n _push(_ssrRenderComponent(_component_NButton, {\n n: \"solid primary\",\n onClick: ($event: any) => (resolve(true))\n }, {\n default: _withCtx((_, _push, _parent, _scopeId) => {\n if (_push) {\n _push(` Update `)\n } else {\n return [\n _createTextVNode(\" Update \")\n ]\n }\n }),\n _: 2\n }, _parent, _scopeId))\n _push(`</div></div>`)\n } else {\n return [\n _createVNode(\"div\", {\n p4: \"\",\n flex: \"~ col gap-1\"\n }, [\n _createVNode(\"h3\", { class: \"text-lg font-medium leading-6\" }, \" Update \" + _toDisplayString(props.packageName) + \"? \", 1),\n _createVNode(\"p\", { op50: \"\" }, \" The following command will be executed in your terminal: \"),\n _createVNode(_component_NCodeBlock, {\n code: args[0],\n lang: \"bash\",\n my3: \"\",\n px4: \"\",\n py2: \"\",\n border: \"~ base rounded\",\n lines: false\n }, null, 8, [\"code\"]),\n _createVNode(_component_NCheckbox, {\n modelValue: shouldRevealTerminal.value,\n \"onUpdate:modelValue\": ($event: any) => ((shouldRevealTerminal).value = $event),\n n: \"primary\"\n }, {\n default: _withCtx(() => [\n _createTextVNode(\" Open the Terminals dock \")\n ]),\n _: 1\n }, 8, [\"modelValue\", \"onUpdate:modelValue\"]),\n _createVNode(_component_NCheckbox, {\n modelValue: shouldRestartServer.value,\n \"onUpdate:modelValue\": ($event: any) => ((shouldRestartServer).value = $event),\n n: \"primary\"\n }, {\n default: _withCtx(() => [\n _createTextVNode(\" Restart Nuxt server after update \")\n ]),\n _: 1\n }, 8, [\"modelValue\", \"onUpdate:modelValue\"]),\n _createVNode(\"div\", {\n flex: \"~ gap-3\",\n mt2: \"\",\n \"justify-end\": \"\"\n }, [\n _createVNode(_component_NTip, {\n n: \"sm amber\",\n \"flex-auto\": \"\",\n icon: \"i-carbon-data-backup\"\n }, {\n default: _withCtx(() => [\n _createTextVNode(\" Please make sure to backup your project first. \")\n ]),\n _: 1\n }),\n _createVNode(_component_NButton, {\n onClick: ($event: any) => (resolve(false))\n }, {\n default: _withCtx(() => [\n _createTextVNode(\" Cancel \")\n ]),\n _: 1\n }, 8, [\"onClick\"]),\n _createVNode(_component_NButton, {\n n: \"solid primary\",\n onClick: ($event: any) => (resolve(true))\n }, {\n default: _withCtx(() => [\n _createTextVNode(\" Update \")\n ]),\n _: 1\n }, 8, [\"onClick\"])\n ])\n ])\n ]\n }\n }),\n _: 2\n }, _parent, _scopeId))\n } else {\n return [\n _createVNode(_component_NDialog, {\n \"model-value\": true,\n onClose: ($event: any) => (resolve(false))\n }, {\n default: _withCtx(() => [\n _createVNode(\"div\", {\n p4: \"\",\n flex: \"~ col gap-1\"\n }, [\n _createVNode(\"h3\", { class: \"text-lg font-medium leading-6\" }, \" Update \" + _toDisplayString(props.packageName) + \"? \", 1),\n _createVNode(\"p\", { op50: \"\" }, \" The following command will be executed in your terminal: \"),\n _createVNode(_component_NCodeBlock, {\n code: args[0],\n lang: \"bash\",\n my3: \"\",\n px4: \"\",\n py2: \"\",\n border: \"~ base rounded\",\n lines: false\n }, null, 8, [\"code\"]),\n _createVNode(_component_NCheckbox, {\n modelValue: shouldRevealTerminal.value,\n \"onUpdate:modelValue\": ($event: any) => ((shouldRevealTerminal).value = $event),\n n: \"primary\"\n }, {\n default: _withCtx(() => [\n _createTextVNode(\" Open the Terminals dock \")\n ]),\n _: 1\n }, 8, [\"modelValue\", \"onUpdate:modelValue\"]),\n _createVNode(_component_NCheckbox, {\n modelValue: shouldRestartServer.value,\n \"onUpdate:modelValue\": ($event: any) => ((shouldRestartServer).value = $event),\n n: \"primary\"\n }, {\n default: _withCtx(() => [\n _createTextVNode(\" Restart Nuxt server after update \")\n ]),\n _: 1\n }, 8, [\"modelValue\", \"onUpdate:modelValue\"]),\n _createVNode(\"div\", {\n flex: \"~ gap-3\",\n mt2: \"\",\n \"justify-end\": \"\"\n }, [\n _createVNode(_component_NTip, {\n n: \"sm amber\",\n \"flex-auto\": \"\",\n icon: \"i-carbon-data-backup\"\n }, {\n default: _withCtx(() => [\n _createTextVNode(\" Please make sure to backup your project first. \")\n ]),\n _: 1\n }),\n _createVNode(_component_NButton, {\n onClick: ($event: any) => (resolve(false))\n }, {\n default: _withCtx(() => [\n _createTextVNode(\" Cancel \")\n ]),\n _: 1\n }, 8, [\"onClick\"]),\n _createVNode(_component_NButton, {\n n: \"solid primary\",\n onClick: ($event: any) => (resolve(true))\n }, {\n default: _withCtx(() => [\n _createTextVNode(\" Update \")\n ]),\n _: 1\n }, 8, [\"onClick\"])\n ])\n ])\n ]),\n _: 2\n }, 1032, [\"onClose\"])\n ]\n }\n }),\n _: 1\n }, _parent))\n _push(`<!--]-->`)\n}\n}\n\n})","<script setup lang=\"ts\">\nimport type { NpmCommandOptions } from '../../src/types'\nimport { createTemplatePromise } from '@vueuse/core'\nimport { ref } from 'vue'\nimport { useRestartDialogs } from '~/composables/dialog'\nimport { usePackageUpdate } from '~/composables/npm'\nimport { rpc } from '~/composables/rpc'\nimport { telemetry } from '~/composables/telemetry'\n\nconst props = withDefaults(\n defineProps<{\n packageName: string\n options?: NpmCommandOptions\n showVersion?: boolean\n }>(),\n {\n showVersion: true,\n },\n)\n\nconst {\n info,\n update,\n state,\n processId,\n restart,\n} = usePackageUpdate(props.packageName, props.options)\n\nconst shouldRevealTerminal = ref(true)\nconst shouldRestartServer = ref(true)\nconst restartDialogs = useRestartDialogs()\n\nconst PromiseConfirm = createTemplatePromise<boolean, [string]>()\n\nasync function updateWithConfirm() {\n const processId = await update(async (command) => {\n return PromiseConfirm.start(command)\n })\n\n telemetry('npm:update', {\n packageName: props.packageName,\n oldVersion: info.value?.current,\n })\n\n if (processId && shouldRestartServer.value) {\n restartDialogs.value.push({\n id: processId,\n message: `${props.packageName} has been updated. Do you want to restart the Nuxt server now?`,\n })\n }\n if (processId && shouldRevealTerminal.value)\n rpc.revealTerminal(processId)\n}\n</script>\n\n<template>\n <slot :id=\"processId\" :info=\"info\" :update=\"updateWithConfirm\" :state=\"state\" :restart=\"restart\">\n <code v-if=\"info && showVersion\">{{ `v${info.current}` }}</code>\n <template v-if=\"info?.latest\">\n <button v-if=\"info.needsUpdate\" @click=\"updateWithConfirm()\">\n <NBadge\n n=\"green\"\n title=\"updates available\"\n v-text=\"'updates available'\"\n />\n </button>\n <NBadge\n v-else\n n=\"gray\"\n title=\"latest\"\n v-text=\"'latest'\"\n />\n </template>\n </slot>\n\n <PromiseConfirm v-slot=\"{ resolve, args }\">\n <NDialog :model-value=\"true\" @close=\"resolve(false)\">\n <div p4 flex=\"~ col gap-1\">\n <h3 class=\"text-lg font-medium leading-6\">\n Update {{ props.packageName }}?\n </h3>\n <p op50>\n The following command will be executed in your terminal:\n </p>\n <NCodeBlock :code=\"args[0]\" lang=\"bash\" my3 px4 py2 border=\"~ base rounded\" :lines=\"false\" />\n <NCheckbox v-model=\"shouldRevealTerminal\" n=\"primary\">\n Open the Terminals dock\n </NCheckbox>\n <NCheckbox v-model=\"shouldRestartServer\" n=\"primary\">\n Restart Nuxt server after update\n </NCheckbox>\n\n <div flex=\"~ gap-3\" mt2 justify-end>\n <NTip n=\"sm amber\" flex-auto icon=\"i-carbon-data-backup\">\n Please make sure to backup your project first.\n </NTip>\n\n <NButton @click=\"resolve(false)\">\n Cancel\n </NButton>\n <NButton n=\"solid primary\" @click=\"resolve(true)\">\n Update\n </NButton>\n </div>\n </div>\n </NDialog>\n </PromiseConfirm>\n</template>\n","import type { InstalledModuleInfo, ModuleStaticInfo } from '../../src/types'\nimport { computed } from 'vue'\nimport { useState } from '#imports'\nimport { useServerConfig } from './state'\nimport { getModuleNameFromPath, isNodeModulePath, parseReadablePath, useAsyncState } from './utils'\n\nconst ignoredModules = [\n 'pages',\n 'meta',\n 'components',\n 'imports',\n 'nuxt-config-schema',\n '@nuxt/devtools',\n '@nuxt/telemetry',\n]\n\nexport function useModulesList() {\n return useAsyncState('getModulesList', async () => {\n // eslint-disable-next-line unimport/auto-insert\n const m = await $fetch<{ modules: ModuleStaticInfo[] }>('https://api.nuxt.com/modules?version=3')\n return m.modules\n .filter((item: ModuleStaticInfo) => !ignoredModules.includes(item.npm) && item.compatibility.nuxt.includes('>=3'))\n })\n}\n\nexport function useInstalledModules() {\n return useState('installed-modules', () => {\n const config = useServerConfig()\n const modules = useModulesList()\n\n return computed(() => (config.value?._installedModules || [])\n .map((mod): InstalledModuleInfo => {\n // hide inline modules\n if (!mod.entryPath)\n return undefined!\n\n const isPackageModule = !!(mod.entryPath && isNodeModulePath(mod.entryPath))\n const name = mod.meta?.name\n ? mod.meta?.name\n : mod.entryPath\n ? isPackageModule\n ? getModuleNameFromPath(mod.entryPath)\n : config.value?.rootDir\n ? parseReadablePath(mod.entryPath, config.value?.rootDir).path\n : undefined\n : undefined\n\n const isUninstallable = !!config.value?.modules?.includes(name)\n const info = modules.value?.find(m => m.npm === name) || modules.value?.find(m => m.name === name)\n\n return {\n name,\n isPackageModule,\n isUninstallable,\n info,\n ...mod,\n }\n })\n .filter(i => i && (!i.name || !ignoredModules.includes(i.name))))\n })\n}\n"],"version":3}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"file":"state-tabs-
|
|
1
|
+
{"file":"state-tabs-DyXoC_gu.js","mappings":";;;;;;AAQA,SAAgB,aAAa;CAC3B,MAAM,aAAa,cAAc;CACjC,MAAM,WAAW,mBAAmB,IAAI;CACxC,MAAM,SAAS,UAAU;CAEzB,MAAM,UAAU,eAAe,CAC7B,GAAG,OAAO,UAAU,CAAC,CAClB,QAAO,UAAS,MAAM,KAAK,WAAW,WAAW,KAAK,MAAM,KAAK,SAAS,CAAC,MAAM,KAAK,GAAG,CAAC,CAC1F,QAAO,UAAS,CAAC,MAAM,KAAK,gBAAiB,MAAM,KAAK,gBAAgB,SAAS,yBAAyB,KAAM,CAAC,CACjH,MAAM,GAAG,OAAO,EAAE,KAAK,SAAmB,QAAQ,EAAE,KAAK,SAAmB,IAAI,CAAC,CACjF,KAAK,MAAwB;EAC5B,OAAO;GACL,MAAM,EAAE;GACR,MAAM,EAAE;GACR,cAAc,EAAE,KAAK;GACrB,GAAG,EAAE;EACP;CACF,CAAC,GAeH,IAAI,WAAW,SAAS,CAAC,EAAA,CAAG,QAAO,MAAK,EAAE,KAAK,WAAW,UAAU,CAAC,CACvE,CAAC;CAED,MAAM,SAAS,gBAAgB,WAAW,SAAS,CAAC,EAAA,CACjD,QAAO,MAAK,CAAC,EAAE,KAAK,WAAW,UAAU,CAAC,CAAC;CAE9C,OAAO,eAAe,CACpB,GAAG,QAAQ,OACX,GAAG,OAAO,KACZ,CAAC;AACH;AAEA,SAAS,uBAAoF;CAC3F,OAAO;EACL,QAAQ,CAAC;EACT,KAAK,CAAC;EACN,SAAS,CAAC;EACV,QAAQ,CAAC;EACT,SAAS,CAAC;EACV,eAAe,CAAC;EAChB,UAAU,CAAC;CACb;AACF;AAEA,SAAgB,iBAAiB;CAC/B,MAAM,OAAO,WAAW;CACxB,MAAM,WAAW,mBAAmB,IAAI;CACxC,MAAM,gBAAgB,OAAO,KAAK,qBAAqB,CAAC;CACxD,MAAM,WAAW,KAAK,MAAM,KAAI,QAAQ,KAA0B,OAAO,CAAC;CAE1E,OAAO,eAAe,KAAK,MACxB,QAAQ,KAAK,QAAQ;EACpB,MAAM,OAAO;EACb,MAAM,WAAW,SAAS,WAAW,MAAM,SAAS,KAAK,IAAI;EAC7D,IAAI,YAAY,SAAS,oBAAoB,MAAM,SAAS,QAAQ,GAClE,OAAO;EACT,IAAI,SAAS,QAAQ,CAAC,QAAQ,SAAS,IAAI,GACzC,OAAO;EACT,IAAI,SAAS,WAAW,MAAM,SAAS,KAAK,IAAI,GAC9C,OAAO;EACT,IAAI,SAAS,oBAAoB,MAAM,SAAS,IAAI,YAAY,KAAK,KAAK,CAAC,UACzE,OAAO;EACT,OAAO;CACT,CAAC,CAAC,CACD,MAAM,GAAG,MAAM,cAAc,QAAQ,EAAE,YAAY,KAAK,IAAI,cAAc,QAAQ,EAAE,YAAY,KAAK,CAAC,CAAC;AAC5G;AAEA,SAAgB,eAAe;CAC7B,MAAM,SAAS,gBAAgB;CAC/B,MAAM,cAAc,eAAe;CACnC,OAAO,eAA4B;EACjC,QAAQ,OAAO,OAAO,UAAU,KAAK,CAAC,EAAA,CACnC,KAAI,MAAK,WAAW,GAAG;GAAC;GAAQ;GAAQ;GAAQ;GAAS;EAAU,CAAC,CAAC,CAAC,CACtE,KAAK,MAAM;GACV,OAAO;IACL,GAAG,YAAY,OAAO,MAAK,MAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,IAAI;IAC3D,GAAG;GACL;EACF,CAAC;CACL,CAAC;AACH","names":[],"sources":["../../../../../../../../composables/state-tabs.ts"],"sourcesContent":["import type { ModuleBuiltinTab, ModuleCustomTab, RouteInfo, TabCategory } from '../../src/types'\nimport { objectPick } from '@antfu/utils'\nimport { computed, toValue } from 'vue'\nimport { useRouter } from '#app/composables/router'\nimport { useClientRouter } from './client'\nimport { useCustomTabs, useServerPages } from './state'\nimport { useDevToolsOptions } from './storage-options'\n\nexport function useAllTabs() {\n const customTabs = useCustomTabs()\n const settings = useDevToolsOptions('ui')\n const router = useRouter()\n\n const builtin = computed(() => [\n ...router.getRoutes()\n .filter(route => route.path.startsWith('/modules/') && route.meta.title && !route.meta.wip)\n .filter(route => !route.meta.experimental || (route.meta.experimental && settings.showExperimentalFeatures.value))\n .sort((a, b) => (a.meta.order as number || 100) - (b.meta.order as number || 100))\n .map((i): ModuleBuiltinTab => {\n return {\n name: i.name as string,\n path: i.path,\n defaultOrder: i.meta.order as number | undefined,\n ...i.meta,\n }\n }),\n // <ModuleBuiltinTab>{\n // name: 'builtin-inspector',\n // title: 'Inspect Vue components',\n // icon: 'i-tabler-focus-2',\n // category: 'app',\n // show() {\n // return () => !!client.value?.inspector?.instance\n // },\n // onClick() {\n // if (!client.value?.inspector?.instance)\n // return\n // client.value.inspector.enable()\n // },\n // },\n ...(customTabs.value || []).filter(i => i.name.startsWith('builtin-')),\n ])\n\n const custom = computed(() => (customTabs.value || [])\n .filter(i => !i.name.startsWith('builtin-')))\n\n return computed(() => [\n ...builtin.value,\n ...custom.value,\n ])\n}\n\nfunction getCategorizedRecord(): Record<TabCategory, (ModuleCustomTab | ModuleBuiltinTab)[]> {\n return {\n pinned: [],\n app: [],\n analyze: [],\n server: [],\n modules: [],\n documentation: [],\n advanced: [],\n }\n}\n\nexport function useEnabledTabs() {\n const tabs = useAllTabs()\n const settings = useDevToolsOptions('ui')\n const categoryOrder = Object.keys(getCategorizedRecord())\n const tabShows = tabs.value.map(tab => (tab as ModuleBuiltinTab)?.show?.())\n\n return computed(() => tabs.value\n .filter((tab, idx) => {\n const _tab = tab as ModuleBuiltinTab\n const isPinned = settings.pinnedTabs.value.includes(_tab.name)\n if (isPinned && settings.hiddenTabCategories.value.includes('pinned'))\n return false\n if (tabShows[idx] && !toValue(tabShows[idx]))\n return false\n if (settings.hiddenTabs.value.includes(_tab.name))\n return false\n if (settings.hiddenTabCategories.value.includes(tab.category || 'app') && !isPinned)\n return false\n return true\n })\n .sort((a, b) => categoryOrder.indexOf(a.category || 'app') - categoryOrder.indexOf(b.category || 'app')))\n}\n\nexport function useAllRoutes() {\n const router = useClientRouter()\n const serverPages = useServerPages()\n return computed((): RouteInfo[] => {\n return (router.value?.getRoutes() || [])\n .map(i => objectPick(i, ['path', 'name', 'meta', 'props', 'children']))\n .map((i) => {\n return {\n ...serverPages.value?.find(j => j.name && j.name === i.name),\n ...i,\n }\n })\n })\n}\n"],"version":3}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"file":"storage-Bl77u--J.js","mappings":"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","names":[],"sources":["../../../../../../../../components/AuthRequiredPanel.vue","../../../../../../../../components/StorageDetails.vue?vue&type=script&setup=true&lang.ts","../../../../../../../../components/StorageDetails.vue","../../../../../../../../pages/modules/storage.vue?vue&type=script&setup=true&lang.ts","../../../../../../../../pages/modules/storage.vue"],"sourcesContent":["<template>\n <!-- Auth is now handled by Vite DevTools -->\n <slot />\n</template>\n","import { withAsyncContext as _withAsyncContext, defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, resolveComponent as _resolveComponent, withCtx as _withCtx, renderList as _renderList, Fragment as _Fragment, openBlock as _openBlock, createBlock as _createBlock, toDisplayString as _toDisplayString, isRef as _isRef, createTextVNode as _createTextVNode, mergeProps as _mergeProps, createVNode as _createVNode, withKeys as _withKeys, createCommentVNode as _createCommentVNode, vModelText as _vModelText, withModifiers as _withModifiers, withDirectives as _withDirectives } from \"vue\"\nimport { ssrRenderComponent as _ssrRenderComponent, ssrRenderAttr as _ssrRenderAttr, ssrRenderClass as _ssrRenderClass, ssrInterpolate as _ssrInterpolate, ssrRenderList as _ssrRenderList } from \"vue/server-renderer\"\n\nimport { useEventListener } from '@vueuse/core'\nimport JsonEditorVue from 'json-editor-vue'\nimport { computed, onUnmounted, ref, watch, watchEffect } from 'vue'\nimport { useAsyncData } from '#app/composables/asyncData'\nimport { useRouter } from '#app/composables/router'\nimport { useNuxtApp } from '#app/nuxt'\nimport { getColorMode } from '~/composables/client'\nimport { rpc } from '~/composables/rpc'\nimport { useSessionState } from '~/composables/utils'\n\n\nexport default /*@__PURE__*/_defineComponent({\n __name: 'StorageDetails',\n __ssrInlineRender: true,\n async setup(__props) {\n\nlet __temp: any, __restore: any\n\nconst colorMode = getColorMode()\nconst nuxtApp = useNuxtApp()\nconst router = useRouter()\nconst searchString = ref('')\nconst newKey = ref('')\nconst currentStorage = useSessionState<string>('storage:current', '')\nconst currentItem = ref()\nconst fileKey = useSessionState<string>('storage:file:state', '')\n\nconst { data: storageMounts } = (\n ([__temp,__restore] = _withAsyncContext(() => useAsyncData('storageMounts', () => rpc.getStorageMounts()))),\n __temp = await __temp,\n __restore(),\n __temp\n)\nconst { data: storageKeys, refresh: refreshStorageKeys } = (\n ([__temp,__restore] = _withAsyncContext(async () => useAsyncData('storageKeys', async () => {\n if (currentStorage.value)\n return await rpc.getStorageKeys(currentStorage.value)\n return []\n}))),\n __temp = await __temp,\n __restore(),\n __temp\n)\n\nconst closeWatcher = nuxtApp.hook('storage:key:update' as any, async (key: string, event: any) => {\n if (!currentStorage.value || key.split(':')[0] !== currentStorage.value)\n return\n await refreshStorageKeys()\n if (fileKey.value === key) {\n if (event === 'remove')\n return router.replace({ query: { storage: currentStorage.value } })\n await fetchItem(fileKey.value)\n }\n})\n\nonUnmounted(closeWatcher)\n\nwatch(currentStorage, () => {\n refreshStorageKeys()\n fileKey.value = ''\n})\n\nwatchEffect(async () => {\n if (!fileKey.value) {\n currentItem.value = null\n return\n }\n fetchItem(fileKey.value)\n})\n\n// Save on Ctrl/Cmd + S\nuseEventListener('keydown', (e) => {\n if (e.key === 's' && (e.ctrlKey || e.metaKey)) {\n saveCurrentItem()\n e.preventDefault()\n }\n})\n\nfunction keyName(key: string) {\n return key.replace(`${currentStorage.value}:`, '')\n}\n\nconst filteredKeys = computed(() => {\n if (!storageKeys.value)\n return []\n return storageKeys.value.filter(key => key.includes(searchString.value))\n})\n\nasync function fetchItem(key: string) {\n const content = await rpc.getStorageItem(key)\n currentItem.value = {\n key,\n updatedKey: keyName(key),\n editingKey: false,\n content,\n updatedContent: content,\n }\n}\n\nasync function saveNewItem() {\n if (!newKey.value || !currentStorage.value)\n return\n // If does not exists\n const key = `${currentStorage.value}:${newKey.value}`\n if (!storageKeys.value?.includes(key))\n await rpc.setStorageItem(key, '')\n\n router.replace({ query: { storage: currentStorage.value, key } })\n newKey.value = ''\n}\n\nasync function saveCurrentItem() {\n if (!currentItem.value)\n return\n await rpc.setStorageItem(currentItem.value.key, currentItem.value.updatedContent)\n await fetchItem(currentItem.value.key)\n}\n\nasync function removeCurrentItem() {\n if (!currentItem.value || !currentStorage.value)\n return\n await rpc.removeStorageItem(currentItem.value.key)\n currentItem.value = null\n}\n\nasync function renameCurrentItem() {\n if (!currentItem.value || !currentStorage.value)\n return\n const renamedKey = `${currentStorage.value}:${currentItem.value.updatedKey}`\n await rpc.setStorageItem(renamedKey, currentItem.value.updatedContent)\n await rpc.removeStorageItem(currentItem.value.key)\n router.replace({ query: { storage: currentStorage.value, key: renamedKey } })\n}\n\nreturn (_ctx: any,_push: any,_parent: any,_attrs: any) => {\n const _component_NSplitPane = _resolveComponent(\"NSplitPane\")!\n const _component_NButton = _resolveComponent(\"NButton\")!\n const _component_NSelect = _resolveComponent(\"NSelect\")!\n const _component_NTextInput = _resolveComponent(\"NTextInput\")!\n const _component_NIcon = _resolveComponent(\"NIcon\")!\n const _component_NPanelGrids = _resolveComponent(\"NPanelGrids\")!\n const _component_NCard = _resolveComponent(\"NCard\")!\n const _component_NLink = _resolveComponent(\"NLink\")!\n const _component_FilepathItem = _resolveComponent(\"FilepathItem\")!\n\n if (_unref(currentStorage)) {\n _push(_ssrRenderComponent(_component_NSplitPane, _mergeProps({ \"storage-key\": \"tab-storage\" }, _attrs), {\n left: _withCtx((_, _push, _parent, _scopeId) => {\n if (_push) {\n _push(`<div class=\"h-[48px] flex items-center justify-between gap1 px-3\"${_scopeId}>`)\n _push(_ssrRenderComponent(_component_NButton, {\n icon: \"carbon-chevron-left\",\n \"ml--1\": \"\",\n border: false,\n onClick: ($event: any) => (currentStorage.value = '')\n }, null, _parent, _scopeId))\n _push(`<div class=\"w-full text-sm\"${_scopeId}>`)\n _push(_ssrRenderComponent(_component_NSelect, {\n modelValue: _unref(currentStorage),\n \"onUpdate:modelValue\": ($event: any) => (_isRef(currentStorage) ? (currentStorage).value = $event : null),\n n: \"primary\",\n icon: \"carbon-data-base\"\n }, {\n default: _withCtx((_, _push, _parent, _scopeId) => {\n if (_push) {\n _push(`<!--[-->`)\n _ssrRenderList(_unref(storageMounts), (_storage, name) => {\n _push(`<option${\n _ssrRenderAttr(\"value\", name)\n }${\n _scopeId\n }>${\n _ssrInterpolate(name)\n }</option>`)\n })\n _push(`<!--]-->`)\n } else {\n return [\n (_openBlock(true), _createBlock(_Fragment, null, _renderList(_unref(storageMounts), (_storage, name) => {\n return (_openBlock(), _createBlock(\"option\", {\n key: name,\n value: name\n }, _toDisplayString(name), 9, [\"value\"]))\n }), 128))\n ]\n }\n }),\n _: 1\n }, _parent, _scopeId))\n _push(`</div></div>`)\n _push(_ssrRenderComponent(_component_NTextInput, {\n modelValue: searchString.value,\n \"onUpdate:modelValue\": ($event: any) => ((searchString).value = $event),\n icon: \"carbon-search\",\n placeholder: \"Search...\",\n n: \"primary sm\",\n border: \"y x-none base! rounded-0\",\n class: \"w-full py2 ring-0!\"\n }, null, _parent, _scopeId))\n _push(`<!--[-->`)\n _ssrRenderList(filteredKeys.value, (key) => {\n _push(`<!--[--><button block w-full truncate px2 py1 text-start text-sm font-mono class=\"${\n _ssrRenderClass(key === currentItem.value?.key ? 'text-primary n-bg-active' : 'text-secondary hover:n-bg-hover')\n }\"${\n _scopeId\n }>${\n _ssrInterpolate(keyName(key))\n }</button><div x-divider${\n _scopeId\n }></div><!--]-->`)\n })\n _push(`<!--]-->`)\n _push(_ssrRenderComponent(_component_NTextInput, {\n modelValue: newKey.value,\n \"onUpdate:modelValue\": ($event: any) => ((newKey).value = $event),\n icon: \"carbon-add\",\n placeholder: \"key\",\n n: \"sm\",\n border: \"t-none x-none base! rounded-0\",\n class: \"w-full py2 font-mono ring-0!\",\n onKeyup: saveNewItem\n }, null, _parent, _scopeId))\n } else {\n return [\n _createVNode(\"div\", { class: \"h-[48px] flex items-center justify-between gap1 px-3\" }, [\n _createVNode(_component_NButton, {\n icon: \"carbon-chevron-left\",\n \"ml--1\": \"\",\n border: false,\n onClick: ($event: any) => (currentStorage.value = '')\n }, null, 8, [\"onClick\"]),\n _createVNode(\"div\", { class: \"w-full text-sm\" }, [\n _createVNode(_component_NSelect, {\n modelValue: _unref(currentStorage),\n \"onUpdate:modelValue\": ($event: any) => (_isRef(currentStorage) ? (currentStorage).value = $event : null),\n n: \"primary\",\n icon: \"carbon-data-base\"\n }, {\n default: _withCtx(() => [\n (_openBlock(true), _createBlock(_Fragment, null, _renderList(_unref(storageMounts), (_storage, name) => {\n return (_openBlock(), _createBlock(\"option\", {\n key: name,\n value: name\n }, _toDisplayString(name), 9, [\"value\"]))\n }), 128))\n ]),\n _: 1\n }, 8, [\"modelValue\", \"onUpdate:modelValue\"])\n ])\n ]),\n _createVNode(_component_NTextInput, {\n modelValue: searchString.value,\n \"onUpdate:modelValue\": ($event: any) => ((searchString).value = $event),\n icon: \"carbon-search\",\n placeholder: \"Search...\",\n n: \"primary sm\",\n border: \"y x-none base! rounded-0\",\n class: \"w-full py2 ring-0!\"\n }, null, 8, [\"modelValue\", \"onUpdate:modelValue\"]),\n (_openBlock(true), _createBlock(_Fragment, null, _renderList(filteredKeys.value, (key) => {\n return (_openBlock(), _createBlock(_Fragment, { key: key }, [\n _createVNode(\"button\", {\n block: \"\",\n \"w-full\": \"\",\n truncate: \"\",\n px2: \"\",\n py1: \"\",\n \"text-start\": \"\",\n \"text-sm\": \"\",\n \"font-mono\": \"\",\n class: key === currentItem.value?.key ? 'text-primary n-bg-active' : 'text-secondary hover:n-bg-hover',\n onClick: ($event: any) => (fileKey.value = key)\n }, _toDisplayString(keyName(key)), 11, [\"onClick\"]),\n _createVNode(\"div\", { \"x-divider\": \"\" })\n ], 64))\n }), 128)),\n _createVNode(_component_NTextInput, {\n modelValue: newKey.value,\n \"onUpdate:modelValue\": ($event: any) => ((newKey).value = $event),\n icon: \"carbon-add\",\n placeholder: \"key\",\n n: \"sm\",\n border: \"t-none x-none base! rounded-0\",\n class: \"w-full py2 font-mono ring-0!\",\n onKeyup: _withKeys(saveNewItem, [\"enter\"])\n }, null, 8, [\"modelValue\", \"onUpdate:modelValue\"])\n ]\n }\n }),\n right: _withCtx((_, _push, _parent, _scopeId) => {\n if (_push) {\n if (currentItem.value?.key) {\n _push(`<div h-full of-hidden flex=\"~ col\"${\n _scopeId\n }><div border=\"b base\" class=\"h-[49px] flex flex-none items-center justify-between px-4 text-sm\"${\n _scopeId\n }><div class=\"flex items-center gap-4\"${\n _scopeId\n }>`)\n if (currentItem.value.editingKey) {\n _push(_ssrRenderComponent(_component_NTextInput, {\n modelValue: currentItem.value.updatedKey,\n \"onUpdate:modelValue\": ($event: any) => ((currentItem.value.updatedKey) = $event),\n onKeyup: renameCurrentItem\n }, null, _parent, _scopeId))\n } else {\n _push(`<code${\n _scopeId\n }>${\n _ssrInterpolate(keyName(currentItem.value.key))\n } `)\n _push(_ssrRenderComponent(_component_NIcon, {\n icon: \"carbon-edit\",\n class: \"cursor-pointer op50 hover:op100\",\n onClick: ($event: any) => (currentItem.value.editingKey = true)\n }, null, _parent, _scopeId))\n _push(`</code>`)\n }\n if (!currentItem.value.editingKey) {\n _push(_ssrRenderComponent(_component_NButton, {\n n: \"green xs\",\n disabled: currentItem.value.content === currentItem.value.updatedContent,\n class: { 'border-green': currentItem.value.content !== currentItem.value.updatedContent },\n onClick: saveCurrentItem\n }, {\n default: _withCtx((_, _push, _parent, _scopeId) => {\n if (_push) {\n _push(` Save `)\n } else {\n return [\n _createTextVNode(\" Save \")\n ]\n }\n }),\n _: 1\n }, _parent, _scopeId))\n } else {\n _push(`<!---->`)\n }\n _push(`</div><div${_scopeId}>`)\n _push(_ssrRenderComponent(_component_NButton, {\n n: \"red xs\",\n onClick: removeCurrentItem\n }, {\n default: _withCtx((_, _push, _parent, _scopeId) => {\n if (_push) {\n _push(` Delete `)\n } else {\n return [\n _createTextVNode(\" Delete \")\n ]\n }\n }),\n _: 1\n }, _parent, _scopeId))\n _push(`</div></div>`)\n if (typeof currentItem.value.content === 'object') {\n _push(_ssrRenderComponent(_unref(JsonEditorVue), _mergeProps({\n modelValue: currentItem.value.updatedContent,\n \"onUpdate:modelValue\": ($event: any) => ((currentItem.value.updatedContent) = $event),\n class: [[_unref(colorMode) === 'dark' ? 'jse-theme-dark' : 'light'], \"json-editor-vue h-full of-auto text-sm outline-none\"]\n }, _ctx.$attrs, {\n mode: ('text' as any),\n \"navigation-bar\": false,\n indentation: 2,\n \"tab-size\": 2\n }), null, _parent, _scopeId))\n } else {\n _push(`<textarea placeholder=\"Item value...\" class=\"h-full of-auto p-4 text-sm font-mono outline-none\"${\n _scopeId\n }>${\n _ssrInterpolate(currentItem.value.updatedContent)\n }</textarea>`)\n }\n _push(`</div>`)\n } else {\n _push(_ssrRenderComponent(_component_NPanelGrids, null, {\n default: _withCtx((_, _push, _parent, _scopeId) => {\n if (_push) {\n _push(_ssrRenderComponent(_component_NCard, {\n px6: \"\",\n py4: \"\"\n }, {\n default: _withCtx((_, _push, _parent, _scopeId) => {\n if (_push) {\n _push(` Select one key to start.<br${_scopeId}>Learn more about `)\n _push(_ssrRenderComponent(_component_NLink, {\n href: \"https://nitro.unjs.io/guide/storage\",\n n: \"orange\",\n target: \"_blank\"\n }, {\n default: _withCtx((_, _push, _parent, _scopeId) => {\n if (_push) {\n _push(` Nitro storage `)\n } else {\n return [\n _createTextVNode(\" Nitro storage \")\n ]\n }\n }),\n _: 1\n }, _parent, _scopeId))\n } else {\n return [\n _createTextVNode(\" Select one key to start.\"),\n _createVNode(\"br\"),\n _createTextVNode(\"Learn more about \"),\n _createVNode(_component_NLink, {\n href: \"https://nitro.unjs.io/guide/storage\",\n n: \"orange\",\n target: \"_blank\"\n }, {\n default: _withCtx(() => [\n _createTextVNode(\" Nitro storage \")\n ]),\n _: 1\n })\n ]\n }\n }),\n _: 1\n }, _parent, _scopeId))\n } else {\n return [\n _createVNode(_component_NCard, {\n px6: \"\",\n py4: \"\"\n }, {\n default: _withCtx(() => [\n _createTextVNode(\" Select one key to start.\"),\n _createVNode(\"br\"),\n _createTextVNode(\"Learn more about \"),\n _createVNode(_component_NLink, {\n href: \"https://nitro.unjs.io/guide/storage\",\n n: \"orange\",\n target: \"_blank\"\n }, {\n default: _withCtx(() => [\n _createTextVNode(\" Nitro storage \")\n ]),\n _: 1\n })\n ]),\n _: 1\n })\n ]\n }\n }),\n _: 1\n }, _parent, _scopeId))\n }\n } else {\n return [\n (currentItem.value?.key)\n ? (_openBlock(), _createBlock(\"div\", {\n key: 0,\n \"h-full\": \"\",\n \"of-hidden\": \"\",\n flex: \"~ col\"\n }, [\n _createVNode(\"div\", {\n border: \"b base\",\n class: \"h-[49px] flex flex-none items-center justify-between px-4 text-sm\"\n }, [\n _createVNode(\"div\", { class: \"flex items-center gap-4\" }, [\n (currentItem.value.editingKey)\n ? (_openBlock(), _createBlock(_component_NTextInput, {\n key: 0,\n modelValue: currentItem.value.updatedKey,\n \"onUpdate:modelValue\": ($event: any) => ((currentItem.value.updatedKey) = $event),\n onKeyup: _withKeys(renameCurrentItem, [\"enter\"])\n }, null, 8, [\"modelValue\", \"onUpdate:modelValue\"]))\n : (_openBlock(), _createBlock(\"code\", { key: 1 }, [\n _createTextVNode(_toDisplayString(keyName(currentItem.value.key)) + \" \", 1),\n _createVNode(_component_NIcon, {\n icon: \"carbon-edit\",\n class: \"cursor-pointer op50 hover:op100\",\n onClick: ($event: any) => (currentItem.value.editingKey = true)\n }, null, 8, [\"onClick\"])\n ])),\n (!currentItem.value.editingKey)\n ? (_openBlock(), _createBlock(_component_NButton, {\n key: 2,\n n: \"green xs\",\n disabled: currentItem.value.content === currentItem.value.updatedContent,\n class: { 'border-green': currentItem.value.content !== currentItem.value.updatedContent },\n onClick: saveCurrentItem\n }, {\n default: _withCtx(() => [\n _createTextVNode(\" Save \")\n ]),\n _: 1\n }, 8, [\"disabled\", \"class\"]))\n : _createCommentVNode(\"\", true)\n ]),\n _createVNode(\"div\", null, [\n _createVNode(_component_NButton, {\n n: \"red xs\",\n onClick: removeCurrentItem\n }, {\n default: _withCtx(() => [\n _createTextVNode(\" Delete \")\n ]),\n _: 1\n })\n ])\n ]),\n (typeof currentItem.value.content === 'object')\n ? (_openBlock(), _createBlock(_unref(JsonEditorVue), _mergeProps({\n key: 0,\n modelValue: currentItem.value.updatedContent,\n \"onUpdate:modelValue\": ($event: any) => ((currentItem.value.updatedContent) = $event),\n class: [[_unref(colorMode) === 'dark' ? 'jse-theme-dark' : 'light'], \"json-editor-vue h-full of-auto text-sm outline-none\"]\n }, _ctx.$attrs, {\n mode: ('text' as any),\n \"navigation-bar\": false,\n indentation: 2,\n \"tab-size\": 2\n }), null, 16, [\"modelValue\", \"onUpdate:modelValue\", \"class\"]))\n : _withDirectives((_openBlock(), _createBlock(\"textarea\", {\n key: 1,\n \"onUpdate:modelValue\": ($event: any) => ((currentItem.value.updatedContent) = $event),\n placeholder: \"Item value...\",\n class: \"h-full of-auto p-4 text-sm font-mono outline-none\",\n onKeyup: _withKeys(_withModifiers(saveCurrentItem, [\"ctrl\"]), [\"enter\"])\n }, null, 40, [\"onUpdate:modelValue\", \"onKeyup\"])), [\n [_vModelText, currentItem.value.updatedContent]\n ])\n ]))\n : (_openBlock(), _createBlock(_component_NPanelGrids, { key: 1 }, {\n default: _withCtx(() => [\n _createVNode(_component_NCard, {\n px6: \"\",\n py4: \"\"\n }, {\n default: _withCtx(() => [\n _createTextVNode(\" Select one key to start.\"),\n _createVNode(\"br\"),\n _createTextVNode(\"Learn more about \"),\n _createVNode(_component_NLink, {\n href: \"https://nitro.unjs.io/guide/storage\",\n n: \"orange\",\n target: \"_blank\"\n }, {\n default: _withCtx(() => [\n _createTextVNode(\" Nitro storage \")\n ]),\n _: 1\n })\n ]),\n _: 1\n })\n ]),\n _: 1\n }))\n ]\n }\n }),\n _: 1\n }, _parent))\n } else {\n _push(_ssrRenderComponent(_component_NPanelGrids, _attrs, {\n default: _withCtx((_, _push, _parent, _scopeId) => {\n if (_push) {\n if (Object.keys(_unref(storageMounts) as any).length) {\n _push(`<p op50${_scopeId}> Select one storage to start: </p>`)\n } else {\n _push(`<p${\n _scopeId\n }> No custom storage defined in <code${\n _scopeId\n }>nitro.storage</code>.<br${\n _scopeId\n }> Learn more about `)\n _push(_ssrRenderComponent(_component_NLink, {\n href: \"https://nitro.unjs.io/guide/storage\",\n n: \"orange\",\n target: \"_blank\"\n }, {\n default: _withCtx((_, _push, _parent, _scopeId) => {\n if (_push) {\n _push(` Nitro storage `)\n } else {\n return [\n _createTextVNode(\" Nitro storage \")\n ]\n }\n }),\n _: 1\n }, _parent, _scopeId))\n _push(`</p>`)\n }\n _push(`<!--[-->`)\n _ssrRenderList(_unref(storageMounts), (storage, name) => {\n _push(_ssrRenderComponent(_component_NCard, {\n key: name,\n \"min-w-80\": \"\",\n \"cursor-pointer\": \"\",\n \"p-4\": \"\",\n \"text-left\": \"\",\n hover: \"border-green\",\n onClick: ($event: any) => (currentStorage.value = name as string)\n }, {\n default: _withCtx((_, _push, _parent, _scopeId) => {\n if (_push) {\n _push(`<span font-bold${\n _scopeId\n }>${\n _ssrInterpolate(name)\n }</span><br${\n _scopeId\n }><span text-sm${\n _scopeId\n }>${\n _ssrInterpolate(storage.driver)\n } driver</span><br${\n _scopeId\n }>`)\n if (storage.base) {\n _push(_ssrRenderComponent(_component_FilepathItem, {\n \"text-xs\": \"\",\n filepath: storage.base\n }, null, _parent, _scopeId))\n } else {\n _push(`<!---->`)\n }\n } else {\n return [\n _createVNode(\"span\", { \"font-bold\": \"\" }, _toDisplayString(name), 1),\n _createVNode(\"br\"),\n _createVNode(\"span\", { \"text-sm\": \"\" }, _toDisplayString(storage.driver) + \" driver\", 1),\n _createVNode(\"br\"),\n (storage.base)\n ? (_openBlock(), _createBlock(_component_FilepathItem, {\n key: 0,\n \"text-xs\": \"\",\n filepath: storage.base\n }, null, 8, [\"filepath\"]))\n : _createCommentVNode(\"\", true)\n ]\n }\n }),\n _: 2\n }, _parent, _scopeId))\n })\n _push(`<!--]-->`)\n } else {\n return [\n (Object.keys(_unref(storageMounts) as any).length)\n ? (_openBlock(), _createBlock(\"p\", {\n key: 0,\n op50: \"\"\n }, \" Select one storage to start: \"))\n : (_openBlock(), _createBlock(\"p\", { key: 1 }, [\n _createTextVNode(\" No custom storage defined in \"),\n _createVNode(\"code\", null, \"nitro.storage\"),\n _createTextVNode(\".\"),\n _createVNode(\"br\"),\n _createTextVNode(\" Learn more about \"),\n _createVNode(_component_NLink, {\n href: \"https://nitro.unjs.io/guide/storage\",\n n: \"orange\",\n target: \"_blank\"\n }, {\n default: _withCtx(() => [\n _createTextVNode(\" Nitro storage \")\n ]),\n _: 1\n })\n ])),\n (_openBlock(true), _createBlock(_Fragment, null, _renderList(_unref(storageMounts), (storage, name) => {\n return (_openBlock(), _createBlock(_component_NCard, {\n key: name,\n \"min-w-80\": \"\",\n \"cursor-pointer\": \"\",\n \"p-4\": \"\",\n \"text-left\": \"\",\n hover: \"border-green\",\n onClick: ($event: any) => (currentStorage.value = name as string)\n }, {\n default: _withCtx(() => [\n _createVNode(\"span\", { \"font-bold\": \"\" }, _toDisplayString(name), 1),\n _createVNode(\"br\"),\n _createVNode(\"span\", { \"text-sm\": \"\" }, _toDisplayString(storage.driver) + \" driver\", 1),\n _createVNode(\"br\"),\n (storage.base)\n ? (_openBlock(), _createBlock(_component_FilepathItem, {\n key: 0,\n \"text-xs\": \"\",\n filepath: storage.base\n }, null, 8, [\"filepath\"]))\n : _createCommentVNode(\"\", true)\n ]),\n _: 2\n }, 1032, [\"onClick\"]))\n }), 128))\n ]\n }\n }),\n _: 1\n }, _parent))\n }\n}\n}\n\n})","<script setup lang=\"ts\">\nimport { useEventListener } from '@vueuse/core'\nimport JsonEditorVue from 'json-editor-vue'\nimport { computed, onUnmounted, ref, watch, watchEffect } from 'vue'\nimport { useAsyncData } from '#app/composables/asyncData'\nimport { useRouter } from '#app/composables/router'\nimport { useNuxtApp } from '#app/nuxt'\nimport { getColorMode } from '~/composables/client'\nimport { rpc } from '~/composables/rpc'\nimport { useSessionState } from '~/composables/utils'\n\nconst colorMode = getColorMode()\nconst nuxtApp = useNuxtApp()\nconst router = useRouter()\nconst searchString = ref('')\nconst newKey = ref('')\nconst currentStorage = useSessionState<string>('storage:current', '')\nconst currentItem = ref()\nconst fileKey = useSessionState<string>('storage:file:state', '')\n\nconst { data: storageMounts } = await useAsyncData('storageMounts', () => rpc.getStorageMounts())\nconst { data: storageKeys, refresh: refreshStorageKeys } = await useAsyncData('storageKeys', async () => {\n if (currentStorage.value)\n return await rpc.getStorageKeys(currentStorage.value)\n return []\n})\n\nconst closeWatcher = nuxtApp.hook('storage:key:update' as any, async (key: string, event: any) => {\n if (!currentStorage.value || key.split(':')[0] !== currentStorage.value)\n return\n await refreshStorageKeys()\n if (fileKey.value === key) {\n if (event === 'remove')\n return router.replace({ query: { storage: currentStorage.value } })\n await fetchItem(fileKey.value)\n }\n})\n\nonUnmounted(closeWatcher)\n\nwatch(currentStorage, () => {\n refreshStorageKeys()\n fileKey.value = ''\n})\n\nwatchEffect(async () => {\n if (!fileKey.value) {\n currentItem.value = null\n return\n }\n fetchItem(fileKey.value)\n})\n\n// Save on Ctrl/Cmd + S\nuseEventListener('keydown', (e) => {\n if (e.key === 's' && (e.ctrlKey || e.metaKey)) {\n saveCurrentItem()\n e.preventDefault()\n }\n})\n\nfunction keyName(key: string) {\n return key.replace(`${currentStorage.value}:`, '')\n}\n\nconst filteredKeys = computed(() => {\n if (!storageKeys.value)\n return []\n return storageKeys.value.filter(key => key.includes(searchString.value))\n})\n\nasync function fetchItem(key: string) {\n const content = await rpc.getStorageItem(key)\n currentItem.value = {\n key,\n updatedKey: keyName(key),\n editingKey: false,\n content,\n updatedContent: content,\n }\n}\n\nasync function saveNewItem() {\n if (!newKey.value || !currentStorage.value)\n return\n // If does not exists\n const key = `${currentStorage.value}:${newKey.value}`\n if (!storageKeys.value?.includes(key))\n await rpc.setStorageItem(key, '')\n\n router.replace({ query: { storage: currentStorage.value, key } })\n newKey.value = ''\n}\n\nasync function saveCurrentItem() {\n if (!currentItem.value)\n return\n await rpc.setStorageItem(currentItem.value.key, currentItem.value.updatedContent)\n await fetchItem(currentItem.value.key)\n}\n\nasync function removeCurrentItem() {\n if (!currentItem.value || !currentStorage.value)\n return\n await rpc.removeStorageItem(currentItem.value.key)\n currentItem.value = null\n}\n\nasync function renameCurrentItem() {\n if (!currentItem.value || !currentStorage.value)\n return\n const renamedKey = `${currentStorage.value}:${currentItem.value.updatedKey}`\n await rpc.setStorageItem(renamedKey, currentItem.value.updatedContent)\n await rpc.removeStorageItem(currentItem.value.key)\n router.replace({ query: { storage: currentStorage.value, key: renamedKey } })\n}\n</script>\n\n<template>\n <NSplitPane v-if=\"currentStorage\" storage-key=\"tab-storage\">\n <template #left>\n <div class=\"h-[48px] flex items-center justify-between gap1 px-3\">\n <NButton icon=\"carbon-chevron-left\" ml--1 :border=\"false\" @click=\"currentStorage = ''\" />\n <div class=\"w-full text-sm\">\n <NSelect v-model=\"currentStorage\" n=\"primary\" icon=\"carbon-data-base\">\n <option v-for=\"(_storage, name) of storageMounts\" :key=\"name\" :value=\"name\">\n {{ name }}\n </option>\n </NSelect>\n </div>\n </div>\n <NTextInput\n v-model=\"searchString\"\n icon=\"carbon-search\"\n placeholder=\"Search...\"\n n=\"primary sm\"\n border=\"y x-none base! rounded-0\"\n class=\"w-full py2 ring-0!\"\n />\n <template v-for=\"key of filteredKeys\" :key=\"key\">\n <button\n block w-full truncate px2 py1 text-start text-sm font-mono\n :class=\"key === currentItem?.key ? 'text-primary n-bg-active' : 'text-secondary hover:n-bg-hover'\"\n @click=\"fileKey = key\"\n >\n {{ keyName(key) }}\n </button>\n <div x-divider />\n </template>\n <NTextInput\n v-model=\"newKey\"\n icon=\"carbon-add\"\n placeholder=\"key\"\n n=\"sm\"\n border=\"t-none x-none base! rounded-0\"\n class=\"w-full py2 font-mono ring-0!\"\n @keyup.enter=\"saveNewItem\"\n />\n </template>\n\n <template #right>\n <div v-if=\"currentItem?.key\" h-full of-hidden flex=\"~ col\">\n <div border=\"b base\" class=\"h-[49px] flex flex-none items-center justify-between px-4 text-sm\">\n <div class=\"flex items-center gap-4\">\n <NTextInput v-if=\"currentItem.editingKey\" v-model=\"currentItem.updatedKey\" @keyup.enter=\"renameCurrentItem\" />\n <code v-else>{{ keyName(currentItem.key) }} <NIcon icon=\"carbon-edit\" class=\"cursor-pointer op50 hover:op100\" @click=\"currentItem.editingKey = true\" /></code>\n <NButton v-if=\"!currentItem.editingKey\" n=\"green xs\" :disabled=\"currentItem.content === currentItem.updatedContent\" :class=\"{ 'border-green': currentItem.content !== currentItem.updatedContent }\" @click=\"saveCurrentItem\">\n Save\n </NButton>\n </div>\n <div>\n <NButton n=\"red xs\" @click=\"removeCurrentItem\">\n Delete\n </NButton>\n </div>\n </div>\n <JsonEditorVue\n v-if=\"typeof currentItem.content === 'object'\"\n v-model=\"currentItem.updatedContent\"\n :class=\"[colorMode === 'dark' ? 'jse-theme-dark' : 'light']\"\n class=\"json-editor-vue h-full of-auto text-sm outline-none\"\n v-bind=\"$attrs\"\n :mode=\"('text' as any)\"\n :navigation-bar=\"false\"\n :indentation=\"2\"\n :tab-size=\"2\"\n />\n <textarea\n v-else v-model=\"currentItem.updatedContent\"\n placeholder=\"Item value...\"\n class=\"h-full of-auto p-4 text-sm font-mono outline-none\"\n @keyup.ctrl.enter=\"saveCurrentItem\"\n />\n </div>\n <NPanelGrids v-else>\n <NCard px6 py4>\n Select one key to start.<br>Learn more about\n <NLink href=\"https://nitro.unjs.io/guide/storage\" n=\"orange\" target=\"_blank\">\n Nitro storage\n </NLink>\n </NCard>\n </NPanelGrids>\n </template>\n </NSplitPane>\n <NPanelGrids v-else>\n <p v-if=\"Object.keys(storageMounts as any).length\" op50>\n Select one storage to start:\n </p>\n <p v-else>\n No custom storage defined in <code>nitro.storage</code>.<br>\n Learn more about\n <NLink href=\"https://nitro.unjs.io/guide/storage\" n=\"orange\" target=\"_blank\">\n Nitro storage\n </NLink>\n </p>\n <NCard\n v-for=\"(storage, name) of storageMounts\"\n :key=\"name\"\n min-w-80 cursor-pointer p-4 text-left\n hover=\"border-green\"\n @click=\"currentStorage = name as string\"\n >\n <span font-bold>{{ name }}</span><br>\n <span text-sm>{{ storage.driver }} driver</span><br>\n <FilepathItem v-if=\"storage.base\" text-xs :filepath=\"storage.base\" />\n </NCard>\n </NPanelGrids>\n</template>\n","import { defineComponent as _defineComponent } from 'vue'\nimport { resolveComponent as _resolveComponent, withCtx as _withCtx, createVNode as _createVNode } from \"vue\"\nimport { ssrRenderComponent as _ssrRenderComponent } from \"vue/server-renderer\"\n\nimport { definePageMeta } from '#imports'\n\n\nexport default /*@__PURE__*/_defineComponent({\n __name: 'storage',\n __ssrInlineRender: true,\n setup(__props) {\n\ndefinePageMeta({\n icon: 'carbon-data-base',\n title: 'Storage',\n layout: 'full',\n category: 'server',\n})\n\nreturn (_ctx: any,_push: any,_parent: any,_attrs: any) => {\n const _component_AuthRequiredPanel = _resolveComponent(\"AuthRequiredPanel\")!\n const _component_StorageDetails = _resolveComponent(\"StorageDetails\")!\n\n _push(_ssrRenderComponent(_component_AuthRequiredPanel, _attrs, {\n default: _withCtx((_, _push, _parent, _scopeId) => {\n if (_push) {\n _push(_ssrRenderComponent(_component_StorageDetails, null, null, _parent, _scopeId))\n } else {\n return [\n _createVNode(_component_StorageDetails)\n ]\n }\n }),\n _: 1\n }, _parent))\n}\n}\n\n})","<script setup lang=\"ts\">\nimport { definePageMeta } from '#imports'\n\ndefinePageMeta({\n icon: 'carbon-data-base',\n title: 'Storage',\n layout: 'full',\n category: 'server',\n})\n</script>\n\n<template>\n <AuthRequiredPanel>\n <StorageDetails />\n </AuthRequiredPanel>\n</template>\n"],"version":3}
|