@zuzjs/ui 1.0.32 → 1.0.33

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/bin.cjs CHANGED
@@ -1,8 +1,8 @@
1
1
  #!/usr/bin/env node
2
- 'use strict';var chunkKUHU22RD_cjs=require('./chunk-KUHU22RD.cjs'),commander=require('commander'),Z=require('chokidar'),p=require('path'),i=require('picocolors'),u=require('fs'),tsMorph=require('ts-morph'),url=require('url');function _interopDefault(e){return e&&e.__esModule?e:{default:e}}var Z__default=/*#__PURE__*/_interopDefault(Z);var p__default=/*#__PURE__*/_interopDefault(p);var i__default=/*#__PURE__*/_interopDefault(i);var u__default=/*#__PURE__*/_interopDefault(u);/* ZuzJS UI CLI */
3
- var k=class{project;stylesToGenerate;manifest={};supportedExtensions=[".tsx",".jsx",".mdx",".md"];constructor(){this.project=new tsMorph.Project({compilerOptions:{allowJs:true,jsx:1}}),this.stylesToGenerate=new Set;}extractStyles(e,t=""){if(e.asKind(tsMorph.SyntaxKind.JsxExpression)){let s=e.getExpression();s&&this.extractStyles(s,t);return}if(e.asKind(tsMorph.SyntaxKind.StringLiteral)||e.asKind(tsMorph.SyntaxKind.NoSubstitutionTemplateLiteral)||e.asKind(tsMorph.SyntaxKind.NumericLiteral))this.stylesToGenerate.add(t+e.getLiteralValue().toString());else if(e.asKind(tsMorph.SyntaxKind.TemplateExpression)){let s=e.getHead().getLiteralText();e.getTemplateSpans().forEach(l=>{this.extractStyles(l.getExpression(),t+s);});}else e.asKind(tsMorph.SyntaxKind.ConditionalExpression)?(this.extractStyles(e.getWhenTrue(),t),this.extractStyles(e.getWhenFalse(),t)):e.asKind(tsMorph.SyntaxKind.ArrayLiteralExpression)?e.getElements().forEach(s=>this.extractStyles(s,t)):e.asKind(tsMorph.SyntaxKind.BinaryExpression)&&(this.extractStyles(e.getLeft(),t),this.extractStyles(e.getRight(),t));}processFile(e){this.stylesToGenerate.clear();let t=e.endsWith(".mdx")||e.endsWith(".md"),s;if(t){let n=u__default.default.readFileSync(e,"utf-8");s=this.project.createSourceFile(e,n,{overwrite:true,scriptKind:tsMorph.ScriptKind.TSX});}else s=this.project.addSourceFileAtPath(e),s.refreshFromFileSystemSync();[...s.getDescendantsOfKind(tsMorph.SyntaxKind.JsxOpeningElement),...s.getDescendantsOfKind(tsMorph.SyntaxKind.JsxSelfClosingElement)].forEach(n=>{let a=n.getAttribute("as")?.asKind(tsMorph.SyntaxKind.JsxAttribute)?.getInitializer();a&&this.extractStyles(a);}),s.getDescendantsOfKind(tsMorph.SyntaxKind.CallExpression).filter(n=>n.getExpression().getText()==="css").forEach(n=>{let c=n.getArguments();c.length>0&&this.extractStyles(c[0]);}),this.stylesToGenerate.forEach(n=>{chunkKUHU22RD_cjs.h(n).filter(Boolean).forEach(a=>{let x=a.match(/^([&@][\w-]+)\((.*)\)$/);if(x){let[h,z,F]=x;chunkKUHU22RD_cjs.h(F).filter(Boolean).forEach(b=>{let v=`${z}(${b})`,w=chunkKUHU22RD_cjs.i.parseAndGenerate(v,e);w.length>0&&(this.manifest[v]=w.join(" "));});let j=chunkKUHU22RD_cjs.i.parseAndGenerate(a,e);j.length>0&&(this.manifest[a]=j.join(" "));}else {let h=chunkKUHU22RD_cjs.i.parseAndGenerate(a,e);h.length>0&&(this.manifest[a]=h.join(" "));}});}),t&&this.project.removeSourceFile(s);}isSupportedFile(e){return this.supportedExtensions.some(t=>e.endsWith(t))}getStyleCount(){return this.stylesToGenerate.size}getManifestPath=()=>{let e=process.cwd(),t=[p__default.default.join(e,"src/app/css"),p__default.default.join(e,"app/css"),p__default.default.join(e,"src/css"),p__default.default.join(e,"css")],s=t.find(l=>u__default.default.existsSync(l))||t[0];return u__default.default.existsSync(s)||u__default.default.mkdirSync(s,{recursive:true}),p__default.default.join(s,"zuzmap.ts")};saveManifest(e){let t=p__default.default.dirname(e);u__default.default.existsSync(t)||u__default.default.mkdirSync(t,{recursive:true});let s=chunkKUHU22RD_cjs.i.getCache(),l={};for(let[n,c]of Object.entries(this.manifest))s.has(c)&&(l[n]=c);this.manifest=l;let g=`/* Zuz Generated Manifest - Do not edit */
4
- export const zuzMap: Record<string, string> = ${JSON.stringify(this.manifest,null,2)};`;u__default.default.writeFileSync(e,g);}},y=new k;commander.program.opts();var S=process.cwd(),O=false,J=p__default.default.join(S,"src","app","css"),R=p__default.default.join(J,"zuz.scss"),W=p__default.default.join(J,"zuzmap.ts"),G=()=>{chunkKUHU22RD_cjs.i.writeToDisk(R),y.saveManifest(W);},P=async()=>{try{let o=p__default.default.dirname(url.fileURLToPath(chunkKUHU22RD_cjs.a)),e=p__default.default.resolve(o,"../package.json"),t=JSON.parse(u__default.default.readFileSync(e,"utf8")),g=(await(await fetch("https://registry.npmjs.org/@zuzjs/ui/latest")).json()).version.trim();if(g!==t.version.trim()){let n=` Update available! ${i__default.default.dim(t.version)} \u2192 ${i__default.default.green(g)} `,c=` Run: ${i__default.default.cyan(`npm i ${t.name}@latest`)} `,a=b=>b.replace(/\u001b\[[0-9;]*m/g,"").length,x=a(n),h=a(c),z=Math.max(x,h),F=i__default.default.yellow(`\u250C${"\u2500".repeat(z+2)}\u2510`),C=i__default.default.yellow(`\u2514${"\u2500".repeat(z+2)}\u2518`),j=(b,v)=>{let w=" ".repeat(z-v);return `${i__default.default.yellow("\u2502")} ${b}${w} ${i__default.default.yellow("\u2502")}`};console.log(`
2
+ 'use strict';var chunkLE3HEEAK_cjs=require('./chunk-LE3HEEAK.cjs'),commander=require('commander'),Z=require('chokidar'),p=require('path'),i=require('picocolors'),u=require('fs'),tsMorph=require('ts-morph'),url=require('url');function _interopDefault(e){return e&&e.__esModule?e:{default:e}}var Z__default=/*#__PURE__*/_interopDefault(Z);var p__default=/*#__PURE__*/_interopDefault(p);var i__default=/*#__PURE__*/_interopDefault(i);var u__default=/*#__PURE__*/_interopDefault(u);/* ZuzJS UI CLI */
3
+ var k=class{project;stylesToGenerate;manifest={};supportedExtensions=[".tsx",".jsx",".mdx",".md"];constructor(){this.project=new tsMorph.Project({compilerOptions:{allowJs:true,jsx:1}}),this.stylesToGenerate=new Set;}extractStyles(e,t=""){if(e.asKind(tsMorph.SyntaxKind.JsxExpression)){let s=e.getExpression();s&&this.extractStyles(s,t);return}if(e.asKind(tsMorph.SyntaxKind.StringLiteral)||e.asKind(tsMorph.SyntaxKind.NoSubstitutionTemplateLiteral)||e.asKind(tsMorph.SyntaxKind.NumericLiteral))this.stylesToGenerate.add(t+e.getLiteralValue().toString());else if(e.asKind(tsMorph.SyntaxKind.TemplateExpression)){let s=e.getHead().getLiteralText();e.getTemplateSpans().forEach(l=>{this.extractStyles(l.getExpression(),t+s);});}else e.asKind(tsMorph.SyntaxKind.ConditionalExpression)?(this.extractStyles(e.getWhenTrue(),t),this.extractStyles(e.getWhenFalse(),t)):e.asKind(tsMorph.SyntaxKind.ArrayLiteralExpression)?e.getElements().forEach(s=>this.extractStyles(s,t)):e.asKind(tsMorph.SyntaxKind.BinaryExpression)&&(this.extractStyles(e.getLeft(),t),this.extractStyles(e.getRight(),t));}processFile(e){this.stylesToGenerate.clear();let t=e.endsWith(".mdx")||e.endsWith(".md"),s;if(t){let n=u__default.default.readFileSync(e,"utf-8");s=this.project.createSourceFile(e,n,{overwrite:true,scriptKind:tsMorph.ScriptKind.TSX});}else s=this.project.addSourceFileAtPath(e),s.refreshFromFileSystemSync();[...s.getDescendantsOfKind(tsMorph.SyntaxKind.JsxOpeningElement),...s.getDescendantsOfKind(tsMorph.SyntaxKind.JsxSelfClosingElement)].forEach(n=>{let a=n.getAttribute("as")?.asKind(tsMorph.SyntaxKind.JsxAttribute)?.getInitializer();a&&this.extractStyles(a);}),s.getDescendantsOfKind(tsMorph.SyntaxKind.CallExpression).filter(n=>n.getExpression().getText()==="css").forEach(n=>{let c=n.getArguments();c.length>0&&this.extractStyles(c[0]);}),this.stylesToGenerate.forEach(n=>{chunkLE3HEEAK_cjs.h(n).filter(Boolean).forEach(a=>{let x=a.match(/^([&@][\w-]+)\((.*)\)$/);if(x){let[h,z,F]=x;chunkLE3HEEAK_cjs.h(F).filter(Boolean).forEach(b=>{let v=`${z}(${b})`,w=chunkLE3HEEAK_cjs.i.parseAndGenerate(v,e);w.length>0&&(this.manifest[v]=w.join(" "));});let j=chunkLE3HEEAK_cjs.i.parseAndGenerate(a,e);j.length>0&&(this.manifest[a]=j.join(" "));}else {let h=chunkLE3HEEAK_cjs.i.parseAndGenerate(a,e);h.length>0&&(this.manifest[a]=h.join(" "));}});}),t&&this.project.removeSourceFile(s);}isSupportedFile(e){return this.supportedExtensions.some(t=>e.endsWith(t))}getStyleCount(){return this.stylesToGenerate.size}getManifestPath=()=>{let e=process.cwd(),t=[p__default.default.join(e,"src/app/css"),p__default.default.join(e,"app/css"),p__default.default.join(e,"src/css"),p__default.default.join(e,"css")],s=t.find(l=>u__default.default.existsSync(l))||t[0];return u__default.default.existsSync(s)||u__default.default.mkdirSync(s,{recursive:true}),p__default.default.join(s,"zuzmap.ts")};saveManifest(e){let t=p__default.default.dirname(e);u__default.default.existsSync(t)||u__default.default.mkdirSync(t,{recursive:true});let s=chunkLE3HEEAK_cjs.i.getCache(),l={};for(let[n,c]of Object.entries(this.manifest))s.has(c)&&(l[n]=c);this.manifest=l;let g=`/* Zuz Generated Manifest - Do not edit */
4
+ export const zuzMap: Record<string, string> = ${JSON.stringify(this.manifest,null,2)};`;u__default.default.writeFileSync(e,g);}},y=new k;commander.program.opts();var S=process.cwd(),O=false,J=p__default.default.join(S,"src","app","css"),R=p__default.default.join(J,"zuz.scss"),W=p__default.default.join(J,"zuzmap.ts"),G=()=>{chunkLE3HEEAK_cjs.i.writeToDisk(R),y.saveManifest(W);},P=async()=>{try{let o=p__default.default.dirname(url.fileURLToPath(chunkLE3HEEAK_cjs.a)),e=p__default.default.resolve(o,"../package.json"),t=JSON.parse(u__default.default.readFileSync(e,"utf8")),g=(await(await fetch("https://registry.npmjs.org/@zuzjs/ui/latest")).json()).version.trim();if(g!==t.version.trim()){let n=` Update available! ${i__default.default.dim(t.version)} \u2192 ${i__default.default.green(g)} `,c=` Run: ${i__default.default.cyan(`npm i ${t.name}@latest`)} `,a=b=>b.replace(/\u001b\[[0-9;]*m/g,"").length,x=a(n),h=a(c),z=Math.max(x,h),F=i__default.default.yellow(`\u250C${"\u2500".repeat(z+2)}\u2510`),C=i__default.default.yellow(`\u2514${"\u2500".repeat(z+2)}\u2518`),j=(b,v)=>{let w=" ".repeat(z-v);return `${i__default.default.yellow("\u2502")} ${b}${w} ${i__default.default.yellow("\u2502")}`};console.log(`
5
5
  ${F}`),console.log(j(n,x)),console.log(j(c,h)),console.log(`${C}
6
- `);}}catch{}};commander.program.command("init").description("Initialize Zuz snippets and configuration").action(()=>{let o=p__default.default.join(S,".vscode"),e=p__default.default.join(o,"zuz.code-snippets"),t=p__default.default.join(o,"settings.json"),s=Object.keys(chunkKUHU22RD_cjs.b).join(","),l=Object.keys(chunkKUHU22RD_cjs.c).join(","),g={"Zuz Property":{prefix:"zp",body:[`as="\${1|${s}|}:$0"`],description:"Zuz Property (adds colon)"},"Zuz Shortcut":{prefix:"zs",body:[`as="\${1|${l}|}$0"`],description:"Zuz Direct Shortcut"}},n={};if(u__default.default.existsSync(t))try{n=JSON.parse(u__default.default.readFileSync(t,"utf-8"));}catch{n={};}n["editor.suggest.snippetsPreventQuickSuggestions"]=false,n["editor.quickSuggestions"]={...typeof n["editor.quickSuggestions"]=="object"?n["editor.quickSuggestions"]:{},strings:true},u__default.default.existsSync(o)||u__default.default.mkdirSync(o,{recursive:true}),u__default.default.writeFileSync(e,JSON.stringify(g,null,2)),u__default.default.writeFileSync(t,JSON.stringify(n,null,2)),console.log(i__default.default.green("\u2714 Zuz VS Code configuration initialized!")),console.log(i__default.default.cyan(" - .vscode/zuz.code-snippets (Splitted zp/zs)")),console.log(i__default.default.cyan(" - .vscode/settings.json (QuickSuggestions enabled)"));});commander.program.command("watch").alias("w").description("Start ZuzJS watcher").action(()=>{P();let o=Z__default.default.watch(".",{cwd:S,ignored:[/node_modules/,/dist/,/\.next/,/\.git/],persistent:true,usePolling:true,followSymlinks:false,ignoreInitial:false});o.on("add",e=>{y.isSupportedFile(e)&&y.processFile(p__default.default.resolve(S,e)),O&&console.log(i__default.default.gray(`\u25CB File added: ${e}`));}),o.on("change",e=>{if(y.isSupportedFile(e)){console.log(i__default.default.gray(`\u25CB File changed: ${e}`));let t=p__default.default.resolve(S,e);chunkKUHU22RD_cjs.i.clearFileCache(t),y.processFile(t),G(),console.log(i__default.default.blue("\u26A1 Zuz CSS updated."));}}),o.on("ready",()=>{O=true,G(),console.log(i__default.default.green(`
6
+ `);}}catch{}};commander.program.command("init").description("Initialize Zuz snippets and configuration").action(()=>{let o=p__default.default.join(S,".vscode"),e=p__default.default.join(o,"zuz.code-snippets"),t=p__default.default.join(o,"settings.json"),s=Object.keys(chunkLE3HEEAK_cjs.b).join(","),l=Object.keys(chunkLE3HEEAK_cjs.c).join(","),g={"Zuz Property":{prefix:"zp",body:[`as="\${1|${s}|}:$0"`],description:"Zuz Property (adds colon)"},"Zuz Shortcut":{prefix:"zs",body:[`as="\${1|${l}|}$0"`],description:"Zuz Direct Shortcut"}},n={};if(u__default.default.existsSync(t))try{n=JSON.parse(u__default.default.readFileSync(t,"utf-8"));}catch{n={};}n["editor.suggest.snippetsPreventQuickSuggestions"]=false,n["editor.quickSuggestions"]={...typeof n["editor.quickSuggestions"]=="object"?n["editor.quickSuggestions"]:{},strings:true},u__default.default.existsSync(o)||u__default.default.mkdirSync(o,{recursive:true}),u__default.default.writeFileSync(e,JSON.stringify(g,null,2)),u__default.default.writeFileSync(t,JSON.stringify(n,null,2)),console.log(i__default.default.green("\u2714 Zuz VS Code configuration initialized!")),console.log(i__default.default.cyan(" - .vscode/zuz.code-snippets (Splitted zp/zs)")),console.log(i__default.default.cyan(" - .vscode/settings.json (QuickSuggestions enabled)"));});commander.program.command("watch").alias("w").description("Start ZuzJS watcher").action(()=>{P();let o=Z__default.default.watch(".",{cwd:S,ignored:[/node_modules/,/dist/,/\.next/,/\.git/],persistent:true,usePolling:true,followSymlinks:false,ignoreInitial:false});o.on("add",e=>{y.isSupportedFile(e)&&y.processFile(p__default.default.resolve(S,e)),O&&console.log(i__default.default.gray(`\u25CB File added: ${e}`));}),o.on("change",e=>{if(y.isSupportedFile(e)){console.log(i__default.default.gray(`\u25CB File changed: ${e}`));let t=p__default.default.resolve(S,e);chunkLE3HEEAK_cjs.i.clearFileCache(t),y.processFile(t),G(),console.log(i__default.default.blue("\u26A1 Zuz CSS updated."));}}),o.on("ready",()=>{O=true,G(),console.log(i__default.default.green(`
7
7
  \u2713 Initial Build Complete.`)),console.log(i__default.default.cyan(`\u25CB Watching: ${p.basename(S)}
8
8
  `));}),o.on("error",e=>console.error(i__default.default.red(`Watcher Error: ${e}`)));});commander.program.parse(process.argv);
package/dist/bin.js CHANGED
@@ -1,5 +1,5 @@
1
1
  #!/usr/bin/env node
2
- import {a,b,h,g}from'./chunk-6246PXMY.js';import {program}from'commander';import D from'chokidar';import p,{basename}from'path';import i from'picocolors';import u from'fs';import {Project,SyntaxKind,ScriptKind}from'ts-morph';import {fileURLToPath}from'url';var T=class{project;stylesToGenerate;manifest={};supportedExtensions=[".tsx",".jsx",".mdx",".md"];constructor(){this.project=new Project({compilerOptions:{allowJs:true,jsx:1}}),this.stylesToGenerate=new Set;}extractStyles(e,t=""){if(e.asKind(SyntaxKind.JsxExpression)){let s=e.getExpression();s&&this.extractStyles(s,t);return}if(e.asKind(SyntaxKind.StringLiteral)||e.asKind(SyntaxKind.NoSubstitutionTemplateLiteral)||e.asKind(SyntaxKind.NumericLiteral))this.stylesToGenerate.add(t+e.getLiteralValue().toString());else if(e.asKind(SyntaxKind.TemplateExpression)){let s=e.getHead().getLiteralText();e.getTemplateSpans().forEach(l=>{this.extractStyles(l.getExpression(),t+s);});}else e.asKind(SyntaxKind.ConditionalExpression)?(this.extractStyles(e.getWhenTrue(),t),this.extractStyles(e.getWhenFalse(),t)):e.asKind(SyntaxKind.ArrayLiteralExpression)?e.getElements().forEach(s=>this.extractStyles(s,t)):e.asKind(SyntaxKind.BinaryExpression)&&(this.extractStyles(e.getLeft(),t),this.extractStyles(e.getRight(),t));}processFile(e){this.stylesToGenerate.clear();let t=e.endsWith(".mdx")||e.endsWith(".md"),s;if(t){let n=u.readFileSync(e,"utf-8");s=this.project.createSourceFile(e,n,{overwrite:true,scriptKind:ScriptKind.TSX});}else s=this.project.addSourceFileAtPath(e),s.refreshFromFileSystemSync();[...s.getDescendantsOfKind(SyntaxKind.JsxOpeningElement),...s.getDescendantsOfKind(SyntaxKind.JsxSelfClosingElement)].forEach(n=>{let a=n.getAttribute("as")?.asKind(SyntaxKind.JsxAttribute)?.getInitializer();a&&this.extractStyles(a);}),s.getDescendantsOfKind(SyntaxKind.CallExpression).filter(n=>n.getExpression().getText()==="css").forEach(n=>{let c=n.getArguments();c.length>0&&this.extractStyles(c[0]);}),this.stylesToGenerate.forEach(n=>{g(n).filter(Boolean).forEach(a=>{let x=a.match(/^([&@][\w-]+)\((.*)\)$/);if(x){let[h$1,z,F]=x;g(F).filter(Boolean).forEach(b=>{let v=`${z}(${b})`,w=h.parseAndGenerate(v,e);w.length>0&&(this.manifest[v]=w.join(" "));});let j=h.parseAndGenerate(a,e);j.length>0&&(this.manifest[a]=j.join(" "));}else {let h$1=h.parseAndGenerate(a,e);h$1.length>0&&(this.manifest[a]=h$1.join(" "));}});}),t&&this.project.removeSourceFile(s);}isSupportedFile(e){return this.supportedExtensions.some(t=>e.endsWith(t))}getStyleCount(){return this.stylesToGenerate.size}getManifestPath=()=>{let e=process.cwd(),t=[p.join(e,"src/app/css"),p.join(e,"app/css"),p.join(e,"src/css"),p.join(e,"css")],s=t.find(l=>u.existsSync(l))||t[0];return u.existsSync(s)||u.mkdirSync(s,{recursive:true}),p.join(s,"zuzmap.ts")};saveManifest(e){let t=p.dirname(e);u.existsSync(t)||u.mkdirSync(t,{recursive:true});let s=h.getCache(),l={};for(let[n,c]of Object.entries(this.manifest))s.has(c)&&(l[n]=c);this.manifest=l;let g=`/* Zuz Generated Manifest - Do not edit */
2
+ import {a,b,h,g}from'./chunk-6RUAMBJW.js';import {program}from'commander';import D from'chokidar';import p,{basename}from'path';import i from'picocolors';import u from'fs';import {Project,SyntaxKind,ScriptKind}from'ts-morph';import {fileURLToPath}from'url';var T=class{project;stylesToGenerate;manifest={};supportedExtensions=[".tsx",".jsx",".mdx",".md"];constructor(){this.project=new Project({compilerOptions:{allowJs:true,jsx:1}}),this.stylesToGenerate=new Set;}extractStyles(e,t=""){if(e.asKind(SyntaxKind.JsxExpression)){let s=e.getExpression();s&&this.extractStyles(s,t);return}if(e.asKind(SyntaxKind.StringLiteral)||e.asKind(SyntaxKind.NoSubstitutionTemplateLiteral)||e.asKind(SyntaxKind.NumericLiteral))this.stylesToGenerate.add(t+e.getLiteralValue().toString());else if(e.asKind(SyntaxKind.TemplateExpression)){let s=e.getHead().getLiteralText();e.getTemplateSpans().forEach(l=>{this.extractStyles(l.getExpression(),t+s);});}else e.asKind(SyntaxKind.ConditionalExpression)?(this.extractStyles(e.getWhenTrue(),t),this.extractStyles(e.getWhenFalse(),t)):e.asKind(SyntaxKind.ArrayLiteralExpression)?e.getElements().forEach(s=>this.extractStyles(s,t)):e.asKind(SyntaxKind.BinaryExpression)&&(this.extractStyles(e.getLeft(),t),this.extractStyles(e.getRight(),t));}processFile(e){this.stylesToGenerate.clear();let t=e.endsWith(".mdx")||e.endsWith(".md"),s;if(t){let n=u.readFileSync(e,"utf-8");s=this.project.createSourceFile(e,n,{overwrite:true,scriptKind:ScriptKind.TSX});}else s=this.project.addSourceFileAtPath(e),s.refreshFromFileSystemSync();[...s.getDescendantsOfKind(SyntaxKind.JsxOpeningElement),...s.getDescendantsOfKind(SyntaxKind.JsxSelfClosingElement)].forEach(n=>{let a=n.getAttribute("as")?.asKind(SyntaxKind.JsxAttribute)?.getInitializer();a&&this.extractStyles(a);}),s.getDescendantsOfKind(SyntaxKind.CallExpression).filter(n=>n.getExpression().getText()==="css").forEach(n=>{let c=n.getArguments();c.length>0&&this.extractStyles(c[0]);}),this.stylesToGenerate.forEach(n=>{g(n).filter(Boolean).forEach(a=>{let x=a.match(/^([&@][\w-]+)\((.*)\)$/);if(x){let[h$1,z,F]=x;g(F).filter(Boolean).forEach(b=>{let v=`${z}(${b})`,w=h.parseAndGenerate(v,e);w.length>0&&(this.manifest[v]=w.join(" "));});let j=h.parseAndGenerate(a,e);j.length>0&&(this.manifest[a]=j.join(" "));}else {let h$1=h.parseAndGenerate(a,e);h$1.length>0&&(this.manifest[a]=h$1.join(" "));}});}),t&&this.project.removeSourceFile(s);}isSupportedFile(e){return this.supportedExtensions.some(t=>e.endsWith(t))}getStyleCount(){return this.stylesToGenerate.size}getManifestPath=()=>{let e=process.cwd(),t=[p.join(e,"src/app/css"),p.join(e,"app/css"),p.join(e,"src/css"),p.join(e,"css")],s=t.find(l=>u.existsSync(l))||t[0];return u.existsSync(s)||u.mkdirSync(s,{recursive:true}),p.join(s,"zuzmap.ts")};saveManifest(e){let t=p.dirname(e);u.existsSync(t)||u.mkdirSync(t,{recursive:true});let s=h.getCache(),l={};for(let[n,c]of Object.entries(this.manifest))s.has(c)&&(l[n]=c);this.manifest=l;let g=`/* Zuz Generated Manifest - Do not edit */
3
3
  export const zuzMap: Record<string, string> = ${JSON.stringify(this.manifest,null,2)};`;u.writeFileSync(e,g);}},y=new T;program.opts();var S=process.cwd(),A=false,G=p.join(S,"src","app","css"),W=p.join(G,"zuz.scss"),P=p.join(G,"zuzmap.ts"),O=()=>{h.writeToDisk(W),y.saveManifest(P);},I=async()=>{try{let o=p.dirname(fileURLToPath(import.meta.url)),e=p.resolve(o,"../package.json"),t=JSON.parse(u.readFileSync(e,"utf8")),g=(await(await fetch("https://registry.npmjs.org/@zuzjs/ui/latest")).json()).version.trim();if(g!==t.version.trim()){let n=` Update available! ${i.dim(t.version)} \u2192 ${i.green(g)} `,c=` Run: ${i.cyan(`npm i ${t.name}@latest`)} `,a=b=>b.replace(/\u001b\[[0-9;]*m/g,"").length,x=a(n),h=a(c),z=Math.max(x,h),F=i.yellow(`\u250C${"\u2500".repeat(z+2)}\u2510`),k=i.yellow(`\u2514${"\u2500".repeat(z+2)}\u2518`),j=(b,v)=>{let w=" ".repeat(z-v);return `${i.yellow("\u2502")} ${b}${w} ${i.yellow("\u2502")}`};console.log(`
4
4
  ${F}`),console.log(j(n,x)),console.log(j(c,h)),console.log(`${k}
5
5
  `);}}catch{}};program.command("init").description("Initialize Zuz snippets and configuration").action(()=>{let o=p.join(S,".vscode"),e=p.join(o,"zuz.code-snippets"),t=p.join(o,"settings.json"),s=Object.keys(a).join(","),l=Object.keys(b).join(","),g={"Zuz Property":{prefix:"zp",body:[`as="\${1|${s}|}:$0"`],description:"Zuz Property (adds colon)"},"Zuz Shortcut":{prefix:"zs",body:[`as="\${1|${l}|}$0"`],description:"Zuz Direct Shortcut"}},n={};if(u.existsSync(t))try{n=JSON.parse(u.readFileSync(t,"utf-8"));}catch{n={};}n["editor.suggest.snippetsPreventQuickSuggestions"]=false,n["editor.quickSuggestions"]={...typeof n["editor.quickSuggestions"]=="object"?n["editor.quickSuggestions"]:{},strings:true},u.existsSync(o)||u.mkdirSync(o,{recursive:true}),u.writeFileSync(e,JSON.stringify(g,null,2)),u.writeFileSync(t,JSON.stringify(n,null,2)),console.log(i.green("\u2714 Zuz VS Code configuration initialized!")),console.log(i.cyan(" - .vscode/zuz.code-snippets (Splitted zp/zs)")),console.log(i.cyan(" - .vscode/settings.json (QuickSuggestions enabled)"));});program.command("watch").alias("w").description("Start ZuzJS watcher").action(()=>{I();let o=D.watch(".",{cwd:S,ignored:[/node_modules/,/dist/,/\.next/,/\.git/],persistent:true,usePolling:true,followSymlinks:false,ignoreInitial:false});o.on("add",e=>{y.isSupportedFile(e)&&y.processFile(p.resolve(S,e)),A&&console.log(i.gray(`\u25CB File added: ${e}`));}),o.on("change",e=>{if(y.isSupportedFile(e)){console.log(i.gray(`\u25CB File changed: ${e}`));let t=p.resolve(S,e);h.clearFileCache(t),y.processFile(t),O(),console.log(i.blue("\u26A1 Zuz CSS updated."));}}),o.on("ready",()=>{A=true,O(),console.log(i.green(`