Merge pull request #2652 from NoelDeMartin/MOBILE-3320
MOBILE-3320: Tweaks
This commit is contained in:
		
						commit
						b2ac70175b
					
				
							
								
								
									
										22
									
								
								.vscode/moodle.code-snippets
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										22
									
								
								.vscode/moodle.code-snippets
									
									
									
									
										vendored
									
									
										Normal file
									
								
							| @ -0,0 +1,22 @@ | |||||||
|  | { | ||||||
|  |     "[Moodle] Service Singleton": { | ||||||
|  |         "scope": "typescript", | ||||||
|  |         "prefix": "massingleton", | ||||||
|  |         "body": [ | ||||||
|  | 
 | ||||||
|  |             "import { Injectable } from '@angular/core';", | ||||||
|  |             "import { makeSingleton } from '@singletons';", | ||||||
|  |             "", | ||||||
|  |             "@Injectable({ providedIn: 'root' })", | ||||||
|  |             "export class ${1:${TM_FILENAME_BASE}}Service {", | ||||||
|  |             "", | ||||||
|  |             "    $0", | ||||||
|  |             "", | ||||||
|  |             "}", | ||||||
|  |             "", | ||||||
|  |             "export class ${1:${TM_FILENAME_BASE}} extends makeSingleton(${1:${TM_FILENAME_BASE}}Service) {}", | ||||||
|  |             "" | ||||||
|  |         ], | ||||||
|  |         "description": "[Moodle] Create a Service Singleton" | ||||||
|  |     } | ||||||
|  | } | ||||||
| @ -33,9 +33,7 @@ const mainMenuHomeSiblingRoutes: Routes = [ | |||||||
| 
 | 
 | ||||||
| @NgModule({ | @NgModule({ | ||||||
|     imports: [ |     imports: [ | ||||||
|         CoreMainMenuTabRoutingModule.forChild({ |         CoreMainMenuTabRoutingModule.forChild(mainMenuHomeSiblingRoutes), | ||||||
|             siblings: mainMenuHomeSiblingRoutes, |  | ||||||
|         }), |  | ||||||
|     ], |     ], | ||||||
|     providers: [ |     providers: [ | ||||||
|         { |         { | ||||||
|  | |||||||
| @ -22,13 +22,27 @@ function buildAppRoutes(injector: Injector): Routes { | |||||||
| } | } | ||||||
| 
 | 
 | ||||||
| export type ModuleRoutes = { children: Routes; siblings: Routes }; | export type ModuleRoutes = { children: Routes; siblings: Routes }; | ||||||
|  | export type ModuleRoutesConfig = Routes | Partial<ModuleRoutes>; | ||||||
| 
 | 
 | ||||||
| export function resolveModuleRoutes(injector: Injector, token: InjectionToken<Partial<ModuleRoutes>[]>): ModuleRoutes { | export function resolveModuleRoutes(injector: Injector, token: InjectionToken<ModuleRoutesConfig[]>): ModuleRoutes { | ||||||
|     const routes = injector.get(token, []); |     const configs = injector.get(token, []); | ||||||
|  |     const routes = configs.map(config => { | ||||||
|  |         if (Array.isArray(config)) { | ||||||
|  |             return { | ||||||
|  |                 children: [], | ||||||
|  |                 siblings: config, | ||||||
|  |             }; | ||||||
|  |         } | ||||||
| 
 | 
 | ||||||
|         return { |         return { | ||||||
|         children: CoreArray.flatten(routes.map(r => r.children || [])), |             children: config.children || [], | ||||||
|         siblings: CoreArray.flatten(routes.map(r => r.siblings || [])), |             siblings: config.siblings || [], | ||||||
|  |         }; | ||||||
|  |     }); | ||||||
|  | 
 | ||||||
|  |     return { | ||||||
|  |         children: CoreArray.flatten(routes.map(r => r.children)), | ||||||
|  |         siblings: CoreArray.flatten(routes.map(r => r.siblings)), | ||||||
|     }; |     }; | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
|  | |||||||
| @ -1,65 +0,0 @@ | |||||||
| // (C) Copyright 2015 Moodle Pty Ltd.
 |  | ||||||
| //
 |  | ||||||
| // Licensed under the Apache License, Version 2.0 (the "License");
 |  | ||||||
| // you may not use this file except in compliance with the License.
 |  | ||||||
| // You may obtain a copy of the License at
 |  | ||||||
| //
 |  | ||||||
| //     http://www.apache.org/licenses/LICENSE-2.0
 |  | ||||||
| //
 |  | ||||||
| // Unless required by applicable law or agreed to in writing, software
 |  | ||||||
| // distributed under the License is distributed on an "AS IS" BASIS,
 |  | ||||||
| // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 |  | ||||||
| // See the License for the specific language governing permissions and
 |  | ||||||
| // limitations under the License.
 |  | ||||||
| 
 |  | ||||||
| import { trigger, style, transition, animate, keyframes } from '@angular/animations'; |  | ||||||
| 
 |  | ||||||
| export const coreShowHideAnimation = trigger('coreShowHideAnimation', [ |  | ||||||
|     transition(':enter', [ |  | ||||||
|         style({ opacity: 0 }), |  | ||||||
|         animate('500ms ease-in-out', style({ opacity: 1 })), |  | ||||||
|     ]), |  | ||||||
|     transition(':leave', [ |  | ||||||
|         style({ opacity: 1 }), |  | ||||||
|         animate('500ms ease-in-out', style({ opacity: 0 })), |  | ||||||
|     ]), |  | ||||||
| ]); |  | ||||||
| 
 |  | ||||||
| export const coreSlideInOut = trigger('coreSlideInOut', [ |  | ||||||
|     // Enter animation.
 |  | ||||||
|     transition('void => fromLeft', [ |  | ||||||
|         style({ transform: 'translateX(0)', opacity: 1 }), |  | ||||||
|         animate(300, keyframes([ |  | ||||||
|             style({ opacity: 0, transform: 'translateX(-100%)', offset: 0 }), |  | ||||||
|             style({ opacity: 1, transform: 'translateX(5%)',  offset: 0.7 }), |  | ||||||
|             style({ opacity: 1, transform: 'translateX(0)',     offset: 1.0 }), |  | ||||||
|         ])), |  | ||||||
|     ]), |  | ||||||
|     // Leave animation.
 |  | ||||||
|     transition('fromLeft => void', [ |  | ||||||
|         style({ transform: 'translateX(-100%)', opacity: 0 }), |  | ||||||
|         animate(300, keyframes([ |  | ||||||
|             style({ opacity: 1, transform: 'translateX(0)', offset: 0 }), |  | ||||||
|             style({ opacity: 1, transform: 'translateX(5%)',  offset: 0.3 }), |  | ||||||
|             style({ opacity: 0, transform: 'translateX(-100%)',     offset: 1.0 }), |  | ||||||
|         ])), |  | ||||||
|     ]), |  | ||||||
|     // Enter animation.
 |  | ||||||
|     transition('void => fromRight', [ |  | ||||||
|         style({ transform: 'translateX(0)', opacity: 1 }), |  | ||||||
|         animate(300, keyframes([ |  | ||||||
|             style({ opacity: 0, transform: 'translateX(100%)',     offset: 0 }), |  | ||||||
|             style({ opacity: 1, transform: 'translateX(-5%)', offset: 0.7 }), |  | ||||||
|             style({ opacity: 1, transform: 'translateX(0)',  offset: 1.0 }), |  | ||||||
|         ])), |  | ||||||
|     ]), |  | ||||||
|     // Leave animation.
 |  | ||||||
|     transition('fromRight => void', [ |  | ||||||
|         style({ transform: 'translateX(-100%)', opacity: 0 }), |  | ||||||
|         animate(300, keyframes([ |  | ||||||
|             style({ opacity: 1, transform: 'translateX(0)', offset: 0 }), |  | ||||||
|             style({ opacity: 1, transform: 'translateX(-5%)',  offset: 0.3 }), |  | ||||||
|             style({ opacity: 0, transform: 'translateX(100%)',     offset: 1.0 }), |  | ||||||
|         ])), |  | ||||||
|     ]), |  | ||||||
| ]); |  | ||||||
							
								
								
									
										72
									
								
								src/core/components/animations.ts
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										72
									
								
								src/core/components/animations.ts
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,72 @@ | |||||||
|  | // (C) Copyright 2015 Moodle Pty Ltd.
 | ||||||
|  | //
 | ||||||
|  | // Licensed under the Apache License, Version 2.0 (the "License");
 | ||||||
|  | // you may not use this file except in compliance with the License.
 | ||||||
|  | // You may obtain a copy of the License at
 | ||||||
|  | //
 | ||||||
|  | //     http://www.apache.org/licenses/LICENSE-2.0
 | ||||||
|  | //
 | ||||||
|  | // Unless required by applicable law or agreed to in writing, software
 | ||||||
|  | // distributed under the License is distributed on an "AS IS" BASIS,
 | ||||||
|  | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 | ||||||
|  | // See the License for the specific language governing permissions and
 | ||||||
|  | // limitations under the License.
 | ||||||
|  | 
 | ||||||
|  | import { trigger, style, transition, animate, keyframes } from '@angular/animations'; | ||||||
|  | 
 | ||||||
|  | /** | ||||||
|  |  * Defines core animations. | ||||||
|  |  */ | ||||||
|  | export class CoreAnimations { | ||||||
|  | 
 | ||||||
|  |     static readonly SHOW_HIDE = trigger('coreShowHideAnimation', [ | ||||||
|  |         transition(':enter', [ | ||||||
|  |             style({ opacity: 0 }), | ||||||
|  |             animate('500ms ease-in-out', style({ opacity: 1 })), | ||||||
|  |         ]), | ||||||
|  |         transition(':leave', [ | ||||||
|  |             style({ opacity: 1 }), | ||||||
|  |             animate('500ms ease-in-out', style({ opacity: 0 })), | ||||||
|  |         ]), | ||||||
|  |     ]); | ||||||
|  | 
 | ||||||
|  |     static readonly SLIDE_IN_OUT = trigger('coreSlideInOut', [ | ||||||
|  |         // Enter animation.
 | ||||||
|  |         transition('void => fromLeft', [ | ||||||
|  |             style({ transform: 'translateX(0)', opacity: 1 }), | ||||||
|  |             animate(300, keyframes([ | ||||||
|  |                 style({ opacity: 0, transform: 'translateX(-100%)', offset: 0 }), | ||||||
|  |                 style({ opacity: 1, transform: 'translateX(5%)',  offset: 0.7 }), | ||||||
|  |                 style({ opacity: 1, transform: 'translateX(0)',     offset: 1.0 }), | ||||||
|  |             ])), | ||||||
|  |         ]), | ||||||
|  |         // Leave animation.
 | ||||||
|  |         transition('fromLeft => void', [ | ||||||
|  |             style({ transform: 'translateX(-100%)', opacity: 0 }), | ||||||
|  |             animate(300, keyframes([ | ||||||
|  |                 style({ opacity: 1, transform: 'translateX(0)', offset: 0 }), | ||||||
|  |                 style({ opacity: 1, transform: 'translateX(5%)',  offset: 0.3 }), | ||||||
|  |                 style({ opacity: 0, transform: 'translateX(-100%)',     offset: 1.0 }), | ||||||
|  |             ])), | ||||||
|  |         ]), | ||||||
|  |         // Enter animation.
 | ||||||
|  |         transition('void => fromRight', [ | ||||||
|  |             style({ transform: 'translateX(0)', opacity: 1 }), | ||||||
|  |             animate(300, keyframes([ | ||||||
|  |                 style({ opacity: 0, transform: 'translateX(100%)',     offset: 0 }), | ||||||
|  |                 style({ opacity: 1, transform: 'translateX(-5%)', offset: 0.7 }), | ||||||
|  |                 style({ opacity: 1, transform: 'translateX(0)',  offset: 1.0 }), | ||||||
|  |             ])), | ||||||
|  |         ]), | ||||||
|  |         // Leave animation.
 | ||||||
|  |         transition('fromRight => void', [ | ||||||
|  |             style({ transform: 'translateX(-100%)', opacity: 0 }), | ||||||
|  |             animate(300, keyframes([ | ||||||
|  |                 style({ opacity: 1, transform: 'translateX(0)', offset: 0 }), | ||||||
|  |                 style({ opacity: 1, transform: 'translateX(-5%)',  offset: 0.3 }), | ||||||
|  |                 style({ opacity: 0, transform: 'translateX(100%)',     offset: 1.0 }), | ||||||
|  |             ])), | ||||||
|  |         ]), | ||||||
|  |     ]); | ||||||
|  | 
 | ||||||
|  | } | ||||||
| @ -14,7 +14,7 @@ | |||||||
| 
 | 
 | ||||||
| import { Component, Input, Output, EventEmitter } from '@angular/core'; | import { Component, Input, Output, EventEmitter } from '@angular/core'; | ||||||
| import { CoreConstants } from '@/core/constants'; | import { CoreConstants } from '@/core/constants'; | ||||||
| import { coreShowHideAnimation } from '@classes/animations'; | import { CoreAnimations } from '@components/animations'; | ||||||
| 
 | 
 | ||||||
| /** | /** | ||||||
|  * Component to show a download button with refresh option, the spinner and the status of it. |  * Component to show a download button with refresh option, the spinner and the status of it. | ||||||
| @ -26,7 +26,7 @@ import { coreShowHideAnimation } from '@classes/animations'; | |||||||
|     selector: 'core-download-refresh', |     selector: 'core-download-refresh', | ||||||
|     templateUrl: 'core-download-refresh.html', |     templateUrl: 'core-download-refresh.html', | ||||||
|     styleUrls: ['download-refresh.scss'], |     styleUrls: ['download-refresh.scss'], | ||||||
|     animations: [coreShowHideAnimation], |     animations: [CoreAnimations.SHOW_HIDE], | ||||||
| }) | }) | ||||||
| export class CoreDownloadRefreshComponent { | export class CoreDownloadRefreshComponent { | ||||||
| 
 | 
 | ||||||
|  | |||||||
| @ -16,7 +16,7 @@ import { Component, Input, OnInit, OnChanges, SimpleChange, ViewChild, ElementRe | |||||||
| 
 | 
 | ||||||
| import { CoreEventLoadingChangedData, CoreEvents } from '@singletons/events'; | import { CoreEventLoadingChangedData, CoreEvents } from '@singletons/events'; | ||||||
| import { CoreUtils } from '@services/utils/utils'; | import { CoreUtils } from '@services/utils/utils'; | ||||||
| import { coreShowHideAnimation } from '@classes/animations'; | import { CoreAnimations } from '@components/animations'; | ||||||
| import { Translate } from '@singletons'; | import { Translate } from '@singletons'; | ||||||
| 
 | 
 | ||||||
| /** | /** | ||||||
| @ -43,7 +43,7 @@ import { Translate } from '@singletons'; | |||||||
|     selector: 'core-loading', |     selector: 'core-loading', | ||||||
|     templateUrl: 'core-loading.html', |     templateUrl: 'core-loading.html', | ||||||
|     styleUrls: ['loading.scss'], |     styleUrls: ['loading.scss'], | ||||||
|     animations: [coreShowHideAnimation], |     animations: [CoreAnimations.SHOW_HIDE], | ||||||
| }) | }) | ||||||
| export class CoreLoadingComponent implements OnInit, OnChanges, AfterViewInit { | export class CoreLoadingComponent implements OnInit, OnChanges, AfterViewInit { | ||||||
| 
 | 
 | ||||||
|  | |||||||
| @ -14,14 +14,14 @@ | |||||||
| 
 | 
 | ||||||
| import { InjectionToken, ModuleWithProviders, NgModule } from '@angular/core'; | import { InjectionToken, ModuleWithProviders, NgModule } from '@angular/core'; | ||||||
| 
 | 
 | ||||||
| import { ModuleRoutes } from '@/app/app-routing.module'; | import { ModuleRoutesConfig } from '@/app/app-routing.module'; | ||||||
| 
 | 
 | ||||||
| export const MAIN_MENU_ROUTES = new InjectionToken('MAIN_MENU_ROUTES'); | export const MAIN_MENU_ROUTES = new InjectionToken('MAIN_MENU_ROUTES'); | ||||||
| 
 | 
 | ||||||
| @NgModule() | @NgModule() | ||||||
| export class CoreMainMenuRoutingModule { | export class CoreMainMenuRoutingModule { | ||||||
| 
 | 
 | ||||||
|     static forChild(routes: Partial<ModuleRoutes>): ModuleWithProviders<CoreMainMenuRoutingModule> { |     static forChild(routes: ModuleRoutesConfig): ModuleWithProviders<CoreMainMenuRoutingModule> { | ||||||
|         return { |         return { | ||||||
|             ngModule: CoreMainMenuRoutingModule, |             ngModule: CoreMainMenuRoutingModule, | ||||||
|             providers: [ |             providers: [ | ||||||
|  | |||||||
| @ -15,7 +15,7 @@ | |||||||
| import { InjectionToken, Injector, ModuleWithProviders, NgModule } from '@angular/core'; | import { InjectionToken, Injector, ModuleWithProviders, NgModule } from '@angular/core'; | ||||||
| import { Route, Routes } from '@angular/router'; | import { Route, Routes } from '@angular/router'; | ||||||
| 
 | 
 | ||||||
| import { ModuleRoutes, resolveModuleRoutes } from '@/app/app-routing.module'; | import { ModuleRoutesConfig, resolveModuleRoutes } from '@/app/app-routing.module'; | ||||||
| 
 | 
 | ||||||
| export const MAIN_MENU_TAB_ROUTES = new InjectionToken('MAIN_MENU_TAB_ROUTES'); | export const MAIN_MENU_TAB_ROUTES = new InjectionToken('MAIN_MENU_TAB_ROUTES'); | ||||||
| 
 | 
 | ||||||
| @ -35,7 +35,7 @@ export function buildTabMainRoutes(injector: Injector, mainRoute: Route): Routes | |||||||
| @NgModule() | @NgModule() | ||||||
| export class CoreMainMenuTabRoutingModule { | export class CoreMainMenuTabRoutingModule { | ||||||
| 
 | 
 | ||||||
|     static forChild(routes: Partial<ModuleRoutes>): ModuleWithProviders<CoreMainMenuTabRoutingModule> { |     static forChild(routes: ModuleRoutesConfig): ModuleWithProviders<CoreMainMenuTabRoutingModule> { | ||||||
|         return { |         return { | ||||||
|             ngModule: CoreMainMenuTabRoutingModule, |             ngModule: CoreMainMenuTabRoutingModule, | ||||||
|             providers: [ |             providers: [ | ||||||
|  | |||||||
| @ -14,14 +14,14 @@ | |||||||
| 
 | 
 | ||||||
| import { InjectionToken, ModuleWithProviders, NgModule } from '@angular/core'; | import { InjectionToken, ModuleWithProviders, NgModule } from '@angular/core'; | ||||||
| 
 | 
 | ||||||
| import { ModuleRoutes } from '@/app/app-routing.module'; | import { ModuleRoutesConfig } from '@/app/app-routing.module'; | ||||||
| 
 | 
 | ||||||
| export const MAIN_MENU_HOME_ROUTES = new InjectionToken('MAIN_MENU_HOME_ROUTES'); | export const MAIN_MENU_HOME_ROUTES = new InjectionToken('MAIN_MENU_HOME_ROUTES'); | ||||||
| 
 | 
 | ||||||
| @NgModule() | @NgModule() | ||||||
| export class CoreMainMenuHomeRoutingModule { | export class CoreMainMenuHomeRoutingModule { | ||||||
| 
 | 
 | ||||||
|     static forChild(routes: Partial<ModuleRoutes>): ModuleWithProviders<CoreMainMenuHomeRoutingModule> { |     static forChild(routes: ModuleRoutesConfig): ModuleWithProviders<CoreMainMenuHomeRoutingModule> { | ||||||
|         return { |         return { | ||||||
|             ngModule: CoreMainMenuHomeRoutingModule, |             ngModule: CoreMainMenuHomeRoutingModule, | ||||||
|             providers: [ |             providers: [ | ||||||
|  | |||||||
| @ -41,7 +41,7 @@ const mainMenuMoreRoutes: Routes = [ | |||||||
| @NgModule({ | @NgModule({ | ||||||
|     imports: [ |     imports: [ | ||||||
|         AppRoutingModule.forChild(appRoutes), |         AppRoutingModule.forChild(appRoutes), | ||||||
|         CoreMainMenuTabRoutingModule.forChild({ siblings: mainMenuMoreRoutes }), |         CoreMainMenuTabRoutingModule.forChild(mainMenuMoreRoutes), | ||||||
|     ], |     ], | ||||||
|     providers: [ |     providers: [ | ||||||
|         { |         { | ||||||
|  | |||||||
| @ -37,7 +37,7 @@ const routes: Routes = [ | |||||||
| 
 | 
 | ||||||
| @NgModule({ | @NgModule({ | ||||||
|     imports: [ |     imports: [ | ||||||
|         CoreMainMenuTabRoutingModule.forChild({ siblings: routes }), |         CoreMainMenuTabRoutingModule.forChild(routes), | ||||||
|         CoreUserComponentsModule, |         CoreUserComponentsModule, | ||||||
|     ], |     ], | ||||||
|     providers: [ |     providers: [ | ||||||
|  | |||||||
| @ -21,11 +21,11 @@ import { CoreSites } from '@services/sites'; | |||||||
| 
 | 
 | ||||||
| export default async function(): Promise<void> { | export default async function(): Promise<void> { | ||||||
|     await Promise.all([ |     await Promise.all([ | ||||||
|         CoreApp.instance.initialiseDatabase(), |         CoreApp.instance.initializeDatabase(), | ||||||
|         CoreConfig.instance.initialiseDatabase(), |         CoreConfig.instance.initializeDatabase(), | ||||||
|         CoreCronDelegate.instance.initialiseDatabase(), |         CoreCronDelegate.instance.initializeDatabase(), | ||||||
|         CoreFilepool.instance.initialiseDatabase(), |         CoreFilepool.instance.initializeDatabase(), | ||||||
|         CoreLocalNotifications.instance.initialiseDatabase(), |         CoreLocalNotifications.instance.initializeDatabase(), | ||||||
|         CoreSites.instance.initialiseDatabase(), |         CoreSites.instance.initializeDatabase(), | ||||||
|     ]); |     ]); | ||||||
| } | } | ||||||
|  | |||||||
| @ -85,9 +85,9 @@ export class CoreAppProvider { | |||||||
|     } |     } | ||||||
| 
 | 
 | ||||||
|     /** |     /** | ||||||
|      * Initialise database. |      * Initialize database. | ||||||
|      */ |      */ | ||||||
|     async initialiseDatabase(): Promise<void> { |     async initializeDatabase(): Promise<void> { | ||||||
|         await this.db.createTableFromSchema(SCHEMA_VERSIONS_TABLE_SCHEMA); |         await this.db.createTableFromSchema(SCHEMA_VERSIONS_TABLE_SCHEMA); | ||||||
| 
 | 
 | ||||||
|         this.resolveSchemaVersionsManager({ |         this.resolveSchemaVersionsManager({ | ||||||
|  | |||||||
| @ -34,9 +34,9 @@ export class CoreConfigProvider { | |||||||
|     } |     } | ||||||
| 
 | 
 | ||||||
|     /** |     /** | ||||||
|      * Initialise database. |      * Initialize database. | ||||||
|      */ |      */ | ||||||
|     async initialiseDatabase(): Promise<void> { |     async initializeDatabase(): Promise<void> { | ||||||
|         try { |         try { | ||||||
|             await CoreApp.instance.createTablesFromSchema(APP_SCHEMA); |             await CoreApp.instance.createTablesFromSchema(APP_SCHEMA); | ||||||
|         } catch (e) { |         } catch (e) { | ||||||
|  | |||||||
| @ -58,9 +58,9 @@ export class CoreCronDelegateService { | |||||||
|     } |     } | ||||||
| 
 | 
 | ||||||
|     /** |     /** | ||||||
|      * Initialise database. |      * Initialize database. | ||||||
|      */ |      */ | ||||||
|     async initialiseDatabase(): Promise<void> { |     async initializeDatabase(): Promise<void> { | ||||||
|         try { |         try { | ||||||
|             await CoreApp.instance.createTablesFromSchema(APP_SCHEMA); |             await CoreApp.instance.createTablesFromSchema(APP_SCHEMA); | ||||||
|         } catch (e) { |         } catch (e) { | ||||||
|  | |||||||
| @ -101,9 +101,9 @@ export class CoreFilepoolProvider { | |||||||
|     } |     } | ||||||
| 
 | 
 | ||||||
|     /** |     /** | ||||||
|      * Initialise database. |      * Initialize database. | ||||||
|      */ |      */ | ||||||
|     async initialiseDatabase(): Promise<void> { |     async initializeDatabase(): Promise<void> { | ||||||
|         try { |         try { | ||||||
|             await CoreApp.instance.createTablesFromSchema(APP_SCHEMA); |             await CoreApp.instance.createTablesFromSchema(APP_SCHEMA); | ||||||
|         } catch (e) { |         } catch (e) { | ||||||
|  | |||||||
| @ -69,9 +69,9 @@ export class CoreLocalNotificationsProvider { | |||||||
|     } |     } | ||||||
| 
 | 
 | ||||||
|     /** |     /** | ||||||
|      * Initialise database. |      * Initialize database. | ||||||
|      */ |      */ | ||||||
|     async initialiseDatabase(): Promise<void> { |     async initializeDatabase(): Promise<void> { | ||||||
|         try { |         try { | ||||||
|             await CoreApp.instance.createTablesFromSchema(APP_SCHEMA); |             await CoreApp.instance.createTablesFromSchema(APP_SCHEMA); | ||||||
|         } catch (e) { |         } catch (e) { | ||||||
|  | |||||||
| @ -94,9 +94,9 @@ export class CoreSitesProvider { | |||||||
|     } |     } | ||||||
| 
 | 
 | ||||||
|     /** |     /** | ||||||
|      * Initialise database. |      * Initialize database. | ||||||
|      */ |      */ | ||||||
|     async initialiseDatabase(): Promise<void> { |     async initializeDatabase(): Promise<void> { | ||||||
|         try { |         try { | ||||||
|             await CoreApp.instance.createTablesFromSchema(APP_SCHEMA); |             await CoreApp.instance.createTablesFromSchema(APP_SCHEMA); | ||||||
|         } catch (e) { |         } catch (e) { | ||||||
|  | |||||||
							
								
								
									
										27
									
								
								src/core/shared.module.ts
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										27
									
								
								src/core/shared.module.ts
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,27 @@ | |||||||
|  | // (C) Copyright 2015 Moodle Pty Ltd.
 | ||||||
|  | //
 | ||||||
|  | // Licensed under the Apache License, Version 2.0 (the "License");
 | ||||||
|  | // you may not use this file except in compliance with the License.
 | ||||||
|  | // You may obtain a copy of the License at
 | ||||||
|  | //
 | ||||||
|  | //     http://www.apache.org/licenses/LICENSE-2.0
 | ||||||
|  | //
 | ||||||
|  | // Unless required by applicable law or agreed to in writing, software
 | ||||||
|  | // distributed under the License is distributed on an "AS IS" BASIS,
 | ||||||
|  | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 | ||||||
|  | // See the License for the specific language governing permissions and
 | ||||||
|  | // limitations under the License.
 | ||||||
|  | 
 | ||||||
|  | import { NgModule } from '@angular/core'; | ||||||
|  | import { CoreComponentsModule } from '@components/components.module'; | ||||||
|  | import { CoreDirectivesModule } from '@directives/directives.module'; | ||||||
|  | import { CorePipesModule } from '@pipes/pipes.module'; | ||||||
|  | 
 | ||||||
|  | @NgModule({ | ||||||
|  |     imports: [ | ||||||
|  |         CoreComponentsModule, | ||||||
|  |         CoreDirectivesModule, | ||||||
|  |         CorePipesModule, | ||||||
|  |     ], | ||||||
|  | }) | ||||||
|  | export class CoreSharedModule {} | ||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user