aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--.gitignore1
-rw-r--r--README.md3
-rw-r--r--config.xml-example11
-rw-r--r--package-lock.json-example600
-rw-r--r--package.json-example57
5 files changed, 668 insertions, 4 deletions
diff --git a/.gitignore b/.gitignore
index 4e4534c..37db34d 100644
--- a/.gitignore
+++ b/.gitignore
@@ -16,3 +16,4 @@ locale/lang_list
/config.xml
/node_modules
/package.json
+/package-lock.json
diff --git a/README.md b/README.md
index 4d33b6f..1b2e584 100644
--- a/README.md
+++ b/README.md
@@ -25,6 +25,9 @@ You should also create a `config.xml` file based on `config.xml-example`.
The only change you should need to make is to add the hostname of your FMS installation
in an `<access origin=""/>` tag.
+You'll also need `package.json` and `package-lock.json` which can be similarly
+created from the `-example` files.
+
Setup
-----
This project uses Apache Cordova to produce Android and iOS apps. There is
diff --git a/config.xml-example b/config.xml-example
index db64ef0..f472696 100644
--- a/config.xml-example
+++ b/config.xml-example
@@ -35,7 +35,7 @@
<preference name="AndroidPersistentFileLocation" value="Compatibility" />
<!-- If you change the background colour of the app, change this value to match. -->
<preference name="StatusBarBackgroundColor" value="#F6BE41" />
- <preference name="deployment-target" value="6.0" />
+ <preference name="deployment-target" value="9.0" />
<platform name="android">
<icon density="ldpi" src="res/android/drawable-ldpi/icon.png" />
@@ -89,7 +89,8 @@
<splash src="res/ios/splash/Default-1242@3x~iphone6s-portrait_1242x2208.png" width="1242" height="2208"/>
</platform>
- <engine name="ios" spec="~4.1.1" />
+ <engine name="android" spec="^5.1.1" />
+ <engine name="ios" spec="^4.4.0" />
<plugin name="cordova-plugin-camera" spec="~2.1.1" />
<plugin name="cordova-plugin-device" spec="~1.1.1" />
<plugin name="cordova-plugin-dialogs" spec="~1.2.0" />
@@ -98,13 +99,15 @@
<plugin name="cordova-plugin-geolocation" spec="~2.1.0" />
<plugin name="cordova-plugin-inappbrowser" spec="~1.3.0" />
<plugin name="cordova-plugin-media" spec="~2.2.0" />
- <plugin name="cordova-plugin-media-capture" spec="~1.2.0" />
+ <plugin name="cordova-plugin-media-capture" spec="~1.4.1">
+ <variable name="CAMERA_USAGE_DESCRIPTION" value="To take photos of problems." />
+ <variable name="PHOTOLIBRARY_USAGE_DESCRIPTION" value="To attach photos of problems to your report." />
+ </plugin>
<plugin name="cordova-plugin-network-information" spec="~1.2.0" />
<plugin name="cordova-plugin-splashscreen" spec="~3.2.1" />
<plugin name="cordova-plugin-statusbar" spec="~2.1.2" />
<plugin name="cordova-plugin-whitelist" spec="~1.2.1" />
<plugin name="ionic-plugin-keyboard" spec="~2.0.1" />
- <engine name="android" spec="~5.1.1" />
<hook src="scripts/prepare_index_html.js" type="after_prepare" />
</widget>
diff --git a/package-lock.json-example b/package-lock.json-example
new file mode 100644
index 0000000..ab66fd7
--- /dev/null
+++ b/package-lock.json-example
@@ -0,0 +1,600 @@
+{
+ "name": "org.mysociety.groundcontrolapp",
+ "version": "1.0",
+ "lockfileVersion": 1,
+ "requires": true,
+ "dependencies": {
+ "cordova-android": {
+ "version": "6.2.3",
+ "resolved": "https://registry.npmjs.org/cordova-android/-/cordova-android-6.2.3.tgz",
+ "integrity": "sha1-JJ8hts5fHxyEenq4OxaQnb7Vqig=",
+ "requires": {
+ "cordova-common": "2.0.2",
+ "elementtree": "0.1.6",
+ "nopt": "3.0.6",
+ "properties-parser": "0.2.3",
+ "q": "1.5.0",
+ "shelljs": "0.5.3"
+ },
+ "dependencies": {
+ "abbrev": {
+ "version": "1.1.0",
+ "bundled": true
+ },
+ "ansi": {
+ "version": "0.3.1",
+ "bundled": true
+ },
+ "balanced-match": {
+ "version": "0.4.2",
+ "bundled": true
+ },
+ "base64-js": {
+ "version": "0.0.8",
+ "bundled": true
+ },
+ "big-integer": {
+ "version": "1.6.22",
+ "bundled": true
+ },
+ "bplist-parser": {
+ "version": "0.1.1",
+ "bundled": true,
+ "requires": {
+ "big-integer": "1.6.22"
+ }
+ },
+ "brace-expansion": {
+ "version": "1.1.7",
+ "bundled": true,
+ "requires": {
+ "balanced-match": "0.4.2",
+ "concat-map": "0.0.1"
+ }
+ },
+ "concat-map": {
+ "version": "0.0.1",
+ "bundled": true
+ },
+ "cordova-common": {
+ "version": "2.0.2",
+ "bundled": true,
+ "requires": {
+ "ansi": "0.3.1",
+ "bplist-parser": "0.1.1",
+ "cordova-registry-mapper": "1.1.15",
+ "elementtree": "0.1.6",
+ "glob": "5.0.15",
+ "minimatch": "3.0.3",
+ "osenv": "0.1.4",
+ "plist": "1.2.0",
+ "q": "1.5.0",
+ "semver": "5.3.0",
+ "shelljs": "0.5.3",
+ "underscore": "1.8.3",
+ "unorm": "1.4.1"
+ }
+ },
+ "cordova-registry-mapper": {
+ "version": "1.1.15",
+ "bundled": true
+ },
+ "elementtree": {
+ "version": "0.1.6",
+ "bundled": true,
+ "requires": {
+ "sax": "0.3.5"
+ }
+ },
+ "glob": {
+ "version": "5.0.15",
+ "bundled": true,
+ "requires": {
+ "inflight": "1.0.6",
+ "inherits": "2.0.3",
+ "minimatch": "3.0.3",
+ "once": "1.4.0",
+ "path-is-absolute": "1.0.1"
+ }
+ },
+ "inflight": {
+ "version": "1.0.6",
+ "bundled": true,
+ "requires": {
+ "once": "1.4.0",
+ "wrappy": "1.0.2"
+ }
+ },
+ "inherits": {
+ "version": "2.0.3",
+ "bundled": true
+ },
+ "lodash": {
+ "version": "3.10.1",
+ "bundled": true
+ },
+ "minimatch": {
+ "version": "3.0.3",
+ "bundled": true,
+ "requires": {
+ "brace-expansion": "1.1.7"
+ }
+ },
+ "nopt": {
+ "version": "3.0.6",
+ "bundled": true,
+ "requires": {
+ "abbrev": "1.1.0"
+ }
+ },
+ "once": {
+ "version": "1.4.0",
+ "bundled": true,
+ "requires": {
+ "wrappy": "1.0.2"
+ }
+ },
+ "os-homedir": {
+ "version": "1.0.2",
+ "bundled": true
+ },
+ "os-tmpdir": {
+ "version": "1.0.2",
+ "bundled": true
+ },
+ "osenv": {
+ "version": "0.1.4",
+ "bundled": true,
+ "requires": {
+ "os-homedir": "1.0.2",
+ "os-tmpdir": "1.0.2"
+ }
+ },
+ "path-is-absolute": {
+ "version": "1.0.1",
+ "bundled": true
+ },
+ "plist": {
+ "version": "1.2.0",
+ "bundled": true,
+ "requires": {
+ "base64-js": "0.0.8",
+ "util-deprecate": "1.0.2",
+ "xmlbuilder": "4.0.0",
+ "xmldom": "0.1.27"
+ }
+ },
+ "properties-parser": {
+ "version": "0.2.3",
+ "bundled": true
+ },
+ "q": {
+ "version": "1.5.0",
+ "bundled": true
+ },
+ "sax": {
+ "version": "0.3.5",
+ "bundled": true
+ },
+ "semver": {
+ "version": "5.3.0",
+ "bundled": true
+ },
+ "shelljs": {
+ "version": "0.5.3",
+ "bundled": true
+ },
+ "underscore": {
+ "version": "1.8.3",
+ "bundled": true
+ },
+ "unorm": {
+ "version": "1.4.1",
+ "bundled": true
+ },
+ "util-deprecate": {
+ "version": "1.0.2",
+ "bundled": true
+ },
+ "wrappy": {
+ "version": "1.0.2",
+ "bundled": true
+ },
+ "xmlbuilder": {
+ "version": "4.0.0",
+ "bundled": true,
+ "requires": {
+ "lodash": "3.10.1"
+ }
+ },
+ "xmldom": {
+ "version": "0.1.27",
+ "bundled": true
+ }
+ }
+ },
+ "cordova-ios": {
+ "version": "4.5.4",
+ "resolved": "https://registry.npmjs.org/cordova-ios/-/cordova-ios-4.5.4.tgz",
+ "integrity": "sha1-yAZIBYlyloVw3BXalzFP+S0H3+c=",
+ "requires": {
+ "cordova-common": "2.1.0",
+ "ios-sim": "6.1.2",
+ "nopt": "3.0.6",
+ "plist": "1.2.0",
+ "q": "1.5.1",
+ "shelljs": "0.5.3",
+ "xcode": "0.9.3",
+ "xml-escape": "1.1.0"
+ },
+ "dependencies": {
+ "abbrev": {
+ "version": "1.1.1",
+ "bundled": true
+ },
+ "ansi": {
+ "version": "0.3.1",
+ "bundled": true
+ },
+ "balanced-match": {
+ "version": "1.0.0",
+ "bundled": true
+ },
+ "base64-js": {
+ "version": "0.0.8",
+ "bundled": true
+ },
+ "big-integer": {
+ "version": "1.6.25",
+ "bundled": true
+ },
+ "bplist-creator": {
+ "version": "0.0.7",
+ "bundled": true,
+ "requires": {
+ "stream-buffers": "2.2.0"
+ }
+ },
+ "bplist-parser": {
+ "version": "0.1.1",
+ "bundled": true,
+ "requires": {
+ "big-integer": "1.6.25"
+ }
+ },
+ "brace-expansion": {
+ "version": "1.1.8",
+ "bundled": true,
+ "requires": {
+ "balanced-match": "1.0.0",
+ "concat-map": "0.0.1"
+ }
+ },
+ "concat-map": {
+ "version": "0.0.1",
+ "bundled": true
+ },
+ "cordova-common": {
+ "version": "2.1.0",
+ "bundled": true,
+ "requires": {
+ "ansi": "0.3.1",
+ "bplist-parser": "0.1.1",
+ "cordova-registry-mapper": "1.1.15",
+ "elementtree": "0.1.6",
+ "glob": "5.0.15",
+ "minimatch": "3.0.4",
+ "osenv": "0.1.4",
+ "plist": "1.2.0",
+ "q": "1.5.1",
+ "semver": "5.4.1",
+ "shelljs": "0.5.3",
+ "underscore": "1.8.3",
+ "unorm": "1.4.1"
+ }
+ },
+ "cordova-registry-mapper": {
+ "version": "1.1.15",
+ "bundled": true
+ },
+ "elementtree": {
+ "version": "0.1.6",
+ "bundled": true,
+ "requires": {
+ "sax": "0.3.5"
+ }
+ },
+ "glob": {
+ "version": "5.0.15",
+ "bundled": true,
+ "requires": {
+ "inflight": "1.0.6",
+ "inherits": "2.0.3",
+ "minimatch": "3.0.4",
+ "once": "1.4.0",
+ "path-is-absolute": "1.0.1"
+ }
+ },
+ "inflight": {
+ "version": "1.0.6",
+ "bundled": true,
+ "requires": {
+ "once": "1.4.0",
+ "wrappy": "1.0.2"
+ }
+ },
+ "inherits": {
+ "version": "2.0.3",
+ "bundled": true
+ },
+ "ios-sim": {
+ "version": "6.1.2",
+ "bundled": true,
+ "requires": {
+ "bplist-parser": "0.0.6",
+ "nopt": "1.0.9",
+ "plist": "1.2.0",
+ "simctl": "1.1.1"
+ },
+ "dependencies": {
+ "bplist-parser": {
+ "version": "0.0.6",
+ "bundled": true
+ },
+ "nopt": {
+ "version": "1.0.9",
+ "bundled": true,
+ "requires": {
+ "abbrev": "1.1.1"
+ }
+ }
+ }
+ },
+ "lodash": {
+ "version": "3.10.1",
+ "bundled": true
+ },
+ "minimatch": {
+ "version": "3.0.4",
+ "bundled": true,
+ "requires": {
+ "brace-expansion": "1.1.8"
+ }
+ },
+ "nopt": {
+ "version": "3.0.6",
+ "bundled": true,
+ "requires": {
+ "abbrev": "1.1.1"
+ }
+ },
+ "once": {
+ "version": "1.4.0",
+ "bundled": true,
+ "requires": {
+ "wrappy": "1.0.2"
+ }
+ },
+ "os-homedir": {
+ "version": "1.0.2",
+ "bundled": true
+ },
+ "os-tmpdir": {
+ "version": "1.0.2",
+ "bundled": true
+ },
+ "osenv": {
+ "version": "0.1.4",
+ "bundled": true,
+ "requires": {
+ "os-homedir": "1.0.2",
+ "os-tmpdir": "1.0.2"
+ }
+ },
+ "path-is-absolute": {
+ "version": "1.0.1",
+ "bundled": true
+ },
+ "pegjs": {
+ "version": "0.10.0",
+ "bundled": true
+ },
+ "plist": {
+ "version": "1.2.0",
+ "bundled": true,
+ "requires": {
+ "base64-js": "0.0.8",
+ "util-deprecate": "1.0.2",
+ "xmlbuilder": "4.0.0",
+ "xmldom": "0.1.27"
+ }
+ },
+ "q": {
+ "version": "1.5.1",
+ "bundled": true
+ },
+ "sax": {
+ "version": "0.3.5",
+ "bundled": true
+ },
+ "semver": {
+ "version": "5.4.1",
+ "bundled": true
+ },
+ "shelljs": {
+ "version": "0.5.3",
+ "bundled": true
+ },
+ "simctl": {
+ "version": "1.1.1",
+ "bundled": true,
+ "requires": {
+ "shelljs": "0.2.6",
+ "tail": "0.4.0"
+ },
+ "dependencies": {
+ "shelljs": {
+ "version": "0.2.6",
+ "bundled": true
+ }
+ }
+ },
+ "simple-plist": {
+ "version": "0.2.1",
+ "bundled": true,
+ "requires": {
+ "bplist-creator": "0.0.7",
+ "bplist-parser": "0.1.1",
+ "plist": "2.0.1"
+ },
+ "dependencies": {
+ "base64-js": {
+ "version": "1.1.2",
+ "bundled": true
+ },
+ "plist": {
+ "version": "2.0.1",
+ "bundled": true,
+ "requires": {
+ "base64-js": "1.1.2",
+ "xmlbuilder": "8.2.2",
+ "xmldom": "0.1.27"
+ }
+ },
+ "xmlbuilder": {
+ "version": "8.2.2",
+ "bundled": true
+ }
+ }
+ },
+ "stream-buffers": {
+ "version": "2.2.0",
+ "bundled": true
+ },
+ "tail": {
+ "version": "0.4.0",
+ "bundled": true
+ },
+ "underscore": {
+ "version": "1.8.3",
+ "bundled": true
+ },
+ "unorm": {
+ "version": "1.4.1",
+ "bundled": true
+ },
+ "util-deprecate": {
+ "version": "1.0.2",
+ "bundled": true
+ },
+ "uuid": {
+ "version": "3.0.1",
+ "bundled": true
+ },
+ "wrappy": {
+ "version": "1.0.2",
+ "bundled": true
+ },
+ "xcode": {
+ "version": "0.9.3",
+ "bundled": true,
+ "requires": {
+ "pegjs": "0.10.0",
+ "simple-plist": "0.2.1",
+ "uuid": "3.0.1"
+ }
+ },
+ "xml-escape": {
+ "version": "1.1.0",
+ "bundled": true
+ },
+ "xmlbuilder": {
+ "version": "4.0.0",
+ "bundled": true,
+ "requires": {
+ "lodash": "3.10.1"
+ }
+ },
+ "xmldom": {
+ "version": "0.1.27",
+ "bundled": true
+ }
+ }
+ },
+ "cordova-plugin-camera": {
+ "version": "2.4.1",
+ "resolved": "https://registry.npmjs.org/cordova-plugin-camera/-/cordova-plugin-camera-2.4.1.tgz",
+ "integrity": "sha1-GV404S22TxxJ52T31OPyYao9lME="
+ },
+ "cordova-plugin-compat": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/cordova-plugin-compat/-/cordova-plugin-compat-1.1.0.tgz",
+ "integrity": "sha1-kr3xaf62EgUyPcyWo/+DSON+h/w="
+ },
+ "cordova-plugin-device": {
+ "version": "1.1.7",
+ "resolved": "https://registry.npmjs.org/cordova-plugin-device/-/cordova-plugin-device-1.1.7.tgz",
+ "integrity": "sha1-/JQRG+aTJijGaGiTjd89yCyfv+Y="
+ },
+ "cordova-plugin-dialogs": {
+ "version": "1.3.4",
+ "resolved": "https://registry.npmjs.org/cordova-plugin-dialogs/-/cordova-plugin-dialogs-1.3.4.tgz",
+ "integrity": "sha1-XMlm7nyZsvW1s934SQAmKLDacVc="
+ },
+ "cordova-plugin-file": {
+ "version": "4.3.3",
+ "resolved": "https://registry.npmjs.org/cordova-plugin-file/-/cordova-plugin-file-4.3.3.tgz",
+ "integrity": "sha1-AS6Xqhr7kfhJFuY0G1SDZtI96bk="
+ },
+ "cordova-plugin-file-transfer": {
+ "version": "1.7.1",
+ "resolved": "https://registry.npmjs.org/cordova-plugin-file-transfer/-/cordova-plugin-file-transfer-1.7.1.tgz",
+ "integrity": "sha1-p12L4uvDu5sjxbG70ZkhTsJnWGs="
+ },
+ "cordova-plugin-geolocation": {
+ "version": "2.4.3",
+ "resolved": "https://registry.npmjs.org/cordova-plugin-geolocation/-/cordova-plugin-geolocation-2.4.3.tgz",
+ "integrity": "sha1-HdAAI9Hxos4zD4dn7Qj3tzj+cYQ="
+ },
+ "cordova-plugin-inappbrowser": {
+ "version": "1.7.2",
+ "resolved": "https://registry.npmjs.org/cordova-plugin-inappbrowser/-/cordova-plugin-inappbrowser-1.7.2.tgz",
+ "integrity": "sha1-ZHY0lb6H6y562xoI8CCblupc7uA="
+ },
+ "cordova-plugin-media": {
+ "version": "2.4.1",
+ "resolved": "https://registry.npmjs.org/cordova-plugin-media/-/cordova-plugin-media-2.4.1.tgz",
+ "integrity": "sha1-kEcG76alns95awXBar4o/Jic1Wk="
+ },
+ "cordova-plugin-media-capture": {
+ "version": "1.4.3",
+ "resolved": "https://registry.npmjs.org/cordova-plugin-media-capture/-/cordova-plugin-media-capture-1.4.3.tgz",
+ "integrity": "sha1-IOO74zT7uJ9iSwIYjqxTcnQ5IPo="
+ },
+ "cordova-plugin-network-information": {
+ "version": "1.3.4",
+ "resolved": "https://registry.npmjs.org/cordova-plugin-network-information/-/cordova-plugin-network-information-1.3.4.tgz",
+ "integrity": "sha1-KPQmzCZZF03GIqBxgPm6DYVfc4M="
+ },
+ "cordova-plugin-splashscreen": {
+ "version": "3.2.2",
+ "resolved": "https://registry.npmjs.org/cordova-plugin-splashscreen/-/cordova-plugin-splashscreen-3.2.2.tgz",
+ "integrity": "sha1-1WOL+wi9vJqz59owwhdL5kzwJ7A="
+ },
+ "cordova-plugin-statusbar": {
+ "version": "2.4.1",
+ "resolved": "https://registry.npmjs.org/cordova-plugin-statusbar/-/cordova-plugin-statusbar-2.4.1.tgz",
+ "integrity": "sha1-IiYop4qlTTTUySeZACDQo7rOVUU="
+ },
+ "cordova-plugin-whitelist": {
+ "version": "1.3.3",
+ "resolved": "https://registry.npmjs.org/cordova-plugin-whitelist/-/cordova-plugin-whitelist-1.3.3.tgz",
+ "integrity": "sha1-tehezbv+Wu3tQKG/TuI3LmfZb7Q="
+ },
+ "ionic-plugin-keyboard": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/ionic-plugin-keyboard/-/ionic-plugin-keyboard-2.1.0.tgz",
+ "integrity": "sha1-EOVAuYg9XHhuZXv/gXIDGmMtC2Q="
+ }
+ }
+}
diff --git a/package.json-example b/package.json-example
new file mode 100644
index 0000000..6f5653e
--- /dev/null
+++ b/package.json-example
@@ -0,0 +1,57 @@
+{
+ "name": "org.mysociety.FixMyStreet",
+ "version": "2.0.7",
+ "displayName": "FixMyStreet",
+ "cordova": {
+ "platforms": [
+ "android",
+ "ios"
+ ],
+ "plugins": {
+ "cordova-plugin-camera": {
+ "CAMERA_USAGE_DESCRIPTION": "To take photos of problems",
+ "PHOTOLIBRARY_USAGE_DESCRIPTION": "To attach existing photos to reports"
+ },
+ "cordova-plugin-file": {},
+ "cordova-plugin-geolocation": {
+ "GEOLOCATION_USAGE_DESCRIPTION": "To create accurately positioned reports"
+ },
+ "cordova-plugin-media": {
+ "MICROPHONE_USAGE_DESCRIPTION": " "
+ },
+ "cordova-plugin-media-capture": {
+ "CAMERA_USAGE_DESCRIPTION": "To take photos of problems",
+ "PHOTOLIBRARY_USAGE_DESCRIPTION": "To attach existing photos to reports",
+ "MICROPHONE_USAGE_DESCRIPTION": " "
+ },
+ "cordova-plugin-splashscreen": {},
+ "ionic-plugin-keyboard": {},
+ "cordova-plugin-whitelist": {},
+ "cordova-plugin-statusbar": {},
+ "cordova-plugin-network-information": {},
+ "cordova-plugin-inappbrowser": {},
+ "cordova-plugin-dialogs": {},
+ "cordova-plugin-device": {},
+ "cordova-plugin-compat": {}
+ }
+ },
+ "dependencies": {
+ "cordova-android": "^6.2.3",
+ "cordova-ios": "^4.5.4",
+ "cordova-plugin-camera": "^2.4.1",
+ "cordova-plugin-compat": "^1.1.0",
+ "cordova-plugin-device": "^1.1.7",
+ "cordova-plugin-dialogs": "^1.3.4",
+ "cordova-plugin-file": "^4.3.3",
+ "cordova-plugin-file-transfer": "^1.7.1",
+ "cordova-plugin-geolocation": "^2.4.3",
+ "cordova-plugin-inappbrowser": "^1.7.2",
+ "cordova-plugin-media": "^2.4.1",
+ "cordova-plugin-media-capture": "^1.4.3",
+ "cordova-plugin-network-information": "^1.3.4",
+ "cordova-plugin-splashscreen": "^3.2.2",
+ "cordova-plugin-statusbar": "^2.4.1",
+ "cordova-plugin-whitelist": "^1.3.3",
+ "ionic-plugin-keyboard": "^2.1.0"
+ }
+} \ No newline at end of file