@nuxt/devtools 2.3.2 → 2.4.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (119) hide show
  1. package/dist/chunks/module-main.mjs +11 -7
  2. package/dist/chunks/vscode.mjs +1 -1
  3. package/dist/client/200.html +23 -23
  4. package/dist/client/404.html +23 -23
  5. package/dist/client/_nuxt/__blank-nqwixhj1.js +1 -0
  6. package/dist/client/_nuxt/{analyze-build-idrs40qo.js → analyze-build-o4s5ob2q.js} +1 -1
  7. package/dist/client/_nuxt/{assets-e3ilwhov.js → assets-huxgsitw.js} +3 -3
  8. package/dist/client/_nuxt/builds/latest.json +1 -1
  9. package/dist/client/_nuxt/builds/meta/bc495f3e-a5e4-477e-bd8b-c102bb505b43.json +1 -0
  10. package/dist/client/_nuxt/{client-bqg1k5yt.js → client-etfulgf7.js} +1 -1
  11. package/dist/client/_nuxt/{code-diff.vue-b4zesg2m.js → code-diff.vue-dvzw16bz.js} +3 -3
  12. package/dist/client/_nuxt/{code-snippets.vue-ykn1susa.js → code-snippets.vue-yqoxee04.js} +1 -1
  13. package/dist/client/_nuxt/components-edsbjzww.js +1 -0
  14. package/dist/client/_nuxt/composable-item.vue-izr4dc9x.js +1 -0
  15. package/dist/client/_nuxt/custom-_name_-xxdc4xyk.js +1 -0
  16. package/dist/client/_nuxt/data-schema-button.vue-oxz1jnzv.js +1 -0
  17. package/dist/client/_nuxt/data-schema-drawer-dv9md89s.js +2 -0
  18. package/dist/client/_nuxt/{debug-bp2bd2tn.js → debug-iijfcpov.js} +1 -1
  19. package/dist/client/_nuxt/{default-kpux2v9f.js → default-pd4kv06p.js} +1 -1
  20. package/dist/client/_nuxt/duration-display.vue-ibudjtt4.js +1 -0
  21. package/dist/client/_nuxt/entry.css-nlmjo2pz.css +1 -0
  22. package/dist/client/_nuxt/error-404-jsmb2ylw.js +1 -0
  23. package/dist/client/_nuxt/error-404.css-lvo9ozyv.css +1 -0
  24. package/dist/client/_nuxt/error-500-mbsayqot.js +1 -0
  25. package/dist/client/_nuxt/error-500.css-lrbzpi5q.css +1 -0
  26. package/dist/client/_nuxt/{error-b5i28d1t.js → error-h1v9m9m6.js} +5 -5
  27. package/dist/client/_nuxt/f1cbvne4.js +15 -0
  28. package/dist/client/_nuxt/{filepath-item.vue-s3q6jdef.js → filepath-item.vue-br6hjwqx.js} +1 -1
  29. package/dist/client/_nuxt/full-fcbl8hea.js +1 -0
  30. package/dist/client/_nuxt/{help-fab.vue-b1e9nf8h.js → help-fab.vue-gswykw6o.js} +1 -1
  31. package/dist/client/_nuxt/{hooks-fph68xmw.js → hooks-gejjjavi.js} +1 -1
  32. package/dist/client/_nuxt/{imports-kllbosaw.js → imports-lgt9tkvl.js} +1 -1
  33. package/dist/client/_nuxt/{index-fd9byf0f.js → index-mkswwai7.js} +1 -1
  34. package/dist/client/_nuxt/launch-page.vue-jvl04rwq.js +1 -0
  35. package/dist/client/_nuxt/modules-oiyvev1x.js +1 -0
  36. package/dist/client/_nuxt/nbadge-lodw2y18.js +1 -0
  37. package/dist/client/_nuxt/ncheckbox.vue-jtldzl6k.js +1 -0
  38. package/dist/client/_nuxt/{ncode-block.vue-h2q9yyre.js → ncode-block.vue-lex5o4lv.js} +2 -2
  39. package/dist/client/_nuxt/{ndrawer.vue-hnel52og.js → ndrawer.vue-nkn577bf.js} +1 -1
  40. package/dist/client/_nuxt/{ndropdown.vue-ml5ywt1n.js → ndropdown.vue-ji36i25f.js} +1 -1
  41. package/dist/client/_nuxt/{nicon-title.vue-oyhtd7jm.js → nicon-title.vue-g35plvi8.js} +1 -1
  42. package/dist/client/_nuxt/{nlink.vue-nphpybg3.js → nlink.vue-gepdvjyn.js} +1 -1
  43. package/dist/client/_nuxt/nmarkdown.vue-gamlcow3.js +1 -0
  44. package/dist/client/_nuxt/nnavbar.vue-exzr4e5w.js +1 -0
  45. package/dist/client/_nuxt/none-nffzj9cd.js +1 -0
  46. package/dist/client/_nuxt/{nsection-block-ks0zvsnl.js → nsection-block-x8dothd4.js} +1 -1
  47. package/dist/client/_nuxt/{nselect-tabs.vue-c2rnmdda.js → nselect-tabs.vue-l5x0yirx.js} +1 -1
  48. package/dist/client/_nuxt/{nselect.vue-dk87d34h.js → nselect.vue-jigqjeiw.js} +1 -1
  49. package/dist/client/_nuxt/{nswitch.vue-fl7pkx4a.js → nswitch.vue-km9qm824.js} +1 -1
  50. package/dist/client/_nuxt/{open-graph-7qcimj73.js → open-graph-nz4i7u7j.js} +2 -2
  51. package/dist/client/_nuxt/{overview-b0stoyoa.js → overview-n2xqscmi.js} +1 -1
  52. package/dist/client/_nuxt/{pages-ikx7ur6v.js → pages-cu5a742d.js} +1 -1
  53. package/dist/client/_nuxt/{payload-d2gahatk.js → payload-jugfo4ki.js} +1 -1
  54. package/dist/client/_nuxt/pinia-gsipwrbm.js +1 -0
  55. package/dist/client/_nuxt/{plugins-gy9f4dm1.js → plugins-cchxh0ve.js} +1 -1
  56. package/dist/client/_nuxt/render-tree-gxqpdalx.js +1 -0
  57. package/dist/client/_nuxt/{runtime-configs-jytjx20l.js → runtime-configs-lkma1hwx.js} +1 -1
  58. package/dist/client/_nuxt/{server-discovery-f0942rof.js → server-discovery-blv2rxq3.js} +1 -1
  59. package/dist/client/_nuxt/{server-route-inputs.vue-nbeou62b.js → server-route-inputs.vue-cjdtnuu4.js} +1 -1
  60. package/dist/client/_nuxt/server-routes-ove4utlk.js +9 -0
  61. package/dist/client/_nuxt/server-tasks-i8kjqc0d.js +1 -0
  62. package/dist/client/_nuxt/{settings-ent32lta.js → settings-jkgzzend.js} +1 -1
  63. package/dist/client/_nuxt/stacktrace-list.vue-b70k1t8t.js +1 -0
  64. package/dist/client/_nuxt/{state-components-fozkevcs.js → state-components-ittrf6yq.js} +1 -1
  65. package/dist/client/_nuxt/state-editor.vue-j3haepux.js +1 -0
  66. package/dist/client/_nuxt/state-modules-b39szh0f.js +1 -0
  67. package/dist/client/_nuxt/storage-mf5e8tar.js +1 -0
  68. package/dist/client/_nuxt/terminals-e8xd9utc.js +1 -0
  69. package/dist/client/_nuxt/timeline-jtxqs7h6.js +31 -0
  70. package/dist/client/_nuxt/{unocss-runtime-bag0aauk.js → unocss-runtime-o1gs2hkj.js} +1 -1
  71. package/dist/client/_nuxt/vendor/json-editor-vue-g7zhhq6q.js +3872 -0
  72. package/dist/client/_nuxt/vendor/{quicktype-core-klbd9u2j.js → quicktype-core-gg1jfx29.js} +27 -27
  73. package/dist/client/_nuxt/vendor/shiki-hjqm7vcp.js +152 -0
  74. package/dist/client/_nuxt/vendor/unocss-hvn0t0zz.js +2 -0
  75. package/dist/client/_nuxt/vendor/{vis-fth2qiu5.js → vis-gqe7ml2e.js} +2 -2
  76. package/dist/client/_nuxt/{virtual-files-gzdrc3h1.js → virtual-files-xlijdz1c.js} +1 -1
  77. package/dist/client/_nuxt/vue-devtools-l0o7d54g.js +2 -0
  78. package/dist/client/_nuxt/{vue-virtual-scroller.esm-bjuzk3oj.js → vue-virtual-scroller.esm-b2tvdrfk.js} +2 -2
  79. package/dist/client/index.html +23 -23
  80. package/dist/module.json +1 -1
  81. package/dist/module.mjs +1 -1
  82. package/dist/shared/{devtools.c069f83f.mjs → devtools.d413ad55.mjs} +1 -1
  83. package/package.json +36 -36
  84. package/dist/client/_nuxt/__blank-mlfs714t.js +0 -1
  85. package/dist/client/_nuxt/builds/meta/de8623d3-d100-4ce3-86db-7538a633d3fc.json +0 -1
  86. package/dist/client/_nuxt/components-mtpadmm9.js +0 -1
  87. package/dist/client/_nuxt/composable-item.vue-fn5i5dce.js +0 -1
  88. package/dist/client/_nuxt/custom-_name_-koqx209a.js +0 -1
  89. package/dist/client/_nuxt/data-schema-button.vue-hvsnt6qe.js +0 -1
  90. package/dist/client/_nuxt/data-schema-drawer-bofstkui.js +0 -2
  91. package/dist/client/_nuxt/duration-display.vue-lb5nc1xj.js +0 -1
  92. package/dist/client/_nuxt/entry.css-n6hiodwz.css +0 -1
  93. package/dist/client/_nuxt/error-404-cvmqmcrd.js +0 -1
  94. package/dist/client/_nuxt/error-404.css-lr4x8rvs.css +0 -1
  95. package/dist/client/_nuxt/error-500-mhqzizmh.js +0 -1
  96. package/dist/client/_nuxt/error-500.css-k7guqst3.css +0 -1
  97. package/dist/client/_nuxt/full-brbjd7n6.js +0 -1
  98. package/dist/client/_nuxt/launch-page.vue-hd8pnvb5.js +0 -1
  99. package/dist/client/_nuxt/modules-d7iriz43.js +0 -1
  100. package/dist/client/_nuxt/nbadge-jgp7a07l.js +0 -1
  101. package/dist/client/_nuxt/ncheckbox.vue-iwykr78c.js +0 -1
  102. package/dist/client/_nuxt/nmarkdown.vue-io3ubke7.js +0 -1
  103. package/dist/client/_nuxt/nnavbar.vue-kfo4lqnc.js +0 -1
  104. package/dist/client/_nuxt/none-pd53m4yx.js +0 -1
  105. package/dist/client/_nuxt/oab4uvjd.js +0 -15
  106. package/dist/client/_nuxt/pinia-gbqeint6.js +0 -1
  107. package/dist/client/_nuxt/render-tree-ea4awh5n.js +0 -1
  108. package/dist/client/_nuxt/server-routes-dix6bjz2.js +0 -9
  109. package/dist/client/_nuxt/server-tasks-d9iohe82.js +0 -1
  110. package/dist/client/_nuxt/stacktrace-list.vue-oux2fue5.js +0 -1
  111. package/dist/client/_nuxt/state-editor.vue-bl1zlw1a.js +0 -1
  112. package/dist/client/_nuxt/state-modules-no8ekiri.js +0 -1
  113. package/dist/client/_nuxt/storage-j8098f5l.js +0 -1
  114. package/dist/client/_nuxt/terminals-o789apno.js +0 -1
  115. package/dist/client/_nuxt/timeline-cbarwogf.js +0 -31
  116. package/dist/client/_nuxt/vendor/json-editor-vue-huf8dypo.js +0 -3846
  117. package/dist/client/_nuxt/vendor/shiki-jv02kgzv.js +0 -289
  118. package/dist/client/_nuxt/vendor/unocss-e7oqigho.js +0 -2
  119. package/dist/client/_nuxt/vue-devtools-bytnbcyb.js +0 -2
