Skip to content

Commit 8963ce7

Browse files
committed
feat(conversion): use snake case instead of camel case
BREAKING CHANGE: Generate types and variable names in snake case instead of camel case
1 parent b3cefe9 commit 8963ce7

File tree

4 files changed

+10
-12
lines changed

4 files changed

+10
-12
lines changed

package-lock.json

+6-6
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -44,7 +44,7 @@
4444
"dependencies": {
4545
"chalk": "^3.0.0",
4646
"commander": "^4.0.1",
47-
"lodash.camelcase": "^4.3.0",
47+
"lodash.snakecase": "^4.1.1",
4848
"prettier": "^1.19.1",
4949
"svgo": "^1.3.2"
5050
},

src/lib/convert.ts

+3-3
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
import { svgo } from './svgo';
22
import { getInterfaceDefinition, getSvgConstant, getTypeDefinition } from './definitions';
3-
import camelCase from 'lodash.camelcase';
3+
import snakeCase from 'lodash.snakecase';
44
import * as prettier from 'prettier/standalone';
55
import chalk from 'chalk';
66
import typescriptParser from 'prettier/parser-typescript';
@@ -31,7 +31,7 @@ export const convert = async (convertionOptions: ConvertionOptions): Promise<voi
3131
const files = await readdir(directoryPath);
3232
for (let i = 0; i < files.length; i++) {
3333
const fileNameWithEnding = files[i];
34-
const filenameWithoutEnding = fileNameWithEnding.split('.')[0];
34+
const filenameWithoutEnding = snakeCase(fileNameWithEnding.split('.')[0]);
3535
const rawSvg = await extractSvgContent(fileNameWithEnding, directoryPath);
3636
const optimizedSvg = await svgo.optimize(rawSvg);
3737
const variableName = getVariableName(convertionOptions, filenameWithoutEnding);
@@ -75,7 +75,7 @@ const writeIconsFile = async (convertionOptions: ConvertionOptions, fileContent:
7575
};
7676

7777
const getVariableName = (convertionOptions: ConvertionOptions, filenameWithoutEnding): string => {
78-
return `${convertionOptions.prefix}${capitalize(camelCase(filenameWithoutEnding))}`;
78+
return `${convertionOptions.prefix}${capitalize(filenameWithoutEnding)}`;
7979
};
8080

8181
const extractSvgContent = async (fileName: string, directoryPath: string): Promise<string> => {

src/lib/definitions.ts

-2
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,3 @@
1-
import { ConvertionOptions } from './convert';
2-
31
export const getInterfaceDefinition = (interfaceName: string, typeName: string) => {
42
return `export interface ${interfaceName}{
53
name: ${typeName};

0 commit comments

Comments
 (0)