@lenne.tech/ng-base 0.3.1 → 0.3.5

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 (36) hide show
  1. package/bundles/lenne.tech-ng-base-src-lib-base.umd.js +568 -444
  2. package/bundles/lenne.tech-ng-base-src-lib-base.umd.js.map +1 -1
  3. package/bundles/lenne.tech-ng-base.umd.js +568 -444
  4. package/bundles/lenne.tech-ng-base.umd.js.map +1 -1
  5. package/esm2015/lib/base/classes/helper.class.js +19 -1
  6. package/esm2015/lib/base/directives/match-height.directive.js +50 -29
  7. package/esm2015/lib/base/factories/apollo-options.factory.js +3 -2
  8. package/esm2015/lib/base/public-api.js +2 -1
  9. package/esm2015/lib/base/services/image.service.js +99 -0
  10. package/esm2015/lib/base/services/scroll.service.js +16 -112
  11. package/esm2015/lib/base/services/seo.service.js +70 -14
  12. package/esm2015/src/lib/base/classes/helper.class.js +19 -1
  13. package/esm2015/src/lib/base/directives/match-height.directive.js +50 -29
  14. package/esm2015/src/lib/base/factories/apollo-options.factory.js +3 -2
  15. package/esm2015/src/lib/base/public-api.js +2 -1
  16. package/esm2015/src/lib/base/services/image.service.js +99 -0
  17. package/esm2015/src/lib/base/services/scroll.service.js +16 -112
  18. package/esm2015/src/lib/base/services/seo.service.js +70 -14
  19. package/fesm2015/lenne.tech-ng-base-src-lib-base.js +493 -402
  20. package/fesm2015/lenne.tech-ng-base-src-lib-base.js.map +1 -1
  21. package/fesm2015/lenne.tech-ng-base.js +493 -402
  22. package/fesm2015/lenne.tech-ng-base.js.map +1 -1
  23. package/lib/base/classes/helper.class.d.ts +7 -0
  24. package/lib/base/directives/match-height.directive.d.ts +10 -6
  25. package/lib/base/public-api.d.ts +1 -0
  26. package/lib/base/services/image.service.d.ts +24 -0
  27. package/lib/base/services/scroll.service.d.ts +6 -23
  28. package/lib/base/services/seo.service.d.ts +36 -3
  29. package/package.json +1 -1
  30. package/src/lib/base/classes/helper.class.d.ts +7 -0
  31. package/src/lib/base/directives/match-height.directive.d.ts +10 -6
  32. package/src/lib/base/lenne.tech-ng-base-src-lib-base.metadata.json +1 -1
  33. package/src/lib/base/public-api.d.ts +1 -0
  34. package/src/lib/base/services/image.service.d.ts +24 -0
  35. package/src/lib/base/services/scroll.service.d.ts +6 -23
  36. package/src/lib/base/services/seo.service.d.ts +36 -3
@@ -88,4 +88,11 @@ export declare class Helper {
88
88
  * @returns Record<string, any> Object with properties from first object
89
89
  */
90
90
  static getDiff(a: Record<string, any>, b: Record<string, any>, clone?: boolean): {};
91
+ /**
92
+ * Check if propertie is type of HTMLCollection or NodeList
93
+ * See https://stackoverflow.com/a/7238344
94
+ *
95
+ * @param nodes
96
+ */
97
+ static isNodeList(nodes: any): boolean;
91
98
  }
@@ -1,12 +1,16 @@
1
- import { AfterViewChecked, ElementRef } from '@angular/core';
1
+ import { ElementRef, OnInit } from '@angular/core';
2
+ import { ImageService } from '../services/image.service';
2
3
  /**
3
4
  * Set same height (maximum) to different elements
4
5
  */
