@osovitny/anatoly 2.0.19 → 2.0.21

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- {"version":3,"file":"osovitny-anatoly.js","sources":["../../../projects/anatoly/src/lib/core/consts/settings.ts","../../../projects/anatoly/src/lib/core/consts/index.ts","../../../projects/anatoly/src/lib/core/guards/once-import.guard.ts","../../../projects/anatoly/src/lib/core/alerts.ts","../../../projects/anatoly/src/lib/core/utils.ts","../../../projects/anatoly/src/lib/core/subs.ts","../../../projects/anatoly/src/lib/core/guid.ts","../../../projects/anatoly/src/lib/core/go/base-go.service.ts","../../../projects/anatoly/src/lib/core/logging/logging.service.ts","../../../projects/anatoly/src/lib/core/logging/globalErrorHandler.ts","../../../projects/anatoly/src/lib/data/base/base-api.service.ts","../../../projects/anatoly/src/lib/core/services/appcontext.service.ts","../../../projects/anatoly/src/lib/core/services/loading.service.ts","../../../projects/anatoly/src/lib/core/interceptors/httpInterceptor.ts","../../../projects/anatoly/src/lib/core/core.module.ts","../../../projects/anatoly/src/lib/core/index.ts","../../../projects/anatoly/src/lib/data/base/grid/base-grid-read.service.ts","../../../projects/anatoly/src/lib/data/base/grid/base-grid-edit.service.ts","../../../projects/anatoly/src/lib/data/services/billing-api.service.ts","../../../projects/anatoly/src/lib/data/data.module.ts","../../../projects/anatoly/src/lib/data/index.ts","../../../projects/anatoly/src/lib/ui/components/billing/buyaccess-button.component.ts","../../../projects/anatoly/src/lib/ui/components/billing/subscribe-plan-button.component.ts","../../../projects/anatoly/src/lib/ui/components/billing/upgrade-plan-button.component.ts","../../../projects/anatoly/src/lib/ui/components/identity/signin-button.component.ts","../../../projects/anatoly/src/lib/ui/components/identity/signout-button.component.ts","../../../projects/anatoly/src/lib/ui/components/identity/signup-button.component.ts","../../../projects/anatoly/src/lib/ui/components/content-header/content-header.component.ts","../../../projects/anatoly/src/lib/ui/components/base.component.ts","../../../projects/anatoly/src/lib/ui/components/base-edit.component.ts","../../../projects/anatoly/src/lib/ui/components/html-editor/html-editor.defaultoptions.ts","../../../projects/anatoly/src/lib/ui/components/html-editor/base-html-editor.component.ts","../../../projects/anatoly/src/lib/ui/components/html-editor/html-editor.component.ts","../../../projects/anatoly/src/lib/ui/components/html-editor/forms-html-editor.component.ts","../../../projects/anatoly/src/lib/ui/components/validation/validation-summary.component.ts","../../../projects/anatoly/src/lib/ui/components/validation/form-validation-summary.component.ts","../../../projects/anatoly/src/lib/ui/components/validation/item-validation-summary.component.ts","../../../projects/anatoly/src/lib/ui/ui.module.ts","../../../projects/anatoly/src/lib/ui/index.ts","../../../projects/anatoly/src/public-api.ts","../../../projects/anatoly/src/osovitny-anatoly.ts"],"sourcesContent":["/*\r\n<file>\r\n Project:\r\n @osovitny/anatoly\r\n\r\n Authors:\r\n Vadim Osovitny\r\n Anatoly Osovitny\r\n\r\n Created:\r\n 26 Jun 2020\r\n\r\n Version:\r\n 1.0\r\n\r\n Copyright (c) 2016-2020 Osovitny Inc. All rights reserved.\r\n</file>\r\n*/\r\n\r\nexport const ContextInitState = JSON.parse(\r\n ((\r\n document.getElementById('contextInitState')\r\n ) as HTMLInputElement).getAttribute('data-contextinitstate')\r\n);\r\n\r\nexport const AppCoreSettings = JSON.parse(\r\n ((\r\n document.getElementById('appCoreSettings')\r\n ) as HTMLInputElement).getAttribute('data-appcoresettings')\r\n);\r\n","/*\r\n<file>\r\n Project:\r\n @osovitny/anatoly\r\n\r\n Authors:\r\n Vadim Osovitny\r\n Anatoly Osovitny\r\n\r\n Created:\r\n 26 Jun 2020\r\n\r\n Version:\r\n 1.0\r\n\r\n Copyright (c) 2016-2020 Osovitny Inc. All rights reserved.\r\n</file>\r\n*/\r\n\r\nexport { ContextInitState, AppCoreSettings } from './settings';\r\n","/*\r\n<file>\r\n Project:\r\n @osovitny/anatoly\r\n\r\n Authors:\r\n Vadim Osovitny\r\n Anatoly Osovitny\r\n\r\n Created:\r\n 26 Jun 2020\r\n\r\n Version:\r\n 1.0\r\n\r\n Copyright (c) 2016-2020 Osovitny Inc. All rights reserved.\r\n</file>\r\n*/\r\n\r\nexport function throwIfAlreadyLoaded(parentModule: any, moduleName: string) {\r\n if (parentModule) {\r\n throw new Error(\r\n `${moduleName} has already been loaded. Import ${moduleName} modules in the AppModule only.`\r\n );\r\n }\r\n}\r\n","/*\r\n<file>\r\n Project:\r\n @osovitny/anatoly\r\n\r\n Authors:\r\n Vadim Osovitny\r\n Anatoly Osovitny\r\n\r\n Created:\r\n 4 Mar 2020\r\n\r\n Version:\r\n 1.0\r\n\r\n Copyright (c) 2016-2020 Osovitny Inc. All rights reserved.\r\n</file>\r\n*/\r\n\r\nimport Swal from \"sweetalert2\";\r\n\r\nexport class Alerts {\r\n public static Info(text) {\r\n Swal.fire({\r\n title: \"Information\",\r\n text: text,\r\n icon: \"info\",\r\n confirmButtonText: \"OK\",\r\n });\r\n }\r\n\r\n public static Warning(text) {\r\n Swal.fire({\r\n title: \"Warning\",\r\n text: text,\r\n icon: \"warning\",\r\n confirmButtonText: \"OK\",\r\n });\r\n }\r\n\r\n public static Error(text) {\r\n Swal.fire({\r\n title: \"Error\",\r\n text: text,\r\n icon: \"error\",\r\n confirmButtonText: \"OK\",\r\n });\r\n }\r\n\r\n public static NotImplemented() {\r\n this.Warning(\"Not Implemented Yet\");\r\n }\r\n\r\n public static ErrorOccurred() {\r\n this.Error(\"Sorry, an unexpected error occurred\");\r\n }\r\n\r\n public static AreYouSure(\r\n text,\r\n title?,\r\n confirmButtonText?,\r\n cancelButtonText?,\r\n successAction?,\r\n cancelAction?\r\n ) {\r\n if (typeof title == \"undefined\" || title == null) title = \"Are you sure?\";\r\n\r\n Swal.fire({\r\n title: title,\r\n text: text,\r\n icon: \"warning\",\r\n confirmButtonText: confirmButtonText,\r\n cancelButtonText: cancelButtonText,\r\n showCancelButton: true,\r\n }).then((result) => {\r\n if (result.value) {\r\n if (successAction) {\r\n successAction();\r\n }\r\n }\r\n // result.dismiss can be 'cancel', 'overlay', 'close', and 'timer'\r\n else if (\r\n result.dismiss == Swal.DismissReason.cancel ||\r\n result.dismiss == Swal.DismissReason.close\r\n ) {\r\n if (cancelAction) {\r\n cancelAction();\r\n }\r\n }\r\n });\r\n }\r\n\r\n public static Success(text?, title?, successAction?) {\r\n if (typeof title == \"undefined\" || title == null) title = \"Success\";\r\n\r\n if (!text) {\r\n text = \"Operation was successful\";\r\n }\r\n\r\n Swal.fire({\r\n title: title,\r\n text: text,\r\n icon: \"success\",\r\n confirmButtonText: \"OK\",\r\n }).then(function () {\r\n if (successAction) {\r\n successAction();\r\n }\r\n });\r\n }\r\n\r\n public static Cancel(text?) {\r\n if (!text) {\r\n text = \"Operation has been cancled\";\r\n }\r\n\r\n Swal.fire({\r\n title: \"Cancelled\",\r\n text: text,\r\n icon: \"info\",\r\n });\r\n }\r\n\r\n //Notifications\r\n public static NotificationCancel(text?, title?) {\r\n if (typeof title == \"undefined\" || title == null) {\r\n title = \"Canceled\";\r\n }\r\n\r\n if (!text) {\r\n text = \"Operation has been canceled\";\r\n }\r\n\r\n const toast = Swal.mixin({\r\n toast: true,\r\n position: \"top-end\",\r\n showConfirmButton: false,\r\n timer: 3000,\r\n timerProgressBar: true,\r\n });\r\n\r\n toast.fire({\r\n title: title,\r\n text: text,\r\n icon: \"info\",\r\n });\r\n }\r\n\r\n public static NotificationSuccess(text?, title?) {\r\n if (typeof title == \"undefined\" || title == null) {\r\n title = \"Success\";\r\n }\r\n\r\n if (!text) {\r\n text = \"Operation was successful\";\r\n }\r\n\r\n const toast = Swal.mixin({\r\n toast: true,\r\n position: \"top-end\",\r\n showConfirmButton: false,\r\n timer: 3000,\r\n timerProgressBar: true,\r\n });\r\n\r\n toast.fire({\r\n title: title,\r\n text: text,\r\n icon: \"success\",\r\n });\r\n }\r\n}\r\n","/*\r\n<file>\r\n Project:\r\n @osovitny/anatoly\r\n\r\n Authors:\r\n Vadim Osovitny\r\n Anatoly Osovitny\r\n\r\n Created:\r\n 26 Jun 2020\r\n\r\n Version:\r\n 1.0\r\n\r\n Copyright (c) 2016-2020 Osovitny Inc. All rights reserved.\r\n</file>\r\n*/\r\n\r\n// App\r\nimport { InjectorInstance } from \"./core.module\";\r\n\r\nexport class Utils {\r\n public static getValueByNameInQS(name) {\r\n return Utils.getValueByName(location.search, name);\r\n }\r\n\r\n public static getValueByName(url, name) {\r\n name = name.replace(/[\\[]/, \"\\\\[\").replace(/[\\]]/, \"\\\\]\");\r\n var regex = new RegExp(\"[\\\\?&]\" + name + \"=([^&#]*)\"),\r\n results = regex.exec(url);\r\n return results === null\r\n ? \"\"\r\n : decodeURIComponent(results[1].replace(/\\+/g, \" \"));\r\n }\r\n\r\n public static copyToClipBoard(event: any, val: string) {\r\n event.preventDefault();\r\n\r\n let selBox = document.createElement(\"textarea\");\r\n selBox.style.position = \"fixed\";\r\n selBox.style.left = \"0\";\r\n selBox.style.top = \"0\";\r\n selBox.style.opacity = \"0\";\r\n selBox.value = val;\r\n document.body.appendChild(selBox);\r\n selBox.focus();\r\n selBox.select();\r\n document.execCommand(\"copy\");\r\n document.body.removeChild(selBox);\r\n }\r\n\r\n public static downloadFile(name: string, url: string) {\r\n var link = document.createElement(\"a\");\r\n link.download = name;\r\n link.href = url;\r\n link.click();\r\n }\r\n}\r\n","/*\r\n<file>\r\n Project:\r\n @osovitny/anatoly\r\n\r\n Authors:\r\n Vadim Osovitny\r\n Anatoly Osovitny\r\n\r\n Created:\r\n 26 Jun 2020\r\n\r\n Version:\r\n 1.0\r\n\r\n Copyright (c) 2016-2020 Osovitny Inc. All rights reserved.\r\n</file>\r\n*/\r\n\r\nimport { Subscription } from \"rxjs\";\r\nexport class Subs {\r\n private subs: Subscription[] = [];\r\n\r\n constructor() {}\r\n\r\n add(...subscriptions: Subscription[]) {\r\n this.subs = this.subs.concat(subscriptions);\r\n }\r\n\r\n set sink(subscription: Subscription) {\r\n this.subs.push(subscription);\r\n }\r\n\r\n unsubscribe() {\r\n this.subs.forEach((sub) => sub && sub.unsubscribe());\r\n this.subs = [];\r\n }\r\n}\r\n","/*\r\n<file>\r\n Project:\r\n @osovitny/anatoly\r\n\r\n Authors:\r\n Vadim Osovitny\r\n Anatoly Osovitny\r\n\r\n Created:\r\n 26 Jun 2020\r\n\r\n Version:\r\n 1.0\r\n\r\n Copyright (c) 2016-2020 Osovitny Inc. All rights reserved.\r\n</file>\r\n*/\r\n\r\nimport { v4 as uuidv4 } from 'uuid';\r\n\r\nexport class Guid {\r\n public static newGuid() {\r\n return uuidv4();\r\n }\r\n}\r\n","/*\r\n<file>\r\n Project:\r\n @osovitny/anatoly\r\n\r\n Authors:\r\n Vadim Osovitny\r\n Anatoly Osovitny\r\n\r\n Created:\r\n 17 Jun 2018\r\n\r\n Version:\r\n 1.0\r\n\r\n Copyright (c) 2016-2020 Osovitny Inc. All rights reserved.\r\n</file>\r\n*/\r\n\r\nimport { Injectable } from \"@angular/core\";\r\nimport { ActivatedRoute, Router } from \"@angular/router\";\r\n\r\n@Injectable()\r\nexport class BaseGoService {\r\n protected route: ActivatedRoute;\r\n protected router: Router;\r\n\r\n constructor(route: ActivatedRoute, router: Router) {\r\n this.route = route;\r\n this.router = router;\r\n }\r\n\r\n locationReload() {\r\n //this.router.navigate([this.route.url]);\r\n (<any>window).location.reload();\r\n }\r\n}\r\n","/*\r\n<file>\r\n Project:\r\n @osovitny/anatoly\r\n\r\n Authors:\r\n Vadim Osovitny\r\n Anatoly Osovitny\r\n\r\n Created:\r\n 26 Jun 2020\r\n\r\n Version:\r\n 1.0\r\n\r\n Copyright (c) 2016-2020 Osovitny Inc. All rights reserved.\r\n</file>\r\n*/\r\n\r\n// Node\r\nimport { Injectable } from \"@angular/core\";\r\n\r\n@Injectable({\r\n providedIn: \"root\",\r\n})\r\nexport class LoggingService {\r\n constructor() {}\r\n\r\n logError(error) {\r\n console.error(error);\r\n }\r\n\r\n logInformation(info) {\r\n console.info(info);\r\n }\r\n}\r\n","/*\r\n<file>\r\n Project:\r\n @osovitny/anatoly\r\n\r\n Authors:\r\n Vadim Osovitny\r\n Anatoly Osovitny\r\n\r\n Created:\r\n 26 Jun 2020\r\n\r\n Version:\r\n 1.0\r\n\r\n Copyright (c) 2016-2020 Osovitny Inc. All rights reserved.\r\n</file>\r\n*/\r\n\r\n/*\r\n https://medium.com/@amcdnl/global-error-handling-with-angular2-6b992bdfb59c\r\n https://medium.com/angular-in-depth/expecting-the-unexpected-best-practices-for-error-handling-in-angular-21c3662ef9e4\r\n*/\r\n\r\n// Node\r\nimport { ErrorHandler, Injectable, Injector } from \"@angular/core\";\r\n\r\n// App\r\nimport { LoggingService } from \"./logging.service\";\r\n\r\n@Injectable()\r\nexport class GlobalErrorHandler implements ErrorHandler {\r\n constructor(private injector: Injector) {}\r\n\r\n handleError(error) {\r\n const loggingService = this.injector.get(LoggingService);\r\n loggingService.logError(error);\r\n\r\n // IMPORTANT: Rethrow the error otherwise it gets swallowed\r\n throw error;\r\n }\r\n}\r\n","/*\r\n<file>\r\n Project:\r\n @osovitny/anatoly\r\n\r\n Authors:\r\n Vadim Osovitny\r\n Anatoly Osovitny\r\n\r\n Created:\r\n 13 Nov 2017\r\n\r\n Version:\r\n 1.0\r\n\r\n Copyright (c) 2016-2020 Osovitny Inc. All rights reserved.\r\n</file>\r\n*/\r\n\r\n//Node\r\nimport { Injectable } from \"@angular/core\";\r\nimport { HttpClient } from \"@angular/common/http\";\r\n\r\n//RxJs\r\nimport { Observable } from \"rxjs\";\r\nimport { map } from \"rxjs/operators\";\r\n\r\ndeclare var $: any;\r\n\r\n@Injectable()\r\nexport class BaseApiService {\r\n protected baseUrl: string = \"\";\r\n\r\n constructor(protected http: HttpClient) {}\r\n\r\n private serializeParams(data?: any): string {\r\n return data ? \"?\" + $.param(data) : \"\";\r\n }\r\n\r\n //api\r\n get<T>(action: string, data?: any, responseType?): Observable<T> {\r\n if (!responseType) {\r\n responseType = \"json\";\r\n }\r\n\r\n var url = `${this.baseUrl}/${action}${this.serializeParams(data)}`;\r\n return this.http\r\n .get<T>(url, { responseType: responseType })\r\n .pipe(map((res) => <T>res));\r\n }\r\n\r\n post(action: string, data?: any, responseType?): Observable<any> {\r\n if (!responseType) {\r\n responseType = \"text\";\r\n }\r\n\r\n var url = `${this.baseUrl}/${action}`;\r\n return this.http.post(url, data, { responseType: responseType });\r\n }\r\n\r\n postQS(action: string, data?: any, responseType?): Observable<any> {\r\n if (!responseType) {\r\n responseType = \"text\";\r\n }\r\n\r\n var url = `${this.baseUrl}/${action}${this.serializeParams(data)}`;\r\n return this.http.post(url, null, { responseType: responseType });\r\n }\r\n\r\n delete(action: string, data?: any, responseType?): Observable<any> {\r\n if (!responseType) {\r\n responseType = \"text\";\r\n }\r\n\r\n var url = `${this.baseUrl}/${action}${this.serializeParams(data)}`;\r\n return this.http.delete(url, { responseType: responseType });\r\n }\r\n\r\n //gets\r\n getById<T>(id: any): Observable<T> {\r\n return this.get<T>(\"getById\", { id: id });\r\n }\r\n\r\n getAll<T>(data?: any): Observable<T[]> {\r\n return this.get(\"getall\", data).pipe(map((res) => <T[]>res));\r\n }\r\n\r\n getJsonFile(\r\n fileName: string,\r\n jsonUrl?: string,\r\n jsonVersion?: string\r\n ): Observable<any[]> {\r\n if (!jsonUrl) {\r\n jsonUrl = \"/dist/jsons\";\r\n }\r\n\r\n if (!jsonVersion) {\r\n jsonVersion = \"1.0\";\r\n }\r\n\r\n var url = jsonUrl + \"/\" + fileName + \"?\" + jsonVersion;\r\n return this.http.get(url).pipe(map((res) => <any[]>res));\r\n }\r\n\r\n getNewGuid(): Observable<string> {\r\n var url = `${this.baseUrl}/getNewGuid`;\r\n return this.http.get(url, { responseType: \"text\" });\r\n }\r\n}\r\n","/*\r\n<file>\r\n Project:\r\n @osovitny/anatoly\r\n\r\n Authors:\r\n Vadim Osovitny\r\n Anatoly Osovitny\r\n\r\n Created:\r\n 13 Nov 2017\r\n\r\n Version:\r\n 1.0\r\n\r\n Copyright (c) 2016-2020 Osovitny Inc. All rights reserved.\r\n</file>\r\n*/\r\n\r\n//Node\r\nimport { Injectable } from \"@angular/core\";\r\nimport { HttpClient } from \"@angular/common/http\";\r\nimport { Subscription } from \"rxjs\";\r\n\r\n//App\r\nimport { ContextInitState } from \"../consts\";\r\nimport { BaseApiService } from \"../../data/base/base-api.service\";\r\n\r\n@Injectable()\r\nexport class AppContextService extends BaseApiService {\r\n private current = null;\r\n private successes = [];\r\n private subscription: Subscription = null;\r\n\r\n constructor(protected http: HttpClient) {\r\n super(http);\r\n this.baseUrl = \"/api/appContext\";\r\n }\r\n\r\n getCurrent(success: Function) {\r\n if (typeof success == \"undefined\") {\r\n return;\r\n }\r\n\r\n if (this.current != null) {\r\n success(this.current);\r\n return;\r\n }\r\n\r\n this.successes.push(success);\r\n\r\n if (this.subscription != null) {\r\n return;\r\n }\r\n\r\n this.subscription = this.get(\"GetCurrentContext\", null).subscribe(\r\n (data) => {\r\n this.dataReceived(data);\r\n },\r\n (e) => {}\r\n );\r\n }\r\n\r\n dataReceived(data) {\r\n this.current = data;\r\n\r\n for (var i = 0; i < this.successes.length; i++) {\r\n var success = this.successes[i];\r\n success(data);\r\n }\r\n\r\n this.successes = [];\r\n this.subscription.unsubscribe();\r\n this.subscription = null;\r\n this.current = null;\r\n }\r\n\r\n isUserSignedIn() {\r\n return ContextInitState.isUserSignedIn;\r\n }\r\n\r\n isUserAdmin() {\r\n return ContextInitState.isUserAdmin;\r\n }\r\n}\r\n","/*\r\n<file>\r\n Project:\r\n @osovitny/anatoly\r\n\r\n Authors:\r\n Vadim Osovitny\r\n Anatoly Osovitny\r\n\r\n Created:\r\n 26 Jun 2020\r\n\r\n Version:\r\n 1.0\r\n\r\n Copyright (c) 2016-2020 Osovitny Inc. All rights reserved.\r\n</file>\r\n*/\r\n\r\n//Node\r\nimport { Injectable } from \"@angular/core\";\r\n\r\n//RxJs\r\nimport { BehaviorSubject } from \"rxjs\";\r\n\r\n@Injectable({\r\n providedIn: \"root\",\r\n})\r\nexport class LoadingService extends BehaviorSubject<boolean> {\r\n private counter = 0;\r\n\r\n //Public\r\n public isFreezed = false;\r\n\r\n constructor() {\r\n super(false);\r\n }\r\n\r\n show() {\r\n this.counter++;\r\n\r\n let that = this;\r\n setTimeout(() => {\r\n if (that.counter > 0) {\r\n that.next(true);\r\n }\r\n }, 1000);\r\n }\r\n\r\n hide() {\r\n if (this.counter <= 0) {\r\n return;\r\n }\r\n\r\n this.counter--;\r\n\r\n if (this.counter == 0) {\r\n this.next(false);\r\n }\r\n }\r\n\r\n freeze(timeout: number = 1000) {\r\n this.isFreezed = true;\r\n\r\n let that = this;\r\n setTimeout(() => {\r\n this.isFreezed = false;\r\n }, timeout);\r\n }\r\n}\r\n","/*\r\n<file>\r\n Project:\r\n @osovitny/anatoly\r\n\r\n Authors:\r\n Vadim Osovitny\r\n Anatoly Osovitny\r\n\r\n Created:\r\n 25 March 2020\r\n\r\n Version:\r\n 1.0\r\n\r\n Copyright (c) 2016-2020 Osovitny Inc. All rights reserved.\r\n</file>\r\n*/\r\n\r\n// Node\r\nimport { HttpEvent, HttpHandler, HttpInterceptor, HttpRequest, HttpResponse } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\n\r\n// RxJS\r\nimport { tap } from 'rxjs/operators';\r\nimport { Observable } from 'rxjs';\r\n\r\n// App\r\nimport { AppCoreSettings } from '../consts';\r\nimport { LoadingService } from '../services/loading.service';\r\nimport { LoggingService } from '../logging/logging.service';\r\n\r\n@Injectable()\r\nexport class AnatolyHttpInterceptor implements HttpInterceptor {\r\n protected longRunningExceptionsList = [];\r\n protected autoCDNSASTokenUrls = ['chunks', 'resources'];\r\n protected externalSiteUrls = ['azurewebsites.net'];\r\n\r\n constructor(protected loadingService: LoadingService, protected loggingService: LoggingService) { \r\n }\r\n\r\n intercept(req: HttpRequest<any>, next: HttpHandler): Observable<HttpEvent<any>> {\r\n const isCDNEnabled = AppCoreSettings.IsCDNEnabled;\r\n const cdnSasToken = AppCoreSettings.CDNSASToken;\r\n\r\n const isLoadingFreezed = this.loadingService.isFreezed;\r\n let loadingRequired = !isLoadingFreezed;\r\n const authorizationTokenRequired = true;\r\n const url = req.url.toLowerCase();\r\n const originalUrl = req.url;\r\n let isExternalSite = false;\r\n\r\n if (!isLoadingFreezed) {\r\n for (const i of this.longRunningExceptionsList) {\r\n if (url.indexOf(this.longRunningExceptionsList[i]) >= 0) {\r\n loadingRequired = false;\r\n break;\r\n }\r\n }\r\n }\r\n\r\n if (isCDNEnabled) {\r\n for (const i of this.autoCDNSASTokenUrls) {\r\n if (url.indexOf(this.autoCDNSASTokenUrls[i]) >= 0) {\r\n req = req.clone({ url: originalUrl + cdnSasToken });\r\n break;\r\n }\r\n }\r\n }\r\n\r\n for (const i of this.externalSiteUrls) {\r\n if (url.indexOf(this.externalSiteUrls[i]) >= 0) {\r\n isExternalSite = true;\r\n break;\r\n }\r\n }\r\n\r\n // VadimOS: IE11-fix\r\n if (url.indexOf('/api/') > -1) {\r\n let newUrl = '';\r\n const t = new Date().getTime().toString();\r\n\r\n if (url.indexOf('?') > -1) {\r\n newUrl = originalUrl + '&t=' + t;\r\n } else {\r\n newUrl = originalUrl + '?t=' + t;\r\n }\r\n\r\n req = req.clone({ url: newUrl });\r\n }\r\n\r\n req = req.clone({ headers: req.headers.set('Accept', 'application/json') });\r\n\r\n this.onRequestStart(loadingRequired);\r\n\r\n return next.handle(req).pipe(\r\n tap(\r\n (event: HttpEvent<any>) => {\r\n if (event instanceof HttpResponse) {\r\n this.onRequestEnd(loadingRequired);\r\n }\r\n },\r\n (err: any) => {\r\n this.onRequestEnd(loadingRequired);\r\n this.loggingService.logError(err);\r\n }\r\n )\r\n );\r\n }\r\n\r\n onRequestStart(loadingRequired: boolean) {\r\n if (loadingRequired) {\r\n this.loadingService.show();\r\n }\r\n }\r\n\r\n onRequestEnd(loadingRequired: boolean) {\r\n if (loadingRequired) {\r\n this.loadingService.hide();\r\n }\r\n }\r\n}\r\n","import { NgModule, Optional, SkipSelf, ErrorHandler, Injector,} from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\n\r\n//Logging\r\nimport { LoggingService } from './logging/logging.service';\r\n\r\n//Services\r\nimport { AppContextService } from './services/appcontext.service';\r\nimport { LoadingService } from './services/loading.service';\r\n\r\n// Guards\r\nimport { throwIfAlreadyLoaded } from './guards/once-import.guard';\r\n\r\nconst providers: any[] = [\r\n LoggingService,\r\n AppContextService,\r\n LoadingService\r\n];\r\n\r\nexport let InjectorInstance: Injector;\r\n\r\n@NgModule({\r\n imports: [CommonModule],\r\n providers: [...providers],\r\n})\r\nexport class AnatolyCoreModule {\r\n constructor(private injector: Injector, @Optional() @SkipSelf() parentModule: AnatolyCoreModule) {\r\n throwIfAlreadyLoaded(parentModule, 'AnatolyCoreModule');\r\n\r\n InjectorInstance = this.injector;\r\n }\r\n}\r\n","/*\r\n<file>\r\n Project:\r\n @osovitny/anatoly\r\n\r\n Authors:\r\n Vadim Osovitny\r\n Anatoly Osovitny\r\n\r\n Created:\r\n 26 Jun 2020\r\n\r\n Version:\r\n 1.0\r\n\r\n Copyright (c) 2016-2020 Osovitny Inc. All rights reserved.\r\n</file>\r\n*/\r\n\r\nexport { ContextInitState, AppCoreSettings } from './consts';\r\nexport { throwIfAlreadyLoaded } from './guards/once-import.guard';\r\n\r\nexport * from './alerts';\r\nexport * from './utils';\r\nexport * from './subs';\r\nexport * from './guid';\r\n\r\n// Go\r\nexport * from './go/base-go.service';\r\n\r\n// Logging\r\nexport * from './logging/logging.service';\r\nexport * from './logging/globalErrorHandler';\r\n\r\n// Services\r\nexport * from './services/appcontext.service';\r\nexport * from './services/loading.service';\r\n\r\n// interceptors\r\nexport * from './interceptors/httpInterceptor';\r\n\r\n// Module\r\nexport { AnatolyCoreModule } from './core.module';\r\n","/*\r\n<file>\r\n Project:\r\n @osovitny/anatoly\r\n\r\n Authors:\r\n Vadim Osovitny\r\n Anatoly Osovitny\r\n\r\n Created:\r\n 29 Apr 2018\r\n\r\n Version:\r\n 1.0\r\n\r\n Copyright (c) 2016-2020 Osovitny Inc. All rights reserved.\r\n</file>\r\n*/\r\n\r\n//Node\r\nimport { Injectable } from \"@angular/core\";\r\nimport { HttpClient } from \"@angular/common/http\";\r\n\r\n//RxJs\r\nimport { BehaviorSubject } from \"rxjs\";\r\nimport { map } from \"rxjs/operators\";\r\n\r\ndeclare var $: any;\r\n\r\n@Injectable()\r\nexport class BaseGridReadService extends BehaviorSubject<any[]> {\r\n protected baseReadUrl: string = \"\";\r\n protected data: any[] = [];\r\n protected savedReadParams: any;\r\n\r\n constructor(protected http: HttpClient) {\r\n super([]);\r\n }\r\n\r\n serializeParams(data?: any): string {\r\n return data ? \"?\" + $.param(data) : \"\";\r\n }\r\n\r\n read(params?: any, success?: Function, error?: Function) {\r\n if (this.data.length) {\r\n return super.next(this.data);\r\n }\r\n\r\n var url = this.baseReadUrl;\r\n\r\n if (typeof params === \"undefined\") {\r\n params = this.savedReadParams;\r\n }\r\n\r\n if (params) {\r\n url = this.baseReadUrl + `${this.serializeParams(params)}`;\r\n this.savedReadParams = params;\r\n }\r\n\r\n this.http\r\n .get(url)\r\n .pipe(map((res) => <any[]>res))\r\n .subscribe(\r\n (data) => {\r\n super.next(data);\r\n if (success) success();\r\n },\r\n (e) => {\r\n if (error) error(e);\r\n }\r\n );\r\n }\r\n}\r\n","/*\r\n<file>\r\n Project:\r\n @osovitny/anatoly\r\n\r\n Authors:\r\n Vadim Osovitny\r\n Anatoly Osovitny\r\n\r\n Created:\r\n 29 Apr 2018\r\n\r\n Version:\r\n 1.0\r\n\r\n Copyright (c) 2016-2020 Osovitny Inc. All rights reserved.\r\n</file>\r\n*/\r\n\r\n//Node\r\nimport { Injectable } from \"@angular/core\";\r\nimport { HttpClient } from \"@angular/common/http\";\r\n\r\n//RxJs\r\nimport { Observable } from \"rxjs\";\r\nimport { map } from \"rxjs/operators\";\r\n\r\n//App\r\nimport { BaseGridReadService } from \"./base-grid-read.service\";\r\n\r\n@Injectable()\r\nexport class BaseGridEditService extends BaseGridReadService {\r\n protected baseUrl: string = \"\";\r\n\r\n constructor(protected http: HttpClient) {\r\n super(http);\r\n }\r\n\r\n private reset() {\r\n this.data = [];\r\n }\r\n\r\n resetItem(dataItem: any) {\r\n if (!dataItem) {\r\n return;\r\n }\r\n\r\n //find orignal data item\r\n const originalDataItem = this.data.find((item) => item.Id === dataItem.Id);\r\n\r\n //revert changes\r\n Object.assign(originalDataItem, dataItem);\r\n super.next(this.data);\r\n }\r\n\r\n save(data: any, isNew: boolean, sucess?: Function) {\r\n const action = isNew ? \"add\" : \"update\";\r\n\r\n this.reset();\r\n this.post(action, data).subscribe(\r\n () => {},\r\n () => {\r\n this.read();\r\n },\r\n () => {\r\n this.read();\r\n if (sucess) sucess();\r\n }\r\n );\r\n }\r\n\r\n remove(data: any, sucess?: Function) {\r\n this.reset();\r\n this.post(\"remove\", data).subscribe(\r\n () => {},\r\n () => {\r\n this.read();\r\n },\r\n () => {\r\n this.read();\r\n if (sucess) sucess();\r\n }\r\n );\r\n }\r\n\r\n post(action: any, data?: any): Observable<any[]> {\r\n var url = this.baseUrl + `${action}${this.serializeParams(data)}`;\r\n return this.http.post(url, data).pipe(map((res) => <any[]>res));\r\n }\r\n}\r\n","/*\r\n<file>\r\n Project:\r\n @osovitny/anatoly\r\n\r\n Authors:\r\n Vadim Osovitny\r\n Anatoly Osovitny\r\n\r\n Created:\r\n 12 Nov 2017\r\n\r\n Version:\r\n 1.0\r\n\r\n Copyright (c) 2016-2020 Osovitny Inc. All rights reserved.\r\n</file>\r\n*/\r\n\r\n//Node\r\nimport { Injectable } from \"@angular/core\";\r\nimport { HttpClient } from \"@angular/common/http\";\r\n\r\n//App\r\nimport { BaseApiService } from \"../base/base-api.service\";\r\n\r\n@Injectable()\r\nexport class BillingApiService extends BaseApiService {\r\n constructor(protected http: HttpClient) {\r\n super(http);\r\n this.baseUrl += \"billing/\";\r\n }\r\n\r\n public requestNewSubscription(\r\n requestedPlan: Number,\r\n success?: Function,\r\n error?: Function\r\n ) {\r\n this.postQS(\"requestNewSubscription\", {\r\n requestedPlan: requestedPlan,\r\n }).subscribe(\r\n (data) => {},\r\n (e) => {\r\n if (error) error();\r\n },\r\n () => {\r\n if (success) success();\r\n }\r\n );\r\n }\r\n\r\n public cancelRequestedSubscription(success?: Function, error?: Function) {\r\n this.postQS(\"cancelRequestedSubscription\", null).subscribe(\r\n (data) => {},\r\n (e) => {\r\n if (error) error();\r\n },\r\n () => {\r\n if (success) success();\r\n }\r\n );\r\n }\r\n\r\n public buyAccess(\r\n requestedPlan: Number,\r\n success?: Function,\r\n error?: Function\r\n ) {\r\n this.postQS(\"buyAccess\", { requestedPlan: requestedPlan }).subscribe(\r\n (data) => {},\r\n (e) => {\r\n if (error) error();\r\n },\r\n () => {\r\n if (success) success();\r\n }\r\n );\r\n }\r\n}\r\n","/*\r\n<file>\r\n Project:\r\n @osovitny/anatoly\r\n\r\n Authors:\r\n Vadim Osovitny\r\n Anatoly Osovitny\r\n\r\n Created:\r\n 4 Mar 2020\r\n\r\n Version:\r\n 1.0\r\n\r\n Copyright (c) 2016-2020 Osovitny Inc. All rights reserved.\r\n</file>\r\n*/\r\n\r\n//Node\r\nimport { NgModule } from \"@angular/core\";\r\nimport { CommonModule } from \"@angular/common\";\r\n\r\n//\r\nimport { BillingApiService } from \"./services/billing-api.service\";\r\n\r\n@NgModule({\r\n imports: [CommonModule],\r\n providers: [BillingApiService],\r\n})\r\nexport class AnatolyDataModule {}\r\n","/*\r\n<file>\r\n Project:\r\n @osovitny/anatoly\r\n\r\n Authors:\r\n Vadim Osovitny\r\n Anatoly Osovitny\r\n\r\n Created:\r\n 4 Mar 2020\r\n\r\n Version:\r\n 1.0\r\n\r\n Copyright (c) 2016-2020 Osovitny Inc. All rights reserved.\r\n</file>\r\n*/\r\n\r\n// Services\r\nexport * from \"./base/base-api.service\";\r\nexport * from \"./base/grid/base-grid-read.service\";\r\nexport * from \"./base/grid/base-grid-edit.service\";\r\nexport * from \"./services/billing-api.service\";\r\n\r\n// Module\r\nexport { AnatolyDataModule } from \"./data.module\";\r\n","/*\r\n<file>\r\n Project:\r\n @osovitny/anatoly\r\n\r\n Authors:\r\n Vadim Osovitny\r\n Anatoly Osovitny\r\n\r\n Created:\r\n 14 Aug 2018\r\n\r\n Version:\r\n 1.0\r\n\r\n Copyright (c) 2016-2020 Osovitny Inc. All rights reserved.\r\n</file>\r\n*/\r\n\r\n// Node\r\nimport { Component, Input, OnInit } from \"@angular/core\";\r\n\r\n// Services\r\nimport { AppContextService } from \"../../../core/services/appcontext.service\";\r\nimport { BillingApiService } from \"../../../data/services/billing-api.service\";\r\nimport { Alerts } from \"../../../core/alerts\";\r\n\r\n@Component({\r\n selector: \"anatoly-buyaccess-button\",\r\n templateUrl: \"./buyaccess-button.component.html\",\r\n})\r\nexport class BuyAccessButtonComponent implements OnInit {\r\n public contextUpdated = false;\r\n public isUserSignedIn = false;\r\n public currentPlan = 0;\r\n public currentPlanTitle = \"\";\r\n\r\n @Input() plan: number;\r\n @Input() plantitle: string;\r\n\r\n constructor(\r\n private appcontext: AppContextService,\r\n private api: BillingApiService\r\n ) {}\r\n\r\n ngOnInit() {\r\n if (!this.appcontext.isUserSignedIn()) {\r\n this.contextUpdated = true;\r\n return;\r\n }\r\n\r\n this.appcontext.getCurrent((current) => {\r\n this.isUserSignedIn = current.isUserSignedIn;\r\n\r\n if (this.isUserSignedIn) {\r\n this.currentPlan = current.account.billingPlan;\r\n this.currentPlanTitle = current.account.billingPlanAsString;\r\n }\r\n\r\n this.contextUpdated = true;\r\n });\r\n }\r\n\r\n onBuyPlan() {\r\n const text = `Requested plan: ${this.plantitle} `;\r\n const that = this;\r\n\r\n Alerts.AreYouSure(text, \"Buying access\", \"Confirm change\", \"Cancel\", () => {\r\n that.api.buyAccess(that.plan, () => {\r\n Alerts.Success(\"Access Granted\", null, () => {\r\n (window as any).location.reload();\r\n });\r\n });\r\n });\r\n }\r\n}\r\n","/*\r\n<file>\r\n Project:\r\n @osovitny/anatoly\r\n\r\n Authors:\r\n Vadim Osovitny\r\n Anatoly Osovitny\r\n\r\n Created:\r\n 1 Jun 2018\r\n\r\n Version:\r\n 1.0\r\n\r\n Copyright (c) 2016-2020 Osovitny Inc. All rights reserved.\r\n</file>\r\n*/\r\n\r\n// Node\r\nimport { Component, Input, OnInit } from \"@angular/core\";\r\n\r\n// Services\r\nimport { AppContextService } from \"../../../core/services/appcontext.service\";\r\n\r\n@Component({\r\n selector: \"anatoly-subscribe-plan-button\",\r\n templateUrl: \"./subscribe-plan-button.component.html\",\r\n})\r\nexport class SubscribePlanButtonComponent implements OnInit {\r\n public contextUpdated = false;\r\n public isUserSignedIn = false;\r\n public currentPlan = 0;\r\n public currentPlanTitle = \"\";\r\n public requestedPlan = 0;\r\n public requestedPlanTitle = \"\";\r\n\r\n @Input() plan: number;\r\n @Input() plantitle: string;\r\n\r\n constructor(private appcontext: AppContextService) {}\r\n\r\n ngOnInit() {\r\n if (!this.appcontext.isUserSignedIn()) {\r\n this.contextUpdated = true;\r\n return;\r\n }\r\n\r\n this.appcontext.getCurrent((current) => {\r\n this.isUserSignedIn = current.isUserSignedIn;\r\n\r\n if (this.isUserSignedIn) {\r\n this.currentPlan = current.account.billingPlan;\r\n this.currentPlanTitle = current.account.billingPlanAsString;\r\n this.requestedPlan = current.account.requestedBillingPlan;\r\n this.requestedPlanTitle = current.account.requestedBillingPlanAsString;\r\n }\r\n\r\n this.contextUpdated = true;\r\n });\r\n }\r\n}\r\n","/*\r\n<file>\r\n Project:\r\n @osovitny/anatoly\r\n\r\n Authors:\r\n Vadim Osovitny\r\n Anatoly Osovitny\r\n\r\n Created:\r\n 12 Nov 2017\r\n\r\n Version:\r\n 1.0\r\n\r\n Copyright (c) 2016-2020 Osovitny Inc. All rights reserved.\r\n</file>\r\n*/\r\n\r\n// Node\r\nimport { Component, Input } from \"@angular/core\";\r\nimport { BillingApiService } from \"../../../data\";\r\nimport { Alerts } from \"../../../core/alerts\";\r\n\r\n// Services\r\n\r\n@Component({\r\n selector: \"anatoly-upgrade-plan-button\",\r\n templateUrl: \"./upgrade-plan-button.component.html\",\r\n})\r\nexport class UpgradePlanButtonComponent {\r\n @Input() currentplantitle: string;\r\n @Input() requestedplan: number;\r\n @Input() requestedplantitle: string;\r\n\r\n constructor(private api: BillingApiService) {}\r\n\r\n onUpgradePlan() {\r\n const text = `Current plan: ${this.currentplantitle} New plan: ${this.requestedplantitle}`;\r\n const that = this;\r\n\r\n Alerts.AreYouSure(\r\n text,\r\n \"Change billing plan\",\r\n \"Confirm change\",\r\n \"Cancel\",\r\n () => {\r\n that.api.requestNewSubscription(that.requestedplan, () => {\r\n Alerts.Success(\r\n \"Your request for changing plan has been sent.\",\r\n null,\r\n () => {\r\n (window as any).location.reload();\r\n }\r\n );\r\n });\r\n }\r\n );\r\n }\r\n}\r\n","/*\r\n<file>\r\n Project:\r\n @osovitny/anatoly\r\n\r\n Authors:\r\n Vadim Osovitny\r\n Anatoly Osovitny\r\n\r\n Created:\r\n 4 Jul 2018\r\n\r\n Version:\r\n 1.0\r\n\r\n Copyright (c) 2016-2020 Osovitny Inc. All rights reserved.\r\n</file>\r\n*/\r\n\r\nimport { Component, Input } from \"@angular/core\";\r\n\r\n@Component({\r\n selector: \"anatoly-signin-button\",\r\n templateUrl: \"./signin-button.component.html\",\r\n})\r\nexport class SignInButtonComponent {\r\n @Input() classbtn: string;\r\n\r\n constructor() {}\r\n}\r\n","/*\r\n<file>\r\n Project:\r\n @osovitny/anatoly\r\n\r\n Authors:\r\n Vadim Osovitny\r\n Anatoly Osovitny\r\n\r\n Created:\r\n 4 Jul 2018\r\n\r\n Version:\r\n 1.0\r\n\r\n Copyright (c) 2016-2020 Osovitny Inc. All rights reserved.\r\n</file>\r\n*/\r\n\r\nimport { Component, Input } from \"@angular/core\";\r\n\r\n@Component({\r\n selector: \"anatoly-signout-button\",\r\n templateUrl: \"./signout-button.component.html\",\r\n})\r\nexport class SignOutButtonComponent {\r\n @Input() classbtn: string;\r\n\r\n constructor() {}\r\n}\r\n","/*\r\n<file>\r\n Project:\r\n @osovitny/anatoly\r\n\r\n Authors:\r\n Vadim Osovitny\r\n Anatoly Osovitny\r\n\r\n Created:\r\n 4 Jul 2018\r\n\r\n Version:\r\n 1.0\r\n\r\n Copyright (c) 2016-2020 Osovitny Inc. All rights reserved.\r\n</file>\r\n*/\r\n\r\nimport { Component, Input } from \"@angular/core\";\r\n\r\n@Component({\r\n selector: \"anatoly-signup-button\",\r\n templateUrl: \"./signup-button.component.html\",\r\n})\r\nexport class SignUpButtonComponent {\r\n @Input() classbtn: string;\r\n}\r\n","/*\r\n<file>\r\n Project:\r\n @osovitny/anatoly\r\n\r\n Authors:\r\n Vadim Osovitny\r\n Anatoly Osovitny\r\n\r\n Created:\r\n 23 Apr 2018\r\n\r\n Version:\r\n 1.0\r\n\r\n Copyright (c) 2016-2020 Osovitny Inc. All rights reserved.\r\n</file>\r\n*/\r\n\r\n// Node\r\nimport { Component, Input, OnInit } from \"@angular/core\";\r\n\r\n@Component({\r\n selector: \"anatoly-content-header\",\r\n templateUrl: \"./content-header.component.html\",\r\n})\r\nexport class ContentHeaderComponent implements OnInit {\r\n @Input() title?: string;\r\n\r\n ngOnInit() {\r\n if (this.title == null) {\r\n this.title = \"\";\r\n }\r\n }\r\n}\r\n","/*\r\n<file>\r\n Project:\r\n @osovitny/anatoly\r\n\r\n Authors:\r\n Vadim Osovitny\r\n Anatoly Osovitny\r\n\r\n Created:\r\n 28 Aug 2018\r\n\r\n Version:\r\n 1.0\r\n\r\n Copyright (c) 2016-2020 Osovitny Inc. All rights reserved.\r\n</file>\r\n*/\r\n\r\n// Node\r\nimport { Utils } from \"../../core/utils\";\r\n\r\nexport class BaseComponent {\r\n getQSId() {\r\n var id = Utils.getValueByNameInQS(\"id\");\r\n if (typeof id === 'undefined' || id == '') return null;\r\n\r\n return id;\r\n }\r\n}\r\n","/*\r\n<file>\r\n Project:\r\n @osovitny/anatoly\r\n\r\n Authors:\r\n Vadim Osovitny\r\n Anatoly Osovitny\r\n\r\n Created:\r\n 20 Nov 2017\r\n\r\n Version:\r\n 1.0\r\n\r\n Copyright (c) 2016-2020 Osovitny Inc. All rights reserved.\r\n</file>\r\n*/\r\n\r\n// Node\r\nimport { Input } from \"@angular/core\";\r\nimport { FormGroup } from \"@angular/forms\";\r\n\r\n// Custom\r\nimport { BaseComponent } from \"./base.component\";\r\nimport { Utils } from \"../../core/utils\";\r\nexport class BaseEditComponent extends BaseComponent {\r\n @Input() formGroup: FormGroup;\r\n\r\n @Input() formSubmitted = false;\r\n\r\n constructor() {\r\n super();\r\n }\r\n\r\n isActionAdding() {\r\n let id = Utils.getValueByNameInQS(\"id\");\r\n if (typeof id === \"undefined\" || id === \"\") return true;\r\n\r\n return false;\r\n }\r\n\r\n getEntityId() {\r\n return this.getQSId();\r\n }\r\n\r\n isItemInvalid(name: string) {\r\n if (typeof name === \"undefined\" || name === \"\") {\r\n return false;\r\n }\r\n\r\n if (!this.formGroup) {\r\n return false;\r\n }\r\n\r\n if (this.formGroup.get(name)) {\r\n return (\r\n (this.formSubmitted && this.formGroup.get(name).invalid) ||\r\n (this.formGroup.get(name).touched && this.formGroup.get(name).invalid)\r\n );\r\n }\r\n\r\n return false;\r\n }\r\n\r\n getFormValue(name) {\r\n return this.formGroup.controls[name].value;\r\n }\r\n\r\n setFormValue(name, value) {\r\n this.formGroup.controls[name].setValue(value);\r\n }\r\n\r\n getFormGroupValue(groupName, name) {\r\n return this.formGroup.controls[groupName].get(name).value;\r\n }\r\n\r\n setFormGroupValue(groupName, name, value) {\r\n this.formGroup.controls[groupName].get(name).setValue(value);\r\n }\r\n}\r\n","/*\r\n<file>\r\n Project:\r\n @osovitny/anatoly\r\n\r\n Authors:\r\n Vadim Osovitny\r\n Anatoly Osovitny\r\n\r\n Created:\r\n 12 Dec 2017\r\n\r\n Version:\r\n 1.0\r\n\r\n Copyright (c) 2016-2020 Osovitny Inc. All rights reserved.\r\n</file>\r\n*/\r\n\r\nexport const DefaultEditorOptions: Object = {\r\n placeholderText: \"Edit Your Content Here\",\r\n charCounterCount: true,\r\n heightMin: 100,\r\n toolbarInline: false,\r\n\r\n toolbarButtons: {\r\n moreText: {\r\n buttons: [\r\n \"bold\",\r\n \"italic\",\r\n \"underline\",\r\n \"strikeThrough\",\r\n \"subscript\",\r\n \"superscript\",\r\n \"fontFamily\",\r\n \"fontSize\",\r\n \"textColor\",\r\n \"backgroundColor\",\r\n \"inlineClass\",\r\n \"inlineStyle\",\r\n ],\r\n },\r\n moreParagraph: {\r\n buttons: [\r\n \"alignLeft\",\r\n \"alignCenter\",\r\n \"formatOLSimple\",\r\n \"alignRight\",\r\n \"alignJustify\",\r\n \"formatOL\",\r\n \"formatUL\",\r\n \"paragraphFormat\",\r\n \"paragraphStyle\",\r\n \"lineHeight\",\r\n \"outdent\",\r\n \"indent\",\r\n \"quote\",\r\n ],\r\n },\r\n moreRich: {\r\n buttons: [\r\n \"insertLink\",\r\n \"insertImage\",\r\n \"insertTable\",\r\n \"emoticons\",\r\n \"fontAwesome\",\r\n \"specialCharacters\",\r\n \"embedly\",\r\n ],\r\n },\r\n moreMisc: {\r\n buttons: [\r\n \"selectAll\",\r\n \"clearFormatting\",\r\n \"html\",\r\n \"undo\",\r\n \"redo\",\r\n \"fullscreen\",\r\n ],\r\n align: \"right\",\r\n },\r\n },\r\n\r\n /*\r\n Upload:\r\n https://www.froala.com/wysiwyg-editor/docs/concepts/image/upload\r\n */\r\n imageUploadURL: \"/api/HtmlEditor/UploadImage\",\r\n imageAllowedTypes: [\"jpeg\", \"jpg\", \"png\"],\r\n imageUploadParams: { uploadType: \"\", uploadParentId: \"\" },\r\n};\r\n","/*\r\n<file>\r\n Project:\r\n @osovitny/anatoly\r\n\r\n Authors:\r\n Vadim Osovitny\r\n Anatoly Osovitny\r\n\r\n Created:\r\n 12 Dec 2017\r\n\r\n Version:\r\n 1.0\r\n\r\n Copyright (c) 2016-2020 Osovitny Inc. All rights reserved.\r\n</file>\r\n*/\r\n\r\n//Node\r\nimport { Component, OnInit, Input, AfterViewInit } from \"@angular/core\";\r\n\r\nimport FroalaEditor from \"froala-editor\";\r\n\r\n//Custom\r\nimport { AppCoreSettings } from \"../../../core/consts\";\r\nimport { BaseEditComponent } from \"../base-edit.component\";\r\nimport { DefaultEditorOptions } from \"./html-editor.defaultoptions\";\r\n\r\nexport class BaseHtmlEditorComponent extends BaseEditComponent\r\n implements OnInit, AfterViewInit {\r\n protected froalaEditor;\r\n\r\n //Public members\r\n public options;\r\n public froalaEditorInitialized: boolean = false;\r\n public afterInitializedActions = [];\r\n\r\n //Inputs\r\n @Input() editorLabelText: string = \"Html\";\r\n @Input() editorOptions: Object = {};\r\n\r\n constructor() {\r\n super();\r\n }\r\n\r\n ngOnInit() {\r\n let opt = this.editorOptions;\r\n if (typeof this.editorOptions == \"string\") {\r\n opt = JSON.parse(this.editorOptions);\r\n }\r\n\r\n let newOptions: any = $.extend({}, DefaultEditorOptions, opt);\r\n let key = AppCoreSettings.froalaEditorKey;\r\n\r\n if (key) {\r\n newOptions = $.extend(\r\n {},\r\n newOptions,\r\n JSON.parse('{ \"key\": \"' + key + '\" }')\r\n );\r\n }\r\n\r\n if (newOptions.events && newOptions.events.initialized) {\r\n newOptions.events.initialized.overridden = false;\r\n }\r\n\r\n this.options = newOptions;\r\n }\r\n\r\n ngAfterViewInit() {\r\n let that = this;\r\n setTimeout(function () {\r\n that.froalaEditorInitialized = true;\r\n that.onInitialized();\r\n }, 300);\r\n }\r\n\r\n private onInitialized() {\r\n let actions = this.afterInitializedActions;\r\n\r\n //Clear actions\r\n this.afterInitializedActions = [];\r\n\r\n if (actions) {\r\n for (var i = 0; i < actions.length; i++) {\r\n actions[i]();\r\n }\r\n }\r\n }\r\n\r\n protected getEditor() {\r\n if (this.froalaEditor) return this.froalaEditor.getEditor();\r\n\r\n return null;\r\n }\r\n\r\n //Public Funcs\r\n public doAfterInitialized(action) {\r\n let that = this;\r\n\r\n if (!this.froalaEditorInitialized) {\r\n this.afterInitializedActions.push(() => {\r\n action(that);\r\n });\r\n } else {\r\n action(that);\r\n }\r\n }\r\n\r\n public initializeControl(control) {\r\n this.froalaEditor = control;\r\n this.froalaEditor.initialize();\r\n }\r\n\r\n public setUploadParams(uploadType, uploadParentId) {\r\n this.doAfterInitialized(function (that) {\r\n var editor = that.getEditor();\r\n if (typeof editor == \"undefined\" || editor == null) {\r\n return;\r\n }\r\n\r\n editor.opts.imageUploadParams.uploadType = uploadType;\r\n editor.opts.imageUploadParams.uploadParentId = uploadParentId;\r\n });\r\n }\r\n}\r\n","/*\r\n<file>\r\n Project:\r\n @osovitny/anatoly\r\n\r\n Authors:\r\n Vadim Osovitny\r\n Anatoly Osovitny\r\n\r\n Created:\r\n 12 Dec 2017\r\n\r\n Version:\r\n 1.0\r\n\r\n Copyright (c) 2016-2020 Osovitny Inc. All rights reserved.\r\n</file>\r\n*/\r\n\r\n//Node\r\nimport { Component, Input } from \"@angular/core\";\r\n\r\n//Custom\r\nimport { BaseHtmlEditorComponent } from \"./base-html-editor.component\";\r\n\r\n@Component({\r\n selector: \"anatoly-html-editor\",\r\n templateUrl: \"./html-editor.component.html\",\r\n})\r\nexport class HtmlEditorComponent extends BaseHtmlEditorComponent {\r\n constructor() {\r\n super();\r\n }\r\n\r\n public setHtml(content) {\r\n this.doAfterInitialized(function (that) {\r\n var editor = that.getEditor();\r\n if (typeof editor == \"undefined\" || editor == null) {\r\n return;\r\n }\r\n\r\n editor.html.set(content);\r\n });\r\n }\r\n\r\n public getHtml() {\r\n var editor = this.getEditor();\r\n if (typeof editor == \"undefined\" || editor == null) {\r\n return;\r\n }\r\n\r\n return editor.html.get(false);\r\n }\r\n}\r\n","/*\r\n<file>\r\n Project:\r\n @osovitny/anatoly\r\n\r\n Authors:\r\n Vadim Osovitny\r\n Anatoly Osovitny\r\n\r\n Created:\r\n 12 Dec 2017\r\n\r\n Version:\r\n 1.0\r\n\r\n Copyright (c) 2016-2020 Osovitny Inc. All rights reserved.\r\n</file>\r\n*/\r\n\r\n//Node\r\nimport { Component, Input } from \"@angular/core\";\r\n\r\n//Custom\r\nimport { BaseHtmlEditorComponent } from \"./base-html-editor.component\";\r\n\r\n@Component({\r\n selector: \"anatoly-forms-html-editor\",\r\n templateUrl: \"./forms-html-editor.component.html\",\r\n})\r\nexport class FormsHtmlEditorComponent extends BaseHtmlEditorComponent {\r\n @Input() editorFormKey: string = \"html\";\r\n\r\n constructor() {\r\n super();\r\n }\r\n\r\n public setFormValueAfterInitialized(name, value) {\r\n this.doAfterInitialized(function (that) {\r\n that.setFormValue(name, value);\r\n });\r\n }\r\n}\r\n","/*\r\n<file>\r\n Project:\r\n @osovitny/anatoly\r\n\r\n Authors:\r\n Vadim Osovitny\r\n Anatoly Osovitny\r\n\r\n Created:\r\n 8 Dec 2017\r\n\r\n Version:\r\n 1.0\r\n\r\n Copyright (c) 2016-2020 Osovitny Inc. All rights reserved.\r\n</file>\r\n*/\r\n\r\n// Node\r\nimport { FormGroup } from \"@angular/forms\";\r\n\r\n//Custom\r\nimport { BaseEditComponent } from \"../base-edit.component\";\r\n\r\nexport class ValidationSummaryComponent extends BaseEditComponent {\r\n constructor() {\r\n super();\r\n }\r\n\r\n getFormValidationMessages(): string[] {\r\n let messages: string[] = [];\r\n\r\n Object.keys(this.formGroup.controls).forEach((k) => {\r\n var control = this.formGroup.controls[k];\r\n\r\n if ((<FormGroup>control).controls != null) {\r\n Object.keys((<FormGroup>control).controls).forEach((k) => {\r\n var child = (<FormGroup>control).controls[k];\r\n this.getValidationMessages(child, k).forEach((m) => messages.push(m));\r\n });\r\n } else {\r\n this.getValidationMessages(control, k).forEach((m) => messages.push(m));\r\n }\r\n });\r\n\r\n return messages;\r\n }\r\n\r\n getValidationMessages(state: any, thingName?: string) {\r\n let thing: string = state.path || thingName;\r\n let messages: string[] = [];\r\n\r\n if (state.errors) {\r\n for (let errorName in state.errors) {\r\n if (state.errors.hasOwnProperty(errorName)) {\r\n switch (errorName) {\r\n case \"required\":\r\n messages.push(`${thing} is required`);\r\n break;\r\n\r\n case \"minlength\":\r\n messages.push(\r\n `${thing} must be at least ${state.errors[\"minlength\"].requiredLength} characters`\r\n );\r\n break;\r\n\r\n case \"pattern\":\r\n messages.push(`${thing} contains illegal characters`);\r\n break;\r\n }\r\n }\r\n }\r\n }\r\n\r\n return messages;\r\n }\r\n}\r\n","/*\r\n<file>\r\n Project:\r\n @osovitny/anatoly\r\n\r\n Authors:\r\n Vadim Osovitny\r\n Anatoly Osovitny\r\n\r\n Created:\r\n 7 Dec 2017\r\n\r\n Version:\r\n 1.0\r\n\r\n Copyright (c) 2016-2020 Osovitny Inc. All rights reserved.\r\n</file>\r\n*/\r\n\r\n// Node\r\nimport { Component, Input } from \"@angular/core\";\r\nimport { ValidationSummaryComponent } from \"./validation-summary.component\";\r\n\r\n@Component({\r\n selector: \"anatoly-form-validation-summary\",\r\n templateUrl: \"./form-validation-summary.component.html\",\r\n})\r\nexport class FormValidationSummaryComponent extends ValidationSummaryComponent {\r\n @Input() isVisible = false;\r\n\r\n constructor() {\r\n super();\r\n }\r\n\r\n getErrors(): string[] {\r\n const messages = this.getFormValidationMessages();\r\n return messages;\r\n }\r\n}\r\n","/*\r\n<file>\r\n Project:\r\n @osovitny/anatoly\r\n\r\n Authors:\r\n Vadim Osovitny\r\n Anatoly Osovitny\r\n\r\n Created:\r\n 6 Dec 2017\r\n\r\n Version:\r\n 1.0\r\n\r\n Copyright (c) 2016-2020 Osovitny Inc. All rights reserved.\r\n</file>\r\n*/\r\n\r\n// Node\r\nimport { Component, Input } from \"@angular/core\";\r\nimport { ValidationSummaryComponent } from \"./validation-summary.component\";\r\n\r\n@Component({\r\n selector: \"anatoly-item-validation-summary\",\r\n templateUrl: \"./item-validation-summary.component.html\",\r\n})\r\nexport class ItemValidationSummaryComponent extends ValidationSummaryComponent {\r\n @Input() controlName: string;\r\n @Input() controlTitle: string;\r\n\r\n constructor() {\r\n super();\r\n }\r\n}\r\n","/*\r\n<file>\r\n Project:\r\n @osovitny/anatoly\r\n\r\n Authors:\r\n Vadim Osovitny\r\n Anatoly Osovitny\r\n\r\n Created:\r\n 26 Jun 2020\r\n\r\n Version:\r\n 1.0\r\n\r\n Copyright (c) 2016-2020 Osovitny Inc. All rights reserved.\r\n</file>\r\n*/\r\n\r\n// Node\r\nimport { NgModule, ModuleWithProviders } from \"@angular/core\";\r\nimport { CommonModule } from \"@angular/common\";\r\nimport { ReactiveFormsModule, FormsModule } from \"@angular/forms\";\r\n\r\n//Froala\r\nimport { FroalaEditorModule, FroalaViewModule } from \"angular-froala-wysiwyg\";\r\n\r\n//Components\r\n//billing\r\nimport { SubscribePlanButtonComponent } from \"./components/billing/subscribe-plan-button.component\";\r\nimport { UpgradePlanButtonComponent } from \"./components/billing/upgrade-plan-button.component\";\r\nimport { BuyAccessButtonComponent } from \"./components/billing/buyaccess-button.component\";\r\n\r\n// identity\r\nimport { SignInButtonComponent } from \"./components/identity/signin-button.component\";\r\nimport { SignUpButtonComponent } from \"./components/identity/signup-button.component\";\r\nimport { SignOutButtonComponent } from \"./components/identity/signout-button.component\";\r\n\r\n// validation\r\nimport { FormValidationSummaryComponent } from \"./components/validation/form-validation-summary.component\";\r\nimport { ItemValidationSummaryComponent } from \"./components/validation/item-validation-summary.component\";\r\n\r\n// html-editor\r\nimport { HtmlEditorComponent } from \"./components/html-editor/html-editor.component\";\r\nimport { FormsHtmlEditorComponent } from \"./components/html-editor/forms-html-editor.component\";\r\n\r\n//\r\nimport { ContentHeaderComponent } from \"./components/content-header/content-header.component\";\r\n\r\nexport const FroalaEditorModuleWithProviders = FroalaEditorModule.forRoot();\r\nexport const FroalaViewModuleWithProviders = FroalaViewModule.forRoot();\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n ReactiveFormsModule,\r\n FormsModule,\r\n\r\n FroalaEditorModuleWithProviders,\r\n FroalaViewModuleWithProviders,\r\n ],\r\n declarations: [\r\n SubscribePlanButtonComponent,\r\n UpgradePlanButtonComponent,\r\n BuyAccessButtonComponent,\r\n SignInButtonComponent,\r\n SignUpButtonComponent,\r\n SignOutButtonComponent,\r\n FormValidationSummaryComponent,\r\n ItemValidationSummaryComponent,\r\n HtmlEditorComponent,\r\n FormsHtmlEditorComponent,\r\n ContentHeaderComponent\r\n ],\r\n exports: [\r\n SubscribePlanButtonComponent,\r\n UpgradePlanButtonComponent,\r\n BuyAccessButtonComponent,\r\n SignInButtonComponent,\r\n SignUpButtonComponent,\r\n SignOutButtonComponent,\r\n FormValidationSummaryComponent,\r\n ItemValidationSummaryComponent,\r\n HtmlEditorComponent,\r\n FormsHtmlEditorComponent,\r\n ContentHeaderComponent\r\n ],\r\n})\r\nexport class AnatolyUIModule {}\r\n","/*\r\n<file>\r\n Project:\r\n @osovitny/anatoly\r\n\r\n Authors:\r\n Vadim Osovitny\r\n Anatoly Osovitny\r\n\r\n Created:\r\n 26 Jun 2020\r\n\r\n Version:\r\n 1.0\r\n\r\n Copyright (c) 2016-2020 Osovitny Inc. All rights reserved.\r\n</file>\r\n*/\r\n\r\n// Billing\r\nexport * from \"./components/billing/buyaccess-button.component\";\r\nexport * from \"./components/billing/subscribe-plan-button.component\";\r\nexport * from \"./components/billing/upgrade-plan-button.component\";\r\n\r\n// Identity\r\nexport * from \"./components/identity/signin-button.component\";\r\nexport * from \"./components/identity/signout-button.component\";\r\nexport * from \"./components/identity/signup-button.component\";\r\n\r\n//\r\nexport * from \"./components/content-header/content-header.component\";\r\nexport * from \"./components/html-editor/html-editor.component\";\r\nexport * from \"./components/html-editor/forms-html-editor.component\";\r\n\r\n//\r\nexport * from \"./components/validation/validation-summary.component\";\r\nexport * from \"./components/validation/form-validation-summary.component\";\r\nexport * from \"./components/validation/item-validation-summary.component\";\r\n\r\n//\r\nexport * from \"./components/base.component\";\r\nexport * from \"./components/base-edit.component\";\r\n\r\n// Module\r\nexport { AnatolyUIModule } from \"./ui.module\";\r\n","/*\r\n * Public API Surface of anatoly\r\n */\r\n\r\nexport * from \"./lib/core\";\r\nexport * from \"./lib/data\";\r\nexport * from \"./lib/ui\";\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["uuidv4"],"mappings":"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"}
1
+ {"version":3,"file":"osovitny-anatoly.js","sources":["../../../projects/anatoly/src/lib/core/consts/settings.ts","../../../projects/anatoly/src/lib/core/consts/index.ts","../../../projects/anatoly/src/lib/core/guards/once-import.guard.ts","../../../projects/anatoly/src/lib/core/alerts.ts","../../../projects/anatoly/src/lib/core/utils.ts","../../../projects/anatoly/src/lib/core/subs.ts","../../../projects/anatoly/src/lib/core/guid.ts","../../../projects/anatoly/src/lib/core/go/base-go.service.ts","../../../projects/anatoly/src/lib/core/logging/logging.service.ts","../../../projects/anatoly/src/lib/core/logging/globalErrorHandler.ts","../../../projects/anatoly/src/lib/data/base/base-api.service.ts","../../../projects/anatoly/src/lib/core/services/appcontext.service.ts","../../../projects/anatoly/src/lib/core/services/loading.service.ts","../../../projects/anatoly/src/lib/core/interceptors/httpInterceptor.ts","../../../projects/anatoly/src/lib/core/core.module.ts","../../../projects/anatoly/src/lib/core/index.ts","../../../projects/anatoly/src/lib/data/base/grid/base-grid-read.service.ts","../../../projects/anatoly/src/lib/data/base/grid/base-grid-edit.service.ts","../../../projects/anatoly/src/lib/data/services/billing-api.service.ts","../../../projects/anatoly/src/lib/data/data.module.ts","../../../projects/anatoly/src/lib/data/index.ts","../../../projects/anatoly/src/lib/ui/components/billing/buyaccess-button.component.ts","../../../projects/anatoly/src/lib/ui/components/billing/subscribe-plan-button.component.ts","../../../projects/anatoly/src/lib/ui/components/billing/upgrade-plan-button.component.ts","../../../projects/anatoly/src/lib/ui/components/identity/signin-button.component.ts","../../../projects/anatoly/src/lib/ui/components/identity/signout-button.component.ts","../../../projects/anatoly/src/lib/ui/components/identity/signup-button.component.ts","../../../projects/anatoly/src/lib/ui/components/content-header/content-header.component.ts","../../../projects/anatoly/src/lib/ui/components/base.component.ts","../../../projects/anatoly/src/lib/ui/components/base-edit.component.ts","../../../projects/anatoly/src/lib/ui/components/html-editor/html-editor.defaultoptions.ts","../../../projects/anatoly/src/lib/ui/components/html-editor/base-html-editor.component.ts","../../../projects/anatoly/src/lib/ui/components/html-editor/html-editor.component.ts","../../../projects/anatoly/src/lib/ui/components/html-editor/forms-html-editor.component.ts","../../../projects/anatoly/src/lib/ui/components/validation/validation-summary.component.ts","../../../projects/anatoly/src/lib/ui/components/validation/form-validation-summary.component.ts","../../../projects/anatoly/src/lib/ui/components/validation/item-validation-summary.component.ts","../../../projects/anatoly/src/lib/ui/directives/native-element.directive.ts","../../../projects/anatoly/src/lib/ui/ui.module.ts","../../../projects/anatoly/src/lib/ui/index.ts","../../../projects/anatoly/src/public-api.ts","../../../projects/anatoly/src/osovitny-anatoly.ts"],"sourcesContent":["/*\r\n<file>\r\n Project:\r\n @osovitny/anatoly\r\n\r\n Authors:\r\n Vadim Osovitny\r\n Anatoly Osovitny\r\n\r\n Created:\r\n 26 Jun 2020\r\n\r\n Version:\r\n 1.0\r\n\r\n Copyright (c) 2016-2020 Osovitny Inc. All rights reserved.\r\n</file>\r\n*/\r\n\r\nexport const ContextInitState = JSON.parse(\r\n ((\r\n document.getElementById('contextInitState')\r\n ) as HTMLInputElement).getAttribute('data-contextinitstate')\r\n);\r\n\r\nexport const AppCoreSettings = JSON.parse(\r\n ((\r\n document.getElementById('appCoreSettings')\r\n ) as HTMLInputElement).getAttribute('data-appcoresettings')\r\n);\r\n","/*\r\n<file>\r\n Project:\r\n @osovitny/anatoly\r\n\r\n Authors:\r\n Vadim Osovitny\r\n Anatoly Osovitny\r\n\r\n Created:\r\n 26 Jun 2020\r\n\r\n Version:\r\n 1.0\r\n\r\n Copyright (c) 2016-2020 Osovitny Inc. All rights reserved.\r\n</file>\r\n*/\r\n\r\nexport { ContextInitState, AppCoreSettings } from './settings';\r\n","/*\r\n<file>\r\n Project:\r\n @osovitny/anatoly\r\n\r\n Authors:\r\n Vadim Osovitny\r\n Anatoly Osovitny\r\n\r\n Created:\r\n 26 Jun 2020\r\n\r\n Version:\r\n 1.0\r\n\r\n Copyright (c) 2016-2020 Osovitny Inc. All rights reserved.\r\n</file>\r\n*/\r\n\r\nexport function throwIfAlreadyLoaded(parentModule: any, moduleName: string) {\r\n if (parentModule) {\r\n throw new Error(\r\n `${moduleName} has already been loaded. Import ${moduleName} modules in the AppModule only.`\r\n );\r\n }\r\n}\r\n","/*\r\n<file>\r\n Project:\r\n @osovitny/anatoly\r\n\r\n Authors:\r\n Vadim Osovitny\r\n Anatoly Osovitny\r\n\r\n Created:\r\n 4 Mar 2020\r\n\r\n Version:\r\n 1.0\r\n\r\n Copyright (c) 2016-2020 Osovitny Inc. All rights reserved.\r\n</file>\r\n*/\r\n\r\nimport Swal from \"sweetalert2\";\r\n\r\nexport class Alerts {\r\n public static Info(text) {\r\n Swal.fire({\r\n title: \"Information\",\r\n text: text,\r\n icon: \"info\",\r\n confirmButtonText: \"OK\",\r\n });\r\n }\r\n\r\n public static Warning(text) {\r\n Swal.fire({\r\n title: \"Warning\",\r\n text: text,\r\n icon: \"warning\",\r\n confirmButtonText: \"OK\",\r\n });\r\n }\r\n\r\n public static Error(text) {\r\n Swal.fire({\r\n title: \"Error\",\r\n text: text,\r\n icon: \"error\",\r\n confirmButtonText: \"OK\",\r\n });\r\n }\r\n\r\n public static NotImplemented() {\r\n this.Warning(\"Not Implemented Yet\");\r\n }\r\n\r\n public static ErrorOccurred() {\r\n this.Error(\"Sorry, an unexpected error occurred\");\r\n }\r\n\r\n public static AreYouSure(\r\n text,\r\n title?,\r\n confirmButtonText?,\r\n cancelButtonText?,\r\n successAction?,\r\n cancelAction?\r\n ) {\r\n if (typeof title == \"undefined\" || title == null) title = \"Are you sure?\";\r\n\r\n Swal.fire({\r\n title: title,\r\n text: text,\r\n icon: \"warning\",\r\n confirmButtonText: confirmButtonText,\r\n cancelButtonText: cancelButtonText,\r\n showCancelButton: true,\r\n }).then((result) => {\r\n if (result.value) {\r\n if (successAction) {\r\n successAction();\r\n }\r\n }\r\n // result.dismiss can be 'cancel', 'overlay', 'close', and 'timer'\r\n else if (\r\n result.dismiss == Swal.DismissReason.cancel ||\r\n result.dismiss == Swal.DismissReason.close\r\n ) {\r\n if (cancelAction) {\r\n cancelAction();\r\n }\r\n }\r\n });\r\n }\r\n\r\n public static Success(text?, title?, successAction?) {\r\n if (typeof title == \"undefined\" || title == null) title = \"Success\";\r\n\r\n if (!text) {\r\n text = \"Operation was successful\";\r\n }\r\n\r\n Swal.fire({\r\n title: title,\r\n text: text,\r\n icon: \"success\",\r\n confirmButtonText: \"OK\",\r\n }).then(function () {\r\n if (successAction) {\r\n successAction();\r\n }\r\n });\r\n }\r\n\r\n public static Cancel(text?) {\r\n if (!text) {\r\n text = \"Operation has been cancled\";\r\n }\r\n\r\n Swal.fire({\r\n title: \"Cancelled\",\r\n text: text,\r\n icon: \"info\",\r\n });\r\n }\r\n\r\n //Notifications\r\n public static NotificationCancel(text?, title?) {\r\n if (typeof title == \"undefined\" || title == null) {\r\n title = \"Canceled\";\r\n }\r\n\r\n if (!text) {\r\n text = \"Operation has been canceled\";\r\n }\r\n\r\n const toast = Swal.mixin({\r\n toast: true,\r\n position: \"top-end\",\r\n showConfirmButton: false,\r\n timer: 3000,\r\n timerProgressBar: true,\r\n });\r\n\r\n toast.fire({\r\n title: title,\r\n text: text,\r\n icon: \"info\",\r\n });\r\n }\r\n\r\n public static NotificationSuccess(text?, title?) {\r\n if (typeof title == \"undefined\" || title == null) {\r\n title = \"Success\";\r\n }\r\n\r\n if (!text) {\r\n text = \"Operation was successful\";\r\n }\r\n\r\n const toast = Swal.mixin({\r\n toast: true,\r\n position: \"top-end\",\r\n showConfirmButton: false,\r\n timer: 3000,\r\n timerProgressBar: true,\r\n });\r\n\r\n toast.fire({\r\n title: title,\r\n text: text,\r\n icon: \"success\",\r\n });\r\n }\r\n}\r\n","/*\r\n<file>\r\n Project:\r\n @osovitny/anatoly\r\n\r\n Authors:\r\n Vadim Osovitny\r\n Anatoly Osovitny\r\n\r\n Created:\r\n 26 Jun 2020\r\n\r\n Version:\r\n 1.0\r\n\r\n Copyright (c) 2016-2020 Osovitny Inc. All rights reserved.\r\n</file>\r\n*/\r\n\r\n// App\r\nimport { InjectorInstance } from \"./core.module\";\r\n\r\nexport class Utils {\r\n public static getValueByNameInQS(name) {\r\n return Utils.getValueByName(location.search, name);\r\n }\r\n\r\n public static getValueByName(url, name) {\r\n name = name.replace(/[\\[]/, \"\\\\[\").replace(/[\\]]/, \"\\\\]\");\r\n var regex = new RegExp(\"[\\\\?&]\" + name + \"=([^&#]*)\"),\r\n results = regex.exec(url);\r\n return results === null\r\n ? \"\"\r\n : decodeURIComponent(results[1].replace(/\\+/g, \" \"));\r\n }\r\n\r\n public static copyToClipBoard(event: any, val: string) {\r\n event.preventDefault();\r\n\r\n let selBox = document.createElement(\"textarea\");\r\n selBox.style.position = \"fixed\";\r\n selBox.style.left = \"0\";\r\n selBox.style.top = \"0\";\r\n selBox.style.opacity = \"0\";\r\n selBox.value = val;\r\n document.body.appendChild(selBox);\r\n selBox.focus();\r\n selBox.select();\r\n document.execCommand(\"copy\");\r\n document.body.removeChild(selBox);\r\n }\r\n\r\n public static downloadFile(name: string, url: string) {\r\n var link = document.createElement(\"a\");\r\n link.download = name;\r\n link.href = url;\r\n link.click();\r\n }\r\n}\r\n","/*\r\n<file>\r\n Project:\r\n @osovitny/anatoly\r\n\r\n Authors:\r\n Vadim Osovitny\r\n Anatoly Osovitny\r\n\r\n Created:\r\n 26 Jun 2020\r\n\r\n Version:\r\n 1.0\r\n\r\n Copyright (c) 2016-2020 Osovitny Inc. All rights reserved.\r\n</file>\r\n*/\r\n\r\nimport { Subscription } from \"rxjs\";\r\nexport class Subs {\r\n private subs: Subscription[] = [];\r\n\r\n constructor() {}\r\n\r\n add(...subscriptions: Subscription[]) {\r\n this.subs = this.subs.concat(subscriptions);\r\n }\r\n\r\n set sink(subscription: Subscription) {\r\n this.subs.push(subscription);\r\n }\r\n\r\n unsubscribe() {\r\n this.subs.forEach((sub) => sub && sub.unsubscribe());\r\n this.subs = [];\r\n }\r\n}\r\n","/*\r\n<file>\r\n Project:\r\n @osovitny/anatoly\r\n\r\n Authors:\r\n Vadim Osovitny\r\n Anatoly Osovitny\r\n\r\n Created:\r\n 26 Jun 2020\r\n\r\n Version:\r\n 1.0\r\n\r\n Copyright (c) 2016-2020 Osovitny Inc. All rights reserved.\r\n</file>\r\n*/\r\n\r\nimport { v4 as uuidv4 } from 'uuid';\r\n\r\nexport class Guid {\r\n public static newGuid() {\r\n return uuidv4();\r\n }\r\n}\r\n","/*\r\n<file>\r\n Project:\r\n @osovitny/anatoly\r\n\r\n Authors:\r\n Vadim Osovitny\r\n Anatoly Osovitny\r\n\r\n Created:\r\n 17 Jun 2018\r\n\r\n Version:\r\n 1.0\r\n\r\n Copyright (c) 2016-2020 Osovitny Inc. All rights reserved.\r\n</file>\r\n*/\r\n\r\nimport { Injectable } from \"@angular/core\";\r\nimport { ActivatedRoute, Router } from \"@angular/router\";\r\n\r\n@Injectable()\r\nexport class BaseGoService {\r\n protected route: ActivatedRoute;\r\n protected router: Router;\r\n\r\n constructor(route: ActivatedRoute, router: Router) {\r\n this.route = route;\r\n this.router = router;\r\n }\r\n\r\n locationReload() {\r\n //this.router.navigate([this.route.url]);\r\n (<any>window).location.reload();\r\n }\r\n}\r\n","/*\r\n<file>\r\n Project:\r\n @osovitny/anatoly\r\n\r\n Authors:\r\n Vadim Osovitny\r\n Anatoly Osovitny\r\n\r\n Created:\r\n 26 Jun 2020\r\n\r\n Version:\r\n 1.0\r\n\r\n Copyright (c) 2016-2020 Osovitny Inc. All rights reserved.\r\n</file>\r\n*/\r\n\r\n// Node\r\nimport { Injectable } from \"@angular/core\";\r\n\r\n@Injectable({\r\n providedIn: \"root\",\r\n})\r\nexport class LoggingService {\r\n constructor() {}\r\n\r\n logError(error) {\r\n console.error(error);\r\n }\r\n\r\n logInformation(info) {\r\n console.info(info);\r\n }\r\n}\r\n","/*\r\n<file>\r\n Project:\r\n @osovitny/anatoly\r\n\r\n Authors:\r\n Vadim Osovitny\r\n Anatoly Osovitny\r\n\r\n Created:\r\n 26 Jun 2020\r\n\r\n Version:\r\n 1.0\r\n\r\n Copyright (c) 2016-2020 Osovitny Inc. All rights reserved.\r\n</file>\r\n*/\r\n\r\n/*\r\n https://medium.com/@amcdnl/global-error-handling-with-angular2-6b992bdfb59c\r\n https://medium.com/angular-in-depth/expecting-the-unexpected-best-practices-for-error-handling-in-angular-21c3662ef9e4\r\n*/\r\n\r\n// Node\r\nimport { ErrorHandler, Injectable, Injector } from \"@angular/core\";\r\n\r\n// App\r\nimport { LoggingService } from \"./logging.service\";\r\n\r\n@Injectable()\r\nexport class GlobalErrorHandler implements ErrorHandler {\r\n constructor(private injector: Injector) {}\r\n\r\n handleError(error) {\r\n const loggingService = this.injector.get(LoggingService);\r\n loggingService.logError(error);\r\n\r\n // IMPORTANT: Rethrow the error otherwise it gets swallowed\r\n throw error;\r\n }\r\n}\r\n","/*\r\n<file>\r\n Project:\r\n @osovitny/anatoly\r\n\r\n Authors:\r\n Vadim Osovitny\r\n Anatoly Osovitny\r\n\r\n Created:\r\n 13 Nov 2017\r\n\r\n Version:\r\n 1.0\r\n\r\n Copyright (c) 2016-2020 Osovitny Inc. All rights reserved.\r\n</file>\r\n*/\r\n\r\n//Node\r\nimport { Injectable } from \"@angular/core\";\r\nimport { HttpClient } from \"@angular/common/http\";\r\n\r\n//RxJs\r\nimport { Observable } from \"rxjs\";\r\nimport { map } from \"rxjs/operators\";\r\n\r\ndeclare var $: any;\r\n\r\n@Injectable()\r\nexport class BaseApiService {\r\n protected baseUrl: string = \"\";\r\n\r\n constructor(protected http: HttpClient) {}\r\n\r\n private serializeParams(data?: any): string {\r\n return data ? \"?\" + $.param(data) : \"\";\r\n }\r\n\r\n //api\r\n get<T>(action: string, data?: any, responseType?): Observable<T> {\r\n if (!responseType) {\r\n responseType = \"json\";\r\n }\r\n\r\n var url = `${this.baseUrl}/${action}${this.serializeParams(data)}`;\r\n return this.http\r\n .get<T>(url, { responseType: responseType })\r\n .pipe(map((res) => <T>res));\r\n }\r\n\r\n post(action: string, data?: any, responseType?): Observable<any> {\r\n if (!responseType) {\r\n responseType = \"text\";\r\n }\r\n\r\n var url = `${this.baseUrl}/${action}`;\r\n return this.http.post(url, data, { responseType: responseType });\r\n }\r\n\r\n postQS(action: string, data?: any, responseType?): Observable<any> {\r\n if (!responseType) {\r\n responseType = \"text\";\r\n }\r\n\r\n var url = `${this.baseUrl}/${action}${this.serializeParams(data)}`;\r\n return this.http.post(url, null, { responseType: responseType });\r\n }\r\n\r\n delete(action: string, data?: any, responseType?): Observable<any> {\r\n if (!responseType) {\r\n responseType = \"text\";\r\n }\r\n\r\n var url = `${this.baseUrl}/${action}${this.serializeParams(data)}`;\r\n return this.http.delete(url, { responseType: responseType });\r\n }\r\n\r\n //gets\r\n getById<T>(id: any): Observable<T> {\r\n return this.get<T>(\"getById\", { id: id });\r\n }\r\n\r\n getAll<T>(data?: any): Observable<T[]> {\r\n return this.get(\"getall\", data).pipe(map((res) => <T[]>res));\r\n }\r\n\r\n getJsonFile(\r\n fileName: string,\r\n jsonUrl?: string,\r\n jsonVersion?: string\r\n ): Observable<any[]> {\r\n if (!jsonUrl) {\r\n jsonUrl = \"/dist/jsons\";\r\n }\r\n\r\n if (!jsonVersion) {\r\n jsonVersion = \"1.0\";\r\n }\r\n\r\n var url = jsonUrl + \"/\" + fileName + \"?\" + jsonVersion;\r\n return this.http.get(url).pipe(map((res) => <any[]>res));\r\n }\r\n\r\n getNewGuid(): Observable<string> {\r\n var url = `${this.baseUrl}/getNewGuid`;\r\n return this.http.get(url, { responseType: \"text\" });\r\n }\r\n}\r\n","/*\r\n<file>\r\n Project:\r\n @osovitny/anatoly\r\n\r\n Authors:\r\n Vadim Osovitny\r\n Anatoly Osovitny\r\n\r\n Created:\r\n 13 Nov 2017\r\n\r\n Version:\r\n 1.0\r\n\r\n Copyright (c) 2016-2020 Osovitny Inc. All rights reserved.\r\n</file>\r\n*/\r\n\r\n//Node\r\nimport { Injectable } from \"@angular/core\";\r\nimport { HttpClient } from \"@angular/common/http\";\r\nimport { Subscription } from \"rxjs\";\r\n\r\n//App\r\nimport { ContextInitState } from \"../consts\";\r\nimport { BaseApiService } from \"../../data/base/base-api.service\";\r\n\r\n@Injectable()\r\nexport class AppContextService extends BaseApiService {\r\n private current = null;\r\n private successes = [];\r\n private subscription: Subscription = null;\r\n\r\n constructor(protected http: HttpClient) {\r\n super(http);\r\n this.baseUrl = \"/api/appContext\";\r\n }\r\n\r\n getCurrent(success: Function) {\r\n if (typeof success == \"undefined\") {\r\n return;\r\n }\r\n\r\n if (this.current != null) {\r\n success(this.current);\r\n return;\r\n }\r\n\r\n this.successes.push(success);\r\n\r\n if (this.subscription != null) {\r\n return;\r\n }\r\n\r\n this.subscription = this.get(\"GetCurrentContext\", null).subscribe(\r\n (data) => {\r\n this.dataReceived(data);\r\n },\r\n (e) => {}\r\n );\r\n }\r\n\r\n dataReceived(data) {\r\n this.current = data;\r\n\r\n for (var i = 0; i < this.successes.length; i++) {\r\n var success = this.successes[i];\r\n success(data);\r\n }\r\n\r\n this.successes = [];\r\n this.subscription.unsubscribe();\r\n this.subscription = null;\r\n this.current = null;\r\n }\r\n\r\n isUserSignedIn() {\r\n return ContextInitState.isUserSignedIn;\r\n }\r\n\r\n isUserAdmin() {\r\n return ContextInitState.isUserAdmin;\r\n }\r\n}\r\n","/*\r\n<file>\r\n Project:\r\n @osovitny/anatoly\r\n\r\n Authors:\r\n Vadim Osovitny\r\n Anatoly Osovitny\r\n\r\n Created:\r\n 26 Jun 2020\r\n\r\n Version:\r\n 1.0\r\n\r\n Copyright (c) 2016-2020 Osovitny Inc. All rights reserved.\r\n</file>\r\n*/\r\n\r\n//Node\r\nimport { Injectable } from \"@angular/core\";\r\n\r\n//RxJs\r\nimport { BehaviorSubject } from \"rxjs\";\r\n\r\n@Injectable({\r\n providedIn: \"root\",\r\n})\r\nexport class LoadingService extends BehaviorSubject<boolean> {\r\n private counter = 0;\r\n\r\n //Public\r\n public isFreezed = false;\r\n\r\n constructor() {\r\n super(false);\r\n }\r\n\r\n show() {\r\n this.counter++;\r\n\r\n let that = this;\r\n setTimeout(() => {\r\n if (that.counter > 0) {\r\n that.next(true);\r\n }\r\n }, 1000);\r\n }\r\n\r\n hide() {\r\n if (this.counter <= 0) {\r\n return;\r\n }\r\n\r\n this.counter--;\r\n\r\n if (this.counter == 0) {\r\n this.next(false);\r\n }\r\n }\r\n\r\n freeze(timeout: number = 1000) {\r\n this.isFreezed = true;\r\n\r\n let that = this;\r\n setTimeout(() => {\r\n this.isFreezed = false;\r\n }, timeout);\r\n }\r\n}\r\n","/*\r\n<file>\r\n Project:\r\n @osovitny/anatoly\r\n\r\n Authors:\r\n Vadim Osovitny\r\n Anatoly Osovitny\r\n\r\n Created:\r\n 25 March 2020\r\n\r\n Version:\r\n 1.0\r\n\r\n Copyright (c) 2016-2020 Osovitny Inc. All rights reserved.\r\n</file>\r\n*/\r\n\r\n// Node\r\nimport { HttpEvent, HttpHandler, HttpInterceptor, HttpRequest, HttpResponse } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\n\r\n// RxJS\r\nimport { tap } from 'rxjs/operators';\r\nimport { Observable } from 'rxjs';\r\n\r\n// App\r\nimport { AppCoreSettings } from '../consts';\r\nimport { LoadingService } from '../services/loading.service';\r\nimport { LoggingService } from '../logging/logging.service';\r\n\r\n@Injectable()\r\nexport class AnatolyHttpInterceptor implements HttpInterceptor {\r\n protected longRunningExceptionsList = [];\r\n protected autoCDNSASTokenUrls = ['chunks', 'resources'];\r\n protected externalSiteUrls = ['azurewebsites.net'];\r\n\r\n constructor(protected loadingService: LoadingService, protected loggingService: LoggingService) { \r\n }\r\n\r\n intercept(req: HttpRequest<any>, next: HttpHandler): Observable<HttpEvent<any>> {\r\n const isCDNEnabled = AppCoreSettings.IsCDNEnabled;\r\n const cdnSasToken = AppCoreSettings.CDNSASToken;\r\n\r\n const isLoadingFreezed = this.loadingService.isFreezed;\r\n let loadingRequired = !isLoadingFreezed;\r\n const authorizationTokenRequired = true;\r\n const url = req.url.toLowerCase();\r\n const originalUrl = req.url;\r\n let isExternalSite = false;\r\n\r\n if (!isLoadingFreezed) {\r\n for (const i of this.longRunningExceptionsList) {\r\n if (url.indexOf(this.longRunningExceptionsList[i]) >= 0) {\r\n loadingRequired = false;\r\n break;\r\n }\r\n }\r\n }\r\n\r\n if (isCDNEnabled) {\r\n for (const i of this.autoCDNSASTokenUrls) {\r\n if (url.indexOf(this.autoCDNSASTokenUrls[i]) >= 0) {\r\n req = req.clone({ url: originalUrl + cdnSasToken });\r\n break;\r\n }\r\n }\r\n }\r\n\r\n for (const i of this.externalSiteUrls) {\r\n if (url.indexOf(this.externalSiteUrls[i]) >= 0) {\r\n isExternalSite = true;\r\n break;\r\n }\r\n }\r\n\r\n // VadimOS: IE11-fix\r\n if (url.indexOf('/api/') > -1) {\r\n let newUrl = '';\r\n const t = new Date().getTime().toString();\r\n\r\n if (url.indexOf('?') > -1) {\r\n newUrl = originalUrl + '&t=' + t;\r\n } else {\r\n newUrl = originalUrl + '?t=' + t;\r\n }\r\n\r\n req = req.clone({ url: newUrl });\r\n }\r\n\r\n req = req.clone({ headers: req.headers.set('Accept', 'application/json') });\r\n\r\n this.onRequestStart(loadingRequired);\r\n\r\n return next.handle(req).pipe(\r\n tap(\r\n (event: HttpEvent<any>) => {\r\n if (event instanceof HttpResponse) {\r\n this.onRequestEnd(loadingRequired);\r\n }\r\n },\r\n (err: any) => {\r\n this.onRequestEnd(loadingRequired);\r\n this.loggingService.logError(err);\r\n }\r\n )\r\n );\r\n }\r\n\r\n onRequestStart(loadingRequired: boolean) {\r\n if (loadingRequired) {\r\n this.loadingService.show();\r\n }\r\n }\r\n\r\n onRequestEnd(loadingRequired: boolean) {\r\n if (loadingRequired) {\r\n this.loadingService.hide();\r\n }\r\n }\r\n}\r\n","import { NgModule, Optional, SkipSelf, ErrorHandler, Injector,} from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\n\r\n//Logging\r\nimport { LoggingService } from './logging/logging.service';\r\n\r\n//Services\r\nimport { AppContextService } from './services/appcontext.service';\r\nimport { LoadingService } from './services/loading.service';\r\n\r\n// Guards\r\nimport { throwIfAlreadyLoaded } from './guards/once-import.guard';\r\n\r\nconst providers: any[] = [\r\n LoggingService,\r\n AppContextService,\r\n LoadingService\r\n];\r\n\r\nexport let InjectorInstance: Injector;\r\n\r\n@NgModule({\r\n imports: [CommonModule],\r\n providers: [...providers],\r\n})\r\nexport class AnatolyCoreModule {\r\n constructor(private injector: Injector, @Optional() @SkipSelf() parentModule: AnatolyCoreModule) {\r\n throwIfAlreadyLoaded(parentModule, 'AnatolyCoreModule');\r\n\r\n InjectorInstance = this.injector;\r\n }\r\n}\r\n","/*\r\n<file>\r\n Project:\r\n @osovitny/anatoly\r\n\r\n Authors:\r\n Vadim Osovitny\r\n Anatoly Osovitny\r\n\r\n Created:\r\n 26 Jun 2020\r\n\r\n Version:\r\n 1.0\r\n\r\n Copyright (c) 2016-2020 Osovitny Inc. All rights reserved.\r\n</file>\r\n*/\r\n\r\nexport { ContextInitState, AppCoreSettings } from './consts';\r\nexport { throwIfAlreadyLoaded } from './guards/once-import.guard';\r\n\r\nexport * from './alerts';\r\nexport * from './utils';\r\nexport * from './subs';\r\nexport * from './guid';\r\n\r\n// Go\r\nexport * from './go/base-go.service';\r\n\r\n// Logging\r\nexport * from './logging/logging.service';\r\nexport * from './logging/globalErrorHandler';\r\n\r\n// Services\r\nexport * from './services/appcontext.service';\r\nexport * from './services/loading.service';\r\n\r\n// interceptors\r\nexport * from './interceptors/httpInterceptor';\r\n\r\n// Module\r\nexport { AnatolyCoreModule } from './core.module';\r\n","/*\r\n<file>\r\n Project:\r\n @osovitny/anatoly\r\n\r\n Authors:\r\n Vadim Osovitny\r\n Anatoly Osovitny\r\n\r\n Created:\r\n 29 Apr 2018\r\n\r\n Version:\r\n 1.0\r\n\r\n Copyright (c) 2016-2020 Osovitny Inc. All rights reserved.\r\n</file>\r\n*/\r\n\r\n//Node\r\nimport { Injectable } from \"@angular/core\";\r\nimport { HttpClient } from \"@angular/common/http\";\r\n\r\n//RxJs\r\nimport { BehaviorSubject } from \"rxjs\";\r\nimport { map } from \"rxjs/operators\";\r\n\r\ndeclare var $: any;\r\n\r\n@Injectable()\r\nexport class BaseGridReadService extends BehaviorSubject<any[]> {\r\n protected baseReadUrl: string = \"\";\r\n protected data: any[] = [];\r\n protected savedReadParams: any;\r\n\r\n constructor(protected http: HttpClient) {\r\n super([]);\r\n }\r\n\r\n serializeParams(data?: any): string {\r\n return data ? \"?\" + $.param(data) : \"\";\r\n }\r\n\r\n read(params?: any, success?: Function, error?: Function) {\r\n if (this.data.length) {\r\n return super.next(this.data);\r\n }\r\n\r\n var url = this.baseReadUrl;\r\n\r\n if (typeof params === \"undefined\") {\r\n params = this.savedReadParams;\r\n }\r\n\r\n if (params) {\r\n url = this.baseReadUrl + `${this.serializeParams(params)}`;\r\n this.savedReadParams = params;\r\n }\r\n\r\n this.http\r\n .get(url)\r\n .pipe(map((res) => <any[]>res))\r\n .subscribe(\r\n (data) => {\r\n super.next(data);\r\n if (success) success();\r\n },\r\n (e) => {\r\n if (error) error(e);\r\n }\r\n );\r\n }\r\n}\r\n","/*\r\n<file>\r\n Project:\r\n @osovitny/anatoly\r\n\r\n Authors:\r\n Vadim Osovitny\r\n Anatoly Osovitny\r\n\r\n Created:\r\n 29 Apr 2018\r\n\r\n Version:\r\n 1.0\r\n\r\n Copyright (c) 2016-2020 Osovitny Inc. All rights reserved.\r\n</file>\r\n*/\r\n\r\n//Node\r\nimport { Injectable } from \"@angular/core\";\r\nimport { HttpClient } from \"@angular/common/http\";\r\n\r\n//RxJs\r\nimport { Observable } from \"rxjs\";\r\nimport { map } from \"rxjs/operators\";\r\n\r\n//App\r\nimport { BaseGridReadService } from \"./base-grid-read.service\";\r\n\r\n@Injectable()\r\nexport class BaseGridEditService extends BaseGridReadService {\r\n protected baseUrl: string = \"\";\r\n\r\n constructor(protected http: HttpClient) {\r\n super(http);\r\n }\r\n\r\n private reset() {\r\n this.data = [];\r\n }\r\n\r\n resetItem(dataItem: any) {\r\n if (!dataItem) {\r\n return;\r\n }\r\n\r\n //find orignal data item\r\n const originalDataItem = this.data.find((item) => item.Id === dataItem.Id);\r\n\r\n //revert changes\r\n Object.assign(originalDataItem, dataItem);\r\n super.next(this.data);\r\n }\r\n\r\n save(data: any, isNew: boolean, sucess?: Function) {\r\n const action = isNew ? \"add\" : \"update\";\r\n\r\n this.reset();\r\n this.post(action, data).subscribe(\r\n () => {},\r\n () => {\r\n this.read();\r\n },\r\n () => {\r\n this.read();\r\n if (sucess) sucess();\r\n }\r\n );\r\n }\r\n\r\n remove(data: any, sucess?: Function) {\r\n this.reset();\r\n this.post(\"remove\", data).subscribe(\r\n () => {},\r\n () => {\r\n this.read();\r\n },\r\n () => {\r\n this.read();\r\n if (sucess) sucess();\r\n }\r\n );\r\n }\r\n\r\n post(action: any, data?: any): Observable<any[]> {\r\n var url = this.baseUrl + `${action}${this.serializeParams(data)}`;\r\n return this.http.post(url, data).pipe(map((res) => <any[]>res));\r\n }\r\n}\r\n","/*\r\n<file>\r\n Project:\r\n @osovitny/anatoly\r\n\r\n Authors:\r\n Vadim Osovitny\r\n Anatoly Osovitny\r\n\r\n Created:\r\n 12 Nov 2017\r\n\r\n Version:\r\n 1.0\r\n\r\n Copyright (c) 2016-2020 Osovitny Inc. All rights reserved.\r\n</file>\r\n*/\r\n\r\n//Node\r\nimport { Injectable } from \"@angular/core\";\r\nimport { HttpClient } from \"@angular/common/http\";\r\n\r\n//App\r\nimport { BaseApiService } from \"../base/base-api.service\";\r\n\r\n@Injectable()\r\nexport class BillingApiService extends BaseApiService {\r\n constructor(protected http: HttpClient) {\r\n super(http);\r\n this.baseUrl += \"billing/\";\r\n }\r\n\r\n public requestNewSubscription(\r\n requestedPlan: Number,\r\n success?: Function,\r\n error?: Function\r\n ) {\r\n this.postQS(\"requestNewSubscription\", {\r\n requestedPlan: requestedPlan,\r\n }).subscribe(\r\n (data) => {},\r\n (e) => {\r\n if (error) error();\r\n },\r\n () => {\r\n if (success) success();\r\n }\r\n );\r\n }\r\n\r\n public cancelRequestedSubscription(success?: Function, error?: Function) {\r\n this.postQS(\"cancelRequestedSubscription\", null).subscribe(\r\n (data) => {},\r\n (e) => {\r\n if (error) error();\r\n },\r\n () => {\r\n if (success) success();\r\n }\r\n );\r\n }\r\n\r\n public buyAccess(\r\n requestedPlan: Number,\r\n success?: Function,\r\n error?: Function\r\n ) {\r\n this.postQS(\"buyAccess\", { requestedPlan: requestedPlan }).subscribe(\r\n (data) => {},\r\n (e) => {\r\n if (error) error();\r\n },\r\n () => {\r\n if (success) success();\r\n }\r\n );\r\n }\r\n}\r\n","/*\r\n<file>\r\n Project:\r\n @osovitny/anatoly\r\n\r\n Authors:\r\n Vadim Osovitny\r\n Anatoly Osovitny\r\n\r\n Created:\r\n 4 Mar 2020\r\n\r\n Version:\r\n 1.0\r\n\r\n Copyright (c) 2016-2020 Osovitny Inc. All rights reserved.\r\n</file>\r\n*/\r\n\r\n//Node\r\nimport { NgModule } from \"@angular/core\";\r\nimport { CommonModule } from \"@angular/common\";\r\n\r\n//\r\nimport { BillingApiService } from \"./services/billing-api.service\";\r\n\r\n@NgModule({\r\n imports: [CommonModule],\r\n providers: [BillingApiService],\r\n})\r\nexport class AnatolyDataModule {}\r\n","/*\r\n<file>\r\n Project:\r\n @osovitny/anatoly\r\n\r\n Authors:\r\n Vadim Osovitny\r\n Anatoly Osovitny\r\n\r\n Created:\r\n 4 Mar 2020\r\n\r\n Version:\r\n 1.0\r\n\r\n Copyright (c) 2016-2020 Osovitny Inc. All rights reserved.\r\n</file>\r\n*/\r\n\r\n// Services\r\nexport * from \"./base/base-api.service\";\r\nexport * from \"./base/grid/base-grid-read.service\";\r\nexport * from \"./base/grid/base-grid-edit.service\";\r\nexport * from \"./services/billing-api.service\";\r\n\r\n// Module\r\nexport { AnatolyDataModule } from \"./data.module\";\r\n","/*\r\n<file>\r\n Project:\r\n @osovitny/anatoly\r\n\r\n Authors:\r\n Vadim Osovitny\r\n Anatoly Osovitny\r\n\r\n Created:\r\n 14 Aug 2018\r\n\r\n Version:\r\n 1.0\r\n\r\n Copyright (c) 2016-2020 Osovitny Inc. All rights reserved.\r\n</file>\r\n*/\r\n\r\n// Node\r\nimport { Component, Input, OnInit } from \"@angular/core\";\r\n\r\n// Services\r\nimport { AppContextService } from \"../../../core/services/appcontext.service\";\r\nimport { BillingApiService } from \"../../../data/services/billing-api.service\";\r\nimport { Alerts } from \"../../../core/alerts\";\r\n\r\n@Component({\r\n selector: \"anatoly-buyaccess-button\",\r\n templateUrl: \"./buyaccess-button.component.html\",\r\n})\r\nexport class BuyAccessButtonComponent implements OnInit {\r\n public contextUpdated = false;\r\n public isUserSignedIn = false;\r\n public currentPlan = 0;\r\n public currentPlanTitle = \"\";\r\n\r\n @Input() plan: number;\r\n @Input() plantitle: string;\r\n\r\n constructor(\r\n private appcontext: AppContextService,\r\n private api: BillingApiService\r\n ) {}\r\n\r\n ngOnInit() {\r\n if (!this.appcontext.isUserSignedIn()) {\r\n this.contextUpdated = true;\r\n return;\r\n }\r\n\r\n this.appcontext.getCurrent((current) => {\r\n this.isUserSignedIn = current.isUserSignedIn;\r\n\r\n if (this.isUserSignedIn) {\r\n this.currentPlan = current.account.billingPlan;\r\n this.currentPlanTitle = current.account.billingPlanAsString;\r\n }\r\n\r\n this.contextUpdated = true;\r\n });\r\n }\r\n\r\n onBuyPlan() {\r\n const text = `Requested plan: ${this.plantitle} `;\r\n const that = this;\r\n\r\n Alerts.AreYouSure(text, \"Buying access\", \"Confirm change\", \"Cancel\", () => {\r\n that.api.buyAccess(that.plan, () => {\r\n Alerts.Success(\"Access Granted\", null, () => {\r\n (window as any).location.reload();\r\n });\r\n });\r\n });\r\n }\r\n}\r\n","/*\r\n<file>\r\n Project:\r\n @osovitny/anatoly\r\n\r\n Authors:\r\n Vadim Osovitny\r\n Anatoly Osovitny\r\n\r\n Created:\r\n 1 Jun 2018\r\n\r\n Version:\r\n 1.0\r\n\r\n Copyright (c) 2016-2020 Osovitny Inc. All rights reserved.\r\n</file>\r\n*/\r\n\r\n// Node\r\nimport { Component, Input, OnInit } from \"@angular/core\";\r\n\r\n// Services\r\nimport { AppContextService } from \"../../../core/services/appcontext.service\";\r\n\r\n@Component({\r\n selector: \"anatoly-subscribe-plan-button\",\r\n templateUrl: \"./subscribe-plan-button.component.html\",\r\n})\r\nexport class SubscribePlanButtonComponent implements OnInit {\r\n public contextUpdated = false;\r\n public isUserSignedIn = false;\r\n public currentPlan = 0;\r\n public currentPlanTitle = \"\";\r\n public requestedPlan = 0;\r\n public requestedPlanTitle = \"\";\r\n\r\n @Input() plan: number;\r\n @Input() plantitle: string;\r\n\r\n constructor(private appcontext: AppContextService) {}\r\n\r\n ngOnInit() {\r\n if (!this.appcontext.isUserSignedIn()) {\r\n this.contextUpdated = true;\r\n return;\r\n }\r\n\r\n this.appcontext.getCurrent((current) => {\r\n this.isUserSignedIn = current.isUserSignedIn;\r\n\r\n if (this.isUserSignedIn) {\r\n this.currentPlan = current.account.billingPlan;\r\n this.currentPlanTitle = current.account.billingPlanAsString;\r\n this.requestedPlan = current.account.requestedBillingPlan;\r\n this.requestedPlanTitle = current.account.requestedBillingPlanAsString;\r\n }\r\n\r\n this.contextUpdated = true;\r\n });\r\n }\r\n}\r\n","/*\r\n<file>\r\n Project:\r\n @osovitny/anatoly\r\n\r\n Authors:\r\n Vadim Osovitny\r\n Anatoly Osovitny\r\n\r\n Created:\r\n 12 Nov 2017\r\n\r\n Version:\r\n 1.0\r\n\r\n Copyright (c) 2016-2020 Osovitny Inc. All rights reserved.\r\n</file>\r\n*/\r\n\r\n// Node\r\nimport { Component, Input } from \"@angular/core\";\r\nimport { BillingApiService } from \"../../../data\";\r\nimport { Alerts } from \"../../../core/alerts\";\r\n\r\n// Services\r\n\r\n@Component({\r\n selector: \"anatoly-upgrade-plan-button\",\r\n templateUrl: \"./upgrade-plan-button.component.html\",\r\n})\r\nexport class UpgradePlanButtonComponent {\r\n @Input() currentplantitle: string;\r\n @Input() requestedplan: number;\r\n @Input() requestedplantitle: string;\r\n\r\n constructor(private api: BillingApiService) {}\r\n\r\n onUpgradePlan() {\r\n const text = `Current plan: ${this.currentplantitle} New plan: ${this.requestedplantitle}`;\r\n const that = this;\r\n\r\n Alerts.AreYouSure(\r\n text,\r\n \"Change billing plan\",\r\n \"Confirm change\",\r\n \"Cancel\",\r\n () => {\r\n that.api.requestNewSubscription(that.requestedplan, () => {\r\n Alerts.Success(\r\n \"Your request for changing plan has been sent.\",\r\n null,\r\n () => {\r\n (window as any).location.reload();\r\n }\r\n );\r\n });\r\n }\r\n );\r\n }\r\n}\r\n","/*\r\n<file>\r\n Project:\r\n @osovitny/anatoly\r\n\r\n Authors:\r\n Vadim Osovitny\r\n Anatoly Osovitny\r\n\r\n Created:\r\n 4 Jul 2018\r\n\r\n Version:\r\n 1.0\r\n\r\n Copyright (c) 2016-2020 Osovitny Inc. All rights reserved.\r\n</file>\r\n*/\r\n\r\nimport { Component, Input } from \"@angular/core\";\r\n\r\n@Component({\r\n selector: \"anatoly-signin-button\",\r\n templateUrl: \"./signin-button.component.html\",\r\n})\r\nexport class SignInButtonComponent {\r\n @Input() classbtn: string;\r\n\r\n constructor() {}\r\n}\r\n","/*\r\n<file>\r\n Project:\r\n @osovitny/anatoly\r\n\r\n Authors:\r\n Vadim Osovitny\r\n Anatoly Osovitny\r\n\r\n Created:\r\n 4 Jul 2018\r\n\r\n Version:\r\n 1.0\r\n\r\n Copyright (c) 2016-2020 Osovitny Inc. All rights reserved.\r\n</file>\r\n*/\r\n\r\nimport { Component, Input } from \"@angular/core\";\r\n\r\n@Component({\r\n selector: \"anatoly-signout-button\",\r\n templateUrl: \"./signout-button.component.html\",\r\n})\r\nexport class SignOutButtonComponent {\r\n @Input() classbtn: string;\r\n\r\n constructor() {}\r\n}\r\n","/*\r\n<file>\r\n Project:\r\n @osovitny/anatoly\r\n\r\n Authors:\r\n Vadim Osovitny\r\n Anatoly Osovitny\r\n\r\n Created:\r\n 4 Jul 2018\r\n\r\n Version:\r\n 1.0\r\n\r\n Copyright (c) 2016-2020 Osovitny Inc. All rights reserved.\r\n</file>\r\n*/\r\n\r\nimport { Component, Input } from \"@angular/core\";\r\n\r\n@Component({\r\n selector: \"anatoly-signup-button\",\r\n templateUrl: \"./signup-button.component.html\",\r\n})\r\nexport class SignUpButtonComponent {\r\n @Input() classbtn: string;\r\n}\r\n","/*\r\n<file>\r\n Project:\r\n @osovitny/anatoly\r\n\r\n Authors:\r\n Vadim Osovitny\r\n Anatoly Osovitny\r\n\r\n Created:\r\n 23 Apr 2018\r\n\r\n Version:\r\n 1.0\r\n\r\n Copyright (c) 2016-2020 Osovitny Inc. All rights reserved.\r\n</file>\r\n*/\r\n\r\n// Node\r\nimport { Component, Input, OnInit } from \"@angular/core\";\r\n\r\n@Component({\r\n selector: \"anatoly-content-header\",\r\n templateUrl: \"./content-header.component.html\",\r\n})\r\nexport class ContentHeaderComponent implements OnInit {\r\n @Input() title?: string;\r\n\r\n ngOnInit() {\r\n if (this.title == null) {\r\n this.title = \"\";\r\n }\r\n }\r\n}\r\n","/*\r\n<file>\r\n Project:\r\n @osovitny/anatoly\r\n\r\n Authors:\r\n Vadim Osovitny\r\n Anatoly Osovitny\r\n\r\n Created:\r\n 28 Aug 2018\r\n\r\n Version:\r\n 1.0\r\n\r\n Copyright (c) 2016-2020 Osovitny Inc. All rights reserved.\r\n</file>\r\n*/\r\n\r\n// Node\r\nimport { Utils } from \"../../core/utils\";\r\n\r\nexport class BaseComponent {\r\n getQSId() {\r\n var id = Utils.getValueByNameInQS(\"id\");\r\n if (typeof id === 'undefined' || id == '') return null;\r\n\r\n return id;\r\n }\r\n}\r\n","/*\r\n<file>\r\n Project:\r\n @osovitny/anatoly\r\n\r\n Authors:\r\n Vadim Osovitny\r\n Anatoly Osovitny\r\n\r\n Created:\r\n 20 Nov 2017\r\n\r\n Version:\r\n 1.0\r\n\r\n Copyright (c) 2016-2020 Osovitny Inc. All rights reserved.\r\n</file>\r\n*/\r\n\r\n//Node\r\nimport { Input } from '@angular/core';\r\nimport { FormGroup, AbstractControl, FormControl, ValidatorFn, AbstractControlOptions, AsyncValidatorFn } from '@angular/forms';\r\n\r\n// Custom\r\nimport { BaseComponent } from \"./base.component\";\r\nimport { Utils } from \"../../core/utils\";\r\n\r\nexport class BaseEditComponent extends BaseComponent {\r\n @Input() formGroup: FormGroup;\r\n @Input() formSubmitted: boolean = false;\r\n\r\n constructor() {\r\n super();\r\n }\r\n\r\n isActionAdding() {\r\n var id = Utils.getValueByNameInQS(\"id\");\r\n if (typeof id === 'undefined' || id == '') return true;\r\n\r\n return false;\r\n }\r\n\r\n getEntityId() {\r\n return this.getQSId();\r\n }\r\n\r\n isControlValid(name: string, formGroup: FormGroup = null) {\r\n return !this.isControlInvalid(name, formGroup);\r\n }\r\n\r\n isControlInvalid(name: string, formGroup: FormGroup = null) {\r\n if (typeof name === 'undefined' || name == '') {\r\n return false;\r\n }\r\n\r\n let fg = (formGroup) ? formGroup : this.formGroup;\r\n if (!fg) {\r\n return false;\r\n }\r\n\r\n if (fg.get(name)) {\r\n return (this.formSubmitted && fg.get(name).invalid) ||\r\n (fg.get(name).touched && fg.get(name).invalid);\r\n }\r\n\r\n return false;\r\n }\r\n\r\n //FormGroup functions\r\n getFormValue(name, formGroup: FormGroup = null) {\r\n let fg = (formGroup) ? formGroup : this.formGroup;\r\n return fg.controls[name].value;\r\n }\r\n\r\n setFormValue(name, value, formGroup: FormGroup = null) {\r\n let fg = (formGroup) ? formGroup : this.formGroup;\r\n fg.controls[name].setValue(value);\r\n }\r\n\r\n getFormGroupValue(groupName, name, formGroup: FormGroup = null) {\r\n let fg = (formGroup) ? formGroup : this.formGroup;\r\n return fg.controls[groupName].get(name).value;\r\n }\r\n\r\n setFormGroupValue(groupName, name, value, formGroup: FormGroup = null) {\r\n let fg = (formGroup) ? formGroup : this.formGroup;\r\n fg.controls[groupName].get(name).setValue(value);\r\n } \r\n}\r\n","/*\r\n<file>\r\n Project:\r\n @osovitny/anatoly\r\n\r\n Authors:\r\n Vadim Osovitny\r\n Anatoly Osovitny\r\n\r\n Created:\r\n 12 Dec 2017\r\n\r\n Version:\r\n 1.0\r\n\r\n Copyright (c) 2016-2020 Osovitny Inc. All rights reserved.\r\n</file>\r\n*/\r\n\r\nexport const DefaultEditorOptions: Object = {\r\n placeholderText: \"Edit Your Content Here\",\r\n charCounterCount: true,\r\n heightMin: 100,\r\n toolbarInline: false,\r\n\r\n toolbarButtons: {\r\n moreText: {\r\n buttons: [\r\n \"bold\",\r\n \"italic\",\r\n \"underline\",\r\n \"strikeThrough\",\r\n \"subscript\",\r\n \"superscript\",\r\n \"fontFamily\",\r\n \"fontSize\",\r\n \"textColor\",\r\n \"backgroundColor\",\r\n \"inlineClass\",\r\n \"inlineStyle\",\r\n ],\r\n },\r\n moreParagraph: {\r\n buttons: [\r\n \"alignLeft\",\r\n \"alignCenter\",\r\n \"formatOLSimple\",\r\n \"alignRight\",\r\n \"alignJustify\",\r\n \"formatOL\",\r\n \"formatUL\",\r\n \"paragraphFormat\",\r\n \"paragraphStyle\",\r\n \"lineHeight\",\r\n \"outdent\",\r\n \"indent\",\r\n \"quote\",\r\n ],\r\n },\r\n moreRich: {\r\n buttons: [\r\n \"insertLink\",\r\n \"insertImage\",\r\n \"insertTable\",\r\n \"emoticons\",\r\n \"fontAwesome\",\r\n \"specialCharacters\",\r\n \"embedly\",\r\n ],\r\n },\r\n moreMisc: {\r\n buttons: [\r\n \"selectAll\",\r\n \"clearFormatting\",\r\n \"html\",\r\n \"undo\",\r\n \"redo\",\r\n \"fullscreen\",\r\n ],\r\n align: \"right\",\r\n },\r\n },\r\n\r\n /*\r\n Upload:\r\n https://www.froala.com/wysiwyg-editor/docs/concepts/image/upload\r\n */\r\n imageUploadURL: \"/api/HtmlEditor/UploadImage\",\r\n imageAllowedTypes: [\"jpeg\", \"jpg\", \"png\"],\r\n imageUploadParams: { uploadType: \"\", uploadParentId: \"\" },\r\n};\r\n","/*\r\n<file>\r\n Project:\r\n @osovitny/anatoly\r\n\r\n Authors:\r\n Vadim Osovitny\r\n Anatoly Osovitny\r\n\r\n Created:\r\n 12 Dec 2017\r\n\r\n Version:\r\n 1.0\r\n\r\n Copyright (c) 2016-2020 Osovitny Inc. All rights reserved.\r\n</file>\r\n*/\r\n\r\n//Node\r\nimport { Component, OnInit, Input, AfterViewInit } from \"@angular/core\";\r\n\r\nimport FroalaEditor from \"froala-editor\";\r\n\r\n//Custom\r\nimport { AppCoreSettings } from \"../../../core/consts\";\r\nimport { BaseEditComponent } from \"../base-edit.component\";\r\nimport { DefaultEditorOptions } from \"./html-editor.defaultoptions\";\r\n\r\nexport class BaseHtmlEditorComponent extends BaseEditComponent\r\n implements OnInit, AfterViewInit {\r\n protected froalaEditor;\r\n\r\n //Public members\r\n public options;\r\n public froalaEditorInitialized: boolean = false;\r\n public afterInitializedActions = [];\r\n\r\n //Inputs\r\n @Input() editorLabelText: string = \"Html\";\r\n @Input() editorOptions: Object = {};\r\n\r\n constructor() {\r\n super();\r\n }\r\n\r\n ngOnInit() {\r\n let opt = this.editorOptions;\r\n if (typeof this.editorOptions == \"string\") {\r\n opt = JSON.parse(this.editorOptions);\r\n }\r\n\r\n let newOptions: any = $.extend({}, DefaultEditorOptions, opt);\r\n let key = AppCoreSettings.froalaEditorKey;\r\n\r\n if (key) {\r\n newOptions = $.extend(\r\n {},\r\n newOptions,\r\n JSON.parse('{ \"key\": \"' + key + '\" }')\r\n );\r\n }\r\n\r\n if (newOptions.events && newOptions.events.initialized) {\r\n newOptions.events.initialized.overridden = false;\r\n }\r\n\r\n this.options = newOptions;\r\n }\r\n\r\n ngAfterViewInit() {\r\n let that = this;\r\n setTimeout(function () {\r\n that.froalaEditorInitialized = true;\r\n that.onInitialized();\r\n }, 300);\r\n }\r\n\r\n private onInitialized() {\r\n let actions = this.afterInitializedActions;\r\n\r\n //Clear actions\r\n this.afterInitializedActions = [];\r\n\r\n if (actions) {\r\n for (var i = 0; i < actions.length; i++) {\r\n actions[i]();\r\n }\r\n }\r\n }\r\n\r\n protected getEditor() {\r\n if (this.froalaEditor) return this.froalaEditor.getEditor();\r\n\r\n return null;\r\n }\r\n\r\n //Public Funcs\r\n public doAfterInitialized(action) {\r\n let that = this;\r\n\r\n if (!this.froalaEditorInitialized) {\r\n this.afterInitializedActions.push(() => {\r\n action(that);\r\n });\r\n } else {\r\n action(that);\r\n }\r\n }\r\n\r\n public initializeControl(control) {\r\n this.froalaEditor = control;\r\n this.froalaEditor.initialize();\r\n }\r\n\r\n public setUploadParams(uploadType, uploadParentId) {\r\n this.doAfterInitialized(function (that) {\r\n var editor = that.getEditor();\r\n if (typeof editor == \"undefined\" || editor == null) {\r\n return;\r\n }\r\n\r\n editor.opts.imageUploadParams.uploadType = uploadType;\r\n editor.opts.imageUploadParams.uploadParentId = uploadParentId;\r\n });\r\n }\r\n}\r\n","/*\r\n<file>\r\n Project:\r\n @osovitny/anatoly\r\n\r\n Authors:\r\n Vadim Osovitny\r\n Anatoly Osovitny\r\n\r\n Created:\r\n 12 Dec 2017\r\n\r\n Version:\r\n 1.0\r\n\r\n Copyright (c) 2016-2020 Osovitny Inc. All rights reserved.\r\n</file>\r\n*/\r\n\r\n//Node\r\nimport { Component, Input } from \"@angular/core\";\r\n\r\n//Custom\r\nimport { BaseHtmlEditorComponent } from \"./base-html-editor.component\";\r\n\r\n@Component({\r\n selector: \"anatoly-html-editor\",\r\n templateUrl: \"./html-editor.component.html\",\r\n})\r\nexport class HtmlEditorComponent extends BaseHtmlEditorComponent {\r\n constructor() {\r\n super();\r\n }\r\n\r\n public setHtml(content) {\r\n this.doAfterInitialized(function (that) {\r\n var editor = that.getEditor();\r\n if (typeof editor == \"undefined\" || editor == null) {\r\n return;\r\n }\r\n\r\n editor.html.set(content);\r\n });\r\n }\r\n\r\n public getHtml() {\r\n var editor = this.getEditor();\r\n if (typeof editor == \"undefined\" || editor == null) {\r\n return;\r\n }\r\n\r\n return editor.html.get(false);\r\n }\r\n}\r\n","/*\r\n<file>\r\n Project:\r\n @osovitny/anatoly\r\n\r\n Authors:\r\n Vadim Osovitny\r\n Anatoly Osovitny\r\n\r\n Created:\r\n 12 Dec 2017\r\n\r\n Version:\r\n 1.0\r\n\r\n Copyright (c) 2016-2020 Osovitny Inc. All rights reserved.\r\n</file>\r\n*/\r\n\r\n//Node\r\nimport { Component, Input } from \"@angular/core\";\r\n\r\n//Custom\r\nimport { BaseHtmlEditorComponent } from \"./base-html-editor.component\";\r\n\r\n@Component({\r\n selector: \"anatoly-forms-html-editor\",\r\n templateUrl: \"./forms-html-editor.component.html\",\r\n})\r\nexport class FormsHtmlEditorComponent extends BaseHtmlEditorComponent {\r\n @Input() editorFormKey: string = \"html\";\r\n\r\n constructor() {\r\n super();\r\n }\r\n\r\n public setFormValueAfterInitialized(name, value) {\r\n this.doAfterInitialized(function (that) {\r\n that.setFormValue(name, value);\r\n });\r\n }\r\n}\r\n","/*\r\n<file>\r\n Project:\r\n @osovitny/anatoly\r\n\r\n Authors:\r\n Vadim Osovitny\r\n Anatoly Osovitny\r\n\r\n Created:\r\n 8 Dec 2017\r\n\r\n Version:\r\n 1.0\r\n\r\n Copyright (c) 2016-2020 Osovitny Inc. All rights reserved.\r\n</file>\r\n*/\r\n\r\n// Node\r\nimport { FormGroup } from \"@angular/forms\";\r\n\r\n//Custom\r\nimport { BaseEditComponent } from \"../base-edit.component\";\r\n\r\nexport class ValidationSummaryComponent extends BaseEditComponent {\r\n constructor() {\r\n super();\r\n }\r\n\r\n getFormValidationMessages(): string[] {\r\n let messages: string[] = [];\r\n\r\n Object.keys(this.formGroup.controls).forEach(k => {\r\n var control = this.formGroup.controls[k];\r\n\r\n if ((<FormGroup>control).controls != null) {\r\n Object.keys((<FormGroup>control).controls).forEach(k => {\r\n var child = (<FormGroup>control).controls[k];\r\n this.getValidationMessages(child, this.getControlName(child, k)).forEach(m => messages.push(m));\r\n });\r\n }\r\n else {\r\n this.getValidationMessages(control, this.getControlName(control, k)).forEach(m => messages.push(m));\r\n }\r\n });\r\n\r\n return messages;\r\n }\r\n\r\n getValidationMessages(state: any, thingName?: string) {\r\n let thing: string = state.path || thingName;\r\n let messages: string[] = [];\r\n\r\n if (state.errors) {\r\n for (let errorName in state.errors) {\r\n if (state.errors.hasOwnProperty(errorName)) {\r\n switch (errorName) {\r\n case 'required':\r\n messages.push(`${thing} is required`);\r\n break;\r\n\r\n case 'minlength':\r\n messages.push(`${thing} must be at least ${state.errors[\"minlength\"].requiredLength} characters`);\r\n break;\r\n\r\n case 'pattern':\r\n messages.push(`${thing} contains illegal characters`);\r\n break;\r\n\r\n case 'format':\r\n messages.push(`${thing} format mismatch`);\r\n break;\r\n\r\n case 'maxlength':\r\n messages.push(`${thing} must have maximum ${state.errors[\"maxlength\"].requiredLength} characters`);\r\n break;\r\n\r\n case 'specialcharacters':\r\n messages.push(`${thing} contains special characters`);\r\n break;\r\n }\r\n }\r\n }\r\n }\r\n\r\n return messages;\r\n }\r\n\r\n /**\r\n * Get Control Name\r\n * @param control \r\n * @param thingName \r\n */\r\n getControlName(control: any, thingName?: string) {\r\n let value = this.getControlTitle(control);\r\n return value ? value : thingName;\r\n }\r\n\r\n /**\r\n * Retrieve tilte of control \r\n * @param control \r\n */\r\n getControlTitle(control: any): string {\r\n if (control?.nativeElement) {\r\n let controlTitle = this.getTitleAttribute(control.nativeElement);\r\n if (controlTitle) {\r\n return controlTitle;\r\n }\r\n }\r\n\r\n return undefined;\r\n }\r\n\r\n /**\r\n * Return title attribute of form control\r\n */\r\n getTitleAttribute(nativeElement: HTMLFormElement): string {\r\n let title: string;\r\n\r\n switch (nativeElement.tagName) {\r\n // For Kendo time and date picker element title is assigned to the 4th child control.\r\n case \"KENDO-TIMEPICKER\":\r\n case \"KENDO-DATEPICKER\":\r\n title = nativeElement.children[0]?.children[0]?.children[0]?.children[0]?.getAttribute('title');\r\n break;\r\n\r\n // For Kendo numaric element title is assigned to the 2nd child control.\r\n case \"KENDO-NUMERICTEXTBOX\":\r\n title = nativeElement.children[0]?.children[0]?.getAttribute('title');\r\n break;\r\n\r\n default:\r\n title = nativeElement.getAttribute('title');\r\n break;\r\n }\r\n\r\n return title;\r\n }\r\n}\r\n","/*\r\n<file>\r\n Project:\r\n @osovitny/anatoly\r\n\r\n Authors:\r\n Vadim Osovitny\r\n Anatoly Osovitny\r\n\r\n Created:\r\n 7 Dec 2017\r\n\r\n Version:\r\n 1.0\r\n\r\n Copyright (c) 2016-2020 Osovitny Inc. All rights reserved.\r\n</file>\r\n*/\r\n\r\n// Node\r\nimport { Component, Input } from \"@angular/core\";\r\nimport { ValidationSummaryComponent } from \"./validation-summary.component\";\r\n\r\n@Component({\r\n selector: \"anatoly-form-validation-summary\",\r\n templateUrl: \"./form-validation-summary.component.html\",\r\n})\r\nexport class FormValidationSummaryComponent extends ValidationSummaryComponent {\r\n @Input() visible: boolean = false;\r\n @Input() customerrors: string[] = [];\r\n\r\n /*\r\n 0 - only FormValidation messages\r\n 1 - only Custom messages\r\n 2 - all\r\n */ \r\n @Input() viewtype: number = 0; \r\n\r\n constructor() {\r\n super();\r\n }\r\n\r\n getErrors() {\r\n if (this.viewtype == 1) {\r\n return this.customerrors;\r\n }\r\n\r\n let formValidationMessages = this.getFormValidationMessages();\r\n if (this.viewtype == 0) {\r\n return formValidationMessages;\r\n }\r\n\r\n var messages = [];\r\n if (formValidationMessages.length > 0) {\r\n messages.push(...formValidationMessages);\r\n }\r\n\r\n if (this.customerrors.length > 0) {\r\n messages.push(...this.customerrors);\r\n } \r\n\r\n return messages;\r\n }\r\n}\r\n","/*\r\n<file>\r\n Project:\r\n @osovitny/anatoly\r\n\r\n Authors:\r\n Vadim Osovitny\r\n Anatoly Osovitny\r\n\r\n Created:\r\n 6 Dec 2017\r\n\r\n Version:\r\n 1.0\r\n\r\n Copyright (c) 2016-2020 Osovitny Inc. All rights reserved.\r\n</file>\r\n*/\r\n\r\n// Node\r\nimport { Component, Input } from \"@angular/core\";\r\nimport { ValidationSummaryComponent } from \"./validation-summary.component\";\r\n\r\n@Component({\r\n selector: \"anatoly-item-validation-summary\",\r\n templateUrl: \"./item-validation-summary.component.html\",\r\n})\r\nexport class ItemValidationSummaryComponent extends ValidationSummaryComponent {\r\n @Input() controlName: string;\r\n @Input() controlTitle: string;\r\n\r\n constructor() {\r\n super();\r\n }\r\n}\r\n","/*\r\n<file>\r\n Project:\r\n @osovitny/anatoly\r\n\r\n Authors:\r\n Vadim Osovitny\r\n Anatoly Osovitny\r\n\r\n Created:\r\n 28 Jun 2020\r\n\r\n Version:\r\n 1.0\r\n\r\n Copyright (c) 2016-2020 Osovitny Inc. All rights reserved.\r\n</file>\r\n*/\r\n\r\n//Node\r\nimport { Directive, ElementRef, Input, OnInit } from \"@angular/core\";\r\nimport { NgControl } from '@angular/forms';\r\n\r\n@Directive({\r\n selector: '[formControl], [formControlName]'\r\n})\r\nexport class NativeElementDirective implements OnInit {\r\n constructor(private el: ElementRef<HTMLFormElement>, private control: NgControl) {\r\n }\r\n\r\n ngOnInit() {\r\n // sets the localization key to the control\r\n (this.control.control as any).nativeElement = this.el.nativeElement;\r\n }\r\n}\r\n","/*\r\n<file>\r\n Project:\r\n @osovitny/anatoly\r\n\r\n Authors:\r\n Vadim Osovitny\r\n Anatoly Osovitny\r\n\r\n Created:\r\n 26 Jun 2020\r\n\r\n Version:\r\n 1.0\r\n\r\n Copyright (c) 2016-2020 Osovitny Inc. All rights reserved.\r\n</file>\r\n*/\r\n\r\n// Node\r\nimport { NgModule, ModuleWithProviders } from \"@angular/core\";\r\nimport { CommonModule } from \"@angular/common\";\r\nimport { ReactiveFormsModule, FormsModule } from \"@angular/forms\";\r\n\r\n//Froala\r\nimport { FroalaEditorModule, FroalaViewModule } from \"angular-froala-wysiwyg\";\r\n\r\n//Components\r\n//Billing\r\nimport { SubscribePlanButtonComponent } from \"./components/billing/subscribe-plan-button.component\";\r\nimport { UpgradePlanButtonComponent } from \"./components/billing/upgrade-plan-button.component\";\r\nimport { BuyAccessButtonComponent } from \"./components/billing/buyaccess-button.component\";\r\n\r\n//Identity\r\nimport { SignInButtonComponent } from \"./components/identity/signin-button.component\";\r\nimport { SignUpButtonComponent } from \"./components/identity/signup-button.component\";\r\nimport { SignOutButtonComponent } from \"./components/identity/signout-button.component\";\r\n\r\n//Validation\r\nimport { FormValidationSummaryComponent } from \"./components/validation/form-validation-summary.component\";\r\nimport { ItemValidationSummaryComponent } from \"./components/validation/item-validation-summary.component\";\r\n\r\n//Html-editor\r\nimport { HtmlEditorComponent } from \"./components/html-editor/html-editor.component\";\r\nimport { FormsHtmlEditorComponent } from \"./components/html-editor/forms-html-editor.component\";\r\n\r\n//\r\nimport { ContentHeaderComponent } from \"./components/content-header/content-header.component\";\r\n\r\n//Directives\r\nimport { NativeElementDirective } from './directives/native-element.directive';\r\n\r\nexport const FroalaEditorModuleWithProviders = FroalaEditorModule.forRoot();\r\nexport const FroalaViewModuleWithProviders = FroalaViewModule.forRoot();\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n ReactiveFormsModule,\r\n FormsModule,\r\n\r\n FroalaEditorModuleWithProviders,\r\n FroalaViewModuleWithProviders,\r\n ],\r\n exports: [\r\n SubscribePlanButtonComponent,\r\n UpgradePlanButtonComponent,\r\n BuyAccessButtonComponent,\r\n SignInButtonComponent,\r\n SignUpButtonComponent,\r\n SignOutButtonComponent,\r\n FormValidationSummaryComponent,\r\n ItemValidationSummaryComponent,\r\n HtmlEditorComponent,\r\n FormsHtmlEditorComponent,\r\n ContentHeaderComponent,\r\n\r\n //Directives\r\n NativeElementDirective\r\n ],\r\n declarations: [\r\n SubscribePlanButtonComponent,\r\n UpgradePlanButtonComponent,\r\n BuyAccessButtonComponent,\r\n SignInButtonComponent,\r\n SignUpButtonComponent,\r\n SignOutButtonComponent,\r\n FormValidationSummaryComponent,\r\n ItemValidationSummaryComponent,\r\n HtmlEditorComponent,\r\n FormsHtmlEditorComponent,\r\n ContentHeaderComponent,\r\n\r\n //Directives\r\n NativeElementDirective\r\n ]\r\n})\r\nexport class AnatolyUIModule {}\r\n","/*\r\n<file>\r\n Project:\r\n @osovitny/anatoly\r\n\r\n Authors:\r\n Vadim Osovitny\r\n Anatoly Osovitny\r\n\r\n Created:\r\n 26 Jun 2020\r\n\r\n Version:\r\n 1.0\r\n\r\n Copyright (c) 2016-2020 Osovitny Inc. All rights reserved.\r\n</file>\r\n*/\r\n\r\n// Billing\r\nexport * from \"./components/billing/buyaccess-button.component\";\r\nexport * from \"./components/billing/subscribe-plan-button.component\";\r\nexport * from \"./components/billing/upgrade-plan-button.component\";\r\n\r\n// Identity\r\nexport * from \"./components/identity/signin-button.component\";\r\nexport * from \"./components/identity/signout-button.component\";\r\nexport * from \"./components/identity/signup-button.component\";\r\n\r\n//\r\nexport * from \"./components/content-header/content-header.component\";\r\nexport * from \"./components/html-editor/html-editor.component\";\r\nexport * from \"./components/html-editor/forms-html-editor.component\";\r\n\r\n//\r\nexport * from \"./components/validation/validation-summary.component\";\r\nexport * from \"./components/validation/form-validation-summary.component\";\r\nexport * from \"./components/validation/item-validation-summary.component\";\r\n\r\n//\r\nexport * from \"./components/base.component\";\r\nexport * from \"./components/base-edit.component\";\r\n\r\n//Directives\r\nexport * from \"./directives/native-element.directive\";\r\n\r\n//Pipes\r\n\r\n//Module\r\nexport { AnatolyUIModule } from \"./ui.module\";\r\n","/*\r\n * Public API Surface of anatoly\r\n */\r\n\r\nexport * from \"./lib/core\";\r\nexport * from \"./lib/data\";\r\nexport * from \"./lib/ui\";\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["uuidv4"],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { FormGroup } from "@angular/forms";
1
+ import { FormGroup } from '@angular/forms';
2
2
  import { BaseComponent } from "./base.component";
3
3
  export declare class BaseEditComponent extends BaseComponent {
4
4
  formGroup: FormGroup;
@@ -6,9 +6,10 @@ export declare class BaseEditComponent extends BaseComponent {
6
6
  constructor();
7
7
  isActionAdding(): boolean;
8
8
  getEntityId(): string;
9
- isItemInvalid(name: string): boolean;
10
- getFormValue(name: any): any;
11
- setFormValue(name: any, value: any): void;
12
- getFormGroupValue(groupName: any, name: any): any;
13
- setFormGroupValue(groupName: any, name: any, value: any): void;
9
+ isControlValid(name: string, formGroup?: FormGroup): boolean;
10
+ isControlInvalid(name: string, formGroup?: FormGroup): boolean;
11
+ getFormValue(name: any, formGroup?: FormGroup): any;
12
+ setFormValue(name: any, value: any, formGroup?: FormGroup): void;
13
+ getFormGroupValue(groupName: any, name: any, formGroup?: FormGroup): any;
14
+ setFormGroupValue(groupName: any, name: any, value: any, formGroup?: FormGroup): void;
14
15
  }
@@ -1,6 +1,8 @@
1
1
  import { ValidationSummaryComponent } from "./validation-summary.component";
2
2
  export declare class FormValidationSummaryComponent extends ValidationSummaryComponent {
3
- isVisible: boolean;
3
+ visible: boolean;
4
+ customerrors: string[];
5
+ viewtype: number;
4
6
  constructor();
5
- getErrors(): string[];
7
+ getErrors(): any[];
6
8
  }
@@ -3,4 +3,19 @@ export declare class ValidationSummaryComponent extends BaseEditComponent {
3
3
  constructor();
4
4
  getFormValidationMessages(): string[];
5
5
  getValidationMessages(state: any, thingName?: string): string[];
6
+ /**
7
+ * Get Control Name
8
+ * @param control
9
+ * @param thingName
10
+ */
11
+ getControlName(control: any, thingName?: string): string;
12
+ /**
13
+ * Retrieve tilte of control
14
+ * @param control
15
+ */
16
+ getControlTitle(control: any): string;
17
+ /**
18
+ * Return title attribute of form control
19
+ */
20
+ getTitleAttribute(nativeElement: HTMLFormElement): string;
6
21
  }
@@ -0,0 +1,8 @@
1
+ import { ElementRef, OnInit } from "@angular/core";
2
+ import { NgControl } from '@angular/forms';
3
+ export declare class NativeElementDirective implements OnInit {
4
+ private el;
5
+ private control;
6
+ constructor(el: ElementRef<HTMLFormElement>, control: NgControl);
7
+ ngOnInit(): void;
8
+ }
package/lib/ui/index.d.ts CHANGED
@@ -12,4 +12,5 @@ export * from "./components/validation/form-validation-summary.component";
12
12
  export * from "./components/validation/item-validation-summary.component";
13
13
  export * from "./components/base.component";
14
14
  export * from "./components/base-edit.component";
15
+ export * from "./directives/native-element.directive";
15
16
  export { AnatolyUIModule } from "./ui.module";
@@ -1 +1 @@
1
- {"__symbolic":"module","version":4,"exports":[{"from":"./lib/components/billing/buyaccess-button.component"},{"from":"./lib/components/billing/subscribe-plan-button.component"},{"from":"./lib/components/billing/upgrade-plan-button.component"},{"from":"./lib/components/identity/signin-button.component"},{"from":"./lib/components/identity/signout-button.component"},{"from":"./lib/components/identity/signup-button.component"},{"from":"./lib/components/content-header/content-header.component"},{"from":"./lib/components/html-editor/html-editor.component"},{"from":"./lib/components/html-editor/forms-html-editor.component"},{"from":"./lib/components/validation/validation-summary.component"},{"from":"./lib/components/validation/form-validation-summary.component"},{"from":"./lib/components/validation/item-validation-summary.component"},{"from":"./lib/components/base.component"},{"from":"./lib/components/base-edit.component"},{"export":[{"name":"ContextInitState","as":"ContextInitState"},{"name":"AppCoreSettings","as":"AppCoreSettings"}],"from":"./lib/consts"},{"export":[{"name":"throwIfAlreadyLoaded","as":"throwIfAlreadyLoaded"}],"from":"./lib/guards/once-import.guard"},{"export":[{"name":"AnatolyCoreModule","as":"AnatolyCoreModule"}],"from":"./lib/core.module"},{"export":[{"name":"AnatolyDataModule","as":"AnatolyDataModule"}],"from":"./lib/data.module"},{"export":[{"name":"AnatolyUIModule","as":"AnatolyUIModule"}],"from":"./lib/ui.module"}],"metadata":{},"origins":{},"importAs":"@osovitny/anatoly"}
1
+ {"__symbolic":"module","version":4,"exports":[{"from":"./lib/components/billing/buyaccess-button.component"},{"from":"./lib/components/billing/subscribe-plan-button.component"},{"from":"./lib/components/billing/upgrade-plan-button.component"},{"from":"./lib/components/identity/signin-button.component"},{"from":"./lib/components/identity/signout-button.component"},{"from":"./lib/components/identity/signup-button.component"},{"from":"./lib/components/content-header/content-header.component"},{"from":"./lib/components/html-editor/html-editor.component"},{"from":"./lib/components/html-editor/forms-html-editor.component"},{"from":"./lib/components/validation/validation-summary.component"},{"from":"./lib/components/validation/form-validation-summary.component"},{"from":"./lib/components/validation/item-validation-summary.component"},{"from":"./lib/components/base.component"},{"from":"./lib/components/base-edit.component"},{"from":"./lib/directives/native-element.directive"},{"export":[{"name":"ContextInitState","as":"ContextInitState"},{"name":"AppCoreSettings","as":"AppCoreSettings"}],"from":"./lib/consts"},{"export":[{"name":"throwIfAlreadyLoaded","as":"throwIfAlreadyLoaded"}],"from":"./lib/guards/once-import.guard"},{"export":[{"name":"AnatolyCoreModule","as":"AnatolyCoreModule"}],"from":"./lib/core.module"},{"export":[{"name":"AnatolyDataModule","as":"AnatolyDataModule"}],"from":"./lib/data.module"},{"export":[{"name":"AnatolyUIModule","as":"AnatolyUIModule"}],"from":"./lib/ui.module"}],"metadata":{},"origins":{},"importAs":"@osovitny/anatoly"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@osovitny/anatoly",
3
- "version": "2.0.19",
3
+ "version": "2.0.21",
4
4
  "peerDependencies": {
5
5
  "@angular/common": "10.0.0",
6
6
  "@angular/core": "10.0.0"