diff --git a/lib/cli/story.js b/lib/cli/story.js new file mode 100644 index 000000000000..2a64488eda19 --- /dev/null +++ b/lib/cli/story.js @@ -0,0 +1,10 @@ +export default { + title: 'Story', +}; + +export const startCase = () => 'foo'; +export const camelCase = () => 'foo'; + +camelCase.story = { + name: 'camelCase', +}; diff --git a/lib/codemod/package.json b/lib/codemod/package.json index b0b3b262dc98..9dc73c93697d 100644 --- a/lib/codemod/package.json +++ b/lib/codemod/package.json @@ -23,6 +23,7 @@ "dependencies": { "@mdx-js/mdx": "^1.0.0", "@storybook/node-logger": "5.2.1", + "@storybook/router": "5.2.1", "core-js": "^3.0.1", "cross-spawn": "^6.0.5", "globby": "^10.0.1", diff --git a/lib/codemod/src/lib/utils.js b/lib/codemod/src/lib/utils.js index 822774440a20..4d782569a215 100644 --- a/lib/codemod/src/lib/utils.js +++ b/lib/codemod/src/lib/utils.js @@ -9,5 +9,9 @@ export const sanitizeName = name => { if (isReserved(key)) { key = `${key}Story`; } + // prepend _ if name starts with a digit + if (/^\d/.test(key)) { + key = `_${key}`; + } return key; }; diff --git a/lib/codemod/src/transforms/__testfixtures__/storiesof-to-csf/basic.input.js b/lib/codemod/src/transforms/__testfixtures__/storiesof-to-csf/basic.input.js index 459203a04290..17c8f6abc1a1 100644 --- a/lib/codemod/src/transforms/__testfixtures__/storiesof-to-csf/basic.input.js +++ b/lib/codemod/src/transforms/__testfixtures__/storiesof-to-csf/basic.input.js @@ -14,4 +14,5 @@ storiesOf('Button', module)
)) - .add('w/punctuation', () =>