@osovitny/anatoly 3.16.63 → 3.16.64

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.
Files changed (59) hide show
  1. package/esm2022/lib/iam/pages/signin.page.mjs +3 -3
  2. package/esm2022/lib/iam/pages/signout.page.mjs +3 -3
  3. package/esm2022/lib/iam/pages/signup.page.mjs +3 -3
  4. package/esm2022/lib/ui/components/base/component.mjs +65 -0
  5. package/esm2022/lib/ui/components/base/dialog.mjs +67 -0
  6. package/esm2022/lib/ui/components/base/edit.component.mjs +135 -0
  7. package/esm2022/lib/ui/components/base/list.mjs +69 -0
  8. package/esm2022/lib/ui/components/base/page.mjs +31 -0
  9. package/esm2022/lib/ui/components/base/paged.page.mjs +66 -0
  10. package/esm2022/lib/ui/components/html-editor/base-html-editor.component.mjs +6 -6
  11. package/esm2022/lib/ui/components/html-editor/forms-html-editor.component.mjs +4 -4
  12. package/esm2022/lib/ui/components/html-editor/html-editor.component.mjs +4 -4
  13. package/esm2022/lib/ui/components/identity/signin-button.component.mjs +3 -3
  14. package/esm2022/lib/ui/components/identity/signout-button.component.mjs +3 -3
  15. package/esm2022/lib/ui/components/identity/signup-button.component.mjs +3 -3
  16. package/esm2022/lib/ui/components/index.mjs +8 -8
  17. package/esm2022/lib/ui/components/spinners/loading/loading.component.mjs +3 -3
  18. package/esm2022/lib/ui/components/spinners/pagespinner/pagespinner.component.mjs +1 -1
  19. package/esm2022/lib/ui/dialogs/contact-us/contact-us.dialog.mjs +3 -3
  20. package/esm2022/lib/ui/forms/components/address/address.component.mjs +3 -3
  21. package/esm2022/lib/ui/forms/components/company/company.component.mjs +3 -3
  22. package/esm2022/lib/ui/forms/components/dropdownlists/timezone/timezone.dropdownlist.mjs +3 -3
  23. package/esm2022/lib/ui/forms/components/urlslug/urlslug.component.mjs +3 -3
  24. package/esm2022/lib/ui/forms/contact-us/contact-us.mjs +3 -3
  25. package/esm2022/lib/ui/validation/validation-summary.component.mjs +4 -4
  26. package/fesm2022/osovitny-anatoly.mjs +540 -539
  27. package/fesm2022/osovitny-anatoly.mjs.map +1 -1
  28. package/lib/iam/pages/signin.page.d.ts +2 -2
  29. package/lib/iam/pages/signout.page.d.ts +2 -2
  30. package/lib/iam/pages/signup.page.d.ts +2 -2
  31. package/lib/ui/components/base/{base.component.d.ts → component.d.ts} +3 -3
  32. package/lib/ui/components/base/{base.dialog.d.ts → dialog.d.ts} +4 -4
  33. package/lib/ui/components/base/{base-edit.component.d.ts → edit.component.d.ts} +4 -4
  34. package/lib/ui/components/base/{base.list.d.ts → list.d.ts} +4 -4
  35. package/lib/ui/components/base/page.d.ts +6 -0
  36. package/lib/ui/components/base/{base.paged.page.d.ts → paged.page.d.ts} +4 -4
  37. package/lib/ui/components/html-editor/base-html-editor.component.d.ts +4 -4
  38. package/lib/ui/components/html-editor/forms-html-editor.component.d.ts +2 -2
  39. package/lib/ui/components/html-editor/html-editor.component.d.ts +2 -2
  40. package/lib/ui/components/identity/signin-button.component.d.ts +2 -2
  41. package/lib/ui/components/identity/signout-button.component.d.ts +2 -2
  42. package/lib/ui/components/identity/signup-button.component.d.ts +2 -2
  43. package/lib/ui/components/index.d.ts +6 -6
  44. package/lib/ui/components/spinners/loading/loading.component.d.ts +2 -2
  45. package/lib/ui/dialogs/contact-us/contact-us.dialog.d.ts +2 -2
  46. package/lib/ui/forms/components/address/address.component.d.ts +2 -2
  47. package/lib/ui/forms/components/company/company.component.d.ts +2 -2
  48. package/lib/ui/forms/components/dropdownlists/timezone/timezone.dropdownlist.d.ts +2 -2
  49. package/lib/ui/forms/components/urlslug/urlslug.component.d.ts +2 -2
  50. package/lib/ui/forms/contact-us/contact-us.d.ts +2 -2
  51. package/lib/ui/validation/validation-summary.component.d.ts +2 -2
  52. package/package.json +1 -1
  53. package/esm2022/lib/ui/components/base/base-edit.component.mjs +0 -135
  54. package/esm2022/lib/ui/components/base/base.component.mjs +0 -65
  55. package/esm2022/lib/ui/components/base/base.dialog.mjs +0 -67
  56. package/esm2022/lib/ui/components/base/base.list.mjs +0 -69
  57. package/esm2022/lib/ui/components/base/base.page.mjs +0 -31
  58. package/esm2022/lib/ui/components/base/base.paged.page.mjs +0 -66
  59. package/lib/ui/components/base/base.page.d.ts +0 -6
@@ -23,12 +23,12 @@ import * as i1$4 from 'ngx-toastr';
23
23
  import { ToastrModule } from 'ngx-toastr';
24
24
  import * as i1$5 from '@angular/platform-browser';
25
25
  import { v4 } from 'uuid';
26
+ import * as i2 from '@angular/forms';
27
+ import { FormControl, Validators, ReactiveFormsModule, FormsModule } from '@angular/forms';
26
28
  import * as i1$6 from '@fortawesome/angular-fontawesome';
27
29
  import { FontAwesomeModule } from '@fortawesome/angular-fontawesome';
28
30
  import * as i1$7 from '@progress/kendo-angular-pager';
29
31
  import { PagerModule } from '@progress/kendo-angular-pager';
30
- import * as i2 from '@angular/forms';
31
- import { FormControl, Validators, ReactiveFormsModule, FormsModule } from '@angular/forms';
32
32
  import * as i3 from 'angular-froala-wysiwyg';
33
33
  import { FERootModule } from 'angular-froala-wysiwyg';
34
34
  import * as i2$1 from '@progress/kendo-angular-dialog';
@@ -3182,7 +3182,7 @@ class EmailsApiService extends ApiServiceBase {
3182
3182
  </file>
3183
3183
  */
3184
3184
  //Node
3185
- class BaseComponent {
3185
+ class ComponentBase {
3186
3186
  subs = new Subs();
3187
3187
  //Component Data => usually loading from API
3188
3188
  dataLoading = true;
@@ -3215,10 +3215,10 @@ class BaseComponent {
3215
3215
  this.dataLoaded = true;
3216
3216
  this.dataFound = found;
3217
3217
  }
3218
- static ɵfac = function BaseComponent_Factory(t) { return new (t || BaseComponent)(); };
3219
- static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: BaseComponent, selectors: [["ng-component"]], inputs: { classes: "classes" }, decls: 0, vars: 0, template: function BaseComponent_Template(rf, ctx) { }, encapsulation: 2 });
3218
+ static ɵfac = function ComponentBase_Factory(t) { return new (t || ComponentBase)(); };
3219
+ static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: ComponentBase, selectors: [["ng-component"]], inputs: { classes: "classes" }, decls: 0, vars: 0, template: function ComponentBase_Template(rf, ctx) { }, encapsulation: 2 });
3220
3220
  }
