@osovitny/anatoly 3.16.76 → 3.16.78

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 (50) hide show
  1. package/esm2022/lib/core/consts/settings.mjs +3 -3
  2. package/esm2022/lib/iam/pages/signin.page.mjs +2 -2
  3. package/esm2022/lib/iam/pages/signout.page.mjs +2 -2
  4. package/esm2022/lib/iam/pages/signup.page.mjs +2 -2
  5. package/esm2022/lib/ui/components/base/components/component.mjs +69 -0
  6. package/esm2022/lib/ui/components/base/components/edit.component.mjs +135 -0
  7. package/esm2022/lib/ui/components/base/dialog.mjs +2 -2
  8. package/esm2022/lib/ui/components/base/list.mjs +2 -2
  9. package/esm2022/lib/ui/components/base/pages/edit.page.mjs +31 -0
  10. package/esm2022/lib/ui/components/base/pages/page.mjs +31 -0
  11. package/esm2022/lib/ui/components/base/pages/paged.page.mjs +66 -0
  12. package/esm2022/lib/ui/components/html-editor/base-html-editor.component.mjs +2 -2
  13. package/esm2022/lib/ui/components/identity/signin-button.component.mjs +2 -2
  14. package/esm2022/lib/ui/components/identity/signout-button.component.mjs +2 -2
  15. package/esm2022/lib/ui/components/identity/signup-button.component.mjs +2 -2
  16. package/esm2022/lib/ui/components/index.mjs +6 -5
  17. package/esm2022/lib/ui/components/spinners/loading/loading.component.mjs +2 -2
  18. package/esm2022/lib/ui/forms/components/dropdownlists/timezone/timezone.dropdownlist.mjs +2 -2
  19. package/esm2022/lib/ui/forms/components/urlslug/urlslug.component.mjs +2 -2
  20. package/esm2022/lib/ui/forms/contact-us/contact-us.mjs +2 -2
  21. package/esm2022/lib/ui/validation/validation-summary.component.mjs +2 -2
  22. package/fesm2022/osovitny-anatoly.mjs +96 -65
  23. package/fesm2022/osovitny-anatoly.mjs.map +1 -1
  24. package/lib/core/consts/settings.d.ts +2 -2
  25. package/lib/iam/iam-pages.routes.d.ts +1 -1
  26. package/lib/iam/pages/signin.page.d.ts +1 -1
  27. package/lib/iam/pages/signout.page.d.ts +1 -1
  28. package/lib/iam/pages/signup.page.d.ts +1 -1
  29. package/lib/ui/components/base/{component.d.ts → components/component.d.ts} +5 -3
  30. package/lib/ui/components/base/dialog.d.ts +1 -1
  31. package/lib/ui/components/base/list.d.ts +1 -1
  32. package/lib/ui/components/base/pages/edit.page.d.ts +6 -0
  33. package/lib/ui/components/base/{page.d.ts → pages/page.d.ts} +1 -1
  34. package/lib/ui/components/html-editor/base-html-editor.component.d.ts +1 -1
  35. package/lib/ui/components/identity/signin-button.component.d.ts +1 -1
  36. package/lib/ui/components/identity/signout-button.component.d.ts +1 -1
  37. package/lib/ui/components/identity/signup-button.component.d.ts +1 -1
  38. package/lib/ui/components/index.d.ts +5 -4
  39. package/lib/ui/components/spinners/loading/loading.component.d.ts +1 -1
  40. package/lib/ui/forms/components/dropdownlists/timezone/timezone.dropdownlist.d.ts +1 -1
  41. package/lib/ui/forms/components/urlslug/urlslug.component.d.ts +1 -1
  42. package/lib/ui/forms/contact-us/contact-us.d.ts +1 -1
  43. package/lib/ui/validation/validation-summary.component.d.ts +1 -1
  44. package/package.json +1 -1
  45. package/esm2022/lib/ui/components/base/component.mjs +0 -65
  46. package/esm2022/lib/ui/components/base/edit.component.mjs +0 -135
  47. package/esm2022/lib/ui/components/base/page.mjs +0 -31
  48. package/esm2022/lib/ui/components/base/paged.page.mjs +0 -66
  49. /package/lib/ui/components/base/{edit.component.d.ts → components/edit.component.d.ts} +0 -0
  50. /package/lib/ui/components/base/{paged.page.d.ts → pages/paged.page.d.ts} +0 -0
@@ -1,5 +1,5 @@
1
- export declare function getAppSettingsById(id: number): any;
2
- export declare function getAppSettingsByName(name: string): any;
1
+ export declare function getAppSettingsById(id: any): any;
2
+ export declare function getAppSettingsByName(name: any): any;
3
3
  export declare const AppCoreSettings: any;
4
4
  export declare const L10NUrl: string;
5
5
  export declare const AppVersion: string;
@@ -3,4 +3,4 @@ import { SignInPage } from "./pages/signin.page";
3
3
  import { SignOutPage } from "./pages/signout.page";
4
4
  import { SignUpPage } from "./pages/signup.page";
5
5
  export declare const IAMRouterModule: import("@angular/core").ModuleWithProviders<RouterModule>;
6
- export declare const PAGES: (typeof SignInPage | typeof SignOutPage | typeof SignUpPage)[];
6
+ export declare const PAGES: (typeof SignUpPage | typeof SignInPage | typeof SignOutPage)[];
@@ -1,6 +1,6 @@
1
1
  import { OnInit } from '@angular/core';
2
2
  import { AuthService } from '../services/auth.service';
3
- import { PageBase } from '../../ui/components/base/page';
3
+ import { PageBase } from '../../ui/components/base/pages/page';
4
4
  import * as i0 from "@angular/core";
