varmory 1.0.5 → 1.0.7

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/README.md CHANGED
@@ -7,6 +7,8 @@ Drop in an interactive browser for the Quasar components you use and any custom
7
7
  - [Component Showcase](https://varmory-dec8b20a1b83.herokuapp.com/)
8
8
  - [MCP Server](https://varmory-dec8b20a1b83.herokuapp.com/#docs/MCP)
9
9
 
10
+ > See [**themed_varmory**](https://github.com/jeka-kiselyov/themed_varmory) for a reference example of using varmory as a base to build your own themed component library — swappable themes, a theme store, custom components, and an extended showcase.
11
+
10
12
  ## Installation
11
13
 
12
14
  ```bash
package/dist/varmory.mjs CHANGED
@@ -6664,6 +6664,8 @@ Drop in an interactive browser for the Quasar components you use and any custom
6664
6664
  - [Component Showcase](https://varmory-dec8b20a1b83.herokuapp.com/)
6665
6665
  - [MCP Server](https://varmory-dec8b20a1b83.herokuapp.com/#docs/MCP)
6666
6666
 
6667
+ > See [**themed_varmory**](https://github.com/jeka-kiselyov/themed_varmory) for a reference example of using varmory as a base to build your own themed component library — swappable themes, a theme store, custom components, and an extended showcase.
6668
+
6667
6669
  ## Installation
6668
6670
 
6669
6671
  \`\`\`bash
@@ -23776,8 +23778,10 @@ function yY(t) {
23776
23778
  e[r] || (e[r] = s);
23777
23779
  const l = Array.isArray(a) ? a : [a];
23778
23780
  o[r] || (o[r] = []);
23779
- for (const h of l)
23780
- o[r].push(kn(h));
23781
+ for (const h of l) {
23782
+ const d = kn(h), f = o[r].findIndex((v) => v.name === d.name);
23783
+ f >= 0 ? o[r][f] = d : o[r].push(d);
23784
+ }
23781
23785
  o[r].sort((h, d) => h.order - d.order);
23782
23786
  }
23783
23787
  const i = {}, n = Object.keys(o).sort(
@@ -235,6 +235,8 @@ Drop in an interactive browser for the Quasar components you use and any custom
235
235
  - [Component Showcase](https://varmory-dec8b20a1b83.herokuapp.com/)
236
236
  - [MCP Server](https://varmory-dec8b20a1b83.herokuapp.com/#docs/MCP)
237
237
 
238
+ > See [**themed_varmory**](https://github.com/jeka-kiselyov/themed_varmory) for a reference example of using varmory as a base to build your own themed component library — swappable themes, a theme store, custom components, and an extended showcase.
239
+
238
240
  ## Installation
239
241
 
240
242
  \`\`\`bash
@@ -4119,4 +4121,4 @@ export default {
4119
4121
  max-width: 800px;
4120
4122
  }
4121
4123
  </style>
4122
- `,ko=Object.assign({"./01 Colors/AllColors.vue":iL,"./02 Typography/HelperClasses.vue":gL,"./02 Typography/Typography.vue":LL,"./03 Icons/Icon.vue":WL,"./04 Buttons/Btn.vue":uO,"./04 Buttons/BtnDropdown.vue":CO,"./04 Buttons/BtnToggle.vue":LO,"./05 Dialogs/Dialog.vue":KO,"./07 Lists/ActiveList.vue":aF,"./07 Lists/BasicList.vue":uF,"./07 Lists/DenseList.vue":_F,"./07 Lists/ExpansionList.vue":CF,"./08 Menu/Menu.vue":MF,"./09 Panels/Banner.vue":WF,"./09 Panels/Card.vue":tz,"./10 Quasar_Inputs/Checkbox.vue":sz,"./10 Quasar_Inputs/Date.vue":xz,"./10 Quasar_Inputs/Input.vue":Oz,"./10 Quasar_Inputs/Radio.vue":Hz,"./10 Quasar_Inputs/Rating.vue":tP,"./10 Quasar_Inputs/Select.vue":gP,"./10 Quasar_Inputs/Slider.vue":IP,"./10 Quasar_Inputs/Time.vue":PP,"./10 Quasar_Inputs/Toggle.vue":HP,"./11 Quasar_Others/Chip.vue":YP,"./11 Quasar_Others/CircularProgress.vue":t$,"./11 Quasar_Others/Spinner.vue":x$,"./11 Quasar_Others/Tabs.vue":B$,"./12 Quasar_Editor/Editor.vue":z$,"./13 Quasar_Tables/MarkupTable.vue":oR,"./13 Quasar_Tables/Table.vue":pR}),RR=Object.assign({"./01 Colors/AllColors.vue":mR,"./02 Typography/HelperClasses.vue":uR,"./02 Typography/Typography.vue":hR,"./03 Icons/Icon.vue":fR,"./04 Buttons/Btn.vue":gR,"./04 Buttons/BtnDropdown.vue":bR,"./04 Buttons/BtnToggle.vue":yR,"./05 Dialogs/Dialog.vue":_R,"./07 Lists/ActiveList.vue":wR,"./07 Lists/BasicList.vue":xR,"./07 Lists/DenseList.vue":vR,"./07 Lists/ExpansionList.vue":kR,"./08 Menu/Menu.vue":SR,"./09 Panels/Banner.vue":QR,"./09 Panels/Card.vue":CR,"./10 Quasar_Inputs/Checkbox.vue":NR,"./10 Quasar_Inputs/Date.vue":IR,"./10 Quasar_Inputs/Input.vue":VR,"./10 Quasar_Inputs/Radio.vue":ER,"./10 Quasar_Inputs/Rating.vue":BR,"./10 Quasar_Inputs/Select.vue":TR,"./10 Quasar_Inputs/Slider.vue":AR,"./10 Quasar_Inputs/Time.vue":qR,"./10 Quasar_Inputs/Toggle.vue":DR,"./11 Quasar_Others/Chip.vue":jR,"./11 Quasar_Others/CircularProgress.vue":LR,"./11 Quasar_Others/Spinner.vue":OR,"./11 Quasar_Others/Tabs.vue":FR,"./12 Quasar_Editor/Editor.vue":zR,"./13 Quasar_Tables/MarkupTable.vue":PR,"./13 Quasar_Tables/Table.vue":$R}),ye={},So={};for(const o in ko){const t=o.split("/"),a=t[1],l=a.replace(/^\d+\s*/,""),n=t[2].replace(".vue",""),s=ko[o].default;ye[l]||(ye[l]=[],So[l]=a),ye[l].push({name:n,label:s.label||n,icon:s.icon||null,order:s.order??999,code:s.code||null,raw:RR[o]||null,component:s})}for(const o in ye)ye[o].sort((t,a)=>t.order-a.order);const MR=Object.assign({"../../../docs/CustomComponents.md":Lj,"../../../docs/MCP.md":Oj,"../../../docs/SHOWCASE.md":Fj,"../../../docs/USAGE.md":zj}),UR=Object.assign({"../../../README.md":Pj});function HR(o){return o.replace(/([a-z])([A-Z])/g,"$1 $2").replace(/([A-Z]+)([A-Z][a-z])/g,"$1 $2")}function Qo(o){const t=o.component||o,a=o.name||t.name||"Unknown";return{type:"component",name:a,label:t.label||HR(a),icon:t.icon||null,order:t.order??999,code:t.code??null,raw:o.raw||null,component:t}}function GR(){const o={};for(const t of Object.values(UR))o.README=t;for(const[t,a]of Object.entries(MR))o[t.split("/").pop().replace(".md","")]=a;return o}function WR(o){return{...GR(),...o}}function JR(o){const t={...So},a={};for(const[s,r]of Object.entries(ye))a[s]=r.map(Qo);for(const[s,r]of Object.entries(o||{})){const i=s.replace(/^\d+\s*/,"");t[i]||(t[i]=s);const c=Array.isArray(r)?r:[r];a[i]||(a[i]=[]);for(const m of c)a[i].push(Qo(m));a[i].sort((m,d)=>m.order-d.order)}const l={},n=Object.keys(a).sort((s,r)=>(t[s]||s).localeCompare(t[r]||r));for(const s of n)l[s]=a[s];return l}function YR(o,t){const a=window.location.hash.replace("#","");let n=Object.keys(t).includes("README")?"README":Object.keys(o)[0]||"",s=0;if(a){const[r,i]=a.split("/");if(r==="docs"&&i&&t[i])n=i;else if(n=o[r]?r:n,i&&o[n]){const c=o[n].findIndex(m=>m.name===i);c>=0&&(s=c)}}return{tab:n,index:s}}const ZR={name:"JComponentShowcase",mixins:[vn],components:{ShowcaseNav:Pn,ShowcaseMain:Wn,ShowcaseReference:Qj,ShowcaseToast:Bj,ShowcaseDocs:jj},props:{importFrom:{type:String,default:"varmory"},components:{type:Object,default:()=>({})},docs:{type:Object,default:()=>({})}},provide(){return{showcaseCopy:(o,t)=>{V.copyToClipboard(o);const a=o.length>60?o.slice(0,57)+"...":o;this.$refs.toast.notify(`Copied "${a}"`,t||"content_copy")}}},data(){const{tab:o,index:t}=YR(this.components,this.docs);return{activeTab:o,selectedIndex:t}},computed:{activeItems(){return this.components[this.activeTab]||[]},selectedItem(){return this.activeItems[this.selectedIndex]||null},activeCode(){var o,t;return((o=this.selectedItem)==null?void 0:o.code)||_o((t=this.selectedItem)==null?void 0:t.raw)||""},selectedKey(){return this.activeTab+"-"+this.selectedIndex},hasApiDoc(){var t;const o=(t=this.selectedItem)==null?void 0:t.component;return!!(o!=null&&o.apiJson||o!=null&&o.apiUrl||o!=null&&o.importName)},docPageNames(){return Object.keys(this.docs)},isDocPage(){return this.docPageNames.includes(this.activeTab)}},methods:{updateHash(){var t;const o=this.isDocPage?this.activeTab:(t=this.selectedItem)==null?void 0:t.name;if(o){const a=this.isDocPage?`#docs/${o}`:`#${this.activeTab}/${o}`;window.location.hash!==a&&history.replaceState(null,"",a)}},syncApiDoc(){var t;const o=(t=this.selectedItem)==null?void 0:t.component;this.apiJson=(o==null?void 0:o.apiJson)||null,this.apiUrl=!(o!=null&&o.apiJson)&&(o!=null&&o.apiUrl)?o.apiUrl:null,this.apiImportName=(o==null?void 0:o.importName)||null,this.apiImportFrom=(o==null?void 0:o.importFrom)||this.importFrom||null},selectItem({category:o,name:t}){const l=(this.components[o]||[]).findIndex(n=>n.name===t);this.activeTab=o,this.selectedIndex=l>=0?l:0},selectDoc(o){this.docs[o]&&(this.activeTab=o)},showToast(o,t){const a=++toastId;this.toasts.push({id:a,message:o,icon:t}),setTimeout(()=>{const l=this.toasts.findIndex(n=>n.id===a);l>=0&&this.toasts.splice(l,1)},2500)}},mounted(){this._onHashChange=()=>{const o=window.location.hash.replace("#","");if(!o)return;const[t,a]=o.split("/");t==="docs"&&a&&this.docs[a]?this.selectDoc(a):t&&a&&this.components[t]&&this.selectItem({category:t,name:a})},window.addEventListener("hashchange",this._onHashChange)},beforeUnmount(){window.removeEventListener("hashchange",this._onHashChange)},watch:{selectedItem:{immediate:!0,handler(){this.syncApiDoc(),this.updateHash()}},activeTab(){this.updateHash()}}},KR={class:"q-pa-sm"},XR={class:"row q-col-gutter-md"},eM={class:"col-12 col-sm-4 col-md-2"},tM={class:"col-12 col-sm-8 col-md-10"},oM={key:1,class:"row q-col-gutter-md"},nM={class:"col-12 col-md-6"},aM={class:"col-12 col-md-6"};function rM(o,t,a,l,n,s){var u,g;const r=e.resolveComponent("ShowcaseNav"),i=e.resolveComponent("ShowcaseDocs"),c=e.resolveComponent("ShowcaseMain"),m=e.resolveComponent("ShowcaseReference"),d=e.resolveComponent("ShowcaseToast");return e.openBlock(),e.createElementBlock("div",KR,[e.createElementVNode("div",XR,[e.createElementVNode("div",eM,[e.createVNode(r,{"active-tab":n.activeTab,"selected-name":s.isDocPage?null:(u=s.selectedItem)==null?void 0:u.name,categories:a.components,"doc-pages":s.docPageNames,"active-doc":s.isDocPage?n.activeTab:null,onSelect:s.selectItem,onSelectDoc:s.selectDoc},null,8,["active-tab","selected-name","categories","doc-pages","active-doc","onSelect","onSelectDoc"])]),e.createElementVNode("div",tM,[s.isDocPage?(e.openBlock(),e.createBlock(i,{key:0,docs:a.docs,"active-page":n.activeTab,onNavigate:s.selectDoc},null,8,["docs","active-page","onNavigate"])):(e.openBlock(),e.createElementBlock("div",oM,[e.createElementVNode("div",nM,[e.createVNode(c,{item:s.selectedItem},null,8,["item"])]),e.createElementVNode("div",aM,[e.createVNode(m,{code:s.activeCode,"code-key":s.selectedKey,"has-api":s.hasApiDoc,"docs-url":o.apiDocsUrl,title:o.apiTagName||((g=s.selectedItem)==null?void 0:g.name)||"REFERENCE","is-tag-name":!!o.apiTagName},null,8,["code","code-key","has-api","docs-url","title","is-tag-name"])])]))])]),e.createVNode(d,{ref:"toast",position:"bottom"},null,512)])}const it=j(ZR,[["render",rM],["__scopeId","data-v-f7d633ba"]]),sM={name:"JComponentShowcaseWithContent",components:{JComponentShowcase:it},inheritAttrs:!1,props:{components:{type:Object,default:()=>({})},docs:{type:Object,default:()=>({})}},computed:{allComponents(){return JR(this.components)},allDocs(){return WR(this.docs)}}};function iM(o,t,a,l,n,s){const r=e.resolveComponent("JComponentShowcase");return e.openBlock(),e.createBlock(r,e.mergeProps({components:s.allComponents,docs:s.allDocs},o.$attrs),null,16,["components","docs"])}const Co=j(sM,[["render",iM]]),lM={install(o,t){if(!o.config.globalProperties.$q)throw new Error("Quasar must be attached to the Vue app before Varmory (.use())");o.component("JComponentShowcase",it),o.component("JComponentShowcaseWithContent",Co)}};W.JComponentShowcase=it,W.JComponentShowcaseWithContent=Co,W.Varmory=lM,W.extractTemplate=_o,Object.defineProperty(W,Symbol.toStringTag,{value:"Module"})});
4124
+ `,ko=Object.assign({"./01 Colors/AllColors.vue":iL,"./02 Typography/HelperClasses.vue":gL,"./02 Typography/Typography.vue":LL,"./03 Icons/Icon.vue":WL,"./04 Buttons/Btn.vue":uO,"./04 Buttons/BtnDropdown.vue":CO,"./04 Buttons/BtnToggle.vue":LO,"./05 Dialogs/Dialog.vue":KO,"./07 Lists/ActiveList.vue":aF,"./07 Lists/BasicList.vue":uF,"./07 Lists/DenseList.vue":_F,"./07 Lists/ExpansionList.vue":CF,"./08 Menu/Menu.vue":MF,"./09 Panels/Banner.vue":WF,"./09 Panels/Card.vue":tz,"./10 Quasar_Inputs/Checkbox.vue":sz,"./10 Quasar_Inputs/Date.vue":xz,"./10 Quasar_Inputs/Input.vue":Oz,"./10 Quasar_Inputs/Radio.vue":Hz,"./10 Quasar_Inputs/Rating.vue":tP,"./10 Quasar_Inputs/Select.vue":gP,"./10 Quasar_Inputs/Slider.vue":IP,"./10 Quasar_Inputs/Time.vue":PP,"./10 Quasar_Inputs/Toggle.vue":HP,"./11 Quasar_Others/Chip.vue":YP,"./11 Quasar_Others/CircularProgress.vue":t$,"./11 Quasar_Others/Spinner.vue":x$,"./11 Quasar_Others/Tabs.vue":B$,"./12 Quasar_Editor/Editor.vue":z$,"./13 Quasar_Tables/MarkupTable.vue":oR,"./13 Quasar_Tables/Table.vue":pR}),RR=Object.assign({"./01 Colors/AllColors.vue":mR,"./02 Typography/HelperClasses.vue":uR,"./02 Typography/Typography.vue":hR,"./03 Icons/Icon.vue":fR,"./04 Buttons/Btn.vue":gR,"./04 Buttons/BtnDropdown.vue":bR,"./04 Buttons/BtnToggle.vue":yR,"./05 Dialogs/Dialog.vue":_R,"./07 Lists/ActiveList.vue":wR,"./07 Lists/BasicList.vue":xR,"./07 Lists/DenseList.vue":vR,"./07 Lists/ExpansionList.vue":kR,"./08 Menu/Menu.vue":SR,"./09 Panels/Banner.vue":QR,"./09 Panels/Card.vue":CR,"./10 Quasar_Inputs/Checkbox.vue":NR,"./10 Quasar_Inputs/Date.vue":IR,"./10 Quasar_Inputs/Input.vue":VR,"./10 Quasar_Inputs/Radio.vue":ER,"./10 Quasar_Inputs/Rating.vue":BR,"./10 Quasar_Inputs/Select.vue":TR,"./10 Quasar_Inputs/Slider.vue":AR,"./10 Quasar_Inputs/Time.vue":qR,"./10 Quasar_Inputs/Toggle.vue":DR,"./11 Quasar_Others/Chip.vue":jR,"./11 Quasar_Others/CircularProgress.vue":LR,"./11 Quasar_Others/Spinner.vue":OR,"./11 Quasar_Others/Tabs.vue":FR,"./12 Quasar_Editor/Editor.vue":zR,"./13 Quasar_Tables/MarkupTable.vue":PR,"./13 Quasar_Tables/Table.vue":$R}),ye={},So={};for(const o in ko){const t=o.split("/"),a=t[1],l=a.replace(/^\d+\s*/,""),n=t[2].replace(".vue",""),s=ko[o].default;ye[l]||(ye[l]=[],So[l]=a),ye[l].push({name:n,label:s.label||n,icon:s.icon||null,order:s.order??999,code:s.code||null,raw:RR[o]||null,component:s})}for(const o in ye)ye[o].sort((t,a)=>t.order-a.order);const MR=Object.assign({"../../../docs/CustomComponents.md":Lj,"../../../docs/MCP.md":Oj,"../../../docs/SHOWCASE.md":Fj,"../../../docs/USAGE.md":zj}),UR=Object.assign({"../../../README.md":Pj});function HR(o){return o.replace(/([a-z])([A-Z])/g,"$1 $2").replace(/([A-Z]+)([A-Z][a-z])/g,"$1 $2")}function Qo(o){const t=o.component||o,a=o.name||t.name||"Unknown";return{type:"component",name:a,label:t.label||HR(a),icon:t.icon||null,order:t.order??999,code:t.code??null,raw:o.raw||null,component:t}}function GR(){const o={};for(const t of Object.values(UR))o.README=t;for(const[t,a]of Object.entries(MR))o[t.split("/").pop().replace(".md","")]=a;return o}function WR(o){return{...GR(),...o}}function JR(o){const t={...So},a={};for(const[s,r]of Object.entries(ye))a[s]=r.map(Qo);for(const[s,r]of Object.entries(o||{})){const i=s.replace(/^\d+\s*/,"");t[i]||(t[i]=s);const c=Array.isArray(r)?r:[r];a[i]||(a[i]=[]);for(const m of c){const d=Qo(m),u=a[i].findIndex(g=>g.name===d.name);u>=0?a[i][u]=d:a[i].push(d)}a[i].sort((m,d)=>m.order-d.order)}const l={},n=Object.keys(a).sort((s,r)=>(t[s]||s).localeCompare(t[r]||r));for(const s of n)l[s]=a[s];return l}function YR(o,t){const a=window.location.hash.replace("#","");let n=Object.keys(t).includes("README")?"README":Object.keys(o)[0]||"",s=0;if(a){const[r,i]=a.split("/");if(r==="docs"&&i&&t[i])n=i;else if(n=o[r]?r:n,i&&o[n]){const c=o[n].findIndex(m=>m.name===i);c>=0&&(s=c)}}return{tab:n,index:s}}const ZR={name:"JComponentShowcase",mixins:[vn],components:{ShowcaseNav:Pn,ShowcaseMain:Wn,ShowcaseReference:Qj,ShowcaseToast:Bj,ShowcaseDocs:jj},props:{importFrom:{type:String,default:"varmory"},components:{type:Object,default:()=>({})},docs:{type:Object,default:()=>({})}},provide(){return{showcaseCopy:(o,t)=>{V.copyToClipboard(o);const a=o.length>60?o.slice(0,57)+"...":o;this.$refs.toast.notify(`Copied "${a}"`,t||"content_copy")}}},data(){const{tab:o,index:t}=YR(this.components,this.docs);return{activeTab:o,selectedIndex:t}},computed:{activeItems(){return this.components[this.activeTab]||[]},selectedItem(){return this.activeItems[this.selectedIndex]||null},activeCode(){var o,t;return((o=this.selectedItem)==null?void 0:o.code)||_o((t=this.selectedItem)==null?void 0:t.raw)||""},selectedKey(){return this.activeTab+"-"+this.selectedIndex},hasApiDoc(){var t;const o=(t=this.selectedItem)==null?void 0:t.component;return!!(o!=null&&o.apiJson||o!=null&&o.apiUrl||o!=null&&o.importName)},docPageNames(){return Object.keys(this.docs)},isDocPage(){return this.docPageNames.includes(this.activeTab)}},methods:{updateHash(){var t;const o=this.isDocPage?this.activeTab:(t=this.selectedItem)==null?void 0:t.name;if(o){const a=this.isDocPage?`#docs/${o}`:`#${this.activeTab}/${o}`;window.location.hash!==a&&history.replaceState(null,"",a)}},syncApiDoc(){var t;const o=(t=this.selectedItem)==null?void 0:t.component;this.apiJson=(o==null?void 0:o.apiJson)||null,this.apiUrl=!(o!=null&&o.apiJson)&&(o!=null&&o.apiUrl)?o.apiUrl:null,this.apiImportName=(o==null?void 0:o.importName)||null,this.apiImportFrom=(o==null?void 0:o.importFrom)||this.importFrom||null},selectItem({category:o,name:t}){const l=(this.components[o]||[]).findIndex(n=>n.name===t);this.activeTab=o,this.selectedIndex=l>=0?l:0},selectDoc(o){this.docs[o]&&(this.activeTab=o)},showToast(o,t){const a=++toastId;this.toasts.push({id:a,message:o,icon:t}),setTimeout(()=>{const l=this.toasts.findIndex(n=>n.id===a);l>=0&&this.toasts.splice(l,1)},2500)}},mounted(){this._onHashChange=()=>{const o=window.location.hash.replace("#","");if(!o)return;const[t,a]=o.split("/");t==="docs"&&a&&this.docs[a]?this.selectDoc(a):t&&a&&this.components[t]&&this.selectItem({category:t,name:a})},window.addEventListener("hashchange",this._onHashChange)},beforeUnmount(){window.removeEventListener("hashchange",this._onHashChange)},watch:{selectedItem:{immediate:!0,handler(){this.syncApiDoc(),this.updateHash()}},activeTab(){this.updateHash()}}},KR={class:"q-pa-sm"},XR={class:"row q-col-gutter-md"},eM={class:"col-12 col-sm-4 col-md-2"},tM={class:"col-12 col-sm-8 col-md-10"},oM={key:1,class:"row q-col-gutter-md"},nM={class:"col-12 col-md-6"},aM={class:"col-12 col-md-6"};function rM(o,t,a,l,n,s){var u,g;const r=e.resolveComponent("ShowcaseNav"),i=e.resolveComponent("ShowcaseDocs"),c=e.resolveComponent("ShowcaseMain"),m=e.resolveComponent("ShowcaseReference"),d=e.resolveComponent("ShowcaseToast");return e.openBlock(),e.createElementBlock("div",KR,[e.createElementVNode("div",XR,[e.createElementVNode("div",eM,[e.createVNode(r,{"active-tab":n.activeTab,"selected-name":s.isDocPage?null:(u=s.selectedItem)==null?void 0:u.name,categories:a.components,"doc-pages":s.docPageNames,"active-doc":s.isDocPage?n.activeTab:null,onSelect:s.selectItem,onSelectDoc:s.selectDoc},null,8,["active-tab","selected-name","categories","doc-pages","active-doc","onSelect","onSelectDoc"])]),e.createElementVNode("div",tM,[s.isDocPage?(e.openBlock(),e.createBlock(i,{key:0,docs:a.docs,"active-page":n.activeTab,onNavigate:s.selectDoc},null,8,["docs","active-page","onNavigate"])):(e.openBlock(),e.createElementBlock("div",oM,[e.createElementVNode("div",nM,[e.createVNode(c,{item:s.selectedItem},null,8,["item"])]),e.createElementVNode("div",aM,[e.createVNode(m,{code:s.activeCode,"code-key":s.selectedKey,"has-api":s.hasApiDoc,"docs-url":o.apiDocsUrl,title:o.apiTagName||((g=s.selectedItem)==null?void 0:g.name)||"REFERENCE","is-tag-name":!!o.apiTagName},null,8,["code","code-key","has-api","docs-url","title","is-tag-name"])])]))])]),e.createVNode(d,{ref:"toast",position:"bottom"},null,512)])}const it=j(ZR,[["render",rM],["__scopeId","data-v-f7d633ba"]]),sM={name:"JComponentShowcaseWithContent",components:{JComponentShowcase:it},inheritAttrs:!1,props:{components:{type:Object,default:()=>({})},docs:{type:Object,default:()=>({})}},computed:{allComponents(){return JR(this.components)},allDocs(){return WR(this.docs)}}};function iM(o,t,a,l,n,s){const r=e.resolveComponent("JComponentShowcase");return e.openBlock(),e.createBlock(r,e.mergeProps({components:s.allComponents,docs:s.allDocs},o.$attrs),null,16,["components","docs"])}const Co=j(sM,[["render",iM]]),lM={install(o,t){if(!o.config.globalProperties.$q)throw new Error("Quasar must be attached to the Vue app before Varmory (.use())");o.component("JComponentShowcase",it),o.component("JComponentShowcaseWithContent",Co)}};W.JComponentShowcase=it,W.JComponentShowcaseWithContent=Co,W.Varmory=lM,W.extractTemplate=_o,Object.defineProperty(W,Symbol.toStringTag,{value:"Module"})});
package/package.json CHANGED
@@ -1,7 +1,15 @@
1
1
  {
2
2
  "name": "varmory",
3
- "description": "",
4
- "version": "1.0.5",
3
+ "description": "Component showcase for Vue 3 + Quasar apps with a built-in MCP (Model Context Protocol) server. Drop in an interactive browser for Quasar and custom components, auto-loaded docs, and searchable API definitions — and expose the same metadata to AI agents like Claude via Streamable HTTP MCP. No extra glue needed.",
4
+ "version": "1.0.7",
5
+ "repository": {
6
+ "type": "git",
7
+ "url": "git+https://github.com/jeka-kiselyov/varmory.git"
8
+ },
9
+ "homepage": "https://github.com/jeka-kiselyov/varmory#readme",
10
+ "bugs": {
11
+ "url": "https://github.com/jeka-kiselyov/varmory/issues"
12
+ },
5
13
  "files": [
6
14
  "dist",
7
15
  "mcp/showcaseMcp.js",