Skip to content

Commit 119ae4a

Browse files
authored
Merge pull request #38 from jnak/artifact-directory
Add support for artifactDirectory option
2 parents 0389bb1 + 7fe9c1f commit 119ae4a

File tree

7 files changed

+607
-19
lines changed

7 files changed

+607
-19
lines changed

.gitignore

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
node_modules
22
/test/fixtures/**/dist/
33
/test/fixtures/**/__generated__/
4-
/reports
4+
/reports
5+
.DS_Store

src/getWriter.js

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,11 @@ interface WriterConfig {
2020
reporter: any;
2121
}
2222

23-
export default function getWriter (languagePlugin: any, baseDir: string) {
23+
export default function getWriter (
24+
languagePlugin: any,
25+
baseDir: string,
26+
outputDir: ?string
27+
) {
2428
return (config: WriterConfig | boolean, ...args) => {
2529
const cfg =
2630
typeof config === 'object'
@@ -45,10 +49,11 @@ export default function getWriter (languagePlugin: any, baseDir: string) {
4549
queryTransforms
4650
},
4751
customScalars: {},
52+
extension: languagePlugin.outputExtension,
4853
formatModule: languagePlugin.formatModule,
4954
inputFieldWhiteListForFlow: [],
55+
outputDir,
5056
schemaExtensions,
51-
extension: languagePlugin.outputExtension,
5257
typeGenerator: languagePlugin.typeGenerator,
5358
useHaste: false
5459
}

src/index.js

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,8 @@ class RelayCompilerWebpackPlugin {
4646
extensions: Array<string>,
4747
include: Array<string>,
4848
exclude: Array<string>,
49-
languagePlugin?: Function
49+
languagePlugin?: Function,
50+
artifactDirectory?: string
5051
}) {
5152
if (!options) {
5253
throw new Error('You must provide options to RelayCompilerWebpackPlugin.')
@@ -100,6 +101,7 @@ class RelayCompilerWebpackPlugin {
100101
})
101102

102103
this.writerConfigs = this.createWriterConfigs({
104+
artifactDirectory: options.artifactDirectory,
103105
baseDir: options.src,
104106
sourceParserName,
105107
languagePlugin: language
@@ -157,15 +159,17 @@ class RelayCompilerWebpackPlugin {
157159
createWriterConfigs ({
158160
baseDir,
159161
sourceParserName,
160-
languagePlugin
162+
languagePlugin,
163+
artifactDirectory
161164
}: {
162165
baseDir: string,
163166
sourceParserName: string,
164-
languagePlugin: any
167+
languagePlugin: any,
168+
artifactDirectory: ?string
165169
}) {
166170
return {
167171
[languagePlugin.outputExtension]: {
168-
getWriter: getWriter(languagePlugin, baseDir),
172+
getWriter: getWriter(languagePlugin, baseDir, artifactDirectory),
169173
isGeneratedFile: (filePath: string) =>
170174
filePath.endsWith('.graphql.' + languagePlugin.outputExtension) &&
171175
filePath.includes('__generated__'),

0 commit comments

Comments
 (0)