3221
- (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(BaseComponent, [{
3221
+ (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(ComponentBase, [{
3222
3222
  type: Component,
3223
3223
  args: [{
3224
3224
  template: ''
@@ -3237,41 +3237,124 @@ class BaseComponent {
3237
3237
  Anatoly Osovitny anatoly@osovitny.com
3238
3238
 
3239
3239
  Created:
3240
- 4 Jul 2018
3240
+ 20 Nov 2017
3241
3241
 
3242
3242
  Copyright (c) 2016-2022 Osovitny Inc. All rights reserved.
3243
3243
  </file>
3244
3244
  */
3245
3245
  //Node
3246
- function SignUpButtonComponent_span_4_Template(rf, ctx) { if (rf & 1) {
3247
- i0.ɵɵelementStart(0, "span");
3248
- i0.ɵɵtext(1, "Sign Up");
3249
- i0.ɵɵelementEnd();
3250
- } }
3251
- const _c0$e = ["*"];
3252
- class SignUpButtonComponent extends BaseComponent {
3246
+ class EditComponentBase extends ComponentBase {
3247
+ formGroup;
3248
+ formSubmitted = false;
3253
3249
  constructor() {
3254
3250
  super();
3255
3251
  }
3256
- static ɵfac = function SignUpButtonComponent_Factory(t) { return new (t || SignUpButtonComponent)(); };
3257
- static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: SignUpButtonComponent, selectors: [["anatoly-signup-button"]], features: [i0.ɵɵInheritDefinitionFeature], ngContentSelectors: _c0$e, decls: 5, vars: 4, consts: [["routerLink", "/iam/signup"], ["ref", ""], [4, "ngIf"]], template: function SignUpButtonComponent_Template(rf, ctx) { if (rf & 1) {
3258
- i0.ɵɵprojectionDef();
3259
- i0.ɵɵelementStart(0, "a", 0)(1, "span", null, 1);
3260
- i0.ɵɵprojection(3);
3261
- i0.ɵɵelementEnd();
3262
- i0.ɵɵtemplate(4, SignUpButtonComponent_span_4_Template, 2, 0, "span", 2);
3263
- i0.ɵɵelementEnd();
3264
- } if (rf & 2) {
3265
- const _r0 = i0.ɵɵreference(2);
3266
- i0.ɵɵclassMap(ctx.classes);
3267
- i0.ɵɵadvance(4);
3268
- i0.ɵɵproperty("ngIf", !_r0.innerHTML.trim());
3269
- } }, dependencies: [i1$2.NgIf, i1.RouterLink], encapsulation: 2 });
3252
+ isActionAdding() {
3253
+ return !Utils.idExistsInQS();
3254
+ }
3255
+ isControlValid(name, frmGroup = null) {
3256
+ return !this.isControlInvalid(name, frmGroup);
3257
+ }
3258
+ isControlInvalid(name, frmGroup = null) {
3259
+ if (typeof name === "undefined" || name == "") {
3260
+ return false;
3261
+ }
3262
+ let fg = frmGroup ? frmGroup : this.formGroup;
3263
+ if (!fg) {
3264
+ return false;
3265
+ }
3266
+ if (fg.get(name)) {
3267
+ return ((this.formSubmitted && fg.get(name).invalid) ||
3268
+ (fg.get(name).touched && fg.get(name).invalid));
3269
+ }
3270
+ return false;
3271
+ }
3272
+ //FormGroup functions
3273
+ getFormValue(name, frmGroup = null) {
3274
+ let fg = frmGroup ? frmGroup : this.formGroup;
3275
+ return fg.controls[name].value;
3276
+ }
3277
+ setFormValue(name, value, frmGroup = null) {
3278
+ let fg = frmGroup ? frmGroup : this.formGroup;
3279
+ fg.controls[name].setValue(value);
3280
+ }
3281
+ getFormGroupValue(groupName, name, frmGroup = null) {
3282
+ let fg = frmGroup ? frmGroup : this.formGroup;
3283
+ return fg.controls[groupName].get(name).value;
3284
+ }
3285
+ setFormGroupValue(groupName, name, value, frmGroup = null) {
3286
+ let fg = frmGroup ? frmGroup : this.formGroup;
3287
+ fg.controls[groupName].get(name).setValue(value);
3288
+ }
3289
+ /**
3290
+ * Add control to form group
3291
+ * @param name
3292
+ * @param formControl
3293
+ * @param frmGroup
3294
+ */
3295
+ addControl(name, formControl, frmGroup = null) {
3296
+ let fg = frmGroup ? frmGroup : this.formGroup;
3297
+ fg.addControl(name, formControl);
3298
+ }
3299
+ /**
3300
+ * Removes control from form group
3301
+ * @param name
3302
+ * @param frmGroup
3303
+ */
3304
+ removeControl(name, frmGroup = null) {
3305
+ let fg = frmGroup ? frmGroup : this.formGroup;
3306
+ if (fg.get(name)) {
3307
+ fg.removeControl(name);
3308
+ }
3309
+ }
3310
+ /**
3311
+ * return new form control
3312
+ * @param formState
3313
+ * @param validatorOrOpts
3314
+ * @param asyncValidator
3315
+ */
3316
+ createFormControl(formState, validatorOrOpts, asyncValidator) {
3317
+ return new FormControl(formState, validatorOrOpts, asyncValidator);
3318
+ }
3319
+ /**
3320
+ * Set error to control
3321
+ * @param controlName formControl name
3322
+ * @param err error expect {erroname: boolean} format
3323
+ * @param frmGroup
3324
+ */
3325
+ setControlError(controlName, err, frmGroup = null) {
3326
+ let fg = frmGroup ? frmGroup : this.formGroup;
3327
+ fg.get(controlName)?.setErrors(err);
3328
+ }
3329
+ /**
3330
+ * Set {invalid: true} for the specified form
3331
+ * @param controlName form control name
3332
+ * @param frmGroup
3333
+ */
3334
+ setInValidError(controlName, frmGroup = null) {
3335
+ let fg = frmGroup ? frmGroup : this.formGroup;
3336
+ fg.get(controlName)?.setErrors({ invalid: true });
3337
+ }
3338
+ /**
3339
+ * returns formgroup controls.
3340
+ * main use case is used in html pages
3341
+ */
3342
+ get fc() {
3343
+ return this.formGroup.controls;
3344
+ }
3345
+ static ɵfac = function EditComponentBase_Factory(t) { return new (t || EditComponentBase)(); };
3346
+ static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: EditComponentBase, selectors: [["ng-component"]], inputs: { formGroup: "formGroup", formSubmitted: "formSubmitted" }, features: [i0.ɵɵInheritDefinitionFeature], decls: 0, vars: 0, template: function EditComponentBase_Template(rf, ctx) { }, encapsulation: 2 });
3270
3347
  }
3271
- (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(SignUpButtonComponent, [{
3348
+ (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(EditComponentBase, [{
3272
3349
  type: Component,
3273
- args: [{ selector: "anatoly-signup-button", template: "<a routerLink=\"/iam/signup\" class=\"{{ classes }}\">\r\n <span #ref><ng-content></ng-content></span>\r\n <span *ngIf=\"!ref.innerHTML.trim()\">Sign Up</span>\r\n</a>\r\n" }]
3274
- }], function () { return []; }, null); })();
3350
+ args: [{
3351
+ template: ''
3352
+ }]
3353
+ }], function () { return []; }, { formGroup: [{
3354
+ type: Input
3355
+ }], formSubmitted: [{
3356
+ type: Input
3357
+ }] }); })();
3275
3358
 
3276
3359
  /*
3277
3360
  <file>
@@ -3283,100 +3366,56 @@ class SignUpButtonComponent extends BaseComponent {
3283
3366
  Anatoly Osovitny anatoly@osovitny.com
3284
3367
 
3285
3368
  Created:
3286
- 14 Aug 2018
3369
+ 24 Jan 2022
3287
3370
 
3288
3371
  Copyright (c) 2016-2022 Osovitny Inc. All rights reserved.
3289
3372
  </file>
3290
3373
  */
3291
3374
  //Node
3292
- function BuyAccessButtonComponent_div_0_div_1_Template(rf, ctx) { if (rf & 1) {
3293
- i0.ɵɵelementStart(0, "div");
3294
- i0.ɵɵelement(1, "anatoly-signup-button", 1);
3295
- i0.ɵɵelementEnd();
3296
- } }
3297
- function BuyAccessButtonComponent_div_0_div_2_button_1_Template(rf, ctx) { if (rf & 1) {
3298
- i0.ɵɵelementStart(0, "button", 4);
3299
- i0.ɵɵtext(1, " Your Plan ");
3300
- i0.ɵɵelementEnd();
3301
- } }
3302
- function BuyAccessButtonComponent_div_0_div_2_button_2_Template(rf, ctx) { if (rf & 1) {
3303
- const _r6 = i0.ɵɵgetCurrentView();
3304
- i0.ɵɵelementStart(0, "button", 5);
3305
- i0.ɵɵlistener("click", function BuyAccessButtonComponent_div_0_div_2_button_2_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r6); const ctx_r5 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r5.onPlanSelect()); });
3306
- i0.ɵɵtext(1, " Buy Now ");
3307
- i0.ɵɵelementEnd();
3308
- } }
3309
- function BuyAccessButtonComponent_div_0_div_2_Template(rf, ctx) { if (rf & 1) {
3310
- i0.ɵɵelementStart(0, "div");
3311
- i0.ɵɵtemplate(1, BuyAccessButtonComponent_div_0_div_2_button_1_Template, 2, 0, "button", 2);
3312
- i0.ɵɵtemplate(2, BuyAccessButtonComponent_div_0_div_2_button_2_Template, 2, 0, "button", 3);
3313
- i0.ɵɵelementEnd();
3314
- } if (rf & 2) {
3315
- const ctx_r2 = i0.ɵɵnextContext(2);
3316
- i0.ɵɵadvance(1);
3317
- i0.ɵɵproperty("ngIf", ctx_r2.plan == ctx_r2.currentPlan);
3318
- i0.ɵɵadvance(1);
3319
- i0.ɵɵproperty("ngIf", ctx_r2.plan != ctx_r2.currentPlan && ctx_r2.currentPlan == 1);
3320
- } }
3321
- function BuyAccessButtonComponent_div_0_Template(rf, ctx) { if (rf & 1) {
3322
- i0.ɵɵelementStart(0, "div");
3323
- i0.ɵɵtemplate(1, BuyAccessButtonComponent_div_0_div_1_Template, 2, 0, "div", 0);
3324
- i0.ɵɵtemplate(2, BuyAccessButtonComponent_div_0_div_2_Template, 3, 2, "div", 0);
3325
- i0.ɵɵelementEnd();
3326
- } if (rf & 2) {
3327
- const ctx_r0 = i0.ɵɵnextContext();
3328
- i0.ɵɵadvance(1);
3329
- i0.ɵɵproperty("ngIf", !ctx_r0.isUserSignedIn);
3330
- i0.ɵɵadvance(1);
3331
- i0.ɵɵproperty("ngIf", ctx_r0.isUserSignedIn && ctx_r0.visibleIfUserSignedIn);
3332
- } }
3333
- class BuyAccessButtonComponent {
3334
- appContext;
3335
- contextUpdated = false;
3336
- isUserSignedIn = false;
3337
- currentPlan = -1;
3338
- currentPlanTitle = '';
3339
- plan;
3340
- planTitle;
3341
- visibleIfUserSignedIn = false;
3342
- planselect = new EventEmitter();
3343
- constructor(appContext) {
3344
- this.appContext = appContext;
3375
+ class DialogBase extends EditComponentBase {
3376
+ _isOpen = false;
3377
+ get isOpen() {
3378
+ return this._isOpen;
3345
3379
  }
3346
- ngOnInit() {
3347
- this.appContext.updated$.subscribe((context) => {
3348
- if (!context) {
3349
- return;
3350
- }
3351
- this.isUserSignedIn = context.isUserSignedIn;
3352
- if (this.isUserSignedIn) {
3353
- this.currentPlan = context.account.billingPlan;
3354
- this.currentPlanTitle = context.account.billingPlanAsString;
3380
+ set isOpen(value) {
3381
+ if (value) {
3382
+ if (this.anOnBeforeOpen) {
3383
+ this.anOnBeforeOpen();
3355
3384
  }
3356
- this.contextUpdated = true;
3357
- });
3385
+ this.opened.emit();
3386
+ }
3387
+ this._isOpen = value;
3358
3388
  }
3359
3389
  //Events
3360
- onPlanSelect() {
3361
- this.planselect.emit(this.plan);
3390
+ opened = new EventEmitter();
3391
+ closed = new EventEmitter();
3392
+ constructor() {
3393
+ super();
3362
3394
  }
3363
- static ɵfac = function BuyAccessButtonComponent_Factory(t) { return new (t || BuyAccessButtonComponent)(i0.ɵɵdirectiveInject(AppContextService)); };
3364
- static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: BuyAccessButtonComponent, selectors: [["anatoly-buyaccess-button"]], inputs: { plan: "plan", planTitle: "planTitle", visibleIfUserSignedIn: "visibleIfUserSignedIn" }, outputs: { planselect: "planselect" }, decls: 1, vars: 1, consts: [[4, "ngIf"], ["classbtn", "btn btn-block btn-primary"], ["class", "btn btn-block btn-success selectPlan", 4, "ngIf"], ["class", "btn btn-block btn-warning selectPlan", 3, "click", 4, "ngIf"], [1, "btn", "btn-block", "btn-success", "selectPlan"], [1, "btn", "btn-block", "btn-warning", "selectPlan", 3, "click"]], template: function BuyAccessButtonComponent_Template(rf, ctx) { if (rf & 1) {
3365
- i0.ɵɵtemplate(0, BuyAccessButtonComponent_div_0_Template, 3, 2, "div", 0);
3366
- } if (rf & 2) {
3367
- i0.ɵɵproperty("ngIf", ctx.contextUpdated);
3368
- } }, dependencies: [i1$2.NgIf, SignUpButtonComponent], encapsulation: 2 });
3395
+ open() {
3396
+ this.isOpen = true;
3397
+ }
3398
+ close(returnValue = "OK") {
3399
+ this.isOpen = false;
3400
+ this.closed.emit(returnValue);
3401
+ }
3402
+ cancel() {
3403
+ this.isOpen = false;
3404
+ this.closed.emit(-1);
3405
+ }
3406
+ static ɵfac = function DialogBase_Factory(t) { return new (t || DialogBase)(); };
3407
+ static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: DialogBase, selectors: [["ng-component"]], inputs: { isOpen: "isOpen" }, outputs: { opened: "opened", closed: "closed" }, features: [i0.ɵɵInheritDefinitionFeature], decls: 0, vars: 0, template: function DialogBase_Template(rf, ctx) { }, encapsulation: 2 });
3369
3408
  }
3370
- (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(BuyAccessButtonComponent, [{
3409
+ (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(DialogBase, [{
3371
3410
  type: Component,
3372
- args: [{ selector: 'anatoly-buyaccess-button', template: "<div *ngIf=\"contextUpdated\">\r\n <div *ngIf=\"!isUserSignedIn\">\r\n <anatoly-signup-button classbtn=\"btn btn-block btn-primary\"></anatoly-signup-button>\r\n </div>\r\n\r\n <div *ngIf=\"isUserSignedIn && visibleIfUserSignedIn\">\r\n <button class=\"btn btn-block btn-success selectPlan\" \r\n *ngIf=\"plan == currentPlan\">\r\n Your Plan\r\n </button>\r\n\r\n <button class=\"btn btn-block btn-warning selectPlan\" \r\n *ngIf=\"plan != currentPlan && currentPlan == 1\" \r\n (click)=\"onPlanSelect()\">\r\n Buy Now\r\n </button>\r\n </div>\r\n</div>\r\n" }]
3373
- }], function () { return [{ type: AppContextService }]; }, { plan: [{
3374
- type: Input
3375
- }], planTitle: [{
3376
- type: Input
3377
- }], visibleIfUserSignedIn: [{
3411
+ args: [{
3412
+ template: ''
3413
+ }]
3414
+ }], function () { return []; }, { isOpen: [{
3378
3415
  type: Input
3379
- }], planselect: [{
3416
+ }], opened: [{
3417
+ type: Output
3418
+ }], closed: [{
3380
3419
  type: Output
3381
3420
  }] }); })();
3382
3421
 
@@ -3390,20 +3429,327 @@ class BuyAccessButtonComponent {
3390
3429
  Anatoly Osovitny anatoly@osovitny.com
3391
3430
 
3392
3431
  Created:
3393
- 1 Jun 2018
3432
+ 20 Aug 2022
3394
3433
 
3395
3434
  Copyright (c) 2016-2022 Osovitny Inc. All rights reserved.
3396
3435
  </file>
3397
3436
  */
3398
3437
  //Node
3399
- function SubscribePlanButtonComponent_div_0_div_1_Template(rf, ctx) { if (rf & 1) {
3400
- i0.ɵɵelementStart(0, "div");
3401
- i0.ɵɵelement(1, "anatoly-signup-button", 1);
3402
- i0.ɵɵelementEnd();
3403
- } }
3404
- function SubscribePlanButtonComponent_div_0_div_2_button_1_Template(rf, ctx) { if (rf & 1) {
3405
- i0.ɵɵelementStart(0, "button", 5);
3406
- i0.ɵɵtext(1, " Your Plan ");
3438
+ class ListBase extends ComponentBase {
3439
+ currentFilter = null;
3440
+ //Items & Pagination
3441
+ items;
3442
+ totalItems = 0;
3443
+ pageSize = 10;
3444
+ skipItems = 0;
3445
+ currentPage = 1;
3446
+ showNoDataIfNoDataFound = true;
3447
+ loadPageOne() {
3448
+ this.skipItems = 0;
3449
+ this.currentPage = 1;
3450
+ this.loadPage();
3451
+ }
3452
+ reloadPage(drop2pageOne = false) {
3453
+ if (drop2pageOne) {
3454
+ this.loadPageOne();
3455
+ }
3456
+ else {
3457
+ this.loadPage();
3458
+ }
3459
+ }
3460
+ setFilter(filter) {
3461
+ this.currentFilter = filter;
3462
+ this.loadPageOne();
3463
+ }
3464
+ //Tos
3465
+ toIndex(index) {
3466
+ return ((this.currentPage - 1) * this.pageSize) + index + 1;
3467
+ }
3468
+ //Events
3469
+ onPageChange(e) {
3470
+ this.pageSize = e.take;
3471
+ this.skipItems = e.skip;
3472
+ this.currentPage = (this.skipItems / this.pageSize) + 1;
3473
+ this.loadPage();
3474
+ }
3475
+ static ɵfac = /*@__PURE__*/ function () { let ɵListBase_BaseFactory; return function ListBase_Factory(t) { return (ɵListBase_BaseFactory || (ɵListBase_BaseFactory = i0.ɵɵgetInheritedFactory(ListBase)))(t || ListBase); }; }();
3476
+ static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: ListBase, selectors: [["ng-component"]], inputs: { showNoDataIfNoDataFound: "showNoDataIfNoDataFound" }, features: [i0.ɵɵInheritDefinitionFeature], decls: 0, vars: 0, template: function ListBase_Template(rf, ctx) { }, encapsulation: 2 });
3477
+ }
3478
+ (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(ListBase, [{
3479
+ type: Component,
3480
+ args: [{
3481
+ template: ''
3482
+ }]
3483
+ }], null, { showNoDataIfNoDataFound: [{
3484
+ type: Input
3485
+ }] }); })();
3486
+
3487
+ /*
3488
+ <file>
3489
+ Project:
3490
+ @osovitny/anatoly
3491
+
3492
+ Authors:
3493
+ Vadim Osovitny vadim@osovitny.com
3494
+ Anatoly Osovitny anatoly@osovitny.com
3495
+
3496
+ Created:
3497
+ 20 Aug 2022
3498
+
3499
+ Copyright (c) 2016-2022 Osovitny Inc. All rights reserved.
3500
+ </file>
3501
+ */
3502
+ //Node
3503
+ class PageBase extends ComponentBase {
3504
+ static ɵfac = /*@__PURE__*/ function () { let ɵPageBase_BaseFactory; return function PageBase_Factory(t) { return (ɵPageBase_BaseFactory || (ɵPageBase_BaseFactory = i0.ɵɵgetInheritedFactory(PageBase)))(t || PageBase); }; }();
3505
+ static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: PageBase, selectors: [["ng-component"]], features: [i0.ɵɵInheritDefinitionFeature], decls: 0, vars: 0, template: function PageBase_Template(rf, ctx) { }, encapsulation: 2 });
3506
+ }
3507
+ (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(PageBase, [{
3508
+ type: Component,
3509
+ args: [{
3510
+ template: ''
3511
+ }]
3512
+ }], null, null); })();
3513
+
3514
+ /*
3515
+ <file>
3516
+ Project:
3517
+ @osovitny/anatoly
3518
+
3519
+ Authors:
3520
+ Vadim Osovitny vadim@osovitny.com
3521
+ Anatoly Osovitny anatoly@osovitny.com
3522
+
3523
+ Created:
3524
+ 20 Aug 2022
3525
+
3526
+ Copyright (c) 2016-2022 Osovitny Inc. All rights reserved.
3527
+ </file>
3528
+ */
3529
+ //Node
3530
+ class PagedPageBase extends PageBase {
3531
+ currentFilter = null;
3532
+ //Items & Pagination
3533
+ items;
3534
+ totalItems = 0;
3535
+ pageSize = 10;
3536
+ skipItems = 0;
3537
+ currentPage = 1;
3538
+ loadPageOne() {
3539
+ this.skipItems = 0;
3540
+ this.currentPage = 1;
3541
+ this.loadPage();
3542
+ }
3543
+ reloadPage(drop2pageOne = false) {
3544
+ if (drop2pageOne) {
3545
+ this.loadPageOne();
3546
+ }
3547
+ else {
3548
+ this.loadPage();
3549
+ }
3550
+ }
3551
+ setFilter(filter) {
3552
+ this.currentFilter = filter;
3553
+ this.loadPageOne();
3554
+ }
3555
+ //Tos
3556
+ toIndex(index) {
3557
+ return ((this.currentPage - 1) * this.pageSize) + index + 1;
3558
+ }
3559
+ //Events
3560
+ onPageChange(e) {
3561
+ this.pageSize = e.take;
3562
+ this.skipItems = e.skip;
3563
+ this.currentPage = (this.skipItems / this.pageSize) + 1;
3564
+ this.loadPage();
3565
+ }
3566
+ static ɵfac = /*@__PURE__*/ function () { let ɵPagedPageBase_BaseFactory; return function PagedPageBase_Factory(t) { return (ɵPagedPageBase_BaseFactory || (ɵPagedPageBase_BaseFactory = i0.ɵɵgetInheritedFactory(PagedPageBase)))(t || PagedPageBase); }; }();
3567
+ static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: PagedPageBase, selectors: [["ng-component"]], features: [i0.ɵɵInheritDefinitionFeature], decls: 0, vars: 0, template: function PagedPageBase_Template(rf, ctx) { }, encapsulation: 2 });
3568
+ }
3569
+ (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(PagedPageBase, [{
3570
+ type: Component,
3571
+ args: [{
3572
+ template: ''
3573
+ }]
3574
+ }], null, null); })();
3575
+
3576
+ /*
3577
+ <file>
3578
+ Project:
3579
+ @osovitny/anatoly
3580
+
3581
+ Authors:
3582
+ Vadim Osovitny vadim@osovitny.com
3583
+ Anatoly Osovitny anatoly@osovitny.com
3584
+
3585
+ Created:
3586
+ 4 Jul 2018
3587
+
3588
+ Copyright (c) 2016-2022 Osovitny Inc. All rights reserved.
3589
+ </file>
3590
+ */
3591
+ //Node
3592
+ function SignUpButtonComponent_span_4_Template(rf, ctx) { if (rf & 1) {
3593
+ i0.ɵɵelementStart(0, "span");
3594
+ i0.ɵɵtext(1, "Sign Up");
3595
+ i0.ɵɵelementEnd();
3596
+ } }
3597
+ const _c0$e = ["*"];
3598
+ class SignUpButtonComponent extends ComponentBase {
3599
+ constructor() {
3600
+ super();
3601
+ }
3602
+ static ɵfac = function SignUpButtonComponent_Factory(t) { return new (t || SignUpButtonComponent)(); };
3603
+ static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: SignUpButtonComponent, selectors: [["anatoly-signup-button"]], features: [i0.ɵɵInheritDefinitionFeature], ngContentSelectors: _c0$e, decls: 5, vars: 4, consts: [["routerLink", "/iam/signup"], ["ref", ""], [4, "ngIf"]], template: function SignUpButtonComponent_Template(rf, ctx) { if (rf & 1) {
3604
+ i0.ɵɵprojectionDef();
3605
+ i0.ɵɵelementStart(0, "a", 0)(1, "span", null, 1);
3606
+ i0.ɵɵprojection(3);
3607
+ i0.ɵɵelementEnd();
3608
+ i0.ɵɵtemplate(4, SignUpButtonComponent_span_4_Template, 2, 0, "span", 2);
3609
+ i0.ɵɵelementEnd();
3610
+ } if (rf & 2) {
3611
+ const _r0 = i0.ɵɵreference(2);
3612
+ i0.ɵɵclassMap(ctx.classes);
3613
+ i0.ɵɵadvance(4);
3614
+ i0.ɵɵproperty("ngIf", !_r0.innerHTML.trim());
3615
+ } }, dependencies: [i1$2.NgIf, i1.RouterLink], encapsulation: 2 });
3616
+ }
3617
+ (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(SignUpButtonComponent, [{
3618
+ type: Component,
3619
+ args: [{ selector: "anatoly-signup-button", template: "<a routerLink=\"/iam/signup\" class=\"{{ classes }}\">\r\n <span #ref><ng-content></ng-content></span>\r\n <span *ngIf=\"!ref.innerHTML.trim()\">Sign Up</span>\r\n</a>\r\n" }]
3620
+ }], function () { return []; }, null); })();
3621
+
3622
+ /*
3623
+ <file>
3624
+ Project:
3625
+ @osovitny/anatoly
3626
+
3627
+ Authors:
3628
+ Vadim Osovitny vadim@osovitny.com
3629
+ Anatoly Osovitny anatoly@osovitny.com
3630
+
3631
+ Created:
3632
+ 14 Aug 2018
3633
+
3634
+ Copyright (c) 2016-2022 Osovitny Inc. All rights reserved.
3635
+ </file>
3636
+ */
3637
+ //Node
3638
+ function BuyAccessButtonComponent_div_0_div_1_Template(rf, ctx) { if (rf & 1) {
3639
+ i0.ɵɵelementStart(0, "div");
3640
+ i0.ɵɵelement(1, "anatoly-signup-button", 1);
3641
+ i0.ɵɵelementEnd();
3642
+ } }
3643
+ function BuyAccessButtonComponent_div_0_div_2_button_1_Template(rf, ctx) { if (rf & 1) {
3644
+ i0.ɵɵelementStart(0, "button", 4);
3645
+ i0.ɵɵtext(1, " Your Plan ");
3646
+ i0.ɵɵelementEnd();
3647
+ } }
3648
+ function BuyAccessButtonComponent_div_0_div_2_button_2_Template(rf, ctx) { if (rf & 1) {
3649
+ const _r6 = i0.ɵɵgetCurrentView();
3650
+ i0.ɵɵelementStart(0, "button", 5);
3651
+ i0.ɵɵlistener("click", function BuyAccessButtonComponent_div_0_div_2_button_2_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r6); const ctx_r5 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r5.onPlanSelect()); });
3652
+ i0.ɵɵtext(1, " Buy Now ");
3653
+ i0.ɵɵelementEnd();
3654
+ } }
3655
+ function BuyAccessButtonComponent_div_0_div_2_Template(rf, ctx) { if (rf & 1) {
3656
+ i0.ɵɵelementStart(0, "div");
3657
+ i0.ɵɵtemplate(1, BuyAccessButtonComponent_div_0_div_2_button_1_Template, 2, 0, "button", 2);
3658
+ i0.ɵɵtemplate(2, BuyAccessButtonComponent_div_0_div_2_button_2_Template, 2, 0, "button", 3);
3659
+ i0.ɵɵelementEnd();
3660
+ } if (rf & 2) {
3661
+ const ctx_r2 = i0.ɵɵnextContext(2);
3662
+ i0.ɵɵadvance(1);
3663
+ i0.ɵɵproperty("ngIf", ctx_r2.plan == ctx_r2.currentPlan);
3664
+ i0.ɵɵadvance(1);
3665
+ i0.ɵɵproperty("ngIf", ctx_r2.plan != ctx_r2.currentPlan && ctx_r2.currentPlan == 1);
3666
+ } }
3667
+ function BuyAccessButtonComponent_div_0_Template(rf, ctx) { if (rf & 1) {
3668
+ i0.ɵɵelementStart(0, "div");
3669
+ i0.ɵɵtemplate(1, BuyAccessButtonComponent_div_0_div_1_Template, 2, 0, "div", 0);
3670
+ i0.ɵɵtemplate(2, BuyAccessButtonComponent_div_0_div_2_Template, 3, 2, "div", 0);
3671
+ i0.ɵɵelementEnd();
3672
+ } if (rf & 2) {
3673
+ const ctx_r0 = i0.ɵɵnextContext();
3674
+ i0.ɵɵadvance(1);
3675
+ i0.ɵɵproperty("ngIf", !ctx_r0.isUserSignedIn);
3676
+ i0.ɵɵadvance(1);
3677
+ i0.ɵɵproperty("ngIf", ctx_r0.isUserSignedIn && ctx_r0.visibleIfUserSignedIn);
3678
+ } }
3679
+ class BuyAccessButtonComponent {
3680
+ appContext;
3681
+ contextUpdated = false;
3682
+ isUserSignedIn = false;
3683
+ currentPlan = -1;
3684
+ currentPlanTitle = '';
3685
+ plan;
3686
+ planTitle;
3687
+ visibleIfUserSignedIn = false;
3688
+ planselect = new EventEmitter();
3689
+ constructor(appContext) {
3690
+ this.appContext = appContext;
3691
+ }
3692
+ ngOnInit() {
3693
+ this.appContext.updated$.subscribe((context) => {
3694
+ if (!context) {
3695
+ return;
3696
+ }
3697
+ this.isUserSignedIn = context.isUserSignedIn;
3698
+ if (this.isUserSignedIn) {
3699
+ this.currentPlan = context.account.billingPlan;
3700
+ this.currentPlanTitle = context.account.billingPlanAsString;
3701
+ }
3702
+ this.contextUpdated = true;
3703
+ });
3704
+ }
3705
+ //Events
3706
+ onPlanSelect() {
3707
+ this.planselect.emit(this.plan);
3708
+ }
3709
+ static ɵfac = function BuyAccessButtonComponent_Factory(t) { return new (t || BuyAccessButtonComponent)(i0.ɵɵdirectiveInject(AppContextService)); };
3710
+ static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: BuyAccessButtonComponent, selectors: [["anatoly-buyaccess-button"]], inputs: { plan: "plan", planTitle: "planTitle", visibleIfUserSignedIn: "visibleIfUserSignedIn" }, outputs: { planselect: "planselect" }, decls: 1, vars: 1, consts: [[4, "ngIf"], ["classbtn", "btn btn-block btn-primary"], ["class", "btn btn-block btn-success selectPlan", 4, "ngIf"], ["class", "btn btn-block btn-warning selectPlan", 3, "click", 4, "ngIf"], [1, "btn", "btn-block", "btn-success", "selectPlan"], [1, "btn", "btn-block", "btn-warning", "selectPlan", 3, "click"]], template: function BuyAccessButtonComponent_Template(rf, ctx) { if (rf & 1) {
3711
+ i0.ɵɵtemplate(0, BuyAccessButtonComponent_div_0_Template, 3, 2, "div", 0);
3712
+ } if (rf & 2) {
3713
+ i0.ɵɵproperty("ngIf", ctx.contextUpdated);
3714
+ } }, dependencies: [i1$2.NgIf, SignUpButtonComponent], encapsulation: 2 });
3715
+ }
3716
+ (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(BuyAccessButtonComponent, [{
3717
+ type: Component,
3718
+ args: [{ selector: 'anatoly-buyaccess-button', template: "<div *ngIf=\"contextUpdated\">\r\n <div *ngIf=\"!isUserSignedIn\">\r\n <anatoly-signup-button classbtn=\"btn btn-block btn-primary\"></anatoly-signup-button>\r\n </div>\r\n\r\n <div *ngIf=\"isUserSignedIn && visibleIfUserSignedIn\">\r\n <button class=\"btn btn-block btn-success selectPlan\" \r\n *ngIf=\"plan == currentPlan\">\r\n Your Plan\r\n </button>\r\n\r\n <button class=\"btn btn-block btn-warning selectPlan\" \r\n *ngIf=\"plan != currentPlan && currentPlan == 1\" \r\n (click)=\"onPlanSelect()\">\r\n Buy Now\r\n </button>\r\n </div>\r\n</div>\r\n" }]
3719
+ }], function () { return [{ type: AppContextService }]; }, { plan: [{
3720
+ type: Input
3721
+ }], planTitle: [{
3722
+ type: Input
3723
+ }], visibleIfUserSignedIn: [{
3724
+ type: Input
3725
+ }], planselect: [{
3726
+ type: Output
3727
+ }] }); })();
3728
+
3729
+ /*
3730
+ <file>
3731
+ Project:
3732
+ @osovitny/anatoly
3733
+
3734
+ Authors:
3735
+ Vadim Osovitny vadim@osovitny.com
3736
+ Anatoly Osovitny anatoly@osovitny.com
3737
+
3738
+ Created:
3739
+ 1 Jun 2018
3740
+
3741
+ Copyright (c) 2016-2022 Osovitny Inc. All rights reserved.
3742
+ </file>
3743
+ */
3744
+ //Node
3745
+ function SubscribePlanButtonComponent_div_0_div_1_Template(rf, ctx) { if (rf & 1) {
3746
+ i0.ɵɵelementStart(0, "div");
3747
+ i0.ɵɵelement(1, "anatoly-signup-button", 1);
3748
+ i0.ɵɵelementEnd();
3749
+ } }
3750
+ function SubscribePlanButtonComponent_div_0_div_2_button_1_Template(rf, ctx) { if (rf & 1) {
3751
+ i0.ɵɵelementStart(0, "button", 5);
3752
+ i0.ɵɵtext(1, " Your Plan ");
3407
3753
  i0.ɵɵelementEnd();
3408
3754
  } }