5
- export declare class MatchHeightDirective implements AfterViewChecked {
6
- private el;
6
+ export declare class MatchHeightDirective implements OnInit {
7
+ protected el: ElementRef;
8
+ protected imageService: ImageService;
7
9
  ltMatchHeight: string | string[];
8
- constructor(el: ElementRef);
10
+ loadImages: boolean;
11
+ readonly isBrowser: boolean;
12
+ constructor(el: ElementRef, imageService: ImageService, platformId: string);
9
13
  onResize(): void;
10
- ngAfterViewChecked(): void;
11
- matchHeight(parent: HTMLElement, target: string | string[]): void;
14
+ ngOnInit(): void;
15
+ matchHeight(parent: HTMLElement, target: string | string[]): Promise<void>;
12
16
  }
@@ -39,6 +39,7 @@ export * from './services/fullscreen.service';
39
39
  export * from './services/graphql.service';
40
40
  export * from './services/graphql-meta.service';
41
41
  export * from './services/graphql-plus.service';
42
+ export * from './services/image.service';
42
43
  export * from './services/loader.service';
43
44
  export * from './services/scroll.service';
44
45
  export * from './services/seo.service';
@@ -0,0 +1,24 @@
1
+ /**
2
+ * Image service
3
+ */
4
+ export declare class ImageService {
5
+ /**
6
+ * Preaload images (for lazy handling)
7
+ *
8
+ * @param options
9
+ * @protected
10
+ */
11
+ preLoadImages(options?: {
12
+ doneFunction?: () => Promise<any> | any | void;
13
+ elements?: Element | Element[] | HTMLCollectionOf<Element> | Node | NodeList | Document | HTMLElement | HTMLElement[];
14
+ regExp?: RegExp;
15
+ }): Promise<any>;
16
+ /**
17
+ * Load image for image element
18
+ *
19
+ * @param imageElement
20
+ * @param src
21
+ * @protected
22
+ */
23
+ loadImage(imageElement: HTMLImageElement, src?: string): Promise<unknown>;
24
+ }
@@ -1,11 +1,13 @@
1
1
  import { Router } from '@angular/router';
2
2
  import { BaseModuleConfig } from '../interfaces/base-module-config.interface';
3
+ import { ImageService } from './image.service';
3
4
  /**
4
5
  * Scroll service for autoscroll to specific fragments
5
6
  */
6
7
  export declare class ScrollService {
7
- private router;
8
- private moduleConfig;
8
+ protected router: Router;
9
+ protected moduleConfig: BaseModuleConfig;
10
+ protected imageService: ImageService;
9
11
  /**
10
12
  * Current scroll promise
11
13
  *
@@ -46,7 +48,7 @@ export declare class ScrollService {
46
48
  /**
47
49
  * Initializer
48
50
  */
49
- constructor(router: Router, moduleConfig: BaseModuleConfig);
51
+ constructor(router: Router, moduleConfig: BaseModuleConfig, imageService: ImageService);
50
52
  /**
51
53
  * Scroll to structureElement with specific ID
52
54
  */
@@ -69,8 +71,7 @@ export declare class ScrollService {
69
71
  * Scroll done promise
70
72
  */
71
73
  scrollDone(options?: {
72
- doneFunction?: () => Promise<any> | any | void;
73
- timeout?: number;
74
+ doneFunction?: () => any | void;
74
75
  }): Promise<any>;
75
76
  /**
76
77
  * Scroll done detecton
@@ -78,22 +79,4 @@ export declare class ScrollService {
78
79
  * @protected
79
80
  */
80
81
  protected scrollDoneDetection(): Promise<void>;
81
- /**
82
- * Preaload images (for lazy handling)
83
- *
84
- * @param options
85
- * @protected
86
- */
87
- protected preLoadImages(options?: {
88
- doneFunction?: () => Promise<any> | any | void;
89
- timeout?: number;
90
- }): Promise<any>;
91
- /**
92
- * Load image for image element
93
- *
94
- * @param imageElement
95
- * @param src
96
- * @protected
97
- */
98
- protected loadImage(imageElement: HTMLImageElement, src?: string): Promise<unknown>;
99
82
  }
@@ -1,4 +1,11 @@
1
1
  import { Meta, Title } from '@angular/platform-browser';
2
+ interface SEOData {
3
+ title: string;
4
+ description: string;
5
+ image?: string;
6
+ url?: string;
7
+ keywords?: string;
8
+ }
2
9
  /**
3
10
  * SEO service for setting HTML meta data
4
11
  */
@@ -6,8 +13,34 @@ export declare class SEOService {
6
13
  private titleService;
7
14
  private metaTagService;
8
15
  constructor(titleService: Title, metaTagService: Meta);
9
- initPageForSEO(title: string, description: string, keywords?: string): void;
10
- private setPageTitle;
11
- private setPageDescription;
16
+ initPageForSEO(input: SEOData): void;
17
+ /**
18
+ * Set general metadata
19
+ *
20
+ * @param data
21
+ * @private
22
+ */
23
+ private setGeneralData;
24
+ /**
25
+ * Set metadata for twitter
26
+ *
27
+ * @param data
28
+ * @private
29
+ */
30
+ private setTwitterData;
31
+ /**
32
+ * Set metadata for facebook
33
+ *
34
+ * @param data
35
+ * @private
36
+ */
37
+ private setFacebookData;
38
+ /**
39
+ * Set page keywords
40
+ *
41
+ * @param keywords
42
+ * @private
43
+ */
12
44
  private setPageKeywords;
13
45
  }
46
+ export {};
package/package.json CHANGED
@@ -10,7 +10,7 @@
10
10
  "angular-library",
11
11
  "angular11+"
12
12
  ],
13
- "version": "0.3.1",
13
+ "version": "0.3.5",
14
14
  "author": "lenne.Tech <info@lenne.tech> (https://lenne.tech)",
15
15
  "homepage": "https://github.com/lenneTech/ng-base",
16
16
  "license": "MIT",
@@ -88,4 +88,11 @@ export declare class Helper {
88
88
  * @returns Record<string, any> Object with properties from first object
89
89
  */
90
90
  static getDiff(a: Record<string, any>, b: Record<string, any>, clone?: boolean): {};
91
+ /**
92
+ * Check if propertie is type of HTMLCollection or NodeList
93
+ * See https://stackoverflow.com/a/7238344
94
+ *
95
+ * @param nodes
96
+ */
97
+ static isNodeList(nodes: any): boolean;
91
98
  }
@@ -1,12 +1,16 @@
1
- import { AfterViewChecked, ElementRef } from '@angular/core';
1
+ import { ElementRef, OnInit } from '@angular/core';
2
+ import { ImageService } from '../services/image.service';
2
3
  /**
3
4
  * Set same height (maximum) to different elements
4
5
  */
5
- export declare class MatchHeightDirective implements AfterViewChecked {
6
- private el;
6
+ export declare class MatchHeightDirective implements OnInit {
7
+ protected el: ElementRef;
8
+ protected imageService: ImageService;
7
9
  ltMatchHeight: string | string[];
8
- constructor(el: ElementRef);
10
+ loadImages: boolean;
11
+ readonly isBrowser: boolean;
12
+ constructor(el: ElementRef, imageService: ImageService, platformId: string);
9
13
  onResize(): void;
10
- ngAfterViewChecked(): void;
11
- matchHeight(parent: HTMLElement, target: string | string[]): void;
14
+ ngOnInit(): void;
15
+ matchHeight(parent: HTMLElement, target: string | string[]): Promise<void>;
12
16
  }
@@ -1 +1 @@
1
- {"__symbolic":"module","version":4,"metadata":{"BaseModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule","line":29,"character":1},"arguments":[{"declarations":[{"__symbolic":"reference","name":"ContextMenuDirective"},{"__symbolic":"reference","name":"LazyLoadDirective"},{"__symbolic":"reference","name":"MatchHeightDirective"},{"__symbolic":"reference","name":"ResizableDirective"},{"__symbolic":"reference","name":"EllipsesPipe"},{"__symbolic":"reference","name":"SafeHtmlPipe"}],"exports":[{"__symbolic":"reference","name":"ContextMenuDirective"},{"__symbolic":"reference","name":"LazyLoadDirective"},{"__symbolic":"reference","name":"MatchHeightDirective"},{"__symbolic":"reference","name":"ResizableDirective"},{"__symbolic":"reference","name":"EllipsesPipe"},{"__symbolic":"reference","name":"SafeHtmlPipe"}]}]}],"members":{}},"BasicUser":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"Standard"},"members":{"map":[{"__symbolic":"method"}],"hasRole":[{"__symbolic":"method"}],"hasAllRoles":[{"__symbolic":"method"}]}},"GraphQLEnum":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[null]}]}},"GraphQLMeta":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"graphql","name":"GraphQLSchema","line":19,"character":32}]}],"getArgs":[{"__symbolic":"method"}],"getFields":[{"__symbolic":"method"}],"getFunction":[{"__symbolic":"method"}],"getType":[{"__symbolic":"method"}],"getDeepType":[{"__symbolic":"method"}]}},"GraphQLType":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"Standard"},"members":{}},"Helper":{"__symbolic":"class","members":{},"statics":{"filter":{"__symbolic":"function","parameters":["objects","filter"],"value":{"__symbolic":"binop","operator":"||","left":{"__symbolic":"call","expression":{"__symbolic":"select","expression":{"__symbolic":"reference","name":"objects"},"member":"filter"},"arguments":[{"__symbolic":"error","message":"Lambda not supported","line":10,"character":28,"module":"./classes/helper.class"}]},"right":[]}},"isEqual":{"__symbolic":"function","parameters":["a","b"],"value":{"__symbolic":"binop","operator":"&&","left":{"__symbolic":"call","expression":{"__symbolic":"select","expression":{"__symbolic":"reference","name":"Helper"},"member":"isSubset"},"arguments":[{"__symbolic":"reference","name":"a"},{"__symbolic":"reference","name":"b"}]},"right":{"__symbolic":"call","expression":{"__symbolic":"select","expression":{"__symbolic":"reference","name":"Helper"},"member":"isSubset"},"arguments":[{"__symbolic":"reference","name":"b"},{"__symbolic":"reference","name":"a"}]}}}}},"Standard":{"__symbolic":"class","members":{"map":[{"__symbolic":"method"}],"clone":[{"__symbolic":"method"}],"getDiff":[{"__symbolic":"method"}]},"statics":{"map":{"__symbolic":"function","parameters":["this","data","item"],"defaults":[null,null,{"__symbolic":"error","message":"Expression form not supported","line":14,"character":18,"module":"./classes/standard.class"}],"value":{"__symbolic":"call","expression":{"__symbolic":"select","expression":{"__symbolic":"reference","name":"item"},"member":"map"},"arguments":[{"__symbolic":"reference","name":"data"}]}}}},"ContextMenuDirective":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive","line":6,"character":1},"arguments":[{"selector":"[ltContextMenu]","exportAs":"contextMenuData"}]}],"members":{"contextMenuData":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":11,"character":3}}]}],"ltContextMenu":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":12,"character":3}}]}],"xGap":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":13,"character":3}}]}],"yGap":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":14,"character":3}}]}],"overflowSpace":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":15,"character":3}}]}],"selectors":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":16,"character":3}}]}],"clickedElement":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":17,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/core","name":"ElementRef","line":20,"character":26}]}],"ngOnInit":[{"__symbolic":"method"}],"showContextMenu":[{"__symbolic":"method"}]}},"LazyLoadDirective":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive","line":5,"character":1},"arguments":[{"selector":"img[ltLazyLoad]"}]}],"members":{"srcAttr":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding","line":9,"character":3},"arguments":["attr.src"]}]}],"src":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":10,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/core","name":"ElementRef","line":12,"character":26}]}],"ngAfterViewInit":[{"__symbolic":"method"}],"canLazyLoad":[{"__symbolic":"method"}],"lazyLoadImage":[{"__symbolic":"method"}],"loadImage":[{"__symbolic":"method"}]}},"MatchHeightDirective":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive","line":5,"character":1},"arguments":[{"selector":"[ltMatchHeight]"}]}],"members":{"ltMatchHeight":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":10,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/core","name":"ElementRef","line":13,"character":26}]}],"onResize":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostListener","line":15,"character":3},"arguments":["window:resize"]}]}],"ngAfterViewChecked":[{"__symbolic":"method"}],"matchHeight":[{"__symbolic":"method"}]}},"ResizableDirective":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive","line":6,"character":1},"arguments":[{"selector":"[ltResizable]"}]}],"members":{"resizableGrabWidth":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":10,"character":3}}]}],"resizableMinWidth":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":11,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/core","name":"ElementRef","line":15,"character":26}]}],"ngOnInit":[{"__symbolic":"method"}],"mouseMoveG":[{"__symbolic":"method"}],"newWidth":[{"__symbolic":"method"}],"mouseDown":[{"__symbolic":"method"}],"restoreGlobalMouseEvents":[{"__symbolic":"method"}],"mouseUpG":[{"__symbolic":"method"}],"mouseMove":[{"__symbolic":"method"}],"preventGlobalMouseEvents":[{"__symbolic":"method"}],"inDragRegion":[{"__symbolic":"method"}],"addListenerToDocument":[{"__symbolic":"method"}],"addListenerToElement":[{"__symbolic":"method"}]}},"apolloOptionsFactory":{"__symbolic":"function"},"AuthGuard":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":9,"character":1}}],"members":{"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[null,null,[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":18,"character":5},"arguments":[{"__symbolic":"reference","name":"BASE_MODULE_CONFIG"}]}]],"parameters":[{"__symbolic":"reference","module":"@angular/router","name":"Router","line":16,"character":20},{"__symbolic":"reference","name":"AuthService"},{"__symbolic":"reference","name":"BaseModuleConfig"}]}],"canActivate":[{"__symbolic":"method"}],"canActivateChild":[{"__symbolic":"method"}]}},"CanDeactivateGuard":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":7,"character":1}}],"members":{"canDeactivate":[{"__symbolic":"method"}]}},"LogoutGuard":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":8,"character":1}}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/router","name":"Router","line":10,"character":30},{"__symbolic":"reference","name":"AuthService"}]}],"canActivate":[{"__symbolic":"method"}],"canActivateChild":[{"__symbolic":"method"}]}},"ComparisonOperatorEnum":{"EQ":"EQ","GT":"GT","GTE":"GTE","IN":"IN","LT":"LT","LTE":"LTE","NE":"NE","NIN":"NIN","REGEX":"REGEX"},"GraphQLRequestType":{"QUERY":"query","MUTATION":"mutation","SUBSCRIPTION":"subscription"},"LogicalOperatorEnum":{"AND":"AND","NOR":"NOR","OR":"OR"},"SortOrderEnum":{"ASC":"ASC","DESC":"DESC"},"BaseModuleConfig":{"__symbolic":"interface"},"BASE_MODULE_CONFIG":{"__symbolic":"new","expression":{"__symbolic":"reference","module":"@angular/core","name":"InjectionToken","line":67,"character":38},"arguments":["BASE_MODULE_CONFIG"]},"ICanComponentDeactivate":{"__symbolic":"interface"},"CombinedFilterInput":{"__symbolic":"interface"},"IFields":{"__symbolic":"interface"},"IFieldObject":{"__symbolic":"interface"},"FilterInput":{"__symbolic":"interface"},"IGraphQLOptions":{"__symbolic":"interface"},"IGraphQLPlusOptions":{"__symbolic":"interface"},"IGraphQLTypeCollection":{"__symbolic":"interface"},"SingleFilterInput":{"__symbolic":"interface"},"SortInput":{"__symbolic":"interface"},"FindArgs":{"__symbolic":"interface"},"EllipsesPipe":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Pipe","line":5,"character":1},"arguments":[{"name":"ltEllipses"}]}],"members":{"transform":[{"__symbolic":"method"}]}},"SafeHtmlPipe":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Pipe","line":6,"character":1},"arguments":[{"name":"ltSafeHtml"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/platform-browser","name":"DomSanitizer","line":8,"character":33}]}],"transform":[{"__symbolic":"method"}]}},"AuthService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":9,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":21,"character":15},"arguments":[{"__symbolic":"reference","name":"BASE_MODULE_CONFIG"}]}],null],"parameters":[{"__symbolic":"reference","name":"BaseModuleConfig"},{"__symbolic":"reference","name":"StorageService"}]}],"logout":[{"__symbolic":"method"}]},"statics":{"ɵprov":{}}},"FullscreenService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":6,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"__ctor__":[{"__symbolic":"constructor"}],"toggleFullscreen":[{"__symbolic":"method"}],"listenToFullscreenEvent":[{"__symbolic":"method"}]},"statics":{"ɵprov":{}}},"GraphQLService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":13,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"apollo-angular","name":"Apollo","line":20,"character":32},{"__symbolic":"reference","name":"GraphQLMetaService"}]}],"graphQl":[{"__symbolic":"method"}],"graphQLTypeCollectionToStringArray":[{"__symbolic":"method"}],"prepareArguments":[{"__symbolic":"method"}],"prepareFields":[{"__symbolic":"method"}]},"statics":{"ɵprov":{}}},"GraphQLMetaService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":13,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"apollo-angular","name":"Apollo","line":31,"character":32}]}],"getSchema":[{"__symbolic":"method"}],"getMeta":[{"__symbolic":"method"}]},"statics":{"ɵprov":{}}},"GraphQLPlusService":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"GraphQLService"},"decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":12,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"apollo-angular","name":"Apollo","line":20,"character":22},{"__symbolic":"reference","name":"GraphQLMetaService"},{"__symbolic":"reference","name":"LoaderService"}]}],"graphQl":[{"__symbolic":"method"}],"handleLoader":[{"__symbolic":"method"}],"handleError":[{"__symbolic":"method"}],"displayError":[{"__symbolic":"method"}]},"statics":{"ɵprov":{}}},"LoaderService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":6,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"start":[{"__symbolic":"method"}],"stop":[{"__symbolic":"method"}],"getAsObservable":[{"__symbolic":"method"}]},"statics":{"ɵprov":{}}},"ScrollService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":7,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[null,[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":58,"character":39},"arguments":[{"__symbolic":"reference","name":"BASE_MODULE_CONFIG"}]}]],"parameters":[{"__symbolic":"reference","module":"@angular/router","name":"Router","line":58,"character":30},{"__symbolic":"reference","name":"BaseModuleConfig"}]}],"scrollTo":[{"__symbolic":"method"}],"getLastActiveElement":[{"__symbolic":"method"}],"isActive":[{"__symbolic":"method"}],"scrollDone":[{"__symbolic":"method"}],"scrollDoneDetection":[{"__symbolic":"method"}],"preLoadImages":[{"__symbolic":"method"}],"loadImage":[{"__symbolic":"method"}]},"statics":{"ɵprov":{}}},"SEOService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":6,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/platform-browser","name":"Title","line":10,"character":36},{"__symbolic":"reference","module":"@angular/platform-browser","name":"Meta","line":10,"character":67}]}],"initPageForSEO":[{"__symbolic":"method"}],"setPageTitle":[{"__symbolic":"method"}],"setPageDescription":[{"__symbolic":"method"}],"setPageKeywords":[{"__symbolic":"method"}]},"statics":{"ɵprov":{}}},"StorageService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":6,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":23,"character":15},"arguments":[{"__symbolic":"reference","name":"BASE_MODULE_CONFIG"}]}]],"parameters":[{"__symbolic":"reference","name":"BaseModuleConfig"}]}],"save":[{"__symbolic":"method"}],"load":[{"__symbolic":"method"}],"remove":[{"__symbolic":"method"}],"reset":[{"__symbolic":"method"}]},"statics":{"ɵprov":{}}},"StorageType":{"__symbolic":"interface"},"MustMatch":{"__symbolic":"function","parameters":["controlName","matchingControlName"],"value":{"__symbolic":"error","message":"Lambda not supported","line":7,"character":9,"module":"./validators/must-match.validator"}}},"origins":{"BaseModule":"./base.module","BasicUser":"./classes/basic-user.class","GraphQLEnum":"./classes/graphql-enum.class","GraphQLMeta":"./classes/graphql-meta.class","GraphQLType":"./classes/graphql-type.class","Helper":"./classes/helper.class","Standard":"./classes/standard.class","ContextMenuDirective":"./directives/context-menu.directive","LazyLoadDirective":"./directives/lazy-load.directive","MatchHeightDirective":"./directives/match-height.directive","ResizableDirective":"./directives/resizable.directive","apolloOptionsFactory":"./factories/apollo-options.factory","AuthGuard":"./guards/auth.guard","CanDeactivateGuard":"./guards/can-deactivate.guard","LogoutGuard":"./guards/logout.guard","ComparisonOperatorEnum":"./enums/comparison-operator.enum","GraphQLRequestType":"./enums/graphql-request-type.enum","LogicalOperatorEnum":"./enums/logical-operator.enum","SortOrderEnum":"./enums/sort-order.enum","BaseModuleConfig":"./interfaces/base-module-config.interface","BASE_MODULE_CONFIG":"./interfaces/base-module-config.interface","ICanComponentDeactivate":"./interfaces/can-component-deactivate.interface","CombinedFilterInput":"./interfaces/combined-filter-input.interface","IFields":"./interfaces/field.interface","IFieldObject":"./interfaces/field-object.interface","FilterInput":"./interfaces/filter-input.interface","IGraphQLOptions":"./interfaces/graphql-options.interface","IGraphQLPlusOptions":"./interfaces/graphql-plus-options.interfacen","IGraphQLTypeCollection":"./interfaces/graphql-type-collection.interface","SingleFilterInput":"./interfaces/single-filter-input.interface","SortInput":"./interfaces/sort-input.interface","FindArgs":"./interfaces/find-args.interface","EllipsesPipe":"./pipes/ellipses.pipe","SafeHtmlPipe":"./pipes/safe-html.pipe","AuthService":"./services/auth.service","FullscreenService":"./services/fullscreen.service","GraphQLService":"./services/graphql.service","GraphQLMetaService":"./services/graphql-meta.service","GraphQLPlusService":"./services/graphql-plus.service","LoaderService":"./services/loader.service","ScrollService":"./services/scroll.service","SEOService":"./services/seo.service","StorageService":"./services/storage.service","StorageType":"./types/storage.type","MustMatch":"./validators/must-match.validator"},"importAs":"@lenne.tech/ng-base/src/lib/base"}
1
+ {"__symbolic":"module","version":4,"metadata":{"BaseModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule","line":29,"character":1},"arguments":[{"declarations":[{"__symbolic":"reference","name":"ContextMenuDirective"},{"__symbolic":"reference","name":"LazyLoadDirective"},{"__symbolic":"reference","name":"MatchHeightDirective"},{"__symbolic":"reference","name":"ResizableDirective"},{"__symbolic":"reference","name":"EllipsesPipe"},{"__symbolic":"reference","name":"SafeHtmlPipe"}],"exports":[{"__symbolic":"reference","name":"ContextMenuDirective"},{"__symbolic":"reference","name":"LazyLoadDirective"},{"__symbolic":"reference","name":"MatchHeightDirective"},{"__symbolic":"reference","name":"ResizableDirective"},{"__symbolic":"reference","name":"EllipsesPipe"},{"__symbolic":"reference","name":"SafeHtmlPipe"}]}]}],"members":{}},"BasicUser":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"Standard"},"members":{"map":[{"__symbolic":"method"}],"hasRole":[{"__symbolic":"method"}],"hasAllRoles":[{"__symbolic":"method"}]}},"GraphQLEnum":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[null]}]}},"GraphQLMeta":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"graphql","name":"GraphQLSchema","line":19,"character":32}]}],"getArgs":[{"__symbolic":"method"}],"getFields":[{"__symbolic":"method"}],"getFunction":[{"__symbolic":"method"}],"getType":[{"__symbolic":"method"}],"getDeepType":[{"__symbolic":"method"}]}},"GraphQLType":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"Standard"},"members":{}},"Helper":{"__symbolic":"class","members":{},"statics":{"filter":{"__symbolic":"function","parameters":["objects","filter"],"value":{"__symbolic":"binop","operator":"||","left":{"__symbolic":"call","expression":{"__symbolic":"select","expression":{"__symbolic":"reference","name":"objects"},"member":"filter"},"arguments":[{"__symbolic":"error","message":"Lambda not supported","line":10,"character":28,"module":"./classes/helper.class"}]},"right":[]}},"isEqual":{"__symbolic":"function","parameters":["a","b"],"value":{"__symbolic":"binop","operator":"&&","left":{"__symbolic":"call","expression":{"__symbolic":"select","expression":{"__symbolic":"reference","name":"Helper"},"member":"isSubset"},"arguments":[{"__symbolic":"reference","name":"a"},{"__symbolic":"reference","name":"b"}]},"right":{"__symbolic":"call","expression":{"__symbolic":"select","expression":{"__symbolic":"reference","name":"Helper"},"member":"isSubset"},"arguments":[{"__symbolic":"reference","name":"b"},{"__symbolic":"reference","name":"a"}]}}}}},"Standard":{"__symbolic":"class","members":{"map":[{"__symbolic":"method"}],"clone":[{"__symbolic":"method"}],"getDiff":[{"__symbolic":"method"}]},"statics":{"map":{"__symbolic":"function","parameters":["this","data","item"],"defaults":[null,null,{"__symbolic":"error","message":"Expression form not supported","line":14,"character":18,"module":"./classes/standard.class"}],"value":{"__symbolic":"call","expression":{"__symbolic":"select","expression":{"__symbolic":"reference","name":"item"},"member":"map"},"arguments":[{"__symbolic":"reference","name":"data"}]}}}},"ContextMenuDirective":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive","line":6,"character":1},"arguments":[{"selector":"[ltContextMenu]","exportAs":"contextMenuData"}]}],"members":{"contextMenuData":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":11,"character":3}}]}],"ltContextMenu":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":12,"character":3}}]}],"xGap":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":13,"character":3}}]}],"yGap":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":14,"character":3}}]}],"overflowSpace":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":15,"character":3}}]}],"selectors":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":16,"character":3}}]}],"clickedElement":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":17,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/core","name":"ElementRef","line":20,"character":26}]}],"ngOnInit":[{"__symbolic":"method"}],"showContextMenu":[{"__symbolic":"method"}]}},"LazyLoadDirective":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive","line":5,"character":1},"arguments":[{"selector":"img[ltLazyLoad]"}]}],"members":{"srcAttr":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding","line":9,"character":3},"arguments":["attr.src"]}]}],"src":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":10,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/core","name":"ElementRef","line":12,"character":26}]}],"ngAfterViewInit":[{"__symbolic":"method"}],"canLazyLoad":[{"__symbolic":"method"}],"lazyLoadImage":[{"__symbolic":"method"}],"loadImage":[{"__symbolic":"method"}]}},"MatchHeightDirective":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive","line":7,"character":1},"arguments":[{"selector":"[ltMatchHeight]"}]}],"members":{"ltMatchHeight":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":12,"character":3}}]}],"loadImages":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":16,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[null,null,[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":22,"character":79},"arguments":[{"__symbolic":"reference","module":"@angular/core","name":"PLATFORM_ID","line":22,"character":86}]}]],"parameters":[{"__symbolic":"reference","module":"@angular/core","name":"ElementRef","line":22,"character":28},{"__symbolic":"reference","name":"ImageService"},{"__symbolic":"reference","name":"string"}]}],"onResize":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostListener","line":26,"character":3},"arguments":["window:resize"]}]}],"ngOnInit":[{"__symbolic":"method"}],"matchHeight":[{"__symbolic":"method"}]}},"ResizableDirective":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive","line":6,"character":1},"arguments":[{"selector":"[ltResizable]"}]}],"members":{"resizableGrabWidth":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":10,"character":3}}]}],"resizableMinWidth":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":11,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/core","name":"ElementRef","line":15,"character":26}]}],"ngOnInit":[{"__symbolic":"method"}],"mouseMoveG":[{"__symbolic":"method"}],"newWidth":[{"__symbolic":"method"}],"mouseDown":[{"__symbolic":"method"}],"restoreGlobalMouseEvents":[{"__symbolic":"method"}],"mouseUpG":[{"__symbolic":"method"}],"mouseMove":[{"__symbolic":"method"}],"preventGlobalMouseEvents":[{"__symbolic":"method"}],"inDragRegion":[{"__symbolic":"method"}],"addListenerToDocument":[{"__symbolic":"method"}],"addListenerToElement":[{"__symbolic":"method"}]}},"apolloOptionsFactory":{"__symbolic":"function"},"AuthGuard":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":9,"character":1}}],"members":{"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[null,null,[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":18,"character":5},"arguments":[{"__symbolic":"reference","name":"BASE_MODULE_CONFIG"}]}]],"parameters":[{"__symbolic":"reference","module":"@angular/router","name":"Router","line":16,"character":20},{"__symbolic":"reference","name":"AuthService"},{"__symbolic":"reference","name":"BaseModuleConfig"}]}],"canActivate":[{"__symbolic":"method"}],"canActivateChild":[{"__symbolic":"method"}]}},"CanDeactivateGuard":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":7,"character":1}}],"members":{"canDeactivate":[{"__symbolic":"method"}]}},"LogoutGuard":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":8,"character":1}}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/router","name":"Router","line":10,"character":30},{"__symbolic":"reference","name":"AuthService"}]}],"canActivate":[{"__symbolic":"method"}],"canActivateChild":[{"__symbolic":"method"}]}},"ComparisonOperatorEnum":{"EQ":"EQ","GT":"GT","GTE":"GTE","IN":"IN","LT":"LT","LTE":"LTE","NE":"NE","NIN":"NIN","REGEX":"REGEX"},"GraphQLRequestType":{"QUERY":"query","MUTATION":"mutation","SUBSCRIPTION":"subscription"},"LogicalOperatorEnum":{"AND":"AND","NOR":"NOR","OR":"OR"},"SortOrderEnum":{"ASC":"ASC","DESC":"DESC"},"BaseModuleConfig":{"__symbolic":"interface"},"BASE_MODULE_CONFIG":{"__symbolic":"new","expression":{"__symbolic":"reference","module":"@angular/core","name":"InjectionToken","line":67,"character":38},"arguments":["BASE_MODULE_CONFIG"]},"ICanComponentDeactivate":{"__symbolic":"interface"},"CombinedFilterInput":{"__symbolic":"interface"},"IFields":{"__symbolic":"interface"},"IFieldObject":{"__symbolic":"interface"},"FilterInput":{"__symbolic":"interface"},"IGraphQLOptions":{"__symbolic":"interface"},"IGraphQLPlusOptions":{"__symbolic":"interface"},"IGraphQLTypeCollection":{"__symbolic":"interface"},"SingleFilterInput":{"__symbolic":"interface"},"SortInput":{"__symbolic":"interface"},"FindArgs":{"__symbolic":"interface"},"EllipsesPipe":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Pipe","line":5,"character":1},"arguments":[{"name":"ltEllipses"}]}],"members":{"transform":[{"__symbolic":"method"}]}},"SafeHtmlPipe":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Pipe","line":6,"character":1},"arguments":[{"name":"ltSafeHtml"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/platform-browser","name":"DomSanitizer","line":8,"character":33}]}],"transform":[{"__symbolic":"method"}]}},"AuthService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":9,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":21,"character":15},"arguments":[{"__symbolic":"reference","name":"BASE_MODULE_CONFIG"}]}],null],"parameters":[{"__symbolic":"reference","name":"BaseModuleConfig"},{"__symbolic":"reference","name":"StorageService"}]}],"logout":[{"__symbolic":"method"}]},"statics":{"ɵprov":{}}},"FullscreenService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":6,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"__ctor__":[{"__symbolic":"constructor"}],"toggleFullscreen":[{"__symbolic":"method"}],"listenToFullscreenEvent":[{"__symbolic":"method"}]},"statics":{"ɵprov":{}}},"GraphQLService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":13,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"apollo-angular","name":"Apollo","line":20,"character":32},{"__symbolic":"reference","name":"GraphQLMetaService"}]}],"graphQl":[{"__symbolic":"method"}],"graphQLTypeCollectionToStringArray":[{"__symbolic":"method"}],"prepareArguments":[{"__symbolic":"method"}],"prepareFields":[{"__symbolic":"method"}]},"statics":{"ɵprov":{}}},"GraphQLMetaService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":13,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"apollo-angular","name":"Apollo","line":31,"character":32}]}],"getSchema":[{"__symbolic":"method"}],"getMeta":[{"__symbolic":"method"}]},"statics":{"ɵprov":{}}},"GraphQLPlusService":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"GraphQLService"},"decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":12,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"apollo-angular","name":"Apollo","line":20,"character":22},{"__symbolic":"reference","name":"GraphQLMetaService"},{"__symbolic":"reference","name":"LoaderService"}]}],"graphQl":[{"__symbolic":"method"}],"handleLoader":[{"__symbolic":"method"}],"handleError":[{"__symbolic":"method"}],"displayError":[{"__symbolic":"method"}]},"statics":{"ɵprov":{}}},"ImageService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":6,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"preLoadImages":[{"__symbolic":"method"}],"loadImage":[{"__symbolic":"method"}]},"statics":{"ɵprov":{}}},"LoaderService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":6,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"start":[{"__symbolic":"method"}],"stop":[{"__symbolic":"method"}],"getAsObservable":[{"__symbolic":"method"}]},"statics":{"ɵprov":{}}},"ScrollService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":8,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[null,[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":61,"character":5},"arguments":[{"__symbolic":"reference","name":"BASE_MODULE_CONFIG"}]}],null],"parameters":[{"__symbolic":"reference","module":"@angular/router","name":"Router","line":60,"character":22},{"__symbolic":"reference","name":"BaseModuleConfig"},{"__symbolic":"reference","name":"ImageService"}]}],"scrollTo":[{"__symbolic":"method"}],"getLastActiveElement":[{"__symbolic":"method"}],"isActive":[{"__symbolic":"method"}],"scrollDone":[{"__symbolic":"method"}],"scrollDoneDetection":[{"__symbolic":"method"}]},"statics":{"ɵprov":{}}},"SEOService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":14,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/platform-browser","name":"Title","line":18,"character":36},{"__symbolic":"reference","module":"@angular/platform-browser","name":"Meta","line":18,"character":67}]}],"initPageForSEO":[{"__symbolic":"method"}],"setGeneralData":[{"__symbolic":"method"}],"setTwitterData":[{"__symbolic":"method"}],"setFacebookData":[{"__symbolic":"method"}],"setPageKeywords":[{"__symbolic":"method"}]},"statics":{"ɵprov":{}}},"StorageService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":6,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":23,"character":15},"arguments":[{"__symbolic":"reference","name":"BASE_MODULE_CONFIG"}]}]],"parameters":[{"__symbolic":"reference","name":"BaseModuleConfig"}]}],"save":[{"__symbolic":"method"}],"load":[{"__symbolic":"method"}],"remove":[{"__symbolic":"method"}],"reset":[{"__symbolic":"method"}]},"statics":{"ɵprov":{}}},"StorageType":{"__symbolic":"interface"},"MustMatch":{"__symbolic":"function","parameters":["controlName","matchingControlName"],"value":{"__symbolic":"error","message":"Lambda not supported","line":7,"character":9,"module":"./validators/must-match.validator"}}},"origins":{"BaseModule":"./base.module","BasicUser":"./classes/basic-user.class","GraphQLEnum":"./classes/graphql-enum.class","GraphQLMeta":"./classes/graphql-meta.class","GraphQLType":"./classes/graphql-type.class","Helper":"./classes/helper.class","Standard":"./classes/standard.class","ContextMenuDirective":"./directives/context-menu.directive","LazyLoadDirective":"./directives/lazy-load.directive","MatchHeightDirective":"./directives/match-height.directive","ResizableDirective":"./directives/resizable.directive","apolloOptionsFactory":"./factories/apollo-options.factory","AuthGuard":"./guards/auth.guard","CanDeactivateGuard":"./guards/can-deactivate.guard","LogoutGuard":"./guards/logout.guard","ComparisonOperatorEnum":"./enums/comparison-operator.enum","GraphQLRequestType":"./enums/graphql-request-type.enum","LogicalOperatorEnum":"./enums/logical-operator.enum","SortOrderEnum":"./enums/sort-order.enum","BaseModuleConfig":"./interfaces/base-module-config.interface","BASE_MODULE_CONFIG":"./interfaces/base-module-config.interface","ICanComponentDeactivate":"./interfaces/can-component-deactivate.interface","CombinedFilterInput":"./interfaces/combined-filter-input.interface","IFields":"./interfaces/field.interface","IFieldObject":"./interfaces/field-object.interface","FilterInput":"./interfaces/filter-input.interface","IGraphQLOptions":"./interfaces/graphql-options.interface","IGraphQLPlusOptions":"./interfaces/graphql-plus-options.interfacen","IGraphQLTypeCollection":"./interfaces/graphql-type-collection.interface","SingleFilterInput":"./interfaces/single-filter-input.interface","SortInput":"./interfaces/sort-input.interface","FindArgs":"./interfaces/find-args.interface","EllipsesPipe":"./pipes/ellipses.pipe","SafeHtmlPipe":"./pipes/safe-html.pipe","AuthService":"./services/auth.service","FullscreenService":"./services/fullscreen.service","GraphQLService":"./services/graphql.service","GraphQLMetaService":"./services/graphql-meta.service","GraphQLPlusService":"./services/graphql-plus.service","ImageService":"./services/image.service","LoaderService":"./services/loader.service","ScrollService":"./services/scroll.service","SEOService":"./services/seo.service","StorageService":"./services/storage.service","StorageType":"./types/storage.type","MustMatch":"./validators/must-match.validator"},"importAs":"@lenne.tech/ng-base/src/lib/base"}
@@ -39,6 +39,7 @@ export * from './services/fullscreen.service';
39
39
  export * from './services/graphql.service';
