{"version":3,"sources":["./$_lazy_route_resource lazy namespace object","./node_modules/@ionic/core/dist/esm-es5 lazy ^\\.\\/.*\\.entry\\.js$ namespace object","./src/app/app.component.html","./src/app/dialogs/edit-object-properties/edit-object-properties.page.html","./src/app/dialogs/edit-team/edit-team.page.html","./src/app/dialogs/edit-user/edit-user.page.html","./src/app/app-routing.module.ts","./src/app/app.component.scss","./src/app/app.component.ts","./src/app/app.module.ts","./src/app/dialogs/edit-object-properties/edit-object-properties.page.scss","./src/app/dialogs/edit-object-properties/edit-object-properties.page.ts","./src/app/dialogs/edit-team/edit-team.page.scss","./src/app/dialogs/edit-team/edit-team.page.ts","./src/app/dialogs/edit-user/edit-user.page.scss","./src/app/dialogs/edit-user/edit-user.page.ts","./src/app/services/authentication-api/authentication-api.service.ts","./src/app/services/cricket-club-api/app-helper.worker.ts","./src/app/services/cricket-club-api/app.config.model.ts","./src/app/services/cricket-club-api/cricket-club-api.model.ts","./src/app/services/cricket-club-api/cricket-club-api.service.ts","./src/app/services/cricket-club-api/cricket-club-storage.helper.ts","./src/app/services/cricket-club-api/notifications.helper.ts","./src/app/services/mailgun-api/mailgun-api.service.ts","./src/app/services/platform-api/blob-platform-api.service.ts","./src/app/services/platform-api/platform-configuration-api.service.ts","./src/app/services/platform-api/table-platform-api.service.ts","./src/app/services/service-api-helper/azure-storage-broker.worker.ts","./src/app/services/service-api-helper/service-api-debug-log.ts","./src/app/services/service-api-helper/service-api-helper.service.ts","./src/app/services/service-api-helper/service-api-xml-dom-helper.worker.ts","./src/app/services/service-api-helper/ux-api-helper.service.ts","./src/environments/environment.ts","./src/main.ts"],"names":[],"mappings":";;;;;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,EAAE;AACF;AACA,4CAA4C,WAAW;AACvD;AACA;AACA,wE;;;;;;;;;;;ACZA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;;AAEA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","file":"main-es5.js","sourcesContent":["function webpackEmptyAsyncContext(req) {\n\t// Here Promise.resolve().then() is used instead of new Promise() to prevent\n\t// uncaught exception popping up in devtools\n\treturn Promise.resolve().then(function() {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t});\n}\nwebpackEmptyAsyncContext.keys = function() { return []; };\nwebpackEmptyAsyncContext.resolve = webpackEmptyAsyncContext;\nmodule.exports = webpackEmptyAsyncContext;\nwebpackEmptyAsyncContext.id = \"./$$_lazy_route_resource lazy recursive\";","var map = {\n\t\"./ion-action-sheet.entry.js\": [\n\t\t\"./node_modules/@ionic/core/dist/esm-es5/ion-action-sheet.entry.js\",\n\t\t\"common\",\n\t\t0\n\t],\n\t\"./ion-alert.entry.js\": [\n\t\t\"./node_modules/@ionic/core/dist/esm-es5/ion-alert.entry.js\",\n\t\t\"common\",\n\t\t1\n\t],\n\t\"./ion-app_8.entry.js\": [\n\t\t\"./node_modules/@ionic/core/dist/esm-es5/ion-app_8.entry.js\",\n\t\t\"common\",\n\t\t2\n\t],\n\t\"./ion-avatar_3.entry.js\": [\n\t\t\"./node_modules/@ionic/core/dist/esm-es5/ion-avatar_3.entry.js\",\n\t\t\"common\",\n\t\t3\n\t],\n\t\"./ion-back-button.entry.js\": [\n\t\t\"./node_modules/@ionic/core/dist/esm-es5/ion-back-button.entry.js\",\n\t\t\"common\",\n\t\t4\n\t],\n\t\"./ion-backdrop.entry.js\": [\n\t\t\"./node_modules/@ionic/core/dist/esm-es5/ion-backdrop.entry.js\",\n\t\t5\n\t],\n\t\"./ion-button_2.entry.js\": [\n\t\t\"./node_modules/@ionic/core/dist/esm-es5/ion-button_2.entry.js\",\n\t\t\"common\",\n\t\t6\n\t],\n\t\"./ion-card_5.entry.js\": [\n\t\t\"./node_modules/@ionic/core/dist/esm-es5/ion-card_5.entry.js\",\n\t\t\"common\",\n\t\t7\n\t],\n\t\"./ion-checkbox.entry.js\": [\n\t\t\"./node_modules/@ionic/core/dist/esm-es5/ion-checkbox.entry.js\",\n\t\t\"common\",\n\t\t8\n\t],\n\t\"./ion-chip.entry.js\": [\n\t\t\"./node_modules/@ionic/core/dist/esm-es5/ion-chip.entry.js\",\n\t\t\"common\",\n\t\t9\n\t],\n\t\"./ion-col_3.entry.js\": [\n\t\t\"./node_modules/@ionic/core/dist/esm-es5/ion-col_3.entry.js\",\n\t\t10\n\t],\n\t\"./ion-datetime_3.entry.js\": [\n\t\t\"./node_modules/@ionic/core/dist/esm-es5/ion-datetime_3.entry.js\",\n\t\t\"common\",\n\t\t11\n\t],\n\t\"./ion-fab_3.entry.js\": [\n\t\t\"./node_modules/@ionic/core/dist/esm-es5/ion-fab_3.entry.js\",\n\t\t\"common\",\n\t\t12\n\t],\n\t\"./ion-img.entry.js\": [\n\t\t\"./node_modules/@ionic/core/dist/esm-es5/ion-img.entry.js\",\n\t\t13\n\t],\n\t\"./ion-infinite-scroll_2.entry.js\": [\n\t\t\"./node_modules/@ionic/core/dist/esm-es5/ion-infinite-scroll_2.entry.js\",\n\t\t14\n\t],\n\t\"./ion-input.entry.js\": [\n\t\t\"./node_modules/@ionic/core/dist/esm-es5/ion-input.entry.js\",\n\t\t\"common\",\n\t\t15\n\t],\n\t\"./ion-item-option_3.entry.js\": [\n\t\t\"./node_modules/@ionic/core/dist/esm-es5/ion-item-option_3.entry.js\",\n\t\t\"common\",\n\t\t16\n\t],\n\t\"./ion-item_8.entry.js\": [\n\t\t\"./node_modules/@ionic/core/dist/esm-es5/ion-item_8.entry.js\",\n\t\t\"common\",\n\t\t17\n\t],\n\t\"./ion-loading.entry.js\": [\n\t\t\"./node_modules/@ionic/core/dist/esm-es5/ion-loading.entry.js\",\n\t\t\"common\",\n\t\t18\n\t],\n\t\"./ion-menu_3.entry.js\": [\n\t\t\"./node_modules/@ionic/core/dist/esm-es5/ion-menu_3.entry.js\",\n\t\t\"common\",\n\t\t19\n\t],\n\t\"./ion-modal.entry.js\": [\n\t\t\"./node_modules/@ionic/core/dist/esm-es5/ion-modal.entry.js\",\n\t\t\"common\",\n\t\t20\n\t],\n\t\"./ion-nav_2.entry.js\": [\n\t\t\"./node_modules/@ionic/core/dist/esm-es5/ion-nav_2.entry.js\",\n\t\t\"common\",\n\t\t21\n\t],\n\t\"./ion-popover.entry.js\": [\n\t\t\"./node_modules/@ionic/core/dist/esm-es5/ion-popover.entry.js\",\n\t\t\"common\",\n\t\t22\n\t],\n\t\"./ion-progress-bar.entry.js\": [\n\t\t\"./node_modules/@ionic/core/dist/esm-es5/ion-progress-bar.entry.js\",\n\t\t\"common\",\n\t\t23\n\t],\n\t\"./ion-radio_2.entry.js\": [\n\t\t\"./node_modules/@ionic/core/dist/esm-es5/ion-radio_2.entry.js\",\n\t\t\"common\",\n\t\t24\n\t],\n\t\"./ion-range.entry.js\": [\n\t\t\"./node_modules/@ionic/core/dist/esm-es5/ion-range.entry.js\",\n\t\t\"common\",\n\t\t25\n\t],\n\t\"./ion-refresher_2.entry.js\": [\n\t\t\"./node_modules/@ionic/core/dist/esm-es5/ion-refresher_2.entry.js\",\n\t\t\"common\",\n\t\t26\n\t],\n\t\"./ion-reorder_2.entry.js\": [\n\t\t\"./node_modules/@ionic/core/dist/esm-es5/ion-reorder_2.entry.js\",\n\t\t\"common\",\n\t\t27\n\t],\n\t\"./ion-ripple-effect.entry.js\": [\n\t\t\"./node_modules/@ionic/core/dist/esm-es5/ion-ripple-effect.entry.js\",\n\t\t28\n\t],\n\t\"./ion-route_4.entry.js\": [\n\t\t\"./node_modules/@ionic/core/dist/esm-es5/ion-route_4.entry.js\",\n\t\t\"common\",\n\t\t29\n\t],\n\t\"./ion-searchbar.entry.js\": [\n\t\t\"./node_modules/@ionic/core/dist/esm-es5/ion-searchbar.entry.js\",\n\t\t\"common\",\n\t\t30\n\t],\n\t\"./ion-segment_2.entry.js\": [\n\t\t\"./node_modules/@ionic/core/dist/esm-es5/ion-segment_2.entry.js\",\n\t\t\"common\",\n\t\t31\n\t],\n\t\"./ion-select_3.entry.js\": [\n\t\t\"./node_modules/@ionic/core/dist/esm-es5/ion-select_3.entry.js\",\n\t\t\"common\",\n\t\t32\n\t],\n\t\"./ion-slide_2.entry.js\": [\n\t\t\"./node_modules/@ionic/core/dist/esm-es5/ion-slide_2.entry.js\",\n\t\t33\n\t],\n\t\"./ion-spinner.entry.js\": [\n\t\t\"./node_modules/@ionic/core/dist/esm-es5/ion-spinner.entry.js\",\n\t\t\"common\",\n\t\t34\n\t],\n\t\"./ion-split-pane.entry.js\": [\n\t\t\"./node_modules/@ionic/core/dist/esm-es5/ion-split-pane.entry.js\",\n\t\t35\n\t],\n\t\"./ion-tab-bar_2.entry.js\": [\n\t\t\"./node_modules/@ionic/core/dist/esm-es5/ion-tab-bar_2.entry.js\",\n\t\t\"common\",\n\t\t36\n\t],\n\t\"./ion-tab_2.entry.js\": [\n\t\t\"./node_modules/@ionic/core/dist/esm-es5/ion-tab_2.entry.js\",\n\t\t\"common\",\n\t\t37\n\t],\n\t\"./ion-text.entry.js\": [\n\t\t\"./node_modules/@ionic/core/dist/esm-es5/ion-text.entry.js\",\n\t\t\"common\",\n\t\t38\n\t],\n\t\"./ion-textarea.entry.js\": [\n\t\t\"./node_modules/@ionic/core/dist/esm-es5/ion-textarea.entry.js\",\n\t\t\"common\",\n\t\t39\n\t],\n\t\"./ion-toast.entry.js\": [\n\t\t\"./node_modules/@ionic/core/dist/esm-es5/ion-toast.entry.js\",\n\t\t\"common\",\n\t\t40\n\t],\n\t\"./ion-toggle.entry.js\": [\n\t\t\"./node_modules/@ionic/core/dist/esm-es5/ion-toggle.entry.js\",\n\t\t\"common\",\n\t\t41\n\t],\n\t\"./ion-virtual-scroll.entry.js\": [\n\t\t\"./node_modules/@ionic/core/dist/esm-es5/ion-virtual-scroll.entry.js\",\n\t\t42\n\t]\n};\nfunction webpackAsyncContext(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\treturn Promise.resolve().then(function() {\n\t\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\t\te.code = 'MODULE_NOT_FOUND';\n\t\t\tthrow e;\n\t\t});\n\t}\n\n\tvar ids = map[req], id = ids[0];\n\treturn Promise.all(ids.slice(1).map(__webpack_require__.e)).then(function() {\n\t\treturn __webpack_require__(id);\n\t});\n}\nwebpackAsyncContext.keys = function webpackAsyncContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackAsyncContext.id = \"./node_modules/@ionic/core/dist/esm-es5 lazy recursive ^\\\\.\\\\/.*\\\\.entry\\\\.js$\";\nmodule.exports = webpackAsyncContext;","module.exports = \"\\n \\n\\n\"","module.exports = \"\\n \\n {{config.dialogTitle}}\\n\\n \\n \\n \\n \\n \\n\\n \\n \\n \\n {{ok_button_text}}\\n \\n \\n \\n\\n\\n\\n\\n\\n \\n \\n \\n \\n {{g.title}}\\n \\n \\n\\n \\n {{f.label}}*\\n \\n \\n \\n \\n \\n\\n \\n \\n {{v.name}}\\n \\n \\n\\n \\n\\n \\n\\n \\n\\n\\n \\n\\n\\n\"","module.exports = \"\\n \\n {{dialogTitle}}\\n\\n \\n \\n \\n \\n \\n\\n \\n \\n \\n Save\\n \\n \\n \\n\\n\\n\\n\\n \\n \\n \\n \\n Final Team:\\n \\n \\n\\n \\n \\n {{u.user.firstName}} {{u.user.lastName}}\\n \\n \\n \\n\\n \\n The team for this fixture has not been finalized yet. If you are signed up for this match, you will\\n get an e-mail when the team is finalized. Or, you could check back later.\\n \\n \\n\\n\\n \\n \\n \\n \\n Select Players: {{getSelectedUsers().length}} selected\\n \\n \\n\\n \\n \\n \\n {{i+1}}) {{u.user.firstName}} {{u.user.lastName}}\\n \\n \\n\\n \\n \\n Select Roles\\n \\n \\n\\n \\n Captain\\n\\n \\n (None)\\n \\n {{u.user.firstName}} {{u.user.lastName}}\\n \\n \\n \\n\\n \\n Wicket Keeper\\n\\n \\n (None)\\n \\n {{u.user.firstName}} {{u.user.lastName}}\\n \\n \\n \\n\\n \\n \\n Options\\n \\n \\n\\n \\n \\n \\n Is Team Final\\n \\n \\n\\n \\n \\n \\n Upon Save, notify team via email\\n \\n \\n \\n \\n\\n\\n\"","module.exports = \"\\n \\n {{dialogTitle}}\\n\\n \\n \\n \\n \\n \\n\\n \\n \\n \\n Save\\n \\n \\n \\n\\n\\n\\n\\n \\n \\n \\n \\n Properties\\n \\n \\n\\n \\n {{f.label}}*:\\n \\n \\n\\n\\n \\n \\n Super User\\n \\n \\n\\n \\n \\n \\n Rights:\\n \\n \\n\\n \\n {{rightNames[i]}}\\n \\n\\n \\n \\n\\n \\n \\n \\n Fixtures this user is signed up for:\\n \\n \\n\\n \\n \\n {{formatDateToString(f.date)}}\\n {{f.opponent}}\\n \\n\\n \\n Sign Up\\n \\n \\n Sign Off\\n \\n\\n \\n\\n \\n\\n \\n\\n\\n\"","import { NgModule } from '@angular/core';\nimport { PreloadAllModules, RouterModule, Routes } from '@angular/router';\n\nconst routes: Routes = [\n {\n path: '',\n loadChildren: () => import('./tabs/tabs.module').then(m => m.TabsPageModule)\n },\n {\n path: 'edit-team',\n loadChildren: () => import('./dialogs/edit-team/edit-team.module').then( m => m.EditTeamPageModule)\n },\n {\n path: 'login',\n loadChildren: () => import('./pages/login/login.module').then( m => m.LoginPageModule)\n },\n {\n path: 'edit-user',\n loadChildren: () => import('./dialogs/edit-user/edit-user.module').then( m => m.EditUserPageModule)\n }\n];\n@NgModule({\n imports: [\n RouterModule.forRoot(routes, { preloadingStrategy: PreloadAllModules })\n ],\n exports: [RouterModule]\n})\nexport class AppRoutingModule {}\n","module.exports = \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL2FwcC5jb21wb25lbnQuc2NzcyJ9 */\"","import { Component } from '@angular/core';\n\nimport { Platform } from '@ionic/angular';\nimport { SplashScreen } from '@ionic-native/splash-screen/ngx';\nimport { StatusBar } from '@ionic-native/status-bar/ngx';\nimport { AppVariables } from './services/cricket-club-api/app.config.model';\n\n@Component({\n selector: 'app-root',\n templateUrl: 'app.component.html',\n styleUrls: ['app.component.scss']\n})\nexport class AppComponent {\n constructor(\n private platform: Platform,\n private splashScreen: SplashScreen,\n private statusBar: StatusBar\n ) {\n this.initializeApp();\n }\n\n initializeApp() {\n document.title = AppVariables.clubFullName;\n\n this.platform.ready().then(() => {\n this.statusBar.styleDefault();\n this.splashScreen.hide();\n });\n }\n}\n","import { NgModule } from '@angular/core';\nimport { BrowserModule } from '@angular/platform-browser';\nimport { HttpClientModule } from '@angular/common/http';\nimport { FormsModule } from '@angular/forms';\nimport { RouteReuseStrategy } from '@angular/router';\nimport { HashLocationStrategy, LocationStrategy } from '@angular/common';\n\nimport { IonicModule, IonicRouteStrategy } from '@ionic/angular';\nimport { SplashScreen } from '@ionic-native/splash-screen/ngx';\nimport { StatusBar } from '@ionic-native/status-bar/ngx';\n\nimport { AppRoutingModule } from './app-routing.module';\nimport { AppComponent } from './app.component';\nimport { IonicStorageModule } from '@ionic/storage';\n\nimport { EditObjectPropertiesPage } from './dialogs/edit-object-properties/edit-object-properties.page';\nimport { EditTeamPage } from './dialogs/edit-team/edit-team.page';\nimport { EditUserPage } from './dialogs/edit-user/edit-user.page';\n\n@NgModule({\n declarations: [AppComponent,\n EditObjectPropertiesPage,\n EditTeamPage,\n EditUserPage\n ],\n entryComponents: [\n EditObjectPropertiesPage,\n EditTeamPage,\n EditUserPage\n ],\n imports: [BrowserModule, IonicModule.forRoot(), AppRoutingModule,\n FormsModule,\n HttpClientModule,\n IonicStorageModule.forRoot({\n name: '__com_digix_pp_mobileapp',\n driverOrder: ['indexeddb', 'sqlite', 'websql']\n })\n ],\n providers: [\n StatusBar,\n SplashScreen,\n { provide: LocationStrategy, useClass: HashLocationStrategy },\n { provide: RouteReuseStrategy, useClass: IonicRouteStrategy }\n ],\n bootstrap: [AppComponent]\n})\nexport class AppModule {}\n","module.exports = \".item-field {\\n border: 1px solid #ddd;\\n /* Gray border */\\n border-radius: 8px;\\n /* Rounded border */\\n margin: 5px;\\n}\\n.item-field ion-label {\\n font-weight: bold;\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9Vc2Vycy9raGFucy9Eb2N1bWVudHMvR2l0SHViL2NvbS5kaWctaXguY3JpY2tldC1jbHViLm1vYmlsZS1hcHAvc3JjL2FwcC9kaWFsb2dzL2VkaXQtb2JqZWN0LXByb3BlcnRpZXMvZWRpdC1vYmplY3QtcHJvcGVydGllcy5wYWdlLnNjc3MiLCJzcmMvYXBwL2RpYWxvZ3MvZWRpdC1vYmplY3QtcHJvcGVydGllcy9lZGl0LW9iamVjdC1wcm9wZXJ0aWVzLnBhZ2Uuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQTtFQUNJLHNCQUFBO0VBQXdCLGdCQUFBO0VBQ3hCLGtCQUFBO0VBQXFCLG1CQUFBO0VBQ3JCLFdBQUE7QUNFSjtBREFJO0VBQ0ksaUJBQUE7QUNFUiIsImZpbGUiOiJzcmMvYXBwL2RpYWxvZ3MvZWRpdC1vYmplY3QtcHJvcGVydGllcy9lZGl0LW9iamVjdC1wcm9wZXJ0aWVzLnBhZ2Uuc2NzcyIsInNvdXJjZXNDb250ZW50IjpbIlxuLml0ZW0tZmllbGQge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNkZGQ7IC8qIEdyYXkgYm9yZGVyICovXG4gICAgYm9yZGVyLXJhZGl1czogOHB4OyAgLyogUm91bmRlZCBib3JkZXIgKi9cbiAgICBtYXJnaW46IDVweDtcblxuICAgIGlvbi1sYWJlbCB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIH1cbiAgfVxuXG4iLCIuaXRlbS1maWVsZCB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNkZGQ7XG4gIC8qIEdyYXkgYm9yZGVyICovXG4gIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgLyogUm91bmRlZCBib3JkZXIgKi9cbiAgbWFyZ2luOiA1cHg7XG59XG4uaXRlbS1maWVsZCBpb24tbGFiZWwge1xuICBmb250LXdlaWdodDogYm9sZDtcbn0iXX0= */\"","import { Component, OnInit, } from '@angular/core';\n\nimport { EditObjectPropertiesConfig, EditObjectPropertiesArray } from './edit-object-properties.model';\nimport { UxApiHelperService } from '../../services/service-api-helper/ux-api-helper.service';\n\n@Component({\n selector: 'app-edit-object-properties',\n templateUrl: './edit-object-properties.page.html',\n styleUrls: ['./edit-object-properties.page.scss'],\n})\nexport class EditObjectPropertiesPage implements OnInit {\n\n modified = false;\n config: EditObjectPropertiesConfig;\n data: object;\n initialized = false;\n commitIcon = 'checkmark-circle-outline';\n ok_button_text = 'Save';\n\n constructor(\n private ux: UxApiHelperService\n ) { }\n\n ngOnInit() {\n //console.log('config', this.config);\n\n for(let g of this.config.fieldGroups) {\n if(g.fields!=null) {\n for(let f of g.fields) {\n if(f.type==null) { f.type = 'text' };\n if(f.required==null) { f.required = false; }\n if(f.placeholder==null) { f.placeholder = '' }\n if(f.multiple==null) { f.multiple = false; }\n }\n }\n\n if(g.arrays!=null) {\n for(let a of g.arrays) {\n if(this.data[a.fieldName]==null) {\n this.data[a.fieldName]=[];\n }\n }\n }\n }\n\n if(this.config.ok_button_text!=null) {\n this.ok_button_text = this.config.ok_button_text;\n }\n\n this.modified = false;\n this.initialized = true;\n }\n\n async editObjectArray(a: EditObjectPropertiesArray, item: object) {\n let obj = {};\n if(item!=null) {\n obj = JSON.parse(JSON.stringify(item))\n }\n\n const data = await this.ux.showModalDialog(EditObjectPropertiesPage, {\n config: a.config,\n data: obj\n });\n\n if(data == null) {\n return;\n }\n\n //console.log('array', a);\n //console.log('data', data);\n const items = this.data[a.fieldName];\n if(item==null) {\n items.push(data);\n }\n else {\n const pos = items.indexOf(item);\n if(pos>=0) {\n items.splice(pos, 1, data);\n }\n }\n\n //console.log('object', this.data);\n this.modified = true;\n }\n\n async discardChanges() {\n if(this.modified) {\n await this.ux.confirm('Cancel changes', 'You have made changes that are not saved yet. Click OK to discard changes?', async () => {\n this.ux.dismissModalDialog(null);\n });\n }\n else {\n this.ux.dismissModalDialog(null);\n }\n }\n\n changed() {\n this.modified = true;\n }\n\n commitChanges() {\n this.ux.dismissModalDialog(this.data);\n }\n}\n","module.exports = \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL2RpYWxvZ3MvZWRpdC10ZWFtL2VkaXQtdGVhbS5wYWdlLnNjc3MifQ== */\"","import { Component, OnInit, AfterViewInit } from '@angular/core';\n\nimport { CricketClubApiService } from '../../services/cricket-club-api/cricket-club-api.service';\nimport { Fixture, User, Team } from '../../services/cricket-club-api/cricket-club-api.model';\nimport { NotificationHelper } from '../../services/cricket-club-api/notifications.helper';\nimport { MailgunApiService } from '../../services/mailgun-api/mailgun-api.service';\nimport { UxApiHelperService } from '../../services/service-api-helper/ux-api-helper.service';\nimport { AuthenticationService } from '../../services/authentication-api/authentication-api.service';\n\nexport interface SignedUpUser {\n selected: boolean;\n user: User;\n}\n\n@Component({\n selector: 'app-edit-team',\n templateUrl: './edit-team.page.html',\n styleUrls: ['./edit-team.page.scss'],\n})\nexport class EditTeamPage implements OnInit, AfterViewInit {\n\n editMode = false;\n dialogTitle = 'Edit Team';\n initialized = false;\n modified = false;\n signUps: SignedUpUser[];\n team: Team;\n notifyTeam = false;\n\n fixture: Fixture;\n currentUser: User;\n userCanModifyTeam: boolean;\n\n constructor(\n private cricketApi: CricketClubApiService,\n private mailApi: MailgunApiService,\n private auth_api: AuthenticationService,\n private ux: UxApiHelperService,\n ) { }\n\n ngOnInit() {\n }\n\n ngAfterViewInit() {\n this.initialize();\n }\n\n async initialize() {\n const loading = await this.ux.showLoading();\n\n try {\n this.team = {} as Team;\n\n if(this.fixture.teamId!=null) {\n try {\n this.team = await this.cricketApi.getTeam(this.fixture.teamId);\n }\n catch(err) {\n console.log('error in fetching team', err);\n }\n }\n if(this.team.selectedUserIdList==null) { this.team.selectedUserIdList=[]; }\n if(this.fixture.signedUserIdList==null) { this.fixture.signedUserIdList=[]; }\n\n const signUps: SignedUpUser[] = [];\n for(let i=this.fixture.signedUserIdList.length-1; i>=0; i--) {\n const id = this.fixture.signedUserIdList[i];\n let user = null;\n if(id!=null) {\n try {\n user = await this.cricketApi.getUser(id);\n }\n catch(err) {\n console.log('error in fetching user', err);\n this.fixture.signedUserIdList.splice(i, 1);\n }\n }\n\n if(user!=null) {\n const selected = this.team.selectedUserIdList.indexOf(id) >= 0;\n\n signUps.push({selected: selected, user: user});\n }\n }\n\n this.signUps = signUps.sort((a,b)=> {\n return (a.user.firstName+a.user.lastName).toLowerCase()>(b.user.firstName+b.user.lastName).toLowerCase() ? 1 : -1\n });\n\n this.dialogTitle = 'Team vs. ' + this.fixture.opponent;\n //console.log('state', this);\n\n //console.log('initialized!');\n this.editMode = this.userCanModifyTeam;\n\n this.initialized = true;\n }\n finally {\n loading.dismiss();\n }\n }\n\n async discardChanges() {\n if(this.modified) {\n await this.ux.confirm('Cancel changes', 'You have made changes that are not saved yet. Click OK to discard changes?', async () => {\n this.ux.dismissModalDialog(null);\n });\n }\n else {\n this.ux.dismissModalDialog(null);\n }\n\n }\n\n async commitChanges() {\n const loading = await this.ux.showLoading();\n\n try {\n this.team.selectedUserIdList = [];\n for(let u of this.signUps) {\n if(u.selected) {\n this.team.selectedUserIdList.push(u.user.id);\n }\n }\n const team = await this.cricketApi.storeTeam(this.team);\n //console.log('team', team);\n\n this.fixture.teamId = team.id;\n const fixture = await this.cricketApi.storeFixture(this.fixture);\n //console.log('fixture', fixture);\n\n if(this.notifyTeam && this.fixture.isTeamFinal) {\n const obj = new NotificationHelper(this.cricketApi, this.mailApi, this.auth_api);\n await obj.sendFinalTeamEmail(this.fixture, this.team, this.currentUser);\n\n await this.ux.presentAlert('Email notifications were successfully sent.');\n }\n\n this.ux.dismissModalDialog(fixture);\n }\n catch(err) {\n await this.ux.presentAlert('An unexpected error occured in the saving Team. Please try again in a few minutes or contact support.')\n throw err;\n }\n finally {\n loading.dismiss();\n }\n }\n\n changed() {\n this.modified = true;\n }\n\n getSelectedUsers(): SignedUpUser[] {\n return this.signUps.filter( u => u.selected==true );\n }\n\n}\n","module.exports = \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL2RpYWxvZ3MvZWRpdC11c2VyL2VkaXQtdXNlci5wYWdlLnNjc3MifQ== */\"","import { Component, OnInit } from '@angular/core';\n\nimport { CricketClubApiService } from '../../services/cricket-club-api/cricket-club-api.service';\nimport { Fixture, User, UserRightsEnum } from '../../services/cricket-club-api/cricket-club-api.model';\nimport { AppHelper } from '../../services/cricket-club-api/app-helper.worker';\nimport { UxApiHelperService } from '../../services/service-api-helper/ux-api-helper.service';\n\nimport { EditObjectPropertiesConfigField } from '../edit-object-properties/edit-object-properties.model';\n\n@Component({\n selector: 'app-edit-user',\n templateUrl: './edit-user.page.html',\n styleUrls: ['./edit-user.page.scss'],\n})\nexport class EditUserPage implements OnInit {\n\n dialogTitle = 'Edit User';\n isNewUser = false;\n modified = false;\n initialized = false;\n fixtures: Fixture[];\n user: User;\n readonly fields: EditObjectPropertiesConfigField[] = [\n { label: 'First Name', fieldName: 'firstName', type: 'text', required: true },\n { label: 'Last Name', fieldName: 'lastName', type: 'text', required: true },\n { label: 'E-mail', fieldName: 'email', type: 'text', required: true },\n { label: 'Password', fieldName: 'password', type: 'text', required: true },\n { label: 'Phone', fieldName: 'phone', type: 'text', placeholder: 'Provide a contact phone number' },\n { label: 'Image Url', fieldName: 'avatarUrl', type: 'text' },\n ];\n rights: string[] = []; // {key: UserRightsEnum, title: string}[];\n rightNames: string[] = [];\n\n constructor(\n private cricketApi: CricketClubApiService,\n private ux: UxApiHelperService,\n ) { }\n\n\n ngOnInit() {\n this.initialize();\n }\n\n async discardChanges() {\n if(this.modified) {\n await this.ux.confirm('Cancel changes', 'You have made changes that are not saved yet. Click OK to discard changes?', async () => {\n this.ux.dismissModalDialog(null);\n });\n }\n else {\n this.ux.dismissModalDialog(null);\n }\n\n }\n\n /*\n discardChanges() {\n\n if(this.modified && !confirm('You have made changes that are not saved yet. Are you sure you want to discard changes?')) {\n return;\n }\n\n this.modalCtrl.dismiss(null);\n }\n */\n\n async commitChanges() {\n let rights = {};\n if(!this.user.isSuperUser) {\n for(let r of Object.keys(this.user.rights)) {\n if(this.user.rights[r]==true) {\n rights[r] = true;\n }\n }\n }\n this.user.rights = rights;\n\n this.ux.dismissModalDialog(this.user);\n }\n\n async initialize() {\n const loading = await this.ux.showLoading();\n\n try {\n this.isNewUser = this.user.id==null || this.user.id==0;\n\n if(this.user.rights==null) { this.user.rights = {}};\n\n this.rightNames = Object.values(UserRightsEnum);\n this.rights = Object.keys(UserRightsEnum);\n\n if(!this.isNewUser) {\n this.fixtures = await this.cricketApi.getFixtures();\n }\n\n this.initialized = true;\n }\n finally {\n loading.dismiss();\n }\n }\n\n isUserSignedUp(f: Fixture) {\n if(this.isNewUser) { return false; }\n return this.cricketApi.isUserSignedUp(f, this.user.id);\n }\n\n async signUpForFixture(f: Fixture) {\n const loading = await this.ux.showLoading();\n\n try {\n const result = await this.cricketApi.signUpForFixture(f, this.user.id);\n const pos = this.fixtures.indexOf(f);\n if(pos>=0) {\n this.fixtures.splice(pos, 1, result);\n }\n }\n finally {\n loading.dismiss();\n }\n }\n\n formatDateToString(d: Date): string {\n return AppHelper.formatDateToString(d);\n }\n\n\n async changed() {\n this.modified = true;\n }\n\n}\n","import { Injectable } from '@angular/core';\nimport { BehaviorSubject } from \"rxjs\";\n\nimport { User, UserRightsEnum } from '../cricket-club-api/cricket-club-api.model'\nimport { AppContext, AppVariables } from '../cricket-club-api/app.config.model';\n\nimport { ServiceApiHelperService } from '../service-api-helper/service-api-helper.service';\nimport { CricketClubApiService } from '../cricket-club-api/cricket-club-api.service';\n\nexport interface SavedUser {\n id: number;\n loggedIn: Date;\n}\n\n@Injectable({\n providedIn: 'root'\n})\nexport class AuthenticationService {\n\n public isLoginSubject = new BehaviorSubject(this.getCurrentUser());\n\n constructor(\n private cricketApi: CricketClubApiService,\n private apiHelper: ServiceApiHelperService,\n ) {\n\n }\n\n async rememberUser(u: User) {\n if(u==null) {\n await this.apiHelper.saveObjectToStore(AppVariables.key_loggedInUser, null);\n }\n else {\n const obj: SavedUser = {\n id: u.id,\n loggedIn: new Date()\n };\n await this.apiHelper.saveObjectToStore(AppVariables.key_loggedInUser, obj);\n }\n\n }\n\n\n public async initialize() {\n const savedUser = await this.apiHelper.loadObjectFromStore(AppVariables.key_loggedInUser) as SavedUser;\n if(savedUser!=null) {\n let user = null;\n try {\n user = await this.cricketApi.getUser(savedUser.id);\n }\n catch(err) {\n console.log('Error in fetching user', err);\n }\n\n //const user = await this.cricketApi.getUser(savedUser.id);\n if(user!=null) {\n this.rememberUser(user); // no need to wait\n AppContext.user = user;\n }\n }\n\n this.isLoginSubject.next(AppContext.user);\n\n }\n\n public isAuthenticated(): boolean {\n return AppContext.user != null;\n }\n\n public getCurrentUser(): User {\n return AppContext.user;\n }\n\n public user_right_exists(u: User, right: UserRightsEnum): boolean {\n let flag = u.isSuperUser==true;\n if(flag==false) {\n const keys = Object.keys(UserRightsEnum).filter(x => UserRightsEnum[x] == right);\n if(keys.length>0) {\n if(u.isSuperUser==true) { return true; }\n flag = u.rights!=null && u.rights[keys[0]]==true;\n }\n //console.log(u.email + \": \" + flag, u);\n }\n\n\n return flag;\n }\n\n public userHasRight(right: UserRightsEnum): boolean {\n let keys = Object.keys(UserRightsEnum).filter(x => UserRightsEnum[x] == right);\n if(keys.length==0) {\n return false; // right not found\n }\n let key = keys[0];\n\n //console.log('in here', key);\n if(!this.isAuthenticated()) {\n //console.log('no authenticated user');\n return false;\n }\n const u = this.getCurrentUser();\n //console.log('right', right, 'u', u);\n\n if(u.isSuperUser==true) { return true; }\n //if(u.rights==null) { return false; }\n //console.log('right', right, 'user', u);\n const result = u.rights!=null && u.rights[key]==true;\n //console.log(UserRightsEnum[right], result, u);\n return result;\n }\n\n public async loginUser(userName: string, password: string, rememberMe: boolean): Promise {\n const users = await this.cricketApi.getUsers();\n //console.log('users', users);\n\n const list = users.filter(u => u.email.toLowerCase()==userName.toLowerCase() && u.password.toLowerCase()==password.toLowerCase());\n\n if(list!=null && list.length>0) {\n const u = list[0];\n const user = await this.cricketApi.getUser(u.id);\n //console.log('found', user);\n AppContext.user = user;\n this.isLoginSubject.next(user);\n\n if(rememberMe) {\n this.rememberUser(u); // no need to wait\n }\n\n return Promise.resolve(true);\n }\n else {\n return Promise.resolve(false);\n }\n\n }\n\n public async logoutUser() {\n await this.rememberUser(null);\n AppContext.user = null;\n this.isLoginSubject.next(null);\n }\n}\n","\nexport class AppHelper {\n\n public static getDateWithoutTime(src: Date): Date {\n return new Date(src.getFullYear(), src.getMonth(), src.getDate());\n }\n\n public static replaceAll(str: string, key: string, value: string) {\n if(str==null || str.length==0) {\n return str;\n }\n else {\n return str.replace(new RegExp(key, 'g'), value);\n }\n }\n\n\n public static formatDateToString(date : Date) : string\n {\n const options : any = {\n weekday: \"long\",\n month: \"long\",\n day: \"numeric\",\n hour: \"2-digit\",\n minute: \"2-digit\",\n timeZone: 'America/New_York' // doesn't work on safari\n };\n\n var d = new Date(date); // convert to a javascript date type\n //var offsetHours = d.getTimezoneOffset()/60; // calculate the difference in hours\n //var td = new Date(d.getFullYear(), d.getMonth(), d.getDay(), d.getHours()+offsetHours, d.getMinutes()); // apply +4 time zone\n return d.toLocaleString('en-us', options);\n }\n\n\n public static removeItemFromArray(list: any[], item: any): boolean {\n if(list==null || item==null) { return false; }\n\n const pos = list.indexOf(item);\n if(pos>=0) {\n list.splice(pos, 1);\n return true;\n }\n else {\n return false;\n }\n\n }\n\n static idSeed: number;\n static idSeedCounter: number;\n\n public static getNewId(): number {\n if(AppHelper.idSeed==null) {\n AppHelper.idSeed = new Date().valueOf();\n AppHelper.idSeedCounter = 0;\n }\n\n AppHelper.idSeedCounter++;\n return AppHelper.idSeed + AppHelper.idSeedCounter;\n }\n\n}\n","import { User } from './cricket-club-api.model';\n\nexport class AppContext {\n public static appConfig: AppConfig = null;\n public static user: User;\n}\n\nexport class AppVariables {\n public static app_version = 2000004;\n public static clubFullName = 'Merion Cricket Club';\n public static clubShortName = 'Merion';\n //public static clubContactEMail = 'shariq@shariqkhan.com';\n //public static clubContactName = 'Shariq Khan';\n public static clubUrl = 'http://cricketatmerion.com'; // this sets up redirect; don't use https://\n\n public static readonly key_loggedInUser = 'key.loggedInUser';\n\n public static configurationUrl = '/assets/data/app.config.json';\n public static email_Final_Team_TemplateName = '/assets/data/email.final-team.template.html';\n public static email_Weekly_Digest_TemplateName = '/assets/data/email.weekly-digest.template.html';\n public static mailgunConfigurationName = '/assets/data/app.config.mailgun.json';\n}\n\nexport interface AppConfig {\n app_version: number;\n ui: UiConfiguration;\n storage: AzureStorageConfiguration;\n mail: MailgunConfiguration;\n}\n\nexport interface AzureStorageConfiguration {\n accountName: string;\n\n dataContainer: AzureStorageContainerInfo;\n}\n\nexport interface AzureStorageContainerInfo {\n name: string;\n sas: string;\n}\n\nexport interface MailgunConfiguration {\n apiKey: string;\n apiUrl: string;\n fromEmail: string;\n //domain: string;\n //proxyApiUrl: string;\n}\n\n\nexport interface UiConfiguration {\n appName: string;\n}\n","import * as internal from \"assert\";\n\nexport enum UserRightsEnum {\n canSignUpForFixture = 'Can Signup for Fixture',\n canEditFixture = 'Can Edit Fixture',\n canEditUser = 'Can Edit Users',\n canModifyTeam = 'Can Modify Team',\n canEditScore = 'Can Edit Score',\n canEditVenue = 'Can Edit Venue',\n canSendMessage = 'Can Send Message',\n isPaidMember = 'Is Paid Member',\n isHighPriorityGuest = 'High Priority Guest',\n isClubStaff = 'Club Staff',\n}\n\nexport interface UserInfo {\n id: number;\n firstName: string;\n lastName: string;\n email: string;\n password: string;\n phone?: string;\n avatarUrl?: string;\n\n isSuperUser?: boolean;\n}\n\nexport interface User extends UserInfo {\n rights?: {};\n}\n\n//First Name,Last Name,Mobile,Home,Work,E-mail\n\nexport interface MCUser {\n firstName: string;\n lastName: string;\n mobile: string;\n email: string;\n home: string;\n work: string;\n}\n\nexport interface Fixture {\n id: number;\n date: Date;\n opponent: string;\n type: string;\n notes: string;\n venueId: number;\n\n signedUserIdList: number[];\n isTeamFinal: boolean;\n userCanSignUp: boolean;\n\n forPaidMembersOnly: boolean;\n ignoreSignUpDuration: boolean;\n\n teamId: number;\n}\n\nexport interface Team {\n id: number;\n\n selectedUserIdList: number[];\n skipperUserId: number;\n keeperUserId: number;\n\n score: Scorecard;\n}\n\nexport interface Scorecard {\n notes: string;\n}\n\nexport interface Venue {\n id: number;\n title: string;\n address: string;\n venueUrl?: string;\n notes: string;\n}\n\nexport interface EmailTemplate {\n finalTeam: string;\n\n}\n\n\nexport interface WeeklyDigestOptions {\n administrators: boolean;\n paid_members: boolean;\n playing_members: boolean;\n everyone: boolean;\n club_staff: boolean;\n high_priority_guests : boolean;\n include_sign_up_list: boolean;\n}","import { Injectable } from '@angular/core';\n\nimport { ServiceApiHelperService } from '../service-api-helper/service-api-helper.service';\nimport { AppConfig, AppContext, AppVariables, MailgunConfiguration } from './app.config.model';\nimport { AppHelper } from './app-helper.worker';\n//import { AzureStorageBroker } from '../service-api-helper/azure-storage-broker.worker';\nimport { StorageHelper, StorageBrokerObjectEnum } from './cricket-club-storage.helper';\nimport { User, Fixture, Team, Venue, EmailTemplate } from './cricket-club-api.model';\nimport { BlobPlatformApiService } from '../platform-api/blob-platform-api.service';\nimport { TablePlatformApiService } from '../platform-api/table-platform-api.service';\n//import { ObjectType, CricketClubSqlDataApiService } from './cricket-club-sql-data-api.service'\n\n\n\n\n@Injectable({\n providedIn: 'root'\n})\nexport class CricketClubApiService {\n config: AppConfig;\n\n constructor(\n// private cc_sql_api: CricketClubSqlDataApiService, \n private table_api: TablePlatformApiService,\n private apiHelper: ServiceApiHelperService,\n private blob_api: BlobPlatformApiService\n )\n {\n }\n\n public readonly tables = {\n fixture: 'Fixture',\n venue: 'Venue',\n app_user: 'AppUser',\n //user_group: 'UserGroup',\n //channel: 'Channel',\n team: 'Team',\n }\n \n public isUserSignedUp(f: Fixture, userId: number): boolean {\n if(f.signedUserIdList==null) { return false; }\n\n const pos = f.signedUserIdList.indexOf(userId);\n return pos>=0;\n }\n\n public async signUpForFixture(f: Fixture, userId: number): Promise {\n if(f.signedUserIdList==null) { f.signedUserIdList = [] };\n\n const pos = f.signedUserIdList.indexOf(userId);\n if(pos>=0) {\n f.signedUserIdList.splice(pos, 1);\n }\n else {\n f.signedUserIdList.push(userId);\n }\n const result = await this.storeFixture(f);\n\n return Promise.resolve(result);\n }\n\n public async getObjectFromUrlAsString(url: string): Promise {\n return await this.apiHelper.getXmlResponseFromUrl(url) as string;\n /*\n const storage = new StorageHelper(this.apiHelper);\n const result = await storage.getObjectByName(AppVariables.emailTemplateConfigName) as EmailTemplate;\n console.log('result', result);\n return Promise.resolve(result);\n */\n }\n\n public async getMailConfiguration(): Promise {\n /*\n const storage = new StorageHelper(this.blob_api);\n const config = await storage.getObjectByName(AppVariables.mailgunConfigurationName) as MailgunConfiguration;\n return Promise.resolve(config);\n */\n\n const json = await this.getObjectFromUrlAsString(AppVariables.mailgunConfigurationName);\n const config = JSON.parse(json) as MailgunConfiguration;\n return Promise.resolve(config);\n\n }\n\n\n fixFixtureProperties(f: Fixture) {\n if(f.signedUserIdList==null) { f.signedUserIdList = []; }\n\n // fix the date issue\n if(f.date==null) {\n f.date = new Date();\n }\n else {\n f.date = new Date(f.date);\n }\n }\n\n public async store_entity(table_name: string, obj: Object) {\n await this.table_api.insertOrReplaceEntity(table_name, obj);\n\n }\n\n public get_all_table_names(): string[] {\n const list: string[] = [];\n for(let key of Object.keys(this.tables)) {\n list.push(this.tables[key]);\n }\n return list;\n }\n\n public async export_all_data_from_blob_to_table() {\n\n const mappings: { target_table: string, src_type: StorageBrokerObjectEnum }[] = [\n { target_table: this.tables.app_user, src_type: StorageBrokerObjectEnum.user },\n { target_table: this.tables.team, src_type: StorageBrokerObjectEnum.team },\n { target_table: this.tables.fixture, src_type: StorageBrokerObjectEnum.fixture },\n { target_table: this.tables.venue, src_type: StorageBrokerObjectEnum.venue },\n ]\n\n const storage = new StorageHelper(this.blob_api);\n for(let map of mappings) {\n console.log('*** fetching', map);\n const objects = await storage.getObjects(map.src_type);\n console.log('exporting', objects);\n const results = this.table_api.insertOrReplace(map.target_table, objects);\n console.log('finished');\n }\n\n }\n\n public async getFixtures(): Promise {\n //let results = await this.cc_sql_api.getAllObjects(ObjectType.fixture) as Fixture[];\n //const storage = new StorageHelper(this.blobApi);\n //let results = await storage.getObjects(StorageBrokerObjectEnum.fixture) as Fixture[];\n //console.log('fixtures', results);\n\n let results = await this.table_api.getEntities(this.tables.fixture);\n\n for(let r of results) {\n this.fixFixtureProperties(r);\n }\n\n // remove old fixtures\n const today = AppHelper.getDateWithoutTime(new Date());\n for(let i=results.length-1; i>=0; i--) {\n const d = AppHelper.getDateWithoutTime(results[i].date);\n if(d < today) {\n results.splice(i, 1);\n }\n }\n\n results = results.sort((a,b) => {\n //return Date.parse(a.toString()).valueOf()>Date.parse(b.toString()).valueOf() ? 1 : -1;\n return a.date>b.date ? 1 : -1;\n });\n\n //console.log('fixtures', results);\n return Promise.resolve(results);\n }\n\n public async getFixture(id: number): Promise {\n //const storage = new StorageHelper(this.blobApi);\n //let result = await storage.getObject(StorageBrokerObjectEnum.fixture, id) as Fixture;\n\n const result = await this.table_api.getEntity(this.tables.fixture, id.toString());\n return Promise.resolve(result);\n }\n\n public async storeFixture(obj: Fixture): Promise {\n //const storage = new StorageHelper(this.blobApi);\n //const result = await storage.storeObject(StorageBrokerObjectEnum.fixture, obj.id, obj) as Fixture;\n\n const result = await this.table_api.insertOrReplaceEntity(this.tables.fixture, obj);\n this.fixFixtureProperties(result);\n return Promise.resolve(result);\n }\n\n public async deleteFixture(id: number): Promise {\n //const storage = new StorageHelper(this.blobApi);\n //const result = await storage.deleteObject(StorageBrokerObjectEnum.fixture, id) as any;\n\n const result = await this.table_api.deleteEntity(this.tables.fixture, id.toString());\n return Promise.resolve(result);\n }\n\n public async getUsers(): Promise {\n //const storage = new StorageHelper(this.blobApi);\n //const results = await storage.getObjects(StorageBrokerObjectEnum.user) as User[];\n\n const results = await this.table_api.getEntities(this.tables.app_user);\n return Promise.resolve(results);\n }\n\n public async getUser(id: number): Promise {\n //const storage = new StorageHelper(this.blobApi);\n //const result = await storage.getObject(StorageBrokerObjectEnum.user, id) as User;\n\n const result = await this.table_api.getEntity(this.tables.app_user, id.toString());\n return Promise.resolve(result);\n }\n\n public async storeUser(obj: User): Promise {\n //const storage = new StorageHelper(this.blobApi);\n //const result = await storage.storeObject(StorageBrokerObjectEnum.user, obj.id, obj) as User;\n\n const result = await this.table_api.insertOrReplaceEntity(this.tables.app_user, obj);\n return Promise.resolve(result);\n }\n\n public async deleteUser(id: number): Promise {\n const result = await this.table_api.deleteEntity(this.tables.app_user, id.toString());\n return Promise.resolve(result);\n }\n\n public async getVenues(): Promise {\n //const storage = new StorageHelper(this.blobApi);\n //let results = await storage.getObjects(StorageBrokerObjectEnum.venue) as Venue[];\n\n let results = await this.table_api.getEntities(this.tables.venue);\n\n results = results.sort((a,b) => {\n return a.title>b.title ? 1 : -1;\n });\n\n return Promise.resolve(results);\n }\n\n public async getVenue(id: number): Promise {\n //const storage = new StorageHelper(this.blobApi);\n //const result = await storage.getObject(StorageBrokerObjectEnum.venue, id) as Venue;\n\n const result = await this.table_api.getEntity(this.tables.venue, id.toString());\n return Promise.resolve(result);\n }\n\n public async storeVenue(obj: Venue): Promise {\n //const storage = new StorageHelper(this.blobApi);\n //const result = await storage.storeObject(StorageBrokerObjectEnum.venue, obj.id, obj) as Venue;\n\n const result = await this.table_api.insertOrReplaceEntity(this.tables.venue, obj);\n return Promise.resolve(result);\n }\n\n public async getTeams(): Promise {\n //const storage = new StorageHelper(this.blobApi);\n //let results = await storage.getObjects(StorageBrokerObjectEnum.team) as Team[];\n\n const results = await this.table_api.getEntities(this.tables.team);\n return Promise.resolve(results);\n }\n\n public async getTeam(id: number): Promise {\n //const storage = new StorageHelper(this.blobApi);\n //const result = await storage.getObject(StorageBrokerObjectEnum.team, id) as Team;\n\n const result = await this.table_api.getEntity(this.tables.team, id.toString());\n return Promise.resolve(result);\n }\n\n public async storeTeam(obj: Team): Promise {\n //const storage = new StorageHelper(this.blobApi);\n //const result = await storage.storeObject(StorageBrokerObjectEnum.team, obj.id, obj) as Team;\n\n const result = await this.table_api.insertOrReplaceEntity(this.tables.team, obj);\n return Promise.resolve(result);\n }\n\n\n\n}\n","import { AppConfig, AppContext, AppVariables } from './app.config.model';\nimport { AzureStorageBroker, AzureStorageBrokerContext, AzureBlobItemMetadata } from '../service-api-helper/azure-storage-broker.worker';\n//import { ServiceApiHelperService } from '../service-api-helper/service-api-helper.service';\nimport { BlobPlatformApiService } from '../platform-api/blob-platform-api.service';\n\n\nexport enum StorageBrokerObjectEnum {\n user = 'user',\n fixture = 'fixture',\n team = 'team',\n venue = 'venue',\n}\n\nexport class StorageHelper {\n //readonly apiHelper: ServiceApiHelperService;\n readonly blobApi: BlobPlatformApiService;\n autoStoreMetadata = false;\n\n constructor(blobApi: BlobPlatformApiService, autoStoreMetadata?: boolean) {\n //this.apiHelper = apiHelper;\n this.blobApi = blobApi;\n this.autoStoreMetadata = autoStoreMetadata!=null ? autoStoreMetadata : false;\n }\n\n async getStorageBroker(): Promise {\n //const config = await this.getAppConfiguration();\n const context: AzureStorageBrokerContext = {\n //accountName: config.storage.accountName,\n //container: config.storage.dataContainer,\n //apiHelper: this.apiHelper,\n blobApi: this.blobApi\n };\n const storage = AzureStorageBroker.create(context);\n //console.log('storage', storage);\n\n return Promise.resolve(storage);\n }\n\n \n private async getInfoObjects(type: StorageBrokerObjectEnum): Promise\n {\n const typeName = type.toString()\n const storage = await this.getStorageBroker();\n const objects = await storage.getObjects(typeName);\n //console.log('objects', objects);\n\n const list = [];\n for(let obj of objects) {\n if(obj.metadata!=null) {\n const item = {};\n for(let m of obj.metadata) {\n item[m.key] = m.value;\n }\n list.push(item);\n }\n }\n\n return Promise.resolve(list);\n }\n\n public async getObjects(type: StorageBrokerObjectEnum): Promise\n {\n const typeName = type.toString()\n const storage = await this.getStorageBroker();\n const objects = await storage.getObjects(typeName);\n\n const list = [];\n for(let obj of objects) {\n list.push(await storage.getObject(typeName, obj.id));\n }\n\n return Promise.resolve(list);\n }\n\n public async getObject(type: StorageBrokerObjectEnum, id: number): Promise\n {\n const typeName = type.toString()\n const storage = await this.getStorageBroker();\n const result = await storage.getObject(typeName, id);\n return Promise.resolve(result);\n }\n\n getNewObjectId(): number {\n return new Date().valueOf();\n }\n\n public async storeObject(type: StorageBrokerObjectEnum, id: number, data: Object): Promise\n {\n if(id==null || id==0) {\n id = this.getNewObjectId();\n data['id'] = id;\n }\n const metadata = this.autoStoreMetadata? this.createMetadata(data) : null;\n //console.log('metadata', metadata);\n\n const typeName = type.toString();\n const storage = await this.getStorageBroker();\n\n const result = await storage.storeObject(typeName, id, data, metadata);\n return Promise.resolve(result);\n }\n\n public async deleteObject(type: StorageBrokerObjectEnum, id: number): Promise\n {\n const typeName = type.toString()\n const storage = await this.getStorageBroker();\n const result = await storage.deleteObject(typeName, id);\n return Promise.resolve(result);\n }\n\n //async getAppConfiguration(): Promise {\n // if(AppContext.appConfig==null) {\n // const url = AppVariables.configurationUrl;\n // AppContext.appConfig = await this.apiHelper.getObjectFromUrl(url) as AppConfig;\n // }\n\n // return Promise.resolve(AppContext.appConfig);\n //}\n\n public async getObjectByName(name: string): Promise {\n const storage = await this.getStorageBroker();\n const result = await storage.getObjectByName(name);\n return Promise.resolve(result);\n }\n\n\n createMetadata(item: object, fields?: string[]): AzureBlobItemMetadata[] {\n const list: AzureBlobItemMetadata[] = [];\n if(fields==null) {\n fields = Object.keys(item);\n }\n for(let f of fields) {\n const v = item[f];\n if(typeof v !== 'object' && v !== null) {\n list.push({key: f, value: v});\n }\n }\n\n return list;\n }\n\n\n}\n","\r\nimport { AppVariables } from './app.config.model';\r\nimport { AppHelper } from './app-helper.worker';\r\nimport { CricketClubApiService } from './cricket-club-api.service';\r\nimport { Fixture, Team, User, UserRightsEnum, WeeklyDigestOptions } from './cricket-club-api.model';\r\nimport { Message, MailgunApiService } from '../mailgun-api/mailgun-api.service';\r\nimport { AuthenticationService } from '../../services/authentication-api/authentication-api.service';\r\n\r\nexport class NotificationHelper {\r\n private readonly cricketApi: CricketClubApiService;\r\n private readonly mailApi: MailgunApiService;\r\n private readonly auth_api: AuthenticationService;\r\n\r\n constructor(cricketApi: CricketClubApiService, mailApi: MailgunApiService, auth_api: AuthenticationService) {\r\n this.cricketApi = cricketApi;\r\n this.mailApi = mailApi;\r\n this.auth_api = auth_api;\r\n }\r\n\r\n public async sendWeekdlyDigestEmail(sender: User, options: WeeklyDigestOptions) {\r\n const venues = await this.cricketApi.getVenues();\r\n const users = await this.cricketApi.getUsers();\r\n\r\n let count = 0;\r\n let html = ''; // '';\r\n const fixtures = await this.cricketApi.getFixtures();\r\n for(let f of fixtures) {\r\n count++;\r\n const v = venues.filter(venue => venue.id==f.venueId)[0];\r\n\r\n //html += '';\r\n html += '' + count + ') ' + f.opponent + '' +\r\n '@ ' + v.title + '' +\r\n 'on ' + AppHelper.formatDateToString(f.date) + '';\r\n\r\n if(f.notes!=null && f.notes.length>0) {\r\n html += 'Notes: ' + f.notes;\r\n }\r\n\r\n if(f.isTeamFinal) {\r\n html += 'Team for this fixture has been announced. For any changes or requests, please reach out to the skipper(s) directly.';\r\n\r\n html += 'Team';\r\n html += ''\r\n const team = await this.cricketApi.getTeam(f.teamId);\r\n const players = users.filter(u => team.selectedUserIdList.indexOf(u.id)>=0)\r\n .sort((a, b) => a.firstName + a.lastName > b.firstName + b.lastName ? 1 : -1);\r\n \r\n for(let u of players) {\r\n //const u = users.filter(user => user.id == uId)[0];\r\n\r\n html += ('' + u.firstName + ' ' + u.lastName);\r\n if(team.keeperUserId == u.id && team.skipperUserId==u.id) {\r\n html += ' (Captain, Wicket Keeper)'; }\r\n else if(team.keeperUserId==u.id) {\r\n html += ' (Wicket Keeper)'; }\r\n else if (team.skipperUserId==u.id) {\r\n html+= ' (Captain)'; }\r\n\r\n html += '';\r\n }\r\n html += ''\r\n }\r\n else {\r\n if(options.include_sign_up_list==true) {\r\n if(f.signedUserIdList.length==0) {\r\n html += 'Sign Ups: No one has signed up for this fixture yet.';\r\n }\r\n else {\r\n html += 'Sign Ups:';\r\n \r\n const players = users.filter(u => f.signedUserIdList.indexOf(u.id)>=0)\r\n .sort((a, b) => a.firstName + a.lastName > b.firstName + b.lastName ? 1 : -1);\r\n \r\n for(let u of players) {\r\n html += ('' + u.firstName + ' ' + u.lastName + '');\r\n }\r\n html += ''\r\n }\r\n }\r\n }\r\n //html += '';\r\n }\r\n //html += '';\r\n\r\n console.log(options);\r\n //console.log(users);\r\n const user_list = users.filter(u =>\r\n (options.everyone==true) ||\r\n (options.administrators==true && this.auth_api.user_right_exists(u, UserRightsEnum.canEditFixture)) ||\r\n (options.paid_members==true && this.auth_api.user_right_exists(u, UserRightsEnum.isPaidMember)) || \r\n (options.club_staff==true && this.auth_api.user_right_exists(u, UserRightsEnum.isClubStaff)) || \r\n (options.high_priority_guests==true && this.auth_api.user_right_exists(u, UserRightsEnum.isHighPriorityGuest)) || \r\n (options.playing_members==true && this.auth_api.user_right_exists(u, UserRightsEnum.canSignUpForFixture))\r\n );\r\n if(user_list.length==0) {\r\n user_list.push(this.auth_api.getCurrentUser());\r\n }\r\n\r\n const bccList = [] as string[];\r\n for(let u of user_list) {\r\n bccList.push(u.email);\r\n }\r\n\r\n console.log('bccList', bccList);\r\n\r\n let htmlBody = await this.cricketApi.getObjectFromUrlAsString(AppVariables.email_Weekly_Digest_TemplateName);\r\n htmlBody = AppHelper.replaceAll(htmlBody, '{{club_name}}', AppVariables.clubShortName);\r\n htmlBody = AppHelper.replaceAll(htmlBody, '{{club_url}}', AppVariables.clubUrl);\r\n htmlBody = AppHelper.replaceAll(htmlBody, '{{club_contact_name}}', sender.firstName + ' ' + sender.lastName);\r\n htmlBody = AppHelper.replaceAll(htmlBody, '{{club_contact_email}}', sender.email);\r\n htmlBody = AppHelper.replaceAll(htmlBody, '{{weekly_digest_content}}', html);\r\n htmlBody = AppHelper.replaceAll(htmlBody, '{{senderName}}', sender.firstName + ' ' + sender.lastName);\r\n\r\n const m: Message = {\r\n subject: AppVariables.clubFullName + ': Fixtures and signups update',\r\n toList: [ sender.email ],\r\n bccList: bccList,\r\n fromEmail: sender.email,\r\n htmlBody: htmlBody\r\n };\r\n\r\n console.log('m', m);\r\n await this.mailApi.sendMessage(m);\r\n\r\n }\r\n\r\n public async sendFinalTeamEmail(fixture: Fixture, team: Team, sender: User) {\r\n\r\n let players: User[] = [];\r\n for(let userId of team.selectedUserIdList) {\r\n players.push(await this.cricketApi.getUser(userId));\r\n }\r\n players = players.sort((a,b) => {\r\n return (a.firstName + ' ' + a.lastName) < (b.firstName + ' ' + b.lastName) ?\r\n -1 : 1\r\n });\r\n\r\n let playerList = '';\r\n\r\n const toList: string[] = [];\r\n for(let u of players) {\r\n toList.push(u.email);\r\n\r\n let str = ('' + u.firstName + ' ' + u.lastName);\r\n if(team.keeperUserId == u.id && team.skipperUserId==u.id) {\r\n str += ' (Captain, Wicket Keeper)'; }\r\n else if(team.keeperUserId==u.id) {\r\n str += ' (Wicket Keeper)'; }\r\n else if (team.skipperUserId==u.id) {\r\n str+= ' (Captain)'; }\r\n\r\n playerList += str;\r\n }\r\n\r\n let htmlBody = await this.cricketApi.getObjectFromUrlAsString(AppVariables.email_Final_Team_TemplateName);\r\n htmlBody = htmlBody.replace('{{clubName}}', AppVariables.clubShortName);\r\n htmlBody = htmlBody.replace('{{opponentName}}', fixture.opponent);\r\n htmlBody = htmlBody.replace('{{fixtureDate}}', AppHelper.formatDateToString(fixture.date));\r\n\r\n\r\n const v = await this.cricketApi.getVenue(fixture.venueId);\r\n const venueName = v!=null? v.title : 'Unspecified venue';\r\n const venueAddress = v!=null ? v.address : 'Unspecified venue address';\r\n\r\n htmlBody = htmlBody.replace('{{venueName}}', venueName);\r\n htmlBody = htmlBody.replace('{{venueAddress}}', venueAddress);\r\n//formatDateToTimeString\r\n htmlBody = htmlBody.replace('{{playerList}}', playerList);\r\n htmlBody = htmlBody.replace('{{senderName}}', sender.firstName + ' ' + sender.lastName);\r\n\r\n const m: Message = {\r\n subject: 'Team for ' + fixture.opponent + ' has been announced',\r\n toList: toList,\r\n fromEmail: sender.email,\r\n htmlBody: htmlBody\r\n };\r\n\r\n console.log('m', m);\r\n\r\n await this.mailApi.sendMessage(m);\r\n\r\n }\r\n\r\n\r\n\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { HttpHeaders } from '@angular/common/http';\r\nimport * as FormData from 'form-data';\r\nimport { HttpClient } from '@angular/common/http';\r\n\r\n\r\nimport { CricketClubApiService } from '../cricket-club-api/cricket-club-api.service';\r\nimport { ServiceApiHelperService } from '../service-api-helper/service-api-helper.service';\r\nimport { HttpProxyApiHelper } from '../service-api-helper/http-proxy-api-helper.worker';\r\n\r\nexport interface Message {\r\n subject: string;\r\n htmlBody: string;\r\n fromEmail?: string;\r\n\r\n toList: string[];\r\n ccList?: string[];\r\n bccList?: string[];\r\n}\r\n\r\nexport interface MailgunApiResponse {\r\n id: string;\r\n message: string;\r\n}\r\n\r\n\r\n\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class MailgunApiService {\r\n\r\n constructor(\r\n private http: HttpClient,\r\n private cricketApi: CricketClubApiService,\r\n private apiHelper: ServiceApiHelperService,\r\n\r\n ) { }\r\n\r\n public async sendMessage(m: Message) {\r\n const config = await this.cricketApi.getMailConfiguration();\r\n\r\n const body = new FormData();\r\n body.append('from', config.fromEmail);\r\n for(let to of m.toList) {\r\n body.append('to', to);\r\n }\r\n if(m.ccList!=null) {\r\n for(let cc of m.ccList) {\r\n body.append('cc', cc);\r\n }\r\n } \r\n if(m.bccList!=null) {\r\n for(let bcc of m.bccList) {\r\n body.append('bcc', bcc);\r\n } \r\n }\r\n body.append('subject', m.subject);\r\n body.append('html', m.htmlBody);\r\n\r\n for(let [key, value] of (body as any).entries()) {\r\n console.log(key, value)\r\n }\r\n\r\n return this.http.post(`${config.apiUrl}`, body, {\r\n headers: {\r\n Authorization: `Basic ${btoa(`api:${config.apiKey}`)}`\r\n }\r\n }).subscribe(\r\n result => {\r\n console.log('result', result)\r\n },\r\n error => {\r\n console.log('error: ', error);\r\n }\r\n );\r\n }\r\n\r\n /*\r\n public async sendMessage_(m: Message): Promise {\r\n const config = await this.cricketApi.getMailConfiguration();\r\n\r\n let headers = new HttpHeaders();\r\n const authHeader = 'Basic ' + window.btoa('api:' + config.apiKey);\r\n //console.log('authHeader', authHeader);\r\n headers = headers.set('Authorization', authHeader);\r\n\r\n let url = config.apiUrl.replace('{domain}', config.domain);\r\n\r\n //const fromEmail = m.fromEmail != null ? m.fromEmail : config.fromEmail;\r\n const fromEmail = config.fromEmail;\r\n\r\n url += '?from=' + encodeURI(fromEmail);\r\n\r\n for(let to of m.toList) {\r\n url += '&to=' + encodeURI(to);\r\n }\r\n if(m.ccList!=null) {\r\n for(let cc of m.ccList) {\r\n url += '&cc=' + encodeURI(cc);\r\n }\r\n }\r\n if(m.bccList!=null) {\r\n for(let bcc of m.bccList) {\r\n url += '&bcc=' + encodeURI(bcc);\r\n }\r\n }\r\n\r\n url += '&subject=' + encodeURI(m.subject);\r\n url += '&html=' + encodeURI(m.htmlBody);\r\n\r\n console.log('config', config);\r\n\r\n const proxyApi = new HttpProxyApiHelper(config.proxyApiUrl, this.apiHelper, {\r\n scheme: 'Basic',\r\n parameter: window.btoa('api:' + config.apiKey)\r\n });\r\n\r\n const result = await proxyApi.postObjectToUrl(url, '', 'application/json') as MailgunApiResponse;\r\n console.log('result', result, 'url', url, 'auth', authHeader);\r\n return Promise.resolve(result);\r\n\r\n //header: Authorization Basic api: and encode it\r\n//https://api.mailgun.net/v3/mail.purplepeace.app/messages?from=shariq@shariqkhan.com&to=shariq.khan@dell.com&subject=Test Postman message&html=data\r\n }\r\n */\r\n \r\n}\r\n","import { Injectable } from '@angular/core';\nimport { HttpHeaders } from '@angular/common/http';\n\nimport { ServiceApiHelperService } from '../service-api-helper/service-api-helper.service';\nimport { PlatformConfigurationApiService } from './platform-configuration-api.service';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class BlobPlatformApiService {\n\n readonly blobUri: string;\n readonly default_resourceType = 'container';\n\n constructor(\n private config: PlatformConfigurationApiService,\n private http: ServiceApiHelperService\n ) {\n\n this.blobUri = this.config.platformUri + '/blobs';\n\n }\n\n getRequestHeaders(): HttpHeaders {\n const obj = {};\n obj[this.config.key_platform_appId] = this.config.appId;\n obj[this.config.key_platform_storageId] = this.config.storageId;\n\n const authHeader = 'Basic ' + window.btoa(JSON.stringify(obj));\n\n let headers = new HttpHeaders()\n .set('Authorization', authHeader);\n\n return headers;\n }\n\n public async getBlob(blobName: string): Promise {\n const url = this.blobUri + \"/\" + blobName;\n const headers = this.getRequestHeaders();\n\n const result = await this.http.getObjectFromUrlWithHeaders(url, headers);\n //console.log('result', result);\n return Promise.resolve(result);\n }\n\n public async getBlobByPathName(blobPathName: string): Promise {\n const url = this.blobUri + \"/getBlobByPathName?blobPathName=\" + blobPathName;\n //console.log('getting', url);\n const headers = this.getRequestHeaders();\n\n const result = await this.http.getObjectFromUrlWithHeaders(url, headers);\n //console.log('result', result);\n return Promise.resolve(result);\n }\n\n public async list(prefix?: string, resourceType?: string, includeMetadata?: boolean, maxResults?: number): Promise {\n if(prefix==null) { prefix = ''; }\n if(resourceType==null) { resourceType = this.default_resourceType; }\n if(includeMetadata==null) { includeMetadata = true; }\n if(maxResults==null) { maxResults = 5000; }\n\n const url = this.blobUri + '/query?' +\n 'comp=list&prefix=' + prefix +\n '&restype=' + resourceType +\n (includeMetadata==true ? '&include=metadata' : '') +\n '&maxresults=' + maxResults;\n\n //console.log('url', url);\n const headers = this.getRequestHeaders();\n\n const result = this.http.getXmlResponseFromUrl(url, headers);\n return Promise.resolve(result);\n }\n\n\n public async deleteBlob(blobName: string): Promise\n {\n const headers = this.getRequestHeaders();\n\n const url = this.blobUri + \"/delete?name=\" + blobName;\n const result = await this.http.deleteObjectAtUrlWithHeaders(url, headers);\n return Promise.resolve(result);\n }\n\n public async getBlobUrl(blobName: string):Promise {\n try {\n const headers = this.getRequestHeaders();\n\n const url = this.blobUri + \"/getBlobUrl?name=\" + blobName;\n const result = await this.http.getObjectFromUrlWithHeaders(url, headers) as {url: string};\n return Promise.resolve(result.url);\n }\n catch(err) {\n return Promise.reject(err);\n }\n }\n\n public async storeBlob(blobName: string, data: object, metadata?: AzureBlobItemMetadata[], contentType?: string): Promise\n {\n if(contentType==null) { 'application/json' };\n\n let headers = this.getRequestHeaders();\n\n if(metadata!=null && metadata.length>0) {\n for(let m of metadata) {\n headers = headers.append('x-ms-meta-' + m.key.toString(), m.value.toString());\n }\n }\n //console.log('storeBlob.headers', headers);\n\n try {\n const url = this.blobUri + \"/store?name=\" + blobName;\n await this.http.postObjectToUrlWithHeaders(url, data, headers, false);\n return Promise.resolve(data);\n }\n catch(err) {\n return Promise.reject(err);\n }\n }\n\n}\n\n\nexport interface AzureBlobItemMetadata {\n key: string;\n value: string;\n}\n","import { Injectable } from '@angular/core';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class PlatformConfigurationApiService {\n\n public readonly appId: string;\n public readonly platformUri: string;\n public readonly storageId: string;\n\n public readonly key_platform_storageId = 'blobStorageId';\n public readonly key_platform_appId = 'appId';\n\n constructor() {\n this.appId = \"1621569600000\";\n\n //this.platformUri = 'https://api.dig-ix.com/api';\n //this.platformUri = 'https://localhost:44319/api';\n //this.platformUri = 'https://localhost:5001/api';\n this.platformUri = 'https://com-shariqkhan-platform-api-service.azurewebsites.net/api'\n\n this.storageId = '1621569600010';\n }\n\n}\n","import { Injectable } from '@angular/core';\nimport { HttpHeaders } from '@angular/common/http';\n\nimport { ServiceApiHelperService } from '../service-api-helper/service-api-helper.service';\nimport { PlatformConfigurationApiService } from './platform-configuration-api.service';\nimport { AppHelper } from '../cricket-club-api/app-helper.worker';\n\nexport interface TableQueryResult {\n value: TableEntity[];\n}\n\nexport interface TableEntity {\n PartitionKey?: string;\n RowKey?: string;\n Timestamp?: Date;\n}\n\n@Injectable({\n providedIn: 'root'\n})\nexport class TablePlatformApiService {\n\n readonly tableUri: string;\n\n private readonly field_id = 'id';\n private readonly field_row_key = 'RowKey';\n private readonly field_partition_key = 'PartitionKey';\n\n constructor(\n private config: PlatformConfigurationApiService,\n private http: ServiceApiHelperService\n ) {\n\n this.tableUri = this.config.platformUri + '/tables';\n }\n\n private getRequestHeaders(): HttpHeaders {\n const obj = {};\n obj[this.config.key_platform_appId] = this.config.appId;\n obj[this.config.key_platform_storageId] = this.config.storageId;\n\n const authHeader = 'Basic ' + window.btoa(JSON.stringify(obj));\n\n const headers = new HttpHeaders()\n .set('Content-Type', 'application/json')\n .set('Accept', 'application/json')\n .set('Authorization', authHeader);\n\n return headers;\n }\n\n public async deleteEntity(tableName: string, rowKey: string): Promise {\n const headers = this.getRequestHeaders();\n\n const url = this.tableUri + \"/delete?tableName=\" + tableName + '&partitionKey=' + tableName + '&rowKey=' + rowKey;\n const result = await this.http.deleteObjectAtUrlWithHeaders(url, headers);\n //console.log('result', result);\n return Promise.resolve(result);\n }\n\n public async insertOrReplaceEntity(tableName: string, item: T): Promise {\n const results = await this.insertOrReplace(tableName, [item]);\n if(results.length>0) {\n return Promise.resolve(results[0]);\n } else {\n return Promise.resolve(null);\n }\n }\n\n\n public async insertOrReplace(tableName: string, objects: T[]): Promise\n {\n const headers = this.getRequestHeaders();\n\n try {\n const url = this.tableUri + \"/store?tableName=\" + tableName;\n\n const entities = JSON.parse(JSON.stringify(objects));\n\n for(let entity of entities) {\n if(entity[this.field_id]==null) { entity[this.field_id] = AppHelper.getNewId(); }\n if(entity[this.field_partition_key]==null) { entity[this.field_partition_key] = tableName; }\n if(entity[this.field_row_key]==null) { entity[this.field_row_key] = entity[this.field_id].toString(); }\n\n const keys = Object.keys(entity);\n\n for(let k of keys) {\n const v = entity[k];\n if(typeof v == 'object' && v != null && (!(v instanceof Date))) {\n entity[k + this.const_json_type] = 'json';\n }\n }\n\n this.removeNullValues(entity);\n }\n\n //console.log('entities', entities);\n\n await this.http.postObjectToUrlWithHeaders(url, entities, headers, false);\n return Promise.resolve(entities);\n }\n catch(err) {\n return Promise.reject(err);\n }\n }\n\n public async getEntity(tableName: string, rowKey: string): Promise {\n var query = { RowKey: rowKey };\n var results = await this.query(tableName, query);\n\n if(results.length>0) {\n return Promise.resolve(results[0] as T);\n }\n else {\n return Promise.resolve(null);\n }\n }\n\n public async getEntities(tableName: string): Promise {\n const results = await this.query(tableName, {});\n return Promise.resolve(results as T[]);\n\n }\n\n private readonly const_odata_type = '@odata.type';\n private readonly const_json_type = '___data_type';\n private readonly const_json_type_value = 'json';\n\n public async query(tableName: string, query: object): Promise\n {\n const headers = this.getRequestHeaders();\n\n try {\n const url = this.tableUri + \"/query2?tableName=\" + tableName;\n const json = await this.http.postObjectToUrlWithHeaders(url, query, headers, false) as string;\n //console.log('json', json);\n const query_results = JSON.parse(json) as TableQueryResult[];\n //console.log('query_results', query_results);\n\n let results: TableEntity[] = [];\n for(let qr of query_results) {\n results = results.concat(qr.value);\n }\n\n for(var e of results) {\n const keys = Object.keys(e);\n //console.log('keys', keys);\n\n for(let k of keys) {\n let typeInfo = e[k + this.const_odata_type] as string;\n if(e[k]!=null && typeInfo!=null) {\n if(typeInfo.endsWith('.Int64')) {\n e[k] = parseInt(e[k]);\n }\n else if(typeInfo.endsWith('.DateTime')) {\n e[k] = new Date(Date.parse(e[k].toString()));\n }\n }\n\n if(e[k]!=null && e[k + this.const_json_type]==this.const_json_type_value) {\n e[k] = JSON.parse(e[k]);\n delete e[k + this.const_json_type];\n }\n }\n\n e.Timestamp = new Date(Date.parse(e.Timestamp.toString()));\n\n for(let k of keys) {\n if(k.endsWith(this.const_odata_type)) {\n delete e[k];\n }\n }\n delete e['odata.etag'];\n\n }\n\n //console.log(tableName, results);\n\n return Promise.resolve(results);\n }\n catch(err) {\n return Promise.reject(err);\n }\n\n }\n\n removeNullValues(obj: object) {\n //console.log('Removing null values', obj);\n\n for(let key of Object.keys(obj))\n if (key.startsWith('$') || obj[key] == null) {\n //console.log('removing key', key);\n delete obj[key];\n }\n else if (obj[key] && typeof obj[key] === 'object') {\n this.removeNullValues(obj[key]);\n }\n\n }\n \n\n}\n","//import { HttpHeaders } from '@angular/common/http';\n\n//import { ServiceApiHelperService } from './service-api-helper.service';\nimport { Debug } from './service-api-debug-log';\nimport { XmlDomHelper } from './service-api-xml-dom-helper.worker'\nimport { BlobPlatformApiService } from '../platform-api/blob-platform-api.service';\n\nexport interface AzureStorageContainer {\n name: string;\n sas: string;\n}\n\n\nexport interface AzureBlobItemMetadata {\n key: string;\n value: string;\n}\n\nexport interface AzureBlobItem {\n id: number;\n name: string;\n lastModified: string;\n //secureUrl: string;\n\n metadata: AzureBlobItemMetadata[];\n}\n\nexport interface AzureStorageBrokerContext {\n //accountName: string;\n //container: AzureStorageContainer;\n //apiHelper: ServiceApiHelperService;\n blobApi: BlobPlatformApiService;\n}\n\nexport class AzureStorageBroker {\n //blobUri: string;\n //apiHelper: ServiceApiHelperService;\n //container: AzureStorageContainer;\n blobApi: BlobPlatformApiService;\n\n public static create(context: AzureStorageBrokerContext): AzureStorageBroker {\n const obj = new AzureStorageBroker();\n //obj.blobUri = 'https://' + context.accountName + '.blob.core.windows.net';\n //obj.container = context.container;\n //obj.apiHelper = context.apiHelper;\n obj.blobApi = context.blobApi;\n\n return obj;\n }\n\n getObjectPrefix(type: string): string {\n return type + \"-\";\n }\n\n getObjectName(type: string, id: number): string {\n return this.getObjectPrefix(type) + id.toString() + '.json';\n }\n\n getObjectIdFromName(type: string, name: string): number {\n const prefix = this.getObjectPrefix(type);\n name = name.replace(prefix, '');\n name = name.replace('.json', '');\n return parseInt(name);\n }\n\n public async getObjects(type: string): Promise\n {\n const prefix = this.getObjectPrefix(type);\n //const maxResults = 1000;\n //const url = this.blobUri + '/' + this.container.name + this.container.sas +\n // '&comp=list&prefix=' + prefix + '&restype=container&include=metadata&maxresults'+maxResults;\n\n try {\n //const result = await this.apiHelper.getXmlResponseFromUrl(url);\n const result = await this.blobApi.list(prefix);\n\n const items = this.parseXmlToBlobItems(type, result);\n return Promise.resolve(items);\n }\n catch(err) {\n Debug.logO('getObjects: type=' + type, err);\n return Promise.reject(err);\n\n }\n }\n\n public async getObjectByName(name: string): Promise {\n //const url = this.generateSecureUrlForBlob(name, this.container);\n //const result = await this.apiHelper.getObjectFromUrl(url);\n const result = await this.blobApi.getBlob(name);\n\n return Promise.resolve(result);\n }\n\n public async getObject(type: string, id: number): Promise\n {\n const name = this.getObjectName(type, id);\n const obj = await this.getObjectByName(name);\n return Promise.resolve(obj);\n }\n\n public async storeObject(type: string, id: number, data: object, metadata?: AzureBlobItemMetadata[], contentType?: string): Promise\n {\n const name = this.getObjectName(type, id);\n\n const result = this.blobApi.storeBlob(name, data, metadata, contentType);\n return Promise.resolve(result);\n\n /*\n const url = this.generateSecureUrlForBlob(name, this.container);\n if(contentType==null) {\n contentType = 'application/json';\n }\n\n let headers = new HttpHeaders();\n headers = headers.set('Content-Type', contentType);\n headers = headers.set('x-ms-blob-type', 'BlockBlob')\n //headers = headers.set('x-ms-meta-dude', 'shariq');\n\n if(metadata!=null && metadata.length>0) {\n for(let m of metadata) {\n headers = headers.append('x-ms-meta-' + m.key.toString(), m.value.toString());\n }\n }\n //console.log('headers', headers);\n\n try {\n const result = await this.apiHelper.putObjectAtUrl(url, data, headers, true);\n //console.log('result', result);\n\n const items = this.parseXmlToBlobItems(type, result, this.container);\n if(items.length>0) {\n return Promise.resolve(items[0]);\n }\n else {\n return Promise.resolve(data);\n }\n }\n catch(err) {\n Debug.logO('storeObject', err);\n return Promise.reject(err);\n }\n */\n }\n\n public async deleteObject(type: string, id: number): Promise\n {\n const name = this.getObjectName(type, id);\n const result = await this.blobApi.deleteBlob(name);\n return Promise.resolve(result);\n\n /*\n const url = this.generateSecureUrlForBlob(name, this.container);\n const result = await this.apiHelper.deleteObjectAtUrl(url);\n return Promise.resolve(result);\n */\n }\n\n\n\n //generateSecureUrlForBlob(blobName: string, container: AzureStorageContainer): string {\n // return this.blobUri + '/' + container.name + '/' + blobName + container.sas;\n //}\n\n\n parseXmlToBlobItems(type: string, xml: string) : AzureBlobItem[] {\n //console.log('parsing', xml);\n const parser = new DOMParser();\n const doc = parser.parseFromString(xml, 'text/xml');\n const dom = new XmlDomHelper();\n const blobs = doc.getElementsByTagName('Blob');\n //console.log('blobs', blobs);\n const items: AzureBlobItem[] = [];\n\n for(let i=0; i0) {\n item.metadata = [];\n\n for(let m=0; m {\n return new Promise((resolve, reject) => {\n this.storage.remove(key).then(() => {\n resolve(true);\n }, error => {\n reject(error);\n });\n });\n}\n\npublic saveObjectToStore(key: string, obj: object): Promise {\n return new Promise((resolve, reject) => {\n var data = (obj==null) ? '' : JSON.stringify(obj);\n this.storage.set(key, data)\n .then((result) => {\n resolve(result);\n }, error => { console.log('saveObjectToStore', error); reject(error); });\n });\n }\n\npublic loadObjectFromStore(key: string): Promise {\n //console.log('loadObjectFromStore(\"' + key + '\")', key);\n return new Promise((resolve, reject) => {\n this.storage.get(key)\n .then((json) => {\n if(json == null || json=='') {\n resolve(null);\n }\n else {\n let result = JSON.parse(json);\n //console.log('result', result);\n resolve(result);\n }\n }, error => { console.log('loadObjectFromStore', error); reject(error); });\n });\n }\n\npublic getXmlResponseFromUrl(url: string, request_headers?: HttpHeaders) : Promise {\n let ctx = this;\n\n return new Promise(function(resolve, reject) {\n //console.log('getting xml response from', url);\n let headers = new HttpHeaders();\n if(request_headers!=null) {\n for(let key of request_headers.keys()) {\n headers = headers.set(key, request_headers.get(key));\n }\n }\n ctx.http.get(url, { headers: headers, responseType: 'text'})\n .subscribe(\n result => {\n resolve(result);\n },\n error => {\n console.log('error: ', error);\n reject(error)\n }\n );\n });\n\n}\n\npublic getObjectFromUrlWithHeaders(url: string, headers: HttpHeaders) : Promise {\n const ctx = this;\n\n return new Promise(function(resolve, reject) {\n //console.log('getting', url);\n ctx.http.get(url, {headers: headers})\n .subscribe(\n result => {\n resolve(result);\n },\n error => {\n console.log('error: ', error);\n reject(error)\n }\n );\n });\n\n }\n\n public deleteObjectAtUrl(url: string, isResponseTypeText?: boolean): Promise {\n const ctx = this;\n\n let options;\n if(isResponseTypeText==true) {\n options = { headers: new HttpHeaders(), responseType: 'text'};\n }\n else {\n options = { headers: new HttpHeaders() };\n }\n\n return new Promise(function(resolve, reject) {\n ctx.http.delete(url, options)\n .subscribe(\n result => {\n resolve(result);\n },\n error => {\n //console.log('error', error);\n reject(error)\n }\n );\n });\n }\n\n public deleteObjectAtUrlWithHeaders(url: string, headers: HttpHeaders): Promise\n {\n const ctx = this;\n\n return new Promise(function(resolve, reject) {\n ctx.http.delete(url, {headers: headers})\n .subscribe(\n result => {\n resolve(result);\n },\n error => {\n //console.log('error', error);\n reject(error)\n }\n );\n });\n }\n\n\n public getObjectFromUrl(url: string) : Promise {\n let ctx = this;\n\n return new Promise(function(resolve, reject) {\n //console.log('getting', url);\n ctx.http.get(url)\n .subscribe(\n result => {\n resolve(result);\n },\n error => {\n console.log('error: ', error, '=> for url: ', url);\n reject(error)\n }\n );\n });\n\n }\n\n public postObjectToUrlWithHeaders(url: string, data: object, headers: HttpHeaders, isResponseTypeText: boolean) : Promise {\n let ctx = this;\n\n return new Promise(function(resolve, reject) {\n //console.log('posting to', url, 'data', data);\n const body = data!=null ? JSON.stringify(data) : '';\n\n const options = ctx.createHttpOptions(headers, isResponseTypeText);\n\n ctx.http.post(url, body, options)\n .subscribe(\n result => {\n resolve(result);\n },\n error => {\n console.log('error: ', error);\n reject(error)\n }\n );\n });\n\n }\n\n\n public postObjectToUrl(url: string, data: object) : Promise {\n let ctx = this;\n\n return new Promise(function(resolve, reject) {\n //console.log('posting to', url, 'data', data);\n const body = data!=null ? JSON.stringify(data) : '';\n\n\n ctx.http.post(url, body)\n .subscribe(\n result => {\n resolve(result);\n },\n error => {\n console.log('error: ', error);\n reject(error)\n }\n );\n });\n\n }\n\n stringifyObject(data: object): string {\n //console.log('in stringifyObject');\n if(data==null) {\n return '';\n }\n else {\n if (typeof data === 'string') {\n //console.log('data is string');\n return data as string;\n }\n else if(data instanceof String) {\n //console.log('data is string object');\n return data.toString();\n }\n else {\n //console.log('data is object');\n return JSON.stringify(data);\n }\n }\n }\n\n private createHttpOptions(headers?: HttpHeaders, isResponseTypeText?: boolean): any {\n let options: any = null;\n if(headers!=null && isResponseTypeText!=null) {\n options = { headers: headers, responseType: 'text'};\n }\n else if(headers!=null && isResponseTypeText==null) {\n options = { headers: headers }\n }\n else if(headers==null && isResponseTypeText!=null) {\n options = { responseType: 'text '}\n }\n\n return options;\n }\n\n public putObjectAtUrl(url: string, data: object, headers?: HttpHeaders, isResponseTypeText?: boolean) : Promise {\n let ctx = this;\n\n return new Promise(function(resolve, reject) {\n Debug.logO('putting at: ' + url, data);\n const body = ctx.stringifyObject(data); // data!=null ? JSON.stringify(data) : '';\n const options = ctx.createHttpOptions(headers, isResponseTypeText);\n\n ctx.http.put(url, body, options)\n .subscribe(\n result => {\n resolve(result);\n },\n error => {\n Debug.logO('error: ', error);\n reject(error)\n }\n );\n });\n\n }\n\n public downloadFileFromUrl(url: string, headers?: HttpHeaders) : Promise {\n let ctx = this;\n\n return new Promise(function(resolve, reject) {\n ctx.http.get(url, { headers: headers, responseType: 'blob'})\n .subscribe(\n result => {\n resolve(result);\n },\n error => {\n Debug.logO('error: ', error);\n reject(error)\n }\n );\n });\n }\n\n\n\n public b64toBlob(b64Data:string, contentType:string, sliceSize? :number) : Blob {\n contentType = contentType || '';\n sliceSize = sliceSize || 512;\n\n var byteCharacters = atob(b64Data);\n var byteArrays = [];\n\n for (var offset = 0; offset < byteCharacters.length; offset += sliceSize) {\n var slice = byteCharacters.slice(offset, offset + sliceSize);\n\n var byteNumbers = new Array(slice.length);\n for (var i = 0; i < slice.length; i++) {\n byteNumbers[i] = slice.charCodeAt(i);\n }\n\n var byteArray = new Uint8Array(byteNumbers);\n\n byteArrays.push(byteArray);\n }\n\n var blob = new Blob(byteArrays, {type: contentType});\n return blob;\n }\n\n\n}\n","\nexport class XmlDomHelper {\n public createXmlDocument(xml: string): Document {\n let parser = new DOMParser();\n let doc = parser.parseFromString(xml, 'text/xml');\n return doc;\n }\n\n public getElements(doc: Document, tagName: string): HTMLCollectionOf {\n return doc.getElementsByTagName(tagName);\n }\n\n public findDomNode(node: Element, path: string) : Element {\n let tags = path.split('/');\n //let n: Element = node;\n\n for(let tag of tags) {\n let list = node.getElementsByTagName(tag);\n //console.log('looking for '+tag+', found: ' + list.length);\n if(list.length>0) {\n node = list[0];\n }\n else {\n node = null;\n break;\n }\n }\n\n return node;\n }\n\n public findDomNodeText(node: Element, path: string) : string {\n let result = this.findDomNode(node, path);\n\n if(result==null) {\n return null;\n }\n else {\n return result.textContent;\n }\n\n }\n\n}\n","import { Injectable } from '@angular/core';\nimport { ModalController, LoadingController, ToastController, AlertController, ActionSheetController } from '@ionic/angular';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class UxApiHelperService {\n\n constructor(\n private loadingCtrl: LoadingController,\n private modalCtrl: ModalController,\n private toastCtrl: ToastController,\n private alertCtrl: AlertController,\n private actionCtrl: ActionSheetController,\n ) { }\n\n public async showLoading(message?: string): Promise {\n return new Promise(async (resolve, reject) => {\n if(message==null) {\n message = \"Please wait...\";\n }\n\n const loading = await this.loadingCtrl.create({\n message: message,\n spinner: 'crescent',\n });\n await loading.present();\n\n return resolve(loading);\n\n });\n }\n\n public async showModalDialog(component: any, componentProps: any): Promise {\n let dialog = await this.modalCtrl.create({\n component: component,\n componentProps: componentProps,\n cssClass: 'my-custom-modal-css',\n backdropDismiss: false,\n });\n\n await dialog.present();\n\n const { data } = await dialog.onWillDismiss();\n return Promise.resolve(data);\n }\n\n public dismissModalDialog(result?: object) {\n this.modalCtrl.dismiss(result);\n }\n\n public showConfirmationDialog(message: string, handler: any) {\n if(confirm(message)) {\n handler();\n }\n }\n\n public getConfirmation(message: string): boolean {\n return confirm(message);\n }\n\n public async confirm(header: string, message: string, okHandler?: any, cancelHandler?: any, subHeader?: string) {\n const alert = await this.alertCtrl.create({\n header: header,\n subHeader: subHeader,\n message: message,\n cssClass: 'confirmation-dialog',\n buttons: [\n {\n text: 'OK',\n handler: () => {\n if(okHandler!=null) {\n okHandler();\n }\n }\n },\n {\n text: 'Cancel',\n handler: () => {\n if(cancelHandler!=null) {\n cancelHandler();\n }\n }\n }\n ]\n });\n\n await alert.present();\n }\n\n public async showToast(message: string, durationInSeconds?: number): Promise {\n if(durationInSeconds==null) { durationInSeconds = 5; }\n\n const toast = await this.toastCtrl.create({\n message: message,\n duration: durationInSeconds*1000,\n position: 'bottom',\n });\n toast.present();\n return toast;\n }\n\n public async presentActionSheet(header: string, buttons: any[]) {\n const actionSheet = await this.actionCtrl.create({\n header: header,\n buttons: buttons\n });\n await actionSheet.present();\n\n }\n\n\n public async presentAlert(message: string, header?: string, subHeader?: string, buttonText?: string) {\n if(buttonText==null) { buttonText = 'OK' }\n\n const alert = await this.alertCtrl.create({\n header: header,\n subHeader: subHeader,\n message: message,\n cssClass: 'alert-dialog',\n buttons: [{\n text: buttonText,\n role: 'cancel'\n }]\n });\n\n await alert.present();\n }\n\n\n}\n","// This file can be replaced during build by using the `fileReplacements` array.\n// `ng build --prod` replaces `environment.ts` with `environment.prod.ts`.\n// The list of file replacements can be found in `angular.json`.\n\nexport const environment = {\n production: false\n};\n\n/*\n * For easier debugging in development mode, you can import the following file\n * to ignore zone related error stack frames such as `zone.run`, `zoneDelegate.invokeTask`.\n *\n * This import should be commented out in production mode because it will have a negative impact\n * on performance if an error is thrown.\n */\n// import 'zone.js/dist/zone-error'; // Included with Angular CLI.\n","import { enableProdMode } from '@angular/core';\nimport { platformBrowserDynamic } from '@angular/platform-browser-dynamic';\n\nimport { AppModule } from './app/app.module';\nimport { environment } from './environments/environment';\n\nif (environment.production) {\n enableProdMode();\n}\n\nplatformBrowserDynamic().bootstrapModule(AppModule)\n .catch(err => console.log(err));\n"],"sourceRoot":""}
\\n The team for this fixture has not been finalized yet. If you are signed up for this match, you will\\n get an e-mail when the team is finalized. Or, you could check back later.\\n
{{formatDateToString(f.date)}}
' + count + ') ' + f.opponent + '' +\r\n '@ ' + v.title + '' +\r\n 'on ' + AppHelper.formatDateToString(f.date) + '
Team for this fixture has been announced. For any changes or requests, please reach out to the skipper(s) directly.
Team
Sign Ups: No one has signed up for this fixture yet.
Sign Ups: