forked from CIT/Vmeda.Online
		
	MOBILE-3565 core: Initialize Ionic 5 project
This commit is contained in:
		
							parent
							
								
									20c41b7b1b
								
							
						
					
					
						commit
						f62cdc95f6
					
				
							
								
								
									
										31
									
								
								.gitignore
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										31
									
								
								.gitignore
									
									
									
									
										vendored
									
									
										Normal file
									
								
							| @ -0,0 +1,31 @@ | ||||
| # Specifies intentionally untracked files to ignore when using Git | ||||
| # http://git-scm.com/docs/gitignore | ||||
| 
 | ||||
| *~ | ||||
| *.sw[mnpcod] | ||||
| .tmp | ||||
| *.tmp | ||||
| *.tmp.* | ||||
| *.sublime-project | ||||
| *.sublime-workspace | ||||
| .DS_Store | ||||
| Thumbs.db | ||||
| UserInterfaceState.xcuserstate | ||||
| $RECYCLE.BIN/ | ||||
| 
 | ||||
| *.log | ||||
| log.txt | ||||
| npm-debug.log* | ||||
| 
 | ||||
| /.idea | ||||
| /.ionic | ||||
| /.sass-cache | ||||
| /.sourcemaps | ||||
| /.versions | ||||
| /.vscode | ||||
| /coverage | ||||
| /dist | ||||
| /node_modules | ||||
| /platforms | ||||
| /plugins | ||||
| /www | ||||
							
								
								
									
										187
									
								
								angular.json
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										187
									
								
								angular.json
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,187 @@ | ||||
| { | ||||
|   "$schema": "./node_modules/@angular/cli/lib/config/schema.json", | ||||
|   "version": 1, | ||||
|   "defaultProject": "app", | ||||
|   "newProjectRoot": "projects", | ||||
|   "projects": { | ||||
|     "app": { | ||||
|       "root": "", | ||||
|       "sourceRoot": "src", | ||||
|       "projectType": "application", | ||||
|       "prefix": "app", | ||||
|       "schematics": {}, | ||||
|       "architect": { | ||||
|         "build": { | ||||
|           "builder": "@angular-devkit/build-angular:browser", | ||||
|           "options": { | ||||
|             "outputPath": "www", | ||||
|             "index": "src/index.html", | ||||
|             "main": "src/main.ts", | ||||
|             "polyfills": "src/polyfills.ts", | ||||
|             "tsConfig": "tsconfig.app.json", | ||||
|             "assets": [ | ||||
|               { | ||||
|                 "glob": "**/*", | ||||
|                 "input": "src/assets", | ||||
|                 "output": "assets" | ||||
|               }, | ||||
|               { | ||||
|                 "glob": "**/*.svg", | ||||
|                 "input": "node_modules/ionicons/dist/ionicons/svg", | ||||
|                 "output": "./svg" | ||||
|               } | ||||
|             ], | ||||
|             "styles": [ | ||||
|               { | ||||
|                 "input": "src/theme/variables.scss" | ||||
|               }, | ||||
|               { | ||||
|                 "input": "src/global.scss" | ||||
|               } | ||||
|             ], | ||||
|             "scripts": [] | ||||
|           }, | ||||
|           "configurations": { | ||||
|             "production": { | ||||
|               "fileReplacements": [ | ||||
|                 { | ||||
|                   "replace": "src/environments/environment.ts", | ||||
|                   "with": "src/environments/environment.prod.ts" | ||||
|                 } | ||||
|               ], | ||||
|               "optimization": true, | ||||
|               "outputHashing": "all", | ||||
|               "sourceMap": false, | ||||
|               "extractCss": true, | ||||
|               "namedChunks": false, | ||||
|               "aot": true, | ||||
|               "extractLicenses": true, | ||||
|               "vendorChunk": false, | ||||
|               "buildOptimizer": true, | ||||
|               "budgets": [ | ||||
|                 { | ||||
|                   "type": "initial", | ||||
|                   "maximumWarning": "2mb", | ||||
|                   "maximumError": "5mb" | ||||
|                 } | ||||
|               ] | ||||
|             }, | ||||
|             "ci": { | ||||
|               "progress": false | ||||
|             } | ||||
|           } | ||||
|         }, | ||||
|         "serve": { | ||||
|           "builder": "@angular-devkit/build-angular:dev-server", | ||||
|           "options": { | ||||
|             "browserTarget": "app:build" | ||||
|           }, | ||||
|           "configurations": { | ||||
|             "production": { | ||||
|               "browserTarget": "app:build:production" | ||||
|             }, | ||||
|             "ci": { | ||||
|               "progress": false | ||||
|             } | ||||
|           } | ||||
|         }, | ||||
|         "extract-i18n": { | ||||
|           "builder": "@angular-devkit/build-angular:extract-i18n", | ||||
|           "options": { | ||||
|             "browserTarget": "app:build" | ||||
|           } | ||||
|         }, | ||||
|         "test": { | ||||
|           "builder": "@angular-devkit/build-angular:karma", | ||||
|           "options": { | ||||
|             "main": "src/test.ts", | ||||
|             "polyfills": "src/polyfills.ts", | ||||
|             "tsConfig": "tsconfig.spec.json", | ||||
|             "karmaConfig": "karma.conf.js", | ||||
|             "styles": [], | ||||
|             "scripts": [], | ||||
|             "assets": [ | ||||
|               { | ||||
|                 "glob": "favicon.ico", | ||||
|                 "input": "src/", | ||||
|                 "output": "/" | ||||
|               }, | ||||
|               { | ||||
|                 "glob": "**/*", | ||||
|                 "input": "src/assets", | ||||
|                 "output": "/assets" | ||||
|               } | ||||
|             ] | ||||
|           }, | ||||
|           "configurations": { | ||||
|             "ci": { | ||||
|               "progress": false, | ||||
|               "watch": false | ||||
|             } | ||||
|           } | ||||
|         }, | ||||
|         "lint": { | ||||
|           "builder": "@angular-devkit/build-angular:tslint", | ||||
|           "options": { | ||||
|             "tsConfig": [ | ||||
|               "tsconfig.app.json", | ||||
|               "tsconfig.spec.json", | ||||
|               "e2e/tsconfig.json" | ||||
|             ], | ||||
|             "exclude": ["**/node_modules/**"] | ||||
|           } | ||||
|         }, | ||||
|         "e2e": { | ||||
|           "builder": "@angular-devkit/build-angular:protractor", | ||||
|           "options": { | ||||
|             "protractorConfig": "e2e/protractor.conf.js", | ||||
|             "devServerTarget": "app:serve" | ||||
|           }, | ||||
|           "configurations": { | ||||
|             "production": { | ||||
|               "devServerTarget": "app:serve:production" | ||||
|             }, | ||||
|             "ci": { | ||||
|               "devServerTarget": "app:serve:ci" | ||||
|             } | ||||
|           } | ||||
|         }, | ||||
|         "ionic-cordova-build": { | ||||
|           "builder": "@ionic/angular-toolkit:cordova-build", | ||||
|           "options": { | ||||
|             "browserTarget": "app:build" | ||||
|           }, | ||||
|           "configurations": { | ||||
|             "production": { | ||||
|               "browserTarget": "app:build:production" | ||||
|             } | ||||
|           } | ||||
|         }, | ||||
|         "ionic-cordova-serve": { | ||||
|           "builder": "@ionic/angular-toolkit:cordova-serve", | ||||
|           "options": { | ||||
|             "cordovaBuildTarget": "app:ionic-cordova-build", | ||||
|             "devServerTarget": "app:serve" | ||||
|           }, | ||||
|           "configurations": { | ||||
|             "production": { | ||||
|               "cordovaBuildTarget": "app:ionic-cordova-build:production", | ||||
|               "devServerTarget": "app:serve:production" | ||||
|             } | ||||
|           } | ||||
|         } | ||||
|       } | ||||
|     } | ||||
|   }, | ||||
|   "cli": { | ||||
|     "defaultCollection": "@ionic/angular-toolkit" | ||||
|   }, | ||||
|   "schematics": { | ||||
|     "@ionic/angular-toolkit:component": { | ||||
|       "styleext": "scss" | ||||
|     }, | ||||
|     "@ionic/angular-toolkit:page": { | ||||
|       "styleext": "scss" | ||||
|     } | ||||
|   } | ||||
| } | ||||
							
								
								
									
										12
									
								
								browserslist
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										12
									
								
								browserslist
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,12 @@ | ||||
| # This file is used by the build system to adjust CSS and JS output to support the specified browsers below. | ||||
| # For additional information regarding the format and rule options, please see: | ||||
| # https://github.com/browserslist/browserslist#queries | ||||
| 
 | ||||