5
5
  export declare class SignInPage extends PageBase implements OnInit {
6
6
  private auth;
@@ -1,6 +1,6 @@
1
1
  import { OnInit } from '@angular/core';
2
2
  import { AuthService } from '../services/auth.service';
3
- import { PageBase } from '../../ui/components/base/page';
3
+ import { PageBase } from '../../ui/components/base/pages/page';
4
4
  import * as i0 from "@angular/core";
5
5
  export declare class SignOutPage extends PageBase implements OnInit {
6
6
  private auth;
@@ -1,6 +1,6 @@
1
1
  import { OnInit } from '@angular/core';
2
2
  import { AuthService } from '../services/auth.service';
3
- import { PageBase } from '../../ui/components/base/page';
3
+ import { PageBase } from '../../ui/components/base/pages/page';
4
4
  import * as i0 from "@angular/core";
5
5
  export declare class SignUpPage extends PageBase implements OnInit {
6
6
  private auth;
@@ -1,12 +1,14 @@
1
- import { OnDestroy } from "@angular/core";
2
- import { Subs } from "../../../core";
1
+ import { OnDestroy, OnInit } from "@angular/core";
2
+ import { Subs } from "../../../../core";
3
3
  import * as i0 from "@angular/core";
4
- export declare abstract class ComponentBase implements OnDestroy {
4
+ export declare abstract class ComponentBase implements OnInit, OnDestroy {
5
+ protected isDevMode: boolean;
5
6
  protected subs: Subs;
6
7
  protected dataLoading: boolean;
7
8
  protected dataLoaded: boolean;
8
9
  protected dataFound: boolean;
9
10
  classes: string;
11
+ ngOnInit(): void;
10
12
  ngOnDestroy(): void;
11
13
  getEntityId(): string;
12
14
  getValueByNameInQS(name: any): string;
@@ -1,5 +1,5 @@
1
1
  import { EventEmitter } from "@angular/core";
2
- import { EditComponentBase } from "./edit.component";
2
+ import { EditComponentBase } from "./components/edit.component";
3
3
  import * as i0 from "@angular/core";
4
4
  export declare abstract class DialogBase extends EditComponentBase {
5
5
  private _isOpen;
@@ -1,4 +1,4 @@
1
- import { ComponentBase } from "./component";
1
+ import { ComponentBase } from "./components/component";
2
2
  import * as i0 from "@angular/core";
3
3
  export declare abstract class ListBase extends ComponentBase {
4
4
  currentFilter: any;
@@ -0,0 +1,6 @@
1
+ import { EditComponentBase } from "../components/edit.component";
2
+ import * as i0 from "@angular/core";
3
+ export declare abstract class EditPageBase extends EditComponentBase {
4
+ static ɵfac: i0.ɵɵFactoryDeclaration<EditPageBase, never>;
5
+ static ɵcmp: i0.ɵɵComponentDeclaration<EditPageBase, "ng-component", never, {}, {}, never, never, false, never>;
6
+ }
@@ -1,4 +1,4 @@
1
- import { ComponentBase } from "./component";
1
+ import { ComponentBase } from "../components/component";
2
2
  import * as i0 from "@angular/core";
3
3
  export declare abstract class PageBase extends ComponentBase {
4
4
  static ɵfac: i0.ɵɵFactoryDeclaration<PageBase, never>;
@@ -1,5 +1,5 @@
1
1
  import { AfterViewInit, OnInit } from "@angular/core";
2
- import { EditComponentBase } from "../base/edit.component";
2
+ import { EditComponentBase } from "../base/components/edit.component";
3
3
  import * as i0 from "@angular/core";
4
4
  export declare abstract class HtmlEditorComponentBase extends EditComponentBase implements OnInit, AfterViewInit {
5
5
  protected froalaEditor: any;
@@ -1,5 +1,5 @@
1
1
  import { OnInit } from "@angular/core";
2
- import { ComponentBase } from "../base/component";
2
+ import { ComponentBase } from "../base/components/component";
3
3
  import * as i0 from "@angular/core";
4
4
  export declare class SignInButtonComponent extends ComponentBase implements OnInit {
5
5
  url: any;
@@ -1,5 +1,5 @@
1
1
  import { OnInit } from "@angular/core";
2
- import { ComponentBase } from "../base/component";
2
+ import { ComponentBase } from "../base/components/component";
3
3
  import * as i0 from "@angular/core";
4
4
  export declare class SignOutButtonComponent extends ComponentBase implements OnInit {
5
5
  url: any;
@@ -1,5 +1,5 @@
1
1
  import { OnInit } from "@angular/core";
2
- import { ComponentBase } from "../base/component";
2
+ import { ComponentBase } from "../base/components/component";
3
3
  import * as i0 from "@angular/core";
4
4
  export declare class SignUpButtonComponent extends ComponentBase implements OnInit {
5
5
  url: any;
@@ -1,9 +1,10 @@
1
- export * from './base/edit.component';
2
- export * from './base/component';
1
+ export * from './base/components/edit.component';
2
+ export * from './base/components/component';
3
+ export * from './base/pages/page';
4
+ export * from './base/pages/edit.page';
5
+ export * from './base/pages/paged.page';
3
6
  export * from './base/dialog';
4
7
  export * from './base/list';
5
- export * from './base/page';
6
- export * from './base/paged.page';
7
8
  export * from './billing/buyaccess-button.component';
8
9
  export * from './billing/subscribe-plan-button.component';
9
10
  export * from './check-icon/check-icon.component';
@@ -1,5 +1,5 @@
1
1
  import { OnInit } from '@angular/core';
2
- import { ComponentBase } from '../../base/component';
2
+ import { ComponentBase } from '../../base/components/component';
3
3
  import { LoadingService } from '../../../../core/services/loading.service';
4
4
  import * as i0 from "@angular/core";
5
5
  export declare class LoadingComponent extends ComponentBase implements OnInit {
@@ -1,5 +1,5 @@
1
1
  import { OnInit } from '@angular/core';
2
- import { EditComponentBase } from '../../../../components/base/edit.component';
2
+ import { EditComponentBase } from '../../../../components/base/components/edit.component';
3
3
  import { AppContextService } from '../../../../../core/services/appcontext.service';
4
4
  import { CoreApiService } from '../../../../../data/services/core-api.service';
5
5
  import * as i0 from "@angular/core";
@@ -1,5 +1,5 @@
1
1
  import { EventEmitter, OnInit } from '@angular/core';
2
- import { EditComponentBase } from '../../../components/base/edit.component';
2
+ import { EditComponentBase } from '../../../components/base/components/edit.component';
3
3
  import * as i0 from "@angular/core";
4
4
  export declare class UrlSlugComponent extends EditComponentBase implements OnInit {
5
5
  firstValue: boolean;
@@ -4,7 +4,7 @@ import { ReCaptchaV3Service } from 'ngx-captcha';
4
4
  import { AppContextService } from "../../../core/services/appcontext.service";
5
5
  import { NotificationService } from "../../../core/notifications/services/notification-service";
6
6
  import { EmailsApiService } from '../../../data/services/emails-api.service';
7
- import { EditComponentBase } from "../../components/base/edit.component";
7
+ import { EditComponentBase } from "../../components/base/components/edit.component";
8
8
  import * as i0 from "@angular/core";
9
9
  export declare class ContactUsForm extends EditComponentBase implements OnInit {
10
10
  private reCaptcha;
@@ -1,4 +1,4 @@
1
- import { EditComponentBase } from "../components/base/edit.component";
1
+ import { EditComponentBase } from "../components/base/components/edit.component";
2
2
  import * as i0 from "@angular/core";
3
3
  export declare abstract class ValidationSummaryComponent extends EditComponentBase {
4
4
  constructor();
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@osovitny/anatoly",
3
- "version": "3.16.76",
3
+ "version": "3.16.78",
4
4
  "peerDependencies": {
5
5
  "@angular/common": "16.2.7",
6
6
  "@angular/core": "16.2.7",
@@ -1,65 +0,0 @@
1
- /*
2
- <file>
3
- Project:
4
- @osovitny/anatoly
5
-
6
- Authors:
7
- Vadim Osovitny vadim@osovitny.com
8
- Anatoly Osovitny anatoly@osovitny.com
9
-
10
- Created:
11
- 28 Aug 2018
12
-
13
- Copyright (c) 2016-2022 Osovitny Inc. All rights reserved.
14
- </file>
15
- */
16
- //Node
17
- import { Component, Input } from "@angular/core";
18
- //App
19
- import { Utils, Subs } from "../../../core";
20
- import * as i0 from "@angular/core";
21
- export class ComponentBase {
22
- subs = new Subs();
23
- //Component Data => usually loading from API
24
- dataLoading = true;
25
- dataLoaded = false;
26
- dataFound = false;
27
- //Inputs
28
- classes;
29
- ngOnDestroy() {
30
- this.subs.unsubscribe();
31
- }
32
- getEntityId() {
33
- return this.getValueByNameInQS("id");
34
- }
35
- getValueByNameInQS(name) {
36
- let value = Utils.getValueByNameInQS(name);
37
- if (typeof value === "undefined" || value == "")
38
- return null;
39
- return value;
40
- }
41
- dataStartedLoading() {
42
- this.dataLoading = true;
43
- this.dataLoaded = false;
44
- this.dataFound = false;
45
- }
46
- dataLoadedAndNothingFound() {
47
- this.dataLoadedAndFound(false);
48
- }
49
- dataLoadedAndFound(found = true) {
50
- this.dataLoading = false;
51
- this.dataLoaded = true;
52
- this.dataFound = found;
53
- }
54
- static ɵfac = function ComponentBase_Factory(t) { return new (t || ComponentBase)(); };
55
- 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 });
56
- }
57
- (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(ComponentBase, [{
58
- type: Component,
59
- args: [{
60
- template: ''
61
- }]
62
- }], null, { classes: [{
63
- type: Input
64
- }] }); })();
65
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5hdG9seS9zcmMvbGliL3VpL2NvbXBvbmVudHMvYmFzZS9jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7Ozs7O0VBY0U7QUFFRixNQUFNO0FBQ04sT0FBTyxFQUFFLFNBQVMsRUFBYSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFNUQsS0FBSztBQUNMLE9BQU8sRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQUs1QyxNQUFNLE9BQWdCLGFBQWE7SUFDdkIsSUFBSSxHQUFTLElBQUksSUFBSSxFQUFFLENBQUM7SUFFbEMsNENBQTRDO0lBQ2xDLFdBQVcsR0FBWSxJQUFJLENBQUM7SUFDNUIsVUFBVSxHQUFZLEtBQUssQ0FBQztJQUM1QixTQUFTLEdBQVksS0FBSyxDQUFDO0lBRXJDLFFBQVE7SUFDQyxPQUFPLENBQVM7SUFFekIsV0FBVztRQUNULElBQUksQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDMUIsQ0FBQztJQUVNLFdBQVc7UUFDaEIsT0FBTyxJQUFJLENBQUMsa0JBQWtCLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDdkMsQ0FBQztJQUVNLGtCQUFrQixDQUFDLElBQUk7UUFDNUIsSUFBSSxLQUFLLEdBQUcsS0FBSyxDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBQyxDQUFDO1FBQzNDLElBQUksT0FBTyxLQUFLLEtBQUssV0FBVyxJQUFJLEtBQUssSUFBSSxFQUFFO1lBQUUsT0FBTyxJQUFJLENBQUM7UUFFN0QsT0FBTyxLQUFLLENBQUM7SUFDZixDQUFDO0lBRU0sa0JBQWtCO1FBQ3ZCLElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDO1FBQ3hCLElBQUksQ0FBQyxVQUFVLEdBQUcsS0FBSyxDQUFDO1FBQ3hCLElBQUksQ0FBQyxTQUFTLEdBQUcsS0FBSyxDQUFDO0lBQ3pCLENBQUM7SUFFTSx5QkFBeUI7UUFDOUIsSUFBSSxDQUFDLGtCQUFrQixDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ2pDLENBQUM7SUFFTSxrQkFBa0IsQ0FBQyxRQUFpQixJQUFJO1FBQzdDLElBQUksQ0FBQyxXQUFXLEdBQUcsS0FBSyxDQUFDO1FBQ3pCLElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDO1FBQ3ZCLElBQUksQ0FBQyxTQUFTLEdBQUcsS0FBSyxDQUFDO0lBQ3pCLENBQUM7dUVBeENtQixhQUFhOzZEQUFiLGFBQWE7O3VGQUFiLGFBQWE7Y0FIbEMsU0FBUztlQUFDO2dCQUNULFFBQVEsRUFBRSxFQUFFO2FBQ2I7Z0JBVVUsT0FBTztrQkFBZixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiLypcclxuPGZpbGU+XHJcbiAgUHJvamVjdDpcclxuICAgIEBvc292aXRueS9hbmF0b2x5XHJcblxyXG4gIEF1dGhvcnM6XHJcbiAgICBWYWRpbSBPc292aXRueSB2YWRpbUBvc292aXRueS5jb21cclxuICAgIEFuYXRvbHkgT3Nvdml0bnkgYW5hdG9seUBvc292aXRueS5jb21cclxuXHJcbiAgQ3JlYXRlZDpcclxuICAgIDI4IEF1ZyAyMDE4XHJcblxyXG4gIENvcHlyaWdodCAoYykgMjAxNi0yMDIyIE9zb3ZpdG55IEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cclxuPC9maWxlPlxyXG4qL1xyXG5cclxuLy9Ob2RlXHJcbmltcG9ydCB7IENvbXBvbmVudCwgT25EZXN0cm95LCBJbnB1dCB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcblxyXG4vL0FwcFxyXG5pbXBvcnQgeyBVdGlscywgU3VicyB9IGZyb20gXCIuLi8uLi8uLi9jb3JlXCI7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICB0ZW1wbGF0ZTogJydcclxufSlcclxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIENvbXBvbmVudEJhc2UgaW1wbGVtZW50cyBPbkRlc3Ryb3kge1xyXG4gIHByb3RlY3RlZCBzdWJzOiBTdWJzID0gbmV3IFN1YnMoKTtcclxuXHJcbiAgLy9Db21wb25lbnQgRGF0YSA9PiB1c3VhbGx5IGxvYWRpbmcgZnJvbSBBUElcclxuICBwcm90ZWN0ZWQgZGF0YUxvYWRpbmc6IGJvb2xlYW4gPSB0cnVlO1xyXG4gIHByb3RlY3RlZCBkYXRhTG9hZGVkOiBib29sZWFuID0gZmFsc2U7XHJcbiAgcHJvdGVjdGVkIGRhdGFGb3VuZDogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuICAvL0lucHV0c1xyXG4gIEBJbnB1dCgpIGNsYXNzZXM6IHN0cmluZztcclxuXHJcbiAgbmdPbkRlc3Ryb3koKSB7XHJcbiAgICB0aGlzLnN1YnMudW5zdWJzY3JpYmUoKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXRFbnRpdHlJZCgpIHtcclxuICAgIHJldHVybiB0aGlzLmdldFZhbHVlQnlOYW1lSW5RUyhcImlkXCIpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldFZhbHVlQnlOYW1lSW5RUyhuYW1lKSB7XHJcbiAgICBsZXQgdmFsdWUgPSBVdGlscy5nZXRWYWx1ZUJ5TmFtZUluUVMobmFtZSk7XHJcbiAgICBpZiAodHlwZW9mIHZhbHVlID09PSBcInVuZGVmaW5lZFwiIHx8IHZhbHVlID09IFwiXCIpIHJldHVybiBudWxsO1xyXG5cclxuICAgIHJldHVybiB2YWx1ZTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBkYXRhU3RhcnRlZExvYWRpbmcoKSB7XHJcbiAgICB0aGlzLmRhdGFMb2FkaW5nID0gdHJ1ZTtcclxuICAgIHRoaXMuZGF0YUxvYWRlZCA9IGZhbHNlO1xyXG4gICAgdGhpcy5kYXRhRm91bmQgPSBmYWxzZTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBkYXRhTG9hZGVkQW5kTm90aGluZ0ZvdW5kKCkge1xyXG4gICAgdGhpcy5kYXRhTG9hZGVkQW5kRm91bmQoZmFsc2UpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGRhdGFMb2FkZWRBbmRGb3VuZChmb3VuZDogYm9vbGVhbiA9IHRydWUpIHtcclxuICAgIHRoaXMuZGF0YUxvYWRpbmcgPSBmYWxzZTtcclxuICAgIHRoaXMuZGF0YUxvYWRlZCA9IHRydWU7XHJcbiAgICB0aGlzLmRhdGFGb3VuZCA9IGZvdW5kO1xyXG4gIH1cclxufVxyXG4iXX0=
@@ -1,135 +0,0 @@
1
- /*
2
- <file>
3
- Project:
4
- @osovitny/anatoly
5
-
6
- Authors:
7
- Vadim Osovitny vadim@osovitny.com
8
- Anatoly Osovitny anatoly@osovitny.com
9
-
10
- Created:
11
- 20 Nov 2017
12
-
13
- Copyright (c) 2016-2022 Osovitny Inc. All rights reserved.
14
- </file>
15
- */
16
- //Node
17
- import { Component, Input } from "@angular/core";
18
- import { FormControl } from "@angular/forms";
19
- //App
20
- import { ComponentBase } from "./component";
21
- import { Utils } from "../../../core";
22
- import * as i0 from "@angular/core";
23
- export class EditComponentBase extends ComponentBase {
24
- formGroup;
25
- formSubmitted = false;
26
- constructor() {
27
- super();
28
- }
29
- isActionAdding() {
30
- return !Utils.idExistsInQS();
31
- }
32
- isControlValid(name, frmGroup = null) {
33
- return !this.isControlInvalid(name, frmGroup);
34
- }
35
- isControlInvalid(name, frmGroup = null) {
36
- if (typeof name === "undefined" || name == "") {
37
- return false;
38
- }
39
- let fg = frmGroup ? frmGroup : this.formGroup;
40
- if (!fg) {
41
- return false;
42
- }
43
- if (fg.get(name)) {
44
- return ((this.formSubmitted && fg.get(name).invalid) ||
45
- (fg.get(name).touched && fg.get(name).invalid));
46
- }
47
- return false;
48
- }
49
- //FormGroup functions
50
- getFormValue(name, frmGroup = null) {
51
- let fg = frmGroup ? frmGroup : this.formGroup;
52
- return fg.controls[name].value;
53
- }
54
- setFormValue(name, value, frmGroup = null) {
55
- let fg = frmGroup ? frmGroup : this.formGroup;
56
- fg.controls[name].setValue(value);
57
- }
58
- getFormGroupValue(groupName, name, frmGroup = null) {
59
- let fg = frmGroup ? frmGroup : this.formGroup;
60
- return fg.controls[groupName].get(name).value;
61
- }
62
- setFormGroupValue(groupName, name, value, frmGroup = null) {
63
- let fg = frmGroup ? frmGroup : this.formGroup;
64
- fg.controls[groupName].get(name).setValue(value);
65
- }
66
- /**
67
- * Add control to form group
68
- * @param name
69
- * @param formControl
70
- * @param frmGroup
71
- */
72
- addControl(name, formControl, frmGroup = null) {
73
- let fg = frmGroup ? frmGroup : this.formGroup;
74
- fg.addControl(name, formControl);
75
- }
76
- /**
77
- * Removes control from form group
78
- * @param name
79
- * @param frmGroup
80
- */
81
- removeControl(name, frmGroup = null) {
82
- let fg = frmGroup ? frmGroup : this.formGroup;
83
- if (fg.get(name)) {
84
- fg.removeControl(name);
85
- }
86
- }
87
- /**
88
- * return new form control
89
- * @param formState
90
- * @param validatorOrOpts
91
- * @param asyncValidator
92
- */
93
- createFormControl(formState, validatorOrOpts, asyncValidator) {
94
- return new FormControl(formState, validatorOrOpts, asyncValidator);
95
- }
96
- /**
97
- * Set error to control
98
- * @param controlName formControl name
99
- * @param err error expect {erroname: boolean} format
100
- * @param frmGroup
101
- */
102
- setControlError(controlName, err, frmGroup = null) {
103
- let fg = frmGroup ? frmGroup : this.formGroup;
104
- fg.get(controlName)?.setErrors(err);
105
- }
106
- /**
107
- * Set {invalid: true} for the specified form
108
- * @param controlName form control name
109
- * @param frmGroup
110
- */
111
- setInValidError(controlName, frmGroup = null) {
112
- let fg = frmGroup ? frmGroup : this.formGroup;
113
- fg.get(controlName)?.setErrors({ invalid: true });
114
- }
115
- /**
116
- * returns formgroup controls.
117
- * main use case is used in html pages
118
- */
119
- get fc() {
120
- return this.formGroup.controls;
121
- }
122
- static ɵfac = function EditComponentBase_Factory(t) { return new (t || EditComponentBase)(); };
123
- 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 });
124
- }
125
- (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(EditComponentBase, [{
126
- type: Component,
127
- args: [{
128
- template: ''
129
- }]
130
- }], function () { return []; }, { formGroup: [{
131
- type: Input
132
- }], formSubmitted: [{
133
- type: Input
134
- }] }); })();
135
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWRpdC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmF0b2x5L3NyYy9saWIvdWkvY29tcG9uZW50cy9iYXNlL2VkaXQuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7OztFQWNFO0FBRUYsTUFBTTtBQUNOLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2pELE9BQU8sRUFBOEIsV0FBVyxFQUF5RCxNQUFNLGdCQUFnQixDQUFDO0FBRWhJLEtBQUs7QUFDTCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQzVDLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBS3RDLE1BQU0sT0FBZ0IsaUJBQWtCLFNBQVEsYUFBYTtJQUNsRCxTQUFTLENBQVk7SUFDckIsYUFBYSxHQUFZLEtBQUssQ0FBQztJQUV4QztRQUNFLEtBQUssRUFBRSxDQUFDO0lBQ1YsQ0FBQztJQUVELGNBQWM7UUFDWixPQUFPLENBQUMsS0FBSyxDQUFDLFlBQVksRUFBRSxDQUFDO0lBQy9CLENBQUM7SUFFRCxjQUFjLENBQUMsSUFBWSxFQUFFLFdBQXNCLElBQUk7UUFDckQsT0FBTyxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLEVBQUUsUUFBUSxDQUFDLENBQUM7SUFDaEQsQ0FBQztJQUVELGdCQUFnQixDQUFDLElBQVksRUFBRSxXQUFzQixJQUFJO1FBQ3ZELElBQUksT0FBTyxJQUFJLEtBQUssV0FBVyxJQUFJLElBQUksSUFBSSxFQUFFLEVBQUU7WUFDN0MsT0FBTyxLQUFLLENBQUM7U0FDZDtRQUVELElBQUksRUFBRSxHQUFHLFFBQVEsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDO1FBQzlDLElBQUksQ0FBQyxFQUFFLEVBQUU7WUFDUCxPQUFPLEtBQUssQ0FBQztTQUNkO1FBRUQsSUFBSSxFQUFFLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxFQUFFO1lBQ2hCLE9BQU8sQ0FDTCxDQUFDLElBQUksQ0FBQyxhQUFhLElBQUksRUFBRSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQyxPQUFPLENBQUM7Z0JBQzVDLENBQUMsRUFBRSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQyxPQUFPLElBQUksRUFBRSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FDL0MsQ0FBQztTQUNIO1FBRUQsT0FBTyxLQUFLLENBQUM7SUFDZixDQUFDO0lBRUQscUJBQXFCO0lBQ3JCLFlBQVksQ0FBQyxJQUFJLEVBQUUsV0FBc0IsSUFBSTtRQUMzQyxJQUFJLEVBQUUsR0FBRyxRQUFRLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQztRQUM5QyxPQUFPLEVBQUUsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUMsS0FBSyxDQUFDO0lBQ2pDLENBQUM7SUFFRCxZQUFZLENBQUMsSUFBSSxFQUFFLEtBQUssRUFBRSxXQUFzQixJQUFJO1FBQ2xELElBQUksRUFBRSxHQUFHLFFBQVEsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDO1FBQzlDLEVBQUUsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3BDLENBQUM7SUFFRCxpQkFBaUIsQ0FBQyxTQUFTLEVBQUUsSUFBSSxFQUFFLFdBQXNCLElBQUk7UUFDM0QsSUFBSSxFQUFFLEdBQUcsUUFBUSxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUM7UUFDOUMsT0FBTyxFQUFFLENBQUMsUUFBUSxDQUFDLFNBQVMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQyxLQUFLLENBQUM7SUFDaEQsQ0FBQztJQUVELGlCQUFpQixDQUFDLFNBQVMsRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLFdBQXNCLElBQUk7UUFDbEUsSUFBSSxFQUFFLEdBQUcsUUFBUSxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUM7UUFDOUMsRUFBRSxDQUFDLFFBQVEsQ0FBQyxTQUFTLENBQUMsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ25ELENBQUM7SUFFRDs7Ozs7T0FLRztJQUNILFVBQVUsQ0FDUixJQUFZLEVBQ1osV0FBNEIsRUFDNUIsV0FBc0IsSUFBSTtRQUUxQixJQUFJLEVBQUUsR0FBRyxRQUFRLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQztRQUM5QyxFQUFFLENBQUMsVUFBVSxDQUFDLElBQUksRUFBRSxXQUFXLENBQUMsQ0FBQztJQUNuQyxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNILGFBQWEsQ0FBQyxJQUFZLEVBQUUsV0FBc0IsSUFBSTtRQUNwRCxJQUFJLEVBQUUsR0FBRyxRQUFRLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQztRQUU5QyxJQUFJLEVBQUUsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLEVBQUU7WUFDaEIsRUFBRSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsQ0FBQztTQUN4QjtJQUNILENBQUM7SUFFRDs7Ozs7T0FLRztJQUNILGlCQUFpQixDQUNmLFNBQWUsRUFDZixlQUlRLEVBQ1IsY0FBNkQ7UUFFN0QsT0FBTyxJQUFJLFdBQVcsQ0FBQyxTQUFTLEVBQUUsZUFBZSxFQUFFLGNBQWMsQ0FBQyxDQUFDO0lBQ3JFLENBQUM7SUFFRDs7Ozs7T0FLRztJQUNILGVBQWUsQ0FBQyxXQUFtQixFQUFFLEdBQU8sRUFBRSxXQUFzQixJQUFJO1FBQ3RFLElBQUksRUFBRSxHQUFHLFFBQVEsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDO1FBQzlDLEVBQUUsQ0FBQyxHQUFHLENBQUMsV0FBVyxDQUFDLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ3RDLENBQUM7SUFFRDs7OztPQUlHO0lBQ0gsZUFBZSxDQUFDLFdBQW1CLEVBQUUsV0FBc0IsSUFBSTtRQUM3RCxJQUFJLEVBQUUsR0FBRyxRQUFRLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQztRQUM5QyxFQUFFLENBQUMsR0FBRyxDQUFDLFdBQVcsQ0FBQyxFQUFFLFNBQVMsQ0FBQyxFQUFFLE9BQU8sRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO0lBQ3BELENBQUM7SUFFRDs7O09BR0c7SUFDSCxJQUFJLEVBQUU7UUFDSixPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDO0lBQ2pDLENBQUM7MkVBbEltQixpQkFBaUI7NkRBQWpCLGlCQUFpQjs7dUZBQWpCLGlCQUFpQjtjQUh0QyxTQUFTO2VBQUM7Z0JBQ1QsUUFBUSxFQUFFLEVBQUU7YUFDYjtzQ0FFVSxTQUFTO2tCQUFqQixLQUFLO1lBQ0csYUFBYTtrQkFBckIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbIi8qXHJcbjxmaWxlPlxyXG4gIFByb2plY3Q6XHJcbiAgICBAb3Nvdml0bnkvYW5hdG9seVxyXG5cclxuICBBdXRob3JzOlxyXG4gICAgVmFkaW0gT3Nvdml0bnkgdmFkaW1Ab3Nvdml0bnkuY29tXHJcbiAgICBBbmF0b2x5IE9zb3ZpdG55IGFuYXRvbHlAb3Nvdml0bnkuY29tXHJcblxyXG4gIENyZWF0ZWQ6XHJcbiAgICAyMCBOb3YgMjAxN1xyXG5cclxuICBDb3B5cmlnaHQgKGMpIDIwMTYtMjAyMiBPc292aXRueSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXHJcbjwvZmlsZT5cclxuKi9cclxuXHJcbi8vTm9kZVxyXG5pbXBvcnQgeyBDb21wb25lbnQsIElucHV0IH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuaW1wb3J0IHsgRm9ybUdyb3VwLCBBYnN0cmFjdENvbnRyb2wsIEZvcm1Db250cm9sLCBWYWxpZGF0b3JGbiwgQWJzdHJhY3RDb250cm9sT3B0aW9ucywgQXN5bmNWYWxpZGF0b3JGbiB9IGZyb20gXCJAYW5ndWxhci9mb3Jtc1wiO1xyXG5cclxuLy9BcHBcclxuaW1wb3J0IHsgQ29tcG9uZW50QmFzZSB9IGZyb20gXCIuL2NvbXBvbmVudFwiO1xyXG5pbXBvcnQgeyBVdGlscyB9IGZyb20gXCIuLi8uLi8uLi9jb3JlXCI7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICB0ZW1wbGF0ZTogJydcclxufSlcclxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEVkaXRDb21wb25lbnRCYXNlIGV4dGVuZHMgQ29tcG9uZW50QmFzZSB7XHJcbiAgQElucHV0KCkgZm9ybUdyb3VwOiBGb3JtR3JvdXA7XHJcbiAgQElucHV0KCkgZm9ybVN1Ym1pdHRlZDogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuICBjb25zdHJ1Y3RvcigpIHtcclxuICAgIHN1cGVyKCk7XHJcbiAgfVxyXG5cclxuICBpc0FjdGlvbkFkZGluZygpIHtcclxuICAgIHJldHVybiAhVXRpbHMuaWRFeGlzdHNJblFTKCk7XHJcbiAgfVxyXG5cclxuICBpc0NvbnRyb2xWYWxpZChuYW1lOiBzdHJpbmcsIGZybUdyb3VwOiBGb3JtR3JvdXAgPSBudWxsKSB7XHJcbiAgICByZXR1cm4gIXRoaXMuaXNDb250cm9sSW52YWxpZChuYW1lLCBmcm1Hcm91cCk7XHJcbiAgfVxyXG5cclxuICBpc0NvbnRyb2xJbnZhbGlkKG5hbWU6IHN0cmluZywgZnJtR3JvdXA6IEZvcm1Hcm91cCA9IG51bGwpIHtcclxuICAgIGlmICh0eXBlb2YgbmFtZSA9PT0gXCJ1bmRlZmluZWRcIiB8fCBuYW1lID09IFwiXCIpIHtcclxuICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgfVxyXG5cclxuICAgIGxldCBmZyA9IGZybUdyb3VwID8gZnJtR3JvdXAgOiB0aGlzLmZvcm1Hcm91cDtcclxuICAgIGlmICghZmcpIHtcclxuICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgfVxyXG5cclxuICAgIGlmIChmZy5nZXQobmFtZSkpIHtcclxuICAgICAgcmV0dXJuIChcclxuICAgICAgICAodGhpcy5mb3JtU3VibWl0dGVkICYmIGZnLmdldChuYW1lKS5pbnZhbGlkKSB8fFxyXG4gICAgICAgIChmZy5nZXQobmFtZSkudG91Y2hlZCAmJiBmZy5nZXQobmFtZSkuaW52YWxpZClcclxuICAgICAgKTtcclxuICAgIH1cclxuXHJcbiAgICByZXR1cm4gZmFsc2U7XHJcbiAgfVxyXG5cclxuICAvL0Zvcm1Hcm91cCBmdW5jdGlvbnNcclxuICBnZXRGb3JtVmFsdWUobmFtZSwgZnJtR3JvdXA6IEZvcm1Hcm91cCA9IG51bGwpIHtcclxuICAgIGxldCBmZyA9IGZybUdyb3VwID8gZnJtR3JvdXAgOiB0aGlzLmZvcm1Hcm91cDtcclxuICAgIHJldHVybiBmZy5jb250cm9sc1tuYW1lXS52YWx1ZTtcclxuICB9XHJcblxyXG4gIHNldEZvcm1WYWx1ZShuYW1lLCB2YWx1ZSwgZnJtR3JvdXA6IEZvcm1Hcm91cCA9IG51bGwpIHtcclxuICAgIGxldCBmZyA9IGZybUdyb3VwID8gZnJtR3JvdXAgOiB0aGlzLmZvcm1Hcm91cDtcclxuICAgIGZnLmNvbnRyb2xzW25hbWVdLnNldFZhbHVlKHZhbHVlKTtcclxuICB9XHJcblxyXG4gIGdldEZvcm1Hcm91cFZhbHVlKGdyb3VwTmFtZSwgbmFtZSwgZnJtR3JvdXA6IEZvcm1Hcm91cCA9IG51bGwpIHtcclxuICAgIGxldCBmZyA9IGZybUdyb3VwID8gZnJtR3JvdXAgOiB0aGlzLmZvcm1Hcm91cDtcclxuICAgIHJldHVybiBmZy5jb250cm9sc1tncm91cE5hbWVdLmdldChuYW1lKS52YWx1ZTtcclxuICB9XHJcblxyXG4gIHNldEZvcm1Hcm91cFZhbHVlKGdyb3VwTmFtZSwgbmFtZSwgdmFsdWUsIGZybUdyb3VwOiBGb3JtR3JvdXAgPSBudWxsKSB7XHJcbiAgICBsZXQgZmcgPSBmcm1Hcm91cCA/IGZybUdyb3VwIDogdGhpcy5mb3JtR3JvdXA7XHJcbiAgICBmZy5jb250cm9sc1tncm91cE5hbWVdLmdldChuYW1lKS5zZXRWYWx1ZSh2YWx1ZSk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBBZGQgY29udHJvbCB0byBmb3JtIGdyb3VwXHJcbiAgICogQHBhcmFtIG5hbWVcclxuICAgKiBAcGFyYW0gZm9ybUNvbnRyb2xcclxuICAgKiBAcGFyYW0gZnJtR3JvdXBcclxuICAgKi9cclxuICBhZGRDb250cm9sKFxyXG4gICAgbmFtZTogc3RyaW5nLFxyXG4gICAgZm9ybUNvbnRyb2w6IEFic3RyYWN0Q29udHJvbCxcclxuICAgIGZybUdyb3VwOiBGb3JtR3JvdXAgPSBudWxsXHJcbiAgKSB7XHJcbiAgICBsZXQgZmcgPSBmcm1Hcm91cCA/IGZybUdyb3VwIDogdGhpcy5mb3JtR3JvdXA7XHJcbiAgICBmZy5hZGRDb250cm9sKG5hbWUsIGZvcm1Db250cm9sKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFJlbW92ZXMgY29udHJvbCBmcm9tIGZvcm0gZ3JvdXBcclxuICAgKiBAcGFyYW0gbmFtZVxyXG4gICAqIEBwYXJhbSBmcm1Hcm91cFxyXG4gICAqL1xyXG4gIHJlbW92ZUNvbnRyb2wobmFtZTogc3RyaW5nLCBmcm1Hcm91cDogRm9ybUdyb3VwID0gbnVsbCkge1xyXG4gICAgbGV0IGZnID0gZnJtR3JvdXAgPyBmcm1Hcm91cCA6IHRoaXMuZm9ybUdyb3VwO1xyXG5cclxuICAgIGlmIChmZy5nZXQobmFtZSkpIHtcclxuICAgICAgZmcucmVtb3ZlQ29udHJvbChuYW1lKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIHJldHVybiBuZXcgZm9ybSBjb250cm9sXHJcbiAgICogQHBhcmFtIGZvcm1TdGF0ZVxyXG4gICAqIEBwYXJhbSB2YWxpZGF0b3JPck9wdHNcclxuICAgKiBAcGFyYW0gYXN5bmNWYWxpZGF0b3JcclxuICAgKi9cclxuICBjcmVhdGVGb3JtQ29udHJvbChcclxuICAgIGZvcm1TdGF0ZT86IGFueSxcclxuICAgIHZhbGlkYXRvck9yT3B0cz86XHJcbiAgICAgIHwgVmFsaWRhdG9yRm5cclxuICAgICAgfCBWYWxpZGF0b3JGbltdXHJcbiAgICAgIHwgQWJzdHJhY3RDb250cm9sT3B0aW9uc1xyXG4gICAgICB8IG51bGwsXHJcbiAgICBhc3luY1ZhbGlkYXRvcj86IEFzeW5jVmFsaWRhdG9yRm4gfCBBc3luY1ZhbGlkYXRvckZuW10gfCBudWxsXHJcbiAgKSB7XHJcbiAgICByZXR1cm4gbmV3IEZvcm1Db250cm9sKGZvcm1TdGF0ZSwgdmFsaWRhdG9yT3JPcHRzLCBhc3luY1ZhbGlkYXRvcik7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBTZXQgZXJyb3IgdG8gY29udHJvbFxyXG4gICAqIEBwYXJhbSBjb250cm9sTmFtZSBmb3JtQ29udHJvbCBuYW1lXHJcbiAgICogQHBhcmFtIGVyciBlcnJvciBleHBlY3Qge2Vycm9uYW1lOiBib29sZWFufSBmb3JtYXRcclxuICAgKiBAcGFyYW0gZnJtR3JvdXBcclxuICAgKi9cclxuICBzZXRDb250cm9sRXJyb3IoY29udHJvbE5hbWU6IHN0cmluZywgZXJyOiB7fSwgZnJtR3JvdXA6IEZvcm1Hcm91cCA9IG51bGwpIHtcclxuICAgIGxldCBmZyA9IGZybUdyb3VwID8gZnJtR3JvdXAgOiB0aGlzLmZvcm1Hcm91cDtcclxuICAgIGZnLmdldChjb250cm9sTmFtZSk/LnNldEVycm9ycyhlcnIpO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogU2V0IHtpbnZhbGlkOiB0cnVlfSBmb3IgdGhlIHNwZWNpZmllZCBmb3JtXHJcbiAgICogQHBhcmFtIGNvbnRyb2xOYW1lIGZvcm0gY29udHJvbCBuYW1lXHJcbiAgICogQHBhcmFtIGZybUdyb3VwXHJcbiAgICovXHJcbiAgc2V0SW5WYWxpZEVycm9yKGNvbnRyb2xOYW1lOiBzdHJpbmcsIGZybUdyb3VwOiBGb3JtR3JvdXAgPSBudWxsKSB7XHJcbiAgICBsZXQgZmcgPSBmcm1Hcm91cCA/IGZybUdyb3VwIDogdGhpcy5mb3JtR3JvdXA7XHJcbiAgICBmZy5nZXQoY29udHJvbE5hbWUpPy5zZXRFcnJvcnMoeyBpbnZhbGlkOiB0cnVlIH0pO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogcmV0dXJucyBmb3JtZ3JvdXAgY29udHJvbHMuXHJcbiAgICogbWFpbiB1c2UgY2FzZSBpcyB1c2VkIGluIGh0bWwgcGFnZXNcclxuICAgKi9cclxuICBnZXQgZmMoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5mb3JtR3JvdXAuY29udHJvbHM7XHJcbiAgfVxyXG59XHJcbiJdfQ==
@@ -1,31 +0,0 @@
1
- /*
2
- <file>
3
- Project:
4
- @osovitny/anatoly
5
-
6
- Authors:
7
- Vadim Osovitny vadim@osovitny.com
8
- Anatoly Osovitny anatoly@osovitny.com
9
-
10
- Created:
11
- 20 Aug 2022
12
-
13
- Copyright (c) 2016-2022 Osovitny Inc. All rights reserved.
14
- </file>
15
- */
16
- //Node
17
- import { Component } from "@angular/core";
18
- //App
19
- import { ComponentBase } from "./component";
20
- import * as i0 from "@angular/core";
21
- export class PageBase extends ComponentBase {
22
- static ɵfac = /*@__PURE__*/ function () { let ɵPageBase_BaseFactory; return function PageBase_Factory(t) { return (ɵPageBase_BaseFactory || (ɵPageBase_BaseFactory = i0.ɵɵgetInheritedFactory(PageBase)))(t || PageBase); }; }();
23
- 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 });
24
- }
25
- (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(PageBase, [{
26
- type: Component,
27
- args: [{
28
- template: ''
29
- }]
30
- }], null, null); })();
31
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuYXRvbHkvc3JjL2xpYi91aS9jb21wb25lbnRzL2Jhc2UvcGFnZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7Ozs7RUFjRTtBQUVGLE1BQU07QUFDTixPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTFDLEtBQUs7QUFDTCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sYUFBYSxDQUFDOztBQUs1QyxNQUFNLE9BQWdCLFFBQVMsU0FBUSxhQUFhO2tNQUE5QixRQUFRLFNBQVIsUUFBUTs2REFBUixRQUFROzt1RkFBUixRQUFRO2NBSDdCLFNBQVM7ZUFBQztnQkFDVCxRQUFRLEVBQUUsRUFBRTthQUNiIiwic291cmNlc0NvbnRlbnQiOlsiLypcclxuPGZpbGU+XHJcbiAgUHJvamVjdDpcclxuICAgIEBvc292aXRueS9hbmF0b2x5XHJcblxyXG4gIEF1dGhvcnM6XHJcbiAgICBWYWRpbSBPc292aXRueSB2YWRpbUBvc292aXRueS5jb21cclxuICAgIEFuYXRvbHkgT3Nvdml0bnkgYW5hdG9seUBvc292aXRueS5jb21cclxuXHJcbiAgQ3JlYXRlZDpcclxuICAgIDIwIEF1ZyAyMDIyXHJcblxyXG4gIENvcHlyaWdodCAoYykgMjAxNi0yMDIyIE9zb3ZpdG55IEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cclxuPC9maWxlPlxyXG4qL1xyXG5cclxuLy9Ob2RlXHJcbmltcG9ydCB7IENvbXBvbmVudCB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcblxyXG4vL0FwcFxyXG5pbXBvcnQgeyBDb21wb25lbnRCYXNlIH0gZnJvbSBcIi4vY29tcG9uZW50XCI7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICB0ZW1wbGF0ZTogJydcclxufSlcclxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIFBhZ2VCYXNlIGV4dGVuZHMgQ29tcG9uZW50QmFzZSB7XHJcbn1cclxuIl19
@@ -1,66 +0,0 @@
1
- /*
2
- <file>
3
- Project:
4
- @osovitny/anatoly
5
-
6
- Authors:
7
- Vadim Osovitny vadim@osovitny.com
8
- Anatoly Osovitny anatoly@osovitny.com
9
-
10
- Created:
11
- 20 Aug 2022
12
-
13
- Copyright (c) 2016-2022 Osovitny Inc. All rights reserved.
14
- </file>
15
- */
16
- //Node
17
- import { Component } from "@angular/core";
18
- //App
19
- import { PageBase } from "./page";
20
- import * as i0 from "@angular/core";
21
- export class PagedPageBase extends PageBase {
22
- currentFilter = null;
23
- //Items & Pagination
24
- items;
25
- totalItems = 0;
26
- pageSize = 10;
27
- skipItems = 0;
28
- currentPage = 1;
29
- loadPageOne() {
30
- this.skipItems = 0;
31
- this.currentPage = 1;
32
- this.loadPage();
33
- }
34
- reloadPage(drop2pageOne = false) {
35
- if (drop2pageOne) {
36
- this.loadPageOne();
37
- }
38
- else {
39
- this.loadPage();
40
- }
41
- }
42
- setFilter(filter) {
43
- this.currentFilter = filter;
44
- this.loadPageOne();
45
- }
46
- //Tos
47
- toIndex(index) {
48
- return ((this.currentPage - 1) * this.pageSize) + index + 1;
49
- }
50
- //Events
51
- onPageChange(e) {
52
- this.pageSize = e.take;
53
- this.skipItems = e.skip;
54
- this.currentPage = (this.skipItems / this.pageSize) + 1;
55
- this.loadPage();
56
- }
57
- static ɵfac = /*@__PURE__*/ function () { let ɵPagedPageBase_BaseFactory; return function PagedPageBase_Factory(t) { return (ɵPagedPageBase_BaseFactory || (ɵPagedPageBase_BaseFactory = i0.ɵɵgetInheritedFactory(PagedPageBase)))(t || PagedPageBase); }; }();
58
- 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 });
59
- }
60
- (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(PagedPageBase, [{
61
- type: Component,
62
- args: [{
63
- template: ''
64
- }]
65
- }], null, null); })();
66
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnZWQucGFnZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuYXRvbHkvc3JjL2xpYi91aS9jb21wb25lbnRzL2Jhc2UvcGFnZWQucGFnZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7Ozs7RUFjRTtBQUVGLE1BQU07QUFDTixPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTFDLEtBQUs7QUFDTCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sUUFBUSxDQUFDOztBQUtsQyxNQUFNLE9BQWdCLGFBQWMsU0FBUSxRQUFRO0lBQ2xELGFBQWEsR0FBRyxJQUFJLENBQUM7SUFFckIsb0JBQW9CO0lBQ3BCLEtBQUssQ0FBUTtJQUNiLFVBQVUsR0FBVyxDQUFDLENBQUM7SUFDdkIsUUFBUSxHQUFXLEVBQUUsQ0FBQztJQUN0QixTQUFTLEdBQVcsQ0FBQyxDQUFDO0lBQ3RCLFdBQVcsR0FBVyxDQUFDLENBQUM7SUFJakIsV0FBVztRQUNoQixJQUFJLENBQUMsU0FBUyxHQUFHLENBQUMsQ0FBQztRQUNuQixJQUFJLENBQUMsV0FBVyxHQUFHLENBQUMsQ0FBQztRQUNyQixJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDbEIsQ0FBQztJQUVNLFVBQVUsQ0FBQyxlQUF3QixLQUFLO1FBQzdDLElBQUksWUFBWSxFQUFFO1lBQ2hCLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztTQUNwQjthQUNJO1lBQ0gsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO1NBQ2pCO0lBQ0gsQ0FBQztJQUVNLFNBQVMsQ0FBQyxNQUFXO1FBQzFCLElBQUksQ0FBQyxhQUFhLEdBQUcsTUFBTSxDQUFDO1FBQzVCLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUNyQixDQUFDO0lBRUQsS0FBSztJQUNMLE9BQU8sQ0FBQyxLQUFLO1FBQ1gsT0FBTyxDQUFDLENBQUMsSUFBSSxDQUFDLFdBQVcsR0FBRyxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsS0FBSyxHQUFHLENBQUMsQ0FBQztJQUM5RCxDQUFDO0lBRUQsUUFBUTtJQUNSLFlBQVksQ0FBQyxDQUFNO1FBQ2pCLElBQUksQ0FBQyxRQUFRLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQztRQUN2QixJQUFJLENBQUMsU0FBUyxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUM7UUFDeEIsSUFBSSxDQUFDLFdBQVcsR0FBRyxDQUFDLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUV4RCxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDbEIsQ0FBQztzTkE1Q21CLGFBQWEsU0FBYixhQUFhOzZEQUFiLGFBQWE7O3VGQUFiLGFBQWE7Y0FIbEMsU0FBUztlQUFDO2dCQUNULFFBQVEsRUFBRSxFQUFFO2FBQ2IiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxyXG48ZmlsZT5cclxuICBQcm9qZWN0OlxyXG4gICAgQG9zb3ZpdG55L2FuYXRvbHlcclxuXHJcbiAgQXV0aG9yczpcclxuICAgIFZhZGltIE9zb3ZpdG55IHZhZGltQG9zb3ZpdG55LmNvbVxyXG4gICAgQW5hdG9seSBPc292aXRueSBhbmF0b2x5QG9zb3ZpdG55LmNvbVxyXG5cclxuICBDcmVhdGVkOlxyXG4gICAgMjAgQXVnIDIwMjJcclxuXHJcbiAgQ29weXJpZ2h0IChjKSAyMDE2LTIwMjIgT3Nvdml0bnkgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLlxyXG48L2ZpbGU+XHJcbiovXHJcblxyXG4vL05vZGVcclxuaW1wb3J0IHsgQ29tcG9uZW50IH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuXHJcbi8vQXBwXHJcbmltcG9ydCB7IFBhZ2VCYXNlIH0gZnJvbSBcIi4vcGFnZVwiO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgdGVtcGxhdGU6ICcnXHJcbn0pXHJcbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBQYWdlZFBhZ2VCYXNlIGV4dGVuZHMgUGFnZUJhc2Uge1xyXG4gIGN1cnJlbnRGaWx0ZXIgPSBudWxsO1xyXG5cclxuICAvL0l0ZW1zICYgUGFnaW5hdGlvblxyXG4gIGl0ZW1zOiBhbnlbXTtcclxuICB0b3RhbEl0ZW1zOiBudW1iZXIgPSAwO1xyXG4gIHBhZ2VTaXplOiBudW1iZXIgPSAxMDtcclxuICBza2lwSXRlbXM6IG51bWJlciA9IDA7XHJcbiAgY3VycmVudFBhZ2U6IG51bWJlciA9IDE7XHJcblxyXG4gIHB1YmxpYyBsb2FkUGFnZT8ocGFnZT86IG51bWJlcikgOiB2b2lkO1xyXG5cclxuICBwdWJsaWMgbG9hZFBhZ2VPbmUoKSB7XHJcbiAgICB0aGlzLnNraXBJdGVtcyA9IDA7XHJcbiAgICB0aGlzLmN1cnJlbnRQYWdlID0gMTtcclxuICAgIHRoaXMubG9hZFBhZ2UoKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyByZWxvYWRQYWdlKGRyb3AycGFnZU9uZTogYm9vbGVhbiA9IGZhbHNlKSB7XHJcbiAgICBpZiAoZHJvcDJwYWdlT25lKSB7XHJcbiAgICAgIHRoaXMubG9hZFBhZ2VPbmUoKTtcclxuICAgIH1cclxuICAgIGVsc2Uge1xyXG4gICAgICB0aGlzLmxvYWRQYWdlKCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgc2V0RmlsdGVyKGZpbHRlcjogYW55KSB7XHJcbiAgICB0aGlzLmN1cnJlbnRGaWx0ZXIgPSBmaWx0ZXI7XHJcbiAgICB0aGlzLmxvYWRQYWdlT25lKCk7XHJcbiAgfVxyXG5cclxuICAvL1Rvc1xyXG4gIHRvSW5kZXgoaW5kZXgpIHtcclxuICAgIHJldHVybiAoKHRoaXMuY3VycmVudFBhZ2UgLSAxKSAqIHRoaXMucGFnZVNpemUpICsgaW5kZXggKyAxO1xyXG4gIH1cclxuXHJcbiAgLy9FdmVudHNcclxuICBvblBhZ2VDaGFuZ2UoZTogYW55KSB7XHJcbiAgICB0aGlzLnBhZ2VTaXplID0gZS50YWtlO1xyXG4gICAgdGhpcy5za2lwSXRlbXMgPSBlLnNraXA7XHJcbiAgICB0aGlzLmN1cnJlbnRQYWdlID0gKHRoaXMuc2tpcEl0ZW1zIC8gdGhpcy5wYWdlU2l6ZSkgKyAxO1xyXG5cclxuICAgIHRoaXMubG9hZFBhZ2UoKTtcclxuICB9XHJcbn1cclxuIl19