@seniorsistemas/angular-components 17.27.2 → 17.28.1

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 (58) hide show
  1. package/bundles/seniorsistemas-angular-components.umd.js +586 -17
  2. package/bundles/seniorsistemas-angular-components.umd.js.map +1 -1
  3. package/bundles/seniorsistemas-angular-components.umd.min.js +2 -2
  4. package/bundles/seniorsistemas-angular-components.umd.min.js.map +1 -1
  5. package/components/accessibility-events/directives/accessibility-event.directive.d.ts +4 -2
  6. package/components/grid-menu/components/grid-menu-item/grid-menu-item.component.d.ts +7 -0
  7. package/components/grid-menu/grid-menu.component.d.ts +9 -1
  8. package/components/grid-menu/types/grid-menu-item.d.ts +6 -1
  9. package/components/ia-insight/components/ia-insight-sidebar/ia-insight-sidebar.component.d.ts +3 -1
  10. package/components/ia-insight/ia-insight.component.d.ts +5 -1
  11. package/components/ia-insight/models/ia-insight-item.d.ts +12 -0
  12. package/components/index.d.ts +1 -0
  13. package/components/tree/Models/tree.models.d.ts +28 -0
  14. package/components/tree/components/tree-node-item/tree-node-item.component.d.ts +35 -0
  15. package/components/tree/index.d.ts +3 -0
  16. package/components/tree/tree.component.d.ts +33 -0
  17. package/components/tree/tree.module.d.ts +2 -0
  18. package/esm2015/components/accessibility-events/directives/accessibility-event.directive.js +9 -3
  19. package/esm2015/components/fieldset/fieldset.module.js +2 -3
  20. package/esm2015/components/grid-menu/components/grid-menu-item/grid-menu-item.component.js +36 -6
  21. package/esm2015/components/grid-menu/grid-menu.component.js +43 -4
  22. package/esm2015/components/grid-menu/grid-menu.module.js +3 -2
  23. package/esm2015/components/grid-menu/types/grid-menu-item.js +1 -1
  24. package/esm2015/components/ia-insight/components/ia-insight-card/ia-insight-card.component.js +15 -3
  25. package/esm2015/components/ia-insight/components/ia-insight-sidebar/ia-insight-sidebar.component.js +12 -2
  26. package/esm2015/components/ia-insight/ia-insight.component.js +17 -3
  27. package/esm2015/components/ia-insight/models/ia-insight-item.js +1 -1
  28. package/esm2015/components/index.js +2 -1
  29. package/esm2015/components/tree/Models/tree.models.js +1 -0
  30. package/esm2015/components/tree/components/tree-node-item/tree-node-item.component.js +154 -0
  31. package/esm2015/components/tree/index.js +3 -0
  32. package/esm2015/components/tree/tree.component.js +254 -0
  33. package/esm2015/components/tree/tree.module.js +20 -0
  34. package/esm2015/seniorsistemas-angular-components.js +3 -1
  35. package/esm5/components/accessibility-events/directives/accessibility-event.directive.js +10 -4
  36. package/esm5/components/fieldset/fieldset.module.js +2 -3
  37. package/esm5/components/grid-menu/components/grid-menu-item/grid-menu-item.component.js +38 -6
  38. package/esm5/components/grid-menu/grid-menu.component.js +43 -4
  39. package/esm5/components/grid-menu/grid-menu.module.js +3 -2
  40. package/esm5/components/grid-menu/types/grid-menu-item.js +1 -1
  41. package/esm5/components/ia-insight/components/ia-insight-card/ia-insight-card.component.js +15 -3
  42. package/esm5/components/ia-insight/components/ia-insight-sidebar/ia-insight-sidebar.component.js +12 -2
  43. package/esm5/components/ia-insight/ia-insight.component.js +17 -3
  44. package/esm5/components/ia-insight/models/ia-insight-item.js +1 -1
  45. package/esm5/components/index.js +2 -1
  46. package/esm5/components/tree/Models/tree.models.js +1 -0
  47. package/esm5/components/tree/components/tree-node-item/tree-node-item.component.js +169 -0
  48. package/esm5/components/tree/index.js +3 -0
  49. package/esm5/components/tree/tree.component.js +280 -0
  50. package/esm5/components/tree/tree.module.js +23 -0
  51. package/esm5/seniorsistemas-angular-components.js +3 -1
  52. package/fesm2015/seniorsistemas-angular-components.js +533 -15
  53. package/fesm2015/seniorsistemas-angular-components.js.map +1 -1
  54. package/fesm5/seniorsistemas-angular-components.js +580 -16
  55. package/fesm5/seniorsistemas-angular-components.js.map +1 -1
  56. package/package.json +1 -1
  57. package/seniorsistemas-angular-components.d.ts +2 -0
  58. package/seniorsistemas-angular-components.metadata.json +1 -1