| # You can see what browsers were selected by your queries by running: | ||||
| #   npx browserslist | ||||
| 
 | ||||
| > 0.5% | ||||
| last 2 versions | ||||
| Firefox ESR | ||||
| not dead | ||||
| not IE 9-11 # For IE 9-11 support, remove 'not'. | ||||
							
								
								
									
										5
									
								
								ionic.config.json
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										5
									
								
								ionic.config.json
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,5 @@ | ||||
| { | ||||
|   "name": "moodlemobile", | ||||
|   "integrations": {}, | ||||
|   "type": "angular" | ||||
| } | ||||
							
								
								
									
										13995
									
								
								package-lock.json
									
									
									
										generated
									
									
									
										Normal file
									
								
							
							
						
						
									
										13995
									
								
								package-lock.json
									
									
									
										generated
									
									
									
										Normal file
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							
							
								
								
									
										69
									
								
								package.json
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										69
									
								
								package.json
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,69 @@ | ||||
| { | ||||
|   "name": "moodlemobile", | ||||
|   "version": "3.9.5", | ||||
|   "description": "The official app for Moodle.", | ||||
|   "author": { | ||||
|     "name": "Moodle Pty Ltd.", | ||||
|     "email": "mobile@moodle.com" | ||||
|   }, | ||||
|   "repository": { | ||||
|     "type": "git", | ||||
|     "url": "https://github.com/moodlehq/moodlemobile2.git" | ||||
|   }, | ||||
|   "license": "Apache-2.0", | ||||
|   "licenses": [ | ||||
|     { | ||||
|       "type": "Apache-2.0", | ||||
|       "url": "http://www.apache.org/licenses/LICENSE-2.0" | ||||
|     } | ||||
|   ], | ||||
|   "scripts": { | ||||
|     "ng": "ng", | ||||
|     "start": "ng serve", | ||||
|     "build": "ng build", | ||||
|     "test": "ng test", | ||||
|     "lint": "ng lint", | ||||
|     "e2e": "ng e2e" | ||||
|   }, | ||||
|   "dependencies": { | ||||
|     "@angular/common": "~10.0.0", | ||||
|     "@angular/core": "~10.0.0", | ||||
|     "@angular/forms": "~10.0.0", | ||||
|     "@angular/platform-browser": "~10.0.0", | ||||
|     "@angular/platform-browser-dynamic": "~10.0.0", | ||||
|     "@angular/router": "~10.0.0", | ||||
|     "@ionic-native/core": "^5.0.0", | ||||
|     "@ionic-native/splash-screen": "^5.0.0", | ||||
|     "@ionic-native/status-bar": "^5.0.0", | ||||
|     "@ionic/angular": "^5.0.0", | ||||
|     "rxjs": "~6.5.5", | ||||
|     "tslib": "^2.0.0", | ||||
|     "zone.js": "~0.10.3" | ||||
|   }, | ||||
|   "devDependencies": { | ||||
|     "@angular-devkit/build-angular": "~0.1000.0", | ||||
|     "@angular/cli": "~10.0.5", | ||||
|     "@angular/compiler": "~10.0.0", | ||||
|     "@angular/compiler-cli": "~10.0.0", | ||||
|     "@angular/language-service": "~10.0.0", | ||||
|     "@ionic/angular-toolkit": "^2.3.0", | ||||
|     "@types/node": "^12.11.1", | ||||
|     "@types/jasmine": "~3.5.0", | ||||
|     "@types/jasminewd2": "~2.0.3", | ||||
|     "codelyzer": "^6.0.0", | ||||
|     "jasmine-core": "~3.5.0", | ||||
|     "jasmine-spec-reporter": "~5.0.0", | ||||
|     "karma": "~5.0.0", | ||||
|     "karma-chrome-launcher": "~3.1.0", | ||||
|     "karma-coverage-istanbul-reporter": "~3.0.2", | ||||
|     "karma-jasmine": "~3.3.0", | ||||
|     "karma-jasmine-html-reporter": "^1.5.0", | ||||
|     "protractor": "~7.0.0", | ||||
|     "ts-node": "~8.3.0", | ||||
|     "tslint": "~6.1.0", | ||||
|     "typescript": "~3.9.5" | ||||
|   }, | ||||
|   "engines": { | ||||
|     "node": ">=11.x" | ||||
|   } | ||||
| } | ||||
							
								
								
									
										27
									
								
								src/app/app-routing.module.ts
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										27
									
								
								src/app/app-routing.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 { PreloadAllModules, RouterModule, Routes } from '@angular/router'; | ||||
