@seniorsistemas/angular-components 16.2.1 → 16.2.2

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 (24) hide show
  1. package/bundles/seniorsistemas-angular-components.umd.js +53 -10
  2. package/bundles/seniorsistemas-angular-components.umd.js.map +1 -1
  3. package/bundles/seniorsistemas-angular-components.umd.min.js +1 -1
  4. package/bundles/seniorsistemas-angular-components.umd.min.js.map +1 -1
  5. package/components/dynamic-form/configurations/fields/field.d.ts +3 -0
  6. package/components/tooltip/models/index.d.ts +2 -0
  7. package/components/tooltip/models/tooltip-event.d.ts +4 -0
  8. package/components/tooltip/tooltip.directive.d.ts +5 -2
  9. package/esm2015/components/dynamic-form/configurations/fields/field.js +2 -1
  10. package/esm2015/components/dynamic-form/dynamic-field.component.js +2 -1
  11. package/esm2015/components/tooltip/models/index.js +3 -1
  12. package/esm2015/components/tooltip/models/tooltip-event.js +6 -0
  13. package/esm2015/components/tooltip/tooltip.directive.js +47 -12
  14. package/esm5/components/dynamic-form/configurations/fields/field.js +2 -1
  15. package/esm5/components/dynamic-form/dynamic-field.component.js +2 -2
  16. package/esm5/components/tooltip/models/index.js +3 -1
  17. package/esm5/components/tooltip/models/tooltip-event.js +6 -0
  18. package/esm5/components/tooltip/tooltip.directive.js +47 -12
  19. package/fesm2015/seniorsistemas-angular-components.js +53 -9
  20. package/fesm2015/seniorsistemas-angular-components.js.map +1 -1
  21. package/fesm5/seniorsistemas-angular-components.js +53 -10
  22. package/fesm5/seniorsistemas-angular-components.js.map +1 -1
  23. package/package.json +1 -1
  24. package/seniorsistemas-angular-components.metadata.json +1 -1
@@ -1,3 +1,4 @@
1
+ import { TemplateRef } from "@angular/core";
1
2
  import { FieldSize } from "../field-size";
2
3
  import { FieldType } from "../field-type";
