Skip to content

Commit 9f74c0b

Browse files
committed
Feat: use rcs-core mappings
1 parent adf10d1 commit 9f74c0b

14 files changed

+198
-304
lines changed

README.md

+9-10
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,7 @@ rcs.config.load();
4747

4848
// if you have some generated mappings - load them!
4949
// you can also specify the string although it does not exist yet.
50-
rcs.loadMapping('./renaming_map.json');
50+
rcs.mapping.load('./renaming_map.json');
5151

5252
// now with rcsCore you could e.g. ignore single variables (optional)
5353
rcsCore.baseLibrary.setExclude(/<%=[\s\S]+%>/);
@@ -59,22 +59,22 @@ rcs.process.auto(['**/*.js', '**/*.html', '**/*.css'], options, (err) => {
5959
// that's it
6060

6161
// maybe you want to add the new selectors to your previous generated mappings
62-
// do not worry, your old settings are still here, in case you used `loadMapping`
63-
rcs.generateMapping('./', { overwrite: true }, (err) => {
62+
// do not worry, your old settings are still here, in case you used `rcs.mapping.load`
63+
rcs.mapping.generate('./', { overwrite: true }, (err) => {
6464
// the mapping file is now saved
6565
});
6666
});
6767

6868
// promise
6969
rcs.process.auto(['**/*.js', '**/*.html', '**/*.css'], options)
70-
.then(() => rcs.generateMapping('./', { overwrite: true }))
70+
.then(() => rcs.mapping.generate('./', { overwrite: true }))
7171
.catch(console.error);
7272

7373
// async/await
7474
(async () => {
7575
try {
7676
await rcs.process.auto(['**/*.js', '**/*.html', '**/*.css'], options);
77-
await rcs.generateMapping('./', { overwrite: true });
77+
await rcs.mapping.generate('./', { overwrite: true });
7878
} catch (err) {
7979
console.error(err);
8080
}
@@ -86,11 +86,11 @@ Sync:
8686
```js
8787
const rcs = require('rename-css-selectors');
8888

89-
rcs.loadMapping('./renaming_map.json');
89+
rcs.mapping.load('./renaming_map.json');
9090

9191
try {
9292
rcs.process.autoSync(['**/*.js', '**/*.html', '**/*.css'], options);
93-
rcs.generateMappingSync('./', { overwrite: true });
93+
rcs.mapping.generateSync('./', { overwrite: true });
9494
} catch (err) {
9595
console.error(err);
9696
}
@@ -104,14 +104,13 @@ try {
104104
- [rcs.process.html](docs/api/processHtml.md)
105105
- [rcs.process.pug](docs/api/processPug.md)
106106
- [rcs.process.any](docs/api/processAny.md)
107-
- [rcs.generateMapping](docs/api/generateMapping.md)
108-
- [rcs.loadMapping](docs/api/loadMapping.md)
107+
- [rcs.mapping](docs/api/mapping.md)
109108
- [rcs.config](docs/api/config.md)
110109

111110
## Caveats
112111

113112
Correctly using `rename-css-selectors` on large project means few rules should be followed.
114-
[This document](docs/caveats.md) explains most of them.
113+
[This document](https://github.com/JPeer264/node-rcs-core/blob/main/docs/caveats.md) explains most of them.
115114

116115
# LICENSE
117116

__tests__/generateMapping.ts

+21-22
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,6 @@ import fs from 'fs-extra';
44
import json from 'json-extra';
55

66
import reset from './helpers/reset';
7-
import generateMapping from '../lib/mapping/generateMapping';
87
import rcs from '../lib';
98

109
let testCwd;
@@ -26,48 +25,48 @@ afterEach(() => {
2625
});
2726

2827
test('should create the normal mapping file', (done) => {
29-
generateMapping(testCwd.name, (err) => {
28+
rcs.mapping.generate(testCwd.name, (err) => {
3029
const cssMapping = json.readToObjSync(path.join(testCwd.name, '/renaming_map.json'), 'utf8');
3130

3231
expect(err).toBeFalsy();
33-
expect(cssMapping['.jp-block']).toBe('a');
34-
expect(cssMapping['.jp-block__element']).toBe('b');
32+
expect(cssMapping.selectors['.jp-block']).toBe('a');
33+
expect(cssMapping.selectors['.jp-block__element']).toBe('b');
3534

3635
done();
3736
});
3837
});
3938

4039
test('should create the minified mapping file', (done) => {
41-
generateMapping(testCwd.name, {
42-
cssMapping: false,
43-
cssMappingMin: true,
40+
rcs.mapping.generate(testCwd.name, {
41+
origValues: false,
4442
}, (err) => {
4543
const cssMappingMin = json.readToObjSync(path.join(testCwd.name, '/renaming_map_min.json'), 'utf8');
4644

4745
expect(err).toBeFalsy();
48-
expect(cssMappingMin['.a']).toBe('jp-block');
49-
expect(cssMappingMin['.b']).toBe('jp-block__element');
46+
expect(cssMappingMin.selectors['.a']).toBe('jp-block');
47+
expect(cssMappingMin.selectors['.b']).toBe('jp-block__element');
5048

5149
done();
5250
});
5351
});
5452

5553
test('should create the minified mapping file with a custom name', (done) => {
56-
generateMapping(testCwd.name, {
57-
cssMappingMin: 'custom-name',
54+
rcs.mapping.generate(testCwd.name, {
55+
origValues: false,
56+
fileName: 'custom-name',
5857
}, (err) => {
5958
const cssMappingMin = json.readToObjSync(path.join(testCwd.name, '/custom-name.json'), 'utf8');
6059

6160
expect(err).toBeFalsy();
62-
expect(cssMappingMin['.a']).toBe('jp-block');
63-
expect(cssMappingMin['.b']).toBe('jp-block__element');
61+
expect(cssMappingMin.selectors['.a']).toBe('jp-block');
62+
expect(cssMappingMin.selectors['.b']).toBe('jp-block__element');
6463

6564
done();
6665
});
6766
});
6867

6968
test('should create the minified mapping js file', (done) => {
70-
generateMapping(testCwd.name, {
69+
rcs.mapping.generate(testCwd.name, {
7170
json: false,
7271
}, (err) => {
7372
const cssMapping = fs.readFileSync(path.join(testCwd.name, '/renaming_map.js'), 'utf8');
@@ -80,8 +79,8 @@ test('should create the minified mapping js file', (done) => {
8079
});
8180

8281
test('should overwrite mapping files', (done) => {
83-
generateMapping(testCwd.name, (err) => {
84-
generateMapping(testCwd.name, { overwrite: true }, (err2) => {
82+
rcs.mapping.generate(testCwd.name, (err) => {
83+
rcs.mapping.generate(testCwd.name, { overwrite: true }, (err2) => {
8584
expect(err).toBeFalsy();
8685
expect(err2).toBeFalsy();
8786

@@ -91,19 +90,19 @@ test('should overwrite mapping files', (done) => {
9190
});
9291

9392
test('should not overwrite mapping files', async () => {
94-
await expect(generateMapping(testCwd.name)).resolves.toBe(undefined);
95-
await expect(generateMapping(testCwd.name)).rejects.toBeTruthy();
93+
await expect(rcs.mapping.generate(testCwd.name)).resolves.toBe(undefined);
94+
await expect(rcs.mapping.generate(testCwd.name)).rejects.toBeTruthy();
9695
});
9796

9897
test('should create the custom names minified mapping file', (done) => {
99-
generateMapping(testCwd.name, {
100-
cssMapping: 'custom-name',
98+
rcs.mapping.generate(testCwd.name, {
99+
fileName: 'custom-name',
101100
}, (err) => {
102101
const cssMapping = json.readToObjSync(path.join(testCwd.name, '/custom-name.json'), 'utf8');
103102

104103
expect(err).toBeFalsy();
105-
expect(cssMapping['.jp-block']).toBe('a');
106-
expect(cssMapping['.jp-block__element']).toBe('b');
104+
expect(cssMapping.selectors['.jp-block']).toBe('a');
105+
expect(cssMapping.selectors['.jp-block__element']).toBe('b');
107106

108107
done();
109108
});

__tests__/generateMappingSync.ts

-77
This file was deleted.

__tests__/integration_mapping.ts

+7-6
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ beforeEach(async () => {
2020
newPath: testCwd.name,
2121
cwd: fixturesCwd,
2222
});
23-
await rcs.generateMapping(testCwd.name);
23+
await rcs.mapping.generate(testCwd.name);
2424

2525
reset();
2626
});
@@ -32,7 +32,7 @@ afterEach(() => {
3232
test('should load from an object', async () => {
3333
const cssMapping = json.readToObjSync(path.join(testCwd.name, '/renaming_map.json'), 'utf8');
3434

35-
rcs.loadMapping(cssMapping);
35+
rcs.mapping.load(cssMapping);
3636

3737
await rcs.process.html('**/*.html', {
3838
newPath: testCwd.name,
@@ -47,7 +47,7 @@ test('should load from an object', async () => {
4747
});
4848

4949
test('should load from a filestring', async () => {
50-
rcs.loadMapping(path.join(testCwd.name, '/renaming_map.json'));
50+
await rcs.mapping.load(path.join(testCwd.name, '/renaming_map.json'));
5151

5252
await rcs.process.html('**/*.html', {
5353
newPath: testCwd.name,
@@ -62,7 +62,7 @@ test('should load from a filestring', async () => {
6262
});
6363

6464
test('should load nothing as it does not exist', async () => {
65-
rcs.loadMapping(path.join(testCwd.name, '/doesnotexist.json'));
65+
await rcs.mapping.load(path.join(testCwd.name, '/doesnotexist.json'));
6666

6767
await rcs.process.html('**/*.html', {
6868
newPath: testCwd.name,
@@ -82,10 +82,11 @@ test('should load from a filestring', async () => {
8282
cwd: fixturesCwd,
8383
});
8484

85-
await rcs.generateMapping(testCwd.name, { cssMappingMin: true });
85+
await rcs.mapping.generate(testCwd.name, { origValues: false });
8686

8787
reset();
88-
rcs.loadMapping(path.join(testCwd.name, '/renaming_map_min.json'), { origValues: false });
88+
89+
await rcs.mapping.load(path.join(testCwd.name, '/renaming_map_min.json'), { origValues: false });
8990

9091
await rcs.process.html('**/*.html', {
9192
newPath: testCwd.name,

__tests__/loadMapping.ts

+9-7
Original file line numberDiff line numberDiff line change
@@ -1,18 +1,20 @@
1-
import rcs from 'rcs-core';
1+
import rcsCore from 'rcs-core';
22

3-
import loadMapping from '../lib/mapping/loadMapping';
3+
import rcs from '../lib';
44
import reset from './helpers/reset';
55

66
beforeEach(() => {
77
reset();
88
});
99

1010
test('should load from an object', () => {
11-
loadMapping({
12-
'.jp-block': 'a-class',
13-
'#compressed': 'b',
11+
rcs.mapping.load({
12+
selectors: {
13+
'.jp-block': 'a-class',
14+
'#compressed': 'b',
15+
},
1416
});
1517

16-
expect(rcs.selectorsLibrary.get('jp-block')).toBe('a-class');
17-
expect(rcs.selectorsLibrary.get('#compressed')).toBe('b');
18+
expect(rcsCore.selectorsLibrary.get('jp-block')).toBe('a-class');
19+
expect(rcsCore.selectorsLibrary.get('#compressed')).toBe('b');
1820
});

docs/api/generateMapping.md

-62
This file was deleted.

0 commit comments

Comments
 (0)