(options, isDev = false)
| 106 | // - a synthetic `stories.js` virtual module emitted for each `story:` glob |
| 107 | // dependency (lives in Parcel's module graph, not on disk) |
| 108 | async function createParcel(options, isDev = false) { |
| 109 | fs.mkdirSync(generatedEntries, {recursive: true}); |
| 110 | fs.writeFileSync( |
| 111 | path.join(generatedEntries, 'iframe.html'), |
| 112 | await generateIframeModern(options, generatedEntries) |
| 113 | ); |
| 114 | fs.writeFileSync(path.join(generatedEntries, 'setup-addons.js'), generateSetupAddons()); |
| 115 | fs.writeFileSync( |
| 116 | path.join(generatedEntries, 'preview-main.js'), |
| 117 | await generatePreviewModern(options, generatedEntries) |
| 118 | ); |
| 119 | |
| 120 | return new Parcel({ |
| 121 | entries: path.join(generatedEntries, 'iframe.html'), |
| 122 | config: path.resolve(options.configDir, '.parcelrc'), |
| 123 | mode: isDev ? 'development' : 'production', |
| 124 | serveOptions: isDev ? {port: 3000} : null, |
| 125 | hmrOptions: isDev ? {port: 3001} : null, |
| 126 | additionalReporters: [{packageName: '@parcel/reporter-cli', resolveFrom: __filename}], |
| 127 | targets: { |
| 128 | storybook: { |
| 129 | distDir: options.outputDir, |
| 130 | publicUrl: './', |
| 131 | engines: { |
| 132 | browsers: [ |
| 133 | 'last 2 Chrome version', |
| 134 | 'last 2 Safari versions', |
| 135 | 'last 2 Edge version', |
| 136 | 'last 2 Firefox versions' |
| 137 | ] |
| 138 | } |
| 139 | } |
| 140 | } |
| 141 | }); |
| 142 | } |
no test coverage detected