40
40
  export * from './services/graphql-meta.service';
41
41
  export * from './services/graphql-plus.service';
42
+ export * from './services/image.service';
42
43
  export * from './services/loader.service';
43
44
  export * from './services/scroll.service';
44
45
  export * from './services/seo.service';
@@ -0,0 +1,24 @@
1
+ /**
2
+ * Image service
3
+ */
4
+ export declare class ImageService {
5
+ /**
6
+ * Preaload images (for lazy handling)
7
+ *
8
+ * @param options
9
+ * @protected
10
+ */
11
+ preLoadImages(options?: {
12
+ doneFunction?: () => Promise<any> | any | void;
13
+ elements?: Element | Element[] | HTMLCollectionOf<Element> | Node | NodeList | Document | HTMLElement | HTMLElement[];
14
+ regExp?: RegExp;
15
+ }): Promise<any>;
16
+ /**
17
+ * Load image for image element
18
+ *
19
+ * @param imageElement
20
+ * @param src
21
+ * @protected
22
+ */
23
+ loadImage(imageElement: HTMLImageElement, src?: string): Promise<unknown>;
24
+ }
@@ -1,11 +1,13 @@
1
1
  import { Router } from '@angular/router';
2
2
  import { BaseModuleConfig } from '../interfaces/base-module-config.interface';