@@ -1,10 +1,12 @@
1
- import { ElementRef, EventEmitter, OnDestroy } from '@angular/core';
2
- export declare class AccessibilityEventDirective implements OnDestroy {
1
+ import { ElementRef, EventEmitter, OnDestroy, OnInit } from '@angular/core';
2
+ export declare class AccessibilityEventDirective implements OnDestroy, OnInit {
3
3
  private readonly elementRef;
4
4
  sActivatedContent: EventEmitter<PointerEvent | KeyboardEvent>;
5
5
  tabindex: number;
6
+ disabled: boolean;
6
7
  private readonly EVENT_LISTENER;
7
8
  constructor(elementRef: ElementRef<HTMLElement>);
9
+ ngOnInit(): void;
8
10
  private setTabIndex;
9
11
  private checkAccessbilityEvents;
10
12
  private get element();
@@ -1,7 +1,14 @@
1
+ import { EventEmitter } from "@angular/core";
1
2
  import { GridMenuItem } from "../../types/grid-menu-item";
2
3
  export declare class GridMenuItemComponent {
3
4
  item: GridMenuItem;
5
+ iconIsFromFontAwesome: boolean;
6
+ clickedGridMenuItem: EventEmitter<GridMenuItem>;
7
+ fontAwesomePrefix: 'fal' | 'fas';
4
8
  onClick(): void;
9
+ onMouseEnter(): void;
10
+ onMouseLeave(): void;
11
+ get iconFontAwesomeClassName(): string;
5
12
  get initialLetter(): string;
6
13
  get disabled(): boolean;
7
14
  }
@@ -1,5 +1,13 @@
1
+ import { EventEmitter, OnChanges, SimpleChanges } from "@angular/core";
1
2
  import { GridMenuItem } from "./types/grid-menu-item";
2
- export declare class GridMenuComponent {
3
+ export declare class GridMenuComponent implements OnChanges {
4
+ private previousGridMenuItemClicked;
3
5
  set items(items: GridMenuItem[] | GridMenuItem);
6
+ useFontAwesomeIcons: boolean;
4
7
  itemsArray: GridMenuItem[];
8
+ selectable: boolean;
9
+ selected: GridMenuItem;
10
+ selectedChange: EventEmitter<GridMenuItem>;
11
+ ngOnChanges(changes: SimpleChanges): void;
12
+ onClickGridMenuItem(gridMenuItem: GridMenuItem): void;
5
13
  }
@@ -1,6 +1,11 @@
1
1
  export declare type GridMenuItem = {
2
+ /**
3
+ * @param {string} icon The icon class name.
4
+ * For FontAwesome icons, provide only the icon name (e.g., 'power-off'), without prefixes like 'fal' or 'fas'.
5
+ */
2
6
  icon?: string;
3
- label: string;
7
+ label?: string;
4
8
  action: () => void;
5
9
  disabled?: (() => boolean) | boolean;
10
+ active?: boolean;
6
11
  };
@@ -1,4 +1,4 @@
1
- import { TemplateRef } from "@angular/core";
1
+ import { EventEmitter, TemplateRef } from "@angular/core";
2
2
  import { IAInsightItem } from "../../models/index";
3
3
  export declare class IAInsightSidebarComponent {
4
4
  insights: IAInsightItem[];
@@ -9,6 +9,8 @@ export declare class IAInsightSidebarComponent {
9
9
  emptyTemplate: TemplateRef<any>;
10
10
  noPermissionText: string;
11
11
  noPermissionTemplate: TemplateRef<any>;
12
+ closedSidebar: EventEmitter<void>;
13
+ openedSidebar: EventEmitter<void>;
12
14
  opened: boolean;
13
15
  toggle(): void;
14
16
  open(): void;
@@ -1,4 +1,4 @@
1
- import { AfterContentInit, QueryList, TemplateRef } from "@angular/core";
1
+ import { AfterContentInit, EventEmitter, QueryList, TemplateRef } from "@angular/core";
2
2
  import { TemplateDirective } from "../template/template.directive";
3
3
  import { IAInsightSidebarComponent } from "./components/ia-insight-sidebar/ia-insight-sidebar.component";
4
4
  import { IAInsightItem } from "./models/ia-insight-item";
@@ -8,6 +8,8 @@ export declare class IAInsightComponent implements AfterContentInit {
8
8
  introText: string;
9
9
  emptyText: string;
10
10
  noPermissionText: string;
11
+ openIAInsight: EventEmitter<void>;
12
+ closedIAInsight: EventEmitter<void>;
11
13
  sidebar: IAInsightSidebarComponent;
12
14
  templates: QueryList<TemplateDirective>;
13
15
  introTemplate: TemplateRef<any>;
@@ -16,6 +18,8 @@ export declare class IAInsightComponent implements AfterContentInit {
16
18
  ngAfterContentInit(): void;
17
19
  open(): void;
18
20
  close(): void;
21
+ onOpenSidebar(): void;
22
+ onCloseSidebar(): void;
19
23
  getIntroTemplate(): TemplateRef<any>;
20
24
  getNoPermissionTemplate(): TemplateRef<any>;
21
25
  getEmptyTemplate(): TemplateRef<any>;
@@ -6,4 +6,16 @@ export interface IAInsightItem {
6
6
  onDislikeSelected?: VoidFunction;
7
7
  onCopy?: (content: string) => void;
8
8
  onReload?: VoidFunction;
9
+ /**
10
+ * callback for opened sidebar
11
+ */
12
+ onOpenSidebar?: VoidFunction;
13
+ /**
14
+ * callback for sidebar closed
15
+ */
16
+ onCloseSideBar?: VoidFunction;
17
+ /**
18
+ * callback for sidebar is opened and request$ is completed.
19
+ */
20
+ onContentLoaded?: VoidFunction;
9
21
  }
@@ -66,6 +66,7 @@ export * from "./picklist/index";
66
66
  export * from "./chips/index";
67
67
  export * from "./help-popover/index";
68
68
  export * from "./toast/index";
69
+ export * from "./tree/index";
69
70
  export * from "./accessibility-events/index";
70
71
  export * from "./structure/index";
71
72
  /**
@@ -0,0 +1,28 @@
1
+ export interface TreeNodeItem<T = any> {
2
+ id: string | number;
3
+ label: string;
4
+ icon?: string;
5
+ checked?: boolean;
6
+ isExpanded?: boolean;
7
+ payload?: T;
8
+ children?: TreeNodeItem<T>[];
9
+ editable?: boolean;
10
+ leaf?: boolean;
11
+ expandedIcon?: string;
12
+ collapsedIcon?: string;
13
+ }
14
+ export interface InternalTreeNodeItem<T = any> extends TreeNodeItem<T> {
15
+ isEditing?: boolean;
16
+ editPreviousValue?: string;
17
+ editNewValue?: string;
18
+ }
19
+ export declare type TreeNodeEdit = {
20
+ /**
21
+ * Function to revert the changes made during the edit action.
22
+ * This function should restore the previous state of the item.
23
+ */
24
+ revertAction: () => void;
25
+ item: TreeNodeItem;
26
+ previousValue: string;
27
+ newValue: string;
28
+ };
@@ -0,0 +1,35 @@
1
+ import { ChangeDetectorRef, ElementRef, EventEmitter } from '@angular/core';
2
+ import { InternalTreeNodeItem, TreeNodeEdit } from '../../Models/tree.models';
3
+ import { TranslateService } from '@ngx-translate/core';
4
+ export declare class TreeNodeItemComponent {
5
+ private readonly cdr;
6
+ private readonly translateService;
7
+ ariaLevel: number;
8
+ showCheckbox: boolean;
9
+ treeNodeItem: InternalTreeNodeItem;
10
+ treeNodeItemClicked: EventEmitter<{
11
+ item: InternalTreeNodeItem<any>;
12
+ event: Event;
13
+ }>;
14
+ treeNodeEdit: EventEmitter<TreeNodeEdit>;
15
+ nodeExpanded: EventEmitter<InternalTreeNodeItem<any>>;
16
+ nodeCollapsed: EventEmitter<InternalTreeNodeItem<any>>;
17
+ input: ElementRef<HTMLInputElement>;
18
+ constructor(cdr: ChangeDetectorRef, translateService: TranslateService);
19
+ get hasChildren(): boolean;
20
+ get editable(): boolean;
21
+ get ariaLabel(): string;
22
+ expandNode(): void;
23
+ collapseNode(): void;
24
+ onCheckboxEnter(node: InternalTreeNodeItem): void;
25
+ handleTreeNodeItemClick(event: Event, treeNodeItem?: InternalTreeNodeItem): void;
26
+ handleTreeNodeItemClicked({ event, item }: {
27
+ event: Event;
28
+ item: InternalTreeNodeItem;
29
+ }): void;
30
+ toggleExpanded(treeNodeItem: InternalTreeNodeItem): void;
31
+ toggleEditing($event: Event): void;
32
+ cancelEdit($event: Event): void;
33
+ saveEdit($event: Event): void;
34
+ treeNodeEditChildEvent(payload: TreeNodeEdit): void;
35
+ }
@@ -0,0 +1,3 @@
1
+ export { TreeNodeEdit, TreeNodeItem } from "./Models/tree.models";
2
+ export { TreeComponent } from "./tree.component";
3
+ export { TreeModule } from "./tree.module";
@@ -0,0 +1,33 @@
1
+ import { EventEmitter, OnChanges, SimpleChanges } from "@angular/core";
2
+ import { InternalTreeNodeItem, TreeNodeEdit, TreeNodeItem } from "./Models/tree.models";
3
+ export declare class TreeComponent implements OnChanges {
4
+ treeData: TreeNodeItem[];
5
+ private _selected;
6
+ get selected(): TreeNodeItem[];
7
+ set selected(value: TreeNodeItem[]);
8
+ loading: boolean;
9
+ selectionMode: "single" | "multiple";
10
+ showCheckbox: boolean;
11
+ allExpanded: boolean;
12
+ selectedChange: EventEmitter<TreeNodeItem[] | TreeNodeItem>;
13
+ treeNodeItemClicked: EventEmitter<TreeNodeItem>;
14
+ treeNodeEdit: EventEmitter<TreeNodeEdit>;
15
+ nodeExpanded: EventEmitter<TreeNodeItem>;
16
+ nodeCollapsed: EventEmitter<TreeNodeItem>;
17
+ ngOnChanges(changes: SimpleChanges): void;
18
+ onTreeNodeItemClicked({ item }: {
19
+ item: InternalTreeNodeItem;
20
+ }): void;
21
+ onTreeNodeEdit(payload: TreeNodeEdit): void;
22
+ onNodeExpanded(item: InternalTreeNodeItem): void;
23
+ onNodeCollapsed(item: InternalTreeNodeItem): void;
24
+ private toggleChecked;
25
+ private checkTreeDataChildren;
26
+ private setSelected;
27
+ private onChanges;
28
+ private syncSelectedChanges;
29
+ private collapseAll;
30
+ private expandAll;
31
+ private get selectedElements();
32
+ private get multiple();
33
+ }
@@ -0,0 +1,2 @@
1
+ export declare class TreeModule {
2
+ }
@@ -1,10 +1,11 @@
1
1
  import { __decorate } from "tslib";
2
- import { Directive, ElementRef, EventEmitter, Input, OnDestroy, Output } from '@angular/core';
2
+ import { Directive, ElementRef, EventEmitter, Input, OnDestroy, OnInit, Output } from '@angular/core';
3
3
  let AccessibilityEventDirective = class AccessibilityEventDirective {
4
4
  constructor(elementRef) {
5
5
  this.elementRef = elementRef;
6
6
  this.sActivatedContent = new EventEmitter();
7
7
  this.tabindex = 0;
8
+ this.disabled = false;
8
9
  this.EVENT_LISTENER = (event) => {
9
10
  if (event instanceof KeyboardEvent) {
10
11
  const key = event.key;
@@ -15,11 +16,13 @@ let AccessibilityEventDirective = class AccessibilityEventDirective {
15
16
  }
16
17
  this.sActivatedContent.next(event);
17
18
  };
19
+ }
20
+ ngOnInit() {
18
21
  this.setTabIndex();
19
22
  this.checkAccessbilityEvents();
20
23
  }
21
24
  setTabIndex() {
22
- const hasTabIndex = this.element.tabIndex >= 0;
25
+ const hasTabIndex = this.element.tabIndex !== 0;
23
26
  if (hasTabIndex) {
24
27
  return;
25
28
  }
@@ -46,10 +49,13 @@ __decorate([
46
49
  __decorate([
47
50
  Input()
48
51
  ], AccessibilityEventDirective.prototype, "tabindex", void 0);
52
+ __decorate([
53
+ Input()
54
+ ], AccessibilityEventDirective.prototype, "disabled", void 0);
49
55
  AccessibilityEventDirective = __decorate([
50
56
  Directive({
51
57
  selector: '[sActivatedContent]'
52
58
  })
53
59
  ], AccessibilityEventDirective);
54
60
  export { AccessibilityEventDirective };
55
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWNjZXNzaWJpbGl0eS1ldmVudC5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9Ac2VuaW9yc2lzdGVtYXMvYW5ndWxhci1jb21wb25lbnRzLyIsInNvdXJjZXMiOlsiY29tcG9uZW50cy9hY2Nlc3NpYmlsaXR5LWV2ZW50cy9kaXJlY3RpdmVzL2FjY2Vzc2liaWxpdHktZXZlbnQuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFLOUYsSUFBYSwyQkFBMkIsR0FBeEMsTUFBYSwyQkFBMkI7SUFhdEMsWUFBNkIsVUFBbUM7UUFBbkMsZUFBVSxHQUFWLFVBQVUsQ0FBeUI7UUFadEQsc0JBQWlCLEdBQUcsSUFBSSxZQUFZLEVBQWdDLENBQUM7UUFDdEUsYUFBUSxHQUFHLENBQUMsQ0FBQztRQUNMLG1CQUFjLEdBQUcsQ0FBQyxLQUFtQyxFQUFFLEVBQUU7WUFDeEUsSUFBSSxLQUFLLFlBQVksYUFBYSxFQUFFO2dCQUNsQyxNQUFNLEdBQUcsR0FBRyxLQUFLLENBQUMsR0FBRyxDQUFDO2dCQUN0QixNQUFNLFNBQVMsR0FBRyxDQUFDLE9BQU8sRUFBRSxHQUFHLENBQUMsQ0FBQztnQkFDakMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLEVBQUU7b0JBQzVCLE9BQU87aUJBQ1I7YUFDRjtZQUNELElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDckMsQ0FBQyxDQUFBO1FBRUMsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO1FBQ25CLElBQUksQ0FBQyx1QkFBdUIsRUFBRSxDQUFDO0lBQ2pDLENBQUM7SUFHTyxXQUFXO1FBQ2pCLE1BQU0sV0FBVyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsUUFBUSxJQUFJLENBQUMsQ0FBQztRQUMvQyxJQUFJLFdBQVcsRUFBRTtZQUNmLE9BQU87U0FDUjtRQUNELElBQUksQ0FBQyxPQUFPLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUM7SUFDeEMsQ0FBQztJQUVPLHVCQUF1QjtRQUM3QixJQUFJLENBQUMsT0FBTyxDQUFDLGdCQUFnQixDQUFDLE9BQU8sRUFBRSxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUM7UUFDNUQsSUFBSSxDQUFDLE9BQU8sQ0FBQyxnQkFBZ0IsQ0FBQyxTQUFTLEVBQUUsSUFBSSxDQUFDLGNBQWMsQ0FBQyxDQUFDO0lBQ2hFLENBQUM7SUFFRCxJQUFZLE9BQU87UUFDakIsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FBQztJQUN2QyxDQUFDO0lBRUQsV0FBVztRQUNULElBQUksQ0FBQyxPQUFPLENBQUMsbUJBQW1CLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQztRQUMvRCxJQUFJLENBQUMsT0FBTyxDQUFDLG1CQUFtQixDQUFDLFNBQVMsRUFBRSxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUM7SUFDbkUsQ0FBQztDQUNGLENBQUE7O1lBM0IwQyxVQUFVOztBQVp6QztJQUFULE1BQU0sRUFBRTtzRUFBc0U7QUFDdEU7SUFBUixLQUFLLEVBQUU7NkRBQWM7QUFGWCwyQkFBMkI7SUFIdkMsU0FBUyxDQUFDO1FBQ1QsUUFBUSxFQUFFLHFCQUFxQjtLQUNoQyxDQUFDO0dBQ1csMkJBQTJCLENBd0N2QztTQXhDWSwyQkFBMkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIEVsZW1lbnRSZWYsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uRGVzdHJveSwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1tzQWN0aXZhdGVkQ29udGVudF0nXG59KVxuZXhwb3J0IGNsYXNzIEFjY2Vzc2liaWxpdHlFdmVudERpcmVjdGl2ZSBpbXBsZW1lbnRzIE9uRGVzdHJveSB7XG4gIEBPdXRwdXQoKSBzQWN0aXZhdGVkQ29udGVudCA9IG5ldyBFdmVudEVtaXR0ZXI8UG9pbnRlckV2ZW50IHwgS2V5Ym9hcmRFdmVudD4oKTtcbiAgQElucHV0KCkgdGFiaW5kZXggPSAwO1xuICBwcml2YXRlIHJlYWRvbmx5IEVWRU5UX0xJU1RFTkVSID0gKGV2ZW50OiBQb2ludGVyRXZlbnQgfCBLZXlib2FyZEV2ZW50KSA9PiB7XG4gICAgaWYgKGV2ZW50IGluc3RhbmNlb2YgS2V5Ym9hcmRFdmVudCkge1xuICAgICAgY29uc3Qga2V5ID0gZXZlbnQua2V5O1xuICAgICAgY29uc3QgdmFsaWRLZXlzID0gWydFbnRlcicsICcgJ107XG4gICAgICBpZiAoIXZhbGlkS2V5cy5pbmNsdWRlcyhrZXkpKSB7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cbiAgICB9XG4gICAgdGhpcy5zQWN0aXZhdGVkQ29udGVudC5uZXh0KGV2ZW50KTtcbiAgfVxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlYWRvbmx5IGVsZW1lbnRSZWY6IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+KSB7XG4gICAgdGhpcy5zZXRUYWJJbmRleCgpO1xuICAgIHRoaXMuY2hlY2tBY2Nlc3NiaWxpdHlFdmVudHMoKTtcbiAgfVxuXG5cbiAgcHJpdmF0ZSBzZXRUYWJJbmRleCgpIHtcbiAgICBjb25zdCBoYXNUYWJJbmRleCA9IHRoaXMuZWxlbWVudC50YWJJbmRleCA+PSAwO1xuICAgIGlmIChoYXNUYWJJbmRleCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLmVsZW1lbnQudGFiSW5kZXggPSB0aGlzLnRhYmluZGV4O1xuICB9XG5cbiAgcHJpdmF0ZSBjaGVja0FjY2Vzc2JpbGl0eUV2ZW50cygpIHtcbiAgICB0aGlzLmVsZW1lbnQuYWRkRXZlbnRMaXN0ZW5lcignY2xpY2snLCB0aGlzLkVWRU5UX0xJU1RFTkVSKTtcbiAgICB0aGlzLmVsZW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigna2V5ZG93bicsIHRoaXMuRVZFTlRfTElTVEVORVIpO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXQgZWxlbWVudCgpIHtcbiAgICByZXR1cm4gdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQ7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLmVsZW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcignY2xpY2snLCB0aGlzLkVWRU5UX0xJU1RFTkVSKTtcbiAgICB0aGlzLmVsZW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcigna2V5ZG93bicsIHRoaXMuRVZFTlRfTElTVEVORVIpO1xuICB9XG59XG4iXX0=
61
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWNjZXNzaWJpbGl0eS1ldmVudC5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9Ac2VuaW9yc2lzdGVtYXMvYW5ndWxhci1jb21wb25lbnRzLyIsInNvdXJjZXMiOlsiY29tcG9uZW50cy9hY2Nlc3NpYmlsaXR5LWV2ZW50cy9kaXJlY3RpdmVzL2FjY2Vzc2liaWxpdHktZXZlbnQuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBS3RHLElBQWEsMkJBQTJCLEdBQXhDLE1BQWEsMkJBQTJCO0lBY3RDLFlBQTZCLFVBQW1DO1FBQW5DLGVBQVUsR0FBVixVQUFVLENBQXlCO1FBYnRELHNCQUFpQixHQUFHLElBQUksWUFBWSxFQUFnQyxDQUFDO1FBQ3RFLGFBQVEsR0FBRyxDQUFDLENBQUM7UUFDYixhQUFRLEdBQUcsS0FBSyxDQUFDO1FBQ1QsbUJBQWMsR0FBRyxDQUFDLEtBQW1DLEVBQUUsRUFBRTtZQUN4RSxJQUFJLEtBQUssWUFBWSxhQUFhLEVBQUU7Z0JBQ2xDLE1BQU0sR0FBRyxHQUFHLEtBQUssQ0FBQyxHQUFHLENBQUM7Z0JBQ3RCLE1BQU0sU0FBUyxHQUFHLENBQUMsT0FBTyxFQUFFLEdBQUcsQ0FBQyxDQUFDO2dCQUNqQyxJQUFJLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsRUFBRTtvQkFDNUIsT0FBTztpQkFDUjthQUNGO1lBQ0QsSUFBSSxDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNyQyxDQUFDLENBQUE7SUFDbUUsQ0FBQztJQUVyRSxRQUFRO1FBQ04sSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO1FBQ25CLElBQUksQ0FBQyx1QkFBdUIsRUFBRSxDQUFDO0lBQ2pDLENBQUM7SUFHTyxXQUFXO1FBQ2pCLE1BQU0sV0FBVyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsUUFBUSxLQUFLLENBQUMsQ0FBQztRQUNoRCxJQUFJLFdBQVcsRUFBRTtZQUNmLE9BQU87U0FDUjtRQUNELElBQUksQ0FBQyxPQUFPLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUM7SUFDeEMsQ0FBQztJQUVPLHVCQUF1QjtRQUM3QixJQUFJLENBQUMsT0FBTyxDQUFDLGdCQUFnQixDQUFDLE9BQU8sRUFBRSxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUM7UUFDNUQsSUFBSSxDQUFDLE9BQU8sQ0FBQyxnQkFBZ0IsQ0FBQyxTQUFTLEVBQUUsSUFBSSxDQUFDLGNBQWMsQ0FBQyxDQUFDO0lBQ2hFLENBQUM7SUFFRCxJQUFZLE9BQU87UUFDakIsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FBQztJQUN2QyxDQUFDO0lBRUQsV0FBVztRQUNULElBQUksQ0FBQyxPQUFPLENBQUMsbUJBQW1CLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQztRQUMvRCxJQUFJLENBQUMsT0FBTyxDQUFDLG1CQUFtQixDQUFDLFNBQVMsRUFBRSxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUM7SUFDbkUsQ0FBQztDQUNGLENBQUE7O1lBN0IwQyxVQUFVOztBQWJ6QztJQUFULE1BQU0sRUFBRTtzRUFBc0U7QUFDdEU7SUFBUixLQUFLLEVBQUU7NkRBQWM7QUFDYjtJQUFSLEtBQUssRUFBRTs2REFBa0I7QUFIZiwyQkFBMkI7SUFIdkMsU0FBUyxDQUFDO1FBQ1QsUUFBUSxFQUFFLHFCQUFxQjtLQUNoQyxDQUFDO0dBQ1csMkJBQTJCLENBMkN2QztTQTNDWSwyQkFBMkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIEVsZW1lbnRSZWYsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uRGVzdHJveSwgT25Jbml0LCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnW3NBY3RpdmF0ZWRDb250ZW50XSdcbn0pXG5leHBvcnQgY2xhc3MgQWNjZXNzaWJpbGl0eUV2ZW50RGlyZWN0aXZlIGltcGxlbWVudHMgT25EZXN0cm95LCBPbkluaXQge1xuICBAT3V0cHV0KCkgc0FjdGl2YXRlZENvbnRlbnQgPSBuZXcgRXZlbnRFbWl0dGVyPFBvaW50ZXJFdmVudCB8IEtleWJvYXJkRXZlbnQ+KCk7XG4gIEBJbnB1dCgpIHRhYmluZGV4ID0gMDtcbiAgQElucHV0KCkgZGlzYWJsZWQgPSBmYWxzZTtcbiAgcHJpdmF0ZSByZWFkb25seSBFVkVOVF9MSVNURU5FUiA9IChldmVudDogUG9pbnRlckV2ZW50IHwgS2V5Ym9hcmRFdmVudCkgPT4ge1xuICAgIGlmIChldmVudCBpbnN0YW5jZW9mIEtleWJvYXJkRXZlbnQpIHtcbiAgICAgIGNvbnN0IGtleSA9IGV2ZW50LmtleTtcbiAgICAgIGNvbnN0IHZhbGlkS2V5cyA9IFsnRW50ZXInLCAnICddO1xuICAgICAgaWYgKCF2YWxpZEtleXMuaW5jbHVkZXMoa2V5KSkge1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG4gICAgfVxuICAgIHRoaXMuc0FjdGl2YXRlZENvbnRlbnQubmV4dChldmVudCk7XG4gIH1cbiAgY29uc3RydWN0b3IocHJpdmF0ZSByZWFkb25seSBlbGVtZW50UmVmOiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PikgeyB9XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgdGhpcy5zZXRUYWJJbmRleCgpO1xuICAgIHRoaXMuY2hlY2tBY2Nlc3NiaWxpdHlFdmVudHMoKTtcbiAgfVxuXG5cbiAgcHJpdmF0ZSBzZXRUYWJJbmRleCgpIHtcbiAgICBjb25zdCBoYXNUYWJJbmRleCA9IHRoaXMuZWxlbWVudC50YWJJbmRleCAhPT0gMDtcbiAgICBpZiAoaGFzVGFiSW5kZXgpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgdGhpcy5lbGVtZW50LnRhYkluZGV4ID0gdGhpcy50YWJpbmRleDtcbiAgfVxuXG4gIHByaXZhdGUgY2hlY2tBY2Nlc3NiaWxpdHlFdmVudHMoKSB7XG4gICAgdGhpcy5lbGVtZW50LmFkZEV2ZW50TGlzdGVuZXIoJ2NsaWNrJywgdGhpcy5FVkVOVF9MSVNURU5FUik7XG4gICAgdGhpcy5lbGVtZW50LmFkZEV2ZW50TGlzdGVuZXIoJ2tleWRvd24nLCB0aGlzLkVWRU5UX0xJU1RFTkVSKTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0IGVsZW1lbnQoKSB7XG4gICAgcmV0dXJuIHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50O1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5lbGVtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ2NsaWNrJywgdGhpcy5FVkVOVF9MSVNURU5FUik7XG4gICAgdGhpcy5lbGVtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ2tleWRvd24nLCB0aGlzLkVWRU5UX0xJU1RFTkVSKTtcbiAgfVxufVxuIl19
@@ -3,15 +3,14 @@ import { NgModule } from "@angular/core";
3
3
  import { CommonModule } from "@angular/common";
4
4
  import { FieldsetComponent } from "./fieldset.component";
5
5
  import { AccessibilityEventsModule } from "../accessibility-events/accessibility-events.module";
6
- import { BrowserAnimationsModule } from "@angular/platform-browser/animations";
7
6
  let FieldsetModule = class FieldsetModule {
8
7
  };
9
8
  FieldsetModule = __decorate([
10
9
  NgModule({
11
- imports: [CommonModule, AccessibilityEventsModule, BrowserAnimationsModule],
10
+ imports: [CommonModule, AccessibilityEventsModule],
12
11
  declarations: [FieldsetComponent],
13
12
  exports: [FieldsetComponent],
14
13
  })
15
14
  ], FieldsetModule);
16
15
  export { FieldsetModule };
17
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmllbGRzZXQubW9kdWxlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQHNlbmlvcnNpc3RlbWFzL2FuZ3VsYXItY29tcG9uZW50cy8iLCJzb3VyY2VzIjpbImNvbXBvbmVudHMvZmllbGRzZXQvZmllbGRzZXQubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUUvQyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUN6RCxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSxxREFBcUQsQ0FBQztBQUNoRyxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQU8vRSxJQUFhLGNBQWMsR0FBM0IsTUFBYSxjQUFjO0NBQUksQ0FBQTtBQUFsQixjQUFjO0lBTDFCLFFBQVEsQ0FBQztRQUNOLE9BQU8sRUFBRSxDQUFDLFlBQVksRUFBRSx5QkFBeUIsRUFBRSx1QkFBdUIsQ0FBQztRQUMzRSxZQUFZLEVBQUUsQ0FBQyxpQkFBaUIsQ0FBQztRQUNqQyxPQUFPLEVBQUUsQ0FBQyxpQkFBaUIsQ0FBQztLQUMvQixDQUFDO0dBQ1csY0FBYyxDQUFJO1NBQWxCLGNBQWMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tIFwiQGFuZ3VsYXIvY29tbW9uXCI7XG5cbmltcG9ydCB7IEZpZWxkc2V0Q29tcG9uZW50IH0gZnJvbSBcIi4vZmllbGRzZXQuY29tcG9uZW50XCI7XG5pbXBvcnQgeyBBY2Nlc3NpYmlsaXR5RXZlbnRzTW9kdWxlIH0gZnJvbSBcIi4uL2FjY2Vzc2liaWxpdHktZXZlbnRzL2FjY2Vzc2liaWxpdHktZXZlbnRzLm1vZHVsZVwiO1xuaW1wb3J0IHsgQnJvd3NlckFuaW1hdGlvbnNNb2R1bGUgfSBmcm9tIFwiQGFuZ3VsYXIvcGxhdGZvcm0tYnJvd3Nlci9hbmltYXRpb25zXCI7XG5cbkBOZ01vZHVsZSh7XG4gICAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgQWNjZXNzaWJpbGl0eUV2ZW50c01vZHVsZSwgQnJvd3NlckFuaW1hdGlvbnNNb2R1bGVdLFxuICAgIGRlY2xhcmF0aW9uczogW0ZpZWxkc2V0Q29tcG9uZW50XSxcbiAgICBleHBvcnRzOiBbRmllbGRzZXRDb21wb25lbnRdLFxufSlcbmV4cG9ydCBjbGFzcyBGaWVsZHNldE1vZHVsZSB7IH1cbiJdfQ==
16
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmllbGRzZXQubW9kdWxlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQHNlbmlvcnNpc3RlbWFzL2FuZ3VsYXItY29tcG9uZW50cy8iLCJzb3VyY2VzIjpbImNvbXBvbmVudHMvZmllbGRzZXQvZmllbGRzZXQubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUUvQyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUN6RCxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSxxREFBcUQsQ0FBQztBQU9oRyxJQUFhLGNBQWMsR0FBM0IsTUFBYSxjQUFjO0NBQUksQ0FBQTtBQUFsQixjQUFjO0lBTDFCLFFBQVEsQ0FBQztRQUNOLE9BQU8sRUFBRSxDQUFDLFlBQVksRUFBRSx5QkFBeUIsQ0FBQztRQUNsRCxZQUFZLEVBQUUsQ0FBQyxpQkFBaUIsQ0FBQztRQUNqQyxPQUFPLEVBQUUsQ0FBQyxpQkFBaUIsQ0FBQztLQUMvQixDQUFDO0dBQ1csY0FBYyxDQUFJO1NBQWxCLGNBQWMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tIFwiQGFuZ3VsYXIvY29tbW9uXCI7XG5cbmltcG9ydCB7IEZpZWxkc2V0Q29tcG9uZW50IH0gZnJvbSBcIi4vZmllbGRzZXQuY29tcG9uZW50XCI7XG5pbXBvcnQgeyBBY2Nlc3NpYmlsaXR5RXZlbnRzTW9kdWxlIH0gZnJvbSBcIi4uL2FjY2Vzc2liaWxpdHktZXZlbnRzL2FjY2Vzc2liaWxpdHktZXZlbnRzLm1vZHVsZVwiO1xuXG5ATmdNb2R1bGUoe1xuICAgIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIEFjY2Vzc2liaWxpdHlFdmVudHNNb2R1bGVdLFxuICAgIGRlY2xhcmF0aW9uczogW0ZpZWxkc2V0Q29tcG9uZW50XSxcbiAgICBleHBvcnRzOiBbRmllbGRzZXRDb21wb25lbnRdLFxufSlcbmV4cG9ydCBjbGFzcyBGaWVsZHNldE1vZHVsZSB7IH1cbiJdfQ==
@@ -1,11 +1,34 @@
1
1
  import { __decorate } from "tslib";
2
- import { Component, Input } from "@angular/core";
2
+ import { Component, EventEmitter, Input, Output } from "@angular/core";
3
3
  let GridMenuItemComponent = class GridMenuItemComponent {
4
+ constructor() {
5
+ this.iconIsFromFontAwesome = false;
6
+ this.clickedGridMenuItem = new EventEmitter();
7
+ this.fontAwesomePrefix = 'fal';
8
+ }
4
9
  onClick() {
5
10
  var _a, _b;
6
- if (this.disabled)
11
+ if (this.disabled) {
7
12
  return;
13
+ }
8
14
  (_b = (_a = this.item).action) === null || _b === void 0 ? void 0 : _b.call(_a);
15
+ this.clickedGridMenuItem.emit(this.item);
16
+ }
17
+ onMouseEnter() {
18
+ if (this.disabled) {
19
+ return;
20
+ }
21
+ this.fontAwesomePrefix = 'fas';
22
+ }
23
+ onMouseLeave() {
24
+ if (this.disabled) {
25
+ return;
26
+ }
27
+ this.fontAwesomePrefix = 'fal';
28
+ }
29
+ get iconFontAwesomeClassName() {
30
+ const prefix = this.item.active ? 'fas' : this.fontAwesomePrefix;
31
+ return `${prefix} ${this.item.icon}`;
9
32
  }
10
33
  get initialLetter() {
11
34
  let initialLetter = "";
@@ -19,18 +42,25 @@ let GridMenuItemComponent = class GridMenuItemComponent {
19
42
  return initialLetter;
20
43
  }
21
44
  get disabled() {
22
- return typeof this.item.disabled === "function" ? !!this.item.disabled() : !!this.item.disabled;
45
+ var _a, _b;
46
+ return typeof ((_a = this.item) === null || _a === void 0 ? void 0 : _a.disabled) === "function" ? !!this.item.disabled() : !!((_b = this.item) === null || _b === void 0 ? void 0 : _b.disabled);
23
47
  }
24
48
  };
25
49
  __decorate([
26
50
  Input()
27
51
  ], GridMenuItemComponent.prototype, "item", void 0);
52
+ __decorate([
53
+ Input()
54
+ ], GridMenuItemComponent.prototype, "iconIsFromFontAwesome", void 0);
55
+ __decorate([
56
+ Output()
57
+ ], GridMenuItemComponent.prototype, "clickedGridMenuItem", void 0);
28
58
  GridMenuItemComponent = __decorate([
29
59
  Component({
30
60
  selector: "s-grid-menu-item",
31
- template: "<button\n class=\"icon-button\"\n [class.icon-button--disabled]=\"disabled\"\n (click)=\"onClick()\">\n <div class=\"icon-wrapper\">\n <span\n *ngIf=\"item.icon; else initialsTemplate\"\n class=\"icon\"\n style=\"background-image: url('{{ item.icon }}');\">\n </span>\n <ng-template #initialsTemplate>\n <span class=\"initials\">{{ initialLetter }}</span>\n </ng-template>\n </div>\n <span class=\"title\">{{ item.label }}</span>\n</button>\n",
32
- styles: [".icon-button{-ms-flex-align:center;align-items:center;background-color:transparent;border:none;cursor:pointer;display:-ms-inline-flexbox;display:inline-flex;-ms-flex-direction:column;flex-direction:column;gap:12px;-ms-flex-pack:center;justify-content:center;padding:5px;transition:transform .3s ease-in-out;width:200px}.icon-button .icon-wrapper{-ms-flex-item-align:center;align-self:center;background-color:#dedce5;border-radius:10px;display:-ms-flexbox;display:flex;height:64px;-ms-flex-pack:center;justify-content:center;overflow:hidden;padding:8px;width:64px}.icon-button .icon-wrapper .icon{background-position:center;background-repeat:no-repeat;background-size:cover;display:inline-block;height:100%;width:100%}.icon-button .icon-wrapper .initials{-ms-flex-align:center;align-items:center;color:#428bca;display:-ms-flexbox;display:flex;font-family:\"Open Sans\",sans-serif;font-size:20px;font-weight:700}.icon-button .title{-webkit-box-orient:vertical;-webkit-line-clamp:2;color:#428bca;display:-webkit-box;font-family:\"Open Sans\",sans-serif;font-size:14px;line-clamp:2;overflow:hidden;text-overflow:ellipsis;width:100%}.icon-button--disabled{cursor:default;opacity:.5}.icon-button:not(.icon-button--disabled):hover{transform:scale(1.05)}"]
61
+ template: "<button\n class=\"icon-button\"\n [class.icon-button-active]=\"item.active\"\n [class.icon-button--disabled]=\"disabled\"\n (sActivatedContent)=\"onClick()\"\n [disabled]=\"disabled\"\n [tabindex]=\"disabled ? -1 : 0\"\n [class.icon-font-awesome]=\"iconIsFromFontAwesome\"\n (mouseenter)=\"onMouseEnter()\"\n (mouseleave)=\"onMouseLeave()\"\n *ngIf=\"item\"\n>\n <div class=\"icon-wrapper\" [class.icon-image]=\"!iconIsFromFontAwesome\">\n <ng-container *ngIf=\"item.icon\">\n <i *ngIf=\"iconIsFromFontAwesome\" [class]=\"iconFontAwesomeClassName\"> </i>\n <span *ngIf=\"!iconIsFromFontAwesome\" class=\"icon\" style=\"background-image: url('{{ item.icon }}');\"> </span>\n </ng-container>\n\n <ng-container *ngIf=\"!item.icon\">\n <span class=\"initials\">{{ initialLetter }}</span>\n </ng-container>\n </div>\n <span class=\"title\">{{ item.label }}</span>\n</button>\n",
62
+ styles: [".icon-button{-ms-flex-align:center;align-items:center;background-color:transparent;border:none;cursor:pointer;display:-ms-inline-flexbox;display:inline-flex;-ms-flex-direction:column;flex-direction:column;gap:12px;-ms-flex-pack:center;justify-content:center;padding:5px;transition:transform .3s ease-in-out;width:200px}.icon-button:not(.icon-button--disabled):hover .initials,.icon-button:not(.icon-button--disabled):hover .title{font-weight:700}.icon-button.icon-font-awesome .title{padding-bottom:1em}.icon-button.icon-font-awesome:not(.icon-button--disabled):hover{border-radius:10px;background-color:#dedce5}.icon-button.icon-font-awesome .icon-wrapper i{color:#009494}.icon-button .icon-wrapper{-ms-flex-item-align:center;align-self:center;border-radius:10px;display:-ms-flexbox;display:flex;height:64px;-ms-flex-pack:center;justify-content:center;overflow:hidden;padding:8px;width:64px;-ms-flex-align:center;align-items:center;font-size:3em}.icon-button .icon-wrapper.icon-image{background-color:#dedce5}.icon-button .icon-wrapper .icon{background-position:center;background-repeat:no-repeat;background-size:cover;display:inline-block;height:100%;width:100%}.icon-button .icon-wrapper .initials{-ms-flex-align:center;align-items:center;display:-ms-flexbox;display:flex;font-family:\"Open Sans\",sans-serif;font-size:20px;font-weight:700}.icon-button .title{-webkit-box-orient:vertical;-webkit-line-clamp:2;display:-webkit-box;font-family:\"Open Sans\",sans-serif;font-size:14px;line-clamp:2;overflow:hidden;text-overflow:ellipsis;width:100%}.icon-button--disabled{cursor:default;opacity:.5}.icon-button:not(.icon-button--disabled):hover{transform:scale(1.05)}.icon-button-active{transform:scale(1.05);border-radius:10px;background-color:#dedce5}.icon-button-active .initials,.icon-button-active .title{font-weight:700}"]
33
63
  })
34
64
  ], GridMenuItemComponent);
35
65
  export { GridMenuItemComponent };
36
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JpZC1tZW51LWl0ZW0uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQHNlbmlvcnNpc3RlbWFzL2FuZ3VsYXItY29tcG9uZW50cy8iLCJzb3VyY2VzIjpbImNvbXBvbmVudHMvZ3JpZC1tZW51L2NvbXBvbmVudHMvZ3JpZC1tZW51LWl0ZW0vZ3JpZC1tZW51LWl0ZW0uY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQVNqRCxJQUFhLHFCQUFxQixHQUFsQyxNQUFhLHFCQUFxQjtJQUl2QixPQUFPOztRQUNWLElBQUksSUFBSSxDQUFDLFFBQVE7WUFBRSxPQUFPO1FBQzFCLE1BQUEsTUFBQSxJQUFJLENBQUMsSUFBSSxFQUFDLE1BQU0sbURBQUs7SUFDekIsQ0FBQztJQUVELElBQVcsYUFBYTtRQUNwQixJQUFJLGFBQWEsR0FBRyxFQUFFLENBQUM7UUFDdkIsSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRTtZQUNqQixNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQyxDQUFDO1lBQzVDLGFBQWEsR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLFdBQVcsRUFBRSxDQUFDO1lBQ2pELElBQUksS0FBSyxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUU7Z0JBQ2xCLGFBQWEsSUFBSSxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLFdBQVcsRUFBRSxDQUFDO2FBQ3JEO1NBQ0o7UUFDRCxPQUFPLGFBQWEsQ0FBQztJQUN6QixDQUFDO0lBRUQsSUFBVyxRQUFRO1FBQ2YsT0FBTyxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxLQUFLLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQztJQUNwRyxDQUFDO0NBQ0osQ0FBQTtBQXRCRztJQURDLEtBQUssRUFBRTttREFDa0I7QUFGakIscUJBQXFCO0lBTGpDLFNBQVMsQ0FBQztRQUNQLFFBQVEsRUFBRSxrQkFBa0I7UUFDNUIsZ2lCQUE4Qzs7S0FFakQsQ0FBQztHQUNXLHFCQUFxQixDQXdCakM7U0F4QlkscUJBQXFCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5cbmltcG9ydCB7IEdyaWRNZW51SXRlbSB9IGZyb20gXCIuLi8uLi90eXBlcy9ncmlkLW1lbnUtaXRlbVwiO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogXCJzLWdyaWQtbWVudS1pdGVtXCIsXG4gICAgdGVtcGxhdGVVcmw6IFwiLi9ncmlkLW1lbnUtaXRlbS5jb21wb25lbnQuaHRtbFwiLFxuICAgIHN0eWxlVXJsczogW1wiLi9ncmlkLW1lbnUtaXRlbS5jb21wb25lbnQuc2Nzc1wiXSxcbn0pXG5leHBvcnQgY2xhc3MgR3JpZE1lbnVJdGVtQ29tcG9uZW50IHtcbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyBpdGVtOiBHcmlkTWVudUl0ZW07XG5cbiAgICBwdWJsaWMgb25DbGljaygpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMuZGlzYWJsZWQpIHJldHVybjtcbiAgICAgICAgdGhpcy5pdGVtLmFjdGlvbj8uKCk7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBpbml0aWFsTGV0dGVyKCk6IHN0cmluZyB7XG4gICAgICAgIGxldCBpbml0aWFsTGV0dGVyID0gXCJcIjtcbiAgICAgICAgaWYgKHRoaXMuaXRlbS5sYWJlbCkge1xuICAgICAgICAgICAgY29uc3Qgd29yZHMgPSB0aGlzLml0ZW0ubGFiZWwuc3BsaXQoXCIgXCIsIDIpO1xuICAgICAgICAgICAgaW5pdGlhbExldHRlciA9IHdvcmRzWzBdLmNoYXJBdCgwKS50b1VwcGVyQ2FzZSgpO1xuICAgICAgICAgICAgaWYgKHdvcmRzLmxlbmd0aCA+IDEpIHtcbiAgICAgICAgICAgICAgICBpbml0aWFsTGV0dGVyICs9IHdvcmRzWzFdLmNoYXJBdCgwKS50b1VwcGVyQ2FzZSgpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHJldHVybiBpbml0aWFsTGV0dGVyO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgZGlzYWJsZWQoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0eXBlb2YgdGhpcy5pdGVtLmRpc2FibGVkID09PSBcImZ1bmN0aW9uXCIgPyAhIXRoaXMuaXRlbS5kaXNhYmxlZCgpIDogISF0aGlzLml0ZW0uZGlzYWJsZWQ7XG4gICAgfVxufVxuIl19
66
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JpZC1tZW51LWl0ZW0uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQHNlbmlvcnNpc3RlbWFzL2FuZ3VsYXItY29tcG9uZW50cy8iLCJzb3VyY2VzIjpbImNvbXBvbmVudHMvZ3JpZC1tZW51L2NvbXBvbmVudHMvZ3JpZC1tZW51LWl0ZW0vZ3JpZC1tZW51LWl0ZW0uY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBU3ZFLElBQWEscUJBQXFCLEdBQWxDLE1BQWEscUJBQXFCO0lBQWxDO1FBS1csMEJBQXFCLEdBQUcsS0FBSyxDQUFDO1FBRTNCLHdCQUFtQixHQUFHLElBQUksWUFBWSxFQUFnQixDQUFDO1FBRTFELHNCQUFpQixHQUFrQixLQUFLLENBQUM7SUE0Q3BELENBQUM7SUExQ1UsT0FBTzs7UUFDVixJQUFJLElBQUksQ0FBQyxRQUFRLEVBQUU7WUFDZixPQUFNO1NBQ1Q7UUFDRCxNQUFBLE1BQUEsSUFBSSxDQUFDLElBQUksRUFBQyxNQUFNLG1EQUFLO1FBQ3JCLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFBO0lBQzVDLENBQUM7SUFFTSxZQUFZO1FBQ2YsSUFBSSxJQUFJLENBQUMsUUFBUSxFQUFFO1lBQ2YsT0FBTTtTQUNUO1FBQ0QsSUFBSSxDQUFDLGlCQUFpQixHQUFHLEtBQUssQ0FBQTtJQUNsQyxDQUFDO0lBRU0sWUFBWTtRQUNmLElBQUksSUFBSSxDQUFDLFFBQVEsRUFBRTtZQUNmLE9BQU07U0FDVDtRQUNELElBQUksQ0FBQyxpQkFBaUIsR0FBRyxLQUFLLENBQUM7SUFDbkMsQ0FBQztJQUVELElBQVcsd0JBQXdCO1FBQy9CLE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQztRQUNqRSxPQUFPLEdBQUcsTUFBTSxJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUE7SUFDeEMsQ0FBQztJQUVELElBQVcsYUFBYTtRQUNwQixJQUFJLGFBQWEsR0FBRyxFQUFFLENBQUM7UUFDdkIsSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRTtZQUNqQixNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQyxDQUFDO1lBQzVDLGFBQWEsR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLFdBQVcsRUFBRSxDQUFDO1lBQ2pELElBQUksS0FBSyxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUU7Z0JBQ2xCLGFBQWEsSUFBSSxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLFdBQVcsRUFBRSxDQUFDO2FBQ3JEO1NBQ0o7UUFDRCxPQUFPLGFBQWEsQ0FBQztJQUN6QixDQUFDO0lBRUQsSUFBVyxRQUFROztRQUNmLE9BQU8sY0FBTyxJQUFJLENBQUMsSUFBSSwwQ0FBRSxRQUFRLENBQUEsS0FBSyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLFFBQUMsSUFBSSxDQUFDLElBQUksMENBQUUsUUFBUSxDQUFBLENBQUM7SUFDdEcsQ0FBQztDQUNKLENBQUE7QUFuREc7SUFEQyxLQUFLLEVBQUU7bURBQ2tCO0FBRzFCO0lBREMsS0FBSyxFQUFFO29FQUM2QjtBQUUzQjtJQUFULE1BQU0sRUFBRTtrRUFBd0Q7QUFQeEQscUJBQXFCO0lBTGpDLFNBQVMsQ0FBQztRQUNQLFFBQVEsRUFBRSxrQkFBa0I7UUFDNUIsdTlCQUE4Qzs7S0FFakQsQ0FBQztHQUNXLHFCQUFxQixDQXFEakM7U0FyRFkscUJBQXFCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPdXRwdXQgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuXG5pbXBvcnQgeyBHcmlkTWVudUl0ZW0gfSBmcm9tIFwiLi4vLi4vdHlwZXMvZ3JpZC1tZW51LWl0ZW1cIjtcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6IFwicy1ncmlkLW1lbnUtaXRlbVwiLFxuICAgIHRlbXBsYXRlVXJsOiBcIi4vZ3JpZC1tZW51LWl0ZW0uY29tcG9uZW50Lmh0bWxcIixcbiAgICBzdHlsZVVybHM6IFtcIi4vZ3JpZC1tZW51LWl0ZW0uY29tcG9uZW50LnNjc3NcIl0sXG59KVxuZXhwb3J0IGNsYXNzIEdyaWRNZW51SXRlbUNvbXBvbmVudCB7XG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgaXRlbTogR3JpZE1lbnVJdGVtO1xuXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgaWNvbklzRnJvbUZvbnRBd2Vzb21lID0gZmFsc2U7XG5cbiAgICBAT3V0cHV0KCkgY2xpY2tlZEdyaWRNZW51SXRlbSA9IG5ldyBFdmVudEVtaXR0ZXI8R3JpZE1lbnVJdGVtPigpO1xuXG4gICAgcHVibGljIGZvbnRBd2Vzb21lUHJlZml4OiAnZmFsJyB8ICdmYXMnID0gJ2ZhbCc7XG5cbiAgICBwdWJsaWMgb25DbGljaygpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMuZGlzYWJsZWQpIHtcbiAgICAgICAgICAgIHJldHVyblxuICAgICAgICB9XG4gICAgICAgIHRoaXMuaXRlbS5hY3Rpb24/LigpO1xuICAgICAgICB0aGlzLmNsaWNrZWRHcmlkTWVudUl0ZW0uZW1pdCh0aGlzLml0ZW0pXG4gICAgfVxuXG4gICAgcHVibGljIG9uTW91c2VFbnRlcigpIHtcbiAgICAgICAgaWYgKHRoaXMuZGlzYWJsZWQpIHtcbiAgICAgICAgICAgIHJldHVyblxuICAgICAgICB9XG4gICAgICAgIHRoaXMuZm9udEF3ZXNvbWVQcmVmaXggPSAnZmFzJ1xuICAgIH1cblxuICAgIHB1YmxpYyBvbk1vdXNlTGVhdmUoKSB7XG4gICAgICAgIGlmICh0aGlzLmRpc2FibGVkKSB7XG4gICAgICAgICAgICByZXR1cm5cbiAgICAgICAgfVxuICAgICAgICB0aGlzLmZvbnRBd2Vzb21lUHJlZml4ID0gJ2ZhbCc7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBpY29uRm9udEF3ZXNvbWVDbGFzc05hbWUoKSB7XG4gICAgICAgIGNvbnN0IHByZWZpeCA9IHRoaXMuaXRlbS5hY3RpdmUgPyAnZmFzJyA6IHRoaXMuZm9udEF3ZXNvbWVQcmVmaXg7XG4gICAgICAgIHJldHVybiBgJHtwcmVmaXh9ICR7dGhpcy5pdGVtLmljb259YFxuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgaW5pdGlhbExldHRlcigpOiBzdHJpbmcge1xuICAgICAgICBsZXQgaW5pdGlhbExldHRlciA9IFwiXCI7XG4gICAgICAgIGlmICh0aGlzLml0ZW0ubGFiZWwpIHtcbiAgICAgICAgICAgIGNvbnN0IHdvcmRzID0gdGhpcy5pdGVtLmxhYmVsLnNwbGl0KFwiIFwiLCAyKTtcbiAgICAgICAgICAgIGluaXRpYWxMZXR0ZXIgPSB3b3Jkc1swXS5jaGFyQXQoMCkudG9VcHBlckNhc2UoKTtcbiAgICAgICAgICAgIGlmICh3b3Jkcy5sZW5ndGggPiAxKSB7XG4gICAgICAgICAgICAgICAgaW5pdGlhbExldHRlciArPSB3b3Jkc1sxXS5jaGFyQXQoMCkudG9VcHBlckNhc2UoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gaW5pdGlhbExldHRlcjtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0IGRpc2FibGVkKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdHlwZW9mIHRoaXMuaXRlbT8uZGlzYWJsZWQgPT09IFwiZnVuY3Rpb25cIiA/ICEhdGhpcy5pdGVtLmRpc2FibGVkKCkgOiAhIXRoaXMuaXRlbT8uZGlzYWJsZWQ7XG4gICAgfVxufVxuIl19
@@ -1,22 +1,61 @@
1
1
  import { __decorate } from "tslib";
2
- import { Component, Input } from "@angular/core";
2
+ import { Component, EventEmitter, Input, Output } from "@angular/core";
3
+ import { isNullOrUndefined } from "../utils/utils";
3
4
  let GridMenuComponent = class GridMenuComponent {
4
5
  constructor() {
6
+ this.useFontAwesomeIcons = false;
5
7
  this.itemsArray = [];
8
+ this.selectable = false;
9
+ this.selectedChange = new EventEmitter();
6
10
  }
7
11
  set items(items) {
8
- this.itemsArray = Array.isArray(items) ? items : [items];
12
+ if (isNullOrUndefined(items)) {
13
+ this.itemsArray = [];
14
+ }
15
+ else {
16
+ this.itemsArray = Array.isArray(items) ? items : [items];
17
+ }
18
+ }
19
+ ngOnChanges(changes) {
20
+ if (changes.selected && changes.selected.isFirstChange()) {
21
+ if (this.selectable) {
22
+ this.selected.active = true;
23
+ }
24
+ }
25
+ }
26
+ onClickGridMenuItem(gridMenuItem) {
27
+ if (!this.selectable) {
28
+ return;
29
+ }
30
+ if (this.previousGridMenuItemClicked) {
31
+ this.previousGridMenuItemClicked.active = false;
32
+ }
33
+ gridMenuItem.active = !gridMenuItem.active;
34
+ this.previousGridMenuItemClicked = gridMenuItem;
35
+ this.selectedChange.next(gridMenuItem);
9
36
  }
10
37
  };
11
38
  __decorate([
12
39
  Input()
13
40
  ], GridMenuComponent.prototype, "items", null);
41
+ __decorate([
42
+ Input()
43
+ ], GridMenuComponent.prototype, "useFontAwesomeIcons", void 0);
44
+ __decorate([
45
+ Input()
46
+ ], GridMenuComponent.prototype, "selectable", void 0);
47
+ __decorate([
48
+ Input()
49
+ ], GridMenuComponent.prototype, "selected", void 0);
50
+ __decorate([
51
+ Output()
52
+ ], GridMenuComponent.prototype, "selectedChange", void 0);
14
53
  GridMenuComponent = __decorate([
15
54
  Component({
16
55
  selector: "s-grid-menu",
17
- template: "<s-grid-menu-item *ngFor=\"let item of itemsArray\" [item]=\"item\"></s-grid-menu-item>\n",
56
+ template: "<section class=\"grid-menu\">\n <s-grid-menu-item\n *ngFor=\"let item of itemsArray\"\n [item]=\"item\"\n [iconIsFromFontAwesome]=\"useFontAwesomeIcons\"\n (clickedGridMenuItem)=\"onClickGridMenuItem($event)\"\n ></s-grid-menu-item>\n</section>\n",
18
57
  styles: [".grid-menu{display:-ms-grid;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,200px);-ms-flex-pack:space-evenly;justify-content:space-evenly}"]
19
58
  })
20
59
  ], GridMenuComponent);
21
60
  export { GridMenuComponent };
22
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JpZC1tZW51LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BzZW5pb3JzaXN0ZW1hcy9hbmd1bGFyLWNvbXBvbmVudHMvIiwic291cmNlcyI6WyJjb21wb25lbnRzL2dyaWQtbWVudS9ncmlkLW1lbnUuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQVNqRCxJQUFhLGlCQUFpQixHQUE5QixNQUFhLGlCQUFpQjtJQUE5QjtRQU1XLGVBQVUsR0FBbUIsRUFBRSxDQUFDO0lBQzNDLENBQUM7SUFMRyxJQUFXLEtBQUssQ0FBQyxLQUFvQztRQUNqRCxJQUFJLENBQUMsVUFBVSxHQUFHLEtBQUssQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQXVCLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDL0UsQ0FBQztDQUdKLENBQUE7QUFMRztJQURDLEtBQUssRUFBRTs4Q0FHUDtBQUpRLGlCQUFpQjtJQUw3QixTQUFTLENBQUM7UUFDUCxRQUFRLEVBQUUsYUFBYTtRQUN2QixxR0FBeUM7O0tBRTVDLENBQUM7R0FDVyxpQkFBaUIsQ0FPN0I7U0FQWSxpQkFBaUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0IH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcblxuaW1wb3J0IHsgR3JpZE1lbnVJdGVtIH0gZnJvbSBcIi4vdHlwZXMvZ3JpZC1tZW51LWl0ZW1cIjtcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6IFwicy1ncmlkLW1lbnVcIixcbiAgICB0ZW1wbGF0ZVVybDogXCIuL2dyaWQtbWVudS5jb21wb25lbnQuaHRtbFwiLFxuICAgIHN0eWxlVXJsczogW1wiLi9ncmlkLW1lbnUuY29tcG9uZW50LnNjc3NcIl0sXG59KVxuZXhwb3J0IGNsYXNzIEdyaWRNZW51Q29tcG9uZW50IHtcbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyBzZXQgaXRlbXMoaXRlbXM6IEdyaWRNZW51SXRlbVtdIHwgR3JpZE1lbnVJdGVtKSB7XG4gICAgICAgIHRoaXMuaXRlbXNBcnJheSA9IEFycmF5LmlzQXJyYXkoaXRlbXMpID8gaXRlbXMgYXMgR3JpZE1lbnVJdGVtW10gOiBbaXRlbXNdO1xuICAgIH1cblxuICAgIHB1YmxpYyBpdGVtc0FycmF5OiBHcmlkTWVudUl0ZW1bXSA9IFtdO1xufVxuIl19
61
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JpZC1tZW51LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BzZW5pb3JzaXN0ZW1hcy9hbmd1bGFyLWNvbXBvbmVudHMvIiwic291cmNlcyI6WyJjb21wb25lbnRzL2dyaWQtbWVudS9ncmlkLW1lbnUuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQWEsTUFBTSxFQUFpQixNQUFNLGVBQWUsQ0FBQztBQUdqRyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQU9uRCxJQUFhLGlCQUFpQixHQUE5QixNQUFhLGlCQUFpQjtJQUE5QjtRQVdhLHdCQUFtQixHQUFHLEtBQUssQ0FBQztRQUU5QixlQUFVLEdBQW1CLEVBQUUsQ0FBQztRQUU5QixlQUFVLEdBQUcsS0FBSyxDQUFDO1FBSWxCLG1CQUFjLEdBQUcsSUFBSSxZQUFZLEVBQWdCLENBQUM7SUFxQmhFLENBQUM7SUFyQ0csSUFBVyxLQUFLLENBQUMsS0FBb0M7UUFDakQsSUFBSSxpQkFBaUIsQ0FBQyxLQUFLLENBQUMsRUFBRTtZQUMxQixJQUFJLENBQUMsVUFBVSxHQUFHLEVBQUUsQ0FBQztTQUN4QjthQUFNO1lBQ0gsSUFBSSxDQUFDLFVBQVUsR0FBRyxLQUFLLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUF1QixDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDO1NBQzlFO0lBQ0wsQ0FBQztJQVlELFdBQVcsQ0FBQyxPQUFzQjtRQUM5QixJQUFJLE9BQU8sQ0FBQyxRQUFRLElBQUksT0FBTyxDQUFDLFFBQVEsQ0FBQyxhQUFhLEVBQUUsRUFBRTtZQUN0RCxJQUFJLElBQUksQ0FBQyxVQUFVLEVBQUU7Z0JBQ2pCLElBQUksQ0FBQyxRQUFRLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQzthQUMvQjtTQUNKO0lBQ0wsQ0FBQztJQUVELG1CQUFtQixDQUFDLFlBQTBCO1FBQzFDLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFO1lBQ2xCLE9BQU87U0FDVjtRQUNELElBQUksSUFBSSxDQUFDLDJCQUEyQixFQUFFO1lBQ2xDLElBQUksQ0FBQywyQkFBMkIsQ0FBQyxNQUFNLEdBQUcsS0FBSyxDQUFDO1NBQ25EO1FBQ0QsWUFBWSxDQUFDLE1BQU0sR0FBRyxDQUFDLFlBQVksQ0FBQyxNQUFNLENBQUM7UUFDM0MsSUFBSSxDQUFDLDJCQUEyQixHQUFHLFlBQVksQ0FBQztRQUNoRCxJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQztJQUMzQyxDQUFDO0NBQ0osQ0FBQTtBQXJDRztJQURDLEtBQUssRUFBRTs4Q0FPUDtBQUVRO0lBQVIsS0FBSyxFQUFFOzhEQUE2QjtBQUk1QjtJQUFSLEtBQUssRUFBRTtxREFBb0I7QUFFbkI7SUFBUixLQUFLLEVBQUU7bURBQXdCO0FBRXRCO0lBQVQsTUFBTSxFQUFFO3lEQUFtRDtBQW5CbkQsaUJBQWlCO0lBTDdCLFNBQVMsQ0FBQztRQUNQLFFBQVEsRUFBRSxhQUFhO1FBQ3ZCLG9TQUF5Qzs7S0FFNUMsQ0FBQztHQUNXLGlCQUFpQixDQXdDN0I7U0F4Q1ksaUJBQWlCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkNoYW5nZXMsIE91dHB1dCwgU2ltcGxlQ2hhbmdlcyB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5cbmltcG9ydCB7IEdyaWRNZW51SXRlbSB9IGZyb20gXCIuL3R5cGVzL2dyaWQtbWVudS1pdGVtXCI7XG5pbXBvcnQgeyBpc051bGxPclVuZGVmaW5lZCB9IGZyb20gXCIuLi91dGlscy91dGlsc1wiO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogXCJzLWdyaWQtbWVudVwiLFxuICAgIHRlbXBsYXRlVXJsOiBcIi4vZ3JpZC1tZW51LmNvbXBvbmVudC5odG1sXCIsXG4gICAgc3R5bGVVcmxzOiBbXCIuL2dyaWQtbWVudS5jb21wb25lbnQuc2Nzc1wiXSxcbn0pXG5leHBvcnQgY2xhc3MgR3JpZE1lbnVDb21wb25lbnQgaW1wbGVtZW50cyBPbkNoYW5nZXMge1xuICAgIHByaXZhdGUgcHJldmlvdXNHcmlkTWVudUl0ZW1DbGlja2VkOiBHcmlkTWVudUl0ZW0gfCB1bmRlZmluZWQ7XG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgc2V0IGl0ZW1zKGl0ZW1zOiBHcmlkTWVudUl0ZW1bXSB8IEdyaWRNZW51SXRlbSkge1xuICAgICAgICBpZiAoaXNOdWxsT3JVbmRlZmluZWQoaXRlbXMpKSB7XG4gICAgICAgICAgICB0aGlzLml0ZW1zQXJyYXkgPSBbXTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMuaXRlbXNBcnJheSA9IEFycmF5LmlzQXJyYXkoaXRlbXMpID8gaXRlbXMgYXMgR3JpZE1lbnVJdGVtW10gOiBbaXRlbXNdO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQElucHV0KCkgdXNlRm9udEF3ZXNvbWVJY29ucyA9IGZhbHNlO1xuXG4gICAgcHVibGljIGl0ZW1zQXJyYXk6IEdyaWRNZW51SXRlbVtdID0gW107XG5cbiAgICBASW5wdXQoKSBzZWxlY3RhYmxlID0gZmFsc2U7XG5cbiAgICBASW5wdXQoKSBzZWxlY3RlZDogR3JpZE1lbnVJdGVtO1xuXG4gICAgQE91dHB1dCgpIHNlbGVjdGVkQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxHcmlkTWVudUl0ZW0+KCk7XG5cbiAgICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XG4gICAgICAgIGlmIChjaGFuZ2VzLnNlbGVjdGVkICYmIGNoYW5nZXMuc2VsZWN0ZWQuaXNGaXJzdENoYW5nZSgpKSB7XG4gICAgICAgICAgICBpZiAodGhpcy5zZWxlY3RhYmxlKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5zZWxlY3RlZC5hY3RpdmUgPSB0cnVlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgb25DbGlja0dyaWRNZW51SXRlbShncmlkTWVudUl0ZW06IEdyaWRNZW51SXRlbSkge1xuICAgICAgICBpZiAoIXRoaXMuc2VsZWN0YWJsZSkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIGlmICh0aGlzLnByZXZpb3VzR3JpZE1lbnVJdGVtQ2xpY2tlZCkge1xuICAgICAgICAgICAgdGhpcy5wcmV2aW91c0dyaWRNZW51SXRlbUNsaWNrZWQuYWN0aXZlID0gZmFsc2U7XG4gICAgICAgIH1cbiAgICAgICAgZ3JpZE1lbnVJdGVtLmFjdGl2ZSA9ICFncmlkTWVudUl0ZW0uYWN0aXZlO1xuICAgICAgICB0aGlzLnByZXZpb3VzR3JpZE1lbnVJdGVtQ2xpY2tlZCA9IGdyaWRNZW51SXRlbTtcbiAgICAgICAgdGhpcy5zZWxlY3RlZENoYW5nZS5uZXh0KGdyaWRNZW51SXRlbSk7XG4gICAgfVxufVxuIl19
@@ -3,14 +3,15 @@ import { NgModule } from "@angular/core";
3
3
  import { CommonModule } from "@angular/common";
4
4
  import { GridMenuItemComponent } from "./components/grid-menu-item/grid-menu-item.component";
5
5
  import { GridMenuComponent } from "./grid-menu.component";
6
+ import { AccessibilityEventsModule } from "../accessibility-events/accessibility-events.module";
6
7
  let GridMenuModule = class GridMenuModule {
7
8
  };
8
9
  GridMenuModule = __decorate([
9
10
  NgModule({
10
- imports: [CommonModule],
11
+ imports: [CommonModule, AccessibilityEventsModule],
11
12
  declarations: [GridMenuItemComponent, GridMenuComponent],
12
13
  exports: [GridMenuItemComponent, GridMenuComponent],
13
14
  })
14
15
  ], GridMenuModule);
15
16
  export { GridMenuModule };
16
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JpZC1tZW51Lm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BzZW5pb3JzaXN0ZW1hcy9hbmd1bGFyLWNvbXBvbmVudHMvIiwic291cmNlcyI6WyJjb21wb25lbnRzL2dyaWQtbWVudS9ncmlkLW1lbnUubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUUvQyxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxzREFBc0QsQ0FBQztBQUM3RixPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQU8xRCxJQUFhLGNBQWMsR0FBM0IsTUFBYSxjQUFjO0NBQUcsQ0FBQTtBQUFqQixjQUFjO0lBTDFCLFFBQVEsQ0FBQztRQUNOLE9BQU8sRUFBRSxDQUFDLFlBQVksQ0FBQztRQUN2QixZQUFZLEVBQUUsQ0FBQyxxQkFBcUIsRUFBRSxpQkFBaUIsQ0FBQztRQUN4RCxPQUFPLEVBQUUsQ0FBQyxxQkFBcUIsRUFBRSxpQkFBaUIsQ0FBQztLQUN0RCxDQUFDO0dBQ1csY0FBYyxDQUFHO1NBQWpCLGNBQWMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tIFwiQGFuZ3VsYXIvY29tbW9uXCI7XG5cbmltcG9ydCB7IEdyaWRNZW51SXRlbUNvbXBvbmVudCB9IGZyb20gXCIuL2NvbXBvbmVudHMvZ3JpZC1tZW51LWl0ZW0vZ3JpZC1tZW51LWl0ZW0uY29tcG9uZW50XCI7XG5pbXBvcnQgeyBHcmlkTWVudUNvbXBvbmVudCB9IGZyb20gXCIuL2dyaWQtbWVudS5jb21wb25lbnRcIjtcblxuQE5nTW9kdWxlKHtcbiAgICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlXSxcbiAgICBkZWNsYXJhdGlvbnM6IFtHcmlkTWVudUl0ZW1Db21wb25lbnQsIEdyaWRNZW51Q29tcG9uZW50XSxcbiAgICBleHBvcnRzOiBbR3JpZE1lbnVJdGVtQ29tcG9uZW50LCBHcmlkTWVudUNvbXBvbmVudF0sXG59KVxuZXhwb3J0IGNsYXNzIEdyaWRNZW51TW9kdWxlIHt9XG4iXX0=
17
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JpZC1tZW51Lm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BzZW5pb3JzaXN0ZW1hcy9hbmd1bGFyLWNvbXBvbmVudHMvIiwic291cmNlcyI6WyJjb21wb25lbnRzL2dyaWQtbWVudS9ncmlkLW1lbnUubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUUvQyxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxzREFBc0QsQ0FBQztBQUM3RixPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUMxRCxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSxxREFBcUQsQ0FBQztBQVFoRyxJQUFhLGNBQWMsR0FBM0IsTUFBYSxjQUFjO0NBQUksQ0FBQTtBQUFsQixjQUFjO0lBTDFCLFFBQVEsQ0FBQztRQUNOLE9BQU8sRUFBRSxDQUFDLFlBQVksRUFBRSx5QkFBeUIsQ0FBQztRQUNsRCxZQUFZLEVBQUUsQ0FBQyxxQkFBcUIsRUFBRSxpQkFBaUIsQ0FBQztRQUN4RCxPQUFPLEVBQUUsQ0FBQyxxQkFBcUIsRUFBRSxpQkFBaUIsQ0FBQztLQUN0RCxDQUFDO0dBQ1csY0FBYyxDQUFJO1NBQWxCLGNBQWMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tIFwiQGFuZ3VsYXIvY29tbW9uXCI7XG5cbmltcG9ydCB7IEdyaWRNZW51SXRlbUNvbXBvbmVudCB9IGZyb20gXCIuL2NvbXBvbmVudHMvZ3JpZC1tZW51LWl0ZW0vZ3JpZC1tZW51LWl0ZW0uY29tcG9uZW50XCI7XG5pbXBvcnQgeyBHcmlkTWVudUNvbXBvbmVudCB9IGZyb20gXCIuL2dyaWQtbWVudS5jb21wb25lbnRcIjtcbmltcG9ydCB7IEFjY2Vzc2liaWxpdHlFdmVudHNNb2R1bGUgfSBmcm9tIFwiLi4vYWNjZXNzaWJpbGl0eS1ldmVudHMvYWNjZXNzaWJpbGl0eS1ldmVudHMubW9kdWxlXCI7XG5cblxuQE5nTW9kdWxlKHtcbiAgICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBBY2Nlc3NpYmlsaXR5RXZlbnRzTW9kdWxlXSxcbiAgICBkZWNsYXJhdGlvbnM6IFtHcmlkTWVudUl0ZW1Db21wb25lbnQsIEdyaWRNZW51Q29tcG9uZW50XSxcbiAgICBleHBvcnRzOiBbR3JpZE1lbnVJdGVtQ29tcG9uZW50LCBHcmlkTWVudUNvbXBvbmVudF0sXG59KVxuZXhwb3J0IGNsYXNzIEdyaWRNZW51TW9kdWxlIHsgfVxuIl19
@@ -1 +1 @@
1
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JpZC1tZW51LWl0ZW0uanMiLCJzb3VyY2VSb290Ijoibmc6Ly9Ac2VuaW9yc2lzdGVtYXMvYW5ndWxhci1jb21wb25lbnRzLyIsInNvdXJjZXMiOlsiY29tcG9uZW50cy9ncmlkLW1lbnUvdHlwZXMvZ3JpZC1tZW51LWl0ZW0udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCB0eXBlIEdyaWRNZW51SXRlbSA9IHtcbiAgICBpY29uPzogc3RyaW5nO1xuICAgIGxhYmVsOiBzdHJpbmc7XG4gICAgYWN0aW9uOiAoKSA9PiB2b2lkO1xuICAgIGRpc2FibGVkPzogKCgpID0+IGJvb2xlYW4pIHwgYm9vbGVhbjtcbn07XG4iXX0=
1
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JpZC1tZW51LWl0ZW0uanMiLCJzb3VyY2VSb290Ijoibmc6Ly9Ac2VuaW9yc2lzdGVtYXMvYW5ndWxhci1jb21wb25lbnRzLyIsInNvdXJjZXMiOlsiY29tcG9uZW50cy9ncmlkLW1lbnUvdHlwZXMvZ3JpZC1tZW51LWl0ZW0udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCB0eXBlIEdyaWRNZW51SXRlbSA9IHtcbiAgICAvKipcbiAgICAqIEBwYXJhbSB7c3RyaW5nfSBpY29uIFRoZSBpY29uIGNsYXNzIG5hbWUuXG4gICAgKiBGb3IgRm9udEF3ZXNvbWUgaWNvbnMsIHByb3ZpZGUgb25seSB0aGUgaWNvbiBuYW1lIChlLmcuLCAncG93ZXItb2ZmJyksIHdpdGhvdXQgcHJlZml4ZXMgbGlrZSAnZmFsJyBvciAnZmFzJy5cbiAgICAqL1xuICAgIGljb24/OiBzdHJpbmc7XG4gICAgbGFiZWw/OiBzdHJpbmc7XG4gICAgYWN0aW9uOiAoKSA9PiB2b2lkO1xuICAgIGRpc2FibGVkPzogKCgpID0+IGJvb2xlYW4pIHwgYm9vbGVhbjtcbiAgICBhY3RpdmU/OiBib29sZWFuXG59O1xuIl19
@@ -16,8 +16,17 @@ let IAInsightCardComponent = class IAInsightCardComponent {
16
16
  this.dislikeSelected = false;
17
17
  }
18
18
  toggle() {
19
- this.open = !this.open;
20
- this._requestInsight();
19
+ const newOpenState = !this.open;
20
+ this.open = newOpenState;
21
+ if (newOpenState === true && this.insight.onOpenSidebar) {
22
+ this.insight.onOpenSidebar();
23
+ }
24
+ else if (newOpenState === false && this.insight.onCloseSideBar) {
25
+ this.insight.onCloseSideBar();
26
+ }
27
+ if (newOpenState === true) {
28
+ this._requestInsight();
29
+ }
21
30
  }
22
31
  onLikeSelected() {
23
32
  var _a, _b;
@@ -60,6 +69,9 @@ let IAInsightCardComponent = class IAInsightCardComponent {
60
69
  .pipe(first(), finalize(() => (this.isLoading = false)))
61
70
  .subscribe((content) => {
62
71
  this.content = marked.marked(content);
72
+ if (this.insight.onContentLoaded) {
73
+ this.insight.onContentLoaded();
74
+ }
63
75
  });
64
76
  }
65
77
  };
@@ -79,4 +91,4 @@ IAInsightCardComponent = __decorate([
79
91
  })
80
92
  ], IAInsightCardComponent);
81
93
  export { IAInsightCardComponent };
82
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWEtaW5zaWdodC1jYXJkLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BzZW5pb3JzaXN0ZW1hcy9hbmd1bGFyLWNvbXBvbmVudHMvIiwic291cmNlcyI6WyJjb21wb25lbnRzL2lhLWluc2lnaHQvY29tcG9uZW50cy9pYS1pbnNpZ2h0LWNhcmQvaWEtaW5zaWdodC1jYXJkLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ25ELE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRWpELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFakQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBRzVELE1BQU0sTUFBTSxHQUFHLE9BQU8sQ0FBQyxRQUFRLENBQUMsQ0FBQztBQU9qQyxJQUFhLHNCQUFzQixHQUFuQyxNQUFhLHNCQUFzQjtJQVcvQixZQUNxQixTQUFvQixFQUNwQixZQUEwQixFQUMxQixnQkFBa0M7UUFGbEMsY0FBUyxHQUFULFNBQVMsQ0FBVztRQUNwQixpQkFBWSxHQUFaLFlBQVksQ0FBYztRQUMxQixxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQWtCO1FBVmhELFNBQUksR0FBRyxLQUFLLENBQUM7UUFDYixjQUFTLEdBQUcsS0FBSyxDQUFDO1FBR2xCLGlCQUFZLEdBQUcsS0FBSyxDQUFDO1FBQ3JCLG9CQUFlLEdBQUcsS0FBSyxDQUFDO0lBTTVCLENBQUM7SUFFRyxNQUFNO1FBQ1QsSUFBSSxDQUFDLElBQUksR0FBRyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUM7UUFFdkIsSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFDO0lBQzNCLENBQUM7SUFFTSxjQUFjOztRQUNqQixJQUFJLElBQUksQ0FBQyxZQUFZLEVBQUU7WUFDbkIsSUFBSSxDQUFDLFlBQVksR0FBRyxLQUFLLENBQUM7U0FDN0I7YUFBTTtZQUNILElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDO1lBQ3pCLElBQUksQ0FBQyxlQUFlLEdBQUcsS0FBSyxDQUFDO1lBQzdCLE1BQUEsTUFBQSxJQUFJLENBQUMsT0FBTyxFQUFDLGNBQWMsbURBQUs7U0FDbkM7SUFDTCxDQUFDO0lBRU0saUJBQWlCOztRQUNwQixJQUFJLElBQUksQ0FBQyxlQUFlLEVBQUU7WUFDdEIsSUFBSSxDQUFDLGVBQWUsR0FBRyxLQUFLLENBQUM7U0FDaEM7YUFBTTtZQUNILElBQUksQ0FBQyxlQUFlLEdBQUcsSUFBSSxDQUFDO1lBQzVCLElBQUksQ0FBQyxZQUFZLEdBQUcsS0FBSyxDQUFDO1lBQzFCLE1BQUEsTUFBQSxJQUFJLENBQUMsT0FBTyxFQUFDLGlCQUFpQixtREFBSztTQUN0QztJQUNMLENBQUM7SUFFTSxXQUFXOztRQUNkLE1BQUEsTUFBQSxJQUFJLENBQUMsT0FBTyxFQUFDLE1BQU0sbURBQUcsSUFBSSxDQUFDLE9BQU8sRUFBRTtRQUVwQyxJQUFJLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsRUFBRTtZQUNuQyxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQztnQkFDbkIsUUFBUSxFQUFFLE1BQU07Z0JBQ2hCLEtBQUssRUFBRSxJQUFJLENBQUMsZ0JBQWdCLENBQUMsT0FBTyxDQUFDLGlEQUFpRCxDQUFDO2FBQzFGLENBQUMsQ0FBQztTQUNOO0lBQ0wsQ0FBQztJQUVNLGFBQWE7UUFDaEIsSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFDO0lBQzNCLENBQUM7SUFFTyxlQUFlO1FBQ25CLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDO1FBRXRCLElBQUksQ0FBQyxPQUFPLENBQUMsUUFBUTthQUNoQixJQUFJLENBQ0QsS0FBSyxFQUFFLEVBQ1AsUUFBUSxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLFNBQVMsR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUMzQzthQUNBLFNBQVMsQ0FBQyxDQUFDLE9BQWUsRUFBRSxFQUFFO1lBQzNCLElBQUksQ0FBQyxPQUFPLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUMxQyxDQUFDLENBQUMsQ0FBQztJQUNYLENBQUM7Q0FDSixDQUFBOztZQTFEbUMsU0FBUztZQUNOLFlBQVk7WUFDUixnQkFBZ0I7O0FBWnZEO0lBREMsS0FBSyxFQUFFO3VEQUNzQjtBQUZyQixzQkFBc0I7SUFMbEMsU0FBUyxDQUFDO1FBQ1AsUUFBUSxFQUFFLG1CQUFtQjtRQUM3Qix1cUZBQStDOztLQUVsRCxDQUFDO0dBQ1csc0JBQXNCLENBc0VsQztTQXRFWSxzQkFBc0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDbGlwYm9hcmQgfSBmcm9tIFwiQGFuZ3VsYXIvY2RrL2NsaXBib2FyZFwiO1xuaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5cbmltcG9ydCB7IFRyYW5zbGF0ZVNlcnZpY2UgfSBmcm9tIFwiQG5neC10cmFuc2xhdGUvY29yZVwiO1xuaW1wb3J0IHsgZmluYWxpemUsIGZpcnN0IH0gZnJvbSBcInJ4anMvb3BlcmF0b3JzXCI7XG5cbmltcG9ydCB7IFRvYXN0U2VydmljZSB9IGZyb20gXCIuLi8uLi8uLi90b2FzdC90b2FzdC5zZXJ2aWNlXCI7XG5pbXBvcnQgeyBJQUluc2lnaHRJdGVtIH0gZnJvbSBcIi4uLy4uL21vZGVscy9pYS1pbnNpZ2h0LWl0ZW1cIjtcblxuY29uc3QgbWFya2VkID0gcmVxdWlyZShcIm1hcmtlZFwiKTtcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6IFwicy1pYS1pbnNpZ2h0LWNhcmRcIixcbiAgICB0ZW1wbGF0ZVVybDogXCIuL2lhLWluc2lnaHQtY2FyZC5jb21wb25lbnQuaHRtbFwiLFxuICAgIHN0eWxlVXJsczogW1wiLi9pYS1pbnNpZ2h0LWNhcmQuY29tcG9uZW50LnNjc3NcIl0sXG59KVxuZXhwb3J0IGNsYXNzIElBSW5zaWdodENhcmRDb21wb25lbnQge1xuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIGluc2lnaHQ6IElBSW5zaWdodEl0ZW07XG5cbiAgICBwdWJsaWMgb3BlbiA9IGZhbHNlO1xuICAgIHB1YmxpYyBpc0xvYWRpbmcgPSBmYWxzZTtcbiAgICBwdWJsaWMgY29udGVudDogc3RyaW5nO1xuXG4gICAgcHVibGljIGxpa2VTZWxlY3RlZCA9IGZhbHNlO1xuICAgIHB1YmxpYyBkaXNsaWtlU2VsZWN0ZWQgPSBmYWxzZTtcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBwcml2YXRlIHJlYWRvbmx5IGNsaXBib2FyZDogQ2xpcGJvYXJkLFxuICAgICAgICBwcml2YXRlIHJlYWRvbmx5IHRvYXN0U2VydmljZTogVG9hc3RTZXJ2aWNlLFxuICAgICAgICBwcml2YXRlIHJlYWRvbmx5IHRyYW5zbGF0ZVNlcnZpY2U6IFRyYW5zbGF0ZVNlcnZpY2UsXG4gICAgKSB7fVxuXG4gICAgcHVibGljIHRvZ2dsZSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5vcGVuID0gIXRoaXMub3BlbjtcblxuICAgICAgICB0aGlzLl9yZXF1ZXN0SW5zaWdodCgpO1xuICAgIH1cblxuICAgIHB1YmxpYyBvbkxpa2VTZWxlY3RlZCgpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMubGlrZVNlbGVjdGVkKSB7XG4gICAgICAgICAgICB0aGlzLmxpa2VTZWxlY3RlZCA9IGZhbHNlO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5saWtlU2VsZWN0ZWQgPSB0cnVlO1xuICAgICAgICAgICAgdGhpcy5kaXNsaWtlU2VsZWN0ZWQgPSBmYWxzZTtcbiAgICAgICAgICAgIHRoaXMuaW5zaWdodC5vbkxpa2VTZWxlY3RlZD8uKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwdWJsaWMgb25EaXNsaWtlU2VsZWN0ZWQoKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLmRpc2xpa2VTZWxlY3RlZCkge1xuICAgICAgICAgICAgdGhpcy5kaXNsaWtlU2VsZWN0ZWQgPSBmYWxzZTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMuZGlzbGlrZVNlbGVjdGVkID0gdHJ1ZTtcbiAgICAgICAgICAgIHRoaXMubGlrZVNlbGVjdGVkID0gZmFsc2U7XG4gICAgICAgICAgICB0aGlzLmluc2lnaHQub25EaXNsaWtlU2VsZWN0ZWQ/LigpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHVibGljIGNvcHlDb250ZW50KCk6IHZvaWQge1xuICAgICAgICB0aGlzLmluc2lnaHQub25Db3B5Py4odGhpcy5jb250ZW50KTtcblxuICAgICAgICBpZiAodGhpcy5jbGlwYm9hcmQuY29weSh0aGlzLmNvbnRlbnQpKSB7XG4gICAgICAgICAgICB0aGlzLnRvYXN0U2VydmljZS5zaG93KHtcbiAgICAgICAgICAgICAgICBzZXZlcml0eTogXCJpbmZvXCIsXG4gICAgICAgICAgICAgICAgdGl0bGU6IHRoaXMudHJhbnNsYXRlU2VydmljZS5pbnN0YW50KFwicGxhdGZvcm0uYW5ndWxhcl9jb21wb25lbnRzLmNvcGllZF90b19jbGlwYm9hcmRcIiksXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHB1YmxpYyByZWxvYWRDb250ZW50KCk6IHZvaWQge1xuICAgICAgICB0aGlzLl9yZXF1ZXN0SW5zaWdodCgpO1xuICAgIH1cblxuICAgIHByaXZhdGUgX3JlcXVlc3RJbnNpZ2h0KCk6IHZvaWQge1xuICAgICAgICB0aGlzLmlzTG9hZGluZyA9IHRydWU7XG5cbiAgICAgICAgdGhpcy5pbnNpZ2h0LnJlcXVlc3QkXG4gICAgICAgICAgICAucGlwZShcbiAgICAgICAgICAgICAgICBmaXJzdCgpLFxuICAgICAgICAgICAgICAgIGZpbmFsaXplKCgpID0+ICh0aGlzLmlzTG9hZGluZyA9IGZhbHNlKSlcbiAgICAgICAgICAgIClcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKGNvbnRlbnQ6IHN0cmluZykgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMuY29udGVudCA9IG1hcmtlZC5tYXJrZWQoY29udGVudCk7XG4gICAgICAgICAgICB9KTtcbiAgICB9XG59XG4iXX0=
94
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWEtaW5zaWdodC1jYXJkLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BzZW5pb3JzaXN0ZW1hcy9hbmd1bGFyLWNvbXBvbmVudHMvIiwic291cmNlcyI6WyJjb21wb25lbnRzL2lhLWluc2lnaHQvY29tcG9uZW50cy9pYS1pbnNpZ2h0LWNhcmQvaWEtaW5zaWdodC1jYXJkLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ25ELE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRWpELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFakQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBRzVELE1BQU0sTUFBTSxHQUFHLE9BQU8sQ0FBQyxRQUFRLENBQUMsQ0FBQztBQU9qQyxJQUFhLHNCQUFzQixHQUFuQyxNQUFhLHNCQUFzQjtJQVcvQixZQUNxQixTQUFvQixFQUNwQixZQUEwQixFQUMxQixnQkFBa0M7UUFGbEMsY0FBUyxHQUFULFNBQVMsQ0FBVztRQUNwQixpQkFBWSxHQUFaLFlBQVksQ0FBYztRQUMxQixxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQWtCO1FBVmhELFNBQUksR0FBRyxLQUFLLENBQUM7UUFDYixjQUFTLEdBQUcsS0FBSyxDQUFDO1FBR2xCLGlCQUFZLEdBQUcsS0FBSyxDQUFDO1FBQ3JCLG9CQUFlLEdBQUcsS0FBSyxDQUFDO0lBTTNCLENBQUM7SUFFRSxNQUFNO1FBQ1QsTUFBTSxZQUFZLEdBQUcsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDO1FBQ2hDLElBQUksQ0FBQyxJQUFJLEdBQUcsWUFBWSxDQUFDO1FBQ3pCLElBQUksWUFBWSxLQUFLLElBQUksSUFBSSxJQUFJLENBQUMsT0FBTyxDQUFDLGFBQWEsRUFBRTtZQUNyRCxJQUFJLENBQUMsT0FBTyxDQUFDLGFBQWEsRUFBRSxDQUFDO1NBQ2hDO2FBQU0sSUFBSSxZQUFZLEtBQUssS0FBSyxJQUFJLElBQUksQ0FBQyxPQUFPLENBQUMsY0FBYyxFQUFFO1lBQzlELElBQUksQ0FBQyxPQUFPLENBQUMsY0FBYyxFQUFFLENBQUM7U0FDakM7UUFDRCxJQUFJLFlBQVksS0FBSyxJQUFJLEVBQUU7WUFDdkIsSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFDO1NBQzFCO0lBQ0wsQ0FBQztJQUVNLGNBQWM7O1FBQ2pCLElBQUksSUFBSSxDQUFDLFlBQVksRUFBRTtZQUNuQixJQUFJLENBQUMsWUFBWSxHQUFHLEtBQUssQ0FBQztTQUM3QjthQUFNO1lBQ0gsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUM7WUFDekIsSUFBSSxDQUFDLGVBQWUsR0FBRyxLQUFLLENBQUM7WUFDN0IsTUFBQSxNQUFBLElBQUksQ0FBQyxPQUFPLEVBQUMsY0FBYyxtREFBSztTQUNuQztJQUNMLENBQUM7SUFFTSxpQkFBaUI7O1FBQ3BCLElBQUksSUFBSSxDQUFDLGVBQWUsRUFBRTtZQUN0QixJQUFJLENBQUMsZUFBZSxHQUFHLEtBQUssQ0FBQztTQUNoQzthQUFNO1lBQ0gsSUFBSSxDQUFDLGVBQWUsR0FBRyxJQUFJLENBQUM7WUFDNUIsSUFBSSxDQUFDLFlBQVksR0FBRyxLQUFLLENBQUM7WUFDMUIsTUFBQSxNQUFBLElBQUksQ0FBQyxPQUFPLEVBQUMsaUJBQWlCLG1EQUFLO1NBQ3RDO0lBQ0wsQ0FBQztJQUVNLFdBQVc7O1FBQ2QsTUFBQSxNQUFBLElBQUksQ0FBQyxPQUFPLEVBQUMsTUFBTSxtREFBRyxJQUFJLENBQUMsT0FBTyxFQUFFO1FBRXBDLElBQUksSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxFQUFFO1lBQ25DLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDO2dCQUNuQixRQUFRLEVBQUUsTUFBTTtnQkFDaEIsS0FBSyxFQUFFLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFPLENBQUMsaURBQWlELENBQUM7YUFDMUYsQ0FBQyxDQUFDO1NBQ047SUFDTCxDQUFDO0lBRU0sYUFBYTtRQUNoQixJQUFJLENBQUMsZUFBZSxFQUFFLENBQUM7SUFDM0IsQ0FBQztJQUVPLGVBQWU7UUFDbkIsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUM7UUFFdEIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxRQUFRO2FBQ2hCLElBQUksQ0FDRCxLQUFLLEVBQUUsRUFDUCxRQUFRLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsU0FBUyxHQUFHLEtBQUssQ0FBQyxDQUFDLENBQzNDO2FBQ0EsU0FBUyxDQUFDLENBQUMsT0FBZSxFQUFFLEVBQUU7WUFDM0IsSUFBSSxDQUFDLE9BQU8sR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1lBQ3RDLElBQUksSUFBSSxDQUFDLE9BQU8sQ0FBQyxlQUFlLEVBQUU7Z0JBQzlCLElBQUksQ0FBQyxPQUFPLENBQUMsZUFBZSxFQUFFLENBQUE7YUFDakM7UUFDTCxDQUFDLENBQUMsQ0FBQztJQUNYLENBQUM7Q0FDSixDQUFBOztZQXBFbUMsU0FBUztZQUNOLFlBQVk7WUFDUixnQkFBZ0I7O0FBWnZEO0lBREMsS0FBSyxFQUFFO3VEQUNzQjtBQUZyQixzQkFBc0I7SUFMbEMsU0FBUyxDQUFDO1FBQ1AsUUFBUSxFQUFFLG1CQUFtQjtRQUM3Qix1cUZBQStDOztLQUVsRCxDQUFDO0dBQ1csc0JBQXNCLENBZ0ZsQztTQWhGWSxzQkFBc0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDbGlwYm9hcmQgfSBmcm9tIFwiQGFuZ3VsYXIvY2RrL2NsaXBib2FyZFwiO1xuaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5cbmltcG9ydCB7IFRyYW5zbGF0ZVNlcnZpY2UgfSBmcm9tIFwiQG5neC10cmFuc2xhdGUvY29yZVwiO1xuaW1wb3J0IHsgZmluYWxpemUsIGZpcnN0IH0gZnJvbSBcInJ4anMvb3BlcmF0b3JzXCI7XG5cbmltcG9ydCB7IFRvYXN0U2VydmljZSB9IGZyb20gXCIuLi8uLi8uLi90b2FzdC90b2FzdC5zZXJ2aWNlXCI7XG5pbXBvcnQgeyBJQUluc2lnaHRJdGVtIH0gZnJvbSBcIi4uLy4uL21vZGVscy9pYS1pbnNpZ2h0LWl0ZW1cIjtcblxuY29uc3QgbWFya2VkID0gcmVxdWlyZShcIm1hcmtlZFwiKTtcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6IFwicy1pYS1pbnNpZ2h0LWNhcmRcIixcbiAgICB0ZW1wbGF0ZVVybDogXCIuL2lhLWluc2lnaHQtY2FyZC5jb21wb25lbnQuaHRtbFwiLFxuICAgIHN0eWxlVXJsczogW1wiLi9pYS1pbnNpZ2h0LWNhcmQuY29tcG9uZW50LnNjc3NcIl0sXG59KVxuZXhwb3J0IGNsYXNzIElBSW5zaWdodENhcmRDb21wb25lbnQge1xuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIGluc2lnaHQ6IElBSW5zaWdodEl0ZW07XG5cbiAgICBwdWJsaWMgb3BlbiA9IGZhbHNlO1xuICAgIHB1YmxpYyBpc0xvYWRpbmcgPSBmYWxzZTtcbiAgICBwdWJsaWMgY29udGVudDogc3RyaW5nO1xuXG4gICAgcHVibGljIGxpa2VTZWxlY3RlZCA9IGZhbHNlO1xuICAgIHB1YmxpYyBkaXNsaWtlU2VsZWN0ZWQgPSBmYWxzZTtcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBwcml2YXRlIHJlYWRvbmx5IGNsaXBib2FyZDogQ2xpcGJvYXJkLFxuICAgICAgICBwcml2YXRlIHJlYWRvbmx5IHRvYXN0U2VydmljZTogVG9hc3RTZXJ2aWNlLFxuICAgICAgICBwcml2YXRlIHJlYWRvbmx5IHRyYW5zbGF0ZVNlcnZpY2U6IFRyYW5zbGF0ZVNlcnZpY2UsXG4gICAgKSB7IH1cblxuICAgIHB1YmxpYyB0b2dnbGUoKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IG5ld09wZW5TdGF0ZSA9ICF0aGlzLm9wZW47XG4gICAgICAgIHRoaXMub3BlbiA9IG5ld09wZW5TdGF0ZTtcbiAgICAgICAgaWYgKG5ld09wZW5TdGF0ZSA9PT0gdHJ1ZSAmJiB0aGlzLmluc2lnaHQub25PcGVuU2lkZWJhcikge1xuICAgICAgICAgICAgdGhpcy5pbnNpZ2h0Lm9uT3BlblNpZGViYXIoKTtcbiAgICAgICAgfSBlbHNlIGlmIChuZXdPcGVuU3RhdGUgPT09IGZhbHNlICYmIHRoaXMuaW5zaWdodC5vbkNsb3NlU2lkZUJhcikge1xuICAgICAgICAgICAgdGhpcy5pbnNpZ2h0Lm9uQ2xvc2VTaWRlQmFyKCk7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKG5ld09wZW5TdGF0ZSA9PT0gdHJ1ZSkge1xuICAgICAgICAgICAgdGhpcy5fcmVxdWVzdEluc2lnaHQoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHB1YmxpYyBvbkxpa2VTZWxlY3RlZCgpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMubGlrZVNlbGVjdGVkKSB7XG4gICAgICAgICAgICB0aGlzLmxpa2VTZWxlY3RlZCA9IGZhbHNlO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5saWtlU2VsZWN0ZWQgPSB0cnVlO1xuICAgICAgICAgICAgdGhpcy5kaXNsaWtlU2VsZWN0ZWQgPSBmYWxzZTtcbiAgICAgICAgICAgIHRoaXMuaW5zaWdodC5vbkxpa2VTZWxlY3RlZD8uKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwdWJsaWMgb25EaXNsaWtlU2VsZWN0ZWQoKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLmRpc2xpa2VTZWxlY3RlZCkge1xuICAgICAgICAgICAgdGhpcy5kaXNsaWtlU2VsZWN0ZWQgPSBmYWxzZTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMuZGlzbGlrZVNlbGVjdGVkID0gdHJ1ZTtcbiAgICAgICAgICAgIHRoaXMubGlrZVNlbGVjdGVkID0gZmFsc2U7XG4gICAgICAgICAgICB0aGlzLmluc2lnaHQub25EaXNsaWtlU2VsZWN0ZWQ/LigpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHVibGljIGNvcHlDb250ZW50KCk6IHZvaWQge1xuICAgICAgICB0aGlzLmluc2lnaHQub25Db3B5Py4odGhpcy5jb250ZW50KTtcblxuICAgICAgICBpZiAodGhpcy5jbGlwYm9hcmQuY29weSh0aGlzLmNvbnRlbnQpKSB7XG4gICAgICAgICAgICB0aGlzLnRvYXN0U2VydmljZS5zaG93KHtcbiAgICAgICAgICAgICAgICBzZXZlcml0eTogXCJpbmZvXCIsXG4gICAgICAgICAgICAgICAgdGl0bGU6IHRoaXMudHJhbnNsYXRlU2VydmljZS5pbnN0YW50KFwicGxhdGZvcm0uYW5ndWxhcl9jb21wb25lbnRzLmNvcGllZF90b19jbGlwYm9hcmRcIiksXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHB1YmxpYyByZWxvYWRDb250ZW50KCk6IHZvaWQge1xuICAgICAgICB0aGlzLl9yZXF1ZXN0SW5zaWdodCgpO1xuICAgIH1cblxuICAgIHByaXZhdGUgX3JlcXVlc3RJbnNpZ2h0KCk6IHZvaWQge1xuICAgICAgICB0aGlzLmlzTG9hZGluZyA9IHRydWU7XG5cbiAgICAgICAgdGhpcy5pbnNpZ2h0LnJlcXVlc3QkXG4gICAgICAgICAgICAucGlwZShcbiAgICAgICAgICAgICAgICBmaXJzdCgpLFxuICAgICAgICAgICAgICAgIGZpbmFsaXplKCgpID0+ICh0aGlzLmlzTG9hZGluZyA9IGZhbHNlKSlcbiAgICAgICAgICAgIClcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKGNvbnRlbnQ6IHN0cmluZykgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMuY29udGVudCA9IG1hcmtlZC5tYXJrZWQoY29udGVudCk7XG4gICAgICAgICAgICAgICAgaWYgKHRoaXMuaW5zaWdodC5vbkNvbnRlbnRMb2FkZWQpIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5pbnNpZ2h0Lm9uQ29udGVudExvYWRlZCgpXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSk7XG4gICAgfVxufVxuIl19