From 56296841401b71c9d10cf3b7bb3d3b8217f7844a Mon Sep 17 00:00:00 2001 From: Emin Khateeb Date: Tue, 6 Mar 2018 18:46:30 +0100 Subject: [PATCH] now using react-native-typescript-transformer --- devDependencies.json | 2 +- rn-cli.config.js | 8 ++++++++ setup.js | 4 +--- tsconfig.json | 7 ++++--- 4 files changed, 14 insertions(+), 7 deletions(-) create mode 100644 rn-cli.config.js diff --git a/devDependencies.json b/devDependencies.json index 69c07e0..5f6c71f 100644 --- a/devDependencies.json +++ b/devDependencies.json @@ -4,5 +4,5 @@ "tslint-react", "@types/react", "@types/react-native", - "npm-run-all" + "react-native-typescript-transformer" ] diff --git a/rn-cli.config.js b/rn-cli.config.js new file mode 100644 index 0000000..708a9aa --- /dev/null +++ b/rn-cli.config.js @@ -0,0 +1,8 @@ +module.exports = { + getTransformModulePath() { + return require.resolve('react-native-typescript-transformer'); + }, + getSourceExts() { + return ['ts', 'tsx']; + } +} diff --git a/setup.js b/setup.js index 8a6a97a..864fb49 100644 --- a/setup.js +++ b/setup.js @@ -8,9 +8,7 @@ const devDependencies = require('./devDependencies.json'); const deleteFile = (fileName) => fs.unlinkSync(path.join(process.cwd(), fileName)); const writeFile = (fileName, data) => fs.writeFileSync(path.join(process.cwd(), fileName), data); -packageJson.scripts.rn = packageJson.scripts.start; -packageJson.scripts.ts = 'node_modules/.bin/tsc -w'; -packageJson.scripts.start = 'npm-run-all -p -r rn ts'; +packageJson.scripts.start = `${packageJson.scripts.start} --config ${path.join(process.cwd(), 'rn-cli.config.js')}`; packageJson.scripts.lint = 'tslint -c tslint.json "src/**/*.{ts,tsx}"'; writeFile('package.json', JSON.stringify(packageJson, null, 2)); diff --git a/tsconfig.json b/tsconfig.json index 1997d28..8866117 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -13,7 +13,7 @@ "outDir": "./lib", /* Redirect output structure to the directory. */ // "rootDir": "./", /* Specify the root directory of input files. Use to control the output directory structure with --outDir. */ // "removeComments": true, /* Do not emit comments to output. */ - // "noEmit": true, /* Do not emit outputs. */ + "noEmit": true, /* Do not emit outputs. */ // "importHelpers": true, /* Import emit helpers from 'tslib'. */ // "downlevelIteration": true, /* Provide full support for iterables in 'for-of', spread, and destructuring when targeting 'ES5' or 'ES3'. */ // "isolatedModules": true, /* Transpile each file as a separate module (similar to 'ts.transpileModule'). */ @@ -34,7 +34,7 @@ // "noFallthroughCasesInSwitch": true, /* Report errors for fallthrough cases in switch statement. */ /* Module Resolution Options */ - // "moduleResolution": "node", /* Specify module resolution strategy: 'node' (Node.js) or 'classic' (TypeScript pre-1.6). */ + "moduleResolution": "node", /* Specify module resolution strategy: 'node' (Node.js) or 'classic' (TypeScript pre-1.6). */ // "baseUrl": "./", /* Base directory to resolve non-absolute module names. */ // "paths": {}, /* A series of entries which re-map imports to lookup locations relative to the 'baseUrl'. */ // "rootDirs": [], /* List of root folders whose combined content represents the structure of the project at runtime. */ @@ -54,5 +54,6 @@ // "experimentalDecorators": true, /* Enables experimental support for ES7 decorators. */ // "emitDecoratorMetadata": true, /* Enables experimental support for emitting type metadata for decorators. */ }, - "include": ["./src"] + "include": ["./src"], + "exclude": ["node_modules"] }