From b1ccec0dc47d6800c2bc1f11ea5b0e947e3504a0 Mon Sep 17 00:00:00 2001 From: Javad Kazemzade Date: Wed, 12 Nov 2025 18:44:04 +0330 Subject: [PATCH] feat: enable scss modules support --- rollup.config.js | 9 ++++++++- src/styles.d.ts | 4 ++++ tsconfig.json | 4 ++-- 3 files changed, 14 insertions(+), 3 deletions(-) create mode 100644 src/styles.d.ts diff --git a/rollup.config.js b/rollup.config.js index 26f155f..5fb2bc5 100644 --- a/rollup.config.js +++ b/rollup.config.js @@ -30,7 +30,14 @@ export default [ resolve(), commonjs(), typescript({tsconfig: "./tsconfig.json", sourceMap: true, inlineSources: true}), - postcss(), + postcss({ + use: ["sass"], + autoModules: true, + modules: { + generateScopedName: "[name]__[local]___[hash:base64:5]", + }, + sourceMap: true, + }), terser(), ], diff --git a/src/styles.d.ts b/src/styles.d.ts new file mode 100644 index 0000000..cdab0d4 --- /dev/null +++ b/src/styles.d.ts @@ -0,0 +1,4 @@ +declare module "*.module.scss" { + const classes: { readonly [key: string]: string }; + export default classes; +} diff --git a/tsconfig.json b/tsconfig.json index f3f3d95..4ae22fb 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -20,6 +20,6 @@ "allowSyntheticDefaultImports": true, "emitDeclarationOnly": true, }, - "include": ["../jest-setup.ts","src/**/*.ts"], + "include": ["../jest-setup.ts","src/**/*"], "exclude": ["node_modules"] -} \ No newline at end of file +}