#!/bin/bash

# This fantastic piece of engineering is because I can't figure out how to do the equivalent in Browserify
# without ending up with a 500k pile of goop that doesn't function.   Pull requests welcome.

mkdir -p browser

cat node_modules/nitrogen-browser-request/index.js > browser/nitrogen.js
cat node_modules/socket.io-client/dist/socket.io.js >> browser/nitrogen.js

cat scripts/preamble.js                                                >> browser/nitrogen.js
cat lib/commandManager.js | sed '/require(/d' | sed '/module.export/d' >> browser/nitrogen.js
cat lib/apiKey.js         | sed '/require(/d' | sed '/module.export/d' >> browser/nitrogen.js
cat lib/permission.js     | sed '/require(/d' | sed '/module.export/d' >> browser/nitrogen.js
cat lib/principal.js      | sed '/require(/d' | sed '/module.export/d' >> browser/nitrogen.js
cat lib/message.js        | sed '/require(/d' | sed '/module.export/d' >> browser/nitrogen.js
cat lib/blob.js           | sed '/require(/d' | sed '/module.export/d' >> browser/nitrogen.js
cat lib/session.js        | sed '/require(/d' | sed '/module.export/d' >> browser/nitrogen.js
cat lib/service.js        | sed '/require(/d' | sed '/module.export/d' >> browser/nitrogen.js
cat lib/device.js         | sed '/require(/d' | sed '/module.export/d' >> browser/nitrogen.js
cat lib/user.js           | sed '/require(/d' | sed '/module.export/d' >> browser/nitrogen.js
cat lib/memoryStore.js    | sed '/require(/d' | sed '/module.export/d' >> browser/nitrogen.js

cat scripts/module.js                                                  >> browser/nitrogen.js
cat scripts/postamble.js                                               >> browser/nitrogen.js

node_modules/.bin/uglifyjs browser/nitrogen.js > browser/nitrogen-min.js