3
4
  export interface FieldConfig {
@@ -15,6 +16,7 @@ export interface FieldConfig {
15
16
  size?: FieldSize;
16
17
  representedBy?: "radio" | "switch";
17
18
  errorMessages?: () => ({}) | {};
19
+ bottomTemplate?: TemplateRef<Element>;
18
20
  }
19
21
  export declare abstract class Field {
20
22
  required?: () => boolean;
@@ -32,5 +34,6 @@ export declare abstract class Field {
32
34
  defaultValue?: any;
33
35
  representedBy?: "radio" | "switch";
34
36
  errorMessages?: () => ({}) | {};
37
+ bottomTemplate?: TemplateRef<Element>;
35
38
  constructor(config: FieldConfig);
36
39
  }
@@ -1 +1,3 @@
1
+ export { MobileBehavior } from "./mobile-behavior";
1
2
  export { TooltipPosition } from "./tooltip-position";
3
+ export { TooltipEvent } from "./tooltip-event";
@@ -0,0 +1,4 @@
1
+ export declare enum TooltipEvent {
2
+ Focus = "focus",
3
+ Hover = "hover"
4
+ }
@@ -1,6 +1,5 @@
1
1
  import { ApplicationRef, ComponentFactoryResolver, ElementRef, Injector, OnDestroy, OnInit } from "@angular/core";
2
- import { MobileBehavior } from "./models/mobile-behavior";
3
- import { TooltipPosition } from "./models/tooltip-position";
2
+ import { MobileBehavior, TooltipEvent, TooltipPosition } from "./models";
4
3
  export declare class TooltipDirective implements OnInit, OnDestroy {
5
4
  private elementRef;
6
5
  private appRef;
@@ -10,7 +9,9 @@ export declare class TooltipDirective implements OnInit, OnDestroy {
10
9
  position: TooltipPosition;
11
10
  showDelay: number;
12
11
  displayTime: number;
12
+ tooltipEvent: TooltipEvent;
13
13
  escape: boolean;
14
+ visible: boolean;
14
15
  mobileBehavior: MobileBehavior;
15
16
  private componentRef;
16
17
  private showTimeout?;
@@ -20,6 +21,8 @@ export declare class TooltipDirective implements OnInit, OnDestroy {
20
21
  ngOnDestroy(): void;
21
22
  onClick(): void;
22
23
  onDocumentTouchStart(): void;
24
+ onFocus(): void;
25
+ onBlur(): void;
23
26
  onMouseEnter(): void;
24
27
  onMouseLeave(): void;
25
28
  onTouchStart(): void;
@@ -13,9 +13,10 @@ export class Field {
13
13
  this.type = config.type;
14
14
  this.size = new FieldSize(config.size || {});
15
15
  this.errorMessages = config.errorMessages;
16
+ this.bottomTemplate = config.bottomTemplate;
16
17
  this.gridClass = Object.keys(this.size).map(key => `ui-${key}-${this.size[key]}`);
17
18
  this.defaultValue = config.defaultValue;
18
19
  this.representedBy = config.representedBy;
19
20
  }
20
21
  }
21
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmllbGQuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9Ac2VuaW9yc2lzdGVtYXMvYW5ndWxhci1jb21wb25lbnRzLyIsInNvdXJjZXMiOlsiY29tcG9uZW50cy9keW5hbWljLWZvcm0vY29uZmlndXJhdGlvbnMvZmllbGRzL2ZpZWxkLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFvQjFDLE1BQU0sT0FBZ0IsS0FBSztJQWlCdkIsWUFBWSxNQUFtQjtRQUMzQixJQUFJLENBQUMsUUFBUSxHQUFHLE1BQU0sQ0FBQyxRQUFRLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNqRCxJQUFJLENBQUMsT0FBTyxHQUFHLE1BQU0sQ0FBQyxPQUFPLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUM5QyxJQUFJLENBQUMsRUFBRSxHQUFHLE1BQU0sQ0FBQyxFQUFFLENBQUM7UUFDcEIsSUFBSSxDQUFDLElBQUksR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDO1FBQ3hCLElBQUksQ0FBQyxLQUFLLEdBQUcsTUFBTSxDQUFDLEtBQUssQ0FBQztRQUMxQixJQUFJLENBQUMsUUFBUSxHQUFHLE1BQU0sQ0FBQyxRQUFRLENBQUM7UUFDaEMsSUFBSSxDQUFDLE9BQU8sR0FBRyxNQUFNLENBQUMsT0FBTyxDQUFDO1FBQzlCLElBQUksQ0FBQyxXQUFXLEdBQUcsTUFBTSxDQUFDLFdBQVcsSUFBSSxFQUFFLENBQUM7UUFDNUMsSUFBSSxDQUFDLFNBQVMsR0FBRyxNQUFNLENBQUMsU0FBUyxJQUFJLEtBQUssQ0FBQztRQUMzQyxJQUFJLENBQUMsSUFBSSxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUM7UUFDeEIsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLFNBQVMsQ0FBQyxNQUFNLENBQUMsSUFBSSxJQUFJLEVBQUUsQ0FBQyxDQUFDO1FBQzdDLElBQUksQ0FBQyxhQUFhLEdBQUcsTUFBTSxDQUFDLGFBQWEsQ0FBQztRQUMxQyxJQUFJLENBQUMsU0FBUyxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLE1BQU0sR0FBRyxJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQ2xGLElBQUksQ0FBQyxZQUFZLEdBQUcsTUFBTSxDQUFDLFlBQVksQ0FBQztRQUN4QyxJQUFJLENBQUMsYUFBYSxHQUFHLE1BQU0sQ0FBQyxhQUFhLENBQUM7SUFDOUMsQ0FBQztDQUNKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRmllbGRTaXplIH0gZnJvbSBcIi4uL2ZpZWxkLXNpemVcIjtcbmltcG9ydCB7IEZpZWxkVHlwZSB9IGZyb20gXCIuLi9maWVsZC10eXBlXCI7XG5cbmV4cG9ydCBpbnRlcmZhY2UgRmllbGRDb25maWcge1xuICAgIGRlZmF1bHRWYWx1ZT86IGFueTtcbiAgICByZXF1aXJlZD86ICgpID0+IGJvb2xlYW47XG4gICAgdmlzaWJsZT86ICgpID0+IGJvb2xlYW47XG4gICAgaWQ/OiBzdHJpbmc7XG4gICAgbmFtZTogc3RyaW5nO1xuICAgIGxhYmVsOiBzdHJpbmc7XG4gICAgaW5mb1NpZ24/OiBzdHJpbmc7XG4gICAgdG9vbHRpcD86IHN0cmluZztcbiAgICBwbGFjZWhvbGRlcj86IHN0cmluZztcbiAgICBzaG93Q2xlYXI/OiBib29sZWFuO1xuICAgIHR5cGU/OiBGaWVsZFR5cGU7XG4gICAgc2l6ZT86IEZpZWxkU2l6ZTtcbiAgICByZXByZXNlbnRlZEJ5PzogXCJyYWRpb1wiIHwgXCJzd2l0Y2hcIjtcbiAgICBlcnJvck1lc3NhZ2VzPzogKCkgPT4gKHt9KSB8IHt9O1xufVxuXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgRmllbGQge1xuICAgIHB1YmxpYyByZXF1aXJlZD86ICgpID0+IGJvb2xlYW47XG4gICAgcHVibGljIHZpc2libGU/OiAoKSA9PiBib29sZWFuO1xuICAgIHB1YmxpYyBpZD86IHN0cmluZztcbiAgICBwdWJsaWMgbmFtZTogc3RyaW5nO1xuICAgIHB1YmxpYyBsYWJlbDogc3RyaW5nO1xuICAgIHB1YmxpYyBpbmZvU2lnbj86IHN0cmluZztcbiAgICBwdWJsaWMgdG9vbHRpcD86IHN0cmluZztcbiAgICBwdWJsaWMgcGxhY2Vob2xkZXI/OiBzdHJpbmc7XG4gICAgcHVibGljIHNob3dDbGVhcj86IGJvb2xlYW47XG4gICAgcHVibGljIHR5cGU6IEZpZWxkVHlwZTtcbiAgICBwdWJsaWMgc2l6ZTogRmllbGRTaXplO1xuICAgIHB1YmxpYyBncmlkQ2xhc3M6IHN0cmluZ1tdO1xuICAgIHB1YmxpYyBkZWZhdWx0VmFsdWU/OiBhbnk7XG4gICAgcHVibGljIHJlcHJlc2VudGVkQnk/OiBcInJhZGlvXCIgfCBcInN3aXRjaFwiO1xuICAgIHB1YmxpYyBlcnJvck1lc3NhZ2VzPzogKCkgPT4gKHt9KSB8IHt9O1xuXG4gICAgY29uc3RydWN0b3IoY29uZmlnOiBGaWVsZENvbmZpZykge1xuICAgICAgICB0aGlzLnJlcXVpcmVkID0gY29uZmlnLnJlcXVpcmVkIHx8ICgoKSA9PiBmYWxzZSk7XG4gICAgICAgIHRoaXMudmlzaWJsZSA9IGNvbmZpZy52aXNpYmxlIHx8ICgoKSA9PiB0cnVlKTtcbiAgICAgICAgdGhpcy5pZCA9IGNvbmZpZy5pZDtcbiAgICAgICAgdGhpcy5uYW1lID0gY29uZmlnLm5hbWU7XG4gICAgICAgIHRoaXMubGFiZWwgPSBjb25maWcubGFiZWw7XG4gICAgICAgIHRoaXMuaW5mb1NpZ24gPSBjb25maWcuaW5mb1NpZ247XG4gICAgICAgIHRoaXMudG9vbHRpcCA9IGNvbmZpZy50b29sdGlwO1xuICAgICAgICB0aGlzLnBsYWNlaG9sZGVyID0gY29uZmlnLnBsYWNlaG9sZGVyIHx8IFwiXCI7XG4gICAgICAgIHRoaXMuc2hvd0NsZWFyID0gY29uZmlnLnNob3dDbGVhciB8fCBmYWxzZTtcbiAgICAgICAgdGhpcy50eXBlID0gY29uZmlnLnR5cGU7XG4gICAgICAgIHRoaXMuc2l6ZSA9IG5ldyBGaWVsZFNpemUoY29uZmlnLnNpemUgfHwge30pO1xuICAgICAgICB0aGlzLmVycm9yTWVzc2FnZXMgPSBjb25maWcuZXJyb3JNZXNzYWdlcztcbiAgICAgICAgdGhpcy5ncmlkQ2xhc3MgPSBPYmplY3Qua2V5cyh0aGlzLnNpemUpLm1hcChrZXkgPT4gYHVpLSR7a2V5fS0ke3RoaXMuc2l6ZVtrZXldfWApO1xuICAgICAgICB0aGlzLmRlZmF1bHRWYWx1ZSA9IGNvbmZpZy5kZWZhdWx0VmFsdWU7XG4gICAgICAgIHRoaXMucmVwcmVzZW50ZWRCeSA9IGNvbmZpZy5yZXByZXNlbnRlZEJ5O1xuICAgIH1cbn1cbiJdfQ==
22
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmllbGQuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9Ac2VuaW9yc2lzdGVtYXMvYW5ndWxhci1jb21wb25lbnRzLyIsInNvdXJjZXMiOlsiY29tcG9uZW50cy9keW5hbWljLWZvcm0vY29uZmlndXJhdGlvbnMvZmllbGRzL2ZpZWxkLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFxQjFDLE1BQU0sT0FBZ0IsS0FBSztJQWtCdkIsWUFBWSxNQUFtQjtRQUMzQixJQUFJLENBQUMsUUFBUSxHQUFHLE1BQU0sQ0FBQyxRQUFRLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNqRCxJQUFJLENBQUMsT0FBTyxHQUFHLE1BQU0sQ0FBQyxPQUFPLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUM5QyxJQUFJLENBQUMsRUFBRSxHQUFHLE1BQU0sQ0FBQyxFQUFFLENBQUM7UUFDcEIsSUFBSSxDQUFDLElBQUksR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDO1FBQ3hCLElBQUksQ0FBQyxLQUFLLEdBQUcsTUFBTSxDQUFDLEtBQUssQ0FBQztRQUMxQixJQUFJLENBQUMsUUFBUSxHQUFHLE1BQU0sQ0FBQyxRQUFRLENBQUM7UUFDaEMsSUFBSSxDQUFDLE9BQU8sR0FBRyxNQUFNLENBQUMsT0FBTyxDQUFDO1FBQzlCLElBQUksQ0FBQyxXQUFXLEdBQUcsTUFBTSxDQUFDLFdBQVcsSUFBSSxFQUFFLENBQUM7UUFDNUMsSUFBSSxDQUFDLFNBQVMsR0FBRyxNQUFNLENBQUMsU0FBUyxJQUFJLEtBQUssQ0FBQztRQUMzQyxJQUFJLENBQUMsSUFBSSxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUM7UUFDeEIsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLFNBQVMsQ0FBQyxNQUFNLENBQUMsSUFBSSxJQUFJLEVBQUUsQ0FBQyxDQUFDO1FBQzdDLElBQUksQ0FBQyxhQUFhLEdBQUcsTUFBTSxDQUFDLGFBQWEsQ0FBQztRQUMxQyxJQUFJLENBQUMsY0FBYyxHQUFHLE1BQU0sQ0FBQyxjQUFjLENBQUM7UUFDNUMsSUFBSSxDQUFDLFNBQVMsR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxNQUFNLEdBQUcsSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUNsRixJQUFJLENBQUMsWUFBWSxHQUFHLE1BQU0sQ0FBQyxZQUFZLENBQUM7UUFDeEMsSUFBSSxDQUFDLGFBQWEsR0FBRyxNQUFNLENBQUMsYUFBYSxDQUFDO0lBQzlDLENBQUM7Q0FDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFRlbXBsYXRlUmVmIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7IEZpZWxkU2l6ZSB9IGZyb20gXCIuLi9maWVsZC1zaXplXCI7XG5pbXBvcnQgeyBGaWVsZFR5cGUgfSBmcm9tIFwiLi4vZmllbGQtdHlwZVwiO1xuXG5leHBvcnQgaW50ZXJmYWNlIEZpZWxkQ29uZmlnIHtcbiAgICBkZWZhdWx0VmFsdWU/OiBhbnk7XG4gICAgcmVxdWlyZWQ/OiAoKSA9PiBib29sZWFuO1xuICAgIHZpc2libGU/OiAoKSA9PiBib29sZWFuO1xuICAgIGlkPzogc3RyaW5nO1xuICAgIG5hbWU6IHN0cmluZztcbiAgICBsYWJlbDogc3RyaW5nO1xuICAgIGluZm9TaWduPzogc3RyaW5nO1xuICAgIHRvb2x0aXA/OiBzdHJpbmc7XG4gICAgcGxhY2Vob2xkZXI/OiBzdHJpbmc7XG4gICAgc2hvd0NsZWFyPzogYm9vbGVhbjtcbiAgICB0eXBlPzogRmllbGRUeXBlO1xuICAgIHNpemU/OiBGaWVsZFNpemU7XG4gICAgcmVwcmVzZW50ZWRCeT86IFwicmFkaW9cIiB8IFwic3dpdGNoXCI7XG4gICAgZXJyb3JNZXNzYWdlcz86ICgpID0+ICh7fSkgfCB7fTtcbiAgICBib3R0b21UZW1wbGF0ZT86IFRlbXBsYXRlUmVmPEVsZW1lbnQ+O1xufVxuXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgRmllbGQge1xuICAgIHB1YmxpYyByZXF1aXJlZD86ICgpID0+IGJvb2xlYW47XG4gICAgcHVibGljIHZpc2libGU/OiAoKSA9PiBib29sZWFuO1xuICAgIHB1YmxpYyBpZD86IHN0cmluZztcbiAgICBwdWJsaWMgbmFtZTogc3RyaW5nO1xuICAgIHB1YmxpYyBsYWJlbDogc3RyaW5nO1xuICAgIHB1YmxpYyBpbmZvU2lnbj86IHN0cmluZztcbiAgICBwdWJsaWMgdG9vbHRpcD86IHN0cmluZztcbiAgICBwdWJsaWMgcGxhY2Vob2xkZXI/OiBzdHJpbmc7XG4gICAgcHVibGljIHNob3dDbGVhcj86IGJvb2xlYW47XG4gICAgcHVibGljIHR5cGU6IEZpZWxkVHlwZTtcbiAgICBwdWJsaWMgc2l6ZTogRmllbGRTaXplO1xuICAgIHB1YmxpYyBncmlkQ2xhc3M6IHN0cmluZ1tdO1xuICAgIHB1YmxpYyBkZWZhdWx0VmFsdWU/OiBhbnk7XG4gICAgcHVibGljIHJlcHJlc2VudGVkQnk/OiBcInJhZGlvXCIgfCBcInN3aXRjaFwiO1xuICAgIHB1YmxpYyBlcnJvck1lc3NhZ2VzPzogKCkgPT4gKHt9KSB8IHt9O1xuICAgIHB1YmxpYyBib3R0b21UZW1wbGF0ZT86IFRlbXBsYXRlUmVmPEVsZW1lbnQ+O1xuXG4gICAgY29uc3RydWN0b3IoY29uZmlnOiBGaWVsZENvbmZpZykge1xuICAgICAgICB0aGlzLnJlcXVpcmVkID0gY29uZmlnLnJlcXVpcmVkIHx8ICgoKSA9PiBmYWxzZSk7XG4gICAgICAgIHRoaXMudmlzaWJsZSA9IGNvbmZpZy52aXNpYmxlIHx8ICgoKSA9PiB0cnVlKTtcbiAgICAgICAgdGhpcy5pZCA9IGNvbmZpZy5pZDtcbiAgICAgICAgdGhpcy5uYW1lID0gY29uZmlnLm5hbWU7XG4gICAgICAgIHRoaXMubGFiZWwgPSBjb25maWcubGFiZWw7XG4gICAgICAgIHRoaXMuaW5mb1NpZ24gPSBjb25maWcuaW5mb1NpZ247XG4gICAgICAgIHRoaXMudG9vbHRpcCA9IGNvbmZpZy50b29sdGlwO1xuICAgICAgICB0aGlzLnBsYWNlaG9sZGVyID0gY29uZmlnLnBsYWNlaG9sZGVyIHx8IFwiXCI7XG4gICAgICAgIHRoaXMuc2hvd0NsZWFyID0gY29uZmlnLnNob3dDbGVhciB8fCBmYWxzZTtcbiAgICAgICAgdGhpcy50eXBlID0gY29uZmlnLnR5cGU7XG4gICAgICAgIHRoaXMuc2l6ZSA9IG5ldyBGaWVsZFNpemUoY29uZmlnLnNpemUgfHwge30pO1xuICAgICAgICB0aGlzLmVycm9yTWVzc2FnZXMgPSBjb25maWcuZXJyb3JNZXNzYWdlcztcbiAgICAgICAgdGhpcy5ib3R0b21UZW1wbGF0ZSA9IGNvbmZpZy5ib3R0b21UZW1wbGF0ZTtcbiAgICAgICAgdGhpcy5ncmlkQ2xhc3MgPSBPYmplY3Qua2V5cyh0aGlzLnNpemUpLm1hcChrZXkgPT4gYHVpLSR7a2V5fS0ke3RoaXMuc2l6ZVtrZXldfWApO1xuICAgICAgICB0aGlzLmRlZmF1bHRWYWx1ZSA9IGNvbmZpZy5kZWZhdWx0VmFsdWU7XG4gICAgICAgIHRoaXMucmVwcmVzZW50ZWRCeSA9IGNvbmZpZy5yZXByZXNlbnRlZEJ5O1xuICAgIH1cbn1cbiJdfQ==
@@ -38,6 +38,7 @@ DynamicFieldComponent = __decorate([
38
38
  <ng-container *sDynamicForm="{ id: id, config: field, group: form}"></ng-container>
39
39
  <s-control-errors [form]="form" [control]="form.controls[field.name]"
40
40
  [errorMessages]="getErrorMessages(field.errorMessages)"></s-control-errors>
41
+ <ng-template *ngIf="field?.bottomTemplate" [ngTemplateOutlet]="field.bottomTemplate"></ng-template>
41
42
  </div>
42
43
  </ng-container>
43
44
  </div>
@@ -46,4 +47,4 @@ DynamicFieldComponent = __decorate([
46
47
  })
47
48
  ], DynamicFieldComponent);
48
49
  export { DynamicFieldComponent };
49
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHluYW1pYy1maWVsZC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9Ac2VuaW9yc2lzdGVtYXMvYW5ndWxhci1jb21wb25lbnRzLyIsInNvdXJjZXMiOlsiY29tcG9uZW50cy9keW5hbWljLWZvcm0vZHluYW1pYy1maWVsZC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBc0J6RCxJQUFhLHFCQUFxQixHQUFsQyxNQUFhLHFCQUFxQjtJQWE5QixnQkFBZSxDQUFDO0lBRVQsUUFBUSxLQUFJLENBQUM7SUFFYixnQkFBZ0IsQ0FBQyxhQUFrQjtRQUN0QyxJQUFJLGFBQWE7WUFDYixPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsYUFBYSxDQUFDO2dCQUNqQyxDQUFDLGlDQUFNLElBQUksQ0FBQyxhQUFhLEdBQUssYUFBYSxFQUFFLEVBQzdDLENBQUMsaUNBQU0sSUFBSSxDQUFDLGFBQWEsR0FBSyxhQUFhLENBQUUsQ0FBQztRQUN0RCxPQUFPLElBQUksQ0FBQyxhQUFhLENBQUM7SUFDOUIsQ0FBQztJQUVNLFVBQVUsQ0FBQyxLQUFVO1FBQ3hCLE9BQU8sS0FBSyxZQUFZLFFBQVEsQ0FBQztJQUNyQyxDQUFDO0NBQ0osQ0FBQTtBQTFCRztJQURDLEtBQUssRUFBRTtpREFDVTtBQUdsQjtJQURDLEtBQUssRUFBRTtxREFDbUI7QUFHM0I7SUFEQyxLQUFLLEVBQUU7bURBQ2U7QUFHdkI7SUFEQyxLQUFLLEVBQUU7NERBQ21CO0FBWGxCLHFCQUFxQjtJQWxCakMsU0FBUyxDQUFDO1FBQ1AsUUFBUSxFQUFFLGlCQUFpQjtRQUMzQixRQUFRLEVBQUU7Ozs7Ozs7Ozs7Ozs7O0tBY1Q7S0FDSixDQUFDO0dBQ1cscUJBQXFCLENBNEJqQztTQTVCWSxxQkFBcUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBPbkluaXQgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgRm9ybUdyb3VwIH0gZnJvbSBcIkBhbmd1bGFyL2Zvcm1zXCI7XG5pbXBvcnQgeyBGb3JtRmllbGQgfSBmcm9tIFwiLi9jb25maWd1cmF0aW9ucy9mb3JtLWZpZWxkXCI7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiBcInMtZHluYW1pYy1maWVsZFwiLFxuICAgIHRlbXBsYXRlOiBgXG4gICAgICAgIDxkaXYgY2xhc3M9XCJ1aS1mbHVpZFwiIFtmb3JtR3JvdXBdPVwiZm9ybVwiPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInVpLWdcIj5cbiAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBmaWVsZCBvZiBmaWVsZHNcIj5cbiAgICAgICAgICAgICAgICAgICAgPGRpdiBbbmdDbGFzc109XCJmaWVsZC5ncmlkQ2xhc3NcIiAqbmdJZj1cImZpZWxkLnZpc2libGUoKVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCJmaWVsZC5sYWJlbFwiPjxsYWJlbCBbZm9yXT1cImZpZWxkLm5hbWVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtuZ0NsYXNzXT1cInsgJ3JlcXVpcmVkJzogZmllbGQucmVxdWlyZWQoKSB9XCIgKnNJbmZvU2lnbj1cImZpZWxkLmluZm9TaWduXCI+e3sgZmllbGQubGFiZWwgfX08L2xhYmVsPjwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKnNEeW5hbWljRm9ybT1cInsgaWQ6IGlkLCBjb25maWc6IGZpZWxkLCBncm91cDogZm9ybX1cIj48L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxzLWNvbnRyb2wtZXJyb3JzIFtmb3JtXT1cImZvcm1cIiBbY29udHJvbF09XCJmb3JtLmNvbnRyb2xzW2ZpZWxkLm5hbWVdXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbZXJyb3JNZXNzYWdlc109XCJnZXRFcnJvck1lc3NhZ2VzKGZpZWxkLmVycm9yTWVzc2FnZXMpXCI+PC9zLWNvbnRyb2wtZXJyb3JzPlxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICBgLFxufSlcbmV4cG9ydCBjbGFzcyBEeW5hbWljRmllbGRDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIGlkOiBzdHJpbmc7XG5cbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyBmaWVsZHM6IEZvcm1GaWVsZFtdO1xuXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgZm9ybTogRm9ybUdyb3VwO1xuXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgZXJyb3JNZXNzYWdlcz86IGFueTtcblxuICAgIGNvbnN0cnVjdG9yKCkge31cblxuICAgIHB1YmxpYyBuZ09uSW5pdCgpIHt9XG5cbiAgICBwdWJsaWMgZ2V0RXJyb3JNZXNzYWdlcyhlcnJvck1lc3NhZ2VzOiBhbnkpIHtcbiAgICAgICAgaWYgKGVycm9yTWVzc2FnZXMpXG4gICAgICAgICAgICByZXR1cm4gdGhpcy5pc0Z1bmN0aW9uKGVycm9yTWVzc2FnZXMpXG4gICAgICAgICAgICAgICAgPyB7IC4uLnRoaXMuZXJyb3JNZXNzYWdlcywgLi4uZXJyb3JNZXNzYWdlcygpIH1cbiAgICAgICAgICAgICAgICA6IHsgLi4udGhpcy5lcnJvck1lc3NhZ2VzLCAuLi5lcnJvck1lc3NhZ2VzIH07XG4gICAgICAgIHJldHVybiB0aGlzLmVycm9yTWVzc2FnZXM7XG4gICAgfVxuXG4gICAgcHVibGljIGlzRnVuY3Rpb24odmFsdWU6IGFueSk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdmFsdWUgaW5zdGFuY2VvZiBGdW5jdGlvbjtcbiAgICB9XG59XG4iXX0=
50
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHluYW1pYy1maWVsZC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9Ac2VuaW9yc2lzdGVtYXMvYW5ndWxhci1jb21wb25lbnRzLyIsInNvdXJjZXMiOlsiY29tcG9uZW50cy9keW5hbWljLWZvcm0vZHluYW1pYy1maWVsZC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBdUJ6RCxJQUFhLHFCQUFxQixHQUFsQyxNQUFhLHFCQUFxQjtJQWE5QixnQkFBZSxDQUFDO0lBRVQsUUFBUSxLQUFJLENBQUM7SUFFYixnQkFBZ0IsQ0FBQyxhQUFrQjtRQUN0QyxJQUFJLGFBQWE7WUFDYixPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsYUFBYSxDQUFDO2dCQUNqQyxDQUFDLGlDQUFNLElBQUksQ0FBQyxhQUFhLEdBQUssYUFBYSxFQUFFLEVBQzdDLENBQUMsaUNBQU0sSUFBSSxDQUFDLGFBQWEsR0FBSyxhQUFhLENBQUUsQ0FBQztRQUN0RCxPQUFPLElBQUksQ0FBQyxhQUFhLENBQUM7SUFDOUIsQ0FBQztJQUVNLFVBQVUsQ0FBQyxLQUFVO1FBQ3hCLE9BQU8sS0FBSyxZQUFZLFFBQVEsQ0FBQztJQUNyQyxDQUFDO0NBQ0osQ0FBQTtBQTFCRztJQURDLEtBQUssRUFBRTtpREFDVTtBQUdsQjtJQURDLEtBQUssRUFBRTtxREFDbUI7QUFHM0I7SUFEQyxLQUFLLEVBQUU7bURBQ2U7QUFHdkI7SUFEQyxLQUFLLEVBQUU7NERBQ21CO0FBWGxCLHFCQUFxQjtJQW5CakMsU0FBUyxDQUFDO1FBQ1AsUUFBUSxFQUFFLGlCQUFpQjtRQUMzQixRQUFRLEVBQUU7Ozs7Ozs7Ozs7Ozs7OztLQWVUO0tBQ0osQ0FBQztHQUNXLHFCQUFxQixDQTRCakM7U0E1QlkscUJBQXFCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgT25Jbml0IH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7IEZvcm1Hcm91cCB9IGZyb20gXCJAYW5ndWxhci9mb3Jtc1wiO1xuaW1wb3J0IHsgRm9ybUZpZWxkIH0gZnJvbSBcIi4vY29uZmlndXJhdGlvbnMvZm9ybS1maWVsZFwiO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogXCJzLWR5bmFtaWMtZmllbGRcIixcbiAgICB0ZW1wbGF0ZTogYFxuICAgICAgICA8ZGl2IGNsYXNzPVwidWktZmx1aWRcIiBbZm9ybUdyb3VwXT1cImZvcm1cIj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ1aS1nXCI+XG4gICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgZmllbGQgb2YgZmllbGRzXCI+XG4gICAgICAgICAgICAgICAgICAgIDxkaXYgW25nQ2xhc3NdPVwiZmllbGQuZ3JpZENsYXNzXCIgKm5nSWY9XCJmaWVsZC52aXNpYmxlKClcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwiZmllbGQubGFiZWxcIj48bGFiZWwgW2Zvcl09XCJmaWVsZC5uYW1lXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbmdDbGFzc109XCJ7ICdyZXF1aXJlZCc6IGZpZWxkLnJlcXVpcmVkKCkgfVwiICpzSW5mb1NpZ249XCJmaWVsZC5pbmZvU2lnblwiPnt7IGZpZWxkLmxhYmVsIH19PC9sYWJlbD48L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpzRHluYW1pY0Zvcm09XCJ7IGlkOiBpZCwgY29uZmlnOiBmaWVsZCwgZ3JvdXA6IGZvcm19XCI+PC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8cy1jb250cm9sLWVycm9ycyBbZm9ybV09XCJmb3JtXCIgW2NvbnRyb2xdPVwiZm9ybS5jb250cm9sc1tmaWVsZC5uYW1lXVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgW2Vycm9yTWVzc2FnZXNdPVwiZ2V0RXJyb3JNZXNzYWdlcyhmaWVsZC5lcnJvck1lc3NhZ2VzKVwiPjwvcy1jb250cm9sLWVycm9ycz5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSAqbmdJZj1cImZpZWxkPy5ib3R0b21UZW1wbGF0ZVwiIFtuZ1RlbXBsYXRlT3V0bGV0XT1cImZpZWxkLmJvdHRvbVRlbXBsYXRlXCI+PC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgYCxcbn0pXG5leHBvcnQgY2xhc3MgRHluYW1pY0ZpZWxkQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyBpZDogc3RyaW5nO1xuXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgZmllbGRzOiBGb3JtRmllbGRbXTtcblxuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIGZvcm06IEZvcm1Hcm91cDtcblxuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIGVycm9yTWVzc2FnZXM/OiBhbnk7XG5cbiAgICBjb25zdHJ1Y3RvcigpIHt9XG5cbiAgICBwdWJsaWMgbmdPbkluaXQoKSB7fVxuXG4gICAgcHVibGljIGdldEVycm9yTWVzc2FnZXMoZXJyb3JNZXNzYWdlczogYW55KSB7XG4gICAgICAgIGlmIChlcnJvck1lc3NhZ2VzKVxuICAgICAgICAgICAgcmV0dXJuIHRoaXMuaXNGdW5jdGlvbihlcnJvck1lc3NhZ2VzKVxuICAgICAgICAgICAgICAgID8geyAuLi50aGlzLmVycm9yTWVzc2FnZXMsIC4uLmVycm9yTWVzc2FnZXMoKSB9XG4gICAgICAgICAgICAgICAgOiB7IC4uLnRoaXMuZXJyb3JNZXNzYWdlcywgLi4uZXJyb3JNZXNzYWdlcyB9O1xuICAgICAgICByZXR1cm4gdGhpcy5lcnJvck1lc3NhZ2VzO1xuICAgIH1cblxuICAgIHB1YmxpYyBpc0Z1bmN0aW9uKHZhbHVlOiBhbnkpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHZhbHVlIGluc3RhbmNlb2YgRnVuY3Rpb247XG4gICAgfVxufVxuIl19
@@ -1,2 +1,4 @@
1
+ export { MobileBehavior } from "./mobile-behavior";
1
2
  export { TooltipPosition } from "./tooltip-position";
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290Ijoibmc6Ly9Ac2VuaW9yc2lzdGVtYXMvYW5ndWxhci1jb21wb25lbnRzLyIsInNvdXJjZXMiOlsiY29tcG9uZW50cy90b29sdGlwL21vZGVscy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sb0JBQW9CLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgeyBUb29sdGlwUG9zaXRpb24gfSBmcm9tIFwiLi90b29sdGlwLXBvc2l0aW9uXCI7XG4iXX0=
3
+ export { TooltipEvent } from "./tooltip-event";
4
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290Ijoibmc6Ly9Ac2VuaW9yc2lzdGVtYXMvYW5ndWxhci1jb21wb25lbnRzLyIsInNvdXJjZXMiOlsiY29tcG9uZW50cy90b29sdGlwL21vZGVscy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sbUJBQW1CLENBQUE7QUFDbEQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ3JELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCB7IE1vYmlsZUJlaGF2aW9yIH0gZnJvbSBcIi4vbW9iaWxlLWJlaGF2aW9yXCJcbmV4cG9ydCB7IFRvb2x0aXBQb3NpdGlvbiB9IGZyb20gXCIuL3Rvb2x0aXAtcG9zaXRpb25cIjtcbmV4cG9ydCB7IFRvb2x0aXBFdmVudCB9IGZyb20gXCIuL3Rvb2x0aXAtZXZlbnRcIjsiXX0=
@@ -0,0 +1,6 @@
1
+ export var TooltipEvent;
2
+ (function (TooltipEvent) {
3
+ TooltipEvent["Focus"] = "focus";
4
+ TooltipEvent["Hover"] = "hover";
5
+ })(TooltipEvent || (TooltipEvent = {}));
6
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbHRpcC1ldmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BzZW5pb3JzaXN0ZW1hcy9hbmd1bGFyLWNvbXBvbmVudHMvIiwic291cmNlcyI6WyJjb21wb25lbnRzL3Rvb2x0aXAvbW9kZWxzL3Rvb2x0aXAtZXZlbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFOLElBQVksWUFHWDtBQUhELFdBQVksWUFBWTtJQUNyQiwrQkFBZSxDQUFBO0lBQ2YsK0JBQWUsQ0FBQTtBQUNsQixDQUFDLEVBSFcsWUFBWSxLQUFaLFlBQVksUUFHdkIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgZW51bSBUb29sdGlwRXZlbnQge1xuICAgRm9jdXMgPSBcImZvY3VzXCIsXG4gICBIb3ZlciA9IFwiaG92ZXJcIixcbn0iXX0=
@@ -1,7 +1,6 @@
1
1
  import { __decorate } from "tslib";
2
2
  import { ApplicationRef, ComponentFactoryResolver, ComponentRef, Directive, ElementRef, EmbeddedViewRef, HostListener, Injector, Input, OnDestroy, OnInit } from "@angular/core";
3
- import { MobileBehavior } from "./models/mobile-behavior";
4
- import { TooltipPosition } from "./models/tooltip-position";
3
+ import { MobileBehavior, TooltipEvent, TooltipPosition } from "./models";
5
4
  import { TooltipComponent } from "./tooltip.component";
6
5
  let TooltipDirective = class TooltipDirective {
7
6
  constructor(elementRef, appRef, componentFactoryResolver, injector) {
@@ -11,7 +10,9 @@ let TooltipDirective = class TooltipDirective {
11
10
  this.injector = injector;
12
11
  this.position = TooltipPosition.Top;
13
12
  this.showDelay = 500;
13
+ this.tooltipEvent = TooltipEvent.Hover;
14
14
  this.escape = false;
15
+ this.visible = true;
15
16
  this.mobileBehavior = MobileBehavior.Pressing;
16
17
  this.componentRef = null;
17
18
  }
@@ -24,28 +25,50 @@ let TooltipDirective = class TooltipDirective {
24
25
  // whenever the component with the tooltip is clicked I destroy the tooltip.
25
26
  // whenever a key is pressed on the component with the tooltip I destroy the tooltip.
26
27
  onClick() {
27
- if (!navigator.userAgent.match(/Android/i) && !navigator.userAgent.match(/iPhone/i)) {
28
+ if (this.tooltipEvent === TooltipEvent.Hover &&
29
+ !navigator.userAgent.match(/Android/i) &&
30
+ !navigator.userAgent.match(/iPhone/i)) {
28
31
  this.destroy();
29
32
  }
30
33
  }
31
34
  // whenever you touch outside the component with the tooltip I destroy the tooltip.
32
35
  onDocumentTouchStart() {
33
- this.destroy();
36
+ if (this.tooltipEvent === TooltipEvent.Hover) {
37
+ this.destroy();
38
+ }
39
+ }
40
+ onFocus() {
41
+ if (this.tooltipEvent === TooltipEvent.Focus) {
42
+ this.createTootip();
43
+ }
44
+ }
45
+ onBlur() {
46
+ if (this.tooltipEvent === TooltipEvent.Focus) {
47
+ this.destroy();
48
+ }
34
49
  }
35
50
  onMouseEnter() {
36
- this.createTootip();
51
+ if (this.tooltipEvent === TooltipEvent.Hover) {
52
+ this.createTootip();
53
+ }
37
54
  }
38
55
  onMouseLeave() {
39
- this.setHideTooltipTimeout();
56
+ if (this.tooltipEvent === TooltipEvent.Hover) {
57
+ this.setHideTooltipTimeout();
58
+ }
40
59
  }
41
60
  onTouchStart() {
42
- window.clearTimeout(this.touchTimeout);
43
- this.touchTimeout = window.setTimeout(this.createTootip.bind(this), this.mobileBehavior === MobileBehavior.Pressing ? this.showDelay : 0);
61
+ if (this.tooltipEvent === TooltipEvent.Hover) {
62
+ window.clearTimeout(this.touchTimeout);
63
+ this.touchTimeout = window.setTimeout(this.createTootip.bind(this), this.mobileBehavior === MobileBehavior.Pressing ? this.showDelay : 0);
64
+ }
44
65
  }
45
66
  onTouchEnd() {
46
- if (this.mobileBehavior === MobileBehavior.Pressing) {
47
- window.clearTimeout(this.touchTimeout);
48
- this.setHideTooltipTimeout();
67
+ if (this.tooltipEvent === TooltipEvent.Hover) {
68
+ if (this.mobileBehavior === MobileBehavior.Pressing) {
69
+ window.clearTimeout(this.touchTimeout);
70
+ this.setHideTooltipTimeout();
71
+ }
49
72
  }
50
73
  }
51
74
  validatePosition() {
@@ -206,9 +229,15 @@ __decorate([
206
229
  __decorate([
207
230
  Input()
208
231
  ], TooltipDirective.prototype, "displayTime", void 0);
232
+ __decorate([
233
+ Input()
234
+ ], TooltipDirective.prototype, "tooltipEvent", void 0);
209
235
  __decorate([
210
236
  Input()
211
237
  ], TooltipDirective.prototype, "escape", void 0);
238
+ __decorate([
239
+ Input()
240
+ ], TooltipDirective.prototype, "visible", void 0);
212
241
  __decorate([
213
242
  Input()
214
243
  ], TooltipDirective.prototype, "mobileBehavior", void 0);
@@ -219,6 +248,12 @@ __decorate([
219
248
  __decorate([
220
249
  HostListener("document:touchstart")
221
250
  ], TooltipDirective.prototype, "onDocumentTouchStart", null);
251
+ __decorate([
252
+ HostListener("focus")
253
+ ], TooltipDirective.prototype, "onFocus", null);
254
+ __decorate([
255
+ HostListener("blur")
256
+ ], TooltipDirective.prototype, "onBlur", null);
222
257
  __decorate([
223
258
  HostListener("mouseenter")
224
259
  ], TooltipDirective.prototype, "onMouseEnter", null);
@@ -237,4 +272,4 @@ TooltipDirective = __decorate([
237
272
  })
238
273
  ], TooltipDirective);
239
274
  export { TooltipDirective };
240
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbHRpcC5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9Ac2VuaW9yc2lzdGVtYXMvYW5ndWxhci1jb21wb25lbnRzLyIsInNvdXJjZXMiOlsiY29tcG9uZW50cy90b29sdGlwL3Rvb2x0aXAuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQ0osY0FBYyxFQUNkLHdCQUF3QixFQUN4QixZQUFZLEVBQ1osU0FBUyxFQUNULFVBQVUsRUFDVixlQUFlLEVBQ2YsWUFBWSxFQUNaLFFBQVEsRUFDUixLQUFLLEVBQ0wsU0FBUyxFQUNULE1BQU0sRUFDUixNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDMUQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQzVELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBS3ZELElBQWEsZ0JBQWdCLEdBQTdCLE1BQWEsZ0JBQWdCO0lBdUIxQixZQUNXLFVBQXNCLEVBQ3RCLE1BQXNCLEVBQ3RCLHdCQUFrRCxFQUNsRCxRQUFrQjtRQUhsQixlQUFVLEdBQVYsVUFBVSxDQUFZO1FBQ3RCLFdBQU0sR0FBTixNQUFNLENBQWdCO1FBQ3RCLDZCQUF3QixHQUF4Qix3QkFBd0IsQ0FBMEI7UUFDbEQsYUFBUSxHQUFSLFFBQVEsQ0FBVTtRQXRCdEIsYUFBUSxHQUFvQixlQUFlLENBQUMsR0FBRyxDQUFDO1FBR2hELGNBQVMsR0FBRyxHQUFHLENBQUM7UUFNaEIsV0FBTSxHQUFHLEtBQUssQ0FBQztRQUdmLG1CQUFjLEdBQUcsY0FBYyxDQUFDLFFBQVEsQ0FBQztRQUV4QyxpQkFBWSxHQUFzQixJQUFJLENBQUM7SUFTM0MsQ0FBQztJQUVFLFFBQVE7UUFDWixJQUFJLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztJQUMzQixDQUFDO0lBRU0sV0FBVztRQUNmLElBQUksQ0FBQyxPQUFP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LENBQUM7a0RBTXhCO0FBL0VTLGdCQUFnQjtJQUg1QixTQUFTLENBQUM7UUFDUixRQUFRLEVBQUUsWUFBWTtLQUN4QixDQUFDO0dBQ1csZ0JBQWdCLENBc1A1QjtTQXRQWSxnQkFBZ0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICAgQXBwbGljYXRpb25SZWYsXG4gICBDb21wb25lbnRGYWN0b3J5UmVzb2x2ZXIsXG4gICBDb21wb25lbnRSZWYsXG4gICBEaXJlY3RpdmUsXG4gICBFbGVtZW50UmVmLFxuICAgRW1iZWRkZWRWaWV3UmVmLFxuICAgSG9zdExpc3RlbmVyLFxuICAgSW5qZWN0b3IsXG4gICBJbnB1dCxcbiAgIE9uRGVzdHJveSxcbiAgIE9uSW5pdFxufSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuXG5pbXBvcnQgeyBNb2JpbGVCZWhhdmlvciB9IGZyb20gXCIuL21vZGVscy9tb2JpbGUtYmVoYXZpb3JcIjtcbmltcG9ydCB7IFRvb2x0aXBQb3NpdGlvbiB9IGZyb20gXCIuL21vZGVscy90b29sdGlwLXBvc2l0aW9uXCI7XG5pbXBvcnQgeyBUb29sdGlwQ29tcG9uZW50IH0gZnJvbSBcIi4vdG9vbHRpcC5jb21wb25lbnRcIjtcblxuQERpcmVjdGl2ZSh7XG4gICBzZWxlY3RvcjogXCJbc1Rvb2x0aXBdXCIsXG59KVxuZXhwb3J0IGNsYXNzIFRvb2x0aXBEaXJlY3RpdmUgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG4gICBASW5wdXQoXCJzVG9vbHRpcFwiKVxuICAgcHVibGljIHRvb2x0aXA6IHN0cmluZztcblxuICAgQElucHV0KFwidG9vbHRpcFBvc2l0aW9uXCIpXG4gICBwdWJsaWMgcG9zaXRpb246IFRvb2x0aXBQb3NpdGlvbiA9IFRvb2x0aXBQb3NpdGlvbi5Ub3A7XG5cbiAgIEBJbnB1dCgpXG4gICBwdWJsaWMgc2hvd0RlbGF5ID0gNTAwO1xuXG4gICBASW5wdXQoKVxuICAgcHVibGljIGRpc3BsYXlUaW1lOiBudW1iZXI7XG5cbiAgIEBJbnB1dCgpXG4gICBwdWJsaWMgZXNjYXBlID0gZmFsc2U7XG5cbiAgIEBJbnB1dCgpXG4gICBwdWJsaWMgbW9iaWxlQmVoYXZpb3IgPSBNb2JpbGVCZWhhdmlvci5QcmVzc2luZztcblxuICAgcHJpdmF0ZSBjb21wb25lbnRSZWY6IENvbXBvbmVudFJlZjxhbnk+ID0gbnVsbDtcbiAgIHByaXZhdGUgc2hvd1RpbWVvdXQ/OiBudW1iZXI7XG4gICBwcml2YXRlIHRvdWNoVGltZW91dD86IG51bWJlcjtcblxuICAgY29uc3RydWN0b3IoXG4gICAgICBwcml2YXRlIGVsZW1lbnRSZWY6IEVsZW1lbnRSZWYsXG4gICAgICBwcml2YXRlIGFwcFJlZjogQXBwbGljYXRpb25SZWYsXG4gICAgICBwcml2YXRlIGNvbXBvbmVudEZhY3RvcnlSZXNvbHZlcjogQ29tcG9uZW50RmFjdG9yeVJlc29sdmVyLFxuICAgICAgcHJpdmF0ZSBpbmplY3RvcjogSW5qZWN0b3IsXG4gICApIHsgfVxuXG4gICBwdWJsaWMgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgICB0aGlzLnZhbGlkYXRlUG9zaXRpb24oKTtcbiAgIH1cblxuICAgcHVibGljIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgICAgdGhpcy5kZXN0cm95KCk7XG4gICB9XG5cbiAgIC8vIHdoZW5ldmVyIHRoZSBjb21wb25lbnQgd2l0aCB0aGUgdG9vbHRpcCBpcyBjbGlja2VkIEkgZGVzdHJveSB0aGUgdG9vbHRpcC5cbiAgIC8vIHdoZW5ldmVyIGEga2V5IGlzIHByZXNzZWQgb24gdGhlIGNvbXBvbmVudCB3aXRoIHRoZSB0b29sdGlwIEkgZGVzdHJveSB0aGUgdG9vbHRpcC5cbiAgIEBIb3N0TGlzdGVuZXIoXCJjbGlja1wiKVxuICAgQEhvc3RMaXN0ZW5lcihcImtleWRvd25cIilcbiAgIHB1YmxpYyBvbkNsaWNrKCk6IHZvaWQge1xuICAgICAgaWYgKCFuYXZpZ2F0b3IudXNlckFnZW50Lm1hdGNoKC9BbmRyb2lkL2kpICYmICFuYXZpZ2F0b3IudXNlckFnZW50Lm1hdGNoKC9pUGhvbmUvaSkpIHtcbiAgICAgICAgIHRoaXMuZGVzdHJveSgpO1xuICAgICAgfVxuICAgfVxuXG4gICAvLyB3aGVuZXZlciB5b3UgdG91Y2ggb3V0c2lkZSB0aGUgY29tcG9uZW50IHdpdGggdGhlIHRvb2x0aXAgSSBkZXN0cm95IHRoZSB0b29sdGlwLlxuICAgQEhvc3RMaXN0ZW5lcihcImRvY3VtZW50OnRvdWNoc3RhcnRcIilcbiAgIHB1YmxpYyBvbkRvY3VtZW50VG91Y2hTdGFydCgpOiB2b2lkIHtcbiAgICAgIHRoaXMuZGVzdHJveSgpO1xuICAgfVxuXG4gICBASG9zdExpc3RlbmVyKFwibW91c2VlbnRlclwiKVxuICAgcHVibGljIG9uTW91c2VFbnRlcigpOiB2b2lkIHtcbiAgICAgIHRoaXMuY3JlYXRlVG9vdGlwKCk7XG4gICB9XG5cbiAgIEBIb3N0TGlzdGVuZXIoXCJtb3VzZWxlYXZlXCIpXG4gICBwdWJsaWMgb25Nb3VzZUxlYXZlKCk6IHZvaWQge1xuICAgICAgdGhpcy5zZXRIaWRlVG9vbHRpcFRpbWVvdXQoKTtcbiAgIH1cblxuICAgQEhvc3RMaXN0ZW5lcihcInRvdWNoc3RhcnRcIilcbiAgIHB1YmxpYyBvblRvdWNoU3RhcnQoKTogdm9pZCB7XG4gICAgICB3aW5kb3cuY2xlYXJUaW1lb3V0KHRoaXMudG91Y2hUaW1lb3V0KTtcbiAgICAgIHRoaXMudG91Y2hUaW1lb3V0ID0gd2luZG93LnNldFRpbWVvdXQoXG4gICAgICAgICB0aGlzLmNyZWF0ZVRvb3RpcC5iaW5kKHRoaXMpLFxuICAgICAgICAgdGhpcy5tb2JpbGVCZWhhdmlvciA9PT0gTW9iaWxlQmVoYXZpb3IuUHJlc3NpbmcgPyB0aGlzLnNob3dEZWxheSA6IDBcbiAgICAgICk7XG4gICB9XG5cbiAgIEBIb3N0TGlzdGVuZXIoXCJ0b3VjaGVuZFwiKVxuICAgcHVibGljIG9uVG91Y2hFbmQoKTogdm9pZCB7XG4gICAgICBpZiAodGhpcy5tb2JpbGVCZWhhdmlvciA9PT0gTW9iaWxlQmVoYXZpb3IuUHJlc3NpbmcpIHtcbiAgICAgICAgIHdpbmRvdy5jbGVhclRpbWVvdXQodGhpcy50b3VjaFRpbWVvdXQpO1xuICAgICAgICAgdGhpcy5zZXRIaWRlVG9vbHRpcFRpbWVvdXQoKTtcbiAgICAgIH1cbiAgIH1cblxuICAgcHJpdmF0ZSB2YWxpZGF0ZVBvc2l0aW9uKCkge1xuICAgICAgY29uc3QgY29udGFpbnNQb3NpdGlvbiA9IFtcbiAgICAgICAgIFRvb2x0aXBQb3NpdGlvbi5Ub3AsXG4gICAgICAgICBUb29sdGlwUG9zaXRpb24uUmlnaHQsXG4gICAgICAgICBUb29sdGlwUG9zaXRpb24uQm90dG9tLFxuICAgICAgICAgVG9vbHRpcFBvc2l0aW9uLkxlZnQsXG4gICAgICBdLmluY2x1ZGVzKHRoaXMucG9zaXRpb24pO1xuXG4gICAgICBpZiAoIWNvbnRhaW5zUG9zaXRpb24pIHtcbiAgICAgICAgIHRoaXMucG9zaXRpb24gPSBUb29sdGlwUG9zaXRpb24uVG9wO1xuICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBUb29sdGlwICR7dGhpcy5wb3NpdGlvbn0gcG9zaXRpb24gaXMgdW5leHBlY3RlZGApO1xuICAgICAgfVxuICAgfVxuXG4gICBwcml2YXRlIHNldEhpZGVUb29sdGlwVGltZW91dCgpIHtcbiAgICAgIHRoaXMuZGVzdHJveSgpO1xuICAgfVxuXG4gICBwcml2YXRlIGNyZWF0ZVRvb3RpcCgpIHtcbiAgICAgIGlmICh0aGlzLmNvbXBvbmVudFJlZiA9PT0gbnVsbCAmJiB0aGlzLnRvb2x0aXA/Lmxlbmd0aCkge1xuICAgICAgICAgY29uc3QgY29tcG9uZW50RmFjdG9yeSA9IHRoaXMuY29tcG9uZW50RmFjdG9yeVJlc29sdmVyLnJlc29sdmVDb21wb25lbnRGYWN0b3J5KFRvb2x0aXBDb21wb25lbnQpO1xuICAgICAgICAgdGhpcy5jb21wb25lbnRSZWYgPSBjb21wb25lbnRGYWN0b3J5LmNyZWF0ZSh0aGlzLmluamVjdG9yKTtcbiAgICAgICAgIHRoaXMuYXBwUmVmLmF0dGFjaFZpZXcodGhpcy5jb21wb25lbnRSZWYuaG9zdFZpZXcpO1xuICAgICAgICAgY29uc3QgZG9tRWxlbSA9ICh0aGlzLmNvbXBvbmVudFJlZi5ob3N0VmlldyBhcyBFbWJlZGRlZFZpZXdSZWY8YW55Pikucm9vdE5vZGVzWzBdIGFzIEhUTUxFbGVtZW50O1xuICAgICAgICAgZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChkb21FbGVtKTtcbiAgICAgICAgIHRoaXMuc2V0VG9vbHRpcENvbXBvbmVudFByb3BlcnRpZXMoKTtcbiAgICAgICAgIHRoaXMuc2hvd1RpbWVvdXQgPSB3aW5kb3cuc2V0VGltZW91dCh0aGlzLnNob3dUb29sdGlwLmJpbmQodGhpcyksIHRoaXMuc2hvd0RlbGF5KTtcblxuICAgICAgICAgaWYgKHRoaXMuZGlzcGxheVRpbWUpIHtcbiAgICAgICAgICAgIHdpbmRvdy5zZXRUaW1lb3V0KHRoaXMuZGVzdHJveS5iaW5kKHRoaXMpLCB0aGlzLmRpc3BsYXlUaW1lKTtcbiAgICAgICAgIH1cbiAgICAgIH1cbiAgIH1cblxuICAgcHJpdmF0ZSBzaG93VG9vbHRpcCgpIHtcbiAgICAgIGlmICh0aGlzLmNvbXBvbmVudFJlZiAhPT0gbnVsbCkge1xuICAgICAgICAgdGhpcy5jb21wb25lbnRSZWYuaW5zdGFuY2UudmlzaWJsZSA9IHRydWU7XG4gICAgICB9XG4gICB9XG5cbiAgIHByaXZhdGUgc2V0VG9vbHRpcENvbXBvbmVudFByb3BlcnRpZXMoKSB7XG4gICAgICBjb25zdCBtYXJnaW4gPSAyMDtcbiAgICAgIGNvbnN0IGFuY2hvclNpemUgPSA1O1xuXG4gICAgICBpZiAodGhpcy5jb21wb25lbnRSZWYgIT09IG51bGwpIHtcbiAgICAgICAgIHRoaXMuY29tcG9uZW50UmVmLmluc3RhbmNlLnRvb2x0aXAgPSB0aGlzLnRvb2x0aXA7XG4gICAgICAgICB0aGlzLmNvbXBvbmVudFJlZi5pbnN0YW5jZS5lc2NhcGUgPSB0aGlzLmVzY2FwZTtcblxuICAgICAgICAgY29uc3QgeyBsZWZ0LCByaWdodCwgdG9wLCBib3R0b20gfSA9IHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xuXG4gICAgICAgICBjb25zdCB0b29sdGlwSGVpZ2h0ID0gYm90dG9tIC0gdG9wO1xuICAgICAgICAgY29uc3QgdG9vbHRpcFdpZHRoID0gcmlnaHQgLSBsZWZ0O1xuICAgICAgICAgY29uc3Qgc2FmZVNwYWNlID0gMTUwO1xuXG4gICAgICAgICBsZXQgcG9zaXRpb25lZCA9IGZhbHNlO1xuICAgICAgICAgY29uc3QgaW52YWxpZE9wdGlvbnM6IFRvb2x0aXBQb3NpdGlvbltdID0gW107XG5cbiAgICAgICAgIHdoaWxlICghcG9zaXRpb25lZCkge1xuICAgICAgICAgICAgaWYgKGludmFsaWRPcHRpb25zLmluY2x1ZGVzKFRvb2x0aXBQb3NpdGlvbi5Ub3ApXG4gICAgICAgICAgICAgICAmJiBpbnZhbGlkT3B0aW9ucy5pbmNsdWRlcyhUb29sdGlwUG9zaXRpb24uQm90dG9tKVxuICAgICAgICAgICAgICAgJiYgaW52YWxpZE9wdGlvbnMuaW5jbHVkZXMoVG9vbHRpcFBvc2l0aW9uLkxlZnQpXG4gICAgICAgICAgICAgICAmJiBpbnZhbGlkT3B0aW9ucy5pbmNsdWRlcyhUb29sdGlwUG9zaXRpb24uUmlnaHQpKSB7XG4gICAgICAgICAgICAgICB0aGlzLmRlc3Ryb3koKTtcbiAgICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihcIk5vIHNwYWNlIHRvIHNob3cgdG9vbHRpcFwiKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgc3dpdGNoICh0aGlzLnBvc2l0aW9uKSB7XG4gICAgICAgICAgICAgICBjYXNlIFRvb2x0aXBQb3NpdGlvbi5Ub3A6IHtcbiAgICAgICAgICAgICAgICAgIGlmIChpbnZhbGlkT3B0aW9ucy5pbmNsdWRlcyhUb29sdGlwUG9zaXRpb24uVG9wKSkge1xuICAgICAgICAgICAgICAgICAgICAgdGhpcy5wb3NpdGlvbiA9IFRvb2x0aXBQb3NpdGlvbi5MZWZ0O1xuICAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgIGNvbnN0IHRvcFNoaWZ0ID0gdG9wO1xuXG4gICAgICAgICAgICAgICAgICBpZiAodG9wU2hpZnQgPD0gdG9vbHRpcEhlaWdodCArIHNhZmVTcGFjZSkge1xuICAgICAgICAgICAgICAgICAgICAgdGhpcy5wb3NpdGlvbiA9IFRvb2x0aXBQb3NpdGlvbi5Cb3R0b207XG4gICAgICAgICAgICAgICAgICAgICBpbnZhbGlkT3B0aW9ucy5wdXNoKFRvb2x0aXBQb3NpdGlvbi5Ub3ApO1xuICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb25lZCA9IGZhbHNlO1xuICAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgIHRoaXMuY29tcG9uZW50UmVmLmluc3RhbmNlLmxlZnQgPSBNYXRoLnJvdW5kKHRvb2x0aXBXaWR0aCAvIDIgKyBsZWZ0KTtcbiAgICAgICAgICAgICAgICAgIHRoaXMuY29tcG9uZW50UmVmLmluc3RhbmNlLnRvcCA9IE1hdGgucm91bmQodG9wIC0gbWFyZ2luIC0gYW5jaG9yU2l6ZSk7XG4gICAgICAgICAgICAgICAgICBwb3NpdGlvbmVkID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgY2FzZSBUb29sdGlwUG9zaXRpb24uQm90dG9tOiB7XG5cbiAgICAgICAgICAgICAgICAgIGlmIChpbnZhbGlkT3B0aW9ucy5pbmNsdWRlcyhUb29sdGlwUG9zaXRpb24uQm90dG9tKSkge1xuICAgICAgICAgICAgICAgICAgICAgdGhpcy5wb3NpdGlvbiA9IFRvb2x0aXBQb3NpdGlvbi5MZWZ0O1xuICAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgIGNvbnN0IGJvdHRvbVNoaWZ0ID0gZG9jdW1lbnQuYm9keS5jbGllbnRIZWlnaHQgLSBib3R0b207XG5cbiAgICAgICAgICAgICAgICAgIGlmIChib3R0b21TaGlmdCA8PSB0b29sdGlwSGVpZ2h0ICsgc2FmZVNwYWNlKSB7XG4gICAgICAgICAgICAgICAgICAgICB0aGlzLnBvc2l0aW9uID0gVG9vbHRpcFBvc2l0aW9uLlRvcDtcbiAgICAgICAgICAgICAgICAgICAgIGludmFsaWRPcHRpb25zLnB1c2goVG9vbHRpcFBvc2l0aW9uLkJvdHRvbSk7XG4gICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgdGhpcy5jb21wb25lbnRSZWYuaW5zdGFuY2UubGVmdCA9IE1hdGgucm91bmQodG9vbHRpcFdpZHRoIC8gMiArIGxlZnQpO1xuICAgICAgICAgICAgICAgICAgdGhpcy5jb21wb25lbnRSZWYuaW5zdGFuY2UudG9wID0gTWF0aC5yb3VuZChib3R0b20gKyBtYXJnaW4pO1xuICAgICAgICAgICAgICAgICAgcG9zaXRpb25lZCA9IHRydWU7XG4gICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgIGNhc2UgVG9vbHRpcFBvc2l0aW9uLkxlZnQ6IHtcbiAgICAgICAgICAgICAgICAgIGlmIChpbnZhbGlkT3B0aW9ucy5pbmNsdWRlcyhUb29sdGlwUG9zaXRpb24uTGVmdCkpIHtcbiAgICAgICAgICAgICAgICAgICAgIHRoaXMucG9zaXRpb24gPSBUb29sdGlwUG9zaXRpb24uVG9wO1xuICAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgIGNvbnN0IGxlZnRTaGlmdCA9IGxlZnQ7XG5cbiAgICAgICAgICAgICAgICAgIGlmIChsZWZ0U2hpZnQgPD0gdG9vbHRpcFdpZHRoICsgc2FmZVNwYWNlKSB7XG4gICAgICAgICAgICAgICAgICAgICB0aGlzLnBvc2l0aW9uID0gVG9vbHRpcFBvc2l0aW9uLlJpZ2h0O1xuICAgICAgICAgICAgICAgICAgICAgaW52YWxpZE9wdGlvbnMucHVzaChUb29sdGlwUG9zaXRpb24uTGVmdCk7XG4gICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbmVkID0gZmFsc2U7XG4gICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgdGhpcy5jb21wb25lbnRSZWYuaW5zdGFuY2UubGVmdCA9IE1hdGgucm91bmQobGVmdCAtIG1hcmdpbik7XG4gICAgICAgICAgICAgICAgICB0aGlzLmNvbXBvbmVudFJlZi5pbnN0YW5jZS50b3AgPSBNYXRoLnJvdW5kKHRvcCArIHRvb2x0aXBIZWlnaHQgLyAyIC0gYW5jaG9yU2l6ZSk7XG4gICAgICAgICAgICAgICAgICBwb3NpdGlvbmVkID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgY2FzZSBUb29sdGlwUG9zaXRpb24uUmlnaHQ6IHtcbiAgICAgICAgICAgICAgICAgIGlmIChpbnZhbGlkT3B0aW9ucy5pbmNsdWRlcyhUb29sdGlwUG9zaXRpb24uUmlnaHQpKSB7XG4gICAgICAgICAgICAgICAgICAgICB0aGlzLnBvc2l0aW9uID0gVG9vbHRpcFBvc2l0aW9uLlRvcDtcbiAgICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICBjb25zdCByaWdodFNoaWZ0ID0gZG9jdW1lbnQuYm9keS5jbGllbnRXaWR0aCAtIHJpZ2h0O1xuXG4gICAgICAgICAgICAgICAgICBpZiAocmlnaHRTaGlmdCA8PSB0b29sdGlwV2lkdGggKyBzYWZlU3BhY2UpIHtcbiAgICAgICAgICAgICAgICAgICAgIHRoaXMucG9zaXRpb24gPSBUb29sdGlwUG9zaXRpb24uTGVmdDtcbiAgICAgICAgICAgICAgICAgICAgIGludmFsaWRPcHRpb25zLnB1c2goVG9vbHRpcFBvc2l0aW9uLlJpZ2h0KTtcbiAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uZWQgPSBmYWxzZTtcbiAgICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICB0aGlzLmNvbXBvbmVudFJlZi5pbnN0YW5jZS5sZWZ0ID0gTWF0aC5yb3VuZChyaWdodCArIG1hcmdpbik7XG4gICAgICAgICAgICAgICAgICB0aGlzLmNvbXBvbmVudFJlZi5pbnN0YW5jZS50b3AgPSBNYXRoLnJvdW5kKHRvcCArIHRvb2x0aXBIZWlnaHQgLyAyIC0gYW5jaG9yU2l6ZSk7XG4gICAgICAgICAgICAgICAgICBwb3NpdGlvbmVkID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgZGVmYXVsdDoge1xuICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHRoaXMuY29tcG9uZW50UmVmLmluc3RhbmNlLnBvc2l0aW9uID0gdGhpcy5wb3NpdGlvbjtcbiAgICAgICAgIH1cbiAgICAgIH1cbiAgIH1cblxuICAgcHJpdmF0ZSBkZXN0cm95KCk6IHZvaWQge1xuICAgICAgaWYgKHRoaXMuY29tcG9uZW50UmVmICE9PSBudWxsKSB7XG4gICAgICAgICB3aW5kb3cuY2xlYXJUaW1lb3V0KHRoaXMuc2hvd1RpbWVvdXQpO1xuICAgICAgICAgdGhpcy5hcHBSZWYuZGV0YWNoVmlldyh0aGlzLmNvbXBvbmVudFJlZi5ob3N0Vmlldyk7XG4gICAgICAgICB0aGlzLmNvbXBvbmVudFJlZi5kZXN0cm95KCk7XG4gICAgICAgICB0aGlzLmNvbXBvbmVudFJlZiA9IG51bGw7XG4gICAgICB9XG4gICB9XG59XG4iXX0=
275
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbHRpcC5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9Ac2VuaW9yc2lzdGVtYXMvYW5ndWxhci1jb21wb25lbnRzLyIsInNvdXJjZXMiOlsiY29tcG9uZW50cy90b29sdGlwL3Rvb2x0aXAuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQ0osY0FBYyxFQUNkLHdCQUF3QixFQUN4QixZQUFZLEVBQ1osU0FBUyxFQUNULFVBQVUsRUFDVixlQUFlLEVBQ2YsWUFBWSxFQUNaLFFBQVEsRUFDUixLQUFLLEVBQ0wsU0FBUyxFQUNULE1BQU0sRUFDUixNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEVBQUUsY0FBYyxFQUFFLFlBQVksRUFBRSxlQUFlLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFDekUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFLdkQsSUFBYSxnQkFBZ0IsR0FBN0IsTUFBYSxnQkFBZ0I7SUE2QjFCLFlBQ1csVUFBc0IsRUFDdEIsTUFBc0IsRUFDdEIsd0JBQWtELEVBQ2xELFFBQWtCO1FBSGxCLGVBQVUsR0FBVixVQUFVLENBQVk7UUFDdEIsV0FBTSxHQUFOLE1BQU0sQ0FBZ0I7UUFDdEIsNkJBQXdCLEdBQXhCLHdCQUF3QixDQUEwQjtRQUNsRCxhQUFRLEdBQVIsUUFBUSxDQUFVO1FBNUJ0QixhQUFRLEdBQW9CLGVBQWUsQ0FBQyxHQUFHLENBQUM7UUFHaEQsY0FBUyxHQUFHLEdBQUcsQ0FBQztRQU1oQixpQkFBWSxHQUFHLFlBQVksQ0FBQyxLQUFLLENBQUM7UUFHbEMsV0FBTSxHQUFHLEtBQUssQ0FBQztRQUdmLFlBQU8sR0FBRyxJQUFJLENBQUM7UUFHZixtQkFBYyxHQUFHLGNBQWMsQ0FBQyxRQUFRLENBQUM7UUFFeEMsaUJBQVksR0FBc0IsSUFBSSxDQUFDO0lBUzNDLENBQUM7SUFFRSxRQUFRO1FBQ1osSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUM7SUFD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Q25ELElBQUksQ0FBQyxZQUFZLENBQUMsT0FBTyxFQUFFLENBQUM7WUFDNUIsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUM7U0FDM0I7SUFDSixDQUFDO0NBQ0gsQ0FBQTs7WUF4UHlCLFVBQVU7WUFDZCxjQUFjO1lBQ0ksd0JBQXdCO1lBQ3hDLFFBQVE7O0FBL0I3QjtJQURDLEtBQUssQ0FBQyxVQUFVLENBQUM7aURBQ0s7QUFHdkI7SUFEQyxLQUFLLENBQUMsaUJBQWlCLENBQUM7a0RBQzhCO0FBR3ZEO0lBREMsS0FBSyxFQUFFO21EQUNlO0FBR3ZCO0lBREMsS0FBSyxFQUFFO3FEQUNtQjtBQUczQjtJQURDLEtBQUssRUFBRTtzREFDaUM7QUFHekM7SUFEQyxLQUFLLEVBQUU7Z0RBQ2M7QUFHdEI7SUFEQyxLQUFLLEVBQUU7aURBQ2M7QUFHdEI7SUFEQyxLQUFLLEVBQUU7d0RBQ3dDO0FBeUJoRDtJQUZDLFlBQVksQ0FBQyxPQUFPLENBQUM7SUFDckIsWUFBWSxDQUFDLFNBQVMsQ0FBQzsrQ0FPdkI7QUFJRDtJQURDLFlBQVksQ0FBQyxxQkFBcUIsQ0FBQzs0REFLbkM7QUFHRDtJQURDLFlBQVksQ0FBQyxPQUFPLENBQUM7K0NBS3JCO0FBR0Q7SUFEQyxZQUFZLENBQUMsTUFBTSxDQUFDOzhDQUtwQjtBQUdEO0lBREMsWUFBWSxDQUFDLFlBQVksQ0FBQztvREFLMUI7QUFHRDtJQURDLFlBQVksQ0FBQyxZQUFZLENBQUM7b0RBSzFCO0FBR0Q7SUFEQyxZQUFZLENBQUMsWUFBWSxDQUFDO29EQVMxQjtBQUdEO0lBREMsWUFBWSxDQUFDLFVBQVUsQ0FBQztrREFReEI7QUEvR1MsZ0JBQWdCO0lBSDVCLFNBQVMsQ0FBQztRQUNSLFFBQVEsRUFBRSxZQUFZO0tBQ3hCLENBQUM7R0FDVyxnQkFBZ0IsQ0FzUjVCO1NBdFJZLGdCQUFnQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gICBBcHBsaWNhdGlvblJlZixcbiAgIENvbXBvbmVudEZhY3RvcnlSZXNvbHZlcixcbiAgIENvbXBvbmVudFJlZixcbiAgIERpcmVjdGl2ZSxcbiAgIEVsZW1lbnRSZWYsXG4gICBFbWJlZGRlZFZpZXdSZWYsXG4gICBIb3N0TGlzdGVuZXIsXG4gICBJbmplY3RvcixcbiAgIElucHV0LFxuICAgT25EZXN0cm95LFxuICAgT25Jbml0XG59IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5cbmltcG9ydCB7IE1vYmlsZUJlaGF2aW9yLCBUb29sdGlwRXZlbnQsIFRvb2x0aXBQb3NpdGlvbiB9IGZyb20gXCIuL21vZGVsc1wiO1xuaW1wb3J0IHsgVG9vbHRpcENvbXBvbmVudCB9IGZyb20gXCIuL3Rvb2x0aXAuY29tcG9uZW50XCI7XG5cbkBEaXJlY3RpdmUoe1xuICAgc2VsZWN0b3I6IFwiW3NUb29sdGlwXVwiLFxufSlcbmV4cG9ydCBjbGFzcyBUb29sdGlwRGlyZWN0aXZlIGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuICAgQElucHV0KFwic1Rvb2x0aXBcIilcbiAgIHB1YmxpYyB0b29sdGlwOiBzdHJpbmc7XG5cbiAgIEBJbnB1dChcInRvb2x0aXBQb3NpdGlvblwiKVxuICAgcHVibGljIHBvc2l0aW9uOiBUb29sdGlwUG9zaXRpb24gPSBUb29sdGlwUG9zaXRpb24uVG9wO1xuXG4gICBASW5wdXQoKVxuICAgcHVibGljIHNob3dEZWxheSA9IDUwMDtcblxuICAgQElucHV0KClcbiAgIHB1YmxpYyBkaXNwbGF5VGltZTogbnVtYmVyO1xuXG4gICBASW5wdXQoKVxuICAgcHVibGljIHRvb2x0aXBFdmVudCA9IFRvb2x0aXBFdmVudC5Ib3ZlcjtcblxuICAgQElucHV0KClcbiAgIHB1YmxpYyBlc2NhcGUgPSBmYWxzZTtcblxuICAgQElucHV0KClcbiAgIHB1YmxpYyB2aXNpYmxlID0gdHJ1ZTtcblxuICAgQElucHV0KClcbiAgIHB1YmxpYyBtb2JpbGVCZWhhdmlvciA9IE1vYmlsZUJlaGF2aW9yLlByZXNzaW5nO1xuXG4gICBwcml2YXRlIGNvbXBvbmVudFJlZjogQ29tcG9uZW50UmVmPGFueT4gPSBudWxsO1xuICAgcHJpdmF0ZSBzaG93VGltZW91dD86IG51bWJlcjtcbiAgIHByaXZhdGUgdG91Y2hUaW1lb3V0PzogbnVtYmVyO1xuXG4gICBjb25zdHJ1Y3RvcihcbiAgICAgIHByaXZhdGUgZWxlbWVudFJlZjogRWxlbWVudFJlZixcbiAgICAgIHByaXZhdGUgYXBwUmVmOiBBcHBsaWNhdGlvblJlZixcbiAgICAgIHByaXZhdGUgY29tcG9uZW50RmFjdG9yeVJlc29sdmVyOiBDb21wb25lbnRGYWN0b3J5UmVzb2x2ZXIsXG4gICAgICBwcml2YXRlIGluamVjdG9yOiBJbmplY3RvcixcbiAgICkgeyB9XG5cbiAgIHB1YmxpYyBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAgIHRoaXMudmFsaWRhdGVQb3NpdGlvbigpO1xuICAgfVxuXG4gICBwdWJsaWMgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgICB0aGlzLmRlc3Ryb3koKTtcbiAgIH1cblxuICAgLy8gd2hlbmV2ZXIgdGhlIGNvbXBvbmVudCB3aXRoIHRoZSB0b29sdGlwIGlzIGNsaWNrZWQgSSBkZXN0cm95IHRoZSB0b29sdGlwLlxuICAgLy8gd2hlbmV2ZXIgYSBrZXkgaXMgcHJlc3NlZCBvbiB0aGUgY29tcG9uZW50IHdpdGggdGhlIHRvb2x0aXAgSSBkZXN0cm95IHRoZSB0b29sdGlwLlxuICAgQEhvc3RMaXN0ZW5lcihcImNsaWNrXCIpXG4gICBASG9zdExpc3RlbmVyKFwia2V5ZG93blwiKVxuICAgcHVibGljIG9uQ2xpY2soKTogdm9pZCB7XG4gICAgICBpZiAodGhpcy50b29sdGlwRXZlbnQgPT09IFRvb2x0aXBFdmVudC5Ib3ZlciAmJlxuICAgICAgICAgIW5hdmlnYXRvci51c2VyQWdlbnQubWF0Y2goL0FuZHJvaWQvaSkgJiZcbiAgICAgICAgICFuYXZpZ2F0b3IudXNlckFnZW50Lm1hdGNoKC9pUGhvbmUvaSkpIHtcbiAgICAgICAgIHRoaXMuZGVzdHJveSgpO1xuICAgICAgfVxuICAgfVxuXG4gICAvLyB3aGVuZXZlciB5b3UgdG91Y2ggb3V0c2lkZSB0aGUgY29tcG9uZW50IHdpdGggdGhlIHRvb2x0aXAgSSBkZXN0cm95IHRoZSB0b29sdGlwLlxuICAgQEhvc3RMaXN0ZW5lcihcImRvY3VtZW50OnRvdWNoc3RhcnRcIilcbiAgIHB1YmxpYyBvbkRvY3VtZW50VG91Y2hTdGFydCgpOiB2b2lkIHtcbiAgICAgIGlmICh0aGlzLnRvb2x0aXBFdmVudCA9PT0gVG9vbHRpcEV2ZW50LkhvdmVyKSB7XG4gICAgICAgICB0aGlzLmRlc3Ryb3koKTtcbiAgICAgIH1cbiAgIH1cblxuICAgQEhvc3RMaXN0ZW5lcihcImZvY3VzXCIpXG4gICBwdWJsaWMgb25Gb2N1cygpOiB2b2lkIHtcbiAgICAgIGlmICh0aGlzLnRvb2x0aXBFdmVudCA9PT0gVG9vbHRpcEV2ZW50LkZvY3VzKSB7XG4gICAgICAgICB0aGlzLmNyZWF0ZVRvb3RpcCgpO1xuICAgICAgfVxuICAgfVxuXG4gICBASG9zdExpc3RlbmVyKFwiYmx1clwiKVxuICAgcHVibGljIG9uQmx1cigpOiB2b2lkIHtcbiAgICAgIGlmICh0aGlzLnRvb2x0aXBFdmVudCA9PT0gVG9vbHRpcEV2ZW50LkZvY3VzKSB7XG4gICAgICAgICB0aGlzLmRlc3Ryb3koKTtcbiAgICAgIH1cbiAgIH1cblxuICAgQEhvc3RMaXN0ZW5lcihcIm1vdXNlZW50ZXJcIilcbiAgIHB1YmxpYyBvbk1vdXNlRW50ZXIoKTogdm9pZCB7XG4gICAgICBpZiAodGhpcy50b29sdGlwRXZlbnQgPT09IFRvb2x0aXBFdmVudC5Ib3Zlcikge1xuICAgICAgICAgdGhpcy5jcmVhdGVUb290aXAoKTtcbiAgICAgIH1cbiAgIH1cblxuICAgQEhvc3RMaXN0ZW5lcihcIm1vdXNlbGVhdmVcIilcbiAgIHB1YmxpYyBvbk1vdXNlTGVhdmUoKTogdm9pZCB7XG4gICAgICBpZiAodGhpcy50b29sdGlwRXZlbnQgPT09IFRvb2x0aXBFdmVudC5Ib3Zlcikge1xuICAgICAgICAgdGhpcy5zZXRIaWRlVG9vbHRpcFRpbWVvdXQoKTtcbiAgICAgIH1cbiAgIH1cblxuICAgQEhvc3RMaXN0ZW5lcihcInRvdWNoc3RhcnRcIilcbiAgIHB1YmxpYyBvblRvdWNoU3RhcnQoKTogdm9pZCB7XG4gICAgICBpZiAodGhpcy50b29sdGlwRXZlbnQgPT09IFRvb2x0aXBFdmVudC5Ib3Zlcikge1xuICAgICAgICAgd2luZG93LmNsZWFyVGltZW91dCh0aGlzLnRvdWNoVGltZW91dCk7XG4gICAgICAgICB0aGlzLnRvdWNoVGltZW91dCA9IHdpbmRvdy5zZXRUaW1lb3V0KFxuICAgICAgICAgICAgdGhpcy5jcmVhdGVUb290aXAuYmluZCh0aGlzKSxcbiAgICAgICAgICAgIHRoaXMubW9iaWxlQmVoYXZpb3IgPT09IE1vYmlsZUJlaGF2aW9yLlByZXNzaW5nID8gdGhpcy5zaG93RGVsYXkgOiAwXG4gICAgICAgICApO1xuICAgICAgfVxuICAgfVxuXG4gICBASG9zdExpc3RlbmVyKFwidG91Y2hlbmRcIilcbiAgIHB1YmxpYyBvblRvdWNoRW5kKCk6IHZvaWQge1xuICAgICAgaWYgKHRoaXMudG9vbHRpcEV2ZW50ID09PSBUb29sdGlwRXZlbnQuSG92ZXIpIHtcbiAgICAgICAgIGlmICh0aGlzLm1vYmlsZUJlaGF2aW9yID09PSBNb2JpbGVCZWhhdmlvci5QcmVzc2luZykge1xuICAgICAgICAgICAgd2luZG93LmNsZWFyVGltZW91dCh0aGlzLnRvdWNoVGltZW91dCk7XG4gICAgICAgICAgICB0aGlzLnNldEhpZGVUb29sdGlwVGltZW91dCgpO1xuICAgICAgICAgfVxuICAgICAgfVxuICAgfVxuXG4gICBwcml2YXRlIHZhbGlkYXRlUG9zaXRpb24oKSB7XG4gICAgICBjb25zdCBjb250YWluc1Bvc2l0aW9uID0gW1xuICAgICAgICAgVG9vbHRpcFBvc2l0aW9uLlRvcCxcbiAgICAgICAgIFRvb2x0aXBQb3NpdGlvbi5SaWdodCxcbiAgICAgICAgIFRvb2x0aXBQb3NpdGlvbi5Cb3R0b20sXG4gICAgICAgICBUb29sdGlwUG9zaXRpb24uTGVmdCxcbiAgICAgIF0uaW5jbHVkZXModGhpcy5wb3NpdGlvbik7XG5cbiAgICAgIGlmICghY29udGFpbnNQb3NpdGlvbikge1xuICAgICAgICAgdGhpcy5wb3NpdGlvbiA9IFRvb2x0aXBQb3NpdGlvbi5Ub3A7XG4gICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYFRvb2x0aXAgJHt0aGlzLnBvc2l0aW9ufSBwb3NpdGlvbiBpcyB1bmV4cGVjdGVkYCk7XG4gICAgICB9XG4gICB9XG5cbiAgIHByaXZhdGUgc2V0SGlkZVRvb2x0aXBUaW1lb3V0KCkge1xuICAgICAgdGhpcy5kZXN0cm95KCk7XG4gICB9XG5cbiAgIHByaXZhdGUgY3JlYXRlVG9vdGlwKCkge1xuICAgICAgaWYgKHRoaXMuY29tcG9uZW50UmVmID09PSBudWxsICYmIHRoaXMudG9vbHRpcD8ubGVuZ3RoKSB7XG4gICAgICAgICBjb25zdCBjb21wb25lbnRGYWN0b3J5ID0gdGhpcy5jb21wb25lbnRGYWN0b3J5UmVzb2x2ZXIucmVzb2x2ZUNvbXBvbmVudEZhY3RvcnkoVG9vbHRpcENvbXBvbmVudCk7XG4gICAgICAgICB0aGlzLmNvbXBvbmVudFJlZiA9IGNvbXBvbmVudEZhY3RvcnkuY3JlYXRlKHRoaXMuaW5qZWN0b3IpO1xuICAgICAgICAgdGhpcy5hcHBSZWYuYXR0YWNoVmlldyh0aGlzLmNvbXBvbmVudFJlZi5ob3N0Vmlldyk7XG4gICAgICAgICBjb25zdCBkb21FbGVtID0gKHRoaXMuY29tcG9uZW50UmVmLmhvc3RWaWV3IGFzIEVtYmVkZGVkVmlld1JlZjxhbnk+KS5yb290Tm9kZXNbMF0gYXMgSFRNTEVsZW1lbnQ7XG4gICAgICAgICBkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKGRvbUVsZW0pO1xuICAgICAgICAgdGhpcy5zZXRUb29sdGlwQ29tcG9uZW50UHJvcGVydGllcygpO1xuICAgICAgICAgdGhpcy5zaG93VGltZW91dCA9IHdpbmRvdy5zZXRUaW1lb3V0KHRoaXMuc2hvd1Rvb2x0aXAuYmluZCh0aGlzKSwgdGhpcy5zaG93RGVsYXkpO1xuXG4gICAgICAgICBpZiAodGhpcy5kaXNwbGF5VGltZSkge1xuICAgICAgICAgICAgd2luZG93LnNldFRpbWVvdXQodGhpcy5kZXN0cm95LmJpbmQodGhpcyksIHRoaXMuZGlzcGxheVRpbWUpO1xuICAgICAgICAgfVxuICAgICAgfVxuICAgfVxuXG4gICBwcml2YXRlIHNob3dUb29sdGlwKCkge1xuICAgICAgaWYgKHRoaXMuY29tcG9uZW50UmVmICE9PSBudWxsKSB7XG4gICAgICAgICB0aGlzLmNvbXBvbmVudFJlZi5pbnN0YW5jZS52aXNpYmxlID0gdHJ1ZTtcbiAgICAgIH1cbiAgIH1cblxuICAgcHJpdmF0ZSBzZXRUb29sdGlwQ29tcG9uZW50UHJvcGVydGllcygpIHtcbiAgICAgIGNvbnN0IG1hcmdpbiA9IDIwO1xuICAgICAgY29uc3QgYW5jaG9yU2l6ZSA9IDU7XG5cbiAgICAgIGlmICh0aGlzLmNvbXBvbmVudFJlZiAhPT0gbnVsbCkge1xuICAgICAgICAgdGhpcy5jb21wb25lbnRSZWYuaW5zdGFuY2UudG9vbHRpcCA9IHRoaXMudG9vbHRpcDtcbiAgICAgICAgIHRoaXMuY29tcG9uZW50UmVmLmluc3RhbmNlLmVzY2FwZSA9IHRoaXMuZXNjYXBlO1xuXG4gICAgICAgICBjb25zdCB7IGxlZnQsIHJpZ2h0LCB0b3AsIGJvdHRvbSB9ID0gdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XG5cbiAgICAgICAgIGNvbnN0IHRvb2x0aXBIZWlnaHQgPSBib3R0b20gLSB0b3A7XG4gICAgICAgICBjb25zdCB0b29sdGlwV2lkdGggPSByaWdodCAtIGxlZnQ7XG4gICAgICAgICBjb25zdCBzYWZlU3BhY2UgPSAxNTA7XG5cbiAgICAgICAgIGxldCBwb3NpdGlvbmVkID0gZmFsc2U7XG4gICAgICAgICBjb25zdCBpbnZhbGlkT3B0aW9uczogVG9vbHRpcFBvc2l0aW9uW10gPSBbXTtcblxuICAgICAgICAgd2hpbGUgKCFwb3NpdGlvbmVkKSB7XG4gICAgICAgICAgICBpZiAoaW52YWxpZE9wdGlvbnMuaW5jbHVkZXMoVG9vbHRpcFBvc2l0aW9uLlRvcClcbiAgICAgICAgICAgICAgICYmIGludmFsaWRPcHRpb25zLmluY2x1ZGVzKFRvb2x0aXBQb3NpdGlvbi5Cb3R0b20pXG4gICAgICAgICAgICAgICAmJiBpbnZhbGlkT3B0aW9ucy5pbmNsdWRlcyhUb29sdGlwUG9zaXRpb24uTGVmdClcbiAgICAgICAgICAgICAgICYmIGludmFsaWRPcHRpb25zLmluY2x1ZGVzKFRvb2x0aXBQb3NpdGlvbi5SaWdodCkpIHtcbiAgICAgICAgICAgICAgIHRoaXMuZGVzdHJveSgpO1xuICAgICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKFwiTm8gc3BhY2UgdG8gc2hvdyB0b29sdGlwXCIpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBzd2l0Y2ggKHRoaXMucG9zaXRpb24pIHtcbiAgICAgICAgICAgICAgIGNhc2UgVG9vbHRpcFBvc2l0aW9uLlRvcDoge1xuICAgICAgICAgICAgICAgICAgaWYgKGludmFsaWRPcHRpb25zLmluY2x1ZGVzKFRvb2x0aXBQb3NpdGlvbi5Ub3ApKSB7XG4gICAgICAgICAgICAgICAgICAgICB0aGlzLnBvc2l0aW9uID0gVG9vbHRpcFBvc2l0aW9uLkxlZnQ7XG4gICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgY29uc3QgdG9wU2hpZnQgPSB0b3A7XG5cbiAgICAgICAgICAgICAgICAgIGlmICh0b3BTaGlmdCA8PSB0b29sdGlwSGVpZ2h0ICsgc2FmZVNwYWNlKSB7XG4gICAgICAgICAgICAgICAgICAgICB0aGlzLnBvc2l0aW9uID0gVG9vbHRpcFBvc2l0aW9uLkJvdHRvbTtcbiAgICAgICAgICAgICAgICAgICAgIGludmFsaWRPcHRpb25zLnB1c2goVG9vbHRpcFBvc2l0aW9uLlRvcCk7XG4gICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbmVkID0gZmFsc2U7XG4gICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgdGhpcy5jb21wb25lbnRSZWYuaW5zdGFuY2UubGVmdCA9IE1hdGgucm91bmQodG9vbHRpcFdpZHRoIC8gMiArIGxlZnQpO1xuICAgICAgICAgICAgICAgICAgdGhpcy5jb21wb25lbnRSZWYuaW5zdGFuY2UudG9wID0gTWF0aC5yb3VuZCh0b3AgLSBtYXJnaW4gLSBhbmNob3JTaXplKTtcbiAgICAgICAgICAgICAgICAgIHBvc2l0aW9uZWQgPSB0cnVlO1xuICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICBjYXNlIFRvb2x0aXBQb3NpdGlvbi5Cb3R0b206IHtcblxuICAgICAgICAgICAgICAgICAgaWYgKGludmFsaWRPcHRpb25zLmluY2x1ZGVzKFRvb2x0aXBQb3NpdGlvbi5Cb3R0b20pKSB7XG4gICAgICAgICAgICAgICAgICAgICB0aGlzLnBvc2l0aW9uID0gVG9vbHRpcFBvc2l0aW9uLkxlZnQ7XG4gICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgY29uc3QgYm90dG9tU2hpZnQgPSBkb2N1bWVudC5ib2R5LmNsaWVudEhlaWdodCAtIGJvdHRvbTtcblxuICAgICAgICAgICAgICAgICAgaWYgKGJvdHRvbVNoaWZ0IDw9IHRvb2x0aXBIZWlnaHQgKyBzYWZlU3BhY2UpIHtcbiAgICAgICAgICAgICAgICAgICAgIHRoaXMucG9zaXRpb24gPSBUb29sdGlwUG9zaXRpb24uVG9wO1xuICAgICAgICAgICAgICAgICAgICAgaW52YWxpZE9wdGlvbnMucHVzaChUb29sdGlwUG9zaXRpb24uQm90dG9tKTtcbiAgICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICB0aGlzLmNvbXBvbmVudFJlZi5pbnN0YW5jZS5sZWZ0ID0gTWF0aC5yb3VuZCh0b29sdGlwV2lkdGggLyAyICsgbGVmdCk7XG4gICAgICAgICAgICAgICAgICB0aGlzLmNvbXBvbmVudFJlZi5pbnN0YW5jZS50b3AgPSBNYXRoLnJvdW5kKGJvdHRvbSArIG1hcmdpbik7XG4gICAgICAgICAgICAgICAgICBwb3NpdGlvbmVkID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgY2FzZSBUb29sdGlwUG9zaXRpb24uTGVmdDoge1xuICAgICAgICAgICAgICAgICAgaWYgKGludmFsaWRPcHRpb25zLmluY2x1ZGVzKFRvb2x0aXBQb3NpdGlvbi5MZWZ0KSkge1xuICAgICAgICAgICAgICAgICAgICAgdGhpcy5wb3NpdGlvbiA9IFRvb2x0aXBQb3NpdGlvbi5Ub3A7XG4gICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgY29uc3QgbGVmdFNoaWZ0ID0gbGVmdDtcblxuICAgICAgICAgICAgICAgICAgaWYgKGxlZnRTaGlmdCA8PSB0b29sdGlwV2lkdGggKyBzYWZlU3BhY2UpIHtcbiAgICAgICAgICAgICAgICAgICAgIHRoaXMucG9zaXRpb24gPSBUb29sdGlwUG9zaXRpb24uUmlnaHQ7XG4gICAgICAgICAgICAgICAgICAgICBpbnZhbGlkT3B0aW9ucy5wdXNoKFRvb2x0aXBQb3NpdGlvbi5MZWZ0KTtcbiAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uZWQgPSBmYWxzZTtcbiAgICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICB0aGlzLmNvbXBvbmVudFJlZi5pbnN0YW5jZS5sZWZ0ID0gTWF0aC5yb3VuZChsZWZ0IC0gbWFyZ2luKTtcbiAgICAgICAgICAgICAgICAgIHRoaXMuY29tcG9uZW50UmVmLmluc3RhbmNlLnRvcCA9IE1hdGgucm91bmQodG9wICsgdG9vbHRpcEhlaWdodCAvIDIgLSBhbmNob3JTaXplKTtcbiAgICAgICAgICAgICAgICAgIHBvc2l0aW9uZWQgPSB0cnVlO1xuICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICBjYXNlIFRvb2x0aXBQb3NpdGlvbi5SaWdodDoge1xuICAgICAgICAgICAgICAgICAgaWYgKGludmFsaWRPcHRpb25zLmluY2x1ZGVzKFRvb2x0aXBQb3NpdGlvbi5SaWdodCkpIHtcbiAgICAgICAgICAgICAgICAgICAgIHRoaXMucG9zaXRpb24gPSBUb29sdGlwUG9zaXRpb24uVG9wO1xuICAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgIGNvbnN0IHJpZ2h0U2hpZnQgPSBkb2N1bWVudC5ib2R5LmNsaWVudFdpZHRoIC0gcmlnaHQ7XG5cbiAgICAgICAgICAgICAgICAgIGlmIChyaWdodFNoaWZ0IDw9IHRvb2x0aXBXaWR0aCArIHNhZmVTcGFjZSkge1xuICAgICAgICAgICAgICAgICAgICAgdGhpcy5wb3NpdGlvbiA9IFRvb2x0aXBQb3NpdGlvbi5MZWZ0O1xuICAgICAgICAgICAgICAgICAgICAgaW52YWxpZE9wdGlvbnMucHVzaChUb29sdGlwUG9zaXRpb24uUmlnaHQpO1xuICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb25lZCA9IGZhbHNlO1xuICAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgIHRoaXMuY29tcG9uZW50UmVmLmluc3RhbmNlLmxlZnQgPSBNYXRoLnJvdW5kKHJpZ2h0ICsgbWFyZ2luKTtcbiAgICAgICAgICAgICAgICAgIHRoaXMuY29tcG9uZW50UmVmLmluc3RhbmNlLnRvcCA9IE1hdGgucm91bmQodG9wICsgdG9vbHRpcEhlaWdodCAvIDIgLSBhbmNob3JTaXplKTtcbiAgICAgICAgICAgICAgICAgIHBvc2l0aW9uZWQgPSB0cnVlO1xuICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICBkZWZhdWx0OiB7XG4gICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgdGhpcy5jb21wb25lbnRSZWYuaW5zdGFuY2UucG9zaXRpb24gPSB0aGlzLnBvc2l0aW9uO1xuICAgICAgICAgfVxuICAgICAgfVxuICAgfVxuXG4gICBwcml2YXRlIGRlc3Ryb3koKTogdm9pZCB7XG4gICAgICBpZiAodGhpcy5jb21wb25lbnRSZWYgIT09IG51bGwpIHtcbiAgICAgICAgIHdpbmRvdy5jbGVhclRpbWVvdXQodGhpcy5zaG93VGltZW91dCk7XG4gICAgICAgICB0aGlzLmFwcFJlZi5kZXRhY2hWaWV3KHRoaXMuY29tcG9uZW50UmVmLmhvc3RWaWV3KTtcbiAgICAgICAgIHRoaXMuY29tcG9uZW50UmVmLmRlc3Ryb3koKTtcbiAgICAgICAgIHRoaXMuY29tcG9uZW50UmVmID0gbnVsbDtcbiAgICAgIH1cbiAgIH1cbn1cbiJdfQ==
@@ -14,6 +14,7 @@ var Field = /** @class */ (function () {
14
14
  this.type = config.type;
15
15
  this.size = new FieldSize(config.size || {});
16
16
  this.errorMessages = config.errorMessages;
17
+ this.bottomTemplate = config.bottomTemplate;
17
18
  this.gridClass = Object.keys(this.size).map(function (key) { return "ui-" + key + "-" + _this.size[key]; });
18
19
  this.defaultValue = config.defaultValue;
19
20
  this.representedBy = config.representedBy;
@@ -21,4 +22,4 @@ var Field = /** @class */ (function () {
21
22
  return Field;
22
23
  }());
23
24
  export { Field };
24
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmllbGQuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9Ac2VuaW9yc2lzdGVtYXMvYW5ndWxhci1jb21wb25lbnRzLyIsInNvdXJjZXMiOlsiY29tcG9uZW50cy9keW5hbWljLWZvcm0vY29uZmlndXJhdGlvbnMvZmllbGRzL2ZpZWxkLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFvQjFDO0lBaUJJLGVBQVksTUFBbUI7UUFBL0IsaUJBZ0JDO1FBZkcsSUFBSSxDQUFDLFFBQVEsR0FBRyxNQUFNLENBQUMsUUFBUSxJQUFJLENBQUMsY0FBTSxPQUFBLEtBQUssRUFBTCxDQUFLLENBQUMsQ0FBQztRQUNqRCxJQUFJLENBQUMsT0FBTyxHQUFHLE1BQU0sQ0FBQyxPQUFPLElBQUksQ0FBQyxjQUFNLE9BQUEsSUFBSSxFQUFKLENBQUksQ0FBQyxDQUFDO1FBQzlDLElBQUksQ0FBQyxFQUFFLEdBQUcsTUFBTSxDQUFDLEVBQUUsQ0FBQztRQUNwQixJQUFJLENBQUMsSUFBSSxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUM7UUFDeEIsSUFBSSxDQUFDLEtBQUssR0FBRyxNQUFNLENBQUMsS0FBSyxDQUFDO1FBQzFCLElBQUksQ0FBQyxRQUFRLEdBQUcsTUFBTSxDQUFDLFFBQVEsQ0FBQztRQUNoQyxJQUFJLENBQUMsT0FBTyxHQUFHLE1BQU0sQ0FBQyxPQUFPLENBQUM7UUFDOUIsSUFBSSxDQUFDLFdBQVcsR0FBRyxNQUFNLENBQUMsV0FBVyxJQUFJLEVBQUUsQ0FBQztRQUM1QyxJQUFJLENBQUMsU0FBUyxHQUFHLE1BQU0sQ0FBQyxTQUFTLElBQUksS0FBSyxDQUFDO1FBQzNDLElBQUksQ0FBQyxJQUFJLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQztRQUN4QixJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksU0FBUyxDQUFDLE1BQU0sQ0FBQyxJQUFJLElBQUksRUFBRSxDQUFDLENBQUM7UUFDN0MsSUFBSSxDQUFDLGFBQWEsR0FBRyxNQUFNLENBQUMsYUFBYSxDQUFDO1FBQzFDLElBQUksQ0FBQyxTQUFTLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsR0FBRyxDQUFDLFVBQUEsR0FBRyxJQUFJLE9BQUEsUUFBTSxHQUFHLFNBQUksS0FBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUcsRUFBN0IsQ0FBNkIsQ0FBQyxDQUFDO1FBQ2xGLElBQUksQ0FBQyxZQUFZLEdBQUcsTUFBTSxDQUFDLFlBQVksQ0FBQztRQUN4QyxJQUFJLENBQUMsYUFBYSxHQUFHLE1BQU0sQ0FBQyxhQUFhLENBQUM7SUFDOUMsQ0FBQztJQUNMLFlBQUM7QUFBRCxDQUFDLEFBbENELElBa0NDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRmllbGRTaXplIH0gZnJvbSBcIi4uL2ZpZWxkLXNpemVcIjtcbmltcG9ydCB7IEZpZWxkVHlwZSB9IGZyb20gXCIuLi9maWVsZC10eXBlXCI7XG5cbmV4cG9ydCBpbnRlcmZhY2UgRmllbGRDb25maWcge1xuICAgIGRlZmF1bHRWYWx1ZT86IGFueTtcbiAgICByZXF1aXJlZD86ICgpID0+IGJvb2xlYW47XG4gICAgdmlzaWJsZT86ICgpID0+IGJvb2xlYW47XG4gICAgaWQ/OiBzdHJpbmc7XG4gICAgbmFtZTogc3RyaW5nO1xuICAgIGxhYmVsOiBzdHJpbmc7XG4gICAgaW5mb1NpZ24/OiBzdHJpbmc7XG4gICAgdG9vbHRpcD86IHN0cmluZztcbiAgICBwbGFjZWhvbGRlcj86IHN0cmluZztcbiAgICBzaG93Q2xlYXI/OiBib29sZWFuO1xuICAgIHR5cGU/OiBGaWVsZFR5cGU7XG4gICAgc2l6ZT86IEZpZWxkU2l6ZTtcbiAgICByZXByZXNlbnRlZEJ5PzogXCJyYWRpb1wiIHwgXCJzd2l0Y2hcIjtcbiAgICBlcnJvck1lc3NhZ2VzPzogKCkgPT4gKHt9KSB8IHt9O1xufVxuXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgRmllbGQge1xuICAgIHB1YmxpYyByZXF1aXJlZD86ICgpID0+IGJvb2xlYW47XG4gICAgcHVibGljIHZpc2libGU/OiAoKSA9PiBib29sZWFuO1xuICAgIHB1YmxpYyBpZD86IHN0cmluZztcbiAgICBwdWJsaWMgbmFtZTogc3RyaW5nO1xuICAgIHB1YmxpYyBsYWJlbDogc3RyaW5nO1xuICAgIHB1YmxpYyBpbmZvU2lnbj86IHN0cmluZztcbiAgICBwdWJsaWMgdG9vbHRpcD86IHN0cmluZztcbiAgICBwdWJsaWMgcGxhY2Vob2xkZXI/OiBzdHJpbmc7XG4gICAgcHVibGljIHNob3dDbGVhcj86IGJvb2xlYW47XG4gICAgcHVibGljIHR5cGU6IEZpZWxkVHlwZTtcbiAgICBwdWJsaWMgc2l6ZTogRmllbGRTaXplO1xuICAgIHB1YmxpYyBncmlkQ2xhc3M6IHN0cmluZ1tdO1xuICAgIHB1YmxpYyBkZWZhdWx0VmFsdWU/OiBhbnk7XG4gICAgcHVibGljIHJlcHJlc2VudGVkQnk/OiBcInJhZGlvXCIgfCBcInN3aXRjaFwiO1xuICAgIHB1YmxpYyBlcnJvck1lc3NhZ2VzPzogKCkgPT4gKHt9KSB8IHt9O1xuXG4gICAgY29uc3RydWN0b3IoY29uZmlnOiBGaWVsZENvbmZpZykge1xuICAgICAgICB0aGlzLnJlcXVpcmVkID0gY29uZmlnLnJlcXVpcmVkIHx8ICgoKSA9PiBmYWxzZSk7XG4gICAgICAgIHRoaXMudmlzaWJsZSA9IGNvbmZpZy52aXNpYmxlIHx8ICgoKSA9PiB0cnVlKTtcbiAgICAgICAgdGhpcy5pZCA9IGNvbmZpZy5pZDtcbiAgICAgICAgdGhpcy5uYW1lID0gY29uZmlnLm5hbWU7XG4gICAgICAgIHRoaXMubGFiZWwgPSBjb25maWcubGFiZWw7XG4gICAgICAgIHRoaXMuaW5mb1NpZ24gPSBjb25maWcuaW5mb1NpZ247XG4gICAgICAgIHRoaXMudG9vbHRpcCA9IGNvbmZpZy50b29sdGlwO1xuICAgICAgICB0aGlzLnBsYWNlaG9sZGVyID0gY29uZmlnLnBsYWNlaG9sZGVyIHx8IFwiXCI7XG4gICAgICAgIHRoaXMuc2hvd0NsZWFyID0gY29uZmlnLnNob3dDbGVhciB8fCBmYWxzZTtcbiAgICAgICAgdGhpcy50eXBlID0gY29uZmlnLnR5cGU7XG4gICAgICAgIHRoaXMuc2l6ZSA9IG5ldyBGaWVsZFNpemUoY29uZmlnLnNpemUgfHwge30pO1xuICAgICAgICB0aGlzLmVycm9yTWVzc2FnZXMgPSBjb25maWcuZXJyb3JNZXNzYWdlcztcbiAgICAgICAgdGhpcy5ncmlkQ2xhc3MgPSBPYmplY3Qua2V5cyh0aGlzLnNpemUpLm1hcChrZXkgPT4gYHVpLSR7a2V5fS0ke3RoaXMuc2l6ZVtrZXldfWApO1xuICAgICAgICB0aGlzLmRlZmF1bHRWYWx1ZSA9IGNvbmZpZy5kZWZhdWx0VmFsdWU7XG4gICAgICAgIHRoaXMucmVwcmVzZW50ZWRCeSA9IGNvbmZpZy5yZXByZXNlbnRlZEJ5O1xuICAgIH1cbn1cbiJdfQ==
25
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmllbGQuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9Ac2VuaW9yc2lzdGVtYXMvYW5ndWxhci1jb21wb25lbnRzLyIsInNvdXJjZXMiOlsiY29tcG9uZW50cy9keW5hbWljLWZvcm0vY29uZmlndXJhdGlvbnMvZmllbGRzL2ZpZWxkLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFxQjFDO0lBa0JJLGVBQVksTUFBbUI7UUFBL0IsaUJBaUJDO1FBaEJHLElBQUksQ0FBQyxRQUFRLEdBQUcsTUFBTSxDQUFDLFFBQVEsSUFBSSxDQUFDLGNBQU0sT0FBQSxLQUFLLEVBQUwsQ0FBSyxDQUFDLENBQUM7UUFDakQsSUFBSSxDQUFDLE9BQU8sR0FBRyxNQUFNLENBQUMsT0FBTyxJQUFJLENBQUMsY0FBTSxPQUFBLElBQUksRUFBSixDQUFJLENBQUMsQ0FBQztRQUM5QyxJQUFJLENBQUMsRUFBRSxHQUFHLE1BQU0sQ0FBQyxFQUFFLENBQUM7UUFDcEIsSUFBSSxDQUFDLElBQUksR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDO1FBQ3hCLElBQUksQ0FBQyxLQUFLLEdBQUcsTUFBTSxDQUFDLEtBQUssQ0FBQztRQUMxQixJQUFJLENBQUMsUUFBUSxHQUFHLE1BQU0sQ0FBQyxRQUFRLENBQUM7UUFDaEMsSUFBSSxDQUFDLE9BQU8sR0FBRyxNQUFNLENBQUMsT0FBTyxDQUFDO1FBQzlCLElBQUksQ0FBQyxXQUFXLEdBQUcsTUFBTSxDQUFDLFdBQVcsSUFBSSxFQUFFLENBQUM7UUFDNUMsSUFBSSxDQUFDLFNBQVMsR0FBRyxNQUFNLENBQUMsU0FBUyxJQUFJLEtBQUssQ0FBQztRQUMzQyxJQUFJLENBQUMsSUFBSSxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUM7UUFDeEIsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLFNBQVMsQ0FBQyxNQUFNLENBQUMsSUFBSSxJQUFJLEVBQUUsQ0FBQyxDQUFDO1FBQzdDLElBQUksQ0FBQyxhQUFhLEdBQUcsTUFBTSxDQUFDLGFBQWEsQ0FBQztRQUMxQyxJQUFJLENBQUMsY0FBYyxHQUFHLE1BQU0sQ0FBQyxjQUFjLENBQUM7UUFDNUMsSUFBSSxDQUFDLFNBQVMsR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxHQUFHLENBQUMsVUFBQSxHQUFHLElBQUksT0FBQSxRQUFNLEdBQUcsU0FBSSxLQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBRyxFQUE3QixDQUE2QixDQUFDLENBQUM7UUFDbEYsSUFBSSxDQUFDLFlBQVksR0FBRyxNQUFNLENBQUMsWUFBWSxDQUFDO1FBQ3hDLElBQUksQ0FBQyxhQUFhLEdBQUcsTUFBTSxDQUFDLGFBQWEsQ0FBQztJQUM5QyxDQUFDO0lBQ0wsWUFBQztBQUFELENBQUMsQUFwQ0QsSUFvQ0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBUZW1wbGF0ZVJlZiB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgeyBGaWVsZFNpemUgfSBmcm9tIFwiLi4vZmllbGQtc2l6ZVwiO1xuaW1wb3J0IHsgRmllbGRUeXBlIH0gZnJvbSBcIi4uL2ZpZWxkLXR5cGVcIjtcblxuZXhwb3J0IGludGVyZmFjZSBGaWVsZENvbmZpZyB7XG4gICAgZGVmYXVsdFZhbHVlPzogYW55O1xuICAgIHJlcXVpcmVkPzogKCkgPT4gYm9vbGVhbjtcbiAgICB2aXNpYmxlPzogKCkgPT4gYm9vbGVhbjtcbiAgICBpZD86IHN0cmluZztcbiAgICBuYW1lOiBzdHJpbmc7XG4gICAgbGFiZWw6IHN0cmluZztcbiAgICBpbmZvU2lnbj86IHN0cmluZztcbiAgICB0b29sdGlwPzogc3RyaW5nO1xuICAgIHBsYWNlaG9sZGVyPzogc3RyaW5nO1xuICAgIHNob3dDbGVhcj86IGJvb2xlYW47XG4gICAgdHlwZT86IEZpZWxkVHlwZTtcbiAgICBzaXplPzogRmllbGRTaXplO1xuICAgIHJlcHJlc2VudGVkQnk/OiBcInJhZGlvXCIgfCBcInN3aXRjaFwiO1xuICAgIGVycm9yTWVzc2FnZXM/OiAoKSA9PiAoe30pIHwge307XG4gICAgYm90dG9tVGVtcGxhdGU/OiBUZW1wbGF0ZVJlZjxFbGVtZW50Pjtcbn1cblxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEZpZWxkIHtcbiAgICBwdWJsaWMgcmVxdWlyZWQ/OiAoKSA9PiBib29sZWFuO1xuICAgIHB1YmxpYyB2aXNpYmxlPzogKCkgPT4gYm9vbGVhbjtcbiAgICBwdWJsaWMgaWQ/OiBzdHJpbmc7XG4gICAgcHVibGljIG5hbWU6IHN0cmluZztcbiAgICBwdWJsaWMgbGFiZWw6IHN0cmluZztcbiAgICBwdWJsaWMgaW5mb1NpZ24/OiBzdHJpbmc7XG4gICAgcHVibGljIHRvb2x0aXA/OiBzdHJpbmc7XG4gICAgcHVibGljIHBsYWNlaG9sZGVyPzogc3RyaW5nO1xuICAgIHB1YmxpYyBzaG93Q2xlYXI/OiBib29sZWFuO1xuICAgIHB1YmxpYyB0eXBlOiBGaWVsZFR5cGU7XG4gICAgcHVibGljIHNpemU6IEZpZWxkU2l6ZTtcbiAgICBwdWJsaWMgZ3JpZENsYXNzOiBzdHJpbmdbXTtcbiAgICBwdWJsaWMgZGVmYXVsdFZhbHVlPzogYW55O1xuICAgIHB1YmxpYyByZXByZXNlbnRlZEJ5PzogXCJyYWRpb1wiIHwgXCJzd2l0Y2hcIjtcbiAgICBwdWJsaWMgZXJyb3JNZXNzYWdlcz86ICgpID0+ICh7fSkgfCB7fTtcbiAgICBwdWJsaWMgYm90dG9tVGVtcGxhdGU/OiBUZW1wbGF0ZVJlZjxFbGVtZW50PjtcblxuICAgIGNvbnN0cnVjdG9yKGNvbmZpZzogRmllbGRDb25maWcpIHtcbiAgICAgICAgdGhpcy5yZXF1aXJlZCA9IGNvbmZpZy5yZXF1aXJlZCB8fCAoKCkgPT4gZmFsc2UpO1xuICAgICAgICB0aGlzLnZpc2libGUgPSBjb25maWcudmlzaWJsZSB8fCAoKCkgPT4gdHJ1ZSk7XG4gICAgICAgIHRoaXMuaWQgPSBjb25maWcuaWQ7XG4gICAgICAgIHRoaXMubmFtZSA9IGNvbmZpZy5uYW1lO1xuICAgICAgICB0aGlzLmxhYmVsID0gY29uZmlnLmxhYmVsO1xuICAgICAgICB0aGlzLmluZm9TaWduID0gY29uZmlnLmluZm9TaWduO1xuICAgICAgICB0aGlzLnRvb2x0aXAgPSBjb25maWcudG9vbHRpcDtcbiAgICAgICAgdGhpcy5wbGFjZWhvbGRlciA9IGNvbmZpZy5wbGFjZWhvbGRlciB8fCBcIlwiO1xuICAgICAgICB0aGlzLnNob3dDbGVhciA9IGNvbmZpZy5zaG93Q2xlYXIgfHwgZmFsc2U7XG4gICAgICAgIHRoaXMudHlwZSA9IGNvbmZpZy50eXBlO1xuICAgICAgICB0aGlzLnNpemUgPSBuZXcgRmllbGRTaXplKGNvbmZpZy5zaXplIHx8IHt9KTtcbiAgICAgICAgdGhpcy5lcnJvck1lc3NhZ2VzID0gY29uZmlnLmVycm9yTWVzc2FnZXM7XG4gICAgICAgIHRoaXMuYm90dG9tVGVtcGxhdGUgPSBjb25maWcuYm90dG9tVGVtcGxhdGU7XG4gICAgICAgIHRoaXMuZ3JpZENsYXNzID0gT2JqZWN0LmtleXModGhpcy5zaXplKS5tYXAoa2V5ID0+IGB1aS0ke2tleX0tJHt0aGlzLnNpemVba2V5XX1gKTtcbiAgICAgICAgdGhpcy5kZWZhdWx0VmFsdWUgPSBjb25maWcuZGVmYXVsdFZhbHVlO1xuICAgICAgICB0aGlzLnJlcHJlc2VudGVkQnkgPSBjb25maWcucmVwcmVzZW50ZWRCeTtcbiAgICB9XG59XG4iXX0=
@@ -28,10 +28,10 @@ var DynamicFieldComponent = /** @class */ (function () {
28
28
  DynamicFieldComponent = __decorate([
29
29
  Component({
30
30
  selector: "s-dynamic-field",
31
- template: "\n <div class=\"ui-fluid\" [formGroup]=\"form\">\n <div class=\"ui-g\">\n <ng-container *ngFor=\"let field of fields\">\n <div [ngClass]=\"field.gridClass\" *ngIf=\"field.visible()\">\n <span *ngIf=\"field.label\"><label [for]=\"field.name\"\n [ngClass]=\"{ 'required': field.required() }\" *sInfoSign=\"field.infoSign\">{{ field.label }}</label></span>\n <ng-container *sDynamicForm=\"{ id: id, config: field, group: form}\"></ng-container>\n <s-control-errors [form]=\"form\" [control]=\"form.controls[field.name]\"\n [errorMessages]=\"getErrorMessages(field.errorMessages)\"></s-control-errors>\n </div>\n </ng-container>\n </div>\n </div>\n "
31
+ template: "\n <div class=\"ui-fluid\" [formGroup]=\"form\">\n <div class=\"ui-g\">\n <ng-container *ngFor=\"let field of fields\">\n <div [ngClass]=\"field.gridClass\" *ngIf=\"field.visible()\">\n <span *ngIf=\"field.label\"><label [for]=\"field.name\"\n [ngClass]=\"{ 'required': field.required() }\" *sInfoSign=\"field.infoSign\">{{ field.label }}</label></span>\n <ng-container *sDynamicForm=\"{ id: id, config: field, group: form}\"></ng-container>\n <s-control-errors [form]=\"form\" [control]=\"form.controls[field.name]\"\n [errorMessages]=\"getErrorMessages(field.errorMessages)\"></s-control-errors>\n <ng-template *ngIf=\"field?.bottomTemplate\" [ngTemplateOutlet]=\"field.bottomTemplate\"></ng-template>\n </div>\n </ng-container>\n </div>\n </div>\n "
32
32
  })
33
33
  ], DynamicFieldComponent);
34
34
  return DynamicFieldComponent;
35
35
  }());
36
36
  export { DynamicFieldComponent };
37
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHluYW1pYy1maWVsZC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9Ac2VuaW9yc2lzdGVtYXMvYW5ndWxhci1jb21wb25lbnRzLyIsInNvdXJjZXMiOlsiY29tcG9uZW50cy9keW5hbWljLWZvcm0vZHluYW1pYy1maWVsZC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBc0J6RDtJQWFJO0lBQWUsQ0FBQztJQUVULHdDQUFRLEdBQWYsY0FBbUIsQ0FBQztJQUViLGdEQUFnQixHQUF2QixVQUF3QixhQUFrQjtRQUN0QyxJQUFJLGFBQWE7WUFDYixPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsYUFBYSxDQUFDO2dCQUNqQyxDQUFDLHVCQUFNLElBQUksQ0FBQyxhQUFhLEdBQUssYUFBYSxFQUFFLEVBQzdDLENBQUMsdUJBQU0sSUFBSSxDQUFDLGFBQWEsR0FBSyxhQUFhLENBQUUsQ0FBQztRQUN0RCxPQUFPLElBQUksQ0FBQyxhQUFhLENBQUM7SUFDOUIsQ0FBQztJQUVNLDBDQUFVLEdBQWpCLFVBQWtCLEtBQVU7UUFDeEIsT0FBTyxLQUFLLFlBQVksUUFBUSxDQUFDO0lBQ3JDLENBQUM7SUF6QkQ7UUFEQyxLQUFLLEVBQUU7cURBQ1U7SUFHbEI7UUFEQyxLQUFLLEVBQUU7eURBQ21CO0lBRzNCO1FBREMsS0FBSyxFQUFFO3VEQUNlO0lBR3ZCO1FBREMsS0FBSyxFQUFFO2dFQUNtQjtJQVhsQixxQkFBcUI7UUFsQmpDLFNBQVMsQ0FBQztZQUNQLFFBQVEsRUFBRSxpQkFBaUI7WUFDM0IsUUFBUSxFQUFFLDYyQkFjVDtTQUNKLENBQUM7T0FDVyxxQkFBcUIsQ0E0QmpDO0lBQUQsNEJBQUM7Q0FBQSxBQTVCRCxJQTRCQztTQTVCWSxxQkFBcUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBPbkluaXQgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgRm9ybUdyb3VwIH0gZnJvbSBcIkBhbmd1bGFyL2Zvcm1zXCI7XG5pbXBvcnQgeyBGb3JtRmllbGQgfSBmcm9tIFwiLi9jb25maWd1cmF0aW9ucy9mb3JtLWZpZWxkXCI7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiBcInMtZHluYW1pYy1maWVsZFwiLFxuICAgIHRlbXBsYXRlOiBgXG4gICAgICAgIDxkaXYgY2xhc3M9XCJ1aS1mbHVpZFwiIFtmb3JtR3JvdXBdPVwiZm9ybVwiPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInVpLWdcIj5cbiAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBmaWVsZCBvZiBmaWVsZHNcIj5cbiAgICAgICAgICAgICAgICAgICAgPGRpdiBbbmdDbGFzc109XCJmaWVsZC5ncmlkQ2xhc3NcIiAqbmdJZj1cImZpZWxkLnZpc2libGUoKVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCJmaWVsZC5sYWJlbFwiPjxsYWJlbCBbZm9yXT1cImZpZWxkLm5hbWVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtuZ0NsYXNzXT1cInsgJ3JlcXVpcmVkJzogZmllbGQucmVxdWlyZWQoKSB9XCIgKnNJbmZvU2lnbj1cImZpZWxkLmluZm9TaWduXCI+e3sgZmllbGQubGFiZWwgfX08L2xhYmVsPjwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKnNEeW5hbWljRm9ybT1cInsgaWQ6IGlkLCBjb25maWc6IGZpZWxkLCBncm91cDogZm9ybX1cIj48L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxzLWNvbnRyb2wtZXJyb3JzIFtmb3JtXT1cImZvcm1cIiBbY29udHJvbF09XCJmb3JtLmNvbnRyb2xzW2ZpZWxkLm5hbWVdXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbZXJyb3JNZXNzYWdlc109XCJnZXRFcnJvck1lc3NhZ2VzKGZpZWxkLmVycm9yTWVzc2FnZXMpXCI+PC9zLWNvbnRyb2wtZXJyb3JzPlxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICBgLFxufSlcbmV4cG9ydCBjbGFzcyBEeW5hbWljRmllbGRDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIGlkOiBzdHJpbmc7XG5cbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyBmaWVsZHM6IEZvcm1GaWVsZFtdO1xuXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgZm9ybTogRm9ybUdyb3VwO1xuXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgZXJyb3JNZXNzYWdlcz86IGFueTtcblxuICAgIGNvbnN0cnVjdG9yKCkge31cblxuICAgIHB1YmxpYyBuZ09uSW5pdCgpIHt9XG5cbiAgICBwdWJsaWMgZ2V0RXJyb3JNZXNzYWdlcyhlcnJvck1lc3NhZ2VzOiBhbnkpIHtcbiAgICAgICAgaWYgKGVycm9yTWVzc2FnZXMpXG4gICAgICAgICAgICByZXR1cm4gdGhpcy5pc0Z1bmN0aW9uKGVycm9yTWVzc2FnZXMpXG4gICAgICAgICAgICAgICAgPyB7IC4uLnRoaXMuZXJyb3JNZXNzYWdlcywgLi4uZXJyb3JNZXNzYWdlcygpIH1cbiAgICAgICAgICAgICAgICA6IHsgLi4udGhpcy5lcnJvck1lc3NhZ2VzLCAuLi5lcnJvck1lc3NhZ2VzIH07XG4gICAgICAgIHJldHVybiB0aGlzLmVycm9yTWVzc2FnZXM7XG4gICAgfVxuXG4gICAgcHVibGljIGlzRnVuY3Rpb24odmFsdWU6IGFueSk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdmFsdWUgaW5zdGFuY2VvZiBGdW5jdGlvbjtcbiAgICB9XG59XG4iXX0=
37
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHluYW1pYy1maWVsZC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9Ac2VuaW9yc2lzdGVtYXMvYW5ndWxhci1jb21wb25lbnRzLyIsInNvdXJjZXMiOlsiY29tcG9uZW50cy9keW5hbWljLWZvcm0vZHluYW1pYy1maWVsZC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBdUJ6RDtJQWFJO0lBQWUsQ0FBQztJQUVULHdDQUFRLEdBQWYsY0FBbUIsQ0FBQztJQUViLGdEQUFnQixHQUF2QixVQUF3QixhQUFrQjtRQUN0QyxJQUFJLGFBQWE7WUFDYixPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsYUFBYSxDQUFDO2dCQUNqQyxDQUFDLHVCQUFNLElBQUksQ0FBQyxhQUFhLEdBQUssYUFBYSxFQUFFLEVBQzdDLENBQUMsdUJBQU0sSUFBSSxDQUFDLGFBQWEsR0FBSyxhQUFhLENBQUUsQ0FBQztRQUN0RCxPQUFPLElBQUksQ0FBQyxhQUFhLENBQUM7SUFDOUIsQ0FBQztJQUVNLDBDQUFVLEdBQWpCLFVBQWtCLEtBQVU7UUFDeEIsT0FBTyxLQUFLLFlBQVksUUFBUSxDQUFDO0lBQ3JDLENBQUM7SUF6QkQ7UUFEQyxLQUFLLEVBQUU7cURBQ1U7SUFHbEI7UUFEQyxLQUFLLEVBQUU7eURBQ21CO0lBRzNCO1FBREMsS0FBSyxFQUFFO3VEQUNlO0lBR3ZCO1FBREMsS0FBSyxFQUFFO2dFQUNtQjtJQVhsQixxQkFBcUI7UUFuQmpDLFNBQVMsQ0FBQztZQUNQLFFBQVEsRUFBRSxpQkFBaUI7WUFDM0IsUUFBUSxFQUFFLDgrQkFlVDtTQUNKLENBQUM7T0FDVyxxQkFBcUIsQ0E0QmpDO0lBQUQsNEJBQUM7Q0FBQSxBQTVCRCxJQTRCQztTQTVCWSxxQkFBcUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBPbkluaXQgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgRm9ybUdyb3VwIH0gZnJvbSBcIkBhbmd1bGFyL2Zvcm1zXCI7XG5pbXBvcnQgeyBGb3JtRmllbGQgfSBmcm9tIFwiLi9jb25maWd1cmF0aW9ucy9mb3JtLWZpZWxkXCI7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiBcInMtZHluYW1pYy1maWVsZFwiLFxuICAgIHRlbXBsYXRlOiBgXG4gICAgICAgIDxkaXYgY2xhc3M9XCJ1aS1mbHVpZFwiIFtmb3JtR3JvdXBdPVwiZm9ybVwiPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInVpLWdcIj5cbiAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBmaWVsZCBvZiBmaWVsZHNcIj5cbiAgICAgICAgICAgICAgICAgICAgPGRpdiBbbmdDbGFzc109XCJmaWVsZC5ncmlkQ2xhc3NcIiAqbmdJZj1cImZpZWxkLnZpc2libGUoKVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCJmaWVsZC5sYWJlbFwiPjxsYWJlbCBbZm9yXT1cImZpZWxkLm5hbWVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtuZ0NsYXNzXT1cInsgJ3JlcXVpcmVkJzogZmllbGQucmVxdWlyZWQoKSB9XCIgKnNJbmZvU2lnbj1cImZpZWxkLmluZm9TaWduXCI+e3sgZmllbGQubGFiZWwgfX08L2xhYmVsPjwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKnNEeW5hbWljRm9ybT1cInsgaWQ6IGlkLCBjb25maWc6IGZpZWxkLCBncm91cDogZm9ybX1cIj48L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxzLWNvbnRyb2wtZXJyb3JzIFtmb3JtXT1cImZvcm1cIiBbY29udHJvbF09XCJmb3JtLmNvbnRyb2xzW2ZpZWxkLm5hbWVdXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbZXJyb3JNZXNzYWdlc109XCJnZXRFcnJvck1lc3NhZ2VzKGZpZWxkLmVycm9yTWVzc2FnZXMpXCI+PC9zLWNvbnRyb2wtZXJyb3JzPlxuICAgICAgICAgICAgICAgICAgICAgICAgPG5nLXRlbXBsYXRlICpuZ0lmPVwiZmllbGQ/LmJvdHRvbVRlbXBsYXRlXCIgW25nVGVtcGxhdGVPdXRsZXRdPVwiZmllbGQuYm90dG9tVGVtcGxhdGVcIj48L25nLXRlbXBsYXRlPlxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICBgLFxufSlcbmV4cG9ydCBjbGFzcyBEeW5hbWljRmllbGRDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIGlkOiBzdHJpbmc7XG5cbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyBmaWVsZHM6IEZvcm1GaWVsZFtdO1xuXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgZm9ybTogRm9ybUdyb3VwO1xuXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgZXJyb3JNZXNzYWdlcz86IGFueTtcblxuICAgIGNvbnN0cnVjdG9yKCkge31cblxuICAgIHB1YmxpYyBuZ09uSW5pdCgpIHt9XG5cbiAgICBwdWJsaWMgZ2V0RXJyb3JNZXNzYWdlcyhlcnJvck1lc3NhZ2VzOiBhbnkpIHtcbiAgICAgICAgaWYgKGVycm9yTWVzc2FnZXMpXG4gICAgICAgICAgICByZXR1cm4gdGhpcy5pc0Z1bmN0aW9uKGVycm9yTWVzc2FnZXMpXG4gICAgICAgICAgICAgICAgPyB7IC4uLnRoaXMuZXJyb3JNZXNzYWdlcywgLi4uZXJyb3JNZXNzYWdlcygpIH1cbiAgICAgICAgICAgICAgICA6IHsgLi4udGhpcy5lcnJvck1lc3NhZ2VzLCAuLi5lcnJvck1lc3NhZ2VzIH07XG4gICAgICAgIHJldHVybiB0aGlzLmVycm9yTWVzc2FnZXM7XG4gICAgfVxuXG4gICAgcHVibGljIGlzRnVuY3Rpb24odmFsdWU6IGFueSk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdmFsdWUgaW5zdGFuY2VvZiBGdW5jdGlvbjtcbiAgICB9XG59XG4iXX0=
@@ -1,2 +1,4 @@
1
+ export { MobileBehavior } from "./mobile-behavior";
1
2
  export { TooltipPosition } from "./tooltip-position";
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290Ijoibmc6Ly9Ac2VuaW9yc2lzdGVtYXMvYW5ndWxhci1jb21wb25lbnRzLyIsInNvdXJjZXMiOlsiY29tcG9uZW50cy90b29sdGlwL21vZGVscy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sb0JBQW9CLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgeyBUb29sdGlwUG9zaXRpb24gfSBmcm9tIFwiLi90b29sdGlwLXBvc2l0aW9uXCI7XG4iXX0=
3
+ export { TooltipEvent } from "./tooltip-event";
4
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290Ijoibmc6Ly9Ac2VuaW9yc2lzdGVtYXMvYW5ndWxhci1jb21wb25lbnRzLyIsInNvdXJjZXMiOlsiY29tcG9uZW50cy90b29sdGlwL21vZGVscy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sbUJBQW1CLENBQUE7QUFDbEQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ3JELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCB7IE1vYmlsZUJlaGF2aW9yIH0gZnJvbSBcIi4vbW9iaWxlLWJlaGF2aW9yXCJcbmV4cG9ydCB7IFRvb2x0aXBQb3NpdGlvbiB9IGZyb20gXCIuL3Rvb2x0aXAtcG9zaXRpb25cIjtcbmV4cG9ydCB7IFRvb2x0aXBFdmVudCB9IGZyb20gXCIuL3Rvb2x0aXAtZXZlbnRcIjsiXX0=
@@ -0,0 +1,6 @@
1
+ export var TooltipEvent;
2
+ (function (TooltipEvent) {
3
+ TooltipEvent["Focus"] = "focus";
4
+ TooltipEvent["Hover"] = "hover";
5
+ })(TooltipEvent || (TooltipEvent = {}));
6
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbHRpcC1ldmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BzZW5pb3JzaXN0ZW1hcy9hbmd1bGFyLWNvbXBvbmVudHMvIiwic291cmNlcyI6WyJjb21wb25lbnRzL3Rvb2x0aXAvbW9kZWxzL3Rvb2x0aXAtZXZlbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFOLElBQVksWUFHWDtBQUhELFdBQVksWUFBWTtJQUNyQiwrQkFBZSxDQUFBO0lBQ2YsK0JBQWUsQ0FBQTtBQUNsQixDQUFDLEVBSFcsWUFBWSxLQUFaLFlBQVksUUFHdkIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgZW51bSBUb29sdGlwRXZlbnQge1xuICAgRm9jdXMgPSBcImZvY3VzXCIsXG4gICBIb3ZlciA9IFwiaG92ZXJcIixcbn0iXX0=