3409
3755
  function SubscribePlanButtonComponent_div_0_div_2_button_2_Template(rf, ctx) { if (rf & 1) {
@@ -3646,7 +3992,7 @@ function SignInButtonComponent_span_4_Template(rf, ctx) { if (rf & 1) {
3646
3992
  i0.ɵɵelementEnd();
3647
3993
  } }
3648
3994
  const _c0$c = ["*"];
3649
- class SignInButtonComponent extends BaseComponent {
3995
+ class SignInButtonComponent extends ComponentBase {
3650
3996
  constructor() {
3651
3997
  super();
3652
3998
  }
@@ -3692,7 +4038,7 @@ function SignOutButtonComponent_span_4_Template(rf, ctx) { if (rf & 1) {
3692
4038
  i0.ɵɵelementEnd();
3693
4039
  } }
3694
4040
  const _c0$b = ["*"];
3695
- class SignOutButtonComponent extends BaseComponent {
4041
+ class SignOutButtonComponent extends ComponentBase {
3696
4042
  constructor() {
3697
4043
  super();
3698
4044
  }
@@ -3800,7 +4146,7 @@ function LoadingComponent_div_0_Template(rf, ctx) { if (rf & 1) {
3800
4146
  i0.ɵɵelement(1, "span", 2);
3801
4147
  i0.ɵɵelementEnd();
3802
4148
  } }
3803
- class LoadingComponent extends BaseComponent {
4149
+ class LoadingComponent extends ComponentBase {
3804
4150
  loadingService;
3805
4151
  show = false;
3806
4152
  constructor(loadingService) {
@@ -4158,188 +4504,59 @@ const DefaultEditorOptions = {
4158
4504
  "backgroundColor",
4159
4505
  "inlineClass",
4160
4506
  "inlineStyle",
4161
- ],
4162
- },
4163
- moreParagraph: {
4164
- buttons: [
4165
- "alignLeft",
4166
- "alignCenter",
4167
- "formatOLSimple",
4168
- "alignRight",
4169
- "alignJustify",
4170
- "formatOL",
4171
- "formatUL",
4172
- "paragraphFormat",
4173
- "paragraphStyle",
4174
- "lineHeight",
4175
- "outdent",
4176
- "indent",
4177
- "quote",
4178
- ],
4179
- },
4180
- moreRich: {
4181
- buttons: [
4182
- "insertLink",
4183
- "insertImage",
4184
- "insertTable",
4185
- "emoticons",
4186
- "fontAwesome",
4187
- "specialCharacters",
4188
- "embedly",
4189
- ],
4190
- },
4191
- moreMisc: {
4192
- buttons: [
4193
- "selectAll",
4194
- "clearFormatting",
4195
- "html",
4196
- "undo",
4197
- "redo",
4198
- "fullscreen",
4199
- ],
4200
- align: "right",
4201
- },
4202
- },
4203
- /*
4204
- Upload:
4205
- https://www.froala.com/wysiwyg-editor/docs/concepts/image/upload
4206
- */
4207
- imageUploadURL: "/api/htmlEditor/uploadImage",
4208
- imageAllowedTypes: ["jpeg", "jpg", "png"],
4209
- imageUploadParams: { uploadType: "", uploadParentId: "" },
4210
- };
4211
-
4212
- /*
4213
- <file>
4214
- Project:
4215
- @osovitny/anatoly
4216
-
4217
- Authors:
4218
- Vadim Osovitny vadim@osovitny.com
4219
- Anatoly Osovitny anatoly@osovitny.com
4220
-
4221
- Created:
4222
- 20 Nov 2017
4223
-
4224
- Copyright (c) 2016-2022 Osovitny Inc. All rights reserved.
4225
- </file>
4226
- */
4227
- //Node
4228
- class BaseEditComponent extends BaseComponent {
4229
- formGroup;
4230
- formSubmitted = false;
4231
- constructor() {
4232
- super();
4233
- }
4234
- isActionAdding() {
4235
- return !Utils.idExistsInQS();
4236
- }
4237
- isControlValid(name, frmGroup = null) {
4238
- return !this.isControlInvalid(name, frmGroup);
4239
- }
4240
- isControlInvalid(name, frmGroup = null) {
4241
- if (typeof name === "undefined" || name == "") {
4242
- return false;
4243
- }
4244
- let fg = frmGroup ? frmGroup : this.formGroup;
4245
- if (!fg) {
4246
- return false;
4247
- }
4248
- if (fg.get(name)) {
4249
- return ((this.formSubmitted && fg.get(name).invalid) ||
4250
- (fg.get(name).touched && fg.get(name).invalid));
4251
- }
4252
- return false;
4253
- }
4254
- //FormGroup functions
4255
- getFormValue(name, frmGroup = null) {
4256
- let fg = frmGroup ? frmGroup : this.formGroup;
4257
- return fg.controls[name].value;
4258
- }
4259
- setFormValue(name, value, frmGroup = null) {
4260
- let fg = frmGroup ? frmGroup : this.formGroup;
4261
- fg.controls[name].setValue(value);
4262
- }
4263
- getFormGroupValue(groupName, name, frmGroup = null) {
4264
- let fg = frmGroup ? frmGroup : this.formGroup;
4265
- return fg.controls[groupName].get(name).value;
4266
- }
4267
- setFormGroupValue(groupName, name, value, frmGroup = null) {
4268
- let fg = frmGroup ? frmGroup : this.formGroup;
4269
- fg.controls[groupName].get(name).setValue(value);
4270
- }
4271
- /**
4272
- * Add control to form group
4273
- * @param name
4274
- * @param formControl
4275
- * @param frmGroup
4276
- */
4277
- addControl(name, formControl, frmGroup = null) {
4278
- let fg = frmGroup ? frmGroup : this.formGroup;
4279
- fg.addControl(name, formControl);
4280
- }
4281
- /**
4282
- * Removes control from form group
4283
- * @param name
4284
- * @param frmGroup
4285
- */
4286
- removeControl(name, frmGroup = null) {
4287
- let fg = frmGroup ? frmGroup : this.formGroup;
4288
- if (fg.get(name)) {
4289
- fg.removeControl(name);
4290
- }
4291
- }
4292
- /**
4293
- * return new form control
4294
- * @param formState
4295
- * @param validatorOrOpts
4296
- * @param asyncValidator
4297
- */
4298
- createFormControl(formState, validatorOrOpts, asyncValidator) {
4299
- return new FormControl(formState, validatorOrOpts, asyncValidator);
4300
- }
4301
- /**
4302
- * Set error to control
4303
- * @param controlName formControl name
4304
- * @param err error expect {erroname: boolean} format
4305
- * @param frmGroup
4306
- */
4307
- setControlError(controlName, err, frmGroup = null) {
4308
- let fg = frmGroup ? frmGroup : this.formGroup;
4309
- fg.get(controlName)?.setErrors(err);
4310
- }
4311
- /**
4312
- * Set {invalid: true} for the specified form
4313
- * @param controlName form control name
4314
- * @param frmGroup
4315
- */
4316
- setInValidError(controlName, frmGroup = null) {
4317
- let fg = frmGroup ? frmGroup : this.formGroup;
4318
- fg.get(controlName)?.setErrors({ invalid: true });
4319
- }
4320
- /**
4321
- * returns formgroup controls.
4322
- * main use case is used in html pages
4323
- */
4324
- get fc() {
4325
- return this.formGroup.controls;
4326
- }
4327
- static ɵfac = function BaseEditComponent_Factory(t) { return new (t || BaseEditComponent)(); };
4328
- static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: BaseEditComponent, selectors: [["ng-component"]], inputs: { formGroup: "formGroup", formSubmitted: "formSubmitted" }, features: [i0.ɵɵInheritDefinitionFeature], decls: 0, vars: 0, template: function BaseEditComponent_Template(rf, ctx) { }, encapsulation: 2 });
4329
- }
4330
- (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(BaseEditComponent, [{
4331
- type: Component,
4332
- args: [{
4333
- template: ''
4334
- }]
4335
- }], function () { return []; }, { formGroup: [{
4336
- type: Input
4337
- }], formSubmitted: [{
4338
- type: Input
4339
- }] }); })();
4507
+ ],
4508
+ },
4509
+ moreParagraph: {
4510
+ buttons: [
4511
+ "alignLeft",
4512
+ "alignCenter",
4513
+ "formatOLSimple",
4514
+ "alignRight",
4515
+ "alignJustify",
4516
+ "formatOL",
4517
+ "formatUL",
4518
+ "paragraphFormat",
4519
+ "paragraphStyle",
4520
+ "lineHeight",
4521
+ "outdent",
4522
+ "indent",
4523
+ "quote",
4524
+ ],
4525
+ },
4526
+ moreRich: {
4527
+ buttons: [
4528
+ "insertLink",
4529
+ "insertImage",
4530
+ "insertTable",
4531
+ "emoticons",
4532
+ "fontAwesome",
4533
+ "specialCharacters",
4534
+ "embedly",
4535
+ ],
4536
+ },
4537
+ moreMisc: {
4538
+ buttons: [
4539
+ "selectAll",
4540
+ "clearFormatting",
4541
+ "html",
4542
+ "undo",
4543
+ "redo",
4544
+ "fullscreen",
4545
+ ],
4546
+ align: "right",
4547
+ },
4548
+ },
4549
+ /*
4550
+ Upload:
4551
+ https://www.froala.com/wysiwyg-editor/docs/concepts/image/upload
4552
+ */
4553
+ imageUploadURL: "/api/htmlEditor/uploadImage",
4554
+ imageAllowedTypes: ["jpeg", "jpg", "png"],
4555
+ imageUploadParams: { uploadType: "", uploadParentId: "" },
4556
+ };
4340
4557
 
