{ "name": "moodlemobile", "version": "5.0.0", "description": "The official app for Moodle.", "author": { "name": "Moodle Pty Ltd.", "email": "mobile@moodle.com" }, "repository": { "type": "git", "url": "https://github.com/moodlehq/moodleapp.git" }, "license": "Apache-2.0", "licenses": [ { "type": "Apache-2.0", "url": "http://www.apache.org/licenses/LICENSE-2.0" } ], "scripts": { "ng": "ng", "start": "ionic serve --browser=$MOODLE_APP_BROWSER --ssl", "serve:test": "NODE_ENV=testing ionic serve --no-open", "build": "NODE_OPTIONS=--max-old-space-size=8192 ionic build --configuration=development", "build:prod": "NODE_ENV=production ionic build --prod", "build:test": "NODE_ENV=testing ionic build --configuration=testing", "dev:android": "concurrently \"npm run dev:android:app\" \"npm run dev:android:cordova\"", "dev:android:app": "ionic cordova run android --livereload --external --ssl", "dev:android:cordova": "npm run dev --prefix cordova-plugin-moodleapp", "dev:ios": "ionic cordova run ios", "prod:android": "npm run prod --prefix cordova-plugin-moodleapp && NODE_ENV=production ionic cordova run android --prod", "prod:ios": "NODE_ENV=production ionic cordova run ios --prod", "test": "NODE_ENV=testing gulp && jest --verbose", "test:ci": "NODE_ENV=testing gulp && jest -ci --runInBand --verbose", "test:watch": "NODE_ENV=testing gulp watch & jest --watch", "test:coverage": "NODE_ENV=testing gulp && jest --coverage", "lint": "NODE_OPTIONS=--max-old-space-size=8192 ng lint", "ionic:serve:before": "gulp", "ionic:serve": "cross-env-shell ./scripts/serve.sh", "ionic:build:before": "gulp", "postinstall": "patch-package && cd cordova-plugin-moodleapp && npm install", "lang:update-langpacks": "./scripts/update_langpacks.sh", "lang:detect-langpacks": "./scripts/update_langpacks.sh detect", "lang:create-langindex": "./scripts/create_langindex.sh" }, "dependencies": { "@angular/animations": "^17.3.12", "@angular/common": "^17.3.12", "@angular/compiler": "^17.3.12", "@angular/core": "^17.3.12", "@angular/forms": "^17.3.12", "@angular/platform-browser": "^17.3.12", "@angular/platform-browser-dynamic": "^17.3.12", "@angular/router": "^17.3.12", "@awesome-cordova-plugins/badge": "^6.9.0", "@awesome-cordova-plugins/camera": "^6.9.0", "@awesome-cordova-plugins/clipboard": "^6.9.0", "@awesome-cordova-plugins/core": "^6.9.0", "@awesome-cordova-plugins/device": "^6.9.0", "@awesome-cordova-plugins/file": "^6.9.0", "@awesome-cordova-plugins/file-opener": "^6.9.0", "@awesome-cordova-plugins/geolocation": "^6.9.0", "@awesome-cordova-plugins/http": "^6.9.0", "@awesome-cordova-plugins/in-app-browser": "^6.9.0", "@awesome-cordova-plugins/ionic-webview": "^6.9.0", "@awesome-cordova-plugins/keyboard": "^6.9.0", "@awesome-cordova-plugins/local-notifications": "^6.9.0", "@awesome-cordova-plugins/media-capture": "^6.9.0", "@awesome-cordova-plugins/network": "^6.9.0", "@awesome-cordova-plugins/push": "^6.9.0", "@awesome-cordova-plugins/splash-screen": "^6.9.0", "@awesome-cordova-plugins/sqlite": "^6.9.0", "@awesome-cordova-plugins/status-bar": "^6.9.0", "@awesome-cordova-plugins/web-intent": "^6.9.0", "@ionic/angular": "^8.4.1", "@ionic/cordova-builders": "^11.0.0", "@moodlehq/cordova-plugin-advanced-http": "3.3.1-moodle.1", "@moodlehq/cordova-plugin-camera": "7.0.0-moodle.1", "@moodlehq/cordova-plugin-file-opener": "4.0.0-moodle.1", "@moodlehq/cordova-plugin-file-transfer": "2.0.0-moodle.2", "@moodlehq/cordova-plugin-inappbrowser": "6.0.0-moodle.1", "@moodlehq/cordova-plugin-intent": "2.2.0-moodle.3", "@moodlehq/cordova-plugin-ionic-webview": "5.0.0-moodle.5", "@moodlehq/cordova-plugin-media-capture": "5.0.0-moodle.1", "@moodlehq/cordova-plugin-qrscanner": "3.0.1-moodle.5", "@moodlehq/cordova-plugin-statusbar": "4.0.0-moodle.3", "@moodlehq/cordova-plugin-zip": "3.1.0-moodle.1", "@moodlehq/phonegap-plugin-push": "4.0.0-moodle.10", "@ngx-translate/core": "^15.0.0", "@ngx-translate/http-loader": "^8.0.0", "@sqlite.org/sqlite-wasm": "^3.45.0-build1", "@types/chart.js": "^2.9.41", "@types/cordova": "0.0.34", "@types/dom-mediacapture-record": "1.0.7", "chart.js": "^2.9.4", "cordova": "^12.0.0", "cordova-android": "13.0.0", "cordova-clipboard": "^1.3.0", "cordova-ios": "^7.1.1", "cordova-plugin-add-swift-support": "^2.0.2", "cordova-plugin-androidx-adapter": "^1.1.3", "cordova-plugin-badge": "^0.8.9", "cordova-plugin-chooser": "^1.3.2", "cordova-plugin-customurlscheme": "^5.0.2", "cordova-plugin-device": "^2.1.0", "cordova-plugin-file": "^8.1.0", "cordova-plugin-geolocation": "^5.0.0", "cordova-plugin-ionic-keyboard": "^2.2.0", "cordova-plugin-local-notification": "1.0.0", "cordova-plugin-network-information": "^3.0.0", "cordova-plugin-prevent-override": "^1.0.1", "cordova-plugin-screen-orientation": "^3.0.4", "cordova-plugin-wkuserscript": "^1.0.1", "cordova-plugin-wkwebview-cookies": "^1.0.1", "cordova-sqlite-storage": "^6.1.0", "core-js": "^3.38.1", "es6-promise-plugin": "^4.2.2", "ionicons": "^7.4.0", "jszip": "^3.10.1", "mathjax": "2.7.9", "moment": "^2.30.1", "moment-timezone": "^0.5.45", "mp3-mediarecorder": "4.0.5", "nl.kingsquare.cordova.background-audio": "^1.0.1", "ogv": "^1.9.0", "rxjs": "~7.8.1", "swiper": "^11.1.14", "ts-md5": "^1.3.1", "tslib": "^2.7.0", "video.js": "^7.21.6", "zone.js": "~0.14.10" }, "devDependencies": { "@angular-builders/custom-webpack": "^17.0.2", "@angular-devkit/build-angular": "^17.3.10", "@angular-eslint/builder": "^17.5.3", "@angular-eslint/eslint-plugin": "^17.5.3", "@angular-eslint/eslint-plugin-template": "^17.5.3", "@angular-eslint/schematics": "^17.5.3", "@angular-eslint/template-parser": "^17.5.3", "@angular/cli": "^17.3.10", "@angular/compiler-cli": "^17.3.12", "@angular/language-service": "^17.3.12", "@ionic/angular-toolkit": "^11.0.1", "@ionic/cli": "^7.2.0", "@jsdevtools/coverage-istanbul-loader": "^3.0.5", "@types/faker": "^5.5.9", "@types/jest": "^26.0.24", "@types/node": "^18.19.53", "@types/resize-observer-browser": "^0.1.11", "@types/webpack-env": "^1.18.5", "@typescript-eslint/eslint-plugin": "^6.21.0", "@typescript-eslint/parser": "^6.21.0", "check-es-compat": "^3.2.1", "circular-dependency-plugin": "^5.2.2", "concurrently": "^8.2.2", "cordova-plugin-moodleapp": "file:cordova-plugin-moodleapp", "cross-env": "^7.0.3", "eslint": "^8.57.1", "eslint-plugin-deprecation": "^2.0.0", "eslint-plugin-header": "^3.1.1", "eslint-plugin-jest": "^27.9.0", "eslint-plugin-jsdoc": "^46.10.1", "eslint-plugin-prefer-arrow": "^1.2.3", "eslint-plugin-promise": "^6.6.0", "faker": "^5.5.3", "fs-extra": "^9.1.0", "gulp": "^5.0.0", "gulp-clip-empty-files": "^0.1.2", "gulp-slash": "^1.1.3", "jest": "^29.7.0", "jest-preset-angular": "^13.1.6", "jsonc-parser": "^2.3.1", "minimatch": "^9.0.5", "native-run": "^2.0.1", "nyc": "^15.1.0", "patch-package": "^6.5.1", "terser-webpack-plugin": "^5.3.10", "ts-jest": "^29.2.5", "ts-node": "^8.10.2", "typescript": "~5.3.3", "vinyl": "^3.0.0" }, "engines": { "node": ">=v20.18 <21" }, "cordova": { "platforms": [ "ios", "android" ], "plugins": { "@moodlehq/cordova-plugin-advanced-http": { "ANDROIDBLACKLISTSECURESOCKETPROTOCOLS": "SSLv3,TLSv1" }, "@moodlehq/cordova-plugin-camera": { "ANDROIDX_CORE_VERSION": "1.6.+" }, "@moodlehq/cordova-plugin-file-opener": {}, "@moodlehq/cordova-plugin-file-transfer": {}, "@moodlehq/cordova-plugin-inappbrowser": {}, "@moodlehq/cordova-plugin-intent": {}, "@moodlehq/cordova-plugin-ionic-webview": {}, "@moodlehq/cordova-plugin-media-capture": {}, "@moodlehq/cordova-plugin-qrscanner": {}, "@moodlehq/cordova-plugin-statusbar": {}, "@moodlehq/cordova-plugin-zip": {}, "@moodlehq/phonegap-plugin-push": { "ANDROIDX_CORE_VERSION": "1.6.+", "FCM_VERSION": "23.+", "IOS_FIREBASE_MESSAGING_VERSION": "~> 10.23.0" }, "cordova-clipboard": {}, "cordova-plugin-androidx-adapter": {}, "cordova-plugin-badge": {}, "cordova-plugin-chooser": {}, "cordova-plugin-customurlscheme": { "URL_SCHEME": "moodlemobile", "ANDROID_SCHEME": " ", "ANDROID_HOST": " ", "ANDROID_PATHPREFIX": "/" }, "cordova-plugin-device": {}, "cordova-plugin-geolocation": { "GPS_REQUIRED": "false" }, "cordova-plugin-ionic-keyboard": {}, "cordova-plugin-local-notification": { "ANDROID_SUPPORT_V4_VERSION": "26.+" }, "cordova-plugin-moodleapp": {}, "cordova-plugin-network-information": {}, "cordova-plugin-prevent-override": {}, "cordova-plugin-screen-orientation": {}, "cordova-plugin-wkuserscript": {}, "cordova-plugin-wkwebview-cookies": {}, "cordova-sqlite-storage": {}, "nl.kingsquare.cordova.background-audio": {} } } }