From f611d264de6b2d6c5e019db9d721b64f36ca90e4 Mon Sep 17 00:00:00 2001 From: sadeghbarati Date: Sun, 15 Oct 2023 13:03:06 +0330 Subject: [PATCH] feat: update --- packages/cli/src/commands/init.ts | 7 ++++--- packages/cli/src/utils/get-config.ts | 1 + packages/cli/src/utils/templates.ts | 6 +++++- .../cli/src/utils/transformers/transform-cjs-to-esm.ts | 2 +- 4 files changed, 11 insertions(+), 5 deletions(-) diff --git a/packages/cli/src/commands/init.ts b/packages/cli/src/commands/init.ts index 334ed213..c4298f58 100644 --- a/packages/cli/src/commands/init.ts +++ b/packages/cli/src/commands/init.ts @@ -111,6 +111,7 @@ export async function promptForConfig( { title: 'Vite', value: 'vite' }, { title: 'Nuxt', value: 'nuxt' }, { title: 'Laravel', value: 'laravel' }, + { title: 'Astro', value: 'astro' }, ], }, { @@ -137,7 +138,7 @@ export async function promptForConfig( type: 'text', name: 'tailwindCss', message: `Where is your ${highlight('Tailwind CSS')} file?`, - initial: (prev, values) => defaultConfig?.tailwind.css ?? TAILWIND_CSS_PATH[values.framework as 'vite' | 'nuxt' | 'laravel'], + initial: (prev, values) => defaultConfig?.tailwind.css ?? TAILWIND_CSS_PATH[values.framework as 'vite' | 'nuxt' | 'laravel' | 'astro'], }, { type: 'toggle', @@ -152,8 +153,8 @@ export async function promptForConfig( { type: 'text', name: 'tailwindConfig', - message: `Where is your ${highlight('tailwind.config.js')} located?`, - initial: defaultConfig?.tailwind.config ?? DEFAULT_TAILWIND_CONFIG, + message: `Where is your ${highlight('tailwind.config')} located?`, + initial: (prev, values) => defaultConfig?.tailwind.config ?? values.framework === 'astro' ? 'tailwind.config.mjs' : DEFAULT_TAILWIND_CONFIG, }, { type: 'text', diff --git a/packages/cli/src/utils/get-config.ts b/packages/cli/src/utils/get-config.ts index c85e36f7..68f7ebeb 100644 --- a/packages/cli/src/utils/get-config.ts +++ b/packages/cli/src/utils/get-config.ts @@ -16,6 +16,7 @@ export const TAILWIND_CSS_PATH = { nuxt: 'assets/css/tailwind.css', vite: 'src/assets/index.css', laravel: 'resources/css/app.css', + astro: 'src/styles/globals.css', } // TODO: Figure out if we want to support all cosmiconfig formats. diff --git a/packages/cli/src/utils/templates.ts b/packages/cli/src/utils/templates.ts index b2adbd55..a13aa270 100644 --- a/packages/cli/src/utils/templates.ts +++ b/packages/cli/src/utils/templates.ts @@ -67,6 +67,10 @@ module.exports = { "./resources/views/**/*.blade.php", "./resources/js/**/*.{<%- extension %>,<%- extension %>x,vue}", ], + <% } else if (framework === 'astro') { %> + content: [ + './src/**/*.{astro,html,js,jsx,md,mdx,svelte,ts,tsx,vue}', + ], <% } %> theme: { container: { @@ -133,5 +137,5 @@ module.exports = { }, }, }, - plugins: [], + plugins: [animate], }` diff --git a/packages/cli/src/utils/transformers/transform-cjs-to-esm.ts b/packages/cli/src/utils/transformers/transform-cjs-to-esm.ts index 010b45aa..1966e4c7 100644 --- a/packages/cli/src/utils/transformers/transform-cjs-to-esm.ts +++ b/packages/cli/src/utils/transformers/transform-cjs-to-esm.ts @@ -1,5 +1,5 @@ export function transformCJSToESM(filename: string, code: string) { - if (!filename.endsWith('.mjs')) { + if (filename.endsWith('.mjs')) { return code .replace(/const\s([\w\d_]+)\s*=\s*require\((.*)\);?/g, 'import $1 from $2') .replace(/module\.exports = /g, 'export default ')