| 
 | ||||
| const routes: Routes = [ | ||||
| ]; | ||||
| 
 | ||||
| @NgModule({ | ||||
|     imports: [ | ||||
|         RouterModule.forRoot(routes, { preloadingStrategy: PreloadAllModules }), | ||||
|     ], | ||||
|     exports: [RouterModule], | ||||
| }) | ||||
| export class AppRoutingModule { } | ||||
							
								
								
									
										3
									
								
								src/app/app.component.html
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										3
									
								
								src/app/app.component.html
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,3 @@ | ||||
| <ion-app> | ||||
|     <ion-router-outlet></ion-router-outlet> | ||||
| </ion-app> | ||||
							
								
								
									
										0
									
								
								src/app/app.component.scss
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										0
									
								
								src/app/app.component.scss
									
									
									
									
									
										Normal file
									
								
							
							
								
								
									
										24
									
								
								src/app/app.component.ts
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										24
									
								
								src/app/app.component.ts
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,24 @@ | ||||
| // (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 { Component } from '@angular/core'; | ||||
| 
 | ||||
| @Component({ | ||||
|     selector: 'app-root', | ||||
|     templateUrl: 'app.component.html', | ||||
|     styleUrls: ['app.component.scss'] | ||||
| }) | ||||
| export class AppComponent { | ||||
|     constructor() { } | ||||
| } | ||||
							
								
								
									
										33
									
								
								src/app/app.module.ts
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										33
									
								
								src/app/app.module.ts
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,33 @@ | ||||
| // (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 { BrowserModule } from '@angular/platform-browser'; | ||||
| import { RouteReuseStrategy } from '@angular/router'; | ||||
| 
 | ||||
