Skip to content

Commit 26af9f2

Browse files
committed
Patch RN changes
1 parent c6cfb0d commit 26af9f2

File tree

2 files changed

+35
-22
lines changed

2 files changed

+35
-22
lines changed

code/lib/cli/src/generators/REACT_NATIVE/index.ts

Lines changed: 15 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@ const generator = async (
1111

1212
const missingReactDom =
1313
!packageJson.dependencies['react-dom'] && !packageJson.devDependencies['react-dom'];
14+
1415
const reactVersion = packageJson.dependencies.react;
1516

1617
const packagesToResolve = [
@@ -24,24 +25,26 @@ const generator = async (
2425
'@storybook/react-native',
2526
];
2627

27-
// change these to latest version once v6 stable is released
28-
const packagesWithFixedVersion = [
29-
'@storybook/addon-actions@^6.5.16',
30-
'@storybook/addon-controls@^6.5.16',
31-
];
28+
const packagesWithFixedVersion: string[] = [];
3229

3330
const versionedPackages = await packageManager.getVersionedPackages(packagesToResolve);
3431

3532
const babelDependencies = await getBabelDependencies(packageManager, packageJson);
3633

37-
const packages = [
38-
...babelDependencies,
39-
...packagesWithFixedVersion,
40-
...versionedPackages,
41-
missingReactDom && reactVersion && `react-dom@${reactVersion}`,
42-
].filter(Boolean);
34+
const packages: string[] = [];
35+
36+
packages.push(...babelDependencies);
37+
38+
packages.push(...packagesWithFixedVersion);
39+
40+
packages.push(...versionedPackages);
41+
42+
if (missingReactDom && reactVersion) {
43+
packages.push(`react-dom@${reactVersion}`);
44+
}
4345

4446
await packageManager.addDependencies({ ...npmOptions, packageJson }, packages);
47+
4548
packageManager.addScripts({
4649
'storybook-generate': 'sb-rn-get-stories',
4750
'storybook-watch': 'sb-rn-watcher',
@@ -52,7 +55,7 @@ const generator = async (
5255
await copyTemplateFiles({
5356
packageManager,
5457
renderer: 'react-native',
55-
language: SupportedLanguage.JAVASCRIPT,
58+
language: SupportedLanguage.TYPESCRIPT_3_8,
5659
destination: storybookConfigFolder,
5760
includeCommonAssets: false,
5861
});

code/lib/cli/src/initiate.ts

Lines changed: 20 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ import { readdirSync } from 'fs-extra';
1212
import { lt, prerelease } from 'semver';
1313
import { installableProjectTypes, ProjectType } from './project_types';
1414
import { detect, isStorybookInstantiated, detectLanguage, detectPnp } from './detect';
15-
import { commandLog, codeLog, paddedLog } from './helpers';
15+
import { commandLog, paddedLog } from './helpers';
1616
import angularGenerator from './generators/ANGULAR';
1717
import emberGenerator from './generators/EMBER';
1818
import reactGenerator from './generators/REACT';
@@ -401,15 +401,25 @@ export async function doInitiate(
401401
}
402402

403403
if (projectType === ProjectType.REACT_NATIVE) {
404-
logger.log();
405-
logger.log(chalk.yellow('NOTE: installation is not 100% automated.\n'));
406-
logger.log(`To quickly run Storybook, replace contents of your app entry with:\n`);
407-
codeLog(["export {default} from './.storybook';"]);
408-
logger.log('\n Then to run your Storybook, type:\n');
409-
codeLog([packageManager.getRunCommand('start')]);
410-
logger.log('\n For more in information, see the github readme:\n');
411-
logger.log(chalk.cyan('https://github.com/storybookjs/react-native'));
412-
logger.log();
404+
logger.log(dedent`
405+
${chalk.yellow('NOTE: installation is not 100% automated.')}
406+
407+
To run Storybook, you will need to:
408+
409+
1. Replace the contents of your app entry with the following
410+
411+
${chalk.inverse("export {default} from './.storybook';")}
412+
413+
2. Enable transformer.unstable_allowRequireContext in your metro config
414+
415+
For a more detailed guide go to:
416+
${chalk.cyan('https://github.com/storybookjs/react-native#existing-project')}
417+
418+
Then to run your Storybook, type:
419+
420+
${chalk.inverse(` ${packageManager.getRunCommand('start')} `)}
421+
422+
`);
413423

414424
return { shouldRunDev: false };
415425
}

0 commit comments

Comments
 (0)