Skip to content

Commit ccecc17

Browse files
authored
Merge pull request #14894 from webpack/feature/css-modules
Initial work towards native css support
2 parents 1c6872b + 5c65d84 commit ccecc17

113 files changed

Lines changed: 5218 additions & 127 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

‎.gitattributes‎

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,4 +3,5 @@ test/statsCases/** eol=lf
33
examples/* eol=lf
44
bin/* eol=lf
55
*.svg eol=lf
6+
*.css eol=lf
67
**/*webpack.lock.data/** -text

‎declarations/WebpackOptions.d.ts‎

Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -443,6 +443,14 @@ export type CompareBeforeEmit = boolean;
443443
* This option enables cross-origin loading of chunks.
444444
*/
445445
export type CrossOriginLoading = false | "anonymous" | "use-credentials";
446+
/**
447+
* Specifies the filename template of non-initial output css files on disk. You must **not** specify an absolute path here, but the path may contain folders separated by '/'! The specified path is joined with the value of the 'output.path' option to determine the location on disk.
448+
*/
449+
export type CssChunkFilename = FilenameTemplate;
450+
/**
451+
* Specifies the filename template of output css files on disk. You must **not** specify an absolute path here, but the path may contain folders separated by '/'! The specified path is joined with the value of the 'output.path' option to determine the location on disk.
452+
*/
453+
export type CssFilename = FilenameTemplate;
446454
/**
447455
* Similar to `output.devtoolModuleFilenameTemplate`, but used in the case of duplicate module identifiers.
448456
*/
@@ -1976,6 +1984,14 @@ export interface Output {
19761984
* This option enables cross-origin loading of chunks.
19771985
*/
19781986
crossOriginLoading?: CrossOriginLoading;
1987+
/**
1988+
* Specifies the filename template of non-initial output css files on disk. You must **not** specify an absolute path here, but the path may contain folders separated by '/'! The specified path is joined with the value of the 'output.path' option to determine the location on disk.
1989+
*/
1990+
cssChunkFilename?: CssChunkFilename;
1991+
/**
1992+
* Specifies the filename template of output css files on disk. You must **not** specify an absolute path here, but the path may contain folders separated by '/'! The specified path is joined with the value of the 'output.path' option to determine the location on disk.
1993+
*/
1994+
cssFilename?: CssFilename;
19791995
/**
19801996
* Similar to `output.devtoolModuleFilenameTemplate`, but used in the case of duplicate module identifiers.
19811997
*/
@@ -2692,6 +2708,14 @@ export interface AssetResourceGeneratorOptions {
26922708
*/
26932709
publicPath?: RawPublicPath;
26942710
}
2711+
/**
2712+
* Generator options for css modules.
2713+
*/
2714+
export interface CssGeneratorOptions {}
2715+
/**
2716+
* Parser options for css modules.
2717+
*/
2718+
export interface CssParserOptions {}
26952719
/**
26962720
* No generator options are supported for this module type.
26972721
*/
@@ -2770,6 +2794,10 @@ export interface ExperimentsCommon {
27702794
* Enable additional in memory caching of modules that are unchanged and reference only unchanged modules.
27712795
*/
27722796
cacheUnaffected?: boolean;
2797+
/**
2798+
* Enable css support.
2799+
*/
2800+
css?: boolean;
27732801
/**
27742802
* Apply defaults of next major version.
27752803
*/
@@ -3112,6 +3140,14 @@ export interface OutputNormalized {
31123140
* This option enables cross-origin loading of chunks.
31133141
*/
31143142
crossOriginLoading?: CrossOriginLoading;
3143+
/**
3144+
* Specifies the filename template of non-initial output css files on disk. You must **not** specify an absolute path here, but the path may contain folders separated by '/'! The specified path is joined with the value of the 'output.path' option to determine the location on disk.
3145+
*/
3146+
cssChunkFilename?: CssChunkFilename;
3147+
/**
3148+
* Specifies the filename template of output css files on disk. You must **not** specify an absolute path here, but the path may contain folders separated by '/'! The specified path is joined with the value of the 'output.path' option to determine the location on disk.
3149+
*/
3150+
cssFilename?: CssFilename;
31153151
/**
31163152
* Similar to `output.devtoolModuleFilenameTemplate`, but used in the case of duplicate module identifiers.
31173153
*/

0 commit comments

Comments
 (0)