| import { IonicModule, IonicRouteStrategy } from '@ionic/angular'; | ||||
| 
 | ||||
| import { AppComponent } from './app.component'; | ||||
| import { AppRoutingModule } from './app-routing.module'; | ||||
| 
 | ||||
| @NgModule({ | ||||
|     declarations: [AppComponent], | ||||
|     entryComponents: [], | ||||
|     imports: [BrowserModule, IonicModule.forRoot(), AppRoutingModule], | ||||
|     providers: [ | ||||
|         { provide: RouteReuseStrategy, useClass: IonicRouteStrategy } | ||||
|     ], | ||||
|     bootstrap: [AppComponent], | ||||
| }) | ||||
| export class AppModule {} | ||||
							
								
								
									
										
											BIN
										
									
								
								src/assets/icon/favicon.ico
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								src/assets/icon/favicon.ico
									
									
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							| After Width: | Height: | Size: 103 KiB | 
							
								
								
									
										17
									
								
								src/environments/environment.prod.ts
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										17
									
								
								src/environments/environment.prod.ts
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,17 @@ | ||||
| // (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.
 | ||||
| 
 | ||||
| export const environment = { | ||||
|     production: true, | ||||
| }; | ||||
							
								
								
									
										30
									
								
								src/environments/environment.ts
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										30
									
								
								src/environments/environment.ts
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,30 @@ | ||||
| // (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.
 | ||||
| 
 | ||||
| // This file can be replaced during build by using the `fileReplacements` array.
 | ||||
| // `ng build --prod` replaces `environment.ts` with `environment.prod.ts`.
 | ||||
| // The list of file replacements can be found in `angular.json`.
 | ||||
| 
 | ||||
| export const environment = { | ||||
|     production: false, | ||||
| }; | ||||
| 
 | ||||
| /* | ||||
|  * For easier debugging in development mode, you can import the following file | ||||
|  * to ignore zone related error stack frames such as `zone.run`, `zoneDelegate.invokeTask`. | ||||
|  * | ||||
|  * This import should be commented out in production mode because it will have a negative impact | ||||
|  * on performance if an error is thrown. | ||||
|  */ | ||||
| // import 'zone.js/dist/zone-error';  // Included with Angular CLI.
 | ||||
							
								
								
									
										26
									
								
								src/global.scss
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										26
									
								
								src/global.scss
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,26 @@ | ||||
| /* | ||||
|  * App Global CSS | ||||
|  * ---------------------------------------------------------------------------- | ||||
|  * Put style rules here that you want to apply globally. These styles are for | ||||
|  * the entire app and not just one component. Additionally, this file can be | ||||
|  * used as an entry point to import other CSS/Sass files to be included in the | ||||
|  * output CSS. | ||||
|  * For more information on global stylesheets, visit the documentation: | ||||
|  * https://ionicframework.com/docs/layout/global-stylesheets | ||||
|  */ | ||||
| 
 | ||||
| /* Core CSS required for Ionic components to work properly */ | ||||
| @import "~@ionic/angular/css/core.css"; | ||||
| 
 | ||||
| /* Basic CSS for apps built with Ionic */ | ||||
| @import "~@ionic/angular/css/normalize.css"; | ||||
| @import "~@ionic/angular/css/structure.css"; | ||||
| @import "~@ionic/angular/css/typography.css"; | ||||
| @import '~@ionic/angular/css/display.css'; | ||||
| 
 | ||||
| /* Optional CSS utils that can be commented out */ | ||||
| @import "~@ionic/angular/css/padding.css"; | ||||
| @import "~@ionic/angular/css/float-elements.css"; | ||||
| @import "~@ionic/angular/css/text-alignment.css"; | ||||
| @import "~@ionic/angular/css/text-transformation.css"; | ||||
| @import "~@ionic/angular/css/flex-utils.css"; | ||||
							
								
								
									
										26
									
								
								src/index.html
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										26
									
								
								src/index.html
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,26 @@ | ||||
| <!DOCTYPE html> | ||||
| <html lang="en"> | ||||
| 
 | ||||
| <head> | ||||
|     <meta charset="utf-8" /> | ||||
|     <title>Ionic App</title> | ||||
| 
 | ||||
|     <base href="/" /> | ||||
| 
 | ||||
|     <meta name="color-scheme" content="light dark" /> | ||||
|     <meta name="viewport" content="viewport-fit=cover, width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=no" /> | ||||
|     <meta name="format-detection" content="telephone=no" /> | ||||
|     <meta name="msapplication-tap-highlight" content="no" /> | ||||
| 
 | ||||
|     <link rel="icon" type="image/png" href="assets/icon/favicon.png" /> | ||||
| 
 | ||||
