diff --git a/config.xml b/config.xml index ad367a677..528d663ee 100644 --- a/config.xml +++ b/config.xml @@ -48,6 +48,7 @@ + diff --git a/package-lock.json b/package-lock.json index 16767d151..68b99fc85 100644 --- a/package-lock.json +++ b/package-lock.json @@ -46,9 +46,9 @@ "@moodlehq/cordova-plugin-file-transfer": "1.7.1-moodle.2", "@moodlehq/cordova-plugin-inappbrowser": "5.0.0-moodle.2", "@moodlehq/cordova-plugin-ionic-webview": "5.0.0-moodle.1", - "@moodlehq/cordova-plugin-local-notification": "0.9.0-moodle.2", + "@moodlehq/cordova-plugin-local-notification": "0.9.0-moodle.3", "@moodlehq/cordova-plugin-qrscanner": "3.0.1-moodle.2", - "@moodlehq/phonegap-plugin-push": "2.2.3-moodle.1", + "@moodlehq/phonegap-plugin-push": "2.0.0-moodle.2", "@ngx-translate/core": "^13.0.0", "@ngx-translate/http-loader": "^6.0.0", "@types/chart.js": "^2.9.31", @@ -93,7 +93,6 @@ "mathjax": "2.7.7", "moment": "^2.29.0", "nl.kingsquare.cordova.background-audio": "^1.0.1", - "phonegap-plugin-multidex": "^1.0.0", "rxjs": "~6.5.5", "ts-md5": "^1.2.7", "tslib": "^2.0.1", @@ -119,6 +118,7 @@ "@typescript-eslint/eslint-plugin": "^4.22.0", "@typescript-eslint/parser": "^4.22.0", "check-es-compat": "^1.1.1", + "cordova-plugin-androidx-adapter": "^1.1.3", "eslint": "^7.25.0", "eslint-config-prettier": "^8.3.0", "eslint-plugin-header": "^3.1.1", @@ -4989,9 +4989,9 @@ } }, "node_modules/@moodlehq/cordova-plugin-local-notification": { - "version": "0.9.0-moodle.2", - "resolved": "https://registry.npmjs.org/@moodlehq/cordova-plugin-local-notification/-/cordova-plugin-local-notification-0.9.0-moodle.2.tgz", - "integrity": "sha512-enK/jcbXrnSFJt8TS2drb/5uUOpsTYbUqjI3pYgvogKdP5k5JOnT0xtW54Arlpl5RphcINx733OuXHRJAED2Ow==", + "version": "0.9.0-moodle.3", + "resolved": "https://registry.npmjs.org/@moodlehq/cordova-plugin-local-notification/-/cordova-plugin-local-notification-0.9.0-moodle.3.tgz", + "integrity": "sha512-dSEvshH9fE3aUG4bO05gCMqWVCnvZGUeddIfB8OShN60sj0CUWuI1e7Mn5syzTcRRNRi8XQ4MTv85zk4c8mzww==", "engines": [ { "name": "cordova", @@ -5025,44 +5025,20 @@ } }, "node_modules/@moodlehq/phonegap-plugin-push": { - "version": "2.2.3-moodle.1", - "resolved": "https://registry.npmjs.org/@moodlehq/phonegap-plugin-push/-/phonegap-plugin-push-2.2.3-moodle.1.tgz", - "integrity": "sha512-LxHz0nPIvxhRgjvj8QRTdhuMtb+NNbFsaAh7JS6q9Ag0lt3LkKrGwCoMr/rTfhfCLj+mrIhyLUv/mo8oPmHeeg==", - "dependencies": { - "babel-plugin-add-header-comment": "^1.0.3", - "install": "^0.8.2" - }, + "version": "2.0.0-moodle.2", + "resolved": "https://registry.npmjs.org/@moodlehq/phonegap-plugin-push/-/phonegap-plugin-push-2.0.0-moodle.2.tgz", + "integrity": "sha512-a1ZR36vOy0Gu0yaX2T+PODlNSQcIUuHMNzPZ/kn4I+cV+hyPwAw1LmdGQDdxfABAGKWCvtzwUyYs1T/NCz2fRQ==", "engines": { "cordovaDependencies": { - "<2.0.0": { - "cordova": ">=6.4.0", - "cordova-android": ">=6.0.0", - "cordova-ios": ">=4.3.0" - }, - "<2.1.2": { - "cordova": ">=7.1.0", - "cordova-android": ">=6.3.0", - "cordova-ios": ">=4.4.0" - }, - "<2.2.0": { - "cordova": ">=7.1.0", - "cordova-android": ">=6.3.0", - "cordova-ios": ">=4.5.0" - }, - "1.8.2": { - "cordova": ">=3.6.3", - "cordova-android": ">=4.0.0", - "cordova-ios": ">=4.1.0" + "1.0.0": { + "cordova": ">=10.0.0", + "cordova-android": ">=8.0.0", + "cordova-ios": ">=5.1.1" }, "2.0.0": { - "cordova": ">=7.0.0", - "cordova-android": ">=6.2.1", - "cordova-ios": ">=4.4.0" - }, - "2.2.0": { - "cordova": ">=7.1.0", - "cordova-android": ">=7.1.0", - "cordova-ios": ">=4.5.0" + "cordova": ">=10.0.0", + "cordova-android": ">=8.0.0", + "cordova-ios": ">=6.0.0" } } } @@ -7579,11 +7555,6 @@ "semver": "bin/semver" } }, - "node_modules/babel-plugin-add-header-comment": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/babel-plugin-add-header-comment/-/babel-plugin-add-header-comment-1.0.3.tgz", - "integrity": "sha1-URxJAQYmQNWkgLSsPt1pRBlYUOw=" - }, "node_modules/babel-plugin-dynamic-import-node": { "version": "2.3.3", "resolved": "https://registry.npmjs.org/babel-plugin-dynamic-import-node/-/babel-plugin-dynamic-import-node-2.3.3.tgz", @@ -10787,6 +10758,16 @@ } ] }, + "node_modules/cordova-plugin-androidx-adapter": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/cordova-plugin-androidx-adapter/-/cordova-plugin-androidx-adapter-1.1.3.tgz", + "integrity": "sha512-W1SImn0cCCvOSTSfWWp5TnanIQrSuh2Bch+dcZXIzEn0km3Qb7VryeAqHhgBQYwwzC5Ollk1DtUAk/AJSojuZA==", + "dev": true, + "dependencies": { + "q": "^1.5.1", + "recursive-readdir": "^2.2.2" + } + }, "node_modules/cordova-plugin-badge": { "version": "0.8.8", "resolved": "https://registry.npmjs.org/cordova-plugin-badge/-/cordova-plugin-badge-0.8.8.tgz", @@ -16809,14 +16790,6 @@ "node": ">=4" } }, - "node_modules/install": { - "version": "0.8.9", - "resolved": "https://registry.npmjs.org/install/-/install-0.8.9.tgz", - "integrity": "sha1-n0tcDRhR74cunfheT3Fi1OXc2+0=", - "engines": { - "node": ">= 0.10" - } - }, "node_modules/internal-ip": { "version": "4.3.0", "resolved": "https://registry.npmjs.org/internal-ip/-/internal-ip-4.3.0.tgz", @@ -22591,12 +22564,6 @@ "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", "integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=" }, - "node_modules/phonegap-plugin-multidex": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/phonegap-plugin-multidex/-/phonegap-plugin-multidex-1.0.0.tgz", - "integrity": "sha512-1wvc3iQOQpEBaQbXgLxA2JUiLSQ2azdF/bF29ghXDiQJWSpQ1BF8gSuqttM8WZoj081Ps8OKL0gYxdDBkFNPqA==", - "deprecated": "This package is deprecated, see https://blog.phonegap.com/update-for-customers-using-phonegap-and-phonegap-build-cc701c77502c" - }, "node_modules/picomatch": { "version": "2.2.2", "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.2.2.tgz", @@ -24440,6 +24407,18 @@ "node": ">= 0.10" } }, + "node_modules/recursive-readdir": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/recursive-readdir/-/recursive-readdir-2.2.2.tgz", + "integrity": "sha512-nRCcW9Sj7NuZwa2XvH9co8NPeXUBhZP7CRKJtU+cS6PW9FpCIFoI5ib0NT1ZrbNuPoRy0ylyCaUL8Gih4LSyFg==", + "dev": true, + "dependencies": { + "minimatch": "3.0.4" + }, + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/reflect-metadata": { "version": "0.1.13", "resolved": "https://registry.npmjs.org/reflect-metadata/-/reflect-metadata-0.1.13.tgz", @@ -34726,9 +34705,9 @@ "integrity": "sha512-+6UrPKsEgXl3pcuTyI1hZIUw9y22Li/nvn7nxiphgZdldlhBvkMK/7nn4IAaXYlnrmIOpCkIrU4BbrAjSJGWSQ==" }, "@moodlehq/cordova-plugin-local-notification": { - "version": "0.9.0-moodle.2", - "resolved": "https://registry.npmjs.org/@moodlehq/cordova-plugin-local-notification/-/cordova-plugin-local-notification-0.9.0-moodle.2.tgz", - "integrity": "sha512-enK/jcbXrnSFJt8TS2drb/5uUOpsTYbUqjI3pYgvogKdP5k5JOnT0xtW54Arlpl5RphcINx733OuXHRJAED2Ow==" + "version": "0.9.0-moodle.3", + "resolved": "https://registry.npmjs.org/@moodlehq/cordova-plugin-local-notification/-/cordova-plugin-local-notification-0.9.0-moodle.3.tgz", + "integrity": "sha512-dSEvshH9fE3aUG4bO05gCMqWVCnvZGUeddIfB8OShN60sj0CUWuI1e7Mn5syzTcRRNRi8XQ4MTv85zk4c8mzww==" }, "@moodlehq/cordova-plugin-qrscanner": { "version": "3.0.1-moodle.2", @@ -34740,13 +34719,9 @@ } }, "@moodlehq/phonegap-plugin-push": { - "version": "2.2.3-moodle.1", - "resolved": "https://registry.npmjs.org/@moodlehq/phonegap-plugin-push/-/phonegap-plugin-push-2.2.3-moodle.1.tgz", - "integrity": "sha512-LxHz0nPIvxhRgjvj8QRTdhuMtb+NNbFsaAh7JS6q9Ag0lt3LkKrGwCoMr/rTfhfCLj+mrIhyLUv/mo8oPmHeeg==", - "requires": { - "babel-plugin-add-header-comment": "^1.0.3", - "install": "^0.8.2" - } + "version": "2.0.0-moodle.2", + "resolved": "https://registry.npmjs.org/@moodlehq/phonegap-plugin-push/-/phonegap-plugin-push-2.0.0-moodle.2.tgz", + "integrity": "sha512-a1ZR36vOy0Gu0yaX2T+PODlNSQcIUuHMNzPZ/kn4I+cV+hyPwAw1LmdGQDdxfABAGKWCvtzwUyYs1T/NCz2fRQ==" }, "@netflix/nerror": { "version": "1.1.3", @@ -36699,11 +36674,6 @@ } } }, - "babel-plugin-add-header-comment": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/babel-plugin-add-header-comment/-/babel-plugin-add-header-comment-1.0.3.tgz", - "integrity": "sha1-URxJAQYmQNWkgLSsPt1pRBlYUOw=" - }, "babel-plugin-dynamic-import-node": { "version": "2.3.3", "resolved": "https://registry.npmjs.org/babel-plugin-dynamic-import-node/-/babel-plugin-dynamic-import-node-2.3.3.tgz", @@ -39285,6 +39255,16 @@ "resolved": "https://registry.npmjs.org/cordova-plugin-advanced-http/-/cordova-plugin-advanced-http-3.1.0.tgz", "integrity": "sha512-zlTlNJyTttE7TV5vW2WGvHqpbKMDVrr1meZU0fy4y3ObrI/hGk2UDcDNwpZdMfaytNZwDKU4sRgsTgQYdFNBew==" }, + "cordova-plugin-androidx-adapter": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/cordova-plugin-androidx-adapter/-/cordova-plugin-androidx-adapter-1.1.3.tgz", + "integrity": "sha512-W1SImn0cCCvOSTSfWWp5TnanIQrSuh2Bch+dcZXIzEn0km3Qb7VryeAqHhgBQYwwzC5Ollk1DtUAk/AJSojuZA==", + "dev": true, + "requires": { + "q": "^1.5.1", + "recursive-readdir": "^2.2.2" + } + }, "cordova-plugin-badge": { "version": "0.8.8", "resolved": "https://registry.npmjs.org/cordova-plugin-badge/-/cordova-plugin-badge-0.8.8.tgz", @@ -44023,11 +44003,6 @@ } } }, - "install": { - "version": "0.8.9", - "resolved": "https://registry.npmjs.org/install/-/install-0.8.9.tgz", - "integrity": "sha1-n0tcDRhR74cunfheT3Fi1OXc2+0=" - }, "internal-ip": { "version": "4.3.0", "resolved": "https://registry.npmjs.org/internal-ip/-/internal-ip-4.3.0.tgz", @@ -48603,11 +48578,6 @@ "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", "integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=" }, - "phonegap-plugin-multidex": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/phonegap-plugin-multidex/-/phonegap-plugin-multidex-1.0.0.tgz", - "integrity": "sha512-1wvc3iQOQpEBaQbXgLxA2JUiLSQ2azdF/bF29ghXDiQJWSpQ1BF8gSuqttM8WZoj081Ps8OKL0gYxdDBkFNPqA==" - }, "picomatch": { "version": "2.2.2", "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.2.2.tgz", @@ -50142,6 +50112,15 @@ "resolve": "^1.1.6" } }, + "recursive-readdir": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/recursive-readdir/-/recursive-readdir-2.2.2.tgz", + "integrity": "sha512-nRCcW9Sj7NuZwa2XvH9co8NPeXUBhZP7CRKJtU+cS6PW9FpCIFoI5ib0NT1ZrbNuPoRy0ylyCaUL8Gih4LSyFg==", + "dev": true, + "requires": { + "minimatch": "3.0.4" + } + }, "reflect-metadata": { "version": "0.1.13", "resolved": "https://registry.npmjs.org/reflect-metadata/-/reflect-metadata-0.1.13.tgz", diff --git a/package.json b/package.json index 1357fd77a..061f50558 100644 --- a/package.json +++ b/package.json @@ -75,9 +75,9 @@ "@moodlehq/cordova-plugin-file-transfer": "1.7.1-moodle.2", "@moodlehq/cordova-plugin-inappbrowser": "5.0.0-moodle.2", "@moodlehq/cordova-plugin-ionic-webview": "5.0.0-moodle.1", - "@moodlehq/cordova-plugin-local-notification": "0.9.0-moodle.2", + "@moodlehq/cordova-plugin-local-notification": "0.9.0-moodle.3", "@moodlehq/cordova-plugin-qrscanner": "3.0.1-moodle.2", - "@moodlehq/phonegap-plugin-push": "2.2.3-moodle.1", + "@moodlehq/phonegap-plugin-push": "2.0.0-moodle.2", "@ngx-translate/core": "^13.0.0", "@ngx-translate/http-loader": "^6.0.0", "@types/chart.js": "^2.9.31", @@ -122,7 +122,6 @@ "mathjax": "2.7.7", "moment": "^2.29.0", "nl.kingsquare.cordova.background-audio": "^1.0.1", - "phonegap-plugin-multidex": "^1.0.0", "rxjs": "~6.5.5", "ts-md5": "^1.2.7", "tslib": "^2.0.1", @@ -148,6 +147,7 @@ "@typescript-eslint/eslint-plugin": "^4.22.0", "@typescript-eslint/parser": "^4.22.0", "check-es-compat": "^1.1.1", + "cordova-plugin-androidx-adapter": "^1.1.3", "eslint": "^7.25.0", "eslint-config-prettier": "^8.3.0", "eslint-plugin-header": "^3.1.1", @@ -223,8 +223,9 @@ "cordova-plugin-zip": {}, "cordova-sqlite-storage": {}, "@moodlehq/phonegap-plugin-push": { - "ANDROID_SUPPORT_V13_VERSION": "27.+", - "FCM_VERSION": "17.0.+" + "ANDROID_SUPPORT_V13_VERSION": "28.0.0", + "FCM_VERSION": "18.+", + "IOS_FIREBASE_MESSAGING_VERSION": "~> 6.32.2" }, "com-darryncampbell-cordova-plugin-intent": {}, "nl.kingsquare.cordova.background-audio": {}, @@ -236,7 +237,8 @@ }, "cordova-plugin-globalization": {}, "@moodlehq/cordova-plugin-file-transfer": {}, - "cordova-plugin-prevent-override": {} + "cordova-plugin-prevent-override": {}, + "cordova-plugin-androidx-adapter": {} } }, "optionalDependencies": { diff --git a/src/core/features/pushnotifications/services/pushnotifications.ts b/src/core/features/pushnotifications/services/pushnotifications.ts index beef5bbbb..6b02caf7e 100644 --- a/src/core/features/pushnotifications/services/pushnotifications.ts +++ b/src/core/features/pushnotifications/services/pushnotifications.ts @@ -454,7 +454,8 @@ export class CorePushNotificationsProvider { ( localNotif).text = [ { message: notification.message, - person: data.conversationtype == '2' ? data.userfromfullname : '', + person: data.sender ?? (data.conversationtype == '2' ? data.userfromfullname : ''), + personIcon: data.senderImage, }, ]; } @@ -866,6 +867,8 @@ export type CorePushNotificationsNotificationBasicRawData = { userfromid?: string; // ID of user sending the push. Only if it's a push generated by a Moodle message. picture?: string; // Notification big picture. "Extra" feature. summaryText?: string; // Notification summary text. "Extra" feature. + sender?: string; // Name of the user who sent the message. "Extra" feature. + senderImage?: string; // Image of the user who sent the message. "Extra" feature. }; /**