@salty-css/core 0.4.5-fix-cli-astro-salty-config-dir.2 → 0.4.5

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.
@@ -1,2 +1,2 @@
1
1
  #!/usr/bin/env node
2
- require("../main-3sFUhepf.cjs").t().catch(e=>console.error(e));
2
+ require("../main-wweiiOF1.cjs").t().catch(e=>console.error(e));
package/dist/bin/index.js CHANGED
@@ -1,5 +1,5 @@
1
1
  #!/usr/bin/env node
2
- import { t as e } from "../main-4HU01GZf.js";
2
+ import { t as e } from "../main-3GC2lwLY.js";
3
3
  //#region src/bin/index.ts
4
4
  e().catch((e) => console.error(e));
5
5
  //#endregion
package/dist/bin/main.cjs CHANGED
@@ -1 +1 @@
1
- Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("../main-3sFUhepf.cjs");exports.main=e.t;
1
+ Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("../main-wweiiOF1.cjs");exports.main=e.t;
package/dist/bin/main.js CHANGED
@@ -1,2 +1,2 @@
1
- import { t as e } from "../main-4HU01GZf.js";
1
+ import { t as e } from "../main-3GC2lwLY.js";
2
2
  export { e as main };
@@ -1 +1 @@
1
- Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("../salty-compiler-CFa9KBH7.cjs");exports.SaltyCompiler=e.t;
1
+ Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("../salty-compiler-CFuCIw5V.cjs");exports.SaltyCompiler=e.t;
@@ -1,2 +1,2 @@
1
- import { t as e } from "../salty-compiler-U8k3j6sp.js";
1
+ import { t as e } from "../salty-compiler-CfYjQZDA.js";
2
2
  export { e as SaltyCompiler };
@@ -1,4 +1,4 @@
1
- import { n as e, r as t, t as n } from "./salty-compiler-U8k3j6sp.js";
1
+ import { n as e, r as t, t as n } from "./salty-compiler-CfYjQZDA.js";
2
2
  import { isSaltyFile as r } from "./compiler/helpers.js";
3
3
  import { pascalCase as i } from "./util/index.js";
4
4
  import { checkShouldRestart as a } from "./server/index.js";
@@ -478,16 +478,14 @@ var k = (e = process.cwd()) => u(e, ".saltyrc.json"), A = async (e = process.cwd
478
478
  ];
479
479
  await Y(e, o.yes), await D(...e);
480
480
  }
481
- let d = await Promise.all([G("salty.config.ts"), G("saltygen/index.css")]);
482
- await p(o.projectDir, { recursive: !0 });
483
- let f = u(o.projectDir, c.srcDirectory);
484
- await Promise.all(d.map(({ fileName: e, content: t }) => Z(f, e, t)));
481
+ let d = await Promise.all([G("salty.config.ts"), G("saltygen/index.css")]), f = u(o.projectDir, c.srcDirectory);
482
+ await p(f, { recursive: !0 }), await Promise.all(d.map(({ fileName: e, content: t }) => Z(f, e, t)));
485
483
  let m = Oe({
486
484
  framework: c.name,
487
485
  integrations: l.map((e) => e.name),
488
486
  hasSrcDir: s(u(o.projectDir, "src"))
489
487
  });
490
- await N(o.cwd, o.relativeProjectPath, c, m), await Q(o.cwd), await ke(o.projectDir, i.cssFile), await Ee(l), await Ae(), t.info("Running the build to generate initial CSS..."), await new n(f).generateCss(), t.info("🎉 Salty CSS project initialized successfully!"), t.info("Next steps:"), t.info("1. Configure variables and templates in `salty.config.ts`"), t.info("2. Create a new component with `npx salty-css generate [component-name]`"), t.info("3. Run `npx salty-css build` to generate the CSS"), t.info("4. Read about the features in the documentation: https://salty-css.dev"), t.info("5. Star the project on GitHub: https://github.com/margarita-form/salty-css ⭐");
488
+ await N(o.cwd, o.relativeProjectPath, c, m), await Q(o.cwd), await ke(f, i.cssFile), await Ee(l), await Ae(), t.info("Running the build to generate initial CSS..."), await new n(f).generateCss(), t.info("🎉 Salty CSS project initialized successfully!"), t.info("Next steps:"), t.info("1. Configure variables and templates in `salty.config.ts`"), t.info("2. Create a new component with `npx salty-css generate [component-name]`"), t.info("3. Run `npx salty-css build` to generate the CSS"), t.info("4. Read about the features in the documentation: https://salty-css.dev"), t.info("5. Star the project on GitHub: https://github.com/margarita-form/salty-css ⭐");
491
489
  } catch (t) {
492
490
  return e(t instanceof Error ? t.message : String(t));
493
491
  }