|     <!-- add to homescreen for ios --> | ||||
|     <meta name="apple-mobile-web-app-capable" content="yes" /> | ||||
|     <meta name="apple-mobile-web-app-status-bar-style" content="black" /> | ||||
| </head> | ||||
| 
 | ||||
| <body> | ||||
|     <app-root></app-root> | ||||
| </body> | ||||
| 
 | ||||
| </html> | ||||
							
								
								
									
										26
									
								
								src/main.ts
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										26
									
								
								src/main.ts
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,26 @@ | ||||
| // (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 { enableProdMode } from '@angular/core'; | ||||
| import { platformBrowserDynamic } from '@angular/platform-browser-dynamic'; | ||||
| 
 | ||||
| import { AppModule } from './app/app.module'; | ||||
| import { environment } from './environments/environment'; | ||||
| 
 | ||||
| if (environment.production) { | ||||
|     enableProdMode(); | ||||
| } | ||||
| 
 | ||||
| platformBrowserDynamic().bootstrapModule(AppModule) | ||||
|   .catch(err => console.log(err)); | ||||
							
								
								
									
										80
									
								
								src/polyfills.ts
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										80
									
								
								src/polyfills.ts
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,80 @@ | ||||
| // (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.
 | ||||
| 
 | ||||
| /** | ||||
|  * This file includes polyfills needed by Angular and is loaded before the app. | ||||
|  * You can add your own extra polyfills to this file. | ||||
|  * | ||||
|  * This file is divided into 2 sections: | ||||
|  *   1. Browser polyfills. These are applied before loading ZoneJS and are sorted by browsers. | ||||
|  *   2. Application imports. Files imported after ZoneJS that should be loaded before your main | ||||
|  *      file. | ||||
|  * | ||||
|  * The current setup is for so-called "evergreen" browsers; the last versions of browsers that | ||||
|  * automatically update themselves. This includes Safari >= 10, Chrome >= 55 (including Opera), | ||||
|  * Edge >= 13 on the desktop, and iOS 10 and Chrome on mobile. | ||||
|  * | ||||
|  * Learn more in https://angular.io/guide/browser-support
 | ||||
|  */ | ||||
| 
 | ||||
| /*************************************************************************************************** | ||||
|  * BROWSER POLYFILLS | ||||
|  */ | ||||
| 
 | ||||
| /** IE10 and IE11 requires the following for NgClass support on SVG elements */ | ||||
| // import 'classlist.js';  // Run `npm install --save classlist.js`.
 | ||||
| 
 | ||||
| /** | ||||
|  * Web Animations `@angular/platform-browser/animations` | ||||
|  * Only required if AnimationBuilder is used within the application and using IE/Edge or Safari. | ||||
|  * Standard animation support in Angular DOES NOT require any polyfills (as of Angular 6.0). | ||||
|  */ | ||||
| // import 'web-animations-js';  // Run `npm install --save web-animations-js`.
 | ||||
| 
 | ||||
| /** | ||||
|  * By default, zone.js will patch all possible macroTask and DomEvents | ||||
|  * user can disable parts of macroTask/DomEvents patch by setting following flags | ||||
|  * because those flags need to be set before `zone.js` being loaded, and webpack | ||||
|  * will put import in the top of bundle, so user need to create a separate file | ||||
|  * in this directory (for example: zone-flags.ts), and put the following flags | ||||
|  * into that file, and then add the following code before importing zone.js. | ||||
|  * import './zone-flags.ts'; | ||||
|  * | ||||
|  * The flags allowed in zone-flags.ts are listed here. | ||||
|  * | ||||
|  * The following flags will work for all browsers. | ||||
|  * | ||||
|  * (window as any).__Zone_disable_requestAnimationFrame = true; // disable patch requestAnimationFrame
 | ||||
|  * (window as any).__Zone_disable_on_property = true; // disable patch onProperty such as onclick
 | ||||
|  * (window as any).__zone_symbol__BLACK_LISTED_EVENTS = ['scroll', 'mousemove']; // disable patch specified eventNames
 | ||||
|  * | ||||
|  *  in IE/Edge developer tools, the addEventListener will also be wrapped by zone.js | ||||
|  *  with the following flag, it will bypass `zone.js` patch for IE/Edge | ||||
|  * | ||||
|  *  (window as any).__Zone_enable_cross_context_check = true; | ||||
|  * | ||||
|  */ | ||||
| 
 | ||||
| import './zone-flags'; | ||||
| 
 | ||||
| /*************************************************************************************************** | ||||
|  * Zone JS is required by default for Angular itself. | ||||
|  */ | ||||
| 
 | ||||
| import 'zone.js/dist/zone';  // Included with Angular CLI.
 | ||||
| 
 | ||||
| 
 | ||||
| /*************************************************************************************************** | ||||
|  * APPLICATION IMPORTS | ||||
|  */ | ||||
							
								
								
									
										133
									
								
								src/theme/variables.scss
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										133
									
								
								src/theme/variables.scss
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,133 @@ | ||||
| // Ionic Variables and Theming. For more info, please see: | ||||
| // http://ionicframework.com/docs/theming/ | ||||
| 
 | ||||
