From 49d33fb9e4cb4288a8b92591fc1bfb0b3dfbd2c9 Mon Sep 17 00:00:00 2001 From: Dani Palou Date: Tue, 10 Dec 2019 13:29:20 +0100 Subject: [PATCH 1/4] MOBILE-3213 h5p: Fix resize in h5p.org packages --- .../h5p-player/core-h5p-player.html | 2 +- .../h5p/components/h5p-player/h5p-player.ts | 22 +++++++++++++++++-- 2 files changed, 21 insertions(+), 3 deletions(-) diff --git a/src/core/h5p/components/h5p-player/core-h5p-player.html b/src/core/h5p/components/h5p-player/core-h5p-player.html index 3cfd58ccb..e98b6ab63 100644 --- a/src/core/h5p/components/h5p-player/core-h5p-player.html +++ b/src/core/h5p/components/h5p-player/core-h5p-player.html @@ -9,5 +9,5 @@ - + diff --git a/src/core/h5p/components/h5p-player/h5p-player.ts b/src/core/h5p/components/h5p-player/h5p-player.ts index 1166c0136..359be26cc 100644 --- a/src/core/h5p/components/h5p-player/h5p-player.ts +++ b/src/core/h5p/components/h5p-player/h5p-player.ts @@ -106,8 +106,6 @@ export class CoreH5PPlayerComponent implements OnInit, OnChanges, OnDestroy { let promise; - this.addResizerScript(); - if (this.canDownload && this.fileHelper.isStateDownloaded(this.state)) { // Package is downloaded, use the local URL. promise = this.h5pProvider.getContentIndexFileUrl(this.urlParams.url, this.urlParams, this.siteId).catch(() => { @@ -145,6 +143,7 @@ export class CoreH5PPlayerComponent implements OnInit, OnChanges, OnDestroy { }); } }).finally(() => { + this.addResizerScript(); this.loading = false; this.showPackage = true; @@ -211,6 +210,11 @@ export class CoreH5PPlayerComponent implements OnInit, OnChanges, OnDestroy { * Add the resizer script if it hasn't been added already. */ protected addResizerScript(): void { + if (document.head.querySelector('#core-h5p-resizer-script') != null) { + // Script already added, don't add it again. + return; + } + const script = document.createElement('script'); script.id = 'core-h5p-resizer-script'; script.type = 'text/javascript'; @@ -264,6 +268,20 @@ export class CoreH5PPlayerComponent implements OnInit, OnChanges, OnDestroy { }); } + /** + * Send hello to the H5P iframe. + * + * @param iframe The iframe. + */ + sendHello(iframe?: HTMLIFrameElement): void { + const ready = { + context: 'h5p', + action: 'ready' + }; + + iframe.contentWindow.postMessage(ready, '*'); + } + /** * Component destroyed. */ From b427c8a52aa6b52461e8cdc692cf610215009b9a Mon Sep 17 00:00:00 2001 From: Dani Palou Date: Tue, 10 Dec 2019 16:20:06 +0100 Subject: [PATCH 2/4] MOBILE-3213 h5p: Support fullscreen in H5P iframe --- config.xml | 7 ------- src/components/iframe/core-iframe.html | 2 +- src/components/iframe/iframe.ts | 4 ++++ src/core/h5p/components/h5p-player/core-h5p-player.html | 2 +- src/core/h5p/components/h5p-player/h5p-player.scss | 2 +- 5 files changed, 7 insertions(+), 10 deletions(-) diff --git a/config.xml b/config.xml index d7439c757..89d2f5b5e 100644 --- a/config.xml +++ b/config.xml @@ -79,18 +79,11 @@ - - - diff --git a/src/components/iframe/core-iframe.html b/src/components/iframe/core-iframe.html index 7bdeac425..9e5f98ae6 100644 --- a/src/components/iframe/core-iframe.html +++ b/src/components/iframe/core-iframe.html @@ -1,5 +1,5 @@
- + diff --git a/src/components/iframe/iframe.ts b/src/components/iframe/iframe.ts index f6517fde6..516012a8f 100644 --- a/src/components/iframe/iframe.ts +++ b/src/components/iframe/iframe.ts @@ -21,6 +21,7 @@ import { CoreLoggerProvider } from '@providers/logger'; import { CoreDomUtilsProvider } from '@providers/utils/dom'; import { CoreUrlUtilsProvider } from '@providers/utils/url'; import { CoreIframeUtilsProvider } from '@providers/utils/iframe'; +import { CoreUtilsProvider } from '@providers/utils/utils'; import { CoreSplitViewComponent } from '@components/split-view/split-view'; @Component({ @@ -33,6 +34,7 @@ export class CoreIframeComponent implements OnInit, OnChanges { @Input() src: string; @Input() iframeWidth: string; @Input() iframeHeight: string; + @Input() allowFullscreen: boolean | string; @Output() loaded?: EventEmitter = new EventEmitter(); loading: boolean; safeUrl: SafeResourceUrl; @@ -46,6 +48,7 @@ export class CoreIframeComponent implements OnInit, OnChanges { protected sanitizer: DomSanitizer, protected navCtrl: NavController, protected urlUtils: CoreUrlUtilsProvider, + protected utils: CoreUtilsProvider, @Optional() protected svComponent: CoreSplitViewComponent) { this.logger = logger.getInstance('CoreIframe'); @@ -60,6 +63,7 @@ export class CoreIframeComponent implements OnInit, OnChanges { this.iframeWidth = this.domUtils.formatPixelsSize(this.iframeWidth) || '100%'; this.iframeHeight = this.domUtils.formatPixelsSize(this.iframeHeight) || '100%'; + this.allowFullscreen = this.utils.isTrueOrOne(this.allowFullscreen); // Show loading only with external URLs. this.loading = !this.src || !!this.src.match(/^https?:\/\//i); diff --git a/src/core/h5p/components/h5p-player/core-h5p-player.html b/src/core/h5p/components/h5p-player/core-h5p-player.html index e98b6ab63..22981316f 100644 --- a/src/core/h5p/components/h5p-player/core-h5p-player.html +++ b/src/core/h5p/components/h5p-player/core-h5p-player.html @@ -9,5 +9,5 @@
- + diff --git a/src/core/h5p/components/h5p-player/h5p-player.scss b/src/core/h5p/components/h5p-player/h5p-player.scss index 8a4875ac9..e4ccc242d 100644 --- a/src/core/h5p/components/h5p-player/h5p-player.scss +++ b/src/core/h5p/components/h5p-player/h5p-player.scss @@ -10,7 +10,7 @@ ion-app.app-root core-h5p-player { background: url('../assets/img/icons/h5p.svg') center top 25px / 100px auto no-repeat $core-h5p-placeholder-bg-color; color: $core-h5p-placeholder-text-color; - .icon { + .icon:not([color="success"]) { color: $core-h5p-placeholder-text-color; } From 8d30c0be97e6d205bba14764217441ce1234b95d Mon Sep 17 00:00:00 2001 From: Dani Palou Date: Wed, 11 Dec 2019 08:21:20 +0100 Subject: [PATCH 3/4] MOBILE-3213 core: Run script that removes types from JSDoc --- .../block/myoverview/components/myoverview/myoverview.ts | 2 +- src/addon/calendar/pages/list/list.ts | 2 -- src/addon/mod/data/fields/latlong/component/latlong.ts | 2 +- src/addon/mod/forum/providers/forum.ts | 2 +- src/classes/site.ts | 2 +- src/core/course/providers/helper.ts | 2 +- src/core/filter/providers/default-filter.ts | 2 +- src/core/filter/providers/delegate.ts | 2 +- src/core/h5p/classes/content-validator.ts | 4 ++-- src/core/h5p/providers/pluginfile-handler.ts | 2 +- src/providers/app.ts | 2 +- src/providers/plugin-file-delegate.ts | 2 +- src/providers/utils/text.ts | 6 +++--- 13 files changed, 15 insertions(+), 17 deletions(-) diff --git a/src/addon/block/myoverview/components/myoverview/myoverview.ts b/src/addon/block/myoverview/components/myoverview/myoverview.ts index 26c82500a..b6f062542 100644 --- a/src/addon/block/myoverview/components/myoverview/myoverview.ts +++ b/src/addon/block/myoverview/components/myoverview/myoverview.ts @@ -327,7 +327,7 @@ export class AddonBlockMyOverviewComponent extends CoreBlockBaseComponent implem /** * Set selected courses filter. * - * @param {string} filter Filter name to set. + * @param filter Filter name to set. */ protected setCourseFilter(filter: string): void { this.selectedFilter = filter; diff --git a/src/addon/calendar/pages/list/list.ts b/src/addon/calendar/pages/list/list.ts index a9857a2cf..250c9054b 100644 --- a/src/addon/calendar/pages/list/list.ts +++ b/src/addon/calendar/pages/list/list.ts @@ -437,8 +437,6 @@ export class AddonCalendarListPage implements OnDestroy { }); } - /** - */ protected filterEvents(): void { this.filteredEvents = this.calendarHelper.getFilteredEvents(this.events, this.filter, this.categories); } diff --git a/src/addon/mod/data/fields/latlong/component/latlong.ts b/src/addon/mod/data/fields/latlong/component/latlong.ts index 767487e9d..2e154961e 100644 --- a/src/addon/mod/data/fields/latlong/component/latlong.ts +++ b/src/addon/mod/data/fields/latlong/component/latlong.ts @@ -101,7 +101,7 @@ export class AddonModDataFieldLatlongComponent extends AddonModDataFieldPluginCo /** * Get user location. * - * @param {Event} $event The event. + * @param $event The event. */ getLocation(event: Event): void { event.preventDefault(); diff --git a/src/addon/mod/forum/providers/forum.ts b/src/addon/mod/forum/providers/forum.ts index 2b354bfb8..a852c2aec 100644 --- a/src/addon/mod/forum/providers/forum.ts +++ b/src/addon/mod/forum/providers/forum.ts @@ -600,7 +600,7 @@ export class AddonModForumProvider { * @param siteId Site ID. If not defined, current site. * @return Promise resolved with an object with: * - discussions: List of discussions. Note that for every discussion in the list discussion.id is the main post ID but - * discussion ID is discussion.discussion. + * discussion ID is discussion.discussion. * - canLoadMore: True if there may be more discussions to load. */ getDiscussions(forumId: number, sortOrder?: number, page: number = 0, forceCache?: boolean, siteId?: string): Promise { diff --git a/src/classes/site.ts b/src/classes/site.ts index 574f6be44..5d738185b 100644 --- a/src/classes/site.ts +++ b/src/classes/site.ts @@ -1903,7 +1903,7 @@ export class CoreSite { * Get a certain cache expiration delay. * * @param updateFrequency The update frequency of the entry. - * @return {number} Expiration delay. + * @return Expiration delay. */ getExpirationDelay(updateFrequency?: number): number { let expirationDelay = this.UPDATE_FREQUENCIES[updateFrequency] || this.UPDATE_FREQUENCIES[CoreSite.FREQUENCY_USUALLY]; diff --git a/src/core/course/providers/helper.ts b/src/core/course/providers/helper.ts index 0501ba682..ffbc281b5 100644 --- a/src/core/course/providers/helper.ts +++ b/src/core/course/providers/helper.ts @@ -1127,7 +1127,7 @@ export class CoreCourseHelperProvider { * @param courseId Course ID. If not defined we'll try to retrieve it from the site. * @param sectionId Section the module belongs to. If not defined we'll try to retrieve it from the site. * @param useModNameToGetModule If true, the app will retrieve all modules of this type with a single WS call. This reduces the - * number of WS calls, but it isn't recommended for modules that can return a lot of contents. + * number of WS calls, but it isn't recommended for modules that can return a lot of contents. * @param modParams Params to pass to the module * @param navCtrl NavController for adding new pages to the current history. Optional for legacy support, but * generates a warning if omitted. diff --git a/src/core/filter/providers/default-filter.ts b/src/core/filter/providers/default-filter.ts index f5f307500..aec2580e1 100644 --- a/src/core/filter/providers/default-filter.ts +++ b/src/core/filter/providers/default-filter.ts @@ -65,7 +65,7 @@ export class CoreFilterDefaultHandler implements CoreFilterHandler { /** * Whether or not the handler is enabled on a site level. * - * @return {boolean|Promise} Whether or not the handler is enabled on a site level. + * @return Whether or not the handler is enabled on a site level. */ isEnabled(): boolean | Promise { return true; diff --git a/src/core/filter/providers/delegate.ts b/src/core/filter/providers/delegate.ts index 642a454ca..fef46c423 100644 --- a/src/core/filter/providers/delegate.ts +++ b/src/core/filter/providers/delegate.ts @@ -236,7 +236,7 @@ export class CoreFilterDelegate extends CoreDelegate { * @param filter Filter to check. * @param options Options passed to the filters. * @param site Site. If not defined, current site. - * @return {Promise} Promise resolved with true: whether the filter should be applied. + * @return Promise resolved with true: whether the filter should be applied. */ shouldBeApplied(filters: CoreFilterFilter[], options: CoreFilterFormatTextOptions, site?: CoreSite): Promise { // Wait for filters to be initialized. diff --git a/src/core/h5p/classes/content-validator.ts b/src/core/h5p/classes/content-validator.ts index 18ae59dc3..3d4baac9f 100644 --- a/src/core/h5p/classes/content-validator.ts +++ b/src/core/h5p/classes/content-validator.ts @@ -681,8 +681,8 @@ export class CoreH5PContentValidator { * Processes an HTML tag. * * @param m An array with various meaning depending on the value of store. - * If store is TRUE then the array contains the allowed tags. - * If store is FALSE then the array has one element, the HTML tag to process. + * If store is TRUE then the array contains the allowed tags. + * If store is FALSE then the array has one element, the HTML tag to process. * @param store Whether to store m. * @return string If the element isn't allowed, an empty string. Otherwise, the cleaned up version of the HTML element. */ diff --git a/src/core/h5p/providers/pluginfile-handler.ts b/src/core/h5p/providers/pluginfile-handler.ts index 13657fc2d..3a38e6381 100644 --- a/src/core/h5p/providers/pluginfile-handler.ts +++ b/src/core/h5p/providers/pluginfile-handler.ts @@ -66,7 +66,7 @@ export class CoreH5PPluginFileHandler implements CorePluginFileHandler { * CoreFilepoolProvider.extractDownloadableFilesFromHtml. * * @param container Container where to get the URLs from. - * @return {string[]} List of URLs. + * @return List of URLs. */ getDownloadableFilesFromHTML(container: HTMLElement): string[] { const iframes = Array.from(container.querySelectorAll('iframe.h5p-iframe')); diff --git a/src/providers/app.ts b/src/providers/app.ts index 7aa6a6a70..f2071b076 100644 --- a/src/providers/app.ts +++ b/src/providers/app.ts @@ -164,7 +164,7 @@ export class CoreAppProvider { /** * Returns whether the user agent is controlled by automation. I.e. Behat testing. * - * @return {boolean} True if the user agent is controlled by automation, false otherwise. + * @return True if the user agent is controlled by automation, false otherwise. */ static isAutomated(): boolean { return !!navigator.webdriver; diff --git a/src/providers/plugin-file-delegate.ts b/src/providers/plugin-file-delegate.ts index 17354d4b5..469518698 100644 --- a/src/providers/plugin-file-delegate.ts +++ b/src/providers/plugin-file-delegate.ts @@ -71,7 +71,7 @@ export interface CorePluginFileHandler extends CoreDelegateHandler { * CoreFilepoolProvider.extractDownloadableFilesFromHtml. * * @param container Container where to get the URLs from. - * @return {string[]} List of URLs. + * @return List of URLs. */ getDownloadableFilesFromHTML?(container: HTMLElement): string[]; diff --git a/src/providers/utils/text.ts b/src/providers/utils/text.ts index 0a858127e..d4826c942 100644 --- a/src/providers/utils/text.ts +++ b/src/providers/utils/text.ts @@ -78,8 +78,8 @@ export class CoreTextUtilsProvider { /** * Add ending slash from a path or URL. * - * @param {string} text Text to treat. - * @return {string} Treated text. + * @param text Text to treat. + * @return Treated text. */ addEndingSlash(text: string): string { if (!text) { @@ -742,7 +742,7 @@ export class CoreTextUtilsProvider { * @param replace The value to put inside the string. * @param start The index where to start putting the new string. If negative, it will count from the end of the string. * @param length Length of the portion of string which is to be replaced. If negative, it represents the number of characters - * from the end of string at which to stop replacing. If not provided, replace until the end of the string. + * from the end of string at which to stop replacing. If not provided, replace until the end of the string. * @return Treated string. */ substrReplace(str: string, replace: string, start: number, length?: number): string { From f675a790ea6b958df223869a6a7f343515a03cd6 Mon Sep 17 00:00:00 2001 From: Dani Palou Date: Wed, 11 Dec 2019 08:52:38 +0100 Subject: [PATCH 4/4] MOBILE-3213 core: Lock plugin and libraries versions --- config.xml | 44 ++++++------ package-lock.json | 176 +++++++++++++-------------------------------- package.json | 178 +++++++++++++++++++++++----------------------- 3 files changed, 161 insertions(+), 237 deletions(-) diff --git a/config.xml b/config.xml index 89d2f5b5e..5c29845ee 100644 --- a/config.xml +++ b/config.xml @@ -141,36 +141,36 @@
- - + + - - - - + + + + - - + + - - + + - - - + + + - - - - - - - - - + + + + + + + + + diff --git a/package-lock.json b/package-lock.json index 2b45e89dd..3c9f1767d 100644 --- a/package-lock.json +++ b/package-lock.json @@ -503,8 +503,7 @@ "ansi-regex": { "version": "2.1.1", "bundled": true, - "dev": true, - "optional": true + "dev": true }, "aproba": { "version": "1.2.0", @@ -525,14 +524,12 @@ "balanced-match": { "version": "1.0.0", "bundled": true, - "dev": true, - "optional": true + "dev": true }, "brace-expansion": { "version": "1.1.11", "bundled": true, "dev": true, - "optional": true, "requires": { "balanced-match": "^1.0.0", "concat-map": "0.0.1" @@ -547,20 +544,17 @@ "code-point-at": { "version": "1.1.0", "bundled": true, - "dev": true, - "optional": true + "dev": true }, "concat-map": { "version": "0.0.1", "bundled": true, - "dev": true, - "optional": true + "dev": true }, "console-control-strings": { "version": "1.1.0", "bundled": true, - "dev": true, - "optional": true + "dev": true }, "core-util-is": { "version": "1.0.2", @@ -677,8 +671,7 @@ "inherits": { "version": "2.0.3", "bundled": true, - "dev": true, - "optional": true + "dev": true }, "ini": { "version": "1.3.5", @@ -690,7 +683,6 @@ "version": "1.0.0", "bundled": true, "dev": true, - "optional": true, "requires": { "number-is-nan": "^1.0.0" } @@ -705,7 +697,6 @@ "version": "3.0.4", "bundled": true, "dev": true, - "optional": true, "requires": { "brace-expansion": "^1.1.7" } @@ -713,14 +704,12 @@ "minimist": { "version": "0.0.8", "bundled": true, - "dev": true, - "optional": true + "dev": true }, "minipass": { "version": "2.3.5", "bundled": true, "dev": true, - "optional": true, "requires": { "safe-buffer": "^5.1.2", "yallist": "^3.0.0" @@ -739,7 +728,6 @@ "version": "0.5.1", "bundled": true, "dev": true, - "optional": true, "requires": { "minimist": "0.0.8" } @@ -820,8 +808,7 @@ "number-is-nan": { "version": "1.0.1", "bundled": true, - "dev": true, - "optional": true + "dev": true }, "object-assign": { "version": "4.1.1", @@ -833,7 +820,6 @@ "version": "1.4.0", "bundled": true, "dev": true, - "optional": true, "requires": { "wrappy": "1" } @@ -919,8 +905,7 @@ "safe-buffer": { "version": "5.1.2", "bundled": true, - "dev": true, - "optional": true + "dev": true }, "safer-buffer": { "version": "2.1.2", @@ -956,7 +941,6 @@ "version": "1.0.2", "bundled": true, "dev": true, - "optional": true, "requires": { "code-point-at": "^1.0.0", "is-fullwidth-code-point": "^1.0.0", @@ -976,7 +960,6 @@ "version": "3.0.1", "bundled": true, "dev": true, - "optional": true, "requires": { "ansi-regex": "^2.0.0" } @@ -1020,14 +1003,12 @@ "wrappy": { "version": "1.0.2", "bundled": true, - "dev": true, - "optional": true + "dev": true }, "yallist": { "version": "3.0.3", "bundled": true, - "dev": true, - "optional": true + "dev": true } } }, @@ -2650,9 +2631,9 @@ "dev": true }, "com-darryncampbell-cordova-plugin-intent": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/com-darryncampbell-cordova-plugin-intent/-/com-darryncampbell-cordova-plugin-intent-1.1.7.tgz", - "integrity": "sha512-e+CIaOTpZ7r178tmCijZcm/o5nJIWVnQaUrwm5xwX1zc5zutVCtz1oH3xqq6gzNk05C9i7n96xdenODHMYpiMw==" + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/com-darryncampbell-cordova-plugin-intent/-/com-darryncampbell-cordova-plugin-intent-1.3.0.tgz", + "integrity": "sha512-JXslndd4UiRHmirGZrwrHZHczoZ5sxM7zAylm4bPX7ZDwD4FdCHhILgDA8AeaG8wc11e0A7OEAFo0Esgc0M4yA==" }, "combined-stream": { "version": "1.0.6", @@ -3176,9 +3157,9 @@ "integrity": "sha512-YqrZfYgbGTS20SFID0mrRxud312VH072QVlFonCAkPgtGg1Svy7lELOCNFd+KU7t4mVtZeTEjZPEeefvjaetwQ==" }, "cordova-plugin-ionic-keyboard": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/cordova-plugin-ionic-keyboard/-/cordova-plugin-ionic-keyboard-2.1.3.tgz", - "integrity": "sha512-6ucQ6FdlLdBm8kJfFnzozmBTjru/0xekHP/dAhjoCZggkGRlgs8TsUJFkxa/bV+qi7Dlo50JjmpE4UMWAO+aOQ==" + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/cordova-plugin-ionic-keyboard/-/cordova-plugin-ionic-keyboard-2.2.0.tgz", + "integrity": "sha512-yDUG+9ieKVRitq5mGlNxjaZh/MgEhFFIgTIPhqSbUaQ8UuZbawy5mhJAVClqY97q8/rcQtL6dCDa7x2sEtCLcA==" }, "cordova-plugin-local-notification": { "version": "git+https://github.com/moodlemobile/cordova-plugin-local-notification.git#c7430c4f4f8b8c82d051aea49d87da0b4f6a8b1e", @@ -5243,8 +5224,7 @@ }, "ansi-regex": { "version": "2.1.1", - "bundled": true, - "optional": true + "bundled": true }, "aproba": { "version": "1.2.0", @@ -5262,13 +5242,11 @@ }, "balanced-match": { "version": "1.0.0", - "bundled": true, - "optional": true + "bundled": true }, "brace-expansion": { "version": "1.1.11", "bundled": true, - "optional": true, "requires": { "balanced-match": "^1.0.0", "concat-map": "0.0.1" @@ -5281,18 +5259,15 @@ }, "code-point-at": { "version": "1.1.0", - "bundled": true, - "optional": true + "bundled": true }, "concat-map": { "version": "0.0.1", - "bundled": true, - "optional": true + "bundled": true }, "console-control-strings": { "version": "1.1.0", - "bundled": true, - "optional": true + "bundled": true }, "core-util-is": { "version": "1.0.2", @@ -5395,8 +5370,7 @@ }, "inherits": { "version": "2.0.3", - "bundled": true, - "optional": true + "bundled": true }, "ini": { "version": "1.3.5", @@ -5406,7 +5380,6 @@ "is-fullwidth-code-point": { "version": "1.0.0", "bundled": true, - "optional": true, "requires": { "number-is-nan": "^1.0.0" } @@ -5419,20 +5392,17 @@ "minimatch": { "version": "3.0.4", "bundled": true, - "optional": true, "requires": { "brace-expansion": "^1.1.7" } }, "minimist": { "version": "0.0.8", - "bundled": true, - "optional": true + "bundled": true }, "minipass": { "version": "2.3.5", "bundled": true, - "optional": true, "requires": { "safe-buffer": "^5.1.2", "yallist": "^3.0.0" @@ -5449,7 +5419,6 @@ "mkdirp": { "version": "0.5.1", "bundled": true, - "optional": true, "requires": { "minimist": "0.0.8" } @@ -5528,8 +5497,7 @@ }, "number-is-nan": { "version": "1.0.1", - "bundled": true, - "optional": true + "bundled": true }, "object-assign": { "version": "4.1.1", @@ -5539,7 +5507,6 @@ "once": { "version": "1.4.0", "bundled": true, - "optional": true, "requires": { "wrappy": "1" } @@ -5615,8 +5582,7 @@ }, "safe-buffer": { "version": "5.1.2", - "bundled": true, - "optional": true + "bundled": true }, "safer-buffer": { "version": "2.1.2", @@ -5646,7 +5612,6 @@ "string-width": { "version": "1.0.2", "bundled": true, - "optional": true, "requires": { "code-point-at": "^1.0.0", "is-fullwidth-code-point": "^1.0.0", @@ -5664,7 +5629,6 @@ "strip-ansi": { "version": "3.0.1", "bundled": true, - "optional": true, "requires": { "ansi-regex": "^2.0.0" } @@ -5703,13 +5667,11 @@ }, "wrappy": { "version": "1.0.2", - "bundled": true, - "optional": true + "bundled": true }, "yallist": { "version": "3.0.3", - "bundled": true, - "optional": true + "bundled": true } } }, @@ -6136,8 +6098,7 @@ "ansi-regex": { "version": "2.1.1", "bundled": true, - "dev": true, - "optional": true + "dev": true }, "aproba": { "version": "1.2.0", @@ -6158,14 +6119,12 @@ "balanced-match": { "version": "1.0.0", "bundled": true, - "dev": true, - "optional": true + "dev": true }, "brace-expansion": { "version": "1.1.11", "bundled": true, "dev": true, - "optional": true, "requires": { "balanced-match": "^1.0.0", "concat-map": "0.0.1" @@ -6180,20 +6139,17 @@ "code-point-at": { "version": "1.1.0", "bundled": true, - "dev": true, - "optional": true + "dev": true }, "concat-map": { "version": "0.0.1", "bundled": true, - "dev": true, - "optional": true + "dev": true }, "console-control-strings": { "version": "1.1.0", "bundled": true, - "dev": true, - "optional": true + "dev": true }, "core-util-is": { "version": "1.0.2", @@ -6310,8 +6266,7 @@ "inherits": { "version": "2.0.3", "bundled": true, - "dev": true, - "optional": true + "dev": true }, "ini": { "version": "1.3.5", @@ -6323,7 +6278,6 @@ "version": "1.0.0", "bundled": true, "dev": true, - "optional": true, "requires": { "number-is-nan": "^1.0.0" } @@ -6338,7 +6292,6 @@ "version": "3.0.4", "bundled": true, "dev": true, - "optional": true, "requires": { "brace-expansion": "^1.1.7" } @@ -6346,14 +6299,12 @@ "minimist": { "version": "0.0.8", "bundled": true, - "dev": true, - "optional": true + "dev": true }, "minipass": { "version": "2.3.5", "bundled": true, "dev": true, - "optional": true, "requires": { "safe-buffer": "^5.1.2", "yallist": "^3.0.0" @@ -6372,7 +6323,6 @@ "version": "0.5.1", "bundled": true, "dev": true, - "optional": true, "requires": { "minimist": "0.0.8" } @@ -6453,8 +6403,7 @@ "number-is-nan": { "version": "1.0.1", "bundled": true, - "dev": true, - "optional": true + "dev": true }, "object-assign": { "version": "4.1.1", @@ -6466,7 +6415,6 @@ "version": "1.4.0", "bundled": true, "dev": true, - "optional": true, "requires": { "wrappy": "1" } @@ -6552,8 +6500,7 @@ "safe-buffer": { "version": "5.1.2", "bundled": true, - "dev": true, - "optional": true + "dev": true }, "safer-buffer": { "version": "2.1.2", @@ -6589,7 +6536,6 @@ "version": "1.0.2", "bundled": true, "dev": true, - "optional": true, "requires": { "code-point-at": "^1.0.0", "is-fullwidth-code-point": "^1.0.0", @@ -6609,7 +6555,6 @@ "version": "3.0.1", "bundled": true, "dev": true, - "optional": true, "requires": { "ansi-regex": "^2.0.0" } @@ -6653,14 +6598,12 @@ "wrappy": { "version": "1.0.2", "bundled": true, - "dev": true, - "optional": true + "dev": true }, "yallist": { "version": "3.0.3", "bundled": true, - "dev": true, - "optional": true + "dev": true } } }, @@ -12926,8 +12869,7 @@ "ansi-regex": { "version": "2.1.1", "bundled": true, - "dev": true, - "optional": true + "dev": true }, "aproba": { "version": "1.2.0", @@ -12948,14 +12890,12 @@ "balanced-match": { "version": "1.0.0", "bundled": true, - "dev": true, - "optional": true + "dev": true }, "brace-expansion": { "version": "1.1.11", "bundled": true, "dev": true, - "optional": true, "requires": { "balanced-match": "^1.0.0", "concat-map": "0.0.1" @@ -12970,20 +12910,17 @@ "code-point-at": { "version": "1.1.0", "bundled": true, - "dev": true, - "optional": true + "dev": true }, "concat-map": { "version": "0.0.1", "bundled": true, - "dev": true, - "optional": true + "dev": true }, "console-control-strings": { "version": "1.1.0", "bundled": true, - "dev": true, - "optional": true + "dev": true }, "core-util-is": { "version": "1.0.2", @@ -13100,8 +13037,7 @@ "inherits": { "version": "2.0.3", "bundled": true, - "dev": true, - "optional": true + "dev": true }, "ini": { "version": "1.3.5", @@ -13113,7 +13049,6 @@ "version": "1.0.0", "bundled": true, "dev": true, - "optional": true, "requires": { "number-is-nan": "^1.0.0" } @@ -13128,7 +13063,6 @@ "version": "3.0.4", "bundled": true, "dev": true, - "optional": true, "requires": { "brace-expansion": "^1.1.7" } @@ -13136,14 +13070,12 @@ "minimist": { "version": "0.0.8", "bundled": true, - "dev": true, - "optional": true + "dev": true }, "minipass": { "version": "2.3.5", "bundled": true, "dev": true, - "optional": true, "requires": { "safe-buffer": "^5.1.2", "yallist": "^3.0.0" @@ -13162,7 +13094,6 @@ "version": "0.5.1", "bundled": true, "dev": true, - "optional": true, "requires": { "minimist": "0.0.8" } @@ -13243,8 +13174,7 @@ "number-is-nan": { "version": "1.0.1", "bundled": true, - "dev": true, - "optional": true + "dev": true }, "object-assign": { "version": "4.1.1", @@ -13256,7 +13186,6 @@ "version": "1.4.0", "bundled": true, "dev": true, - "optional": true, "requires": { "wrappy": "1" } @@ -13342,8 +13271,7 @@ "safe-buffer": { "version": "5.1.2", "bundled": true, - "dev": true, - "optional": true + "dev": true }, "safer-buffer": { "version": "2.1.2", @@ -13379,7 +13307,6 @@ "version": "1.0.2", "bundled": true, "dev": true, - "optional": true, "requires": { "code-point-at": "^1.0.0", "is-fullwidth-code-point": "^1.0.0", @@ -13399,7 +13326,6 @@ "version": "3.0.1", "bundled": true, "dev": true, - "optional": true, "requires": { "ansi-regex": "^2.0.0" } @@ -13443,14 +13369,12 @@ "wrappy": { "version": "1.0.2", "bundled": true, - "dev": true, - "optional": true + "dev": true }, "yallist": { "version": "3.0.3", "bundled": true, - "dev": true, - "optional": true + "dev": true } } }, diff --git a/package.json b/package.json index 8544d10eb..3d9213173 100644 --- a/package.json +++ b/package.json @@ -40,106 +40,106 @@ "windows.store": "npx electron-windows-store --input-directory .\\desktop\\dist\\win-unpacked --output-directory .\\desktop\\store -a .\\resources\\desktop -m .\\desktop\\assets\\windows\\AppXManifest.xml --package-version 0.0.0.0 --package-name MoodleDesktop" }, "dependencies": { - "@angular/animations": "^5.2.10", - "@angular/common": "^5.2.10", - "@angular/compiler": "^5.2.10", - "@angular/compiler-cli": "^5.2.10", - "@angular/core": "^5.2.10", - "@angular/forms": "^5.2.10", - "@angular/http": "^5.2.10", - "@angular/platform-browser": "^5.2.10", - "@angular/platform-browser-dynamic": "^5.2.10", - "@ionic-native/badge": "^4.17.0", - "@ionic-native/camera": "^4.17.0", - "@ionic-native/clipboard": "^4.17.0", - "@ionic-native/core": "^4.11.0", - "@ionic-native/device": "^4.17.0", - "@ionic-native/file": "^4.17.0", - "@ionic-native/file-opener": "^4.17.0", - "@ionic-native/file-transfer": "^4.17.0", + "@angular/animations": "5.2.10", + "@angular/common": "5.2.10", + "@angular/compiler": "5.2.10", + "@angular/compiler-cli": "5.2.10", + "@angular/core": "5.2.10", + "@angular/forms": "5.2.10", + "@angular/http": "5.2.10", + "@angular/platform-browser": "5.2.10", + "@angular/platform-browser-dynamic": "5.2.10", + "@ionic-native/badge": "4.17.0", + "@ionic-native/camera": "4.17.0", + "@ionic-native/clipboard": "4.17.0", + "@ionic-native/core": "4.11.0", + "@ionic-native/device": "4.17.0", + "@ionic-native/file": "4.17.0", + "@ionic-native/file-opener": "4.17.0", + "@ionic-native/file-transfer": "4.17.0", "@ionic-native/geolocation": "4.17.0", - "@ionic-native/globalization": "^4.17.0", - "@ionic-native/in-app-browser": "^4.17.0", - "@ionic-native/keyboard": "^4.17.0", - "@ionic-native/local-notifications": "^4.17.0", - "@ionic-native/media-capture": "^4.17.0", - "@ionic-native/network": "^4.17.0", - "@ionic-native/push": "^4.17.0", - "@ionic-native/screen-orientation": "^4.17.0", - "@ionic-native/splash-screen": "^4.17.0", - "@ionic-native/sqlite": "^4.17.0", - "@ionic-native/status-bar": "^4.17.0", - "@ionic-native/web-intent": "^4.17.0", - "@ionic-native/zip": "^4.17.0", - "@ngx-translate/core": "^8.0.0", - "@ngx-translate/http-loader": "^2.0.1", - "@types/cordova": "^0.0.34", - "@types/cordova-plugin-file-transfer": "^0.0.3", - "@types/cordova-plugin-globalization": "^0.0.3", - "@types/cordova-plugin-network-information": "^0.0.3", - "@types/node": "^8.10.19", - "@types/promise.prototype.finally": "^2.0.2", - "ajv": "^6.10.2", - "chart.js": "^2.7.2", - "com-darryncampbell-cordova-plugin-intent": "^1.1.7", + "@ionic-native/globalization": "4.17.0", + "@ionic-native/in-app-browser": "4.17.0", + "@ionic-native/keyboard": "4.17.0", + "@ionic-native/local-notifications": "4.17.0", + "@ionic-native/media-capture": "4.17.0", + "@ionic-native/network": "4.17.0", + "@ionic-native/push": "4.17.0", + "@ionic-native/screen-orientation": "4.17.0", + "@ionic-native/splash-screen": "4.17.0", + "@ionic-native/sqlite": "4.17.0", + "@ionic-native/status-bar": "4.17.0", + "@ionic-native/web-intent": "4.17.0", + "@ionic-native/zip": "4.17.0", + "@ngx-translate/core": "8.0.0", + "@ngx-translate/http-loader": "2.0.1", + "@types/cordova": "0.0.34", + "@types/cordova-plugin-file-transfer": "0.0.3", + "@types/cordova-plugin-globalization": "0.0.3", + "@types/cordova-plugin-network-information": "0.0.3", + "@types/node": "8.10.19", + "@types/promise.prototype.finally": "2.0.2", + "ajv": "6.10.2", + "chart.js": "2.7.2", + "com-darryncampbell-cordova-plugin-intent": "1.3.0", "cordova": "9.0.0", "cordova-android": "8.0.0", - "cordova-android-support-gradle-release": "^3.0.1", - "cordova-clipboard": "^1.3.0", + "cordova-android-support-gradle-release": "3.0.1", + "cordova-clipboard": "1.3.0", "cordova-ios": "5.0.1", - "cordova-plugin-badge": "^0.8.8", - "cordova-plugin-camera": "^4.1.0", - "cordova-plugin-customurlscheme": "^4.4.0", - "cordova-plugin-device": "^2.0.3", - "cordova-plugin-file": "^6.0.2", - "cordova-plugin-file-opener2": "^2.2.1", - "cordova-plugin-file-transfer": "^1.7.1", - "cordova-plugin-geolocation": "^4.0.2", - "cordova-plugin-globalization": "^1.11.0", - "cordova-plugin-inappbrowser": "^3.1.0", - "cordova-plugin-ionic-keyboard": "^2.1.3", + "cordova-plugin-badge": "0.8.8", + "cordova-plugin-camera": "4.1.0", + "cordova-plugin-customurlscheme": "4.4.0", + "cordova-plugin-device": "2.0.3", + "cordova-plugin-file": "6.0.2", + "cordova-plugin-file-opener2": "2.2.1", + "cordova-plugin-file-transfer": "1.7.1", + "cordova-plugin-geolocation": "4.0.2", + "cordova-plugin-globalization": "1.11.0", + "cordova-plugin-inappbrowser": "3.1.0", + "cordova-plugin-ionic-keyboard": "2.2.0", "cordova-plugin-local-notification": "git+https://github.com/moodlemobile/cordova-plugin-local-notification.git#moodle", - "cordova-plugin-media-capture": "^3.0.3", - "cordova-plugin-network-information": "^2.0.2", - "cordova-plugin-screen-orientation": "^3.0.2", - "cordova-plugin-splashscreen": "^5.0.3", - "cordova-plugin-statusbar": "^2.4.3", - "cordova-plugin-whitelist": "^1.3.4", - "cordova-plugin-zip": "^3.1.0", - "cordova-sqlite-storage": "^3.4.0", - "cordova-support-google-services": "^1.2.1", - "es6-promise-plugin": "^4.2.2", - "font-awesome": "^4.7.0", + "cordova-plugin-media-capture": "3.0.3", + "cordova-plugin-network-information": "2.0.2", + "cordova-plugin-screen-orientation": "3.0.2", + "cordova-plugin-splashscreen": "5.0.3", + "cordova-plugin-statusbar": "2.4.3", + "cordova-plugin-whitelist": "1.3.4", + "cordova-plugin-zip": "3.1.0", + "cordova-sqlite-storage": "3.4.0", + "cordova-support-google-services": "1.2.1", + "es6-promise-plugin": "4.2.2", + "font-awesome": "4.7.0", "ionic-angular": "3.9.3", - "ionicons": "^3.0.0", - "jszip": "^3.1.5", + "ionicons": "3.0.0", + "jszip": "3.1.5", "mathjax": "2.7.2", - "moment": "^2.22.2", - "nl.kingsquare.cordova.background-audio": "^1.0.1", - "phonegap-plugin-multidex": "^1.0.0", + "moment": "2.22.2", + "nl.kingsquare.cordova.background-audio": "1.0.1", + "phonegap-plugin-multidex": "1.0.0", "phonegap-plugin-push": "git+https://github.com/moodlemobile/phonegap-plugin-push.git#moodle-v3", - "promise.prototype.finally": "^3.1.0", - "rxjs": "^5.5.11", - "sw-toolbox": "^3.6.0", - "ts-md5": "^1.2.4", - "web-animations-js": "^2.3.1", - "zone.js": "^0.8.26" + "promise.prototype.finally": "3.1.0", + "rxjs": "5.5.11", + "sw-toolbox": "3.6.0", + "ts-md5": "1.2.4", + "web-animations-js": "2.3.1", + "zone.js": "0.8.26" }, "devDependencies": { "@ionic/app-scripts": "3.2.2", - "electron-builder-lib": "^20.23.1", - "electron-rebuild": "^1.8.1", + "electron-builder-lib": "20.23.1", + "electron-rebuild": "1.8.1", "gulp": "4.0.2", - "gulp-clip-empty-files": "^0.1.2", - "gulp-concat": "^2.6.1", - "gulp-flatten": "^0.4.0", - "gulp-rename": "^1.3.0", - "gulp-slash": "^1.1.3", - "gulp-util": "^3.0.8", - "node-loader": "^0.6.0", - "through": "^2.3.8", - "typescript": "^2.6.2", - "webpack-merge": "^4.1.2" + "gulp-clip-empty-files": "0.1.2", + "gulp-concat": "2.6.1", + "gulp-flatten": "0.4.0", + "gulp-rename": "1.3.0", + "gulp-slash": "1.1.3", + "gulp-util": "3.0.8", + "node-loader": "0.6.0", + "through": "2.3.8", + "typescript": "2.6.2", + "webpack-merge": "4.1.2" }, "browser": { "electron": false @@ -243,4 +243,4 @@ "deleteAppDataOnUninstall": true } } -} \ No newline at end of file +}