@aurodesignsystem-dev/auro-cli 0.0.0-pr286.3 → 0.0.0-pr286.4
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/auro-cli.js +1 -1
- package/dist/auro-cli.js.map +2 -2
- package/package.json +1 -1
package/dist/auro-cli.js
CHANGED
|
@@ -20,7 +20,7 @@ ${x.trimEnd()}
|
|
|
20
20
|
</code></pre>`});l!==e&&await T.promises.writeFile(r,l),e=await T.promises.readFile(r,"utf8"),e=e.replace(/(<pre[^>]*><code[^>]*>)([\s\S]*?)(<\/code><\/pre>)/g,(c,d,p,f)=>{let g=p.split(`
|
|
21
21
|
`),b=g.filter($=>$.trim().length>0);if(b.length===0)return c;let x=Math.min(...b.map($=>{let V=$.match(/^[ \t]*/);return V?V[0].length:0})),k=g.map($=>$===""||$.trim().length===0?"\u200B":x>0?$.substring(x):$);for(;k.length>0&&(k[k.length-1]==="\u200B"||k[k.length-1]==="");)k.pop();return d+k.join(`
|
|
22
22
|
`)+f});let m=e.split(`
|
|
23
|
-
`),u=!1;for(let c=0;c<m.length;c++)/<pre[\s>]/i.test(m[c])&&(u=!0),u||(m[c]=m[c].replace(/^[ \t]
|
|
23
|
+
`),u=!1;for(let c=0;c<m.length;c++)/<pre[\s>]/i.test(m[c])&&(u=!0),u||(m[c]=m[c].replace(/^[ \t]+(?=<)/,"")),/<\/pre>/i.test(m[c])&&(u=!1);await T.promises.writeFile(r,m.join(`
|
|
24
24
|
`))}async function _(r={}){let t=r.readmeTemplate,e=t&&!t.startsWith("http");await ar({...Qe,...e?{localReadmePath:D.resolve(process.cwd(),t)}:{remoteReadmeUrl:t||"https://raw.githubusercontent.com/AlaskaAirlines/auro-templates/main/templates/default/README.md"}},r.skipReadme)}function Ze(r){return T.existsSync(E(r))}import{existsSync as et,readFileSync as lr}from"node:fs";import{builtinModules as mr}from"node:module";import{resolve as ee}from"node:path";import{startDevServer as ur}from"@web/dev-server";import{hmrPlugin as dr}from"@web/dev-server-hmr";import*as tt from"esbuild";import pr from"ora";var P=["node_modules","../node_modules","../../node_modules","../../../node_modules"];var fr=/^\/__wds-outside-root__\/(\d+)\/(.+)$/;function gr(){return{name:"node-modules-css",serve(r){if(!r.path.endsWith(".css")||!r.path.startsWith("/@")&&!/^\/[a-z]/i.test(r.path))return;let t=r.path.slice(1),e=process.cwd();for(let n of P){let o=ee(e,n,t);if(et(o))return{body:lr(o,"utf-8"),type:"css"}}}}}function hr(r,t){let e=r.match(fr);return e?ee(t,"../".repeat(Number.parseInt(e[1],10)),e[2]):ee(t,`.${r}`)}function yr(){let r=/\b(require\s*\(|module\.exports\b|exports\.\w)/,t=new Map,e;return{name:"cjs-to-esm",async serverStart({config:n}){e=ee(n.rootDir)},async transform(n){if(!n.path.includes("node_modules")||!n.path.endsWith(".js")&&!n.path.endsWith(".cjs")||typeof n.body!="string"||!r.test(n.body))return;let o=hr(n.path,e);if(t.has(o))return t.get(o);if(et(o))try{let i={body:(await tt.build({entryPoints:[o],bundle:!0,format:"esm",platform:"browser",write:!1,logLevel:"silent",external:mr})).outputFiles[0].text};return t.set(o,i),i}catch(s){console.error(`CJS-to-ESM bundling failed for ${n.path}:`,s.message)}}}}var F={watch:!0,nodeResolve:!0,basePath:"/",rootDir:"./demo",hmrInclude:["src/**/*","demo/**/*","apiExamples/**/*","docs/**/*"]};async function te(r={}){if(!r.serve)return;let t=pr(`Firing up dev server...
|
|
25
25
|
`).start();try{let e={port:Number(r.port)||void 0,open:r.open?"/":void 0,watch:r.watch??F.watch,nodeResolve:r.nodeResolve??F.nodeResolve,basePath:r.basePath??F.basePath,rootDir:r.rootDir??F.rootDir,middleware:[function(s,i){return!s.url.endsWith("/")&&!s.url.includes(".")&&(s.url+=".html"),i()}],plugins:[gr(),yr(),dr({include:r.hmrInclude??F.hmrInclude})]},n=await ur({config:e,readCliArgs:!1,readFileConfig:!1});return t.stop(),n}catch(e){throw t.fail("Server snag! Couldn't start dev server."),console.error("Error starting development server:",e),new Error(`Development server failed to start: ${e.message}`)}}async function re(){let r=B("Generating Custom Elements Manifest...").start();try{await A(`npx --package=@custom-elements-manifest/analyzer -y -- cem analyze --config '${Ve("custom-elements-manifest.config.mjs")}'`),r.succeed("Custom Elements Manifest generated successfully!")}catch(t){let e=t instanceof Error?t.message:String(t);r.warn("CEM analyzer completed with warnings: "+e)}}async function ne(){let r=B("Generating API md file...").start();try{await O.generate(),r.succeed("API md file generated successfully!")}catch(t){let e=t instanceof Error?t.message:String(t);throw r.fail("Failed to generate API md file: "+e),t}}async function rt(r={}){let t=B("Compiling documentation...").start();try{await _(r),t.succeed("Documentation compiled successfully!")}catch(e){let n=e instanceof Error?e.message:String(e);throw t.fail("Failed to compile MD documentation: "+n),e}N(),await C(),await Ee(r)}async function nt(r={}){await te(r)}async function ot(r={}){let t=await import("chokidar"),e=["./src/**/*","./docs/**/*","./docTemplates/**/*","./apiExamples/**/*","./demo/**/*.scss"],n=["**/demo/*.min.js","**/demo/*.min.css","**/demo/*.md","**/demo/readme.md","**/docs/api.md","**/custom-elements.json","**/node_modules/**","**/dist/**","**/.git/**"],o=t.watch(e,{ignoreInitial:!0,ignored:n,awaitWriteFinish:{stabilityThreshold:1e3,pollInterval:100}}),s=B("Waiting for changes...");s.spinner="bouncingBar",s.color="green",s.start();let i=null,a=!1,l=!1;async function m(u){if(a){l=!0;return}a=!0,o.unwatch(e);let c=B(`Change detected: ${u}`).start();try{await _(r),N(),await C(),await Ee(r),c.succeed("Docs rebuilt!")}catch(d){let p=d instanceof Error?d.message:String(d);c.fail("Rebuild failed: "+p)}finally{setTimeout(()=>{o.add(e),a=!1,l&&(l=!1,m("queued changes"))},1e3)}}o.on("all",(u,c)=>{a||(i&&clearTimeout(i),i=setTimeout(()=>{m(c)},1e3))}),j(o),Q()}async function oe(){await re(),await ne()}import{basename as kr,join as it}from"node:path";import $r from"@rollup/plugin-commonjs";import{nodeResolve as Er}from"@rollup/plugin-node-resolve";import{glob as Ar}from"glob";import{litScss as vr}from"rollup-plugin-scss-lit";import wr from"node:path";import{glob as br}from"glob";function st(r){return{name:"watch-globs",buildStart(){let t=Array.isArray(r)?r:[r];for(let e of t)try{for(let n of br.sync(wr.resolve(e)))this.addWatchFile(n)}catch(n){this.error(`Error watching glob pattern "${e}": ${n.message}`)}}}}var Ae={moduleDirectories:["node_modules"],modulePaths:["../../node_modules","../node_modules","node_modules"],watchPatterns:["./apiExamples/**/*","./docs/**/*"]};function at(r=[],t={}){let{watchPatterns:e=Ae.watchPatterns,dedupe:n=["lit","lit-element","lit-html"],dev:o=!1}=t,s=[...Ae.modulePaths,...r];return[Er({dedupe:n,preferBuiltins:!1,moduleDirectories:Ae.moduleDirectories}),$r(),vr({minify:o?!1:{fast:!0},options:{loadPaths:[...s,it(process.cwd(),"src","styles"),it(process.cwd(),"src")]}}),st(e)]}function ve(r={}){let{modulePaths:t=[],watch:e=!1,input:n=["./src/index.js","./src/registered.js"],outputDir:o="./dist",format:s="esm",dev:i=!1}=r;return{name:"Main",config:{input:n,output:{format:s,dir:o,entryFileNames:a=>i||["index","registered"].includes(a.name)?"[name].js":"[name]-[hash].js",chunkFileNames:i?"[name].js":"[name]-[hash].js",assetFileNames:i?"[name][extname]":"[name]-[hash][extname]"},external:Tr(),plugins:at(t,{dev:i}),watch:ct(e)}}}function G(r={}){let{modulePaths:t=[],watch:e=!1,globPattern:n="./demo/*.js",ignorePattern:o=["./demo/*.min.js"],outputDir:s="./demo",dev:i=!1}=r;return{name:"Demo",config:{input:Object.fromEntries(Ar.sync(n,{ignore:o}).map(a=>[kr(a,".js"),a])),output:{format:"esm",dir:s,entryFileNames:"[name].min.js",chunkFileNames:"[name].min.js",assetFileNames:i?"[name][extname]":"[name]-[hash][extname]"},plugins:at(t,{dev:i}),watch:ct(e)}}}function ct(r){if(!r)return!1;let t=typeof r=="object"?r:{};return{clearScreen:t.clearScreen??!0,buildDelay:t.buildDelay??500,chokidar:{ignoreInitial:!0,ignored:t.ignored??["**/dist/**/*.d.ts","**/custom-elements.json","**/demo/*.md","**/demo/**/*.min.js","**/demo/**/*.min.css","**/docs/api.md","**/node_modules/**","**/.git/**"],awaitWriteFinish:t.awaitWriteFinish??{stabilityThreshold:1e3,pollInterval:100}},include:t.include??["./src/**/*.scss","./src/**/*.js","./src/**/*.ts","./demo/**/*.js","./apiExamples/**/*","./docs/**/*.md"],exclude:t.exclude??["./dist/**/*","./node_modules/**/*"]}}function Tr(r=[]){return[...[/node_modules\/lit/,/node_modules\/lit-element/,/node_modules\/lit-html/,/node_modules\/@lit/],...r]}function dt(){let r=M("./dist"),t=Ce("Cleaning dist folder...").start();try{return Ir(r,{recursive:!0,force:!0}),t.succeed("All clean! Dist folder wiped."),!0}catch(e){return t.fail(`Oops! Couldn't clean dist/ folder: ${e.message}`),console.error(e),!1}}async function ie(r,t,e,n){let o=Ce(r).start();try{let s=await t();return o.succeed(e),s}catch(s){throw o.fail(n),console.error(`Error: ${s.message}`),s}}async function pt(r,t){return ie(`Bundling ${r.name||"main"} and ${t.name||"demo"}...`,async()=>{let e=await Te(r);await e.write(r.output),await e.close();let n=await Te(t);await n.write(t.output),await n.close()},`Bundles ready! ${r.name||"Main"} and ${t.name||"demo"} built.`,"Bundle hiccup! Build failed.")}async function ae(r){let{wcaInput:t,wcaOutput:e,skipDocs:n}=r;if(n){let o=Ce("Skipping docs generation...").start();setTimeout(()=>{o.succeed("Docs generation skipped.")},0);return}return ie("Analyzing components and making docs...",async()=>{await oe(t,e),await _(r),N()},"Docs ready! Looking good.","Doc troubles!")}function xr(){let r=process.cwd();function t(o){return[o,`${o}.scss`,`${o}.css`,M(Dr(o),`_${Sr(o)}.scss`),M(o,"_index.scss"),M(o,"index.scss")].find(i=>lt(i))}function e(o){for(let i of P){let a=t(se(r,i,o));if(a)return a}let s=n(o);return s||null}function n(o){let s,i;if(o.startsWith("@")){let a=o.split("/");if(a.length<3)return null;s=`${a[0]}/${a[1]}`,i=`./${a.slice(2).join("/")}`}else{let a=o.indexOf("/");if(a===-1)return null;s=o.slice(0,a),i=`./${o.slice(a+1)}`}for(let a of P){let l=se(r,a,s,"package.json");if(lt(l))try{let u=JSON.parse(Cr(l,"utf-8")).exports;if(!u||typeof u!="object")continue;let c=u[i];if(!c)continue;let d=typeof c=="string"?c:c.default||c.import;if(!d)continue;let p=t(se(r,a,s,d));if(p)return p}catch{continue}}return null}return{findFileUrl(o){if(o.includes("/node_modules/")){let s=o.lastIndexOf("/node_modules/"),i=o.slice(s+14),a=e(i);if(a)return mt(a)}if(!o.startsWith(".")&&!o.startsWith("/")&&!o.startsWith("file:")){let s=e(o);if(s)return mt(s)}return null}}}async function C(r="./demo"){return ie("Compiling demo SCSS...",async()=>{let t=Pr.sync(M(r,"**/*.scss")),e=xr(),n=process.cwd(),o=P.map(s=>se(n,s));for(let s of t){let i=ut.compile(s,{importers:[e],loadPaths:o,silenceDeprecations:["import"],style:"compressed"}),a=s.replace(/\.scss$/,".min.css");Rr(a,i.css)}return t.length},"Demo SCSS compiled.","SCSS compilation failed.")}async function Ee(r={}){let t=G(r);return ie("Bundling demo JS...",async()=>{let e=await Te(t.config);await e.write(t.config.output),await e.close()},"Demo JS bundled.","Demo JS bundling failed.")}import ft from"node:path";import R from"ora";import"rollup";var H=!1,Or={analyze:{active:!1,lastTime:0},docs:{active:!1,lastTime:0},scss:{active:!1,lastTime:0}},Nr=5e3,ce=new Set,jr=["/dist/index.d.ts","/custom-elements.json","/demo/api.md","/docs/api.md","/demo/index.min.js"];function _r(r){if(!r||typeof r!="string")return!1;try{let t=ft.normalize(r);return jr.some(e=>t.endsWith(e))||t.includes("/dist/")||t.endsWith(".min.js")||t.endsWith(".min.css")||t.endsWith(".d.ts")}catch(t){return console.error(`Error checking path (${typeof r}):`,t.message),!1}}async function Ie(r,t){let e=Or[r];if(e.active||Date.now()-e.lastTime<Nr)return!1;try{return e.active=!0,e.lastTime=Date.now(),await t()}catch(n){return console.error(`Error in ${r} task:`,n),!1}finally{e.active=!1}}async function gt(r,t,e){let n=!0,o={analyze:!1,docs:!1,scss:!1},s=null,i,a=R("Activating watch mode...").start(),l={analyze:async()=>{let{wcaInput:c,wcaOutput:d,skipDocs:p}=t;if(p){let g=R("Skipping component analysis...").start();return setTimeout(()=>{g.succeed("Component analysis skipped.")},0),!0}let f=R("Detective work: analyzing components...").start();try{return await oe(c,d),f.succeed("Component analysis complete! API generated."),!0}catch(g){return f.fail("Analysis hiccup! Something went wrong."),console.error("Component analysis error:",g),!1}},docs:async()=>{if(H)return!1;if(t.skipDocs){let d=R("Skipping docs generation...").start();return setTimeout(()=>{d.succeed("Docs generation skipped.")},0),!0}let c=R("Refreshing docs...").start();try{return await ae(t),c.succeed("Documentation refreshed!"),!0}catch(d){c.fail("Docs stumble! Couldn't refresh."),console.error("Documentation rebuild error:",d)}},scss:async()=>{if(H)return!1;try{return await C(),!0}catch(c){return console.error("Demo SCSS compilation error:",c),!1}}},m=()=>{n&&o.analyze&&o.docs&&o.scss&&typeof e=="function"&&(n=!1,e())};function u(c=1e3){s&&clearTimeout(s),s=setTimeout(async()=>{setTimeout(async()=>{o.analyze=await Ie("analyze",l.analyze),setTimeout(async()=>{o.docs=await Ie("docs",l.docs),setTimeout(async()=>{o.scss=await Ie("scss",l.scss),m()},500)},1e3)},1e3)},c)}r.on("event",async c=>{switch(c.code){case"START":a.succeed("Watch mode active! Eyes peeled.");break;case"BUNDLE_START":if(ce.clear(),c.input)try{let d=Array.isArray(c.input)?c.input:typeof c.input=="string"?[c.input]:typeof c.input=="object"&&c.input!==null?Object.values(c.input):[];for(let p of d)typeof p=="string"&&!_r(p)&&ce.add(ft.normalize(p))}catch(d){console.error("Error processing input paths:",d)}i=R("Weaving bundles...").start(),H=!0;break;case"BUNDLE_END":i&&i.succeed(`Bundle ${Array.isArray(c.input)?`of ${c.input.join("& ")} `:""}done in ${c.duration}ms! \u{1F680}`),H=!1,ce.size>0&&u();break;case"END":break;case"ERROR":H=!1,i?i.fail(`Oops! Bundle hit a snag: ${c.error.message}`):R().fail(`Watch mode hiccup: ${c.error.message}`),ce.clear();break}})}function ht(r,t){return j(r),t&&j(t),Q(),r}async function Gr(r){let t=ve(r),e=G(r);r.dev||t.config.plugins.push(Fr()),await ae(r),await C(),await pt(t.config,e.config)}async function Mr(r){let{dev:t}=r,e=ve({...r,watch:!0}),n=G({...r,watch:!0}),o=Br([e.config,n.config]);gt(o,r,t?async()=>te(r):void 0);let s=await import("chokidar"),i=!1,a=!1,l=null,m=s.watch("./demo/**/*.scss",{ignoreInitial:!0,ignored:["**/demo/**/*.min.css"],awaitWriteFinish:{stabilityThreshold:500,pollInterval:100}});return m.on("all",()=>{l&&clearTimeout(l),l=setTimeout(async()=>{if(i){a=!0;return}i=!0;try{await C()}catch(u){console.error("Demo SCSS watch compilation error:",u)}finally{i=!1,a&&(a=!1,m.emit("all"))}},500)}),ht(o,m),o}async function le(r={}){try{let{watch:t}=r;return dt(),t?await Mr(r):await Gr(r)}catch(t){throw new Error(`Build failed: ${t.message}`)}}var L=Hr.command("dev").description("Runs development server for auro components");L=K(L);L=Y(L);var Ps=L.action(async r=>{try{let t=yt("Initializing...");r.watch?(t.text="Waiting for changes...",t.spinner="bouncingBar",t.color="green"):t.text=r.docs===!1?"Building component (docs disabled)":"Building component",t.start(),r.watch||t.succeed("Build completed!"),await le({...r,dev:!0,watch:r.watch})}catch(t){yt().fail(`Build failed: ${t.message}`),console.error(t),process.exit(1)}});import{program as Lr}from"commander";import wt from"ora";var Re=Lr.command("build").description("Builds auro components");Re=K(Re);var Fs=Re.action(async r=>{try{let t=wt("Initializing...");r.watch?(t.text="Waiting for changes...",t.spinner="bouncingBar",t.color="green"):t.text=r.docs===!1?"Building component (docs disabled)":"Building component",t.start(),await le(r),r.watch||t.succeed("Build completed!")}catch(t){wt().fail(`Build failed: ${t.message}`),console.error(t),process.exit(1)}});import{exec as Wr}from"node:child_process";import bt from"node:path";import Ur from"node:process";import{fileURLToPath as zr}from"node:url";import qr from"node:util";import{program as Vr}from"commander";import Jr from"inquirer";var Vs=Vr.command("migrate").description("Script runner to perform repetitive code change tasks").requiredOption("-i, --id <string>","Select the migration you would like to run by id").option("-m, --multi-gitter","Run the migration on all repositories in the multi-gitter config").action(async r=>{let t=zr(import.meta.url),e=bt.dirname(t),n=bt.resolve(e,"migrations",r.id);if(r.multiGitter){let o=qr.promisify(Wr);try{await o("command -v multi-gitter")}catch{console.error("multi-gitter is not installed."),Ur.exit(1)}(await Jr.prompt([{type:"confirm",name:"dryRun",message:"Run migration in dry-run mode? (no changes will be committed)",default:!0}])).dryRun?A(`multi-gitter run ${n}/script.sh --config "${n}/multi-gitter.yml" --dry-run`):A(`multi-gitter run ${n}/script.sh --config "${n}/multi-gitter.yml"`)}else A(`${n}/script.sh`)});import vt from"node:process";import{program as Qr}from"commander";import{readFile as en,writeFile as tn}from"node:fs/promises";import{Logger as W}from"@aurodesignsystem/auro-library/scripts/utils/logger.mjs";import Se from"node:fs/promises";import De from"node:path";import{Octokit as Kr}from"@octokit/rest";import v from"ora";import{processContentForFile as Yr,templateFiller as Xr}from"@aurodesignsystem/auro-library/scripts/utils/sharedFileProcessorUtils.mjs";async function kt(r,t){let e=new Kr({auth:process.env.GITHUB_TOKEN||""});try{let o=(await e.request("GET /repos/{owner}/{repo}/contents/{path}",{ref:t,owner:"AlaskaAirlines",repo:"auro-templates",path:r,headers:{"X-GitHub-Api-Version":"2022-11-28"}})).data;if(typeof o!="object"||!Array.isArray(o)){let s=`Unexpected response format: ${JSON.stringify(o)}`;throw v().start().fail(s),new Error("Failed to retrieve folder items")}return o}catch(n){let o=v().start();throw n.status===404?o.fail(`Template '${r.split("/")[1]}' not found`):o.fail(`Error accessing template: ${n.message}`),n}}async function $t({folderItems:r,templatePathToReplace:t,rootDir:e,ref:n}){let o=[];for(let s of r){if(s.type=="dir"){let m=v(`Processing directory: ${s.path}`).start(),u=await kt(s.path,n);m.succeed(`Found ${u.length} additional items in ${s.path}`);let c=await $t({folderItems:u,templatePathToReplace:t,rootDir:e,ref:n});o.push(...c);continue}let i=s.path.replace(`${t}/`,""),a=`${e}/.github/${i}`,l={identifier:s.name,input:{remoteUrl:s.download_url||"",fileName:a,overwrite:!0},output:a};o.push(l)}return o}async function Zr(r){try{await Se.rm(r,{recursive:!0,force:!0}),v().start().succeed(`Successfully removed directory: ${r}`)}catch(t){throw v().start().fail(`Error removing directory ${r}: ${t.message}`),t}}async function Et(r,t="",e=!0){try{let n=await Se.stat(r),o=De.basename(r);if(!n.isDirectory())return`${t}${e?"\u2514\u2500\u2500 ":"\u251C\u2500\u2500 "}${o}
|
|
26
26
|
`;let s=`${t}${e?"\u2514\u2500\u2500 ":"\u251C\u2500\u2500 "}${o}/
|