barsa-tiles 2.2.72 → 2.2.74

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 (78) hide show
  1. package/fesm2022/barsa-tiles.mjs +215 -206
  2. package/fesm2022/barsa-tiles.mjs.map +1 -1
  3. package/lib/shellbar/shellbar.component.d.ts +2 -2
  4. package/lib/tiles.service.d.ts +1 -1
  5. package/package.json +3 -5
  6. package/esm2022/barsa-tiles.mjs +0 -5
  7. package/esm2022/lib/action-item/action-item.component.mjs +0 -17
  8. package/esm2022/lib/action-links.pipe.mjs +0 -17
  9. package/esm2022/lib/actions-link/actions-link.component.mjs +0 -50
  10. package/esm2022/lib/app-finder/app-finder.component.mjs +0 -52
  11. package/esm2022/lib/app-finder-app-list/app-finder-app-list.component.mjs +0 -38
  12. package/esm2022/lib/app-finder-group/app-finder-group.component.mjs +0 -41
  13. package/esm2022/lib/app-finder.service.mjs +0 -121
  14. package/esm2022/lib/barsa-pin-app/barsa-pin-app.component.mjs +0 -34
  15. package/esm2022/lib/barsa-shellbar/barsa-shellbar.component.mjs +0 -183
  16. package/esm2022/lib/barsa-tile-group-page/barsa-tile-group-page.component.mjs +0 -85
  17. package/esm2022/lib/barsa-tile-sidebar-page/barsa-tile-sidebar-page.component.mjs +0 -45
  18. package/esm2022/lib/barsa-tiles-routing.module.mjs +0 -58
  19. package/esm2022/lib/barsa-tiles.module.mjs +0 -288
  20. package/esm2022/lib/card-tile/card-tile.component.mjs +0 -34
  21. package/esm2022/lib/change-app-tile/change-app-tile.component.mjs +0 -46
  22. package/esm2022/lib/create-app-group/create-app-group.component.mjs +0 -43
  23. package/esm2022/lib/directives/emptylist.directive.mjs +0 -37
  24. package/esm2022/lib/directives/tile-class.directive.mjs +0 -51
  25. package/esm2022/lib/directives/tile-dynamic-command.directive.mjs +0 -77
  26. package/esm2022/lib/feed-tile/feed-tile.component.mjs +0 -31
  27. package/esm2022/lib/footer-edit-tile/footer-edit-tile.component.mjs +0 -13
  28. package/esm2022/lib/footer-tile/footer-tile.component.mjs +0 -22
  29. package/esm2022/lib/form-app-finder/form-app-finder.component.mjs +0 -96
  30. package/esm2022/lib/form-tile/form-tile.component.mjs +0 -34
  31. package/esm2022/lib/logo-tile/logo-tile.component.mjs +0 -23
  32. package/esm2022/lib/micro-tile-chart-area/micro-tile-chart-area.component.mjs +0 -40
  33. package/esm2022/lib/micro-tile-chart-bar/micro-tile-chart-bar.component.mjs +0 -16
  34. package/esm2022/lib/micro-tile-chart-bullet/micro-tile-chart-bullet.component.mjs +0 -26
  35. package/esm2022/lib/micro-tile-chart-circular/micro-tile-chart-circular.component.mjs +0 -20
  36. package/esm2022/lib/micro-tile-chart-comparison/micro-tile-chart-comparison.component.mjs +0 -31
  37. package/esm2022/lib/micro-tile-chart-line/micro-tile-chart-line.component.mjs +0 -32
  38. package/esm2022/lib/micro-tile-chart-stackbar/micro-tile-chart-stackbar.component.mjs +0 -27
  39. package/esm2022/lib/models/app-tile-footer-section.mjs +0 -2
  40. package/esm2022/lib/models/app-tile-footer.mjs +0 -2
  41. package/esm2022/lib/models/app-tile-group-pin.mjs +0 -2
  42. package/esm2022/lib/models/base-bt-tile-component.mjs +0 -27
  43. package/esm2022/lib/models/base-tile-component.mjs +0 -59
  44. package/esm2022/lib/models/base-tile-setting.mjs +0 -2
  45. package/esm2022/lib/models/feed-tile-setting.mjs +0 -2
  46. package/esm2022/lib/models/index.mjs +0 -14
  47. package/esm2022/lib/models/logo-tile-setting.mjs +0 -2
  48. package/esm2022/lib/models/micro-tile-chart-bullet-setting.mjs +0 -2
  49. package/esm2022/lib/models/news-tile-setting.mjs +0 -2
  50. package/esm2022/lib/models/numeric-tile-setting.mjs +0 -2
  51. package/esm2022/lib/models/profile-tile-setting.mjs +0 -2
  52. package/esm2022/lib/models/tile-setting.mjs +0 -2
  53. package/esm2022/lib/models/user-portal-settings.mjs +0 -2
  54. package/esm2022/lib/news-tile/news-tile.component.mjs +0 -53
  55. package/esm2022/lib/notification-group/notification-group.component.mjs +0 -111
  56. package/esm2022/lib/notification-group-header/notification-group-header.component.mjs +0 -38
  57. package/esm2022/lib/numeric-tile/numeric-tile.component.mjs +0 -64
  58. package/esm2022/lib/pin-tile/pin-tile.component.mjs +0 -110
  59. package/esm2022/lib/pipes/group-tiles.pipe.mjs +0 -32
  60. package/esm2022/lib/pipes/home-group.pipe.mjs +0 -18
  61. package/esm2022/lib/pipes/tile-home-filter.pipe.mjs +0 -29
  62. package/esm2022/lib/pipes/tile-prop.pipe.mjs +0 -51
  63. package/esm2022/lib/popover-app-finder/filter-apps-grouped.pipe.mjs +0 -36
  64. package/esm2022/lib/popover-app-finder/popover-app-finder.component.mjs +0 -102
  65. package/esm2022/lib/profile-tile/profile-tile.component.mjs +0 -34
  66. package/esm2022/lib/report-tile/report-tile.component.mjs +0 -38
  67. package/esm2022/lib/shellbar/shellbar.component.mjs +0 -234
  68. package/esm2022/lib/simple-tile/simple-tile.component.mjs +0 -28
  69. package/esm2022/lib/tile/tile.component.mjs +0 -51
  70. package/esm2022/lib/tile-renderer.directive.mjs +0 -86
  71. package/esm2022/lib/tile-size.directive.mjs +0 -31
  72. package/esm2022/lib/tile-style.directive.mjs +0 -30
  73. package/esm2022/lib/tiles-viewer/tiles-viewer.component.mjs +0 -188
  74. package/esm2022/lib/tiles-viewer-container/tiles-viewer-container.component.mjs +0 -173
  75. package/esm2022/lib/tiles-viewer-group/tiles-viewer-group.component.mjs +0 -91
  76. package/esm2022/lib/tiles-viewer.service.mjs +0 -130
  77. package/esm2022/lib/tiles.service.mjs +0 -614
  78. package/esm2022/public-api.mjs +0 -52
