Skip to content

Commit

Permalink
Merge pull request #672 from ianmartorell/expo-detector
Browse files Browse the repository at this point in the history
Add detector for Expo
  • Loading branch information
RaeesBhatti authored Jan 9, 2020
2 parents 72112ce + 68e61d8 commit 913bc6e
Showing 1 changed file with 33 additions and 0 deletions.
33 changes: 33 additions & 0 deletions src/detectors/expo.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
const { hasRequiredDeps, hasRequiredFiles, getYarnOrNPMCommand, scanScripts } = require('./utils/jsdetect')
module.exports = function() {
// REQUIRED FILES
if (!hasRequiredFiles(['package.json', 'app.json'])) return false
// REQUIRED DEPS
if (!hasRequiredDeps(['expo'])) return false

/** everything below now assumes that we are within expo */

const possibleArgsArrs = scanScripts({
// This script will run `expo start --web` in a new Expo project.
// Note: Expo will automatically launch the browser with your app's
// Webpack server listening on port 19006, but the instance proxied
// by `netlify dev` will be running on port 8888.
preferredScriptsArr: ['web'],
preferredCommand: 'expo start --web'
})

if (possibleArgsArrs.length === 0) {
// ofer to run it when the user doesnt have any scripts setup! 🤯
possibleArgsArrs.push(['expo', 'start', '--web'])
}
return {
type: 'expo',
command: getYarnOrNPMCommand(),
port: 8888,
proxyPort: 19006,
env: { ...process.env },
possibleArgsArrs,
urlRegexp: new RegExp(`(http://)([^:]+:)${19006}(/)?`, 'g'),
dist: 'web-build'
}
}

0 comments on commit 913bc6e

Please sign in to comment.