@@ -1,4 +1,4 @@
1
- const e=require("./chunk-CMqjfN_6.cjs"),t=require("./salty-compiler-CFa9KBH7.cjs"),n=require("./compiler/helpers.cjs"),r=require("./util/index.cjs"),i=require("./server/index.cjs");let a=require("commander"),o=require("fs"),s=require("path"),c=require("fs/promises"),l=require("child_process"),u=require("ora");u=e.t(u,1);let d=require("ejs");d=e.t(d,1);let f=require("readline/promises");var p=(0,s.join)(process.cwd(),`package.json`),m=async(e=p)=>{let t=await(0,c.readFile)(e,`utf-8`).then(JSON.parse).catch(()=>void 0);if(!t)throw`Could not read package.json file!`;return t},h=async(e,t=p)=>{typeof e==`object`&&(e=JSON.stringify(e,null,2)),await(0,c.writeFile)(t,e)},g=async()=>m(new URL(`../package.json`,``+{}.url)),_={core:e=>`@salty-css/core@${e}`,eslintConfigCore:e=>`@salty-css/eslint-config-core@${e}`},v=e=>{e.scripts||={};let t=e.scripts.prepare;if(t){if(t.includes(`salty-css`))return{changed:!1,pkg:e};e.scripts.prepare=t+` && npx salty-css build`}else e.scripts.prepare=`npx salty-css build`;return{changed:!0,pkg:e}},y=e=>new Promise((t,n)=>{(0,l.exec)(e,e=>{if(e)return n(e);t()})}),b=async(...e)=>{let t=e.map(e=>e.replace(`-D`,``).split(`@`).slice(0,-1).join(`@`).trim()).join(`, `),n=(0,u.default)(`Installing packages: ${t}`).start();await y(`npm install ${e.join(` `)}`),n.succeed(`Installed packages: ${t}`)},x=()=>(0,o.existsSync)((0,s.join)(process.cwd(),`node_modules`,`.bin`,`prettier`));async function S(e){try{if(!x())return;await y(`./node_modules/.bin/prettier --write "${e}"`),t.r.info(`Formatted ${e} with Prettier`)}catch(n){t.r.error(`Error formatting ${e} with Prettier:`,n)}}var C=(e=process.cwd())=>(0,s.join)(e,`.saltyrc.json`),w=async(e=process.cwd())=>await(0,c.readFile)(C(e),`utf-8`).then(JSON.parse).catch(()=>({})),ee=async(e=process.cwd())=>(0,c.readFile)(C(e),`utf-8`).catch(()=>void 0),T=async(e=process.cwd())=>(await w(e)).defaultProject,E=(e,t,n,r={})=>{let i=(0,s.join)(t,n.srcDirectory),a={dir:i,framework:n.name,...r};if(e===void 0)return{content:JSON.stringify({$schema:`./node_modules/@salty-css/core/.saltyrc.schema.json`,info:`This file is used to define projects and their configurations for Salty CSS cli. Do not delete, modify or add this file to .gitignore.`,defaultProject:i,projects:[a]},null,2),changed:!0,created:!0};let o=JSON.parse(e),c=o.projects||[];if(c.some(e=>e.dir===i))return{content:e,changed:!1,created:!1};c.push(a),o.projects=[...c];let l=JSON.stringify(o,null,2);return{content:l,changed:l!==e,created:!1}},D=async(e,n,r,i={})=>{let a=C(e),{content:o,changed:s,created:l}=E(await ee(e),n,r,i);return s?(l?t.r.info(`Creating file: `+a):t.r.info(`Edit file: `+a),await(0,c.writeFile)(a,o),await S(a),!0):!1},te=(e,t)=>(e.projects||[]).find(e=>e.dir===t)?.framework,O=(e,t=process.cwd())=>(0,s.join)(t,e===`.`?``:e),k=async e=>{let t=process.cwd(),n=O(e.dir,t),r=(0,s.relative)(t,n)||`.`,i=await m().catch(()=>void 0);if(e.requirePackageJson!==!1&&!i)throw Error(`Salty CSS project must be initialized in a directory with a package.json file.`);return{cwd:t,projectDir:n,relativeProjectPath:r,packageJson:i,rcFile:await w(t),cliVersion:(await g()).version||`0.0.0`,skipInstall:!!e.skipInstall,yes:!!e.yes}},A=(e,r)=>{e.command(`build [directory]`).alias(`b`).description(`Build the Salty-CSS project.`).option(`-d, --dir <dir>`,`Project directory to build the project in.`).option(`--watch`,`Watch for changes and rebuild the project.`).option(`--mode <mode>`,`Build mode: "production" or "development". Defaults to NODE_ENV-based detection.`).action(async function(e=r){t.r.info(`Building the Salty-CSS project...`);let{dir:a=e,watch:s,mode:c}=this.opts();if(c!==void 0&&c!==`production`&&c!==`development`)return t.n(`Invalid --mode "${c}". Expected "production" or "development".`);let l=a??await T();if(!l)return t.n(`Project directory must be provided. Add it as the first argument after build command or use the --dir option.`);let u=O(l),d=new t.t(u,{mode:c});await d.generateCss(),s&&(t.r.info(`Watching for changes in the project directory...`),(0,o.watch)(u,{recursive:!0},async(e,t)=>{if(!t)return console.warn(`File path not provided for change event`);await i.checkShouldRestart(t)?await d.generateCss(!1):n.isSaltyFile(t)&&await d.generateFile(t)}))})},ne=[`astro.config.mjs`,`astro.config.ts`,`astro.config.js`,`astro.config.cjs`],j=e=>{for(let t of ne){let n=(0,s.join)(e,t);if((0,o.existsSync)(n))return n}return null},M=e=>{let t=e.packageJson;if(!t)return!1;let n={...t.dependencies,...t.devDependencies};return Object.prototype.hasOwnProperty.call(n,`astro`)},N={name:`astro`,srcDirectory:`src`,detect:e=>!!j(e.projectDir)||M(e),runtimePackage:e=>`@salty-css/astro@${e}`,templates:{styled:`astro/styled-file.ts`,component:{styled:`astro/styled-file.ts`,wrapper:`astro/component.astro`,wrapperExt:`.astro`}}},P={name:`react`,srcDirectory:``,detect:()=>!0,runtimePackage:e=>`@salty-css/react@${e}`,templates:{styled:`react/styled-file.ts`,component:{styled:`react/styled-file.ts`,wrapper:`react/vanilla-file.ts`,wrapperExt:`.tsx`}}},F=[N,P],I={astro:N,react:P},L=async e=>{for(let t of F)if(await t.detect(e))return t;return P},R=e=>{if(e)return I[e]},z={"salty.config.ts":()=>Promise.resolve().then(()=>require("./salty.config-B0ZiRpHR.cjs")),"styles/index.css":()=>Promise.resolve().then(()=>require("./styles_index-DgmdjfFo.cjs")),"saltygen/index.css":()=>Promise.resolve().then(()=>require("./saltygen_index-BGHLaAOm.cjs")),"react/styled-file.ts":()=>Promise.resolve().then(()=>require("./styled-file-BCbAEzBB.cjs")),"react/vanilla-file.ts":()=>Promise.resolve().then(()=>require("./vanilla-file-Z3VsOa_U.cjs")),"astro/styled-file.ts":()=>Promise.resolve().then(()=>require("./styled-file-DorArlCk.cjs")),"astro/component.astro":()=>Promise.resolve().then(()=>require("./astro-component-r0qEcF1p.cjs"))},B=async(e,t)=>{let{default:n}=await z[e]();return{fileName:e,content:d.default.render(n,t)}},V=(e,n)=>{e.command(`generate [file] [directory]`).alias(`g`).description(`Generate a new component file.`).option(`-f, --file <file>`,`File to generate.`).option(`-d, --dir <dir>`,`Project directory to generate the file in.`).option(`-t, --tag <tag>`,`HTML tag of the component.`,`div`).option(`-n, --name <name>`,`Name of the component.`).option(`-c, --className <className>`,`CSS class of the component.`).option(`-r, --reactComponent`,`Generate a wrapper component file alongside the styled definition.`).action(async function(e,i=n){let{file:a=e,dir:o=i,tag:l,name:u,className:d,reactComponent:f=!1}=this.opts();if(!a)return t.n(`File to generate must be provided. Add it as the first argument after generate command or use the --file option.`);if(!o)return t.n(`Project directory must be provided. Add it as the second argument after generate command or use the --dir option.`);let p;try{p=await k({dir:o,requirePackageJson:!1})}catch(e){return t.n(e instanceof Error?e.message:String(e))}let m=R(te(p.rcFile,p.relativeProjectPath))??await L(p),h=a.split(`/`).slice(0,-1).join(`/`);h&&await(0,c.mkdir)((0,s.join)(p.projectDir,h),{recursive:!0});let g=(0,s.parse)((0,s.join)(p.projectDir,a));g.ext||=`.ts`,g.name.endsWith(`.css`)||(g.name+=`.css`),g.base=g.name+g.ext;let _=(0,s.format)(g);if(await(0,c.readFile)(_,`utf-8`).catch(()=>void 0)!==void 0){t.r.error(`File already exists: `+_);return}let v=r.pascalCase(u||g.base.replace(/\.css\.\w+$/,``));if(f){if(!m.templates.component)return t.n(`--reactComponent is not supported for the ${m.name} framework.`);let e=v+`Component`;v+=`Wrapper`;let n=g.base.replace(/\.css\.\w+$/,``),{content:r}=await B(m.templates.component.wrapper,{tag:l,componentName:e,styledComponentName:v,className:d,fileName:n});g.name=n.replace(/\.css$/,``),g.ext=m.templates.component.wrapperExt,g.base=g.name+g.ext;let i=(0,s.format)(g);t.r.info(`Generating a new file: `+i),await(0,c.writeFile)(i,r),await S(i)}let{content:y}=await B(f&&m.templates.component?m.templates.component.styled:m.templates.styled,{tag:l,name:v,className:d});t.r.info(`Generating a new file: `+_),await(0,c.writeFile)(_,y),await S(_)})},H=e=>{let t=e.trim();return t.startsWith(`-D `)?`${t.slice(3).trim()} (dev)`:t},U=e=>e.map(e=>` + ${H(e)}`).join(`
1
+ const e=require("./chunk-CMqjfN_6.cjs"),t=require("./salty-compiler-CFuCIw5V.cjs"),n=require("./compiler/helpers.cjs"),r=require("./util/index.cjs"),i=require("./server/index.cjs");let a=require("commander"),o=require("fs"),s=require("path"),c=require("fs/promises"),l=require("child_process"),u=require("ora");u=e.t(u,1);let d=require("ejs");d=e.t(d,1);let f=require("readline/promises");var p=(0,s.join)(process.cwd(),`package.json`),m=async(e=p)=>{let t=await(0,c.readFile)(e,`utf-8`).then(JSON.parse).catch(()=>void 0);if(!t)throw`Could not read package.json file!`;return t},h=async(e,t=p)=>{typeof e==`object`&&(e=JSON.stringify(e,null,2)),await(0,c.writeFile)(t,e)},g=async()=>m(new URL(`../package.json`,``+{}.url)),_={core:e=>`@salty-css/core@${e}`,eslintConfigCore:e=>`@salty-css/eslint-config-core@${e}`},v=e=>{e.scripts||={};let t=e.scripts.prepare;if(t){if(t.includes(`salty-css`))return{changed:!1,pkg:e};e.scripts.prepare=t+` && npx salty-css build`}else e.scripts.prepare=`npx salty-css build`;return{changed:!0,pkg:e}},y=e=>new Promise((t,n)=>{(0,l.exec)(e,e=>{if(e)return n(e);t()})}),b=async(...e)=>{let t=e.map(e=>e.replace(`-D`,``).split(`@`).slice(0,-1).join(`@`).trim()).join(`, `),n=(0,u.default)(`Installing packages: ${t}`).start();await y(`npm install ${e.join(` `)}`),n.succeed(`Installed packages: ${t}`)},x=()=>(0,o.existsSync)((0,s.join)(process.cwd(),`node_modules`,`.bin`,`prettier`));async function S(e){try{if(!x())return;await y(`./node_modules/.bin/prettier --write "${e}"`),t.r.info(`Formatted ${e} with Prettier`)}catch(n){t.r.error(`Error formatting ${e} with Prettier:`,n)}}var C=(e=process.cwd())=>(0,s.join)(e,`.saltyrc.json`),w=async(e=process.cwd())=>await(0,c.readFile)(C(e),`utf-8`).then(JSON.parse).catch(()=>({})),ee=async(e=process.cwd())=>(0,c.readFile)(C(e),`utf-8`).catch(()=>void 0),T=async(e=process.cwd())=>(await w(e)).defaultProject,E=(e,t,n,r={})=>{let i=(0,s.join)(t,n.srcDirectory),a={dir:i,framework:n.name,...r};if(e===void 0)return{content:JSON.stringify({$schema:`./node_modules/@salty-css/core/.saltyrc.schema.json`,info:`This file is used to define projects and their configurations for Salty CSS cli. Do not delete, modify or add this file to .gitignore.`,defaultProject:i,projects:[a]},null,2),changed:!0,created:!0};let o=JSON.parse(e),c=o.projects||[];if(c.some(e=>e.dir===i))return{content:e,changed:!1,created:!1};c.push(a),o.projects=[...c];let l=JSON.stringify(o,null,2);return{content:l,changed:l!==e,created:!1}},D=async(e,n,r,i={})=>{let a=C(e),{content:o,changed:s,created:l}=E(await ee(e),n,r,i);return s?(l?t.r.info(`Creating file: `+a):t.r.info(`Edit file: `+a),await(0,c.writeFile)(a,o),await S(a),!0):!1},te=(e,t)=>(e.projects||[]).find(e=>e.dir===t)?.framework,O=(e,t=process.cwd())=>(0,s.join)(t,e===`.`?``:e),k=async e=>{let t=process.cwd(),n=O(e.dir,t),r=(0,s.relative)(t,n)||`.`,i=await m().catch(()=>void 0);if(e.requirePackageJson!==!1&&!i)throw Error(`Salty CSS project must be initialized in a directory with a package.json file.`);return{cwd:t,projectDir:n,relativeProjectPath:r,packageJson:i,rcFile:await w(t),cliVersion:(await g()).version||`0.0.0`,skipInstall:!!e.skipInstall,yes:!!e.yes}},A=(e,r)=>{e.command(`build [directory]`).alias(`b`).description(`Build the Salty-CSS project.`).option(`-d, --dir <dir>`,`Project directory to build the project in.`).option(`--watch`,`Watch for changes and rebuild the project.`).option(`--mode <mode>`,`Build mode: "production" or "development". Defaults to NODE_ENV-based detection.`).action(async function(e=r){t.r.info(`Building the Salty-CSS project...`);let{dir:a=e,watch:s,mode:c}=this.opts();if(c!==void 0&&c!==`production`&&c!==`development`)return t.n(`Invalid --mode "${c}". Expected "production" or "development".`);let l=a??await T();if(!l)return t.n(`Project directory must be provided. Add it as the first argument after build command or use the --dir option.`);let u=O(l),d=new t.t(u,{mode:c});await d.generateCss(),s&&(t.r.info(`Watching for changes in the project directory...`),(0,o.watch)(u,{recursive:!0},async(e,t)=>{if(!t)return console.warn(`File path not provided for change event`);await i.checkShouldRestart(t)?await d.generateCss(!1):n.isSaltyFile(t)&&await d.generateFile(t)}))})},ne=[`astro.config.mjs`,`astro.config.ts`,`astro.config.js`,`astro.config.cjs`],j=e=>{for(let t of ne){let n=(0,s.join)(e,t);if((0,o.existsSync)(n))return n}return null},M=e=>{let t=e.packageJson;if(!t)return!1;let n={...t.dependencies,...t.devDependencies};return Object.prototype.hasOwnProperty.call(n,`astro`)},N={name:`astro`,srcDirectory:`src`,detect:e=>!!j(e.projectDir)||M(e),runtimePackage:e=>`@salty-css/astro@${e}`,templates:{styled:`astro/styled-file.ts`,component:{styled:`astro/styled-file.ts`,wrapper:`astro/component.astro`,wrapperExt:`.astro`}}},P={name:`react`,srcDirectory:``,detect:()=>!0,runtimePackage:e=>`@salty-css/react@${e}`,templates:{styled:`react/styled-file.ts`,component:{styled:`react/styled-file.ts`,wrapper:`react/vanilla-file.ts`,wrapperExt:`.tsx`}}},F=[N,P],I={astro:N,react:P},L=async e=>{for(let t of F)if(await t.detect(e))return t;return P},R=e=>{if(e)return I[e]},z={"salty.config.ts":()=>Promise.resolve().then(()=>require("./salty.config-B0ZiRpHR.cjs")),"styles/index.css":()=>Promise.resolve().then(()=>require("./styles_index-DgmdjfFo.cjs")),"saltygen/index.css":()=>Promise.resolve().then(()=>require("./saltygen_index-BGHLaAOm.cjs")),"react/styled-file.ts":()=>Promise.resolve().then(()=>require("./styled-file-BCbAEzBB.cjs")),"react/vanilla-file.ts":()=>Promise.resolve().then(()=>require("./vanilla-file-Z3VsOa_U.cjs")),"astro/styled-file.ts":()=>Promise.resolve().then(()=>require("./styled-file-DorArlCk.cjs")),"astro/component.astro":()=>Promise.resolve().then(()=>require("./astro-component-r0qEcF1p.cjs"))},B=async(e,t)=>{let{default:n}=await z[e]();return{fileName:e,content:d.default.render(n,t)}},V=(e,n)=>{e.command(`generate [file] [directory]`).alias(`g`).description(`Generate a new component file.`).option(`-f, --file <file>`,`File to generate.`).option(`-d, --dir <dir>`,`Project directory to generate the file in.`).option(`-t, --tag <tag>`,`HTML tag of the component.`,`div`).option(`-n, --name <name>`,`Name of the component.`).option(`-c, --className <className>`,`CSS class of the component.`).option(`-r, --reactComponent`,`Generate a wrapper component file alongside the styled definition.`).action(async function(e,i=n){let{file:a=e,dir:o=i,tag:l,name:u,className:d,reactComponent:f=!1}=this.opts();if(!a)return t.n(`File to generate must be provided. Add it as the first argument after generate command or use the --file option.`);if(!o)return t.n(`Project directory must be provided. Add it as the second argument after generate command or use the --dir option.`);let p;try{p=await k({dir:o,requirePackageJson:!1})}catch(e){return t.n(e instanceof Error?e.message:String(e))}let m=R(te(p.rcFile,p.relativeProjectPath))??await L(p),h=a.split(`/`).slice(0,-1).join(`/`);h&&await(0,c.mkdir)((0,s.join)(p.projectDir,h),{recursive:!0});let g=(0,s.parse)((0,s.join)(p.projectDir,a));g.ext||=`.ts`,g.name.endsWith(`.css`)||(g.name+=`.css`),g.base=g.name+g.ext;let _=(0,s.format)(g);if(await(0,c.readFile)(_,`utf-8`).catch(()=>void 0)!==void 0){t.r.error(`File already exists: `+_);return}let v=r.pascalCase(u||g.base.replace(/\.css\.\w+$/,``));if(f){if(!m.templates.component)return t.n(`--reactComponent is not supported for the ${m.name} framework.`);let e=v+`Component`;v+=`Wrapper`;let n=g.base.replace(/\.css\.\w+$/,``),{content:r}=await B(m.templates.component.wrapper,{tag:l,componentName:e,styledComponentName:v,className:d,fileName:n});g.name=n.replace(/\.css$/,``),g.ext=m.templates.component.wrapperExt,g.base=g.name+g.ext;let i=(0,s.format)(g);t.r.info(`Generating a new file: `+i),await(0,c.writeFile)(i,r),await S(i)}let{content:y}=await B(f&&m.templates.component?m.templates.component.styled:m.templates.styled,{tag:l,name:v,className:d});t.r.info(`Generating a new file: `+_),await(0,c.writeFile)(_,y),await S(_)})},H=e=>{let t=e.trim();return t.startsWith(`-D `)?`${t.slice(3).trim()} (dev)`:t},U=e=>e.map(e=>` + ${H(e)}`).join(`
2
2
  `),W=async(e,t,n={})=>{if(t||e.length===0)return;let r=n.input??process.stdin,i=n.output??process.stdout;if(!(n.isTTY??process.stdin.isTTY??!1))throw Error(`Cannot prompt for install confirmation: stdin is not a TTY. Re-run with --yes to install the listed packages without prompting.`);i.write(`The following packages will be installed:\n${U(e)}\n`);let a=(0,f.createInterface)({input:r,output:i,terminal:!1});try{let e=(await a.question(`Proceed? (y/N) `)).trim().toLowerCase();if(e!==`y`&&e!==`yes`)throw Error(`Install cancelled by user.`)}finally{a.close()}},G=async(e,t={})=>{if(t.yes)return!0;let n=t.input??process.stdin,r=t.output??process.stdout;if(!(t.isTTY??process.stdin.isTTY??!1))return!1;let i=t.defaultYes?`(Y/n)`:`(y/N)`,a=(0,f.createInterface)({input:n,output:r,terminal:!1});try{let n=(await a.question(`${e} ${i} `)).trim().toLowerCase();return n===``?!!t.defaultYes:n===`y`||n===`yes`}finally{a.close()}},K=[`src`,`public`,`assets`,`styles`,`css`,`app`],q=[`styles`,`css`,`app`,`pages`],J=[`index`,`styles`,`main`,`app`,`global`,`globals`],Y=[`.css`,`.scss`,`.sass`],X=async e=>{for(let t of K)for(let n of J)for(let r of Y){let i=(0,s.join)(e,t,n+r);if(await(0,c.readFile)(i,`utf-8`).catch(()=>void 0)!==void 0)return(0,s.relative)(e,i);for(let i of q){let a=(0,s.join)(e,t,i,n+r);if(await(0,c.readFile)(a,`utf-8`).catch(()=>void 0)!==void 0)return(0,s.relative)(e,a)}}},Z=e=>`@salty-css/astro@${e}`,re=`import saltyIntegration from '@salty-css/astro/integration';
3
3
  `,ie=e=>{if(e.includes(`@salty-css/astro`))return{content:null};let t=e,n=!1;return/integrations\s*:\s*\[/.test(t)?(t=t.replace(/integrations\s*:\s*\[/,e=>`${e}saltyIntegration(),`),n=!0):/defineConfig\s*\(\s*\{/.test(t)&&(t=t.replace(/defineConfig\s*\(\s*\{/,e=>`${e}\n integrations: [saltyIntegration()],`),n=!0),n?{content:re+t}:{content:null,warning:`Could not find a place to add saltyIntegration() in the Astro config. Please add it manually.`}},ae={name:`astro`,detect:e=>j(e.projectDir),plan:async(e,n)=>{let r=await(0,c.readFile)(n,`utf-8`).catch(()=>void 0);if(r===void 0)return null;let i=ie(r);if(i.warning&&t.r.warn(i.warning),i.content===null)return null;let a=i.content;return{packages:[`-D ${Z(e.cliVersion)}`],execute:async()=>(t.r.info(`Adding Salty-CSS integration to Astro config: `+n),await(0,c.writeFile)(n,a),await S(n),{changed:!0})}}},oe=[[`projectJs`,`eslint.config.js`],[`rootJs`,`eslint.config.js`],[`projectMjs`,`eslint.config.mjs`],[`rootMjs`,`eslint.config.mjs`],[`projectJson`,`.eslintrc.json`],[`rootJson`,`.eslintrc.json`]],se=(e,t)=>oe.map(([n,r])=>(0,s.join)(n.startsWith(`root`)?t:e,r)),ce=(e,t)=>{if(e.includes(`salty-css`))return{content:null};if(t){let t=`import saltyCss from "@salty-css/eslint-config-core/flat";\n${e}`;if(e.includes(`typescript-eslint`))if(t.includes(`.config(`))t=t.replace(`.config(`,`.config(saltyCss,`);else return{content:null,warning:`Could not find the correct place to add the Salty-CSS config for ESLint. Please add it manually.`};else if(t.includes(`export default [`))t=t.replace(`export default [`,`export default [ saltyCss,`);else if(t.includes(`eslintConfig = [`))t=t.replace(`eslintConfig = [`,`eslintConfig = [ saltyCss,`);else return{content:null,warning:`Could not find the correct place to add the Salty-CSS config for ESLint. Please add it manually.`};return{content:t}}let n=JSON.parse(e);return n.extends||=[],n.extends.includes(`@salty-css/core`)||n.extends.push(`@salty-css/core`),{content:JSON.stringify(n,null,2)}},le={name:`eslint`,detect:e=>se(e.projectDir,e.cwd).find(e=>(0,o.existsSync)(e))??null,plan:async(e,n)=>{let r=await(0,c.readFile)(n,`utf-8`).catch(()=>void 0);if(r===void 0)return t.r.error(`Could not read ESLint config file.`),null;let i=ce(r,n.endsWith(`js`));if(i.warning&&t.r.warn(i.warning),i.content===null)return null;let a=i.content;return{packages:[_.eslintConfigCore(e.cliVersion)],execute:async()=>(t.r.info(`Edit file: `+n),await(0,c.writeFile)(n,a),await S(n),{changed:!0})}}},ue=[`next.config.js`,`next.config.cjs`,`next.config.ts`,`next.config.mjs`],de=e=>`@salty-css/next@${e}`,fe=e=>{if(e.includes(`withSaltyCss`))return{content:null};let t=e,n=!1;/\splugins([^=]*)=[^[]\[/.test(t)&&(t=t.replace(/\splugins([^=]*)=[^[]\[/,(e,t)=>` plugins${t}= [withSaltyCss,`),n=!0);let r=t.includes(`module.exports`),i=r?`const { withSaltyCss } = require('@salty-css/next');
4
4
  `:`import { withSaltyCss } from '@salty-css/next';
@@ -8,4 +8,4 @@ const e=require("./chunk-CMqjfN_6.cjs"),t=require("./salty-compiler-CFa9KBH7.cjs
8
8
 
9
9
  # Salty-CSS
10
10
  saltygen
11
- `)))},Se=async(e,n)=>{let r=n??await X(e);if(!r){if(!await G("Could not find a CSS file to import the generated CSS. Do you want to create a new `styles/index.css` file and import it there? (y/N) ")){t.r.warn(`Could not find a CSS file to import the generated CSS. Please add it manually.`);return}let{fileName:n,content:r}=await B(`styles/index.css`);await Q(e,n,r);return}let i=(0,s.join)(e,r),a=await(0,c.readFile)(i,`utf-8`).catch(()=>void 0);if(a===void 0||a.includes(`saltygen`))return;let o=(0,s.relative)((0,s.join)(i,`..`),(0,s.join)(e,`saltygen/index.css`));t.r.info(`Adding global import statement to CSS file: `+i),await(0,c.writeFile)(i,`@import '${o}';\n`+a),await S(i)},Ce=async()=>{let e=await m().catch(()=>{t.n(`Could not read package.json file.`)});if(!e)return;let{pkg:n}=v(e);await h(n)},we=e=>{e.command(`init [directory]`).description(`Initialize a new Salty-CSS project.`).option(`-d, --dir <dir>`,`Project directory to initialize the project in.`).option(`--css-file <css-file>`,`Existing CSS file where to import the generated CSS. Path must be relative to the given project directory.`).option(`--skip-install`,`Skip installing dependencies.`).option(`-y, --yes`,`Skip the install confirmation prompt.`).action(async function(e=`.`){try{let n=this.opts(),r=n.dir??e;if(!r)return t.n(`Project directory must be provided. Add it as the first argument after init command or use the --dir option.`);let i=await k({dir:r,skipInstall:n.skipInstall,yes:n.yes});t.r.info(`Initializing a new Salty-CSS project!`);let a=await L(i);t.r.info(`Detected framework: ${a.name}`);let l=await _e(i);if(!i.skipInstall){let e=[_.core(i.cliVersion),a.runtimePackage(i.cliVersion),...l.flatMap(e=>e.plan.packages)];await W(e,i.yes),await b(...e)}let u=await Promise.all([B(`salty.config.ts`),B(`saltygen/index.css`)]);await(0,c.mkdir)(i.projectDir,{recursive:!0});let d=(0,s.join)(i.projectDir,a.srcDirectory);await Promise.all(u.map(({fileName:e,content:t})=>Q(d,e,t)));let f=be({framework:a.name,integrations:l.map(e=>e.name),hasSrcDir:(0,o.existsSync)((0,s.join)(i.projectDir,`src`))});await D(i.cwd,i.relativeProjectPath,a,f),await xe(i.cwd),await Se(i.projectDir,n.cssFile),await ve(l),await Ce(),t.r.info(`Running the build to generate initial CSS...`),await new t.t(d).generateCss(),t.r.info(`🎉 Salty CSS project initialized successfully!`),t.r.info(`Next steps:`),t.r.info("1. Configure variables and templates in `salty.config.ts`"),t.r.info("2. Create a new component with `npx salty-css generate [component-name]`"),t.r.info("3. Run `npx salty-css build` to generate the CSS"),t.r.info(`4. Read about the features in the documentation: https://salty-css.dev`),t.r.info(`5. Star the project on GitHub: https://github.com/margarita-form/salty-css ⭐`)}catch(e){return t.n(e instanceof Error?e.message:String(e))}})},$=async()=>{let e=(0,s.join)(process.cwd(),`package.json`),n=await m(e).catch(e=>t.n(e));if(!n)return t.n(`Could not read package.json file.`);let r={...n.dependencies,...n.devDependencies},i=Object.entries(r).filter(([e])=>e===`salty-css`||e.startsWith(`@salty-css/`));return i.length?i:t.n(`No Salty-CSS packages found in package.json. Make sure you are running update command in the same directory! Used package.json path: `+e)},Te=e=>{e.command(`update [version]`).alias(`up`).description(`Update Salty-CSS packages to the latest or specified version.`).option(`-v, --version <version>`,`Version to update to.`).option(`--legacy-peer-deps <legacyPeerDeps>`,`Use legacy peer dependencies (not recommended).`,!1).option(`-y, --yes`,`Skip confirmation prompts (install and rebuild).`).option(`-d, --dir <dir>`,`Project directory to rebuild after updating.`).action(async function(e=`latest`){let{legacyPeerDeps:n,version:r=e,yes:i=!1,dir:a}=this.opts(),o=await $();if(!o)return t.n(`Could not update Salty-CSS packages as any were found in package.json.`);let s=await g(),c=o.map(([e])=>r===`@`?`${e}@${s.version}`:`${e}@${r.replace(/^@/,``)}`);try{await W(c,i)}catch(e){return t.n(e instanceof Error?e.message:String(e))}n?(t.r.warn(`Using legacy peer dependencies to update packages.`),await b(...c,`--legacy-peer-deps`)):await b(...c);let l=await $();if(!l)return t.n(`Something went wrong while reading the updated packages.`);let u=l.reduce((e,[t,n])=>(e[n]||(e[n]=[]),e[n].push(t),e),{});if(Object.keys(u).length===1){let e=Object.keys(u)[0];t.r.info(`Updated to all Salty CSS packages successfully to ${e.replace(/^\^/,``)}`)}else for(let[e,n]of Object.entries(u))t.r.info(`Updated to ${e.replace(/^\^/,``)}: ${n.join(`, `)}`);let d=a??await T();if(!d){t.r.warn("Skipping rebuild: no project directory configured. Run `salty-css build [dir]` manually.");return}if(!await G(`Rebuild Salty CSS now?`,{yes:i}))return;let f=O(d);t.r.info(`Rebuilding Salty-CSS project...`),await new t.t(f).generateCss(),t.r.info(`Rebuild complete.`)})},Ee=e=>{e.option(`-v, --version`,`Show the current version of Salty-CSS.`).action(async function(){let e=await g();t.r.info(`CLI is running: `+e.version);let n=(0,s.join)(process.cwd(),`package.json`),r=await m(n).catch(e=>t.n(e));if(!r)return;let i={...r.dependencies,...r.devDependencies},a=Object.keys(i).filter(e=>e===`salty-css`||e.startsWith(`@salty-css/`));if(!a.length)return t.n(`No Salty-CSS packages found in package.json. Make sure you are running update command in the same directory! Used package.json path: `+n);for(let e of a)t.r.info(`${e}: ${i[e]}`)})};async function De(){let e=new a.Command;e.name(`salty-css`).description(`Salty-CSS CLI tool to help with annoying configuration tasks.`);let t=await T();we(e),Te(e),Ee(e),A(e,t),V(e,t),e.parseAsync(process.argv)}Object.defineProperty(exports,"t",{enumerable:!0,get:function(){return De}});
11
+ `)))},Se=async(e,n)=>{let r=n??await X(e);if(!r){if(!await G("Could not find a CSS file to import the generated CSS. Do you want to create a new `styles/index.css` file and import it there? (y/N) ")){t.r.warn(`Could not find a CSS file to import the generated CSS. Please add it manually.`);return}let{fileName:n,content:r}=await B(`styles/index.css`);await Q(e,n,r);return}let i=(0,s.join)(e,r),a=await(0,c.readFile)(i,`utf-8`).catch(()=>void 0);if(a===void 0||a.includes(`saltygen`))return;let o=(0,s.relative)((0,s.join)(i,`..`),(0,s.join)(e,`saltygen/index.css`));t.r.info(`Adding global import statement to CSS file: `+i),await(0,c.writeFile)(i,`@import '${o}';\n`+a),await S(i)},Ce=async()=>{let e=await m().catch(()=>{t.n(`Could not read package.json file.`)});if(!e)return;let{pkg:n}=v(e);await h(n)},we=e=>{e.command(`init [directory]`).description(`Initialize a new Salty-CSS project.`).option(`-d, --dir <dir>`,`Project directory to initialize the project in.`).option(`--css-file <css-file>`,`Existing CSS file where to import the generated CSS. Path must be relative to the given project directory.`).option(`--skip-install`,`Skip installing dependencies.`).option(`-y, --yes`,`Skip the install confirmation prompt.`).action(async function(e=`.`){try{let n=this.opts(),r=n.dir??e;if(!r)return t.n(`Project directory must be provided. Add it as the first argument after init command or use the --dir option.`);let i=await k({dir:r,skipInstall:n.skipInstall,yes:n.yes});t.r.info(`Initializing a new Salty-CSS project!`);let a=await L(i);t.r.info(`Detected framework: ${a.name}`);let l=await _e(i);if(!i.skipInstall){let e=[_.core(i.cliVersion),a.runtimePackage(i.cliVersion),...l.flatMap(e=>e.plan.packages)];await W(e,i.yes),await b(...e)}let u=await Promise.all([B(`salty.config.ts`),B(`saltygen/index.css`)]),d=(0,s.join)(i.projectDir,a.srcDirectory);await(0,c.mkdir)(d,{recursive:!0}),await Promise.all(u.map(({fileName:e,content:t})=>Q(d,e,t)));let f=be({framework:a.name,integrations:l.map(e=>e.name),hasSrcDir:(0,o.existsSync)((0,s.join)(i.projectDir,`src`))});await D(i.cwd,i.relativeProjectPath,a,f),await xe(i.cwd),await Se(d,n.cssFile),await ve(l),await Ce(),t.r.info(`Running the build to generate initial CSS...`),await new t.t(d).generateCss(),t.r.info(`🎉 Salty CSS project initialized successfully!`),t.r.info(`Next steps:`),t.r.info("1. Configure variables and templates in `salty.config.ts`"),t.r.info("2. Create a new component with `npx salty-css generate [component-name]`"),t.r.info("3. Run `npx salty-css build` to generate the CSS"),t.r.info(`4. Read about the features in the documentation: https://salty-css.dev`),t.r.info(`5. Star the project on GitHub: https://github.com/margarita-form/salty-css ⭐`)}catch(e){return t.n(e instanceof Error?e.message:String(e))}})},$=async()=>{let e=(0,s.join)(process.cwd(),`package.json`),n=await m(e).catch(e=>t.n(e));if(!n)return t.n(`Could not read package.json file.`);let r={...n.dependencies,...n.devDependencies},i=Object.entries(r).filter(([e])=>e===`salty-css`||e.startsWith(`@salty-css/`));return i.length?i:t.n(`No Salty-CSS packages found in package.json. Make sure you are running update command in the same directory! Used package.json path: `+e)},Te=e=>{e.command(`update [version]`).alias(`up`).description(`Update Salty-CSS packages to the latest or specified version.`).option(`-v, --version <version>`,`Version to update to.`).option(`--legacy-peer-deps <legacyPeerDeps>`,`Use legacy peer dependencies (not recommended).`,!1).option(`-y, --yes`,`Skip confirmation prompts (install and rebuild).`).option(`-d, --dir <dir>`,`Project directory to rebuild after updating.`).action(async function(e=`latest`){let{legacyPeerDeps:n,version:r=e,yes:i=!1,dir:a}=this.opts(),o=await $();if(!o)return t.n(`Could not update Salty-CSS packages as any were found in package.json.`);let s=await g(),c=o.map(([e])=>r===`@`?`${e}@${s.version}`:`${e}@${r.replace(/^@/,``)}`);try{await W(c,i)}catch(e){return t.n(e instanceof Error?e.message:String(e))}n?(t.r.warn(`Using legacy peer dependencies to update packages.`),await b(...c,`--legacy-peer-deps`)):await b(...c);let l=await $();if(!l)return t.n(`Something went wrong while reading the updated packages.`);let u=l.reduce((e,[t,n])=>(e[n]||(e[n]=[]),e[n].push(t),e),{});if(Object.keys(u).length===1){let e=Object.keys(u)[0];t.r.info(`Updated to all Salty CSS packages successfully to ${e.replace(/^\^/,``)}`)}else for(let[e,n]of Object.entries(u))t.r.info(`Updated to ${e.replace(/^\^/,``)}: ${n.join(`, `)}`);let d=a??await T();if(!d){t.r.warn("Skipping rebuild: no project directory configured. Run `salty-css build [dir]` manually.");return}if(!await G(`Rebuild Salty CSS now?`,{yes:i}))return;let f=O(d);t.r.info(`Rebuilding Salty-CSS project...`),await new t.t(f).generateCss(),t.r.info(`Rebuild complete.`)})},Ee=e=>{e.option(`-v, --version`,`Show the current version of Salty-CSS.`).action(async function(){let e=await g();t.r.info(`CLI is running: `+e.version);let n=(0,s.join)(process.cwd(),`package.json`),r=await m(n).catch(e=>t.n(e));if(!r)return;let i={...r.dependencies,...r.devDependencies},a=Object.keys(i).filter(e=>e===`salty-css`||e.startsWith(`@salty-css/`));if(!a.length)return t.n(`No Salty-CSS packages found in package.json. Make sure you are running update command in the same directory! Used package.json path: `+n);for(let e of a)t.r.info(`${e}: ${i[e]}`)})};async function De(){let e=new a.Command;e.name(`salty-css`).description(`Salty-CSS CLI tool to help with annoying configuration tasks.`);let t=await T();we(e),Te(e),Ee(e),A(e,t),V(e,t),e.parseAsync(process.argv)}Object.defineProperty(exports,"t",{enumerable:!0,get:function(){return De}});
@@ -0,0 +1,2 @@
1
+ export declare const originalMessage = "Hello from";
2
+ //# sourceMappingURL=maybe.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"maybe.d.ts","sourceRoot":"","sources":["../src/maybe.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,eAAe,eAAe,CAAC"}
@@ -3,7 +3,7 @@ const e=require("./chunk-CMqjfN_6.cjs"),t=require("./compiler/helpers.cjs"),n=re
3
3
  `),S=`/*!
4
4
  * Generated with Salty CSS (https://salty-css.dev)
5
5
  * Do not edit this file directly
6
- * Version 0.4.5-fix-cli-astro-salty-config-dir.2
6
+ * Version 0.4.5
7
7
  */
8
8
  @layer imports, reset, global, templates, fonts, l0, l1, l2, l3, l4, l5, l6, l7, l8;\n\n${[`_imports.css`,`_variables.css`,`_reset.css`,`_global.css`,`_templates.css`,`_fonts.css`].filter(e=>{try{return(0,c.readFileSync)((0,u.join)(o,`css`,e),`utf8`).length>0}catch{return!1}}).map(e=>`@import url('./css/${e}')${e===`_imports.css`?` layer(imports)`:``};`).join(`
9
9
  `)}\n${x}`;if(y.importStrategy!==`component`){let e=a.reduce((e,t,r)=>{let i=t.reduce((e,t)=>{let r=(0,u.join)(o,`css`,t),i=(0,c.readFileSync)(r,`utf8`),a=/.*-([^-]+)-\d+.css/.exec(t)?.at(1)||n.toHash(r,6);return e.includes(a)?e:`${e}\n/*start:${a}-${t}*/\n${i}\n/*end:${a}*/\n`},``),a=`l_${r}.css`;return(0,c.writeFileSync)((0,u.join)(o,`css`,a),`@layer l${r} { ${i}\n }`),`${e}\n@import url('./css/${a}');`},``);S+=e}(0,c.writeFileSync)(s,S);let C=Date.now()-r,w=C<200?`🔥`:C<500?`🚀`:C<1e3?`🎉`:C<2e3?`🚗`:C<5e3?`🤔`:`🥴`;h.info(`Generated CSS in ${C}ms! ${w}`)}catch(e){console.error(e)}};generateConfigStyles=async e=>{let t=await this.getDestDir(),o={mediaQueries:[],globalStyles:[],variables:[],templates:[],imports:[],fonts:[]};await Promise.all([...e].map(async e=>{let{contents:n,outputFilePath:r}=await this.compileSaltyFile(e,t);Object.entries(n).forEach(([t,n])=>{n.isMedia?o.mediaQueries.push([t,n]):n.isGlobalDefine?o.globalStyles.push(n):n.isDefineVariables?o.variables.push(n):n.isDefineTemplates?o.templates.push(n._setPath(`${t};;${r}`)):n.isDefineImport?o.imports.push(n._setPath(e)):n.isDefineFont&&o.fonts.push(n)})}));let{config:l,path:d}=await this.generateConfig(),f={...l},{mediaQueries:p}=o;f.mediaQueries=Object.fromEntries(p.map(([e,t])=>[`@${e}`,t]));let m=p.map(([e])=>`'@${e}'`).join(` | `),g=new Set,_=async(e,t=[])=>{if(!e)return[];let r=Object.entries(e).map(async([e,r])=>{let a=async r=>{if(!r)return;if(r instanceof Promise)return await a(await r);if(typeof r==`function`)return await a(await r());if(typeof r==`object`)return await _(r,[...t,e]);let o=O(e),s=n.dashCase(e),c=[...t,o].join(`.`);g.add(`"${c}"`);let l=[...t.map(n.dashCase),s].join(`-`),u=i.s(r);return u?`--${l}: ${u.transformed};`:`--${l}: ${r};`};return await a(r)});return(await Promise.all(r)).flat()},v=async e=>{if(!e)return[];let t=Object.entries(e).map(async([e,t])=>{let n=await _(t);return e===`base`?n.join(``):f.mediaQueries[e]?`${f.mediaQueries[e]} { ${n.join(``)} }`:`${e} { ${n.join(``)} }`});return(await Promise.all(t)).flat()},y=async e=>{if(!e)return[];let t=Object.entries(e).map(async([e,t])=>{let n=Object.entries(t).map(async([t,n])=>{let r=await _(n,[e]);return`${`.${e}-${t}, [data-${e}="${t}"]`} { ${r.join(``)} }`});return(await Promise.all(n)).flat()});return(await Promise.all(t)).flat()},b=(e={})=>({...e,responsive:void 0,conditional:void 0}),x=e=>o.variables.map(t=>e===`static`?b(t._current):t._current[e]),S=a.mergeObjects(b(l.variables),x(`static`)),C=await _(S),T=await v(a.mergeObjects(l.variables?.responsive,x(`responsive`))),E=await y(a.mergeObjects(l.variables?.conditional,x(`conditional`)));(0,c.writeFileSync)((0,u.join)(t,`css/_variables.css`),`:root { ${C.join(``)} ${T.join(``)} } ${E.join(``)}`),f.staticVariables=S,(0,c.writeFileSync)((0,u.join)(t,`css/_global.css`),`@layer global { ${await i.t(a.mergeObjects(l.global,o.globalStyles),``)} }`);let D=(0,u.join)(t,`css/_reset.css`);(0,c.writeFileSync)(D,`@layer reset { ${await i.t(l.reset===`none`?{}:typeof l.reset==`object`?l.reset:k,``)} }`);let A=(0,u.join)(t,`css/_templates.css`),j=a.mergeObjects(l.templates,o.templates),M=await s.parseTemplates(j),N=s.getTemplateTypes(j),P=s.getTemplateVariantMaps(j);(0,c.writeFileSync)(A,`@layer templates { ${M} }`),f.templates=j;let F=(0,u.join)(t,`css/_imports.css`),I=[];for(let e of o.imports){let n=e._path;if(n)for(let r of e._current)try{let{rule:e}=w(r,n,t);I.push(e)}catch(e){let t=typeof r==`string`?r:r.url;h.error(`Failed to resolve defineImport(${JSON.stringify(t)}) from ${n}: ${e.message}`)}}(0,c.writeFileSync)(F,I.join(`
@@ -244,7 +244,7 @@ var X = {
244
244
  let A = c.map((e) => `@import url('./css/${e}');`).join("\n"), j = `/*!
245
245
  * Generated with Salty CSS (https://salty-css.dev)
246
246
  * Do not edit this file directly
247
- * Version 0.4.5-fix-cli-astro-salty-config-dir.2
247
+ * Version 0.4.5
248
248
  */
249
249
  @layer imports, reset, global, templates, fonts, l0, l1, l2, l3, l4, l5, l6, l7, l8;\n\n${[
250
250
  "_imports.css",
package/package.json CHANGED
@@ -15,7 +15,7 @@
15
15
  "bugs": {
16
16
  "url": "https://github.com/margarita-form/salty-css/issues"
17
17
  },
18
- "version": "0.4.5-fix-cli-astro-salty-config-dir.2",
18
+ "version": "0.4.5",
19
19
  "type": "module",
20
20
  "scripts": {
21
21
  "build": "vite build",