4341
4558
  //Node
4342
- class BaseHtmlEditorComponent extends BaseEditComponent {
4559
+ class HtmlEditorComponentBase extends EditComponentBase {
4343
4560
  froalaEditor;
4344
4561
  // Public members
4345
4562
  options;
@@ -4414,10 +4631,10 @@ class BaseHtmlEditorComponent extends BaseEditComponent {
4414
4631
  editor.opts.imageUploadParams.uploadParentId = uploadParentId;
4415
4632
  });
4416
4633
  }
4417
- static ɵfac = function BaseHtmlEditorComponent_Factory(t) { return new (t || BaseHtmlEditorComponent)(); };
4418
- static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: BaseHtmlEditorComponent, selectors: [["ng-component"]], inputs: { editorLabelText: "editorLabelText", editorOptions: "editorOptions" }, features: [i0.ɵɵInheritDefinitionFeature], decls: 0, vars: 0, template: function BaseHtmlEditorComponent_Template(rf, ctx) { }, encapsulation: 2 });
4634
+ static ɵfac = function HtmlEditorComponentBase_Factory(t) { return new (t || HtmlEditorComponentBase)(); };
4635
+ static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: HtmlEditorComponentBase, selectors: [["ng-component"]], inputs: { editorLabelText: "editorLabelText", editorOptions: "editorOptions" }, features: [i0.ɵɵInheritDefinitionFeature], decls: 0, vars: 0, template: function HtmlEditorComponentBase_Template(rf, ctx) { }, encapsulation: 2 });
4419
4636
  }