@@ -1,234 +0,0 @@
1
- import { ChangeDetectionStrategy, Component, inject, Inject, Renderer2, TemplateRef, ViewChild, ElementRef } from '@angular/core';
2
- import { forkJoin, of } from 'rxjs';
3
- import { map, takeUntil } from 'rxjs/operators';
4
- import { ComboboxComponent } from '@fundamental-ngx/core';
5
- import { BaseComponent, BarsaApi, APP_VERSION, getDeviceIsMobile, getDeviceIsDesktop, getDeviceIsTablet } from 'barsa-novin-ray-core';
6
- import { NavigationEnd, Router, RouterEvent } from '@angular/router';
7
- import * as i0 from "@angular/core";
8
- import * as i1 from "barsa-novin-ray-core";
9
- import * as i2 from "../tiles.service";
10
- import * as i3 from "@angular/platform-browser";
11
- import * as i4 from "@angular/common";
12
- import * as i5 from "@fundamental-ngx/core/button";
13
- import * as i6 from "../barsa-shellbar/barsa-shellbar.component";
14
- export class ShellbarComponent extends BaseComponent {
15
- get repIdProfileImage() {
16
- return this.shellbarData?.ProfileImageReport?.Id;
17
- }
18
- get notificationReport() {
19
- return this.shellbarData?.NotificationReport;
20
- }
21
- get subtitle() {
22
- if (!this.shellbarData) {
23
- return '';
24
- }
25
- if (this._portalService.deviceSize === 's' && this.shellbarData.MobileSubtitle) {
26
- return this.shellbarData.MobileSubtitle
27
- ? `${this.shellbarData.MobileSubtitle} ${typeof this.shellbarData?.calcSubtitle === 'string' ? this.shellbarData.calcSubtitle : ''}`
28
- : '';
29
- }
30
- return this.shellbarData.Subtitle
31
- ? `${this.shellbarData?.Subtitle} ${typeof this.shellbarData?.calcSubtitle === 'string' ? this.shellbarData.calcSubtitle : ''}`
32
- : '';
33
- }
34
- get logo() {
35
- return this.shellbarData?.Logo;
36
- }
37
- get cssStyles() {
38
- return this.shellbarData?.CssStyles;
39
- }
40
- get actions() {
41
- return this.settings?.HideUserMenu ? [] : this.shellbarData?.ActionItems?.MoDataList ?? [];
42
- }
43
- get sidebarSettings() {
44
- if (!this.shellbarData?.SidebarReport?.Id) {
45
- return null;
46
- }
47
- return {
48
- RelatedReport: { Id: this.shellbarData?.SidebarReport?.Id, $Caption: '' },
49
- RowClick: '',
50
- DataOnly: false
51
- };
52
- }
53
- get userMenu() {
54
- const moDataList = BarsaApi.Common.Util.TryGetValue(this.shellbarData, 'UserMenuItems.MoDataList');
55
- const items = moDataList ? [...moDataList] : [];
56
- if (!items.length) {
57
- return [];
58
- }
59
- items.forEach((c) => {
60
- c.text = this._bbbTranslatePipe.transform(c.text);
61
- c.callback = new Function(c.Code + this.bodyClick);
62
- });
63
- if (!this.IsUserAnonymous && this.IsUserLoggedIn) {
64
- items.splice(0, 0, { Id: '-1', $Caption: '', text: BarsaApi.LoginFormData.UserDisplayName });
65
- }
66
- return this.settings?.HideUserMenu ? [] : items;
67
- }
68
- get productSwitcher() {
69
- return (this.shellbarData?.ProductSwitchItems?.MoDataList ?? []);
70
- }
71
- get multiLanguages() {
72
- return this.shellbarData?.MultiLanguages;
73
- }
74
- get productMenuItems() {
75
- const items = this.shellbarData?.ProductMenuItems?.MoDataList ?? [];
76
- items.forEach((c) => (c.callback = new Function(c.Code + this.bodyClick)));
77
- return items;
78
- }
79
- get IsUserLoggedIn() {
80
- return BarsaApi.LoginFormData.IsUserLoggedIn;
81
- }
82
- get IsUserAnonymous() {
83
- return BarsaApi.LoginFormData.IsAnonymous;
84
- }
85
- constructor(_bbbTranslatePipe, _portalService, _breadCrumbService, _tilesService, _cdr, _domSanitizer, _notificationService, appVersion) {
86
- super();
87
- this._bbbTranslatePipe = _bbbTranslatePipe;
88
- this._portalService = _portalService;
89
- this._breadCrumbService = _breadCrumbService;
90
- this._tilesService = _tilesService;
91
- this._cdr = _cdr;
92
- this._domSanitizer = _domSanitizer;
93
- this._notificationService = _notificationService;
94
- this.appVersion = appVersion;
95
- this.isOpenNotificatoin = false;
96
- this.user = {
97
- initials: 'WW',
98
- colorAccent: 1
99
- };
100
- this.notifcationLoaded = false;
101
- this.bodyClick = ';$("body").click()';
102
- this.isMobile = getDeviceIsMobile();
103
- this.isDesktop = getDeviceIsDesktop();
104
- this.isTablet = getDeviceIsTablet();
105
- this.isServiceDesk = false;
106
- this.isOpenQuickAccess = false;
107
- this._router = inject(Router);
108
- this._renderer2 = inject(Renderer2);
109
- this._el = inject(ElementRef);
110
- this.onOpenNotification = () => {
111
- this.isOpenNotificatoin = true;
112
- this._handleOpenNotificationPanel();
113
- };
114
- this.onCultureChanged = (culture) => {
115
- this._changeCulture(culture);
116
- };
117
- this.userLoggedIn$ = this._portalService.userLoggedIn$;
118
- this.notifiationCountLoaded$ = this._notificationService.notificationCountLoaded$;
119
- }
120
- ngOnInit() {
121
- super.ngOnInit();
122
- this.isServiceDesk = BarsaApi.LoginFormData.IsServiceDesk;
123
- this.cultures = BarsaApi.LoginFormData.Cultures;
124
- this.cssUrl$ = this._portalService.cssUrl$;
125
- this.cssVariableUrl$ = this._portalService.cssVariableUrl$;
126
- this.cssCustomUrl$ = this._portalService.cssCustomUrl$;
127
- this.loginRouterLink$ = this._portalService.loginRoute$;
128
- this.notificationsUnreadCount$ = this._notificationService.notificationUnreadCount$;
129
- BarsaApi.Bw.SetUserPortalSettings = (userPortalSettings) => {
130
- this._portalService.setUserPortalSettings(userPortalSettings);
131
- };
132
- BarsaApi.Bw.SetShellbarSubtitle = (calcSubtitle) => {
133
- this.shellbarData.calcSubtitle = calcSubtitle;
134
- this._cdr.detectChanges();
135
- };
136
- this.deviceSize$ = this._portalService.deviceSize$.pipe(takeUntil(this._onDestroy$));
137
- this._breadCrumbService.breadcrumbs$.pipe(takeUntil(this._onDestroy$)).subscribe((breadCrumbs) => {
138
- if (breadCrumbs.length > 0) {
139
- this.productMenuControl = breadCrumbs[breadCrumbs.length - 1].label;
140
- }
141
- this._cdr.detectChanges();
142
- });
143
- this.userProfileImageUrl$ = this._tilesService.userProfileImageUrl$;
144
- this._tilesService.shellbar$.pipe(takeUntil(this._onDestroy$)).subscribe((mo) => {
145
- this.shellbarData = mo;
146
- if (this.IsUserLoggedIn) {
147
- this._tilesService.loadUserProfileImage(this.repIdProfileImage);
148
- }
149
- // this._cdr.detectChanges();
150
- forkJoin([of(this.productMenuItems), of([])]) // to append user defined
151
- .pipe(takeUntil(this._onDestroy$), map(([s1, s2]) => [...s1, ...s2]))
152
- .subscribe((c) => {
153
- this.productMenuItems1 = c;
154
- this._cdr.detectChanges();
155
- });
156
- });
157
- if (this.settings?.AllowAnonymous) {
158
- this._tilesService.loadShellbar();
159
- }
160
- this._portalService.userLoggedIn$.pipe(takeUntil(this._onDestroy$)).subscribe((loggedIn) => {
161
- if (!loggedIn) {
162
- return;
163
- }
164
- this._tilesService.loadShellbar();
165
- this._notificationService.LoadUnreadNotificationCount();
166
- });
167
- this._router.events.subscribe((event) => {
168
- if ((event instanceof NavigationEnd && event instanceof RouterEvent) ||
169
- event.routerEvent instanceof RouterEvent) {
170
- const x = event.url || event.routerEvent?.url;
171
- x.split('/').length > 2 ? this._addClass('no-home-page') : this._removeClass('no-home-page');
172
- }
173
- });
174
- }
175
- onCultureChange(culture) {
176
- this._changeCulture(culture);
177
- }
178
- onShowNotification(e) {
179
- this.isOpenNotificatoin = false;
180
- this._notificationService.ShowNotificationRelatedMo(e);
181
- }
182
- onNotificationAction(e) {
183
- this._portalService.ExecuteNotificationAction(e.item.Tag, e.btn.Title);
184
- }
185
- onNotificationWorkflowChoiceSuccess(result) { }
186
- onNotificationWorkflowChoiceFailed(err) { }
187
- onHandleOpenNotificationPanel() {
188
- this._handleOpenNotificationPanel();
189
- }
190
- _addClass(className) {
191
- this._renderer2.addClass(this._el.nativeElement, className);
192
- }
193
- _removeClass(className) {
194
- this._renderer2.removeClass(this._el.nativeElement, className);
195
- }
196
- _handleOpenNotificationPanel() {
197
- if (this.notifcationLoaded) {
198
- return;
199
- }
200
- this.notifcationLoaded = true;
201
- // this._notificationService.loadNotifications();
202
- }
203
- _mapNotifications(notifications) {
204
- return notifications.map((notification) => ({
205
- ...notification,
206
- contentSafeHtml: notification.Content
207
- ? this._domSanitizer.bypassSecurityTrustHtml(notification.Content)
208
- : ''
209
- }));
210
- }
211
- _changeCulture(culture /* culture sample :English */) {
212
- BarsaApi.Bw.SetCultureByDisplayName(culture);
213
- BarsaApi.Bw.NavigateTo('/');
214
- }
215
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ShellbarComponent, deps: [{ token: i1.BbbTranslatePipe }, { token: i1.PortalService }, { token: i1.BreadcrumbService }, { token: i2.TilesService }, { token: i0.ChangeDetectorRef }, { token: i3.DomSanitizer }, { token: i1.NotificationService }, { token: APP_VERSION }], target: i0.ɵɵFactoryTarget.Component }); }
216
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: ShellbarComponent, selector: "bt-shellbar", viewQueries: [{ propertyName: "comboboxComponent", first: true, predicate: ComboboxComponent, descendants: true }, { propertyName: "popoverComponent", first: true, predicate: ["popoverComponent"], descendants: true }, { propertyName: "_notificationsDialog", first: true, predicate: ["notificationsDialog"], descendants: true, read: TemplateRef, static: true }], usesInheritance: true, ngImport: i0, template: "@if (userLoggedIn$ | async; as userloggend) { @if (notificationsUnreadCount$ | async; as notificationsUnreadCount) { @if\r\n(deviceSize$ | async; as deviceSize) { @if (shellbarData) {\r\n<bt-barsa-shellbar\r\n [class.service-desk]=\"isServiceDesk\"\r\n [notificationReport]=\"notificationReport\"\r\n [cssUrl]=\"cssUrl$ | async\"\r\n [cssVariableUrl]=\"cssVariableUrl$ | async\"\r\n [userProfileImageUrl]=\"userProfileImageUrl$ | async\"\r\n [cssCustomUrl]=\"cssCustomUrl$ | async\"\r\n [userLoggedIn]=\"true\"\r\n [deviceSize]=\"deviceSize\"\r\n [shellbarData]=\"shellbarData\"\r\n [cssStyle]=\"cssStyles\"\r\n [productMenuControl]=\"productMenuControl\"\r\n [settings]=\"settings\"\r\n [isMobile]=\"isMobile\"\r\n [isTablet]=\"isTablet\"\r\n [isDesktop]=\"isDesktop\"\r\n [multiLanguages]=\"multiLanguages\"\r\n [notificationsUnreadCount]=\"notificationsUnreadCount > 0 ? notificationsUnreadCount : undefined\"\r\n [cultures]=\"cultures\"\r\n [logo]=\"logo\"\r\n [actions]=\"actions\"\r\n [userMenu]=\"userMenu\"\r\n [productSwitcher]=\"productSwitcher\"\r\n [subtitle]=\"subtitle\"\r\n [isServiceDesk]=\"isServiceDesk\"\r\n [sideMenuTemplate]=\"sidebarSettings ? QuickAccessTemplate : null\"\r\n [productMenuItems1]=\"productMenuItems1\"\r\n [isOpenQuickAccess]=\"isOpenQuickAccess\"\r\n (isOpenQuickAccessChanged)=\"isOpenQuickAccess = $event\"\r\n (cultureChanged)=\"onCultureChanged($event)\"\r\n (notifiationActionClick)=\"onNotificationAction($event)\"\r\n (openNotificationPanel)=\"onHandleOpenNotificationPanel()\"\r\n>\r\n</bt-barsa-shellbar>\r\n} } } } @else{ @if (isServiceDesk) {\r\n<bt-barsa-shellbar\r\n [class.service-desk]=\"isServiceDesk\"\r\n [notificationReport]=\"notificationReport\"\r\n [cssUrl]=\"''\"\r\n [cssStyle]=\"cssStyles\"\r\n [cssVariableUrl]=\"''\"\r\n [cssCustomUr]=\"''\"\r\n [userLoggedIn]=\"false\"\r\n [multiLanguages]=\"multiLanguages\"\r\n [userMenu]=\"userMenu\"\r\n [logo]=\"logo\"\r\n [productMenuItems1]=\"productMenuItems1\"\r\n [deviceSize]=\"(deviceSize$ | async)!!\"\r\n [shellbarData]=\"shellbarData\"\r\n [cultures]=\"cultures\"\r\n [logo]=\"logo\"\r\n [isMobile]=\"isMobile\"\r\n [isTablet]=\"isTablet\"\r\n [isDesktop]=\"isDesktop\"\r\n [isServiceDesk]=\"isServiceDesk\"\r\n [actions]=\"actions\"\r\n [userMenu]=\"userMenu\"\r\n [productMenuControl]=\"productMenuControl\"\r\n [productSwitcher]=\"productSwitcher\"\r\n [subtitle]=\"subtitle\"\r\n [settings]=\"settings\"\r\n [hideShellbarActions]=\"true\"\r\n [showExtraButton]=\"true\"\r\n [cultures]=\"cultures\"\r\n [productMenuItems1]=\"productMenuItems1\"\r\n (cultureChanged)=\"onCultureChanged($event)\"\r\n>\r\n @for(btn of userMenu;track btn){\r\n <button\r\n class=\"extra_btn\"\r\n fd-button\r\n [label]=\"btn.text\"\r\n [glyph]=\"btn.text === ('Login' | bbbTranslate) ? 'person-placeholder' : null\"\r\n fdType=\"emphasized\"\r\n (click)=\"btn.callback()\"\r\n ></button>\r\n }\r\n</bt-barsa-shellbar>\r\n} }\r\n<ng-template #QuickAccessTemplate>\r\n <bnrc-report-container *ngIf=\"sidebarSettings\" [settings]=\"sidebarSettings\"> </bnrc-report-container>\r\n <!-- <bt-popover-app-finder (closeMenu)=\"isOpenQuickAccess = false\"></bt-popover-app-finder> -->\r\n</ng-template>\r\n", styles: [":host{display:block;position:relative}:host .extra_btn{background-color:transparent;border-color:transparent}:host #menu_btn{background-color:transparent;border-color:transparent}\n"], dependencies: [{ kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i5.ButtonComponent, selector: "button[fd-button], a[fd-button], span[fd-button]", inputs: ["class"], exportAs: ["fd-button"] }, { kind: "component", type: i1.ReportContainerComponent, selector: "bnrc-report-container", inputs: ["settings"] }, { kind: "directive", type: i1.DynamicStyleDirective, selector: "[cssStyle]", inputs: ["cssStyle"] }, { kind: "component", type: i6.BarsaShellbarComponent, selector: "bt-barsa-shellbar", inputs: ["cssCustomUrl", "cssUrl", "cssVariableUrl", "multiLanguages", "userLoggedIn", "settings", "productMenuControl", "deviceSize", "cultures", "shellbarData", "notificationsUnreadCount", "productMenuItems1", "bodyClick", "logo", "actions", "userMenu", "productSwitcher", "subtitle", "isMobile", "hideShellbarActions", "showExtraButton", "isTablet", "userProfileImageUrl", "isDesktop", "isServiceDesk", "isOpenQuickAccess", "sideMenuTemplate", "notificationReport"], outputs: ["isOpenQuickAccessChanged", "openNotificationPanel", "openQuickAccessPanel", "cultureChanged", "notifiationActionClick"] }, { kind: "pipe", type: i4.AsyncPipe, name: "async" }, { kind: "pipe", type: i1.BbbTranslatePipe, name: "bbbTranslate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
217
- }
218
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ShellbarComponent, decorators: [{
219
- type: Component,
220
- args: [{ selector: 'bt-shellbar', changeDetection: ChangeDetectionStrategy.OnPush, standalone: false, template: "@if (userLoggedIn$ | async; as userloggend) { @if (notificationsUnreadCount$ | async; as notificationsUnreadCount) { @if\r\n(deviceSize$ | async; as deviceSize) { @if (shellbarData) {\r\n<bt-barsa-shellbar\r\n [class.service-desk]=\"isServiceDesk\"\r\n [notificationReport]=\"notificationReport\"\r\n [cssUrl]=\"cssUrl$ | async\"\r\n [cssVariableUrl]=\"cssVariableUrl$ | async\"\r\n [userProfileImageUrl]=\"userProfileImageUrl$ | async\"\r\n [cssCustomUrl]=\"cssCustomUrl$ | async\"\r\n [userLoggedIn]=\"true\"\r\n [deviceSize]=\"deviceSize\"\r\n [shellbarData]=\"shellbarData\"\r\n [cssStyle]=\"cssStyles\"\r\n [productMenuControl]=\"productMenuControl\"\r\n [settings]=\"settings\"\r\n [isMobile]=\"isMobile\"\r\n [isTablet]=\"isTablet\"\r\n [isDesktop]=\"isDesktop\"\r\n [multiLanguages]=\"multiLanguages\"\r\n [notificationsUnreadCount]=\"notificationsUnreadCount > 0 ? notificationsUnreadCount : undefined\"\r\n [cultures]=\"cultures\"\r\n [logo]=\"logo\"\r\n [actions]=\"actions\"\r\n [userMenu]=\"userMenu\"\r\n [productSwitcher]=\"productSwitcher\"\r\n [subtitle]=\"subtitle\"\r\n [isServiceDesk]=\"isServiceDesk\"\r\n [sideMenuTemplate]=\"sidebarSettings ? QuickAccessTemplate : null\"\r\n [productMenuItems1]=\"productMenuItems1\"\r\n [isOpenQuickAccess]=\"isOpenQuickAccess\"\r\n (isOpenQuickAccessChanged)=\"isOpenQuickAccess = $event\"\r\n (cultureChanged)=\"onCultureChanged($event)\"\r\n (notifiationActionClick)=\"onNotificationAction($event)\"\r\n (openNotificationPanel)=\"onHandleOpenNotificationPanel()\"\r\n>\r\n</bt-barsa-shellbar>\r\n} } } } @else{ @if (isServiceDesk) {\r\n<bt-barsa-shellbar\r\n [class.service-desk]=\"isServiceDesk\"\r\n [notificationReport]=\"notificationReport\"\r\n [cssUrl]=\"''\"\r\n [cssStyle]=\"cssStyles\"\r\n [cssVariableUrl]=\"''\"\r\n [cssCustomUr]=\"''\"\r\n [userLoggedIn]=\"false\"\r\n [multiLanguages]=\"multiLanguages\"\r\n [userMenu]=\"userMenu\"\r\n [logo]=\"logo\"\r\n [productMenuItems1]=\"productMenuItems1\"\r\n [deviceSize]=\"(deviceSize$ | async)!!\"\r\n [shellbarData]=\"shellbarData\"\r\n [cultures]=\"cultures\"\r\n [logo]=\"logo\"\r\n [isMobile]=\"isMobile\"\r\n [isTablet]=\"isTablet\"\r\n [isDesktop]=\"isDesktop\"\r\n [isServiceDesk]=\"isServiceDesk\"\r\n [actions]=\"actions\"\r\n [userMenu]=\"userMenu\"\r\n [productMenuControl]=\"productMenuControl\"\r\n [productSwitcher]=\"productSwitcher\"\r\n [subtitle]=\"subtitle\"\r\n [settings]=\"settings\"\r\n [hideShellbarActions]=\"true\"\r\n [showExtraButton]=\"true\"\r\n [cultures]=\"cultures\"\r\n [productMenuItems1]=\"productMenuItems1\"\r\n (cultureChanged)=\"onCultureChanged($event)\"\r\n>\r\n @for(btn of userMenu;track btn){\r\n <button\r\n class=\"extra_btn\"\r\n fd-button\r\n [label]=\"btn.text\"\r\n [glyph]=\"btn.text === ('Login' | bbbTranslate) ? 'person-placeholder' : null\"\r\n fdType=\"emphasized\"\r\n (click)=\"btn.callback()\"\r\n ></button>\r\n }\r\n</bt-barsa-shellbar>\r\n} }\r\n<ng-template #QuickAccessTemplate>\r\n <bnrc-report-container *ngIf=\"sidebarSettings\" [settings]=\"sidebarSettings\"> </bnrc-report-container>\r\n <!-- <bt-popover-app-finder (closeMenu)=\"isOpenQuickAccess = false\"></bt-popover-app-finder> -->\r\n</ng-template>\r\n", styles: [":host{display:block;position:relative}:host .extra_btn{background-color:transparent;border-color:transparent}:host #menu_btn{background-color:transparent;border-color:transparent}\n"] }]
221
- }], ctorParameters: () => [{ type: i1.BbbTranslatePipe }, { type: i1.PortalService }, { type: i1.BreadcrumbService }, { type: i2.TilesService }, { type: i0.ChangeDetectorRef }, { type: i3.DomSanitizer }, { type: i1.NotificationService }, { type: undefined, decorators: [{
222
- type: Inject,
223
- args: [APP_VERSION]
224
- }] }], propDecorators: { comboboxComponent: [{
225
- type: ViewChild,
226
- args: [ComboboxComponent]
227
- }], popoverComponent: [{
228
- type: ViewChild,
229
- args: ['popoverComponent', { static: false }]
230
- }], _notificationsDialog: [{
231
- type: ViewChild,
232
- args: ['notificationsDialog', { static: true, read: TemplateRef }]
233
- }] } });
234
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2hlbGxiYXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2EtdGlsZXMvc3JjL2xpYi9zaGVsbGJhci9zaGVsbGJhci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9iYXJzYS10aWxlcy9zcmMvbGliL3NoZWxsYmFyL3NoZWxsYmFyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDSCx1QkFBdUIsRUFFdkIsU0FBUyxFQUNULE1BQU0sRUFDTixNQUFNLEVBRU4sU0FBUyxFQUNULFdBQVcsRUFDWCxTQUFTLEVBQ1QsVUFBVSxFQUNiLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxRQUFRLEVBQWMsRUFBRSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ2hELE9BQU8sRUFBRSxHQUFHLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDaEQsT0FBTyxFQUNILGlCQUFpQixFQUtwQixNQUFNLHVCQUF1QixDQUFDO0FBRy9CLE9BQU8sRUFDSCxhQUFhLEVBQ2IsUUFBUSxFQU1SLFdBQVcsRUFNWCxpQkFBaUIsRUFDakIsa0JBQWtCLEVBQ2xCLGlCQUFpQixFQUNwQixNQUFNLHNCQUFzQixDQUFDO0FBRzlCLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxFQUFFLFdBQVcsRUFBRSxNQUFNLGlCQUFpQixDQUFDOzs7Ozs7OztBQXNCckUsTUFBTSxPQUFPLGlCQUFrQixTQUFRLGFBQWE7SUFrQ2hELElBQUksaUJBQWlCO1FBQ2pCLE9BQU8sSUFBSSxDQUFDLFlBQVksRUFBRSxrQkFBa0IsRUFBRSxFQUFFLENBQUM7SUFDckQsQ0FBQztJQUNELElBQUksa0JBQWtCO1FBQ2xCLE9BQU8sSUFBSSxDQUFDLFlBQVksRUFBRSxrQkFBa0IsQ0FBQztJQUNqRCxDQUFDO0lBQ0QsSUFBSSxRQUFRO1FBQ1IsSUFBSSxD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QUFhLENBQUMsR0FBRyxDQUFDLENBQUMsWUFBWSxFQUFFLEVBQUUsQ0FBQyxDQUFDO1lBQ3hDLEdBQUcsWUFBWTtZQUNmLGVBQWUsRUFBRSxZQUFZLENBQUMsT0FBTztnQkFDakMsQ0FBQyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsdUJBQXVCLENBQUMsWUFBWSxDQUFDLE9BQU8sQ0FBQztnQkFDbEUsQ0FBQyxDQUFDLEVBQUU7U0FDWCxDQUFDLENBQUMsQ0FBQztJQUNSLENBQUM7SUFDTyxjQUFjLENBQUMsT0FBZSxDQUFDLDZCQUE2QjtRQUNoRSxRQUFRLENBQUMsRUFBRSxDQUFDLHVCQUF1QixDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQzdDLFFBQVEsQ0FBQyxFQUFFLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ2hDLENBQUM7K0dBaFBRLGlCQUFpQiw0T0FxSGQsV0FBVzttR0FySGQsaUJBQWlCLHNHQUNmLGlCQUFpQixnUEFFNEIsV0FBVyxrRUNwRXZFLGszR0FxRkE7OzRGRHBCYSxpQkFBaUI7a0JBUDdCLFNBQVM7K0JBQ0ksYUFBYSxtQkFHTix1QkFBdUIsQ0FBQyxNQUFNLGNBQ25DLEtBQUs7OzBCQXVIWixNQUFNOzJCQUFDLFdBQVc7eUNBcEhPLGlCQUFpQjtzQkFBOUMsU0FBUzt1QkFBQyxpQkFBaUI7Z0JBQ3NCLGdCQUFnQjtzQkFBakUsU0FBUzt1QkFBQyxrQkFBa0IsRUFBRSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUU7Z0JBQ3VCLG9CQUFvQjtzQkFBMUYsU0FBUzt1QkFBQyxxQkFBcUIsRUFBRSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLFdBQVcsRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcclxuICAgIENoYW5nZURldGVjdG9yUmVmLFxyXG4gICAgQ29tcG9uZW50LFxyXG4gICAgaW5qZWN0LFxyXG4gICAgSW5qZWN0LFxyXG4gICAgT25Jbml0LFxyXG4gICAgUmVuZGVyZXIyLFxyXG4gICAgVGVtcGxhdGVSZWYsXHJcbiAgICBWaWV3Q2hpbGQsXHJcbiAgICBFbGVtZW50UmVmXHJcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IGZvcmtKb2luLCBPYnNlcnZhYmxlLCBvZiB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBtYXAsIHRha2VVbnRpbCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcclxuaW1wb3J0IHtcclxuICAgIENvbWJvYm94Q29tcG9uZW50LFxyXG4gICAgUG9wb3ZlckNvbXBvbmVudCxcclxuICAgIFByb2R1Y3RTd2l0Y2hJdGVtLFxyXG4gICAgU2hlbGxiYXJNZW51SXRlbSxcclxuICAgIFNoZWxsYmFyVXNlclxyXG59IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY29yZSc7XHJcbmltcG9ydCB7IERvbVNhbml0aXplciwgU2FmZVJlc291cmNlVXJsIH0gZnJvbSAnQGFuZ3VsYXIvcGxhdGZvcm0tYnJvd3Nlcic7XHJcblxyXG5pbXBvcnQge1xyXG4gICAgQmFzZUNvbXBvbmVudCxcclxuICAgIEJhcnNhQXBpLFxyXG4gICAgTWV0YW9iamVjdERhdGFNb2RlbCxcclxuICAgIEZpbGVQaWN0dXJlSW5mb01vZGVsLFxyXG4gICAgTW9Gb3JSZXBvcnRNb2RlbCxcclxuICAgIFBvcnRhbFNlcnZpY2UsXHJcbiAgICBCcmVhZGNydW1iU2VydmljZSxcclxuICAgIEFQUF9WRVJTSU9OLFxyXG4gICAgTm90aWZpY2F0aW9uU2VydmljZSxcclxuICAgIE5vdGlmaWNhdGlvbkl0ZW0sXHJcbiAgICBOb3RpZmljYXRpb25BY3Rpb24sXHJcbiAgICBCYmJUcmFuc2xhdGVQaXBlLFxyXG4gICAgQWJicmV2YXRpb25EZXZpY2VTaXplLFxyXG4gICAgZ2V0RGV2aWNlSXNNb2JpbGUsXHJcbiAgICBnZXREZXZpY2VJc0Rlc2t0b3AsXHJcbiAgICBnZXREZXZpY2VJc1RhYmxldFxyXG59IGZyb20gJ2JhcnNhLW5vdmluLXJheS1jb3JlJztcclxuXHJcbmltcG9ydCB7IFRpbGVzU2VydmljZSB9IGZyb20gJy4uL3RpbGVzLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBOYXZpZ2F0aW9uRW5kLCBSb3V0ZXIsIFJvdXRlckV2ZW50IH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcclxuXHJcbmludGVyZmFjZSBTaGVsbGJhclNldHRpbmcgZXh0ZW5kcyBNZXRhb2JqZWN0RGF0YU1vZGVsIHtcclxuICAgIENzc1N0eWxlczogc3RyaW5nO1xyXG4gICAgc3VidGl0bGU6IHN0cmluZztcclxuICAgIGNhbGNTdWJ0aXRsZTogc3RyaW5nO1xyXG4gICAgbG9nbzogRmlsZVBpY3R1cmVJbmZvTW9kZWw7XHJcbiAgICBQcm9kdWN0U3dpdGNoSXRlbXM6IE1vRm9yUmVwb3J0TW9kZWw7XHJcbiAgICBQcm9kdWN0TWVudUl0ZW1zOiBNb0ZvclJlcG9ydE1vZGVsO1xyXG4gICAgVXNlck1lbnVJdGVtczogTW9Gb3JSZXBvcnRNb2RlbDtcclxuICAgIEFjdGlvbkl0ZW1zOiBNb0ZvclJlcG9ydE1vZGVsO1xyXG4gICAgU2lkZWJhclJlcG9ydDogTWV0YW9iamVjdERhdGFNb2RlbDtcclxuICAgIFByb2ZpbGVJbWFnZVJlcG9ydDogTWV0YW9iamVjdERhdGFNb2RlbDtcclxufVxyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgICBzZWxlY3RvcjogJ2J0LXNoZWxsYmFyJyxcclxuICAgIHRlbXBsYXRlVXJsOiAnLi9zaGVsbGJhci5jb21wb25lbnQuaHRtbCcsXHJcbiAgICBzdHlsZVVybHM6IFsnLi9zaGVsbGJhci5jb21wb25lbnQuc2NzcyddLFxyXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXHJcbiAgICBzdGFuZGFsb25lOiBmYWxzZVxyXG59KVxyXG5leHBvcnQgY2xhc3MgU2hlbGxiYXJDb21wb25lbnQgZXh0ZW5kcyBCYXNlQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcclxuICAgIEBWaWV3Q2hpbGQoQ29tYm9ib3hDb21wb25lbnQpIGNvbWJvYm94Q29tcG9uZW50OiBDb21ib2JveENvbXBvbmVudDtcclxuICAgIEBWaWV3Q2hpbGQoJ3BvcG92ZXJDb21wb25lbnQnLCB7IHN0YXRpYzogZmFsc2UgfSkgcG9wb3ZlckNvbXBvbmVudDogUG9wb3ZlckNvbXBvbmVudDtcclxuICAgIEBWaWV3Q2hpbGQoJ25vdGlmaWNhdGlvbnNEaWFsb2cnLCB7IHN0YXRpYzogdHJ1ZSwgcmVhZDogVGVtcGxhdGVSZWYgfSkgX25vdGlmaWNhdGlvbnNEaWFsb2c6IFRlbXBsYXRlUmVmPGFueT47XHJcbiAgICBzaGVsbGJhckRhdGE6IFNoZWxsYmFyU2V0dGluZztcclxuICAgIHNldHRpbmdzOiBNZXRhb2JqZWN0RGF0YU1vZGVsO1xyXG4gICAgaXNPcGVuTm90aWZpY2F0b2luID0gZmFsc2U7XHJcbiAgICBkZXZpY2VTaXplJDogT2JzZXJ2YWJsZTxBYmJyZXZhdGlvbkRldmljZVNpemU+O1xyXG4gICAgcHJvZHVjdE1lbnVDb250cm9sOiBzdHJpbmc7XHJcbiAgICB1c2VyOiBTaGVsbGJhclVzZXIgPSB7XHJcbiAgICAgICAgaW5pdGlhbHM6ICdXVycsXHJcbiAgICAgICAgY29sb3JBY2NlbnQ6IDFcclxuICAgIH07XHJcblxyXG4gICAgcHJvZHVjdE1lbnVJdGVtczE6IFNoZWxsYmFyTWVudUl0ZW1bXTtcclxuICAgIHVzZXJMb2dnZWRJbiQ6IE9ic2VydmFibGU8Ym9vbGVhbj47XHJcbiAgICBjc3NVcmwkOiBPYnNlcnZhYmxlPFNhZmVSZXNvdXJjZVVybCB8IG51bGw+O1xyXG4gICAgY3NzVmFyaWFibGVVcmwkOiBPYnNlcnZhYmxlPFNhZmVSZXNvdXJjZVVybCB8IG51bGw+O1xyXG4gICAgY3NzQ3VzdG9tVXJsJDogT2JzZXJ2YWJsZTxTYWZlUmVzb3VyY2VVcmwgfCBudWxsPjtcclxuICAgIGN1bHR1cmVzOiBSZWNvcmQ8c3RyaW5nLCBhbnk+O1xyXG4gICAgbm90aWZpY2F0aW9uc1VucmVhZENvdW50JDogT2JzZXJ2YWJsZTxudW1iZXI+O1xyXG4gICAgbm90aWZjYXRpb25Mb2FkZWQgPSBmYWxzZTtcclxuICAgIG5vdGlmaWF0aW9uQ291bnRMb2FkZWQkOiBPYnNlcnZhYmxlPGJvb2xlYW4+O1xyXG4gICAgYm9keUNsaWNrID0gJzskKFwiYm9keVwiKS5jbGljaygpJztcclxuICAgIGlzTW9iaWxlID0gZ2V0RGV2aWNlSXNNb2JpbGUoKTtcclxuICAgIGlzRGVza3RvcCA9IGdldERldmljZUlzRGVza3RvcCgpO1xyXG4gICAgaXNUYWJsZXQgPSBnZXREZXZpY2VJc1RhYmxldCgpO1xyXG4gICAgbG9naW5Sb3V0ZXJMaW5rJDogT2JzZXJ2YWJsZTxzdHJpbmc+O1xyXG4gICAgaXNTZXJ2aWNlRGVzayA9IGZhbHNlO1xyXG4gICAgaXNPcGVuUXVpY2tBY2Nlc3MgPSBmYWxzZTtcclxuICAgIHVzZXJQcm9maWxlSW1hZ2VVcmwkOiBPYnNlcnZhYmxlPHN0cmluZyB8IG51bGw+O1xyXG4gICAgcHJpdmF0ZSBfcm91dGVyID0gaW5qZWN0KFJvdXRlcik7XHJcbiAgICBwcml2YXRlIF9yZW5kZXJlcjIgPSBpbmplY3QoUmVuZGVyZXIyKTtcclxuICAgIHByaXZhdGUgX2VsID0gaW5qZWN0KEVsZW1lbnRSZWYpO1xyXG4gICAgZ2V0IHJlcElkUHJvZmlsZUltYWdlKCk6IHN0cmluZyB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuc2hlbGxiYXJEYXRhPy5Qcm9maWxlSW1hZ2VSZXBvcnQ/LklkO1xyXG4gICAgfVxyXG4gICAgZ2V0IG5vdGlmaWNhdGlvblJlcG9ydCgpOiBNZXRhb2JqZWN0RGF0YU1vZGVsIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5zaGVsbGJhckRhdGE/Lk5vdGlmaWNhdGlvblJlcG9ydDtcclxuICAgIH1cclxuICAgIGdldCBzdWJ0aXRsZSgpOiBzdHJpbmcge1xyXG4gICAgICAgIGlmICghdGhpcy5zaGVsbGJhckRhdGEpIHtcclxuICAgICAgICAgICAgcmV0dXJuICcnO1xyXG4gICAgICAgIH1cclxuICAgICAgICBpZiAodGhpcy5fcG9ydGFsU2VydmljZS5kZXZpY2VTaXplID09PSAncycgJiYgdGhpcy5zaGVsbGJhckRhdGEuTW9iaWxlU3VidGl0bGUpIHtcclxuICAgICAgICAgICAgcmV0dXJuIHRoaXMuc2hlbGxiYXJEYXRhLk1vYmlsZVN1YnRpdGxlXHJcbiAgICAgICAgICAgICAgICA/IGAke3RoaXMuc2hlbGxiYXJEYXRhLk1vYmlsZVN1YnRpdGxlfSAke1xyXG4gICAgICAgICAgICAgICAgICAgICAgdHlwZW9mIHRoaXMuc2hlbGxiYXJEYXRhPy5jYWxjU3VidGl0bGUgPT09ICdzdHJpbmcnID8gdGhpcy5zaGVsbGJhckRhdGEuY2FsY1N1YnRpdGxlIDogJydcclxuICAgICAgICAgICAgICAgICAgfWBcclxuICAgICAgICAgICAgICAgIDogJyc7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldHVybiB0aGlzLnNoZWxsYmFyRGF0YS5TdWJ0aXRsZVxyXG4gICAgICAgICAgICA/IGAke3RoaXMuc2hlbGxiYXJEYXRhPy5TdWJ0aXRsZX0gJHtcclxuICAgICAgICAgICAgICAgICAgdHlwZW9mIHRoaXMuc2hlbGxiYXJEYXRhPy5jYWxjU3VidGl0bGUgPT09ICdzdHJpbmcnID8gdGhpcy5zaGVsbGJhckRhdGEuY2FsY1N1YnRpdGxlIDogJydcclxuICAgICAgICAgICAgICB9YFxyXG4gICAgICAgICAgICA6ICcnO1xyXG4gICAgfVxyXG4gICAgZ2V0IGxvZ28oKTogeyBGaWxlSWQ6IHN0cmluZyB9IHtcclxuICAgICAgICByZXR1cm4gdGhpcy5zaGVsbGJhckRhdGE/LkxvZ287XHJcbiAgICB9XHJcbiAgICBnZXQgY3NzU3R5bGVzKCk6IHN0cmluZyB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuc2hlbGxiYXJEYXRhPy5Dc3NTdHlsZXM7XHJcbiAgICB9XHJcbiAgICBnZXQgYWN0aW9ucygpOiBBcnJheTxNZXRhb2JqZWN0RGF0YU1vZGVsPiB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuc2V0dGluZ3M/LkhpZGVVc2VyTWVudSA/IFtdIDogdGhpcy5zaGVsbGJhckRhdGE/LkFjdGlvbkl0ZW1zPy5Nb0RhdGFMaXN0ID8/IFtdO1xyXG4gICAgfVxyXG4gICAgZ2V0IHNpZGViYXJTZXR0aW5ncygpOiBudWxsIHwgYW55IHtcclxuICAgICAgICBpZiAoIXRoaXMuc2hlbGxiYXJEYXRhPy5TaWRlYmFyUmVwb3J0Py5JZCkge1xyXG4gICAgICAgICAgICByZXR1cm4gbnVsbDtcclxuICAgICAgICB9XHJcbiAgICAgICAgcmV0dXJuIHtcclxuICAgICAgICAgICAgUmVsYXRlZFJlcG9ydDogeyBJZDogdGhpcy5zaGVsbGJhckRhdGE/LlNpZGViYXJSZXBvcnQ/LklkLCAkQ2FwdGlvbjogJycgfSxcclxuICAgICAgICAgICAgUm93Q2xpY2s6ICcnLFxyXG4gICAgICAgICAgICBEYXRhT25seTogZmFsc2VcclxuICAgICAgICB9O1xyXG4gICAgfVxyXG4gICAgZ2V0IHVzZXJNZW51KCk6IHsgdGV4dDogc3RyaW5nOyBjYWxsYmFjazogKCkgPT4gdm9pZCB9W10ge1xyXG4gICAgICAgIGNvbnN0IG1vRGF0YUxpc3QgPSBCYXJzYUFwaS5Db21tb24uVXRpbC5UcnlHZXRWYWx1ZSh0aGlzLnNoZWxsYmFyRGF0YSwgJ1VzZXJNZW51SXRlbXMuTW9EYXRhTGlzdCcpO1xyXG4gICAgICAgIGNvbnN0IGl0ZW1zID0gbW9EYXRhTGlzdCA/IFsuLi5tb0RhdGFMaXN0XSA6IFtdO1xyXG4gICAgICAgIGlmICghaXRlbXMubGVuZ3RoKSB7XHJcbiAgICAgICAgICAgIHJldHVybiBbXTtcclxuICAgICAgICB9XHJcbiAgICAgICAgaXRlbXMuZm9yRWFjaCgoYykgPT4ge1xyXG4gICAgICAgICAgICBjLnRleHQgPSB0aGlzLl9iYmJUcmFuc2xhdGVQaXBlLnRyYW5zZm9ybShjLnRleHQpO1xyXG4gICAgICAgICAgICBjLmNhbGxiYWNrID0gbmV3IEZ1bmN0aW9uKGMuQ29kZSArIHRoaXMuYm9keUNsaWNrKTtcclxuICAgICAgICB9KTtcclxuICAgICAgICBpZiAoIXRoaXMuSXNVc2VyQW5vbnltb3VzICYmIHRoaXMuSXNVc2VyTG9nZ2VkSW4pIHtcclxuICAgICAgICAgICAgaXRlbXMuc3BsaWNlKDAsIDAsIHsgSWQ6ICctMScsICRDYXB0aW9uOiAnJywgdGV4dDogQmFyc2FBcGkuTG9naW5Gb3JtRGF0YS5Vc2VyRGlzcGxheU5hbWUgfSk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldHVybiB0aGlzLnNldHRpbmdzPy5IaWRlVXNlck1lbnUgPyBbXSA6IChpdGVtcyBhcyBhbnkpO1xyXG4gICAgfVxyXG4gICAgZ2V0IHByb2R1Y3RTd2l0Y2hlcigpOiBQcm9kdWN0U3dpdGNoSXRlbVtdIHtcclxuICAgICAgICByZXR1cm4gKHRoaXMuc2hlbGxiYXJEYXRhPy5Qcm9kdWN0U3dpdGNoSXRlbXM/Lk1vRGF0YUxpc3QgPz8gW10pIGFzIHVua25vd24gYXMgUHJvZHVjdFN3aXRjaEl0ZW1bXTtcclxuICAgIH1cclxuICAgIGdldCBtdWx0aUxhbmd1YWdlcygpOiBib29sZWFuIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5zaGVsbGJhckRhdGE/Lk11bHRpTGFuZ3VhZ2VzO1xyXG4gICAgfVxyXG4gICAgZ2V0IHByb2R1Y3RNZW51SXRlbXMoKTogU2hlbGxiYXJNZW51SXRlbVtdIHtcclxuICAgICAgICBjb25zdCBpdGVtcyA9IHRoaXMuc2hlbGxiYXJEYXRhPy5Qcm9kdWN0TWVudUl0ZW1zPy5Nb0RhdGFMaXN0ID8/IFtdO1xyXG4gICAgICAgIGl0ZW1zLmZvckVhY2goKGMpID0+IChjLmNhbGxiYWNrID0gbmV3IEZ1bmN0aW9uKGMuQ29kZSArIHRoaXMuYm9keUNsaWNrKSkpO1xyXG4gICAgICAgIHJldHVybiBpdGVtcyBhcyB1bmtub3duIGFzIFNoZWxsYmFyTWVudUl0ZW1bXTtcclxuICAgIH1cclxuICAgIGdldCBJc1VzZXJMb2dnZWRJbigpOiBib29sZWFuIHtcclxuICAgICAgICByZXR1cm4gQmFyc2FBcGkuTG9naW5Gb3JtRGF0YS5Jc1VzZXJMb2dnZWRJbjtcclxuICAgIH1cclxuICAgIGdldCBJc1VzZXJBbm9ueW1vdXMoKTogYm9vbGVhbiB7XHJcbiAgICAgICAgcmV0dXJuIEJhcnNhQXBpLkxvZ2luRm9ybURhdGEuSXNBbm9ueW1vdXM7XHJcbiAgICB9XHJcblxyXG4gICAgY29uc3RydWN0b3IoXHJcbiAgICAgICAgcHJpdmF0ZSBfYmJiVHJhbnNsYXRlUGlwZTogQmJiVHJhbnNsYXRlUGlwZSxcclxuICAgICAgICBwcml2YXRlIF9wb3J0YWxTZXJ2aWNlOiBQb3J0YWxTZXJ2aWNlLFxyXG4gICAgICAgIHByaXZhdGUgX2JyZWFkQ3J1bWJTZXJ2aWNlOiBCcmVhZGNydW1iU2VydmljZSxcclxuICAgICAgICBwcml2YXRlIF90aWxlc1NlcnZpY2U6IFRpbGVzU2VydmljZSxcclxuICAgICAgICBwcml2YXRlIF9jZHI6IENoYW5nZURldGVjdG9yUmVmLFxyXG4gICAgICAgIHByaXZhdGUgX2RvbVNhbml0aXplcjogRG9tU2FuaXRpemVyLFxyXG4gICAgICAgIHByaXZhdGUgX25vdGlmaWNhdGlvblNlcnZpY2U6IE5vdGlmaWNhdGlvblNlcnZpY2UsXHJcbiAgICAgICAgQEluamVjdChBUFBfVkVSU0lPTikgcHVibGljIGFwcFZlcnNpb246IHN0cmluZ1xyXG4gICAgKSB7XHJcbiAgICAgICAgc3VwZXIoKTtcclxuXHJcbiAgICAgICAgdGhpcy51c2VyTG9nZ2VkSW4kID0gdGhpcy5fcG9ydGFsU2VydmljZS51c2VyTG9nZ2VkSW4kO1xyXG4gICAgICAgIHRoaXMubm90aWZpYXRpb25Db3VudExvYWRlZCQgPSB0aGlzLl9ub3RpZmljYXRpb25TZXJ2aWNlLm5vdGlmaWNhdGlvbkNvdW50TG9hZGVkJDtcclxuICAgIH1cclxuXHJcbiAgICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgICAgICBzdXBlci5uZ09uSW5pdCgpO1xyXG5cclxuICAgICAgICB0aGlzLmlzU2VydmljZURlc2sgPSBCYXJzYUFwaS5Mb2dpbkZvcm1EYXRhLklzU2VydmljZURlc2s7XHJcblxyXG4gICAgICAgIHRoaXMuY3VsdHVyZXMgPSBCYXJzYUFwaS5Mb2dpbkZvcm1EYXRhLkN1bHR1cmVzO1xyXG4gICAgICAgIHRoaXMuY3NzVXJsJCA9IHRoaXMuX3BvcnRhbFNlcnZpY2UuY3NzVXJsJDtcclxuICAgICAgICB0aGlzLmNzc1ZhcmlhYmxlVXJsJCA9IHRoaXMuX3BvcnRhbFNlcnZpY2UuY3NzVmFyaWFibGVVcmwkO1xyXG4gICAgICAgIHRoaXMuY3NzQ3VzdG9tVXJsJCA9IHRoaXMuX3BvcnRhbFNlcnZpY2UuY3NzQ3VzdG9tVXJsJDtcclxuICAgICAgICB0aGlzLmxvZ2luUm91dGVyTGluayQgPSB0aGlzLl9wb3J0YWxTZXJ2aWNlLmxvZ2luUm91dGUkO1xyXG4gICAgICAgIHRoaXMubm90aWZpY2F0aW9uc1VucmVhZENvdW50JCA9IHRoaXMuX25vdGlmaWNhdGlvblNlcnZpY2Uubm90aWZpY2F0aW9uVW5yZWFkQ291bnQkO1xyXG5cclxuICAgICAgICBCYXJzYUFwaS5Cdy5TZXRVc2VyUG9ydGFsU2V0dGluZ3MgPSAodXNlclBvcnRhbFNldHRpbmdzOiBNZXRhb2JqZWN0RGF0YU1vZGVsKTogdm9pZCA9PiB7XHJcbiAgICAgICAgICAgIHRoaXMuX3BvcnRhbFNlcnZpY2Uuc2V0VXNlclBvcnRhbFNldHRpbmdzKHVzZXJQb3J0YWxTZXR0aW5ncyk7XHJcbiAgICAgICAgfTtcclxuICAgICAgICBCYXJzYUFwaS5Cdy5TZXRTaGVsbGJhclN1YnRpdGxlID0gKGNhbGNTdWJ0aXRsZTogc3RyaW5nKTogdm9pZCA9PiB7XHJcbiAgICAgICAgICAgIHRoaXMuc2hlbGxiYXJEYXRhLmNhbGNTdWJ0aXRsZSA9IGNhbGNTdWJ0aXRsZTtcclxuICAgICAgICAgICAgdGhpcy5fY2RyLmRldGVjdENoYW5nZXMoKTtcclxuICAgICAgICB9O1xyXG4gICAgICAgIHRoaXMuZGV2aWNlU2l6ZSQgPSB0aGlzLl9wb3J0YWxTZXJ2aWNlLmRldmljZVNpemUkLnBpcGUodGFrZVVudGlsKHRoaXMuX29uRGVzdHJveSQpKTtcclxuXHJcbiAgICAgICAgdGhpcy5fYnJlYWRDcnVtYlNlcnZpY2UuYnJlYWRjcnVtYnMkLnBpcGUodGFrZVVudGlsKHRoaXMuX29uRGVzdHJveSQpKS5zdWJzY3JpYmUoKGJyZWFkQ3J1bWJzKSA9PiB7XHJcbiAgICAgICAgICAgIGlmIChicmVhZENydW1icy5sZW5ndGggPiAwKSB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLnByb2R1Y3RNZW51Q29udHJvbCA9IGJyZWFkQ3J1bWJzW2JyZWFkQ3J1bWJzLmxlbmd0aCAtIDFdLmxhYmVsO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIHRoaXMuX2Nkci5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgICAgICAgfSk7XHJcbiAgICAgICAgdGhpcy51c2VyUHJvZmlsZUltYWdlVXJsJCA9IHRoaXMuX3RpbGVzU2VydmljZS51c2VyUHJvZmlsZUltYWdlVXJsJDtcclxuICAgICAgICB0aGlzLl90aWxlc1NlcnZpY2Uuc2hlbGxiYXIkLnBpcGUodGFrZVVudGlsKHRoaXMuX29uRGVzdHJveSQpKS5zdWJzY3JpYmUoKG1vKSA9PiB7XHJcbiAgICAgICAgICAgIHRoaXMuc2hlbGxiYXJEYXRhID0gbW8gYXMgU2hlbGxiYXJTZXR0aW5nO1xyXG4gICAgICAgICAgICBpZiAodGhpcy5Jc1VzZXJMb2dnZWRJbikge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5fdGlsZXNTZXJ2aWNlLmxvYWRVc2VyUHJvZmlsZUltYWdlKHRoaXMucmVwSWRQcm9maWxlSW1hZ2UpO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAvLyB0aGlzLl9jZHIuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gICAgICAgICAgICBmb3JrSm9pbihbb2YodGhpcy5wcm9kdWN0TWVudUl0ZW1zKSwgb2YoW10pXSkgLy8gdG8gYXBwZW5kIHVzZXIgZGVmaW5lZFxyXG4gICAgICAgICAgICAgICAgLnBpcGUoXHJcbiAgICAgICAgICAgICAgICAgICAgdGFrZVVudGlsKHRoaXMuX29uRGVzdHJveSQpLFxyXG4gICAgICAgICAgICAgICAgICAgIG1hcCgoW3MxLCBzMl0pID0+IFsuLi5zMSwgLi4uczJdKVxyXG4gICAgICAgICAgICAgICAgKVxyXG4gICAgICAgICAgICAgICAgLnN1YnNjcmliZSgoYykgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMucHJvZHVjdE1lbnVJdGVtczEgPSBjO1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuX2Nkci5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgICAgICAgICAgICAgICB9KTtcclxuICAgICAgICB9KTtcclxuICAgICAgICBpZiAodGhpcy5zZXR0aW5ncz8uQWxsb3dBbm9ueW1vdXMpIHtcclxuICAgICAgICAgICAgdGhpcy5fdGlsZXNTZXJ2aWNlLmxvYWRTaGVsbGJhcigpO1xyXG4gICAgICAgIH1cclxuICAgICAgICB0aGlzLl9wb3J0YWxTZXJ2aWNlLnVzZXJMb2dnZWRJbiQucGlwZSh0YWtlVW50aWwodGhpcy5fb25EZXN0cm95JCkpLnN1YnNjcmliZSgobG9nZ2VkSW4pID0+IHtcclxuICAgICAgICAgICAgaWYgKCFsb2dnZWRJbikge1xyXG4gICAgICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIHRoaXMuX3RpbGVzU2VydmljZS5sb2FkU2hlbGxiYXIoKTtcclxuICAgICAgICAgICAgdGhpcy5fbm90aWZpY2F0aW9uU2VydmljZS5Mb2FkVW5yZWFkTm90aWZpY2F0aW9uQ291bnQoKTtcclxuICAgICAgICB9KTtcclxuICAgICAgICB0aGlzLl9yb3V0ZXIuZXZlbnRzLnN1YnNjcmliZSgoZXZlbnQpID0+IHtcclxuICAgICAgICAgICAgaWYgKFxyXG4gICAgICAgICAgICAgICAgKGV2ZW50IGluc3RhbmNlb2YgTmF2aWdhdGlvbkVuZCAmJiBldmVudCBpbnN0YW5jZW9mIFJvdXRlckV2ZW50KSB8fFxyXG4gICAgICAgICAgICAgICAgKGV2ZW50IGFzIGFueSkucm91dGVyRXZlbnQgaW5zdGFuY2VvZiBSb3V0ZXJFdmVudFxyXG4gICAgICAgICAgICApIHtcclxuICAgICAgICAgICAgICAgIGNvbnN0IHg6IHN0cmluZyA9IChldmVudCBhcyBhbnkpLnVybCB8fCAoZXZlbnQgYXMgYW55KS5yb3V0ZXJFdmVudD8udXJsO1xyXG4gICAgICAgICAgICAgICAgeC5zcGxpdCgnLycpLmxlbmd0aCA+IDIgPyB0aGlzLl9hZGRDbGFzcygnbm8taG9tZS1wYWdlJykgOiB0aGlzLl9yZW1vdmVDbGFzcygnbm8taG9tZS1wYWdlJyk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9KTtcclxuICAgIH1cclxuXHJcbiAgICBvbkN1bHR1cmVDaGFuZ2UoY3VsdHVyZSk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuX2NoYW5nZUN1bHR1cmUoY3VsdHVyZSk7XHJcbiAgICB9XHJcbiAgICBvblNob3dOb3RpZmljYXRpb24oZTogeyB0YWc6IHN0cmluZzsgbW86IE1ldGFvYmplY3REYXRhTW9kZWw7IG5hbWE6IHN0cmluZyB9KTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5pc09wZW5Ob3RpZmljYXRvaW4gPSBmYWxzZTtcclxuICAgICAgICB0aGlzLl9ub3RpZmljYXRpb25TZXJ2aWNlLlNob3dOb3RpZmljYXRpb25SZWxhdGVkTW8oZSk7XHJcbiAgICB9XHJcbiAgICBvbk5vdGlmaWNhdGlvbkFjdGlvbihlOiB7IGl0ZW06IE5vdGlmaWNhdGlvbkl0ZW07IGJ0bjogTm90aWZpY2F0aW9uQWN0aW9uIH0pOiB2b2lkIHtcclxuICAgICAgICB0aGlzLl9wb3J0YWxTZXJ2aWNlLkV4ZWN1dGVOb3RpZmljYXRpb25BY3Rpb24oZS5pdGVtLlRhZywgZS5idG4uVGl0bGUpO1xyXG4gICAgfVxyXG5cclxuICAgIG9uT3Blbk5vdGlmaWNhdGlvbiA9ICgpOiB2b2lkID0+IHtcclxuICAgICAgICB0aGlzLmlzT3Blbk5vdGlmaWNhdG9pbiA9IHRydWU7XHJcbiAgICAgICAgdGhpcy5faGFuZGxlT3Blbk5vdGlmaWNhdGlvblBhbmVsKCk7XHJcbiAgICB9O1xyXG5cclxuICAgIG9uQ3VsdHVyZUNoYW5nZWQgPSAoY3VsdHVyZTogc3RyaW5nKTogdm9pZCA9PiB7XHJcbiAgICAgICAgdGhpcy5fY2hhbmdlQ3VsdHVyZShjdWx0dXJlKTtcclxuICAgIH07XHJcbiAgICBvbk5vdGlmaWNhdGlvbldvcmtmbG93Q2hvaWNlU3VjY2VzcyhyZXN1bHQpOiB2b2lkIHt9XHJcbiAgICBvbk5vdGlmaWNhdGlvbldvcmtmbG93Q2hvaWNlRmFpbGVkKGVycik6IHZvaWQge31cclxuXHJcbiAgICBvbkhhbmRsZU9wZW5Ob3RpZmljYXRpb25QYW5lbCgpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLl9oYW5kbGVPcGVuTm90aWZpY2F0aW9uUGFuZWwoKTtcclxuICAgIH1cclxuICAgIHByaXZhdGUgX2FkZENsYXNzKGNsYXNzTmFtZTogc3RyaW5nKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5fcmVuZGVyZXIyLmFkZENsYXNzKHRoaXMuX2VsLm5hdGl2ZUVsZW1lbnQsIGNsYXNzTmFtZSk7XHJcbiAgICB9XHJcbiAgICBwcml2YXRlIF9yZW1vdmVDbGFzcyhjbGFzc05hbWU6IHN0cmluZyk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuX3JlbmRlcmVyMi5yZW1vdmVDbGFzcyh0aGlzLl9lbC5uYXRpdmVFbGVtZW50LCBjbGFzc05hbWUpO1xyXG4gICAgfVxyXG4gICAgcHJpdmF0ZSBfaGFuZGxlT3Blbk5vdGlmaWNhdGlvblBhbmVsKCk6IHZvaWQge1xyXG4gICAgICAgIGlmICh0aGlzLm5vdGlmY2F0aW9uTG9hZGVkKSB7XHJcbiAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICB9XHJcbiAgICAgICAgdGhpcy5ub3RpZmNhdGlvbkxvYWRlZCA9IHRydWU7XHJcbiAgICAgICAgLy8gdGhpcy5fbm90aWZpY2F0aW9uU2VydmljZS5sb2FkTm90aWZpY2F0aW9ucygpO1xyXG4gICAgfVxyXG4gICAgcHJpdmF0ZSBfbWFwTm90aWZpY2F0aW9ucyhub3RpZmljYXRpb25zKTogTm90aWZpY2F0aW9uSXRlbVtdIHtcclxuICAgICAgICByZXR1cm4gbm90aWZpY2F0aW9ucy5tYXAoKG5vdGlmaWNhdGlvbikgPT4gKHtcclxuICAgICAgICAgICAgLi4ubm90aWZpY2F0aW9uLFxyXG4gICAgICAgICAgICBjb250ZW50U2FmZUh0bWw6IG5vdGlmaWNhdGlvbi5Db250ZW50XHJcbiAgICAgICAgICAgICAgICA/IHRoaXMuX2RvbVNhbml0aXplci5ieXBhc3NTZWN1cml0eVRydXN0SHRtbChub3RpZmljYXRpb24uQ29udGVudClcclxuICAgICAgICAgICAgICAgIDogJydcclxuICAgICAgICB9KSk7XHJcbiAgICB9XHJcbiAgICBwcml2YXRlIF9jaGFuZ2VDdWx0dXJlKGN1bHR1cmU6IHN0cmluZyAvKiBjdWx0dXJlIHNhbXBsZSA6RW5nbGlzaCAqLyk6IHZvaWQge1xyXG4gICAgICAgIEJhcnNhQXBpLkJ3LlNldEN1bHR1cmVCeURpc3BsYXlOYW1lKGN1bHR1cmUpO1xyXG4gICAgICAgIEJhcnNhQXBpLkJ3Lk5hdmlnYXRlVG8oJy8nKTtcclxuICAgIH1cclxufVxyXG4iLCJAaWYgKHVzZXJMb2dnZWRJbiQgfCBhc3luYzsgYXMgdXNlcmxvZ2dlbmQpIHsgQGlmIChub3RpZmljYXRpb25zVW5yZWFkQ291bnQkIHwgYXN5bmM7IGFzIG5vdGlmaWNhdGlvbnNVbnJlYWRDb3VudCkgeyBAaWZcclxuKGRldmljZVNpemUkIHwgYXN5bmM7IGFzIGRldmljZVNpemUpIHsgQGlmIChzaGVsbGJhckRhdGEpIHtcclxuPGJ0LWJhcnNhLXNoZWxsYmFyXHJcbiAgICBbY2xhc3Muc2VydmljZS1kZXNrXT1cImlzU2VydmljZURlc2tcIlxyXG4gICAgW25vdGlmaWNhdGlvblJlcG9ydF09XCJub3RpZmljYXRpb25SZXBvcnRcIlxyXG4gICAgW2Nzc1VybF09XCJjc3NVcmwkIHwgYXN5bmNcIlxyXG4gICAgW2Nzc1ZhcmlhYmxlVXJsXT1cImNzc1ZhcmlhYmxlVXJsJCB8IGFzeW5jXCJcclxuICAgIFt1c2VyUHJvZmlsZUltYWdlVXJsXT1cInVzZXJQcm9maWxlSW1hZ2VVcmwkIHwgYXN5bmNcIlxyXG4gICAgW2Nzc0N1c3RvbVVybF09XCJjc3NDdXN0b21VcmwkIHwgYXN5bmNcIlxyXG4gICAgW3VzZXJMb2dnZWRJbl09XCJ0cnVlXCJcclxuICAgIFtkZXZpY2VTaXplXT1cImRldmljZVNpemVcIlxyXG4gICAgW3NoZWxsYmFyRGF0YV09XCJzaGVsbGJhckRhdGFcIlxyXG4gICAgW2Nzc1N0eWxlXT1cImNzc1N0eWxlc1wiXHJcbiAgICBbcHJvZHVjdE1lbnVDb250cm9sXT1cInByb2R1Y3RNZW51Q29udHJvbFwiXHJcbiAgICBbc2V0dGluZ3NdPVwic2V0dGluZ3NcIlxyXG4gICAgW2lzTW9iaWxlXT1cImlzTW9iaWxlXCJcclxuICAgIFtpc1RhYmxldF09XCJpc1RhYmxldFwiXHJcbiAgICBbaXNEZXNrdG9wXT1cImlzRGVza3RvcFwiXHJcbiAgICBbbXVsdGlMYW5ndWFnZXNdPVwibXVsdGlMYW5ndWFnZXNcIlxyXG4gICAgW25vdGlmaWNhdGlvbnNVbnJlYWRDb3VudF09XCJub3RpZmljYXRpb25zVW5yZWFkQ291bnQgPiAwID8gbm90aWZpY2F0aW9uc1VucmVhZENvdW50IDogdW5kZWZpbmVkXCJcclxuICAgIFtjdWx0dXJlc109XCJjdWx0dXJlc1wiXHJcbiAgICBbbG9nb109XCJsb2dvXCJcclxuICAgIFthY3Rpb25zXT1cImFjdGlvbnNcIlxyXG4gICAgW3VzZXJNZW51XT1cInVzZXJNZW51XCJcclxuICAgIFtwcm9kdWN0U3dpdGNoZXJdPVwicHJvZHVjdFN3aXRjaGVyXCJcclxuICAgIFtzdWJ0aXRsZV09XCJzdWJ0aXRsZVwiXHJcbiAgICBbaXNTZXJ2aWNlRGVza109XCJpc1NlcnZpY2VEZXNrXCJcclxuICAgIFtzaWRlTWVudVRlbXBsYXRlXT1cInNpZGViYXJTZXR0aW5ncyA/IFF1aWNrQWNjZXNzVGVtcGxhdGUgOiBudWxsXCJcclxuICAgIFtwcm9kdWN0TWVudUl0ZW1zMV09XCJwcm9kdWN0TWVudUl0ZW1zMVwiXHJcbiAgICBbaXNPcGVuUXVpY2tBY2Nlc3NdPVwiaXNPcGVuUXVpY2tBY2Nlc3NcIlxyXG4gICAgKGlzT3BlblF1aWNrQWNjZXNzQ2hhbmdlZCk9XCJpc09wZW5RdWlja0FjY2VzcyA9ICRldmVudFwiXHJcbiAgICAoY3VsdHVyZUNoYW5nZWQpPVwib25DdWx0dXJlQ2hhbmdlZCgkZXZlbnQpXCJcclxuICAgIChub3RpZmlhdGlvbkFjdGlvbkNsaWNrKT1cIm9uTm90aWZpY2F0aW9uQWN0aW9uKCRldmVudClcIlxyXG4gICAgKG9wZW5Ob3RpZmljYXRpb25QYW5lbCk9XCJvbkhhbmRsZU9wZW5Ob3RpZmljYXRpb25QYW5lbCgpXCJcclxuPlxyXG48L2J0LWJhcnNhLXNoZWxsYmFyPlxyXG59IH0gfSB9IEBlbHNleyBAaWYgKGlzU2VydmljZURlc2spIHtcclxuPGJ0LWJhcnNhLXNoZWxsYmFyXHJcbiAgICBbY2xhc3Muc2VydmljZS1kZXNrXT1cImlzU2VydmljZURlc2tcIlxyXG4gICAgW25vdGlmaWNhdGlvblJlcG9ydF09XCJub3RpZmljYXRpb25SZXBvcnRcIlxyXG4gICAgW2Nzc1VybF09XCInJ1wiXHJcbiAgICBbY3NzU3R5bGVdPVwiY3NzU3R5bGVzXCJcclxuICAgIFtjc3NWYXJpYWJsZVVybF09XCInJ1wiXHJcbiAgICBbY3NzQ3VzdG9tVXJdPVwiJydcIlxyXG4gICAgW3VzZXJMb2dnZWRJbl09XCJmYWxzZVwiXHJcbiAgICBbbXVsdGlMYW5ndWFnZXNdPVwibXVsdGlMYW5ndWFnZXNcIlxyXG4gICAgW3VzZXJNZW51XT1cInVzZXJNZW51XCJcclxuICAgIFtsb2dvXT1cImxvZ29cIlxyXG4gICAgW3Byb2R1Y3RNZW51SXRlbXMxXT1cInByb2R1Y3RNZW51SXRlbXMxXCJcclxuICAgIFtkZXZpY2VTaXplXT1cIihkZXZpY2VTaXplJCB8IGFzeW5jKSEhXCJcclxuICAgIFtzaGVsbGJhckRhdGFdPVwic2hlbGxiYXJEYXRhXCJcclxuICAgIFtjdWx0dXJlc109XCJjdWx0dXJlc1wiXHJcbiAgICBbbG9nb109XCJsb2dvXCJcclxuICAgIFtpc01vYmlsZV09XCJpc01vYmlsZVwiXHJcbiAgICBbaXNUYWJsZXRdPVwiaXNUYWJsZXRcIlxyXG4gICAgW2lzRGVza3RvcF09XCJpc0Rlc2t0b3BcIlxyXG4gICAgW2lzU2VydmljZURlc2tdPVwiaXNTZXJ2aWNlRGVza1wiXHJcbiAgICBbYWN0aW9uc109XCJhY3Rpb25zXCJcclxuICAgIFt1c2VyTWVudV09XCJ1c2VyTWVudVwiXHJcbiAgICBbcHJvZHVjdE1lbnVDb250cm9sXT1cInByb2R1Y3RNZW51Q29udHJvbFwiXHJcbiAgICBbcHJvZHVjdFN3aXRjaGVyXT1cInByb2R1Y3RTd2l0Y2hlclwiXHJcbiAgICBbc3VidGl0bGVdPVwic3VidGl0bGVcIlxyXG4gICAgW3NldHRpbmdzXT1cInNldHRpbmdzXCJcclxuICAgIFtoaWRlU2hlbGxiYXJBY3Rpb25zXT1cInRydWVcIlxyXG4gICAgW3Nob3dFeHRyYUJ1dHRvbl09XCJ0cnVlXCJcclxuICAgIFtjdWx0dXJlc109XCJjdWx0dXJlc1wiXHJcbiAgICBbcHJvZHVjdE1lbnVJdGVtczFdPVwicHJvZHVjdE1lbnVJdGVtczFcIlxyXG4gICAgKGN1bHR1cmVDaGFuZ2VkKT1cIm9uQ3VsdHVyZUNoYW5nZWQoJGV2ZW50KVwiXHJcbj5cclxuICAgIEBmb3IoYnRuIG9mIHVzZXJNZW51O3RyYWNrIGJ0bil7XHJcbiAgICA8YnV0dG9uXHJcbiAgICAgICAgY2xhc3M9XCJleHRyYV9idG5cIlxyXG4gICAgICAgIGZkLWJ1dHRvblxyXG4gICAgICAgIFtsYWJlbF09XCJidG4udGV4dFwiXHJcbiAgICAgICAgW2dseXBoXT1cImJ0bi50ZXh0ID09PSAoJ0xvZ2luJyB8IGJiYlRyYW5zbGF0ZSkgPyAncGVyc29uLXBsYWNlaG9sZGVyJyA6IG51bGxcIlxyXG4gICAgICAgIGZkVHlwZT1cImVtcGhhc2l6ZWRcIlxyXG4gICAgICAgIChjbGljayk9XCJidG4uY2FsbGJhY2soKVwiXHJcbiAgICA+PC9idXR0b24+XHJcbiAgICB9XHJcbjwvYnQtYmFyc2Etc2hlbGxiYXI+XHJcbn0gfVxyXG48bmctdGVtcGxhdGUgI1F1aWNrQWNjZXNzVGVtcGxhdGU+XHJcbiAgICA8Ym5yYy1yZXBvcnQtY29udGFpbmVyICpuZ0lmPVwic2lkZWJhclNldHRpbmdzXCIgW3NldHRpbmdzXT1cInNpZGViYXJTZXR0aW5nc1wiPiA8L2JucmMtcmVwb3J0LWNvbnRhaW5lcj5cclxuICAgIDwhLS0gPGJ0LXBvcG92ZXItYXBwLWZpbmRlciAoY2xvc2VNZW51KT1cImlzT3BlblF1aWNrQWNjZXNzID0gZmFsc2VcIj48L2J0LXBvcG92ZXItYXBwLWZpbmRlcj4gLS0+XHJcbjwvbmctdGVtcGxhdGU+XHJcbiJdfQ==
@@ -1,28 +0,0 @@
1
- import { ChangeDetectionStrategy, Component } from '@angular/core';
2
- import { BaseBtTileComponent } from '../models';
3
- import * as i0 from "@angular/core";
4
- import * as i1 from "@fundamental-ngx/core/icon";
5
- import * as i2 from "@fundamental-ngx/core/tile";
6
- import * as i3 from "../tile/tile.component";
7
- import * as i4 from "barsa-novin-ray-core";
8
- import * as i5 from "barsa-sap-ui";
9
- import * as i6 from "../pipes/tile-prop.pipe";
10
- export class SimpleTileComponent extends BaseBtTileComponent {
11
- ngOnInit() {
12
- super.ngOnInit();
13
- this.icon = this.settings.Icon;
14
- this.isCircle = this.settings.IsCircle;
15
- this.pictureIcon = this.settings.PictureIcon;
16
- if (this.icon && this.icon.toLowerCase().startsWith('ih')) {
17
- this.iconCalc = this.icon;
18
- }
19
- this.iconColor = this.settings.IconColor;
20
- }
21
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SimpleTileComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
22
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: SimpleTileComponent, selector: "bt-simple-tile", usesInheritance: true, ngImport: i0, template: "<bt-tile\r\n [data]=\"data\"\r\n [type]=\"'launch'\"\r\n [edit]=\"edit\"\r\n [navigateBackOnClick]=\"navigateBackOnClick\"\r\n [title]=\"data | tileProp: 'Title':parameters\"\r\n [setToStorage]=\"setToStorage\"\r\n [dynamicCommand]=\"data | tileProp: 'DynamicCommand':parameters\"\r\n [listMode]=\"listMode\"\r\n [backColor]=\"backColor\"\r\n [deviceSize]=\"deviceSize\"\r\n [subtitle]=\"data | tileProp: 'Subtitle':parameters\"\r\n [isDouble]=\"data | tileProp: 'IsDouble':parameters\"\r\n [footer]=\"data | tileProp: 'Footer':parameters\"\r\n (hideClick)=\"hideClick.emit()\"\r\n (renameClick)=\"renameClick.emit()\"\r\n (click)=\"onTileClick()\"\r\n>\r\n <div fd-tile-content [class.picture-icon]=\"pictureIcon || iconCalc\">\r\n @if(pictureIcon || iconCalc){\r\n <span\r\n class=\"tile-picture-icon\"\r\n [class.circle]=\"isCircle\"\r\n fd-tile-profile-img\r\n [backgroundImage]=\"iconCalc || (pictureIcon.FileId | picFieldSrc: 'GetPictureFromFileInfo':null)\"\r\n ></span>\r\n } @else if (icon) {\r\n <div class=\"fd-numeric-content__launch-icon-container\" style=\"justify-content: center\">\r\n <fd-icon\r\n class=\"fd-numeric-content__launch-icon\"\r\n fd-numeric-content-launch-icon\r\n [glyph]=\"icon\"\r\n [font]=\"icon | sapFont\"\r\n [style.color]=\"iconColor\"\r\n ></fd-icon>\r\n </div>\r\n }\r\n </div>\r\n</bt-tile>\r\n", styles: ["fd-icon{font-size:2rem}.tile-picture-icon{background-size:contain;background-position:center;background-repeat:no-repeat;border-radius:0}.tile-picture-icon.circle{border-radius:50%}\n"], dependencies: [{ kind: "component", type: i1.IconComponent, selector: "fd-icon", inputs: ["glyph", "font", "color", "background", "class", "ariaLabel", "ariaHidden"] }, { kind: "directive", type: i2.TileContentDirective, selector: "[fdTileContent], [fd-tile-content]", inputs: ["twoColumn"] }, { kind: "directive", type: i2.TileProfileImgDirective, selector: "[fdTileProfileImg], [fd-tile-profile-img]", inputs: ["id", "ariaLabel", "ariaLabelledby", "backgroundImage"] }, { kind: "directive", type: i2.NumericContentLaunchIconDirective, selector: "[fd-numeric-content-launch-icon]", inputs: ["class", "glyph", "glyphFont"] }, { kind: "component", type: i3.TileComponent, selector: "bt-tile", inputs: ["type", "footerTemplate", "footer", "title", "icon", "subtitle", "isDouble", "disableClick", "edit", "dynamicCommand", "backColor", "hideHeader", "setToStorage", "listMode", "navigateBackOnClick"] }, { kind: "pipe", type: i4.PictureFieldSourcePipe, name: "picFieldSrc" }, { kind: "pipe", type: i5.SapFontPipe, name: "sapFont" }, { kind: "pipe", type: i6.TilePropPipe, name: "tileProp" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
23
- }
24
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SimpleTileComponent, decorators: [{
25
- type: Component,
26
- args: [{ selector: 'bt-simple-tile', changeDetection: ChangeDetectionStrategy.OnPush, standalone: false, template: "<bt-tile\r\n [data]=\"data\"\r\n [type]=\"'launch'\"\r\n [edit]=\"edit\"\r\n [navigateBackOnClick]=\"navigateBackOnClick\"\r\n [title]=\"data | tileProp: 'Title':parameters\"\r\n [setToStorage]=\"setToStorage\"\r\n [dynamicCommand]=\"data | tileProp: 'DynamicCommand':parameters\"\r\n [listMode]=\"listMode\"\r\n [backColor]=\"backColor\"\r\n [deviceSize]=\"deviceSize\"\r\n [subtitle]=\"data | tileProp: 'Subtitle':parameters\"\r\n [isDouble]=\"data | tileProp: 'IsDouble':parameters\"\r\n [footer]=\"data | tileProp: 'Footer':parameters\"\r\n (hideClick)=\"hideClick.emit()\"\r\n (renameClick)=\"renameClick.emit()\"\r\n (click)=\"onTileClick()\"\r\n>\r\n <div fd-tile-content [class.picture-icon]=\"pictureIcon || iconCalc\">\r\n @if(pictureIcon || iconCalc){\r\n <span\r\n class=\"tile-picture-icon\"\r\n [class.circle]=\"isCircle\"\r\n fd-tile-profile-img\r\n [backgroundImage]=\"iconCalc || (pictureIcon.FileId | picFieldSrc: 'GetPictureFromFileInfo':null)\"\r\n ></span>\r\n } @else if (icon) {\r\n <div class=\"fd-numeric-content__launch-icon-container\" style=\"justify-content: center\">\r\n <fd-icon\r\n class=\"fd-numeric-content__launch-icon\"\r\n fd-numeric-content-launch-icon\r\n [glyph]=\"icon\"\r\n [font]=\"icon | sapFont\"\r\n [style.color]=\"iconColor\"\r\n ></fd-icon>\r\n </div>\r\n }\r\n </div>\r\n</bt-tile>\r\n", styles: ["fd-icon{font-size:2rem}.tile-picture-icon{background-size:contain;background-position:center;background-repeat:no-repeat;border-radius:0}.tile-picture-icon.circle{border-radius:50%}\n"] }]
27
- }] });
28
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2ltcGxlLXRpbGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2EtdGlsZXMvc3JjL2xpYi9zaW1wbGUtdGlsZS9zaW1wbGUtdGlsZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9iYXJzYS10aWxlcy9zcmMvbGliL3NpbXBsZS10aWxlL3NpbXBsZS10aWxlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFFM0UsT0FBTyxFQUFFLG1CQUFtQixFQUFtQixNQUFNLFdBQVcsQ0FBQzs7Ozs7Ozs7QUFTakUsTUFBTSxPQUFPLG1CQUFvQixTQUFRLG1CQUFvQztJQU16RSxRQUFRO1FBQ0osS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBQ2pCLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUM7UUFDL0IsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQztRQUN2QyxJQUFJLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDO1FBQzdDLElBQUksSUFBSSxDQUFDLElBQUksSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDO1lBQ3hELElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQztRQUM5QixDQUFDO1FBQ0QsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLFNBQVMsQ0FBQztJQUM3QyxDQUFDOytHQWZRLG1CQUFtQjttR0FBbkIsbUJBQW1CLDZFQ1hoQyw4aURBdUNBOzs0RkQ1QmEsbUJBQW1CO2tCQVAvQixTQUFTOytCQUNJLGdCQUFnQixtQkFHVCx1QkFBdUIsQ0FBQyxNQUFNLGNBQ25DLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbmltcG9ydCB7IEJhc2VCdFRpbGVDb21wb25lbnQsIEJhc2VUaWxlU2V0dGluZyB9IGZyb20gJy4uL21vZGVscyc7XHJcbmltcG9ydCB7IEZpbGVQaWN0dXJlSW5mb01vZGVsIH0gZnJvbSAnYmFyc2Etbm92aW4tcmF5LWNvcmUnO1xyXG5AQ29tcG9uZW50KHtcclxuICAgIHNlbGVjdG9yOiAnYnQtc2ltcGxlLXRpbGUnLFxyXG4gICAgdGVtcGxhdGVVcmw6ICcuL3NpbXBsZS10aWxlLmNvbXBvbmVudC5odG1sJyxcclxuICAgIHN0eWxlVXJsczogWycuL3NpbXBsZS10aWxlLmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcclxuICAgIHN0YW5kYWxvbmU6IGZhbHNlXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBTaW1wbGVUaWxlQ29tcG9uZW50IGV4dGVuZHMgQmFzZUJ0VGlsZUNvbXBvbmVudDxCYXNlVGlsZVNldHRpbmc+IGltcGxlbWVudHMgT25Jbml0IHtcclxuICAgIGljb246IHN0cmluZztcclxuICAgIGljb25DYWxjOiBzdHJpbmc7XHJcbiAgICBpY29uQ29sb3I6IHN0cmluZztcclxuICAgIGlzQ2lyY2xlOiBib29sZWFuO1xyXG4gICAgcGljdHVyZUljb246IEZpbGVQaWN0dXJlSW5mb01vZGVsO1xyXG4gICAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICAgICAgc3VwZXIubmdPbkluaXQoKTtcclxuICAgICAgICB0aGlzLmljb24gPSB0aGlzLnNldHRpbmdzLkljb247XHJcbiAgICAgICAgdGhpcy5pc0NpcmNsZSA9IHRoaXMuc2V0dGluZ3MuSXNDaXJjbGU7XHJcbiAgICAgICAgdGhpcy5waWN0dXJlSWNvbiA9IHRoaXMuc2V0dGluZ3MuUGljdHVyZUljb247XHJcbiAgICAgICAgaWYgKHRoaXMuaWNvbiAmJiB0aGlzLmljb24udG9Mb3dlckNhc2UoKS5zdGFydHNXaXRoKCdpaCcpKSB7XHJcbiAgICAgICAgICAgIHRoaXMuaWNvbkNhbGMgPSB0aGlzLmljb247XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRoaXMuaWNvbkNvbG9yID0gdGhpcy5zZXR0aW5ncy5JY29uQ29sb3I7XHJcbiAgICB9XHJcbn1cclxuIiwiPGJ0LXRpbGVcclxuICAgIFtkYXRhXT1cImRhdGFcIlxyXG4gICAgW3R5cGVdPVwiJ2xhdW5jaCdcIlxyXG4gICAgW2VkaXRdPVwiZWRpdFwiXHJcbiAgICBbbmF2aWdhdGVCYWNrT25DbGlja109XCJuYXZpZ2F0ZUJhY2tPbkNsaWNrXCJcclxuICAgIFt0aXRsZV09XCJkYXRhIHwgdGlsZVByb3A6ICdUaXRsZSc6cGFyYW1ldGVyc1wiXHJcbiAgICBbc2V0VG9TdG9yYWdlXT1cInNldFRvU3RvcmFnZVwiXHJcbiAgICBbZHluYW1pY0NvbW1hbmRdPVwiZGF0YSB8IHRpbGVQcm9wOiAnRHluYW1pY0NvbW1hbmQnOnBhcmFtZXRlcnNcIlxyXG4gICAgW2xpc3RNb2RlXT1cImxpc3RNb2RlXCJcclxuICAgIFtiYWNrQ29sb3JdPVwiYmFja0NvbG9yXCJcclxuICAgIFtkZXZpY2VTaXplXT1cImRldmljZVNpemVcIlxyXG4gICAgW3N1YnRpdGxlXT1cImRhdGEgfCB0aWxlUHJvcDogJ1N1YnRpdGxlJzpwYXJhbWV0ZXJzXCJcclxuICAgIFtpc0RvdWJsZV09XCJkYXRhIHwgdGlsZVByb3A6ICdJc0RvdWJsZSc6cGFyYW1ldGVyc1wiXHJcbiAgICBbZm9vdGVyXT1cImRhdGEgfCB0aWxlUHJvcDogJ0Zvb3Rlcic6cGFyYW1ldGVyc1wiXHJcbiAgICAoaGlkZUNsaWNrKT1cImhpZGVDbGljay5lbWl0KClcIlxyXG4gICAgKHJlbmFtZUNsaWNrKT1cInJlbmFtZUNsaWNrLmVtaXQoKVwiXHJcbiAgICAoY2xpY2spPVwib25UaWxlQ2xpY2soKVwiXHJcbj5cclxuICAgIDxkaXYgZmQtdGlsZS1jb250ZW50IFtjbGFzcy5waWN0dXJlLWljb25dPVwicGljdHVyZUljb24gfHwgaWNvbkNhbGNcIj5cclxuICAgICAgICBAaWYocGljdHVyZUljb24gfHwgaWNvbkNhbGMpe1xyXG4gICAgICAgIDxzcGFuXHJcbiAgICAgICAgICAgIGNsYXNzPVwidGlsZS1waWN0dXJlLWljb25cIlxyXG4gICAgICAgICAgICBbY2xhc3MuY2lyY2xlXT1cImlzQ2lyY2xlXCJcclxuICAgICAgICAgICAgZmQtdGlsZS1wcm9maWxlLWltZ1xyXG4gICAgICAgICAgICBbYmFja2dyb3VuZEltYWdlXT1cImljb25DYWxjIHx8IChwaWN0dXJlSWNvbi5GaWxlSWQgfCBwaWNGaWVsZFNyYzogJ0dldFBpY3R1cmVGcm9tRmlsZUluZm8nOm51bGwpXCJcclxuICAgICAgICA+PC9zcGFuPlxyXG4gICAgICAgIH0gQGVsc2UgaWYgKGljb24pIHtcclxuICAgICAgICA8ZGl2IGNsYXNzPVwiZmQtbnVtZXJpYy1jb250ZW50X19sYXVuY2gtaWNvbi1jb250YWluZXJcIiBzdHlsZT1cImp1c3RpZnktY29udGVudDogY2VudGVyXCI+XHJcbiAgICAgICAgICAgIDxmZC1pY29uXHJcbiAgICAgICAgICAgICAgICBjbGFzcz1cImZkLW51bWVyaWMtY29udGVudF9fbGF1bmNoLWljb25cIlxyXG4gICAgICAgICAgICAgICAgZmQtbnVtZXJpYy1jb250ZW50LWxhdW5jaC1pY29uXHJcbiAgICAgICAgICAgICAgICBbZ2x5cGhdPVwiaWNvblwiXHJcbiAgICAgICAgICAgICAgICBbZm9udF09XCJpY29uIHwgc2FwRm9udFwiXHJcbiAgICAgICAgICAgICAgICBbc3R5bGUuY29sb3JdPVwiaWNvbkNvbG9yXCJcclxuICAgICAgICAgICAgPjwvZmQtaWNvbj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICB9XHJcbiAgICA8L2Rpdj5cclxuPC9idC10aWxlPlxyXG4iXX0=
@@ -1,51 +0,0 @@
1
- import { ChangeDetectionStrategy, Component, Input } from '@angular/core';
2
- import { TilePropsComponent } from 'barsa-novin-ray-core';
3
- import * as i0 from "@angular/core";
4
- import * as i1 from "@angular/common";
5
- import * as i2 from "@fundamental-ngx/core/button";
6
- import * as i3 from "@fundamental-ngx/core/list";
7
- import * as i4 from "@fundamental-ngx/core/menu";
8
- import * as i5 from "@fundamental-ngx/core/tile";
9
- import * as i6 from "../footer-tile/footer-tile.component";
10
- import * as i7 from "../tile-style.directive";
11
- import * as i8 from "../directives/tile-dynamic-command.directive";
12
- import * as i9 from "barsa-novin-ray-core";
13
- export class TileComponent extends TilePropsComponent {
14
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: TileComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
15
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: TileComponent, selector: "bt-tile", inputs: { type: "type", footerTemplate: "footerTemplate", footer: "footer", title: "title", icon: "icon", subtitle: "subtitle", isDouble: "isDouble", disableClick: "disableClick", edit: "edit", dynamicCommand: "dynamicCommand", backColor: "backColor", hideHeader: "hideHeader", setToStorage: "setToStorage", listMode: "listMode", navigateBackOnClick: "navigateBackOnClick" }, usesInheritance: true, ngImport: i0, template: "@if(!listMode) {\r\n<fd-tile\r\n [type]=\"type\"\r\n [double]=\"isDouble && deviceSize!=='s' && deviceSize!=='m'\"\r\n [action]=\"edit\"\r\n tileStyle\r\n [backColor]=\"backColor\"\r\n [size]=\"'s'\"\r\n tileDynCommand\r\n [edit]=\"edit\"\r\n [navigateBackOnClick]=\"navigateBackOnClick\"\r\n [title]=\"title\"\r\n [setToStorage]=\"setToStorage\"\r\n [dynamicCommand]=\"dynamicCommand\"\r\n>\r\n @if (edit && !data.Locked) {\r\n <button fd-button fd-tile-action-close fdType=\"transparent\" (click)=\"hideClick.emit()\"></button>\r\n } @if (edit && !data.Locked) {\r\n <button fd-button fd-tile-action-indicator fdType=\"transparent\" [fdMenuTrigger]=\"menu\"></button>\r\n } @if(!hideHeader){\r\n <div fd-tile-header>\r\n <h1 fd-tile-title>\r\n {{ title | bbbTranslate }}\r\n </h1>\r\n <h2 fd-tile-subtitle>\r\n {{ subtitle | bbbTranslate }}\r\n </h2>\r\n </div>\r\n }\r\n <ng-content></ng-content>\r\n <ng-container [ngTemplateOutlet]=\"footerTemplate ? footerTemplate : defaultFooter\"></ng-container>\r\n</fd-tile>\r\n}@else{\r\n<span fd-list-title> {{ title | bbbTranslate }} </span>\r\n<span fd-list-secondary> {{ subtitle | bbbTranslate }} </span>\r\n@if(icon){ <i fd-list-icon [glyph]=\"icon\"></i>} }\r\n<ng-template #defaultFooter>\r\n @if (footer) {\r\n <div\r\n fd-tile-footer\r\n bt-footer-tile\r\n [secondSection]=\"footer.SecondSection\"\r\n [twoColumn]=\"footer.twoColumn\"\r\n [firstSection]=\"footer.FirstSection\"\r\n ></div>\r\n\r\n }\r\n</ng-template>\r\n<fd-menu #menu>\r\n <li fd-menu-item>\r\n <a (click)=\"menu.close(); renameClick.emit()\" fd-menu-interactive>\r\n <span fd-menu-title>{{ 'Rename' | bbbTranslate }}</span>\r\n </a>\r\n </li>\r\n</fd-menu>\r\n", styles: [":host,fd-tile{display:block}\n"], dependencies: [{ kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i2.ButtonComponent, selector: "button[fd-button], a[fd-button], span[fd-button]", inputs: ["class"], exportAs: ["fd-button"] }, { kind: "directive", type: i3.ListTitleDirective, selector: "[fd-list-title], [fdListTitle]", inputs: ["wrap"] }, { kind: "directive", type: i3.ListSecondaryDirective, selector: "[fd-list-secondary], [fdListSecondary]", inputs: ["type"] }, { kind: "directive", type: i3.ListIconDirective, selector: "[fdListIcon], [fd-list-icon]", inputs: ["glyph", "glyphFont", "class", "role", "ariaHidden"] }, { kind: "component", type: i4.MenuComponent, selector: "fd-menu", inputs: ["mobile", "disabled", "focusTrapped", "focusAutoCapture", "openOnHoverTime", "mobileConfig", "ariaLabel", "ariaLabelledby", "id"], outputs: ["activePath"] }, { kind: "component", type: i4.MenuItemComponent, selector: "li[fd-menu-item]", inputs: ["disabled", "itemId", "submenu", "parentSubmenu", "hasSeparator"], outputs: ["onSelect"], exportAs: ["fd-menu-item"] }, { kind: "component", type: i4.MenuInteractiveComponent, selector: "[fd-menu-interactive]" }, { kind: "directive", type: i4.MenuTitleDirective, selector: "[fd-menu-title]" }, { kind: "directive", type: i4.MenuTriggerDirective, selector: "[fdMenuTrigger]", inputs: ["fdMenuTrigger"] }, { kind: "component", type: i5.TileComponent, selector: "fd-tile", inputs: ["class", "size", "double", "type", "action", "clickable"], outputs: ["tileClick"] }, { kind: "directive", type: i5.TileHeaderDirective, selector: "[fdTileHeader], [fd-tile-header]", inputs: ["twoColumn"] }, { kind: "directive", type: i5.TileFooterDirective, selector: "[fdTileFooter], [fd-tile-footer]", inputs: ["twoColumn"] }, { kind: "directive", type: i5.TileTitleDirective, selector: "[fdTileTitle], [fd-tile-title]" }, { kind: "directive", type: i5.TileSubtitleDirective, selector: "[fdTileTitle], [fd-tile-subtitle]" }, { kind: "directive", type: i5.TileActionCloseDirective, selector: "[fdTileActionClose], [fd-tile-action-close]", inputs: ["class"] }, { kind: "directive", type: i5.TileActionIndicatorDirective, selector: "[fdTileActionIndicator], [fd-tile-action-indicator]", inputs: ["class"] }, { kind: "component", type: i6.FooterTileComponent, selector: "bt-footer-tile,div[bt-footer-tile]", inputs: ["firstSection", "secondSection", "twoColumn"] }, { kind: "directive", type: i7.TileStyleDirective, selector: "[tileStyle]", inputs: ["backColor"] }, { kind: "directive", type: i8.TileDynamicCommandDirective, selector: "[tileDynCommand]", inputs: ["disableClick", "edit", "dynamicCommand", "title", "setToStorage", "navigateBackOnClick"] }, { kind: "pipe", type: i9.BbbTranslatePipe, name: "bbbTranslate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
16
- }
17
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: TileComponent, decorators: [{
18
- type: Component,
19
- args: [{ selector: 'bt-tile', changeDetection: ChangeDetectionStrategy.OnPush, standalone: false, template: "@if(!listMode) {\r\n<fd-tile\r\n [type]=\"type\"\r\n [double]=\"isDouble && deviceSize!=='s' && deviceSize!=='m'\"\r\n [action]=\"edit\"\r\n tileStyle\r\n [backColor]=\"backColor\"\r\n [size]=\"'s'\"\r\n tileDynCommand\r\n [edit]=\"edit\"\r\n [navigateBackOnClick]=\"navigateBackOnClick\"\r\n [title]=\"title\"\r\n [setToStorage]=\"setToStorage\"\r\n [dynamicCommand]=\"dynamicCommand\"\r\n>\r\n @if (edit && !data.Locked) {\r\n <button fd-button fd-tile-action-close fdType=\"transparent\" (click)=\"hideClick.emit()\"></button>\r\n } @if (edit && !data.Locked) {\r\n <button fd-button fd-tile-action-indicator fdType=\"transparent\" [fdMenuTrigger]=\"menu\"></button>\r\n } @if(!hideHeader){\r\n <div fd-tile-header>\r\n <h1 fd-tile-title>\r\n {{ title | bbbTranslate }}\r\n </h1>\r\n <h2 fd-tile-subtitle>\r\n {{ subtitle | bbbTranslate }}\r\n </h2>\r\n </div>\r\n }\r\n <ng-content></ng-content>\r\n <ng-container [ngTemplateOutlet]=\"footerTemplate ? footerTemplate : defaultFooter\"></ng-container>\r\n</fd-tile>\r\n}@else{\r\n<span fd-list-title> {{ title | bbbTranslate }} </span>\r\n<span fd-list-secondary> {{ subtitle | bbbTranslate }} </span>\r\n@if(icon){ <i fd-list-icon [glyph]=\"icon\"></i>} }\r\n<ng-template #defaultFooter>\r\n @if (footer) {\r\n <div\r\n fd-tile-footer\r\n bt-footer-tile\r\n [secondSection]=\"footer.SecondSection\"\r\n [twoColumn]=\"footer.twoColumn\"\r\n [firstSection]=\"footer.FirstSection\"\r\n ></div>\r\n\r\n }\r\n</ng-template>\r\n<fd-menu #menu>\r\n <li fd-menu-item>\r\n <a (click)=\"menu.close(); renameClick.emit()\" fd-menu-interactive>\r\n <span fd-menu-title>{{ 'Rename' | bbbTranslate }}</span>\r\n </a>\r\n </li>\r\n</fd-menu>\r\n", styles: [":host,fd-tile{display:block}\n"] }]
20
- }], propDecorators: { type: [{
21
- type: Input
22
- }], footerTemplate: [{
23
- type: Input
24
- }], footer: [{
25
- type: Input
26
- }], title: [{
27
- type: Input
28
- }], icon: [{
29
- type: Input
30
- }], subtitle: [{
31
- type: Input
32
- }], isDouble: [{
33
- type: Input
34
- }], disableClick: [{
35
- type: Input
36
- }], edit: [{
37
- type: Input
38
- }], dynamicCommand: [{
39
- type: Input
40
- }], backColor: [{
41
- type: Input
42
- }], hideHeader: [{
43
- type: Input
44
- }], setToStorage: [{
45
- type: Input
46
- }], listMode: [{
47
- type: Input
48
- }], navigateBackOnClick: [{
49
- type: Input
50
- }] } });
51
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGlsZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9iYXJzYS10aWxlcy9zcmMvbGliL3RpbGUvdGlsZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9iYXJzYS10aWxlcy9zcmMvbGliL3RpbGUvdGlsZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBZSxNQUFNLGVBQWUsQ0FBQztBQUN2RixPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQzs7Ozs7Ozs7Ozs7QUFVMUQsTUFBTSxPQUFPLGFBQWMsU0FBUSxrQkFBa0I7K0dBQXhDLGFBQWE7bUdBQWIsYUFBYSw4YkNYMUIsdzFEQXVEQTs7NEZENUNhLGFBQWE7a0JBUHpCLFNBQVM7K0JBQ0ksU0FBUyxtQkFHRix1QkFBdUIsQ0FBQyxNQUFNLGNBQ25DLEtBQUs7OEJBR1IsSUFBSTtzQkFBWixLQUFLO2dCQUNHLGNBQWM7c0JBQXRCLEtBQUs7Z0JBQ0csTUFBTTtzQkFBZCxLQUFLO2dCQUNHLEtBQUs7c0JBQWIsS0FBSztnQkFDRyxJQUFJO3NCQUFaLEtBQUs7Z0JBQ0csUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLFlBQVk7c0JBQXBCLEtBQUs7Z0JBQ0csSUFBSTtzQkFBWixLQUFLO2dCQUNHLGNBQWM7c0JBQXRCLEtBQUs7Z0JBQ0csU0FBUztzQkFBakIsS0FBSztnQkFDRyxVQUFVO3NCQUFsQixLQUFLO2dCQUNHLFlBQVk7c0JBQXBCLEtBQUs7Z0JBQ0csUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxtQkFBbUI7c0JBQTNCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBJbnB1dCwgVGVtcGxhdGVSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgVGlsZVByb3BzQ29tcG9uZW50IH0gZnJvbSAnYmFyc2Etbm92aW4tcmF5LWNvcmUnO1xyXG5pbXBvcnQgeyBBcHBUaWxlRm9vdGVyIH0gZnJvbSAnLi4vbW9kZWxzJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gICAgc2VsZWN0b3I6ICdidC10aWxlJyxcclxuICAgIHRlbXBsYXRlVXJsOiAnLi90aWxlLmNvbXBvbmVudC5odG1sJyxcclxuICAgIHN0eWxlVXJsczogWycuL3RpbGUuY29tcG9uZW50LnNjc3MnXSxcclxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxyXG4gICAgc3RhbmRhbG9uZTogZmFsc2VcclxufSlcclxuZXhwb3J0IGNsYXNzIFRpbGVDb21wb25lbnQgZXh0ZW5kcyBUaWxlUHJvcHNDb21wb25lbnQge1xyXG4gICAgQElucHV0KCkgdHlwZTogJ2ZlZWQnIHwgJ2xhdW5jaCcgfCAna3BpJztcclxuICAgIEBJbnB1dCgpIGZvb3RlclRlbXBsYXRlOiBUZW1wbGF0ZVJlZjxhbnk+O1xyXG4gICAgQElucHV0KCkgZm9vdGVyOiBBcHBUaWxlRm9vdGVyO1xyXG4gICAgQElucHV0KCkgdGl0bGU6IHN0cmluZztcclxuICAgIEBJbnB1dCgpIGljb246IHN0cmluZztcclxuICAgIEBJbnB1dCgpIHN1YnRpdGxlOiBzdHJpbmc7XHJcbiAgICBASW5wdXQoKSBpc0RvdWJsZTogYm9vbGVhbjtcclxuICAgIEBJbnB1dCgpIGRpc2FibGVDbGljazogYm9vbGVhbjtcclxuICAgIEBJbnB1dCgpIGVkaXQ6IGJvb2xlYW47XHJcbiAgICBASW5wdXQoKSBkeW5hbWljQ29tbWFuZDogYW55O1xyXG4gICAgQElucHV0KCkgYmFja0NvbG9yOiBzdHJpbmc7XHJcbiAgICBASW5wdXQoKSBoaWRlSGVhZGVyOiBib29sZWFuO1xyXG4gICAgQElucHV0KCkgc2V0VG9TdG9yYWdlOiBib29sZWFuO1xyXG4gICAgQElucHV0KCkgbGlzdE1vZGU6IGJvb2xlYW47XHJcbiAgICBASW5wdXQoKSBuYXZpZ2F0ZUJhY2tPbkNsaWNrOiBib29sZWFuO1xyXG4gIFxyXG59XHJcbiIsIkBpZighbGlzdE1vZGUpIHtcclxuPGZkLXRpbGVcclxuICAgIFt0eXBlXT1cInR5cGVcIlxyXG4gICAgW2RvdWJsZV09XCJpc0RvdWJsZSAmJiBkZXZpY2VTaXplIT09J3MnICYmIGRldmljZVNpemUhPT0nbSdcIlxyXG4gICAgW2FjdGlvbl09XCJlZGl0XCJcclxuICAgIHRpbGVTdHlsZVxyXG4gICAgW2JhY2tDb2xvcl09XCJiYWNrQ29sb3JcIlxyXG4gICAgW3NpemVdPVwiJ3MnXCJcclxuICAgIHRpbGVEeW5Db21tYW5kXHJcbiAgICBbZWRpdF09XCJlZGl0XCJcclxuICAgIFtuYXZpZ2F0ZUJhY2tPbkNsaWNrXT1cIm5hdmlnYXRlQmFja09uQ2xpY2tcIlxyXG4gICAgW3RpdGxlXT1cInRpdGxlXCJcclxuICAgIFtzZXRUb1N0b3JhZ2VdPVwic2V0VG9TdG9yYWdlXCJcclxuICAgIFtkeW5hbWljQ29tbWFuZF09XCJkeW5hbWljQ29tbWFuZFwiXHJcbj5cclxuICAgIEBpZiAoZWRpdCAmJiAhZGF0YS5Mb2NrZWQpIHtcclxuICAgIDxidXR0b24gZmQtYnV0dG9uIGZkLXRpbGUtYWN0aW9uLWNsb3NlIGZkVHlwZT1cInRyYW5zcGFyZW50XCIgKGNsaWNrKT1cImhpZGVDbGljay5lbWl0KClcIj48L2J1dHRvbj5cclxuICAgIH0gQGlmIChlZGl0ICYmICFkYXRhLkxvY2tlZCkge1xyXG4gICAgPGJ1dHRvbiBmZC1idXR0b24gZmQtdGlsZS1hY3Rpb24taW5kaWNhdG9yIGZkVHlwZT1cInRyYW5zcGFyZW50XCIgW2ZkTWVudVRyaWdnZXJdPVwibWVudVwiPjwvYnV0dG9uPlxyXG4gICAgfSBAaWYoIWhpZGVIZWFkZXIpe1xyXG4gICAgPGRpdiBmZC10aWxlLWhlYWRlcj5cclxuICAgICAgICA8aDEgZmQtdGlsZS10aXRsZT5cclxuICAgICAgICAgICAge3sgdGl0bGUgfCBiYmJUcmFuc2xhdGUgfX1cclxuICAgICAgICA8L2gxPlxyXG4gICAgICAgIDxoMiBmZC10aWxlLXN1YnRpdGxlPlxyXG4gICAgICAgICAgICB7eyBzdWJ0aXRsZSB8IGJiYlRyYW5zbGF0ZSB9fVxyXG4gICAgICAgIDwvaDI+XHJcbiAgICA8L2Rpdj5cclxuICAgIH1cclxuICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cclxuICAgIDxuZy1jb250YWluZXIgW25nVGVtcGxhdGVPdXRsZXRdPVwiZm9vdGVyVGVtcGxhdGUgPyBmb290ZXJUZW1wbGF0ZSA6IGRlZmF1bHRGb290ZXJcIj48L25nLWNvbnRhaW5lcj5cclxuPC9mZC10aWxlPlxyXG59QGVsc2V7XHJcbjxzcGFuIGZkLWxpc3QtdGl0bGU+IHt7IHRpdGxlIHwgYmJiVHJhbnNsYXRlIH19IDwvc3Bhbj5cclxuPHNwYW4gZmQtbGlzdC1zZWNvbmRhcnk+IHt7IHN1YnRpdGxlIHwgYmJiVHJhbnNsYXRlIH19IDwvc3Bhbj5cclxuQGlmKGljb24peyA8aSBmZC1saXN0LWljb24gW2dseXBoXT1cImljb25cIj48L2k+fSB9XHJcbjxuZy10ZW1wbGF0ZSAjZGVmYXVsdEZvb3Rlcj5cclxuICAgIEBpZiAoZm9vdGVyKSB7XHJcbiAgICA8ZGl2XHJcbiAgICAgICAgZmQtdGlsZS1mb290ZXJcclxuICAgICAgICBidC1mb290ZXItdGlsZVxyXG4gICAgICAgIFtzZWNvbmRTZWN0aW9uXT1cImZvb3Rlci5TZWNvbmRTZWN0aW9uXCJcclxuICAgICAgICBbdHdvQ29sdW1uXT1cImZvb3Rlci50d29Db2x1bW5cIlxyXG4gICAgICAgIFtmaXJzdFNlY3Rpb25dPVwiZm9vdGVyLkZpcnN0U2VjdGlvblwiXHJcbiAgICA+PC9kaXY+XHJcblxyXG4gICAgfVxyXG48L25nLXRlbXBsYXRlPlxyXG48ZmQtbWVudSAjbWVudT5cclxuICAgIDxsaSBmZC1tZW51LWl0ZW0+XHJcbiAgICAgICAgPGEgKGNsaWNrKT1cIm1lbnUuY2xvc2UoKTsgcmVuYW1lQ2xpY2suZW1pdCgpXCIgZmQtbWVudS1pbnRlcmFjdGl2ZT5cclxuICAgICAgICAgICAgPHNwYW4gZmQtbWVudS10aXRsZT57eyAnUmVuYW1lJyB8IGJiYlRyYW5zbGF0ZSB9fTwvc3Bhbj5cclxuICAgICAgICA8L2E+XHJcbiAgICA8L2xpPlxyXG48L2ZkLW1lbnU+XHJcbiJdfQ==
@@ -1,86 +0,0 @@
1
- import { Directive, EventEmitter, Input, Output } from '@angular/core';
2
- import { BaseDirective } from 'barsa-novin-ray-core';
3
- import { takeUntil } from 'rxjs/operators';
4
- import * as i0 from "@angular/core";
5
- import * as i1 from "barsa-novin-ray-core";
6
- export class TileRendererDirective extends BaseDirective {
7
- constructor(_cdr, _portalService, _vcr, _injector, _el) {
8
- super(_el);
9
- this._cdr = _cdr;
10
- this._portalService = _portalService;
11
- this._vcr = _vcr;
12
- this._injector = _injector;
13
- this._el = _el;
14
- this.hideClick = new EventEmitter();
15
- this.renameClick = new EventEmitter();
16
- }
17
- ngOnInit() {
18
- super.ngOnInit();
19
- if (!this.component) {
20
- return;
21
- }
22
- const { Module, ModuleFileName, Name, Selector } = this.component;
23
- this._portalService
24
- .getComponent(Module, ModuleFileName, Name, Selector, this._injector)
25
- .pipe(takeUntil(this._onDestroy$))
26
- .subscribe((componentRef) => {
27
- const instance = componentRef.instance;
28
- instance.data = this.data;
29
- instance.edit = this.edit;
30
- instance.deviceSize = this.deviceSize;
31
- instance.setToStorage = this.setToStorage;
32
- instance.listMode = this.listMode;
33
- instance.groupType = this.groupType;
34
- instance.navigateBackOnClick = this.navigateBackOnClick;
35
- instance.hideClick?.pipe(takeUntil(this._onDestroy$)).subscribe(() => {
36
- this.hideClick.emit();
37
- });
38
- instance.renameClick?.pipe(takeUntil(this._onDestroy$)).subscribe(() => this.renameClick.emit());
39
- this._vcr.insert(componentRef.hostView);
40
- this._tileRef = componentRef;
41
- // this._cdr.detectChanges();
42
- });
43
- }
44
- ngOnChanges(changes) {
45
- const { edit } = changes;
46
- if (edit && !edit.firstChange) {
47
- this._tileRef.instance.setEditHome(edit.currentValue);
48
- }
49
- }
50
- ngOnDestroy() {
51
- super.ngOnDestroy();
52
- if (this._tileRef) {
53
- this._tileRef.destroy();
54
- }
55
- }
56
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: TileRendererDirective, deps: [{ token: i0.ChangeDetectorRef }, { token: i1.PortalService }, { token: i0.ViewContainerRef }, { token: i0.Injector }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive }); }
57
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.13", type: TileRendererDirective, selector: "[tileRenderer]", inputs: { component: "component", data: "data", groupType: "groupType", edit: "edit", deviceSize: "deviceSize", setToStorage: "setToStorage", listMode: "listMode", navigateBackOnClick: "navigateBackOnClick" }, outputs: { hideClick: "hideClick", renameClick: "renameClick" }, usesInheritance: true, usesOnChanges: true, ngImport: i0 }); }
58
- }
59
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: TileRendererDirective, decorators: [{
60
- type: Directive,
61
- args: [{
62
- selector: '[tileRenderer]',
63
- standalone: false
64
- }]
65
- }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i1.PortalService }, { type: i0.ViewContainerRef }, { type: i0.Injector }, { type: i0.ElementRef }], propDecorators: { component: [{
66
- type: Input
67
- }], data: [{
68
- type: Input
69
- }], groupType: [{
70
- type: Input
71
- }], edit: [{
72
- type: Input
73
- }], deviceSize: [{
74
- type: Input
75
- }], setToStorage: [{
76
- type: Input
77
- }], listMode: [{
78
- type: Input
79
- }], navigateBackOnClick: [{
80
- type: Input
81
- }], hideClick: [{
82
- type: Output
83
- }], renameClick: [{
84
- type: Output
85
- }] } });
86
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGlsZS1yZW5kZXJlci5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9iYXJzYS10aWxlcy9zcmMvbGliL3RpbGUtcmVuZGVyZXIuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFHSCxTQUFTLEVBRVQsWUFBWSxFQUVaLEtBQUssRUFJTCxNQUFNLEVBR1QsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLGFBQWEsRUFBaUIsTUFBTSxzQkFBc0IsQ0FBQztBQUNwRSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7OztBQVEzQyxNQUFNLE9BQU8scUJBQXNCLFNBQVEsYUFBYTtJQWlCcEQsWUFDWSxJQUF1QixFQUN2QixjQUE2QixFQUM3QixJQUFzQixFQUN0QixTQUFtQixFQUNqQixHQUFlO1FBRXpCLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztRQU5ILFNBQUksR0FBSixJQUFJLENBQW1CO1FBQ3ZCLG1CQUFjLEdBQWQsY0FBYyxDQUFlO1FBQzdCLFNBQUksR0FBSixJQUFJLENBQWtCO1FBQ3RCLGNBQVMsR0FBVCxTQUFTLENBQVU7UUFDakIsUUFBRyxHQUFILEdBQUcsQ0FBWTtRQVJuQixjQUFTLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUMvQixnQkFBVyxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7SUFVM0MsQ0FBQztJQUVELFFBQVE7UUFDSixLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7UUFDakIsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztZQUNsQixPQUFPO1FBQ1gsQ0FBQztRQUNELE1BQU0sRUFBRSxNQUFNLEVBQUUsY0FBYyxFQUFFLElBQUksRUFBRSxRQUFRLEVBQUUsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDO1FBQ2xFLElBQUksQ0FBQyxjQUFjO2FBQ2QsWUFBWSxDQUFDLE1BQU0sRUFBRSxjQUFjLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDO2FBQ3BFLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO2FBQ2pDLFNBQVMsQ0FBQyxDQUFDLFlBQThELEVBQUUsRUFBRTtZQUMxRSxNQUFNLFFBQVEsR0FBRyxZQUFZLENBQUMsUUFBUSxDQUFDO1lBQ3ZDLFFBQVEsQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQztZQUMxQixRQUFRLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUM7WUFDMUIsUUFBUSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDO1lBQ3RDLFFBQVEsQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQztZQUMxQyxRQUFRLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUM7WUFDbEMsUUFBUSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDO1lBQ3BDLFFBQVEsQ0FBQyxtQkFBbUIsR0FBRyxJQUFJLENBQUMsbUJBQW1CLENBQUM7WUFDeEQsUUFBUSxDQUFDLFNBQVMsRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUU7Z0JBQ2pFLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxFQUFFLENBQUM7WUFDMUIsQ0FBQyxDQUFDLENBQUM7WUFDSCxRQUFRLENBQUMsV0FBVyxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQztZQUNqRyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxZQUFZLENBQUMsUUFBUSxDQUFDLENBQUM7WUFDeEMsSUFBSSxDQUFDLFFBQVEsR0FBRyxZQUFZLENBQUM7WUFDN0IsNkJBQTZCO1FBQ2pDLENBQUMsQ0FBQyxDQUFDO0lBQ1gsQ0FBQztJQUNELFdBQVcsQ0FBQyxPQUFzQjtRQUM5QixNQUFNLEVBQUUsSUFBSSxFQUFFLEdBQUcsT0FBTyxDQUFDO1FBQ3pCLElBQUksSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO1lBQzVCLElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUM7UUFDMUQsQ0FBQztJQUNMLENBQUM7SUFDRCxXQUFXO1FBQ1AsS0FBSyxDQUFDLFdBQVcsRUFBRSxDQUFDO1FBQ3BCLElBQUksSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQ2hCLElBQUksQ0FBQyxRQUFRLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDNUIsQ0FBQztJQUNMLENBQUM7K0dBakVRLHFCQUFxQjttR0FBckIscUJBQXFCOzs0RkFBckIscUJBQXFCO2tCQUpqQyxTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSxnQkFBZ0I7b0JBQzFCLFVBQVUsRUFBRSxLQUFLO2lCQUNwQjtpTUFFWSxTQUFTO3NCQUFqQixLQUFLO2dCQU1HLElBQUk7c0JBQVosS0FBSztnQkFDRyxTQUFTO3NCQUFqQixLQUFLO2dCQUNHLElBQUk7c0JBQVosS0FBSztnQkFDRyxVQUFVO3NCQUFsQixLQUFLO2dCQUNHLFlBQVk7c0JBQXBCLEtBQUs7Z0JBQ0csUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxtQkFBbUI7c0JBQTNCLEtBQUs7Z0JBQ0ksU0FBUztzQkFBbEIsTUFBTTtnQkFDRyxXQUFXO3NCQUFwQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICAgIENoYW5nZURldGVjdG9yUmVmLFxyXG4gICAgQ29tcG9uZW50UmVmLFxyXG4gICAgRGlyZWN0aXZlLFxyXG4gICAgRWxlbWVudFJlZixcclxuICAgIEV2ZW50RW1pdHRlcixcclxuICAgIEluamVjdG9yLFxyXG4gICAgSW5wdXQsXHJcbiAgICBPbkNoYW5nZXMsXHJcbiAgICBPbkRlc3Ryb3ksXHJcbiAgICBPbkluaXQsXHJcbiAgICBPdXRwdXQsXHJcbiAgICBTaW1wbGVDaGFuZ2VzLFxyXG4gICAgVmlld0NvbnRhaW5lclJlZlxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBCYXNlRGlyZWN0aXZlLCBQb3J0YWxTZXJ2aWNlIH0gZnJvbSAnYmFyc2Etbm92aW4tcmF5LWNvcmUnO1xyXG5pbXBvcnQgeyB0YWtlVW50aWwgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XHJcbmltcG9ydCB7IEJhc2VUaWxlQ29tcG9uZW50LCBCYXNlVGlsZVNldHRpbmcgfSBmcm9tICcuL21vZGVscyc7XHJcbmltcG9ydCB7IEFiYnJldmF0aW9uRGV2aWNlU2l6ZSB9IGZyb20gJ2JhcnNhLW5vdmluLXJheS1jb3JlJztcclxuXHJcbkBEaXJlY3RpdmUoe1xyXG4gICAgc2VsZWN0b3I6ICdbdGlsZVJlbmRlcmVyXScsXHJcbiAgICBzdGFuZGFsb25lOiBmYWxzZVxyXG59KVxyXG5leHBvcnQgY2xhc3MgVGlsZVJlbmRlcmVyRGlyZWN0aXZlIGV4dGVuZHMgQmFzZURpcmVjdGl2ZSBpbXBsZW1lbnRzIE9uSW5pdCwgT25DaGFuZ2VzLCBPbkRlc3Ryb3kge1xyXG4gICAgQElucHV0KCkgY29tcG9uZW50OiB7XHJcbiAgICAgICAgTW9kdWxlOiBzdHJpbmc7XHJcbiAgICAgICAgTW9kdWxlRmlsZU5hbWU6IHN0cmluZztcclxuICAgICAgICBOYW1lOiBzdHJpbmc7XHJcbiAgICAgICAgU2VsZWN0b3I6IHN0cmluZztcclxuICAgIH07XHJcbiAgICBASW5wdXQoKSBkYXRhOiBCYXNlVGlsZVNldHRpbmc7XHJcbiAgICBASW5wdXQoKSBncm91cFR5cGU6IHN0cmluZztcclxuICAgIEBJbnB1dCgpIGVkaXQ6IGJvb2xlYW47XHJcbiAgICBASW5wdXQoKSBkZXZpY2VTaXplOiBBYmJyZXZhdGlvbkRldmljZVNpemU7XHJcbiAgICBASW5wdXQoKSBzZXRUb1N0b3JhZ2U6IGJvb2xlYW47XHJcbiAgICBASW5wdXQoKSBsaXN0TW9kZTogYm9vbGVhbjtcclxuICAgIEBJbnB1dCgpIG5hdmlnYXRlQmFja09uQ2xpY2s6IGJvb2xlYW47XHJcbiAgICBAT3V0cHV0KCkgaGlkZUNsaWNrID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG4gICAgQE91dHB1dCgpIHJlbmFtZUNsaWNrID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG4gICAgcHJpdmF0ZSBfdGlsZVJlZjogQ29tcG9uZW50UmVmPEJhc2VUaWxlQ29tcG9uZW50PEJhc2VUaWxlU2V0dGluZz4+O1xyXG4gICAgY29uc3RydWN0b3IoXHJcbiAgICAgICAgcHJpdmF0ZSBfY2RyOiBDaGFuZ2VEZXRlY3RvclJlZixcclxuICAgICAgICBwcml2YXRlIF9wb3J0YWxTZXJ2aWNlOiBQb3J0YWxTZXJ2aWNlLFxyXG4gICAgICAgIHByaXZhdGUgX3ZjcjogVmlld0NvbnRhaW5lclJlZixcclxuICAgICAgICBwcml2YXRlIF9pbmplY3RvcjogSW5qZWN0b3IsXHJcbiAgICAgICAgcHJvdGVjdGVkIF9lbDogRWxlbWVudFJlZlxyXG4gICAgKSB7XHJcbiAgICAgICAgc3VwZXIoX2VsKTtcclxuICAgIH1cclxuXHJcbiAgICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgICAgICBzdXBlci5uZ09uSW5pdCgpO1xyXG4gICAgICAgIGlmICghdGhpcy5jb21wb25lbnQpIHtcclxuICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgIH1cclxuICAgICAgICBjb25zdCB7IE1vZHVsZSwgTW9kdWxlRmlsZU5hbWUsIE5hbWUsIFNlbGVjdG9yIH0gPSB0aGlzLmNvbXBvbmVudDtcclxuICAgICAgICB0aGlzLl9wb3J0YWxTZXJ2aWNlXHJcbiAgICAgICAgICAgIC5nZXRDb21wb25lbnQoTW9kdWxlLCBNb2R1bGVGaWxlTmFtZSwgTmFtZSwgU2VsZWN0b3IsIHRoaXMuX2luamVjdG9yKVxyXG4gICAgICAgICAgICAucGlwZSh0YWtlVW50aWwodGhpcy5fb25EZXN0cm95JCkpXHJcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKGNvbXBvbmVudFJlZjogQ29tcG9uZW50UmVmPEJhc2VUaWxlQ29tcG9uZW50PEJhc2VUaWxlU2V0dGluZz4+KSA9PiB7XHJcbiAgICAgICAgICAgICAgICBjb25zdCBpbnN0YW5jZSA9IGNvbXBvbmVudFJlZi5pbnN0YW5jZTtcclxuICAgICAgICAgICAgICAgIGluc3RhbmNlLmRhdGEgPSB0aGlzLmRhdGE7XHJcbiAgICAgICAgICAgICAgICBpbnN0YW5jZS5lZGl0ID0gdGhpcy5lZGl0O1xyXG4gICAgICAgICAgICAgICAgaW5zdGFuY2UuZGV2aWNlU2l6ZSA9IHRoaXMuZGV2aWNlU2l6ZTtcclxuICAgICAgICAgICAgICAgIGluc3RhbmNlLnNldFRvU3RvcmFnZSA9IHRoaXMuc2V0VG9TdG9yYWdlO1xyXG4gICAgICAgICAgICAgICAgaW5zdGFuY2UubGlzdE1vZGUgPSB0aGlzLmxpc3RNb2RlO1xyXG4gICAgICAgICAgICAgICAgaW5zdGFuY2UuZ3JvdXBUeXBlID0gdGhpcy5ncm91cFR5cGU7XHJcbiAgICAgICAgICAgICAgICBpbnN0YW5jZS5uYXZpZ2F0ZUJhY2tPbkNsaWNrID0gdGhpcy5uYXZpZ2F0ZUJhY2tPbkNsaWNrO1xyXG4gICAgICAgICAgICAgICAgaW5zdGFuY2UuaGlkZUNsaWNrPy5waXBlKHRha2VVbnRpbCh0aGlzLl9vbkRlc3Ryb3kkKSkuc3Vic2NyaWJlKCgpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLmhpZGVDbGljay5lbWl0KCk7XHJcbiAgICAgICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgICAgIGluc3RhbmNlLnJlbmFtZUNsaWNrPy5waXBlKHRha2VVbnRpbCh0aGlzLl9vbkRlc3Ryb3kkKSkuc3Vic2NyaWJlKCgpID0+IHRoaXMucmVuYW1lQ2xpY2suZW1pdCgpKTtcclxuICAgICAgICAgICAgICAgIHRoaXMuX3Zjci5pbnNlcnQoY29tcG9uZW50UmVmLmhvc3RWaWV3KTtcclxuICAgICAgICAgICAgICAgIHRoaXMuX3RpbGVSZWYgPSBjb21wb25lbnRSZWY7XHJcbiAgICAgICAgICAgICAgICAvLyB0aGlzLl9jZHIuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gICAgICAgICAgICB9KTtcclxuICAgIH1cclxuICAgIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcclxuICAgICAgICBjb25zdCB7IGVkaXQgfSA9IGNoYW5nZXM7XHJcbiAgICAgICAgaWYgKGVkaXQgJiYgIWVkaXQuZmlyc3RDaGFuZ2UpIHtcclxuICAgICAgICAgICAgdGhpcy5fdGlsZVJlZi5pbnN0YW5jZS5zZXRFZGl0SG9tZShlZGl0LmN1cnJlbnRWYWx1ZSk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XHJcbiAgICAgICAgc3VwZXIubmdPbkRlc3Ryb3koKTtcclxuICAgICAgICBpZiAodGhpcy5fdGlsZVJlZikge1xyXG4gICAgICAgICAgICB0aGlzLl90aWxlUmVmLmRlc3Ryb3koKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuIl19
@@ -1,31 +0,0 @@
1
- import { Directive } from '@angular/core';
2
- import { BaseDirective } from 'barsa-novin-ray-core';
3
- import { takeUntil } from 'rxjs';
4
- import * as i0 from "@angular/core";
5
- import * as i1 from "barsa-novin-ray-core";
6
- export class TileSizeDirective extends BaseDirective {
7
- constructor(_renderer2, _el, _portalService) {
8
- super(_el);
9
- this._renderer2 = _renderer2;
10
- this._el = _el;
11
- this._portalService = _portalService;
12
- }
13
- ngOnInit() {
14
- super.ngOnInit();
15
- this._portalService.deviceSize$.pipe(takeUntil(this._onDestroy$)).subscribe((c) => {
16
- if (c === 's') {
17
- this._renderer2.addClass(this._el.nativeElement.firstChild, 'fd-tile--s');
18
- }
19
- });
20
- }
21
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: TileSizeDirective, deps: [{ token: i0.Renderer2 }, { token: i0.ElementRef }, { token: i1.PortalService }], target: i0.ɵɵFactoryTarget.Directive }); }
22
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.13", type: TileSizeDirective, selector: "[tileSize]", usesInheritance: true, ngImport: i0 }); }
23
- }
24
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: TileSizeDirective, decorators: [{
25
- type: Directive,
26
- args: [{
27
- selector: '[tileSize]',
28
- standalone: false
29
- }]
30
- }], ctorParameters: () => [{ type: i0.Renderer2 }, { type: i0.ElementRef }, { type: i1.PortalService }] });
31
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGlsZS1zaXplLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2JhcnNhLXRpbGVzL3NyYy9saWIvdGlsZS1zaXplLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUF1RCxNQUFNLGVBQWUsQ0FBQztBQUMvRixPQUFPLEVBQUUsYUFBYSxFQUFpQixNQUFNLHNCQUFzQixDQUFDO0FBQ3BFLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxNQUFNLENBQUM7OztBQU1qQyxNQUFNLE9BQU8saUJBQWtCLFNBQVEsYUFBYTtJQUNoRCxZQUFvQixVQUFxQixFQUFZLEdBQWUsRUFBVSxjQUE2QjtRQUN2RyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7UUFESyxlQUFVLEdBQVYsVUFBVSxDQUFXO1FBQVksUUFBRyxHQUFILEdBQUcsQ0FBWTtRQUFVLG1CQUFjLEdBQWQsY0FBYyxDQUFlO0lBRTNHLENBQUM7SUFFRCxRQUFRO1FBQ0osS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBQ2pCLElBQUksQ0FBQyxjQUFjLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUU7WUFDOUUsSUFBSSxDQUFDLEtBQUssR0FBRyxFQUFFLENBQUM7Z0JBQ1osSUFBSSxDQUFDLFVBQVUsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxhQUFhLENBQUMsVUFBVSxFQUFFLFlBQVksQ0FBQyxDQUFDO1lBQzlFLENBQUM7UUFDTCxDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7K0dBWlEsaUJBQWlCO21HQUFqQixpQkFBaUI7OzRGQUFqQixpQkFBaUI7a0JBSjdCLFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFLFlBQVk7b0JBQ3RCLFVBQVUsRUFBRSxLQUFLO2lCQUNwQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgRWxlbWVudFJlZiwgT25DaGFuZ2VzLCBPbkRlc3Ryb3ksIE9uSW5pdCwgUmVuZGVyZXIyIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEJhc2VEaXJlY3RpdmUsIFBvcnRhbFNlcnZpY2UgfSBmcm9tICdiYXJzYS1ub3Zpbi1yYXktY29yZSc7XHJcbmltcG9ydCB7IHRha2VVbnRpbCB9IGZyb20gJ3J4anMnO1xyXG5cclxuQERpcmVjdGl2ZSh7XHJcbiAgICBzZWxlY3RvcjogJ1t0aWxlU2l6ZV0nLFxyXG4gICAgc3RhbmRhbG9uZTogZmFsc2VcclxufSlcclxuZXhwb3J0IGNsYXNzIFRpbGVTaXplRGlyZWN0aXZlIGV4dGVuZHMgQmFzZURpcmVjdGl2ZSBpbXBsZW1lbnRzIE9uSW5pdCwgT25DaGFuZ2VzLCBPbkRlc3Ryb3kge1xyXG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSBfcmVuZGVyZXIyOiBSZW5kZXJlcjIsIHByb3RlY3RlZCBfZWw6IEVsZW1lbnRSZWYsIHByaXZhdGUgX3BvcnRhbFNlcnZpY2U6IFBvcnRhbFNlcnZpY2UpIHtcclxuICAgICAgICBzdXBlcihfZWwpO1xyXG4gICAgfVxyXG5cclxuICAgIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgICAgIHN1cGVyLm5nT25Jbml0KCk7XHJcbiAgICAgICAgdGhpcy5fcG9ydGFsU2VydmljZS5kZXZpY2VTaXplJC5waXBlKHRha2VVbnRpbCh0aGlzLl9vbkRlc3Ryb3kkKSkuc3Vic2NyaWJlKChjKSA9PiB7XHJcbiAgICAgICAgICAgIGlmIChjID09PSAncycpIHtcclxuICAgICAgICAgICAgICAgIHRoaXMuX3JlbmRlcmVyMi5hZGRDbGFzcyh0aGlzLl9lbC5uYXRpdmVFbGVtZW50LmZpcnN0Q2hpbGQsICdmZC10aWxlLS1zJyk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9KTtcclxuICAgIH1cclxufVxyXG4iXX0=