| /** Ionic CSS Variables **/ | ||||
| :root { | ||||
|   --ion-color-primary: var(--bma-core-color, #f98012); | ||||
|   --ion-color-primary-rgb: 249,128,18; | ||||
|   --ion-color-primary-contrast: #ffffff; | ||||
|   --ion-color-primary-contrast-rgb: 255,255,255; | ||||
|   --ion-color-primary-shade: #db7110; | ||||
|   --ion-color-primary-tint: #fa8d2a; | ||||
| 
 | ||||
|   --ion-color-secondary: #0064d2; | ||||
|   --ion-color-secondary-rgb: 0,100,210; | ||||
|   --ion-color-secondary-contrast: #ffffff; | ||||
|   --ion-color-secondary-contrast-rgb: 255,255,255; | ||||
|   --ion-color-secondary-shade: #0058b9; | ||||
|   --ion-color-secondary-tint: #1a74d7; | ||||
| 
 | ||||
|   --ion-color-tertiary: #007982; | ||||
|   --ion-color-tertiary-rgb: 0,121,130; | ||||
|   --ion-color-tertiary-contrast: #ffffff; | ||||
|   --ion-color-tertiary-contrast-rgb: 255,255,255; | ||||
|   --ion-color-tertiary-shade: #006a72; | ||||
|   --ion-color-tertiary-tint: #1a868f; | ||||
| 
 | ||||
|   --ion-color-success: #5e8100; | ||||
|   --ion-color-success-rgb: 94,129,0; | ||||
|   --ion-color-success-contrast: #ffffff; | ||||
|   --ion-color-success-contrast-rgb: 255,255,255; | ||||
|   --ion-color-success-shade: #537200; | ||||
|   --ion-color-success-tint: #6e8e1a; | ||||
| 
 | ||||
|   --ion-color-warning: #fbad1a; | ||||
|   --ion-color-warning-rgb: 251,173,26; | ||||
|   --ion-color-warning-contrast: #000000; | ||||
|   --ion-color-warning-contrast-rgb: 0,0,0; | ||||
|   --ion-color-warning-shade: #dd9817; | ||||
|   --ion-color-warning-tint: #fbb531; | ||||
| 
 | ||||
|   --ion-color-danger: #cb3d4d; | ||||
|   --ion-color-danger-rgb: 203,61,77; | ||||
|   --ion-color-danger-contrast: #ffffff; | ||||
|   --ion-color-danger-contrast-rgb: 255,255,255; | ||||
|   --ion-color-danger-shade: #b33644; | ||||
|   --ion-color-danger-tint: #d0505f; | ||||
| 
 | ||||
|   --ion-color-dark: #3a3a3a; | ||||
|   --ion-color-dark-rgb: 58,58,58; | ||||
|   --ion-color-dark-contrast: #ffffff; | ||||
|   --ion-color-dark-contrast-rgb: 255,255,255; | ||||
|   --ion-color-dark-shade: #333333; | ||||
|   --ion-color-dark-tint: #4e4e4e; | ||||
| 
 | ||||
|   --ion-color-medium: #9e9e9e; | ||||
|   --ion-color-medium-rgb: 158,158,158; | ||||
|   --ion-color-medium-contrast: #000000; | ||||
|   --ion-color-medium-contrast-rgb: 0,0,0; | ||||
|   --ion-color-medium-shade: #8b8b8b; | ||||
|   --ion-color-medium-tint: #a8a8a8; | ||||
| 
 | ||||
|   --ion-color-light: #f5f5f5; | ||||
|   --ion-color-light-rgb: 245,245,245; | ||||
|   --ion-color-light-contrast: #000000; | ||||
|   --ion-color-light-contrast-rgb: 0,0,0; | ||||
|   --ion-color-light-shade: #d8d8d8; | ||||
|   --ion-color-light-tint: #f6f6f6; | ||||
| 
 | ||||
|   ion-content { | ||||
|     --background: #e9e9e9; | ||||
|   } | ||||
| 
 | ||||
|   --ion-background-color-rgb: 233,233,233; | ||||
| 
 | ||||
|   --ion-text-color: #3a3a3a; | ||||
|   --ion-text-color-rgb: 58,58,58; | ||||
| 
 | ||||
|   ion-tab-bar { | ||||
|     --background: #626262; | ||||
|     --color: #ffffff; | ||||
|   } | ||||
| 
 | ||||
| 
 | ||||
|   ion-toolbar { | ||||
|     --color: var(--ion-color-primary-contrast); | ||||
|     --background: var(--ion-color-primary); | ||||
|   } | ||||
| } | ||||
| 
 | ||||
| /* | ||||
|  * Dark Theme | ||||
|  * ------------------------------------------- | ||||
|  */ | ||||
| :root body.dark { | ||||
|   --ion-background-color: #3a3a3a; | ||||
|   --ion-background-color-rgb: 18,18,18; | ||||
| 
 | ||||
|   --ion-text-color: #ffffff; | ||||
|   --ion-text-color-rgb: 255,255,255; | ||||
| 
 | ||||
|   --ion-border-color: #3f3f3f; | ||||
| 
 | ||||
|   --ion-color-step-50: #1e1e1e; | ||||
|   --ion-color-step-100: #2a2a2a; | ||||
|   --ion-color-step-150: #363636; | ||||
|   --ion-color-step-200: #414141; | ||||
|   --ion-color-step-250: #4d4d4d; | ||||
|   --ion-color-step-300: #595959; | ||||
|   --ion-color-step-350: #656565; | ||||
|   --ion-color-step-400: #717171; | ||||
|   --ion-color-step-450: #7d7d7d; | ||||
|   --ion-color-step-500: #898989; | ||||
|   --ion-color-step-550: #949494; | ||||
|   --ion-color-step-600: #a0a0a0; | ||||
|   --ion-color-step-650: #acacac; | ||||
|   --ion-color-step-700: #b8b8b8; | ||||
|   --ion-color-step-750: #c4c4c4; | ||||
|   --ion-color-step-800: #d0d0d0; | ||||
|   --ion-color-step-850: #dbdbdb; | ||||
|   --ion-color-step-900: #e7e7e7; | ||||
|   --ion-color-step-950: #f3f3f3; | ||||
| 
 | ||||
|   --ion-tab-bar-background: #1f1f1f; | ||||
| 
 | ||||
| 
 | ||||
|   --ion-item-background: #1e1e1e; | ||||
| 
 | ||||
|   --ion-card-background: #1c1c1d; | ||||
| 
 | ||||
|   ion-content { | ||||
|     --background: var(--ion-background-color); | ||||
|   } | ||||
| } | ||||
							
								
								
									
										19
									
								
								src/zone-flags.ts
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										19
									
								
								src/zone-flags.ts
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,19 @@ | ||||
| // (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.
 | ||||
| 
 | ||||
| /** | ||||
|  * Prevents Angular change detection from | ||||
|  * running with certain Web Component callbacks | ||||
|  */ | ||||
| (window as any).__Zone_disable_customElements = true; | ||||
							
								
								
									
										18
									
								
								tsconfig.app.json
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										18
									
								
								tsconfig.app.json
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,18 @@ | ||||
| { | ||||
|   "extends": "./tsconfig.json", | ||||
|   "compilerOptions": { | ||||
|     "outDir": "./out-tsc/app", | ||||
|     "types": [] | ||||
|   }, | ||||
|   "files": [ | ||||
|     "src/main.ts", | ||||
|     "src/polyfills.ts" | ||||
|   ], | ||||
|   "include": [ | ||||
|     "src/**/*.ts", | ||||
|     "src/**/*.d.ts" | ||||
|   ], | ||||
|   "exclude": [ | ||||
|     "src/**/*.spec.ts" | ||||
|   ] | ||||
| } | ||||
							
								
								
									
										23
									
								
								tsconfig.json
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										23
									
								
								tsconfig.json
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,23 @@ | ||||
| { | ||||
|   "compileOnSave": false, | ||||
|   "compilerOptions": { | ||||
|     "baseUrl": "./", | ||||
|     "outDir": "./dist/out-tsc", | ||||
|     "sourceMap": true, | ||||
|     "declaration": false, | ||||
|     "downlevelIteration": true, | ||||
|     "experimentalDecorators": true, | ||||
|     "module": "esnext", | ||||
|     "moduleResolution": "node", | ||||
|     "importHelpers": true, | ||||
|     "target": "es2015", | ||||
|     "lib": [ | ||||
|       "es2018", | ||||
|       "dom" | ||||
|     ] | ||||
|   }, | ||||
|   "angularCompilerOptions": { | ||||
|     "fullTemplateTypeCheck": true, | ||||
|     "strictInjectionParameters": true | ||||
|   } | ||||
| } | ||||
							
								
								
									
										18
									
								
								tsconfig.spec.json
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										18
									
								
								tsconfig.spec.json
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,18 @@ | ||||
| { | ||||
|   "extends": "./tsconfig.json", | ||||
|   "compilerOptions": { | ||||
|     "outDir": "./out-tsc/spec", | ||||
|     "types": [ | ||||
|       "jasmine", | ||||
|       "node" | ||||
|     ] | ||||
|   }, | ||||
|   "files": [ | ||||
|     "src/test.ts", | ||||
|     "src/polyfills.ts" | ||||
|   ], | ||||
|   "include": [ | ||||
|     "src/**/*.spec.ts", | ||||
|     "src/**/*.d.ts" | ||||
|   ] | ||||
| } | ||||
							
								
								
									
										149
									
								
								tslint.json
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										149
									
								
								tslint.json
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,149 @@ | ||||
| { | ||||
|   "extends": "tslint:recommended", | ||||
|   "rules": { | ||||
|     "align": { | ||||
|       "options": [ | ||||
|         "parameters", | ||||
|         "statements" | ||||
|       ] | ||||
|     }, | ||||
|     "array-type": false, | ||||
|     "arrow-return-shorthand": true, | ||||
|     "curly": true, | ||||
|     "deprecation": { | ||||
|       "severity": "warning" | ||||
|     }, | ||||
|     "component-class-suffix": [true, "Page", "Component"], | ||||
|     "contextual-lifecycle": true, | ||||
|     "directive-class-suffix": true, | ||||
|     "directive-selector": [ | ||||
|       true, | ||||
|       "attribute", | ||||
|       "app", | ||||
|       "camelCase" | ||||
|     ], | ||||
|     "component-selector": [ | ||||
|       true, | ||||
|       "element", | ||||
|       "app", | ||||
|       "kebab-case" | ||||
|     ], | ||||
|     "eofline": true, | ||||
|     "import-blacklist": [ | ||||
|       true, | ||||
|       "rxjs/Rx" | ||||
|     ], | ||||
|     "import-spacing": true, | ||||
|     "indent": { | ||||
|       "options": [ | ||||
|         "spaces" | ||||
|       ] | ||||
|     }, | ||||
|     "max-classes-per-file": false, | ||||
|     "max-line-length": [ | ||||
|       true, | ||||
|       140 | ||||
|     ], | ||||
|     "member-ordering": [ | ||||
|       true, | ||||
|       { | ||||
|         "order": [ | ||||
|           "static-field", | ||||
|           "instance-field", | ||||
|           "static-method", | ||||
|           "instance-method" | ||||
|         ] | ||||
|       } | ||||
|     ], | ||||
|     "no-console": [ | ||||
|       true, | ||||
|       "debug", | ||||
|       "info", | ||||
|       "time", | ||||
|       "timeEnd", | ||||
|       "trace" | ||||
|     ], | ||||
|     "no-empty": false, | ||||
|     "no-inferrable-types": [ | ||||
|       true, | ||||
|       "ignore-params" | ||||
|     ], | ||||
|     "no-non-null-assertion": true, | ||||
|     "no-redundant-jsdoc": true, | ||||
|     "no-switch-case-fall-through": true, | ||||
|     "no-var-requires": false, | ||||
|     "object-literal-key-quotes": [ | ||||
|       true, | ||||
|       "as-needed" | ||||
|     ], | ||||
|     "quotemark": [ | ||||
|       true, | ||||
|       "single" | ||||
|     ], | ||||
|     "semicolon": { | ||||
|       "options": [ | ||||
|         "always" | ||||
|       ] | ||||
|     }, | ||||
|     "space-before-function-paren": { | ||||
|       "options": { | ||||
|         "anonymous": "never", | ||||
|         "asyncArrow": "always", | ||||
|         "constructor": "never", | ||||
|         "method": "never", | ||||
|         "named": "never" | ||||
|       } | ||||
|     }, | ||||
|     "typedef-whitespace": { | ||||
|       "options": [ | ||||
|         { | ||||
|           "call-signature": "nospace", | ||||
|           "index-signature": "nospace", | ||||
|           "parameter": "nospace", | ||||
|           "property-declaration": "nospace", | ||||
|           "variable-declaration": "nospace" | ||||
|         }, | ||||
|         { | ||||
|           "call-signature": "onespace", | ||||
|           "index-signature": "onespace", | ||||
|           "parameter": "onespace", | ||||
|           "property-declaration": "onespace", | ||||
|           "variable-declaration": "onespace" | ||||
|         } | ||||
|       ] | ||||
|     }, | ||||
|     "variable-name": { | ||||
|       "options": [ | ||||
|         "ban-keywords", | ||||
|         "check-format", | ||||
|         "allow-pascal-case" | ||||
|       ] | ||||
|     }, | ||||
|     "whitespace": { | ||||
|       "options": [ | ||||
|         "check-branch", | ||||
|         "check-decl", | ||||
|         "check-operator", | ||||
|         "check-separator", | ||||
|         "check-type", | ||||
|         "check-typecast" | ||||
|       ] | ||||
|     }, | ||||
|     "no-conflicting-lifecycle": true, | ||||
|     "no-host-metadata-property": true, | ||||
|     "no-input-rename": true, | ||||
|     "no-inputs-metadata-property": true, | ||||
|     "no-output-native": true, | ||||
|     "no-output-on-prefix": true, | ||||
|     "no-output-rename": true, | ||||
|     "no-outputs-metadata-property": true, | ||||
|     "template-banana-in-box": true, | ||||
|     "template-no-negated-async": true, | ||||
|     "use-lifecycle-interface": true, | ||||
|     "use-pipe-transform-interface": true, | ||||
|     "object-literal-sort-keys": false | ||||
|   }, | ||||
|   "rulesDirectory": [ | ||||
|     "codelyzer" | ||||
|   ] | ||||
| } | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user