3
+ import { ImageService } from './image.service';
3
4
  /**
4
5
  * Scroll service for autoscroll to specific fragments
5
6
  */
6
7
  export declare class ScrollService {
7
- private router;
8
- private moduleConfig;
8
+ protected router: Router;
9
+ protected moduleConfig: BaseModuleConfig;
10
+ protected imageService: ImageService;
9
11
  /**
10
12
  * Current scroll promise
11
13
  *
@@ -46,7 +48,7 @@ export declare class ScrollService {
46
48
  /**
47
49
  * Initializer
48
50
  */
49
- constructor(router: Router, moduleConfig: BaseModuleConfig);
51
+ constructor(router: Router, moduleConfig: BaseModuleConfig, imageService: ImageService);
50
52
  /**
51
53
  * Scroll to structureElement with specific ID
52
54
  */
@@ -69,8 +71,7 @@ export declare class ScrollService {
69
71
  * Scroll done promise
70
72
  */
71
73
  scrollDone(options?: {
72
- doneFunction?: () => Promise<any> | any | void;
73
- timeout?: number;
74
+ doneFunction?: () => any | void;
74
75
  }): Promise<any>;
75
76
  /**
76
77
  * Scroll done detecton
@@ -78,22 +79,4 @@ export declare class ScrollService {
78
79
  * @protected
79
80
  */
80
81
  protected scrollDoneDetection(): Promise<void>;
81
- /**
82
- * Preaload images (for lazy handling)
83
- *
84
- * @param options
85
- * @protected
86
- */
87
- protected preLoadImages(options?: {
88
- doneFunction?: () => Promise<any> | any | void;
89
- timeout?: number;
90
- }): Promise<any>;
91
- /**
92
- * Load image for image element
93
- *
94
- * @param imageElement
95
- * @param src
96
- * @protected
97
- */
98
- protected loadImage(imageElement: HTMLImageElement, src?: string): Promise<unknown>;
99
82
  }
@@ -1,4 +1,11 @@
1
1
  import { Meta, Title } from '@angular/platform-browser';
2
+ interface SEOData {
3
+ title: string;
4
+ description: string;
5
+ image?: string;
6
+ url?: string;
7
+ keywords?: string;
8
+ }
2
9
  /**
3
10
  * SEO service for setting HTML meta data
4
11
  */
@@ -6,8 +13,34 @@ export declare class SEOService {
6
13
  private titleService;
7
14
  private metaTagService;
8
15
  constructor(titleService: Title, metaTagService: Meta);
9
- initPageForSEO(title: string, description: string, keywords?: string): void;
10
- private setPageTitle;
11
- private setPageDescription;
16
+ initPageForSEO(input: SEOData): void;
17
+ /**
18
+ * Set general metadata
19
+ *
20
+ * @param data
21
+ * @private
22
+ */
23
+ private setGeneralData;
24
+ /**
25
+ * Set metadata for twitter
26
+ *
27
+ * @param data
28
+ * @private
29
+ */
30
+ private setTwitterData;
31
+ /**
32
+ * Set metadata for facebook
33
+ *
34
+ * @param data
35
+ * @private
36
+ */
37
+ private setFacebookData;
38
+ /**
39
+ * Set page keywords
40
+ *
41
+ * @param keywords
42
+ * @private
43
+ */
12
44
  private setPageKeywords;
13
45
  }
46
+ export {};