barsa-novin-ray-core 2.1.1 → 2.1.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/fesm2022/barsa-novin-ray-core.mjs +254 -135
- package/fesm2022/barsa-novin-ray-core.mjs.map +1 -1
- package/package.json +3 -5
- package/esm2022/barsa-novin-ray-core.mjs +0 -5
- package/esm2022/lib/abstract-classes/application-base.mjs +0 -24
- package/esm2022/lib/abstract-classes/barsa-api.mjs +0 -43
- package/esm2022/lib/abstract-classes/base-column-props.mjs +0 -84
- package/esm2022/lib/abstract-classes/base.component.mjs +0 -59
- package/esm2022/lib/abstract-classes/field-base.mjs +0 -232
- package/esm2022/lib/abstract-classes/files-validation-helper.mjs +0 -75
- package/esm2022/lib/abstract-classes/form-base.mjs +0 -163
- package/esm2022/lib/abstract-classes/form-field-report-page.component.mjs +0 -54
- package/esm2022/lib/abstract-classes/form-page-base.mjs +0 -129
- package/esm2022/lib/abstract-classes/form-page.component.mjs +0 -53
- package/esm2022/lib/abstract-classes/form-props.base.mjs +0 -97
- package/esm2022/lib/abstract-classes/form-toolbar-base.mjs +0 -56
- package/esm2022/lib/abstract-classes/index.mjs +0 -25
- package/esm2022/lib/abstract-classes/layout-item-base.mjs +0 -48
- package/esm2022/lib/abstract-classes/layout-panel-base.mjs +0 -63
- package/esm2022/lib/abstract-classes/linear-list-helper.mjs +0 -135
- package/esm2022/lib/abstract-classes/models.mjs +0 -184
- package/esm2022/lib/abstract-classes/module-with-dynamic-components.mjs +0 -2
- package/esm2022/lib/abstract-classes/number-base.mjs +0 -200
- package/esm2022/lib/abstract-classes/page-base.mjs +0 -97
- package/esm2022/lib/abstract-classes/page-with-form-handler-base.mjs +0 -40
- package/esm2022/lib/abstract-classes/report-base.mjs +0 -254
- package/esm2022/lib/abstract-classes/report-item-base.mjs +0 -53
- package/esm2022/lib/abstract-classes/report-view-base.component.mjs +0 -428
- package/esm2022/lib/abstract-classes/system-base.mjs +0 -24
- package/esm2022/lib/abstract-classes/tile-props.mjs +0 -46
- package/esm2022/lib/auth-guard.mjs +0 -48
- package/esm2022/lib/barsa-novin-ray-core-routing.module.mjs +0 -292
- package/esm2022/lib/barsa-novin-ray-core.module.mjs +0 -487
- package/esm2022/lib/base-ulv-setting.component.mjs +0 -45
- package/esm2022/lib/base.module.mjs +0 -28
- package/esm2022/lib/button-loading/button-loading.component.mjs +0 -18
- package/esm2022/lib/constants.mjs +0 -898
- package/esm2022/lib/container.component.mjs +0 -99
- package/esm2022/lib/controllers/base-controller.mjs +0 -30
- package/esm2022/lib/controllers/index.mjs +0 -5
- package/esm2022/lib/controllers/login-controller.mjs +0 -54
- package/esm2022/lib/controllers/login-verification-controller.mjs +0 -56
- package/esm2022/lib/controllers/models.mjs +0 -2
- package/esm2022/lib/custom-route-reuse-strategy.mjs +0 -32
- package/esm2022/lib/date-services/date-hijri.service.mjs +0 -146
- package/esm2022/lib/date-services/date-info.mjs +0 -2
- package/esm2022/lib/date-services/date-miladi.service.mjs +0 -124
- package/esm2022/lib/date-services/date-shamsi.service.mjs +0 -148
- package/esm2022/lib/date-services/date.service.mjs +0 -149
- package/esm2022/lib/date-services/index.mjs +0 -6
- package/esm2022/lib/device.mjs +0 -663
- package/esm2022/lib/directives/absolute-div-body.directive.mjs +0 -45
- package/esm2022/lib/directives/anchor-scroll.directive.mjs +0 -24
- package/esm2022/lib/directives/attr-rtl.directive.mjs +0 -35
- package/esm2022/lib/directives/base.directive.mjs +0 -55
- package/esm2022/lib/directives/body-click.directive.mjs +0 -35
- package/esm2022/lib/directives/column-resizer.directive.mjs +0 -39
- package/esm2022/lib/directives/copy.directive.mjs +0 -59
- package/esm2022/lib/directives/count-down.directive.mjs +0 -108
- package/esm2022/lib/directives/dynamic-command.directive.mjs +0 -42
- package/esm2022/lib/directives/dynamic-style.directive.mjs +0 -57
- package/esm2022/lib/directives/ellapsis-text.directive.mjs +0 -69
- package/esm2022/lib/directives/ellipsify.directive.mjs +0 -72
- package/esm2022/lib/directives/field-binding.directive.mjs +0 -17
- package/esm2022/lib/directives/fill-empty-space.mjs +0 -83
- package/esm2022/lib/directives/form-close.directive.mjs +0 -32
- package/esm2022/lib/directives/img-lazy.directive.mjs +0 -81
- package/esm2022/lib/directives/index.mjs +0 -35
- package/esm2022/lib/directives/intersection-observer.directive.mjs +0 -51
- package/esm2022/lib/directives/items-renderer.directive.mjs +0 -59
- package/esm2022/lib/directives/label-mandatory.directive.mjs +0 -48
- package/esm2022/lib/directives/load-external-files.directive.mjs +0 -37
- package/esm2022/lib/directives/mobile.directive.mjs +0 -29
- package/esm2022/lib/directives/nowraptext.directive.mjs +0 -26
- package/esm2022/lib/directives/numbers-only-input.directive.mjs +0 -26
- package/esm2022/lib/directives/placeHolder.directive.mjs +0 -15
- package/esm2022/lib/directives/prevent-default.directive.mjs +0 -20
- package/esm2022/lib/directives/render-ulv-paging.directive.mjs +0 -80
- package/esm2022/lib/directives/render-ulv-viewer.directive.mjs +0 -75
- package/esm2022/lib/directives/route-form-change.directive.mjs +0 -37
- package/esm2022/lib/directives/stop-propagation.directive.mjs +0 -20
- package/esm2022/lib/directives/table-resizer.directive.mjs +0 -235
- package/esm2022/lib/directives/ulv-command.directive.mjs +0 -42
- package/esm2022/lib/directives/until-inview.directive.mjs +0 -52
- package/esm2022/lib/directives/workflow-choice-command.directive.mjs +0 -60
- package/esm2022/lib/dynamic-component/base-dynamic.component.mjs +0 -96
- package/esm2022/lib/dynamic-component/base-form-toolbaritem-props.mjs +0 -52
- package/esm2022/lib/dynamic-component/base-item-content-props.mjs +0 -80
- package/esm2022/lib/dynamic-component/base-view-content-props.mjs +0 -20
- package/esm2022/lib/dynamic-component/base-view-item-props.mjs +0 -525
- package/esm2022/lib/dynamic-component/base-view-props.mjs +0 -162
- package/esm2022/lib/dynamic-component/dynamic-form-toolbar-item.component.mjs +0 -38
- package/esm2022/lib/dynamic-component/dynamic-form.component.mjs +0 -66
- package/esm2022/lib/dynamic-component/dynamic-item.component.mjs +0 -76
- package/esm2022/lib/dynamic-component/dynamic-layout.component.mjs +0 -63
- package/esm2022/lib/dynamic-component/index.mjs +0 -11
- package/esm2022/lib/empty-page/empty-page.component.mjs +0 -44
- package/esm2022/lib/empty-page-with-router-and-router-outlet/empty-page-with-router-and-router-outlet.component.mjs +0 -16
- package/esm2022/lib/field-ui/field-ui.component.mjs +0 -146
- package/esm2022/lib/form/form.component.mjs +0 -211
- package/esm2022/lib/form-new/form-new.component.mjs +0 -30
- package/esm2022/lib/form-page-routing/barsa-sap-ui-form-page-routing.module.mjs +0 -54
- package/esm2022/lib/form-page-routing/barsa-sap-ui-form-page.module.mjs +0 -29
- package/esm2022/lib/form-page-routing/constants.mjs +0 -9
- package/esm2022/lib/form-page-routing/index.mjs +0 -3
- package/esm2022/lib/from-intersection-observer.mjs +0 -53
- package/esm2022/lib/global-error-handler.mjs +0 -26
- package/esm2022/lib/injdection-tokens.mjs +0 -8
- package/esm2022/lib/login-enter-mobile/login-enter-mobile.component.mjs +0 -64
- package/esm2022/lib/login-verification/login-verification.component.mjs +0 -79
- package/esm2022/lib/login2/login2.component.mjs +0 -60
- package/esm2022/lib/modal-root.component.mjs +0 -33
- package/esm2022/lib/not-found/not-found.component.mjs +0 -16
- package/esm2022/lib/not-internet/not-internet.component.mjs +0 -21
- package/esm2022/lib/pipes/barsa-icon-dict.pipe.mjs +0 -19
- package/esm2022/lib/pipes/bbb-translate.pipe.mjs +0 -35
- package/esm2022/lib/pipes/can-upload.pipe.mjs +0 -30
- package/esm2022/lib/pipes/column-custom-component.pipe.mjs +0 -40
- package/esm2022/lib/pipes/column-customui.pipe.mjs +0 -32
- package/esm2022/lib/pipes/column-icon.pipe.mjs +0 -22
- package/esm2022/lib/pipes/column-value.pipe.mjs +0 -34
- package/esm2022/lib/pipes/combo-row-img.pipe.mjs +0 -16
- package/esm2022/lib/pipes/context-menu.pipe.mjs +0 -40
- package/esm2022/lib/pipes/control-ui.pipe.mjs +0 -31
- package/esm2022/lib/pipes/convert-to-style.pipe.mjs +0 -32
- package/esm2022/lib/pipes/date-time-to-caption.pipe.mjs +0 -34
- package/esm2022/lib/pipes/fileinfo-count.pipe.mjs +0 -20
- package/esm2022/lib/pipes/filter-columns-by-details.pipe.mjs +0 -22
- package/esm2022/lib/pipes/filter-string.pipe.mjs +0 -44
- package/esm2022/lib/pipes/filter-tab.pipe.mjs +0 -19
- package/esm2022/lib/pipes/filter-toolbar-control.pipe.mjs +0 -16
- package/esm2022/lib/pipes/filter-workflow-mobile.pipe.mjs +0 -24
- package/esm2022/lib/pipes/filter.pipe.mjs +0 -33
- package/esm2022/lib/pipes/find-column-by-db-name.pipe.mjs +0 -27
- package/esm2022/lib/pipes/find-preview-column.pipe.mjs +0 -19
- package/esm2022/lib/pipes/fiori-icon.pipe.mjs +0 -42
- package/esm2022/lib/pipes/groupby.pipe.mjs +0 -63
- package/esm2022/lib/pipes/header-facet-value.pipe.mjs +0 -22
- package/esm2022/lib/pipes/hide-columns-inmobile.pipe.mjs +0 -22
- package/esm2022/lib/pipes/index.mjs +0 -48
- package/esm2022/lib/pipes/list-count.pipe.mjs +0 -17
- package/esm2022/lib/pipes/merge-fields-to-columns.pipe.mjs +0 -42
- package/esm2022/lib/pipes/mo-info-ulv-data.pipe.mjs +0 -58
- package/esm2022/lib/pipes/mo-info-ulv-paging.pipe.mjs +0 -16
- package/esm2022/lib/pipes/mo-report-value-concat.pipe.mjs +0 -35
- package/esm2022/lib/pipes/mo-report-value.pipe.mjs +0 -17
- package/esm2022/lib/pipes/mo-value.pipe.mjs +0 -18
- package/esm2022/lib/pipes/multiple-groupby.pipe.mjs +0 -90
- package/esm2022/lib/pipes/numeral.pipe.mjs +0 -43
- package/esm2022/lib/pipes/picture-field-source.pipe.mjs +0 -22
- package/esm2022/lib/pipes/remove-newline.pipe.mjs +0 -20
- package/esm2022/lib/pipes/replace.pipe.mjs +0 -17
- package/esm2022/lib/pipes/reverse.pipe.mjs +0 -22
- package/esm2022/lib/pipes/rownumber.pipe.mjs +0 -25
- package/esm2022/lib/pipes/sanitize-text.pipe.mjs +0 -20
- package/esm2022/lib/pipes/seperator-fix.pipe.mjs +0 -23
- package/esm2022/lib/pipes/sort.pipe.mjs +0 -48
- package/esm2022/lib/pipes/th-image-icon.pipe.mjs +0 -22
- package/esm2022/lib/pipes/tlbButtons.pipe.mjs +0 -59
- package/esm2022/lib/pipes/total-summary.pipe.mjs +0 -16
- package/esm2022/lib/pipes/tree-item-isexpanded.pipe.mjs +0 -25
- package/esm2022/lib/pipes/visible-value.pipe.mjs +0 -18
- package/esm2022/lib/portal-page/portal-page.component.mjs +0 -23
- package/esm2022/lib/portal-page/portal-sidebar.component.mjs +0 -36
- package/esm2022/lib/redirect-home-guard.mjs +0 -51
- package/esm2022/lib/redirect-report-navigator-command/redirect-report-navigator-command.component.mjs +0 -12
- package/esm2022/lib/report-container/report-container.component.mjs +0 -63
- package/esm2022/lib/resizable-module/resizable.component.mjs +0 -31
- package/esm2022/lib/resizable-module/resizable.directive.mjs +0 -41
- package/esm2022/lib/resizable-module/resizable.module.mjs +0 -17
- package/esm2022/lib/resolvers/index.mjs +0 -6
- package/esm2022/lib/resolvers/portal-dynamic-page.resolver.mjs +0 -49
- package/esm2022/lib/resolvers/portal-form-page.resolver.mjs +0 -18
- package/esm2022/lib/resolvers/portal-page.resolver.mjs +0 -30
- package/esm2022/lib/resolvers/portal-report-page.resolver.mjs +0 -37
- package/esm2022/lib/resolvers/tile-group-breadcrumb.resolver.mjs +0 -30
- package/esm2022/lib/root-page/root-page.component.mjs +0 -21
- package/esm2022/lib/root-portal/root-portal.component.mjs +0 -164
- package/esm2022/lib/server-connection-error/server-connection-error.component.mjs +0 -19
- package/esm2022/lib/services/api.service.mjs +0 -63
- package/esm2022/lib/services/audio-recording.service.mjs +0 -95
- package/esm2022/lib/services/barsa-dialog.service.mjs +0 -80
- package/esm2022/lib/services/barsa-storage.service.mjs +0 -78
- package/esm2022/lib/services/breadcrumb.service.mjs +0 -64
- package/esm2022/lib/services/column.service.mjs +0 -20
- package/esm2022/lib/services/container.service.mjs +0 -69
- package/esm2022/lib/services/dynamic-component.service.mjs +0 -55
- package/esm2022/lib/services/form-panel.service.mjs +0 -380
- package/esm2022/lib/services/form.service.mjs +0 -14
- package/esm2022/lib/services/horizontal-layout.service.mjs +0 -16
- package/esm2022/lib/services/index.mjs +0 -29
- package/esm2022/lib/services/indexeddb.service.mjs +0 -34
- package/esm2022/lib/services/layout.service.mjs +0 -42
- package/esm2022/lib/services/local-storage.service.mjs +0 -32
- package/esm2022/lib/services/log.service.mjs +0 -50
- package/esm2022/lib/services/network-status.service.mjs +0 -15
- package/esm2022/lib/services/notification-popup.service.mjs +0 -2
- package/esm2022/lib/services/notification-sw.service.mjs +0 -180
- package/esm2022/lib/services/notification.service.mjs +0 -308
- package/esm2022/lib/services/portal.service.mjs +0 -929
- package/esm2022/lib/services/prompt-update.service.mjs +0 -56
- package/esm2022/lib/services/routing.service.mjs +0 -60
- package/esm2022/lib/services/save-scoll-position.service.mjs +0 -29
- package/esm2022/lib/services/service-worker-communication.service.mjs +0 -120
- package/esm2022/lib/services/toast.service.mjs +0 -2
- package/esm2022/lib/services/ui.service.mjs +0 -23
- package/esm2022/lib/services/ulvmain.service.mjs +0 -810
- package/esm2022/lib/services/upload.service.mjs +0 -161
- package/esm2022/lib/services/video-recording.service.mjs +0 -115
- package/esm2022/public-api.mjs +0 -44
|
@@ -1,428 +0,0 @@
|
|
|
1
|
-
import { ChangeDetectionStrategy, Component, EventEmitter, Input, Optional, Output } from '@angular/core';
|
|
2
|
-
import { BaseComponent } from './base.component';
|
|
3
|
-
import * as i0 from "@angular/core";
|
|
4
|
-
import * as i1 from "../pipes";
|
|
5
|
-
import * as i2 from "../services";
|
|
6
|
-
export class ReportViewBaseComponent extends BaseComponent {
|
|
7
|
-
set containerWidth(val) {
|
|
8
|
-
this._containerWidth = val;
|
|
9
|
-
this._containerWidthChanged(val);
|
|
10
|
-
}
|
|
11
|
-
constructor(_el, _cdr, _renderer2, _findColumnByDbName, _ulvMainService, _portalService, _uploadService) {
|
|
12
|
-
super();
|
|
13
|
-
this._el = _el;
|
|
14
|
-
this._cdr = _cdr;
|
|
15
|
-
this._renderer2 = _renderer2;
|
|
16
|
-
this._findColumnByDbName = _findColumnByDbName;
|
|
17
|
-
this._ulvMainService = _ulvMainService;
|
|
18
|
-
this._portalService = _portalService;
|
|
19
|
-
this._uploadService = _uploadService;
|
|
20
|
-
this.rowActivable = true;
|
|
21
|
-
this.columnSummary = new EventEmitter();
|
|
22
|
-
this.escapeKey = new EventEmitter();
|
|
23
|
-
this.resetWorkflowState = new EventEmitter();
|
|
24
|
-
this.deselectAll = new EventEmitter();
|
|
25
|
-
this.editFormPanelCancel = new EventEmitter();
|
|
26
|
-
this.editFormPanelSave = new EventEmitter();
|
|
27
|
-
this.selectNextInlineRecord = new EventEmitter();
|
|
28
|
-
this.editFormPanelValueChange = new EventEmitter();
|
|
29
|
-
this.ulvCommandClick = new EventEmitter();
|
|
30
|
-
this.sortAscending = new EventEmitter();
|
|
31
|
-
this.workflowShareButtons = new EventEmitter();
|
|
32
|
-
this.sortDescending = new EventEmitter();
|
|
33
|
-
this.filter = new EventEmitter();
|
|
34
|
-
this.executeToolbarButton = new EventEmitter();
|
|
35
|
-
this.resetGridSettings = new EventEmitter();
|
|
36
|
-
this.rowCheck = new EventEmitter();
|
|
37
|
-
this.rowClick = new EventEmitter();
|
|
38
|
-
this.cartableFormClosed = new EventEmitter();
|
|
39
|
-
this.createNewMo = new EventEmitter();
|
|
40
|
-
this.updateMo = new EventEmitter();
|
|
41
|
-
this.expandClick = new EventEmitter();
|
|
42
|
-
this.trackBySelectedFn = new EventEmitter();
|
|
43
|
-
this.allCheckbox = new EventEmitter();
|
|
44
|
-
this.mandatory = new EventEmitter();
|
|
45
|
-
this.columnResized = new EventEmitter();
|
|
46
|
-
this.hasDetailsInRow = new EventEmitter();
|
|
47
|
-
this.canView = false;
|
|
48
|
-
this.contextMenuWidth = 0;
|
|
49
|
-
this.detailsColumns = [];
|
|
50
|
-
this._containerWidth = 0;
|
|
51
|
-
}
|
|
52
|
-
get showViewButton() {
|
|
53
|
-
return this.canView && !this.inlineEditMode && !this.hideOpenIcon;
|
|
54
|
-
}
|
|
55
|
-
ngOnInit() {
|
|
56
|
-
super.ngOnInit();
|
|
57
|
-
if (this.access.View && !this.showOkCancelButtons) {
|
|
58
|
-
this.canView = true;
|
|
59
|
-
}
|
|
60
|
-
this.actionList = this._createActionButtons();
|
|
61
|
-
this.elWidth = this._el.nativeElement.clientWidth;
|
|
62
|
-
this.fitWidth = this.viewSetting?.FitWidth === true ? true : false;
|
|
63
|
-
if (this.columns) {
|
|
64
|
-
const fieldDict = {};
|
|
65
|
-
this.columns.forEach((c) => (fieldDict[c.Caption] = c.Name));
|
|
66
|
-
this.fieldDict = fieldDict;
|
|
67
|
-
}
|
|
68
|
-
const detailsSetting = this.viewSetting?.DetailsSetting;
|
|
69
|
-
if (detailsSetting) {
|
|
70
|
-
this.detailsComponent = detailsSetting.Component;
|
|
71
|
-
detailsSetting.Columns.split(',').forEach((columnName) => {
|
|
72
|
-
const column = this._findColumnByDbName.transform(this.allColumns, columnName, this.secondaryColumns);
|
|
73
|
-
if (column) {
|
|
74
|
-
this.detailsColumns.push(column);
|
|
75
|
-
}
|
|
76
|
-
});
|
|
77
|
-
}
|
|
78
|
-
this._setRowIndicator(this.columns);
|
|
79
|
-
}
|
|
80
|
-
onActionListClick(mo, index, itemId) {
|
|
81
|
-
if (itemId === 'Show') {
|
|
82
|
-
this.onRowClick({ mo, index });
|
|
83
|
-
return;
|
|
84
|
-
}
|
|
85
|
-
this.onRowCheck({ mo, index });
|
|
86
|
-
const editBtn = this.toolbarButtons.find((tb) => tb?.itemId === itemId);
|
|
87
|
-
if (editBtn) {
|
|
88
|
-
editBtn.handler(editBtn);
|
|
89
|
-
}
|
|
90
|
-
}
|
|
91
|
-
_createActionButtons() {
|
|
92
|
-
const buttons = [];
|
|
93
|
-
if (this.hasInlineEditButton) {
|
|
94
|
-
buttons.push({
|
|
95
|
-
glyph: 'edit',
|
|
96
|
-
itemId: 'Edit',
|
|
97
|
-
navigation: false,
|
|
98
|
-
role: 'presentation',
|
|
99
|
-
closeOnClick: true
|
|
100
|
-
});
|
|
101
|
-
}
|
|
102
|
-
if (this.hasInlineDeleteButton) {
|
|
103
|
-
buttons.push({
|
|
104
|
-
glyph: 'delete',
|
|
105
|
-
navigation: false,
|
|
106
|
-
itemId: 'Delete',
|
|
107
|
-
role: 'presentation',
|
|
108
|
-
closeOnClick: true
|
|
109
|
-
});
|
|
110
|
-
}
|
|
111
|
-
if (this.showViewButton) {
|
|
112
|
-
buttons.push({
|
|
113
|
-
glyph: this.navigationArrow,
|
|
114
|
-
navigation: true,
|
|
115
|
-
role: 'presentation',
|
|
116
|
-
itemId: 'Show',
|
|
117
|
-
closeOnClick: true
|
|
118
|
-
});
|
|
119
|
-
}
|
|
120
|
-
return buttons;
|
|
121
|
-
}
|
|
122
|
-
ngOnChanges(changes) {
|
|
123
|
-
super.ngOnChanges(changes);
|
|
124
|
-
let detectChanges = false;
|
|
125
|
-
Object.keys(changes).forEach((key) => {
|
|
126
|
-
if (!changes[key].firstChange) {
|
|
127
|
-
this[key] = changes[key].currentValue;
|
|
128
|
-
detectChanges = true;
|
|
129
|
-
}
|
|
130
|
-
});
|
|
131
|
-
if (detectChanges) {
|
|
132
|
-
this.detectChanges();
|
|
133
|
-
}
|
|
134
|
-
}
|
|
135
|
-
onDeselectAll() {
|
|
136
|
-
this.deselectAll.emit();
|
|
137
|
-
}
|
|
138
|
-
onRowCheck(e) {
|
|
139
|
-
// this._singleClicked = true;
|
|
140
|
-
// setTimeout(() => {
|
|
141
|
-
// if (this._singleClicked) {
|
|
142
|
-
// this.rowCheck.emit({ mo, index });
|
|
143
|
-
// }
|
|
144
|
-
// }, 30);
|
|
145
|
-
// this.rowCheck.emit({ mo, index, cause });
|
|
146
|
-
const { mo, index, onlyCheck } = e;
|
|
147
|
-
this.rowCheck.emit({ mo, index, onlyCheck });
|
|
148
|
-
}
|
|
149
|
-
onWorkflowShareButtons(e) {
|
|
150
|
-
this.workflowShareButtons.emit(e);
|
|
151
|
-
}
|
|
152
|
-
onOlgoEvents(e) {
|
|
153
|
-
this[e.title].emit(e.data);
|
|
154
|
-
}
|
|
155
|
-
onRowClick({ mo, index }) {
|
|
156
|
-
this._singleClicked = false;
|
|
157
|
-
this.rowClick.emit({ mo, index });
|
|
158
|
-
}
|
|
159
|
-
onCartableFormClosed({ mo, index }) {
|
|
160
|
-
this.cartableFormClosed.emit({ mo, index });
|
|
161
|
-
}
|
|
162
|
-
onExpandClick(mo) {
|
|
163
|
-
this.expandClick.emit(mo);
|
|
164
|
-
}
|
|
165
|
-
onAllCheckbox(checked) {
|
|
166
|
-
this.allCheckbox.emit(checked);
|
|
167
|
-
}
|
|
168
|
-
onClearCheckbox() {
|
|
169
|
-
this.allCheckbox.emit(false);
|
|
170
|
-
}
|
|
171
|
-
onSelectNextInlineRecord(mo) {
|
|
172
|
-
this.selectNextInlineRecord.emit(mo);
|
|
173
|
-
}
|
|
174
|
-
onEditFormPanelSave(mo) {
|
|
175
|
-
this.editFormPanelSave.emit(mo);
|
|
176
|
-
}
|
|
177
|
-
onEditFormPanelCancel(mo) {
|
|
178
|
-
this.editFormPanelCancel.emit(mo);
|
|
179
|
-
}
|
|
180
|
-
onEscapeKey(mo) {
|
|
181
|
-
this.escapeKey.emit(mo);
|
|
182
|
-
}
|
|
183
|
-
onEditFormPanelValueChange(e) {
|
|
184
|
-
this.editFormPanelValueChange.emit(e);
|
|
185
|
-
}
|
|
186
|
-
onUlvCommand({ mo, index }) {
|
|
187
|
-
this.ulvCommandClick.emit({ mo, index });
|
|
188
|
-
}
|
|
189
|
-
onSortAscending(column) {
|
|
190
|
-
this.sortAscending.emit(column);
|
|
191
|
-
}
|
|
192
|
-
onSortDescending(column) {
|
|
193
|
-
this.sortDescending.emit(column);
|
|
194
|
-
}
|
|
195
|
-
onFilter(column) {
|
|
196
|
-
this.filter.emit(column);
|
|
197
|
-
}
|
|
198
|
-
onDynamicComponentEvents(e, mo, index) {
|
|
199
|
-
switch (e.title) {
|
|
200
|
-
case 'rowCheck':
|
|
201
|
-
this.onRowCheck({ mo, index });
|
|
202
|
-
break;
|
|
203
|
-
case 'rowClick':
|
|
204
|
-
this.onRowClick({ mo, index });
|
|
205
|
-
break;
|
|
206
|
-
case 'ulvCommand':
|
|
207
|
-
this.onUlvCommand({ mo, index });
|
|
208
|
-
break;
|
|
209
|
-
}
|
|
210
|
-
}
|
|
211
|
-
detectChanges() {
|
|
212
|
-
this._cdr.detectChanges();
|
|
213
|
-
}
|
|
214
|
-
_trackBySelectedFn(index, record) {
|
|
215
|
-
this.trackBySelectedFn?.emit({ index, record });
|
|
216
|
-
}
|
|
217
|
-
_trackByColumn(index, column) {
|
|
218
|
-
return `${column.Name}${index}`;
|
|
219
|
-
}
|
|
220
|
-
_trackByRow(index, row) {
|
|
221
|
-
return `${row.$Group ? row.$Group : row.Id}${index}`;
|
|
222
|
-
}
|
|
223
|
-
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
224
|
-
_containerWidthChanged(_) { }
|
|
225
|
-
_setRowIndicator(columns) {
|
|
226
|
-
if (!columns?.length) {
|
|
227
|
-
return;
|
|
228
|
-
}
|
|
229
|
-
this.rowIndicator = Number(columns[0].MetaFieldTypeId) === 41;
|
|
230
|
-
}
|
|
231
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ReportViewBaseComponent, deps: [{ token: i0.ElementRef }, { token: i0.ChangeDetectorRef }, { token: i0.Renderer2 }, { token: i1.FindColumnByDbNamePipe }, { token: i2.UlvMainService }, { token: i2.PortalService }, { token: i2.UploadService, optional: true }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
232
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: ReportViewBaseComponent, selector: "bnrc-report-view-base", inputs: { contextView: "contextView", viewSetting: "viewSetting", allColumns: "allColumns", isCheckList: "isCheckList", simpleInlineEdit: "simpleInlineEdit", hideToolbar: "hideToolbar", hideTitle: "hideTitle", toolbarButtons: "toolbarButtons", allChecked: "allChecked", moDataList: "moDataList", UlvMainCtrlr: "UlvMainCtrlr", access: "access", groupby: "groupby", selectedCount: "selectedCount", conditionalFormats: "conditionalFormats", parentHeight: "parentHeight", deviceName: "deviceName", deviceSize: "deviceSize", contextMenuItems: "contextMenuItems", columns: "columns", allowInlineEdit: "allowInlineEdit", secondaryColumns: "secondaryColumns", popin: "popin", customFieldInfo: "customFieldInfo", hasSummary: "hasSummary", hasSelected: "hasSelected", hideIcon: "hideIcon", columnsCount: "columnsCount", hideOpenIcon: "hideOpenIcon", openOnClick: "openOnClick", typeDefId: "typeDefId", reportId: "reportId", listEditViewId: "listEditViewId", typeViewId: "typeViewId", extraRelation: "extraRelation", relationList: "relationList", disableResponsive: "disableResponsive", rowItem: "rowItem", mobileOrTablet: "mobileOrTablet", inDialog: "inDialog", isMultiSelect: "isMultiSelect", fullscreen: "fullscreen", hideSearchpanel: "hideSearchpanel", newInlineEditMo: "newInlineEditMo", selectedMo: "selectedMo", inlineEditMode: "inlineEditMode", onlyInlineEdit: "onlyInlineEdit", rowHoverable: "rowHoverable", groupSummary: "groupSummary", tlbButtons: "tlbButtons", formSetting: "formSetting", disableOverflowContextMenu: "disableOverflowContextMenu", rowActivable: "rowActivable", contentDensity: "contentDensity", rtl: "rtl", showOkCancelButtons: "showOkCancelButtons", title: "title", hasInlineDeleteButton: "hasInlineDeleteButton", hasInlineEditButton: "hasInlineEditButton", contextSetting: "contextSetting", gridFreeColumnSizing: "gridFreeColumnSizing", navigationArrow: "navigationArrow", cartableTemplates: "cartableTemplates", cartableChildsMo: "cartableChildsMo", pagingSetting: "pagingSetting", containerWidth: "containerWidth" }, outputs: { columnSummary: "columnSummary", escapeKey: "escapeKey", resetWorkflowState: "resetWorkflowState", deselectAll: "deselectAll", editFormPanelCancel: "editFormPanelCancel", editFormPanelSave: "editFormPanelSave", selectNextInlineRecord: "selectNextInlineRecord", editFormPanelValueChange: "editFormPanelValueChange", ulvCommandClick: "ulvCommandClick", sortAscending: "sortAscending", workflowShareButtons: "workflowShareButtons", sortDescending: "sortDescending", filter: "filter", executeToolbarButton: "executeToolbarButton", resetGridSettings: "resetGridSettings", rowCheck: "rowCheck", rowClick: "rowClick", cartableFormClosed: "cartableFormClosed", createNewMo: "createNewMo", updateMo: "updateMo", expandClick: "expandClick", trackBySelectedFn: "trackBySelectedFn", allCheckbox: "allCheckbox", mandatory: "mandatory", columnResized: "columnResized", hasDetailsInRow: "hasDetailsInRow" }, usesInheritance: true, usesOnChanges: true, ngImport: i0, template: '', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
233
|
-
}
|
|
234
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ReportViewBaseComponent, decorators: [{
|
|
235
|
-
type: Component,
|
|
236
|
-
args: [{
|
|
237
|
-
selector: 'bnrc-report-view-base',
|
|
238
|
-
template: '',
|
|
239
|
-
changeDetection: ChangeDetectionStrategy.OnPush
|
|
240
|
-
}]
|
|
241
|
-
}], ctorParameters: () => [{ type: i0.ElementRef }, { type: i0.ChangeDetectorRef }, { type: i0.Renderer2 }, { type: i1.FindColumnByDbNamePipe }, { type: i2.UlvMainService }, { type: i2.PortalService }, { type: i2.UploadService, decorators: [{
|
|
242
|
-
type: Optional
|
|
243
|
-
}] }], propDecorators: { contextView: [{
|
|
244
|
-
type: Input
|
|
245
|
-
}], viewSetting: [{
|
|
246
|
-
type: Input
|
|
247
|
-
}], allColumns: [{
|
|
248
|
-
type: Input
|
|
249
|
-
}], isCheckList: [{
|
|
250
|
-
type: Input
|
|
251
|
-
}], simpleInlineEdit: [{
|
|
252
|
-
type: Input
|
|
253
|
-
}], hideToolbar: [{
|
|
254
|
-
type: Input
|
|
255
|
-
}], hideTitle: [{
|
|
256
|
-
type: Input
|
|
257
|
-
}], toolbarButtons: [{
|
|
258
|
-
type: Input
|
|
259
|
-
}], allChecked: [{
|
|
260
|
-
type: Input
|
|
261
|
-
}], moDataList: [{
|
|
262
|
-
type: Input
|
|
263
|
-
}], UlvMainCtrlr: [{
|
|
264
|
-
type: Input
|
|
265
|
-
}], access: [{
|
|
266
|
-
type: Input
|
|
267
|
-
}], groupby: [{
|
|
268
|
-
type: Input
|
|
269
|
-
}], selectedCount: [{
|
|
270
|
-
type: Input
|
|
271
|
-
}], conditionalFormats: [{
|
|
272
|
-
type: Input
|
|
273
|
-
}], parentHeight: [{
|
|
274
|
-
type: Input
|
|
275
|
-
}], deviceName: [{
|
|
276
|
-
type: Input
|
|
277
|
-
}], deviceSize: [{
|
|
278
|
-
type: Input
|
|
279
|
-
}], contextMenuItems: [{
|
|
280
|
-
type: Input
|
|
281
|
-
}], columns: [{
|
|
282
|
-
type: Input
|
|
283
|
-
}], allowInlineEdit: [{
|
|
284
|
-
type: Input
|
|
285
|
-
}], secondaryColumns: [{
|
|
286
|
-
type: Input
|
|
287
|
-
}], popin: [{
|
|
288
|
-
type: Input
|
|
289
|
-
}], customFieldInfo: [{
|
|
290
|
-
type: Input
|
|
291
|
-
}], hasSummary: [{
|
|
292
|
-
type: Input
|
|
293
|
-
}], hasSelected: [{
|
|
294
|
-
type: Input
|
|
295
|
-
}], hideIcon: [{
|
|
296
|
-
type: Input
|
|
297
|
-
}], columnsCount: [{
|
|
298
|
-
type: Input
|
|
299
|
-
}], hideOpenIcon: [{
|
|
300
|
-
type: Input
|
|
301
|
-
}], openOnClick: [{
|
|
302
|
-
type: Input
|
|
303
|
-
}], typeDefId: [{
|
|
304
|
-
type: Input
|
|
305
|
-
}], reportId: [{
|
|
306
|
-
type: Input
|
|
307
|
-
}], listEditViewId: [{
|
|
308
|
-
type: Input
|
|
309
|
-
}], typeViewId: [{
|
|
310
|
-
type: Input
|
|
311
|
-
}], extraRelation: [{
|
|
312
|
-
type: Input
|
|
313
|
-
}], relationList: [{
|
|
314
|
-
type: Input
|
|
315
|
-
}], disableResponsive: [{
|
|
316
|
-
type: Input
|
|
317
|
-
}], rowItem: [{
|
|
318
|
-
type: Input
|
|
319
|
-
}], mobileOrTablet: [{
|
|
320
|
-
type: Input
|
|
321
|
-
}], inDialog: [{
|
|
322
|
-
type: Input
|
|
323
|
-
}], isMultiSelect: [{
|
|
324
|
-
type: Input
|
|
325
|
-
}], fullscreen: [{
|
|
326
|
-
type: Input
|
|
327
|
-
}], hideSearchpanel: [{
|
|
328
|
-
type: Input
|
|
329
|
-
}], newInlineEditMo: [{
|
|
330
|
-
type: Input
|
|
331
|
-
}], selectedMo: [{
|
|
332
|
-
type: Input
|
|
333
|
-
}], inlineEditMode: [{
|
|
334
|
-
type: Input
|
|
335
|
-
}], onlyInlineEdit: [{
|
|
336
|
-
type: Input
|
|
337
|
-
}], rowHoverable: [{
|
|
338
|
-
type: Input
|
|
339
|
-
}], groupSummary: [{
|
|
340
|
-
type: Input
|
|
341
|
-
}], tlbButtons: [{
|
|
342
|
-
type: Input
|
|
343
|
-
}], formSetting: [{
|
|
344
|
-
type: Input
|
|
345
|
-
}], disableOverflowContextMenu: [{
|
|
346
|
-
type: Input
|
|
347
|
-
}], rowActivable: [{
|
|
348
|
-
type: Input
|
|
349
|
-
}], contentDensity: [{
|
|
350
|
-
type: Input
|
|
351
|
-
}], rtl: [{
|
|
352
|
-
type: Input
|
|
353
|
-
}], showOkCancelButtons: [{
|
|
354
|
-
type: Input
|
|
355
|
-
}], title: [{
|
|
356
|
-
type: Input
|
|
357
|
-
}], hasInlineDeleteButton: [{
|
|
358
|
-
type: Input
|
|
359
|
-
}], hasInlineEditButton: [{
|
|
360
|
-
type: Input
|
|
361
|
-
}], contextSetting: [{
|
|
362
|
-
type: Input
|
|
363
|
-
}], gridFreeColumnSizing: [{
|
|
364
|
-
type: Input
|
|
365
|
-
}], navigationArrow: [{
|
|
366
|
-
type: Input
|
|
367
|
-
}], cartableTemplates: [{
|
|
368
|
-
type: Input
|
|
369
|
-
}], cartableChildsMo: [{
|
|
370
|
-
type: Input
|
|
371
|
-
}], pagingSetting: [{
|
|
372
|
-
type: Input
|
|
373
|
-
}], columnSummary: [{
|
|
374
|
-
type: Output
|
|
375
|
-
}], escapeKey: [{
|
|
376
|
-
type: Output
|
|
377
|
-
}], resetWorkflowState: [{
|
|
378
|
-
type: Output
|
|
379
|
-
}], deselectAll: [{
|
|
380
|
-
type: Output
|
|
381
|
-
}], editFormPanelCancel: [{
|
|
382
|
-
type: Output
|
|
383
|
-
}], editFormPanelSave: [{
|
|
384
|
-
type: Output
|
|
385
|
-
}], selectNextInlineRecord: [{
|
|
386
|
-
type: Output
|
|
387
|
-
}], editFormPanelValueChange: [{
|
|
388
|
-
type: Output
|
|
389
|
-
}], ulvCommandClick: [{
|
|
390
|
-
type: Output
|
|
391
|
-
}], sortAscending: [{
|
|
392
|
-
type: Output
|
|
393
|
-
}], workflowShareButtons: [{
|
|
394
|
-
type: Output
|
|
395
|
-
}], sortDescending: [{
|
|
396
|
-
type: Output
|
|
397
|
-
}], filter: [{
|
|
398
|
-
type: Output
|
|
399
|
-
}], executeToolbarButton: [{
|
|
400
|
-
type: Output
|
|
401
|
-
}], resetGridSettings: [{
|
|
402
|
-
type: Output
|
|
403
|
-
}], rowCheck: [{
|
|
404
|
-
type: Output
|
|
405
|
-
}], rowClick: [{
|
|
406
|
-
type: Output
|
|
407
|
-
}], cartableFormClosed: [{
|
|
408
|
-
type: Output
|
|
409
|
-
}], createNewMo: [{
|
|
410
|
-
type: Output
|
|
411
|
-
}], updateMo: [{
|
|
412
|
-
type: Output
|
|
413
|
-
}], expandClick: [{
|
|
414
|
-
type: Output
|
|
415
|
-
}], trackBySelectedFn: [{
|
|
416
|
-
type: Output
|
|
417
|
-
}], allCheckbox: [{
|
|
418
|
-
type: Output
|
|
419
|
-
}], mandatory: [{
|
|
420
|
-
type: Output
|
|
421
|
-
}], columnResized: [{
|
|
422
|
-
type: Output
|
|
423
|
-
}], hasDetailsInRow: [{
|
|
424
|
-
type: Output
|
|
425
|
-
}], containerWidth: [{
|
|
426
|
-
type: Input
|
|
427
|
-
}] } });
|
|
428
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVwb3J0LXZpZXctYmFzZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9iYXJzYS1ub3Zpbi1yYXktY29yZS9zcmMvbGliL2Fic3RyYWN0LWNsYXNzZXMvcmVwb3J0LXZpZXctYmFzZS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNILHVCQUF1QixFQUV2QixTQUFTLEVBRVQsWUFBWSxFQUNaLEtBQUssRUFFTCxRQUFRLEVBQ1IsTUFBTSxFQUlULE1BQU0sZUFBZSxDQUFDO0FBRXZCLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQzs7OztBQTBCakQsTUFBTSxPQUFPLHVCQUEyRCxTQUFRLGFBQWE7SUE0RnpGLElBQWEsY0FBYyxDQUFDLEdBQVc7UUFDbkMsSUFBSSxDQUFDLGVBQWUsR0FBRyxHQUFHLENBQUM7UUFDM0IsSUFBSSxDQUFDLHNCQUFzQixDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ3JDLENBQUM7SUFjRCxZQUNjLEdBQWUsRUFDZixJQUF1QixFQUN2QixVQUFxQixFQUNyQixtQkFBMkMsRUFDM0MsZUFBK0IsRUFDL0IsY0FBNkIsRUFDakIsY0FBOEI7UUFFcEQsS0FBSyxFQUFFLENBQUM7UUFSRSxRQUFHLEdBQUgsR0FBRyxDQUFZO1FBQ2YsU0FBSSxHQUFKLElBQUksQ0FBbUI7UUFDdkIsZUFBVSxHQUFWLFVBQVUsQ0FBVztRQUNyQix3QkFBbUIsR0FBbkIsbUJBQW1CLENBQXdCO1FBQzNDLG9CQUFlLEdBQWYsZUFBZSxDQUFnQjtRQUMvQixtQkFBYyxHQUFkLGNBQWMsQ0FBZTtRQUNqQixtQkFBYyxHQUFkLGNBQWMsQ0FBZ0I7UUEvRC9DLGlCQUFZLEdBQUcsSUFBSSxDQUFDO1FBYW5CLGtCQUFhLEdBQUcsSUFBSSxZQUFZLEVBQXFCLENBQUM7UUFDdEQsY0FBUyxHQUFHLElBQUksWUFBWSxFQUF1QixDQUFDO1FB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LFxuICAgIENoYW5nZURldGVjdG9yUmVmLFxuICAgIENvbXBvbmVudCxcbiAgICBFbGVtZW50UmVmLFxuICAgIEV2ZW50RW1pdHRlcixcbiAgICBJbnB1dCxcbiAgICBPbkluaXQsXG4gICAgT3B0aW9uYWwsXG4gICAgT3V0cHV0LFxuICAgIFJlbmRlcmVyMixcbiAgICBTaW1wbGVDaGFuZ2VzLFxuICAgIFRlbXBsYXRlUmVmXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29udGVudERlbnNpdHkgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2NvcmUnO1xuaW1wb3J0IHsgQmFzZUNvbXBvbmVudCB9IGZyb20gJy4vYmFzZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgRmluZENvbHVtbkJ5RGJOYW1lUGlwZSB9IGZyb20gJy4uL3BpcGVzJztcbmltcG9ydCB7IFBvcnRhbFNlcnZpY2UsIFVsdk1haW5TZXJ2aWNlLCBVcGxvYWRTZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMnO1xuaW1wb3J0IHtcbiAgICBBYmJyZXZhdGlvbkRldmljZVNpemUsXG4gICAgY29sdW1uc1Jlc2l6ZWRFdmVudEFyZ3MsXG4gICAgRGVmYXVsdENvbW1hbmRzQWNjZXNzLFxuICAgIERldmljZVNpemUsXG4gICAgRm9ybVNldHRpbmcsXG4gICAgTWV0YW9iamVjdERhdGFNb2RlbCxcbiAgICBSZWxhdGlvbkl0ZW1UeXBlLFxuICAgIFJlcG9ydFZpZXdDb2x1bW4sXG4gICAgVWlSZXBvcnRWaWV3QmFzZVNldHRpbmcsXG4gICAgU2hhcmVCdXR0b25zQ2hvaWNlRGVmLFxuICAgIFR5cGVVbHZNYWluQ3RybHIsXG4gICAgUGFnaW5nU2V0dGluZyxcbiAgICBNZW51SXRlbSxcbiAgICBDb2x1bW5TdW1tYXJ5VHlwZSxcbiAgICBFanJheU9sZ29cbn0gZnJvbSAnLi9tb2RlbHMnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2JucmMtcmVwb3J0LXZpZXctYmFzZScsXG4gICAgdGVtcGxhdGU6ICcnLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXG59KVxuZXhwb3J0IGNsYXNzIFJlcG9ydFZpZXdCYXNlQ29tcG9uZW50PFQgZXh0ZW5kcyBVaVJlcG9ydFZpZXdCYXNlU2V0dGluZz4gZXh0ZW5kcyBCYXNlQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgICBASW5wdXQoKSBjb250ZXh0VmlldzogYW55O1xuICAgIEBJbnB1dCgpIHZpZXdTZXR0aW5nOiBUO1xuICAgIEBJbnB1dCgpIGFsbENvbHVtbnM6IGFueTtcbiAgICBASW5wdXQoKSBpc0NoZWNrTGlzdDogYm9vbGVhbjtcbiAgICBASW5wdXQoKSBzaW1wbGVJbmxpbmVFZGl0OiBib29sZWFuO1xuICAgIEBJbnB1dCgpIGhpZGVUb29sYmFyOiBib29sZWFuO1xuICAgIEBJbnB1dCgpIGhpZGVUaXRsZTogYm9vbGVhbjtcbiAgICBASW5wdXQoKSB0b29sYmFyQnV0dG9uczogTWVudUl0ZW1bXTtcbiAgICBASW5wdXQoKSBhbGxDaGVja2VkOiBib29sZWFuO1xuICAgIEBJbnB1dCgpIG1vRGF0YUxpc3Q6IGFueTtcbiAgICBASW5wdXQoKSBVbHZNYWluQ3RybHI6IFR5cGVVbHZNYWluQ3RybHI7XG4gICAgQElucHV0KCkgYWNjZXNzOiBEZWZhdWx0Q29tbWFuZHNBY2Nlc3M7XG4gICAgQElucHV0KCkgZ3JvdXBieTogYW55O1xuICAgIEBJbnB1dCgpIHNlbGVjdGVkQ291bnQ6IGFueTtcbiAgICBASW5wdXQoKSBjb25kaXRpb25hbEZvcm1hdHM6IGFueTtcbiAgICBASW5wdXQoKSBwYXJlbnRIZWlnaHQ6IG51bWJlcjtcbiAgICBASW5wdXQoKSBkZXZpY2VOYW1lOiBEZXZpY2VTaXplO1xuICAgIEBJbnB1dCgpIGRldmljZVNpemU6IEFiYnJldmF0aW9uRGV2aWNlU2l6ZTtcbiAgICBASW5wdXQoKSBjb250ZXh0TWVudUl0ZW1zOiBhbnlbXTtcbiAgICBASW5wdXQoKSBjb2x1bW5zOiBhbnk7XG4gICAgQElucHV0KCkgYWxsb3dJbmxpbmVFZGl0OiBhbnk7XG4gICAgQElucHV0KCkgc2Vjb25kYXJ5Q29sdW1uczogYW55O1xuICAgIEBJbnB1dCgpIHBvcGluOiBib29sZWFuO1xuICAgIEBJbnB1dCgpIGN1c3RvbUZpZWxkSW5mbzogTWV0YW9iamVjdERhdGFNb2RlbCB8IGFueTtcbiAgICBASW5wdXQoKSBoYXNTdW1tYXJ5OiBib29sZWFuO1xuICAgIEBJbnB1dCgpIGhhc1NlbGVjdGVkOiBib29sZWFuO1xuICAgIEBJbnB1dCgpIGhpZGVJY29uOiBib29sZWFuO1xuICAgIEBJbnB1dCgpIGNvbHVtbnNDb3VudDogYW55O1xuICAgIEBJbnB1dCgpIGhpZGVPcGVuSWNvbjogYm9vbGVhbjtcbiAgICBASW5wdXQoKSBvcGVuT25DbGljazogYm9vbGVhbjtcbiAgICBASW5wdXQoKSB0eXBlRGVmSWQ6IHN0cmluZztcbiAgICBASW5wdXQoKSByZXBvcnRJZDogc3RyaW5nO1xuICAgIEBJbnB1dCgpIGxpc3RFZGl0Vmlld0lkOiBzdHJpbmc7XG4gICAgQElucHV0KCkgdHlwZVZpZXdJZDogc3RyaW5nO1xuICAgIEBJbnB1dCgpIGV4dHJhUmVsYXRpb246IGFueTtcbiAgICBASW5wdXQoKSByZWxhdGlvbkxpc3Q6IEFycmF5PFJlbGF0aW9uSXRlbVR5cGU+O1xuICAgIEBJbnB1dCgpIGRpc2FibGVSZXNwb25zaXZlOiBib29sZWFuO1xuICAgIEBJbnB1dCgpIHJvd0l0ZW06IFRlbXBsYXRlUmVmPGFueT47XG4gICAgQElucHV0KCkgbW9iaWxlT3JUYWJsZXQ6IGJvb2xlYW47XG4gICAgQElucHV0KCkgaW5EaWFsb2c6IGJvb2xlYW47XG4gICAgQElucHV0KCkgaXNNdWx0aVNlbGVjdDogYm9vbGVhbjtcbiAgICBASW5wdXQoKSBmdWxsc2NyZWVuOiBib29sZWFuO1xuICAgIEBJbnB1dCgpIGhpZGVTZWFyY2hwYW5lbDogYm9vbGVhbjtcbiAgICBASW5wdXQoKSBuZXdJbmxpbmVFZGl0TW86IE1ldGFvYmplY3REYXRhTW9kZWwgfCBudWxsO1xuICAgIEBJbnB1dCgpIHNlbGVjdGVkTW86IE1ldGFvYmplY3REYXRhTW9kZWw7XG4gICAgQElucHV0KCkgaW5saW5lRWRpdE1vZGU6IGJvb2xlYW47XG4gICAgQElucHV0KCkgb25seUlubGluZUVkaXQ6IGJvb2xlYW47XG4gICAgQElucHV0KCkgcm93SG92ZXJhYmxlOiBib29sZWFuO1xuICAgIEBJbnB1dCgpIGdyb3VwU3VtbWFyeTogYm9vbGVhbjtcbiAgICBASW5wdXQoKSB0bGJCdXR0b25zOiBhbnlbXTtcbiAgICBASW5wdXQoKSBmb3JtU2V0dGluZzogRm9ybVNldHRpbmc7XG4gICAgQElucHV0KCkgZGlzYWJsZU92ZXJmbG93Q29udGV4dE1lbnU6IGJvb2xlYW47XG4gICAgQElucHV0KCkgcm93QWN0aXZhYmxlID0gdHJ1ZTtcbiAgICBASW5wdXQoKSBjb250ZW50RGVuc2l0eTogQ29udGVudERlbnNpdHk7XG4gICAgQElucHV0KCkgcnRsO1xuICAgIEBJbnB1dCgpIHNob3dPa0NhbmNlbEJ1dHRvbnM7XG4gICAgQElucHV0KCkgdGl0bGU7XG4gICAgQElucHV0KCkgaGFzSW5saW5lRGVsZXRlQnV0dG9uOiBib29sZWFuO1xuICAgIEBJbnB1dCgpIGhhc0lubGluZUVkaXRCdXR0b246IGJvb2xlYW47XG4gICAgQElucHV0KCkgY29udGV4dFNldHRpbmc7XG4gICAgQElucHV0KCkgZ3JpZEZyZWVDb2x1bW5TaXppbmc6IGJvb2xlYW47XG4gICAgQElucHV0KCkgbmF2aWdhdGlvbkFycm93OiBzdHJpbmc7XG4gICAgQElucHV0KCkgY2FydGFibGVUZW1wbGF0ZXM6IHsgW2tleTogc3RyaW5nXTogRm9ybVNldHRpbmcgfTtcbiAgICBASW5wdXQoKSBjYXJ0YWJsZUNoaWxkc01vOiB7IFtrZXk6IHN0cmluZ106IE1ldGFvYmplY3REYXRhTW9kZWwgfTtcbiAgICBASW5wdXQoKSBwYWdpbmdTZXR0aW5nOiBQYWdpbmdTZXR0aW5nO1xuICAgIEBPdXRwdXQoKSBjb2x1bW5TdW1tYXJ5ID0gbmV3IEV2ZW50RW1pdHRlcjxDb2x1bW5TdW1tYXJ5VHlwZT4oKTtcbiAgICBAT3V0cHV0KCkgZXNjYXBlS2V5ID0gbmV3IEV2ZW50RW1pdHRlcjxNZXRhb2JqZWN0RGF0YU1vZGVsPigpO1xuICAgIEBPdXRwdXQoKSByZXNldFdvcmtmbG93U3RhdGUgPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG4gICAgQE91dHB1dCgpIGRlc2VsZWN0QWxsID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xuICAgIEBPdXRwdXQoKSBlZGl0Rm9ybVBhbmVsQ2FuY2VsID0gbmV3IEV2ZW50RW1pdHRlcjxNZXRhb2JqZWN0RGF0YU1vZGVsPigpO1xuICAgIEBPdXRwdXQoKSBlZGl0Rm9ybVBhbmVsU2F2ZSA9IG5ldyBFdmVudEVtaXR0ZXI8TWV0YW9iamVjdERhdGFNb2RlbD4oKTtcbiAgICBAT3V0cHV0KCkgc2VsZWN0TmV4dElubGluZVJlY29yZCA9IG5ldyBFdmVudEVtaXR0ZXI8TWV0YW9iamVjdERhdGFNb2RlbD4oKTtcbiAgICBAT3V0cHV0KCkgZWRpdEZvcm1QYW5lbFZhbHVlQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjx7IG1vOiBNZXRhb2JqZWN0RGF0YU1vZGVsOyBmaWVsZERiTmFtZT86IHN0cmluZyB9PigpO1xuICAgIEBPdXRwdXQoKSB1bHZDb21tYW5kQ2xpY2sgPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcbiAgICBAT3V0cHV0KCkgc29ydEFzY2VuZGluZyA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xuICAgIEBPdXRwdXQoKSB3b3JrZmxvd1NoYXJlQnV0dG9ucyA9IG5ldyBFdmVudEVtaXR0ZXI8U2hhcmVCdXR0b25zQ2hvaWNlRGVmPigpO1xuICAgIEBPdXRwdXQoKSBzb3J0RGVzY2VuZGluZyA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xuICAgIEBPdXRwdXQoKSBmaWx0ZXIgPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcbiAgICBAT3V0cHV0KCkgZXhlY3V0ZVRvb2xiYXJCdXR0b24gPSBuZXcgRXZlbnRFbWl0dGVyPHsgaXRlbUlkOiBzdHJpbmc7IG9wdGlvbnM/OiBhbnkgfT4oKTtcbiAgICBAT3V0cHV0KCkgcmVzZXRHcmlkU2V0dGluZ3MgPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG4gICAgQE91dHB1dCgpIHJvd0NoZWNrID0gbmV3IEV2ZW50RW1pdHRlcjx7IG1vOyBpbmRleDsgY2F1c2U/OyBvbmx5Q2hlY2s/OiBib29sZWFuIH0+KCk7XG4gICAgQE91dHB1dCgpIHJvd0NsaWNrID0gbmV3IEV2ZW50RW1pdHRlcjx7IG1vOyBpbmRleCB9PigpO1xuICAgIEBPdXRwdXQoKSBjYXJ0YWJsZUZvcm1DbG9zZWQgPSBuZXcgRXZlbnRFbWl0dGVyPHsgbW87IGluZGV4IH0+KCk7XG4gICAgQE91dHB1dCgpIGNyZWF0ZU5ld01vID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xuICAgIEBPdXRwdXQoKSB1cGRhdGVNbyA9IG5ldyBFdmVudEVtaXR0ZXI8TWV0YW9iamVjdERhdGFNb2RlbD4oKTtcbiAgICBAT3V0cHV0KCkgZXhwYW5kQ2xpY2sgPSBuZXcgRXZlbnRFbWl0dGVyPE1ldGFvYmplY3REYXRhTW9kZWw+KCk7XG4gICAgQE91dHB1dCgpIHRyYWNrQnlTZWxlY3RlZEZuID0gbmV3IEV2ZW50RW1pdHRlcjx7IGluZGV4OyByZWNvcmQgfT4oKTtcbiAgICBAT3V0cHV0KCkgYWxsQ2hlY2tib3ggPSBuZXcgRXZlbnRFbWl0dGVyPGJvb2xlYW4+KCk7XG4gICAgQE91dHB1dCgpIG1hbmRhdG9yeSA9IG5ldyBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4oKTtcbiAgICBAT3V0cHV0KCkgY29sdW1uUmVzaXplZCA9IG5ldyBFdmVudEVtaXR0ZXI8Y29sdW1uc1Jlc2l6ZWRFdmVudEFyZ3M+KCk7XG4gICAgQE91dHB1dCgpIGhhc0RldGFpbHNJblJvdyA9IG5ldyBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4oKTtcbiAgICBASW5wdXQoKSBzZXQgY29udGFpbmVyV2lkdGgodmFsOiBudW1iZXIpIHtcbiAgICAgICAgdGhpcy5fY29udGFpbmVyV2lkdGggPSB2YWw7XG4gICAgICAgIHRoaXMuX2NvbnRhaW5lcldpZHRoQ2hhbmdlZCh2YWwpO1xuICAgIH1cbiAgICByZXNpemVkQnlVc2VyOiBib29sZWFuO1xuICAgIGVsV2lkdGg6IG51bWJlcjtcbiAgICBjYW5WaWV3ID0gZmFsc2U7XG4gICAgZml0V2lkdGg6IGJvb2xlYW47XG4gICAgZmlyc3RTZWxlY3RlZE1ldGFvYmplY3Q6IE1ldGFvYmplY3REYXRhTW9kZWw7XG4gICAgY29udGV4dE1lbnVXaWR0aCA9IDA7XG4gICAgZmllbGREaWN0OiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+O1xuICAgIGFjdGlvbkxpc3Q6IGFueVtdO1xuICAgIGRldGFpbHNDb2x1bW5zOiBSZXBvcnRWaWV3Q29sdW1uW10gPSBbXTtcbiAgICBkZXRhaWxzQ29tcG9uZW50OiBFanJheU9sZ287XG4gICAgcm93SW5kaWNhdG9yOiBib29sZWFuO1xuICAgIHByaXZhdGUgX3NpbmdsZUNsaWNrZWQ6IGJvb2xlYW47XG4gICAgcHJvdGVjdGVkIF9jb250YWluZXJXaWR0aCA9IDA7XG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHByb3RlY3RlZCBfZWw6IEVsZW1lbnRSZWYsXG4gICAgICAgIHByb3RlY3RlZCBfY2RyOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICAgICAgcHJvdGVjdGVkIF9yZW5kZXJlcjI6IFJlbmRlcmVyMixcbiAgICAgICAgcHJvdGVjdGVkIF9maW5kQ29sdW1uQnlEYk5hbWU6IEZpbmRDb2x1bW5CeURiTmFtZVBpcGUsXG4gICAgICAgIHByb3RlY3RlZCBfdWx2TWFpblNlcnZpY2U6IFVsdk1haW5TZXJ2aWNlLFxuICAgICAgICBwcm90ZWN0ZWQgX3BvcnRhbFNlcnZpY2U6IFBvcnRhbFNlcnZpY2UsXG4gICAgICAgIEBPcHRpb25hbCgpIHByb3RlY3RlZCBfdXBsb2FkU2VydmljZT86IFVwbG9hZFNlcnZpY2VcbiAgICApIHtcbiAgICAgICAgc3VwZXIoKTtcbiAgICB9XG4gICAgZ2V0IHNob3dWaWV3QnV0dG9uKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5jYW5WaWV3ICYmICF0aGlzLmlubGluZUVkaXRNb2RlICYmICF0aGlzLmhpZGVPcGVuSWNvbjtcbiAgICB9XG4gICAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgICAgIHN1cGVyLm5nT25Jbml0KCk7XG4gICAgICAgIGlmICh0aGlzLmFjY2Vzcy5WaWV3ICYmICF0aGlzLnNob3dPa0NhbmNlbEJ1dHRvbnMpIHtcbiAgICAgICAgICAgIHRoaXMuY2FuVmlldyA9IHRydWU7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5hY3Rpb25MaXN0ID0gdGhpcy5fY3JlYXRlQWN0aW9uQnV0dG9ucygpO1xuICAgICAgICB0aGlzLmVsV2lkdGggPSB0aGlzLl9lbC5uYXRpdmVFbGVtZW50LmNsaWVudFdpZHRoO1xuICAgICAgICB0aGlzLmZpdFdpZHRoID0gdGhpcy52aWV3U2V0dGluZz8uRml0V2lkdGggPT09IHRydWUgPyB0cnVlIDogZmFsc2U7XG4gICAgICAgIGlmICh0aGlzLmNvbHVtbnMpIHtcbiAgICAgICAgICAgIGNvbnN0IGZpZWxkRGljdCA9IHt9O1xuICAgICAgICAgICAgdGhpcy5jb2x1bW5zLmZvckVhY2goKGMpID0+IChmaWVsZERpY3RbYy5DYXB0aW9uXSA9IGMuTmFtZSkpO1xuICAgICAgICAgICAgdGhpcy5maWVsZERpY3QgPSBmaWVsZERpY3Q7XG4gICAgICAgIH1cbiAgICAgICAgY29uc3QgZGV0YWlsc1NldHRpbmcgPSB0aGlzLnZpZXdTZXR0aW5nPy5EZXRhaWxzU2V0dGluZztcbiAgICAgICAgaWYgKGRldGFpbHNTZXR0aW5nKSB7XG4gICAgICAgICAgICB0aGlzLmRldGFpbHNDb21wb25lbnQgPSBkZXRhaWxzU2V0dGluZy5Db21wb25lbnQ7XG4gICAgICAgICAgICBkZXRhaWxzU2V0dGluZy5Db2x1bW5zLnNwbGl0KCcsJykuZm9yRWFjaCgoY29sdW1uTmFtZTogc3RyaW5nKSA9PiB7XG4gICAgICAgICAgICAgICAgY29uc3QgY29sdW1uID0gdGhpcy5fZmluZENvbHVtbkJ5RGJOYW1lLnRyYW5zZm9ybSh0aGlzLmFsbENvbHVtbnMsIGNvbHVtbk5hbWUsIHRoaXMuc2Vjb25kYXJ5Q29sdW1ucyk7XG4gICAgICAgICAgICAgICAgaWYgKGNvbHVtbikge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmRldGFpbHNDb2x1bW5zLnB1c2goY29sdW1uKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLl9zZXRSb3dJbmRpY2F0b3IodGhpcy5jb2x1bW5zKTtcbiAgICB9XG4gICAgcHJvdGVjdGVkIG9uQWN0aW9uTGlzdENsaWNrKG1vOiBNZXRhb2JqZWN0RGF0YU1vZGVsLCBpbmRleDogbnVtYmVyLCBpdGVtSWQ6IHN0cmluZyk6IHZvaWQge1xuICAgICAgICBpZiAoaXRlbUlkID09PSAnU2hvdycpIHtcbiAgICAgICAgICAgIHRoaXMub25Sb3dDbGljayh7IG1vLCBpbmRleCB9KTtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLm9uUm93Q2hlY2soeyBtbywgaW5kZXggfSk7XG4gICAgICAgIGNvbnN0IGVkaXRCdG4gPSB0aGlzLnRvb2xiYXJCdXR0b25zLmZpbmQoKHRiKSA9PiB0Yj8uaXRlbUlkID09PSBpdGVtSWQpO1xuICAgICAgICBpZiAoZWRpdEJ0bikge1xuICAgICAgICAgICAgKGVkaXRCdG4gYXMgYW55KS5oYW5kbGVyKGVkaXRCdG4pO1xuICAgICAgICB9XG4gICAgfVxuICAgIHByb3RlY3RlZCBfY3JlYXRlQWN0aW9uQnV0dG9ucygpOiBhbnlbXSB7XG4gICAgICAgIGNvbnN0IGJ1dHRvbnM6IGFueVtdID0gW107XG4gICAgICAgIGlmICh0aGlzLmhhc0lubGluZUVkaXRCdXR0b24pIHtcbiAgICAgICAgICAgIGJ1dHRvbnMucHVzaCh7XG4gICAgICAgICAgICAgICAgZ2x5cGg6ICdlZGl0JyxcbiAgICAgICAgICAgICAgICBpdGVtSWQ6ICdFZGl0JyxcbiAgICAgICAgICAgICAgICBuYXZpZ2F0aW9uOiBmYWxzZSxcbiAgICAgICAgICAgICAgICByb2xlOiAncHJlc2VudGF0aW9uJyxcbiAgICAgICAgICAgICAgICBjbG9zZU9uQ2xpY2s6IHRydWVcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgICAgIGlmICh0aGlzLmhhc0lubGluZURlbGV0ZUJ1dHRvbikge1xuICAgICAgICAgICAgYnV0dG9ucy5wdXNoKHtcbiAgICAgICAgICAgICAgICBnbHlwaDogJ2RlbGV0ZScsXG4gICAgICAgICAgICAgICAgbmF2aWdhdGlvbjogZmFsc2UsXG4gICAgICAgICAgICAgICAgaXRlbUlkOiAnRGVsZXRlJyxcbiAgICAgICAgICAgICAgICByb2xlOiAncHJlc2VudGF0aW9uJyxcbiAgICAgICAgICAgICAgICBjbG9zZU9uQ2xpY2s6IHRydWVcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgICAgIGlmICh0aGlzLnNob3dWaWV3QnV0dG9uKSB7XG4gICAgICAgICAgICBidXR0b25zLnB1c2goe1xuICAgICAgICAgICAgICAgIGdseXBoOiB0aGlzLm5hdmlnYXRpb25BcnJvdyxcbiAgICAgICAgICAgICAgICBuYXZpZ2F0aW9uOiB0cnVlLFxuICAgICAgICAgICAgICAgIHJvbGU6ICdwcmVzZW50YXRpb24nLFxuICAgICAgICAgICAgICAgIGl0ZW1JZDogJ1Nob3cnLFxuICAgICAgICAgICAgICAgIGNsb3NlT25DbGljazogdHJ1ZVxuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIGJ1dHRvbnM7XG4gICAgfVxuICAgIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcbiAgICAgICAgc3VwZXIubmdPbkNoYW5nZXMoY2hhbmdlcyk7XG4gICAgICAgIGxldCBkZXRlY3RDaGFuZ2VzID0gZmFsc2U7XG4gICAgICAgIE9iamVjdC5rZXlzKGNoYW5nZXMpLmZvckVhY2goKGtleSkgPT4ge1xuICAgICAgICAgICAgaWYgKCFjaGFuZ2VzW2tleV0uZmlyc3RDaGFuZ2UpIHtcbiAgICAgICAgICAgICAgICB0aGlzW2tleV0gPSBjaGFuZ2VzW2tleV0uY3VycmVudFZhbHVlO1xuICAgICAgICAgICAgICAgIGRldGVjdENoYW5nZXMgPSB0cnVlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICAgICAgaWYgKGRldGVjdENoYW5nZXMpIHtcbiAgICAgICAgICAgIHRoaXMuZGV0ZWN0Q2hhbmdlcygpO1xuICAgICAgICB9XG4gICAgfVxuICAgIG9uRGVzZWxlY3RBbGwoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuZGVzZWxlY3RBbGwuZW1pdCgpO1xuICAgIH1cbiAgICBvblJvd0NoZWNrKGU6IHsgbW86IE1ldGFvYmplY3REYXRhTW9kZWw7IGluZGV4OiBudW1iZXI7IG9ubHlDaGVjaz86IGJvb2xlYW4gfSk6IHZvaWQge1xuICAgICAgICAvLyB0aGlzLl9zaW5nbGVDbGlja2VkID0gdHJ1ZTtcbiAgICAgICAgLy8gc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgIC8vICAgaWYgKHRoaXMuX3NpbmdsZUNsaWNrZWQpIHtcbiAgICAgICAgLy8gICAgIHRoaXMucm93Q2hlY2suZW1pdCh7IG1vLCBpbmRleCB9KTtcbiAgICAgICAgLy8gICB9XG4gICAgICAgIC8vIH0sIDMwKTtcbiAgICAgICAgLy8gdGhpcy5yb3dDaGVjay5lbWl0KHsgbW8sIGluZGV4LCBjYXVzZSB9KTtcbiAgICAgICAgY29uc3QgeyBtbywgaW5kZXgsIG9ubHlDaGVjayB9ID0gZTtcbiAgICAgICAgdGhpcy5yb3dDaGVjay5lbWl0KHsgbW8sIGluZGV4LCBvbmx5Q2hlY2sgfSk7XG4gICAgfVxuICAgIG9uV29ya2Zsb3dTaGFyZUJ1dHRvbnMoZTogU2hhcmVCdXR0b25zQ2hvaWNlRGVmKTogdm9pZCB7XG4gICAgICAgIHRoaXMud29ya2Zsb3dTaGFyZUJ1dHRvbnMuZW1pdChlKTtcbiAgICB9XG4gICAgb25PbGdvRXZlbnRzKGU6IHsgdGl0bGU6IHN0cmluZzsgZGF0YT86IGFueSB9KTogdm9pZCB7XG4gICAgICAgIHRoaXNbZS50aXRsZV0uZW1pdChlLmRhdGEpO1xuICAgIH1cbiAgICBvblJvd0NsaWNrKHsgbW8sIGluZGV4IH0pOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fc2luZ2xlQ2xpY2tlZCA9IGZhbHNlO1xuICAgICAgICB0aGlzLnJvd0NsaWNrLmVtaXQoeyBtbywgaW5kZXggfSk7XG4gICAgfVxuICAgIG9uQ2FydGFibGVGb3JtQ2xvc2VkKHsgbW8sIGluZGV4IH0pOiB2b2lkIHtcbiAgICAgICAgdGhpcy5jYXJ0YWJsZUZvcm1DbG9zZWQuZW1pdCh7IG1vLCBpbmRleCB9KTtcbiAgICB9XG4gICAgb25FeHBhbmRDbGljayhtbzogTWV0YW9iamVjdERhdGFNb2RlbCk6IHZvaWQge1xuICAgICAgICB0aGlzLmV4cGFuZENsaWNrLmVtaXQobW8pO1xuICAgIH1cbiAgICBvbkFsbENoZWNrYm94KGNoZWNrZWQpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5hbGxDaGVja2JveC5lbWl0KGNoZWNrZWQpO1xuICAgIH1cbiAgICBvbkNsZWFyQ2hlY2tib3goKTogdm9pZCB7XG4gICAgICAgIHRoaXMuYWxsQ2hlY2tib3guZW1pdChmYWxzZSk7XG4gICAgfVxuICAgIG9uU2VsZWN0TmV4dElubGluZVJlY29yZChtbyk6IHZvaWQge1xuICAgICAgICB0aGlzLnNlbGVjdE5leHRJbmxpbmVSZWNvcmQuZW1pdChtbyk7XG4gICAgfVxuICAgIG9uRWRpdEZvcm1QYW5lbFNhdmUobW8pOiB2b2lkIHtcbiAgICAgICAgdGhpcy5lZGl0Rm9ybVBhbmVsU2F2ZS5lbWl0KG1vKTtcbiAgICB9XG4gICAgb25FZGl0Rm9ybVBhbmVsQ2FuY2VsKG1vOiBNZXRhb2JqZWN0RGF0YU1vZGVsKTogdm9pZCB7XG4gICAgICAgIHRoaXMuZWRpdEZvcm1QYW5lbENhbmNlbC5lbWl0KG1vKTtcbiAgICB9XG4gICAgb25Fc2NhcGVLZXkobW86IE1ldGFvYmplY3REYXRhTW9kZWwpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5lc2NhcGVLZXkuZW1pdChtbyk7XG4gICAgfVxuICAgIG9uRWRpdEZvcm1QYW5lbFZhbHVlQ2hhbmdlKGU6IHsgbW86IE1ldGFvYmplY3REYXRhTW9kZWw7IGZpZWxkRGJOYW1lPzogc3RyaW5nIH0pOiB2b2lkIHtcbiAgICAgICAgdGhpcy5lZGl0Rm9ybVBhbmVsVmFsdWVDaGFuZ2UuZW1pdChlKTtcbiAgICB9XG4gICAgb25VbHZDb21tYW5kKHsgbW8sIGluZGV4IH0pOiB2b2lkIHtcbiAgICAgICAgdGhpcy51bHZDb21tYW5kQ2xpY2suZW1pdCh7IG1vLCBpbmRleCB9KTtcbiAgICB9XG4gICAgb25Tb3J0QXNjZW5kaW5nKGNvbHVtbik6IHZvaWQge1xuICAgICAgICB0aGlzLnNvcnRBc2NlbmRpbmcuZW1pdChjb2x1bW4pO1xuICAgIH1cbiAgICBvblNvcnREZXNjZW5kaW5nKGNvbHVtbik6IHZvaWQge1xuICAgICAgICB0aGlzLnNvcnREZXNjZW5kaW5nLmVtaXQoY29sdW1uKTtcbiAgICB9XG4gICAgb25GaWx0ZXIoY29sdW1uKTogdm9pZCB7XG4gICAgICAgIHRoaXMuZmlsdGVyLmVtaXQoY29sdW1uKTtcbiAgICB9XG4gICAgb25EeW5hbWljQ29tcG9uZW50RXZlbnRzKGU6IHsgdGl0bGU6IHN0cmluZzsgZGF0YT86IGFueSB9LCBtbzogTWV0YW9iamVjdERhdGFNb2RlbCwgaW5kZXg6IG51bWJlcik6IHZvaWQge1xuICAgICAgICBzd2l0Y2ggKGUudGl0bGUpIHtcbiAgICAgICAgICAgIGNhc2UgJ3Jvd0NoZWNrJzpcbiAgICAgICAgICAgICAgICB0aGlzLm9uUm93Q2hlY2soeyBtbywgaW5kZXggfSk7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICBjYXNlICdyb3dDbGljayc6XG4gICAgICAgICAgICAgICAgdGhpcy5vblJvd0NsaWNrKHsgbW8sIGluZGV4IH0pO1xuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgY2FzZSAndWx2Q29tbWFuZCc6XG4gICAgICAgICAgICAgICAgdGhpcy5vblVsdkNvbW1hbmQoeyBtbywgaW5kZXggfSk7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgIH1cbiAgICB9XG4gICAgZGV0ZWN0Q2hhbmdlcygpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fY2RyLmRldGVjdENoYW5nZXMoKTtcbiAgICB9XG4gICAgX3RyYWNrQnlTZWxlY3RlZEZuKGluZGV4LCByZWNvcmQpOiB2b2lkIHtcbiAgICAgICAgdGhpcy50cmFja0J5U2VsZWN0ZWRGbj8uZW1pdCh7IGluZGV4LCByZWNvcmQgfSk7XG4gICAgfVxuICAgIF90cmFja0J5Q29sdW1uKGluZGV4OiBudW1iZXIsIGNvbHVtbjogUmVwb3J0Vmlld0NvbHVtbik6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiBgJHtjb2x1bW4uTmFtZX0ke2luZGV4fWA7XG4gICAgfVxuICAgIF90cmFja0J5Um93KGluZGV4OiBudW1iZXIsIHJvdzogTWV0YW9iamVjdERhdGFNb2RlbCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiBgJHtyb3cuJEdyb3VwID8gcm93LiRHcm91cCA6IHJvdy5JZH0ke2luZGV4fWA7XG4gICAgfVxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tdW51c2VkLXZhcnNcbiAgICBwcm90ZWN0ZWQgX2NvbnRhaW5lcldpZHRoQ2hhbmdlZChfOiBudW1iZXIpOiB2b2lkIHt9XG4gICAgcHJvdGVjdGVkIF9zZXRSb3dJbmRpY2F0b3IoY29sdW1uczogUmVwb3J0Vmlld0NvbHVtbltdKTogdm9pZCB7XG4gICAgICAgIGlmICghY29sdW1ucz8ubGVuZ3RoKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5yb3dJbmRpY2F0b3IgPSBOdW1iZXIoY29sdW1uc1swXS5NZXRhRmllbGRUeXBlSWQpID09PSA0MTtcbiAgICB9XG59XG4iXX0=
|
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
import { Input, Component, ChangeDetectionStrategy } from '@angular/core';
|
|
2
|
-
import { BaseComponent } from './base.component';
|
|
3
|
-
import * as i0 from "@angular/core";
|
|
4
|
-
export class SystemBaseComponent extends BaseComponent {
|
|
5
|
-
constructor() {
|
|
6
|
-
super();
|
|
7
|
-
this.showFormPanel = () => { };
|
|
8
|
-
}
|
|
9
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SystemBaseComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
10
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: SystemBaseComponent, selector: "bnrc-system-base", inputs: { context: "context", showFormPanel: "showFormPanel" }, usesInheritance: true, ngImport: i0, template: '', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
11
|
-
}
|
|
12
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SystemBaseComponent, decorators: [{
|
|
13
|
-
type: Component,
|
|
14
|
-
args: [{
|
|
15
|
-
selector: 'bnrc-system-base',
|
|
16
|
-
template: '',
|
|
17
|
-
changeDetection: ChangeDetectionStrategy.OnPush
|
|
18
|
-
}]
|
|
19
|
-
}], ctorParameters: () => [], propDecorators: { context: [{
|
|
20
|
-
type: Input
|
|
21
|
-
}], showFormPanel: [{
|
|
22
|
-
type: Input
|
|
23
|
-
}] } });
|
|
24
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3lzdGVtLWJhc2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9iYXJzYS1ub3Zpbi1yYXktY29yZS9zcmMvbGliL2Fic3RyYWN0LWNsYXNzZXMvc3lzdGVtLWJhc2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLEtBQUssRUFBRSxTQUFTLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDMUUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGtCQUFrQixDQUFDOztBQXlDakQsTUFBTSxPQUFPLG1CQUFvQixTQUFRLGFBQWE7SUFPbEQ7UUFDSSxLQUFLLEVBQUUsQ0FBQztRQUVILGtCQUFhLEdBQUcsR0FBUyxFQUFFLEdBQUUsQ0FBQyxDQUFDO0lBRHhDLENBQUM7K0dBVFEsbUJBQW1CO21HQUFuQixtQkFBbUIsK0lBSGxCLEVBQUU7OzRGQUdILG1CQUFtQjtrQkFML0IsU0FBUzttQkFBQztvQkFDUCxRQUFRLEVBQUUsa0JBQWtCO29CQUM1QixRQUFRLEVBQUUsRUFBRTtvQkFDWixlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTtpQkFDbEQ7d0RBRVksT0FBTztzQkFBZixLQUFLO2dCQVNHLGFBQWE7c0JBQXJCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbnB1dCwgQ29tcG9uZW50LCBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQmFzZUNvbXBvbmVudCB9IGZyb20gJy4vYmFzZS5jb21wb25lbnQnO1xuXG5leHBvcnQgaW50ZXJmYWNlIE5hdmlnYXRvckl0ZW0ge1xuICAgIFtrZXk6IHN0cmluZ106IGFueTtcbiAgICBDYXB0aW9uOiBzdHJpbmc7XG4gICAgRm9sZGVySWQ6IHN0cmluZztcbiAgICBJY29uVXJsOiBzdHJpbmc7XG4gICAgSWQ6IHN0cmluZztcbiAgICBJc1Jvb3Q6IGJvb2xlYW47XG4gICAgSXNUYWI6IGJvb2xlYW47XG4gICAgTmFtZTogc3RyaW5nO1xuICAgIE5vdExvYWRlZDogYm9vbGVhbjtcbiAgICBSZXBvcnRJZDogc3RyaW5nO1xuICAgIFBhcmVudD86IE5hdmlnYXRvckl0ZW07XG4gICAgSXRlbXM6IE5hdmlnYXRvckl0ZW1bXTtcbn1cbmV4cG9ydCBpbnRlcmZhY2UgU3lzdGVtU2V0dGluZyB7XG4gICAgSWQ6IHN0cmluZztcbiAgICBOYW1lOiBzdHJpbmc7XG4gICAgQ2FwdGlvbjogc3RyaW5nO1xuICAgIEljb25OYW1lOiBzdHJpbmc7XG4gICAgUm9vdEZvbGRlcklkOiBzdHJpbmc7XG4gICAgSXNMb2FkZWQ6IGJvb2xlYW47XG4gICAgSXNVaUNyZWF0ZWQ6IGJvb2xlYW47XG4gICAgSXNBY3RpdmU6IGJvb2xlYW47XG4gICAgRm9ybVNldHRpbmc6IHN0cmluZztcbiAgICBDdXN0b21Db2RlRXJyb3I6IHN0cmluZztcbiAgICBIYXNWZXJpZnlQYXNzd29yZDogYm9vbGVhbjtcbiAgICBOYXZpZ2F0b3I6IHtcbiAgICAgICAgUm9vdDogTmF2aWdhdG9ySXRlbTtcbiAgICB9O1xuICAgIC8vLyA8c3VtbWFyeT5cbiAgICAvLy8gRXh0cmFEYXRhIGlzIGFuIGlubGluZSBvYmplY3QgY29uc2lzdGluZyBzb21lIGNvbXBsZW1lbnRhcnkgcHJvcGVydGllcyBsaWtlIE5hdmlnYXRvciwgQ29tbWFuZHMgYW5kIFdvcmtmbG93IGxpc3RcbiAgICAvLy8gPC9zdW1tYXJ5PlxuICAgIEV4dHJhRGF0YTogYW55O1xufVxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdibnJjLXN5c3RlbS1iYXNlJyxcbiAgICB0ZW1wbGF0ZTogJycsXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcbn0pXG5leHBvcnQgY2xhc3MgU3lzdGVtQmFzZUNvbXBvbmVudCBleHRlbmRzIEJhc2VDb21wb25lbnQge1xuICAgIEBJbnB1dCgpIGNvbnRleHQ6IHtcbiAgICAgICAgW2tleTogc3RyaW5nXTogYW55O1xuICAgICAgICBTeXN0ZW1EYXRhOiBTeXN0ZW1TZXR0aW5nO1xuICAgICAgICBTeXN0ZW1OYXZVaTogYW55O1xuICAgICAgICBTeXN0ZW1Db250YWluZXJVaTogYW55O1xuICAgIH07XG4gICAgY29uc3RydWN0b3IoKSB7XG4gICAgICAgIHN1cGVyKCk7XG4gICAgfVxuICAgIEBJbnB1dCgpIHNob3dGb3JtUGFuZWwgPSAoKTogdm9pZCA9PiB7fTtcbn1cbiJdfQ==
|
|
@@ -1,46 +0,0 @@
|
|
|
1
|
-
import { Component, ChangeDetectionStrategy, Input, EventEmitter, Output } from '@angular/core';
|
|
2
|
-
import { BaseComponent } from './base.component';
|
|
3
|
-
import * as i0 from "@angular/core";
|
|
4
|
-
export class TilePropsComponent extends BaseComponent {
|
|
5
|
-
constructor(el, _renderer2, _cdr) {
|
|
6
|
-
super();
|
|
7
|
-
this.el = el;
|
|
8
|
-
this._renderer2 = _renderer2;
|
|
9
|
-
this._cdr = _cdr;
|
|
10
|
-
this.hideClick = new EventEmitter();
|
|
11
|
-
this.renameClick = new EventEmitter();
|
|
12
|
-
}
|
|
13
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: TilePropsComponent, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
14
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: TilePropsComponent, selector: "bnrc-tile-base", inputs: { parameters: "parameters", data: "data", context: "context", edit: "edit", deviceSize: "deviceSize", setToStorage: "setToStorage", listMode: "listMode", navigateBackOnClick: "navigateBackOnClick", layoutInfo: "layoutInfo" }, outputs: { hideClick: "hideClick", renameClick: "renameClick" }, usesInheritance: true, ngImport: i0, template: '', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
15
|
-
}
|
|
16
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: TilePropsComponent, decorators: [{
|
|
17
|
-
type: Component,
|
|
18
|
-
args: [{
|
|
19
|
-
selector: 'bnrc-tile-base',
|
|
20
|
-
template: '',
|
|
21
|
-
changeDetection: ChangeDetectionStrategy.OnPush
|
|
22
|
-
}]
|
|
23
|
-
}], ctorParameters: () => [{ type: i0.ElementRef }, { type: i0.Renderer2 }, { type: i0.ChangeDetectorRef }], propDecorators: { parameters: [{
|
|
24
|
-
type: Input
|
|
25
|
-
}], data: [{
|
|
26
|
-
type: Input
|
|
27
|
-
}], context: [{
|
|
28
|
-
type: Input
|
|
29
|
-
}], edit: [{
|
|
30
|
-
type: Input
|
|
31
|
-
}], deviceSize: [{
|
|
32
|
-
type: Input
|
|
33
|
-
}], setToStorage: [{
|
|
34
|
-
type: Input
|
|
35
|
-
}], listMode: [{
|
|
36
|
-
type: Input
|
|
37
|
-
}], navigateBackOnClick: [{
|
|
38
|
-
type: Input
|
|
39
|
-
}], layoutInfo: [{
|
|
40
|
-
type: Input
|
|
41
|
-
}], hideClick: [{
|
|
42
|
-
type: Output
|
|
43
|
-
}], renameClick: [{
|
|
44
|
-
type: Output
|
|
45
|
-
}] } });
|
|
46
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGlsZS1wcm9wcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2JhcnNhLW5vdmluLXJheS1jb3JlL3NyYy9saWIvYWJzdHJhY3QtY2xhc3Nlcy90aWxlLXByb3BzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFFSCxTQUFTLEVBQ1QsdUJBQXVCLEVBQ3ZCLEtBQUssRUFDTCxZQUFZLEVBQ1osTUFBTSxFQUlULE1BQU0sZUFBZSxDQUFDO0FBR3ZCLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQzs7QUFPakQsTUFBTSxPQUFPLGtCQUFtQixTQUFRLGFBQWE7SUFhakQsWUFBbUIsRUFBYyxFQUFZLFVBQXFCLEVBQVksSUFBdUI7UUFDakcsS0FBSyxFQUFFLENBQUM7UUFETyxPQUFFLEdBQUYsRUFBRSxDQUFZO1FBQVksZUFBVSxHQUFWLFVBQVUsQ0FBVztRQUFZLFNBQUksR0FBSixJQUFJLENBQW1CO1FBSDNGLGNBQVMsR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBQy9CLGdCQUFXLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztJQUkzQyxDQUFDOytHQWZRLGtCQUFrQjttR0FBbEIsa0JBQWtCLHdYQUhqQixFQUFFOzs0RkFHSCxrQkFBa0I7a0JBTDlCLFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFLGdCQUFnQjtvQkFDMUIsUUFBUSxFQUFFLEVBQUU7b0JBQ1osZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07aUJBQ2xEO3VJQUVZLFVBQVU7c0JBQWxCLEtBQUs7Z0JBQ0csSUFBSTtzQkFBWixLQUFLO2dCQUNHLE9BQU87c0JBQWYsS0FBSztnQkFDRyxJQUFJO3NCQUFaLEtBQUs7Z0JBQ0csVUFBVTtzQkFBbEIsS0FBSztnQkFDRyxZQUFZO3NCQUFwQixLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csbUJBQW1CO3NCQUEzQixLQUFLO2dCQUNHLFVBQVU7c0JBQWxCLEtBQUs7Z0JBQ0ksU0FBUztzQkFBbEIsTUFBTTtnQkFDRyxXQUFXO3NCQUFwQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBPbkluaXQsXG4gICAgQ29tcG9uZW50LFxuICAgIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICAgIElucHV0LFxuICAgIEV2ZW50RW1pdHRlcixcbiAgICBPdXRwdXQsXG4gICAgRWxlbWVudFJlZixcbiAgICBSZW5kZXJlcjIsXG4gICAgQ2hhbmdlRGV0ZWN0b3JSZWZcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBYmJyZXZhdGlvbkRldmljZVNpemUsIExheW91dFNldHRpbmcsIE1ldGFvYmplY3REYXRhTW9kZWwgfSBmcm9tICcuL21vZGVscyc7XG5cbmltcG9ydCB7IEJhc2VDb21wb25lbnQgfSBmcm9tICcuL2Jhc2UuY29tcG9uZW50JztcbmltcG9ydCB7IEZpZWxkU2V0dGluZyB9IGZyb20gJy4vZmllbGQtYmFzZSc7XG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2JucmMtdGlsZS1iYXNlJyxcbiAgICB0ZW1wbGF0ZTogJycsXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcbn0pXG5leHBvcnQgY2xhc3MgVGlsZVByb3BzQ29tcG9uZW50IGV4dGVuZHMgQmFzZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gICAgQElucHV0KCkgcGFyYW1ldGVyczogTWV0YW9iamVjdERhdGFNb2RlbDtcbiAgICBASW5wdXQoKSBkYXRhOiBNZXRhb2JqZWN0RGF0YU1vZGVsO1xuICAgIEBJbnB1dCgpIGNvbnRleHQ6IEZpZWxkU2V0dGluZztcbiAgICBASW5wdXQoKSBlZGl0OiBib29sZWFuO1xuICAgIEBJbnB1dCgpIGRldmljZVNpemU6IEFiYnJldmF0aW9uRGV2aWNlU2l6ZTtcbiAgICBASW5wdXQoKSBzZXRUb1N0b3JhZ2U6IGJvb2xlYW47XG4gICAgQElucHV0KCkgbGlzdE1vZGU6IGJvb2xlYW47XG4gICAgQElucHV0KCkgbmF2aWdhdGVCYWNrT25DbGljazogYm9vbGVhbjtcbiAgICBASW5wdXQoKSBsYXlvdXRJbmZvOiBMYXlvdXRTZXR0aW5nO1xuICAgIEBPdXRwdXQoKSBoaWRlQ2xpY2sgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG4gICAgQE91dHB1dCgpIHJlbmFtZUNsaWNrID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG4gICAgY29uc3RydWN0b3IocHVibGljIGVsOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgX3JlbmRlcmVyMjogUmVuZGVyZXIyLCBwcm90ZWN0ZWQgX2NkcjogQ2hhbmdlRGV0ZWN0b3JSZWYpIHtcbiAgICAgICAgc3VwZXIoKTtcbiAgICB9XG59XG4iXX0=
|
|
@@ -1,48 +0,0 @@
|
|
|
1
|
-
import { Injectable } from '@angular/core';
|
|
2
|
-
import { map, tap, withLatestFrom } from 'rxjs/operators';
|
|
3
|
-
import { BarsaApi } from './abstract-classes/barsa-api';
|
|
4
|
-
import * as i0 from "@angular/core";
|
|
5
|
-
import * as i1 from "@angular/router";
|
|
6
|
-
import * as i2 from "./services/portal.service";
|
|
7
|
-
export class AuthGuard {
|
|
8
|
-
constructor(router, portalService) {
|
|
9
|
-
this.router = router;
|
|
10
|
-
this.portalService = portalService;
|
|
11
|
-
}
|
|
12
|
-
canActivate(activatedRouteSnapshot
|
|
13
|
-
// state: RouterStateSnapshot
|
|
14
|
-
) {
|
|
15
|
-
const url = decodeURI(activatedRouteSnapshot._routerState.url);
|
|
16
|
-
let url2 = url.split('/').find((c) => c && !c.startsWith('(')) ?? '';
|
|
17
|
-
url2 = '/' + url2;
|
|
18
|
-
return this.portalService.getPageData(url2, false).pipe(map((pageData) => {
|
|
19
|
-
const pageNeedAuthorize = pageData?.HasAuthorize || pageData == null ? true : false;
|
|
20
|
-
const hasAuthorized = (!BarsaApi.LoginFormData.IsAnonymous && BarsaApi.LoginFormData.IsUserLoggedIn) ||
|
|
21
|
-
!pageNeedAuthorize;
|
|
22
|
-
return { hasAuthorized, pageData };
|
|
23
|
-
}), withLatestFrom(this.portalService.loginRoute$), tap(([pageInfo, loginRoute]) => {
|
|
24
|
-
if (!pageInfo.hasAuthorized) {
|
|
25
|
-
this.router.navigate([loginRoute]);
|
|
26
|
-
}
|
|
27
|
-
}), tap(([pageInfo, _]) => {
|
|
28
|
-
if (pageInfo.hasAuthorized) {
|
|
29
|
-
const needChangePassword = BarsaApi.Ul.ApplicationCtrlr.AdvancedSecurityLogin?.NeedChangePassword;
|
|
30
|
-
const changepasswordRoute = pageInfo.pageData?.ChildPageList.MoDataList.find((c) => c.IsChangePasswordRoute || c.IsChangePasswordRoute === 'True')?.Route || 'changepassword';
|
|
31
|
-
const path = activatedRouteSnapshot.routeConfig?.path;
|
|
32
|
-
if (changepasswordRoute &&
|
|
33
|
-
path &&
|
|
34
|
-
path?.indexOf(changepasswordRoute.replace('/', '')) < 0 &&
|
|
35
|
-
needChangePassword &&
|
|
36
|
-
!BarsaApi.LoginFormData.IsAnonymous) {
|
|
37
|
-
this.router.navigate([changepasswordRoute]);
|
|
38
|
-
}
|
|
39
|
-
}
|
|
40
|
-
}), map(([pageInfo]) => pageInfo.hasAuthorized));
|
|
41
|
-
}
|
|
42
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: AuthGuard, deps: [{ token: i1.Router }, { token: i2.PortalService }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
43
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: AuthGuard }); }
|
|
44
|
-
}
|
|
45
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: AuthGuard, decorators: [{
|
|
46
|
-
type: Injectable
|
|
47
|
-
}], ctorParameters: () => [{ type: i1.Router }, { type: i2.PortalService }] });
|
|
48
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aC1ndWFyZC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2JhcnNhLW5vdmluLXJheS1jb3JlL3NyYy9saWIvYXV0aC1ndWFyZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRzNDLE9BQU8sRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLGNBQWMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRTFELE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQzs7OztBQUl4RCxNQUFNLE9BQU8sU0FBUztJQUNsQixZQUFvQixNQUFjLEVBQVksYUFBNEI7UUFBdEQsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQUFZLGtCQUFhLEdBQWIsYUFBYSxDQUFlO0lBQUcsQ0FBQztJQUU5RSxXQUFXLENBQ1Asc0JBQThDO0lBRTlDLGdDQUFnQzs7UUFFaEMsTUFBTSxHQUFHLEdBQUcsU0FBUyxDQUFFLHNCQUE4QixDQUFDLFlBQVksQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUN4RSxJQUFJLElBQUksR0FBRyxHQUFHLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUNyRSxJQUFJLEdBQUcsR0FBRyxHQUFHLElBQUksQ0FBQztRQUNsQixPQUFPLElBQUksQ0FBQyxhQUFhLENBQUMsV0FBVyxDQUFDLElBQUksRUFBRSxLQUFLLENBQUMsQ0FBQyxJQUFJLENBQ25ELEdBQUcsQ0FBQyxDQUFDLFFBQVEsRUFBRSxFQUFFO1lBQ2IsTUFBTSxpQkFBaUIsR0FBRyxRQUFRLEVBQUUsWUFBWSxJQUFJLFFBQVEsSUFBSSxJQUFJLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDO1lBQ3BGLE1BQU0sYUFBYSxHQUNmLENBQUMsQ0FBQyxRQUFRLENBQUMsYUFBYSxDQUFDLFdBQVcsSUFBSSxRQUFRLENBQUMsYUFBYSxDQUFDLGNBQWMsQ0FBQztnQkFDOUUsQ0FBQyxpQkFBaUIsQ0FBQztZQUN2QixPQUFPLEVBQUUsYUFBYSxFQUFFLFFBQVEsRUFBRSxDQUFDO1FBQ3ZDLENBQUMsQ0FBQyxFQUNGLGNBQWMsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLFdBQVcsQ0FBQyxFQUM5QyxHQUFHLENBQUMsQ0FBQyxDQUFDLFFBQVEsRUFBRSxVQUFVLENBQUMsRUFBRSxFQUFFO1lBQzNCLElBQUksQ0FBQyxRQUFRLENBQUMsYUFBYSxFQUFFLENBQUM7Z0JBQzFCLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQztZQUN2QyxDQUFDO1FBQ0wsQ0FBQyxDQUFDLEVBQ0YsR0FBRyxDQUFDLENBQUMsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRTtZQUNsQixJQUFJLFFBQVEsQ0FBQyxhQUFhLEVBQUUsQ0FBQztnQkFDekIsTUFBTSxrQkFBa0IsR0FBRyxRQUFRLENBQUMsRUFBRSxDQUFDLGdCQUFnQixDQUFDLHFCQUFxQixFQUFFLGtCQUFrQixDQUFDO2dCQUNsRyxNQUFNLG1CQUFtQixHQUNyQixRQUFRLENBQUMsUUFBUSxFQUFFLGFBQWEsQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUM1QyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLHFCQUFxQixJQUFJLENBQUMsQ0FBQyxxQkFBcUIsS0FBSyxNQUFNLENBQ3ZFLEVBQUUsS0FBSyxJQUFJLGdCQUFnQixDQUFDO2dCQUNqQyxNQUFNLElBQUksR0FBRyxzQkFBc0IsQ0FBQyxXQUFXLEVBQUUsSUFBSSxDQUFDO2dCQUN0RCxJQUNJLG1CQUFtQjtvQkFDbkIsSUFBSTtvQkFDSixJQUFJLEVBQUUsT0FBTyxDQUFDLG1CQUFtQixDQUFDLE9BQU8sQ0FBQyxHQUFHLEVBQUUsRUFBRSxDQUFDLENBQUMsR0FBRyxDQUFDO29CQUN2RCxrQkFBa0I7b0JBQ2xCLENBQUMsUUFBUSxDQUFDLGFBQWEsQ0FBQyxXQUFXLEVBQ3JDLENBQUM7b0JBQ0MsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDLENBQUM7Z0JBQ2hELENBQUM7WUFDTCxDQUFDO1FBQ0wsQ0FBQyxDQUFDLEVBQ0YsR0FBRyxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsRUFBRSxFQUFFLENBQUMsUUFBUSxDQUFDLGFBQWEsQ0FBQyxDQUM5QyxDQUFDO0lBQ04sQ0FBQzsrR0E5Q1EsU0FBUzttSEFBVCxTQUFTOzs0RkFBVCxTQUFTO2tCQURyQixVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQWN0aXZhdGVkUm91dGVTbmFwc2hvdCwgQ2FuQWN0aXZhdGUsIFJvdXRlciwgVXJsVHJlZSB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBtYXAsIHRhcCwgd2l0aExhdGVzdEZyb20gfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmltcG9ydCB7IEJhcnNhQXBpIH0gZnJvbSAnLi9hYnN0cmFjdC1jbGFzc2VzL2JhcnNhLWFwaSc7XG5pbXBvcnQgeyBQb3J0YWxTZXJ2aWNlIH0gZnJvbSAnLi9zZXJ2aWNlcy9wb3J0YWwuc2VydmljZSc7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBBdXRoR3VhcmQgaW1wbGVtZW50cyBDYW5BY3RpdmF0ZSB7XG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSByb3V0ZXI6IFJvdXRlciwgcHJvdGVjdGVkIHBvcnRhbFNlcnZpY2U6IFBvcnRhbFNlcnZpY2UpIHt9XG5cbiAgICBjYW5BY3RpdmF0ZShcbiAgICAgICAgYWN0aXZhdGVkUm91dGVTbmFwc2hvdDogQWN0aXZhdGVkUm91dGVTbmFwc2hvdFxuXG4gICAgICAgIC8vICAgIHN0YXRlOiBSb3V0ZXJTdGF0ZVNuYXBzaG90XG4gICAgKTogT2JzZXJ2YWJsZTxib29sZWFuIHwgVXJsVHJlZT4gfCBQcm9taXNlPGJvb2xlYW4gfCBVcmxUcmVlPiB8IGJvb2xlYW4gfCBVcmxUcmVlIHtcbiAgICAgICAgY29uc3QgdXJsID0gZGVjb2RlVVJJKChhY3RpdmF0ZWRSb3V0ZVNuYXBzaG90IGFzIGFueSkuX3JvdXRlclN0YXRlLnVybCk7XG4gICAgICAgIGxldCB1cmwyID0gdXJsLnNwbGl0KCcvJykuZmluZCgoYykgPT4gYyAmJiAhYy5zdGFydHNXaXRoKCcoJykpID8/ICcnO1xuICAgICAgICB1cmwyID0gJy8nICsgdXJsMjtcbiAgICAgICAgcmV0dXJuIHRoaXMucG9ydGFsU2VydmljZS5nZXRQYWdlRGF0YSh1cmwyLCBmYWxzZSkucGlwZShcbiAgICAgICAgICAgIG1hcCgocGFnZURhdGEpID0+IHtcbiAgICAgICAgICAgICAgICBjb25zdCBwYWdlTmVlZEF1dGhvcml6ZSA9IHBhZ2VEYXRhPy5IYXNBdXRob3JpemUgfHwgcGFnZURhdGEgPT0gbnVsbCA/IHRydWUgOiBmYWxzZTtcbiAgICAgICAgICAgICAgICBjb25zdCBoYXNBdXRob3JpemVkOiBib29sZWFuID1cbiAgICAgICAgICAgICAgICAgICAgKCFCYXJzYUFwaS5Mb2dpbkZvcm1EYXRhLklzQW5vbnltb3VzICYmIEJhcnNhQXBpLkxvZ2luRm9ybURhdGEuSXNVc2VyTG9nZ2VkSW4pIHx8XG4gICAgICAgICAgICAgICAgICAgICFwYWdlTmVlZEF1dGhvcml6ZTtcbiAgICAgICAgICAgICAgICByZXR1cm4geyBoYXNBdXRob3JpemVkLCBwYWdlRGF0YSB9O1xuICAgICAgICAgICAgfSksXG4gICAgICAgICAgICB3aXRoTGF0ZXN0RnJvbSh0aGlzLnBvcnRhbFNlcnZpY2UubG9naW5Sb3V0ZSQpLFxuICAgICAgICAgICAgdGFwKChbcGFnZUluZm8sIGxvZ2luUm91dGVdKSA9PiB7XG4gICAgICAgICAgICAgICAgaWYgKCFwYWdlSW5mby5oYXNBdXRob3JpemVkKSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFtsb2dpblJvdXRlXSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSksXG4gICAgICAgICAgICB0YXAoKFtwYWdlSW5mbywgX10pID0+IHtcbiAgICAgICAgICAgICAgICBpZiAocGFnZUluZm8uaGFzQXV0aG9yaXplZCkge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBuZWVkQ2hhbmdlUGFzc3dvcmQgPSBCYXJzYUFwaS5VbC5BcHBsaWNhdGlvbkN0cmxyLkFkdmFuY2VkU2VjdXJpdHlMb2dpbj8uTmVlZENoYW5nZVBhc3N3b3JkO1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFuZ2VwYXNzd29yZFJvdXRlID1cbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZ2VJbmZvLnBhZ2VEYXRhPy5DaGlsZFBhZ2VMaXN0Lk1vRGF0YUxpc3QuZmluZChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAoYykgPT4gYy5Jc0NoYW5nZVBhc3N3b3JkUm91dGUgfHwgYy5Jc0NoYW5nZVBhc3N3b3JkUm91dGUgPT09ICdUcnVlJ1xuICAgICAgICAgICAgICAgICAgICAgICAgKT8uUm91dGUgfHwgJ2NoYW5nZXBhc3N3b3JkJztcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgcGF0aCA9IGFjdGl2YXRlZFJvdXRlU25hcHNob3Qucm91dGVDb25maWc/LnBhdGg7XG4gICAgICAgICAgICAgICAgICAgIGlmIChcbiAgICAgICAgICAgICAgICAgICAgICAgIGNoYW5nZXBhc3N3b3JkUm91dGUgJiZcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhdGggJiZcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhdGg/LmluZGV4T2YoY2hhbmdlcGFzc3dvcmRSb3V0ZS5yZXBsYWNlKCcvJywgJycpKSA8IDAgJiZcbiAgICAgICAgICAgICAgICAgICAgICAgIG5lZWRDaGFuZ2VQYXNzd29yZCAmJlxuICAgICAgICAgICAgICAgICAgICAgICAgIUJhcnNhQXBpLkxvZ2luRm9ybURhdGEuSXNBbm9ueW1vdXNcbiAgICAgICAgICAgICAgICAgICAgKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbY2hhbmdlcGFzc3dvcmRSb3V0ZV0pO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSksXG4gICAgICAgICAgICBtYXAoKFtwYWdlSW5mb10pID0+IHBhZ2VJbmZvLmhhc0F1dGhvcml6ZWQpXG4gICAgICAgICk7XG4gICAgfVxufVxuIl19
|