@@ -1,2 +1,2 @@
1
- import{p as Q,Y as re,Z as ne,$ as oe,R as P,a0 as $,ax as le,s as ae,X as ue,af as ce,a9 as de,O as M,Q as W,a2 as fe,S as A,a1 as K,F as he,ad as me,ac as q,a3 as pe,ay as ye,W as Y,U as ve}from"./vendor/json-editor-vue-huf8dypo.js";function be(){var e=window.navigator.userAgent,t=e.indexOf("MSIE ");if(t>0)return parseInt(e.substring(t+5,e.indexOf(".",t)),10);var i=e.indexOf("Trident/");if(i>0){var s=e.indexOf("rv:");return parseInt(e.substring(s+3,e.indexOf(".",s)),10)}var r=e.indexOf("Edge/");return r>0?parseInt(e.substring(r+5,e.indexOf(".",r)),10):-1}let R;function H(){H.init||(H.init=!0,R=be()!==-1)}var E={name:"ResizeObserver",props:{emitOnMount:{type:Boolean,default:!1},ignoreWidth:{type:Boolean,default:!1},ignoreHeight:{type:Boolean,default:!1}},emits:["notify"],mounted(){H(),Q(()=>{this._w=this.$el.offsetWidth,this._h=this.$el.offsetHeight,this.emitOnMount&&this.emitSize()});const e=document.createElement("object");this._resizeObject=e,e.setAttribute("aria-hidden","true"),e.setAttribute("tabindex",-1),e.onload=this.addResizeHandlers,e.type="text/html",R&&this.$el.appendChild(e),e.data="about:blank",R||this.$el.appendChild(e)},beforeUnmount(){this.removeResizeHandlers()},methods:{compareAndNotify(){(!this.ignoreWidth&&this._w!==this.$el.offsetWidth||!this.ignoreHeight&&this._h!==this.$el.offsetHeight)&&(this._w=this.$el.offsetWidth,this._h=this.$el.offsetHeight,this.emitSize())},emitSize(){this.$emit("notify",{width:this._w,height:this._h})},addResizeHandlers(){this._resizeObject.contentDocument.defaultView.addEventListener("resize",this.compareAndNotify),this.compareAndNotify()},removeResizeHandlers(){this._resizeObject&&this._resizeObject.onload&&(!R&&this._resizeObject.contentDocument&&this._resizeObject.contentDocument.defaultView.removeEventListener("resize",this.compareAndNotify),this.$el.removeChild(this._resizeObject),this._resizeObject.onload=null,this._resizeObject=null)}}};const ge=oe();re("data-v-b329ee4c");const Se={class:"resize-observer",tabindex:"-1"};ne();const ze=ge((e,t,i,s,r,a)=>($(),P("div",Se)));E.render=ze;E.__scopeId="data-v-b329ee4c";E.__file="src/components/ResizeObserver.vue";function C(e){"@babel/helpers - typeof";return typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?C=function(t){return typeof t}:C=function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},C(e)}function _e(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function we(e,t){for(var i=0;i<t.length;i++){var s=t[i];s.enumerable=s.enumerable||!1,s.configurable=!0,"value"in s&&(s.writable=!0),Object.defineProperty(e,s.key,s)}}function Ie(e,t,i){return t&&we(e.prototype,t),e}function X(e){return $e(e)||Te(e)||Oe(e)||Ve()}function $e(e){if(Array.isArray(e))return N(e)}function Te(e){if(typeof Symbol<"u"&&Symbol.iterator in Object(e))return Array.from(e)}function Oe(e,t){if(e){if(typeof e=="string")return N(e,t);var i=Object.prototype.toString.call(e).slice(8,-1);if(i==="Object"&&e.constructor&&(i=e.constructor.name),i==="Map"||i==="Set")return Array.from(e);if(i==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(i))return N(e,t)}}function N(e,t){(t==null||t>e.length)&&(t=e.length);for(var i=0,s=new Array(t);i<t;i++)s[i]=e[i];return s}function Ve(){throw new TypeError(`Invalid attempt to spread non-iterable instance.
2
- In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function xe(e){var t;return typeof e=="function"?t={callback:e}:t=e,t}function ke(e,t){var i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},s,r,a,u=function(n){for(var d=arguments.length,p=new Array(d>1?d-1:0),S=1;S<d;S++)p[S-1]=arguments[S];if(a=p,!(s&&n===r)){var w=i.leading;typeof w=="function"&&(w=w(n,r)),(!s||n!==r)&&w&&e.apply(void 0,[n].concat(X(a))),r=n,clearTimeout(s),s=setTimeout(function(){e.apply(void 0,[n].concat(X(a))),s=0},t)}};return u._clear=function(){clearTimeout(s),s=null},u}function Z(e,t){if(e===t)return!0;if(C(e)==="object"){for(var i in e)if(!Z(e[i],t[i]))return!1;return!0}return!1}var Me=function(){function e(t,i,s){_e(this,e),this.el=t,this.observer=null,this.frozen=!1,this.createObserver(i,s)}return Ie(e,[{key:"createObserver",value:function(i,s){var r=this;if(this.observer&&this.destroyObserver(),!this.frozen){if(this.options=xe(i),this.callback=function(c,n){r.options.callback(c,n),c&&r.options.once&&(r.frozen=!0,r.destroyObserver())},this.callback&&this.options.throttle){var a=this.options.throttleOptions||{},u=a.leading;this.callback=ke(this.callback,this.options.throttle,{leading:function(n){return u==="both"||u==="visible"&&n||u==="hidden"&&!n}})}this.oldResult=void 0,this.observer=new IntersectionObserver(function(c){var n=c[0];if(c.length>1){var d=c.find(function(S){return S.isIntersecting});d&&(n=d)}if(r.callback){var p=n.isIntersecting&&n.intersectionRatio>=r.threshold;if(p===r.oldResult)return;r.oldResult=p,r.callback(p,n)}},this.options.intersection),Q(function(){r.observer&&r.observer.observe(r.el)})}}},{key:"destroyObserver",value:function(){this.observer&&(this.observer.disconnect(),this.observer=null),this.callback&&this.callback._clear&&(this.callback._clear(),this.callback=null)}},{key:"threshold",get:function(){return this.options.intersection&&typeof this.options.intersection.threshold=="number"?this.options.intersection.threshold:0}}]),e}();function J(e,t,i){var s=t.value;if(s)if(typeof IntersectionObserver>"u")console.warn("[vue-observe-visibility] IntersectionObserver API is not available in your browser. Please install this polyfill: https://github.com/w3c/IntersectionObserver/tree/master/polyfill");else{var r=new Me(e,s,i);e._vue_visibilityState=r}}function Ae(e,t,i){var s=t.value,r=t.oldValue;if(!Z(s,r)){var a=e._vue_visibilityState;if(!s){ee(e);return}a?a.createObserver(s,i):J(e,{value:s},i)}}function ee(e){var t=e._vue_visibilityState;t&&(t.destroyObserver(),delete e._vue_visibilityState)}var Re={beforeMount:J,updated:Ae,unmounted:ee},Ce={itemsLimit:1e3},Ee=/(auto|scroll)/;function te(e,t){return e.parentNode===null?t:te(e.parentNode,t.concat([e]))}var L=function(t,i){return getComputedStyle(t,null).getPropertyValue(i)},Le=function(t){return L(t,"overflow")+L(t,"overflow-y")+L(t,"overflow-x")},Pe=function(t){return Ee.test(Le(t))};function G(e){if(e instanceof HTMLElement||e instanceof SVGElement){for(var t=te(e.parentNode,[]),i=0;i<t.length;i+=1)if(Pe(t[i]))return t[i];return document.scrollingElement||document.documentElement}}function j(e){"@babel/helpers - typeof";return j=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},j(e)}var He={items:{type:Array,required:!0},keyField:{type:String,default:"id"},direction:{type:String,default:"vertical",validator:function(t){return["vertical","horizontal"].includes(t)}},listTag:{type:String,default:"div"},itemTag:{type:String,default:"div"}};function Ne(){return this.items.length&&j(this.items[0])!=="object"}var B=!1;if(typeof window<"u"){B=!1;try{var je=Object.defineProperty({},"passive",{get:function(){B=!0}});window.addEventListener("test",null,je)}catch{}}let Be=0;var ie={name:"RecycleScroller",components:{ResizeObserver:E},directives:{ObserveVisibility:Re},props:{...He,itemSize:{type:Number,default:null},gridItems:{type:Number,default:void 0},itemSecondarySize:{type:Number,default:void 0},minItemSize:{type:[Number,String],default:null},sizeField:{type:String,default:"size"},typeField:{type:String,default:"type"},buffer:{type:Number,default:200},pageMode:{type:Boolean,default:!1},prerender:{type:Number,default:0},emitUpdate:{type:Boolean,default:!1},updateInterval:{type:Number,default:0},skipHover:{type:Boolean,default:!1},listTag:{type:String,default:"div"},itemTag:{type:String,default:"div"},listClass:{type:[String,Object,Array],default:""},itemClass:{type:[String,Object,Array],default:""}},emits:["resize","visible","hidden","update","scroll-start","scroll-end"],data(){return{pool:[],totalSize:0,ready:!1,hoverKey:null}},computed:{sizes(){if(this.itemSize===null){const e={"-1":{accumulator:0}},t=this.items,i=this.sizeField,s=this.minItemSize;let r=1e4,a=0,u;for(let c=0,n=t.length;c<n;c++)u=t[c][i]||s,u<r&&(r=u),a+=u,e[c]={accumulator:a,size:u};return this.$_computedMinItemSize=r,e}return[]},simpleArray:Ne,itemIndexByKey(){const{keyField:e,items:t}=this,i={};for(let s=0,r=t.length;s<r;s++)i[t[s][e]]=s;return i}},watch:{items(){this.updateVisibleItems(!0)},pageMode(){this.applyPageMode(),this.updateVisibleItems(!1)},sizes:{handler(){this.updateVisibleItems(!1)},deep:!0},gridItems(){this.updateVisibleItems(!0)},itemSecondarySize(){this.updateVisibleItems(!0)}},created(){this.$_startIndex=0,this.$_endIndex=0,this.$_views=new Map,this.$_unusedViews=new Map,this.$_scrollDirty=!1,this.$_lastUpdateScrollPosition=0,this.prerender&&(this.$_prerender=!0,this.updateVisibleItems(!1)),this.gridItems&&!this.itemSize&&console.error("[vue-recycle-scroller] You must provide an itemSize when using gridItems")},mounted(){this.applyPageMode(),this.$nextTick(()=>{this.$_prerender=!1,this.updateVisibleItems(!0),this.ready=!0})},activated(){const e=this.$_lastUpdateScrollPosition;typeof e=="number"&&this.$nextTick(()=>{this.scrollToPosition(e)})},beforeUnmount(){this.removeListeners()},methods:{addView(e,t,i,s,r){const a=le({id:Be++,index:t,used:!0,key:s,type:r}),u=ae({item:i,position:0,nr:a});return e.push(u),u},unuseView(e,t=!1){const i=this.$_unusedViews,s=e.nr.type;let r=i.get(s);r||(r=[],i.set(s,r)),r.push(e),t||(e.nr.used=!1,e.position=-9999)},handleResize(){this.$emit("resize"),this.ready&&this.updateVisibleItems(!1)},handleScroll(e){if(!this.$_scrollDirty){if(this.$_scrollDirty=!0,this.$_updateTimeout)return;const t=()=>requestAnimationFrame(()=>{this.$_scrollDirty=!1;const{continuous:i}=this.updateVisibleItems(!1,!0);i||(clearTimeout(this.$_refreshTimout),this.$_refreshTimout=setTimeout(this.handleScroll,this.updateInterval+100))});t(),this.updateInterval&&(this.$_updateTimeout=setTimeout(()=>{this.$_updateTimeout=0,this.$_scrollDirty&&t()},this.updateInterval))}},handleVisibilityChange(e,t){this.ready&&(e||t.boundingClientRect.width!==0||t.boundingClientRect.height!==0?(this.$emit("visible"),requestAnimationFrame(()=>{this.updateVisibleItems(!1)})):this.$emit("hidden"))},updateVisibleItems(e,t=!1){const i=this.itemSize,s=this.gridItems||1,r=this.itemSecondarySize||i,a=this.$_computedMinItemSize,u=this.typeField,c=this.simpleArray?null:this.keyField,n=this.items,d=n.length,p=this.sizes,S=this.$_views,w=this.$_unusedViews,V=this.pool,se=this.itemIndexByKey;let y,f,T,g,z;if(!d)y=f=g=z=T=0;else if(this.$_prerender)y=g=0,f=z=Math.min(this.prerender,n.length),T=null;else{const o=this.getScroll();if(t){let m=o.start-this.$_lastUpdateScrollPosition;if(m<0&&(m=-m),i===null&&m<a||m<i)return{continuous:!0}}this.$_lastUpdateScrollPosition=o.start;const v=this.buffer;o.start-=v,o.end+=v;let h=0;if(this.$refs.before&&(h=this.$refs.before.scrollHeight,o.start-=h),this.$refs.after){const m=this.$refs.after.scrollHeight;o.end+=m}if(i===null){let m,O=0,F=d-1,b=~~(d/2),U;do U=b,m=p[b].accumulator,m<o.start?O=b:b<d-1&&p[b+1].accumulator>o.start&&(F=b),b=~~((O+F)/2);while(b!==U);for(b<0&&(b=0),y=b,T=p[d-1].accumulator,f=b;f<d&&p[f].accumulator<o.end;f++);for(f===-1?f=n.length-1:(f++,f>d&&(f=d)),g=y;g<d&&h+p[g].accumulator<o.start;g++);for(z=g;z<d&&h+p[z].accumulator<o.end;z++);}else{y=~~(o.start/i*s);const m=y%s;y-=m,f=Math.ceil(o.end/i*s),g=Math.max(0,Math.floor((o.start-h)/i*s)),z=Math.floor((o.end-h)/i*s),y<0&&(y=0),f>d&&(f=d),g<0&&(g=0),z>d&&(z=d),T=Math.ceil(d/s)*i}}f-y>Ce.itemsLimit&&this.itemsLimitError(),this.totalSize=T;let l;const x=y<=this.$_endIndex&&f>=this.$_startIndex;if(x)for(let o=0,v=V.length;o<v;o++)l=V[o],l.nr.used&&(e&&(l.nr.index=se[l.item[c]]),(l.nr.index==null||l.nr.index<y||l.nr.index>=f)&&this.unuseView(l));const D=x?null:new Map;let I,_,k;for(let o=y;o<f;o++){I=n[o];const v=c?I[c]:I;if(v==null)throw new Error(`Key is ${v} on item (keyField is '${c}')`);if(l=S.get(v),!i&&!p[o].size){l&&this.unuseView(l);continue}_=I[u];let h=w.get(_),m=!1;if(!l)x?h&&h.length?l=h.pop():l=this.addView(V,o,I,v,_):(k=D.get(_)||0,(!h||k>=h.length)&&(l=this.addView(V,o,I,v,_),this.unuseView(l,!0),h=w.get(_)),l=h[k],D.set(_,k+1)),S.delete(l.nr.key),l.nr.used=!0,l.nr.index=o,l.nr.key=v,l.nr.type=_,S.set(v,l),m=!0;else if(!l.nr.used&&(l.nr.used=!0,m=!0,h)){const O=h.indexOf(l);O!==-1&&h.splice(O,1)}l.item=I,m&&(o===n.length-1&&this.$emit("scroll-end"),o===0&&this.$emit("scroll-start")),i===null?(l.position=p[o-1].accumulator,l.offset=0):(l.position=Math.floor(o/s)*i,l.offset=o%s*r)}return this.$_startIndex=y,this.$_endIndex=f,this.emitUpdate&&this.$emit("update",y,f,g,z),clearTimeout(this.$_sortTimer),this.$_sortTimer=setTimeout(this.sortViews,this.updateInterval+300),{continuous:x}},getListenerTarget(){let e=G(this.$el);return window.document&&(e===window.document.documentElement||e===window.document.body)&&(e=window),e},getScroll(){const{$el:e,direction:t}=this,i=t==="vertical";let s;if(this.pageMode){const r=e.getBoundingClientRect(),a=i?r.height:r.width;let u=-(i?r.top:r.left),c=i?window.innerHeight:window.innerWidth;u<0&&(c+=u,u=0),u+c>a&&(c=a-u),s={start:u,end:u+c}}else i?s={start:e.scrollTop,end:e.scrollTop+e.clientHeight}:s={start:e.scrollLeft,end:e.scrollLeft+e.clientWidth};return s},applyPageMode(){this.pageMode?this.addListeners():this.removeListeners()},addListeners(){this.listenerTarget=this.getListenerTarget(),this.listenerTarget.addEventListener("scroll",this.handleScroll,B?{passive:!0}:!1),this.listenerTarget.addEventListener("resize",this.handleResize)},removeListeners(){this.listenerTarget&&(this.listenerTarget.removeEventListener("scroll",this.handleScroll),this.listenerTarget.removeEventListener("resize",this.handleResize),this.listenerTarget=null)},scrollToItem(e){let t;const i=this.gridItems||1;this.itemSize===null?t=e>0?this.sizes[e-1].accumulator:0:t=Math.floor(e/i)*this.itemSize,this.scrollToPosition(t)},scrollToPosition(e){const t=this.direction==="vertical"?{scroll:"scrollTop",start:"top"}:{scroll:"scrollLeft",start:"left"};let i,s,r;if(this.pageMode){const a=G(this.$el),u=a.tagName==="HTML"?0:a[t.scroll],c=a.getBoundingClientRect(),d=this.$el.getBoundingClientRect()[t.start]-c[t.start];i=a,s=t.scroll,r=e+u+d}else i=this.$el,s=t.scroll,r=e;i[s]=r},itemsLimitError(){throw setTimeout(()=>{console.log("It seems the scroller element isn't scrolling, so it tries to render all the items at once.","Scroller:",this.$el),console.log("Make sure the scroller has a fixed height (or width) and 'overflow-y' (or 'overflow-x') set to 'auto' so it can scroll correctly and only render the items visible in the scroll viewport.")}),new Error("Rendered items limit reached")},sortViews(){this.pool.sort((e,t)=>e.nr.index-t.nr.index)}}};const De={key:0,ref:"before",class:"vue-recycle-scroller__slot"},Fe={key:1,ref:"after",class:"vue-recycle-scroller__slot"};function Ue(e,t,i,s,r,a){const u=ue("ResizeObserver"),c=ce("observe-visibility");return de(($(),M("div",{class:Y(["vue-recycle-scroller",{ready:r.ready,"page-mode":i.pageMode,[`direction-${e.direction}`]:!0}]),onScrollPassive:t[0]||(t[0]=(...n)=>a.handleScroll&&a.handleScroll(...n))},[e.$slots.before?($(),M("div",De,[A(e.$slots,"before")],512)):W("v-if",!0),($(),P(q(i.listTag),{ref:"wrapper",style:ve({[e.direction==="vertical"?"minHeight":"minWidth"]:r.totalSize+"px"}),class:Y(["vue-recycle-scroller__item-wrapper",i.listClass])},{default:K(()=>[($(!0),M(he,null,me(r.pool,n=>($(),P(q(i.itemTag),pe({key:n.nr.id,style:r.ready?{transform:`translate${e.direction==="vertical"?"Y":"X"}(${n.position}px) translate${e.direction==="vertical"?"X":"Y"}(${n.offset}px)`,width:i.gridItems?`${e.direction==="vertical"&&i.itemSecondarySize||i.itemSize}px`:void 0,height:i.gridItems?`${e.direction==="horizontal"&&i.itemSecondarySize||i.itemSize}px`:void 0}:null,class:["vue-recycle-scroller__item-view",[i.itemClass,{hover:!i.skipHover&&r.hoverKey===n.nr.key}]]},ye(i.skipHover?{}:{mouseenter:()=>{r.hoverKey=n.nr.key},mouseleave:()=>{r.hoverKey=null}})),{default:K(()=>[A(e.$slots,"default",{item:n.item,index:n.nr.index,active:n.nr.used})]),_:2},1040,["style","class"]))),128)),A(e.$slots,"empty")]),_:3},8,["style","class"])),e.$slots.after?($(),M("div",Fe,[A(e.$slots,"after")],512)):W("v-if",!0),fe(u,{onNotify:a.handleResize},null,8,["onNotify"])],34)),[[c,a.handleVisibilityChange]])}ie.render=Ue;ie.__file="src/components/RecycleScroller.vue";export{ie as s};
1
+ import{z as Z,$ as re,a0 as ne,a1 as oe,U as P,a2 as $,az as le,s as ae,Z as ue,ah as ce,ab as de,I as M,S as W,a4 as fe,V as A,a3 as K,F as he,af as me,ae as q,a5 as pe,aA as ye,Y,W as ve}from"./vendor/json-editor-vue-g7zhhq6q.js";function be(){var e=window.navigator.userAgent,t=e.indexOf("MSIE ");if(t>0)return parseInt(e.substring(t+5,e.indexOf(".",t)),10);var i=e.indexOf("Trident/");if(i>0){var s=e.indexOf("rv:");return parseInt(e.substring(s+3,e.indexOf(".",s)),10)}var r=e.indexOf("Edge/");return r>0?parseInt(e.substring(r+5,e.indexOf(".",r)),10):-1}let R;function H(){H.init||(H.init=!0,R=be()!==-1)}var E={name:"ResizeObserver",props:{emitOnMount:{type:Boolean,default:!1},ignoreWidth:{type:Boolean,default:!1},ignoreHeight:{type:Boolean,default:!1}},emits:["notify"],mounted(){H(),Z(()=>{this._w=this.$el.offsetWidth,this._h=this.$el.offsetHeight,this.emitOnMount&&this.emitSize()});const e=document.createElement("object");this._resizeObject=e,e.setAttribute("aria-hidden","true"),e.setAttribute("tabindex",-1),e.onload=this.addResizeHandlers,e.type="text/html",R&&this.$el.appendChild(e),e.data="about:blank",R||this.$el.appendChild(e)},beforeUnmount(){this.removeResizeHandlers()},methods:{compareAndNotify(){(!this.ignoreWidth&&this._w!==this.$el.offsetWidth||!this.ignoreHeight&&this._h!==this.$el.offsetHeight)&&(this._w=this.$el.offsetWidth,this._h=this.$el.offsetHeight,this.emitSize())},emitSize(){this.$emit("notify",{width:this._w,height:this._h})},addResizeHandlers(){this._resizeObject.contentDocument.defaultView.addEventListener("resize",this.compareAndNotify),this.compareAndNotify()},removeResizeHandlers(){this._resizeObject&&this._resizeObject.onload&&(!R&&this._resizeObject.contentDocument&&this._resizeObject.contentDocument.defaultView.removeEventListener("resize",this.compareAndNotify),this.$el.removeChild(this._resizeObject),this._resizeObject.onload=null,this._resizeObject=null)}}};const ge=oe();re("data-v-b329ee4c");const Se={class:"resize-observer",tabindex:"-1"};ne();const ze=ge((e,t,i,s,r,a)=>($(),P("div",Se)));E.render=ze;E.__scopeId="data-v-b329ee4c";E.__file="src/components/ResizeObserver.vue";function C(e){"@babel/helpers - typeof";return typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?C=function(t){return typeof t}:C=function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},C(e)}function _e(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function we(e,t){for(var i=0;i<t.length;i++){var s=t[i];s.enumerable=s.enumerable||!1,s.configurable=!0,"value"in s&&(s.writable=!0),Object.defineProperty(e,s.key,s)}}function Ie(e,t,i){return t&&we(e.prototype,t),e}function X(e){return $e(e)||Te(e)||Oe(e)||Ve()}function $e(e){if(Array.isArray(e))return N(e)}function Te(e){if(typeof Symbol<"u"&&Symbol.iterator in Object(e))return Array.from(e)}function Oe(e,t){if(e){if(typeof e=="string")return N(e,t);var i=Object.prototype.toString.call(e).slice(8,-1);if(i==="Object"&&e.constructor&&(i=e.constructor.name),i==="Map"||i==="Set")return Array.from(e);if(i==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(i))return N(e,t)}}function N(e,t){(t==null||t>e.length)&&(t=e.length);for(var i=0,s=new Array(t);i<t;i++)s[i]=e[i];return s}function Ve(){throw new TypeError(`Invalid attempt to spread non-iterable instance.
2
+ In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function xe(e){var t;return typeof e=="function"?t={callback:e}:t=e,t}function ke(e,t){var i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},s,r,a,u=function(n){for(var d=arguments.length,p=new Array(d>1?d-1:0),S=1;S<d;S++)p[S-1]=arguments[S];if(a=p,!(s&&n===r)){var w=i.leading;typeof w=="function"&&(w=w(n,r)),(!s||n!==r)&&w&&e.apply(void 0,[n].concat(X(a))),r=n,clearTimeout(s),s=setTimeout(function(){e.apply(void 0,[n].concat(X(a))),s=0},t)}};return u._clear=function(){clearTimeout(s),s=null},u}function J(e,t){if(e===t)return!0;if(C(e)==="object"){for(var i in e)if(!J(e[i],t[i]))return!1;return!0}return!1}var Me=function(){function e(t,i,s){_e(this,e),this.el=t,this.observer=null,this.frozen=!1,this.createObserver(i,s)}return Ie(e,[{key:"createObserver",value:function(i,s){var r=this;if(this.observer&&this.destroyObserver(),!this.frozen){if(this.options=xe(i),this.callback=function(c,n){r.options.callback(c,n),c&&r.options.once&&(r.frozen=!0,r.destroyObserver())},this.callback&&this.options.throttle){var a=this.options.throttleOptions||{},u=a.leading;this.callback=ke(this.callback,this.options.throttle,{leading:function(n){return u==="both"||u==="visible"&&n||u==="hidden"&&!n}})}this.oldResult=void 0,this.observer=new IntersectionObserver(function(c){var n=c[0];if(c.length>1){var d=c.find(function(S){return S.isIntersecting});d&&(n=d)}if(r.callback){var p=n.isIntersecting&&n.intersectionRatio>=r.threshold;if(p===r.oldResult)return;r.oldResult=p,r.callback(p,n)}},this.options.intersection),Z(function(){r.observer&&r.observer.observe(r.el)})}}},{key:"destroyObserver",value:function(){this.observer&&(this.observer.disconnect(),this.observer=null),this.callback&&this.callback._clear&&(this.callback._clear(),this.callback=null)}},{key:"threshold",get:function(){return this.options.intersection&&typeof this.options.intersection.threshold=="number"?this.options.intersection.threshold:0}}]),e}();function Q(e,t,i){var s=t.value;if(s)if(typeof IntersectionObserver>"u")console.warn("[vue-observe-visibility] IntersectionObserver API is not available in your browser. Please install this polyfill: https://github.com/w3c/IntersectionObserver/tree/master/polyfill");else{var r=new Me(e,s,i);e._vue_visibilityState=r}}function Ae(e,t,i){var s=t.value,r=t.oldValue;if(!J(s,r)){var a=e._vue_visibilityState;if(!s){ee(e);return}a?a.createObserver(s,i):Q(e,{value:s},i)}}function ee(e){var t=e._vue_visibilityState;t&&(t.destroyObserver(),delete e._vue_visibilityState)}var Re={beforeMount:Q,updated:Ae,unmounted:ee},Ce={itemsLimit:1e3},Ee=/(auto|scroll)/;function te(e,t){return e.parentNode===null?t:te(e.parentNode,t.concat([e]))}var L=function(t,i){return getComputedStyle(t,null).getPropertyValue(i)},Le=function(t){return L(t,"overflow")+L(t,"overflow-y")+L(t,"overflow-x")},Pe=function(t){return Ee.test(Le(t))};function G(e){if(e instanceof HTMLElement||e instanceof SVGElement){for(var t=te(e.parentNode,[]),i=0;i<t.length;i+=1)if(Pe(t[i]))return t[i];return document.scrollingElement||document.documentElement}}function j(e){"@babel/helpers - typeof";return j=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},j(e)}var He={items:{type:Array,required:!0},keyField:{type:String,default:"id"},direction:{type:String,default:"vertical",validator:function(t){return["vertical","horizontal"].includes(t)}},listTag:{type:String,default:"div"},itemTag:{type:String,default:"div"}};function Ne(){return this.items.length&&j(this.items[0])!=="object"}var B=!1;if(typeof window<"u"){B=!1;try{var je=Object.defineProperty({},"passive",{get:function(){B=!0}});window.addEventListener("test",null,je)}catch{}}let Be=0;var ie={name:"RecycleScroller",components:{ResizeObserver:E},directives:{ObserveVisibility:Re},props:{...He,itemSize:{type:Number,default:null},gridItems:{type:Number,default:void 0},itemSecondarySize:{type:Number,default:void 0},minItemSize:{type:[Number,String],default:null},sizeField:{type:String,default:"size"},typeField:{type:String,default:"type"},buffer:{type:Number,default:200},pageMode:{type:Boolean,default:!1},prerender:{type:Number,default:0},emitUpdate:{type:Boolean,default:!1},updateInterval:{type:Number,default:0},skipHover:{type:Boolean,default:!1},listTag:{type:String,default:"div"},itemTag:{type:String,default:"div"},listClass:{type:[String,Object,Array],default:""},itemClass:{type:[String,Object,Array],default:""}},emits:["resize","visible","hidden","update","scroll-start","scroll-end"],data(){return{pool:[],totalSize:0,ready:!1,hoverKey:null}},computed:{sizes(){if(this.itemSize===null){const e={"-1":{accumulator:0}},t=this.items,i=this.sizeField,s=this.minItemSize;let r=1e4,a=0,u;for(let c=0,n=t.length;c<n;c++)u=t[c][i]||s,u<r&&(r=u),a+=u,e[c]={accumulator:a,size:u};return this.$_computedMinItemSize=r,e}return[]},simpleArray:Ne,itemIndexByKey(){const{keyField:e,items:t}=this,i={};for(let s=0,r=t.length;s<r;s++)i[t[s][e]]=s;return i}},watch:{items(){this.updateVisibleItems(!0)},pageMode(){this.applyPageMode(),this.updateVisibleItems(!1)},sizes:{handler(){this.updateVisibleItems(!1)},deep:!0},gridItems(){this.updateVisibleItems(!0)},itemSecondarySize(){this.updateVisibleItems(!0)}},created(){this.$_startIndex=0,this.$_endIndex=0,this.$_views=new Map,this.$_unusedViews=new Map,this.$_scrollDirty=!1,this.$_lastUpdateScrollPosition=0,this.prerender&&(this.$_prerender=!0,this.updateVisibleItems(!1)),this.gridItems&&!this.itemSize&&console.error("[vue-recycle-scroller] You must provide an itemSize when using gridItems")},mounted(){this.applyPageMode(),this.$nextTick(()=>{this.$_prerender=!1,this.updateVisibleItems(!0),this.ready=!0})},activated(){const e=this.$_lastUpdateScrollPosition;typeof e=="number"&&this.$nextTick(()=>{this.scrollToPosition(e)})},beforeUnmount(){this.removeListeners()},methods:{addView(e,t,i,s,r){const a=le({id:Be++,index:t,used:!0,key:s,type:r}),u=ae({item:i,position:0,nr:a});return e.push(u),u},unuseView(e,t=!1){const i=this.$_unusedViews,s=e.nr.type;let r=i.get(s);r||(r=[],i.set(s,r)),r.push(e),t||(e.nr.used=!1,e.position=-9999)},handleResize(){this.$emit("resize"),this.ready&&this.updateVisibleItems(!1)},handleScroll(e){if(!this.$_scrollDirty){if(this.$_scrollDirty=!0,this.$_updateTimeout)return;const t=()=>requestAnimationFrame(()=>{this.$_scrollDirty=!1;const{continuous:i}=this.updateVisibleItems(!1,!0);i||(clearTimeout(this.$_refreshTimout),this.$_refreshTimout=setTimeout(this.handleScroll,this.updateInterval+100))});t(),this.updateInterval&&(this.$_updateTimeout=setTimeout(()=>{this.$_updateTimeout=0,this.$_scrollDirty&&t()},this.updateInterval))}},handleVisibilityChange(e,t){this.ready&&(e||t.boundingClientRect.width!==0||t.boundingClientRect.height!==0?(this.$emit("visible"),requestAnimationFrame(()=>{this.updateVisibleItems(!1)})):this.$emit("hidden"))},updateVisibleItems(e,t=!1){const i=this.itemSize,s=this.gridItems||1,r=this.itemSecondarySize||i,a=this.$_computedMinItemSize,u=this.typeField,c=this.simpleArray?null:this.keyField,n=this.items,d=n.length,p=this.sizes,S=this.$_views,w=this.$_unusedViews,V=this.pool,se=this.itemIndexByKey;let y,f,T,g,z;if(!d)y=f=g=z=T=0;else if(this.$_prerender)y=g=0,f=z=Math.min(this.prerender,n.length),T=null;else{const o=this.getScroll();if(t){let m=o.start-this.$_lastUpdateScrollPosition;if(m<0&&(m=-m),i===null&&m<a||m<i)return{continuous:!0}}this.$_lastUpdateScrollPosition=o.start;const v=this.buffer;o.start-=v,o.end+=v;let h=0;if(this.$refs.before&&(h=this.$refs.before.scrollHeight,o.start-=h),this.$refs.after){const m=this.$refs.after.scrollHeight;o.end+=m}if(i===null){let m,O=0,F=d-1,b=~~(d/2),U;do U=b,m=p[b].accumulator,m<o.start?O=b:b<d-1&&p[b+1].accumulator>o.start&&(F=b),b=~~((O+F)/2);while(b!==U);for(b<0&&(b=0),y=b,T=p[d-1].accumulator,f=b;f<d&&p[f].accumulator<o.end;f++);for(f===-1?f=n.length-1:(f++,f>d&&(f=d)),g=y;g<d&&h+p[g].accumulator<o.start;g++);for(z=g;z<d&&h+p[z].accumulator<o.end;z++);}else{y=~~(o.start/i*s);const m=y%s;y-=m,f=Math.ceil(o.end/i*s),g=Math.max(0,Math.floor((o.start-h)/i*s)),z=Math.floor((o.end-h)/i*s),y<0&&(y=0),f>d&&(f=d),g<0&&(g=0),z>d&&(z=d),T=Math.ceil(d/s)*i}}f-y>Ce.itemsLimit&&this.itemsLimitError(),this.totalSize=T;let l;const x=y<=this.$_endIndex&&f>=this.$_startIndex;if(x)for(let o=0,v=V.length;o<v;o++)l=V[o],l.nr.used&&(e&&(l.nr.index=se[l.item[c]]),(l.nr.index==null||l.nr.index<y||l.nr.index>=f)&&this.unuseView(l));const D=x?null:new Map;let I,_,k;for(let o=y;o<f;o++){I=n[o];const v=c?I[c]:I;if(v==null)throw new Error(`Key is ${v} on item (keyField is '${c}')`);if(l=S.get(v),!i&&!p[o].size){l&&this.unuseView(l);continue}_=I[u];let h=w.get(_),m=!1;if(!l)x?h&&h.length?l=h.pop():l=this.addView(V,o,I,v,_):(k=D.get(_)||0,(!h||k>=h.length)&&(l=this.addView(V,o,I,v,_),this.unuseView(l,!0),h=w.get(_)),l=h[k],D.set(_,k+1)),S.delete(l.nr.key),l.nr.used=!0,l.nr.index=o,l.nr.key=v,l.nr.type=_,S.set(v,l),m=!0;else if(!l.nr.used&&(l.nr.used=!0,m=!0,h)){const O=h.indexOf(l);O!==-1&&h.splice(O,1)}l.item=I,m&&(o===n.length-1&&this.$emit("scroll-end"),o===0&&this.$emit("scroll-start")),i===null?(l.position=p[o-1].accumulator,l.offset=0):(l.position=Math.floor(o/s)*i,l.offset=o%s*r)}return this.$_startIndex=y,this.$_endIndex=f,this.emitUpdate&&this.$emit("update",y,f,g,z),clearTimeout(this.$_sortTimer),this.$_sortTimer=setTimeout(this.sortViews,this.updateInterval+300),{continuous:x}},getListenerTarget(){let e=G(this.$el);return window.document&&(e===window.document.documentElement||e===window.document.body)&&(e=window),e},getScroll(){const{$el:e,direction:t}=this,i=t==="vertical";let s;if(this.pageMode){const r=e.getBoundingClientRect(),a=i?r.height:r.width;let u=-(i?r.top:r.left),c=i?window.innerHeight:window.innerWidth;u<0&&(c+=u,u=0),u+c>a&&(c=a-u),s={start:u,end:u+c}}else i?s={start:e.scrollTop,end:e.scrollTop+e.clientHeight}:s={start:e.scrollLeft,end:e.scrollLeft+e.clientWidth};return s},applyPageMode(){this.pageMode?this.addListeners():this.removeListeners()},addListeners(){this.listenerTarget=this.getListenerTarget(),this.listenerTarget.addEventListener("scroll",this.handleScroll,B?{passive:!0}:!1),this.listenerTarget.addEventListener("resize",this.handleResize)},removeListeners(){this.listenerTarget&&(this.listenerTarget.removeEventListener("scroll",this.handleScroll),this.listenerTarget.removeEventListener("resize",this.handleResize),this.listenerTarget=null)},scrollToItem(e){let t;const i=this.gridItems||1;this.itemSize===null?t=e>0?this.sizes[e-1].accumulator:0:t=Math.floor(e/i)*this.itemSize,this.scrollToPosition(t)},scrollToPosition(e){const t=this.direction==="vertical"?{scroll:"scrollTop",start:"top"}:{scroll:"scrollLeft",start:"left"};let i,s,r;if(this.pageMode){const a=G(this.$el),u=a.tagName==="HTML"?0:a[t.scroll],c=a.getBoundingClientRect(),d=this.$el.getBoundingClientRect()[t.start]-c[t.start];i=a,s=t.scroll,r=e+u+d}else i=this.$el,s=t.scroll,r=e;i[s]=r},itemsLimitError(){throw setTimeout(()=>{console.log("It seems the scroller element isn't scrolling, so it tries to render all the items at once.","Scroller:",this.$el),console.log("Make sure the scroller has a fixed height (or width) and 'overflow-y' (or 'overflow-x') set to 'auto' so it can scroll correctly and only render the items visible in the scroll viewport.")}),new Error("Rendered items limit reached")},sortViews(){this.pool.sort((e,t)=>e.nr.index-t.nr.index)}}};const De={key:0,ref:"before",class:"vue-recycle-scroller__slot"},Fe={key:1,ref:"after",class:"vue-recycle-scroller__slot"};function Ue(e,t,i,s,r,a){const u=ue("ResizeObserver"),c=ce("observe-visibility");return de(($(),M("div",{class:Y(["vue-recycle-scroller",{ready:r.ready,"page-mode":i.pageMode,[`direction-${e.direction}`]:!0}]),onScrollPassive:t[0]||(t[0]=(...n)=>a.handleScroll&&a.handleScroll(...n))},[e.$slots.before?($(),M("div",De,[A(e.$slots,"before")],512)):W("v-if",!0),($(),P(q(i.listTag),{ref:"wrapper",style:ve({[e.direction==="vertical"?"minHeight":"minWidth"]:r.totalSize+"px"}),class:Y(["vue-recycle-scroller__item-wrapper",i.listClass])},{default:K(()=>[($(!0),M(he,null,me(r.pool,n=>($(),P(q(i.itemTag),pe({key:n.nr.id,style:r.ready?{transform:`translate${e.direction==="vertical"?"Y":"X"}(${n.position}px) translate${e.direction==="vertical"?"X":"Y"}(${n.offset}px)`,width:i.gridItems?`${e.direction==="vertical"&&i.itemSecondarySize||i.itemSize}px`:void 0,height:i.gridItems?`${e.direction==="horizontal"&&i.itemSecondarySize||i.itemSize}px`:void 0}:null,class:["vue-recycle-scroller__item-view",[i.itemClass,{hover:!i.skipHover&&r.hoverKey===n.nr.key}]]},ye(i.skipHover?{}:{mouseenter:()=>{r.hoverKey=n.nr.key},mouseleave:()=>{r.hoverKey=null}})),{default:K(()=>[A(e.$slots,"default",{item:n.item,index:n.nr.index,active:n.nr.used})]),_:2},1040,["style","class"]))),128)),A(e.$slots,"empty")]),_:3},8,["style","class"])),e.$slots.after?($(),M("div",Fe,[A(e.$slots,"after")],512)):W("v-if",!0),fe(u,{onNotify:a.handleResize},null,8,["onNotify"])],34)),[[c,a.handleVisibilityChange]])}ie.render=Ue;ie.__file="src/components/RecycleScroller.vue";export{ie as s};
@@ -1,29 +1,29 @@
1
1
  <!DOCTYPE html><html><head><meta charset="utf-8">
2
2
  <meta name="viewport" content="width=device-width, initial-scale=1">
3
- <link rel="stylesheet" href="/__NUXT_DEVTOOLS_BASE__/_nuxt/entry.css-n6hiodwz.css" crossorigin>
3
+ <link rel="stylesheet" href="/__NUXT_DEVTOOLS_BASE__/_nuxt/entry.css-nlmjo2pz.css" crossorigin>
4
4
  <link rel="stylesheet" href="/__NUXT_DEVTOOLS_BASE__/_nuxt/vendor/json-editor-vue.css-mqq5uooj.css" crossorigin>
5
5
  <link rel="stylesheet" href="/__NUXT_DEVTOOLS_BASE__/_nuxt/vendor/unocss.css-mhvipxpl.css" crossorigin>
6
- <link rel="modulepreload" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/oab4uvjd.js">
7
- <link rel="modulepreload" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/vendor/json-editor-vue-huf8dypo.js">
8
- <link rel="modulepreload" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/vendor/unocss-e7oqigho.js">
9
- <link rel="modulepreload" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/vendor/shiki-jv02kgzv.js">
6
+ <link rel="modulepreload" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/f1cbvne4.js">
7
+ <link rel="modulepreload" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/vendor/json-editor-vue-g7zhhq6q.js">
8
+ <link rel="modulepreload" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/vendor/unocss-hvn0t0zz.js">
9
+ <link rel="modulepreload" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/vendor/shiki-hjqm7vcp.js">
10
10
  <link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/vendor/markdown-it-fvu08dbs.js">
11
- <link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/default-kpux2v9f.js">
12
- <link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/full-brbjd7n6.js">
13
- <link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/none-pd53m4yx.js">
11
+ <link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/default-pd4kv06p.js">
12
+ <link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/full-fcbl8hea.js">
13
+ <link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/none-nffzj9cd.js">
14
14
  <link rel="prefetch" as="style" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/ncode-block.css-lvdc77tw.css">
15
- <link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/data-schema-drawer-bofstkui.js">
16
- <link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/nselect.vue-dk87d34h.js">
17
- <link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/nswitch.vue-fl7pkx4a.js">
18
- <link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/ndropdown.vue-ml5ywt1n.js">
19
- <link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/ncode-block.vue-h2q9yyre.js">
20
- <link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/client-bqg1k5yt.js">
21
- <link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/ndrawer.vue-hnel52og.js">
22
- <link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/vendor/quicktype-core-klbd9u2j.js">
23
- <link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/unocss-runtime-bag0aauk.js">
24
- <link rel="prefetch" as="style" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/error-404.css-lr4x8rvs.css">
25
- <link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/error-404-cvmqmcrd.js">
26
- <link rel="prefetch" as="style" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/error-500.css-k7guqst3.css">
27
- <link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/error-500-mhqzizmh.js">
28
- <script type="module" src="/__NUXT_DEVTOOLS_BASE__/_nuxt/oab4uvjd.js" crossorigin></script></head><body><div id="__nuxt"></div><div id="teleports"></div><script type="application/json" data-nuxt-data="nuxt-app" data-ssr="false" id="__NUXT_DATA__">[{"prerenderedAt":1,"serverRendered":2},1742967845777,false]</script>
29
- <script>window.__NUXT__={};window.__NUXT__.config={public:{},app:{baseURL:"/__NUXT_DEVTOOLS_BASE__/",buildId:"de8623d3-d100-4ce3-86db-7538a633d3fc",buildAssetsDir:"/_nuxt/",cdnURL:""}}</script></body></html>
15
+ <link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/data-schema-drawer-dv9md89s.js">
16
+ <link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/nselect.vue-jigqjeiw.js">
17
+ <link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/nswitch.vue-km9qm824.js">
18
+ <link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/ndropdown.vue-ji36i25f.js">
19
+ <link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/ncode-block.vue-lex5o4lv.js">
20
+ <link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/client-etfulgf7.js">
21
+ <link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/ndrawer.vue-nkn577bf.js">
22
+ <link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/vendor/quicktype-core-gg1jfx29.js">
23
+ <link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/unocss-runtime-o1gs2hkj.js">
24
+ <link rel="prefetch" as="style" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/error-404.css-lvo9ozyv.css">
25
+ <link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/error-404-jsmb2ylw.js">
26
+ <link rel="prefetch" as="style" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/error-500.css-lrbzpi5q.css">
27
+ <link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/error-500-mbsayqot.js">
28
+ <script type="module" src="/__NUXT_DEVTOOLS_BASE__/_nuxt/f1cbvne4.js" crossorigin></script></head><body><div id="__nuxt"></div><div id="teleports"></div><script type="application/json" data-nuxt-data="nuxt-app" data-ssr="false" id="__NUXT_DATA__">[{"prerenderedAt":1,"serverRendered":2},1747147275099,false]</script>
29
+ <script>window.__NUXT__={};window.__NUXT__.config={public:{},app:{baseURL:"/__NUXT_DEVTOOLS_BASE__/",buildId:"bc495f3e-a5e4-477e-bd8b-c102bb505b43",buildAssetsDir:"/_nuxt/",cdnURL:""}}</script></body></html>
package/dist/module.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@nuxt/devtools",
3
3
  "configKey": "devtools",
4
- "version": "2.3.2",
4
+ "version": "2.4.1",
5
5
  "builder": {
6
6
  "@nuxt/module-builder": "0.8.4",
7
7
  "unbuild": "3.5.0"
package/dist/module.mjs CHANGED
@@ -1,5 +1,5 @@
1
1
  import '@nuxt/kit';
2
- export { m as default } from './shared/devtools.c069f83f.mjs';
2
+ export { m as default } from './shared/devtools.d413ad55.mjs';
3
3
  import './dirs.mjs';
4
4
  import 'node:path';
5
5
  import 'node:url';
@@ -1,7 +1,7 @@
1
1
  import { defineNuxtModule } from '@nuxt/kit';
2
2
  import { isGlobalInstall } from '../dirs.mjs';
3
3
 
4
- const r=Object.create(null),i=e=>globalThis.process?.env||import.meta.env||globalThis.Deno?.env.toObject()||globalThis.__env__||(e?r:globalThis),o=new Proxy(r,{get(e,s){return i()[s]??r[s]},has(e,s){const E=i();return s in E||s in r},set(e,s,E){const B=i(!0);return B[s]=E,!0},deleteProperty(e,s){if(!s)return !1;const E=i(!0);return delete E[s],!0},ownKeys(){const e=i(!0);return Object.keys(e)}}),t=typeof process<"u"&&process.env&&process.env.NODE_ENV||"",f=[["APPVEYOR"],["AWS_AMPLIFY","AWS_APP_ID",{ci:!0}],["AZURE_PIPELINES","SYSTEM_TEAMFOUNDATIONCOLLECTIONURI"],["AZURE_STATIC","INPUT_AZURE_STATIC_WEB_APPS_API_TOKEN"],["APPCIRCLE","AC_APPCIRCLE"],["BAMBOO","bamboo_planKey"],["BITBUCKET","BITBUCKET_COMMIT"],["BITRISE","BITRISE_IO"],["BUDDY","BUDDY_WORKSPACE_ID"],["BUILDKITE"],["CIRCLE","CIRCLECI"],["CIRRUS","CIRRUS_CI"],["CLOUDFLARE_PAGES","CF_PAGES",{ci:!0}],["CODEBUILD","CODEBUILD_BUILD_ARN"],["CODEFRESH","CF_BUILD_ID"],["DRONE"],["DRONE","DRONE_BUILD_EVENT"],["DSARI"],["GITHUB_ACTIONS"],["GITLAB","GITLAB_CI"],["GITLAB","CI_MERGE_REQUEST_ID"],["GOCD","GO_PIPELINE_LABEL"],["LAYERCI"],["HUDSON","HUDSON_URL"],["JENKINS","JENKINS_URL"],["MAGNUM"],["NETLIFY"],["NETLIFY","NETLIFY_LOCAL",{ci:!1}],["NEVERCODE"],["RENDER"],["SAIL","SAILCI"],["SEMAPHORE"],["SCREWDRIVER"],["SHIPPABLE"],["SOLANO","TDDIUM"],["STRIDER"],["TEAMCITY","TEAMCITY_VERSION"],["TRAVIS"],["VERCEL","NOW_BUILDER"],["VERCEL","VERCEL",{ci:!1}],["VERCEL","VERCEL_ENV",{ci:!1}],["APPCENTER","APPCENTER_BUILD_ID"],["CODESANDBOX","CODESANDBOX_SSE",{ci:!1}],["CODESANDBOX","CODESANDBOX_HOST",{ci:!1}],["STACKBLITZ"],["STORMKIT"],["CLEAVR"],["ZEABUR"],["CODESPHERE","CODESPHERE_APP_ID",{ci:!0}],["RAILWAY","RAILWAY_PROJECT_ID"],["RAILWAY","RAILWAY_SERVICE_ID"],["DENO-DEPLOY","DENO_DEPLOYMENT_ID"],["FIREBASE_APP_HOSTING","FIREBASE_APP_HOSTING",{ci:!0}]];function b(){if(globalThis.process?.env)for(const e of f){const s=e[1]||e[0];if(globalThis.process?.env[s])return {name:e[0].toLowerCase(),...e[2]}}return globalThis.process?.env?.SHELL==="/bin/jsh"&&globalThis.process?.versions?.webcontainer?{name:"stackblitz",ci:!1}:{name:"",ci:!1}}const l=b(),p=l.name;function n(e){return e?e!=="false":!1}const I=globalThis.process?.platform||"",T=n(o.CI)||l.ci!==!1,a=n(globalThis.process?.stdout&&globalThis.process?.stdout.isTTY);n(o.DEBUG);const R=t==="test"||n(o.TEST);n(o.MINIMAL)||T||R||!a;const A=/^win/i.test(I);!n(o.NO_COLOR)&&(n(o.FORCE_COLOR)||(a||A)&&o.TERM!=="dumb"||T);const C=(globalThis.process?.versions?.node||"").replace(/^v/,"")||null;Number(C?.split(".")[0])||null;const y=globalThis.process||Object.create(null),_={versions:{}};new Proxy(y,{get(e,s){if(s==="env")return o;if(s in e)return e[s];if(s in _)return _[s]}});const c=globalThis.process?.release?.name==="node",O=!!globalThis.Bun||!!globalThis.process?.versions?.bun,D=!!globalThis.Deno,L=!!globalThis.fastly,S=!!globalThis.Netlify,u=!!globalThis.EdgeRuntime,N=globalThis.navigator?.userAgent==="Cloudflare-Workers",F=[[S,"netlify"],[u,"edge-light"],[N,"workerd"],[L,"fastly"],[D,"deno"],[O,"bun"],[c,"node"]];function G(){const e=F.find(s=>s[0]);if(e)return {name:e[1]}}const P=G();P?.name||"";
4
+ const r=Object.create(null),i=e=>globalThis.process?.env||import.meta.env||globalThis.Deno?.env.toObject()||globalThis.__env__||(e?r:globalThis),o=new Proxy(r,{get(e,s){return i()[s]??r[s]},has(e,s){const E=i();return s in E||s in r},set(e,s,E){const B=i(!0);return B[s]=E,!0},deleteProperty(e,s){if(!s)return !1;const E=i(!0);return delete E[s],!0},ownKeys(){const e=i(!0);return Object.keys(e)}}),t=typeof process<"u"&&process.env&&process.env.NODE_ENV||"",f=[["APPVEYOR"],["AWS_AMPLIFY","AWS_APP_ID",{ci:!0}],["AZURE_PIPELINES","SYSTEM_TEAMFOUNDATIONCOLLECTIONURI"],["AZURE_STATIC","INPUT_AZURE_STATIC_WEB_APPS_API_TOKEN"],["APPCIRCLE","AC_APPCIRCLE"],["BAMBOO","bamboo_planKey"],["BITBUCKET","BITBUCKET_COMMIT"],["BITRISE","BITRISE_IO"],["BUDDY","BUDDY_WORKSPACE_ID"],["BUILDKITE"],["CIRCLE","CIRCLECI"],["CIRRUS","CIRRUS_CI"],["CLOUDFLARE_PAGES","CF_PAGES",{ci:!0}],["CLOUDFLARE_WORKERS","WORKERS_CI",{ci:!0}],["CODEBUILD","CODEBUILD_BUILD_ARN"],["CODEFRESH","CF_BUILD_ID"],["DRONE"],["DRONE","DRONE_BUILD_EVENT"],["DSARI"],["GITHUB_ACTIONS"],["GITLAB","GITLAB_CI"],["GITLAB","CI_MERGE_REQUEST_ID"],["GOCD","GO_PIPELINE_LABEL"],["LAYERCI"],["HUDSON","HUDSON_URL"],["JENKINS","JENKINS_URL"],["MAGNUM"],["NETLIFY"],["NETLIFY","NETLIFY_LOCAL",{ci:!1}],["NEVERCODE"],["RENDER"],["SAIL","SAILCI"],["SEMAPHORE"],["SCREWDRIVER"],["SHIPPABLE"],["SOLANO","TDDIUM"],["STRIDER"],["TEAMCITY","TEAMCITY_VERSION"],["TRAVIS"],["VERCEL","NOW_BUILDER"],["VERCEL","VERCEL",{ci:!1}],["VERCEL","VERCEL_ENV",{ci:!1}],["APPCENTER","APPCENTER_BUILD_ID"],["CODESANDBOX","CODESANDBOX_SSE",{ci:!1}],["CODESANDBOX","CODESANDBOX_HOST",{ci:!1}],["STACKBLITZ"],["STORMKIT"],["CLEAVR"],["ZEABUR"],["CODESPHERE","CODESPHERE_APP_ID",{ci:!0}],["RAILWAY","RAILWAY_PROJECT_ID"],["RAILWAY","RAILWAY_SERVICE_ID"],["DENO-DEPLOY","DENO_DEPLOYMENT_ID"],["FIREBASE_APP_HOSTING","FIREBASE_APP_HOSTING",{ci:!0}]];function b(){if(globalThis.process?.env)for(const e of f){const s=e[1]||e[0];if(globalThis.process?.env[s])return {name:e[0].toLowerCase(),...e[2]}}return globalThis.process?.env?.SHELL==="/bin/jsh"&&globalThis.process?.versions?.webcontainer?{name:"stackblitz",ci:!1}:{name:"",ci:!1}}const l=b(),p=l.name;function n(e){return e?e!=="false":!1}const I=globalThis.process?.platform||"",T=n(o.CI)||l.ci!==!1,R=n(globalThis.process?.stdout&&globalThis.process?.stdout.isTTY);n(o.DEBUG);const a=t==="test"||n(o.TEST);n(o.MINIMAL)||T||a||!R;const A=/^win/i.test(I);!n(o.NO_COLOR)&&(n(o.FORCE_COLOR)||(R||A)&&o.TERM!=="dumb"||T);const C=(globalThis.process?.versions?.node||"").replace(/^v/,"")||null;Number(C?.split(".")[0])||null;const W=globalThis.process||Object.create(null),_={versions:{}};new Proxy(W,{get(e,s){if(s==="env")return o;if(s in e)return e[s];if(s in _)return _[s]}});const O=globalThis.process?.release?.name==="node",c=!!globalThis.Bun||!!globalThis.process?.versions?.bun,D=!!globalThis.Deno,L=!!globalThis.fastly,S=!!globalThis.Netlify,u=!!globalThis.EdgeRuntime,N=globalThis.navigator?.userAgent==="Cloudflare-Workers",F=[[S,"netlify"],[u,"edge-light"],[N,"workerd"],[L,"fastly"],[D,"deno"],[c,"bun"],[O,"node"]];function G(){const e=F.find(s=>s[0]);if(e)return {name:e[1]}}const P=G();P?.name||"";
5
5
 
6
6
  const WS_EVENT_NAME = "nuxt:devtools:rpc";
7
7
  const isSandboxed = p === "stackblitz" || p === "codesandbox";
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@nuxt/devtools",
3
3
  "type": "module",
4
- "version": "2.3.2",
4
+ "version": "2.4.1",
5
5
  "description": "The Nuxt DevTools gives you insights and transparency about your Nuxt App.",
6
6
  "license": "MIT",
7
7
  "homepage": "https://devtools.nuxt.com",
@@ -32,15 +32,15 @@
32
32
  "vite": ">=6.0"
33
33
  },
34
34
  "dependencies": {
35
- "@nuxt/kit": "^3.16.1",
36
- "@vue/devtools-core": "^7.7.2",
37
- "@vue/devtools-kit": "^7.7.2",
35
+ "@nuxt/kit": "^3.17.3",
36
+ "@vue/devtools-core": "^7.7.6",
37
+ "@vue/devtools-kit": "^7.7.6",
38
38
  "birpc": "^2.3.0",
39
39
  "consola": "^3.4.2",
40
- "destr": "^2.0.3",
40
+ "destr": "^2.0.5",
41
41
  "error-stack-parser-es": "^1.0.5",
42
42
  "execa": "^8.0.1",
43
- "fast-npm-meta": "^0.3.1",
43
+ "fast-npm-meta": "^0.4.2",
44
44
  "get-port-please": "^3.1.2",
45
45
  "hookable": "^5.5.3",
46
46
  "image-meta": "^0.2.1",
@@ -53,66 +53,66 @@
53
53
  "pathe": "^2.0.3",
54
54
  "perfect-debounce": "^1.0.0",
55
55
  "pkg-types": "^2.1.0",
56
- "semver": "^7.7.1",
56
+ "semver": "^7.7.2",
57
57
  "simple-git": "^3.27.0",
58
58
  "sirv": "^3.0.1",
59
59
  "structured-clone-es": "^1.0.0",
60
- "tinyglobby": "^0.2.12",
61
- "vite-plugin-inspect": "^11.0.0",
60
+ "tinyglobby": "^0.2.13",
61
+ "vite-plugin-inspect": "^11.0.1",
62
62
  "vite-plugin-vue-tracer": "^0.1.3",
63
63
  "which": "^5.0.0",
64
- "ws": "^8.18.1",
65
- "@nuxt/devtools-wizard": "2.3.2",
66
- "@nuxt/devtools-kit": "2.3.2"
64
+ "ws": "^8.18.2",
65
+ "@nuxt/devtools-kit": "2.4.1",
66
+ "@nuxt/devtools-wizard": "2.4.1"
67
67
  },
68
68
  "devDependencies": {
69
- "@antfu/utils": "^9.1.0",
70
- "@discoveryjs/cli": "^2.14.0",
69
+ "@antfu/utils": "^9.2.0",
70
+ "@discoveryjs/cli": "^2.14.2",
71
71
  "@discoveryjs/discovery": "1.0.0-beta.92",
72
72
  "@iconify-json/bxl": "^1.2.2",
73
73
  "@iconify-json/carbon": "^1.2.8",
74
74
  "@iconify-json/logos": "^1.2.4",
75
75
  "@iconify-json/ri": "^1.2.5",
76
- "@iconify-json/simple-icons": "^1.2.29",
76
+ "@iconify-json/simple-icons": "^1.2.34",
77
77
  "@iconify-json/tabler": "^1.2.17",
78
- "@nuxt/test-utils": "^3.17.2",
78
+ "@nuxt/test-utils": "^3.18.0",
79
79
  "@parcel/watcher": "^2.5.1",
80
80
  "@types/markdown-it-link-attributes": "^3.0.5",
81
- "@unhead/schema": "^1.11.20",
82
- "@unocss/nuxt": "^66.0.0",
83
- "@unocss/preset-icons": "^66.0.0",
84
- "@unocss/preset-uno": "^66.0.0",
85
- "@unocss/runtime": "^66.0.0",
86
- "@vitest/ui": "^3.0.9",
87
- "@vue/devtools-applet": "^7.7.2",
88
- "@vueuse/nuxt": "^13.0.0",
81
+ "@unhead/schema": "^2.0.8",
82
+ "@unocss/nuxt": "^66.1.1",
83
+ "@unocss/preset-icons": "^66.1.1",
84
+ "@unocss/preset-uno": "^66.1.1",
85
+ "@unocss/runtime": "^66.1.1",
86
+ "@vitest/ui": "^3.1.3",
87
+ "@vue/devtools-applet": "^7.7.6",
88
+ "@vueuse/nuxt": "^13.1.0",
89
89
  "@xterm/addon-fit": "^0.10.0",
90
90
  "@xterm/xterm": "^5.5.0",
91
- "cronstrue": "^2.56.0",
91
+ "cronstrue": "^2.61.0",
92
92
  "floating-vue": "^5.2.2",
93
93
  "fuse.js": "^7.1.0",
94
94
  "json-editor-vue": "^0.18.1",
95
95
  "markdown-it": "^14.1.0",
96
96
  "markdown-it-link-attributes": "^4.0.1",
97
97
  "my-ua-parser": "^2.0.4",
98
- "nitropack": "^2.11.7",
99
- "nuxt": "^3.16.1",
98
+ "nitropack": "^2.11.12",
99
+ "nuxt": "^3.17.3",
100
100
  "ofetch": "^1.4.1",
101
101
  "quicktype-core": "22.0.0",
102
102
  "scule": "^1.3.0",
103
- "shiki": "^3.2.1",
104
- "shiki-codegen": "^3.2.1",
103
+ "shiki": "^3.4.0",
104
+ "shiki-codegen": "^3.4.0",
105
105
  "theme-vitesse": "^0.8.3",
106
- "tsx": "^4.19.3",
107
- "unimport": "^4.1.2",
108
- "unocss": "^66.0.0",
106
+ "tsx": "^4.19.4",
107
+ "unimport": "^5.0.1",
108
+ "unocss": "^66.1.1",
109
109
  "unplugin-vue-markdown": "^28.3.1",
110
- "vanilla-jsoneditor": "^3.1.1",
110
+ "vanilla-jsoneditor": "^3.3.1",
111
111
  "vis-data": "^7.1.9",
112
- "vis-network": "^9.1.9",
113
- "vue-tsc": "^2.2.8",
112
+ "vis-network": "^9.1.10",
113
+ "vue-tsc": "^2.2.10",
114
114
  "vue-virtual-scroller": "^2.0.0-beta.8",
115
- "@nuxt/devtools": "2.3.2"
115
+ "@nuxt/devtools": "2.4.1"
116
116
  },
117
117
  "scripts": {
118
118
  "build": "pnpm dev:prepare && pnpm build:module && pnpm build:discovery && pnpm build:client",
@@ -1 +0,0 @@
1
- import{q as e,O as n,a0 as t}from"./vendor/json-editor-vue-huf8dypo.js";const a={"h-screen":"","w-screen":"","bg-black":""},r=e({__name:"__blank",setup(c){return(o,s)=>(t(),n("div",a))}});export{r as default};
@@ -1 +0,0 @@
1
- {"id":"de8623d3-d100-4ce3-86db-7538a633d3fc","timestamp":1742967809397,"matcher":{"static":{},"wildcard":{},"dynamic":{}},"prerendered":[]}
@@ -1 +0,0 @@
1
- import{a as pe,_ as X,a4 as re,aq as ue,A as me,B as de,g as Y,ar as ce,n as fe,as as ve,S as _e,Y as he,W as be,I as ge,f as ye}from"./oab4uvjd.js";import{O as m,a0 as t,P as n,q as U,u as D,a8 as O,a7 as E,Q as w,S as j,a2 as u,R as y,v as $,F as B,ad as M,k as I,n as we,D as xe,y as ke,a1 as f,j as A,X as Ce,W as $e,a3 as W,af as Ne,a9 as Q,ac as Ve}from"./vendor/json-editor-vue-huf8dypo.js";import{_ as Pe}from"./help-fab.vue-b1e9nf8h.js";import{_ as De}from"./ncheckbox.vue-iwykr78c.js";import{_ as J}from"./nnavbar.vue-kfo4lqnc.js";import{p as K}from"./index-jc4yj4to.js";import{_ as Z}from"./nbadge-jgp7a07l.js";import{_ as ee}from"./filepath-item.vue-s3q6jdef.js";import{_ as Se}from"./ndrawer.vue-hnel52og.js";import{D as Be,N as Le}from"./vendor/vis-fth2qiu5.js";import{_ as Me}from"./nselect-tabs.vue-c2rnmdda.js";import{_ as Te}from"./nsection-block-ks0zvsnl.js";import{_ as Ie}from"./nicon-title.vue-oyhtd7jm.js";import{D as H}from"./constants-b32h69zq.js";import{u as Ue,a as Fe}from"./state-components-fozkevcs.js";import"./vendor/unocss-e7oqigho.js";import"./vendor/shiki-jv02kgzv.js";const Ge={class:"markdown-body"},Re={__name:"components",setup(P,{expose:s}){return s({frontmatter:{}}),(i,c)=>(t(),m("div",Ge,c[0]||(c[0]=[n("h1",null,"Components",-1),n("p",null,"Vue Components allow us to split the UI into independent and reusable pieces, and think about each piece in isolation. This is very similar to how we nest native HTML elements, but Vue implements its own component model that allow us to encapsulate custom content and logic in each component.",-1),n("p",null,"Components placed in the components/ directory are automatically registered by Nuxt. They can be used in your templates without importing them.",-1),n("p",null,[n("a",{href:"https://nuxt.com/docs/guide/directory-structure/components",target:"_blank",rel:"noopener"},"Learn more in the documentation")],-1)])))}},Ae={"text-sm":"","font-mono":""},ne=U({__name:"ComponentName",props:{component:{}},setup(P){const s=P,v=D(()=>s.component.pascalName||K(s.component.name||s.component.__name||s.component.kebabName||""));return(i,c)=>(t(),m("code",Ae,[c[0]||(c[0]=n("span",{mr1:"",op20:""},"<",-1)),O(E(v.value),1),c[1]||(c[1]=n("span",{ml1:"",op20:""},"/>",-1))]))}}),ze={flex:"~ col gap1","items-start":"","of-hidden":""},We={flex:"~ gap2",px3:""},Ee={px3:"",pb2:""},je={key:0,border:"t base","max-h-60":"","w-full":"","of-auto":"",px3:"",py3:""},qe={"text-sm":""},He={"text-primary":""},Oe={key:0,flex:"~ col gap-2","items-start":"",pt3:"","text-sm":"",op75:""},Xe={key:1,border:"t base","max-h-60":"","w-full":"","of-auto":"",px3:"",py3:""},Qe={"text-sm":""},Ye={"text-primary":""},Je={key:0,flex:"~ col gap-2","items-start":"",pt3:"","text-sm":"",op75:""},oe=U({__name:"ComponentDetails",props:{component:{},dependencies:{},dependents:{}},setup(P){const s=P,v=D(()=>s.component.pascalName||K(s.component.name||s.component.__name||s.component.kebabName||"")),i=D(()=>s.component.filePath||s.component.file||s.component.__file||""),c=pe();return(l,a)=>{const h=ne,r=X,b=Z,x=ee;return t(),m("div",ze,[n("div",We,[u(h,{component:l.component},null,8,["component"]),u(r,{title:"Copy name","flex-none":"",icon:"carbon-copy",border:!1,onClick:a[0]||(a[0]=d=>$(c)(`<${v.value}></${v.value}>`,"component-name"))}),l.component.global?(t(),y(b,{key:0,n:"green",title:"Registered at runtime as a global component",textContent:"runtime"})):w("",!0)]),n("div",Ee,[i.value?(t(),y(x,{key:0,filepath:i.value,"w-full":"","text-sm":"",op40:"","group-hover:op75":""},null,8,["filepath"])):w("",!0)]),l.dependents?(t(),m("div",je,[n("div",qe,[n("strong",He,E(l.dependents.length),1),a[1]||(a[1]=n("span",{op50:""}," references",-1))]),l.dependents.length?(t(),m("div",Oe,[(t(!0),m(B,null,M(l.dependents,d=>(t(),y(x,{key:d,filepath:d},null,8,["filepath"]))),128))])):w("",!0)])):w("",!0),l.dependencies?(t(),m("div",Xe,[n("div",Qe,[n("strong",Ye,E(l.dependencies.length),1),a[2]||(a[2]=n("span",{op50:""}," dependencies",-1))]),l.dependencies.length?(t(),m("div",Je,[(t(!0),m(B,null,M(l.dependencies,d=>(t(),y(x,{key:d,filepath:d},null,8,["filepath"]))),128))])):w("",!0)])):w("",!0),j(l.$slots,"default")])}}}),Ke={flex:"~ gap-x-3 gap-y-1 wrap","w-full":""},Ze={relative:"","h-full":"","w-full":""},en={key:0,py4:"",pt4:"",flex:"~ col"},nn={border:"t base",p4:""},on=U({__name:"ComponentsGraph",props:{components:{},relationships:{}},setup(P){const s=P,v=I(),i=I(),c=re(),l=we(),a=ue(),h=me(),r=de(),{componentsGraphShowNodeModules:b,componentsGraphShowGlobalComponents:x,componentsGraphShowPages:d,componentsGraphShowLayouts:N,componentsGraphShowWorkspace:_}=Y("ui"),k=I(),p=I(""),F=ce(p,300),G=D(()=>{const V=s.relationships||[];if(k.value){let e=function(C){!C||o.has(C)||(o.add(C),C.deps.forEach(L=>{e(V.find(T=>T.id===L))}))};const o=new Set;return e(k.value),Array.from(o)}return V}),z=D(()=>{const V=G.value.map(o=>{const C=s.components.find(R=>R.filePath===o.id),L=a.value?.find(R=>R.file===o.id),T=r.value?.find(R=>R.file===o.id),S=o.id.includes("/node_modules/")?"lib":C?C.global?"global":"user":T?"layout":L?"page":"unknown";if(!b.value&&S==="lib"||!d.value&&S==="page"||!N.value&&S==="layout"||!_.value&&S==="user"&&h.value&&!o.id.startsWith(h.value.rootDir)||!x.value&&S==="global")return null;const q=S==="layout"?"hexagon":S==="page"?"square":"dot",g=F.value&&!o.id.toLowerCase().includes(F.value.toLowerCase());return{id:o.id,label:ae(o.id),group:S,shape:q,size:15+Math.min(o.deps.length/2,8),font:{color:g?"#8885":c.value==="dark"?"white":"black"},color:g?"#8885":k.value?.id===o.id?"#82c742":void 0,extra:{id:o.id,component:C,page:L,layout:T,relationship:o}}}).filter(o=>!!o),e=G.value.flatMap(o=>o.deps.map(C=>({from:o.id,to:C,arrows:{to:{enabled:!0,scaleFactor:.8}}})));return{nodes:new Be(V),edges:e}}),te=D(()=>l.value?.component?s.relationships?.find(e=>e.id===l.value?.component?.filePath)?.deps?.map(e=>s.relationships?.find(o=>o.id===e)?.id).filter(Boolean):[]),se=D(()=>l.value?.component?s.relationships?.filter(e=>e.deps.includes(l.value.component.filePath))?.map(e=>s.relationships?.find(o=>o.id===e.id)?.id).filter(Boolean):[]);xe(()=>{const V={nodes:{shape:"dot",size:16},physics:{repulsion:{centralGravity:.7,springLength:100,springConstant:.01},maxVelocity:146,solver:"forceAtlas2Based",timestep:.35,stabilization:{enabled:!0,iterations:200}},groups:{user:{color:"#42b883"},unknown:{color:"#b86542"},lib:{color:"#b4b842"},page:{color:"#42b2b8"},layout:{color:"#4256b8"}}},e=new Le(v.value,z.value,V);e.on("click",o=>{const C=o.nodes?.[0],L=z.value.nodes.get(C).extra;l.value=L}),ke(z,()=>{e.setData(z.value)})});function le(){l.value=void 0}function ae(V){const e=s.components.find(o=>o.filePath===V);return e?e.pascalName:V.replace(/.*\/components\//,"").replace(/\.vue$/,"").replace(/\/index$/,"").split("/").map(o=>o.charAt(0).toUpperCase()+o.slice(1)).join("")}function ie(){k.value=l.value?.relationship,l.value=void 0}return(V,e)=>{const o=De,C=J,L=fe,T=oe,S=X,q=Se;return t(),m(B,null,[u(C,{ref_key:"navbar",ref:i,search:p.value,"onUpdate:search":e[6]||(e[6]=g=>p.value=g),absolute:"","left-0":"","right-0":"","top-0":""},{actions:f(()=>[n("div",Ke,[u(o,{modelValue:$(d),"onUpdate:modelValue":e[0]||(e[0]=g=>A(d)?d.value=g:null),n:"primary sm"},{default:f(()=>e[8]||(e[8]=[n("span",{op75:""},"Show pages",-1)])),_:1},8,["modelValue"]),u(o,{modelValue:$(N),"onUpdate:modelValue":e[1]||(e[1]=g=>A(N)?N.value=g:null),n:"primary sm"},{default:f(()=>e[9]||(e[9]=[n("span",{op75:""},"Show layouts",-1)])),_:1},8,["modelValue"]),u(o,{modelValue:$(_),"onUpdate:modelValue":e[2]||(e[2]=g=>A(_)?_.value=g:null),n:"primary sm"},{default:f(()=>e[10]||(e[10]=[n("span",{op75:""},"Show workspace",-1)])),_:1},8,["modelValue"]),u(o,{modelValue:$(b),"onUpdate:modelValue":e[3]||(e[3]=g=>A(b)?b.value=g:null),n:"primary sm"},{default:f(()=>e[11]||(e[11]=[n("span",{op75:""},"Show node_modules",-1)])),_:1},8,["modelValue"]),u(o,{modelValue:$(x),"onUpdate:modelValue":e[4]||(e[4]=g=>A(x)?x.value=g:null),n:"primary sm"},{default:f(()=>e[12]||(e[12]=[n("span",{op75:""},"Show global components",-1)])),_:1},8,["modelValue"])]),k.value?(t(),m("button",{key:0,flex:"~ gap-1","flex-none":"","items-center":"","rounded-full":"","bg-gray:20":"",py1:"",pl3:"",pr2:"","text-xs":"",op50:"","hover:op100":"",onClick:e[5]||(e[5]=g=>k.value=void 0)},e[13]||(e[13]=[O(" Clear filter "),n("div",{"i-carbon-close":""},null,-1)]))):w("",!0),e[14]||(e[14]=n("div",{"flex-auto":""},null,-1)),j(V.$slots,"default")]),_:3},8,["search"]),n("div",Ze,[n("div",{ref_key:"container",ref:v,"h-full":"","w-full":""},null,512),u(L,{absolute:"","bottom-3":"","left-3":"","border-0":"",p2:"",px3:"","text-sm":"","n-glass-effect":""},{default:f(()=>e[15]||(e[15]=[n("div",{grid:"~ cols-[20px_1fr] items-center gap-y-1"},[n("div",{"h-3":"","w-3":"","rounded-full":"","bg-hex-42b883":""}),n("div",{op50:""}," Component "),n("div",{"h-3":"","w-3":"","rounded-full":"","bg-hex-97c2fc":""}),n("div",{op50:""}," Global Component "),n("div",{"h-3":"","w-3":"","bg-hex-42b2b8":""}),n("div",{op50:""}," Page "),n("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 726 628","ml--1px":"","h-3":""},[n("path",{fill:"#4256b8","stroke-width":"4",d:"M723 314 543 625.8H183L3 314 183 2.2h360L723 314z"})]),n("div",{op50:""}," Layout "),n("div",{"h-3":"","w-3":"","rounded-full":"","bg-hex-b4b842":""}),n("div",{op50:""}," Library Component "),n("div",{"h-3":"","w-3":"","rounded-full":"","bg-hex-b86542":""}),n("div",{op50:""}," Unknown ")],-1)])),_:1}),u(q,{"model-value":!!(l.value&&l.value.component),top:i.value,border:"t l base","w-80":"",onClose:le},{default:f(()=>[l.value&&l.value.component?(t(),m("div",en,[u(T,{component:l.value.component,dependencies:te.value,dependents:se.value},null,8,["component","dependencies","dependents"]),n("div",nn,[u(S,{n:"primary solid",onClick:e[7]||(e[7]=g=>ie())},{default:f(()=>e[16]||(e[16]=[O(" Filter to this component ")])),_:1})])])):w("",!0)]),_:1},8,["model-value","top"])])],64)}}}),tn={hover:"bg-active",class:"group",flex:"~ gap2","w-full":"","items-center":"",rounded:"",px2:"",py1:""},sn={key:0,"ml--1":"","text-primary":""},ln=U({__name:"ComponentItem",props:{component:{},dependencies:{},dependents:{}},setup(P){const s=P,v=D(()=>s.component.filePath||s.component.file||s.component.__file||"");return(i,c)=>{const l=ne,a=oe,h=Ce("VDropdown"),r=Z,b=ee;return t(),m("div",tn,[u(h,null,{popper:f(()=>[u(a,{component:i.component,dependencies:i.dependencies,dependents:i.dependents,"w-100":"",pt4:""},null,8,["component","dependencies","dependents"])]),default:f(()=>[n("button",{"hover:text-primary":"",class:$e(i.dependents&&i.dependents.length===0?"op50":"")},[u(l,{component:i.component},null,8,["component"])],2)]),_:1}),i.dependents?.length?(t(),m("sup",sn," x"+E(i.dependents?.length),1)):w("",!0),i.component.global?(t(),y(r,{key:1,n:"green",title:"Registered at runtime as a global component",textContent:"runtime"})):w("",!0),j(i.$slots,"default"),v.value?(t(),y(b,{key:2,filepath:v.value,"text-sm":"",op25:"","group-hover:op75":""},null,8,["filepath"])):w("",!0)])}}}),an={flex:"~ gap-2 items-center"},pn={pl4:""},rn=U({__name:"ComponentsList",props:{components:{},relationships:{}},setup(P){const s=P,v=I(""),i=I("all"),c=D(()=>{const h=s.components.map(r=>ve(r,s.relationships));return i.value==="using"?h.filter(r=>r.dependents?.length):i.value==="not-used"?h.filter(r=>!r.dependents?.length):h}),l=D(()=>new _e(c.value,{keys:["component.pascalName","component.filePath","component.kebabName"]})),a=D(()=>{const h=[],r=new Map,b=[],x=[],d={user:0,lib:0,builtin:0,runtime:0};return(v.value?l.value.search(v.value).map(_=>_.item):c.value).forEach(_=>{const k=_.component;if(k.filePath&&he(k.filePath)){const p=be(k.filePath);if(!p)return;p==="nuxt"?(b.push(_),d.builtin++):(r.has(p)||r.set(p,[]),r.get(p).push(_),d.lib++)}else k.global&&!k.filePath?(x.push(_),d.runtime++):(h.push(_),d.user++)}),{count:d,user:h,builtin:b,lib:r,runtime:x}});return(h,r)=>{const b=ge,x=Me,d=J,N=ln,_=Te,k=Ie;return t(),m(B,null,[u(d,{search:v.value,"onUpdate:search":r[1]||(r[1]=p=>v.value=p),pb3:""},{actions:f(()=>[j(h.$slots,"default")]),default:f(()=>[n("div",an,[u(b,{icon:"carbon-filter",op50:""}),u(x,{modelValue:i.value,"onUpdate:modelValue":r[0]||(r[0]=p=>i.value=p),n:"primary sm",options:[{label:"All",value:"all"},{label:"Using",value:"using"},{label:"Not used",value:"not-used"}]},null,8,["modelValue"])])]),_:3},8,["search"]),a.value.user.length?(t(),y(_,{key:0,icon:"carbon-nominal",text:"User components",open:a.value.user.length<=$(H),description:`Total components: ${a.value.count.user}`},{default:f(()=>[(t(!0),m(B,null,M(a.value.user,p=>(t(),y(N,W({key:p.component.filePath,ref_for:!0},p),null,16))),128))]),_:1},8,["open","description"])):w("",!0),a.value.runtime.length?(t(),y(_,{key:1,icon:"carbon-load-balancer-global",open:a.value.runtime.length<=$(H),text:"Runtime components",description:`Total components: ${a.value.count.runtime}`},{default:f(()=>[(t(!0),m(B,null,M(a.value.runtime,p=>(t(),y(N,W({key:p.component.filePath,ref_for:!0},p),null,16))),128))]),_:1},8,["open","description"])):w("",!0),a.value.builtin.length?(t(),y(_,{key:2,icon:"simple-icons-nuxtdotjs",text:"Built-in components",description:`Total components: ${a.value.count.builtin}`},{default:f(()=>[(t(!0),m(B,null,M(a.value.builtin,p=>(t(),y(N,W({key:p.component.filePath,ref_for:!0},p),null,16))),128))]),_:1},8,["description"])):w("",!0),a.value.lib.size?(t(),y(_,{key:3,open:a.value.count.lib<=$(H),icon:"carbon-3d-mpr-toggle",text:"Components from libraries",description:`${a.value.count.lib} components from ${a.value.lib.size} packages`},{default:f(()=>[(t(!0),m(B,null,M(a.value.lib.entries(),([p,F])=>(t(),m("div",{key:p,"ml-2":""},[u(k,{text:`${p} (${F.length})`,py1:"",op50:""},null,8,["text"]),n("div",pn,[(t(!0),m(B,null,M(F,G=>(t(),y(N,W({key:G.component.filePath,ref_for:!0},G),null,16))),128))])]))),128))]),_:1},8,["open","description"])):w("",!0)],64)}}}),un={relative:"","h-full":"","of-auto":""},mn={"flex-none":"",flex:"~ gap3"},Dn=U({__name:"components",setup(P){const s=ye(),v=Ue(),i=Fe(),{componentsView:c}=Y("ui");function l(){s.value?.inspector?.enable()}function a(){c.value=c.value==="list"?"graph":"list"}return(h,r)=>{const b=X,x=Re,d=Pe,N=Ne("tooltip");return t(),m(B,null,[n("div",un,[(t(),y(Ve($(c)==="list"?rn:on),{components:$(v),relationships:$(i)},{default:f(()=>[n("div",mn,[Q(u(b,{"text-lg":"",border:!1,icon:$(c)==="graph"?"i-carbon-list":"i-carbon-network-4",title:"Toggle view",onClick:a},null,8,["icon"]),[[N,"Toggle View",void 0,{"bottom-end":!0}]]),$(s)?.inspector?.isAvailable?Q((t(),y(b,{key:0,"text-lg":"",border:!1,icon:"i-tabler-focus-2",title:"Inspect Vue components",onClick:l},null,512)),[[N,"Inspect Vue components",void 0,{"bottom-end":!0}]]):w("",!0)])]),_:1},8,["components","relationships"]))]),u(d,null,{default:f(()=>[u(x)]),_:1})],64)}}});export{Dn as default};
@@ -1 +0,0 @@
1
- import{a as $,w as U,I as E,_ as F}from"./oab4uvjd.js";import{_ as j}from"./nmarkdown.vue-io3ubke7.js";import{_ as O}from"./filepath-item.vue-s3q6jdef.js";import{k as S}from"./index-jc4yj4to.js";import{C as y}from"./constants-b32h69zq.js";import{q as W,u as r,X as q,R as i,a0 as s,a1 as m,P as a,W as z,O as p,Q as l,a8 as c,a7 as v,a2 as b,v as k,F as x,ad as L}from"./vendor/json-editor-vue-huf8dypo.js";const M={rounded:"","font-mono":""},P={key:0,"text-primary":""},Q={key:0},R={title:"Vue Directive"},T={"max-w-100":""},X={px4:"",py3:"","text-sm":""},A={flex:"~ gap2",n:"primary xs"},G={border:"t base","max-h-60":"","of-auto":"",px4:"",py3:""},H={"text-sm":""},J={"text-primary":""},K={flex:"~ col gap-2","items-start":"",pt3:"","text-sm":"",op75:""},Y={key:1,"text-sm":"",op50:""},ne=W({__name:"ComposableItem",props:{item:{},isDirective:{type:Boolean,default:!1},metadata:{},filepath:{},counter:{type:Boolean,default:!0},classes:{default:"px2 py1 text-sm bg-gray:5 "}},setup(g){const o=g,C=$(),h=U(),u=r(()=>o.item.as||o.item.name),D=r(()=>{let e=u.value;return o.isDirective&&(e[0]!=="v"&&(e=`v${e}`),e=S(e)),e}),n=r(()=>o.metadata?.injectionUsage?.[u.value]?.count||0),N=r(()=>(o.metadata?.injectionUsage?.[u.value]?.moduleIds||[]).filter(e=>!e.endsWith("?macro=true"))),_=r(()=>o.item.meta?.docsUrl?o.item.meta.docsUrl:["nuxt","#app","nuxt3"].includes(o.item.from)?y.nuxt[o.item.name]:o.item.from==="vue"?y.vue[o.item.name]:null);return(e,t)=>{const w=E,I=j,f=F,B=O,V=q("VDropdown");return s(),i(V,{disabled:!o.metadata},{popper:m(()=>[a("div",T,[a("div",X,[e.item.meta?.description?(s(),i(I,{key:0,tag:"div",pb3:"","text-sm":"",markdown:e.item.meta.description},null,8,["markdown"])):l("",!0),a("div",A,[b(f,{icon:"carbon-copy",onClick:t[0]||(t[0]=d=>k(C)(D.value,"imports-name"))},{default:m(()=>t[2]||(t[2]=[c(" Copy ")])),_:1}),e.filepath?(s(),i(f,{key:0,icon:"carbon-code",onClick:t[1]||(t[1]=d=>e.filepath&&k(h)(e.filepath))},{default:m(()=>t[3]||(t[3]=[c(" Source ")])),_:1})):l("",!0),_.value?(s(),i(f,{key:1,icon:"carbon-catalog",to:_.value,target:"_blank"},{default:m(()=>t[4]||(t[4]=[c(" Docs ")])),_:1},8,["to"])):l("",!0)])]),a("div",G,[n.value?(s(),p(x,{key:0},[a("div",H,[t[5]||(t[5]=a("span",{op50:""},"It has been referenced ",-1)),a("strong",J,v(n.value),1),t[6]||(t[6]=a("span",{op50:""}," times by:",-1))]),a("div",K,[(s(!0),p(x,null,L(N.value,d=>(s(),i(B,{key:d,filepath:d},null,8,["filepath"]))),128))])],64)):(s(),p("div",Y," Not in use via auto import. "))])])]),default:m(()=>[a("button",{"hover:text-primary":"",class:z([e.metadata&&!n.value?"op30 hover:op100":"",e.classes])},[a("code",M,[c(v(u.value)+" ",1),n.value&&e.counter?(s(),p("sup",P,"x"+v(n.value),1)):l("",!0)]),e.isDirective?(s(),p("sup",Q,[a("abbr",R,[b(w,{icon:"tabler:hexagon-letter-d"})])])):l("",!0)],2)]),_:1},8,["disabled"])}}});export{ne as _};
@@ -1 +0,0 @@
1
- import{a4 as M,bd as N,be as j,bf as B,a6 as D,l as E,ag as k,bg as P,i as V,aa as I,r as L,n as O}from"./oab4uvjd.js";import{q,k as C,u as x,r as R,D as $,p as W,w as _,H as S,O as U,a0 as n,R as u,a1 as y,P as r,a8 as w,a7 as A,v as T,ac as F,a2 as G}from"./vendor/json-editor-vue-huf8dypo.js";import{_ as H}from"./launch-page.vue-hd8pnvb5.js";import"./vendor/unocss-e7oqigho.js";import"./vendor/shiki-jv02kgzv.js";import"./nmarkdown.vue-io3ubke7.js";import"./client-bqg1k5yt.js";const h=new Map,X=q({__name:"IframeView",props:{tab:{}},setup(f){const m=f,c=M(),d=C(),i=x(()=>m.tab.name),e=C(),t=R(N(d));$(()=>{const o=m.tab.view,l=o.persistent!==!1,b=["clipboard-write","clipboard-read"];if(h.get(i.value)&&l)e.value=h.get(i.value),e.value.style.visibility="visible";else{e.value=document.createElement("iframe"),e.value.setAttribute("allow",b.join("; ")),e.value.setAttribute("aria-label","Nuxt Devtools"),l&&h.set(i.value,e.value),e.value.src=o.src;try{e.value.style.opacity="0.01",e.value.onload=()=>{v(),s(),e.value.style.opacity="1"}}catch{e.value.style.opacity="1"}document.body.appendChild(e.value),W(p)}setTimeout(s,100)}),_(p),_(s),_(v),S(()=>{e.value&&(e.value.style.visibility="hidden")});function s(){if(!(!e.value||!e.value.contentWindow))try{const o=e.value.contentWindow.document.querySelector("html");o?.classList.toggle("dark",c.value==="dark"),o?.classList.toggle("light",c.value==="dark"),new MutationObserver(()=>{c.value=e.value?.contentWindow?.document.querySelector("html")?.classList.contains("dark")?"dark":"light"}).observe(o,{attributes:!0,attributeFilter:["class"]})}catch{}}const a=j();function v(){if(!(!e.value||!e.value.contentWindow))try{e.value.contentWindow.__NUXT_DEVTOOLS__=a.value}catch{}}function p(){e.value&&Object.assign(e.value.style,{position:"fixed",left:`${t.left}px`,top:`${t.top}px`,width:`${t.width}px`,height:`${t.height}px`,outline:"none"})}return(o,l)=>(n(),U("div",{ref_key:"anchor",ref:d,"h-full":"","w-full":""},null,512))}}),z={flex:"~ col gap2",mxa:"","items-center":""},J={"text-xl":""},K={"text-rose":""},ne=q({__name:"custom-[name]",props:{name:{}},setup(f){const m=f,c=B(),d=D(),i=x(()=>m.name??c.params.name),e=E(),t=x(()=>e.value.find(s=>s.name===i.value));return $(()=>{t.value?t.value.requireAuth&&!k.value&&P():setTimeout(()=>{t.value||d.push("/modules/overview")},2e3)}),(s,a)=>{const v=V,p=I,o=X,l=H,b=O;return t.value?t.value.requireAuth&&!T(k)?(n(),u(p,{key:1})):t.value.view.type==="iframe"?(n(),u(o,{key:2,tab:t.value},null,8,["tab"])):t.value.view.type==="vnode"?(n(),u(F(t.value.view.vnode),{key:3})):t.value.view.type==="launch"?(n(),u(l,{key:4,name:`custom-${t.value.name}`,icon:t.value.view.icon||t.value.icon,title:t.value.view.title||t.value.title,description:t.value.view.description,actions:t.value.view.actions,onAction:a[0]||(a[0]=g=>T(L).customTabAction(t.value.name,g))},null,8,["name","icon","title","description","actions"])):(n(),u(v,{key:5},{default:y(()=>[G(b,{flex:"~ col","h-full":"","items-center":"","justify-center":""},{default:y(()=>[w(" Unknown tab type "+A(t.value.view),1)]),_:1})]),_:1})):(n(),u(v,{key:0},{default:y(()=>[r("div",z,[a[3]||(a[3]=r("div",{"i-carbon-queued":"",mb2:"","text-5xl":"",op50:""},null,-1)),r("p",J,[a[1]||(a[1]=w(" Tab ")),r("code",K,A(i.value),1),a[2]||(a[2]=w(" not found "))]),a[4]||(a[4]=r("p",{op50:""}," It might because the module contributing this tab is not installed or enabled ",-1)),a[5]||(a[5]=r("p",{mt8:"","animate-pulse":""}," Redirecting to overview page... ",-1))])]),_:1}))}}});export{ne as default};
@@ -1 +0,0 @@
1
- import{u as r,_ as s}from"./oab4uvjd.js";import{q as c,af as i,a9 as p,a0 as _,R as m}from"./vendor/json-editor-vue-huf8dypo.js";const D=c({__name:"DataSchemaButton",props:{getter:{type:Function}},setup(u){const t=r();return(o,e)=>{const n=s,a=i("tooltip");return p((_(),m(n,{title:"Generate Data Schema",icon:"carbon:container-services",border:!1,onClick:e[0]||(e[0]=l=>t.value=o.getter())},null,512)),[[a,"Generate Data Schema"]])}}});export{D as _};
@@ -1,2 +0,0 @@
1
- import{_ as E}from"./nselect.vue-dk87d34h.js";import{u as F,c as U,a as W,_ as q}from"./oab4uvjd.js";import{_ as z}from"./nswitch.vue-fl7pkx4a.js";import{_ as O}from"./ndropdown.vue-ml5ywt1n.js";import{_ as J}from"./ncode-block.vue-h2q9yyre.js";import{_ as P}from"./ndrawer.vue-hnel52og.js";import{A as h,d as k}from"./vendor/quicktype-core-klbd9u2j.js";import{q as Q,k as x,u as N,y as C,R as c,Q as m,a0 as n,a2 as d,a1 as r,P as i,O as f,F as D,ad as j,v as _,a7 as b,ab as R}from"./vendor/json-editor-vue-huf8dypo.js";import"./vendor/unocss-e7oqigho.js";import"./vendor/shiki-jv02kgzv.js";import"./client-bqg1k5yt.js";const G={border:"b base",flex:"~ items-center gap-2",sticky:"","left-0":"","right-0":"","top-0":"","z-1":"",p3:"","bg-base":""},H={key:0,flex:"~ items-center justify-center",absolute:"","bottom--1":"","right--2":"","h-4":"","w-4":"","rounded-full":"","bg-lime:30":"","text-8px":""},K={flex:"~ col","w-100":"","of-auto":"",py2:""},M={"text-xs":"",capitalize:"",op75:""},ie=Q({__name:"DataSchemaDrawer",setup(X){const s=F(),V=x(0),l=x("TypeScript"),v=N(()=>h.all.find(e=>e.displayName===l.value)),o=x(v.value?.optionDefinitions.filter(e=>typeof e.defaultValue=="boolean")),y=U(async()=>{if(V.value,!s.value)return"";const e=k.jsonInputForTargetLanguage(l.value);await e.addSource({name:s.value.name??"Data",samples:[s.value.input]});const t=new k.InputData;return t.addInput(e),(await k.quicktype({inputData:t,lang:l.value,rendererOptions:o.value?.reduce((u,p)=>(u[p.name]=p.defaultValue,u),{})})).lines.join(`
2
- `)}),S=N(()=>{const e=l.value.toLocaleLowerCase();return e.startsWith("javascript")?"javascript":e.startsWith("json")?"json":e.startsWith("typescript")?"typescript":e});C(o,()=>{V.value++},{deep:!0}),C(l,()=>{o.value=v.value?.optionDefinitions.filter(e=>typeof e.defaultValue=="boolean")});const $=W();function B(){$(y.value||"")}return(e,t)=>{const w=E,u=q,p=z,L=O,I=J,T=P;return v.value?(n(),c(R,{key:0,to:"body"},[d(T,{"model-value":!!_(s)?.input,"auto-close":"","max-w-screen":"","w-2xl":"","n-code-block":"",onClose:t[2]||(t[2]=a=>s.value=null)},{default:r(()=>[i("div",G,[t[3]||(t[3]=i("p",{"mr-2":""}," Schema ",-1)),d(w,{modelValue:l.value,"onUpdate:modelValue":t[0]||(t[0]=a=>l.value=a),n:"xs primary"},{default:r(()=>[(n(!0),f(D,null,j(_(h.all),a=>(n(),f("option",{key:a.displayName},b(a.displayName),1))),128))]),_:1},8,["modelValue"]),o.value?.length?(n(),c(L,{key:0,n:"sm lime"},{trigger:r(({click:a})=>[d(u,{icon:"carbon-settings","h-full":"",onClick:g=>a()},null,8,["onClick"]),o.value?(n(),f("span",H,b(o.value.length),1)):m("",!0)]),default:r(()=>[i("div",K,[(n(!0),f(D,null,j(o.value,(a,g)=>(n(),c(p,{key:a.name,modelValue:o.value[g].defaultValue,"onUpdate:modelValue":A=>o.value[g].defaultValue=A,flex:"~ gap-2",rounded:"",px2:"",py2:""},{default:r(()=>[i("span",M,b(a.description),1)]),_:2},1032,["modelValue","onUpdate:modelValue"]))),128))])]),_:1})):m("",!0),t[4]||(t[4]=i("div",{"flex-auto":""},null,-1)),d(u,{icon:"carbon-copy","mr-6":"","h-full":"",onClick:t[1]||(t[1]=a=>B())})]),_(y)?(n(),c(I,{key:0,lang:S.value,code:_(y)},null,8,["lang","code"])):m("",!0)]),_:1},8,["model-value"])])):m("",!0)}}});export{ie as default};
@@ -1 +0,0 @@
1
- import{q as i,u,O as d,a0 as f,W as l,S as o,a8 as p,P as c,a7 as a}from"./vendor/json-editor-vue-huf8dypo.js";const m={"ml-1":"","text-xs":"",op50:""},g=i({__name:"DurationDisplay",props:{duration:{},factor:{default:1},color:{type:Boolean,default:!0}},setup(n){const t=n;function s(e){return t.color?e?(e=e*t.factor,e<.5?"text-gray:50":e>1e3?"text-red-400":e>500?"text-orange-400":e>200?"text-yellow-400":""):"text-gray-400":""}const r=u(()=>!t.duration||t.duration<1?["<1","ms"]:t.duration<1e3?[t.duration.toFixed(0),"ms"]:t.duration<1e3*60?[(t.duration/1e3).toFixed(1),"s"]:[(t.duration/1e3/60).toFixed(1),"min"]);return(e,x)=>(f(),d("div",{class:l(s(e.duration))},[o(e.$slots,"before"),p(" "+a(r.value[0]),1),c("span",m,a(r.value[1]),1),o(e.$slots,"after")],2))}});export{g as _};