Skip to content

Commit 2a5d65e

Browse files
committed
fallback
1 parent a984bce commit 2a5d65e

File tree

10 files changed

+29
-22
lines changed

10 files changed

+29
-22
lines changed

src/extractor.js

Lines changed: 10 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
import postcss from 'postcss';
22
import genericNames from 'generic-names';
3+
import { relative } from 'path';
34

45
import Values from 'postcss-modules-values';
56
import LocalByDefault from 'postcss-modules-local-by-default';
@@ -27,9 +28,15 @@ export default function extractor({
2728
use,
2829
rootDir: context = process.cwd(),
2930
} = {}, fetch) {
30-
const scopedName = typeof generateScopedName !== 'function'
31-
? genericNames(generateScopedName || '[name]__[local]___[hash:base64:5]', {context})
32-
: generateScopedName;
31+
let scopedName;
32+
if (generateScopedName) {
33+
scopedName = typeof generateScopedName !== 'function'
34+
? genericNames(generateScopedName || '[name]__[local]___[hash:base64:5]', {context})
35+
: generateScopedName;
36+
} else {
37+
// small fallback
38+
scopedName = (local, filename) => Scope.generateScopedName(local, relative(context, filename));
39+
}
3340

3441
const plugins = (use || [
3542
...prepend,

test/common-test-cases.js

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -65,7 +65,7 @@ describe('common-test-cases', () => {
6565
hook({rootDir: resolve('test/test-cases'), use: pipelines['test-cases']});
6666
});
6767

68-
it.skip('loader-core', done => {
68+
it('loader-core', done => {
6969
const loader = new FileSystemLoader(resolve('test/test-cases'), pipelines['test-cases']);
7070

7171
loader.fetch('localise-export/source.css', '/')
@@ -90,7 +90,7 @@ describe('common-test-cases', () => {
9090
hook({rootDir: resolve('test/test-cases'), use: pipelines['test-cases']});
9191
});
9292

93-
it.skip('loader-core', done => {
93+
it('loader-core', done => {
9494
const loader = new FileSystemLoader(resolve('test/test-cases'), pipelines['test-cases']);
9595

9696
loader.fetch('multiple-dependencies/source.css', '/')
@@ -116,7 +116,7 @@ describe('common-test-cases', () => {
116116
hook({rootDir: resolve('test/test-cases'), use: pipelines['test-cases']});
117117
});
118118

119-
it.skip('loader-core', done => {
119+
it('loader-core', done => {
120120
const loader = new FileSystemLoader(resolve('test/test-cases'), pipelines['test-cases']);
121121

122122
loader.fetch('multiple-sources/source1.css', '/').then(tokens1 => {
@@ -146,7 +146,7 @@ describe('common-test-cases', () => {
146146
hook({rootDir: resolve('test/test-cases'), use: pipelines['test-cases']});
147147
});
148148

149-
it.skip('loader-core', done => {
149+
it('loader-core', done => {
150150
const loader = new FileSystemLoader(resolve('test/test-cases'), pipelines['test-cases']);
151151

152152
loader.fetch('simple-export/source.css', '/')
@@ -171,7 +171,7 @@ describe('common-test-cases', () => {
171171
hook({rootDir: resolve('test/test-cases'), use: pipelines['test-cases']});
172172
});
173173

174-
it.skip('loader-core', done => {
174+
it('loader-core', done => {
175175
const loader = new FileSystemLoader(resolve('test/test-cases'), pipelines['test-cases']);
176176

177177
loader.fetch('single-import-export/source.css', '/')
@@ -196,7 +196,7 @@ describe('common-test-cases', () => {
196196
hook({rootDir: resolve('test/test-cases'), use: pipelines['test-cases']});
197197
});
198198

199-
it.skip('loader-core', done => {
199+
it('loader-core', done => {
200200
const loader = new FileSystemLoader(resolve('test/test-cases'), pipelines['test-cases']);
201201

202202
loader.fetch('values/source.css', '/')
@@ -225,7 +225,7 @@ describe('common-test-cases', () => {
225225
hook({rootDir: resolve('test/cssi'), use: pipelines['cssi']});
226226
});
227227

228-
it.skip('loader-core', done => {
228+
it('loader-core', done => {
229229
const loader = new FileSystemLoader(resolve('test/cssi'), pipelines['cssi']);
230230

231231
loader.fetch('interchange-format/source.css', '/')
@@ -250,7 +250,7 @@ describe('common-test-cases', () => {
250250
hook({rootDir: resolve('test/cssi'), use: pipelines['cssi']});
251251
});
252252

253-
it.skip('loader-core', done => {
253+
it('loader-core', done => {
254254
const loader = new FileSystemLoader(resolve('test/cssi'), pipelines['cssi']);
255255

256256
loader.fetch('pseudo-variables/source.css', '/')
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
11
{
2-
"foo": "source__foo___Hrz9d common__paragraph___3JLbK oceanic__color___31IHS"
2+
"foo": "_compose_node_module_source__foo _node_modules_awesome_theme_common__paragraph _node_modules_awesome_theme_oceanic__color"
33
}
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
11
{
2-
"localName": "source__localName___vIwQ_"
2+
"localName": "_test_test_cases_extra_extension_source__localName"
33
}
Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
{
2-
"one": "source__one___2IkxG",
3-
"two": "source__two___2iKn2",
4-
"three": "source__three___3gn87"
2+
"one": "_localise_export_source__one",
3+
"two": "_localise_export_source__two",
4+
"three": "_localise_export_source__three"
55
}
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
11
{
2-
"a": "source__a___RfIq7 b__b1___3Qt4T d__d1___1Xi3x d__d2___1eI73 b__b2___1px7c c__c___2OSKQ something-global"
2+
"a": "_multiple_dependencies_source__a _multiple_dependencies_b__b1 _multiple_dependencies_d__d1 _multiple_dependencies_d__d2 _multiple_dependencies_b__b2 _multiple_dependencies_c__c something-global"
33
}
Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
11
{
2-
"a": "source1__a___2iCl8 b__b___2rzkw d__d___2_axc c__c___3w6Q6",
3-
"foo": "source2__foo___1bzDO b__b___2rzkw d__d___2_axc"
2+
"a": "_multiple_sources_source1__a _multiple_sources_b__b _multiple_sources_d__d _multiple_sources_c__c",
3+
"foo": "_multiple_sources_source2__foo _multiple_sources_b__b _multiple_sources_d__d"
44
}
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
11
{
2-
"localName": "source__localName___27qI-"
2+
"localName": "_simple_export_source__localName"
33
}
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
11
{
2-
"localName": "source__localName___4KJWa colors__blackShadow___1KxRU colors__redBorder___2JrFD"
2+
"localName": "_single_import_export_source__localName _single_import_export_colors__blackShadow _single_import_export_colors__redBorder"
33
}

test/test-cases/values/expected.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,5 +5,5 @@
55
"medium": "(min-width: 600px) and (max-width: 959px)",
66
"secondary": "#2f2",
77
"blue": "#f01",
8-
"foo": "source__foo___29gFW borders__dashed___1ai3w colors__text-secondary___3-tp0"
8+
"foo": "_values_source__foo _values_borders__dashed _values_colors__text-secondary"
99
}

0 commit comments

Comments
 (0)