4420
- (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(BaseHtmlEditorComponent, [{
4637
+ (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(HtmlEditorComponentBase, [{
4421
4638
  type: Component,
4422
4639
  args: [{
4423
4640
  template: "",
@@ -4481,7 +4698,7 @@ class NativeElementDirective {
4481
4698
  </file>
4482
4699
  */
4483
4700
  //Node
4484
- class ValidationSummaryComponent extends BaseEditComponent {
4701
+ class ValidationSummaryComponent extends EditComponentBase {
4485
4702
  constructor() {
4486
4703
  super();
4487
4704
  }
@@ -4582,7 +4799,7 @@ class ValidationSummaryComponent extends BaseEditComponent {
4582
4799
  (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(ValidationSummaryComponent, [{
4583
4800
  type: Component,
4584
4801
  args: [{
4585
- template: "",
4802
+ template: ''
4586
4803
  }]
4587
4804
  }], function () { return []; }, null); })();
4588
4805
 
@@ -4653,13 +4870,13 @@ class ItemValidationSummaryComponent extends ValidationSummaryComponent {
4653
4870
 
4654
4871
  Created:
4655
4872
  12 Dec 2017
4656
-
4873
+
4657
4874
  Copyright (c) 2016-2022 Osovitny Inc. All rights reserved.
4658
4875
  </file>
4659
4876
  */
4660
4877
  //Node
4661
4878
  const _c0$5 = function (a0) { return { "has-error": a0 }; };
4662
- class FormsHtmlEditorComponent extends BaseHtmlEditorComponent {
4879
+ class FormsHtmlEditorComponent extends HtmlEditorComponentBase {
4663
4880
  editorFormKey = "html";
4664
4881
  constructor() {
4665
4882
  super();
@@ -4712,7 +4929,7 @@ class FormsHtmlEditorComponent extends BaseHtmlEditorComponent {
4712
4929
  </file>
4713
4930
  */
4714
4931
  //Node
4715
- class HtmlEditorComponent extends BaseHtmlEditorComponent {
4932
+ class HtmlEditorComponent extends HtmlEditorComponentBase {
4716
4933
  constructor() {
4717
4934
  super();
4718
4935
  }
@@ -4752,223 +4969,6 @@ class HtmlEditorComponent extends BaseHtmlEditorComponent {
4752
4969
  args: [{ selector: "anatoly-html-editor", template: "<div class=\"form-group\">\r\n <label class=\"col-form-label\">{{ editorLabelText }}</label>\r\n <textarea [froalaEditor]=\"options\" (froalaInit)=\"initializeControl($event)\"></textarea>\r\n</div>\r\n" }]
4753
4970
  }], function () { return []; }, null); })();
4754
4971
 
4755
- /*
4756
- <file>
4757
- Project:
4758
- @osovitny/anatoly
4759
-
4760
- Authors:
4761
- Vadim Osovitny vadim@osovitny.com
4762
- Anatoly Osovitny anatoly@osovitny.com
4763
-
4764
- Created:
4765
- 24 Jan 2022
4766
-
4767
- Copyright (c) 2016-2022 Osovitny Inc. All rights reserved.
4768
- </file>
4769
- */
4770
- //Node
4771
- class BaseDialog extends BaseEditComponent {
4772
- _isOpen = false;
4773
- get isOpen() {
4774
- return this._isOpen;
4775
- }
4776
- set isOpen(value) {
4777
- if (value) {
4778
- if (this.anOnBeforeOpen) {
4779
- this.anOnBeforeOpen();
4780
- }
4781
- this.opened.emit();
4782
- }
4783
- this._isOpen = value;
4784
- }
4785
- //Events
4786
- opened = new EventEmitter();
4787
- closed = new EventEmitter();
4788
- constructor() {
4789
- super();
4790
- }
4791
- open() {
4792
- this.isOpen = true;
4793
- }
4794
- close(returnValue = "OK") {
4795
- this.isOpen = false;
4796
- this.closed.emit(returnValue);
4797
- }
4798
- cancel() {
4799
- this.isOpen = false;
4800
- this.closed.emit(-1);
4801
- }
4802
- static ɵfac = function BaseDialog_Factory(t) { return new (t || BaseDialog)(); };
4803
- static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: BaseDialog, selectors: [["ng-component"]], inputs: { isOpen: "isOpen" }, outputs: { opened: "opened", closed: "closed" }, features: [i0.ɵɵInheritDefinitionFeature], decls: 0, vars: 0, template: function BaseDialog_Template(rf, ctx) { }, encapsulation: 2 });
4804
- }
4805
- (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(BaseDialog, [{
4806
- type: Component,
4807
- args: [{
4808
- template: ''
4809
- }]
4810
- }], function () { return []; }, { isOpen: [{
4811
- type: Input
4812
- }], opened: [{
4813
- type: Output
4814
- }], closed: [{
4815
- type: Output
4816
- }] }); })();
4817
-
4818
- /*
4819
- <file>
4820
- Project:
4821
- @osovitny/anatoly
4822
-
4823
- Authors:
4824
- Vadim Osovitny vadim@osovitny.com
4825
- Anatoly Osovitny anatoly@osovitny.com
4826
-
4827
- Created:
4828
- 20 Aug 2022
4829
-
4830
- Copyright (c) 2016-2022 Osovitny Inc. All rights reserved.
4831
- </file>
4832
- */
4833
- //Node
4834
- class BaseList extends BaseComponent {
4835
- currentFilter = null;
4836
- //Items & Pagination
4837
- items;
4838
- totalItems = 0;
4839
- pageSize = 10;
4840
- skipItems = 0;
4841
- currentPage = 1;
4842
- showNoDataIfNoDataFound = true;
4843
- loadPageOne() {
4844
- this.skipItems = 0;
4845
- this.currentPage = 1;
4846
- this.loadPage();
4847
- }
4848
- reloadPage(drop2pageOne = false) {
4849
- if (drop2pageOne) {
4850
- this.loadPageOne();
4851
- }
4852
- else {
4853
- this.loadPage();
4854
- }
4855
- }
4856
- setFilter(filter) {
4857
- this.currentFilter = filter;
4858
- this.loadPageOne();
4859
- }
4860
- //Tos
4861
- toIndex(index) {
4862
- return ((this.currentPage - 1) * this.pageSize) + index + 1;
4863
- }
4864
- //Events
4865
- onPageChange(e) {
4866
- this.pageSize = e.take;
4867
- this.skipItems = e.skip;
4868
- this.currentPage = (this.skipItems / this.pageSize) + 1;
4869
- this.loadPage();
4870
- }
4871
- static ɵfac = /*@__PURE__*/ function () { let ɵBaseList_BaseFactory; return function BaseList_Factory(t) { return (ɵBaseList_BaseFactory || (ɵBaseList_BaseFactory = i0.ɵɵgetInheritedFactory(BaseList)))(t || BaseList); }; }();
4872
- static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: BaseList, selectors: [["ng-component"]], inputs: { showNoDataIfNoDataFound: "showNoDataIfNoDataFound" }, features: [i0.ɵɵInheritDefinitionFeature], decls: 0, vars: 0, template: function BaseList_Template(rf, ctx) { }, encapsulation: 2 });
4873
- }
4874
- (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(BaseList, [{
4875
- type: Component,
4876
- args: [{
4877
- template: ''
4878
- }]
4879
- }], null, { showNoDataIfNoDataFound: [{
4880
- type: Input
4881
- }] }); })();
4882
-
4883
- /*
4884
- <file>
4885
- Project:
4886
- @osovitny/anatoly
4887
-
4888
- Authors:
4889
- Vadim Osovitny vadim@osovitny.com
4890
- Anatoly Osovitny anatoly@osovitny.com
4891
-
4892
- Created:
4893
- 20 Aug 2022
4894
-
4895
- Copyright (c) 2016-2022 Osovitny Inc. All rights reserved.
4896
- </file>
4897
- */
4898
- //Node
4899
- class BasePage extends BaseComponent {
4900
- static ɵfac = /*@__PURE__*/ function () { let ɵBasePage_BaseFactory; return function BasePage_Factory(t) { return (ɵBasePage_BaseFactory || (ɵBasePage_BaseFactory = i0.ɵɵgetInheritedFactory(BasePage)))(t || BasePage); }; }();
4901
- static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: BasePage, selectors: [["ng-component"]], features: [i0.ɵɵInheritDefinitionFeature], decls: 0, vars: 0, template: function BasePage_Template(rf, ctx) { }, encapsulation: 2 });
4902
- }
4903
- (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(BasePage, [{
4904
- type: Component,
4905
- args: [{
4906
- template: ''
4907
- }]
4908
- }], null, null); })();
4909
-
4910
- /*
4911
- <file>
4912
- Project:
4913
- @osovitny/anatoly
4914
-
4915
- Authors:
4916
- Vadim Osovitny vadim@osovitny.com
4917
- Anatoly Osovitny anatoly@osovitny.com
4918
-
4919
- Created:
4920
- 20 Aug 2022
4921
-
4922
- Copyright (c) 2016-2022 Osovitny Inc. All rights reserved.
4923
- </file>
4924
- */
4925
- //Node
4926
- class BasePagedPage extends BasePage {
4927
- currentFilter = null;
4928
- //Items & Pagination
4929
- items;
4930
- totalItems = 0;
4931
- pageSize = 10;
4932
- skipItems = 0;
4933
- currentPage = 1;
4934
- loadPageOne() {
4935
- this.skipItems = 0;
4936
- this.currentPage = 1;
4937
- this.loadPage();
4938
- }
4939
- reloadPage(drop2pageOne = false) {
4940
- if (drop2pageOne) {
4941
- this.loadPageOne();
4942
- }
4943
- else {
4944
- this.loadPage();
4945
- }
4946
- }
4947
- setFilter(filter) {
4948
- this.currentFilter = filter;
4949
- this.loadPageOne();
4950
- }
4951
- //Tos
4952
- toIndex(index) {
4953
- return ((this.currentPage - 1) * this.pageSize) + index + 1;
4954
- }
4955
- //Events
4956
- onPageChange(e) {
4957
- this.pageSize = e.take;
4958
- this.skipItems = e.skip;
4959
- this.currentPage = (this.skipItems / this.pageSize) + 1;
4960
- this.loadPage();
4961
- }
4962
- static ɵfac = /*@__PURE__*/ function () { let ɵBasePagedPage_BaseFactory; return function BasePagedPage_Factory(t) { return (ɵBasePagedPage_BaseFactory || (ɵBasePagedPage_BaseFactory = i0.ɵɵgetInheritedFactory(BasePagedPage)))(t || BasePagedPage); }; }();
4963
- static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: BasePagedPage, selectors: [["ng-component"]], features: [i0.ɵɵInheritDefinitionFeature], decls: 0, vars: 0, template: function BasePagedPage_Template(rf, ctx) { }, encapsulation: 2 });
4964
- }
4965
- (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(BasePagedPage, [{
4966
- type: Component,
4967
- args: [{
4968
- template: ''
4969
- }]
4970
- }], null, null); })();
4971
-
4972
4972
  /*
4973
4973
  <file>
4974
4974
  Project:
@@ -4984,6 +4984,7 @@ class BasePagedPage extends BasePage {
4984
4984
  Copyright (c) 2016-2022 Osovitny Inc. All rights reserved.
4985
4985
  </file>
4986
4986
  */
4987
+ //base
4987
4988
 
4988
4989
  /*
4989
4990
  <file>
@@ -5109,7 +5110,7 @@ function ContactUsForm_button_38_Template(rf, ctx) { if (rf & 1) {
5109
5110
  i0.ɵɵclassProp("btn-primary", !ctx_r2.formGroup.invalid);
5110
5111
  } }
5111
5112
  const _c0$4 = function (a0) { return { "has-error": a0 }; };
5112
- class ContactUsForm extends BaseEditComponent {
5113
+ class ContactUsForm extends EditComponentBase {
5113
5114
  reCaptcha;
5114
5115
  fb;
5115
5116
  appContext;
@@ -5312,7 +5313,7 @@ function ContactUsDialog_kendo_dialog_0_Template(rf, ctx) { if (rf & 1) {
5312
5313
  i0.ɵɵadvance(2);
5313
5314
  i0.ɵɵproperty("showActionButtons", false);
5314
5315
  } }
5315
- class ContactUsDialog extends BaseDialog {
5316
+ class ContactUsDialog extends DialogBase {
5316
5317
  contactUsForm;
5317
5318
  constructor() {
5318
5319
  super();
@@ -5488,7 +5489,7 @@ function AddressComponent_option_27_Template(rf, ctx) { if (rf & 1) {
5488
5489
  i0.ɵɵadvance(1);
5489
5490
  i0.ɵɵtextInterpolate(country_r7.name);
5490
5491
  } }
5491
- class AddressComponent extends BaseEditComponent {
5492
+ class AddressComponent extends EditComponentBase {
5492
5493
  fb;
5493
5494
  api;
5494
5495
  //Private
@@ -5683,7 +5684,7 @@ function CompanyComponent_anatoly_card_header_1_Template(rf, ctx) { if (rf & 1)
5683
5684
  i0.ɵɵproperty("title", ctx_r0.title);
5684
5685
  } }
5685
5686
  const _c0$1 = function (a0) { return { "has-error": a0 }; };
5686
- class CompanyComponent extends BaseEditComponent {
5687
+ class CompanyComponent extends EditComponentBase {
5687
5688
  fb;
5688
5689
  //Private
5689
5690
  _company;
@@ -5833,7 +5834,7 @@ function UrlSlugComponent_div_6_Template(rf, ctx) { if (rf & 1) {
5833
5834
  i0.ɵɵpropertyInterpolate2("href", "", ctx_r1.urlPrefix, "", ctx_r1.hrefGo, "", i0.ɵɵsanitizeUrl);
5834
5835
  } }
5835
5836
  const _c0 = function (a0) { return { "has-error": a0 }; };
5836
- class UrlSlugComponent extends BaseEditComponent {
5837
+ class UrlSlugComponent extends EditComponentBase {
5837
5838
  firstValue = true;
5838
5839
  hrefGo;
5839
5840
  //Inputs
@@ -5958,7 +5959,7 @@ function TimezoneDropdownlist_option_3_Template(rf, ctx) { if (rf & 1) {
5958
5959
  i0.ɵɵadvance(1);
5959
5960
  i0.ɵɵtextInterpolate2(" (", timezone_r2.offset, ") ", timezone_r2.name, " ");
5960
5961
  } }
5961
- class TimezoneDropdownlist extends BaseEditComponent {
5962
+ class TimezoneDropdownlist extends EditComponentBase {
5962
5963
  api;
5963
5964
  appContext;
5964
5965
  timezoneListItems;
@@ -6487,7 +6488,7 @@ class AnatolyIAMModule {
6487
6488
  </file>
6488
6489
  */
6489
6490
  //Node
6490
- class SignInPage extends BasePage {
6491
+ class SignInPage extends PageBase {
6491
6492
  auth;
6492
6493
  constructor(auth) {
6493
6494
  super();
@@ -6523,7 +6524,7 @@ class SignInPage extends BasePage {
6523
6524
  </file>
6524
6525
  */
6525
6526
  //Node
6526
- class SignOutPage extends BasePage {
6527
+ class SignOutPage extends PageBase {
6527
6528
  auth;
6528
6529
  constructor(auth) {
6529
6530
  super();
@@ -6559,7 +6560,7 @@ class SignOutPage extends BasePage {
6559
6560
  </file>
6560
6561
  */
6561
6562
  //Node
6562
- class SignUpPage extends BasePage {
6563
+ class SignUpPage extends PageBase {
6563
6564
  auth;
6564
6565
  constructor(auth) {
6565
6566
  super();
@@ -7014,5 +7015,5 @@ class AnatolyModule {
7014
7015
  * Generated bundle index. Do not edit.
7015
7016
  */
7016
7017
 
7017
- export { AddressComponent, AdminGuard, Alerts, AnatolyCoreModule, AnatolyDataModule, AnatolyHttpInterceptor, AnatolyIAMModule, AnatolyIAMPagesModule, AnatolyModule, AnatolyUIModule, ApiServiceBase, ApiUrl, AppContextService, AppCoreSettings, AppName, AppVersion, AuthService, AuthenticationGuard, BaseComponent, BaseDialog, BaseEditComponent, BaseGoService, BaseHtmlEditorComponent, BaseList, BasePage, BasePagedPage, Browser, BuyAccessButtonComponent, CardBodyComponent, CardComponent, CardFooterComponent, CardHeaderComponent, CheckIconComponent, CompanyComponent, ContactUsDialog, ContactUsForm, Convert, Copy2ClipboardComponent, CoreApiService, DOM, DatapagerComponent, DefaultEditorOptions, DigitalMarketingService, EmailsApiService, FileSizePipe, FormValidationSummaryComponent, FormsHtmlEditorComponent, GlobalErrorHandler, GoogleAnalyticsService, GridEditServiceBase, GridReadServiceBase, Guid, HoveringDirective, HtmlEditorComponent, IdleService, InjectorInstance, ItemValidationSummaryComponent, L10NUrl, LoadingComponent, LoadingService, LocalStorageService, LocalizationInjectorInstance, LocalizationModule, LocalizationService, LocalizationSettingsModule, LocalizePipe, LoggingService, MSALUtils, NativeElementDirective, NodataComponent, NotificationService, PageSpinnerComponent, ReplaceTextPipe, SafeHtmlPipe, SessionStorageService, SignInButtonComponent, SignOutButtonComponent, SignUpButtonComponent, StarterServiceBase, Stopwatch, Subs, SubscribePlanButtonComponent, TimezoneDropdownlist, UrlSlugComponent, Utils, ValidationSummaryComponent, XmlFormatter, localizationInitializerFactory, throwIfAlreadyLoaded, translateLoaderFactory };
7018
+ export { AddressComponent, AdminGuard, Alerts, AnatolyCoreModule, AnatolyDataModule, AnatolyHttpInterceptor, AnatolyIAMModule, AnatolyIAMPagesModule, AnatolyModule, AnatolyUIModule, ApiServiceBase, ApiUrl, AppContextService, AppCoreSettings, AppName, AppVersion, AuthService, AuthenticationGuard, BaseGoService, Browser, BuyAccessButtonComponent, CardBodyComponent, CardComponent, CardFooterComponent, CardHeaderComponent, CheckIconComponent, CompanyComponent, ComponentBase, ContactUsDialog, ContactUsForm, Convert, Copy2ClipboardComponent, CoreApiService, DOM, DatapagerComponent, DefaultEditorOptions, DialogBase, DigitalMarketingService, EditComponentBase, EmailsApiService, FileSizePipe, FormValidationSummaryComponent, FormsHtmlEditorComponent, GlobalErrorHandler, GoogleAnalyticsService, GridEditServiceBase, GridReadServiceBase, Guid, HoveringDirective, HtmlEditorComponent, HtmlEditorComponentBase, IdleService, InjectorInstance, ItemValidationSummaryComponent, L10NUrl, ListBase, LoadingComponent, LoadingService, LocalStorageService, LocalizationInjectorInstance, LocalizationModule, LocalizationService, LocalizationSettingsModule, LocalizePipe, LoggingService, MSALUtils, NativeElementDirective, NodataComponent, NotificationService, PageBase, PageSpinnerComponent, PagedPageBase, ReplaceTextPipe, SafeHtmlPipe, SessionStorageService, SignInButtonComponent, SignOutButtonComponent, SignUpButtonComponent, StarterServiceBase, Stopwatch, Subs, SubscribePlanButtonComponent, TimezoneDropdownlist, UrlSlugComponent, Utils, ValidationSummaryComponent, XmlFormatter, localizationInitializerFactory, throwIfAlreadyLoaded, translateLoaderFactory };
7018
7019
  //# sourceMappingURL=osovitny-anatoly.mjs.map